kernel-devel-4.18.0-516.el8 ?>?  HH????ed U]$ȧgg:~XŢfOQdԛ^Vvlu 4)i`觻ˆl15z:e$Xby&-5KkϞ=L˩ J pITHpR޺Ð+_ǽ%c1"%+^;~ Z͢LTEo(Hұ1LJMݭcv m^q "惯$N2oG=sǝ{7b#iY\&[\A=,.'ϥ TϪ\΀jC!fnmr fBkWRmKJUe 'K 'X߽ ?tPMJСi~es1Ŭ7)~~G( ߝ 'g<12(/CW#xwa'On%g ,%~иN{Z'g|GCy;-3=UKmjf479f15bc6eba27c7e9817b7a3bd87c5d65b0ba71e42e5a4326093dbea053d33e8f846f2e2fb60eb3e9a8a7bc95866af40d9021b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023045ccd0ff53558f620705bbb1cbae06312a79f1a10fb91109cb98c7e3d988e65b1ad52ee4fba07af66e5981edfd5e5bd6023036103df88fd3715fb3f0142c9a3782fb44c816e127334a1273df16e8f17cbf23be977d8b5f1fdcb2c5d5887112494d540302047c435bb50067306502305ce9a21cc69a04a40019de65b55d0155e53d0b44edf4fe188e364e78d31a2f9bb3b4d76eddf875b1eb72be067fe8d115023100f41fffdb64666652d6caf5fec3c25e4e5dc08f0f394296e88c2f1d8118f7602c14d93f48fa20e6a389dedf9958e62de80302047c435bb500673065023100e32d1920fa7b62b0222c292ae2bd5b4787c94914ef0ad6b4cf3ebf6ab858ae27f3d120ca8833a41bfd6f4d43b3e0750f0230301b45f36972110acff3c54850a8ae14a8defa58518d05fb883b5e0779dc61d27cc0b244057c7d7554fed76dbcab9b0b0302047c435bb500673065023050424a4026743163a24f201f4c87b033f360afa24b003fe4248b48b910261b3c703af6cae52f857831f2ea2d9c7540f9023100adb2cae141f66d896fd7b466835f227e1ad017d74043976ba8d7436a2cedf910d9fb633579fdbeb1b1eedae2f8a0f8d00302047c435bb50065306302305fa8fba12db3b7514fdfd245ebf8a0a62dfbb10d6ad6b629c88c6bff4b99a2e23cb026ec329d878ea0c74312ea29e0df022f5dafb8dc701bfe0565228b548c25da18cce9405e90aea6e317ddb50041ca91cb63496c684d3428b4a2d92e654ef6d60302047c435bb500673065023032e4c6eacf2ea0406e2a87ad7526841cc7cb3a9a4276216213c14b575ae1c88dbfb50d6a2ff25f0167e5d0b2c74f8e94023100bffac74519fdd402b3d48881a5942223b1bca26144d37a17b4a403fe4c0af8f1617947db840f56acd0dc058604f5cc260302047c435bb50066306402307f0821b063ba58b0ad6b56df484249e61b4b8ec32ee312de4d973e356546b9f3a3c4cb91993dde8286a866cbe872aef8023038a8204f4254fc69d184cc10c46ca0d2b0f1927931ccacad12b408e539479c1fbb8c7a0b67915c37ddce63d61da083050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bc3e49e5d8798cce16c2f2256b6c449256083cb8e381c9eee1db780a6cafdc9f8126f169bcfc5a9e694e7a2858bb6c9602300f638131fd5f0149371b8c32c8001e3616e9b4fc1f0ffe00f4356ef8c9ed48d9405414bf6c4bf17626d2f27e19e9efa50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023045c20f1d8a3d45af10e3ee34c7c1ea560951026ea95afba50d28289c8217d15ce06e98f7ae9861cf3bd7dc439d400b6c0231008479942055db28827e96f6bdd88292562cd32a1ebd73b3e21fd0ad8bccc59bd9e2551d6ee5bb2064f3aa8cb77b1f498f0302047c435bb50066306402306554bc69dab6f84fadc4c88c7f43ea63ab234fc25fbb7a5659f2c297b4e3f6039a09516390bf38cd95f0c6746f00faa9023070a97fe39ded8ad7d2001a19125d59b90015c972df657cc9c03843cad2ec31567df973d3416f4473665e85abf3b001bc0302047c435bb500673065023006e3ae4a623b294cbd481b58ea4a94f6636690473eb198b6a02913559bcf16b301105128959eee4dca616e77c72cdbd1023100ead19822a2a97d1d350e17be7c1ed9e972980cdd683858426b665bde5944820691a326c6a53cf5b40600672b99c112c70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230129ad2ab12118ae70a1af8b96df13071f4e7243add31d778c201b836e5075a93879ed905ab6b7a21b4fbefc91b239190023018fa90421d2284ac6461c6a78e1fa996ae43ed09d98b41c01006d59406f6027c2fc821a3afe32078e34e887cd4aa3e100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cadb8825c63bc55597f72e83f1ce07bb3a2073e28e0f159fe4515277685ab92210584524c2eecfa47328632a55dbe923023030fad1adbd19b29c9c83cb4d2b1bc8ebf69ddfb5eee605ce2d837d179dca00cafe76cc7552fbac672caabecb9424e8010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301ff9b31ca368bafd43955430d549a29fa4f6c68ed9754d854729aa148f210d6e26e4dafd5a4facd669650bed0bdaa217023005d735b83ec64d2adc6812ef59c1c8bcad4449f2b267b110e5e6140bc1ff45046dbb2b0506f63b2c6f0fa3ba3d9ff1aa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d926a0739f1109009573e66bb34ea714cc88c3c5a2fb8793c78c788f95338df07a1ff88773116cc0c09368a9d317ef4102302bbad9fd46a5db41fd7364e88c739f46fd83a3dbf5cb2511c32d11e8d7ccb4faef73018562bdced9c7f522889129021c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a1ad8435fe7b6a23847ab73f71bf97d2c588d7ab8bcf7798faa7ebaf75663f91f3009218e0a6cf9f0f544e7dfb8a4eca023100952c202cd5582aca979761d1cf891480d40d09c129a82e215f2a6d74f50f3a64a4c5e345ea2e644cc39eb6b16f9943900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230503595141d30bb4ac489d87bd7edb354ffb8ac903330141af1ac215d44c42ad88031444b76f191a58cdebfb5cc107642023100fafac7f7f9183b50f5483f4e24632129e4f42ab74e5ebc3227273c82e1c06a0a99561009c389639d274a73672721191e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310087b74538cdf267af5bff08f200258ad9a301991744faaf36d3f7a9e2dccd6ffeb9c774f05e1d09641afffbb0496d61a30230058fb529d29f0ef88ea2fc06b8c366449e2370657cff2e33eed69ca5eefe9cadb3f4c7acb2a204192f8f777593bab8a30302047c435bb50067306502303466396669ccbaefe6c56236efdc5f40e099e496436c04574d31b34da25b06038297d91c07bd1ea8db2795761b6b1208023100c730cf2f5799b06184a084a137cc0798f2cefcf60459c3e208fea71ebd794a4fa7344da630a7d1f2f1a42dc79c4639110302047c435bb500683066023100d4f7b5195c3621bb34cfb0b8cc392623f83b22c5acf6862ee989c7a0715bfe93ddcbdfb5750772cf3e50668d6ff87f99023100d7d86752fa757ebdba31d7e852c7edb25508f9c41d608523f5eaca4a49ffafc774b4bbf62282eb016477e514dce5a0f60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fabef5988e1532c9ebc8bb17d4894375688a110f1ee2db991eab82e2d9672d7f039c7f7b5822e91d63ffd155927e920b0231008262e0211d6451975d6f2a61906b336980d9a99005ece3bc855bfb49bd9d03ffb3ba7b108cff05beaa6ce352769255790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023020e0a778ee1118b0a93da370d9abd60a74df34ada29922254c80c56bb184365e799b819da94191c7405ffe85e6726fbd02310088791b5e42c94f2f6ccd629f0746edcfd7df3ec7c3a15d2ed31ba5c912391676940ce08f45e1cc3cf650a9f6c65488a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bc5c8e2ee25f0799096241b811831fe97303a55492231acda635b530f832340ba190318509929ac6829fe759e0848cad0230156e6f26169c7002bab8881ea806a91ae4584ff309737334eb99c923001f7c5f41937c29ee93f04240ca9b80e1679e3c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023006e884c26850bd9936bd5dac507ae9f82290d54d158ba16541689c4034863898a3885186cee8ff67cee7bcebd3e21c44023100eb0745f790a920dfa8167c4fe8901d499be612d4aba7b6d06f30ad1281afd21f5d2646250e7d55c13a204d19d26a36940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310096e7af1b0b75a0ed17714a7f1ac9ba88b05ef6ef72a36e923ce3fe1da75e158f751c3f97f034651a4bc4017d006b407f0230138bb44a1b6292b613f8d8c60362af659c41ff25e2f8f5b12ce18175dbac3a297857ce15b1a192e8a422ed9782faee610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f5e232cbf0d0d21f4b1fea6c3d0b5bbff996f9b8ac11078ce43e7b8bf1ce115dd2472bd169dbb843a4314030da1962480230793e9ab0ea8fc792c8b7633fb6ce3fb14778daffe94e4c9d35b6a3ff609c83b781b9c3169be4b4a3ac2e2c3c63b3621b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023012cda5d649730b3096e9db814764e3b7a63b4a5771739a5ef3a5d2fb9d68c6fa827abd459dae8d685f57b7dd19d50fe5023100b96b002764aa065bbb6acc54d7fd836f6b4ecda085b1e03a3b578f70cc189a166bb0fc6b63e193d66427b5848fc84d740302047c435bb500673065023100ed48c9d3db2d118e3739a01a8d1ca45f640c55da7876c6c2dca44f26927980b800cf14b3f764ca70f2fb9d3ba75fa60202304c8e3f33ab6bc5d227e180ce0e5d175293bbd7a73b8441a31c9c5bbca7c6d549913932ce01acd6763e456e1f651127040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230719e716c5aa14fe8e2fc204d3f5e39233d40d89bae6142a8a60397caa92c83511ec34322fd5141b6e72b2ece9d2b873702300ea12d2f3b900ae570dc940564b33f120dac23d5c89860f431ef1fb2409a390295be0cb7b4ec1afb2466a4a0ccfddaf10302047c435bb5006630640230605191e9fdd46268442f96ada6ea475b1068d3c487a5930e893993e80e369269f38597fb996ba6a21f177d7310964f7b02303278dea9c63cafb758ea97fa6bbc7b1edece5886eadf6bc86968789e3252bb4e372782be985ac9e7269a3e209f14b5d00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301819efd2da7605994b38b551f8733cbd49651bc00f591a3a6429d137d8082d54ce8cd4f75e8b92bec0884d9918d427fc023042066ff57190dfe8f93885a8ce89e621a9ae5016860f390c05732ea6f18e8164c2bfac00d5561ef509d06efaef65b4b30302047c435bb500673065023100e6228cffa7abe86658da8d74168e1b2a43b18b6c0948b6856f05f8c7ae468739730cd08dbaa6e75fcf4595a7f88dfbc6023043f963391307731da715eaad4dda25e0326c48e793399d608c0c3937987b481cf3f4f8d2b0b3e3f9913243e85231d9b90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ced193c14c54673aa53c6f2bc9cbc0d12f3bee059660b541d88aedc9e1ae7d791940db1de677b83d228e14652b94a49d023023d05ab087bdb9387d1870c8a568e8af4c37b4404612cd2bcf84e11dc7f7d3847ee61506737ca0502c432b5b2d4623390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f5e75f02344312d2d699ee1d8c67b7d70008cda703716a10f673ed7b3d7f807cc5623e1c81856377849036e59af64ba1023100e8adeabe318fee3f3e9be3ec1a69e531a2e58a9568f9debe4ebbae11299a44bf68a1eacdb03642e1a94db1d8f81fddb40302047c435bb5006730650231008f2d484834ad0d60a79c4bfcc2728862311e651e266c097455c7b0244237bfd77007c42d591a935666c1258696caed99023009cf4a27c3b6bb2c41c9657b2c415c57dd49515b58741dfc33184d3df89273226a2b93018fd98810ee7cf48dd8953fba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303d03877362b25419215c9056a85eda55388d4c01430e2d11014a814319d3359c7d64d8f58cc208fe67785947a45c22db02310086b9e876bea20df557d5e31b5a60b9fc6d2afc64c07edb3222d7b90d5465ca4e9fc01d1622ec2642a999275d1a06e3530302047c435bb500673065023049fe27c6095a6828d7d643c4931410bebe5060d3634044ddd676e04d469eeab67eb7af7d135d2fa35989d52791071b030231008943f7f40ac3c07ce82a6a73ba9785b82b1137d93d8dea44a8882bf54f105f8e1eafb7c54130b2136f9d1b9779b9c7f80302047c435bb500673065023100de8930a372caa4fbc0323c797dd9b2a4dc5ffff6ba92053489ceeed48a3043602d44365b61a2cc35c87aeae7e098771c0230048a58e449cf0bba8b34c0504167aadc3cbe2da6160766d4025848c4965135d7f5c434d2c755aea5fa102f7763f531ba0302047c435bb50066306402301d35efd0750c0783836d1b89af7d02dd81438b7df764e55e7c9679cc4a830a463b0d83c9320d458a715e4b3f9228fc8e02302f474711990020c367149cd3dea01e09579107140b115ba9aef2d68deff26c0acf7439b640d9c5e798114e57ace1ecff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023032420a8937a6915e70a92918faa5a0aff0bac1a6479c2ba79c27d5d690c82de4e0900cd99ce7f5b33cf18908fe752a89023100a9d3d48c9a22d120cef84b8606bf079394d5e0b72c0a82a573aecea368b9ee04109e7e6fd9ccb40cb16bb375d41daa270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a0c7ede1a1923a610168b0d7dee5f606f4a8270f4b12758c827a712b0cd780c6c9c05fc36152acb41e13621f905cadab02304e924b5ab59ef80bdf1dcad7cf02fcb8f898d8e1caaa28993d000aecfbf38507814ea2e6e707b4e43f2b6b359b1946a70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307f1601d1746a57061d6a43008bf1b191987ab4607449cdc37fb7eecd3fc3ae712ee45af2d58ef409d8fb90c073d53fee02307adcb49d8aa89ffebd33bc927f1f629f0c2b2051fa5c8bbfa278629101f0e7644f98de6b709f0643856f30f424747e310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230760277f43d01f52754f761873bc7ee32485fe6f07b188de82aa2fec18439a2b8bbc3a2fd4cfee20eaebbe1724094d75702305c6e33f7388288deb41869fbad9c706543b13a41a3b739842b9fbd72f3e85d16cd14943f01efb06140fdd0dd59eabcd60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dc1b0df64ad8b1fcae0af7100b6744381acea2cfe5783af51c5f545c2ecb043d403b9c61e485df1df819da98b6b83b7a023066fbdeb27394f74b797b14b2b570cc48e5595bac563885608f6b9f652f3a7315703210caf5e03a138177d7b58af8087e0302047c435bb500673065023100add07c1aef6346b87893037726bdc6278c0a92b7eb7dba6175c41632b651ff8942b681f5fb86e64df11068d48a321b4e02302193244e15a13b8093f19a804d4535c71926641643c258621b93c4b9adb85acd7a72b8e131bb13a564b11f8e6b8e45850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305793a84ead694ed7d8c0e24859b1e3d7c77ebc7437262e897ae56237f1df5d568e6a1fa73f8f42efa8627e6a518f3839023100fe2e8c0123f69b2e2824cee52a01608d1b537fa1b52620b55108c5da1d126f9eab777d2673a19f6c6500702f42743ac80302047c435bb500673065023100a6bf72236fa4a9bafce6277fc2d57b593a56589c24c6a1b932cda82f21295fb8425464c562c2df65f4977362256f6f1a023013730897b5af837fea86ef2ffb61c95609c97dee69295fcd0100d11c1def10a31a9f5fa5560cc8f7b72b2e152fa60eb90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bd1b07aca0020cb14c1fb468293a19631bafff2cd94a5f2bc1161485c012415d510021a13b1fc4f46c57bd0344ec75e1023100c38d50ae95a423cedb87de2cd2edaafa04d3711486e29e3f01d9365eb46e4ac1cc07a83710f9f043cd0af329b5aadb110302047c435bb500683066023100d799a94a0986ab216dbbb5be50bf66e816e4ab62a1d75ad1864596cfbe4743f328617ea7e440df4166da140c5733c8a0023100899a68002df29ca46365b8192989866d27d76683b1c498b5a58be685548c899c1384832185f3936c771c7fb648c63bd20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302e6aeed5eccd543a3a015e946bdc845b1d7e858a1782bc834eea067a3990c3e174639867933f19ac81e8da04a38c853302310090a934ca5c6b057aa5bf5de329588c089441671a0b7887c9a30dfc9436ff6223410c5be3f25b86980692265a308dfcd00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c91cb0cc054830fdb5ab77142c3a5e0a8601ecac3ffc5a66fcfb0ff2fbc0eaf98d22cc6a48bf1e0822b98f40d5ff754102300386d1a0b2c583efbc511cadd0f8b9c771b02764d03559780d05c25616f28bf2ccadcb7eee90675cffbb066e28627fbb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230752aecb4afa93bd2ce0badbf33da7beb72a5134bf83fbf4384460e2deb297d930282e20a1178b8c300138998d192e8dd023100a26e30fb074486c626bdf2223cd42e036333d090fc4f8de1ed4697ec461fb334800b3b2ecddbb472602e7f1e743f8f3f0302047c435bb500673065023100a00de622bd5d1ed995ed483e4e6003b8dd1392f031f3a8d9c48ff15f9a460bbe3fcdfc53494bb78a1c7551651b192ce102305289e501fb68167a8fff22b6fb8f1a10e5221b256e17f4b9e84abc82fda9b94d116c0cb9d4de943f05ff105c192e52140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bed013db47acaba2e75f9aec5f709f243082a749be0a9fbfd7d11d1e3480a19334d63ed4c22e71b2261e2879f604d3a8023046cc9a8c2fbdb04f96071d4aa62907e1fd9d3afb738824d266b0b928aa73542caa28be2ef0274c74c20381e1e9d186f50302047c435bb50066306402305d9152c6211e04b927850b1ce847e8b778c616a1ee20375ca8472c95de6eddac1bd17251f09b550def2b261c5bd2c55202301a8b9a7a704c71a0465aad351621924f48cf1fc0e20c73709281cd7cdbd58bc6b620d99b72803949c626d394d6081f440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023079400126d3353427cf86d61dadbdaf1af3e762281ccf7dd826bf7863c0e76ade21459539010475087bf52877de339e2202304d7be243c057bdd55134871e496225333191fa096e2aaa6cb472207f1ff8f0081cfe6a6ff57f2da645c1b1df8c9c09390302047c435bb5006630640230051524aa06a788bd462e044f0f6aa85743d7dea58c7d1f4567b81d419f5d168a8438eea275f014b167531406a7869ad50230100a0ca881aeb699de0ffc2381fef00784b2543acb5c1bb6fee05e23bb8bdac32f4011c3791164bd8d0d9d8529b78eff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304855cb8c604b2454956d2407916204831338b0cb733e85b5d57a760d6a4fe6127f4d6e07fe0e990a4fea7b4d96063f70023100b51053c0e7c78f7cfdddd24121b3190c7475fa82dbddb2b57d98eb05917c57fd10a739bb7636d2f1939bfcc67b091be20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307c5c2bfd37515c708648a3dd8129465789dd237efa46232a7969c929ac538e08cccc5fe22ee8f3d678abf191671cd9f002300e143473c0647d109cf4d3949e353ffdb38e11d051c7a4e83b5b20f90c9221b6c40612d712984724fe41bbb20a7d0e9d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023008a91ab4270bcb239e62ff58ab859318b5bc310481918adc29763081b1fa3c332757c95b3410de8a62cac25776f645740230404aeaca46e83a40553fc6b4aa71e725377c259fa4abcacd49569b00e3270bddb3299e8e06923f379b6ff26bf7f101d20302047c435bb5006730650231009a9980eac39307f3362f13cc67fdf67f1e171a46bd5830f693aa32ae3effe3e84ea317fa9d997ecd284e985d7baaf76f02302093592549a8e67db927d9a7dd806432ebb47795dc6df819942cede23b469cb2d4e3089df27433ff09fa0634a47c68ee0302047c435bb500683066023100e5f4135aeb2344ed072e807314412d224f6fc1193c86ef098a982d576b4007d495f10931ba7525c164c2907825308d9c023100872a516b2f0bab29e6bac0450e19b897ae2e295b4bd9c00d9b56418c9eab664a5752aa2c8aff1cc704c4ab9ade113d9b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303e1b45f48e0f568b549bb9dca15ae41e8169ccd0de4883e5df8ccc2b124e09781b0d2ab10761ca9e8c5691946d43d80b023100bc87a7edebb75f80e583cd56a27f43b11fe2cfb352ccff65337e1ae43ef9595d1147772c2a810a051f96e49f343ff0110302047c435bb500663064023062ca091990d378522c560810bb4ec2d0a39c828ff564c46def8e4c578b5637751c98b467e3e2e7ade35744a4f6e3a03d02303c7f8597a528111c4dfecfa61f87220c4dd4c76fe999661d703921610d7088c0ebb3a2d8393130c825f1c68844aa432c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023062767a550aa3847781ae46169c88b1d08bcb93ea1446a17414e0552990ed8543154450b414a4daff867bb26b12da0cd702300abda19abfebc5ac963339211c769350a16502ba45bea14b83fe74a31379a1df22b763134a8881f49fb0e3851ff56a8c0302047c435bb500673065023100c10eead91c507ccfa1acf46e22851387eea7d974abec419bd9c1381bdd080aa91ca12c42b4311d9d9c34cb57800ecff80230076c8be4b3e0f228f882f7848e0ec55b7a3d769583d002a1b1caf36e1b2cafcbffdce7784eed2347e55ad8a0baaf0b4b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ce11b08583581fb882a1888cab7d3b40866cec55fb16cbb58f6430ea0adbbca233d098908bf449965ec42cf6aa077eee0231009f953082661c821df60ae4e1855daf26722e662073b521170d6cb6e684404b67096020f0c9012eb93b526a8784febf1b0302047c435bb500683066023100e41ab61003882ced47781b20e7b122c43e6a150b129c7d57df9a089f87036bea3f2b98e772ef833da0c8315a223bfdb602310092670a86d5b9aa6b51f2532efd2a78d78bc9aaee39395f86fa289ac3abbcdeeb2ab440efb7c3fe74ffe2791290eaeae40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008bcf10cfc0f78093a456bf2c4630b5f8a11358610df497a7b056f138646e5a565eec7adb84f2405a8d6929e969ab181802300870fc172ba5585eed216a4b223aab661113758a715eab050ac69a688dae87857b354c7a7973b7f758ecf8ba4caa72bd0302047c435bb500673065023100da5e703ed431d805b4466f557be7284a5899313bf460c028b04ac80e1be1cc81d00b36afaa4af878440052e13ff492fd02307ec9aeb41a62fbcc579c5658adf5ad92241c97172567fe62aa3cea54ee93005d03d0681d521527f0424eb1cecca7f80d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023100fd9bba209f29d127decd265b835af069bdc900fff4c2ea98a4e91ad13557c79e810afd6938daacdd4562bde8ae81057c022f24640a4f5c2c0657f6e4dd1f18bb0bd73eb6e048910918aa31e6fdb6f4c8c08e7afcf28acb45e256af36b4ef1cdae70302047c435bb500683066023100fc6da2f26dcb22468226f861b0382392805bc90106308865f28b5cc0c6dd9e233ccdc3d08adfaf06223ce6b7437c71aa023100909ac99aed8bf6d68ee97fde88ffe16cd91934bb675ce0cb27b697eb0665544841af92e4ca9a928e88f3af36b40b1fb50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306262b961eb0d2d56276f88fad8362ccc9bdbb1bf32830b59a48b515dabb87e730845a1e75c2a846c3ade81af47026c0a02303522d6179487392e4bd79d3a14f04a9f1ef2a02d04d564af64c0708e8055848a0d95159a1a9ab927545b6c5152b8b3810302047c435bb5006630640230040d34cfe3f236a91d4c97df82df11c46875d8ef47a16ea7b4ee19a14ebf056ed33070546a953491c512e91ce4a98969023005c425b9aede284547b887b0a24e17de631c2172cd618e3e3901b6a8658a8d6145ba072ab56bd68f0399b55e4d14621e0302047c435bb500673065023100ccc965622f3983f36036f802cbe1cd7be706ab846522648d7a4e35b22f9f6b305f82db659769240540033e238253af4f023049f0593e2c5dae5319e969fe87149d2436ab31b6e1e4934f1a0cfac78a8e73b0bee2682ffec3424beea38e9065ff9a360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f06ec411741141437dc8b6e940b16a38789b0f299999180fb11c0dc65640aff6d3510fc894f7fd99162745d76b7733aa0231008a64fdccf87761c9e04eda142f89319033be834c641cffa97ff023a3d75cca1ba7f2cb9789e1538ab3048f19b3f83bc70302047c435bb50068306602310099ce6db4bbba94283945394f9fe6c6739040e9f5f1e4299008d4a8f717e12768b940b252892df62565f6c9c98298647a023100a7213c2d48b0b6b71346308667dc424e87efaf117a43090c6be33e633c742f7f012d22f7cd7005257bc95c6db011be710302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c786bb0a0632c7b362bb0a6c220325bd900f4df4c18a886bb2ecca3dd0008bb219724cf4eb625a090f4797be0f14a0370231009ea25128720356ce43dcb71f372bc390602d8adea8a2827326650bdd6eca1e2982816818c64f360b6db2b36a4f54c0d50302047c435bb500683066023100bd9d416493917e7880243602471ac126f942bbfac9b8a8d22d17215b69ad991d33c3621eedb82c1b7f499e8d9e1d207c02310088bfdb7426f787e6f8d0b9fe29548ed22b8807b84808defde2ee234d3d5cd1b876e9554e117ffc5c893421c001f401710302047c435bb50067306502300275c50fcba30100b7304debd9b617d9b0a3ea6535b5078e2404fa8dc8890672a32fd982f90f743033f1a363db67c966023100a5995c8f7f6b2188e4366a0e9042b91211af683a1ee8c1562ee7292af36e9ff410cc47c1abdc415adbf4286f52876af60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f1ea2386cc3cdb00622b82ab004582470c9c6e3d098d475eb46c460fe5f05be81cbbf99c161a7eefc553afb84ba55504023042093da4ab72d14b6241590e29ae6758f3091c3d84cf8287fe90313a7ef72cc510098c02334147e8b96c7730c6b48ba30302047c435bb500673065023043d9c2a50c77ab59f231d827802802c38a4bf124eedc100d17ce82ea5d908a7ead58775f2e865574f8ac6083897d2658023100ea609bc619131560e1f0bbdabd1d545f2cce086e3dc4895ab02d52daac9c083ffa6e78e6e3814ba17d9ba466e93bd99c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fa33a31f8c430d01a910fd12db31b94df1a8bef7b3bb90ba222f0065eb01356d45bc241d71124fad15ec14b97632c4ee0230203d64188b89e4215df639c07dab5662881d6cff2b0b4400fc28f8cda41f7076f917b6bd507006551f49ded16bc9c23e0302047c435bb500683066023100e5f4135aeb2344ed072e807314412d224f6fc1193c86ef098a982d576b4007d495f10931ba7525c164c2907825308d9c023100872a516b2f0bab29e6bac0450e19b897ae2e295b4bd9c00d9b56418c9eab664a5752aa2c8aff1cc704c4ab9ade113d9b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f6e4287a8f4395287de3c4706f3b05badb3ab1596b0daf39b9a84a74e5c9c607c12b012e474c014176d57aa0fd372b12023100d9f0bec6ba6863067ee6be8be7ad02f78e6f1142070622894cc9761fbaa385d5b129c8b4aa23575e433b6cc2eb34f47f0302047c435bb500683066023100d3f7b8880d20a0f06f16825e904c442a407e943eaa4f96f0d352aaacf825d9feb7b108d07c791815fb6d970a76a4e78e023100fc8c525cd956afd9dc1e6e55a5aa4dc17be7117244ddcc36b013511dfa74e21411baae51bd09be908fd59e78187fea390302047c435bb500683066023100eb0f0ff933ddb2d7f5d85de188340704c65637693c91a1af14f15582e3158434703044e0e5031611c713adf1b457f1a1023100c29a938a3a4c5d56c691acb0711e03f2b841fa3faa716fa9d168eb835edfa845ed6d1f957fa7158493ed040dbb63212e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100876d7c67fde76214cc2d70715bb63fb1fc345a0e2856b2e0d0303c99204ce13870a1a60daafd9a2b57e49beda9467e9f023100c3913075c72e8a1dcb5275bfd61a3c2a92f76983c02f7ce54192d62cd53b2b3cc6924f7b312f6b20fafa25a9534eb6df0302047c435bb50067306502310099051b61adace90ccd83adfaa5d122491ca939733fae308ac999ddc5d9ac591af301670303b6dda0229f05ac7eb1eea1023044f60c3f190b95d2d0a33eefb4fcfc60ee172558fbca94742bd256e7bc30a0383e688489a03f2eedd012b034e3a962c10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ddee416d934943323170f0a947929f58e81ba3243c7b3378f89e17d9c0768cee9751f0696e8814453753067420902eb20230713c06d4eb0c1d6b3f5150f1e07e3af7aca70162a7a268f3b30760f96cd0ba7c7254f98b907069fb30227dcce8cd8b720302047c435bb500683066023100d9e99d71c53046eed7c07f8d6667f76148e7f14450172329d4bc0d4589ad0b67a9aa22fa9ed6f69c4a86ba06956ef954023100b3e570c94c8811d36519eec24bd62f34474116488bd21d96620d9308b066b078f2d43fbd25e979c3a9b0c852438f1f3b0302047c435bb500673065023100ed8b7461f26e1d2a261a23de49e2388dacd5cc3063a7caee131f560b4ca4449c51367f2a6be790d6b4e3be213f795f0a02306089038a127a7e92e962b785d1dc3f9c4d9a93b5086d5c89f5ed8527715d23c31d1eed8d343e4c9b8956b7ba94eba0af0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b7dd425653362a23473c926c82bb08a613fed74c910f9846b73f7114f35e11f6d8ca41bf6c359d44f1fec8fd580bb38c02310080f6ca042204bd4f2f9381c409d79740a4831c1184f053e3de740102f8820e6eca0e788e49cb4c3cc26d56c615fb5e3e0302047c435bb500683066023100c3f2453c09ad9638ca3cd0b9322f027f1f9a55acca2aee4266490a4a88fe32039cd99ccfc102b1d843a19a38f8788f0f0231008eec3b9ec9154049ecc95320527fa21c8cbb4bf607e411dbf19e8931aa92205cf45a5cd723b80ffe1e1cd51f7c34b12c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304d074bf4f88ef5f818d517c831357c4552c21246a5e63dff2d33099d5a20e040fead373739c0d4b2cc56cdc71f78c6da02304a615219157601f28b26833f1d9e094c1d086f8c3d5c1d6b13f9fc8ea8ed2deecec6696410ad0634229c97960c2943040302047c435bb500683066023100ed035054c48b1231f4e51ec7a07b222963dca7b77f80b260363fb7e6719645b53def08d7ca4036a65f5c0d051f377918023100d8aad4ac62696573199bf7071d9736214b041014b05be844b17da485d7fd67ee2296c52f80b75e3575de20d8984c62d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100832b247f55fc7fadf39cc00528be2fdbdc9f1b944986f572521940bd9b77e1c4d6c2dd0040ec1eb2a884e605484655560230439c6a8730099d446ca471f699526e62f593699350f1037c348b0b68b3c1cce7fb9831a35669a77936191067034d1a7f0302047c435bb500663064023017792d6f02ed272cdc9b18017e882650b5baff32c52fc7598fb0fbbcfa7044dec6b4059864b979cbdf617b826c289fe00230676eb6d8bccf362f6ac58428d7a7225cc191e63ad5e7e0b02c842027c9485fe5f3b9ca498ecf484a668b7feede1ae8990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d9d7286032961d44b6165cf3000ba113004e81c9ab0c13baa6dfd655f0bc9fc9f9faf1611513ebcf42ac44282e54c23d02304e56ca4335c1099e15af671f408303cffa6f9484121afcfa5b250814ac0f76d56757c8e7c290997a897d2954d26fc28a0302047c435bb500683066023100c59a5537f1088867ef48a58c1effc29f1142d264f3fa6de86c876bb9c00a0ab79be5d85f0e0dc9ee6bcdcf36c8c9e25c023100963f37ca6b10d4b96d9f8a7ef6d4034bc46cff7ac5fd2cfa291c6b116cc8dd007766ee0d7c6160c9a15a2501f0269fea0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300883a36a12ea2f7a68ab31ba85cf0f91e57f88056ed2d55af5e8374fbd4a119b8b017b89e47a13acd52137a41f5edadd023100a1e7d8649a08d4654412e7b8115dd0f75dd90306d37562b2d1ce05f37be7e972d63a2e255981dea64869d11b84fa52f50302047c435bb500673065023008e3cf5f0277b653037801084a66e5c0de1b4a6e72b8ce503548abe9e6f96e9fbeed8e9090b6fec8c9fea4fd32674061023100a35a9cd90b7534a5bb6d6a50e6f71b58f2401d45767e0365d3353081754a43c33831b802895857f4e449fc251b108ee20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ae8b8ebb3e5a61e3c47de14dac09584271659f76145969258ceac60930c8f854339a7d0a18ffb9166df8625163cef4a5023100c92b65f227496d1a9780d1939b91708fc43b931de187237ef21dbc5febc6abbd5ca96e0fa6d4eb0a8678140ee247ffdf0302047c435bb500663064023060fb1bf8412f3b078888d00224bf01f29a54a30197db3fede6152a2ddb2c9c140c0fbc9877b663f33c14d416b7b15e830230439ae3eca2836e933cdbda6d0bd6be09787e51d5a55060689cdc6995e8c006073775fbf06e1544de86db360eddfac05e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310090ec5e649ac90952c0527cd1ee47df7dcf1a02ad34bf545018b9926b5ab7bb1dcc12ee31f12a8581558e4a4303d035a1023100fc1ed5d93fe669016f9c5ed2c8a84ed4d3736240355452662ff95300ca162a4b9cd93e75df4a33b48781af6b11f9373f0302047c435bb50068306602310081c2c373ea04dc5579d4f0e73780a65872e993eb6a8d0ca2b32745318f35c78b7f1b103c58e15095c107676b20453fcd023100ebbf9187e8332dbaca35d18a85528e55eda63522d211a3bb97e4ad3426d155267532a4f0cfe75a0d986a6341473758f80302047c435bb500683066023100b7e01072612698a29dd02ab34a114fafa80fb42cdd5639186cd6ccfbaa8494a223e85e98dcdb0aec37cdd520e188890d023100f05a3d25d409608e053979228ae4ccb689623e3abfff290428a43fc505a8aa1fe65d6743a294dde3d0bd312741165a010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302aa1dc6ed483b2f06ece1c096938c8f0c0115046f9d2ffd0dbe83561e3829d69bd475dae221f0f5edd4529bce6c785a7023100ce698d8f236e36d7dcfba73ede8851f5df311656c28309ef2356b894850a81811751a1a7047a2ad84806e00dc64a1b220302047c435bb500673065023100c4d299ba7150b3bd5109bbedafe9c14771f2de2f615f9e86b25fa010dfcad927f3c23301fcfdbc2a9d86465e13b5452302307256eeb3afb6525a095cbcded6478ac0fdee27c5d26b8008fdffb44244da16a123051864c8269e81926f3dcd36ec57810302047c435bb50067306502304a1c90cd97430612103b6bec2af36fef7d1b932a987214834f90c1149a24eff969708d26b74bf41ef204354b6ac014a10231009c4bb2faa63b8657473c72382cf1648c366a1b4bde1ac390ec95da0a595be5432b11cdfc00afcb69cd3aa446d68036690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023015e2a5545bfee7301dbe92d6ec95561501c1fd4adefda9d8db5c363e167ccc997a0fec32bfb2434b9f246593159165c80230670b143899e7a5066835d95a8a52cd4467c1d4436c95703ac9ab65e0d9ef18c4d3c37a96c05f900ab8f3c4ca7c8e36f90302047c435bb500673065023061407b14b54b70702abb3042a0fd6279bb96d1db599f00c51071afd1484d7f14a0427d6ec9b70cc1a98549e701befc87023100cfda0b4d370f7d660854cfc4fb70508a0fb71fb8096d79cd1e4a31c7432d5aee1fcfa0bc3c6054e8ff28e351d6384bf00302047c435bb50067306502300275c50fcba30100b7304debd9b617d9b0a3ea6535b5078e2404fa8dc8890672a32fd982f90f743033f1a363db67c966023100a5995c8f7f6b2188e4366a0e9042b91211af683a1ee8c1562ee7292af36e9ff410cc47c1abdc415adbf4286f52876af60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f5e5af9acdc279a0f4582587be954feb23caa6040d0f7dfc4d42d7610b5a27982c4f05cdeb334350fba893968c278bdd023100dd1f9faf3ef69e90959046bb5ec184bb7261516a2681665ec67cfb198e0bfb26b5aa3203c848457682894cf43189f79b0302047c435bb500663064023031add0db6d24f2bc5235b566c8f5bdefc0e13139206dda7fd7a07b3c35b0cfe99ead0dd1fd3ea3a844e6618a3fd7075502304a2451c1fd129720a4ba272a57ccdf30e62765f340271f2444c906479a29822d2001bb2c9e010a3094da6876cb844dfc0302047c435bb50066306402306865323100726bcf6d6c39da4ae5da66ab0bec8cc9ba782c5794ddcb79b38190bb34068068c349c08e0a2cd02d60dbe2023026663ad2a6838f9043037d5d7d1efc61a41973219f1e0d25197a0a5443251192d05b98cea7fbc39b7627d0a6c92c2b7d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d5c1f778f00abd490c22972796229d1ba5f45beaf3293e3dc81d68e17c35872acd99277cf16fdf938c214ddcb0311098023100de307458552de27b5588430e44ba22f968381728617741a20f4bfe4103e8880d197de6f859c4f1199c3473250d9cb0ae0302047c435bb500683066023100e9034e8e17dd2e832d681188b8fc347f7fd76108c0ab020f156beeb473b37bef07390bf3afddcce832aa7e13546908d1023100839cf5db7f267bf1962338e730939490a3b211eb715a468059e5cc84fb376857e8408728e2ed43b7e81d09c483be96810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300c0eef00138becf01e43d0b1a712541987b870b3d1c39901e10610ba2f724e6a3fd84db8ecefc73359d93025c2d07f3d02303db52ac3f161ce56c30c69e96295828b675832c7b15687d0b0efee080385ab1ef69ef17dc1301717050eaa6d2a8ca0340302047c435bb5006730650230620451dda1f1bf71a2ba4cfdd28649f45a72acef3d7fa93ac5dd3feab776a8fdd64b901158c269f1d570b070d1b38826023100b7f4a16a7362a52fa722cd226e6a54ae15948881935cbf83a39a107b37c4dc19c72cec3914a1a1ba9b9249be7d1938ac0302047c435bb500663064023021b38f6ea2e869d2ad7f418ba1a549256d69654654985b2bc87adb3e8c4a0be94d12da8c4f74bc97d3cacbf1bf09017302301615841fb4913fcf3abe8c7d58e246e1ca78c07c99206c00953b30b34167e6d06deb3fc624469f194a429545095bd58c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100db99f61ae0e8cec31bbfce9b26927c632a7d135f7fbb54c733b82818c83eb53f8e258526ee88ea6d20bda247de556aad02306687dbc1c361dad681b7ec5cc00407368a5f1da951192cb4a7cd7b40dfef71aa148d4cf6026cd9e7d251ddad2e7b7b810302047c435bb500683066023100e5f4135aeb2344ed072e807314412d224f6fc1193c86ef098a982d576b4007d495f10931ba7525c164c2907825308d9c023100872a516b2f0bab29e6bac0450e19b897ae2e295b4bd9c00d9b56418c9eab664a5752aa2c8aff1cc704c4ab9ade113d9b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230459c0c335a956e5f2a2bd79516f16396935140ccf03eac3b198c00b16749233ae695ad2d3d6b535e8d01d07882d21b1b0230038e59213c51cc9b2aec694d544a00a876ec2404a8ee6b3b8cd02298e16e769460f4e0210c72cf95ec41bfec78fd5b960302047c435bb500673065023064473cc696c02e3dc6b5f68b7ffd76b738096b11a17e662c8f8646a99144528758c2ba64d122725aaae1e76dfd2d7e37023100963ecbd4ccfb260245dbc134885bdc96df4244b9038dddf605ee9440e9c8b21f1dc94517c3d6c5423b229e5f74274f550302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023043d8d663c51c9eb70994c5020f2389dee7d0300a3e378b4cf8e731119de6516990aa613a30b94a955cdcb22a0c30e9ee02303ff71511df351ef90c365de8281c742ac8e1f840c10bd7b11f309a2d65b81063662f87b1780e6d822447ead6d37c844b0302047c435bb5006830660231008720181a49f8c797b998844a8a76b01ffd6fd8d9533780764a341a05ae495f51a91f9e01b5a103d079fa5e17dd5fca78023100a7aae72a6ce64fee34706e35bccf099814891d8c4554fdb75057a35e6edff9f51da3dcf8041c8a14bf33be570ebd54730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023062a27f42d92957bd02998640c31b3b77c28b5d410a7e116676d3dfe695d0f8771a6562d0e90b1a8e39fec0791b076642023100e9e437cc669f8067fe9b99546644913871f849401de4734f24abcb79fcdc13529e0da6d64f0bb128d3c6f36a26325a1f0302047c435bb50068306602310088845dbf8b6b9352949792bc6b16d01be9ff046a413d3cda4159af00f85190f72a231749a923a91922147ba641ac53a1023100800b9f74feee4d10ff6771d936a344c012820fe1b1322b31b84d095f38d205d6b126cfcc9f465330331d786236af57450302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300386b5b403e9160cd304210b4ab2cc5998bbcc79581aec95324a979fb180d2913dd6b5a7dcecc3803ba793a9d63fd370023100e032eb207685ea2aab44403e3ee7b53358bc8aac8511fb7d0b88662a48f210d67c6ad8bcea5189096462001644c3797f0302047c435bb500663064023003e935410d65cf9ca6cc4bef10cd596a50981884f4ebce5a9feeba5c94295f1bacb01d79dfff92e39dfddf3c1500e1e8023009991421cd5fa5f40774492510bb212e4583a8c09fbc305cd0a06bbfd3cc99109d122d081075be6969d472176a5650bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301244b1094b697167cc1d8d40eef31bfd1e52fdbf16b0a5f4e6a38915fff417c5aceb5a8d0a30ae740a31b3ce8b3137b50230306ab335798b02c37939629c6e94db6f26993f20aefc55250cd03a815459b58842eaf51c33ac36f7ff0a2c4480a154270302047c435bb500673065023100bc4855bee4f97a57d8143f12c1c640df1bab0d53e682dc89829e5652fadf4468ea8048ff9f60d4cbaa19ade1c838ffd202304f824d4db7cc5be64bb7fe0fc527803ca690fde184dd2c7b980077fbf7935ac8c68267aa4421fd2f50dfcec54c4513c90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310097b3b84b3129fe5dd901e426088e74d9fcb12a928e7e30e3f191aeb5e4a44030f9c7796d9e0fe3c3640ab4149dcf43b102310094a925fdbde935bd00f91ec2de985807cedd344335ec512d09233665722028e6067c42eb209f1a6750d6a6c38ab5147c0302047c435bb50066306402305fd3b1a2d27fa90f7b52065c816bb013434d420caaf7c14c78e3495c637019d312d5df6344ec05d28e3254acacce7002023051431fbdd06e00d860bc491ae39852cb5026979d2859609b92817b6ae0290cd83ed0fed38eec712bc15e632dbc5e36630302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d78b0ddeaeacc1b82d94b79868909a0cc1ff36b37e3ada247a92a2a4f561b8f8263b97d5a652985fdd927bc47e20d93a02304e798bc5f1d54c11da8ebca01ae4941f5901d333ad7b163b8ce0bfdda23904cd436fac566821978c1600202c97940a6c0302047c435bb50067306502307b5f65b65e6873f7b22f0494aa9751c790ca9de8db647c6ac76227780730a21177f103c046571fc125e33519b2655a8f023100f6a35e0d3278838bb2999b7beb6d98903a831dd2e29baa7f011df034f28591f7b72f8d053ab52700d8dd1b23692549e30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303eaf242bae843f7322bb9a08e11f9daf56192aae30b25271002327a7d1497ed685df4fb4d28fe342d619b7817d13b4c402302db028bd7c2684ab9363e4014848f27f6acbd75054acd9784bcfbab5afc478623e0f4b02edb42d516eb170dff0d521870302047c435bb50068306602310080867bfe2fc8759228b407b0383bf8df55bc47d5e73df1f62045ef9eaeb9a332371885aab282506ff6a4f5271d092839023100916493c5179a3277e6ae7a4f4e51d67bf3b6f6cb38f9108ffb3f3696d78995048d3cc987744ba7bdb3fbca2d367ca3200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304c885e23ad32f050403db55f471dbc52e63aacb318808082e23015ecbc05e24d23a46ca051dafbd7e93c97c1bb6d7d6002305f3424a6d2ba05e412e6f2b122dfc4d58b34933f56cde44c4e847dcece48258e43c8a3a973901b8d0c3b64e2110203340302047c435bb500673065023001a3d2fdd2fe4500af6feaa23087dd5c6a5471ce1b1fd14bdbeb55fa4d0b0d8a90869da5337f58a295358f014b1a6b2b02310089b9f7ec68b82b9dcded7af23475a031d931cdb467898bee80b4809852f7f4bbd61aec38c52cfb3ef58f756ce4b2bd590302047c435bb5006830660231009717042abc06103e31a355af6fa59d5a9cba71f0258b89b5c140aafbf8793df1fe6f60cc490722a99334dfd5ba43871b023100af2dd95791a31cfbf8a1cfc8bea7c867bfa93271f0179b2f58e91f1978a676e0d15a6ab5e950a6e1f0c77e626b6499f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306956a6aaa69aa55b00e2d3aeb507d23edbec691fde6730b6c21ed9f71e78deaa0ad5e9c39d8682dbd1ff60a64f3cf7ec02302b22ef2cbb15b43d2ae5d429ac3847dccdd42d6f19ba7a584f26a368e6e8c42998991e8f212994b145870e3c8ddad2b20302047c435bb5006730650231009404e19ef57158317ca6b9587bb2420a16e766a27b7f3b056adcd8f50e71dc31dc829026fbc5fa8cf6bdf26f01f675960230269bc0f140747ad2e8b3ad9713f484a137176ce839af66183fa9ae842c58724dd79de5262a2cba2714d68d31eea979090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c99d66217664be295c3c3d37a47b9e59444c6e5723fc296888ffcbd997cc0f29115dce42fc932496b437ea6052606ad6023100d7473c711d85fddbd49d7f14e8cf5390a7bc2f744e2b476495eae59c8ff0898fa971a23979c038e5231dc37b5d44e3d50302047c435bb500673065023100a894c9a9f12f49fa1f61ea11d653e50136c5062fbf1816ad46a10f8bac5a1e56276f8ecbf6da69eddc5c9ee371667fd3023050ac6d65f4376848c7f0e093227d57d214cda73f18f55ce98236c32f9f6ba473784ca31004d9369a5e289e9e1508043c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023068e4f354e93adbb267e98c1c8fc257dc8cf87de377ed8651d9d8796868fb1bdb0507766a9f53a4c818405f643982672502305f0e67d5fffbdad30a7378e587ed2e53a30ada80c927687a856d95b47a6f72b68ffac159631d1b66aee958b0563a0e3d0302047c435bb50067306502310085996ce3f84e3fbc9ede3cfd2a1cae20d134220e859629c38b8890a5f817be38e42b41b52e943299f59d3ab234c98b6c02302de315803a8f66606bf6a8e240a844d48f9452a2a8831a285796b64551a083bfa9c56bcf0c0588046a589e98907dbbd90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f643c9c2d9960357b59608ab96ac9686ab001a02f5dc67ab2887838374bb3c967f8f5b7abdedf1f0530020e07b2617ae023100cf74b9aaa5f6318ea86d8f643d9f69cdede2ba50abbe099397badc2ecf965b5332190f30eb3a3b6ac29897099253c0db0302047c435bb50067306502306aadeb2102b4e414dbcfde1e5b16d8173303b1050ea1b2a52f9f277bb6f6647085346b931fa3b961826f66eda1089312023100f60284ec110317fab767e7da15511b4100249ef3e0ee650926274ef349961b2002f537d2b57e9df37127235cbec6114d0302047c435bb50067306502300dccb83a8efad1869d008496a858503108e76a2f1bfd1d2e91d8a060aff8a345a24e555eccca199d8995b188299f68b2023100a70eac7787b48e4cc366a718bb6fad53568a7376be9ecc434cbc9fb085710122fd61f13c4a9bfd28acbeb298dee1ad5b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230636e595226a0d7f19f9a476cbf67b6dff97c87b7445f4df7377446ba0bc16dc17033ec0d5c39c3c75ddb059f7daab66202302d5502762e044ddce88a1c5f825f000f5974c13c819a4388683eb61542047bebfe6663321c176f0e632a9dd9bba465d50302047c435bb5006730650231008531f7bfa53affa9f15712ae8db4ae99efa22eb26d65b1cd2e9efd9bec9ae550d2a0f2562ac26470deeecd09179f6d9702306b88f2ba838774002c007341e9dd8b828408a4879d42feb566c5c25a6a909cdb247b9d3c89011bb653c36e63c30894650302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230428397ab260de67fd12aa5d0127cce66fe7fec35f90adc0fb410db25e9bac819ebf8edb255774a4ad8c7db5046cee047023027be68e02d4e5fb326a84e283b76f64ea9edf974930a3c642188511ff91a994f6abd599a8b51f5adfc0c116850e906de0302047c435bb5006630640230783a542435eb73f7ffcb14f2b422f800e400aaeca3df736e011f5d4795e628d58832ba91aec3e07722848c7aa3d55167023042a6dad6ddd61b6904e5223fe48f9219f069a04c96f8774f6635d273b02ae24b03eead446f3a91514aac49a9dbd57c6f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f14acc1ecdd8114ee129e95ef790eaac57937c7294cd4cbb7614f9d0d392d0f6706246a4b0f62923020a9b71f8627965023055ed7ff06959f9bb324d7e35a866a55bcb8e64546a7320ec4e7c64e137ad9b53f6627a84977b28ea589a513d4167c3be0302047c435bb50067306502301c5350157f65d5d29e3ffd04e5df021db7169c55d3b48aceeef7935e73eec5acd97c01ae9dc724a1200296bdf110c9be023100ff1492c656963ee0b9df9953d1e644aeb981ee909b8969d43a89f56048c1d513d2bfe62ea6b41d07a2c0d35d4cafd9160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008ae07068c892300f8a3ec48bf5dab109ece363dc89bc1e0ea87a8d0dc412bfbac73d4b57607a6b509ea1bb37fdd24728023025861992669a119d4104550862209752b78c1d8de3b0cf7a0c4c310bf46bd6618542e8bb3ca1f3904baaa19a379c68d40302047c435bb500673065023045cef980b41a42b92f3d2c70d2e2fe1c1e841e18a87e9cab1663e2aa753a99f1c3ab62dd15a30c2eb2e710b04c9e16b7023100a38dde2b2926664c35c3003bedc4b0fd5411fa6a391756bf6c1f8fa9bf07c4cbb60f02b73752d352c3fab507c094b8160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009373a30d69b7cad0a9fa8a9869676bb39624792ee3c058f02a7a371f07d18dee31bdcf58e1a563476e6bbc70636f9b8b023057bc8d35d7c9e52ab33e0f5d130bc38bceaac113e35496eb05c3894d9292afdede60e77409598a44a33f5f9d74c55b410302047c435bb500673065023073dd4f23a8c9744dab8c4cbc283da948717e649bbf9f28c256e49fe21820d8ba6a0a1558e5c709e39879004ca6ec47f0023100b9843d86f04d83d788b476cfeed1d2a2b2d73b0b5104c09b829308925b629778c88c988f7e4da4cdc03fd0f8e3c70f820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023019691901c4d19f3bff75f7b5b886eb6d3a16e558bdd9bc6207a6a01ef4fa7ec9e484e666c6731dc769140b4d9b4ed31d023100b010da03daded7aa0e19e9e10d090ff1687b7e3cdc5705554fff720ce00cbdc1b08a30aa86a3da9dcf7c725d28085ff70302047c435bb500683066023100c57bdf05f6f21ef36989359d9059a0143fced32588cc0c16a1e3679154e947e3697db00ecf347a38136804612856131c023100c4a10dfb29c1643a19efffb5e2f781fd9142bacaf6713a98978571783b218037c5e5409eaf074086163c36d200e93f0d0302047c435bb50066306402303db09be5d9a976fae68d019af47ab7f020c3d3cf3f964b2982a423b8362df0fbfa2f33213918a3a14967f84f5c1f4baf02301057c78c0376b365fad5e3767d1cf04c0699c0e6d2d1b554a26a09e64e3ba45e56a28dbf3fe041f56d6d51c38a2da51c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c88e9bdc28be7803a4e198dfafd8aec4cfcf92230b59ceaea803c2c7b01b794e9e6a5a8660bef6188f7aa643e46ccb25023066333416169d27c5ed8926908bb6bd12b06d9a1f3adea2bd47694641b5cea75e1c704068963986986fa4b9042773e5110302047c435bb50067306502310094017b7c98fea7fb412b254f561f488232de2cc53e7010c0bf60e4c834afa601319238dec2a437c077452efc63ce4b5602306d0612ffd57fda266d8f9077e22cccb01403260dc8155a33c28a96c9eb8752876496505157f2a10db86c7ff26f22bc320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307705d9941ae95fef8575919a145eb9b460308e10b27548d1f3f708ce0f0308269780108d7e2fe54d4a8258859631b4a102305bb9811b8a0c683981d57ea03a0a6d0d0aa71bb08e14baf1785d5a841ddeef22baa3b675d1dba0b44713c52deb710f800302047c435bb500673065023003ae7644a057b221af7377deff2ce4983cc25ebea73826dc0bfbe825665d939b8f89eefb8bd7f4da8d48971a955004ce023100857161a3602f57aba49bab2617547a23a2ea3525948cbd9b115298b2c524d2a82393b2068119fd55919228ccc6fa01a70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d204c38eaa86825f4b1809b8fd9ab98c03029ae00ec9c74e765a83df88d086503de2e95a65d199a060318e51daa800500231008f2d856e6bfae129a2f7f9335b62e57df4de96e8e92d23d8d63b59d652a6b41e9ee9ada26810f9b05b4e764b6e201aba0302047c435bb500673065023100b12b79d66416000785e1235bcf4bbe7cb56e0b00bbc2635c2f58cada606aabade87f1319de392b904b8ca64347a6592002302cc88cfebcde5f9ccb9c96df85d3626e78487d601a2d7a1241edae9e602b1d737c0420cbc0e8f881965340548e9425300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023065a3acebf4c3a53b8b4bb0544a4b1cd692368504476d284d3889a4a6e9c20426e947da52b188383c78f84ab6df8a01fd023100a96412c6aad9cc69ee5fb78b690932169a02ab57f144f4bfac429234d3234751af5b37d790a9cb153e9a8840157886990302047c435bb500683066023100e61a82c5415fa113c631af467d1b00d86ebf5c73c13d8ae2c6af33dca443b64e939e9ec6f49082911bfe9c79fea6d42f0231008a98e169af1055115ff428321879d7ca74f076566326e513d31ed1c17ebe94a7e176f129437bdb0a01c45c554c3910c40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023049b424f5d7dc9ca63b853afd31370b86edf4887aeb5a03a72fbe0fd711502248b8c81280d4b37e186388a103add3ef8d023100f25ff24b8e597da9eb30d3327312624a9bbbccddf4d485c49d27f1cb169ccfcb4de864318098914adf3b124159b23d600302047c435bb500673065023100a62b4e489adfa128aad5fb6ea5f2ce671fa57709ef087c2f73542763d04fd18d606255bb23dbafeab48456ab77c596880230012b64de5e20ff31fe3840fdea1c958882c8b296a71f0d3775b8f3396dbbe3d9bca2c87f01c94c89177d6f3a79f945cd0302047c435bb500673065023100d18be1e0ab7c1cdb1e09a8b0451bf43c352f120e7bcaf10c9781dec1956bf950f01b818be497bf15e7edb378c90d7f6c0230476d97963b16f7407c72c596d525fdd5ac9bd7bd2bddfa3da11ba13c210c48be3e52314e0520b77388367b48618a84500302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305f5215f066c5ad7de2091d5eaeace931d6d5d434372c8ed60057797b2a049096f53bd24e1e1d22b1e9011313902c0327023100f4680b39b804fbdb955f090ef910734a4c0cfbe706b957414230c465490b0cf63661537ff649903842449fdd2140964c0302047c435bb50066306402306fbb3fe8e0d1fd9c05cb67419385632c97ee42dd59cff0b05bb3266a7103816da2e04638122ec310d8d703938663370102306bec468efddeede9cfee82e9c8f5e04649eb71597296ff00792be2f2699e92a43b9fc326b1728e9b68a0e74fb0d41e000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304f2f046ac3ef290e9a64c467778ba8f365ad07a274ac57edc79377638103fd4585f3c68699a8c1655145317df6bf7362023100e3a64618360c5a4091450379232ffe0e330b64bfcf6d0ac9987702dd8e18430fccd1136eac03f7c4eabd1421f0b858080302047c435bb50067306502304cfb0e7e7d2621c5a4d89084dfcd569e10f977a5bed4b9d0a7cea6d273d11ca9c4d8c83b1c23fd02473521a3e0ba89990231009de22e7c8b0b0369b0dd23936a9449a9f0b0ce0a588e427dd9344e0ac0853155f833135fcfc6f622356ee1f055370bdc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230683eb1ebd25fc1607c4217c0bb8568861a9a6426334e870c9499f1c48128a385e89cac70e8ff909debaf0fe097565c82023100b9848a2169dc4e8b019593ca62136c48f061897e2a9f3399f17e50dfad864741b6d021e54ed0c98189d20b0e360b645a0302047c435bb50067306502300c7390696a490a50c2b286fc5a8735bfc8d951cb5cd46a08a7794b0cbdae37a4fdb6f78522e7a3ded3fe5e752fc0337e023100c52378eb42ac7e90197c74a58612efc2b1904449589033ac9b7f975dc1e6dbacbf3296d5f33c5e623024a147de2d576b0302047c435bb5006830660231009678bd6edf9b1c6361907f84d71eac649e2d091fbe714a6774833f8452a0b23addc6e3bcfc3bf36fbb3c2acdb4675053023100ad5106f6428109221e931c22a80830447268d17ad214a0e9ced73438d487bc01068b67b8aa8e2b33df73837f701043180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301a0cd68acdf29326b3324cfcd8d5090fd1d221624bff8314044397de936951399672aebaddea9e398e0b79b0cb85cb3302310086035cf6859d17848088b46d0486bfeaeb314513e301c2109119cd8d7b2b76ce068b5f7e8ff79aeb3106de44e625cd360302047c435bb500683066023100cab1b947c423e65819f1014bfb319ef615604259c55ea9d168826f8f96236fabdb45ce1ec0e69824ec1c3dc46422254e023100e392bd5eb905d731bb184c0957c963fda59a9f744e5a678f850c4a9aff1ac6abf63d47adae606840ad51fa71aad9a1090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023027118574d974d6025ee11a060f3a196bd852289b8a7b4f83fa58f75b4a5f2d008b20e09a05d4ccf28b32070188128ee202302f35b1746cec97cb21d2d334f143e24c10558fc4d40ed8e27a32e943cf0077ff891b58010b3e632ef2566d0a788f9d660302047c435bb500663064023041314c2efe06d254007d002d41222c5bfddfbcfed9bf17777835838e4b8b76ebbe65ef435f68a94f83f50d452f63658b023047943937cafc2ee8d222b6448c76f838e566596a182b4fca01dcd0bec380561ebc8294049437aee4152c499f983472bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cacc47c0f608b610b600fb713967da2bf766491bffb2bc689fe7752079dd4d51c8ab36c2c8ca4b0a71a077bd69edd4c0023034a2794ff15d8508b9a4da03ae6edf178b375fd6a5f893cd18c462741586a566ab1cc1d283df62f33b6ba71df22aa1dc0302047c435bb500673065023100f3a4f15714147613feb7fb82a329d71c8ee3a5853d11f4522044fadf593cb36a33f9b3777af2d48a612b3ac71cfba45a023075244b5ff41211771de28584d729ea1e7b15be6dceeca1b96ad54e3b781e9c81c3d4210549babc7e7f6e6bfecd7c485c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eb79a470011b16e4d1f8813111d5adc38868c86d288f41db305d9e0f59275d498ed04b610c7af5d0c051815a7f99d73602310090e2ceba4a3a51188033ff068f85be7dfb276f82e7748d6995e641494344eeb539c023bd8497173fb1b94d4dc3d9f7850302047c435bb50067306502303b1de0f6e88852926a6b3b54aefda332327a3caa061986be3eaf108b34b54f767b45c0f1f206b553a81cc416ce516f510231009e201139f5249f00f5a2fd9630d5a7b64ce9584d35de777a29fda7f408c8d24357bc74e113b03d123372cb4e06d8cb700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302ede475f8e922104da26c7394406f50392124445c9ccc66d02d88de99b2ab6764f888106e71bf48f923ce6e607e788fe023009de35191dc7e3b6bb84b05980611e47bb7bba72fe08f69228d7f15bf54f2fe6aecb06a29e71bef92b601bf51998eedd0302047c435bb500673065023100db99f61ae0e8cec31bbfce9b26927c632a7d135f7fbb54c733b82818c83eb53f8e258526ee88ea6d20bda247de556aad02306687dbc1c361dad681b7ec5cc00407368a5f1da951192cb4a7cd7b40dfef71aa148d4cf6026cd9e7d251ddad2e7b7b810302047c435bb500683066023100e5f4135aeb2344ed072e807314412d224f6fc1193c86ef098a982d576b4007d495f10931ba7525c164c2907825308d9c023100872a516b2f0bab29e6bac0450e19b897ae2e295b4bd9c00d9b56418c9eab664a5752aa2c8aff1cc704c4ab9ade113d9b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023031f8161ad8c9664e1233b6a04b1d62821ac9e36f4430f7964864530798d2ff97adf97ee6f13cc4cab5949badc1aadd7602300b3d0a4d1e76646a11ab95bf3bdf7dbfd33065a171e7baf70a3c7668252b90ed8a423795533bc4751cd7dd4a2fa2e5ec0302047c435bb500683066023100e32f4b28ee4c53dbe690d62bddfb357fed14fcebe82efd568f0678d0f2b7c6b7b9872a93c9f3921091a1fc7ad17f3a22023100f9f112d900eab4aabeb397f889a5cd064b8eb7685638c2629d9d414118121dec59a2f1064c835ff96b8743e0c84d9fa30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100957e109833a86b24a24370b4212a5a0b59dae21197cfd070c7c4ab6b19b4c39d96cfaecf5ea54b29a8e567d2fa503947023100979a0dddcc667e07aa85303ee34eceee1e5e44f52c8092093d6f9e22a1f863964141472c8439db808dbf2848614361c40302047c435bb50067306502303c1d20b023267060beb3316a72216a0c57f7fb2135ceea8f2a9945b880c05527371f7350b2aead10c539845828f5f3db023100f7a2793d69106cd9d20fde9aefe502c448b1f126c5f00e1816ec012430d4a107d743d6e8553543c47bce0b901f5be4dc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a9280de85405356288b4f96182e78c32f931daa44b669ed0f9b2d05125b30b9b9b7ef37bf06fd88ebee4cdf730dca5c9023058f344febcfba272b5350f5f444ed72403105063d9bf4fa8f05e88483497967556455317134d016898e8dc3485a3c4ef0302047c435bb500663064023033ac6516b08be4bdf004c8ee8ca630db62ed80552c4b9464d12dd5862164d4d6a60d20cbe4c26534d9ef6eabe4c2f8ae023073c9b0fcdc22396b8fbbd5bf855bd75e1e4d04d5c151719c46528b0cfe57e9fb3d616ba685e0eb05342a08d3429aa7c10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b9122fd243998b9c350e21400a0319beebf76f7188ab812bd4f50d1636a1c81f26ae4b7a550301d0fe638c2491bb41e702303e33e6457645d72888e5767a223e08fef7cf24875841776fc8e108a247c29cea23eb2fa863ca023674d76bc06c6998c40302047c435bb50067306502304b73f4518c288558c51f52f4161a03369e49b648f697f982c6f17663009737b38cd60417f98df4e971b650cb653905c7023100a122d7633f2aa18cd263663142c0ac9cfbf3cdf705ba9ae9161f9da5d0fa1ab955ff9ef303a2c90daea289250263140e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100907c68c7fb6390f5dd625cb662a166729fe714ce597fac50dad3ee1f90b780948dcd7a2e830fb94d6ca6a55c902c50ae023100e396097dd33a9fa9c8a4445b89951d18811cfc420e92887eef90c0b931cb9df93a190a1c238bbff97fa0516f58afacfe0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306c0361e8bc6c9d305a14d0acffaa4e86604292a877ebc220eabdddd50aefba81bcea10b33822fa4467d7eb2e4596896b023100ee1860e09361bacd0829abcc7761974722db00af65bd2ab3141ba17e5d4c4d7f103f807bd3e66d8ca020a03f8bc046370302047c435bb500683066023100814afc73ad6cd6431266c974dcc64f7442008d968d784356bcf4542116fc63be10f2386febb546bcdc6d60b2984a921e023100e64aa8eab4c9bbe4f0dcac94a56c0eb8e16b166edb2f8566b5431e6d59242c8f21e1df44c4558374793fdea00c4fa4090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305bda07e2fc9c939550e48419b738f0fe3729be085372aeca6ac66e48a68cca5f871f0a2b3ae2b93887ca94ee7de077dc023100f642c12c3d53213be46c752cc68597292d20ab200b8cb66de9346426fec11f400eef4e295764f1fa75d5ac8fa0c39d940302047c435bb50067306502304c3321415ddb2aa8ea4c3f5a66ea63edcb4c235444694378cc2a0cf0a7f5b3d4c098ee9808fc56819613cc9a87f70b05023100fe644469522baf508a914ae707678eb462ec2ead6dbfddd5deb85d639da93bd2dab3dd00bf1d1b6af7ef6886585021380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023001dfa8b2c7997c6d63b3428421f81f33e7130036c169049858964fca0d8e8d0f7ffc73b6122f3dd52a2cbd52b34cd768023100cf29b6c28646ffee8c36b4357fc3ff942ac5264a33ea0c93a158f6f801bf97b8284f32159df03383c9f10c599251c38f0302047c435bb5006730650230452e1c2f657632b229bc7e0eea0c2f62bd5e5cd7cd7c8bd73a30825f220baf783d49fa5be5ee2cc650693a3045f526e3023100ef23a8212e1d04e71ae56f4e7cabb4ea051a1ae1a1ad030f6ee3e59d5a6258fa26ac0a517022826d05cba925cba25d7b0302047c435bb500683066023100e5f4135aeb2344ed072e807314412d224f6fc1193c86ef098a982d576b4007d495f10931ba7525c164c2907825308d9c023100872a516b2f0bab29e6bac0450e19b897ae2e295b4bd9c00d9b56418c9eab664a5752aa2c8aff1cc704c4ab9ade113d9b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300ab069145aad0b3846d39a68387c1d45c301967c2541500a23a5f2aeb12072d87dac7e5e76082a8262a32f30681170dc023100e65e3b87fa9cb10552c7d2161a4b36764f0e876026a0ab8ef4ccb25e5deb7675552172afbcd9d9af802948654761f3170302047c435bb5006630640230786292cf2fa7fefa39c8b4564eff40f36f93f1817547454123bb3902186d74d649b1c717c26e604ffc01f62e3ed260df023043f5220884a137cf1010cf6b920b7cff2540aad6a045c4b5e586fcf905dbbf78631a2910a79be9075489383c19a6f3a10302047c435bb500683066023100958ed0e2f000a7965f61e7d64ae8c5b9091c3c3036b6b5c1fa0f35c61a7aec9d0d900d2c5ffa4bd4e828dfaeec1f746e023100dde4c6409a863b238394d74fdd0e7e1127648e86064dc7a1cda5d0f63120822f8585b1d041e0ed6b589df135b9f4f8940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cabb0e196861f79292e674c8c5ffacd8d2a15e8a598ea357843cbf7ad5f396ba70bcbb125e424b3dd9b37c8e3b80d766023100d3b737785be338532e3a3d11eda480af6fcde0c27a922b847f76041136fbd47149e10b8321e079db380fb2490c8712150302047c435bb5006830660231009a378f9544a954545ee8dfaba33a4686ecc15e76723f84fdc0a9453e2626fe0fbcfde197f48befab343b22204cac74f8023100e31f55bba3d24ad2ea37f8b87da33e18689e73ddf7d7cf236fbf6e0997783fd94d99b304cb2230c77ab82bf8e2eb29420302047c435bb50066306402301fe1037690c38f51546652b0bf478d0db1eef2d9c3d8484c27aa7c94bf204001e933e0d32940b3304b40448c1a4228410230765d1d24f423ec6c329eba672eee5e93572c054f3e2bdd5358a8d9a7a413c920026545622a29e7d5edc0b383c125efc80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008e407e3d5e02b9d49150d66102c72e1c1578a704d0d58af42b0aba1aa6ac51ead3f2895e2544b9424a4ff965748fd7ed023100a2e83e0e997e87a7361334aa649059ad544ba00ef09fd630dd8a036f1963a86abeb9e33ebcae49d933cd8269daf43f1f0302047c435bb500683066023100c1f8c8832ebe7385a418bedb730ee6a617a2f22244e513cbdb8ce5a3677c6fbaee68e0bc85d7de13d20f63303a674547023100921112342222c2f4be5b2198958008e6d6ded75d13edca271c0bbb64fab70db57a77aeffdd3a8c1105db9af55c00ded90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c10d134a57a85d5dbebe1e460ae22664769275660979722b484eae003478b0566109f1c98cb5b704c2ad4de1515884e9023100dfd2e391c7f13828302cd19183ba628a8c6aa1c0352001e77f5596d13e25c9c362d9dd7ba279ff567c82e2461b0c24a80302047c435bb500673065023100f47a3914691b00898d1a6fc126ed1957d40ddcf33c81dd3f3877f273372fe60e977225508120e972cdedb54e9f5c99b202305e3773397c93ae994a5028eb369d8dc5057e08eb6168f4abe1c5c618b41109fa793ce1f98935922b55f76ee40df73b230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306f60592f97a15c8785fffa3f6d600c93c2282cc1c2ed08d163ac142f1549d10c3fedea175c85c62057601219e0b5dd67023100a9d3938983995a76d3cad48154e5c16d9aed4c100aec0c7f8f4d3b36ec220fc8dcfabe16abd25eddfd04d5912623bb100302047c435bb5006730650230691d3dc892c22b09d9dd300ebc7009f4add89c79e5744a8e740c4db456cacb11ecf3d42e2d799ce0d58d6d010bb41df2023100dac172119fad6a9c8d80be03f2322740d771f2732c85879f3baacee65db46a8bb8e9b107bc9ade85b99873d6347dc4e70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ac1f27c74fdfa0f8f452cd5b68ba69d896650234e664c61aa7a9c4c3cc74dab814381daae6d3fa770a1e8fa2204836c00230112861921ac0387c0e9df39f09791282566952f1bd0fbe8a1616aa35025d05294aabbd83d6cb829b494f2b7f3074d4760302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c686aca404e6e147163b787e647bdeb6bb5c90c7be01b87bb49d65f672434752ec71a0bc87cabaefbed660c6b92b5dc702301fc2aec21973c49f62d213dc9012a8e1355b07b742ce0ea27dabb9acf15f5a3e54d19f97baa728e367f59fcc39b1489d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310085fe59ba57bf618aecd9528fda46e7290bfd38ccd8dfac424c19a833827ed7fe42c973ed8fe253261c813a022e6af0410230247c1b5626e181856154a8e541132a39777bfbc495c54c1d0228728aec237754c85fd6f7c0ae1b9873737ba8242229780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230086b697cf0fabf286ba918851cfeca3e697c630ea7dc4160d84ab510857d8c30b90e0b02eba89861d478bbd2b4ab2c9a023100f159c27b59a4dca937eb1b92d45d77c500cc90edc1aa3d4d0362cebc259fffd0d5bb8d857e392ed397ea413b73a53bcc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305b7cbdc220b4a34f09e97540631fb542d9d02589dae22eecac34d0ea37a6ab4085e40657c63b737f37250e16ba14163f02310091b508132edc3ed09f089f82c9b6babe411400e61da25316b7acf49b1347cca1db3e4b5b7805611b806876610073f6510302047c435bb50067306502302732f58020af2c0daf266f5040012113d6c8054589a55c54169caeb7eac78910e48da61cd6b5a4aed1f87892e0f20f2f023100b7aefa709e8e65bc8a5bd1a6047373722180210c20fb29223b5e8f3ba96ad6921fd2aba6fd5d1c1833cd38d424312ccf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023006bfdef6d97f6cefe2bb02893cdf5f1b0ab108e0872b704df88a203c8e80d69d030373db1ee391e5e74ad058dd10f0350230651e58d64085c08f294a552539834dd36f59c46cd459f7e6acbd60ed814d9919b47cdb830972b9407ff8f97f1500d0e00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b6c85b49f6990de4f394d503da8ec54aab1ae3d48d1b46d29a74df130c2683e9ac86e1a09be7373add8b0c4ae1ac2d3023004a6a392cde4e3831099c104f3bf4f07164c811e396f6485db11a64ab6318213f995b90029a28ef488e1feeff2013cf80302047c435bb50067306502306edf43a68429a14a326c7f4ded34ec51c1f57557ec775b892c4ee2aaf6c44dd22e374e8508d91c2c1463dde34127d0cb023100aea91337a7b4698dd6ef8132225e3d5ddd7029e8fe6a69ac40c6b558446c2918bae772d08579d42d90fc197a0e6dad520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b69c887969b785067aeda2d16098a4214992b14175edb757733b070c6c8bc34f2e9a28c0f452d4798d7a324f87e64e4602307e5a938d267a3fbf57e0dad9f7ec9c25394cbe9c7e9e88ff6c2ab65782108ee9e0f7f2a2538b05a07efa37cd523e16e10302047c435bb5006730650231009d6eaee725b7c85cb87988b2f55002261c5195190ea13ab5a37d0c041d9a6ba23e29fb14c3fe3965c43759ea8912693b02302e3d2cb55945efc57318d21cfcddfd20d93578029dbbf20a86bedc06490f70bcdd470ede1d2cfbdce05f0aebc938f6e80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023062e60c1518845feb5ba69e8d4bedf363e8d18900c49d27722c42476b60540e05689bdc5d14ebe8e857161df9b70660880231008e1cfd35375ce41a4dd04f6e6049e77345350bb74be0b8bc937a1c076c9f8eb668f660d973d3a5d45234d2748c08081e0302047c435bb500673065023100b323e1b891337fbd57786eefb054fe0544f388625829abe477645bf7450b7dc3488ccc256d0aed88e08a8a9334158a9d02306634da9e3f7b728982f09f90df43bbb20200f39ae8cd8f0d33d8ebc4c308ab4a704a71bb6b0340c8f934d762317b6dd20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009c4c90259499e03999d5c8293a093580e4365e845c5775a697ca9dbb91fab7e6a3bd25d6ecd4665bb197eaea287a8498023100d4bf692d5f270f40b9ffda559516a46fcec444b17f8f00ee49c073d572b95116964d228d995fb2d540c80c69afb602b40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301c8d5fed04b11867832d447b395c18f5458d91d8c85f712dd6e75ca5ebcb2f7f65cab2853624106b66c44edc6361137b023005e0cb866ad44e9d0fdaceff7ea6866a3e22509acd0de855d7e6e4152725ae9f4a5d62df8174a6cf5c7b042abed317eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008578ed4a00abea9cae508481a1f37077c6d5d912cee61ebedb850906220b4b3b05512fa6212ec9ca207085acf4908e3702304ed138ee37206763dc0c9f20333d49c0be5cb37c040778e6eb3076e42fcdc4839108648c64b3af059af29414461534d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304c84c7f9d1070a9bd43d2b491d356a0e6b70aaee2f643330af434cf4bbaded2bdec039e00f286c99b587968c9f8b0aed023100aa1ca2fe27510d5b0b5a29d74930e387c958f7b44bdf2669b2cb1d17859d1fa1a02c694f68381605676ff2682ad02d560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100861b81c7f3b1340d82c2db9f106ae5fe7f82dfd6dacf92d23f84851560197e297c40f9ed2d01eb0f8566083b2ac248ef023062bbb5ce5649b5a9d67378f7da4dfe3399109add4a3c0e3dba1df17f7b270aa70940fd765c9d5a50a1d3314413c619e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310094dc4a56c89cd1ccadb2418ea9228f513866225a733f049fe1acaa0a2dc75bdb9b2b8f03a2839507fec137d8c235b0f902307c04fbd8eea553821c3bc6743482a1bbf39cab1cbdbc61cdfb7942cf9be75457a7da1641cc81182497e701febabdb6f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300732deeaf7ec604637ec4e7a70387dfc453ded365cb19e8c0f722b581a8b5f1762e3c72bee4bddf8bc525893ed0ae9cf0230071dd5315aa3db3b08e965dd2ccaf2342cb8b0dfe0fb3034645859b72b4db7d0227c9fd50f8381c5f68d148dbf6cfd6f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303f72847e41301a0af3b8a5fed4ba3cc4afea397bf7ffaf9a22706a7c5bcf5fd6701a5a242a06fb75db24ea42e911fbc10231008c8a63303cf9d541b7b57ad74758ae9894b7da6bec972b3516e1ec123ae30be02efd07b024d96eb18784f382ca5a206c0302047c435bb500683066023100d693eb4095844297735283fcdaf97af766d00bb65c539e254557b52167e027cab9604223c2d213d5f1d3ee01ac2f63e80231009c65e1ae74fe6924230afa8b109b8c1b0ed70b3ea01cb6b36235df037a867651d02401d409d5eb8ddcb02651abbb64ca0302047c435bb50066306402304d035c1cd3cff71a10795f130dcec70aa7167f17d3a662d6cbd70d6473d9a4295f9b30415fdba1502e2d1d0b2c99b2120230572c67009dcaf84e4fc024278676525e59d36b79b5786db858f1752bf91ec313328e1559117d33dc9de4b7734ca8067d0302047c435bb50067306502307939969a9dac6f362451a4e945fc1ecef9d8c31d69cdafdb1cf10c65b7b4143d71b65158625a82a2f3e553c0bb313885023100944b02bfb3c1ad456faeb423d4ce512168754d3879091c924e32ca9951e39693f8ea4719374b604277ebec20bfa167ef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306983d5c21748e4e485d7c9035efeb692d37400ff02b08249dff72afb92e9ec6105dd7845af02788bf8b12a109846e11102306a3a0f81a976d4237611027bdba4343820f25a9d9bdd54840facdc866dd060c08c29d41e77a50415363635e741ecf0fa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023051f467747b0e40bee5649568033a00d32fa2cd793ca8bdb74d3d73b77993e6e1f0e0fa72c8cf7ae660294237155caf1c023053cfb2f9a7559f6b95a22f97ed233cab6dae1fe4f4b4edc0c745dcf3e99e7f286a9b98b1daf8a0a081d450cd5227d4410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100897c9402db76ed8a937bcfa76c90f2288adfd931348da82c6de6d63300a0aae75dc875ff44fc5a91c88d4639725c1623023100f5afcfe7154be30b39da7f9775d27ee682ec94ace92987b0d687740722fe32ec9282a33d449057b093b243ac938898ee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023026ddee165d6d17632f60ebef1891212d6963ef318ec5ad7d495b081295882c945cd9f404716b0236df1d22cf3900162f02310087f254335b271d80d53ff6e57e575273c6663de915d309e1d955f2df2a67dcbcf0b17207e134f84436a658491b41cc6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009fbee5648edfdbbf959c6447892c6284d0a44d2a654b3ceb5c7c0a9c71daa1dd5c26e880c85e504cb605da32c94b60ef023060c5b36b59b144fca92e2711f05f1231f06fdcb77736b14192c69cad39e57bb80e408e890af77f1ed9de0f50df39bfeb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230749b7eeeb54a3974a11c6931a41faf1a850ba778c6651f812f7f30e3e2d92c2ff2d88cf499459b0bb2c14d8a1d46549802307f44c4ce3befa1a6a4db4baa9a02e4baadf228c11290d4894592bf8aaf60dfe5643acb8f664bb91a1d73e364773cb2ba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307bb5e146947465ed91e60ff9fce70d2191362151f83336e5b539abec14cacfdd642d00f0ef83b5d02ae2b34bc3ef77b002303a64bf3e57adc49c942f6c2388030ca57d930588751861ae583973f188d40560e3fb497895d99b61da0ecb10b6c7a4aa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300085a24e11a82e356a1a8df9831f715ff20a5916a9349eb0382282b986826f36a468a741c4de0cf8dd0e5e846a4a61aa023100d614a09595a681dfc0c7dda794c5dd712eb349f0d3d1b1f2483551bc8afc85fefedb10ee7b7b1c488dd1a0e421f55e2e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307e3964aae90bab522d71f6e8f29860adaa5f43b7817c560fd3895ec121f64539f1ab7e99ae0384d6554d5e67f2a9c49b023048be6a147e5f63fb2d03b8b87ee80413ef561c797c88cdc5e63d6758ff08cbce09201783fe8268df1bf696722619747f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ad39b5b5281f9584dc7d5c6c96c9a5643ee93dcfac6f20ac38deab67509fd88fb4e1a85eef926d74b1953e2c3711437502307351287921c47bd3eeceabda438ba9f263b65902cd93fde16765684730f69a64ce945170e770e2a9c95b3456719bf11c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023013740090509d1c2e43d4d08bc27ee46eff8238793308fcadccbc82153cb2937d16d301edfc5b2d3575b6eee93968731802305e99063277d7dcb3c99b82b8d1c833f9e6272d6bbc1e785af62689a91667aa39b13284ce5068c314cd20bff8235dbd960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307afd9aaee85368bdddd3b3da78d81a04421af72a46af5867405473ed5d737721f9a13acb5a98d2ea1119993a42d0e0a50230463edcb8613ead1a1ef27e4a8fed3d3dabf3c9c8bb17c7e544e163f347a969d02d8a8f9337c786262f912f432599e26e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023032bbc74528a0d2d3a71ba1d1885979cd342d59122365872518b7ae47de75562b7d27ae9c81b017e48dd06a3e73b3c29a023055071b436bfcc9157065dfbcb7b09b09e92e055f8da8c4bcfe57d0739f0037cad2051555241ed0d833af595252de48b60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c9a62ccba8035ff4326e5c6dc7d1184f76d3d36916cc938f2d497850f186f338fc4cc835f00de2181f1204778c77464302303c6a18f38905ca0810fb750f1a3d45a1f876e84ec3e2b1aa276b72658f50b092749c5a96edc10479fa2a0689107f6fee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300623b5ae8b4c710c09c739441abba71a3fa1b50409ff1190a45600f493fd59b055d50c6f8e279140f82b94524ff7a794023100bb16881c99eaabe628142ae69f973b877253389dd9cdcedd45494a9a0bbcebbf1d740d1b8c1014f3dc1a14aa7640997d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100882665a94847ebf67a8a60171be1fef60e370fd64e2f4731d86f8bc9b1c8966828ceb8faba0c47b56213d19c21b5b09d023048670d6f833e27ab711f701b2d24ff4ce0c9164d31fba5f313fd3cf77608d05c0f42092d01d3dc6e5d7c2d02d79094280302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300c3baaf9ca42209155c92c4604e8f4f0ced06e2f666919620b2ad51d2bc81e13b07f4d4e7bcc38bfee02d26136cb097e023100b77e5c61584aeb66329db89888715d62e6d3e70021eb4f835a8b83201e49b5c53a82411e02e740ed475ba7d7fc01accc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023000ac00e7fc420eb8233aa9b1392441bd0b55aaca7603b45097c32343361a7a85c6a80660b24bbc61529114d4693f3e2f02310089c78ca5d380ad2c92fd208828b4326b3eee12df706b04396193875b62c251a144125a6a630e7bb56184655bee1782610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cc6e3fcd09cdefa7fe402b27c905f74de09e45164a703ba2c4356f0e5a324523ff9bb743715cc13667ba9ec4bd94eec402304d2ad6e340f9c205bd0df1c146fe36202d83bd6863a565469db2bd1e746510af7108526bcadf6f202d95971210e9e4be0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023062263bcbb14969a4d7cdcd853bd393afba9c1a96441944f3c9f69cc90a50ffe63f16e85652d8d1309250235670f76edf023100afb937af052852190e31b49f0d4cb94a37ce6b9f0c6d7f92c7ff36c0f5039f5072b44698f6845595dd7081d7805020320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d54ba23b3dc1b95adb5246409330ffba59696661e7f122db5f3a6cf8f728ef22fcd507d70219cb48613aa8d78fb7754502302bccd921a3910ddd55b90b30f44a72d56612a28efa144e128f91523a515557d08f0f7e4ae822771411e231693213e86a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301c4414c5c5c90cf60c29d7b52843f931854db25f32f81afaf64efc8c1b8ae23824075955dcdddae6140dab2470bb6ba402300a38d98433695c804e1262db05247a28232b1974191de62935a4d42c2a2dbc584e2511c32da108ffbc9bfb8d5d3ae7190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f9e0d365a4fa576b22a64cfe68b9a3749cc44d1ca46a3d09d183e26a3622f97d6b7d49f1f6f123d26c09f8e5329d4a83023100800fbdf5ef189f6a7e095b7289d87b4d1e07431d3a007b33c1bb3361f69cc748f31ebc1c9d4743cf9777cc3f8d094c4a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304fab4f3a8642c80c10983c2f87e35347b76d8d49b3c1dcbaff894e5b44b3aa889a1737518eee76e557cc0c326de33a99023100f65fb755d1a873c2520f48bbfb21ba2dfdf88a0a4b38bd683626dd43b4570aaac79d42c86cab985a72cd580bd1c5ee1c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304f610eee8abe0bec2dc652ecb2abc75f29248c86cf7eea458bdc48afe00f9480a44c7c9a889b22ba10f96dc92be2775002302747f2302a1ae782456338baad443e0087c22293e2356e5ef066e50ef1f739cd51bbbdd05548b25e00e2b1c2ed4c2c730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023077e31bd4c746ed094677565370faa92e953ce94a0a6f8842744b9e8d9e41554b31760934216e8fec1d7b2e2cceb3ccc3023100fa0a5655252039b893c357789dcab71e4e248025bdcf153fdc76bab2a1eaa6e20e577593dc1bb41fa97007f9602b93270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d622fd56939b7ac10e0e3f6d9d6d4d641263bcb59c52fb67d5895272bec6fc3423899ca76fb50b35a477ff1af7241e1c023100e3459bccac7b927f0d234257da281a1c9688a0adafa07949dd63406506ef0c4461245f649b68fca1fe357ce63760e2260302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f9bbe0b07903dea90a10bbd0874699533ade44f782f07f3da8d89a97a862489cb4ecb61143505e7a724ba4006b8d87db023035965cde91f5ba2daf94a13a16789503e7a2dee8441a3e49148c365dfac4c2e91f1ea8e9dee0dc7c2f5fb4ce01f6a42f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303507094a04805ab4583f738023cebfebb12875d1884763a80c35edb7bb9b6ee5bc7a7e0b35bd4e2ce5027e92ec5759e5023020e733d9bbf1bb86c17a39b0d5cf2d83f42e59c947ebf690dbb7684b857b22bd0f9e3be323c95eff6373b5be399695500302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023074bf618b9e732f69b489fa42cd7fc7a8cd3689fe8bf666d58b71c8aee7346975dbcc0a8f14554faac1ff1c091e326a8f023100a6560c7cb5e436a3cdad538faefb00e90c15c9a5509aa4b0d809a8933132516edf07b2a99fd7e0a66f4eda292718d8f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b59df1f805259a30ea16bbe10533120aafd049b46ab467c4e058666032af8951eaedd072d4abf1cb2091cc8c292b7a8202300afb79e9bdb36e754a2c170c89559ec675137d6fbd59059ead3c09ae572c18b6deb963e8d070556573ed47923a5801680302047c435bb50066306402301e57c4183074d1cfb046db00dc14870c0a866c09e4ea1ecfe1e7aae04a02ef7c0215f3511a7e690dc915c32fdebde8eb0230493a956d4991d0faf3b7435b58616fb800ffe5ee255325a5765929e84ecff4757e92fe2b53fb9fe35190fcf11d7f678b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b8aed211a212d2e75e79affa5e8ab7d5b71cf75062841f36c5101048ace0c203b08460814443561ad9f3475057e0c404023060048f6e8e8f49203c372550529aec2c2954ed26a5bb5e1c3e672e33754ad547a65812f353aa89604b04e0f7f0b6a5b50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023048715a7878aa1aba61a25e612b41f7439f9267d5c6b8b1ddafe84502384f0b8a54e9eee9ad791b05ed43a40db7210367023100c5ba242b459cc095a9a3f7a51088412b8b72425e9434c9165be085e991360bff9f692e3713e12936d0b2576d9c88241d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a77b28664842197637eebe58641cd8d89e9025b45359ce9e31305f44ed2e9b768e169512f2042bce4cc63b9182919a62023051cf6187fc457b847a441fb447c23e85f0ba4221eed72691201843924074c2f0ca161bfd154a387477d5077fea7448170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b15e6a16b596b87c7db0ebeb9df565c28155b49a2830443cfb8c0206714e354996898ceef247e9b60a7f7f8bd5fda602023100de406234c6a9c7ed589b12c45c6ff76c0771d3e7b1a19c138637e9d2b165a40ee9baedd4bde848b282c666c99002960d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cd5e96485fcbbd3c817f9ea3ea72be6707008fd2763dd5f0c1eca512507fb6515b1c857d563d0443c4e807dfcadd5b4f023100c423e6b144e7b18800b0db60d5fbd5514862646eb7f6c8fb674db2374f7031efe9c6ac6889d2852f07a609e2704b70750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307849ed7ec57e7cd804d130f06c20459a7f6e15db8bfd59ab3e89441ded0f063eddf37fd31d1661b1a7245a8d96582be702300b96aee51ffb9ce6ea2d7bbb75cc76fcb4f6b4d165b795a5814250fa818d96215a8f9ee360d7a8140448aedb8780dcc70302047c435bb500673065023100fb12c2942df017c3844943da25dacb7a40bac489d241323d93a7c6f671a9d630ac6ae916cfbc536859b59d12f89a347402307c0463f9eb0100a862c27fae5b8d9b0c5b9c817ac22e4abb877874ab2a7f55a525e6c9583a76a1cc4185445c10cc303d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023034fc35430d55b3d25eb6152c45b8cfdb514b93418cc75afac0eba69926fef9ac32251e22383792aadac26783a4a7b36102300c53b0dd860f602c5f704ba5776f3bac02581ab85796c6766038e90a91633def8ef560e52396a74f4ab688143e7a8f1f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008d8d2b24b0a60a46374c9289dfd04cf23b22835353967cbbfdd4ebee9165f4db0e23c8882593a209a80c5011e520c8090230614556aafc5cbad1680a79463d1d9879d092659d2ad824db302ba40bc7ea07a4cc717d14345fe94b0655e5561d6030f00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100904a57431d7c0a96fbd5216980a6d19d67cd54a7bf560cf86647d920189bf9d91af0ef342cd379911c7909c85d7f3760023100d0e06b61dbd369ff10924a430f39108c2014c717c444c865113fb4af1962b98b942493ee13b6363777bb0858ee873fc80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e656ab4ef52051a05e1c9d73562ee37598858c60f862823ebd6b9a921a557789eee6964be70b48d6c20199af05a584880230080b874cac422d6d1233c11f0a2deaf3f1dc1cf22c1e4256fcbbe1ce5a7f89554ba67e1f5ca295d2a1e875c21fd5a9ba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c9d6068ac24e758a8c0bbab190143ab079fdf0d06ddf94abde0e7256516e99d1d6152f8d22cc584150351333d362d35a0230012c9ec7d6e59cdb12bc969e67119c306f93da746579c7408cb0c0ffc7ff942dd4f405ec5ff56cb8c650ad6a883d86410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009e1d060850f30ad56cb14f06c8326a9e6e46c69a0a10fa6d3e5cb900c811c10187f6eb4854722fb01bf9c5740362ae46023064dda785301486c7ace92492460a45cb9f8cb81f6972285e68de12d88b183a55913c42a9add6d655d7c0fdc13907e9fa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d724cac66cff601d3166f36f5f52b752d369d4b413080d4f95a6370cf58bcf9c10a47f6d7957363ce588b3a4090af94302310090341b1f39a9bc14238895bcfe3ae108f422d41cf295598e1fc07484e26d4e171e4ad49292f03a279ff136f83e9169310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230482534a881d66d57beb72cface1e30e0fa98ec6e3878c7af4fa30c872e40b83066162089da122585e35fe290b3718756023100b5903fab560238c34c04fc9fede6651dee5d96c3978b0c9afb7b908783a2490a75080427a96a63004bb066e8010cf5b10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230075bf5adf9ca759cb69b84bd96d8f5e96c20e0da7cacb173a0aacca6390ef1e2ad4e496825cc1a6a94c959567bf19d50023100ec584bfcc0f9d13ee4c18eb5f135df566deb268319d4fcbc675395ebcc5adbd78cc374f15767a0de6d92085e5d9b26600302047c435bb500683066023100b820cb689f8e76f9ffd59e53486d2e2415d7915f094d15aedbeb77d4f44f09d9f62ff96b20e1495f267c825fec2f7dac023100b5be4811de4c883fda3c3bce7f5b6c9e537f4da840647c5f267f91dbb225e9023380f60c10c77d5d2fa6062b131850670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f421506fc02d1e45027770b81857c0f51e65252a0dad6188bb7768bdb6209a487c8e7f5f7e30e2f24623c1a6cc183682023100f268170097a9feadc5fff3095edb0df30740b2a3a5156db19442e94ce3c9aec27cfd64d21cf7cdc324c6e1dbd01ac11e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230795b976fb0776fd9d7b68031bd1ec5a44fe604c113fc8ee220252f29e0c5ac3beb67095bd2fcc49be50e3ba2157982560230010ee3762c34b6a6b5977295a85076313bffd9fcd1a9b424d0a040d4f46c3928683faf08fdc6515fe2c94e547e3cd5880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023064da5e6f56d2bd37f180b4658d527d6944d5cf51cde269deb8fcea1dc75312c8cf20bd7e1ad240ef0aa44a8f4a30502f023100c844dce79a9b3b5905f58049f7da21a95167c20bbc215e3f7a7df21ac5398e042ddef2ff3036aeb111f391b044f981190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f11d0a9e87354fc034554c075b7df2ea323856feb11a9bc0a07921fd0bb5a4e9d65db0bb3cac194128cb007683377fd20230619c5114ad23901938f7b4a4d97ed5f3cb31ba680a7180e2f0dffafae846604970234e078c5aa10b422c8aac753785740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dc2eea7dcc93d3e5fe505f169138fa39057e796031c4c378a696a89f4f2760194b00f225939bb4c55174d126901e030b023100b70baa6269a6223389d365aa635edff474cb8014c12a1437aca003d0ae4d2250c643b0c9c2366b1eabe9705c71f3b9fd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303507cac6a49f001aab66aaa8d9dc3b190d7076936bc8f78f9966c26446bd2ffab1edadd1ff008bde82c3ac7efa9a5b460231009639786e1193ac252ec94bdfd446e37d0792ac9d93bac445d4a798e6b4a8960ce88bbbebef226d00c3561388b48aa8910302047c435bb50067306502300797f3d6b5ba8effbccbf151b1dfd0610d288f03f9098dfe66e6c0596c6fd29cb3533876ca96675eb3a4a138c9e4d34502310096c13feb5dc5f7d4f57460adef595bacb7b8f46a3ac24a77e1256a596b4622cd77b8251b9b34b54e565212f160e2b5380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100900fc2ab9d4429298a5ed5791d370daef67ea9e6078335e97d35e90d3df1c6349fd96c55f0bc0fbe35aa9bf20fd652fe0230736017078331e72a6e48582aef3cc2cb7eb62005e87ff7d8b1fefa01a35f55a724b8a9bf9d0c43b8031de0ae28c88bf70302047c435bb50067306502300846b68f5d00718e23d365daf6ddfe73ed19208183249f50b566130b8488ae05f9c89d073f3b07f28fe79a62f3bb8772023100f803ee51b4c344523a8fccc80f9a150c17f8082c4e9fdda5a684204f3f875dca4c2d7c5866de6a5276b0332ab58e88b80302047c435bb500673065023100dee53df8a2bc112d2baaf731d63860e8ba08ba3d57ae6c9fe53799efe4142e41ea7e3e7e4b50f12653f070dc37984b3b0230774ad6cb72a870a972901100a37a6273daa52d92d3194ac2956ee867b804eaca436b03947ab8a3fcf183da11796c79620302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b23ea96d575289746c3260a577b456c485d2e4476b36d6de8f5064a9897cefba2e6d5f3fdc6e3dca5caf885a3e312193023100f1bb0e7b9d37fb7c187136c5dbbe7cc052e6e9ed0d304cccf05228ced9ca09221395b909acb07e62f13c655c9f7ead970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230335b90990c1a1b6ceeccbf0435ebdcc9b1ed3c7ab77ecd75557c867b05cdcb759615cdede669214ad4cac2d694b2bbce02305ad6f3a3c2679c98068eb74290f455075e928cc2d1a176d4a3044000348f442590bccee96a9bc001e9c6286daacd7ddf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307682fd75c20cf6b3f5cc7c859d06f024161f940fd6c8011d2bc477c87f48f106a70f54ff31d5ce26c895fd216136ad3402307f7bc0ec292ee453ed8cb7e9c0c36a9cbeb56b47170f2fb6e18f88368a79e93af30cfcf27c901d927d3932879e734d730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008f600eaf18e492c87242cd5280c1a2436a8c3c34471662a6ecf4c8f799cf0ef1f42f6fb4d187b8550c01d146f77fda95023100fe578784a17bb2e3e5c161b4955c66d85626a5606eaa4f99fd89528c20979d2bf4ad6990e21ebf4aab328d719e49e2a00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cb062d812e0148dffd2281d043c4e565dc4043d3962eb431971263c3fd326a866abe1760cb1fd86e82877d6ccd62b68b02304ed3f34ba6254a4dba5160d8d43961457be414f95a209014c420a357ae5f8a524f5c784aa2d70fd05260ce9de92d137a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304dbf79047ecb6e6a322b541a69848b3cafad513166d6fc886627a83086ad95ae29134496fa18606eaf5faf3c93543bd80230452b73aa547e26cc3787c64ef7055a6e88a21d653421fb143e42e4dad18547200d0400097baf5af7ce4debc6de8fac580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100869d97fc757052bd2aa86bbdc4c7921721092cb852f6a7626006ce74085539347ada3446d5cacbc44aa3c576603b386f023100865d688e1031dde57d31ecc52962075a735478e31f167a14ab5df6bd6f29a1843f2df26dda6fc31718c6385933ca4be80302047c435bb500683066023100ef87dd296c38a5715f7ca888991d752cf830b8dbd34adeaae64550595eb1fa510b9400f3046b3d37200f64ee3f072c5b023100cb25ad0bf5fb226543168eac09f85ffe094b3c8956b8499c44befbba88a7c8dc515f802683a179899bde95c7cefa17d40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023006a60176b33bcc90bb18c9319a8d0126b8f41c386a143c157266c480d97e5eafb1c38d863271c0089ff7018b590eabbe023100a901e98bc834e6a66df9d58e1eebd9c946ac9cd07f3458fc051761f41cd359011cb2f626ffbb83e75e97722a51ac877e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305756c97ebfcad1f003e670cbb93422cb436882421a310cc5f8f2cd2db98b8712e610a4556e6210931613dcccb8e19dff023100afe268815841979c984e879537ae6b3e7d87a233c8822065eec9b09d753052af8f264f55ecb31b1de1f6f76e4f4440910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023063150c9dcc54874b0a72a72fcf29d2f895726831e5f466aae19c1fdaacc0b5a84dc072446461ee1b160fb93273fbbf63023100d3b8875ae55c13ae8cb59dac01d5c549a02f3589be1d6b15a6ad73bf3f0cbdc5b76c079df1f506377db1f396df7a179f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302ccf242bd69ce281d4f3e3cc99653c9708e3e2a63c59d547ebf7f7df9c9c97f08289907afc5a7da3dc65bfc7893014a3023100b45977ed1fe493d8dad917e802027079aa72c9a03c73dbb559db83e2344339e9847380e6599efbc271785dba8c3eb7cd0302047c435bb500673065023100f5b35b39c7f1cebdee28a838a90cf7164b57c18f6670fb935750b1f8d728d6c25e38ce633539664e4a08a2550d65083d02305d7b67736a1324f57f3ba3ce30bd33fc462a80e12d9688857731cd823a6cfdf1037fa9952339b0f96eeb5ff95b965f510302047c435bb5006830660231008a55fef508b7acfc46209eaa28ef6b160ac7b9766b31cd8f4e0e1c5e6cb47ccc271c8833164e8ea630638c6dc2bb4c0a023100cb0b735b471a8c17b6283e407e1c0440b5e863d78c3bc63461fdbfe52af02f3027bc10747d97cab8c2b34bd7359a9fc50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100eb98ad2be156ca71646fc26737afabe61774b15ef7cd73c16ccad81a62026d4a0aa312340399d73f673b7a9cf0b1e17b023059f456e8ab4262be5d51f1451beef7ab2d4d92763873eb37f7a5b88d08670147c460e5dc93ba0e530f42e2dc61ee9e050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300d8280b10879c8b5b6fb4acd858ee398b814ece16a43bfc814981751a5a6cd4fdf81c8e4830085900c4180f97ffa4a7402300e350e1f087fca43d907062bce226849028981bbfd24feffeb27d25dbc700c7363362d02ca7273ff11bb7f6821e0e1400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305b5e9268e3aa080b0a5c3a80916d7eca31f435e5c44d9f554039c6f8cec0761584b9b22d5589a2d0882ad8ccb9460a890230116bb438e5a44b8143d98b046a94bfa207e76f3bcdc2f5d79a86a03aa6a2007deefba2bf9916ea50f36170ab3dd5d1a30302047c435bb500673065023019f454b5a32bea2ffed6bd78296cdb5f6de2aac9fc46e1999ce38d1689cd8f0872ebe2f8b406e76e11b13efceacb7bd4023100c5414ec028c47be87c9b08f52d80c49b8d5b84fcf01ec508a4812d43e1a6adccdc4dcfe73bf9a356146d2c04c8a141a30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305dc6a5654daaf58896709f1d259e350d19432e11398c0b2a4a0ee0afbc68f7e96afdbe265033c52a69e9cc3d4c56ae1b023059c26218cdd6a0b8458061a0312614901feb0a9e55990ef7eac9362bc6ba70002f29ff0adce20cf6dd89cb561c44d2ae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301f459f3e09b2f7f29886416032d9a88c78970c1b85e37527f84aca2551d4cde06329ffaab4155b9e2f2cd37ed166953f023100fab467b56e81ece2c04784ca0b109508bba1d6d18242c79688927a0433103d9acadaca13f3f4a385fec00f7d6027cb140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f8d029e715d31e733e77227d0fea87312f84829da783d4a8bf96af358937b65f94eaa8e16b26dc102b238a98bd32ffc102310084e9d83f840502dc4f03784f3c571bee8c73a2f50c7a8882f98eb2dfd33d9472fd9fc1c0442b443acfaba653daab00cb0302047c435bb50066306402302ebfe12269748a540531a44704a04b8b4248375f720435d536da07f0547805904f70bcbc4ff17087bcdb19e776a98a14023000f81fd8e75296918a2848312bce0c8072dd0889089b0fe3cf103efacc512ee43702ba94f21b9a8ba13a40c44b5b73860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305d347996276b18927d36c5d7e28596f66d7520ba31df709422235ce699eed9c35dd3b9c615223d08a158a35045055a6802301571ad4de0b4d4eced7af7061c2cd1d47df540b0aee67e0fa914786da09fa801915ef9072961882662a23e3ae62c60ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304c32eb88d3711a67e6269fb6969a6508b868bb4533a0f00571db6b36df69aa77408dcb88a43faee4d4125736204c1e74023027463196f94a19b6afac876ded9a9acefd7de78d274067860fd4174e081fcfa23d3d16fa8f17083e56d3ff62bcc2c4260302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023048dc8435e23391f6e37b8db7ae8149462ac079233f2fdb22e0e8179e1e8d6599f4f89d21e6454676d82b8fe06a9db2850230093b769db6cb512c7ec1f8ee5c0550760baa1688f40b8a620a20726a4584877fd8b9694acb9726f08b3fb1678a21dbd10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301d4e6b61f6e2a98edbcb6ecf8a1b71b571e56c6c97225e201011069418625f047138db4b71d0f8048d1bbedf0d9b6fa602300deabbf5d28ad6f7e784cb870c695a1195fe47ad661765c845af521214575e45fa55165aba0e7539e47151e07b6c28830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023035397c78c07e825954dad46c560e29029f95aa9e9df60bb2f5ed328c10f539bc9c1b9b2191fc7ef53f970999a16c6ae8023100f5d3fede480f41f48c25d762bfeafd370f97f847b8448adb2baef339a1584689ffbb2420fc46705e0e72b717a86d20ce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230058990cdb23d3bfc3544ae675017875d25e0288dce22ca9ae3bcd71e0e9890372d9b74ba2048576b58b6bd2ffcf1bbf702306e2cba3f942442a8cf85789d8cd3f2cf541bc4b1eca3c392003f0ca64bf66709e3f7f8e9c754bc6f82497fdc814bd0310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230428d928c8ea53456a552c44969e76c37e80b86339928d455c4c3f0a918def0a6d0fae8f2c947a2ac67bdfbc63e1a089a023100ecb6ec7050658a13cf2a245d98c9f9d9795b95b6444d7d50b6c2261908eb033cdd69bb78ec84ff3abbed85a94ba95f550302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ce2ef48b007f7c30633dbbb69eecccd3173f9b2d0a30a221d0249c3ca4ab3cc59378fa597e82d80ccdde938f75930f73023100a08f30b7d6dd9c44dcf5f9e77b5f5eeb1ce4a09dcb15b2dde6081b71b4c35b0f3a1f9fd87e435cbe8d12d57ef72d02180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300c94d39ec41a7f939127c942e7cd494e071e1e7ea5fe2e1c7b140eccb4f0f67a2b436477cfae46ae2657ccbf78f5650a023061cb062b712b3a84e8fe3474b417f6c9fe57b6d8280229430412926517ee9612d9b6dba32d84fe2d14c405c216cb388a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100959df04efcb452e94d352db9f42473ecb699cefd8100afb392129bf0bcb0e60b80b532ab82099d5f72c78c5856cb7eeb023001fc3ef804e9a4001863130fa600490f3a13235384f743c74f2da6dfd522d7f102787cdf86ab54ff4a9bc9649ab747dd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008221bfa7ea28d43578d749eabbd14b90ee92a1af3d06dd21c844b1171bb9de34094ea3d2335a00bca867c2c4fba3e566023100f705d84908a7e4bcdd790d937863554476f7fba09ac6237ae5f4c620509f8d28fbb180a6cb8a153750b5095a480db23e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b31553476f158582346b30d3913e4bb7aeb1036075a69d21ccc67961885e2ce020c45b579f11a2e7b0e03045a0819085023100e3071da079d5752cbf6d5fdd018af0e3623e143f8088286b33c4c74c601300c6b280009cdcc630b359a15dd70037236c0302047c435bb500673065023100f19ad7136b1f1cf45f6466337c5d6cf3d95d51d2f72406d7570f9b27ebe2b67a7cb7d3fa85ec0470b343abda42f8561b0230333ee804cfc1ccaca10a186b7e9ddba54eedae422dffce7a6e10ad95f666ad1742b8f2a6151e8190bb11c979fb2b6c220302047c435bb50066306402306e4a9f698c842116d685a37465c33a71d93773b20609eea11271c1988d1e3f038cb2457a538ca06440881a86e22e4c7e023010409c2e44dc638f62900c66a75aead5b19259d93c2772e7a8eaf7f43ecf360319a04c375335da277a61cc652c7371dc0302047c435bb5006630640230588d0f7f5a3cf621cf814a744586d542e28fb9abb101ea75890abad25c50d497c334c80fc16bb13247b062f313814d8b0230389e00849506b818b5b7a4b52bfc1bdd8f2587d0fe0bfdb2d1398dc507090140b354a8a88a72d2e39952338834b998d20302047c435bb5006630640230201d87ed0d5e41949b7e31002a252b9c4f50ab0fd9e151f067d08135775e35c9ea983435e5c19322600b4db28fce680b023073afdfa45724cbb2c81d6050b30bf02e685196ca766c0772abc83f9cfbc8b426e19da181267f41d091354cbbd5902d550302047c435bb500683066023100bebef9d0d9e8db31733086757282a3abf822e027da6c31d834a3914217495739c1149de2c9416aa53873f8391f08733e023100d8c68c469d15f062186d26aef5400bd4845fd4a23a8c0fbe0a4438c449e2f141dd910fd102f3b2df0b64f1253f7161080302047c435bb500673065023100d5eabd4fea9f6d68a4ac65a900f149a0855078fb0ffd30d69969024ab60b6a637ed2990ac5f5f2eca375100f7d211a520230505c9ce912e0243c1abac90cc2cd9aeb1116cb1ca77cc204ff1d7c2ef78332cbb0ddf4e97fba83b00ffd0348869668c70302047c435bb500673065023025b303c9db19511aad354abd71b64e7344f7fda040c3b30092a335d458e832983518edd3b72f6b170bc953e8256aa2c8023100a0e238077b002d28384440ef934ebcaee5b75b78abdc601313a1b544dcf8707c10517b6aa7886d8f09dfe8dec1b2d8750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dd2c065455d732741206466ab97fe189788c585f1666d6f1447fbf965f65423644bc7f5f67bc5c86df3cb119fde393dc023100e8a5248d8be115bf72fb7888f1c18ab167f14cf71fd071f529298d4983870c77d1ba8eb8c85822066badd81b8649c3b50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008e65c35b7919a67470683df13762adfb395d50e2131702ac40675f8b7c3624b306dd1bb67c03e8f866660f13ee9e612e023100f99604a5a46c0864c6ca4d282fa1f5bb352a548b82200a091035b59f0b325c3450bec7d1314237baf9934ce03928465c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100824e2a312b7cb83324df8e838dface1de02f4b80bdac05973e518f9bd201b6ed9f77a80f8b219aefa3e403188804b9eb023100d4e875cfc866fd236a7cf9480f5c596259007bd7b33b587b8066e8394f1350b24080d45f5fe9b180541dbab9def656760302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009d344eca387da9d76dda059ca23d06a0019b84d8c9acbf70fe4003ff3e76a573ec92d27ffa6294599b9648f4e4a276fe023069648a4e84fda8b4877f3ca1a4bddbd6ea6cbc8575b1b54a80602338080554b89454d9d7d8a2e44d13ed80381c3e2ac20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301652880746fbb67c1268747b83db91922b70e4035a3b82aa667355b36749d25589bf2e2701651fd39c9e1d4af910898602303a65f602fe6a8ff2f4a4d8e8e30dcb6c516be7836d9c5ef4406b1556815169c6c9a74e202fd4b834ad0e2028fd3e2e000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305043a96cb469d6bccf1d2adf813c8e706bdf70601ddb6ff6640029bb4c74334655b4ecc504d7470835134624a7893f4c02304d083d409f3716b9fbf34f073725e216329fa26a934660a587223d7dc6646b6b5327cb8ca7be175ee4277201ca248bdb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023010be6b5e7e15de598a97e7f7d1183d05e7e6decb23e28b2db3064c50714e0f385eecd98e4a7dabf65c724e31a969f5bf023063d9c143942b5037ea24c9ddad6704490fa2698f481eb03dfb1a3ef1530cb6235420a69075941d3200b1736ddec949bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230662ce35db2d14c8f3ecf1114e7479bbdb0320d51f5dab16711f6d9c97ef941e11cbbbeb8a284903844d95d2a54eafe810230798102bdd4b0a1bd418523ea895afda7fcf47c1769e8fa342464a58883f5f99c99c3c58bb29040712acba3b9b31983fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230411795c419c36b063a7fb6a88166e2e0e15dab8692482f5a4cccc194cb1f31b5d46ea520b41d2c69e0318dae9f56a563023100fe6d29c83f395ee0a86b021c618093f4a4dec262bc44df5227734dc7b9d692343a93cba1804175a467903d7eb23b9e000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023012a11653681c467257562bff89aade947b404443acf7e1a0bf8f02c8dcccb236cfc810739848b533eaba43cd494df4d902307cfe442220d1492bfce326ab94c36b11417a54e5876c6ebf0796701506172727e272b777a94fe9d2bc3379f2bc40a0ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023003faec7854894dd0f908410828294c5a10a90858ca97672812436800eec55bfd0d215a1b3be9611184c52210fc70be7d02300c76d4967b8d2dbff79a7926f33d351dd5556464224ce0db595aa5d73553adfb5919f844bf4a24165a1e1076c4ae36770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b14bbb53141fff78419469aa05a1cbd38101313e363d524dc8a92ab355fb913ca2342fec9962d3b257fde76978eaea1602304225e99b27d290b2ea85ae683334f6f7fd3d1e17d2b21a8da165803c38a1515f94d5dd8cf564d1926c75ac5a82fddf200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305408892e9ab24978d5a12e48cef41bc617451f3264b49064f7404c30c0635aa59b296ac1773635fed5e5ae68405f4fb6023050693aa1ac4c7cdd47d7397bd13661b0a2a4a5299d0a9523214a580701e978996afa49ce7cc309432d3760a67bcbc2da0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f7a90c422ec9993f32c38321ce81e9ad2148fdf9ddb48b30e2274b4ce58ca0ca96f0e7facf09d20a836c3da88862e92d023100acd9071ec2498ad12bdc6fa939b3165cb2b2bbed73d012ee6539751a4e2d11c3224a53e207c7fadec737e9a7056f2f530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301a8a9b851f2de320e7e7b74e025521a0254a38d0e57b63e8233460847afb8cb0f92b2e6c4d43dd3e1816eee5f02e0245023100d2e955f9281907dbcc43c38c9eb641e2b450bc68f914b0cd5ce72f57b4dbbfd5767e831d40e9414c6af144cd92c206730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023005b6b12a01bfaadf0fa774e0f8f2d472efd4b0b6ff440c6bf5f63d98619e75347bf4b413b4ed08306871b990e3ed5acf023036dfae6590443a5f1e7627f141e3fba798eadfd1172f56379051ef2bbf80819777f0c55e23f4dc1cc45a31f48197e5c40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023072cbc3738a4bf19b45d5f39120b84d730c208cc15b7add56b319d2b60b32927debedd2394e907f0052fac92fb01ccb5a02300ce75d6e11583845169dbc2f6e79e0cabc2cb07e6c7fd657450719bd2c7f404a2ba906fac9d58904f5117dabe0dfaa300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fdc260a729494d0bdadb7bd005018cfcea17d2ada68ae866b16773f9ba7124704ed8f495865b82ef77e5d8bba06212510231008effa216f2d618865207b7d6d68c57f8b1b37b5c36710802ea028cf5634beff63db077acc6a56d6f5e3751397fc866830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023049f54df4481810683be94733b3e4fb97aca5648722b9e8f46d3d8e0ccd208afd05b2f9948349da358e77ab97c8588630023100b41d2678b9e4fe7f111904b80686f2acd440c6936a84b7ec41bac1dca17224c34bfb2126f0a7f32d753bff5b0764f4610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023014b5764646f36406a11596be62b8d07375a2a30bf98f7c6fe5428b989d0180d342fd43dd97fdb70303283a9de80528f8023100a8023095de81aebc1029b5f5cc0f17eda609f2b3cc5f93f8bf060a69bf5a9140c55e5082df6ee02551c0305699121f370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023000dcd091b73af447233266a87d73dfdfb1a91f4a22240ebbd125227b7324ed5ec21d5c37ae7de89b550e53a925c352a6023029037cd006a3a74da853d5338f6cb0d0ea3e7356c66ca90fb076a7fc80733a4db8fafc63974534474de028a30e9a2ffa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b526c005bf5aef9f415273b5940d076326ab481a61be71d81fbf822fe802c061e7eda2b50f194ae372e31b8b39eb8f820230453fd6f161bf898bce08a64d4ec35272d4f16ede535f6409da3a27b9010cb790e20b5fada348a9ce9dfc5a06b1d3aef00302047c435bb500673065023100a253c1787bbb9de7f737a870abc8aa1f9beac18327e47c25fecffc1f886c4a2816e2f016ecf2b17257896e59e396f6ea02305a47d49bc06efbb2c9d506c50030ff61fb8b44e0b02b387985a739a5cd137dfb8522262d28778bdc0ffde0481ad7af950302047c435bb5006730650231009d6e5b2dd6a8d5e5e16502232cd2a9e9c02aa563ac1b57508ae27ac2f2394da5845a5fd5176db84ca302733d654ab45302306d07cfa9635132fade39c0246c3a5bb38c6c44dc3f9e1a21fd9705f24cc4d3dbf7dcb8798197ad3732d8c2375cb761050302047c435bb50066306402305f71224e1d3fd3867f590e2aef59c8315d76d40ff4f1d52ebaacd1ca68c79dc5f3017415b5f6ac8481d8d9ffdfd0376502300844f8875682f521350f2aede48a59fbac730023597a6258edb895b599e736073ca01d31952907da62c18dd3e4ffe8020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303ccf2864a9ff1a2bedbbbb28fc6964e8d379644a07a45d05e79896b5612838e508fdd9ceb4e36404098638857e20bc95023100e08c12aad05589e13000298412508a166cc003eb2c7237ef5bd023d9716b34ce1c2989ab67bd5de00d477291e70a05460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eadef69bffbabd258d89fdd3baf72c48ec1760a1a515be200882d0b28a9e802e3ac6dfcba62ce6a240595fe256801bfa023100810cbab987ab8494dec06288a5ead240be726455562a8eb445306e867f0e1831b47ceeb591b702411d39b0d14cbedc8f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310091b254496a275768a17d016a7033aba6461a2d29d107977fcb5e568ba84abc9760503a92551c0c88c0994b0570a4f95b02301d3455ffcf6f8700444d238253739186f1ff1fc4f410dafd37ce3cc915323e095b950a32f3f60752d43178717be3d5f30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008f2b691d6a8f73c06b0c82092401835181c6adcfa89377fb9701be73047a14bd2a06e0796c813778246a98d9451f82fa023100a32575595e590231d04c210748b4eb30882232570d22334f4c075af5504140138ce9c3653770b1efe9111b218e09f5020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e527fed3574bf7b2ce696986ddd4428756fcd7e894df3a9204005e06fd277748852336244ae7c595b3dc047c62207ccc023100a9b7a117fb5f67b7b9d27c95b3c2faf35862002ac84fd24d8759fc3ae055e4ee3a5eb566961c30d0caa672f7d6c1d3760302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b62ccc46e9f440aa74dce94c0b83671b17fc4b7bd740e08a61d9d34f7b89a1e82627ef2d2a2c94e6405b86257e42ceb2023100e13e74b2cb5d2aa748044df1187ff691d7a927ee983a3c84d7e36960bfeae2ad3044fb5fea7dc4f9a8f2a92fde821ff40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a511c80781e74ca050850e00bc9408e01aeee5b4479c608d0969c7d545bd2be79829725074bac4c3bd420266ae5bf8da023100f52852be26ea1bd43883d0445e63e4cd7d47282ea4d041420ec8aa17d59385e5e98ea597435865df75d3eec5b05357510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230227f558aa44d05a2e554a9a3a3364a2b71c5dac2b894e979e4ff566ac7a03092ce560496ff4d9b41f372e5f75623dc34023100904435ed6c98cb38f8f8733bc5e1097b60d5284b0ccc5657bc5d61bf8e51910fa15f7a3df30aeb9fefb2f87c71588a290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a58d37d90dec5f85c880320a7fb958317b6a2a4f49d430103ccf7a70b40f0537dad4d999b94161f418fc8d993f93e32d023100e00440d60a479e8267a5b5e5af558d87c0f9d1a8f51e7bae0c7070a8e225b085e197823740205928a7967719a99b81570302047c435bb500683066023100e8ba48b2fb65557b809d7f18cc5ec3bd899892d148289ad800c91673ec8c39bac340b324d12440bff16c0223c4c727490231009e990f0999866c9b809321537518992529e881a1ee080dfc7535e0167d50c01c40745e4e5f6370d6c5d27caacba7e23e0302047c435bb500663064023012ebcf6d697aade5bf0ec187b12420bca0e147b054097fcbd1566e336fffe79d08dcb39ffc936f8feafe98c00b338922023041395f47287efe1f7d40f2646178691b1432eac37051f999d37dd4c2e642f99eb5c586ec354d16b9d25230f905f38a870302047c435bb500683066023100f39070fd47cdb106b525031c47bebbd4eafbbae8ee3a432f08bc406eafe172bf0651ebd9c3d7e6a268dacebb32008be802310098cee0eb0fb60f547b7d28031bca67baec25f4fc151fc542e2d25e264a8560173a8ba23a4ec9cea5f35d36f264b694fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023026a49547160a2308051cbe09d932a795d23b1806e7c2ada463e1955b3e1d455f1525dbd9ce859614f0febeec136a47d7023100a14ced5194da8c8eb47f7b5b3704dd82a73a2f0b7ff814d120a4f054f02e89ec51a961d04eb9a525c8f14321e0075d200302047c435bb500673065023100ad43501d9c7c51c2b6daab52dd2b70ad419dd3784deffdb41a8898f2085194daa63eb05ee5fda357828fff01cbd71ec302306bc44ed1a35da2b8cb057477f7a5d7359467ddcd819bff3b1c4e10ee2602671c9b461621be0cfc6a42704409b825babb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310094580fd7a7dcc248ae08090c2c0baf80f26cea2a2eff1bbd35ef1b9766e6f9e77d2bcf9d5df92773426e573c654ab60d02306f5239b455f3e7c5967f4b8a9b9f8639c4fa7d5506fc2596bbd6992f439eef08163ac11881376da96571965d32dc41b40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009ce6e7c181d46846a9f144596921da1dfd313e663079081a21aaf1ba533a52e01fe820272955e36bf82bbb2d553fa044023100d6ce8f2dcb87071d54d0924de06e96fc1240aef1dcde83ff0e68636c0543edb19d2b025331df6f38b033adeb8dd935850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d9bef442493d17792de2908d4d728e410a92506dffc2374f87ca17cde4fc54703680581bc23a59b6f9826016be1d6bc802301313606b18cb270bab56f06a9469530ed60c7c32e138c7d65f4783c8e2c76ca578ba7b093a108391d117dc79d6f865210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304fa120633db4725c85049daea56695d3c29c85a76bba153eac1f581de2005680344265cc99e4d9749eda7400168ee642023100df14efa05d6f7e4f6c71f7e896b9e049573d4382ad75da50b4631506eec55404660c32f1e5d6557c0793291d8011a3500302047c435bb500673065023100d1b12c17493e39311e61c482862ed228095eafef9dc9f49774a5b9b9b9dfc4cfde361a2aefa6a7eb6331fa7abf9bfc6d0230460576c228d0657a5c26c9f92488077c5e4910f7a1f0d7437041918cbe6041f2290b61ac5c1815d31e6144f2b3e5fc2c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230099613eaaaa3948322c34f236e17dc316bd1deab4e7967c60f023569609639ca7234ecdca8d918dc04fa1613ea55be80023100ad53c75b789168fadc84a41e624046d6380806a35592d8982acf0267fb13fa949b1be8109d6e696aa2c413cfc91d8f7e0302047c435bb50066306402300a68626dab789d0b6288ab2c3e95a23b46556625f31766dc29cc3723d4d3194c82c42f09bcd6b34dd59e8c9ddf14755b0230050c0979d7c6d981a0f3c1d8d42392d0727ddb95dbdc9631b0d7a1400211833a4ce12952dad7ffb7ee1d5894401182e50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50065306302301185629139f521c989b0318519e87a80e7680e9e2b6944880f1464083159084cf4a41f7ceb04124be4d4325c9dcc7dcc022f19546a5445e4c9827378907b160662ced06479cee5c742ed1872581fe2b4ad333ae060d79e0ed7de5a6cb37144e92d0302047c435bb500683066023100a94ccd209b7962fd3f51feb093ad1df4b2641e8c9fc99e61ac8bcd950b4367591f3874ace26f3642869c4c285c072188023100b71a8055f1ed2b0aa4d42e0e125707514e1bcd560e7dca5b72e80eaa155f1553b9deaf07a66d11457eba0af4d8ac8cc60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009e6b29331be11e374bbdafd8aa187dd3af82d88d620a2b26dae85b5ed4e0dd03e6494ed71f350392d2586e6b1733eea9023024d4a2782e393e8b68d0fa9c49959906cfc17d7d56977d2f1674ce412a3351cbdcf321d8c0ad6d8976db000b8817fd9e0302047c435bb5006830660231008f3291cdbb680af3defcd5511b5d88ef6686aec5f2585e53e83bdeb535384209ddaca939a213c6af0e025ef27b845a68023100cc8b7515b546cf9a2889530f4d50ab16c44cd6ba9d6dbbe5d65c79c4b18852197b179b43fb953048c47b1572e566e2b90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230108b02d67c8db2668a8de456bb9524cebbb8759dcb13295645a5495b2bcafa8ed2752d613d5e35df014c4e04c9b2e9f2023100b5cf23a9b67bc8e05e6481c59e2f209b1948873c7f5e34bab9a1932dec882c009e46dc0af201461951b2b52fbbde90c30302047c435bb500673065023100c4cb685ccf8695f1534928f923a0328e478290e1352e20ace6115cc7401cac9f10973f0c98b5339222850e666ffc0b6e02302a7a6208ceef0fa898d6532f0706a70b71d61c2e4dbef60a9de74609a6b702186ab9f2d70a464c9eed672f245089c9960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e6fa392d47ca40c64697cb52c6a48f6a667e638e88aec5735d3eaa15d071abf59e438a31537eecd02b0bbe1c11b7a0ce023056578ea72cf8e6f4c7fa954b4342acb426c0084217cb8cf5a8d5cf1dd6e3a30a24cd63d0071b6f35b5b42ac7226931bb0302047c435bb50066306402307df558d455a701c647281f70ab9a8ae7db8dc843373ea35bea260d114ccd6c41a6ea0add8e224b2b1401fdcbb0ac84e002305da61b8cae852202f17bdf792c2b6c01b402b8dc22e2a155ff12ed03c415a21681d6365d31c3587427ba144c0d5692c00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ff89addedf0ed2ce9cf4abfc2a8f78dcae64ed486a89de60d69e8d725c55892da18c0940acbab58083a7004a8473ecc20230198983a6292614edf1ee54073261a9138aea27fbe1ea146914bb7849d0fea0f236219590ec655aaaf6beb7f9f797932e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230711b4732b04274d4f81ba6bf2bdd053deb120e5be2dc97ae5dd4cfced977dfcb803b5bbcd085f28c13442f684cb6b7be023029e52cd802acbc5f07eb1f9df48e07332b6b3b9352821fcc0a63c92f916dc489903220ec7514a90d7b8036345bf6c88b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ddc0719b902287d0da1028969bf532398450cc360d879adb92c385c26cf8c00a3a758313796d0a94e97271a80edd92760230794050353414229dbf920d81ff5eb8307b2b832af90584d43b462c683bd6bd4f2c7af7b44ce1971ee7fea4bd33a8ba400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023021a94e4d4d8168fdf9eb6fbe9353b7260e9dae8eb36b964cf214ba6f39f030b9fedec75e0260390e55ea61db2a803afa023063f947fb120be3cea34102b644bcd3b84beac434977d16631e0158f1ba37d8fa14dc81ee3c714a981225597788af44cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a15c7da8ccaaaa11986371a7bfe373944144aa5809360ae296bbfba411bb2a57ef8e56d6d159eb4f32d4be7d878ee7c802301a7b5c741f6ccb4323f81822088ef389bf1145c824b4328fa606b15dfacf836ae63233fa3aee7822ab732805715bb37c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023011480ab436f0089bfe785b34e5b7c345a9e65c6ab28c9c9e89bf62338f20448b1e8e680087eca0942195d39a5180fdcd0230235c23baa49b6fd1f602bc5a2adbddd38bdc6274a698bd575549d8960d64371bf6cf85878f3091df0f24283254251d230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ce97bd973f9c7c8c62b4d49a0fb5709f5b2cf4dd222fbb3812a67a29377a1cbb23426374fecb01fc0b07548dfdde328d023009462fa931d2c6b602bdb2d3a11c628542769b3dcdef5c0ce56e17639b2485b60ebaf7b67b3bf8b998d17d2d0e48273e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b53a3a40fbb476881a92807c79c4a53eaf316eb727c6c78e2c86447d409d9dbd240c36c58f932abc7035f7cfe5d096ec0230217fb21aab935fb6bbd8da9e44322281a51a3cf7015ffde844108c07c2ff2e5082525feb67ef29bda4f74d7474534c110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bdb31258fcdf28d27463b9cb23f1d5c696dfccaab15cfad09e3b1755845be8fbbbc2cdadecf2b772bc52fbfa4e80ba8b023100f5befe9f1b621a26719a56ba138531fbf564968bdf72b259bd29313e34f522dcb8cd9fe3e93449cc7a2532343a13395c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301fee6fb0389ea01dafd68df96a5d2d56cc79c0fc9e0421cb39dfe3d24f7b376b9628107608b49500c01dfb5d3f1cb0c7023100c302197389016de64f94e5ea194146cf929f0a8a5da396fc2875bae4613ab7e2f0ca1dacbba71a0fe38d8acd29069c770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b5648395e2dd6a0d3dd6ff7fae1632de31186ca3a9ba3e456d6e5f80f179ec6efa3c8caa75c2a0eac790cd0a5419228e02306283ea58e5f3e3ec088d6e86a45e624b4112af67890e08c166c42e908eb73496875e48e1a7a70ffc5b79fcc63c96f39a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bde2bdac20fe73d936fb0d441f0e1b839202a74cbdec86973f89358b391f6a89e7816a16e5bb59e025630648e168c11002302b20a06923c31be90d901e4cd32e82145b6d2999d458d6582adec61c303ab3346d50a2cb5115ccdab256e5e21a218f140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100abdc3e25bd2eb0a07b5eb83cad172e092f8df89a73c3066faa26fb04f9b6150ac8f8892d5d13fca6e4a7ae4d5a7a7d18023039e59e3b55a1312fa64a185cbcbee79e8ff317ae5fe9f3de1b235a71dc67b0a51b9d39ffbc9762582caf2c8b1c9541180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023027ce7c014e392c3f2dbce66cc7240429d62e0cd5afc8c8ba57e28fa479d47f1da66bbdb826121d66dfd0c07d6f677419023100f96eb11836d424e5c5c1cf8f320bd8522d2a6c17f9c3df3af92cf7052535e46426514fc572f5defd61d4da3d3b76de6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230133f90fd9038e00fcb05f106827f42aa7956c4cce58de41e37cdd9d9779eb64ad2b2f146b4530f44d82c3c53f6077abc0230729f57d11e85fc54352b2de7cf044f7e775455eecb994c71e4c66bc9cf75a2dfc58a7bab201600f6bd33e07371bbfafb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d4008a559f5f22607828ae66074ed264c6aeb2526986f85135f5823b7ae296aa9935ac31dff048cb9e7e153e6d5badbc023100a753461dd826c7be29e5a5d2f6986e872aa400407e4c6b9ade0cf18b93e60c56e6af043f007d9ed7ce3ff780049c6daa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f00f421c3d522756a1065bf65e32f1697330ee4463b3e98e6f6ba61f7b2d119f16d99fba2045d4ba51d4f5b5d8a628c80231009760c72c37593b7e64b2e47f49a25a2cb0fe2b9556314b51e4e09a8e82c8b9936e955da828920c6bbc038d566ce98c6a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304207a004b9d567ff821fe0db649e7b5f7814730f56d66c920c7bb424f117ff763df0a2e449135bb2d104bc3e1c79776a0230568feafd254e1a68e71e8ff0929ae85404e8c92f037a295df2d6f03338738001dfda868d8448dc1b64e52c926694d23d0302047c435bb500683066023100b762f2a9e80f0480fb2c0e9e2a32b6168d2c071e53a4e52df9fe9f68f3fcd2456096b8aedfd896b03a95399c5805bb030231009b4bebe30fa4a29023e63376848b7520ec0b272e339bd9b58ba3410ef13ce644c8e87102fa37289e0491f3d3e15127e50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023048b046dc4c0ed605672c8c63378e2386e307f1b19de55725cf323b5236b29ce4044929b59338b8bbaeaba154f35433af023100cd87cb95c362edbf8113a5812c600260a05c81de1807c0a8c418a3e42868f6ecfe4c73430941a95052e609054cdf1ba00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306ac8b3e50f280e46b1d46094678024dc07ed44969f0c310901a4358a5ea4f15db1447f7c1d15f9502eafa3d3e3c8f84a023100fe7ec5352013fe8212343bd6a306823177bd3233e31190a4c4cf9251bbafa16515cbc37e89e3c742afecb5a2a0283bad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e00e0b3afad662d86bd9080aaeaa7c2de079aa32905b903ac2defd958165bbc261720ab57467b4673670e9d8b823dd5b023100a59051e14e91f24f376ba89af0e45e495cc1c4be23f4d84eea7326318520a0b22558d84b24822f3acb03a947aebfc0f30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d9187f732c9485edb36c30cbd70fef6c3f1d0b191b060a8bfda4293d66cc9611ac92cdad0f3f5c9abe27282fa95e504c023100d9128de23603692e2cbe9fe218fc16bfd2fcdeb7199935e7f9666abc5d58915049f8f11ceae3b86ccd5ccfc531ed4ec90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023043ded4bfd30c4296996846331f5c84377b013250892915805f485793e9b92dc8e39e6ef418a44124fe8e66f43b0a498d023100f1091f2f0d7e5d26f066556202314b1cc228f99811baef15d0988bf47c00c47407a4d21f6732230835b4715bbcc204700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303fe2525b88ab974195f1154314e29ec8158efe1ffd8b8f17c7b981c5e274b372f176c9a4f49a2d09c34e0efeb0687607023067afe912aaab56113410635a47ab710da66e7227068f8feee24ba040a4df4c709e8edd79ad5c87f60121783f0c3ac6020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009c9d7684f8935833b6e0705fceef8cfa35671d26acb933a728a8c184ab09255ac79c5e0b296f9fa04f077007fcc5e272023100cf42c2dc5ccdc2b776f3562b46e07beedcfa50beed74076c1927f0fb41bd157163a7bd023c7a49551165faaeeeea95a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230350b7f5885bca18ba67a9140cde4af04274011d75e8424bfce413321b24d7737e24c893f0048e386c6f991c49c1dad05023100fb626253e5288fe4cfd2557fdcfd9f1da86c0e07dff9250f0aebe2ac594035dc02c8b9ce9eff732c5da4c321b561ee830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302e7b66b3446a93699997ce0b82138045998a529c7eea1d486747603f0b56757f899b3ffa1f112b335cc57c3c9f154d640231009bc02ea8f98895f80cc3027853c0423c39afe430e2ff3a13d599e876586daa57b3fdeb66323c8f142414f5e14b476c030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100827197980664dba6fe898476c1a0e5645655af994e8f81a6e674699b857122664d531a6343558d927c4a3922ab5158ef023053ce2920ac892a0117c7a226652c43d124d1fe963fb6efee3c6c9cb447a5f3b5801090a13b701b5f08d44a138a97d2f80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310093a34f17753745e4c843eadc69f0ab792ec7d045ff001bcdfbad87552dea611cdb6982b343ccc5b541fab672a7fe7d13023100b2ce0cd11702827eaf84984aca6067dbdeb1b83728a24a4adf7f1c3761ca3ea742b01c105fd8bc08aa57eb203215c9930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ea39cbb1f3955fc8ad9f769e9eb1afc4f1d75f6302daede942777111feae6fd83414104a4f9add4eaa539c4566bb0f7d023074460ff9b53ca790947598149289a0633ad5b659df47f77158c409fc797c90746f2fd5267a182426e846d38be85988980302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b7ff61d1cc51b938f17843a5c9700f5bd0e025417868b7983b0277d2b6ba9527e252fd6174fc5239e9a4b0fe920902002306c92d95518bbe3635f0ca3fe560c4d38e4906dc938a3b315e17ed9b7458cffb06806eb944fdcd30967bc000fb96265d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023048853f87186a685c684c652c17b7559dd92e5ad4253c8162712d7384e0fc626bd3d0dea921949e4d89ea9bcc7138abe8023100e13bf17c5a0eef68644498916403f48d0b1d7a9351b1c41500e504d4ea8acb25dd8ae94d326f524c550db7a375dc94dd0302047c435bb5006730650231009f2ca10456946024beca5a64ab69c55e03b94125c86840015b326cfbe210b5443bd356ef3a7a167a01b5055fbaa3d99102307672e594f769f5e53aa4a3791f83fb231956ee813982d4934c7724195a5e960432b05ee3fb6bea6d2c53da4e5dccd4120302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009020eac61be4e5dee46deaf886d9ae28ff031c314617f989df2e372ba790ee4adf61022b9985d23721c24f91306e825f023100a13097fdc7343846989aedb2aac6c07a16168158076545e3b36141f4461610048a390872623f6caff0db082168a5d9d10302047c435bb500663064023023bf778bafa45de7d8d5c0623244b3a432187509db75d4b40df51b63fd19bb9309074176c4e3f18c6ad6d06f08a4892602305f7d40ae9faca560044677f2791fcc3a9254b5ef84f4ddc7b2e73af63cc9743eb855f59b4c0d98e74bf040124df461f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e52118cba6df93048b8f2f710e38941366e80b31f2678e3466d69f1f35bd3ad8d99101c86aedad8c981887b26e692c88023100b9b1ea42990f8e3d0037421540bcb9e79772757597e3ccba668de0495a235d14809e95592366ef27775359ce9930ae8f0302047c435bb500673065023073c0ed374f3c1a901785e951336808fd94f31bfff9f2d0c5d06a53d1da4332695c409075b7d7b862bf086e319116a1bb023100f2e0e35c741faf2dcee2eb48ca6df509bdd7eeaa0f67d56f862ebff28fc70874ef6bad4aa018155c186276c88bf1c9d60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023045ba6bb4a41338221624e0d0005a0ee44b53361d4314998149620655cd39b29c9a1db1eeb9c17bd72a1b89cea803bf8e023100aa7688392ccfb8af3de2cd3834843c9f2eb87686e4d1a2475ce13d526cac53a75e31220bbcc871b83048dfba6416ded50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307e667f89215fa20aff4262595852d662b203a8bef5ee3d473886b03722fa9f5e9631be8f323d59145d0c0da06082f2e502306a879dc2cb9caaed567030475781de2b2e163ff342e0d73493666969b3ea2efaae0728507a9ec9f3b7749cc6ec88d8dc0302047c435bb500683066023100fe539830c736e692fbdc6bb509547cbcffcccaece0650760940f6f66ef4a999285cf3713b8d0447606dcc628b58cbff20231008c8481f982c4e48bb8bf49d05a769d0b7dd162c553068d89c8c947164e8757c9e7985ab1a7e206b87dcf59147b0c90990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304d74c4a5b544b62e59bbe683a0f6c9785bf0160729287bac7118e77c71b29c0d20dbe9d24c802c45b7943d20a7fe9a72023100db0f4ff2ca988c5cb74b03fa206155f50d072c214b25cb0184a349443692167b627cca5b026181a79688f1e7067467f70302047c435bb5006630640230531746573651642484901f3ce9fa32e08acddecd9b01a96ac25ecda04ad21ee72731d8d99eaec3d8e4dae3161499d22902304c4a98d4e00e077af227665b7188aee7af9a18399e0510f2e7427968ff5c56e51e054a9f819e64491d4855fbfb4e7b350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008e55c0c9cae345e8b4c98d49927756d8ee2f4fa47450d0c8606f1c51b2639d31a1dd75e1d53452d5314129f82f5fb628023072b081022d718db456764901f0be221896c3d2d7c2c5a484c5376a55d8b7ff5086fe14afb6dd4e225f619ca1ad330aae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b6a20b6a08061360c054269bd062a0a2794ca371ea1cae3d8dbcfdc35cb6c6f9f2b3aac8efc0c80bdb434a23b63e35c802302cfb6f20c947566c3021e3dbb344c20b897919a484ee31a1bf74abc9490690b5585af4456a0ae82a506d2b59a7fee63f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e7d4f6b858fe02c9c2db72c9119a92c20cf93118adf7fb3f520ca060bc2e5bf9866f27dea2f688caca3767062e79de3502301b9ce71e4eff7e9d0c2e0f883c216472d0ca10beaca50763973f2dfd3e14b920edfcec4b819cdc38d02b9ed40483fca00302047c435bb50066306402306f576bd79a4bfa439bc83029f337e9798d40d8f97331a345fb56bcd1fa40e5d109eeb507b41932964e2dfb4b91e6c4e8023074211bcd965a0dbcdd042e32d88892f055e67afed6a7f34952e5d665d047317d1faa0b816f5e6d3b5817476c98fcb3b40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ab1dcf897ee7443e86c126a52d05eca154fd2347dc30529d5176431c21e08d0ac677cdc12195eb7468e112ff499a5c6f0230247046912aea68bdcf6df36d40620f11bc01c6dbaf33deb1b8fd4e33711e30d300692a7ef278934133271975d33c174a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306db5c527f8b0cdec000748ed2137e6d4993acfaae333f82590ef1a17e611670b9e9437e8efdfb6c8fc4e61d0893a4bc002304074941a64515c944cc3a049dec6fce7ff46629dc6ab24d51709f48d549c0a3363d38e2e35aeac5299c6b5cd52a0a2670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100df0fc5d55975917d1110ab6448ab46fcd3901bd418c5279d3e6b619b956085e9a25f5a9eaa7bd3f5f6944f251d7efbbe02304e84b510028d0128a9ad26dc2bf07db59638f0c1cb69fca401efd1a7c1ed1c60a0494afac23c8579bf86c96300f06d350302047c435bb500683066023100f86e24fdebbe9f4e8e1bd03cb0c8d8731fe3dc57c4012ef195a7a81b0191f2a1c74f8977f35b0fd261ecbf8d863baffe0231008202a453d66de407ba19450173e52b7f8928ffa4a23019eb2684e449d00dae2c04fed2f43e63bf6fed6cf2507d56e6140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c85e75cdc9c6eb459a2886a8effd9a8afbd8898e1f6b77217382767ecd2d80b490e65cea09342902f0213bdbbe5edf0a023100929db5d26edf72463c0a5828dbea5ceb57d0fb19a9772cc6bb3ba426d0d7c0b3ea871f72cccba1da57a6b9d52935245a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c5dcccc4d4c715b2f48d7d7266b26bca37e59cb1a9ae0e3ec26258441fcc72b138d6274886b1418680916690bbc83e5e023021c6c838e04a17a6409ff94da2c4585a33cf3a3076a56621bb454083bd19a2bfb1d76ead0ca25711646af28a69e13fd10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009f5e483f776f62e5e7190cc873796a4fddfa85afcb3396f6478331ee0279eab52c3e617b1430f1777530f1bd6b74c9fd023100ec57a6fb65168d326985f39ff00e0a213f3f3ef59a824d3cc521ff977a429585c581e5e4eaf03702f71e821664659ca90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302d72e4415fdf6df443c379a43fc7d9d908ebd4df809634a85f5a52819f2874524b4c270231b64992efcee29ab380f6c902310086b837b0e94fdf7b6e19254ad8a25d9305a579d7bbb8209141795a4c30d4c3c0e7358f256f61f7d191f46068b7fd18c10302047c435bb500673065023100c10e3c5b7babb9bc453a10b7d4d924b8c85757b7d246cc95258f930d8d4811daa18f1f4c6a89db6ef7da464760b49cab0230157867fe2f3292c090b0546782eac31ec6b8dfecb921ad739933555863372416f25c318c7a6519a8518c352075b7aebf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c403b309ce5146475b13ebf78326f81089e3164c4b86d4b45cf94099522679d899626b6364ce40779a2058195809887b0230631e8560de87eac26c6047c8166df5658cd4c30561343a2138975268b281ee076299c568d9609733beeda91b2c193b7f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023062c097064ffe7a393cd16fb842c8c0bbf925f2fa42993edc2ccce1b55de784091e9df02dea47b6358e626290cb92733d02306f898b7c7b24c74dd44658af8eb646b50c2ed1cef43d391e32d3cfa8e2465374cd6e1d3802573a644d96d689796062eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023030b251461a5f3a0167bf6e27eed15f9ff1089612f5e072efb0cf3275962a4bb350d3baacaa7ceb992ef2266ba86b079302306e66d978bd967a78ca033cdb69a33b6c71de785d987f17cfc4af262a2d2630579d9ebf129938ec39dfb69e95001649570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f7190fda8d21cb3cd9a428f60c81f36a3c808da37f1399feab286b23d55580778e93c3783e69a568fbc4e73c2972cb95023068803b3ed3a2afb9e542094e9a932ec8d075f7abcf1a95d2c7b53632138f1813d6643a6549f6cf14cb500483ef28a9040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b8b348e8dd354bec3d5b07254a3740c4ba25abdfd5af9cc1211f964e5b046e9b50c09524428b9f1b542c6fd51cb1d8f1023100b9c094dcee67ebc0fa7640c89bdd116036d3f0ee6072c2227d0a2e872ca591f7913e38e8a1e0afce5688f4b36d4a5c0c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c3cf8901d30e098b6504ea8bbd132ac0aba930c89faed26a15be819798068d43b57787c95554ee1ad3f99cde9f46aad702306f3e38a8adb29058488b544ad8d48935404b3bbb6e945df91337b11346eb648075e04012a816aa8ebb4081399594c24c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ffd737598b4231a9828ca9024696f8a30776b203ad8ff1a6e7f82b59f587f670aaf333cbb92613f080cd338d74cf7a650230082111595d18a4620ffd89094d61268b52238e8c1a548b64a5d111d89fd96f317f016d42a59208c930bce833ad5300180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303d5863ec54548c5893ee8857ff62fe0c0349c7b1d9a338a2b59ed182bd69e6b3000f906d1a850c8b4cca0a1d8116e9df02310083590c927e7454ec3e5b69a6c2e5b9d691f0518efd3a793f27f1e92db85048dde8d0b12cbf648c1204b41f648a3b88140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023033e2f5f1f7a5f3ba2e3d68aaffa07aef1521a9a01b513a4840279d8da3b20dcda1261b2e973590b454ed1ecaef5f8a21023100a9076da3e69ebdf7727689200d23b55851d09599bdf61e1aae83e5cb725113ccb69f14861278cd2c3f7899a48ed4b19d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bc804bcb6264a5361a7899c1d242b8294db6cd290f668a3cea2374a6c8f0ae0fe75178dac65223e4297b2bd3853986f60230465407edc2413326d2b56cc7804934f84f2b1249e26ea374cdd9b6acab7337fb2ea8a7b76b845d1545ab9d42fff214a30302047c435bb500683066023100cbac58ae98e050877a1d80044d678b6d00ee2b4c01ca69302d000238a167d72cfb7919e5e6125952d8529244ce49defe023100df0523e1953689245caf7bc7e701e51d965befa8188665cd3db2ff53b9b2acd9cec29ed75c4f991e91bbbb1dece64f9b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c8e623de7cf1e2bc5922eeb202f41b5e8beb6aac6978125e8afe2fe59bce0d60a950badaa6f3b97f10d439f668d675400230253e6b5628fc677f655b7850a761af163c567d1e7fd3005835051738b584fdf68ec4fbacf3dc8e40e3a341fe899926490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f39631948a5e14faadeb07d729c0e2101dbd01d71169f94af400ae9715ad12025d8bce5c332067259c99fc3917fba093023100abb7aa5bf4a23300fbdfeb99b5e265d1e6a35e25517da079f2ecddd3c093a819f0a5327935b71fa62cbb0e4d10c123e70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008ddc36229ea7352113b753b125cd69e20114df3cfa2395554c4b46853640f2646940297a0dcb7a26f82e7e8249e5a432023050b6c6ab31b99b62c411c3a87bef478cc87c533e29155cead65aff75c8e524bec67433a9c344a2ded49348745ccb79880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304ac3d2f3e06cd28ae4b5e7c0c9174a730410d65bbd08bd8aa86239abaa80600ee31d8d3f2fbaff2885b952c3743d6e10023100e9a354bfb123ccd6fb18f52a689f5b4a0f13130660fde4e85615ea1f54f94a984e5573a3b4ac09b7a533649f988bc3e10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009b9bd118b56d0107fa9a2eec09e347a6d3505a234e84ff34bd3ff6a054a3a489ab04e348ba317079a9ad5e0aed2d92830230597a54cc00950dd0e2b5658712358b2c646c760b944552d060f68042d9414cd93ab35aff9469b40a1f52be5115dc55a90302047c435bb500663064023051642664636a0e4512c25f6cf9faedb518c1b5aecfff2e8909d14784e727c2f5fe643cb4c9669ae179584e3ec7fa6c2d023058a464ef7db9c288ae9e55f7fd3446808c1680a94dea66ab155f3b44c2d4bd188dd8ef9de87a05a9a3944a3b71e083fd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303c9545bb173f9950648a6b88e2d7794fa8443a441e0880220cf60f378c0c050ee1eb9a863b13699c1b79da9db8bfedcf023100eace7216c7e3ab30906b18e34c5de3ae88e0fa54a383aaaac71f40a94bc78571484493566221a85dac3b55733a24d9bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230112065609c512991e8f56750a81d2a1295ef91cf264a0d1b33e0568df4287ff84efdc5b7723586c1dc3746ca31c57dd6023079ca8b1759cbdda3c8af63df149e7fdc7b56564aa8c2439eae686a5a27c4f4432f52364c2f6c9d6ab637ba2857eca16d0302047c435bb50067306502307a44e032b39de3bb1f04e1d32b43d892de7dd67ea4cb102bdc2853f7f58802d2bca0d118d7ba2dc97c69a4de118c9766023100db4fc5acbc213d00c9ff0cdbe75542f9f20f4f21c20bc4d1726e5b4fb89b18749d89a061452ed520b97925f1fc75907c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310098902edbfbc9999c6b836c09db4fa22d8568f1b854ed049e414f026ccb0062e077b78cbcf76ecf23e6c50d6efa113316023044c86d6cde6ddc51034689250d2f90ae6ebd1dc640a77e997fa52c2b3bb0538af0a5b908811406df3c237f5a0df450470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ac286d57e7fda9704c39c606412d438a16e3fdc2e5e7d5af05a33bb98c6a19743a4303388b820b3a64dcb31fa6d6e44302304383122cadd2cdbe2e52365e03202970395d293c9c958c0b5c904ef48c6c7b670630633e8dfb25b6a8264888069c763d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bbb86870bc4b1343d284bcfe0b57c0c973be736d11470f29b7b5f37c0b79bc94851c8d4907edf3afe9c2236e877d42d2023100bc28702e3d92205f278129c5bfed37e0310b2c3f04ae8f97e349f031d83c1127e8519ea11d830ae09b2e116857a903b30302047c435bb500673065023100d7834f765cf746120e1bdede7fe93915d021f3366459f27c475d343cd5054e013656e4bdc9adec81b570a1308e8b1c73023058ad293fd9310429d224e4c156c49854fadae48ec75842b3e14d0e233e0b22b613177b6affffefab6ff41c3c9b8234ee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306678a7b7f1c0e62aa2b7aba8a40d1ffe541215080c728d26ebf8bb29b5578d3b720ec5539ace99cefb417b8bec9fe0c102301ed4bd34a516cd2ebe227eb2e9b6a5ab23f83606c81eae07111c7f296a3032f1ec973c3ea65e5899695ece993ee2ec590302047c435bb50067306502306ddd1e8890a85ffb64edb1e86e74017d39fb76f0423d2a69ba55ff1e05af66a698ea334a58050de6ce9280a36632146d0231009191dbcfd261dcc561c08f011e094793c8512cfb3192d163ec152c7d575ad14e6b86124c7f5117d6fca17755b64d850f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100df845dee58516c1a1c548756d2fb72d7a001cf12a9f13f8fbe798e12d6fb0201c536cbd3e2365e7a93e869b1a0b7013f023003503b4e2c57bdf1ed3d2bd668e897d78a1cfc56b864833a6a01c441661336a350f59d78f49473b116056810f81125640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e1a35155f0798115c5e4d507057d187a45e5622d4cdc7838254f120cea5d3dcf82955a4c8d5c4e4f02fa7e9a3b1552fd023034d6d1e8577ed0b9e7779c7918e6bbb5600a1f1dfc91e615d4d1d52f9190eda0b7eb66d49ceda6be041d18a8cd361e5d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b25006702816895d5e8f27efe30f06e20e52a610e5474ff82af274f35e5957e89b3d2b190d671839cc2d5873b64c190e02304039c694dd42bc3ab97bf4530b1bc61b683882f4d806bc1671d8f6850f5bdbc92a50959f97db0e6b5afbd99c57b819d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306dfe2e22648c9922f2071d667a9adaa763a64c1cde97eab496dded631b971e05ff0991e687e5ef0bc323d05b64613b96023008a5943bab8730f47271e6a8c6250d7ee5ad1e53d986095c080bcef8a341bcca9955a01dbb07136b4d0b35c273c9cf460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c0863a35a3d425f47eb32573894003c7c1411c9024837af5f33dfaa6df9b113cf17cdca28a0f6b2cd88ecd0146a47600023100ffc4456cd57fb28d86de069ac0b2300beac7c1bc399be2b758fa04869efe5a9ecb521ece3328a6c1c0679531d447b1790302047c435bb5006830660231009b44b405f2f4ce34234e7cc1303f5ef42b13a1bfb1f666b6f2075d933ae357284bf6a397c56114018fdf0f855a2f8500023100d23b31173b87642d5ef9aa7b06d90c32a16b87d23d06461d97bb4fdc05a9c9bdb982c64ab8895a83f2f413a70c39ee950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306551da19aa269b8238ac4b8be55fb273d444cf70932924384cc1b795dd9693fc202b61294d4d9c691f089c328148580e02307295eb49a7829925deaa16b716b95539d3b98426c44ef4a872bfaf98b28def504ef22cdec8a3ea6d010f6ae022353ca90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008a53b30e09368710fda49a2d217853e6f6e29a8eb376c5bd6dd2c4dfe50530ac7f1b5e4d48340572b24d61851fa2b01602310085c8e1c610a7366b4670388da3667328fca92bd2c01558ccd86754ce75e9b40f2315ceaf942318e9a32312414fafd4e30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304f401a0f9e1e857066038981cca6c59652417edf795fde87f62e714a4ee7a20f445b5cbfa2fe0106fcce08e93ea0f90c02300f025836186191f21fc50877b9ec640e5a8922d67cd9edab6dc04dde0d3fb5dff78d1b4080247cd262d6e1406587092e0302047c435bb5006730650231008bf4b554ef5b879b5c7d6817912c06caba9dc3f5b39d282fa0ca7ad5d08d6a272f65f2ffdab62c97f109e0b76570f429023002d1d2f0643c4456704aa22b0b9ee06ccc14c9cd653f60434cf34e246efcd2f5652467911586310bbe041129f3fff16b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304231996b5681ddac8330d7b395ded20fb000a71e1c7e557742c8a6a104843e028b413df43d95aae75edbfc60f4ade3cd0230620dc5114a2fbcac2b83ca7ea9dcc56ea13a73ceed2132ecea79d90440c09ec78d1f65944b9e17f67dca289353438e2a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230545f4cb54bde1bd563dd93913bcf22de727d87be49f610217d49934fa300c3473368f6b8b3d4f710964289fc39769bb20230008719eb93ee684cc8dfab1c5d369b7c0565e2c4a1bb4b594394841134ae88ed86af5cb7954e6c264778a31ad515e5210302047c435bb500683066023100c4adcf490a8e1cc053409d6f32f2496362f92b8098b7d1e43f6674b18aa296a55a2a361eb94226573b3ae66f54c7dca4023100ae3fc66b7ae725741458a82095b3742ed5b24776e322407cebf7772001e767f5a13fac0b706cba3759307d318a667b350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023031ef4f8acf2190a38c2c8e8660c410bc6de8f5748d8cc5e03b21d0876c4fac0ca8b0b8be97137d655d44a9e410d8ce16023100e2139126bea5455705106719eda07fbf016b95b0a435ebdd72777ab252d8347631479ed53df2386da0abfd24e2184f640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230786231bc3b29fbefd517792a180e4ccd70d0f0005c493e2919d2efe2791739ffc3c8df793f52d45913e56e6ea43376a802307b0026e2064e21be4b77b159324c969f4b02cd03d724fd17666799136eb687967e152f327260c0f12cbb735aa7a8b23f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023031ef4f8acf2190a38c2c8e8660c410bc6de8f5748d8cc5e03b21d0876c4fac0ca8b0b8be97137d655d44a9e410d8ce16023100e2139126bea5455705106719eda07fbf016b95b0a435ebdd72777ab252d8347631479ed53df2386da0abfd24e2184f640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008de0e2975c232e96dcb78ec8d37c1078471cd499f9e681a74f29565389f79c327e10f159da2ff90ea6d36d358be93e7b0231008029528b0801606081df7114b08405393c22184143545628a95a94794afe3b5fbb67b74ccc76b0daabf8d29fa1bc06940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306882e9f6a344b74dc715a97c93989a6da5189568770dd132e84f8e05b5bae6f40b8fd3e276488ad80310368fc8b80eff023100adcf6927a6df2ff9b5bb95024bbfa4eda9f349c5fd61fce317488fa35f50d13d030723ae147d8683f140c4fad081fe2a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023035a207bdbe9987470d2fca23e723d68032c0fad229d768f09928327137c7180251937747986231c5835a128a4b4767bc023046cacf695bb75a92512535b44c713f48aedcc4c955854e13971481dfec7b90d45fe3f6f1e01e3030fb5fd69d02832ca10302047c435bb5006730650230129541a4795721ff5c93190ab40cc5ef8ebfc3b8eb309fc3e69c1d6ae4a266f248aad8f697fad70a8468008fcc3d2bee023100ddf4083110a219e2037e0d93a8ac94cac089f83bed36e8b1d08ec5e93924c74e7a5d52ab41e7443d970edc6d6a89a46a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023069de4ceba50ee8c975b016ad51ad61d614c556ee5cbba8ea2ec897d2e301ec5d3de03a74b8f13fe30127551e8e889fee023100f9aceaf7977c340504f27608270e0fd3d90d0a35c59d71696e2c874906bee300340c1129c85bf6bf050191d8ee8f7b0c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304fc38b7259ae24df2091b2dd6d7d9e313cf708f63c5ac36888d2afa9d865fe46ec78a3b46c2409dfc0756e65082ca1c1023051345436b3ffb4f74a03fb7981b72f3875dd3d5db97cb1c7bbbe55c8c85f1006bc8f868de225ac3f6ad79438e0aab22f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230113d8523c8d328508643fe79aab627d9f27d60ffe160a739ed321bb79d83b40b3fbc6d14cf9a6f9eb355f31bca7fb2cf023057edaec49e8e378028fed11165a2cee02774a12ba66e24b6b6c52ebaa8a1c1e97939e4669284aae2bc7cbb197368f1700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230113d8523c8d328508643fe79aab627d9f27d60ffe160a739ed321bb79d83b40b3fbc6d14cf9a6f9eb355f31bca7fb2cf023057edaec49e8e378028fed11165a2cee02774a12ba66e24b6b6c52ebaa8a1c1e97939e4669284aae2bc7cbb197368f1700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c9131206caa40fe9aa285bc983b90b900d3083f8028162d94671f26f15f9781778cf89cdf1ae5a8106cc2fe6c92aa0d8023100fe252e6262bbad1922b84729197af32a79b54aa6b39c9cbc1267c0332b63a9a8be72efa64e868e0d7c9097352ad25a5a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307e843688c05e0294c2cabde26de8c0748e27c698788ad5b43ce19925d60bd763bea743fc594ff503c6fba2f939532b9c0230316bbe445e0c3dbfe268c67f4e058a3d3879551c1979b064e36be5cada8e5255fbeeab08787965059e207c64158176a90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230343f839168d3feeb609b68ebd073d0445dca3d3415856e22555eacd5661a25ff10b46f565c7eeb28e4c814ea267d684f023100bcfd264d73439ae3e991d96de325f9df723deb50cb2289e7622675df5bdbfb8cefd2dcc61ddace8550ba1dabaa4d5e6f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ba226b86fc6220d7f04250e26e93aa5b02b771eb72cb85a6b4eec068ac2d18393ea03a8442df8924764486453400a387023100b6bfcfe457ce63ae648ec4ca6cfd41dd26569de44f0c115a9e0a6f6391bee79b7bc97fd39b87cca4144a60a062c8b24b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009e771b0c34679841a462e0abd46638a50212ed2df58783155d08a8248ea3592939ec02fcdfc6f1f8d414119dbbaa08d402304f5071473bccac1c2ab42bb6479bc6c731923e6a80206492bd03e5c456e3ab3a800d2fd6492cd7790ffaea33c398cade0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310092c29e434f947b1890b89087dc0c03b2542adc4e8eb7f7a9cde7f2a07e8116564dfb47a025267483c033b5a0162f886002302e8fbc113ce01390933f8b300317927b3f562682ed9c2ed58ef0df21c5b0f0e4864a7d61d8e1b418c2cf4c482d06ad100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f858acaa9fea72a897d299bc39760a7546ea3626af922b4d2e493646af9bb94c8973366e9f6b961605af6df47271a65f02305421d3cd61d081ca7e582f9807ae47d2fbe697ed5aaec33f0e5897d88803e7dd8e8e0f3e830350aad63daa1beb2e78af0302047c435bb5006630640230759a0d5b81be5a8e1e81084154269b3c5e2b5dba6d93634f2b6e69689c185407de7353062461deec89a6957f2a430d9902307cb3c5f6f11ded1bc31b3150229d397ba80f99cbbf216e7753a9442a795c8e4dc7134e5069b8d048be16663ba4c6b6ee0302047c435bb50067306502304eb9c92033675c318b52507c39f1619ec87d90b572fb722719d21acfac9e11872f3644495b4b4ed2e05267962352d1fd023100a257703ee3335afa42cea6d7aad73debc82c1ffc08ef34e682a8c50c71c5cb0253fc18f611b7820d464bbbbb0bcf02770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dc60baf0073c6781c8824d6cb26b902f2545498eff2dbc2a5c0618d82ce9ebe1cc7b8f66afd5be581b280290c92a2a3802301557f5fdc71f4104ba6ba705e270aeb5f49cf03e8982d99341ed02670793cae831f24a0fd7c8b587593b3f1a87c2b3a40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307aa214e8c7ca20f901c6a81b0e23985658bb1f36e3bcc58ac88b9741e554d873fb78d2ab2d9c69e4cc2d9f5fe779aa59023100e2e1120d0c1493890bebdb85e90ddc98dfccdc3cf383fbe99ec92c29d4ea88f000fdd27a8f6f311022903bf9c15b94a70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230300863cb47837e58036d756a7c590341b57bbf5af1085eb93dfe87841317b8aa6415c1e8a25610091a596eaff047dbff023100db48b7d8d38ec7e2ad243bfc527acc01293460a2eae8020f6f00612ff79d5acd8d943050b23386d2b15aeec18b6faea20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c9627491f7f59d2f3c3172e82abdab7a3f7dd7495944d1b5bd7aa38b5dfd6e5bb6ed81fadc61e8108b0fb806aec4d7ee02304e0ae968b2e48923781efad45bbfd39f4b521180668e9ef7ba7073a7847dbf6c69e052e088a810b885f7286cf7e0b2190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306485549679f09cb040e2759ea3d8345e36108e4ed7a64b1793e152d6fb160bf4f0e19942e02bdeecf81d75cb10738d7702303bd25df779b5828434fde4da9f9921d387772161defcb57bcf573f719f546fe45848f63ac2c4964946ebc2c1cfd2b6830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009a23e199f46c2a925dccf89a0467c434aae065d847c18930f3d8eba22ae40f570119de436d50db3920af8ca6914edc00023100f2ce8ec2390a19b5bb86978ed2a5d99a39cbcca3b198d1a632f18d98a13bcffa56bc119b95cbcd5cb743e2e81e15f9c80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a197b179c48b01b83e519e6df71db25d8ef8f8a1663c029551f8248e290736dfd4d348e3b7d72ccb4603704c5ceb38c102310099cc75ff1b467d7117cc681d6be9a61effb127944ab83c19d36444748166fc8dfb30339726f212cc5c356c70a4cd26490302047c435bb500673065023072555ba00b95fb53eee50222c68b32772f3b15185b44087e9e11b2a9948c1a6bb2c60e4d219ea1dca321ae7fa2cedbb2023100bc40d9c5af21819fabf3ead501d0a97f885af81ab85af805ddd2f2d12ef87183d41386a87c890837f1048a892ca65a000302047c435bb50066306402306db1c16bcbd3ee651c579de81808df27cc5d465ea3e494ce8730d1997e51934e0858e0764d92179ab54dd9c2f833217802303b3da7a5913e7f5fa7617c9481e48c47c351bbe33ad40d5301ccf9e34c732bae250273c5068482b4456b2c5e39b186230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023050b669837361ed1ca2cc483062a8e24e9b5d7494a8fc3ce7b4375897f25eb40f648b28cdb955d9d00d15dd12ceea5e2b023100b4201a8aeb20bc964fe1364c95020f59f1f1856d55fdbe21ae1003c1eef24ea939c74098c4cb963d53146ce7a8129d450302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023064cfeb8b74dc2ffcd8adf37b3616fc44791771dd9e91d231db82048545fb907c63ceb3573398a113abebf993195e5f03023100d0e9021ae2957bcc59bad03fbdb2cbf7a722e8a7c3b205fd0fdc07d137bf777688f63c843f5fb6f016858b9497bd1f8f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023001d19bb3ac89e7c3be8a561abb7b5b0bf755f09e9c874f7e3459b87296b197c5a45579aa17817cb63c9f4243833834ec023100b16e81b794595ada7a4855f01029231e8fb0a6ebc3cc6056ab5b0bb09942a73ac8141a846014bc14a3ddd2e62ba4d9fb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230701fa1b8b1c9c696376632e3c876ed569b5229621b35d3b9c905650fc2e4a8449886df6866a877643b22ae52adfb3d6f023100817f816852a4369cc427e3865d032e401c38eed50ae0e1d20d5f6f704462782254cddb98bc0b99d468ce2c48b4ba40a20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dce19d6ad667c02bc8849c9d74a9b4ea176af6de43465f1c6cd58df99a43f48426a513ec7abb47c479f37523b2faf6d9023100fab5a95c7c7defef51c183912ca4047c02d32328d104294103f066ce6abb742469ff1c74d054b2708f1bffb0012343f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c9c3151fb6fbbd2bfa22e6ec7e9d3ee1e34e7b25301b56716814f42b51a363924f1f46209b7b1e214a4afae5463c4018023100bd3f0ff26af468dcea8dc364a32e4e3e98a484b29ffd5c27913ffbfb98c2548364256e6cda2eecd77f62e6c111dcb4f20302047c435bb50067306502310091401ab65dd4e32947590beea75d9b93d27c2c6d893f187511f766091ed06c0a07db0b84403cd8bc72acf9d5d49b1ca3023059dbc290183c0ceb37433baa11937c047eea53ee554c2d52f6fff54f4f474da032a64e89bd28d3556fdd561507494cc20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307cbcad6b7bec825a3697b7dd6395aa3a26f5310a2ea7207b4638b3b798854ada9b63671eba74c23be121e23f1655bbdf023100c554e14c4a2da115e9a7fd0cb3578920093fe1de2e7b89ac8c3f2751a9f1ad783e17d7577e896db71c2151be151cda020302047c435bb500673065023100e19df64f0d9e9051e25e6ea46e280683a1bdfd443f6cd52d51bc928e548b57544b52cb5e68236e0a2f62c329cb22268e02303ad589a5fd29c8f6f41d250eb8c34a2d0d6a4e0ae5f035e1eaed572e9c4d147042fd9ead2d6475a21f2642600402ea360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f82af85cff318798515a2328c82643f24777fdba6bb40b84c8afd14b874883d3234665c7384dc2b8544e5aa71dce3fa102310082bcf1738e3431f2cb757b1131a4a7db2269cd0582e24cf84c3fd408ad8b1eab464e37602bba8d2e96503fa34deb3e9d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100eb9ded11fd4de45fdf66ad85c9448e2316524e34142227477058d770c52c1630b0980e1ed7c79dccfd44e3c8f38bebd3023036b45e24b4a0ca34dd01aaf08a809611aaf9e48174844462bce316e14f0dc4971c71a6104b88a0e4ec9bcb723a4441f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300f4b5261b4c8bd912250fdb49618f905eb74faa2ad50763a5233bfd24a6e83818e5b1a4b08a85d909107dfd1f878a9ac02300e78c3a39bd808219a88aacff1def222d05788d6234672e15b8fb6acf1e6003fafbb9c6613fde44218f86187597cb2010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c8654fae8e467e73cd2b6af45801a2c7dce40da2847cc5b248a83821fc9dd94989448f447112b3cb9a7b9b9eeb8a966702300fc2d532edf754d307c54ee17d916f847b000b49c4d8281f10313daec4a9cca28f623a2a55254b7e071999e25eb7d2290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b04436037837ce3127ee489ff2b37e0a0a9a1d07791185ecd17ba8846b5eca331bd07865de7f65e769fb7e8a2d058ef3023100c24a2f91a113b88f76e48e0f10b08da3724d3d6edaec5e68fb8b8427b916ef7bf42351af54e35c0c5879cacfdb1c6d520302047c435bb50066306402300fffeb722e828175edfc612ae4ae3ea4abf33202e849ebdf9bb6f3f9055e3b4a7676bfad5a6333dfc0496af7847c1a93023006528c73df4ee4c90e5b28d39c70e2e6139f57b557bd09298a25e114ddb0bb5cfb15ead564aefc66c5a7fe5bbdc55dec0302047c435bb500683066023100d283b6e422f1d0dcfc3174abf2e1de2647944b108d20282a9aa6fbb61fb80bb64acee15a15da75a3efac7e85f1217d13023100e8596e68da939546db3d4180eea1d321c51ab902ad36f7b0e49ac5ffca9d7f15e17f8854de1da9cc577c2d4a098bd9850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c17a30156afea1b8c15b1435cc97651f6fed85bd60f9cff416c1157e7c0286790208e61baff11228afd3f74b2a06312b02301792819969248d9faeffcbf9b244b135112d85cf6750383b44a962ce7bbcf91c00ae0e773b33dad2f451d9a292ff2f750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306323486f3b5a11bd75ec38a5901a1432998309923814d8b5b6bdd36c53d78de070fb33bb626d68353ae12cb2ce71c464023100c564e8d2523b1119ff218692898f96a8517faa4e09c92e3fc25ddf21bcc791bc56e90ffba8d3fa2495218126d2b9241f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230330dc72ea4306a6da0e3b0c626ec0ba8e7d3ec4bfd62de4a0c7ec74b200dce016dba6ffd40619a0388682414ea580d92023063237ce8b64d6f00af8a423322a043797d386eb4c40938a216cdcea7a6974c944edebad3b16fda0260701170848d20da0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301f502cb5cb6aa97f3e08a268e3445f26b2b4cf06cb9b77fff51caddd6ea56f4e35385b8c9289e8db8f3802f7abbb2b15023100c8141b1972db4dd2285e44c0914592e0e3f3e0149c21b06ff88d6a7979d888e714a13143cd431950b15b20d123b689cf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fa92d9443a4d0e66812f8f017f3cf9dd632b46d3be84799a047d43d109407419fa01ac9ebd9e8fa833438d19333fc996023100e39c6b08c6ca0a321e4fc547fd55d0576838ca404d67359a302c3e63cc70adccca6685b5bfedf09079f478cbc10fa7d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c79b5bf2491344b9a07b1740a4ac67ae7c67d3c89a44aa6644506d14f335250cab6131f21f0821cf57e9e6e4977a616e02307e1b4fe4313daeee4c2a6730ff8ba3c2b80362eedea2ec61c35f4b62938b88e97ed3f59f5a9881dec8caae1d6aab9d4f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100897f1b1ae6b26a076bf90fe9d3206d72db75ad9fc7b379e239799b9737db30114c3087a220e226108620fe68f268205302301b7324458495a88e5a239e14003f4e864e0570b4c2e373ed80e44456e5c65cf2bd69269f6693614c695b34e9c83981820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b31f303cd61966e1796b9bcd40b311eb431359540433205c0e26aec5479c3d7f53927d12981a35f7071f4f8cd14e5bbe023100cc09c5b4c245c54251c51059b63bf221c52b3a9c6205844f6154f20c8e6f6f24c47198601a376720d2e9c0196b4b77940302047c435bb500673065023100b007ff4a035cfcced03788131d230f348aec502e57556192e08b69a417ba9a8e96a8e1684e6da20a120db2ebf3e3a5010230019af2391d375db42ef79fedff2195a8c602edc305b1f913f1d309fd5666f1c0eb2091021346bbca0ec225f2ab6545a90302047c435bb5006730650230021dcc23871c08e6dea8de2171b2360bded43a930b84193cc139cdfe659b223bae1e9191454d7529b6199be194fbdd1d023100a3a2ea8ed013d333c1606f59f3ba914f7ac7edd56df61c32782dd3a7223bbd6d891506de17c1877ea11b070e618c4b140302047c435bb500683066023100d256d39dc530ac3b7efac1c7fdf2e78f62dba91643cc23fa9f53d834898dd5fd842845ca21e7a1e5246c77080acf9ea7023100cb189ad0b711b4d56759df5d0ed0dd01afd3bfc81fa25ddb10c5664784af251ad8001fc4c59237ea77fed4e1d5dc96be0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d208ece91ca6c381de5236b666be19dfb56aeba1d804d7e9e841bfbc5e4e1f0ffc4420028e9eca5f47af754c68da642b02304e4b51a1813dcdeb27b577206b06d5db4adae37ca22d45c19006b98a6f407b8f1e4c591514db4d93c2cd5350858d74440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023020bb1f44ad3ce977219f89dd30548b69886ac0729f8e9840e8d37d295e97c49fbcb430cddecdcb1c8a34ba1da55db0a3023100df51f31807ad55d01d00957c4175d4015c33e641c69c44fbbfb72512e18a064192f2b582fa0bc2eb6c84048814038c050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023045da604af81188bd7e699766e58492581ca7a6bd7d5c9378145fd1e96da601e2bf3dde326016fa098447a32bc0df5eae023100a2f9faa7904e5528729177f73cd5ab3102821bd5ebd5086ea85bd37c01ae069ebc2b52e9b5ec704184a68c8c425f696c0302047c435bb500673065023100ffab12ffed0b784fe552086ead7f058335dc5ad73796a25a60de57e26c3cb337644d48c86ca921a975e61d650465e296023054ddfda645080d7176652f9de410b47ccec3084cf3d4971b818fea15ee5af2b9484ee78bd2684acbf63b63018112aea60302047c435bb50068306602310087118b89e17b4b9a98f9c01c538c91968557e74d0153e5bdfb2fbe9609acca684ec5fc71a7edb9f13779d16537c99ca0023100e46f3b9567e1917c83524a44f47ccb8dd7a91ba04ceeba8f95b7382b5bf1e6818a41d0b7f9b77b01342967727c6f4a210302047c435bb5006730650230138b4b6c5a01905b289e01a33ea250dc5d8d2d55b86ed23215a34a37b14272eae3c7e9a3b99025aa2ab04037cb038199023100f73e88b3555e4424c70d20cb06673ab0cb851e86a83bf83e57930cf589d42903af34c4e849ec77fe37467d1a250e18160302047c435bb50067306502306378b6ae38211ba73754a3d260208891890377a8e40da6ec6e60495631b450ace46e7dd79acbe44ff223ea3f11ea2abb023100cd00c6d8a04247c15c1c8baff8ae7ac6186091514b0e64c4c695c68e9f68d14fcc7912c256604c7591b848e217a24bc30302047c435bb50067306502304e7ec84729057f3d0dbf3704fed20c8355eb8bc66b36e07158dfb0096b34e2befb1c658575dfbd0d90624f5875e43bfc023100cdb70ee20f3e5f12a693a4390ac521115aed8274eb3ec93b78ad9b58f4abe534f36dd48399ec16c0d738bc99bf4c6a960302047c435bb500663064023039f0d1c66d6f20addf1c6606a66eb3dfdff25f8dccb1e087721b33d308299fb8f56b5e1bfdb33d5d26e90bf4d996effe023010f31db3d96d444892af82805b7dbca253c37e67b5dc38b48fa116fc389b9456765ed7f6f67d1cb992f1c3c547225f730302047c435bb500673065023100838e5dbbe2ef22b1f64b12c1e81ae413d1f5c3da69db3315a91ca14218049e03007a2a21edbb4ee54e750aacba7c9e4102304aa224c926b224faa25a3de5355b9b141fe80610fda03c3cc2861f7297458a4de5513b6a82ff3c60a2d1bdf59f1d0dd90302047c435bb50067306502302567d3f0beba9c29c0a24b98176f08cd0018fbc81c54b0ea942003baf24f9e5cc7df3807232780d0f49392c4e4c74bdf023100edb5a06a4af9ad0a5bc35eb081d70be6962b4a0ff2c90d1a7c25ccd586795d8d3383c086af39ee101b38ead261c631e20302047c435bb500673065023040ae30f398a43cc8dc03698aadab29befce9ecdce6aa660ef8a20b77bff6c64ea27a1863142611ed6eb6a6ccab2c4ac3023100bf59463ffc80eaa18a0e797d0fd807b0bfcf83f726d84aada985e9fdfad8fd97dba9547ce7f4f0cd825dc130bbcd002f0302047c435bb500683066023100ea092c3de0221631ac5fa2eee6cb70dc4c9573e5b90f9ff9ab208e9357603f77ce1bd5da2b14c7a11ff8e71fe60888a4023100e23796271ef53d867f3c50420bf9e43c0f9e870dc13e557e5f743bd314d3dbea58954f7ef64df57302885d2d1d8eb3a30302047c435bb500683066023100daa8b08fba7fca281c90e7ed30ba3379ace01660db347b926f7d8c94996a7f286cf1f351a98ab2ae7126adcd251b6a5c023100a3388178a60fc30c52ae241eb857584eec0b5f6a38bcebc8cfc2fad3ac7cee381311b3a3cf4979b0e404cbf13b13c8410302047c435bb5006630640230662d578ecc187ab81c9517b7c600bbd5072a274e08a09e5f653af1688be433118a626f3ade9520124029791f787ea5c702302b25c2d30be03f30803c760cc621dd8a016f0b9d3383de0f29dda8b65a046630808639c922c834de6c63c6df20fde06d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009c0908aa01c98a45e5c69c38830d7c57c6c01e08150c10249bc704852b65ced8efdeaff424af0a039eea577f82824519023100f0ba6299eb2843574d492940730edd3233d49ed2ef8626be120be49d8764e1febc30226b8da5c0e48dc50dfbf8c4554f0302047c435bb500683066023100ceeb72d312314ded5dd83430484c22467e7a6ecd9b259c26ef1e1521b6db28e86741407865ad47c44266e2f9da2a7b0a023100baa8e94ec372dc91541b3856a2fd577329d8133f1ac913c72e1156c30383efa001d81e8060ab940728e2edf3fb3b52820302047c435bb500673065023100cf7fa085717928dc3e6d055cca61df830796a1bc0fcff9317f4187cb67bc20c96462c76ffb98f7337d3fe8b0e8b806f5023036a84fb26ba905516a9021d779d7676b914b47ae7cea5ad3160b8aa847ab1167874e4fd21ef9e66e10244c42decbef980302047c435bb50067306502300f7301f5bfe7bdb768637de8c1f064d96faad4b91f2fe8e76dce2bfa8cd1315125a9398e3eedf4520a0d2f528fbabcf4023100c2e28a68ff02429f7fe57990e6ca8c9052c20158c56894d13890ae9d8a069cf888100ebc15a30e2db50ad8223c6e0de90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230184d7f472afbe9ddd44e13ab4ade11519900dde349bb5d779a2a00b73dace533ab940ecf9e1279d39e21d1c93ad13e0f0231009036c9e6610a4f797cd64f92ee3901d9b594fbed01ac61927363895857720bd2a8633997dff01d9f51ec3bed313de37c0302047c435bb500673065023100dfd0854701d811adc42dc9c398cd0199b386d37b36b463db39c8abb936c0ecff8821e504317ec5be8a6018578c6fd5420230480ae6e695901df407d3f688ed49b2e692dd6d9420eba68ec85d071a69239bf6f4592bbf7a0bf9af88649988c6eb70a70302047c435bb5006730650230514bac9fa2effd78391b4984df4911daf74ff1ea6e46d41f681367c37bcae253409f46c3b0cdffb39e65d547689639de0231008c4035ff6327017a81d209f79116036602f0009793a006de55bae3335de7744796726ea50ae69021143f6f2488f6460f0302047c435bb5006830660231008910421176e676d67c4ad7eb2c04a5e3697b7f1136958bf41905a5f92aedde45d12d3b4128a58b5674c8d07ba8b51b8b023100ee60d89a7f286810ce9df47825defefde3fb05a5093615549bd25880ec8a8d8255f56339e6245c22e5a56a86df2a33560302047c435bb50066306402301be84b77ef7791ae5ce77650b1c41cd402b34b8902270a9bcb2fb359d923c9cd4c6fffb321dbb3e008567ddc98d81fcd0230502612d93b3c4db2eea1f8ac59e324db72076a5a5b71cfa4d6a4b4a36bcf2699d7974139ada2b5cec1b5f2af452431220302047c435bb50066306402303c8856f4dfdeb9f12464c873eb6a4097f0043c96ec9359c31ebe3067a06a3c5e74b18dda5cfa7714d1c9104f1c96ca7c02302e9e014929ed535ad933c7a5dc8d2219099c4f5593159bf4e7cb5350522d195dc851546d3697cd7bb43b9e0c82f971a10302047c435bb50067306502301a66ff69c13141dd98b0474ed69e6300e17c4ea13dcd495dad43f7304a952892467e409159946145ff330285742da8c1023100f4f631b5c31f4b57131eb14d02e6c39410da73c1266530f156a83950632a1eddd6d67fb415ba699f61202890e9b723fc0302047c435bb500673065023100d498bc59fd21b0a80a3862bf0b2bc0505c1f6f72918f0b2ab8230e4687b432b0ccfe25244ceda8fbe16c39835b10f7cf0230405770f4fbae936ef3bf9dadc6399b27b60d89ebcacd414ad3bd2d981f992b8ab610ae1048a338684fbad08a738126e00302047c435bb50067306502310088ba12f7d3b2e9af3a89e2e56b21bd5dace58e9b798248eec3af23e1948679dcb6a4316c880ab39ec422ac46b9cd49ec02306786fd1044f85ed065e0f5f5288915728b027e8208fe503f510846a5f08c90cdfb53c5cd5c79fce41f083e34dbb88dcc0302047c435bb500683066023100c650574dc008ba49c49f4a078cf0237e2c9eef0ca9cef25d39fbfb00c62f174137a06a803d4accae6f1aa15a956b5f3102310091e6784269bd12461198adb2e0b79501228a5613913c5edd943525b1152d5dd4944e04a9cdf37099aeb4786c51d71d450302047c435bb500663064023060299b9233cee3d401abd33b161f4431086d31d37fec8b4bcb30a43ba340620a26a54979b2f04a4a2775c0c921140e0a02300ae8e4ad0665bbf8bbe010aa02d58a558de9563f588a1d259f41089d160dd7ac1c7d4a026f3eda4819d1dc86e17643520302047c435bb500683066023100cd8469b82469bc1706d4f36f43371de4b9572852673cd2cb13dee65433181df8270b36caad0e06e68e213b52a757caf0023100c0ee40229205297e00571b1b19ed296a0a9926f6f5dbe733801a3a7cf32c8c250fd226b2ce41f95581aa5d87c49c0d180302047c435bb50067306502310090c3ad7bff9996c47ef72cbf5419e36927a3b82ffc8b3a6bf50652304571835dc13fb0bfa2537cfbcaa7e5b42bb6b6580230775b6eb141635671e587062db628762bf1f5b20b0263d8b53b76d63b20efa7df0753de97b8923010d668955436ed40720302047c435bb5006730650230353610437098fd25ef713a5170339d19eeeada75688c6981c45c3f3cfcf15e2d7024e1e7e5c02f9ed053f9ad08dd4bfe023100c8f3bf4384b23939778ffbc83cd289d7f9d9e83926d48bea55db13b5e5c555274670bafab2234b0b4bae16d1b64c654c0302047c435bb500673065023100fe15e76a524f41c92d7cf972959671e5af08f036c357fd77af405eeadff0744493c499fff7fd4ce847e59d0663b4f8c10230547078b0295a55111015e8675c12f841c07dd4457b9d6d54166af01389204d3acb0a004fb190c2100cc0a0b73681f3000302047c435bb500683066023100e0aed21f6b3bd23488279b205135e6e1f14f19c8e448bbe2d51f409ee210efe7c1fc75be28b03d6b762a1b947ef3ae72023100de7d6486a82d0e57de578cf66dff8e9332425ce91b9104bf49146dc6019dfc5d00ef63c5ba955d1fb4d48e203fd592dc0302047c435bb50067306502301d68f33df93863e3b2172c357541382ddd24f6cb34c3fffec3b202a0dcd56c2fa4282a2a27226e55ee3283c4ddd9f140023100f71ab222929176108cff80950b681e63f4bc283f813b2a5b68b349c71c45aff1491c3ead4d25db57295eb12e3224368a0302047c435bb50066306402301dd09d4ab4691a9c55838dccc6a5e68bc70a5212d8cf86ccfbb9b59a5d3b2bdfe39a61d9aed37977f29899982f08461802300cee88cf937b427366ab5be7823e937a01f193e9126bda8269a40396f7a3159ba2f9164ca12f0337425112362b80dff90302047c435bb5006830660231009e893e52cb5f07ccda6371ec11fce692420de73207685ced1dfda7f8662fbf0f9b3236dccf1da6cd7223b6ce40181fc50231009bd05d1d1898fcdfdfbc6128b8d759ce92630e5443b45ea92d0cbf4b03b2f83bb7312d99553fce96d207d2080d52723d0302047c435bb5006630640230276b975683c6b47bd8a6c9e54f7dc6668e6af27b1d39757ca8ad88dfe23bcf750b1873430b309113d956db76242b894f0230056f5c0dde73a820137583e0a47bebfc5fa90180b6e1193f4059419ddcea74f53271b6086d2413d97fa47f53832240f20302047c435bb5006730650231009f0065a85cf21759b0018d09bdbf8c7fd58436c580cc730b7ad07b0581e3b970a716c016922e1d459b19df9795f4879b02301a3671aec4b0e019dd072678f42ae88773cb456c3cbf8a19711db0da3702cc8b4f39de9e240aa87459eb7a26d384dfea0302047c435bb50066306402301808dab5b523c92e46613f3dd105c736c15fcc3cac4eeec812883c0286ae4867c045cc63366f4f29869fefc8467cf15d02304885f5156935eb2834d688a34ff7ce52a31c51f8793e3c731af0ccd313d11ddf223921c82984700db5e3331fff44b6800302047c435bb500683066023100aaf3b93392004f8064835d58442736326f89b4d6eb3e795896ea86de90724eed6e9bff4033af1f322064ca38ad0f36fd023100cf0e1720bca459e5f3bbfd9c751b5d850243f1f40c46f20a3d1d7dd4911b875f807c1e1614bee5e2d8f302e93d73671d0302047c435bb500673065023100df2d919b83dfefffc5027d840aceec074bed39855ff8d06ed4f831d7de94e5f9f6baefac3a0260f81cd2d8a2e5c601fa02300a0b259849ffe293fdd834cd52debc8eb6f0e0c6f664f0cb2baffba34cb53ff4aa54094e6151b1890b7e19364e55e0e60302047c435bb5006630640230604487be27329394b0eb7e324b2eb6197c5cec05e8e8d28c8300bd8d150736b7373d58d2fab40ae57b66167280f0184602306fd3453d63cfbdf5ec0c6db653b22e89f7a8d7bd76e409b462d798cedeb34de460257ff3e6742d100fd356fd955cab810302047c435bb500673065023077afbded1c9f10277d68dcc9039ec873b53c9ed0ddc62955b5f4a7a22de087f64f80e6d5ea73e6ee1fde6900d26ad4cf0231008a6648443eb5b25444ae9b8bc773f3c53a2c23a49d2f0dd8b946c8da23c2cfb3573a53ec089b960c2f882339172e42c10302047c435bb50068306602310096bff3443ed92a07c7dcabc9ecce9c76efc684ef35c0690fa3df193304e46c1ea10e6c1e699e0f9a35b836e420a1aedb023100dc10b1ea951d43e1ac5f815618f84ef0ffee0a0094f79ffe8273f228f3bdf16b44763942e876850912ceb329554063560302047c435bb500683066023100a1ec92af02183cea0bd1b656532ee0a6a6746935233f22fe0343d72aa3d0df9e70959ca33eff326b05b481dbd1cdaecd0231008093237761c256e8ed24a359aa16af153caf98fd3adf996544a07a27fb0c282361d394a4d5fa9ca0cb924038e4cf27a90302047c435bb5006830660231008e2d99c77d3ac186e4d0e4391518885603252540d7f353bb4d4416cea35c4fed048d08bb7dda7ae756f27fe5d668fcba023100d23b713b028a5dfd5617ccf5f9f847fa6c335f0f50afde97571c935688ee4463d554cca37344e2701732beb3d305219b0302047c435bb500683066023100dcc3a1eb013e9758550cffb8dc764d9c2a85e1c2ef12a1d5c781bdf7c81f219061f4bef48c4dc5ee0f8722e6a5ebc263023100a2fb65ee0a594bd0f63a34b29e7a9d632a7e2e52b04a10e3a91c965ec15fb3b9d5d888e72167a75eeed13dc0959b8d770302047c435bb5006730650231008deefd8e45a3eaa454094081de5fc26a59eb932dc2e0ebe212cb0894984ed9a72852344c196fba688688322b6b616ad602301fc01b15d584402f40acc3a15ce8bcb77b03a933b9f60f57cef5c7edd5cfb67c78de96e895369870e2fe9e01e8af476c0302047c435bb500673065023100b949da859f75b8f7e1ae6106afeb6b2f5a179915049d36e2aad9efb1d0b4229759002349e13e84101f9f48ed19ab25b002306e03f03a8aab3f5f83b05d0eea29c0d7ce92139d1beeaad6eccf0aec32394395ac12f0f7390f8b522bb2c9194c2e5ef40302047c435bb5006630640230327dfc6d8f311b66f189d67f26fb414ceb1f380fed6ff182239a13150c64f6c69dfa3656a75b126d03daf29d25268aae0230386a3b47d513306da9fc08045eb974da18c4e1f30a7417d3f2bd47d4ba8df1f1af68c2ac590d384d3b89146328f90fee0302047c435bb50067306502306463815fe13e018596b2234c19c6660a7461ce61924861ba07616c58da99bcb9b4c0f55f14280d2e285c690c7150e8cf0231009824df0d6894001ee49e3dbea8398958b0a81b59ea60be43a9fac80f10d4898ed3d9c48148e0cdc65efc34820e90e20d0302047c435bb50066306402304a6a3def601655191a9874d6bcb5ee49b0116c00628b4c158b9d3d34724f99ef30310a4dcf75284fd66e8cd8595271bf02305d948e70a3c714998dcdbd8a9fab7df709412dd16cdb944542d8f4d4e8c5d421c5b1a002a1ab0dc3a8c58149fcdf262f0302047c435bb50066306402306d2c01262445687693d22ef7504a3df819e880ed1955a4532788e1af6502cb4b8b0eaa9f400c3fdce815e064e4fcb2ff0230199d0cc1d044a7dcdab3dc787b0b7c301d25854e5991d4a4764c09e2ef1a86e638d01da2e07fcc83aa497227d0a53d740302047c435bb50066306402301dc8549af76d1d9a997a685e71e289a0a88e671e3af14e445a7a927a9b81f5cd94b6fc8ee3794af73c44df98172482b502305b188c8065d1f63f842a41b6e7764b2bcf3493f2955cb4221506eac89573f51a71a4e2cffb19bd5cab221846e0a8ace80302047c435bb500673065023100eb4fe098f47d5dd9c2a79bbaab2e586b903b91eda89ec1c621dcfe24fc7773500e793c6b48a855610661dac23372db9f02304f2eb75320062bdc833881513c45fdc549d9dcdaebebddff9d8b65181d836c40a32c40f7e7a775c5328ae15ab87079c10302047c435bb50066306402305797a3c02080b0a176be394c768a42f7c48c9a9a4dee61494d7d6fceb935e635a40f1e0c4bf4cd7cb7b3ef7b621bff060230195bfb18d431cac3f86d2d3bd52feccd22c4ccee30459e2836579a49cb28e02aa83d33c2beddd63f5918727e0582b7a10302047c435bb50066306402305630f2e898695c9b209342d5f4b4d428d6dd5ce9270fb4058e06f566a789ba89769ba0e8c35a96f529ad99cea857bacd023070d98c212452d63ffce9f3ca21daada4b189ea9bb935eafc223e1f027329579675d4b46ee5ca1ee9b7225ccb0604efe90302047c435bb500683066023100f620ed8411f643697837e05a163045bea86ae4fd716d4dd6c603d132459b8dfba15961de33400dc3de68f01073324d77023100db3a02e0d32930b9da070217438d8d0201ffd101f067b9c8373754e333ae560314c6f5b89afa90658da0c95a7f2a5f960302047c435bb500683066023100ae9174a65ff4405cd23d75d3ef1f5a45915b7e4eda9628ddb7f15bb721616a50784cea63ca6d2fd92ca50bb6c4ec2a0b0231009a9ae5825f3b2a051a7ffabae75a095f4673275df3dc96e1f0c2083b80e8193efe5a54ea4649780d2af3e5db6bd8d6bf0302047c435bb500663064023008cf44cdfa5a9bea975baafce231494962f8402a09b9ccdb63dcb133305efaca8d3d4b5f6af81c70c4352b81444d5ea3023044c8b0a44f6c18dac02434ffbf5aa02da0b47da2f716f6ff0cd9ecd37ed66967ea284781a1b3688eb2db3d9266c601370302047c435bb5006630640230222de294fe651af911c576b7bafd9f55adb3f441d36be168c54b73e21ba2eee0e448156099565ffd669e5a7a4e16c8e902304d9d6c9e4bb3c4a287149ef152ce4f96603cf62663294e8664058825c35ccaff052701d759a84f1292ca18fe1422948e0302047c435bb500673065023100a5cf9d130d2da040684915f876da58362a6fd5086fe7309e5df8a2387a62d9231574d2e804b3a872d222776bb502c485023037854c77dbd45893ebcc94d164fde882e17078ce80c8cb5c8e838276870c4e5f377bd7cbfefdc40bb5fcc3018c2b36010302047c435bb5006730650230520c232b6f05444dfa80ed9da04c6ec0c80e6e47aca8813b337b5e229a53c0aedb4e9858341fcf2221179e5406c7b003023100e745c21a5f8ad33944d0c942c73fd05f0595d60051f920118c838e7294f5bb3c117d9860a132969029e5735e986099270302047c435bb500673065023041013820ffb004aa9bc01b3547a3a17a2b3d0d00e7da20b76227c81713520563c43e5f3dc6003ec7d1baf1f74919a0ec023100a591abf2e6aad9f40b2ae5ba5f1ef4a1ca2bc0d595b95ed2a379e7c1e87d204710e80053c2bc24b14acca6644d0241970302047c435bb50066306402306c9efd10a815450501e9a33eb1d9b853a328d880f93259eda252db6a817fd12eb3772cda8655dd11db6384309dc9a744023000b85db56b8907bdcbe8137c832dfe6d4b92785f2adcabea79603f3320158818a62062dc9ab1586bd22b1e89c7859ba30302047c435bb50067306502310082ac4e4bede7ec2459f8edaf265bf0e78293d35e24bbb5b593f6759650b4b50b59def906b790b78314dcb6817adc7d3402302bb4f6447abbc0ffbe0257c14377432290f927617953b724371de4b2ec67f59f29c1bc85d34da9612b177dd3895249740302047c435bb500673065023035342820bce7ec4aee807883bbab23891915c05ebe75eceb953eb608f067c723f7aa8f696e04b650e9f2679b4f1b07100231008332b719c410cc197224c988ca0003895658c16c1ef45d69c0edbd1e575730b3cb40833b85c8a724a42849266220942c0302047c435bb50068306602310098eb86e195453a51881156ba2f416be9b88c121acee02b84e19bc2adba1503354c06685734fb27393575f37ad4f945b1023100a317c7150817db0a58a3bb85f12b83bea737000bed6aab89118365945927d128fb2f1f10c322ef9ec1ec25f4cc47c6820302047c435bb500673065023100a22b383ece87ecd43d8629cae85cbd370e5c4f33907d8365c3f512c4ca51bb70d0d962d657d2a832d947d854ca5dd71f02304c3c4b4f87faeeb63d550eb72ce0c59f534cca6fc9492de385c3f14a509ac2dfe65dcbaf5d9d2cdd3585fd2f50eb7d8f0302047c435bb500673065023100f869caf86b3cd4da7e4d3bfcfb59138f51bda8f2034af5ae3510d5a9166dde61774c20b3e60733ec4d5c7d582d4ad5710230218e16792043a19d63613e9e7d247f5fe463e651b93c18bb6756b37443ab39747bf5ecbf626b28ee41c79d4ce6bb34a00302047c435bb50068306602310088ccf9533795061ce01f518d7a9c54a12105c35453986551881dc3c69b34789b1e1ab88337236f10c2362f9e2e2e76d00231008395786fe29f3cdc0d7f8ca59a11ae8a5137ad022f4c8f40889fa0a7014d866621d05050ae69b54a411d5ba496e4aefa0302047c435bb5006730650230307da1bef325eb2ad0b51de5d1d760158ad3c48423c0c091757ea1543b88954d95bbde5d7339996e50349569a12e60c6023100ab2ad8fd1035ca10aed23ac2a8e1881df3b6cf9718dd01cf118143d5e08deca2145c6d840e98ddfd989877c30e6dbed00302047c435bb50067306502307df2b4b9305348287620d3bfa454265645295840cc0e8ec937b677cfe950ad04c703937d2afacf3e0c9ed497aee22b2302310087e7d240c45f75caf0c8c6484d44e4a73f90e63ff114e41f06daca660e646a58219c7c9b20428e2079345f04c1cab6c80302047c435bb500683066023100ae983d6f527fa5ba2d4532ea643d82cb0dffeb71acf75a29f18527e4ad070b5b6dcb114c6de5e8eb5026a64697cd16bb02310091ec19c524aa6717b6df71bb31ed696ea2900b800abf59eb0b54525f1bb3cf9f32eaed592cad8bd0ef83b4b32ab00df40302047c435bb50067306502310098bd1281038195354214baa3af23b9fee8e90c9d6b4805ca5a55b4572690bbb3c28351d991de322bef1d4902fbdd55fd02306823564c63c0ab21b4e3d4d8c257461f2f7faeb1d6a036487b1f90bd1a950b527f2a6dbd9a3abd9f6868a89c0c7521120302047c435bb50066306402301548cff0ff98dbb5766e0ec863204813f20f6a6a6c3b84cc4b6252eb086327481a284647a1dd79dfd7466fd0bdd3b850023074a5b20b3b4fa1804ff93165eb3a2837d5e99567c4bb2850ba6723ccd5052f539551eaf1bd035c7e5ecedc7685fdecb00302047c435bb50066306402304004de7b08f2ca26293a305e78352ec274e4c32dd0723bf7b49852014aaaa35d0403240929628cc95b40a9c34cd95f3102302e41caa9399c3fe4b02c17bf5f9ea99e87fea700fdaaff82bf3ead4e86496d092e62721917f1a4204a004ec98d6791e40302047c435bb500683066023100c0cdc985d0520f97ab697594267e237f2089aee2f5009742da8a6694ae0d3387f25519ad418fce5f6de928d404493a4f023100fd7ed9f0bdcaa4838e89fc8f0fed2cf044b6d5bedcb7e46beeb1048f1635125e93964cbbfcb31882a164ed2e8794bbb00302047c435bb500663064023079473faf215a106f61074686aed7a7332c2978d0006e383903207d3ba5f54fbe75fea43709f370c8af957d8cdacbd4c1023051368bcf8df4a1a46c6dad55592beb166663d7deac988b19ff3357bf047b84535345982b1d520570515c68d53d24d3a20302047c435bb500683066023100e340b8e21a1f705d03d0687308c158dc3c6531d1c5105b76d1f25e213e15285fc63cef01de85ea7bb0b8481b019dc60e023100cd896b2f79b47cdcf8b918862c5bcdc74684bfd5b65d3634d83d321ab08c6cce3997897748e5b6c3d8da642bd8e7a1480302047c435bb500673065023012d679ce8ea1782e0b9d3fa55257826d214f1ca748abea6aa3ea282bbe3b5c482d04d925b1f0f6a43116603dbc5def8b02310084165e01b0486ec7b77150c90fa2d0c86ad1c07f9033d74302cd6b44cb5bd1604b63ff74b98f2640226e2d37c3d815f00302047c435bb50066306402304c3f595a5f5c4dcc82cf3c04eb4d2aa905fc5fa4fc1f5b25d5e4658739decd7c3f554e0b11e2d128ed02c8ec48232df602304945f1d0c6171230f715596ed21a50290ee1324dffb71100c07d5ee983fbcb728c20bd0670c90b8e32e40a8ea754c1fd0302047c435bb500673065023100fb0b19e86d261b7e917e15ec0ea03a11174c5eef4d8a68c4dfca82b61366311415a6f9864e96cef46612bc2b831733e5023070a4b10c0486cd5a1f1c399e76dc3f122bbd335befeb82ab8cc5b5474c640875a0e8a1ae8b3cfd0287f3fac115b8286d0302047c435bb500673065023000edb85df2f0b840bff3353fc7d49c2fc0350d8cbe2cc6927b5f2248afa95c08edd722149c264a958b68cef0bf131b1c0231009913b1856ddf6e5bdb1ef61fbab27fe7eda7a48f76b3844e442e74b619975751850bb1a5711740cc62c5f0a0ef0559fb0302047c435bb50066306402304b7769e13b0b7a241af05bdbfe2c3ac492e90565b313675240b18e6493f9ae26cd6fadb76c1385506c4e46572d48062502304f5d4a4c04254ec1d423dfd74942c9f746b7429b35ac2fd648411c3374f0a797cacf3495210ed5ec524b997813fe48d20302047c435bb500673065023100ffa96d90754353f12cd923dc114cba109695603cc8732fb86fada01ee79d90046bc8f2fa81365bacbd28005233b2b49302306a1fa5f67d1b627d0e44f5ce2bd4dd36c8491314bab294754eb107367b67013bffe7244bbf76d348dfba5f7c13e1980c0302047c435bb50067306502302dad29692161949910a7885e99552087e0992b980e1700d50eb9d123fa5e3183f91c7d11446215ff5ecae93909be6d7e023100e84dbccd6c076677dba23e63f90076481649d185b4b165774db09720d3cbfbf3231da67fbadaae84a6d05b07d29fe65c0302047c435bb5006730650231008cf32d5b668f4cb9c8886d4fe94ef11163456b9ae367bfa6b81b3e1565d0f8d2e8a81fc6bc76bbc55fe9542205992875023072a523589d4c528d82dec952c1a0608293580b5a18fd61d26df90c7453340b927cb00cdd15881ec5dee00ae7b6da75490302047c435bb50066306402307fab0a7fa13830ae0035dbc2763826c632e3fe370d3973a6ea30b0f997ee13414c8b0d88ff4f6c79402565323a0e9454023013bf719a87350b6804568545e613a2f11b7a609d99bd6a1f9deb2521ff309437caa327fb8923683d5393a69404fb3d7b0302047c435bb50066306402306a8bd803642c9abfaa28bc4ab44449437e3f58c73c8861f6d918fce872a171857ac82015f96f3d3c87fde4438d5568a402303fd654382a96eadbbdd3a979ddaa0e7aad4532552f77ab512991dc39b8fde9cac560cb88866a2ab3be0d31d38930b44e0302047c435bb50066306402301e2ba19f681a8ece0056d22021826d435fcc64b504eadc59358e81f499d422f74e96689b2ae9b68bd9b3447062ec3713023076b658f18da0df11f7ddb295588939c25bdcc2cd37fcbaba163f80dd8da069b67c8a720c500edf675db8a18f937a40b00302047c435bb50066306402300df5a6459db94c154938d2771f7d8418a95ad98fcf914541ff978bb163f8025756c8a960c80f0a0cbed845933070c69f02307e98ea31a665d8c0dc272dcc1e9fa30a7cb9cdc154b475aaa9f7f75158090925d01bdcee77db00b538dff685a938f02f0302047c435bb5006730650230310fac7e160d582ee213e2e91d1e70f49dc047068eb78dbe8ad408237528d2c41d6880d99bb858e8a9a3131a7ecc1146023100b150321a01ba83b5f839d5967485862805a41c53af03b797dac4c871bb1c69bb9cb7c75cf60cdf89a7077ee6e682da220302047c435bb50067306502307f9febd20d52f8e1f2b27692fe19cc1e23cbdf61c0e6167d32b5470c04949627de05a2ae0020f1fcaa0c0f3e00dd1ab2023100b612f0ad92a027a80e1523241747e966afddfbc49ef4f5f33af0a0f6484b8dd94c44bbe13b6bd93bfad73af7c8ed5b410302047c435bb500673065023100865d7ff9c13160fd4550430360100aba60dae86d5c41a46be184da373ab0f5ad100e3ec8fb3f583848fd84926baa3e5602304f3b7b82174d8d09a5850163292e8abf489c491ea0d5f138892af50ae885c3bf0a086f1b65c23836b171d3017cee87a70302047c435bb5006630640230171e36c0d028ebf43eb1cde36e09846d30d5d2bd2db40f09a74ef47ac1609c9077f9f24fcd5b16a9fd75ac201f117da502300ab7bf952e4bb69da8db4ee14802c142bdf83bd652ed91bf7b146c2da35d7d10519bc659abf16950289db58e1204c3270302047c435bb5006630640230798688721d207cc274c9a9f1ab18b3eaa650ba6d16e4c6fad0d88177d11261f8c0c386d499008f0a85172ee3cba8237e02304f4e5790cf4f1f5bb41a9a853f3fc33ff5947515ed4d334709f2895d33200164e4cadf8db088ef8ded0bd94c2c99824d0302047c435bb500673065023100a188f0dfd9424a5753ad2e4a0a96cf4c9f37ea4863ae798b890a38ba5b521cf38fe481de9144e59016864dfa86908d25023013250ab6c9fc6932673409cf267acbfa6ce30e7a8b31492f4f47f9f689b57a68077b96ab2e8d81791b38482e6a964dec0302047c435bb500673065023072541d3b7b2baaccfe45cb8546a4b65ea3ee9e5d05013a3be704129a8fa24bd974b9d9c1818b583f1e82723c7a616085023100e5b58403950120e50129f087a09ce4adc9a419ad4a0d93a1355042f4fe457d34273f9a7f09b95d6ad0f4407a49b88da20302047c435bb5006630640230554d9886becca5e65061d5821ef8fcda94638504270f180332cd30060c28eb0afdc103e8453133d430e8517a30213fe9023070162b5ed1d1df2feb738fb0018f63b9b73cfa4284e0253ca6686ba7406a78cdfe0e3f35f7dd776509dc98678ade978d0302047c435bb50067306502304d3fb46e25db55a31b49ea74f6c275ae28a7c4cc4cde77b5c6b62fb33cab825c7ebb0e3334149e60a037f9dd2685cbf5023100e42d7950343332e75e1553a7c210623cae6d933d69f73f4fb2c3f0088ae61e43df33e52549b0b962aab274d61eb4ffa90302047c435bb500673065023100f6754ea4406886feabffd570a841beecb9a075cdc015afc8de69701c2af80e9673c97dc85ae072e74200ddda049988f002305568490679c090b12a6c023a7a4923a3890a69f9d4bd8339aa4e1a35efcdfa5bc6482c5e2d467c55a451f8b257ddadf80302047c435bb500673065023100b8e9528119f3ce248798f934cea4abac5e73f0feff04c8378b44c7e707ce94cce96d0a424076fe6fc26aec63a0833d8602302a904b203e674b87c779eec63711704ce0a8ed9701e38428adc2722fc4444041fbb383a49a71386f2b815823e55afa4b0302047c435bb500663064023045b5e4507ca61f22235d77e3ad5d0a4b751f181bfa9319e6babdb51321267bf942a500147b37d8610ea9b6d1f7ace9e302301a08053fb8c7a7559d397c356e3a02985e5a9c05db9f543efcb8d474c183b0f7c3d33c627672f35c0bf2321cad78936e0302047c435bb5006730650230338dc317b46f78cd2968212996a5a97ee596de430a4e27d8b271a262500ce6fa71c31dfb352ee16a25beebc7e6ba6905023100c1bf366a0f8a7d64641ac1fc0a76a8154c9ad176b89d7d104fc711e06d157ef5dd8ffb5ad1b7fd6fce0616e34a91da640302047c435bb500663064023044ea316fb9c6a03a1f85c9d5daadd2120531c1434c5a07fcb4bfc642ce50ff6ff196fd11f1b0dcc8d290ad36244ef92502305351bbbc61b055728ff98090158ba470d7bb39f630671961aee132514404f4281920e11b48b86326e19b79d47db81ebd0302047c435bb500683066023100dd44ae2f14886373a3078cb5fd48c49be87a50e2404a96e76cbf57d0e6561850ca9c7f45584719fb1a5f86bdf9846aa8023100fc1ad5b26d2708e702df1fa64e4cabcbddf4f3abc4f5c125b479903f229216e0d76ffc369379a86e0c2baa7d678345a10302047c435bb500673065023100a5a3fa809defd55368b6570d4dc6a73b1b60062052d6699e3e3277311bf425378c0520601d88c74d0d81a7ddf9e9ebc1023076b3f610f2ebf285bae1bf48166f4e222027b9d8e199c0c97cbc7d34bd60bb215fec229779d6915d4ed819d462c2449d0302047c435bb5006730650230681a715936380ebc4a12831c6807af58cc374d1ea795525ad13fa40d6da149598aec1f54fb89b39a63be8a55e5266698023100b037d2dabf49be05808dd8a90c1962928de6783c1337ccbb29f8c210bdff284dce0f9f158c5d7dac7379473e9f245fde0302047c435bb50067306502300939ee1eb3bb00e91f2b12f5ddce377f3fa896cc1b5d256603ed37a6a6f3711254a4c73c23da8a629e325d8f0d3b8e05023100ebb81bc9dbf24bec31fbeac50bb2c8fc7edbf05247864a36a3e22c7ecff7cf2469d0c86c01a1ace5067427d57a16acb20302047c435bb50067306502304d30b79ad6d507421b4c31513ab0090dc6642709bd1f18bf26365c880740b19d5c794b88771d28c2cfa2c11fd7cd698e023100aaa8cd8e3afb714fc59f1c064e2d12c856770c6db94826c45a3018bf41718e071716bc484c84dbb3540d9cb7557eb1790302047c435bb500683066023100d47fdaf59ded14027b42670d7abd0053ff794a59f4132f6d13fe7c5d42a16973af4d8524cea0e377bbd1f6fa103c928c023100b5d78faad5f57f30ae418fefc0260569c5aca7abf04ae24b5a504d8cb655302e359de3058063a12f2d6e36533feba2270302047c435bb500673065023100b93dbbc19a5842f6b0ab40791c04844ab952cce978210d0a4ed93d39f9ce25e08c226c9f48da076b7dfedeb195950f5b02303d55391c6261722c1f2480e74f3ff7425d3fd38aa52d280fd974e3558715fe4bcc5e174adafb5ae01ccafc4fdb5de82e0302047c435bb50066306402302b11f821faa765fef312e0534c48f9b2303269023fe5dd67d27984d2cf447d6adf46c5836dafffa2bd5308653b48340802303980629c8612511c75cebe7f303ccbe5c5fd0031b579aded85e728e59799d1bd289f4727fb2586f8c06d2048d1ce3a590302047c435bb500663064023100cc8ab9e5b79fd7de46ba97f13c24b19e9c6b1dc2d0c96336aef54da9e0e83dace4b06de3819011e7b9760ca25a8cdff4022f020c18f7f96876954bd2cf9166c075bfb429b23c1c3bf4899b247f12b4da7b6648509703f7fac7bc1064d381b08dc70302047c435bb500663064023001f21ebffd07fdec6382f428ff1e8de2cc30e9a53bab516f567fd8f580385e9a49db9b9029e891bb5ca27ab0f2adab0a02300cd57444d1cce0891cb400e73ce4a2a6c2d383ccd50d0558f9ada32c69b647703721c4b2501ec7a46b7aa8fef54f5dab0302047c435bb50067306502306d344d9d8cc310d8805d222a9a939be80cdf0e46922a9906fe18c1a4290470c71fd013af2f50130b4f4a35808ed7b7c6023100909da8e94d2a184019b83d1c61689d3b4ac9235107714f49cc6e8fe55017eb060436120972232ae651fafaf54e8749740302047c435bb500673065023100b38e1e2f900c5a62c57c3ff3e083ae538d3029df04706f93620263e9200410d6e1d914eac38b2951b6d7ba8def85d434023031f82802160014bd010332f4f6d405223b4855bf5d162c188913f35e8e395b45c12d1a5dc2d40bf751999438af35fe460302047c435bb5006830660231009ebbc5fd98b869c8977041ef14a08e545246cc223078fdea70e00f868e5e09f0f071c3274a3cc8b17c76953cd20c2ec902310080025088dc70e6e54e5c3368670b623274df32d9d6b95b90d36ce6ecebc7979648cb9396f8d5ee9c1ddfa58ea93cba6b0302047c435bb500673065023100dbb97d50acac547ca7d5b53512f90423a9125f3701dfe12bb7c0a6f5af777b8dbb67d9b03da216d2be76dfd441511d5702307c0da3b93218704dda59a6b38bab942b7447f79d1d82b6aa55fef6abd2e3d75cf7ff7d2c432302557aeaa8bf80c75c010302047c435bb50066306402307245f5c04e1276517c7dc371208ac1994262ef7903fffb230a23f7606d513ed8608c07844c19816d089d8b355bcc5a29023058d05e2ef3006ae37fd521e5ea99786fc87dd151bd696594b09713a8fa53b44f3edc1a3ac818b66e0aa19511052cc43c0302047c435bb5006730650231009cc545dd856dd04e01235c17319b9b236795db6c063bef87bcd1ba5fa50e9520bffbaafbbb90b3ec852d8b76ba64da4c02300bed5397f0cd224e048c1b5f4201eaa6789d9a0724c0367b35ddf3722a5cc49e2d85c46cb945c7f9aa73bba181ba71b80302047c435bb50066306402306c1d1280b6d8a88acfecb90a66c1d51ca61d78d8a4882dabf3b030523d2091164d424e7384b9e1214b8a369a730fbd7c023046c9dc52ac57ee5a2d917115d7bb7a20b4eca8d90fb37ab3f4152a651425881ceb259ce9b543f332c32d017a268556350302047c435bb500673065023100de396c0ce2717187e189c17494b3dde7c2ff671eb5b3b8b3f229a813658cfd3004b14a672f175d3abecc203282e3f94d0230694b517b8c67b4caf293b60376022a66ce48200db03c00edf511f69731d6f3b94fd3a940721aa6717a4ffdae85fb2eae0302047c435bb5006730650230397c83a8e45207512a0cf9db5dae66a6a4037948080ec53d45aa9127c8f832fce882e1abf1f0acb51a597de9ac388c5f02310090b3e6427df9365b34d8548f902efd6d030f855b55cba2a0c96966a61819ae25244a367e6812c3d1150eef58299018120302047c435bb500673065023019165c2c2b673fb7fc7ea4b6ebd02ec341b892cca91c15f0786271d699d0816b39b1832b4a13c82d8aa74750771b8c8f023100ef0941283f5ad3e24d7e69b03367188512893f38ba28b132a007157db9a6507f079555ddb101381b1466fbccc45eeb730302047c435bb50067306502305334dece68d631b8f3d161e7414a227f6d8630028164af7f4c78528972da2611b87a5e46d81b889edff9990a8670dcac023100b6b639006dde033f569530ce359c57942cfbdb36e36ce05b2b22e24f27ae92e7fd031bf0e7bec7fb43c573936daf61300302047c435bb50067306502300e352039d118368e88350bd82b74ce01ef44eb2a818ba945ccacc2167bbf91e5b233c820ec7572d51b68a5af92aa4fee023100c611cc314599b8a6f109d55a34b91f21b9acecc11da3a487c4fc7b0bdf34193ea85832e7e3bbb57227ef75ba2c13ef930302047c435bb500683066023100d44893bbb5905d67077dfd2cfe4e3d7082602364ccf9d9107c7d48bf39989602473d5a67d0a9094f246c964d6eb7e45a023100b1c7c8e114631fc69d57fb37c97fa281fd6ab46bc2d0292f90ec84ae3d07b166a88e852945bb296bb571df045ae895b80302047c435bb500673065023100a6a21e073eede291b6e20a439188f7293a45596dc80fb963c9b84176ea47018e15c347af47485a8c55a123875a75875c0230202ca1f3c7ecff1d3699d8ce480c77a567ec28f841968b64af39c239fe4bd1b82a3b38cfa67739c66fb174f9d7653fe00302047c435bb500673065023100c09a90ed4827ed920586d2f307442284a92140a6b56523ace541802b8948026202eb4b439a663d7e623eb39dffd6e60b0230194d358321fd9370c57c37704393a0eccd765f43b3974315ccf0516a08c66c29761e04439bb2540f72b92eeabc7eb7910302047c435bb50066306402301116f5e5f0a50ccf4e3701dcb2feb4e6ff543958fc186482d1cc2337ebdad28dcf2b31a9502afbd80c5b33dd6eed1f5102305e9d5e2d8ecb7c793d4f03e01d3eba924f304a5dc803fb402fb21a15cf783b94dd8be18cb1aa71577691f907db0c1dd80302047c435bb50067306502310099413936cd51d03eadb6b2baf030d7b26cc9d08016552df9775c8a128c5c274ff2e036d6336ff4bc84ec6e650fa4becb023059910b6eb07af39956ceeb0e067245e2917ab5656bac7d90c432330f391a1cfad55ec4af2903909be36a92b1246ee50d0302047c435bb500673065023025c13c483a0e9c757f6833b1c0afb243a423ec849f5a3bb521f2d1dfad67a72c45cefb2e2ae8c6e4040cdf1204750dcb023100cd5777885c94164d477d4ccbd0768e7946d79f965bc777567bc0e04f974fa369f417e3afe4410f50404a7d70db18e8630302047c435bb50066306402306a65f66c3474cb915ec9af1fc855c922f3c6a8a47171fc96d127ddff3fe78e09e538aed045899f68987cd2778d8ea4960230357d1418d9ad49afeeaa960893aa2f2ccfdbf8123bd268b922e0a5c1f1c0a189985ec496f45a0340752d90bc669e9f6a0302047c435bb500673065023100c207e0e5d9e5c11933366c99730f73462741170a1e09edaf24d9d0767caa3bc52a70186875da04d6e2fd9268e14703ac02307449169019b814ee12379ffef9d9274e6f5423a73cddf971a1b382eded7745ab0fc7fc4f7edaaff2858037e06edcb30b0302047c435bb500683066023100cd2f992d7d74d715c2971e42a095dae93e8c00ac6e1d02c5c5ee9357e5bdce4315452d1ebcc49d6d16b7be89af7293b202310098cd69822f9ee5bc636881bd27ba6bc51426a787e9173f4f54562b8ee393913c322492c552d0b5b78df7a5df2ddad90e0302047c435bb50066306402302ad015b9b0083ec8a5f148f25033c533d9b46657b98da2906b1a8e518a3b552100ede603acf2c43168b6097791e0bb17023077ebd2ec6f1640cda7d6894e881c20d13bfd2cb03b335ebc0d5410e6eb5f4dd4cee4ed61312762bf00bdb04f2b6402a40302047c435bb5006830660231009e0da2b8e8fdae05d330846ad40397279b0ea2fc64fcac7465bf045ee6133cc0db002fb2843d82734ca0dd6f37a6734602310090bf900de122cc1fc71cd1a14323f4125171cba5dc619b12b86670aead2552b8c945a43e9b8ed50964422b2465d12c860302047c435bb500663064023071d06033f62a3138f4237156db8dfe9ebc65fbc5ff9d8ec64687be8ee418a023d44644990926970829deb6912f91c9a2023047315c1c92b9e0f2f5f6d3747a9f0c908d5681e6c81da572419adecdb7bb0483df707a0b3eb77ff22a484cac84584eb60302047c435bb50067306502307d9fea34e3dbcfe625a9be335993718eccfce1aba355ded2d28751a026f73c0235253a2e3eeeb7d544fccb69906ad464023100cd62ef2b1df431f0ab1a325aba32302decb5b961546975aabbf3381e8c7e7d5a221825307dd9055c82bc24add1fcf1600302047c435bb5006730650231009509e786980401ecc80adfdda0de413089bb729e9badbe2c5b4bf6e344ecc77304eb61524c163334a8e2a04378b17882023027daeaf84dd18687a0816c80461216f60c14c7faf1779d1f2a7a8571bdae4cd7e653c29b6d42ca8144e5f0d256e0d2fb0302047c435bb500663064023033a310f1f9a90aee1c0e1af6928b0fba8940f2c0a8b001c0f0f423261412096743efe266d39383f50a863c4d94ba1768023033c1392fb5c4f1112b52498656ca7d3e1baa654e9011dc04a638af0f12f72ff41f8f56ea55f723c7a11a883ff5b5f8bb0302047c435bb5006730650230557465b7399805cf6188b23fa3f411e26eaa1a53524c68b7927b08c964009526d2002200ae1d2e5ae4cb5fac5a8c49be023100b1b495ec0d207f2d250db297f447c38e66e1fbf1a192cf5eed8e54fc63ecd64899c4c50516ff7c2ec2d7a0ec139e2fc20302047c435bb50068306602310094ffeee6ccdd8c2ff0668a41784d3c4dd985ef103c6425f43c96d24c692b3786f9d4b4d3e80adea8c94d49f25afe6ca9023100ef94cca009ba1413da2b3e97dbdebaf662e3235b7de092e7d46604a20d21f22ca3a2a6cba85b8caff71f1d73c1b296630302047c435bb500683066023100e2a1c38f102c14a2622aaca18d962349a7d11bb8deafdab2fe28cff06c4ce93b64ba02d9edaa5bd508121fc0a07601e7023100ef8adb60fa7f7b9408ec0674895510098a4ccbed44a896e7d116f09678b50c736d1022d90f9e7808c8922bffda2675870302047c435bb5006730650230175e1c64c3bddd1e3152396a57ed07942f7f3187ea5b873abd23b921d489caac9dd304e5d6d84e796247e00e07298b88023100ad57ebae853f1cd3ae893c6cb55e52983ad48d56c679ca9173db6d1ea0d13d8cc7bc130b00a5b90288abfa8617dfae770302047c435bb500673065023100f92a52ca71962508684e7a62dff83ba8bfc7b0315419b5db7d57794867738eef95bc890f09fb4c3a268ac9d5ceb53e650230116983048f70d665b17cb68b5cf27d2a0f88a711d10c78c0047dcf86958e362213f19321fbdf53e8e02181bc715b21bc0302047c435bb500683066023100e0ba3765e6c5c51fedff2132a456f509492a8ad5b88d642b2f86a78673d7f33d69d8abe410af05b4179bd17363f823db023100d6dc9f0418aa21799cbeafe227114efb13a8ee4305805afe8c9b500a626f4bd045ac679474a1e7f280ae6ecfa5a66bd40302047c435bb5006630640230611fc1ecd222226622a87c65889168e14632a4d654c1bf37f53845b91ee3a3e7319855de105c8504bf71f325004b6d44023027f43977a5d73c711ef73612422fb21457e8461b87438b947912466030beb7ee74435b4bb472527e7ae1ae92f40677af0302047c435bb500673065023052a3b8ba0c90d6ae3e56f4b04fab8473c4de5ba3083e3cca4b1c91c54731a56037f5ebaf50d6d6d4be9ef3b8b06a587f02310094a5c26494d020b322fa3081534c8d671aff4d5959d84bd6619d18ac21299da0ea34cadc8aa23cb05c887803dacc41a40302047c435bb50066306402307de51654174cd4fcd42c8d8d8de2efc7500824eaa4b367d2db236299a55d3d6a8170837224cce6b2f764e463b5ebf82f02302e14ffec7a2813c34137299330aaad8fddacbd056660e42222b8837b9ef3c135302dec745bf9d7482b041c4d561895310302047c435bb5006630640230125366975c78b3b6afb46d3c3cbc8c6b756af893a664b1e3e21114c54b99e074f641d2d367c233aa2bdafbe8427642ca02303dce7c9507e48b6c220ec27c015b9e60c2cceeeccb635af2a824375f1cca87620f626bfb17851605a44f8121e5c5bebe0302047c435bb5006830660231009452c2cd151a95193667bc6d8a822486eb3ac41e6c70137224b96747274cf9e9ef5d46a8d6092c601734cce767dfcf81023100f39e6a39f7eeee660ed7e9b2ea936da7813adbafcb6c2515eea880fa08d9d1d76d7c145e3a9e60e2ed00f22477cfecb90302047c435bb500673065023100885d51cbb8df5becf83e39fc2da9f240d685939c8a191830a3810dbcfb2a89315b1306e88fa4fda15073818ec3f27c340230546c06c8d4e6a678af6f67d070f391195194b8bc813692e663caa304d42ca6a9024b35da8bdc0ae97ea9587951beb7610302047c435bb5006630640230465eb4470ae119a1a30079aca7558a936ac5f7329bcd1250b03c15d969b09400adccbfd085f3c07d2e0bb28d77a4ce18023017573d4d4488ebcf0ec14fe50d0d5e4e4a58b201d566dbe47b95d7962dc7b34b765b503c271c950b45a1d38472ea38ee0302047c435bb500683066023100d99f127c9fda1f1447f0b33ac105ff8bcf8f817ff8508f1ca6a56e784c7ecf38cf3da1c5218c9c42166ebadcd81d00dc0231009ef3b8cb78cec4eedf462aba0b66ade6714cee4755dd5ed53299bbef8ebdf722200cc32f7d8ac6244c348fba0db155570302047c435bb500673065023100f827025414d87f047e8ee62e8d58702632b60fa57101805507387f049247ddeea15b967104bf27a2ee85cd0b945994af0230660248c9d9558026410e6e60c9a5946f39cd6abd356a7a47eed62e0d316019764524be9d59097add8e01c37bc78babf90302047c435bb50067306502304b0089a65149f71362ba2bfea4d3ff0ef4901a60afb090f84ded5419c1c2292325bfba8c28a5f9c992609836928e6c47023100d2051a92277c9bf8c48827fe13f072cdd95229e5a8e31c67460ce210635f4617bebc3767fd42f811208c7d0ba8865f050302047c435bb50067306502304b7dca6cc8d963d5fff591e73f5bac4020ee7bd0d85a871bfffde07e2db65d273e09d6c1c3734a3af895d3390594a54b023100a9a233cbdefa4159445884b5d9b05d5fbd867034e474d5d959582c9ad35262f5c1a501060dbd658671f7b0a18225c2a80302047c435bb500673065023100f6a5a773c4e4ccebb8832b95ea8853c4960d8208712b35b0dcb7f27c8ac6c899b84af4609324b2e6c6e4f02110c23779023074fddcbbac3f06a1e2403ac92264b1bca7425b51efa17291a393fa1893aafbb7554439dba275bbabb469b40e8e54adec0302047c435bb500673065023038a17b2d15ff105e950bfdaf3a518bad81f1b26ec487ffad75caf9cbb5ae20624cf79d1f52e49a2b5403dc407af9cdd0023100ce3de2d7effb0e08deadfa4c893564d503a2fa8ecc75c18d73d48bc0abcac720937d74d546e67fb44d1b19b571a61bbe0302047c435bb500683066023100c1ee740b283ad35b92dcf13b4e27955db40a22f730d21a62b974a7b746f1d6ac61b03f73d2ebdc8807c6a08a265c3389023100d18a69060f4c860ffdd5602d4a7e3c4c5d2a7008fdafd91ef365141d778808e18f68f010d872a066e69dc520e477ff220302047c435bb50066306402305291ed7b2b6b732eced73453d683803fa35b537718e942cebb65c8cc67cf293e800799a9185f8b42e13eeb8533dc42ae02300ac5bac579ea97b6e546146bcf71a7bf75ef4dd621c313274e7adac71df582675be848f88939fb1aaba8784cab2520820302047c435bb500673065023042c7cc1ff64a3fb428c04339c7c23fe121149347d95115dc2948bfc1fab6acf05f1509c5f1021dcc79786239063292d4023100ec2ab15eb0be33ab3d57f399f3b98118483a236ac8157020e370df92fa06a6bd7fcc15669c4cbbc8b22ca1aab5a81a230302047c435bb50067306502303c5082b9a7e7c0ae3b14d0ee624d85da056abdeb645ffcf49f936e40e2713787cb748083cc76b526e876e2c6944dcfba02310097b6f03ac58fb8cd22aae4c137d0f1916a2cbdcfeb045d9eea6563f1e7f36965038c180dfcc2509f7a9e3c6d021401b00302047c435bb5006630640230086bfa8aa9c30b1b5abaf4ca50543f194fe296d26fa8ffcc1f45c91801df394f78de4cf94b092b07843e2229290b243602305b8b68b9589dc5ac1cd3198c12fbb67301a5e79e2ac38a7dce70a456007f73046474b7c0597565d996153df63dd8cbcf0302047c435bb500683066023100cc07d9fc771ab44866521e72367d579e0f5c628240659748bd57404e0ee578b7c53795a3de237a740851d84b1626971102310094ec20ef3ebff21dc1ad4bcef5e990a868d7dc995246a1effc53e87f9ac4c8fbc5713bb56d455c848847d25b0b8b1fe20302047c435bb500673065023043a69ea4d10daf22937007902d3e5213767bfe0beb2c7fca6b5c04688027391f9b61d6375dd1b0a54942615e33c58548023100c4866b3de77407195745cdcce508460ad328b67a9b650f7da6a228a3da4e79708a88ba33fa0c2e6d4e31f28e2f5720eb0302047c435bb500673065023100c0a8ba15165a203f309a6e04ae0aa3a2994360e1fb61ae02ef4a276a40fd79b39307d6908cc0a86cf17557dfaa714c760230434acc32751e04a5d3890c2f9231f8cd7413466ed1b35a3530eec9454bea58aeb08c523c9ed431c847dd48ad03f76b410302047c435bb500673065023100e2ccfd90a9e99eb7b91748bf1506da6077e0e1dd8dd4b9d68dbfcfc24836b41c80f12de476bf11fd9c2a9ae77a857fdf02303cba355ed5753fbdca48963614b7a77c45357fe88386175f209bcd86941f74fe1925970a438ecc06b2afe98b564837930302047c435bb50067306502302dd80bb94fc6072b2e9c77d31dd1cd763619810ed168c179a14e617e22cbbe141d590602f6ca60304c811daf35d3a100023100f5b6258c80bb2533323b7a3acb76084f9b19652b4d76ed6204fbd7bcfef43b68c29344465569ef350fa6a6532888e61b0302047c435bb500673065023065dfeacade59243d3e79d1607360b4c2d874bfe0717ce62f28d3c2f67a370fb9f91f4374beb22a562cab6511692f6edd023100a8a37ff125bba060e5413b1144cc4bb9fb36dee252240898c337ac1c9236ee313c900ad268e293ab2ca1ee4de196b6080302047c435bb500683066023100c5a5b8127fa268b46944ee0169524d82537ef50a7d6f2bf78f0c1e3ad23f92465028b670f0f91ff03beca3d77940a0f0023100a6bd4bc493933db0c45350cb595d0cf6f4b82475a974acc76665cda058a71f5639f7ae7902e252e1d33a4ac8c447c4300302047c435bb500683066023100b95d76b18397dc70bc457798aaa0e6ccb69a40950161a02516da81c63694ec6b61720edee3b6ec5b8598d41bd13d3cc9023100e38c139564c0e60477185c0fda58717962c56fdffd8c54e8d6121f28ab78b28bce1f6387d5ac5cdff82cd477c6ef394d0302047c435bb50066306402305d611c5d079173e50c145b812f50e3cf7e8b1987e000dfc57cbb455b4abdcb0047291271221f84a2b574b105918c3422023029683efa343a7c46f870eba0842953198c5ccfda78ec40821bc4a90a844e7cffadda1092edf232878e2303dc81770d990302047c435bb5006630640230542b452cde513e3f3c036b00e44bb41b7df48dc888e905ccf02c0d7ce94d36f7d5e0f8ee63e354ba07ee86aa0ac40abd023036a71e893f438c745b8d7e9d557090d550f0870ef4f642ed1ec0d8fa4500a53a905e94f31b712d9194e329c16dcc2a3c0302047c435bb500683066023100d4deaa097e461848607e7f9656523685c3195d42a18d5e6db79ed4ca28f72b950adb8c1e618bb8117c24e5f7b63bc5fd02310091e37a2f790a6fda2f35ce226e8e77213babd44a2fa9f3fbb2a26da6fdab5b53f3906b4bfc883eed1f5db370fe896c210302047c435bb50067306502301c574d4bd9569d9af019895f47d4a31eac7402da334d8a454d236bcad2715873c251a5e841acdc751e26086b2c2b34da023100ac69627c6aa2d656352c461ec39c6966ab44ae8434f194df76c28590517001ccfd080d88c42e3b08b47a619a6950209f0302047c435bb50068306602310091021ce4adce5b145e4c234a2be4391e819c8e6c1d4ad05d1323b308ca00cb0d044de50060dea8bb0be98b8d652f1b8b023100914678a29e884e67bbed3d4a5dcf88548ebefd538e2ea748eaa41a518a034686754ba052d1f9b2aef38bce0de7fc05820302047c435bb50066306402305670f8efecdb0f7aedb65483ff0b2a96851d4d0c5d7dcec24ead9e366e2ece868780561707801b432532a485ec50d525023051762ba45b129a84a912c1bf26bcf500b3b4a311578ecffe33110a0698eea0ed0d2fcde2367023a1695ad8241fae69590302047c435bb5006730650231008b5095456a785de043b5b4787bacfd117a944f0c72b4154cb19cb211d4462f3aaeaee571be40246c0018dee727366ba30230242467037499a0b40c0d267a2864be17631783eec43482adf40de4b1e955196b9b1a1aef884ac081bbd52d00b0b260120302047c435bb50066306402301f8bb369b1b35e44a026c842bbd2770ac15346b1d528ef10744786ad9037deadb84df476eba67580353accfebdf7864a02305f882391fa7154e67849f3f8044389ddf32748acf7e775e9894e89800abb5d2a15c8dc265eb693bd30c1bc268b49b1b90302047c435bb50067306502307cf941f7bd88a9867b22ad17b980b765889032b3eddfe298010425a41ede777007d976d5df34f40c39e81f3da8a281a6023100e58119f7eec5158572150b301f2ce029f07f622d7b3f1c71ac171b44bf340e76c280148d4c98108193ba73517c4b83b10302047c435bb50067306502303b19f95232795905fbd5d2dc5c0871ca75e1862e1d9c7178fcf9c7040ec4c054a5ce3d92043755016bcceb04a026bbc2023100b2b28e759a1509044236dd1c3246050bcddfe7a4aef0278b95120cd0ee97599ca4919131f4a60ada255ab743dfcf6f9d0302047c435bb500673065023100c10870f0ca7021a1809850ab03b7e4f39fe94322921c8f2bec7d8ecddcc4a7c713db242780de2014c90bffa1d09c934802300eb1d2e2ab4d242d75a7b06a6cd19dfbc3f0e483d3c5baad70ede3582a99f2a985ea77cc12c754fde0080719d83830680302047c435bb5006630640230729db644e2a536928d8cd7c291f310c8d55625279d0b893a5dcd72fc161dc4ad1868a0ee148cdb8cc9b533d2290a8a7c02306f9a2e0c896fb8aa09c17208c902d352a3097ca76790a96e12a826f8a93b302cfe5ed748127f6dbc225c92d83e33d8460302047c435bb500683066023100e36f05cb815d15da36294edba2221bfb6e94db5fb63c32f0aca6253fb6cc7214f381572f1af875dbaab5a9e72f1c527e02310087b67c89e0797ad0d588f6638dcd3cbd5c5ad7c7e2d3b9e90ab2b2c42aedbfafdbca9523dfa63a96a54d593ac96d0ecd0302047c435bb500673065023100d1d19581f0ac8e294351dc03179248dc98cfbcab5d3e823068c857afb08b3571682a228225028518d825383ca33552f102303e83b02945010696f30bc0caa5b43052a31d76f49b188e2e44f67ed2fa28a9defb4b91b77435914fde288fe91ef05c5c0302047c435bb5006630640230395e9b1c6813cc8e6c4bdf10ca1eb35d6ab983e21ac13da33a604b2201cd651d4d9621039be8a9d4ea717fbc6a7f231402300dc8c903651c357ee4006a8ad42f10248079aba31d8b2a7c79759bc38ca4caca8d98005fbec7608cfac50aff9dc1125f0302047c435bb5006730650230774e649eee68998061e9289e882cdd3622716541c23aa09d1ccf700c83eb9705607b6483eb412583c8edf62593ff5d13023100c135beb483a050eb0635abed4e4e710917f5ff0244f09f93c0b35a82bfd2dd6ab0b836786d37f57f0fab483eea9998c30302047c435bb5006830660231009de1eebb002d65081383e9446917649656b6c2d6bbe80e744b89c9cc82126925e5860e9aad241f77da3b4734e986af0302310091a92bd5d5c1d57c672e24a5edc8fe335a3b7a5b67fa684cf08ef707a35886cca15e9b7e8e7068fd37fe15ee62a5658c0302047c435bb500673065023063226ff6cad3fa89fd692824c7e5bc7fa4a7bb7d137e9100e21671f3b4580d676e3c2e21674e061b0cd1d1d00642454c023100e1e01e14eb57f2ce676eec7268f28782a2fca839e50d59f63343c86aceea4b4ea15ccb988d71dcb2af8384315fc547f90302047c435bb500663064023025706ece9f72419f6354cb98399d7179145ab2c916d3673ce5e1cb82c372320c645901cdbeb1cc0caea1bcf6da7aa06402304f9ab8624537fb48d70abf87424f902234faf7004ee8236ec85f39b05fb46613cea54db43107242446f102b8f4c028f60302047c435bb50067306502302f320e1fbef27c1cb013ead0541fa405e82ddd1098c0ac47ecb744f0ce8bce02078de8f5f39c458ef170780e2ad1cde1023100f5cf891093c738f5110b35ad820a352a444940bb5fe99429664f00c9fb2e570a1f05ccc2aea0c5a83fd67473ab50bdd30302047c435bb500673065023100a615bfece41522afe4ac19f34161b27d4bca0d72a7eee2573a363ec3bf97db4d54c7c6ea95635cd872ca6a3522aa38d902302de8afb489546a9b1afe3e1a64db022ab4b85acedbcd8b970cbd13cdc6562bb256949887701573b3153ff5df6d0c3fae0302047c435bb50066306402304f4351799912d844f5fdc87ea260d2d8b46ef80e95aa7532cd1dd6f814e1a224c74e61a95b1e40a38af91c9b1d6499850230739b7a23a6040361c9d370690bfa9847ba268f71a23eb9f67a13c07a83091edd2154dfe24565c9f03baad4c4316a90930302047c435bb500683066023100f0c188d076fa453a5eaf846f33075669304c4b9441dafa856a8a905beadc51a29389e81da728e4bfb8e02473ff95c0e8023100fc25aaed1e16d2a66b7869603c92fd42de6188d8a8d137e5295b8c090ac6ba45d07489e6931ab0f3bd61d663f6c1637c0302047c435bb500663064023013033165ab8a202f53d66f9ddf663e48d2fcbec89510fb64f9aaecbaa0c64c660497ebbbefc48e07118ba6e25fbc6f5b0230043d1adacd6d262d232011e1d627106a74d5b323174def60640d187b505ff66ff3d46f1c664a5258c0f0dfeb6f847ed70302047c435bb500673065023100e55c9f05f9c44a660b6a4751d1c64cb689fe83b107af406db137a77ea79f043492af18c6b7d44190bad4daeae55def5902307f60d96a5b5be0edf94545fe7768275c8c4e25f9aeb7ca7e280cf33416b048100abd365b3bea2ad8cb336218f8e1bcf50302047c435bb50066306402301f6214b95571f63ef87c812d516712e1c1dffb93965af3d364409f22310883f0e562b9d7b6c09d2d37c949be9a41233702304f3c0a237adbf976991885cfccacbb407c869c3642d22cfc2c82030822020065fab7cd8e62d78e20b5034f10b2df99900302047c435bb50066306402303b67c639bf59c2b646a253d3005f6ce28cff8db72521e5817da47bf7c3b548959ed56c036efc019b643055efd5882da602301b8470acc9c68487104871bae579cb478c9ddaaa98fbc5260cdba3baf552d9c8eeded70fe0a1b472cb1ce6fc73f3676f0302047c435bb50068306602310086aa2b9a269361a87a03500deee98cc7c001a6b04e51f81548dc559c0c9e77a72ab6c011ac269b0e1fd14ccbf6358188023100f21dc4632b37c0ef42295d5250bffde9cdadec57503ce340f90e62934dbfeeb14e550ef9d9f58225c4be4a724fad6e5e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cfdb2ed82527eef9cc67e427702ac84934a892fefac1a368d9a0145657a93aac2ac01202ef0a2f036f0d11673b5d8d2c023100fff4c0e76d4c2b74f0b8a91f380f9e2119df503e001977b2d58f75adff1ef078635bea02a9bf7c27df821692d5cb8e790302047c435bb50068306602310099ba1ae06a397248cd493c3ad32a6b04d45fe285fbd698d40e7fef3f778d0cb1a23d8e714415dc4beb7838e5e3424338023100dc48b77d0c6094741d5f5c2511d96a269859c2efb1e9ad342869e07600165359c37b2aed2fdec5ec2f0ba4698bd40fcc0302047c435bb5006630640230647a4f7873b62c1c665a6ba597df0425b649dacd0bfbda2c3759201cb91b7bbdb7a2f11e24681dd07c3c9b33fdfb999a023016a44f312c2303b26b63d73b46f10d244735279a3615d5e204c1997d844d2e811aaccf3039dadcafacd5bf1f124b2c9b0302047c435bb5006730650230559334b329a411cbec40746786e8155974dbfeac4d1b8b07d21cda1c3361ad111cce7708e14749a9ddd5bef82a8f2980023100a992a31cb0625df11cd23451d59cf67c66632c88faefee632c5b1b9f8385749b8021502cf665f075f73893a2f10d69cc0302047c435bb50066306402301895a720f0794afbab84e1a129643b3fe14161e3b0a2933c19f106698c0cf8d4b0cf0348f919bfb372740d055d2df8f70230726b0a10eed7f5f36095c98bd545be6c0181e522d4abcadadbeda675981c6f7c1879a551852ca8a3db8e20f969ecd4460302047c435bb50066306402306226696174b9a1d0559f85dc5aba7a091a1492b7242284282c0d7352148f7f6f90568f51130203191b9911ec1644776c0230354d8876dbda2be8ef0152636d92a98a211b81365e8ae105b0890be5c1be4994207651679f1788bf4035039ea30c50460302047c435bb500673065023100e359a66c01316d31bc7988c3438b10dbfb6397efc284aead604822289804159d5f346e9df8874f02b88a27091e0346f002307d4cdcad161e754df1e1d1436e22cc5b3ae4648fc79fc6d1dca780fa289564851f61bbc74c5c4e0883ebb9fda67220320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b1a3f27ac458416c7654e1122987fed3c216b8131aace07b0641dcb022d98381bd9aa2f042f7d340f9585259b82c75cb023100a3f5dec1eeafe007ad603ae0aad0919572013d5f6cb7974a5f129e3ed37209799a0b8778a9092445238c6ed0874898de0302047c435bb500673065023064e26bb4b6bc479706a9ba7c437930b99b58644943e632e4e345d5ac852e08f23a28a743acd81be8a4dd328a64c00550023100a378e9be92373cd3caf91fdb83978f58179f3763a9720d74d43181576a86b68d581263b9fed825b807308a674ccd5b4c0302047c435bb5006630640230637097ff962827690afd1b469d75364fe819e00b4d5a73a50500e27146eccd655a2da27119bc362de0d0219f07732ecf02302dcd83c9adf11de2a5f24dc9fe8db6d69c64519f0d30b2b222dbcd5bb17b8a65fced6d81ef30af65aa0e457596a717160302047c435bb50066306402300b3173aca4bf270533189169137be70a42c469da0d8522dfc48ec4d11690e8d2a62171953b8d1a243c69936770353f770230281c80d76b7f4f05aab1074d29b3147c25f8a97d473d92ffe6fc1e3c7cfe857eee62d389103a0afeb910448f8c8225fc0302047c435bb5006830660231009817b810464d5c876a05a3de966069b0f3bce3f33acb5d60af282110aa5ad98bb60e92078190fe3422dc4939cd0959520231009b11464db33933863c21db8b7049ff9f03efffe86f88d3c4fe6eb488cce8034836f2437d4c573b07adca7da993ac46170302047c435bb500673065023100923aebf3566038a5c9afcc8447bc16be0c8db3abdc77389f976587ca3902006b503868627d9d758aba9f106a0310af070230672385e46f0b6ebc19ec13e39891f165ad7ee76497b2c70e2b7b8127d2f11db48a4b98fc3af46c1c530b1266050f1e820302047c435bb50067306502302ce72ea96cb394e3d82fb346c95bfe9f9741a992b81237bb119c958068bd8bfadd67618c253849615ae5efa31f62baef023100a1108bb64214d96712fb01e498447972b1f723b4d6c36ae38c91627baa15129ec2c35ce67f1f2c275503974455ed29a90302047c435bb50066306402300c8c9e6db981f06237f75f90cd0fe64a4cc923e350fdddd0d36aea7454c27f1f8f8e6bc9f45020db243c42faf704c73002307810619b0ccb1c3e9bbcf6589dbcc1506406fe3805bdb61513c471b064567f8b54e20514a6cf8cb6a7436db636a73e5b0302047c435bb500683066023100de602811a3a48d8161d8c51f7d618c228c964a2c4bfe49577a2a75946a5984aa66c086a15cc6723c68d496c99e127a5102310086b57da4e0a71c09a292c2c4f29ea69255c06796e9146d87eeb6411323444a91f6610536d00c3b333a5484d7a6876ef10302047c435bb50066306402302994c0c2415cf801d94ede9b640dbbb0224dec2777f4bb141747faff23b611a0582633a0a67c041d96d3665744e32bf102300aa083b92cfb7cb686d66ce330e6b7099e424c3fce1a241c0a3ce88405f8c75195de640e4b2fff8881ab4138c25b198e0302047c435bb5006730650231008e247ee15c8dc33ccda54d05e4e7c5e9f5b40d4cc19965ce16bd0da03888838c05fc877a77bc8d566ab0a45f725648290230110fdd48c803e6904270de168d701683da860e0d1bcb06d70e12d01c8fbd75c2b0606c461c9fa8f3295550926d07d4290302047c435bb500683066023100effb9767dc3fb0eba91d40241d13d0d8d02bbf9bf7da8d1cad4eba4f417f4d83326daa6d3ee755df2edbe32d61309fd1023100ae2189a7a8469a205411796d28d7ae9398225fa7989fb6f53ffded485cc3d7ef3aae36b8ebeff9a64c6834bfe6c72b750302047c435bb5006730650231008220f4005b0396b2fd4388b25b6997562aeaaf92276944a5f677ef9f5a1c376e5310a8d18e8b822fdc4834c242bcf8400230799ba2dc57fd2ebc13cf3092899156e13537f339417767052595b384c727349f191bd7585aa08ecfa505715410df74520302047c435bb5006630640230647751b7c10bc419f5a4516cd7fdf5796c2b2cfe3749128be09f61a44a5e2242e69d6513a027e8d2bad5c5ecd7dd26fb02305164b8d37299a71de2565674e2fa356f86fcb3061c6486632e4182d238ba544d128d60f9e56176cdff40c3e11a16e4670302047c435bb500663064023100a7a33b1ce1d2d462d6f9f360c3aa18adf3075b26c804f9475bdaf9770e9c8ef53018dc50843457c175ecef7f9e7610ec022f1932878984f65832baca0b2985d4c3e0166e67613dab546e97a5651c82cf751679a0e8b6c6d54892c4ddc77b65db4a0302047c435bb500663064023051a9007fedcfc123ca7e201802f39d751c4047f2660a3dc1efe40be8b53042f6da6c8b3f7751d209aaec9fd91d68db5902301285cef793d9ccbd8303b00764e6ed49841b411fce26d67d0acbf33c19a3656e17c3a66073bcf375f7c242dd9465ea850302047c435bb500683066023100872e9fa96b8988aafb17df1eb434578129923e36f57ab162d61b63f5a016d196b185b9bbce7c5430c10a790189c46a5a02310095cd0c8b4abcc81a03e14c8f7d9f7f9b66586a0fd38eb24a7d0c71da25105ad5f8aed64081e4726709d8e38ebc4d31ab0302047c435bb500673065023023e6f28dd81bb1f105a5959a2c9526ac2bd60b91e84b6d89c5abbbb455dd77feb3a90820104592326c2fdc9af1e9949c023100830b4afc866db50b172823b062f38a29055370429be52ecf6dc5450e5ec0f2dedf8430974df2856a0bb27a00bd35435a0302047c435bb50067306502306ed67d1eaf1a8aa622cd87047dc4e1140cebc95049d4f846660f43f53a5cce72034825aebaf868ab44e6a907e665d618023100ccfcc05646f687f82763342cce2f4888943b77038d437f4e974c781c4d9c43d243abe28ad761dbf09d62d4b5517167e90302047c435bb500663064023077078cc74de02c7b587baff3443953ad36b18728bcdb53e36f4d4f62db723c826ccf5170a411d6080bf66ef1d1670ba70230673dfeafa9698119246d31c64ced0d4c5df440b752be5c39670c2044a1803dfd84741183b08d041e61ff424f08181b120302047c435bb500663064023032295db4233a2c38343a5b1c2cdf342e925b0e4a9ab5e244d208c40eaf0160f5e7fa68df22ca9121fa3bcd9ddf7e5f9d02307e1d38e48a7305d33170e6c5ac981d83b9b5fb21b3ca7e9a2850b95f3fa04dfa154cdd0dcefa42d168fad6e6713b6f0a0302047c435bb500673065023100d1b8a65e4b5e9ef2d5a8989fba38107bf32823587f5aa61b6aa520242e66550b1a03705482df8f70853a5c5e90df6c6502302c69feac89bcadc995098c3ba8819103794fd3d4e8e79cda846dbc3f131acb8d8a926213230c6c9ecd7fb0f265a9b42a0302047c435bb500673065023100c136055194d0659915d73ee1f93ebf49448fb16fae322b19d02d4339b72bef3abf6f6ad585d00a6525ed46e9fcc007a802303c114fb40eb551afcbec4bff81f2532f4c73b6f6b3fe88efe82bd32accf5324484f6f9caaadabe1981d44f60f61256300302047c435bb5006730650231009f2f4b37a8b5d0d27673522f5de131b182994fa2398e04cb58bf6344df267974789b3634b5eeeff55ccb5223e42a36c3023018776067ec190cbb49c09a7ec93e93b06a5ce140963c626038ec5079af7a055204043914599451b27159bd1ef085734d0302047c435bb500683066023100dcb50a6e973a7d468183eaba57a400df15ae2f318396d76cca75425e63e7b23b1c1c84a4f8514d50ae4dedb6e3da9855023100da80f906ea008495f216b2cd4bdf58bac32df22db57af013ee9aefe7ee53f194cb91b4d260640f95951e0cd2fb78a50f0302047c435bb500683066023100b2d219b8544a3e61d03b784b4a2f8c58a4e91900d448bd4318e8621916f1cb01b010ae641aadc3aaca6c514ff02a0f1b023100c4985ad8b66bba45051d5a084501d649c815bd9ce193d7efecda1a5124f2e017dd12bb76a733b3e9837917714bc1a0e00302047c435bb500673065023031e5c5824feb23adf813d445e63d7ba635b7ade8eefadd989e4b10d778851d72ad35c5136e480c96a674ea0b4c7d1c02023100e4ad4dc7e1951f12b7980460280169c2ddb6e455cfadf1cdebf31368be3830350c47b1229a2a0be06427b329ffdcea070302047c435bb5006830660231009d1e46bbb46be0812ccedafc642edb99a978ad45bb548126dfa5a081b8d12ed9f7b5bca5aa5ef42d657f4db77d696baf023100da178bb874c3057fe6480094c640f56ed32addfd500383fb93b86cb1323c969ca2ec329253d1626e34370d78ab3405510302047c435bb500673065023100f4bac6e83e3ff9ade6e142537dc7f10d81b21be1ba6e183eb5e8855c456fb08cae0f92d22e6c1ed23337ef096693644802301455f70d4ea342d736c36ee5b8758a939dcba6bab8de408a80db5b4822c4f8ea77cd05e28292c345c255c9a820b419350302047c435bb5006730650230115355aa601401bbda953b114c611192001a2f841ed62494fd541dd35370111b3958e5223d8184cb3db1f80d86ba69e7023100aeb306cad520a8e0a1798a084a37b51519ab8b40936f27ccf97b25d6695ef0b53ac9a057c98398dc7562e678d3d541eb0302047c435bb5006630640230592f516a0f81a1cdb0c09ca9668627a2b4f64861c757b6d9181e85b23c8c9c730d4cdc61ea7aa97f4078b206bdf912b6023030b23903c66d3a337bb9c6fa7bc72401c582071a2ce037340c4d9057d1c37893e886d64f80f75908ef53c54f275fc1560302047c435bb500683066023100f63ae2b971f632fc517f4d65427579dfa4c5822f0de13f6021498b8b7e7cafa27c644276a23ca63f76a24957cfe42af5023100d84eb4e9306afd00ad089d14a4850b3c500a618682f530735765ffad662fc78a8e5bfe7d41093b4a553e475481fe307d0302047c435bb500683066023100a5936bf4aee1f8a960d96c40311426b4a619bac89ab58ee9d7351ba45b913d88829f232fc51ca0e1d4e5f014d6def4d4023100e4034e9ce80139e03ae90168f89b70ad6873c6e710d7071936b13ddfde0589307daeb213a8bdeddddac9b7a4f1e2469e0302047c435bb500673065023100bc580074bae124645f40990e7e416644b359639f889794065ca8e71fb0cc87e9f89415af813e8f06501e4a2f1a76f00902305a12559378c9e868a02bee71f8a567d75ff1970bf02ad14ad741457898082d359ba8d98a6abb841ff625d63bb4374c790302047c435bb500673065023035e3f2c765a409a757936de75d10a4f7a1eecfebdeb5949ef03bf2ac167356f3e7b561953f34ed5eabafbcc98c1a5fc7023100af1dfc9320d8ef4d7efe2c53d7be073cc72d859ba3be34cf1a0e71c97b80e374dc6d1d2cd414b0b8674675516188da9e0302047c435bb50067306502306de4609a37e37ffbeaf4680b48c4cbb45ec333657b9e14f60bcebf792ae1d8c6b637698c5fdc08afba2a1cc856479a500231008d761e48cc97d241bd4f977db36d14293ea948fa633538821667c5b6fde39e649ff303900f9d1726e79eced314fef0750302047c435bb5006730650231009b444a48b1faae2d54bb13a1fff8d549a253bdf09c348eab723928ed638402c5a426ff292d3f718a9be56ac4aef1d5f102300abf0fc74e5a45aa6a2c141a6b0582aa1fd0834ef60e4b9f94fc7a9e7fe790c7c725ef031a7ec379e90262aca22f85b60302047c435bb500683066023100fbbeceb5940156bee04fc9366a9106939beca32427d716c97683709d01e308707456fb02aa095ffa7138aa97e69f25cf023100abafe29b2b5e91c07d18fe762d834abd1621c8b5c9686480c29494b9c27d863cb2201df3e26bc8ff6c64487b405c51950302047c435bb500673065023100cfaf0837490ca40c6ad3998b95225af140a369415f8bc063e9a163ca0026a443e310451e7e83de1d59077d30bd878a81023019c3ecd6a81bbc0631b5c9aba4200c5518ab2cb20025923c38ebfdcb67d5a33a30962bc7181ed3545f5b8b15d46a35080302047c435bb50066306402300bbed32864c3a2f61a4e8d14ed13fdbc6afefc2ed8c7e964fa834bbfefe2d6bbdf9eafebae957a032944f12e64bd7a440230542fcca0d27235ee7b341b0a4135397d153d70ab42618fcea4927b8e33f79d73f119f4ee7ce88142ab9fe3e723b53b810302047c435bb500683066023100ed59aca18342fd2fcfe2db61921b6b2b994bb92fda37deca01c5d25d6e3d232b3e25155af8c1db8386ac1fddfb418ac0023100c3b475462ca3bf9e74601c6fa648bcdbe075928954d23336a0bd905d6f4df3a4d7755f99533b63b8397609eb37db8f5e0302047c435bb50067306502310096beede6f7416ba901ac3f6cea447119669623cb051cda0dd3549b18f855a0ca9179253be46dc5b83e9a8ca6c77325e5023028fd13d8c0270a1d73a3fcd7d600e82789fd6bfbff62c70fc35ca107b494330c91655449113b5146b3c021efcf7bf3070302047c435bb50067306502303925c4890058ddbe654800a103071910f139d50931c4a379226ed9db73891bd1d63aed7966ed8e374cd3d8c95a73ec11023100a7cfbcbb4075aa9226b175607a35a900cff24f05219f181cd869d8d98df6911f41098ddf3633aecb87255a867aa12ec60302047c435bb50066306402300cf5d4ffec66de8211d3c14a0d42b297d9b36ec7e909b346a411e008402e8b06cca9efb73388196577a40c26dac0a036023028099ae954855a586a1fc51c5cc5bcc826a4f38965bc3baf4652d795879601b13318f4a91514f112cac0ad97210bb4640302047c435bb500683066023100da8f1ae21066c66d818f0133923d2accad809922afa4b42d49e9ac13d94de65ebd21cd7e73260a42d7a542db3f6442d7023100ab146e1bf2c687303fef4c4442d11fa49022b634b0145f54f6a3c4c434f740306dc5c4091e66ea04d272123b0da317840302047c435bb500673065023011187ff07b8461c029a020430541efc065a3ce6cc0417e99a4ae2f917e6c801473c8b06bfeb5e5896ccffb51b8354c7b023100ef93f55e7fdbcaf62fa8d49e0e3e36dc7481e62eb4d2dca0e2a62b2dcbf14d8140790547dad64c9d0dad458a37ecb18c0302047c435bb500673065023100a29becd5f7e2feabe46f6fa1d00016009c69ce2b070ce5c70860ae4e59c7c86dc53e8e9509d50135593103f9dfae02ab023072f83349d2855ee76c17c73241096324a013227226111d2405ff5c0f1edc697cd8a3b19550453b3957969e9dfa8e75310302047c435bb500673065023100be44bb6b07d3ee0124cf25159ba2f9de8c36a9fc81ec7792c5f37847854dd4f6d4561807b0188489f0d9e83e496b2b5202305a722c902879ad014907652597129d244d7dd7fef58c95054e5047c76654562ecccca6b5e24facaa6932b689688b6caf0302047c435bb500683066023100bc0932af4aced7d65974a54d2e51ad16ef6acfc20fc2cfe82324203f6ec012805665dba43089d2065a0bb76365f4999f0231008a57d87989cf50c428403b57ab63823525b9f6523a92db523c70f7d6a00638bd1edda88c3b92ab3d668fb8f94b8b70af0302047c435bb5006630640230097ca8876eb5806c9f833d65c302a6c1c4b02e3811d923a42e307890b635852ce3d5f4ddc89880b0a7a80b371441d52602305045cb772988da692d0bb0e2ef3f9ec7a56b49857fdfcb9f96884809825bcf6b61f0df6a42fb01c80e0c504db2e7e6210302047c435bb5006730650231008f09cbb97cabbbe8681c72b31ade8d060511939a051e53f265f65dae344d19427e3f0e1b6fe1011e7d2f6b37d39a07ef023066c948bf01c6e869a71d4fc233bede8db9b8da74024c79ca7429c26c9de63783be2aa081d30286d6f3e41cbbf2389f940302047c435bb50066306402304f83e8bb701b64afa1a1ce66fd460448344b2c72a1fa309c9b9d4d17e58d0a4e261065dba331f9f41b0847f39160a5bb0230223076c6e097601dcf02bb5190627ed8b301ecc5bb8943fb23f4e0ba42ac4693d3eb666754bbae532d1972658abb32940302047c435bb500683066023100c1798444c612e61b044ae0c4e71283b927c39454db747810854e89ffa06423ef3e484fa96a1b6d779972d59ea8fa55e1023100d1544d403e4bc544b8cba36ad083efe7d95d3f68ec5116bb6d65c13dc46490275686739d0753ec877829a01d5f9c80290302047c435bb500673065023100b0a50863602d7c179e81aecc1f1c2b17ea1bfb5187562bac968a0d6c966922aa9bafd57a80e51572cd612ba28a45c9830230626471c3f880591aeda5cd8fc522c531bc2e3362fbbdcba475bab98ab548475fabe52afcc30e76e53f2561e99a615fed0302047c435bb500673065023016b15324159750edc6ffd10aef510a8d529c6384ebd59d5b752297259fd8a879685e9d64c555a95f558c76c11bc1fedc023100e654c960d499bef517a906f870876de90bae996470a0e268e75472ac329701416077f3695e8f22f5b9031af684a1e43d0302047c435bb50066306402305206b3c8ee52fe612da6bafdae32a529d6b75e37a721bd0402e934ddae6dca096363fb34279b4c514ae2575a438df26c023031ee8cd6035f512f500c78649644e85c7fd036fec16f43e72f5a6f7be38455e8d73bec06c6f53a3b0af7d77375fd49ab0302047c435bb50067306502303ccad58c50e8904a135c47f2b1dfbef4a23f565c79bc1c58045267bf20499e5614a537d1cb8a7243350c64c1e469c376023100abb02906226d20596e2ccb5f411fc75bfd582e8953254ef584704a746b9f6a1eb11ed6ed96861c4148480eb4c2901e890302047c435bb500683066023100f1e836c773ca406b42564947487465b09220380769c120b3fe33b33e830d7a58e328933ebacedb1a9a2eb512d0b00024023100a1872595491b8ce8ac110aa15a8edf63d3efde6677b0bae355fee92253577c8aae87f7e59f88a89d702fb25a3efca1970302047c435bb50066306402304d961fc7c886576d2b910b41d184095f61c351772f597bf53f4b460bd3c6b512a252a2a5ceb2885725971d1275ef36ca023001ae10082f904a0df40e6ab2a7721431646b0c12c96bfb5d99666a55b3ba6b0eef60e017857e7f2a48952b998f3c64f50302047c435bb50067306502304c6a09240b68019fe12f1c545381ee07aa1c57da1de20c72c28b8916f20ac475bbaabaed865dee9566b468d8d49bcec3023100addf0303eaaf5a96bf89e39b1c44c910032995f7e0f84360c4dffaba383be838c88cc0a0c093539285d01c39f68d27840302047c435bb500673065023050a3c72323836c1388318c55b8ef0013f3161a77619ab9814b47de69be28c494327f0f25fe059e380d2d376d3fc2855e023100ed6e9625e97530746ba7932db0006312b99652a95947add25b180ccdad4d726f341fde47086daf193150bb85fb31df420302047c435bb500673065023100aa54c2c5d50d8906f170237291e4145bbc6b0c8da085c4bd4fb80aca8fc7058c2076ecc95af0c7efba2aa1adbd2670eb02303d8e0be17e2ee52de260cf0cc1f5bdd11d3be740449a0c546cbf22f9c97737d23969e07e8a0bb2d20818ab0499a741720302047c435bb500673065023100a1c859ecdcc44229fb62c7db5aa670ad4fa473074e3126ac58c923bf23ffd66f8b42f75f19597878dafa1c4ec524a2b5023033e3b1e590bffc07805623be880696e06294fe6e537dd7cd8078cfc3805f74d6fa2b2f2427a78ec383e192b5f11412e70302047c435bb5006730650230598d2e6c49f48c52781c618e3fe05b3976a1a42ed5ef0a6e686f6b4be638ba54c10881c8a924749d68ffdcbb68bc1a76023100d9192e396a23307495038bb03479942ee8275f57583a1f43bbfd6050d66af68ece89afc5643ae144de4f73bfa98620c00302047c435bb50066306402303b805ac556c29751f5887097a5b32f332ea4926053c075b050b42b9359d15319b509fa9cc5789b6a12663b1782f9495702304ccb75ac35123edafe0d743737203fce69b7e2c03f0fce7fd4e81f0948b80afcc8473011d169ff48e4a4e63b1a27eff50302047c435bb500663064023072d72cee0a80b0dee0ee44b5bd63cd2a66588a2b69e0c8b95100e72989d83627e49688eba308a3c37cb59d7a0efd158a02307c5513679557b67d7974e0a8fcac1e0e9158de57cda766983bdbe3f01762cf86dedcc6e8494d5574e917aaa58e64ef1f0302047c435bb500673065023100ddebaf5e8618f22c778934b0b0c0b95a086d3155625956b9556b492fc8797512d926c5350436b5bdb00c5343e951836402307096f955e3822c5d6eee3adca029345436c4032dc476b68f71f98cc1f36f67c64355a063e9309ce18b5f9e7cada71b1d0302047c435bb500673065023100c824bc7faba2674a342e2ae09c31a76ef79ff70186fbf126f54ee99f7866d266ceb2c26b7b0d4e052b2d9317e6742851023045f0c0af712e143ec566bdd3392581ac3a5e7865b88323ba7f31a4a772f81ce69e9cfe33d1aa58a61dce4fc4bbf4e9d40302047c435bb500673065023100bf6d8659c6eb66d5edc7d00a0698f69da1331237276116d5e9242ff909beb1b1f414894fb52485899f7e64488b6bb65202306774ba6b68249affeb857a47a0a157c8a1ae074b87a06a47167a78f688ef42855fb6da0ee092bba55455a84131ac866e0302047c435bb500683066023100bb6cc22b36ddb87058000510e9b35a4b96e5a460640137d8c4fd03750dec59f921f488789b5a0229728b446648e69d24023100ab9ca410a4d8ec505af2fa9feff4e37f0397caefa44719ad7bba8b03abdfda5755d24b4ddd8e0c372cbf7efb38122b240302047c435bb500673065023100e330a0fc2d0c33fbfa01496300c03c3d01a3469eb3c08b6a118ce5b25357444339bf4c6e65f6bfa72e9b09829aa7ab71023071c41b050e8a9f6ecaf72c1c0789b0a08c6a9e3edeb3192eb316ba1789b9b416af777f6f4ad28125548801226c1c864c0302047c435bb50067306502302d8c280d958e47dd576724433f67eb05d3826b4282152840a85b68f20d277092c75d286ae30cdfcd49277aa308b100fa023100b05594c737de53ef51984d9633fdafafbfd71ce5c44856e17c56291f9246b48054735c4b21921ab3299a4f57c634d10f0302047c435bb50066306402303b9e8d37395cfc5b125b8af2b9ee5f9ff38c29847a3f104cba75bcf9425784c93ecc5bdf3a3e640c7852ade62529e38c023077c74762b5fc335dc01405ca814724f3c5c851582fb0709e2df3aed7d4dcca8732087abf2456c3ca0c9d24c6d21080ab0302047c435bb50066306402301a50ba89dc17dafb77693eba34c4f31f84842047139ee099f95fbad76d8213b79b1e36f6ddedccbd0d2116086f5f176d023037203ab3f95580cb57d0b2835d08554b007161417044fe0b238d402912d9a9f5d919fac1e3043abfbd4a0476d124b5660302047c435bb50067306502302573649468f41f2140357828a8151353356cfc85bc2ec3287216d50c56697e0e387beae4b64dd77964d527ed82844e1f023100df90a6417652dfcb6220200f6382c2fd86df9217399daeacb25dbdf3065bd5e77a348a8d9b9d5c558dacacadaad26fbb0302047c435bb500673065023058d29e57874b8f39d127c6a75e89e0fd6e3bba50eeaa6be88056b656654502e21de43a77b77546600d70afface6b3165023100e4fa66cba9da7906735077f24ae5ec30bf0a8972f409d8a7961226e45472114d2cb487b2915a825d4b7f71563e7e39130302047c435bb500673065023100aaa6a740008f142032e74c8c62362fe53d85568308f1f66bb7e03434ea56c65cfcdf1276f3a74e499bdc99f5d430e72a02302821746455b664749c9b0b6fc08c574034ee7852aa007dbe0e5dc23d1b2d2f3b9c5bb6a1056dc8ed9da60347717e5c640302047c435bb500663064023008605b1b96e9bba1093012aeff77ab15bdb7008aba11e3773ee974174886bfe90ec8882c9afe60f83dbe9f10657ec3440230329c139e213279b529e8e94f688a8cc3f1fae9eddccef6fc88aef9d364dd6fad4798d937f02bfba6c342c27e00d945710302047c435bb5006630640230398a129410228fa6bf191663ce0e6b4a9718291bb179251c2d40e123044770bb6155d82441c7a69591a729bde06d26d8023074246e9730febc7c4566bb7e52462d3c71426032dafd89429c0b8316541a30e7c551caef75f0a0580e1b9e71fbafa4460302047c435bb5006730650231009c98129d1b135ea5a0417a7fd95443db52fbbc6a29fc2f7dbcb7ccae95c9af3cb9398fd4acca404c83c7fd159bf4a3b902307f9b6ce4edee1e6cb1f5b911a752f34b9142e7e2c26e40159f11e40c95672da4cc89565348dda9ed0072375aee73b4310302047c435bb5006730650230548d1c580867cb8d31241168089db1c15554bb5c0af20fa8cf78e4eade119b34aa954fa2ab1f05f3aba92f4afc0b4297023100b6417a11baabe334592874e0f90b0e2a2ae9a3b2298e96ce7346ae328a41583916e0cc37740ec1ccfe24c0d65a8900190302047c435bb50067306502310097c98018c90e525f421525a05ffb8a28a2d629d2f0dc03755f9d154422fde0806c5a87d873c09a83bd2f8e0bfe7c865002304bbc729b268b8bf970031d58d26f49d798d0a250b95cd681eb6d864d91fdf5a14abd351cc29fc62af8642354cf8b8a920302047c435bb50066306402300e0752f5fbd534b96e61694560246b0cdbe556fd2d0d2d9513d66cb455de0954a5c1eb75f5f1aec34c341fc5946eafb50230696967c5a21bd8272263230f0d7e2b7ebcb6a65b412e22321016e80932f9971e0b32df6ba7be86db83c457503bdc36020302047c435bb500673065023100a474e080a3f310dd1eea856f32ddde69c4efe0ddf4314588f8f1a256fc101e1b87a2b8a81230da7f900cf48962247c16023022ded8851b9be1b22f9146c11bc3cc6b3cae1d78a8507a8bb9249ccddf26c058d5be0efe4713ce2779b4ca697d8fe7c30302047c435bb5006730650231008492c2cfdc8c7ae7f08d86a43982386098deb71fc44a0d9dc554e687a9ff27172db9ea09ee5321a9fc67e1840ec1bd160230753b695af660da7a95e4b1e57780a0b0ecf5074baeb0fc1b898ff3cd7c6c56baa98600fb5a0cc473e2b699e8d4100ce70302047c435bb500673065023056699d08e05939777800915dae8e0f5a70796c4d3e9539a8ee622c13fe69e7d7fcd8cfc27a729f329d55fddc16233237023100f7e2818f8f194698785b8b2145c3ea5f45ba6966e9e64fa5c380c19ae44fb1f7fdf793f3cb570c87a1f30b9843c1f1ad0302047c435bb500673065023100e3a57eb714039b7900f317d64ee743e46f8c866633ae167b6c976649c9dc77f544e577b4bf1aed38a98f51a83de66db802305d8e9d6dd571e001e223d8a6b28623cd94c7bf8c5b928e9b61e3afc616c7c8bfb7953aa0d5372ac0a873ea8fc9d02d130302047c435bb50066306402302215846864accdfa30a3845d59a31e24e7530a1b94ec34f848fdfcce80054459887f6c32f81c4b8cba0cfd84337e30ef02302a0dec28d56c9bb1d4ec375fc7f82d95ffaf8105b0c1e662cdf75f682cd0099a45223dece9d017863fcf31d9d47e043f0302047c435bb500683066023100bc1e82223e6e9bf21bff545f33c1ab2ea7c9dd66699d2afc28119312fda29e0c4c3a54d42c7f2ec975cac5cab3fa9e77023100f95e8a6a7a28a0a11675ae8ae70be8eaf1ec911c1e25ccea882dcd87bf49247d27de6c012231ac2126c8e3b72750f0f40302047c435bb500673065023053957e3adc3a83d4bd5f04d97058db7f2530ec8f41555bd6cc24b60da5066a3f4976e356a0b33346fe6f8fd2d9e69698023100b0e40f6daf0d14c82ca4775b9c9c330a89978548a1da4207be7803413a4c5dccfd71bda968068d0051cd866dbd0990280302047c435bb50067306502301cdad58a8fd5a8fc8ce3d8f9cb92dac8c964de3d7bd05243067a798e3cbaae743e89f4f62c9d263562cb499608202259023100db6fe80a42efdd951e610065bf254796062f88e00ece42213bf139f852483e5db2d678f743f8d74ae031031634df67a00302047c435bb500673065023100ee1f411367ccc0e2baf348bdcf79a28f278bebac24ff0fa212e51f6e448965a42265c9b129258603c6d75134149da39b02307e97244a35aa1a6fa59c7d0b96ae42793b2a771e953efee505269e3d959f4187c7192255c9e83a3411841ff932aef4bb0302047c435bb50067306502300e9ff03004937ae8469302d55693cb4c595e9b2c1aa42cf7611fe4f91e0404201e57199ffa3a47b2a02aae23f25e2c0f0231008ff18096db1d9c617351040bb315dbe429a601fb9d6c5dcae63b686e1b470f2c43e8ee6e09d354d342241e842652e14f0302047c435bb50066306402307499116392ef70927726e80387c8e2b03350319e7dae38c0835e79289fea3eddab5174fd8ac693398ee475432006f07e0230533d5b180210035f1f87e266d32013570086e1fc4d42a56cf3a4780f4bbce97df2dada20961a852b8a44865c351e8f780302047c435bb500683066023100ad93737038c4728fff13ee11914e0b2a40d8bc9bf4abd2b3fe4b63866f5e8ab221ca5b981ddd21608589c56f3bbf7a11023100f99e79101072845af1afc38f04a494c70376150a8c16e84b55106731d40b405d54f0806a0e469b55aecc54ae0bcea3630302047c435bb500673065023100a8acbb4009878af49a84f42c179b508f4d245f0c3a991e0160b5f37b3cfbc8799549e0676d76cf6749f8919325aa59ec02302adfdc04b46e0484e67914249f92f46b5604e83dca70bd5f78046729ec06d23327d51ce7b73fb56a5d55d90585f682e00302047c435bb500673065023042ac5e28e1fd61730f2d5668fd763391bf435cf5cbaede63e8fa05083a5c50153cadbb1df65e2a8ab0daa4a65a1f28f7023100955cfae0c852448e26d8931a1159f20e3906e617e0ad803313ba05ea8fc082cfa0865eaec6f7c59d58b767e5968095f20302047c435bb500673065023008588682ad09b2b7ce2770b09b194c492b54ed2ace5e86efe1fb543e3d1793db5e4482dc4d6ee601a826bb5a039e4ed3023100d3914b29c8f6ac562c06192ece219f67e4dc349f8751ee9ec60c3f14605b3c48eeb61174d12452475bfc3cb612c5917d0302047c435bb500663064023033cadb1702896ae0012f864de673ee57acd3b49fc08c0ec47ded5a37399fcc2ee0cb1856dfc49b0129c2960fa30a8b450230051c7a01220c1064ff66d809cc2551bea6aa650d0e44c6b68eedb98a204f122d9e1d998a2d0a31807546e4c6960e881d0302047c435bb5006830660231009396ea05fcef0d3ee908d32fe3eb99f678430f4b7179f630e8aa8b7e5b8b2a6b2b8c1446ea57bf1d8b52159a05da5817023100b1153687a160325a602c9a964471792a26b44c79a5c88d2c33e671f275a47670529383232ab47dbea58a57e4998a35ae0302047c435bb500673065023100c85b298b4299197089fa8e6c105293b123e426f1fa60426cfd9b9e3c5bb54c649fd83d18acc4a5cf3a5821f01deb7bbc02300a15a1353cdf76e2f1dcc36220e30bf38bba6e9082ab6418658101cb381446abd17bc1f0458d1fd14f43634a4b43941a0302047c435bb500683066023100ee1b7c86b03e8155b5461bf5d0512023e5157ef2e6f126f1921d752710bdc445d779f034b978ca1ab412a16993c0e80b02310081920873905daacb20551949bb1f6a0aa50df9028d12dcea826c49a2cf5f4df00e9a294f1b4cdb5d4b9fef471e4bed470302047c435bb500683066023100fa4d6fde5d979649721793e9b285c994bd3a078b9685d65c0ca31ac06179b9eecce8185305d90919125886e4a70470b8023100a97b7e688dae9acc09c94bf43543b01b7da095f39c5f37dbfaddf4422307718ef54e8bc4ff78c1f3051f2b3e2e531c840302047c435bb500683066023100950823f1d88c7616cee3381add9471af882af6a01608eb65166a88a7895c87443d3094e6845b7d48fd8a8db166c6055b023100b83be4c0bb1d9ae8a228c0bde77f887b06b9c3edec80f1e7f07960b3eb396cc92256d19a177c3fc2aa04f2ff62cb17170302047c435bb500673065023100ff5d2e6d818e071505c6a729685d44245ecadec50edce9626b0efc0119324886289b745513ae292c89a3fa54ed0528c6023045f6dd138cefc4d6dea45e6bb3b2ddb4698144964d5113aae54bf86ab75a02f2d1dd962aca17dc476190d14a9beac23b0302047c435bb500663064023028f8adc118ece479d36ba0edc9a8a5975543c0c3b4ef28c1d8c774a2a0f276e9c484b3bfe6b6ad2de49e4d24696cf17e0230627bc4955e83934a4c7542afa78646bc69a12d8f317a092a2c524a662e711c7812fdc8bff723fde233c4495a94324ea60302047c435bb50067306502306950193f34193218da6034cf65a830471bfa4bd0482cd50540e793238853b3e3ae71ef9ef2fb8485b032f619e554c31a023100a2b7bd9a7813323bb8171c486070c3886ad55d08e6d6571e0c6715d839fc4bdeebc2a8a6cfbe3810ca545d8f49564fcc0302047c435bb50066306402303a64d96a9057c6a4fe636e376c7a1d4e61802a308cec59dc9474b304f86b85cd59f3917f0faff5c5892ea73bb10c667302307366d836e27b18a8fdd38ce55c6ce836867ac36b069012f84e7d5be40e9c491e41741eb9f24b0f3071a215aa96c642310302047c435bb5006630640230351ebbda5286bd4f9d7848a9237b568e70bbac56b2ec89d8743a09ab3258a3910546492de16a0d8f57c28baedf493cae02302c1327f25a70e611a0035610613216008a9b76cc1ba907994079db86d1e9ad71a005506e433137c7683fab820973662b0302047c435bb500673065023100cd83a1db1b5ac3e7c01392467e743c95c136e4ad89d26ad91d0b21e9fee2dba4e005f4cfbbb9e974656e2c5c46e284970230134e7d4b42640114b0d19d71005010414de6963c472f2dc67efb3a51c8edf67072659ce530a98de2939b65727f097c260302047c435bb500673065023100d2595681970cbb86169c056b9ca2752c6d5cb69eae191bc9e1c31daed1b16f01eeec48cbe11cd359360ee31bc640da0702301d98a423b57ea846107c3706724990fa783e7098744bfe216c196357039bdc1fcb4a7ff5f39078ec50de3c51d78f6ea50302047c435bb50066306402300f8b68291cb201f25d87fc77268ac5966025e9e86e1d2c7829840f1e5cb2e2fa084fbb82c489e578c8ff5f172ad2306c023063dca451994d99e9b13f5616722a0820018bd4ec1b60f4dab86e01cf1d5dc62bfe96fe62369036cb66613875b38fd1250302047c435bb500673065023100fca7df9250855b68a621e72120af9d981aad703cfb2f908c958e4750fe14c2ab447a1e1b20ab402ff97846b6759f4ae2023047ce5c0bf430d6775213e1058fdd618285d72b5c64857c60f3b722158811d9b9c01646787def22d4ed7a63614efeea940302047c435bb50067306502302ce0b9e105c03f412fa72dbcc6becf191ad01d2e18240f79ed0a5985e5b809aabe8b551748351e28f83d223e28458edf023100cc1e2079dfa205262df7cd136fd0eec043d5917b8da53d2a9a950e4ef7a105ff2f68132bea7ba39a9badba62e7e841b80302047c435bb500673065023100d044a62498e2d807b17279ce9bee5e37bc83632b489b07ccc8f46610cbd128bf1da5119c2f55f65ff8af3fa46543500802304a74761f11d30432f9963e279410b2a990ccadee3286ec8820425ca6e9b4f8e659da63a2c06a496ccc7157e678fec9180302047c435bb500683066023100c5530ad46467d929557c263692aabca92328fa819d60d8d3fea6fb2f0530f12c6a443ba91caacaae81275f19d344dde70231008dbc24042f49b7759a7735be785c4a890e882386c09e0dc96108fa2cea7c6b320b88d9063b53d196c0c28d7302c12d190302047c435bb50067306502310099c184367a115879917ae17898fcffd57ab2879be7330e9515495dab1f72f0b5c379fc447fee65c0def821eb9a8050b50230086c009a071044e9f1ceef28b7dfce15709b85b10a0e0c7a3ddcd5df18ca528ecc3d6c87eeee299ef88a8731bf572bf40302047c435bb50067306502304e34fe18a9269c50071fb641c318bd4dfe6460447a93b06ce7968e5b8ae6862cadc15e4ee8d56d688d901e950e934faf023100a68c29804b880d2d115d7b9e1a6cc9f8a67bd9d16b48df95ad84156679fcb641ea19c0c1b94da31e6d37e9847a1d8e570302047c435bb500673065023100b8d947601dc1654e221f034257e07a073f8a18153d7c9cbcceb5d1db5173cdd554f350ab34aa2d96735c2782e476dd4c0230069f934f0d738b79d154427aba6223b0d8a2c113d0ada462ca6ed792f69b4e90f45758c6dad247340be6dd792abed2370302047c435bb50067306502300b4db3d980df98586abaa3be6acbabc909adbe5bf7460722b6b92b31231e0c235b9e5484f30c1920589cdcb9ba15476b02310085a53fabedfad432a45663c06898652748b33bd507b8088693357845e4f0d240ae8f0f8496210df1956079ddfdd344b30302047c435bb500673065023071b75f5af8f1dc4aadc73a708b7c6e6aaeac2a5b0eb32e69fd3630f0b74985a8b639b637a876b161e5ecbc6361acbc8e023100ef00d515d6b839ba18b02de92e71e2b22a6fad571903238c411184f3659686809be99af9925e913fa3853d7e878cda340302047c435bb500673065023000d25192e210acbff695d558ba1c799f8617f2df6e8bc7788ce8c26a44c430cc0e6dadb3b8a7af17c87e7db84ca32a5d023100f9d892f998a49f329dac03c0bf1a476e99cb4691d0532e547c01557e24bbde7b97737ca660cba436601bbcb71d5eec630302047c435bb500673065023100b4d143e03bfce771fe52aeabce9840c56b1ea94da09101012209fff62948e9c6933d42fe1095bef6ee6b48be3b016ca202302b155d87a86ae500f0048cec58f77280ba84f8d3699113130523269b39b7ac2ee2732da33f18c317689cec8c46ffb77a0302047c435bb500683066023100e681d557f9146649ff92709d46bc0ca8278726a978baa8ab99d5cb6cf01170cee4a9204921fd1575446fae538bee72cb0231009d21f1b71f8ca69b65ac61ecce11338a81b53edbde700cc47f905aef6c81b759aaf885837488f9668c1f41e64a2806820302047c435bb50067306502305d611ec58b1a8ea63a06899cd79c2b9e8144e1572824b7a21fa9837760e06ff19a66289fb268fb45259e7ff18f2f7a390231009ba7a3b338a4197c705e63e11f15e14a678ca3b271a98e4fff604606fd1772acfcef12e2d97b6051421e6001373756220302047c435bb50067306502303a51c3c8cc1a951db4540a7a4252ffb6a2ac9e905a1eb1ed171dacf56863cb5130eacd8b958596def19b5729f73894830231009417b0fe0ec6758369ca546889e26ab9368832c4fc1d234a5d1876c501bd01a9cd67b672cf2bedd11494c2e9fb09d7860302047c435bb500673065023100e351515356985213d118da1fff5876bef59381bc274fd44faab0fe6c3bb8ee4c829e8545cc2f43c92ccc1040d5fc6cb502307704143fb5cfd8d09ca710044745546ce8c15ec0dc842278bb2df092facafbc2501159e2b96becb415b31a75007d27650302047c435bb500673065023100b5a951a05f02ae5c63ac5d318fbff6aa0835771aba4e918779f8a293a4856efa7fc6340fac808563259789718fedbdd50230078e132f6b5c22639de6454f62261eaebf7a200ae86862199c62b4ddb01d03baa6d449e2d15dc98b8df808770c81320e0302047c435bb500673065023100957685e1103e2d5f95b9e416017bcee4107c9e74ffb5c141e4efb3a2fd0fd2fa1a77d9411bdca9f686fcad7cddfdd4fd02302f3bdd034341f7e0237b8903a603f60f8208ebb7bc8745b6a41559c40696dbfe9f02df973d7fd590ce5ea8d46d54f2b10302047c435bb50067306502300e36f5c6666670e90dd8f3099af5916f7bb0ac14325709b7f4e5510395fcdea11b16ba20262c7ecae30603a1dec5a06a0231008fc2eb76a8e1f36ca71108932d2fc4f2aee8f870ccc3ef7760b875f05ee55a01b61d8897c96eddf2e736796101d79b530302047c435bb50067306502302a49a9ab46c4eeea2a0234b811b945e156104536c6ee23f58c9077275b7a804a9266ec82fe841a67077c9da8079980f1023100c9ddc155c6a072896678e4e367660cd93281b0285492670f2d148f1655b0d4c3c6d94bba232ddb30bbcae01564678ee40302047c435bb500673065023100e71052b734f0c91de786df7f5d73553d3c1b95d03958e7cb42d4f9c9192c517999cf27ef02c2cbf8560852c144bd12a70230479d3ed288f109e9547c97fd4e0a5493d78b9c15d395d83d37daf16a6703edc0ddc6772706d77fba7f2bb2922eca10f70302047c435bb50067306502301a598ed642e7b2e58254187b4dc3a385d378a2ce3edc190cd18fea312013cfc01457b93046e7bf78465a650157e88276023100c0f65a0642dc4d4e9297c025657adf78ec03d1455d893275d0da9621adde16a0dd9c61175fe219d2447fe0f472b57d810302047c435bb500673065023100ce3f427d0484bb9b9ceb8c98f91651a1b5c69b26d655fff367913ad1e6ab5b898b638410580f46f6725e3bc9ac4b616a02302c535aa98b471f866dd4695efd6b8313bc9b6d36cd183e95929b174fc55511334d95fe3fa0a9022c7b198580f099c2050302047c435bb500673065023100e1d27deed4c08ad1117dd19f836f3b8a1fd8d25c4bf9c6f904d800c57bfd500862dfd80816ad6de86f43f46764ff2b6e0230516a89e4e1b2c575a6f1bc7a4f404f95caf1963c03220306a301b050009b11f941e65f77be2ae3d0792c4ffc9cd84a5f0302047c435bb5006730650230193ee6142b3571b27f5897a52ae278954f0b3179da07ec90ddff26e4ee8afac2275e21624ea1a6d1140768db39ce7abf02310082eadad9a452b590283655508285835d281e3d85ddc01e8ff528ce84b17b4b8bb558e2e095d45c8515da3c5027ec77610302047c435bb500683066023100d822bc557355f180f6a78f9a3fec47ac4a8ac5ae18b57cff30e96c04698752df779a0c70c39bd78781dba5da39cc170a023100d6ac844767c93b2482b50b785af6a69a2599eae9d6e7e6e0faa74285fbea2b7f89111e1e0001d16e1a566c664acf50f40302047c435bb50066306402307579962cdfc18071202a5b89d364119c751cc7b2509c02ed96cb4821424965fe8da4e23e5de9114e3f60a53f9e45d3ec02306bfe7dab3e8ffed93224842d8231afba9ad7b73382c3bc7bba4cc369fa1237f9c655d8757d82d6b32a2b85d77aaf91350302047c435bb500663064023047dcad265147132be7174e29be0b3bb2601187bb0cd13f81f892fec78b141eea77c5919d6330d7d192f15cc5bcaa259402305d6ebdefe4e1ca8683413a0ada4e0936ba11c5f57c40f86c9667ce3723705648b6d3e397dcdc842f5aa9faf301a77e510302047c435bb5006730650230370a87ed162a3b7712b5169ddf4e02bb98d3b5a09c61b24a3148e41bc4c26b95e7003721a9b001e5356735adca5970bf02310086375ccf06eab08fd18b19e2cda19061fe5c82b9901a925b7bc671c7a851a31135a2536af0a77f73e788acb978c4a0ba0302047c435bb500673065023100f6d2f2760ed617c2742c5c1bf43f735f6f6f5ddb211746d3f9b76144b9726566210d69c5c4e2baee40bfa89cef00ba840230186d492ce8c5742ddc1683fb66271e3c0e50fa722031152f3bf3abbfc2f44673ca2807dfa541e0dc40dc04d7773478d60302047c435bb500683066023100f8c4bd3977be46be7e7010c77c23fb249890fd84652e39a37b7c703922291cfe76a32885c39eba387830f6505652fb6b023100ddedfdd9f79c5b9cb06f5c8e5ad1d0a56d80e01568d04fe0ae5a339cfea3fc9fdfe06b810b63e971638da2f87b5883df0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cfd73b99691a539d769f26bb4c5efc449e949d495663eaa2aa5074d0321e6a1bf63727ebe89be39ad0ad9c7cb2904e6f023100ee8bdd72381daa20cbc58c8cfe1feea65f3849237ecba02aeabacfbc265f628462e91d76f0377f798bbfd06058abc3ad0302047c435bb500673065023100dff12b39b5b275c4fa00b06207eacc1dcbabfdbf061e464c2984de3bfbc9f9fdd1b2e312024cc3cc9c0b88bec633f9b302303eb2b6b33838bfa65395252472552c9d62294fca09a2e567fb23fd68a0dee6c055be57fe2ed0ae0c9d8c33695f8132a00302047c435bb500683066023100f7d6948eacf5e5337aa7d79ae8fd1ed56556164cb4f15c7d36b7caba97c0ad190a0f9f9a4a0e5a9072051297b7465845023100f4b05a1a2dd94a74be1a61c33e582ad39c7a8c6c2765da2e15e7cd561767b3c08626625eccbd7dabe36d9292182341720302047c435bb50066306402307cad5edfc148d85d59ed80cebf4df5f60a447f57264e37b9a8ece4bd18a379a989a6cb8b9bb17357a2e020ff411c180102307227952e84a3c1cdfae84a8c873c9a992265be0ee635ac40572e43420f79c856f442564ebfe2723c8f9692597c23610a0302047c435bb500673065023100f142f7cd535bcd292ff7a94ae84bf9829b3375baa104aae34c7d52ced06b5c892ae17cd47a5f625e9946ff8e61b5be3d023063f2d3fd62209a298628332678a79c8c2323f5f328746d31a10d41a24b885db4ef8cf71fb30ff1d649ac6ea4a36866370302047c435bb500683066023100d2fd9b49742f8daf426187fcb1507737e7bf53126f8b9bff13b1ea2e6c6356d0724619634509db0c08c4815061d42a8b023100ed4009d71b5600878f587b689231f99e1f224f5e06d1ad5ecb3b514e2e782609be2255163a4990771b53f6d97c6d6d330302047c435bb500683066023100f67b96eb4f6484a50f190809b2133cfa8ddf3a46aa2e76ffe2e48d12eaad654e291c60adf72357a394b8a5edc46a010b0231008791a94b3630b417d30d2161e4aa94a214e352e9ab68d5405946063d99602a42856f2281773443b42cc7a877b0d80e800302047c435bb50066306402305f94498492a26db0ddb412750c02bcbb0fa0587d3c5ddb4d5080bb346765123dba1f4ff123563af82f7ffc6251a48ea902301c94cd9ffe8314645c434e8d5496caaaa1ede71b93f3a29228587e0257cbe4c825efd574ebd802b6dc3d54599c3c13de0302047c435bb5006730650231008c0dbbd818fb67f21bbfc53efab51ca33709078e6a57bd14deb9f23fec5c79dd1234eec975f2655fe8a7336dcac80faa023064fe1f288b5c45166160b8fddd17eadf5fc065b663c9182771369e755433b720bce33f8fe815469c73c926b9a81bc5070302047c435bb500683066023100f7a793d0df5d363aed04f79d190fb8a1f67e0c2601362ea85ebf455c3f8d6531724bd2f2defc37503ade735cf1bc373d023100be292f1b176a753405ff4345e4999e95ab37c19ed4cf84dccbb64736eca11edfc648555a7b0a8ef1153f4787dfcf50880302047c435bb500673065023100c415cf97a0f7528af520cadaa88b64600d0c2a4382be5fe97f97a4b2dd165cba9ff37f78f0ef878ec813d28de6943fc902307920e399c61ff077e512668d05570c6e367adfc07821f32359c95f552c90d29dc81d93c03c0d59ba74650757846ed8d30302047c435bb500683066023100c098767f15e5c17bf1148f3a09d27be7aaa04c2d1f59eeab50ab28a8ce5a6376f8ed138da45f4aa11bb0bf8a5c24d194023100cbca75b165dcc888a16a6f93f634d31465f82bd093c361cc25630eb086ad1f2fd7cf7ed79ee0947bf67258db2a0ce9030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008b6c0dcb3acefe79ed573a36bee55c37407eb1e1319c906620f8b4d68d8b73abd40d5eec11a532c9578f8be9e0a744f6023100ec983f6cd111acdefad57e850e8b976e71128855d2294b432187e37aa0e703174dd81d715bb8ad129a478db980dd36e50302047c435bb50067306502300905638007b86a91440c0d3d8ee0915d43937cdc174b00e6b8af812fd21abaea868a8abff0a949df67db84845fa6312b023100d591cf83c3726b12221986d3b1b70c8e1d2c8c3f602a2ddce45944821416f29136322e992629ff3846a000f12b97b0e40302047c435bb500673065023100c5b4408c8311ed0e9ec3ccb207527b7bb75547c30aeb70b2a94c4c98d025ff04de51c7bcb9d96f310f1a4d15d5cdcb4b02306581c8661dded42879e69a459a9e6655d6035287178aee39366a9a2be7dc1a06d647caf2d1c190aecb12b37b16a87c040302047c435bb500673065023100826ece6a4a9dae5fa9787d2579d4b53a275baeb8eeac5c6a19dbe0a16b05ddec4ba4ed2a7d9b9ce5608c2574ab45d2ab02300353fa8e2177912f2bf8fb06588925c6d5e065dd6290cdfe99d9e4365eada68414aff9d7f78eacfb125c0e5fa0234eab0302047c435bb5006630640230720acbf007a6407e2bdc2a5984e2e07194097b57b7e12d52e3e0557bfbb6a2da42960895b61656de6c6d510d2e5fbddf02300c032578a9c4c1804053323d627a68d64b1de9ef211086b4eacc82f696423779c4308659edc77ff2e94aeb07d9e560c10302047c435bb50067306502300811694197e4362c8f267022890fd0c69b80d640552906abbfc5b487262492963aab07e9c6b0dcca7d36d48b4cc6ee3502310083cd43f37c7d76ebc94a37d7e4fcebeddd0cb9f1b08eb56ecbce71db53710f9839dd6b98dda22697c0350f281c0ab8520302047c435bb500683066023100bc8f78840d9c230e7c7653a9aface29bfc2732d1e226d706349e4c35252a4889f2a69a1a3e46d3a51d810d35db21b542023100b47314de9fc6de245c4791a2c985b78e625d9ceeb9d01721fbc32c8e8d475ab443b1443f1f0bd584e5c9394d1e5b10c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ebc2476c99b71eab6ae6ba54a8861a87742b9e486125500a2642cea6619ee6ec85f0cede874629659b56ee41c3acd1790230132e4d83ec0be602f3b0f0d9689b90c28ef2b51e10cfebb4519ea5015eff80735d355b89a8125827bc507ffc05fac6260302047c435bb50067306502304952a54607f237c403b276c728066b98f4b54b0cdf51e02017f7d3fdb9b3e290d7da4037311fc6c7728f3ba9df0e73df023100d6a020ca436a95c4dd74cc1b69ffac5cdb86f15a5750a4d3a1e269f3dd039e8acf65d94c374dc9ab6c1d1a92bcf24d8f0302047c435bb500673065023053dc4654d7a464c6ca40546cf8f10f5e7efbbdcbb0eeacab29fd9f03351999c8f09ee1c52639cf4e5780c0f93fc2779802310086e328a9c5bf0b3c25ceab3cac834f9b48262f9855a3e6230aa0683c0f078579b8071a2dc6966897492c68f401e8d2740302047c435bb500673065023100a7e84d6dc85d677276821c0465a16a4c206ab1fd98a1b6ffa82d07cee97d59d67e93b0c13b2c31d64ef9eac631be8056023045a27626cd588fb150937fa431ad0e2965ab7115ff7130cd83f638b979ca8e5b87698592f71692761c23f5cef5d5050a0302047c435bb500683066023100df2ccf1447b5286d020b504e837a2c7031dd414e81f6dc05894ecce1cda47c9c2320fa2d3d48f844b285db68a748ad57023100e49e9aa6771d918143c78e0e18650ed69d5d2c113ff4bf8772d24e0005ca58e521a65c5f3391162a36fb95b12e0f4f120302047c435bb500663064023076138bc56ee877391d7e3fd5dc09ce85fc73da27286dcf409099061be4118959f7cef43b610dc1a54672fb8518272caf023001d3620d7e87d67679e7936fede34ede3976ed954bc4015cd6d9fd748c2edaaec62e0ce77d5d6ee97e1e8a0db7c9bd2e0302047c435bb500663064023004770a430d6abada496fb99887cef2c3616139de46e884d51539940c574267c414c7ae7b2207c93414679659477d8382023041c565a03f5a71b9d947b17080fc7944d0af88a202698ef8d7b05757d06115fdcf38fb79d34dfde2f0d92a595b3b9e420302047c435bb50066306402300afac15c5972c7e2fc8993305d7f26abb4932591c1822f8da4e8490d9ea7b91c566ab8c1c2e1521d6de717104789c21c02300f571058b7c2f79953ac3886bcac1d5de11a081cc0c7ef01354407b14f38ed7cc0bf80ac82e85b717b5c6c50a4424f960302047c435bb500683066023100cc646d2447de32149d7cac131cb92fc5b293e5eed3f45d8a41b5284cd5fde96e490452f3bb76963f8a0e77fddc3dd03f023100b058db4b5dfd33c1134801be114f468beac8472dce2418c4bfe4ae20febb161177269b4361e09b07c0c3aef66e4331600302047c435bb500683066023100df36b1a67ad5024fb03e8976bf871a462496ec77d10ee4c1ea92eecb9de8f7115d8403673d7cb1824c04d3168f3c880902310095326b6abba3c35ebcf09263a01b09385d64c9843ed301fe2dd0404c9ff8e2288b76002713066992049f49ddc7f682c90302047c435bb500673065023100bea07fb3ee38e236f3120b2ec3c3517f02ce5178dbf0b1ce6775728ca78f5315813c7e61f1d07ac14611083ea5b05926023056a18591989a5b86efd6ec61c0ad0426310509e6d2000415f31cad6ddc146a5035aaa4cecd5239d11bcda0f4dd9337910302047c435bb50066306402300cfc259f5dd1d4ec4ba401ba2a5fd8173ba76ccd4f32757bd16bac8a2c2139ac85802b3bfd0d20a51c336dffa3eeab2402303601e8ef7eac5c63a0353e67a5ed5960b1d58ff4138a29d5a489d91ef053272b71888335a6b89064510517d1ec91e85d0302047c435bb500673065023100e2b99a11dd0e06d68c82e3500bd1b32c6b97c7bfd9f16afceb2ee88b2dcc391ae26811e3eee2bbd2a60bf13eb2e0635102301c453e741f01476a3fbe4b193226c4689fef02437d4a3f0ae39dd0b67b25e454873702c0e304db58c3f894f4203a9f5e0302047c435bb500673065023100c18c1c634578c4297ea19ddd602f1762ee849998cbdcd5282a059bacfacba5dd51a18483994770e04d4c9651f5ce892e023001946d2c38ed9ebf0b4a7cb626f2b09921e73392027d7ad47c006f8e61f8ebfa7eb8007210f3ffeea8016d84a8ca21050302047c435bb500673065023052d1173d4d433d2601382e84bd7911d72e9d796bee7422018b8820c702b0e4451dba3a5cc9864293d1e8ddce7cad14d102310080ff684a7d1117f31d5b9270b377e9babdb140980fb5c44e77120e9bbef47822d50d7181766294228b74cd81237ed1cc0302047c435bb500663064023067c955f43bab2494b848b9535115c9eb56e54ad3be07a7069bc4567b34d85da0cd515c24f06c5c609ae3e1526e904f1402302b26625c3fadfffa396dae6602703f8d0b82a0f0ce0ffddbe93759861c4b30fa84b85163bacdb93b541c93e0f4e5f01d0302047c435bb500673065023100fb4aa41012fca5ffa4e99f2f6cd2221a1ae5b961edd8a2903778ed52521df0de4c0fcfa5bf9b5b6b3be8d3732b1106b702306a1e4010cb7ea782abbc37786455f7b586a0b22ccb8331b683b66be57fc360dbadfb0fa80aee5225c0d2931ae71547ef0302047c435bb50066306402302137568623ddcd77972bd1065c1786253e249ed6b061d852fb69ac5445aa0bf4691103f0aa0b1f798b6e735f8e967068023002faf228334b9f6d73e9efe3eb82270f61e6b3d8407236615cb0d4d8a9aa5b70b57df54d1885919c1a49ca6c6b4e8d260302047c435bb50067306502307f2fdd9cecb25bdab6c7d6e5d7bc1c30fb04c65c3104d7719e9fc6932a9050c06770771900ad13b1cc0060b6becd37cf023100e92241ab32745d0dd835f6adbf42782215c8cc62eef18ecc830a1359c93647287ba59c00819a42baee4782ee966dccf20302047c435bb5006630640230174401b888985e47dcbaf7144c2f46e64e2504e7a2a1226e1ca1f3088216a15868d66704547c7b02e99243845c72d69302303cc54341490a30634f8bf7b43b25b2befc714c1538f673541af6d2076ca81945345c8931a63cbb8f79083d57f1a96a850302047c435bb500673065023046e2f7fcb4c29ae8bcbb743660b82ccca4d7c9e55925fa6809f27b50eb5d18c7f93657369fb5d96393e9d2780cefdcb6023100f49ffc6a6abdee616ee20bb746e39ef3b6c879a377c17ff05a26a3df6349c62f3d777dc77ae31b44be05dbba280e82a80302047c435bb500663064023001380c8da4d5637f9539168f9aa27006716aa4a35d5a03f14d9dcdc872941e1b6183654f16208c3deaf20ee4c44f260b023035687e70a7e2e2af31195f73107af9edb00d1d6f97a818f64ace579a35e06a710a380a0991d971b4d61ca5c764e281440302047c435bb50067306502304112aef925f3c92d041428cbf4c5e458523e582810280e995faad758e595236326f6f79e37060608f708a560e2122b1e023100ab9adf90c4648b091be0b8f54fef7eb50d3eb7629f75f96c2dee4932d691a1e06bd1bd88c2f2cc3be0a4870ed4a2abe40302047c435bb50067306502310085f0f8b0daefc9ad9fad0f404b7ae3bc1ee1f6ed558ea3e4fac9a8c07423532a873eb83079716b973b604c0df0fc60bb02305457917949b32dc271bf4157aa94dc8819cb87fd0fc1a5000f71d1c2388383dff3d307acfde3ff1b124162606d0c59780302047c435bb50067306502310085f72801834cddc88e067f55d2581c9bf1efebfe63cf64e30b817f195b6307b6b511bcf8de8613d4fcf72a98928428ae023050b92194d5368bb242e5de909e4bc8514b0f6775aba3c98bbd894a0dc9520daeb50dc763a15ba4312580e2ff51e3a9840302047c435bb5006830660231008e1e780bdf107d9e5174ff6abc2442d1665dc97ff2b3f2af46fa73b0f1797dcee2b1e52dc94173bad3a53127f203147c023100828c16af56d0bcd6814e1911775eea30633ba5faf959bff8b40d5c5d5d87a66ab72a84424c777436b6a0ce64a557e81c0302047c435bb500683066023100a504bade3ddb158a94a74384000b589d1c1c7b5ca0881e7cacbee3f432b23f4dfb9b8cef22b46355887366f6c4fde3c7023100fdf50efb9347c1f55ef1402054a3f70b7f62710b82c8f3ded1dcffd1fc1397748c22db364ec51ca4560a69ffef98a4720302047c435bb50066306402302585b286c0dd234d7dc94e0a8fe093de3a750ed6968a9625a14d0752a3fdaf3a28c520e8360599b82ed9c36d6fb8e830023052742a7777ccc5ca2f556ea61d0218fe81b6793c41e191bfc343ad6d3ad4ffbcc27ca9d679b7efdc08275f134c5995110302047c435bb500673065023100d154c171ea9357689c55baf996a450c96f30407238f772f10b89dd3f986540b06e5e80f13cb529a561e6b0e71d055fc00230256354c3741ba4ad79aae2678579836245d516c36504c2be64e9fb6ce0d97b0d3f97cb2b19ae8d8810ca1c9ae93b31da0302047c435bb500673065023100b7031f1f1cae43576425d2e05dc06eb71ea8d12bdd4547d268f027b33b2d386e0674649509514094287c906f7026af4a023068d89c4b7e02e1d452bb375b228fb22a953b9f6b9a264b8dd839f48df6b23a2d65e8d2b7ee90fc0cc1d2f31f4188812c0302047c435bb500663064023043f343494115fef35946f8c8614560486aeb4d7ad466691b15e678e422a649c941d3ba66064f3a1fc2c6495db0db430602300b06682940cbed39b216e4bab28ceacace83105b23b17ca6586bf9ea4ea6658d8503844df7f40ccd671a899c6642f4100302047c435bb500663064023078bb4d4cfcc6e49d62517b6cabb293adb590abc0277afba15a6f4f7def3f83894e5394dfa1686dd99a57712775a0d8fe0230539d0936b22330de130d972bffd5cc5924d12dbbab1844c9f9cd62d7d893b4dcd03593b5859eab421d6d76ce48ab9f750302047c435bb500663064023000e98387912e5a4c4c2d63d18d59c83693fe183b0bd7015c4b75954f6780dcb881ff6c6d7a3a84058017b348a522d392023076d136d5b4a3f8f8a2fded68715e5a20bc44a74400427e2b00fa46787132e179f1ef331f4b506812a23646b6646335760302047c435bb500673065023100f4a1ebedfcbcdfd2f93a83ed45365e407bbf68bd0c0de73fb76bb3b7dff3b5b6946808ff507b2a565999223a2fc52e8b02304329f2b91dd1106100b9cfb2cd62de42b80b3283fe05e49f3297c56e5a63571095613b1392e188b4524bea8df3eac3180302047c435bb50066306402302130fd4cab447a857d861b7c935a82750d9bb25dbcdf851db653c0e17573d6119c45f7eb593a7bf600be527d893e54b6023040a68075bb33c01d00a7d6b5252c7635004472232980a5cb4cef9226f058c9fb4243fcccbd3a8115f043e1a4c2385e310302047c435bb5006730650231008eb136f289fb0e3f085457168b65f87cb4d72cec567b2a93382ccc6b3aad536455c4bf9dab2d8f0127541571f236745002301f0317a05f89b4289fd340620cc6d236b3315d0f680044d805d83ef355d58707215b86131740701b856b7ce0cb00deaa0302047c435bb50067306502306757da13c3066f7aee46262bd78210fcd1cb8cf38bf56983ebe154944934802a07bb29c8ed05c09441a7b1ab9b1b99bd023100bd846dc27ca2105e1a6d7ce4e4029bb17ac90122a19fa709bc25081b3a1faababe7d66229ee98986f68fd6dd8d81953a0302047c435bb5006730650231008b89154210cab1eae3d56aa536683daa3bfdc5bc811deb3e83ab45ffe7607497014f9f20bfbeae118a4df75f47e340280230228fa870e2c707fcfe09f6ede4f003b160d068199b3ab912b13ab51da26c7d7ac08c7b65c491b7c1496f155338e20fa90302047c435bb500673065023030f9008d9acd6ea50c38b5f9a01e509b38e31c2a9f5dc0e27b3e8bfd706322b402094be888b0dbb62e97405d31c3d9f6023100ceac09a4bf9b4eb22140c78368aa31710a4a77976976b7d54820cf1bf0605ef90728cdb0dc1adf4aed2938642f6511b00302047c435bb500683066023100a8f107f686860460a8bd9ec484e598ef3622b37e1d069bcac7f86a1b7cbc7758e9e305e23f0afe16d7d422a0e85b6bc2023100ea941b4590609fdb8b34f7d72c01e3a4db598429d8c370c80eccfda1846876206860248cddcef00436c70e3ab17e8c800302047c435bb500683066023100e7ad3f560df507e1ce88a53f92d96b9005bf1bd6d5cda78bb16839ad6ba7224d7deaa96dd18e3c29b4157fc1a6f20d53023100ea27fbd98a4b0e78ad35cb3675cee3f4f40fdea0297bf728b21460afd424674569b63f830145cbcc637eb11c05f978d10302047c435bb500673065023100ac4c67195241f8a72135dd7e12a728ef2e63ba8b733f7aa941c27cd4e3d4dc09b3c118ff7889ee147d13ee1663a9861f02301002441e536c5235eb073aafe4c1259ecd28a541c57d4197b71eea8997bfac95a432ebc07fd88b97aeb0cbda80e5d3c20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302dcfa4a39ffc3e966c33405853bfad03fb8135051939c5a496a203c381c6503e4d7f4c50031c9990443885e3e996bcd4023100a4632cd5a95f73c9c5090960adac5a7d1b6939b8f53515be5066508068bb7e5f7801bba00d747bd5ab0ef53aac76acd80302047c435bb5006830660231009ba37ffeb5ed99586d6d16fac985ec35f0b2586e466b17a81f3d33a2768746d6aac753cda466fdf4b48f0d57a87d800b023100df0b5c9084b005defda90bcfcac52312d27ca9dfc4e1ba87c1a9188316ad6761ed0494605e5db963917743d468dbc6660302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f7a543400a5a4426d6523e47edfc45c2f375554012fa672630d714ed9f4a7895f3ade8f5c5f99e5223b3f860cfd4191b02301ecedea417c6e7498828137cfa928dbe3439f05c222ee99172c043631f268558fb7c4ced96ff40bffc0cfc0816716cae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230527bcc40fce6a8e0dc7bd52c7864de04853e7c97b4fb4a53436540af25309dc3bc9296856500ff97af626dc33c26dbc8023100b6e12eeb70f432f962ff9d566582088d8690b00a01b3ee371142f61fa3ddf9d1dfa55641ff6fe6434db03dd42c05663e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303304fe4f9662b44f03034cda9a00d735d6c1e2615efe0d7aa74a201c5495ca7f48b9b5673b3f6cf15f4beeebefa8e81d023100adf8dc993b69f8bb517124318170d733f7dbad31cedeb97c1751d1ee9a981fb6d0bd1eeaabb3d356ddc66faa09550a720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307836f35d7466249b5ded61652e061398641e5c14e86a03c3d327b792d65503c44d422a6f613b4fd2da1d73d40931235c0230627b89dda274022d31c5f972bac5b5ad3b39e17633a7400d8feff14dfffbece9acce74bdb14811a469963399ad3d323e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301dbe23eda14e19322c446ee9ecded9a07f8d7e2785f67ed96662f321b778f7ec1264685903952caa4871a9e5fbfdb23a023074293e2eb4fe5a852d992e03a512329e773518fdcc8d4b583dfb392d21567cc12eb71ba66d7d35b0e964b900d4cb305a0302047c435bb500673065023100efc4fd2edbee48be4e5c762b9eca8d1582de38a56485961df142c557c5a2d3c0423765e433f9233703c59fd5637fb3ed02306b170284bf827170fcb23d7770ca8894a29769da1ec0d83ff32ff6958cc01af390c33637c000af687363a631c38538c70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305628a1f0bb7397ac28eff1f4336972744131416824b8792ea409f001b31db596c87c4080cb8ce631176426217215db6002307a0f28121a7e701b847a7f8a570866b6f97f1e70294a3f1875597389fb0fb8cb5e5a4fe468ec2d3f5f23606631d8d4d20302047c435bb5006730650231009406e15d879315c82434df42e698fe033e01511b8c48178700ff41fa67754145fe68e6771a2ea0b9cabaf46b32dff24a0230617813fd741ab797c665d247b7de9b7ca8e5e782369c1a6883299b654eacadfb8138b368949101dcd57360920e2cce1e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302baaf1b94d67a543658c91be474ec5a577ed98c7f6c06ff7773a25aa15307ceb1a15d5276cb1cd58d70d2f84998f1fd20230784f3c61aa70cd314c40f8ed29bd8ddb22c94a9869a388af81ffc0f875914ebb449bebcdc3b3ee411cd3b865433b6bf20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023001f2fcac3161dde4f801d5da49aba5c5251e2f855bcafad8c2af4e94d0dabe512c6cdadf5a3fed8cf3f0fcf839152af6023100bf5ca1239c7ec34cf45403f56e4f0d547af30e009078a5f2baebab6bf8d4726e365c33828a35e38268bcf016ec012d1a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302de60305ce872b3484c68eb1f397e07b5adabca76c1918c53aaba0ff09ed392bdd134a0291668c2faf4476f4cb86741202302bc94188c0907afc4e477145f871fdc6d26722ffdbfd642079c2a9293ca24db44c5711a255e1841c42433e1540cc8bad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303e0741d7b7d6822eba0755ddea50df7e20800e750c4f6dc51c21f3891a6ae47070d9847cd8bb52b0b357fde8685d1e9a0230551c4ea5626d84fd1e519ba8e05eef9ed0c792685922a27e472461ce7ceb02d8718ce664bcd7c6238b1ecccc5db18e940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023057f7d384fbf2a1b284c582912104849af8db838b746ca93d4399f6d813abcb930e9ac4fb2e2922f574bd9a26edc5796602301a47d7565b7430bdc42a416d0b9d90c5975979ffbac70c7e4af948a89409506e73bac4ce0615cc0a1f6689d848607ad00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023075b864ef440d02a0570bd655fb4c0c9ce26725c06c602f48e2ad47b11cb679891ccbb93d7cd1c09edaecfbeb9d3acbd9023060f2e2eb9a631203ab33e779d9d670d5ef8ee97321f3314e76a0d7aed03be8538c9c91557dc6e598fa8f07b44e178db80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230035efb36b7fd859dab580019c2b6003f202a835b8b480add25242f043e453ebaf5ed89dd1402766ade88f01e7a2d5ac2023100b340527741aab6efb74c53ef513f7d43d495c6db0dfe96e49fa0bb14b99dee503d8d4e6036d741eaefe883b2d1eb988f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023029be2999df9b5f2701b174ddd8652c4faf9237c11dd71c699cfa51ae207180dda3bdcd13818725920714857595bdcf7e0231009f06db8199187d7e71dc76cd7742ce194609510f6967b2ea8eb243d03fc2175396cb7b9ca545e600896ea9ae8e4b09880302047c435bb50067306502301e304c1f28be44e259bbb5a1a5ef9ace12ea27e9612b4086859f6deb9fe39a9141db592ba4c1c9793200f313c8c881b8023100e467ef8a0dbc42167eb601a1f60df6be960c2130bbdd5b2f852ab5a730d0380604af9192916e000327f3e5e4ab43cf390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230012c3901de7b0cb7c006b3adf8e6bc0f9f962aeb071819dc5d5994ebda58ed5c3f13dd584b1939b330f502f84cdbf16002307c2ae5558583e1c2769fd85cc08b3bf40f202dfa4bc2aed3f68c8a2228b75e60fd57cf30921f920468a045e7bba3dd780302047c435bb500683066023100fd0503c9a2d46a2bda2103c77c99fb05fa0c3dec25356e97de24ac1dc727a0aa153bcaa16302e2d4dd716bd6af137017023100eb0badc35d64d2008b4f182213b4a371646b0eb0a8cc1159c68c782c1b013043868cabf2b00780a2535643be115ab66d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300b52378bc129b3eb141a08ca140f25b99509f8753277b41dc4b3773f6390b368d55641a315f438332ceae0123d3e9b1b02306a3e5b82cd49bcdfb9e6a05b832c361215a5a387c1cf5c03df5b8a8b388a35b0b568fce25fc708a658883b7ab1c560ae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302511609fe61f20f0e442f80c56c03f9ba128d71e7a2ef3aa58722ad23fabbbe229305226058e0e5582cc968c22f83d4f023100b269b89f5a1dd0026977f1c13b8607543a589320f393bd84ea387162ea20a8324b9df9b49c079bffb7e5cb64ee1df2190302047c435bb500673065023100e6b028c08d9fa8664893ad748ab7929d94d291b1233c104ffd7e0551ca699dcf8093a73c385f7ae7093e8719f3b61aa102306193e060459fa7ada460c06a571c406d6746f99c6813cc89c03a098bc24774da34a3dae6e55feef61a8aaab1757e4b9d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b2d29566a20588aa1135f4068d1e69f1a2f4f5ce28545af44edf435014e82afdd0e6c3dac48e66dd883db43816a5566b023100cf03933fa8bfcbc9ea85f20c7cba181a6e8e9b16a5799da7a7e8a89295f22c849b05a56c94a7a4a9b3c8986e81b50af70302047c435bb500673065023064bc6283880a6aa6f7d6373b740a17adda55e561ec1b5bf0fca7fa23c362e5c334916613b6a5090ab54b07821781d29d023100996d09f5ee6d04c0d5d1b82870cd8779cb11f066332e372b28cd3fb444bed7e6848af332413249c6ac07589f7503633b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023039267c73aa979c9afd8e4cca351378d67cac323bb48269e66d7fd1f968514c4cbd1eddc40e2223da625041f7ce5eb527023100a5bd26ae585607dcce62bc5a05bab9f132b4fc411755586f7dd83868e58b7b00fd5853f62e4cda95c90571864f777c4e0302047c435bb50066306402300fc90097d560fe5659715876837c186cf5b937f4ee34a7aeae3650ddd6278f96f7aede546b606b23fa4c29f23dcb59bf023065bdaa9fae4fb5f4bddd640b84f071a96669729fc3154bf62e020935aaaae0d76a870e8ac62ace6a1e873cb9245497ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301b688c55f1f68a799298c0e4a6168665439f0a60ce970b21cc900504c7e4e52a441d5c6d58e7598f1957dce7159c4fe4023066cee19f04f885f1632cf07a4412c481a7e9f35a2dfef849c08524c50323db35f950cbb9930aff5920642443ac3dc09b0302047c435bb500673065023100b029334c4155b81f12dc7c15281e0dc38f7676000170bca33532c0be8cb4abd27e15a2da99b148c92043beac0f4a873602301843565c123eba2fc2041507d090c7fe7d7f783961abbb4f7c79a42abd8cec3d04b329b94f892c38317a0e6d2eef5f690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d0dabb913c7100edc079edd1a5eddef6ac8f9ccecae26211735564a708609b08f1bc5a984a486bdf19d1fbb9362b757d023100ac847ccf6a5e03b4258a064c805535ffae73b7a5e415c984f5ca77e5065255425e86823673f3b4aa93caf26cda8a7b7e0302047c435bb500663064023025c1c4d22760ead873f8ddde03b1199deb178cfbe2d628fe7d393529f2d2ea7cccd7a6ba3e4b12f357479e151ea6fe0502306d84617d59bd809ea8b99004dc35bb0eb9aec2c21bd43b8fe071880f32cd7af4d2cf8c1db70738ca362ef3906dea8ae60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301fafefb515188e6ed262ff6d1cfbbc17cf9a1ed4a68df21d339910b0f77bac4df123075063f8bf3e8ced28cb9d921082023100bc5da49bbbaf4c7d95ea36b1a4b8041337f71703bbb380bf7f672c359bc2c51b2034ecb78ed58dcf2504dda661c451370302047c435bb500683066023100e84ddbb42ae63c1f11b08321619cb4cb965b16ac035628b0cecc61d9929cf16a4a69781506b4763c9ce1bd408bcd07a70231009da3d843fd17f4292d008c22de995f1c4a0d7379c44014c641e764e284ba14c97c405a8c06c4155b663d662f6eb248890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023040eddc07810892606f55a595259b383c72be9fc199d82a84908b29c2c0574040d57b7708068c4728baef51984f015f5e02306720b7d181862adda0ab6ab31c37c6787eda485766eeacb62931f4f05cbe731c0edbfba7b4009d318c0f42d76eff98fc0302047c435bb5006830660231008f48702509465b8347b96f527aa47ed52114d4d6f1055e79db6c2f0f4cd37993e477367a5ebe1c8d8b1c0bd0ea4dd7db023100f72bcf44349428aa64ec6222d280638fc4a64eed5b0835525c06c771f04462f57d071f35fcff42243980f820c020671f0302047c435bb5006730650230352284ea21872b6860cf43f10fa045b0d4bba023cc0f51ecf743b02376e6b395007eae9f3c42c771b961d4f49eeda814023100a4aca7dcfe5cb2099b06ef61ca2e765ba15373a14b619ec9fbc6b0f12c17e33f8ff770d7a0b45b92b1805178ed4a7fb40302047c435bb500673065023100bf8894afbf88c50bbb02a479f3f0a84459144b221f516401ef174141283bac0ef5558c088be18e42b0317f945802bf3e02305d65fadd782b4a830eaa8591e2ea763a9a6bd39b404e3ea46f124dacce1daeefc903b8a36b782059e3c4d1de4f6647a90302047c435bb500683066023100e89cc3ee819bf15b209a4451767fb8644aea943d7abdbe4cbda554620a40ca227577af41c1fd807b398805a1c85a084e023100d81a1c1d5ca876fc94b3d189f06089c9a71a110f48518915db3a604748492a20d680fba21af90554a5d4ce510b98d0ca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230187733a4955c1508403b0fa1710a8d52a33d88a6ded52988dc6638a8d6edd0a7f8950f54d241441beba192c835a2320c02300905ad686fa17256eb2c3b7f4245bceb905dc3aac9b2f10694abdf65db40a3ff8221fff498dc1bc8fb0f1255ef4e89660302047c435bb50066306402307479faef16850c4e3e0cbce4e260d4aa2c72df0b987e329c5b58ef12ddfce500763004c2255809d43144a037f80c1274023044c615e864d552eefb3d37c1b7c8ba1dcb25ef7c4730b5e5868a4cacb7a4f89b0d3a81a8956342c86e664388579443d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305b194aced8a1db968d6ba1961da6fa821099444b9672f80d587ad0dc6dc613f50269c0585584f242a1cbc617c37515160230718f783510d8f5b4fd2d66f949de44f2d09b19c7fdc705b064e8c4d9c5368fabf833de53a028e251d1e88ba9420db1b10302047c435bb500673065023100e0b445deabb05a21a1bd4422c513985b9d6c78ef8854d062b08097f7511b75c2125731580c5c12dd50e4758a9f8af9bd023066335eac05adee364e77df5d57fcda5ac5255cd36944d37dcc83aff8a7cedf6ede03270dbb684d3fe886a36976bc77e80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eaadda1206ee773b246471aa76b902f39c201eebef5eb4c61aa1c1aeb997aa05371283834a96701faf7a15ebb7699c66023100fb3203c7f0ae05a6cdfa6811a2aa473fe753124903b7bb723bb12923c95d299b59e5493939faae652014efbaf4dd93ae0302047c435bb5006630640230076efe992f79a8eb08b274278f3f9884a26fe108f0a3997309780f17bb0b658b99f4b23639d9afed0c8aff59a39d79990230053f5a42b26b063855518fb19e1f480cd7f14b25a277654c352f6bbea401203681714f64552ffb0810b649f479387f7a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300a6c476b7a053ed0d99ccbda6941afd5d50dc1a79a6d1c4e9f74aa101d56ccd7a6ae5c90a0ec369707ad7e9c961b4168023100c6e8d06c8cba12e213d5a38778c016bce0155ac22da493f179d93ed3439ab58d12216302acc47c3b36a4ea1e2eebaa230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302436617b5460fb29bccc24d46a74f9d4717d1c5e0e2cf95f12e94d1ba4bdde693ddf23e3de08f038c5862c610fc95fb902306bd82e8e085e1335d1786c7506437306f629d2faa9c10410e43adb39ab181817ad7865ed98f454fcc154c4b5fbc4f07d0302047c435bb500663064023045fe20aada770599906d13f08e139f9cac37c6db7f3e48ea6d678bb8a2e3520e2e2e1c6e8ac88fa54d9c8fc8b1e9835602302f7d490f874b933341d0299fad64b6ec1815710377f77d5b39022f128062523ac32513ed67ff63dff2b15a4a7e1bfed20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d2b5b3917933341178f6090625a6f72ac9a427722b6532a76cd409ea6f4101485a6d95f0e34d91f9d30a4f47133e222b0231008e5986ac331f5c24c17de62363b93e38cc40f245be1397ca35c6a184449c904d5b51787c0e443f3dcc751ea248bb48920302047c435bb5006730650230256c763d2ac2b39822edc9b25c0c6c6192610837b20a8bcfef2035c136d46df2759dc2102d85ee58fdadad6ba2f75708023100a514409910beb6f8a32b38f128950ce5f03a66d8d10afb0d37fe94b2ec705022f268bc64404e6bbd879ef9a97d9b1c200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304b613ce5750d9bc6f9089857cd2fa66d840289848c39e8f8ce1b9a7d8cda1d1ea48153002f00ee4beadf80f113c443a302304296518304de4e004da5b772802e2582cf06fb3b06913a9a822346c6e15dc40e0cef049142aecac0d58328b449fa11270302047c435bb500673065023100b7d501a9b8fb6afc126a9456c9b62a2ddbf5f2627c04c6f51f5ab3a26adc0cde5ed5e9b630a9f785033a1cc1420582a8023059f3568f982ce5ca616d44a58677b165ecee947f848d990088ddb0fab7bcdc09b3c81c5a25d8706ca4efabd3d196e1cc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305ee218bca3d11f8211696b880f15a2d4b1e69f8732fcf3b353e23b244a14ddba1fe8db5fb9d7c8b7b1a2727c46ff79e602301114ab96385dd784ed4b85d9991e11461f4b48f01b204e3ccde9481cd5c973a44da63014ff1d8c511a9792cdce3d56c00302047c435bb500673065023051b6020153bb78156d0e5197c7b37200b97d8d70dbe70ce790121a544769ec24a123a6b6aa04c3d4daaf95d074f0fd99023100ce99fa3aa574d005083a86a7ffd63ea77c57a355b0a7f707fb03bbec8901f5617ca0cfbc0e7087108155388674ebd0a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fc85bd7c4837632562101da3386c4f03c88d6ae9d524431562576f0c3e34a19c4bb52d39ef1e9b5a86a6f918abcf2a3e023100f3dc5f5c4a028931b4028f676023b93a016cd57af6aff2bc4c39a63d3a81904fa7d57fffb2fb694118a55c3266d919740302047c435bb50067306502305c3c3a837ab669ab7887cb2890b7893172c9711c8d98e083fea4aee93b16f3cfaaa237c0ac60824fa455cfc4ed00b9f5023100b3502526d568ae7289bd538d6095de30b3661c71a2a9e7200a3f9e245c964a845d2aa2b04ef6f7d3d08ce4319dccc7670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dc23b38103f7ca620d1561a9a1f9a42b10724ca6cf95e47ee7a7cf0153eb80e7267da3a18a9d653e62db4f943c00502802304946ac5d210b2690607bb337ecd56294a679ce91908b84ba809b2724edcda7ffb2c5f1a1db45cc596a5fc8a7c60c1a5d0302047c435bb50066306402300774c15d489a56b47b1afaa96f6a654cf01bfb91a553beb9179410d55668276d33090382f9d137261d4e615c875f3115023011376715616283e00116716170b33c5a0a11d36739c3c110af669b6307c28b15a4d7d83a2410b3dd428a1b67a3850d1e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302d882e0424e29891a602883d538002ee4f649118bd5444ca8af7aa499abf60510d20e2205ecd38f084f8c89154441f6702302129a3a152606cfc32af2dae186ded1b7abd1f1273b072494fed454e0631456a56d86d3ffdca58a9c340e31f1849ceb40302047c435bb500673065023100994b8d2a6b261e081a739502f63f3394de49d12476f048c349d8b4e3adb71d3656de6f553eb856033021d1dd7b1f7a0b023033be0a46f9600b23bbd236f78eca0bb597f5f9008f93ae98ea8723040cc830f7a2bd14ac7a6a41028b0e508a222ac01b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230298c8f0b54202913be67918a9f75d74587709541027f521c66d7dffa5eb5050a370acbe081b8f39bd1644ba9794786ac023021a0f41e3bae10912c8d7eeadb4553cd7618642ac8e12c311445ed5334f223fafbb44a46f0a32f08cac376996fbb0db70302047c435bb500673065023100d83dd8a5a5327b8d0d81f319878b6a19636b22f5c5286c9a707de68793283d534439a0270bded7b6a0ed02daa9b10171023069456a09b82bb246b05225e75d45e92389b991c9560612536fb6c0f746f433fac4087af94a2c63adf72f06f3fd14d74b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023020b7e5cd1dc177355351d94e7120c13ffb81fbc4bdce5305a2ff447920c9a9c2fd7aed8a1ee6a6da7ddc97f88d0d9673023100af1edbb384e53a4149732bd4cab465ecb23e6b0e12f883d0b0bf0fef78651f201f29cda61828737cd1aef0b83d06dd240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230329cf3565bf27f42cc2d2fdde9c0dd5dde1447c4a5882365f60354c1effd73436a5b460cae8a80868d331379381fe866023100b828a629accbb15977263a76e65e32acc77a97d6e5f96ebe53ddeba86ac65f200eb8062f1ed1770660ecce8c27384e970302047c435bb500673065023100bf866ea775f61a5a3ee8c3141355d53ea67cce50eed665295fbc9bb34e50bc94f331f133dabb97948ba2e95b6da96763023034eecc8127c298857b6e409e893251b426ff89c6034ff3b144702fd840d02503f0370ecc6d0844e3cca00d20d7facd390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009c99dd9652d56232bd6172f5cdaac737674c7ec1fef717774a94cca94519e189dd98019256783887d9c74c0136ddcc510230101d11d88faf0d7aa01822d43e4ea7ef695c98fddf90c9d660cfecf230e12560404af88b81a8d0dfb16ac6b93518b1330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d4ca964a3deee5dde93f7fef125b9e3fa5e8374b9eb4168ca3955bb0db8e9bb1d2b93d914197cd87703636c624c258d1023100fea3fc4c7fda989a33a82587b7996c1e7af443ba8c06c8660dcedfdc0369f16d7681b7223b669062e9bacd169d646a5d0302047c435bb50066306402303cccdd3b388afa84ad521a49e5c708c318c7fc12ffb67cdaa2b601020817528b73f465919b6c0ec8b6de41bb2453264802300d96d8b144e4fffee40a2b7ce3577334a0394db3c9f82d49e7c9418885f9c42347271fb83d7a0617ac655c7556b2265b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a9c2b9c284568c25f46b74a3095eacd8137a10993f2f20cb42ff55a48b98a55946952a6eda26d595e2432433ebd86e9f023100cf8700c0a37a2e1d2ce77bb69cd79b534bb5a3cd78cc52567f78eca1d6c09ea0b64eb3b246e9910a4279231a5e4a1ddc0302047c435bb50068306602310092738cb027a9f93a622626eaf4b9aa3bdf6c1489a9f808c961d6b8c7472a619102e1da668e18606efc92d4e0760c9166023100ba34153533e961df60d830b46a2533405a39d5a432f1786f1a7c29e0b35f1eb66d3416fc597f851d629e4bedeb09618b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310088b0a3dec23d491d57f285746e5298706061cf281aa717c7fbff352f06e3096ce39ce5d3a4b082cd707ad13e8669ce9f023100e6e0ff2251acf9fcfcd19dbdcdbd5ddaa1295d64bbc1f22df01bb9e4d3926763a9a2c88b4bd117a4ff9d828c4ba6ff5c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300194db78ff4396de46d9116a2213383ae9136658102b7b98c67dd27ac485783090bac79e1c29e3512cf9fe89fa7e7c65023100d8fcb122ee153f56c510d1ebd3511efe67d777e10e640bef7d87153ed59f12969d968bf8e0469bf74b0f964c191816c80302047c435bb500673065023100e67bbb5422169bb7a7d70fa152cb4ccd4eb589a08ed85b206d7af494ec8cb85fa41a3360c01cb695a5138092088553f40230650231df4dd1fa84d0342d4ec08c4a743101a411282ed17f1a8dcef51b9bf510a6e63acc37a4fed6a2cfb4eaa14045b60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e0a1615dfeee57878a52444ba578959ac370261395aab1f4093ba85aed1989f34cc34741d2b48254568a37833febc6fc023100f5ddfa9ed1de01c14cb898c2062b875211095214729a66020d730a6c1565c4515427a91e73943cc0dcbe551e089e117b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c6d56087f3d07ea9f54663813fcb1f31a39e770ab91fd7bfddfeee1992efd48a8c489ae0a43e19690a78edf9e60fbeb0023100f22a9ed3aae5e6af4f917d376d8a0aa2b5d5731b739bc17c03a0f2bfb98d752197690177a7b1e9529631eaa879e94fb10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306abeff80cd930dc2034d9ef7104ae7ea387a59d943b388a1a091d7c1c84acb1a3981acf7b5843a1e08ba8f927d20deaf02303a12b9c17903a643b6b8764e95f25618cc75fe9418f7349fa9f8c36660f3732defecbcc637234910988203df27ece1580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305d7253b0bfde5e3ab3b45e37fd705a0d8fcdda632aea803c445394ee9ed63e0496d6b68a4afa81ce44f0b7f4adb54c1502302b0f0c61acaed26654b7d45d8bd9f93098e738d47edf08f108a622d8a661a016b83b43bf83f1777cb12ea19ecc9831b90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023071fb85c4736a365cdbc705becd482f2f8202028fe34f1b8be883514a73bf02c6677db36a81e743dddb31e03fd52800f7023100cf104f00b5f6101bde6940c97ae03fbd5b9e10e56db67a29f3a807bdb1deeffa4dd609795f625046300c43516f2dd4db0302047c435bb500673065023033337d46cf169042af589dc0b55a5f5fd6dea7acf2f7bbbfaff96e2eadef8786977320087939326310c335bfda89f0a3023100c6a96c0c7e80b07050b5aadb5108480157e217853110e202c35edd8bfb7ca6b0d2955343cafe093b0f0300bfe2971b840302047c435bb500683066023100d4b84f8769955da29c1dfc480282bfde46f89b393afc7465a5cb2933700d67cc9eac57c5e904db4b666bdaf4fa2ad1130231008ad1dc18cf13b7b172b4135b5600d579cb14150564d6fcd45e1d6f5f2d1b8aefdbb883954d20d22eb3bcaeed05a7108b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e6b1886dca1b472bdfbf8b9c21aecd7ecede5bcc786978b78f3dc4c7273f7912807e70663eaefeb26876f3d2b0746d49023100a6faee54aee9729abedb5003226b36f17597390af7933f6efb3e14c57412be3c4f6372f649dcc27b0d994d351f4b76210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301bc7b8d0aaad1b8f4530585c17d946f4bdeadc700b4298966902a7ac20bf3df6d2504ddde2497fecb3dddff190d3cadd02306aa7f6263988e0276b3edd332c040b5d07d8324b08dab50b79fe70f7771c6d1a08ea44559fadf5f1261bab432627adbc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099500c754b63858ce12254507b9c9c447e53b37a3808237a33dc5f0e3f0863c442e248a78d33e8635582f18f7b276b060230578531050addd7ad9feefc43b0ee772fa58a074eaef044e11a6abe29edd60ef9e259d5bd5df9d43fe3edb052f25588630302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303ef7aada4adbe199b7d47c659b5e831f22e8575950ae75a3b328d518dc8de02c288b8c89d53ec5dae473af52bbb82271023100d412c4e312eebf6c3cfce084b94686b26767c5e1c0c4a3a91d2802e2702f54dcd3378d890e9bdc46cb3f4bfeb4ced4a80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230400187086ae95732a41ba5095b934545fdf3de4a45a66187448d02f32ab43eca0cd2cf6b503af78dbe4d255a23034f89023100d4ec4fd7050d769647c3607d70019f99692f76cf2d261850b06153caa9edc5e33b1eef539f0283a17659ba9feb62b32b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ab47ea7e6d3ccf4d1a369d5868a03cd304e35208ab3ed696f9cd1a325cf97bd1f4ef8e2b2a64e7334928e5cba2ed3cbd023005b5b2947cfd80c18e9fa533541b0f6db5b3bd6b7441689d14233cd155e1fe15b9e82c904e37e5918299527d326d18eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100efcef95436de50297b224043a5f4974b49a020ea5492a4451566efacc6308cbc03cf1422a7e71a23eef02f8fb43306ea02306d0d8f68cbce665dd1e5449a221413e054fa4b833b4d1949ab03c35e1f47b990a43214f6ab9c6c731afee0c9e18a4ce20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307cbb2afdce6c7167adc948c91e021b510e5a1dfda49de37c82b94756f78c9ddcedece5f101ccb9be16b5f426ed7ece3d02310088c9e8ff6ea93d39b148adaea383153de4e0749073d9b501eca533c6ebfac5dd3f0d51e9d398a8cda0d035e78b32070e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301417cecb6132669b90aab22faa88e2ced1c3eb5a3338c4d2a7222ea90de6cbeeb6ca331592ab1f28cb24c000ae6c1db4023100e60b257c9fd88ca1e4af9349488f5a68cac155361db3b25ffb75cd8803ad09eb0c7ec89a5a00ac860663e06e03cbbdbb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b94c1764b9b87f9732fddc91462c76b7bbcf78feb13c8f909c4d095965c12439af7a9cc22d516810c99b82680a6419310230687dbfce37cb670a1663bfb35b56c92403c0016bdd23aafff3c151560eb192ad28aaa3745283fc8e03beffd3fd4474c40302047c435bb50066306402303839ab881441f6c2250cc1725ec2cce087ed95a3df52f987c21a41bd9bc5d081ea0373dd3c215e81d513b36b93edadb9023019d76e35d8b25aa57e3449e15920cb64c7e3988965b5a004c46d02c53e748d1020796170a4189860ec1c902139c8c1e10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f0f69603811eaa1aa849e6cbaaf167e1bf6dc93051c543867d482303566228376e404f8c2d5d7c1c6cd37a78f2b6e913023100d048428f44827338ea9d566026fb9c427aad03370d52a1d0b5dc5775c9f8791a780b418d2a8229301d0d8609325ff1240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b2cef6456321b8c21c35a1598bb92777e227700d5d8b174556b7f22edc15fa5ca9b5cfb76f158665517bc4756694335c023031c485f2ad0c26b386988217f05954d153166d6eb1eefea840cf50e6837b8cb46faa980a39f82fcac382d36dbfacc9fb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230600a5757ba42f10021aab9da4aac4d10bfe62111f90ecf25703172f4e17d3273e21dcb8971a20b61c1ecb641b6b38e67023100a66629bd16dc892667418a0d934c84ecfdabf940fb923622e11a7c94a3ef31b962e139e212e79b5659d20a3e97f1d09d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302895de2de0b52626cfce3b6d67c53979da7167337354e8c96965df3ef89ee9d5649f6b3cf5b2501b50606e8b428ec3c7023064a9fa2b31b8b025ba139d72eb664249b4c1ca4508ea85a939183c5922e16b0e083a53f612432768a187f2dc73a440b40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023066cb0161409151b12bb51f06e27ed7561b83a01ea706cc0c963ee0c164df1e1f0b7a821595db3b7a9ffc8c59ed6326c0023100f8f200e45fd16e1778a47088beaf0544e85562b704935f50a96af99eb382fc2b61355b9f27f0d556e48c0d5869a67de90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310091f3e2889a389593663f8e6e08239ca9a578f33e1930f83083d441c7ea358fdaae90508642138f7215bf107fb20a3f8c02302c25fb474ac51820b1ed149e2057d935145ba5d5b094665610b35c089f899fb776eaf05b009c01b0d0c085305a1c48c90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023064e9b090593a6c3c2999fd22006353eeeea1bffdc371c01bba77e4988e288e1976a22a46bf40994afd3a5d4642057a9e0231009484392952afb70918083e2629c45097b3af1806dee1580dfdc1d70ec8542447291e5b364294a11306fac02be26240a10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306cd16977831faa697ecb4e73a0e54206f6d1b715cc8bdf776857d3031f2dac3ad287ba6f7f556098a17a9e2286cde094023100ec88ccc1cdf8a53785a56825bb97befd716f757d62283861cf91c805bb1adf1462188b086cf587ab9c83add4164350490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023028d1a1f0c8152c67bc9284da7d2da91d381dd883548d224874c727fd579847a17021c3ac3edec58d47dcf226db28f7d502300ae85a295e3e40a83bed2b4aef5b09e897bb23af8b61be99f96e40bba960018d64ce85d4383b1f135759b75e0803eb670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008c23e74a4290857af1e266035706b1f8b0b08385bfccb3d278c4d0dc0dd340977f6b7ed8a7eadcbeabc1a706227ef79c0231008519f7e51845c371144a54ceb1c14d0e236e24600cd8ec12c91d098a5792bc627d9434cc2e5c9439b40e8d525caf47b10302047c435bb500683066023100e04046478e0e723f5f942d5674e300a0e0b0452d3463f7b9648e461734067a85beaf62e4c1aa217bfd0ff1f67b6bbe8c023100ed08dcebde90d8e917e38e6f5a6b1f068e3361c9274f504e8907239b079dd09b984282dcf45e98957840d9265230c9a80302047c435bb50067306502305065441ea1305982258db74cc9a8476be5eb3afa89e327779ac4afc69534b3d2c061404451c5068c838a171e6014a7a8023100fdcb61b1b5a26e7b60322ea39ac2e1b48888f6148bb65ad5ff9a05804bec16dfc557c1d5c338b1f6b313b19316d7a6dd0302047c435bb5006630640230024f2f70d5fe42a772f9563081667d7721b71289ff68b4ea08c10db5f982fea4c68113bc8a8ae2cc6e67bc6ccd2a5b250230693ab5ea3810d4fc9157686885b0918e8913d8e2c49a50ca4e0a0c295302dc822cb4f1064b177b55737dd1f29e8834a40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100aa021d50a3a191e9c6818ac904246bd14c0cae8184682b0481842ccc726820ee5d909a4915dfb602e2134a7646827c33023100c0d4f481c0ce4b1c95192b63b70b9a05e12ebaec6a15e8f652d35d8e49c175cf4f11a0843e928a146cdc8af9180b13ec0302047c435bb50066306402307fca7b446a32939e85754d3984ee5e38931a8521b84c5853cc9a677e6047959f8fb64ec982f06eb79c77dcc0dc9ec6860230446795a8b60ae379275e6af728a301049421c7de3c3c1efff02e7da69e98f589d5625bb1880ce81fb137f3a918fb20a80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023031081307662b28f23e347a9074c710d1378e05149d939b0cafd4a122188e7abc9d7ba4bbb0be4be06250d189b1d25d6c02304627f83c651c0225dc6b81464635246bb477442c50ca2c2ef5bfbc07b10a7122a20263349ec26e2f54585b1d2456b2d30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a191cfb886da703bb4fbab315a88113ad7f74659f4a1e048cc85aedde30ff57fe5d2c7991567d8ebef16faf45469ce880231009027fd19b382fccfcdb502b8bd8865ce7ccc7ba74fd962ee579ed50301387900b1afb0b864a9480234b2fadd853a05f30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230722d1827ab5da224f847e1939d4cfc6b250a4232860de99af62f3d6bb78d05d304e5637de74edf072865faeb821b06ad023100c048c35d4f0fd449437c858d6429286efb4ddd9c484e1d0f8a7908bac25b324bad0068a4864985c0f22f73ef655606510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304f79e6f976bb6c3d737ce42c851ab64aed362b8ea1405a8fd14e1e65f8b20043955e4e5b31b81ef899f4edefe0817264023100cc48187e94d153fe2b9e77becd82824b07cdebd484ad4ebd1f891b34e3365a51bbff15e5a598c79f1986f0632af1cf690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dfdc153beef1c3e62f7ca3dd9468b5a2b90c209f792b312ecc5c45261ee5755596fe7c02f2f0e38d78b08603b9d78d16023017bc63591985cd0f7c3a21f29d59610e30a840a0ac06f07d454f25326c11096f4dfdfeb3fa244e88d888fd436b828bdb0302047c435bb500673065023100d56105d7770d00c21d992db599700c7112b1b9ae9fd5e2c6eac9552af2a884de79fdb3621854ac356563baaaee8bf7b80230175b8131e75c78539afbfab4d48051c67881a3dc32b3d3474e81d7d428eaab8de2b8d623127d353a6399b3d250839c750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ea8669f40cb3745f8828c261f139e41c3a681c8e5b9904ee8f51dfce817fe67b53b1c1e836007167e1f8f86d8d8775620231008b1e8fb812b4bfa395590dce77130c46d4d1caee650080c1b2fbcfb7679e31706bd4db711fae8de045005368cf7947850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e57bb36a4868cea24ed26b7e73833ccb11aaf879388d9be0bfb344f3eba35c6c8b91dda8a86dabed905968df1088779002300b594f3494cabbdc4c7d34bc718d60807ae8970d4085d2d41bfe3c130e3ac27ad8e3e19e27b0da8e6ce3cec3726158310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009935043cd01e674ec8a3c96ffe52fb1d06f00976c16abd29e399dba03c756df755aec17857816a5b642339710a0902f302304f1ea89b5a8e652627726ee47039ca31bf8f64d872ae48089329a2e6ab939edef718f10c5a40bbf114881531010f8acb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c1f00e419a25e32b38cf59b1017d0e5fb474075de88cd5ca82c79018e7a751b985f3d66efb55aa8b4ee11c1263f2794902303a04f709299ce3152dfbf4819075e14f91e7f4cd2f82a7a8bc80be389a8fed44645e98df1e429871ef6895fffd63a94a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dfbb66aed65abe21c04b36ef97d8a938d749cabbce7234a04a6b2305ce40065cbf930b1928ad7adde1019a95e01c212702307e63d62f6b4c8f7ba0bc3ed5549391cbb7598fb8b0e91726296e38216f43f27a5336f27f05223482b9e9b1106bd342aa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023036a45137e81dcac6955fa2c6a897b01b7459e94f204713d3393779dd7811cf9dfa96e9a969d230b7ebd290574e69bfa2023001009bef889c195356e0dee161029c74cc8de6e804a73e3adc2bd57f6d21c15877e52dd8b345101ff0cf2d4097a5ea1e0302047c435bb5006630640230457ecefa063c3da0ef0033da2e67f505145abda98b8149a085c56f8354d0c42bd09d7a51053e259186dc0d84b20cf9570230399ba0597a5198d22b26e336b138683da91a0e5cba4d98a24dc55ec650dda17580803cb3b046f9ec43dc9e076b55ccfe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300ce6cec2207db92d4569eb57c128b43a8e8d03695f76f0b2830b018ec6b3e352e17f2ecceb729e4aee8d6a3b82457a9702300f1216eb0a293eb0ebe92410b2273e4c4b75ce52665e0473a71b7a43e75609a2d4b28c10ae54cbf87e28916f728e23f10302047c435bb50066306402303f79842f1c9e096a9ca126ca971aec2b012052f06b2ee880fa40149091483303032de128e8df9d2b62ddd38840a543b702304dbbde264c4c80b070448b78787e4c86b84adc8ab5411822f120082a6b8f23694829b5d2fb244fb18600e2f2b971dbaf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a5c8d0f6cdb3f536203dd9d348ed4ee0d5da653f8365baf17c2def053c99215137525a3a0a1ace12946ca4fc93be83ae023100eb5f3b1b6d59d63dfff762f0bd4f689310e41135b020e596583d0d52fbc59fd6b1a1ad01f7e819f0415725ae6d5352eb0302047c435bb5006730650230283c94492d18165206703a9962b7cc053d80cbb11081b04454e79ab6788de83083e70bcab30841a1b393ff798779996b023100c7a5f5415a36889ade6bdb0d0d2cedf95c8a94fd6cd002cbbd137841701a2337fe505fbbf8c61022f9d8027bb8539b0f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303364650a45b042045e40ba83cb3082973e62d9b660a329fa69bed3697afd3c1e5f120fda936729d2f03ee77dd5b8185d023100c117de16957062e6f8bd86f8ffb8c0061598c9d0613d387a0ae2166eba12e22f3f0b6e902471a6208c29b9480de4885b0302047c435bb5006730650231009f6557e3a5d0283d9787852f44a247c4c97a81fc1230872f3b902f86354ab401e280b1da8280f1089a5f18be78bca97502306b2beae8ea073f46d98a0755842651e9d703a45ef05880c3078b0391f49bb034f19cae6d0805f03565ed5ce876321a4a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100eb46bb173bc18838cdbb29000127c19b32d0c3ef618a3d79ac1549d2fdcda7bb4ffdf607bd64569aff3d6026f1b4e83c02307ab42cb349ebcf7cc555a6022cd782f25c965e898c4badc32e0ede73f7b31a16c9e851d4300608a6f3e40b3b8f12aea20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023038358d5e781395bc679ee9cd2e4858aadf5f0011143c421ad1eff635b717174828f7d8af7a6dd657f883eb30b277512a0230295a1d927afaf57bc1965b7b1b4ff5733feb6f87ef8ea515c886551022b5098f35bd3d2f208c2c6d8609d7d4299ffb460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c17bd39dff94b2f769a342baca0368897e38a7335f96ed06c8609f4a6f58935757dc86f44ca7c239415ceafb07f8adce023100c2240cc9492c51b75f6035c254dfcc2fafbc10746d81cf18bbc208e43f857dbc2a1c701c3a0f97af99ed9c18310366290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f4253fd294c354b6bb034df2bc68c0c9001b0800d85bf8774dfe867ed39a49707e770dbc33e5bed7e8dea12230b16f42023100a42cb51adf3a46ec25b47409a99ffe1c5b182243a4583a07a370d78bde2d9994b913188a3931f706c1ccbf0032399d180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306a641133041e3b7afc0143b7fbb236e0f1fb7256f2e45810a2928ead7007789a8ef1da133b79cde907998463fc7eadac023100da0393670791a5fed2093249f95683e58135f9fcec9683f7cdf225e7b5e998410c0419fcab006e133c66a4b046cb55740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023004c0e73e47cf18dda3fc191da226d1f40acba543977e8687cec7a32f69ef630bb9df5a57fc2ed8c627410c94e86e52c5023100dc6ed1896c18e58886abfaa08316ed5f5d4c375e2617ce5688660dd76e3085f522ce37954cde09e407c674f83a7a3aa70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009c326947758a47a6c336a28242c6cdf67d44e5e8bbbc1bee50067fac6e2aa80121797275aa8451f20bc90b839a45e9f80231009d9cc8207fdd32c21a49d287b544c52623527147238621c26a2ff53d6309688a8165041823615c5fb087aa9e47716a700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230358d919d7a0a323984d5c5f2457253323514879f930b62653c34056799a7f342db93bc0849c9f79c70dbfbc752e14787023100868fe2bb1a6be43fbf3c1bfbd75a5727d7bb018f5407d52036831e4eb315d3e46c5ce9ab5ab8f9eaba3aba4bf18724130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023009442ac868d62339007f80f8623c428b3d2101f25386b848a41fd0193f3c706afd5338e7e8e07aa5e8fa9022155d9dac023001b0d8add608348c4b0d35d0d4e11d7cb24e7b54d6a15b1c31c6b88e155937364469d2b0e09b420b6514f2843e318cb40302047c435bb500673065023051b27afec7eb88c619bb08744a0a07ee936a48a2a15fc7d5239f54c34884349feac39abe05b1e3645760125b1ab746ba02310084257e0cf54a6feb6b64c4e9a3c64d89dbb0a5f24d303f135cc283b452a2dd9f5fb2e40fdec13df68ec0dc32f119cb250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300349711eba4789cc2ab29f1c26dae70935c68031b83b98371d8595220ce8ce81cc64700d6eee095b56a6b3ba9c14885f02310080fb430ce02dba44af4f12d0de18e29f912b4d27c5374554b90c586f49fe865aee8b9bdf9d79b360e6c4ebb2d190c9840302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303064fb5b20701678dd1b786d5aa4386c9d8a2a5b3b9e15c79fa4450824f9c6f04d0d528cade4b9bd1c626430d6befb95023100aec49a2f2c9b3dda0734e12ce140f3c962aa31a6d3330032d1decbdc5d1127e3f84333d7028392235fddfece48fe4e560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cbb957b2c4aa287149d31a5c791bfd23c5f7979eb8bca2160cf7899924757aa1bc7b6ddfbc3d881f9b85b67953ec7c5802306b055081fdf0d3b6ece43d546610924e512c836b5c84eeb400cff3bf1248898ed04b85bc34abb3365f025807fc985a180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dba33e5b1b9e0a66f4daaadbb1125e5b4687b9e4e65779aaec6d08a0bb03c7eaf20c3f431776a3d7b0916a553e581f82023031043515c95b0f1d464fd8204a76dc68c4a580bfd2f80b0bce9a88aeeef3ca167fb3e494c6765807c57e358eb35cebbb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230258c5559157876e7cdd8ba9a7b04c2f0f3105cc965467399b3e8093e6fbd73594e93b5519f51a0ff5229bff7bdcaf81b023100aff7c002e5862ce3146fbe6c20fef27fd77b876657f947ec6905f16dd898ff7501bcf5d79879154a1616c66e5704889b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310088fd484e5537694d1e0062a66366054d431c972df2a004cb74747a8151e9a79f6574cb4b60c3f93df8e0cffea687bffc02310084bb0f15eb6a9da6ddeed1df87c6b9f47523dcb831d50b2be33034edc4b112f4edd44ea13c3a0544071df121c3908ef50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d057f090b25c2ad3f691869d3a54f881ac178089894727255a53698b4530c0e86af9c40b114f599398978d86f5b33335023100c82eb4f1bae937406a8ceaa5176183abf2e309be63dff9e2244cc5b46ee01f6eeb4773eadeb6107e207da5008cc9adac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301325bde658af1a2f35628b96c37555232b96165f06c3001c1fcabda06fb20ff0358b47bbe1f5e1e994519ff3edd8e0b0023100911881400361a93592652e26bf90a518b750fb1adf768cff0d78521b357274d29c88aff9fb6a7ceb045a60f7865085380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023040a536682a400f3b7b014a3082b42b5e3138737b89805f39d421da70213aeac70870bb501dd5316f73e5b41621e518b4023100d89e5d8e4b2dc6ac9724ce97774a42c1b8741c8159b1f50a24527ef05a7cea10d5c078663a5391c2dfb8ee11c2070b610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009bbab0a7a32d0a2d956916773c4367b833989ece60737bbc1f510a40e324797fb1a8ed53b310a4aa7faf4430e4bc253c02310080caba210cf72ecf32d316ef492f75450cbd208887ce85c75be944fe38d6fb9fcd339ead0ece5cfcd5489a1b17d4066b0302047c435bb50067306502304bc5e51c683688e37cec35d82f6acfe5702562418ade727cbaf3411768902c91d9b386e2720e78403989d5486bf1bbc5023100c50cf9c05c75082feb0439e2816542bb3b7627f18707101f350a5b0338edb64d4fa772e300d558ea1c21e46a806b92c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c64bd5d13dd82961f1b116f151e5183dbd9d8a77ac34adec09a8f884caba4b3a98b45adc2a8e1d9019f951c44e8bc872023100aade96b85d10a79727fdef15ace56008f79a65c416e8f5f7bb0e4b59776417408fc7ebb59e2653da2ae7596177639bea0302047c435bb500683066023100eaef142d9bc200f73cb2f28a28a0213fb725d8500b617fe99b37bc451aac5f3ca1897f5d08d6dacbe9d546cf7282546402310098071e0ab427509844ac3f1a74572dc950c51f25f3381bb108665413be89438b92137613babe44b5009751a86f6115140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230055bdb5eedaaa889d1de7cb377aef102e1c176c5226643c031aa50ecd51159f98806b834e4800fd99395620afbac461c0230730e7244c32f0fc728643df62d8bd345e6bde681a12d14f557a0c1f38ae9202fb9971f57d82de2df8f6c673935c7895c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230749a79b5afe58ea9ef866b74c1a0bb043b30cdcad02e71c052a67b217ed147ef1a816cbeeb5b3c62a3607dfbb68d9197023073cdc4cba3e765a49ac3ccacc96459b44cb46b6fb7f342b8af17ba4e272372d4a30df9db3bbba928f49dfbeb0999450a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009d5f41cc1732888d64e69bbbb8bb105e7965acbe24116ffa702438d3ffd6bcab18fd7095fcc1c6b24547bd3e6ab2310402301d7796b2e4e0d3bf53096ca8639136e0cf69510c3c26288aba2cd7e58901acc00372a04ce873e54c367610e603f7cf320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307e004d132995b31ba534a4b802c17eec9e0302e4edf45282c71ae39f6ed70c956cbf2f901ee040dd123362511f631080023100e3902d393b61d551943c8c1192551abdfc6f565533280d9004e0fe6f3ce187efe7ca3627302e63433261a9e2c191d1ff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009bf51d1b11c7b22d7c9d40308396988c0610a6646eeac731713e543d2cefdb75dfbca6b03701b6f8112d2d78e6724e010230170f0db3b0b8bbf5adc765a74312f39de7880c259fe4cd04a1ae5a97fbae19a17da3eafd4aaa8ff87958c2e39d3dce950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303419b9186d4d3e18ed182af3e33069c433d03b64253969bf7fdd89948af876794b0d2e272fb7d8de1271a12ce588f97a023100ff5806bdef4d1d091904c2cb4b2e2fd7181c3e4b6a485992c955484264f75178d7cb0182d45af1d4493f62ac39a554f80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230220e8cf62b5b8ef1c6c2e8b61bd862246aea160629c06e632b179dc863ea2cd6989fc7131799f7ca76a7dde871e593c7023030a1c8f848b3b0389cf5088b88117c249debdc24cb987f1df8245e067a4841d89272f84242fffbe6cc681b32e13ef02e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023025ecbf0ed4505e69a4d786eb29be3bea9e6279174e4aa8c8fb16e3b0e0634f9da3193ce636e0a2398475a56a81c7bc2a0230618bcdf428e21d4418249faddb784e855aa005a3628619c35dbcfc0d4bc32a94023439fc057142485832f33d79fa525a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023076b84b108d834f74f860ba8878a0b128fb139d8813f95b3d9009a28d3b0181a1941d69de73eb3c4036e3e3f6064535af02307d9035a93fc35328e2b37eaef6803fa65352cb6b7f7cf51b7080062ac2df55f89fdbf32510c74521f70028a15562f1c10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f14aa8bebca2078a3f5183c270c3e88c21506a9d5d564524fc4af863bb12694de8fa259a809b94689ab1065665a477410230458ac9ba2c4d7e6b7723621b513f6a7e230b712459d9d50f498949906b1e3b06fd8e638556235dd4f6fdd739f2d4dc3f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310088a615958587a4f4a12fada3397f0a211637affbff85897809c67cc25aeb404dae70bdfda7e5d876625ba0c4db7dbaf6023100c1325d839178da465e7a583b6ff0cfc7715306195feee1d7b124b6722d638e65ff4479d71171df5a749991c7728ecf340302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302ef2401c3c42502a80ff8f0516e57cec087cc1e6a4e9138af0d078cb5f441ee111f0ebfe9f1e118e218f57683c93fa18023021eabd7ee51ec5e6ad897345a820fc0323dcbb7c83a4c941438e338e946485f99ef42f4c42b1c069bbb68775efea81fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023067a5ddbb5756f32907b5025a3ee4801703904b37e83f2a8cfca4b7d0f0eb8cc92dd4c6f3a81a57b2252bd6f0e0c09499023009fb471734e2e78b8e23eed3b97ea08ae31e7d9fba9726a39c6184b99aa62173abdc9a88425440da455b748ec9cc9ed00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f67708d12f70a876d1848e448a4e3fbf033b32f76dbd9c8297099d81b55fe9e7d8e7bd2f8a5e5ea10949b4a5cebef2fb023100e40e20646796796b0315dbc3d44c49f14f949be7bc7e9b421fbed556fd2c23a0837f14d456ff905d4f54ffe022d72cb80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fb45fa5fe38bb26dc319cb075c9e577cee873f4452f318859f0ff2fabdcdd4383f4b97ffd05d2ff974515f1ee80143b4023100af5b3273710c7ae52b6de5df8bb447562bd6d05e86a32c047d9b3016c44210b917ff11f3f6a899e1309783524797f1fd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b1e8299bc9e407bdb0e83c6426cf8f1fd1dd6b32f72c9f431b869b3bdf2a30aab45b8afadbd83ea067f56339bda121d402310081ddb249b4191d2d49f512c693711c5f64f42cb9e500de258e2b508777d2032bcfe8abff38fa8ac6facd0efacc0906140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310080bd1f78912ef056442902e140178a160573028357f09288d4b9caef092db5bcd76ff72a40b15bd0ec48a130f99f87da0231008aa0c0f2b000448594530c963f343c981e05bb278c3f45699ee1c94b46f4a23fccd54bf33a5f95b89643a51c02201ba50302047c435bb500663064022f3c156064accfaf760a63385d3d6417c853f1765502c229f7abbca029efd3f95dd3f943a0dd4b95528a76dc5bade86e023100fcdd0901e556ad8f242b5410c8506bdcc30198a190d22214777f916e00707e0cba57c60919dfe8f041d4165b5f913fa20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100967e0d5ffc68d41f4d9c8398fab1c3c14ed5f2082cc7ab38a56880c370eafc98dcf122dc31a9088fc3f3384f58249a9b023100b8a928c3de4fbc3b317db92057c67cf88f1ca1729020251c0a0b722e82b885a10af1e1c6f54eb9134e464e9dd910a1ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b8d1e60312c74bbc582d2bdb15d43e00ce647a1ccab750e7fd4d88cd904aed776724843bfc79f4df8dcbf67345d0518d0230721dc3e0939da986e03303082ed7a8dbdf4a955f1ae8bfbb0b4219d6c43d31ede70919e28e8148e2cc6f4a900d7320770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d465d9f830582b45cba428c7f7b80a44c73e95bf6399981691a1cec2b5cf78e52cfcaffaa6080f3fe85f1d9bf1ffdd50230196ac35757930bcf03420457f63c02c2f87f72e1b7ca1c070706c2b5baa9e95b44b4d60ba764e898606d1c5924333ebb0302047c435bb50066306402301307b062adccbfc243b4127b65c2358610cc16e8fdb6d6f2915c6a1201c8f11c00ab221019988fd5887a4ae3b98b80e1023046099263722ac2c61ad9dcfd586b632adbbdcd7fd077d44a7a2fabb951ccc2f3cbdacbc9e1ab9e030c435291dab501010302047c435bb5006730650230106f3954815162ac15ba54ce1f807d1118d14d227b11e243abc019a866a1fcee4f0536d80c97f0a69dae3b3ec80a1986023100ef874aed9cb31dc169126d351d68125b52923028ca5a332e6e52db323656e0a5a22f4998d400fbace49a86559775bda00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009fa3c2936888051d9ca2e40412daf41bf2443f2418bef423181b411d9597eb8e8a7defb7bf8e00448977a1ac06964618023100810e3f79f5e72de8d9aa81b9250a4301974c5011d0a9259b8137944ff588469c929dec382b9b3b34de0700705edbf0c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100edddd4cb514a51a298e23a293817c7c8460f6af4b2176523b59bd6611dc4b2ea843a2ddeb1a8b5966b2d7855169d5f84023003d3e6132ca06e58f7f459d0902f5aea9f4cbd00a6eb690ce21f46bc94bcb20e27a8ebabfc1876da97ab5039e78f7f630302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305f355deebc9df095c84b7a4dd67947fcb88f63072f0c1fcccb1e41446616cef4042ff131e88ee927c7a48fd020a17b8e02301525f0135aa7711ccae8f878ef1d39a9b4523844ef97cb10c0136361b476b41cf18a5c7646a160f1ea683568506fcce60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303e2708f123814cb2e4618e18d274d841ce9007ffee8f57bf578c8edd4c45f2bc02779236d2f7034e1db4ac0846a5713e023100dbbacc3b5e7d580e82fa0e7e5d8e498d73c5279cd35d3c14dcc6ddc319f5a08d5ab371e43cf57d181f9cabf0ea1b9b0a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023023fb471aa02751014fb0bd9defbdc2212cda061d3a62ff134ce94880c8e188557f989ef422f06f090b6299c25e7e23e902310082bd9dd4504d6de3535d3d04b9755deb643baa97f623d9f4c5e16718c7c421e59301586bc31b543a789ce9e931015f350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305fe2b0d16481ed16f2be9ef7cf5cfc22fc9e0c41019fdce31f33739254584f1b9a5d69b6d1a976042c25d37b4eaed7980231009c6badd8efc5de60e2c8a9827156e552b8451fd2221daa6da191632a5d6abbc3d534846876689f91ca7a8f1a006e037b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023027f9a8865461d90b623f777653141c4900ba82c5811da3219ed2f9d800b9054971c4e0557a2bf5ccc1b7f8082a4dee8502305703a6eb547d2bdd38c228165f2222847a4aa8e8e3734d8cd8fae8c859aed052f8372cee0816205e6cc9c52d37dfebf40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b9b84ac2d6ec31222fa7ed62178055cda1796577c5604869d7273cf56497e8feebaeafb6073f63c40187d51c2f5469e02306ad6000421c7206b107069aeeb955489ed8d9500e90f12564b1725551d44a44e9fc69fd06f15c0f4cbe03e35fe3d10280302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306aa198f45adc1a7819d6add251c5bde59b818443ebff92ffc7aef3494235dea8dcd8ed04940129da298b75c8bd8a8641023017801b8cc39039a246d3b88e692dccdda8cb7b2280d2d9d0e4ce125b4722159f7544af0194ccb27c9dcc79aaae6927530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cafc58f5cc800e6f00212486ab6ef208c81d65a2c01843bc8e73bfb7a752f44e31690fc4ca1fca217449f1ace88db3c8023100fdc46ceca721b809fb69b62b431ad70d9ab4269fe3aade1f855069e1c25f9dd36bb4d97303cb94d939043fb7e45e9a6a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009ed9e7dcfda6df8d6550f8d0638feb652a0eccb9fa939ab16550640039654ca41a99d1206b1c9e5dc0abc6e345a0ee9402304b40a0b6a7c499590f5f36a5a5f692d7c233a5e2f85b47e5d04d15fff8c08713e06b162fd8a64510374b4df816a36dd50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c1db47a6bf839ef81dc800c69250118c52e43b1bcf8438321fa275382f7d12069e99f16e2e5a49c9e5d9ec2a36d5b0a202307a519db851f4a8786c04efde9f008f366b4492f6eaaa5ace653c939e6d2fdfa9346e01a203650fc59335ed7844e8058e0302047c435bb500673065023039976309fb836967590a9cec601563d627e9cfc673e234464c6f5ae3959a6b89630c85a48787eb218dafe8369ab305530231008df2d4e4b88cdefc23b8d94d895ba6853053f274a840c0937cdfd5e29af037b5db8259eab0fab445904ca4f1e2d4bcd00302047c435bb5006830660231009b36a2af95035473d27163a8db9b74f1e67a9c8e657c008c8c05288c3d424537aa69240ffdfa5b90c7ef3b620992389b023100d9c28d1363cc1b9d6ce2bbbaf5b226eb6be8153f62fe938a9113e3c370e1c9edf53aae9bca1061089bc344738e2f126c0302047c435bb500673065023100ba153f5e2d9b9f52ffc24b099aa81d88acb7085a7a046d2918588c983866abefb73a2966bde18edb40000b680a9d034c0230415a4723d63e0888d6ff8bf2c1cd09aca444b5589f8fbab4f5005774a73a4255097f03c03eaf6cc67190609ec0e37eb60302047c435bb50067306502305916e3fbf9a83a0bdf94a94618993ee513b9c8e70e09e9a191e4a0e97af0db22a780ab8aae962737ed20b5bf03b7db2a023100a4a6cf2118882e839e8044859028b94d85ce11b13af71dc92bd29b8c7a7432b4e6ce55600cf32ca749b06182cc2b2fc10302047c435bb50066306402304102695d8d51854393480a6ee40bdea316f78b4349c790568856de966422b5820c656f9605a35fd6e183ec538cf8e70d02302249e738e32d1f2c1151f44dee475586d2c445a02ab6952d2cc2a76b40a6940332fb03c76bd33a003685b4d79acbaf1c0302047c435bb500663064023009520c13447b827a9f95844bd1d3b830fc9a7ac1fe71fd8b998ecec8df714275d78a9e4eeb79b690d9c99dc3c51cf03402304174095eb94669b788c1ec9030912ad01cdfd8ef56e78ae2785e636a88ebf9e7cb1973b691c486f4afffc4eaca8cae990302047c435bb500683066023100a49579a8a1fb8dc406a1815a07a02525a75e85da0e58e3fcf3848e38761e504975fe910310341837955836139cb49ff3023100cabd504016e1d90e8d165f82767ac3d88b32b0499113800e4de6102b9446b714e5c92df523dc6f57d21d61baa4f10b440302047c435bb500663064023030aa656014c24e79a33c17cd7fd875239246b7713600b8d560bf074dfb6a24edfae573a57f857cd708a600f2bf3ea2ff02305eaed5b7d9116c4c409e4ae5140f9f3bc2866c2c2945531fff56abf525f46d015b0159560826dcc8336901cbaba77d660302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023055a8d664099493b2b957e5d8bf369255d1da33c62cd94f0e173d5722201d5296cfbc83f49fd7315624d33b34eb14f63d023037ac7dcb90dce2c5b2f04ef940cf10c57cb89eb48712130a98e793dfff7c6b9aead184a02b4e4c3202759727c03958c30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008cdb3d825949770a7351f375e937cc932435ead48117f1b4cb7e596cecce051a85d5daa402f235925708a6c8d0f06e1502305ac92c3974af4235b9f4610dae0debade5aa05149abd30d00e0a8db0de77473c821aa5ffd3b0bdcb38038af8c8530cb60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303a175c690810b31c9cd36bbea6f0ac8d2070df4f88c20c25ebdec9e1c0a57c673ba9f9b35cd8523edbde3d79ae68f034023100952fb80b4d8abe17659daf4f7bf22dabf40740b38a88113b0e4354fcbc4ef753169170df7312697de62059fd59f7fef00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230051626d03823a23638be9ecb9dc368ad102812c31cf30ea46e99b2b4833d52a01f56e81c38811c40ae1d7a8a74fbfe9402305d2021a6a4ba995d145a1cc8e309d43fc87f8998be4e46db3c6fe78b4258c0b31eaa42967b05184ad6d0dd68d61c1e240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e75784a0cab1d0ea9ad521a706d2d5e73dabedf9040cebb960928fb3787becc619ac90bdbae864f37650b9be375ae3ed023100994196e23a9199216b4f1c02205d8d45c45aa4d2727e523cbcb841f2bbac8f588907cbf8201dd8b422c94189ab3c08ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008887f4ba15128cdc087b7b2ea4eb0c5947234b2fb127fbf3bf2f03352e2647cfce86935ff1651bed874b88ca89b46a5c023071e005b02ccecc6c3393ca08f8505277a75c4d6c02893c8c0385fd7f9a4b0118fc5786bbae21e1069e4ef98c781ecacb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c768986ebf89a5b4e5ef8aa964049203375eef24dbb5404f97fd62509d4fe1676607d6eb19e2d4a86359e269ba58dcc5023063ec85b711bc0646060d3fed6baed84a6533f4e84af03bfa81e1a47869471627c0c6bba24d09f774007e419a115f65980302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f2c5512598940b146341ae0e7ae4a4a899b77eca65a28c4f7ff06662a7166b32cff849de26b769263c62b1b237035d97023100fc79662b8e155632a5ba7a9ec94e3a2e4b1b59b4272111a35fc378fc3659543934d21874b03fcebebfaa121cdd0ab1b60302047c435bb50068306602310088cc7c6f08700e84bfa75122228784103a08d34202087f645be5ae7626f5509805ba803ddbedf5c9439b1effb56f74ef023100bc9f75689190d6a00e5f20fb77197482da95f73f20b2c1ce62a3e492a8e4fa3377c01ffc9542a5bc82e73ae3ba2454d30302047c435bb500673065023100afb3a061b6fff8f7512c0b2d6f156e2af7c7ca7dcb0309106d3a4b76ebe3cb57e0dd5298e41efd2337f1c40fc875fcf202301bc6df31a0795bb9b644b0c4d54d015558c4986ed51c45ac3b0d7087870be5aaadb57b927b39ac40b4602101a12b3be40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023070e2591598e0792cdf8ce59d7462ed79a14d20dea62e3505ccae19f8d5abff1a30a5230d1521fed6e54d6e61510d8a5402303c6c5bf8ea734db2600eff760f3dd199a7be477d0c43332e909fee83d34a7506a604296f7412a6f91ac831b8d992162c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fc9a6b83237c29041192dea3002ba27b7279bcdd22dd4ed5cc44f2c75471c6e0a788c4252af85f98c14a84cddcc752fb023019ee0e539412f5b7d2687e1fd14cee74402c2896baf3e5ee76f44c3558928fe6b429c311bb237c6ed8aadf726ea309030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d7bb89135200248f211c1615825c57034b91ea950888be940942f214bc42d948080fe0b43f9a19f3513dc30398b227c2023065c4268127c3c0fbfbc124f6ab12a7c8dd78e11391993f1770eb88615b00a2e43848b6e98999dcb555a948171a82f6b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f03c29bd1e4cc4b87d640ba9282d3d25c696b20883b2041ea31ad029a9c709db2b49b0f109ddf2ea1bea8ce7a7d1e19302302aad991052b1fd4b6ac10e5d393e9c77b8edb45c21112a197066bffbe8cb0024e5b520be4b4edf1cbb1baf544ebf49a40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023004f8cb8e9a6fdf4e71dcdde23c5c72bb668f245f2deafe398663d9fcafde37d2617e02896a3af13d568bbd801c829a1f02301ff2f6729bdb82a50551e1d3a01fe76f628ab2cf87e3ec91ad6e1300ffd2344f7b427a74a68ff288fb5c78905f663e900302047c435bb5006830660231009af7dfad789e4d2a929098589709c216c20cb5bc25a211445223d4132c3547a88fe521dc8f70a315a4381039e1f4d20b023100a2cc9d9344669278f43bb084e2ea6f7020c3f1472927d5cf07bf62278bd095548c69db7daf6976953c6fc87886a147890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100efb4d051ee9b6f117f8c577bc3b2eff0766b92ec74b87699735b55262ae710879f30d52021d5eb66ec31cbd7eb2322bf02302b350ba2688d7d6730938839ea6ab8a9d5c93096a862e00ca08f97ef85f93c35090832ed8398cb3731e6be0b3b113faa0302047c435bb500683066023100ffb17bcf8819da23a7638138371e556b63aeec893f31372dbbccc427ff3ba83ade32deb40c3d88a97154b8dd4d02d361023100e98418cb8a37feca33d90d956ab9ee5593a46dd82bf423dc95594016a9cbb052a3a0b62f4f575a73f5aa1405685317690302047c435bb50067306502304a610869685da9302fa3db6174ecadcca0c2ab3d4ec2f2e8469ab9d0c558a60b8b171c450d64b6c152db8b637cbeac8c023100d90bd14f02fb2cca3a91ebb7e69fe884f4a077c7d793558c1347087b257f915007c225603a3c565cde214e81bcc239560302047c435bb500683066023100f6819bb851f3f885e54ca905e61915210cb19dea4e0db3cdc4b8120a089793397327c5f5f22ab1a8e01708c1c50a9ef0023100a3f73cad2b416dbed73898e7ff0d329dc312d19f67ae09e7644b0ff699991085bdc83245dcf64c799e62457c9c89110a0302047c435bb50066306402307afb7099931620afcf37c1ed6846d86655c0e604bbcc1deff88a9f47bf5e12f03b232fe48465da4396021674f79632bb023034797dc9298ddeb81ddb55fb45ec58cd939195c53dad67fbf3beeb8c3456bbaa50362bcea706f492bc29ff73e17fe8800302047c435bb50067306502305b1fd5c1f63cf1b96d68401b72da2706070cd67f7234044ae1bd98bfff2184282c7cd4d482ad3c60455c24dc4340c970023100cd1ec44b744e3abd704f655fd261aece21db845e5f07017b8993b9d207968cc1226cfdb827bd46f657e8a1479d34bb7d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305bb5c8e7ce4a362a0b54096972eb8b83c31c16fe165932e811c2c6e1cacf0bca5b18d3c71e521dbc58f30ed2ac1e5c4b023100d1b0b310af81155280333216d12bb32e3c71eeaef1e5ebfea33ed3926cb8e83524f7fb1a14327bfdadc1f4251d9832c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304809783e323e897293e7657bf9162ed54cee2433adc0b74535e74a973ee4d5355b377e8353a97557586893eb93637aca023100ca313118bee2da58214fc5a6b0f1282c640094e4b012ac85ca16d124ace5160bfe914423eef8f34ee4c391f65514fcc70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306c852207a4c0811dd2fba494b31815850f01571c404439fe4fcd57417e3e6b65824447bed5e13b8d5369b81a4fdbc50f023012cfb940f01f78a058a87c296a976b5c7177844eae064e291d29e2ba8317753f601f8f71ba41072d14a9bb8beab381160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230353df35ca498903c63ccd1be302dc37dc9917102f751fb050a6b37765eb4b901e844238b698af867d5ee289eb4c49979023100b2e362c0d629608c941c9cc3519af180e2f7f0320c2a4bfb5716b83491236c075699293f1a9ee54271b01261063c043c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f3ca10695293985d75c2594626ab57e59a0aafcc51774e1300f29c4a7514be1f38b11f758e09ae3dc45037f6bbd7e1b5023100d0dd3c8e37a697cf858767c821f8aaf489ffeb07a979f92fa4e1e951c489ac1aecca74ef78e32534476e278176aad7e00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230278ecee7c553ae1da93d7fa861084d1d07d77a32e07cb1b4cc5df9b85f506233c663dca33e21f701515262d0e455d1210230424b3060e60b3a9309401ff2d16c7de5dacacfa8b92b147c4c7a316eda2189e6e378e58a8585f483da8925848b46e6370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bc08c2a4c683d7668ad57d9509665f4accb3d99c2e93f4744e8df5c6e3476385ea0f0c47914d3904df73fe615220d3040231009bcdfad448fcda473eb52199eea52091cf29dcc80d373f7bc9d0a906734000fdcd7110c1f2a699d4a4f156e7ebf9d6b70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a0d0df5842f35e7ca13658b728b99bab92ed4c25d25a4f07054c1897c2610f51a3ebb67b7998b4c42fa8af1e11fd71e2023078f1bb3eb5b4ef93d9013aaf60bdd49c752de93752182c0f46916db35f666594e8eab650a7e34b26a3894c01a560d4b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100affa6e352ffb6be9d94b66466fdb78d9326816da95663cf7c8a04f91809fa49055b65af591b0726c684c32b41783f1ff0231009fdfec6a1a9831194b0f28ec3944df228026b91aa56102e5418e186f458b3b027e3a7bf5047d31bee16bcc9850e453a10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009a21835747d0fa9ff7e0ff42a8962ef17d950d073e05a5b9926f308058640a5aa62f09d5a659266d0d3d587361358bea02310090d940cc0331d540a6e7bd9b497a4140f3ba51c72790d759c821b443d127ca1f9f0751b920131fef207a18218cc4e9660302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310087a6d9ec2ef691f7999c05c37e6f37e196df39c404c1b94b72deae67b22651ca3fc3acd036845208cc55bb27787452fe02301d37e6235658c5e1e8b4dfb6bfc16b94e3ac4a1d23b1b0b866442f0441742ed59a0669bd983d3c2fd2aa425959ffbbea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f709c86beafec22799eb2ab40ffce3eada1dc14fc468c0749469d41de4716a5f293ee9e42ebc145f5c2b5acb07ac8160023100ab4bd59e951097f1392bc021bad0a49b443ad08ed8644f004d2aaae3e95815626066234510d869047efcaba5d121a7870302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023049c3de764153433e324ad08bf2fbaa2dadc558867e12df6599a8659c6e6960564b53261f416c14340e7f53bb6aa24208023100c672f7c1f2b07e290b060eeaa8dee25ccfc78c6d6113ca34af817fb018459fcca5b573f37348ea3cae27af4d8480b7330302047c435bb500673065023100aaccbd58a487084723a5ba6e0fc02a7331ea692dd9ee5fe05d4c2384703e3ad0d879234111baf882233e7104e588fa6c02307292622f545cdb2126a5437cd856747191f4547fb689adac93fe1b4a991e84ee7d646297cc84d8b1417e6a7e700c99980302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100efd8474ecde6489cf68f1b83fb83ce79a0fe88efa6848d76cb7949ca88e1b1764ed71bd9e7ea2b74587f1761dd46136f023100fe1ca181c622cef9730204f6a93a1575c8a0e654ac8a7857886d519d0f7f9e6df317dba10d34cd017963c9fe21710ba60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300572569fc194811af49d78046426efa79d1997e67a7121af5a9dcd3c5bfdec0554aed33af2f13d3d656ce1f421aabd1f0230643bc8b81c32ce6cca2837cb6d38fc7d270d78b3478a9fa091cf9fdfa183d449c9b6f1655561ac7a85fd76dc9f4b5ea30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c5a601b0e2e33ea57d1c1f21dfcd3069876fddc584d01e61cbc8bae841c778c51006d197a28e79944165571f8071f90202304585e08923bcc5aeb3344466ab8f7cd05ee4616504ac93b87dea9320ae9f345638956c827619fd83ec11bd11bdf15f4e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023065f51d011035c24cd58b6d69743d239a35f808a900e4039ba10fdb60f9442a505f19b969ac219e0ef02cd70b2ee7d22c023013ed07bcb3a9629442d0c8caaa9d2ec4e170ed2c4e3c58aa579464899b87b76d8e99d934d0a286db55d02eff029889610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100be5601c132cf2a20f62ff394678f9561a472369a6673487262821a1e12e44c245e6cd3daf61c7f0039ae8543717516cb023100cd9b1e1a721b565c073b01e38c64e093321632a1410f68c00cc567ad8e177e73f58334cc171f78bc5d64857b502089820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a8985ac2cd2f3a30cb71654b721a392337342934362df9d08c5278c559a5fafe2e9c0f9efa486fbc3c89631ff7de0d1a023075029f0812d9b1c5ac5abbd0496b85cb47b8b45df86558fa56ff0cd095ce9849906cca9839657237064aae85eb636d810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c1f7025f5d010a0ec4c767dcf3dc10af7d0862c4708a3187da84ef4cc80c90282efacf59810b2342d110424f6d027e08023100cb470100b0b219880d524d8a8f8c56c9776d3ae89d2afdc05e584a47e8011bf6207c9c53765b3bbe1c26efa37b246c180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302a7d9cfe01d34abc9661342922a5f6e33932de73fb9b8732cd1f839819424154142eb263f99d5c6e81240c746a9fa70c023100863cd93a8f6804ce9ce91fa1b62233a3c566b8b5dded0a231fa2d9b746728da0884215620518322c043fc91b29121c620302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023046544403c4d8ae4ab68076adabd2eda200bf16fd3d1e1bc2df6b412293d111b563eaa94ac711ac0703b419d00a3cf273023100c9ec6c794333d392425d76eba0a7addf51428a5407a389dffb17638c15d17c8ec967f201b89755c5ad1d2987e87e12230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dbc91e0796ae3eece72c1b16d51fc49e9ff9e0f6759af3b373d87472842b6610e2615e4c230fa066cb192dc8265742a702305600af82b8ad55aa80b5ce912e2881c0f4b95445acd79460d8307430f65e8ea3db480edf8c855fd8af836b6dbae1eb560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009efce58086daa892f2b161655b6d5a1c85579c2b34b3016d816d95798b915b0cb71956708d3c389bb130c9ff5fe0033c023100d181ac690c247c17b9f6f963c3fa3f3c68358c19458f328f6c7491de0b3c208f02a768588633f3ca0afb9f7aa5f0e14d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023017c2a615b8d60e2b1c5d97f2b96abde472bcabcdce2bf620ae52e2b4da855416fa3b2d2c88cd519a2ce3e61eb50cfa0102307339a204dd2ef37c16d1fc19ef7902e5ced844f15fb1ef9ac6cbc8519f516533dfa89f86a58f15a97661b550d3dc39480302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d01d4c2cd540a8c5311a7fbd40199785e3a4ce370d717949b4aac4f077208c2d5c65655fdf841b78d204f7ff23105dcc02310080af5ab7c68bd81f485de3a5c68aafd6e04bfa7469be10704c20f5ce83a436d6f7dca476ade5221875eb15024f2693860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dd67a195a78eed9f664e690ba5332d55fa4a6459271292e1304b6d86e32ab0f88512aea39e70ccadc9d7b9d038a63ace02302164ac17a8f7052016aa53a9e2fefdbbab54f75b428638cdc25dc8c6923c31c023f9ee5472f5b24079dc8ce94bf6bc870302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023076f4f846d1b558703d01d25ddbce143eeeb45f9282479d3e5e6ef2d7b828d1a40a11a21cd0c3ec33fe15fdb62bcfd4fe023055b9a24271bc174159dc920de661bf445912f7331b5243edd7531d4f2bec8ca82319d95b81b4bef2416c5f508209c34d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310092eba0261febdc8b4cdaaa8c58a3511a81e495b799fbbc4ab0267266a668b90c89dedd000c6b3bb8e6cb5ca300bfa38d023100c5c95be1f7b6cd277b3b14e5da898336be5021bb04763ff5227744db84508b4820c430f69e3c079ba0c3bdbfd1f3d2470302047c435bb500673065023100c04a6ac132c0d76f7df9c7e9fcb864e09dfd54e2725710e567baa5c8be996e69a2707d1454e8fcd040d06fc6c52086ef02306262550fc6e1b2f4aff04dcc86b7bbb205b07122f5a67c317fff46fe16aca710c4a70885a5e2bb88a90f174f00f240960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305de55d236281f51eccf0a57e070af8609c67e276970f1864da73b5ee451fb350eba5a17e110df39e466295a07d07996d0231009215af156ec1c172aa6fa4bf2b6de6be3a78ab36e0adaa81bbab4a2980fd359563d626eb2d9c4379d55c641bdc2f5eca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023011db03d74b9153f77c8d0eebf6bbf8ce97b90b7e876cb31caed32f4ebc1e83773b181d97b1009d6e40cf5f573dfa2a74023079f3d4048980839f65b95325acb100246be1fc804b19978dbc60fb02108082bf4eeb9f8e58a1f016612841abdc4281b70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300f23ddad25e74072b0bce743e47043ef322e34975cbeef6d305f94b5e25a026ff2a42f979081013a41f73ae6870474cd0230447482d6b142a4df63bbd9b2795c110050e401bb5f16354c9a73a4ad6f78fbc144458d5392f327a4096021649ee0e86b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cfd17bcf4cb395fe6df352dd7c2f915a38edeb30382752e938fb9b888f0eef0999a131d19b2f87981f26393da557203202310091f1984ebc934ba7a6795c6e6f7d206f89adadacd496afd22ca06946d96836850d1a7a36e5136ddedcfbe643c39558240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306da5d24c0f7d5d0368a4253bb7ea1d727d4e4ae352c974733f59051890e158563e7ee620ae3ced65d62e5c9fe2444aa50231009965f8f1f2c65c0c9af8dda5520dc6c58e3d2177c7da3412c6cb8f233d86fae02b2b2a51ff88265f9fd575a63ba49fd20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310094a88afccf244e7c34e0dac890292b1541f81e5b11ffa3d36204f5d23724cec5af9765588011c1d85dcd81b857cbb0d702303da0191c1eda08ea903e4cef0e074b381e307f57d61848b50f27ec714f9213b6d633983e554345739afd064e253f34180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dfe19f583df4cf74f345f16b34f4b2b9bee2cc74665d4ccbca5d200dd4082988fec1e4d68bc7df8d392a9c04d744541a02302fd4cfcedccd1269c7d564136386b85bdf07a0b17315f87b2d42e02374de9fc0da57fab5cd51f14ef60581d072df86640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230455ea898a49d4dfde42cda56e2e617d9d6e43038378ef50b6bdaf5fe52584f013c9ce0ba08edc6e8a6e3f6235c7f647202303db496d70a649d296ad9ee4cbe973481f36d18f798d661a006ca68aa2a393ee12d27fbcc482bd841b417fd57ec2f9de60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306469f2b6a620d01765d8d13c3a83a93f29ff260f62946b7e88243ce9883bbc1f2eee120ecaf1d0de24f6562bbd7effc702307a755ebcc7b4927b48fe72872a2eee860140573d2a76e4507ca8c42a8e738ff91364f78d7697777cf5f7fdaa9a698f1c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f9f15f8a579c76f500e2fb1e53fad8e318e5a7a03cf43c496bc3bcf502ddfa9fb218b1ba46b80ae8cd3080bca0183cd7023100aa896f5a17dff16e718d8ae8b3b6f7c7980ee5185dbf641bc191b2457ace35a44282ae063509fb578b1d00c53707c39b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e8dd96ee2b6f27587aad2b15747246c8dbf5e59e27f25ecbf79f05acddf6349a489ae03e1c3f8f6497c8fd1c51c23d90023015875451ed633b72f2dfdd16a54252321b141e890245f51f93168d0a3427afd5eaa8932ace65f3b9905c8bfa059816de0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310099e25a4713e31cf5d50cc2e952a84b29fc9f1b46a6d32952c78ef784c98799d1f1a50dc7503323aaf0ab47cae57136aa023100c0be772116598dc01ca12391c7800ebd2d47ab4bfa62ce426a149303a7ee7c758aceba15ed9bc17ad5621dd0d62e31330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023041805027aa1534a9fdc07e7d5e5f003cac6043f3b148655150b257f2a4a227d3486baa9e293580f7ad06e42ebffce8af023100d5d399e5111a587902b4e38a8ff565ae07bbdab2662f3c6b66463196f83b76ed70ddee170ee56be8e9fd278d229cfbdb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300f64af11c8bcec68aaad99abfe7fd28172c4a813437c997ed1f4558a7b992c528643056208ece906aafcb712932ba62e02301a414d17ea7fa5f057abc6ab5d76edbbed8b489c0a7e719276dd7d4ca8b978cdb5c19aecad7d3bfd028f6cfaa4c67fb10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301816d3a78ba44dcba7fb6f25bdf784a32925ae0c5cd61a7ad3ab53594c8638e49405cd28cbadd362eedebaa86a16849b023100fcfb24854108b05c6357f33ad743d98e723d492effb4fda3f51edb5dd1e1181cedcf517c30225de5e4653fe65559c4e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e7b7ec24d1205424c9f7136630be6af188ac4aee774d0123b0832ef9f1fadd1b4a89a3c580b49b61f4e7582e24fbc7ef023100fbd4a1ae55caac0147253f8a6be311de7c5134ee4aea190947ec27255967f186c7c5b1e646506dd4ad91a0a53cc1fd380302047c435bb50067306502300c9006418e1284b07a2ed941a9458352d7b7e2444c957052c7880aa1a4f55649b3461e3bd4db26eab06f9b5ff064f3b5023100b6e69bc6d2bf6944972c008a82dc1244a43b57b57a934d0a1a236690c385352434b198c562e1552b9aba9c5965a564370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230651c710e6bfcf56e42a9403767002d6ce05642490f853de70ce8c91a933487fd90c7fedaadb4ac99aa6835000ccd37f3023042b14332a176acdf4a5bc79f969ddedd1ff2cd150b92651c87213d04f11cc29098e32402f3a738490eadecb7f4eb06eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304ce9af2853d1872539149776c5a314d7dbc504f7a1632a3b74c58d41ac6cb1c83430c593dde003beb5172a324aa40d17023100a50b3bb2e6d08ec7f5cd6b8898dda6c9c9e7655bd638b2325e09527dd88d103a59a978537659dea4c8313ec98fee42890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230459cc3793a8c61114599072af15b5b490fc858533f3adbf94e45f971e60d0893722e79b44e0d99530bec62a109170756023100c83eedafce0effb0e7ce218b165081ff16040ac45f0d43579393cae365f31fc1327721114c55c1eed5c5a07c3b7bcaa90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008cb9e50568e80bb5d125de14fb5236a4a48f029e0f7a9ab9f6acf118ddabeeba744284c9ef6d0d8062f5441ab1492e5c023100bc2029fffd47c9c1187f6bb89f31ab4805416ccda986234622cba3f1624ec6cf5e414e4813c538850734cf98e8f0eccf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009ed51baa5c1795dd5b4420fde236896e02c51014948f1fb3893bf187b80bb117c744e5e54bd5d582b9faba11dc24e995023100c9ce2448feb0bff5dfbb51748b72da8bac40cccd50c3de3c0555782cfa3756c94ea412a7aeef983a590b63cfdf2f37900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302bb7958753d91a0b20a1b9ad3904359882b92a6939922039c07335713fd15f5e1027a2f6c75997490ac17b5e9947b2ab0231008270ff1f8c30e3dffc653fef6c1cf0fc6a879601e78dbc0c6d516ab24ecdfe4bffff3081963e6bd7843a7717abfd917e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023036c54acace07e1fc290612a57dc322376a418ea2b0e99b678b44a078b970d6908341bfb051a83ee2482f2a55b05020f30231009ca7ba395030d9627905631424f5d162340dfd8a71d5df64a0bd09c907881b6be71f2914c920133762e8808f9c430fcb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230667db4ac80a617d9af895997661974318e163ae3dcd060fdbf3e91212d7ab708c8c65823f0d254343a60afe86288ea69023100f2cefc47b66ebe00046ff7fa0eaabf76019ca8176e6995a162e6476b907d512cfb5d7c9b7ebd07503d9063af4ba98ea00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307269fdece1ea2dc44c986f384c615061f61ba19dd712675565234ec34b3d4c423f5b4a0bc8b077cff3ef1e6766368f2302303d27db712cd74367c634eb576667e35340be3ee1c1e7aaa2f7e3289a335dcdc33e333b2441415664fb159a2f2e2d02390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f5751fd882a1d1a5db7dcfbdefa710e14af146b99f69a515c1ac8229609a4f0d74d763f8294fcbf0c94fbe82cda728f8023063d4638f5081daaa592f165fe8d78cdf3de98c73f03f78d2e28e734e10706f4c203109d31d942b173fbb617f671649330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230686c67ea9980b49c5e438e205c4a2c56001d23ba374d186dda2a2627ef8ad4f9989c8ba5c69b81c43730d572f7eb605c02310081d7861e1e3adc0f0ae92e412ac7fd189fc0740885b6acae3c8f0c9c762c4cef4a52a25d601b23f477f2f2b47453c2020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c9ba98c9ecf8c7218083e8793a46fda65f0e69e4ee9f6d416dc9b1236382a583dbb3a06f39f6f2a05a4ca2932e498d4d023001c48cae628289ec6026130b2c0b550ba5e78fd533106dbf558e0f7e3604093bb98f1a065e6981d59f081ea42ba80b170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310085fe22a23292bde83f56be23cdbbefadce568f7b875ec834b875c3274e17f92a8f4f094c6d14616b88be07a3705aaf96023100d1c0b6cd06181ca3104f45265b065f066acc9b602e0d487d6b1aacee70b306fc19ede865c57a7f8f55d140468e2bfa270302047c435bb50066306402301cdd362234dd865dc552fba5e803ae06d27f422985caae6f7066fca69350a670803a3544b5e7e09383eb19a13610dd7402301e4311d9ee3dfcda7061da8f8557a830ec82ef4fde4aff9ee17e86639c36e5e858bdae4cb1d6de7eca5ccb00646cd3a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300543cfd1b570c28c1b774288aedf6d5be2089348f4553f6b26ec8db262dc9ee24af4bb9df9431281cdfb1363b9ee41cc0230161709a88fa308e2fa555bfd9623fb3d75f839487eea3835b9619cd78fc74e7ca3a25fea0a3fe21981e20aa66a4759780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023067d29280a097dfd3c7afc82d353ca47bc47c9c94382e21c650199acf6fe8603e82b205bb7e2a65696eb6819229ca3a9902301048746e66a30ed5891159b8be7b3940b231f97642c19be4db44aaad6d3edc1fc33cb67f487f03e8c0967027a1d87d4d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100af2e6f36135b7b55e73f6a9154005e374276e73941fb93d563a0b706b0d0b1f78c20c27c9a94e97fe41e285a179849d6023100f5cebc47dea30cd12841fc2f60cf82f8d34499f0cef13d8417e0806ad8ad9fe28d3bbd9e6ef4f016451f0e006bf645380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fb479c7ccb3bd5bcfab1278751787c0c12b3f3581d445effc972af56a5df0f6b4cbc55d1d7149e2e1da79f05dacc68b2023100ea06b6814607ab2d5764e3756e3cd4485345aad7b127238f2ac2a21194a45806f539e9640265899142d0718d9613e0240302047c435bb50067306502300f90937089c0334c931cf62da7f77fa8a702c314216f58d98c3f162bc5e3b994468a667efa87aa37a060af792149e46d02310084cab2eda3782773e2ca43d657960469510e6b350c98a7eb2fbece1aadf3d6e382992fdf4c38ab7bee863fe6979a4d4e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307fd4438abd3ebde54befc6ae21e6aa14c318498e3ac1092bdffd9af2ee660a2eca8b39d3e8d117004b8ba285b5bb9f54023100e665bcbdbb3d1253aaf81987c8c94e9e20492a526fb17746854f4c6864496d7f2bb3136f422a4cb00cf3f08186449ead0302047c435bb5006830660231009cb947a3a66b5bd3879201778aa48aa37a8d0f07e1dd4b955b91fc1c48f048644c7ddc4c652e423ad68d17443c2d173b023100881b5feb8fb0a6655ff6ea94d9cfdbc0e68cabfb6d6decac47d3dd352fd8f69a3c808f978eabf17f29d02e9d51ada9af0302047c435bb500673065023100d19a68b0a0262e3247baad3730492674e124bb934e501d09f1bdb2268b4161332874e270ff667e3c5be2b122b564868302303a74b164d57c1cad2cbe1a83a49276fcd4419894c7785099c85520639afc46bd53f30e7fa336b949d3b3e001dfe346930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ec816d76d949d00c3a659867faf386ad5cd9bf2d65b2ed854b0dd3300b2135c085cbf5e4eccc495a9da8f64ae3ba7dda023100d7ca84de6fc42918532e83475325445e06dd0b71bf21221b04d8e8e4afc00c42d291be666545c4c14d5d9f8007da26180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230476e3dfd5754bd2e61b4cc121bbab044577956be6967649ee4c6e6aef4b32931ce0eaf7dfa7ecf75d8a25f200eabfd03023069c216a068c4b65a915df3b14c94f56263faae565d95be7c52597bbc53206c3327d03b5db5e4c79d443e7a4b2c335c610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023079670561e8982b2e4232370765efd52e7dd0435ec030fe80a324a1d0b2feb6711e395fca4490c927809db36eb384de6d023007ed372807fdc1d712ab016646bdc6679c361a6e85c5ce9171849b33e39b476558669f4c60baf77554d70e3151c4ec210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ac7425da0d0c26ff640f409794075ec00aa233961fc189017ce76f53fa4c6229aeede20d2653c81573078655647f0cc8023100c9440634c10e62cc85ca94043dc18b26d28155d06d9e38f62c48db7a12b9ff0db5ce34a52015578d0618e7b4ea430be50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100acf3a9a8e4fecf3779043d0b1c3ee2a8ada1717acf91dee798fb4cdc8be8b25387f582978acf81df25edaaa26e4afcb30230208a8e5ec10dfdecbaf1023e4174131d5fb754baf149ad8c522912ba239d2c2cfec1e92002503037ab4766db6b40d70a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023040017aa5aa4149eb0279eb3fa00eb1d7a5e7550b609f01c13b157b368372ef49485b8fc966eeb7a2822b2cdc31a24b7f02303f5d15fa216c546fa6d197bc262ef76b3429f723847b1de0be143976ecbadf657388dc58ee904c1550560f8760a66b910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e7b6a62cbb03f2119ca46e35db6591cdad95c8f1dd2183fed23a42516d6ac7a506c813f978ac37f37183735d7ccc067d023100da00927b648b6894c7c0d27e33163aeba95a40077ae9de554bec17696203fc5d9c6159fc129b4cfbaadbffc585e8295c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c0c19411af681f36175803cd05bc1959d9cd58aceaaa323ec0386b2dd230e8d12b2eac6b1deebfead9a3d6570fbcf207023100bc4b4dc0dab1b2878d28c1d97882df787c554e26226d9f21b4f75cdc2cdbe4ed7471c1441b9bb53376a4fa8fa5d030f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303acd3da9ac849beed206e3fa8c8c7252a870fb4524581686faa57dfb8951d5e2612899b5064316287ded093c3fa13996023067611d0f617ec8d18513ba0c0ba0ebd11dc61d86deb3cea1cfb2a30e221f53a8642de8d2555c1de53aac1a2980b153cb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023075cdf0d16115b9fd53d036edbd4caeb25d62f23587e4aaf86143f1f3efaab508da21526b96272983d1d1d15c7161cd8c02301e64d79e6e6d1e9694b9d6a956cc3c0ec38b606dbfafba91609f30001be1d2b403ae95f8b0a5ef792b8d3b4b9eb9b15a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a08479639363da80ac2860ceefef7ef4bbbe05f8bd7b32ea1ad2d2235f385ac35ee46538d365907c387a009ee4b72eb7023047351ff167a410657b1552a4bad81c8d27b9703e73d2be46fd7341cc39f6884f6122662a102654f41a9a6b7975459a6f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023024e27a32b09983c019dd04d1d0bef0881561eca93b623ad4dbf1dd8eddea109435206d2baff0e307564c4928dc52c0bc0231008295119559f2a7026e648e9cf26c9f94ec5bb42f727b637c6f9cc560f369788616777b2adfe1d9103ad121a02b3deb560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304e7649c300a42e69c70b28b463751a597319165207abc6c281448bac26141b955be5c5250ade13af7e78265a1d5a5a3d023100c49badedc6e33d327d7843112a12b77a0a86e26bf35f485ace3cfae2e27e704b9a9a1f645ea362eabd6f39e89639b9df0302047c435bb500683066023100be009a72ac7f2fbb1266c1a766eee414a82507fc61bc927cd2a337bd6604419cd518fa1f057736e3cde282244faa80c202310089404363a55672468a668a97793440bd5ea9db42df6068b88b90a7693d784d74207c2e1a107153ac480e399033b0eeac0302047c435bb500683066023100aba0369b838f5f1adcf02483bd4637bfe7e772133a2bf4f117b830a88390348c52122e94b1e2dbd8eec74466705b79e0023100a31e497db70def62d63e2cd909be29c536a6645c5f683fb6d55c9421f9ca86aaa74393993226bf14b230334b081544800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023012d3a3a9dfb1daef605c31e43feecfa8e1f88e84d0722e4edf625fe83a0c0215ff352f410a06be760094919bea75ae4e023100dfd2053530f72750546969118cf5efb7bff05fa00052cb0b6c262578d0eee390a69027cc0e2fd8114b0cbeb93f00bfa20302047c435bb500663064023063d57a310a0c3e7cd05e5251afe212ea3eb5b350c06fc80476ef582d9c4e5b88c85ffb59aa7e38b8ec04ded8e80b8258023067f76a55b5408d7ba60c7534905a77fc81de9c9a056e2a465b0122afefaa0e9caeb649351ee1410ce1aaad3483f264fa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306f0c39f5b7b1cb79a76a7ebe4abade3318b321b3bae6579714d3d1bf3feccf3ab9ba6ccab7538f47bd647447dc1e380102302064fdff8efbee9a0f3a7c0969f9f5bd3b689f20c296ca65d4317f7e1779e2a1bc00823a39d2d53100f079a0def6a06e0302047c435bb5006830660231009db232939cd38e1848c34fc55ef45b3cdbe4a8e219a1da08e054c2df1e53bacb861fb27d58a86e5e4f973ad07321bb38023100d9649e0f8cb556e24502aeabebce2ff570f0e65e4e45c5df792b15741e020a22512d7ab9494e499391a82041ab51fd7c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310094c42050847b154c1f94cf8fafe41fdfe692a3b6c97a66978420d8e9ec268b709cf0a5a45d1da843e8728d251eab6f1e023061b7c86f5b326c20249570e35223d3cb152b5ac112c69b32241f366e08cd1d461f21bf0a54559165cc1b7764b87f43fa0302047c435bb500683066023100ce226a83cc3c23ac9c943c69caa358f82323fa0e67850557007e3f9e857047eec38bfc8e3435f2e3bfdbe802507679fe023100f1c83b35f83c214f14036b46eb0f78d369c0cac9fab82ad00d6119ce5de35958f6d4fd9f7f289f472ef4e857b20769750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305f517d3eb990f3da93c073f17c8261174c21cedc8717f80c1dfa1f45bd1351e6e8ee99e8843fa7577de66cf0222268fd023100c8619340407f4f56fc8f1a5e129eb02a3ae40384e29bc9ba51b9b2365b403f48ebf9ce0555d00942a41c750872246d880302047c435bb500663064023009f78cf6792af99f7983de5560c486ebe7615fa73d29758577b7d4b1669073c1c6182f71286976f3c69539d86816b20b023030962b8ec4988d60efd90b8439a31906cd2ac22e2b7a83e74b4e27652efac8c1f9c81129661395b3c3055d17107be3ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009afb13096c17cc55f205df2264ab2d2cf340157efd6788f30e518231e992ff7c50cd5c77922da6907fe1e4aa1c7ba9ce02302bfad4b2219cc3365bfa63f1ba1b09df07fd8c469375d4b101f1bd6922d9f48d95eb779581fb3fe610d28c2d01e1f2510302047c435bb500663064023029f46a2e94e13fa47e3cc0847bbbe57b48f1cc106e9d4871e3936e2920fe6c72c1f93ff919ab860de1cea47965d0067c0230184920ed3fed142254db204f94b7a49ddcf1569934d69d5471133c3208f7d3ea3a30921f0d61ea226909e95e48bdf8bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100da4aab5e331ba47ab50b3b5975bc4f54646ec536d284a13c09b085b292ca5eb1f129915a56ff3b69261f51f83aded2bc023026becdea718d1bb9e02eb878f18229b9c27334cdc728703bc70ce5e4b98bf41c2c2cbe91f419ec14f6ca08292a9fd8550302047c435bb500673065023010adeb993322fe372ff82bd7d17e251343a11a41693cc5e4d0da44d1fde3283e6f5f21eead336d4725f584305946c19c0231008bd140a00ec084edeb4d398a2651b458a82a521034c46488dc602dce25f7ec81fe3498b4752b3116ffad50f48272b1ad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023037404804f2924d63a5d4cf189ecf1e3a6f7006b40c52248d066102b7175bbdc3fa975d7d3ecd0a95fa99e1780bb3cb4702302d3a0cf723e6396cc651377dd129e03534b08b60a4b2a59c8b86bc95f4015bf0a8db87d81295339e12d7e64093745b3d0302047c435bb50067306502302f355adcbee28c95a7e3cb540adbc691e028ecab6fd59f063f5ee14b887b9d434101821b5ae3c8e8d69fa963bac34cf20231009a65ca16d1ab51ab3fd7bdcd5ecd6d1db95d8b1d00dacff38849ac6261cf841b86279afe3f9f7352e962306cdb3d8dfc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c90b11e8a33fcc7bbc982f39cab7380777e1d6551437b335082cb502e34006c521d682d87588914b1f81c249faeceaf3023052e1fb03ffcdfca40069d1d1da4cb82fe2d20d727aa2bbced5ead2242860ac9496d76086afd03966c6e4d67fa8a237350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c0114afe2f0c6001acfaa239e5b2147ef56a35c814cc704d7243d60c19379241874cc8454bc95a92425fa37463b79bec023100b1253926aa3a1279ba59ef1997d9bc87fe030d80c1ed0053fda6a55e1f3085df25c506946492340bb116c9b7cdc9c2ab0302047c435bb500673065023100957405586d4386303a3a560b2958e7d1acfa03ae52d3aa204d267c519735eb4202fe2797886e978686d724527c82892502307dfbad14e4af001d709baadabf02b0db0fa3fb656d15b467e490af4603cdeea8fe28eee11f17d57330cca0ca57c7f6d30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008cd7beeed096e665ce36c78c0b6cc90e803ddb8f1704439b54f28c26a398da3a20a246f0399d8b646c26e5df62f93606023100e2a04195a76f020ee3fa74c35e7c1876ce490e9486994a44857e63e90ed197aeeba730c3dbabdc3b1c665b9d3692ac150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304192899803520424e778a7a1033cfdc91ed0715c64ff162e323edfe631f8ea12f86f294ba072cedebdfa0533b9a550dd023100c48e2ac30bdc227219f89184d632f50543d95b09d2cfa551f572573f424861ce9fc2459e1eb3151e8a1f5156827392d60302047c435bb5006630640230313c88bfcf7b4a6676d614ba5d61527fa134861e82098a9cd7101933ab1294a6065c11576becf213a3d5fba7b5b14e63023038760b87fb6fc40c2a49ccfc1e8a4c17d90c87a8780c00a636b4dcdd54ef0ae399ec651bba46d4dbbc024bd8e05180d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ec5e682b85cd5a5ad84807fa250ba525a10d74b30106bd2dffd92b87b1d6f477ffb325a0bd31ae689956cc5afc58b7810230744e4db01e3fdaa6556da6c94deb7ad6197030e6951e43cc2e1f471c92d5bc81b8fb45c25a68e756fa8f38ff521f14b00302047c435bb50067306502310089228cd6c21577def5e893c7a1e1cd01a4c0cd2e198f7b2010ce176a9fda25858e740eaa126a3a4be658384bf1718c7902303fbe04cd3a79471862af0b06e6db53fa353a1632ec137b567db3d896a03ac4abcdb20446a8e8ac1a988da609967662370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b8905d3fc52aebff5fa9388982d5339cc8fa6eda01e5801608504b913736bec831c0deeffe52ab24fcf54ae0c02c1a402301848ad013f47c4aebc56bf8c251d4c8c05c388eefbffa3069ced96e7a899476f8e9a298b9c5847addd1bd706bddb20c30302047c435bb500673065023100dda6f46d8a90ac3043c1420d8d06564fe625a6fa50d5c3a2851f031c2c70050bc4e314f07286189329e90746600c7a4e02303b04890bdcf5e1e0e60d03cf54ef2ea087ec6675f70e1ef4f069b06d972ec4937e7b217beee50a87e5ce9941759da64d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301cae9e2f8ae6d5360590fc72ffd1657d1599453ed14260d44dffe15284c6722ab12097e701ed7928d7f5a7c93865afd5023042eabb86fa8192a0aca7579f24e28e7c95f147066f260a5a741c0cfb184d3481b4a1ef28e062f546c691ffd6a4297a850302047c435bb500673065023100e64ccc8b46b6eb1111843a0a802bf98008e19632f8bad8eacf269da44712a472532ec4ab34e0a232fe6c4314921395e702302de587170498d048bf60bc23088116443e1002cfc6c48a27122481d044ee37cb9e1cbf5c9922d8b4c30936db1f40ee4e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b78c3024cded1065ebb59db9f6ae6606750d1308a4e8cd92945d5f886c292f5d10f9b4de9e6c4f1da4236c4ba88c55e40231008e01bfd979c702ac4fa23d110459f106b75327dede01b2f3eb36dc85af986aa6c281222beb45fe93263d4c65573bcfd30302047c435bb500673065023100bbb3b1822edf33092200aa118b80b3e80fb14fb019fc090d7660c969d6bc4abd35456fb3254ccc580be7793fe27b9079023067c104656807590651cdf57721409f665caa8dce629cc466ce6e33cbb18662e03440098c92f6d06cbab82fbeb57a940a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023076fb99cc827c886c5a914682a95e462169865dbd0c6f58d2b897a054ded729138b5d1b0a73186b2e5c57299e1ea4e256023100aa5c4b61ec35194bc204e312cce4653f790a5410450838b4ccac3dabb8e533449691788ae7a0c3277af49b40df5716110302047c435bb500683066023100e6d0bc7910d1ee8db0b8ae9b463b66b95cc509f3f835448d2ae7a4d605e6007c61231740c5e59691bac000cbd2dba7d7023100825ca3eb7d1ae9cd77dc55ed9ebb15aa98f16c9704959e9a7af92eb633e36dad647761c9e6242c05336f43b68b68d28c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100de7afb30c7f2f74411b7214937e865ce2a474239b647a8a8ab6d9d3373e088fb88aae1fb91f0d202ac8f03a56384f533023100ec8f0470ef7c7f71b699986a01936071df4d030ae45d5e8e2c681e066fc1472f826a7ca175043ac6d581d0bad1f161220302047c435bb5006830660231009b56dd78d225c42ab924c0151ac9509663ea58da601f73b92c4da84c975dfec2b1e6ed0bb70bc5e831acaec6a2b565b3023100f54c4c3aa9dd5180efb0a9bc1b466d72bfaf001d36a7fcd3653f77ecbb6d284b05d600b45d4fb1df9db2d57fa5f712e30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d9dbe74ebf36f26cd26f4e2988c3b9ad27b76e5315606645a1be83222b0ebdac5bd5f5fc78394931b4023541696308c602302822f239e64ad146e0ea0f5bcef028e05e802108e32883c8b0eebc981b7bde702560ce9f4a6a463139b5100abf0732890302047c435bb50066306402305294b32588a66d269a80017b4b7d072d96b22b102ae3f6fd178df9bae5169c3857da890283c256f723861aadbbb2d012023040abaa5d9afc5d456123e451e76f9c1a93b9713afa091828a6e005d55a9faf48dd7a9707b40d32954b8c20f273edc9e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100abc3b2d96ba0f527f315c3467b13fe0538d8594941fcf1b09fd7d8abe2b005c29ddd53937cb75007d6e59e66aa9c7f5d02310089b72590db45187c666eaa49e6169676fbe135d127a084b42a7a95ebc386a2ab7f3bd2823d07bba9d749c729f39980130302047c435bb500673065023100b4790b565a26f2b944ba45fad0ca15478c65158655d2df071a6fbc0f0789724c4ac295373a2894dc5dbec9f0fc2eb05302302d458a317199965a5e4ab515309820b5781a3854f5e6e3f689dc42445dfc2ffc523be05653d3cf99981d0f080b3669d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100de71afd15f8dbf23c0a84ddefabec0e4882862dc2c5437460d076b73090a01ff481bf003843c0ce06862e6887d16c117023100e5617820d027841adb61bd42e36b699c24f8d23b1df7d833286f608f067ed309a09386671f92c24f947835cbd317dfcb0302047c435bb500673065023100a8f6e3e45cb7348bf7d19ec54308903be86add53845adeccc42238c727137bea96970fb904a8cc280a7e5de52091fce50230338822ef6d3ebf84d04da0b35421dd5486cfe3a28bf5be9a57c26febb505199c1deff7b568fb8b29c25fb19d16028da50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023065a010181e6dd359b13d5b42fbe41b7c37398acd800dc83e503cbe175d4efbe7f753a5eaf8c4222b4a4ad12727c376b20231009794c22f56cac5279c2d284ebe734d7ce131238d0590e9a92954e27d9d5072b6d6feedd4d4bd15b523a08a3a50687e030302047c435bb500673065023100dd85ef7137c1832ff2bc156df2a21157a9fc633cd1388acc17c7d4c5e521e2d083ae46f573714f3184fbebb04cd29c3f02303745ad2b5477bb3bd245049018a74cbc1dfc5f7213ea69baf09308e27e9ea5c6c8546a16731eae7ed17ad84fa8c025180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e31fa39308fd415f1815efee1a125a6410dcb11b0b4448b4d85a2d7889d5f8116e8019c8b2fc6ef5fdc24aa17862e818023016197dfa779b70e0ed5af2a2bcf57c6ad9fc63958fcc44418236b0026bb8a2af1c4ad5d579dfadbe448bf7cfafe052890302047c435bb50066306402304ef5bc1f599d7841454af4ab23e42e1149a05903af653671fb58bc2f5d872267f36c5351a810a0f9197c939ea375bf1f023073f483b5ba73a28d4361d09ac8685bdf2f8c4c6639027ed045ddcf54eaa2605f6d771f64296dadd1e9e3a6d6f041deca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023012204e6a1cef5625f10fadb27565f3045ef13694e0b3f43ba6804a003540bf87cf20ba66862524d019bbd3db6a3ca4a3023035549020af1e6170c81438c596e8d1af70947f4574f1f083a5a0affc04db77f252f1064ad51005772cb7a366cd288b170302047c435bb500673065023100c6e5d10adfac7586795371c279cd7c149f00293bde35fea74bc89a5e242c86f9031f034e64b4b43b254eef3a191cc306023074af37b870f2410cec4fdb2822095dd392412534f26f8789f147c05c1f226d4947b9fd4270a140110e70599ba6082e850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301bd553b1e65c487de8de544a8dcc425021d6cd1511a69af8afd6d6f36f0c25e575b18c42bd65cecfd9edad17a440708b023100bb220124a0a2cd68b0681b74cd03d2e1c9037c98bbee6ecea0c5f4959f4ff834e277a2089810271f4c68cd5a9a74dcab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100acae4d7cb500bb40519821dfe6757afc5c0d01e9bc44a35037fe176ea863a0b6fd5fdfff7e3d1575edc1e0320e1f155e023100b84fdcf0befe6e1cb0b2f4642396810f80fa226bd72b6b3ff68448174b16c591011c63eb3720f3042d4d36f8217af7270302047c435bb5006730650231009597bd958faedc3ba45ad25f37357f7183c563f3bc5d470443c2e628eeec62e6a9b40b1ea92fbc0b410499e32d0a678502301ce2655062beed6ae6cf1cddd6e4897620c5324f594dfdc43b40ee40e1499b5b98a5a74e71f8dcb74447ce9ceab942270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306bf406b326ef8d920b82167181932a920ebd3a7eab119fc4a38a2ba31c7c8530e4fd24f8815651458881303ae9b8472e023100c447ee749c84664798cef842012b5e52acf4d599ab2d88f7a23ff412ee01459e95993350739e979a1f02439da66c878c0302047c435bb500673065023100b47ea9dd2b3b89384d29dd13f26a7ec8540fb9a3dbd12a8f386831bb4b51e74f9311c543f5b9e0e413bc21bfeebdcc15023062cf792dcdd516e75b912fc57daca400457ee46236909b93a2f31a3636c8883fe4ee0dbdcd35450b19f850d70db058a00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305389229d79a6e76d879880f35c6ccb31f92e6438f10ddfbde4e7f26cc3cba40c90f5fe15d9dbeb19a3ade1f1c72f9295023068dae8a7ff7653dc23d606962a785f753a6027531e278ef536d99defafa0f8309d947ba2c1ebd0fe3665dc3a595b73e80302047c435bb500683066023100d3bbd32795e6e142c350c734372ad506dfcbd596b43ad95435305024dd6297fbeaa9e8f7decc87baee68b9282369bc2e023100a357bd78a642ebd47ec1f7274484a03fac76726135f7b34edd968ce74aa9b4054f098950212d170cce553d26255146c90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50065306302301875d86b7de4121b7946f64a2cecace4ecfbfe403610d218fc9fb69fdf76eeee2a5650b6855c776259f9025cd2291f9b022f34849c213e3479793bc2dd2a1ab8c2ff2c270ca481da3edc32c19197fd3ac6b29bda2c40ec17fd7ea0d47e5fc4f9b00302047c435bb500673065023100db19f2b52644f8608f8ba8541336db217cf5efca852155ade87daddc080b4560af0f7a5b2c92f45a20c4defd317f4bf502300a05e6668937c7f28519c886c754ae06ef7404b64a6c2f6a553b1c6f6153600f343051e73319801bf36d887e73ced59a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307a85beaaac77432ab059ef4ead7bcb99e628209cfc7599f312233112e17523cd001c2107ba9d063e33e68ef1e6cc8473023100a45b0a124ba87aa1cc4e7e7011f545454aae99c93a4c57c3789866edbe9bc850ee837b8d2293a28aedcf7aa9144fa2390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303fa64b08edd6ad9f0ac863fea7417b8112ee18dbd199e886fd62112c5c33387d4ff0a4b3db275b4683ebcd4648a8fea302303c9a8841c51870a0428f0d15434913ba41260c4e6ca4a49aac21c67d35066769e601ef6bb3bac7c9f3f8e4c18e5b5f350302047c435bb500673065023100f091b11b0013b9a29ac14476d40a635bed83dc9d7e0e4e223042a649027ca9d3bb5fc9230290f5f9b185725fa378ef0e02307dfc3120d5131b9fffc82e1fdf918f16ece0a6bf47b80ce34e5ed18d7858f0517ff0ec557405707dddc03fa94926ba770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cd785f77228b90244a60788afc0b7306a702893638ab4f0d866625f2311a0905b5427809eb2c30d412b62b10daf266d60231008e9e4f819923824c6b6471ecae3ff27d7a0a017d62b523131742bd58d3314977f5c09f62921d27f2d327f860f062924a0302047c435bb500673065023060e8dd5b4d670b47e8b9c1fdb1ff85fd5bcb000cdab75a09f12e1095e8ab73029d2f096af2b0734346cbc7bb8c9d98e7023100e858b0d96213520a16eccc9accd8147ccc95d56ad983999ad102e1c33ccd571445fe8f7b05794e1c73b6fe0819f7a94c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c0c1969278911fd31201351dcaab030e0b0ec114784adbbd3004e8e8574ae7ccd0acdb67eb4b2cc80c60005808315f820231009291e2b010b16f6f60cb90a987ba1564c2b394c9655bb603095295ca9c21d2412c823c386adbdf778c22fb773f374e5e0302047c435bb500683066023100f6875cdd2f795e0a09f3068de45c3a761bee61a00dc77f1a92caed8898d026d8a937430fe6cea4bc342c4acf6dae86b8023100b6df2130aba09d9700a1c5b75179de28599bef39225f9bc5560a75800721b0b6e06f4df4894c643d729099989bfd967d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f34114f5a3b085a8e1f9d6ee0aa7e56738a2a9edb9e236829b2987070888dba43fe5b131336aea689741d2e080d89f7c023100bfc1bec6290d505c1f77d26b0e042448cfdbbb8409891555d40bfb97568318dfadbd74e9e208f2d2007a5de885268fc00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305d5aac75831b86908e46b473db767a094c46915156c68012d70063e8170f77763f2587026ad8c8c17407e4fd6748ac4e023100ca8f3ff9fcc02d47941264c4a11fbfc2341e2fee127182cd9b88dade663b95948426b000fdf36ea788e80c4f12ddeaf00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300b392e99e057ed1e6eb261487d5d9434583d7de5b1e4466b2c4e05d29f4b12cb4b2e4ddd4309b116d953d70a2f7e4860023017ca623623c91bf038d501e3200cd8481f1e66436550ebe45a041f2007acbe0a3c4e36e11d9ad79a9f2f5d4416d3cb9c0302047c435bb500683066023100d26822ee3a20dd1a87acf44b5755164a102591af96f479ab2f3bc07c6e372ef8dba9d6d8ff001b54e9752721b490823d023100fb0d84103d474def2a2fc366edad26fcf3125fa8c88244c980c3795e4560ab0bb80c3002f74f88b398877bdb434e57c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305f76ff2f74363541459263a7db21f2867f74d3044448b3d3d1d266a17665484705fd1a7e6d8c17a86c91fe5c92b70241023100d053291110b1691d5761f1a2483af498a29b1db6c983ecba105c5f3cb08ba892aee0f71ac1e4e3694336980ba9196f370302047c435bb50067306502302a1fb4f326f5acd5b7faa105a5c1df511a50ac5b43f5f17d0d30246397743b984bcd8800f93bfbf5bb3090a372b4d7f302310089cefb34ba782f02033f2023c727b195024386bab5c51cb1130ff2979947b4620d6a3a90585312d65d52656b0880897e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300d3d4cb3c3d8106d08d33484eeae4c7101c3ed2a5df7af9d64763b174a800f7be4edf9b45bb76f2c70ca9a13beed054f02304d9793cc5e9c17d7b536c68431fb0c63707e9543427659143511656a01b9ec9945212e1bc8395d60808555545694cc670302047c435bb500683066023100d24e428e35175c044ebd4170b27f17b3d62d5902e05b248d6694264fb7e0d8611b1419e14eca0ab170c31ea63435d016023100ad8c8a66c6b59b5fa7eede89d2379ad9698c021634fa5d56ad7708978f1b450af55a24a3fb2353287a18ee9c15b09e820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023037d8c4408c5e497443e50c4a808095d9b077a912f1e4917c3d1476d9c97928107f4da5ca54d0cff41e1518ffde4715ef023000cdac21d9fbf16923e5a22854cefdb0fa5840e5cb149be3ac897cdd2691c19e727d64044483d47a5371c53bccbbdceb0302047c435bb500663064023059fd1e9aa3541dd7df76b73a4b74af336e71c69f251855ff70ff164863529647e85bdf52b95a9cae716109e3a2a0c3c6023061dfe36e5803c993b7a61b92cc97cbc00a3296ae16c33ecd02cd426251944e0e0c9a119ea6ed28bc0e772374dac9a1180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305b96561f575006493adafeff7165bc825a26992d5afb1d788e6ccf83750e43eabfa1419e8ba2fe433bc16659d624919c02307bfd94293185cadfb2a773d285bb1aa9194b5a06652a74041e361d14ebf0d15da1c08f8b9f4db74a432ada08d94c6afb0302047c435bb500673065023067fca575e8c04212baaa18d95a1815ee176fa49b9cb7d35314887232c4acd6fd125ac7710ebeeb79482cabe77a4780d6023100b3fa196d609d6c005561aa14ff21029eedc7a96a05cbe058922fd0e76b76151acd605b43a6b6d7113ce5bd62f4c89a950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a09778ed5013cd5b5e56c6cdc05ebb80d65e4e0bf9e148e6f3e3a0bf7dfc6454cbff8197b512c782ea8796ccb5e318a7023100d47156ae8ece733fbe5f20cfe443691d450e24e7d08d759861fc037d8cc3e80c5c02c5036bab531dec0518fbd3cf83f30302047c435bb500673065023100f956447b833d156f5c3f709748438180669080f0683d9a740a5461274ad1454e3e9a27992477bd023aa8ea1ad83dce7302303219dea956a2f1f59ad243c20c93503d3e5c2c5029a9678ae65cf6eed54c0a2cf65ee8451a497cb92971c6dd08d97aa30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e9965850bf93e62a14bae81bc48fa0bb8c6d42cba06eb7350c9df76eda897e4a090bf7d3a789c73684dbfcf02eec76b1023100f919c8a5aef10d087925f7478c475ec338b0b0024d932836b1e64a25bcc67d4bfbba804b253033a85b0d21c819df2dea0302047c435bb50067306502303606a987a9eb1ab94718a7d834a7a257849085ab356a99b6363a7cc31c753058d1df2dc03b4641ef797ac97058c8da8a0231009e31481a9a121d22c4a40ed40d88823892af18466e407e02c4476a13d9d5d233562424cbe3c9dba08c47481b7c9b6c720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ede432912d4755b753839ed92de78d988476a8fa5ca101e52d7aa8a6d2d14568afd159fee718e09bcd710345bb1ecf7402310084124aaec1a9a1e5c535a4ddd62402290753edf769af564bab2a915f897166fa0c1d92f3a93f60e90d4ba9b9d1f2197f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310090a3d04c8d53d4dcce8b8694e3892538cc358e75dac4bac6211645ccec8b70dcf27be53a0f18cced5bd0cdbe97d7dcd9023100f0da7bd9d24b3bf96922797d1a8b9287ac3503ea111a57185a0113c52e0da9a4b0317ecc89845976be362ae90621595e0302047c435bb50067306502300384ea3c51e4ccfe3098fb320c83481d2365c9200a8f435e2ac46592504f5cb445551cb353089400731d78b0be3298060231008d59fb6dd4763a7101b0c1938fa855d3fe10a2739baee1ecb6a9586788ce97a98b99dc7a7029adfebc56b0b362e2929c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009d0b1b253c51a629e4ecb2189f28995a9538a10d095babda574030f082e1c67801f7197c51eab0c1e6b3534a571f96d502310084aba78827a7f2e6a977ac6b016212deba87d17c060e604f718e5633f0a8c44cbceacc292b9b06a7a8d05ee29e87a2cf0302047c435bb500673065023069b9008095adea7b16104109a4c0f979fc8d7668285464f7e86356a4165c429276eeaf8f2daa8d1d55892666cd20c9090231009cd37bfe1ff3bace206d55c016153ee31a9695cbbd666fd2d5ecbe7e4be28873f7bad489f377b98234a012524fd5d6970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e9e3bd110458f01aecfb911660e1f4f76f5682506975b9dac0183171795b3c990aec306d0b3c3b77ce26ac3789bb2b2d0230542092c68a67f88a9f88549b83cfadaf7a54b9c3c0b607c4d7a9e3f557cdf343faf9dd6d1467a91ba863f5c5208f053d0302047c435bb500683066023100b9c58f1d5f38bc7a3d9f18794785c586a53e5488906571b61da047cc7995ded50a7e7ff96213b5a845a87ecbedb5d0c302310083fd00da662e24974a27a290dc502cd5e6e9d1bb3c4a55179aafc538b7d3962db7701a835734a666f0d03be231e7e6630302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300ab9f8706e8119d9eae70ab62f135f8fa7a126ad5c723231b05ddf58d83349504bd1e134cff7617b58f84df981721454023100e05223cb79211d63cb0333d0602e9f0aee99a9cc9edf143b8bdc32d38253e78d7defebc457b8635de90d33f0c8383a380302047c435bb500683066023100e8671da131cb495f8175fec3c941419d89cb04f0653a5a45f25223acbb68b33b853d1a0b7daa52fd384cab726b5e4fff023100fda864c4c352f1da329c9e0ece69b0b7654767389a950276ee47b6964c4bd12a5f75e07d036ad798ed8f5b117f59f91c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302f1c3a7ecc1679ad0fdcd7c3d8f324e32843f8e3873571cfee46c13aea3a3f4e10e87b452fd4f3e15c4f8cfbf3229d970230149dde237c194e539cdbe8829ad5edb498be70115034fe662c851ed119b45efe138c01f4ebd9552c962c184166da6c8d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307a34734c2ca261c54d1f355218d414277a49717b28897aa458072f7d55eb9f23028013224d817952a6c8892e4898361c02302517ebc596aa50de0d85f2f573c98ebbeda2b3e370c96f31b4ed3ed447c4a670d2386b543e0609c11e1f82ac193fbc260302047c435bb5006830660231009be9ada4e710b15535d3d3a22a82d55ff254375f697315d35055f4bb3d7cf07f02143326db3f9f25ea2ac6943fdcb463023100f8e12b2ac6fec45a4888dbd1535912646ce20917339f3b312dc0c98fd39d7a02e8b2f5388fc3caeb93274aee41b0eaa80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307d8922d2f5139e4192e39ddac3d25a1a42a718dc23181d9c5d6e427eea9dac2395135341806142570254b22a48e8bd4f023100dd1132195774accabce4362de12eaa8c606effce8fc34c05f6f874be640962a93887311ca41286baca84044ee76223140302047c435bb500683066023100e1bde479a09c8383b8397b92002f0031c59ea94e1f7f6104a7bd5e8a3109f0a34bd06a4f3d3ffb8c5d6015adcb9d0439023100cb91b2d41448a6fbe8fcb416dd7486f7c338a32321e64d43fe93f93598912aec4c9ffbe013d3eebdbc72eb8b42e606430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008ec33c2a6ab170aa2f1f4fa23f11ecafee56ae0b7236ed3d5b896fe59fe18a97e124dbc1844b060dc17d6b236e2610fd023004272879881a80acf838c1bdada44d2b3604b9119ad652a014d2e9b9712c1a9b725bc761f7c1944f0fe3bfc06a86151c0302047c435bb5006630640230677503b327bb1796c479a5c1b66cad74cd8f7ccfa430bff4d95da5934f51199ce1acdbba78b49ef093cfd4c4e2ca62d202304ed558ad0c311179dfb44f5ad188d5046716e2d6d0a620185cb7f0bc172917ec67a91bfb29d23c3cea3dbf14047bdc3f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b00ada0e694b5833462bb010ac9d1ff64b7c2fd68ec8429c103e33b7a2be5231db10639c2112b2b37ec5d62c7a32973f02307573564fc305b20d92ea2fdb4e3e17db1bbf43f2c34a4f37e4bf521beaf81d068a2cfbb58d54b57f73a07fd32e0f39e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d600ae4fe78d14e635f9c41dc687bd84c12707d252c784e80a11085fbc729f0db5fcda2292a41a88bc3e99ec865c44c0230358f451dba88204683eba05f396ba4494e0ba97e391536d54b25089eacab831674489327cbae8e7e442b6889688d84f20302047c435bb50067306502303de2757e00b538b9cd0d81086ef53dc692b20ed08a0e99ba06a121cd79a1fdc1b7fdb1076e343750a639b9ee80df7d64023100f382cac29852c1a003821c9edbfe9f7aa50535dda43f42b54dcce366311d8cc58aeac817c99f66758e08ca9c726b54510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023076319fdd34715791b29d373d28e30fb71b21d39ddbc431b28f311121ab3a580d0fd6f865f648346b162e860a5d39452002307c894ef89ceb8234b778a25ad9c41b79b3ba3408cd5c817552d31e1181ff9856a8badd7a5a5fbf2bf3f65cf11070e8300302047c435bb500673065023073f7abe8cc44d222207b2c75ba3eb980f9ca38390119b718373888041b0a2b5c1eabc3753307b99f7321994241561ce9023100a6bf3037f301784665a76746a8a72294448926d9213d0bd091ab5e4c034a90ba08800b86cba8a37d0d31b7435324ae9e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230093176abe2fc27656c55ad3da314ae808829b2e3b166105e1c7395812381b62ad092dd53ffcbc1931613f8a91ef7f4d6023100c4673c27ee238f0d13970ab44ffa826fe12583c133af46a95558221a210247bb26dd0683b0b1db20d5ba180485432cea0302047c435bb5006730650230106fdc9326997f0d730b884452c6ccea97fbb3a9ffab1a66d352ab29f73e7c7de2873cb9e5e7e53f68c4133f299fcc55023100deafaf0406b987d14bc5dd8cfaa50bdb5b07aa5015aecbd27dc66b0f4ed07cad19e9ada8182a7ec8b376a6051be4a6500302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230024e6fea690e5fdfb8f53c1a69f7e932eba58436647622ce14b8ac1f95c91140e89ec6509ef676b31285a648f54d6bb0023018efe1dbd3675fee687fb0e7ca1a070fadbb7c3f5f9c344d9d7b399280d9c782fd1e25b0826c05dc7bdb32a291c736080302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cccd716479e355ebf761f91d764f911b7414e8665e65b4f172278cf59b36e9600684da4da3016a01e0c8dac357330877023100a7ef4303676eb35c4dfda348aa526af547ab33906b2736ce62aa7ea071d4c79d40268352be4084f8286cf351ee7bb62a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100af93859270dd21e35973accacbe5eedc9ee9c0ff53cdee095e59e30839bfec3cd6820b0f3b1ae84b2bcfe33e18510174023030251623c24cb93678c6fc87ed87586e7fa2984f4ab654cdb4cf76d657f2ee70e2ac8834f75e728630ef83ffb3108ec60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300e65f5429159b61e40634641acdbc71526b94202d7288d7b634d1adaf6205db98e9db8c89f5cb8696efb1ff2b8ee71d102304ca6b32b6b89f29ae852eccafe829a93ceac8f12bf1e1af251eb7be402a4577702bbb6f66857c32aa32cfc4fded16e990302047c435bb50066306402305dcf79a4df370b372f8d4b0aee6669e4e72e88d7c4ab5c275493541c90691bd9d541af5dc1e78551c83c53727697c1ea02307b2db95f972277ad41620e6830d8cad04aa52f98b0cc108ef1cb1cc452100b8887bfb313d720746a8279e9222040a83b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304a690b0142c9a2a7f0e5aece408cd1d9e32823ca161e4df396d692b92cac9b4a335876fdd17e34694a67315f0a8d5a94023100d740601df788a69cb6232058731e14e19bde4df50116fce95349b40a2fb2bd04f20e9d3d678866c4c284028221d2d1d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ca65004dc7f31a6549f9432382385e3d99969a316a9f731a79381a0f0e9a42a2b67fd5522a9bf28e8f42e429a8b4467c023100fc035b3e36af293d3acf07de949600c21435cb189ab19a419fc8bf74a32a0dcb89ff263108c35c5c1d4f51da18a9de210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023044ca35e5129d0f7564c5ec1c0d93923d589668cfdd35d62355d65ef7f6bb435e13f480e7202087edd4703060df84daa302310096f1f54703b4a2f3ee723121221042fb375bfb9754e0268f414007796dbf9b30dd10debec59074e23b67eb0040aaa6190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023000b2886be3ac22871bccdd824cb8fc7338968a06d344b2a0ff07d405de241b90c57a8adfffc48431a155916fcd01eecf023100ff462c1d99df79f7c6ece141296e0ff9bf022dbe223a84c3d587de274cadccfb0e4ec7ad873416a37a3fefc2003e74980302047c435bb50066306402301b5619dc08b455c440c1bbb2369cf3cc0738db8cb66f7c751b89111f4c5b0ab975910ce2b4315c84ba839be1ba5fd2bd0230586f3b195734b4e2e78de824b8115086b709a6c02cfb521753a9c00098bd3ab4df5f067373d6b64f8143ae02a6a9006b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c099cc4fac1d81160cbbe560276ebcfd0ee469e178222c42d834f79ba35f35993dc2598815a1c6d725f8907e4485898602310080a2bc66cdee108c5384178ea49c75630bd15189a6a272a69be0065897a6897b4e8b2f83e0896040b90ac912ca02d5e30302047c435bb50067306502304dc58b1acbce6a8853a05780823a09944767a9d74578cfa3cca9eac475c8da4f0d5054f276e64e41b102f875e286991302310088cdbb0e89301e13eedf4885a9bf5a422db566bf31b5df1ac717237679997c56d44f3d4d80ab3a4849a16e67b1f52ae10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ef6ff6b6751a5585b6e63517e99e2acc9f603d877d4a4c491fe559c38724ae0bf99d35e5c086a826adbfa0abc5c9745202305eec4b09e9d57d8651c35975c06a25f06a3a14b62fd176e1ee51f63ccfbe3cbe3d43220baeea8de6cda39b913a4959520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a7a967c020db708c5f013fd80c6cd25833cc0dc2faa386d7f60453ec8859ca27f6c50c66da2bd2691401c2568129fb0a02304954a72d54ef89d2c585865f838e9992ef4782b74d2d8a1ab5396d74951dfe1e34a9ceb81cef9010ee750b86e59549d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303a501183b760bc522b4a17a1287cce95a664544ab0fd75d351241bdcfe962de80fbea61604ce6850d8ac9abb2da0fa2d023100ca6f3b1c0de8aec2e35c4404e668e0834319f126aead4fe0de54ac65888f61544a960f789c00bddb2b38760fdeb1c2660302047c435bb500683066023100e2651aa85e0b57199c06603faf25a2eb8ef9c36fb474e1917910ab5bb8ffbda54186d3c2add3d7e9b1ecc27f12e7c6e5023100afe94981e49fef6034d5da8a2b7275f8019761e93790ad40a6accfc4d0994fad6b68608f1a160f1cfc0a2e792a6523e50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023046c03b03568b94fa1af50ec18a2fa3b3c83a7c769985d4b7a2fb0fb4415a242a4d7e86950ba215f0390aca5b8e53ec8d023034121c1ad8101ee4966195dd942078021cf083fc1972a7fa1c765e56c9d84e3a96988ad6aaa8e64336aec9c5e78548da0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230104069c7dc586e80814a70a519735638b60b6ecd40323a4063b781596aae10d69b1941122639efb964410a0df62ec1aa02303ebc2e72248030e066c5cb548493cb79c634b3e16af22b8627f86551d75a8361cbdc097974da42f3f13e17866222a9310302047c435bb500673065023100f4667628e6d643b10d5d0251c30f4f09b55172a57ba9dc054a21c98c2e20254e99e5ea7a125681892d9e1546cac1f56f023046b1921498f885d7016f9853d15403c2c3dc905de230bea58cdecd58672f08371b939cf2ef1d2c6d8dc72d96b1436c6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023055740731c90cb6b7b116cb4361d4030b72ed7c0849e5b72b6b3a62c4d17df5aa23e0c8d28b8ddae993d0f65a79635dac023058a13cd322ab9a3a14cdc6c659d6df44e01740cb96536119609495f1205258e2899def2388121d0be9fa2cdba99b29190302047c435bb500673065023078c222f850921dc3520d7dc4545dd7de5f94df355808dd6ea31c218902eaba11ed3393e5a0642be46c31ae83a309cb1f023100d0044bc2f7b57553463e5b10ace480e3b43bbf483a2b36f7f5e08a6782ed19b61f978f338a2d6eb96c971a8fea4aaa4b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023041220116972afd99d5e4d4c548fcdd9e170e85961dd472fd368409c95f22bc017fccf468659e2330668ef3f614bb4b7602301e0ccd7a41a3ca939cfbd02a5f590639639ea145f47b89d44f1a4e367a874033873ab312bded23707c8f92365d5ea8240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e2795fd87bba9758fa1410414a6a220588d95cfe45642b2da3827c26bce90943c4c5e8ba571947f9cd74576d0675b187023100e8e17d31479eb1a7e4a6877154c5988b5f456c372d8778d3603d1373b3f0b646cd83036015d21f1c3afb4acc583b7c250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307e45007752d50173976acc6d32ad2c1b7084724cae36e5a5b327756a731575f4abdbfc8b007c99019761d2b16663e1e50230108c6bbb5fc7b64d0bc5397250686813f782da0adbddfc8893ba64a821ed77ec9dd498f6cac5b4c4b25832455f0beedc0302047c435bb500683066023100f091a1df8a70b009acadb1accc2fef26b580a18dcf7c4cc781f0b9358f6ab63ad93bf346e9fe81824b88596e26caac02023100b9ff69f623c2d3cdf27e21d2200853257c694668e2b33d8ef127ae2dab861016b842f22921dfc2e443c97b44a7584f860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100936867698704e427c2cc2bba41eba91ade179a94f0245a96218bacaf652db00cfdfb0c8ecc80f00b85043f99121dd741023100b40d6ffe0d08ef79e52d7b110e5e269f217205a3261a8d759b262f51d71a959e07fb687b633fa0aafa108fbf689cccf40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a11c52299f83e5aa75f1cf05d2b7ac55a6d026cf39b07353547ca81b968947d0fe8ee1e2462a383eafd655af5feefbcb023100b21f52a5908c4be6489f54ccf0c579c573a80926a0e1dfc973bcd20383f6f7b64d9e598a9ddb59c4d304c333eee0cb420302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023047054c83f8799b13b51e5b74920515970bd0f385d61c41ad29a4775f70796f0b32e2c57c6d2fb0e444d088cf99b7c2b2023004a98e6a799a477363be7f912b109f5b8fcbf1af4fcb5239fb2ba53ba15bb9220c813c7a809ce2cc54a4c929db07e84e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023073179f9e50c6653d04cc42b5ca4ac19a22d639a9f863b23e8c3323d851a87f7f1f2bb554ef6aff8f41f0b9afc123d9b6023100f37810c48deaa2a620c317b7508786c465a4feac6a468f90365b7661002ac8f67f7ebdf73e4924ff37dd3ac83be6e4910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303fc92202f46eed806bdaa4d9018853acbd19f128b8513ab457b86e5e8df61cef8a1704822279b4c133f9b868579bf55c0231008ef07d9090e1e656bbddb88b96bd669bf5b2759870e55e3ceb782e0de0e1dd481cf2e3f6b775e6209992c3dd37de5c180302047c435bb50067306502301895caa962679d0bed6a1bf6dab780e48518e517c485fd75427d790351c9ef223af13151f376d54f99036976d967d451023100b86f406e1bb43e69fef28e68f0ab3f4403915958657b608f45564694108718a67366e9064c6c1368282de6bc584402210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307455d72904fedec2ff309637ecc599b8b78f8980d68a32bd99d6e8f668da1a5e3c3a8fba06b1d9327c7db89a51e9c6be023100bae242d2fac8bb64158f5a5cdbe80e4e0e9bd0548f03c90a79b64bded79c92936079dbac450fc5c6b39a51be5cf39e700302047c435bb50066306402307db09ef27a84aaa19b3a9c3503bb5786a6878f7405204a725e59142492acda6eec7bc25e6869e76f059ce44e390f55c40230473096daa733f7aa538cd6b4d4e62ceb9a995a3954cff8fcb0f72445dd441a804f81b0de82461031a6cdabeabf8b99c30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023052d50dbe5e41ef4b06a1fa0e8433554a6401bd4e545c5f0147b166931d63d80796b109acb064ed127e57ca9432de4e51023100b944906091f84864e5a55724f83251f1598e87c5e1b6825077c138d7806ae63f1e5338657daa8e378c5929249029e8ac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023042a16e5a9da7526270a237e3bd819841f013b06efdff03526d25af9c6a44d6b6ad374ec6d1c8e88166f817bb7aa15ea3023045257ad7eba652d718d7c7d4cf781d2a65eb0ca2e153f5867e7c89e38fd0baf0208966c9b5dcda381338563b53a92ba60302047c435bb500683066023100fa30dd9400e0e859fd000a5dcf1a5d32b3edc77e35b644c71d009d16f84c5cbcc34327a419ad925ba04b7a6acedde21a023100babd0192413b810fe8c62b3f4a99cf289159fa2df1cc3dfe6a01ab268c888125562199cc80dd2805acaa62547a952f730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230021bf284425d401f71db8c63a10ce2048989720977f0f66f5f7a72c5d20fdaa936dd728aa0ff1ec4330772bb15d3cb6d023100d37c6901942e329f6ab57fdb2ed963eb4a27423b7df8eba7516cb042ab7acdaab7e818aeaeb2f44be9fcb2141d04b9db0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304513e3a6d9daa8ae99237441b5d091a9fb5a86f8277514678092270dbe73d542a372a2b5b6ec6a1715ab7871c67d76a10230673fba7f6ab2e4a7b563d5f0be4d20cbd41567e45657f13e7d5b6e4e46f4ffba8c08b6ca8df87f0d7557136e14ee69bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d28a32435595573b9ceefa3f48bd29e02429b457b51f5954b8f39189d34bc72f5f3fe7eef8193e32e0a35fef7179e4d50231009cb17179e3aa53393f6de08837f6bf6ed98d49e2f16bec865a67a845466a9feb6f1422b36fa9900a4ca8070d7bb432700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023027cdf85bd0af812d21b0f0d755e9f1ec3d9e193c69282d299016b3aecdee55c022ff40f45eafcafd3bbc6c1d510ca339023058ab262050b7728e31c45376107d96fb6e70a6afa5ed697cb4cc0792d8da740d560d8ca60a3077854c32162ea02c35f80302047c435bb500673065023100b384b443cf7612ee6b32db9be10dc5dfa1fa1a483d79aca5b72a30dd32abde88d17460b2a89dec40d54521dbe81e67b202301143da3ace35c93e60df185cce95ae97864bae71bfd386325ee9f4b3b1c433850b1f44947923f24445f42828f543022c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c03f90c406f74d9d5b1a314901293725c271aa1f058cb8b9e217488ff0fe80513f0af8bd888b3c9820023dfb7de4818102305f18cc07e95a057e8c13f3815d28c026630e37752f12bd9c1e9dcf2e5e682bec85b9b0ea95b11324840491222c6efd1e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230594ac8b9a86bf82550cb2adc380a3f5b80f2425c987b6ff33fd185032d2310127b276d486b0febd6d549a6f312331e900230346ef4a35acdb23cfc03f5d84f492168f154d556502a64686f4f53c441e0c6f6514bf94517518498b30de33ed8c1f9390302047c435bb500673065023100dc13278d35885f796aec73a622c27dca9ccbe015d86c60a51d5dd32f7b634a2f587cad042e49dca041fabd654c0646ef023055b577b5fec1410c2bd294956da568c025caa5370bfaecc658624a852bdd804480abebe0c690d08097905c780bbd9fb50302047c435bb500673065023100d35f8764de2ae7e7b295a51cc4e9261e575e7de6fa7e4085f9ca4c715043d256a11d72c6e3da3016a655052aaafbad38023022d835bd7144ac8742171feec1246e391ed654332e4c238c35e6f189c9c374f31b040661e1593c5ef333fd0aae29f0fa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ca2f6b777776e9f5c53555773b68e7fd4332d69a1a690471a1033fc7725a9c51e71fd341f36a9b674be1e5c2b580602e023100c1403fa3ea1ddc00372ddf659c48a4e4015e44c3f6161f59408592a20a3521a190476f6da07e09aa7bc7d0268ff7739a0302047c435bb500683066023100850a6a282a84b59cc39945823feebb12810469ce056004ea67fead6d9ab9d61a8c1c7c5a2fe12fa56bf16aba893044f7023100c035d7a4cd6c63a7ac096b50860df84d735c1e8d2ee175492a77441bc462e77dcf8a5f4c600e4faa18c9dca5bb49b4df0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dd8c5910f19a2ac03e304884f47857f4efeaaa737fab0f8b476ab57a1fd7071e26dec36798602c655febb9695a8c64d7023100fb833d2d439a6021cb5502a961f49e5d08973d0df384fce065e29eaa46dceb0d349eb345643415619ec2aebdf20641b40302047c435bb500673065023057066f414774934652545cd1f025eaeca19ec79aaa410e91763be2786c418e969ce0ebb0b083645c378b588f73f45e1e023100932952b0f0af86854529a034b54f4b5288ce67a2e564b65679338c01db81c33d6d7fb9632b5cebe85e7ad6a3b27a0b0a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ba00f508fc89bc7823acc0b5f618d50b33f35f369bf36841cb2051d1759e737ff0ea055029219dfd816d6adec1a104e1023100c4f53694590e35c40d95b3ee9ef605a91d4192baaba4b03134a8d34a5dad06ddb4524ce880d55fbef43ff4e3769d72760302047c435bb500683066023100a02885e62068acaf92c02347566ee3e464e30689d6921d69dbf509f3b8f3e9173eaafa0323e8f88850fdd61eef61c7cc023100ff32066edf28840cc7cbaabac1f0d7fb7e176b043f450ad06b9aca7dce7fe8ea7409e937bd7321cb57bcbeaae50a044e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023047a1a1de54d535654794d062acc66524bed9db94f4079ed58c13c2b2747081d67f015d7ac088c3e93d1344c1a907e61d023100c5210a5e6ae812d9790420e4e81ced3b7082c7691661d87bf6926f81e15ba0f1f79b51f11728c794ff145f50650ff3ce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023047886f675eb5c6646873ffd17bd4504caafd5872152748f619c2cd6274b51a0255f6aa3dbbc88a09459602d91f46430a02300b4b38b8823e8473f1daa5fbc2200d53e37f59ccac6efc3a0123a5a6c4e0c3b2ee0491fce2bbc15aa037df6ea18abbd20302047c435bb5006630640230746f922f2f5a88a0296bebbdf4a36e344764ab46d27e7096c9500fed534687bbfb21ca9dd5011b8115f8ea0406c2745502307c10c4d626c3a9c032d07238ce4a666d4fd58e9b1fcd96535d07b5b416946e94e7308c0299def4b3da49386a6b5e01cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305e3c8fdc766e0e6165925c5f2576e3b3416c9503f78f1f73b14fc948ae228180c5c483381c461ced35421e15b92e458c023100e95a380b368b4b1fe69893eda00ee7b2c5813dd739d883830541168c5478799b88b99a3ec136824ed7963051d33f75f60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a4331da9ba7f076ed738e321db32a76cc586b14c66748c1cd38afce37e256eefc23f00e560fd3f039b9314df7745228702301525378d235d5b583b26fabaccf0b4d208ce28ea0acab87b426f4a55c4f68e78143c7ebb523015c33ef92c986d460f8b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023028dd23f308bdb23ef4c0e4f772c0d72cc860bfe34d70a5352a01218da4154699289223cbfefb18d6a7380242ff44526f0230374a426ccd48eda606b0da8f7cb4ec9bedc265e785459c79d8939d0568b40d043f5b9ab413393c325d847287a8b786150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b9ea652033e521471a733b11d3c1cceb3dcfaaf6669b690281d286a3f54cf3c7c3f53175737a2c7e3fddc5305a75d34b023052ca263a5713bca81c490e5ae6f545acfdff28119b2d83e3e76fa65c58ba0d28cf8debaf7b2c46e726c6cdb58b76455c0302047c435bb50067306502310099d90c9bcef18e722407b25ff467d939e257d0f5950e1cb173afbd89e4bcee8e296b106a1f533970b0d6e755310bf94f02307f63933b8f6abf1136718cd6151ae2ff58640ca3fc043ac998ffa9572be2aa5f26c6cd4c792a448992311028fe5638460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008cb3ffa4fe70398881f28fe54f76d130e817d5ffb44f10ddb4f919b00a0e61de08d898cb789165d3b4a98ef7ec61bce10230018008b3fc9c47c57cfd5d4c61beb50e579a5f26d43bde3f2db4b3ba20296ab9a066094e712cca87146b0e16b81256e80302047c435bb500683066023100dc20a2cf3fb41716bb1fe36743c9c6d78498c6be2aeaddd200569300e71f2b31e1fb183889dd2340446e3325ac71c4a10231009f55b4f2d268c53620addd716a7a2f8c31a3d3d2089eab9ffb1a1a884c6eb1641324cdde033a9fb1a437c4dcabc8fab20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302be59dcf14229358bd9c675283fc345f702aa6f6fec6134d9b6c148373f90e3d51c9c74d321547a4bcc615b39efe37fe023100aa688a3e41884b58104ca205b647d65f42a2865c3834cc40dd94671a192ec45281589450793bc030e63f33fad03a07f60302047c435bb5006830660231009c76968d20d418c156e5fdf28b7e1ac03fa5828a238e311d01fa45ac0870212a6963649479a77d24e912808194c1146a023100cd491cfdd67f76eea6e43ac44921edc9db7b436d2325fdc89cdd76e4e9d09a0b8ec7166cb7a96807616ac991af4d5c5a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300fbadee9b740c1a4f2781a1fed2b801054da611b45711e1e5aa5f2162451cfb26d41e8c3247d8775f59353c18f3172ed023100be4b5c862a03f258ada496feb1ba66dbc354886a26dfdced6124c22cb4a740b897d372bf4fae479bb3dfeedada7e633f0302047c435bb5006830660231009e9e40646c3615699bff9855f01600edd9c137599dfa36aea1798432a808cd24f8015ccd670b62dcedd85385cb1eec9f023100f8b848c1cb83266cd61a7cf688abb63e75b18dace20233405ae68616c3e9ba9449a04b63cbbf88b6ef17a06054f72d690302047c435bb500663064023057bc3358310c16bcc108643cb2a5b6b79ddec19240a551714bc06ba1f68e6f73b041811ac74d52712987427dc54a8c5002303940d6a1675954380ce0fe43deeb871f87b7c408b5c1cf93a9e5d6f5c9bc3926b30c648c9adad965a253d70248c23ca20302047c435bb50067306502307b830fee34409b2cbc7346a5e3caa8e54b14e8977b0b6de33b583dd6349fd8e3807554025bd1d6dd34a55dcd66287e12023100ea51aaed1afea91e0354992616c6fb6bee914d512029c5a695ed500facf343e234eafb5607a77bd56b38fbb722dbd44f0302047c435bb50066306402300b9b310050cc38cd7f309854404d4f0b24bcbcd77e9c133fd9df2124ccfc97e21dc2ca32e06788cd2ec5ec73db8190270230304ae50f263f8b4656b35c621f61f1afacd293ec8bdb7baa5b5e5dca1d27893c28f8bd45be727f5e963cd7b555a69dac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f5494d64e69566c5e1b5840d1cce32887d05a448b3b9e9dcac633e8549940c8031d77456e2a2c4e13d3bd4db6c1479260231008ffb0e606ffd55622d0effe2613db8d90e6adcc532694ba55fee1baa1965d38fbf2b5f8b4df7973065facde12a112ef00302047c435bb50067306502306bacc8aae548e9eed56b12a0d342334259f62b332eca82c00380e9c9a7fede6b8a75bf12b9e162e5418e4e5b7b604382023100a8fe38d1c34dae3cad11cade41865c2dff244783d0f19df5d1f1df48a59a4499afafdb4430062504d0f9c56b839082c70302047c435bb500683066023100ea28af640cfd2d14d60788f633f7f1418c5f275552f55bcc025bd57e3f4817bd8b6f5c0be42d763daf6ef5db8d504d3f023100ff5442f04f8888a1751816d64d8ed788c2d599345cff2d90c89144ced4a80dbd492fad0bd871c17fdcfe6e39180226280302047c435bb500673065023100b8a2abffa2ee3eb5b3e232a8df7e03f23419e2ee42a62fd9ca29f2c4ddfcb8fd605b3b5fd3b0665546a4c7f77a59ff20023026deaeab048319dfe0028c86078eab8b29397974e1fcdc31b92882f144bc1dc90369855efbea86d617fb83177612f88d0302047c435bb50066306402301822362d69d4f74bd7035ad59ab60096fe9c52b9e1e0f38de022472da45d759395b34ca53ee89de144748641f498cbf9023009e2ea1e538ae88a5c6941f24fdccbc8ea8c0e966bffd9167705bb213fa3602aaa7e47a5d0af71b9dd21ff8b24adf45f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023034be58c66d793504ede146a890b3c4fab52691f25ee40b10819c5579c9c5398e9a10f07c0bc80bc8b0d0a3a7848af16c02305847c5e87ccb4c47ce337d8f30d8466d71e30d37745928b0f0167bb851da8c380ec86ece908956da3e7f036b841ec2640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fb9b6ef9c5dc307d19d18cef41356a524fb73e2a1b699eec9d95000646f0aff9bceb9a23cca33fe79b917dbf087b1bc102310086df9f66c1bc1de1b45afdc72b546d11408bd1da19a76a1f261352e173674dc9860b6e2992a4adef2acc6aa784c17b4c0302047c435bb50067306502310085aa6b5f7d63e876d53ea40e901e79a4953070a73d531e12a6078a55506beaf0d569f13413c307e642ec0594fafee93c023041c15f562c4e80900fa4f3e1067d41b68b1efbc22b600be680b44f7a1fa00e6910b72d736239899f3f0146f85d4ffe060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301b9e9bab85268cb1cb6b2424f3ffbb15237b566572156bc52ef5ff770e301f1bad1bed3423a3a18996cb377a9ca6947202310095cc127b4ad43e565aa8591667414082592d5e7858d8d560c135139aa870cd997850cf9b0424f42b7987a4619e97afd00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304d5ce4931bcf42c14fce3a1550f8e40bc4dcbb44306417346c708147172175e3da9ef0a553fcc9079cfce7bbd2d67b64023100fbc07dc8c00ab3e03f3af61913fd1d066cac7e1e090281c1eb74b1c41d8e305b1cd764e8e76255b8d2f92e19cd2864640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301c03d66aae8175c7571a8f002062570c25d0d81998fedd81c34d7f30589d0df8bbbbc34444d6cea54cc45bc95f965542023100e8bac1d58dc4b9a9c3f08db18fa1eb7bd53f2197be3498ae8829b90ec05d4ff547fa8f9d7abc1846db4134a5fce921ef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310095e39ed49b25dfb1ad0f90e394b032da12b9ebfa6dbd3bef62d973b7617b53693a0673162d301a677083b305096981550231009a361272826e0513b86a16c62bc68c5da70bb6a063e7279d47966de4bc48deed6b2d51005249ced4a659a7936372c5dc0302047c435bb50066306402304c2bc2bd55cf5bc32d4e3339b6c7b8648156c1cf8bdceabde07fb3d92f60b8f9753a636590f872f4e2359d28479060f002302e0665bbc70ae6684c36ffcfad26420b72c88b5be004f8e7de4e97573198db950457d6703563096123479d1656abc1660302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023034a8b9b28ccfd045b88704272e4c641803934d3572296dbe28d6b95ada7037c7d339623a212609ea92d51a5cfc91ea300230677a2a643cee34ba85fe573ebbda82fc341cc37905b33412ef192766654026aeea5752e7bce38631ab440fa037ffe9520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230512ce2fa1519553de92123601042d6831868a25b72ed2c6ea6b3fc2858acb6d2a105ce390deca854e3d0bb8597c9f852023064467071f374dad6f0a5da603a0634fb621ffcd98534d9045304ff2e1a87cc257e2388bb83b97e27b72988d3a6db01630302047c435bb500683066023100f2848670a6dbc058798b781d84d3015e24a07dae0832a6727e32c4d845f9ebc7ed823db97ae16d3cda8bb70f272be1cd02310084d697e89ff75fd929c70507d1ac0ea1e077a26d55da4cd2de3ae617cc71a82111362fdf8bd34f67732a4e7a39874b4a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310080f15356e672064d7a6ae9521818c9e37b2032735cce74dddbb94eb2a1266358494ef944fe16af71550af67d28971c8f02310085d3d345d5c7cf29b2b071a668fd6d3b39b7cb2b9382f88919e314bbeaaf3a9ca1fe7eaf05a30ba3978a6d7faf81e3f40302047c435bb500673065023100d72c25ac6732ac941c669a54a2314334421227eba9aca584fd20dc207dd04f1142e56e3e79eaf053ce14bba74daef99a023016005d37196843a375c44c8dd3f3337d45c7590ab83dc35cf10d9fa8b8a06ea942c77fd5aa798c91d6a4c9d7939d945f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c589097915c35b7e96754416d875f26731fcd5c1bec48584b05d2801a16a0df8067e768aeba27a242b7ca78aa495a286023025b3d3eb50cebfc117d9c45efa00166d810b6cf9e14798a414e79795c35d158cd58ae0037f6fc21c3eedeb64410d7f6b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023059c7bec0c61ca3561524f6433de0ce9a9a76bee579200ea0c697d956abf57bd09e57ac243675bed27167376f536fa7b3023100bdcd190ca4cf2187e5b17a3384db921d059908ab627c7b4b0e5dc0949cd2f0b458479c51a07c4486453e977188e561530302047c435bb500683066023100c7f2be0c3e724a8fee7d300b17142153e2f3460c05b924db5b472ee0a3b259760f4f4e2a1f39a7adf7a0f8174c4ad3e2023100d0bca2537cac843030e804a1f1de7f94c56cff54af763b13df37a4632aa8758026ab23023195983063d767c9c318bbb70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310090c045c1d15d657a5b47d496a879f4b723f8f84828b54ab77cfca23995ab6ae273733e036c0d04a4d0aa98932ca7491e02307a77c98f4ee0403a93e50cc7922774b36fda8dcdf2560deef4aa56480d281a68498569367fdb3e232549e9a7df5d08ab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230180640430b099e2f9b225c1d56410949678e5f8f113ce9f3e9303953889af569fb445be36e982b0960e0cdf5524b937b023100d99d5ccfdcbd3c1db615d7b14997078bad3faf7865af02baf51fe9e3662d735132a4aeb4ca127785a95baf5f6aba3af20302047c435bb50068306602310082fae89afe4919e359e55e952afb470afa559fd53a5e3263ddebf307e4089c14db3c558208598c1617187e2e92edfa45023100d24bce2cf001e9e214630cc698cc37ddbb82c515b3f271e03ef04dc4eeea0d1f78e0567c2dedd5b9b088a1394eabad860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ec45709c57a6ae02524af4d0958b53f040c4adbcadbe202fe3ea307a075f3f2e8d49008902a72e1d53d3a334996122040230602f60a368e9a015de179e02476881ac0dfa4fb6e20047b44a4250ae0f3bc7109193897d05a11de1e63c5240ca8338340302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bfbc20c8906f49c25c2f210a943b3c63bd968de227fc786eae84182a7dc9b94501901cf2297fd0e4d91ac1e2046db06c02301aa341f004788874641f2823385dbdb245b14bb0bd19fea6731f12ccccecdfab2b5bdbfcf67ca298432be67b850ac5450302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023042ef3f32e1a264d9e288c06dff445f79435169fb7d39029e335344b9b99ecdcbabd549cbbde6968693deeec69895c783023100f50f0030ead4e7ba7c33624e0249d6e5ccc353d8335f9a2b25c125dc0066b5b517c171d1087c8284cf24b066418e27270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306afdaf3aed6696ef8b9ce50bb96e12622bfc1bba3eb05f783fffd2e49d541bb1b8bd654fdbe1fe5620b2b6ec9bf7361302307fcd6be8bbd23637fad00d3bcfaa6d10ea67fb2e132e917599e6056e8b216e5f3af0678f07e4c156e78f92874c0f80ae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023063cd61b0693933049cd13a0b3fdebaeccb0ea4aa1d03468f32e01db693233aaa796e3c648e3e194a072157afa1eb2a9902303c0bc8e8080eaf6933c16c941901bfa7bcd1a21c48618bb9a28132031ac3762f5628001da8d353ee5bd318354cf029830302047c435bb500683066023100e6107f8b406289e3ee9230ee86a284c0ef7aa87faf06cacbe51219c80ed264cd87169058507d5a2f834fc3b976d9c9f30231009acaaeb633b5ae9671035c565f542378f1f3dc07b6021a198c18a95e1e74ee105bf53bd3084eb3b3a47cdee1074db9d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023071d0583773e8777c7dfdf59e0e8a8c83f243ef1b7ba2736bd94e5d0bc52e88424b2f7bdf4efb1e8a334d2d763e629f0b0231009dcb0b25ce5920b7df7d35a3f206275bc27b7133966b00805a955f40b55886f7c05eb245e33d1ff8db2e4a87c41173420302047c435bb5006730650230632a1589886446545200ab58d9ce1173472b8f6c1fa06c232457fdee455d45328ec8b3298f1a0f188d4f06e4b9cbb55e023100be3944f3aba961d37e94442eb51555f03f1d2552ff42383225cde4aabd9f16602b3d67cb88a6191736865613aa4c96950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023078e69c33002f3d1bb3cfb3fcd3f0a45129ed27af83c95dce4153ea503f2f24cabf9de3fc1afe9178a849d80bbd271dcf02300ed9d4ec6ee98f662c50245a26e8ec83b7225a65b2bce1650f3907f46f9f7f0aaf1c3cb1996dae5072c48087d043b6590302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230360cc183c6c7884caad6b5766eeaee1d91ec22317465797a7d2b7cb15ba47be5ec6fec8db5172b0848296745d25ebf4502305bf5a8998977797ceaf03bca38592b656c3f31e666f8d9774d92bc1d8718995ca0f87f23be2d294617f3c07560e4b20a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310085bf66093677b49ce49f8bd6b130994c4ec4e226fd6498d689bf499587a456dbec8cb0de9d0b29c59bfbee6ba1259d750231008c0d566ee95656c2a16d3a55a2b374d85dd78f9485db625e9745674aa0bb511ecb1675bb2b53e3145d856c5c44562e460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230355154ffd9414e4271a15b993577efb56eec0758b0c647d0050f89c1332479665da189e7112b3c63966f2bd5a2b10c33023029a70f4db03daa2126379131f35b24fd417ecc1af0610b9010352c385dfc156f2f785997e8a7510a80e42791226e92e30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230334164fed5a51a85a449fce102f4a0d1e8869782a1e46a6193a93acfd944270c380514162e27990a1bf45a11ad09658d02303a778989dcb4e93d28d22b899bd88a56321a698dbea90616d3a8a7f9d1e8ed32c29986fc9d8bea2731d82fab906a68460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302d29ee0b175d317a1944d90d2a23730085f061430b940cfbc9a4652b6a7eab7c6d5f69b891b1b8edbc89940fe85f7fae023013e59b14bb0f6ca2098919ed990b9297bc32533a5ec22fa4e6b700473e67fa0d7706bb30c0b1e560d741f688103f8f080302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305cec8efab2cc1460388e3cd5cf6acbbb011d73c139b07210dbe709d6af3cfb2ea0f3594038aff4df3c3ebc1f0f5a0b5402307fdefb9672ab278a85f75d2bb7c6ff4a22c75f91699c24ccabc4a41784d879e28b5c4a2539f872042456db690e22fffa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f139250341695b28f7a49a2079985091724bed41582c01a6c7cacb48f1eff71cc41e0c15187c8b05666329217fce96ff023060b16f63521b8cec991a18d9519a42d926378b140d1069a9342c686cc706aca630035157e8e484a41d7fe185bf647c540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023033e3de274a9ca5fda84da21955abdf2d1a22c9a85c8fcba8d6a3d7a44e4aa6c75879814dbd3bd87926d729e467278986023007922d277bdba32c52b7c3cf3ded12225c114f39f48b04d8462fcd4afaf120862c134743f12edca9c38920006268544a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e69c49e7f87a4ba38115b9a53010383654a87286431a28f0ac0acd229d989a9ddbe5b50b7ab26c3e1c07ed96a08043a302310081ab45736351c9d894171e15aa9b3407995198a5f9740524a3ce761827dd3f6b6d686a38d0d021180888b74555ac81e10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100eaf05b6e3942461deac5562a9ce082432ff73edaa8a58d772c7fa0466544be1c921b7503796999d4f626475076bb89d1023074c1f33734c60d4641211651abca66d351e5582a3dc5d7000d8af6722cd65b7d474753c13e8f2f2fcf2bfc95c9929c280302047c435bb5006730650230251eabb5ffce5ed5b8e458a8f7e8f310f84e629df4862632cb6ea6a95ccc2e41d049db1b42e7c942e9400a998046d2310231009ebe3b865ca1efcbf8525fc4500e5e9e09e5b3dd307e11d3d111cb5b50623418740a695ba3f0955ea87cdc241525f9d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023006cedc47caa965574ed39ade51e44e01e60d076ac1b42b4bdd76b27fca9b420c880ea93333edca3930e7f376f15e1afe023100b3d8f193f7b27eeafcebbce2a9b6ae024bc5c8805ce90a61bff7a778c95d16a3448e3742bbd11b687dc27d7b5dd2b8890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009f1a29fd5eb86b57efcf0490f88940aa5e8af6f5f0d89169f881358aad56c3719b94f9831684501cdd7f1899e223d2ad0231009d9f37880bf4ea9a7f98bf7638bafbb889dac7cccd1c086d9b1ab7701579974411888e82017ab49142fec07e8f3942e60302047c435bb500673065023100e9ced07581179f515692bf1e1cb11072ba16a4527a58ba60a3056515818e6142b793f71abda4d9f310674483a1bf4b3602300d8b3bbbf3d8b29163a5d1a37de2dd21be390eb709f2085d1c1ad024d029750e9ff3ccebe650cbe5f78167956db5db010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d37df61f381ff8a0d5fa0aa2a508358cb15d736b80cf440ebf4b7c4708607d239d3af18925f66973c96db7fcde94d18d023100b9fdebe95841211fd4a84eb7cd2770afa66758f8eb01f339cea5683e548d95597a1e523b839efa1104a76b2f4c70c87b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fe34b7d5c662b4b7488d696239a74a0f881522cfd3b46abd7f893de27430fdf1be238b7d7573b7d58ce1701beb70223d023100d8aa362fd09ae533aa3529c60061de4618fbf1ed97b9f657bff1e99c9c52417bfdb8b9482726d35c4ecccbfa4b278a590302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a7729c1c931dec6d6605ce47c36b99fd25d5ddb46e134a197cdbc3232018cc33d67dafee55e10d5627f64f281b70cda3023018b24a591f49de28fafe1b195f009a6e5a31dc3bb8cb4daafb67e56d386d22841695921feb00fec9ea4157dd07d8d0880302047c435bb500683066023100f8e3c544c759e93a2ba68084737a0ca8e5233020c9d7e0de055adaa0fb337e09befa6e24803fb7c7adc22f8a0f6715be02310085b8a08ed3a47430df282465cec82798981405cc3ed75c3dc2d8bf9f816456eaa57045c243a1bb5770a7ef3f6887b9bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023030a0f94d3d4cc25d4ce5bec561b6dc7dddc15f872e8f0b17554a7408e05f93d784242a4e926657eefb78afea7224760d023100874224ca86bc51c70a5f0a582e6e118684b690ee3562433e7e53f7ea27a18506e22bb30b40349b0c2d3b004081fa37a10302047c435bb500663064023003340159b8e908897cf7929aa27e461d82b6eeaa4e93bef6568a6949b4230c5dd55c95d08e01e5d6b28a7c34eebf337f023071519018f38e72c54048d091f3df9cbd6129f5bcfbd51cafe9f2c735903c328000a45e0fdfa0334e8d7f5a686cc2de3a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023041c9c4e4bcad8d7d4cf1b420ddf06e096c3be54806d2afa2a9274c4dbdec4ae36138ac5dcbd5cf8fbce3be1bf966db2802304ee2eaeca44c78a1417e8a66c9bbde9b12aa0957e503b17552de38d8f11bd8de641231c6b8e25e4c2bb1d83c373eb0820302047c435bb50067306502300097a27082b2ebf814c49982b5fb67b483d17b93d492ebc074f223dd817dbbbe9e94751cd61971af4598ac293739c0d9023100ec1d8dbecac82e85c3680fe83b659efa6acc680c88d2d0bf78adf0724e3fd0aca914c4aac34c9d228d2e88991ef1a6ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230605c9fa38dd86d1001260abdb1cf9c03c15d3fb943ef7eb43e857a7761e47fd10fd6b6bab666f5e871f8ec48c9d66a7f023100c331cb0589146f079b61c234232597638e810cb40e66f427090d74f175db9b27ac7fe193e881787819ba12fee47804590302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310087cb2b085e724a3a2141331bb23ba6c9da226742a61446da81e4697f0b25228e1e4abc9452917ca3f7a953e7eafabc4c023100c1a83ef02e9dac16a8998b7f50e4edc2d41bea52b23a3171df9d73a3609e5be5e06c164dba0913068561c5c56f3834940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b25ce08bf8dd4edf6255e19e2578e0fae3d2c4ccc51fd694b4af31650eb5c2743f0868ffe04f0df3f8d5ee204e584d1f023100b2aa520fb1bffb19df4d2945b8c873942770561d7a177ed143d55b069069151d67ac7d4d060d275b064bd045a4fa458b0302047c435bb5006630640230261aeb2a16b30fb4720319b42acd4b7b59db92013875555dae2a66a890f81211d9cf4012ddb5c8dfe6160cef03b0311a0230269161365ed226f5ef42bec723a7e892bd7ab9d1baf77dcfd46e0b1bb4cf0bca12ed376e6e9df87af5a047c82c78eb930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301157d03fd4965fe3b633f25aaa2e52c7e18976238f954a5ba0dfb819a1b9fae86141bbb293b852f2945ad08dfd0994f40230642787788a7882de5f4ec3bcd74159917f5459de8be662fb567fee6d29fa79f0101edc111d20f61bb4c981fca94d0f080302047c435bb500663064023005621346e6ca0785568262c3e9b2c65870c07611b02bbe6c7b48b62b9f228a41ffd21f627f504556936c3fd2188d86b302301d3af9d8cdabc35a61921d5af293987181b078cab48d593065686153703231bb6491d71e651cfba3d97430bad904460c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023038f307a79806e3508737062e1caf60fe4c8103f59d706941cb1cf8af0c8620af091c4f2ae6b8155cd2d5d4f0ca47e31b02300f81db71fe752c433017c728ce27899dd9d95216f4b7317fef6cd117f038bb526b4dbb3398735a85f147018f435c1e380302047c435bb50067306502306d94f43aace1303d971f1292dbf0f8ae2fb23861a0ef026e7f9fb5a5b8c917f99169e03b4e746c8297901c28505f9e0b023100fc4653a48c547f5fb866b4fb3cfde711bc2f7de8e1b4b43af8b365dc641a3a04271c8ebfc837af1b645c93b9d00c44700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303826d1c44436f8658c2b6e73c537479e9caf88068102bc038192f9cc12fecd2c8bc06670c1c7fbdcfb7ee8f84ec80d280230029759eeb78306114a2e120dc917f0d2cb6c4b518f600d9e52545995d39b8b902f1cdfc3581f0a972900b3b756e8cdac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230674bf3b6fcbfa33bf760173b6634e63d848599c6294cf3a13dd346705eeef19a087b7c32d925af97400aa3e0d90e9f3f023069e2296400be08c8b7c97a17c4f370dd7a2ac0bf27d1119d417354e739247a8c9ce241977212c7ea46632360f09a6d6f0302047c435bb500683066023100dc379d75f7107d3cfd8d5442dc210d73161e0b8161489f2942a5c4059458af58118bf772e33a31f1abbf4ec16d14f423023100dcda7432a493a22db37aa5ad438a70a7797e06feca3e0963f40200d6082b703e47edb6871ae4d5e8dfa30aa5813aaabc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023072a8226e0ce778273b06f46ed23ee90e4da2b2ad95b3dfcff0aeda14a842b703dab45a1cf5d88c6b17a680560b9540a502304439c573450ad46556bd0994a5b8f085ac98291b3b2da9627327154e5edf6416b801ccb4e8d749d4de13da22575d154c0302047c435bb500683066023100d3df1947ee144fbc782b41d8a8a916c05b28a19c8569b08a1d797ce0c162740e752528ad48109feaea7b14cf2dc0908602310098e79273769494d4ee8393912b27f660728fbdddc72b587cd0135c7567d1a7d208ec5846b9c1a5e7f772d9386e73a7960302047c435bb500683066023100df153ef76faa6fdbf0dab0549647ac6e39f41e2280d28f3c80405c61c77f8255f68889758aed1fffe4aeeeb6473db980023100953a8f2d0896d2c65d49acd28fa8fa1bfa08724cbf336167cd5bee135c5745758c24bc534ab4504432e8eb3c321e26c90302047c435bb50066306402303f9707c30592608ce11d2cc958de249c0733e5e8dde435373009ef645716e2b9547ddeb62d1838ffb49e060ac5c174b602307179bc7adb44ff9ea9e198c1a00feb46bdc12000f3f71de3b55edd42421595ec9dc7aeb3de3a923f47182347ee84045a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c6f02de79edeec82e06d5ba37c6d6b435e321e3eac2b12956793222ed43f47c6494c371d56efc98f24b495bf7c256810023100f0ee428bb1544664ad90b2111cd0a5cb433d7458089b49bd0413b375b5b8cc2152c20687e303a04880bd7b0fafea3c1b0302047c435bb5006730650230790345708307126341fd9c9aa2a1352856ec1ef6d1292d046caddec4154a211a66b359cd9b1cec372c7973f6d8e44c250231009a141d317efbe59edcaeef31c6f9440b6dc88f62afae9cf7a587a480240b40f4a69b5cd374a08921a43f4e8cc125cf880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009540b06faee536a122b9badd393c767ca28f1792e1d7c043f8289428254f198c2dede5c386195b26616110009bdd165902301ae68c480f76ab174201929ca19375062e77ffb5dd8d78460a60ec91859e31793a05af504f5516d3fcfb882063e6b6b40302047c435bb50066306402306946687e884cb5350154edddf1cb30f7bb877a8b0bc940609d70173ff32e8a8b8753b6a4a3607618ef7dea0788cbf27e023059929993947f77d9b679c1278d53a31532fbdf0acda27532efb7dd28f19c746b328b799c85e6541bfbe6f0b62f4d36b40302047c435bb5006630640230166c255c48994c7138768acf2cc1b3f44cf3ddbdacafbab3fe0ff3b043f6d75574eee7fe2004408eeadcfa06fc9a0e2a023002401d21baacfd6123cc00a611e806401ee1af1aba0d4359d3ba18183a6d80fa7d02e3ec603c5799ef7226ed1675b3bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008c492bacfd5351ad03d3f6d0201ca6c72e6a93b5bbad998774f14fe0ea7a5e9d671497dc89497f72f5e3aeeab98a373e023100a17e2618db410994362b540823300e3294f7395e3fa035ad1847cadbc57944d1dda858cc706aa090b041ae7235a378400302047c435bb500683066023100a9c9d6dde835b2d2a06cc33f53d6b270e032a2111e91a85636a3c2b01f3c4bd07a6f5f7cdcb65fb013167a7420ac57640231008b6336f4f584e673bc3590947f76e7dd654b568098ce8652e7e5221d3139c5a38b132cb83942f8c1a9fb9d56a42f7af30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306e70f1aa0a06d241cfe60097f9d2af42466085c35d9a2401e27b97835349fc72c948a0a051aa6e3ddda1f324251db0ec023100fa662c2b7df1fdee75ccc4715a24f630f5796c86dbfaacc3a88b341abdeba5439608351d8f8f5ee238e8384cccf2be5f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500653063023028214f64c360509b7ece2cd8dc4f015ec0e0a1f8fb7863f9af58a48882c43541ca84ddaf15fed082622940055578f0f9022f5675c7989f8d5032f0a00925778054bf5b163d890e987e83facc130767dd5bfd6f50b848570dbe53f1fa9752ef5b870302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100daa562725f26805d710ea06b17b9430e6bfd630a32d759adaf113d33e59fa60d035a6030846a52b0ba9e050f69ae2e9b023070bf99f2e8e8c2eb6cc4c90f669231cc3ba49c8e4c5394f679edc326e6a388978f67b986702826452f99138a4ad92fe90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306fad7b9d2b9f1f7437f497a845ac187c71ce303e51943de161c6a69b818bfbdf2e1db50c4967fe2b0cdd458374a0b7b8023100e53b182849f12c1a8eb8711115443b776cf6dbc44431aa604df58c64b738500c6dd3e9df306238f78c0e55fb20041b930302047c435bb5006730650230020a145a6e99e57612e66d16b63b1b7f0e738d7e79b812655d0d93b1218b3ef2eb63fd30f31e479832c174178c775ec7023100dad8481a151731a8cce1c7a3b98c8a7259bb0e93787431e8c56f03a8e1f21a84228f45944d43285de2e0f5bdd14b52b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302cf38e68aeda7a4158bf1e7d82aaf04db8b962d7914546e86e898ac12e8167ba698620a41ade7e7a2b49418d79618c5402300f00a4aad4543a9cd6ec1cbacf827ae39329ed793f23d8ac3e5d580a3ac2e88ea6f4e71168e8291479cda99ce37096f80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303bf7f5d304465cd57eb855ac68a8b133312926a820d21e5e33762a14f7cd75340b6d0195d1bcd61f4e7250c98ffa40ec023100933cc18789cb5dd895cf1215efb5d14b9967a54bade4460f9b13de733c6ce64a45d0662c0db5744da4f9576eb8b0fe800302047c435bb50066306402300ed71cb6a1b2f4b47df59e16ec9951241ebf781773a4507e7d9cf34394571c4e43a4fd627afeb8d47a0c37a85192905702301af92026adfdac8ae51a9775f5d0897bd7e3e615cc9f4f4468760195e381fb78496a9544780df1cc67e9727f77266e7c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023070a368a47dcdf755e3bedae4b691f1bb2c1a7ba64351c8d7bb9fa643b4be1863f213d6ff40feaf9186619b3e454700f90230418bcf44fbc12b1882a79cecb039ea50e3e3b1a2252fc955518061671c55b352f4f1f9dd5073919039f4d2e1644aa8400302047c435bb500683066023100f270efff6d3fa8daf2569f5c005495570123a624caa90596a080a75fda0a7176744f7d7271866f76ebfa65c827df6680023100dbcae0ca71f27b9afc6bc25cd2abd29386e7c50a10cc4f490732ff338e1cb9b069643226c5d2077e019e36fcea44b6560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ef920bbb9b71c623c07ad78b1ca0dbb054862110f738d18acb5c2e3c2817232d8683a7fa0b9abb2ed94e71ec7e226a63023100f329622f5ba9a6c15505e8d7a2d964af61b32b738f2e573bc775212d0287e8ba6edaba96a1bc04831388cf5e13573dd20302047c435bb50067306502307e49b44007ba08b6993b23849c9dbfedb1c6d8ce291695d760448049c9682ad0fc4726faef17aa4d5becfbd5776b5746023100aadcf4ad5e6b9121f90b7943c656a982479dd46611566d57856ea21d1af7072454ef4577639e558e69bbf2721459b5e50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302e1b03b97efbc55ff0ac403f483e300e3c587a6a837d7e23d68a90201bf6ec977f5e973c6d3777f3b49f231d8bc4d2bb0230450ea017415a99fe9d25f67fdd4bf06cd401678e34f23fa2a03c6f5dbfec6c57254c41295119703be6b534a15634ac3c0302047c435bb500683066023100ef88545459799845b980138a6150fa518c893135d95278baeca6fc338c92a5f3dc45da2764a153419938d5c16bb5cb54023100826afc74fc3571ea7010264e8ea898c020757348d2e63fdb147dc4587da6a7c1d1bb2636674217f60e8032094a400bf90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310090c2d04bc35d8629e6b22afde250936c4a14e340166ffa5451a60996df267ed23be30f12153f9bd7f4c973fa38a2d82c02305bc8220bc1e5c9ee7207ae82d4477b24f8a7a0e5b7682d72887b1836fa984bc82517b1733a5239ea9a8b406587db6a320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023015a9798401c8dd84b0c24f6611fc10ac3fb75ab9fa54442f18f03a9e67e743a8fb2c478d47188cf5ea2e72ec1794e500023100a5cce48f87383b4a7f1d78d05ded4a1a253582de7efd7ebe378a5b2b44a8052311bf94394c0746623c26b3d4cd7447ca0302047c435bb500673065023049e751cea5e7d8209e5bf4c65373f96673c4e1a5bddbb340bf96fe08f0732d7d9343fbd5296c2bd0ecca510ad2e0001f023100bffe20fba57963bceb5ce6607a10fc20b6a46d2c1c18ceacf39b06690d2b3a1b6ce9afce5265bd5c1960b84c24ae306c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023077df7d5a192b8c1304052f6793086bb067590123c8c9feeaeec4137feade656424c507669767dc6c23f1dc5daa4d83d5023100a75c4cdcb2b1704cc4b76e0f6f34fac73b1033c0ce2f13e7e661a8ad43ad62a5b1eaf6bc0123712221b995bd20d6cbaf0302047c435bb50066306402303387192231a338432b04b37c5ba9bdf78cbafe68a73e35dabd6ad80447917e03cd3a5baa530b212e59d8156ad23e0fbe02300824b5a49fe643ac6c99d144e335f3e2383f2fc6cf13d5e8a2172b128e54042a806cc13fbbe5c22a984187d751000e200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009d4d942a1ce34abdac996b1c4e609f261416e215da42c15f7b901a0de9aefd9e66c4d5fc28f9c1ede4a9ed9f233387a4023100ea29eed3d3ddfd60a938c2f36167bfcb6424505e5c4cddae72d8ef1d971095e89f832c5b7c2e63f6b0636650cb1eeb4d0302047c435bb50067306502310093cd1fa656ed73a0bccfc91f3a04a8d37c980d45e1053d7f9a17fbfeeaf08a7e825a789373a0ae437a030b65ca2320e402304861372c36f2d3c7a8ed4f4a940fe5e73cb173c9321eb0b0bd7f5bd9ed3e7371f512a699b358bee4fc0eb8ef308e59ff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c352dae12388abdedaebc85597d5e6becd7b0eb81f6f4550209b46e35f072370da7aac863eb747ce021756d4b75d864f023100dea8e3f5e55ca6e5363f39fa5282377a40ac8dcfd13aaa9e04679d88a043e47aa07a9a9a14ba3c1e2ffb0e827d70f6e00302047c435bb500663064023046eb9ddf9b8bd776a9095bc1ba2a6e8df2d194c9f9a609b5866056a8ef578578c414557f8c3e044d2b6099c3eb3d0d0202303d6b9a81adf135f764d77680f6faeecd5dfe5fd2469baf7a9519f7a9c28ba10c50bf796bd66be1f0a1826495a06cd5270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304b49d55f20998f158ee9e5fd58b079ef1dbf42fd9e8f78566e3077449b24306864e81066094fbfc13de9778f384003dc0230207104dcd1ed2694270c086927ba3e70e570e490c1c64e5d7f3f12c09d1cbdd305810250c263a5b1225c905c00dc029a0302047c435bb500683066023100cb4c99a0d747320789a11860e2e0d037e95f339a86b567f6f90216c8e436f1a449b93c7fe4dc84c5ae2d028477d0ddf4023100c7022ea1afb1456e89975ad91d35fd929c245cd7e277cbe566b522fdf6b006204a660372de933884a8050449c6176a360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cdfc3dee4cab834776c72a1b23b8cdf3bbe9b8e7673d2ddea9c9a47e4f47365c97501598f58be4bb547aa0e000a88bc6023100aed8311ab94a095451ad35f3363af4bd80fad0e4d944e3e7450c89a0650046373d56931541461f38b99a6da02d6ff9a60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023010ece0d9a1fef2f64b86b1e71f667446f0d5d0fccf6e408bf8d663414b7034a29fbf1465e6e206814b8f7e25ab59532d023034599643a662c2ad6648255e931d7700071af71f69995f89d09cc055f90db1b1cabe510053b435df47c0aa89d73a3be50302047c435bb50067306502310093c086a94799f56c3f434bb0ee5fcb4b0c9502357b589a651597e725da084647e83023cf6e1e42ce0bcababcf1076a5c02305e7c58a2dd20563b04a7d97916ac86c660144d827f0be3382712c92b93752dabac16b8d1d406af1ac31cbd01cf1cd7de0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fe0bfaf9803b360c7c77b02a985812c320e4a1386fad286d9645e1325ffac88aabb24f94c302be65571ed2ce9f0fbdf502305cc0356a9992079a42c87f3f3da027abd8627fff2f32e81cb9c55a92676c31e8af4c0d1c1d5d9b895cf9fa244fba29140302047c435bb5006830660231008eaff3fd6f812eead0e637a9773976e25c61ae3b757714a11eaf5a78207f363013bc98373e42760485ea36c126b07bb2023100b2395990302683d925e86b5128af93a3b8c8e074f6e509de74b13f3ec9ae1be853bc782d4260a882697768040a068e7a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300e28529bd4a529cd33094020b72a93e71542dc119e44dafb6c97e8c0ccf233e23b6abe4f30230ef737d2cc318aa4c96d0231009221cb9a032116a9f6bd4ad9f2361ccd8ac51b7e372ef07269155776519765e9e86cd4b86d767ab423b32cf6ccbc6a110302047c435bb5006630640230248d2716e8046bdcc091ccdeece052795b0aae27920ee05877a2bbe01cf6ac3488821aec4941395e1f54d5c9add97b76023049d45739940fc100f1cfc31b0f9430a98c094ee464b234e24b6d237003dfc52e1d92b14e58a015d0fce7492483a880b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008fac3ef05a710d8c0e6ebf38e5e390b2355c764c2ca88db2b066d81f0366d6c9e80584e1696e2758b99de335703ef21602310087d6e2ddd3c1ab76c85ebc53978dd5021fb1525af5d4e71b342c413bec803f76097d5bd9fccb65e2bb1774d5c41402dd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230133a003e669f30399c8a6c89c0629b0cffa70745881ab0e1c128218deaabb871a7cbf8309e73730a0795c928a99ca8c10230124b8fd8baa5b36772e11d5560e25eda153e476b7742b269e425fcaa918f455ccb8fc5a89e42a5a4151c065e6e616fd40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303b0afb711e56ea1b7b899a18951ba42db2d9cb18536194e89acfe3a77b31c214c765d413882e9c6e0a690255c3261b8302301d6a60a522ebb3b68662149893f3b79d3bb096880dce334971efa41a2ff5f7a10688304c45e1c64b59e695cdba0f3a3a0302047c435bb500673065023100910a65d36d61338d1fef285dd4a001ddcafa058aec6d6d2e3839b840d2ebc9ad081e5b965de59e3f36e750b0c928b918023018a97fb1f0881c2319739da83e9213fde5310f8c5c28450526ad76f92a3b0355f2d2e1c8855e418e6ae1d1dc05fda9b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230358e940bb21dbb7af37ae4cd16d59ddf924a721669023fab3028b10379c7e156c3baf87da7f9c8bd40c5b96b981f284e023100b0b48a3528b438b06390fc7626d2722923213d40093acb9fe19f0423d6402c0d5f5234e2689dc3b7e16e37267e092edd0302047c435bb500673065023046beee57159ac9a1e4e52c3afc6dbf1d31a27207c0db9dc0fa683b88c10b15d8f818b8af3173d8d5390f37e4e12d2eb5023100ef79eec5cc74b79b09058bd8ad6d010a19616d3ccd3269bdd9a3efecbc31cbad4c99936d0cc090a8925d27f47e9685560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008256349f0e4dfe64b35ad40f0ef33a1aa397a14ef79d7d494a412263f197119c30bbe38cc38abbf58235253cd9af97f4023100c3dcb93ee9cd8128bf19ac99f6a63dd7e672b58a7d96cfd9cd730c423568480fb2bc5cf980a3030c8ae5565a656f68b80302047c435bb500683066023100937ef68506de6bedcf59fc0bd3b8e29edb8f0bc8b4bde775003a1a326f650e5a32f0f21f78c981e7ff26f77dc48a614e023100a2c6abec00366bdef7fde375652508ebf44f56450d7a910f3d4852416d74115df08bd418b8bc1ed92065e27a385cfa160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302b36a63fef7fbe684a55b08e7fb8424cd714367edcf068a380ff7ea9c8f1abe4de9ded5cdfc29558e8199c9617028e87023100de401f7f33015572430bbfebe9a321b29871f594cf102da428b87639d7dffb3cd83a1187ba76983cab44d6835d1638810302047c435bb500673065023100b5c3da45df56f37719ac6ba9a47f13f151f30a1a29acd46f3174ebeaaf2ea43a526c8dc3f821d380fdae0f9a506d2a05023041fa8c00e1fd0495471f18d3f8215d8ee2d5473e80fbd6d154d17838288b0024cae5d0d9bdb720d189524e9849779d600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e6f3fed19aad662057cc5ec6b87981da1025384b7aa9e81ab54d8248ac534c7e9d733dee5e927186392b16d68f746d4f023100da904b529092b13a21ba77fc3bc07d6aa8ab46e0a475afbc45e7bc9feb0635ffa28cc9f9154d8240f422ab13a946e5590302047c435bb50067306502303e963a32ed6a7423ac5e734846fba42272ad5683545fc5bccf7eb6661ef02c9767b31f9ff60f12f1841077539849b982023100870792d2a22620e5372738feec971a689f32855ae610044f3e50dc48572af8160038038c7d78e3ba764ab8187c4cbead0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e80162099de8aa4429c3eba1caad6df4c548c0fc1927750d34eaebde5b32b1abfe5e48f87fe2e65945ef4ddb3c4318cf02307c65056cb9101740f7b3274f67b838662e100e4d6115661ca77761976b0abc1c2afa0993e63b1b06cc55008c6da152de0302047c435bb5006730650231009fbf3c61adec6e72bef1f917975bf378bb47382bcb0aaa99842c692f075c3475c18339cd11d679120a5f90f2de17b07702300bb97da0b1d9fe5a5be49d56fad854dee2e6615fd3e4a27f54e8b376f47f633b1d25ca8ad81d26637d8b698505812c430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023075c07d7154d498abe7791bed91801f7593fef50f1d3985adccdf09505d3583f6052018858580bbe28af3a5ad48233834023100959debef64284de74032e8f65422cead3a771165d4c32576c731ec16f90b0d8048f6eab2bad2df754367fa6c1e7b00910302047c435bb500683066023100e92a6b8d4d44692bec421307e62d88381e7bbb8c30329bc0cb845156c5f92dec0d4ff5164c52050d737e4437b962850a023100a5f2e1a52c00f79c2a0a28ccd621587dd9adebf3906bc366f609e2cd3312943f374547f9c801783806269c83d5dd9e190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310082c725b110213463581b33b2fd867c7bcd52cdc705a0c4c83f16d444c79e8a9fa5430077d134cfe48683aa50f3b1af83023100daeba1f261ddf3c66532ea0f6f5b19880b5ff41b897ff048cfa0be2fab040de7cb6024072c5b41edb95787a6dc60aa330302047c435bb500673065023029069e3dc8344e1b5670805f33bb6c743aaeeb8d9fbb16b170fa68f9c7d63d5af5b05a81591c4c46471d4ce943188027023100d231cd02032dcd73f300f6ab0c5c0754bf928e5ffd1322b5e387ed036fa7e0eb4a4547cc432abb40f6387ed4fb2dedd10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a12b7be3d7db7d3378361b26da4c56b8ca2edc2741faf49eae4c21f318343309a4a99fc6c57c2bdd8b7f816b9a661618023100edf02c5af413bfe349cd8b3f2b2f6f8e6809cc29e0c6097d5e5e47920a1b19982d5e4e59a084481a71f7f3ceaa5de1250302047c435bb50066306402306841955c12b401f43a6334c886afb2806cdd12bb2e8b6dd449ccc3bea6bda3cecfd2a948dc6694a47dced78b21bd75de02305305e99b051d412f652a4a8c0054a7431a682ae877b191bf85eef20fc0c0e4ee8f76e814baa1c095936c8b01cbcd9b900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300e4e00b9b3a9d9d56bd8c943b02dc006696c4fc6e1bc7a95b70f2c598dfbe7a5663f453aff4cfd7c1f242c09a491e391023100c6ed95a8a3e3736e83f7d7f5e01fb6e0c1ec71fe9a88654e047377fb9104adbe317b8965e005c16d2aaca3ba9e9157780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b1545c14a82c579b6a300a27270bf97c234e8ad1c189fadb2ab2f30285823c4b59cfaf45b87172da6c19c6b402adc2ab023100f57492586f0309224d9d320d134b78a74cd61657659100a9fc9a93cfadf67ef69edd6f39bb988803ae5200aceb0a40f30302047c435bb500683066023100f2a6709287996769238b0be78979741022c72d73c424e7217d7c7c982bb83dc3805a7c22e87eee5c2e82e360d08813ed023100b5ef8cecf7443770cd9bb898b211f28627a2e3e977238c8a83bc70c990e5c1b1e35bc552a07ba03b7bd664349660e5910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a6bc767c92b7b72b35dcd0421f63126a785cf359db817ab1492bfb04e9dc6548bd3e16dfe8f860d030542d5e03f6cb330231009572dc1b756772df86e872eaf097070b3b3a44fffece1a53c581391ec94deef654f95cf866c763270bdf2e51ad865cce0302047c435bb50066306402304c8785d887ac42ce5ddc170a38f6af8db1e755452dadfd8755e1cc094a9401ffd49fb25e7725b256778c42e34839ab9a02307e2f7cacde3a86bf2af21ae67064d63c2588716c481a461838c187ad569e2558b68f3fc4e301cafdb2815b5cee5a38230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023054ebf7a3131ef77cfbea31978c5b4c4eb5c02d6947d62e8c41b176e8c878d171de8d1bc395042340c5a8019048648ba3023100d8d499c215fa74421d0a92c41f41ddaeca0c27d261a5b7ef41516692484e17cf7091c311b180ee1a9afcd2242262ded90302047c435bb500673065023100fe83d3f5ed0cd6b750d86a242053ea55ff2843008885bf57934591c9362735a414d9e450d2bb468a6c462b5aee5f099002305799fc431025018165e54610ca8ac11126922639d2e59721e28b01936e28dc58ccd1d43783482920ce50e689c54947610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230451aeb12da470f2f9e52890178550c5a9a909a615d0fb4d586d5106d71b4edf9e9edd01dc63e244ba6e1aacf2fdb4dc90231008e7fcce2e8aabfeeaba0ed3da917ca5817a526ddb1ba64517d81eafef0ba109945da925aa43942cef2e1e1be92e2f5820302047c435bb500683066023100bf255075938facfa77fcb3af5969f5894806c3dd653b823e0b0f45fab933d523d0c643bb0d516083edc05ae994e1022e0231008857ac26e8da872f68eb2358182fac0180e67f4b0acaa524d3fc448037c181a9f61171bbc7ce87174b64c1998fb74a1a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b0278309f4c08e283e7a6b79dc4940301ba449d3c6cb0661ca3e7c48e2e6356c9db556fc472ec86656e2ebdce21cfbc4023031a38762504bec409608dfc008bb64e0cda0c5719c8ec278c17e408c69e65e8dc9e3bbd96833a748006052146e0e24030302047c435bb5006730650230406cf4fd5ff5b8acad6c6054e3a0bdaf3e6914ba0501956a7f2f942d944dfba51cb36f12aed6fb9cd040a5de08742d09023100b24916a2c4382a529f3abbd92c19538729119c73e91140aa6e85c116379703a1fd3133d12e8973c39750c9a2cf8200d30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306cf15dcb8e7b4dcc20423e7b761c6fb0a059d9259275635e5b003e6e949f0cb6255580c885ece2733e9fee916eeb2a5b0230605efd30f48483250c669f9657efbb557c2bb56ce431235f8d59cbcaa3abcce0987a46e6685992855b7115d0d999a9dd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ce0922294f163d5101c1bfa0e781cb3b2b7c1bb902ef5ca6af4c0f887c97fa3784a18fcea342c55813d291dc26ec6949023100bd099fa0ecff6abc32aaf505b0e0d8b2e80fbf27f63bfbeaea4a9059ea5845d56ba9b9b4c5334a1a01e6860caff634430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303963dc8e46e9845d0ffbab96bc200030e84278af1eb44a4e1726b96c780f3cd3ffbc21b1ed7d4771a889eae2f3b63c5c023100d17ec01c6ab44bcf3dd6e798c094dff912f14abe2de62ad1eb4a083e6368a23fe0d7b11d5b822aad09b10398199196920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302757b1fdd60b03829742ad405d84ea38dcaa6b77cb714590000356346fc6c54bf7b304d092e15f0f6640efee198558d9023100a3b5e22e8d7c29460b0aaa27b0ee1053acb1ed5f4b57ba17849dd8a117fbc68fdea76b08832ab669e8bd2c9d64f4b5940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306609cc992cb12d6fd2c9cedee892ecacefaa5428a98a3ef5d0d66fc977ea6281d20155f1aaefcc93c397741b7426a8150230631e3df3a55933d92c60808331434ddf8e8f046b3e6ed4cc041861e701465c4608d9e7d0ad9f935aa4d5d1b1f02c4ef10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302dc125663aa1446c4052b8a3d9ea9e83b7ccfe7a3036995733d5c93567f3cdc3e1eb16a3afa0a26b18e0c826acfdee7b02306b1aa487df9e1d35e45811d868878f0ec49f2c840b66f2d4cf0bc7fda82bf2b3bb057787f88c8950cf77aa1d5664bbf10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302a43d66f2d501d3eea7e0d1b116d1189485eb8514f09f297ab1ba842e1567d76879d4ffc029d217463daae5b5585cec702306b63491e81595d974fe5f0e146c7e21d80fcdb5a2184a94a347524d12f95fd9aa6d7436446a2ee9ee6196683c357f73a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100930dc85a90d11ce830680a78a241283f16ea4625932eb3f31a1f9a97128c4637031685fbbaaffc809fff0544622f8e6a02310085cded80168770c1dcacfb8bffb341f1b310f49edd5709c84857eba66e216e3285d072b3319cf8045bd5d18216c34baf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310082ac81eda1b5b7126c68680d5f65bd9f07beb8d58b3c9457c4ba4023c2dbb208b3fa30a34ed1ecebb48ed07773f41c6f023100a18f0d7ee609405bd4dba3d7387c0f9d1c9d3cff9f060cb1111dfa2fbbf9fbddae23686876735681d9551ddbaa997bb80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023051cf4614093fbaee82774349de91f39e167b9d6a2b5e88c3f33f0b3012725e6438d1dff4f37a773adfcaedaae0398fb30230034b801d832c7e9cf3d3f5087ea6c7a49df9a1e8a12d8f9a70d8813c869061a6e8726ed867d88f75323836a8f420a9b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100beb27ce00ee394410ce666ad5cf64e7235d87aa06b3286f002b6901073d4ad351d3171ec88c2b84240c4ae9e53fc4151023100925d14ee1ab31bdb2dd3f2923837079c4196905fab059ee11084cfa83543b0fbea890e022eb2ec3cef84edd8a649d72f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b95d4127b0cbee7b2cb08a2aafa4b40d6747278e22a2c11afe17126013baf2d9a0a6574a3eab5691dcc8c0b877d72ffb023075d76db096e7dfdee16098fac4cb77d011f3f1d39ca89c4f2c534d704882c5b5a0048ffdad87e353cc9c9bbd9716ade20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c35f1bf1a50542082061aabfac75377d16b2ef5a7825fe9c0b4a8ff517b4aed3e8ff68982ed32bde1e2ad15db2d89988023079f5eabcd5f6f6a70ac42ba01ae04909e44a28de3349ebd25be2d36291dd963838c8a232c9752a18cb3f35bdb0b1314d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010e830c63b4d678560de4efe7f425f3d15246e780a91d10b41b3e7e1a7e27ad0a9ce7a471696fbd14f2504a8ea661772023100f07b797344bbff74b2a587841de2702b79a4c257cc9816552b0624e85e5c04905f3b4eb246fd066bc7bab8b87c1d762e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307d2839d078a4192a83cfaa1681215d249e37dfc12bc18f4929a384c8fdf97cf7c5d4ea9c83703080d02279ee6f86c0ea02301daa0dcbf0b544875b1875806112331764e05b33b86b1d0b811cd9a86afde93602f9ab27f1bb81d78429834e8962d41b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300592c619396a27d7674a83ac045b206c6450a4db3fc7d8e2f93bdc634b9ff1d16401272916dfa8390f81c82d84b95ccd02304e60db641b6bd040989005d659e22d34d2c54dc2330222420e21a5be415682b3c37e2c228d4a3881431f46fe7f4132690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100da1f2526d91b9520e54be7fa66cc8a327eaafc2cada01cf197d990bd3044c58514d1f0420c03cbd5188e6362ee6934b202301935ae0b9025f29839809f4c0539adb5489eb7bc0b33ddfe8c9ae1502969469b2ce75930bb72e98331627ab86511ac1f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303defb6a191804718c25b41b19af787c24097e57f7bdd14bdc3b84c29f3b2751dcfc5df2de836b22f235f17b87717a6a1023100c20a47c84ddf56ecb23d3f6cfd63a76b896e83f57475cd49ec73b07c991fb7c963cd39fd2eaf72caaf38d8bb6920e7120302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302a5164113a79999af82ff3a92f23895b9c70bdad8840c78cbdd70c8633246cecbcf40d99d1ed1366df3a53c12286f93a023056a5e6648164fc31362ea8a30dbb644675b4ef14069d252c599f6011dad8e34d3375d460c0e07ab234b1b4a3494ac5880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301869b5527ff3a47aa08f67bfab95051b773c065b69296f72642db9a45f12a753da46aab1b37825a4e25dcc6e5215a9a8023100de4634e45ec0b2041d5f32179519973ae5389785acbf0e3d73eba27067f173e1e294cd2f47f17a130f6895437d907a3e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e028377cce49053bab540eb980edac5c7f7f5bf21708d3b91ee80b6e17f4bb35300854929d0cf4c527fcd02a5cebff68023100d256d038ce5716f414951550feaab94ef474fda194f5655fe52339ded5a040eeb8074b539bfc7c50d7c169083fb71fbc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bd9dd5ed3cb288454e0e983c6fefa76f5c40033eced0cb3b966f51d9b18b19c9262b8fa19a461f4d496b4fd023c0bc8d023100c2caa17ea106f0aa8f482628cc7440e6ed6f81382aaffdcca1fa7628183b41696eeebccebe45e62b1047be5c0663fc770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cf257d46f9d71b85fab13a8adcdf71802ea005b46ba564355ede8d3079fe234828e0a6bdd285c1f4f40b3680aa74336e023100baee0ce0190d7094e33d84486b9d6fe8e3fdc0d33456d3cdb59f122bbca126f98fe3552afb26cbb95e872eb846f4fa570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a403c2463317c4e7d5972667e8a5156b15d336bc723e82b800bcfbde7f9861ed918617dcf30feb15d9fa99815f636b24023100ce3a6da4e32871417cf0eeffa7b853968ae05d7d8c20e06998c6cbde7d3ef5099fc234526736fcc0149cd7bd588140d60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008c4b59d2392ca1c1ddc734eff094e5aade30009a499da127e7535605981d1a99dbe8509be50056e756767f196f097511023100d78d2a61b2bce9376229bb1400607cfadae56fc6d667111976412954b4b9d8d2de096381e0d1abefc07772b5baac1c940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100982b0a8e6dad317545e0576d0071b06949a4a47a9ff5cc17f03cdb7748db8560a407fc3b13fc1b302a8ba919a1e78309023057f6115ac16580b8da87c7356cdd15f434d3d023ccd8ec826fa49105099f07aa6dda1336af8e4e63336a5fdc1330065a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230184dcb56a6a18290bd66244952f7329990b817fb853e5021622e93b170472841d759d29a38a187ef708613d1b40e310b0231009715b923455c08b6d2f3ce2a4ea6c1f314e1b5f4f886ad94f873d7d8674d5ba0adee13501b6d4a012e63a916479842e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310099b3d7d491b99df27506047ce0ae1e7c2cf90d2d12a39d3bcf24860a55dd963608caada2edeaaa4182c40a65407c059e02310085142f8354ca43136b218cdee8afc8febb54e83150509aaa2f3e0107bc6c6dbda2183a28cf5acee6abc1c34b0f8b40f10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305bc8efd5d1149d2050f14194156d66ea7b44b451c86c63ee36c2831646d1c02eb9fdad94b1071d9a9e02b1b3ceb5761c02301579a17b45a5d35ecd3db0a0edb59f47bc27df56ac52868bb1bc3b10df913f83f89c16680b44a1d3fbc4ec1ec8bcd5f10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304e1fd82e7403cbcdc9011fb17712ced6121d2a09d023d06bc70e6c1ab8d22a72e7cb929afee6295347100829a91c3336023100ba57157217e9866221656bfec388c6cb379c984502f31f6c6773ab33c52e0f68b67c960ff5a32a1518976d48b18f78f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e9d362f4a35ae444b2e9baf81061375439d4fbfbed7617865389918b59a49d7845fd369712dd1ad6799c275f2001ae15023100a402141f87eb623d310b636bd049c8eef6c4f20a13a1fed5f7a04dd4005b99b31727e237c2b573a6c55a4fcdcc67a20e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303b6f879a53bcafc8cc3262bf55d4a038e0113acd7f401d1d81172502560deac28f91e135a661f8d774022965d6559f4f023100b4cef1aaa17ad8c792e7adbf94f3a3abbc3f75d2ab2edce5ccec01538229eca32337481dea68084d69c91b2eb62f74200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303a645ebd82937f7fd6c57937c870872d53427e53af347197150c7c7b1fb18f6b47ea4838c460e2ef2c225d84813270a402307005453a2633ac0b6fcfffe99702b85f0f41902cc8c7d25c3c1190ce89e8d2ff52301da588dfb9566b70f47a52f929970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100aa2f3cc4c29163dc31431aec1ede7bfc0f19cedc36f3335510706704f37b66d8d40254ff45a77c74dab9d295636945d1023100e84661688491bee67f3354341061cdaf214543a4a731bc53c26dfd0737ef65d1344cbeeca7360a7d099c3f33f29c35c70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100da9377f9007f0e62564f6784ad3ccfe58316e90dfa79da1bb09608a1113e91925418893ca4b42607612f3bf27750f06a02305644e7b034c53d2b02812466a6fa24039e6b1e70fe53dbcf08dc34843fcd35fa34d5ce2b021eb3d83a9ad37caaa517010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023005670a538531a73df05ce8db0eb7165a6a1e57b018eb354fb0f01c0c83b045e1640d687bf70a8159dee2dd92b321f67c023100fec2530dfeeaa68d179de3055034c8c836f68988d7afa69bd43bac84e5e91bd3b1ec29b2bf721d2c72473042b0325ef70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ed9f4d968eee918612c680fd5357e8be37094c911d65d1520927eb610fb9e71c09aeb35137269ea55ff2e89eac26546f02307a6774fa92318b7165ac37dbf1213201e8f94635419bc4cd0dba7b1553d00bf67bcb1ca837a6ebc4240eb0fe29a7eea40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230047de28fc2e7a86142421bec66282e58373e460e4a2db15c6f843e566e1c3278740c380e9fc834a683f20cd02bb6fa51023015397d0b82376895152a10b7ff6535be52f887f6acd9b0279c30ca492eb8d61928efd4c294c5adec7adc57c00b9e27320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230363bbac42630c387be0a593c2567ee7f26c6314bb4d09947e61ee95e87dbe9abcc5678cd341e2fe73aa3b64a4e83e28602305badb6f8e07a473b5799c2696300d419d1af26e62da3d895fd1b78e493003d837a7172d3f1dd1781acf3c7f25ed74e170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d841844a53f46374ed7ae5870f35b9cc845514564c6c9f4a33762a9f950a7bc95f86bc42160e308a771f1d0e67359b14023100fd1fc19f4d14632c11793093bc3916e7d07891649add6d451702962ef292184e12527c488426b7351dd0d5c1658b9af40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008a1d0083c6d72f55c367194ca663ffdf8f0cf3de2835ccb899bdcb7ccf9591205b9ac87cdb632c2e2b6370741a46b979023032ca7c8fc64c834370b2ce393f70ca1b13c5cba0d7b9886f6a63c7ce2381314bec49f73e7b7776ee4fc3d427da74d3b50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008dce6c3e7459408e3ded03266246f838e317b984c03ec00208d0befee6b0868cd4f5a3ce9f14ab8ca2b01305b9c8194e023100935b6b4c2ab4843a68d5bb99d614fdfd6caea109005f29b725ebe79b81ddc5b086311bc4f242c62f42bdaa04ec68cbdb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100be74b20ef159b691a74407bd35f2fdf09a3a79c7dd2d5652ce64c442b35874d8b9858ca7e04b0146bc2a8dd52b094ca30230772ae24b63383dcd688c580bf254a1a0a22f16ff898c07b393b43e9ce0c9b0dca7439427bc1335334170dbc3a3059c240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023016c8e27f89d58cbf4a138585b0583cf82e201d8fdc9e9a3a21bd776afadc6b9d58c4873c60fdefbcf631d4292fd0911002301d37cac6d372e9ada5eb2bc15248c66cf98158cfae8bfbb4caa969938cdd1ed16f384b1d6328d8160443661ba5f09fbe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bb46b22751d2c51077f507f75cdc24a8ae68c977318147b2a67fc0a4d441fd47e4e4950d654bdc11f002b1cb610e096f0231008a85f934a8167689ae6e74280e6515594a9daf94ad6c5d7ffa7c6dbfbe4f3454bbec96d76c916f88ee33acfbe1fb50890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306f28cab53252cc6fddb9ea3b05942281927bc01187cf26bfd7177c1203367e805d6a6f9016d729440ca708ccd480547a023100d307cd5322af5022d178af15dde3692417eb772c27146d8ceae91149b64fb1a9783b0d14aa893c18c287c96c61de8cf10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c84dd9541c2c43dbe70642cbe03e543ac01e87d8876387454de68511107cefad097521f47a59eaa767b9f4a62472be0e02306c220c510359dcd7a3df6a6674862e3a15cd773c68ad7db92ed1cac4686f1bf045500faf2e94be60a4190b095319a5600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c99da01121a5aa3e6ee1d1036db59651f1d31a75a60fae848a2a3c487c73c0245f0ae0f710746084cf1063a2fd04634902301ddea43912d48d9cf7affa7886bc20ae3730c8a8b503d9b1c05fe9bcbdd742363eb90cf5d3e17b530f9085befa64dfca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304f6c334ac11ef3286850246b166050e0bd0ecbfb739ef07ff026746c367b08c1e85f75a0aa2412442d68be8379aebbf302304c36ae322bc15b4ed4533c973b28a1d5849fb60dd5a372b4266258eca692f68d8b8501039c05b3b67e4395b0ab91d39a0302047c435bb5006830660231009aecfec16c04642ba6f843ed3b1858c73b2f217a085c5032926302019d96ef411bcd14ef4f1d52a0c0e8d6ccbf26d137023100f81f39ac2d88cb07955849c436396e267a3803e9e119383f08c09210e9f881de5d3786754cfb06d86a5719fbafff13bd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306780c3caf755fd23ce16c7cef962755ac9c973b113e2274f8185793a9ec00c579f28343504084ba5642054585cc9378a023100ef843fd2c0d15516caac40f83576d5c3239f8ce076018c002a1e81a627aa929d943ad4db047829b9afec5e12444712220302047c435bb500673065023100d07ae161ec88ada76a0ac25e51975e272f8a3a3e693e4b6930d31a094851477571b9f7e939620be16a2550b3def3cc8c023043b69c5208f6cf4a64d11a7937070a077d6567ad53099679c1a94c2881ad5a7f6a52a57df23d1399611b62d2e78f96a00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023051bf123115e2c0e45bc60713b7282d6cbf9af557b8e5c3e071cbaf54e237cb6bac0a09e4278543bf084e39dc5f4ef7e502310095953f1f0f135e0d8f184147cd4928b8f9ab9fbec91c24dc1681c88556797f7bed095d395c666dc8116e9a644f120ccf0302047c435bb50066306402300cc9329d66e8e716e0341f1842fc4b9c8bba447f189f8d70410a0939fadfad30558331ee6f0f9c41bf137df4992ed23b02305a90cb14a592380a964a3b6fdd33c2b849843f6a8a997c1552d215fd965b5422334f778f57a488df3ab44d5ac5e9aa590302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100af78892628fa894248bf9cf855ff4ada2b62a2e6fdab89825cde84a2046e82b72830dd9e41c3f2c366124522948b8c97023100f9818d5d69e1e3d7648499cea57d1b56d486796357c480897cf1e0e0b58f3ae976218e624bf730e160af33c78b3d8b620302047c435bb500663064023027e6ec6c6a99a2a6980479a5d140a32622bf51a94844a35b08df59935a3ef0aefd7c4f1e9ac671bde0bcd6ab53d5318b02302a7d888b4d29104e35738a94dbf449a50985f5a5b1d935f6e339dd58ac46a17012a2f64910fbc5ac76e3568fdc2c62300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ce5579fbf08a8f272e43b8b3d2eff3c053c0c7c5874473f165efac4973f8383cd1040c5df8bcadec0ec4eb70fc2142c3023021ffcd535079d28a5eefe6f50e2066d08a227546eb74b573cecbf8509a67fce2f2fc934bc4551cb21cf81bd62f8d1dd70302047c435bb500663064023054a7e8d2a966fa20b99660ac4c4a0484ae7a0a37f9fac2be9446ea3caf60307b078418cb7a3f752aaeb503a57b27a6ca023070116b035f3c80e390aacdbef58238b5cbb52a24374d81c6f055a8df16bc0e82998160a576611a2a904986fade7f18850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b990ca9d7d504eaa77b4ef95cb686fca696f6cf313794206e56c88ab14ee47cdeb62c3176059a7aabb586a9ffaad6eb402307a9082abdcdc2294b8119d375c52aa68890fe090353e39cfdce67ae9923ccfe2ab7f296c1ad07d9d1723084a67e2af8c0302047c435bb50067306502300869908781eb70ac7be6bc73187bf7c998be7d250b92f1adbf7137fe9370fb5c0eceefc776fb3a9056ccfbf0a297b2ed023100e432c61b8d4396ef9a361632278bd66ea9a12fb0987d6502e4096f506ae54ffb3c34c42dbefd5fcf8d56098504b686400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230200c8898a98fcedf953737251e432ec9503ab0cfe94c04f6b1f1a04e0e10cf6982cbeea0e3ddac20a93ecc18a790d0b60230796b18861ab0af4febaa3a45407de062a18e1135ca9d4c19bd0d15c4d78d36776769bd51aca759bb786e98c858791d1f0302047c435bb500683066023100da9c7bb4e82f69c361a984207a3c485d6fbcd70eda5e0c0e5807ffd66cbe839791c724acb1e5d86aac2beb396484373102310097bc16fa6e4fa86819fa149326a0cf226db82364869d70187f0e9507b1fe2d88c498c0b9369184cb9a9fe362c59ae15b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b0b6b11eedf734e5577b4cff8967dde6b035bc0d7c1b2c108ea80f52a88b12b5d6124d927174ab33467015d44b1eb941023100b1724064cd1bfa56578750fda67821cb58a7b0bb76f60eef043dc8ddf8949585b5542e7a7b246fcf53a8e3a0c0a05e1f0302047c435bb500683066023100ff65d4b6c7067fb01df6428e3c197bbd7fce98ed93c9ced790cf87dce11d1a73f2414540601537f11d98b4c11acc4e38023100ad429d4f2c05addbfb59af678280408045635aa84ef94fdbca6c0d5f6ec3188bb1b6a8ed4559e0dbda42f367d94e56880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230125568d06adc0f2f97287c767734f0de130ebbdfd9db8a173d2fec6da32b8d7570f1b39f4bf272d726eebb88f61461c5023075bd6526c2170631953323b2adfb84142226dc9057bb38c0f35ac825af8fe45ef126c4abf46da8be5b5754bfba9130b30302047c435bb5006830660231009a4ff5f1ca5dde4504ea2e94746f6c99cb8a709ba320347db847a054d4fc5526ea45db03d03331350410deecc71128b90231008e0e66db07f13711ee2d0342c761a8249e33dc9e11baeb865a0074b13867cd0cce341c4ee499970fa537b175d8e535a40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100894a03cffb110b64bc9e76bd411ab2f3bbb01036a5906fd00a2a5b5092cc58b8881634a3c9aae0befc18f4ddd666b603023100f530e6419b8d86e9d72d002f884b8a3458fe3c0d06270bfe1a7daea2b99984a260ceac4fbbf9ec0527c6fd9b3ff99f3b0302047c435bb500683066023100c75a69ec277323874fe02315eed855c1c56a0d627a5107d4426dd9537c8fb865a864ccb1f863ebc76e0dc726e4f86f830231008ef0e28211e2afc72429f4290d6fea92bcb8d76a8c3f94a5edfc468faf7d1b26ef21c27b238367d24e6e49aedfc1bfb60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e02a6234e3e75128ce7b4bf813ebb7ce598a21784cf69ce376caf0ee554edfbc46e0976ceb8da8de7f0a57e34e419697023061536939021350bf07d754d3575fe8485afca5c81ddd1c2dfc04f18e8483d1df59b8cf6f76d473d915c07cec7fe8346e0302047c435bb5006630640230456d92b92fa0a4514f3d487cedde71f90edfd7d7d7954416e9fd0e5148802811b3668c627a0eec95d953d791db19dccb023058031d58eba5eb1a88f3c69f4c6da1b836445c2706feb826d78db6b1dbaecb1a67f7f645e34734f120464a2a710e6df50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100debde88cdef55bb30c299e3e4771d7257deb484df8c0bac8ce148711cf6dca8bebab7428ddac40277e22dd8fad9658a5023100cd084c6a0a384d1e768ed1ac864edc331229088737bee67ce2ee8a7cc90a67d1628da8e0b63e2940c7a12f881d32681f0302047c435bb500673065023100c48452b867b4321ba58acb5331be48b17adc7770b2cfa9484abf7ed5a03cc26cb1c1000d1423ef122cce6c9dfdd1004402306d18c18fa970a444ff6f5ebb93fa847f2a0dcaf25592dea1d22e39bdcaf9e1a74ca73209b6ccb258bc798fd825992aa80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023047a8e70d9d45272427e5ae2d9ce7f17ec907f1075764577b07b0bd08b2808ad250e50d526d2240900bac56452bea4de7023100ae4e8824b43ba11ede20c41ea6bc43920a7d8303b3eb9092d68ce33ce15615761f00cbd3c60edae82d4f74a70300d0530302047c435bb50067306502306fd357c82dcb0fb1ab80d8c8f28f35a28a2eb7b9c3913f88d07c0d9d2ffb441515f72650e373a102144502409e376696023100b687ae0374e104d662d477da05b2813b2ca3246f575cd9f96ca2acd33bba5fa5b216f66c2fe02304e433cc0f192335720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023039b89314509c3b1594afa3769a004318ddfb7791cd048f3d36b550a48eec1dc357faa9318b69978feccce5b399c20c64023047ba526750e554586cb6062ca9afb81e14061cdabdf0f13bf3810f947c88d7b8e0f7f460d304ea99499314515eda339f0302047c435bb5006730650230072f9a2c4c1946a773d0da070c35353f19340231383c48a9d473a381e7a1b8f2c0e5fe2cb44a460387f9789de6fabbdf023100e0647bfbc686adc7627659ddfcf8f5b1cac234147a976f000c39759146dcaeb19b3e4048c207a8779e6a59e3fa940b4b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d18137f5fd398559ed9692fb43bb3214e2f721005bf9155de9f3832f3a6bd7645ad2f32444c65af3fb93c2a54d7996e802304cf7d77eeb6c3b13ff5a660cdb4f3b77326176b5fdc6bce026e60fb267f309bda7fdafbc59e0f84da84212b28732602f0302047c435bb500683066023100aea3a328d6e1f0c56d1a92491ae092627e643100f69244abe17fd69452ed7609b036a3bd9a4226a94ab6a2beff6d80ec023100b9a64094701f4c6fef7929289cda8d82c60f2c4cdbb9d231cef03a3533e319d3beb21e25161a1a40fe5b78b1830820f60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023061cfae6938490510fd64f8112e90e9daabf905d067069ff572573c1943c0603afe66ca108a6de5341d2748604b398c91023100e1e259e2d4d5542d713fbf153fa5c8d17baa199a4ca6b4c02d1cc8a82f7c0cefe35cba59e5a63807403b482e9b9eaf940302047c435bb5006630640230654ea8274022dd8f9501b947ba7f1eefc2106a5bc200fdaa87b468457261c2f25449fbdb96e5e0ec431483de38fe6f070230155b82bf91d2018b917dbd8a7cdc78268266858d80c7b64bab59b233e8c60af65ed8006d1215bb90ba967059dab9d0e70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c48908c2f2ecf6c984def7f209973f066e8d32db2f6754a6e8606812bf7f51203a8ca52d967f041fa6919cb9ea39874d02310089e34b4db8450bfc8a370859fb703455ee5a410f9a1dbb1e0380822dfdce2cebc8fb920ce251f5835c24a922e60a116a0302047c435bb5006730650231009b861ec877b0b94e7849948a489248496f599cd9d25c5ade3c1f2cb671e8ee30c66cc80d165ddda6c6c76ebd0911d612023074ba7aff82328f3b63eb15ef7bbd93dfcbd783e3ee265f04a8a61d2929b03b2b7b3864988321ce2a58dac4fb75bd491f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230364d791844fd1a681bcf6ba94682cf742b92221f1224b5a50f36f3466a5a519b2b809c9c6b46b30a5d273edb420b9f0c02300ce8f4c6b338ff21c4357eb979aa7ade72c99114a2e83f0a93af67643cb4ec4b23abb5fd38cc0a1f263f5772fdefa97f0302047c435bb500673065023100ed816199069e5cc3e1de6c2fac9f61a3a67ebb13d831100d4fcaff23ca5ed8f3fb7f3862fd2e989251523b279c39f0900230431035013f20ee8ee5b704394efad9bbb0c14eaf729ff660463687d267c4ccca7e5f91e4f95af675a65f9328505937000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c0277651607597c6952b2849fd90ebe102e1a87f5821af27ee91cd7da395e1ada0215241d9d5deb2cdabe2768ca883d602303cc4e1bb4893e026582e23e1102b9e28782649ec2dc96d5761b430d220d440b4f5dba4b0031378ab7f926ee93f80b4fd0302047c435bb500673065023058ab62cbbbf59be6c890589a68111c154855688bd73a8ae3905cc6d770bb183e70a22c37b01115e9903d5c6eba2b3c82023100eac1ef17b1075dd4599525cbc078fd92eab419b5401f7c73a8bc3da8bbe77a14bb5965fa81404eb23f3dc39d937abe4b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a0084531ee361de0c0f6f9fe9d37c434f3f31c84a14d2d57cbca724b348b77520e317e992fa83509c497b34ab54b3959023100923c1fd06e508ec2792c2e4333151801d784582b245b6841db61c93b42536eea062c76ff6015b037855eed592a5357210302047c435bb500683066023100edb23b2867b06cc0595f67436963b129d3a44a61ce9fc118dde1f02483dbbdac997563f44b9e49ce1fdb4de73a4b0ce0023100ace7e71e03a4731724b3a55de09f74b02a8872887dd8b6068ade90c663b9dcc802b7300ed55f6c86ad146141eed728e20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e3fc22d9770eaa142d60956e940e21f88dead36b94ff4aff416e36679b80a293396f44dc4194af0dde2625c35b6a742e02310082acab9b7699fe41699516ae34a1d1529bdbeffdcf4f4eb566e9a6f06baf07988fee402ae99fd0577cd321bb7973e8f60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304e6920ab19f37cd46c825c4f1ba33f14a3153e498e18486f20846fae380a1c92fb77168f2cc97e9678d7ead884dc2ad6023100852c9f872f465e30fd2f06d9f450cb6094e154a503dfcccf085a91158c7d5485932c8cae7933a6983a36b6c5fec00a1c0302047c435bb5006630640230047e714ef8e855a642a9154426286b9d9af3e1fe367be19aedd0de0563ba532511ac0fc68249d38d82d202cf62ebf9c902307da4df02e12830f48809a2055a8df9f162312afbe9c2deec6e27671cacb29f673511f179c91fd6c16809272a867c04bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310081ce704da4daea8e301f8bab52f704a33666d8b9be7dd31d4dcef3e77fb1fc9cf72d3d7b24f9079b09788e6618b6cdf402300c0fa675b5bd1ccb0ffa95d50be184fbc6315918ab37b44d0017fa615ba9071090e7a671dc04fef512852034885940a10302047c435bb50066306402307c3f8280246b2efcd1bf4ceb54a6a5cfad1c6d1d6ba19fea6cf1529f41373c824b214df16a80db3542919acf2fffb75a023058a5e0da261adb0bfb46b8d02d5b3c10949b406ec2f27d3e90b25a839a65a9b4774a7ff891cf72004052dd6ac81951280302047c435bb500683066023100832099d1b2bac286a9b6cbc06e75c52427031550e2ef914cf4fdd7fc0969b6317702a57f5c4cf06f9592383b89647648023100d9847d14c28321c99c3b64e9093543bf62629790d8cb3fa3d735d3ec95b1487f6b3a75c4a3db73884091ddc8090ec9970302047c435bb5006730650230494990d8be7dd0c41a36f53dda06d40cf3c4f81f821a02cf3db4589f826469d944900d58cd297bdaf0185e16edf0d786023100c0dc4351ae42e96ee3d1c9157ab53430e8994995e359363458ef3b09fcfed424b791ed2e46f61f3e36ad8dcf737949c60302047c435bb5006730650231009ab545eedfd4c25b8066b2fff7994656d31d89fde671bf6d39612c65bd8ecc67e4c6524b96853732cd07e0a8d8044ead02301ebb811a9f8402eb4e0ebe63fb01a7bee000c37fe2a4ebfc8a9f1735f4a8ac65dbf526851887bb224d8886de174378f30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e6a0f377f0fc3d2ffdf62ffd6e15f4922ea910f74f21109375309b1c9a47ba12920cb9af1af51d02aecb49d0bc116f21023100b5bd5615e60db066def8747f253609e9c3a21c629ee9dfbb6cf5de42e48df826b0b92c0f07cf9ad8e25c5e26bbd7e0060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e4d31fdd6100a0479eb2a20183166f30d093ebcf235502d409ec0c349ddfef5a7f39906cc3779aaa621024c08cc2bed7023100b49615bab9e5296a1a8de47b7fc830b5092d9d107e84f6225828d63bf764b6c1cb88ececa03408ad64366187e3490a300302047c435bb50067306502303d2420284e80e230c5947eed26441725ba9b3116a56cc9283a15a5d38851a203749d6160aa7fe42bc7defeb12313d2e5023100f5edd88e2c187131685c23787e07281bd45e17c28d87386ff1ab0a3babd684215387cacf1270f3ffef2795625f6703420302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300862a14c51a83e9adb51319463230162b6efb11ceb4aff83c76988f34d2ba1a77a91e5b27028a1d84d5eb75a4c1166e802305601fe9b2642addd4fef5c42986295c587700fe2412fbcc12113ceb9fea8b7d6858a7a6443df36c318bd19c2a5c993f20302047c435bb50067306502310090defe82fd278b09ecbc84134ba2cbff583419e2c3c66b9309571daaccab783ab1d6df1495b51d7e15cc4e7bb751120402307a99c0a1e50554754f1fd489f1cf6590d8fe2c57167920deef6f9d3e3a522ef4aac5ad6c21a8897490e028d82d7bb8410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cc3c824b08cb28626929b131735e45d40b7e11f7b375b745a15dcea2aa9727ff2e610d91e9c96484b6fed1e81ccf6236023100a2e287f9becee6bb5db87b95966c2d319727468cceca5a4f3626c098b73e62a77c597206ad83e83935ff700d6dfeda7c0302047c435bb50067306502303d680602a5a8984a87865691e6bb7fecca0c1ad0f93af4cab4f9695ad7fc68655651890f5545e598c4b706dd7be36532023100caed49e1224ce16330a9233426864425a08b7bcd558635b166077f620fcb21de4221d7f9613edafa6a88b5fc433a72d40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306ec85170bb3c5af9b8f56b0f89148a104de83ffa268654d7c696f6487034b699d1cd8128aace1f32e32d5281d0e8bccb023100d22e8476f4779e8170ccc0e3000487729e137b729a8cd3dd36cd3ed1e30b868911ae2b6732c10f20b515bb6e64f2b8690302047c435bb500663064023033fd6aa5abd4ee6a3c8145a17d0695afd4e4ffe75c3aa9a6f2e46345187dfbac48ff406cdcdcc39bf61f427ecf4bafd3023013ed36962b4c76d60badbd64560221db89fcd95eabb2cb6ae18f36a50ac18abf887255d3e03193923c2f155dfa9baad00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304b9d3107bc57d10966600aea0f83eafa5ea1efce67b03ce7251d93b44ca1684b954db9e7f9127d61fc80f709b957b008023100d49987ebb9ab5c3bb21b29dc341d72f04383fcf473b2fb4bb9bf0b67b3453572f36b1351624ffd5af1b2e4b68f9f545c0302047c435bb50066306402304eb3ae7a2650b2ba4cea664e675434d48eedd9c0e4e8bd5d78dc1ac4384a73ca9d657bc16a65e90947397616d153be2102307c8f112330a4aff2bfa9643ea3dc829318eb03a17d2c96e8355d0675cbe61b590e8c1bc84d4e1e525e508c23f5fe02540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c9b3e59e0a72f9ad82f7660ec6ee587ac89d5a5d2e5c64956226dca8af699aa509b381c7f2af4114bc24befd28c4862102304f6a1f6a62f0064799b13c8029a5377541512a2c4fcb61e7e07d17decebb55c1ab8c47ed42ef65ef0e52385ef19ebb290302047c435bb500673065023100a9ffa1cd6635a087e78fea79880f0bf41ecfb9ad45709a931deb1fa1190edf986527fac8d6eb14187e04b426cd0c1f2a023015d77df334f32fb624b90811f6e2c2c25323b3406a3af1ddd198020c34e808f122fdf59d9a61205a84bae628d443715c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100825b161bb9c6b00a2b88f326ad380045664cf372ad3283aa2ae9e8c23c19ebf2509848a037714bfb890c1ca08e3cb850023100f9fde2713394abf23f7744de38ffb6033b5ff3d67c5561cff580348541c11f4ad9fbb902a9cfb08cdf3089e90ca7da920302047c435bb50066306402304def8ca3b270da683f1b72ffbd420471795a9a618448e4edc239cec974d65bed4e2c4057e996470e320b0f4587d1f26a0230190f256b34c3588afaf96f061478e245206e1bdc1728285ad6e1bdef0e8fec4dba7df76303687dcf3cd7b7b297407b380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304a27801029f6ed2510def2249bf7d24b3b1e30c79f359972664507a0167587e6e6bbe77c6a8a127a66376d848a709a36023100dff018b2c498f2b38c77475a18ce9e64a0f95ccb04e3be0f4b96fb5526545232bec3a143a9b59114fe991ff7e3a5dd000302047c435bb500673065023057aba89c4654c7e8a6a671ac002b2bf75207084b63907871b9591a1b5644aab02bdb3ffe0359baa73a7183daa34f791e023100ca6bc1816463ba284e157de5571243bb8631cb9930712b62c586a6766a2d1d6cc5ec07ee83d4468a2e124461fbc689080302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c7adaa87a4a402c96c79c965c4a488aebde9ba741d780734fc75a52f7a207bdaa60b5ba2f7169c801f9010424c3943270230134880c0da9187d1e60cd19f1edc102395ffaf6a42e28b5934d2374b03a5d8b9bd7d4ec8b2856860c954c3c315b5bed70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304305035e8a1e0ccbbfa14d4404b924ad456ac88b5ae0188b5ac185ca3cf1b91e23d4cf00aefbb85043faef9de2e19f6b02304eb9857bcc00eb426cb1d29376fed4443a0251442f6a6c486d0cbee724b65af97ead9bad79422ab48674173a541f23ed0302047c435bb500673065023100b4d35106204321a8d422972f1c36ea263491c74125024a9f38b400bd3d062b62102c7ce1a097530037ad9f6bcdeda731023015ca65d62c77dc548cf5798e037b2e29ea9a1a759029ca9ee714c9b77c12bafa291ed5861ee05f7a15cacfad876f3d970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310087bebcf2a84517999a1459bf7cc285b90b7f41530f2bd97884fa285357aa75d9132a070eb81c9b83460627fc61be1a5d023100936b6d530ea17fc33579fcbd221ad5ab4101d2295129e2647c0d02c5ab1052eba6bcfaf2eadd485d5453642318e9df400302047c435bb50066306402307f41d868c05bef9eea72d5c63b3bc77607a2443d92e3e7f0097495b80ef6871ad6efe38f045ed3bfc751e6e07161e1e502301ee6ace51f029a309a3ed8ac2bb6644c34850d3162d044284b9fa47ef11fb5cf1261cfeff2fb6d15cbebf303217748440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301beedc2396c35144e9f44ef93412b05e1deca8bebcc3992aa6a52e3395db2ea67bfc1efce1b6e8baf7b2f72350b23b91023100964c0c6d31ffc25c27b03c3a671b1f30603287507d16452912379879ab25b98919607e416bc0515c99c030da1c0a05b30302047c435bb500663064023053179544e24d190ff543a9b46a76f9621345cb8faa195b27cd144b8fa478dc86884b63c0a2ab80de6b7f3a7de4d0700a02305644e31b0f7e7c9e19e6a6496a2b03136a97e9e7f3e54a81aaa4b21da81b720540d0991b31145842d52a912e3c72c1240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230246d9f46e41283101db685124753f80ba9c34ef3cba951f7487a5ecd20248478d0a9d78ddfa19209309cd99f6dacc0fd0230063ac8b35a3b8e7288672cac2fbc9fec3a6b0b129e36aa23181cd4db27bab4d78997f25a3ef67932bb70f53479e3df5e0302047c435bb5006630640230768337539fe519cc3b34bbae6e1b5c9c7973fd4f7d3bf8a716e0783b17845c6c51969ce28db16a46fd90c4368c1d706b02302e4cb69a9081b884f5244d7b77aa11cde0bc03199f40245d0157534a61888370c4e18f66927f3f961378e4e8fc3b85fa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e6625f68d0b8321913ec4d415addf550d7396d9e417a767c4428c8fb869a874648af1137cac70de10877e4722b4a1e0f023100cca11bd35caf0c55c0311e844232484c04abf06caba74684209be42dd69868f724ab42d0b108bdafa6137c4e6ec1ffb50302047c435bb500683066023100ef5ebc0b7f04694adef878ca52789ee6fd70cc54eab2ebe9902a8e6c192fe8e287779e53a21e47f1d073841d535645d9023100dfc668405caa3ca4466bdbd90592e0d19672de220490a6c380337aa123832e906d0efd828167b57e01a362c557d300fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008fc4937c4badfc967a6ad0c4e99571eb0a1cc9dd92988b2a6bcda14b89dfebeb104de4ff0f3880febb388003fab4830302305864b3c42a11ad469a44c732e8e49840356326851eb4f0f521095cbe2da5b9543b9af5481c6dc0a4e93d3c8b867b228e0302047c435bb50066306402306a817d1c34bda9e48b7511388dc5d3a9260afb5303f94c49c17e1c7cab1b955cf73266fcd2c9ac1506e6c62b63e54ccc023031b2b6ab4ba13ca6fd72ff5eec4b64d04fa6ab025c2e54b1b3f7cd5b033c559095c30e40ee73e962ca5048b5e161956d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301c2b244319edf873d849adf416de3cedd8e473d12036c2d62c90700dda1af3d5637ff41157a3828cc2dde55b8f12f0d702302e848223889db7fbbcef52c0443edf858b69c9fce597007234b17e7a70b16655b48f36fc0f709e1bb7273b89db0fa9050302047c435bb5006730650230112c88645cdf2c3de8dc310120616573d7b86488b5476d80840be8101388718d5e3f810c0c35aad0c9ba521a7435a6f2023100c9906133a023ecb8aa4a2e39ba72a7395ca396459721f0fb4bfeea6a7796bc9dfb366c91b5a663fc3414ef93c4aa95cf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f6744c1801dc690f93b7cc2254454e5b3f309bc7f91c1aacf0161a3d3f64ff246eeaaa0a83bf5fabdc52b0e464e64faf023100e58ea3f75e114b27ad321dbd8d749cbfecde20f492ec53eb6f898dd05a3ae1d8c6996d29783ae3eaa88ad7afea3d9bf80302047c435bb500663064023006d1aa734f0fa0e80f3af7a325ceb04430bcf62bb137b1e4aba7ab26622964e4ad6cbf19506fac88abfeee50999c79900230433c98e710b5360c21cec5f96294265b528e7066ef88eb5916244b5238550cf85766d53be30cec4e6bffe91c2253d49d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fe36b14c0ee507fe5250a09fea610b92c0ef282bc2659c808029e2017f5878c30a5c13a261c711a9200e3d56c3464a5602302c01598527266e96540663f41ca972839dd6b9f9bbde63cff59a6eeca18a09b0851314b4c3bf5bf934bda4fa122717ca0302047c435bb500673065023027b2227962066651345704b939041685f7a860940b9182120f922ed3fbb60bfebc33e8d7b31a2e77eef2031e56c81eec0231009ec68e4c7b49dbcd966b4c0f2882ded22b40511f2f16bd17c31590a5e3eed792f4fd42da00e42877c3ba12e64dae76140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dc5c5d2d6d1d633d273fb832f1c673806c3216f554df5e5ce1d73193d712766d3a72c5ae68155e80e86840832a1aa84d02307129476453ff82120bd0399932dfbb2af150326d3a2205d560dd79aecc604d4dee77a6be51f4c563a8a00ee38f29e1d60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023077197b71894ae8d54cf6f6cac6e6c65d5f19a3444e826571cd0b08afa1807dd5bcd1f40f89050703f32df1c9a2d682ab02307ecb866cc50fe3dfce155a45f8d249dd3c5e6f49a81e0ccccfbfd14df0e8b2f7e86999420bcf108eda38531c4b047d9b0302047c435bb500673065023100f40fb86a5008e5fba5cacbe98f4c4dec690f459f70f00879d091621e7090126e7816288a25c5e745e0c343b0117cb99b023017ccbf3a9fc2ae3104b11bacff0a88e272807c7523e365eb1fef5311bcc5c4b3f2d291ade18f7626ce3864fa6a5c343e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303626ec8984fcbbd40a1f5308ea905b07a12f99ca7a5a649aea77d333d7c896e623c77611d48889936fecbc4bb6ea01fd02303bf00676b821935816bfa55901b91ef8a9183f9bc4d1c6c96f702de33a1f6d1ba54212d42046728e512b852d0fc643de0302047c435bb500683066023100b76a3a36c40f4ddcd340a1b99ed376d6a9a34b776f82df615936d1014fb54af0dc4ee1919f5916f5ddfb2068c7149c14023100e1053addd8789b620cec2d998bec88c39ba98972d186e24e6057ab65b7da08e7b3eca6b9fca0c659a4e65ebdce5693f40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c5b7be6a055e9b2b111b002413e69118d5f39b9e75334e670080ccb9a696181c7bd5b70e79f1122dc237f704ddbc6b97023100ae4d19ff69ece5256481183ef316667fc15a2ac74a1e1403b9ac4623f3b8c123cf96b08cb762ca3fd719d13d6b5f82c20302047c435bb500673065023100fcb3039a45c42000cfc2f4de04407d5df8dc17942af6fde4303889d99413d95d79e30702479e472eb806fbcfee4611cc0230249d088e3843017e53cdc9a30aa2c9145156461214319f4365c4c9f938a3c244b8b54b5caaae69d020e2e01326b97fd50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a11e76dc0cc36864c93277e8fcae19bf575effd0988e9bcc13d5b6162e1c5680d69a35d1f2b35fb2db5c57ecd9783e18023027b5fdd37174d75e9051771a02c9392825e5fe93160e39a1c5b1285be5f6608f20c5e4d4d4825c2af4f80a8bd3555b2a0302047c435bb500673065023006b61edfa5ea028cf85557f86e29fa7d8da90edaa6ab48aa81065171f7fcd1e7a958b760a30dc621615157e2b327ed1f023100ec4af7a9c81ce2a55388e61dd88162a171796a6cf93f6879e04d2f7f73ae4dc4fd7514ae25ed5f1ffcb31db157410da80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023021f804063a590a312e9c13fefa7d4fd2598b806f1af7b49483ecac5f6368755e848e1605299aef44429de1e0fba49f13023100a65df8c561832896788416020346f4a666ed78684f3f4a2586d3d8b5c041c57d7eac30333ccc87a4b882a3f5629e77c60302047c435bb5006630640230281959ac53a3bd332a7d9afcf03b24149399365e3247f4cebb18009e417da7bc055f76c4122963c1db4e3732f617f9d6023068fa5a17a05e8c24e3be6baf8a90ebd1192cf66c1acf32b593f4e5e5eab04fb144f0da1a7eda235a6661ccfc9f5f53a00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305d00c8bff9245d89ad1583cec4dce252991202402c2ac3e1df186f7c12b8059797f518576b2e29f1ec172eca6f35be28023100bc90c63a3ef8d0c24a101c247c54e134a02cd74d3ecd2bae4304d2537e3781d97186f81675e6be5e31e6576a383925890302047c435bb500673065023100b76529e7c06ea2cd544852951404c36b372952c9bcb104e54903f75fe9e43900ccb3a73b2f777a7f738125fbc10b77d302304e8a80f91c719c962c407956fffb9530d2dcec5646b93445a3bf3638598b338e31d27ea8ea3f830be73acb7b3e29ec7b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100efd0240010a40ab769e08d37680106cf1df3ed9b8c0fb2bb1ceedfb3538608bc49e06b4d8760fc488154e81c5d2d13f702302330d9519e6e3328804d71fd20c7be8246f41472d4b37db373e3ded60b98e991e7340554bd704e5249158e52f5148fe60302047c435bb500683066023100c645f86ee24bba649552b8e77d976e36a95931691a4b55a541f33f39258843883d7b3b2477db38be1b5c71242bba58bb02310096295b5ffcb87d31ed8f4e9ae23bed87d2cec7985ca3830ff859f5abe48d4e36452d172375f6dcee39ef6d7a994bff950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023059c758d34d1b897f407c0fa3a39df221e95860dc4673b511046755ca5c00c21b3d5c5bab8e338218d2c91fccdbd121f7023043c9050237803d1b25c34c1c7baa06c22ba28c8afdbcf884998421e197d51435911ec09aee8a23a651f6b77c8469c30e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e87a55f68f925f153a41636d3bede5d69019063c333aebbb5141fcda7d63201b0268a19ac769fecc8be553cfd538d796023100daffb75d3940966b4221db23d1d64e3c93afe396fdce469907894be16cc0235467a9cde98f9758201499c097c14012c30302047c435bb500673065023100986720b60c6a3ecbd739ca76fc03568df27d62be38ae7dc9dc1a90458b4f733a855396a661120081c5f4fc89125657120230202af75cb51dc16f7857f2ebd037c1303b0aaab248dbfb399c1bd772309bbc3044f5cd8702440246adab3945169160360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a8459b9d79d9d668f1aef68927307839898e16cab96fddb60806fbbb54e3feedcfdad08e562573b9c5260b52971b8a89023100bfebdc2ed48849da723490313fa5b65d7f82cabe17d5522b61fb5ee264754231ea7b486e7a9b6e11f5b57f10eb1f6ff70302047c435bb500673065023100935ec4ee0d0707662151cfc46ca09056377b322ab61c8d06cbc3f7092b2942dd0b465a823379350350e57556b19eb48802303a17685d794205a73c87a35ac9a469259d2d33fb69fb8bc442208cc8c06b26d285922a7976027dbef377f6ebc4eac7d80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b860938ecab190a73d2543bc9e3df678fb1a030ea07feb0daeb9322c80c98d1139d087da3a6eb453d69eed7f1fe63aaf02302fab040a52b9f001e9b632f496d6bf3b87b7570c06d2814a92d8dba258db8362e42c3180b7c9d5c2dd55db8cff278f830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e6df41f6607bc0933ec4aef4f981558a08f9487bc2f361208ed27b1a70f6375b40d0c8a443519f059b99d9368b93471f0230791021105cd3cfa6a239387d8a5eb36e876141251da72a8da50645a44983e2029b35053efb248ecda5897c524220fc1c0302047c435bb500673065023100b0e92e0d375536b065490bb771931886147f7d381ca98db63929c48f671aa4b0e5dc812d248248252f9a55b842e0922e023053c4d3fec0365f701cf9291f60c7cfbbf8d5ecc0c41bc60499af4ded5d249362bd28b8ce4343eb968ab179084a7d68c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100df8989c4190c5e6d87dc40b02c2f28400a3d40ef2e56737a3acedb194a289fa17714bead1f05b4b850101846fe658f4e023100b3d4a59c152d24afd06cc29e4621fca0f86c472e4fe739cc5a2569cea34bc4dd499b3201e63d00269704b0e05d4585340302047c435bb500673065023014f8a86ebf5aa9b863afc281e67ba51172cd12435c4b91e4ae19eac1d189ba67aa504e044a1e628131fb86aeef45b0b0023100eb5fa87db2e96c9f47bc4f3a9efa3614caaf0a91dfc8b129224fccdda8292f5ebb42ed183fd2e5c10997ab79ae669b1f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302b0b10f1b29d35bf93c401998debad37dbb1ea28cd38840b39ed084880f317820d85f8751d68fcda8abdb833588f34d802307b8c361254acbc270bf79bf8099bd7dbf47d38d5cead1f685c18be13e7f8879179ab2d44a8b5d5b5a3717e0e0d100ae60302047c435bb500683066023100bba8c78f71da469884a85145d12f110da8652c0c1f5ae60c049d8b20c44e143f9cc8b3a7b594103e49e14466d315bac302310096b0e049a02bb70436ac55bfed7d305a6a776a02eba5d042d58a43d3df0d7f44c74d33f730fc2e137fff065848ef07be0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008fd2d2dd9a478f503df65d0a6210599e23c3c6a6991e02f6b6b508bfc68ee21ff9a4d901d99debbcca575798f69c6ddc023100d8f33ed426ba7eec588aeb2d39b233579faf0cb9048dfd6d2c576f928237047786efc5dd1b67a319e35de16a291a2cdb0302047c435bb50066306402302c100b857d52a5afe649b9da39f70c8072308ed6bc73260a602594b2a1389efc55d090680362d2773c3964847293fd89023065815378ff770daec6f79ee6b59349f8b9afa16ec0d9d8ac08a222cd01958662a8dfb7af34da16c6b19c9448348ebfe30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023061f7fe49e12190401ef9ee47b3f8920a790fdfc9ca44c3f4fbd67badcd971807d8087953b3e9f377cc34bd15a2042b3a023100bbb21202c753c643f8311b87844810ef15a60e26dde7a8b40363e4faa04e5c6e18fd2853096bbfd90a25bd3b127a01920302047c435bb500673065023100d130e85b8c065032c4fb9fc38cfd47e58adb3bb4f6c0948b6fef10a96cd7ae58c1c962cc357dc69ff13b40b007dfd40a0230330816ef68d609ac63f02b7ab9a86a48f909e27a663e015c3542ca60c483fe150058c1ef5e304a24cf8a26ca3f7176090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e441bde8c6b9767f0ce62ae3262971d10d76ca9b99df9a2753b092745ab374adfada330ce299c09a36c3a04839918a4e02305cf4463d975985b389a74f47fd8de1ff285bf69d0b8638a7e0d55bb393d669f2c621fa6bff8811a77007f266c126574c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d8dd8c798253a8119cfc4040762247dd901469b75b1a0b062f83bff34ccbbcf3bd6b09b0be12f1eba3682f0802283c0b023100c78c139d4ca886e4e1a1b9b5bff7f11ba0dc61e855afaf67dcffd33ed227ae63ebf5331cffcf3a2f5f9729d2e22ea4280302047c435bb5006630640230089490022dafb57f3625a7eb0cada18db7e2b48dc9ea90c7319126f3fe8e964cf44a826d2e409b1bbb8b06114bd79863023052699340b762c1414ab2779cf4351ffb10b0ba016dc7280c30f8317f552665095bbedea8cb794eeae0778b68c1ed38430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310088ae1f7ef4c23be791ddf60cd972ff35612b9da16242903102c4d09b03dd667b0d94a30a4dcc32af6b844ff2f0e14ff1023100a0b63e60187866f2fb401f2d8fb8ad11a53dabe712a4b9513012d628e0251e7b507c3bf8195c02e1ccf0e80dcb34aea80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023073756aed846b0d3591f1739fdd105f54b15ceedcb9079005cf324a0e427bfac885b66c26110a105cd37f93ba044036c402307ba5ab78cf0227ddd58f36b4b471e5f4f8e18a8cf0df2f6e6bf0dc289a88582cda1483b581b1d727ad63e404db4ec9260302047c435bb50066306402305db4c48fff152f49447a7e9f0f7359148dbc5b3268d096951d577ebca63f68b48c3efb9aa25bb7060600ee7cf11e690f02307aa70ce8c2ea94fde26220b62baa76c05e955169da71c395fa6068993683133f80f4bd0fee1fa574fa2b805c0a6772490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c8255bf06c6b4050eaf3b7eed0eb4308520cf7d44584c4558dacd1248d09a4c64d3cd1a4255b87ccebb8a8894df99740023100832812138933b318094b3be0cdfe75b02df57cf919e759f29b6b1c58be9b283b0bed8d42b3f885267a0a0dd6d44f06c80302047c435bb5006730650231008047ff6ef6daa5633785fce864856f2448896c0a9a6f2695045a25b4e4fafd9d902247e173afcaefd5a260b22cda6a9b023060f6c6805351500dc341c72dedd56629b72c1bd261fffcbcbf125c433bb4eb92a6034a292dfa93dd53535903c8a10abc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302eebb8ea4cfe0d3b5c988058805bf8afa9db054ba07823d0e38a4a3b5819c3366324f2232355f061b1644c7aa24b3b4f02304210d9441c89b3a56518f3edf5972af22ac9b2acfe1d991beaeb1548a9edf3677a989f3165d314bf4c22b1e8101540d30302047c435bb50067306502302ee9e4f55404019c83e993b1f7d6e462d654d2f17dea0bcc544b6fe424888d8e576b946aacb7dc5cc0b0b97c5b2390e9023100e35acbbf5c312b541f0dc65df72becf1e5c0854cb48225a83c10ed7bc9571ee2c583bad8461e42ecdeecf7a8dbc1c2500302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d5ee7fbeac645851e6588d21c99d8efdcef04a0ac650224d20efaf1214769d9d86cc8c6ae3bb421b62e72e6d49a7d7e302302a3cb498e66facb653504535b93945229f5ab888af292cb4a229239e5a1737dab0be14a361c97d83f9fdd8cf6c2375e00302047c435bb50066306402300ed8852a0340a81ac9fed499e0a5d4d48e59ecd02ac04b1703903ed9c54032387cc5bff28b500d2a852754fb3d030e0a02307a0651fca6943f7bc2d1515687d7186c468d96fdc090d21d06644dcc4917f8e577ad088d65e686fcc11efc3c4a8dbb890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ba1b7e7378ce93f6d108edddea673b4b3bf4a12c33779e4c828a6dd9fb3cc984bec840ac7c7ece4a56c17cc3b046b9fb0231009a54944cbf9daadc8d44ddeab2935a9b176876d9494664999b5c4ab310370e5d0cd688779c5c5a7f48389641a106ced90302047c435bb50066306402305185f4be1d1a7ead38fed904995e21e3f6c40535f8312b3876b0c4f4704bf3233bcb4051f6ab7dfe93533316679b193d023000fd1c5b3e3ba48d686303f4a167e6a6f645bd656c5dfd4add32c75cdb2931258d6b5de057bc2f03fa2307c39dc727220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e0c138b1f0bc1f394c7db3d1c98f01dedd6d0fda9079d07d18b20e12bfcc8c3ea8938ea8994fa4e0ae3e6e065a39893e023100c081d5673d89f733137afc88a1f1bb978b372cb1dcb2a06483f51421bf3909f2662b404a202e60ce5eb7d137c794599d0302047c435bb5006730650231009e5ea7b3a85fa87035b664a0b1966b23749265ce70c90a8d6534dd75933d7c8adffbd475509c2431be9d938980243e67023022376b4b8f3af365ab35a9d6412395aabbf2ef09a316f62f733b15848bef05b7d23c4dc88341907e881d48fa547f2f0e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023026783ef06b50b1e460b30e83d06fe71664067cb5428496902b68379c922acd41fae107027b63c019ec03a19a64ea0f9f023100ee558584fdac3a9189bfb3e7c843c06998250ba6e1d44f63d5b8f90e6a8a1a1c904396906a25c24a5bae7e36e37def850302047c435bb500683066023100bf7488f4dc7c8493d7575b59c3a26427cfd2da6a0d6c738f024a5b5568f3aa8b2d24cf101be3d7d977926e55c6cae45e023100d3744a4ec27f76b523ab61121349aec65c9bfc1b80db6c3107f888418536caaf3aae8bfafa10edb44837ba11f3c5b45e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306f5435f8d2fc7d67f983ef11eb72daf7140434f950ceb36e29347bdc7995db096df289f703ff473f8b225e7fa05be81602307704060aea5a19941196667d560e40c4aaa0ad8b8543a8692cccf236a08b0dcb1b8af04aa6d630b78b011e4cc93e67700302047c435bb500673065023100968b88fe3c742f93def4e27dccad7b982bcd9fecc4b2d8b4a9df7c3e6199718de1b1db417aea2d1ecae173b4dd6b1e0d02303da27ed2b433ddb8b85b4bdccdaa2e3ddc621e3cedd4fdfafb247663535914f7d63b49cf27bb62ce5c025eeaa34a7ca60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bc162b18fec7a569fb2b2c5cbabcb7b9d5c38b504993fc489b35e72549b8f916ead7ede24745b752c0465660f46919fe02306660db28a3c3fda50409520c6e9f8e08240873b2bd4dd907a5974f2f0ca5d45ac646fcc444866f215b6c199dec49ff210302047c435bb5006730650230505129a069905a6ce9c5d7b2206ee1cbc67946cec6dda9fe1f226fa0ea7b6a1fe182c84adf4f39506d47a6d33f93b5bf023100bec2a99079a8e82b5a4bc98a0b5c7122e1b0873ebc5cfcdc3d775fd6384392b0ac5744c6904a9dea1841fc1a6f64aed90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302e1c7bada07ba332e1bac70a53b1eb0ccf7d9bc8c85b7edf81067e04f8daad8c123fb74fa6257390f7ea2f6331bb58a102301a22bfdfd66cbe605a0ac5ff0932b277c3f407ec6778def3beb94c77adcf6099a872512b18df9ebdcf15c270ba2c0d020302047c435bb500673065023100c09af7a4cece172076b19b6831e4e71c8aae06688a095358edfdc1f6a4ec526b1655ef6003d13b5210395b29c0785ad002306c22b47709ab8260ad0c70c498d037b463703fcb2008a851fc367ee15a1d16517e1a3018f3a3a3aa37f3bebe4015bc910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023073afa75988e988f2264ea022a110b79a0ab693f871e95cc26aae7396553fb473323b55151e44d03d656e6dc652063dfe02306ca5a40ffe3b7dc8d831b425f573e7bd05b07c9c0c3f9e17a81744797ed69c7193af99e825be16a76eddfb6feca3d95e0302047c435bb500673065023055294eb1b3ec02ace6672cb99edb83eaac723ad0f7dc31289d9e1c32e90e5eb768cd83771f699bcf9854784edfe2f5c1023100c34fadfffea472452c77c6ad0c2be313983441985b882d8ca8b1d45aa27d4705c4cdf690b496ae52ad399c496f7110ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230205ac6ed59f88e90fcbd0faac5c79a5f8240bf1d502e71d7be8248e4f918c54923721f8ed9b0bdeb3baeb3f0f858d0c002310086d6c779a85e0778906f9008fe6947a9a546cdf52d94ed0989235478a3a2e9617c6c02fce618c607262ef5d9c6deff680302047c435bb50066306402307a2060a6d20f345a06c3c47a468e553b50687851638dfa0d97fe5c1adead867267cb2defd32ade9887efb567412fa48e023023295af627637e12c63f87bfdad32a00cbeeee648fe051009dc71cfe3f5cc1f060161204c8e138f7a9bb22804705e02c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023050a8eeaa572a5aadc335ab47ff33b080708266df450140a2843154e59e55df85ae9e18b5197489bccc52cc5d93151be6023068d32c412ec5f38e88842d944ad7826f866b130204187fca64e5abb5e55087af17b1511f90053444d9822bf9cfafdf860302047c435bb500663064023037b37956e3631f28cbb8e6342bcc2dd7bd9d24e8a2d3bdf626250a459d78056375a14532e9177260ac99a50489a79bc30230580531956be3a0a61d1e054cc3b6900582cf9d058ea86ff398e48fe824e772f9bfddf805d10744e34ae972e1aa6e67ef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023047be0e524ea7d7ae8595e22bbdd1dd225ae5a7b93266237709c06367631e59850943f862c50cf15f165d8a26253c6277023100a903cc9d7b8992d9393d718d0692fbf7f7031c1cfb8c57a599bdaff62864928484a272dbe64a8884c3489ab99355f34d0302047c435bb500683066023100976c20a2ac24916eaa4ef13ea83fec1bbc365e05068bdfa498e79f09bb723d4ef8a336fd0ea61df189cba911abc5c218023100c807615577063875fd0d0311978f9dc5c3d96d9be8a7b1e1ba13902c56fb1db93a48a4c57cbe427f4ff1a91c282d21d40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023049dcb689bdf379864a73b285ab74a5ca30589ca0026546b6c1884a6acd4fe1863a40a469100baa0624f3e9a445d973040231008113c5c0c5122a4da7d5984bd5e4eb384b2b333b6558c101b810fbdfffc1e0b52bc0cc4079da212920aa95742766fe4e0302047c435bb500673065023068074cd0afde2f6aa44d2278880cd62ff63066a2b88dea2f84eab9a21b2af48621c55173fa542eec2e19de65d9519e17023100fc412de521a82f26352eba63514686c1231f169132daa78c9730bfe84b1c1a3ab76761e2156fe1d6f1a091105e775ad70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300b2c9f946a128aa154f8b1ab3d51c01afbce6ead1824915814abd150cc0747251b69c98214f17c26ce3f00bd9edd4540023100fc3e323df0d87e8c23be85e92410c6c5a7edb7085312cb3fcbb40ed3a5d638764b00bacdd0f9e9724f392977863d912c0302047c435bb500683066023100df37aa39211c08fefb2feebe9561778eee230d85c3030f7c2ab36480c12d9febe1e540471e98effeec6be1b64973566c023100f23698887d1e5b340b8b2ab8e95f507196c25d1d07229ce31aeb4f9a79773e7bfc53e70593b59d08091a939c2749d30f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cf5fe9f78a3d9c28595d47178dd838be2902782850c1d8bde75698282780b8c0d1d4ceb444037a7c4c15bbad9140d0c5023100c8a95da2cd5f830a8ceaffbd8a159e331dd585d2734414621cda1c8a83bcc9f4ef45b3db5c7944076b62b4c36e16b3b50302047c435bb500683066023100c8b11d8b0fdda5760d4df417334a9b9cdca7b966e387c2a0fbf98ef3bdf6f1c474ff1a5fb69d0f0eb6810b917dcd22a10231009264b26df2f63c3701ead771909a7f612b45b3ea9c827ad9894af1d633d88479d0f51dbac849436b43b060df81e684820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301353edd250ea0419a571fecfde2fde6c6cc691804ad7743059eba8c0196ed81c8354ba0aedddb8e51ceb002b83fd7d24023100d0a4409dc476c02d56e9ad776010b56e38e6ec6c3feca2cc6cc3e640e188b24a763ab1c1fb17ac5d45b2a9573100b7d50302047c435bb500683066023100cc3cdd8d6e6186c0e61a9d75de4e5ac89a8f1468ecbd5843d8ee03ccbda8fdcd600a6aedd148069b4f8649ceb0765919023100fa1aca6db8f08bb8eb8eb89cce45b94538c14d9f30ae30db62c74a39e5fcd02eb1b9def1d9dd4b5681d694ccc1771b120302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230783330875b868a99782f17ca288d89a83f3ab937dca2048730e9e66fafe44ee5de53b7739ca4418af7721df8beb230a70231009d03da156904ae256cbe4b9d476d59f0fc12a690cb341ba5090887fe8542a9f88b02fece2dd46913d48583d44a0f13a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cda3fbe7750885a73255e158749da25cac2f7c35390e0291b8198cb3fbb1fa052f8e55027660ae9b4121f1aa51365cae023100df3eeac632a1ff23d1138bc962ec1e0a3fb00eb006a34a2c89975a1460998ac2736b99b47f62d7a1c6d38e7de323c8860302047c435bb500683066023100f640734056e809fc7d7396e21806a44ff22818e08b9bea1632b07033454c319c9feb48409f4cac8f2c55ce3a715fb61f023100a19afdf62616571601f6cd4223eb313dfdc0406c76b9c51b44ef5f445e92c73fbacded65d4da26d011dea8ad3e0ac8270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310096b0e57b6271d824bd094d1b7222993ce32ae693f355b1b347e8ee5b1959150024af9405bd0a71b7464c3713d17531d2023100fa7e5a1b08b523c110bf2324335d3d87f4ba280208fd8ea22f5ac4db9dd400b4aef1b3b322c52f2acea4077ab63777d40302047c435bb50067306502305f4e4b8c08ab6013a86705133f37005caea5ac35a047e8c8ff9de2f6d7c4cd514e00e40c9450e72742f0a9443380243c023100e2bade8a7225662d4f7b6246c6a6c09900a734aa5c36f114970a089d152c05b1d6e1a95097d2c06b031965982c62f8930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f60fa3a14ecfe1472dea33711379c76d97cb5af026e93c1ec40ed78861425917f630cf23453e59cf2940bb56b6ebbb0e023073dc5da40d2821a1f279d599ea4716055456a3d17aea5db7671ca869165521b1cfbbcad36e9373adf63ede8585cc7cad0302047c435bb50066306402305087e7771269ff8246dada1eaddb4f58bbfb1bbaf75336fed4de234c742931161e4569813d94822d0cda71334a566d9202306fe88de9fe5f35d1126175ecc1f415bad18489bea306fb0406fc0c91bf6ae5cc3a6c1d1c917e8a54b24248c442bbf4ba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100faad8960c8162b8fb2d7eeb0854bea6cfa5f819a5e95a7255103f6257a60963cf4a42d49f0e85e891936d44a0a006863023100ad46ee95c362b828b9d4d9138cf1a69acba40f3b4a98fb22a8e08fd02c4e6bc8e75c606a1ff4f0f33ef9aba373d181ab0302047c435bb500673065023063dcefe911627ee842faa457415995167fa44055cc958c6e8167fac83a5c0a89aae9b69b0405e38f5c25a65123fdcdbd023100ad571659ed478f18cd0e2c056cae054560b69d34fd33835c1f4352eda18ef2819ff36ca8e7413d2e7b3d91580177b64a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e4df71ac581d217683148451eb284e980d21dc3cfaecae0cd74afb9f313d089696ff9534d48041a963fdc669871d639f023100f610644451371fbc1c5c9992cfdf38104b3b37f151b50d5a0d3f283760af73732641dcfd051b7d273317aaf6328f63e00302047c435bb5006830660231008e10ed48c74721a36ffd12dde33e30efae83a4800aa45a2538aec8fb101d4ac205d07fcdbe11325fe5982ecea2965144023100d04dca587f55fc95ffa290e428042478c94f73b1ed67268d5a669ac2cee64f56b5416525be34d123a40f2b07443b0cec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500653063023060f16bbee309b3df45d8365e23a9db08b39b0c893e9301647b6b6ae70e8462dd76a15879c3b41a2d1e31f72309fb724a022f536a39284f143530625b3b2ea7d9b41917e94559c9b89174cda09bf50a858a5876a7de285740849fecd12e7bef86980302047c435bb50066306402305b2739f6f209e3b7f8d530efbda1b6d0ca481e45e5384df702d45fe0e45e3cd0f9897f11ec88871b7fe4e5c66df6deb4023034b90f6ce26c46a23d73650b9532aa513e3c86031a305447237f1fd398bbf60f7cc97458941b55d9dc04a4acdc3ba17a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100de6c7e150cd46a7624431401b55cd138066967ae962f545ff44cf5d85a091d321504dca6163cebf0a336503b43389fd7023100e2a23acdfc64538aa8fe0fc3a81a73bd729f79935bd395362df0422b286216e40b54ea9fa3fba3f2aaae2fa863897cae0302047c435bb5006830660231009e8553b075cdd04ff13759db1e5a9cc8c31f5167f43709014c016b248b50095984b7ecedc8e2db2574594037926e9fff0231008aeb3632454de94f2c73ded8b3298531a2c0cdf801e68150b168be5233b2c4be84777dcd8cfe8495461187469218da240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cd3382085cf27d14dd82d3d5cff790cd8f552bcde458e011d7bea09ccc158b1404ce48be34983b17a994f183cebf3b3d023072f260ae6e06b27c5de1c6391900f734bf7ea5f1480738e9f6d5dd5aff5657ce5fbc281e5143c2f84cfa09cd1d02bad60302047c435bb500683066023100f360dbbc522ed94c8fb5d398aa13f434d93f374a4adae8935e4c6331f05354852ece4c1e65365f6fe3b21b308cf0e0d202310089740b00892fae8377b0f04cc3a8e024aff50504e535505135a10b32cf2f68a7805325ed6690860cee6efacaa578049d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b2106e6693957272e7a134bf1c3b0bd5a38ddb8e1d9d1d2f24f64680b5eef91dc1b79f1c9bab19428ff0180dba5e0bdc0231009f918ffac9309709405c6237be39e84fcff5dddd3148c1f8f9b8425ee91cd986da0e0fc118f1b8d61e63d29b0668d8200302047c435bb500663064023019ad53c01ed831fdeb9a0ea4bd7263c174eea30036f620133316c19146a7bba2f624d8204fdfcd3765b8f8009e38132d023059c5d0c639598afe4890a424587bc66f9c6064bd6fea0d83930d182fd3bc907b32decaa1550700712ce924ccc82bb65b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306e084f5f839665cea27fc093538a63b598b157111fc1dcbf0831517fbabb7d3d8619cad32a17d2ebcee0cbef68ed75670230438432b811b056ce9a838316ed6bd3448780a78e6034bb0ee3eb1dee8cd0606511d37f231eea478172f8bcca787b80b50302047c435bb5006530630230042eb68fedc7909657dae8118195e0e9f4254a4c6e34914fee9411989f162817078eb84ca1018946ea65ca6abc6a5a00022f45d98fde20463dab1af2a88a3ce0c161aa98507a7621d330241d9efa7e06f64d5a9ac37125787c6b552fe48b3354e40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023017b252efa5870070d3fd9716bef8b1e0a8df95a14c8d62ff050f83cfec3caa40e8b72a16ba9bc7f1314b1f8e9814a7f1023100b61d8b42cf0a492c31ebc28cffec21a6ff1e20722555ff3cbaa51f009d3410a6743e59090f20dcd8aadac70bd20c0db60302047c435bb5006630640230699d2dc43305f06cde7127d2ec6a9a142d33d6702ea646a785f81a1d5a8b6f54943585feed85e8a7e97b94ee773dd7e302304cbfa0729b943257b2a4977226adc551f48fa06d4e1e39b19fe786d9289644c60980b61daed4fe9445cb86781d0ed6100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023052581621cffd7a9000d805417de752e3fb29c155091df94b53ac3c3b060cfe5c96d7e489dd6da6a686cffedda9e84f1f0231009e449adf805ac6c8efd1784a28e167197da3a2a108a179af1577bc6d1797d24d4a892e9eb9c83254f6ed86ce12cc3ed40302047c435bb500673065023100c981fd66920b23dfc65b9c59d11c60d24b5cd4f8873732c4002507fad321c828b137546e643f89c042a1668f18869f6602305af75edd1d025c95142fa378e655003a375d62cd22040cda17638795f296309bff8d8ed83d11fae3c5f50cae0fa98a5d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023031aa98522c452fdfc04c203f63c2f1aafdab0c27c16b19838b2d68dbae99c171405b8363fee738c93dac64fc8b46e621023100c6b8d95064c09aadf4876005396bd902121a91fee892bfc51df9c4f3b9078128e9f4973d30b0f0d35987946fb11804a90302047c435bb50066306402304d38908a0db4dc80969a0487ac9287bfdceaa29999ceab50c769fe52eae02c9b724b476a4725e045a55c7b02830f484102304106bf24f1e50fb2874a1d5481ec4228175aeca0dfb766cbc0164772d521fd535013e7c308b127b314d4e3ed8a97fafc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304be737a5b2d03e5e2e3fcaecfa6799dbad78a7d4950b6f98813022683d8a0e07e7df1825b7315330a948ad5d8d0239bb023100dbd038589c448ba5ca6ce0b0ea3dc430d60697ad7a4c48e36f4f327bec4dfcd9b07326338c12f80ad2ce824544d974e00302047c435bb50067306502302091f42924d0cce64d1da4a8ba9e1b94288c4898bb2b99c668ca0465a568d7a763276fb431e808d529bbf06fa5339f74023100bbb29aad904ed97f8cc795f1195f9e39b889b2a5813f85255a2ce7bc8136fea814a560e7ee01f41bceadf5ca11f490b10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bc2fa9bd9c38fb506ccea384faf06290f8a9436fc62efa4722c28d78bf81d82e2115acaebd840935b4fa8fb522b9dad3023100b71c9f299e4203a27bd49a7ae891610c5084325a7674e11ec754f5c84db8f00a23bb5fcc8bb54ba130684b92a43bef760302047c435bb50068306602310081d390db29467e5389b9d812540f8f0b2385de66ef862248d7d9acac37a448432b57e1b82e670ac56c32ec942c12634c02310098eb7129f19597c4b2e4adcbc10d692ffd67ac836245751f61a1d6d52cfe85bd4ba14168bc4a5da99cfb69d7b42455430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023051009c61f8fe49bec1516713701569f3aa1c90305c7dc6f19de0c279d046adfa715925b48fef2636bbd60d541a2326df023030495f74842b53b4b989f6eadaa3ab81fb09bf41172eec2866ee3fbc463f96347266549a209d0d3b4d916b91e01d75f90302047c435bb5006630640230499c252664b270a7d1d8576874e3bdd7c15581454215113d8193c3b4ec7b9cbe9039dab898536eb229b8113d3076c5490230544b59ba1cb2d467d9cc237c6c3beebfa575338e0a1bc6e3e84822c48ab705a339b97950901cd49ef39839520413662a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e274e2c18c741a718a0247dade13f5a0929ec0b83d61a4aca2ca68011de53cae2a40af9984bc3e60b51b2ac2781f1e5102310088c8c10062cfce3c80c1b9dcbb5c1a0c1993697e8c94ed955a71827fd0750c927c58fa5f3fd8c1fe649a5e680deac6f20302047c435bb500683066023100e5c4f7c99f1ee67edac35e47ec4717961b13e04417b06f1e8d08b88b1ec23824b2f2d87505ee7b8097a176a7278292d4023100b973bfca248d2db1b4c4459c7e6c9e3ba842829ffed12289695769771f7d467eb225e1864a66c7574609c73f6f1b16f90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b2396ef03a177cd1d4158a7b6a2e3ddc968fddce824acaacaf3fc701204d4d37420295befe7077b87c30278770a4d50a02305e91597ba2147062b2fff408ceb4d60daa7416318e0b50a1b6cef682cb19117483bc2ffd6b3eb2de2a0dd3d1cd774d8e0302047c435bb50066306402301caadaccfdede63cecb5a82983d095197cd62a44de4db921c2b8aca50d970d5c3cf974d2648af08f63e2273d8ee3e34b02304761a09c43d5d6dbf484e1294e10f923b42c63aae310c8607bd7bfd38894adb62cd1c98c45f264b75b8e31d5427f36680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305984ee4b9bf608655c7f10288b7a25e6b4b17aba1445cfc2aa904e7a8e9ad93963ad00e4664452787a05be41c4c5805d0230505ab4493135374f4c06f97dcfa4f2c2e63de84a808e73d7e6de8f9f56293c6c6309c5f06251bc6ead438788d90f10580302047c435bb5006730650231009d27ebf456612b8eeb653b8331184d6ed4380decd8b8929316e328ac34174a9cc671f57eeff3c82b208c22cc763d5b17023025227b5a8d797f12b10e3d58519d5ba5d02c37be72ae194a6a6f72d518d4e84e1b32dd7b6fba4e6787d30e2fcac792570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dd796875516e9eaac43661bcad0d53422b36968d86efc2f5dd691dd42cb11aaaac5fbcf7fb02752960ef5ae886261bbb0230750e39742e30b5848fb49daa4510ed93ffb46d9722eff0e90d5ca4ebe410df4349299df81c54aff2d4c66da2cc91e90b0302047c435bb500683066023100e3dcfc9782dbfcc88dcd1d91801a6b3ac08ca69b5ad7249add2fcc82f235d610e7da00cb41b8210919ea972e7dc7d275023100fa44ecf902e17ac57a9e5ac7010cdf492f48301a4ba012cf3ed2b49865f35e7c4a4c47ccb8064e79e4eda739cf5ed7390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304f87d56060aabff572012bab3ebda0e0a33bbc4e61e27d7232f8b6201d1a44644c5d077a7b44f03769ec368735707e39023100a5bc75840b48d5c98b48b92db2635cce6ac6af304154e1b2ddc0149c0bc74c708c71f869b880bd79fd09ee39e93c9e800302047c435bb500673065023100cf0daa63dcee4f9bdbd6ff107a3e180ed17d3bd9da9f1c37f081dbc88931949fbf1ddc314341dca6dc2200b99e5f18db023068a4dc4124394c8b5811951531dbaf1088558a4400f881f166fee37798653dba67cc93cc16917cf2e3ec74add4b1555b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023027428ac3259b53f03583715ef9cb833d1f80756f5a001fafc6434894f5f906599aea241feaa0db4d5afb3330006f57e102305772d7433d88a607ad77abeac6ad207157d779aafeab09a646fa3be55b7829538fc4f8634287e12cbdf7fe4f6c7ea95d0302047c435bb500673065023100f8cf510e9b72e3a86f1918ca2cf4e44f0b5f75771ee8c7b78f052bd1da47cacdccbb8e9efbb53a633c6671174f9c6eb4023045576a68096302cb289ae4bde192476dd3bc87cdf7b16ea9d339ba996af4c8b733dc81fe372adced61dd1908103657530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306bb39faf0372f2fc4171cabe5fc110f34c717ec556224df5660e36b44e2977f857f0834905b47629adddac18d0c441910230385c96e8bcdb74c1dadace3d0eaa54cafe21553d8fe7277570b673ad5ea76480be9abc55197a78c25c453703a7dde2c80302047c435bb50067306502304060b2bed31a346dd25862bccb81676730923c43a9c69006180e2dd5f580dcb4908579794e7e089088bf0ec53cf5044c0231009510b018a191058aeb5fadc7dacf1db3a16ca531b6bab2ca4b6c80f794240cfda3045db18cccb238ea7dba001e8c55a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e4d774bf46ce808cbde64b2585ebccfc2765e8ebdab8caf45d344184acc829062a35672c999cc279fe50daaa5aca3b75023100a0a8c45ed96773f750154db8cecf0ae98a39e06ab037c4405e1b02f2450ddae87a9e43e19c79eb8dd0eb85b4841fb66e0302047c435bb50066306402302b37c20653d52787ebb5a7518220c59b8e914aceedcd0cd9e0720a045a1f5c1e464ef5379c90fca2df874d5aab439cbd02303fa3b55c402e871915f992a269b10def545078c9b37c68e3a29794e2692070c4d6e9feff354218ac161f308fca46fdd20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302eac9751072f64aefb271e4a98453a5016fa5c57d3eac30fe085ac0e09bd4abebdc11adb05f36c205c5f65811a69a058023100c368f68d57ed0d7615f022cb183bf7cfbaa7d811a2d6df8d0436cd86b972f5fb9c5e8177312244ebc0d9c0e2ee4684230302047c435bb500673065023100804c848dad8f79c04007e4cad8838fb10f2dba8c1ff2f2044dab2a19f6020510605f0a88ad03703da7ca851f3a8b58b8023018c0d63d02878aeec7550305b8a83f75ac369e240769b034b1595e6a49a1bc5b8aa2fc4cc8d38cc1fb1a873835d432480302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009c63fc33542b204a9f94b9af3078f7dd98df261ffa47bedf2d0dfbca7cc2d3233b9111e3ebd38d12d7fd937017bfc28902306920c7389ecfc2487f185f4da8a70bd1e5bc512d18b09c6f2ea1629b5f93041994e4548f2d855cfa7c9f0e923e1e361f0302047c435bb5006630640230691ffd8c9f71d9458ea0223081db39da13e6253f380594147ed428a6e5faa0e9354c0cb204f86abc342dc43122919db00230117ee468658a3d8e1973f75711e8c5ea87694ea5a9096be1fbc492166f98638fea7cc5e8aec61fbb9a55ab7a56a556a80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f97ff2cc8cae2858d349c1a7b22cfec5c4d3cb6621894510c86dd59213bde5d8667e62d6077c03e8f012e12a055091c40230562a57847a692b0be541c161aa79c9b8b8b1153e704cc6d9402215a60ab702f9e6da857cd907a99e9921109c95c4a0130302047c435bb500673065023100bc583a39e9fbe0d625430929bdc9523dee07dfac9c047d126c1163aef973e2f8c68004b50a9943e718728c6c9ad2c39c02305816523649a554f82e07894610886cfec741d888cf504bd353402d644e6b2f2ba447c8820d8fb3e5bdd0824af9640d010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f94e4da49fa0ce74ceeb71be310def036ac4bb35cb42dbb3027b7c9b8101432f3102df4020761499f01928de367cd65e0230080cc49af6239986a8efaffe24e90909a5b2d0cf076a6b04c379be551ab5954f69afd18bb43ccf2b5d7178f8a98135de0302047c435bb50066306402301d22727759be557e7a263a8358025528b505848bbcf69ccc66d1e5ae3d00b8841b3e747d0dc0df5bee05030765e7bc5b0230223b304bd6493517cc6d6deead573f3d4c91e1c1527d6ba8f248b48fbb9cac71f38f74a59d5aefd3cc37551fc78188d80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cd2273a71e0dab2c1ef2cd2f545c70245ef6506ad826fad43088254b5e7470918523bcf0ac597b70b5bf80a1a8c2f1720231009264ed55ca2948ec673f8ffe224fedb1729aa6ecbc01031b7d600d1fd2f413fbb202d9b82a2e8e3d31d27af8e9eac3530302047c435bb50067306502303a29be892e051ccb14ed4e5ae060c0834ad46afb26f5a7a5a2c8827df4c3bfc8d665c5039160d4d6c349672ae23d74b9023100907d08926cd5ac13ac934d7a8de35b027c8d60e1f22044f48aec4b4cfccb0912fa28de635a517f19a67c3803b79605d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023042ed9583e2919d51f18389ae0d8ce34d659d1d2cb488db7b1dfd886a21a0f7d446f2373b25017344afe019a6ddcbc0a302304d8f0320bb8ef6be84fc2e272b9437333a170d71ffdf4ee47c4b4f88641eb49351daa730e9466c06ce3b08de0c0d20df0302047c435bb500683066023100c8e85f87486c4a5b786936a2d94a72f3c95e6817df6becc2357056c67485967d60f6a9092af5f43243a8f67d99df110e023100cb998618546c2246a984aaca2d186da1a8bb216bf40a847e56ea7770fc3c620280fba579b41d10ab72938be4c0b657d40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ab1accbcdf59ddf0a0c3120e0574ed3d4fa69b5ae9e8ef6d8efc09a20311d9b94cff841cfd785b6048d5c6ade923254e023100d800220995fe7a337e1db24bd4679ab28058cbc92c874317b20c269e4910680a1df758c149efc73a9e8b3c887894e40a0302047c435bb5006630640230026b115a0e0ca4a0e4f95803e03e8ee6276ac2907dd1cd44503f058962e48b734223563db766ed4f7aacd0ffc15cbad8023076401e26c8df228e0cf399a043d111231d6f33ae533bb74dbaa50f50c2b1820eecd9dcfebd15da52fd63d77b255510cb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d4cbb5404b1a5ffd3c95898e58ab97898e63ce787cfb27856cd1fd2572f6c8b057075ff7a3b6da80955792d23cc09c66023100c1cc38ec21ee0c9ecf01ff8a1ce4fbd54140c5abc5c6c79b1a03765655211009a683230a6f4524d8a7d25bba733e2dd30302047c435bb500673065023020448e7318219819ac5f08b052c64ba704cf9cf803379c5e2f8444eca72fdfa05b44fd124179aaf2718c6eac15e84e5e023100b451232a478c5b8f738f8673cc7ead26536cf2a0b48305f431b52671c4b9a2339f85a64f56c28b0c908df0e58262d4520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301ada74d994f27240db0739bffdd428d9cebc68aa761dd0a60c5a62a91ed9b1eae7ee999b3c9b5198b2f6c9cd5fc0b0ec0230087121cbd31c53e9e1d06ba1e50170f9877b6c524b1656f72d1a1d3434ccb7f923fa3a54817bd7427112f0219dc4a5400302047c435bb50067306502305f8e5ba824f3ace84acc3059432d4cdefb18a94a093a52948e96a2af04ac2f7e54ec8e5a73b78360e70ad18810c685ef023100faf70413f1a2dd3510a089b0fe159283cf10651bd0a61907519e3b5709b7b75038e30179a1ed2810c9e25111757fdb3b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310097305f0bda7674cc2f55636f1ae0d5ef5fc85ceee23874f3d8dbe707732a4c1e32d35065bbeacc3bd308228e3356a5d5023100b0af98a1ecadeb2e02891be1d7a658cd809f6741fb3548522f5173f45a30fda364f61f4c891c561d36915c2f8fda59020302047c435bb50066306402305aecd72265bb68f30670ae283e99f0538d904f0b1391d52b13f9313c5385e3daf34d459b54b9276d437b5182cbd4cbea0230214750c9cc62e2de685fb5bef9c84ec87442637b2e0b00d7ef53a3be319fe55e2b193c97840ee86a48703332f620efff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100efffcd14ac214fc941331e19dcc70efc407679a37bb67ebc67a6a98b8ab897b37e90ef5877779b1e84c7824f1050b07e023046d7492fd764dad664eca7d41ef8f13b60c59aae2d59d2bcf57c4a5a4efbb3f7bb02e214261e19c19f2b7f855e3852aa0302047c435bb500683066023100ca03d280fc1f588e38772fa15c96ffb254cfaa8141ce484353027d5cd7ea943ea66a84cf4b3fc469b33c244a8cc1a4c70231009f53f67ce80396a1a11bf7c3926ab0ce1b047286fc691ebbd916dd47faa1e17f77dd109ecdc54eebf7e83e73daf88b520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305b24df2b0a4afd72cb453501ca3d63cf2b3e593df35318f6c086cee02585a58298b0ac4c03e001ebd06d735959ebbce8023100905e5c63d8ef5f2ed219a777d8307ad397b572c91e5b17ec486a302631838acae6758ea2423505c4985d21fe5c8c52fa0302047c435bb50068306602310091a7ad59081996a02d5c16ef5979020d5fb5f2bea31579602b30e2d93b230b5e43ee8bcf362ec94bd6fd2200322b4698023100b93f3d49071a63dd95eb5cc3e10c722ab21b76e1d619723e854e2ee4b9e84b01f5ef1eaa4242f4c4ff4eb66a41161df00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a3d1aec9adb6999e6f0eb37597258224ec2d7a7cc5746ed4e431036e7dcfa25beddbfdbe5df1d2609481187cfdbddb7e023100f25aeadf26c6877a16eb5271899cc750efff4fefde5804188e1fa36be207f924d777c5d2a6e24007e30fa0f1d139eacf0302047c435bb500673065023100946ebcd381298a10192c28655b1a49352f69177bf201fa89267db2bcb8aa1320640e06a8d2cdd89e0115a9c649a518410230714e1d2c4bcf62a5db5aa955daeaabd07728404c917c623897529170655197697b304111d6a91dafbcd242c05516977b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023017a11204d5d46aeb18ad6e93666aa1e9658752c7ca4aaf944a595af3751348aba8037964dada4538a0eb9d4ce6d7321c023031d4e440c4649afd01509e0c77a3985c86e17d68b1d5615fba753784519c22dfa8ad78d3e15b5b0022486581791bb1380302047c435bb500683066023100d8039fc49984752a33cd968894ff76f4d1531275110aa924847808fc8c8bbffa1ca2239cd671aca49a30aaf26808c05b023100a5a8004de1344eb37c9ea1af0dfff039f5b36809d986f77db05dbc8c473547dceb2c9cdec387731b78a581f0a7076fd00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023002cc330fdc188eda1c2ed7ca73168bcf8765519449e3bcbfa1327bd626bca8023cc80958b0044c0958d588b5213f2c7802305a40d5a758ed7f564b03dcadefd9c2bd33a054e53e243c0b953e05d9b53f3c87d39c952ef32316cbf07091b9d31130730302047c435bb50066306402300ac39748e5e44a64b7b638346a3936c3abffb63561abc26656e0de773f5d221cc25f3f73e6b19795641d4bac87248f3602302c0448b3c895838e12b25cbf2066f5a2567611b0daa1e4e237d9d68e64d1b8e11892bcb7043992193820459f331bf4200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305842c5a9f0a172d9ccd4abe6f8b9ee1baab38574dff759ba96bc7aeb6c01f767380aea825a13d7f26f34f3ac489c5173023100f08f24de87c0e2d98fc0b4a9970f5d52127829f6f144687f09d269116fe4ee73326f11c698717ae1b49d7f4be0302b110302047c435bb5006830660231008ae61eb9f1419579219aeb4d81d4d81d75e3755e93586f2e1412229608366b159c33f99edff9b10fe8f02498675d06df02310088d8c0cc39264de733896b0efa47e4450e1c02b2feb29fdf7d8a4c4150e951323085010e4b70c2ed0080872be3ae484e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302b2f1065c0f295ce5379db2d3a0621b958caf21d933d3732130860e0f6f76160212402e6301a623d891a7c2bfb548ee602303637e63d967ac6c5a8394c6d518c13c4bc8cfaa7c8a90f3af6da65eaf7626c911c8d0e8a3042f667927a4ed7bc825f870302047c435bb500683066023100f4a797b4d9aceaa7b881cfc6911a34bee3887bea619a238f69f9aa7d5b96406acf5c16af425409ab7342bcde4765d836023100c8e645d6d09bc9b5bdf14bae9be5cc696566d1471064bf294401f4413807e6ffa6e242b3ab75edde9d3a3d7463f6dcef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305a3bfec409181d31a860cfea6a43b6a0a47a4373ab8fb1e4ea4f1bf8f9f7a6e47f5df3ccfb00fc0d70a4d5447ac4f93b02301887c2256299cac298eb0f29f50f859c68e54acc078a57a35c0a7ee9903549b92fe9c4cd4bfdf17911148c6bd20ee1f30302047c435bb500683066023100c4b5330c2bc433169a6249910fc8ea3818c183e28f6702e55555219e36b4d5644d49ebf1c6e50d0f40b364a829d2aa8f0231009700348d42fd86122fc0b96b5ceaf8331656c81197e918686a5df09b39d2b4bba7694d29f07c7a70aff8a7e55f3e113f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306caa8dbf0859b2af45c52e18f3039c147b3b7e6f119190273f58f1001570a4662c8ad460456142c7b5fc19814f5e8c340230443ef13b1b5bbe43f31365436ab61c6645cd622b1b647bb9ba2f4d7d2cae261ed0060824fe930a8273b7ff6c114460e70302047c435bb5006830660231008bd69c34a09d4f06213176b8651c459b8c8764f1a325f57671f4f877ad53c7f8cba35b4d6704d6962054a176b412b361023100d80c417e3ebcb5c095c4b1f37c204f22e85f2f70528c442549dfe6d2af60b7a9da9d511c1e12d5703f453153683dbe910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230611d15855d5555691261ee8266f5147483126fd07239374f20935a03b4e6a4e102e4866ef10497261428d69332dd186402301294ac1ae938b1304c58b4256a5e542e5345a2bb6671a4b5a2af0dc05b3b50cbc79b636ba81ac472a1319ebc1bb9bd590302047c435bb5006830660231008589e616a0775812b47defb70caf41978199ae3792bfc0d0fcd01f45fa393ddbb709f382e64a31c1661cf6e04f87278e023100fa03090ff4d425e7c8ebcdbb2367a155c110872cc59bde30aa3a71935936a9ac6693025311e396f9ebb5211de25c87c00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e41f52f1e7e024707a48cd0ec0b8472c0dc0f9b4981ee15bc328daf29c0e85b49cdf93f6fa8e48227046e2839155c5f3023100b5afff23ea83218c85717e6a5b9f9e44d41612a7a02b428f9f00ab9d26c2563dc75eb25d71cf5c0829c18fcaeaa5f1ca0302047c435bb50067306502305a0211a71ab9a0efa75956c20a4f8171807ceeb1a35321a6e8c05e18a999b919a103bdbb36783abef941eba968695ec4023100a8273079572f155fd02c8216a2e16570ebe0aa6de174a8294111af308d2df51ce3bf30165bc71fe4429a10e9728037930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fd9b16e783614aa316d6c87062ca59b0103fc36ce8968b3246289c9b9b3349c94fbc4af45f061f967b2670efb654b09a023061184b08512f2f8b5e52c988a929a56f5fb5da5ced1e660605c171016ba7c50f5bd5863c7a7b7771902019a50647cef90302047c435bb500673065023040b2dbd86c616b335362bfe5e01e66f3ee95f9af499e96cce43b0ec043373a17afb4538cb70adda5751b6872c95f3a74023100b7663395333c95d00586c1efcb6205bb03ac88ff98378f2c1b9164f685d2046222967e7033b767adf3b9332b36f742560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303099a460363682b6a6bdde8540444dce5289062ecd8511f64912355eaaf6df8d9775bb78479ce1265b008dc3e94ef8f2023100d53293087cb52154010a730a20d2869fb487d00995e8775194792bd3749667ccf9a70f175587735bd2be188c610dda740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230675e315bd4945af76041d117657eb874dddb0d67f448600e3d11647d315da00a0526462cda9b417769af8a03f59abcea0231008a8c125383c37ab9b66a25323dd3f53030c6b3894f41877475cda66c6e6f5f4075e9fa224446723c826927f79f50e5600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300d20220f091b355d9088ade5b277b4e87044d765283fe4977532c9f373b1668a5f860238ed375f91ace155be9c5a6e5b02310099948fb7e079645b0817c464d62c0d5af559d53d7af9e88ceb5c0460857db2a950ef56188a961b0b846f162ad0bfb0de0302047c435bb500663064023006a38dd15984a9be9cc2cf2136ed255473a1e7b0be6fca51326b461f8122dd9026309c607751def9586d481288d07566023027e7297e9f51ac51f69ec053b03b1835a0f2fd592c1a5f38e08080a966f7ecbb53830938f351a16b7c85d5dff5b9487a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c77a0d8c71b9da483a49038649a4d839a2fff069c55a6421bd0fadb82d3dffd75b10fd7395a0369aa40133595b27552d0231009c0defa11586b1c99682807a4affc30aef4b0ac4ae28ae46e29c96878308979c3c80bc505f01afe15eba759bece953470302047c435bb500683066023100c3f43edaf57996920dd4f07b8edd19f5bbc84a41bf85d3d8177290dfd3d3c5ca730349a53788256809ced12898d38ef0023100c755ac633867aa1a66c870dd9c295aaf7423e87bd59c54f939617e3f9503c78349f0ebf7d0f24fcbc8356079ae2324e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310094f50b62ac697cb5dc7340b9ec74060e967c9c01d61b6e1de0fcf14f96162ea03ddee4f7b45071c2455a3142bbb5b91302305961e14b2ee5b0620c568e3d416ba24149b437890269bd167afe5f2deb66c01fb5f0e83f86334ab1a856ee2062d2b09a0302047c435bb5006730650230599bf9c702f51b781b89f2da5f5f13d3b40a127d1f2e5ea3541e1018afc5ba4a2cef841477e42faeaa2eed3293a7f981023100ec1203e49af1510d162102439201b7db02097d715127a587339c2a7db51929cb795aacd9a6ad19e2b75a4a612adce3c70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d874c5c8485cb3a61273c46408dfd86dd245000250c8333d9cdfa41234466e18b345a49ad6c719b0240c69de31bf433d023100a63809b8bb2d41f9a5f3a9d6d31e5a4556e2d38a5c0919787be92df0f5ba84fd1d883662ce770b8661a7e75255ee7b3e0302047c435bb50067306502301cb1883e85b3259a76b06bf354cc51bbb91a98e78289c4a5c3976c2ffcd7145eac45bfdbb2e44b001cd82f0cd21f2902023100b3a34be86a94bbc0f793837a4021ef7acdb6d97d549e47a1318fab3a5c3f0efe3257be0793142564aac3d34b308495720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023021ebf20153251d90ba0f99d9c722cf2a776c0a8907d9a6e90599164c3f7f49f6a8e92be1310da2cd6b3ae7a4ffd811bf023046cecc56502bd23ce24b26ac5290b0a78c6c2c020b040bcf6e3b26602ef485600b89265fcacfd09ef996ce39261375b90302047c435bb500663064023066cebbf9582dfc44925a9c81226b179e1f3a6e8f26c2627565d5283c95d97893b0a50feb910bd1712f3b58b78b6741bd02302847d5d5c42fe0890ed36991196e54c9a314322025489cd9086403439b7dc63c37e85ce8fab2004db2d120eb2586c5240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023052e1663392fd85101e27a4bfd327d7252b7cbc4182434ee05e5afbff602475b125503cbc9bec6ce06135bf419fc5d2b5023100cc7304c459635120da75f5ba9e84ca0479218419c2ea78dcb53563185598ddfa5097bfcb06606831209cbc6a6f18b8520302047c435bb500683066023100c61dcd911948aa281f75afc53045f769fb37b5ef876ffca790e4df82089c792b81d66bae3b9e67621bba4a51de9099bc02310082f29bfb7c8c8299005c480cdee5f831ba333c953860b929f24deffab5cc56549dc9738bcf768823a4bc011d162fc0270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ddf2bc1a4ef4a7f8818a0c3a2fb164338b5b3323717906e616b108217de2722f8c609f8e7ef1b004b2d07c5d10ab99cc023038e28bb03e0d38ee47fd89eaf5880e11634aa0b70a7abd5d7e3793deee1f6c95a24e56892f42d97722b32d9cee971a370302047c435bb50066306402307cdd38781dede886b36339dba30f395976c2b27337ed25e86fe6a00b37db85cdd6a6146734faf3ebd659a19b0be4850302300381fead9d2e9c6c67e2c489d1043a6ebe10cc631773720c33a06b7ef08c67bdb941cbb71e2465f5ad08cb3a7bbd06320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305592aaccfba623afce4bebec487469e8b39cd1a016225eb20d1b77aea64ee9e4f006c93024adc6f3e87d511f1a9b5f4b02310091d529be779efbac62b69913bfaad31975f9b71b97447fc11bd353c60b7c1113ca0afa1833586029afe3f9b7f6d4d6860302047c435bb500673065023100d36dd4708fa78fa245c056ac4766a647cbcdc57912ad1b7e435f971369931a06ddd0d8735ba79d716cfbdd0c0fd23ee302305b4cdf52ad48480e2c2707abd3cdc3705a94cd3f18af9a034a12cf747db1b055c6c8b412f3d034b1cd1acea035bf7c1e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d4507a22879aa274a9819e543d8218e73e9bb9c83b09937b2658e1252a8a0aebe67d4de37b971c71f41ad4215f7409c702302e8a7f480a25b8cfae94f8345b11ef33265bf52690e54f052e79645fb776591b06a73414f1252a775031b96fc631eb8b0302047c435bb500673065023100dd7fda3b820b639c8e375123ce86a3415256c588edddcbb14170a7f8e361bb2558eb9d6ce11ba2b0706107edbef621f80230216e993862e871c4834c08d44e9a0a8b0bc8a374cae4c6dd8396ce2a3f9a748533108465af73781726f7e618a5ce90640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302bd20f1f1e24c1e874e39c332e4838993423b516cdee4961e5bd023d19069f5799cdefcde55a9e5e363d5932abc869ed0230277b2ee5f4a6c3dfac3f48a2d0ebce72b3f19df2044f483fc3750d154379a7fafb8d04af37e9aafe8c9f2b35ebeffb560302047c435bb500683066023100a5ea9774a97666b729bf11514a0aec6b2115e9e09504347ab0c3fb7a3046687e78041e1e1a43ae22a43dfc197c46d62c023100da33c4840cff4379a4228b32c87e0173bed505ffec46e39085ad2132eb34ab7748d17fde2cead9042a403e932ee1f0440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a9fb30d6ad14cad749f74c57e4d7de24fe5883de8c3ab96ce321d3de701ffb7900581bbdb4e98affc280f4213fbfd369023100dccd8cf9f30c5aa5c75cef33689b91a240eceed16f293d01aa90eeb644b7c057a050a5b0b3ee09efc4f3cbb387612a2a0302047c435bb500673065023077bfd9f77c3e86a4cc412787508c5bae0c7ededf10e03c2d3b518746382290a713302de7db9d3c196883f6dedfc20a48023100f5480840961ce2561966bd923710d1616baddd047b85de93e003b14ad7dba84d7528256bb0205dbed8f09dd9fd8e6b890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303a16c3bf98a7643045af51693b0fa437d6cd67aa1dc1e0c6760c0db999c56df2d399c4c35a20a5b3314883a6efb8b50602301f860b536d1ead9a1ae12785c1d267efd8bf37160b7bd319c7c040685660c9ca04b5d111cc5bf1b923d0185284eae3330302047c435bb500683066023100b7ab31879cb1325df2ae89e57e260fe2e1ac68bbc704b514dd321aff3f45d58c80b5447463a60e7d64fd5b4c56acb7e702310092bf3a39d0d68cabc8c0f67077451255c58f92a689a2827d02c9e90afd8beb953db627789c280c0285942cb3ce671b150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307e905255f32a83cf7d85363b5da222dc08c2490ebe5e921c55ba079642224b7e8fc336c1ac71f58a6ab9358140d1d4890231009758a7499e11d0df58bfc78f57bad5e44471c7f51e4f3ca73035a62368dd427548315e62e4c28ac56fcc201732b79e840302047c435bb5006630640230080eb550785349d9fa8263321eaabbf121cffbdbb3632039031626ad3dff0e743bf687dc23c3421fab15de057e9f862c02305250f4e872b19845533bb3a1058836ad8287fb17281933476a011300f74759da09a4456b0e8dbbe213ca232b1b4ddeca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c2cadb8f7543cf20e813342f003b05b577e8c138ab2ea3f6d36151138e5f1f6c0074f9ecdc40d8a3d484227ed3708c2c02304fb92ab11954805818403c9fb9acb1a4c8d85acbd21f8e10b17cdd3e5c91b89597d7b8887cec4b923e4bc9812fe999ef0302047c435bb5006630640230555e752974d601e7da303e13fc05e761b726e1e0990daab4dc860fa13dedff830a6fc558b07df918604177d4a2bca5ce023066afb4eec3f6fbe57fa7865b3d3df67e1438fcabfa9276ace45032540358756cf154aeda61d6088e008f34991cc80fae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307366356d20b0c23de6c54b1f8828fa97c32da07a996006cc7137801f97696a9a4ed888c5862c1fee9435b0c4b4690e000230541abf403a3c13b8f6d07983b52eff5f0db61772ceed32f36e9de4fecf1de141bf96fded39c3f5909b17f5ff7ac3a2eb0302047c435bb500683066023100f8e99e7112daf20fcb93424d675afbdd1a1467a0319406d3747d7e34fbff7c3c3a21e8703ba9cd4b2541440bf777a5e7023100bc0dbfe35a79bb5dc02088d4b8d05d4f6b83da6bfcdbdaf961dd688c6f7813916350c7e111e34e1e897a06f0d5252a6b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303a95adef4905a4fd20a7ea8c5650b51be7517a6a3b4287decbe524c82602f67fe627066462ea74c58629d5512ae8617f02307a1cbb28d8bbcce41b7a0599ba1ad745dab4e1671d23ccb793671dbd5976df31f9c65ebbcc617407de9eae48f530524c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e5b8157aa815648a3591d0bebacabb00732bb478b2ae5693d2cbe66a8c8d9adfa810fb8e907f581dc43bc4d77af06688023100cd96944ea9205643daa3105ad65bbe2cc745ba7d8bc3f522d9d4c1be58fa768027394c6b02486849e7a99b1db81643c60302047c435bb50067306502307b90e5355eeb8f2596f5087e3c5b70107bccc95c5456e1ed9d46bfabd3b21056019a4cb372dcf40d12970f85b70709da023100da5f60e620c50cd377df6a3f61bfb178afb22a754b10401ddffb1056f0f6dbb7711cf04d681277604649add2e1c131f90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d03e4a4f916ddddfd4994ff00eee24a4989261d3203f1c2a16b9dc5d39528318c4816a93ff0def3c2957edcbaf00bbed023100fd28f74f88402dabc33c94fdb0aec9fcd0c944390f7bb8372a2fe74ab76b3f31a0e192c24e828d0cca750e93460f00a10302047c435bb500663064023024f59c8e02c4b5f69561a5818e407bab56fcf8ef42807395ba2463b06fc7690f24d470b5ccc925d94f13e489a790048702303b6df168acdb09f9705fdea65054cbb7a12be3746c4f1a1b443d2ea4702484727305c78cc184023ea38052f668cd316a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304d7146218b076e748e030c68d44273b3f42411593ffa02e3a366c426fc526caa1f4bca62e49b1d4610dd927bed3d5aa502307add1f00f92061902c0720b458c37918b85e28288e5475d6c01ca366fd09a88130940dac5cbf83cef95d9b5b44031a980302047c435bb500663064023062f81c7a70c70ea123acf2b7046dd406e02429464823d2ca893aca5a9da37ab9fff8aedc25f9022357872ff9532b376e0230371b3e2da0a61bf43c08b6dd9efba897afb05a45eef068fea619f249bf19183c7384dfa3bac0f6bd07e32c9eca1e76290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023039bf9c324da40c0bf14123e566d9eff9fbd623cbf6d5e4b4cd9db074f1a4ee424a93f9586959920d3406ed6bbd70b139023100b17ee070f88f20067126f7dc9443986c4b8eb46babe7eacc60477d278d322e03b959fbc933a2f8162d3baad13606476a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023050dbc8500eeb1699ab8ca266c7c4cdf4c68e21caf12ed957a99b3841e2dc1fa91609e756bfd790a64c0de1729adca5c0023100c95d3f16f11a9b494d1924b996f6561fd091ee2340738e5b5dff2fb1b6a27bee4b99c5bdc681cf890555bacf6867b1510302047c435bb50067306502305c3d262ec0222ab5697ebc67549f63ffbc0a54b9db9b1b20bc423b26b2f03ead8b23e5c9791b5e64047282529cb8b48f023100e19acec1e944b0362bf3ae0953ef8a5864e585750ae1ad226405a55f188641bbf614673657a9c491602a25eb8f04d51a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f7dd1978772d3d1931b69c9203b95fa7fa37a141ae81d1286c92be25773314285a9157fc025912a05b884faa2e13be3d023100f7009d2913bcc6f9e2ad48a7060fbfa03cc9982a6c3c7f36d3acd3fdd426f723455a8eb85e75c84b0a62c3da60dc2e510302047c435bb500683066023100b75264754a58841ff61d84fcfeebaac033f842caf51b40f710877e17764722cbe7f78ed32c7fa40b8e12bbe6f8a6015a023100ddabbec48c21a1183a96142580d40e664f55c4f10a06ebd3dae4bf2fe0824816a00f628d4ea4417bcc4b4f032b7720030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230147bb85cafcf5bcec7b033264bf800018df3463adc6c56fe19bc0d859322ad777d3d9ba8f89d4e5d8c7b56742a959354023100c4a5245f87c5cb9b75eb68db408fe6ed7d4923688939e49c3bc3eeeb56ec03fa7fc12abba38aa0c399b5a7118a60c3a70302047c435bb500673065023100d25e9e5da2edb3540ac3b962e36cf044b605c57aa4c68e36f8f8a22a6f9f6766906e138820c78b155487efed809d37af023005ed6cf70e59118b03e3593ce648931cff647fe339527060b9581a33189abb560c84392850369a531405171a3d8b5ea10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b51e122bda871583ce5c7c6786ffceb9e24ee55adbc00f34cc7769694b3efb78e594737bba93737aa8b6f7d1d1418316023100c069beeb84d5d5dcf49704a7242ad5026fafd92e2365cf83501857eb4ec23918d105a0cc0edf29ef5f4db91f5b4313b50302047c435bb50068306602310091813a31b0b7ab6e8d3b19b464f2f4da63f5acbcbcc2fd54d2e6ceb6d9b2d3c1a626cd4a55f11bfac97c1ec56f028fdd023100ecefb459981ec7d9d11b1de69e3dbef5b3712fd8609eca019447741823c8e85fd777f9870607362e8c3cdfb340df99b70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a72efebc7982ee1d0ac68e25f5a0539dd8f0f7339a1e4b755db3ad8a07cb43fca64b3e1154cf49a3398b5da68305b15102304908369e88a5f33778fefcab7dfd76c2c0572c354b17c49e91bf4924c5c9f9d97a2a730087971fb5b5b78df8752488170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304af51a7b1a64f1aeb142bb1d0d7cc5b931aa7e255f2692f94c576a3eb609c8b7ce64e8b88feac5b9d3bbdfabcae48d0502310091fa9d9fecc14bfa22d1e6569b56072ff1799ac4c4e241eb6d88d4c69e5e384e7197c5525e08053ed14ccf56da9d78a10302047c435bb500673065023100da078cff589c27537437436765db7521898b5307e611b9bea0204b8fe6316e975f56dd5e2a5139f4110edb24fb7fbcbc02307ac0a95846e6b8925b44532794711fc765c670946a492e3a6d34652b13080e09561335e9b85982687782ce04da47196d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230328253fc8751b768a774042346004aa3815baec97fa0a066c793da2eaa76ee925090952d84c7fb80c387e9cbd31dcea7023100d3a6a196f627344a4f75ce0049fb459cc0c4ec2792ba20896315d809ddf3e0651f5078ad392f7159b8d90d9320ff006a0302047c435bb50066306402301df9d4f064000fa21a616d0f6441fb7232cb5d4c564c39ad172326048888fa7baeaba08d05a76495b418b2c30731525802307a874c36155b33a83f5c8b1342a674177da6af432f8f419aff239a513e25db34d7c84c28fc8bbe32ed546dfc410de44c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b450a8aa8ab6703caa57e2b138488a8ca39f39cca15dafb544c22ac02cd865251eba09bb8d5c27bfc4a039951a26a0ee023100e25b4bc8da720340f64b3e50adccf0863156b202b9c5386828b40a4341fe97400420b04c62dfa46ea0cfe29cb3aa09c20302047c435bb500673065023100d76eb2628838dccab6e2e1a9f1348a7f28871a5d9fe76883f405231202ebaf73f8f9d2009187b260a3c729165836df7702305b874610ab191cb442ad04f5fe95666f0a7495ed73dd56f57aa456fd783898b1f8f81298f6075cf0458f8f2d6e57199e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b9c1c68b88c9303c951e375e949f5561529016de121f14408cd4b3ac1203d015919b42234887bc3a991fd75b69bfa1e402306cd1c291ef9579fa03eecbc1d6115d0543cc2442ff29b08acd90f23a993ba97273b536bf1366af3ead40d01d96e6ab050302047c435bb500663064023059fd869aac4bfc0bc4608ad1576d96c5a51b046921595c01fbf32a406b98cd0ec8577a3888f8742483f8c0df92f522890230490bd6f743aedf2715cf81d99f73bb0f340a4652df3fa644f538b4f1aaa7221b228919be2df863b9575dcbd99e22cf460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230181a18d7f7fcf4d376c7bb16a5df233bdf9d86f4a72c00bf5b83d9b086b2441f20f6d5763866efe835b4dd3a4663728b02301439da40b6cbacfc8a6a0ef8711d8ceed975a74d35025324a5f1b1ea001d28c3fb9680b8b8dadfa643a0999c4b0aa35b0302047c435bb500663064023024f45dad058b8832f9d564dedb52306002788d2e159b73446841d84e56326dbe16877d2e2a74c300e3420de025837eb5023055d4d8979745194e6e14c013525a6eb1b9692a4c95a8c1842155211ec93ae62a9543e332518d2e36be4a3c98f5ad1f1c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ce9dd4356c7f2b220726eeaecbc05ffe9b665631e9bfcb45f7a26c3a4353da5a1d83e1b9c2917395d379b201b54d6852023100aab16267d9ddeaacdf7624dc62c4ef65cc547caf9bbf694cb622488218dffc1772bca65ce562f81ce1fdbc9524d314480302047c435bb50066306402306d44e065d9d7d1586635e166eeff909ccf1d73f67645f38542166cb823b233835b13e0a3e96049490c4d1ceefc28a4de023017a82ceeb05804c6e5cbfd6c40fee5c925a25a4cf60eb00bf47e8ba25f8b7d14e7dffb30e206dd5fb2d5bb94ad2d48b10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023061ad08e5e3decd2a1f3bd9624da1ec222ab5be559468e0665f78e984e94cc0b224312ae60d100a9d123a415c825f9592023100f24f56e9e301574b2adba7b291f567f6fabfb754b65502b8d392026217dec8491ece35b8bd853f56cb7aa2774fd1dad50302047c435bb500673065023100fe2cbe2eb9b3d275694a05404321d5695eaa8955f890634f0663fe468187147d1741328dc04c904a25286008c74ddda10230534e5476ba93d1aed1f80bd101113d444d06329aa6c7f4802e28b493b84ea89ddd5e6246a3ed073e67419a073073f5150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009cb9dfa6df80dbd8c3af680fbcae8d69788ee0e3e30ff66d433a32cd39da5a2d4d894c556e4efeb0e4493853a7fb53c5023073019ec12761e245f81377d3feea27e2e8d13a74cb7c7b5bf628563cf3a0663e99a1d719cb09c3af9e0ea49e4b7ff84f0302047c435bb500673065023014a09ab26ba0b38b720e77cdd440b968cf9131cc2c7a879d06c966c184092d4e612262fc2d503c2c30f5626abcbf6b6f023100f0c776249c00ed11201f5d09c84254fa3095895bced67b0b39e11d939ab3d85872ab30f69746c113fd382469f4aee5c90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306a0a7568aa560966f649199bd05741a79be62b5fce3c97948810feee92e3a0d3864342cac1493e6bb6d379fe1f0235c7023100dc955e96c99d7732d243918cac111d06a39a7dc51f3210778a140bc1d8b5ea8e8cc8d2c85be568a2e76b4c21820ff1750302047c435bb50066306402302570592f852ff0a579c908a98881dafb370d88f96ca69c8886e989c5e41f42da6c5336738eaf5038f54b55cc77beecc402303bb4b1661fddb6e08e076eccdf50e7ffe05bb7f695748e2f8d8fd97626d8c4193b57b2a1241b954c11a6a419486dd7640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100817ce0eb55066fa04b7469b4665ab9f363d28001bf258234fc70471c113e307631fab52783d950b44cb158f01eb42f32023002705002c653cc08796de518d768f305088fb2e0db474bf4b7d04486723a0515a205228c3a9b96e706aa558a4b8542d90302047c435bb50066306402302670045a7c4e991da2dad7ee5a28de2fc5183620b18745e5025b383b597a0dd6ad3d637cb1f0db9269940ddcbd82f3f902301cacd2d9c146bf25f12537145c2bc471f916562c8de7cb8bb93d9abe7e22fc706ba2ac2d926ed571fc66e8f3f4a990410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307ddaf1d85deeb5bf00f61eabac0fda5b103412c2d1200a5d7537e6952ff6ea8c71d7f063846ef3e006156720369edc5b023100fca6d5722d75041e1e11114cb32f835debc84f98395012fc0080f3c76d6bad88063ad5033dca15a697ea2eb6e3ab48360302047c435bb5006830660231009cf3036fdd2e8e19e8e480296d97650c22ebb0d995faff52747527810f22a7191b670840593fffa7e7cd719ae6783194023100c161986ce69f1c2f7555af5e2a03d88fbba6c172e991a88aace712d22de6f1b0b21860997017b0a8774818e4f9a316b70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301509f0c3c8482a72cb1046340f6ea1de5e2b76bc20e2604cfd6ba7bb9dc1d38993f976f6e6a57d901015ed17004bac1b02301d66aa8e07b8174dec168d3883d44234c02703dca050a5f19d131496318f018167c211ac5b969da65f5f3f83825611110302047c435bb5006730650231009c6bc16789184405aa5cca4c387e89e004262fdf26c20146729995b667be25cbddd01aae36e6a375159c4240cb55ac5902304dd3414a10346f112ad7678c595ebe33dda5cd898be0c99ac737b249e38a40b06a692dd3ebf830b5b89b48d96048356a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100852be84aa7b069331df863e51469dd4ba276df02fb800ca2d0ce360b3459bebe9d2e31b928c703da051514460ae31c25023100d1b0e493bff73b21120fa695e3e7013c4b305245d5b4b94ca0b35a9fed314555e439246498d6ae1f332b30fca242b9a50302047c435bb500683066023100f178b2e59e03e4958e3dc5a6166b1ecc06c696c5432a4296c21736475eb4ec05f76f9a10ba641dd8de1760b16b872a97023100cd29b8817670f2c25cca6b188461837630c9b00cb68a51bf0ec6709e6a363649e50ded5416a2c0b47ff3e2a7640e41390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310083a4a572544f9f5de70403685ff369257aee66f50e1b8fe4e2eb7c12009cd342049661d6ee88f4fc07d401e61e87521502301929a5590ea6e507ef0f4743bd61c7d81d63d46cdc37f953cbafb826a47d06e5a838bcaae06825e814af5297e0d765dc0302047c435bb50066306402302776c015780ba4830b5185ef91ecc9a8c5196f50a0e2a335eece0b66945bd06a7dfb329af04f42837443627f9dc9ef2102303bb87997ec3266606fb9eff0e0e60950d107f468f68c8dc0621f6071d809bcdb02888dcbd2d099ac77d7d38dbdcae9990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300fb34cc2f470724b39d820b64d7064e401bc2dcad7df85968ff07914f4a7181062f52d0448282f7488891b8207586ebe023100f2a8b2df335ca8c12964f9710a1601fcb06ab455ca5e37af43eeb61a12b451fb5cbb84ea6f82a3a3df8792008485beaf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f338d5452b701d27d24287c9cb80d812f62cedbef5a75435f8d051a98e6ff58f5d276701416c8040d82cc57bf31a22d202301c8f4887758cda4eb241e0e6add302d48b121855e581824e817f0e737d3773d5cb961d6789b19e7f0063a18bb84c93540302047c435bb50067306502300f528894a49b989835acb00bda0cdc87d1739b8d1b6530c4eefd249f18d0f8848b84b1285374f96734a65c56344b876b023100b46748820edc8642ef8b7756ad8dce1b987ad1f15dd330e8bfeb82c3c14bcb8b537740e164061d3dd9ff07350fa587990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bb0bcd2b5236864573b17136fb5a49d187f0b2ddf3f7d594210be125b21cdf394cfcf755d2b619b230782778d3571bdd02303b214cff1cf3c0c39a22705bcc8710dab0304a71a8b9e9c5088246c574e56ca616229b376651aa0137e9c4cc5598bec40302047c435bb500683066023100ef84e39379c71e8ccf3e151540cebaea435bbce7b2c6809e5708f228934e4d841c674318a3b810184ac444de057075e0023100f9e0197ce69de39dd61cecb153bbb00aec79b0ff02d91283192233bd448602c492957ffb2d37158c89ceff641de32ecd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d0ef131f6233d4a38c60a637116274b0c6f57ce65d22d41479b6030a311efdec96d3c7c6aa2f0b2aca074e973f22c7ca02310091c9f5da1d1c1009e657bc51033e8cd783ef632e1a819383c29557c126d712ead15a70e74e1f581c17849612a930f8c80302047c435bb500673065023100f923963e857ecc910c1432adc19ecdbd3ded41b7af266c6c19e92a15efd8c02e36c69aeb39db23658a88e1a37673f6f3023063e33cbe1ed14950ae9df18473186c05b96cb0f8a6710c8d8f85a5cdbec5a346043bb407da2e399239df0aeca057b9af0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b0a0cd454b8f85ec43b458ebbef4cd1551c70e4b1d8c48a2695e0c0c001bb1488cfa33b288d0439e0f0ca9dd86fd528602307bd6f7d69d09e5988811d260fafa1563701e0e67a4753dd9c179470d3475b6bc2c4b04df9a5553e1e576a2fd4461b6d20302047c435bb500673065023100e05e66a9b5a1cdad7a0243d86e4624a12b9cd89b25a6f92b8b35547956b1a715c49c4714a55560c0b636fd1d2a69572302303b38f865699ac72b6cab1227de6368f165ffed00ea8c551f8378c30aca5637feef53f3c812fe801d638307e5537e11900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230025770dff43f0b766e67fc429a1ed4e380a12491d1a06c05eec57edb09baf2b2a16a607ef1227c6ecc4c7d4a9d369edf023100e9c80079f2be0dd8ca8c5415885a8e8ad784dc16732e1769fdff320daf04db90bdf52516976fc5d6d25a4a52932a0d460302047c435bb5006830660231009fceca0a5da967d0598ef89853ffe8da76240d20fd19e8ccdf179f7d26d102e060e648348d63e9dfa6380f25327d7e44023100f18f6a73e304206ffadf3e8058bc6015ffbd7e71a3e10b3b90bbf0cb35d94b7174a905ac4d900e6a3692010c12c626ca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b30881a8ab5b717c959b5e861cde6bcdee7c8c0ee09993f3f11128c08c986fbc7eeca42003639c5c22774f660080bcf02302d816551321478627e84824d6d7255fda2540c6843b3841590e4ceacd0fc48d8aaaf311d80abd6dcf64462a07c2e2c2e0302047c435bb500673065023100bfaa79563bfb0966495d4cd788e0c992255c79825da28017feb50cc1823df22864be183cf9b353d0f9d2d08b5ebe6c3e02307d955ea43d13af49b8f19d4fb5e387a37c1baa0f5f462479ec6d787dcc2c4a34896457d1ffc7edfbd8ea86f8f046d7210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301d35d936a14696de3e23ed55668bc369f9366dc23706846c45187a6f6c84a7d986e219003f5b27347770819ee882a023023100e51287e9db254e18de6873e79bc5b2406cbb0881f7d54921ff9e03a5c38fcc3cbea9d64141206e7c3121617eb3acb60f0302047c435bb500673065023100b5ee6d1f69cdf819bfdf06421add1c301024e537033fb618b7ddc070d4470c46be63294f8ad9eab72f90c16d5ce43622023041582f82da88d455d489337a8bfe5192678594da3570d9634d1c7fcf70214d6dfdaac479e217a3306b23d9030d7e23e30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304f0c103a8a76bb77b9cb9048db24349d5db88928216f5e1418240231034cc9da8043060aa39ff31658ee71fbefdcbcc80230739de151ced8c8a2b2877b21bf7be3e10c8df21a6ed50e9a20f84c3b7365311938b6987980ece2e839eb4da020d7aea20302047c435bb50068306602310099997f9324db8cabf639d47bdd22bb5fe397912394cc8c41cccf0c3064b54d36a2a885ff048a9909fd30270e2a39018d023100877f0beb604d3e9237f6445c95fdc7d1e44e67292fca7ebad62f665d0d2cb1c7ff091d3c2e888a9b3a1ac4fe109e6e770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e4516ed58b481eab6fd7934567c001874c8aee05664a2cdeab7a15a06d0866404f71e275f54067b25fc4f325c77122d4023100a875e2bd3659b6ec60f291d54af70c05959f25121797d934f5428dd4b1c9c4503a3257880d2606d66f27328b63cf8f580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b45b8670da73a7eaf18db8ec463e4772c992d4e95bd06661c8edd4bde10d01d1cafb302bb925ded28d8c69f3cb5db91f02303bc5e82fa9955eada0481a5e9958cc0090c3e2680413cf59da3406d9bd7bf4f24e1cb63198dc0b2905545263ddc81c0a0302047c435bb500673065023100ff0cceca7d7813677cfe7a608a89ece56cb65d7b0775de0b765d1700c8b8285038fe4fbb0f53691e65465ae2a37712cd02303d3b6b211ca37b9f6d7d8fbce3d6916cf79888c40361750f161ce7e7f4ed0bd73e26aaf9b28f22a7ef3494e195b9c5460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307f7b488ad3a7ce2afc665463e1ce8d2296414ef616ded9bd880dd0595f3fe2987847c5e789c999efa0dc980d51bd3f4a023074a5a1400e1d576b2f6db2bb9c347c7f53d9811df2b38a87ddab65eddbfdd8069e787012dfa7030b4e3e825aa70756d60302047c435bb5006830660231009f8a9179a4a118daa42c28baec1b56da5b731e90590dc883b9b9929e78617b0d3bf30803fc15e6ff620b343f966c0b42023100dfd823a1553b20eb134ee758357b61aed8e1f7f9e89c785fa2b5a234b01f3be0a4be747128b622f1f0d55a4f84c701d60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300deb290cf9a9918314d68057a6cc23496a7ffad108c5ab26d97fe84eed9daf0b22289dff0be419d29d96bab4637f9485023100f3fdbf0ba8601768de00e11998e57812b909f173af0d4e3de98e01acb6017a4fb517459dec721a5c1aaa2b992641df410302047c435bb50067306502301052f7a0bb93556257161ec636379df014b5e4ddb4b964a78c1a809c23c4edd692e83dc5e8f8a4977675fa435b61ece9023100bebd59df50a55840fa031d532bdd720ebfef195093049684a654d806197f11718ab8fe05b7ce2653d068458f197f89940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100812d35326148293a33136c8c47f012e2d7892027dd23ee839b9ce0ee1541125cb6a80909f0d3cc91238778e93e6191fd0230377a1cd32760821376e2930be5b85d67f357ad19acfe79299414c61d170317f734b88916141fda563b9f4c9c8a97dfde0302047c435bb500673065023100fa82147f6a066b6b164286e14636b40322f3845cb49c5962d9c1145a6d993ab3977b758b875d8d7202726e86d15b52e802305b327d89b096ea9b7b6f1ec5630e8fdcdaa406bd87516787cdb2ccd216c7685710ff9ca5ea286a1f683ceffa0b5b131c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d1191f70ddc4c63d19804b41a9fc7fa0232a408bfe6549c37c9e1bcb812984903a0629208fdff6b75c65613a6e952f102305abb73325ce00394826e1cd332d419199d753337b62f82389fc11713974c2e9ac1b85d38a22bf0f2327867a6fe7d33ec0302047c435bb500663064023035ee0709ba7c199c43144a2c9d1b332d31460c0eaaf08a8382068f4c6656617d512e2f1a0ebf8dc3d87998e38c27634f02306022031b3a9554dbe6a0d15608761bd3bc177344bef92e5b56165d32d2a5f7953aa90e1994e620b11e699825749824240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023040690a45d09f2b97aa9a1755a9f33787ef6f6b8d7fc878163280eebf7c3bbf1a59612c8c591544598848a9d1e95c3207023043d2c81c40e5b92a5bb25940cb5f8a93a3f1a870b9145ca44cd5cc55f3f44faf0d1519a12f0b16117ab49018e43540870302047c435bb500673065023100dba371078e35c77fbdce06b104d8657b681ff1f9b1df6214b16fbb295c36898bdac8c88eee072ea81cb9a78c1271648b02305b33262daad24c019e6e973294e398d851414d10645614ceae8ea58aec47f234e19f1a1b63f0eba59aff8fd2061d00b50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303b00ab6a304bf06231eeb39de6a37e58172d434a4c2e7dfa6dd010340d725151ce0dd1ee8342a679978fcae7da9951d4023100ea99d2a1387eddc006695cd010c94a9f58ae41b75faa316f45b753793e9bf61d7e0a3b16dcb534b1355230632a8367460302047c435bb500673065023100e49bd8a5eee1b5057ff95494661ef7d6cba97022b1fbacfcf30560b2d67a354c2cc460f6a0704f6ee80d0501d19416950230303db2f6426665f20e6a5b8fc93dfd258191727b920f6a24dc67d3548d57b731f603d9e9940fd83b57676f4e8d3d1efd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a0b269167718f2fd393083ca6a49302a255bf834d7a50e18ed28e23b49d5a37586d0b2517e83a0aef3fb4109568463d7023100c3b218d1884484c091eedec9de0325a4b554ec00ee6c9214f16036c310ac457325113fb7f4dc3192d1a5c2b7591b99df0302047c435bb500663064023020931a3bfa30cf9379102ebbc9d9c8b8560b601c61de0b7aa2063963d6911a44b87aef3068bcb1f26b6faeb9bcbf5d890230439b4a0e42350d593bd94cf6b93299cb5df1623089a23f4c61f64d7a3cea143b0298bb7552a00427081f52bfac3a465a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306475382735fa0da264b2a49ecdcd317fb4d87bcfba496a960f6db099e8174eb0b75f08a52488df0c60a6e5d8d6e9b85f023100f57428aa17a1bed5c55ac94a09f1cacc8274c5ac2092512e39bbf404563646a1bfd390657d067f8a3a8d1bff4c6f96510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dde407336c462c9cc9fb8990636766e4cf70891c80f5cbeeeb42edc5354ece9f93acb20e888b272fbad584169ef171c9023033854f8de073332daf4cc7da839e6a8af2176b8667569c6a839777bf3137a23bed2f14ff255167e3286176fc9d6b9cca0302047c435bb500673065023100a87cc3ebc05dbcb6258ec2d6f03ecab5af2439ef771acd0cf56cab924f349372bc9adef6c5d4ae41f74c3c3755a7e7d802301bf3e07ddb868b3cb201040a3762f3b4063a35bb6a63d86ab375ca97962c8634660af8deaced4a462918029996516a480302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023074a5a947e565aced28c0389e9fa1acf0876b0c9af1071d7f67ad1603c1023ba56132fc7718f5c223f3ade2f2f259086a0230407476d6d40159f69aa5fd6f162aa95e34f26b9d18d35db644763a9b0768b6d111ba230121b0fae2136f94a7fa9869200302047c435bb50067306502303b69d6e88c0ac4f7cb586d7c25b3a6dbaca66d7a0e283b15b442e85d5f343fc0f08f6e109da5cbd9b5319494714b3709023100e34ac3f248062a2ce5f7c6ad9212fffda85a506517c9be3e33455005481b2eb32fb441ce0ed6f0c1f983852a55a08a4d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300f3fc094f432ed33d82ab8c7ea648dd4c0b68fd71006d97c5504551f1ed1a201545bb60d8b5da2df19415f8c121e3f2c023015d9c8d96075bf0916880ce57f461c5a457fcbba555138c4685b222437d29e7a972d64bc385d36e68e644016b4dbab7a0302047c435bb50066306402304cee2ac96d7006f0bae26b7df093131c3821fd1a52edffb8a9b5e16da45895ec4fedd827e9901aaf28622ee77516414f023053b0011220a7bcfdb71dea23f8396438de441a43305225c1d142e5a2217af00c3e9e807d062356db15dd97214256d36f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023046caee97e3fb0a02b2d7ee1eb5a46e518094b6b682161639d2cbaae3209f01063fe5c0560f88b0bb6f2ba0b358d8d669023079b9b5def151d5842f7e2fe05be9d84781fefdadb15176403cd6b3aa6d79d270b072adc28efe0e7c469a11d9a7fa8d7e0302047c435bb500663064023011b2638a5f2a0d418daa85590e103824cae5d46e45ce0444c9f286566247d613ef440b04ca5506b5345e48592320d40502305db62ba0ff1a3f410a56375f742cc3a1f3569590e30f4be0b878d80f3c8d2aec4630894e2c3c729528630d42f50d8a9a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304dd90989ca50fb832b1f85b1fdc28a960361a8e1ef07c57476a4184a8494719be31074794c5f1b3ab03842ded5b9a719023100ec8a7466f86d9676ad210657b14f61f057fab445d8048757efaf0c149f744dfa8da8a8b04b231fac3296611b82b233ee0302047c435bb50067306502304598091f5c0f263bcf91e97b0a052ce4a8af24cfd283d8084ed814f01fc6f65a22e28e0557d9b49dbfe026db80c567ea023100bd1b869b87c133bd40736249bc4db9ef3e56ef1c9e6533b4aafc01e672704ec5376a0bc226dc3af7ac64c8284766d90e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305c4136bd9014fbb51687ccdea997dba6dc43ee40c423960ed00ba1dc8d722181526a3427d2bfffd6e70b758f62dfed0c0231009a91c8063472dbb5bead3aaddb2c8b5c957b88fe4d7573e361d33871e43dfed0f969c2f47c06a795dc233b5d4c2ae44b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301d10fd26268ea53e1e155d51226a5fb647a71fe97e69073d5828ba4436a7a876fb5678515105518b7554ad3d3e90b5f40230422943af9d8080a77b0262ec4ffde21de1bdbd680c0c7ffbb807dfa0b5a22f386fcd1174631f24719ad7083127d1254c0302047c435bb50067306502304e5a8ef31c3904b82172572b269eb134e9547b4806c934d0dca2c951cd4d7490de5f8470c6ccf330486b760e8e6a7cbc023100c5ec965fad2a8666b7fb53e7f3dcc5c3230ad7b6721d02b5a5303ed18c21fa4147413548d905641fdcbb16ad9add328d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d667bd71db2e57cb68c75a23cef06cb06a16b886daf72aec768758bca09aae7b7e2ddcd2c785d80962386da7580db4e0230569f48b837fe75cd9498edfad368fd94c6d2f2dfa14111c9ea8b399ab6958f6fd2e52a318bdbad90f4fe83d6109e0ffe0302047c435bb5006630640230720754bced53f3611e7d1c7ba248bca11b7c096277c4847f4bab703dc174ed0b6837b5630f4f9e92eeb59e459ea5b48902305a24db3fe59d0680d8aa424e3afa819cc6d6078aaf9f3be9cb176c679791d1f09055ad40d48c6cd79f0665cd5084884c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b134b51eadf9236add3a2c21d88f7795fece4d179da926c865bee67f4dc2cbee91985b41210db078cc082b178e968fc702303beee38fd2e215a59c7f537730ae4fc476dd1e83a310b725b4d7831e865a896e4c3813332a4d4e61dea78d39290ed0840302047c435bb500683066023100a00aaa5ef7ba8683f764e568ba8c1c1c1dd30477f906afd38011e2033376c5d802811c78a876b1c62da82a402fc89072023100cb2444953a419690efcc6a41980ef533417d54701546101e6a49cf1c600dcffadab1b47f9749cd0feb933612e8e37c960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008fe552f575939494a4efbb35ba4f8739d608493be92858b9a906968ac3374384c305cfdf9d85dd8f20beeb1522d0060c023100997e1514412a178a33051d4710ce2c2174ba98c60a4fa81581bf6124a9d76b58e7a3d85b48a04cc959167c36e6ad56f90302047c435bb50067306502310099f8d761bb8e4962c3b3356bf3c6dc51281c750cbeb7dd661837ad4767e765168e13ea912cbad14bae8b9406f0f5240e02302ef1a7d0ab76649b5693a39ee909ccf58f7b605575da1592b46b79ef3fb1c832913434dd085ead89df54e7339af5774b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304b0d84bb607b0ded1fbe4cb99d436409cbd7d69ab023f48d4b69216bf66d9a86f214a6a247c71362374bb301f94a8eb3023052eb25cdc973e111fafe0d97b090d2132dd6523c5c73c70345189c184a276f0539626e6a8fe55ef033030ade907043580302047c435bb500663064023031973331ea72200df7a98e06fa098761feacb01bb04c0de7d6e359bcc23b6772ea7de5612c99b2c6a8e5f0ba2be5485702306b4a3ec388bea1d2d19e17601d55bd84dad1012e4ab87c121ee6ffca443bf8755c63643b49a1ae93dbc11822beee03830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d9a47ad4ed2ddb6c90b32d7045f316ec6b2bd595d7a7b285e0162139f7d1659038230d75186f33f2f2054a955ae6e0102306b6b760d05317921d5e05b0845f7b010a14922ffe82941572623ba0e8a307357ad3e37cfc57d3c4c999c87cb72be2e630302047c435bb500683066023100fa57c59ad5ffe461fac26e410dc2c90535ec6829a46018c6ba7d17d54a096c777b7e3bd48fbda7c757ab9cd679b0e6ec023100a12509976d6435efabe0c18e8d9fbf81348fcdc0ff83cb2df5b120447705cd5f6449d553599e35e556c3f36e00ea62ae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d8210109f91019e83a3b9fca0006b1af8ff311e042e37e0e2218fe7d44f91f5cdac70997e01b0c14bd5169738c1b79802303789f13e5381c5c8e690599d12e6fd764ad88a189ec5e32115bc1ad1fa0f065206f1cb1fc25a0eef3f0d439e1b12bfc90302047c435bb500673065023100820ac2d9116baf6eff5b5d9e490fa3c1901506298ace058f031d09092374fd4b4356d84d6c75bfee8089edbbb5105ffb023067b00185854226f6e0ebda9461928359a1093f4f8e43a64a071709f56fd7e1ffc966e0f02c346a52604a1b0073479d160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b5e667d142733185797d1fa39f77d42a562cbd972f32dab87f0bb8654ec470302b737cdb6b7fd6081270d335eff0b33b023100e72b39e4f29202c2883cdbe105900b560550d70f0a049e29153fa5363ec6e1d747aa0a671c5ae6dfc3f7710095e55cc00302047c435bb500673065023100a72028f22c3ae03146d3449e2b2d3e7e006c082aeee87d72bd2e405723b4adff9bb36c32c8e8d888f9a314aae51ea15802302e25d3f38dd4f8fe3af2f08229ccede2b67aeb0e6d97c64b1ee42a344d52d11a4346b327e34c9ef78fbdad49e04c6ed80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230124dc7e79ec31adeef3eacc7ef941be0c22c83cd3f7409193dbc3f4584f5cf7d3af9dd502090846f1e619ac65160288b023039b225c4e43e992d8da6606f67f9657c18fa52877f5fbbedba17d9626219c83d94ff57b9952dbefc6648b23e98b5a4960302047c435bb500673065023009f4965507cb2df46e04bf8ba58ba00a266709ca6db82a1776e2e09fec692448ece83c88c823e3e68212ec1d289ef250023100b19e7fe8c92ae2228a7489be42a9fb8332aff98fb79a73191aedd71f7ee0a6c9d66f63928f599884aa0a49c9452762190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301fbc79386006f82d26606489ca9945cacbf69a418d2199b63682cf2eb4205caa5e8b440573336c0a13655dca3ecbf4c0023100e5de11a72f6c852a622edf20496d648a46daa4cb401fff4adf379e0697d85770c6a26dd0c6223f48069268aee26795890302047c435bb500683066023100b3d4cc6983d85f60617b79d16c7f54377dbf729d21f95ef0543e7909b85618a79bd93328e9dad3149dd1e4e2bc8d539f023100f8bc0f79adf52b3f457a99d835add4b147de82de446b3a9c4ac336e3d240c94e96a3523ba6be21a72fcdd15031f864e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009213635a1d0c3512ffed9889ec84f2e1b40c8bccf25aecfc6cc1bddfc64542a088b7d763f482e18a047e1f462b3a7bfd023100e54a5caf8d54f4d0b5274a4434a7180f1693d05d4eb2482986c4facd2f3d301abbcbf4c160c6b7432d8f55732b9cc8250302047c435bb500683066023100a5e52581cd584ccc1c185c1e13abe4be6872b25a37815488bc86ed44e13dd1b72835dd9ffabc4673ec27d7d69e8f9c42023100aeb729a83a4a3b93c1c66cd77e905a4f208abd538916a7f9256cd3120087dd885829e901a18b896b029ce689243e0b6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302a9a718a532f8860e56439d93f25d74aba7aabd287183d1c29e3f972d1354e35d2dbbb511ece7e7a98f17103b779100002310092aa6e2dcd8bc2bb48a7273e637af4223327788077f9145c1775cd665fa4a43566114b792c3e7a207e83bdb0a30892730302047c435bb500673065023100a58db31683619f97f818caf0fa4f45e8f09517c279ef1ff50d66f0540c7e2586ca6e592acc8575d8931bdb280b70390a02305e9f08a0ea2cd08d0b2f9c13af331c10ce4fdc5e51d51640825505bddda8a488f059d778c253626ad20cc7b55dd4830d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023013f16721351c22ca8e78182a1856201e19053c01032a3fae804ff353a9a690af85d37de4db3170ac718555e99f62205b02307c1182eefceef9e48a0d3c037f4abb0e448a513b8121220fce4c61fa6b03c18a0ea41f09a956fb5d3645979dd90afb530302047c435bb500663064023001d864b93d5eda6729523f26b4b2864eea1e975ff4fa9083c748f191597ada2eabde6fadda9822ddc045f86a2459c24f023004d6cc8f184ac0018e770c73639e2305d17276e10c923ed776317a540142cd6aedb0b314de832acfd14416f0b57784290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305fb850a3f442362e1b6a3248f635e536bcdfebc11885473441241afe5817526bb7796867a3d6b5c8af4259dd413c11e70231008165cde638a2a46a4fb023137d5feecdced1d0f0648fc5ab79e4ab5e6c321a469907527b354d7e76e095ade12f2126040302047c435bb50067306502304e3b3ffac0669eab80c25846f5864f837fca3ee621eb67b15f2089e4b52e6d94634594e1d118b86f37a9f52e21d9edaa023100d1c432b9210de958aafa9e042a5ebbef28334bbfe712804cafce45622c54de211c1220eb3c415e71458d78c01f653c240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009aab4c6937db1a87bd474c002b8911cd4b2fb38953e440ddc86b91d692c6f58a59689b178b388b4ff6ac9bdca895e789023036b20228e35232835484ecf72cd340d4ed6e0fa88c7ec46f91aaa77fc37160aaeb774864b2952d7c7cbe22989580c5700302047c435bb50067306502302643a1211e43605b5f04c5160930d7f77bd6cb4685c1ffb3dc5a437c5a23d873b8921abd07b950f747c3305846d37b2a023100b17d9e817b4f5974756a1a88964601a389313a6fa8e89b035578d5a6a900a2e504dd12d507ff43f2674ffa93cfb8acae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008225f5e71b9898590cee7709d07af91bf8dc96d6975f91be12e4516fe7b9abe002097e3eee49103735f9c7e9345ef07f02310083a5a29ac19d0a35e2efe592b01e3ac3e1f9648b428473915978381a70aa04ce95183ad427e9cd402708b061393e6eae0302047c435bb50067306502307426142cc873b77b9ee4007f1bf1c0ae708eec3332ce034707c076151e7367028c1e57aefa6edd2b298e5dafa1a9f654023100c083cca4a397b09ac7c2b9de863f187096ef08caec82822b7d628207f936b0e77230ad8ada82257ba417049bb7ab17550302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023019c94dcb7b1f7c472169d5309f85ab9b0fee80a297ffaa73efb765d5ac962f67e0502691d67e12095c751862a00445e1023070ed39b2e6b11451a5b197f2475432f620e0ca51dcd764b22d570f0bb1a75bbc03302b04c9f26cebfa9bcab01dec1bef0302047c435bb500673065023100fa122129f31dce7a2bfda4da492e6ffe3b85b05f4d5d82696d43f2b86f7094f61b0afece3866d545ec21df1f75a54e7802300af7fe0f15434d86a2c254fa3f3151ad2e25a93171548b52c383d3cc4fce28dacfd866f761084b79b5d8d2860816423c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301bea36276e6e1e694d24127ec1f01044fd12da129c1d54b70f6d863926505bef7a26ba1a66d6b84a5c98c7b5bfc04a7002301f2b35a9fd9871c42b15fd66681f8dc1ee796411099562beaea77f48e0c8eb11aceec763e330e4302f2a9786d696b1b70302047c435bb50066306402307ac38a7ac3a0c7e98404087ecdb53857f2cdce9ed9103821cefbd81b0d4cfc290c7c2eb8d57062c66c5156c77795936b02300ae987ad749d2d296aeb8be3f6a1710650f8a54a033777eb8ae5ab60d1ab7cab0818756b1be4d0d77c67ab0ecd72a5810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c44594d1dfe3f720d52761bfe46e88a806cf943aa9b917a12dd44c7cdb588872ea97a066293aa7208943b1b002de1269023071a0f7c84d7967cb0ab2fb06487e879cdb1117a72bc153d6a740bdddd74e53599fe19725f296765caf3f8c9d70d967ad0302047c435bb500683066023100f7a0e6523fad60d8bcfca66a448628bab5c0646ba7239cf5f9a9b753066ba02578685f0a3c1e586aee6a10129cb704c9023100e79228d8e3f78d4d365a4dac5a6d5e1b1d0d7ddef02e355edf623e5f24dcdbf1d6a41728f7c9cf96fa1191cf0ff9c1090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ada42196d99b61e94d8414dd0fe62e2ebc1eb9f6de9e0934a7e9420ddab384acb300074c52187c75a3f576498ebef6dc023100a197c3a15e6fad89124bb25a27abcd8ae6950f02c301c74a82fca34639673e5b4254d8a806f1e8b68c03676030e18c080302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c2a995b0f95a6c148dfcdef3ea1984e7fdaafd49e5ebf9174208de830cd7025bbaab4c99b60ab2132a83c4c440b504e9023100b108423b1056be23ce14efba7fd06cc58af4662a9bc6ab852a0811daa18460d4f6990e60aef4c19d98663cd899b915a10302047c435bb5006730650230790d99f2ed4679931ba740b578941b36ca4262a64b6c3c6180ffd6bdc8f34134f7c091bbfd2d6e0da9cc101b6d5689a2023100aac0f275263608a11bba31e247dcaf785ee38dfa5e0b5e9372e64db901b6b8bdcd20cddd0af2aaa4c1d4c6fdccabb3d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ac0fab7a68be1f5bb4d4b69518a533c4dd0c2d592e8d3c600134ecf849402e94bb3bf011fc0f8cf973ad10717c6e07a3023100f6562cce3a57c1ea5c95aead53770cc53ef5b8c002097c0febac62211632e52ae2ceb51506bff8cfa98bca41689258cb0302047c435bb500673065023100b6c727ed16be8858a47a4b89bff7776819b77ba34f3107958983dac7ce67df89c444a4b998aaccab78727ba2d18f91a20230303bddd04157d8f1240ac67a8963da4a28fd71ee75610382eb0fe0289ce2f41893fca2f648ab5b52916d2029343ef6a00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300538a325057789ec688f91558e610466b9cea42fbcd900a5d2f428da309aaa1062093440737c56ae3f85d5d2887ef36a023100a1de5233c77a7632ae18b7dc257ad9a9a9b5c4174431d3e380e7f9e500b8d30573b96e5b30ab09d152b44265bd47ddcb0302047c435bb50066306402306a032c21121f14a8980dcfb1b89aef24aaa0f3bc0559e6dd155d099924ee1d1d4037d4ebd74e9042dc1aea98072b6f8702303a76f2ae594b5dabc1ed4ef274147e31dd3b6ab9b83e492b762686fbcce1eba3070c98e822fa72d32a6c73d9c5cfe99d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e5265a9fe7f273ce6a485411e4808aae3a714a1725b471b5fd473561400af60e59a9fb5fb2d26465f5ad4b79f8efd4b3023014cf5a40ae58f594f79908a3c42f716b084bbe28427f7750366c7c0447f0a95efa6b1c788e53e1e63fcb53529e330f0d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100952ef860f285c00cd4d31b522030692e945601099868597af63e6935cdd6a1c9a3d680f57e271b096b3f2e65c75bf9d3023100954e764021a9f17f867bc1f99bd6ab5ac04c64f761ddd60d348604876295e6b4ae7133c1adbeddd601da9d4ab85035420302047c435bb50067306502300949c679a3a8da1824c5de556ffebb196832829ee3e3ba9727aa92ba9412848c79b079f746c444a028047548686a755e023100cf534d6585e2519b58c0bbd326c0ac36239a104135cd10ad7712cc0f339e1bfcac75420b4054f26b0c43e883992a97440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302e2f31ff1b4cfd1315c6ad3b5cb6519cb02a37179951ed01475b997c27772b49a0bfe45e5fc73aabee87cb0caffc88b3023100fd3fde62dbdbbf95d22bc02824ce11da1d69634d16883182b7143942ccd2c19d99d3fd09c324eb2fb1909e4d5af213d40302047c435bb50066306402304e1de063bc51bfdbf5651081ae4f275111b615eb64679bd78a4d88143ff650a33402ed3d7a1a960a31a2937289c035cd023060b32d79cbc4d5483ef8f1087844b89c5c902a1e42b1211d19b8e96aeed7b906c78861185dbd456a9f7c24529c912b480302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100951b6c03810adb0ae620a619ab6d67a9eefa7c2347301052679b5bbdbf2ad43f8c81bc6476abb41405b733c0c7bce19602302ec3fde83d453789cbcfac2e336a41f227d2de2124a3fd61dc3bdbff939419745ca04d69fce375b473315b877ddfb2870302047c435bb500683066023100a18388c022032423a2ea81b8ad73df1e1c0a53bc97d5443e02aab3b47d6132a606eaa8983b308667fe925e8683910923023100e7f38c05178b0b00fe8795d1b71ed03c1f0c782ee21b4c685d8b961836e1ed9a6f464adb7e5b4cdf0e174c77097d14cb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e48178879399b1e7fb40891305e437a65f4ea88b53e5a43fbf31336e773a2f4f3bd1d35ad48bd81a9783eece515d4f83023100c2322744fbd14ffa5d8f35b5cd0dfd9f043d73bafc6aeb340b3394a2bed3c68a07c03dae9935b9c2cbfda25b2572f6220302047c435bb5006730650231008547da118a5b927b4657390db78276bf45322cf4392a5dd17627759d63db02ee803bb9846900825810af727badb7229e0230666d240f4beb95a77f1fa7e3252fd210765ce6fc1a91317b54b73fd0efd27b40b2004d52638caef1dca11d9ea74061490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304f7306cc4358aac4b41bc64b941bef5b28555c4c83e91088bda1ae618c476df6f8e8455ea939774d3bbb2576734f2bee023100ac38159990c583e2cc95f9bb5e0f9085a3388139ea39d57d5720cec7db43f3111fd8726d69c6486dc973decc8d2b93c20302047c435bb50066306402303dde69a52ecec5ddaa77a2d2758b8b445fbf003c7040db5f610a5fb75ee9209c4df02de49b25b8a0f60af71d997afb65023006a72b696e137b0d2a82c79d0d908cc8652d76ee820f4989776dd3c82a74e1119c1f4abc98141707f91b737bb6f57ed30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304084ff9f63513b8224128441b448dee809825e34528bf989f8e0dbe80e3abb44f396f105d064404da912f6a5351a8bb3023100e24ac1c7f91c82988dd94470ffd30da04ad5ae788b31c6a0261a0ce467fcae60b6d7a855a2dd00decfee0755d04397350302047c435bb5006730650230191f8d1550b59a34323afa59101af9b774fc341209acc45f70a9624959fa6bf61c789c45c972ee94c978d94d44f7b78a0231008ddcd47aca2dc46f83511d27cd1bfffb9e612083242d9cb7c162cc22d27147f481e473fc2996d4cebcd3684e8b7b61bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023060435c73792cec9973c86cacda49dbd4e4a118a2b0e4cd13d6d23aa7d1bc8bbf748fe1ea4d463e6932644f403778135b023100cfab67e1fd98daf6544c4934884eef0f76175a3113b5482137a96dc4c55aeb1eacccfcccf489de3ec5fd23930847318d0302047c435bb500673065023100c924d4b65d0579d3f670b880b7a0e2625c97f4f7697846ac6e43354e8ac41ecd3443d5d99b9053de2efb639af8846ff00230428e128857ba0c69e3562e6973142e68839d73aed7cb9a8bc3ca59cc67606c1cd11068dcf74ed2eeff1c340be3840d280302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305039e8477e34e697016c7c7b99ce93d6626a165ed494e17c7fe3ac9a068b6ec69d56d58b6a9d99991f8570681a6e939d02300cce34911b365dd7f8051c73720003c65eaee047595ae3ad03b9e2f210c48fbc255e7c802babde3c124989fb578253580302047c435bb500673065023100d32abba29556b4677e679a969cfe74f9b4b29eafe5e6df65261aa3a60f6ae2e307574835683ab8fc953d91f8d98ffae302305713f3751db65c5b43b43c0971d51527633e58e48767127af7121a3ce8d0089c8271498e1b1124188a19db83579fc0370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023014b9bcfc9b9cece87d346a5354e8a82e0d1fafdd07c6a021906a0abad3f35f97de7a2f58fe0091fe0def72ec65e3be92023026394e80f42ca59e70665798a3978f7edf62e7895bdc172fdc7b7c33d1bf7384e02c06e216482cd3b99d6473073341c10302047c435bb50067306502307c618b67ff959a615751fbd5f2f2fb7373afbc0b26534bc866849a84fb7bd0620fe358185618774edcf65add8492f7e5023100f23e9ca4dc5480c85ac54ac992ad1917d797de3373cbe016e1c75c43b757848037a5df461bd8e43569a22c74907e93610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302d304e9497db23ddc982d66eb173d9b1aef719bc1d5a02090d72596262b74286820ee87e35b0ff10f03ebe6b7fe81f5d02300b4805757a6784e0fb081217b48162189c644e632c00108fe5e050e39fec52df21f95f6f35df35245963be16860cc2a90302047c435bb5006730650231009f644df9675508674a3e0cf4e3823600b120f96df3cb8a6c6e747f1bc67ef2d0ea1533f6b4a0812d10577cb4523b27fd023034b68e6c7e6207b670555ac96af6f4c2748fa4298818e8b2d5a5ef2f48ec1b5b708372f21ed3f0e32ebdea0e1c46d2cf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023031e46acf4f4062656d533dc10b4c973fcb265eb2692dd82fd3a610beee8532d3773a43e72633fa0504652a03c81a201a023100b2ecc6bf7994efaf8fee953e774ea80e68f3875205a3b98594eb614fc60ea7e951fdd326dba44402667472f3f560afc30302047c435bb500663064023067e3b899843d1744d337b56ab77a2b895a674f014de9bd5148e93b620997e2c86e3c97d4cff30960aedb098bbb50334c02307d2e281c3b03c13feb40466cd2164eb45be5c075f4c4f7dd346eeabee060961be31b3f6a4e0feb6309c07a35792fb68a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ca8ca8fe4ccd6887ab2e76804c3824b609648f02fa7bc6dc68f742df68ebfbc803c22354c8cb11b30566b650aee539c40230647bd7eb2b13b62135c3232c0d405825ea4d4a456ec8089472d0b8fac8ff364b1f737dc33512ba7dc5dec66a49340d1d0302047c435bb50067306502300456f04d11c5a687de561d7ffdc78297ab2e602a74fcafbfd36153087641d177e96f415ce6e5941f9fc8a459be5c5747023100d99606cef76655c040cf3873743f685254b985ebaff69489c59f71df09bb3811c0277f8f2de9d2784262776fca0db2310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a4562db67acc2d3ad4119ec3a25451aadfc1eae429d5299e3366979fd960891af943117ca6084f3aeb5c613c3bb14f8702307474cde473b249b8f86b70a1003f51662d5f1179530fd10e3cf4b86627e7607e322e82e1fb95a44ff7592ef7baf4eb940302047c435bb5006630640230294402a07a5ba18d741738fb012201673b862feb423faf0f618357b53495742dd76305371381cc18c3bd671b2a3f9fb302300acc6745fe3de9fd0a725b4637dc302440ed8f7ba190c63b3b9718acc96ee26a62c2263884319e49378b6c5d83374e570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302b67e5927e5287413a35867aeecb014692cd36cd55d5279b61e0b379cf4ea53b87363b87b5cca8870dace458a9571ce2023100a6d211cdd6e06c3424efb13b7440c2c51867085d45f21fde4d0b0ace4816ef0300ab0fca13371baebc60459d053171070302047c435bb500683066023100ef81b08d4c8e26b44b064af263a75c9ce45b9105fc960542862d716e4eb62cdd11992df2b74be8d5bbdea36a4508717d023100f61a2cfd7547cb227b352e9a672ba7f88d875cb0b41be20eeb5c875d84e73285b1216952d272295509a5ec5b4f7c85180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023007d024b2f77b89bdb5da95151b5b703328644669d81a77f2928acbc35bf5c15ad31153cc813ceb1ae19d84c9164dff6802301aa0aab444debeb902a41e0dbbed53ec44004c0c865e4a4380c92b78d9428ec39f7cbe1c50277c43ddc82a55c1ccd95f0302047c435bb500683066023100dd4523e9121cda1463034e18e7c4491e821ce7a1c01ba17af5b315384fa07711cc8df2e15ed449ea6de70ead5e779984023100e718b2c4f79ce1bed3a198da8f97f6fb63f72efcd75279dd0157b36bc9e12f8e5e0c06eeac9915ed223dde53688502540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023006229da4174f66506ea141a2e2fe40a07d14e8feabd9a9e8a313ade0296306736ab5e78a89e687174e9cccc17884c23a023100ce01984628117656c330e8c879305ef07312d1c74009851c890a82bbc1f666263ea3e23ec317ae800a04864652947e040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230422c451ed9485c00c4472edef2fc04953fb558f8f5fcc66bec8396b0fa63a54dabd85755e4d50d27625c9463dcd22350023100b0c8a353cbcebaa249b250e02cc388f09a260bd2b83bb8e340c3f7a935c0c0b3f676d81b61b7711f05c77c6338c927e60302047c435bb500673065023100a68ccda801ca0cde9cd710089f675e831dda91a5930b58682bb8dfc52cf9d2429156a84139b0256e51289ef19cb836ce023077fc3f9eeb2d250d143dd8ef76b5054b006d3fa4013d568fc2a133a220e4e3908dd29d4efc54527e1ac0e7d88045f7090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302dde98164f9b4137d3bae41c871e8f3d4e2d9064534e3ee790fb4de4e1581f9a68fda2165d97a1c68f8aa00b2793d5d1023100ebc199b5b182ea26e4e2f9a86f1459493cd516f4d6e6f12947ef75569cfa1f82413989e27427e6201da735714c0a3b910302047c435bb50067306502302d9061561edc05a85bc26fa759ef2cd47c58e421cb87a7e53cccf513f86ef073bcf6e98fcf7b561cdff6a69335e7a00d023100fd110546190ed0ec8e4e9f399b9ace456e6a45f59bc904d1bf750bdad1da54ac62fcc14d470ec40610cf567cf8bb7dbe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e3e372c05279d03e5ac45c832c66bec10a0646cf327ae020f117b47047b02980256691453e4311b1d8b479f030cabce7023100f3dd3f4d26aee21c3539a99323166b530adb80c2c801a0cb13dc783dd2089040111ab75a0f9423a4dced157b120a8ad60302047c435bb500653063022f4df600443572f2014ed2b54efc2b8c7b1357eacc2393b17b8c0688f754f904090ae884420c80cf01b74c11b41a895c023007909ba463e401f37d90ba5351b53e2c7e01bf3bf01ce86d9f726ef51ac105f6c56ffd9ef504b06b72a7e6e6494a3c370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d692ed1e5cededa4df27dff545061368b01ea8aded0b0f890346ee3123a8ffa099ec509d763aa905b5ad9e4b81113adb02301b3b7cc95cbaec719295b93ca2d8a142d3a9c1af46cce924d1d68b8f39e561307856958021cb49b84d2147db1eea8c4f0302047c435bb500673065023058a189dad949f62eb0846bafabfd140f132914802c1c9ca7159522c421cf3e1d594f3a6a4bd0552e661451be22410c2702310096ed53eb978d2b18d4f31dce7725cc6c95d89367e5ecdf3b68230d199337da45e69cc8a580e37ee9b7791f6236c370970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304285c6f9f1b2ac78fbe8df0060c3368a17758246c61aa741ccbd8762c07ad60f549209f28c5b15aa38f495fec2600f7d02302687ef582754e3e681f70c509754df219db8cfcedc7bccfe4eb55bfd0572d78a621a297d1c430c130546c27dc55b6b470302047c435bb500673065023100874b91e1dc139824899217e5cf4e46f6737ed1bb3a2a0fd5d45c820914fe1bdeaf148b00cd445a079c6709b52942e01c0230427e228ee009159b9cf3f9bfa02106d3f6413d64b61d25a165b0e07d411ed7a464c64daaaa7bc5eb14396f28172abb6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f4e92f257eef8a97078ad86e896743402f170bf2edeeef57138c03186f65b7cc68bc6a57423e5924c31e543fa4b4e5ed023032e381fa4d7b69ad59d495c20c2feeb6c3a58db545c0316e3e7fb731b8852d591f08685f1afcb681bddb6789ea840a940302047c435bb500663064023066f2de1c4eb9619a5144bd79cbe9d4dea67ebc1275036eb996b8bab61a1c48393b06bf32890b7a49d100b62d77a5a50702303a4157b1bbc3de113bf855fa0be682f39e5130c46a7c6f915007a375883a97d35b85ce482d81f44edf07cf6d00185b220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ee6e2a5c1bd641452c61a6d821ca6b0ebdfdbb04bf0916ed865e6fff11c1bf898e4b2e0bd65de91220dbc69ad4d8c23b023100c547d2d45a5a2c9b7745f45474812f8e79efee03654054c3ec2c9a8329f912907da2d7b9adba10f4212548cde6ad61c70302047c435bb5006730650230205acda8b9124139302af65e6eaced15ba465156135cf19cc358357ac13e750cda0bd37713459ffbe0c212f9bb725451023100801a7fe51d43a37f945a5b9a33f435512eda7d2efef4b767d77c902877e300e7bb409364fff50ce701be0aefc520989e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306d814dc1141dfd442c3304b98051b17b4218d6690895eec90d9ff22bad00d6d3dce4aedde49bfda31deb88338ae8a73e023100f61b21aec860828536837d3025e899a4c3ef555f49f65f9d6fb90716139d42a64bbb3d0fb8be2bb2eec06c5b7376b01d0302047c435bb500673065023100a8f97d3d42a6e405afef46cefacb34a383a20e3e24822d105fb59f7f5ad1fd6577e12700e3a2a140ef5cd8c78101b8e2023005029a6f5f2faceeb652689dda3ea71d10dccb254ec20dd740552ff56c6dce1545e73b25e86e3e4e5185029ad12cc6f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305f43d8fe6c6044ea95be28d3807861b4388fef33858598fec69f36a254d3000a17872c1a72e1fb85552980cdea2539840230110930c754b97ef4979eb91f4bd542fd1063e69ddd03a2edf820db8284f251c83ed3421854370d54a56db1d0cc237a340302047c435bb50066306402300cebf12d57c0a5214ef5194e9b8a0bba1bc0321b37c60db4b696f6d8818c5242a0cd332b9deeb8087f8d8c24e632ac8202305a6b9c183e83787d419438ff02d7fb9c425637b1c8f6e4891ffe42f9b6f9e6de59058be6cf3aea2817c86aa34291b4060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023049010a1f1923a8be5dfd0ae25ebf3fa497ca31fb84d98cad4d835f24a463b808e598f4a81c0c59ffc590b1ebfea7d65302303de82113871a60c41e8acc79fe4a62db30fec4f4b08d8ca3e4ba3699a679cb2dfcd34c34045808bba442207b9bc138300302047c435bb500683066023100e1dcbd7d8f2bdbb4f032cf9c67f48b53cd9cb0d2932eb3cb39cc9f4898273b9a49fc334d9ce7390f56be99e5385b31c40231009e462539ab7fd7751eaeba7c3ea83c26d2d6c8ec82301ea4dad51cf1113de6604abf4e6fef214ac98ee54b126bc46c030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023062213da0f049348be4eaaa86da181abecf7b77c83bbf753e592794515434f682a146c64e42a6c74a7563cae2c6f11edc023100d49c52773ce7a1794a165938119c6829ab85bb3f174a3ed6b9ea1a922ff19e2db0e23f33028895cbcaf05cc9477ffbe70302047c435bb500683066023100e80af0f0e2beef0a28a75883e4666804f7e5a615e7ef66a26605feed065d00c10e97a2e52bb9f4ce20cc9529b1205ff9023100928b364780242cb45492584b9e23945d51c52de7b20109ca0c48529421040e99ebefda8ca220213d0b3658c5026a1f620302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230526da626b52da3e4f3a99ad8a358ce6fedc5f8aad0ca529f5f1d0f93c7feff889a2746e93cfff5701f390d6677d332940230236740c25cdd79884b35b8dd0a60f9366276f4dc691cb498720e490a5b2249ce9211751851ab290cea21282d6e3c5ce30302047c435bb500683066023100c4a4f95715a1201b3041023e7269005e5caf3982d95d5328e23786f52a01dec64c1802da12949a6752f34f9881e62877023100dd5650bb21f441cfb764861628187d6b3b5aa585f46d665c5185080d4e137175b117ef6eba2f56f55fe3cde752753ba40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301bdc60a0fc39c2392a35c7bad637b43463019d2512cd58e39861f61a95967f3fedb5dd92f9bbc741f70962e9a1ce034c023100c16af57cb7488d40ec213e67f607517465d0728f2d352f7f303faa95e7880be399723db8afcaa74736fd299801a1bd240302047c435bb500683066023100d01cec372f6531e840b113709f0c80e9e7e987d86fc6c24d23220b6cdd6c2d7111274e42614eddc820c5a8d956a94778023100eef00c1264c10a552bcc122d6bf4efb7064036ff87820ffc658aecb973064128d17fe1812c4268c8e527f52e3c65ac790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c01b2b1f0b013992afe32a9a861e3f15d8893a8cda6ee343ab487a4419f0fe7146e4b1942d631675d5467e68ce18548e023100d211475041a6ff7a2bf6a01959be86a57c7e68f09670c6945bf95c3bab497f8cebd84437f5288488edd4160558b5d8b70302047c435bb50066306402301491bc25b144276e0f7738c22d9c7ac440de4c3583d62723d1719269d633376a211e0ed3b273e0a82942b82dc4e0b36b023029d78cfd632416ebd661afc4823aa83c687f9adf03ae7d81a69092586cd846f35017ad86a327f52f677b6368bdf6ac690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302fb43970420133eff6681925f7d4f9c62043938e5b8def3f713a4ced174e9e7c55fd31572516336c35058040249abbf7023066c1cfc4ab5420e4dd373be88f2cb4634e26f0c6e126f487fd100dce7cdbee413e42e76caee4edb2652e94f563cfaa880302047c435bb500673065023005cae600f9358af31f91f210e25eb8cb71589b1f464d633ad6a65c170c22452569b1cf2bb175ebf2426b0a7d518b9faf023100bde5b0a8c9b1ed00957b8748e7e8a6eed1e372b6e9a7ae5aa8ded44ad0cc09288f220275d7239d7ff57a9a343bcbe7f90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b6642b7bf74297c7fded46db2b5328457a1bb8f750d6e6689ed2595b997e05cf91ddeb33e01fa440e95ac3ec79460a00023100ec1af89fc663a4de1d0475d2ce7be269de797440cce8f52c5f50f612ee48597a8491e5eb174f812da16b27b6716338050302047c435bb500663064023013926cee2936bd67432d8c8de9b5845ae6432efb8ab912bfb4494ff66c15d0f2e703a09d6bf4f088509fa052d151d678023020b7adcd7f9170cb88d0466804e41ae6114f781d6a14a5c52450f406f37afd88efc8190e0d3297d71f38313e5179ae1f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023053b2f64535bbc68d5c3472ed2a556cdfb9d1c0680f1aae6d4b50ef8a9ce85c14fdbef46f1e3e99efa030ad04a1da410e0230648119c6954e982b75f3e9bfa7eb896c0a182a81750e56e81510eb58915e186ed3820a549682697f323c98ff6759c13d0302047c435bb500683066023100b2a275cd16bdd1bf1a6a9bfa5db10aaf446297d9b81c7374cdcfbd2549f80679f327837d0b88fe258e756ba5a39a48e5023100b7fec54d04b2bb84d9437f131270ff8168dabee367c67cf1a74f4e70fcc7fed50d66d32f63c014facb31254987983c9b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fcad62192f0c68cfe0c6da850d17e7482f1a14645ab927d199ea49d3ef540cdf817281fc398ac858bf9d4ff184e5bb0d023100cc09ef796703761bc653749751fa23c274c84c1549511f1dc74b9932ef5cca9555dcdb816997bec407c36dc67f5154750302047c435bb50067306502310091787baf4e65478cc8ed6f5de115ebd2a9b5d0f2c4736b685d6a2195b8c76d108ae1e9acde966fc197e050c58c148133023043b5ecca507284384bddfd6a73929c675d740582c72e4ac8928689fc1e5763353c31cf39d9acb23286e0b853a1d85b150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fea79d36adca69365ba5bd7c0ec7a452cf49bd51cdfd728e3c00a94200ead697082139022166630a00332086eb9992f202306b06de6b215f9ffcee294b15d86e2dbe815377e43c81d0f344cfead2502797c3d69aac0275a01a228332b59d8b42a6b50302047c435bb500673065023100dd69335fa75c3a55705fe1f804aa3f0aa7ca92e9221200d4d76680e54e34dd9b87b3ed314eba07f6c28a6df1363c1a7d02303320336f89097e56bceea7bc32d8b3d100c3c33de03d3b8dff138f9a56b885456762ddb73937da3a7f50026b25bac14e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306059485a693819ccae14ca08aee61bb524c21ec0151bfb60fed0c457dcb1bc73827d07b93399668f619f87fbb39760540231008340d1899c9a11a4181ce43878ce23093e291ca8fc12e446e334385154c37a68ad47544b346fd6f70b7d3859d8cdd5a00302047c435bb500683066023100ac7696c5a182bab5cd1ab66649f1ff9c638322b85e977552ba60b7fc3b5fba9f19bd076368699bafae04ba2028e6274e023100cd4d916dfa715365856b8b6bbb4b7abec70877834e06666c17e4ddbffe2b68fcc7178f06ab03fddb407174116d26abf60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f31db9d8dec7fd384bb0b466b07b5319efa10bf0da95e448701e9c3299b8ed68e80d7997bdcde8a9feeab40086c1ddcc023100fa77f907dc4c46621484e372cb75a467ea9969094b3b819e6ecdd64a1ca9b7a5608fb389339dd1ffc5e26f1937629e010302047c435bb50067306502304785e46bb67a80ed6cc89b840f780c31f38e92ce23eaf42b028422524b7c553060bd05737b041e936e5369a425506650023100f9deb47c51df213749a0e4e44c577adda35bd0899e38ef213e1df2c949c6a05789033d4d453ef2c02aef1e8ba1ca41f30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307e2a93153782ca097e83a413375c191139ce99458f8331c5eb8405213e668c36aa96d909027f75980ddbab0e4aa8336c023100ab532f3b8bb7336af3b92872c4d0d29fa5d11ce3fecc921b801a107d4f7e50ceb4517c7e3177d7940b5b957a467f74e50302047c435bb500663064023062fb1e7be3d2c4962c69ad19537acb60b6e2d51d0e52cf4fb3dc1ef2a75977a5e6b22fa08734afe46761da3e4c86e7660230018f6a34123ea9fcd324db8a66ec7bb0145307aaecddfe0ec4a09050ec87950cb82ad606bcd4949e45729fb8a9c6100a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310084bda3efdc3d37130a8a70094a466d4fb3498cf987c42de9a3138cb145e7b5f4608e740fa5f6995b3d6fb121b4f477f20230395b4790ca33ebb77848eeed8ceb009b8370cfdd4bd919b59950f6c31f27a32e4d23a90281246e29215f64fd9d1c58e30302047c435bb500673065023100e0b403299f6eead586aaf34cc0d0c1ef34024d0ba421eb6b1fb5990a4d72984064147ba4ff5cdd192917cbf33fa93f9b0230469cb24ca9d7d77e5f24722c4423ca92ea83ec488cb3092d8456cd974b5bbe21e2620af3947682c1fb8b6cd944e189fc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f53a6826ecf601d9fedcc80ead84177364d961219ba285b2dc057cd98443d2f2218b1df02960683c20a962ad8d55677d0230740976443a7cf489da841bde1f8d6cde9099b5c274bff4a9b093f8dd4e496928a9df48b1398bf057166653ed38e19ddc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f85d6cd613364455d8fe9b82a73ea2c5eb0e7a6802cd3b9b0e13e30e1b2a3ba1ee1ecde82d0179bf69c36dcdf145a46f023100c051421c8d994d76a8e23e9a46bcc2a4e991a9da444a573d070223c7671c19ada7a93cb4ec88653cbdadc050068c4c190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023021c09b6beadc67c96365d8a0bd8878a26e084d928012c9709d95e21ce69d91072b82fdffc8989948d9443bb003d85427023033b2c3e73ec012890eabd804c46c03aed8c8ea3be7bb2fd1df7be8ffd0356ecd4cfcce291ad3ddfd74ab7f41532e96570302047c435bb50066306402307650422e230a0226aeeac29b32d4c06980e766c1af097f91f5299e4cd9ec2eac694c6609614ac6b590698b273b369007023071451f7536a8435d66f8ddbc883c9c6c519f1659cbefd213f2ef03a6b2547962539a7c046e315f38a29f6e22aef4ab750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e36baddddb509cdad1a1e52d80b90d797a0be35632e572d3e403ead3e4b8bef06cdf797002100d9870c906c1252aeea0023002ef852b1aeaa99f1a19fe56012cf4d932c797d61890b917f69cfb64fc9537abdd4e62fc7549a82a7038fc7bb0bdad030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310091b9c496a3a04895caeb4d175755f74be802d76946a096f0d158b3209a646865e3e9dd84152eed9dabb1ae3172210010023100a592ac5ef74f23e585f484e86fd62f81bd6431967904b8b3633b7a52850ee763572caafc422f1baa493656f669d2bbf20302047c435bb50067306502301e840dff32462deeea76408eee3195f94e3cca1e73e02dac721a72609adb20f2e4a3f458b7fba2d56f4247f3b47e6e31023100c561722d4d692e7753de8dfbe77031204f68dc55aee944a4cd0e4260143fe0d2029f3fad343f1fbbca54d8d055756bce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d9b3130306bd534812f4b37dd4ab0f07e282470f3236c8cfe67be99b09426b681eed025ff375c28fb585edbf638b455d02310080623dd07d54cac329895193c722ceffcdef605ee1d1d6b10f9e66077b8f6af6a3243863d314583396a2403d05d293350302047c435bb50067306502305304523729fe08bd23507d916428bd0cfe9ba081971008f7b0d91a87de89f3d4bb864e5ed88e29d47bc2ada2c1479291023100f7b5be8081de07961e0f486f2bc948834fd7123da68c440608c1bc205f334d997dcd897acd87357f016aac5c09ffbe6f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300a582861d9d3b142c4c99d223e74bf3f52b22913ff4e6c8a32647db4281684ada23f1721da6e3cfc1b33e7c9e23733ee023100e44031abb233185f9e23cd72ca8d4e236435189dbb466a72e642b0d8604c43fa70fc584724b244f2d30d3d25b7d452470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305371857360ba0ca8ad92f09815c767d97e83ea0059e492f8838464387a410116f72d922d9b2074c040ca74280b806974023030921d69bd5f395f087195abfa1fc3a041c24cf900831028f9308948c795b40c2a6b2aecff4b0f0abb41419403fa104a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302c56f9a8a32b03f8510d2ab21da4184dd7fc87ca9263416f26d13678504b5c6a63c2ac1386537224d3a4aa2611ce55e8023100fe147cb7091513e36bdbd1c57c96e5bdb22a5e679e9a1c4430802413979990b24338fb8f75254d95960e08ead4188ea00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f9500d61a775eee75b782c4bf99d16137a7a3ae5bab4e8a49e62e0d4e94aa72883dc6e7782149032177c7fea35df7321023015b34e08b565b6e067d0f3aba3639cdf38e80bd1a381e7a2bf6346dcd28e36ad170dc7c9a174c86c876a9be4911cd12a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023024c3544b89d7d4c94b6e8d182d128779c645082e12fc7fb35c39b361e745357336c6add04b8ccc5e577dd778c4256b45023100af3b04c81e3088d141bbbeb3f94f84bbe0f8fba5d7266435ab03dbd96c79298a64a5c011bf4d8095a6daf5759051afbc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ceff9ce2cddd3170987cd185c8205075af572b583734036993068e408be1a1b274fadd9af84d1ceefe797c9b1bf0a944023100e3c139c9bfde879cd6bd4bdc74b77a3b59630842a6301118c77b96cd08aea11ce3b1a97771f344439f5c112eeddbf0380302047c435bb500683066023100b8a873a009f882d844c71bfbf3a5a406f1409d5ed738f814641f90041af67466a432f7a81dfde6cadffad44edae61058023100d5223179fd5d7a0775102c62e0581c4df81b1506b92ea8dbc11ee05382e4bd2270fdef51c142b17095e2e738ce7f55b90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eb0dc9c04d9ed0f2f9515f06561cdee2829d5c0394e9ffd06f2786420a080bb7277fbb9d2c5559bb3fbc4945181b3000023100886bf5a0005ce997234c8bd6cc331a15811fa330c2a4138217478b27fd66f9b226d98d887d71901dc0f69256707041d40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230667e2a2c11eab8e532cfc5b62f33a244378801a5d26412e09644459b940804b489d2a3856c6840ebdca08238e5d0940f0230279e102647457150da06c50a9a1b8682554457fd2cc94abb5f8b43c2afaefa20af9c340bfeb026e9c45d3929ef95ff390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303d610d510a3ed3a02b9cda371ca62cb6f943e3436fd70d245c2b3dae0200b1a166c3b8a6235f4da165582048407af5930231009a07dfbecfc01adc9ba6de2f8e7efde84233b12d189805c253888de8a78daba3a02ff9dce98c4c73637a360c42fa81570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302648cf713d354da6597c234a414121035edc6e28635ca9254d0b2856b7b966178353bcd0cc64e1b4d31f1c5b17f8af3a023049319b84c2d2f4785bf20a141550a10e01a5bf4276d19cf21ef00264570dbb53220e937632befb4479c9f91a9445909b0302047c435bb50067306502310085bda62a0ad931996b0a53a3ddca3825b1f6f680e7acca0ac92ce4be743f252d9b0189fd9d864f6c5e88aac835a2f651023012da9ee636bc2af6086da9560ecc93b0c308a520e5a05ba830662bce2c770f6c1545cc7170f817c985257ffbaec339380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a30560221eb76c55472c0baf374d437754c06177b2f2c25ba6542a7c6ca9c22eea46cb1529e660783e073280fc831dc30231008947a95c98e0e94add14c3d7be88e59893df8e2431a9a51c2acedfd2a7458383cbd6502a7c9b596761a0d11992c7c3ea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301c752e6c7460ec1cf46a5b6ff69d5e7a21c101c23b44b2659d2534ba3b20f6b0aa176f77666a5b8a92d3b1c034bacc7a023006c0f84bd1b5439551824fb4b39c705580070d3ceb7d599b6eedbdd2acc937afd48cc69fcbb6f46cceb9168a2a5dc88d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ca12be7d888ed31a343347f01bf0f605c6d41395baffe9aeb8d4223a99c6786fd35ccf25013e2d8a9c6c0e2b7e1d2de2023038c766cc8b023ecdbccae5f681394331a747efef6805cb4f7f87eddaca224bcaf2c9134452f20a351d2dc7c47c4988080302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306713de75aa36b18f533341173d227e4c3e60916e8923c86b57c0af9cd0ae7cb5fb6280f5696a79dcaacb735bf4d363ff02306f7678a9410c75cbd0220e0c0ed3b52d9ad08fc2e2c73c5c2416f12239badcee4bd0bee8b90f6ca5d901e19ff153ea720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307fc980f69f12677deaf9983a4fc2d6fca4676f73d19a3ee5974ec61e95020ccdb61ae0c5e4cbb07d8d074f8b3ea9487e023100e3020bd2752abcf0f7caafeaf3c5180425cef7d7bc65b3221103a5a01c8765b75305943ce09224c5467cbe293cb56b9c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a0db4a41bd87a311a58b3687e11eafa276d00e2cb375206497ff5ff3de8118995b573cbafdb1e32810350d05f344d041023100957b67e639fd6e7b64e4b41859d4b466b7b1cd649700c63a782099834114c41274e7f55958ce1eeab7c3cb5b5a9e08d40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d91322d6648bf6a027804fe772a7c56b90854402b64c2d556b78f9239b585426f68759c314e62b82df97aaf2c280992b023100b1b82777ae6a0f14a5127bddcb8180b09fc357d06091e7f8e82bcb7f38c14c9916661f306b70f0e3f28faae16197eb710302047c435bb500683066023100a4299299a558f324b831845899282c971c4cab71244e5d2d605122d814a36eebeaebbbbe651631c2c96c6af7509b7a21023100ae5edf4e813086f8e0fd59365c7f5b49b7ac6afddde0bb1d747719682bfc1a1dfcf6cbff8f1e31fb17156625a48270c90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ee2c86df684153bade26f79614440e6ca4fe34afd124366ae1a38fbad01bf6f0aef4b5440bb8be98e36d91616ee538e702300c25710521566c16177d60930e6bb1e97ca753b048e4e6d705ee80afb4a95429f24d22b3d5983ca900aa838ed17d47830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310083e6a000e4a34b39f25a2bda3bcb0015d92e6e92ea085e393e3b51b746400e46915ed264bc7a6b549ef7e1648e57401d023100928d1859430f85463d924f6fc7dee75678fb37c1edd11df1fe385bf97eca38e7765e8167bbf6a3e351f2336128a0464e0302047c435bb500673065023019533771cc17dd315269ed338004f894076674d9d201456e9fbebc51aabcf2605a27d9b6c2d16e4e1862a173edfa23420231008aa5b37efa764e411131f26f1537d6dc89fcded00060e40dc879eaccf1024bfc0c2d2c525aca2ba544f883dbdf0758ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023063614f9b80cf167ce687508d571df6ef2b9d66c3fd8303a698d8761869a39e57a776c82cfe6ccb6d9a11eabfca64491a023066ddc772e6e99977d7787bdf32173f72d0e43e8905d342e8234122cda4ace6b1fb8ae826ce726c224aefc0f86fefa47c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023026c8222c77cfcea4f071029c65b60664fc3714ee226c60932ba89bf538cbc9ce6195acd6d4d38ba31259539cd7e4ec80023100e03d084d931f2a27544e2dd14186d9a8e6be7782b7abfc00c670d991e0035a57902b60109d2fcfb5605190aadaf5f3bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304c9bd1c5c76c9fd8dba4fb18b09899743e6ed6b32a3418a5360ae11cca23b6afee32352a7243c2b2d014b2a38f89142d02307c3ac4b5e47675942225d7a407d75cdc1b7a78055c0a4f8f096d4efe545b46ba432fde547a78e1638890484fb3b69b530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cc9fba2b42259b291eb5849b4c4976f8c5c641d0b49aa1d5bb14026f1a626ecc701114a14f10bc280cbc4637083b302602310092cded822f0589b0553dfa24b44679170598ce93666f71f6f1b75f687e0e4d7165d1649c22fbfe7b61982febf1ee47180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304bedaa4612a696fd5078a49c85f010f28944b21e56cea7d9009ac0e7b49c00abfbe1d581a9788dad1541666490fc58290231008166aaf1c864de8b8cfdcfc426187781caf8a2509fec06eb58790b37a14a788b060e93d62f901a053de66ee71b51b1b10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304430c4dd57b7fd141e01a3896edb14c546c332e789e1e942b7ab3f66176694ff412eade8449a1bd33c5fa82b7cf4515d02303b252a30af327b23944310820bd687ea5297a5967ea119adf97606fdb8ca19566eddb5a2100f0945415a93378ee32f2b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023056c52be62b769cb31785c8a4dd002e007733ec529cca30e4b8974c54532402ffa1a3a80f3601d3e498565e07b48ee84e023100f0c9d1b53477af6c949f5b0a934f6966dc86db1f510b3eec54bab7050eb03e0bf1c702fb31fa0481b762c27b399120c00302047c435bb500663064023063a8fc057633d2ed0195fb9bbe924a0ddea099476249fe12a7796a413261cadbbe48672178a8dc76ad7c5456c976d51602304af8e577232b2feabb3b2c07661e0eba047642dfd2e64d2fd2640d358728b1180031357248120f8c174092673beeb3d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023065f21ecd3f0a8b7120e5a03745caf857874fe3a20a37a84a6c9fd66e677138f86927335f729a85c99841368bc1377c5202300b4c301a11731a676fafa8ffbf390c8c4b051f60cccdb627130209a17d5330648e8968f1eae6a96cda948db3cada593d0302047c435bb500683066023100db63ce50b5f86dafffb2e071d0cc4c6792779bc94434af92e041accfe6438b805d4ff3d6c31df1b7a2e21bdde63e8c530231008e71e29eb7c1c1235cee5f77aa54692aec0c3acd2c46d144c872254693a3712306862542c5ae7d8f94d6ee19f1c9f8920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a10dce1f39a7a6a4ac09a23dca8a1ee107fdcac7910c453463099ac1a7a192261948e4e754fb008d5d62eab19e4528de023002d9d28a8abbf4ef3e118c152e81331447a41cb65e7bbeee2fe2e3dcc7c2f7f616de05c36659931d300f83432ab20fb70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310091f57a25ff6f22222b8619153d0cd2d3306c6eef37e6309018e94b4b4ee991b97d3d66890ff29e83d4ad11e0b19146f902303caee39bf42bf42be8496dddcbac380ad1f9781e194a00732e6b2902ce3e86fbdb0707efcb264f3cba807d007369c8b40302047c435bb500683066023100868c51f89f30c0a23a1fee01f6e7273c585e61d8e6f2c403e18efc671e7d71367b27b2216ed8ed0ae910a85e0fb75aa9023100b3014a67e4b87f23cda12eb54ebb88ad3391bc52e1388baa86b659675859d79e2a9ed1907137f69dd9cf0d62cc0587f70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307be4ad0696fdab2275d01c464b283c1c128d1de039392cfab1c577477460753e8ebc75e00b1af9d61835bf5315700c81023100a47fe2afc564855da092882b3a6a3afaac44a1de9d1894ebc627402108ca1e82bed1be7d5659f890151fd669e8166de70302047c435bb50067306502310082500616502ed5cf525cd0643247200f4920720d3d824f289179e2d7d1bf227756a324f5f3ce4276d4cd72e685b7e11802301f0b81ce7c0d4499634f88616616e519607a86dec62b1d6567680fb1c3a25c0a49d2654534c3bf5da40c95b6480673ef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023037dd67e26dbab4577f7d8cbcc84278901d9b4ef2036c57d67d52f17f9df78215c92ea136fbc9f3fb0782767e71d2b190023015cc341d512888e87f54b86bd31fa046d276d4a8b305935c3245b4401bcfc61c5b39072ac4d030e088af59c5ae0cf91f0302047c435bb5006630640230602341fc7e2adf3f2f0b5867847ab9442e5d00bd9d029beff10990bb24379cd8cadb1b23477e2d97e9c4d66b8ad88585023075099b271a04f88f9794ee58bdec733d5a4a2925a137322eed877e7e5029813d64871cb25c43b24d0f808046e577d6d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ed2cd1df05b575911b418c2a82b0b3686d2d3af9465cc211611a14d6f9bf19a4b7f025260163f8087e047d68200ea65802303a0451f1f5b2b5898dcd3f1f72638e77c063b121d2d2c020cf592c76fd0b5d35cea72e9a44e61e2622f0fd77f2221a630302047c435bb50067306502306c74adf6c031301863334f1c1a06b459ddcce2668b415273db19a23098d2c434e7a0a7de297e089103e101a065f35ad9023100fe93695e131c9099f6b04d78483f8e36010cd7527fef6b8e4a49c35bb871522647145ad321f5307678129d750f3e19ff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008b4de378cca53f10b3cfb165c85cc425198e1da0eb982226a91ccf6b176abae50f8e055a77bd19ea09d136e9e4094ab9023049952d4c4ea55c5b2cc3cdfc0fca9b648285e258d368c3772388a6d4aeb7d83488fefbde04be61d0abebcc9d4a5533230302047c435bb5006730650231009ae304d0ca0ae9c9565c1bf8c44b670356dd4b087b555ab33c1c322ecd7186512220a04ada5ea89bce508e8c819a579f023077f5a88508769360639b3a0ca4bd7709e88d0dcebb7215dbd9a47c8933d27ab9cb7c966be30671608dad8f21f3c87a9d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306c68be41b2b1579a0af1f05986e02a539dcdb2e5bd52ac1272f43a8464cda23ca9124807c3fd7ce250a0436bb7dae60b023069d0f01a2a4588569ffe0b436e71ea9b9a1dd2d53367e7561abc974a62490b086b73a0739e41fde4775dd65c0853b2ef0302047c435bb500673065023062a031a05d1e018810fd9ff4bd0ca4a27d8f82963544c4474ee2995feab94fb6ed9d5833a7586591c4c305a4045b0de8023100a3dfb68e109694f5c8ddbe3e60df40a34e91d01c44d0b523b04c6f8b53e7b901e6311126b6b7d6a5371ddb72079b6f560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230537e231ac6f62ddaf9b3a463ff13fbf862e4c969759e36bbd164fdfb87ba442c85cc34a1b334f1f1a615d8743d4a24f80231009339cc7f3668306cb1529bea84175340864c54b14b23d3040a4a63d719545528a8270add47751331584de3d0fe4946e30302047c435bb500673065023100f89cbf40f3787102b535cd5817c31227c0796ea78333e664c088bbd7e6e7257fd7d47240c0c5fea847405e3c7967583d02301fab33454e2b1d344ededec1e31c23640b1f674cea2efed19cf7c1ada09cbb7181df65b4f3a7e6f73e97d7361e6c678d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230136912dcecf8551058eb49a7b30ac2d00384caee73389c8c651133c3811a9100ff7e0de28013a2e1cc6628a9dc35733d02303cbc86f3c8b53d8657e1b2d29eb7542acb2813b701c1027ea3f17104fae0f37578d660b4532ebd1a2099f09f735a109e0302047c435bb50067306502307cd3d427f26de3bda21593cd1951bfa6fceaed177b37ed99fa427996a36345ac7ae3f514cc6bf2b20bcd20738cde5ee4023100b578e30b06afb14a26302ce5429464d0f790399c02c105b02695112dac295e71b6dea031657acf44a3eab6b48753e4ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fdf3dcdd7a8b08f6eaf14b549f507beeeb2a24616ff016a15ad584dc97169bf2b6f27d61ea41d80a4bc41c22e8eb00e1023100b1b3149e378598eadf895ffa74dcc04cb94df6b715278cea5fcc29cd926ec3cd9e397ba0b350eb85e46a3a818cc5f83e0302047c435bb500683066023100c984fafeded83581320d7ed97ac4f7b2b11235172bc3ca11aed615a3ef9a72b91be740b5b0a4b5742bf12b6951772887023100c174b955a08b2062bca05bcdd918d9ba60f14c00ed285cd7db6fb1aa4d327c1add6488db52324f8b2e4e12e1cddf41f10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310084d6099809548c5a3033d6de6a5d3fcb99d2ab880e8ffd61366e532c4ea61188271bd6a84b60f21cb0221b1c6f17f3280231008b0b3193abdab3c8bef407f7c2967b4265ecc2c678319db17eca2853046d7beb8cbc6e617d040b1efc9ec50332fce4290302047c435bb5006830660231008bd69f90d833d48296a91220ee0e2a6614f079e761af033cfbdf8e1a0f6745fffac9bdb240bfcb4bf0d99686a2abc69c023100e51b616bdf5d02514ad620c1f69eb7b7ae6cd482e16b6c6c2e4b035c9dd8b91dbe2abcadd38d37c1857443b4556040be0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500653063022f2e092512c9340be8d216d67da42bb714e9c2b191e2f7e51514dba10418c655241db80961aa5b1fa7793825c0fdb1cb0230080239ffbcd27479bcf111efb3ffdae28008d9e0143c3ff01fb9106f9b4a8e78925f96f5f9cb37ad06c691d45b6210ea0302047c435bb500663064023058713701c6cd4a5f5b0f8084a0cb2b6ef9a9df791ad9502eb8d0fe3080b409f2f7ce0ccb50601dc0085b79eb22d03b6002307ddbbe07d8453f636f508bc856fd10162e66245ab4b7627d806380c48dfce7a99ecbda96d97bbe32e6a3a737d817ceac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ac70f30f3585389b05dad3f995f710a55ab84aeb86dab00d15303c1a618db5fda2f0663a993159670ebc29c35d493b3a023059e7f8b9647f4f5fc73eef2b5e6a741aa0884c6b65666ca80606709b4b1b06cd283f947ed919a2b33b6dd26c3f3ae9f10302047c435bb500663064023052c17207738f0b458fa2c9a287241726e8705a39a6ec533ce17e518a71588a39dbc58eea77ed2f1ab6a17d08b14703390230072e8644fc96746ca3930771b116f0796e67873c1e84be37416d95a15e0f449990dd89f0c6bccd96d7b0d9c39b1466710302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023075e795304b81c34bab84550376373c7fd14f758bf609dab2fe0be878aca864cf326b11f0b1475c6c0d515ff6c6d7b8bd02305e34e3ee0ed24da7355a5d51958d0260b906816d977f2ed745c5a42ff90802a29589afb8aaff98fe9be4d7b87869678e0302047c435bb50067306502307b9a618f50a535e328a09e785fc7f75b86953754840bd981a3098222e82520b47d6b09b1d21cc9ef1703aceff2670f0a023100f9e7793b1cea45dd6fc0aaa23bd18fff0b02a8c65f20f00cdaf44172610db532ff8e365770b73a84f14871de5a32f3510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009772398671552883b91652644c0ddb3f09b7171b90a9ba463103d2b91ebf79c0601db5f1435e5f8aa34d430c943d87a6023041442b6f5072363238fe62534d33320a46c69341759d1d7f5169d6ddad17e9c75d827dcb016ab0ccc39d17633a7bcfe50302047c435bb50067306502302cee8ef8cd2ed6fe8f6991e79d217f7a753e2587360d46a1fa57dafb54575b49f04476d055c433c534fc00c3e17745f3023100888717b85cd20b765d6584e89bf0ec8f51767fae7c93ca84b617de69e380cb1ca8983629aafdc4538931bfc93b8e32f00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bdaf64f62daf525f7dd976c04f1e374fcdca8ac566cd6a441787cb3a8b984cf6b40a13ea6290dc4dc3b20d6f6a55709402303020071c94e57a0c585eb23686771507c635ff97a16161a560aec5f412fee278d502c3b0144b732f31224151b2588c730302047c435bb500673065023100f9d86c076690f2dc0b445402f394c5fcbf029e4b51b7fdd40ec35ce3f47bccf98c13b332970aef015f20220d9fc8f2f602303c7eced5b0a33da63f1eb89b88bf8d17416be16c6d23ccf0b0cb9b6b63c50a2927f3dbf29caa0b44b04f0f7f238c38920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302252b4e3034a7d47ff33d5512a2bb63f2f4d5459cedad1465993cb7e71f68a485f6ee103b60bbee5bf39b41948c3d0730230691cb8b941288476bb0790122f8634f5cc922cd2b36a04d149b280a4f2eb56eda46d67670424747d978577e42a9712aa0302047c435bb500663064023072e9ef4820b67b08d4612028092d6a7888787042ea868748dc14f49ce436514ee26ff28ac8b9239f83e3c2778c978cb202301f019946585b64ef42685b952223b2bb7670a8081f703075ad06b555adb423dd4ca35a5d71801a438dfaa774d79f7e660302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023022dabd5532eae0e46cd6ffb3b3251fa41562eecb5e10c26bc5ab99a783a81c2b71c1838ac709f59559ce87301a1e9ff702301dd11cc1b829360330b91b9b4ebf6b36ef7b741b06ea7c2c9acdc11dbb703e3cd341fe83925b76c4f556527693ebb2bd0302047c435bb500673065023100e461f9b45067adcca8e79a3d63896a7ce64d3c5506d5bcefe2478754da32a57a4e379a41714c8dc71300640f9d1680910230200e40068fcb5020d41c96d889e40ade2278d024cec5caeefa3c43bee9ff7e570cbc5d6e4e66e2deffdd57ea77fb675d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023054413ca0b6eab75d730c88daf56a6045f11051f551bb85137745397d146718a6994190ac5eaf9c71b3d2c002cad1e9eb02310081056a4612ab0d424deb3d354ae3e99bdf86b4a054f4b277ea34d1ec646fdda8c3172450887e6c17bedc81d5b1663ece0302047c435bb5006630640230323cb29e9ac2ca099af9f0b614863f8daed5885b67db83b98ec1664868e98836b0c7fa7ec51d75fdd99140861a04ed4a0230462e72b48e81359654174c635fb7cd88fcb2e489905d9b65d7d15b51f592b63f5a42f2a4681b7f69e7bcd220060212e70302047c435bb50067306502302f64489d1b02ecc300440aee15213913b081f70f2acf199a055a78803116f130d4293f636aa4cfd204194f1196717f8a023100fcab36f94f61f6206e974f5825127058cb01df45c39a152c8de229487eb947341f7b49f169a2fcb1476d2a6ac7977fe70302047c435bb500673065023100f2c9d4b1cfa75209d99537069f88e4f2d7c903edf6e8ad53985803129ab4c9a8ce59b08f9f22559c4b35bcc2b1e1635802304f030d6608fe444e2ec4ce973f085f8cee912ba0d2e4da422b45ef0fd98d2891eb126a5dd24a6cdca94621f46bdf3bc80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307f8117ff1afd81fba5f4039972a75147118307a590a959446ebdd2cb9b7a62f705f5ef98f135c1a5eb295669dc39f2b00230794394a04f46fea23915687eff55468c152a5ddbb10b522aff88fdfdc9e0e58473d15dce9f7d32a58fdbbbcaef76ac650302047c435bb5006630640230090dab218a4a03e2a203730f74c6fd953b0e6c117cdd38f83ffad624b0b5899d9bacc92bdf38b76b53fe7806c3a961c302303619963dfb6a229cd3b5dfbfff4d74ece310edebba6cba5bfa167d9c17ec1fcf5ea1777e244ad7d7da13360f910f6b050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e0f42218812db294a19b4c7ef81706b016e06d140fe77cb6aecb70be30c4117ddedce0e158a52e78e8a9e997dfc8c7be023039d3ee2699bea68b1e55efb065d4dc64750cb23db9d1865cd8c3d39a192d0768583e34c7c8bdc4ee9da2e32da8935e260302047c435bb50066306402305c97df227a178c6231d9a2e82473282f1583d51572f4389b529ebedf0afa111eb1a2f472573b13a78857d08ce28b715202304208a1985b31182a751ae66a057a1c0c9ad80ee18736fbeb1da789904009eb5a5df7c37de170ab60cfc2b59b41ce93bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ed26c8cf1ea4a110cd0764d3b9ccd56faf905b2ad3a687e6be0b6aee1b843a864ed4ef1bdd6104422b6e81102284fbd302305e5506621e407e384895bbacb4f1b74f1a71d1f52fc3b2519dc2add36b22d79c20843b7d2c8446c1fe1aea607df3bcef0302047c435bb500683066023100be176f40bc0af8d508b381220afeb90460318a314309416a987917465211d0a61f72c849e568e2713b618a71e3f0590b023100af2f5dc01424349696f06870e6a484308bfe8dc0cbdb393e06b0b94563cc7366e9a8a2e6f124d2d9184be7e8a62ce56c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e9e3fee4d9b2934b67d77c71bc5c73abbcda89f2ce6b0cdf91e38ae9d74ecfbb55d227ef587fbd19a4148e986df2194c023019931eb1df9b67267dd7549fca97dd8a3597972f499759e73258c4f394e2f6d5e49ea045e725f33d3a4752bd51c620a70302047c435bb50068306602310095d5bd989fa203bff28fe71dbf3286d6aeebef158944bed3b2ebd6ff16739202adfcbfb142617210231c385e4222386e023100e38ac8e846300764a98d2e94ddf8b9ee1e5320766771e4732c0be954cc013609c63d0252a2586ccc0273478f20d3dc310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fca57821ff197d3c2a29511bb9203c18e80677675a0ff4c65d54cf82d5292e85d3fd49ed2f8c531d343dfc386f4a9c9f023055bac7ef8a2825e159f8e8889496828cfe2b1fce3afa87a089f96243097292866dd97c2a7871a5d07a6b807fdb40a9610302047c435bb5006630640230397a80bf357679f443cc26eb7ef333d570b4cbbf5f2f4b10d6ba8942132565b0e3ce081ef750d25caeab46ad62a47c4e02301ab1108d78097b9dfdfd53525b627f756bd082638f15719564f38a0b802e5de6a8718fef28942cded4f3de6ef2de571e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307a33bdc3472ac5aa201cd1359facfe0dab065ccc1c30350d5ee8b18a2cc36002084582e2e238194f32d2c1c80ea458b7023100c5b0c6b9e84316d7d5e1eebc2b836b0a5fd6866101c296b9c3815c41806040ef78ab5963bdb6e269813a8eb3dde98af80302047c435bb500683066023100da296644c184cb35f0f9b6184bfb8b25b265cff6339ec4cc2db0c8bb707c1394294d952dba4e16f49e8865a47a32a661023100e58d742414dc2ef849d759563f16745a047ab587bc5a60daa753d531469bff44622a54973b425484de43d74e484cc2de0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ab02c682f608677f644c91a4833cb9e0dce831e612730c711bd136072fe7324a028a837ac929024d5d4a0e32d7a23e9b023100839b87cd92789cb3008c7f192239ce3501ad4768c85a71b60445349fa8c0c543a34dc51b20068b4e966e90569b1073550302047c435bb500673065023100a58416bbef3d2fe142cead9754c4a4c4d9421f9613770e5e27cd4b06b18f8272d55920d894c1c679871083486f11656e02304fb605b81dd9b44f55304a0983ffbb06bccd96643de5a4531f64da883511e6405237c7fa18ff39439235992ba70f902e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c94f4e4f6a11d4c72aa9ff4f9dc460e975c048fe8532c80f1a0aad182529a0022cc023d8e66b1f168532b7ce67478acb02306c6a7b99d9a1f31de6f58fab3d90fe2811b3385b98554b2a8d26fcc72f86086e8370514813e266db22594cfb5d24deba0302047c435bb5006730650230116003103dff39a1797f2780deae82ec80818b9494889db9762be39bbad7c8eb5879b55db6ded68ada760f4e791ec988023100da7aacff66a301125444bd6bca660bdcd4b92e521f7487aecbad1077961a32c9766df1b415afc74cfb23782d553808100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230413008a080fcfc9b5db3a3c829044b93ef308aae4494abb1c7e029c69c89fa99273563ece75d261d7de13b6f2c1ea4f6023053c64935821abaeaaee46f00b70a57f284cec7854b8fe8eecc74291ec50a1c4c6966e66e18d7589ed21dc23f29c8abc80302047c435bb500673065023100ff958e90143b7d756a01cc87d939c20e0e832c0000fe912eb0dad8825d0ce8cec0967031fadd005cece1c60c12101d6202303c3e1112249fdf9f8224f267eafd1a0289e92178acdf0a0056dcac18e8f209bc5a38e3cd8bb115e9202416b27e8820720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023069235b88f647c11957582da26de567274bb499dedba806873b3e67458f0c5044f2e747a11b0581c4a5aa0711d7f34d0e023073266b5fffbc15e7403f0fc555600ba3f56e1b7c692fff5e9cd40e7042147562ac42297a60d24334b91d544456cc4b5c0302047c435bb5006830660231009bea15ff6e86fd7b88fea97d0961dbf76b62e1cd9be179246972ca949f4f8d8abe368a506ceb8fded16bf443a47485f3023100f0ae277ad8f266f120e74c6cdaeb64f098dbd7bcf96fb685da3838950962ef788b0eaf4794d24301e382bbe7ce5189540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f8de3a76da5ceae4b3e299003fa581f79b04c1a82338453fc108a4a5dea8712038e0be029175754c7f03b75062b4374e02303ff9e405ee1a1b5c55d9422afa08ca47a2d3f80bca1596434d1bcd50c8751470fbe138489923bbfc25d9d076fe9beb3e0302047c435bb50066306402300e42c50ac84392682130928ceb892aa9a84edde89ba928a254e7ea3409928e1b848a5c4f5df02df2dce930e22e7fd2c8023034012b0609932c20ff7ccc2f63372fbc2da3a2dd0710c41d6e5c84e741cf1328d43de3ee166d0536962b923735ded42e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008f352a37d2645454754eaa4fe48bd0e31819f7306b4ed7288fae90c90257a5dca5f5f8f6af92bbec14455c0dee18ebca023060f3bc8a726f94b46a83fbb3e479bcbf76af9434f227fe887bc3f9b5e2676b3b436da4f40bb57d34b4070861650149bc0302047c435bb500663064023074bf937a37bbaf0536da3ba46c19f9932aea36064b6fc1862e2f0bdce4bca50998edae9f4a504dc14c34488698a4b9d502301f7cad5c835c35e2f735063fdfe19335676ad69de04596f6aa60c0bd9270197c22d63c5edaa56cd32731c5d4e23429b40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023054614723dd4bdc474682133b2f7179e6731ca8f52e0ca6c496ff3459001c2817327b57665ac2973d5cdda8c9d559b547023033a7cbe7b423bf121d60d1adc36ef7f9984663b0dd4156c083fbf97c0636105670d92d0bb2bd1acc9c0e9b720c9503e20302047c435bb500683066023100a321a55dba7ccf9591201ef8074207dbdea8c80909b210cf1e23fa4a00d8090a7fbf9f6ee2ecaa2e2db7f3cc1ffc7a32023100b42a057fc796c20984f8aa0c5facc7d51e0f3c793768b82e7428a573ec069b5cdcf0195150e6abd9361f5234626399af0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230242e6d856ad172973ae44b5836f5e90bf64f417ed0ad6762030f43800c32096e55add1f30dc6d4ff3897da555149c7c6023100d85fa55e02f55ef7803f3d4bfb21241a33cbef192b7ca7e0347263acfedd6638a1dd7d993e4384758020b3099c1b3a910302047c435bb500683066023100b3d13c1e2e0fe1da334d15ea49beffdbbdacd72eaf8e749e990771d3a0fd29d2fcd91854170a11221df716ec81fb42ea0231008ffcd3ec3ab251e633b581ce99b8bfdf817c2fccd39be6695dfe949835edcaf7c61a0ece8d264931043c3acdadc99b870302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100823eae90f68ebaafcbbd781a64d40c77c5c7d5e88024941f454c7f5cd01128f4aba05635200932dcad192b909148b1fd023100b0a723e319b075989d0b7d192477217c2c8d64d1ae6f39641dd3c71fdfa6885873ade39579a39c729191a04c365fc67c0302047c435bb50066306402300251ca8ec8ec03a01d05ee9690c0b276c0d0511b20a5933593fe9604c0b241da8fd6f1414e5b01a837bb9dfb787608bc02302df88e8f5e2430b52d81221ea7f89a5090daac3ea90c981e22425eef300019b4a8718f2030cb3409044ebed756e2d51a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100864cfd692dd1959a1fe2af253431ee97fa0504cd5b74318e659f51a22dcc224c7a417b394bb8cd8b61c40f7d6b2acbf602306dd0d60e71dee4e792f86947eece404e84f1932df1c9f08b99c1ad6e8582c688f6ec834e00bb017bcd8e69cde702057f0302047c435bb500673065023100b2697fad61c68c5c7976bcfe6cb3995ddeeb056d1010a60034c7732cc5ac0efc10d08f4b77b853d51fd0c921a385cacc02301566687245c564452a1c28bf83c431d27bae6ddcc3b1624404a07eb5e5c14847cd5f04dc862461f5f9e3588df8b593600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100eba9c555aa6765c5792c6d410ac2aca613234f8afe7b3ff8c8211a1b25da2ab518434519508f1b6e8b9b507820eea850023041eb008742b0f755ca581ed20f0b8b5b569136e6861c2fc5cf1c636e617e574a51629f7d72c630cde35f7739cd51534d0302047c435bb5006730650231008cc605c81595f0a172bffd1e849f6364884c3043b04e6e2da5f0b1acd6aaabea5302beade5b98786bc683bb0dfd6efda023015e516f2f15421652626411f0dd869c4f3628838f31f6f500916c8a9ab4ca301f1c0a3d32359e8aa9814217d6288c4a40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230277972942b635c42e0294ab999a8ab8d3594dbdb8130318b0ea6722c2703ebc65f2930be90a0b908b5f22075353e631c023065b7de87bda742227e7856ffc771cfcf02a61141a8b5526ea644067874ff4a30c8b61f2f21024d94ee667d2886e0357c0302047c435bb50066306402306860f888c47663bcfce49360c7433028e53eeb517a5e51672f3b338fa6c31a4abcad4bed67bedbec475bfa4b529141ad02301bcd2609f59c3b0660e278ab520525e850368ba125acae7b339631abcd92544653204667b852c2b0a19f399d1813c1a10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008edd4d30ca91f2a6b579783340d701219d3b24a86b7b51bee4d9de674a9cb63efe1cd9b42ba9f231c5f3df1f366d76f9023012392431265f2ced1db866c3fa9ced6225dca999640944bbd9902b1e732dade215afd10c181c3e6aff998c62400b8b010302047c435bb50067306502301ab632dbe99cbe8d668fd944657a614ab21198670032feb899b8d995315ba12cf26e76bebdc946b80a4c698aa79e0702023100f7bc5840274907306940326fb401190532e8ee23355ec6b968d685d6a8ea1376942eed97c68ea1f2048c06d6f35f00740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305c606112fa18acfee65607e57ac83f6dba55320363da583b2226cc35eb445685ca04e40b424b540f1b7fefcc6a8b786202303f91742be2782f7b6095093938029ffcaefb4ec9e16d2d0eee16a43e6a74e9af3bf6080bde2b062cec0b2e9f5f9120050302047c435bb50067306502307a694e85fe2ae1bd00c2d6100fcaf9e5bc882c49a542d9fcaea26331a6122de1532866c1f1227020f53edfb7d8d5e428023100d957d18fe5c1d60387089274a2590ee6655db8cfdf5719b7babbb11b4ebd814eeacbbcf8c95d9731e8de1bd8f89138ad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ac41322a2bb5eb9dff3953354ac8a865b1b9c88e769ab042d21a1b1b435e9d0ff08c653f18e1b5be58a1cede92fe301102310097f500a207aec8589adbbab5b1bdbb0f98f73d3d1d05a27e0eabba4756c69bffb90fe01d39925113b8d7ff1ae6fd89220302047c435bb5006730650231008772b00567ea1c6ae3a08f05281344a7f7fbdc0a422aa95d2b666c6017bffe12e550ebecfbd4989168068cc216b93bce02306ea5c1cf4aed9b7c0904d7fe468bffafd128d4367046d126b4f98bf910206c74bcc092e9a265396176c27aea1af9a3060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301d9b736e83cd39bd8c107cdc6e2bb1751d4b79ac9bf6fb6b0d4c5a5c54c66569f91f260f151e70dbc7ab88d65d8ca961023017142a1dc62711204308566bcffbbb712aac0024ae3f0f79ed6d0284b28456dc4db99d422c970f1a904e854fd96d6ab60302047c435bb5006730650231009e73f59d6c3daecddb8b8f5c3cdd7bdeae34570377335ba04cedf8bbac1967f2f5043f934adb42e494449d6c1bb63ca002307014fa06500e351e9f97bc276bddfd18bc2b27a62470120d545478c3101cb7612bb00c79e8ac6e2b227124914db51a270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305847db2e2f81cdc771995a30bb451e5f7ffeac1f753066415f5c95c86c2d5e73b50886f9942e229098a27383aa15eb0a02305045cb9e14e2188e98a086252246d92a41d112b480ebb4409c4fc8a75f5cf691fab9d9f5902a8c4889aeeab4ac4ea1330302047c435bb50066306402305b1cab48df6cad3eebd540826a563611a2556b0dd1fb24e92fcc15e52234c20e23a339cc387b25c4a49e967bb8bb0b40023040a93924ef165acecf966db111985d9b185ccaeac46b5f6e14d139a0157e15f30a66dde4a1738b721d1aa8df72e1729d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100aeae23e7a10376bbd67638f9d38d9c6fb1265a4b7b70c58a27b529b8c201ca76c9909c83848283cf5c756fe3baa13e07023100ef753ac3c5b0a1a19cff95750db3940a5f1cbe649ae867074a4ee706a66251ec97044a8c10095246cecc9d278e8779900302047c435bb500673065023100a0344c8c5f5eb3da64b0759a39c4ac1c5c58edc54af7244f1d4d348c04654a59bb1967f68c9f0934e2ee1d7bbd5429840230533ecfedf9693351c9e641eae96d60c188eba64d73361ae3a783e1be6505329373ca046bb4a12117f16498a787f6c71d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f2b4c853dbb2e9212a6cf106e515d2309e114fda9ce7e4ead53fc5d51e5531d031984a898b619694194414f2a0f8688a02306e7cea09be60702d793bc9bfec8469db10ae5d58babb1f37571be397c4a31a43cbec1c1b82d27794550e9039045efb8d0302047c435bb500673065023100b234545cfdfc610d011f9415d36ff0202c1e3e8ca110eabc8b4b59efc49b967958cdd7aaf0e4e5ef69683123f437797e023060b06e3b0eb7083bb391c9b2449e7bc3d788ee74a1a63e29bf0c7cec4334d7cd7fdec7496650cad43923c0331890b5dd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310084f586a8682cced296a95c8c36035aba0659f73f5a7c53d6215e3dab0f8180776304409948c711451f0360367e8df8a3023013009a2443b77cc262a873fab8370a33fe25c6eb9779e79ea0cff3097c482afccc51658a05b22725f927956ee64240750302047c435bb500683066023100f734a762ca3bf35f3685e904de074d426975d8f488d7829b9734ef1f5574704c9a784888ee978772bd619b9a8e6ec270023100f64e85354f1763f80f893493a9201a70bd913819d8efb06158f8613343034d90cf91451be1129fa13f452f9609d2a97b0302047c435bb500673065023100e97ecb6349927e89d75cc246411fabfd058812ddecee27abf13e6f7bcd149d895bdc60ca6c21fdf077a992c8b477d1f502305ca95a089e6cdf207d5f5d2460a2a07e4764e0e8a245e809c047a35c2a6042ad5b3a20407152f56c26473b7afdad4a840302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023036641fce2b2584036065e8eecc072545c97eb94a372f40ce6b476344be3d25a13029e57b8be2a68faa3b1a576b20471f023100c1c5cf6785435ed8be406fa2b807b03ea199dc59a1d387d734a21635b177b2907d72901d58f989393d41eda8848ab94c0302047c435bb500673065023100cb44f10e6c47029ad6326491b08c5e86951723f7fb97a5c5fed304050df7a8da5f53a410b7836ed15fd3168ec8bcffc402301532342cf9300317a147ce2a6847cf7f4e50bc6b39036d896fa1d4621aab51de75c8e1a5dbc234b7fde3ccd90fe324e00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b7caf2cab323389349886051780add4300ea59230c7f98c4991e358fc49071cb6fd81280ed9475a4550dd79756fdf43c023006cff8a95ab0484e4b30517f0a5d22e2e95608a08ddad63df053219b834621f495e319bc33af451fd2a49850e79ba1510302047c435bb500673065023100a62645f888b7e21d999105c7b326519b949d3f72705432563b47db2715248f2cf903b9fb7baf31d52f30ca56b46d515702301aebc7ca59b18dc918d18ad501d7391802d7103435d8c6ff2e5c64de0abcf8600d591b1a4af3df3a652bb343b65138990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303f3fc2a3014dcd7daef90eafa7b845c9803d7db2f14ee7409c70bb318ecc4ff7ddffbd370856f424f939676b52da01a00231008c42b53d724002f50daa49bec676e6c7f02cafc9c0634224c288bae47a716958c79f57840d1d700518c8d3f4c740465b0302047c435bb500673065023100f70f1b677bae66ce2a08795cbcdb8c1821f149cd6315151d28a87f1a71eb7068f72d82f3ae84d2cd7d7a8302e500735e0230478715cf3733f6320e1eefb701fdc334886e1bb7d4be911551a2d9804fd5211f330feec0890c402ecca7910089a63b950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cb1e7cd0ba8fbb0c3c5434f743e33930302d171fac3f9a06ecb7b98c7b84e041c47e6acdcb6222a7a83ceae75cb84dd102303b615fec60bd7310f7022584b72a6113bb8bc9dbb65174f296b11d7a95e457b7777a136f51c9bbde612413ed6e9371150302047c435bb500683066023100937b21ad47b18a42913e49b1daccc666844e2e0c0b19e2e50a467b3ebd1a3c3b81049e9539d2bf34a4597c5ca632fb52023100971b0cf3ebe83e30bf9f2ee4c671bc7ae716e5d684722774c819c9d29528ccd987cccf324c797ed26adea06ce97c94e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c87dfc4bfa2171e253d8619159f3ea46a6dd2d85c262f80edcac262421349fcc436921397914925ad6d593560d15f45702301f18f0ff7319dcae07596fb2f1636910282b19c56c8b051fbbacf633e236c338ff28eebb03a3c1bdc5abfc9933b51bf10302047c435bb50067306502305c76b22b10f7abf347980004677e861e599b88ea01cc359df004e78bc00ae0b891bf9606f05577cc033cedb8522b4185023100f026cf1707bc329d565e042e8437c1b38c0a5d6c7f711e681b22a09a2f19fb65d1bcb4bd342783670c53c7e7be1056e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230244ddc7122b636760d79d1ad97ceee20837791fb91ba4b9f170d1d8128ea5092494e57c4037d64c8e7df48aef7d7516202301c247e56f302653a12a990d7b9b96d3c06d0396bcbc9ea590c560e975880c99ea2ed2bb9bef049af180d1862c2ab17330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bc54c81bc074f679f1be05b2c91cac49e9141367e582284e964d50005652431189819f17245cbd9e80d06ffe2301ed9902303df3e25f183efc82a5135bb1e2a1bbbabe88c6db9287201e529ee5764dbb586a396e73a51b62178df79d3715b34505b20302047c435bb5006730650231008ae14b30f2b627be326a57cd43c28344f92c22817b82f0ca64d86b217b214ed70133a80e1ae2772d1bed528a05a6ce3b023016468ad9a596fae1f2259a5f9f0f9240e0841e831f014e4d33b8f696928a317a937177b2d7096d9f43f44c15d96901fb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230564ca0e31a36eb3a07a14224259fa35a4bbf867e00b76c15b809244be2139f414c628333b480481e5e700fbe6a808fb0023100c3e48fcc59978a547d5641c824a301c11faa31c002940761da1ab6895023e83e8582d19c3ac57f853fad3b0bcfe3b1730302047c435bb500683066023100f33f702b524bceb91ceb5e886d822ad026db084275d8543fd1873ec6e56bb0b978e81daba4bf77e845ad4ece8f2a24e1023100ca3206354b2da5ad3eb6b7edd06e304860db957eea8f47cb64bbd3927e00cca60ff5fb130b485359864e8df4e64bd4a10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bed0c312bef3a748cd0d59dc5aba67058f2abd2398223b2de850ec1fe257e31612ecf940e9cc7b9221383330cc75e737023100e7a2e18510331c35d1ba24821ab4fcdf504cc101a28d75264eaeef962f79738d5f126da80bbd95e9007cdcfafd0a95ec0302047c435bb50067306502307d0ea28732a2c0fa952484477f499adc744f8de284046129d9612eb77561f6293aa26c86a374161eca33f6b445fa49f4023100e2e87063042aa48ae0b9311a8123333da52f36ba08c3599c99d1675df7425091f153d74e5137897ce4f5218c78bb6e660302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023025875cc2e024ec9f7e5a212aea7239252db364f8be41cb76601ad5013817d47942a114a3fefa796350185443aa6fc2bb023100b9f23e0092b13667046f5596705cdd9f0ee514eb3531572d2880a36a0643599551d1e86bcc10b77c23c27b2ecaa0e9fe0302047c435bb500673065023100ef69dbaebec21e0b6ae409cb5499f3ca3fc29788f1a64cc84c93aec200a6c92efd465de5f2a4b5954ff0c325713ec526023039349055d6028270db6f77539a39bc05448fc928e1a0f2eea397776c49988dbf7b43d139655c0a2bbae7b4a9acce46010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304b2f39a8934cf1630351af43b18ae91747c4b899da87da0484b8bf6be3c5f502c4b33c78d9ab449568ea917a4585d157023100ce1e19d089f3c04bd9b84f23939d6451c7b98dd4b9df4502cc006e8277416824b97ba2decec4688c6f4433fadeb503b50302047c435bb500683066023100a61529c3e37d43b3054df2d9a95501b3a215619230d617a11142ca6b0fa2ff1479c60c79a33b32fcbc0e3ef2feeb80ce023100fd8fc3f3052993e059d0252e251a463fcea0f7961a40e11ee0936116868158ee7ac65809c414b50cdab5ffa8f8802fbb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230159c0248d8b9d81161d99af3cec17800ad4394783b28823dab34e1b396cf9f3dc698202e671173e314105691cce36816023100d0894cf4db8d7e9a1168fceb7fbb5c8e41c994a2622e3713955632eba4fe8304543ea96f942de6b4ed1646fddeb148390302047c435bb50066306402303f19141c8166152e5591dbe040a88b2f463cb06ece20ff612e6fe94ac1e17e0eda8e5749e0dce064c2d3350393bf655b0230299cbfaefe1ec3b659fc92a14755e85fce9662181ff468ddff01633fe48b698266cc8f41955af17455d81d060a30e00f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023061cc6be49fcc318d5120f415742c7af7d9d6ec498c9578d8fb667aca69817d38c5af6d85e2adc5419e09fe9eb441ee39023100ed45970cd375786a30028be075dac1a710ad85625dfd826fdb62cee26e265b382e2247a356b1c36fefc9cff08c3341460302047c435bb50066306402300228273b4c4cc8526ea5f6dc728aecb4a2f39b0eb0d5b5f52f49daee952d08a2ea793d6933b8cda70d2ca7a1b443b88b02306e4481afc0956fb0bca096df51ca3618f4f15c889545a168bb827de958ed172fc5ef2691f16bf216b6f8c7b3d06a1c780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023048c2812b776a651289fde4dacf5c4e8e5bd6069681e789e864aa3ce7753a322b9bb0042bb43e8f10c4610c188d01ef8902307318c8ea5d66b671ec43927a029e33736153c93fa9a66ce692c8954e0e0910c745d65aab9c23cb5933bdcfc0374c90eb0302047c435bb50067306502301dd27afbe2d4f09cbfad3e283db19801fc238b015e46427d274690cd172fb7fd896a844d4f586e7d4dbb259c82a8c1c502310092cc3c9a98247952306dd4afc3e36991da5cb189af9f598d23c10c65f7a46f8ee390d948797824a3dbcc0441d4280e880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230265e90873e6242161e915b7a5e7ddbd4c68a1e9e3a5837b61c2e5f2677a01799876ae95be06c1026cdb2683412fdab0a023100d1f345abb17d62ee2a372337707b3ca05e7f6078819e689cdfa0a5ed4034322ec693271bf6b6dca341b2a78a8213e7810302047c435bb50066306402303370524ae0b1a0a8226b844bf98730fdf9455d321833a0e86bd622e65d1b5fa14cce8cd29c63dbdaae59b36ba9baafb902302d39820dbac77192f55d815fa0ae7ab1c38b40154c73c3dee97c028169c342ae48c50de1b406d0c52469f5e85b7b8d780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100997505264c9d9e87ee340960c7449ff107acdb2679bb2e4094cb1dd2bebf5ef2fd3d2916d0981365d574cc375ad8193c023045aa3f3c6a284015a263559a0e28f4e66b9bdf04be49faa6cb19b76fb15957ebd6d78691f903b6d375c007ff1e7c85d00302047c435bb50067306502310091cdcca02d07f7bf17a29448e8b8704282a788989950ed6d31a7b20f1ae39fa75c0b679041d00205174ab5f358f8ea94023064bc3fcf422d19f9009a811026af557bfb81f2feb176d13c813bb5c2553e612e21c0fab83db397b2400f21481c71866b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023017c05dd3da81264edb9def58384e27aa23ea71e2b04c57ec5e55f27f6979987837a2e32c6baa107df2669bbf61634d08023022e413a3f627eea1dba2857edc21cfb9e46dc780290c50bc143563899a3c97ea0648ade2069d34231ded9e196b076b290302047c435bb500683066023100ce14c145c982a5f79b2f3e12e9817ce421e30b46614a30927fdea547a38fa062d66f5d0177b2f9d79c70e5e91b643e4a023100e278845b5c186ddefa5eb42ef3df6ee50b4a090d07258667e127987b873962ef6c137a11959cf081756351e3322d7a660302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d174076a54685f9b13934e0c4795e31136ec3dbf05a5442bf1c3bb30cded70ed49d89daa82ed708247b9cb25201b555e02303309ec55c7cad737a3d906357d14fcd207c80aa5777fc43609def089f29656bc9da6be3f2d0d5c4368387128751ba6ff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310097915d448d92ca331a68422f0d835095171e6da45c497b6528f17043957e0cb74e847ef69423e2c30867bdc15a971d0a023066f42eed7eb130bec68b2bba0e6d9dec358e75e5afa72fa4319ea3c5411b8afba93ddab4874a8bee0e10f374fff8578d0302047c435bb500673065023066bf165f6a226ec8b964e0ce908e598b1eee506f847e36c999e7c78d33b52c61cbf87af7df7c4638b4538b8b0ddcb299023100f464070de041eb162c98f36e9a1657075a99988e74f89fb43adbe1a60919f86997c09b132e9eded3fc66542b37ab4c180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305ce670dbd100c457f9f9e69feb6883030db32599ba3d289ecacbc569637398d618444f963e399981746a57b216d9f4d6023059418bf8ec052e6de88184ab410bdd8d8c5d32dd4105fd099157ae7d7f0760ce480b88beba60e316c15b85440ee1b3e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008363eac09fde733f0229c0c1d8e0f627886a727da0b3845593e38f05ed5cfc22831c9486fbf4e2e38ac565e1a03e1ab102303f262c5b55c037e39ee293b4922c236af4e553ed6487a3ff5aea47e9e6e14388dce74a4254caeddc743d580227366e1b0302047c435bb500673065023056eec07bb9d1aabfbe7f35d4ce9a0589e374e11f36de8fb7b8046a03cc0e8e02bf7170e3e52b1ea95ce6e59e7ac892c80231008160689a2aa4d2ac02b6177ec162791c22eb7be4c7eccdc605ed070e881cdc7125255e5609c21ff7663cfea7eebdffd50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023026f95984fabf2d0696a39babc5abc57de3413b0896b677fe6553eba1d66f2fd670db6830693b03dadb032eb59c9006760230165c2d7649b9c4d6123ef92e14f5887c17511f6b2f332947c31358388acf4090677000267e7c352dc43957a7afad4a7c0302047c435bb50067306502307b6163cbc40805aff04d6d6813433200846e6d137ee27b7795ad017d070a627d2de3a0d753c548b254b18563b28e6c2102310089b3b4aeadf563a0ae83e972b8e5fc8697439a12b99fe1b1ee5abd0f158e0d59eaaf0fe1eefcdb55190db4271af8a0d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301381c037c40d778ab03cd009c56c636a6d169b845fb4288a3266ad88ededfa681ee96981a68a3dfbf826546413b237a802307bd0ed2bbe1f24008d95a333262182081b02daaeac8ec636ff147bbbe118a2fb1a9c4599c91dc15a098d081613d7fc1c0302047c435bb500683066023100f7cd6afc6743de4988b48823a4f610929f81b0539cb31061bd8f48bea8d82aff4587b543b20c50a1d226a627878a743b0231009ff01848a3a0c41242a9554041f1f0d01a5ba561e43180d47189490e3fc97e09e6e6dc783256ba95e84ab9663ec1946a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f749de204f8194e305fcd092f1c2c687cc2259cb9c1ac799eb6ae0485bdc725320041af2400b22b0ef22d9623306cd90023012af6b5fa78e1046aead4d32ceb1a53e270d8e7acfe2de87eb105db086a785ccc258b984018a44e7fb9f22d68a8e0f020302047c435bb50067306502306194061119efb839b9ee8340586be7c85b540fc0a6507072d7c40d53d4ef5d65acc2514c009019abc041f2808acc250d0231009538417a7b2105d029ea3271428f41acc34a241f6e1d0bbca9a164cec25dd419a2f603388a846c174bd2fbe79d64f2170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100944cb34afa871046afa042d09f53b65356b1f0461653b2d3fdfb5599768c95c0146386d20b7240181a1e7bef3bf6772c023020370ac1487bb6f7c28dfcc68c2c09dcf07637b41b9d70a2261bbe638322b8bbf514ee792bb09cf5d25a92f0b99717710302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eed013d4d8eb01358a2b4c2b1baff7a1eaf7abc7a0a987733c2ad0062ec9bcf2a2b343c4e8ea9e6726147f753f0d4b4702310086fc8a1425dcb3643b8704a1eac3b6ea13f0c24423a54a40c3c495c6238baa0852ce87dbb214a2c130b892b86c54fd0c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f838f8ff54a97a028c1c8b60eaa4cb83c1cf8858702361d780ff32f03b02ef1a805c1e29f1e1907ca87a576cb322bf8d02303e4bf4c6a16f9066ed7f7adf3b0404047be88a69f401b038511cacc59e7bed745f6cacf78d83a593284334a788cccd0b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100abee3f12f5cbe27d13fe8be8834790cbf4eb18bc737389dea7329e44c7acdd2eb52d3476973b2486eda021b28b58544c02303ea251172fd80f2b1a95c4b2091f362a45f62ee125dc11d40ca13eda5b641f525ce63e7476a6c129cd41b2fdb62a82860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a952a2eb3a0a3b15eeba78fe9ffd7b31144be2d2216a0f00958822a2b0b8cac9199850f7e000d34290cdcaed65bb3075023100d023dae0b556a8961a43b21d77bb2da1cf16e8de46a715a72852f0e5b7cb8f3f9628dc186b9bec2940471412de091c070302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305a6d3f63e13af24484df131777a5bd8305b81651e95fcbedcec4df1a9a08ec51cab3b350b0494d32b04e53cee024ba2e0231009d1182dcfbe448213cb8b32fd6b69d1adbe1e258727aa841a419e35d2886df1d4f7738714d07fe7e047d3020375911110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302bffb2aec9248269462b74bca4badbb0f6d1b76d473147202711e23bd2b73361ca3d8ed3729f9809e65d87e30fb1f6f3023100a1d7f1142dc1ef5aa58d529afe71968b1888bf711a460fdfb88eacaf03ca5b477ffe4498562aa451b6a634d6105d339f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a712ec665c657a6c30a5457a31e2583938839989b0015eef9e698714f69d4926a03aee561d07c515f57f6f58333c34ab02307d44f4698651332a735dd51161225da885888a12977c5dbec27fbc2aa0129f818145fdeaae4355c505578e89573e1ef20302047c435bb5006730650230161572c18925b5ccced1c74e883fe799dbcf73da3b4d88eb460c7721892077443576403ea10e2e49834e751c1e300b9f023100e50c2043ae18aca8acac52de8c61f718e99ed5a8cefcfd331bf1a65c8418d90061afd185ee88ba87b43d8cd28cccf57d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a9c3c83a181800f4ea0e101834ce6d3b17875040f5267f06a2dfc796fc23eff1ad1105deb12495647f1cadb93dce6c82023100d324bd2ba6be66eca06a4b25261e5e2697477e43d6de1b25203d4e8e59711912e74132545e9e1f9997132d6d64a68d960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c5eea8edea27cf261c03ec36cd1a0e95647be7958fde4ebdb52cf2a530569b80c48a9a550059f6165719c4981448ac1c02300291ac79aeedd4a6a5ceb6a4e8bc00fea07829ffe9d9034776f1cfe2408d3feaa6e418fa69e9f9c87a2d5d0c958beaf50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c77274a00977e3aaa89471d067cd2f9528292fd4c94fa2b54d2f0bc36d1dcb1884dda0524bc819cbed7c8de00bdb63c10230015ea69f957ced6fb1e7fdfb34f8c134dbe57f253c8c29745015f8965a1c140f61dff93e22624a0b536943df20fedf810302047c435bb500673065023003579aecaead1c862493ca5fbe224c76f7225f4ffd58e2b9068add3d523e0849dbc6f906cdb47ed6b11e1efdd2a606c7023100d257bde0a005784062d6c84eba25be7baf0a0cf96e046fb769e7434ecb840623b6a32b33ca8bf4b02081b0c8a6b76b1c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023067ffab75ee6fd62df49d53426ec00df7249614a424ecd0eba8f61c77e16c7775255cca2d2736f95a548455263f671df5023010191292c234b0575d4676afa6041cc2ddd2999253990935b5ce69b2adbd5669f4ab3526ee621341fdaa37e837e63f110302047c435bb500673065023100e92d5646c5f11259895034c68dbdd23219816444ea09e3a7f2eb5a57cf79ecdc5c9a148fd87b1df80b77eb16fcc31b3f02302ce9d9cd6e88e2eae52ba09e65448d199757cf23728dfeaabd4df79cd9ec07a939832715e9885bd56fa53d968483e3410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009e4ab111dece470e0274b87abe94f298fd6aaa89eb83aa2ec5ff422582e167f754af9047db3c5e883e1770698571255d02310092ff244c6d2606ecae91cdca0f57af2965fb858142a72120b71e2de064595314d44b4be080f188b7375c41f9183be2770302047c435bb500673065023100a2e0c0ea1cfb82ad549590b6edfa8eadd081a83112df2908dcb23ac2f89cab7f44e64bc377da5657cc57be9496b908cc023022d163a0a633801641a519a73702b7ea42239a15408c46b86af83f221454133b341874c866358bd8434f774a5b4e57d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302082d41aa2ae020f5fcd8e1b9744420c810da83543f74fec3ad572e536a8f236742455f52d461d8ace03c3c6032495550230325bfd03f644eb82b17d5bcae2ad78497ce3b2f133150fe2cf60f9b35e9a07bb1f64828788a0e17258b06fe1b95ccbc10302047c435bb5006830660231008e0e256d5f9b00b2fe1f8db80a42dd20dd316e70f9ab70a34c2992cecbf4c03644b982d39b25ee70ef79564d69e2c74f023100bce62b1088bfc0b07f8aeb4bfe1f5b2a4a8b9b3e448a34dec1536d7756ac4a6dda39aa6842df85428bc8f103571f20c00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310086dc2d4755124913f59e3c0dcd74c8be9e5128b1fd85e221432112cb7478462e797132f0af7c62507c2e85f3045a5d33023035f7d35416cd3e2ad59d6558932748fa2bb52e4f0b688f6946124a401fa850ef97d3d4ece756515981f19808ef39e7b00302047c435bb5006730650230093095c369350f6ca0128532ae31a453567f8802112de70d09a4b30bf3b928bf168fe3b77feab66cf8ab2e7c2f232e41023100f41adde68c1289e9bf1777fac670bb6ff83f6ad6adc4d08a700cb9830571d63aad3cf1f1fbfccd784c4d5897fe99fb7e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009808ae0940e2a3432b363f564bf8be0420ca90ae0ed3101914efabd253ba1eca970fcee59a5e063a400cdbdc8b928a9c023027f98e935b34acbaf2faea0c3a4eba08c961ddb2c6c8e0e451243045021740c7c1abb8b8e3069298ac574094f224a54b0302047c435bb500673065023029262c8d995768cac9ef43dd1336b5ea28b78d7cb09137ffb239ef95c9d1bec1df2ab908f86d094d0c495e48102ffddf0231009cac6fd902c77fc257bb8d0398e95e88bf1a29cf114921bab6898235e247fdae131186c34b3010ca4bc1452f508694df0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100add44375f42ba8bf0bbd8b964ff49dde156913b5c3760f54bb24914084766b04a27cd0fe9114e43a9085db31df11d3dd02301d207caab247a2bf54320c9c6c056ca44e1b10ea10043a4f70edf79ae7cce5fbc2e4a0fbe1dc9bb230337f86cdc098d20302047c435bb50067306502310088f37a779fe2b8b890a5677550702f15e831447ca752cfa39f56d46c32290c676a403e078f8c46e425dd499829276fc50230361bfe447680e9ef45902cc880c72c4f735454dceaad77d01ef8e2fbd143091a6877aadbf8745d8283d3e862ca1e4c2c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b8fc0cfffbbf48483f883987d28b7b691b139431c2f1ff4ad9c5e1582e7addd00e77fd12c41d8ee3f70a4145d10a4bb9023100f414e7aff4b336556d782383cfb387ecbcafcebf40701d356a1eafa180fe9e2bc135ef22b435967ff8a214800ad59f7a0302047c435bb500673065023100d97795b207b4480db4c07cabbbcce4fe87eda76ee6908872f0f8f57af6485a2af9c06f33a7f4afae6665252672c8fcd602306216e43bbcd9572d2740521ae8fbc86b4fca8bc3a645f61ec3fa53332e05e7a728d95b1d9cc12af77621cd038126f3670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099a4927e507247bce55f383730fea90bd5f7ae528d9b6d5eff45fc63adfe1a82a08693c8bcb4b3ac269944e2db289a0502304b56329d64f25d63c66a7735ff2377620df09d31db0293dc2094992d585487586fbec6a3cf517843efb556e1881331fb0302047c435bb500683066023100bb5b89eeccd8eab1133c712fb355fa38899f5f5f06747c318f9e9aa791a704070e8027a9747ddfc20ebbc7da7f314136023100c6de9491a835dff2b4a56a6e07b7f08ec98093d6e107a9da1092940cc896069c67bb89a1157f865a0878fc638f49acfb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023057862ee5fa9322e109dbaebb1434627e324289dd7077d640fc96578534976f0338607bb442b1f5fd5938217e3f8584dc023100c19c3c16d61d29814d0379ec77895dbc5bb0b54429d31199a1142c031a073c071b54fe286abcad408f6c1ad0476fa9f30302047c435bb50067306502303d312fd07e3fb89e4edfc867c157d74c2d45603acef76dbce3eec06d5c8e94f29c7b5604a86a3802f3831d198379ae04023100a51b7e8875df652dcd630f0e69c41a3c8d132844f8e1218341ebe807de6547326eae909a80c6616e7a30046a5cd179100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ae3280dbda3ac4deddbc1aeec34289e56cadf43ec72bcf3c3864fd6062cc89f229e06e53b5f57ac1e2cc858436107c56023100a465c8d695c03c2b70d7c02da5bbb74c7734fb12ae1a54b998e1fcb5d97c5a2a9c3d6f0c344354821854b07742f4859e0302047c435bb500663064023027c23503ccb9553dea0416dad19c9e5a1a26ee5056f318c3f0721d8f9d2583bf0ea3408ad585ae29d6c3df9711f6730c023054b35067f63344ba58738e99a2f8075c7d644caad921657b7754142023c1a522a5d18314bfd144f855ea93cc646da2ce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023078e115a7c91b2959345f1a4f017b28e945a04468fb221c2454f733b7e4bb3fafb5548cfc06e13474c9d555bc4abaa6eb023100e126eac863ee54b72a7ecdd664dc8524d5533177d8a2c7c6d73761f800f1e3cc2c2d6cef354566946a429318a83eef7e0302047c435bb500663064023052c21e35814f358c3e0a057fe3722a51b069bd994cd1774349c0a3ee3b290dea4119b611083ea92ec27ad98c2d1eb6ab02300aa8213a6d0f3318f0f98f26e6aa26cfc26e3bc3c9077e3eccb41ef794a90d98a1895c88131c728a6bc41a06b478f1ef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230121bb0e9157b2326b0f08074f995a0ec97a7011fa0fafc20ee30830077980fdeaa6b32bbcab0ed89986b7717c9cd035a023074dfc2195280b1a68e095afc4f6a38800d410098211d115aa470e14c75449264a5ce1b7b7fa33326fe914086204b62800302047c435bb50066306402302968f9a981d8020a9cdf42460b951d49a247d092fb34e3d5326be1352aa2f0ad43d6dfc2a36542f754688b3b5b3bf48902304b5096d73151981ef0f50d4992cc4b060b7e4d9ebe4c8bbcfe55ea06408aad3b0dc6ab9a4d673a57fd5498ced17cd93e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300b14054dbc1c9f33deb453a0a989d868850f3bb9632f06cfbd9a6d334109c6bd4b6568c183dcdc740c5f899baef1176b023036cf7d5574724554a6762ca3f0fcba88b3b3e2975c52b3909607b4bd4896b36b09c29bbfef45869b675f90751b2e91410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b6760bad3be2a2a4248a21e714bac334bc3b55b385a7a711e0a0c1c7d78e77b71c9d7b2227c204140893a8357425235c023100d928fd5f68c02519274f13c46cb42aaf765b075b479d67fc13e869dda4c4bf195ade216152e17830d6d0779bb46e1ebf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304a232b7e79c8285e7d9ed0fd306e355bf86fb959af8a1952d55df0d957c0a3a8acbb3da0da2f5474d9e1c829cbb1e408023100ce4491ff05d6ae8435ceac50d840e36d506cfa294614f0ccaedcb51c23866e3965144a06846315b9bfffdc4ba59b868c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023057a786723614e903cde7d5a20adfb4a4d7fb5ab8b4fb6028209e589014c37f787ab45e88b37b8968aa0affc21b46941c02301a34db0ad37d9d1d7433e633898cac9d0e3c942b6f9082d3c86d8a14af872de46ce953e99f866adb6e55ed47fa571abd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023063c522ce460704397f59986d66c77b7f7db15981da409c6ebf247f706e3d7eb5bbc25d4925b36f71cf845d4bbbbdde5f023100f2d0209ce256d359a61198e5a24cce69b84048c42cdb23484f0137a8586aa2ff2bae77653dab714845a6ae25350bf9fe0302047c435bb500683066023100b29cf13c72a1094fa25e2b11aa17ea1fc3ad0295f63db1010e5b5f552a8f9df4f4b589f6857d213a593df5c7e07bbe7e023100b81590c903e764a8d9ca868124bce4f8046ed3f820aecd6500325925a947825260ddd9791378db3de19a0a455673117d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100aa9a24778b7397b95993b10e5c836d69da00d380e906650f53b81cc57ef5b3b6cb637d64dc9380cb88025152da1db4a902300a75db5f1a2a9de22421c1a22329c0f7c43fb662f15072e6821ef8d652fdaaba3f997b0dbafa22275ac60c478e7b59580302047c435bb500683066023100b092d2681d5d51e3cb04032d5cc29baa8342ce4547307bcdf0c483c4d7de3ad933aa4e164f70d941cfc731fffe88dc2b023100e2adb9567cb8d740a2ba6bca272506add9ba09cf7de95edfb32790f80267ced2ad34f1e4ada3ebac8cc0fb145c3860f00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023015d85a1028c0dd65523f5ed08a4caeccf4c8af6f15166064068da534168610f6e46b7c59c1d453348f372660db231f60023100baed8fa8691771873e17fe791f25e667990663cf4d41045ae025904c50b93d31e6a5d2502ebc6392efc880d9de7d5c320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023020ab5bd44e1017cc140417c505c162a1c4695cfe9738bc4330c664a313388294a0ae9f58d5f795161e765ff17bee6cfe023100f3819516e45bbb209a64132f800c3cffd21786f08692e6133856b04fc944c54e114b11835287d0ffc47b75a835940e5e0302047c435bb500673065023100e6ee96d5ab956ed74245279be5bb550f457492c69e4cbfbb6d2ccad26eff923b3e2d5bb9551df84d6ad1b54a306c9dd102305ac2fda963eef6ad741b2d0cfe93ecc18183f8d922038911170ef568d6944869d6cade4da6653487e50d00aee5f555360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023030aaa65e0f2661b0e13d386eba4c5b475287897b93d5f8f04975360c14af1e05044a9172bcce24572bd498463ce28c2a02304ebe508eea17c95b53dce3c3cb39bc66de7c120b4462523703bebc23d2ee8ed25b07c3f3208951e84f60175bbe66f6f00302047c435bb500683066023100e977db2e5ce698882c650a23148751ed54a5350333f9982c1f0a95641749c9c1c5cf2bbabb93555ac39b4cdaf92528ec023100aa944fa3973d6ecf9298474b386542368d88793379411825bb08f7de401179975e2cef637853e95c0ef3bb67bcab199a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f6168e0086bcd28c221aca76fcb62010866ca70ba4d5d9de3dbe48f58c0f35319af3af4cf8248c79d8100b98d685c77602300f9090994d39063e05a2462cdcc250f756048e95afa48f29bdc817f1d64e05e2848f94c4e70943dabfbefd1f9407509b0302047c435bb50066306402303038f2dad6fd41f22f5933d7ba97a204a3f1d230ea37ef8d6015ee2d0d8eb764bad08ccc1b46847558f16e44ec1859a30230434df0f18594f8754e659caa0b804c76eba2508de2a853dfff27a19f9c07964dd44be1013d4f1468981f87198d6aa4e10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b6314874cfb25c927786f0b64a841bc39269aa65afe77f83c429513770123ee73780983028c343596ef4f4c6840f26e8023100ca9192589ff54075453f1f9a731ddde7c14e47f633ad665b5e8e0340fa675463e595ac18cca86c70fc9ddd105f09b7990302047c435bb500673065023039e8c50149024a977073498a804d7631a83215917a5fa5925ed55ace36d4c0fc48f4c2323efd0c7b5ed38c99f3688be8023100dfc3359e11e099474ba77cab9d7e6edcb6775889e79f178f0e95dd6c38adbbf2b9b1366a9cd1ae716ebe4343a21b1ad40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230561119fc8a318827a125ac45c03ff8cee737082ddc67fb09bdd85d035b6327b0468294c04e502415c0f5b4ff3417f18d02310086dcf3a31c8d64fd989ecaa3bc77fcb88d34dfe07242d2db067c2dd624b1900b469b94a7860b6be937867a21b4c3c28f0302047c435bb500683066023100c55cce81f4bfe8598e9d854becb572c70487735239631b2b79b8bfff9c48dce668dc99eb100417b9069dc6390155e31e0231008417a08f8a5b70da3d32752d80b9d66c398e7c97dd923c1c8e4919fe31e5bd05f69280e472750e174cca28d0bf0490f40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d7a0be2de6e0a543f83c48ce706c0333259d68aa5b7ec804de53bbfa2dda5bcc77d45cfc655d7b09bbfdab42a49844c6023009490581a3b11e17ff50a4249b84bba16d0af6d57d4a320ce4e5471ef9ec6b1de3e7166da3758f282977395ac7f464dd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ba5f2f74b53238237677bec5beff66f4105387bf2d172d819f07b728debaf1c066c1426ad992c3324b7bd023460e096d02310086a04314c333cf4aa11f060f79b325bfa310889d07f7db1a23ad5a2bc0a18deea916c7bd2ccaa7f7a5330e1182d840870302047c435bb5006830660231008878a22cbac970713393a3d3fbe2a36b9e79f0ea1dce3f4cab1bccff18cce2c80f32a7c18772433eab83fd69fd57672802310090a6838ab729ae5542cc0d33fc4f26b9e47a3eb3a0cea6964746ea8a0e6b5ee6258dc21ff2b65498351ca4605717eb0d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023012a04c3e4998d6ef654dad5cb7f74519d722c721eb7d6ae40411ed400dbbe46b31e57871c0e6e5205fad7f53e0a0d65d023100d1e401beb7078210aeafd99ad5eab05044b55dfe9bdb20f8aaad068bd3337d5cd54e2109fac6d22ca6c74c67b1ffd3af0302047c435bb500683066023100c6fa77126206dd0b67ffe3a2bf9529f524b79aa5213344e8f461cd243f8d09b870783d1fc7d66ae06b7017079b565518023100957bf6d951b577fcfbf902af5e9ba500bf0d9b67538143c089800965efbbcf3e3b638171931f03d601ec800fb86388e20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009229b771f6c9f010986d55b59a1f11c9d39ad455c7f67cacbd220d4fe573d480bbe194629515260523f09a6c6a100da202300b72c716d565032f504f7a80211b33eb744bbd1d1c9586bf3354430e8692fdf55be387c1c44c9bc3c7721402ceaccd750302047c435bb50067306502303d8ff888fcf25af6870d1f3379bc6c9455a5f9deaff0bfda18b7a62970c6190cb863bc92aceda22ef96a837440106965023100ac9752d830ad76c57eb555f0bc71617a07a830063ae0f1d37d85844c9f4f89c34645cd7bf35da7cf6d16f7f6ac8283d00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310081761342051ceba95b844aaece3380733dcea773dd9aaa2e3b3971c65cb71bed129819217dbf500e777b96e4a7951016023100dbf805fc82bac07d2976e2ad9256c2ca328251c00a992cc6e41ded8af2dbc1aa0aa8f0b0ecb21a04be69110fb84b875a0302047c435bb5006630640230094334c5cbcee2f608bf55d676a896b0f749c93c164c3b8b23e084574c009f8c5b62c7c0f5b6fc975b6aa8a09df0706502301a5b8b36bfe86e60d8fbae8ea1517eaca4a34af1ea2056317f578948fce02b4217afa153828e1f276e7dbbad4a8137f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307707b5b013e9daef140219f98bf5e683ca5338f4f958df73e9fc01acb2a3c46e58cbeb26c60576a422ebed14fa44cfb6023016bd19c2b862912465c2e32ef3d200f260eb7f00bd9c30dbfbfc9d688753b3eaaee4e7c0b61eb6c804a2571c941e071a0302047c435bb500673065023100b08a33aee989b99ce9db843a84165fe3f3cb66e8022cea8c7a447506477a98a7d61f79e0c0e8310929842a9c867ec66302302d08cb7ae4132b8d44159767271c51e2ccd33b6014ac660f6ae0b732e236f971c2c62c0ef918d53bf12889d18148e9a60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023036a261d49a54350e80778feaf3c7a25d0e533dbaa2cef942ce067c06072cb3224cc884fc7b2c91c2ab3151c05013fdf10230227bbf0c6b64ef288ecaf1edce9a0a1cd6a5f64d643f24e91d63dcdaeac6219a4f14b4014cb1edbfef6392eff83483d80302047c435bb500673065023100b27e61d9ee340c3f058a0ec443e3ee73cb3e2970c65b328b27ee6bda28e87c19e561098c9cf8f322e7a6b9a5aaa5677102301b660c2e29fc8ac1da9cbc69f5b731a3f600a73061256d25b50d3aea1e61a89b1669a062f78e793b12b1aaa08242e7160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e2af3fac740a93c1a603ff34f0a89e598c19f91e8285e874979f9b6e84ed8ee47ebd217feab192eb88540ce8f71be530023100aca1a424d02b6c5507883768ae05cc845bffee95519ec7bf65a7ae6990c38f1ceb4aeeea55dc1aa9aa79b7d115fa01e50302047c435bb50066306402302582d3af9943942f8313aa75edf573660e90ed9f69ee17e5c2be74a9d57b61ff0fa1bba5842b5c6e8c1a279285d9112b023026db8e22b94b7124795713b8872acad1de92de0f7a48e327615dfd6f1d4d06eafae6d3e711340fdf044a71d0d87ac3580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307c0a7b1b8e4a7bd2d4ae08ce626d54fe3175cae7c98af6014833881f59b03d0b6a6be6ae0e46ab8fe9cfb2035d2a1057023100cec27fb6e2612bb85102932e5f3dff161e9e683b6c2317373d5c90906ef2a9be87f0d77aee0e301b4a5091a00c9e600d0302047c435bb500683066023100eecb49ad4048d947fe52295ff38cc49918499a5e5155783e1cdc71f17b432ce1faa817fb4fbe1060df0d6dfab8e017fb023100968409ce7fd707ced0135407c527eced79e44f7558068238a0507fb1cd13ba53d011afd767e7b12df42e333c99462d520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c6a5fcc0354de081b72f0b0480bbab09addf3db44c147751d2469431b1e39c22f4852af441289aeeb9323578f40ee36a0230060122650294277c235b3a96bef9a8d13309e5e2da7e96e85a0857b5c59445d2d917769d0d34a6524f32738455699dc20302047c435bb500663064023010eccab0002117dfc7b93e7eb3ddd1c95edc31a73cea1f8f903a027e4c86e59420c38080ff142fcb2f673e1a6583245e0230325292bac3dd98f891d54405df9b22310d1ad0a3310d20d50d847f62a7de18671e89122d86e6b3a58f63ef4a607953350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230163e519bca52207a77d5f429d8a5b6c0f7a676c792a643e754393e587820f5678d93f8cba28baa9b1a28badb7958d15c023100f333f6e5925ff19b2f4f2a28488a37cf6767f585515e89f0be1bec68e6e3965ed9dcb7aef6e49f4bbc596e991d4dd32e0302047c435bb500673065023100c2baf15e24fee3cac997e8819dbbdd51e380271cee7254b97bf303eb3c171b729b53716ed3c22db3554f0bd4ea66e6e902306a4f293a1a2ef367e7b3403640202b3d28aaae7ba71f9a3823b053b8b266e7723a852b785d5a38980c8eb3be7a38a5620302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100994f678e08f0be8f6e54c5b375ebda5a32fd6490c35993f195cadb12cc1db7fe944f98a9572d1c73dfcb4ba4aac2495d02300c530ed53503cae18006defa311324d0149ab8e70a646c0493b0f42d2c1792ee209306637fc5886363c7b3900036502f0302047c435bb500683066023100928d4949349e4f504252f20c34c5f216c1292fea851b96001973f83fd24a91138adf3b9c12446303b47bc21758ba0d6c023100be4f32e30b94d13abe68ffd742fdd27b5a46651eda3acd482090df35ff5cf846a95904cb712dae09d2361d5e9bc4d7840302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100926f3c246adcc59c01dd4ec1ccd8ee2399889b7fdc48c1694db298d3ecd91ccd394734a372f7fd8667dfd031ff8f7555023100aa9589b07ec5e42dfc7f5a480b1be68efd466c5fc0a58443ebb3ba45a88146ba92c519f6b07cfeae9974c4f5692c90d90302047c435bb500673065023100f2b6f8168b70ea6875b07209443081429293d4501a436fd2c4be42db3e31b2be632da28d43b81b870b802c478dfdeca10230300424a3fa376cd299b8c22d9c75593b689516359a118509e157a239f3b8fc083897b0df230e6b0e63bd71cb0f2609020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307d8ebb0244249a8736ddfb757473713e218f21cabbd481dddccdc04d31eb2111eaea46588fd93ecc06375d66eb8c644902301037ff34514898c3f8e076e7a28d886c00b49398ce4da9ceb6164277867082e1f18ea59cc4ebe24d53e97e9db8ddfa1e0302047c435bb500683066023100812d9c92e03182af0e87b6fe329ad318acc747668859432e478d762ccf3d8c08b992fa76adf2895dde584f97191ac16c023100d5a3599439e7c486ceaeb65b1d6c1170edcd526aa969462ab6974b5f5193347549fc1b7354c83f1892a7308c372ee4810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307a5d1d06303d2829966050878596bedfa44104f5f7aea8ccb7a68e800cf72454a7270fe3ee3f7ca8ec2110212ee2504702307bff51810d97f5ef4fd9be70270da5fafab681f8b25ba4c30dd200ed7dca03af379b9528c42e9ebcbd36cf1f6515dc260302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230224c5763291e1745e4bee017a3deb2e6deb73883b925c9c04883a99cca36ecedfbf04907ee6a6f20ec97eef4fe5842c602302baaaf0d7d5858ffc789f696d2aadf8d67fd9ba8ac102565112932cf0b9840c79880fad14fa0ac4cd52737f8be3c0dfa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f3456d5d4ccdc54bac2e1921923524c5028f8ecd481893e74b87e8aa661e3e0baf7f34112cbd458c9ef965ce0c380e00023065b876d628abdce1403e0410ec6c919a1912a6a89b1991b1b83482b6f7cf93d62637fcefcec8e59d3ae3b90dbb2abffd0302047c435bb500683066023100cbc9db1d52c7ef5f1a6880fc7b6d543a0dff92015b702c56fe6eaab9f080a72013b0cc5e566589b1f567b79d6ba58074023100cb057d2ba60b672c0e7db290073daed21b1e0541c074a99393e32a1fcf34ca516f1a43a7be278e13732db0590658cfbf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d7aa2e551d56ac4112d6f71d722029c3f03667b8f39ec35730e35016e54fba46994e908761be09de14067c6e52ab5c85023100a6f43dfa30ffcb56c8fa7135371c32d1d2ab6418e2c41ad266aa14aa269a0248fc2f899f5ea7bcf6c0d20c335f8b8c220302047c435bb500673065023011175897b7c1013335885cd543f8c060dac1d95a32a5388710a7902d8851af6a90001038973c65efe9a4c90ab3b0dc91023100b193694e4d6048c6040c2578a39956d6273752e79a38187214c9eb66bf34d5091d12c6ace919b4293f6215a5cc583aac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ef5174050982b724c656c803cf87346ef3a127017fa34b7e1ca30900f7c130c1d17a95f842986938e5419ebf20332f0d023100d34e22448d8dd61d9d8cd7e8d70e4f21372e30e293cd6ffd9f908255e25c67bb1453ff2ceb3a003044495f8f8a634fa50302047c435bb500683066023100af95ffbeb1a750a0581e4015ef8cf04dceb9392480bc1ad8ea4484ecf20def87a9eb46dcba26ff8c082a773878d74c50023100a099db6672917c7418576d63b602a3f6b42bc1ae965d15186c7a6b92635b6ee8a185425d4985452602629687f8989e690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310082851932bf67365e82e6088addd72f63b6e10e6ccce950ca8f5b791151a496ffb34a224165e45bd526291f7e869599120230782ca1e09d5b861a2abce311693f7db5b30298bce247ecab982cfb774ab9fb228bc376c02f99852c0e57bea1ddcc3a690302047c435bb500683066023100aafa2762f58b5a2f9dcc5772de040085cba69a7807bc011ac4ffe4400f19e29e20b1f9e8b7141e89d99722bf099581af023100d254c5ba416bbae33f2a52a33a8e5d4a123c76d8b0d57792e67b1af398ebeae21b1b5c9fb0425e8950b417a91b80c4af0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d6836c7cf277c205c3e5ec81cceec1c22b5792f27ac6948e614a538d85e292426c11085a350a50ec7b6b4d1662e70ca9023100d4c8ffbc94fd84d83e39dbd095e2832895ebafd40c67d5ee83f79cd8578fcdf0d5ddeb0f9f863cacf95f1b442a198b4a0302047c435bb500663064023044b216e731c1ff1a007f0d77ab891a29c89baaa2b99e168843a456517303d39abf2276f4e97dd0ce683b10b2a1724220023075a3d7d02e2239c601d61be1d01c6d441c55db510504e285207eb96945a7c92cfaf1383ab07ea73c8014e7ca29e157f80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023032ce8575275c9780947c05d0238017eceb8715ce9734b071454d107530fece6cca0404da5463ff0ed309e175dff145eb023039381c879ba7e17ad7511e637b94b43f35e7b178d9291d202b4d05585d14d304d000c8ef476bc1bffac667e9465e47620302047c435bb50067306502304578e252baf7569b51070087d96f73df06b886ef7973463ac2db4f01f064571f152c621317617f13aec320c5714c9f6d023100e07f8640ebb9de5e3b4270ddda2ed4cd68758a250e8fa94fd493e69c5e90d5cd371560da0f10ee25a53bca5a8d1b4b2e0302047c435bb500673065023100b7ea51b3b9b049e7fa31d3f10e6685c5c40e6c3710ccc3d4bf258ffe384967ff07e1ca52e46166e1f0963cc5fb2911bb02306af6cd08a42eb603cd7e1cc33f477a0812b3a30ad3081ea12ffc5a2f51b1ac733d03843c73b204ca268d112f2b57fc9c0302047c435bb500683066023100c49aa8d47669513a4108117fe44388a05268d665be360621e60a7055371b39cd8f51a3ec0d384f4188b1d0d8e9bb9a63023100ae843f61446a3c664e1f480fa46674144094e6a76727002373ece0251644c8d44477597be3bde80cd5f47630a446ae300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cbda2e542c4469db47eba6f2881e4b2bdca3c900df892b37d543ab2bb290021ef9046e85b430763ff3242482095b5826023100c4ace936a0b2b6eb410911914df5224738284367092992ebe54694856ca9bf3ffb3155775001af294da7280ea4d866cc0302047c435bb5006630640230024ab582cf679b38216aecfef53762593b78099b0d35eff2dfadd35cb469e1ff77b05927ab278887ed77606a0a73ce18023050c3be62f0360d8a9ce8d67e68c474bfa409b67039526f375bbb165d7718dd67fbd6dfb7f8b743b777e8d823fb9e1a250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c38e84b76a2befded81b4fe388619c760b4a9e325f074380e81c9ca03479ffc5f73fdab453f3ede4e2c3759a55080a95023100f0182128a052a85251dff75c0e751b4433ae964806d1048da2fbe5c8d4b7a7b21ecc497a8380ee2175d36aff9cccf8ad0302047c435bb50066306402304ff5a2bc4954c1a42ed29b10299d116b858e4d37ae8b01834490643d833f3a58a1403b3f9a1c78c0d3023036479954ea02303dc3dcf665e927e84592b0313a6db6f987e2afeafa7a6e6a70b6fed3d2acf43bf1ffdc64612e9f8ccd0a79aeac9715640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023026b836024d5ae05e3c7d6e769492fcc2a286e0c9e362165d42b4696886cf5805c29948d42cf05d3a6025f302a03d704a0231008e6979eeb97b6bd048f446a21a170f34ec7a111cc00e030e792b6f3d1c4340d18c26949a9205c90aa2f661e501c0b8620302047c435bb500673065023076d3716f1443ccb4acf16225e8ad9025795e7db61bae50860ad64185b83083604a8c3cba4de32831a0444dfbe18b6440023100d3601eb9958f8d02f496df7b961075feb4bcf672e07174555ee17dc96424615532309d6c24e0bca33d7fbcd798be4be10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fd4426757a73da6fa188d927401c206a0fd87d8589b8caddb2793149110c1e83352e901cdf405b843642079b717ff4c7023100d8ce17666c08b3775579a43e2cc2c49e95b6a38fb5588787ae8afb7a6ae4390287e61a05537739cb7aa415eefef306b50302047c435bb500673065023048b31f8b6c2e2ca1983b7813c1ab8f9f1a1a616d7f2af3ea8b09b368eb2e9d2a0cd6f05587cc06a5a7b34bb21242d582023100b324a3bfaf13c12693f643f651a8cc2b0c7712696308101ae2699b3ce0b8f546a34751276bcc1d58adf55a3c1b9725bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303a583b02ed54dd46be83d657ec3ff770ea8a74041cb41cf58977a90ac763cab2e9a0d330f7d36ee18d7f581bd17dc17402303d5aff5d1864bc5ae392075ccf6e5de78e86742e2ce76ef7b6d52023500d4d446b980125084a95a88a9f98f79cb7be1e0302047c435bb500683066023100bd877f83f4978cced9ab7425e5bf281c1f163aab61b19db1badce670209f49283281be5800f31f18ea15539c6a0e3496023100efaeac5165bf5b4ad669173ef3c714754dbfaf98742fa2909d7d72ad267d23e8de2701b006f97c705bc3d93cdd3b57820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304037ef5bd11479d0e4978ac44dfc1abfbb74a4452a40ea0a104fbf5ce6644abbef111562bfee0be338fa2a745f09f9d4023100ca1144d6e7cb9f8d54488a7bb5ba50a2928f9e616b4b9ef912319b36ad94cac87d7b110744ff861b31dde84ffab3af510302047c435bb50068306602310084038802fdabbff4aadc4e76b6ebcbbf25e61782060d55cf260daf43bc244a654d93785ec6116d989f9cef99738396110231008795625d780a0f92c5fed193922f79bb669c63a2fb00e316e837b15953434ac2d82892e7f2a68a30cc98de65d261ceb00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a7e7a2447c47f3b6a333bb5571e1a4f95f0e34fa39d6f53e78d2f4777325b282fb3b7574c87d67944c9a7d424a104a79023029ee431f693b9a7c35f5d95b44634786ef504164ce2eeb33674fe7d36ba847724cb7c17dd07bdb02b16eaea46708b19f0302047c435bb500673065023100f0cfc558b44da7dfd98f5a845487da2a2d667ef8c075ab4472d84f606375495eb013401c68fc27b6347b7c75d8d1694002305e883bec07a72fd31a5b35a093df1993b7b752b729c8f63999b3ebd09eadf079734398eb8fe216e27b263ad0ceabf12e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230248944760bd90c725a107736094451157f9bcd25534cdee6ea540448b348a7543774b78c438cad743a8687f172ed802a02302cdd3ad016dad5968a4472c3a0ef540a0d5105e25d76fd9a0663244db5a513aab27b370a7502fc28f012a670f7bda09f0302047c435bb500683066023100c8583595d0aac42f9a120d97a9a2b65f1fcd916e1f66e9058da686c8fc7d7fff0e12ad0d8691cf0641cb4bd4b7cf04a5023100b48da4f6ea919606855ff92bf61d21f22b049df55d0bd20e3c9401b99f6df6a0ef090855eece6d0db3c862d448f95fb90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100aaf813b1f17e3f7fe48ae621a923018434fc3df3ce37f10f45a658c42b9bc71c4c7f89bc8edb5679850d5155f1fdd9a20230391a8153c860237684a05bffb07dfec52d78c1b9241146abc5fca6e08871fd5fabb016de1adffdf9f926a6ba285c049f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009fd86a447e40783ff8831f41847feca3615a651064d300ffeecfce4c1ad22820d3386bcc80241713e25383373e93837f023020e33998eba1cf281af6576c6c178c3fa4f2f87dd31698c090ae4dfcc1a1cb5b4fef910f8122cbd67279cbd0f9d64e640302047c435bb5006730650230654dc3f0d3dfccc4e98bed25b3b1ed108674ed4bfcdeecf4e1175f74b3c7ffe564cbfc9095d4b37a0a6e5dfe703f7cee023100b496b9b2759bc5b4c16000d91f5a0e5fd8349fa9c263b09c0970e9a8d8743526882977edab3de8c71da1b5960ab34ced0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301a9b9ded9477d5bea23bd18c599bb2253cfdacb7ca3c65d019fe0a802ec6c3843b9b19271908af50f0caac02a99c79af02310099bbff2412bd60c08b3135ab743cfc6cd7233d58c70dbe2bb01c88fe99f17b3ca2c90f6ac331901bf86b4ea9cec28b3c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ad9588952a95e77481091553c5e26ff3f148623f26d6dec67c218e4f0235ab40d889bda5a7b549965d8fb317db1c818502304eb0b26242b4873585abd90e6f46bd3f55fc8bdf631c18a62b1a06e093ec6ec6be4dd629433446e9363ee41eadd48e9f0302047c435bb500673065023022c21187a406f2c0a3806ab7f01dd0319f27d90365ae1a24ed7d341f1dd053c35d25b6c2c669138814c718fc18165996023100ef966381d11d1defe2a37fcb50ae73ac03afee5d02b81ac033e3454790d5f9323b833409c8d8935a9340da7c2e20be7b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307c9c4e5ba1cb61dfb40016bfc18adb087ce4adf74565ca90f82e6bb4e9f5e093d83c3c5e61306838ca4a58939389ce14023100a6799b5618f5e31f28aa86d1bb89cf83bb98c0489d428e419a7ce605d9907660ba30ebbea6e665b9ab9eaf4622d8c0b70302047c435bb50066306402306c461b1a9a7dc6fa6223c08e59a6c06406f432ac713ef19d57fefe3c3b2fa06ba5eb78ec52e199c5a0f11d1f5409d433023040c61b89300922df774f94fa76e21c21fc4be3d9aa1a1bf3d9f993c66ea821b4b5ae5e49e66da0df858ef876f858e98b0302047c435bb500683066023100dc8cb7ea64e20a5de5e712b5fcf6bb638f6a4cc2eb14fe22ba5dc8568f0d02cd5d07c0b5100359692ee452f12573df5a0231008c85244a8c3ed82baaa6e3a1f7ba7af921df2d3ff630ce5533f60855196e1a2a443fc189206b4b2dda6c22ec409816550302047c435bb50067306502301a5d1565f3615d6b1f96550833bb649721038632428d57de95b7d04e447ccc0fc749e559f63c2dd80e97d20a7f7a00b3023100dd8d38f38b2231fce1607d2c8a3068998726810b2cfd64e5b88dd460f14f412eb765aef361db6535774ed1850d7383e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023075a60367bfdfb2c99bb6426044ad0d4c1dc54101dcd7fde02789718abfb493ffe23e5b6551cbf22028a8a5f570dbd48402307c5dd813809fa755ed5a5ced32cd5e2811a2332afe7c983fa19604673dd7ef0ec0bcbb1aae3e0748b5daad405f5d24f00302047c435bb500673065023100a1d47dbafccd5b8f7dbb8e1b5fc97f995e085455cf2cf29c173ab2692dbac4530f15dc73158e317130c07bfa19cbfc4702300f9abba1ea0a2df68370b2d37cbf1c86465493f9def0398b49a7fe99d2bab8d3e10eb516a56667d7963353d362f65c140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300e0d157fbb4c4a0306be9aa246be3c4016d60b0d893ebefc50e7fca543d97ae164993cb1f26340b59c6cab6571d6e9ff023100e0fe71a900351083f72cd19517262fc733e2523397c22b7f33c37e44d4fb325ca21f898ace3bb781e926be12bc84e8060302047c435bb50066306402306a206ba7e3e448aeeef89d3a421efd9a3afa67ec2b57bb0190fa154c6ea11085c9b910457ec28a29f5d622ba5e5107de02306b4a651500f56500199dbe0d24a398ce10b1e1d10dd6789f50352616132250794cf495d34fa8f33d6e73f5912b5101230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023018eea986b180db23ad713271ffa0ac8ffdb0b601a0d1682a7399f7b5e6556a9dc0026df1f4ad9d452b30fbbe9c07f9f5023100f9418131589e53c5caa67ad9b47b58194184844af15511405eda5554c1b0c6c237f1756874fc0162e73e24e5c138c4700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010fdcb7edf6323404135db943f201133c977143381cf0a8df6fa22fee512c14bf8f01b2a324552785d43d35d3afcf4ad023100969b26e47e0946bab92a0b3fb8d6f3ed5388d512ab810c4a4126e132868c95148cf331362b5b83cc5c1224266e5b8bed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230330340c756a3e0a2f30b768612be2a30702c2060788ac999acd5f3ee697693e4994f58711a8fb6264cce582b5b3e6e1202305b934417e9c015b4f755b84548435dc5744868b6b9e03e5874538d2d2b750cc040435d62bdc93d4805c930d657eba71d0302047c435bb50066306402303d03d47a5b9fe1880558cb85a6ad2853b8468facf7719e340019bb06f76678e7d7481f97a6df5a2dc659e88240cc0ff8023053fc7fc77be824e24795debb9659fce6b38acfb2d704e9b130114b09df83a4b768268e9d8f3debbd12acfe5d8025a1b30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100840909aeea1da0b523b32ce911b43299387079879313cba03dd38119d84e01a5500c78f18686379c1e223b5e7c2bc247023100a73e5bd47607949a7aabf559ef95eaed257096a81e5d34a5d7d02ffe1a8a6b4de4213f803f6f328e7de4200c245f4c510302047c435bb500683066023100c62d2148a37b395a3f76e78276bf40626847c4b107352cde3fd673e4503b887193c2109408a28236750bd277ef6d0417023100bc6b23731f286aa561c25eb5d90c36878ba76967b22256b3e1ce9993bf859f5e2ac76974d90897f62288f0a393942cbd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300aab87b2e271588d538edc16701917663e87074f4a14d0f55da4b96b94a794c07b36ee04fcbb87c84f22046a4033b129023028cf12341307d4d96f859dc2efa8026700c7feaf67a53d9d8b218d19c015dc94ca940dbfa9063cdf16e3355f737750050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023077a5db3e93c098e2b769488158e748a8629f5ef3e8491f2848b7a61b9fd4497ea0bb76100d9aecaf7ddba65ad6c267de02306e341df3dc72f00242bf758aabc7fe24af6513dcc82d489eaa018faf75c6e732ebc11a3026809d0984a04dbc27c805460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b921988076632d29937a9f884732e15a6315dc0544b2d274dd8609af1a1057bc64d6943a90ac36fc85d225efc1ac9d2d023100edc72f27eff117c548113d0a6d9122ab94285909ca205870770c9b863230ccc362677641c0d23b7df7fd9763b7c136610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310080d0d4820854c4eb468888c32e7100bcf3989f8bcaf58b4b9a7a64746f2a011025635f95c4150f3ee5e9a08b9caabdcb023070f35f8f8d25ca77e96e3804c1664b4c777a9b01280ec7d9192ad15c7cefc4b38b5fb012296f0fd79583db39a12b81bd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100efbd0bdc44e1bfbff65d546b16c71449441e63c49deaccf3f8faa27930ccde7112eccbe0c5a711773574522972fbf7d9023100c24441fe9007e449521df4bfff6a0462baf193b9408c1c1420f24a048106b5da263913d16f9f84ca2df4cd592d4908cd0302047c435bb50066306402302a99c2d2393b5c474f6ca70af948eab1c991ca4305af464343da4f6a20254958d2c94b0de6c8c0cad712f7be305918d60230304b8f50a9514288cf6b319dedc4796eb38b44fbebd79afb3aa4b9214127b7cffe45a9106d9ee0a2fe69236a648afcbf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dcb4b7684d6a549f256dcf77d527b0bc64369c04ea1fe3793399347ed0aadd238a299ddd7b8213fd00173ea01de8960d023100d811e02c6e23976a547baa299b6277d3c5724410511637b9425e69bc634f65d4e2b63960c99141facdf969bd544d44f10302047c435bb5006630640230456198d711a8d5ee02a1356f5fb6e170d2c6b9fbbbf0e81cad82308a430bd3cc4e18161e8d54a8d7f78ec0abefb38083023053221346ba81474db317ea49919afe1c080ca75849441d33fd70ca64b2569b108f4902ead09a5a82c17d5a21618c073b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300f910fdbb750b7ddec0520e9655dc169f77add90f3e5e6f68d3dabf9dd73380dd22577c2b9b7f68bfd74ca298a95cd1b023042dc36e5c442ae4cd07c3693f7429cd0663824613023de12225327631d51b7097d49f855e34664ca80440b3be209117f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500653063022f6b2164e0779b996ec89246cacea47bdcc43ac08c2ecc5aed6a7f5848932d0625ed29d67847bcce90689a053f6d5ba002304602a7ea4fc930af3c4d6c6602cf6625f98988a4c076f6821ab18ad16b0be1d0db45ea32abc5074ca03e2d2387d07aa30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230292ce19c7f24fbc2518f98c7e210f989a3f54d453ec75394e11d4f5fe49282dae291007fc36382cbddadb9088c5197b30230460186c4e56dc858edb41f2af371f0c47218701204cddc5c59bcfd5ff26bd5863fcf316644f8e182449842e451d81ce30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a7b904bda5fc3c448bbcf977398a7c89082755f2af206a4f43b646843ebc9fea87827e8cf173d2af5764d860fb1bd5a2023016a3c77679a3398eab6b3dee58a64450fb0ec184ab9618db89975fdc2a4a3154bea918b840a27fa3cba375b3ca2628020302047c435bb500683066023100891804fdf7b1289b6a863943fe525ddefdbb2e5927ee618b6e8b56f69f039d423c2aa5327e7e045ea1ba26459a04ba1f023100f0d4eb7294aaf051150e2cc5fdfab8715402b57b02feb6c0542a6b7435bb0ab2d072fcc4206c84638a5d3fb9b1739cf70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307c9553db2d10455a6bef961dc296d51ab461c9d1dc112755c5da110bab2fbb7657068a63975f03553f324e2a624c0f130230243e11a3335336d2b5b444cd26ab6bcee792465b52cf214ea194c18bb72bc643f88b57c7600b147f533ba8433fe4010c0302047c435bb50067306502300c756e589ab7729257c5547d594de185707e907b8fe741931066838d5943b23ef77edfe36485c20605230569bd95528f0231009d4130e1713b19858b2a99cd5c012207726b11b231a8927a880713cc35f23630851deff996218153012995ac908542210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230062643070633afca2f3d11e7dd7e9037a80c6d28ca9de094e8824763e1edc34c5cc001d8f8c2a3955b3fd1b8eaaa8f8b0231009d9b9776dffcbca3f9bc4cbab8009c1d8bba67a85cb8e394a1848df6e558a155bd914a7f41f4cd31bc1f1c92a29df3810302047c435bb500673065023100fb6056d5077bfdfa72e768b504c257d62bb59a114b7b5aed1a7950549d026b6974f3ff03b3c871f177807a2445c070a1023074c611e35a180200072ec29265a3c50096ef48fadba1f25fbab2bba06e8eb86449d353cb0b2de08f868b7b954bc80fa70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b2b8e5733858f01c81acd2563f2aa64a81d236912cb27f8f6ba3d06f94ea6910db502534e4b4bc3db9edfe076f31d79d023100c71cba5c26ae9125e05b18663123111d59bec7ac5fb5c23ca137883c23583632f2dbe5c9ccb9ea6a26958011563c76930302047c435bb50067306502310093462c8f4791e5f45debc48f3d05fa39c931fb0a117b7c25acc1ab1bcdd6f963f3358320cbdacba5579fcec587e76a5602302b2a22a077277208748b4c0ccd94acbb58fd215dfc22a6e23703f6c37d8a3596395a57be529f4cb7faf276c773f268ad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305ba162ebfbbfc539a571b5e0415e144dd6a4b5180942c72c753ff53fcffbdaab8fff0496d2969799828802a129c16fda0230119a925d583fc8d432153378e37a635eb1934525c5468348ecccdd8166edf3081b428975b58390bd1d179d4ceea04e720302047c435bb500673065023012eb7b4f35405f58b630f2bd106ce88c6d412f54642b5e088936fcb849c5d134f459242e02f26539463334a209869a1e0231008bd7f4b8ead775d9c4ab5ffa6f3a300f1e5617c1cab90421f0237b7fb4495f4e65d4318de65a3fad4277fc524450e6120302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023030c07799c9041b49d28e88f7484bd9638ce8f18468168a895134d8c91206bff56b139cdcf448798c7f301a7c5d59ce0302302700c437b800c2c0c2f7ef16888a94f799a145fbfe53dd5f0b9484eeffd52be4c823bf4fbc62e89ec97f141a2f2222790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230586988e99e9c92d24d42b2bc2b8a3e9e75e6069b6e9cf772f0e729b565cf5a061b032e2d9557bcb2210310cc039b868c0231009d5cf9d952701b10fccb4693d7a3d553dac4b59037b2177ccd320fdb1a06cfae11d7ce836c74c687578d5e974777ae760302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023070f04d425ed3cd3d40daa0b1898d5681e9a9577370dccebfb84c6d1054faf7b51c1567bdc1dbc733eb935d935b103a73023100ba947889e221995fc7163fb8a757957d691d6921195f52ea9fd77d1e3e2b373fb2f081c0484a3d7348bab343bc2967430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dcc390e0ba1d87034882405adf7aacad80146fad8135e508be77398079a51d2dede0bedc9c05f2d6c16b56493f65a8f1023100cb5f25e5110e181aa5c63122ac40747f29d2f8712d595c22cb708d7a988070fb55e5223600edeb43eea9480bc4b7a5670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230465d52c9fa7d5bcc400e3cd7773e2e51ae435ff5e4836f6fc66c9e11b0604712f18905dfd80f15827c66ab688e3a556b023100a7cfa8278ff08274d82ec87c6e9b162cabfac6b969dcb4f7648da954f8514f422d9a509dce989bc1233f6cfb6d376d570302047c435bb500663064023078957934fcbb9a481f9d901f05e9e9770776def999446452002740df4d63349dea5abfc8f6fe6d067cf139ff073a48c80230781cad68b76a1ad570e4411feea851b3496bd44d7976b294fde7e11a42f56da5704c503ee3a04fbb78edb88b379bd1740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310092cc8967bab5bda5ef3600b257be30082d29fad4505398fedf0b9ffa51c5d69a94cf013f0d9c73d467fe4f99cab19944023100997591ba0c831067a5365bb6d19673068ce2fcb043e02d6ff687429fc7bae1460ad7833ba82e36ac9522fb4d8ae1d5370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ca6b677d1eb4101878556b360fd2bdbd33618243da65b92dac770976e2677af90cb270f83501efc8092a468e52469e29023100b871a04c572fb7b0091fd8aa5c9c469001908124dca03eb58394daeaa62635b3eea30531cb39a4b322a30266a39d26b40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f8bcb677e648e1060cfa0e552ef3d83e0ba06888c5219574088a549f54cbda5bd5fe5790ed7c4e46ec32be524df5c1c60231009682cff99f7de76ab825c965a06e5a0f50c618b2b23c11ad9b7219f2fda27b2da5d8a9f7b04e904a1755f7726c68948d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303719b92aab18d3b182e0f9d08b95b92fd86061584e0cb41b6a259baf3031a55ff7ee45dde11348973abbc37b9c09e2c2023100b9020d3e51758e57607fd2a82dcfb1a583a05a96738e12d62b14cf80cd204c3b8d2f302bf0e620ba6c9aed0f7cb080c90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d862de7d3717689f50293b17b47cb3fccd890b6a6154996c8c18563832dc9352eef5aa803f110498bffaa95fbb3fd2ec02310099f5c6c6212038effc4f5e5fb33942ef25317f7966d9b3cdeac2ea000de6dd11856e47e84a7f6d0fba1947ed99f58eab0302047c435bb50068306602310095e247a27aecface28d25e03967b19d2da2f409ec1810bbfc3457cbc5a5987ee50fdf6a47504719f5a3a25f938b5707a023100fa6314c0e1e061afbb38321e8978467f825999ec0e156af82e686e8d20c227f0cdda0942e32a9c936a38c8d1fe9ec8f70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009c35f39778839ec7a6b461c6415b25d128454c13981afe61ab355eaa8f12a29cedc32a0ca421cd099cdde9003ba76e4302302df1aa340f69d4eebbef7dd7bf6224bfffff6e2b8c27a6cb019a6cfcd4c2cb3702d883d42a1f2789a82c2a0f45afa3d80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cdb5885d2dcbc841513f564a7a0b831459cfe485d20b661c943b78fb4a707add0cb5cba0d92c2f8287458a9540252085023100ee9fc90ca57c5fd2d9ffa95be92d885a3156c9dc253427d0d1139fe507b159658ac58f1f074367d653602faaf1e9fa650302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100807fdf3ed41c52c4d69bfd95361993d883affc876b44c7c67c5d6e6cb9d780f80776c138e91b19acf3f69804b86519f9023100ecd888f3914d3af7a6cc428647216aaa1b992b558ff204aca08e29bc5e9a5897ca23f93fdf679416f43cedd87e4e54230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301ed71157a8fd8f2c80b7716cc8c1a44a7da8310e34f4d101c8a1c81fddf69b309c54b20a9c65b94f0c81ace2d0cb7a5c023063b0302492c729b52a96fe867f6f2d8f40e0b0fecf883b2420c89ae01e812dc77878b05177d6f1ead8a6942b1de96bf10302047c435bb50065306302307979183cc60029f3b3cf8a1ceffb68c39fb646226c92bbee9988057de88b81c56aedeb6e5fe83c855bb5aaf460a76e92022f3629be797c740ddc46661958efb6f197df4e2d87b047661deffcffe7122467b4475ea0c24566241557592c7f98865d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023069ab49ef4fed700c9e4b7ee669976e2900afb0ece5fefe126ee6f7b8255cbafa129afe4a167794336bf1c7c7a71bd86d02302b8960183656e8f1b3fcc94e5a0447626ba2dde005a2d1db7e50d6cbc53f35e49220cc0888e33edaa05be12167db43970302047c435bb500673065023100a02cc6e2e0fd26bfe2c278c4331701742ec64993cc3f0f25a52ab81ef25e79b3c74ac64681e1a40566c0445511af42bd02307c5efeeb93798696d841fb42087f7d3815c8161b6aeab4da75ac9088d30238a47ef2a1ab508022f55cf2f8649293948b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c830551fff479b01c96e723d9fbbe6629ec0e7503dfbeb28e0fbbb6ea9f73a7c5a098bf56a22ea315b7b979ab716a619023100a779d1a5ccba2edfee97f5fb48d41106eb7ef01f2f6b0e0d4d147f9f7a1e0bada7d03781feeeb72787c7f9ccd7e711fd0302047c435bb50067306502301af172ca5c2c8f3bfe76946f971bc48148301d5f750dffe4b2928d340ab34c6dcfb76b456dd6b4c2756ec196d3b4f4bb023100b78b2cde6dcc15c1f1625c5f523ee5cad4f3c97dc1bf9d3192b9050e3e80a5a68e6f4347e81273d5467f1a519775db3a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023077e145c2047b4cf1ed801092e1d82bc376acea55ee3a3481922374af42dbb9f51083d0bdce133567678b4e1db91fd30e02301f8a3a99d2b4365e969057c8309d8f76da33d1b9ba3ced3a0268c3bf7fe3825bc202cb153910cd17cdb4af13b93587190302047c435bb500663064023079b3b64cb43b1785f77af025d14441bdc81a052b143ae9aa3e82dff62218f085dba40b94b340df49a3aa39e37eba97360230383f33abbaf61184c67b725354df38e9cff13df8c6b4fd831bdc837bfcaacf0c78f64d42aabd85fa7fa10034bcf9a69f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307797cf2fe813fc1d34eb5d0005734c8a5ee90d743f34b63d41b3d6726a48bf0688b187945478fd39fee031731413088a023100dbbb97be4f777981b8c4b6cdfe48350f48ed2f7745bc1ff0d5b41fec0e57cde6d2374e5b81e587d89a8e0be83390421c0302047c435bb50066306402303a20494c3dd0d5d7b29c5f1143c0c81eabf189d2bb03101d4b4daf6a3bc1d70a7248ca556b556995dbbc01cff2a911c002301f90bbe0a3192e239271e32e8ffb8defcc5576c15fc519142fe888a4154ab3c5ff63576770ac12d6a784104a3bc328c30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c647c06fafa80c4440eff9a4bb00eb964be320e1e82390adf5e61f1f7387fa0c96d6f6c6a4cf46e8bee725f96b36e93f023061c45b59be50e7e31c00242557f564061833291bf3a71fbaae35d0e0b5f9cd1c135ba29ff50a5296a6437c720ceccc690302047c435bb500683066023100c2b75b9c9d36088c258b8adab5f7fcf55dad95fd5d92cef9413839cdb20caeb5e20ebbe69183d9be4f444de83120313b023100dc8871236753c7a4b130b722cb918db257f5e316841fb8c710a3dec2f179ec9a0a6fd7b2ab37a82ce6e446dec717339d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300afad9b8b7a07c8f2e4573f8d73d3ed7588ad9695cd8e4080e965543b449175ce84ba57011758ab93c89ba9c8729946002305e7f0a285280949aa6e3f6cbf0b336dbd29996ff99608574cd3023f3a0bb303359b2b3b8d67a4d26b0f9271f49b89eb10302047c435bb500683066023100e00b0cb50681d1a50d1c94f76585ee189b6547e11ad9a5a31f38b53db788b857ccf5aa2902d0d71f45ce41828bc02f02023100839eb8b9df2d5e6f4001f71e13edcf3db110bca290be71fc5b4058782bf84cf235a80c558d97035937da5923f2d581e20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e4f11e522f85b0ff9974d7016fa1ae830b3ebef78c737f3ec4d068f8ca7a9f2157251ffcaec54834241ff856040c47ad0230228f7912a8555076e495cebed320ffdfc28acfec65b18ce9f8ec0059b0724cadd4498e66ebbb0f4201b059ec9734c6170302047c435bb500673065023100c20337eb14c6c471f2630023ec3a69d0cecdab651f6c2e5ada9dbf0450c9a7561d6bc35dfd68d3d619c5078041953da4023001833e85a90af5bf596f720c07ad7c99308a0b2c23681f7903fd3585763f34c70cfabde076529dbb5cc927d15e0d1f2a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230165669db2f74016f156fbb1fb5b932ddd06972e04a61eda8d25b9801bfa1da762cbb145754947a59121620c945a3284e023022bdc8f8e570fb708d9dc89bc7e2367d6fa6f784fe551a00d51f72df47e2275dfa2209271b22a2c4a8a461e07d6281370302047c435bb50068306602310093a27fddec383e146828367db55dd17004d1d855b3e8ba089e362e09d069e9c8b245c598082cd993bb45d87c2a7b541c023100c7c84a2bb6cc35676f2ead6942b6c38849008dbd09f6870bfaa7633e6eb159a037fc4bdaf69f50c137364efeaa40b6450302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310093e5af6737373c9f724e3bdb099724e13ed6f0957756d0df2371681506aeed10b4a669b786ec91d6889f326c3127e0cb023100c09ff2267ae6076a7fe8bff02d5a1126242fec9d2aabc4dddffd0766c386910ea318b7a42da450bd496b5794e19ffc110302047c435bb500673065023100f804c024446e97563472e7878930f60a1cc9f7899d43171e1c049f135eb36fe22aac7d47ca6d20dbd4d569b5a84d212802304c3274ae0fdfe6537a5097196fd6057eaa445c65b8364f8ecc7cb8a6f76aefc2332e0d10de31aadda3b66e3335a1fe8b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302e8f8ec933ffc0feaab62c802d10ea06a12d34896de6d02005291515dd3f01b72dfd4eacc4c32b09d5e1f72885d373db0231009419f024f71bd5a5bec4c1f089884b3514b498423376e6edf240dc3ca0b5e9f85b1f75b8d5c7e36ee5bf87598bc938ab0302047c435bb5006730650230114f32a9f489ac1105740110adb7a859d54f1faabd2f0901a9eef3d8e28626306d27c284cf11ad974fb6f449d31cbc7b023100ca33f12b067f6cef69fa598b4e73210a76f7634d01990c1cd6f53ba669a857090048405c09d14b0117b082adc960e2e50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ffdfebba84c51c6f183cdeb44f8fb633d1cbeb8e87253a53accfd10a291ecbad6f9ba9ed8869dafa98c0fc5e2bfae27b023048fefbe894e7916efe5e9055759d94a9e3dfe519418fafebecc73f4a3a7fd3a6e80dad9bc2ee507ac2b0a0f8dd25237a0302047c435bb500683066023100ceb23e63a742c5f9971a4663ee7447dbf4456ae145f800a93b32e5c7848f7244010d4739ae43f2318f74dde7da941c0b023100d0d429bd454caff5d5176c35568e684bbe933e36d614e2b36155ce97918e2cbee7fbac4b57c3df703d687468c7bf32590302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300854b3731d0c3051c34b139aa065a564c4f057cb4e7d0b8ead4b8b038388191ad49acbc85e9d3b688ddf0d01a6ec9f7502303185aae6d3be06432a8775cabf34bcc8b796575d7bbe918298566705ba4093e379bf04741ce58007ff45e79282d025190302047c435bb50067306502310085b7240a5a92d32f5b9c83ee3d68ca8cf10358c7feb80145bbde33f6b72bfb700048002cd7c286be696b9a91e9f6eb5402300af3e04b883c2b63f990b0666fd8e57a605f3267f4b51fa063438bde68d5daaf41c3a3bb10e4d9a319b8bb947a6e85bd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307d4cb1666ac5e70ddf12fd8193139c38bfeebf46e91a903728334b6687bde0d3cfbc69c122ae0dd7f6bdc8ab3c5ed8d002303874d28e2cced3cebdf3f298c91415cb1e96ad383b6a988dbcd9aa59927711260ef00e698bcd6334881fbb48210db0440302047c435bb500683066023100831b64782dee64dbe37344e7a940984f39d64805e581bbcb1371515ff55f766b01259357f809db3840ea27861d7f735d023100cf6dc3cc88f93a68dfb7e7950a57ff81b9325533b59dd5c1a57a2afd3adae8c44dc5229859d6a9744cc1499c726d70220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023039543d07fd292e41cc87958d26dd02d188de6350cad6b34c2c358456bbcc74ef875d650b34b91e78284400f5f37762f5023004199d365b67899510d1942b316b4b2a5719e3e86cd2f44e11237bcf32499fe340a2753df0302381e657bd2eeb8675730302047c435bb500673065023100a163ec7da7895ea3370c763d3468c99bc68e0d06620eba816e962ee8695a8ec09165f4af24d8f05da45aa772e902983202302ac21194f03e6f7857d2bed452645671d1089cbe8721b167df056c9820a82bf2006aa93f0022e94326bd5eed012107bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310087778f75337d83a4e0e71e661bea3c8683c4732130613a5c80d4a3d811c7e006ef1c1fc52946f218671bf1a0fdb7666402304b4ded7b5bab6e6d5f13aaace07bd0f280baff27c6f80d58a2108f998b524341f19076602ff2a4ed8051525b659776d80302047c435bb5006830660231009839a52a11ba10a6412a3eca4374f56bc205d13a41261757e4226d53e6c57ce45390137838d6ab94f9a49df5634be5630231008ccfde43ebcbbfea389ede5505e90c6cc52bebdaa5317c78b60817021416c0230c5a025dced17a3db182f46540576bba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100df7a30f7e6558f8e795d06f38388da0d043db0d22ee8c973766df044a0cf122e60c483ef5cb5428c27ae67c7297ab31b023100c285c12f048b1ad47b887f992af701641050dd6ca8b79d8bdee0a7ecfd12570412452af65175a988c454df455381cca70302047c435bb5006730650231009eef67a036017c45f055ff429a126f7fbc250cd6a2e64e0642e6632ff89d875b959e43289b67f2546dbb5847792376c90230419b35af69d779ad46fbb9ad841c2215190cf7fdb68bc09eb1fb8e9a131b7cce261c3df691f13ceda75c9588b5d6ae200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d861ddf06d6dcecce77064330681a824d3e2793a662c9056153f7e7b8915bd2b161be53e1fcb5c4c8e506cf297e40e2a023100944220b1574215dc9652d72deb99002446bdfc7ee2758ebf6c58ae56115cd13c4cbb3b8962405647f165d90f5015eb6b0302047c435bb500683066023100ebb3ce72b9e47fc8a523881cb5fd17a2ebbd19afccd9f5baa71e4ea6df335574df7d6bf5246187b6d15ee6b68dbc6cef023100be49a04d092c2194b7ef05c15a01a7850e56baa24986e2d753d2e02fdcf95103dc2df80d5e0343d84fa34024195c56800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e79bd7a931b42c6273c33e1e4a66717a43bd0b69dee4a975dc781af98dfb849490ab5ccd53373afb226461ceb0e747e1023100bb6caad2fb83ba6c4c1fc36a14f278d8163fbec769523ec31153c37665f9ccfa69295eb9d2b2451088c06c5db87b4ee10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bb21f320c2560279998cbd04390dd628922c47a524babcf5deabfdae5c9c3056c64db3af33fbe15ac118be475ad0d939023100e8498e1bed9735a03eafe036dc5ba9850267de35a75d7e485c152e600df3ca6455b722c69189ed01cbbf8c36098239090302047c435bb500673065023100fb9ee50bd8a686fe643c8e2c08a9440e873828d817b1db55f190c2e1bec758a085714527caffe00e2bc69f59253a853c02300559a3f1828fa7e7785f4e9f2ef056dfc676a21cf4de67ac79516fa6c49626f76e55c3a3ce9b5e7217cb632332888b440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023047f7725814445174f4b1087695ecd8e6da2aec6830c4631eec6c7a9f290d0fa432db7b80f1c29802bbafb23882bc8cc502304de2e0e17a07867568985bdb4d57f0135bba78d2199f2c4b60b342105c3267e146934c942a8525629e179654f0907c960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008f292c5485203f8d8017ac8b90bca0bafb0666b8af7b2b851950498e234673894749bb052f1cff6100bc11aa52eb0efd023100a71e9ae6ff9765593ed47d45c0a0c09cc46a35066688c79192a13fd39bafe268b266ea9029d4f9a7e3e25743b696bfc80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304d58a82ff504d42dd24697338e7546b60005d277daf112774a9d46620ba88e17dcae4d37a8717b273fdc152a76c8ad2602305fc670ad358745e244049e9a6e7ece574f31147b182ee910a32ba2e7e58e386713e1f77535fde742247966ab9c866cbb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230795981f927839122633027393f48d4260b8719b84e98b497ebcb9319977325b550f6c316417ed0e2f9e65f3c8dc3ec85023100877168b6ac1ea62f5e6ef8dd5a2ea1e8741958a97d99e9631c7795042dc901bebd61756b1717dc56b20c0d20712c09a30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d36286268bddd800d93eae3e0b98b28f64b1df9be7be6dd864de10f291bea8bd170ba1b0d2ea2e4ba1b8843807559b9502302a96ade0b1e18469d62d9766ef281ce3221c4d3784f3906184f5eda03718683d4ce1e653ee46a7925cb5864779f2c1120302047c435bb500673065023024110681552a55f23ae700f1bdbffd62c7716e39489ec1c9942a02ed6ffd3c80f63ef7fc89df7a78f0a04282c8021506023100c1571f0343759869c5346f50ce589880d6d9fd9fa67fef4dcebd632aac6e9705f7fd873278af16504c62790d308fe6a80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c771a1d67fbe4188625a386801135764c09aa78ab3da434cb2dd7c8005d8ca062e80cb75e30598b3985e19480e026f6c0230463496ade6b5632e6034429f4642e2353187dc52e679b103e8a9b95338be356425fac75e6b8d199fb0a5996ca93ece9b0302047c435bb500673065023100cb25bcc1eb92a9bceffa30997e2f19912dd27c2a58b191f17da84e26752c6da7bf275f536da09a7dfc763e87f5f7a20c023016b6e3fa89f8427264cd1118602ca35c208678e2f37d7d1d287797c5e4cf2b256564053ca8ec50d5a0cd48b3c9c6ad240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304ff649236f6d296fe20642029a17ccdf0bf6177ac22342ecba060b493cbbbf1a520499d711e63d0324d361bf89981b5b023100c4781c69dcddbe649e505f2a8ab0744e0757f25126666e7f0229e845367d956221ad666c7975c9ccb85f39b2e1c5844e0302047c435bb50067306502306fde929a031b2f494b75658e2286ba56fb27a1dd7ea5c65b4dca49f95feb607c6a69f40e57254c85900938b796b577f60231009d75e5927bbbbb6e6ab8765aa77208151099b3f3a7fefdc73a5a0cf955a44249fa29937d5b36d0c734cd98885eb0f4ee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a42030c58f3120ac2a16b0d76db2fad9ba07df4e46b71b7f8433752179e321b0c4b5e60fbe7bb57697a76e29a12caa11023007def29ec6365a13b93003313194b94b2ca7d5d9c159b6e80960c3d80cf6b5e540000cf491af492a7398bef519ec6a550302047c435bb500683066023100e5f2a79a4daac16eac2fc6110811b86317bc8b1a4b62eb67ef74cb41933c07e0da7274b89d4e4fd83cee35d216ee4caa023100a3e6275d5bb084f34d19cd6d91e2da4e95c29eba663993c761817d21ae52f456bc67d6a08e12acabad7f5d7f590adf6d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d2ef43cbe6e70e34d753834c293fcc5c77b5289fd9cdfa91caec079bca4476e5bd8cfd01fcaf871ccf4538bdc1807392023100e4adc752cb9783954e3d1a38a8f7a3df9ddc6ebd7de910435138675e651053ba15bbb85e9990a8901596f777f7a8c42c0302047c435bb500673065023100db82eb47f3bab8e9045d8ab3a37438a56a901ac9416d8c72dc6f6ba8ba9f8119ece2281627c42a63639f966a89c454bd023072187fad240fef712deaadaaf0cf4c0e471eb3b16ffb1babcbb90a6f06be4ee77f640de18555fc300c146adb7da66f230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230617a62f765d66b6cdb5961372e3e6fb9a586601665bf255140d25ba2f815ebac4167935d3455f14cc9e22a03348135e0023100b270cdf76e5d685210e8b4e9c1ee1c0ca7e8e942312678a6f142209fda99b310db438201adadbb959f4683601689a16a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306fd0a25f615d069be1121c3e0708bcdae3ec7662296d96d2510d08bed1b0617ff6fec76324fd0d6999ab07b02d99891402305d9c669c37ea5a93db33bda8f16722ad01f2d16b0aad74d9a29aa89e98c6e2bff72dcfad3450ab2e40a371279fc613f60302047c435bb5006730650231009bbe3e73681e067117315ab349a5b12557ebb42e7e1d52c932094b0cff8f5f049fd734601583a152573008b93f9770ed023038a639520471d1374db93a638aa72c0d3c7e1269eff1260e59ed664d7dc6d4d5eb79cbf631401cab07136cb4051dbb540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307c57447b7d5599986fc079faedaf947541e182847fe08a3d919577bf75fad200db265692c8ee358f93936662bed8739502304a88f0b18748cbe9cf20e46154ac78b0d813670e1f82fecd8df7c5028df0de1b088b4ef4b8f38a0f67517543bffd09af0302047c435bb500673065023010a2cc855b31d7bcab15b7ee9bf30316eaa0603e7a691a668ef7a7384ca30db437e8ea2fd6aff7da049d8e9d29b92f4f023100e7c869e92916649d3833eee9230bff94edcb30d42675967814b558ada4e0c28718f795ea2638754cea7481075da8ea740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305387f5fbcb779fa509f44414056bb69d0d4dcabe0714f0db921ba315c4007409f12a9b695efb645a28ba2442e53f4d51023100abfab551d15cb87bcffb1d19f5d4f5d6317411368ed58d7a164bd8002ceb8646256b393c27491a157ff88db7faa3571a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009d355161546f67e11ce7c438139f4155f9bbbd74c43c74a2cdd1c210c46bf23c4b76493c021513db9e93d9788f4e556d0230266d160b31aa7355041e6fba055be8d89d7ce0bc8fc77e09a333c337cd555cdbc1a934100f4f967be0463931d0707ba80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300235396edc85eb69700c0cae7c75fa8e85375f5042cb85a214a418edcfbb68f622b376f69da0967d312b2068b8dc31bd023100c08abe267d320853581ced8018183c74a00573687805f28e20920841e4ff5c8ca83bb1ceb8104f63b2a04261dbda649a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ecfbdfc77f7d4844ee66b2c10f4769c494a979c6e80be7f2194734bdf459fe92a96af266520261e31c56e7975513a6e70230407af0d92a624fd11510b3e14611007c27f4d17607c0325724cda2d5650aec5b1ca4f27cabd979b4e076c2833c82ecfd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307bf207fc398048497b3348957de4aedd2b63acaba878516912299579e9e62c775e1e1b550cbeb13b986239da289dfded0230082a3daf9aa6a71d2e597f38aa158cd51f8573d0fdba6eb4f5916b828a09b13899787a04e4677e9a5516c3ee9d3d70830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bb9e97146702bf177e4539db4eeb93b5907a7ae2420be59fd0c6a017fc4594d39deb684b220ae94860d80eefae0a7bb5023100f34260e49439d788a808278ea0c7ccf97d86fda2af9d5eb29d228dcdb5c78a82511e80408c93f9109bc6a8a9387c89b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a42c35da8f878c9e281cff0bd712c479d3d9a753cb86d03387cd98829041c288782103b45848eee5d8bb2308cacea16e023100d7559fde1bfd8871cd6decdb171fc5e522dcea4b96c690476d6c57e2041464ca5e2384527491b463ed54414ad8f02d680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d37c6c189f5d0bb54f731dadacdb46518c1c14d35a98b11dc8228bd26ab6e4fc0f118c068528901d138fb0e67fb3893c02303330de6e72822ff0fde497a77978f44085820f4315f3e1e1c31f2e6c949838c9dfc62c8eebbd425108d0a4fadda922360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303a13c581724a520872a6415a751036fcd7660242b20951395d0a908e5ce0ca3eaf2d5215666b076650832d0a37ef2c2f0230334a3bb81136d453aad2c433984dacd9eef00a9dad7f9e1cc5d9ccdf11651356e464de45bbb341a56f6c2abb0d6a57ea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300780d805767a5365ad458892466b6f32f8a009959b28d12cfb8e531395081222ff7607abb1740455b51f2e2e9767ef4b023100ce9ca6b9f992222cb64e6dc82e3b037be95a9faad43b6911c8355bdd438db5dc7d8a7e703e147e3046345ed7365944b30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305704a86cb64bd15edf51f98f7781a9a47510f7e7e6060ebc09a0fcf3a1cf6d65f2717b82481eeadbec5d5bb0cf9f37200231009227b0e8ff4857a4562926d9c87645cb3b2ddcc36fb65642fbd8810acc31b432d90ae10303e6af326bda32548b0a44b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304ac0f5890fe488f7b38ebeb6ac3a11419ceecbd926f5fb05f53fbe2eafd46e83c5dfaa51c26e3ff6fd5dd07907e456b802306cabb08de1c91b9c055515465fa61d70ce17ec102e679df561253333374c302a200e56a732f4ac1d7a2b49837351da140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009a172bc83ffcee8ef498a52c68aa76f15683e3b8951df01cb76e2fceaa4ad21b406f5de580d06ce8dd4874422a4ca3bf0230105632bffe437372655548d5412654af6a129835c7213a8af3a0e5b8cf5b6237fed5f7ec470c49bb4d6618c73339a3090302047c435bb50067306502300f1775687cc1bcbb9af53dd7410e6a896f9edc445bc9f0cbfcbad95ce3e5b370808a27ce9245d3ec7612b4d8cc8ae102023100c0851c41180e0e8881f40b43d5b63b37346fa88b97d77dc4a4d36e0696a27dbd4b1d9596f1e6656e5162135c3593bc8e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b7322e9e96fd3f93a290d138d01eeabdfd2c08d7ffac6120f6fab51fff05a6342bc3c5fdea36fb42eba848593ab164910230715c9e8bdac8373382bbba9f763c0743f1cfa96a98d71d764efbaa38a608e15fc73526a7c54922cb313e180dd9477fd20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230291dd5f12407016093aa63fafa6a7e552364c9196234a0f402c1eef5e5672830f7f3c83253a86129793a3046987143d40230498ff7e079d4ba0b39c33834d9bd30ee33e61f1a7f50aed377f8742c3e771e4281e915cef25a9e75d66996955525aa0b0302047c435bb500683066023100e9f2900a738462d72acee199af986db81e373b76f3f2fe5f0c116a83f56086f61220b38596934524c17ce61f638467ed023100fb0c5515ca9a59c1e1bbd487ecd9511239356c162201ce145da8a4faf2f6bafedb6645299fc9af4f4cbc75fd2217ec240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300a238c676e2d500832e2cd5a75ac24f4ab6ea6fbeda3c9485dcf524e885edec5c451d7dbc7a32317a3af8c16e74a7875023039e77369b2d5f6d54bec548426f5b4f2dea7154ad56c4b86e34d0f84491ee0f19660686fe188837dc0b91c39837fe7e50302047c435bb50066306402306ed2289db4e5553ecbdca3dbfd2d89f88015a332fe2bc913092084712ab4a33f80ec1316915ec60c7cf9181148d54e8202306bf058f0eb40b79ccf01f06a957a3f70262d91c6c49ae7f249fd40370f6e6f10f9be42b524f163cd80adbf91799a28110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dca6bab89e83677c2b195caa761419e37a6645010144ce6fb5edc38860b72ec5a3492ab542fd9a603488e8e5c7291a7902305579ef7c164439497fdddd5e737f9e1be9cadcf2077c6e04e9f6262029055d5edfb74e43c48445c66d1fb5b1275e992c0302047c435bb50066306402303e6009a734803934bc49c6a8d3d8383cafe9e9a84612c6b9e5a30dacccf0270089cf521091ba4cdef81dff75302ccb900230316621a0d5272c1aa996052f1e328567ddf294001808219e5937bbbd3d338239d1e12971705609d44251824bc20a24c70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c4028bd4a3c3230d939b2e7734f526bd3ce83b3698336dbd5ec887c4c5b4e5cb7f931598f25fafa236f1ca27069f9b4d023100d82531cdb6e8cdde5d8992b06c38d38dcfc019f100d1fa8046916de78615e178074b02ced40302c586f2d1f6f63fe7a00302047c435bb500673065023100f57c9ec63855ce6e54695a6e69636cd28868a7e47c2691efa8145a042d0a8f04962ab55c015925dd4110229461181bc502300895386917784ee4d53a69f1a9247becbd1afcbe7b89f5eb3b590711778cde4984062224d0aaa6fea2a3e2f9751707e70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099e82e0dcd3e4aad192b05d83bb807cad2fe503b714d311dc1335ed42988b10f12a6e0a9124c6d92cccc78da1ec65a42023025c735c84023d6f455caca97b78f222fff284a7efe7524cfe14b231048f34db19bcf0d6fd703d8439091704e7d278b8c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099e82e0dcd3e4aad192b05d83bb807cad2fe503b714d311dc1335ed42988b10f12a6e0a9124c6d92cccc78da1ec65a42023025c735c84023d6f455caca97b78f222fff284a7efe7524cfe14b231048f34db19bcf0d6fd703d8439091704e7d278b8c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099e82e0dcd3e4aad192b05d83bb807cad2fe503b714d311dc1335ed42988b10f12a6e0a9124c6d92cccc78da1ec65a42023025c735c84023d6f455caca97b78f222fff284a7efe7524cfe14b231048f34db19bcf0d6fd703d8439091704e7d278b8c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023037a97ee89b19b75e91b071ac5f2c82e1ff9d42f1906aa42d71e548fda899f276d219cd0eda29eabc8df8fa434f703fea02301d75cc9282968ad65f4675379184a9cd7d5c0aeb40174fd65f2a9927913f56724294db6118f7b708a1189c16d5f22b5e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099e82e0dcd3e4aad192b05d83bb807cad2fe503b714d311dc1335ed42988b10f12a6e0a9124c6d92cccc78da1ec65a42023025c735c84023d6f455caca97b78f222fff284a7efe7524cfe14b231048f34db19bcf0d6fd703d8439091704e7d278b8c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310081798e5d4c679949056e5394086d3c1788465e1a06baefb1b9791eec5c9673c71747ed49957674e12e15078f4d4e729f02305f505b32ff07179ae468c0858b514806d31f8f076e321df24b692ece787a59352e8fe04d43918edb4baf5a56d7c072750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099e82e0dcd3e4aad192b05d83bb807cad2fe503b714d311dc1335ed42988b10f12a6e0a9124c6d92cccc78da1ec65a42023025c735c84023d6f455caca97b78f222fff284a7efe7524cfe14b231048f34db19bcf0d6fd703d8439091704e7d278b8c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099e82e0dcd3e4aad192b05d83bb807cad2fe503b714d311dc1335ed42988b10f12a6e0a9124c6d92cccc78da1ec65a42023025c735c84023d6f455caca97b78f222fff284a7efe7524cfe14b231048f34db19bcf0d6fd703d8439091704e7d278b8c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099e82e0dcd3e4aad192b05d83bb807cad2fe503b714d311dc1335ed42988b10f12a6e0a9124c6d92cccc78da1ec65a42023025c735c84023d6f455caca97b78f222fff284a7efe7524cfe14b231048f34db19bcf0d6fd703d8439091704e7d278b8c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310081798e5d4c679949056e5394086d3c1788465e1a06baefb1b9791eec5c9673c71747ed49957674e12e15078f4d4e729f02305f505b32ff07179ae468c0858b514806d31f8f076e321df24b692ece787a59352e8fe04d43918edb4baf5a56d7c072750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b78dda943546a7a713262582059f75ca43cca2e5f3d95790c7e22a25dfd4a1a2f02a17252eb51c0fe477f397048eca8c023100eaf0885034af035ec4cdecce407c6eac7e865ba302c1c6d4b2c38c7f51fe03cab002469c24f2538cd6ac3a8786260ee50302047c435bb50066306402306dcfe08c398f8b116a741c92a52ce01e7c58815d0b379bb9f0f6af52f6fa3eb485eb8a4f9bd8199c9ff41923a138dd4e02305c3966fd037958631048b8cd580e83cebc7b2e2de94c702934be6ba3255f9d890e8a68c570ead81083a3cdf3461035740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f03ccc83e4aaddb241d31a05f5747b14a8622cda53985f169e1e3e2af6bf6551eaa1381b7199e090580f38599e7df172023015fdbd260be3db0f7dddb474c830fab703fb8c839d56d6cb3fce9654b90f15259f88f48e8b4bff947afd1f7b684d935e0302047c435bb500673065023100bb5ce164e948e69d2dc81bfb84089c93ff3b7df7c778a3221ace8077b823ccdfa4c0cce16cff5fe681ea961aa8fbc34f02307575b26977bfa064a05abcec39f3d43d4ef9d384164031c591d39722498da506f367760eeeca421529ece09babba196b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300c1701c55a114725dc144df1cde223fe0829006e5863acac00b014619452da223e9305affe493a6498af9459325d6b870230094b33b496cc029a8944f28a68b5784ae129db7abd57fb1ec9b806b4e4553ae1af8e046f263d37165b57e396525ee9dd0302047c435bb500673065023100a12f6d80f74960b284a4feaa14449652c0630acfff97add6ae69f9f3f648027ffda793e7a13efa6b051f65f520f5909502305ebb4abb0e1ea8114085aeca75f84920d389d060e9ca2d01a1e566bb40c8c51b3aab450027764a932bfcf67d1a6652f90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023015333ca24e4ed9953acc4d5178de165426d854cfff77170381d39735cd3d146039df5b9a5d15b3a70dd08dc46301b4a502301e1a907c1bfe7faefcbd62ef75630f8215492f7b71b9bd01b90ad0f8b78b942058654ba154a9b06e4b0bc3c2e8b89ef40302047c435bb500683066023100fb64e57a9d02c7d2233cdd16d573686acb23821cb451af150cc2e97088538d0c5c4b6304456546846e58316ff662fc6202310096a55ac5c80a1f4883f51fa151496e63f2206ee4b161d92369b9e438d0a48868c05f6c885044877f94f8735d3f68682d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306ec060086883f1e976aecdcce104cea3030ad5a531bb48b4f2d3f0c5e741bbd52184b04865a915cb39e58777353c3225023100b4f35a9d210c2de212c5bb753b169630e7a3ffc073a185af2ef545cc12e6ec327df3624f52b54eb20c1db8a7e384b63d0302047c435bb50067306502305df9b3d3db1e68ada2deaef736df7c12881891571a054855969d1e026a0ed70a7f95ff05d9a2fd541c0b46fe0980ec71023100801665834f361d5bafe7ce1d2e96782cc408b5b9d7f80833ad4d5c534b6010493188c9676782ac24f57e47a58c25230a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009ed0ec0d702f4c54119448476cc8c2856603dbfa4a832f7430f310ad7501b0baa0d589e39aea6bdd41428fa84cf49e5c0230707041f99d17350e12c3cb4a3b70d4b51548f2433513dbaf288c6cf6a29206ed4284e8b6f9f72b4e11c5fad87ba4aeed0302047c435bb500673065023100bced9abd788894a200a757d72b2a282069275f49636150e688514073009f21ea27ecd4a10098d5fcd776be865f684b3f0230388d4c769d555f720a921ba1ed886239c22a8a3934c5995cad11213d7cea48f866f4bfe3edbeef04f029fb106ef175d00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310096733990b36f5479ab2ab501fb826968b33d2cfa53a48f69cd2484f02a4a3eed6a20117e0b4b54f296990024f159cf48023100ef13d1097e6e3ab73432e9854e415e7cbe09f30f766e35ed4e845350b34049fe57ea684257c88cdf9c9d2ddebe8d0ef20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303fb509028667cd45054d4beeb7f3bafa0c8bb1a73fe07d2aa46a74174c6c49be8ea55f24bf72b32975180025f9774a2f02302ce73e7f1ef3a846802a609e12499ce2632f71c5e163e7add795fd219c238c4ed41af7b24b2c1b999e475251b139fbb70302047c435bb500683066023100d0f7beaff547da931fb52698e80959ee8338f96d12711f0729dc4684fe8ad2558669176c6a80468ab91dc324d914e5e4023100d8312ae24bb423f8c13cd86056c8a178c37bfdf0772f10d71db3650515da5bdc265b83e93f43ad4c661079c989c698560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230667f5bef7c83f8428e89900a3533eea32bdf94a942bfb7d2501c306f6f30644ddff7455bfd4fe0141de4ba791ab0db98023100edec78b1b1d0e02abd0103cceaded25fbac2a9dd8a311591984803e47e48d7938f5701b704eb804c02ead47ca410e0bd0302047c435bb500673065023073a7a36ed064523dfe93b71038e596bfea7026df4f7abf5c480ca3fbbfe827242cad742752bdc8f57f725996810de32e023100a5c241908acccc2c40a82e491bf058087bddb29ed46fbcf09e555ca6dac4c856bc13310263afa45e6f6a30e77e2d6f5e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300d4389c6b9f428b0619965883c3a1520da7c0f823a978edf37a6240d3fa8354b8c9e1faef8c45da846810d6542e84169023100af824afbd3dc614adb79323c311c3bd13923ae115b564e604ce3b81d63289a1e334f3819f388738d970e236f93a4c5f20302047c435bb50066306402307e00f71eed2bfff86a296e5d8d2dde4e69cd3365653ee90de8b64e304653d63a814f034ccd92ae2858584e7fd5f31a170230520c755b66c9be00851711b803c83aa83bcbb7c9850e640b32857a51d328d35a3569de6f3febf26dbc123c7896dd100c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d47822b6ea0d6a8bb231fa1670c858578218abb05775a5176d356f47c880fe2c7105613518ba0375b632ac6e357842fe0230049edc31d0750da42bedd63e903f44bc20859d34b9ffe9cc676d05695a07532e63c5694593773addd79e8abb4e9ae0470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a271db9365d06fb4d84e732609385ce149e5d99ef8eb64ce109aa8b87a2126924b5a4e771c9b4d035854237cbe611bad023025eb68b11b06dced4e18d83c3dbbfd92d2de1fa8dd81c08267d31cb2558d5733ef67c5f57e4287463dd8e5dee8c2eb590302047c435bb500683066023100d04e0276235f648217599b44ef381e6461f87d9ad138776c6af071ccc87a9ea5a6e707b6edb023cb0f153285cdc2babc023100e686cb88b1211cc17ecb04c80a4f902ea294e891887ae81359f3c3fa72a7c0d563883f3553828b7ad93338a499f5e61a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306f13cb15b57cf6bc714893a49f3cc148fc3a754deb012dfd7ea88236ac62577b9a950a1f49a9e0d96e3d3331389f4ad2023016250092b4690b6f42fae39385e66c6d78e11495e7c408907d4a444c8f7e901b6e631e00f2d5ca272459d6e756ce950a0302047c435bb500683066023100e23f5c699619abce13a5b8559fe86fda1fd18b9c4824d1e51ab51d5e9d7395701e2885754ed4a20d84e98952d8577cb30231009707e685177a2e11fb82a32abb19e4c2a3ea03f78d331b952bbf810d142e47084bb9865b3a59794ad6b30f95b7a569250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303c585b2a43dfa8d0c6a234f1a715aaea4902d5e809b72ee364969229a7ad7c8d400940744d69935ed9cfc69444972120023100dcb0f76f59dac511fceabf3f8f6e9cc97aba6d9e7e84b152634382108a5924c572afd1a75d5bb97236efdb69d844847c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306545edf044748fc9423903074466b2ed1ff5304f22d92f11839b29518532a95454132f7ab855a8dcb65b38c55d6f272b02306d3f24c14a012c95eaf30678c4b54b88167d1c1501dd1e3e8708971055d6e86f6799450652e48efdc61edd76a66e96e00302047c435bb5006730650230011b7ccaa1dc13cb546b38ba73027678e0fdab80c98371a3de8168c093c4c6e35bd1df022fff7edce161ead2222182c8023100d49ba49b2f7acf3920cd62db2d95ec6f7e1f9a8cd2070c02a2c18233fa1e92f9b0b8b0163d38ce667e1d0e552d25485b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f55d4a57777a30d3e2c65a69ad5c5e3f854371b044b87c18c4b7fa8ba0088d36d97dfbdd47ab7afeca8648c38eb46b610230283254ef72e6bc9e43e192f91f1a5bfde980dca4e301c54f53c42ed99b87f966021be238fff89bdf45f0a2b8b0983c7d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010fdcb7edf6323404135db943f201133c977143381cf0a8df6fa22fee512c14bf8f01b2a324552785d43d35d3afcf4ad023100969b26e47e0946bab92a0b3fb8d6f3ed5388d512ab810c4a4126e132868c95148cf331362b5b83cc5c1224266e5b8bed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010fdcb7edf6323404135db943f201133c977143381cf0a8df6fa22fee512c14bf8f01b2a324552785d43d35d3afcf4ad023100969b26e47e0946bab92a0b3fb8d6f3ed5388d512ab810c4a4126e132868c95148cf331362b5b83cc5c1224266e5b8bed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010fdcb7edf6323404135db943f201133c977143381cf0a8df6fa22fee512c14bf8f01b2a324552785d43d35d3afcf4ad023100969b26e47e0946bab92a0b3fb8d6f3ed5388d512ab810c4a4126e132868c95148cf331362b5b83cc5c1224266e5b8bed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010fdcb7edf6323404135db943f201133c977143381cf0a8df6fa22fee512c14bf8f01b2a324552785d43d35d3afcf4ad023100969b26e47e0946bab92a0b3fb8d6f3ed5388d512ab810c4a4126e132868c95148cf331362b5b83cc5c1224266e5b8bed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010fdcb7edf6323404135db943f201133c977143381cf0a8df6fa22fee512c14bf8f01b2a324552785d43d35d3afcf4ad023100969b26e47e0946bab92a0b3fb8d6f3ed5388d512ab810c4a4126e132868c95148cf331362b5b83cc5c1224266e5b8bed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d0aba11996f1b74378eb0e6dc9baf18a6a50009253a6e34c79c8108d84a0f3792e966d5419c9173b18168cc0e31cea2402306f2413a69f4f39ccda15b8a807bc17d1d302133057dc147c1c63f192d24612e5205c3de5c684a02743945794234ff6620302047c435bb500683066023100ac3dc829db68435ce91719dabc5479de7daf75f751762c9623662f8c96c1d2b95b87989c9220438132444b9f55bfdcbb0231008f63c0978ada5c10f5e55a4c932f84f970794dcf9ba726ccb4685fe4c3748515fef205de89cd8173c868ae3fcd1152530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dbbb9a2f67e7d6a03f8b968b8682c45182a4f2e0dc7764190128356071374b2821ee79ac61864631a44b30f844b2dfb1023001b9be40af50d1416ef293003c19c19c36f61f042534ef9d40a3f26e2ed842c0c9c68bb2bbe69dd07c322ac704dd95c50302047c435bb500673065023100fb0d7cb37a8a1567766c83945ea3a3733cc1c269b76b519fe320e2bd2a3d1ad52cd951e60cceb4fd99980663a30f4ca902301d51592f2f4179b76d43148f7bdbf80117d87eee6bf253f7dc96274a4aa880823eb1a21ad780e41b2144d2c6613e72a90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ff67243139530b9c017d713266c3e3d6ca3e3fcb83add39d9a299c25efe024fe5da718a43a4700345d5e708336656fae02303680240d80a9d1a5fe8704a2a5827714f9ccadd07a488a02e1d8670b53b5ecf7d4dedbab6b55b98744b95dc9ee6aa9bc0302047c435bb5006730650230352d3b3c6d4aa80dbb4febb70025808dd326852b4db74a53a39a90c3b95cfe051d6138010d0ffe17f21171bdd62cb1110231008339f56736c8dddb3778f63d0966595acb7518c7d282bb4be2c9935046876071d4c51ba9860d7f9f3edb5b391201a6f80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305ddd861684781dfb0871dd9a141a64ac3da2792097e85f641373bc2b5c66312d88d68a430cb8788a6427f5421c208eb10231009f48b86f480e4a9bf31170de028cf817a80883fbc53ab92e5ec7cbaca065d8fc8ff74b16a7789bd0da7a5b269240dd5f0302047c435bb5006730650230666fb0c92bd0ee37c0b0be3cc8db9bedd9dc3233bfc1b7292eb743da869e09f4ca43fc88226a21fb9e863684b8fd261802310091507b5a8d9ce107d3ace246e039e8dd6ec075089f27961fa0bb02ed32e9d6931a5f6828e77d1bdbbf461d21fc2e50ea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d2d148a28842c8630335de904f02260b7067688f51cbed6a31041f1fcbed6b292e15c15a1d678a961b125a042589c2200230348aa7f29efd2883035129a96b32b880018aae054e43f661d0c33c607a76711039e635c8d4c4507e49853952d149aec90302047c435bb50067306502310094d40dcd879fc26b79bd06ba29d4c8cfb13ad6a23692d8e2c0b230f580ae33687aed004b2f6d333e144c06029f5b2aaf02304deb0a782ad75289f73bea2f89c30bfde2882137daed27e05e16a4fa7b2386dec688a62d34f3dcbf8878e109ad5ba7930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310086fc36e4cc66934654d99007ef0aff2fe65bf2a4d521e185121325c8264c4b985f7a70ed10ae852fecedae7efbe31d20023100b14a637ee1c0cc8ed51b4c14890d40a8ee28a05a40e68c2eaf8dee97e0679ce57bd9a172b3af3c492a788b636508b4d10302047c435bb5006730650231009b08b8bf8d34444e82b7c4162075f79e5503b4ff3c3fe3739d79a2c880ad9842130e8772bcab4349ab371e2b5b4d6f1902300d58355dbb3a91c33587cf36fb55fdb86ee3137d3b327cb6fbb622cb6786fc9d7bf80948fcc75a751a1af27c0c1208270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a1470ebc261c91440bda6ef767f48fddbf40f6af7733b2a7227d41a25fb37b8fb671eb6019f2e8cab9fafe12a3929a31023033d0edb893a61ade1632ccb98d0bca1c390e0412e1a85c7a918b6dc56f948629343c7e72fe4f618535a665ccc42c1ed10302047c435bb500673065023100857a466215a45233a2b9bb45f0fbb0d6d57df394bf86648b3ec8b4e90307cf8c91f6c7696f51d4432707b54828491030023026bd33f74a59a6f17635c1c3478c148e6a507fcd3fa4dd8d5372641a22dd67787f565909abc14d9e2f37db456a57b6450302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300f489bd9885d7fd865a3051fc7ede8d28722514bdf2aa82a70e52427573afe4550c5a6b16f1ed2a36d0bb1e2a5985116023100a8ce16ad8c6927b520e24d218bb197dd097d173ed4cc9862275acfd4fe011d57ed1d4f735dc5e72827306995443349460302047c435bb500683066023100d45d6a96705358595bf062c05ea4872688f5717bfb16f0de5aed053b2e6509d012e75fc96af78e95a201a30be571fac8023100ae4eb2b3876f90632441d2401518d17011ac3c89567e5b20307178a5e4281182f2bd81c56c822fc71fc11c87653ea1170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230602329043454017d266bcf29d8393353ead332973d4ebb3d4a0589c346433651760e1b5724f8369abc29d16109ee0451023061ce5a82b088599b6ff5652dd7f5d1cc2441fdd931cd74c1525cf2f592599bc47db271c322c7d3b24a062f29bfab59490302047c435bb50066306402303eb2ce13adc084e78bb94bc6f878a6c752ccfd6c187b8de435e8eb6f676ab06508992de6aadda0bb906a259eb04d9e5702307906c412c718c062e01f21668f9f56dd35db386f51ee0934b38ea5f1d321c4b54a8caad3f36f2f31d52a93e0c46653c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310091de210d32d77258427eba8e81db2e3c5f6d6ce1688fc8077612fb31ece38ad7fbc5779307cc62ff2d52c1e3f96f05f002306fff03b9f9804f55373f872465ca50d30dc1769dc25c9a8ccaea151aa35d843ae062dff6ebd44adf7bd411e06b4d429c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d65a45d0a74e0dea2211c901518b717e87b00dec90aba134754e5fb30105c01f31379395c725806b5070c2f9e2c8cad2023100d5b5eec175ad869e99420493b9f00c67f03be622ac40aef83fe0bfa169025480c40851fe39e15cb343cd15e705cf7c320302047c435bb50068306602310091bd745125c1356f0002e4f3e30f56def047f37746932f591a220b0a7d0fe58323091d1e3cf5cca1eb13d105d5726500023100e0d979a768bacbc7b80c9ab5ba77eea430a4aa33b06946ae5a4d18e2c0b0c100af37d1a604547393a6586c1773c2ab290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009d85ce87893d35848e520bae90b825d497b895f048b54b099f71d9829e8d24e51f772d0286f45b2143cf01a5fde64e64023100888558e2dde2abfaff231960592713adec885dbcd9cf8e8ac57623e9e8c0d071fdc425eb248b8c32a4761e2d487da1d00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b5a851e22d717fa805c65b3e469ba9661c27200a1b20846a4032c60193cd56fc0f45799bba81ffd5c633ecd90b6eb170230471c25c18bca5d7efc43fa44ba951e9d737fa84ba3c9fe2d9834317e6b83cea7a95fe62712b850e0ca416c7517ab09da0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d088e6a28589bad1ffe0f8366bca58ecb7cf1679baa1f3c7cb0fcbd20799f26701cbabf6e95571de814c9fe124da27bd02307721f80eec398dddb33d1e6e7b308863f78cfb333981e56bbea754085b33060cd4eefafbca1cd7f7b7d9b42eff7cc64f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b4c2b4708230b08f1399302cf8e78e817a1c14862b7208388118268b64fe3b15bd38a566ea5e39af5663a9893fd307490230445bc01e33c9a2dbcb06338fde6fda95771edd68861d0bdb1717669ea19f02bf68fc0c247aec2d0f5eeacbaf1b7989db0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023069df6ce33b024c0c572ba737b0f4eadcd48e5661d14da891585ce47b2c0fcb211aeb0e5943a18253d93852030dd18ba7023100bf8a8cdec67d9119689e4d93d601b461d909ec1cc2d04aa396db03bdb760b567c78363cef40087cdf9784bcd741848970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f552d876a0652a937c07bb0e05ba27e6fe8199540d659d7e19c5eb10e3cb0281b4ca1716e3b67b11129219901741cafa023100f0b73359e96a755a7f5be9b9b7904f6fe36c7ed9e7edb68dd296a2e3b1e91e70557d9b44d173c54d75362a6a72bca8620302047c435bb5006730650231008853230291bfa9d9b2ffefa8039b47f5cd36e3efbbd14a84fd0ea79d6e5416e095c81a8b99137a9f5f8daf32cb536a140230227af936dc30366047ff7dd3f7aac8293336868d007d5d70346a4d2f7a6bbdce4eefbea7131a2c87f204684fb61e0cff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008e365b62764df55c3b1c40ad3c647c0e74f21e2213c9aa2202cd88c12f64807ccfe3da57200622ad98bcfb82fc66ddab02304397f769b8c1249aebaa140c0545c80151696e66a9495d4afb5bd178aa3ca3e5cb966c010fba607a239fe5b51e4341840302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307d7ed146ed3b7e1b4b07dd6983c5cbb789aaa38e963e8a8ecf1d0d26a1c14a2d7292742df879e279bc53a9da55a257f3023000f9a5d27e9cff94d3d41b10d0d8b5ccb780414e71bdc186890d8893ca2eeb1dc27a703fbacaf3cde1b31be5918512b20302047c435bb50066306402307a07fb9114c1aa471bef9cd4b8583bb0f92c77e2a74b210122cc7a4002ceea2420b3f212d9fa6326a574d2b01dd5d74002303777067778e720af9567dfd118bc1c89a6483bfe2dce1053b7804125af45d600ed9a66f88171862a3af22b3087c9560b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310098e1b188ffba42711735268f19ac09fe0d33bc7a729148793390e0f629449c324336c06e72f040987f379b754878256002305d10d13d70996f6ba2a187cf2f1b30cfe1a6f4c7f6cefc10e452501d24a9f887d06d7152b5462f9898bb81cabf6aff220302047c435bb500663064023003b7d3f87f06d9703568144e18f2dcc777356b29183d818da68f16ebd9e9093a12c7a5fc4e149a2294b12fe6e2d0567f02304b97cc1f628f582cf75154a833bca3ed899c9c04350eff89ce13f69688c4d548a08225edc04d64174faade3c3aa68e2f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230060e4cbee2d2328597a0115184cc92038448c5bae3a4c2f35d91cddec3cd19d2b28947a77e92b6c693fceb71d545c1a2023100b5407d4587713e8bdb306c3bab3c7f441eadc2a3f46366c6b63f0b8ee86e5a6b256669ce472c36e9d59c74bb31b926e80302047c435bb500673065023100cd272f1a608a39189181bd065bc7f284e0f46c3a3b7f795e04b10cc1b2f6eac48b158dd1341eaff0acfbcff201ddc96f023007f9da5c5d36eeccbaf9e07560a51da91f11ea4ab57f99f8409d93d4aa8a1dc925a65e53ac76f90551d164435d4bd0ab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301656212159112b0f984f3447c2b376e60e05dd6ce595a72f62e3afb09e28f923db89a711c9c0f18b07caf50f74c333650231009c905ac1248882f46404ef999d3652ed3a523bd647f55971a2f28363ce434d28e96763b98c3a6919966c4ecd659408240302047c435bb500673065023100cfb0768ff0024db3191c41b33eed5a1a1e8146e74bc1f90838ba39427f62f0e4dd2fa872e4873b7e56c94fb2f3ca8dc202302b4b59efec78ed52332979e702d07cf25709e59c5433dbc0d87e9d85f34920eb1ee1eb22e19830a99fd37abba7c95cc40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fda607a8fdb0fcbbb8e0059656ab428c461e59669934f8eca3682d63251d7fe00d258e258ed8964fad0e70491ce4548b0230330e70ba4a68d238b83908aa04bba2491f2470a423a2a6ab4b870ba62ce7c6eccd3757069aff085df63b7c53e3bb61230302047c435bb50067306502310085ed1c70d4d0e58e4b0c199f55abb741dcf07f596ee18539d9475e75bcf1f616ca6001c6bc970a84e97487fda7cb50e002300d35e1a29be4248934e4c35ad436f763007af408dd9404055c40217cf564c48682412c081990a0ccf075bf83141d9d8e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023005d88a7c4b327bf48bfcb875a3526a11166554017bd7740c62aa43b61c821a770f9190c987db9dfc32f2e8b583114d690230309a6c96dc107c6d2e45b5bfa298c79f40dbbf7116e01d3918a6978611b1eacfa987e184620dab806a96e6b34604e5590302047c435bb500683066023100d2f14372fe0f89c4d7ff28878f60b98b3eb19c0def769693470547d360f0444fc0f08252df0a7813381c37c799f789500231008ddc9bf33010bc6f493291501dc9f5a46614ffe542400f471d661024d6f2b23a123883e28d899be32e6362e30c493eca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f225b8fd90a0d920ac52d9aa6bf6240819cc801ab12f33089c8447577ab23b778f5d05e5d5dc549ef3b536fed369cd75023100d46a498941e941070bf9ef847e2957d4f8d02b894a4af9683b45b1b860c3451202ea86d44039572f88e7e8fce37f18250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b9a1424bdc9e8db3469ed6907f47c7f07fe7506cd4a32a462e066f5810f78518e172a24a94843e6b87c45795587836870230369fe900e6547f6aa036032a4b37720dfa24c24a2f507c617d0486051d923df401d212b763472cf24ce3f22766a3a5ca0302047c435bb50067306502301d53f69c32d0223764f16884e2e62bab16f991b2636fdc4a0294e9a1cd3b95634acff3abe577ba69b684d9280be90393023100f9cb3d75aa33c4e9a4dd59d93e078725d410f160772fe613452b3eeecb157ea5b2c370405a10229ec712447cd4f455010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008631afbde3af439c411b5cf73ecf910a02f82d9b304a316bc597a296cbccd603da1f6846b2f0f9785044af2e47de1108023067a3b343ba86747c1a657a7f9499eb11f7a9554e2f5338cdeeeb866d427bbe77914e0989b86cb988348442a974e66c120302047c435bb500683066023100df731b4bac5561d5cdc85cd83b217e38685ea09df56619212f962b78770d32f92883e97809cc0f487a6d58f2956eef15023100f83f0c720607a1f55b928be8e32f056b49189032af8845affa8b4d81e847d577e91e99996adeef16f601d49ee339c2ad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dac6c91174461400a796e8cc2513a90db51cc732b48adc2fdd65e3f99156fc792980f92201647a3cc3591b7e9c4dff2102300b56ccb232bd08741266d5340c0fcb6b0e85824f6ab04710683fe079a6947d22a80e208db9a3a045586174cc4ff6ace00302047c435bb50067306502305d734db03ade3ceb039862c8d18fe3080dab9c7d69822a619d82f36ac153e10e2f0e359b386b2f44894a24f70688433b023100f64a9a4f1fcf91cd5d4c208360c3196635572c554d4af7f33bc32491e48a593b52bfb1c9a9b79bfe52b1bef3820fcb330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f75252d1b33f20ada3f0100c67046b2f81ae6068a5dd8b029d0b85bd84f967da46803692753949d9b28f27378706587102307884cec919f38c604e4ef6022654df702fd48ad6c4672e16f6aa6473bc0849a92c0789d601c575ffac3449d55d9b8edc0302047c435bb500663064023065fb793b07136d5cf43dfd60f136fcef0c51e00bbd937e5d9dc36f0419ee5ef0e4fd25b83d33c06242a5153489d07c240230739d34e2973dd2d44f14c9ab7c608126a068598f2b4e0d5826cba06a21cc167d42d93e56f8eac7ad9283e16f8a8ff8f00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023012422b0adba637ba1b8875c101bceab5ac8e6bf8363dc790d8d1e1911cf0bbfb53e5de1e243ed8317f60f35c01f4be06023100b8d04e87f428b61bed488ac856aeb7e7651eec3096f1806c53d2d5a5cb04ba7709effa5821888bd2d77a247dc9cf64c10302047c435bb500673065023100bdb090e4680c67b25089478c9be8c0213405060bb5b30b4266838917bd024e5a0709a9186ad6464274b14dee1eab93350230265df89bda99f04ae73d6b578e8bd2f69d32103be879b0852bffb2ec9ba0a2e25a7722f49dc9e996bd815dc1b714ce640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b079857003b5dc7ba8fe23331891d827927992ca58d2f49661cc99526e097f289f7ad8490e24bf3b2a83b795b6d499bb02303f815995fde60370bc175ffa73b4af107900b578952fdad77c1edc449a4727a68d3f32728e9aa7cde974f94771f4e55a0302047c435bb500673065023100c8f59c03fc7c470322d6f3650964136e6cd28907d8f5152b0fa55424e81e28ac5fb13b5f57299b9bf8d3850ea8ef9938023067ff996bfbace41846c5f3b65b5592856847ec95baa1acc5c4034bd516ca452696dbe7cbf28e7634c449d42e1be9f2e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e6cff0fb56252dd0fdeb2aca5ba6343aa03d025510b1f42d3aff0515ba2ba5ea86347ee1201441bb2b6f2ef99d5de6f60231008c49077a0379a4b691849c9a3a58e9f03b7ef32e38214fc49b1ac55925231c0dcfee69dd3e1231a24f11a78b64dbc9a30302047c435bb500673065023100c79e2c36aa69ed4260b82458ba93c8a37090a122049ea888ca8b28d1afe46736dfec09120e6d7176d103dff75449ccb2023023cfc781f07af48df60f4c940148c48e76824eb9ba081e30d995457c40d77e949d14524c7f832a2c299761eb6c2c9ac60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230732e024b323a3c8035409e91cb92d42ad5504bbb712216733c62fc139f4847534df30394030b24fcfb64ce721727c3180231009d7608edad030493ea092a14b8e34b3fb73dc65e340c64ab297a43258d08db93b444d0a52b95f0eeca185b9379caa7ec0302047c435bb50067306502310091a4913bb650f4f4e7ae26b5a8c39deef0413e283c39be5163882b92bbd37e83986fd0722684ec44778289a9e9ddaf3b023067bec574b71066876b9feff2b1d87fc5f56ae73197caa0c954067c8c3793bf0a95304f015fd7ff32000db5f92db9115f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ee75ca39a8b3eee9812cc7460c3eb510e110964fcc2eb4ad73929b5d9927d0f67d081cd1515e8867180e98f837509f70023100b8b7c910a9d7864b60b5db0658fe6ecfcb9f9f02eb9b5f5715d70f0407a2775796468f39f3b593684288827f9a9e55010302047c435bb500673065023100df4396aece026ba442ef56dc134a35c7df6a7a9ac165014892ed3b3612d50aaf21efcd2456863dfae287ebe724b1460c02301b4331c0ed9c93b8b4c77916672d5bde344aaa9549fa5c8643ed754eadd42d69fc30a030294b77b54891bdb97e5ed2290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301f0c66be5d2b54bfeda4ee30d23a3356ee44025597081fc0b164e9558dbbba67d9a6c5bd3255af261af271178cd430ee0230520ee7f3a1d21379f1102040635605538a4f97c14b5c7cc458fc5574174581a89cb7fa65b225ac9ca34c45452cefdbfe0302047c435bb500673065023100c6ecfe3c80e16c840296a1bab3203ec6fb313397f9f6270b40ed1ffd1c74aa73b48ec1dc1f23b98643736309e9acf7270230536ee7b8cc3f0ecca7e6e203701be69435c53685a37abb4852908bf216ced2453dad4dd221cad3163f1308e708554bc30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fa17f3ad1e0f80cfee206ddc0641d4b2fb6929a58bf2e2113cde71dd6eff9e7dac2fa17718ba965a93766ea3414038280230769b4756874ad6f85ca1f81f84776aaad12770be27f659fa9f2af724a9eb5b4b1c735dfd9970ba56e61a2c4e2997a3210302047c435bb500673065023100c928d494c5c8187779ff9a0ccd02fe707d192d0b2823d58effc73595b62db36e0b7d810b02f4df68fbe7f436415a031602302d7ad2c4a084ba346a234046dc88a5e574dd1fead811d5b951f18ec8cc6794b13adfb8bfb0822f2a134f7c8ac3a01fab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b18d853f9f40b646d27e856b51ce28f9d8d697843a1f14c1c03d7413e99b7ff52574726b294cdd6a9fd11a9d34b4c2c1023061b4bac8b96c5c02dfd7d2dc38bdd80e0f202e93f9aa10a500e52f7eb325087937c30eef498be80cf0a2d2bab0a3ad010302047c435bb500673065023100e1ab0b2ff25caab82e30615c1810b068bffcf42f7d727ba881dc00d5dd440cd8d99d31d3f82fb63b6405aada0836c78a023019c7413affb264893a97758e0fe61dc7be30a84f4fdce2c0d578abab35def49b3144ab7e9953f8e47cea5e81ebe91e430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b4aba06b02546b5aa4b9ac4fb49d44e09b54dd3e742d7af01f270f33367cd983b170a8692ec98644fa0f4399ea8cb8d7023100d674bf9b8569da7021241390ad2f24da0d85ebb789301a3c972088ad2aae4a437d00f5d2b015978669741efc162d9d860302047c435bb50067306502306cfc280330b046a090a7de72fcdbfb88b49bd0802743e14997f2dfd277c77c9800e86e09020094d6eb34a0ac44c292a4023100cbc1c47a9fc0522d1c966099465abb97b3c5b60fdd8d0771f8dcf873af3929d4ea40d9c06af4b82370de177bdf8483370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023055b0fcfb60c8f7b8a4dc87fea095de72a5978741b99826df92a231e6ffcdf868db6c27cb429969d3df5742c064c6245f023100eb8188727486add3b913d1d76f1b57a06e2f039f7c8f5be9ce83f7bc531eccbe02debca40fbaf3c48a26f4705df490f40302047c435bb50067306502304238ede43e5160dd574a57f512426cfb2a70550022a4f3de465d96e4dd141ec6829d35bf0dff0be45dcc264074a4c854023100bc8aa1ba92f31d291d77f352c7949557d830a44c12be871db077e0868531500508e9fb44a15327209ef44fd7012b17e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ee2b08af75e48e6600f89ed477554266ef5f23c47a2f760d092936de1772592d0981dd4962bc77c5807b73072b96f4d0023100e7b766477088680e12d001e1284a0c5069e80f05be572175532889a5af14744d3c152dc601f68e7ee2f9b0da94491bf10302047c435bb500673065023100d1b5bb990ec6de838425eb9936f648493936feb36552f71c0234a4717e84bf2fa0e76ceed1116c342eea8e7d6dfd627c02305528cd19205b0bb43adc8bb22042f31725c87de31b1b661188869028776c89cb10e58b8d4593affefb56c60cd0f407f90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008bb1966d89ab0dbd783a13bffdbdec726d977fa7912d786ceb2560092401a48611542d467e81c12fd93a21f114937c0b023003c60952df97ab3b95dad2a4bb5891516217e317d0491666b9fa076876a658d4739fb3f818cac86c647a169b697857860302047c435bb5006830660231009a409691942342adf3729e99a6407cde8b08a12ca11def9749eb513db13e256b82f1f81bd3a192a6ee4ae43d7a275c95023100e47e23a5db156f8206855f6e9a2b785883226a74c5e40d4d69e34b23ff4ae49e8b67776f46014a60d9af1d79f72bb7730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310098bda8fd5dbdd566b9aad714361341c13b3daa71d418573c848cd38fe5b52a6e175a0439cd1e18e6f2dcbc31abea0300023100e3df33db38cd062340600e11e100aa823dfd9a2f29a9f357541f0c0c448b26b256d23bbbe2b9ec1c99f8ac64f056d23f0302047c435bb5006830660231009d6dbd8c1284d6a39ee6a2554218d4f3a7949ca451726ff0fa0477da7d8d67e9ae5b9fc10d4dba3d2ae0a4dbf9b41b2f023100a0a31efbea7c4aaa4daacac5eb26b7634ad3c08e1deeb9d1f41381a5fd89ccceefafd1a7851561617f36e53368fc58700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306940cd422e3d5d5e1ce82ef71bb09ac13d2ba6bbb362757f3ab4d6a45b574cf57c3f04916c394de0ca390d3ab608ab45023052bab90d6e2c06a6585e23c9941ff9f8afc22a73410ce1cb668f4dda3311457e1eeff53ddc441d19f8b08e52e28854110302047c435bb500683066023100e400234e47a5231c876ca121a529e259e7fa7951c86239c2cf823b371fee2f9b00029a74038633516a9479cb21cef35f023100fc9869921fcb9fb3f24cb1b97f913fe8982a56173fbf0d1368bdae4d44f1b334c10981685ccf2c1ae72cc7f96eb490240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302b8dfd5f2ca2f9b55e2cc8936b6484193c010eb68c973fcf99c2d4f395af60e55dfc14929589959fd619223d1803b3e802304ac150b7240d40a471327044fdf740fb67060a9f8c4a10c8c5ed5694d7c86d1dbbac39792d448d450c83f2f813f0bb5c0302047c435bb500663064023059b5cbddb10e6b31a1292c198240bdce1f0fb629445b4d3f70f55b9356ae1b7c2c1313da2ef58f3e60126426513c0a67023075c9181a950f242e8620bd1298458a50a3347829b72dbb2abc2ad0c1ac107d52c5f64eba919709c4a260f3f8faaa30930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fdeb36dd386caad4fe0ad76ce45025ceedd61db281bae429adf70c6237f654fe052f58b929c2a5ee927ddec7fe5dd0260230336cb8f547b57ec8a2c60a990b50620384d845805a48bbe45689c153ecc0533058cfd625b25eff502718430e7a796f080302047c435bb5006630640230011a8b05c1fddadfc6d413261bc9a3a1a6ca5c21b8fc5e181a51fba269b3366db1125c9709e07a0e9c4035f90bb159910230620e4ddfe5d2ab72b2c36d54e7b2e08cadb4f395cee2ff55fa4c12fa1d021b25d36f3326af489b6ded94b5faa03cd5ee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023062bf47ea3b86c45c99847d254afbd9e029b03f031a7fdac0d602131cc1be4dcc4ca4dad72eb48c4a21718ee493efec1002303d2ef22824a433f5ea16c889db3b17e82693d658c85104e889cbc2480f4a469310c1484e49cb88ce3ab9aff70d6dced90302047c435bb5006730650231008a11884bac1a545f4d8e448376c0754623e4a03f84863889ff35348d7927e88104d69a21c67ad91fc1c5b478108368aa0230255e3777f6f11d7e27bdf9e2cb817f2e1d336ebc2095d87b9f71ed7b981ca30841b2bc7c106fbf581f6b02bc0ae1a1010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fec1736c92319b06dd1a4683292bcd72f037dc7abd23609060bf521ac3c8cfff9fbde89950c0855ae27642d33f040d3302301907a0cbcefafc134751f7cbe106b04ff0337b02bb9ecb2e616259d8bf50fe82eddc0372b160640637ffa85085dd68f50302047c435bb5006730650230025d44cd5cde0375076c748f542f75f51490fa535ff7dbd9a844f554d7502c2048c3020967f640e5fa1977bd143ad1fd02310093a72a1e79381eefcf0da81249207770b484c03def63f925743c66d0e6bd4cb68d75bbef04d23501a0a34b07ff41172d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100aaacfe6c5b7a4577ba520779d36d3161ecd9fab3e3851dfd57430a7d95a12e5b12f0a8473d9ddb0dfc35978368d8b404023100c59eb0eaf25d9cc1b3200395a91f1a22b427b2d7b423a6ed09b6aa4007b64a4e3d98aa81ea44a224bd8849efb08204a00302047c435bb500673065023100fc4e6db9aa4f016c193e34af032c0014ac65ef1b64d71336746bcc1cef09d2221f3084c410288f57eb7506f794be86760230305ca0d92cc88ab3892e3eca6a18d4ed448025ea342d24087ddf537f5f0d659b33e3100c754742d2076e9f7dd3ffcb0b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306fcc974a821259b9c64670e003159df67f524ccd1110756e98103db654c9d47c705aecd6b41dc4b12b028e558859f903023100f7e5c8c3e4efb36eb765e8dbc8bcde67384cf201063b4477a9ce8f80acf3be3f60e2a276cfa092313f47ba925e58d7250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b1b6e2accf54e6ace918bd71f0e0bc59d52f16d0488a82d954149607b01ef2d709b0da43b8856cfe7fc71bb92e4a6bd7023048390c44ed2f575663f140c2101e773962a9cb93e0770b1234e5db887a41d346de76f93f00b0409e0e472bdc36e64a6f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301fa251f2f5015a754da5a8926c901ca4ff6d04ba14ed47de45ba8d8792d4806ce24859df8eb77c2ef6ec341bbf2797b30230710cf0ebc426882883c30c22a40c3ccbe945239e3ada97804f0a43db7ad4a89870c2ed229e02f5062cacdddfb89813aa0302047c435bb5006830660231009582e9b30e13222893eb16ea9394f4856b418c94a44ab6cf42290b9b053de2ed20184bbd1ca25f5ecf407f2a864c9b43023100fd60b6789378c5afa4545f63c4a29d3e9bcdb82bd508546e24064567f8ea572229b65cbc966860b380009aa2971099960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100834ae582db1ad2861dfd19f47e59aae906a72880e7a07a49f5aef4f511a345413fb83d4d2fb9cfa0172bdf1576a2a6ea02307b4150ef01a6f897ba515fedb1bc234f6bf747865e1265e6c0acc5b74a2bba0bd6ee5e3ad9d43049b1318b02651e89fa0302047c435bb50067306502302d5be4e86c14eb11fd8d81112bddfd91c96e6f9e853fe70d9fa13dc21e125bbf6ebd90ac2cc7b8e6e4828edf13f80f1c023100d6762a72d00c8fbd3af0134ed6efaad15d85e743eb9a736c156bedf1502f0449e0d496780e2a4b6d6f819b640cfc2f920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305078d3f7cacd30a38869a5d69d00a5c7eed072dcb305ca7ef2d8df3db4d4b058d4b03d3117c76ebbf38f89bfbd241c52023100b08b4559fbd3062b991a480557beda751fbb286d26f448f48abc5bd1a4628f8164f81319e09ee5927a5e83a494d6be9a0302047c435bb50066306402301e653d102429e1106d80bfe1f5cac7b9bf8c7a4b96235da365aa9a734bdf991bae7fd3441e8a07ceed403e532508e74b02304c31d6a9249bddebf719e69b146598a0f971c8acdba28776a9b2db2172fe1475a1ae0ab34dcec145f720a7d6e67516af0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008c977c056544e23c6446f3ae0d4d64c633b6267013ac8725a2700197877dcb8a4dde62649e3b7699f984e20958dd5607023100e2d9931ee91334b30214fc0fd2ab52736ff570df6b15c70a7cbebc5ef5e306bcfb7aa2d4c21d4c0ba78d95afc2ae5b940302047c435bb500673065023100e46b647e63a60b7fb1c96c8eca121ad5856ad6a5307592fbfd5d3fa6ea04ac41857e05d5dde0275c02876833a5ff74f902307d1be7b68d356f36f38c7ad510cd4c38d916235cd023436aad25e862fe295ad447fe5626be3b91ce6adce161db9ed53b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b059da7768d6840e431d2b4cf5e5d0bcfcd0b129d51796de018a60ef254b4ba4c13ae2c54e048f5a9149193d70405e3b023100b235a557a5b32344f0d26c728796009bfd16ce5023d3bbf9dbf481c9dcd99609723ab4f1e40defcaebb408cc7ac032dc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300f4b5bc505603a24213e56a223ee09cef24c14043a527a2c1e049e2863e5cbc8c9e104528464058266faa4bdac0f432e023100f52663322c3b2cb4cc9c9c684a0af08f21400aa087565853fc1c4cb6c3b09d32e87e75fc55510c742c267388dde041eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310097de56f60166b53fd5fc925c49b348eead132945e824d7c83b543809cbc271e8901ff2f28834b2b6cc24a9089cb90c7a023100f9881b4708948daa958ee3cb668a82d7af0a520ed274f6de0324f07815ac6a8b4267bd2b44ddce3d3d25acd10c81ccb00302047c435bb5006730650230287ab64a0f03cf3980da84dc2d6831973ac81f4f0885af660ef749f440046477d21cd9478d5f8ab447e99dd8c867597f023100be425730db0512e0c1dd2570aa7d710c64a94fe9ef25ce2463d518a8113f817d4711522ee09f77bd54c98caed1e662130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302a72380f74faba4a1ee60e5d519c287c51b23d238f0fd1c4c3d5767bafef168a1d9915942f46c7f868cf8591c89091670230225e0e4a3547f5e488659a2b08d5ce106a5edf761989a6d3be477105e8efb4d136b7f45ae5c97176bf248282bc7caae00302047c435bb50067306502301403bad309eb77c6e598cfa0ab79a7a25699c87836ac97444f4e28096cef3ad3fd9a61b8dde452223754fae5374e01e7023100c184a3495cfe9855a7d3b6e1ae584f31bf8d9bfcfe19250d0b32d05e58791f58588e063410b7fc352542cd835af276ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300dfa96c677ec6261a890888f50f7c5b40f973851a1297687d9a9911dc303d3d96586c9cd70fa6961fb654a0de200680b0231009e0da7bcfacc280248b2075b0166aab732395778dce63685d056f11dcf79f1fa891cf02553a0ba749ae48abd3d76bc420302047c435bb500673065023100a4c4b813670ca5dff6b2e1ac127887747c75e460dcbef7f9c3c30fa236236ee8ff56921d21bcbbf02fbf1eea667ff63902304faebec888918e033190e9b5cf43d432d41cb45dacb063fd20edb1655d92759f4df2546f65bb562867d7f0051554852e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100acbf181852bbe1421185051ce66c9000ebefe70b05ab9aacb1adf13ed6dcec025d6f2b862adc0e890196c13876d00382023100f5ebc8b8bfcdff0b2d367dec1f9bbb150ca08a41478bb4ebdac184a2a76828bbc95172c99499d7af1bee6f682a01a4dc0302047c435bb500673065023048047ac8c4cf4d0a74d79a44bd47631f6825e3a5e6503d8a29072a78353c602cd974665da70aabed176216e98a77026d023100f4c72377837ddada3f04ec7b9caa7861a796b5774ada275da63423cabcb9a87319d723e7c2e5b1f6beeb8aa064df70f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f85ab31428526fed51ef97f236ed8b9d07efceac27a158f0a788e4487d33548b468d7ff44390dd949c82d3885990635b0231009bbbf3b0e217ba7f619ca0a030f6ff1d9a307d0e6de32b37d7283ec5f7047b722087becc604c9c3bf142fb85e55c68230302047c435bb500683066023100cb2fd8236147d866d46aa47090a48c96cc249364f0a8fcf8a4215f53e75bb31e010859e01802feaf76b67268f854d4f302310088078dce97228ade24a19c0a5e846033ba4f5301ce7984782a40be38eb090d73e3ae2c077a1e51a546ff7dd96766d4820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bb0751e97d6b6bf2d4f3e918a8ad2789528ca4b5f7862c0a6541badea226fbe2441018bf5843e477b8360b4c2046d1be02305a64e6caa7a62c66dc1c46ec9c51b34f0351be72c06847ea6a7a9d839dee548e4e8c01a84a4bf6b3284fa93a6ca472cf0302047c435bb500673065023100c61afbc1680ecd3ab5f01999996af85519a3b39cde60cf90c6c9b3dbcb0f675a54c39fb11ce52367b502b451bf6bc247023048a27e2cc2869aff2df7c1c3deb76870fe714049e47f00ec99be10f46d8ffe4a62ed5944fdd7eaa21af42c6e4a80b3fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303e2e114e50ae077120ef815a4a7ff3031fe7acabd078d166f729c64169bd13ae2af30a0a2505454a9857d272b8d39bf2023048672c34db3a851f6962245c2171d6b731928fbe36e868c490c9b0fb1d066f137a7a9b36fc7ecfe53cdf9984d07251240302047c435bb500673065023100e94766a761b930f6f919c7df39b3bfe2e9eff89bfb9e99f05a827ff0dbc03ef9702ad55c099b231840ab6c6b41218f600230621015bd67a3c10162248b933f17c0d51cc891167dd8b8d097cc059f26e90dbb594716712709b3426fa5e3e11cc2f4720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300d7ac9877d72bc113584c7940fb7afe3d98d8979496e39f243c6a66ffba192c72123f6a53272c920d4f0c8a83b63c09f023100d692334971b6f41e1f4fc23f9886eed5de16c9e0e9d9ef6f7b39cb8fdde37ef75dd3d4272ada722671a79cec81b695860302047c435bb500663064023073940fa8350a35b7e279b47e8b5cf453b00bbeea3481616ad2c9e127c01a85de83b32384cd844e8e45a54ea1ab65ac19023058e47a9bdca56676c23ed247ddcb6cd36ea1de5dba3893fd641808ad98d9b7a9212a36055cf31a826431791ba525f2710302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d806ffadec239603a3e49872f6af66824b26899647090772d42d2d40b584677c61e81d9b8809c7c0fb9e178f566887d0230257ebf6604450d97baea1c0ba6eb964c6ab4a30b8d1539ad89cb8a51dbf246512ea85693693334e49ce7d696bc7d6c0f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023077f4ed3b0d307c55e1785ffda590996489edbeaac00aedcad3c506dde80915b7447b40689a6add3993e4c79027c0730f023100be22262c49d44bf03d73d525407e812e66a867508add3e46ea38b96067e7d8fb4a69a4586ebdaf4cf0f701e87db617550302047c435bb50067306502300de8bd17e16f5458f371261d471d5c0d252ec64a3519d7b8bcc9b5e488baa3ded2e4d7812f5f6542edd56bcf3e7ad6060231009bf7e3093b7673c2e21c85620680d6c031d5371a4cc15ec3db20b52ec49173f0e05bd95a7d34238d576f0809ce757b740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023013dc1dea5a3dc70d57e9a6084766e6306fdef105ab02fe7196cd8d5106d4451e4b7944324566d55d877b7f1e1726efbb02306626510f983ae7efda6392a1091ae1a1b4102c936c4c31a7bfb5bf84a662b3c2891d240a46b5e51dd8698080531d44ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307e1cab2fd041695e508e560bc92f54bcdf5127c0bb5ebcba8103e7a888d84dae5ee95e3c73556488ada986add1aac45d02305e0d41028f154ebcf2b3fff67f3527f78d252245c14248d6c68eda8e175392b204ac94d2f1698c4246c23460d109d4c50302047c435bb500683066023100f6541ceba62485aa7762bf258860f06cb9bcc489bef6ae9583a9de718c0e4e74d50f215a0348a67f248705a8c34fe91e023100d95927f59a3c0a727c9d98098700ea458fd90f2fb42105942fe98e01f73c64665452c0bc24651fab763cf20a1e065adb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023060deaa550ec6c46c68d75e3a4f22a59280a926bf8ce8b991f767c66677b968804a61f341a5b864d105fa73944e073e97023100f4f6b11bd9079deda174da5300d8239d810cd1843b91392e57e2afb163de22bb090e121791d74b54ac28f2738fbc5cc40302047c435bb500673065023056cc48fb404d8c0a50e07ea2ecc8dfb84b39a3ed6382074d1ed99cd9ef79fc39421f373249048c6b301e53e62d0d88650231008cef8fcd37c7268a9af4187b49ade12ba3fa7488315085a193384104904b1ba5f29968ab8753ded04439c25a460ee2710302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ba6d7c2a327892fcc89d0314eaa15bcefc78c41ca7eb52e7d29d01b7c7f315b82560c1498b828a2390fb233776a55e2602304cf63e97e27df019a406cdfd5434a844e580671f3b17d841438054bc0052b62ee03073c77ea3953a2e7d775206e1e9680302047c435bb5006830660231009da114a08ba8095c7643e82cf288daf540643e7514705bc08e5000a9b30ad79c9cb6dc1f62ddce4884925a4f49de4f92023100e3f89ec8f085adb65f460d135883f96ab36c8be0d80b41350f6ccaa7ee598701141ba903bcb55338af05050900afdf310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b84decdfcace8475f4c674bd9fb72a51c08855873b693b6f2c6b764433a7cb1a83351996a13ca7ec47bacc41e3320f6e023050055d6f705e8fb66b526f2c22bc431541fe4facad758f074c1b09cd3922be1d21c2abcbdab4f1d2bc251b26f5269a2c0302047c435bb5006830660231008237f2454fcfe0bf4d3ad57030d0456c6000f796fd4f391e610fae7f4ed51615e764f609b2f76e4ff69a4300ea3c932e023100ae0c10d40e8267500c895f14b5922a94775c02dc0523e3aa77974a6f2e854222519957a223e3f5ba1a44e932b7f45a710302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230219a6cd11c80a27c542f2f12c4eb1f51e156f63c7128569df4fe24f49f33e8807c25b918c43e4681e2100e1acb24b0bd023100dd57860abda5cee21acc45a1b24b5273b7bbab90c28a494c409879975275bc747c83affe9dae1936fe359833d75266200302047c435bb50067306502302acb4192ce47613dfcc657235f16d647051394ab9b91c73e48466144a53711eea5fe3322b0b5f63dd41a9573b609c478023100a4ea6c2dd0d71a3457124b000ddf2aebf546dd44b26275ffd7a61776ceb8ddfd1d9c8a4ec64e1bf26c94aa368dd330ef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c3d9519e482e990a3c67491b65a7c067d7572888b70adad9b670388fda42d3742ba18d8863b3d1da4ac67784f4be3c69023003055bfcc8139c10331683f8f21fae696c5912a9bcf4a890cd91f1cfa4a4655e27d94dd378b9c12c5a0ab521360ddc6a0302047c435bb50068306602310099026e7a5778d7433e7ebfc8c928b05f2eae06f0a4af7e61b75060b3e025e5851f7fe80d475f27d6a9fe6d9ea608ef1c023100b079ee832923e8dc703a85b92185c7ea9e4414123958a1055c3b4a4f91281a5de7f6287573c8ad6ec31d7f3d5af488720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023065253e318ed2d08bd237608118ad259ae3e5a6eeebfb1b12b7d7ee6a453b2ed5febf31c1c1d7a418c8a950dfba20fa7702306b8cf58b3af87d3d3eb69f41ec612e2c75a082d6063813cf65c96709c3876d42ccafcf6c725ddf85d13c9c69a0de08fc0302047c435bb50067306502302596e22c7aff9f5a8cf73eb2784fca27f2842d83124d03307f71933660112768b90b8e0cceb48f2da1ae4e0a8db1265f023100b569afb53e13b7fcc6f41295ddd523d694bdd64788fefe031b121ae70ffa29fdb32f05392aab96a4afc63e5f9e3e09cf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bc3bddba27fe258d4b5568edd22dbb441f6757e4d73604a94723981d4c04cd8913d4d3d2b6d3928c3aa996cb503b0664023100c00468dbcedae79a3ffee287162faae6b55d7159cb5850dc026b8d46d95ba0cd8b8a4f53dd36001d930a02210fa725b00302047c435bb50066306402303eb437a7f63127361696f1be0ae7e2acd0733686f610f2b249f2df328e8d7fa50dc5784feb19b38e3e6c31cb602f332302305a9705a0a5d614e124b95cc0c7aa434ef7a9c2cf4854e1fa54db27ad803450a1ac79b9e7463fdf418720b1c9ff3a531b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304c264a87124a45ee66fd369f8f450afcc02523892d268a6d7ffecde99a9e66c21f7d0466343de0104b54453c7f1e90d5023100f3f955dfd941ff930010fb41670eab74f7873e2a5dd00fb151a5a1d17ac2ef5d884ebe3382dda5c5c906aadf5aebd57b0302047c435bb500673065023055255ad9042599a543922d75d101f3b049e4ed79511a161f4f915fb6c17700d8064d1de8bbebe7d28a1bd95ff33e65f0023100e2eb39ae802bf612e6431955ba2c4c1e38609391883e0bd33afd9ca4db98ff2b71aa991621b34f394dcf195ec65be92e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500653063023070e19c0938ca073ab24980337cbc0083a351fd98e92e3a46466ccc5a7cd5a20c1291dae60b9d2cab3adc42828202d7e0022f635c55a0020fa7185028c523c89fe7c473f404c9e79aaa154311ec1a68f841a586ff9558215b14ea835f53a6b830640302047c435bb5006830660231009a16c7208a36c1274c8cca4e6559b5c9ca220c5982ac1f85eeff3474813e4bc1c99332273a3d7438aa3a9a274af1f580023100aa88883398a4443c5b0a00fae58f3d9e2fc8a6b5305f2f2bcd22587486f450d235285c39b75712d7b7adf2f1ea5579800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230008444860ca82cf056248488b0fdc8aaf1cc597d445864ba1d842d9cf822cdb1c4feea017b35bd1b891ccaac3760f1650230372d4d0d42c597c439532636c60e15bf567fc9326c1186e8174d041bd060ecd4d3515a6a34710beaaf693dcb030ab9a70302047c435bb500663064023011247ce4d4e004c5efe8b9c9970f30206a535e92c07f1efbf09349005c457c05ed1e8609a351f8542ea66c750e0a081f023033f3535df0a450ef4acd4f35b38ce4eca148e7e25603106e803fb35037f30a478407635ad48af38a7fbddb45a05c16bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c50f4230e60c6503ffc73af2873b65eaf041f77ba5d30db411a290d223704c692e5855ef8895048df13532e27a58c20102305db075545a755cc5e225e4e91c72534d34ef41ab796324c4fd125f136c4360166ec2cd07b0df8591ed0904df7524b12d0302047c435bb500683066023100ee8b2b4ce3b5dc8a16487e9f126908fe16e998c9fbdd96e0a676e88fd8e8a2f8d7d547f884e66a1ade0360908b50403f0231008e13f7bde5bd37d17bcd8418a49f0d165d4abd6c0143d427ce79358aa7e03cba63055df1ea09c6a6c5dc362447efa9f30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100972e44ac227cb525c51100a270dd7ec2811cfdd6bdd00ca30da767fcd5f32ea8f7fc8bbef3fe630aa1696de7e726eae5023100f3ee7aaf7961935dc674f1b30d96d33f3b11cbede7e0b38052131bae342144f514b1d1e1130d58df9b3f12759b9e17980302047c435bb500673065023100e777a789eb8e2cdf4ad99a2a306926b62a204c174b11a77ab94dfb84dcad127fe311a2ecc8ab033e1c29fde8571ab33f023000a2d659ba8b17f421e8d1289f6bb2595128cde44aa5a276357045194fdb335bfac4d309e7cdbf30ea397af7cbf969ad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ea424363de116521e90edf71eb9e0a398eefd97c76c159b00785aee30989d060f5c2b622cc75cb6ac09bc004ad01528d023038cf91d3f1603a4f25cadc0e525b8c08f3f2a2a03ca75bf6f1b0eee6a9937343c0740cbd7bab796e755809436e26cbd00302047c435bb50068306602310099fd85f2d230b7fcaf590a0003ecb88f66248a7625d998dfe8c20700f7c5905867748b831ee8ec476ea8909255fcf6e0023100bda65693d67a915dad476ac81dc176c1bfae58b676fdf1288ec005151541ac27bbc472b35c2c2a11f626d1afdb4b09f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023033a33dee96e4e4fe83e777071948087e457604c3796ed0b2d70e8393a4ad1fa27a70ed7e5f078a1a53cafc4fc70f0105023063ca097e9672a3bb50ec336ef4a42dfdbd7591d94716d0940eec28cfa686e46ce33ff1b528083aa9c08af898c0ba3a020302047c435bb50066306402300727ad18265ddfc5ebfb561cfe3537032532b81e9e88b240cc67b50554e80e3210e648d4f31ddcd70b03cfa26daac69b02300e4b0bb9a19075111511656ee81fb6182f2e86683726807daa6453a516172b83965ca425333c1851fcd4d0e9726afdff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b3f9dba2c95b7155fdc00abe8d367ff4a2183a6ce03fb1f96446948b5397a11d2ad008f88a0ff6d3b5c48442dd884004023100ba29b39015c8f707db75e6fe9798f169b480d5639dcd88a7c3c9913611c94d37e9ef7f9118b35146e10e9d1eacc788ba0302047c435bb500683066023100d8e05d4d9e6838e2def78bb47c13007c55e5ef6cf8aa3979fdac9acf7b3d7db96adab71402a8bb70631cb04e83db56f0023100cd2df61cbc7c50d59ba584991939cc04a99feaff1278702d9dac37f9fb95cf4650ea1d37902e389697aaff80a8a564600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023006ee29adbe9b1296beb883ea084a8e27cc4fd4a55e7492b1ecccdc6ab679910c61345c5286f968280ee90498774340f902302624ca9c1cf986e9a67b00541d97f0c5862061e69e6546272558ca16a4c38ee88dad7dc91d4b97e3bdf1fbefc963de440302047c435bb5006630640230384a6cf1df4b9590e0b3df5d55ebb4c919a7a46c7bfa72a2df78255ec7d0e70888040dce329b658b00cfe8890362e409023000c6535c95c350455f82aa0757b9d09a9025712ed4f57557b69a6d8f0070162725938684fea9ba7233360d33142937000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303be361c71e747d3da96c96c7bd8d8a54c7932b1e8fbe4d37a81a4a82bcb656090b9c42931ed794ea613082ba5262839e0230352f8745b88f65efeb0de683c0263f55edb5bdbcce338ce2cb6e3ea95007e617254203c9dc4074ea10884c4e0ba525f30302047c435bb5006730650230155a0f7bb551dac6bb939790d79096620711b49b5d6b4fb9a1049de3dfb46109fa63dc148d16215d2f8a9b751c9dc448023100d06ada823ad11163d42bf42c13e756fc6fc7d11da626d7a47f3a14edfa7a25c1a835152662931917ab9ed650c269a76b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310082c080eacc09ded732b6045ee10ca7d747cee821858433b9c87caf9dd9fabeae281db18f9627277c059bf519624e892b023100ec696ec908f04a689689012a7e6a279a64e7f0dc6e191765bb044860a9f5375532689d673759ce359008bc539eb842600302047c435bb500673065023100b3e76a8ff9d0973cb5953acb10f5c075c1601cece5416424cd913e1a2406bf229a0be3178b7b18665d2b91a8a86500b4023052ad26e1d75c0d1140064c728cfc18f0a0de34909599ce2d8ab3c3b4035938486f400e6e040d0793fc36d20617187b9e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230430034317f1c1c2976e3bb0df080e2f2dadf52924c636aa80dd5451f8f5128448d0fd5380ec693a277ee8521f33ba8cc023100f85f855389a95132aadf9600f34ee737e48558e4255e9c163db52886b9df5fc62a4b547778c0a1f50401ea87edfcb3880302047c435bb500663064023049abf6738fb2aab897a894542d7e4d739ea783b7e21e35f3422f123862e39db0635c2207db9a6e18f6d129508058457802305d96ab1f930a002b50b80dd686d7e234500495c2dc4c6645c0667914da3d0d4d48ad30b30b9643e73b8167f8b12e32430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300dcff22e5d23d12f2263fab5a9926d0b4f83d85522653a94d8171b090a55a0e929f30f1e33169a1aab08058dc0325ad1023100d0324ad8f76236627cf4dd44215cdf3cec56adc7dd01319b67eb9c7687f80865775a075eb4aee0c041a0af16f961deec0302047c435bb5006830660231009253bcdc0c776305e1e661e1301b74d43a1d15b7b87dd042387b9ad3b59bba0843e01580ebee3d347831dd857080695b023100d8cd78314429b29b3aff8fa0c93757909e202a864b54c3cc98dc7558672dbbb359144f98ef27e4ba95217e350f2cca7d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100faf1608e2e1abdfde68498c39376e55bb00e35b09cbb23aeafbb83ff3617327fcad92022d7947ecdd0763dfdaa13d4f5023100e77fc23bb318ff2b4a4a5d216444fc895fbdf355e8abd7a20912cec99cb2c90d8733b9b1447a95d06b750127f76f7b120302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100df29475f24f66c91d2b31b7d46513dbf8039603f58396cba21bb825e80e9c5629f219bbc833498e23516d4c13d324e7a023062c6ae6c6ecac653afd91eb9c28f537ffa5d74a0423f40d8990a6a414b86c050f1d2a201d695c70d96df0c25c07d4f9e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c49ac1985b82397e995904a3d0bd70ffa088f47dd0bfbc40f99e1e2e8fe69e20240228671c011ad79b6f00a30244b6a3023015920db449f46ebf320dfff85d17de7d90dbadedabfd27e3edfd9aaee55bd7daf36cf17551633a133eca3d84a2b99c4a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dc923885407380f48562ce73b98a1399f451b9cb9e57ec26d8cc4fa4ae28babda7820b0097b511af80f0d2d1705df85302302b8b973c34cc4124d4c283b76df49373ab35fbb9ebc856313ec8ba7caf15c43e1be025beec19aec31ba4f15c7fa5ef930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d248dd7435a7269b1391b624ded9706daa78d4a8498b8481ce52fe5a0d7787de1e65e6b14206550ac7e8094925b7b70202306148b75f493e4354f13d1a02c37e6ca6da64ef61d03dc2c1e75ad6c9dd701749c90b9c1684ac409847e91d1a09824cb70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dff25f000ba9bcc4ea35a851cfafa3264df331ebb90db9123441a8ee44b2a90379eec9e6d34270ca77466b581292a107023100cd4c78778ecde0e43ac929f5b42ca389a1fa6e43912dd716339c3c39e4892831ca60b2213703d3d07776fb2f8ef7c3750302047c435bb500683066023100d894e2de566081383cdb1d9363bfdf8d9edf7d503712a89bdb2d447b1e832321a760e66dbb59fadd7609c02706eb0fb9023100c8d36a15acf61ddbfe7ff17c326791b86e68a4054120d43619aa3b69077cacad5390b0750d4337039f901369ff89c4ce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303331c679013f1610e23379b63a10cd118c5205fba212bc4aa7e0219032aee3b9e45b674e8cc14449bedab78409ecfa2d023100a30105a9d3abf20ad44aedac9e2663fe7d3391f8d789a0c73ee6300754fa4ebdb109911baa752a0f77e50e681bedd7750302047c435bb50066306402301b636627156521d5ad16508ade2f3ce17f597efb6f06643b26d541446663ad0c0b65065a0d754775603f396ddbfdea4902306ddc58b9aa8d10f6adf0c2aa76846b181cab114d1b55a3e8521a76bd705c812e4c8568dd26bc28a34cf231856739b9c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100afa6b9d1ae25671916cc828ab568966c7a1734d378223ce97c18456e5fcb0528ca7b5427ebf12fb9ca42e7aa8bac254302304aa21bc85206982c7f04eda8d45407df43d5e65411f1ad8dbf5331c530160fae7bde6b7b9f4c6abde72bd8d18672645f0302047c435bb500683066023100dcc083e74d45728076b07bdebcd04b18512fe63ee02a5bd30515ab887bc00d54da43ad115a0b95af9331c34b2f167d2f023100e7cfa510e5c5d141fc5fb908f3cad7ab4c05acd4436e11eebf1dc3be20117105f1698ecd2bbb99eff4e05e8f71b865fc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303ebd98d6b31d7699b5c9caca80f7c796092ae59cba811cba11afad667eb6ad3391a4288644b2099ea710fe683e6df51702301b43088315074f409ae431509a7effbb345919d41686242afdd2fb55d32a9c866b0f5d3e11f1a48d1356884d89ee2c630302047c435bb500673065023079a2df43a668404594ca1950844164e3e7a599b61bcc312ddc44f2b18fb663d71a5b851859ddd49cb27fc6985d835170023100dc78d18f8e55a1e90b7c92f957039c78f2e9586555aecac12a4db3ab9e5672b57920617572a8c0a2dca75a8c3bb66a000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ae79c06e6442ab6ef8f579ed51b4119b850d2098e17645cddecbe1ac6931787dc22ae9ca4bba43b694aed79d152d54b0023100cae64db16ee6227d95fb49a3a44d6742d04d98b1827c31fb46a3d35f8ab5d9d0227089ee1268e255aca3062356d869170302047c435bb500673065023100b987b65bb3cfc6ef73f79c9196bba8c7be18c3b24ce57f145ffe7a5f8b9e38969817d5154d0ed4e272438a078e6e949502301c81663f0a9a1557478bc74c9c89f838080a2200dff6002e0c66afaebad2c1fa2f3131d23e22d049d7f8132a013512e20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310084b690627522fcff4e02719ca6e556ce82cf4c7ecf0be3c3df323972856e6d664a0ab32f7eba29a90f7237f48abe35c0023100d5a2db86633b73937f1925bbe6ad4d16d129a7be0a65200ffd25ddac77b619a6d502aab47f02f56d2fc86ca44738e7ac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d1449981093d3c69bbcb1afd4f5aa1ee1871199b3ae6e7084c036a625eb26110bbb4a8e9074ad2fa61aecf5546a3e0ae02301cda35af7e9fd7bb9c6a7d0d6392542b765dcf353392501a21d34dd9c9434e72bb369807eb3251a857c1775402264b9f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306654756e5f3f3fa6a75a06fb91807adab578f04edc14053593f09280bcb50361f126a3c74de27bc864d09168b4f8d64e023100acf62419f6a659b557bd82d45a0eafc4f5899bf643030cc18b58651a2ce81c0516bf2cea026bd7f9b1741150ecc7cf410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cf97427435c1223e15b5410374bcdba5b266d2bc16b227f7ff4dfaae602998b690b02e4d841252bfd0b30f13cbf59f6602307ee3e8e45912e13cfe3971c145f939dd568a6d4559f7ef0cac9df6e79869cb5da944379e1644e8522a11f4957e2779670302047c435bb5006730650230309cfb8f3478baf2c29a1a67c49b5ad6cdf9bcc5eb28411bed40e4646f4418a295a544e0ca7ce164b4f6e941e5461d2a0231009a33d3234a702b54927d3ae006703e2824e4d5e18461765498d7be7df3f76c5f5db089c24dc7858f004440ca9713282d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cf5d76f2e4e52da44b077384828a7ef27d302e05795c2bb8410c99b17dd1fa3b9f8837baef3784a4f16382631f7bd4bc023078f1c6caeb3f089c8f5c7382a054265cd31759164b7c4f4396267804faf53b6cf75c5895e37da045a466b3fb4d125f6c0302047c435bb500673065023050673248e6c3177a6ab28a035056ec3306b7f51d089d3833adffdde4ed19d8a85fc4422b0894127954484d4f4492bb8a023100de1d6db183cb1ff59891af4a58e28233d821dded91b99296a26791dea3eb489b4ba1722c459ed9bf726b6fff2ca06eef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f99418f88a54dfd1ddafebfb62fd94cc96519e6a7c1094f5eacc6a0f7b8cded8eead5d989c7877b8a6a85be8d93368c602307ca3ed04ca17ee349d9c3d0a3d5b7ec4fe0c544a1e781a7cc11486c537eb1461f51648c023b5e49dee7c3642d77b93350302047c435bb50066306402302c13d0bc6c49dcfb76fec4c3691b410df30f0f32f34d37a9ad7642ebe51aab37bc22ffb871a9654083ab09b9d2efe007023035dc58d20f1f4351a72113b503cf17cd0114e4e9a250a0876439faf80f7a3064e79996298dd57311168f87db5c6c9ccc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305164cca085afedfb18ca1dfe8ba0998acf84df451d9c385421587e9114ffd685136dbbd05eca4ac7308e37a8bf19a9400230513ed261d16231d9e89569c0a8e4f122baa56d8a671f5bce74e5f3224de269f5090cf5134d19ddb8785f6c3737a566a60302047c435bb50067306502300ed2217c33392307e34e92c329e09a876b89400df38e83ce3b354a6da75541174f104dfd73058f87d08e777144ddb173023100c4b25f0254e030a1e82f2af3534fc462a89c134beebcd303e939fe28295af2c35837edf73d8bfb9524a4936e62a501c70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ce3a50af60e9002bec7b637d8148e0ac6af17b59ba65da6b55ca7d1a5228c2ebf663594c5a71956e794d46d26fa6d47b0231009bc394341636ed1df6a15b04ed3b3fea6e4e5ea2d7f29607e6f79725d4b737d672b8e182e4ca9d8650372636bad8d7ea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305150407fa2c0254ce88fd4f8a48eb7c9b3f016e40f2ca16f7384f2e09d10d7e25def0c0aba441d87d1f9394141920eeb0230706d2475e3329ac3f61319a13621b6acde775259c6266d850495abe01722a589e09662462a1800965fbeaa983df124d60302047c435bb500683066023100b52f69c5754e099d096431d77a39762370edfa5796bd206c2186ea9657bab4b4c8c3254e02b0dcc7d32a1d9f0357aa2b0231009fe4cfeb261739db1036557f9f407fc6af47d9a7f963a1aa61a86ece596dc8da7535310dc422ad849e45fece091176ee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303001990fa59014ce2c6c3018dde8ff7a318b262f5f546ef4adce711a1142a1df224df1a904f5912104c2cd2e5c45f962023100af0cbd09ca9fbcef969637a97cfaf270fd66296c5d60839b7b98cf4be6939e6b6c267d7ea1b09ef3906e661483028caa0302047c435bb5006830660231009b5e2dc844d25e273b5a8673848c0acd3caf51a0c27205ce40d36ef208ffb6afe467809db78f209a894686f6e5216210023100ca8f1d0f354a29fece9ffa3425ab1a216815c2263ca91cf6f308e395d2dde1f056dc3cd9d1b95255f9a94562acc0e0790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f14ecf6f1f501a0ef2b4744cbd0f69120cec95a5859685f9d85294b92cab54a6711ac4db9123e0d37d13a582416a21e00230476575302432bf3ee2fd5d086e446b0c154b0c507c69bfa66b8d3f91d3225af775f9e74f81f16ff43e58e7928db0b8350302047c435bb50067306502304c426bd391369311f3c7d79745bc0c669dc70604a56681f99b2991956081ca4678e4ff5b01c2dac6c3c174a2f0df240a023100aa5aee4d493ce937e0d3d5a8e9f1af34b5f0b5d10cf61d7ecc45ff42e1d4d319d997b098732106a461a92bb27d93678a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b8b1ea7258af42d54c3918f7035eaf92973d39597af75cf42adc7a2c517f5e9a61e050dc2f7bfb36bc65143fe5e2630102302fcb83b294145a8cd0bd9bc147227bef51898bf3b3247fa5780771b3dd5971dad071f903105302d00989dc159e85ffe70302047c435bb5006830660231009e69f491f570ffba44897e5a755b368860c5fbc22258f97c2a85da9d98c05679d1f0f87692c4ada2b81c723eceffcbd40231008622a27a3ba4509f508027bf82d8badfffc33ef25b990faa7f7dd8b1131b06854cace2aa79ea82f85c2a935dbb5886330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023065dd99013ac99d18970e479df3007cf709c5051b52dbeaa10c0deab001873d9cf5a46929600cac11aeda48566d23199402303bbdc615c76192a205552e2196d755a18c55c5ce72c035bf64735c9d34faf9de43953af7ea2c304ba8414b691a1f11500302047c435bb500673065023100d388d9824a3d607c223e04dea7a35c743de215384494f51c0bacead6a6a79fd73d93858bf2f481b28f309eda030a3f9502305aa7c4e4c2f540b2a63b75b31151a1d83088837b9e7968c1940ba951d134c1e87bf6aaf5b522ea41a0211772548a2c7c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c8cdd14a14a7fa07dae3e1f572d6d6cb8b9c336010faea9c8aad28ef1fa4a448fbb4a78a2a69d7e96de8fd4e5a9ba3b5023013cadba8e741eb58996c754a46f06d8f694bc2e236b8df5dc83de9b29e954b62c0bab7f007c06376ec4491025fe8f32b0302047c435bb500673065023100dd064cbc26af5df5ad4160011b004446405a66c12f4dc53a839ec6855aac43d30cd8bbb5663536ad249a75c6c48702a3023036a23c4f86c5706ba5e46c6e2c3deb52d81b1c54d957c320092e5fe331ee3aaaf5ad0ce1effb1ce5fae9d17a149446e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ffb743ac8494595bfad2b6e38376772c529bc34be84700f38e929379e61fc287461c89eb06031e7d58d60f4f4f76899c023100d74f247b84cab194dadc8f24177ebd4177c16b9dbaa5c3b50b7a600f906d32940cc98b469e9dae2179d92ca76d68d91a0302047c435bb50067306502300341dee633d7a87bcaa0296c2a0107efc03b7bd8086b271afecdf9c38a141e546eb145e38fcda5eb72c790da1224112d02310087d2fef433e5d90d64ced25cd83a35781504e587b95a57580275fdd327621c71b04d3c38902cc12fb6a4edce286270b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d603f566fe771a1310257a60b96fe1ee0eea3ac55b35f143f24ee8fac0b685e851a14659db65dee6fa7a76b734d5b88202306d6af632cb9815408f5919a86e453609681b2ae54e258561f27ceda54a15c06828792ac5f3288cc42d93b59a5e9568520302047c435bb500663064023064f5fa04701a379509599ca420e4d6208203124bebeffa3f02e95fb33786a16b2dabeca73706584755b6041d90e9b3e6023050dc6e65238127d76308259ae41b4bf0dcdbd5dfa29a78e4b4411dfca709eb6155d89e351afe5926d8806542e6d99bae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009c95ead76482221dcdb51aee39978683f8e4f7ac0d77853cb38ba82a03c2afadb1dbc5d82345bdfd7cc5a3f7dcc641e1023100fe33945b90e4fb96eab7693b8f848fa18d2f536b1172c4a134efcb8d19f805ef7d800821ab01e2e3e9b68e165374ce080302047c435bb500663064023012970964762ca8c3013555f00d44f4e9fac1dbe9cf26a5db84d828ef0aaa83272d528e5b704722fb4ab195c4058a1c5502301ab6b25b1ed350ec6a32508a3b10087acac766f58bd0fe0e6daa74508ff185d1377ef30a91fc4c7a7db27469bfb94bbb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b00cca5d1f9593b0462b7ba3a0ca41b8957af516de36f9d1cc825d6fce4095951fc4b89e25d7d345ef0d31fec06c380a023100b2ac6e6897f52f643129f149576c0b5ed1cfc3d237ed3a8085909f144843e1104f86eca23012432df019b370775f91bf0302047c435bb500673065023100b175f94c18362e97420b6cefb9c6bd1923f9f89d55a6e079ea2022c1c299836a9ccce734433d0643862ac1ea92d77bf0023001f264837fb2eabaf8ba00c564714db5c1669601aa3d8db876d5b64431b55d9b25005e4b939e5d52f93e935f6f81c4a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307d1ee7cc264491b81e4317ddc14e8c49bfe2ba31da46747697868ca44f35061fb9604ec0b0ad51b3dc01c10a8360b3da02305f0304a0987d864483c4f62a63d84afd148c732f9401cfc126cfb24d6cb820fd48acd2d3679c67d557554b4705bc22d90302047c435bb500683066023100f0e214d74e0cb20ad4d31034139cfaadd97253679d65e0ea3e0453ed866025d76eca8a492cc16a2f01cb37c0d15219ce0231008f1a6d11f52200b350a463b7f600f8f28ba301c0d06ddf0184e3098f207d77db6bc1d4af88e79c698647bfa1547b84450302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b99497969ff4c8917574f8817b95f5b045d1674caba7aed66e4e1c11c9b03082f0c0fa8471895af0f1e1869f85b732820230559925659ed03ec64161090c7b58ef24200c70cf651f879af572a48f2a294413444d69fcb4eea15fb9b72043976324840302047c435bb5006730650230614b3ed5d45d4fbb2d3d55913dbf14ae540ab009eea5f8af8a07f2d05a42ee7d3a75cb9b6cf95bd4deee20bbde862fe8023100a5085a473480f0f798c3bea3c710314489c8ea5ef320fd3572d4899e1582faea11b723d1749eab840e994f74fb99aebb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100aa05d719d7c5affac954f1796fcbbf6545ab07bba13af606f187f639915ef0a6e9a784394d8de53a1c32828b94634fc90231009b1bd1fda524c23e913042c39f19ea78c515aba50550dab74960d4e247b71e06e23a3d7e958ceeaba0107e0cf833027f0302047c435bb500673065023073baa77ed70b3148a5b90ae759e20664479db117a77f2d62125bb0749690d1987bcfdc6f604f6e152fa7c16efe25d9be023100971b1bab6594ea14e33c5c0bdca42b77532c79d894f612e9a5c6075977015eaf7e7ea6ce18b84a76e61cea75b58f7a470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d96b1f3558d9a7dad7c5d5b4692b4489a5c36c8b4c43f9822acda785f778b2819d95bb86919b0d409bc7b0f61559242402306b5cfa4d3f41c04675e50c2cc1dd5a5d745a783d62034dc30378cb3be823ed97add50c56e21c7f9df4f196c1c9633ee90302047c435bb500673065023033661b1a04bfabbfdd5b84d2694d9a0721f9c7c0e58b8f2b807d1f4e0a711376d117b8ae6e2bb0f22c833b1c3f7cc3e6023100b43b01d6c70e20da1a8d7561f5a04c999deeee74b2495554d325b51bd4d75a99a684d1e9a1682ce1326802bcd3f2acc80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310094cb65a9f0420d7fe26827061be6653f44c321c7d6f68d0d82029af0bfdf0c90513b9215d4d8d20bdeed78bd47496099023100f20411fbfec09a6d7e47997b5420eeeb753ce99a1c4ef6a4e473626838b0a10364d5e4f90016093d7a23a9374024c5fc0302047c435bb5006630640230062ce209c5ef7a68045b76efb36882cfed32d713aed45de5636a57985de677b25670f4ca75ef519ec2bb3cbede4807da02306530ea7ed9b178b0d92e6625bd076225ecc24f6a95cbc50eb95b36bd1243795f9ed4a8e3677d15e63b1cae66887c7e7f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008dfa09229329607b614ba83b602be69f77aea0841c39d45ff1dd36a0efd0568a33fd1fe0ce63ab8c5f93f4fc7608b5c90230520336b2293210cbdc19ea81a4e15ba2376d0305a7dfb91badfa37c43c7b382be7908b4ead170c5bfe781010ac2fb0df0302047c435bb500683066023100b1e330f032c273970fb2f1bf8a640dbba26dd0edb483a1f499b8e097b5bd5ea36b4596073191ffba75f283cdead1347e023100c6456ff819ed4c12d52e72872cbd08e380284ac0649db4671740e1969f481394a35473f53c17ebc3ba2d9ce4bb15f9910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230717bc15db3c0c5da2363b1aa3b5e149529e5cbcd7762e4b6a6b5ff48d761562c4e3adbfba8b4d7d1f24f8f11d0c09c5d023009c2feee024112569b2395ce4944c315e20e15c205faabd8e7010cc33b3b74a68602528ec0b60162f10192d6ae1cda580302047c435bb50067306502307e1841439048e84bdffd09574352be2a881f491989ba3c7b08555f34cd1b279440d8c4f79ca007a81d7d9f61adf89dfe023100c621c33ba908c8abcbb6203ddf86bfd33f094a547a549321b25bf6aff6d38c2a3a7e9d7b4761b4fc34bf76e01b2f119d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230471a602c5cbe5b7521492cf4826d698b56ece03dd5cd9e489fdd6a2c420bc9107d8ff906c5208b3de6e74c9f8fc07182023100d8e8b43a7e0805a5e647e41c68a5d1f43493064dc68318924ecccb7e2444c1653d7474c04eaa41d38629ea114a1c88600302047c435bb50067306502305742b314640c4ff715c0a7e5b16b309a59434b2df5af6c1b0a8f9200ad2ce0e21a5ae73af68a3f60657b1bbae63fa7de023100b8817b64eaad3f9194ca2852953bc7817491458a0658ede47d0ae1ce1bee21134518a77706c7ca3becfee2f92809cf4b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306060c5d57d9d4a29eff35cef0b972eeb0443c0f684b00c61ab8a7649b4ee44243faad9777dc866b2338ebdc6ee15aad702305a72a2026a5d8d9133e7ccf903538d0d8fe36f357ee62d4fa5bcdde5d10d429cef90ec9ee39d850737e5e31d79d560250302047c435bb50067306502307f90a4b5592c3746317c75c4425aa563ca42408813e8e6136c4ba8b26b05dbf8dd55b6470d5815bb80ef4f34f5a4eff7023100bb883791c8754ea36b46600de83b5036768c3d5f9139af01e4b58e85fc7fe72c95a9a3f2062a0a5146c0d2f616bbe4730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b40d570f3b34467fd7eb4a2ccfeb98a074839d3807510095a705f298ee719197b0b23aa1381953560b2a4848e0c867b60230387f52169a147b3764bbc7d6c623ce0853bb0de4d3f40af4fab5fd8eb129f6ad1f6c9e1736d7d8582ee9fc96b34f59870302047c435bb50067306502300343c25f97c00cf3d886c4c9f46afb0d239de51f57dff0550f821d8ddb3219fd00122df4b15a9b9147723e477e7757b4023100d73dc82ae729c3304412d90a87b9954b1836460f903d6ab16b67ccad448634f72a7d6b7c9b7f9d350e779e007ab204d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230133e8af10e8d3d64da577d4d12c7e7a4b0feb489b9f96301aab7585771f79c21556cb169681e63168467a1a89d1c5057023100cc9e2ba30ce00c57b9791b6686c03dbad232507397035b406be5db081071449a61c048ed134f9e35c54cbf50ea3287e80302047c435bb50067306502300ceebbb1959c8aeffd2c42d8199ee5d1330d4b4b921c00af1f238d88fd410f3d1e645b24266adc875c53d14658112622023100c671eb3711c1246121c67458f91db16878f7a323a76aaeb0449b80a478803bc2065721fbad310c62eb6a06787bbce6fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305b68c8753ab9c8ceb36c550099bf6ca44d68a213f4e92915ada0ae0baad1f0cf38abfe8f9114762bea1a0073b34dd2d6023015303d429097e1674754ad7a312c9066c296adacd337d87c11f92f3108946f6acb49e8d5cc06adebf2831a8f204203c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b2cfa17b1ffe2bbfa7938de783952bfe311c3cd2d9abd50ba2637879cc9d1a41d7769fc68c055051ab26e795d729ef03023100de8fca3427c55e4d32c9800261f0e76172d0f969c1609804d33f1721e20d7964ac1a56682bff80d1c39ebca4df497ed70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dd891c85622dbaff54be662a86a3e9b728c2947eb97ae2141eea106a68552a6e58fd42d61e7ff3a18d6fba6ae6996ff2023049cbd00ca526f4bcb3e435e714641f1f8c0d941c779c87c772db52b8f8090c85af17c3067233cf7973c9a0777ceeedc10302047c435bb5006830660231008989fae185c1a9f107a460cd255258dc148a0b9b09a91ec5bc01930c0227f30c864234d8b8302f08c5a21a3995423c8d023100cbaa2b0de1fdeb07a7d96554e66e1a8b675488b99ad3232f6234f3464afae130ed3572f1c1a9824d84b05694f73b2ef80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fe60687d27eebb92d1904a6d416b254c9d7700e73e53e6075747c6ae99426a6eb3075a60d8e3ad1e764db14338c7cca6023100b93d3dcb42815cc2aecbcecca58ce0f3dffc463a0325cf2db7d07678c24abd7bb12bee72928e40ca76bd25e8e36d719e0302047c435bb500673065023100e406a99856b0b2e35c38f60fa69640c4824fbf0a064091f13ca71b905a974c49136fc95bfcdae951fc07d19698ad65e702303d0f5d3b3f3bdb3277725e7672a09aa6abe471d2e9d552075b17c9d91a0343f72906d6796a44ae5db4ee5dbb78f1b6d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ed721d0f422cd5d40c8aab1a579f1b4773fc97523d88458e12b7a99df42af9292b47d616479d727382c6909f21580dc7023007bd37fbeea05664fb5f6a68d3806e0919bac09f2fd1e5f5be48f74ac6bbdcee6d11a8b2d796b98e0358c9f13b165f220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d36988c38e4a0db5d1454bc71750cce932f04643937b645381a81bd96411d1864fdf94449ccdb1ea36931405e283bcdd023100d8f9ede5fd94473dccc4d6fb0c90acda4da1c8cf448bee34d9f6bb6db811a2d48b31dced8a71ca33a60120ea8392bcfe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cb797e055c9bc5b67020ee015010b8d686f1603695409c3fe9ad47e0137dc3aa0a330924df1a69906fb8dc483b7faca1023100a35344107a704a43cfbf889da703034bcfcb0d03f158afb0e338124d32fcaaf527ad53c36639c4999651a366d05314770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023078c720657ac6af4d5840bb35694a002e6c31ed27bf904f8f4c0ab619896cffe6c74c8e8104461870b5b847b3e1f6081f02306b498bd4db36e1f24c19ffc2638d5807a57c9716eb7f4ad064bfcbfd45fe15a4f462dac35677e705ba486a6ce929cae50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301470ec24016fef554107931f12dc278c75a211ad8f0ac56f706fd80d864a71bccd70b4e4f23aa8d6871d9bac283dd9da02301631d8931dd1417ab73ea597b3d61cf0bc707e1f0fd82f735e19502355711cd45afb8258d148a10ec61b8b3d5d6d31bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d41b888d211ec07db52c913fdf644bc0bcf179888b10e4ad1f56f7675a0b75311a0368b95c2afae14dd1ef48e6308ef6023100d57ff6c0f8a78e089ccdea6d96997422db6a4bd5c3e62c0fa4d7d570177e0358185d7b64c6506dc9014a5a5cc5fdc4080302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303bc5809b15fb81f05c132708adf37173073c6c5f2f6ae03d9b4e20cedad7a2ca93898da3739ac1ca255f3869e2bb77e20230543dbff324f4be0b597e09d57990f108116aae79c0620e48de91bfe6d2df47924f1e8cd5c9b1829e61efbc73f3c394c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ed88d356f053c164176dc67bae6f47438bce1aced8c79b864be848dc1d5ada58f114cc096b37c225518152a2f6c75bfd023100b98979ef3734c4487ad659fe2a25ffca46b4ad196c9d63fb963c978fd80ac462155c3b7fac04b13c468230fe3cb5509d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230550c58f7e760e9f995ad1f5910583efa0f576bacc87a6f9059634d9603b763b42b5c8c34446822f998d7b8f82f7d165702310089ba95f75ae134a54970d72410f0c3e4a86f9e2ecb641512b5f09805210fc40e23cd4adcb226c8ec6e1d5d89c35e645c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d8086c10eb190e028223a8d6925426b578ea7c64afc875d22e1f705e55a305b9d130e5282cb5f3467f4868a0b3b42cd02304ee4040b9e420fa0fd12f2119af0df1c3808aed3a090eb0ed63e03892748ab7f166c17b18a147de306ebeaeed7e2e3c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e220b973a3cafaa47f1538e9b49820e627fc5655f3d2cd41a62809456e598f8e8f81e10249667858f533bff338cb2920023056918349f4bcf41627a893b6e4ee709d1b7d657eed344b921fbc465bb5034c90b76e6cd7f5365fc9268e344804fcf2010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009ba36d25ab6c3cc375d346e95440a97f7c279934b0bad0dfa22873e288511ccd7c3a61993e5a33076ac3671b98db9ad80231008252e21af6dc1911ad74c0d1b141eafab2d82274b8b9070c9c656db9fa3d8164af8df69adce940a1d6037353060fd11f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c037a4a179a8d4de92d17c8c05e546459c4ae61febe860f14321c07891bee85d2a35cc236231622bde2fe68b348e8d7b023100e99c1b203a4611cccca1c1409b88a3018fb18e594713955332b9415632f0e271c40658785fbff2c8a0468facb315684a0302047c435bb500673065023100817244cc00b991542f8f4f37e5af0a2d4e6472c4c6de316a5f3284d49f835d5312584b45e16a68def31ee72616c5dc5402303edbcdfc34b9ed09e77c51dfb6f0f785026f9abd25c9482d21222ad955734cb14f313050114b686519a723dcc0c90b370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300df2823317172b62582ddc4ec20afedf00c9ea372bd2f7933d95077006c05bf5a3c706d11e4f68fa3238ad5c109c35aa023024b7d380e74e2168ca9317beaf6d45086579ecf231e15996e3f00e5f24bb2866925810f752197a9ae12d2e6523d4bd1b0302047c435bb5006730650231008a24d70a405bf748f4aac4e127b63aa57ffff2b94ba82c3d49abcda912dc0ee845644a05db74bd64fba102b4f1bc2d4802305d527b888db34a58549a57c2327c11691738b3c2e29782806d3dfe29652d82e0f6c2f82db07a2fdd1f7203a5da0e40be0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500653063022f1dbe7083634b2e2061c13ea49fe9700f6724ad42c78f9bc197d0384151efb1dff768ad21280d5479b8c6ef9f66a51d02300c1b3202f3153d565e97e5457afd7213d40e726f0b95aa9a34aa28e47b670473a4b56b647f219bbeb579fc1622bf0a430302047c435bb50067306502304fa09bb860e4e41ded578ccd6e3b5fc678c1b019451cf09c41d022ce07b48b02a7a97cadc301a604dc22ef4e08e2b140023100c024e2612767a8f2546097f80bd5b1b49d9e42c400b0b92deb6ff19dcf5205d3b101724f09911061f6c00a973fe57fa50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100efc14d52d51c811a618d3f0a036aabc90d59a0d8c80f19ef98a887b717f7b44e15a9741127b110e5c5b2a3fb17009e30023100c9a272ce8d83a68eead85173d4ed3c8bdc4fb2c465f6a600193b8b232aec39987f7a2c6c65943379457648a7f34f12260302047c435bb50066306402307b99ab0edee2c5c7436bfecd1c53e228b6b56e04412e9031784f2f514f8ac9defd6fe81e3f8a36e46def257e4fc31e2202303b12b1ea7df190bec2121d45b367ae666bba0f180cec7594a089f283353d894ddb4900c4a1d82405fccbe509c46b192b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304ff49baf81b00290dbae7d320daba891209e66ad1de0c35a82c035ff453a620a1ca6c0c2960cc4fe8cd31dccc289a350023019f00c8f64e2c410a11b2a968ad679eaf90454361d3add7e8416689a00c8eab528428d03848c60d5d21127ac40a5070e0302047c435bb500673065023078630c933baa4322b54a0ada1a7c471668e38944d564c8dc36b15a1479198d933e5aa771b4d3e37259e52a5305804b6d023100d30a02ad8bc6bc2d1fb5ca00f14c2dd904b562643c5283d72aea929f21edb702b336b2565cd2206410ef3964ce060ec70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303c62dc3814ca955878f6177b357e153d7df2c80b8a6bdbd81c5ddbf63d54872298a259669d28b3d5b821b33cdc079b41023100c55383351d02db428cc165121860365838e9850e1b1ad99e9f7c27d915f694132458969ec8ea61556e07d92c408044f20302047c435bb500683066023100f7433f50fd89bdd041d69d8bdf2ebcf392c4a0addea577787c0af7f4ce8a163e519cc00ff69d5f322141f47fc2dbbcbd023100ffb93b8fa2af886cab25d9747ee398de7be3d374acc98296b24e1bff5dd18bb481cf497248fe8f77db63272530e2d3470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c40443c5bc91b45bc1d50d15e5a6d08bf31297ee711957dc4395fa814a76d61811527f6373b726bba422f44119297d8c023100fc13b48d9f28445eca938abd333da67ea0de642b13fceb6853320fd72f793376d4a8c19a87ad45da578ec8238fa9d4140302047c435bb50067306502302c5f0865f5894772a88cf70454acdbf0e7837d53a4f936a5ebd1e127b9c9c71360175a548c87fa2c6a587552e0aaaf10023100d821c74ad75cb828257eff4811d004c1a187262c41cb5d08ea08c96cf5e0f4ab92266fbf721e0041925a950e0be6dade0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300ba51c30619c01c24be066fd9a99ad7ebf49bd9e8b10ec54fb6df5048a67161c3f0c58b019850fdf467a5f7be99b113e0230392dec83a6aaf0e04cf9cfb407832717f2b5a8b3b2fee256525b67599d87423cff1853a60508e6c5afcbb3bde1cc33c90302047c435bb50067306502301a447324b1afb8194b9a3dda2d564b86ced36a98b89d154be4f770590a56a0811cda0677d1b1c0d6034c21fee13a793a02310099c0a4581adbb6ba4df16b63fa230cd06113b673e3b59e11820c77e01bde4ba78f5424423046ba792fa8e52f2d1523510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302b00cf2ae4d1265b44fae8024bdf55262b18b9d21470fa2fd73b99c83ea76f444841d4591705c977bcb0ef260c863fc402301b6c69adbc6e0145ffa85580b2f720421fb01ef212745e205e72804ea90b275694b5ff624bb74fdfe379cb3197c9a5ff0302047c435bb500673065023100d3d185d47ed6d8c902aa919993ba2209f9a91f8e937e4cb45fa934175adbc42dd373542fb0f1d79dfb7dda38df4a88b502307acda51f7781029ebb883ed650f187f51a140ca87246f53dbc64de3a7401dfb7e4ea29db595c2ca63d0c84b1edf480a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eafbacc01541c91625c9940ff64bb000fcf570e6584e4e4ca02f9d5451927347a702e5cb625f9d0f5101bc40442582b7023100d240868a09fd45345a5773b52a113e03c7f81ebc52301bc49559400dd5afe7e1ab0133077dc4d07526ed026631c1d0560302047c435bb50067306502303e3d9d2736b99b776e838e5b6509c441105cbca2e377a66e8cf70463da228b6bed33a5d0224a6f145cd87d8e89e34f58023100d8bcac7c1b75c7fc992152452f9162cf1dd3f7f5b69d307fd79e2da5014d105edbfa91119fcea9e7bcb7124ce20326560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303e141e12f8cfdc98fa7015c04d2bd2fffc3235058c2913cbc68956d88d0e93ca698e23d0bafefb1deeef009460b06a50023100e48fa375d38b3629431b19bdcfe3e410e1aaff946eeb62ffb4f3e3ce17c39d17fad4827747a04c0a586508c16d5ccb530302047c435bb500673065023060433c478cfb083988c4b47b83da029a030638e871d7eb74e7320d206e0666bafce2299ae5ef76988707c2d337ecb4e102310091f74e3297ed4db62762e579e9cb271ab5bdde02de58ca2e8046096edcdebcb3b219ed2e365262870b4dab3c30b30da00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e7396e11b8a36d2c20fce1d8e6e51bade54dc12a870490ba814b78e2d28cbea5ff7fcb91414dcd736ed36c98c7ba21810230599d9ce4c2e3689aecccfee713dc1b31e38f0a82d059784f8bb87feeba4bedfa77883e0b58c6e54dd99ac6b1431e9c220302047c435bb5006630640230245ecdd3e493e975498250191473e3b1b91f8b77bf9fb617458cfdc80a3ff9e7753ada06c7ca23d34e3731e295ee417302300203faf9445bef886a7e110f6af76a1b7a430441488af6bb8f340ffb427fe8a479fa3d059cc0ef1fd6602744fe4e7b610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a6328507ba225d2d0235063e9d63758a343a8e3a781ad453f93327e83da466d3e1a18b0fdd28ffe39c8b15be353cf2fd023100a7627a04e3da2f318a8b0393a5264511292edc901516512f462a349a9c95c860df560b7710f2090afd110e8fb16f655b0302047c435bb500683066023100d70fcb3759b91b7a9bc3239a9cb74b6f85c5472f3b50df991c7b0ba747287dc7c7e935ebe1b759b8daa52bb67182769302310093418d9fd33e74eed477fbce6d52c6f77952034bde478fa3a3c4dfba0d9450d5c23b6657aaa2292480db325ba8202b5a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307d1fcfaf7cf0d9fb8386e33dcadf818bd617e18ff370d57e611e0dc9e9a734f54f51628c3dc1f4cae1932bc26e577950023060b1f34e55aec3abf374c35e22966386c06a628c4b7c008cff1b61cca7027be3111f0ed550e4356e8f3107f6a921d94d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008bf3948c68b23d2daf360b959a671a84b1957c777d4c8c784b76ba97e2750a912f7b6aff7a2f4d4d973c8edcd1973ac8023100f5dadc3c93d8bf73d3e8c2914eaba4143512b17ca29ef2a0a3ff52a49d699fee7e22f53869e032d2d703e51e52a4ec6f0302047c435bb50068306602310082b7053228637d079ad476e60b8eacd71865de2baece792539ae448007fd76d09e746018cf6e756cecc0868e4390df8c023100d20d6a8d26c4adc9a3f6646251a439e97d66eb354002c4f4958e34cc7bc3b85c81b1685d46a99d6eaf19d82d5bdfc0e00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302303c2fa647fbd51a7a1ad750ad63a0d48c7674ebca48cec5b1465ffc3bb5dda109c61d8bc1622fb79bf7619fcec9b6e02310096739184487dde2a231b702d6352dc544ea67c8395469c7915771faf2a7b970e74767fefd6f2e1c9f64660d064da072b0302047c435bb500673065023100a062671e42bb98ec225ed696a2aa08c77e6f22c0724a77676677823375329e1658262b10f6cfe3ef6c7fc6be8df0609202300d966a8e581f03ab19542a18ff66b341701f7b4e7c9f1326a289ca11997668f942961d70209e5c5026d950c6814da6ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100de60270b2ab71e5598a5e80d451902d9c8c909949c034ff8aff2aff41c771a695aee1b126fcb9d7ecdb02c2f7438cc9a02306174144b3d13a68f85379d3812d638d75710595a6e3d9a8e7a17c0d5ef3e5eb0d9b651c8940d0d1a15b6b9a8b1f33df60302047c435bb50066306402303344ad94cd2658b5b124bf3209ae9cb2741701502d72014e24aaaaadeaa48edbd6c3aaeb41dd9cbed7f80b06d3ea9b4b02304a7c9ec2f9fe5fa3a312c062606000a86406f1251f70ebdc753a9482daf7ee14c2b69c7bae459afe200082b1040ae8090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d597e135dc20ae17f4596da2b1542fcae78062d35135b4e3f75efd393be2cf76fc0b276a835988320065f3d47d2ae230023100aa3adb9f7eb0bffa6981de78523e94e5a4ef50e094d8da75ad367f9421bff4ce96ea78b3fe933425f6793cf114d8317c0302047c435bb50067306502310090ee90bbd38dc3b14d15e13d79680f167428931df3d948837d13e934775a242169dde19ad51f897eb49d2b4ac8dba2c20230011ac0bdfe2305d02293c76612710e0a8d1f2e250b527605bd19e3e2d3114b10bb7c717c7fd7a46a0f41e6622c1b77ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310090b2916c62106857b94a89bcab4332440da36faccdadc3466e6a087ebccaa3904761a2d7daf168527742bdf538b88400023035faa542ad635b3ab2ffcb558484dcd2c1ca034452072c75e873bd1dc5efcb5bc3ddf8c6d79302e25b606abded73f9d00302047c435bb50066306402300973e8401bf4fda373ce6dac072c000574246bbe8c270b5f7b64c64a0cd5fca1b768c9bf4f7835ae0767be28eecb8dd10230033a7679a01fcc906759ab3cbd5934ddd9e171b33a5eea34422ffb548ba228bdd136b8bb13d9838aeb0de43648f452760302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b3deb292fec3dafe7f6b4b7e76b10249171ad56877d143dedc78e990d4d7a8e2826706857d896fb141c5c4e928cdbefb02307e61d656d8c0ae209755690f502b12d5078ed0d99275d540c6387ae0661bdcd10674f20858122d08e8c452a271c0de170302047c435bb500683066023100acb6af78d29bd65158828fff8e1e62ddf41fc6ac605ab98da064436f7c0b961dc79633b5dc8a0cab582643e73f74eda5023100d4e8bfe6c22328b0763b429c2cced67b536508b9b5aeef86a13b2198d508710dec3cea92b366b33e4af15d0cf1b2a57f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100db0d32b42577a473ab2a111ae3778c1f2de52bce4eb53ad3515a45483537f51c72e2cb986a9074de6e7cefc45a5ca5b102300dacdcd4b75d850dec456f5a3372e4db55fbbf59ed5f297740a745b1263dcc18d7141c96c154077703e1c2ea9ca416f10302047c435bb500673065023100afec972096d5e5302e12d0e1839edaf19d331ed2d4b3f165732107f4fd9c298940b35d4179432c6b20afd308659ca6560230140d19f6cc3f9317561a083f0ee001ed567dff195792a0fba61bb7f14b03db068ed653a520ae665861645a125f4394cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023036b1e1f4816e10e1d55a3aefc4bf0ef44aa4e0568ae2e565fbb34042db06e0987effb54bb5aa00912173e7e2dfd6b7bb023100fc0dd8896126e0e01522afe9258cba89e9470edf7f248e83aa0572b45a4edb233702cabccc9a58b7525b1a0038b3efbb0302047c435bb50066306402303ae7e801dceb5ca3e756b5ea035d35f522ce22bef115747322dbfc1b21b71f7bc9caedaf364f7809f9050940ec14dee7023076294289baf8ae0eb327b874140103c8f65c2b574ebc4e82311af37db2d9b3fd9476eec1566d1a14249171279903b6040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c74e9f51c3dd6a6d40c8f76d5d1b07cb82e8d13fd22301bf18273e298a9e5b0a81c1be35e522f18efe759de59803320102304d30fe0d7f2d6cccdf1818be5a93dc0fae39c0e595deb63e5ae6d782dc18ca01de974ac76fef350f0447b1089512dfb30302047c435bb50067306502304eafbd8aba590226993b1868c0acb57b5f3cc271cbf153fcd52d7da70d2318834473475a9a64f67e776e3b32a60262db023100b66e86a46acee67547deeaa17308970bfd89aae9a5f0136c9987adc23fd59d14554bcf14d22a2110886d310d5d55ea7e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f9f0ae6da714ec4acf405592e0f3aa53fe74213f9aacd9dc032558da2910536e33fd8e2eedb5ba2629b8a88552fdb7780231009e0d88095e08cecd73f1c0a0875c87c295738e3cf18fe6df142840cb95ae0a1a5c3b606e2df185c6fc42f800fdf3c0110302047c435bb500673065023100a4741b526946cb8f3dbd8b9cc33849d7a137c2c889b00748f690e7fcac92e21d033b9db7fb720d26aa0366fdeb4f27b002304f338e8d85f07dbc36769939cb834294074ac7f0610051d2d5ae51c8e6ee8254d0f9699f2ac6b499a26bd6f12790a2860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230791e8d2f0ed6c052fce4ea5c95671cb88dfd9011b75227dd5f65033e4c017ffa934d67f7626f463c3c438b6577140142023100ef1385caa057db9cbdb19b38aaa46d752a6214c20d9a00eb456998b392a507e53ffcce491b1615249b3f96a90ea569600302047c435bb500673065023100de78fabba4d491d39c9490935f6db54e1e0b12f2b97a3cbfc1ead70917ba2fe58b95dd57b42056aa8cde9bc7ebd1a28802307a616c794d3f08ff2f63fab6b8a38177eb4c8e80a438e1dad70e0131b867151138f02b6301c5808e3a5fb3e7b208621a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023045a61f6ef84978d921f711b24cae923e265663980901ca84b1e44226d75383bfca617aa450cf05f631f21697be054a7e0230429f05b3452b29c276b8515419d4154d1aa3d7c75234422f13eeff26f3d51165594a3e82485a841f0f032e16f077ab710302047c435bb50066306402303205ddff4ebb422ba8bba08a2265a20ed2a5147778d1daed6b1c3cd2658f946fdb54e9824325ffa35c7f5953175eba95023035fca4aae3ed0065aeabdeb22c6ca4c481ab1b8a8e1c06f4a0d4ba13958469701d404bb91d25c78cc84b8557de28c1160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230794afd4263a603f187db81d38c40cafa02866a7f1199fd10e904f0c67e7eff9f4e55cdc1d258e5a59933f050fb73e732023100e03564d67c4b2114dd36b1267fa1a3cc9c8d5878d64b3e3f6b48c46455f6ed97f2b1ed50bd63d355c96bd0658cdfd7c20302047c435bb50067306502306b584a721adfe6f3c0ed51ca9d737eedd028158a688b320b44e76639a6f92f620044d1214dfc8d8e564bde800e90f8b4023100f6626870f2f75df6f4451dd01aa9d299803193858187d0df8e832cb2b2601613cb233d1061304e4d2c372414c9fcbd090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306251761380c564076e4cefe7b9058d33a3b3b1c276dcbb0b5802cf77816b3555683a7ca251f61654b33a9910be2d5854023100ef6665059ae2ddca6c12fb633d9ac41f6e1a7b35bc63063efdc12848a0c0fcf6d739adad28ee34887ad55b0a997f5fc50302047c435bb500673065023100ec6659b13cc9d32ff3ad7c59c878ec50fc7c4eed41a5576770a6662c51e19ae7b0cf1c8fd2731a0518a78aed733db59b0230336dfa93fdc5c032ea2194caae623497640da6549c0895d2e00031a4dcf9fceadd354a96c84c3a912d46ef11aeb56b6f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307bc70cce67b88696758e7203db1edc74b9eae17ea2727efa3334a88e1fca7b55502f240d92e2a807b81af0fe645fd74f023100faa685629f18cba0ec677d0ca4c1ebb279f4a7116372b2c70eda2e5ac4a317b16be26f537474d1dbf6c32eb85b3601e80302047c435bb500663064023028c0ff23ed08f483df79087620e7875261ff72443bdaddffaea82b234ff73e2ac5a4b2b94a74ffe9c07fdce130803fa7023073251febcd393b409e098074d3ef43f1008a89ae93a36010106d02495159ce13d5096a3a95860b0d7976455b024ee0580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008f1dc5ae72bfded83864a7760f66e1850a3cf3d9f184a28d1825ce49d4a2cef880bc3d890c5de1697df5dc0568ebd4d3023100c2af134f04815e0e23db700180f983e7a591d1fe6ad6736aff51bb81103a99e346a4bf4bfcbcebb30d8b56611d233e580302047c435bb500673065023100abd1fe9668aa797f65793d371f7c9a45497c33d12b7a8539569cda9b9f6b354c3f8a95505b74cdfe6be754995c57ee9c023071a176fbb7dc628823f477735a290e19bb027656d7caaa0abf925c812286c0d54c2fd5de6b65dca6b3100056ab0493bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ea2d32a83692db45e6b37919ce45a4009bfa858316a8e00599fcf946210c4ff6fb37c2daf793ad740645bec6fa58427702301db7e3c2a7cb67f66054cb8aa08554cdc78691bd81e18ab465fb1e73feb1e464ac5d7de2989be183a2fc77a7677ba2c30302047c435bb50067306502301be2ff87f349ec3c585772f40ed891389c837871009caa0e2f475cf95639721bb034bd5ff9d561924ed648e07eaeec59023100c5976df5917f86c2298824cfa1aa8835eea6e390dec37c36fbebbbb6d52fdfe403a2240431901841f9115caa8ed32b1e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023054c551bedacd10eccf97ca001cac403df2f63711366dd9564f7e78c891d4970d24734ea402eeb8ab14e14b272a276b06023100c1bf59d997505d26835c6df7e1952b5f825c4d101f71417661501030155108bee33e9367d4ebdc2b10b2222bc4279a020302047c435bb500673065023100b000a276585288c0410866a5825b596a18af52ffd80c727722269a3e066398fbca0351b4083affdc57319ef9553252e3023021d6592580e06cb071bd5e6b720f4c5ccdfd6f7bc924d5fa78d490b267fe660855982fc955889ffa1bafe12d9fb5be880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230544b54b88db014343766fd22afa74ed7fb5756256223277b18ce582f239421297a92f27602d93468ef3a640030a639fc023100bad8a3d04449d9ac6f088278ac67852540557fbdca99d0fdb054d99eef47d1a26df39337bcfca1e493054b0452d3fe260302047c435bb5006730650231008115d31657d5574e99fc45bc3d6a1962a2f8ac519ef6de00f5e522375d0ea762007d025cd49f63118ce245c61ca811cf0230063362c838cdc66c220319f3b3b29fc84bf272b3b326fc1d4f503a7a3394d12acca4e9a093dffdbba2961fff842fa8be0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023043499553b559a47827026fd5b1c58088951fd09b207997ba7378f99f8c4aa9b1809af4cca6d8142ee1c0650b662e6e160231009e1d357121b1eec27672b2834ca190af29d9075a453d232220597da92c4167ff86dfe41d007f331ce51be0c75bb66b960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300151dfd6c270fbe7502bb6dbf57c92948ee325be3f1027fa06b19a622970fce00f4e31703d1c274caf4aaaa6eba49bec02304641482942ac19e14aaeb28b4f3448230b89b7ff4a518d200b55fe0ff60cf3eafce68b08d8e1328f84361e6eb8d2a9160302047c435bb50067306502305a2674c9b3374616f539bc7fd2b308fd7d2570b12b950f4387cd9d68c4f95da641d4d37da3001d7a7d6660254b4b046e023100b63c7bbebf3918c6411f78faab82ee7eeec76792edf231f65b53d74c9fea5942d04bffa12656d600239ee395615507a70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310093de1724fbe8f094117f21b1f8ddaa5c7313d237171ea127c1cc1b160d284e3113835fc5e91ceed2ab0e17698e3bd9020230541640cfc7e765f9d1a23521ff0e32696553420fdb41713536d0cda1a8af0e39a1a6ac6d626392a9e6753c6fc1c268930302047c435bb500683066023100fe566ad478eb03f8b63b733149a6157dc939bc849290de76260e49288a78fd02dcea626c9866b42387904a4534f192b3023100886072300389f8f057b6c508640715eadbbc946f5904bacdd50e613e7d97a1e7e26bca501278077c91a0bff299d811eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230111e9a87af2c4904e8f8ebdd7dd9e5dab4b35152663f85261990a890fa242b43ae4ba325d51a4c4dbac921ba0faedb58023100d6035749e6b24d645b2c4528835f7dc78fa4b15b2019ed68afe820b8c3a46815b067d6151c9c3d83669359070d659e680302047c435bb500683066023100a171634819df85a8f37c2ddb797e89a520317706b8f32eb43bf9f47ac68924af49452c520848b672649279d59d2a806f023100d953ad9666b40f18dba6df6c0a3e125d8d80c303d9c8ed45cc64d778eb91e3f9cd4c516b4b5e8838e292138c35d6c8ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310083f7ab6091d9883c138dd6753b46047611615555c73f1d351709d3a62a540c7de6154d60874c052cf6d13082f29eff7102303f1d76dd17589ef89f4acf51697a0b59e1848801875cc76d0c6d162028c19cff7e02b0bee04bb203d5a4d228815c0edd0302047c435bb5006630640230099dc2cd9378299ee6dda5494e915de6ce5e1a2542fcd54bb96a436fb19dbb1b82011cb9d91796e45370a1b65244d46a0230255498fa23c7526b2e7fb13ad5f8a5cc8dcfc48561e0a58e3a7b3c63b689c1879fbf3a4b0ae83380eb621da542993cf30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008b171fe083f039a44f4c339edfab18fa771b520368ef4af9bd697112647b0e9c12ac42567ac772541c467205d7974ff602301b89c61901064c90d00db58972bf4343a13f3855bfeee630f8d81b5ad189ee889324f4acd88a2d5bd5fef145853423900302047c435bb500663064023015e0d559decde2fdfcb06ad58663b8a1542a8b02300947c5cd9bb86d505d106cc3509b3a5ee324ac7e8ffb57a98394950230155b53c5a215a9f3cbe5c9fb6cfb3dc0935373a049490bbdfb6154435d2b3c3df96ae48596da27164abcda125a3fc6490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f0bb8b2bdb1a96355eaf45ef8c639117c30c22ae8aabb7d7f7d424613963b311969725b691ef2d64086b307330b92eed0231009670531e5b52ba3bd13dda0407a951fda5c661c6f1ad7b24b0cb15d7237da407ff7126f900fa2b3615b6a3dbf841cb580302047c435bb50067306502303c7beb435bfc7047d781b76c69bd8b3514ba2de5e85c38b62c50331c3195f4b1dd39bc09e78a992ee45b2f51480b13c5023100e9e146e38f2d05e13f52c8ba7fc7c9f6e08be09b943506b6faac8a5a9b0969274775ad92bc12da7378a9de35ed8d35410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023006113601668a7da939750f3eb2678afb5aff99f29b30e55473df0c4d70ffb6a09552e4a1996ee0a262f8e6def7e55f0f0230701d774344484409d45f5685e56743fc6942c2289c64e4aaed34b8adcc85795d01bb99246b9cf633b3c9ee9938fa60810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cd96cf6647d8576c667b7ba4b94ccb98d027b390ffb086f3486e7b911ac881fd0bde97ae4bae7c6cfd7a39ffb7ef7cd10231008572a32ad077af17b52b6a49f3166cfea05acef42de751efd77c8222ed99f529255ca313d80668617805801c4e91f99f0302047c435bb500673065023100803ae9bead298ee84549b92674472056ead4ea3d4a1749e4782e8a7d95085255d6f2a96b25d34e48594feb0fefd5fd88023027f5923be0dc847030540540761855cb2555d7ae9e60e55b16f168d65a4ac38f1a38d762c96bf747706b3ec8fe9b3cc20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023072a57c9e235defcc0548c7a1f18519cdef5e2d8325c90a7329706c2eeccf3c1e82650f4b3280304c8995b1fbad6db774023100bd0fb3f5e1424c5ff925b80c7a6d6a107007c41a101db4a30188c72f7ca1feeef61ef3060edfbcefd5ea2f4cda02f4ce0302047c435bb500673065023100bde0cb5bfdec8396030797c668aefb392a1e3bb4ec206f9ac300d966a4ce2ba5e3155cc6b1005f55b9ba9434baaadfa1023058eacc944040bdbe1c831c3985513b2696bf5e343190dde06a623e931688a993ce9cbab0151719cd958bfbbce357f3d70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302b0d528d2dc9156dc30595ae23a647d2fb87297ad757820de19d5cff9ee472a9699ef18e077c7c9344026071371555ec023022a48a01d7f364af60a4dfb5abc194c2c124546096645d86a0ba3e3633539af6a58824ffb7837a4b4a1ab101a14f7dc30302047c435bb50067306502301503ef0a2db4175290dbd616b2819f8de794647a958481f968c6d23fcfa6b928f62401a8a367586d2f561342af5c629a023100ec225fa6e6da093c6cfd12d4f8e9be496e1c0304060b17d3b1ebb46e5791b282743500b44968d8d68492d3b3fb5ca6e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ca1cd3857fb6569aa7078e7abb151d94a04f4be02bd44620c5490028294e4718b5b9a87986997fc970a545e27d45c84c023010fe580077e0963e3fac8633de6f81ebb4a1b53db68a63f567a9019e3db0cdb171475d0c93c536e176f23035673ebeb00302047c435bb500673065023100ef59b2dd2bedfc85465b6b744ea59741f21245b34d4ca29de47cf4c0d46ed1d91de01e9eafd6d903df4c173318c035c90230376bf1a0567265b099c94bd279946304c9453e05e5c2464b4e408db6103fe41f949edfed4df68b88f0049c725858df4d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bfa22008fe758a82b384047e2628e88af3465c5e2a01d34e76f1fd2879a439f7d4c486188d8a108b2345f5a16629f58302300f856760e18f05c176bd440610b60c4df0bf1460b6072ef6efbf271eb360d0e35d8ee90760757232f905fd9f625737fb0302047c435bb50067306502304e902b95f56cc174c9eef5e934b7105be3f3d19f08e14381c41034e80297def7f4c6983ca07695ebaa09c900e3665288023100ecc953b1dd91fb022fa418d29aa3ce8d113f14cceea24ef1c194c1f1f7ad71566ca21af97f542dfe7d63133838f9d5190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023033b1b30c0473f2064b8fdf438529497dbcd1fd00a93a6f8c2299dc69212a04a6082ff8701b9dea5b2fc8057242ece98602300feab11680b96b39159f0dffa0dbdf854a79d86fe92e40a7169a2a776fe3147437a7915e56253e487d0814da7a9501650302047c435bb5006730650231008db5683cc5cffb7aff80685712a92c5a438e538593bada3393cca581dc6eb135726e7307a6e4611c8b2f17e37f61261b02304339406089b7951faa0fd5b1c50493ee035675ea9a24a0dd1f88f95bd9a99e1743f30ef9e68094fb647eb7eb4a152d520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cf4830a442fe21d527ae47718a00935acfe196d6cef51a4602742174ca10fdd1bf1e7d4cf1661d9d19b960e0a53dc428023100a4acbdd2a4c6e697e5f3fafb52560fc80bef1e231c6f8d1692a18a9ecdbb12797ad279dadbe03b69d244e598a9452f000302047c435bb500673065023100f32771d63fbe93b5bea76b7e87cfefe89169fc44aeb9455f5c0824030145b1d90345ba6f4fd797dbc46b801b0a149a750230470dc17fb5b77e164fb1f58f30597284c559b1f3ffbd6604c0b8236a74379a190e55ea38a34be6ee3538cf249fe513410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023042359dfb183c322ab416183d139419e904a3339ff072cf47e23d966523c4be9a5e34bbd86eb50db91743cd1fdcbd0dd3023100824f8b57c1bac6bfab95ba64bfba48381ca3317ffb316a82f332e0777a2863e9414712e8e07a56df0c558414f37a3e5d0302047c435bb50066306402306b2cea661b9eb633fe09d7351753a9d2091598c16f5bb1ad91660cabfff591bf7e9fa39d465a990d27782aeb397346ad02303e11b77380ccee1f26b4c0ccbd01a29f9faf5a5ed1e9fda17daf36088304bb31860e0edca0260218e985f228ed4c4e780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009806dffadb3b40ef5efe8d79e4fabdb65fff2ef468a8f7d4d59dfd2691a3d252004402247f59dd9f25a22443a91e0bf5023072fd5741123fcd23e7ac41177210b25f78539479bf09e1d566e81e4a840e590ecdd2395045f3b09acf96d95aeadfc7e30302047c435bb500673065023100d04019a5480bb638eaa659867ef79e5e8e1762fd816427fe52afe78a32f82de9afaa1d9ef3c3d691c13802bd7c8d9d7a023032da38587a1d8b8a3f5da2fd6bef09aad6d1892e5112c8629bceeacf6aad0dbc3d3035486ce6deef039d1889e6d9b5de0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d121281586efd5ad5608376883f63c712e0be458d035cd0d970c9ae92db417a4fa49ff1e44385a57806cc420a5ad6396023100d2384e3f0dde350104d23c782cf4d6a997fa56aa6bfcbf8fad65f91b33efabca9bf24452bfe448ef7e6ab29105f1fae80302047c435bb50067306502301e1b8a722d82e496c5e99cc72d2608cec3471436f6361763e6ebfd08ede549a3069ecd5ce4874ad18afbf41c02a74559023100e9c15b1f909e503d03749148b7e56932fba2c2f7789476016a78c094a2921f391dfae58b5b0c0cfefc5d231cb6cc18510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230298f9bd1c31f7cea2f0613c5afd801d8d12e5585458b55f6972ef23a0e247109efc463b07f75f190dcbdc8e7591201a7023015eefb0768438abba85fca6205377671143b0e4737de795ad7babff5e13ae76428b8245b9a7ac58f0ff3d12e22707daa0302047c435bb50067306502310097ea78dc06c218e0fbdb46052e2b506f4cd4ba1f364526949a1123a08c3c3addf64cecdcbbcd28c502191a0dff667f51023057d2d2052a56270e458c929d6b3d3e4b85f18752a329d1ecab229bc7858d0d05a42242cdc782a9474c67375c603946240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fd93c18aea331625f7edec3bfd5cea3b12b576079af38cfa1f0260dcbe5b46c393eed6f3f87360b3fbee4726c83e1011023100ccb7ad98ec65d4dde1e8e7ce770067a0be3b6767779dcdf870c97d6f8c207385b65ea84b8194d394a84acc6ff2b96a890302047c435bb500663064023009c38abace01052c6817c68865cb46602615aacea9e127f389a7324d8fe402d9de03f4f0c1c7ac96a794b36d0cb70037023038392698dc805566ca07ba5a4afcfae7c6c59cc7311b386f9889ea1a0d161bdd5951dfcdbdb35334c4a2a3e74c1b45ca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023062ae1c72035b0dace0a99fed61215227403cd4a00f9332e0e92791050cfc5253bc9cdad3aad994cd0ef694cd62b759c302303bee00f9336d243db2cf4bfd961a2ac55606c81e1921a27b4e66b740d54dea69330df2ed2ff444a46ff5e7c35cb520c70302047c435bb5006730650230115b8e805766315d4d167422fc690b4f3e984c928e1fb1d21b72f1b3f157cd0e506d8eb32cda7dbc1e659c5f5d861239023100e0b7cf0c3ceeae9f012b7f5a15a4d5cdb83b72552dbcba2271f112dee094a3a593f378e4e472674131669422938955a60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ad3f2b432ff1198874e5bba98df389c44c18bafce75bc29a9ef6876d9fcd70792f75273d1402bfd48966f829d5475dde0230599e944a1ccf32822b04ac4593032f0e5e0ab996a70156aa10757aba8525b5c1f30a08445026c438f60fa5b9e0e852e70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301c3f64852b02e4750b752d0a1c46733ac185b71c6e279e7b3143f53ca0edb3e8d46822853ff7da3936d1d47ee730f162023014c1472b2b90ba9e81728fd10a0a75e6264cdc2c208c5f432753ee90a337778bf9bcd873f7d78174420480af73e4c3040302047c435bb500683066023100918c0cb2b37a2719e9d1b93c933917fbc678eb42765d3e78eb76b280f98e662ac887e832d7c9ae3f4d8fa5c05e84db90023100a538ef49a785c48c6b914ed697fc6d9a21101f265ca15463e4b94298fced6cb4814b4a7db64a7967162faeedcf2d2a000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023009ca6642e1ac2d4020b7fb2ba0a5c50e1f7ff249d448cfbf1313917918678628d6357f8f43f2b81d5aa24fab12b5e049023100fe5ece4cb22eb4adde1eea22486a8b099f5785b02f0cc2dcf258f8f6d1e335ec81d8b2a7f99d4335db29f21d3cc761ba0302047c435bb500683066023100f4f3cde01a0b821e05e90558e32034c668e90cd41a117222178f50e643e49d0bf152bd0eeae92c5e423439c66dc779ba0231008d48051c38a05b992f311eeced6c606ee155a141679c2d9193f3acf4ff8807f2bc2b0f847c41dba5452d47ca088256750302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bde79e42201e318105582b4c3e12f7638c882e78b0ddd278197a462f024ec50636501666fedaba1e80d81744a5f7305602300c83ada66490c1a2ce7c54ec94523b08c4e036800dea41fce73be2277def58721622ce342c6a0a9550afb59d993e5b330302047c435bb5006630640230085136506ffaf6d9b5126c5a83e3395c481e014a3ae93d894a27983e6a23fb66b673d933ef565d398c9c8884255ba3c1023011d6c2842166d17a448231f4a358643065ad84d48bf8a330a9bee06007e4fe8f2d26c8869481e1c3752e591116a62efe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ad69d0c8af437a5347b1eaa1eb2ecfc9182ad6d2f414bb44d6f7f3cf964c786fc5f31f64db997f548b8773d673cc866d02307932a1aa8020f380b72d2699ab163431daf1e3043c5a36790fc401be6ba0f49d052bcfe470d80ac671118a4d118e69120302047c435bb50066306402303083c0bcbe5a90ed87008b5e7b42639b5bfbdd4e8b0de71ba8cc814059d2593e1b819ed56906be70cb2ef8d9fae500a1023033b7ea9fcef928301961f2ccc1cea3cadc2af8046574b3c2b412e2e1d7dcd9c873688f5dd4a639cd26f79d5e038a2dd30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f8a8a08ffc608eed462fbd4b6e1466bf3c6ac1340b1b0c1e607e245ee12c7ca67061b35aa33b7d27494175edd4a51686023006f9eda01931b475aca471aff107d1f76eb651484e7580c52065bd60ebfb27c1aa30ac4ab5afabf72a1375f94f4bb3c50302047c435bb500683066023100fd7728e23f7e7b7b4d2e2111f8a04da39a4872db6d06544114bb78f72ff9a9257bded6d8d991b450591a200cf842a502023100a86356a770646a8a04a7bcc8f0c3203bdfc3fb95e48fb38c115a1c4cea1e97e9b8b8995b55edefa0b92c6a7e5add8f170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009a877bc2f6fdcd1f42e93e4023997b034781e7f4163cb019a245ca9a0bd46b16a73f38f83f74deaf63792a478106309f0231009b16942d0ff7799eba108ba8e3ce629fc75c30a2b03a4ba86baef46865e5ef095a353c06eac5cad95cc0671a20a3c2f50302047c435bb500683066023100e7d0dfcfe35c698a5bf9bbdbf94ae34c797ba58f74dfd721a211de4a4f4b5bc22cc9fb9ba7e9c79e0e1cc10d823b7a6f023100acaab608eb4e0f220f0d3be24ee478141575368df1e021c13bce930b444ac2b3650681c412a4a96b17bc36e01f79e8f10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307fd4e04fa3e28d7713db8e47758aed5e9d916169f7ae5b6876b58839214b553ff7e548c9273b5862aa0ec809b98c484102302624d291c7b7f028af39a17ff14289f15fc78c9e17bc3b2353ed766e488a39defc8590637e380493884e6eaa5d0bc33a0302047c435bb500683066023100f67e0a8ab361485b4bae06aef0f958497e287196dec5c4b4f4796a4a7aae0732135df851e8614ec896c5332328f00e92023100b42889de832acbaa4408a4afd504e8b67e162773be160018a097a13f5c27e820658e8dd103f5161f20852e54090824850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bc536b97d49fa73e8cccc90203576076ac34349132d0e1ce31ddd8207944037c044d4d79d87d9f88b415d7df3ba1eb0d0231008537adaa24cbcf94fd7364cc9b297ea4a7bcc8c87a4cf50e8d01bb3da0e8be836026fd4382bd43a012a366be53f205050302047c435bb500683066023100e39aac80ee730656018c8341f8089ea21500f2182fd51a3218e8212f00a88fa1bdb9f4242dcf36d770d2bdab682778b5023100c61c1d474b8d0398ce54687f9339936e65761d3f21ad32a36be6ef3f0b167bc9fc512de0e2822e4f938800cc7f47363a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310084714330328e9f9c2985d7ddd71d31107aff0824d3ece850e6927fcf07c995494847aea5f12491d15240e7be3754cd22023100b782b0d74b87ff9d19778d3ffeed0ed0ca0e88cafde48d50770bb18ac4f6507aaec544bcf316c7f6a3e0ca2e5e8e57e50302047c435bb50066306402307108a7fa8907ec8e8f571d81a1eb5e19bb48f6e22019d7847bca064e6779d47f78349855b087a5689b16fcd69370333202300dc854b48ba312a86670ae467052df476fb61b5448352eef05e143181e5b9243b77123048ee35558239add4d6c48b5040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023019a3c4164ad52e3a57d31e1369b9462974d56f24428eb04f62e9538430a77a04ed2bc32f723034a9bc0952a8d09c7e430230084455cb93734c20a5467370fb5655ea8e223bf4c8f7d7272eda5d3948941e820a88d48902218b84c32388606bc799480302047c435bb5006730650230037dafb2236fcedd27041b4ac3523f98d70f009a65aefe67ec959a113f1b212268ad7a7b6a9551c699f16c2745d171a30231008251d215b65e47e2b5406f6111c50a6a51a7db891fe8950c84f5e0201fa1ee82e8ba283938703d85eb74264dc5f70f1a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303e2c1eb3e9a30bfe91e3833fb8d62168c8a13cfc6d4a6081a365c7485d69e2051242ee1dd091fa2f8aa35d7aadd2d0aa023060acd537922bd6495b8bbac86263b3962d66b4d6e34d49fc34bb5c819214e4b63b640e0a77b151cac2ac5498397bbfbf0302047c435bb500673065023068c31d6e136801b6053086d64f0856a63bb447c0c0e172b7327f88e1911c3e92c9ccf2ccd19a3b5f4651a49c0f11386d0231009a9762223f4207d9b0d03ede0129eb4b245d151afb4701d66158d4e703f786271cdd1ed8ad0022f0ae1e8d9538476aa40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230719889916c689d8f273f2373f28fba6dc03f2cb8dae216836576adc0b8fc6e832e3d2ebe349a1dec8f523b702713254b02305e07a954853cda15750b00a8c4573bfe5f4b281b3e499656ed13f5202ef6e5cb5acc426bcb8f5098b44c62f4f67a9e300302047c435bb5006730650231008ecb003aff0b62c226c96d7caec14caae02f408c13f0ed5c1a0b5188272d45eedda91bcab2357717cef80a41c87824420230087fa48a82c32c9882b315885800ef046390be3f8cb2521225dd28c4bd7cd6952b92c8d7c9cf3a4e42f9fa121058be9e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230691d0382aec808a3c02fcdf7ab2938218452f3689638792ede69581f542b1ca7bc7f698c18a5e013e94fd284458b9ef4023100ce744851b319fed85c0cc5b7c536f849bd5c1607911b847eac4690f45d6b1cb0fbb1a617b57c3db903542d88e2ee69d60302047c435bb500683066023100c47fe691fc22edbe4a0db17ed4e3d9005580e86ba4158cb7900f09e3d2d6ce2cc74518413c129a517706d9910375f012023100c48a659ca270fbbb1e468d436afef31c4258b5382f06a31c5845d53c84e05cdb18825cd10139ffed01ed18bd63400e960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310086e968bbf937530e0412d0f522cee95e6630e63d3471edcfb9b9d447ca8600945564cad9ff5b644a974fce4e4b2ac05802306b2409ebb8b384693016bbb8891dbc85b26725adb9e03d8e1749325dfe423f7a2f43f45ae764bd67479f3c41f2c55abe0302047c435bb500683066023100dbe819985eaf3f656e09891b527d27db51a980c02393a73b16b69007e3df62bba651cceceb3b9a655c674f99889bbade02310082083bcea0f374e51500e73ef04b541c9524142be41c7f85d7cec64488be2667930e9bf5f8ab550b265e4400c35e8aee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023014c516f9e2adf16cff22109fb0457960a19faad2cb01fd4158caf4bd29a8d56d473c9114cd7669e5f80ff28161684ec8023008cd7461f4563c44d670f01e83120b5d4db9b01730da3a2ebb1bb6a996e35f29a8ba1c5d6468b1873b7956a8b6bd68660302047c435bb500683066023100cad7bd0ab8708cccd801dc5d2f2eca6669a7d91880c9bba16b12b8e468177012da1eec398412a0fe030c58adfd03aeef0231008e7bf8b02d29222d0a84e7ab56c7cdfe88c354692250be1d76334a714e46c2788477261e9ebfd5d4e82e7bc906357e500302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c907e7ffd70a788e8e78392682383fcc301c2fdd1ce3eba5e38cc9668887a1f8dbbabed3b03049bc59b74beb5ece202c0231008de20e314f3b3ade7ed5a6d50e40bc6eefc17b6ae2b9c306b131240cbcf50f6955e4e5684024bc4867b228d650239c500302047c435bb5006730650231008d40b2a3c74486ba2af7d12b3df21da4313aec6fc389f8f696f04b09d5db78a343a388ee38e63b87485e5c7c545ff32202304d01b9d37d71972dbbeb0f2434a26c5dc4dfd5f0dce88536ba713eacd01c20cbe80fc2f03956268809a51f325a1635540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ba20509de1d7473c31891673bbfa4f1e8033b2e0f330f8d657662be05803a7972df65da97871c1a26070faa661a7772b023100949601d89b518486df0207cdf2f422673fe122e2d1b27cd1c732afcd71c7b2dffbb33e06145f4a5891e3da54ddeb7c150302047c435bb50066306402302e17bb182d1b26de46cf2a5fe550f01707e88268b7f2e13dc550033325b651bb6e4c1005dd1d1dee66e1184a4326a0990230304497be785b48cf6fb9d6bdc0ef56a60ddeddfa22f1b002eeb3563739763b146c1a2ab07767e4ba76a1f814f530ac670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ec64f4b158ce9a9cf692b1c66cfcc49796116949de3fbd93e4eeac5c601b2ff108915808df858fb645d08ef90419d4f502301ee5f3052d74137880f4228838109e165189e4b800a38db78162ca8380cdee70e4868e15d80d22a22bdfcbe5827b842a0302047c435bb500683066023100fc4e28707fb688e13ebf8cb06226816339f13c8bb105a3c095ec89e7675f2bbee6cd2737f1658ed6dae3cc44a401f9bb023100b3aa023cb00d713a23255fd72e7c8f26175d9cca0e4e563ff9e0982204c1ad3e574e0544413ec27f6f90ce002b5713300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301b40bf99475872e34aa2121293867bbf0ea67d2ba5f4cf9686b89c65c5d0c4df548134a19c6634e4ec2e2bac01a9e8d702301c728f8bb6fef0998118f632d10eff7531f736eb0c8ca7c0cd0c937f30fa217a92aad393d0e9f72602ffe33cd416b1d50302047c435bb5006830660231008c48ef891fff6f383a175b0412001e18ff99b8f73f4e2cebcf0529fcd2f4e0e188388deb15731040f9f3f751b32bc862023100c433f3d9aeabd2a827e20ee2f48c14478ec3f109f8fc95609a22fc499f481375ed11fc684a007067e8cf4c369b558d3e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a89a20a17624aea4ad6bc6735fad0909beb1e90c195684909c28d9b06672bbf5dc6412488cec1843eb37ba81fc0140ac02302b1997b34fb7712d098f30cdba4ad1dae88bb96230ca61977795fa86e8c57740fdaf19519e16fc4eed6e4ffeb6a04f0b0302047c435bb500673065023100a2ad065af9f014f1dfe3c2bc7cdcaa8c95808b8ffb6cec121f1f079f61c753d451c5f793cca1759edfa86e5b71b4617d02307347b11b3f456db993585d7f018472aead5e27de4c8985db37ccc87e778c43373a5cb0e4c877aff1c9dd584443f3511a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100eabfd632077bc096ac4526f84b0a91b9fea486fb5c12e9118a20416b07c8df23fd109d0d85cd6adbb1c649d7fd2ea16302301014527e59b96c20586c030250c8673b12dd464f209b95d986c7f7a55e2f0fa2aeb0eddcdcb1a4df81930816189bb73a0302047c435bb50066306402306e242d90d5dc162dd313fe8452f70a7b7723fb71ff5c59e90c6571e6856ed245f35f70c58dd26a5be58372f9c1aa641102305facffed1060eb5ec5920e281abae2cff8917c99cb27177c0993eb24f7c16bf6ade7145ebc964eedfc8fbf81bbf0b7e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a399ef9df63110e29233fd388adc2ab128aa9624cb641a60ddaeb7dfbd1cf6c919e46e39491db05aff2ecfc1bc49229a023100f64395e8bfafe829eb90db5cbd6e28093c0f0241cc4a4dc05cf8a0495a02070a4b63745ae5b9a7ff8fee2fd9671234730302047c435bb50066306402302116db14f93227c45bff1a58326b0eba92d9c5613309c27220e91f68abb49e3d2ed90abe33074960afe3cd945a5bd20e02303aa138cce12e2d7665a42edaae78aa7fd6c6a294787c8156a2e514420b2ef024ee629c69773762b23815f63f9fc541d80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230379d451907939b9daa4333bedc56ebcaa76a5136531fffc2dd44c27ed91eacf009ec5cd498e004494566c5f043a2c3ea023018f2d28796a00badc103226c0185742aaa7f5cbaa16eb89059702e5217fc65f8099225c37a00a2513620b983ff40c9b80302047c435bb50068306602310081e515f0902aa4563d3769267bbac2a312974f6a88cf7f4449f732a35c5e03a8e5c6af37c671366fe0c259840c1f26b3023100e6b9d151f90192c26d4b0006d2ecec71d507ec54f0a98fbf87be483610a25005c1f8fa93471494968a016f18d0e8a35b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f46876170069015937d1be6643630407572f699e542c280c10a45210c0eb5b184bca329d96642f6b7de393255ed89ce5023100bacbf8a128e5ecfa8526a7470788c3a2ea12c2ef03ab3b807710f8cf820949f4ba49022bbf71e84eb2a9ab253e06d25c0302047c435bb500683066023100b39bf209f36d07ba28cb47a44d5e8a9940544818821415ed82099429f39cff8fe736e4cc21cd9d4b14c6701768a29e22023100ca3e0b31fc931d8b4742be8b93a7e805140072b669d67c1fa8feaf83afa95360e8fa4173ac1e55eb105f2f98c0160af10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305bc518e3878c7de35987ebdf64c1a288c04efcaf817546124ffd219efd9e7cbac0b8553d645dc210dfa656fab703f98802301e33b99f4ea37b175642ba0c68a29002207cb2a3b3783013e6af99f0c3ac76b5838160f8a296f357f109b202fef312110302047c435bb50066306402307cb7996a58889bab102e5d7d4ddf32e9ee6a3a0a8fe7594004bf8be5bc48e1dde7723cac8dc8d63892fe216ed83a00ab02305befde9c6a729b843efef2c1f4ca934976636a06009d21b70167213e98ac6ffe223f3d927c0855ad6943f83570c6a8310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cb29aa6bb7fdad4a2681218a40995094e67dd527cf5202462d65dd8b7daf615a274b48c1aa25b9a91ad3233556f2bf9f0230639b1d20f9830d85dddc0b68c96a27a8956f8bf18d7deeff98f4d3e2ef9a71eb6b224a98bfa50f9f2a347c2e53e28e740302047c435bb500683066023100e65606fce22ff6298b0371cf55de5ee2c72ad6fd4e98343b5158a49efd6c8972daa02cde394250bf3ef5f3d8b298185e0231008e394c2a53d9be83ba80cce2a3c898d3887aa02b7ca04db07fc10f89157f005c4d3464dcc47ff26b523375d4e970ee860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023037b907b75597c8f7fcda1f053738bddcc867d1d0ccec1f4de1cbe93d74c29bfadadbfabe2226fbd4a2a510aec9a36035023100c871c559151efb3f400786fed072b985ac7fc35f3535806c49a148e5119b3855194213f3b69bde9c14f46b1a0bc9fedb0302047c435bb5006630640230465e598c445086f54fe289dc8a599b45e59871f1485fa405a3546655e4a6dc2d131b09e4ff9022c511915d6f8fe5db5b0230604a0b90b73e66792fab98bad42f8e7e84289bf5732fae8318019880ea7ea984a2924db18665fa4a706536112616b3610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307974b2619db32a6629775c937ad7112aa2ed16dd3b89e268f37e6045b82f3155142faefd526ed080b11ddec44b7c8816023066999c56611030bca609c422d50b2a24b50457d4386cabc9f6e0903f55f9b3308c6322ad459b88d6a60b7e1d2fa836170302047c435bb50067306502302bbaf6d9a915d0bac6afebec325bbebb49b6b3d692ec1b7322557a2f24dbb0cf9a49fe5d251eba122ad820f0e33eaf9f023100c074a91dfab7f680c78429eacc1fa42f4c3486bd95eca2213d14e77754ee14ad0907c12f3c8d138603b9802e3edd3bea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023045fd429aceb5994e5445ca620706065f32361b7780f1167581f7a8aa022f2153db6d4ac9091b6933033de44079a567c3023100b70e3dcc6e79e3885719ea7f77026dcffcf0133e3be0bb7e8e1c748f8af4853e4d58545560311df77bf4aceeb22ee9d20302047c435bb50067306502310095ecf3275ad59c5fc3ef68af601449de08d66b567bc2705f0e008d9a51635b9c4c3f7280acc15f556698c9442e9f9d940230370fb04a29731963db1f4a6a035d4239ede31f261a6c998e235f370fe870d1d3f460cd6e969ab94b93be72229ecfe1ac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e563bf5738dafb812972350c503f44ca846abf5cf6a24c921794851473c23ce3ecc4235807064290c621b4cc8ef09e570231009889c3ce8aacbbb5aa529995001661f030e1c577d2f4e44eae2dd28c3014f53da79a0249d448dd72e59af8ad06f8e4d50302047c435bb50067306502310099a9ec36bb6454c25571782b84d567ede8b8c779582d2119fdf5cd09ed9880bc25b9f5996fb87bef979679f6781babfa0230081096e2da06ded03f3698be45ef10d7782457ae0286178bc317aaf55dc88628edbf01b68e9a9c6d72f620b985de02bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230545448b96e2362ffad4ffa933f62df413857a29e0bec0083bfec051b204d6aa3f6799f4dbfce272a8713ecc23415e1ad023100c940f91abe9e420f39e7d275082c7ac315e5957a23cc7767e11c56a7e9a025ce6dc9728a566bf08c4d0a12eedcf8170e0302047c435bb500673065023100fd2210153a8c7151e6bcc1e5d9c2141043e46945754f1a43266ee33d5bffa782d6596ec6414a1b6f1d7a83f9f89adfdb023071f086dce8c7f89f6f5ebc8272b9a595805d249dae2dd9a5ecfe316a815204a97454d3d9e6acd09b1ca1b2feaf7bca080302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008a39ba0eb24544d3142ec6d35afecc58ad9e7b8afe690206285d69ac530c1a0b522baf82b4753cd570c7705214d41fb80230279b151ccf1768b2fee26cac4a738059dc1481af077c1cc4da28417cb650833f278f06dea1fbbdbc6151bd52cf4bf3e60302047c435bb500663064023010173960db24d7ba611b6eddd09c2b541c1aa170201a0a5b864e9a0b6fa9709c2e5a86487defe0e3590f57aa0e25707e02302287ebdb55f79a3f8cfcb58a3d18523b1378c93b8c670d0f9141e2b7868b323894ee251c7ae1f58eb73db0d2dc4bd6f40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310097cb421568a03b1ef14f5f7d178178f4a6489fc317fb837efe521dca261cc61504d3472756a2ca7c2bcf0f46ec4ff8c5023100e5546bbea38970b5625cf0175e293a6fdf4276021365668de482a7a9fa3e0f55dd155763ad5de3cb5fa5016eea20e0e40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ce842bae414c2bc00769137a428cf5c6a14eb7ce80e0d250a0fa58ea6b49221c7d3974c469df99a0d40f34c5365463e102303a002a00a6b9075479035e30d4dcbab4973d94bc63b3b0958ed8c03cc929610bed5f80a207b680b64655eca05269e30e0302047c435bb500673065023064b65f44b110c0c0a9681fdbac16c02551f48798b9c4584aa96740d265b4445ea77cb913783d0f07a4ed4737422ed399023100922f07e8141efeead853b055d204ab377653fff73260f5fd76b57fae91f1cb235711c0c88ec34584bc20b9f3cb20592e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304cf02ce48b89ec3ae991d79e2ed7acd5e14798fe6fbc0604dcaac196ed57ea64aaacb85e3e49e73c3e931c649d0fcefd023100a7b9860e1df9bd48779f89bb2eb1f07023bcbd33b8d2cdcb17698147da9f52db077ee98862fe731f7e67df40c70537bc0302047c435bb50066306402301f12f7b987566fd7b95ad2a2fc6e78f21a87089ad9f2c26598a825acab9f1c60eaafd4f39f44075bc75783b6f1b54a1e02304c8703284acdbb01a27e898b9abad8151aa086c85f25c7c87c344e25e2244f6e3f5dbeff31c9b7ddb820c213ac6fcd570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008d39a5b5b34de2ba7feffdd7090d0839f1ddf04defb43ebe6d710f03abcd6d889481bb35b25aedcbd62040e32925414d023100fc813891419c09fec0bd7474319134b3311e6b0804bff9e925e3ea4f3a9b4a0d2500c8eafe62ad2335f3db5ed6a76bfb0302047c435bb500673065023100cd8d5ad1b079c453cc67bec5c16e2e931ecd860b6d5941572f6ddfaae443d8f2d6ec7bd327cc54ed9436f9883a09aa140230243cd8304ecc9c860f8674285f28facf4ec7423d86436deb955fd125b32095fd3c87c8020498c7c93f68fa0d4e069d3e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cdfd0f804518e12d210a9f2c4faa3e5dc7c2be088837ced73a31428da9584307fb8892fcc7ca8b391d1f761cda3a3e4f023035ab4ea4ef4e161693abca33472b1ea09b6244d297af1a973a357c3f51d85a30a0d37a0d48913a35a034563975d68c900302047c435bb5006830660231008429ca878c9e7d5fd718e12b2faae8ed9c223d2369a3c2cbeff3c833cee3c38802a90a6000a8c5e9b2961d789c16efe8023100ef00767378a31384b4c572185ecb866ba094225620a392df11951d3acb3760b698ed9c94aca305d1988b7d37d5d6213c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fc53db038bb157490eca680e0c25c0fb340d217d8c884d495a0522a7524d0dc2d0404123aeb85fd315bfd601acc0fc4c023100a9f5dbdc2c56d0c13d7d3b76fa8ce50111865a652c619c6857cdfe320c97855da139fb24a0572d0553145432c96745a00302047c435bb500673065023100a8ea804586ede42ae2d550508c80bb1577e8afd74cd486d5a6ac204e88a27b486629a22c51a62c71025528a5c2f8961802300c15e98650e72ac32a4c3f79b40cf35bcbc5943803bea092899faa7a8891c4ed0c0b48d1b8b283312342c79d4e6d56cc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023008a56b3cc5f21a44f74186f6b4565f11f938c5a24579c87b143d09a5b22bdd898f756edd14a87ca412cd6e1d9903f64a023100a50e3204cbcd0278245ac1d4ef8130d84f680877c2f4f6f6b2b2e340945cd96d59e20f800840d109df50e952e3d8885a0302047c435bb5006830660231009ddef9eedb5ae799ca23a146c5d8d18e57899e5d7410833fd4da5f15e544327efb8a736a5e642f2ac4c2188584b220bd0231008cb163339c1745f49e1ccc3e791f3c3ec5ae9418bfb0f775168f5ab351679af382a351a3c445964a51df7a2a3d58f3110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e4a7e1734e676b7cd3051bda66079c03025e0370088c4e39b9848204fd0085934e45fe92809f0b4b242d50cc5c9465c50231008b2ccaf5bf53d71b89db153fd29b66e8d8b4adb553c4f6e99f9ba5f6590d837f588b5b318978bf649efdba4070bace430302047c435bb500683066023100cb9dbd80675534d1ab5dfe32d738831fcfbe26b34295bd24c6d53dd0f9307aab6a5348ba816102fdc5cf30ac20d8d50b023100a06141c5d3905dfe00256cb78807533b6f2acb3a10e074edb9092310889ae867b71f40f16495a3f1b812d530be597b6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023044ed11dcd977579317551d504aac169d7a93b1455f1601c286c9d37197f0f917ba2084da10f931ffd3a2ea5888461ee7023065d75c84ad47f8cf039715d93d97b09622bf2967f13ae409e3b107ecaac9cb877e72d504931ed81054b2813d7c0bc9ab0302047c435bb50067306502307cb61164308d7b0179330fb643aa39f83b09b5963ec832a2f849bdaf365d3d51b35feebcd835bfa1a2051f6e4720b36e023100ce0c1cd0cd1cb09ff6fb30503e5f6cd903ff6a69127e361aa6588555a7dc253bb13142cec8703ccb500aefc97033d80e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304b8e15071ece29a55f278dc45a7fcace358f67ce6d7f9899130bfce2c057305d7b2637f2ce054a71aff1a2a923017a5d023071a22d112631a13bd6c771a6e1b1177ef1ddecb0d7cb1a2c446d6d6937cb5840322f2e25e340f4dd53365a74b72c680b0302047c435bb500673065023100de897f7d1ddae7ba788f0a0a7a244885322168837dd87511f784d924510788ea49c6d5ea2c452e068ff167f04bf4e00b02304ecba5717d2066ed84ae4d790607f0ef437a15ea0f68b4115651ede8f0257b9189f93e3c0f76d2a375e6a118632ecf2e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d841dff91c706a41b8f1338e21538397fc7b6fe21b6cdfc2d4e4760b4275719f5f03eef0c65b53ec1a1d3fc59a074a2b0230526a15b4b69316e48e06fc48bd006d9debe037cc7828a73002a8ab70824ed905460462910f28fd3e91bddb790189c9910302047c435bb50066306402304180f2216390f22853ea7da342adf1027d8837fdbe798c0105bcef46e5b93b87eb766857a78d56f41d7bf3644f33cde802307c228dcbf9045e8d865acaaf0eea88c632aa427f107107b8e55bd46934ce0b0a854b0d3f08ed1b3951a403e20f584f2f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023033fa48db2dac5ca8698f9b20a1282aaf50c8be2772e7cd5dba9430966aff997b2a97afafe78563af6c83cf803d83e7050230409d27bff960ab1b412c4dc3c91564b502e2b0c61ea9376507186619cf5571a614e39d7e47040b88ce4b9a7821c2b8e80302047c435bb500683066023100f3723deb72b9ffcfcfe6b544d3b9e4d6468e12a7822b7286b2c5b8b6d58be5b783e615e4c510c2b41521d865111d89a1023100823c8bc5c97ddb0ad87ff9a07119529bb051b282ca1cbbf016911da7ae61a566f9a25e1ac482bd16ef668f78a7937f050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008ff4f9add14c659f24461c1c4849faaf42607166e58abd6e8ee65b08efb0b49892b6fda35e37331b966e4bc1fef5871002306a74e5ac3875f068c1b95239385a8c5e31e4b90ffa377ce5ea7918f3a2a876648f2f7ffb6a24693209b8fdc85deb8dcf0302047c435bb50067306502307d57d09015b8e0153dcace49acf2d374cb5baab12002c7043ac8434adf2b4f33821c6279b0621c5e9bf585caab788486023100a35399c2db26ff120f1b18b1a17ef4b1747dde82fdc09fb4c6d8db068d18700e7d7912e2c77335eb0addd715f0044cc90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303b65a6bd66c35838e69def359618baa9eed47816348401147a192153d426a092af75c450f534a68acde91c34b35a2df402304fadc81381e6c2a5e8d0b029d50553e8cb60098a8b781cfe9fddc610dc608df091a3e8bd8ab3d16613b574e90eba3fdd0302047c435bb500673065023100cfe385ea7899000b654fce076b2c9cee3f753dbe6343151d2b2137788762c5c7717af91b227405b7bb48b1d09cd3b08e02305fe7c99af63a134bb359c5ef956c04114b205986e1ad3abbf7ebb85478ca8c73e183ab09fcb545ef434204878be67a6c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023016594a48e7f45adf2cdb19f244353de853bf019c08e13fdd7255806fa6255a76bae4cd6c13bcaaf51e8227c211486826023100f002c9105ee15eb9054ddd7005bc3d02f44242302267503acd2a67aeaa0ee15b9e9621cc5b7d970354982d7c828a1e170302047c435bb500663064023045fcc3c94f1ccbbddd5f0830ca817f5c52f6bb7c77ac6cefe19610d8cef494cd294f55e79d325031102c646751cc7c4502301f9f0d349d444d373f2b4a4b626f4894bbd6cb3f668f153ec3c78528dc3cabceedc77a5da5a3131e0bc6ee95da8873730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307eb3942d754bb8e3e88d20e78cacb15fc8ddd9a70438cbd5f18183bba97011a0028d9ad65c9bbca3aa8002d3437d0e5a023100c50803dc22c6be6e9e8c77c2bfcd1ae43b9e988f4e126d264c91ce6656dc9b41d3f17d55e50941bf16fc2c375640c5220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230694eac6b4b7127c897e1465973f94095a03ab91e16d41a69cbf28f13022e08ba722b1f4d05788712b6cd9a606472b4e402302295859785cada88afcbfeb8da97188fe0e8ca6012776781cc60dadae006e1f67489a38aded7c2d050183ae1b61903960302047c435bb500663064023014b559fba936ca7caa5ff6311368cf95f1529cfb8573cc2edcb57689d753d4ce9cccf6fb67b67d709c473b25ddfbf4060230549d876df301b7bb5b47e64be0f4b93b9a1f184681019cfb65b9b4632a36843cb8bf8aecf7e1b012499663c3748183800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bb51a744eb4e06e7101074f9394de2caf211bb7ba259df8c96f8d7e859dd3333e35292f1ab79be2c998a2a83662ae3ee023100a462177b0934b111fd047748f895e6a20bfebaf01650a090c5441b716142a7889e87deece206f9d415ac0af1c60ea7f60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009633991fbc2360adb385d9060bbf6cec5978df1596e76704672b95a05eaad8dc6a109b976dd6d02e9b1060e84bb5e640023100b2fc34636ed0a345b6f6bf46b1309a6da76bda76f3c6fdb376ded2d3014f48a27242bdb6bb1767342cc95c97b2e660a00302047c435bb50066306402300aeacfcd16f69d211ef0bb97df9307cc7bc6268b30f22ff344fc9eade6a92a5e4bd7203ac833eaf503d48f57694e7129023070d845ef07fd7e1220c714cf57173d381852e71bfdf6d6097f00bbf61dd43ba9b2ba13f7fbf61e746c2f99d833aa9f560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e1342dfd9f8d10ede5b8dc52a5fbac5ec3f518ef4cc32c8a3ba092e998aa7688c59312bf4b1734abcf39eaa3000c4202023074756c9fa7045f40bb202073debc6ead6f2976a2a68b9745f4b0f286c81843826dc033f61b419dd47d0dd8d74d251fe60302047c435bb500683066023100c1c768c4ed16375d4eee84ed19911013ee791ea8b3ff698c9205f7ad20ec0390aa11e50a81128864a86b9fbb45fcc2d90231008f8566b2a2393a84892c2cd494388c1c41f8e8b106c3ca0cff04c8d3fa59d355360d67c10d82a93ae80180b5afb1d8c10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b4ec933b475ed34e66be4a8e2df423eb98e684845ff1d13205d8a67f3697d75e3ad7ede07d2b31850ffe7e91b102134d02307ed108e0d5118433f6237884a9e3744597c03029f45d69f18c9ac29d036c83282f511f010b8b7ff6e6ce5c7a85a8681b0302047c435bb50067306502305491f8843174cff4822d7ee0662dbfc6c746a380b14bb0264a2eed9f32925a2d5828f584d11ae17a87984ecfbe9a57490231009ce7df6ef44df402348c9aedeace88fc058e9ad43cb3c49d509d1651b7130700f3b69ba89b6e8b65330d911ad5e0876e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302b41a0a4aa4cacead6a7d6b57e50be778f0559d5feb3bf29e0d45583af21cc7d0167d4defccb59f3e7708b42673c7e4a02305649a0bf32555c88047383ce6d26fc540e2f5ff86d5a4c19d8a414a8db06563b89d922ffb7729c8c7c271481c32c95060302047c435bb50067306502310080a51e50a9132bf5791b2295d98965700e73e0197f9830383b552d88c024a8ebdb3d5876d8a6dc7990a54cd966536bb702304a2a0895a9fa4dda3001c5e58564409341aeb9744bc27ccb330612d71b46c84d437d4fa12a6bef6ba5ea7b72b141df870302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302ec4b815035e35c9fa022b535ca364fab2634d65ffa8f79344a3c191fa2667f7f45f9c1a49025bb9cf3692896b9ce9e8023100d73e7bd6a3c0972fbe49c8f0b7ec9ec1b30ad3dd105649812d69f22ab51fc5ce15655ad2fb6a2216df8292426c68cc5d0302047c435bb50067306502305c8033b71cb523cc9f2ffaed12be5a8a38d4e36daee40c77ac6e7b0b9562d371637ad3d6036c88fa515a66667fc4c8a0023100e034e711f5f4395e9be36104bfd53b3414eed72001f846206c3a6941b4b070ecb64792d6deb45aeb198ddd648a26bf6d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f55b4a0b739ff4e788166585b2c861efea592631b5eaeaa4e6a392d2a2f7bdcc8256d91bc0499fd92c9701f4019fe697023019034c143a41f502f8bf546eb97568c2f54998f7a0e8efa2108e83f9a29e6ba4ef80dadfe1f101d3029badd67492f37b0302047c435bb500683066023100e90a34f87365f6844999d2ff63f44cbad6ca7dc3c1cbad4f2af87938ad03d94a392a5f50d652819e9d6f0f82eb0c918f023100f3d3081479fc97482649271bce380de48b63bd6d4631ff1f60bb81bf418b4a84acaedd552cd824e38ed8a3df6efb074e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f09961487be0f4216f8765876e4a7e2c3f36727f0eb2d30e105ae5f99e418a0ba6ef957f6877f67653e69563d44a472e0230690b600eaa9d2510c6dec44e5d4d61c58326fb717535bf7a639a180c753a0cec299a7fcabc0f897150119ffb0ab887200302047c435bb50066306402300a450d2c076f012a60452c0e00a18c02493591012f71bdbfdcc5584f55551e98eca7739d0e9567c8d219459fa2d1ba8d02303ac4e71fa8f50c3d5d224cdbc2ce3fd4380dfe25816cf3418f38ed65559c7af14bb194dea5019ed859223c033c22f60e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301babe938b7e13b1938e2e639413118fdac0902e072d1a06828a807349008b1ca9c480246bfb8641503964554433a6d3d023100c8b1891b43b1d9dff689726dd3e3740ac47e636c93ec0534f6880267b0ada545c2f2fe9d9e51822b27cd6db71787046b0302047c435bb50066306402305d510192f8beb9f86725e24bf57bf862d18a176a85b69c9b3697bd9ea8323d9f0753dd162eb45ce774c66483b15bd45302305e2d63e79b9f49325c380e4a7d59f4325330d31bc2f260ba37a9b53e163ba6e6d05ee507254b568a7d4a4045b5da29af0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310095952a843d542d91fdf68235b86acffcd35c83e048de2d59d27a0c742125f884e5980987cae1996d605077d6f090fc330231009b86a550cddbfd658b5f15a5bd2143cf2684114392e37039cf067ccc47c8533c7834700e29d4ff6bf54f1550219e93420302047c435bb50066306402305a69fc64f2972a6bdb005f8586b51ba84fa042a4a2e5ae40d5a4a8997023aa1a5f9f39f80fcdac4dead37d83251366cf023077353714741785d3af489931a710bcfb4e89082fc63d850160df38abebecd294bdc773f141b76870b398b6b0fbc12d900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303bb0a4fef8f8a1c3f64c6fa8ea7e5259867d67f0eb0ce56f9ab85c55f4eb286f5aaa6222f798bc459ca1d9fe835aaa41023038666701ccad847d3b0c2fb8a799abfe1a516aae935ef1933318eb28fdf3e53356e38d943c04019f1f1a4de7c32660cf0302047c435bb500683066023100bd3c9f103707a02bf7ef042dab1ddd9e201c8ad75ba1de6dc7fe0f2857a2b243d8d0d4c599d1c309f4811afee5433b3c023100b6760e0b68474ac5a98da99880fc833fc7450d5bf84cd9d5a1ed5d46361ff13ef4c1952919533d502052966c6414f2b30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301c54f7f7413f3b9f397166ebb7c50ead65b1c3b0904cf3e44e54d7161c2761d458c12d238ff3920f486ab8104b2b1ee70231008a4c25ddc5166a3c9a499c14b314e9c41dd39382158fdf161d2378fab042f0b55637d1b9dc5bf2cf9feb2155f57302ff0302047c435bb5006630640230198b34c4463be332928a178c98e6292ac16062b41509d9952ecdd271afad6a1e8027ea5e0f4fbbb200cf23b2fc011edb0230602abeb6907696b9ccd5037e52c4e5c3c992d4f9a54cedc108e2809ee21569969af54589eeecf6fab4d8b57ceca13ce30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009453889196cc17fa92f327d6b5206c2ca145d56d501ddc5667dde7aff0afb5f3254fa363ef9e9fbfeae8027979a7bf95023100b179d14f4f184210a406da6853c84665ed3ff60f916b60e590c822a0d42ebecead91e70c55832f3717ddfff2ea441eec0302047c435bb500673065023059e1b24cb15378ac5782ea3f2f0df215188c5021d79656be405fe9e387ef9a7c417641487f3f277e4ade04e26f0942ff023100d8a37eacf0683626e0359e7ea0b154fb2c4b5268edf7e0ef6fae0e543113b82f16c4951b3a7a78c8c31465b7909f09ce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304a56bae1229bf4e0ed9e9989ef9a7073da675e6534fe593c77fecb3ed141f3341a4b4cc78cb172fc993dd5ecfd89ed99023100abf7ed4c8e2156aa16db3bcbd5ac80f87a37a359a5158d760773624668fe06d01f5c5bb5401749c5070fb70dccc5e8bf0302047c435bb50067306502302a232c123ff10d85f0ed7ba6a6c68cfdadd0901a67a0cd06833961e62adfd1ee87f4affbaef2c691a1bd8dd588c1bc10023100efeb04d1125ba8c0ff29f16ed2d8f5eb5f6839866642ef26aad15ccb77d4efe4c09da5eef091e4e693624dcc82bcceb60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023015c577d02c66f67c236b130b93c6417e26dbf8bc72922b8cf5466f89e7f84bedd2db653c37baf669496df6d8980eed0a023052dcf2102f6dda8c16994bebffef8a987e0cf73f94c873ada1f8114bd666e6ff8f6879b814b7eb8d65b15eede9e44aa70302047c435bb500683066023100daabebb261c4eae98e9baecce38a480788a4b786577927ccfab32f3c4c9bff4e7788d7a69ccaa7e306651ac6fc749e4a023100d3be45dcf80c8f1fca91c579b359d1f858f1fe7060f5520b44eebd30f6494a22d33e0100038bcb2bb3eefbc67473bd9d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d63d3a0bc2ffc14235fa57ce9287fab9893a5973c9a5fbede401d09478972cdf23e119e31410ce17177f6979321c9761023012cc77b1560f5e074db8cc0a9b182b980ab3e98e5a2209a12c178ccafc4c89b02e2da68fae8789793627c8cc5016425e0302047c435bb500663064023035656d92e1548ebfa7f2de0f07b1594f7300ed3c5f8b8548cee151ab194b2d57c60d588a4bea0fdcabc2fbcf72a2aaf40230149163241ed7a941b7ac676c850fc15067fbec70c87f260d4e971e83dcafe1dc09455730a972a32337209e39d428e3310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b10661218cf40804da16957d7a8b60bec2c89e9d1f1456eea63850807aca2200e30396043f5904fa795c1c939a4074600230095e386730e5fb527a62662fa881b9b6dd67578d4c8cb5018cad88fc2b4f56d623a92f82adbcc158c674f076bac008de0302047c435bb50067306502305ae9425d2a56219b2bbca232770bcaef6c283cb036b2ef040ddeab51f0175bcd588d23ed5ab2808f6b74f8fba704856d02310089bffa900534d37d58d9b5d8cc9b7758654ff2b2abe34da07a559f302b2384384b9957ff4924d99084119b314012766f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009aae37d831e9ab70dbcc65c0e1949423450bb9aa0226518f69dfcff18b0e29e2cbc3e70ade49d74ea311f3e851aa14be02301cee31b5cfad446121e5a951b84f7e83d9e2485a050e6e985e86fbe340840d889955e5ad4b480151896b60a5b0a751e80302047c435bb500683066023100da5af5d72b7cf4a3b05d807a98f274269356c3c24d1fb91fe13be2fdefb1be2017af9c582fa456294804f078609acc96023100874b7e83b3d09dacccef2c79f2fd8e62462a8747cbd44773e0afa41f0d8089f8c63bb2689bfa6aca9e3613d4de8db3e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230285780a22a382bc9902aaa00ebb50889f626db607fda809ff197f65580e615247dfe2eabe95c3f60340b04a616b58ab50230047fbc2ed8b1c4011a719d5cfd51ea24105563a08520427d85dc9453f0a4f93d6c94e65cb7bed0a40496676ed7e852050302047c435bb500673065023100bb6590d542430b4d058abf5a0e2454b5ed34260408939ae7ae77a8dfa6a1e26e0a3faa460d9fc5ff712002c9fcb77814023013097badb9a99d439a0686920e55d49b5983e809765a4cf962b64688dcd790da4fbe097009c2d9ad552ec06871afe3ad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303860368d02f2b61838d024a8d8bb8e507831f1236bf1ab2e8937d2a61f63c7b7466fe8a4d4400e67408b8ee0c238907302307e5ac9b1fc1dfae4266f6417476c9264665d1a3b784a1b544a680b9b21e2782bf185dd5b38219cfd5ce717533b546da40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023055e8076fe71668c2c19c3737f1b98f4fb094fd20bde101bcaab9c58b1f3ef99beffd202ed880a365be9b03992777156c023100acd87e7cae012a17cc8eb04e08df48fbf23ac4578820aa2c87b6b3755840e006428dedf59cc78a37b785c3d49b0c6ef80302047c435bb500673065023100f9536a2894fb95875e46aacf3a4a5e1c3bf880a61f021aa06750aaa8cbddad187b336f40c377d096e1b76ce87f12597f02307a3f698df2dd96decd1bf9b04bea2a0e446cba84612de289e9a5f971f68133f5fa9d0733601dd2f25a161b6a7fa7709b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023001fa07e78ab8608d065e7b59c6fb825e8960d15eeb964d4b141b2a8260f35f82c7612aca771a5ac56679aec74c2c4fcc023100a5855947222da716d8281316e924367c9dcf98ff7d1aa74d9497811672e0d91442f0fcc39e8bb151a3840b6cd1c1b57a0302047c435bb5006630640231008ede68b68b0817bb6f5ece3368dc6067ef8f561f962528f41e1f746edecf48bd7bedaa599d3ac6cce7a5ef421f37639e022f5da42670166cf4ad56d6157b6a2a0e1133a0e97c1342aff730a3e3544b690f6ae54e5c44f5fb5b2a2d587cf4a35a1d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307c9ab88555bcd9214284e435902d45179c7bb1a715d17f41d4afebb08f94f6b0e1d32317a158d4ad9f2a15847e011e6e02302a81bdcfcd4d21c17dfe164174b097300e2dd66289d3dcb12285c0a17efa98876cd84e66dcb5d82c9ebb410894e0fad40302047c435bb5006630640230773227fb8b7bfa9b330523b2757e48cf565f6fcde121e88fb38d8a62d3432feb66d4a4074c5d5f6e812c9250cd75c56d02302bee8e488854ca6d062161d8d616327cbda74c5c9a3a1191e17f30f57b69bf00175d08d84fffcaa18a889ef6ac2bd8c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023067bc1fa616b7e579eb31a7fc6b72a224b90c0d222342f86248b0ff76e692bbb2409f6bb0addde8cdf70bbd9b48919e83023046c4d25c085c8e775e6c1440b71a5324cc341c6cecc3927a3886f76c602d27ef1a2c50f086b2f2700fc6cd723b9d75d50302047c435bb500663064023043f87eef1d96571a3e3d5eaadb32409bdcdf83b925b07ba64ec741b185820c842130a813a9bca25811728635aa66281302303f1d16c83a7c7b7164262c208acfd20842aff648fe3364c5979950e18706bfa0920b7560aa3b1a80bbff57ec27ce56560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023046d0c5041192b0377d17711c49a305574eb787c1648338819e1a571d795e7b6f4ae93c6ca498bd6bd5ddede8abbad6a902310089a9a6884eb245fd2ca9d28bb300b87302810109fa7ca48d951e0de01c3cf528ceb3d8f8c9ca62805d446b2a1c98b67e0302047c435bb500663064023012d6fa487745c7359424510eb505d6868f8deb04191e79f286cd06e1c63339b7e9de19612a9d5c4cc87a78545b90716702306ca9d4b7cc821e1b9ddca75d29096646db496652c7e230de25a1b6e86d6d36b512025416afd9a70a853ad1d78c4ac1400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230264c8761f53232c7762d7ec4993e35040cebd10b29e5c8142ec3edc20e7447e3bba17b72a594b0bd354a2df3f5c0b8a50230467d90edf74d9660ffd314f97124b56e97a55a702609b48e472484f274fe8acc0fc0ce09a6c06a7edcd863159d1defd00302047c435bb500683066023100efc53c17133578491be0aa5c0e28b0d5386dca5f7a819d1e440832df5a84618d1911d43956172b0c9069a877dee4a92a023100ade0cce4350fa162b4f4b0f50714ab082053081ea5bfed885b091c897f7c07a0ea08aa7e66539aa76c3465849e5ae5310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300c3a40c3093f6d6b2411fb44420e0a3a53d85aaeca4e79f194947b243a9115ad45e29701849e70f03e979ca180cfea7002301a5c63e8318a33c9cb6f73803f7a97f37d24244f30d9261396e51e464f8c75edb4b49c9ee3de71b6bd00085d8b89a5500302047c435bb500673065023100d3a6a5dc62122e25e2ec04d14dee372447864f2bcce17d8cfe75c2afbd17b6a18e4b01f84f291749dbcaca0bb0e6d2b602302f504bc2f169f15ffef07cb03230642b086c4a12185bacd81eef574db3941754818fa12ec8b3efa30e336bf9be1c19b20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100886b238d8f441c5ace8ac3ca0c8404261841b443a0fea3317fe1e5cf703889cba27e77aeb48de6a9937cde3838711e20023003d132b1ef7813ccd0797249c332c143ef843d2ff864ea59b84ea098a7ccaaf9cd1338f2c976ed23ea4916f025a413130302047c435bb500673065023053cac473728974f7c62ddbe21453a268e4a73a54d71b8d3eef26b1d124d1d5fecce759046b720789f2e2115e76340b9b023100c912d2f490f69d81f5e55a710881cd9ad6569abdf50b2d8655f4f3f4c42833c362d9de5d68e65847d89eed778fa7303c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302174f54019c6314c38d7c03e9cb39b9bb6142419ee29ddc51f6ec8a5ed9f1f1fd3d455882835348992640355452c52f7023018078e51c5ad9caa32e33ed802946682c6168e21c55927e7667af9bdd6bed98df530130509b7db43ca0716350331bf550302047c435bb500683066023100949b86e0d2575934026e139eae8824bdcf57b015ef9b05a9dfb88787ad05c3cbb065351217f5102bc71a0a186a37885e023100944c8bb5ab7b6182fb479bfac36fb173e016f898681122f3568dab7f6e4897e12a616502f7cb9c3a2cfacd922b8432900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305e9f971b4897e9abe844510a3943c0c4e3c5b54076ef036fc20234e99eabc03360d46b6293bfa1ec9e4ba74908cef61d023100b6947ebd5f827ac75e88c0f615a6ca016c8c94d89b4827375487518871141cb2abac65e1414983f20440e3cd69f3ab3c0302047c435bb500683066023100bd06f97dbaa6c86ab28655174a816d661d4333278190a1812bb350261c71f02be8cab298973201ba48fd503d86980728023100abfc8f54e7d815c1af838186ac9609b6b6eacab5df371c18cb3ec7e74bd28c911859c463541baffe0d58866ffacc3cc90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fb8a8d276c15e4127056ec9be5793ea08b757f4413b9a88d6a8a49ec9037710ff09481ea58cfc9e9350a51f0f9b86e5e023077e72c75877c6c2b75a9fc7c1dd67bdf997c27aea1fa304c8db638890688eb95f565b805158c50b4ddee806a3a716e340302047c435bb500673065023021c19b02dc7df9f970da90cd8306e227ea5d8f9b4adf2b17483ad0ddbaa9ab3aa0aa7e9a0d4b3f0a1e7641bad86b9f06023100ecbaef1adf9989eb2c2ff747ecb23b91b6e017ae2d6fc48ff962dc33062a2d1734fabcb75cc27c9557d6ef62ac187be40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304df638d8ed7fbeb9e530d2a59b5ddfc09d6904e9236a00c0992afeaa4ff80f7c6a20b7ee08534ed947552ae778b0c80c023043e368a29f17cc3287dde9c21b4503bcbeb1aeab5b75aed9d83894d821f9d45c8de3a7dde9c00768a6e40b76d82e94cd0302047c435bb50067306502301ec851fee4f20fdee6e27b405a40e1a991529c805aeba794f08572abad5cfdab659d7f7409e3961822e67b02d0223ed0023100adc9f5e863e9d5dd3e0d462eeadbc537ce32d6952b929a68e4ffac25d6e17024b06c470dd809101c8b6d4e7ef3894d0a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fde52d3785e55f0f3a90ebf5535042f409ad4f81b0481f864738c0cae4f1361ae437478b510102c33a3714d520b9b48d02306858316c1e74470e63180de0ace84c6dc1b221801e5ff1f62ea4f0d2e9d827744e578e1a907fbee72ba8cf6049ca9bf90302047c435bb500673065023100b56a7f5b5354c86b870724f61906c25fb0a57bd168b9082a63515e9b241f9d69563b543b112f70852387ce22a553c98e02300b9e63c4c0a6e03d6ca66fb98df32194f436824e9d98ca82bfc88af99296f7abd4d4c169e6a0fdfd2066ad34e92615220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304be3d444f4fdd58fe1f6b9aab25867dd42063875241797bb878e285e708736e074a197e8f58a9b35adac0ed4666d4c5f023100888441e9d4ec86fcebb5c6c939d44b7b6b6f1f90e5adf7f7ef956054819d110de802b8fe9e2557758879378e1da3aa5a0302047c435bb50066306402301438a1a0ec724ab412d5b3f207e6868c49cd9cfa188bc4b2b13edb3df2435a7ce840764f3bacf69f4e411aabee0e687802300d0dc0351133d98d2513187e3c6a47f6c8eff72455474fae9a2a57da02d25d8c7cb15f28a6287ec6c490575112a4d6e00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302ec10d9ca09159f935042bb27509de17ff7e5ce710e527a0616544db0f9bede47d624f018261b2394321f1fdf5d2f903023100b62b64d4177936bb0e9e304f000d74b6660b0140ed84fad3fd32e3b6f23ace9b7bd81e13ae9d528a5aea89e1007840e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304b96263e2d016dc5e53319d669c8718fa882f5236ed643fb3821e5c29d42eaadb5a12793eb60f95a6e03d42396cac3f4023100c86b365b84e671df4d16adc6a1b0a5acff21cf736d0a1b1497f62dc93126858e9089534f9ba92df9a9a2854b8a54965d0302047c435bb500673065023100ef87b3ebce8fa4ccb62096c81830e7fa22cf8e05919124847cda9283bc3163292216fcf80c59e6a400f7059d96e1b1c302304c567f3c84bb4035a95f3e8c4d86303c8ba44c8a112eeda9749b4144cce961bdedd04769f8da1aee278e1c7bb855e1e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310096705d6a54099bf7222a3c2d8e4266be1dcaa56c0bf4da588310c61c499e31d6b8bd354f780a2219c1854cfc0b2fb0dd023100a68f32b0c6316a8cb45bed49a5c88d37ab211e96108584e4d18afed2b5ace5c5f43d76c7c7251e00e92052eadbf344ee0302047c435bb500683066023100e7e1b678d5bb623e123acf726a26eb12466d720cfaa1c712bf2a168219b541119c7370626a9512367dffd813c28269aa023100e52a3e78538fba5116e937ca025a182726413422c6c05b009dfbfee025c2aa96fbc97ca510c0cb2ca79ecaa1f41109850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230017cb90ae8b56f619da5550cebd07f0b6775d31526f4d64b0fe2c09d3bbc348ac6e990a9300a001dbd73847f4f9b03ed023100dfe9742bedd8d240ee845b893d08f052822cd806f63a43efbd41bc57c4bc31aee8a8c9f933433981eb8cfddf0dbfadec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305acd0c8ea8403c4ff591af2fdfea381a83a986704ee1564418e70ffaa4bf5b2888c5d0e4e0654385a03069f748232640023100928cc75638e6585db9e2cc96dddfceaae2c26280445d589e69605ab98e30fc8ba4979af313e5e9f6af318f5160c4a0470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100daad329ebeee3b513da5ea1d07e173055e954c72caf8bda33d025d7b044bf83df13d71982f5fdc82cfb3e19ec498595f0231009deb2fbd27fc8af70cea3a544daaa4fa92006b731a3b6146c857a5c3d7b4fbc82636b081de1cedff719dcfbb0350dec30302047c435bb50067306502301180c38cebcb77204b90b8b9cf7b58fc5fa23e52dc47a551ab0a8b198a7bed96bc85c070e21bc5e0b926356110cc317b023100ee460f27aeddf15540df0b2035997271d5665a8353e4403584c04adb7cb1c36ac9e798723fd97a44c7e9571b498c1da50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230111413f2a1b7510f6b367e2f6dc36eeada57ed6808f820a3790727f5856cf33263ed0a3406b940e8ae5cc70159fc6ed402302f83585e6dbc82eb3976acf096deb1a50c331f80d7476f03ff04d0ec86bf3df15b1237d00da07a49693d73fcf37ffbaf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e4f4a1ad928fa3859164fb2bd6039a9d6cc8a676df1df85f5ae72bcb74d898bdc0743d7140a6adb13b04d663d6afee1d023039ab82051c87f79595269396f393150ab014e7541d701494db0ebb25b00617932725a9aa40beeb1f187394af995431290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100befa64beb3077194a403db2b700aaf06286862577dd0fde2e0e8fe3dc992cf6b4c9c4b86949409725c3dea266a9da2ea02304cb0c77a62eeaeb9cdc9129b7b44ed1ea8964a738bd4a04b6ca055be6de79bef0ab1bf566e86968f2908d3d425f0faf00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ebc68a6b909b859a895655225fa55dedd5197d8a2f8e3ee71d9c05b0eefcf4a7257e116150f563e6afe435a56d1eb26402302af69eb9ce75ee57f7d6a3c2ecbae1498bc7efecbc1ed41a27a25c8b4b2de4f0cb76a888d79ac422ef4377a12285c0590302047c435bb500663064023006f7063811927f95d98675a9ea87bd2e29a520e80d1c6402b5d6b27f346c49efd8afd1cc44f7d4ffb9556f02854623aa02301ae39d6a6c0b71fd333fe532a4d1dec63284d5f8a7d215ae0648db1246d9581caa2bad2608b23b01ec9b2c83df679e910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100aae28614bfea905816c98d059b78e23c43ab1c89446ec0a8c6dd74d4708153629e085f47951d33c8f2e6675976ff503b023010efcc9fb1f25167993aa6ad8538d9515edcbf401df069155f8e1e295ed735b7ed220413d22191b2431ab5ce5dbe93060302047c435bb500653063022f7ed5731f31db337551fb1bb4cd80869376723b691dd94badf43d7ded6a2ef4698e600b244f5629d25df8969bd47a6d023012a4ca4ff19e679c8e38326e2151764962b31d622c4b6a1830d2ebffea7bd11f151db106f1b6dfa8f47d88b0bd3c07420302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310096ac01492a8bc81418ce8c330a1549d3c7d3828500de3f8773688f323a1537d16cdd87123a36c807e6495edfa4148c5c023042a7b9a53f0f1be8e555877d544b9e6bd74c6a5c9d39c7a56da74349add87be9101b87f8d2411916b608d3cd67d066140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a8bb831c44ee8293bb94b2daea462a20fe9f010054dee8faad2944a9b5a1743e74c895084971c5ffe4b6681da374fe77023100c777688b0ca80efe3fb6c66437a207e648d582bcf2e9c215e732fdaa0d29eef6901b5e28534896f23b0a42b6534ed0e80302047c435bb500683066023100e1c38603eae1dbc1367db11ea5405990ab06c414b1fdeebca444647824ef9a1f0c9fc5cfc91c324f8fd39322e308b2290231008c4e8e7f2eb23ab049cf957f9b7a24d0649969b12392b1ed22946ec08c0699deb2b9b535e4a66683b93681075dbf9a390302047c435bb50067306502301015ef0601cf77f1b82969a9924aa57d077c9cff79868aed0ec6b8219ded620c9dc32e1503c487b8552b38edf35f65d9023100df68199f0794513a786724530057aabdbbbe71419d04a2bd937b5efaef3bdd3e1c435d7d38023866d9480d02383ab1400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f3afe02f98ce74e9bd48ff3af11701fc1eee6da0aa5ac6a44b5ee4431a6ea85f4fee903151b59fb4501354208854fa7c02302db6f0732fcdbf155a199735194c2ee767fad6712a88da573856581b0cdd1f38fa33ee2b8171c11479d9e916a1b8b4bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307ccc3b4ace5b44382d859370b891c6f2fd3d39b52dffb539fb041c5d88b264162452552821149da4374452e13d16a3f3023100c3f6a368cefe33d55be3a06f9ff995ac7b311f4fe0517e764577bced17de2906480eb43f39505ad48a1a0650b02d61fe0302047c435bb500673065023028e3f85db9abe3bbce17b7d35dc1d7ad1b7238726d751dc306612d8a7e27fb4e07bb4c2912f074b181dc49b66adca0ae023100924c0b67139e9d4097b74be975117f231abc134dc13ec0ff69113fe205e118239c561e223527cee1da2a7b0842ab41c80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303e07b2b38d58f089e386072fbbc5a4ec0c665c3b3a2260c42dad3abe721d6ef955a8dade69d52ef92b64c2c4c4657619023100d1abc0a057f876c19d8df44c7ac1e831231c41f18208b5fd988a185114e04b3e01da9f94338c7e6f636b19a0826a4d180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230091a93928a8a6f4bff425eebdee220455b1c7e7e8f9051e1fbe30cd3fc95d361eee2e2fa4fa41494628654105df55424023100b3ede8afb772018729df172828b3d299d3b824010515556b098a681d4fa3053ed836f0b363dc9b86f01e7d8f32fcc1bc0302047c435bb500673065023100dbc14f237c1feb918c9e8be10a71ded92cb77f8c60ca7c1ea7163bc6f9e23c78a1d5a2318570930217deb178e00fa617023072f6c1c54b679784ed8a1bbc304a9ba7bdda2ba477ace7f1e947a5c7f5d2ae7194cf33f0cd2ce511db7c803a7a3bbf570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304931c9b714f925d1e9c846f731146153bd0c45af9f9d00371e4877719890173290689a307d0bffe66237e7ac725ff6c902306197831907b07181e6013df29bfd37510f2388596dfa62e06d03d2d4d28fa382c6224a10be45990fcf2e23c4e332f7420302047c435bb50066306402307152bd3a5bf138ce291ef38d6b9188c3a406a80583f57797968bcace81fead5e09f1755df6fc15a56999317448ae079b0230613eabb87bca5e805f8db6324e30ab2825c3e3b6e050b800b7be4ff11dd4369f96ed3c2a63a5f4b3e504403bfdec1e370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d4f100ff82bfb56f6b665c88f1c79adacb6137dce31a3224cb064b4f2f0f31fa770bb3486d7342731c3e1b2542e8b2620230417be4740436095e85ce694c9c19da5521c0cff0c94b918600a53bcffb75e0d92adf6f5bd7a05e3e9ea7b16acaf186ba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b7bb766b2fc4431a9b3bef0d06587c84c3c096f230fcbbdaf6775df44a1b3af1626b3cd49df1b43b29d32ed6b021138d023100e56ae538d946ac4827f4f7739cd2efdafa6877660d516d0f7f00c364d85d5d22f92bfec127021a168f51e6bef371c3630302047c435bb500673065023100a2e03051532426bf4902de4598af0344264fd4aeed27a2d2f0efc95497bfacc749f1a51a38daa81854f9296fa485bf6b023001869408042d88869eba226ceb68c81ecea948bfd198b51f45b930c2efe0b27b1295c5a2436a1e8e736d7248d35677330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306b51d32e77f90e74428101e1fd2bce9036bca9db0bfc9f8b337690cc1e870fc9f1dcc12e5af942201225eec39b936cf3023100c4def64d4bf8e58e81b5fc175415e54cbba70fca4371aada4f93bb0be8c8e39c2a69c37b4456663ceb3cfa73d88801190302047c435bb50066306402303d00d32704819ef8dcfd08ac42bb3e895b1af7df9372702d8ed14912b52bbebcb55369aa2e305866f9875b55b30d7bb20230189c4402389af56256c0493ff36230e268f689cb9a4c7650266d4948040881da9a6454f1a1da06b7be8f573e0b3a3aac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300bdcaf84c911b1bb203c79b55caefc16d815b1c810b4986aa45d66b721605eb31d95e729b249d5a432cb0d8c79d22fbf023100d014bb6cbb394efde5f8d9ae04d269ce6ed2beee64f4422fccc00f1312c09633e73ab67e2d27afb80645b97113bbe6460302047c435bb500683066023100a6f41a42dd34a34874bb05ec40e50c5fb1258d667674a368070aa2305fd1ed401d34729c859efec73b9d4ff37699abe8023100894a63da0da331d54994ce79456c9b47efcb9c4139dfe0c74078a4cd329c247d132703beb9f71edcd7ee5e10df29bed50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303a5fde991d4b077bf25b9a4beb2aead1e184db96c8b31ef7bc7ee9e9fdc314ee8af036a2dd7af1e3df514b49c6d221cc02307db2dd73d4cbd75cd0dac4e669fe69d76f0c76ef22ea5373ad3176e8e189e8f4d6a257e9a0245871324333965b1a32260302047c435bb500663064023067182157b64d6ff3174864a7614b2a45cc18610ede3874bd881699cd6530e811cefd9321c0e66ba74ccfb5c93ffb487d023016918fd7e3a7ce3a14dcc8b7264df0e2f48011ffe0445ee7b2de22068e8255074b5b84bc3d92ddc2ef2cff0caa626f9a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304ed9fbcefa4e2c6b9083d8f37a5862a0ac32304ed1c7a8daf0da3b892c960583a28e6d29735950e9d829f365899a26b40231009b787b512ef50dfefbde4a8218059d1da26a22308ab346d87ca22b4a8f8585ea70fba3faffaea8a0dacfafa011d7ebac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303e47436be1117ea71489a4475fbd717c2de043c3347a735592f2747ad54be2c213c47c861327cb7260f1c397d698d48e023100d3379dc8e71328e8cd2fb467869cb8900ec3a687df1d36da3492f198882f0a290730ec373dfe4c1a2ce602974b89c6070302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023063768200f156b312e1bfa09b1171ddc5f7b2b76abad0d196349fd3c557b1e09bbb569311c6aa61e3ff6d03518217905f023065c7c0e208d566c7dc7ad35b016424442d15c056622f6ec324dff8fe8a68f410d9c06206a5df9cca628e65adb5d5e7370302047c435bb500683066023100ee3e9e1aff3f4830feddf91933a27775d3293ab49bb4fcfd368b59b14572544fa4aede2cd9265b7d743e5954509bde61023100e9e178a385e6d0d00c5c0a6373cbb34abf74ddcea34d33762ea913903d0555770d503e13eb0be252ef5579536c6fdba70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100962f64d063ed818e4e9ed822a44552df85cb64ecf4f424bed4cd6a1dbce822ea682c8628871ee50f1f501786c3bc2525023100f8898b574f28702500df7273c1a6d02445a9d209c03e37ef13eb5e51508af9a643f1fd9ec6152df0aeac6b93065c76fb0302047c435bb500673065023100cdf06afec95731284b51b353d25328ddbb5050b5269ef0e230a1486b2561f976148b2fdcc86f0a9d179cfd07baf4c82c02306d7688cfd9efbb4584071c073b8076d0630d252577ac8910cf1e4c8f6f6913b16e5adf818b47ece71c52f70d073139620302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008ad87e02e10bcc744566e91958a1607a1ce078288e264e4e77e9affdc2b8b6c62107e4274e23563118d59ce0abc120a2023100dc9e83c2a11811d928c66c025d4106f15843cc233ef9fa35097049f77960c1cfa72c8d285e1eae964cf8e570f2f4b64c0302047c435bb5006730650230602937073ee49567a81f888ca34713473d2f6b063d8cd8db2882dfa29893ba84b6b3d0bc27b448a990518be98da3238e023100c16005219e657c13f26fbc5685640bb5e430a2325ea5a4b530c8e7a34baf1262681e1c643915cff8463fb9e30404e0ce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301e52bf74ac93b5798e880691858ccba691a6469cd9477f44f6fd00f772f66a6aed0490b81b06e6df1bf97e3acd52dc1c02307f41735812c2fe7cd5366908684511e3beb19383e640137e03cf51bd6cca8275ce6db339b9888ab138e1675880fc9ea80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023006a2f230ec83ce0e0e51426cd4f38df4ed8e2a1d632d51953070cfa9a59f5d0911de12f8430e038b46b2516118f8e37e023077a2eacd51f48d3e743664e154e88e3bd4316dfe5e9c9504ffd5ff8b333b8745f1ae69c34660f08ca0bce7f12531aea40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230172951d4e6acb0a0998fed29c372824243d80e07b168a40e3784d9f89305eb04143fec9518882485052bcc1ef1b2daf8023051c9842ffbce4cbbe3fd6920acec1177815f04b6382efab778c5e853cd1a506ab53d7da6e3bdf646d60cb0216bfb2fc20302047c435bb500663064023007b691900a670603636af743b77649094cbb2f25dfff525aa6b4f68eaed41f8a990362329b01b413bae36c2cc6d837eb02300362f12c665974b146c7f1686a6d0706542d9761d8d32768b70ceb0529cdfabc7676a5d2a8cb064ce9fa138d09a2bdb70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303e5a1304cd3c061ae930f24db8a9e3e0c6d079d30e9d427f94d07577e77607f0b39a7e54fdf2c16a4aab4a5c7c91c19202307c31ea0db6911191d559fad707e6f66b43f0c8659adb7bfde9c1ceb3884e2627a86ad9471837c9707b9767ac9bdec21f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008bba9b8af0745febccf41a3e9f95ef0e40e43dd2ff18ee3dbaada1b92b7dee317bc451c5e9cbc56a1a181e1f4fb1795602310091d3e503ca459ebce89e22e33c8f7db538b0b8d928a0b7b4de8d8960e348c9b0c747023a537645782925c99d061272440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301e7517ca42b99f1a003a37980e6eb1197bf7530e92f5d4c7fc5a50bc62ff3b4db24ef56cedde46039da8ebb0ad42c6e10230761810fe2199c23457b44a28c80e2257f4160988404d11af3bdaa5b08af16871795c3447e0c64c82eb04113b6df356820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c75d254cbaafe409d850944cbcdbc5f2f66c2c2b381194e614c24d5b1c6b14f49a005dcb368604febe0a2bdae53225f602306d825a313e94530567119f44b9f1871418c70a8590d467c6256c55584c009a1b1ab1af3489474594ef8bc946ccfcda530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304ffd302814792593241cddf9d592bc1f44730b9f7de51a3f4f6d4a0df6fe4396cfdfd9bc35d5289a613f7c5ca7bc00140231009fc9cd0ef61118d13669f3086c580d81a7c20318bb94c66ab792156dad4dc0c796210927a5df318865e7c28a9d1a4b2c0302047c435bb500673065023100b95d91d65d676b96cdd92f5091fa0e6701460cef9d32fc2e3d98d133bab5d372a7b7e464c278a741f670d712616ccf620230290e21fa8f85d641b748be38877b98a4165f1df9e306e7540a3c2549536a555053c11b58568817e07a0e72bff42a0f480302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305e3808ca4e11f094c0491f84711da8f25bda6064d7bdee0f7c239044989954851019988c2a9d72a028023b136d635825023100c00bec3c955017357d0be95b256e976c56469b43ad48edb7253507d95bc5a9009bb8a1a310e9c5a710527cf13182b5100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100de702fa2a58f7c7b4bdf7923dc6b23f32e9bee30627fb9f560772fe92f6056ecd4ae8ccd23c5d58fbe68370e5d373a8a023070d4beafe30dbb4b004a280dc6b2aafa3ccd969cb4d9b5b92196ea6257b396928fe69b710d0c40c503a1112f4ac87d180302047c435bb500673065023100a966bf132754e667cbf607fafce5c6b134b7bc9cfbc7e589c1e09db134ef3330be62459f7987c727fa3e435eebd8417902301e3c7555998b5addf676bf0e9188003c239f74c636bf26ac288734671e887fc0795018eea2f934834fd99c03d2c055770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300ba757834b752b4b1e67c9b0e0f0ad00536ed13231a96fbf1b2297b74fd919bec7bba410916594ff372dc60424b9653b023073b99610b88317134749bbab426d33a3c87896cd548a6f9e4197c7fd4f3354b3803139d763fd344dfc5ad021b76ce7a90302047c435bb5006830660231008ead66dc8e636916e782e68e64e57b54a357b2f43145474bd7ca1f50a84b76700c72d6003021ae63f6e212009fe336ea023100939c948c23df64a56e51cda08fcb9f88ea9fc1634a38bb852c37f935d664eabaf03b743a7631c539c6154e053c8876b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023026f9dbad759df221e40a49222a6613bf3d91049333e7757b6b3fc83bc72f9b40d15a580b02529b37641e9a20c61b26c60231009be2c0f7107a9374fd6f7e4fa7c720096a297a864bbdaee7dd7d50c51466eec4f847f015fddd67749a21b3fe15bac3620302047c435bb500673065023100c30ce2827ec3731a69595044a680d3ad1cbcdd55000040026663c1a38a3e371f1d46a7906e58decf5daf7da202704d2a02306d06e3d73c9f50644ea24569717133801424281415782212716ee1115a1668be911f57d3f1ac1ef9e7438f3f6bed773b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b4de44e4c69138db64c0f354c8e818eee370d30480fda8785f7d2f92f6316496fc91622f9a7fe0fa88f1c29ba9424eb8023100b9f254e861f66f6b2974d8974a0987cc317b7734971c7c3156a228ba4714080cf125e2e06d4b745aacf20724a4aaae650302047c435bb50066306402301c86fd5024e599e4b4307f74d30559e8d1ce04c266a33bee30c30bca451f1ecf7e89d73a54eb84e8aac582e4f2da9dd8023015912c4c525e88e4b22371ec688ec22524cd7c104e7c3b00285c9589f1dfb7b11d2a5fc3f33f3e09170407495651a4480302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b964df0957e025214223d95f17c7497007a6e58f386e3c77bd1c91153a85d1ddef26c69f5928979b4d4e0a09d0ffdae202300aa5212986ca83001194d3b943684339d3d6242ec5cc1bfa60bc1f27645961d3bab7b1c11fe92d1279639c3d61ff06480302047c435bb50066306402307f8add98a7176ecfcebe41201a95241153a8f6793d906be3458a54a018ce76d0cca12a3ee14663a6c6c2ff472962aab602307560d27f201f605c00f15e48455d074c1db5af991fbacfcfb8f94f3b83ac2496d2c87bc92a687b248d7c353229a2dd030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fec969cae4c8d3536c4b6de5927de271f8b640cc68f547944e30d1db1a2adc79367acc05d01f9ec0f26915940a4e69740231008b3e34a0418b1ae09a70ce8b61d106dcd56e9790c2d5c65d95493e86d4b7c761ef3fa42449e260cdf375d294feff24930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ccdf0064e0b1be8e06d0e120ea6b75eb4d2db4145ce49f49c41427d12ab698ee2ffbf1745ec9d5a7a451180925b0937702310097c30af0ccd037e799d744dd9e41bdedf701bab9918c8e600eb87f9a56119078f19141f0746330ae7af2f3a3c60f4cde0302047c435bb50065306302306d9ea73776338cbd9ec9759c57ad14dbccaf9ba5e423a686e0a10a961016f8b5ebab2129723780f5a10f212a8666ca9f022f6eaa3bb01f7aaa5a295afda72c68e2506dd55bb0e97f5a797107ec3e6bd353c4dbd8f2bdf0903ca2733d7f158363b70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300c6e0d1445252c462afa8f1e69f1bb238082bdb46beaccd88dcfdf1082ee69f44b7139cbff9056137a6c36763751a7bc023100f5a4932a751c54cd06ee4cb60fd9cbd27f741c64c66aab8a59536f54e30ba47500dbd3eb94e18957ef17b8f7534ba7500302047c435bb500683066023100a2171c1c2c666c133355d15f7e543ba931c8b390eb2367ba67e05c43e5a463e9e6793096612c239f763cce2d29735ecb0231008fed622394ad7cd4029b0ee35168e3c87d2f21febcd4983b262dea5c9ce95eda1068a2451f5bf50934602a5521154caf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008824863ad5a669a2cee599342dc7b8185620fd493a0d0fb3b4013a4192996f599de948d82f9131e41957d499c04bae1e023100b92a550c8ef0b28dcbd526d6a458efe25155c3ba4c430990e012eebf4f7cc4a184e34a7250d3930d1f294c66b3ff40250302047c435bb500663064023031e8674be3b676d4b79a988ed942b6cc04e3a09d97b66cea037fb9579ef7c20c72b7f47f71c2a9c1071f9ba18760fa2402304abf2e5704e42e78307c1499d0d8e657291eaa178ac808eaf00417a2aca3dd805b3957b3d2713b98edccb89db81b76470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303ed39c23923439e1de9c4db542fc183cc55743c0025d90bb8237188284a1eefc175922368c375e6a41d775180d5965c9023100dde5f1bf2fcb62c6c851e2faabb388d114b1eb96209a25fa3e9002fd9e72d71f98cbe79d15c758373392364f0b8fea9a0302047c435bb500673065023100d5d35d9ec74a8616d238672b35c0f6aa9249f3de3cbbe635287de6c7b8805d34cf47665a2b6208d99a4774d8f91d1c790230338724328069c8c7895a95705a036f08c933cdd60175b7820fa638ccf50a74c6668c5d9227da6c23c361acf4960c4cbf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230374157a27d353f6bf014bd17e9478244e7160604d406e3bac19524c57c985d11f0e426901f55a67248f090fa70a629c7023038fbd237fad3f2f060a08958e5c27be611410a12c2407c7911722c52b8929e7a8bdff3fc81b1f4abd78c6561d3de56570302047c435bb50066306402303adfa0cb49536554860d3e8a6061c8d8cedf2410e2dbc2b91bb37ec1ef86ff091eae9937c5d898874058e80b16a26fd202307e170d43c851b6b8e3d32612fe60c66770bbf6faad5320a98e0b7c7bac059fc5b9b72e4084189c2e7317e52a889a2e0d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100df7cdaf6768689af93f70ff750ff8f90b30cd5a2e4cbac804dbfb138135dc4c16312daef77ac7f957e08b28542f74ac50230387789f90bf688be9f812968dfd5d9e3e41ab85a5db261e2a8124bc853e5a0d0ecee87437c584553e7ab8eb065f1c9450302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bda4ad8bde0f09ab4dd834fb8880cfdde890faff0748805fbba6bbfe8c2cfe3b18739a5994167a3682511334a555d297023100c7ff729b98ccc981a1af3ee1dd8a62fbdaa9ff448a51d57cc35a6ee53fcdb83c1f6089ed1f63a3db556fda80c67527dd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230539eaa935fef035627122c89c40aea0054314b56c552a2bfb15a889eac46796852ab3611f7933daf8a2d7d473d45aeb10230030252ada78f7df55c5c6488e8e7cb8939a8cbc4cdb87333e05da36ec569b1c5dfc0412f7e9c95026ac35131656617ce0302047c435bb50066306402306f2ef862fab49ec282ecbf983fec457d3f86780e75a7c04647729211e7c2cfed68fc615ae2d1c2b8209dede4e24a0d280230651583e1545ecd1a4b4c768e26bc2f1f4c0ed2e7d8aadde2877dee734c1d2ae6791520d2efa928e0130d97505d9624ab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230757ffaa60d1faa481bb70839eb9a6b486eea1e922fac6e0524e3319c346063b4e6f1ca7fc2ff92d62a054b642210b9b1023001dc2b8ea2c4f5384468618541094a16edfb6b3a307b6b201d063a758ba48dc0661a7e3132f478c1e539574ad8cf0e870302047c435bb500673065023100df9d6743e0108562fd6c5c219269025948f65d4a30d0619ef0828a0a8901a3dbb64ef95f2bc5aea2d5b6df7ed992ca730230565574c96fcec894b53de79b0277b959c5ebd953ff65ea3414224500f315b228a791f75742cae7d1d512287b1836ca5b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d7d07e0ef496af53bcc622278724ca80922c0aeb772409ea61a44990334498a0eed3a1e88d16cef2b7cc9a7772ed93c02302df5cd8830fc6182169e64f431940ea3485bc3b917535ef59b77de385c319c59a80e9d8c6d3850c973000ab4584c14fe0302047c435bb500673065023060de8888491f81af00235c0fdf2bc843e9ed358eeb5f6a248dc9a17163b48aff002301398f2433b17fd490352539e081023100d636c875ac39b43219ef5bba2c3987ad18e3ba23cce68f6c8836c039eadff488d74dff6644a18aeb5c911b48c65cb3eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a78ae00213a61159887093634f7d3b6373536c7d68817e64b3383550c695f5480c370da4da5aef5cb959599cbd58bc0b02310081016e1d12a6e0f4384844ce2ae78e683d064bea3041973f61c7267e9fa1ef681bb6faeeb110549dc8ff064d9fd41a390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023054b585828af077d096dae106a60149615f0a4ed1a49fbe40ac39ad416413f4e27230aef2bc73acbfe3cbd855b0dc2cbf023100a02897c02aad21dd381ae30578721f64d4098b89f6f45d10c6983915d39aa7d95845b27b1efcb02a2304160b5a45c9530302047c435bb500683066023100d78d182b8d7909af0b9c071a6b8223a7d25b9b87ed24214ab081073d52eb784d702e3e6fa52f4fadcea44df37e437ad5023100c8973bbbdc0446d65e933203da7f30041775519db829b04f3f97f38e2fb9cd5cf36b19194d1d16268e43a8a2752576b30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023020f7c505f095949bb6b16e74b0b9aff4db5568da3f7a7968c5ca9686044805961a7bb5521214b8b0c526970513b2f60002301484d1162722b9cb6efd3ca1f1ff80d9dc496d1481f160fe48f8168be21f2a2361736a18f95dfa9c68115eb479bac8f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023046ecbd45dd56b86784506366942fc98d359c5c264ea14193bdb760d9f47134c2a28962cb7c5072352812f85b6d29e91a023100945b6b0eefe5e64c472d5a6ad9b85824f909ddbee780a0d27496784c551938a20589a61e3c928902d8c8034a3782efd60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307f00054b51834e5605bee3442ea55957583d63210714ac80763543705ab31b48c52814d01d2f017a7053d9f77192cefb02306f4f352a189d295fc302d590ce2d187e569795c605a7168c5436c60aa941401f1645308dd94c6700edadd5067a7f25a40302047c435bb500663064023062fa7031292047cef968d43fab84b518ec9e3335773c1a83d245b6e1c9ffbf2768f828dbaf37102daf923ef275bfe4a502307339dbf9a3f6f5bc35dbdd2aca02fb312793f6935dfe4d00837610086d777b4ac1faf8a49ebfbb979b543bf57a333bf10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f51a06ea5c675222d3f0a4204309ef1a81aaa7e3c2a8b1e188bd1c12d251eff11767eb237ac2ea2e58163f58eb3874d4023100d3af84c11e978b7ee06f9d4910ee6fdefdf19bd2d51c2f5ee9e535633d4fc7012628030aa43cdf0f3c43a0d4a3e44ac40302047c435bb500663064023003fff9614c8caae43c3e26e638448e2f4c5bbfa93e81afc04a21595d1b9e41c09ac0e1d38656b64692394a742e597e4b0230037a8529f6cfa66413ae1997ac30e78ecd448a097f3b6831e9689fe9d2be6caa94305d7060ec3997c2d8b51e2347906a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301f5722e806842c0869402b0eb7e9827d32bfb1765a3f5aa0778d7f4149dcc8d9b48594e87e9b299e1feb7580107cc94a0230061c477f35dee40717c2ebc9acd33138b54a852c38f0345028358374d9d714c21782afb0c84546afcbd6916dc8913f820302047c435bb5006630640230794449ae700ef1a250740b13b36c6a3e048a66bdbe927144e0f31de9943691359dd8cc5bf2d3b154d465fcd2c2c8da9f02302d2b64339816fe3065263b4eaee48b1bd9bdb30d11d08553f76b1aedbc3b47e3ba037300969ccadd53b4857219733c9b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304e9f397f830bf07c3166a2849ce44bcec5001ffc2b06ffedf98b43f1238db2709cc6b19b902525ef1425a4c250d19b95023056edce9b18ba3ed3c3ad5b8fe0b16a4991bc7db0a9062a724be279b9a4787b4ceb607cb4e57f17cfc5469d714597a5650302047c435bb50067306502300df78f47a4896130bb476f203c22166248154a1a8ed123ac2b7d76289871478734d6001f84afdba04726a8f880dbdf390231008d95f75b7a86590fc3d257cc87103d02e0c4ccac083bb28ae14df409c3f5ec3b19abaef47d50ab3a8a09347307eb60a80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230418440beae1aa608f9fe764006e4c627dbdd3fef5b3b94018b5833aee2be69e1e2d805f60f3a98daf7e521dba22a671402301650cc3f7aa1b5dbdbf383fb6e04afbfdb7be0bab3c625f99fd8e9f9a811f0ed6e2073559ef1b06a1e671da38cba3edf0302047c435bb500673065023100e5809b3d59733728da10c5d5c24c2250a6a53add29fe7b8faff8ee3cb054394406cc541d442adf05cf0c5c8a825fa2a4023002e11ebfbf37b0e63bd4bcd5d32830858534a06fdcdb41baa9bd59475d17d9304431d09941205345cd41d5ccffe762460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cce57af9e3eb6e28390376a08dc0220b8368f32e2b80612b3f2c5cfe3e25a88686ae19d73ef814888e43d46d17d32a11023033ba48dd5f32f0866a37e03f0868843c4d8eea53d6017b37a27df15f5e0b6345ceb62e486b9435762926dd3b45f10c070302047c435bb500683066023100f19741d31372d22d02950a037ac5c64ec8b9aa9dbb1c84f590d9a6029d6748fe122930c7ca2f12c83aebd9e031f635f3023100bad3035e82f97465e0e7581b5bd02a3f5cae9f385c51924cb715332bf145e77262489b8dd0da4b810545bf3a1ba2f71c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100df38d3f6821770e9de01e000bc955b55e1cb0caca35ebeed31cb20230f41b32450bb8bcd2f1c92cc7de209f5003d957a0230545b9e6b2b3bd564790942d84d5887485f49bac71d4e6b4d302e88336731240035bd664aa7bcf19600662a0dd9291cd50302047c435bb500663064023042134932c5a7f8387c8124f7c779b20ee4c520d7d7c847ca13b62a62061e479848deac09c34352f0ff941705b373af7f02307bcf35b8224b2c6cc79315b61219d83dccd812fb50012c855a93bd679c63896e63cdc497cfeb3c41cd4ba306810a48db0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100deb95c8c52ffad60d7735d038a318290e9b5c952d3939dff0e28731e0b8354b064fa97fa115b387ab2c39d6242bc1684023100debebf41206e69b67ba79df3aea39c7eb6472863c4798516d287a1693c6f5f79dc673a1958c8276e35049832b148efc90302047c435bb500683066023100f3e0109baede1dfa8f98f1f61c178bc22e476ddc0e40d1bdebd56145eaecbbcd6d4837727089c985b7dd05e5bf509881023100afb64c27a5f9b509978f2dd6d9fe274d01ed1c075ab91796c07754c601b0105434e061b7de6a102ac6b06fccb53029050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008c7822828915b54e44ac1a9116395bef751988a7a324aa03237a834fdfacc80609e90686d3706ee87c622035087ccaf202301d0e8d06e4180b848ab40c30b7538d43dfb2f7022f227a9006b5ff369994619c4a2e4f040a87716d70404aad163d62bc0302047c435bb5006730650230778f08cfc3431c145273e5c1a859a116c8aa34e35f132e26f0932be598d928fd02c4f7de78eaca20b5f37f976226df2f0231008aa4d649cecd2b9b4f9f88d28da95880113ab38c0701558c53decb1eca7e5ad13efb123aa9da92a90a9dd0a3df878dc80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300e5120ccfea32b576ef9e4398c13330aabeb8a4f7c14f90de387d34131f5a1eb2308db84e4ad83780e6638c26226caaa0230512c2320b4fc6e3caf387240b634f9ac835668cbecdc8d5566614d2d27ba5a7488675343318f4ce3266052dc95967eda0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c4d800aec3246abb74caf37e713550b25859da01cf2c736d64542cee8eb394374f4b695ab78291d331f7d7c6044d5d270231009986ea7370a6079dc2a66b7d26a517e378bda023b25776b8d9bca00c068844262453d0e74253cb5e70d1e4260f84872b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008b4929364804b0f4fbb4001cc45758676251e1cab719de14fca8dac4162da862011c4e261013f63316a35c526416df1e023100aa32d35a98064762d8ed4378fb33cb3901f0464bafdf1449d65aed6524c632a3452aa65a838ae80bb6a06abcc6d380d80302047c435bb5006730650230382580d3b5c3641a6d5b65908afe712aaeb215f8bcee187c04a583f6b05fcdd051e7f67f274b3646e580dfb2d2dc907f023100ff034deb9b205f7082e86cfb94b99d7d842cae82c520cd0baa2e0d50d4c4ddc8f154ed52c6c4f67d50c0a9d81efea19c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d941c9115ab99ec067919c47d29fdc705297aed814ab805ea4e54bf794b4c677c528b29cb22e0378ecc6a2ce659d07a2023100964e179457d761d011602ef4f33d5033b54f20a7edd864f2b94cf103e917989693c3516bbf9d37285a92e5b122da41a50302047c435bb500673065023100d4ec151af8176810b95bb5c15b892871c77e94d2b355e87ab2c9987a0880af3f7e15689c25fa2416595563f014c638890230077d336a269a93e580ea55ed1737173f6137d1ab83dc89111386ee3a25906fa7bfafa42ae74dc0a40ec9695b00b6fce10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dec8e72a1b526902f7f43ff20428d879bb526d6b22190902acb0b7b38ea2fd34cbd05ac9d93fdbe634a59c4cc441e3f10230364f958dfebba3e65eaf6d2c0b0afa0eeecf5ca7ccc0f66ffa8d209920864a2af3f4e2013becb3c653da9e085071a88a0302047c435bb500683066023100efa98e676ca790eff4d7a0718729ba6754344d0bd0d10196f719afd4aaf164ecee44963d55544de5e221785691b1f37d023100f1b754c88bcfbcea00b6d2eb2af9525c6b181fafd7e7e67933cc983308a9bfadce0ffa42cdc1e941b06b25476ab4ee7f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008c99a24c69c1959f1834149cab52f38aab863fe703750ca8608280e19ab585f2dec6a4b16b780e328125902438c2572d02301b29822b2b953b2c8410709abc5de9ebbb4b5e929259a6db58522195d57794d0b4ccddd10b8cdea99abd0e923bf79bb30302047c435bb500673065023100a1bd22315cac131d7e177f372521dfb5bfc1831c1c2281e9d5d319c0e0908d76c52a618cdb0e61f05ca1cf9fedf9053202304b9beefcc7eac088c7dbc04b3095bf0029d22e1fd304710ea9f3d4654a91223cbc279bb95840afbb7cb5dce9556e12780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302c2851a87f5368cbaca132889bd3859c24c6d8516d9b963a61a57efde6949ae5a7fced77a2aa9491c47ea2a48e767adf023006930287e7df218deed0f882b0da1d37d2eedd1666492cdbaecda9da1362eb69a75b064524ec6c0951188ecafd10dd620302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302e9102d8b131fce037cd5cba5c2e46dfe43af6bbe4bf24821fae87e8bb5fbdcd906f562afd87a519c711cc9259e473a0023100c9e1bed631dcfc7e674117e79f0b151d52d067a99b100e216df0ff7f9fba554fe52c8a452095af902210366a2fc329cb0302047c435bb50066306402304bb096a2e970ef4976bb1ccf19a000864785816ccf1ce904fc36bda5f0ccbbf4f80ba2f94003605c10e82545b9cf6bbc02301a970376c321acc99ec79abf3169824b42dccc544426638cd8500e93d9421a59a2e4ae8eec3ff7cc595065fc73d125cf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a7f15e663a358c6ccedd2c7dd5440c3abc561f28eaa4bc9ca9531e0d0df7dc716ad1debf47a96f8c225877ae82d5f4f102300bf69e70196cee2f13335298c10f612fdac22ac941525ea4c0e7fa76653680c0055cb96513b5a7e3f7d5638af27da0290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023078245f8c0ef12e0ebf9dd088be2cfd6c583d219ba569c55d1a20ae91fca4e74fed16dca4bbc27bd7e80301226cab359f023100c066c0c7dd54f0dd71ebe6724e7fe77c5a5249d395743efaa447249ae65a2bf20e7b7759df8a591a2bdfa1a6569c52220302047c435bb50066306402305c1179cf0913c89cf7548e6e9979ab4a1fb3181606e547d03bbd44d859ab20744cf2384abcaac66b8c132026fe6ed3e50230696961ec0a3528eba04be0ab41a0208a8293d0c2167d71aa96be6a01a048624c9a4dfaeb508d1fd3ed13a1acdd5ed85b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100be78a9068a9455a58c28b896b9fa3d0c1655f272841ca80dace2ed06dc5f96492a22ea052ff70ae9306643fa3dfafda20231009837aefc1ace0a49e639a077dfaa862c5207b9d418edcd1a745c9439d327e3f5b7a80f24e560d9fc4509ca491007fb580302047c435bb500683066023100d2b90451b4d22853ffd715c0a6b692b23b88634c54ff5804589d6aedbffff99014abaf1244105e7a49e1fde16fb9923a023100a27de21505c3ea03eefb58a4f6ca5b4d40d7611b0dc3e39f88de6ddbef6e0bf138bf25ba0b1073a23b4927d155a0b8020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230254c730c2884a38cce3e6152295f7cd7aedd9f24637bd7c4fb32f2c66876518493722951a8a0c1f4b3c839ab82d494e002305c916e524fe2732fee4bf83023d5789375f18cd22289fdf33a41ee9ee514fa337262ba62bfd531cfcb8780b6c9b7e7ef0302047c435bb500673065023100de860d333becc1d9c54577c3a591ec89f89856e558d455cf62aae248c640730c9929b539083409b8a3c60a3a3cefaaa202307d20ce5cf6de71b5b523de5430955ad7151b71ff0aadf3465e188afbe8e0c30094d51e6303e95d0aa29ee8121dd4066a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301ada923538b8d3d23ff1ff1ca6e4b8df6a3de720cedc319c662a7b3d088e7f93fd310c6298110e61f2b0abaab53ef9bb023100c81c04111c58f68ae46906787b4e97e5a7988059dc48906ecdd88c277b2b244cad025dc49eca5b2cb16c9d711b9f2f150302047c435bb50067306502305cb78d55953737f29fef74ed525d87af8cd5a611fca7d98eac9011463371321af83c7eb79f3a02514479350fb12d9bca023100e681d005beb60ab2daf63d37e44171a5c27cca008aa98e8794d72128916eaaef350a2b41b7e5edc3e68fef66e28a42d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300086e83b2d66936774d1d60eb82ff945d016eb4193a91e0b7a6d974b5128e37b0ce28b8393f7592c55d3f52131507c4d02310092a8cd08af0fd506141fd2591da2afd15f47c857777e531af02317c54682224e0dd64b806a7df03186c1df3fdef42b290302047c435bb50067306502310087fe5d2c33e017e07122b056cc96f35f81d7963f4e6455180db576ffc2062563c16e777f329d1c1b9bd6df5c78eac1ca02305be69db63a35e5175935d6ad279c0605a2523450cab73d837185396c02097c4218da68105425318b0cff68c3abb4ae9f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008cbb36c16caeaaf711386e41f7dc3967ec1b53734e96bda0187f60d4d63ceed6b1780b4e78c433a75f86b541ee5992560231008b87bf2337356dfdfadc4adbf20a656df22461d3fb89364e80c23136ade1eb7fd7d011b3578f6f42ad45b4be4e5031f50302047c435bb500683066023100df5ff8863f911424cb0784cbc30b13e0f8387ab904aa46eb0168d8d174fefd5dfa05e148aef4e0ec0b237957e0e17bed023100c0b47fb9ac66ef7aff0cb3006e3acd48a44007c6588148c09023c9a48301f617aeb4f86fb711cfce8bc08bf7ae41fd260302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305fe3cef2aa23e28a4dec90ad36385cb4488495bb9b9734f4a8078a9377b1e028d45a1988aa5d14e2bcbdd93a14e74ea4023009588a19142de8dc5cf69641f96f4f0913f5ca94e958543f440eef5471ecab0a82e1869d3dbd78b38753f2cabd6d0d810302047c435bb500683066023100f6e2b5a0bd8e866a9b53652faa41544abd479046490e351b7e5a33a060715c2a1e02e135f4ec59dc1c86fdee507867b002310092f969523542b66b8d46b4b61bf162af72e63b5e72f6df13c664318b6ba67ee3ee80d668403f3a352797b5a4471e05530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dc9557cc16691f69f3a3d1ddaa124d76a165c06b631baf510924138b01a39d5fd6809ab327f3a8ad9d9f14b26b35252f023100a10b2ed9472e91d02894a598e808583a799b0c9602847d0362219a744a596fb2a38b425dd681b3aaee781b1f38d2070a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023021034f43780e8b46b7fbb70411f3350fdfb1a166159aec4c5809d4f37767cdcd47c58e56600a127199008d91f0623dc602303f721539c77466c10574ff4d62c13c3fe546dd484647e1f37bd0add04c5541815fbc0005c066015ddfc9bf75213675bc0302047c435bb5006730650230265ce67073e435022c9802d49f94e0aa9dec8daed6f3fecc02d3ac1e1038d884d53c972dd98c81c383fa079affbbf1f5023100ba8c74131762518a9298c5f3a364d655d92fc6d8ed1f3c9b29a23f1778a8ec48c384dd9cbe3a39ae6ad4be166c03d7580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bd79ffaf8727f3be8a0b741ef7f9f5b025661ba254c9d3ab297e84b5284d138e717bfcb7ea3df0e72ea4d565be4927cf023100b4b58723571f9d860ba9d3ee30825d3117f76704fe587c1cb9c6a929aaa66c29e9450cc7e565a38b49a5f5990a8563dd0302047c435bb500673065023100ee3b646ba06fb9a0cc432faa8adab12b89baed941e650094140b3fe47a76f2020139f766b49a25a5d3a14e9452e55ecd0230073a698aa4f42e7bb38fb371ecc24e8b9aeb277819dea8d4e7d275477c86ff7a9051a57bfe02eff52992455f38dafbc10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e3742cb1ae0c3e053523b45d351bf624045027dfe8b21d21469f2e0f5d8223efefbd1d27e05add3ebbab551acb60462f02302002e359095f9b703949d2db60a41517960464c576118136f9c992805779ec8880e1eca9eb5695aa48c5c19a748037e60302047c435bb500683066023100a66d79df09549d4e71d56cfde7d901429ff2c6b70ecd25b83ffbf730d74b31be8643e3552c1eee41eaa13e604110cd94023100a4b2d54685cdb253650360f05b6f2b55e35bab4bdcfa3f98c8539a03bd4cadaf6c845b5ab505897b59d7a60c535fa3600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023063b4e9110d2a7f128a06475a470ebc972e9e6a75577ab423b5127015e845b2d6adb52ed094fa8830f01d6badceae9964023100ef1dcf09236207e5c038b3c77c1362619c944cf104412671d93e4af387be014a15b97df54f8fefcda09c7e9da7d765d40302047c435bb500683066023100ca3b7a9571731646fd712ac7e4c23d6b089c81c71525d6752b5b020ae48e1b67396d9f3c6ee6401bfcc8a449aa807c4d023100ce84c1561d41ed7e7b374b90b8f78503afb72a8082bbd54a1a4d0be24ac88ea3d60a301838bafe483ad0200bf96bce860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301fd8236d9ae2c4953e2b021e58a38060dc003eebd0ce6b8b4bc40e14c1c222537f3cc42e059b3f25abd697e3459ffd0d023100d72d9856f0113e77f5c259113c8db0c8b46c87eab73d06a49cdb1d5427d7861f73afdecd4e22fab48f6ba1f6adf7fbdc0302047c435bb5006630640230278aab80172112748861b51d813f7fa0c990e369407eefeab830aa6f5c809d32e66fa8ff0f4e731f797a10a54b58406a02302d21974bc3dbc599e2d291dc7beae7667081628b3fbf8b4eccffe0ca6de429b19a46b1e9d81639c587d6b4b9875cbde30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302ac8ec30b5894ae91f3c606db86ad57d481d40c5dfb92766b4752455df9f47188b2a47f8c2ba01de3bcabbf3a5b0dff3023100fd84970e3148ad36cc1b24a46a0cf95ab0f45058e3106b3f5b57fe129c2f7dc050f6060700520161d236808c08c0fe260302047c435bb500673065023051305570a6aadff60b0f7f06ffa5e6197bf6ccfd6bc3e02272a5b34f35fe56c99b2c8752a2910db2562d6ad18692e8080231009f45e4eeef55a155e1a1abad3ef8bdc491a56b194792fa9f5d8a0c8d7ecaf3b664ff57169185cda7144e8af9007ce5520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100aa5272283b81e33cc59b04cf512f5d0dee87b87b3fcac55fcc13a836334b4fca2b331d812937d0826cd779635ff71ebb0230128e680fb04db376bd296fd667b98938b5e724323dc84d72c7b36195b35ef9a2f68163c25f8bba56bc0fca1604a7437b0302047c435bb50068306602310085d3644f579d991aa86dfcd0eea1ab5c85fd8ff7dc386da3dc6a51485df0969da31c145292e558bb37b7aba16f529a3b0231008fef6fa5b90c9e258487f262eb3333e57fe7a0c5133d042eccb6c5ab4304ade6d5fbb323262cf96ca55609e97833fa2e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300fdaf5be9a02fb8f6cf65714605226df9ba6659498db11bb33ae33ff99ab70dfb096e7bd1aa36259a046e692e99f32cb023100850b1b6f65b3a97e7aca94a9a79b12e2a21cb0d671e8a7d3a1284fcfd42d6ab62ff3c26f00b7ff925f8dd48e93a5a4200302047c435bb50066306402305714e4ff09dc83765d589450246f8ec94cbdf8b4ab796aeadc471db492d713629802fa93d64c104f79356185de0cc68102301a35b38010d72da6d8de62e9db4594f1cfd9f243bad44209c740440bdb0b0c5b9e6708eb3e1de18a21cb2dc61619cf7c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230658e52936273952af7b37dec46b24de14620651ba9006048e8f6671b4b55da411a0a4d4df2878739a12b154bdd29e98a02307957bef4f71a7731701aa4d79efbaedde73fc125e34cf311e7d023dc999c454dcaa544118a90ea12870c8476bb6f30630302047c435bb50067306502307c1f7bacdcc337ed7fb9331b0d84182d41ad52ea0aeb549853ca30c63aa487ef132bf0704564cb332e6aba6626e1736b023100b488ce7ab6edca88d329b78c5da5473a0629a2a1994647e4cc02a94e2e3a5c24f0a603b59ac4c06b83bbd2bbe245f67e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307525e454fdc67fde0bcf5dd000e332051bd07d619bcd27842e8210bd2a715b3aaf36325dfe76023aca0f098d9323080e02305fd8360e2fd43ca8fac6f017d463654568d1af673939e808aaed3ebaf41e78de8d1df366046fd2c39e3677a55233af040302047c435bb500663064023037929cb90882662c9d10f09573ffbf632bde4d9895bdc4e3dd79993250ca776e572802822d2cb22c78ced0e6f2ec3fcd02304dd775dbf129310049b09c081c89e10695ff3ba2149d0073a4b2368853914482249a0aaa1ac6abc8ea28ba29a9e163aa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009f3cd8be94e429924e913206c00e0897b20ce381fd1c103ed0021fa2b042cc115a7e490f148cea366b8c3ec895b447fc02302c1ee6d7dfb5762dc29f1dab53a4f945be35d0c6fa9d6e86af3de743b75c619b3d3c22c5c7229627efafc6e507cbcee40302047c435bb50067306502310087060735e4662ba811f171373ad5cf9e7efb648d5631db6861012b89a2bd6c197fa8864689ecbf70cede38bc2df0c7c6023023daae9ced1f42b89f05bb8b6716d1d0ebe2ef1fe220494c74e27cc1aca3129da76c24b5082b50c052e4cf2b4e9e1f7c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300d348b3f82ecb413e061820ea79b501c2928dec90504b2e3fdc7d79a5c2e14344ecf5ecf2bcc554068060066cc37fabe023052b65f741604bd11ad3c9f8223a1bd80c6e5341cf71345ad7d0742c42c9fbeaae794b184254a0c3687ea44c3038c45a00302047c435bb500663064023035c4d6e15388070a5fb88b50bd9665707fc99f3f29dadb56f4fd5222ed6a431b446d69f6624579d4ba6c638a01e475f6023068049688d21d944ee43f1bb01f092d7b60e078a1b7bbf8cc4aa4a02af28751c5522686166391b9d175c272638da669390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302445788e067554387bbaa322fdebc20e3c627d799a02bd0733f23af80ae85f6052b343b10a2cd0ab6a2529631093376502302dfb969c9e9408dbe3d369b61c2f9bcb9a0332894863b2ee0679a9b357475cf0a4a495984df42c2ef68b5b1eb3b44d790302047c435bb5006830660231008733f13cda48a089db11c6d8e746d89c4d2c0a4cc51e015dc465945187056118ead287f2fedb6cf75b95f1b74fff4e32023100d6d76ee0eae53db83be504cb3f9acc2dd985efa9e5317639830a60f4b48bee2f4048a75a31d8c35b2084dabde56f4d600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100935cf498d994842fcd37224553b0f6a04b8ba176175b6cbbf7b911dbe846e722540c41cbcb5a2abc48e597ba9580a0f4023100a5c621b579543722e2a52cd7f043bbc1a5b00a1565f15e503d5ada5351d01688a2ab81c67aa24cf5f624dcb6aca3a9640302047c435bb50067306502301d75efeb8ee6725113d68657656c9538f71758dc34e0a78c64f3194e9f678e96d470d274bb2d111de041bc250690ec9b02310093a3bf030f36e980e293656a3a06ba90b2094e542071111426c847aa1425dcd3acbb55de3900dafdd5873741f66ab25d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023035f2ef716b729159e0cfff5f3bdec685098538ec831bff084c665c68c50879c3c27124c1d4869606af51b741d3a3196c0230223ed0b4cd45456f009fed27d00a8aedd375af7a7f269afb9ccbf472e8d58e3ea74fd8ee49dc86313ac22b0484f562580302047c435bb50066306402300766081ea2d1a97f7fd64e032ff669f3f572e410ddfba92c9d9a5ad98939cb2043144e1eeab170b8b2b2da261f291c7a02307abe75a47f2b5b66bec078802f720ec3b2e71c4cb5612a3719833ac2b60809176029f466576372658de89725bd9e42290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301c1e2aac510ce7c93ab77fffddd673eb5b504b83ae2754e88bc93f11398c423bdd0635d206764ba02d9e80981925721302307f54a8b9627704143c931ee841fd58c4ebc308c8da41442c15029c4552ababb9a625c51ae4cc4ed254b6cdbf3a275f3d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023041974a0b3d84176ad55755e609f90449fc0fb89594ff925abb493a977babc1e0f995d19b5a2d2445932d10f94718bc41023100db39c19553b6245e056a3655d5b783c4853003d979111d23dfe6570244b2b138b6530d3fe27afb74e3066e8898fe622f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310086b171609ae52fe637565cc2e6a03429490e6565809350adcde438007d4e3cf8cf782917d0abd4e4b28ac49aa5c78f2b023100cea0d0e45bd01a5ee2d8724aa29845e740a284bcd6f4aae1473d0cd57e9c1781280c70df28d7592df00d6f2379a58ca40302047c435bb50066306402302032846d5921bc5c0c0ea362ad730937766a18b3f45ec81981456f6c0870b05dfc1a5a5878b6603dddad446e0d494eac02300b3929f2766ce7ea7669b97cd2e56eb823c30582c3d56d6783a13e43eb2d089442de4de8818eb31021ea629fdde26a310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008e091a76dd8ba2e06ad1dbc2ac863752e4c2d1137e4c2256de4b1b057883f45f207cd572caa05227982464ef3d989dac0231008057c591734d9a34aa21358e0679397187f3dd980a6b4324a2d35b53d17136c39fa3422905c3ba14d9bbfb9ad2d6fd730302047c435bb50067306502303160e308fbba417096aa945189d48b1c94d916e4e91e89829404fd8c06a2ac6f90ea6370aef48a0f137c16ecb1ad4bc0023100e5ddf0e67e9fe9c71e52b87dacf90c11b961080ba2d9d32ffe36dd1092a21b507bdd545fa3e03b5474e2bb151a31a3250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300900183ff657c44c8c1b003bac5a06d75c4d227a2c45db827070f4af869b83cb7b1c3a7430718c3e8b43cba5f0e7323f023037393601000d623ec01fd66647f96ce86303fb841b543ea9451d007628b1cbca073db917ed4ff6e6fb0892cc55444f5c0302047c435bb50067306502301876ae2749623385ffd48226d78f37a0333e05cee766c2297d990f73dcb871c12b0738369188ae08bf86451277cb5764023100ef90bd4b4c460c8a420f04a80583b2e04bf5856108239352863f89953b3bbe12015e3a05422f13f9c2296fc2849832f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230312dd0b86f92d237258452956fdd331b95c34a2f6e559c335ec20b15084aaa5086ba993b15180440cdfd14f9114a19dd02300523ef9282d85eb78f2e4ae435e5cc351317f72089c8cc7199bb33b6ad300792298267a914bf39ad1a6499ef175a40030302047c435bb500663064023048fbe1e7b9641c3150457b3e46771aa61a9529ac6216e2bc4caf62ad6fc79cbc247cd80db4597d2da3b64ec4d66c92fc02307c13c787d39ea42325e6048632570677f3e4ef27ab30198624a45d1ff6912dd2872e92375becb9184453782a7e08f8550302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310084b22b7bac8f12eb71d8a6e08fa2390d5c7fd448a055a8e257b80afcf047070f1ad083ed703ee7da5df6218bdaf728ac02301e6255c9de03078ce0405e07b6f36337fde3259029afe0921e041215d2e6546ede96631f4b97de5890b3870e6ff8883b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d4efc958718d687ef531f8e20036d5bedfe40e87a3c007332bdd7ae2f30577e2d21865dd2879ef4e4202ddd854ec9d9a023064ce042a5f06986383ea76a488d1460238b5e4d741e200b324fd03f9c7a7655fc6cf7231ecfe30bc93bbf4f5714eea1f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a657af66a19e0326d71c26bcecde32beb57b43e61812ff2c6b480a48b0f617016c4246a557d145aed3f6e018201096ff02305b5fa6d012476a9a74ec4ada124aefb5db7afcf2958ceae2709ae5c9518a1c6b351a9866be38bcddcb4c92e06ef5efab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307070658279a2f27857739c36ce65f6114981be37183c9c28f5235c9c8125bf53253f75fa5feba2cdb73170abdc012ab8023031b3cd8dcdc54b7c68ca96fb0e168ce7152c778770dfe6209c12b3ed2fb2d8004f253e2e1cd77c573f61eab627a73d930302047c435bb50067306502305c34fd24f45b0e2d69ff7923d4ea3621729a69ded1d31a1dc4a17324bb1bdb3ea5af1f193131ecbbfae8eed5bcaaf5da023100de32e58fa1821d009a67c2b340998b4b5a72adc00391440d5e2d61960ced5ea302e749fb0eb36d658093c0c1138e7b440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305d3d03ccef05e6e0ce59fa2ef84311b6d535c18f5fac9c1435e07adfe77fb49b8a1ef81a223ae831d238aeef09eb2369023063aecc0299f0c5bb6244564d5c8da1b1282ade08cebfb8df83c8195ff847325317f3f3c13b7c7af1b03c23e4832bcff90302047c435bb50067306502301bce910a0df119c7ad598e97ec2951a187e3f1431d863237aa00c5f46cf668ff3d38e67975bd59ed07312c01051af7180231008cb44c611aadd13c26e014bc43952687d441c6761a2332bb5177be28cfd10c5feebbc9a64ea0122914f5ae5b05eefd580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303eb7fdbc6001aa897e3abe3115c5fca7d7deb862475b39e2bebd75c3fb0eafc972bcaf2604dbd6d86e200828ca040dbc02301edacf46dde8d5d6f1f9fa9632a4b67e5345f3a1e9af63a1607430ab81935a3285a656ff22297049a7df4b72c2839ee60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310086cb5dbbe1289c6e9a9c318d224d3410913d880156aa4d8024a2bff0d2f23608e8b5b46df0d3960a9c28b5cf37ce392d02305a2b88ed18bcf0921a8e83b7267c09edab2d8c5abc72a1f3483e542b4f7b86813a4c04d0b1400f058a7fc2cc9f934e1b0302047c435bb500673065023100e3bc0d3039fa6b9e18ab1d89fb67ec61ac43763677e6551594e92e351f2d2bb2c6ccc530beacff4271e961faca273f3a02307a8bcdb1e067038c49f57b38461869d1e8de7c0add750cbc60b138c3d437cf79548f02ab8157b335b5b03f83c9f5e83e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100850adf42fc87f6156cdd9c70f6f414ae2aca254c249f05ba3832c39784a711ecd16e9f27c31bc9453c3577e776a0d79002304c4bbc7084d0f2aa9f8be41906bc2fcc911f7c87bf728230164067889efaf50733e47bb965ce9ddbadde87d1a94b9ce70302047c435bb5006630640230598e09f3b2a8c7e7135fba55feccd3f9c697a40b7db1fdb7586fb2597ef812d5392242a2b72b7e8423cfbe3085e36d18023049b12109e62def437b68444d87c2f93bd7fc7ad075b2131f825a542e864059202e2ccb7b3f73d5f2ad0ab053e95fa9850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100abf7aa50f9f164571053b15213c12c71114ac0167301b7a73cd84f66fe537ec1485b15bd58ae81e98a6e8b6479cc045e023100ec573d77db220b8d9a5aa89b07260d50fbc8968456c1b0cac5931f4d030a20fd3426dae0b10c6b20a6d25c5c039ed0ea0302047c435bb50066306402300af37be4dc633c9d79e95046e52917ca59f5b01a0ab12388b20584222ebd217569b3d3c5b29ded58a8e9d12f09601e4b023018e90f801af873c32bd5a944912b53f7d3e568b727f9e4753a2fae8958968b0bd76c147ded12ac33983e7cf1f484c0050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dd32a63a6b7e8bdd968609d20a71a5d6bf09b9e7c062b8bf2a3d7c50754acfa1a6629db7a934e92b262ab77a5ae0c4a3023100f93b1a280cfe38d8d2c453073bdb28c5949784a2ba11e21364640b90bbe116caf68c8b734369f8c66df5abd87c831dba0302047c435bb50066306402300a0427b14bddce482eafdf2d2e9dd35aaabb67890522b2124671b1044ce0dc659dbcff989a27d4651059c2d49d6f34c6023062bf24e02bb8484676e360eaf3b45193c5655da2b860c4c921e991ebb8eecce0099ecdc542435368ef0f8b2c11895dee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d4cf08c164e06840cf2da3b929cca82955efde61f2d33e3bcc0c0a80bab3066b94c4e04d8f9e33dbdd736795cfd75d3c0231009b5e1b5641bf33fac2d25ff5c46e28e05dd1bd9ad5ab9d5523bd9a06891f053563b4c3bb38667ddc8e7d1b4c418b2eb60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302c3fd75adeedb7874e5f34d623ca0f67f0fd35ab031fd82f2cd291c4bcc581885731a46eec32da332a4ff3d37389947e023046c7136544faaa8cf03209b712c5ab56a6b8b2ec9388bcd600ba11725e0f91e231428c024a7ad9ad6085dae303fcdba80302047c435bb500683066023100af234c3a6bef42562c8775cd24ab45a5b2bc2648fafbeaa33c37120937732f126b3d67592025cdd945c0f652d9df89c2023100b8c9b0528c157c4c70b071a3f04c92ce41f01b2f19e0c9229f7e830b10a27491b46a9603e6d659858d8439acfa5cbb130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c3506ad772ce62cc566495052efabd955c828164aded072d7158a817a8d7cf4a494622ebb6aebb64e1f37a1d4e1ce5290231009010f231dbc128e813b49fdc9c6d11c659d6810c35703903574fd8c89bc3fac26c549d26605b85f62784101b31d893e20302047c435bb50066306402303af452b0e31f8b6c590d347a323d1e8a4529c824aece0e997ad6468c4e0020e8bce61c50d9a42d80ac368385e8b2c3cc0230240244c8aa99700925879c87b7f14d6630ec7b5893c80838e00a0995e61d2b9c8bff12b68e17a6e09b5bb3d70e0ff0020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e080d9f0b1ea99ad66074cc44e5d21753c90402faadfb476e35439afe57ac9f872c2f0736e7cb5f95d83d2ae6a1c958602300f578e1b9a57c16f1e86a0559ba4f5da6f0c190a9bc3393533e3c7cecfa4e721c91f2a8df8710e34685c2be099ecfbd70302047c435bb500673065023100adc639ac39c0d43be7fbe88462e0eb6ccf1cf693f94b33652a3c4b27cf21fd1e2e98cf5afdc1c83ce0330ceffe95f844023049371c4f3c0d6fc241fd8fcf42c7138f35da2a0a61a266ba8b726384282520d6b93c7881e0b24fd49025391ed26b1a7e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c2f8f4171ba9033bde7db1f68c4a5ce3190b06bc44e0644e4ba4c54aaddac33a718938fb6cdee1c466e539cb5cf22e47023100881aa67659336ad54d6b7257ddc0b98db24c3b28ffb1ccb03a4a4ab69a638747bba1b6d0977f2cb9bf6ca3f861df59ab0302047c435bb500673065023042caf1af309728a0f106c125ea2344c18a4b44b9428003e71ddcf9425430a867b7a95a9299478104d24f94fe3c9ceeeb023100a7c23487dabd8da20800fab41bd2650c0fce4d15975b9a4ca2d9104d09e96c6d8c34246517935772f61b09a0eaa7c5050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e1953e04e4d44dfa1d0050d34d4b9d6de4e88e0cc8e2695dad0b7b0a80a9fe6f3e7c4654f316170fed654c983b1e8e7e023036658ce4ed8e3c90f7c1f551d72031492d3672c67d43143dd9ee2d7bb206502ba7b3fddeee015a8b023e4ff048b1179c0302047c435bb5006630640230558866ca3063d4f3d465b2b26856d7702f910ad68db158721f2393fe3c30f5d437298c96e9ad2a3e53528519a98b9c58023069557ad90515e74dc999ef2f6ccde94e21cccdd7b07824dafb094a34279c28babf2f26cbc45875860c0db94f02b99c8f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023019b280ccb84d6ac4daed4729eb5bc68283a864af1708fb678a2fd95e209eabbd299af14928d9edc0dc57658b364b63a002300ca6edaea3e650fd4def5393f92bee4a65076ae61226fa76fd19a5d165ee453c508dd5440930dec65b8081119cf90fd80302047c435bb5006730650231009cb7c3ff9cf719019caacc1866f22485c2ccde4920ac451a6b6053cee955d1660f026a5a86d9b8f2369a5f72947bb71c023066476d8aa63399474cd2fe70051948a3b2ad7cd549d12c7c3c01e36f08d959ca64515cf96c9d012372ae01333219a9a40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d670d359c11bfc59bc426deaff81e46ca714d1b8db066911718d70f9d1b779a252acf1be4ebe690281e3424bf9eaba9e023100985af5d8168aa57b7319c45121b4e5e58703258de998385e6b90b70fe6e07cd09e859180b696f26d3147252ecb38113a0302047c435bb50066306402300f443372bf3e4288c3fcf63d949c87680dd75f62323b951413d54a261d733260febf7d6b0f5f5687a62fe56c3f699a1e02307bd9910b44f6469a1634833556f046e1cc9801126a34e6b6dccaac9eff2e256bdfaeec12acf87152fef2968789c292370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303e6fe8f350bfc50621268ccae09303973f989f4a1bdde7f96d85ad40284ecb654e54bf17004d020babf9959decff23c60230330e502bdd16f8f894b1c99dacef5d980a1c5ccac2cfbd4ce29512d59f6b052e57b910d293d198fcdc504851da2b39300302047c435bb5006730650231009b371c52804b163da013987de066787cbefd0543c9da7eec0982d014fbbf68b8e643321cf92bd2878d0164941ed1a793023078af2f1b90d9bcf32fe5553ef9682d22e12590bf85665850849145f8973f2d7d75c996befff82ffd584a126c8e1f60e40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fcaed77476b93bea834e32ba4fb1042239b7d95bfb2d52e55f7b242a9ff4fb7a673575621c7227aa6e9111335491a97402307d0fb7a38551edbefd5d3ff204e98241f532fb873bd9136be58623a9cda5d414a593a2e280c0c70969d75ab9b90467030302047c435bb500673065023100fd2e4ca6b36461e91d30a11a8660e6fb224f948e48e4c8f494275c97eeda3c6c8c0c10854349cf619b7aeb9197efc51a02301168eb41bccaefedf55f63f0c36c1734da8be2c436ab6a17d9a539dfc5954b57172bba3ec17b59593b61abe0a3070cdd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d0a9d8b6c5f5db204a62c58d10d9c1f47b0dba2f412ee1d21d8b0dd347f4c8dd3e62b157ad1b2cd4b1e31df17ad8841b023100a37fecac32f3510eeab48abd5e600da0232dd18c3be8530d314dbb99eee56ab5f60a989fc96b7ed05b9e44add7807bdf0302047c435bb500673065023100ee26b7fad19e734bad163e6a7a2c5b7cd659203b7132396825fe668beb846ad6f9d4379dc95363a70709aabd17b025cc02304099044e391c34800415205f9bdb2aaa9f6a9f046777f6a5b0cef20cb17755b76bdb0c83c52912cf344a48ecd66c41ca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300e9cbc62aac93baad0945d65faa141e7f7f3de21f93af66393bbf91984d44b44956199bcb2f39621046e941947994cab023044e5c88ac5b9325001cfbb203957a5dd24ee5757c894e35c5dd67be643917aaf7b1f167f6e61e08c5a6dfe24438a1e720302047c435bb500683066023100c7f35ce42a651862b132af5eca372e26875317c1f9f95258808caebab7023ebce1e17d4aba330a9eced2dd51b354573c02310082ce86f0b287a94af719c6cadda59c1f69d4ba80d98350f44da0901f7b397137af35dd6cf0c1463b5b81540c856f1de80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303a6e24b9f9b0bb2ef512394c3d37efee72607eae23b5e1accd3a36654d09a5a9262fc22cd17923f14fecd1799ebb4f5f023042612bb2ea38c987b20c3d6599a4ed26806fcc18d10885c34f3efce87efcaf718837c80f87183c12f0bb83e73f8fc0970302047c435bb50066306402305403d56fa3a4774ebb851252867770d374e8e2e41bc170e6ba51f7da19153a0cb505b24e0d7f896a5091d40a7d2348b90230083f7653a6cf80c67dc369bcfa13a8cec8790a091648ae47165101286e7b688a6b98fdf6c9d8953c9b44613f7e3eaa110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023024fc1f299fc4c8c897e0dcde23f1250c6b7630a45db8f610771b4658f65d8a97bdd65193bcdfe7cac5e2d8e33a0d50e0023100ea9bc54ef7bea7fe08a4a8ff722267570f170e6611917936d395d2ae0f64276cd1c53665f88ed342eeacb9619496c6550302047c435bb500673065023062ea57a8df3542bf2a542cbe8c8d03490de934c660dfc4c65e8a596ad1be959d2f7a02313c21707abf209f63dec44d3b023100ea02bd57552e0861dbfdab4d4c139038a9da63ba770874ff22342c71319e7eb02c2677f13d97b566254ce4698e4139240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f89dd2061780377df631a727b2328ee89addd18c88a0be1b47aa431bf2484efbab42449b582baa67576c82ac18062a49023005b3dd28fcfa43af5491d6326cc9bdb1c036e8eaec27c6ea17d4694306be13a5e14045db97fa0020002297639b50d0340302047c435bb50066306402302f4174e19a0d6a9d23c698446cf13ab9ed1bea13a6aba8ba21bd632dd4da3b500363315b7fcb5fec0654af3c14072e1102302ef42fe7b335ee694c54ae18552ba726f6f87b0f8127256266b8fe7d347c78e14d453cb58074f9992d85633d834a84040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023036b1228cdb0934ca3ce54cad9ea89de54d3c07b5705b80628f1995ea962aa66570aa920c3accc8cc1ac927a1545dc5a802310090218868109f5a19297b39e4b0799193c3633b9540aa00c19b47a8550f0c185398e5bd1b257d9e851322a5fb92c2a5c70302047c435bb50066306402307ea9cd9b1a192086de236658be0a1a5c0085439f6fbc218d7bebc6a007c00697a795de37be56f193ddeba1d6e2f5358702304367ace7ca4b594994fb386dd4ab194c1b3eb639b7edd674c49235da0d598d8720bd066256a138e26cdf0e9af05605d70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ad883deac68a6e47dddc93ae8e2cc6088e3de062c27aa886c748fc2c0a29f94e0525609ed149a3c144886f54c387aa65023100ede537a2154b100867be6f3ea9293e0649f0c25d75282ad3b0f8b18bf003d0f168f57edb371eb1d02a335d91283fd77b0302047c435bb500673065023100a76d6b68efd2cec9fcacf831fb0c11dfead52743861705aeedde56b271f2e8e186c9bef47ebc4e048cf23fc8f9ac57eb02301120561b087682c37166572dabff2c32c23a72f007bb86ec5c74ec44972f9d41275f02b8f2c3a1718c2e0bef32f547e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c1c6ceb07e93f499d15d196b4151b317d5850c4e1d616942e89d7d898d556e57875adf9845d45490a5d86c9b839ab178023021805549fa8faf5574991ed951aaa6d95b5bec756ff298036aedcd3433c98cec9239d2145f2562cb598c470d88125a650302047c435bb500673065023100b3e16d91a9d69d8289a7b55dd6623004ccdc042999f650216445050059b15534faa1a8bbe15c9b5b55bedeec56cf3adb023039e69d308fd442a12840375651533b98fd5801f6940f92c64c66b3117fd7d24f2d0fb8e5918a95c5b3d8ef904e0d72d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100985d36727f8af66319109d437cf1f5a0302e73ee918854efa86199321347095a37a8d476c0b09d3ac50eb842d06635bb023066fd5ae6c8dee3bcabcb32956d81e00baec8ff367677018ddfad81a2d4dcf1510871ab5a4177602d9e740c8799f3186d0302047c435bb50067306502302d08ba7746b1f21f149cad717f1078296c36f558cf4bcec8a2f3e6b276aaf1f698589e9982e256ef92be95b18070d1cc023100bfe99e1df92e1bbf37015709691151add95a42b67e0efc1f7f891a1e50e5caaee0b7d9de7ac50a25348b79ec7a9c010b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e9d5437ccfcaac469a23f3db54dbf39f12509ee5c07c0bb03668ab7f6e95011497468d14c78bf305eb77fb724b1b64dd0230725088c2c8d7706813557dca549dc08293caf9d48ff37c5ec475ae8616e9f4575bbc9b0fab69056f94e4dfb8f09a17730302047c435bb50066306402306a40157cc3d8c3fb5c1b71ed6a1ce599fb32b337316d90f59721a1b62c5a3278abfdaab265057357fb578f532c7e349102301a26b6127c6a29d2bbd8a47402c1c68428f7680d2e9158b18fd2459ec140503d68413c085995e466006469155801a6de0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a6799ec7c95d08c5fbffa4ca77bbf69d0fb041c903c3dd7a6619b13ccada78b5a05b24d585179cf48fad2b7bc09c8f71023100e5bd3504404333773355eac5811ecba6112c8d8a11c1a546e4e75ff6818c9d29eec316514949fd29c83c794dfd835d630302047c435bb5006730650230294f45a14542c2c452e1e2c945f8351c3fcbc71075c3c6a5716e47681c06c6bd9670f3d2fe5c62a443d6f8f73ac7de81023100dace38ee282165d628ca9743a91e6bab11174af602193c703bc51d43788327543dbdd99d426166e94d477c65f5ee13f70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d9c03dad58e7c36268a52c129cc9ef59f3d80f5e50e215568ac3733919d34b93c762400e82b2e1b9790b5f884b7ff146023100fde29bee7eb515c1dc917e996844f5c317ace189fa95c329f42a23486950c17e9746c8d38158eb81d069c7d3d492dbc30302047c435bb500683066023100ac1c58bbe6a18a07cd49656091be877648afdf2dd5a6a3a3171ef5ef2af302223c46bc504b7fbdae153fe8db29e078c6023100a39e4acabc12f09202a0fbb4bd03009ec4a75689119a504d4725732006003698b184dee1cf64115848a571c1560991970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d4b5d12ee610999276ee5e3678d78b065157b98893dffeae0b6b3db16359f8126a2aef0d2c077a4571843a3a31bb618d023006e17be0ccc8c5247b1c58bb7750f8bdefd6224ab76939e9368246315a848da4debd266da63cf089d6f79624fd1259d70302047c435bb500683066023100ada5a6715ddb09584ca1f678c5bea5dde1fecf1edc26b69ca0b128fac7499268168293a41d866ae27c1886817ebd3f360231009654f947fbd29380fa76782a68ef12cd729ce1c3d443482aacb48352a4de7b2f461b793493e89e5ece09e7d6779811780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100efd063b41a83d3452ebe484097bac2292ec8e1a2233f2b11d598bbffce0605ac7a492162d752ae983c6238604ea754f802310082f92eb5b11c40c2b184816ab59ffb3adbec2d0eb94af06e75e6019653362a8fcb84169cf5b4b642ab1fa20a4138f0a20302047c435bb500663064023049a38e19538a8b19faa6df37b0ce3be184ca5aa7421ea8c66626db3cba6c25b17a70e7bd8f2e8a9c92263137a3c50ca70230336294af3d1b298403feb4a9cba17d0ec95702614c97ffc13c1c9116545c9c8ca98cd1a70088bdae75cb3f26e9ddb8d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008ff0d887c653f4acd1f991875d6d2d95142a7076481b3cc0ba7c837f8ff8be88fb1481181e66b23fef5ddd19af7749d4023018bb6f11126d8dfb47d22da37ee9a9d4545fbac9a7536d70c805e888f72f38413f8549882894f2029689baaf899bd10a0302047c435bb500673065023100922b7383e7a10ed3ce55a247945c2c95cc1d27f1e48ed26ba3389c822aced08a252288e78135e547cf2b55a1d8deacb4023050a215e8e18e99e0853eb6c31a41c0ccc518d63cecdd135b34cf4a1b91fb1901ea6cfaf4093d4a7d547cc3545f50d22f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306bc35d31bfbf9caa871ddf23a49d24b432ca5076255b5555e4e62028d1c5c5e9ef719acde530f5c2412805407107a576023100d934b1ba455dfb108e5215ac7abf748fbddda5fe7c43e3d9f016c5530eae5ab20eb527fbf188c713a661c138270335be0302047c435bb500683066023100fddccae8687a7b4f5132658fbd9e3d3c9cce2416eb00f1705e244fead92878bb4c60a349621c281bc38d4cd85ca96133023100e379b9dcb1fd4933bc30abcec145e52e79b7ec54771d085842590c2a472634a923fecc0c09b1a965e2f0e97216e6b20a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100df730c98334354bb9fef57a4ec35890a51d399cbd599f79c6bdca73b6c8577fdf150252eeb47c88d91fd55fd37217f7c0231008a52e887ed95aa3d25b5c54e86f568ae3d1777d7f97a5a3bcec627d2426af1507f309924ff2c6320184806941f4e64660302047c435bb50067306502301daf51b2d532d36fcbd7e006c90cee4f5eb3d91e73c9b2126f18bfe0b2418dff88e7e8f1dfa089c493c09a86d3b6ebf4023100e83f5198980d20a7ac5f64c45eb0c01d0e6d0e9ff6453cc6f70a379df67a3cb3e819641a806d6d68bd0afc87750290780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e781fba0d1d2e83b3cf3cff536a155df137a4125f59f5e1265fb45c4d0e17c7524f077ab1fea26faac314a7f86002e4002307df8566a4b6215eac7b1f357f94c2332b53adedf6421c4f4b04c97ec967f9ae8aa3ae20a20bf8ab404af35e88dfae1310302047c435bb500683066023100a829d432322820dddf41fea91f3b0c49f6f9eed1ced2277b237531f4340f7c49d6f1278b7bf177077e013654807dca1d023100dd0003c30e615af2331c9a6d56251739df99ca9afe35e3e4ea510a3a645fae04a80ef0b5e89a09b307bd62274f9e644a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ed0d01b3a3c8a4e7b283b9306a9fb239c861076285231186a216b54d4b35f5488b671b4ef0ee333ee0ac3bf741c28acd02306c4b2bf4b654ca7905bdaa300445abf4ee6bddee884efdd7c1da1d000599e90aec7f1648867c7cf7197c665aee04efa20302047c435bb5006730650230180bfc6e3a320db0c160dcbb32462bd2df38734fe0f123b311d0fc17b693f72dc968c8cfd65deb098d2b43678e45ba04023100df4a1b6fee1ceed72e902bdf0935f4a05d01efc27779b567d411521d18b1b46b345b653fa18720dee7a56b81b67b04a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303d0491a4bcff522570989d32b2be954050636ea9f64822273b863282b90729d2518f2d3c7aa4fd00bb900619a41c117a023033227f90b97403ec251dcdd5210e1ea583474d1f33cd72e99ad2f733e9e4fc14b1aaa84c6937226dc31d1d13431e771c0302047c435bb50067306502307b81c1d6f6e7a24b9735772f49700c942e17d661532e46fb8ece92580638ade730dc85046c8072284c57849f449911fc023100d4c17235dabd40b97699c5aeb02a80899dfaa707df5003bea277f8e0176fccbc70e3cfcec0387bfbaaba194548fb9bf00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010258110a1d5c3ba4725998112f4e75b29393082ec38e42bb126e64dc27e78fe2eae99b5ddbf0c81c2752e5d8b95f6b5023100d5cfda57c882b893b7d87e84e172eef1569664ece8a5df116a80d7577159b3fffd8eef11cdadad7e7f1f39b5728bc6740302047c435bb50067306502304e0a032ed987760253391485efab6561a867f2eba7179b878754377782c8c92776c86e748d5c5eca6222f2362797f31f023100f99af4dc730cefeb57ff197fa8d22155e37596c5d7110737a1edf0e13b5809c083aa1dba2b52b8d033a663a817b8d8c30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e69e34beb00119b38c2096b785304b8474d5b20fe5efc4d721aad92723ddfc56ff173145ade8eaa6ec50306bc922881a023064c03672d1808ce3ace0287a6e23b388f3ef587e719084f6b424a0d1ca71e7c1abd3fc8359552b8d3e64999c2051f2a70302047c435bb50066306402306fc434ac6e278fdc3a1a5e45e1d23c10aa8491633b4cff11bd901cb661b41bf65d44ebd71e87e529030e95b5a2663adc0230060e38c45f783043e868dcdaf071ee9ec11b89775786aeecd81ae4586f425901472e8b2154579673d870ff720146945f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307c4853936537b984187b0686ec50bcb54df2273930e2b64e683a3895d3ecb9e718e991ff63cba87f29565e1ac26a5613023062e304720dbf87d457ca4b20dd16d8b67b9c1df7673f2ef9bc4c2df40cae889f39025a601fa152efc89d2aad92f695e60302047c435bb5006730650230440fa15bf18e4435a1e0a0e2b6a9e93365d33e63471e8b7754fb78957b032b2117ed50cc24423555b56ee7863b2a6af802310095a997164871696564385819aa119708da55889901d598e42eb511e95e24f0c3f6498b5f4f138ff4b7b252220a754a480302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023067db88b101af6c7a7326a804a9cca6e722c03ebbf5c5b38774d8b42cdc0cc1c6717f7eb9142ba2d85083664d29f8f80f023100f94624739b11fa12ce56b7ae056bb1ab0976c5a1bb55c73dc57158e2dfd800299d46e7163914e01f98b7bc0ebf1bd7840302047c435bb500673065023100bc1cef361706083992357525e2dffb58f068e02c32f7202f979f74d0b287c2252d8e2c0a5d1248761c0db9170bbf191402303ae678597b4db08f06575c52ed0a6a7aa02fb81e5ae3ed493625e1c0bd3b3f86c92d04b4d0a8adf303d82e03fc432ec60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305a5d41f54a0e9794a60750e46517d23b61c409c8abe8312caab0d0e383a48ce8bdeb24e234d451856a6b141e6d5d78d00231009936f2628e33d6301ebb022e291f066bc3738c3f92e4f663d05f1bdf24c7e0eddde781cd2f9ca3503f1889fcc6b600f90302047c435bb50067306502306f5bda5cbfd72c4b56e5da6ec838ab32a426823aee2c7d627773e12f893a0fd93dccd2961dc47367b1984e00c4167b7f02310099ff29750fb2531c8aa1d7fded6cf166e31d32b4ff5cadd4d58fd812efb75feed672abe8d96ea17080b6bd200c8ac13a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b58f25f10284748090bff73846b7e7c86696a2a5797875ddd075fea3eb4e865c7a4616529a6fc45a453e097a3d2bc59f02310089beccac1ed0575afc42335da033ab5046bafc4c021fca20aae843d5a7f5facc5c59f333786beff8bb69bb6dcb9de3870302047c435bb5006730650230125bec29f7536f9b9f75e589edc23185a494e3a8b788a1062564e4a079f5f490b2b693443c2ea01b86e3d358379da7b40231009143a33e670d2d86c3177ae01096bdb2133b5da39d8ffcc1a02b6fad9f061ecbcfa18367f38eb3f96d14feb7ab0ced170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300fe255db9a2d49b20599a430a91cc35c1ec4d96374cd6412f6951d23aae557dea7bd0ba446076b18dc8229df1da10b80023024380ebca87cb12ace825980c4d76861835f7830dc24fd655f3e51e2616a2f6ff590f9895706e011d4a85fad4db773300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304e2b4dad500f73d27622c8fca772f7b68693a1c8d9957393ce829878feed296842260514f9a17c3e3ed2cb0b4a3f9f450230491484a9cbe1c791303ab832d59f266c6a3fb1a6ad79d004e9c70845253085ae4b13bea0b9e89a9c45536982d4711fd70302047c435bb500683066023100dfb69ff065bd60ff509bca28f44492637cbf05cbeb49c68d46b40390585dcca7a156f6afd27d98efa38e593722baee8e023100ba856cc1fc3978495eb3bcb14de298c406bafb43f0d2348c8f73d70c2e3e663cea7ae86a015ad67ec78eaa62659c007e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bff18d47136e060278b9dbd47e54deb1717bf01f11f88273ae863903e516a9d318a16f30eb12b95466bdd9aa698b6dea02301b462740199175b043e98e4552eb838b04fb14bc6ced1616869d9f9563554866dd99cdea693944dc9aa054576dc1aac10302047c435bb50067306502307e633b2b878c044811426bc984e54ee309b40e9e4fccea1c4002c61e2befe62f0cd7431546e40ba812de51ea812e0528023100afbe79441e6722d602adba74a140f67c489fcae6950ef32520734ba050fbce8e103c4fc2e8f60eff4c1188988b2af0ee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e04cd3e34167bb8034451b38d6c4295d4e85fe8161aac8c54f1bf7411587567f13ebcfc53ec7ce2e0b2c0dccbc018add02306431dbe8a78ff7d589222b66722b4a4a71537ca1d92bb30f3f002daca52b7a591a9610137b6b2b88188bac6bb427ea9c0302047c435bb500673065023100c10a7c23b711c0d96337365fdbd1261b7c86119bbe0edf9328ce1e09912b1af5114d5c268df22d0672120661fbb84cc0023033cf4f46e3895d7de00dd9e3a6eb65d96e6dcb721053177e33026fc37fdfbdbffdea09de3298537236120728b9c279f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c39efb08b2e678044acd0aaf79dadde8098a91050334ed462560e76708720299b189ec190d88d91515024293524ad530023100a2f73773de3cb648e3b8c13be87f4f1b17e05b10104efde31d56662bf2cbec4b65de864d9920d8193d2eb03e9e763a580302047c435bb500663064023005a9b798f0dc2561fbb74b4cbdec3596c01c09e5ef885ff57d0715f89c87811d346dfd3609d366b15ed2c6ad1303d4c202306d1fa32b5d62f90c1139e10be6ef523875400320ca1ef8498361a16ac3f14ff5f78b1b899cf547fc82b59bfddbd783df0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303a3abdccb4f976361d763504e156a15bf4e2727095da073eac638343b0f15917e124db825ceeb02f53d8a4cb5de6b0cc023100e8df644697f902bb2939e352b793cd0a450471a88eca4182db41290cc242b29d49fbffbca3a74ed2441b576d899e19670302047c435bb50066306402306af211b114d6bd5d27762c6c517ced9528229abd9d0886826a2109df05ab2fb50c6d8ccd162ef899377e9a1f484a6ff402306c91a6890248cac49a3dc052029c658c277409a7a17229068aced9c83df62d7a0ed18eac8e24a014e36c8740a5bb7dad0302047c435bb5006830660231008acb7f02793533b3236e3700deda7bd73dd0f0e9c7ccf93058722652771a6b79ecc5170f7b66049adbfce172251a8e8c023100b440a23b118c5e0292a2193d1b474208086e7fce2bab88bce435a6e6b826b327a6d854148fb66cf4f8c8a1c58d35847b0302047c435bb500673065023025e4be6164b0b09f4cd62ac07f01012b70dd52b3354243ec2c8c5e326f655f06683fc1cd1bee64a927068191b4c64424023100f3fae5254fb938684fdef675adcfb3b7aeab70e5c4a6a9209b12bc606b0015ebd4082cff945c143ee750556fd803625f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230246a7e6472eb3907f997e19ddf4964b14e39c9c37f1a8a3564a1332ceb3a29ad4160a61408659e84632d0de25627ecff023100ad4eeb10f7ee93ada4ca4bdca4f0570ccdb0dd3f41ce579b0846b26908eaafd588090a64714f4dd839debb93d8682c8f0302047c435bb500683066023100da136bc381e34aea961f9a73cf727eb1ee911ca0962be02e86253520cf6099c00a9ce0c0d37c7af7762d9e2d328848f1023100d45fc70e97543e09c10ecb0e541a5d7b403590dc0012f453cde32f8bb09bc1bb9350f5384a5b4af0052da88dd689b7110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c86b47f7d1a9b155f97b0717e5c070f02b282c539d89e08fba99f6f67fdef726893b4cae55ebacd95c991019958c59fd023100c0328c9f9f490e298278e56383a7fbb7d02d10ea79b7064590e5ab0018f5fab9d63c1c4c77c39ca75416258eadd019370302047c435bb5006630640230431fb719d4807fb055d509f7d5246164275a2f329fda727207d8b74232d867f47cddd5ca3ab50bb68faf65b8e74b7fe002307924a414c0dde958a2f24c414696ecfa1d1724ab7f09ec568a058c7a8c215efc0c290aa56226e919a2cb5e41fac76b990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023043c9603687688aa79ec866d99d6db938ff2fea1c2907eb7b9b152dcfaf7e316066c2e5ef6c2c1062d539ab9fa8040a5a023100ca9ae8659ee04f0e53d0da43964a2d825277a55be01ff454ab1cb45e47df971073aaad278b2d87e27468796ca14023ae0302047c435bb50066306402307c65bcaafe0b29f9b1ea3daece9f9272ef0d93a10b997cb2a8d00f2b3f848eaa269fe5f4559f4f6fb58e6f52f8ee0a8d0230497d9f6d93f6c0dbcf753c0fd6e0ed445f75124797a9f3bf4b5d16d5b6c7817cdea576d985f21498e90a91a304aa11470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e757de027013a26d51000b6fd4a1db5eeb988ed25c9d3e99db26837ad0eaa26fc157aac7f62581197cb067a46799756d02305ea2beb5b21197cfc07dc0950514d20fbe081f0d7a56984d8a2b606fa41e62a46113dad094a4a3bf74eb0d8ab5df16350302047c435bb500683066023100f99dc414efd26ad0940f6c1f8513bbade2342970b4495972d52688520dfd1f0b6b755b22791c03dcd586e4889beeaf81023100af762d73a4d147d8e5cdd27c1af126134b0d69327b561c11dcdbdfdc97d85875310fc0d068f4f7cb840918075aab50fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bae7f9b9d056e8d15f4ea760d24b5b692a66675c2397d7229ffa8213f8886ee2afb749a92bbe24903535feda639211b80230596ab67920b868527ec1f998a348fc1ac7425a83eb897051a0145aa7545c5cf2746aa32de3103f82cd08534414e9c5380302047c435bb5006730650231009f15cdf166bfac8d7131ae19904dfb09f5aa98dfb3fcf124666f875ff6808a622dd0dfab7a1afa61bed6b6864e412ab902306bc9e0f052cb9960484240bfb98df087ede6f428a6820fe81f20e5aa5b53c5aa5496f31176062078ab15614d2340ebc90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306f345f362acd62d9160c1ceaea82ee0340e2af822338f4b6d4dbc11c5b270eb30193cea8ed61ad9cf079f287c63e4e90023100d11f2c97e39787ad9f6a118dd6bd3cc0b207de92cd60ad6d958c977973cdd9ebb881af9f9b48cdf0d82b272fd3bb98220302047c435bb5006830660231008cbeb4cb53bd27bddb6cf00140f496e45b0595040fcd1a5d4cfc6c43fc8089addb5e2a0f2816e1a1253dd3cc38edb564023100b6fd1950247ecf079461d2b1dbb9c7104de2e999c8194d5d58d94ab6be6b08841b833719d08de24b4f3c2e5a717ed3870302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230632f0ae9d329916659965e2b5266cc310d119ee74e9acc7b97be2762f9589ee6d4930842814ecb5f7bbb406e8972310a02303a7195c9bb63eeff9f6b28f5caac8d9d54a6704fbc08acd5c04ecb4ab5736e787c0718c1986e833ab57a0c3f946946790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023010abab1ebf7beca04eca4ce1d261e5f1680f328c8e60865049f7d55e2339ef94833b7b6c9e26e2f1aba2d00477cf3fcc02302398d9a8b2ec145bc29fbcee34081401eade3b983bd178c0ccbcc54ac7e941b850d744798788c19b9370bdd3f821f8730302047c435bb5006730650230692f2031eae54ba2b10fdfb077f06510542a132031a31350224d36e381fe0a26523e902ed4c8078c3d514fd71742b241023100ef1f1231fa7a5bf886f2126ec758740399ea9c8efcf50c27c97b81d06aff1fd8be1df0da4031806471967dfdcc752edf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e045b6ba4a4b007c529507efa3c385b2e6556ff6f1761a1844812bee1621088a4e8d3423211a62671567c2e7e1b7cadc02310087a8b75bb30cdefa99cf13ba314e498ebf35bb2e5475ea3d486fd031103c2b77abe065874e57566eb6156939cce07b950302047c435bb500663064023071c348c64e95f052ac79283df61e1781edcc8d97445c299856fa2d1f121c3d6e788b2c618399364e7798ec453176e9a80230548a5a6846414f991a48a56f0c72361fb71df55c555b3008a4adc24a759de4e34535f0dcc9071c07ee59511552033fb20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ec3db96decfdff71558cb1fd7368ce4418bbb4d5cbc8d75e21f4df45b0192d6227c178f069a84a14c3202e7134d85b9a02306cae437a1c8a056d900ad360a63bec3d6cb4e44a241cfe89a5f7d2caa91a20ffc27fac0be8f5754946b6120e5fb507b10302047c435bb5006730650231009b5fc6f7224034dc573dbf080be33b2d2ecd651c0e3246b64ed74defaf577001967902af6e38b06d4b30a940aebf03f302302a85d1c1c6953781812fcada108960b44a945b6daf0c29321a2ff0e0adf065979fdea04516e2a78baf398a095f3a9a8a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230737ae9fb1842e1db6fc3a9bc96b4645616bf5e47c3e9861723d190ac43a4411354989ae10fc910254eb0bf3772f479c702303c5a7f49d0b42b0679053aa44ee112a2ce22687516e90e47ef35ee9b5c47afd9b963e8cd00a539124aeb4a6df6bc28540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310092ca89bc74a066bfb7f9d9e8a47ef20d5391a25f2e0a5dcc56af5f60d881b3cdc512daa1bfe9c5e15ad93dfd267f78b5023030588a8dd03692bc9a3c480cef710603d8dc63b0b51f14842e65c4d96a0e6e76c47349b91d93c248fc60af239d6251200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f2778e066c56f4d493baa7be8005ffe5a91a864f5016830bc7b3fbe70c19bb32f73182187f077ae9f1da9a5fe1211c4f023100845b7392dbe50a8f1238942b1a65d7c088a813ad44a44e81414de9ac9e287d7e5d689bee338ba6a57eab577ea7618ab00302047c435bb50066306402300c94ed16fe6f6677029718ff8700975eda76b43e02f0cca6684f5f5bc715ea83d47da8f9615f19a225cac37b2846b45502302bee3de2f4627e046ae37866f37a7a66c11cb8ffafc59d835bf676b1434dff52efc641ae14f85b3b1a2ba341538a97d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c338e1db772b3a7d82cafe75fafec5dd364fce0ac778c0f458146b5d3916c6d09da65511bd082e0bc93a25b85b0dff9002302161dfab3e10a7a80f673f19944c3925820cf83c8364b962e3d6263653ff677e9d0f02ad60a8d6134462cfb0b32bda6a0302047c435bb5006830660231009e07a7c7acc85c8403c075b32c673878954427fa2b76310bf665aff4640794e7b1cb0344859395ecab1483e18972e84c023100f165a9834f04bc92e74c16cdccde50eb851467aa17825cff9934d7b86a9e60b4233a3f1ffd743237ca603c1e530725ba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100886f6f6fa60f3201f55a9157d62de5b40bae29a29a92ac5c4637ab06b6e86bd9c432a9e39d1fad77b5f76570776f5e8202304b306f480dd162ca4c2920d466c4c190b43d85383e254da54eff101515299655d0ebeaac02be21376b6b1377dfb72e0d0302047c435bb50067306502305f18a979a7b2932a8c0f4a61b291a35b18b5950b2b352b70a904f4d4372dd31fe2e7c37b4d0c5fba752bdedcfc5b88ad0231008bc171eb201eb2ef8d89a12e6b3d9b06ce556e3b0d046c5486019b2b4cb3113a95614051bc9513177b34230b47755b050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310097f707fa5c0176b490462c4a6c12fabd3b221b71577796c42c4869e2737dc3e433291f162bdd01da558617eefc23b489023100cda1616784c82ffdb8b61c7928f24a505314bed2fb43a4b263a8934ddb6455db1b9db5ad5489af9fd9c3d2a39af016810302047c435bb500673065023100af72041286eb57ed2546a0005c564eeace210b67f2cb9ac74f8c81a6246e43bea9f14ab33ab4b847f84988a6f1c2b08c0230034cf8b047f7a52b2e6d5e2a9a5923202e4b5e01503ad6a0b81dee2dbc97d6d3be60bfe235900859676083985cde0fdc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f4df4ef014dd125eb6a28a28fd721227e4f65c5ba1ff9593373c2002b6631c7cfc1870179888faaf4755b922e658225a023100f921d5e3871a7c5c8fc4cad02191d9c2d14f4e83415f56abcb70eeb6b61bb51d7dccac9348f14ecc3707a215281736790302047c435bb50067306502310085509ea93dbcdf81b5daa09275d35312c93fcd965c46e5faf12085194eb3b1ccb96b7add8cc2fc30738774aa2fb4762602305125684c4ed2d55e23263d329092071d6a94fb2ad85ee56c7916cdaf8d1abfa700d8eca65aa8ea15dd11cce09b20aec90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023027dc51e36f50014b8b863544796e037a617b84f4fccfbf6d46838497dd365cb036fcd62643d4113c6c602ee28876e92d023019a5445f1e7f92222f49daf2f4a168ffc3a94b6647ffbd3a4c3b90599ec162522c768aa70518333e86bfaed7ce097ce10302047c435bb50066306402304ecac25c58fc3eea7eb691892c3367188d90cbe0fbabb36f09fc3e06d348e8ee022bccb916994ea046c75bcf8093b52702307093a7218478c28b7b2a321a7cfc65000712b09771f99e2b53e361994a584891644f684a64fbfc206cb3af0b44d765fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230414eb46137985bcfe05b1de7f4e3075619f5284d3eb8599455ae89bb613c1ac5a1a2187cc5b53741a4958df86ad6234c0231009df8205425fd820eb4171473197a506baa90176c7b5c420fcad59314030d21d17b795407e54aa4cfbc5b8c04647c57df0302047c435bb500673065023100e869298fc5a700fba42bcdddc41c7d6ac658d4e999bc381d1a70b0484bac50a23e8a1b61a643ac565ced903b33b113cb02303ae459fc911e5ea44fcbf62b0393ca6855bf4c1c5e4484fff2f89fc7c7faeebae59b380dce0bd78dbe98b8925ecf4dc90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300970a2c04bc11fbe1d47b6a59afb0c38c357359b3cd6ec7f43ad734cd75c05a1e55b28cca4df1d45618ded3ed29354d9023100c5ecaff067ceabf6c872e423859797946d155af8bbac811e5644c5d52b032b921f67b2570fd09dfe1be2e4f01bd381ed0302047c435bb500673065023035897df6f458d1a1a4f397a048f6b7cd0a4db6b78b299da1b1425ae5eb0b1b40e211ded56bf37785d9f52829cf25bdc9023100c0a566455ede544586969221bde45b38e25db0c49ce8a947a226253869d776b4bec6b05be56cd9750c4b59db866568130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304072d8ae2a5ce9b02b85d6ad6926429ff1d6d8537ebfd51c47ac724640da1028d51cde7f790961c7cfa28e2229eb30d1023100b7ec4bd2cd58a3772d5100bb51b97549143f3a7e2e4da6d06109b99088824c0bf6a0974f98f2fbecce0afe265c3d57350302047c435bb500673065023005a861749beecee4962cd631c9703979577e3e771e1ec6529c445be4b50556ab690d64d0574fd6d2434e461218d1b202023100bad656ce9be10b4cdc2a0a9ad4c0ef686e1477fd1234df0832126ca51a3187ba54e8df49c2b968e759dcc51308a543360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023007f08a94f28d4c3dad68d5cdd734f084375da940d9d68bd31e7af2c4ea2d560c7c3c45ddd6aa29738bbbea874d13b305023070cf266a4dd420e730c4abd496c809f63be1a44fad5bd699a89e52f96d570e46759654baacf4916924fd3f69f44966b90302047c435bb5006830660231009b290907572fe292d42c3a079001132dbc0be45f6b67f25b009e9b8421fc82374df1eea2ade6031417d9c2147d961a1b023100d10a9e00f16cdea20715325e011c83717d9254611ce5db20e407843ed8f79e38452c72eb20680db16822ec67274f61440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304625c925350469f80c9678a4a2cc997a0e80b16b815941f4cd5e5a50d23d03b705e9c28363850f00336e6a2859a1f6c7023009593d09560f30dcfd82165218a35f22bc845751d720d0c480fee037bf8a6ec76f717f8054458ec94fe1de8f3058f5640302047c435bb50068306602310080b086731b525103cc9575ec549e479e84c44b3d1efc270d3c96e3906817e6d2a5e604ce2c4ac0567f1ec27f66fcc9e10231009ece5fba10b57b87692f7ba89a8c7e451faa2f8d5db393c447c25ca5f133294d4909fa3d7100c689ae775f60c47b65040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304f43f1cf0e382868af945228c7cc42afc89b7192757b63b4bb35056623ad0159e670010ab7e9f7cecd5f688fdc7d046702302e7fe74c76949819047222fbb2361f1d4c3fc2c4e7255efc38525a2d4f71103447941f69fd9fe8e38e8d39344a4bf0630302047c435bb50066306402305142e060df23f2b7cdcc67ff0dd95efe4a514ecc4126ba4b723e85b464bc5de3de6c3bf12417a91c31851ca22a18397502300c41ec78be1a47d651c2f7c539ad7a4a4f0244d30b453afd6fbcd5ed8f76312a176642608f9e32d1b41118ffb951640d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008a4145261126dc35c6913bf36c7801650ff4ccf76048d5b43a65515217031d15dc5e6daf63d5d57d33f57dd6f0feea740231008f9265c4afbb1b41cfa8acc94e1e42af0d7c2fc0aad8f7260a6a5a2310d326ae6325e04da1209529496dec97aa8b1f810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230287edf1d1ff7b012b49a8e54b3545ac14a6ae15194799cf702a11eefa53deda545f42b80a21c8defd2e061863e060e8d0230290a735eb09897f00fa5699b2c2972780f2c85878b74c1625b15c118b54e8a46ce3518a933387fe1dbe9bcec42c0a7fb0302047c435bb50066306402307c1ae24c5044236521c3bfda852b8263469fad6ffe0a182111bc34b137f07935fb07ae39ac6159d7dd78720aace81aee0230568b8352c7e05e69d6315f131282bc7427e5ac5dfdc77f0f245d8ffb1eeff043d4cff35d2bf130f486b7db70bf650d0f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b7823770d0277cba66f6795ff1ef712785471d22ff97256b5be4910f49a2e8e98d7deb6eb118514fb3668321fc03993023022ffabe50f588352eae083f693c65b905abbc3ad7ecf8b413b649aca6fc064dde93c6f50000ce18a666ef29406a20bdc0302047c435bb5006630640230789adcc85a1ee10f2abdeb908e2e9cbf7128674a0113528e03ff161e9519d7534637cee1ef61b67ce57de99e5cb629cc023012958e4c05e3c2dd70c6116d37faf6f65e102409ffafcd253fba8a4c800b57873c1f809cb9150b636113481234fcc4860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023052201e6f4fe51c1df79f1fd277e4eb4418ed13b1af02d6bb6c641854375328d60ad85df9e327928f3261de3cbce07d88023100f36721d2a4c55a52c8045bf2ae1aafb751125abad51d2bef217fe507d7c248d4214a7d726164d9b4f4fc462ced9a2b130302047c435bb5006830660231009cdf3c36e79abc2ac110de4740d6b34d9426633a43425c3df3662a0e022ae0b376bb66de1654211b5b0efb495d402eb3023100a7ff59b16248dfca883c867813ac1eb75b46c5476766a0b2e3bed662253257d9adb917d31210856f21320084ac53af060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230700f3e79c23e35357f493495015af37ded1755c625a3a55b3659fcf6c3b42a9152c2d6a72cb04d6c6ac868eab3e035dc02310095afbd96851340143adce8cef269a812b58839c7d978ea9f7ffdeca2b193f57b59852abebe221f504750df8febaede690302047c435bb500673065023100f2dc53da02b35a263130e85fa1e418a8d315314c2ed17964b7b36073e728513d49c97e2fdb49dcfae64924caf8f6e5e102307b8be349c1124c193f624dd907cd0658b3a766bae5236574abb6e6e73e1a354d7186fb89e12e1f31692fa1f2c1cea9fb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302217ef80204623be95d8a6c02722463918e0deb7b968a55f1f28a8f1c9709fa4586586e5db82fe85dd9e24ee34865dd0023100c892defc44620a04dccee13d5ed7ae57759a3394c7503a34e96f6c3149c682d111965f44957c3511c56d6c0be061ffaf0302047c435bb500673065023100b83a2d5f58a43ebafc95b70b691e8d1ddbdea289ed03ff5a941d899cb24f58547991ac4d0fe9509e8dcb7cf536ebf13c02301bc96fcb93f2b1a2a9024f47529bf19bf2d3f2ef4bc9fa7b920528b53f7464ee2905d9b3eef40f1313f53389267ca2100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c2133d59496d27193ddaf06606877bcf898bba3f1a9deffb8705a26ff4e2c28e208a624fe0279f05034a1c667c268ca5023100b0da105043e326353dc2eb6799bc397350ca3c3030c59257cac7516dab5c7fe41242c53e5077cce7af441aa4ebfb7ad40302047c435bb5006630640230573d3cf8d3711e7fe2ee8f8196a3397dc11534afc0e93474e062c2b3e285833f9993538d69248dd9b6333aeb3718eeb402307841fc32f05686572172478b22b69c17356838df6336db6d90d80444ceeb010e743dd22e84d9a72b31a66de9de40b4670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100baec995d77537fd02c2c762f40df7f12152ecc191f7a6cb9cda35a5cae8a79f23a7f206d4f78aa98378994596b336c9d023100fdef8a406b38de2a64212ee0e4d933f9554dec32a409942ccfe8d5639bd97f8539f822e0f25bf0439949d4330680f7960302047c435bb50067306502302572d468ba31faa6da7e3cb688c36f1c36c40ab9858b08cf07fa4d0c4cac0ebb9b0433921083743b43cdfed408c165d10231008cf35433a04ee08ad0e234ccefdd08ac8f1d0d288aba7f783e6243fcddaeba4908e1b5946a1aeb231a7decd4992338680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307ff17ae620c3a4862f9b652d674d4aa3ed41ccbfd5dd2f67b76f2cfda8b387c8bac353f7c894181002115fa90dd65fe10230366135966e8283f0ee3a64e9a8a718fa7ae61f15abdf13412b755d3ff15367fed89c4744085a580c20bb42ef7a2b99780302047c435bb500683066023100f5e61f13d6bf4c145f8810166fd354ee3b25f5755ddbbde8bb3ce8659fd39ff7c2cb82d5ec36d6aaf78a3a8a5237ae93023100c35fd64ed453a96fbe9b78470a9a9ea2d654b4311db677ca1509c99ef947713218c9834f6cf4bed8d65e8005854ce9540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302c725c0248bf4bfd1b7a2d7cabe386ea492a9cc0d6562b74f4fdc35ef75b3255ca744dc7290fd991355b35a707659f1e0230625360b8e3889636b860aa4fd6c36e50b37536b5dbf6eec0d6af6c116cfcca1fe372f6cf98d7eff6c1fdd0cbe424bc5b0302047c435bb50067306502306e11a28de6637bb052e6aa7e2bb86cedff27b75ae52893acb9d5a4b580eba3e2df4f8bfe793bbed72db7088dc98a9ced023100c15e988045eee05b7e35f01aa8c4ffa8994dbe8abac5602a1ecb5dd7cc3e0b46fb79c0f0a4afb792946d74005c0f32e20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100976ac8e1c51c6422a68d0e022d3a072e8826a951ca6e8ac879e50063fd76b0154580acf15c3f90069bf086359806b468023100e8d65eaf46f10c6d25fa1f40db01b35a6ef145b750da05cb8d0c613f767a179bd0dc5df75bf671a4cadb91b5801465f90302047c435bb5006630640230708a33e2dd484dff7425d8f550ba17509c768b7784d994f54b2f3bcd1dd9b8be204afde97a4837ae8294717faa95402402305a5477eb071a8831fb99af600349ec3216f781566dec685a5499e35acdbd04347ba4ade8aaefdeabda94f897b3c753c00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010a485fc4a2a153ac20e711ede6afc6d5400188c6949979c00418ecd4cb6bf57d365dd8e5d3fcc7ba46715545f4540a9023100f7038d379f57e606f0961bb7df2e1fb453f3b05d89d094435057b9d828492264649c16a5c9ba4786dbd6ea9cf90f296a0302047c435bb500683066023100ed7ae5f00d8214d26430676a90f3bcb2d7e3f508d11e59b022fdd62fb125b126b25c602f2158ffc836f88ee4506eb2df023100e49f6e39c7c401c261023e846c534baaccdbe4cd60a6e8648ab01b502f153650938e0434c07a3560cdd2ac9d69a9b09a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230030507005efd1b658088409c05df4789a32cd311301c80f97978284ad072ec66428760a0f5c0527bf218bf80e0cc294b023100efe6b12acc34da772088b6c3eaba08b42b5d7fb7e5d49d958382eeb71daf3fd5b4b291cbba68268cb48421f8e0b0fbf00302047c435bb500673065023100ffda3da5191589c3bcec89fcab181be411b3c2ce0ed2cbd11f792f6570a3ef4053cd6c965611dddc8f55dc8b6655eedf02302142d309027f95a41dbfa6af9771126acc86087ecda9f331bb6e4bc4a2c1582795e25725ade5058274f016ed26a6479e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fe3f63b92a31a57bae7f61fb3eb19027cdf7d344d281f46bc335986ff793f05859816aaeb3a8e51a1db0c523da524349023050a61a81482eddffa5fe44e448841bc285b01cc403c2bfd2e8da450185f9f01afab8125b8cf64aeb8d5b006161ecacfa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a3cad81306a5b3a2d573542ffe96924f05a2e06f9bcc756d17691c8d39842926a01b32b67c8112993e69a0435bf6a3f3023100c8ee9e371cc9ff21d969b9a2ecee7ffa55c4ecb6b3ef9140fbd6d9439ef4b45e727fc4ab88cd6d8be5f0c5d2851bc7e80302047c435bb500683066023100ce81238b90dae211b992c93bdbd49785621cf4bd09efb7fb483627346684732ec6ac54440e160a00d8469dcbe0e7d8b9023100d26b8601c508be3113ec2c815810a8a64cb39a6f3a0bd7189925f3db20b01cb53a28b39803a0d86a7b3d5fa1b0430e950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100969d33c82d14a5bf0bbd531c9e7efb4fbb0f38af93fef114c9b6dff1cd8401d1baa5fca749a83d0242ffe0b896333d4a02301d050966f5a862a6954e3f852d2d75b3078b9bbfee18cfb4f8482927de20aa9f1f5f6906ea4beb6ce509bdf3bddc78790302047c435bb500673065023100b849047ada458226f185de77d53255a14daf5896c97944f1a34ce87a2f819213699180bfc2d490ea2166ec92dc13389c023037f81f5260cefc9d94121c5d8b67b9976c09b0b5363435518b8ba1eff89e6836ab623a028003520c68866246339f5a210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303da9f8b01b1a54b71166e5bf3e2e1c89cf3be17642a547e94021c4f99b095460da931d613e31347d5dcb0ed35d0090c4023056e51c687ecfd6502b7221b2805ff0c42a862dfee237b2a78686de6d6100b8df4fe296dc21fc3ef1ef219c40f2a1b6680302047c435bb5006730650231008c659d6c25fd1daf7d2f222256dad3e3f227200e4dddc0b449dc50ba95c3a60868ef2b0b273d1e89abf893be419f11bc023009e194ccd811bee3d3dc3b9ebd35361793fbcd795772981c7c6a56aa8d11bdc203d2c2d4cbe079bf0cb994f85041078d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023043dc1b8a74f4e6b2d606f6968bdb92b26f32922f9e6380bd789ec99a1f3f9d3efdf67d65aef22fa753848d9928b63f5a0231008ee2976c8e110f80b11469d3169d4ff6c2ff554912f23b4a84b93668203290d9d3a7e4c99fdbb176e198eade3199f5e50302047c435bb500673065023057d79968a476dcaa9c8943f40562e2ee5c4cd81fcea6dbdc4907bab19a69a65c728d1b4dc60f2b8c9bca242466f8462e02310086fad223da020f0afe7ac4f43ff8baa24f9bfb766f302da5169c1cfb8172d9db3303fa4af1bb7c9a6729fde1bc6d1e020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064022f4c341e0a59724b3685a1f92c19b9a521a85659193675b8bec63036b9f752db07a78a18b0863989c7b51d83d311d7e3023100d83ea22f4166d9dc6aec576a0b6f8db728d0f2baa7e34efbad451d7da8aca083b53d42e26b85953f4f83ee0782fb24b20302047c435bb500683066023100d899cd6f319be9023a52e8801e3c88d9c2aaf0e99a845a0639abb1002077bfb1266b4ebff5f94edbbba419065076c6b70231008765a5960fd2f9fd862b85ca1beb2cfa4cb57b31b54efc43fab977d5d14f33146fc51be78fd3d3d227ab3358893cdc0a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310084592c8c4a98eeef3b6e51a4980d9b8ac84063bdea1d0de1cd7162bd53b1d9e799d30b5f4fd9140590947536ad09832e023100feffe9ad775c6e2540abc50e12480b0506afc29875041edcd226563fcefd012ff5a11c4e7187decbe8e5eb59a4bee9490302047c435bb500673065023100ed64fa212334b211f07bf668ffa26612b7a9cfdb2ca412a2de8a396c926cee05a15fe194e2636a988d1bd839aa0f3181023045db9e0d2e196d52c1d427fb0f139f489b99008a7d1b2f168d73ef75ceb07cb29b9f2b5c9c33b0da8157210b5b3602d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310082737fdfa1e63f01faf71099e6e31f267b2196ebcf12a146fc25d3d7d950296a71e5ffda3f422aa3ade6446977f5e34b023100913fe05832e9f080657d53bbfdca71de45556e4cc5041b101668aaa3351bb35f65575bc72642fbb262d28d72f2c7fce40302047c435bb50067306502307fd50d473f0739ff451017dc75044fffa92f965fe7b9c84bb0ee41f54e14aa732210ef27c0a6cd2edadfc73399eaa1a7023100d6c2770b577a86fc622d934ccb08664a6118fc73f385d39d127a7e5cf186abe724e15051098eecd74765868721e6d8180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303b227d6bf7ff14e69a3e655f53f723e5f9b2c225c1bab6b81bf9fe65ce7debf02811eb46faa401f50b4a5041da42b2f40231008829123d3c5adf520a5ed76d267bcf0c04bd3f05c75ef2cb7fb3c74a14ec5a281d3924edeeca58d31b147a638a8d1e780302047c435bb500683066023100f061320b28266f306da3030db4884bbe857bb23dfefbfc7b11d2a0ee8d89193e1b7ca1eca2345a6d927ad0a58859bd830231008dd37f79d9a9839c72437513a2a3f3abf427f93630327844af732e94d0a9bff4cddce2a3f81d4fb186d4530df359650a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d2f7b25bcfaedabd6635b2db8fca466ad11d73272da720ff3b68e708d08590afb2c155693da8eb41b356e6b06166f8210230752305f979e3b02c04bb9c6470a1984a3fc596cd44e9ec410e5ab2cf689bd772535da9d50fe077ff7062207ea8511f730302047c435bb50066306402302d78e102d3c6e56327f7ed1fc28881d11364ff60ef4d1e0ae6b94d1391a216eb6d9b7f8c59ebdd1445725444e201b72b023074854c6e4aa58666a360d49775342c733f6562b8f8707c68e38e78b43bb3f7b689bc5975ac75c91fac18ffeff45789ea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cd741c2577cffdfb6bde4f117a251a83cf68b5165f7737ebfccf5736d2d74fea953998365026fd881233320e99087cda023100ebc8aacb4d233c3232ddce436142e93b07db2fafb825b7558e3ff78207cc71fbf744c2d0bdd55344c138cac32f6521e30302047c435bb500673065023070d8da992172badda0b60138a59874611265055a1aaf60224b557e6330ac6b9cd356dc04fcbe9a685efe38809b8a24c4023100ad97f8bc75519e318f4dd6b52061aa794663a212e1a64263ac627a7a98ce9bf0f93fb53cb4a6c886bc99de2a8811eb130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e7c9595824aa537c3111841ea20fce5042e1b49037f0caeffc79b0d96bfa0789d987e5a4a6600a188c3fffaaa84036e602306c11ddddf94d2ac47811f56f782295ce4806fdb24afb6f110ff2b3565b616905ad8a3a68e99ee54964d0d63c91f931cb0302047c435bb50067306502305c266a6fac362a8c8035b2c04ef791fe084520557730686bca0e6a9d2dc2519c42fcf65850c2388b01887b96be0e8357023100832557c37d07cf17afbcf9dec602ccb9cc808b1ca8e31bdaf711743545d22402fdb4677a9a7578d844f5465e86e8cb250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310085410e2419350c7dd614d97d312c705319dcd71d76b6642d3a58e9f452879e3fb8088d8d72e41f68b2f9eeeb80134ed80230199fa1cc1e115152a0510aee1bb07292d73198e0b0371cd4d84b4416595b0f4a5eb07612ab1ab039f600d3e78aeb2d940302047c435bb500673065023100ab800fb4c62fc344ca4b5d44f7044e8cafdb7b8f6e545bd4bba757a54b3d37d2743ccf4b44f4d3a9eebf458e9e882f110230456c2d214c2c4688b7350dbace4fb6bb36d49e7c89f55a3febb9cfd59af7855b69124bc5b773d925f4a0da7196b430c10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b5f205adf85705cd5d063797bf425c860e4c6d6b30e31c2b493ac34b2b5bcb4a2db87f37a5ac79d375178dfc1c02bf7c023100a4d7adb4752d0e48574ca206c44e0450cc3ecb201f80ab917318816f1962558b92b5e625def5446752112bd98eabbbc20302047c435bb5006730650230519048f244dc56f50f7b5663253e1bca590e36ff5777d8042f5be814c6c6b200a6e1d59810c3a96599118e5b9a34b852023100ffe4e8d5ca42c28ee23949441e3529de60c653bc12f5795b2526fe6b9d9f08bc53c5174598dee7b5dc005196d50149170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307a3de6cc3d289e65132e80d5322e981744643acb2ea1d145c488268b19cbc69781dc2fc20ec32e11f3704a5c51c6d0b702300866f80d464c957f64a99a65766dcc00f5413a6cdfe19ef649d1aafb56a248ada310e2298834202d31decfa659ed234e0302047c435bb500683066023100d4864f40e9d5b9788e4c089e4cfe9ee3a3275636c45a622a091216327b1d3c1942eaf37b181b088d5150b637550f37c1023100e71f51dc6aff1abdd087d26346b145341264335ea32d041751669456199ec977211a699731f22363222cccd7ef66b4d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300f735dd9ed4ff781f6b4e8aeae3b2477f0a369967e8a9a1a0c803af235373d7fb44066465d810a28ab723a3f7a0c7fca023100ca93c39e08276b7b80b205b1017bccbf87917e57cb77ad0d09fe8a4ba784632f0a8e34d623f98381542732c5e84f4f1d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230271ec142a114f2b88a05d50df47e00d913b32f013fe5ae513f16329ff294c536b323b20480315b4e5845120a377e48d2023039e9dd075afacf9d55e2afe2a84c524b3afd26988a69140bcef2e0d690b3a960c457ea49169cf221c3a4e70e3867c55f0302047c435bb500673065023100c32ee3d19184b3ade74e84feb1d9a8fb5504a6d211d205ebef5567f026ba186fcf39db4fdba7834c12b509c081a47b550230075a15d08a08773cd88ea15b2bec2c2c2aa675ea70422e576170dbed6078b74766e1c2fb199d9cb7acfe3a845939bee10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023021eba94b9b145740dd345d53b9874d46f302639a2b863ca539fdea3d931f737f98b598f165c786e6171f93df7989df600230343cc9a6ecc648866b5ec4a4dcefd5e19d622d14d41753008a0999186208d6cc8dbdbf0f3e871281fff1a0bc8bcc4cbb0302047c435bb50067306502310082460b0da1a3e54b1dcb2bec6b2174483aeb8bbeb0f5b41cf7d2e25ef0b3445191d428ec9e44faafa787138f4d044de502306fe52b434dab49e13a56030a66301a72e0db2b2731d822ddf0e930478dd24dd54e6f2c900fc13095b87692cb7b5247a00302047c435bb500663064023034d13877598e58875681e64e38df0f2db4aa3be37e78f16d7fd4cd3b7478e39588b67331141be0e42210e57b7826962802307d5845bbf431124ab362c5a62f290b156e9efb0a9c3b3088550dff842abb8913ed70afbfb9d22bfea63f70b14468c5860302047c435bb500673065023100b65ff072136d5b71dfabb397ea08f273891ed66a0fb18cc7aaaa30cf491ff33265fd1aaba7bbc61106045ecdb58799f102300270bc78f95b4d648217b99569c030195033564d7aa62e757382c23b7b1be8a06f59b9f9c1da5d89d902d64b0a3f18d80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303973b04310e3badd733de00f35a9d3783c6fa941c284ec548854e6353e12e3353e0c245b7d21f8a555ac2f5aaad03287023059890543b2e7b500e494d3557ee23f1cd518e45af008ad747254fdc9d2a1c130f2fe8d04bd7ff153c396994ce53c837d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300f352ed924588fb8063b3ac133d7d3cd4714368311505758414172d4a94d9decc8086c1f34a6ad00269a50c1d973170a023100f113d2152ac6480271ad4bd0206706952590a6020868c32f1d7777cf00ffc16f1fc46d1f1f1a4f34d03e43807bf99d300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302caa648aa4558228704697830e3a7cf31a22db1e5ca7602ae73afe8c524edcc88fd13e94f9715d0bec65e10578d6acd4023100b5bc0b669bc3c4c2740031c174b38505abf1402fb2fd7b249c022cf60e77fad95bcae12b9be7122b8c931f759c732e3e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300c9bdcb2ddbb441dc548a1a8dd5b65b37a4dd6378aaef5374b6563e87804840c3f0993537bd61e00cf1a454b13c7548e023014c252635edd9f1d574eb1208c29505d42c9df48a1ecc9f1c36ca2b5f7408bb03303435733784bebf54266ec016cc45f0302047c435bb500673065023100f491645d0318b77157e28cc44e1577358027bc17779e7cad80bce53662884d583f5de109a2bb47f63464d395aac98d050230723169f4f723118fa7bb2c1bab87ff5d7490be3e357cd19fd9321b0a2eda1fb1a06280a08eae4eca82ea4c9017dea60d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cdd52eb85d28c605750d4fc62ee47971383f42fefdd79f6718a3ffb6a2b56acfa1e237e7cab62511955133e1b331473b023100e62ba7336c5ea9c5864699b9b90e76b944f2682de330724756dc513cead6adb67ce5913a13ea1b58982f7dbdbe66e9b80302047c435bb500683066023100f34f649bef298c8f0e0c2482f49f16f7769387c48669ad69834ae606cce7f29e2894bb94eaf9b5bcecbef1af867ef055023100d6efd6b90ad0c9cd260cd7590b5940d9ac54ea993948c12990bbe99b6e75af771c5f823ae0565f40f6ad9ae4c42055170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c09f7b247b08ce2652fcd470b87cbbc765eed1e6ba95df989309d0237fc0a2069231a474e5d7eb46f7b820344f42e281023100eded839f212d943ade34f3226b187e169b0ed51d6277cfc201a31ce1ed7d44245ae3ed4b7302498b371055c4fd0ec3320302047c435bb500663064023053e5d0e628150ad4abc7e5c7653a3d4f4d6fbd2e71b76a3a0d9bc2b318388cb1cf09ed7f5a85df61aa5b07cb16bae1b2023053cfc2d2c1efe620c91086e59d4cd3de2218a2f6d19bf9ebba140227365233895ce3cc2f265f4d1c56bec2c0eb05c37c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023062d5a2c90e5b33ef9facac2a99555b64dee8cbc0377cfe5b780a3d564f0878b2f55a027d9cbaf801d7031b8f0d82eb58023007d5ad85530fab34a46664b05b6c0fbd61f7cdda0d6eaea6aa62d850ecab62ba7bd5e74629550996a526342bc04f208e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c50847712761905a460ba75cd1231e8a97ec1300d17e87925cffb6cf44c66e680e28a339009f8c2054c234bae630d361023100a46afd86a4eee08669548313f21414c04796a08587a644e81f2af3efc3b4edd5229781fea5b851a90df6b84fa92281a10302047c435bb500673065023035a90b5dd21f849061f1cfd8e903958a3c9ff8c0948b870dc57ead9bebaac0e638d659ee9ba6d8cfcc9fbf4ae1359c24023100945a7b6bfca3a2cb68804225dbd5c528369d3d4a4e9d878f4c79ca607079192277ba62e2e41166b5d9b0f6059c77920b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305fcfb5a612e070decea79d4f9b748b3b5511ce840ce2c96aca173db4c0d761eef16f16f09827c10083c414c47690b8fc023039d1505c75cac39202cba317c575906c539ca53aaec9421703d08778cc8e3c12123def4c2d4cd8cec7bb2669a35d319c0302047c435bb50067306502303beadd612fd47470e4e59655d4c6f8cc135b41db9b126b35488cbc7ca6956472cdefc58297d771f2499487abc941c0f5023100d23e1f94bda0c12f57b6a2be1d9a8eb6f24be3c946922f53759b7a3d566c9a580e36467ae5c6530d4ba282c3c8a995170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300bbfa7f4542d751262369ea17d2e114cfb42aff6ebaa72b8baad93705dbec3a2ca78ba4ebffa26ae5c8446286460a25102301670c8edde1ca2a60e63ac9cb9d066801414f46330545204f2f02fb8e328e23cf6f324fd422a8ce8d011e8db42b489710302047c435bb500673065023100fb69055dbdcfd6e6c133b1bec85f98405e60ec8e7dafa264fcef0ff7c53ae9663949b6f4f4c32f7bfc0131ba3c92ac9902303a0579d4303403974f69f8f7aa28f2dd4c9821bc501fb05b09a6fadf5bed71614cefbb10e0abf7fff41a6de57235dcd70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023068afcc9318e3dcea5d0a9d498e38f689801e62bb679a89b0362fc27fd0823a8560998e3fc7a504352450cd021e1a4d66023100bc7fdf28a494be5bf458973fffc077a8fb7525862288ff34f0cb639ab0e05a05496f07f85a7b7720af6718dc463621290302047c435bb500673065023100ced3ad535468dd8922630f36f4da0e1daa8c23f98fd99848bd19a656a62b6e69f98463f9a4479d3c767ec200702f4ae0023027d08e1d39d2cba0807faebfd14a3a448c49360f2b57e74748a09d3cd39e70b59d7ec9ce8d818b6cf0df36ae579ad5f90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b1e5c68c2a5e67af3a3ebff044ed5f94651eedfb3155545787897da60ae8bd100551f3cfb2e01bdd888f8d137d81a1ec023100d77470f4bca7c58ec2e971ce7746c3374597495043e8eb3a2a72a26bbf86cdee258f7e1751672b3836a52732910e54e80302047c435bb500683066023100a8d41efd67724e0ea962cb684a5222e1b6efe41c936a6ca5a6a9a50c2e1f3c2aa37318055f340e07968bed9d54793a7c023100e41c57ffc986103f360cac1db70e5f809da1df8dd0c1d68baeb0102158c0d4735141866b311d3b39bf58ab95e0cc2f3f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c28268b960881b5ae03024356af0370e74a02c9adfa85f388e8ef3ab46fbc953dfa941a1587db439134e8892bb9b7795023061115bdf04a3294560e0ff0406e9655a28a4f234114c5ca64274e6d0442bc9583ef66484ec8b422e14196b94009722890302047c435bb50066306402302bbc0380fe5eb6b78c1ff814a05dcfade82fd7a33d20079fb51ec1baed230c3b4e2034916d54c912283b2001e5b71181023079fb2a32a250a8a7dc982b6c162df8032e510bddfba67999f70aad01e714decf54675259e043f9fbd56e18489df4a42d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a88e0126ba259e9790eff7bd4269ecaa188232d7de80e754865af551244e8030c3321ddb705a51ccffd623d9c3b309f3023100f1e8319d9cfeaa1bb1142f45fd800021e5ad4accc229a0d2b652cdd67d1678d08c76e501061c9f7b03e79afa006728190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ad802062766b25c2e91af5754e47ce4e6c083c0ea7a298c753b423568db2e3f846af292e4b1f000dc5cc791c579b9da3023100dbce3044cbf09d288e31448b14760ffcc3d6da06bb7b147f2c4bcac07f02d8575d3f19288080f0676db7860a3d216c390302047c435bb500683066023100f4ff7a1b28af21d0266d23eeb88ae1d48e0a7f3f919a1c701350c30703209f9a8469d461062de49f9925933ccf658030023100f9c867f4e9990fa39ed75fe2932d35c66f6e51d6ca72f4d5a28b7c71e11404b35924216fd5f47a7d20fa88df9539701c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b1ff1faebb7244214617353f8747e56f3c344b170db59a5b6c22dc75486d9289fcdebaea5883ef1b2e922dca724284fb02303b0370162e9990b23fb675734c4ebab7be40362e09cc7ea102a7a568286292d66ab5d8736faef6770324310d45fd904a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a146f1a5576e8b41f969ff442185850552c0ab59090670769f1cb47103e09fc4570f4616f65d8bd4bb74aa04fa7a6e6702302f1b67be6520148507054df8891cc94a60e1bd3e226af005d18e57c69d5c18d8395e7b78b4b68e8b4689658910597cec0302047c435bb500663064023018697ac078c07b23e944cad58acdf05fcf0c0678193bd3cdcbc2581ac5c1c75209fb5644b01eae2f2d5a118db19e5ee202307e52b228faf76ecc4f97b885d184ad9d2b0e4f068e32abe9832132648b3c2e6f0b9e145a95657bf540146470c9b8093a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023031f666c342717df8596201c9cb1945db79c858bef92c184bdc123742d410a74f57c66536af779d9605a3681a3f78e1ed0231009c75c0cd4e00407e106be9b1733881ac522fdb5a810a3d43ced39d5825df495a3433a0025e768f791145cab8fbf1704e0302047c435bb500683066023100a9639234d9c7e090b3fc569744122263bfcc0287d5e0f817ce4e2cd5f6204607b3ecb800073ec370f97f92cf9bd10fdb0231008ed42c1e67f0933cf413a37f19697a19e1001f4addb26c3ff7209df3eb575c91b9ff9e1e118d3dacfc3e16b28720a33b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b622e72da114b3144bff24c4f5326500e056d650127eef9b75e7cef370ff322333333f8ba4215a4466fba760805cbc1402310088dbb597607e8e11439d7107da1ec75ea443fe86e4e2b0223272c023219ac66693b974e2f360a0f05bfaa08b46e46e460302047c435bb50067306502300f416a6ba951609f12a23c2b35071c625d11687b845252c538bc853bf3a107fd107320cd0bf09244f346d048d69f8004023100adbc32daca6a77fad77d87913e6dd6788a885d13605bbad3f38c2afd4411a427219d202d4a5589e21778b2bf6fa1c73b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302fd2e37123498714b11c42fbd9b1499ca119238439ce14026fb851189eb3427df0f1e21fa368dc5dcd9db35df22aa240023100b11881c0d875edf2caba7be57aa9ea2be938b6cb9d57a833df42a49ee37241703866e7255323921a8aee74331924b3ba0302047c435bb500673065023100a9fd8fc049a91cb430339210d3a9824fab7dba8bb5338588b06be04965d19e771bd0352678927989c7c47666003dfd1c02307b722064a60712e126b935527435250092c1e7de559b7a8db56783a04c15fa6554358683f18680a010c574583f1168940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302a16a591046ed5cae151cf1770ba0c67ad62e3e425ff719fd99e7562d65c94cb0c87e475531571cf4e27dcb4ad8bdf9b023100f24fd097f51fd886ae203853d77ebee7fe5365b937d2a251339586c271bb5ee3b00ce1d269958b6ed3a44e10d0f8e6540302047c435bb50068306602310091bff603e07a3e49a4564225235abbd2f01dca431bbe067a448c8a582c36b6705cd12abe14990a27898bdb78b5775c74023100ee3fdfe48905235e6fea9c825fdb556fbc59ddae3df298717b1ddd8eae6951a5c01df351d6cf56bbdcbcf8faff7a466d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c1c2e69239c2f110d0d486bc30142bea31626331d65ff422b609549b486fab2f9ddc133bac733d514cade999f5b22c680231008426ac540aaa40889def4e1910f451e46345fff4f61c3023bf2ec364e970968f36d2ec749c59b8ee30bf83890fc70f7d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301f3275fc431ccab263d49d8eb5a306d0f5a0d8d61cfa872c99ee60fdab76b9e287343ca67f634ab07bec29b5042669e1023100e5db1f057eab26acd22fb9ace660a1ccaec465704ea6751618304bf4fb16a07a612cbd230172fc698eefc2ef7385920d0302047c435bb500673065023100b5325bf9d4cf534c210df9dd233417e0cae8f3ed8dc8a7e7c504bb7c95225019948dd53fb4d0b3f9823fd78818c0e75c02307b4a79c3e4ec7ecc00fa8fe94e1d60ca48d2f0eaef082681267a624e74aba439426371888c698740974334c0695222db0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023072422e50ee749e05b99e6ce4367bec21715c42c0d6e0015f235e533819ffcb369a0f15537a9088a5908f054f401b73f002310097f8482f104c22f20ceee6e1822a36ebb6820d469bcd409abfa4585cc4615a721fa3dd52776781f735c5ef0304419ce50302047c435bb500683066023100e7ce9cd34f6ac0af7b095a6e1a27859e5fa81b18adbea625c7921355488dc43f30b86953974c282a11e01f316468e63e0231009224e3c06abea2a3b7354802bcf0c96e2b86a07c85cc7c1abf538bc9e4ab39aaf7a99ccc8c577a2f16fe293facdc479d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300f696f9a39714195268d04ca9d639f6eaa9e7299b63466720016d6ba7b38168847c1b0c058cecea9f6a303c20e7c238a023059a12ce81ad2c4224eca9a2ab67119f6238fc804a1bccec627f68ad4b261cda5b9ff3e23530a5288afef22692d1c21680302047c435bb5006630640230701a82850f5a702b4eea03da35d2e844667b902146d893146613a464cb6d8ced18d34affe1f4d0c9c08f471e0815fcb60230266de03ae7d0eb680db7913b892ce81ededf8f6391790e491374584b0a5d0746a9b6d99abedf795d5e44c391044b6af80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100986023ab71af95806dff2fa1fff5c349d7b0a7fa00f27152a6eea053167f786bf12863af84d696a63762cb0177b9b95702303c67c17c11eb26f59cc5189d9ff62501a27db6f5d634f8a34b55b16d98ec63649e41efe6d26e637c2075cea9015314190302047c435bb5006830660231009cba636f4d34c83e2e5bccb64c3f7422bc0e1e9a77d6977ac506628d6c5c5e04c9fd2b1b3bc9bc8fcc8097e839a48ad9023100d65312c86f6ec0cfcb4a98c55b18f8845688aea8b98de7dab2b3ef8b7705150445e6800a36644a8e3a883a09c50897230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d93cd8d6266f0ac8b539a16668112859b4e82a44efd7895d5f2522def2cbd54242636fcff0977fd4a6616a4c45ad66d1023010488210cd6be7ab160c414b8a7933b590fb93eab3372224de3faa6ba7d4cd57327d1b6f248b5e64fb21aef76db74caa0302047c435bb500673065023100f4da304d636dfc17f904cb3d172fd08b9da925cdb6b133b6866e61853e5c5cd4cc70718b262104a6cac95bf6a6fe4a4302303a620535af120f7f583c315da3404507908c098baf6e789657c1893279c6169b73f2200925f89a671e7c0895728eddca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023013f12132a39f24a1d54ab95575d3fac5ddc4f82a1568679668e1b1f4144a08afb07a5e415e7f5b07bcdab664989c051c023100f260008f1b5f26380f6b5ff3d1665200807a5d344c3028fa57d7c92643588a75e2eef8589627b12e8b148633d32470960302047c435bb500673065023038b3420e59ad72759dca3f211d1cfcbe1a144f58458fadae99140ff215237b74b557885e200c093c5793eb5879ed513c023100d3c0eeb3cad9e4046a1d0c8b85f22373c1d1b1dd4a2a6f0f92d964db84cd2fe2397a49d46f30948ea88093544512db8f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e513d33d48ddeedc3f16871e05cfa10ffe2bc0ce495184fe0de4083025257c3324ced2f989ce64521351260d1d77d2ac023100922c28cb35ac6320e30ff01fcff742852dad032beb30331620171aaa042b4f3b91d9c73d7a02e7ad09ab2b31f3ae2f4c0302047c435bb500663064023019ff2cc7de99a52e0ad66ab59c9f2afd0c581cadd4d2038d7ae7378f1ba8411bdc660cf188b1e7fb15b4e351888f1a76023030c0e9bd297acf6f5cefa4db52301f7698aa2ecb3fd3ce2176fa5e9521a1d9c4c8454311fbe0c88a88fa76a3147b4cc10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307aab1ce4adb074b6ee51dab5a6fa6109398066a4c6be5aa185ee6a9290f2b8c5f69e7a15079dc4ec980ac76672886709023100f23e376a86d6809f8022c479c6cbf2cff49b57ba936d14946eedefde3d8f858515040f92310c6eb5ab63f4e652ae65b80302047c435bb5006730650230181614bd9ef8f8ae5d9f95578876fec9f791e8c03f5bc23592c2344c2e1a85ed4df6e45afb609da58f921a6f020d8eeb02310089e0a90dbbdbbb2a1a63c1b561df99da12fde0a349a4f493c07a152ced1530566da62216e9d5b9eee865219e66fd5ebe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310086f2ee38b734ed5b14b607fb7a68bc3c1d2a4ed3e85ec84fc30d37f00d755f30b54803bff4112fb9c74976181366144b0230241e17b250b602a541ef27cd0aef4defe42c29b5039a5ca5e42b0def0f901198635a7eeb61ebf1d6ceb6c773e4022c310302047c435bb500663064023019e1269691cf04550c97f553aa5ca2658b188015c71e04d4f7f60d730a3080ad46c4c867171a4476878d0db9466237240230610317bf17118b92c100fbaa28d0ea0888c8cb7b23030a2e8b619c5dc4bd770a90220d05abc0d51c788c1b399cf3bcc70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d366d0ab10055dc8480e7747623a9e8a36ae90eccf83d90eaff23de15881aaa87d1e207585d438469fdccc0b97a4b74402304c04ca89c93f121ac878e221f5382ca50d45bf218941401ad4c573aec883c86a855c4561d216a8fcc0c2ceb2403c4e770302047c435bb50068306602310097a398ceb2b97c239bde03c00984151f9d112d53fba76a1965593945cc0dd0bdf70307e968a399abb067eca61f638b120231008959aadb1b5cabc6bc3da5d7d2d53d0e8e0fed8a4c78ae8fc9d4b2344c24ffa80163f5dcc74af5dd7791886dcb10b0e80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300183c6957182dda0ad5f88a5bb75c2bc2b1ec617aadbaaebaf80945ada414468592192ae79e2cae5bb87066d0e4a3bce023019b952ac3d58ca6940188b1bc4774b6125212de56fec7dcf948bbdf50fee4a338d516f79ace122f19880cff85822be350302047c435bb500683066023100f8a9c1e1969d756ba1b6c2b99bbb621b20e5ab404c291044265beb9ba2b4f1666c87f04f3c90000bc8cc77ef27bfa4b1023100a0131e67d3c899fd9e3828fb9933c5db462c31dada61acae8119f67fbdbd0ed8e1b7ed12f1d3f7c0dc91db65bb47b0810302047c435bb500683066023100c7476f453e8bc746cbcec919edc1490712ee9debed931642a4e2804e1b3a85b547f093e4ea24e29eacb348266f6a9ee502310096da90d6453a9be0bc56483b0ccf9fc252b36398e64cfbbf1108d5b76daff679ba867a5209713040d3c2a6c9552f678c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230057aa6a90a25558d4ad8a6bc3255b66dec62552e20d220927441e279fec51c10551282279c3340ec51e07b5fd51eedfe02300b70844b798d77d18dd231513691d1c3705d6e8cc5ec368b84811499c61635f5538ca82883ec055a8d0b3cefa778202a0302047c435bb500663064023016169e56a63c647d20d51cdf3baa0afeb4fc9c1bda15157a27171b076b7af0ff07881aa7104640c9e3f1bcef98dfd83902301f58161e655155a997f305c695caabe05a52919d8e4b29702fbb264a3614913be4ece23840c2904e73b348ba7e1b8fd30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f6fe7ab3e990f331d822bc46ad43b0e559790d04877dcdc244c551ff8c4e68901f74e0ea8894b8abaf73c1614a6edcb5023017734c67855b8a2fda92cb8cfd0f189f6230d525e7006001355477f13d8d1370f6f1e2d5c94d495ced2cc8240fee0ce40302047c435bb50067306502306815fdb1ab46c76aa182d6e7c91c1076b8b0bf8e71c5c42875fb80d7baa01217435654e8064a11a9ad5de8450d280851023100e1f1b454f59507297a93c915fb4145a601ebd2bf22e006f46e23905103b113c69709000e74ba7a4a02587b5526519e720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310087b2a2a1004325356d5e65425eaf5a29634baed5efac3094f19c80a835b0e082f4211d49a315cabaff3a1022a46ee52d023100b5f13963bc24d63232ea6056da306e39ea0dd93474b826f0f9e0350509dc1fd05101c3170712c61d9be08ca2f0baf7190302047c435bb50067306502310084de14d3f58ce5f162d85c6e5604cd4ffc289324c1cabbf96d0f2e30cb3a68644694164c739c8dfd99ebd5abc7bcb39d02302a558a95f40868f2b6996d3cb12640c3ec2d5abc2927988a381e1ad83da8b9ae654a2a1b966edc1de834efea371e52bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302eb71676c83860807df63df1d0fdb2b9ecedd5c1e673fadd29f25cdd29e79d98f4f04aad6a8fbf2843e8c4e89b794766023048d6d0ec3422bc44b82960bb0b300498ef9fbd925105d4e51b494a070d0f57b532ef94d14b240eed395f3b2fc36498b60302047c435bb500673065023100bd0583228f2b246f641374aa5142f7988b449c1e6a3e9bd0466dd85598abb8882ad3cb9eee1c78f1a48f018f3dc250ba023029d581bbd5a360da6cfce03a665b9fc1a4c9d69d18d3b24e1b98a3d4b96f8babc33a355793813d2bdb74bc0665098c760302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cfda2b308c4a37ac0ad7611b80cfdb2d1776fa7868479b3db6f3c6dd72d658b97d67eba0c2a50a0d8955b1e0959473aa02307702cb1bc32d19acb1cffefcf1b20abcf581e0336a3c97b294df7f239546f2a158bfe8aa04b9a258fa7c0ec63c9a11ea0302047c435bb50067306502301d54654763846bd132f6cd7b3ff4360237df57aa44977fb85fb7337d8bcd7567d6aa458c5cda93f5ca87d01c5802fac00231009fc97a160437d8c13e344f2657ecc24b4246ab14c15b46ba9876625e26740d4192f1f5e128b052e5d88a596155361cc20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310098b947e969af4f82f09f3b8a53598324bb39f4f8c7b31fb78b68bb6e5180c998ba73d508e882fc271b91bd60799c64f5023100b6b109781ec53e57a2e7736dbc5bfc87495f95b3a2c847179626442bf4e4a7a0ec656bfb75319f7e21ffb2b55f948fb00302047c435bb5006630640230022aa1fda2f1f602c779c954436e8349b6e2fca97b837aa6e746619f41aa2b8aceb6a5ecca7210b8734d82455627e7090230178815a4d16f98a05e0d5344a5a18a083801e19e44216ce22fa9736a56cdb651de05eba82a2e9ddac933514a5f1a7b720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100daf20151e22e19d750900668c54ac0fe22cfcf596be7443fea13c192d47b5fe3db27d9c6257d260864cad80ab07d4ad002301709c40c8988f306ece28d97d430346377a45a34c69605f972cc6fc56139cfdb6aed89be30c495ea35ae119e148e31db0302047c435bb50066306402305e6f35ddce7c02087127d4baa92b2bae39795ac773047ba784f483a7b7ebd0120eb998d688d1836773dcfbcef269852302304cce0c922e7687196bd49db2b79a09da010daf12f25fbf85de8ce21d03c1b3138009a5695ed17349a8b7a9aae925709e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008b6b2d6a6b4dcc5dec39e10916b954787859e7fb83e3b81caed908ec2ce599749f38ad91debfac71a37b3d3ebc379f1f023100aabfcdc9196f9a11ad9e30b205259fef8a04dc27150d76fd485a87bcd0cd96238524684b509bf867891c338316f3b2e60302047c435bb500683066023100d23fb43c0f35764b945c022f43ccfb5a8b86df0cd841e33f71729283992dbe1fa6a373fbe3dd6f134c4137a659f51419023100f0b213393af5b0e99e9a2fa73f5b64ea2edf70d0775e9ef7546db2da321e537f031e750908f3d08845602d0654cc6b010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100867c77d7e370239c50558291aa87ec7f309361ec173f387e7ddcde6f029f1906a08beb543d2d08399a30ac5528e9a862023034af179883febf6d21b2374fca2f60c349c81530bb921977ad1749d028a0d5a01335cbb8feee62ca9b230554e25ffe780302047c435bb5006730650230422cb4dd2df006103d68a33deb396521b25abf702c4eec7489ccb184de81498f6bf6f9d5c5348a341360c7321c46f9600231009abfc9d61215c82e8aaa8eb8e234d0d4fdcc173c9d5e89efcb5c302c4421451e26cd85989d0dae00ae0a920db4279d590302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b878e59b54315b91878f45a11f38824ff273ed063b5ef32ae6ce10f599d880d576329378802c90c5a46828c8743ccacd02306fff1341a4b3a62e675e8fcaaf3e5f4729ce860c8f592c715d6820f793b8b53f2da08774bc0110d76a34a928519535810302047c435bb50067306502303b2d88a742d08e844d5086c2b2204f3a1b1526fe5d458c36fe3e73037f49c21e278553b3ecb04adfcaa0dc0c4e1b7624023100d9fa9d16685b3afe7fce0b505b644a2056ee5f188779796efede088a4b7d823c6178c078afe940378529e9aee030d9800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008a5e63ad38db2e66e54119686616d15eeb283b83a009db3791cb3f45b5675f27bd64a37f8d3faada6ebbd3e7144f402702310090f803b2f3097c8e4561a266a345bf70ef4c18ee90b2cf73565dc2e610b2f854728fd95a34db8c00c735e2e1359eb7050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304deb4adc2f85b6d9a6b03a75002d1408165bea0e7a6a8f4edfa0bde447265f082855b1d1ce2976892415ca5decae15bd02303cbf22c5cc90992d4f23e195e1032908775da5854258cff579311239e9cde280f10d3325a352d3619977fd2cc0a2d04f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d7b505895b9e193074823d0232a8f435b27a3fac385541b7ce86064e1c85c8c2c479d9d2a57c39c3352391df2b101f54023046324794722bde616e39f0218edef5b2ed458df80be4f15d06a0b121799f8e3f6e12a102fd7fc80028c25fe788167dfd0302047c435bb500673065023100f60c4150fbf8b344534d26111b8dd7c842bd917d8ac946dc9d80b3de059302b4eee164b32563e9855eb1cec6b76608b902307ae0b328a0b7f21c3af90b3dd06354fc6463d171bb7e4bca5eb84014bf351312a888520a7deea6a6e9df03a658ab69900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fb4f8146b3467b962bd52994fb5e66b1414007d8bf2a20caab680850be68a0833f4a873eedba81697080dbf25e84f8c60230492275c3bf2d2bf6e470ebf3d57e9fd68d6ca56e9ebb0dac0574f672cebe9b41d4eb0821db0569fb9796bc771163fce10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009f8bf8d2c180a260bcc77debb17f22fe4edb831a2dd658789b20f3344aaedcd5551590e36d066740408e16690bdf231f023100c834986d7e4cabe57ed7bc94d92efcdeaa9e57b84762a42404fe7d24d407621427818eeb3fdabd149b41f2980afddd090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306f1f08783a3010e588dd0aa1e877ac7243f32a75f4d7570b6962694f456d1241d8ec593e605da3c1fa47756522d9717e023100bf76bf944c0b87f68f5bf805d34fa841d1019a266d9146b4dbfd352166a3fe49c844e1b107d4c86cb2e623f5aad0a48a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305f4bd49ef0f840603d409e2cc5c480ba0f65b164e3d03465ad57feab23978f9e4081a25269ff3134044b31502575b1ce023034f2f53dc8f210249e736f705b3bc2f07395ea235f5f1a4c122f71a2ee9a7a7f74146d4d064c307fd9e5c1d9483299df0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023056e22a142e14e40e8d0cdfaa35da55a95dc7a74dd8e0549e9b70f968024973c89b542f8ff1be296ccbc660008ca7c51b023003c8eeaf2f78e34e86b273a86a7675e746373d6e6af795e0f78a4034fcffb68e007b1e732c039d270be07e9367b1be910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d519fc49c1d1de341c945395bba40e74113bf8911a49a3a5ce52c0c19cb94e0437404880f06071eea641f267b4b3336a023100c8dc6c1503ed6a735a00e5c118a37e503d381fb699c0fcfe083e5e52213bb17aa1dffa05ec813b0131b686f82467a5850302047c435bb50068306602310085796ed8f4745ad1a7bed141c863dc18691a015832e239a78a6e19cb94a570653ce55604701e4dc35491939efe9eb550023100ee2b883e4c3212e4ee3914fa00a0986cf39493087b91dd4657f96bbe6ff4878daa051aabf837f5dfaf39d9a64c12f3d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100aab7812bfed8b9c71ad5512c00e74aded0736a5dad6dc5d3a96c019652e3f98464711fc8ad5b7c036a714e1f9a13e045023100e4ccbb413d00eb7f0c33bb088b6d81359751cb2c037ba82f7bc2b1dc6a8d1b198903fd4de4555c62bb3d724c0e6810da0302047c435bb50067306502305e64e59d512004dc31610626389414dbccb34ddf2858260b327eba9aa4b40db8774b87a62e7238d4b0e8c551d353f1e9023100961ffb3e926b369abd88c09b4c3866d350f4fe4713f19641a5000c9209ddb428e8fc7ef4774c388a589a67769981f7730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305f99f6bdda16f91d3a69d8ae2700932d9792a618d5fa2ee82c064456a3780358342e4fbe5dbbf2b2a7a3d165137eecf002301c1b541d5b861dec9309d7c6098a1860377707810e0e0964a6f26731c39d6bd2ce3a62beb0daeb3ef19d50e182543d760302047c435bb500663064023004f258c6dd46676343b72eb86b762981bcd710559fc69874b8ea234682049f8fa2e66ee2528d74363f6f39da28b0b33402301f53c11db1596734fb300c09879b89e0c9d10b00671d82624664c6ce793c73b2b8107c2cbad7168624da5ec9d0147bca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a209343f7d8c16e4c0b937d7bd330be2a1faf1c9b2ae038f5eddb94e4292ef76c077648b19a1012ec27266eda89eb6c6023100c270f8c35e8775c018ad1983cf9bc1a8c28c730cc73ccbf2eefbd8acad43c2bfa979e5d81e75bf40d44078b89ccf45a00302047c435bb500673065023006888ee289873efcc863dcb6358ef3c1a321b51a9492d9d7b74a1d41afa98a08dcac689bfcbc75d70f7b27a47a446f3802310082fb1e1371e01f8f2e201b7969c354486525a665ed91cf491ffd4efc17e65b588d967f039530e30cfbf06a97ed3528350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304b3cdb4c7f683fc36ad9a69cde7302ec7c85004f405ba3eaaf92911520de1cd70ee118d2ca6db5372ef0a2020ca7b4b9023100c844f5ab47128fd73863cdc722074fb6ee5ed951bcae9d2f2fe9d3262c60b4e29a675a7d5b21b2a40c8894f1aae1557b0302047c435bb5006630640230544a8521e6d7338df10f5b87531e2c9b7a4308b0b6196784ba7fa9f4902ed72af47578b7c1c7f7408974f8c708160f9802303a907bf414c151a8ae1c034198d257256028b0d2a3bbbff8f18c67247304454b9397fb5344ef76564a706aecd08eff590302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100be5fcddc078d43da981e0bc7b8d5479be042cc4a7a41dbe161047a688d49279a52fcee98a9e4ba535b0daa304aee331102305c1c40615152f0b8c18f5dc870011cdd6e82b8c085b62d514774a851ef2a1f70f13cd03069407f32bf5afdc10439daea0302047c435bb500683066023100ec8f4816558b2c411d510f84627ee1736f83bf488f93d20731262b0453ea545b16486a30dd17547d6af7efde1e7be5b40231008dc7d540a21a60a7250e68222e572e6ba97e35ac3b3e7654b161c472aab6a047516354ff778915371bd8ad5c01b60e420302047c435bb500683066023100a421311e67cad83cd7c6b80fcc6104f85b7f8440560616e42fa43367332b744e7fa793352218f70c1f6c43ed6e02ac520231009e329559a742825e48a27d5b524e6ecc30d7e0ab7bb6278055bb2e5e1a13a86d52f73438888c2a09eabcdf47231a08910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302677b531fd9ecae910c386fbbcbe187d2cf2960ec2bba0f8e4487657b5d4e87101d396b27ee84e378b43835e982c034602301d521e4fd1ebe3944c7826a0e12ecbe063aadea71677dc40d58ab0eabe13b80914f5da1bd5058a5ca41a2e825d3de1190302047c435bb50067306502303b4567258ee46f1ef5e9971346bdbdb11350da0534cee43bcbb1f0da54bca157c1fa6ccbc41de8f92b15cfb06aa855a0023100eaece0681c26ae4f286230ad7b5d13a8b0bc4283a776e23fb27a4bcb0c0009508014188e746633342e30dc80529eacd70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fcc719b52c61b342219d5bab0e4e0f166ccf0857c1edc3961e9341af7308c6daef538dda1b9461810bed4753f12f1ec40230492400cb70deaefb4514978224ad99adaac92eea3ebb872f7aa99a52cc8ff09468dcd4d6c5a56325a5ef08495e6571280302047c435bb50066306402300cd73208369c11cbb85c58b64b52f2b507370ce47e9a9a855de639c4d552c87a80d05f75a557cf1f46a8fe88fbcd4c1802307949de162b1a1fece190d728c9d650241d6dc762f7d6931f344bc9305c65f75ca210e40959eb6681b1c85214c04b16110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100aa943d4cf6f35d83e2a0860e612132523c0b9690bb30a582d8dae80d54ab2c0ef50ab74da17929fed34d32cb4daf333d02300d5088ced772903ddb1ba4a0d2540089014a73bcd0384da005ae1a112b7cdbe086cc07fbe9278f8679780662b820f40a0302047c435bb500683066023100999e0668804b2ed98077036902de7d63c2c32ced2049c7d4637a885455557f9cd45b95a4ef127f3304ed85a9b6f06f82023100a57cffabe31dca692d2c02b123eb6fc0a927f1f32ea2a934a377635483a673da5b3c9abd0b792ae6fd3510d1d6cd95c40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023000b792c14901803ebe87903fb3ffaf0fa2e6b01fb737c6fb962311e2a87448117f3b367fb7fc7a4d7d7a8d52971758a4023100e0e97a21988f9c3d0d1679864e5dbc5b3f40e4de00b2540d497a808dcd5712f17855a7f35bb27dc804f72fe90579b1630302047c435bb500673065023100d5a7d7e1da59ce3ebe6983fbd1ae6f2f235a02b8706d1550ec815c1d6ad3d4f78295f8996bf99dd3cf16e4b933dd02360230688f3144460c23be4f47c3835558a5d880ff718c9e5d60c77e097fd7581c0f478abd9af3f628b981d11bb61ea2e156fb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305ea3b25d4fd0b8c7ca7a04f1115042ffbe4993ab6c7f2689f0dfc851a97bd65e10cd43e7a6db285d606a2baa27767391023100832c6018c58f092c6f61331bf1b7396e2ff9275ec88ceebc7b8b11995586e4dc5c7a278a7f5d2f54db0f71f8ea31dcac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304ea7377e0070f2dcb3d4032c7759a58f09f37b4711feb9a5990c8e08911d50c5191d149d873463298c7003fff74e4fe60230490281c9e712f3d7cfc48ed7659faee808784f51e61445cee5dc76bd557bf7e2750179e9ddd9539a4f535f0993aa8d120302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300b12550a7a700699cc5c7e4febc63aba1c48d2e8c16956fb5d9572669ff5836d0e0d66b926c0dd3f266ce5f3b9a7ae18023100c3605b56a0a3e4d56a7526ecd3f7501e15e0584333d595d20359c47bd187634ebbc758ae1ac018ef3522bf13106d8c1e0302047c435bb500673065023100cba0b8fa66d040eac8dc158481d34f17f5f6a6077e7e2215c38d3d2bc5cd35d7f09c3f412d5a0b2675c6527b6c543216023034353b4b03a0805e24dec97a89a6fe00643d296722d9800e0e421c8ab386f82f24299818121e2b3b8d59fe5823bb582a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100db1c58d61ca81c4e8cea22e3b3f98aec40b10adb0d88a07c55076f9fe34502296525099fd1555b3b543f54ddef7d877302310093bceea17846780353184ca33b13e0b7f66c2f5176223e041fadc4798aa3a0f4364d63d65b50ff70a1852d8580745da10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304df49b2285353be9b24ab679eaad0c6b6567633ec84ac0387193fc6d33bee762fa8550b3eb5d64e4af087a4896218282023100e8e0f3a599184135c87841eda33312eb56e5ef602a81fc4a552429f64871ca08f6a303fbba0dc8fe89568adddeff44ba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303d607db1e09f75861c110be69a4f914976dc98a3f4211d41647abe3347bca671a55fc96ff2125ff5efbaa916cbce1887023058cb1a0ac749e2d16901102b389bb556467783c1092b315bc380d804f3bfe6236cfc7709073599e1fdbd41f0081e21200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100defca5f5b1e84c234ea9777ae296499e2ac64cdf0077f696476f3ea4de1b538b96e63c25c4c7c45865cc05ddd111603b023100d425a1b137cc323b3c00e1ee8673f3be85f02b2feaf537373584a54a4892be0cd6e402b14fc7caef339969a83a3c34930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023033d3127026965fa8536c9d582f257d7cf1adb3023a88bc00d47eece615592a233df74f6be5d41562283ea2cd29208a5f023100ace7c1a3187fad34bd0c3c6df4eca2092dd3ea0d0089eb04dfaa2f0bd875a59c7ebbb6a2afb353f8476aa5fbd65944cb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c6731690899f8f6ed4d063b00bb88334b590c41ebf6eeb212c4e3086313ccf491c5f704cea2b6ce3fa4ac8c45188b690023100984def48730202791ef2d97e3480af97a5789cae8236006d32bd6a9f7952d82c8165448238e2f13afcbfe070fc34efa80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b421e75bbedb6070346840a19a889d05c5ef50a3d113f2fce2fdd6f47302fab8a3009abfb8ae0ba600e078165946164102305c03e41a00244e7497d5b2cd7f1615193ddfac698fb02bf788758fe8ea4f98128718b48b79793528106360c6a075ab830302047c435bb500673065023019ca3c332ad1093e19e5959bbfce06554fbd4ec83a9d8359ccb46085858c3e13a6191c7b9d35120cee77e12655ba90cd023100d3b83973cf21536e4d19fd30f31bcaf87e39963034bd9e7a1cf2fb663b3c78eeca1645a2e2aabe3737bb7d2f14e75ddf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301b2931538950c4dd7e2d3828ee19a81e442df145f6e3fb671a98b39c8bbbd7907330f0070d18e4fe9acd0efc34717366023100a1ffe3a2cd60404308c5b00d8f691c60093dfb30046210c1822991ad291da12b791dd98a255d226bfe87eb6c756bfd8b0302047c435bb50066306402302d2440e0a83767caf357aff7f4f4e2e6eb6aac4115126558cd382117590cc6e1399b564c8289e51e7b0cec2c52807d2702305a23b280360cb1d6e5dc15def021e9821e61a96e77ceb12a64beecca7ce7f1e8934e043002a24d30fbcc27099f4b6e540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306d47d3a2b22c31ea8a20809e27a02732bf3992b3d3b9ea2eed33756998db8cf11d34c5985d171cc36422b391acf1adf2023100cd810a436dd064517c09eaa1948b6d67d249e94ed9b2f46f9df0f03dc815b01e20237f83e685cb9480bbe933c6845d410302047c435bb500673065023100e11d977881710f682c33dbbe3daa2e74a0d1388c9ad2eb97627dc3aff304171acb0329e29c06624e488fb3652e93a1d202302e3d9237765580f0c499290d7cfb99537e73c7f367e03ba2a34ff98c75cf14047fe444f827e7f675081924b8abd1fafc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bd37e0b4d64710c6caa5e882548a544f8e64d48ba52754cc7ee23ed6b3acb516287d3b812ba64ec3ba96868e24f87ca8023100db0718857840eef0d8438db4e7acc47f9d67325ca46cdaf19a33857c5afcc6cd8bcd9e17dc6f2d3804615e2810975f2c0302047c435bb500673065023060a92827ff3f7b0d5e97290412a1c7b22a90afd1ebb56eb2889683388635396bb9a3511fad1a5c13bff686a7f3709d9d023100a27488a3a1883fdfbe1fb15da5d3f39acb9602b23fa70d183ec21557611066caaf7a3d98611edc68e70aa70514da53e10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100feb14610de5fc69f047e8db84c270466cd4887cfca0f352e7046937a273a01240802750529ece137fa8f4502e76d204e023100a68e7453f78a75fbab09b8a3e427ab3b33c855a6a14c8a030eb0d4fa83932962b7cbffdce0b35b5c14a2ac9dc77211e50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310088ca60820045ede731acded31a5bb18cbfd9d2a5f221b58d1f1159193ae87c07e87fafc86e335ab5f10f93c8295b2427023038d1859decd3c9b392dad17b3f2107738faf3370376397b306e7b5bee6869cfbe89b19947dd44286ad53ee460dd40a010302047c435bb50068306602310098e0bde910673216cc16f7fe13a7720a799a6274ec303300cf8c95bcbf6be74b537fb9381a564babb988fad4c53b8b79023100bc2e5d29962735dcc7babed9a3fb9ff336db014eda1e0d4f209a2f476b7d1894fda3117b42ac10cda9d9a10eb1675d310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100867a24646e3ef38a2d39ac8a54862bfe6a60e1d67c39c4dc77395e517fc0ea2a0a2a61e973cbbf55f15f4312073db40702305caf04c5ada0cd6af57c793a6f420a900e00933b2f374a010bc5f8f989b42832ff4a05e5d67079d0c57931fe5ef335d80302047c435bb500673065023100d225ebde92b5db3dc909c61e5064d05b1935c8697494fc96b1c6b5ab45dcd0dbaae91ae9dfaa0772b72e267c43e9254c023040978cab0dafc78e0f77ee299906927356e6b82e017e5ff4456032d945ba00d989801300a2aa4201f3257909940bdf7f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100baf68029865cfc9f7ba36e5ed5248227c034e2cf6425d1626a3868acd0a1b33d5fe3568ff6bbdbd217f24a94d353f12502303a2594ac78977229b1eda5dfa523019480f1957d032a71e2b8316f8c2adb7285213dba8279b0dd77a1a73a2eecbe6b930302047c435bb500683066023100a9f84d41fd3841dfe4256d47d8c8bfd73fca0d229952ada7e00bf5574af6d5fe68e5781f7a1e1021d44c9836e0a9d761023100e52df859e7446c41d7c96c9659ab31a688ed9a61225d8190752bab327e149abc2c2045ffd48a48d53e9572265f81d9370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023039dfca25872d7aa90cf10806b8d4bca418ddc4aebc0ca4129abd833260092ffc1489f700ac3cab8e11e0a953903db0dd023100fb05127c99768caea294e0a0c45765534470f38708b90f4faf8d76fa51c7a8369ca402eb16bd004b162d9ace2b4bfb090302047c435bb500683066023100f5db237d8ca7187fedbc387c10e086ec9e5c177469cf75c1cda262b776516949ede9442ff8d74fdcda47ac01890500d7023100bdb6a25d473f5d88f1b5234a9ba6f195ca7055298b07df3adc86c2ffbd97be6600215336683cbbf783bb64b2183de02f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c0e45f2414d5f949ab57a7e3cd51e82d3a35c73b4921713d000c36f06b3a9fe21ddfabe780e341b71e171eaf9dc659b70231008dddd54fa14d7ad067889dcd015940fd7635b66ae05e1ab357824f895e6af0f22480c55ee8ad462dfd739d11835414d20302047c435bb500663064023051cb84c548a4bcca840b1bf71cb6708e7279f27827d7395ef77df933d2d2940f209f9716098eae04e1364c3c6c216d8e02307e8e9c58b44b50487b544fcd76b3de824cdc161f898b3792efd1e65a0105841dcb13fab85b4d59340d4759c2473486f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009892be8da07e1c7bb21a6833105e3a739567f4d0e223faa7bdb54374931774e241a6112db7d68514f5624a746d2cfe8e0230683ae06d7b7c9420b9c24554fce3521df61aff9a51ef8fbee263e164c0ce8c9a9ed2d5eea0965d881b36272d8aa752bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c4753f53c2529ff8c4b181d506860edfbd045c39e9b5560364eb242a064bfdf3c3404151c86b6126d48823c8d3aa98420231008705837ad3e69cd7954376ea37906a348db9c8635cc062881541dd1a431c6be91ce7514fc2a6b8d1458d80e9c6a7b3a70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023021f2495543d78bbba24433ee5daafd143d1ba0fdc9ab51c83940ae52d01d382f777f2d80a53adff52980a100568dea13023100d74bb8fd538174a3c75da794edee0f603807b2512d2989cc5fdefad94819b039c9115b4c10b4dfe4b34e6f2d81bbed790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d539b079a7a11e1fdf80c00398631c6605bb162aa0f453207be4a56414fa86ab3ffb1ea5930c8f7006fc9b41f237e4b802310093baff08785e633ce518ca1bd5c27b29c2fe2be0e03cf4d1fdf9a2932d99edec00a070f99e10641f927436b37dafb3660302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e70fd06915bc27e6e58853b5af5042b1ef328bf347c33cca8dba0777ae201c781ee6b96be7a1eea0335aae0f2fb10e3902310085de46b096ee94a06365ebc69e74bc7c7c4fc2ac6f9efafa97b49bbc252dd635b8b76c2b5bce3dcc332b6c481a94a0400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ef1270d5d78afbd63ef17654f11fb23d3aa222c1dabafad5af110356722fef25da033f477dfacb132ff2a0530597a6e4023072bbd4e18142860e915848e17e46283ee479bd892000ad50aad98dcab5c51f54dac24727c587890d7acc6f473de693660302047c435bb50067306502303d6e853d20955fa80636595412d39febc757f88eea8309b316118e506299caef697417c739cc8db13c8c37caf9b97a41023100a2065834a87c873305a1773ae3cda1dbab50976eb8eba68187dd268514d9b4b1fea74551957a657fbfd3b86e50aba4230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023050b90d56e9e682726f6571109080ed089054f66ba8e620cda2cc544d3aee63ffc721207dd2a0fb246b9fceaba22ded4a02303793c52c6cb3c61a9445a7ee6919e370c7931ca6b5dae4e92e515c4f9dec6178d2e7970b15123d1f6c917ce15952caae0302047c435bb500683066023100df9fd426f70679219be6f0c33dc133fbae3a868f1f64e7c8e3d9d04c10a388ef7974afa63327138c1cac6fdb5083a52c023100a07fbc375552abe8923286c67bbf9a5db77b8b5ecea8a14519f8278aef40003dd61393ded89e481224d66ac66ac7e4ac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023057c6fa55fb542a4cbcfeb8502f9786b8a32fda818cef48d6081a74e09d2b4de3686c51001c04840507856e7549af90b902304baf2debd4fccec992f584e3d82962243298cb9bdf28ceaf25ec5fc5498344c3de3800e02cbe5a9acf0f5aaaa4cbebd40302047c435bb500683066023100e1a168addee9f846d0d4137f0780dd375abef8c3d0bb6091dc6c404c8c6ad2cba47519cd3ab2ff89c2cd6fd5634c32b0023100de8ddae987b5db77849b481e3dcf00c4e131f6f97b06a0bd792ae6d6ad374911db5ba5ba3499f2f724ae4faab5c8af490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c7d077719d83a6953964361cab3df402d5e9530f7dc146e977a4793764612627f12e9ad2f0238ea337272c6421c5917f023008975d4bfed403df6ad2f23cf5dcecd7a812ce8de964e40b426849d4f26bd1e732060c12cd5010670f7b1e616b491d9f0302047c435bb500663064023071c0ca745f6b78059adc5fbf12b196e3e9f7bbece7f1125a9def9e3fe5933e9d0fff52aed886a06668cf92f05b8f9bdf023027446eb72831e13c6e9ff5823da65a85a962bc7956ef7f99a19c1b076e35a12db73cf65f3fcee4db6907c908278710d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023063077a1735a24807181cef13eb9a4b437c3219b6d524c9af14a22a0d5539717007b1e82093cd5abf204faf70c72e889e02302dd2d7fed9fed362e897c03df0d0a04f6633ec1a5deb2627ddf98c6114eac98bcabc20d3a33252c99ca9bdfe985d06d00302047c435bb500673065023100a3e55a5ce293ca8d81164711fa384e404eaf2adce72a6d96c93e0acac7d92d4b8781470c3a3a2073527dbf3dec99d67b023077bde261082a4012a193c7cd7e319ec7a553c2c39298407e965e6f1d6ed595916ab07cc10fa40c083dc0dd96754fe6de0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306eb0d8b64109bbd4362f201ddae9d9fade40018f06d2a8db35298e89526bbd5c0b357d4a38ddb3eb267d3af209ae9e5202304e0e301e9d0301e91ad6d0fa9068f14e8c78e90f04c0ce6449076644143e9c8f6e6c8dc4675be9fb6c1654e297d85b670302047c435bb500673065023074f9c31fd30987de29e4396dee28b425994b6217d0b671052a8322fca29a3311b45272546eaa58d12717f6650e40b35a023100893e4ce812463f7f84fa8a2fda4e1cfc1245c699fbde24a3b2dfcdee1dc12395151a39392f25fbae911fe382e12521900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023004e7482b094e2e328f475778c849d37077d91379851d3fdf54eabfda129637a15839d1b5d91d6edc65a13ec30883e469023100b993a44abe2dcb9472f2ee7df0a9480cb47bfd72dd41110664f6fcae500f29d7e6f0eaaad20065b31b3a5b8f022d31300302047c435bb50066306402301ee16ce41ebb58ddb9b853ebe7af9a6c65cace7f27e9604d4f54c5b965af9ccb9afbd37d473d72a8709e75f464fec1770230598b490024c4771e2b6d3b6c338baa5481a0ed9eb5cf0903a58e744b49240f9520d27c43deeb6f6448165c69ebf18e200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ee9d4e1ab5a6a41902225bb8649075b52d578d9ff1ef6c1880646619ee55f9a9374b71ee352a92fa92f1ce124e521801023100d5ba05fa215c4fd6afaa93ab9e6a7ccfe4ae1b781511702a6000e339e868b60ee933a97050fba267d36cd5da62eb3e3c0302047c435bb500663064022f461928f4894f0c59a876238a2b9ce9f629fe0bc28418091fa8325b04d2edb28b86fe8870075ce6ba1c54dba187f509023100e1e49a3f5214883caf95f55d08b1746d4f6bfaff15ae7a30052e739b84bf63db44d676002b6349c968b0204d9d64b4510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100af886bb6ac6b4233517a63761d879acb6bd9be30503b33710be33a0463a440db643796cfbc6b3c120ee18b211e7a66c50230617a6777c0bc5164526b789f2d826325898375dc3847140519c03a305df2166fa223bbc09677a9ae006f1b81a99696140302047c435bb500673065023100efe28136d7efe781f08efb83de0a6ec492d35973f9ac35b08ade884e996ffae273f770ed87c3fccb621dea717c35dedd02305d4a9aa0aab5825ac975a41cdc3c5faec2e276e7b4c00bff1b994483e64c26fc88e5e13a81453a1a52c05a4c3d88931d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bb70cd7e0d009b8e11472411e6f4a0e1c7de6a23c05c20a7f5cb717074f13b690eee79dfc9dd58e855e559d17afbc22d023100e3f46921eb9f723e3f73136ba75c5458f57f499312ad9e2309b0da1b344b18b96140fa7b71f2411ed53be869d6ac30340302047c435bb5006830660231009f819bf1e9d02a4003a87c98702090b208eb3856cdaab34cd6db4a61ed66681f05f50aaeffa0717db086c0ca544d865d023100a313912e254056f776ac23b6ca3ed2a47d1201625617ceb8ca51f3a83fe1d9eeeefb3bb05c62a6dac1e691031e8f1fb50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c497aa74ed5611c307280868a6e01aeeab714ea82e2f4bf4d219da6ef7f83c3d09afe20fd92831866cdf0db123b0c7ec023033891f426bf6c2ab92237f735dd446a81311646c2828b61216ff5e1ecd7b0caccae8f5d25fb681cb0c37bc9afc35574b0302047c435bb50066306402304da381738d607cce1049864484757b9c5642e1bf22305ea1856fe82bcd5ceea3c7813fca89de335be22b7895387ab86e0230263d0fe2afc36194e63f5acad23125804c263e32b28541bb845d3ab178ba927f68342ff4ed756cfb4f75559a58d6a2800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301d56328864388a9c1e95993c5b747743b175ab2d4b3fe421e5e5b6f2426ebfa2e39bde556b01085b130c08c0aa7a0f22023003d0d6c242a6e82d0499541103b9e62309cf6946ebc8f6d95e09de4814f272e12861bf96c10d9ad5e4eef6433dc507b70302047c435bb500683066023100a39555bb4326e611748ddf7cf543a55604e44500fac544aeeabda0001344bf8692257a94b3fde8e3eb09addcdcc63d29023100e510c6d0983427ad1f891e07a4e9774945d0d59d96313988711660dcc883cba9f299b1e1a46e85c83473c5b2c84bdaac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310092505d48d03e2946170658dfd40655463964f467a026f5573be1a1e5f9f56bb3b7f3c5498b49cce666b0d7f8e5f701cb023100e0dac1064c5a29cde6680182e4bf6b8582b0e6831a1a93833a3a7546914d0096f8d4243dc1a4672ddad76d1185d157f90302047c435bb50066306402300ce1dadcb4dfc112226d77d803c502213575b79f4504cdccad3435ced5d3a4d841bcbddd1aaa6b71c36cd366199ef254023038f080a50cbc9a2542e2dc0afff29d9f0bfc74ba60ec4e55f22268f8489d44e64b32375644043297032e2fa44a7ad0ae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cde41b69f7c25752b5447b6c3b9f7fb909901983b6edc1509693962a7142f738005fb20b8ed0cd082beec2e4c7b34e430230767e8eea00c1ac3f6badaa6055745c3da81d164e98c4421b6235fea6d8f74793ab6ed6b04a5ec73af00ca802a2dfdf4c0302047c435bb500673065023100f815d375bf043129b345884d589916e8c5f5bf48766987300e4c56b5ce7aa9e0ae1303f465e5bf1fefb19da654e20e9702306d1a8254dba9511092441b4869637426d0b1fd1f3c567e60cff3367641906b2b8165db9fb34e69fdb5a8a7d23d708c650302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306f2e2ec9e9c13e1f2c2a348ef8deb1954c41875649df905cb6c9cb6095f0e4c048baac39fe964c51b174eca16c6d0a3102306eacac966631fdc5da67c5fd69fc89c8fd87c20c5dcb66dc57aad72cb3da778853eb5e542f5df277ac9a3f706c74c69c0302047c435bb50066306402304a0b04f78325e0d7fe96291945d694dad4313c21082c413250de664ad044663715404f38b6f636a04cf4fe43d933ebf0023073931c74ad2fbec39f4bf496a78c43a23f51735fbf745f26b3b0187d8cdfb9e29467491d91821c3378ab0630a79a0ea50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d51335e613af407f0ddb60227e8caba4a2cdbcc4cdcc1eab0f5324d9abb05b7f61c1400446eeb66046955c8c8d1dfaaf0230266659dfea9db76aba2000e6e0777bb84ef5e774008dbd7482ee1606e50c7d04ce3ad4f4f1cf67252691e16568eca6920302047c435bb500683066023100ed7870e5420f719f8831bdcc48a0d6ec3d48496090f68f2a735cdd89fda226ac021a2b49a9ed0cf97bb954bbda175e42023100fe1aabbe955ba0d199de5de90df1f990f6b49f73a67422c4dc4cf438081e32355f87d40ac49c826653e4b13697f204d70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310093f3a085e574576e107760ed84ccee065d072c73fb77680f225ba4d4f6cf48734b4a4f4845ade8fd4815718fd1e05ab902310093a18e8b754c30546c135747590ea480057142bbc3bca6c77f5431199987a201fac4488d6f96cf702e750d08f0868c620302047c435bb500683066023100efd58ccb7fef987e950fcf277360ca8a358b23e64c3be8a4c42d7d9c4f572ff52be9eeac590952801533a086f3b3918a02310092bf87695e5c3aaac12e9978e17bfd2ab0fbc34508e44caa1fab7c6f722ed0b47d40fd8208a2417611cf6ae4047d9b070302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100da30e8a09ae7ca7bb110c724d3d4fe6cfa4fb92d5173c997aa685b548344a202a733450fa2851f7b3b4b53d67415b7aa023100c5ddd2ade5d4050ef9d9867453104d3330ee62caad554f7314f82173226f98b4445e84dc269d520f8dc15bbabb1d37500302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a4d7da2d0780630f11548bd95330b3afc55527367a37f7a72419a91d8e5dd35fe8864c04b05076e70cbf9be9aced3e3a023013a65c5b2c059a26a6580554c5a0d053266a0e63e1e122976a59b3f8b210877284d6212d3d0a19e811fdb168869a8f680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dd4430b5ff10c7f48a42d1254e5aa58f8d7b907ddd5e7b09d04bbd82bc84ab564d664b9b0c1c84aa1d0fdf3de9e13636023100cf667c37a1cee70351381caacef659a8c3260a5bc64a964ddff5ef2cc8168763cff1906a8bfa375b1dddca9c0a04514c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023032f3619673b37c3193668ae852f72f38588824e3d09828360012e3dba8c84acde22f5ec21bdfd337da4adc30896afa1f023100ef58b0f300c05b4092436b568ffee8ea746c2e6de8798c7f6675362da45197277b78e7a400e7aebbd830e7d1cf16c2a20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f779ef1bf6dce160791392e661956347e3a684c9d3ede713b12c8bba33f369bdf9bf1d0c16721982454d7c94a8c57020023100da308bfec4115919af0837216d5d1e83ab0bc578a927d0f7218b3c9f394b3327e3fd4e8cbf4812e437e0573a28b688840302047c435bb5006730650231008b662983dc1b95ec09737fa799648134e270c36d0dbeff3578a6d9bb3abb7af221f3c47dad81ff7bb058c580615f772602307b5610e366354be2c8e4a40d4cccf3611b36f9684c5b3328c0b066d33e3df8b2885380d47edbead5bcc0706d3a2a09180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307cbcae7a09cd99ed8fd87f9975c027d32a779916afff38c98327f1197961fab2ba02763c7c658536aac09da0436112e902303d4fe9633458c82db3fd9415c59efa57151842c08ca4dddfdbc2febcabb46473e9f7b8322d8c101ed7dac17b403972070302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009e0fe5f00d1b93ddf49dc305abb00dd0eda3cbac876098a62802e9d7465bdd849a2f5313103e1ffa5ca24680292d7331023100a50353f6bda40af5109ffccf8d1e3f57dfebb2090c8ba28ff3b9451731178fda0364e8e774873ac0d8326196276b231c0302047c435bb500673065023100cf8c36f1b7a3b682ed40df5297bd54c8ff5da95d1d392da686f7a0e0a0d1bfe00b55f70c1eb314b4f55ebc63e24519bd023020e1dd565153862966052adeb95851776f4ae1412ced4c9f55dc8ef66db757dc87d97b71ed24fe6ccca8cb37fe379a600302047c435bb50067306502310099e5db0276bad9b4493e0e11eda6b1047f0c371e8ed3d270ac9992f7852c079f6d422ac2a568672809b3af8bbd50a2ef0230467ca67d5e0a63ed153d5b9d3b149a5afd7aabc9a42bb2db86dac3bbba240fcb1829da67ce2190e492d4317f80e6ed800302047c435bb500673065023100d1254beea726519543998d6cb3659476cbaa11608ad768a4b83759eb8329edf114be537d339d193199f3a8bac647472d0230322e1999e305a7ed8e993f33c96612adff00091d53ad77b355a15cfdb39a76c6354f61e3bf23e50b25ec4023593b6c750302047c435bb500673065023059bd583c5d6d53396d2dc2dbcfeb1d7ffbd9b767e99c6d46922d52c380db306afa77906dfe218f13ff648b03d271b3ba023100ef2389cbac28098ba4a3d87f4c167b7d06ffc83944ba359212d2fef7ff203283f5d030f92452272e1cdb99a6527b152a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023065738d43cb1173742ef8bad7847001a20d6462ce3f68e36127e1643227f3a392c2d4256fc0cb76e2f8176bbeb0c4f36102302a17b696ba6e032cc48a321281f9d3f6fa9fd736988917a431e9dd5572cfda4012c8dabbc921d26349951cca5a975e1a0302047c435bb5006630640230716e21393277364e79b1e31eac9402f91cbccf7e1b3a9fb4d1342478e60d93467881e5fe87c79debf706af30e26f8bd50230384806da06a90ac8c4474c359694694aeaa3182c56678f6adf5ae8df65945e5ddb9b9a42dcb5cdf224243f39897ed6dc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300db2c499ed64095bc5459730d134731d9225a3f11ffb6af1039922d0cc8a25b222b07cc401a2c37e08610d95ba34d5e7023025a0fbefdc6572bdec1683f9954049f14d0989dbd337121a95d00804baeb58668b3900bd6c45fc0a49c0327ccd37794c0302047c435bb500673065023038321c82ef7d5c1b780124dfaa551c5b54b73c25dbefa57f7426e8af15a44c21f49901377b0889c84891b4b2f066c6ce023100f43408c07113b74ba27debafd1a331af73734da000d857566625238e54820c08d2794f20e2aa40efb466a7a57a4a16400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306a0117f368496ff5969678a348d7333447087f6f58f6a2049745fe779599fa6bff1bf477d78e33646e039da1a438e3e702303f6f58720e41cfc13d16d21b701f079bc5851dacc632abec1c9dd5b65e462ddbbc6a530df6945870427ca8351e8744980302047c435bb500663064023028c982a5de84c9f66e8c176d1fd0b5400be05d97aa402a61d20a196d5e0edc55ce4200ed772236730ceb7575b814f637023069eb2a0384b62a4adb0da5d87fb82d3b33bff42e3f7f22738aab37e1b260eeb72023f6abc783bb7e503600e2b8eaf0a20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230459b57775421268ee76d49fc59452f582868188a807e306e6f2fcc771e07208e2b6001b5ddea0202ce1aad777756958502303efd1f1ed1450e88ad4498219d24631ec5d80a189f2fcb66df1db44fe3b3b865d74e6208d89104891c37f03dea9d983f0302047c435bb50066306402301c28f79517e013afbbc509be5429f0a1a0122a2c84b3357d0b8eddc33790319f8838f0dc2389d6fb0a4477be899b2ef5023031718eb8defe90c82c00104737f88af228e014ffede36fb848a0d7c0a165a288b387fef5794115b46ba30e5e4498e8d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306c491eea13573c3ae1defb945747cbaf297e318b1c903eca6a0479542ed7d2402cebb347bb0db5c19be8a18bb970323302305f846748fd990af9cdf0a40d98e30bc7e75737da051ec2a09164ec1e70932ecc9172474bc7e7a71809e1a41cce62ef3c0302047c435bb500673065023100cf36e5eb2df61adf6b247b36b0477d941c4464fee97652d5edfd81a0714575e06bddccbdcca45f61b358054c68b64ab90230199e9fcc0ab7e1f7e4ba9e0e65b5b3fc79854cf9e168a05ecbfee4f0cd280481b0584d3f769626fe03b4ec008ffda11d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d91e1490eabb90d070b266095a55c6d067ea8848e54a6027cb1f1314f7675678384a39b2be801e7cb33a3b3a56d82fb202301c7becea83fc6c62ccbb269d421b79340e1a0afef250c2b23ef714d9715c9d75e0f443b267df19db2f90d36e880370ec0302047c435bb5006830660231009457d0f5674c7d9cd11ad0379103acd304bf9345eacbcd38d66a8f8ad30efca3ae5e7d8ac395c26cdef85110859f477a023100de39cc16b1498bd5560321f35b22dcb41ebe66a62187cab91474c23e75e35ccabb73b4b2d8e9b9d4186d1611ac2ce7d80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f129b72e31bb3f412018a7439e880190e83b5fea5cf3e42778058798697049ea76af347640e3f61a967c75ca471b01af02301963817fdbc6a7b4a9800d84d7ca4da5451f6e5c734fc53f1f9747cd8a472eca416ce9b88e5e90ea58927d7f2a6ad9370302047c435bb500683066023100c8ab2c6d8091df65b4239fd1589a71afd71df7d483cc3128a29f647cc6f32518dff45764b198a900b44a56c2371c4245023100f2c80ae69b9394f988d82459bf2007ad5cc3746243a9fcff6320582f3932de7a9e55418ae4533f4f5cfe31908d8036d60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023069cd1b0d02aaa8339c6f919a7916d882acdc116366c5953712efc86068308838acea2966bcf10a2ce8e2b9bf7c7d318f023100b37afe686f99787d0718a95f3a66d74d9258d76d0fb4280775fb7f3f6afcd7e7f0cf8e9cd071c7fb411048ccafa127d00302047c435bb50067306502303357ce0ab5bb461e8e98da2da6ed9074ad8c505446594c92907522722b8bfd75a37bca0e62a10ecb813659294c20d690023100dabe4b8bb28c4983a08937059eda5a1bfb0383e94857f3e29657c8f3287ab880982932e8ea7d9510619d02398a5421730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300c9036da5ff576235c80adef505f0fa9895f8beffa839e4bc6f0ae3331e54f12c0882edb362c3466ca5020f31b52f9e70230095829a5e71aeb833beacc18a3fac34848d4a2f0738a1f0956d6884a88008d4ed112bf83cc3b262486c18efc73678fc20302047c435bb500673065023100b65239a3d066bb77a5bb5a5695021d39c8f9974aef4df8f57f4a7656f14cf2d52e744c596219441d7df979f05b3e6b9e023069a07e890d0c796a04858f780e4696cd000ae67690d8a7df8be5dfa37dfc0d56a3829e45245ec496f15c7127096df78b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023046610509e18e57c7d3253a5270b3c3040e028721fa3391eda5d953cb413b3691315be7a307c0e4e57ffedec7040fa370023074a562a99c106d24c706745a9fba92fd64623b3c9fc4b052d82b98cb41454919e0936e7096faef102185a4783f3276120302047c435bb500673065023060ef5271dfe3464e902a1a00fcb7aa9dc435d4cb4fed6e83353a0b1132da3ce875bdfa0d04b043ec5be638f629e9cd10023100c08cf8e499e9bb99245e2a8b00141df18f5be6239dc919eb4528ae936a0512c5110ad6762e950b2cd27b5733de1ac4f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bb6431e158a3239a7df29278cae3d0d5933b44d162d228ef99e5dafcef6dc460341287206ebb0f1b92cd247ffc5dbe3c023100dd5ba753530674cb76d4d3cbb1c49b49d86e8a835b32396210180298deeeb5d949fcdc2e185bf8afba6419b9295efe700302047c435bb5006730650230684eb5d2905539da7e81c5f4ed42a5c91e9a93ebf393b82bc87c11c51cc2b75c73f370c37e2c24fa2e41aa23b981c6c5023100e26d2c3ffdf830b7838725add261b252fc8cbcc605e8cd5ad65309ce2e4263ea271490a4330c1e780105cf037598a6070302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100acecd74cdc8aebeab67be1549162740ad3603bd6f15ada2522c29d5e8d79032140397a8bb6a5af755e88dc47dd927fbd0230598585d617ab4c73e99093d3ac39fbaf7a25d577ed636c743d7e67e65d989044d722fe1c77233ad371992f318a4960780302047c435bb50066306402300c92349b8ec70b8b8c30d5404bc55e315e0b3d5e398056b1480639302c1b934cdad4b864dea77b5fff644abee7321461023044d3eb26df60f8db63e82eae2b909ca695043171162785a131b5a1a91923c3c6b0f0802ccbdc0db5c958519590ed321a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a3bf115e318c6c6842bce6ba7c9231bbf43f697c0fad2174fdd1eaccb6090caff905ae0c7504aef05b9deb66205da92b023026620755e2dba542b946eee73375cab28c74ea975976856f3935149baacbd99cdd2ccd8fc5d46a54a2eba7363b691e020302047c435bb500683066023100f3b1733f353d8f4f60a1853fb194f715c5466bcc3c376f3615443d88b746a97407de1c75a5aaff28dab5d611aa958829023100970bcd996a3fb4a760ed6c23d3dac7054b155c54430ae1fe248af9456ebbb6518f61f0e347f2eaebd8418e01fd7b3f8f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302036045219bfb0dc745bc91c0363159efdd001a2b4d389a33cc64e02c990556f91ee417e2449efc428e301ea770007e402301b85060329d894c4ddab86d0be3d02ee6ecfc6c16a1299fbd0a07ac06711afa4dd790b645179f818d66ae4ca00ee74ad0302047c435bb500673065023100c8de3277bd646750c58206f1f9d462c33f67b80794a18a6dcfe3b76ebaacaee72224b0e98831dc1d9fe21905e288c54202302dc439f2a82b63b01913b87142608fa1e6cc98f946d95c52183f5bf5131f54fa976c7389438c9da7d16b77ae94c10c0f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c06fc22c1aaf89350a07e84ac8e6a5fb9d486c3dfb3effba0f87a3ad6b1f7b11df8c4d5cf17dd9bbabf3b1a6c7eea8b90231009d513a198db395043484b57c435ba4c16054d2d4dae49d03594ed43b280b356a967a903cab6b6894e4875109d5b59f500302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006530630230330f922f1b35f8b95f71b9fb7ef4d5e13e090276dce21ec4c6a8e783ba0715673d3687c11658402c474852705af40719022f2d7e68270b93a64fc22337b0d048a38828760f919b9c7969dac2e7f1eacecac0f23528c289c63fb95e3b2aaa2086c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b41dd290c02d5e7c479009e0aaa07fedd7aded08e7ff218e0f9a4d2450d77e2acb8af3f6126794c255a62991226242a1023100b1028872034da062038a06dcba5f8c9d16c374757d1bd13f72cf64f75ee873a1bd96f2a5658d8a14fa6929c77c3776fa0302047c435bb50066306402302e966e1370d4ee0a9b7d0d04b2a153af09c87098966417ceae6ad116ca5d375d73e933198d9b9759b2a1c6e830a9888f02301ea8235acf5041d031f0aabfa2f751ceb97501a0f0b2b276b59060fd9c0c21a8aaf8072111fc77f748565b9d39668c2e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230455e554d8c9b28fc1d42d09955bac58fe737b1501d68a67842c50049d084c2f9b3e7900b2bf6fe607573a231bd5322e4023037a5f2c5f42bfbdecf87ca31764c26aa1ec234b8577378adc9a0613f160dfc9e302986466de16a74f376bee0343f437f0302047c435bb500673065023100ebee63779e424722109309e24aa3a96bc1568de27ecc4ef2295ed184b450c198674dee70a04db12368462fd3a2138c7602306b26febfe0a4b16ae8f3f105f3e3a4bf7cb5d0a660c59a9408f0d41faafdcde20d65a0675e8e21c607a7767d9ea71e150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310099b4f197d4b9db7e2713f02e2a7c03c5b0c99753a13942792e8ec18588df2641518d61cbef35b2ddec3576ed4e59f9ca02310094913420db114b4c4e7c985e6f450e7f6b744e51aac39b92ece3db166a20aa4ee85bdf9cd2cb4548773ec79f9ca3de5b0302047c435bb500683066023100fec44ff6e238cd675798e77e03adaf3a8f073b6c3068bf63abcc758883b5322cc451179dcc8f7288075ef620d8f2b2ea023100f81361bba522727c413899bb0eedfd688c76b6269ce645fc44fe2ed8dc5c5ff2f18a2873f4dbd4c58b97aa3dde72adf30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305dc38b941e8afd1cdb91447540b2bbe48eda34754f1f2f86888e3c0df3e0199dc071dbec9c304f303b0fcac60e79d007023025abb2e4af27747759abf3774d4ae83930f520582465b706992e04b1ea4fe6a9caaaa0e5ed93c70d68bf5f466bcc34350302047c435bb500683066023100cf03f1f1b0849736375cc3f46f1f2fa9986721e70a7e351ebe48b3f3ab2afaef8135a4326b32b7c54d3f7a0cc7836b1b023100fcf9105774045dfad2444e7643de03f9c799110fe48f86237daad41c9863e9796086c496859b4aa60f7bf5178995bc560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bb3e1aae1bb6b3e8807a903bd27ee6f86dd619a9fdd9d0bc79ffc49a9c01cb53758c7735e5afb6c8125f6401aeada73d023077151f9cfd9ae4c1b33627682c12814fa4a87e63861aed937dd9e364dbc22b2ef34423ccc0eb5ee0e1036c909497a35f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307f9c8424216701ca90397215c9c8af5f0cf4f1c0091715570916d3fe68357c429fdc2c07361b6f43f257ab002a33c0ee02300991b7c874b39271ac69bd6085938d46997af19641eac9d3a81cb73f8f73cd846abb86f7fa85e5f0e4e08a87c0e008c70302047c435bb500683066023100d6e8666ea3569287785ec6d853823eae9ad5049336dcc215dc5e427fb1b5fa3477873852dec259addea149f9bce441b8023100c2f1a8a5bbba6c676a4c0d2b85ce01fb5e2e89e508ec3c6b2986c66c918e7a938d3599f7d5d71b06897a67605306ec970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023033792051cfd253bb72f27c41a6b1a803b462e16d5f5c65e36dc9e20831251f955d1ca0dd634415ebef2b7f89e27e8178023100be1b607e6adcdfd0a133045a8ac6fe690e9f499211b7f9f0b7c5c0deea976c3309bfcfa6fd6715819635201dd35ee34d0302047c435bb500673065023100bdb9ec96e652abca6cfabca86bd9e7cd5d544899005aa69870a00302cf99151e4f5951e274200dffad2d7b09e31877b302301454e7e2e32ebdd655bd8ff9bababb9203cd55081e90692126ba029491ee460deb59e64d9cd3651dde154f56a630f6360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100983b54ca0598ee43c70af024fbed6874ceb985cceb7e7ab8338fe94ca0d53060228b5dd8a11a34c343913470ab942f0e023100ce53dc871e09f990f33a1e9526dc3866704c960905e29e8d7c275d834c70d446964f4ddd1a575d492402a2bbeea50f250302047c435bb500683066023100ff26912398d2ae89c982dc1a9836b5e511fbee109e966ebc97b30650382dc895c4080d41f242d544db14af016f9a081e023100831afcdbc2896812dd47a255c2b39b83598256e44fed56e2297337da29f1a22c6a7a4742ee400e6706df16b01a5909d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023072e19ef40a566cc05a9d459276a2de93e22fc16878f1f3ad257210dbd2b8cb194eedffac5309d684f1e4ca29af06800c023100f57c4132561555ced5f7f2f884183a2e1601c5e528ce3a376e29d85e8f6e0f0ccb043a1d75964c77067b878641029af70302047c435bb50066306402304b354b7276eb58620f90da4389b8e8fdfcad5cc9f337a7f0ff5af7dbe08fcf67f281bf54c701accfbb9d5828ff9d20c502303298085861fba909d1d0518a8071f9fd26f8ae7c877e1480593c472874671e8d584176e73189c20f77aa9fe5c6e5020d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100da2fd9550c7b5c234f526c0fc128169546872cb75c03e29b3b89d4f1b994d9eb2a58d01e29ded713796a882eaafc7178023100ecc46e5dc49e5ab9c6a5be2ec77e398fced8130b14ad01432b27fa1eed6c7ab6992ee7ae15ea5796e41d4ef9bed8fb810302047c435bb50067306502303e148676edc27b4b1afa5bf8da450568d786d7d7fa540b2723475b5f36edbd48118510367b4adcf2d80586362ef0b127023100acb0b86513542623c26f3dd242100cafd5ecd03eae0daa21c7df5d2d43d16d305c0b2e511a6fc0999cfdcec52cf9807c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008d660ef5d08c9b1e23092b749e8c2fa51b1c9234300ae5babfea1f07e5e6425ef2a408cafe2a07b1acef1cecad628a4a0231008354d4e8953644c6467db35c9214ae65008f0c894a2529d8d3552b3c0edc0274bd1bce92468700792bfe63d26fb0f6240302047c435bb500663064023033add96e5bfebe2a2478b1201248fa40b9614093a5a70335290302ef753c30abe6c274262acba49cec6a9ed81e05de14023029a16e26f921529589e76b0b7b4997fa17b345f13d48991cc39d7451a5a3532f73fdc5960323c281c5a416b70f8a562c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ce292a58d75d0e2021abcbea1bc7d97bcbfa8ef47a2c44c7ab3b752947b6841e261c6c83e2b72556e9e6261dab36484f0230067d9b7cff2fe6873a3f43e754b65651108907a336ee6b961c58ea491761b7c1af9c2f6eaf9ecb0ed1f1119a6bc0c60d0302047c435bb500683066023100b4dd05a8802f17078c2b8f61b2576028d606452e1cedca5420cc435888236053af0c3eab1efae40168ed92f43b42109a023100d2d0d7fcac34390dc32b50f745c1771a1529ed1fa0f397484a5c8f591616f1cb961f32bd4bd32b9ab11e8983fe7febc10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304896cba37d03a37e3402c449d8d56967f008da7a7edebe7373161933105b4ab8f9cbe6379bd650e5dc97efe675ef0365023100e6f131a869ba02c1f807711fdaad891fc332411a11f758b736e94680f854b77fb760a8d081dbdb5684baed69c02399700302047c435bb50066306402305d3effdecbc16f60322aec9b548919b38856fe1f38744d6290051e65217b60b10cde87841af7e03b7e84b65fce53938d023032d54ef85fe98eb2654cf1a7813431e42aeac3370c66466b0d48a2c016cfb21209e21646dffc63ab1b4529a8b988281d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099bf8464d5d509a912dda7ac04f733ac01f94227b1645b0a60246bd78b2db44ac4f69f6f699d31639b63a3159310c683023074cd016dabd654e0c3de01afabaac0f9064ac5ae47681ef1e986d70313b066248d8cf93d8a1eb4b257b33dd52d572f180302047c435bb50067306502306575fe9bdf20f158caed3d58325c63ce017562720456ae878174b625992e09f49d399da408372fdbafc42a9494b0f517023100abda283db0aef6e968d2845ffbf2c349787207ef01136884eef645cad5a0b833edb900f431eda751984da9db14ff1c060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304b6f4bbf47e5df378c179f6db603f07e909d1611726f51642030f7e42d90ec8291b38462906ade4bf3f2ca82b7d12a84023071d9005a1f4c0ced506aedbb06f7aff885be5c81b0a1bf64fd09966be41f0d96535de7c9ccccda6a28d490084af1a22b0302047c435bb50067306502310087dee0994dfb6810ebaa2338270063d8193b3869bb999c82374aab7792ca6b5948671285ebdc3cc618b35ea6c7babf9402305e7ddad87da994b0ed24c65e4baead4ce602e7a1753dddf83e867c4dbca7e3352b14c8633927e8ddc6896d6e28099f3e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d62cce672975ea86cedc3d7fa123c81b5b93275b365ad80bf00f2aa44d915b273dc540e1e796cdae486f60d8ebad08c5023100b0a97caf35546aebef664117bb21f9dd13e968a99cf3a5560869618fe5b96c527ced45745549295ee53286155f4507930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307cf0211660305b6e12512da7ec63f1ff09d78d1ba194ff72247fc3e8b06ad487bca61e1b1ad47d4e32efabd84e981cfb023100ff2295a1b66a9f3f4c500a852803ca7f5b2817fdb1d0249cdd284ad339c7cd62189f07a23f90119e21e25eeb153da7910302047c435bb500663064023048d9d61f10d5938a1494cbcd9d8bd5d9ed92b386060c5cfa9f3c8fab8873b7dd9f01386334393375912515c6117c6e230230158c23cfd833131ea347b816e960213ee1f8f500ae026f8705e9a66e88e4c108aec3d6fd04cefb2a700a11187960a89f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230694537687745be3f3572e05b377c5f519a0ae4eed33fadf2849b19054ebf5276731611d2af3a16083fa0c76ec68d3f1402305520ffcdb60f759825ae60b6982f68a8cdff10017d15972face951f59d7a09156f2300cb26160072b12cbb2796f6c9dc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023036872150c826bef5897e6deef0be8a1539a3237c7c0906f93d32bc28cb2894ee1438e220269c3c7d32e3a900ab3fd91802304d9d3e6d6bac91ac9a667e9a1358e23e8cb5ef8d09d66c3a1e0cb0de06876f18d69770a7121f9f7a1bac491811e349490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064022f7caed9b9dbd9d7a90a21aa4424a578719eb6957b5ea64d5ebab5afb24fc8d35489b082348ebfb549bebea2eab0e37a023100b076c8d73ec8387d8397c15c84872113ba995c5569dc5543f5362994ccfb9672f6bc1c99b32f12e7186471e45eb0676a0302047c435bb50067306502301dba2c1bfc7792e4a62b13990b9dc8e0c147e214ba2034a921d633abede799b7485814a7c9866a2f2d5e295bacbe6ab1023100813ef05739e277f0912ea7f949bc08caeeaa527b6dcb6a736a21eb60c035813f9150e8e2789cbf0c57b98e1b238a9b0f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310098f647a3a2b411a48567b21277e302d0e191cc33ae943d285ab684f0751375636421c2da66ce46ca0deb62e18ed7fde3023100edfc918131133cbc11f1278fa882fc3d9ed98e9bd86cf909640314d9d546a9e9b6a4fa5ad448777deacea075031cbe880302047c435bb500673065023100b6d2f2652aa3c44d48f5a18e6a5f255cff04cf2cf7bf2216a39caed443d2d3f77a465767a97fe7336c3307b3926d403a023033508a8f7d048cae56cdfca57e21f3671493e75f86f9b84454483c3b704414ce51cb1241d29e6a9b543f24edd88e7a7a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230165034ce23f1d4231e56a2d8bd0e16f114a5a33a6da20612561ea385706070e8d3f75f672956c0608be0772e13cffed402303484c6551cda3a59dcea1614601eb5eb5fa6a1454ee2607c7e2447b4bdf01d71def6fb160939c67024b64a81ec4813a20302047c435bb50066306402302ad92e3737989c8e29d5351b37a303c93935c14d702a1cd7ea08add6d7161cfbda0ed2e9f98a9db1065127ea21fe90cb02307794d6e8eaa38a79be7efe8851328414c523767051c39002d60e211ca1e6d6b9d9647f3da52e79461b492fe3ade82f000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300e950430b424df49197eb3a481024deeeaccd6fc0a8d91f7a8abe53cfe9f50cec26f768e3660a0e3f82d2473bb888122023100cf4c8f4065d78d2c88d3e0d686b61e8116a264d2bc3d3106c074502e6621da4c08dffd5e67d3ab24526904346f2be3770302047c435bb500673065023100c4666d670ec4df8da706c27bf5e49ac68b1024d2a9a9909c9198d1529fa12297d752a5caeac350da09703bcd2e883de002305b9bf168f538a649793c0880d0cd786387c21d3758b718f37f9114abe9a9738ad0e69badcd6efbec33a6382c47cf023f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307a682d15c1ff2a85e172f3f9f792199cced5405a65355def2e3b5f0ae67bbdb0733cbfcf9158fb55c66849cfd3d523700230230e443e0f895c2126cba6ad45eb4a18ed82af63a15247bf8ca2adc9d23a39e59acbedbb062ececac49a964b3261976a0302047c435bb50067306502300fd6e0a932f3c661e816ef48e9416233f5b605c2baf49c5c17ce3f8eaeb58f5aea0c0a8750396ee7e8434b162efff826023100bd5ef4ee9c67b7838d61df0f075485596e2a05cdd86ea0ddcc1e3efbea7248601102732466ac95a961e2bca64b4b1b2b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230289799f0fe6d4913bf70e4e268c29787b81bba3fd850ae04e217065a55b5124a89595a9777b0bc0cdc3409ef15d1d6f9023100cf13944b37e08f27d6276ec0034a0ae6ad362c817b62f782e25070e62aba871f535ade7c9d05bf99870c7b9e3b715d9a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304a9b838fc5079e77de70ce7aa2c7d90589f29351360c9d813bd5297bafa894296e6aebd1e938a7d036ba87a4d77d6f41023100f0af9cd1b979a0158e1d3a3627da5320d6d6a1b953f900b8642f4b8b7c867be0ee616f641d86f55536ad818b72f002a60302047c435bb500683066023100f96980b9be72a41acc856c950cdb0409988f2c7fa0eb7c48e80782934b92ff32d71653aad0e510f954c9c61efecab430023100a833fcecdccfcd76dea5855efc8dcc97f6a92a5e055f63052f6f91ef9fa61567505beea81b2de52cbe77a00d5af5f8400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008643aaa01bb1e721af87c533c7d92aac9cf4f5caa74c9c191512a457ee87ec62b031a4385e58bfd433bf518e110442eb02303f4fa62d7a76bb950ca82382130712f1b743378ad98583de501d082493ff301e02d2b60173d8266a39277982d397068c0302047c435bb50066306402301d1c2f749d60b4521355c8ff7cfc68c3ae8b1905c27d281449d46347ba984a9c3ac21b2dd3c043e79b7a41eb32c7c78f02302b8d1700413c2f5210ba296a0dc4e193d6fbccaccf841794fec41d0c814d1d90d706ab30572864eef7b5faf4888e9eb00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cf593cb06c0dec873db6e5280a8eb328e488fb6b643a947e869637b8e838ac2b80a8bd8e9d39686f76169a861a2cc161023100f2a499c79ec30b7344f0d7af0e46da46a0506a349a220cf7c49a3740d4f1bc8243d62a0bd7f0255b2843d74d2d8c7f950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fb0d94d3360e493b4e401698a08f47e173e56d32c998444170ca32fd3812279190e08cf4a9e68db78b283bf7eb53a2fe02303bb404ff6dabd2e70964db745f80285cd82be430858acad9126ae2ab3fb8785bad8789260ae25f0b074a5e8ddfe3089f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230666d9a356ae294be139f05760b0fd887e1dbc42299a4d83f3ce405f0c52092005aab897368c2c378a90773b57fdb7a7102302cda3fe8d2ae66dc27dc61a326437b5d2f707bd1fe092b1ed0b510cf52ac5e701513a9c82766686ac2c3fb5ef2d2d49c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dbdfaeb0594b0521285751246e2672906d1617bf564bc9981651022fdda85279559611d39765e4a5576624fc0e81640a02301290f80809c3b2f40cd315e817ee0692af9382473ed960e718f66b06da014506b46b1e29c5d4fb5cc3a84eee1aa12c4c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307ed477995a33fbd1f161393292d3401461699600c806fc46abc6591e80038673ca51322585b9f91e39ab8419f85f99e002303fc234668c4ef9b76984f8c4947d9e1617890769687b4685b199a7a1b637e3d0b63d077483411a96dc9dcf6299ec290c0302047c435bb500683066023100f455a0c0d85d9e130b77b0ecd7d8053132c3c3fadadd5669ebf3f03017c86bf7f926ee6fa947dd5106c3c0b824f874e502310080d75995cd02e20880795dd8904722ae0a44c59a661bb4cdab487e66082addb4afa8c3e5db48d8f9e64f40b07529f0090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e063361398830657bc8da1ddb56c0e3feca7d15c125a97952e768d6792d88faf0c589c2db442994a9116315f2ce8d913023100a92baa171e2eb42532a3c9d1f6f9b3c8e6fde002efa07f48f790c9db4405fa6ddf8e6e29d2f136478a48d4acb1ecb1ec0302047c435bb5006730650230333c77de0c347902655dcee345122636b1cd1f0942e8676ec6157a67edaeb7d8f52ec6b4d09c0e67a71ee79a974a5927023100fac62371efcd449f4b7094506e21f23baaec1cc1229ade2ece1f756e9360642c979e041e42ff55683a7dd756ad02528b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008f3feb24f93f406e26aa03ece46dc43572824aed14b03beec8c2057fcacbbd644d5f9f89c91343d4c6375c05ab4c999d023100b2f6287c628168214006aa5549a8e41e76b184fec0037b0e274b889ba62dd34109bc2a5081294c46cefc04498e6e127e0302047c435bb5006630640230652cb8963743fb7a319827807b59905d4d8e14ef36b8a82e983ccbe0a8f41d6620cfb6c6ee3397d50e1ee3cfcfa9eacd02305d8d6d4e5741eb6f70bc5b195e341d2c774fb4a72b4f645a8bda2512bf6d53b3223548a5acf5f34933c8524f39e4a4970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230473a8c6b4ba2447a502f01cfeeeb87976e6b45e04742d188b8677e04ec6fe215a08df42690928cbd8323aff55b5dc40402310097a037875c93fda9e420477abb737cc66ea49c28d3a85495d1b1b7a2cc4670872cd679eec510465bb3b264e78f1cfe710302047c435bb50067306502303e8715a7df2b8ee7685b2878509b5f8330ed4e3fb0558a1f098fec0cc09cf7f399165ec1ffdaab6621c7c64e48a3ca46023100a2163cf53c1e23c81091f05d8e8e5d22a0c25bc3afdeb0ff40130dda34e52ded7a22201580c5f6d10248a765949014b30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230686aa557b83c24c6f3ef43658a3032f62974f67e7dc8e37853c61282f22f29a4a6aaf27630b8a797f717d0165451362302303cdd4af1c61ff6cb431d8f330e9a889f952a95a7da6f33cb24f7a0cce7347c759db5f3af3232fccc4b8d3ad183c8ed810302047c435bb500683066023100d3010a8d4acd2d6c7fddee9386913957be6329cc35e7d577364cc1b0f5ad4576896267bbb74455627c7eec3831b119c2023100b9560298bd8025a34380369005a06c3c88d5206771283f722fd492f154d42b9c88e5bc4569236551dcb3a886c9689cf40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009964622f275d74fa4f4f075118a77c146537f9160b29d93e4829c6731839b66aad904146451be9682351f713bcc8c44d02303975cb34dd9256d48c10144201b3c3aba1905b46723b9d33dc9da94ac1703e26768fe1f6aaea527db1cb77f1e1a17f090302047c435bb50067306502310088203a4e10e123532ebfbdb7690c49554efebaab51260257df82e4e67944e1cba7833dcd112851f82f4a9d2b86c1d74b023047395ab2fd6929b48d649897c6ec221deda8c17e543c6fb70ef0faa7cddaa2528b1510e664c34944e1c55040b0c684370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307ca364ac9b130e4095ff2f841481105b12c751013a0f44db95fe741c13a0d08c255f345559277e6a744e3695584c1c8f023100a4250cdc6581fb06936972033d8dce336ac64b67dc90f0c1ede3ed6bae99730396c33194c064a29bda12e00b6516ea370302047c435bb500673065023056d595f146126ca5aaceebde5e9ee563c19b1a2f9ed5bf84d3db3c71199d0ddcfe632906a5e092b82950c807dc199d92023100a2757f320600a244f37f464c72db261d2bd768b7adf403ed1f647b8cae1a95cb8c932d03f0d6eb657ce37aabdb74f0120302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301fcaa6f18b18526ab7ca69356bf058ecc8c7d6a3a1e7e2b2fcae44b5b2ccafb793ecca9e02be26dae5b47695d25c8b5e02307ebce415aaa7cd6f007dd335d843df1d9ddb0903384de1a4ee48af983266b8be1fb4d2046035c1fe97a99a0be37ba97e0302047c435bb500683066023100ddc9c0d209922c2c8da768a8ce4057e44450aadba0985fff00897082e11c68c4dd2c31b74c2570990643dfd0f3e0e6c302310089b4ee7bb874b15c237e162b91ca36ff4b8675aa84f03a93024ef17ca62899655284691a999656ff156eaf935264c8790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023031c495ee2c8e2123070cec1478954eaf2b846d54b7d1e91a54b26892afc87396790e768eef8ec0b2bcd70a5a5b1d41810231008daf3661146b42a9f44f3a32dc08d2782421ae104a6e61b1ee9578d55ad9817b87595c742ddb703188177ef054df95390302047c435bb500673065023100f10674e1e2b04217c37ac7d943daf91a24270a405a44c53a30c3bfd9e35da142032097c754e253c9b0052bcc2523549402306fa4e349522d7d5f72ab3231d41f308c3787346f274a5e1db1671efcc20a4f94a98443e27825511051ef5b5a37a869ee0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a3d1492e125ad080c30e7c28640a0de2249336fbf15b928c933f149508a42d6a5c0acc48598ca75da54d8f087f56d0f2023100db3837bdf366bc23406d4ed42a24ccc3fb92722e67f4b329dbe210650e77cd3c813675779855d50d43cc54d2692394600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023057f65d582b2e4a6d0c14e5c52eb87e130ffdd3ea452bbfa9722dab8a1956762c27428961192f820d1b86260176d7372002305a30ba94e1f678166bbfc0bc4442982ca24c86e55a75f1d2b879c1569fd0feec91c703ed659410c3ab8cabaaf7af45010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f616e9d2a7babfb4ab919b7bab57815aa50b6d6e44be735db45332e1a69ae87c56dfe087f68b646acc5f275bd2d069da023010b24663e1438370aa72cb89105f521b9958bf498de4ddc1dfa6932bffe63336801b747a888e0d4b520bda50bb89c3300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300ec5ad8552cf1785e216f5c8986fcbe85915af441d65ce5dd05c96498f02399ffa7c455d1dd9e0db1a0a0118e7c2a2b40230427d96527ccf4556eb68d7dcbc293840210bb72ec069656cf989839f189283e9f14df4203ee9582bfed19f630b43f6e50302047c435bb50067306502310098d2b7061e3913d973ad2c7ac16567a5b0d489757a3acfb841ea5ed16c48f18f092a151df083d70891b90b32732fa84302300cabad77a3ea2fd6cd7590f66197f89cfe1b4f179dccaa19ded35e11d07d7f258eda8a74f10923fba76a190970c8c66c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100de91e8eb980d8220179824a2ac218e5eba7b362c5a1a9cd598f127a0c31f156c49748e6aca33810ac38e0443c003afd3023100c09c8c5d8884462492205e398d96f9bc1624333f29d8260d9f1b41bb6191ce8bd96d749d26de0fdf3cd6be1bd2320a810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301c4e105b86553ac915905ba2e56d887db038f129f77f7e4ae51130c035417d7470a7e2228bbb98d31797b8cc4c1a9216023100f8965ee891173712a627cb0cc485c3a3432da97fbb3d00846301310695178fbc9977c977ee988856f83d6f0a2983c0560302047c435bb5006830660231008694b9c1b2d94be7f045c9d79f90108b73f5179f2dcd03c97edd0870b1721567bfb2e0a132da096d7717b712f857fd85023100e13f4a055a08ca905fe75df386af15943f00eff2f402f62a00e5922bd4a794b97f978e6c35708721d5112f5f4f3018a10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008e9f6383ef6e4a853fa068928a5dd2291e951c465c001a0b3301f02d97cfcd0e5729de00b8f3911df3a1b7f05c6118a0023100cdc5b86fad7ecb20c0470bdbf6af77dfea227be8971306aae0223c5ef530e25dd004549a7fd087b503fd07519bb7e66f0302047c435bb500653063023056b7df21e660805da382923170a1a6e7b4602620d8a75ba72528fdd25c141a46644fe90bd36a3c52301d079c254e7bf2022f11d3529910fda72c969e844c7e2d6a15cc8f5f4d171b27a4978317cb0c80ccd90ebf68296aff691bfc92edbabd96010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302835f55f5c461b0547788b019ee3a02f6fef5a4a3a1efd2ed22e0e930e86b268e4dd231a9ff61fd071eb08cd7e3c22e8023039b5ae0960a4e3b504f44cc20628d9216835e16fb1ab7a8eaf9688b88c330cad2d7017adf8f0d9b911b53bb792fa96f70302047c435bb500683066023100d43468cdbd8ac85252acf08ea21452e458349aacc60a34f09e4d850a44e5798539632aefb8d1a8676cd66f14f2c221b30231009ea3c87fba2e5a92c9dbdaa79c75ddbfb86eba5b869c04a7ff4564a6cefed3c17eb776d9677a88ae687bf07c1b7ca1760302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302bbb856e1cff626e034c4c40717b0ee6c9ccb520fbd217b28b56971e43d2050c40d781380814e90e7352a7debb03bb3a023043fed52743832233f7bd342e7c15f8a235acd407c16e29cff2d021738aa20191e34a5f54e4e23e1ab1950b82048c769b0302047c435bb500673065023022746f16c4b0d888497875340caf9ae2f3eb8fa7af25526825336e916f9c140d6cb3847b5586297c9b9d64671c3e1d0c023100a3fc9017c5ca8cfe89be15be58c641648a4cd26ca76eed844319227eb2a828b34c52e82a786562dd6549fd1e6af83eaa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302f970ef77bd8931b7038b36f21a24b7ba3ab8213fb4c1f6cae18ef3d780f7f48a7bc25044e41f148b3ce51799ff135af023100cff53f561adf7dd7e18427e64a77a6e04e7a420325cd8fd7a56a4f1ea4c23a9accdb521ddd3bc8a709cad82d7a86f76c0302047c435bb5006730650230029014c6dcf049b60abbd432a92ef857445ae7483ae0617d0344bdf602bfaa5edc1e2e51ef078b5ca3351c862f0c1cfb02310081331a7ec1f3a73bbe33e66dbeb0a5e9ff061ebd1784f769a9d42abf41672c54b7cb4c8817659659264be69fb55c548c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009cae74448eacd2f034e6a723a20f2380a4fd3c61e5e74c80e774bc3fcf2891a06c96110db89caaee6183c321918898c0023100db83d4ae7056f37c27504ca0ad6eb3af36e42b9a7574ad5e3f1b389cbdfa2d7e349fd39908da5d3e9dbb87a48872390c0302047c435bb500663064023041d8d07760c3dac1a0cf505c1665783313ea9441a1f854a2c354ea028758307b4527e0afa414499804b2a85a614ee29f0230223a6eec5d43dfa5639795ffd021fb350712874b379af064e2f71e51be911bc9894a703986efce9dea306c6abaa9098f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008497564b6a6e75d59c6c4f028d6e05b9e54a686c9c3ec734518b2d3a8c492dc1f46852efe00eec455be04b009de62f6502306218d77d12849ab0e9041f44feadd95498c4bdb8778a561db82718b3b5296016a066583317e432c4f1bd5d276a2837470302047c435bb50066306402300b4f3706f2e16ed425fe30a07f9c336a57d4c35c976779a6269b79b28fcd5aa74f996d108c6ccce684252372c80c226502303f5e0d4d57af654bb399e66b0181e69dd1a1e8964f925dc75927a3d6e29d2517ab9ba6dd83d42d51cc6cdc53aed30de90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307f1780e5bc3a1747d11feec93daa3d4da50d180ff01bb7de9156cf1183699d02aa7ff401dbf8a06c945ebe870185744802300b8f339bbee68b573860a7f8ae87b0167078958cca074b113a0bb6df4bd1ed2438035fcc093d6fbee38804b9d39be1f90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c5adad5de39428b5d6aa5534911bc695f623d9ef91da73ee415fb70fca761711735880a06b462ea5ab72f411bc51eee9023065649ee1ace61d1530e5e4343bcbb540925e21c69f72bbbf8dcd81a66d8da9f846c5dba29bd272aa0ca33e59ab9a68a90302047c435bb500673065023072dd47b8f905992055e1c361ab47ea0f539d977222e2cd892b143394fed619d77762ed48187bceaf9ea93a28bd743879023100ef3dcaf05741c551c5f85284be858bd97c26a34e9cb081a70f627ec339d67e7ab8de283fbb21719c74b8294ab95a167d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303deeac02fb6ab73da84fb7cb30a132e531618d333285130d5c83de8fc902490f8ac8ffe19bbacf931637879a53a429250231009707375853a2cd997b66ce02bf52c917c563c1990a48da89dbbc5ca5cccda1eb7bd66ccc4c77c98b214c93f6da5e5f2a0302047c435bb5006730650230559435660ccbbf23dd268af5f9f52c1eb53df0822030b3bbc3e380df157616ecc526ddfe181388a8e80db7d3b5cc36b2023100bd6c1b6988674f2490685d00dc637c5f85f5fca35216889a1c0c6e6bb09a511a60aab42acf7589acba9e53e7d8508c1d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023030448678d7e0e2edd50f274314fd7a4d4d77110c7b6a94e9422bc9cca98c805d2d79ddc550e22037d936c59c29035e8f023100fc65062ecbf12b5f327a083c6a583941a9df035454b48927c5c8e37c8b3a1f1bcfe63c16d7011c192fd44f7bfcd203fd0302047c435bb500683066023100aa1d45b0725f5c188ff443893ff6f418801fa83d25e3f83012afd3e928a1728eb17f02b61e1d663a521e6f1186420c87023100c6f9426daf7b12ed95c0f3c20bd08d570f53b7fe429fe004f9db512f26aefca5860f41c1766b7082570459cc6a5ab7b60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009ab41dc4c367ac56ba4d94a31cd231bc826c03dfb2ba5bbc40cfc4c3f90eb7f81ce4117cef1ace0067598eb48917bfb2023078f588c656f50d1826e4988c021448d1e3f7e2884876e4c8f6e75168bb91dd6a4abde3508b7e910610a54e6d03fbbb960302047c435bb500673065023100b6967f33aadd8256e36b678c5c15c1a5e28493ac5841d549d6d084608a4cf5dea3e6aa0c29bd6f88cf5ccc04c046667f02302cd7d050f8289d6c46cb8aa591737da87effc7d7b7e74ccdcd287e07f850804ac2e02dccca5936b6d702ba91d41883db0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023040f12b1c00ca2676041137809a7d8c8028aaffac634b29148a83e8dd2c282e8501166340c97d1b75bd391e15ee722237023009b7740682de9e8b69ec4be87fcb9e55d799c33ea6c351977dfc45c99e1e3bdfb0875f2fb07e13838d923e325f07503f0302047c435bb500673065023078cbad7311e2520f1dd726ef7543898f32205f9274b6bf1cbed3cff519e43c64bca919c51ca522257bce7463bf9797c30231009924b7b1a287c79d032a02ea874aa0b759305c196faa35d553d5788356940aa2eeb57cd5d414b3e106ff11bbdd529e7b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302b27a4236a05c15dcc7d9c8e6152b6fadb9800e5aef320611c3ee6b78b345d7fe2ac46858e3217e2a703e9a756a2447702301f7b37f3df8696d6891094a28192ff35532d2ab60faed3b75bf7aba33075d062d85f9720f1fee3a53ce133a22b0c6cda0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100adb09d6b8528415c2270e72897255274e52c27d949c4086d4f5f0a515c14aa70fe5be871bfb9357c8f3508e09256bc7402306fbc054194bcdbc5d199714fc01fbcc5334dc29659873b29f6e7c7d13eaa560c5da3c10d446bebfab33e00e0ac957d530302047c435bb500683066023100df53a55fcd77c0ecea409f96db869634657e12835fc31ee6ef57e09035484b7d151453433da6a8806f1574aef0bbfce1023100b9d63625c9e18ef5195fbb118483a71b7e0f50096339666ae1f24445cfad580891079a529dc93641e8526c685c07f98d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ab3ef30f745ddff78827367dbcbc90d4241932d80d97b93876128eaa797eddcace6251918cd3bcaf403d3c5636b48cb7023100ad49b35ccacd8e98c84b1fd3ca8ac36d2b22fe770d68290f58ae4c7abe18d2a7188fe5d09d63f37d037a6291571597850302047c435bb50066306402306e182806cf501dc5c31faaf771db141d124ad4c5466a3ea884ffb82d14e3b21f15b92cb89d935bca84ee71284f39a4e102302b32f6322ac350279862213af02bccf38bdd55bd044bfa25d6803980be5071a56fc7a3635bcb4653336d7f897c60d53c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300ed7d8bb89b96c12d51347b3554616aae3b275e1305a438caa113d27850efb78e71be479b238a1da8f62a1b8c51d5c4002304d6a9f6359868497a61f5f4324f98b4f21899d5054847bb4dbf36eebc6b20ace281b5bbc5ead6d980c9fc156b14c8c900302047c435bb500673065023100ae7e93dc06a198366fbb22648e323dc389f7cbcb263411264617efcb693c461604da1058e8302a574dc7c3c08af6a1e802306ba5e3b1d14cd94759d3704200e410b70e36478d24073f92c0f694f0fc4b836a14e7e325d0d702dc3ecc926db052032d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310094daec40a7384581a2d73de50c8ce545a6c6a00c90b47e998f74273c32b7639e72d5d6a07f9683286aa5775eaca24c0a023100eec865317b124ea8563ca19c139deacc62ea0abcae5e181fc8d0e00e8757aa31df8b45f9b9c2b1135962a9a9166e22e30302047c435bb500663064023039b5097675cdbf1c7d2f3f4503e7dac91e40d3a476955a7deb21abddc8bce30f11d0a3e247f106f7a5150e2f17dfc678023009257cdf2402bb2965dac19e0e763a453142b5bd5e90b538a0b538dee1d301688e7f8630de99caf053e2f06da02ea03c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300afd417b4bbf848f721efe94bf2505869999fd214e2ddbb132010402ed703a9cd024704975937503f7d2f93a9c42ca5f02306bb984d175fb6aa023c28a9891ffe1c63f6ecbfd590f741a4a8346c61fc451c704ce20d7aa39c6809937256c08b9a3750302047c435bb500683066023100e5297fde2a39ba3f519dd26e14d942085a68978d22847c6faa8217a056ab968fe6bb891cf8240add2c928b618b44840e023100c0f1e146c8344c484688a5932dbdb815928b3b4d7b37f542cbd38e7ae32319df17a05174aac8d2caf4f363c0aa1db4c90302047c435bb5006730650231008e54fe1876d6398ddb479153fa79446c724cfebce8ad27a762d8338868030b1095f8b2ebcada4cf00ed499467b756b4302306d690ba6b765fb88576265c8a9218433bcfe46fabe394b6640dd1e7cfa1a5a49f54dac12400567b53d34a52ec6f0637b0302047c435bb50067306502302b03b4a5b81f74f8a0c9f7b380482531fa7466590247b8df18a53c788eb9e633a7af9c466837d9c994ce65ceaebda515023100c2a8f428b46ed954b5dc727d83527b8ccb9a53f04f8ed4a12f352333ffa6d5b1f13b7b72b2e631ecedb3783f5303de9b0302047c435bb5006630640230008faeb7f331a8de451d6104d0ffb665d4e7e1d8626e9b9162f8ef2f2e68de0df8ddd947848028cf845fa73f201246d8023011e17065490dde0357317d5875446574d9451c13905118ab9428839cfcbe63f9d4746250624c3103a4f42f0578a6546e0302047c435bb50066306402304a8783cc29395a566778e6f9659e8317df892c65996e3dd786405cb02128275247418ebe7fb48932332cf5a9f3de4bc402305586883ba27efb074034d44b4b049048a5340d6d9b12dc1ef3e0d4cbd736e236619426e9f9c3452026b2f0a36acad91b0302047c435bb500673065023100fcd89ba555d6cf65b27466214f95104c94b90bbb155747c407aff0752c838ff0e62e174f46913db9539b5376510860300230130ec76dc83ae7c488381028872cb138ef30b836e09e832fb9457c8d315d6e1a09339aa052c36cd557dac09c4ed567400302047c435bb500663064023076332e45439435d79dd67128864b502b34239f7f75d8e370fa79d50907d8de777868418c1a112e85d9c2ea1c81a7524502304f600fc8f9dfd01aea3f695e86a317e90c2662020c89e8eedf1fbfaa1aa068135a05efa13efb623066ca9b09d2a1333d0302047c435bb5006830660231009f7a13ffca12219b85bfe8e692564b7ef1ce388f4ea09b277cfed457aaf30abca285916533b8f44e1dd8258cd19cd934023100e5bff9c39111c54b34fc653b385ba2d3a949410ba51cd6c65557e5ba145d76c8cb0a5840527a37e373429fbe2b91c1e20302047c435bb500673065023100bf38dd3dac06f45275bd3cfbe5cd566ad16c4cd61d6c135958bdc61b274425c00262f136c5ceac9f0ae094803732262b02306890e8115b97df24f73761e510fdb5668efad28614aa348182a9d174970342ec76e8b673edb93abd37ee4de4e61074510302047c435bb5006730650230014c04bd22f6dcf64f430131a79eaf6ce5c16431dd082ec6ab5565be1aa6bdd7e940ba5de92ec71cf0013b4dddd37325023100dd2906f5399becd66199ed0ee127e72c41761cc76514c4b1d7f5ec2509626a9e063271d4a4eaea3b8279fadea32b1d8d0302047c435bb500673065023015d41db4a73119df26cbd469fd9ef3d5086a3bf86ba3b0c355d1620efaaa02d9f5df9c56f4d034ad2527fbd297b17583023100ce4f5d9579c6651276861a073ddb83784600fa81e305e304ffe0bd7dbcc032154cfb28a357a52efcb25f839fb79bf4050302047c435bb500683066023100a0537583d6642abcaaa0e3d273eafc492e05a7eb9b59ca867c17af3f64a325199896292e856ce3258cbdcea6882fa20c02310099497aa5bbc49f712352181243fdba984b914ecc3b0c5c1dd3c8b00a654386e6903f88d26ab769f5a0324f807a66d7ae0302047c435bb500673065023100c2428c1bc78d078398466428e5f96cdcd876fa42383918f3e24a63bbb022f6835550ee5c3c2b0b1d607d0c78396998e002303ac2f286a918d4263305e0eaf16c0048f88d3f0274854c0897c93a4b4564e1bcb7cdac7b01097a6cc58b88319d932dd50302047c435bb50067306502304a60d5c6b9bc51a0161b158f8961b5bc409d9fb7cc9b18939ffff9e25b8dd88234ee7108b09ba95a788727eee5cdfb07023100a2facb2eebdecc09fe2ab580f7312dde78267584d27642293ac88a434c1b01beca6bc00564fbb6a0fe07740b7e6550fe0302047c435bb5006830660231009b1f6f2d774cb29d2d17b80f97b47b16ed2f5410f69a0d9da79d692e08104f38d3e72bd05daf4c4542e4fd0f28b46e77023100e062947d9f24784333dcc84ed3f0b24fedfa7dc8665d0b9d4a2f040474845a5ff6d676e68452c19da3fa7f45ff52fe770302047c435bb500683066023100bf994a54942c7d1d9e088f122a1cac378d639436252f1967bea8a8397ff9c4ea63be1089cc4e7e9aae2fcac96dc25b330231009582d0542b5a7edc080bdda971bfb3c944be9f39e5e7af744c2aa5bc49ab5153e1af7c304d45c3a6e3e234bfc81ea2e80302047c435bb500673065023100c59efa673366dcf1bdde651600fdb929c593f2e0f17095ca3f262552ee822692e25dc60fbebe10f2b0677bea5e1468c2023013a21bb2e10b27d3c6219a63b90865ecf60c23ce4bc0b4178e0b1b4e5b4bbf38e13afd4468902e45ec047428f3de07380302047c435bb50066306402303d01269049099b1d201655de7999317b185dff1f115fefa89cb761f5f306eaebbdb642f136cf56e8161220b22bd0d19a02304242d8cf2bae2cd59b3c11041fc66976e31553e57cf0ef6bbdb7f263906250c1f34b595b4a284e8a7611204fb059fc2b0302047c435bb500673065023100e68cba63735ed35e237ff92e17850cb77de138e9eee31b993e29b4b91c311a393bf18b59362d5bb40c8e686b12f6c406023068a5f10a112cd05562f77b6978b4b3145c520600a3ed5206a2dabd6af5523a7ffe2d7c783b767e35588e577b8c5d1b010302047c435bb50066306402307abf8df6354521d9fc0afbc90859a9998315c9fed5bbcab224b3cfb6ec76d1ac793a011737d847c4447425b08ce2270102306002ec3489c475ecaf49cde55546ed10e02a56b03b581216abfc668bbde7d715561ea2fcb7c4d026393dc881a5657eb40302047c435bb50066306402305f3a8ff0e9a10768e379a04f0ac69d856ae3eb1744a6618e0531eb1c040444d1088e9d43ca08fb3cb2bd08119dd6dc21023006a6cf02cc68e8ae4ebe068573856b4ea33623c117a15498edeb8456eb74abfc7d18e188551bf944259209a7d4c12a530302047c435bb500663064023033812d1005bc52f4c44db35d5938f8cc1c0ff95c42514ce830e55a16ccc510070d2fc3751ac16d27eea6c938aa798e66023014acacd3e5a0280830aac7b5bbbe95cdb70b1c51b68a497f3b10036ea17e7ec44439c3aca3de93c99b87963928e8bc530302047c435bb5006730650230226b8f85f706909b191005a39494ba2ea78993416400c86d6983abefb3bace31599b8070b0d6aefd9ce8d166536844360231009c2f22bb742c0adc5accc1f37cd712b1b0ac0f043531e4ea91016876b240cc3412fbb2e42edccd61fc0e15894782687e0302047c435bb500673065023100f0d2b00270dddbc31405d8cfc63de4d896ecb65a72a82cecbeecc40f1d4966065f304eb997eec3885f50aac363dfe41e02303672409c40bf964dc01657453a4c01c993d851791fd48a06fd64146b9bbcbbdefb2e567d4618adc49adc75e8e6c2e65a0302047c435bb5006730650231009621786a03440a1c7bc9ecb7ce41885a74180198b2928ef1c766b0c3c09c70bae0371f95419f4b75a95f8d4c975d53a902303c8481c3e0cb9180cb194d07b5eb98a2ebd19631ba7608af5c7b0e0633e7b4a1eb48e08826f649bbc4c67b70998c6fdb0302047c435bb50066306402302a86f9181a2499811659e73548a4fa2ab380caf832b8be9abfa0062038d3422404a829f6fe0e1c567a77f525aecd788602307b0e7dd55df9a1685cc236be85f6ee0353b77d3d97d77368e40331404687e5ff77ac9fd68418f53bb58cff7da9fef06b0302047c435bb500683066023100ad21362e896df89041be7eb2a24ac210ac2526ec6e421c6e7b871aa57e3c73bd5a752aef85629ea5c23d68cc0f41485d023100c7fe4d4c5fea6b795fe2f382a7f348f188e2c5d157d79cdb27e8ff0165af593dc2eb6afe409cba4a6918404da0595a3e0302047c435bb500673065023100d05028a92bab50f63121332a4618a2043ec132949b85af2a07318bdf58607c4f4f7e28dfce7403671531e8d965d8ad4102302fc9fadbd2973085c14d3299243e14303b617a53722f6bc1523a7324c7b62040b45769cb89dccbfc8b72555f2a81ff790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023053458999fbb9e694c5354222603b7fab974b79629940364a6f3cf192dd3c8b2622ab9a1b73209feae38bc20527a0591e023020f862ea2a2e9025b8a89fa122021c6b547628514b408065a3ac650d8c9d19c1ad323836ac067b6fde0fdf3dfa896da70302047c435bb500663064023074e6839e2df2dde5448df70777cfeb4f33ab7479db9796ba26ff857ed073958cc20a4f968eccc9dfa6f99823d4c0312602304f6c0daebd33883f2d85823715c3504c0875beb1f046f5f9ec998fbfbd61a566b9a134d3954a874c08042a2861734bad0302047c435bb50066306402305c5fab79e6cb7fa3bc1530bd74fd823c3734014a5f4362bafca9428d12c3a7587b39861eeb53487275992946145638f90230615cb1922591b20c44888b615a1e281b4bacb6aeae1e1c982016fe2d94f561e56984469801b447b15ceb053753b603e50302047c435bb500683066023100fa145ccfa0a3787df629e8572ee0980b841385972ac331772f34dd6e07157848881714a7472c743e115843b6afe9c6de023100f68998867191b6c24da5559233e842fe80ab568a2b85c2b82c906db26e0c139b42d059908da9c4601ad192eda834b4560302047c435bb50067306502304c0079a8610c6b2366e4e0c02d620f899cf504ffac280e8703f30d362e1e3db7dbfad57dd70d99565b46bd2f1cd5ca3a0231008bb615d78a113431d7740b89a5d2d133ac9fb7fa473b493ac9ce19819b44accdf4cd51ede6a547a996002f109b52c0f40302047c435bb500673065023100b3d535433e133f1fb11a1716d0511a711fdcdfb144bb692edca7c4eb4923a46e2089d744d5a9212b01c33ac499e4b49b02301155f868b92b9120e378c793e6e578868f130bb97f5081dfec678464fb4fad0237790ecd5196e6c8dbadc1768da99d200302047c435bb5006630640230086afc860dc51f80b5629fc96b684e9383e7b2d2d610c32bec45cc4521917a407ff80928aed6237c7179801b81e5013e023028f5b7035a0b9dc98d88ae1de87f9448ec245778e3b840bb2f9e577ec23940cee9ff385adf004731b4ebc03995963d580302047c435bb500663064023029851137d1231fbcb64228ff37fe3b8515959dff808709f243da1bea281af96284d6d85aae9377dbfb64ab660606f30102300246f1802b9f11d302361235d5a9cea581d19e478de56ae85c749c6aba382d30156753bbb605c6dd85e8714fb33be6b20302047c435bb50066306402300e0c6810ea7424a0798f6ebfead1d21793c035a844f2090bcc1d0728e3fdf6b1ba444dce597a33bd545d94a5913c2e7102300db332fcb147711b345f795fb882219991db0197e99398b9c71e57ac0c527b0bdaa4fa84fb9f807e16e5e39118a152140302047c435bb500673065023100e34eff0da26ca688013ed3e31d9f30b77c88b2d44a9a4a62d9e15aff3f0c0d6548f4309759238c2df1cc6fe7112559c8023061b631e5bf8cd8db0fe77b5b6de1b18ec2b6d3ba97b6c6213b6855b23cc5f42b9e5d10f0e20cdf906a32220779fd0f490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310089eb22fe3102bfb50295da62e12ad6a8997e74e1427a35df01ea82c69896150be57eb8b53c09be6263aec3816f9948640231009f0219b601785d09beb114fa0c98f6179a19135b30770a2293ec4a464ddf8c65ead0509a10af0498ecddfc2d7a8c8b8d0302047c435bb500673065023010605a70577adc94e0bbc0e7315890a244cf993058889c6b67241ad11fb28ccd5c42db0c8419c2c9c6e2b20dc9833c05023100cc418713ab72df1e4e3777f48be9b00755903974090fb1131bf13d68c641950659f6adc6f1f0840d38fcfed40ca4bfff0302047c435bb500663064023039f0d1c66d6f20addf1c6606a66eb3dfdff25f8dccb1e087721b33d308299fb8f56b5e1bfdb33d5d26e90bf4d996effe023010f31db3d96d444892af82805b7dbca253c37e67b5dc38b48fa116fc389b9456765ed7f6f67d1cb992f1c3c547225f730302047c435bb500673065023100bfc8f12599a92d68aa65d4d95a3a91582c4dccace32748aeb8c3075a04c7f401b60f9239f2786521b9ffc4d51607f51202307096b16ec5eab835cb29c178266193102584034d52c1e7b171e114c80a580e866b52a9a3418e60eb10ec6274d51e8d200302047c435bb500663064023027b8d3fe95b7edda6d24040ae5d34af9113b3fd2285be1a585cbb76f03f3630c5f4244a02d8b44179e5835c88998066e02307a7d903969511620f897155c542fba7abd3468c319e7bf95764ac5c48368fb402c8c4f44721072e95fe410bbf452c5300302047c435bb5006730650231009b98b50033579ce22e3e8e74732f71dd481b9d02c074cf34cf00553274714fc51dafba1221b2ca1525bf1af353cf8f5e02303b77f8414d017cfc160777fc18fd74e7ddea6cf41c0b66cbdf409e634c82707e69a138767d95e78b1be5b94e93d0b8800302047c435bb500673065023100a9ad8facde588745ef5130d8c2b99276c44fdc736b04566c8469ee05125447a648c0bc304edb20539e44da260a36b8c40230634e5b09c797dc7da1ec48e3a28a0fe0f0fc0eed6a1527a5630bd2cc8c82f57934d315b0ba2855815385bc38a132c5340302047c435bb50066306402307a19e3d2aef3d22b3db61a24992aca63d6b3db7c89500353c7ce3d0c786a8d3efa219275f025bfc10137ec5777fc365902302ab3d2329bddee2bcf3915448bfa14e399b5ce2fbd51e74a9c8e59a74f103c2039f9b872154138bb57800029cbb0bd0b0302047c435bb5006630640230584925e610277e22e3dbb2a4346156418f1c23f999b78d76e1712b903ef30127ca913e938cc5e53d9d1b1a69b2b039b202305df6bcb87932ade4b2efa7420051f049f74bbbef8a343ccc63935cf2151977e14f70b9d27713f96a4ce2e42f1fd486bf0302047c435bb500683066023100caf980e5cf13b0ef90b437010fc3104443c22b1de123146df161001de1c29b1724ed753a97e4d8b5a14a91d62a573aed023100d5eb15e5038ad1fed18ba19d09e885f9dbc7c902c36f7d903dca0b3f1eb589228df412215ae7a06b60edc479ab6b5add0302047c435bb500673065023100c88f187197874daaa545850cfad52d1f22f09699c41aa660b1116bcca4fb1f7f75b46756c9f206da486b3c736be23b4702302fddeee6a9274fa8f43d67ae6f26f68bca9b86f32ce3b9af14e20a6f70aac86d74e52d041f0d502759b98651479ab8610302047c435bb5006630640230503b6f8d2dcd15ea16986794c8d0f02ec8086cf6742c35d87241fdf62ae86f196df3cfd8a037a0310ac9780a3565603e023006db039735f194f9af5421164c5eb2f3158b9ef9b741e9cdedee22efc489a17ad75f348c91b5900277bd00d7dff1e91a0302047c435bb500683066023100884fba92e0b7a17cae7f96a9d372c292880940ef92054d64d8fae6fa04b640f0e72dbc55f004c7ef0b323335ecf18691023100fe2b08373a4a180daba3d02d5b05d27fd8d5492257275644d0917d3d724c94adf57e07272bcba645282c7e0b159863a80302047c435bb50066306402301721b0c6b9be4d41e4a5c471fb12127d50988a0792cc94759e49f3b0fadf44ef2a4ba1394c7401b0b38a05a6b7088a2d023039751d467deb80fa5ab010c9988e165c178787ff6b293c911b0b38996be4c1227e282e53465cb0700767bf65f1f9cd560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e98019453d2be4e5835a91d85958123c542ce9d0c9747a636c83dad4c50fdfc778634b3181b2a38e91f136e6a16b583802306acb87237a23d930253e6320d7d723569166e150f172b4d1559ef9fcf110c941a59889c31aa58dc28a2e3abe685daced0302047c435bb500673065023100c0f81160255a6ef7e07e5a1607232377fcfc0331181d5cc059e9a05bdc048ae3e6331be5df309a1e6c722295c069d0ed02306c98d125c03d63559d3c11e877a78242542f8595ed329433ade78960f3d6e2949b5d050ad2bc908209d48cf708500faf0302047c435bb50066306402302e6c1f97c35916ff4e5144f8f1d60f9cfec7e2d0e7f80d9435f021c0ceba2d76d076b749a9b24e1c63468c6648b4324e023063c2b795120f50ee3d8eed50011488bcd76461579eed33be09ad3b500b8347dcb0d701abb070637397a014cd6eccea780302047c435bb500673065023100c9d829533bf478183df63249290bd8ae3add8b77bbb998c3cad1f3eaf30dd56a57a8280f35db57b3e7496e08a9ad6c9e02300a8ebee30248cdd1156ba45c37f88a55a20e3ed0797ccbfa337919dc039f467ef07effe2037f4f04d28f3377ddfc03380302047c435bb5006730650230247234f44fdfb99fae52037910ed8f4692cbb62a7ec6e6eb6a6a3b39df12864344565c8d0e6bbd6e45e4d72931ad6c81023100d4f6ae9dae180b303e1928f7a8ac554aca3bf742310562de31883a04b04022e85bc48430b23311322dc2360cb05fa03e0302047c435bb500673065023001e8599194a7081c384453170f318f13e68467682be477f1022c3eb9b8dfe6ce8aa9c8d296cc380688f72dac9737d21e023100ba8a33a131a6a17fb64c2aba011f1bab35966a7b2e3e40bb2743ffa5f3a242d642c65477247dbe02f1f170d565926e340302047c435bb50067306502304a1dde0aa038b503f27e602ab66f3b10bf56971e7067097f1ee598e8dcaef613358d5165c26f6d65840df1bf7c260b550231008bc1c798a97241f400aa3efd3246367d51fb7b99aebf7fe060be5d1cd514e30aeb9ef4da8dd72e52c513ed0255297b8c0302047c435bb5006630640230233c180b250bb144b00f64853825ef0f98daa9277127fe42143c73def9bc91804e889f4bc4c387fc1dea8cae06e064bd02300b78186ee27b4a05befb861b615a45a1c7a025d5df2253f14b10e83e1725b8560b5b3d9f9d3fbf8a0807d5500ccd53580302047c435bb5006730650230140193d05409ebfbec76eb648269a713d2cde3ff2858c5b446fc2e662dfe9e33a935f3e3f7b7ca727204d7eff6753072023100a497b033603821a76851f2627d96a4f2d945b234d459edc6d5b7254492e5a4a815496156b13fd24db49a9076ff96f8950302047c435bb50067306502302e4eac0ab29440afb3d34bce15d9ff1c38c6b87ecba22a1b8499695b5943bc404c0bf914fb6d18ac94ab2340ed3195de0231009c8e21662fa76936fad3984f9b85320caa3d96ee42247b9d0e95c49bf1b416b879ffd0ba26abff58955abbf0d3017d260302047c435bb50067306502307b2ff7f60428a28f86a7e873a6ae5047b07fe18a83bd0fdfc9c653a4fa1f53159452c0c6e1620ac9f6ce1c741f2405a40231008e04112e6759b0c0def52e32708d28040ec36680c8f19f356bacf0be8f87e37b9e392a79a4f0b663be064504ef16e3460302047c435bb50067306502300c8c9126bead25620eb67799b486a2bdcb0bc7f1d23bf8e6c97512e85b17925731939b694fdcf163793b66543101d8de023100c6cc5542ef0bf97ae2676a162ad546202a760d10133e8baedbc7a35a1ebd8054a1d195e09c27751f21de2d370dbc654b0302047c435bb500683066023100bdc608756c464f42aeb09dd59db50501a91232a19e8c3e3b34e383ca1e6ca7eab562ecdbd08073586779dda910215db2023100b19949fa2012d4e8a355d5c757a4cf8eb05dfecb32c6fecb17d1bf302ed8f5259ab095bb7e0484dc3daca81f4f13dc750302047c435bb500673065023060d412b3bbb9085b769d790d74b0dccb059a5c75af73772340bfc2cc0dbf15e77369cc1e2ac6861f25444c988b6f5fdc023100d3a9a7535aaa9be3ea98ff530a80d65c47deb9a80ce933eecced9d1334e027fa516cf02e20d7b0d05b4f5082a4adf9bc0302047c435bb5006730650230034824bbbbdcc74ebdc15c8a6a50c981838f24eaebf7ccc05163ac7808d6829936b35d3f28a798dd81fdaf0f421e7394023100b08a65b6eb3801e8d1836be475a7a1391d76287ef8896cb1a687b3bf2700b82c90f7f527179aff6abb7d7a2382288e520302047c435bb5006630640230105b5061f818c7a1e07b09e6683849ddc254db31133a1ac236859a2e4d44e349ae7bbd911a1e784a31997745643cb5e402307dd391c83daae03b8c1d0a90ba3f5cfd97eab5b214dcf3eff79cf02e3cd1ae93b87c558b70211a658300c65a5b4f00c80302047c435bb500663064023036a53ee4d926276530595e5c651a7ad27a9e257dbcfed227626038a14d4822bddfe3e9a058e08bc0ce93a486de07f3620230248d0e61a146664f72d9da15c701b57e55bd60c66e52e1d45c34f558565d395d0a69f80fd81fd94fb28282d2881599440302047c435bb5006830660231009df9a16ae2fb0fc6b5c62fa21ff22724bb7452d7fcd3b336d8547511a91ad26014396771a3ce9362b207f0337a78eb93023100b89a7f05b0f595e897d35495618a898cccddc0722bba2bd6ae705cbaaa930752fb2810340f64021d9888e8f5ea9a71820302047c435bb500673065023100ebd51f4a1032238a729bbf55e718b661f8750c27f3abc0e732268f746c16e1c61cfa6500357b01c603475f4f3d22a406023045aa402adda1a7d758c213c26a62f5a665e91796b824bae05457176ef2e657bbd9af04830d2b048dc597e2ac303ca2f70302047c435bb50066306402306de77c86890e64a0e014e91eefd51bc737ffdec2c34a8d3c7e1227634446d141fad05625a1f791f9035e7bd10c8d26cf02304e57714b42d891846a8af5c9a543cce8a960887f184353bc280ef4dbf5e1ebc3ad930c368a244a6aa2092b622e4b07c80302047c435bb500673065023100ff50dcdb0c99c19126ec642014c12a1b4e29e79a95800500c29be77c3b1cc017202036bb643fcb559ddc54edb0e12ff3023071c80f37fc9d877e77778b58e2d26a43608678e8a4ff56cf530236929b5612ea33307cdbe7509bec6a91df2a02d8577c0302047c435bb5006730650230185595bc232b0f00050434a50cd1314f07f7bde3f0f131890be4da3b6ad2c30dad5195ca6a1beae0e727a400e8f32867023100e8a616e97aaf2fcac6bc826e083cfac4a7c870e1bec001d9bbe4ac800965ee64ffa652f85a6ce3624227ea4df5eb0d2b0302047c435bb5006830660231008ce858dfa7b6f5574a409b9efdc01747c45175076d00d12c2fe31c79a6fe3003b2f6a381e3451fc0d3e0094fdbb0d463023100a0c5e90d7ba28a57d2be5a4b30c7c056589fa4577bcef9302a0b50af89546c63a133d982d72ff163bf8471bad83630b10302047c435bb500683066023100c04cdf2d1f8b273762c5042f24c6eadefd3a44ba5179620a6bf7b2ad030d497189c558e528fb11c40368c878451750a7023100d483610ca5e0fa98a5d9581ed7e95fb3c347858f8d3cab3efe000fc0770adda867943acb73045e2685c9ead956022ae60302047c435bb500673065023100f13539824d8c9cad5927b2f18930dde9b60c8052f7509df813de4ed18bc65ce2bb9e0ebee87e38f86e9bf719a301dcfd023023b58b988ec6250ed3af1f1a561ec22d172b8e2e0c2a0e56f7c91f2053fcd7621ccfe2c1d26eb22ff9c714a99eced8c70302047c435bb50067306502305322ac88435a3fdd00c5d13fbab4e6b56c8fccb2a8d6451b58cd2299f40b8b801a886c7bc0f0accbe4fab2a7c480785a023100e2705b833cdd45b8795c8e823c6f05567fb75cde36ee71249de39d6531815aa58f73e6a7f60ac9a5beb13da817e617d40302047c435bb50068306602310082149e07df9dfad0617d4ceeb25aab35b232ed0a596cbc2ea8cacd7cfed0ec4c03f228cbbbc541f1c7149e6590574f57023100e7a591492661f4149e0fc1f058d84ae10b594bdc18e48d9cb236372ff4d4e115dd880aaae48ba8f7e76db14397019d1d0302047c435bb500683066023100f5ce86d92eef345a882adf4f8fafadf96ddbac966091dee0648f08ad697f30084e0577dde4b6a6db30c187dd5d0ba8e6023100a8be8c15ed9503eb0af645b0f651d14db07fac6b64e705d914cae1f1dc4ad007a1e494ce772990c227ec70d9630126f30302047c435bb5006730650230146a1eb09ade5270f36a4a398cd6454365fee5415c3e449f21ab83850732175fe34078d92f4229932f74b7fbee45cf650231009b28882e82da042de9962bca3ca9366bdbcbbd2a8e5635d0e81c4c98e0a7644fca4071aa84a33f0b16a94f5c2e6af7e30302047c435bb500673065023100ba0fdb54545194cdff8f4f82ffba5ecfee184cb404162bd88fcafb98a5bdf686a1986efc48d684420152e28d466a09000230534cc090cf834f06620889562b5ed94c5b19495cba046837aa97397143ee1560dd465d930669eadbd25d6ecc27431a8f0302047c435bb500683066023100c44f75792bd23ce1d02ea57c1ce7462444934a60f01369402caad0ce77d1eed73e628c619486a3fa2459b8083c159d25023100cbae672d780561e21fc56b242467879e65bb6cb6cb1eb7578fe84422720c27c11ff5564e1034d664dffd6d8b488ab66a0302047c435bb500683066023100aa356d3e6919b5b77b58adf2d9817edc783e5f749c946a60b1f445e69c228ef9ce141a04924f69c209ab5dcbd2ab838b023100d9c6d31931cdb0add125d77451f21a6911c72f408f99e0b0354684a9b40336417d593500933ebc82e6fbd94d3f9edb170302047c435bb500683066023100927365a7b5c0708026dff33529bcfe2b441938ec37f474fc4cff7e8e0f651b437562939ebd632ac7906eccdeb98a172e023100a7b50870fea925c634ebffacbf12ba037d411d779eb34c7e7e4e460532f7be086368fc69f2a2062b772fba5a3221e5090302047c435bb500683066023100c2a8f4df6c5a4de9e13619268a124bca5657b7a30dd4e8ed76f5a05797c1bf676528dd23ba298d2c272c8d9b05fe45fc023100beb69a9722108d8bc2e8c62398c5a9ca6fa8fc5e1cfab14249a0b711cbdc74d442bfcc1331d8c9381d4677f6700e55580302047c435bb500673065023100c981ecf05df33f55411ce449ad7eb543a24e8ad57558f8e2abf47640ec087ad7260e323dda2011a759876bdbc88aea5f023031a5b2fc25e9dd91d78508567492a737eee26b744f7a06283509d23d4d35f6074cd72a52aa7327dca31293618c0673960302047c435bb5006630640230546a574bd4a4e5d7e17b49008ae3e73fa6a0e7f850cc5f4bffcb09516776995849cbb66bf032bb21989c828146366bc3023018b2768f7aa51cd74d2c4fcb69a8902d76ec0e02e517644128d5331426d5765d4a338556fa24bc3db2bb227762c4159a0302047c435bb500673065023100a84dee278caa0956b8ad3ec050d55eaa0cc250d2d86ecebb23a3857de7470ea9f12c2ce0c8c7640a795719b98d2d372a02303eec2fbd0dae81c0ec618a92251facac13f16bd87ec57d2b1d63a546c50878ad91e3aa457ddf7af97223da383dc349110302047c435bb500683066023100dd4bd6aae149c02fce9d97e6736052a83eac3722468c16a4d5f84b38adf45081a566885f200dbaaee8114ef12641c53a0231009874bcc2e29357c1e01f023170d28215e80ea2e902ff88a98f0856af1041689d37b542ebce820019e3f48f921f78da6c0302047c435bb500673065023027ebe682ee0200d5bf84f2d553d87ae7c69f4c6845848827965810d043d46450831aeedca61386b66f4fc828071ac549023100b2d89772e837d8ada77a9f83ac83eba7e8a7fc429b8c9a4c1e6a359167fd686db154fb7a1e20fefb31e3bc6091075b000302047c435bb5006730650231009ee4837bdf7c76ecc62ec040995f268b386c5129da54e705b2662f9174408c7c0ba59bb0159c8413cdf1ae1fc006c33002302bf12bd41b456c18bc8c87f618ccc4a9806b5884577bf98e791085753b42a798b0ef99c445e1a10c30317ae1fe97e3580302047c435bb500683066023100ad2bfdaa3714a437b4d412465395039315774d22568c157cd55bf56d9d80dd8c6b9519beb422b8aa7232b2d3b751369a023100c3ebc39faf719f2978b4b91674ac411b34a890459417d86163a0069417306039065cf74eec624888c412cabf860ed03d0302047c435bb500683066023100f0b7cd2502f863425b6cabeaa60976d1bb1790b46fad7e6672f37b61822f91389d725076e8e13be54588862f74ba45e302310094729f40bbe6fbb9792bafeeeb08843303f17d134f41600d276ab0247a20a000246058a41d06aa138d72ac53c804b7540302047c435bb50067306502304d112447c6e1e579946a45821d7bcb97b152cfb5cece1fdf750d5e196c9b1e674189a67ccb98a755ef54b483110f41d6023100d76bf4b0922482c90fd88bf873404f4051b64e77ec43a2da8e7dfd7a9e33ba1c39e29ae1d545f7198ea91f3fdcf477d30302047c435bb500683066023100e5be2b556fa43cf00cdfe36cc265e62ae9bbd162e04e504f8d7200e3a85b0e486cf18a9627ef9b975e8550215b4fd4070231008e6e9a04192330d96e9633652ff62eaf988ba84700e8421d14b10dd7f2bbee13e20c02205ac00204b17d4bb0d20124140302047c435bb50067306502301d6a3aeefddc2735c50fd4fb92af481ba1874c0ea3af0f3dc931b1bec6b236da447026223d06d1d0c4ddc2750d4a3896023100bdb2f9a91fe223d2b994895cfd41414dc7d27835060045fc32f48a668026d9f3e914784ce5ed81477f57401fdc67ec770302047c435bb5006630640230655f782d94e5838481da1f40222bfde2610bc46b62340af99fe1038ff9b90989e81e3bdff68fd64f9c61653a47d70cf402304ddf01583180a339c6eedaae1cd88a31108a93b9ead61fde75037d8fcea97db91f6472efe21631f9e8bb09cc309f88440302047c435bb50067306502310085ec25efc3cf3b7719ecb1bd0b3746aa86b4fb0ea71de8e7f004a79e8cdeabd96d51477feba5d34ce0a5755ac2292cb702304bcb34aa4b8628a09fe1ee9003c17ae01652d568939b4275fa0dbce0c8312e393c647c5e6d08eff2173b8d8d8767d1850302047c435bb5006630640230644b58c721cd6b35e2070ee1312ba72a08a090b1640603491e2bedab99202b392caec71221544f6cd3f0f66736ae957f023051b329fc8bc1fe6c5762ac40b1ad446f080e6346d1ae9ab2fbf5b9c8957f1d24a7f037610c4d3e63410210a409c7da470302047c435bb50066306402300b2b2c9100aca8dd80a136dd3ded889854961ccf2ea247deec98059cde29231618a29b6d45139b1718497dad97300a1502304da42c508ea7371f45a36920046e2e0644786d325a0198576d2ffabd4e708d32227c14ae2647c3ab538aea87da5574e10302047c435bb5006830660231008788227b03b375ccef4bc8472fda4a2d208ead73b3fef9bcacb042393b086439246199b54b44ef10abad3b0a9d85ab3c023100b6d705024551f469a239660d2e0ef73241854fa73e12188a604d790d3f415a750c4f24fd702de36406969984e4e4334b0302047c435bb500683066023100ff3114af13627b73ec3d58cdd4366672656a6c22d53e12e92dd6d1832f4c7e52bf4c75ea991eb222d336954ea092455d023100cada08114bfab844d0a1633e0764c2dae6915b533016c5170bb8cd788ef42fe8cecda4a784b6d7f7fe6fcf23f5d2acdf0302047c435bb5006730650230557a3da19394a879d307f071a39285db260004a05cbb921ea0107b7d3cad2880132602b9575f7a081041b6d1640767e0023100f16a75a996944f3e96025967920e51acc7a261e34655893946c12cf0f4eafc9880d6f1896bff865d4fb4ce6cb488fc390302047c435bb500683066023100a9c7d1a6e757c9c318e653d68729933b14084e4028746c50c1e243e56232a2085be4cd7c99c5588bea2d5683c45b87700231008fdb991976e86e6f996e3ba754acfb533f68627cdfa7db628b72fb596c585189fdb79a3aacc66e68bbbb5c960256dbae0302047c435bb500683066023100eb3ed12ecd37d6aa49eb7fe7442018036b6e8db99437d9c1d831b9d596b47443682ee7b474a3f5ef998989d0cb01de47023100b11fe51f7c9a6d87faecc3c6f945a592c8758c533bd7f1fec03fc7e4f89fd8f664b2a916c076a538192ed9472adb9f830302047c435bb50067306502307abc09982722572ad88e5d11863950e2410c33cf0b14612ce8a77e9c6bc10145c315ddebbbfeac8f6b7b0b5289ee3751023100decf860381e73d034cfa8360d785288f82f28c674e7360943a9bb8e6fb60197ee339e97156ebed555ed30a7e0b723a630302047c435bb500683066023100f3c78c05429385a2fccc263bb0d0a9fcaea22854d87cc8f1f1e8bf925e554c42b9f2adc307fbc624a5a25d02ad6e6ce40231009bb6b41d348a2cbd28a51ac47c726636307c3bc50f6b292f29b1a5e355f839bc6b3cd50256c52e5b8f0080aab8b327f80302047c435bb500683066023100ba3ae61817cbf95d05b9c034256e8ccd0f2bbe246da7baae33628050bdb07422ba4e0742f6124c87c214e4e0f1081a48023100f84195cfec0b8d2404b6449969152b8b64e2d3ac80e1161886e976bc11502cb2edac929f86ba6c6f66284921235569b60302047c435bb5006830660231009129a8ed3133da0ee136490c213b05307fcee0a51749eb7b38d5746cd71100c92abcdef58fbb22b8926828b2e46db6cd023100e798eeeb391f0dd52e24d5df8381af8141fb92dab10ffbe54031dde791a63ce318a6ab2b912778943103b8a3c95a08960302047c435bb500683066023100b9bad3e537225390b3669dae9ea3e40cfc6a64963f2ed0dd38ba27b3f8bd76450d96213cb5122c1c7d9e2f749d57b55b023100d48bcc58e7dd704838031057eea827b7ce71c6e4cfcc3219d74d487e5c681f905c4e45846e76d22c626ff490e4a4bbd30302047c435bb50068306602310082910ad3f03c2f9a5677eeabe8c8cf16ed0305a6f87abef600b835467ec23406285267894d5d8622b838e6747d5643be023100c3717174e456315a9853f7c883a23bf5a7dfd4e9a33004fe8141ef41b6976082ad5b95341c91e77e534ed40d50b4759e0302047c435bb50066306402301c6bc5880dee92ac7dd552b3d730eb247e139ab0dfe6972aec6f1438a55f2a4f8313e7639c813425f240413202e2de5002304cc434ff8973ffc3daed117797839d741127fc8163cbb88adde0f2a3f33a219800f80662b7d57f90830da02692689fef0302047c435bb500673065023100ff681f1f7b133115d773eb697eb335eafb0737728334d68937d4c7965a1ddc8e7addf38e74b429ad5d66b99f5d8491eb023032f9681b67eb664f783022b7764505ae4514fa8faf73cdeabf6c90317653e6ac709d2cee34b4a7dc5231bc1b08fdeda50302047c435bb500683066023100e32baf7ef75d85cbdf79eee4eae0783a0c8f499aff8acda5eb1a3148041c8c1807cda3d05ed46c62707638b7b0097934023100e0d19b03c7a14a59a62f3655aa8b51c04bdfd5d70cd5243e44d617e31ca9fda185854fc9957a9ba05dbfb0b7efdd6ade0302047c435bb500683066023100a31a11bacdd90869d2af5830622bb72e2c2d961e0b699ffbf9c5e147b0a16b79f84ea46dc99303d9ce629a42e66ade3e023100a6fd7918fb0031a6bcdd2d082180429abe878d481c97893b8182bca6fa26077e33677a3c6e2388a2c3a6b50b90293ff40302047c435bb50066306402304f1e9c9849c00cc782d7b2b7e7b1391acb48046d0d82a6df353c289dde4508d047c0a3d2bfcf58eb567fd180bf74acfc02303d71df8fabf2028463c5466647134bcee2af627a26ef2927cbf8d044e5448531bb70387ca9b21e7e696f3f2486a16a670302047c435bb50066306402302668cdb6fefcfa37061521805b70eadb48ca6ca9b1ecbbd8830bbc8a569d9a02dec0c0199973cb16cbe921211b4d74c502307449634bcb457ba8fc31cec30f6958e4970915433d6c474e1680e467230b16e6e0c2dd93f269219afde8c4c40030c54a0302047c435bb50066306402302ddadc3ed0960a069f13a02f4ab420a7f142117eb9f4847ce9229f8ef013598226cd49378d0b97adc6b253c7cb47a17802306e461df8cd59a645c6f462dfab74a9313b608736da7f5bb5975292f81db20d7eeb38a5bc5484d7191bc0bd919ee70f130302047c435bb5006730650231008b324cac7cc491e35cb6776bf3b96628a9832b6fdd792c11c6e325ad91dec150c413496894cd7c2490e53a9b84a7fa5d0230675b4e5b08fedcbc3e40c6ecf14954936489f065b8eff79bd8c93f3825477cfb0f018f6819006a6ea45b470b31bc3ad70302047c435bb500673065023100a038883a0ceadcc7fc1e72f58566d7cf6cdd59b446ad82c7fecd13ecac24f2e2826d85b3fb656a003430b37dec691e0c02305ff25185da8d85c986a66a6f912c658901188150ddc6b0f06c886600b54f283d4866f220d029a881f0349d94d93861d10302047c435bb500673065023100cf47f500ce9c7d86f5f0ea9ea2820ae98536db098884c13f95c5a6fc014a0c3cbef232816635af03996caa73f9f0cd5d0230346577475e68a0668cf107a040a0692e0bd147bda747a33c81ad0d462bb8aa2ab664d181a6bb855ced335d42f38955c60302047c435bb50066306402305bab86e02e33f79d570086eac5af48c5a9b97b76846db57586ad1a414999b8aef6461cb1e8212feb5e0ba455bbca795f02304b16f2ff030e22575a2810a8baf690405f6af7d6f83122263d67cd51c0a20f2aa38e6b2c95be54050f7840b90cc1b10a0302047c435bb50068306602310082d331cd01247c23574cce835e96f13b9d78f0839a00583e4f1006a6ff1d9e769f8d33883f0e96c10df44958bfdc29cf0231009bd9c138c6910bfc604bc4b9c67b383bce7d39f28787be4b375d0b7c1e9b90bf7aa771be014a23179ddd42f7e566edfa0302047c435bb5006630640230413a4429f35ab8e85fe06dc975648233af20544da8d8a2841f87c39cd7c061485aad1b0a7ffc189cd761d552da9036220230227854ca0d2fcce5b8bef81cfadfe44d8701e730cf638aa8153cd336e7f3c139b0b0f9747589d62a2247933117f212980302047c435bb500673065023100ab9169e3c1a319b6b1b9783962248b3b138312dbb73bc8fa10115ff73b49ee6e020ef58e749ecad474347b78d565338102306220df51a01e01700bdb068149ae752c2f7e66e58820ad49b4a6f879a164b1d296fd1c9ad03ebceb98810c276b356d160302047c435bb50067306502303c8aa4b627fa51c7e6e11fc353b82af531d2ee7ea393a41ab6b4038f3c165350eed60cb99414f8ddaa415f60dacec940023100cdc8ec0ff5ff81c4cafd79e335bfa892812f980e4d8530f333d4d7668ffc4a618097e9eb99955eda919f8864fe681ad80302047c435bb500673065023100971cebadf3eb697a3a154470f535d59af0f59a1710f5f3c5ce491168394343994ff2de3c74309d8414960d632dc13077023066c742fefa13ab2b389e0d0299af01c34681ad97e8a4b6f622f76c487855407b684a1b4935aa74edc0f81c8995566aa30302047c435bb500673065023100c52f1ed7ba331c50d6a48f11eeb95cc6a18386ace01f1ec484d89c8d5d5620b44a62128ab94680abbc11a581e71a945202302730d746d5498da93a0836ce3d12cd231197a70ca9e8060bce28a1d4122131e3760420b9b716a2cf4e84afed4dacc6c00302047c435bb500663064023071fb95ac97cb62a41a22e11c28980cd71eaa5c6075a6f5f9113908b2316408ab9a9bca366ff56813ddc469d2870f97f802302d9541f9bbff8a52ca178adcbae363a19fbd1d4106b01491603ec5fb38a5f87b8b0e2944129dcb58c2f3c357c8ba4e980302047c435bb500683066023100c35c146cfa5601918ec2f62a439256d9ad365c0323bfd4120b6c1a9818e7032771060a2abeebb27569a0cb2ab8147ff6023100df4c65748264587c9d6aac3eef99781e41e75635870858023d909529f8c0d8fc02e1e5619295422cfca678736930f1a50302047c435bb500663064022f0e65736f2a17f148e2d75b32f33cb18d10a5b78cd443fcec223fcceba234e2e5931ca069c9433ccb98e05ed07b60930231008a32a83c92db8f2c19ee7987b806b5f5fe6541ebb8dee06675d7417dae80a2d8ebde1169b3e0ffb3c9caecf49e3cca5c0302047c435bb500673065023017e1dd6c5c855d8a8b35dfa00d0f76199db926cf432d4e6489998292ebe7da15094479aa0b6c7b67cad22d3f8052fdd90231008de52b9752a01ce64f2cbb210b2cddf29bbb8c897ba5a64fa40b32a82d0b34aa6535465f7ef38b61599de0b46e3c32810302047c435bb500663064023044290905e479db2169700b7663824605f4d5615a1b27a1f54981d014d4cac168e6fe0108e4b08f16ad5d3afc43accf1b023037ae86525c9f738534819d9783cab79e24aeb9b905b15cf29370d34f974050bd237dac70edd2400f1f9545241f8c6faa0302047c435bb500673065023100f75fa342cd46c118a3e77d6d5976fde259661e010906254ca7e7da3b334647b02eb57d17975e1cdbf316741175ba0275023004ccdab2326188de34935d8c03b1882ec6c192027caaa445258921a11114a16c6d024516809b78dd94af7312d08768bd0302047c435bb500673065023100e335e3184b3cab7b948e22c1234a51c0d7665053d3a61208f02ead00327af722e34188601469c62dd0181e8ab2f4c74c02301cdfe86b7248a514e46b8e1f7208aedc5734cb87cc52e063af904c0e9ef6a04cf3f308b6661ebba2826d70ae98af784c0302047c435bb500673065023100edf5bf0554372bf963066b2c03a62ad7668e07e443f1da3054e5c34410d75180a28605a3a047e7e95e85962ace0566d302306601c53d9d8d0f493a32b1738ae3d9dad76cdea9ad84d071a59b0195f997b77e870e819780c7d87d80a93c398fc297250302047c435bb50066306402304101e3f04a1bf994d8e7205bfb6849ec0ef2bcb5dfa489401b7ebc0e263313577ca4e07cc8dcc3904d9f86b6e459bf7e023047d0953f0694e2dff197edad263c23bd3dbe7c4e897bf1e4c6941325a754b7a2089624e32615e401144c9d83192030540302047c435bb5006630640230734a991883aa635a7a2f141114010294061b394822fada4d0c83b0257130c828bf8ee592897ba1df92081c53db71994602301933bcd65ba4e7c57874901e2cc3cd1859c62b8cc4e50917904dfe02dfc300544e924a94d9f0d6ba3fd59f140bc70ac00302047c435bb500673065023100d1c2d39245107ce06002306e2cde123fe5ac162e6e8c4cb3f42c0ff9eb9f89a687d01a7463c6f55151c669362f79361902300cd91ce32c5134c182bf8624216d1681f16ef5d3e0b7ff91106c06216134d693b7d409565f7dc4485459f7477b2c91160302047c435bb500683066023100cde14c24cc1aa658509b6509e2bc7de3a2171e4a2aebc4626105c319ea9df920a80ae29e62b1a9c0dfe1a24c1f5b764e023100e60e883f1e28f74f4c7ff2803c5c69d0b02ee9f1989abbdf53653bb1d3c53b0ec2f68c59984314b4a2d1bdbb832629770302047c435bb50066306402305a07a6686bd3050dee80da4251593f3d52e77d68cf2faffce9fc2509170af57385e7d166ad107a1039f1cd74dc6d52750230727e47f1958a8c4a1c8620c0a248cc68a94c977d6c378dd514ffc07d1759b5aced380c6981657b84b6f684635428f9f40302047c435bb50066306402301759b44faf6e9a87aa23b2a512ead377fd584abb74fb8cbaee630ec7e73ffc0e3311c6041a3f6cb57d1bb08cb97a021802306e873f47cc8096a374ce19241703835b80d07082497d73a4caddb2806524f832ac52fd876be99c79604156ef9fc9c3190302047c435bb500673065023000db6a3ed6d712c3432f7c8937caaa0a59d3af8e058e9b5815889bcbd84c5048754cb0104d94a6dc0ec6fa8bf10828da023100ad298b4053f5c1a0b2d40b301b719eab9517b14810ea9939957b2d04d6849c369916445d05fcabf84fac30dab644ee650302047c435bb5006730650230074b762f8d103f7fa16de5e49266addfd5c01607fdd320bd4268dad3080600a5f2903b4944561ec743cae8a2e82bf556023100bb4e87aa2eccd4eeaf69641cb026bab46f93ba120e20d4329e7f05992fe08de12cdaac07d904d088f24e325a0636e0300302047c435bb5006730650230179c4b442919ac26248964b0c935a4b910cb03c9ece3398bb776b289ddfcaa49ff74da818bbcb6ee8449eb7a5af602d9023100edfc273a65d2cbeb307fc215b0b28c1815a9cc5f197eb6734ac7e38cdadb4dadbc6a33d469761f59314631421ae50a570302047c435bb500683066023100b13eee8a91dc614e3346b2b152f8136d73105c7794e766b4cc7efbbdaeac5b2394fb39e164e13d4df8ce902f45c89ec7023100ec1cd892acb98a325e54c93b1f9afbf6b98e43db265dedb3824bb0303d86dcc106f6b409ea07347a3845c037b4a5b6ec0302047c435bb50067306502301267d34de457c196da59af21dc1ed22df69caac084f5a29b7b7824c04a8319e226ff21cf3d9271011ef86a620ceeb750023100bbb1a1b99d8bc6f68dc603f0b40b3de57ee001e951fd664bbfd0f93deb2745f3527549eb4f03b015f75545dff20690860302047c435bb50066306402307f29fde261b40879c5a2b645eeb66f0e872957b0a5dbb61cc2875da6aac193e3448ce92b167cb83070c116c22171b09202306bc14a3439c9ee4e3a9e6154f2a8028519ebca1f55749d74e408768bfbfe9122bda13705940565726ae9623f92805a3a0302047c435bb500683066023100d3dbe8c94051b7bb95d66ef0d3b2ef9997a4548586dfafc851f9711475eee7b5ba244ec924fdb7ce1aff6da2197f2b70023100edaa5ad297116dbb7759423c83b72be97c51299bc1c6cee36a871fcb5518d450ee80c5892583385525dcd3c0ce91b90c0302047c435bb500673065023100e4af98b200df5a386b66df6d22a4c814943ac92b21829756ddcecb254342bf424d4f1647e49f9e42431cb9e811399662023062f7fd3e6ce2191e12996181e3507acd78865554eaf7a08772643a0c0de6bbcd91e70234e783e28fde040451b5f5abc10302047c435bb50067306502300895d42560e24546f7f3241755d39d89bcc1d9affdbef2eddffa061cb7cbb95f79064aa2beeba6f6a823679953726fc3023100930853ab7602ef28efa2e5c80e8a9f93923b91e8d1ee07e9e7f2d6803cf559d3b53bf463dba83c431681f30c237413490302047c435bb500683066023100c0ed5d780f2623e9f8a6ce2c0026b30b1f183391d45cf5320750138bb1cd8cdf63551e4dbe0aade825bf53b284536d13023100e4eb5fed4512ac8980a032a01d58d077b59df71178988b7ae508de1c6e8033d4913c3834b3e2a1751d2aacf07f3c6b2c0302047c435bb50066306402305ece6ec4f79def1a266a35f3a5357674074bec20118f45f4aa650b9a0f2d9a494afc111d7f516776099352b4734b6b21023019b8d100231576853c0e1e7ab2463f6979d6dc81307877d13b6f8f572601898e1fb3d71f59060c6bd9dd13cd30948e380302047c435bb5006630640230795885a93c77068ce058b37b9624fae1d479392b3d6f0ac04b0fb395a800995aa3a8b1b31d5f233a8a9ae042864d48f00230733a377d43404f9befa77df5b3df9fbda84a3123962c0c783f3865afc978c30b0c86de91e03f4def75685a75a6e4cdf80302047c435bb500673065023029c8050892a40a52826c2d8bacad3f3ddfacb8eeb0fff760bad6d761e90b5143060c386828f8730cc04106786007fc21023100d76a2ce78b39a7cdc8e214116dc2c6d084fe7b8ceb0c400ad87ddfc73cf79e36ad104b2c1ebf1d084af699c6b279a58b0302047c435bb50067306502310097991a841283941d0747f8edf8f28167a5310d505085e404adf45593b206fb53eca775de33b4d10be6414709ebd3dfb002305c2868d6144e0fdd5b0243e2bca68be562ed5d0fa435eec6a2707a35cd2cc5f424370c2d3ad30c8b5de2a1083d590c180302047c435bb500683066023100c67059d9ac25cd9648b4d66dc81822731464e84e789657d2587504a3d90bee5c7454076a6b2f1d363055046825ef87bb023100dec65cdf5a68ae3e07850bd869a679bdf412488b0e5aeb30ec4cffe8fadac28317dbfdfa5066be45ddab8f040974cad40302047c435bb500673065023100b390c3f3a9746e13b8f56436de58e6922b7897fcce0b2fdc32ea15bf61eda795b0c144f878ce9b4d4a2cad9a94d41ac30230627373a2e6603a92d6b93c66516212bf3a9196ab662fdd3a5d4ae380e5d96218a3093e34bf19a10c1485c9ad5234ab8c0302047c435bb500673065023100e972ffb32c510b1c702240b418075cc617af164212e7857b656356c1e1a5710be380cce92a4eff85ee03e31cdf7ab784023079400d4a829b5f4ee4f2f14d6700c94208b9bd4d3e9610110c18548e2a260e28369e8b32a01a66364b8317a852e88d400302047c435bb50066306402300e680f4b82fed1681c20de42539a3cf73548aa238705860c6f6120bd8c33b0eba646aed23250b8c967af560bf62693ac0230540539d7ea08eb5582fecdb46644c4ef1f2fc3f60aa986791369f864a5d2dd0b4e2be2b8ebb7f838f05830df8509d1140302047c435bb5006830660231008e0e7b60ad316a9e920e7282240eae3ac02f7b70cf81e9696ea5f96623802dddda79b27f2a5b91b3f6ba87b00d6534200231009abcf2dc8a89b6a3631405e5a36b14957212c7e1eafbf60c08ef1cee0cf118f837383ae6dd7b5151acb3f76604e7bc380302047c435bb50067306502301aee6b3032691b21025efe981633e966aa57c581affff631eb8a1f006651242f2ac9b8f468d72e179644e25093f33fc2023100d1c08a05accbebf1d27e40ba99fc8bcc4cdfbe4d2e78c9dc53a1641ffd1e8205d48403246561c8bd1c0caf481674e0000302047c435bb50067306502301ccc39207a7177329b8a752021d1175ed3e12a2c50db6d5cf24a257834c3f21902fe49d17484efa47b14fd598011b327023100cb97a1c1e68cb2f06cef7e48b32612569dc2d4fd7b090e4092c6c4a3b3b0de139d9cb8c14df4e9f4218b0e65ab89d0840302047c435bb500673065023100ec4232e318bd04ad0c28e85ea70e41a17224b3657311970027b5777efe70e55ea56e1f6ca33540d890664c9df0864fa20230361c39b741c7f055b20ab73e4ec612bd3211d29f730b99f43513ba431719f775a8d069515c45adb1a1bfd0249dc1c2470302047c435bb500663064023046218cdc9719b3de540a5579ed6e0faf771f85985063b848d6810d4f9a3e93ec7ac63b4757b6b1c8ba33493e894ccdae0230726a2bb0f6648218d14592eb58b41bcc2671496ac49c4adf1fb2a8ad3f28635e32300f8f5c346a9ec9728d0efab73ebe0302047c435bb500683066023100d0845b587b0f66e3eedbfb6d04a8c992a61561d5fce5ce060a6c25484fcae6796bc66f691a1f4a34b97b87fe2e9b48e60231009e3adb78706bb80d4d4f0d44567b3eae5f48ad9d9c1471f30a7ba94bb0f44b8cf7b10f35422b8188e1746f0912ebd0fc0302047c435bb50067306502306a118e53cefa0b4e5ea080e909ba547d25977544660bf1050bd0d9394d6ff6f8cb976147465ce01ccefa6822de9406bc023100cd6b33fed970848ac6715f24231c416e59bc7ad9e3bc41f709214bedc3674ac0a479c36cb4deedab65e6ef98790293340302047c435bb500673065023100ade1575ad0a393eb7de297b76ce348cb3977912ddad6905fd81d3f09ed6f337759c90bfddfaeca3d5e6eb6e687192c5102301c3b9f889c2560a4a3cf479bc4d02c2bb002b08cb66c1f14d777d1c51956b40db7491010ca6bf894fcf5e2e15a07dc850302047c435bb500673065023100f1f232cf0963906f342479318ae270e0f360a491486010059075265336692fb7371c16c9f15f6626c138dfc16a8d077d02300ea34f1ba850eae5fb03a8dbf42f5397a085c9684c2f5f1c3b33cb6ab7f0ec01c7731810508f3b06fb89eae94499a9b60302047c435bb500663064023039fb8d1fb73d2ed2c955f002381633c2782560f407592698edc97d72e50d4330f60ded7127f34839419f88d1313d7c8702307e56c94b9a4fcd0fd5e510d1ae31284b94f2bb44949d02eeae41c93d3bb7c513972ae79dd5dcea5ef7091cb4206511e50302047c435bb50067306502300c51572daa3154409114139f6e247a15b883d117554c40b6c05430a29ff8d6d2b996c3be0f20153da5c0390b688b661c023100f7f1ad5725e6ee46a388df63d9f78a85df7b8481dc25fb9e0db5b3953e24ab653ef52af2011fae1165b9cf3136933ed80302047c435bb50067306502301a828acd58892bbb92cadbe226948e6c45464ab20adfd2a71cc7e01df2e497cd7bc9389186a7ec6b07fa34de210510b00231008bbd1f9530663c42a81d8e7a5802b9932027ceb4e111331204df44ff151320215e25e1d6ac0cc04e8dade36f62e29b7a0302047c435bb50066306402305d5e208e5187f4d14324a1164f1d32eb6050434df7f11f46031ef8efa2ca14b617a819c82a8c6eeafb516fa3b2111dec023032c8be46e5c1678116edcc80b2fa80a7beadeeec03f89f2c41eb74ae7ffcd3a18adb0f1075135ae64fbb51e388d7338c0302047c435bb5006630640230391d7e33ebcf504e79d4fae0e668a463b9e1eaff6c3d663bf41e9063c5227b84e3b54a7a1569a8e561972bc37f5f6efa023013a11623681a57d2332156226b2c5c119ebbf73b4420e1358f38ed21b9648834845c92d25a4c067670a749ba1a8d60250302047c435bb500683066023100ab9454fdd235dfdc4b83f10835ecd3032056eba10c8a14782bc97cdfffd6c6ed07ca169b27e9a8133cfb822229ddd9e1023100be36e1e23ca7a3b1f1a14c682f5a95650fd4b88cec48709ec6c3207cc0cfc87c83be31bd2a437d363969e871d2af4ed00302047c435bb5006630640230170a5a78c362ca170f733c18ebf0d4bd997227c3e702e0b28a9acae2006df9ab76915d3dbb4584c9d5b39da92ab3867e02306569d73a89e524b6a9b5ee5dcef195cf9127962b57b8909a06444d1f6e2a8e134070433c83e7c01f17c7586b64640d370302047c435bb5006730650231009e1f0f2323796e1fa7bbeceff83e10746a7185c4b206dab5f115f16d25fbbf1db5cee2abdc661cd3e81672f5c76eeef402306ea4460d8b86505c3746c42ca85ec5be4a5164df450a20c46897d55410fa6cfeb336865c2054ce8872d77d7da68ba30f0302047c435bb500673065023100c66e6e10c06b62d85006b237ddc62336649a14599adec40a35a2709b67f289267725f459c51f27224d1360bcb223dfb502307f13d3bd49ce97b7a6b563e611f4c10e19da2e548ec794de33fc9f45c50990f3bb92354502c9425b7aea1f4a1fff5a3c0302047c435bb500683066023100f2d2ee3d99d9c94f26865efd6c9f7dd49ee204dcebbb7c4a2288684072b905df7dfc9837269dd820ffb57a4f038d9221023100ffdef861f8fdd0819ce9c1ebe0fddd142f19a4d0509e84ac7d32a4726b51096cfb5d6dfbe23f479f19e9f079de29ee490302047c435bb50066306402301c20633315233a945016e3200a18fdd14ad3d9473d915c1234aa816dec050213d7898483a0a3b6c96b5769a75560d74b023020864b8e06790339c8196495a9e9c5610cfa99aa072a8691666986d7d81579603d97d425b7b9e90dc79514511fe9c5d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304f31407f44e86ca98f1feaed44e0e7f1002c236b22b6e3eb833f90f69cfa2de7d12f7c6eb4280d0dfe5632418e2b1aef023100873ddaa4a8e63e12e939b85c6a707a60624f340749cd41955b1648afaf428bca6fce08bb1483b794a29428cabd7d2cfd0302047c435bb500683066023100ee043d4a265add2c3f08d72b6688206537f29d8a5666c8d793d518d94e95d3cd404cae8e023317da3859aed22e1c8e69023100e9e1575aa0a713e185dc6cf885292346870e257a3a5363e5337dab97aa055ecaa311b2ea83abf982f270d1b73f8aab840302047c435bb500683066023100ff940bcef66d1bec0b2f016b8b82af45ff2a3d0fcb8d361560526b183cfe52b2c23a941f0971bdf23f73fa9ca1c8365e02310097d253114040e639bb35230664c3631b26ee0e4f237cec240fdb641b2a78b4ff6374470e74d6cedbbf3fe0f72fbf64070302047c435bb50067306502306bd614f3ec2e96ed4371500077db9f316f9103b66146048efc0da5042665b69c0618205efa7fff8054e02cbcc14523d5023100e6096e7689d7bf503de2f8b6c8acf5d2fdd194836b5b919210a851dfaa60a27c6725a3dfa4a1c7647855405b7b79d6c10302047c435bb500673065023100f49b9cf7980d9a6aa6682e5f42fb4a21c6fb31866a6fb9d23a4b9777bcb71d058e9390f0262781e4e875d00ff7dd2d6f023027dd6e48d217a34fcbddb8b77859c168411e764b197faa1d56038f23f87147bc82a397d5372f04da284ddabedd6a7b7f0302047c435bb50067306502302e8617a4e97fc5e5ef44535912db0cb4017607f6820584f296173f7932a57dff560b3f83daae8b1a1ba488f073185a42023100acd0d74c316cbe42d9519d37b2bce17760b01ea3f31cc7e555bd64a2838407a262dc2361f17137d9d3580dcb8fb869310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100873a64cbd91c32689ed1249bb90353f5f738b701f9df18c471a804801a7fc2020b086fc7d2cbc67e0434999bc7392e150230382fc34b185e576bdd63647560eadd1be872b3e771126a4dc93ccd9313c7d960dde4ecc639052efdc2e380f81c3a12da0302047c435bb500673065023100953d0443de69d1832f5e09d55f2d4d612f2b390f7d23cc37fed4d270c5646c392cba04986482f396f34628ad0d7cbe24023076b1a4ebbf300fe6fec9bf9b6bd3f56ba1d75805d37a2055d987ec12abcaed3657349f74afec6e0e3c97599e878f65cc0302047c435bb500683066023100fdc42c6e75be148847237513364d204ad0e99946887278b620bdf1f8926515c882a0e8414bc485b370f52c0a5edc7aed023100d2a13f49df160ab4242f209f560dd000d1ca0cd7230c998ec5208fc83b15322599e95293556abfbd0b8f824426ee5cc10302047c435bb500673065023100e4f3970082a107ffdf57ee7a0e586422dee1a8c53746035e92eacf5bf261a846591f4aaaf15115ba7daae3d0e94f48a2023045151032c913f5d52cadaa00f2d3b8aa5c7418ccd96510091177b98f626fb97cd54752c72d64f4df82dd59e11e88708d0302047c435bb5006730650230702d967d032518415dbf50f531afaee08af227eb1c46a6d1660e1a861167fedc02c65f6d9ea62ad1defba4246e696ee8023100811691f69bf277a0c95433af34d1faefd3f494bc4c3dc6296a2625d56b7f85e696b4bc4e7c5e1b26a5938e46c606f4aa0302047c435bb50066306402300ec53e8e16677810f989fa0849d37e68a461943c0e9b316969e0a220cba13ea9f9c2e2293a3ae5a6a6d42144412514f00230169479a2f1a44372bad40ede157a0bc8eea8e7c41ecbdb38671621d46e0de6d73c4dfc471be065cc543153a7063c05900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500663064023045ccd0ff53558f620705bbb1cbae06312a79f1a10fb91109cb98c7e3d988e65b1ad52ee4fba07af66e5981edfd5e5bd6023036103df88fd3715fb3f0142c9a3782fb44c816e127334a1273df16e8f17cbf23be977d8b5f1fdcb2c5d5887112494d540302047c435bb500673065023100cd46c385a619f22bbc02c09546bcced96515987316e7bc745ab1cbf4fa65464cd5aea9b0993efe5fa9503f060fa924b60230719f24d664299671a964fe54b6fcbe4f11851037df9495946fd9ede3b1420187163b400d942f1de058fc4019493c75bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ecd7cdd5cb7f7225b4bb683a95d755ced835ea99af6e59635a25f39e451eee58967a0fa6230b44f434fca7ea704850d2023100c2bf1b4b650ba678c87b4cc2857e0114566a449f046f0c1658cd7e6fb89bb19ae15b094e43478a9a78f024b697264dea0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb5006830660231008d1c22664a2f1590e6a7496651d8bb2c0591d3f292db5e63a48d64946e14a72bb3207ef4a2b0f6bbb7522284779a70bf023100d77b98730862c1c362bf8908f5137121c0a9de2ea9a0282cd57081e8e00cf21c567bef4388afa590a96764879345329b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310090ce161298ea6ea5387667c86564ac5da2b738032b7a7e29684227354ee21a28d49c708014bcbd1d86bc7ff144e8a0730230199b9b7edf948fd4fad6b438b3c1a718c09fadacff8e4d63b2088803c361ce07e28ea8d6aa0b6dfe16cce828c4eedc650302047c435bb50067306502307c6f23e5fcf781ca9aabb2b9d463a8ad73a1b3df57be4a24c367cb7273ab2ae7f9bc119e2f2c975b1f3022e072148ff4023100a355e03664b39c80cb055aaded54347d9be53382558853bc854eaa7729e390225b86372c99cf209aba2ee015f7ccc05b0302047c435bb50067306502302b91dc77491cef0b54d8eefa933f5773a15cf65fbbe2f4dab0a34f5b2077116ce804e93845b8a1a529918ddbff545b3b023100a506745e2a282f100cfba33ce84f42acf77c4cdb152319bcd294e1338686efaaa62f8d8e4d3a3becef0651f46fed40a80302047c435bb50066306402300aec1954e5de1ca6a0fcd902d1a531b4f4beb4b27e6d8a717babed9897195fdb74b41c383f05592aa98d583dd25f5b1b02305284052e655e89993bebea66780a81442639473a5be3a7c21d11aebf191bd2c5d426bbf3c9167e5a3b30370d5160c7360302047c435bb500673065023004e83963bc670df9de63980090b77348644d5d25be5df315852a2656d2ceb06fb750892f7b05c92a75897627e56aa909023100b1ed1aba9b1ce700eecc07b13da22fd69ef6bb74dcb0fc8dff0d8a348017b554b0d76d53d221e97c11068c187f42eafa0302047c435bb500673065023069aa92a63b03967e4ba573e7cd90b372dcf82e85e2062121a246b1c1f0ace3ee22542a23ee9da40e5bc1977c08020e86023100f3b0fbd6b48f2900fa8d119debda9100e5c44f978a667f020a0dc27916a1f8e956075213523f5bac39a7a1160829fde60302047c435bb50066306402304f56fe90f56a72afc89c3852bc4b42d2669059b93c0b760f0621f3eee1a4a7a0b97d3e8da4b10b6bcb294a1f422921f9023014a441a40a89c0c5987e238f015c2baff15fe502a5def27916552abf2511784329209bc4652e3bb60eff78b1698556730302047c435bb50066306402300b1f1802569128b6362d91b59d3b5388f781fbdf77142d7198061ba9a708c526e678ab2e69b86041a6d4015d2b20dcf702302fdff8ba254ef13bea11c7c1d890690524dc1edc854b264612d4c0e5c847a6180605cda75ac73a442fe11de8d17b45e60302047c435bb500663064023022879a79282b7b6915b18c854961d6f12b544ed26a3f29c49263021e13d155d3f73d73131d9ab66bbd821f41fa07e499023061b932087eb9e9c72d06a56082060e5e96bf9386eedf07e456c2d2565cdf45d5f8f74addfd6b29d5a26bfac89037d0850302047c435bb500683066023100a83bb2370361ce846bbe0cf365d712d13d2eb3bcdb84e31fa93b81587234fe2370f7a5bbbdeeb391270c497d342454ad023100ad29aac458d0b25b871b80caec1847bc8549174507a008527010096df8f4330cb309c1154dc12b5c1c1ec98b16014acf0302047c435bb500673065023100bb4ef4de64592e15a97a3730f3c71b4a4eb09c713040176401648222fb0a9b72502243eb11e6a03d6c3784c059ad558102300153f4ba60dec76acc491ab96d031b00265f9fa60ea5909727e625ed8ec297cb5a8413cc0f0c735a7a9339f1646838cd0302047c435bb50067306502305731c75f2b0ff2653d990b203cfd54a4d4cd2813196f9550b10a76af7a158c90f2ae164c04422ef212082926ca258be4023100ce6605c42a4ffe133f2706aceeb0516ab72f2b137a093a960b0ec049502c4f432d78ebb3023249ffabd5598702e50a2a0302047c435bb500673065023100aad17ee2a2eb5aec937ab4f52bfd75b0ab4e31141185f4c53a6534ec71f3d9f78a94a629960e59b7abca2a47dcfce09002305a72f177674ea9b0864194a10e4624c3e5945403aab59126ba2e8b75b267da5b1ae3962b49f5835a711011ae0cfa08360302047c435bb5006730650230275c6e75f9e725d1f65cfb275dc6425c92fbb70a775b51f73114374377b5ec2424c86935c743001acb786a3fb92d2bcd023100c1f8d78f31925b20f2c4cc6cd6cd80234380f19b3a32b49f97dbf8b75def0f44c8ca674c470f3be4f3574d55b45e91ce0302047c435bb50067306502310084ee61ce7c0787436e43a9734db5ecd029ec44228030053deed434b4326b0ffef216511cb0998d51a8b555c45f6e0de3023075c4bef66241d458e34036d778370b72b02f342e4c2349946641f7f3b3500b28b773d921bc540ea10910efdd942a8fef0302047c435bb500673065023078406df9abb24d466bdf3a8a4de8dff12ba3ee80d21eab20b8baafaac4d40930cfd814251ccc9497192651df0582fb2b023100ac200570e32edf5b1a83fd253f3fab67b21d2366afb0d7191d9ff8b72d5d68345f77a2b70d60ce9c07203dde00e6e75b0302047c435bb500673065023056dc0fd5b78ad8e3618321c6e98cbd23c8b09f1de9ba48d030e679b2a625a783f7dd8df08511a6d4571f670b406a194d023100a86153d966b73bb8e33b2daaa5f544b2314ba8be1a87ec366f0a3131dbd73580c6b266285ed7bafd45889c5e44559a640302047c435bb500673065023100fd3bfe3dc4b279c9dd95004745fcd8ba855524026307f55f9d0a00616f8a6d1f66871709d85166056ce397919ef0289902305906f8fb760e931c667e2b83a39595f9b79714a4280ce9e4eb7db2667e57fd4075a63e2795926ba70b893061e1b2244f0302047c435bb500663064023022762bf5028604072b2944eab17ffccdd9a38dfadf24cc4eeafcc656ce4864b57c8f5bf22d5d36679eec5f2a49cfc25502304a3b7462515abaae6b5d527ca95b2723201af6453e2971854a5386d857c92003e2af7431e21950bbfd357f4e074feac50302047c435bb500683066023100872ff82b49f44c2e502d5869f58031cb376c589a63adb5e065c0d21ea2507008a8b75b248590bf3b2ba44e66d9f6eccb023100eedcfb80ff9cd26ec6dc7a4e8e8054d66df19ae7c129851ecb7dbe7181860e43ce99ca0b0a5a0b85deda7c771dcc3d500302047c435bb50066306402306e80eb443851d509cc350894140ecd4b05a978b41810b9a05a0616af3c69cd1ffa57507305a418db26ffb76b5f7c1d5602302db4552265bb2a525569855d3f44a249e34e5597ac3bcb7d627f2afb92e46ebdd907a7ec2fa20cbe1b03f2c301893ca30302047c435bb500663064023077faf864b16d5f8c2130f2710828bdd0087d6544f839cd13eb92c56fecb887741844be7c9e5d44df7d8b2609734a26ff02305ffcf3f6a34be48a7657fa05d179c9c75524d1adf6e28de00b3a671f065dafef06818d96ebaf1ac562ea5c9b96ed50c00302047c435bb50067306502301aca1bbf3310b17bdafdd48a7b6e0bb47e4eea2d07510a845919ea00f5e6418d27b7e248735b10d643d42d8e21f28eab023100d6bb3d4552891cf7bcd28db1af0884d5252a49f7fc85be55d86e589329749e74cfef3c67820e11b7816c50a2c3390e110302047c435bb5006630640230440f816f80dcec2f542f0c756cdcb87c79c251afdde498d6529e74d6c546f37d230bbb2a3574d14a5418a06341e6aad402303651e9d28f3155d7f0453ffbca4defa7988425461657d691a3fb13fb3369a3d91b9a34d7d9f64f247cbde58b9490d91e0302047c435bb500673065023100b9448f2d2003e614aeae2cb917196ee0c3fed40d8f7ef685550a745869e11c937dcf654197d6d34fad25afcfde10bfa50230571e34c657fe433941ce3862e9ebbf15311fa3b1bf44f498235d4b318d4343906b2576858bd0cfb0091f7990533166f40302047c435bb50067306502301084cdfc4f02bdc9bddf6c3817acade43e0e456949cc4515955ee6e81bbf644d8232c215dd3b989280685f3aa553e80c023100d6f901f5c7043ebff4e92eb3f6fd98b5649e88c26e43fcb7744e22575814c9c54697f1aab9a58d3fa56d5884479a0dd20302047c435bb500673065023100ca6475d74ca7d3440328c6cd0eb980443acbaae0927f8346fe1723248bfb350c4820ce70d892816cfa20d1e64b9893a902303dc10b7b9efda5a1a54570fff2382135f12d983d7c2b2571c3e13ebe8f21cd25f39ab05a5bdee2f92ec67b89e25921e20302047c435bb500663064023078d73bd8075c144ead56904dfa6453e552d8f38775e26b70616eca96fbeb54a7dbefb91e4f62934e04ca7f13033d99f4023058c8a2cb963add438988a6365391de1d382760d834002248f6f2cd952e392b75e31b732c6d691afe4d4d93ee3da3a2f30302047c435bb500683066023100828a4f4e7ec884aedb23533960a0c7414fc2684c87b20f670442218f2ff451bf40cb8a28595c5a55da2ce46a36a67676023100bac63f323f008364a7c8b4cd83af40299af531dc47d3657487b16507db6aee8cf0b75d04dcec9202389c526492b8e7bd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100edd0e720dd944fb71b2379d207b25933138a056719944368d24f1e8425c7a566325b2df90356a5bc1511a59856d4f4e4023100f5b9374a70d5e2ad9e00fd33038a981fb4d1bfeb32560e79548360d44e62c3ad5c5dbd51b53e73fb4af30a62e5b226770302047c435bb50066306402300477f37a4a7f90454d139de74eb020008405598857a1076f224786f851ef4673d2470b9cd446ae06a2196c42da0440e2023069bc718b69847eb37a6dbb446b71ec68c16b6477788a5b069bedc0b09fc64a8d202d0d50802c48ba5ef86fa62a0ca0410302047c435bb500663064023063b89092bfa83d2554d3f0886cadd8e0b213a15d99410c7412927c2a437e327c33258d8631390aa5512a9bd11eefdae6023002bdb84705f335a27e13983a28ce646a81f31d253563aef9d7e2b5851152b28322851748812ab00b3a620c46339fe5ac0302047c435bb500683066023100ee88002b070ce27156f5edde5e59b8826c893f4499f9e4db6d2e13a7fbe9c808a1cb72d590577c7da779cf5e5a3e5d11023100a933bcb38b973efa5ce40a8782bf82027597c4bb634c1e025cdc934301316941bb0c97faebde591692a6ab78440112e80302047c435bb500683066023100cea795c316fbb155c14f4c2ed897fbf08bcfb31a20da85187210feb68fa43ad4f1488e1afa9d7582cc42ba55299e640f023100a7377e3de328fb8b8b3627eb7cfef7746b1366a9cdb9d013a23128fff779acc357584cc09c03ee9215981d287be622260302047c435bb500673065023006e9bf28d6fdf99032e2d644c2d9edc0c8317231f7a0a2efe7861bde9f906286fb2c8a5578c60d13db45ed7842676f8c023100ca9399354c4c6040df61ecf5e279bc80ed1d4fbd2145adff94e4017f44481c5443d42b126b28c1afcaba0e09fb2b97ea0302047c435bb500683066023100991f04dc98798732b69655806d38cfc2e4843a69b6c27c18a5898f0142a125c5e5d423af509f067f02143868c4ab0522023100e969bd883eed6ccd6c1b23506242a42c0479b521d768e4908b39a4a0333233ec2d35a5963af39299e0dc29729c0306430302047c435bb5006630640230669829ac76f2f9b71a21f83cf9ea225b908e2e7d8bdef5156c5b48e58c7c5d0956ef24f2f918ea06ad9619a400b443da02306fe630e92d128b789c78b33b12d6bc78e70dba698052c3465f0feb2f3abb67115800f00de13bdafb606063ef8dfe3f460302047c435bb5006730650231009323a06db0425448b8867446e75e6b3b5c12192739264b57c6b93eb2682656101455eae1c5a167c705b4bfdadb46c15d02301f551e4c9eba8d37d200c1301db46e947f402b6be65e82ce26d290d9fda9f2d1049a1b1667f20fa1bb211a89a24c1d1e0302047c435bb500683066023100e89c9eb1faefca5ff57fb0b743bc8ad91dcd203128c7da32330856e9180199516f9a8d986fff16b9d9f64f414a287cf2023100c5e8dec628356b4f778684e1cead9adcc895294cb0e32c19c7184be881a3beb570a1173e4a6d94d1bf6c69722efe69670302047c435bb5006830660231009e6e2bae5ca2a71156b0973a8435a3226cf0d2af84f1a5e8e0b3f3ce1889955a1c1a6ef8b306ad306c75666e149b4ad602310085d09e260b538fff8457cf882e2f278a937c6c59695af58d6a77b53874e4124e4569ffeda269274ba24be85c061714c40302047c435bb500673065023100bb8185eb735a8ab08143e16668a89baf8ddd19ada09c47ad8db6ce507b2e508e1e76bd6474ebdfce0614c0276a66b431023035cbf12db44282ba71ea709b97e2c07774484643ecbbfa814883d6c38162ef005f6e3236e299f52978b192d9750da4c80302047c435bb50067306502300d62f44d059a0b0e41f8c3c25bc8266869ff643e3eb9986fae31f7be5e5f15e83f811c988b15221bfcd50fa9c24f1e6f023100d74b4e893de7513ef1137460635c6bc3a5b546b3b90f5fe48c56eca74de1a8fe03e3fa36ee86143951a3b4173baf63ab0302047c435bb50067306502305637a260c17ca8f4ff618772649cabe1c7433a2ac160b0fa73ca69c301a8b9da09b50c29b58660956766085531b8de59023100c856415760ef204933d49f2e917673d6a0a6d069092493b3e3b394c48e2a5058773bc948af983120371f90af9ccffa050302047c435bb5006630640230050f8bf76f9996950e2dc091cd7fbd59004406e2a5b4210bc12262ac18e84109a940dee1c4a9fd03d0d92f9509ee01a802303c8db26a4f3b666f77c4f7ede7bf2c4553e7af9c8f3b8191e28e5a126e616d64e81ff3f5fbd7f61595fa758dd35a6d170302047c435bb500673065023100e7329103888d741ba16ac339299f42c68d5fd0deaecda4adb76d44f2ae98c92ec03451e5f2a5a0c237c6f8b82d75e2d70230657745ea932f2edcc81fc36570c017381e7738ba08c7544cb569c3aa17f804ef065ce2c1adcbdde4789bb4e4f5fa8ad60302047c435bb500673065023100b0bb93962915fd421f2d34c594116ec370d1dd79ebf1a8e1eb7e0963d5d467e03fdc88bbe1c1d13bf354a6f2a81f058302307ff701cb27e28f2a742ebefa0d4174758a4e7a453a7049271a432b2a8a8897b665a47babc786a9a88ef0769e66b9ec830302047c435bb500673065023100d09ac2744cea1d95301f441fb16a0fef90297253e82f53d5f53291ffcb829fcbfa2f7a8874a1f6d580a8c57ce7003a8f0230391fdf9f5de844ff64d687c8b599f3454523b2e748ef157d8c19d1ed9169bac8f94d0d49046e7aa22d5b1d922eafc9a80302047c435bb500663064023030fa199305f8cffda22773cd2ba6965690c6a013abe9d2ac75cd0b137ce401b756172ff3b915b31cbe9edea30f85040002307d39e55e8c2085000693a28e7b4710b9c4c2d7954186abb062e43ec75e47afc2c09b195cd6b5d9bd3aafbe6a81812e1f0302047c435bb500683066023100d6977282604606cf2fa7fb56a041ffa41616641ee5f219d99e868ac09816b97ccc304dccf0e3e6ea58d8ab70e6a419b0023100b0a351d83760acdb9bb1f17cf432c62c042b27e69699095a6baad80f103bc80efc4eccd0b4c67c6a377e525bb853087e0302047c435bb5006630640230503fb47815a1c53c1ce86af2a5e9996998e608f9169cbb23c119feeecfa854b210eb346f1e7e7e5491db7027e04dff4202300fadb8d0ef39d9e1e6121200bc7ce600f872a65a546c1d3384a4cba667c1ef66c827154bdd2e71375a63c05b5d91df850302047c435bb50066306402304a54b8f8c06fcbca32aeb9fd57d0c1dbb406afec6df30f554ccf95ec8ae1f783f7e0f653be2fb61dda939d7b406aa864023014b55e9333c202193e1887f4692fe1ecdd2859710e2ba8b7c61c20b6a6f35cc80b7d977634f0a43e9499629a6ab5687c0302047c435bb500673065023100a0a20b0cb192ef38d94e43795120024b41f3a8b890b8d9576f93ba8cbb4bac753deaec39359c3eb628ab0ebdb096597202301993ab794f21b4c0e9b6127e256d4f50d81ff5b173e9199b87c4f04a86c55294f9469f0f042ee4a33a05f23f7f92ceec0302047c435bb500663064023074bf372d7ce9e6d9d592f066ccf1c1b1142920f14d6b5f76c6b2a22a1d59c2db8f5fa51f8d34d913a94015cd40ad65aa023074e79ce3f1dfc723ee6bf1c79aae698013586744c428587285f8213dde6361058d8afd626106e1fc3a229cad3ccb10d60302047c435bb500683066023100e4ad132c41a26735ad745ff0e514f9671dc429183d1190bff1c40bfcee3d7afaf9cc0d57562ef902db2007c0b69d3f0402310093065f1ccaef701188f34aba681869207679a281d20230a28a225eb84ee2aa5cdc7692a41ebd02e6491f0d251e6bc2b30302047c435bb50066306402300fcd00465329414ac67721700c1d2f99bb420d577bf340ad294c50b037a6095d71a661b4c60c6c8b3d8ab959347b937f02300bf29c39d8f8aa5ead435c7e4169cebe38e63ce438c1f4abe13b57a214be495a798504e6dabb26eff652ce6b2435af170302047c435bb500683066023100ff1626a47aa39793296d06534e8019b78f3c146854184be7f119453d483d35c59e66e3e8d3c405354541bc3a722e9b32023100d3032f4f226fc06f102928ed482c543cddbaa259d2a9edea314e05ce7cdb986894ae2608d19853ef5086861432f52eb80302047c435bb500663064023078b159c58ee8c2b8be4575a103533d3cae14affcc6bb880c3069b98d78be7de198f60a4e1f78616c401372cbc4ec7f2902301e6e4bc106083bef8c742ee1298d36b8b3e6e547442a213b47fda314075161237423974b8971f348608e8d9f03a45af60302047c435bb500683066023100cf9e8a52ea3ddda439055e96923b7285096f9b2e9ee38939a5f228b25de42cfc93667eba334e91cd10b386f25083277d023100d9acce91a86eb8ace2bf0e560a3e400d102d75a2331017767f967e54708df72fd65e981b43e27a71a327c5812a6d39ec0302047c435bb5006630640230249ec3a73789befeac5bfc2a1f71b3e50098dbd556dfa9dd08cb03f103ea9f9d4e9f172d3c342e8296038e283be428c70230684777425275f3eec60ad416123e2c632db413a8c53dda3c3e0279b023d139e41277d9b5ac2c81d843b2a6bb09c11b530302047c435bb500673065023040b18fc199e5d93bb0e0ecd3da030ea5c79bbfee7f6f4a10153e615d6abe1b98002396ebd6dee41f31232eaa91be8dd50231008b2bdc3c82f97856195a9a065cc4593b4cb59f8358fc9bca6eb8d01232ec29ff5187a14ec9f808f138d7d090523e6e610302047c435bb5006630640230256ebe352215fe313dfbff86ab910774f4efe0c871508466726cc9e424ab6f425a3145a18f0b1cf7b67aa6a2040f2cae023079a6cbf6e9492b733d10b33b6e2ffdafe9caf8e704da9337346861dd1fb7fcf37dfacbbb7b8cbf3540d2491c81d1ce150302047c435bb500673065023100cff506723095989102d8618e068b43074173edf129140d49cce389b3a83dd6cde78cff614620042948859c674959394c02304511819e0530d0e9635cb339bd5f83790d336a080e795c2596241a189a5c32e7b124c750249adb8690a11297ff13ab690302047c435bb50066306402303c71b8b6d964398d0d3a0290b1166f1109ece14c0893524a3530862632e28395216281625772f7938a30f4b6de2e1b3702307ea8f7662333aa074de483c4e22ee9eda0322c4428b8ee3f2b14588f6cd426fce5c2f83661ae3d438c793e8b90f2a2c30302047c435bb50067306502303ccacd315e2364c3da3e6e7e809ab975a6bcbf8de9efea3d5d562618e2340cc375a9cb034f5815c6e8d5f4c4de18a50c023100948caf2d20a37bd46137a0576b9802312438db0319557e5cb1c3dd37a69883571b3e3e5158398887d83ad31890d436c20302047c435bb500673065023100eed1d0d4a6f4632ba22a387507ef4f46c611a9573a2a4602d3a87a67df5bcb97deb5d5ecc5ccc8f8ce3b4850aba79b05023028ebe867040582f77783e28f00f265c3b1946523c64e9fa464bc4559d6095dc3f5b055d27e3545ea9a740d860576549a0302047c435bb500663064023009ce6b60197ab98329d9b99bf8a5d21c5c3ddb3d611e8a5ccd4e5829fa64ca0a083ec2ab14a4947287eca88ee59d26af02304a69782a7c01031e67424cb5526cc505615effaa2da7aa5322aa95cd652af952cd412e48db7ced9baa1f07356dd098d50302047c435bb5006730650230090f883ce269fb50c224d6983d3a96aa8f714e7f8644764edf454b5ec32f58bd698b785bd4e86d011f02056252130e86023100d4b2864804490b3a56e44d5b33f45082b07ed94cbde5c26bbba22ea263c471a89aeeed292d98c7241339a51cede3966d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302189d82d18fb778eb17a66bbf4ae79c4445f0e190d33c5a5e627f91cd754d02813c0dbd1017ec275f3883e7586421577023071b21f9df78c4d4bd4ad01e867183c299dddb967d2b92c36af403d1f2415be7486736d3b867d3f9a1d050e49585afa5c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310080a3c10c8877783567c111da407eccf58bdfa4d3875cc73404643878c0be92de8bbec2d9def07b82b79f72016ea4ae4d023100c138af3307a6e5cb7a8795e7008d71524e6e88dc0d5e74949b8cfa81eb2e084c5d178f5535089f8c20d9ca6358d51d4e0302047c435bb50067306502302b59c98307ec8aaeff595460f79c67ebcff60af988da464b06b2747bb4b2146f51e64e1df871b9fc0b6e83b08cac03d302310094ba7e36c880afa25bd1b05cd1e50ce4149f3e05cd4c18c26ca7fe48146d7bc00c8dfe379e924ffb39592dd9261d08920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307f872b33df0d221e67043916b410f59538b2f4ba80d9dc41271e5f49f7a294527c1a463c53cc8115a4d617d66ebf9b6c0230709860bfc4a4c026c25314399d14774f178ae638615f778cc3e9a1550c3a005b099a4af43dc8d66f19837465a8fdf0e20302047c435bb500663064023027403f894ce642c689954d735ab44688663fba5f944d04f8fd20b34c15e48bd8270df9e0c4be4ce706bf04ad36c72dcf02302e25ad659ec2d32e662a694b7110f993756412e0f54b0842d74b50313db1bdd0d5f6d2b049e37a1bd4bacbf5417efad20302047c435bb500673065023100caa61c697cdd3a6514e4d747f0889f01ab712af94f1501146f28d16204a34a1bf7e4a38cd1f39576e9dce28cdccf1170023076572f7b9b5dee870844107c358388a150c6de35f9b98b517f71f36091c2815aa3e1a0c96a39ac25e9a24cac11b201af0302047c435bb500673065023100887626c716ed34c4788662564fd0330d200dd78eca9693ee5e32af913832eb39c880ddd39a2ec3c775466986fde28cb0023058ea41ab6a2ab8e2a9afca734c2930f51fa8f5a25493cc4ffc45559bec08806ab56c748545150211d3f7cd10dfad2ea90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302f05d08050907c55b07c6a27f0d1cb03983938eb65667667518411e181fbf908240581c207564ee2135061270c0698cf02303a74225f13fa805a746b2d3b855ab84a15bbe5f78968c31e44ab0a1748e8fa61aec2029e17f3ac1a424dece6a2ec35bf0302047c435bb500683066023100df4aea442e4570560e089bae0f6069dc2d11ba632a0374cb3b3162fe29b6db2bb08774950c1a419727dc759f1eb69c98023100ae01a613c9a0a0e0f2797e409e0c88fc326d3626783e98426c160e6d7c244f12371bd686221a0337b5ccfdccddcdbbd00302047c435bb500673065023100927201c0b0c92ec939c1872208e9abbf8a4bf95c67fd6bfe16b77b7ba910c6d01d7ed6f0f684897f22dced80d8c21dbf02303043da81576b2c547ac1b3ba83bfb8d5584549d39e15d438b939cc8badd3f9b930d0619a8c3c981e8354fb25b1bcd45a0302047c435bb5006730650230711fc91af7e50bbf3eb92dcc57c7b34640b2214fa30d56efa8f3af9b4a22b8d269775d5151a7c2c11f556502bae813dc023100a4219864b1fa3b619a085c59f2097be248a6ee66c9bc76cd7bee764ec9df6be89a7ece68b9ebca945e36f2997c8bb6070302047c435bb500683066023100ec3476b6bc86aec4dbe43ce97e0c6b9e2bbdfc2278697050ce384f83cee62a0c1790ebe8d37874de688e5f1e366ed8f00231008a51051d8306c5ab37f26b19b8409a97525cfc3ce3056903ffffa219289f4e53fd2de1c33e2867f4c1db7a094a9d7dac0302047c435bb5006830660231009e4ebc51aa0e144bb592fafac28b8f09e7a36106481b7d5a092c77e89355567ed39d03c11dbca30615f7825a1346a3fd023100a81ef6ea6a7a168d1e0254e6c40755c0c6efa8af976ad569fa8f1efdfa89ef09c02eb16275a4123dd65448093c71521a0302047c435bb500683066023100f0a9dc1690c58b06ae7e8151a82114806b35dc56f87a608fb66c5d6c17986e6e79ebd760215e62d95aeecbe5c3c7af9b023100fbe15669b3ad758d11b9946d40cb617a6cbbe53b5512a81e91f079222454b38e39108077a469b9dbb9210f92a60697cc0302047c435bb500673065023004a3ce56f9128f648bf4410045e66fabde74b3ad18a9f72f75543e920598ab34676160a5a5412712ee60125c43fed972023100a5468a8cf0eeda3532baafbf3ec87a503540c9bb3d9d45ac2a547f51b900ed68d438d40f8a698d1579eb2fe48ddba2030302047c435bb500683066023100c97dc35e3796a843200e0914e261018fa331a222a1ef00242d6e09742d9ed3b4462d6b0a3cfd8774924eb5ee28064ae5023100c0a7ffa9914083281139ac1d8b45d2b37f6df151710a60a954ce728b9374c941e7557435eef12a539642ab9e8efc86fb0302047c435bb500683066023100937f1d312fb1bd750a2a8a82fb249b0ba3d0c59a009d99d4af2087667dceba948b0a7f910b62ec7815debbadf63d765b0231008b139b80407ca3f407452703dff6f14cbf2ee4adcf37449cf4aaae3542a423ef52e565c513dca4dbada1817bc89485c60302047c435bb50067306502307d288968c636099ff9bb197ec96e1e5324380adf8746d02ebfb005f076bf66b39f2c4a91eae18cfe1156da577f5f1e8f023100983b7c608995ac3633ac15576a80f69071a8c438ba114d7c93a5ca7b818ed4bbe7202d5c1cce38d1ad05959217ba38d00302047c435bb5006730650231009d5358664575cd38ba9def89bb98c929734f4b59aca51e2ef032b81f08a0685deb14fb4d3f72586096bdc288fbdd78540230783fd6b1dc10cce1da3cab730d633fd16b90a285beb8a87dc941276eac760178f917e4986f7d2bb58f6a3bcd3bf5ed4c0302047c435bb500663064023100cceaf188ccf169b06b5ac4d7ae13bf101a6a427810340ef90a90d4389883e26f923f4ca59d889305920003e7d60e75ae022f4a53df627bffe9136557831c013edf892d309aa1ef37328ae80ec1eb22d8a87a4dee84fbb462db2fb5869cf856ea590302047c435bb50066306402306fa716ff02ab0b4177e21b57dc41fa49786d6dd6b5a38162ab78940e6c47229b804e4b9ca8fe2dea8d9b62f38c492c1a023002ec91c482cbf848e6fe12ddda3e50d1f146d522f573cd2624d5d9b1a757d4d15cdd8740a72d5dbb773f07c818f85d790302047c435bb5006730650230490c74e09cac22ac47477fcaf407d3f1a022d6d55415d02c971ebeac74184cb3f53b22c96751bc1a976475045efd0d02023100afa990af5b6c208df4694f32265b725ce2fc9fbf6ebfc63451c6b621e9aabf70e99c18c6da6cde66d6b571cbb60424610302047c435bb5006730650231008da4ac944dd978edb95732af834f98fcf2378e8bf8f9f833bd171b3204b66cad60f0e610f2c3eaeb9fd0b630dee91db302304c1c48265739b52c8ae4820983ac011a8df8bfac104e44cf852845b5e52a27b7370faefe533d293a692b0e9eb62c97b60302047c435bb500673065023100c50cbf1f79f4c7691e7d2927e12e17d396f7e083431c5b41429c1248b18e02e5e21140063b61cffa8b3be53655bd832c023061c2766bc51827a04321aec468e5006225c2f326b9494d152607e402271f2e5e68a3687ae63d821f920e51bb5bd31a5f0302047c435bb500673065023100a888d8bdf626afad8c9980e9b41eb18a09eb9f37bdff38b0c93c2250975a689771495d87f51944899f0e6f33d1f965c60230728763213ac2d5558116f7f52cb952137585745fb28e8685165b855b8e908d8b5614530118917c4764d4978bdc19b57d0302047c435bb500683066023100b0c7dd47aea5a95c8d8f2aace21bdd110616ef83509102d8f03628c37698741aedb8c66409927dadb46571f4f44ed0ae023100afdf905418c639c3481aa70044470d9bb6ed85aef0bf8037bcfc0ed6d5477da54dcef9946a5af75d5736873fe09519620302047c435bb500673065023100f926923cfebeed94542733cd62ebc063596d83bf766083ab33a2a8271b49533f751978d4931846a943cdde4fa88dcb5b02306099c1792e90fe7155d3eaafb8c2442c50306f49ffd4680242118e9f11efac317544f17f4479bd392db1c55672d2d86b0302047c435bb50067306502300bf0f715d4b07382b6981968ce27da238d2783703c095a718021f76e6c234822e39e261b15d8468edcb4a5219d63ebfe023100ab7f5d1f894d3ccb19cfa70d30b4f9ac51f6d3aea0ec51737a0e510afa2774ee95284d181ef69de6be0ece5592d080c80302047c435bb500673065023039151785ad629e1ba9c9e2471ee2fb6572ff68ed910e0b37bb9fb0ceba71f29c870f3de09d285492c8216bb6cd7e1a4f023100d5ddb416045561b567528c3731ab9de524d6f81ad5ed6aa4ce3edfb0ad8a8832dc8f8f55fd5673557d87c52795bde4520302047c435bb50067306502301d9e71bbca988df7c50759aff3e0c1eddf15fe508c811d4d7efc121902a111a8ceab72794ea9ad689c0fda915ce0a60b023100cbff16d07b372fa0072a1ed31622256ceb310d0fa8d344c22c7165616fc150725ee051ec972814aaec91cac485b6aba30302047c435bb500673065023100a5c2016dc63390bb071fd512dc74c77204954737aa0fe631526455376ec2e6e069a9e790c0a70138b22f3c15f7b7b4a4023047cae1fc7c0f75d163fae32120319c1f300c59f83aac5feea710147df3f656b48862da8933597f27c79c726860eb219e0302047c435bb500673065023001661866ce3994ea711d9e17f5d13a69b167e6cbb0ff627e9cdd3d16c5d94e74839641da8e6e8561a80c0b32b2f5705f023100aae2023f0811e5618bf59dc4df8beceb76893836ade276838a95bf7d5d43a69a749c31c9f076c5ed09626c1e9c2c2fec0302047c435bb50066306402304870febec8feba97d7662d494a6d20ae864d0d12ba67d071b23c1543ab3dfa3e8df45d447256d03660eb83fca1ad65e1023041c2c4087a5ae7d5e3d90cdd38c4726408661be37508d4efa3271e78642b1a4fac09b690418ea2d911199474c5c520450302047c435bb500673065023100c80c15f629977cf6dda56c272c3344d7bdc2c5a40b0ca6113976332a8a511573551b0a8f98d02c800585a881ab9794c3023074d82cd58ea49830109562fd1f76463dab8269fd344309895ab2f9060bf807d22117129fafdb946cebddb2b9cd13e6a20302047c435bb50067306502310097d8d55e7f752fbbdc98ab12dacc5368a2417fce804155c9bae7277237036037bc8a533187b3f3a51e2d70324b54348602305b5de3093529fd20d025c27c9f178f099a03544c5130415946970c982757cba4f444faf0c6d1b4d895b3c216049ded5d0302047c435bb500673065023100c9d4feffa7927a3ebd48f80a61998ec988d360bb64e9a509dee30d01800fc09003976aad60d8a00c43b56fac9eb83c8902305580d974183903ba2b16825eebdbb0428d82adf4fe0aecdae2118e59913f9990aadf098f55d6921a18218029e1a0537b0302047c435bb500663064023011872319cb184bccd86a03a48ed31e9897f5edef755da6f33aae566ef1fb974bb9c6dd848c3836896efd17d7bcd38c3102302ca14ae3407e36c9b9887e744d3eb6a5a5b036f0efea51462a91d6c524166f8c2c4bfb76c55c8d700f20961f2d8b18330302047c435bb50066306402306724c16b87b4b96ff81a5a6e03bd050aefea70a979e327f80d15d1ccc123b5654f089fb34d27c634c150a580cdce6f1b0230264cc671c0818fbc88d3aa667f3c3870d6637c1cbafa9a64f14b9282fc2c1141726a4cb0e59a8cce64fb007973d3d3c50302047c435bb500663064023075e32dc217fc305ea17cfd6401da70baa80d74c0b16a216cc7193b5c7a5c3f216656ca0b8d0c1359f53fe0e0715a71c90230074fbc2e6f9f1516e5514f04fda5d33da2d47bef700bb16d83fd3c61553cd649f7fd558c498fab8ed3e6903b74ae6c370302047c435bb50067306502310088b890f9506f9e7ef396f23032c869659cefbf4ca6a0a61ac0ab0e1a31612f30d5e2d9f1783659640231dba818a5d77a02302f00074f0d918ab8ef058e7e8c144ccc39e838bf4d9f4ebd7098d4eee001e57c8cd67c481042e63e0e3f221faf013b610302047c435bb5006730650231008193de893812c2ab8f3603602d849743569c75d6802837a197e414162f71da44ac7d8425eae4d2f5cbd7eff768927fa7023019094cbee257a0bcef7507341b24936925e83e8060a21b2a6ac64ea7f2a6b2b0179e57efa84fda6ee180112a06b04b050302047c435bb500673065023100b9216a54d6537a7cd10a68d5dc18f480698feab2287bd41a6f1297d82ee7b060160013492d229fca37cacbc28fe1cf3f02306f7fbb45f269b9afbc2178f02b7db9a05e3b7a6bdc633b233fe53b8de7dd7d3247f1ac71ead3d6323654d9d69ba459c30302047c435bb500673065023100d7701fdd0c52451acf3e6caa0667575a3886a7a65bc8991aca128bcc55b29b1351f9141ca722fca5993dbb881dfdc54f0230565f598dec005baea242e972f538494729d99764c0295d035c87372d809ec85361e2afa1474995c521088fb888f048a10302047c435bb500673065023100a7e5cb6de21a3e3e7dc8c72c0c2f1c89edbe5196451f1c81861145d3f83a6b9bb5afd240c7180dc409e089775d4c356d023025e346316969564a33866da8425f0229bc7ed1cce515555022a536d56cafceb62a803a87149caa724aac455181c71a740302047c435bb50066306402302d7f5e5b03c99001c036bb1bc760b4a6035dddc924532f36f869d5c5497464ffb4d0bbc362c73266b87e1a8ceef21e4a0230190a509c1761390a2884906fe166c33fcdb005b8223aee164313e11c2de6781da79205a4f4ffdc87e1fc80c564e165370302047c435bb500663064023004c43b038b0b195225b25286d32d43e86144408e7037d1be7e404c4102a1bd14555570f2582f6b5d6e963cdf806c297602305a923ee67af4663271fc92d8a2bb049d5e399e036344eb98331efc3307455b8b44491d8e9bc1a56f9e7f1a687fa4dd640302047c435bb50068306602310090f121d26ab09e72d57a4aa86d8b23ef652dbacf3ff5fbfc015d2063db09ae98463f803342ab4bc306b16eb18797a890023100b9333036c2a18cd3d0419699f9a8b54802741e182858243e0c32a35d21756a361bf07418ddaded6d6bd1d40aab97b37d0302047c435bb50067306502304834287afe243d88170d240dca65a09672f760ab820f5bc01808f152b48190d75a0c8a3be83dfbe678893f09387b219d023100aadc16b59be09600cbdc0f76b98855b3e75e1130bfe970a0b99fc166562296dd9e873e4663d42873e6f21398760d7e940302047c435bb500673065023100ba2f08f26dd2d9f9dc9900f6b702d4208be4d92b279c3a086c475e97cbdfa9f0f99ef7e336c2020a45e0926aa448c8320230159d3d6f5f3f8acab30c233997963e733f108cec3917f1e2e409ce903bbfd8eedff69127f0bc8f1d704362993e67bcb30302047c435bb500683066023100cbff2ac6d83d5b105bde22295cf421f6dc6e64f7428b6be2e680ac375f369983d48e5151d3874ea9a77607601233f461023100ae111fd61b070996d891736156fe5ba1607671e23979b4bd7178addd9dd610f41ddfd3f69d46658a4d8f841fa4224e090302047c435bb500673065023053a7d93fee43030ad07d654096d4be392380a7d211add94569849e9c8e516addb65392da764eff8b1a9d2270eab3acf302310088a29b694234382c4983a3087f0b7b79cc86a9aa28a5307b8c549496681fe15c8970b5fe86b4ae4afd359bddd9dc9b500302047c435bb50066306402302701c11cc510d3fd8138a5d506c87877afffb718c30fe0c95bb4e700c471b8666b6d2f1f0ca9dfdb23132c99addeaca602305aea4ca5ef331da808a9df82ebe864b2d6e245fa12df1f3b664aaf68a7e63adcfd485f27ff2cb9bab633ee9567e13a000302047c435bb500683066023100e5775e99cd8939fc0769a6bbe182ebe93fafdeba8ad15ff1f7c509089ce00d3a9e90630acbcc3d11a5adef24ddef4093023100a33c7dee9a4726df9162dbbc40c9a69b06c1980e171e4213c5b97a1385f3ef1cc9efe22c0162b83940aabce1094a3bb40302047c435bb5006630640230391a216e28bfe578b8319fc4b73895ab188309bad78cf0c4e995f433cc0938d3e99c66c8fbf4ef2f1a9c03b3bb457ad702304ad1394a9b6f0c3469e60f3f5d05f8edb8911509cd7fa776f07afa4c9c300e528b9adfd5a462b89dac879d7d0ca3ac7e0302047c435bb50067306502307ccec2e53651da9b52d2f8407cc228cad64cf630d9a5c448cacc5d4a7ab1266f17b6b22a134a5c2a499845d5b5b10a08023100dc4a8d794e0a5a4376eaa5ed253283fc5cdc5cc2da3eee81b670f5945ae46280bdca29bf2ad9852d03f085f1df368b6a0302047c435bb500683066023100a2a83f8e82cd6712274b73b98ed4bf7f2ccc43ba2e9c201e683d3e933f2af7a0aa0b67ba76b6858d4de0b10f0d395718023100b4ad1eafc3061d71da99e0310f1ce3857225d2c042c9da9b264539116215efb777b1e316df7d336274b347e5a4e094b50302047c435bb5006830660231009718e541ad12e70aca3a51d7ab1ad4fcd7a43bbed51d0af3ae3d3b2e3c1f6afc4e33d32ae39b82b2aa23d89b9d1ffb3e0231009236201f70b0caa2345ff42ea00d08d02ee65a83b0737cfd042bbc29eb8cc6e69b9bd91b933a1927e69fa48fa0cdb2110302047c435bb5006730650230560d70253b9cf1d8fb4cdfd86fd5158fbfde7bec0459d385fee6778ddabd8250474d02fe7fb98369e944690b09686861023100c604910835a5ba1ff76d4c3b352e19a4c312992d84b3b6260198ba9551c32cdfdddb52ca96685e49b7a4f4a03c8ab7fd0302047c435bb50066306402303451d494daceeda31e05ddd5b7ee80e7719f0ffb8c1833312618d31f21bf63959c3806fd2d124b4ad6b589656fde2e4b02305b6b0edf7df27963de1570aa78d815b5b854116bccc249368c819423959bd6cfbd5464e0e9628812a9793627309d75a80302047c435bb50067306502306dff36a0aebd34c763c7ce5714ab0b71f365c5785177e0307208248342f2472a9175040d7646887a21daaf8445e23f0d023100d6c11afbc11026449f7b380689de3ed520253896d11357ccf29eb5edebbd5f3a05cb7ebfe48ba218fa7cec984ee1cab50302047c435bb500683066023100d0ca88c090abcb0491789f2e7586db68f9c10f6361eb0f393479ed89e0a742cb430a1f82901e7a40e56ae23a5afe75f60231008f0fbf8fe8947f2674f6d0e2730bde2e66aa3909712e56f5d0e8b462d9a7135ddfbbd2f6404971910039d34818fc727b0302047c435bb50067306502303fb3dcf1f6f68ea124bf629ab37595d48a6da35d7cc2cd1f99471d59574653271939f63631e198dba3063fbbb5886730023100c3698576c742015854b8c5d3bc5248f435e0320499352ffe5568788bcd41d585573032e112d47d9be76b168af9e743a60302047c435bb500673065023100ec79c667bd9bd48431b9accd3bcdf33de1c6661b697f0b3b2faca5f999a5c9459538e0cbf5b8819b389a95d30c0ba9ef023013c22661dce12bc454446bc989aa3d5f106119a2ce3111e286872c9c9657cbcb284fdb41dedc0d24bc1971d64bc700410302047c435bb500673065023015eb9f75d3b8a3b6b5ea3d3b4d16fadce8180f6fac9e9f58f651deb07153a7b6a806ea9f9b7a361643bf33aaf34ecb11023100c092675e821faa31b7bfb62e28a4c4192920b4e1acd7b09cd81ba7746731a9b7df4473c9fada6379fc9963647778ecb30302047c435bb50068306602310097810e889ba9eb2712a0d32707f4a93ba13d06c333f054389d09be14bd8118bb2d3395f55078cb783dd39d5be8e4b93c023100d87df0f7a11c7f512ce38c9dc28e1fa9efe549e7e37165d98ae3e6738a4aacfd430d80972112f342d5dc1f5819898da20302047c435bb5006730650230474a61efb8d1b68db00974ee19f02c918f998ba9e1a2ab2911726accac119a9a0c5ec9e58b56112807f36a1143311673023100a470c8e41f1b7a4412e8bc62b3a6f6214147062b692918d2bf7e73b09d0d9c0dffeb428b1c30e8461699bbd48f4f024a0302047c435bb500673065023100ea5b88b7f8509516112936f9ed3ea6015260c24f673975aa267fb9dbcfd48014ec17dd300f7fd4843e846440910f7058023045d1b231ec2e2210bf7d4f119f8ce831dd48bfebdefd8e8ce60530eb34010be06777cc124fef8428fcab34fa4e3ad4f60302047c435bb500673065023067c71c36d88a8aa13e67735f6a78353d2ff7c87228f563a83299cd26c54e882e45005734dc28426c159c2b557686cb99023100ffd6ba520a6a239923453b10be12911f93ce70d337506426a38b6248f8fcb8ff2bbd436f4a966d42b8900e2b3df649ba0302047c435bb500673065023100a6a403904e3b019faadc7b7e2df5d69dffb2f9c70e457ed6da0b82a7de870ac5d48d6435fadfb73347a26c61e579b8d302304afa950b418d67f9504fd204efb395a08e7647ec963e1932d7d9a716300030c683b11e898d6f54f56dfa15d4f72b43fa0302047c435bb5006630640230492edb9503a729b4eadb00abdd9503edcfaa6edd1a161ce715889db50b5b204a3269774a48116b29198ae9fd5126d03802305882361c5c8c6e1a11afeb2a44680a7cf7e851eb2260aec2b77779f8c6aefe92fc2d61dffc1ac780db2eba44fd8cab030302047c435bb50067306502307f8be8b7798fce1f98de2294b286d95600a86f683801b1fe3e12fc3a182260b7689a1bf54d928b505e15ae11bc7af576023100be0857c85b6ab9d8dd9acd0d128eb627014e7bdd6521ae6db3d4c1b244708a99e9fd39b77ea700969a9c605bb8c6abca0302047c435bb500673065023019b5d9daae4f70dba042194e6b1e1033c52044e143d23f5d68e733b35938ea173907a6561fe4535507b888e33fd7fdd80231009958f695c06bb4914c10ff9594609f82345fe0b2a848d0fae418b29f0659d296d82a6210c6e8b8e634259d170e5be1830302047c435bb500663064023043b5d249ac31861ca6ac63e6211a3c2866bed66531a8f0f5ec065039494ae3b278d8b6cda48efb5632a2344b9027e47002301f5ab78d873ea73923a2c40728b577a99c037d0f51da7804109e656c099be844f0fcc440e0df5a11703829941203e7cd0302047c435bb500683066023100d4d2b2c2f0d060f4a452cb7decf515cb8830d06d327bff1cf743f4dca24145d8e257afdd7bd91c2b5fa873fdaa6ee201023100e3b582c2c581ed9917295caf5487948713de66e9a56f0321cd027298102498940cf0b28dba26a8489e6fc6c86fdcda680302047c435bb50066306402300a7d0d7ce430298fdc4b50f6382811ca1af2c55ddc8804a5be72542841cbb7d8945236dad14d09feb950825770d2c8c402307e6ef996ba780990c062907205c91a6cfc5b3650069486266d923d6c9740c2c7444c050796ee054866baac9b4d243b8d0302047c435bb500663064023054e589ab7abd498c18441ae9878f3e1923d642685325daebcce27804c1c30fd112e37fc8c9712e763f5e5e958e7f177802306c405e73f62b67eecb8024f86513d6b47d225cdb1806627fce251e1aae3ca02c3de21172ec3843b2f775c40ef627df380302047c435bb50067306502301c3c93e941fb0240bf21a5ab06e1ddf3afd812c67f868df965c8b1f96dcf5c297f5a8c27510657ed047ea7ae50b3b565023100fe5cecd446bfd981170b8010e7fa0607bf4fcc6906e684a8b1615cbb6144fa521ec4bc14e1f17e386d7bd22c795a672c0302047c435bb50066306402307f078a839ef580d12611695442e51a436bd97e54d3a4a94fe8e4476c6274aac2c786ff37237a3db0f72a2cd69bbd8c3902300289c3dc47ecee2a8e8ec4b2c339d0276261a228ccd8270488c82986cbb2f9a3813b7fd044331d37a3cd0d9c6d2351790302047c435bb500673065023070ed19521ec86de2b6025128fb17eafd6d5fdc9324f74d59a71c982c87ec3e5f41ac406141a0c1aa8778414abc8585e5023100a37dec37eee1d008fa8e4e8295069ee785c6762f547453eb781128a2600ef855040ecd8395b2264154b09b807a31a1290302047c435bb500673065023032ed82e5c03370743bd4609024775ef6e838984e2bf4b3abdc193fa313ed34fcdb8bac9cc71efdb309ddedfad026aef6023100b18a60638b203a74f21af89f1b80d75799ac3e84f7be400db62ad4059007ff79faa49f8fbc9d2ccdf17b26e7aa06db520302047c435bb50067306502301f2622115ea0f564fcba6dea8b32fc25009e854e088edeca8bf5b5d69009136532b0c5ef5ed1beb300077584c0a597d6023100da88d5cb3d246bffc1cb7bbd84a3e0df7d24e40d96704ecba68724117a8ff57de42048c87b9346ce4efa0c403d6e65810302047c435bb50066306402304add83eb887e0a2d7a440ad968b5802f6e91d909d0f93e890fe3a48b45a8847f0271ca4d88489c416868dd30e47de8f402303bb1ce650b4498cb06fd0cc4945d21ee90229099c5b6002630327cd3c7049c267956b080c007250a61fcb2a4cd3448df0302047c435bb500673065023100f081c1dc0eb4aa017734b5146da41c9acf44cc2059d911365a9e012071a8a2e53932ed40456e0b88cc75951618c69101023010a19f85256518d168f9198d4b8b0a3f0d7600abded021b4eacc21c47eb6a7ed3a74ba0817b32807bb611aa43521c2ea0302047c435bb500683066023100ab32d818945343a2a17025094f1d8736e327b2ccd9d0dea7fef5ad8d2dc628dad64057fc6236a9dfe083eff93a25c62b023100be7f95fd7d8066b1f88e808ce0fdb395a1329d215fbdae1983eaedbdb8a0054cb76c84b786d441bd76b9bda1dcce57c60302047c435bb500673065023100f9638ebede3ae754b449d5ce3c6f1337c929ff7a11f4f3dabc7eedfd027af4f3648779bbad0cf47d97a435bf3c5a27da02301c917b4b5de9bc8356a58e4536ec842cd5fa6ea17462a85a8d293327ec146c90cb29d792e0cbe877e1ab1232c4f6aaec0302047c435bb500683066023100f8b1758831b30b6505e5b83cd86b9c0cdb3ab5c6180729d1f3434e1765e085637458db3590f8f85e5a507b583495ad5c023100ab17a89ef0505540ff0fc2102002758958921a67522629e7942a5661ba3eb49a86fc2ef8d63e23452d9e0db742aed60b0302047c435bb50067306502306db89073862a44280c9fb0de6bf805dcddd125cd410d12224742c7a62e8db545770058e8a3337d8a0f8a2e8bac8c04520231008b44bcb3e4351dbc0721fc3d1111b30eab1e34b87876a64d38a6d9bc6bcb656eca3d8e477683922c83eea1074841da3a0302047c435bb5006630640230512581cfeb33faae7d1d92ae97ab2388df60aac0172fc59295cf67fedcbc4b078ea5d39621bc31ce3e9e31db09dfc1ef02304b0545d86828ed404ce92192aeb1ce8d1f1a20c0f4e1a57313023ea320d1e3f5a1011fe98f2cbc23d7c83df168137d940302047c435bb500683066023100c4dee563621095687e103ed0f86ab8dd64acd54ce7a2c7bff163f5a467b5ec4ad69c409922ca5ea87399dab0d967a9b2023100dea753067840cbec17b3b61ebcd1ec3b7a48cf88b82645a16c311e1cc2cb88bdf4cce43e63786e42d93a3d4c9aef60d60302047c435bb500683066023100d9167299f17b9c037e3cfdadfdc49ebf12dcd55b268fe47bb15246b3c74a7bc6be4e316d4e97f787d5dd788f2a99ca42023100c1645fc6e1f944b262fe48b8ecdfad0a82807571d1399162c06d4ba0fde26d241e517b800319cf7e2b03fafdd17d48060302047c435bb500683066023100c3f805048ad7e228fccc11fe5302248870ae35711aceb7570da7f6d1969b9b2bc73f60c73e4f4403f5623fbcafde1f01023100f65d2fe32abb64fc4c4b85ad5e04ce8114ba19ecaa1099ba09080bdc1b5011dacb72cc2cbeb1e713dc233d9fa7e581800302047c435bb500683066023100e0ce450d88d70793886c4681ac335ab326c7871aece74eb4556144afb105f98ad62defefa30e60765b4d301fc25022b7023100a28b077dc7353c554dcc39094103c07c88b977df2116cbd7bae187d8fe49f8047606cff4b1fa540c92d18d19940dfa560302047c435bb500663064023061482e255ba273fb5cc4cc0cdb1b6b76fb3455705d449afd653e2d4c9d729f38f11fab63d845f50ec8a2e16c107e1c9702307a48b01b9b5b53b2c5172fbb9cccb35fbcd2393ea7436e3100d40f4daf1b7ca537963c8277e9baef93694b270b51ede80302047c435bb500673065023100b152aec0bed6e20fc0c8691d5ff9818cb2ab06aecc6711d4246f0f16d86a6829bd777393d0da19562d5a1c9c0dc9b5210230625fb763880888d4e4287abbc17163b1ee2ca8586e435959446c11ed098ce723ae06b429bd8abec11bd36d5bae0728e20302047c435bb500663064023039cb098519f354621542d64d9a5f927383dbc4ad054b3161243a222fa1afc3f9392ecd187b1856d71e00c90c80fd7f0f02305372cc2754414c97cf0d0e64fce61984da03a6350b3d8b5284d1620c2797d7f13d1757ab844c435eb5a33adf3156573b0302047c435bb500673065023002be1eea73c60bc04f58231113372c0dd52d072fc8782356cc2eb4d2fcb35a5501bd88d43145a400f6e6c15f7b0464e2023100f4f11172c11d46f8affea9fc6e49230c5e723e320abf2417f4692472d7fd5bbd45595d905faffd92e1976a8e2f49fd470302047c435bb50066306402300de040920f3c7373b9b19e6fc7e6c03000b7adfbae28f09f2fea56288aff47e019fb2d49738c3013c39c32c2b3e34c130230743477b3ba743a8bc536fe8ccefe755ca43e5da8ac57c6d9b651decddb755d5e0f6893f62fcef34949db3288efef0f0c0302047c435bb5006830660231009d6230c540d56bc9e090f39632fbf7917d8c64b8edb25e8d9ffd7c19539b2b93d9b8d923736fa32a09cdb37f79aa54c402310089d831e3f78304b7a919a155bfa2258f85072d311b5740b5b37206d6ff017ee5ba2f4a32f877fb644412a223c959f3e70302047c435bb50066306402306c28cf3eb7f92092b8d20d4690b99a88fc252d633b185686e51f69778c888e3923883360e8086f62d16ef18d95f108520230324c69c04fa307610ef21cd7ac659bce7977019911129b5ca27d7b5ed3bfe05d6996991587f8b38ecec3bdba686aa9650302047c435bb500683066023100d5590061176ffd517bfc535c97cab0e5a62c0ab2d03acacd07f24aaad818786f8b84acf44aacb37cfc1d8ffd19823368023100f3afac6b18f5a592d14183647170c2d7aa0c8ff6aa9a2e63f952c14ffefd1e0a5094f5a8e63e10ff4d0179905508c0e90302047c435bb500683066023100a5828f0561a3b0bf6a580f3961bcc34ae1021193ed749e50db1cd6fdd212a580c0a1f6a64413061306786a4c0f65269d0231009e53ea0cf377e3050c4af6abf387f80b7e98ba8d8d8652dce4a43c776a3c29864b7619d0fab2cc049fc0fb34c89608430302047c435bb500683066023100f878da8b1a0fe82bdc6d07cb6ec4d892eb8621b31c6872e3b34add4b6d577746c76cb40b01333455668e035363cdc9ad0231008330c41ab518774b6bf7c346cc3d2878bcb78872d5883708362461a4d050fda6c61d6de6a12f8a3bae92cef5cf514cbd0302047c435bb50066306402301406aef770802d6b9c2dc0cf38ce2607870a8430e5c074db62bafe20a1ef1dca51d82aca86dfda47a366a3ba02c5859402307163895e837c4ee3271e0016a05c27da15b1c9e682397f89109a5c39e31d41a14e02d97cced457c0301aee6e10e7d9ca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cacc08f79883ca5c4b821083a7084762d9a662b9cf5c39282acb438b1ca95ecc431933eacb91424a6e5c5e152ab451f2023013c47ceb3e5a6e99affab60d4ce5e1b1f24b92431f247035add1586c29a3de55412c36abbba6199c3473e9aeda45d5690302047c435bb500673065023100eb800734f61127b8cf4dd322e528eb886a1d2333e00e3c3577dba064aadd2d11a7776d919854b90985d6f4c375051d8a02307e98fa62cfbec1f97b4b05d72fa4f2feb28bd6669a3732cc45c05974f75af4cb9e2ff69be552a5da2104d85ee36cb0130302047c435bb500673065023100de323bb74713506dc45126ecf75533bbe839cb2181dae258ab185b874ec65493aeacf37494eef2164c898542f32eca26023045cd9fa1bbb92313beba4d88fb7eac68c68a38390e726e10e52ef99e183a201d5e155df4cdcc08aa7e81bc3fc7eb77ea0302047c435bb500673065023100f4251f75970fe193316494a33c972e512e14c574e9119c65d008c36ee7ecffa6185e95a64123e51d8f3df75d3c0e74a4023055686bac0a1017da3371d6e10d557d6dd04a17e03e1f90a24ddb061bf07becc245bc857f3aaec779db30a768fe0683390302047c435bb500673065023012fb3a7ebdd8393e38d5b70ba258492bd7453d2ea802c856f79ab24568c3d08eaab42b99b407ce8fb060feddb1d1279d023100d66039357421cae1d3e226331561b5222d8c16e859f8edfe366e86e9efe1bb51106a31a7dea67233d10ae2242fe9802a0302047c435bb50067306502306b8317f989c8f3ff56e19ce1ab441823f796e19a176b6b2b989d5643983fc63b573d36e9a0ecd1a5f7e3e0b33b7904ea023100ea7723c63159f50cd7ffb07b819029989557ef7acc04b94bedb5927371828db8c833bd13798d8b4228a7ddf5eb9098620302047c435bb500673065023100a0a32e5133266ffc1957080ff1254d4c9d099170c826bf4b330fc9642854a83c863ff028230d7627bb64f9a84806253102302f3ef76a501d1fbe5c96b3bc463dd63fa3245763ecbc55ed1f81a4eb8a46cec4d0376b1906670340d497fbc7bec84cd00302047c435bb5006830660231008d0eef98038eea19e2e3a4aeb2f045b0075ef149acc35b9f0e8c1a2160073e35870485e541a8cbaf93b8881a48395eb5023100c44ab4f16775f5c8e26f5a863ae34e06d795c59339db0e09d3a60fd62a7d3843474d911f21658ef7f1267f04fe2568af0302047c435bb50066306402304a386df68c370bd3f598bc0e3884731bf023d42990a29d6861ae938b9964c57220a627744995e81b1adf1c33f0bc10130230023537a46b8edcf0d6ccdf9e17b1702181478ecb62bd782578125be214a54a496ee316163d165aae4a5ada04796690260302047c435bb500673065023048a144b19774395653e4d3a05569638bcfef71de4357251a9c0a0698a025f84eb54d200d96cfb472febdef9386d126d3023100fae6f5711d5a44e285e9dc6fe706eca7c9b78e60b9a2c320c8b7c579dda6e770e2a48a9382d9eb9bdb665ffa06de70730302047c435bb500663064023002382a0c38a6b03a8225495358398dc4857caa36532370bf640ebbebb541bf1356b942ed691d1c7876f7da780d3f2ea302302837c5ace0c86976f8ce2f710630ef46d8bbce465de8ba83331073b2b13ef78c2603f779006b42780f2b94f1ce70b0720302047c435bb50067306502302dc1b8e4a5b38681f54bdbf145707380fa93c8047037417a6d40b73950b7c2aa4820b9ac2f8a925c2e2179a892782994023100d098e126e690edd3e4980d9ae625ef15cecb49392432bc68f0dd1cc4c9158b35b73916447c910aaccf83e9c9625735440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bf141dcee8ec962e11adc86730c297d5e02fa547673f92a518d3dd78bee7a300ad29e2de41ab4d8922917eb9401cb27e023100a84a4610e34fadb41a9f62ac6f77ff39e5ec3a8f47781263ba93872f1adb0eff90773d597d809ba4ed5c0ec7b0a6c5d90302047c435bb500673065023000d5fafb4e0dafaa95617a4dc507c8accf5c26f4d4af75bf0438f900304c20eaf4a6a23ed198348f3ecde49a81edb392023100933c822303a52fdc373465090bf6c6bdb36036ddeb08bbdaa97191751ee93df6903155af528e7094349654bdb33cb21d0302047c435bb500673065023100e9e704c76758e8ce61c38d631de4dab42b681dd2a9c475611c86c67e7714faec3ec4db83c0b0a4ecbe6b8a23f01aa69e023079ca6c79fca61539c12e0388aeac7787c7231e4d47577cecb16ad5bc0ce70aa6bb03113c2c1714e981d5c7deb22f7a6a0302047c435bb500683066023100d83688f669d26f1240d1712aa436d20dab16581deebf5c30161d9d4f2d1d60e41ecedeab1c39aabb0b72d32f811809b6023100eb885f207745bc82402b77d330c8a2b41a7fc230c7cbb437e989ec54a1f33ae6340c310516f0ffdc8715b10cc6baf11f0302047c435bb500673065023100e971963aea1e43922a5800e0a7a8c69d9d2b729c5a3b3b4f5ce263f14034f4cca3cefbf718a7822f7957d6ae4074d88002300af48f21b547dd4827bb4d741970802e550552a07c4aa9fbb1eb2acca2d09d3b12280f021ac07200869d1b2e759ada6f0302047c435bb50066306402303218e8e875da45e6a2067dbda09142966aa65438c65b70d0e86ebea1bf20cf582f8943efc188b01c819151579728680602306cd906bd3be38c7cdcbbe2c3777f81df8369aabf4a399a4ab636b221bd50e71ef4317c8357a4f43bf4a36dc25344a4300302047c435bb500683066023100865ada0673328200eba5cfdb81547450f276507448eb6a9894f5a8b60894a2d602c6ed7a46bb2fa654b6906552a5fc24023100bf52a699174e142d4741a9d4a269a41c110178f3ac6d2d284bfbcec3c0dc927678dc596a1f0f37dd74d4c5c37444db890302047c435bb500673065023053f05566bee2910971258f3274dd2b101c46d9b4079d545bba01634504bbe6f852d7ca06013d3d0c5648520c1ac57427023100883b9724abc6837bf697cb49f0e351e66302c30462f5d7d4b92d3b93d63fb041694ce38f4c4edb15db4cbe82850d5a3f0302047c435bb5006730650231009debdc56a3c9c45542f7cb292d02f971edc76e96d09d83fad0ce83d297aff78baff73fb69e3d5d078f3b6058c868021002305c2f1aaae64224b53ed3e0a481555a270f4b815e9d982fc1a4fb49e1eafda58f88c03580cee641fdb1044108aa082b840302047c435bb500673065023100b9c03133373f2badfe2e1d9473c92442110df0f260a97d0b78b7d327e9fb951b82ba64083489fc8cca1a6e1f12b629970230268a78b651d2ea2b2d274c3a2cd84def3c888285453cec850747e10b3c200b18a3903ff509ea65c1ec1a81d403dcc24e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230461fbf5608e203e66424d1ddbe5d9a797364309f882d9de1b5340a0ca95d7637286a134762305411a1707135807f98e3023063f5d2d86df2e322d709df29bad2e52d268a3db53024d5a95db6a3727400151f3aa31c3bb4495d1aa3805bbfb69258410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230427911c534cc47de1b44bbdd6cfb9256b4198c6c1f755f68a53e6e87c33ec4bad8198eec0d02c61d5bdc281c408f6c0f023100af45ee0dbd5cf83fa66744a298caf9ade0cdca9af332a74639befbc096e97587469723e553cc9774c3a7de60703eabd10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d30aa8ce3d346fbd541013c33b5663c5374aca9bcd2cfbac63a486fe70b059ed78908fe56ed78ed6469ead9f1b2ab58d023100ce83202d5b224364767a45646e05fcd6e9f3160d2008434e15f9a1bda8b94f2ec2478a45efaed57f5f785312f03ea03b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305dd575247fe30f7944bc9841368e9416fcb19aefb525ea449256e0569a1b423416f84098f585fe30af5569009beb524d023030d122f8c1ee6744216111419e5eb03ad5e2691b34830300f52edce6cb9a64f75cb8a2746f1f5f0ad92323a337cc40af0302047c435bb500683066023100b05a1213e2e772e3d363fd94cd150f8a75d860c30641241c7ed3f432eb1890c5e45bedf0e9658f84b43ed1ab5dd808160231008a55cfeb3598b80df109525b63f7d7945c483143b828d667238b5ce065b0ea2032b628c3733cd3b7a42c0341d3fab47e0302047c435bb5006730650230583ea68b798831db0a1b0495f6c74ebfe4ad9c86b71227028305198a12382de01d3fd80fff9d40b408e02bd65c6c1492023100997b97b5bc8dcacdfbddc92a361fb877d4183afb581bec3091738a24ff8686b26f919e6446bb81a7966ef1ec093c86440302047c435bb5006730650230212adc32b3154680acb878aa19d6634869033de24fd36c06197c918a6a11a1b15f0e3daa3947ff08f46a536322d99789023100ccd5dec8f02221c5f394e8acfac619c6305166d46039d6028e491ea90f1e3fe36f16dc0fb02191337fa894861bf444210302047c435bb500673065023100c680abf14302569a44a8b8139fb0e007ee6465422d9eec099a8fb2851d56865c8e4225605cfc2b32d3309a845319dc8f0230260b91b8ad0f35e994c5cbd3ec06246f04f26b237bf1a9b883ca71e9fedabaab3c1f59ab03a4d4a0071d5694f35b32730302047c435bb500663064023078c8b9bdf58b76a94ccf50f24e28ee8721eb0168f22b5de3772daba9817d0c9a6fdc38ad6fae2e9ef2b2b0d441c5b01202300eb2c4546e9e04c3c32d25cc02bcab83b03d8e6121933455febb7266f66b8511cd00b3a36741057d329e524f20a881ad0302047c435bb5006730650231008fa9e2c0cc56634c34579bc4f3c8bfc6f2d72791d2730fdc2140e224c978f8058dad088e62184b7b6c55b46b49ee8e39023061fd5456f13ec5878477f09a1aab93b68dbf70cf439497fe8f3e61a1077caab17df6657c95de1bc44ee7d07d4084a6740302047c435bb500663064023006ea28038fb1bf822c3d37acf1180d2742f330c4b36ba4c7d60cbef16fa28f502f356e753e2dbee47e0c114449ba136b023061801a60b00353f91ebaaf65f17cc6bd239fe3dc276a9921d82b719fa60ce78431fe77e08d0eaed5a7f7370cc961f2cf0302047c435bb500673065023035c175db36d37736a1cf3261be4dcbb5296e4cfbc6c9878b3b73e977ccf70ed5ad8d0944a8fa2c22e0dd48c9301402d90231009ea7946b0c945b694bc79614d27378b9a6d0a12a09e2219d8c3558822349415c40aba980856d164ccc0e7157b9c3c7ed0302047c435bb50067306502307eb53bef9f06abd4114a69d99394656c71685ef3e657d5a73f56bd0489816dd22272ac72ed1628787c9e1547ae99e91b02310083c53062af9ef5848398178ae20d76e5ba4988b7fc5d1ead131b5e571c40269fcc552b3abb767b94d1f6506f69963edf0302047c435bb500683066023100a634f85c581663f7a3d519d235c96097caac647c8062c4dfed23c770d8ff93327fc3a4b56034818af4fd40aa39475300023100829197507128bde3e3571428812674338a7aff39e617125bb16ec43329eeca2833365f17affd7ed0dfad1beb4ac8562e0302047c435bb500683066023100d6fc0f7c365f412e08b8294711e5f174b469d7880b7699a9834152996602899bb1a9787ad9cc5dad5ca93c2ad98c359402310097a9b1870031be84285a95bc56eefe66d8639e8a18a314965b6488e69022ac9f6b9273a32a85204b682f1d05c9bd86c10302047c435bb500683066023100b2a7ca8d01b277fe738ea24c05cde402b663480a745e7901488f266534b0273fc779a1e27af5da10e472f0f89fdf6e1a023100d7379a91858d5faf969dc678b51b4d1e1d81d25f486addc6abb96871c2dd5e61845ff82be7604c76434e9a40f05858e40302047c435bb50067306502307ba5288662c4723de949f2589e12c2eae28f150852846f8a45f47e8490704bf69fc9681407a4a842bfbe5c2333ac9e04023100b70d04f4a3338a3284ed3653d1c7f3dd673733bb414b53a39ca57303356f2af9ebb7ab6f8fc80e2fc672f2e8fca9f79b0302047c435bb50066306402303e51db71d5c628a46f0d7ffedb4dee7ee3839596ea6cb6476716a25ec882383c3e3afbe7d9088dba9fd2f9bf8f71de9c02304e4f9ada8d852d5f9f427f1b5fbbdd52d69a0961062f72cb496c861c52ba3576f24eae26fce5fe8d4444cbfcc7788f3b0302047c435bb500683066023100d52a35b380b91e40eec81bcd24436e63191cc253ca055d5d19486636ba0fb561d2596fea07bb235d5fa5a583d5e0c6ab0231009e1b545032d8e6ed086f6f744462f19ff3e48726d8874627efe442eb50029b6d307d951b565ab232ae69ca60df78c0ce0302047c435bb500683066023100b95a2abed4b7485e6b886eca8136c4a19978a4f13f137a8e3ec162b7db70400607a88861e2cce9cea7e8fbf07e50d0e3023100cf0f5a35b268f85b469f834bc091be522bfa4ce79075511f4cf6a8dc40124ad9413f9892ac82faa7d4c956f86f63ea260302047c435bb50066306402306ac166f7a05cf6fcc233998b31097b9e91da90abfc19886ff655c8c5d7a5293311ee4c41264c47eea18306697d83dc390230217454ecb96c07c18f1e42cc8d7bddca04ff7037c6c830480d1ae175ffbf56a52a4892ac77a3f9eb20ab32a5bd7fb8280302047c435bb500683066023100e9b5db33d23c8e39453d6dfa9b19269144c5cb350e71d5d53eb7e60087f95ee67ed2a6d7cdd4ee4dbc79e0de911c765b0231008822380906bdffc116e562947cb0cca386392b8a76bfd158fa412cda1eda77bae4ae4ea7400916d66fad6c25a8d4efbb0302047c435bb500673065023100fe9a111343bfe94630425d4216901e00818e62d54598b97527f8ad25434e746614cbaa668cd94ed189a505729783fd9902303312c2fd640bfc8ff221b927383d660b248a6d28bc301ed659286cef4e7571af7a5ec20e458a0cdf8de6a964c7ad8ca90302047c435bb500683066023100ce321f0ca290f55041f5727d3e15b250e459aa5bf13de2971583844dd8edc6c6fe3997f27f5362fbdd22bcf50f0218f7023100e5312a74a4136229d18d21d55c5f4d3f3c635996fa00480d49d1db833eff5ab645222b316a8068f6a9aa583931266e5b0302047c435bb500673065023100b6ab865e9749532beea8e384d2846fad07c48d3242d904fff4680a043553f29a503b5fcaf0ec6b8ec548fd103ec4ac3b023018b05c3eb72e1d44621368ffd1c6f29f815a3e094a3452cc658f16723afb22a185d562265fb63a205450f2b92e031a780302047c435bb500683066023100d21a7e43e2f718db7bdfd3d4c04f7790e553207da232f38a1a2a826cdd958cb4112341e257dab2bc6c0473ff383f886a023100861c9cd7ee1b9d03905bf86a3a9380cc2d6d6be88af8b98c4a07e32e4cb078d7dd4f9f12a758edaf5759b108a8e128fb0302047c435bb500673065023100b0ba477f49738f7fd721cf57266b8144a96d439a521d49f07e0c88c15aa4b77ccd5eeac8b32daf6e7e68a463fff1901002300733f0c1f3c4ec8fb49b4120245bb51a9963baa92919e5181b5787f99de0e4fd1b860c3967404ac2d2f0f37f039e7f410302047c435bb500663064023069d185a2b105785067e3eda9332956f0eebe547fb2c22d9db97634c59725083be2319ed2925b65f5a225112542588c1902303b2361d7130136d973718d2550172f6aa180925c6885478f056232eb90374c1d6de53d378f96fc437f1ecda1073336190302047c435bb50067306502305883ef10611a67b696c5f7d0ebc4d9aa12e67b76180c356f1bb136af12d9e26ebffec99a05f51da262f046d7cf5b424702310089233cd003ddcf185fc10f034fa29614928a52ba030193c62307da6196b575e00115a249452e5421ba81d306755434c10302047c435bb500683066023100a94dfb53020775d5448fb75ffadf15907a0046befcbbf6abec18662dab5c4dac400b2aeaeda1e39e0bc594ba7c76e964023100bfb956024101d99a5beab0e95dc49ed987039ffe7b49efcfd235b6c368dd4bc62b559c8334936d74a6e1429357c3f9d40302047c435bb500683066023100f95f67919a7ae1145771746b962dbfadef555d0bb6f76c18ba2f3bbab9137b2ccb92c0fccddc1f4c5748e3fccafe80d4023100961a093035284a812f583f21f94d9c7676879c645955f48494c7ea0b6541f20302087bfd571c09b25049b1ed5aa7636a0302047c435bb500663064023062980d4b36ae659ffa7495cd5026702a2676f5ca55918dee08116fef3150318ad065cab6535bbb1ba87c901479da955202300af69b53b09f8c1d4a8bead5fab2c9902bd81954edf2e0ddf1a444900e9e8725d3f3347c2c98561ed3d7a06a40f0d0fb0302047c435bb5006630640230026cce545adbf73b2b6b19a552c63600787b21c2511302337a4389c78e04d3aa6eb168903e3b3a8717932ef05dd4503e023038879dc23de7adbf3a079d825b6f8460348dbd29d27a661a7aac194ad682da03188cabc9ff8972b9e2576084005535dd0302047c435bb500683066023100c6f7eca0fe810ffb2979620b2fffba11473933f0d514c0d086343969c7bd754878ec7574145cf1f6dc9b6ae5111a90d9023100aafa16e10905333f9294792347d4d7c783bd47f721ed09a8f557d2eff5afb5894ae51a506d5cb38c67c5b522f6ccd8140302047c435bb500683066023100f50095fa4e5cafaf159a1ccb68fe399bd9ae2f6815951d79249f3aef14b09782c09d471163c87a2b3cf80c62d16de588023100fb0be93836c5c8f01bd46961edcb12119cd0453fe93f1dce85fde5ec75b67cae80693f861ac6d663d5c21b32074f3b280302047c435bb50067306502300a14fca8755b73eebf85197cd5a96ea8c2b0745e418c51c556ce4d7f1b668b302987a16d51814520254b8835acd8d0c7023100ca614de907fdc640578ad182765f107e402a49074307d3db8362303829c6993ec82dcb61506513e2c59e194e75c4e9080302047c435bb500663064023068c6a4ea7eb1ac35e2b967449e8ee5017419a164d1185fb8b4ed561b917982316249e747138a136055066a7a54d3f42b0230693e9e167fe2dcd8519ec1983e1724f1017d78248bc13eb6927acd28f7f4a9639c998b31d7630b0effc6c54f458f4df50302047c435bb500683066023100b850c0f7a8e6210a9e4222b5cdb8d32e2b3cdb38145853901a869fc196bd192e905f73e44c07381f988fbd7780480867023100d7be6730489903cc9e9c0e00160a30cc541400f42f3ccc7bd93e609dc842f156825dab77ab8775aa7f2fabf3bceaa8170302047c435bb500673065023100c469e4a5cf3cc26be7cb6a1b439630f6a8582b5b8d295e962b7634e5db2e378acf2dcb6dc161415611a24cdb295b878602304620043a682dbcbb25bdfbacb9ccad9ef8d71426f03469b95460d9698e554a006d061b2b16f9046c9b2d69c8cb58711b0302047c435bb50067306502307d704dd7dfc527df25cb62c2b3d829439d0dbceec6974916fc7795539c022785bb87442954018f6b9e47aef222c6a752023100f953234504804d13407f94e6b7166aa181390e18dea11c958126e74cb6077d7ad4fb82275a4a4ac46ee9508e3d69c7270302047c435bb5006730650230323164c5311e1a936e99b649611aa9cbc31eb9e58d7143595cb4bef0130015f251361b288549df34c177227212fa4641023100e5b33a22e8ca012393aa22a758de06e6c21029f62b5a765af37dc22bfcf5459844eda081a7e0044f7a3e6e73a2daf6840302047c435bb50066306402304c136c8c432479e44272681a8f587038817ad2258555a77c0295364be7bd94368ec70d0c1ab6db18ddb3bedb020d880802300ea1d7c76adb3f40f4213dca9081a7947ebfbae9f7e750b019eef03bdc64d247423fbe80147aab485fcad237ff050c150302047c435bb5006830660231009d51bb84d415f5945e24fc295cdf2c4e688d04d7cea52ec4434ea93fbe23b6ebbc2107f72c87c7ee57241ec68c5e4644023100fb78b30f5ca91a76c52ac185222421064bd0ba416f14c2e2e6fab8a7041bdbcd7361a14b1b77025cb3cf2711fecf170a0302047c435bb50066306402300cb114c26d033471ca67912bbf9766d39db02fd96e9567819a163517a4d96e59962ccb7d4167a585e2c77d32c0f492fb0230631f27ed99655c13e362bbca0aa0d4fd338d0205ba04de8baa45ec0b13b84f9deb281a109a0434908fee7afde1fdf2ea0302047c435bb50067306502304ae3b3a9d1ce57a527234647a2504c606fe36c00934cbec2c36a3b081cdc1de2dbd75f5b2564d83730f9fed9cd79b901023100ac741993905edf80891599464cb51b064bea7c283a28bb42a46c911c16ca80dc2a529b6cc72d3f262c1be14fd6edac5b0302047c435bb500673065023027165761fd338035a6774db19f937b6348146c248e50610d385652ea343a20ff22bee2d6538c2f4bc8583db06d533385023100fe8fb5b20e71541756768935b20f3d3eea6f91244fb842a9fa1c0c6d9991ef462eefdc42341e7e6f2e3e9944690f59d50302047c435bb500673065023031c261db06777badcda306d1767aeccfdff14d507d222f6d58169f3f8f2b0394757e73dec39ebb22fcabe88ed35a7ed3023100888332fe2551c62d706f536d5f8ca5b76e599b4ebdea949c0fc1f84b31fd936bface536b0e6e8bd00ceae6cfca87f4560302047c435bb50067306502301b84d399105aadabd3e1e146365340e27735341af78a3f8edc899db0ac0b2a43b7a275e4e85e43f8d8b585e5a0cbf80d023100c9c0a3609b350a9e3dca3d59f255d1867c66c6471d42257b9eff8a96b801c0b3c7f6cd3944dd421023b7b9392b773a600302047c435bb500673065023100e46f8746e8f291dbf9c543517183f6e8e21a51557ab9d0d1702b01861298440d83f891ac12a8fe2a949d248003176d3602304426ad62f03e376216089664b1ba1353e9265ef53f3b4b9e05898f6ddd9ecacefda08755fd851b7252da8ddf09c241e30302047c435bb5006730650230078fe1b081e656a7d9346c9c9d872d58aedd35423a01e8cf1ce260efbc595db766e3849b2987186239b67b71c9ff95d202310097f78472f02b4d5bbd1db2e8dfa7e5c5bf6e409d70cf18c1e3b2e13d519d29d45113c2c8c3e1ce55ead2d122048ba8e80302047c435bb500683066023100f7c84120bc246bc39506098ac40fe4688297ca94823c32362e7b2184873c2bea3bda0a27607167944fb4dfe370fd9b63023100e585aa128eb4f54779adcde13300c53f94afc689b2e952aae944df98ffd1bbaf5b0bba6270d0fc2067220c66b75ea0550302047c435bb50067306502307cfe5922b08e469d273c7b31696c7ae0539ad3ed5759c9b06ccf4b44d7fdc5bc273472b3660b704d89b057e99429c11c023100f52770ac8f3c5f46008a4bc478da68154e4281e71f77e193d2beb233d04b3f11dbb26332d33fe2d0757f1080ec31f2d30302047c435bb50067306502302654114591f39f3d45e7b17099532554932ad1b9bb9b94d1f7c9025217cbcd9e0f19d5723db2c5f75f2c39fb4a10351c023100994c51f5b05c2d1a07c1beea2e10227f796fdeec68f89cb3d1e9105fb39cefcbabad69f5a564d9ebe833c7a780173ca80302047c435bb50067306502302727d25e22905f0b792b47c63c72f9443e15c32c9f40a588be147ae8d88ca2d5f79943652fa79e61b1d49bfac0fa79c8023100a99d030d513464b1837723e23a8f4a7479e993de69a7f5095e25963a7a492f88900c63704eacba7ddda525456737e8270302047c435bb500673065023100fbb55c0ef602d230e758c84a6416b203a235926912628693181138c4cf8c05b85ef9e6964ecba0439592aa7009d9bda302305a937ff213712024290241d2ddffd7e2ac12010a5ad1eff765abe5af229d89690a4aa0ba1d3a27fd326d94d5dacc574b0302047c435bb500673065023100d818d14afab94a3fff5406aeff67fe1ea45a7728f1e06fd69039be28fb2a54cbac59d06ee3f4542131b099b54a8292d20230335b9f17e3003e431a18e7c5e187e2b09878c13fb0633f33d8c346fb0199f163932b3e5468e493fef9711884b9c8a88d0302047c435bb500673065023100b3ceb42588e7660f1eb5ea2f7ea4c6f6018ce8f6e9825e15fdebfca26dd00983385373d55ee99b74e1949cd556981418023019180165f912bbf61171b8d44404d549ee7566193139f886e14572fc61e34e211716a64afec1a458ede4207e3311cec10302047c435bb50067306502304cd90e31c77af404e72c9e01b2bba34c0d9414eece2a8e56a07e9105bc8e54f988302f6d0471d6cdae406880554a314f023100fbed59527d071b2cc9563d2559df5b4b9f2d684a3beabc9cb34c6096109d1fd07010b04b2c96eff51bcf428337cd7c380302047c435bb500673065023035e08b63c3fc5f9f83fec4d9f51c961198f887c1663aea216422e46c8373abcac217854558dbcd82d4a59a825d7debbf023100d9528185a85d75dab94d54a33e98be722e9b027b379f82b5cff958af7e57c26f701be9c233a9b7f61eb905596d2a229c0302047c435bb500673065023100fa39003a2c3b00ab16f868de2587ce285fa8646d0b7adc8df10ba49d45c57399f27c34fbdf077ac8228990409edeec6102306e56e30cc2770a8dc0df4b9ba27c30af83c0d401522f99ab3317b6caebc20a950620e7d1c3ae46093936b1f162a9cfd50302047c435bb50067306502302b7864c53b98bfb9fc62534638943609291ce1220e38c3a74f8f9989c839106efdd691e59edbbe5acb3a0ee80f9afd4902310088067bb7d2fe67feddbd608da350c16c4b3faa331ee91243438333bceaf8436df913350b66ed99945d16cff98518c5920302047c435bb500673065023100dbb81593fd2eb7656430f0b1dc3bdb63d1f4558d6d02ade9983936d84404f3279b6e32be62b3b824ee57f5d3db9ea8ad02302296027cdd8af9f3d4e638b97f12b597667bb021c6c9a3f3a294c650a04e6a6407fcaf7844e4ec961c58d6d45ba033a80302047c435bb5006630640230014f219d7c0fca56f8ad6456e8026e2a842e881e4e048d0069ade21efc2fb8ed73cfbfa4fe58e1deee5202aabffcb13c02301755f99880a499ca95f0ce270ff836b726737daa6579ccaf03f82765ea34176fa9d172423307328f9251af66de534ca00302047c435bb5006730650231008338c0e68fe6ac2371d02f3683736bc733f5f3869ba4b03dd512706754cf86d5b9f000aa87056bf13f8f33e0c7af9f5e02301bc9e1fac2ede7f6a6ec2fa747f7baceae06d12c2c245d44100a1ca9a86d921710d87c0299beb2441a024309c6007ac70302047c435bb500673065023100bc20be448f362043834ebe7b7aacf172aa11252b6ef32d245946c043b130be0e8286024f7a8a508719a0a3d8f3efcd4d0230372c8e33e9d180cdafb1615a2bbb4ea9b55889ec200c925c45a99655257a4e1079e11f91e731a319a5d465d1196b676c0302047c435bb500673065023100e204d93fe253340db4d3e75ee10139c35bd433ee822440f5a9f8077a24c398068b582f41e3f20c3e25de811ad861375c023077b804cf67fc3c3b3b8e84b409a2d2955f627348f6c84470d5996414cf973bd74fdb8b04128eb90fa7e42098af902cab0302047c435bb5006630640230676824815b6a2c6bd22952ea16253d2bc50da8511f8a1742f915e892fe566f472b59ea8f13c5e350de857164062a6be402305c956e60424270038cd33a84cf7bf3267e2d0713e4382d7381136ea49f93bd88de3bc64298b9ebde8fad6ce26ecab3ef0302047c435bb500673065023033309aed0790f463081dd74c6c53aba6df02d02942414c08bb0a0d325a16c863803950652744a9c3d45d2543a2b21152023100f0d0606b1ab5eb3287843385c8a8c1c652d9ba04ea31eec5ece23c32f355c5777becff1570c307a7f365418aa3f9c5910302047c435bb50066306402301b1b6d1d022d1f2e1cd2af7cfbacd041b099876b68589f822f4eaaae67c73808e80ff46cd7383d6485bed99baafee280023006de0be30e3d900a2a5f81356a2262702eb1d6c69d551f71a14dede6c962aabe9fb7b388e3f8372e0eaa6d9cd26a00e30302047c435bb500683066023100c890033ebfd945511763942a0eb0832641f22062de662fda3b29e5ffdb47c9dc116eb2f51bab36a1fad9abae28d40be3023100eb8c31ff69edf544d4399a41661a0854edc73deb68c9e52f21dc49db392090eabc0589ce8fd535bedc87fa4e69d668040302047c435bb50068306602310090b59ee17e671af0b20dd100fe825708a2f46e16ce0e572050ccd9839ea9511e8afca361908f324f91bc0308d43a2cf4023100fd3ccc87f816288da8bc48d3edf0ba563d85a79c12a00aee5a487117098dfeae041a59b29327821fcadb403d7aa6d72f0302047c435bb50066306402307081663ca76213783835e1c1746efa04f6e5f3baf33143e2b7fe8034927a19c8b0b4c8d84a3ab3d06d6cf7a405ccdabe02306c2f69a55e612a8aef639103ea89bc72d41b7976a6da76ab4df6f2a74f78667a1a94eacedeefbd712f2c6a9471db8ff50302047c435bb5006630640230286175eefbb3dc0c16341991bea0e22ef3d1a0b573b17a4b71e5e122aefe0424144406b04c94aee1cdc5628b5fa9bf6a0230152591f8c17d0d61aa47794765b5aba32411a67c845d20f578c844b7f431a79b605783d4a2d96d94499747519b4790da0302047c435bb500683066023100a41474065f69517252dc58d3b0ebcf2f59e4e520ada42bb6e0554ec532ebfe19f06e43b166fbf4fcbd5776652d1ed478023100d08fec160eb37aa058c81e6e6c531cd6f40c8a36eac495d1f62ffd0b46aac164c062db743876de6baa2887dd351698550302047c435bb500673065023057692e1f7b660b3f215b1fb971d25ca82717fdd17e6ed003a6bb3c11d734ae1b370d81162334a23811ef7a2d6f6f8483023100b95b1cea56ee2125c1b2e12eb7ab6608ba0d619f324240e3485e68112540f5abc7871a206e72715c881b84281491fb680302047c435bb50067306502310088634e24a04309adce4f7dc841e16aea2d7e740c2040d8415770f9f95fc521e0b2f7d9822fcbd6a2458ce8e2853dd2cf0230190927903e84ca1aa7222c069359fbc6e7e75c4b1a47e259b3f36d78b8b06a0d0e5afc3e4f83794899b345b9c68886770302047c435bb500673065023003918fb3cd4c9725813e8ab860e8b8ed754849faf43f136a6ab4a02efcd3263165895b1b6dbed9de50084d26af4cb411023100aa207f922e2396b516f6c9349cff34046800e7cc4c942fa2c6bc20b0b4f0f2be460261fe0b114d5547772be9c46a7d8c0302047c435bb500683066023100d5a02a5cca244a9b77ba00f789b4988b2c3fc07b6a78f9d2f6b23d891e337a7eca3af9f687e5996b7068ea6516b32b5c023100ae55b6242e9fe68b4afec0551d9c5521194cb20da62ae59703bc73485b426f126c25dae32fb9fecc1d349a9e8568a7fd0302047c435bb500673065023035636b086246011a398e0aeb8d68471381a4835bb8580c010ded3bab1ce1661a978002b13f71a0521a1706a08a139825023100975245b88dc6c7b1cdcae5f1e5f0491721d2f3ee3bc7df5502908bf4adaa4cc82e7b1c39f004c6c6dd187e5a4bc794c20302047c435bb50067306502306371124a01089fdfce265806901599926f8afdc17ae04d67ad88c340a5f60ace3feb16260e955e2ca804c7043b3eba78023100d18c643a8d5086ebe7e18ecd3ed73a18f08069938336b3417aa12b71a11814199692a47fb8cbe4281e37d87f14e8c05e0302047c435bb500683066023100b639cb5e2051198a8894551ab7440063e3ebdaa73d0a63b9ff1e44a81e989f7263041a69e21591d276b304923f4cffd0023100e0432012e5d2c917259950c05b9235fcac4ceedb9bea3e9492f87f04c067c0d42ebd070a1079fa5556b5f332489d8d520302047c435bb500663064023018609ee0a02b56bf62515370a5b9c2732e982e460f8a11fda77e608a070b212dc27b210a187a25d488a042630e4ddcb202301d7e8d379d873912d8db8aa7786a1cf91aae0275f1aea9aef19adf5386e6fbd68d755e109f861d78598c773d1ce0f5ae0302047c435bb500673065023026886bf647b9acc0a602b3b929da61d65b0c5478a892f6d3d25a4e04e2ba2db9b80828158b90db80e76f3abedd7637c7023100a21c33118b96cb62a387173170f80bc1a0291f078384dba64a185be71b36e4d711016d8d8a906e32bbfc46a96ab059ee0302047c435bb50067306502305d275f78b45bf70b99476e3b78c557248b33b3dad5572ce64e8deddf025e3cc0d0a1ab082a8723851eecbcc4e13eac300231008cd35f53d2caff07e1c1f252a7eefa283bf44f7ce9c0a626c565c4158465c73e3c3cf7a5e5baefbb1a78f5c9097e19020302047c435bb50066306402305405144a6efd030b90bc0496e7402d4ce488618d38cf01e3edfee0daabd04484ad4ed5b88133ff465d0a50f2976cba6202305ce1ae1cc876ad2ac98618b4beadb7fee24f379c08283559c7bc388738de61744d17d67051a4d3e255e204cc1d203adb0302047c435bb5006730650230334bb18b6a4c5730439d53eebb1c24830093c3dfad86963ad9ae7fd912fa288154d4e3a17b3799ee4188d5bffe616cd902310096010f5b5b6f7a9fbe2bd558c1737fdba6ccd78a4a5463ae553ed8eb24677cd780b6a5e7050416294a568863bd2ddebb0302047c435bb500683066023100d0482732a1c1b3a94db3522e2614bcd122d161811ac92cd6c81e19abf3561ff5969a0f9270cd0788185a3991f713fded023100d9e7822c7ed29f7d4dcda506dd897b8978a172a65de1169e6f0530b27bb0cbd958052ec7ff6669aae641a125bbf177950302047c435bb5006730650230203bf9f60d7a0a01fb8b96fb7174de3bb821db059d6647e8ac97920a291296e6cc7c32395b312afe034f24349e4e22aa023100d3f7c2190974ca7ba8304b39a5b262a0f6dca9ccdacc7b1bced5e02164f368c930835f45cd5fd1a12dc4aea83ed93f8a0302047c435bb500673065023100feb74aa9b5787a1db29d2e79baf56d035ef4f97ee62124cb5b1059743d000da90f79a2554f15588ac57c0a7cffff783f02303962ab688c88beff7b57d5c316f587bc2ac9c5dc9e4cedc278238926bc472cfd252b2311283dd853226f87ff2a614d680302047c435bb50068306602310097a2a4ff91d69409d48ff954c939a18c0c0baa5aaa550f5821f0c1227f959941553601da06cec4769d8c3a36457928b4023100d5520efe7579c8d87d1cfec642fc56442a6c9932e01d2a7c41a6ca5075a2cbe8e9b56b1d7bc553c05fbd9bff3a935c4c0302047c435bb500683066023100fe84ab409a61a1aa5f3f7b7b2a5d820029810e42f12ebd532aa64a8ef0d4b4a0373e55b44f0a36d97784e36d54783254023100aeb827d27600d3c7a1019841af7708783a0a7205e1891b99fcf66cf09412f73074fdaf6b7876f93dcdf74b4918ca3f780302047c435bb50066306402302b77f06f1b2284ca65dcb08d844df659d3c925c196997e9d2897cb0a248b4db9eaf8db2e206e2876277f03c6cbeaf7300230752dddd3cc3645d616e77a437208b5223a15918dde2f9553b012c936a88eb068f6231d5d11d563835170d390a1b593330302047c435bb500673065023100c0b9d4c3628d5da8dadd47370a572a68372c74101c34e95eb70d1642d9693036962f25f899183d3c24ba69488e4a19ef0230561dd7fef3af96fe84305912d38920e088b746e060b590dad22c33bfa4be259b650d8c20a6b85b047861f8792559f5810302047c435bb500673065023100d439db34f269f53510de95de8d44691c76b13aeadfcc5d3a08cc450814fcbc959b722a8791e56a6edca904f9f614a54b02303b814cef8c45094356aeeebd82d5529002605147d1fa8c3e7804bb9bb767983a7e1d30284dd757eebe2d62554a5780030302047c435bb5006730650231009e954468de08700cf03bc1395ed6046085c5f429f06b094001926b762c46ebfdb12eaf2b6861eeeede49723139d7d3f10230200665348138712da6d9b55733c26ccc448d2227c31322dcb8ff75aa6ebabea957576d8133f6d209ce2d022098b8655a0302047c435bb500683066023100ca4ad9eeda20222b011d0737f3ce017654d1658fd79a98df494ccb4f59d44234ac32adbdbe60bc8e78195ac1863baec2023100d6f2773900568ce73030912565085fad9afa64359de34858779d3a2c3cd330b512057ddb82268f48b1a28fbb1ab0e9c00302047c435bb500683066023100a26f1da5e08e1f7c9ac6b50b7dda96d083911788801cd79a2389b525ae1368be0052eb61eeb5956b62027cba6942239f023100c6edca55e9892a95c2e8cc9f2cfe2c8c8ed45fa5b7144c407a6ba71e25850c3af18f211db2c81e97e38b3d3a9083b5990302047c435bb50067306502303ae157075ff9fa6177bf4aa70ee12dcc2ce307082e00c0ca6c5401654321360cd04ecc54de25074f9278bf263cf1d7a30231008a0a76a738d92f0d0aed32d612bddb481e9eea1ca2a7c562fa2fca9c58c6f5ae8ad03856f5e5a662779a513175ff028a0302047c435bb500673065023100cd4d4eecd157395387f73942ed1e6bc4114a087929f79a1ff4beffdb8409b8baac71cccc74b621c8851e0096d6f2c01102307ed2124ff9ab6eda01931c99d004788d5c768b6bea7f6d4e72959f15f08762ecd6d382f9843ca63c7dc4f6b680352c5b0302047c435bb500673065023100b5be89e062c82f92a67eadb3ce48a6c6c5eae7c6f6cc618591691d17273f41eb74326119235697ed7abcc4addc7484f0023011db55479f092d0c83a8c0e0ca153d2bc60c1d5d573927f157e01f0d0e284ebd80a0b044fa89841a1e968f1020a88ec80302047c435bb500673065023052f914194732293c83562600529104409c6ff81ac1bd52a569ab9287a117c49257bb1184a20860fcd3392f563440688e023100e141284e487d67cf14f417f22fed54bce7df6d53b2fac641983fc387b655c15d956ae395474447210f77163d734711c20302047c435bb500683066023100a2cf6fb75309ef30995873377868e44c61ae09f73a76ed1a116a6c6973d5bd88c52759c2af31b06dda5a201227b6e515023100f987c119a9818ff2379837bcf6f5510192bf70380a2bed935f56100e00ce250a1fe29ebfa3343ed28f459838a227d9210302047c435bb500673065023100e4d659210b7c99a4e69f5689e088b78939e2eefa8e404cd95df95dc4323a00fa442d724659a6a49ffac148b771e103a20230630cb0ed5084153cdb6b2260822ce8643aac3886bce8888e1ed97acf2d8a372fffed82b2d8173572b446027c074137220302047c435bb5006630640230503eede8af844bc6a655d775a6c9061529d80c094659037c25dfd592eb98e733aeb837c8a027e6024fffbfb23e3f0bfc02301add96548cbd022b4300e4e44a2dd8164c58e6f301085028e7edc7f15514ac59a7c0e540fec39d193dbd05b12ec5f3910302047c435bb500673065023100bb2ef51c5ff80700f1c2653dce7e904c27b898246a0608521f3ad84b29f648640910f553d8825b98ea94eea1f13666180230169a28c7f443efe59f3f141844d287de4e30dfe41b7becd4ffc6e99e92f31cc204a731a4e677b696ac5e15603649a7e70302047c435bb500683066023100c8f4cf64a51cbf3d53c64c018d15c311ec96279ffa70dc427eb8f15b570c16b19edd2511378f2f2d2992482db7a1e84f023100fa80e99c080fcae4ff1e456ef0104dd5cdcaff3f99a1d947f33bb3d5461e7bc7ff839c3f57d4c4eb48164387cd18394c0302047c435bb500673065023100df45452af2679f5e52f7a2834d3e4584bbd9e20494433950d4c5ecdfb7f4b23e78e10fb79322a899ccfa67148a597df002303036ad043ef22fc80f3fd0f0612c471eea72895a797dbdb6f7e6ea18269b4a6859955f980c78da912d9bd05aa79315380302047c435bb500663064023004c38b41f84d90e0b5057a28900d44d3179a89a002118b7ee29741dc73e48a9353dd90b57feee5212b01f53925d7de4902306d76d4d74344f2422fc5e88a8483a615642ea315614a8090048901b5fc379da8555fdb9baa2e882f9b2028f6f8cc384e0302047c435bb5006730650230659802d46e8d2219a76e90be1d1afaf79039bc86288d3717d20a7e7778491638a950958bb43a13383a34504c5a965311023100d124973fc62bf7afade2d1bbefb207feb370de121db1b179a8f1811ea54d4d35ff73a44eefe9c998493eea446871b5860302047c435bb500673065023100b48d1ac87b9dfed4399dfe8fa0dab7aa6df8ce8116a64be4b97c7eb1b0dd62ff4860c48c7dc74914c9512daab981979702301dd787ffcae14637974fe0d25698b9a90b72941bcc222964d6742fa88dffd6e2124b2d4cdd22eba5b9305a3f196d584a0302047c435bb50067306502306d7ac8c0838b4aa9df373b91435361979c81dd104f4d1eee0a7bcb771a2b74198a43dcc5b28990cb155518a9c5434fee023100ad2c294ad437ae047d31eefd5c6eda35e64838116c93039a98d2adf926c238acd6701eb6c4df799e7abbc4eab60ca8af0302047c435bb50066306402300bedb4c4cf7373bfc639c155622a96028f394ab5421bcfa171abb97361c04345fe29b52418b82b626d0cc433595bde5f02301222a9d3d47702ab65e4b3033a6d1ef3453a1e34e5c0aab51ca570abd0d3e1e72d59440139b709fa8f866b79b0657cf10302047c435bb50067306502301568b89bf75a7275e43e821ebbdde94bfa900f85db4e09240cc198f2a7281470f927620c8293e049edd5ec26dfaafc31023100e6ba05170acc6fa4de07b98a14e57918776e13228c4f14a86d15188fb4c21fa71ed19af1aebda6e3e7a168e839f1e5280302047c435bb500673065023100f9c5678998ce568ed5a5fbcf8884eb14a32b653fbcd6d5b8675716dc8d002922437a341d2dbb54b1f113e7914c0a9caf02303ca81e6c945cd460ed6460896c90a3626ec6db431fd2e77a302d4f05594bafd083440a0534bc11d6f4052e885e2923970302047c435bb500673065023100fa3892cd98278efd5fe62a91b15936c3b97ece22ca771444798df4a3e5f6251f01945c15cdead5377e25868375bf27e6023010381bae0e73ead35f846a563bda348dc38c1eba621ceb024131cdbae89bc548fb7621ae87484a6ada3dc40c572f5f750302047c435bb500673065023100beb86a7d5579ebdc165b950116270f29f9c3b2698de7f722cdee1feb90f2527dfce348e6599d559e983601c88aa4f62c023034f3fcf582b29e658a3aaeefa07a770bc28acb59913c717e80c1944665e067a7bfdc922bfb318100a9dd1310fde3f1210302047c435bb500673065023100cf0ee3ea53db84bae7a6fe02f6eef8be14addd36c2c356998d7b77899aed185d74389ee65982be9c73dae9d3a41c396b02302f7f546ec8e1cbb53da311e1a4b3da31fdbbd8c5fb94abb82425f116b69f4b9199384bde8c5d5ddfe7143dce6025dd6b0302047c435bb500673065023100e248965227fc99a8d0c08928922b0b0f7c1326340fbf0e6ed27c4d7a7fb5d18a1c5c4a5527d11a9457e028657a790ba102307076aec3d27b37f8ed2b2bcb1559a1640a772db1b674801c2d7daa335fa4552b0e83af3e760aa34eaef45f0dab4486950302047c435bb50067306502303424c72c70409cb3d7d5188ad2ef1858749972cfc7a9fb6f7cb4abf21b8860846a80d98684022499abe994414d8d458a023100fe72ef6c90888fbbd7f953536117685984acd21955dc367fa37df975f4409ba14097fe82b7024b812154a6f6fd973f9d0302047c435bb500683066023100fc47144939ea656222120cd50280dca5659a392b6e968b4bef50c9c6f8674d036adcc62c7dbc798d3b8f069d14110191023100c5637a4df66d15f39b05569d88de1e836b0ad9898534c71cf916a6390e7380d525a1201118a2cb3ce9b02cbeb57a2fdd0302047c435bb50067306502306fd06ea8bcab6e5db78edfadde49c13acbc6f0b1ef840cade1ec3498ae04e220eb7f966fbb1b58531122e4f120a73300023100c988ffd900776abab859355248718b68de1ab1546f55bf5a2ea4eaaf2c1af22c32850945e337f3e806b8442e672e797d0302047c435bb500663064023038bf997605c8df2b837a0267f9c33001a3e0d42a30576a69f4d856a961b01a27738d48cd4bc6bc956e0ceba9e4fa4f7802306200f7ca9dd28a95de1e3fdaba2eea1a1420274802f6e169dd73dddac4e68f276f9dbc0ef9f76ef99f5a5b78e694dea70302047c435bb50067306502300179101dd220e901f5b4e5c62a33b019df9141a5f98be9ff025a153abbfb086a490f68c374469f3cba1e4ad908967833023100a0a793d4b6f492c717e3f35970644d1835b1ecfc42e9be91bff72ff6c29f871006f56cd1bfce0475d18f6e0468393b290302047c435bb500673065023057c3102de24315fa71792fd15e4b8a7d8688a6239574661fd4cb60d744fdba02cd37b884dab4078d683ce2bad0f4c0d9023100b61ef8126e951d00e06f723d084f1ab649a7c4c8d47b99b92fd2e04b3ab835e74f242b03804b58d5f4049517a1c95c010302047c435bb50067306502306cd19ae927c0e0c78a19a5bdd6275d507ea25dbd74afcd349ca304f0d22f48291fe7b09692b62a79256434d74154a6f1023100e0970ce4b61c419e00796171dedecb4a8035d3d0d0f35214d915639a4d676f94ccd0d86ef18f1f179caeb776a63166e90302047c435bb500683066023100fbd3c1920780b39a01fb0eabb5639aa9d78979c8511db056519157153423cbdf8dc0a44dab964b469bd7b1bc7f585096023100ef35c8e67772d4796ed678efbceefefa943f8f80c7fba4c42a0d0cd4e26571b10ee2847a77408c4a15bbbb631b6d00550302047c435bb50066306402307b76722b7a62fe207de3160da2f96542702cf45ad3d6690162f20842f48e7d4f4d02371d1abd41e255ac0bb327be041002307b236213c4c5d03b9ea2d28f34a47589ea6f5307786c8deb706a17b83357e087a5c78c06f5beb274798abb833faf77fa0302047c435bb500663064023045105f28157fe66dafc75e29e12b6241722ff3a4459bfa3478ff10f12c5a416c6e86565f440f02a378f490c72742211b02307ea6d818a0dc95e1f23a982d5348a63c53add03cf34402fe2af88dd62c79ff31363a8dfafa57c68a8a3f1423f56df6650302047c435bb500673065023036366ac50090effb0ee65f40febbe8788f2290aa51413c5e26bc39759ae8f00369d9d5e41cab052cbcd3ccdff65dd55e023100d5d591182078819f742c5ee691ec6e4794e23efee96c6e7dc11a1b376e9fd8c4f1c3e2ba9045d32b2225ec6ac149e8b20302047c435bb50066306402301f2c15a54a01f4dc11299c981c8e3b15a3d628c7aedc753b7c7417c964b7b744e9ef9b89cfdff9827d000110fba9e76202307ef6032464f4bc98bde75f5482b771680c29701292647bbc87153689ae9faf5deb4ee00fcf68d659ac304fc2d56a9b660302047c435bb50066306402301823da91dc79db5b04ce8f15dcbe11c0a3b58a79b1835c645f5d5c400aad10554888d2bba03ef56f5c32eb13034f94f30230603aacc5b7481978a025045b270fb6a55f3388e364ad45e6738ad38a3420880266967e6aa4cae9bee4db4a82a5413cb20302047c435bb5006730650230759796c60c83088a694e1f56b9da88e610059adc977804e246a25e6777ff42395413622de6314baa193194b76397ddb9023100cce07f532bdf21dc2659d717fc9246f3c73a4a298be8f29bc646d8cfd3e9a1bb5cb6155163eab6fa356ac8ca3887ba560302047c435bb500673065023033fcb258274d9443b91379f9627897c38ab8bf610b4eab09be4c732f0adf5ef2209b7c236f1c24fb6e20b52de0d94c30023100806eadbc57ee73bfbcb7c3ecfdadb17c62b39f26c66eaa7d2cba2f5de09e17080c87ee87058248443e97a665d615227a0302047c435bb5006630640230728b61286901e8f31be25467e4503605e96883cf6b7832274588aa0910efb7427fa3852fcdfa8413d34fcc7aa2b8f6e402305b19bee4d4a1951e67fd58fa186df0cbdefbb59eb2f1c62c868c52e8d3ee70030355f940d048d3116e431e9eea3b55880302047c435bb5006730650230036cda498b43ad34dce39413002c8858a276c59ea3738edd7efac0b19397b9268117bb94774a9620ba106dd2f0f06a0d023100e128a5986674b35385be2a349e4381e6f8d919c8597197d6452c7506e531ac1cbcf079769abba483c6e27a282836c5a00302047c435bb500673065023100d2e736c0e13db10a184304a06868a3dd3c12e1d2d47d9244da697cbfd5d301218ded14fd238f10bd874be88a2f39528702306b4f97b87f728816785f67e32619d64f1ee14bd701db2372cb2bae22cee841722ca1bb4fb9322fdb54bfa6448c66e38d0302047c435bb500673065023100ee104ffdacd03117a211b3b5a2ecfbe001366bd2a4887da1d3fd45c88326ab042434ba919e23fd0c84f90b16e1909cdd02303fb54c6b08ff7dea09942e899f822544b81621e8c0f8fc8026a186488a6213cee74daecd9369ca987286efef3efde5270302047c435bb500663064023034636661b9ac2a8550a0b81dc0f0370ec585acc6fe31f515ce89f30afd33e7709735bcdc58f420887ec83179f2faf84c02305fc853165312590e75e8292e6a141b4b670a27417d815c1fb17e74a660dabeb18caa18e09785fc901c6938265fa8e1520302047c435bb50066306402301d0df4e8329bd3ab1c502ae17c892cc2ed678d55363f01b5193a4e93e8e57c0306c81179347c18ee6138006435b37b6302302db0e2f895eeae12a2ad8606fd3f91eccef0e86a28f341ce1c0e21e0688dead14ca040796b8050efa2aea0025ad0d5700302047c435bb500663064023006903aec04400c1959261ab575534d53e0f3ebaebd7bef7301d81bd29944c21506680705909802bf38c8cddf5bbaa515023024d8db09a22ee45d4b74802b3ef947f89fcfaeb23621ed2e134356238b782bbd788ae8093903e3015c60ca09269be3590302047c435bb500683066023100d995e5b62bb340e77003d7616ad0a83b68cd3ea638ab5be6f053efa9a1ed5983bea543c2ac306d821f763645fe40fc8902310087545356ed59af600da8e8ac06669af9d67987aee3bb8552d3f55ac8e932b13496a21e138336f206a0b4e0a7ea843b4e0302047c435bb500673065023026ccc3f5f08acb5cca3d1b453e7d1d5974ca48beef2fb108eefcde67afe7ca742c7e3a5f2b2ee2a87569d347fc918fb7023100e2544563c423206d566e935cbe56b0dbf11de8bb396948edebe6125d6fb6a2ac798de25e97bcb98eeeeea492e8fb32720302047c435bb50066306402306f4212e7be2b20788e6490c617cb8dee0c1773accdd9955305cb67791f9905bde87066c6bdeebf851182fea94c0ec4ad02307d2f20789e67ee086497809da5688c9e84907081bebe61ba911581711a60eb09b01b751cd3370b00668920890d23e80c0302047c435bb500673065023100f25bfc7e2ca08dbe4b99e2b2e4b63469f137998fee28db8075d87dc053e1cbed5212bf6901830d802181d346e7abc96c0230266c445e791407fecc0b38ea9fe91d482d69b6f599de03c3902fd2a9238fcf85b7697fe508c7d994587f06d0557ffc020302047c435bb50066306402301c16a03ac80b638ce0b204626d9583107b665c1c37bc72781ab69ce8b9ac245fc94b06f712628298d62b1f593413ad1f02304c1c458deb97901cfe4556e5b36326459e6bb22ac99a06d5fbd287192ff834b86b08120719942f0a66d5b325d00221b30302047c435bb50067306502303cb2b9549e7ad493c82988b697db8326fa4322328f3d76e17493c99f84cd9209c18b2f37a104853ca0eec5f8f56917c6023100e5a57859d921d674b1bd2a39b2081f9f98dcc78a83cf693dab1044248492e3f761217bc86e6dd14a522a828f7402111a0302047c435bb500673065023100ec4fd3a9b21c9c7f1430243342a2f618f53dc3ef8193ed8d6a0fc52f21dd38a25c029b02dd4af77b33d00c25f8bdb9e20230381df09ca36ea78d55ee283d0698ce76f17f05e497a79b7b78e6d0bf64206dbeb6027f6c4b702304d18df30cb9ec830c0302047c435bb50068306602310088c6d82066f0cef7e9303d9fdf5110ebe032aa5651faf8e4c6e5486fa11e63344ee47b66a2dd6234e20cd1cbd2851ecb0231009afc343c3b8e0369d713686e04e35e53d93834f07e99a11e1f6347256c7befd892bcccddb94f6ccc0d315b07773d58370302047c435bb500663064023017d45d846d41b512d806fb13c53b2c0b93fb8b8440a0bc3b637c2379af7f0d437598f58dbd0c9c12a5b90b8f013f54ef02303cf3a6425dce2780a7d031edefdf728c2b35efbbe2a0da17a45d2c4ef8b4fe641914ee6803b941343fafef21f0cbce8f0302047c435bb500673065023038962d2cb1e6818835e204707462022edd61793e31d569523513a8642486e3b9f89b6e9d8202fbfd9529b1f6bfc135b8023100e63cb67a1dae40671e4502d227b9d4eeaa79e80b162c8a17d04e8907ed12adccc4b7d46fb3c08e9d4bf97c745ca4bffa0302047c435bb5006730650231009bbce84185ac59448b71ca6643741256d0a977e28f2da5517da1f8ee2ae68c08d17564db525ba5b0d670d2d780d77bef02304d4d72c21a0e757e5742930b949a1295ca37d58d501c47b87643c0815bbddca3fb8d8a106f71cfcf56abe780267a09910302047c435bb500683066023100c64c2dc806d39ff7e1563b32409147a15340f32b23587c720b017944f5d5921a0661a11cffdb70f8a3fe5b1c0a8ce51d0231009a5b49ef8a2cac1202f8f5b43afc5b622c7137348c42f5b3752d1d232ded3488e98114dfe1fe4d0b73571f7d8b1a03cf0302047c435bb500683066023100c8417bd2fe682966a2c411764375e97e5e213ba2271e9a1905fcf3a0f663f3afc47a3b35e7e15c2880ae12f2880120c7023100902a7684b862485417db24504f9823e08682da229e2fc488b74b53b8dc1ecc4f2e3e08809c86b7581ff2e03bc22019340302047c435bb50066306402303d32bc0c96c1166ec4d87ad37d6bdc39609fcf5a4dae2dbf61b93ce9f9f8c77bcf88e5942193f93618ba69015cfc37e60230587bed375203b00a5e0c1925141769e4658897422980aa8ab871afb4769d82396ea8f517fbc59467166b6b7b96ce5a300302047c435bb50066306402303f8ba8788ebd41219d22053d904b329df546dc3b8ca771dfbf35abc96d54fadebd39f60f2a26e4165d9031dec18f5bfa02304818b050af74badb82d03e462e8f877f3d31663d6e626129693129f6c244883bfc5263e65a06829eb0bdb0df064a64340302047c435bb50067306502302b0c3949b5b47ab3c79af984da80346f0373b59f2d12a573be3cafab7fcc465ea53dc1977e34d88ba7fd3e68b506ab2c023100ced7087f04b336b923b87270d81964359c20f049677a65d8206029cbf4340336cd910f09fb0a0c06838aae6ef69f8f990302047c435bb500673065023100fe04ff72ec73b4c86257af86cedf335aa17c0b20457ff6d460264dde4b2827f3f2a3850219288d7a894cda29c39f9cfd02307c493b18f819029dc9a4f136619bd7e51a65c6391b85556be1f715818796f914631aec4266a64d37243d02f68cf879cb0302047c435bb500673065023100b1eae1cea3ae5d598dbd1f06f5cf14532b14ef5319c548dd4e046dbc24306d40c6c82ea9b71bf2ddbbecb1d8f00946d10230639908bc2232fb56c5f67f040961e95b55ffcf003dbdb9556ec507b4a27f48bc7ff209be1008905d80af260c6b8724f70302047c435bb50067306502302829c8d6a4fe3d7422c4b7182bbed69e9e104263dadf361f1f692476a17ee8ad0b3d3d1cde874d2c376e7257ac2e5d71023100f961090d9868594e0d25c6bf8b51aabbe3ed8d428df17429bd410c09308855f6e500391ffa926268f55550da0fc77da60302047c435bb500683066023100ab59f87f20979c8081df6f8315ffd1fac5456eff2f74451f91562e9dfa99ff3b67bd0d0a85f381ba98a3a36e93d68df3023100c36f75aa4478d4b7161342b689e7052dfe0592b72ff8157a03ebf72892ad3c5a65ca597c55aa1113ebab75aa1cbeef610302047c435bb50066306402304fb55b09c7443429f9204209f83bdaf33961b1649dc5bc3a8d3de8482ef6bba2d9b1a1febf95fa23cf057be81f5aa93702305a2e85bd7ecfad1e6a43b5fa488f4ab4e9457cdf0d352c6da84c4b5f4d8e4a15c9c237f15b8d007afe82ca9a1843825a0302047c435bb5006730650230740d26b352cd8a1ab546776a899ecf91128a9b82cd3dcf488089f8224b38bc7c022717fa7b76e7cb6926d9ec831c93a8023100b7823259f4793f66e11375edf4770b38c6c01addabbeee75440688ef867b57d9efe560d42f31c812f93d520875094eb60302047c435bb500673065023100f9b4411a699c902ea8fbe45af3d77d62276eba6a85c5824e22681badb5629c0195ce46277a9f4ef40bc1c8e41c1cfc15023038eb08282c6d0798407e863fa7688faf5b556bafa7afd948aa8cf2f1b36bb7f969354d2334b4d6e8a6fe7adc259900550302047c435bb500673065023066859c2a5427cca11115b984a599901936d31f439bae01dfe29a354d8aa897e2c857323e328f48b5ed4f2036d78bd556023100e5d4b6d9f7fa6b566405c01e76216824d47a5840ea02040aebbf11ac6c0ccbb08d3775a02e0e1fdb0ddb6b776ef2b02c0302047c435bb500683066023100d9122158fd49018ddbe4bbb46c9a59ee87c76c0e856224a41ba5f64b6ed425101dd1ecb5674d0f7e83c5a34e87167182023100ccb95e15536e5fc3eadf4e631014d27387a2453d6df7330a6e5f6862968dfb7c97bc3be545e01937047750b99e9ce62f0302047c435bb50066306402305e00324a6b6dcada53eb107043ef14260aeeaebf65171fc9166111b7779b07f2ce61c8ba8247215b66f005f715017d1a023000d1174032c2d67b9dd7de72e33c9808c4167057002b291c3dfd5de6d0bb440216908e2205f20344470a9bfd6b6c803b0302047c435bb500673065023066d4bdf62d339e9a9af32bc210e18298e61822d9e2e4bc2f9713a1909a984ea5e1e6f24bacf64c1b901829d6751c1b92023100eb4936dd4c03cb1910e63709dca7297e873c964bc0b74f04cc54468fea74cca750f0686f33349520797075fe1b85dd7b0302047c435bb50066306402307231d3cfbe3591dff374fa73a842c556e89ac3b32ee72c55a7899612efdf8105b03b048b46a8fb0727ae0a2b9a9485ea02306472f209761e99c55ae6386c0345a23da859e10f7ba44595b09558669d48a1b0c83b0178e336a9f1a9e171080412eea40302047c435bb5006630640230350d3105cf4865f19c235dd741be93079196c9182f03bfbaa81efa50e8c228dc28d0f7817b930309212ff69bffb2eb8c02304554962c18beb425dbad03cfef8ccc2934fb36e2fc9f3d4448e1a178fbbcda9f3f4ab2ba8d824b8c1150ab0afa13c5f10302047c435bb5006730650230479167e91800b4b71d814234b4e28ddf6edb4391c8bf9990d1423b6fad91bdf7b102f63f41796658ea65b9e8ac8405a902310094c8850b21d72e18eab63240e414c9aff69fc046df2b74eeb425410ae08a583cfa818ca9d1bdb5228ebe4939eb47c2430302047c435bb500683066023100b241abeabfe90715c03148f1a66136bc25d7565b77d2c9648a1bf5f2c08afdc176d84b3eae87c7d4f27197f7b1769314023100bb79a20f696ac812eec643bd2ed00db54e052259ec421631a3fe050721a8ebe82651ca55d1bdc2fb3d32383e1ee444070302047c435bb500673065023100b70522837d1dc873e756a98c60f6eb4788eb9620452383824417f9606f45674fc7587b07f15c981323f74507fd0f466a0230700aa5afd33421175845c48d50c1ca524c722146bb5d77700a51a65078f6fcf78f5c6aed4d57296ed8ffde59f9796fa30302047c435bb500663064023048a38b268d271887b528d629fbdb2caaf54d37480933c7213cf2a6127899d0ace27647dbd082f24cc7a9ad7b4322897d02306d18ffdf98a657ff0c0727a003ed3e97f570b4318c42fcf4f8cadf50e825d2dabef9182c0a8f8d2625b089c5b43f4c1f0302047c435bb500663064023100b29c545cfacf5aeeaf28ffa7e63a6d0c90fa8d2a97dd33d46f058d09461339cf8ce7f24d8e14a1cbdd426189f7de192d022f613d4c7899f353953736dbbd719041ec5f0681fa0e870f4a6a46865637a53244bc57e467b79f0cc4a65f29a60143990302047c435bb500663064023029c15e5e2d27b5f6858fb267c930eaf2415f05b1d322483829d3161194830be95c050e37ecdd569783e7f6a5da27c41502305f764554737116d7bd45bd3130bf910f2aa08dcc97e56b63e9a2472b059a592d248ccfeaaaf8d027d21495dabcaa6f3d0302047c435bb500673065023063ba7793a0a4c222b22596f47011e388c85880742dfd4346c381b150dea8ff3362b0884acabdc5354bf960d9ae038e06023100d2c331d6aaef40207a22a32163900c23b4e316f8265b9a08b97ffceba60ad5192c2ba163674143ac3a7cfb436884da370302047c435bb50066306402304f999b252974ecd726754b5214f3d79807906cd7b78d121ddf0d5f134e099d534c15def87d5e437c9198be56439ff31502305e231ed64bf40f84f6d94370deaa75fa1935382570b76d988da4ce793cc8935c27a778b4497da6185742f212c9691fe30302047c435bb500673065023075141a42b1f38e16199712195a8bb52a1ada5db2ae703bd8c860529b531d80b3066eefb235f5901149f7597fe3d814ae02310094472546a77707f92b29a793ed407988711e1d50ecab0f5e62bfbdd3824a8d260d1bbfd958f700a124027ed21960963a0302047c435bb5006730650230165d498c3a3c538164dad25e53e782d22ab40bf4612ce50fcd8ca931ad0cee63e390783be6b94e1c35ce72021f960ed8023100c9a7388ca7ac4c806a8011498243a98db4a4f8c266594124c0c10865a32b4083daf136df53ccc318e4b6100a4519ae100302047c435bb500673065023100d634d9d05a02bfb9f39fd206321f8a25d76d3bbfbb80ec0eebac57dc2742d3766fa9429d897790f827d8a0cb937f0d5b0230678a63b7cb0071cab94acf8c45b1343faa17658f89283802a183ddd25365c9d05fbcbe30f7306ed858a7787e0ccaa8a30302047c435bb500673065023100a76af82ca1614b76df23437843828b1e054505aac72a6fb7b60050262364f8ef3a3c4671cc9fa552f65a836b62b4c2a50230052d691b9bba00e704d514af5a79ca1f864aa77c9e5abe356dec6a148b43b42772f0d9cfcb09e9e0f4e0c244bce11ca80302047c435bb500683066023100cc42a077a73c59b7f6288f98246dbcf3788195c7b27a1a54693d7c7d0716ff94c11e3b93fc81c26d17918c887ef22808023100eebf05c0ccaa29b26b5cc3817528e4e0b0fe9ac06b1d658e8aae6120c24ba4f825b549e8da5983f0dd34ad972c8291360302047c435bb50068306602310096a43aee3369e09047253680a164426003f596e3151804f23e647e11dc9c20c5a2aa793fe903e11275d94e3d71029313023100fcff53d3f2170a1d7182d5b057d011929900dd56e993dad4234fed25e6ec5082841cef061cd0c92f46866876909967d50302047c435bb500673065023100f4a687c4903dfde0d54c480a556bde039cdfa9e10b0958ebb60b158007f0ac3c056fadb254ea2e135ae96e41f9af3490023071709c9285a53f31b96eb7c5ec07a0c51d833b1d28c0212934fa8009831b43cad44f3a8fc26b5417ae739cb320e7003c0302047c435bb500673065023100b72bacf20ae3a01d23db6846a37d6fd827dcfb6af79dbcdcdee9db820b99cd1428fa8d2fa4d969575dd36a45806c82870230383043d135995058fc737a7c89b1fa852e8d129e0b520f5ced20cbcf18d99ddc432508936f38d22e5cffda089dd2c5940302047c435bb500673065023100b0495af194ac146076b52e3437a4bb07ef6912084f98aa677db03322f2724be7c6d4e40a4b87c0dcfd3d57959b8cf6e7023042d16f0c1b4fbbb579f650e7dff84af2cff41842963cf53a4cc32ec8bce5f8b8ff46cbd2926e6b9bdbabe31fde9bc10d0302047c435bb5006730650231008d423bee9b12546066df75c6f7efa00c42cdf8e98ea8cec4ea839f00e19d67e122a3eee729fd849c1987139f79ab74dd023005a69c4a9a906405f140471e6d0d8ef2fcacb2142d69e1af4fb4e075aa072f68fd8c5fd71e7c122c2a8fd5b3fc75b0040302047c435bb5006830660231009d1fb004eed83ca82d26b59c50b41c44fbaa43a22266df254d41f24af8e57bb930962b834e4bd4807a92071e6e4048a40231008ff32c9a3c3f5ac7f8d89cc7579ff82e60d6fb5f2034aace45fbc5a49d161a0d3b83103b9e07bedba1a0816ec01b29820302047c435bb50067306502303d007a507b7982ad04cfe2b8c9ec297a8e51e55f9d4de2b1e6dee009c02c95f827d1a669842736b864005e8888b639c9023100e43b1e034acca109f2227f0e20b901d8966c16127e6e352df2210e6cd1416b71d2f9a4aa8fc2d57578358c4fd9ef36bd0302047c435bb500683066023100efc1e460175d4fdb6692a32662afe3c453f80714a4a9717dabb56bb52712d1ec835f09559dde3b9e7c472b1f3821353b023100dc62cd2cd0e05545c0a38d3d4ad1150c6f286bdaa3301d862c03cad379462445803e4ac479c969b000fd14f1b1b800650302047c435bb50066306402303d7bc8af31f3e9da8df78c08eff3962aa3fd0876eccb2fe07961fc98a954609e834f6593c5bde6c07c6fec3d969263bf02304a416f12c7802c76df9de6d2b30cadf31ba3f1cd0b0556038dbf1b0fda2d99fba634615ce080b0ce7f48aabf61c224490302047c435bb50068306602310086441d2d5e689c8dff9a7a76642b92bea6103b39ddf224a22fc298b9f43c4d5c6db72ab7b3419d9a82508571023961e9023100fca73647f87557efd6679c6a3c8bc5c030892191707ea626653d1385dbd570f8d4bc9d9b94c0cb59ac1ef9ce9a539d130302047c435bb500663064023060bcd58d589c7294aa6b8dd5f2c4b62cae44c381777557e9ecc614d458ee78d03afa1d3dfe6eaeec81c4e9c6106a2a80023053822554b70a3110fa6626b3b6d54abd2e821ae639a6da97de954f224ae2870d9e141fa663c45e9382c2a83040773cee0302047c435bb500683066023100d76c32df9f299763eb6ba51a8f3718f59f82bd2c59530e864e970c667d33cb7286493bbee9d2c3fb7ed99f4d2c1df4730231009dfba133616e92dd840cb963d89914f6c7e5fe28367d0d6890b48257358a62b0443aff03c771ecfcf70ce395801c92870302047c435bb500673065023100a12c163df0a2ba0f973fcbeca0302dc97e2482a74ed94cad63878515a7d9772f10b43bc042f7fd0556c02b3a5a63140c02302247ae4448c8fcd9e2d4a7b5a4400f4136e36a2723b57a6c7b4b13c1e2a010e5fab354e5d6c8b54e82cd1ef51f4e55ee0302047c435bb500683066023100c22bfd8fc5fb84afc068243a5d1c8d988e8a1a5ca5ab4d65a7bc156682a5b5fd52a58dcfe9012d1b54c7fccd835c97bf0231009f69b42a1ac08a1baea70179c3f343c35d5bbd53c81dd52acf9e4d5958e63477600302f8337a457d6c2fdf12df3004d10302047c435bb500673065023053f0b66a2091724da4663d9b280764786e417f9bafd77aac0b6a26ea733349b5416b53ba9d0a0ef46fe5292f6b5351b8023100e1f6f1fd338423b7c3f40011d82b3dd6d4ca80722a2d79c28a7b495e050467dbad5addda2b08162d023626b1e3f3662a0302047c435bb500673065023100c1a753419777c26823f1a037f478b55bcba61fd9af6d660de82bb8cc5dc973e77b7ea613316340d37c24dab631585b3a02303c505f3eaa3e1fb7c0f755b0bae1ae447d6e69a23784afad52b0f234a73a17ab5129885fc4f9c51f437a7681b91060ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310097f7de0039baf92d47257e387fc659f4e53ae70d4a9b1526d05c1e7aa052d0b663a75bb35910394396784161b9ffd33102301237e9fe6d761c7a597d09f554b1c0d3fab283d48dd6fb4de4984ba16e35cb84655c98702ae54c881b6455611b83ade00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301bf4f35077bc0db5df73f36fd2466be52ec870605ef3a5296c0d787aed6fe5870ff896d948894a10e5d860d9148584d302300881f90bcc9b1b66d26551850fb98a8136b86a0ea70cda87de00ae111d52c2ed143c4ea1742a78b86da791459f87e5ad0302047c435bb50066306402305a2f5add435e6f083e1c0436c71e73e289e1272c1171e98c976ce77f24c2906e13d003aac0056a0134a7efc46eb2f2560230415463f4a67a72b7102d51eb5ad7fee8347750044d8bf82b19c603abd7d8e51933fa48afc59867b9ae68dc6dc2b6ef9e0302047c435bb50067306502303d61a5cbc39028637c5ffcf4808e562e3c1640d03212583183e1aa03e68c9b5483f0321667e8ae2ec00a5eebdfa87ac0023100db6ebfb56a2cb542669ed9c2189f7125fc8daf736a7bdc906fd5a085e1f61b3782c993cabe9da0cc6814aef5b8195f3e0302047c435bb500663064023034c79d1683b9506dbb3c5fecf04e1469b390d9a2f461421db3bb8d4017ab1711de7823f45e3396daca70df658fdd678e02304b3ded66445cb08762b3d6f5ba945ca12894619b07f7bd15fa72449469eb8dbec3dfb55831c6706e41361f1f2f883cb00302047c435bb500663064023021ec3eb728dd0676bc50d54d559f8648504fe08c8fe28cf638d2b430f64405a36c213e84b960e0a831e29de774ffbdad02305a08e54bfa282b705f421ce5a36ba0fd06a9895bc4534cb328ca4d70a003e7de99508c0d17b22975332ce84e7af8605f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305056b60fb4c4a45537f1abb58a0f66c655f5384387d0c624f185038705e9af0a17979070ba521ff3848fbb5500990604023100dc981624dc1a7490eb703e11eb7af4a111ab4afbbd25fe39f840fac0ad8a52e3714e4268e24e354e9a41f7229b41dced0302047c435bb50067306502301ee92faeb642a806005823ac22504acd2423d6f87a7ef92226122669477d71ce9382b773746499caaa83073da7144391023100ccea133e0e1473ef1db4b7de11afff2bb0d559e01c57b1461c04d73daa5ed509b40b26561cc7fa19d7ee95c19c81aee00302047c435bb50066306402304939f43d155e31e22d206a097fa799c599841c2adbcf0afe99b99d23a9c49b72a50fe545fbfae17ef3aa644c1fdcb616023014cf8ad281cfa847b6c51552da2275a85696bf721a21a2d9bef6cea6f934cf0e7094e5d5296f8f0612ebc2e0361e953e0302047c435bb500663064023016e5f22648e7b145d7a32ad1d4fbb980baa04120f25a5b1a9ffe6c84547dffb6dee7bcf13ce355287e0b37d5e5f84c2e023055a91445ffd37069459df7e2f64f0216af723a1ab99685ba53691fe7706b639491bb213d6f487637b973be6fd4372b620302047c435bb500673065023100bde1637a1cfc2470ec15b4057a82227aabdddb72ba10b799c5165e316e6886af982ebafe3ec889aaee90ca0eb3c05bf002302456f5841dc639deda1bdf30278258669f9f7639b7851f4d29d7c848e514e7f07e79ab1a6e9a9181262a1afc5f7e47790302047c435bb5006630640230763068641e234a75e28a9a93f807acdc9b44a8b37039045037da54887191433bbe855a56f6ed18d78464ad35a4a171e902302a60ec4e79a9a29a2d67310b7f8db5b090be44eded17fc02aeb74aed4633b1f1fa37c545303b121bf6867b093b4f14f40302047c435bb50066306402305b68150d1398d2e0e5edaac8a36bf866c5715d2f72077c414442d76d9ffa65d45b74bbc99aea87cc8f426ee309741fd6023069fe115764f3464e6bad43ccf3cecc0ced4404ab9a4e1ff1e71191e362bc6855ed739675b55af4bfadcdb19759ee13280302047c435bb500673065023005e93371cd5c996d331c02472dee32e217f3f187f818d212f913a431d3bdae88a3e52b2884b939e8a4154fc21b2aad590231008bccb9ee17885793dfac57e4bb3f79e1a98dc1cf0e0dcc71839939cceaae1f8c0f91b3e55fb99d6ed92159b3b927affb0302047c435bb5006630640230764988a860d4f43b4d060f38977ff00cab1a9ffa59545d8ebbfd3c1e0c570222d47e82388fb5a45d048e0cb4dcac57c8023013151f39bc0cd79bc029f2a86b2a0a27adfc209691f38a6c3d6e33a44b77b810ed5a9ab62d29228b0217c33e0a6d09710302047c435bb500683066023100cc64b134260de09ab1859ead931198ea11a04aa34561b38ec88618fc891b5249ff87d9fe360391e245684910f298fd6f023100e93626986f1851c42b78f0d2ec86eb8dd7bffb79cd3e973549a83810747f6221849967418e48d4aa3fe651a592f9e2fb0302047c435bb50067306502310085b50d449cfac6e3f16292e6e9010d0f1f354f84c800ac14649a6e3acb7554218bf173e8bfcb91aa0e97f243c3d12f4b02306285ef7b3c2be49e65f3cfb48a8702e576c8753e74d6ecd37ab85c0f575b0ebbccdbeae3c380d1956b3341bc8ccfa6aa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230770037597930672f56752346a756e7d20181fbcecf97f719c71bc702b47c3caec7f3bfe96dfee7d8286dc986a3d8db4a023078712d41033347e6703db029c70d3db8ef1aeb3b752209703c4f1315cb30e1d4a6cb4c989a1b375ee52fb57b3ab376fb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301cea30786db0f81b93b830379d901375270239d6545ce9e84ea07cdcd9b1820b73ec64170943dee62c0a0f4f154a54b0023019df526b85a7aaf20d2cae79613cdaf7534b00a4f71d8e6f1f5f2cdd6123f7c86e58db83bb645292dc0d987fc155102c0302047c435bb50067306502305510dba77a8de1b1be1569ae04b1a24ddca3e42e4b10cb0fe1c71bf88db175db2c8a5bfdeaff676bfa57e3b43e9a5ea9023100ffa278d408702b2efab81fc7187964e8b7e3be0dd7c266087afac0775c4231014e8237bdb259877031f6066793c3cdc10302047c435bb500683066023100f38c3bb566ad8d34eb3bed180d2fe564c28b7c83302d950f551c1a9511769dcb3bc389168a6d1da58e1bd78d1cf0c60f023100ad6b84886039f7e51c775b94d2f9df687e61ec3f76051dec3f0474b0b6f76ae4556d0bc2df99e304b3d2c4c629d257fd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303581f0fe372ac997887b30a2cd434a4adf82956925abee4f7bcf928fe58ee6222f9d5929a2c302800f0497933dca4fbd023063cd06d7051f99411d4f53da4d8a680a9968eeffcc02e625f73b4479ff52d28ab267b67cfda3cf897a76fc9046954e470302047c435bb500683066023100ee38ee82366120ddf7930d92b6f1605f75faec7c52aee54879ea24acbe9f18aab75481bf38f60e86d4415f08faa050b9023100a07c6907b179ca4bc2720f6ba7024dda805b20a56cc6b1c6d98faffa5868456e06d9dac777459195c84ff4d47207b6a30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008bdb179a56381dc667cd674e26261bf87ea26fb77cf09a7870f7ddd78fa7518fc38e0bb769a9b6f221007e1bffc3d4960230650b95029bfa3db7184d574723ad22fad485609e1a9bfa91af8d8283b07db9497842609b18457e4c0e9b54e04d0ad5950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a0b30b2d0a546e96d8f3eb94fdde90eb3347f5f2027af6420083966f21c1f9f35671b3ec25fade47409e4d39c38817aa023100d256a4b36d74c81bfdfbd310624c3e2e7923acfaf4b9cea3db3e680661c268e806e9d7dd797ddcef4a8b619d8ff4d0bc0302047c435bb500663064023015f39ef38c5c075512faf611942de6fedad2b5aeac835b4944eb7d0466ff724c3a731238ccf29c0d6470061f1cb3620802300a2dcabe943165ec42689ad5c3348dc9fd5ea4177238ed9ccbe5f2b88bfc5a376b5a13f7ae7ef3a925f3c8cce044a07c0302047c435bb50068306602310088f8cd97e666ec6e07f88eb2d8797a2713356e91f52bde753ba0d8dedc089465928a0489ffdf1f59752703193cd4948c023100a91290400db3352723a7cbbcbcd3c8ddbe7e6d7c71a1eeac50fc9a5597c20df15a8fef74ef7887bfb621a7aa1ac6eff80302047c435bb50067306502305701d562c3f6bdecfecc4878a54b81cf6d4b72a131a1ee97dc10eb2c6f3831baa654993e0585e5437655cf32fc4f5e76023100dd1978b769214c180302d86053459a512c70cec99c3275e6729d79562d1188b2ed92eded526472f9a179bae38769994c0302047c435bb500663064023017e608325841fd91b57bca387bf555d9070601cd12c717a7745fd6f8de17f566214239f1f00b31878b4c9ebf35e91be702304d7a99d998a4f533dff185b72132e3f8351cfa883eec1b005cd22bd9116b9254741f4dd910336deb670191f11239cd970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cc6732db445c122be5ce48b0957db41591ab063ee7b826c030f40d1cdc0c4497b11aee2cf01755780f6176808580b51702310098a3babba1afc4c02cb45440f574d36db49a32f53473edf204898ef6b2e2a26e15aaedacc858cbd8d02b3e6e8bfa5a560302047c435bb500673065023100ff522ceea72a49c1be0dbf7abaaea0a557aa162aae210e71b16ae35c1d4175939e8df46b771c6b2f02ed31a198e8bd11023078f72e910f8cae31c8467d0229d52b1a402892148cc1c9d5f8e483e03aad3e84a38ffcbdafd97fee4ad92016da87d8680302047c435bb500673065023100a4cc16346b89df2e251182733c8fead20ecae8f0df1c5d5ecc73ba6af073baa7b67d4118d7241e5f463dabb6ccc3855702307c035897446773e34df7d6a416e8f763b06c5b8633a51ffcd325d4b98767bdb2290fff2e6461821399410530aff8d0aa0302047c435bb500673065023015dfb46f4f1202b2571f153e0758f5347c42d0a4023a760013202de016555b48b24ac13b01269a7940f8ed455b4eada8023100fa80880f259a7652371cd4f009d9ed156926828f7d49813847cab82e25cc55be3cc4e2c32e15742abdedaa1f81dde3090302047c435bb500683066023100ae8db63f0b0aa67f1a1f8ff123cfe4e34f1527fa7db1654d6d2a8c7b4902830c97402441a447d38e7adad0fc0cc09cf7023100f8c58999d56859689afce529ef7d1350894279b9f2d0d1adcc25ac4bf7888a148abc241b4f019078ef7c543083cf3c420302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304569284c8f56d2edde115f131d7aad1cb8f47d786d27a0ac4a3727502d9259fbefb3fd730503062ff94b032469a02db3023100b155c8f4c04d75d49d9df3981b8f15e6fb57fb99a27587aa914167489bba3872ce0ecf9365d10f84811db31ef6adcd850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f63378d54a7b81dfe2a9cbeee435a7b8cb7f95103a61aef4ac300c7cd13f6d1ff228862a821d193db422d11e7988614202310095ae54a75070876be7483a63bdfe24f90d78631fa9981108c4b41f83ff94e9b78dbca1a2e53b5a885db18fd3bc4ad0e40302047c435bb500673065023019f4280fdd3b2b5963de9f92247ba41606836ad113df1c574a5f968daaeffa8db0383c3a30e0b9072cae0aee418d7722023100e99b629fa961328331e6a05f4a7f2607715e686dc16705fef3d8e1135042694c96fd62b2dc8300d922f5950431a4a9920302047c435bb500663064023069e78285023349b5337e6f1304bf1e0144930e5cea148d4e639d0ee2a3b2a02d9f58c6bbd79911d417c15dd0351b1c04023000906dfeb152ec7e78ecc8adc514b80747a527ecf94a2b4a20455a7a78498e0c4e52dfc5f1daa00b93800258fe0fa9df0302047c435bb500683066023100ad3ec538925a702b940b05386ad8bc12c055244f78efab7657eb664b561514a05e6a381e0f64de0f217906492cf887f8023100f4ddda7819426339ddab81558b25cc7051ba52eed6841d07fba71ad68fd5d6b4d286bea121454df1c2f38c1e23e5046b0302047c435bb5006730650230611e121772445534538ab1117ca93a1e1e4520e8f4830aa009df9d31a7c9497acc455849c65a8d6655f7e91e123f1e6b023100c9a72bf5d9f6563295fcb2135323f4105cc9fa2cc4ff746bba387da896432edbcd6209cac5a0c1b7d6cbfefd7788c25a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d46afd9f08ac017200902f2b915a2c5d0fba4993f21192b8c1464e712c2aa38e432af040d039fe0dda3ebe1219eac3c5023100ee4bb9eba79903ce9a0bcdce17f70d3f6fa5141a450acf4e4e3c574cd0ada756fabb37ac8d7233b6f33f0371de5e6a4d0302047c435bb50065306302306a3bafd3c4bb93390b2bb3071987d91e8ce68742ae5ca6b1e49bed5112fc0bb75646737907b10c701c3e1aaf6b76f254022f7933a2e668a016ab35eb26df388d2f3ef56fd45da6c7f909b95034db50cd642b09935321675fc7369a09aa0489c72a0302047c435bb500673065023100c899328a718c2c723715ea762e5d43182f8cb9ee245f7659d0f3ed2e9eb623c7c9df3015a1a12672a00067307e2b05af02300a551a550fc37e8cb3c2de3199965303aff24472a0dfcde37ae26704be2325c1ad3ac7b7767f86be5d95b310485ad92f0302047c435bb500673065023100ed4c665a0b2eebd5b3679662d8414db93523cdf30b5d725e6a10e5f123a75f47f1f21ac00f534fa6774b5a4c92fbe06f02304ef5961de73eab7aa946da25ae869915c84f0ff30e4dedc01210f5787ff097afeaef4eda73c6798cecc7e94c263868160302047c435bb500683066023100b4a4a623018351376d781a2f34d4a1daf20ec5c9daabdc56dfda53341b3874db56507513e042c19bf1c401554e14bc4f023100f2717d9937e6709041c3725c9e15fe8cd8b1ca3845bc7392c2e16d4c27d39e31a77c1ced0c2519df270e1768a8a0b3730302047c435bb5006830660231008fe21e828ae5f5a6d1f6b5e3789aa9547cb1667e286fb093c54af860b3f252f4eb8b7ce6ea113227502b1d976976b330023100ce9d73dee34c155b208022d85a43ce2a7d50ef6f78bd2975504433d45156f83c143d0de5a1163a4c55621f7a87ff5e5e0302047c435bb500673065023100aa4040f21761514c52060af064f80ca2d751b5d5939155da0cfbec9afef605fbfbbe1807e8990ee7d576ec7c0acafd1802300c58a217da60ef4f04b9be282e5ae539194f044b47b00c7fe42f067a991e859ed5f18d9770db8e34c240922a8f12f51d0302047c435bb500683066023100cb27ef96ba344ed029ba02897da09e5bdf025f90bd5a1d148732f7ca7c034d8acd32e4acab9e73eb2d4c59022e679b450231008db7477b6a4f1a3ab2bea2095caddbe9725ff500f40763015ef473582bd8c6717c134c96e61a195aa1ebe9757608ec5e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d1c002763e530c40276be76c9075cbcb3c4263ae5e3cf983062282cc2fc6812641a4633425914946218ab1bf51be5c9b023100bac200c7c7c92c13f1dffdbf8a6ab5ec1dd8e143952a69ec25a8b8c3de5f5f18bf7d6f7d0b794457e73e6f9523a69c410302047c435bb50066306402301a43821469b122bba7a8ef55281928afcc91b300a65e556dc15b3dd7e17c17c6209d873cb6386ba332acfa0ef13ecd480230509698712e62b602b93880fa68d1e694b070c494233360c11f7a68423a5243729327e8e144b7a3e8238462e06eeb77a70302047c435bb5006630640230180fa04004f32c88f7d2ee65300b05d188fd3c16c390193ae3afc174a9f0cc1e7b8b374752deca52eacff8a12b75b76602304c094b78fada25b154cde4345dc75feab3fad66fd949e336ebd0c8b4e14ec7e52030c7a1af505b31e66c1e4b6e96034e0302047c435bb500673065023100d1f188da07428f7b29b00734e5a1335adebd2f7c8b2a397112f6d4eef41fd24ce731b38b7cbadd20a391f1481a74e9fe02302973c18fdb740c663a35ff54e400cd4ba3c0f5ee60a79a5c89521cc9b704b873fb146fb2bd2a958b306ea4c71b1c671f0302047c435bb50066306402303ba4b63fe84211a3a63ef9e46d080bd131b2b908adeff6cf2ec18839be6616aa588e7cec6ec18afb137e2f31537956d102300fbfa96bf34d7e1b0b7f39ac4bec4b3f571da5b2638a5a4389458de264532987e7ab6074d5656c57260fd0993cf430e00302047c435bb500673065023035a7e6c98fe415256b7d8b2251372184e354d63b7f19230c4163f0bdd6f56a3ed03f4a641c76e346f6896a8f4c487461023100fbc5d8657786bf083b67281ab4be7a45d8189b907e4b8995919d6a9d84fad67830118f77767d28986dcd59b4ea4becb20302047c435bb50066306402300d6391ac865cb1aab45a1d307481341f544820480415393445de22e1e531b1e8fdc926ce0c0eb10b03a844c873ab130e023041a11036e9df2d686b5cc53a2812af40a6e9cc3e29e9d5d01ddb4c509605fd1915db31e2b45f62ce9dea3318a960a42f0302047c435bb500673065023100c9059ed37df036b717ca30385781b8190e1f603b11c648f6d08bb1db1fdec75d23da35a09223fe1fbde298165b58be770230724bdfde80e1a4578383a0942f5f57f67bff473fd64a9dc606618efd26d023275ac505de2415f507f6fe0c9aff482af50302047c435bb500673065023100dfcc9275a32144e301eea0c0b0ac05b2cb219e5c7506483d92a0c04ed6558a6c47ad32319d413e1379367e6a73d8123302304fdc430fa6f814557edb3fc2ea0237433a8d1e68166ec9d52a4e6601690b35c802c969e302cd6e6857b702e7d780bb020302047c435bb50067306502303c1d8c31027d98acb2a00212b9a138adf5b883e03eeb2f47dd835a2389dc61fe320318ac84d0e31c088110f8cecf43af0231008f117fe165ad098a476df8ed9771771d4bc1995897faff3f35299f8163f85831ccaf2ce7f0e4cbac7020ff92043a71650302047c435bb50066306402302da67856583c58b42ff8856d67b4307e8f7a4ca18cf47ccb2d5db9149e7e39db3b2d3b61fcdf7d6da2f3fb95fbbabd12023071c59c1a5f6bcdc609eb55a198fa5baee0ac2b06716efcf5d19d6d770ee8393dbfedef0c65ccf62682a7044c6e921dfe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303b17d12f5d8d1dca3ed6bcbd0ef2b4d861d9ee8e59756fda0e9b06b7cc489c97fd1908b8593e88888dc0cbcce00f4303023100caada65025e1a630d9cbe8755960a5ef35e5b4f65630aa4510f8641400457e5b720db5864814a17922da58ff66e100740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fd2ddc4d9d4edf6a0885b5624553ca59eb3013918df618bef38b8c0b80e53572a5a2d133798cd22028e31874b275ac02023021bc3b5504b1a4623da9f46e4ee0ba4286cc6d06da562d0544c8070c769cdb80e8a7c5b49886b80639c0638d793e6eb80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023024365c1ecf148d2b3847e3166405c3b602294df7484717bc644794ed2391163962d13794ae81b5d0311cc2bf289fee01023100e444cbf8787b4a86ecd150cd7d0fc2242b59aabb2e41e9689a12256c3ef4787571bd54df8f0cbd59194fb5d86d5c97e20302047c435bb500683066023100c6e9604b52a02d30b645a83fc4d4641889c78b1f22dcfbe37ee40bde07e23950de191ec186b1234aebc822fbc99fc9a6023100d143209c76b6ca2f1c906b333a88bf4fb82903f85b4cd840bd54b1d40ebbb58fe02da8cb5dd981668e8007e7f359322d0302047c435bb500683066023100aa6d853111f89486bcdeebb05eff2784414697f3c8c0a3d01569c5362f3fb8866a66eb725483fe3f3db2dd1d0bd6191d023100fc3acb65343564b2c15df6661dbbc7726330a4c1940fad4eed6e8628fbc2ff975e43c0ac025f77b654eb274843a3c6fc0302047c435bb5006630640230685724e89c82ff212895f5f8be0dba05f1e5bfa90cb746f2a771b4f947f50092ca3ae563acc02fe7f13d99e0fcc03e1e0230460ec69b671a1cde00f6b7169dcd9a13a1ab0f229679ecba5cf76ef645e9d5c263378fdb542c5e134d6b80cbab07b1b80302047c435bb500673065023100be55e1e33b9fe538ec7b56adba8f93a23b057e92ece1c818a5ef81e5d8a31c91400ff0fa940e786551bc07f84fd3abda02300ba5e42ad60ef5579c26a186e4e008673e4ff6583e2fb935db941d0de2c7ee73e2cff734e47e4d9d31d8dc56dc1f76290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d8e3d94e10319bb8c15cdd3309fc68fb8f72a7d45edb485e20efe8e5fa56a85d8bc7a9a77a87af9f7748765b14d36f21023100971eb4646452647b85576b971388a951ceb673223cf548ff98b1ae06f21d31f259136bf99951307f7400d2ed94d0eb920302047c435bb5006730650231008d2413f7b974a0153105130dac6a16f37fca854f903dafa9430dd7ad77d7a941d8d630df58833d00b85f35af3b26439902300a94589f2da10f35517428a7344b6465ef5c10e1dc115e15eb1b9d5409b77e1ed04b1adf93376d398432d8ba520c2e650302047c435bb50066306402302e89707fed1c5c996ff080987fbea313c106ae11fc7bf01e23174b4849baef0e5fb3d28eb6df005573e73eb0b0750e4302305533fa33303d8e9bf3b71e853194f2e36b0a990604bc6107f9f95440c5f277f737e9173229b82bffc0868c16a1c84d570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d35d746e4e93a36c94a9d6b01a822a13a4203abbd342f0f7c305b1158c4f920c487750658d69b1079bab69e09d28663c0230715c73e71d21878c0ad391b02972afe79d404af1fcb5065e3e309c2e7e55ae2f248973e4d6308117e368b2cc0d899be20302047c435bb50067306502305aadcb0079930be4b0c556bb4dfd3719b4e9807f75fcf31017a2af74f65d90ba4a8dfbdb4b098564af99a17672c1c633023100cd11312b7b5616a9daef12f9488efa96c0ee5d1f06e5a31e2e03d65d95402a969b270ae80be7c4999239dab9b7dc59200302047c435bb5006830660231008fe59ea5b501bb10b80ccf70638f5951006c857602ff35540a4f48eb184d737c73ae259bd28e3592e55bbd25e8600360023100f3be60fa3ac386c34ad6dd3e4699cf9bc9bf0ff8bc08ca592d8c3841da98d4cfbf15744af045a78bf8bc230dbc5737b80302047c435bb5006730650230025a47f20a538a4cabd3b2ad28c5a108e5f5f4855d47239d47c77892900a09a6dcb01f06ce6790513f3adec552c9e607023100c0a766789f2f88f06b0907a405042c5a4fb428a50d5aa20351ec4e748bb7e610dd47ad7f2e8d6a5bb445d112dd9fa3fc0302047c435bb50067306502306d188c1704840a6d3c9531eae8a5891f532194b4958f3d05d8a20bbf4b450ef406656c31ad78d6c43d0ef201a811a923023100cbd11311d7c08be21137a4c098da0e2ed9046c449d426f309eb7c2d0a593d688b921787327e8cb414eed40121913d4890302047c435bb50067306502302b6cec27ba9ced65f4d2eb170e295ca99358c4722eb34bd8f49570e0e8c25e3557dd0f48e27068c27f4cd9f9c21d27f7023100b205b87d14f3322d42af51570efdb27697b8c81965b5c4458f0f759f6b01f60b63ea0100bdfbfe5c0a7b2f86c184f6e60302047c435bb5006730650230282c58c3c3ae8d4a387e0b7196e86d381075116028a174e405433d548be192a5603ebfcdd3ae904b5196ab0efc634c47023100ed88c4a9bc20641867d4da040fd93c8716be2bbfe6df43a95d806f1a043863916ef0c5ef1107541226675296f50cd7320302047c435bb50067306502304fdb3df92431b21a87a9322c6a934b1cd100f86cb72b90ac4eb643777fb223f1fcbbc9b25f641a37a15ec60181569987023100a1f110810e810f16c998e17be4819da5915f9f4d1fcf5c28cc0d310065322ec1363bfa5a90692eb4d902b053e82fd4450302047c435bb500673065023100ff025638694327f969cc88cbe695766bbb9b5c791e285273f2d09bcf68efc978e63348b06c091c0848161dc8011bf5c802305b4b68bec2d0fbef5f67884cbb6b844b0c8df0afd0a6ddacc0f2fd0adb331734f10694557231dc1626613eaa2488c2cd0302047c435bb500683066023100d7bd245807755ee0dbc598cce540cd2de961b1adb5edfd7e37d0d75beeb62d5b83a002489d741a72ae5dcb93275f0e34023100bc8a3f53eedbf0ba5df3f9d9c17cd8653650b00c7b9fd4deffb74b1bcc84e2886761324edabfeeed68da5eae9786b6ab0302047c435bb50066306402302824fbe8783c4fda3f945dfbd90214bc06049ada1f1f737cdcc8b0547f4c31aafb929e1930d569adaf577964e4a993a502304f4bae0452068ae351856214a358fdb8d33b25a64ac5cae2b61d8829e350b1a2a0586acb281729cd7eb9bb59a8ec6c450302047c435bb500673065023035bd8c573cdef38b398dde780168e58e59adfdd02737834a3126e3a24c41698215f9a5c3428a243badc07c8c88dbfd86023100a71435386c482de147ef49efc4818a7da86ea7f72be1ce26fd9abd39452dd1ab4ee63a8a498fba018434fba7590739bd0302047c435bb500683066023100ce3c28366989c87b9bbb9b15f8e5d5eac9710d7b84c141eb1a574659324853bd605b17c63ac8704d6f050a3297878487023100f7216bcad897fc4d707fb4ac968e34b1ad72bd819fb3458fff4e0a9214f62e4aebc989742d3df5e7232bcddf6eb6e1d30302047c435bb500683066023100e36c7da1d0d00c81529ca1fefef6fbb587fdcaf25091a9148b7026fb1e37692879d8c52131700e9c6b8f239a202f1790023100f156bafc7db886b50e6295170aa66d539ac73a3eefb9e77f3d21daaba4b74ffc7421476f488acaa418f7f597f30848b10302047c435bb500673065023100cadf4f0f3f179f4d2194657019ee2ef4688d0cb6df0bb2e3e7c10411b717685352fc6fb8f0f1b93382a06969ea932dae02300088a94f328b66cc8d022538d3bd8e259a4700848eab24bfc16050ff7afb6caac857d72280c6a8acd6964598192021f70302047c435bb50066306402307e5ac39500e7c166c3c0b1024253254e3bdf3f923b1ac16c1cc3f48b3dd1907c172ce5424e86170ad3a6c10ba30467b402304c433d8ef509283af8c08355a8b0eb6790bcc8deb431eab9b2954a5cb56b87d5212f895cdbab8fa2dbaa824f880c40ca0302047c435bb5006630640230295d973dd986dded3dea45f1cdcdb76668e58973135480fbdf13f564e4cf8dfb76b8446bfff98638b409ddacc5f36ff802301c4750bb93a4567dc984dd34c201d23dfb0793265ce461defd49663901e0b90a7617083c673444f9f0a397a39fd66de50302047c435bb50067306502307efb73fa6b9e7af43bde3564351aa0526dd13a33a4acb6b11a844790de8ba6e0c485ba3ac8230af3b13389094dd1fff5023100f63d8c5c5f0535f69807d6e9921c8bedfc04f49bc2ec36c539ef688a6c6cb3d9d69ffe989fbc1da5900f4ba726a83e3e0302047c435bb5006830660231008ccaa333ed1f3a38f13b8c732f381d84212d0bf8bca445b3e63c5a9f4c82cd7aa8ead8e6793f48a559e853e1cfa2866e023100c47e67b94e91e2789b65c5176e549832260099f48bc707a2b985344d0ba82bc15abe76e7d45a04b98fea7fa4d99c4e100302047c435bb5006730650230229620f030d0a1caaf795e8239ae4f69d4ab3e149cb5f31349a4070d8eb3a037ad14b86d33eb4b60c4c73a4aea89630b023100b946f32835f21db9ecf58188e4001618dc4951b58ce2cc2236f3fdffb6a13a65e061f127e594107bac41631cdb63d3050302047c435bb5006830660231008b256321a607706c1906d1d3c13762667d92510f45ad470e0a4098b352960675ef1b69327aa289af34797653e668cf040231008c06c1cf551cad678e833c93541299c8daf278a492188b2d02174b2dda5830d1a3d734b55b6d734f11790483ec1378f50302047c435bb500683066023100b25b3ca3ac2a1f05237f3b03d2fa9629c3429e89c301a25df680f8bf405e1b677b8a879ad04b9188bc1e4a69903869ae02310089b289ea10d57b506f7d256fb697f47cd912d1ce4e5212011463ed482fe21a229440843cb7e8d93a9218dbe636eeb79d0302047c435bb5006730650230332b63f501f6d295d479f109005f6aef3389933e654c1e0447b63ef01ea99add700e7dbe49b5556f33288710fd63b56f023100ef2b781eb297c244277a6f84288e9ec632f007bef57a2d12caec1abe2547bb3ee490a570163248b1463feaf98cdeaec50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302977f85caf7b99bce1c75b8d1eb4993973a1d9966622486a4a633e0cf40cdeffcadd1a6125ebfc7672789a0cd76249ad023100cd5dce29225475426558fb49e685d5f7a5347138b2220672ec7e9258dbb2ff5325852c4711e012d298a6b882f45bea8f0302047c435bb5006630640230487a6b5f09765db6283aecb95c1724b4a19b6ad93eed746ace088cf7a2c980bedb175a5decfebd068f8eaa45dcf5b8e2023020507218eb22ae4eee40b7029e5ab961e222099d9f351c21fad7c966a2014e2498be4df0ae9bdddfe6bef6268e5517300302047c435bb500673065023062821ff3505442f87f8730cab3a2d115e13633c1a0a8f0989b89b5d26af08a504eabdbdc4d77a47085d91208c7b4a92a023100eaf92db1ba85ee19add2dcbe6de568546fbf1fbff3f10f74f17bc4af12b262b1b7b20e01419cb956662ab193062981420302047c435bb50067306502307c36a2bf8f70e2e1e0a749eafc10ae56ba38edf8d5cc449599d4c11551f8f826830669c51eea977eaa4e127587e2a9db023100d1c687554b84b9e3d42cc527258755962b2a82bfb2cc6525f7586c87e1e9637ad2655c5f2fa86a47bb5afd23bb97a93f0302047c435bb500673065023040b6c4c96dcfc63468b80000cb6018df82f22bb378ec9254c5a8a622e2da1ef7a57f02db573bda7ef355c780e843651e023100f4ce7e34dbdd7709b69f6b1811007470e32f4018136bca155b1f1fd676452dc760e2e3fecff9d9bb8ef95dcc49efdcf30302047c435bb500683066023100e57339cd0d17294597b6d40a50903be75d80ef689ebf087e03a44b8fbddf39b561f903b144ba71f4223c65f76a98b9c2023100e98bfe057ff2dbf258d4910a3536c315a22a71597ed673e06f4510a5eefc1d90fdc37aeb07152bdac24ac892bde2ba9f0302047c435bb500673065023100cf4908c83e38314759986864c91a61f01f58cafbf5d6a0ab8615c363c050109d039fd669e7cedc698e996609c4deffef02306bb201405f5f560f8bda72885c8bd7c3aef0a3927685b7207bcdacbed6c4f2a82fd0c197ec1557e6395f5df73afde83a0302047c435bb50067306502302bb38d028d849cb7cb06497881503d481a403982eda2d3e2993c8753b6d696f633bd6a1a410d60d8f9ed2a78e18f32d1023100d3f8a9e22bb0604f4e2b7934d41680fa02d794c633f41192a636633bdaf419db723fae879fe6972e7e5edf5435524d270302047c435bb50067306502304e01c7952fbdadd56c4e3638294df956de95fcc67e8de6e173e5aab5a5b874d37e8fcb455a6eaca3774ea549d5f4352f023100954568166938f27e17b9d2dde69c1d78877f87c106c2f75f0aab929bdea6d8c8e68222bbd5f385ca18f504c89ed3dbf40302047c435bb500673065023048e367073f3ed03c4f910016d027f099940ea9273e3bde689dbabdff0ee5f800fdecdf5c253b480aacdc158658eb7200023100b4b0de088a2ff068410bc68a1607e294da6a405bcb55e6d629bbf0c1e8a36eb97ba592db228dc9101973c6fb039ffd3f0302047c435bb500683066023100f878b957ebf1de3a60b5f4a81d09c04985b6eeed8fc5efc3b792d9c05c12dd2f948bb7c2b19d76f4a6def492fd785d50023100f966c241426da8ddbc0e813d9cda2347d927678ab451099ff702073f763475575ea85ad0b76ec01703ac57ebc1c583f60302047c435bb500683066023100aca2168125f8c606f01b2a10fdb04c303c70d0f21e6365843e173dc7a2bbc325c7227fb559ba01573d9fd44464d91fd3023100fb27b7c271f72d8093b7d85551fba8784dbbdd9534e03574226be59cf55ee6ee18fc231b6a9d48906d0838ce96de93ee0302047c435bb500683066023100e25bff09a394e0a0a4505ed8a5e0d47fcdb978ded186ebdc5157d0e58d2d487ba196ce7e0751be65689a9bcb146dc594023100e99ba39f0a5adda0406f08110d61f91c89ea80043eeb3cdb1b38d9f8c385635bca34d0718d400b15693af7f69f866f030302047c435bb500683066023100a20c7dba50d36e4a54bc6c7fa3fcdbfcae2ffd9c667421ea167750bcbb559a23c1f4cba09905f8c88e80ab025de3808a023100c6b5f09dbec04483889d2228b6d0572d86b16903322b5b35c12538f2451f069374adc83ae4f79811b3df220ace5e09960302047c435bb5006630640230103f94b504bdc19afeec6f85560b1e1219a95766a8664dcbfe5a6ec84ca6305bdd1b8818f09472257c87c5fbf439c88a023062ecc35cc042b3718f1070edd0d0f824734c64b2cf004d57d9841fd991505a9755b37bb6dc8f78e513da888a755fb3070302047c435bb500673065023100959b6bb40803fa7b3fc6d8ac9b57527df109045e1ee43a59082d424be2efdfc7e79c92d483d926d386487f93c8257e3b02303d504f74786ea7d912c8a60ba746bcdcfd32a7163c935d1264f829aeff4982e1217456470589f3b59676cad548be26290302047c435bb500673065023100d20529ef1df1d858942e68939997e50aa93357dfebfbf9367f739c6cd95a2b75a491b4397cade1d8dde89a0821bc063002306944a42491b37cbf08b65d7723a788cd5e542e7391f7ffe11cc51c2bfcd6e1b273989780ef1d532b7e79bf7ac3d33fc30302047c435bb50066306402301cad26c32f4cbaef2530d22e26b7215d18f2bb0703305f849cac183020c217249c5c24ea319761d99ecc1d5a2fa4649f0230032fccd66ac38b9ea7e296d5456e33eab42cd9c1d31806c9e9186c22f6561546c6cb686cdd89eb1f48f3f2de2bdd30e50302047c435bb50066306402307bbf60e63a7868bb72db38ad0b5161a8c8adac469af9b37e72542702ff1da076a8140a8781338f61194f0633125fbc65023073b80455ba21b136caaa15f9a0ebe398810df19eb4961d282024dfaffd94d846ddb819b229b015134cc2da64bb875b840302047c435bb500683066023100f0e58a63083be9a5f6a7ca397bfb5763e421b9bbf3d5627a8baa32018d421698eb256453a77b77554d728dfd5e654ed4023100e1fa43ba3e2cea78d9b252a221973cfe26fae656b87b8a7309ffbf720769e4ae13d1b2ffa26594d9d72a77c2d0ac96ec0302047c435bb500673065023100ce52d1f34ba48558ec33fb0534f651f332f1618ecab944a1407f0add14e5936c86103315649b2cb774002006740b05120230646eb30cb1994c2fb9e23d2484a60ec252cc02617811f77d68fbca0c1ef87d73e095a6a403a8c593e56a056ad5aa04470302047c435bb50066306402304121fca047bb098d7193ff4ca9b1b82a472467f247a71cd5f3df30bfe71965576f1d5dd8bc7ed7c4cf038ccba1af9f2e02306dc6541254302706150f55d66be5dbe2c8035df9e3712c1c439f62c59957e8f9c7555f3636530c80575ff53838fd41270302047c435bb5006630640230754959e718d330662676b2d88a821a05069392097351c461ad3e95aa335e428b56c3ac0367318d5417284ce87c776aa802301018dfaa790c5645037e17381c4d1b5011c7614c1fb0192fedba1b7cf76c0b7553b5a7632ec2a57e1342bb4070b293460302047c435bb500663064023032cfbb18959db015f2d88b91dc5907ab027bf310b072807dd2594a59cab88ddc23471f7e9ba346a9bcdc386c9118ada80230480c66525990580ff1e196efce0deeaee4c4379cbf37ae06d8361d5243b9e07d61368bf2d34b600bbd13ee061bf70c0c0302047c435bb50067306502310098735ab80b59ac38bc5e14f216f8b09d7fd590cafdd8dc40218c4121f8a60c15f6d9bd1785c76b6a1de0269cea6d56550230760340de33f0802e2113d320e153535320c220d9c52754f3ad6a5530e543f3d899fdc4e98fbee94aec95b524f9d144ef0302047c435bb500683066023100e9e161b5c706cf8ce0e548fd3c5e0089d309d7dfd4608c45fdf7f394423d4ac7ff3fc4119b5824d1b53bdd745a43069602310082a665d5860aeee40f9cc30aa2c18cab31d449bfb87f11955ee86dfc3b3f1bc504396cfd1b336bae10a1cb213cb3a86c0302047c435bb5006730650230338ebfc83985fdfa3551816978fa8ea4adbb6c8b4857855cdbf0aafea788c5662da99213a0c69bc2dfdc99b02e16ceb2023100c483bc947c7850f40273681f638a1bd71981c4b13891ceb11fae77fd6d8bf4b07494362bfd15c4615aff12f08972c2df0302047c435bb50068306602310085e8aae34a729f0f27369c481934e4e955afb3a704391b96c02b10d628a64493fe9ccf7de6134043882e8ae56724b8ee023100cd8c0f64ed5dfaca89c87aa0d543e0008f3145cc12ec44d5d151be4b9f17d862e4a1e76f7230f8485bb2790501ef63bc0302047c435bb500683066023100eaa16cfd90edf5ea3b44f100a6eeb3ad41843287857b39801f8d93bc035b615464d29dea2653e381b740bd0116c3a457023100850c3169f10b7ab5926bef38a8c2399b33c5174514aad75d5d61175b369188dab80d8850b031f4a995ab797e85c318400302047c435bb50066306402305334b801728f206780a7948614a82f02a57253bb3e13dfbe9313f0359807e695cc5c1ab1db5f582ae7d78d21d23d7b0602301c9a0f83093fe082136df16402f50dca63129d1409df01ab3e1ece13bec90bb8bded46f2a3ed0c549efdb55e3e8b54430302047c435bb500683066023100f74a750d4365c4ac3c3c489915710aa372220d35e2a6c7c2040ebcb3c763a23e9a8e6b1bc54daf2206858c64526dfde5023100ca9f0594d23f6a3dcb8988fec09696796fb20dc9f5eed0807c34c654835ade95e0585622bc366e09aca6f1e71bd8d4800302047c435bb5006730650230075f96084ea72dedb895accac0e71abd9750f9cee904b36ca2eb0d9079b023648924fb11556ac6bc4803f51b00fd0e92023100a594c0aa10613afabb5df58300452e669606c99fcdbfeeb5dff12c88179a8d9fc133eb75fe3126f2f23d210121a0effd0302047c435bb500663064023028b692b13b1bb8dfc73e8008abdc305a7a0125e3763858e56fd337011c4c65e417c963a5e6f2cfbb9ff4bc79baf0b0ba0230699a22910514f83dc2c0f57392ebcc68b97219c84b6ee2fcce1404e89d4fcce2d038a646956f9b8562de82a06b4511e50302047c435bb500673065023100f0300a788bf08210f0f302a7247b9032d8564149b2f2dbc44d7f32b9f22dab364ee79b65826c51bdd4d74384098a77a2023063ba370bae8b80da3ee1fe5e8f05407a397ab67d1d8ae4440c28028f1f7b80a06b7856d8ac9bc64f5b1675441f00b7a70302047c435bb500683066023100f1449ccb072b1b486c8e69eefd25fb94f69b37660b3c6045e09e0a2b7fd3d07348794979fcde0c3642a47e28af2504d3023100d9125b7dc7a3e0a6704a871ef3ddc92bdac4135002b578898459fe49127a0bd8545f5a9bbba4bc0977f5ddc32a2129200302047c435bb500673065023100c9439f69b3a5254eb2fa94153fc7ac17fad5936c4cce3017f30793ea66bc6df2fba74452a472d28122a026c2935db8a802304edaa68e4f439c7b0b760096a063ca87b90732661fd34cab24d3bb3ef6072a074a5c4b74caa29caed86a78408fca62090302047c435bb500673065023100ec5ab24575320cf76586d3e8ce71074de0abfea9e73323b71f874935c73a1560122471df37a6c2099b87b5160dcfc82f023078941eb691f85303bd7ae88aa2e47389a23c6d9d0ac80303d21fbc5b1e021334ce34d20fe27340314d5830e302548a370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023026753f4c1ef3a158961413bc858fffb81411ce2a5ca4cc5916fa6b3048d72227fa9e3bdce7598778490f4cec84323ac6023100f946136ed55024f3c1bedc162c2922fe0fe707c70bd548cc5716c97b8594cbaf240e2e392d66cbbbd6aa3c2c6ca56c910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307acfe64a937e3fd3d410345a898c9e229077228d99afd9e35b8ea24113fd7599fafed673d2ecfb09771f51c04bc95fce023100ec66aed5d08eeb94e8ebcc37616a6fd00a120a33abd303c6a675c791a22e0803d3db697ae446e00b32146b0e290edee00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bd227b974fb5c67f25d0a1ce0d08dbc6e3dbe4188df1c15ee81709c18c3f1aaaa3ee653d092c4c7cad517588bc23811002305b7d7403a6083765e2f1e2b64e663b8d7f9ca7502d1e5c2be6103587d6f3f6b1174620e2512d16799c2b4e33a3939c290302047c435bb500683066023100c5d9d82a9b82db05a9e124e5229f63be1f3cedb2702ba41cc55a6112175228097ee3dcb4c68c178050a84c696e97cb41023100a7b1161baaf7f7c20fc23d1445ae42d1e3dab62a8664218f134d4239c2385bac5c87d4d841be65d4bd4fbb269b2d72380302047c435bb50066306402307e33b64749090ed7190da790480b38c7c7770125390424158bc4953395849ef5420d295217c924985330194c03f954310230313678157783dece8b6305d488be040859fef0d1f6cdd9c91071c98d735482be63033754fd51d6af322d8816122cef4f0302047c435bb50066306402302b85677fd4ac9d12f15de688519660c7f6c7a8d9b5bc2aed57c8dd5bd4d8fb729a2f3a831f74ce8d584bd06f21298ea1023060bf7e8954b0dd7f5ea437e59388097ab4133e0d7dc5945feb7e644ad586ecaa0e52b37ea355b2d389dec2756287a09f0302047c435bb500673065023064458693c66f9d40c536518bc78a8fcd47847e5d23909124b348358487335d8980bc155804344ce1f71c559a9b5c1491023100cb371efd4ef1fdfe8a1c592a3660bd07e6d1e448f5974d2fd0f629f940af5cc525b6ff10c4364e7fcdd5cda6a3fec1040302047c435bb500683066023100ea1117441a011430c15aeac371a69bbfe4724d959284efece0cf67d0594d53f9596e90bfd6d69a985ef52ef4338eb952023100ce8ee0b4d76136af061ebd85d04834ec5602ea89bf3b35ee8599d5a5a9d79a9bd18f431dda8b9ba0697a830d2425fc760302047c435bb50066306402300c0602254427112ff222c1bdcaa48568bd817a3a326ae2ae846905b29aff7eef31c8e689f5e9ced56e8c9f6ab9723ee402303842ac384c3a45b74b2b9f4f283cfc1b7fb280a929e8dc6df90ab3704a4640cb79a5823ea8d0e17998b81dc129acbce10302047c435bb50067306502303a69a462410f782f288538eb0a222d2c8706b111c58afd57465bdfd102a480038a6a42c2e4bf077fe94d85a0a7fc92f4023100e5cfcd0512b5cdc2f05878e71c483c7186e59cd2eea2f0fc0465b19ebf230824d421fb5bf99e18dbcf0c730d3c49fd650302047c435bb50066306402303b2c7f80a9f5f7ab07a9750ad82a37352b8a342e497b8b6891c625969763a705a07dd280c64c82a801e4c72299c2285b02306ed6f7d60bc94efb62e769f8086f9eaa7058548468f86081a38de10bc9688f88e24047d4223dccb3b6c5159f8c48fbb80302047c435bb500663064023050824c88f16c57dbad788227448582399ef2050a1913a7023944b93af1cca89e0198a371ed4c6743bfc81d20cb190fb002304abd6f22f0e3640210272a478171bf61eeca0c16ed4d7559d1f164e9efeb1ab4f03894433a4982bfcae1483561bbd5610302047c435bb5006830660231009d6099bba3669f48d57c33ff3bdcdf3c26b4952344a46c6c32d9e706164be05861ab38524e8d6be919faae9fa462fcac023100ee307a348b0b1ca3e4ec3679d5cc177912a1af86c3eb8b73f27b8f19ce23d37ef7fad1d9078cebd4e53a431902b53f940302047c435bb50067306502310081704b7ff6efebc43ccb2358078923263adce8edda6c4c26e4e42fb19d67e1e223e14ae2a21c13b3d3a078b5da21395502302a3df72ff081c1f7e05d7930c98676620a2b68e2b1513b758018ba5d8130da2aef1060c31e5de7c022c83b88cf3259320302047c435bb50067306502306acd0956de5bb80e4f18727cf6e27b77bf936017a726caa356e16bbd35a37f4f51140c054362a60af936cd51dd9631e60231009c199ca5d74476efd2380d7731f553f74d60b758f7b45f34abfd54f92893174593b7ce38217c3eba662569bdcfd5e1f50302047c435bb500663064023001410f25a585e5adc30f043e27ddcc7d933f49da92d5670ac9a628c55fc52d8c4632c5408f215722c1ed41b188ab3e3302301df4470c0ae586ac43b3e2d6fff98be079191907e1799a042284088ff942d6b7cbda9558bef66b5673ae59565dd77e930302047c435bb5006630640230606f4fdc42fb2f146a3f75f25aa8d0f5dcda57bb92add0b7732f2cb4711c74d66d9a8ce6361cf586c02b9f5898e9885a02307676a33dbb7f14c13f273a74f81cf1223c5cf95c308850f4c7acedbbe5ec520ae9e6d49c726b18852fc156146e5acc5a0302047c435bb500673065023022335ecb87767c55845d6d5ca3c71c8903ce8f3c1693ece46dddef669fa642c600402a7668c25c009cb58d3f4b9b54c4023100f107bad0d9fa4be1b708c52f52751e542225c58a04760fdfe386bb7bd0343bec5a9b096d2c16b7155da5e0d8a59a1fb80302047c435bb50066306402300fe7e5a9d85e2a7927ae8572275fd4cdf7beb88edfd27c99149717b7e9b3f7a1d2c4c83a80831416c37c8bc671b1c75d023068e6a12a2bab5213b27faac1d0803881c551356b7fdc9364a8819133a56c6ccf7eaae7dcead3ae7b35e767b59587392f0302047c435bb500673065023100a938bd5a34372f5cdce590398e9f51a51f5dd2f090e9fb7ec04bb2d15c1c1edcb686e3314c3bd72094c86e95afb90752023017c880bcf69f462d0b8c5a61ef73c45302cd1561e9abe5d553007f6c670495a14604365d331b0fc44f3d992fbcddfa0f0302047c435bb50067306502302a89559e34e395e0d58156e58b285bf6c2f455acf14f4865e87575dc64e440c2b7084095c0e73717182c9b76030e1d870231008055c336e5d69df0de51dcba57acc315ffbb97531c9e5af41ce5eab0042bc4a0b6d058cb358076d47d2fb79ffadf2ffe0302047c435bb50066306402300d8134b5cc8e002c2260ffed7b1c60b832ac6ae497a5a26b292979ce0dfce0a5dcabb73705a515733f898edbad3510430230024886d39d0ee0f0f9d8afdf40ac1cdcceaed7783898844cebdfc39ebd2a3179c7935fbf10f142faef56ee2fcc1c4a850302047c435bb500673065023100dab1c64beb259cf39ca932a5f861cd4a5314d2ddd4d8f155f58b68ff0a4a75aa72be6d236fd9a551f4a05bbbe3739ef602300be898fa49dd5a46b778e52cdff2d41f4db7ec63a63cfae97fd9f351425eb52878e442a216510f6814d95f74bd2b68960302047c435bb500683066023100c7a1ccdf94ab15d7d6950908af9b3a6ee47e38be7665561436843c4349df65c096cf34ef5b86bd264946c7a334b24240023100d446f6949346503f5245610a264f7d8b5fbb005c745f411cd30c83dc217df93d124c821d9c0cee43246d316f50eca3300302047c435bb500673065023025a0d2cde415c159d13dfe82881e1951982f6e40bf05ce295b87fdcac43709dd2453dd54e96c6558d1bc3af9324d9906023100c5afd095d644c69f2190bc7a59ee06b1e8b811774a7169e1615ed8d7eda958eccbaacd2ae5221403d4ccd8ea7b3025380302047c435bb50067306502303612a8a36e361078c7a2acc2bbb93c9ae3e86d15842071d941425928dd0785a3504e268935ab9b1b2818729081feb41a023100aedc12a8e8170da5cbb115cbe43211dc6291b6a174b3789bd4efa6de43a81e896779585197209f07a732fdf67b6eb9b20302047c435bb500673065023057d3ade6e243a791a5eaa58befc7da816a4fa9fea72205fce354ab8e3b6c6bb2574a0bc5b304aad32bbaf7853695f1cc023100ccb0730c7b039da09edb01bdb338da9c7b9daafd2240690243a142e008689268d38ee9727d5dd069f0884c46940655830302047c435bb500673065023100a19baa7cabacaf8cf8fcf0ff69564c255320c4d9277fc8c41ac2e465e97958fe8e325226ad917881129683fc31fb537c023042ca713fdc643edab0a63336c819690b3ef98fe7057556d2c1612d4b2b542a0dab50c77c6ca28bdb3534ae8a2a272f990302047c435bb500673065023100f7595db5e0865bc0f16b3f0765373f3c059f0c0fc40bdbe7ed38dd568fff2aeff892c33c0276e7cd949c45b878ab1cf40230655e60e1c08b1a259a41329e2dde4dc5543f453ef46af393fdb652ae8609b405cc4c25e84265725e9327d97e73fa2a970302047c435bb500673065023023b1c1b53837cf24e258269ec42dfc5c6aaf580a37c1290b519492354b4e9c0f90333e97879c19b356a15273994f702d023100fb4a577b30ebd2b539524e9a77f842e078ef5c6846eee1ca0d34def1d8ce7f785e39688193df7bb75680919d74c390400302047c435bb5006630640230603eaec05aa5c3e57ec5f410ce03a5369d53752aadbc403ef9ce80a51f5fde07e6e4370ee68ee9b5365bdc47755bd08002307e16295b610a3ad0420d930ea233c4889e11770c4a643fd4ab0158acae814666d3bddfb8c4745057d583eb142500bde00302047c435bb500673065023100c0dc8f6a6edf624ffe35b0692272ced209ba0e241d35afe7017d793a3675cab5809c87592269797d2ebd33caaa26d360023009b491b0826927d2f153dbdee255f49a1d6f5ca6bfe0b0ade67d55463ae11f9a3106b8573be3f8d7b520e8306ab70de30302047c435bb500673065023100fbc0c5e5da9e37fd0379e26f24a120b8b0da7718e9aa857a9696138dc9691f677a0579418a8c04d79299e6ae5dd322da02306d4b8f29d775a45f74727326baf9f18339aeaafbc92859f86ee218edb03eb8943878990a2841a2ac2332b750aba9e4e20302047c435bb500683066023100a29427a05f2bc47b14ca7d7e135e13c85cc5a844e44e746e3bd821403397fe4b950c2f7121cb883121c3a360f7f71cac023100b121a548e6132bca391566fc6e653271bd4ffaf47a03542c2433d882cc86b8a06146ff051e2e531da142dc4d44e4c7090302047c435bb50067306502303680144848226052e63ce0690da4d81953fa4be840d585b08a31bcbecca0d7e27fe07b3e716e917245ee0df8a3dfe6b4023100a2a9dc79895fa8c5a6cf96a330f4202a3af3f5160fbfe599f936b3ff37b1c1bd37df296b50e92522ee64776e32b697020302047c435bb500683066023100d72cf97459aec65666c299e817409fc1280d3b50a4cc2f537ee3e95634645f874ab374ae7db504dde03894a89c258e8102310081bda89b99befb2e6f0572e542f644b8ee73235cc98b96a9e25d3d455418d5c50860ea44b210fdab434b774bc45eb0be0302047c435bb50067306502300c8a10370af7f6080d8f4abd1534e87019c74a566d714546ff53767024fc232ffca3dde61c9789a99e28b13f282ac6f602310086080055f4d92d6d0edb180a4dc56c276c950abdc90c6ae1207db3740ce42681ca476de499314f074960b69f4fd0a86a0302047c435bb500683066023100ffc5515a48697bba087ce9225de33f08fd434efd446ab80463373869ccf328e68e9fc3a6105deae9ed40c60994eb2cb102310091d1dd742822dc0a19900438c4750bca70ca35fdda2699502fe7879992e1ee6cf424573a72e1fcf6359e2ada2cf308b30302047c435bb5006830660231008b2baf6d0acbe13f870bd47cf186c427b882d5ef761f4c9b38c171a1d3a2bac234e86c8b74a6528a057d69bade314a0b023100e7a19c264aeb5d6f050bc43e4372f16721861a01f17d9f86e106a30bff6e70e2cd3eafd9be2455695a3e33259d0ac2a70302047c435bb50067306502307691afdc75f2c421962dbcb50b216e007e714b530d10370bee80b279cac5bf23a78b050387b773827cbfbd3afd128901023100f3a1b9762e62616fafdc75880d31ad9b1ae7cd7581fc170096aee8132e33fb11aba9e4020931645657568879cc0285690302047c435bb5006630640230611d2c903b193321ff6a34898c72ba8f00fe77374dfa775d2e03463e9ff52d460712a5faf4b851cb61a0b6bbce44a03d02303d1886da1a515c103d611531caf1080345e42958f491cebfc9c8ceb202541552ed8cef9fa31575bb36b1122e949e78e30302047c435bb50068306602310083f90eba827f1262dc430cb678109443ed5f9a136b87f7a2c66f86b40d5d1adef41cd468231fdef314c3030d8f27b2cc023100d3cb21ee6715f5e086fb0f1d791f484bf07e7571e63eb334943153a9e41295c957df5adf5c292c90b56d6bd51e8a17310302047c435bb5006730650231009ca3786cc686a4e1a1053f950eb82e69e9dfd40346490660ad9ad9bc7d79e467de15f6d52ba4321a7612d15473c955a4023074a5ea782a8d1db608745e18487ec0b783c91d998ed993b9d98cf01c29aceb82b412769fdf518adebac6ff7b420af65f0302047c435bb500663064023030caac3e74f6064c021a8a6aa4b1909f627b718088b9ebc4969482417fef069b09adde299cd5c07fa4a24a7e07af011a023006bea21a715709102981b706042421c8e9c2e72d482ba980dcaf54ba66b56b8fb65f610b5570522d06b5bf5f88f84e450302047c435bb500683066023100b2fb6c6a1b68ca4b05047b82accad0e8a4958fb030de054ff5bb58b1751923e2644b3a91a095ae7c78923997caa7c7df023100c95f47bafeaa42bee0fda07f13cc3cf219d21eba6e2da61193fac38917f0d756d2ec1977d564c8a61af0381e4c1930c40302047c435bb500683066023100e0066fea9807e429157a2d9bb062cc281f92b1b55641e5adf225c2b5a139139209c80e716d0866d37d728f52ecaa2c9e023100a5f0aa52fd4257f0a5f76418a60414907cc9226f546bfacc377e2c7c43e84fd4d8fec530af2295c39f8d71de5a4cc9380302047c435bb500663064023005d30d9721e6f7636b31c691ac44ad483f728b989812228259d02f975d33340b62a96b966b69ec361fc413f21a2da49402307b31776b0eec24cdb7806fdbc644f9dbece47f7ffd6b92b7655bb7c285506f6707e7c0e7bf877f2982d62643e476c87b0302047c435bb5006730650230424cb432ce02bfdaa4aceeb72459406bd654f30503016fb779015a211c2a5836dc5be38ad1ffed5194fb838ee55dd0da0231008ad8019af1b1520780321b4e255e044adac9b60d985a26cb005ac7f9d4faec75cf992baf7d0b4cbc509749438a96f8330302047c435bb500683066023100f9d6504ce3972c4fd5cc7ae018e43f8f192032a9e6eef439e11b234d3296160d09fcb235191fae15cde15f9c0336323a023100ddb08e8229cfae775b128f312fa7e3284b33d83b22ee57ed270288316214ea451fb459d653a4480801d10ddce6178d8c0302047c435bb50066306402300a2d886dce62f3514385736c39cd4ad8eeabeedc0a87cfb4f862d36ea35335e1c8baa91e04b439f3f1f95ed4e5cd6f3d023014b8cd71de54e3c710edeb0ce3e25d24fa63b9d1915de4061055e026974062674b78ef09320588bad34a6b395dc7e7160302047c435bb500663064023002b655734b7150cbdb75be2636246f8a04f184aba1760b8f7e59b38c74f5c3b54f144ab4e5b23d604e3021d2a2c842ce02301d7b74a442b76d38237dc43de77644c67433bcbc06743117e53709c4024271b660bf95bdaa323766c7f87489c88dab4d0302047c435bb500673065023100d45174bb4c7c7c064b25061ee8d67113c5ce4fc635461b476727dbbeb72ba676c6824b1b0e349587a3cb38993ae9de07023018dd80fab21cfd59007df04a8a08b10d3a3a4c9dbdfaf35edcd9aa8b16dda229645354328bdd4e9de741dffed51c2fb10302047c435bb500673065023100f56efaaeed4e28ac3dcebca12f1525c9283cc6984f028fe4b7140ef884f5c219a1e415773239e789d8c64fc44b83a7bd023041c8749f1710bb866036b4bda24f5f513cbe42327ce4eddd8d98b9a4d6824a10370671204605d539aac777f0217483080302047c435bb50067306502303053a47be22be2b73b6ca23005ddd3d883fdbb1e8c0753ae75e13d814cc240b685508a069e455a7d7de35da84598a14a023100a38570e7b51ad332b16c82b348a240803f30aeb15caa20386a67c628b801ae617befcb23eda0859caec7adeef3a68a410302047c435bb500673065023100bb6e3e2664ea7be98171471df5cedc4cb81cbf918730c035eba2618eeb0a3bdc0722d3c91a9bb0fe4bfb94b06978110a0230125633bcf1ceda1dfcbf6908b1eb3ce750b3899e3f4172326603d5d683785ecefed9a1a507c017b998a7c2aec54b338b0302047c435bb500673065023100c0bdccc5cc5deef5ceb251461c57cb04ddd380bffd38a6673067d5ccdc50fdcc2b3c502a025048ea0a06b2f0741ce077023008142990fe43019a9e1b60f602e07aaf5c1910630c100433ad277dd9597efed449cb5e3de22497bd58169a637160ed6e0302047c435bb500673065023100880672c784b25cc3d95bdadbbbd8ea3215b0459dc8ea9bef00491dc242f716007c3f87660431a529e84224b929605ed502300bb0a4ca7a047445e4b37d989d910f758aec874d0d02f62bda011502b56648f75d94212430aaead84bb8897294ef3ace0302047c435bb500663064023056d472f32cc3a981c2dbcea5bfb355e3bd2ffabf6171c4bab39a43aa29cbab00b696b43e1aa5a78ad12d79aab0a10159023052ebecb50a6f0efa442a9428cf71c8a29e6523acb6211885dbead196dccd3208aab6f47f1f1dd28d479322bb98b43f740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023028adf3ded1f748f645d23073c4f792805598d45e09103e2ed9ea623ea7cbf1c75dc12d60865a1cfdb13a6f9efedd2e7102301b52bde2417be607dcc91cf7aeb7bdb995c9f790e6682495ba072b4dea2f87fabc51799bc71282d079909f7e299bf2dc0302047c435bb5006730650230160a9508232e2b175b67193fb28f0b25cc66548d594b814a4a81b605f7f4a534209c4b669f1afd58d9e8a7b5b9b0963d023100ecb689e050c8e1bea97b8e43d18ac83ae04322c68ce8b1cc6e56f75f9170078042c1c6543a825878aca6da5db80f17430302047c435bb5006630640230584213560821c50226f649057e72e343925cb829754aa714e736b4ccc1aec4c273a368d7a25df1f23ebbdd09d78251ea023000cf449ab7c26a10e97b8c9c2203ed65dce5e3f21bd1435be05b822bf895132feb34bdf153fd060d029ef9928ca984e60302047c435bb50066306402307c89481fb05863fdd54852f20f9adc43c186be6cb84ca048877ec54c5c79e38a3a99070aa17b499b476d0ea9d80cc121023009d9f804348357de872198b9affef524b162c9fec74224640a73c3656b82d48a0822e8699ec709d5db9c455ceb18ae810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310082ba2d793b0617dd90d3ecd17d90584d8275cd5167b8c1cdadc6e6be87e2b07f9650284b9309bb21615a4f196e2a76ca023100ef97c22eacac7960c1f12074f69e1bd1ba70bba3c0cb16ed9b9337ad51b3705502b06e4f5bba58ba2b5628a5b8fd19620302047c435bb500673065023100abd784b8f1ae5df7e6afbbdd571c96dfb5c198d1a74a1e1be93f7bbe8a9d5e1f772f387386289ab9164694945a531b42023031c5a9415932a75330181bfbfa0ef9596aa97c3a98127ccd32458c26473eb3fd8e9106015252f1f1151be775d1eb7afb0302047c435bb500673065023100af73168ca426ac5f6158f78f51c9ded67fcf0ee80b4bf3fec58f22290743ab758784d1754f6bf6f3d96fdcfe50bb1dcc023045b7733ac908c13b012e956b0a201a9c4a4f5be838a21617d557977203f968d1f0ec3637036f263d1bcd2bb5e7522cf30302047c435bb5006630640230135d7842d1c13cbdd0deeb65a27a55af0dcbc81e4b5e14357e19ca2df2dc4c3bf5a18d8e93c136c0177ae04f7b11a07e02307d7a5d4a6c48fa5f330b57f5ea93e24566e090b094690907bee0323f1541b9c35d35af3f15d27bb04db0fcc3131bb2750302047c435bb500673065023100ff9f2e179b44142c20621a3325ede40bbbab540d0500e19be1c8690e0fac6582cc322454ac3b04d7ad0e730b0c60a19102304086fd0a227d6e8945860913012ba4f849c83b91b545898d9627ede255c6425bdb346c85d0ff406e3031fda2a28ab31b0302047c435bb500673065023100e9e0b6e6a9217af58213742a3ac86e6747adcdf20b32d198fb6cc98a937a6bcf9a157f7657beac31b156d617f65a2ade023013792341771462b4358de57e5fec2f6f968f2e54baf359eb2ae6eb13306444f9f1e61a4088d0eee9b41b53caa338a7140302047c435bb5006830660231008eac5914d891343af873de9e1521610f892d4e044bf0c0d0625ff510e76e18df250bd71f566b8f3171eb3d41ed38e3ba023100a9784ef3ad3c611d1c0e4fc8cf2b6097b80083c63d2890ee1d34be773599120078f739d5f66a2902f3153b110ddce4d90302047c435bb5006830660231008feebcc03cfa194a97cfb17a827dd5fdc8070db4fddd3c4c82af7d8a4c25a7b429563e08d131568103266ad75757a7cb0231008601a83eb1eae06dbdaabcb3a30c79cba17dd28456b5c1c6c5a07ee4cf33aa40c1d5d046a69ca75f9976b71af43f7d620302047c435bb50067306502303e2320941b1ba8cc50184ea28e2d0c9ee35f4d6d85898465db98e8b42241d36689ba934c61148d7bed3ec07b532e39b602310092644fdb236ff7bb9132c1a04c4e170bfa8511a71521d4f973c754bef27cc9f722ea53d5f4ebf77f76ea3da66a072b840302047c435bb500673065023022d690eb223d634073b0de4a897c0a7dec34c21c35973b6be9a690e9f456248a5f992f1b520ff4df61ee230a61727e2d023100a921251da9e7a6dd243852f093f8d5344b3d93284184976bee18565a8e53e6cde3af226527c5b55ef5ebc4757ed5fc770302047c435bb500663064023029dd18d8a4f548ee640b927eef5900843a094bef44b5dbad9e422e708aca5e8784a37dd07431173125cdd75a8486d384023079030d7e93e12a1e78e1aec720274b32b041d7fa89874a6efc9c27a7dd53ee4b11112bf47b2cafa8ef2fabf3eb045f3d0302047c435bb5006630640230482c8590e787b5d1204949e41ecd46504f3b72b97439d51af0860c2658dce0f445b870fada868f7d4af51c5746b08bb902305c87995cf5a0d43245154c983730391079acbb0874a4e0c1084f7d09d97ebb8875cdcb8fd4afa2f807a5dabb6be1e1ab0302047c435bb500673065023100e8ae017e144cd13839a092a56380534fd6b9f41a16a9fba32bcd4781a077165de0b6149f8f15df0afdf1ab683fef212002300b1bfe930e5120348ff2d1a3e0637b910bea0c75afb7262f804435269136ce603cebfe72964b4369a085cb61a08575a30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f74e04437e106037ee7f4d04baced3a50ca27a015b9427c0336ec70cb38e817dc43f992cfce4aaf58504bbe63b42f4620230198462e32e84b870d5f1204b56fb0b4581f2dcec1e8c7d648865483b4ba9ccfa072340eb42f70fa5947d04e1386d83650302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a57cd2159546a39b559837eced775c376b61291cef4bb37497c66e77582e6a1d5bdbfa4d94140b2e24649a7b35f8ea8002307c5b3ed083435754999068134962376cbdb464cb33e2ea69f7896fb885612c4679487017c60eeaa610e50a66df2f8c210302047c435bb500683066023100b7e3d2c3b3c552e5dcb6027335389e33d1ffbd53d79b23817b7d17f6a9e8707e1b427625bd655dc7344e5d309a666da4023100853aeba6949f945088cf42ddb2ecad170ce3028395d7d73a2ed5b72d73360b8c01e52070961abb57a7de6912499e7ae40302047c435bb50066306402303b4311d0137812a59836fbe9c2371b068f59b509fff8dcd6f5cdeba9246b39602ac7b4ca19b46e15d034652952c34d5802306cca11375a9054c2bd21c66bdb53c33926ca86216021bde5be15fba2f96d1bf03dae9b76a06e60aacd2ca6dc297d01ff0302047c435bb50066306402302b8e74c7ea0655cc8c1e08dcb486a61e8c88fd3de5476a5c43b8152bc28325c2d99b4dddf6f66791a4a1380528c69d5102305d2709db13abb09958d2138c4371708f9a938e4cca1889e25b7adca7f5a07a14d79d322de8139d4b66b06867dbf6416d0302047c435bb500683066023100af785ab6489b07c599bd0b2ef5c9e42d75a3bbbec9bc0e396cfe6ccd8da318a0493a485ac34e9bfeecd5056ba5c35e19023100fcc0d2aad9d518f96d83736ef8a0697a308f205e31174902847e7bbc1a34d01aca00cf5ae41a65364af3f3256c76a2000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c55c1d3edffed34e47381291928dc46f26104e69fd8353e6bb689043e1cd63c5e4a0581d7bff68d3179997d6150ed17502301b646575b187e280f1a1e99e6957e41efd3036fcfa03a29e7628879f4b956dc084b1d1c05461bc31a4aa1ec244f359840302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d068ff4b44c996365963b352e97afb382c0e369918b786976e5cb2e969c9045091aa1bde2ea40fe26124d78452063b11023100f6c4825c87b00dad653821a55f5e304d2eba996a62ecdfd29b0188dd8e064f896d60e44dcfb1db2cd6f0f5087db111cc0302047c435bb500673065023006fd242dd1a7469b96749da4f8e458aa0484a31326d00cc9ec5e1e5023272ded8f172e1bd7043534b6448cc06c036400023100b4fe791feeb7425ad682699aaf72ad59b35a86dc4f8c929939158044002eee06aad8ed96074a3dd8a4896660348b1e140302047c435bb5006730650230159f918d16890158b8366c92463f5a184d1e53e80b44d45cc28a6394fca137b0d55ed118e1ff8fac32229d534357841f023100aee6310073adf56638a380e06a78332d8809f1e81789ac63768cccedc3429d910accd3c32144cb7bfc9b53bf6883d32a0302047c435bb50066306402305ce165a1eb8dede5e1e1b2d44f28f1adf63da9b1f06edbdea13668804519c3240c7029b1fc65a7c1e3baf2affee1a15602301ee692c2f13593ce30d41b6c8970dcc85bd818339dc70e6be8c9621709f9c39da71a8932700703b3deb47127f59570c20302047c435bb50067306502305ceb08d141c3b1d1b8ea3fd1d58b18c434118945f5ac410f31304dabcc5283a6cba80460257d7eb31d7e1bf2715ee5f90231008e50df4f7b672fdd0a141e6434ceb3d307c37cf0f42cedd77a6f28e10e3086b1e3198790afec1a0a3fa9c5482fb03c980302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230597a720e26c8cafbbf9f0d544492e778d6c5080b0500e0f2d360c1e376091b1a37edcba2d7a9065173a5bc1f053a636802302a9cd64d82dfba801222f2286f8ab51294e8a098c52e4fd1a30bc06da12654e8f36cd022440c5aeb9b96b7b5d0de53cd0302047c435bb5006730650231008734fb629b5eeb992882c9d10d7491cfc104683bc2c0d23539617906d24f24ac732b9c9b2c9da772cc17d8c5c50f70a602300b309d6ab1e56cf46e1f11ebae3462889a4daaca2e8a23855f476963fe92dd7b02fa3bd213bb0464dc20de2467109a960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300750340c0ee123f596dc77e3fef4ce90afb3632dfa563cd02304d6077eb9baca1f6c86f38376a32b5fd002e9a03fb9ae023100eb5c5a1c6a2eb45d1f0db9a33c4e7e2587225f7591c009db9063af7fc97415f90e1651abcec8f4d1cd40031fc59e7bef0302047c435bb500673065023100a3cd7849d8afc9ea4f14cd94ea2e9407e7b3174bc4e6d89fba44908e0adf25a5891a3c12daad1b10a265f2a58670518702304d26e34f2fa45e9bb2a059bf0e2411edd5a3e18f8a39841ce593554619e7ca6ae94a4bb3c6ece629076d83e41143580e0302047c435bb5006730650230263b3dd9fc8f14e9bc928c637befaf08a24326b1849b7bf6aed149ddc96a0a5f5610e764994755742fe0d16726308a0f023100905cc6c3bca0eac058187357b41bfb2e53069c75eabd203312ad2f09bd8cd39ca4c129f0e9cd4d132ee10323638774070302047c435bb50066306402300f6b1a2ba8b426609103762c348145e1e847bd6dd89d09a8b4cd36d939fdbf7eba3e61bd609241177694d0b4ce7e13c602304b0193a5b8d4786cb44bb325e10dec3b3f579ab6aadfeb644140e0655bd1187c209a10afc24f4e391b9f4e15024253a90302047c435bb50067306502310093c6195cc5675b35b3d92158a90c4b721ca6f40c86b369cb6308605b84a87e7c74201061fa35d82737581613161c2cb802300635f8300475e5a0077c3fb9da14cc557f20c3919b0867f2d45580deda8bc5783ab52585d385c75ee84612906ae0601e0302047c435bb50066306402304095b2682b55949ce47e45ad3cf67e598e17ebb62190f537f27f1189a72da11f40ee0cf2b6d5bfb03006599a6b277bc102307471c0c05cf909d7526c8219cc51ccc9a99b0c47c9de576edd0e91108024e07761f222e4afacbf0cbe47bcff6de761df0302047c435bb50066306402304b5effd651a664ed237d9b4d42685281c4e96f4ca67429c23361bb2d3a6af7e5551e30f1ba4b7e961ce2edd6188237f00230328f4cd9994c1fd844a9388ff4327d90c772f2b83b44e5b76d1b531e5eabf84535e3229e46f7fb0b31d79233ed09432f0302047c435bb50066306402304cbecc2668d1a9b387174552676df22153c5f3097c0d105e8ceb840b54cbaec0c602c0b8b93840563ee319655c42e35f023020c823a4f2ef318307f242bb40f041be4e115b2cc2b4d3b8daf4790301cec04d1b9e6cbfa14ffc112a19d4f3efca95ca0302047c435bb500673065023100b4f9724d39f1cb800882d6a70c0407a165c3a1c73bf89df93828376926895877d2b36f4767cef90d5d338e42965c13c7023042e3a7e3a30d5b02aeeab0dd8a4311c4a4787254844dd05e126044ead55da6c58e14a39551876ca5d06cd6d34a2334660302047c435bb500673065023100d00956c0100f5d1dd1248cbfbf0505ed5c3665e14a55702ea1b91d970c885e6f0fab9889acdc6046d6b1eaf48673118a02301ea6a09142d35bb88ddcfb4401ace486c7d294e451b6609012e76a08e177d89b76be8eea1e8470fceb4f7de652941d6a0302047c435bb500663064023021e4de026b4f124eeb34cf2dc5d476c45ec9dcb94fe8fd75293313134bb75e2aba0e53ce8a18b59cdec22554dd35941d023056b46487298a2b2d8c66eeaa9588644241a77d6babc95fb65949a8029ef8ad041380106d8519888f53937bed6d25ca8f0302047c435bb500673065023100c1a7d44d92aa50fee4052e1472d53aba04044e5e56cd1104f810401efe30c2481ab52d008bd1ebd022c0442b6e2b8e06023032b2af66a318f091200683034b138ba85cd89b6b922cfd9ef95c78fcb0a1aba8a438d350284d9734e4515b472691dd740302047c435bb500683066023100c005eb8f504a93f43efb976f435b11da731408b9013820ff46e4c6a7742de8707e7b353fbedbf7343fa667f52e58ce87023100c57de0e974e06dc001d6f602641173d0392291401c995ba198890d1c77c3782cfd51a1ba6b0475ec888904b5162168fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230517ca3cce2e248eb05c596d536ab959526e01592afafe563f77895d669d4fbdda84e36626664ee87b97ca0c5c91a0bb40231009f145dbf01a73b6959627db84bf823f2c78620192d5de037e7567acc1a0a350409d14cbdf1fa566fc98d6b73c5f5098e0302047c435bb500663064023065b626d067331418460a59b4b0a00d7f251f791d993281c709542acfecc2d6a2526cc23d1f4eda5aa9becfa576d0c639023061647e3a3dec35a5e8b529d74b7514148e723864417971e93f1f8515dbdbc1cdec2c669e5f21b9a8192c71b6849f04c20302047c435bb500683066023100a5ff4a5fbabacd9efd2fba420a37048811983096fd7b1c0d9270d8f3f2b5c1484dcdcec6b67ca9155c2ed41ff6360908023100bd4e84b62fabf5c6f2a9a4b58988a5b258988149fbae51daa7c39d855bca2f58719d3fed9975cd933e460476e6fb21e00302047c435bb500673065023100976e568d4e747b00067e294cb107a40a254ad1a57b83014e89ff4876da7870aefebf4fd069c25ae40950e758f91b653e0230410ec73b45f70b781005def775dbc1cc04a346f58d47514a566fdd431cf4337af86ba8dd348afff70b41a734a566f6440302047c435bb500683066023100b3aa3ce641c43def67c5755f3de6a681f6bda1f12b8de9704c4d7b9cb492cff34daf1b571696d1964bbca61180474d4e0231008368767a94fd65cd3d493786e85a53482a4c069595c22f2702928084048bd6783ca23a2b4b25a3ce3a85a9cd4275691e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023003dd528fc80d9b899bacf092fb75d371eb1d130295b8177158504f4c574273a57f6794c3cc1f9c760cfbd234312d95a1023100c2e79690d7b0949e3c346a823bbf4beb1bdce04caf18774939c661ab176970507e66682ef5ede2d9f06b1554ce661ad50302047c435bb500683066023100db917e5f6bf2fbb47176556d4fcf301b200439befffc590c21890c756977aa9ff2bff048ec1bd418422cff1daa2cb29802310083ac7a1f4c2e0d4a1124eeb65e859dc3baf77cc845955b55634ec2af5b230d58aa3b8990b39c8651719a2adec3d28e320302047c435bb500673065023100ced8ab63d2bc62a3fddfccc5e2d948d8efb0574d6c930b6187c4f6d4c3659b1acbcbd151007a9cbdf17d17b62a3f3623023005c68b2d486c9fb2063b30b8e12ac943e0743b4692def23a6b0460eaa0b09f4495804a0dd5c2917113f7ac7507f90e7b0302047c435bb500673065023100ae815a8b6911cd2297d2992cdfddbf90332a7a92759168ba23d9080db1daf883248c800d2977e0c6428705a0f02f6ade023041c5bd46e148b2623da96be25b3ad8b7106db287f5ffcf30d366b0037f0ec2fdcb263b3606664c7a35a2139bc31333090302047c435bb500673065023100cba42865b9dad402db3199c56037f8e40f598a9aa7c7b157480969898d1fe6e3b54afce5e5252136f356c5529b23fba4023073b11ed0258705a16eb433ee036da95cecbb132ed0ee90b4e424c762c8c2d8cba244e4cd4b6e8eae90cdad5195563bb40302047c435bb500683066023100ac13f98c0a9cd5bde226ff78fb4bce495792a1d6107d1e5aa0d44d84d1944984e169291cee2ae50d3865b22f4588b4e7023100c9691b8b2c011fbb01671359d09db7905157760495901ed8a9b1ded0c088ad8f6e196977a3b9af43c126b38d0710e4e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f4a1cad9352b5443cc8a4a981c31b3ac62c1a71226914557a79db96bcd51d20027077387866bcd92f466f3f36f41a54b02305f3ae959141f4e3cc99f295b421d7e90bbfa3e1ea0ee0ef9acdc6589e91eac1d3de86ae2a5a5e013df649b976c2039640302047c435bb500673065023100fa13cd060ce24341d4ad5f97b0e17a4b341f2a39f27137ae82ce0b10d58d1eebcb42c8c4edacdaf3c6deb88dbe31c64f02302ab099d69c50b9f40de11d6a9b9b8cc864193c75a71bd2af58f41b718db48eef2f281b37741f99526215a8aa23e1b5a90302047c435bb500673065023100e89f2df8af7740e1b10dfbe4fa5e1c63674a55e55f202beb9e18aeb7d78429043cf9cf20d5724bd252f000700531ddcb0230579d47e410fa32fc1829687aac1252002981bc0a2eae15e617b7d150d16a3f9023ba30a2e60a1fbfc1136d3d07a5c6f70302047c435bb500673065023100fb52ff0f9cf5e6fe9a4fdb4bd5b26bd513106c80a2b0ef62c1828b06a7f90998593c03fec230f38f93635e18035e3174023035e3959e3f0740815ea420bd76654e76fe8e09875f76c2c2b575b83ac0d37aa6714db03cb1657fee15d3611ce77491d90302047c435bb5006730650230514bdc9d6397a090a273b3f7a05ff9f9cb8555dc26221d3d1e8655f466c81949e7cdf6df1ce1a96d55b23de2d7b72647023100f9c7ece7fd7c0ab78e1e8bc38971bd7175b3fe28b1fad147bbf642cc5454eea5708e17c8f993b06e6e0e3b674b23efb60302047c435bb500683066023100c783bb3114f482bf9894ddd274785d6a93ed91a5275d1bebc08767ba1faf0010acdf7242a8e888b89ff835c44bf3855d0231009f1bbce716078c871f1cf659709ea9e1e40905d2886558c1c79254d4da6c3f33b593ee520850b087479355722a70e9e90302047c435bb500683066023100968adaaa2bbaa637b2a50fe7277cc4228c0da9967e4ee53d46300ac9fd0939b14393191aca10336e1370b665e3b0b9200231008768504f88bbd258e6b742389e23f665caefb32f8c5e85975736a71da3dca50b999ed6ba46c6c2236e8539de390b55200302047c435bb500683066023100ab18acbdf65ce543d1b8ea2fa5b7279bd6a297fc195aa3527e31bac3a20ad67da689a367acdad8e05ada6ae2d1a0c5ad0231009f9dac158d110c91c4d17c866e34afa713e16312e67f644fbfde0e00ada29516d280dc0f3e4885c66baa4d0eea9018aa0302047c435bb500673065023046a4fba8fec6554f102e8310e6407c14e574b99e8e6eff2717a0527e9615042bd22a0a3746a577943fdf73c1a505f0ca023100f38c8194da18278271665d15ae496960915c693b6616c48b59cde0952756f3e61b429077f7e531fdde4eff96226ca0760302047c435bb5006630640230475dff9c492c9972cbbffabf5bbff622dc8e11a07a53609b5a84227d22a2d27b4f46613358314c4b9592744fbd6ff3af02303a2fe54553b49a1e253a62e31fb5edf4dfc5e0c2a5c2da5c4985d850d8e9f24d9b947393f5e4b7db19f455ec4b5a595e0302047c435bb50067306502302333a6ec77a713d4b9864495d96fea80909d9eae317f578c407586a0390681f9ee0850e70f75b43fd551a12fc8f2b14b023100907efb5535549b14b78a78bb0e9eba847db73f140e8e9d64efff87e71cbe1b52e979f0cec2e37a024d35707d2e89dc850302047c435bb500673065023100f2020383885fa33ff46308ac67c30a4da27d1ed46b95f792a052f246320649d55e238e409dbbf7b56fc6c316d73977b102307e44ed0262752911045ce9e2125af878e890df3007f711d6b310003a8fc0fe89c2bd9295cd453d078c0ea214f74525fc0302047c435bb500663064023035cee483f556700ef478b9a2a383775ab61eacadce0ab0e3502d11d6862b0bd762f57071e10b554fa3bab2202269ba20023010739aa43799c141e439cd2bd43440590773634cb2959b91dd991d944c1c4fc88ccabc82150bf8548ab24ae0aaa61fc70302047c435bb5006730650231008fb92141c731a5369308fcb55c387d2dbfd68a8cf8c73153ff616996cb17a89de349a833c9924d2be3cf45dba5b7c7c8023011e281e912d18f922abf9baf1a8bb8213da86bc21b1aa06b19a4194ccba07024f1f849d0402b568af30f5ca4a6a40c8a0302047c435bb500673065023100acd886180b5d147a9a3d882ec6d130bb8e91de95aa2fc1a070552aaaae96b26f2d6e465ff9c86396206aceb3985b71ea02303e3c75cc07b5a40171c246cd37307051300bb65e6f2e0761e003887080e782ad53a62ac35844b187eb3c63873cb4d2ee0302047c435bb500673065023100da762cff1aec1e577e9f4ab610bbf2fd06a784fe3a024ef3d01f4d7c324afb9c68c6c328157803289d7631a834c41d04023041324a6b8b7aeaff28ce134399eccb3a54c65b5b9959c93553eaad5a3deb634e248ae1e31f163148455dc6fc8637b7860302047c435bb50067306502300e44e9dcfbf97f041458d9384df778ddecc162d97b4a671a1c48d7c48d615c693b1ef2c50b991fcc4694f62fa4686d68023100c241e159ebf37f578e21d6888eb768417eda66cb2506aa58c3de2187803360ff0eeac064cde91c02e0a96b915ad3f71f0302047c435bb5006830660231009d63f49bee9c00c05ac5aab8f08dd3261c858389d95767824142f6595a645e166c2f88d4caf0d8beac51dbb54913a15d023100f627cfe6fc283ef2935ddb4c76382e64a2698b68792cc4f91b73f104feffbb8e9e4bdfdeb98a5269dfa0c053010f5a600302047c435bb50067306502305cb83795d77776d23bca2b34d4b384450cc9c50397449ab40adc478c87e700c55640ca2dbcd4820be15e380ecb95d8ed0231008dd47980c5114d726b3a0dd5117a636d73c0d27700791009c928f3ce72518e6b4f176a1d27196e64b1362e7bb348f11f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e34b984ed46f13b3ab7f43aaed8fe770bdb9ab61a3084c3707128ac5c6ecb55a817c0f56c3d2bd825ec026d60d44f046023100b4b48e2a67109be6f65ac22716303dc9f2290ba756bd1d178a1fc6930efb04bc9881c8681533a3fa92d89be02d4d4b110302047c435bb50066306402302622d4c9a47e422599d78f817e99977c0c826f73274578968f51070a9c824666373caf44d09eb2aba61300042b0f2bf902300a7771e2cf41d576fe41e0de38e0d98d3e4a1a2027df90f0fd8d21ac01cc8e921caeada014d17a2804e2ab01d1846a1c0302047c435bb50066306402302e9f45a33a44e8ab474a15fa88ef8af9c84a85afc68660d3cefed39135a287c054944d3e12356f5fb2dd8b46808dcbca023010e41c8c35fa06fcbc0ebff14301473a22a1a10156a02955a1f973883eb44ab6832536a83d0dc6ef130bcb0b211943340302047c435bb500683066023100cae4d4af5ff9531d469e4d0ab004d9ec3f73a44b98cd127d2d4fc6efce9af21469cf98edbc10aa87bcb1443148c125c902310084386be99f305cade76c0858fe373a5c5871b8764970eb42c3b3d92e801d05ea4a6efe8590fcc313e7f640e5f22ff3bb0302047c435bb500663064023066dda3fd64669364a85a9ee27dd12b01120deb3890dae9ab8a76a7d86c683b4db3ce5168b3e87e3b9471920f032f536b023027ad6572ef0bd8c5741f24e6774efb81e406668820e583d0959a28face4c1aa106937e21991f2d0de3048d04dad739760302047c435bb500683066023100ce4303d74570946b56cfc93ac643395b3a7cfb3983de72896252e18079a1afeddec1ce6813a0ee5011033e286e831f2f023100babc6aa2b1b1ee3ae02b4d57d89a457b2fa004ccfa772057cfcf7603a280847b4e1c6ca0df068af8a45c77edd7d0733a0302047c435bb500683066023100e6af333f3aac9baaf4c7d8c015d7215df88858e081f9627f504447f9b2052d2e825ec89f011d5c79caa6be6b59681a9b023100c051105cb53c0ec70a8a89bf46dafae768aa3153296ebeb5136584c75695630b04c975d259fa865726957fbf356700e50302047c435bb500673065023100ae9a891f691f72cb93200cd3f6380a3017493b02789af33a7ccfe125ad6aa97c39b3cf621bfbb518a4ff4db6914fabbc0230268aa148d143de04b87ada46782547b7519b91b00b0ca29a8ae14c9b8f671b58df0d2c39bbfb371b81f186e03bdc08bc0302047c435bb50067306502300ee7e768649d7c79387d586adb6c183d50a0309da63304e0a9532251b6cda2c5e8dd804d136e52203d731aca48d98d12023100b880ffe68b0943d9d0965084afa1f2f7f5cf8ce7c82592a306e920a49e5a5fe7bda65281caeb5b62ce626f9bce0815c90302047c435bb5006730650230604f2c2ca273bf0383f125634db468f390a19e26d2cc08cd75dcf84522e0438482c1a23db7c90544606de5553db08f72023100a908dbccf30fccbc3d6770561b09ba27e45cb0357acb657302d04f7bf55c20433397348c7794e56cd2cce85a7045ddb50302047c435bb5006830660231009d4e3f2998099ca10e277a0ea7d96177c266abde6948aa07891a1dcde64c2175212c01ab124add283647d5f764c4a29f0231009e38fb8eb97e3ad8339d260bc8d4d8ba380f20aebc5afc5dff60d9380332371597f326a9b60ffd1b3a95f5322cad41f80302047c435bb500673065023100ee53c7612688ef19303adcb978dbd1c0e7efe5b94bbb973336dcad1080f9b1ee31146defe37c9affa5ff0408979035ee023054880125867c77785a1fab44e80f23339548db68c7c141b4c7a3d87b98a7976fa0ce4ccef2d62d9f39f2e8f9c8c001f30302047c435bb500683066023100c60eec0061cb59941cc53dbbf6bfbf6823b7474df403c25fccf6cda21427cfe6711fbf6992522068ed478bae84c24dc0023100ae5e38d76ab8c0d7dad3579073fc4f5fbf48f90802e5812decb203ceec96b2d7c2da6d1b0ad8c841eb1417c3494f480b0302047c435bb500683066023100d48f5418f918f9c061c8dcce5a1ab5bf669bd4775857ef5be974e44298d62d12b85a31f19848961e7aaa978d83b07c6d023100b4239b85a64b67e8de5d44113d4bdab671f763ecc42eac907c80f12ce9ab0b8c943e79bc8816a151c404465912b431250302047c435bb500683066023100b89ca0ed2b59c09c8101ad7016f1ed867faca0bea01092c3a22205874660a0f899a797f5448bb394be9d77b5c1d673e8023100fb4d6775b759727d3d8c1a0be7f8ddf067d1ffe2c352bbda05e8e7fe8a5b5b24900dc5f198e1ad1a4dcf491615af93b40302047c435bb500673065023100fd778a5fc33116359f21d560185466e649a809a2d61d82630405a8b3880a9fd82d6a16d3c38e96bd8ddbaf42086a3bb702306a73ba5aaca2df0d7c06d111c64df40b9631629d3b22ec9087f826aa46b318236759efabc27ce150f8ac76d01becfb1a0302047c435bb500683066023100e3f2e78361490b77b6b19bf348022c73e9337c0e2b4ed421cff745a813d7319557d9726df07186dcd5ba046a55c72335023100a8a3fb0ff28a1ddea23764664ae79ccf89fef61017d4dbdeb01b614ea66bbbbb5ce4016d905d9bade568ef9af1594bf70302047c435bb50066306402303b727d0642b344003ffe734d2b482a97f5c12deb12900f9d55a8cc9e36bbed48581fd2f0f1db0127b3b4f9b5d25033560230061066a3c1595d13d6ca771f2473e2f24b5c52eacdb16c08eec3b30b0fc3cdeec3d2845bdcb77088ee43df2b8affb7450302047c435bb500673065023100bc0bcb9cc9ea3c5ff3c88bb9c791110af1132cf582888d042fd35ac807c51b9aa79fcbea3df1f6ddb4fc43c72a902ec30230272a2da7b3817f8504d38e7112071c28ff403141ef5409e41c63af77c252b990b4b032fa9b98828e04951b935a11b6ca0302047c435bb50066306402301efd515433281d0759b5dd9698a34c3f227523b488e05f576f8bfb3d1c1e53ad6054229082ecf21f99a407f384dc7161023008adbee94735c6afc117e01ee009dc0950dbbcb3f7a1808b2655d3d12f50cdeae2e23b4e162d074d66f48fa4ec96bdfd0302047c435bb5006830660231008c7b7ea52e72865f0bd4c53a6db4c1667bf07fac66e0811a117703515dbe39a8ec4caab2246f5ee9a89da42cebb64235023100f9adcf201f945cb61886e743aa2dce4a75a1afb0ee3b7e8e5765f95b7dc0db52177e2cb2707c694cca62576f3d51f9d10302047c435bb500683066023100a6a7c7cd41d5771957169c3c89bd5010f8e3d18f82e60de5b108f433eff6612cd7a7eaf2c541b06d70a06f708d34f332023100b4170f8a0e91330041ccf2644a1aed568ede0e7d793e4fcd5b263561d754cef5ce1724f5e11cb3cdded8975785708f490302047c435bb500673065023012fecade2f302fdf1ffd3bb181f7ac3f561d5f3790b449f996c9faa20cf285e3af07f5dd84e9ba7617965c88b48132be023100dd9ddc888f1886cec902da2cf25eab94f9ec230c2fe0f74b42e5c37b40ebcc6e1d72d720afb140ead45c11f1f7e88a480302047c435bb50067306502307822db716d23eafc9cd04e8d4ca9bfc344a5cad73da0f1b4a3adae26a887fbfc8e6db93d47b14986bb262308d1e068d902310097aa4fd9e4882f189ffc0c4121e574e5d9319dbfeea5be0109e750f6b3df831dfe88161cf94295da7d77c7d7cf213c7b0302047c435bb500673065023042eccebc5215fe2d9ba620e04034f11217107c55953d901bf6d57aeb2dfb8c5e844e6bf38193cf3d35437941d72cfc55023100b31176c24cf944e66cac462939c0273718558327699b4ec3560d79d851eeb1772834930f8f16a51ffb92fb937f25935a0302047c435bb500673065023100d9fec3662ba4ac2f2d3b65be89604abf8d76b165508203fd790475cad1f92395d6e0d35faaf30ca9c6f53b810eee652702301618c50c8cecb4b0c413ab34747071261e848048cb8b6d9f441c5a3bede9c43da3a3b98de8fe2e3a2aa36cfa01f63a2e0302047c435bb500673065023078b50ce3ea32661d36c51d4ee8026952e7dd89d63451740f912906c0129c9983da0a2ae0e643859bbd3c52e5950a9654023100c385cf6c25f2bce7e0c9ea7924f8dca379ef674feb356226462d313fe8eaab196ed472d7d962c356ab6ffe6ae0125adb0302047c435bb500673065023100be90e054e124b8ac7b9240b367c58792e8a791a33c3b3a73538368749e7095562f6510dbfe75f3e3ebd11f98e1b1434402306e41591ec09c6ccc7ac0a598a16f27cec5654954d0e36c8efcf59f708eb6429774dee50be3beed24cd6f546acac20d3b0302047c435bb500673065023100b1999c69e4f251def75724e869d8e9176b9167618a61eb344f78dfdd454d05d652de840ffca370ea0880a1cbe3b795cc02300e8bf453c536050f4a77e64b81bd1f4c657931fae642d8fabaaeff4c39dae01752fe96a0f070adf3141d4763d40450160302047c435bb500673065023100f2c7f25e272c623300a2462371510c5a7b7aca40b0153359f5d8e2c7445d06b6a4d652e6d774f07e58e7d9c81cf17bba02300bdbf500af8e1836cce85c7a05e620eb8ea04019c8201f968f657c20e0c7a1ec04c7f27bb2bddaf2ab8c06d9a81d69060302047c435bb5006630640230233cbaa9f5d9af7abdd2e9d0073ced5a463d1dbb2c5ef3b602079b6a1ff67918753f0bf79f680c29af972b728578eb8e0230145ebf9aec558ac6814ed7824302166f0f79ded4fec6ed43b252c91ebc773deecf999a45114699e1a614f6d74706845d0302047c435bb5006730650231009ea893d42e51aa266bc0bf35a92f1b78f81567cf333eb4e224a7dc434bc921983fc3b5e55b76af9ea9d7c061b0323beb023024079c0734e507cc4e85aae7835fe0368baaeb549da2604659fc4408b84f3d9fc9037755eec0a731f113f12e17a76d690302047c435bb500683066023100d69c9cbc4935ef6df5ec610dd79a265068b663f682d7eb0c9f43e09ae20ba8ba099ce5fc9dbac9485588908a29733c78023100d366c0254c893a5f788df94f9499a58b92c55afcae8b28a8414bef58b461c8ee865b5b7a0afdc1a7661fb83d73a2eae20302047c435bb50067306502307114dc3660427a598a2e6c1876b917ca0cfe7b7958fb09a20219780e9db39e2ffb870d0cb54a2b14878978beb3b57422023100b255129b32dd6e08c49756e68b155a3ce713b34d89d6f24f2c0ea0c4406510c5c133853872bbea7daca8db7bcb69b4600302047c435bb500673065023039fc41dd0fb4cfe500ccc2f15ef4e01b2b2c412630b951045fc4726a88b260358cb8e2aabfe20ed6ed9a0548155859f4023100a2d94470dec06644e56bb8612d98c07e32ded029d447c5c9e78263e5b03c1941ce461fc0b394a66cd208ecb0273761eb0302047c435bb500663064023030f1fa61e20d18dc4a76938a468993db8d2a3fb4ec168b15dfe0ef15497304ccdb49a774444a5745da2f48c678d998b502304035ec580793cd469f950c394ed77aeaa4e47b65670e30e53416db26829697956c01e2afe57bbbb130aa43209c6c2f2f0302047c435bb50068306602310084067da39434553058a390a05cc0da8a374f3bf16ef25b383749497b170ca94b5a4ceba420668838970fcf2c462f654c023100c7a0d16ee0d6e134da8db16ce8c4a9e42ef5690e12ec2ab96a074c509e8389c114e837012a41c26b8c38bfff6e7204cc0302047c435bb500673065023100ebedaadbf73cd861c412253df9dae68231e4b6d68ed69bc844014b77c99461ddc8c785786cfc1772e124c77be9980e6502301f97ff723912a1e2a867fad356f140134f8d667b884109143c5bb286e650d33576af02b25211a6937ddb69a7d78af1130302047c435bb500683066023100a5be083c50e5af3695ffcce32ac51fd3a436b760ce5085c3335c71feac255588b1d458c3df827e0bbfbabae4d419cb2402310096317603f69600ba61a90191d254ab4bd67773de85642ca2a4d68f2dee74bef92e73105fe8b90e018a14f26c43e137cb0302047c435bb500673065023100dd20c77f01cae589bf68959482732256ae68b5db3fe6d4bb65646d7c51768bfa20610a22e6923b2fa2d3df2bc02d258102303e12fe43aa543d2f4f257ab9b78bbf6961788d51bc2541e86bb4749bc1984c31ef5f6537a8d47c95f88111672005509a0302047c435bb500663064023037b32452ece98175bf67e1e066faf13477b3689510ea04cc5d7db03722ceacd36feb1e763e268fbb3396364ae48c743302306ad3f3b18c817c71ad3f494a1887df84450110ad6e6d81d8ac5bb9b91bd31bd5d2a0d7e6bc25f02f9aa8aaf0b3b01ce40302047c435bb500663064023017892be099ff70a1a066e080f9824d4018b9ad823cc5f6b768d23f65fe8a71d2b282a1c0f5e36f7f18dea3d466aff95d02304756f3f3a793beacec26e175b193575edab7cfb2cd8183904ce9a312ef3263693a0fc1e5254a207178eb907a67daea340302047c435bb5006730650231008990d453f85f36ebf8ace707b0ceb27370742096dc6bdea65f2036b51bd0a8d2a6e830399d8069adf1f3e9cdcfb410d7023031297c6d9f0520856b7da9da6f13b58c324bf1487040458847031e1a4fd238655312551357a7a9d87613cf9e273502f10302047c435bb500673065023046b88ae9804b6b13c547707a9acf45d3bc0206726a4d8eac2be8c88384176c728d19517acdb485e16cf1c750f4bdf7dc023100af75709c89aad5521c8ef93a68ac794504f4716ad323cbd6a2bfcdebc65c71b0c845d0d043ae2fa15ba4aec12bc12c3f0302047c435bb500683066023100bccebaed6a246cf650af0a615d8c520ea29a94c1cb5879ff4479013771d6fd593452f0dbf1f62886ce5ac97db5a8154d0231009fffbbb7baab8a102a4f7ceb5c37d3a8e82c9010d4202556633a2df0db9ddc988b7e3a4854c66f9840b694e2841b2b880302047c435bb500673065023100e2282e1d9036c2041bbe4026e83beefddc93f8b49319ed62b17a6562a0585a41a5232c993884ec0d8ea02e5fffd2ded002305fe2fce1a1bea71e81f4b1531c696c978de2939f537f038b5a548b21ae8df1e040e9ff4c09d91adbbac455c5010eb7030302047c435bb50067306502300a96e7240314c87f04607bfc8d0469307e0ea0c372d2a693679b458af8eb42329582beaaf66760b573ee0baec84f0e3d023100884fac70a0c87469f3a1c5b7c983ea65eeaf5dc1462ade0b7c3c32167effe3a7a15d49fba5a2d7e0d90988eb15a758ea0302047c435bb5006630640230388b0cee628a524c780cf293c64d0da87f29079e0e33176bc492036c381f9710997e759598efa819a08dc54c5579008e023019925cbcd122b6f2f7f51fcfbc3625f974ddf90c6b67c248ebc4c67a79255e1939d4bb12e952d97e5779c3a4a00b98790302047c435bb500673065023100dfd162117ae42cc1ad5642fb66a9ab717bd39b3c45ef842d30a18173a33bb077dfcf3760e83a32c38825191b2d634cf002306c4c73fcf270c159ae9b788ef4e06453a3ca2cf5d7d58cbb720f5f98984a0ec151c245f3cb1da5aa7167e6beecf50ceb0302047c435bb500673065023100cdce0d9ab905a6e1f951e5526369f96428a1dbdc60432b02c401a707e24720b594a4ffb91213ff26fd64bc4a80935d9a02300248162d87ba85b1df5fc4e985a4e812ffcdd1e2e22bce79b2c0d115a33638380f94cb5a100dff4890b8e50964b0e5f90302047c435bb500673065023100f9e552d5bcd46729dc45b6e39f695eb5fb9c914fda9208ee06c9327fd428978a5e7b830dc16a8ad5c8243d218dd6ea38023065300cebe85360fe28fa1aef5ea928a823f4b615f72bc054048ae82af8207e8d097a51ed7e8d0bcd4543a8de7ca057520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306577b7992c2c91345d560a3d5a696913be21108f0ac5580f78ab8d61f0a938d834dc5a91547038bb017d677237c8dae0023100ae6c2d7a22956afd27a458b6cd2d94d00460be2e6e2679164f69186ce211623f4bf486fc342e712f81b4f9759df600670302047c435bb500683066023100d2827cfe90c4795b4a67b789e70fbac53cb97d10f0856e3fbf8774b8e95635fb3cdde3ae324567587bf79bd8c4b7c0fd023100992687714684c87674408f7218f392cb9e6d3ef748eda73dccb1e2fd7474e7f251f3a16e620b602c13d7a46cc82758f60302047c435bb50067306502300ba752d22622645926e1e00ef11a9b205a0620d66945be582eeef13a2b06034bd6f3ac30063cc4108de4444414e8df6c023100d2b8fa3655a890af4b2b538532d057229fa08f0a52e977e53c5ceb79632a9b88bf7142b77579c05d6dd07f764e99135c0302047c435bb500683066023100d8e32c1a8b9623b180b93b56e33d58ad9b1a9aa0a84548bf24306815b5358905d5b4d9243985ef53bc7e3c355edce3bf023100bdfcdfc162e0fcb4a2bde7ca1382cf2d795ad64e51b0c5c2759a0794f119831691661e51d127e8afb88b72b0b878cf910302047c435bb500673065023043744fc79f5f976072412755cf12974276c952142cc7acedaab39e47d3019cd763a55438a0813ad0d4e89b962ade4a55023100c6a8f799dc0ff94cbfce4412d312de8cb29a6a9b175736ecb33a6ddd2bcac48c7e17cb9d995cb3c1bd6efab9584156f40302047c435bb500673065023100954b7e6e5a9cf4dac8b9fa56dec716399b36700318d43742f6b45305dfc664357e63833fc4b57ae5c0016a90ab7e081602306cae6990ebdc16253e9a13f28003bdcb7cea547a3e9d4cf613b1e4302e0600e44cbbda02272cebf82dd282cef0eca2100302047c435bb500673065023100d498c5b3a6c6579ce29fe4b597395950c68668ee1fc55f6ac5ed67bd6397d0d77ca8d1a8989838dc6e3d3b30c7154ab7023017599e7396dd7f2b860a7374d7197981ebadda2f9f0c62b86505aca48ad8b4b2b16891a847b652b51ade1c30299566b40302047c435bb50066306402306e3f53fa7e6ced59ab5640e69cb5e5cca10b3195da4d5072433e290f08c99125e5a5471eb5b145c1141ebac9056438c6023027460820c5402f03ca464de1644c938b2086d84b090865228fbf94d12748ea7e4f8b3ce444a0afc87057cc30564157290302047c435bb500683066023100febf98a0912f027225059ad20c438051f2320a0659a0de30f8ccef676a8a20837832b7399ce94835b483e19cd816ceae023100adaf15c420c86443e63d03c26b407b564dc4ed13b60d0b8752b3e4e3977235cf315eca7f316f32cfac3a40bc9754563e0302047c435bb5006730650230770a374048363152f4b45431e31c561ab7dbf2908433695c07cbb4bb25b1f73cdd1d9dad883ecf5e69c13e443f4e822c023100d32caecd363d814bc024ba04d22c0f2862a886395c2137c63c2686b31e8e39f232515e7e7248c160d546ab6f8fe237440302047c435bb50066306402306f6d4bcf916306fe3e079b95d8e53c6beb393e0f27628ca6e1bad7e7f1f5ff8b8047d312765b18f171b639d00174b4e10230093d93498b08354ff0781b8c072a3f392e35bd52e515d1e5b7a3ff726f65a5a8046bbe050b6cdb0a5bb89267833220980302047c435bb500683066023100b3a4030b55f60450dd7d9af651515dd5dca0c6421ec12a0135dd56eaeea616bfc04931c8b4687b1642188a987a1d2ec0023100aeb25774f35c398571b157f78dd557b51cd0fa79660a2f826095c03813e5e5b095978080437c919d921902ed8dbe508a0302047c435bb50067306502305a8af2ec5599847c4d06a9e9e2accdf5c6bdeeb66241292ba44bf8cb8df14387a1308ae52921aced8180bce19fdb8d7a023100fe0f2c5dc4e88cedab4c40f65f02ccde70a939730a27c81bcae451330ccb87147ec0b6ea7c85b73821844762d80aab9b0302047c435bb500683066023100802381c0833cb783640ed9897048f8d2da4fa3349e3da0e689de0cd49c15a282a5502441de4dd3ccdf691676aceda6e9023100ff52bd01a514847518883651f06b3675115497e51399f5bc0e61bd7b2bd47d0590ea622b63c1b369eb3588c701700eac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d39a25c1a4e6b4ff8ae9f9d2393100198282000bcf2cc3032365e2bd0a70bbc227b0488458921f380a5a253c7605d46502300090e639dc352a5af7933955193e4690690f5d4a1bd493b0cfbbcff0e0aaac45347d9c4a7e1262f1c902c9c630a82a800302047c435bb500673065023065c2c6da309f577b9aa35b4c3023e78d91d6800495f9236643ade8523cbaa57bd0948615e204c9518f025e4a36a0e792023100cfd9bf5c20dccb677ea360870964c5eec90f81dbe65ca9dd03a519783e95b431da4f23fe820b244dc8a29eb6a4d8fbe50302047c435bb500673065023100b2c0a5502598e84e83734e58eb788d08f6e5dafd7776ce5d422e3a2c2bda1e8499e9ab59946bef30cbb92bf53003ab6d02301c13044835b9fcd69466e789785a444cb079d7f392258371ff6ea7fcea0e8287a974ea68af3b7337e7e4aa41b61502ec0302047c435bb50067306502303d3262bc29ea79b1dfdbbcc4fa05b41cddb3100325d21573d37baa5ff631ff3f037e1ff478bc3de0794e4d98dbe016b30231009c98213b162ada58e91d56da0725e46cfc241a58904bcc4e4e3182a33424998ce47c2930bd0f0299a17a6a0befe525f40302047c435bb500673065023100e3a92575f0f940b7ea7d781190743c96b2fc2d618737871303a414c2962d90a72e546f9d747af886f3f31fdf9b669c6902302ecf7b0b1585b21fb9cd1fa7ef2c390bc2c48cd9cb2f0f64a3c500934bc9034512f0702b4908dba5a2e09eeb7d0f86b40302047c435bb500673065023071de3f4362648967e5528939bd7016efbf6324a79d8887d6c012d5768f558e49244c800abed56b47b660ef2077f68133023100c8f2af8053e161891e63a8fee5fceb36156a9a23a65c76b562b7cb5bf364b03dd75d1dbbc5503b3af7d59d686ed78f120302047c435bb500673065023100dc515abb20c32a2dfac5ed6961666e31425b5820ddd2db43e3753e9139e295f1897c1312915a6b8f804d9eca35def84e02300ff7c4d9e6703159d7c36acdfa84360cf3b6ec98f3f53a58a0fdafada6ff7c801c6f6f186d721ca0effb928fa412cd4f0302047c435bb500663064023030a7f8176081ba8c9f0137d233371fc7a541def936c1d539dc6390651c17815744c54a53c5ffc6b5aca353b44b5c638402306a683b6db3b1318187f1e526980d1c9b0d31a99631fe89f3fb32c1b7b86f05ed0cd88ddc55b4d4722eab0467c8a0c9ae0302047c435bb5006730650231008ea96199c1ad972779b980597a2e82ca3417da157fc7c573c6f29763616ea363a36dc890cd41d6b2ed6d852e85c00365023033186fe9f6cc13c490af7ef033f8298096229dbfe47c662270a2ae43a6b09893b7803cabd2742b7602b2aa4544639d0e0302047c435bb500663064023015bc205ce690093f9c7eaa773603dc5967664d3c2de1ab6649b0ad26b31aeace43d2da6dc57def1501d1ca33618f38b602306af3402fb6d46955295dbf8c41531a3653f0855be385418fe183602da883fcf44267e54f1e7313d1917d67cbfa454a1d0302047c435bb500673065023100c8490a2ab9bcbc4d59343e749a3e8c2c8a2d34ffbcf7d64e39f3453e57f3b1bf39410c51fe7d04b9468659efcada4f10023036e2f3d048f8bc06aa20c7fd3372f2d8a9d9b5484d51b431dab3913eef2d98b55d9e0f696e88279c49271649761825fd0302047c435bb500673065023100f5d63d114599facd83bf4109342e261f73649894c8e034f3099cf34c836d95d3c025006e6c3e0c9d473ce8dda55f78920230397b47321528668384d412163a4336c0ec8869da54cc679044769dd429247b7a93d191be0d058e7654c5cb1ec96909330302047c435bb500683066023100e5334438ba10f71ca537c29955bf4cbb61ca8485c42ba2e91278006d8d47346ddf8541b1ed416ad5aa63c260b5e7b66902310090acc0a71f886d7cc8f9aa93b1daae3feadaeaf967bcd8558859f96c7ba7d4edc24fec121f6bf76810cfd56e425d1a040302047c435bb50067306502310098aebb9ec70cd521cc6615674d70fdb010349a6bc82feb392b828dccbe2b1694a8df5133d5e7e77d2c11b7200d6fe70b02307d39d7a77a0d37fed62b958b1c3ddbfe6524c750ad4451c41443bb20df5c92571b10c62385925f41816938885facff4f0302047c435bb500673065023100f6e7aebe3f6f9474b812e2113e71955ee0deb66ac0d89998d3d1779bfe12773b4b5550d7847ae414f9ed77c3d9cc80510230436db796908ee162a654f804729a44e7d96cf28bc6f66b70a9919999da5c6ad922fef1f66d0409edd3a9f4124bbb1adf0302047c435bb500673065023006a855b93a1fe45573a183e667a872c90fe7c4c5defa89bf00c06341ebeacdaae61d67bdde85d61fc75e140a8a710483023100ba9d386820d76f354af6852c7b7b5b8edf98e090381e88939e1c9eb85631a7851e00ee2c13b119763da00d8d58c779290302047c435bb500673065023075f1a6a1b8bbbc7522f23858a54c95586fc79b80d50286e4de4461a1c866349f8746461260150854f499fcd156ffc69302310090708b14ca509a3fe6a8779c4c45c07ee7f91774d80eb294ee8662ee59c12620c505e52fe12ecf5750963882bf1376b40302047c435bb500673065023100c289874deab625215d9e8247b0ac68b9454baa585d92cfed683c42f549981d2025f3b8309095dcbbee51cdbd3bb77cb7023039289f7381554cfbd2502ae45fee09e0072869eebc01147ccf7fac387e5e1de3b2c1cdf891f94c2b70ec3a746f89e3640302047c435bb5006630640230314b2d46d3cbb6ada10922e775b44e4bfed205edb4d2bb259bbc6fcb65e28deae5cb3a8b1629f490b37eb0e0ebeda31a02303b9d620aadb5a6dcfcd98d06f736ee4bfc8ce0acba057fc3e86d609d7e04d6dc8db91c13114d9d427580e52a9f3564ca0302047c435bb500673065023100e4412f96b435bc6282ad80da98709427e2ea553b1d5b1af1b03c0e42cd3de053dd5b41c37c359b546c9cc203f218fc4902301be0bc697be5131f3153228d26414ca62f011a9c91b6ba854231efd8cc660f8c6809677e2c64527d1645d4395ac3a08b0302047c435bb5006730650230077bcd6f0393f12441a40a95d0a7743bd82048003c18448972c33a895bc5e326b53a9262ef2c4e7094f5652d696727e20231008652abe3c161ddba8b20fb2b3bcb2c52194cc227b74d37ed87158db7d16479ab672c21b07a618ea43d832295fe880cb60302047c435bb500673065023100df1e2df35928852520035d1342a79445cb12b04729dabe9e3d8e33a76db461b5fdc6645a4d3c65b078cedef422fa388102303357c372163e86369f54149deae33ad138406eb3193bd29feae0b35a1d4bad499b6098f04e13ce4932cf30e4567ef79e0302047c435bb50066306402307c8d80b7fe1d0c93bc336e6c8ed43f0b93fdfa45403973d36c3b95823660a5db2c5cabe21942fdaf2db20208e74dcf180230749df8a459cede86e045539cba2daeb92ef532a831b4bee0caf7c29587516252611bbd85e7c1a18d934c22328de42ff10302047c435bb5006730650230729811af129514bb464f996aed2a11be3be819901b504ab08159c8b31aa24244a26e79180bd292920d9c9bb581dbecb2023100a627086d496778336d0faf19475f05e74436c26a2be090432e5d4928988a27f724f2db88065d5b6850b2e188300921420302047c435bb50066306402302c6fdf0332ef314a9fd41da9e78a10bf9997b77d163f83463b42c41bf77f12de09910cf40d271d1066c1b5574dedfeb10230718902faddeb8dd0ba44c96a999bb021f61e02d90411bb48b22cdad1b1de3a0f1774ecbe05ed3cba0300991c7bd903150302047c435bb50067306502302ff73b9547d172e5e7da2c5fc98ed7d80ae625491a47b739f5000cd29f603c8a69bd113da6870ba4b4f4a43d84054eed023100d2408d1abce9c27986b0617840e7d957a8f4438805904d75418aadbab185da38c64c7114192fe10e659db1dcaf77f0680302047c435bb5006730650230142f872eff295bf5c1b11bfac48226f857d4d38811377f09e8c2b74df1baff27e128ec830f54ef81b1ae2161c350ca11023100cf701f2994b17588840e54e426409b09750a3e22fa30cc820bb77a7f0c532f720d2ceea77ec0d9119e71a1a0147e31480302047c435bb500683066023100dc941b3385282b046544ae63c4f82fc9c1ce4cf8c7667f5e2297b87d3449e6a7d110c38ebf2c542ff3eaa7bdb26f10070231009afc6c7a5783cb0e6760e8f55c16a1079bece1e815de528c5218ef8e09ecb2850d3e829af873d6dde74671d5c6d428070302047c435bb500683066023100b6039562c47c9cb216d57987b3ef4a98fd24e0513167ec80ff290aaeaad0bcd464507e64fc2e0aa8f7168a096a8fa385023100aef76874048ef0eff3349cf8eb28acddc8433d41a62f829a80d61ae6ae3d1c546ace0d4a8de2073a577e2eae85b090b90302047c435bb5006730650231008c296fb080a935d474cd120bb824f598b674bea563483da262207525032438554a832b2b983dd2bb6a971f4d98b4ffb102305d5e1fec1163e46185bba5fe93104a97a5d8ec3fa54b0e86c58286767f167ce849b96156bf7975592390ad08912b6b070302047c435bb50066306402301945740d7718da0343b6e7dfd6a2240cd890a60a909c55a08af41db0d445254b1a2cd0f2ac93735d0cf0e0566cff91f7023061205223153519136f12c8439c3ce21aa9d1d9fd59c0310ca45bbd7889ad2d9d30e45f3ba42482dcff8de5bf39cccd500302047c435bb5006730650231009e9ae336b6c4fc651366b36694633f711b7c3c7d285fc0c663f2afb4d73859b273c6c7a916e023b6b611ea58e533864302305ee2b8b6e349f42b9fcd4d825a8453b67202bd4361f19aa8dcf70366fbc63812675fda2b25b6c64847ea87ac3cbf90f20302047c435bb500683066023100bbc0303ed9d939d00e88a68bec5e68e22256e0de31641f954f4f8ca903118a7969ea4678ef9972c5dee204553afa6dc1023100c051c2e58558026afcec1ecb9c64ba1a4044239f567bcaa2a4fdaeafe24838b6dafc37420496471d09880f0a00393f290302047c435bb50066306402301b7f267beaf02ba2b3de415c74bcbd8cdf19bd491acba33ef06e68c1bbf7dc4714f559b6eb0df6a2757f5de8d46fbd530230473bc76ed6b25b36169dd815c9872a26c37b9739ea315fb191a25e66eed39b6683929d65cf2fcd4cc8f2f0b0c07077c80302047c435bb50067306502310089b2c7c8bcc86258e5e3103e3cc9f02e9096d795d4263b7c356b08e6ca0d613a20142b8614fa3fcc764e029745d316b40230254fe865fafe53b3a4f6c943c763375b69db06838b31ea86649d9ae6e52aa088baaf1e3f20aa7f2cc9a148ea0903f4130302047c435bb500673065023100b6803b15b6f85fe04773d13c4c0a802a983158e2ae62a8cdf1328a1f1e1c4ef9bee4abbda56100a443622e7be8b4f9c702300ff58246963526cbf968a7c596151913221f937c681ed5bbaeefe8fc31c56b46f54bf92ef1d352c178023199c58a88460302047c435bb50067306502305d1023e6d23e307eb4d7a4ab3992e060ad065902f549c74b9d5fb900bdbeb492c7aeb11a1cc2fb5c91e5e85af4ba5f2c023100913a8d323a642f7d6215982ac04914fed53d1ed6bbc82df9f1b7004e77d99c75d451361e34e78e1ae06b2402a9207f1b0302047c435bb50066306402301cc36798be94496521d67ecbb35fc80674dbe63e31d9263cc706c4a38296b7bc8fc827f8658184f5f300416af9bd2857023018bd34ae7b03619b0f3e2d98ae7f7b80af0a27cd10f3e690d12a57299961cef446867b2b640b8418e30dbe5283c045670302047c435bb50067306502302aaac5b3d9f924aaf0da6a4ef682fc786d8569bb821f72ff183746fa9e1d2a09cf2045127b1eb613f31583d2d1eadb340231009cc4a155334e6ee017568fa04e5463498acd79ce57c5d15569fc3c8c06222c14ac6f83b1d0aced01df8b4df77972249b0302047c435bb500673065023044641b3c0a57ebb88336001ed035d99c96822d6ed0d09874e9386690827a43b6ed49436a7b628f12609a6f117c83fa85023100bfa5b00f11ede07ae22919e869c66b5d9ae5ce544787e6930929c9d9cb731364dea45561cd70719e22729e41c72e8c690302047c435bb5006830660231008963d745bfdb44b3fa401a7e7d0d4320737330bd60e317e65dcebfd67e64a342ca7562da64bb79c70d2fc61518618db1023100d6f91f37229a4d3979ba11540024808b71dd7352dea630ce219bc4cc8ede92eb6e33372d3107a50e287dd602f6e4383e0302047c435bb50066306402303090be58a05005350b691d2b14e89c09660636a91b0063beafeb924f1b3e1fd7f1ee7016c408e58094d75c7ab2d34dc202303ee891598897a840c253545fc65643b5127c1b1c6e9a25aee7f03d88483e6ab7320b86966bc51341cc8b0b41c50ebe100302047c435bb500673065023100eb7cdbae1ff54a17af5ef0b3121fbe61dd6472521e8c16cb6c33086bcaa9e7aafa50c1678dad96a98c2d31072accbd5c02303c7b81226ecded7f8ad86312dc20adc4c9098e337051d45bd2928e99b65418569c049a1d198bb5b7b68b72107d1b18e40302047c435bb5006630640230115e9d6915e9a0b7255e6905fdc61ee8933964642bf64e58614419319896b8a3e55aa0b89b3b2dcac7ebee7b67eab92d023050c5a76e5da63b45d6e3ef3b3c102fbbb5898c7c4d22f48457f626ff0cefd42e951b75dd9384855ab4fb6bc8e944d7bd0302047c435bb500683066023100938434ceb38749a9d4e7ac6ab0977e3f3779e83287a4660e2611f1cdb83d6e678d9d1b06616f5ed4b45c8adb9f4d065f023100c70ba34de5148ed009bc7a8202582a9dab99ad4a5bd9c08d9e806f9f687a8aaea7495b3210e1d9124365447867651a490302047c435bb500673065023100cba9b8aca792e620c6b0baecb6ea0e4a723921189682e4e0ec208fff47d0387d95f8ffd961accd299cc4f20f60efc64302303c902c53c32ba13c0101b742666e30d44775512fd1893dffdda49ee81d1e392e24552cd36273afaeabb0a01b4f917e4a0302047c435bb50067306502307125b09d22e417c7391d142f0ef7e49f47e19e79db16531d9148aa1feaba98bc6aee2b15f3a939e56acc2d75bb033283023100bd62f4cbcdcfa4e56d87eb21ca392a8a552b4a82b00b92c924f73d5b90a9160ae1668033fe7dbbe603b34b460ef65c560302047c435bb50066306402306c0a628ac284103cccd101074ddd0b4204c55f1ee29393b33c6cd66eabc33fa5a2aa963cb7ac8e2e106e7a6ae5d0744a02306409f75c1f4ca59320aaf5be797573796062987399f1557849065070aa2066ed41b747ae3175e1145b36b75b4a0ff2620302047c435bb50067306502306197b5c7cc7b92789b5cd896acabed8a9cd280b301b47c7edc70afab6dd24b530f34168b63a9fc6223122d9be9f12405023100a20ea666df5d923447379892c1eeea1744447528e06caba4f3b1871ee8082493ce146ea9bb21367b970ecfe9d48b253a0302047c435bb5006730650231008062128e010f04a9ec225a5e23028113f8639c7f66f51d2ec607e60a8fdacebf4779b4507b75a6da4f43b73f135ecb6d023066d4cd5e9e621717decfbfb688d1fb2fd0a5b8dc33653a10c7df8c0cbc5b5ffe3afb6f4e3942ec035fb1ea4bafe7a91a0302047c435bb500673065023100a039ab53d19aa44b721cf6f6ec42d53b930e40a3cdd00bba4dfcc7dc3a01f3a5621804fd218fdf11faba4cb0fc0fd29902303d040e3207749dd5fae81f41fcbcd8bb7aca5c443a8dcbff585f91795e6a649c8c9dba164adf4248d09f11337b14dc8c0302047c435bb5006630640230199db78530217104116a96a195184ad801c4736532e78d2cc00d1d45215dcb06bd46a102ddbde3730e422fd5cc6f68cd023006b46cdfb1c4f7179964a507368b0b2c303ffa3f21346575e7acc9e203609bd0db958775fb77d76da4c4474642c459940302047c435bb5006730650230774d5d0321f36fcbf30058353833b4a715435c35146dcda7b2dbf3270618bc4f1c70d76660c467c4cf9633a3bf986611023100a11fb0da16a3ece7276319b732da80d92f3bbe7674efb2665b60f79edbe375d34ae987dc8c2ab218fbe7a52beb9673140302047c435bb500683066023100f93c617702e8c75773e19d090698772abbb6af9c0be88a0261164402f78ebe2a74156434713ec77a43a6ac12ee42e1c3023100a1bd35e61a52f01d7540a2530362c53c5c569ff266ab1d12f8a3bc3c36adde429135d658c3a419cc062d2050ceb771510302047c435bb50066306402304db395e3d45d0d2227907770e9a5b47679fb3aef2ed3e6952c8be287cbe18b082105d63b97b42aa986792e4b9c8b2a87023008f98b4893029bbad239a295cb29606fa245f20edf0346ac9652095d5116ebded01a056a9640c4d3ae432d01af207d400302047c435bb500683066023100c6fcd7693ccbf1f00e2c399d82744f5b5f990cb6d2b84b3b456df57ec42dec9d09ef7a015f149884babb74e83e2c4db6023100a104e0acd2a4c572fd5f8b6c76a59c67965a118357aa1ae55fa34395bab480d7f2d028d8f4db518c8d8fc8f9dd469a550302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010a8fa36380dce4705fdf62d50d53ced008bfb6c63fc13cc649e3152f4e1a680af4f04df1c297ea3b6519971814e332c023100bed68895bfade1c960f4f9efec9a4c3cfa95e2a5dbbde5665066e08968c31bf8e1ba5205ecd031e82abe5662bc9562910302047c435bb500683066023100a321dacbc4c2a99cb3367104df2c121cce1e95fe18c84630ae238755e6727aaca9a2e08122b011c0710d80c9e95d4f85023100ee2006f28e60dc628e63def451a42118850f78f5f1cbff6464fda833f408ec2f6504d40fa2fecbfc6e84fbdbf0e7e1920302047c435bb500663064023039d96edd41efe060d7fcf30baf5eb2d9b06c97c0df94d61800d2dea2a6a86221209e1b39e7aad010fd902bd3d0b8642a02303542760c69c2a8774f1f86761c30283b689352baa39e392adbdcc78cf1322e437bd66f7e68b3c29fe94ace02cc1ca52a0302047c435bb500673065023100f780bcf4f9548dee3605141fadd72dc55022ebea57f4ccffec7600d01aebb6e6f615b9aac5a3b72e0540a25682044a7a023005e96fce5184d0a0f12f107c55bd2c62e4991eefaa7625b29b9da7933354ba6f27422c0ac8018dca2649832689a29b000302047c435bb500683066023100ae394b14c1e03dc55e9ba4617658360337f0c3ea168eb158bfd1a6c8a5ee9a4ffd2769a9585d1bb489270505b5c104f602310092116fc5cda8803c552fd63ad0a781a3f170b39db4431ce875afe00cd5f4b17c732ca66618ab562f9ce3652f8cf3f59e0302047c435bb500663064023077be1996eb37d00b98bf97d8075d1fdb98bad684618e8c641be3688c2975c622befe97746663c543cdf4399c37b3a661023017514729984daf7151b48e9b60528ad65197e841ea001ff5262f0eacaa688e1743315d106d2220a328a510306d2472d70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f397b6c4717a9e188137ae892f0106c0d20371c124c8fcb9216d617cf12d6f089fa4bfce79331ad3c0d45647d9342e020231008ba9913f7966eb079c22edc920137d77a7c41a259d878dca65df7709a04c3ade2da93c65f1652953559b7ab52711cda30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a915629f3f30fd1b5f8c027404b06bb422a208356b103a5422d89f98123c2bd56883f594ad3c7437d45669f403c46845023100dfe27f9c4104e9450990a9d435a577137bc33555c6b8f67e7733d08046ec6ac71655f98ab2ed99d65201f1f4620c4c320302047c435bb5006730650230519976a7257936eabf5b314d665ad8d9dc5b61fef74f623b7bdda6821d2842ad22a61af78b1a7ce9b63b47d2dc016923023100c9e3e78293c975eb63ce71cf38069eb1716a6dafbe8c3becce8ba747a7dd287d9073a154c156b781c11ee19051a645fb0302047c435bb500663064023010a596bf01d03c2b8cebb49b47b6523ba89adda261ea5e842ae1a1112d5c653e4335c6d4147cce39497171468f675f4f02305f4bba0f64db1b54e195c5e6926179e8d3162bd212cb2583f2a29df4cf298ca9c30452b3540f1e31a3431ac6d86c1a9e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310090277757aca3ff7b16160f54f7cdcc4896b49ffec821744e9773e8f29285d74074798cbffa66ccb126f98e1ce3b7664802302b633675cbda44b33b796ffe3ba9991d02a06cf81c8422702d7153119bf194bca57228ce4b0b315dd0aea6626cdaa3df0302047c435bb5006630640230756477babfe8ca9f0a36f07ffb6028dbedbf91a441a1d9a8031c844ec50e70eb3a5ec3fdfa52b78f57577947f93583360230010a39c4794bd062c5a57376817cec9375209e218d83add103b367de63c72c8450c9c3e27bf849411b2c843e66a3f3800302047c435bb50067306502301e23671be6a338fceed813af68745663862fa5a65f012bcb8900b1d0b86b063f1ba65e3a78bde1b5ff2c744ae415649202310086451733c39af92eca458c4b61bb4bcd9e11c4c434f59bbf284c7e3a91306739507d4a087b5fe5cdcfc41e8199f180220302047c435bb500683066023100cccacc621f05a9351ab42267a85483b462812c67d4c33daaf34685915186f44c83e480d8d858fc662854af349d59eef2023100b04a9a05e973f4dbfa7d19b6514e9a72ffff79fc7d45baa35ea6a8f9a32b5cbb296df432c868e0f9843bf3a5142d50520302047c435bb500683066023100a2ca6a97ce9a6509cba338217a86ae193a9af9b205d8c2e45c0162b27ff088f6d8c1ef2dc70d47c51a3910ac3b6c3632023100870c4061091c9499182b1b8cdc70d6aa030d09f9edb2cc439136db73af375af11ba74e2dc7979edc2e9c13987499bd290302047c435bb50066306402303553a128494c40cb069998cc8007a1abc08e4f413fa0c2d8e9b93f980240210839a8fda7e33ecaf5cf86f1615da4b84b0230337f3d3b55533b334e4d87b09f491ad3082bc21a44322878fef60ac05014a7e0b3dce9cadcd8bf3b75ff00cb2be069860302047c435bb50066306402302ac202313edd5681fdd184b38c5249b59078719853362f954f60904d5a4b60a6794a8537de8b1dbd710f01c9cac4a45c02305ba9b66390976748729199f9b09c7c548709eb0b3c1752782378f3b8724cbd630a1cd59300d6625c1d28839dad92b1050302047c435bb500683066023100c5b4d42c5d920074b3cbaf82ed248894c92d651aa026b27785ce98200396b6b400d7f6666414ddd1a570623e46d6698c023100d17f9712b4793c634d809c06b6fc28a109fe76e60deda7171dbed663115ccf8b9f5ef9ac9dbc9d74ae039d7e6a0cd4850302047c435bb500683066023100ca4d918be2f3b7bfbdf4b0d2364bd2e36544d51563037a197db102c511f51357a3a343998f21e10adf8a4f6378ab1995023100cf641329dd79dfa31256de87275045b691aad2fc38d58623bd9be74be694c5ba0a08556f566f995026d15c8b091301900302047c435bb500673065023100e21924d3786efb5bc38d8356aaa928388b5ffc26848f499ba83e5ab4d62cb2f80808f4e0fceaf7f5a6a1400aea2b1714023042e805b501d7501c83a311ce04735cb921b25dcc908adde466ea434c53fe47c0209526f7630a08675fb9d1a56485c8ee0302047c435bb50067306502306e445614995f28d0d327b77fc6b0198f07e8ceee3a3beeea87ed4238a68f0fe5c1904a0289247d49fc9e78992c960e1d023100ccc39c9472185b731092bc916752625fee365310e70f55b38bf3ade811ff966139f6f190ea0f9a734bcdbeb1136e8d5d0302047c435bb50067306502305c231a0688780b6a5547cbffd4e5a34fc1a4685d1cb11bca425c2f77bf7c3210e1068585e4eb488fdf288bc64050dc25023100d41427f74840e9973c9462743202fbd2b1bdc0d2636d315916bf4b880ffcbaabc13f1df3505737913a76c7523845c0410302047c435bb500663064023036abf22fcc1bf03d7cfd350f9628f27ba4535f604ccaf226c226437f084bccacc91c789a71bede55882b4b9f6c09706d023038d26cb88a1adddb185a60d1e11e0510dc29c4320f6d4947bfdf7290b9a970c9a20b3f138515ecb6cf2e58e70ff385880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307579555615c75813f4a68ce5f5e6b1db8b1f43e8bdb2bd81f39a3dd0656e390e13216d7a7900b201b4ee56a4dbf1c370023100d39039c9ecd5d06c7d557bb3ddb140830be74a093068c6ee501cbba1c15f14c9b45be68dfc7228fa78ef4927402af06e0302047c435bb500663064023052a5fc25fae5843281c3fe335f644e2acf79fdbaf4608cdb2dceea4589ee49f18b8e4d4e7c04d5a3621a3a2d9e00e507023018838f45a391cb0512e06a704f670280c943bc6d83e8cca172b769877e33d5c671aca7de162a5f5afbdc104c140debb10302047c435bb500683066023100a88f91488082a0a901800ea5c93c88ada33095c81b5a923c022f984a68d2f248b510bbe476ae25daba389788d4854f790231008001226dbbec3a94a8560ef4aff4a72e7903dc28c73c251d0b6bb3a951757e9622a672b5858417541e887d21dbcb37f20302047c435bb500673065023100b6a035e07f4042d68f3a2de4574d369791ac8f1f4676a93a6bb58e1d15b0cff506887522aaa78eeaf11cd618bed9ef2e02305ae28e957a931b6ad5045c6388fb1acc5cd6ed7589403c5795bb989c0b58358831c691d33f2ad88357e9aa7a78fe26ef0302047c435bb5006730650231008b629304cc178b3406f8df96656967836a84810efcbd0095d868fee55c8dd4f6b32fce457caead332416b3965ab2b621023020c8fd4b586c6b309edabd69b38bff4c4802b64aed7d12714f1559532a07a7b0399146c8a39647f8236f47123fe52c560302047c435bb50067306502306d290acba0f6e55c015a62a8d174b70ad719ad97ea31785ef0caf669bbb775cc1734a73b282189bb3d429f88a5b40282023100b16ed0e1e9d8775c77f40eea299c787a6dad6b755f054b01ed469ab9da54401763d016198f5f06eb41f0821b2f60bb220302047c435bb50067306502310093bb6f7ae848f01a9f5c6e79f29e64608ab1b19b66bbb09164b5f2aaa1b947c50745c4d567da01610b765c79f51e9f150230480ddce78706df818be673493253a2fb7a32f1f0b5dbaf669d0208810790ef9083a614806922f61ae41c9140084fa9150302047c435bb500673065023100debb708632408e9888f54e8d6af54055d3b118ea822e63bb557d9dda4b484628be536821337ce3a2b7232bf067cec66902303deb9ef6060393e75280701b3268979d568991be6f7c6b3d2519b82fa7daae7d85b6044a5cd931a07359ad554c0d30ce0302047c435bb500673065023100d2f0b335c0a53d1e554d87d51b6562deda0139d1f57960931059f44c96262452b44af9f736abe7b18514af9d18e6153502304f065920b76b1ca2596fb0757ea984d95254bb6ae82d15c60aeefdec991bf022d8c44bdd633c72b04cdad2a09b58d35d0302047c435bb500683066023100a91e2c5a721b1b1874b3e74d31d717f44d2a1a3979e615b7d6e6b2911b829112dec98b52c47ce798ce83c4d77105313e023100b65148ed79d3449fd2cc4ad636143d8a2452425b0dbea2d2639166959f14fd01c253dfe27cea0fde7cabc82bef3424450302047c435bb50066306402304e0b7c958d5c3bdda0119a2e55cacd45d14e27dde880db57975651006e67cc31da7582e66e90115245937117ce61887802306e4e163a911e745746ca75c6bc03858d8705b3fe8ac175e43a94cd1ef3028431cbabacf4ee7dd73e3923cb545d7a446f0302047c435bb50067306502310090d5aa7928e32d10e07abba49a917054a9f896464523f3579010d4e0b8402198c524cc1dd81556e26db1f0ddb641f66502300b86fd46c4ba77a4c2f04d87807702482e1bb7b43014d2460db7fa34ed05bfb458afaf9e3c779fcd6154a4b63e66889d0302047c435bb5006730650230563e65ebcc2c075a96732ec95bfd5097f33622b3f3c03a5dbf16ae5521f039cd752d9f4d10f34bb17b83a63b17d35f70023100ea3d042cfe8cdadeb1626c642000ded27f50c9b46f483d36f87d93de11a615e6441fa5c50d42b1a7e5a3ae5a652fa3860302047c435bb5006730650230376eed56634a4ac6944c41e50f813e68950864c0d77b55bf2d1c8727cc74e5783c925ddf8ed128996cce24db33084c97023100deb0922a523d4d7cf740603e86ab0276bdbf3ee44f196bc8e6e11a5fc1f137e23bfcca66fa760c9c20940e63fc8208290302047c435bb500663064023004345e4d27d7ae948323ffac43d7e0ac1f85c5359b87ba7c07ad3915ff946701e94271423235c8dfc4b35948264e3b3e023038bcf69f6063afb182c6c8cea5aaf9fc0172b6f9f1400531726f5e74fad3d31371c36ec57933b78161af13eaf3c8c3b00302047c435bb500663064023006654ab83bed2ac6f707187105bebdbfa2d3e2d19407907488a8fb6e3f6cafed1a1a38da41fa7bca5641e4805642f67e02301653e4038bbd386b627974a29ea25b38ee88608a9d25c14d777490356b3aed0c6cd7773921fc624d4a38996f70c0d0d20302047c435bb500673065023100c1082f034d363f878805a5700b19ec685a3897a8c56229fbd7a7f4742cc821f4b47777eaba516e43174e0c2c574f6d2002300ee5507d65ff5b846ea4a51d1c7210fa06b67bf61bf6b4a4eab97edff9a46d3869d7c38c7c838addcca771fbd96bf1cc0302047c435bb50067306502304a0b753f8b9587e2ef6ccb464d3c24799bc6f3e90011fd80dbfb8f255ed099b7b85f696fd01910936c4743366ee3fe86023100e42d8abf04f520c34e474881445b822598a313fd0dfecfb88533d1cf2122f0098579c4e1b03eb30561e7dfeaa0e1bd340302047c435bb500673065023100f3ab3a4ab8c9389e17d532ce899cc0d95199f71395b7261947cab0d587048eb1318f21a6312a2b0b3e2d5c0de084a1fa0230552123df3cb1b2715324482624d22baf2aebf3c030223f389d4df1e7a179a0517a4d010e24914a754f794713e9b07e8b0302047c435bb5006830660231008bc5a2825c0e3d88838e441ee1f9ad4cbbb6461a62b65308baaa26d7cd4e54ebcd24c3947f0249f8bef1375aa2537f9602310089278e1cef556012875792e4dbb8a0927bfb776f9b3334f407e764e7f779c1c74b872f29c3f11177972a3dac31a9d3370302047c435bb50066306402302a88d8f1ec3ed607ca4372896efb0655d78adea0943689cffda8bc28160de090a6ecf84707224f1f2dcc04b678830ad702300a6e115b53745adcd9eaf7ba76bfb3a9dd96f236c9b74018bf6a3c7f1ccfb4e86db4eb7d4cd6cdc893c8e9bdc9dedc280302047c435bb5006630640230559c2be49a6aa58002ab6609e7133a798643dbaf56703aaacd3cddb3f1089fed1065c4b785ff6c98166a0e6d3317d9f702302b2376e0a0a399c9c4284d57df5bc8cbc56cab1ebbce4746a890435c729876e9b2721c64cbc3935f1f3302722e196af80302047c435bb500683066023100fa63a8ebe035ccfb8dcaa883a25f08d1c99398e966881ecfee932cce3d40c8a5570f2df4fddcfe4a4e909464b7d1f9f6023100a6ddab8ebbeac35916bf4266ce53b25b39d131e34b632fd7890e0db52c5892369106622ce7f4eef539e3c04159400ee80302047c435bb5006730650230573f754bd1d81ab81666b02d63a562dd7973c7aa6dd35cb9c0412a53b231310802e5709fb78cbb3eb333f235cf3ac72b023100a9fa3bfedcfcd97eaa7113bc3903bc8aad849a80964b63aaa606097d1d20185af1d47c4e279cbe72bb332bf2a4c58c7c0302047c435bb500673065023100a376e576bd4878f9b38a7ac5edf91d6b3d8ef7f0c81484ad80df1d8f19c148a5d2a8256a3834e1a98f7f4d3a189fa24e02306fe16e0ea6e4121090f6de61c462ee86b63f743bb6962d6413c85c0d3a72943eb416111ccfdebb81b0cd98e581b8e63c0302047c435bb50068306602310095331a0d9a0268ba32c9d58cecb1f5148cfea5f08d467dfe2b1a456e24195befa9eace0bffb85fa38111165fa39332c1023100b9829dcc9ea2ec48b4aa936c045eb85893c643612c67b9cba4d1a6d92db54255309f9adea7518be545f51f6836a2b2320302047c435bb5006730650230532058bd98488327f9e19876ce2e372aec5243badc8371a2646f9f13f3f0c196e0d749ce8be996936c1c4b4ff69c3565023100a7bd183ba221628816fcdf3d348f91f3c5415df37c78cf6467c1e83f3d7fff92ab7754e8a28bfa648ef0805c550267000302047c435bb500673065023100842336dc7b8d6f5f298a8bf4f94ba1999f32f67ad8a107a6bc391f5dc9c99ad6ce77e428a7c9c894c75b936103e7ca6e02301d44184e0f911baca7129209d99bb538d3871dcd47a37236e2a530042cf365ffb94ea6f783b493d40d366882f2db9f710302047c435bb500663064023063d3ca838847d88d5a9786ac44b9331827ba48519bb9638e51ca0125a87c445d932f6b30e6ddb40af14da466c47b0a3b023069f882221d5a387727496ef54171297a80c15ae8db0d8ffad18b0160ee55a2e42fec5e53115d5f8913886dcbd64df3350302047c435bb50066306402304f83dbaec645982fe4c8d7a468308ce03a2acf497aee8d0701008cb8c5018e56987dfa95abdc40320b12376300f29b7e02301e6e7d51f68f87e70d7b62ef556385ca7dbbb97a9d7b219f07ade35152579a976b45e69e5322d37544f24ce87e22a5520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306618a4a888896d9ea8c7d19021c2f351a7344dbeb454153d563e55798fba1190a40a3ec8f8e37a8a523b5d0413e4c69902310095a813f0c021123b932b8a3d90d77ac72ce6ae180e0229c43917f44f45fd85823d05b4fb61f7a461750fd094c35ee4390302047c435bb500683066023100b7c701b175009e59d7834a4953ecbf2ad727f7b66569f15f698ee20305887418016d63bdbe6f74326504b64abf05e59d023100cfe73b4b28df323ca909913bdd0d5d529892538f8744fc41a24aa3a6bd9807f864a09257d4a48c9d3b4bc6b3153a47700302047c435bb5006630640230295a5c422297cf0c5ebbe0c56226ab1d12e18e7bb03561aa9758df3aae7b1926f69466e50c0c7a249dc9db581f07ec080230261c8bd7e389a5c3ec7c69b7dafb648dbff31ada2f4a0504424d78dc3d99b541dc4286477dc673e02d99aa67808bb6d40302047c435bb500673065023046feaace8c57e4b5e2f40a299f23e27cef9aac8c940e5db042a1ce0f0dcb8db6a7554346d86413596e9314b7730dcfbb023100eb4b9e1b66f7b81492c5da87ad1e0816dea7fe9907ed7ab438cc67cddd5b8c6919db7c2360e7f8f2a287c8bbfa8f8cb30302047c435bb5006730650231008f21c3994d18bd4cd01f5451a89983c35e3055307e90295ebdc9982b77e554aa3bc173767bc8cf6fea7b613622273706023049a0d06242ba535590e83f1672023399b83c6a6e236362793cec87f383c6b01bb80ecc4750a06725bf90685b8366df4c0302047c435bb50066306402304a84b4791d479c2cd2a2a4f2b9adb24301b27937543eeeb7064af6f22f8e2b237463b3184b3800d45cd9e24c5ef06c06023030f714bfa28ee2fafd0feea324cccdabf57fe01efc852f7e9f84184b9cf2f4553ced42613bbc6283aae3a47e22ea32ef0302047c435bb500683066023100a98b3ce5cae151c6f340aba366ed9e8bfa55e1abd31832adca020426ef4d6b1be829baa5ca04bf091cdf366bb91c614a023100910e7ad381095c2dd371f7c8c9a1018808b77163327f0d5cfa0601313eacb13b401a6e1e148d90a086cada507bc7b95f0302047c435bb5006830660231009ae3dbd22eb267c3b2e2e80deb910176928b0db630806654f90e4ddf06a772548bf137d671c4de5926cd3de946d6dfe2023100994dc2a8f17e0b0b20b7fe0ad5171a0e5b15301f59245e51314558cf398c7528bcf414757143fef0e57a3c92672606e00302047c435bb500683066023100f8f13546c36a8e39f2adedaa77eeac95931465095f641822a82df471b20662dcb7169d2510290df7978cac34fe598355023100d2dc60736c408ee2131e1276dc1b08ca6ef1935a7188fb425d67105f602c8eaf99837fd8d4542303f7bc0db6e10e71e60302047c435bb500673065023100f7257c2e0ec5c5652dc3a45ca89127a52e16addba1445b423ecce7e1bf9c293cbe5cc4b4146a693224cd6752a528889e02306eeb52b3b63dcf680f1c381f01a0621a7a37386cb5d0b632582a93b61562e34ba64579905a31b52e11469974f9433c480302047c435bb5006730650231008574ef084de99d5187dd31295338d5efb8c2fd7f5fa6fe91be0bde3f5bf8d41efa5da1877ad093ae8274ae215fc241ee023023cef66ab131f1bf89ba1e4ffcd8f4482c197b6c88fafdc1dce55b449c6d8027dea7d7b1c7cfe9f458ac68e05f8679d80302047c435bb500683066023100c78d1685b38ac551cb7d930542a3b12a4789719ee92798f3b76ed37254021868f08c3d24e5799ba2810bdc4532dcaa010231008a93694fd616fe2f6216d5035a3c76452aa21fd40d4781d3b990f22f9937e9810e0f952f05dba868e6272f0ebe7a3d520302047c435bb5006830660231008fb602891a3862557196a3571d86249390256621d72fdcc79319cb83677309d3562fa77f9e8bc5e7f003c6d1860a60920231008dbf42640491c7176555030a66d38bc4de63faa45d6cbca80ad788448f53c23815999d68bf9b27418ab85eb272ef15590302047c435bb500673065023100b42c6131831f00d09861f2c87b5b20a440440d00665f98c452fa8b0b4f9ab5b1a9ea8abc95a50e4a4c2fb2e7fb0d1fc1023048040a50b3ba25e3ff716bd2b264606788b27d18a81ff75cd7e974a5a78f3a9873bdc2ee7433a4bc52e4e07b4bfd34f50302047c435bb500683066023100b8dacdb3191d6a5400342e222eaf019046228dfbff80111c22365d4e1ccd202b16ea21bc14027d8a8ae18f15f7f0f497023100fa29cb03c6f48af00030c6716dab7ab031d46a24d454fc214de2fd3dd683b18fea04ac285483e102a0bece6c2d2d189b0302047c435bb500673065023100e48e21909d8b40a8bfcb77ba859946af187ed6fd5c80d7550f533b1ea1058c2d0539b779fd4c0011da036b0f1a5d1e7b023028cb0499d9971f65f0e3acdccc6ca8d5534571848071ce0c548a05bbaa64c9fbfc38aadd9cce66756d0e9412501a5dc20302047c435bb50066306402307c3e1ef5ecbe54f3886fbe337659d45965368752d29e6c12de99316d97a32a910cfaa61794dc231c18a2aca73d2594ed02303567e46422478127edf73bee4222a2502ffc21bd836cffdb5cffe0e1ba6a305c1058043acb679fe4a7be9a7eaee05eb30302047c435bb500683066023100d3d549eea94c55d041f20efaae7b7f62dffd687bc16471269cc6f703b9da9fc824b8ed35f94b75a1b637d4469bb85df5023100c6281970751b6b65bfde591bd5c992ca43f95d52ad93c90d7f31c8517325d320244e271f6878e18bf8f7d06bd318eeda0302047c435bb500683066023100b6028a4d243516d8aeb6f093d31f382e8afe72756ddaf04264e5259dfe46ff5096ec4dd621f89d831f9c0fca2d439f1e023100ef236fddc582142f02f51240d4917b330ea9f795320583045e678d6a5204d949f498e5c051ac8cf85b66da783dfb34430302047c435bb500683066023100eec2d41e5b8325c76c37b83c218be5a09243a3f0a97cdd0ed52173a96ba73c43f04b2899749b8c5e352eeb7db8a70429023100887798a7bbf3a6b54b66b355f454b6660f95cdc36af963cde7779701000cfffdd076c97ac99a070ebfee190c75c4c7f70302047c435bb50066306402301f8df4a7f3f2cb2874f9c99d361a98586b9fcaab1bed467474b4bc63b73febe54726be77dc637a8c9a651ee7f4b89b120230780068f889336639ce1ee37a2b18954ab57e76a53a3256a9f568d6ed7218a7e852ef9c9b35f9dedfb53b3d150627469c0302047c435bb500673065023100974ba54788a4d4a150421c5d6a2619ca095d0a30343f0ded7bb91786d02599aaea4540d786e3335a5b0b6f7ab0975a1002302451ae5d61ed10326cd678db2d0b6a955cb0c01c884f49763df04a5fb7280c5487e40f4aae4b67bda606348f633f94fc0302047c435bb5006630640230060dcd11240041c3c870ebbf9720a51e68c2fa01ba0ed1f6d5c40fcca41a9f89bc7432bdf59cbb6122d844a1519bff6902306da4f276b0b31cdd93a82522471f6db2c18c1f4d8bfa98a6440683366eaaf838b8f624c3be2b12b4d10584ea6446cde90302047c435bb500683066023100b5b535c32b3f68a6426de092b6c655864db5dad4981ea140006afd5026479010bb91fb90d00929d10bf1d9a6089b8baa023100e5f655373bdd927a10805200597058068e4daada4a23c72976bc549c5393520116d74e950eebd4785e5f4a8b826940890302047c435bb500673065023100f27028dfdf1c5029b11e9b079f7ed86065d6320b22b5333970aeb07fd3610bb18350bab9157ca0175ed0c54ee2abe85c023040aead97f45cda8061c93b3b9ec7d1790ab7062499832b2801ba41d1e8830450869aec973fd95a81ce22f8696871d1120302047c435bb500663064023042e984dc32bb1bc4de7aa455d7b7eeb6bd79524fb13b097d883ab513e29521c0ca7ccdbe2a48659910b1b51128e3111a02304baf0aaf5e502a88c4257110e14ec72161d6d3b14284bc1f0e07d4f164e82922c5cce5eaff3804762d177712efe0c8000302047c435bb500663064023071296127a3a78dceedaf14028f00556512c6e2282a1ded6284b5b9e70142f9befe2b9acb33a7c469509aaee9101d9b5502305efeb07c126294519edb5aa66702ad1a9d9d5aa931c4245fcc6d08d285cd932c4aa5540d95fdb99698d621355e4bcd020302047c435bb5006730650230514ea985a45b27820ba2798b12bf152b955f250edf9a20347f9c79030740c1b10df247c12016c0a23260482a014322a4023100f8d0ba31f7e327f538bb0b5873b410228b5ef9935ee4845612db6ec56a4d8aac3abd4951b3891c4c5bd95c2f0c06f2390302047c435bb500673065023100c7d3f7b0b64875c4126bd7add348419f1a1c16202da93443ec1a3953a0fda422a5d53ad068f0f4f04ebf05b88329e61d023014124ffe1b4a0ddf300281c810e00c72190dfb2a37e1e2d32e571ca8491d00ddca7e48fa546e6eb4b931e2922aab912f0302047c435bb5006830660231008f75e8fe7408c07ad5c525391a1bf3f5fb9400ad6d313a8cd590f37a18865ca8b950b7c632bad9e5c11f7e26077e3549023100f111c41a1cfbb329b0961d5c1d36af33bcbe61313fb0c1428d06a3802e7e932fa0fc7891cc2ca4ae9c439b318062cf930302047c435bb50066306402306cb9db634410d9382819980a67bb58ed1273d0c4e503a73f7b12007a3673f9c688f043510316dee2fc7571d259b26316023064951aff8c7550cce1bb906f417afc567a494f696f76df7b0bc9f59de90e28685bb235a8d430948741277d13094e070e0302047c435bb500673065023073f4f8cbfd81b846ecd8a634d91f84eab87d4c63ce11c5b2c81cb7c2b28efffea9dc425fb37bacfcfbe394bb1201be0e023100d48d8d7740e2de45c1ce992621f0c6afd9b7d2dfc7767f91c4d5b6ab7d74be269d7c2024b4e550bd708c5f955f054e9e0302047c435bb5006730650230433d73a0fa411bb6ed448486de40a7e03543651028d91f6ad9c79dc904f603e56b7640a7e8332e62d6f3753455f4bb3b023100a98a19e6c80faf8c02f70116a60335eaabdc9367a117ddf00a66ccdca0231e2e3db249f469451047b0a39e632294ce390302047c435bb500673065023100dab5dbcdd569fae5f752298558c00d34336244f41fb27073171a85911f179e0b9742a6c134fad8a52eb0e4819dee961902306b4164b9a8ce064d60a7663144346bc32873dc8593b79b2386fc3d3f756b484fa7291bf97e905fb51cbd9abb86417eb50302047c435bb500673065023100a22acdb6b43bc521fe8ebb758ebcf147251750a31af3e6699ba246125cc2f95dd8ef8bfe5361e634306668c77bb9923402300e3df6e826d23dcbbefd323e037848fdaf95a501964da68c96e9ec715577a95a95624843a1282ce9945963edd362a7990302047c435bb50066306402304c8939440971c1c3931c8a72b8e35e2c5945d0181406a16e21d6930512a5783e1eba7b4414d64ca637a34b576356272e023073dbe05976aae6fa2449e39e3c37e2984fbbea8c931bee6c7954f26334d9c193bc8d06beb0b5493846386d0bc35b32050302047c435bb5006730650230109344d53d9219dd9dc8ed52e66cfafb59d091be14a7fe648d849f4b039bee3cc3a2d45a46036afd23880256ccaa9160023100b0946328ffce81fafac1de282c1da9b49c86cd57bef2645ce6d1a3bfbb664d0bacd848397993fd9e432dabf545f3ece80302047c435bb500673065023100c091bebdaf6f79d78d6337b97f006b6a4d5168c595a42d87b4993f8c0cc0d1af065341ee29da83622a0a0be1c670f23b02301491c52304785fac2fd14e7e3443e67aada229f495cd089faf9812bc4742c2126a766d37c2d11b8c4599ae15ddae37240302047c435bb500683066023100db608222e53e8c56846eb35e1aa4215b187466fa52117c58f82b467db76285b8794ce3ea2ae3e794290e0dad916d8aff023100ce0f9979e70bd10a074c36f09cfc21e8734ea58e80e7103b26af98947ed3dcd67597fe15b0d602bf58981eca7c0d30010302047c435bb5006730650230564b25106264e6b6181cfda22c1f3fd579b26dcccdc7e92773f907b6b057e16c2f97898c33e85fd6a40625a53d4016c602310097dc967b29eeab45be238b3feb6f6e453b5b511b3eb4f484571b83172eef9442f19ea0d8dc706ecb22c1159e658aefd10302047c435bb50067306502304d77be224264cd3964c1c68f865be877cde59af17d22ba32f4c11766c27d78c2b2fe12f46a33319696e422af8b6387af023100d9f2f176fff68ce921df00a6fee08054ae693bd85ddcbc736f783ee32ab897524367c0af33aaa88df8890c644b5160a30302047c435bb500673065023100d216bd5a49ea8181bc1f6637007de6f64ef7f4bbef7c82f93c7852b7caf4dffd0ea29f4c6a51517763ff0b9a8552412b023075de5264d65edc43f2e6b32d9d3eed14da9bc1d214e4684122584c89a5d9d62fd7204a6f9ccb339ec1b00b29b3471efd0302047c435bb500683066023100e7867d10f04babc3f2f2b0305bbe9287ed5081716f6f5c4ae5936b123d130b884ed6ce9947190dfb79593847fb5d8db9023100dff900b94d3c3d3dadaf7d1fb1cb972d6c586a4690eca0d6056b7e64f2809e42750c5b138afcb13682f47278ea838d600302047c435bb50067306502305b60570be36b0b8e685180bf1a0640740ba1c416634ce5a4396a858a53cfb24142ebd0b27eed01b9f994e88b5413a21702310082ce2cd6a3a54948cb1500b8d05ccd00477b80cba483e846239bd6a27b3e62a9aad006c68969b898d8dba4407cf40f870302047c435bb50067306502310090f5e8438f4ce4d9a2fca2e47f6867c5e2150f16ac70b978ee33e39406d9185aea27595c7b36765f46a717c1003cba9102300c0240904cb2b7bc9d214451ad5cb32c6a97eba97141da6f0205aaad0ab7d834ad469c94615e0a372497c401ef93848c0302047c435bb500673065023039c21e2a2cd4742834c2a1158a71167aee78faed0b7697f0ce37aaa320d9c037e0d336218014728cd7cd88e6be22edc1023100e651f50ea28042f64fd7f3aa713769dbdd1cac38c307d4a7fefb5df6619f341d45044fc7e6dbd41d1b06a702354141ae0302047c435bb500673065023100ca757edb03a1a6c5544e4f46e17e8cd6047d695729dbc1df47b6578df90b99266bcdea68cd4a43b4dc043f0bc08b893e02303263776250656ced1f206382d237abffcaaa02c704d69beabf6559af96ab05fbb07372721e61823f1b1de6fa442222820302047c435bb50067306502310086df95b700e2c93c98c85e1d05dba2db877696d58824d32018acfea68edc001d2e59077fff4e0b2ca471cc94c7c87ddd02307028dccff6d04e358f28e8495b74724daa966f1e00e5c09077171882da916e3ea37911d148346accecc127766abd28ad0302047c435bb500683066023100be18973592b8d292d64c033682c2ddc5f3b182ee98b587665abe6ad7964f36a725ab3cadaa62cf240d028ea0757f7e96023100e5906ba2fb19ca5ab6be5347e5787a90cbeab0744fab8b3f63253fb2be96c0a1899e51588be98049d14e06669b4dc35e0302047c435bb50066306402305bac4bdf33d45eb08dd76d89e34cc3b4d4e56af3fae2f3b003a416588dbcf99c86dd1d2c8a8bb31cef441273a76a516402307a9606fe37e0228a8d54f6e6b3b6b9026af4870095b478cbd2da81702cc9e509885995a836fc71d74077379869d316fb0302047c435bb50067306502305732ccf1a4a58a48f200d4db4d37318b72a53aecaf09d73ad98ecebeda977a0c8f7268679ab02e2ef3c882d31026f78b023100c375512fc47c8207fc3782b78c88b4e9f8f96f424e6c59d45b65fdef8dd00103e5aec0f4aa12872d20ff63063453a0d00302047c435bb50066306402302b31ff887ce76209ad6861ce260a4265c945011446ff4348fbc3299a1fc3e70868f0ab781db70005ed7ac027e691043602304ed6637c4e587d324cf18e234aac05f9b781ed4b66f727e2c24178acfcfccb61c8c22cc55dfd65871db56e1028a2a51c0302047c435bb500683066023100f9d59f1062727e8693eccd343bd6df2a92a8986266b824f51cf54e998b99dc54478ecd9c52da08ccbe669feed47d9800023100e96e6885def99340ed71b893d50c53823d6859cca58c1501bf03a6ab68992305bb42c4d8f5d22555b30ba9fee642686d0302047c435bb500663064023035c8a7e49b07ac134e80c4c5c446d204fc787d7f6bc368efadb717f4b5f3a6f560e495c8924d529465a2bd3b18cb1e050230615e0897d948bf1e9742602a5a1994e27497194732bfe0395baf8ca91a6236b2915a1131d0cc9e9d742a0ea8388b2d480302047c435bb500673065023100d54cee9cb86ead51a47b4520775ab62e478121247dd77500ac6fcc4dd710e1956ce21c83afa0ff349226029c8ea7497802302ee3e97f4b9e0f9ba1b8e847add137ec390d761c54500b765c252db85f94cae2ced6f4549b0ad28e80a03d9cfc3a4c130302047c435bb500673065023033aea6c1512f97be530260c68a8812193cc428747dca1c8b86b5cd04c4bef446ec6368ab31f32cab8ee0cbf54956f75d023100eef315f68053ed5f63adcbce2b27864768f35bd56b7c43e16d2f0910d9954fa2a8a77d0c5e77f84bac6197278ab5762c0302047c435bb500663064023048f1fe0cc179005208136fd32542d70d336b9d8ee929a9cb821b3f0c196961606a4ad290504528aff6562103b600acf302305f354181a27164f98eb38088c28a9b1fd776820afc834e67d8f732502f1e818ee554154b2d9d89726f32eb358c3834780302047c435bb5006630640230516e7cad872556451f80d80014c6012fdb3990c4378050018948e68ad8865ee50c210282a61ce4195334db81aa65a9690230363e3a3abf6d6c3ec68ab932cad88aeed638953af393a1afcf423a90a65b44daf7edf4478b2fc86bde6627d9863c6df10302047c435bb500673065023100ed23daf5b1c40d66bd0d78f674e17982f4ee831ccf1461e9f2871401cd4469eeb2deb96da4037d53a41c1da8aaa6477e02302c15b4bc3da9bb3c0adb140c705fd8b9e32f6e696f2dbe3e8ad04dad5c8c797083883a3ad9642db30fce97786fac20d10302047c435bb500683066023100e2e5ee477b2c11ad91397b94dd8a6ba4d7d3e75fccd0ce12645896a2cd3bd096e61f338a1d76f6e4714c25420765835b02310097c419db2696ee7b1c8978b40ad9ddf9eddb46b46ff627e0b7d2c34cd76f510318a97efb3fcde911ed0bfa4c4d835d170302047c435bb500673065023100ce2a0d73e3eb5458a26e67ebafe7fb3c6687fee38ef46e3c3c09ec27ea425b68636667d19e46b7d850e15a9daf39f63c02307890a38736b40822a1e550640024a5e3d3538bbc96b72740bc30268d6ec14075772817597ce0f4253a15c92d8fbcd2d00302047c435bb500673065023100bdc2389fa23c9d2c11bd07696c4e246e7b9acdb8861d3b34797779ea99badee9434c1819df30b0060eedbf188a3071c702301332f066971733b31c1a565ae31a4abbccbbcf912815619a3174bbdfd3da4df3698a68a414282ef7a8a3b52b43199efe0302047c435bb50066306402302d009735243dc909f0128c1e9d778d985f1357a7407230afad10514c8f3c58f8b8de5740fdcd79f75fff436decd6146f0230797477589bad569bf646f521bebcdb59723caf3d2b8578164eff0187ced612c3fcf355b51724eceaccf719254a0450860302047c435bb500673065023003bba1b13874fbe73f9427e2260508b4eb6325bf217a31b4f3a06f1d3d64c614be97451938eecba3fcb1b037106655fc023100c3616c7b6e90bd1cd383b9afae6e898701e276ec4982fe6f23e7c6cbb3ad50540cfc37dcdd23574f39a82daba20f2ed80302047c435bb50067306502302185b0866fd596d1ebbd00644c88962a55f73c91145c2e83f7da4e78add74df8efd09d1e579ebfc7521f60ed39d041a1023100af62d6d527fbab5744da57c6c01ed707f1bf00250c4a87959471baf857cebb133695f24808fec2dbf7f9556bc51dc61c0302047c435bb50068306602310098143bac15d906fe61478f3c9d83ef8cc6675b90c7a77a8e483a7940cd41f4fcab113118b7eaac8eb7678bfc3577ca4d023100cf6ec618edd9cc0e27867c6b679e52db19e358c8569ec7f1bc652ba5797e6d2e02d9ddcef3f1e8852f90439e34da1cfb0302047c435bb500683066023100d5c22b567ac370ec15952df412eaad0596d8d159c638cb6b0f45216d04886a4e11c96ef6258d59ef25ebefbcb5a4b8a4023100ce4bdc3610c225b8d5a0000fb2a90f26000d355018fbefeb832813297fb7d297c157697ccc2f5f564cd16f00f4915ec10302047c435bb500673065023100b6767973ce6a2568d13df0008894bba979f6e0a29f6a027884edf174da99afafc54e3e8979e940003a7cc89f9f18baaa023069a4394019637f1c734be366653d0c1d34dad9fd867db1c80d90aaabbffd0660d67a680dfb21cce1785c0be450fe30620302047c435bb500683066023100d03a58a7cb3f86ba35fdfea49cf4ce3b55c3c8b6bb7be3041d165f92410b51fcc4d8c56ac9b544c1551b19346727b7c8023100c38d744b22ae7c33f956020050158e43a82c3166cea6663ded20a6a79b4a1e207501085dc5c5639f17b20cae5ca69c910302047c435bb50066306402305d7cc369d7fe3bc7377453e92c9f65aac3b27cd7bbc695424fc6d3ce109df57ff04b03235f41c4ca612266420e418c86023021007ad47b3a800d5b40e69f19393368d7965d3adf48fa1de34bb9c748254c0114c280d7836aa38a6d2ecea11ddee7140302047c435bb500673065023100ffe8cbedb29f4a29ab66a94181ec0b16ebac74d1175f7c67314b0d7a2c519feefacfe7edb53956b3d03a6b0c0be568ae02302f6f6a12d9329616b75e09a241aef8f3a57563f8045060367d23c16a44c044e00afef815f59c2382e6c1e00830ac6b6a0302047c435bb5006730650230256d0c60b21eb01968adffb3d156f76ad2258ce7e92f3a465154ac151409c8164b79c419b0245afd28e7232aba17c7ff023100dd02087da6b85cf8db729ff79cec71be10bb3a04347e81829732ede2768d7459e44e5be1723456014a417f118db665a80302047c435bb5006730650230186a6e5fe9f2ffde7a4e9ec9da031509c9cd954a25eaf63d96e9acc9054cfcf06c2ae7e8624c37c2c0bae876f63b92e6023100e8386a8397c9fc8294c650045f5a7daa41719cc5755647ad6d563381b57cd39afd5077fca1a0f31f7b8972693f81ed8c0302047c435bb500683066023100cb4085e126ce7cf54d65f4bef742bcb10b49f4d3247fbfdee3665124dee6b98dd4f3fe63c04ba49dca8cf4e936a8fe6b023100e2372fcf59dd5e9b49833a754fbf1b984522e655242d137e33e3e0bdad1a7435545ec627cd8b9015c10c0cc29cfa11510302047c435bb5006630640230088b9972c1d39dd2e4ac8e01e0cd7abb6327d697fb21e6177729599504a7dc50a7f9e1f442dc6d982dab44e145aeaad60230726be04ecfac9511a28afecc2376867e26d905ddbf031e65cf90e9d563935eed3ca206aff6f7aa4103aae29a2645c78f0302047c435bb500673065023059d9c109f838576c2c54e8d9449f02adf22e68598cfd8d3f9cd7b41060db45fcd520ef9486333813a378b3bfe3c7b883023100b90e3617ea12e49876e42697685a44d914e140571178a05750238a8f63e944dda4d553e54116d186600a755b558c32150302047c435bb500673065023009965c10f3f029f1416ae28bcd62308066ee06b36352376b3b25c92a4f3d2a8012b0c81012aae7e4a96be6941b344472023100925dd2c740ebf0203ead0902cc32ccc31c3eb71d61099742f8a7228b62d29b949ffc501bc72c00739534e66bfa0728c60302047c435bb5006630640230751303764ef6319d0d0c47e4d45d3703abe24c6e10e8860040e745f5a5eed4cf742a11be46a1c6b0968756f207f16abc02307e3d21f04551053f064ec71c0bcf8ec0c26c3be9214311e0f5482ce6250dc93f3750a4d91440c35f610b62eec5064b660302047c435bb500683066023100b637ec08971e608a4427091a357029092ccfe615953877a6f4bf2b425be3c73b2f1e72e23f720cf91f451d3c687e77a1023100a8c90302100e026609e7a25607f5834496077fd678f6679a8efe0c8c7d5451df77dc6201e5b63e1433ade7e2a8d1ed800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c187acf627909e5c9f234a640f4284d6df4362cbc1fee3c8cbf65fd3e5c62f6220e3c634e7d5b88a567eb9bd11fc9bbf023100e8ae78983eaaa92de5bd68f4f7e9d4ca9b34b86299c93d7a16158ab4176c8ed419336e3b4d1c4e146e8888de217de8bb0302047c435bb500683066023100ec768caba37d729a18029a7eba32f5d17b0c830a033e7437d3889967f16220a1f5dabbcb512b33aab877605d0a8592d0023100a01a1dae780136bde647f8e5e3104b12ddae697197903ca425d61f33141681454cfeaa16e85fc984c6ca2ec37ad0f8980302047c435bb50066306402304b3880101fa501cdee1a18a05c361ecea6b8ca032ecb00f8a501e77fe3b506df640ea7b214dcb6b34ece338aa7f21c5b02300ca4d213aee06d2f06aa80d6170166c401f872e5124f1bba01992b0065e00ffe914f80237c574d9b8e8a83ddef8257a90302047c435bb50067306502306bef066130771b85d79adddc659651bf1bbcd081ecfaa1d02b1508e00f4255cc37a95629882d4b4d5524c45de23808d2023100bd4626616a03125714dfcc2d9b2882d65adc648ebf4b5402c11e993fc22f3c5a7bef855fcf6cc41ba0a9e476f0a1778e0302047c435bb500673065023100c0a77b9686b8faa4e9596bfdd8369e22e77e2ee30fdc130db9de47068ff51c028b4fe685a1b9303c5edfe2d9cf35199202304c796368eb35afb4b2d749f475ec75e7d230f7b26814936bb76b92b32f5d9861f43ef9c46b7da2b5fbaadbe9bf6cac6e0302047c435bb50068306602310098b606abd11da1b8d1fd1fa76efd523c4ab679d38e4544e7fa25c6d5a2735b34859fdfb8b1da41a6d177d0bef0681434023100c9f11195dba361cd77230b8b473d29af2a133c996c6f17f904d1b52bbd8867e92d73f947c81be757814b25ad817277f40302047c435bb50067306502302f20f0b69c2fed23f513d9f0587eb8cc7dc01b73fa69072cc098f7cb6904e6fdd28dd88d0d4f13978fd431228042866302310082f653ae605466a6657619f91c3b199a125bc10004bb8dcb45124d24266cdb9dfb0198b08d45f4f4d515f094f1ffc7eb0302047c435bb50067306502306fa444a09a0fa819b09f299e319823472786a310d7a6d230869834be79097ecf7b6829c5bd1b04f4f429bb1705d4ca30023100f90bf177118f31439efd3544c83c963ad0673b0edb8ef1228d9f83c090b86903df16e324d23747fe68206a0ed867cd070302047c435bb500683066023100870363a9d48633f1871c26e8cbe624cceaecb5487c4e39adafdcbd81fd377fe27edd7d4f0aee417a1d3329a1e1c61f2802310081051ad387ef4ed65d287d63b35c5d3a2bc4a8e15dbd08507d77e87c32b33bd3d6db2c751ad30ac5157c7af1c35cb3f70302047c435bb500663064023005008f876cc7e8410661efad4056d534002087e0f90374501380d76a6f292fdbc95d93c9464297960887516778bdd10802306f415b7dd874cd50107c0152d52d8318637f87aefdd4179f3485d9bb9d254627313107f6dc70d646b2aec7d3524e4fb50302047c435bb500683066023100b3a3dd2d030654c2de80c18f05f769af7116d27f209459f5125cbf3d3075cca5f892464692370dfe0388e4ae93b47894023100cfb786d045fb3280c3e9e5ac4d565a883507fc4d376ed75e6373f838eff013ff8b9f71ee94287d783d10b0752d4ae4e40302047c435bb500683066023100a20fa7b56eaf94ebe71619cc8ffab843a3d1a510037100f1a40c05da525893471230effcb54b7737c19e98a9f948e9120231009b2b48caf3453694685c3f3c88ca2389e077335ec6ec91895d1c4a8db8c9818e5116fafad8cdd101d8154abd18f0888d0302047c435bb500673065023100b73bbca7333dc3cc8a810a403f0defe6ae1ad0620e3cbe12ce9437f001bfd269b9d6be0351ef2bcdade01d5f7b069f4b023014654fb3d8c16a43ff98d55c503afcbac20890e9402cfe2fd9263217b2ac0eb9b39ed011a5a74fa288b8a901180765a70302047c435bb50067306502310095d223188ac2ed22c888798667e6aef512efbaf0bf7509e2eb16e8442734acd00dedaf39a369a6057a44f4338c8a105c02300393528453c41d827c00a2d42f167bb05fc7be3a63b1034ee55136c77b1a4039fa95a1795d7687cdf62d9363769036b10302047c435bb500683066023100933aee7750410c14ff5b3a9cf6e08b43f2099a473a2a06131064b5616cef468be56c3f8063d5397e2b4fc9e850e67ebe02310097aaf13c727577040780970b706cc5ccff18652d70c09af2a6798d617d03868143d3159a7731232f9355e76ecf8bdf480302047c435bb50068306602310096fb09805c5fc84ba8590119d2886250969ee1f172a22f31623908bf32a169ccaa3d6e4e0964c603d29ced4fab90cd2a023100a265ac84f4ba2cd3ba5113f9938e124fe4ffdf47bfa1d2b0f0b282dfc9e18cde5c9670413785b12202b9a3b093f10ae80302047c435bb5006730650230189e469745be5f6799da5728599e03ed4981978994829e5a72adc165f749808c0831a425a76e64fa108b9ea79607013a023100d88f1ec2b82aea3be2da467555bd5d2e5427faea01857336f2191e74bb501a35fe3997be11218e6fcd88ad3c206782a20302047c435bb50066306402307bf4c6954df89ad3b797ab6184aa2e3fd139d008615b8869dc21a9513d44667292766ec5775d09e1808f3c80601c27d402306a935c046b1d87b25b32e4d4aad562e0d347643f1be502ccb714e47214f01b62b0aa3a65ee626a924b8b95bbc20d963c0302047c435bb50067306502305bd1f67b945f5c03098287424f706e81c5844e5c187fbc2c6c5f14ff453f818f386c6bc84b3b1ef6494153abf437881c023100d771679a0e7ad1abe072969fe10b3ab6497d3c3ea7b6960c7b6b3af174cc43c4aaace672a7c11ff5d3019c7bf2ea288b0302047c435bb50066306402301b66ed1b0b0c4202bc8bd1affd919cb993c184bb382df53402c72316e31f2927214a97e896fa4ee06ffc240683bd07cb0230582b78bd3447a6c9a49947d36419a598bbae9e819a959ad6ba4da3a83f5e4e283a72bb9818ce9175813d42e1350577da0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304e822aecc0abde66012859c1cb68896f3b91e918b294fd3f3a3121f47acb7c1a116bcff66681066f88c562968ed6515202303fdecd1d55d02c154ba4298e6bb529d2a82131cbc4190c10e63b83189c36cfe4a1fc662a36e3c7d8b6410a5d16457e130302047c435bb500673065023100c9bcf81f7490ccd7ae935ecac518e1c9cc789518dbf9b86e53a5373ce2540298c936eb54750c4131795b72fdfb686af002301c74af78d63b03d05bb570a7629635c88ae1c0c6c938b4e31de19aa847bb274a445004b315ae22bde6bb2e39f44a60470302047c435bb500683066023100ffbdcadc68db850c1eda0add4e60f743cf75633b235384df6b9dc574f0a79552f2efff724fefb683c0c5e276683e279b023100a94426dcc224b3b28204620cca2f09f183b1f23697700295612545e7221f25b9d5266baa531db426d980ab1c927c251f0302047c435bb500683066023100d5a21518633130613302048313d13f5b84ea7b6c5089e901878e79c1ea628f4e8328b75d1da91688cea08ef69251d845023100cddf96714401622ddaa3c56891362106e7267d0cd9b2f22791fbfb91372c8025a2de34c33a25e7a4afeaf9bbde8b52d90302047c435bb50067306502303e61f878f5f7b349d52345f678b957527de9f8cc2077b64e0cf88bf613a5c02f2be90dce7ea6c6d2923b82ff865ec12602310089677db5072b7d9128a11811f8725881eba21134e661a4aee665a76ee0959a92534d35d27a9c1ecdc830539d4421e6cc0302047c435bb5006630640230083eafcb8d9463a9ae5ad9ca6b2c48bf5b1eb33221f20acf231d77d2caded831105dc227f7904b7e12cf4e35bb982ffc02301dd854685caf57f47627a6d817ff37aefdb810b928219fab73f3756e563c58c6905c0f8fecea4953114467845029de360302047c435bb5006830660231009a69a3dcb4cee642a050062ce774fa75306d202c8c4e2828341008dccbd94c07b207d388de3b6971ac09e7030f5f95d4023100a699c3f2cbe13831931b958c22217e1a2394ae36a47044bc148358afc6ac68853cbbe3430266cec793cdb4aee779926a0302047c435bb500683066023100ba56ee2916fd65fbdc1be65de56ba5a3ee9442aa92dca3f58d636455366489fd859e2a8ca6046066b55ec0b3a7a000b702310093ff22865d23fab13dad732bcde8141de6e121a71e5ed3b772001c828f957009b5fc2e09dad6e0c90b94551cda65678a0302047c435bb500673065023100f2b021d105edc794074152fe6b86415c6650042a3c0896ccf76db5f90ce23c34c1ff8ebf6275b8b0b5545763efa35e8802305af0d7b68038b97bffcdf0856ad35affee917efabc9ace254e46e644e0b94668c269b0bb671c7783880b99b53e4e5b6b0302047c435bb5006730650231009cbb0805273c3081829f571584815fcdd618880c3b12585f62fce4799f096e47b818803e854c34c7843e45ca5a17bc530230113319dd97d77b36aca7e42d6ea1749c07e44285a3cc8da5a679c582babdf3c7885914cb05817bfb6a1b721803c2395d0302047c435bb500673065023100f9d864f14dbe92c7e580b2272d6aabec17d02b9a616019e720da9a71b67238efe5f3677e25cfee735ebaa9b14fb7447802306ea5bcea02ebf2edd7fd8e41d500fa9851a9c0dd7b80d8c7e6137ef7d4217a2819dfb66169507935c13bafe3de1c8e900302047c435bb500673065023100cbf03b62cbc36c347433a5cbbc461d5c8ce4db6ec7537a8dd316a39e69577c552ed6a7e75d7a57784d88f53c7095550602303b351dd3d2f9e51a5121656bc170dc9919a3fbe92546c3ca29a4216bcb15e674961f4abcf57fb849da5513d7e79c81a20302047c435bb50067306502304b23db451335f50ea01d015e7a7437d7de7dffcf78cddafe7e607cec01dd3b1bbc77c005acbb103611f099baa50bdb5c023100a37369fecc9a8da670d7dddca9cc7f57779fc0b7c635f00c8977b8c68feacba952e44d195edb36afcd6517f723af68ef0302047c435bb500673065023100ce738ff913e715a65d653c06e19498d1940ca5e0dbae36995b6d007b59fdc89468de657cb73d97c9ef756f67f798bcbe023018af5b1908161e62f304d798008e4aedd3c62dc526625817e8e372c22c3f0a1008455a5e5015bbf4832ca4450b05f89d0302047c435bb5006730650231008460ecccab69eec75a6f7aa0ba4fe68bde60e8e3b6cbedb4a043a8a086c472229275cf76c8c36e7db75ebcc5096893ba0230330baff5cac7a095ab75d017a937d97e34b20cb4cbc30f404104fb346f2bdb9e5ce70533476af073e21864399cc6702b0302047c435bb500663064023074a1767230412b7810d1d26c412e5375b050dcf8bdb2be98788fafab8084c6d08cb677ecc87b58e0c793f5c349c00a0a02304f824cb2d49b6ac1367b02b91207e2abe458802f244a928b897ca581ccc385748c7e91ff0a99bb129fc7ac7748d1bf600302047c435bb50067306502307ef356e85a1014ed2b22553f2ebde0b6e7fbcb3af6db56f04fd6433c429580ab4134c3024d0eb8b1d4197b904315987f0231008ebe36b3782ab45012b43d7edca7e1ca14845d1863afea2321e6c960607d05b1db0ead4462fb8880a764daff65661d640302047c435bb50066306402300efcd367c3a5751b748e45d66c8e2ac7f536db6592b251b6fa974a71e0c41656319af7b1693f23699685df2ceb6424e002305c919cb25c781e9da8af1478c40d31e5737ac10e6f7131f3c571f3d327ac82994ea55d4e3ba09f2e838b8be7414dbf9d0302047c435bb5006730650230354706180e9f59905093975e12c25e28ebd2c4655da957d2e520910ecd295e34e0c73cf49f3a1655ea97503668bd9f270231008decca968602c6766a1755f4550c4891f8f539e0b87fd90d659b54fc28b58e40920079876d1fd1784e3033943f8ce1120302047c435bb5006630640230673def6b639c015f8500b5c59097b441af6312908ff37f49e11712570d1adeb0297d369095ff20a5d3dd26be9d7ad7db023072736ed1fa7ac9f25bae2d0a12ee3ae059d5f4f30400f4d71f720cefc87001dea2c4f91e75517a0d7dc4f54758d22cca0302047c435bb50067306502300d4e8c92453565bdee89a69ff84b00c00f376116ee67f6768a50bb922be99782fa9c2d9604b1207de9815cd790c3d797023100818933f34bd991b0a78ce5aaa67687dbf91ec499840bbb12ec43a6d77ac59a47ffb398436606bd086b6a3154de246e5e0302047c435bb50067306502304e4f6e555dbdc04307f38246ac8f5c7c2c3a1c632c1926b97e043c9ba00c4c5f3a43f120c6e958270aadd53609126c49023100948ebf61bd015f505cb73ccffcc11017de7ead1d09fe7ab9cb46f717cfc468515e88e614df39a1bedee8f867503486cb0302047c435bb500683066023100c5f8d9b87165ba516e40269af3e6dbf26966f307707de0e5b7b65b1dced1e0ed33706202f76e0cd291e048667295d9d3023100899e358fdfa383dd40ee7b1f33272a12c9f6dacbb6e839e40d8f065deb2e2099abb3bd8d5883dfb95bc4e30314cc0cf60302047c435bb50066306402301e0ee0a0bc1c7459854b07a89b8d0316d54c80ed76fa3f041e4506383b5c93564912887825d6ca95c0f0ab8c3b38046602307d958b4489f10736996c0d90326f89a65de6e31c3ce9e10fd1e0f373e8df03c38ca5554bee53e1b02b8ed76aac550f240302047c435bb500673065023100fabf6a986a37027df92f11683bd35c43be11b024c1ef50425aba753bf2fedb94f3c8f0811bbf3ef2bac73c9a98ab12fe02304740db44da5911931c4f423e79bf3bb5830a76dd131d388f7a7028feee9cc803c42afada58ff9edbaad32c1823bba0e50302047c435bb5006630640230353712e6b93eb8f26154a253d4c2805dcd0b348601d602f16b1cf7d424aa89760937f080f4fd3848c8331f10dd4916060230765e9af3c7de1e8b1ab900481555ad23f58369eaa5afc1e536185d94502187809c1d9d5e0c4a0c1d4fb779f32d89116c0302047c435bb500663064023070751114100126016570e3cda9d3773b4b7708ec87a81b812b8e024c6cd2de4c362683182a500a7638744aab5b0496430230055f230642bbafccae1e3025595cb70f4f949a06ae7fed0f00e44fba13e4e8fa170559ad48ad39c8d128a7d6dcd3632e0302047c435bb500673065023100e55704ff6d0bb22082b13b58e1d91d2c885af383326703c87349f3f5ff4c598b05cb1573a0e0a12cfaa4c1c0e8e723b1023069b1571492eed21c85be283159c7f28e04cf577c38e50adef34fba0097fad32e9363d866977ec9ff6ecdb494e38d41b30302047c435bb50066306402307101c458ad49b8de64a3e30a39a4ed8333dc1b7efd7c15a8a6dfc19c45c14be0022bb789a978f96a19baeaec0ab129f3023004c09c9003514ab982b883861e0cfad72d7c040c9ac26b03a3b89dcce303f4dede40ac821be864a25dc29a0b81f5e9ae0302047c435bb50068306602310091669c9ff010014f541130de3808305ff92208352be6ac30121961bda1aee3d6843c0ea3921ec56237f6778fe84f2bfb0231008d8e52310ed59837b8917295180a29815400875a98a1183bf23e845e844bc75a3c828db8b5f698de6a70537277f3da670302047c435bb500673065023042643d92c66b3edb81910e0563d7a20b6a05ce729020735b006e0e2794d0ff19ae636ef888e95bb054dff701728aff61023100dae8d1993dfc3fa0058811bbbcfd74f4ba77200f17bfe8644ca48ddfacaff32cfcfb9b33593dd840d4b7c4e651140a820302047c435bb500683066023100fc28aa3b0bd2d8b36f60d74763f0d514106e63971ff33e93562ec626828647b51aadd5ccbb59d6ef4ee049a8e0841ed302310098e7d2163688a27bed639d3c61007e3809d6e4ac264aff1dd022434a6dce692c0ded24129cbb2c2a72463058cd4dc00d0302047c435bb500673065023071249f4524222d8cae312ec0c51eb107b0651a200767a05b5b1858f9f405ed4db857cd56ad3926725359ef244c74695b023100dcca90a8100464d67fce0dafa006be1cbbc45768fa3dc56b9214ecac4af147d9d22b05087b24c85350c113879a266e9a0302047c435bb500673065023100a94751227417c55d18dbc622482617554236bc0873da9d9ca55955e77c3924d70718d009f72bc94426e7cb74accb0682023056e914b38abffbf2e7f9716072a59f3383f7785f0b2ad67239ce632f388b76e22823e0b82ff37033d623fe82bceb938b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b6d6d6612e243edc6fd41a497cbcb60b9c64d29a5989035be5cabe76b87dd2571f7b57f189081b02625dd658bd8e6d50023100f85567b2603422035edf2da40abf6fe39a5f25725fa43bbd8de14949768fc0070dc6aacb036bd40baedf0dd276b5a1d10302047c435bb500673065023100d98899d75632a38713d703ce642f131f4245d592209422acb36ad9737f0be085740a7e699e09c03be0bfd562394c62270230171b9a3aa28123e6c9001c4b9af97724412162287ae3905e484c326d4f3f1c66e9c780257c48694f0dbf77bcfe3d993d0302047c435bb500683066023100acab83859a36a9e7d471dc70c5a47b174a77bb4567d06b066e7ff70eda75d08e5af29338b3e5e276696c9b7dae1add9b023100e910eae765c858a80e273804cde33fc3d0f30f95d08f36a4b598e1df0868a49f30e53ade959f24a249989adc6de95f560302047c435bb50066306402302a496860281ef79d32065ea4e99be12e37808e4415230f8613a93dc16f15d5163d02a3c2269ea0931ab29a51158da43202307e66e2382eee6ba2a88f06f958f0dd708f4251ad0321de10d6ef6ff29d9853641ba6e1e147e8bc6984d5b2ebc2b9cdad0302047c435bb500663064023012fdc4e55b191214fe003362210ae49217d95fded5e037aeea045c020fbf0790eea5e03faf1d11250cdf09828889fb67023064d702695a1b30f4ae4a7e658161b744f26e1efe280ed07064c247c85e2e4d6e612644f7b2acdd2a0651128a5ee154be0302047c435bb50067306502307e5ddd041b44b556aa4018db6c9ef18ff8383a37ad19be2ed332233838c4ed038f7cb11465404c16b2124b9e5ea7ae64023100a74895194166dba94ec278e8e5dad15c6f477ece924dc4312092bcaaa79d4e123bc832a0405163eda67a9c78f7c889790302047c435bb500683066023100a37d2a3b94f439596265f660d2016c56281835e07c40a10ba9c83fda90ce783503b7c50a704a6dedaafbae06c4c6e573023100ebf7fcc8a3911d0e479ff36b1b64a6e17d9efb8431b8e53cb550977c760bb4f950b4681f8da4f2dfe9dc631ab49003360302047c435bb50067306502301cec20fa074d2b75b60d8f3978e58065143b36543d52713cfda251b9de77ad5fe35fb3dac4e57b2d9deb64bb808ff442023100a97ff797086cdb2092d1b74fad1b953d42c676e503acfbf7e087a18a7ae5630ce30d42e97c64a15d0d047309de0cbed30302047c435bb500673065023100d3e022dde68d062b8e3a21c20d2acefee605edd7420839d489169ac37dedd0568618f29980476928e112dcbab964858e0230192f731ade43c3d578a58aaea9abc160da2534dcf5b5e03558733ae8e071fe7ca6582b3197da5de74fcd9319d050e73b0302047c435bb5006730650230276e057ebd967b5034a8051917f92031e24d43e6d53569cce07099a7a955fcb7a51d3e9339eebb71a8637a9f1ea3c753023100c0f6ab1b26f98550ea6125191f49e202810ad797f0dbcc93962fdaa5d881c8225ed1d137a30d4f45eb2921ce963483530302047c435bb500683066023100a0d1c86719908a9d85ee510e5d2ed0f2fcdc57ebdbe46e1d4a625f83f0df5d05282e92483e96251f6110b9b917084b6b023100912e3f95b7da13bca7b4604fec62241d575f6bf34517149c87faf0ebb866aa9cfdacc495dd6aa5fb645c9b581de9de960302047c435bb500673065023100c2478cefacf443c1365697fa3046b0bb9278b5751fdfc3f28efa33364a938ab41112d0a4af96f936281c1bfe99a1db1202302c3f8d93b5298234ce025c03fc62335f0e652b36e85107fd6f7a64a6da1e77017d7afeb96c3f09ebd3fff0af5f4b53330302047c435bb500673065023100c3988f7c94b796c87d59325f3478a976f05d1f4af6d5852dbd906869da6a43eef386d2f2882ac6bc2ee7d0c3073f1e0b0230620abd034f4285816aae44a1bf9d716b01beee7f82e74af47dafa6681fba25205b36b44b70c93a3ac15144d37a276abe0302047c435bb50066306402306285382351f41bf74cb79cf25cf55212f181b1b8dcdafa9d6334d360aab1e7acac7470c7839452f3dbf9331e040a33170230062614ba283c8c0180689a5d1bbdc85a84e62faa49b2dad6a8cf871a1f39f7139a2ea780c21398e312e5b9009542296e0302047c435bb500663064023071d9c0bd9dcc7e13733afb5a07982e041ccbfad0639e02a8f45aa20e6f7322b266df7d50303858d9a9513366aa74a9c30230204715293f23c9f365645e72a9ecc1cadfe71f24c1c144ceb3ccf44b7908af2676fec77792e1580b3438e03aa53d04fc0302047c435bb5006630640230012e8d73d428e5d72148fb74e820732253a3f1f6ee6307e55b366a22d5e85f8274a8b73d463d3c0a3019c7bd402ac7d502301f91c9d6ca5e7d76c813e2684ee1fc5e760df46b8cf10176a37a29e1e4096734c943a60ce3b75a8d160427ae017c2dc30302047c435bb50067306502305681d32c090d10bfd638b13b64df2536b4bfcc8455c9434cb1622eca4fee54e5c0a2394255274d7e3614b23ef9f12a5602310080fbaf8dec9c697dd590b3127d96a70b91776f746ebe6dd31d774f4bb799a9483357791bd165c752a0275e5d85afc1e90302047c435bb500683066023100a0335f6849deaf0d3dbe3d04696f4826ee6b993ab0bb7478561b0d14f8418fc3409c461f610350605513f427c17f166002310085cfc598dcdc196e42ac8d29d55c2247fb16809c6c9f6d6dce82c8e37c830edbe448935fed0e8522b11b3a61603149160302047c435bb5006630640230533dd8b08ccf13e701c870c521bc3eacd4359ed781f20a83e850bcb58976c7b843a850619b55032145f8a1d4c60fb5f8023024c79b54d91ed3e737d80f77182e9c40962c448a8da08fde6eb606cdfb89f0da6c09f3aa38a47ca7cadb5a860afbe49e0302047c435bb500683066023100e34931dee10955fb10f32211f95f538fb7deb2e7ce010127e37d1c215de379be38f048a3ba4f8da6f75eb7f2bb931d0402310091283de242a8a75ad704179a063639395d506a94289aeec6d548ce4af824991c64027828bad89151a820370d26d821cc0302047c435bb500673065023050c2a80325d956d48a96ffaf69f31c84160d039b7cb3413ee45a092b3623af1e5a0a4406986f0bee7069130eb3f4fb35023100969eaaf5c1bd88004d167b0644285c95541f9c5355492a8b03fa124728a90d8bf17f1d77bd19c87ecc3abb42330b5f4d0302047c435bb500673065023062f6b142a39d9b38a7828a7fe4f5e6982a7847ad99d1345052e8bac74148bea97e6c882713ad24ff1d02ddd4f2fd4de1023100d4171bc60e3f00b5335c93cf93dadd99bbda480c8b992b96590d4224098d8a904238adf353d857a17cba61d7ff87a3850302047c435bb5006730650231008fbfe4d279ec26cdf63b0469b888a80f99d78cdd4c8365d27f7703209921ff4d4e5b9b8ee2e80c3fa7baf7cdf7b676b5023032d8b825972d52d84f43a175c33208e0f3b5032a41b266fe6d47688d4b41239c5d21f8b5f73f628a9d8ff9038a5c66290302047c435bb50067306502304e626b525ecd7039b345b9492d5b4664011392ed742ea3ba8b075ee3e3e7115459139af3c7a51e4c379afed184a1d0c10231008fc98207e2ebf622995069754ff131545d83b56cc4ee0884650073d76b833d732bfa91c1f5a45a7374ed6f88307396cc0302047c435bb50067306502306e7b4fbf62d2c6c82834841a718c36f9ab8b3c94d807b7e704f72246c1cd915d16a353e0260a6c95e54787f18b101fa0023100e3be01ac69a9e3f0fbf0e5669f2e0eef8eaca99a7add1892b93db82e8af7febd2e324d1e14709a32fa48d9610c90ed450302047c435bb50066306402306fa846f5536d870b57311016ffde59937969644038d6269ba1938ea4890063ac999b36821c7ed4f51bc8de35b0d8f77f02301163dbebe02dbbf76ec6d51aaced816c722bcbb6b64d9cfb8de5383b8dab61ebb91a6a07b90e7effde3270a48fbc85dc0302047c435bb500673065023100885ee45cc2c7bda1c6ef3944e428b902149df03e5639290cbfc430b01ca4992ef3f6edc17ac857cd50c6a6ac38a8de05023024a12531560dab59218ffc5f89860a366e5ece5a64a7e2dda8d3e3ee2e75cfa06ca70b57a4ded3d4f9d6ef2dad300f1a0302047c435bb500683066023100c9d41501425b90ed23ed64ed156fed5c12778b6ab3bd81746c8eba253bd295c1e8bb15d18ff862a97e69a175e3cfe241023100da052ac7dcfffb4318af8393bde1b01edb49f73ac30d4a535ed803d4d7412498945e7a2b2a0a0cd700d8d8b2f4ca49450302047c435bb500683066023100e500aec3b83afd9909a203771c4e533e69144722a1e94bc53a6ea4383cf3a400b6491100d1cdffbbb462114896a67e52023100b25447667aef2b34a37a6b827b02e133b0935af910184c947659d1009693c1ed40ae88a091012cfd70c5bbbbbeccc41b0302047c435bb500673065023026d3753bf13e53f41d334a0a7dd6768cac42054975dc672ca26886ebda5f355e54047acf4959f4ed0192b21b2b36488602310089125790cb37a8aaf121a9c3028aecacbe3fd452c2986c9f30f4f2519ec9e7796d2a35967c12a9f3d73c05f68de8e8780302047c435bb500683066023100cda88461c4c857cff3cdb5ef1da6f2de52df249a06ecf780efa7946c1b2ccb1481e73ae673c5e4657da926a4e2ed19e7023100f3e1171131f42fb1cca8ec4f996b61559b36c960ac638c4bac2ec228b6ad4c040b0178e0d2a24b0a30e8c349e8086f8b0302047c435bb500683066023100f30bcece3a3728d5926a826eb6c2d557dcad4163dd9260252f215590c73839968909b9baeb895a077f368156ac9d87250231008f62837374b2c0a7c39d8ca40c7878176fe81f1bf7548aac1b254a1425c0cd9bb2772635e7f3dc236f4120967e7595fa0302047c435bb500673065023100ada3608574cca89b5936a6405b4debb2976c79008d9580cd10f553d4057b2c6adbbd22651605676d35c949c7f759ff9c0230222c057fdf979e1dd288ed8134a9089e3d7568a2721134c19491c9b6b8036f7e123986e9d53812acefd7a89a41ed0a250302047c435bb5006730650231009520111fb871dab8d27903a8008584fcc1140190e46c31545ad2e48825b02c66a813b47d15daacfc8e1e9f3d557def2902303f92868d3254a1208bbcc4fcccf1805ccb3c9cde5e7b68d28f63cf19ebdbb936f7e2e3f745fab1dd1b67a235735479200302047c435bb50066306402303b6ce2c02c20e9c70608d480e0a15443a42bb25762aa38565c8101f9f31fdce921525e702a505a027c3c9477b8c8764c023013fda92a0f4ca6ad582c86657b1b472854fc563ccbfe99c5b0a8f8db6fd028c0841db22e0e6685547e50c0b084650acc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e8cdcb960a017bf8d92470eaa0e734ee95a1cd5efc61496fb274e839ac6dc452c92bf3a05c00a51b7f0ee9d149481b75023100f1ced39e487ccdbf5c8645b74fecb6a534239a0ec171cb96dddb832b034bccd6f0d386f977ac7dfd091d6204cd2f4baa0302047c435bb5006730650231008b24ba129f081a1fb48918353fb102ba0273c2b52037dcf0eb6dc0e0f5ba12ddf11da77c9dd309feba9a6d30e5d1197c02302be7476a608dfcb4db25b9eaa971c2f23497cccdc7936fefe727ac084c1401511c33a0200072d8f5a0dfe3a61b07d07d0302047c435bb5006730650231009d11abe32e73ac65eafdb94cd391deeb0dd70c396a6e070204eda7eb2f908f88aeb28278365d94bab8871d7caf12aaa2023043e4106cb94d042f3b7cda949d5c441fdb85ce8ec175c6789ee7b3adfdfada82659225de1465544555ebbfb201fa302d0302047c435bb500683066023100cd665476ae77197c78ec119e57b6f4b2233324b9c7ec857edb293b30cb2becfeed219697656a09a03ae71b232d0c8da50231009cdbad815d0a269bc501c027bae3010b2556eb7c65a0e5f09853690a646982528de72b863203b3386dc2066f6631897c0302047c435bb500683066023100ea68f9a9b13c80f324391eb6e7372306bdf489d731e583cea21b83b2004558bfbe288e106c7d7fa5a7bc4cac3c7bf29402310092f7338b5ce32f6e205deeb67002d4ba24d752304bf7ea2c697c70e0bf69f1e09eb810642082d7fc0498da6f0cab56950302047c435bb500683066023100ce2243963573e5991afc163fcc82a70e1fa1e3c96091b04eb55a1247b8002f3a8ff59a7942038f8a5b6cf8b8aa8669de023100c6733e4ae2f87e576bb8b63ced621933011c2015e86e32ee294a4b30c9c64530287a518f8ac2ca6772f483963d6411d60302047c435bb500673065023020b40f8a6fa9af4999f85b5a4f85a4624a7ce55dfe3e90fbd38e9d4c5012dd8516f1bc9491329a28a537e63db93f8628023100a5502133dd52a15b53a44d09bb9435180528b41e9f1f10b8ab600e8f699a23a569f45d4991baec66d63a2e0c09edf2f40302047c435bb500673065023100cbbd29cc8ddca0658d86d0eb4b7b48bc5f927932ab3cf880599a4bfc12651670f0705d7844ef56e9e0d8e44011dee63802304a6117032a057b4dc8c2d7949e703ca0551db58c5d153bf67685a2562e2bda5de02b89e0ded303ed6c9ae85abda2059d0302047c435bb500683066023100ed4051eaed825dca733f3af69ba9a155a1e333c383cc5b9ce81588f393f770326658fa8b9caf70a94ba26d4472c8e86802310081f30cfd2798d0ffd8dcdb5592da077c6bbdfbbdf8e5618d93f718cebdd49b49ab5c9be62dae0802f3b8b3a4a47881cd0302047c435bb500673065023100973a22164d90cefb0971504f082d9795edfb898767f48bb19a59d03aaa21561c73993624b536934292a937f00245c11502306e04f2be2a73104b9d1d7a68886471ed5e3690c09ff20cb8ea579d62bb1bb41c7906128c2b1874ffb63efbd7634602270302047c435bb5006730650230264b84f213237bd7d4b22fd3a6cef7f9277f570486828364ccb10866f3794f5dfc667ca075b9b4b6d0ebc0edc855a1fa023100f2118777ab0b5a891a0f6045c1668ce2593a89c67d808baf58b4c86d585dc7e777f1b65b39fcae3b17735f89507c49580302047c435bb5006730650231009a77e8afa179f6db5e38f2e86b22ade7f2084d5d3b9c01f6baf412242086b18420814c5a58b5c567925ebbe800a3452f02302c4e8880ccb0fe90ef392bf523e2342dadfa0d756a5742b8a0e6ae69dfe4689fc930d246b107d9e98f1dd436ba9bdef00302047c435bb500673065023100c893a1a7d398bbac1efb76cfaa30ed8b278adbdd4981f17057a6e5b7ae9f7a10b7e8567e774ca7abc9220ea7001b167e0230260011fc6b125328a4d46e1544b59c9edae80ef3d2c006d3dc1daf727653f6ab3ebdd298e8b70b84d5414303b308f3c10302047c435bb5006830660231009f7049d489999816a6dc54fe13dce45361658b1fb5bc90ed6f8da7674da33347b907f17a0def19f4718fe53a1e8a44f1023100de9a79a709da4a2a4eb65f40d29f1e045fec090184e88a963b8217f13fbb6b87f3d1432e1f2b701c428dd0b73df8a6d40302047c435bb5006630640230705ec3c22178b94b916a49f72cf5f0312dd3e9d3c5de2930311c27e31c431597ad8ea2ca981fced4140e4a4ed57d3b04023018806a9afc6aa078eb6011b9877e52680875cc54d4d5dda07747790aec44932487fc7a4101d1e0be1bb5b3bd4e4db7bd0302047c435bb500663064023077e70b956f451ba6833d6e50244638db26b5aaa0741822570bc1acfda8605fb56ad9c180929cf5bf45418fe5b5b65ff30230582510638dbcd249fd28a33b9a4f53839632cfb1f3f5694f83b186c5dd71276fb8a16718e6a516e6f5b50b8bf8e29beb0302047c435bb50067306502300f9a3491c902ac8ab8bf45301ec2af0ce2d579d931a0b48d2d5d098ec396aa391d8072b1cbbb04c73da649440c461be2023100f84fb1060899ba9ecd1ff2a6faafeef405861e82026793aa80a5ef0d2c4e98169c7ddfea9a632c50b9ab6953b8e5801b0302047c435bb50067306502307cb9e8f465634016cee3fee396f5939f91f2e4e9492caac773526e162e10d6596a934f6848d7692728db0b88fa38c320023100ded111680af2181256bcd791c7e4e6bd7ade7935fb61939c4586dcb5b38ea0c0282f703d38f5c10594e28b947f9ac5e20302047c435bb500673065023100e37e949336fd2e5d7b37a7fe5f17ae2390a381315f08eddaa2b9c13ec1c858350f831ae8be7e78708bbe1d758a30bcb602301fa0332bb59a7beacab1e7628c17ed59126c20182bcda60a52d4dd9faec9e1c385b0dacf17ccee5718b4277f4b1797100302047c435bb500683066023100836793f2ec9ea6c6f1f7bf505fbe18cadf0d94b1cb0accfcebd771aab869c2de248ef3315dab2c19ce240f9f0f5b1cdc0231008fec3069006793c3db3b2011e4d748094b4c7294ab3c40fcb237ed4d0bfb2f333053f31b9eae7b294ae432c8a227a54e0302047c435bb500673065023013bcadf616b9f1bc3149c24c692d9cea8765a1ca17a0c1d8fff99135c9296bd0d30f45ec2a5c43da976885cfecbb0d1a023100c9f31d8e62313900c6bbf2a7563709cc9f6488bbbad1804851868b26ded15961513acaabd1e628d7a0cd11cb29ebbd230302047c435bb500683066023100a4f2b0a432c7a3da92d750a3965d902770048af97d675c66a3fec8e12818341cc693834d0eedcee093e88c2a577c3799023100b7536004fea6a1537890d46805f2a144989faa1c4d9c16366df2b0306689d708bef222a7dfba968169bbd3f257c005a90302047c435bb500683066023100cbb28b209f1f54fbcdf9e921be6ee162ed6a4132c1ce43011317a47afde60adae84b24980b7d27f29369d05ac5f082fb023100d7d71def180b8b7ddc10e3a9e1891f45c93dedc6f066a336580bec71a9779ecfc26af623d6ca1fb266d8af1f2a8300130302047c435bb500663064023071f13d3ea9755c666c0af2b4dc157ed300ad5f05b6b212661c34d41c7423c4f86dc84443f0f2a6ae420bf75f2f06b5ad0230399ab088f75d5693c50cd1dc02ffc7279b3f9455183a7e99e7b1b87430ad191b18ede39efdaf3358f88a7bff8a4e92680302047c435bb50067306502305a1f5f114a6147ee2305c6ed17b9b46de9283cc1214ebf8db5fea84fb0a499d11b76f1cd95570ef7c7545228c038c9a3023100e54388be8d607048dead5a087a730e35ea1afddab0b33c8e943e1da90d0d61358dddd4d1eebc264c56120dea313daa3e0302047c435bb50068306602310088596cb5e2c267dce0dce91f5e9d52598692b9a320e33ec4331ac8d0a0f23c94cb15a660426f6d1ac162e2c3d1812bcd023100f492e663c2028fdc5705337cdf3791cdbc8ad1d96d587eb27b01defb6f5b50b41fc868d03c909107cdc2637463fc23e30302047c435bb50067306502302d08c04fca8333c1ef3d8486a14b0696233e76592b41be8834374b5c7bd20782a27884b517f8d3a3e4503459eb519ccc023100de694cb98a19efdf6886c99913bd686ec59332bdabef5fb2caaaf1756e738bfe0df78458502c45166a7240efce4b491a0302047c435bb5006730650231008db8c1d3125bd7db46f27b202ea4fed0d1343a889a3c7729291096c06c78817f763d7f102f66c287e5408eb9094731840230155800f3d59c1a6289e703f45d59868e0c483a1543f69f48c44818be21956c1e1717574dea46c09af94b5800e71f1b570302047c435bb500683066023100f59ee2df9c7ee002be50ee9cc0f14e906c32f324b1b99ad34a0bcfdb1caeac9d5f612e089791c836bacdc71a3b86fb090231009770da9c2ea2031b71ff7aecfe7b9b900c75dd077ae8807f0e5e7fcf51c209ae1b84216fa5561bf6db736dc0ee10560a0302047c435bb50067306502302e22d2f80b708310dae25048a399a36e7f08815258beec1ba0d423d3cf30cfb3ef58bd6c236de68e456bb335d2d192f9023100b3a9e9dab3c32824cfeaab15f90890b74ce775cdb2ab7c3139cbf05fd2050f4f6b61986e933eb6ed94e36d2d0f1aa90c0302047c435bb5006830660231008d916a9abad096fffe72cdee7d5b53c2046745970283c1570f882310051d62ae6b30c020d6f527c62ab7ac3327e3c1750231008b2365008f3f7b51e8d6fa6010731bce02d69efb3c4ed78628c0c2badce6fa73071d7c538f8f3f55bf41e777175bea6e0302047c435bb50067306502306cb51c9b99ac66b1003bc90993d60dcc3e67fb666b0f9961d13e6674a8e6b5c765654ae000154c0c2f0089b7be6cab50023100e6fefbe79d805a234836387e5ad31094f87d9570184acf1a87ca1dbd9d1aa62184d753c9bb0d55b1e63c53836ad522cb0302047c435bb500683066023100bc996c6c69c492a228cee10c4ae86c37625bdbd3450e46017d43d7ed27eaf5392951ddb6a2a9b76f520f2eac856b5431023100b9544c28f7b1b382d899feaa0d25abd91342faef64844a5db26e5d4d3e5d40f8f3931459c4e3460a1eb73a9c3b9a0a810302047c435bb500673065023100df3641deb5030746851556c6e18e547cb795b2defe3563b9a89b278b4cdbe072a8261b08adbb4234555645b81be2dedc02304a25ded196d0ae1bdd5a0baab010fabd862bd5bcfaa20212193a7610d17730e68950a7269889e16e60ff36aa4aa8244e0302047c435bb50067306502302664d3c60acbb9a7cc9d18afdaa1f15ec641d00c4b5949d3fdd14f7aa5fee0067f3bb59bb55cd8a15e9d86c663a95771023100f2bc17daaec636f4dca562f93a5c3ff0d1c4552ae88abefafe87cc257bbe4984daf34f1a201d2c0f7282e1a9ca63b18e0302047c435bb500663064023067091472b21b8c3f0aa1214622bcbdae81b63c60e4a70084a47286af32d2a1b816e7bff84aaed163da6407ee158580bd02300d215c7fbfc1b8edea33acd2e4b5885b2290ee611121e0bf3b9e29792b7fbdbcf1de53047c4dfa86448d328cb0e879280302047c435bb5006730650230097b643c9f3feeb712661bc74abe8621b2c91daf47018f6aca708f23f5fb882a7cd8ce91ed1cf3c53d9b68bc8637b8820231008f3e49e5e6ba8bc1c23a34ab9fc3e6afdeb6067b5411a187865e225597ee4b3d5e0892356c19a335d207eb0721fb2e3c0302047c435bb500683066023100eb356fff98d43a0e8260b870de81727b67e8e182aa7c81bef5200ec8a9c7b7b63c1d2f0a9d8289d38644afc227153724023100e695157c8fdcae4c9e6592a415acee7926e0a26741ae05a6eb64f44aec1e3cacd9f918ebfa2e6e4644b7258295e48bee0302047c435bb50066306402305358604e63bc32a1d9bb6e7736df9384aabaa4eacfa50bfa7ff378a8f168bee8d737232a1fa45706ddc8c17db28a2cba0230634159508585b0bbb0060a252fc6a06378856b082f303a8c7f23aab21a1e006ebf82cfd4dc3d091fa432ade300a8afdb0302047c435bb5006630640230101244b72d31df74fd3a3f7bdddfabf238ce86c0bd0b0f4ae5d559961ffc660699b0563e036d4b180aee33346c14b71d02300f5eabac02fa5324f8886a106fcea4e84af2afe76ac43075ca90c215f13d8de63985046309ebc233a1176c2fe1eed3420302047c435bb5006730650230637969d7e01b558f250cd2665981b03c7a866797640b9a5ba17b8c6330d6cbfc9978cafc981fbd652800537a3302ab32023100dc185780fc7d52670e60bd13281a76fb5d477291f8be4a4ad584bb4fbed998e7335b0cd82695ab744b71189c025037530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302f9c42edb3f7081ed07714bef2b0b19d53d4aa555b3ec9fd967a55000255a9c6233d90cec6e51d0763144d2e12853a98023100bfcf186c52842ea6fbfe8785d44e724a556f9c62466ece6c843f5afcd73e677537dbe788c04fab98a90809e066c3a2f00302047c435bb5006830660231009fbbbe50b02f0b448d5a6c0b695977662c46de9ec99789d2a3e0761e70d545d91fdac0caf978ea46a2c2715bd04d1dea023100a159c460d65d31275ab77993e68a7806faa1185d5f437500113479ae170193a0a11aefccb93541cde2e5d7a2b0885e340302047c435bb50067306502306dd70c40314025e00661fca099283eeacf838d816845354840e27159d79ea1380f3f444aedcf677efc89b1cd340441e70231008e18401de994f14ec7c522d9c6894ff89630ae7d544dc832a3cf38aa4055323e2541f9251ad943130e607465d2d05c960302047c435bb50066306402305cfba078e8c0c783198929200d5c02c4d9eab432701789abab5e89b49574987caa19b0bd3d788784741057b310150d6b02307fa8e092b694b2cad8edab701a26aa40a2a25cb9a51703fc385003510138d6e8774f0d1f93df2ff4f2e1407b138de1df0302047c435bb500673065023021c767010888be9b05102b2d75d3e6475bef8ee65938856a56f95e8e999f99c9582e9bd79b8a78f4e2b61212a78067d0023100dabd3d19a6d1be707c07fe5237514fde1194ad9b1baf7fefc2f25ccbcb5899fb60da1484b088624c47e310119f13630d0302047c435bb500663064023005f2beb07978934e9c9ca7b11b7bfba58aecd490e2da6c6850761506b690ad45e40e1a282c5b8ba43432d9e5a8763d08023064c2d48b12e10a2df40971834f31c69ca2c51500cfdfbf305294de84b7379728b2a0cb153555e3db215f921ff736dee50302047c435bb50066306402303c1ea5a4aad0fafe9e1c5b892960c17fb22ea526d0bb295c43ccc3649e59eff2254d4871cfe08a5cf1baedc5cfdcd61602300961c090585cec397095cdd029618c40446ac2431cb70f300e9e87ce51ee88b22f41ece9c17ba7ba821347ecd1231b890302047c435bb50066306402300342007f44c9d84b2d816f5a5b4d875905eaf82d2db074e88a69995cb2dc47924b851a9a8720b41f1f15cc6ddbdc2f8202307cfa2388be2bba443c185f308fe82cdb9b62b0db26175b04c8577c7d110012c2ef8ff81c26118d7b5865991ebfa285030302047c435bb5006730650231008014a5ce0db5cf202fa549635e89760e0785a7feb918c0cc65da609323de0932230ba2ebed4c56ed291f7012ec56a32702306f37a84358592d49e4b8d90bcff755b726da0c095079b7f15fd50318d501061b06a27b29811e79cc4f45c17e45b3efe70302047c435bb500673065023036096a1ac92db6c0d9fbe7f29356c8b2209234e234429021b80af2405ed490b53039fbaa8e9a1271c9739ae64dc20a1e023100f2d00b58fe25d9c092e20e666b0f8c6a573477f6a5206a4f0c80a02cd9629734b48ca725a5f09cf869123c53554b44b70302047c435bb5006730650230053ea37ee5ecdbbdcdf142ef6020434276338c6754c804f6c74aedec2da2da114a194b67845a31bcd1e9dcf6f1015aae023100ed1ba1ed06a5aadd1b54d1e4b22378c05480505476e1c77e3b08e7d57ece59366dccdf2ec6e8b3bcccd628e26c7dce2a0302047c435bb500683066023100aafd545da115a800003a3b89f0c7dc17e92929cb23d1de34c5baf1cc6237801560c6d62e4297f92ffb60968426f8425f023100a5b77413e4d912a0dd59d3d6f82b28c0730f763f4d4372fdecaadc836643bc6c757ee426a30f1a4a5604eb5fbbc98a780302047c435bb500683066023100e5def0e3f61c7c760d84d7a4f18a9dabf684b064031db5be2341221eeac8dcaa220b073680fb0cf379ca219cb25265b4023100d991f8847d153ebd49f80ae475a02f293d2292055e707467570b55e2f9324e61246c935ac76112a64814e7b30b4f97680302047c435bb500673065023100ef0696e7acde788f73e6f51bc3cff485891f0b5aeef324ead72bda1e48f47e1e6deb516b3c49c59267160318f076ee8e0230485fcb20ce42aa9263e2ae5f5d98f17d8732aad7cc109021c031ad2fa3d704f5f78bd9335ed13341c9d5c43484fa5a730302047c435bb5006730650231009e7b17a44342561a1ad75e1595897e3bd8e762abbdee9367de9affd64cee4794659a748aa674e783a5c18cdb0fb6e93a0230634337be02b66962e5535cd257c913264fa661ce8d7694900adccb8c6e74494ca410049d8d2bc3fdfda55d2f53ca8b5d0302047c435bb50066306402306a2e73784b02ea165046ff43b2406aee614e54d7d916b85b2f44cd7e3f43d3eb9177556f151f2f7757f021071dbd858e023038d49c94ae5382a7accef140c95d389eddff808592fd6accc72e6ee241b9674a025b2bda9c4b98a6d56f3569c21d1e560302047c435bb500683066023100a294ffc6bbdedc9bbd1c0a3afdc5268e47764f7fa575cdf1cca2c4cca3012e8b08fe61f4e8379ab22e87e2b92d11c1eb023100875a85501c524491be142d9c65e61b9aa0f5ce07807712a36bc178f96ebc1168ff28d488063a6d439966e4eb8da6d3390302047c435bb5006630640230701db4e71df783ef820b01846f1557bb45354afb9a8ebf2de22b460a9763816ffea6bdba19be9d9620b9d3428871af490230185682f7da056872e571825a1829903f926ad1126e9dd12aa178e8eb13b629ef88d20e21384f9a6233c401f9083c3c590302047c435bb500683066023100a3bd7ea4bfb81d7ad32e1021cf5260db5366f0856d5a93fc7bc3757fb21f068c89296e237ec292b7b0f80bb3e034629e023100ae8f2876dc022dd514ca75d5c03f0c703bc09976d5d958fc3e43d3151f4a55940208f28a9ba5923d270a559ffe0ef9040302047c435bb500673065023078d5979c8bbe5574dd3b7c09e0d12cac420296cbe5d88e41094404ad25a38a9537373c8df8a7b3b380cb8b19d3978449023100a5579222c5699abee3e52a96942f5f713b240c191cf2ea3b835aae7bb5f8f582a3316137fcad7ccaa4b8f3864c0536340302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301fa5fca658d972d70dfcc383073cff05d76f74e1d5a7e374207a4ba75926975677e108740bd3e2d766ed0545645af3ec023100c5cf80a7e32b5744027698808b539fc46137b74d567b5198633f99c3849ad033be27f8bccff3ddd794a63ab6e79e87c90302047c435bb50066306402303aa62862e158022ef7f130b5000614fbb56671c135baa15a30c4a47439d686299a9aa6bac2907809386ed358340d7062023077225c3faddd20cd773fe3aae2795d1b485e34ecc1733d025548d11c712e03413662f1ded831d1539f5beea22e70d9900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307ceff51ed77ee2fd07c291e9e0cc1b076f32d7c8a86b55bdb42f72ec21db565e194ef37830659f7848466eb4dced0214023100b56bdc9ac41c0c1ee47963a9b4a8f12699e7d5100e4b53082ebca89c12029c97e12aadf147beb5abde3bab3c135f27d00302047c435bb500673065023100dce08269b91456f38a3c0127ceeca494dff70deb0440dce034377f712cc42d429821cb592da2f09349b9d6c91fc6a5790230796025307ac43975e6a2bf38f0c60c2ab610b9a6b89fd62d76f0259e492da569450169ba71bbd59b10d3590df0bcc4640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c77e9d1a52b626f9ba8a184b29e8b771c618fc41dc55cc7903e2017d7d1ca50303d527b3a6f103070b3e666f34a13fc6023100b6b148f84895c0c9a00beba2e891944196c53f835ba8d44e2694d32cd731e3f115458d67fb1ae1996ab3790e77823f430302047c435bb500673065023001cdb5bf96958ba0c21647eb463466e72093959773923c4e932c9093b5e586b904b8047a198f94623f13cd8ce466b2ab023100a02322111df9c6d6fe80eb4b296971ea201d21ea0ae08de4025f183a91baa665ced48d3853ac48886177642e71e1150f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304daca28636b7c1fe05f847b5b9612f72fee3b46e80193ce7ba11deb60d97d30ecbbaceb05e8f5fdff15183ce5f8ddd8e023100c73472a8876c3a0b964baa7806bf7ee6a1c54ae58d074866a7ee6a3b03e7f87777ddb1d646d7b620837fda60766e94bd0302047c435bb5006730650230189d745c1bc50b7b448c5dc699a2c2baf74d4fd577825f0b7736d7b09965a93d9df0b9d4c711d6167d2000f68712bb64023100f77e302cfbafe074544726701ff917d31171e5e13bd0c7e79b48e1bb8d5566715fec65a1f31ee07e4e905e4b7b55a8cf0302047c435bb500673065023100ea2c00609334fdb09aff07825801145031018efb71be19a4d382174ccb9ee6b5c612d7f8ff60dfa254c7586110fa1ff5023075d595ffe1f54426bc2250899ea68e07a7697ba450e339c0161ab1e51a6b29efdfca512bc69c4f134b024f3eb2c13a950302047c435bb500683066023100f0ea0d25e3b3bdefd61df933b4cc18854c0c018ef0c6701c01df4464349a8c2fdb3bf7b84da4adfe9e60507bb90e3fd2023100bdff25c14dfe49a7b74d79ef62b16e285ba091b25c4b210a199710e4205abfe948f0c9a46cf485accec938c5fee799f80302047c435bb500673065023100f384a13a536c4ba033872c974dc0b0c05ba17918d8af237730d9420cb8ef57f8383e0450f6e5e5ce32811c92cdb4881e02302e968b15439bb8a729fb421373641bc4c211016ba3962004ea5f24d2a816219aaee4f4953077ccb61267838d33fccb780302047c435bb500673065023053c2c41694b88ecb8769411d1d16176a1acfcfb4d6e5253a982e0eb64f9d727c349b45b5c36f670604024c2e41fad97b023100e3a31b5e6d73f859a9245d5cd8ba79af3e703e20e495733224b3ad28ab6b023cf67f4dcb4afb1a1659dd0032d6143c420302047c435bb500683066023100908cd24e269fc9f8399401200c6f04ca14a35da8f19fdfea2c0611bf110854fc2f17cb34d5a9ca6ae10d52c1e0345e4c02310082f2089573abdb4ed73c612e5e7679a11a4ef1512e60bfc285b37bde76f56f02e00f4b520270e8dc05826f5a7bd4db8c0302047c435bb5006630640230300e11763a84a56edb867f75d7bda764672fd48be323da83eacf4f7788c4d5428be38d2566cb0c1831d60f4f4d8a0fc902304fa0bce7649ec461d654d63564f354f0db28ec2193f1a159716bc2d2c694fefd8a8ab7780ac52218d2a135475fde61830302047c435bb5006830660231008809edae0a3395f0220a97b4796c31e233cf627ac05952ec665dd1f5108160f8515e1f33be7c0cfafcf70a99d4ee4bca023100868d0726df0e9daa4095cdc516608223e264b2d77722a97099987e1f6681e76540080c17e9eb5d8f7101080eaab619f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303e405a152d43ad6a78029e4ba997cb85620e7f810b27c44c385e17f1ca88d423d12f709151a272546eae2ee9f49b932b02305c7e79888313649d5d8060c403ff2cbdf67edcbea98f1c8e8c8b2f2c2ed0a667219b32da848067fba5ad992a55b0c6e40302047c435bb500673065023100af5b1f3e6b7e6bcf2507dbf207138d0f32056cb48155402af47f33d9a1eca48f67252008f5d888ad48cb9c2b7856d1b002304c033e6bc6d0d243e50673b7891907f086fe6460fa6601df2566ed57932a219be6ff3900f25d80d585086efe2a4bcff60302047c435bb500673065023100eee0e3c9e19b8a50abf850b502223e06daf0cdab689efebb890f02d8070ce9e27fcf98428f8da6c4355bdf772d9f4dc802307548d9dc019a91125dce090916f6e77e467a28ee4afca93677e0554f8fb5a5114f9422b19864a00fb87c85b11f1b5e190302047c435bb500673065023100d380088d2de83e7894cd7776ef749f270cf5ec517ef3a73b31bacfa3540ab3ab221802a5cf28628509f175799adab38a0230719a0b4ce8b8b9e09800787dd8e71908396d7e29866094fa792064f6e307951d0b63fcbdd1674ca78f2932c25653a27e0302047c435bb50066306402300b1f978d4ccc6247d4d72d8fc108b64ef607cf3f56a7c03e7268e3451931269e8babbfe0e7e75611b102f753d2527021023036db0f09b8751e0c3dbda5eff0eb8bc96182225b8b12dd02aef06e32c2483e1150573926c56a27b1e8b663589ae276840302047c435bb500673065023100bf21c33c3b980e5e4a0344d549e9e6ed67bc6ca6eca7e5d4df087ad24932dc42f52e9225c8d487b435d66f4c6220d36702302acebc1b53506d553184155fc0127a1c775c87b636c8dcb95067a8be846700bbf97f40cbd0953bfb7895681c47169aa80302047c435bb500663064023025cc933579e1ed35538982dfe04b418dbb73df7c99e72f61eb2b8d50c5b9c9419929eb6e0d3b3cc020333d2e4e3efcd202304053d9bdcad9b11e76a360e59ac542bfc1b41e6ff136faaa5daa87e3b998149e8fb775ae6003d6bfb5ec57d0c6927f9c0302047c435bb500673065023025a0f5c24280dc9ca1cd56737bffb271597c453a08b7907ea61fcaf165f16e5f1d0912d424ac06159e73858f33ef91e5023100a473f42d9a7883a60b97a4697e8664506f7b503aed33ab2c25aae4fbd2412db7f5cbec034c6b4ea0d32959d881c56eb30302047c435bb500673065023002843451a7a23546485385cc8f84e14bee4a7f1284eb2a9bfa397f6e7dcadf0f3d1461e2e8c8324cff0efdc57984e813023100ea0b3a0635110eccbe3f2fb91e71af2533dfb7d4a5a45f5768d192dc9213f034d46957d3d3d53bb7104e6432990768fb0302047c435bb50067306502305437c8d5d0cd7c974229a2301b4b76533aec3a19a36e6542fe166f8f267d4011318e649375323af73a6780153c9584db02310082fdf847846c810803fb2be7113eadeca631b810eba59a248b2e238c0f6cdec05f942baa5c5a957acb125c6260136dca0302047c435bb500673065023100a9f8f59330d34e7b9ac590a900d5b9983594c389b1e3297937a9832e09c462947b023ce5e19fd66a4354e374945c49fe02300e260f768fc81a986b9b9ebff8113ac4173afd85568ad5e6db85e5c6a23c95f7d1f91051c6186fe36e9759a1f0c509f80302047c435bb50068306602310093e473264331232216bf5dc07500da7c7d8b06b923781d534f2874ea8838d0adb6ec4737b561228968812a91874a8841023100e752c20fc89e2678762a7a1af580867d24b0c11f880ca0108577eb789fbdfdc85f5f2208212f2bb4f852d13fb86194940302047c435bb500673065023100d7f832d91c9154e1a4d9bdb1e929f130264cb8c24fb3fd4ff6d226f1cf4c72d8ea6f0487ee18b8c204d2d74d5968eb97023041208e1c61098d793cfe03407b44df70366614324051620af905e74c0347f1aa2a12ae288e4270ee3d1c5ed3553972fd0302047c435bb500673065023100eb6d34912e2ad0d2a8d978b4ab29c9fadd1fc1413bc95241717b2e6eb2836b7eaf47edc7370ffc3e5efbb34c2f67972c02302c3169a627614980e9de7b21d7f2c75ef26e812d36b1fdf5edd64381cf40da4db9e83133aab6b5d18d6ba6c85970a40c0302047c435bb500683066023100928538b6a9c3e77ed4511d21968a79a07d64682100e6230511291eadd2a60bc4bb5d0cda30ee6e6d594cbdef46e9dd2d023100ed9f52ea4264c85f79fad89a9711a739906538270df072a90c5b1ff5f0ce5ca5a62dcecec19ac86539c414658bfc9cb50302047c435bb500673065023100e1a0cbc7ff608bc52f6df3b45f15d7141e6f8b56712e9239a417f02ec83cb61027ae21d830dd20e0ffdb887e85f2ca680230583ebd6925a2a4588d61f3783f8f4753a73bd5877cca76257b441395a4c0befdc88016b4852398eb941ce29e3fa46d510302047c435bb500673065023100fc057a1895fad13731098ec0f5fbe392248ce915a4b48a166a3e5adf53ed7aff0cd621c8c230b29380d2fbb2d24fab2602302600a8c8a69bf6a3e033460358fae6320fe313c815d6becbb1686a028ffaaa6499086fb137472b7228c75dfc35185bc40302047c435bb500673065023058c7502e1a580e671714a47c89d04aecd82b57ac00aa8d8757622ae6bdf0e080a284c854ed5b0ded76ae7d11d31b8cc60231009a81194485c5181e011e2b6a9bb0b49cc2e045dc236d9bf9f9be09244f2f3c6d4e6f174a2e672a85fe3cf1c3907ef7b10302047c435bb50067306502302e0e206c8019c8c464594cdab72e09d7a4ddb05bec84f8bc7ac952f44f996dad6606c84239d4a97e629d7379e74ab964023100b5568ddac7ebdc39c57ed7c8ba2467892b138cc5825839e169fcb9dbdac589090b0536d45cb27e7c8f9ebbbffc6d09120302047c435bb500673065023100bfde864025886dc2c48297caf870b83f804d1d8b8c19e1bc6aa278aad53c3d06e41c9e97e5c8a3e03db2d0cd081457ae023029f049feb65a001c4b0d47a90a0eaa444bc15e95b37667f966ace16842477158043b7a46e2c3871220d3bcaeb5a8655b0302047c435bb500673065023100a540b8f1c848ea4609df8c077805c40d1501f12ca2ad1f383629c1f806a8da89d3eb3616e8c2711e863c8f5ef200170f0230051ef8736a148199b2e4de30d5f9ac69ff8c2af92d6b8d68a955a46ed7f6b6e206ccbbde90b07aeaddeca377575a6bdf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301e687fb0781c4d98a6ddaeb2ab0d983a7fab88aa44e884ba5e96e956207060c81d7b4dd65192df385c07f5c3224f8c9102310091cef03475beca12603cee265ee9b891328120e44a52656d51d5f9e5c5efad462989d3ba0658789ff29aefe696e56c440302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b1377983d329a4ee3c90716d0970795c08fade13964c3e34b2f75436b6cda3d0984fd96071b63034e4cf021e268224c4023100a6feb93dd5b39feb04292da94df5d883038b02756c146d6b579905ad272e5f4c191b694f980296265a83b8ef11c45dcd0302047c435bb500683066023100e377b9c667a39bfcf3642af01908784d9c767834abd4cf41e97e4ccc9642ede6b0d295cec6e6f099ec0e5aab0d848fca023100ae930ebd022030f1e27952101488aba09d3367f686a1db12efdbbecb519991bbe9519ca15dcc7654b708afd14e4d5a3a0302047c435bb500683066023100ac9306348be0b304f14e7c1d1f6cd14a45b8ba87a6b5b3192c5b05af90138fdf23464ad1094443e69484bd2b0ba30636023100bc5334a711a33aacdf802b38728b978e1fc8efc901c5e23490b262cc77518c5bca97b0307e9714e06e380946574e0d820302047c435bb500653063023022fc45280b6f8541b5e76234b3b82290b53ff3b95d28249f4ba5af3b591875581eb68763116d9737681a3c89a8f4f6a3022f75864499d00562e5efbb4d534e349cb3175b817258ffcbc1e5f11d3b6d8811d0dfb51b2daddf85d1a1201e615306ee0302047c435bb50066306402307417e71f6934371c70c44db033749bcc95d534d16e52b585d6bbead503055dedaa2ae1ba2a28f7246657b50445ab27ab023070a37c8ca4f8964e3df233d4cf6d863b135426868d604cfbbc57c3ed5f81d156ddb676c62d00d4ef1b1bf9b2d99c3cee0302047c435bb5006630640230388a84e17df0a14c3c04be4bb704eb5fda5969c4a7f47083bdc869fb0e71f9d450871032d9429730321cee4eb4b20a8e02306003f269e5621e24308a4778b413df3f205146ed5aef68837add6da1631525b74c31358000ff0ee28b0a8bc4b9b4fa350302047c435bb500683066023100a342c116e192f6164fa1abf761c5973a062910afeb1e47e9d06e09117e4877f7c370d3f8b4a7b69ed729d2424d5ecf18023100de2548a7168401439b04d09697f3eb3f5862d21d85e2fba85314383d0fe71e378fe628512e2c678cae4de8ac33e5157e0302047c435bb5006730650230664de8037b64eab0672f5b05258b78d351cba9f549f906505fdcc3bec1c5ad3ce8a36e9a5f32e36595cf4b813b42f496023100effe0eb999fd610a0c2dbe142ccc21a696d413625d16c820d00677730a2786a390a8dee0c145706179be759af9fa12650302047c435bb500683066023100d962be3ebe552730ea49bb812e54506c6e1fa05ee4bc36c26306eaa2d59b772fa75ac79b5ed2cbfa295a6d3910b8cacf023100a54a9bbe6a175c7f292afed513e34ecd420a6617b203c4da99fcddc8147633be32f272e752504a51f5ce9200f79f175e0302047c435bb5006630640230407d0cf055027ee05c9453781f9bdfd7789d44af6521151db3e458877e6a09ee83ed5c342019094c109b6f270904528c0230009d1521a8b4385600bfd67cc2a43c40c2dacd26ac900d4585cb9f6bda519ee7e95be387c60c05bd0a0fe01558afadd80302047c435bb500673065023100ab7be77217495f7a1b88d590e66786ae910ecf00d8e0b5dceb11559cc2446e7db63401b934a58d34e121f8228c76b455023069a95c192f4480906f6558316dc652fc362cf83079250ee2fec9168213c6f733316b5cb7a4d0ab0792380f4d9814de100302047c435bb50067306502302bd3e7fd47c416a2b3101016fb2bec8810e2d83db9bd64fa59fb4168654fdf342238afb30e42f48fc4dadf3783fe982e023100c418a3174b91e5ad96ffdd5c3fa4e04515e96174f92db956712718d75099c477984a8485e64786893c5684ea41a3b7520302047c435bb500673065023100ac2e22a040854ddf2cab298f7f1d33a6833ff346244bdf130af5895fd6554c60248924bf6e947f95385fab627c5944aa02303cdc9cbb88221f42765e939552a2ef9309946f5e629c126976ab2d8919b461bad65fb9e813d4765e21af055d0c38b9880302047c435bb500683066023100ebb9945246a344cae6f4076f3e1f593296349e9d106577f2fa8bdd82342e0d20bee3d73f1bdad5e8ecbff840a07261a6023100e026b57cc186cf551def09955d004c0f8f0e3260ab68dfef24cd2c33909d117dc856523a53dfde12a5b4882535b5ec6c0302047c435bb500663064023033e9e6721f8800a3844efc1f41837e248a343236c761a1d32ea4f7175629f638baeaec9944315e051dc7e95587afaf3a02303fcf1f3928f98f7fe526f6af6cacc842cb6e302e8e0eb6a2b665251496c10b35ac2df891fe3a20ba30e81d925a561e9b0302047c435bb5006830660231008e376bea4ab9ed46e2a4b3f9787e09bd8b314cdf9920428c5ff7e552f1b2be458063bb510b366c9e1f885c42ec02881302310089b50840b2f1114013b3f85cb04d0b5a3de359f418934039a0e2d3f82670107615ec18ea535a9a72feaf7b9cd1e9580c0302047c435bb500673065023100c8062f2f32159f39abd29ad0ceb3fb841784d88810714fb3efb5be4639d0c64aea1dc34b72442b3d7cbc23e34b6e886a02301e3a6947304b38fc5d8353ad0aedd678226070bc058a3577cbaadca1d979d09916614bdc9ee2cf82659076c50cc33da50302047c435bb500673065023056b973285b328567026798156e021d57204cc917675475ef90292dad26ca671c9f37c1481805bcec1613f9d8be3238b0023100e774213bb5db312f66a9e364e6f33128ce8cb0e480686685fd3ab7efb370967193a2e434b96edbf3560b46a45b77d5b30302047c435bb500673065023100d3e2e04717398c3a2c9e8c6467d42b35a81c67782ed9babdf4d858432168e79f6f171af589e631be488854264ec16bd50230030a0e2d75a9f02289f67246cb0a2a6baf2fac7702dc9ce99f1b526ece053c194b8ecfadc817ce4f05e57b66d37793cd0302047c435bb500663064023005e516614362b1eee7c5067479a02bffee2947f65d4d4bf33cd774babf724f2653530c307daf07eb5d7bbeafb1206c8202304ef2ae601979bef9ed7279fdd128979d673d1c358ac77c394c387952304c6f7b925841a4f5d30d32211d54423f3f4cb60302047c435bb500673065023100fe5dcf29e325d8966ed33a1c1b140aa29a6a17a99da6c52f881d61ad150fc76d0e5ea01f94a4451993eeee7219e23a5602302132ce5158352082b0687b6af23c6deedbb01c943d8a29c523aeaee1f4fbaa061876fec81c9281ab68826322a6a681310302047c435bb5006830660231009bb6491241a9f716ca848f0404ad5c7997c6a5190eb3b3df967007aee807a1a8ef44eefca910dd51a1a5cf564220956e023100dfe7a4838cfcd173f66883aab940d1b2a4c71424d4bdc38c76de4fe76cdfb51c3d69c54305d88b88a6605c0fb2a060e80302047c435bb500673065023100860433c56fc5cbebeab2ed225718c2246ff2760a2a592ed44c1df1eafd4365a0fe39773232bc3cd3957c689ef4ae41d302300b4ef91a419252d45c8549a4e16f4bb97f16ee4a988ee6e93e19ae5829949ce3a427b24effb29dcecb245e918eb127ea0302047c435bb500673065023100f809a89091f828ff2bbd2dbe59c2987f7a1cc01ec38aa93a771ae7a3d7bb2d9a8a97a5f9153493d18c1be0e5641cfbf702301019e6ff91e13463683529e56c6ae9415907f5efacd44b437092bfc357d90544ca4bdb2741f91d821e9f7e32de167e9b0302047c435bb50066306402302a0ed67b000af5c861ef6020c16b836d3351b5783d694143f7778685d13c80738556b41c796deb6d5d9b736b07cc660e023078e6c09133ac6008b609310d1a205289d4e0684483923d5198c6fb23f834b705253d35f87065a7d830e41eac2e78d6370302047c435bb50067306502304cfc09c9fec10d6a67e569c7c8f8455e56940fc4eb47f989718b3be0b6e0e7b7cacd031254619e060c866330a8b48f680231008fbb686a9fe7bc3e7edb173f00a16f3b40adc7af8fa2f392ac3f9490dbf5a567547a18fd0ff763ce2b191a767baac1b70302047c435bb50066306402307dc6a9ec7cb7120f311c195ae7e7a7a0c9bb14675ec0c05b9e3d6df05b76e68e910911544b585bb2a835117d86b01616023057f615a81cce81b6b3890344b2f0f3d81b196b89d204f6fb21bc559fff287ea5407fa2788854b9bdff0a7841696b08db0302047c435bb5006730650231009e3c66bfdea66b3cd82664551aeb99a07c966b8fbc6c2f5d7b8cac87277d43ebd86e57227a22aead82f167d30a3fecf7023010a9972aecc665bd85d0d8d516d3824a530c74f27cfec590bb4f33dda2dd084f732b9e32c127ac00553a1def04503cee0302047c435bb5006830660231009366c9a0692b9b75b71676e5cf053df76a186a5473a71e7c8047190b990c2bb8d1967c3a131715c939d4d754eecd2d00023100e15f02912fc4ef9b9c39f96023cca9b6a2a9b8031f8f6aa824247c6426feff2defbd0564fa9d1e52cad9e144751e74360302047c435bb500673065023100ea499557d9070513d69ad72e0c634b21c7bf6fa03f7064c89982b4c91ae31e4172dfcc531921cf71c4b90089acf59d3002306b45370a4ea0f25760dea581842649f74bbb25feb9541332d477a178297aea3b6307cab15a4489854cac13d9c64494720302047c435bb500673065023100f8cb0a7c8a634bc07e3b574f9010924027a72ad57f0955c8a792ba93f087813ab7e4696acd2c1f4aa4d98d715f8ba14402305a2e5a8f2e4bf4bb2d1c721ae28a6de7a42fcf6d09881667a5c7e3702638c838e2f18f192fe00e727c936202aa9b646d0302047c435bb500683066023100fcad1ef993c7f8e7eef285de616bd21b88b228069b750016287e72674115e1c07c2b3dabefda63c6ecf4f8641a2f02ff023100d6acd47420b7ab7490d944ef32b0a19dc9df8b282af1b36c58bde05024d6b2ea3772341a66e1b4609a9518908c125e170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ab7cd83174f7193cdfd267d4c6229ea948ad6bb496f834a46e9902ada59a7f1f8cbf21951075eb97b18aff988024229b023052f9f26368aea2539c4cabe07434482c79da07b3e1d9ef8af054be826722940c87936e992dcee411a899b5b451a88d290302047c435bb500663064023061b6f472ec1c35061f6cddbbba461de68a37f06c935604356cf59bf59fe5b6468ca714f52998ef0aac1e097a3c83aea3023031fff0ffc1bb9e9a648492c0dbbe964f41bc90f7b56374c95f8f983683322874270089efcdc8a33801dd7d83ce60b10b0302047c435bb500683066023100ea75f3f4e96a94a9cd3b6e950b7101bf7eedc49f108de1bba6c4c9ad9651b9446f39c5d0cecf886ea9ee00b4f10e0fd6023100cbc23734e246b6855afeada8212ec63d6b37be1447b2954c250e42c71fe2c2dff380157da4f02e2043e8ecedf02a981f0302047c435bb50066306402304ce3f9a1321ccb79c45c451463fb7ddd8ccc7f06ae4f08ef0ccb10877b0caf56f4221463e4d7d2056bde0d4cae39f91e023078ad8ca8a5c7ca3777fe4ced8988cb42f431c85c4a3c7b53762d03f7836d6d5ad756218402479b4267c0029da0bdc1380302047c435bb50066306402303e7f7c5653761be10403493f0b39d4f2c6eccb1747a02984644acb7b5bacfa2691e66c26bc437fd04bd6e899d497da2c023032fd20ae8c053cbf8003ec6d5f9007f20b0ac275be1d7f8eb3bc26c6150c078ad8b16e7ea14261a1efbc54a7a1a214810302047c435bb500683066023100e933d436f18023bec6cc3c098771c8da986d5aea322d89487dbb185f3d01ef608559e42cd26942355adf2933fef7ab35023100816291a81de4c815084a658fb9d9be0352d801d3ed690408d755e620316c4151b3407b17db6fe38305bd6a6fff3c305d0302047c435bb500683066023100f02cb1c6b6e307f0c1c33aa380378fd21217a3972760b9bf4bce3ce01160a1e44a92e2b3d18242ef0fde8f59a5765e2b023100b8eb1c97fa5a765b057227a37acd1c753b78e71db871116930a802563401434ea9c339fb34147a706f14fb1b33b688ff0302047c435bb50066306402302271e6f363b741dafbe4ded2ac408c9ec258d90e6634c3510ca09d9d59423eeacfa39cf7d35517094cf8aa35245a91c302306f7a697ef02c1e82208f19211dcac5d0ac64f56661908a41c44e70a9b0fbe9e9dd3829bda058f311b531fdaba0d2f8cf0302047c435bb50066306402304b9098ce5eb3a8a3b6c9176bbda456d51dd93d38345f0bb2e7ac8b18e0476689c3e25075fd92c03f63d8572a6a7220cc023000b58ce13c36678b972d940e3542e51c9b12f3f6eddf72d8260c39d76da6d483b33aef0c5d19c1e18ca80e3c52da4b280302047c435bb50066306402304f25951d621288d53e022188b85ab67fef35d669c4c2ba84fdfde3be71c2417b2d205f8289d4d7f4a211a0b852d0023f02305964118888aa1af8935ec206224e6b0e7ef2aace5b9db9c1b1195afce8af010c278e8cbc78a2bf5921aa08741342c3db0302047c435bb500673065023006d1ee927c449cc91b10fca1102c50e3ba2c67928259cb09a4f6c824672636093c20a9ebe756901ba21b154570c2d45202310096093ca3155f7b7d862ba397e5b7f0cac4ea812bd377cacaaece06e1dc5112b0038e2c246124e9a8a7a7b02b6662e1650302047c435bb500673065023100c88c835e462db803127b49840d5bcd50ce271d067fc1d0efe6e72fe398c0eb0d9ce68bfc420e99c9d99440531048c63b023077c9b86232ee285b1c026d009d9ab00c76a33ae69dff5d7a3abae796df466717af7aea90ec78e7267ae8cae7ee6da5930302047c435bb500683066023100d500f4a8978888853917b053e257acd8528ddd503a9a71c28e692aafc001b32e2a2f8d4bb412b0dd076000ce18646107023100ee8fd8bb5900b7b34d5ca2acfe6496a028a45399118e01d6c92ee1afe008bcc84db9f438c75abefbddb6051271274fb20302047c435bb500673065023100c4cce8fc17bf9204f104b12c58988fc597ab8eb53834af0ee36940dd42927b7cd3a9aa79ee6b631d8c62af5e15e6fd350230385a01f20bdc12cf47ae1af771c5a72e1af1ca233bf9f4e33fe7b8c8080f63b956afaac8557f2072824217c4fdcea75a0302047c435bb50067306502301f46326cdcf19b7c71876b53b96967cde0706c49ed89425fae2d3b59fd23d418729b5e369baaa706f7306892546aa2aa023100f582a76e16d325d5d310483923ed6ee457213658c33db597f56a6cde20886fb66a30563b16d8e20f92e0dee70df281e20302047c435bb500673065023100a1cd44200752bf54cbb2214660fefeeabc8e4656c1c13be0be7c34fa62d21f8c5aa9ae6919285bd875fc9ea64dee941102303d5212a802118f2502910f87f1005257e854a87174fc2cbe19803dea2754b47a3e634872042cb56be3b1c51f54bee6f50302047c435bb500683066023100b41f143faf15cfc80702b5c069ad3b5d90bde9155234dd03aa5c4e9c2e394ead6f51b3a96f92f80297fa682bcacd5c0d023100b843a3edb804ee39f84ab44f8c9bca2eccba085c6e9a588574c6771bd78b78ae4f709b10c2c99bdd5654083a8eb72aa70302047c435bb500673065023100ddfb93e4ea49a6629172985adb591131082898b8c3f55b8727cd5ae09ae09f7e0aa9a2a0555f107ce53c7d2e5fb029210230098683533f87d3a48897ca7205f293634eebe6c8a2173f527dc1320b690f4397454c9bfa473b8a2ba407b83f27b75b410302047c435bb500673065023100dfaee685b44cf68b67532e8856b24089990f0b3e68d3c8af00e055506a348035b273587115b41501b155815571978d5d02306a7dd6d8c435f50553ee06542dbd69b38e4b6f1a5e038f6b3e1a71e26a5853779e62adb91a9fd9d87b05cd0bbe7dd4130302047c435bb500673065023100f5645c90921ca869442dd56215281a73c2d87be7c0cf4d74f2078d0cf70e053e90edbba9be0579d1850ace209206f8500230410bc6d010a0de01588d10a614aa56dd39a6eb835bc3977c19fef676276aba1522ee0bfe3cda9b3f8af53f0e0336f0bf0302047c435bb5006730650230300df42b934c177b601c6e982bf7d5c1e806f4b26861b9e8357130824e185017854af5935fa1cc150bc7ce79cc8682a1023100920769c7f383e95dbce635359368fccfaa11ff2f1db5a6487dd5b78ef4ec1c528a6405984b3b79aa0c5206e5b9fdf63e0302047c435bb500673065023051138f41d706e1a842418a8e88fb08da17f944ed392c0a87711cc2814039f9af5e0693876541ce5f165bffeb8a94cf87023100f0368e544745cf7a209cda44c2fdfa01ee9c12cf6719dcf6a3a714e8a9e0174bcf8167ff88132e0888d58c9b1c0979630302047c435bb500683066023100f0ba0a0a85a467c153e5eb7ac66b55d183ca4c5a90d8e021d08c0b24c9c79d58b248a86eab7b171b9d4faa2fcfe45c1402310098368c09e3f8876f47572946e62afaf1d6ad97f6d91f3abf2c866c4f197fcc3628112d7f29bca6b3336b5726c25846630302047c435bb500673065023100ffce526fa4ebeca01244c747b96a31dae1f4ca8d1d80b4d58c64880dae7d403e772f9759be0e14948abfe8869673dd0302303f24da9a084e1d4d3098204f38336bf430228aa1003c5c9eeed9d6f1dd78809e48c0cac7090f2259c594fa412061e1a30302047c435bb50067306502300db24341fa36370c229e3ebc5eed757e5fb6563b8fb45296514a9084c3e1139ee91c1f107cf8f64aa20db11338f308ab0231009777a3088f20bbf70aec282314b021498a277e40b20e2e77055c5a2ff4ef8f9fc3df028390d6e911871d529d1b2b2a5c0302047c435bb500673065023028e3bbf2e59ebb9213be0e9b76752810393247ae0555963575b27d127b53cbb4d27d5ca877857c5dde5f8d0f20fbaf36023100b948a80a980f9af69bf16f2002e8a19d1833ed6c2448d6b574663681f4a895e1a79a76646e3493e1acf5ddea0415ba9e0302047c435bb50066306402302fdad32c7c82acc2c33ff3d226d95f3140111f10d1c9384e2cd17d67382ee37aea499eed82668c9480e37f5676116b52023015730af651e4cfaf0f665ef188beb6f3ba78d8ad969631a19465ca72b97b3af5ab8ef9f1fdcc41587f5d664741296c860302047c435bb500673065023100d47fc9028f0f4cd7579119e8f40ec292179a9c24259c778fd40355d96d562620cb9464d1d55555271224071d5efb32eb02304dc8413d2879c5810f3e38be811365549cc3fb41d219720eca1551b32e2f3625390f40a75210268733d4177cba2047cf0302047c435bb500663064023067b87a0549fc11bb3f3ec133cafae12aac22a7f5ff0c6dd206b9a1a62dd5abfc2a4706d40751226fd75f8b5f2d71efe10230381d991e60a8da749238ea143a7fdf3c556a2a629f4e500fd2c612b6fb3e80629d71482d4d424f8cbbc666a3098598420302047c435bb500673065023100e4468900e39a8a64c83b6e9eadaf954ab2082e29f640d9a17624632bb7c2d5de932e618717cd53be90f653e9d600405b0230377419c46cf67c6ecf40b5c6b8d84af6069128250be6c5f4443fef57307c3a84173d41cb5acd20248c3ca1333fdeaf190302047c435bb5006730650231008616ae7a28c55f1159957e14daaefa5ef947d9f3811b4bb16c1bbb1a2b36e7617d874ab6880ce5ce5302f42025fc74a102302519cdee50048c7ceb7ff05888eee8b68386dafa092d840faff1b51a0eb414473e74b979dcf2bf81172eee2532af470e0302047c435bb500663064023079488f9be2f3aae454edb402dd2db209ecc86ca2ff2b0bc781dc709f87e33fedf2298c642421e9c488360586f6d7805902302aa1bf088e830c65ab8ad64eb78edf004d653e0cb90c7229b8d6753fbd634feaf995f2f364cf4404ab31515687198a7d0302047c435bb5006830660231009e3671e001a1a8b092dc04b70c54f45e262bb84431d688588813faafa731791f245d0134a8c7a0776ae05d5c89d5040e023100a7158cf2b68c6a775654276a8ee7dc4ca7847f3dd146026990d215fb621faae76d69f25e80106a1377bc0095886ee2510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302cd70303412c81508815bf0e6dc8b4d01faa6a02e26e2103a3bacbfe294aedcc5a92c2455c31502463d959174c84e8e8023100f93943f021002dd9b86103349ab076548bf47817467b2a7f3a8d77f7429b70840a84ec6696484c4d82b88c6d564e8bcc0302047c435bb500663064023058fb15686da0cb69a100a6986b7122d6064715633b123336f0ed26a13e3b736d16ec7402407dd8b973d29af330a58a1f02306e42e6dcd854d5783d2681100d4bc4dab76ebe2131cece16a074a24c043e3dfe7fb2970b00926866c0f643b06d054d400302047c435bb500663064023040122fdff96b046dbca88b40c718d7c8fb4c961b3ffdeb9ba40cb1048380502d88203482b54d6068b0ed233df479b0fd0230303f34459b0bca01597df4f0558652769c66788a048d5a4d1578dab0d27eb77cf583bd4330c464a432ba3aea26a8a2be0302047c435bb5006830660231009b61d4e14d1bfacd86b0a5347d3ca69275531b3fb903d1c286ee004757fc776630002dae2183aef26f0b31c972d2a7d50231008d84118fe570e4bf586596b5569741b047091017dfb4b407a3671b7a58c2f6ba6b5be98b80edd59fa05132bde2df7ab10302047c435bb500683066023100b7e49013a5e2bc65903babdb8ae341e5a0637f1a347e74aedc10d3989fe7603c6f92d31eaf8a1303ae28ca53ec0218af023100d85548ee8c0d3486d11df41998bf6a2795c93a56cb10e54245bf75869158f322efab025d8e202eccacecae4e3e94f0c60302047c435bb50067306502303956a4e6bf6c16260f4c164e40825c717a48202fe8fbb06606a4bd44bb6101a862f44a714fa1563aee0e44614b5a9fa0023100bec901b99ae555d2e8caa0693f09e85fbd4d42fa39628d4637b35c724b908ecad7e94307b3ee685320d1c72819bb9c950302047c435bb50066306402302cadd7aedb1593e860eb9ef784d416971edf8c8b8b4fe0cdb23eade0eb49d591808f76bc2386fccfa0f96ed87cb264ec023075b9dde95df92caeeba597e4f0ed5e7e6fb4a53a742ff0f48d8cb035a4e311f87bd50d1b0a80c80b761d07a24162342b0302047c435bb500673065023100bbe3a980e7952acfed86da1f6d1a5031da460fb3a445938d08ab24b5df04ad3a699c19f7183b86a18dbcf64f931978e402307af42226e42f12bb6e945112a1f7b9e08a5c869dcf06b2ef29f4bcf27777f82a5c6a9e1d836f055526073e0e83d4e1310302047c435bb500663064023025917a09f3107492ab2c8cf91c0b37fbdf8a659cfcaa7f40fcc5fe2fff74ea7b4a49de49382b6ee7432f27bc2e0194ff023040670efb95eaaeb65722976e16eb8e123a388a2a5b9a84bd5247bcdeb0d1cca383a3d4954860d1a3da8ccb1c49ec42160302047c435bb500673065023100c5784f9470236d78b842c6a93287ebba5fe4bcbd38878c42f7cb84bdfc763fa4ccc9af9b426144987b319030c9539546023065ca13c46bf352dd280246e39821133ad58b89e163bd2cd57380ebeb6c8065e2c8a7543f05c5b830baaa6827ac199b8b0302047c435bb50066306402307294e434a539de663b623e967136299d010d79f73c8df1df0f99b2ac9f5404ce09796372030bb524227c7972886b199002307a103eea7ba233924e8af67536b304db71379fcdfed3364e3fb6b834b29723f84561dbceedba718e9537f139e1fda32c0302047c435bb5006630640230333f43842a01b260e0a789c6d30343469ce2dafca5e56e1818fd097c1904e274c3481520f436f610a6f9d09fc61acc6e0230796307bd80e0687b627f2825a57b3c0629e16c95d2f56969a1ee24b72d83b0456f9aee122ef549bd314ca4c933a7c6870302047c435bb500683066023100e02145aa98f75bc41566b6cbba5ca7e945b0278f238554596eecfb5e7a4ba6d05eb0f674ff21191eadfc32a393617b35023100907609ac5df5c2b73ba2b27587933d563f3f4f60689fd37345b70d7438f104eb16468e5d65a6f6b20dc57d51f171a8e50302047c435bb5006730650231008cc5996157f4b5c53ea68b50333e254b5f52726247cca90ad8aa94661a46a31d0b69d5b770b7fc7b1e9eba10cf5b4f1402300f4400c5aa18351a31847691c2bc645fff66c20490c14fe2a0baa230bc4377ba999f754bba08c743d636ce708ef1bb080302047c435bb500673065023100a66ca930a1531ba28901566c3abeeddced944b5f50d1b46b8c13c07029fb0e8453d2d2e33a8c7666167a99d6e68d05ee023066b1b653b7ea7c7d509bc2b9901ce866f744a48ae8f4f1a38e13c33066c3e3793db22b5719b74b59c855a040d7d6dc490302047c435bb50067306502302c89a396f5a7c5780f80ba7f269136804f47ea2de46cc5e13c8a6fa1e82f477559301243320269947f7498e7bbfdfdb6023100d6822f88195a3c3e0ef5b296270b6feab7e8546c0110b1353170caa44d8507aae39625d8c49eb9c1bf3ed71ba0a40bd50302047c435bb500663064023029fa8fd95df0d1b22865c4c152196c0fa6c8ad1edd07b8f55147f06872208b8d203d85540dcb08e772d99213702e87de023016198b697038792e78966a082569e072a5e99e32c62ec7dfc5d17d787c21becdbe0009cf296b1b62235cc1a598df333c0302047c435bb500673065023100be66e19873ccffaf3b4f9c31799728e84cd3181e8c1e15e6013275ba68c0f0de0cf85484ff04bb96de9f84b47a8cabdd0230053a78231a5cc60a4bd7f19fc41bd86d52c2746817ccd93d4476eee272f17e2461b4f3b21d6203283cff76091d87d1550302047c435bb50067306502303fc2c8db86ed0b5302dafaca895b0ebd3ceebf24771af9a559e9499e33108f5fd82bc1c6c302580ec36a93537a09084d023100daebac89be767976c7432d1bfc2b2abeb3c5698377c476062fdda2804c1a5297f0e50ca71bba4320c3d0f5a9321d17690302047c435bb50067306502310097dccda7da7f418e6f59819de3a8c115f2a7de897bc8052e3ae8b449b613ae264dfb62ccad09f882c8f32f9d4c38651702306f94b9d891e4e601f9238ef3f87c5a792a7bca274eef2cbdcc37d4db714d934601b022d30f43146561bf9f341937d7cb0302047c435bb5006730650231008ff6fcd23036851945f3bec14ab6744eb951f66a868dc267b394d9f13a7ef671c6652d1c3650089495f3e8fcb2adae7902300c48ada98b1758ed96efc1b73738036499a7e33ec0f0bf3d606720aba2f146a9270551cd8b9d31fea67bd178be4203280302047c435bb50066306402304de65fd93f806aa4085b05e593c197928d8205d9952cd31456068136741a91dbaa5acba8529d111bf898ded8830e715c02302b450a90d78733862e42ef31b284e8a6df759089ad5acbcdd9ca39d5233b7043e0d9268c4369deb4581eb2da1dcd5d990302047c435bb500683066023100c8360732cb332a39b357a6cd975a471859d69d7c78eb166bad6e5991ed06ffb258a368bfafb7d9d51d00d6b7df09ab10023100fe7d0effc1336202dd72afe95ae799a2cfd652756c1efdaa0ff2e2a8e4627a398a1325b7ced5c3598f366a50a617753a0302047c435bb500683066023100c131186060dd11a1ef4ea215cfaef01345645cc79ed124e1e00e71fe18440f29e094788aff397ce8897da7359ecd829e023100d20a232ee99618cf7301dc1cde185718a53d0cea96367ce5278234da74dd1d19192244e7827680379f17779f6fc27efc0302047c435bb500673065023100c79da4f29b2cb5a2101135e156144d3a8e6070ddaff32f277030dbd1dcbb4fd0abf148f8023f5a29806d02dc9c90691802304f746a53ee9d824949d0a4b67c0c7b66a9e9567b83e9fec17112174bf852388d9aa3ab16a76a8c4246e8d6c09fc130f50302047c435bb500683066023100e2804c4152a9952c3a457aadf02b34ad83a8535005543ff79c4e5563847d6a32d0676f06b886cbb140925ce4aeddcdff023100d8fb095f481a50033d8a4d421ef166756b265fabc4dec0aac75dedb3d92f64c2cac7e24d5aa621b1bc6d58f5f210a4ee0302047c435bb500673065023100ff24601d643cb7fd446a0e649418b6d11fbf01ea06e159c72b835c012957566d2cc90300b584f53004222b9c00884e2d02305f3628d086f1335f6c8bb23d6cd0bb793df3805db3ca5f797f11a82654e93707b1283ba54e1a02500c9a878711a331790302047c435bb50066306402306dd4fe189647ed11587b9c99684736510760270254e60151f407ccef0ce516c725dd3ee7b56e4b76463362cfad43986102300f6a79dc9551511105e0b30250c48570beef754c980172b1c3c4538270d29cd3f48defdf18b494407137f13d6ab0122a0302047c435bb500683066023100dbdbdb01d0b4eeb5af905bea90cbf120cd2edcecee47b7228b5818f9a7afe7ec5052c010900cd4c67cf13fe19e9ea8db023100c8cf295f3333cd1ced1c954e7d4e1bddf41c1205cfa8fe52938714c29964ca1d40424a6f64529e336198ad34fe8a57ea0302047c435bb50066306402305d541ae6b03933f4cfc44b156182ecf07c5c8b49e5d830ba0390705a7ed4260bb292ccc8b8cb726e3c01578ad4e952eb0230027f8c4f1fc3ab828703a34f56eff2a8ca4feae54d80686b201c3938e4db728d362a89177ba5f69a23c30a61ca89e7950302047c435bb500673065023100ce301c381b474fe5be4e0a91aa55682a356c3931ba184c4cd632d450d5ce28ad8a415c8f74d217232e0c1bccf5cfe9d8023050b30f63e1eb0a874fed065b13beff32149f40db7ac056c5c86261f8a5c4fc76397b80ff4bc21d4bf4aab725f97ebdc80302047c435bb50067306502301c243a2fc51708d1cece93c2fbf200deef814ad6057528f9fb9813433b49d29480c9a74aadc93bb688284da63bb4c1d8023100da017a43ea6dc636d17f97c32c195f18ab7d7f387984218cb1bf5b150f3eb5ebb7419bbd40c4d22d1903d7a2f63b1ff60302047c435bb500673065023100d7de24ffd64a1621aae3b7bea5934189e9741e2706b12535cff40d4e208f1e5f9abcac817dea83c73a4d9d1603bb978402304a81c8363d9e476e9b54841d14f529189ac7855c99ac9cb99c461cdbe42141c9c2010e052a789647751a8da8f883297b0302047c435bb500673065023100b9895b14f126b56b1c17e048dd9ce4d1cba97d9b966fc13da1eaae05aaf32306f5322ccfc2b609eb5baa581f48faece4023005743f887ea258644a8769862f027e76c5ebcf1fc1c4fcb824170e66ebab42629669bd2e1f82a8ef6149e3985879ded70302047c435bb50068306602310088d6926250b5d4df7b804f7c1d92dcaa9cf7479a32f031e2157737375b6348af918bb8c1225ee1796a409b91b32df6a4023100877df3ece7868f14ca0b9491b410af7597bc6dd711d04bb9e02ae0db28b3a02d5a9143b1e437ef236d1780b0a9f926a20302047c435bb500683066023100e3c813ae80916c586bc66900fa7917a46f85c5e16903c56573b4a839754234e4306bb3f819ed6c0748c4de68fbb42132023100ee3ae16f2dbd03c9015a9d8a9caad09887d2320b07692d857f693e5fd8bad157854f5ddb89be0d19a93b3a3bb4bad2ca0302047c435bb500673065023100e9925cb2361b719f2fec17091d58ce54646b8d853d77943250bfaf09eee716c6160c9acc0cc4dfd38510ac776462b0900230682aa0a6f2785b93e773c91b9fea75ea0f57e5f793c4dd4f23614beff1cf6a7ae0b208378270ca348331d8b33c03e24c0302047c435bb50066306402303dbf66b89b73f2d63a2a81d2126df1b97f292e5ba8c63414838165de3415649a7553d645c3470c730218ec348d72c5590230745705539a61cb1fc6c6c265530f6af42d40b3c5d8f0fa7ef7e76f34d5fa35b2a43041665c601ced677961b9b7ef3fde0302047c435bb5006630640230481354963330ff9126c85452141b263f41e2533db67e48bba7b40193733b18c7af028723e27d872a4dc49a7af64570ac0230384ce721800a95dd39d0111d4561b68aec075d842ca7e4d7fe720dc411b44a9bdf694dd9b82637b6967948da2e3a142c0302047c435bb500683066023100d9ad4358e2807c94a2917ce9adb3323e4af2d0166c3d327dfb70a07640bf9bf9d35a82a080c6e5679729f5f14570107c023100f0a5d7f1e290fec2f63716e03fb5cef7830244e0c241d4244b31a808b1c59ed2f5ba49de1dbc037612bc66821037346a0302047c435bb50066306402304b5c2c2389bf28a366d088bedb582ceb32dc6e4d163f6e8910b0ae9a6d4b9bf46c74fa8a19d13ead5bdbb1aad3963f80023046fd33af9bd77495a8060461278399d25d574149828eeba8e51d35a9a9d91a4ac94c58d58f24cec24529eb20e6345a860302047c435bb500683066023100ea2b3ef27bd6d7391c3f1f9bc792758042c4eb39ef75fd791db18b2722b2823e63e9d655a01222e9d0b91e89ffeda6fc023100b73dac139c194ec5c6336eb07cc87770855a3f03479472675639b5e18bcebfee9360e798a64dce81939a1d9496546d9f0302047c435bb50068306602310093b809ac04067d9bcbd680c51f5c113eb61de956e0e7cb52685fdbd8bb266e9fe08c2a00303617276008ec829ae4a451023100ff49fd5c188d382177d31a8a683a4c24b7c9655cc6ac2a5c057ff90281e931f31a50915b4e94f9b141761ea50862b9080302047c435bb500663064023049a7dddd91fbf2139a8591b2d29db18a17541f65df5b4b3e35d9f2fd5cea9d785ac0196df59eae180347a19d5f6a79eb02304882629ab95e5f60ecf08a039e177a2b12977afe8e264c6815db3022503b556fd6bcc5655dba4c19c22ec815396f16d70302047c435bb5006730650231009b0fe95f66ff531d5f1a3c95718008016f61a7a9b8860c349a38a335ae6ab583c8790c11397942ab8279b5b978e67cf102302b9ce223248a0dbb8c9236a4bb543f02c68533abb567c7334bb3029e03aa1a15fe8e562827783f6f4088e77bf6d4bde60302047c435bb5006630640230019e721c440893a5d432dbc9a5fac9ed44bff6ba023d8c6e0a4f315ebd334ea2900d7dde7400febb316d9c91ea7388ee023021c286aa587e189f8b779083a7053ac2fe3f7e99a0e30441826622fd95ff002c3e4b7f808ba81ea11c8005722ac456130302047c435bb5006830660231008e6be1939ba5a18b2c35478e70a98435ede58a8efdf4c5906698ab44acf9dbf2e3ee91904555b8b074dcc909332d5e1d023100a9bc4907829bf350f27a98297b393f91351496cc8490392f1e39af4937ee098a84565796fdab00197bb7313c43f3083e0302047c435bb5006730650230387870743799d19ea236ce48178ec63853e67ceab1382f977b2cef56108672117faa14cbf7cba0ff9a445c1b96ef186f0231008e223fa72f62439af7432ab90670b036fc042d1bc9b8e55b9c63005dd6ff1da17fc36423f89da96cde3c129cdfe13c180302047c435bb500673065023100ced22732ae1538aba58dfa61dd6025fd020ecd0898bc1a7256d58bb1d71b0d943a1027ce9d59e311930c317e2b749b9f023037520ea2918bf7bc004c831fbddd9dfad5201b572527b9e2fe98ef81ee85fbfd68708d21a4b4634f24af6d235f1994ad0302047c435bb500683066023100bf9fa53317a3f4929c57a13fd5489b0dac06f72e85abf8280ec56615b541113514407da5941f6fd34719ba744507a664023100eec043b5209eda3b0097be698bab330feba8799d3cdfb20f6272c0aadbdafbfa4a3ce7bcf152436a76fd34b549a5213f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023064d6bb75d0648d761397ac08877735ba17447fd81f4f9fd08113bf09ddcf64c0080aaecd1b0763d722953a875ff3aa880230433c941fcf4e3399ccd772f21394e7620c172e93d938781a8f5df52b44f72fdb1638601b9446b0bedb70f95fa2171a6f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008a559ca26e08c8e72b9da0d44f976a51c7f3cf38ef96af755618f1eab5712d815ce453bcda92550d2a42a970660e88fc02306d8f8ca75b4272667843c7d00de270bde5451cdbc5080c669b22b5bfd012bcb2543880abe5272adaa28815385d637f580302047c435bb500673065023100db64dc3d692f170ef935e1b61498ccc0ea4fe6b6d2c744fe36a7d8df62a8088d0259fdfb047fe71ae98b00b96093083d0230507850d210ad5b24de6e30ffbe2689c7be3450dbc435ef49ab5c655551c10d2d5b4225983b8843f3a7b24478bf1a02110302047c435bb50067306502310098397b43cc9cbda16f7fed1e20bd4d9641b156f2ff68c3c6ce8616e92f9cd52c41981627d06c9b16ae0f3cee39a440f702305ae0e3e75c3bfda001952233eabf91ad69df5058a0cda4b7fb36739ccfc25d81ae5f9f196f1d8279598b2e5f846772fb0302047c435bb500683066023100a50f2f61de3788b2c0b05cc121c5bec69b748e79a44a748b75d9903f65517d98b33048567bf06a6cfe62b56729a3ce37023100d363ba01ec924faaccabd738946bec673698b8a2e5ae708f4b07ad09a204031bb0fdf51c3c6fb11c9960dc97d75a36090302047c435bb5006730650230145a21b7e8fe856595f565c70bede9d90a064849ff968d97a55a247a4eea20c10f49b452227e380ba435085be6cdedaa023100aea97c99e271a1974ee5725959b1354a57e0d6844cd2570a17727d196bfb88e37e03f6d103a6e7ad096419bb73282f9a0302047c435bb5006730650230625e51ddfc6ea52c2427ab35c8656debb2fb13be8e00ff08c8cc13bc3506bcbd8980e58e08392ac23d10f370c1b1d9c1023100cb1290d234a28c3d46716841bcdd2a5ba152493c1b38e996866cf32ac24eb9d7289e33a836eef7f9e111a7b27ac013cf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d6abe2f1e7048478ab6b31b99ef4fa923160197fed5f20dfa558e308e1df640ef15e0700db8cae5649817462b5eed8aa023100ab73384d25408032811fd870479dd73984269eb928548136b90877a7315785d5d7975184042dff4cf03fd090f9ed00de0302047c435bb500683066023100cf52d0e79c4d7748471ab2952c86df26f49797197d16c7add68c0d9214ae2d45c71924c2930640e871bdea5a27e2c668023100e0100f5b9e970d828a0ab355676ac0f0ea47f4e8091542046a37653e2d82dd991b0b95c5de17ee6d5b8c4aa56f9790810302047c435bb50067306502304e7af2ea1066816aa4da92b46fc0df92565d4c6fd9bc11c8626e57fe2fcc0a3bb111cfc96ec3f64ee7d0f0c1eec4e7e702310096f9500fb93d5ed893f06fac61c3aa8fdbc678bed81f7e28a54281c68e695a9fecf128761638a136344979704af38bea0302047c435bb50067306502301de75ddf58640444e6f6e1b03f69cae38c9a52fbd23cded1d24ad4143ce3add47b02702e1c292b7ce5cfc9c5059182db023100d78c290d8055fee1be9b533009238268f4369abd1adb1835146f8a679181a3173d2ea997ce4675f892c46a751c7f31810302047c435bb5006730650231008ea1d3cee2e88e47634cabcfa0beeeab8958ea00eadc83a7bff7e8a49efd197c80f48b987c87f92e87c2570ff39a58ac023039666ddb4c7ab914a53dbc9f069492eb817049503f870e9e80e525452b128fd7470ffcd25f5bf90d08e67e25fe8215070302047c435bb500663064023011175727fbb463cb79af8508e306150f489baf0e2db5b6f1ece99e5f5dc4e78ac308af8e125a7f80fcb5ea5c613b1a620230081c8fea73c42619f1d195cf2356df17319430366adbda61248fa166bb2796712022fc76787eb8c26371e08b9aa898a60302047c435bb50067306502305cff032f9f695a60cef1ba3146c758b976e31927e5d555e3706439d27cb37b3652276d9dfef89dd3fbd2b61d1554b812023100ea11d8bad65b5e0455c40cdec4484bdba78967d0617f94622722a0f30b084b178eb29bfad6ebbc20481e9d252df0987e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300edb38d1220b17c828425fc55ca35895aec6014da247ff65d3048e5f7078781b6b0cd74dcb01d3aa26be30e5bf11d2ff02310091ddd5a3a64e84a55ca25c0646063386e3f88c79e514e0e6369d59225d86947dbe9eaa49ccba12bb94cd34233ad356f00302047c435bb500663064023019056c3c01df0c8dc7ae9f50cb52a1ada7e84c30fe006c044f53adf5a4ec5172b1d334ea2a02a1b54417a1780aa0b72a02306f9a8114513a7ade4097b75b769f552f3a4a8739b701d9908c641c170c542f85de0a2b7dcbadbce5e241eb4fb3dbf36c0302047c435bb500673065023018d24d923f6600982a8b1b6894ec8dd8d32b7ac18fd3c69a35bb7b92acbf88817ad0923f4ac782b65f8cbf447901dd180231009cc1de84151022344c1723aa800354f5db68f6ee3458a899f96afc9a3b34a032f130113344aa63ae0e96c5caa24619430302047c435bb5006730650231008c458002f446d85f06c84edeaff4d7d041c49f1ded0fa8b0081edeed538982c72cd5fd9eb5fa34d5ed13db8062f2751f023029db8b565b6ccf71d6da42337be48e7406b5db7f626be26b1b4c20da0e6ffd4cda3e7eb6ebd97e1f5def18c7c6680bf30302047c435bb50066306402301e771bedbccb46f200237e7d8b029ba518846e8e3bcbb5b449e3231e73416ff4df6b0930afabfba7122d29ee9bb98d5a02302475ca5e637150724f472d63271f444ab1d3ade0c38460e7b052106a6eb7b4d4f0c6b2078fb4c4cd17429e59a221c2c30302047c435bb500673065023100dfb46d32cfcc06803ccb3aa11abae4d07861b7b58f292b77ad63024bb0efd1b4edd64d7b40b9f33c70d119254b38296502305c8dd48e5a9ae5ef139cc4bb36b6b813e88a5a2b461e24e4373ad7ee5c4c4f3b5d9dd00bdc39a258da08fb89bbcf02a80302047c435bb500683066023100a4215f34d0cb0271ee157bb4798eb29346a17c458ac8d0a303f5538cfc591ea456119c54005cf6c98433795f7d09bafd023100c11af96a095755704b66337a7739d42db64a36809e5300f3ce92d2ddbaf807c9a00b4673c203fda6645b13e2512cfd9d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cd9276f1514e1d0d53906e06e403459c6363a168e7b4489cb91b3b946dfb86a5f7596c31d69992d4eaf1fb081a0b5f290231009b1b5e4297dc193f0bba27b96bac6557c875f731efb7f7493c664153d256f00a977ff5a89abc931ba359be171dd315df0302047c435bb500673065023029b04a1fe98c91324f0a9e312adbd4c0aae9248dad9c706f1589fab1b6a17ad74d0520c597320bb7f1eb2ed012cb8383023100aabcef17c5c67abb364c27f084ce277257dda08b8a905714af04ba196102893069760e34c0fbb2daf18cb618c9d666800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023012ececeeb03348ccc0ca4c70870e289db6eebbf231ef8d5e13c191cb3cc791137823bfc723902a6e4a13c0d1e0ca77da023100ba65111ee227ae320960c2a865dd966608379ab206735dc2703fe118bb9bed2525b2c5538c0cb8efa2eb46f7a25443300302047c435bb500683066023100fbe2f1d7d59ca91077748c0b60abd6445590a333c23df2af32d981aeafc4120b1c783c505e50a6fb42581f0a076dd2a4023100a5c0f856a261705e7c66dc7ec9dda189e211dd6de807af269d34e0bfae78cc30cc8c14dcba35c933bcad9e90b6dfbb120302047c435bb500673065023100a1acd35f2403a08aa11c607afce47867afd80b98550c2abf4dfd8e366c570b214cdae49e07f658ff67aba632ff6e031602303d49b5fcc03953d1d1e7f5efe456e0f4711b708a0e85301869ed1bc01c38761530cefb03fe5d0eabc822a47291197fb00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303f9ef88cc70de857ec61602c590a5c8777e0f4af3718db70fbf7fe9aae9a11f0665e3fa5b4f7a2a0f32ce3abf15f5ccc02306db31738ee0c9989d8ca899f2f2af0d972df4f644d2d86e596132d8bfd05039da4d4c4cb8532161b44fb035288b2213a0302047c435bb500673065023026d13efb5ecfd3ba0c02968ce4966a60024dbed2a072c94830417f5a4a53ca652489e2820c9cf4f3306d0b7cc67322c0023100cee211ddbdac66e2259c75d73df3ed04017acfd9fb662b00139e519575427bcee088528016e5e7b3ec24f700dc7697110302047c435bb50067306502306b15f348babf9bb72e56839d1cdf89e313b74f882582800e1e7c720f70766a5b133f6046b0ead26d583249e03289511e023100f0d0f5a2e181d689d40c595397660d5c360d925f4795ee1dcb31aae4fc9af31188338441373ffc566d96712df68997790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300e41eff6d4c5721cdfe524b981a4365fde86d987aabd2addb0df1b9819a3216af2bd841ec2c02ac4b8ce38c927b243d002305132f9b796b2bdd80a810a54569902c144ff611edf56398a94f3983f20471fe91e20693e77bcb44692e58b67b02897bb0302047c435bb500673065023100bbab94db8cd3077ce3963b28a7b248fc792bfde00badbe4e99a7ed87b4afa2856cd941a3487e1e90d06963165641eec102304f8ab3cc857cd93ab60e0ed9352585e5957bb0a48c8331a27a8187631d16662e120d1a7048c9426054609fb0887e73910302047c435bb50066306402305ee5bc6dc8ac65c1da726e408888ac6b9d87b7ea07be040c008bfd0ba2071505495c52868ba2d3ea712423bf53658a6d0230526d8c6efe05371aa5b3e34bee2e6f85d6d1a9236d7314f143168578d61a5a17749311c71f283043d58061f32b75a27c0302047c435bb500673065023100bb04077b18b264a6053ba01c58ec51f806225de6328e5473b5f71f418ea7e73fa2181ec3514a010be2182f2666a8023902306dece94aef03a1e31235f4721cd696bf22cce6da1b7bd55c5008bbac93f8ccb9194b04aabfcbbc7e907f2ebcd2d101e20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e7bb19da58dd48b4f79e128064e4aabb7c16cdb1fd549af795c08bd93cda5ba32e78061955cbbc54c06c0f3204953c9f023100c0a694bec792dac4031ec2e5e12b80fe8733515327c284d667e1ef2e10aa4275c1ac34c938d3b8ccfb2897a4f71c1e920302047c435bb5006730650230540264c6d30928f1daf6b3598470d2d5f14c140a9b2626be2623a82a1973eb068b99827c6edb4b3748b06401abcd284e023100b6d0425727015d748cbc660e01bc4cb0cda7a682f6a8341382adf44d9c2290554c650bd7bdda7a1c06d9d3ab009a632e0302047c435bb500663064023027f65f6f558c93a30a8c6cbc0c549543047db04290d31b5674360d5bab8b79d6bd83b6693787373a57c98fde08c91dbe02305c22bc4b505df74401e4a35ee49fcc2171c31c6305a852f3155ae33564bdd3167a8eb6cb5b1f53178692def36a05e14c0302047c435bb5006630640230667244293b64a4135f35763125dca3b2dfa710405dba0ffa7bb1debaeee923d37eb0548ccc3d79fe034524f9c988b36c023077fa59cb463e29acfc2df71c6d8db4aa9d893448ebfe48f5413610b0f67bd54350db4c7f7c08189d3b6914bdd3c071930302047c435bb500673065023100981ef8717c4c35961c37ebe705ce5d02e1ffd622c2dd306bbe97d785981c5a68e5d0ce13d18cacf6bc3ea5ec3cc52600023000f3c4b8327a3912fa752fda9639bafaa9f999396b6f7ca74235da6e2ee4f96ced5e42619570a2692a7c15acd80e08770302047c435bb500673065023100cf8a1e1fd44c8cc3edb8525e3ee53264e7ae8f4bdc87de17d479d3fcd33ca8b97afa20febee8fe716bd393abfcfa4c55023059548de62ab31808ea69126de083bd7a3efb527808937e03f216bbe7efcda54b1268e5672ef9dda0e2beb4264d7f1b980302047c435bb50067306502301cde7b14677bd825083aceb05668c03946d953c6e3d85e78267caf4332cbf91d76da45a0d62b5c06de06a7ca4704da92023100f62838af589dd6aae23518af5c87794e9ab034e34a9c3de63067202620fa231f114740a8f238640390aec1c11eea7f400302047c435bb500683066023100ba73deab65101a6ce60501a5fc434d7b9c5c0c15e6fed324d467577f867e8c49f973bb23e3a7b8d75f0adeb179e113ff02310098ecda7fdeb30422f6dfd128bcac7ba79720595a4092ab8809a9b709832ee62d08a608e27c0a5356ffd9dd6dd3eec2870302047c435bb500673065023100ebd062e7ed237fde61f0f22cbbbb5fa692b27d1918ccd4a12ecaaffa722f0a6fdac8439e9f4e436faaafab78ab40ba56023033d7fae24dbb7369069e467474fc5c5271feb28932067792e054f895055d4a902df9c262c65236eb9d21f95bf0eb22270302047c435bb500673065023025580ce49e079560d73ccf0f32a6c5239d7279800ddfd2341a3735c8f972adaaee6dc489b3aa3215bcc5d10a0f51cddd023100f338fdf5a646a3709d0096484a2e610ab021d2a4b2befcbcbdea843ad05b8c0f23695a6e2e3e97722e5e297daba6f4520302047c435bb50066306402300351da8dccd55eb304cce55480c8fbd94c207e360605ff848fdc1db57f067640f577e30fdb865ae70733bdf90336fcfe02306283a23138b2f27ea2a48949745989bbd1d219b3d03612ddf3007a40f274d8e65a4259022bcd3a380638e03daed38a580302047c435bb50067306502306bb8f2bbfc081106484489f31326fa358762a210e351531231f7d81217732aeb2199e52796ee5737be13184f0ede1302023100b1525a4f0eb8784915e84f1b33924fca0cdbae2437f3399ccee807febf46fc4ab8f53e46706ef8303957f2c34aa1f1730302047c435bb500673065023100cbfb40442e65cae2b1466225dd823e26903ea561b91353131299f476a54915200b0e81110506c918a010a0f5c1e31f7a02304b4d429c51699757848075074497783c256e8bb0d61ffc792771e26739d1f5700a19f050d9a1b37d0bd48e5bbf96e33a0302047c435bb50067306502301e0f63daff5ff9c4e027d95fcdf8b2147c5c0a807989e0e402abe462a092b46ce763879305dd36a83d8e6358ff9195fb023100d04fef6564d5ff665b78181f5aefa3842d2089bba05d18db0191dbf2c0a9967df0d6a087e64a7560e51da27eb21052ce0302047c435bb5006730650230131f4005ded9db467b248b175185813eed79b06308e2b8bac990e2e8b508eeea7d1cd1faeee06993e5cb081cfde1a32e023100b294c63eb2141bdfc584beadd93471bbfa7a0fc99102a9b2aafc29fd7106734bd35801036e13d303c2bd3ece4abcb2fb0302047c435bb50068306602310099e0030d3bf8dc73f48e52d34c6d0f0c07a6950e01e42613a4c9b5097996503fbd27fe7bc1cbffe6ce605cd5e675a7e4023100cb51c208a423601c6ce2ecde73d8c5b596a2fa6c0066b72faf4993c8255048133d23d5d85872b3cd8517d438ca10f30f0302047c435bb500663064023015033dddefe87986de12caa3c4d6150d00e5f80f9172e6b463e6fcb9175d71bb8d5560d84ac8c2d82fa7be678958190302304e93732e6e89008adef182f053bff087ada9cbce0bd67cdee931ce3bdedb5d56bd48354f3ca5f5dbae8e22a50a828c7d0302047c435bb500663064023057850d51f41d89344d2df67f17757c0b8bce3c3409433687da828ddaec3df3b3c940f61904aa049dc3c767e542783ae5023024a4383d492f101dbadb20c6130b075c3c28be45d0e585ab4de9a1445def65dcf939f41fe5656fee1b8761be843a27d90302047c435bb500663064023079c779e8b0a043f56c651a3796863fe0058bec2bbe5ae3d8f09a8eafd973489a4298f3ad33ce75ce519aca1eb912fc6a0230275d4c7855b8a25b099ab5f05659a99291a899252e801553d6bfd3803b19fe8dd51871ef32ea584afa81973b98e717c80302047c435bb5006630640230742f2097af112762cafefd4517d1050f4d53dfa868debcaa0ca1dcdf0418fa147b019f78f7c3bab64260492a284176d2023033f9cba7d11eb1d793a2cf3d6dc0f84394ad5223717f8faea973909c78fb5fd9235714960e455b301992f4528694a3880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306698859418a1a6ba5cab9ab0af9a8e9bd7a7d5c6775e5ddd9b979e93e221c183075131589af2f0f6b5d70be37f184295023100c64b22256b5cc84ec7bcbba336ef9a434c8809b5d161f5ac721e11426b00b368c73ce7b2d6c1da61c7ec12341e1f334a0302047c435bb500683066023100d36ad7fe4457ff807bf900954f8bd124b992df5db28f01f3dc170b33a2fdc49e515d4f6c8010a9cb25860ea575bd4b65023100a05f861bddb084868b6a75b94ff3b81227870e6d34df761b0329953a4a5bd883ce3295ff25b1d4cdbe48384fa088be230302047c435bb500683066023100f9251c722e2bac31c6414226fb1bb220acd92edab2d773ce60c0a67bfb90597d9b0f0ee18cdf6c9e609ffde0fe4b199d023100e41b5f0d560f27a7b4456caaea8de23e9462d0e45508cc2b8b7e00b3a67a225aa9bb8e44475a5b50475781bb3a6dd6e70302047c435bb5006630640230735fb83ac6bd29c6aa6f3f110027e1e6b52384f33d6d125de36a4ec69d889d787b2baefe36ce72689e96ea9da3d22efa0230243866deaf76f139aba43af75af932eb7ed5650b5a929d9c0bec51a0e31f62c56f6482cd3b2055579a5ee3991351960e0302047c435bb500673065023100c1e301d895b0a83654e47b99992220df5297be07a680b4b615032b25e6883371fb6a33fbcc13e4acca3d95d216f5d56d023032c20cdd7ee36e0450b9587c05e1cb73c098a0f05af74e66d9bd24f96301653ae85e61519e93dabb69ddd41cda68d6700302047c435bb500673065023100eaeddca2c838d27bf33987aaae1acdaa067f00798aa5bed1cfe0299286287b42c62233983a255ec79ec78f25f8c24a48023050505755208977cdd8c3b1069b1c3d20d68b088c774ec229ffc943606958a121008b3f91b0e56109c88b7b5de553031f0302047c435bb500683066023100987e8cea3dc6b8b4af21795ded45bb33c40aa3abd626da6501759499f3f2ec7f4944ed5959cc9358d717a1fcc03e918c023100883caef819b5df062e3da869a7f77a8c88c7069ebe958f2a4c9b1bb68553aa675f6a97b17c99ebf07e5be23bb818cd5f0302047c435bb500673065023076ded5e8f0e0a021c9ea918299896cbff6cbff80c264ccdac534e9d534d1e984436947f3f21c4745bcbf665fdc03943b023100b46f28735e5a4f2f4fa93b238fed0b94b055e7752d2e0583e46a527b94d95beb17b1546ee31262c24f66034adc7cad8e0302047c435bb500663064023030e5c35fb72861befd4696a22db859026ff4a196230ab10ad20c3ba5200e338ecf50c54fd9fd5236c9c88ac8d1a7bec0023015bcc8a14d1ca3942ce0008ddda1eff7c820ab9bf368f973d1477b3f30d149ab5edfff57ff342dec1f4d98b4f67aeb6e0302047c435bb500683066023100f960aab422e60e15bea68250c4f0915f3732bfad396d12a8dd897158c7de4ef80935125c05b17861191c9b0e56e53f54023100b9146b2645b4233735627bc68f151140158974b1857b0eb34abdb4f54b3b6f6bb05b22a9885c77a7300c07d3a1e00e180302047c435bb500683066023100c0065626c7fe322468f7553987dfca80c541b4280e7cd6ece0cf4499fc5486f7eac12ad3cce72f5b714843d80688deaf023100dfd2895353c7f21238eafdf1366678823211a701de8500edcc63ac0885de9a333bf1975fb5c4944b434a997126c375d80302047c435bb500683066023100998130eedddf7b0de194242d7c9befa5a98e439b2f1facf652ea67572c00a16cb50d49c91054b72a91a0d174aee6cfb7023100989d8d9254a4919628c3a0fa21611611e54b2eb0f795588c5edd6318612e79365056a1353b57305e2f60c9cae3c423930302047c435bb500683066023100b362005cfbc7763188cc15a2f28e5213858b56d350d59e57c7bc9c268c04fa25404b8ba1e74cc8b28e305e2fffd1c2f2023100a6e3e12c73e7599c621119967d612d591c779f6daa1529eea81af0b95bc3f8179420b8d04cb726e322745454621b0d0e0302047c435bb500673065023100dfebc7b5ba0c808f043ea49ed9ae4e8dd8a7e3c31093d020eafd6b844af976ed59a1768df1cc34be753d292dde4f5ba70230368f5fe157f718957754e71fd193cf7ed3053281a6b36e0a7f88a4cf6969c93df8b99886f94c4c0883b9d34edf17fc7e0302047c435bb50066306402301140c93eca8c309bdb8b544b3d2ba2e8fadbe86a0acc49986f313bb21b0e1befe31ffbcdf2505c9a9858e593c3b8cad8023012f05ede4b0df8041de6581fca00672fa172f34c3c85db84898ed7bd5e1cca61c31d175fde3a54b3c8b883175a12f0350302047c435bb500683066023100eb556cf0be1bd45939ec8ac6037826c44eace28f9152a5992b34fc882ab553393de4f96a57132631eaf41db1f4e6c11a023100a348dd3faf4b14e66575d81c1444356febd90e8f4619769a5c5b829978188608de9426b8089dc7d4ae6091d8804214aa0302047c435bb50066306402303bfada7b2c3253bdb93c5c663b473d8f7880b17ad1868e6c6539dc5f31416ef09c2291747efc023fc690c190e4829ad0023062011bfe78b9af26ae90cfba33973560789955676e976959cf0da70a114f4f4043a6f18453d7900b0f4d7472d4fbf3490302047c435bb500663064023075420c790596178624e053f9bbe3b86eb04af38996ef5c98feca45dcd9e3491e98bba6396378438870f65f7ec7909f24023000b77a7cfbc93ebb499dbf60130fde30dc9408edc4d975c23659a43eb434a0adfb03cdc597c26c9b78e4a27f26421c100302047c435bb500673065023100fb18f9a7ad7ba4e9d48b02603757952cbea8d173c7a1596a88121c8225a66697de71653d887810f0784fa39bf4ccded30230669aa32d8d06f84121c81382f09eb6ac2f390f869a5a105e5c15a9e7a89c4b60212d854b348e52bdd8c8f668990a35530302047c435bb500663064023016eeb117bfa3e7c2d22db437de227ed03afbe402a117fe361402f18bc515aa82e3bb7efcd895d1e514ea5c01d12e0a4e02303f4b45a3962b78932db3bd26c707f88c39a80c9ebc62710c44be4845174d2fed4840e40216572bec08b3d6e58828697e0302047c435bb500683066023100f5de05a3c16578b5971af4077bdd5cf5a3cd7de4e554f13b8872e8c026945ea52fb43413a257244e919cc7131fa86a61023100b165e3ec62e1de97d6bd90e85b995d681049c9d9a5b41e8c66f55b5f80a5b54f146ce06fd002529b668bda25a59e5bbd0302047c435bb50066306402307a67e0cfe9c89067d63f939f92814aa90f74d9580d81f98ea826a9f33804029f52fd6e1cc1168f36924bb2b8fe702af502305dfdf3a78209335af8132479784017a2b73ffeba0f74ea23c2833caa9ad8fabee254c17c30322962a61bf08f5e1d773e0302047c435bb50066306402303ab1e83bbc465c0e1161c582dba8474354a725b1f35756b1de8696d1b50a6f052c54a420f14e8d0cd6646d4d05e57bee02304a9cf321f84857c2a1815c0358579bc0f30893dd618f1478bfb1286e3b95628984745d9c2640ac9c509dc023f8222ee00302047c435bb500673065023100a1bd30d3550a10cbceef8444bff3dceb66e721e78603ada2235acb497ace4b8b952edcd8bfd153e75636d5dec0cb0b1202305d14ccd367ba089c8acdb29292de1aa4f2105ffbfc3cad95539544b07da0b6fea82011cdb857d70bbb42fdf94cee2cca0302047c435bb500673065023033fc1423c4344bc0c760a5f77c9a0c7cf88955b5e9a50b62e7229d5d76c39ee9a8a4ef2043489440f6e70455946a81ff023100be4d48e11cadad73f7e5d6d1068907f6ab436b90807c879ca924c147eb41330819b5b495be0455c324a2ae2b9cc4eda30302047c435bb500683066023100973a47bd9596cd4793a99e1aacd84815f1b98ac1f03a7f6372325121a2747c433ddffabfc5eec5b82b5e7243021d55f9023100d2cafe3d39799a71f27b846deed50d2f9c69d16d031c04510b7c2f9b9cd998d0572b1027279ecc68f143f32a9b8803450302047c435bb50066306402307d78cc3d58da016acf10199cc45fa7f7d338acc9fcb1ccb1541616a994324717f3f829b2eec5402e2f04e6adde5de07102301f72d3c449644e8e3debd0f389cc5966a935242ad2c8af918a123064bad23c612160f1b8d0533e64c98a0e313b161aed0302047c435bb500673065023100ae9072f547cf9895eae3e20f67105b059782ab3d62d2f225ed3d28f6b5b5d179f15e702b67edaa480e4c7e121ab26f7c0230326a6ecb8d873c1a83088b038b13ee24b34d9fdb6f9c2ea2f9412e4d0e61bc6011de40125e186ec4524e019eb6c006820302047c435bb50066306402302688347fe18118fc6e68a1fdacb5f7ab81bfa2d41c6a6083c6f6cf5fb72007a48dc2f49df280dbb90b97646291f9530a02301018159fc04f514b2f0f24c8576ecc0479a8c299030a59a0e52fce1898078b21807898bbf6e899fdb1c821329ed53df70302047c435bb5006730650231009333aa48850042f21cf2c14ce5472dd45f8c9def191bcc3f1eb3c75f434c127712ab95c3cad4efd57c7d9b5ba8c0e9c00230323c46c0b105ef1ab3c7a4890150492198f7ce209eb6130b9c1ae8980b036784767af8d499c65584b87ec6d377a29a670302047c435bb500683066023100d21ba4163981abbe89f365f9db62f62bae68448f5d0b3b3fb3639b399931877b8fb2bfcb0732a9a9e3a6bce1790a0da8023100e53a1a8860ab0819894346e0fe8871e0fe8407c90df8e2dba4cf87aa14ac22dc9741e0a196b65adf415bad665df1c3320302047c435bb500683066023100d35afcbadafd2838830b10612cba638c5f2fa1f8c06ee56abfb75ce1550adbc8c90bc08105d5ce74b95e967153d621ea023100c8a691397cec907c828532f85cf863763d5d0d38371efdfce8d4e2bfc4cddd96fd4fdeb984fc52166b6af985cb3e9e850302047c435bb5006730650230102ebb6689f4b55ace67388863cbe8971d90f9238cd7198415391365ce965f4f4840fe9030e4465d7f49eb5d8ffec032023100e4ee46aa9f09dc2f7336ae9591351616461fbb93e9fb2e06668498b9370e902e0859d61586bfe96671d42ebc6d30e39e0302047c435bb500673065023037387742a06b1246deb7d56da91fe3530d5581d136401dbd27238605d87a23351852eb17c2ddb87bb56751781413c5d8023100b0077db30d5988666815126554ee922d8082a515a7ce789506d67f1a3ab37b22554b9bee7c5a2c1a1c3408ca2bb29c6d0302047c435bb500663064023036d6722250ac629b0540866ad19b8b41de44fd6c26141014355d67731ef5f2b723a0b12051818fc90430fc6a435e759302307d1834731bc1dfad9765e6eb1a23f5ccdefb3b665967cd22648a8671c39bbb51fbd6258d857468b3f082d2581fb2f1170302047c435bb50066306402307b6d506cb4f33ec8e7fd2033324d2d3bf5590a783332cf9d3f9d5d9349d5723ec8d1fba9abfdfdd317ad7763953830b402304cc393e9d8813cf5d593043809704d2255e19a1926cb7ea8cb55e10d111f56a374f3717bd1f641cad76aec47ee638fe50302047c435bb500673065023100b1418a72341c8a56db4b00f6eea1897eac404185c2f96aa058ee8a90007d9a955cd55a86f1584270d9963b8ee84c37d20230533ca1a6252fa82df33d017766107799b6bfef818500bdb4610a69c9597343b11b4d97595666206c2ba97f3e12b94ce80302047c435bb50068306602310090ba5fd0f307bd80fc492b8b7e268f516bb01248d982ce6d5241dd880d949aac0cb4953e1325300611a9ec3e6aa9736a023100ddd479a17c03e14feb143fb4f857f24251513726499de877c396472cdef75ede70cf43e7e3b20ac7f7665ba9177ba3840302047c435bb500673065023100f3a1f3256a5ccc8c039214541e2976c798c44bf3add6d6fdfa9cb882c1d353fba2cb71889557a90c80ff853a1b322abf0230475ce318059107c0659b808cd4e5cac677fbcd254c10162307e27f8f9f945a9f5f8896fcd43e3dfef443fb1622d432360302047c435bb500683066023100dcbf87b1a6e34ea1e976529fb5584c9a70fdf46c67aae8aadb85af4cd0670ad25ef7995f5a57aa12b66ad3414f2a4f84023100e419013f61f4aef8d6623cb8aba6095f5713e69d5384d29a4bac9390fa7a90401c4d1760493b294b6a679ec9b414560f0302047c435bb50067306502301cec49ecb3791e5be0b83398f75503dd67f28b4b85b0ba114b5147f2b7e22c7a307c787e5d899bcd6595474f94272830023100825504644f9021c33deb273b6e1a4d0d7eaac7acf05a762b8f19635db76955e473a6c023f6b1c38421443ceffb2f061c0302047c435bb500673065023100fd5e85e932b8e06e0ef59ceaee7aec1183321ea06b82526e6c5a84533536a94317c2c8bc303342ea3ec1484115d368e102302fe446c5c9c2c391aecdfc4294d0dcac439a60cf7e77c0344672993fcd6c4ca0010bc058a89c39b83d2067a9f55927fd0302047c435bb500673065023100b7dc8ee74b53ca29534792659d2284505e30ad6fb00aed81ad42b5096f75646e819e3a42b1012293330de59576862b370230589c93ec9125b713e669001f2cd1dd4c8726175120686b86efc4e9d64612da19610ada4cf08194319299a005e201742b0302047c435bb5006730650230308d612509c4d02532164849540bf88f796ccb065e68d64b850bf8c34491c57593a019286e7fd9abb8552f0aaf254d0c023100b283ce879e1199d876ca2d8e72daa99b63ebe4f97ddb9a7a23c1e16266b13fbe989748da9abe9260871bf3dadbfbe78a0302047c435bb500673065023065389bad98ddaa53d7a934769113ae75f17ad57c02ad2c7bc3fec6070922b64c3f1922784c717ff37d322cadc747ae2c0231009bf3a16974020a5a9caa33de3d13ca68174f5f6360581c8b625cec8e9a55ff9a673ceb64b6587ae29bf5a75c15805ce40302047c435bb500673065023100d5c3460cc3383ceff3dc4e2d08c03e7178dbf4febde87a509c7d943b821a759fa15ab1168d3c57f062e95b7e7f0f97c702305d258bdca688da665f35651d5f2ae9407c24ebb375afbd8c3b455b00370a68230316bca9a500e5c57b2df788ff4779360302047c435bb500673065023009f3a6ccb4a300c9a4bf893a0c3b7231ae0e705fcb98340bfeccdf7676352ed35a914aae9050c1a79dc9b62f184e108a023100dba7f7104966d99616df7c0600c37ceee0d0a690654dcd71e76deff53d5053741ba1354c0de28eabfa54181dcd6d3cd90302047c435bb500673065023054c01f5216128a7f4fbec7f0850a91198da2b5b4581e47d33e641b9db04fc90df3cc33b4993f0b84e8dadaa5e7fea500023100a21e7ac61a75b268092f66d96b1bbab7a3e0d5b89b3dd92fe716d31dbefed6aea233dc426a5312a5ad3a8f9f258d55590302047c435bb500673065023064ef229090d0e997c9e015b3d151685594881c0c50298543d4025717dec7d766025b8d8797b1ea1150ed86e269f68128023100ef41f6cf829d3e837e34c6636268c7d11f1725e4d620bef028fa2ffa7341755a1f74d3ae23559c31918dab586433110c0302047c435bb50067306502302b99df487f62f8ec7451c44589488c2599901c42d6cf402bfcadc0e6e716f51ff0c3eeb8680f57410ed6d25585380f07023100cafbfc38a083468aaf5d4c9fe76c47a9e871cbdf9558905e39c583d861ffc22e8059487b3662dcbb1a8b469f36e4b9780302047c435bb500673065023100d449dba11bf4a9551ae7f17ab552a014bbec58f738174b0794af45bef05d4af941e6811523cc066a6db36390fe5ef1480230226001e24b16534fc90f1a15d5c2b095d0d0aef14cc086e26ab594e9c1ccd51aacbf5542a22dce29655d163869a2fe2d0302047c435bb50066306402307c6271313643b690cdb17dc587dbfc72bb39dde9ca0d34e4956350bece40c8930b5867152a09d175fc36b61543a1b21b023033a37cd6f463b6fe48e14acc342e78b016cb91b9db2b6c2c419f1db5136266815a7540296dde5dd37aff2cd4be6130db0302047c435bb50066306402301b525b20f875fd74b3a628d4ad28b69068f9fe1de31504451a5f1d2603aeb5a541e9d11e9087dafc0905707fc7c564160230375106a28c4d1cc05c2c4809a4a368732014968595f747da8276d4f6a732f04b74f2cd99c133c719a9a1d0e1b03c1ab80302047c435bb500683066023100955f1b2599edfefaf7b8b67bbf580565c7f53dd7f7744c11469d0c3e2f076400477123a58f236a98384cff4a616f8fe3023100f4067e6b3872d47b460ac54957cc101d8012c07cb641c8035096273e48ec86d2f029c77debe05dc6c19d5c37b61e9e160302047c435bb500663064022f1cd1303b677d9b5cb9560ba7258fbc8a4cf7d8377b515a24eefcc81da673675e0077d3e1931d5212b85c33bc1304cd023100fa0c7db0215a10345732060862d238711840472d2cbcc02c9890a745008df47c9777350d66caaf53fa5f98cce3d8e5d30302047c435bb5006730650230520a24308d3e204db6df49b6c999c26a9b249b86071c23246f834b5f4de6a680ade74b7ab2e47ed283bc56fe58b1afeb023100a266fba41df1740620d5e8eea2ec037555e6da5c8bc746de031142c0beddac5d74e0b7bdcb99639cec307f22ea6a1e6c0302047c435bb500673065023100c477612d973fd7fda462099c6d7f45aeedf58b8b1f29273f7a23bb5a22b764270973ac8cb2b40ae424eb4520a1dc7f5802306ab90f50fde36e8e0cff1a23225827a55b0776db37521299b5f3b6c0c3905a77b267edd067c487351232fc3c02a693530302047c435bb50067306502305072313add5db426a606fc67cc7a646e74c5543a42ad0c6290657b0e7383991a47082b5b7f81409fd33f7b6c73420ab0023100ed632e389636be2692d9db2da2ad0151d892222b368455d4d9dc492f76711670954004cf7c05924a54c4baf79613b2510302047c435bb500673065023050b06807560520a92efa9594c76394162413c4b8218f972f146087fdefca7404b7663c58be24deddd0d0fb124e39376b02310087cfe2455d02fa8d53eebd31ef75f598bc9c5d93c69d27ea6ff2f69879ec5ae40a8839fa5a598d7572ed3d12b5be84650302047c435bb50065306302303ce8e7ee315de2efb933a08505d094b779228ba1eb70a60fc6225f1ce640eb4bc6a63655d22f39887050bc874ca14820022f616d19fafa34f367618f223ed38f576db9e4d3a02829a432e1d83af3c84aca1996533006e85376190273a5c1f102ab0302047c435bb5006630640230428e0974ca28910b695655c5e0df6897e050fdd2468598992b07d59e7bb21b361115bc5f247237c20a4a0fd0de3dc933023070ebf85f0e715fd6a8d6c4189f6dbad956495c04349c137d229f7ca97b2aed425a2937b365d21df3c6bc460c6a48e40c0302047c435bb50067306502300d898ef8ff97205d71a557a173e0041d3ffb2578dba28f29136af7167b5a4e62f90f82417923318efd347fa6d424856d02310095b067949f1641947ec452b2ca962643d17d168ff04621b040346ce1aa66022632cb169feea4d690d93549b51809d6200302047c435bb500673065023100fb08290cef01202dcb807403f10ae5e930fcf8c492621c47e2e01740d596546c7d20ffc16e05980c519664b531818c49023036d521db164a3ed1d421e9e01f6dfbd5b589847e5982d44885ba4ce1cc2c94884338799e2bc98a1956a27184e03fe1510302047c435bb500673065023100888ae07604c86ffb493214de3b31142a5df06e3f309ff2b3c7585d83d122a675371d53b2745f9965ee029a1946ae6bb3023063726601f70d60581b3faf72bd3f30bf8b358353ebb19220083dfc5e07ee0fec9c51526d40390f2eda93d61056776abf0302047c435bb50065306302307d67a5b53fbc126c3ad8e42528db4b6dd08337ddd3d7c64b65765a0ecd59a59db0dd35305831de9910eabea66d3aaec3022f658babc45237f11262d4dd42582b556ab5b4430d7ea17b9a6bacb32bf70f3f706b19763cd165cbab86850bb8de42d10302047c435bb500663064023007014d810b97edc07f73ff2804aaf4ef016d69e75b08ac545880a40ffc3c82c3acbb0a82c07fde8ceb26fe78150cc52a02300995768fc607010e0ef6f60e3c927374804e45e155fbb5b6e8b382a9ae72609b5e5286cb1029e52d6e072b05d3b4b0810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100877a2dd85ca90dbd5c889891848e3942e95ec43988f3cac42b18fd37b37a384cd57f78d479cc1ced42e50ca1659c014102306fc20a65bc873ff0bb4b8d9c8aa5a32e912493c556528124b3b807feae825a878e1815b617235a3dda66422369dd8fcf0302047c435bb500673065023056a7439d9a143b8533c3537342c9bab21b8c806265ab1e0477fe4e94ec79c09b375ec0db1022a4da6032ae36f5c3ed07023100e6216912c414f88c1d9e1fbb80271fb09240bdae1c991051a007fd9268f499e0eebd61e4d9f1086c76af4e86b581a6950302047c435bb500673065023100c9d41709501308cfa72cc829567953a8271c0a193a450be26b90aeb608f61d24d85dfb2be5d429c3f699b48b550d11a8023023293f6302cc79d230ea120ec574bbe43caeb6ecfc6e70407068c685b0a5af161194d02629e93b352c9dc505438ad5a20302047c435bb500673065023100f5ec16c3ae1c2a6aeb398a777a314785e965154456a353a0120a265e66d32496e08da67352595e82c1771fe5738527c302302722a7d9d56f794711ceb3798ca4f2042d2ed94a3a572b7d58ad42042bb54b0112ce7280f7e0e8ff46862900fd35162d0302047c435bb500673065023100f064444fb6407c01a8f26f306b49beffa2595cfb82c84d57c10e2a4e99e6757d362c53e56bcef7e9636fea8b98d8da980230755027de84963f056023ec3ac90ce45cd4c78b93d24cd4da29502a34f0995e1c5d230960dd75481f790830f639a13d570302047c435bb500673065023100d4a1b1b44ed0d5ebc5fc1c1d7a0877c17b8e0623a9aaa8ab6a0b5538a16b1c08a04835800356395d798de723819ee4e6023063177eefc8dc59619d79c877fc0c6cc322d02ae57d1dbea8365b496dcc151b46e88e5b46f016ed568acf7be8a973a30e0302047c435bb50066306402304c43e72039b40d4b7fd59e33d0d418f2253db24874a1793c725eddb4bcb40606834d95471dab8621cb6208bc86613ee10230436554ef4a428b5d6bc7a90d60fcac9625b15832ba2d1f39982e2f40628a559572d00464a70890754dd7db777908cec10302047c435bb500663064023011326d759d59a5e6bebdb7150f74f17089e2e5e56a86846f85757ec45449a7a4196ac026ceef88682d941d3c2fd71cdd023077603ea1ac49ace6841d4bd98ea2eecb713ddd0c55d1c54d3592f1bb698176223a0cd97d1d956530d076f6627f16f42f0302047c435bb500683066023100dac58feb79cbcc04514f336dad56d7dab3a123b8754adb13a592da1f1c8a19bea7fe43ba4a11c70493bb18c4575bdcb7023100eb131442fa7b69bc1a1fb37eb216cb6331ed5c71b45806c6b038e30bf92da1dbbda74d18eea686415ca3f3d78d402cf70302047c435bb50067306502310090253a5d2ee317b35629e24b70d38df5056226c84716334d62c6b5e9514c0cb06ad6c9c138b5ae84bad6b31fa6c994e202305709d0ac69fe086937e35d729aacb0ecedd27e0c4534539e7e51a27855658f69e0bc18b6ebd1ecb0a4f58164659892230302047c435bb500663064023046aed0e9b4bd9c60a016120aee25199601fd1a9ebccc41e2382e267d1837db1aad9eddbaba657130b9542396f248787f023057d2a8492979ec7566a4cb5567d38258bbd12fb7cec5015790f5afad5ef2f0af4dda219460ff51b64f60d508f78e4ac70302047c435bb5006630640230201a847da75837dcca2d39ac08abeb9faa1e6543930a5b9f02ce609c652b6dd1e69a66438975559303140ea744bd53ce02304466bfa07139403451409563a29d0a0867a9a90cd75c72a84953174608ccf97fb7754486e758a3f36726b949be366a100302047c435bb500673065023100cd3325ef242eb30ad1ac01eed60d0345e828361f1822b1654aafb55801631e29771b7a61d95c6a36e17cf3db0c59733a02301f5415e0f7ab6c8050845f2e0fb3891a13c7143d584d4e36598fc7095706186a6b3d2c16cbc99cf966036a9bfa649bbd0302047c435bb500673065023100bba9cec9b2ade3dff2ac86b37a7771d060a33478fd6786caad0cbe9ac66cccc4fabb545a42664b1c8705229208956a7f023018a19a2306727f3c6280ea5229afca729706eede83d3341fd89b660aa32692682784b6f6df0a47d860dda2eb8065a4eb0302047c435bb500683066023100fbd8ada0ad20dc1650f57439173e9d32f8e7a2dd7072bcb8bdcb78ba3dd47b3e290a5a00d829799408d2de14f759b049023100b4ae53b7b6e9284464b1df988e5e237c4f4761ca9d5445af087ef3b812b166500b7b2570da526edc8a0fd5c5b0ad54d30302047c435bb5006630640230581ebb6546f9fb7f911d4c8f14378d7b11d163485c3f50eec0d461be04aa04e277153cb1d746bd93f7bed804464027130230461dee8eca7fa61f16d1ef1c624f2447a93247c378e2310f8ca02b659045b8e9cc022b5d2731c341ec80598f0d48777d0302047c435bb50067306502303b3c9588f86b23c7151a63bd70e0ac1ba71d42a0ae307cf4b77fe32be1b176924e0ed675be1fd38bbf41a46147dd1492023100ed6bcca15f630feb5a91efe38ccd8fe65ee347491e0b759847a876f983f0cef1a1b8782a6d4fbd1b694a3aaa879275450302047c435bb50066306402300fccbf1aa1d8936d3c8a0d4a1965c1c6d68c2461df64a76844ddda838d0efa71322527d42318f69b0c7a93c8fb2f78b402306167f83ae5bd3805b5f33cfee0cf0fd1b1cce802bda80b7465d2ed87f2d8d2116202701e30336884971e6bf2b8aa3cb80302047c435bb50066306402307a08db597b8c7de657fab07e6e0190964084f8a5939d3916dfe6c9bcd651643656ee1593f903af67719e463478ab9f3b023047f050ba52f62fd5a21eb9007c7e04318ecd75d6d90bf1f75d85bb32b909de8a0dd14945945ad67d3c2a0a96410f036e0302047c435bb500673065023100e3831803a342a48e38d67c2bdc31efb0043274be9ef9379827805882cd10390a7a04d36eb4e8595c9d0418d7dbdc5c71023044ad144a1f7f15cf79303b2a724e65d2431af485c7297b7cf2c270ff4de986cd24e1106d621b2ec8bf8bb5a8f05d20580302047c435bb50067306502302cfd6e6a9a934a971f08501645aa4dc3d8b5e06a1672e1fae524e8d088db92bc88f99a355b2c76fa2f8246ead13ae8c0023100ccd49d945ada9ff38e03c407a989324cad2dbae03fb7b99d7c8431ed045117d8b0d6d02ae1843b6a4279fe69a6c9c70b0302047c435bb500673065023100c3bd6925733f317cd9504fa6f3b046f2413081ddc9b38fdc5776537d330f930722829d31e25233cd87e35cda42ee718802306357824df97d812031b8c738e72040624f8aff765330c4013f508fb4f0244f6f7d503216d732f1fd042c04033f38f1330302047c435bb500673065023100990b2343eb99022891b9d05fd730a1853b756b967113bffad6971ce94e7271d5ede30951f50f49b59e488f6857f1acf1023077002d04b08f33a1739b712329c1720b00733b54383b9d8613f053bcdaea3617081c48a4af8e950223ad65be4fc6db8e0302047c435bb500673065023100807b12f5771ce9c530bf8236a41998de58345d4c5c3d1db8a933f215a2de3f84bd1754bd14d5a43bdbff54e222b613cb0230472a43250e607ff293809006661559c527803948a87eb3a9ef062df6b1ec68e63a06f24b8cfffc297c21c825702f406d0302047c435bb50066306402301f0a49741c50f7673357022a07f8214de7f5dfe617c81b4852480266d81d6144e2b19f3e2b0868a8b5b0439e8daa701002305e3f8c4ce623d6b39cf5a175aaa54856edfe54803aa8566d044f0df540554863b6828185834c16014039bfa72e4fa1a10302047c435bb500673065023100e1543ab3754a524ec8788af53743d84fa909e650b6b920d51f15c773ce0467230ac6f3dbbe94b77085db925ec06b3f1402300c8b291bbb1957c9a12579a61acf033af08c984490630b78b2acc67fe35dccedae2a790403867b007ba942c941b97ae00302047c435bb500683066023100b5043a38323235acf2f1ca98beaf2e5057d3818b5a5f17fbc77e346c55e8119e852b65e5619bdb38cbd8984cdd256de50231009dc38245986b29f3d379c85a6698483db1d0c48aedd8ee883ae7e894ef6efc44bb95fb91488d4ec3e2f2f99198ae41d50302047c435bb5006830660231009cc35a7d1c91b990c774c12a996b8d84ef9a8a0f490661abe5e7c7eb43326dc4fabaf8fbdc647f93cd940cb811a43bd2023100b1207f44305d5687e560940f88de6d6d90cfe3843742ebe222d09f7d5fb5cc80fb1ef21135a8e1d5ac8cc85cfece15800302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310083af3d69153449e8cd4b98ec2c8ad18fea9519779e56b84fa8eda7b107965ffa6c2bfb11c3cf449f56f51ef2047b0e6802302ad575354e27f92de21fb60ccab8c0c36cd801fecd5de0641a85329a77089b7851f5298822b4e347f3742a651786e25f0302047c435bb500683066023100f0a827819ac0bbc2e722072beb6e2c6ecfcef8bb4f0c01273c1b1eec0f3b3e818cdf590a0e3c5f21a118204c28215d52023100b82e347f025aea6d6e03cc0850ac4bbab26727257a9c24553ade605fa376b978b024b82654938945b5376355a0caf1d20302047c435bb500663064023078a49556aed0abadd8b1d449573a2f85edea1bfcc1f85218f70c25c81312f65608d21b0811c6a6c733f69e4e8981eb5102307c6129d2c42ce5f4f15b103f78ff987d9756f94ee876ea20ef4fc9587773bedec6fdd0b0775313ce17e9a774da68f3340302047c435bb5006830660231008bf79d3e8ec6e323f5bac1c338c60a405315ebb5449aa3baf034e931f946b3e5990c6c71a9056d0a63a6200bfce4ed78023100ef98a042c2f60d75d5731e1c49640cab07d1198f64eb43317cceaebc220277f775bad0a8144cfd1a923fc996c254f2e00302047c435bb500673065023100d406e26151c11fdff5f57157c629c37a263513e2db6d62648fef28d7a8579c8feb807be5e1e6c6a5974261d13d13a9e60230262fb8117c3663bea0dbee923c2d3cabef4ec24d769099798d938537c2aa3ecb4076967dcdac0c6b5b9078f1e934bcc40302047c435bb500673065023014b1d1e74dd5cfac0212cfd1a4cf802b859ccfcc5881f3f027dcd65ce4f233830317b41057af33eb00156b9b49c301de023100da1f5d8f7146805b60f380cf703c85b4f800ccdcae3850f92238239cece6423a1e87958ae07f8d5a22db0d5aa6a216de0302047c435bb500673065023100a4a5ec35656ad98efb0f763030b443e4e4d20131fccd87c819afb24ac0303508fc00299e3cf9dc0edb981b280b2093160230576d2306827051b7432fb9e95df7b62570940bcade18f5c62af98920dbec0266f4f1efa4902d1c765d75efbee5428f6e0302047c435bb50067306502307fcb9fdb45ba35315b512d3f9aedc7967d20419a125f4e1ad2a43a4671fa32b250268dd157490aaa47e15f87324cebc202310092567cd7910fe8a2ce302c4fa92dbdcabde849b183e55f5e60fc56295823bc954e887051ecb32c5e86f1ab166651379a0302047c435bb50066306402303ac031fcd31f41c832438c7fd29bb4860c32c2ab1313ef2e8fd75cb9097d2eab66d6f397510c0e6509565a60371f7b56023056ffc9baeff37dc5766faa0c8046fec3fc2c434d50d28cb80d25bda58ccde2e667b1f9c01deb0d16a0e75c522da9cf3d0302047c435bb50066306402303cf4b9a41d7afcadbfaf704ec6fe45507e88f2e3bd18e7090cc2e68dc03738bf8102667a4893503b5f655571cf0986ec02300e03f60cbe110594644778a5905a21e001852cd05237f9cd648413e8e2b1ba4560bdcc4ea2c5b0e38fcd3d82578c6b1f0302047c435bb5006730650230627694debfd79509d1a0672a2f36273b1e6737a27efb16caf1c7170bbee660ebb7d5c4bef5d091ccd5a24d5b56b18201023100edb961ab333778c920e619c8d82be89739971bcfbc3af969da3b3e2762e3173dafa45c96a6539f7ff4609f61fdc19fbc0302047c435bb500683066023100f94f93cb0dc7b02a7b958a2266c16891ce9db97218bc595cc2b9eda9c2dd5431b188d36308cc279654a1fa554d5ee44e023100d3a0d2d63b2421040995c7959e976cda239e43ffb77bffb745e1bfe5bb2dbf0bab9a418d8550a1f15c2534335d2363240302047c435bb500673065023018b3043cc3b0f9601fb980235135077ee0a85a444cdb426a1da00c8ebdb0568c253687fa2043e32d0f6a826d8afa3fbd023100af089bd68bbdb0bf9714a11e2507c2f25c1e1b5fe8d0dd5bfe8b15f2600ea1d5fcf1dd859af55e28c05fc0575cf1b3f80302047c435bb500683066023100bd978f29c0e21065ead8d0055a83a2fb4bec24c3faf89a9146b9acb76228a00a7ef7e9507666923a3ee09711084d2c7c0231008794c5ffb453ee1c33cade6243f17a608bca5bb3b880aa6fce39cd352825c4fbb9c59c61ea447f14e8ea239f6be0f11e0302047c435bb500673065023100b9470111dac4871f1889f8cb272b387ef8ce47cecb63513ae66299cf20d089ea7e92b79295c3e153f2c0901d897c982102300b6db2e416eb87ec6a0164111fd93b77368dcc53f7c063ded312b35fe0aee1f6e4a94cde56022d6c98064fbeb88d7ca80302047c435bb50067306502304d4d04f6b1ab899d05d050a1281eefb7b5be66b23fd3f88f2e580bffee2f0bcba8d5f835cc1e25ec2c7cb409ba6994400231009e759d3a0a46dc740f0aff1c19d9fafd158185c8d680fe751c9fd05035f4d75c91ded8553c4476ebff5a2dd38abe6aaf0302047c435bb500683066023100d9d263348157e06d1879b1176928d354367185e2f79d0a3415478497a6b1b8cd142ce23de9789a42b1c27ca5d633e6380231009e739dac9ce0a74bc9f7f18ba3b09bf53b6a79b27585daa0316fa50660eb3f2c33b71d3b57e873d8159b0f536dc9595a0302047c435bb50066306402306be2a870969061e7fe1cf6a9941969e8c6d62fb75bc716cf9929403a6030e9eaab811344f93c0ee6ebff9db0d1e7ab6d023050365a61e1288c96a13cb21472d7aef5f7e6fc83e94a0373924a99df69c8cba3c7bf59304971eb4488b06c5b830bac940302047c435bb500683066023100b16d77a66d54bc3997e01399722ff92b982e5d824e39a7a6e42a0a753da4ba865b748c09e19ec2514fd4363bda1322b4023100b2b3388d53dbafe7158e92ae9a0860b6a5293242414bdbbddcfb9663c769b4cad4585ec6a9a2df46a2bf51bff872dd1a0302047c435bb500673065023021ee78855281531786646be5b307ea745f699c5e53f9aaa82f40041e0479242b42ed534c7c670023c44c880d72db6436023100e73ce023b63a7d89b58e9b0bf17ee64d07cfa5571a42edba3d38cb493576901d6fc09ca10eb4d14571e7bcb131ae23760302047c435bb500673065023100f5f5f419d8e78338faad5da0e6bd386d536d1fd6154510a81ad151735f9e652dae567a5cfebbba9fff501884e759dbeb02303b1cef8366ee9c4561a0f7218611c6fbc4dd481a625a2f19042dfb0d812ea0dc296d7b3086cd49b5bcc4a40200e15ddf0302047c435bb500673065023100d7b903960b9ebff8d9094ba9a366b667bf117c372fddec9df3c8654e0dbb30f14d62a513898561ed8b8fd798b67676f0023070005890b7054da4635d59c439495914cc119307ed6e2eab3addadc82ffea49f6806cf108a6868b9ee80f79538aeb22c0302047c435bb500683066023100bfd6b50a3283f42ea0f67ecd1fb188f90aa4bffcab24931f5360a2ea2d2ef9f9bd73ab24383678d98137245a52c4b893023100990eca45965666a23f9ad68f50c28817e265cc8d48367c8cabd269c17f88bfe131ff8c55a0c9de1ee11ff60003345a980302047c435bb50067306502306503433fbbecf3aa8fa23ba3d4115977538d845f4299a46ccab4640f61095b44f3e70c9333513ac2fedb52d55e413a8a023100e996671373dcd2c04d8ab1efd673c6215bb92fb21fd2939612a88ead86b7d20a0f034a5782882229b338c140ab795ed40302047c435bb500683066023100f2ac2daf0efc7a7773fd3b09287dba9b1a3444d09b938fa891a8ea5767d663094e822f6cbaff5c62f12072f684f7bc23023100a7bbec0e848aa54df76027443548b9082419b9e7fa7bc41e763ad4987c2fd8384c11dd8c1822415eb7721bd48bd64ac20302047c435bb500673065023032b837ceed46237bd3602f21570132d7cf8b9f6f737275c25f0295dfd8778da5f4c08b568fb39e065908f696521ce2d9023100f5ee6e602110578185b8b35e5a696461adfb27751263d04b64da9943c3329ad4765b1aa394702573126857e18e7063d10302047c435bb500673065023100aec9dc51e8e473a430f7a3f85fc3f1586ae38c8341861d15a8a47cf4f139af212bd148a0efff5fa5dcf589642014bca3023068b119c203c943413293e04a0c3d72272d8c6bf7b61b40098dd2aa0704c973392ae8e02714dc4abc822c4eaaea9e9eed0302047c435bb50066306402306032b77e4619d2bff47512e4249bed92805e01a1e1d9601eabd2841e9faed4648a2695aa7d075d881671b8314bd863f502304a3aad14624944801a4f438ae121157e9bcdca97fd8f9e981f220d472b5866a22df28c729ef31d550c2c234cf850055e0302047c435bb500673065023100ec5ea71e1b08fde9ade318d5cc1aff9f318d07759a995375e5a9592656888617279b5d33414b861aab53f03a44cc9c7d02304a94b2ebefda613eb7ba3f7ecb2c3b6d7d2ecbf5617b19e8e341facc2fd17b1c49545f6723a966ba4415919013f8a1970302047c435bb500673065023100c79e0b517a9256b0da4a1e4f6a4b7ebaae753b4dacfd6716e6e128a5839ee9fe9bf13600685be45e9e099ec2110def7d02302405ad9b5cb442729fe25e922b736a097fcd870b8a0254eb4edf93bd600737b8e6bae1834fb176135f80b2e3e36342240302047c435bb500673065023100fbe059e5b24fc0449f836a67e35c944613355190533073c6dc9ff834dd310c3846b7f06a8dd953b0d4d53edb156b1551023076350469ff6e8c0ab83a4d9fad8eeb51d225a972a3cfc9c5c76d2278dd3629b0804c068bf4f613f4320f421ba47e1aaf0302047c435bb500673065023075244d52a898082b2a42bb57dd2ce9e3191dddf00fb71b9a357941b2f86c570f23581a9367061bb49714bf51a33b4ab702310098de9a32e0987cd5c832299a298f3eb0adfcf4f7c09b171235d38bcbe77906197ce0f150345d372484432935356fcdba0302047c435bb500663064023023e5f7b9197bd5d0dcac585a26a26d1339a16fb6c05fbcc1c16640e64ee78a665ab2044a19096c1c146ae0b0af9d257f0230794c1cd1a989f01570a80f0db3cd6cbd9ecbc8718567df77452d883ae2591b1c6a396d7f68fd42c3a26c24ec0038b70e0302047c435bb5006730650230709dd0266e5466f8cf32aaba3b76366201e5b5cb732b8801801ad9768c3f599006116500f7deed76bbf74b3af65c4da1023100c2f7f452614b8c784af015558adfa954e4d02c1a7a4c8691de73ce9899eca985018c2644598a047bf35d0ffb648e49160302047c435bb500673065023043f5b14b17ff32bfb2939052312329cc8d2f858b34c24cb52b18f8f2e5e2a581843497b3b862c1519b829628c22eb718023100e12e03d8e8c8dd75685a145bc63ce2a4ebbac98158334927eb192151b8138a28dbf0a2da9cd3064c359dae226982aa1a0302047c435bb500683066023100b6aaaa4bebae85f698290dae7155a7f205af132d15f2c737f0eca82b6060048c4a7e5c8ea808500aba1b5626400dcd88023100f1304d200f46719e7e08592cfe4bdbb17bf6d86526275948179c4a070688a739f6e901ea330c5ad9c56b78a6b40aec610302047c435bb500673065023100eccd81d6cd9f7608858c267d5e51aa969489bda890d10e2e47b34ad915982e30c1bd706c85694edcc22017c048aee15c0230107dc8c4a3cfa6ebe3eb416924592dd12a3dc62a7716a9357cb99855e3fffcefc1c7c3c728e271c7aeace523f289057c0302047c435bb500673065023100f893f71ae272e1d3396f3dd8564b64bfbe241be61d5a8e593232dc67791e7ed1956c9abf8e0271e53ba0cc4f8c753e3f023000c9ad9ed5969d46921e35de02709f55bb5e125f6f3dc9e0d80ed5d24fc38a0a84e1b90c1c04691140a88e8030e040cd0302047c435bb5006730650230724576cbb55c1971cb309668a7f53d8d6ccd777a9c2506cdb45fd03ce1c69f30cf0b18785d9854b928c6742f6a38aa29023100a283ff27e74fcd412dd24fe222a7af9c8c2b58f88cdb5b76fd4cd72f672f2a9fd8c96a389a8f0aad617e170c41fac2a50302047c435bb5006630640230595f4975bfa2fc562643ed61d03593f3a801285341cd299b93ad45dd1c2ef23c7a17fd972a3c6da0c908e76e3f9c11c70230689bf406a3543bdfe83ecdd130960a51111277c4dc2eba88570f26f6d2b7835b54ad295ea15ce9341408d266ca17672c0302047c435bb500673065023100c78816fa95755c638258cdb4e1fb119f0a3ae912c350215db2784ac372b5b71a8968db8902854644e82e051fa774e90a02306d74574f948fb5d18f2c38e45e076689534e99af2de8602dfac6eb9ea4a41bf0004ab194ae9c0907c3e9c3ec0214f6a50302047c435bb50066306402307e5d97caae950559bd35e63c160fefc5dc42baa40c0010380c2bfbee2fdb659624c7956fb5af935ffabe4f39c1ee09b00230137df6834c16a9d03d39c28bcc5edb3ccf3b8d527baf30e31588051a132250850546af3be86a29343bc38b702e20b6200302047c435bb500673065023100c3cb1d821cc06a6962e66cea72c5b66b030c09e372fa27c455914546be6b2306a384121696ac438ff81f9cd20e319a310230345276d71fe8fec7f8156856494eb5c239d8ff9dafdc22d5ce4872ba0c59c99cf7be1682b79c67bf61f34478711e49630302047c435bb50067306502303ec17b3e00beb85aed7a014f32208d099f25f6a91a14dfcc85bd9b22efc8da096998d6876db105348d0c81d02bae0b01023100f49666f9a37301d45499c848ec905d3802cf05bb2795195e38e18acd15fec09060a1dcff46c2beb57b802a3f20f873af0302047c435bb500673065023061dcfce5e6a9259199e527ff90564471cedd015cb75f081fe9306df72c4d0be3f3f120f63a6b2231bf55447b848870f7023100fb81c9e08a85814ca368ba58ea24a30dd79b9fede21e0435764398f00d343ee1dd94b0a3f7e645baf5cc25f31516132b0302047c435bb500683066023100833de611b9d13bfb02ae1e512666875483860898bfe0c8ee75d7797c28cf9bce8d1950fe2bc8e985c2ca1edb005e85d7023100d6a266302691d132e85db304fd2f2ff7f45aae2ce41b6a064ad61a5569926952727f04f1fc242e0c343898c39de422e80302047c435bb5006730650230753268ef7c99f59236a34bf4181894b75f938a93cd0f07bd66ab77d0eed750f98a85a4d7e685b3d613a0c4228baf7ea1023100fc45f19e5b2c4c540b70929963332a8b3fd43549dfccc48b646c777a504b902ea00abd2af9c39bedae992310a3734c280302047c435bb500673065023100e3eed14323c149fe48e4de48208b185a039552246643ad184dfdaf341d3aab2c26adb09a3a0f080111c970355b1247a102303cbe824a106806a1535462f6f34d8023caa1052f3ad638e4bcbc7044d636eef95ba79437e014fc3ccb63184af955676c0302047c435bb500673065023052eca116ac7de1ce20b5cbdbf9cf4bcebc84df61138ae657741998e174311770b1fb0b9b94dd6baaafbbb08a03e4fb19023100ec18aeebf7ea7287c8e7540b88038bd3e385c9cdb93ec0ed786d37ff8b1c80e16d1d062b3aa36b946737e0964d9b04780302047c435bb500683066023100d661f621bb1a285f58a696d82b72d6d43f62daa3484379a57461d58193aaff97434454c70d74bd30c69af0ef85751d10023100d17abbe2b606544c0ab7407657669be1e2596e24c8b140bde2121b9d8930917ba2717cef8f91bd6111edb6a577e409920302047c435bb50066306402300f20876e6207b3d1fe22626496c67cfd2faa0644294c1d23b450d1c6613b985eb8da823dc50e9d6b3d7a11fc14190786023056b5ecc50f25e74266975b73d686881d45f06108e5f902df9508674c3582bec3c0661f868bbb640d10a2cf03f5976e120302047c435bb50066306402301f0c03791b547c4e925eeeadf13a85f1bfaa2c492ee56892a488007beddb9bdb226b3509fdd625539b8d44655babe40302300dc2ea122ba8ac46593e68b0d5eab455a69f5f45a6bc24211eab3be7d173314067428ce2681188963bb72f5ce25040c90302047c435bb5006830660231008abeb3f730c014cc721f222ca9ba6588aa2d5dd32e2980f67b8d1b73fbf5c53a51f5d7e3336bb026a4bc5eab0696112102310099c09d1dcf9c6f2421c22cb9298958f355f20c7ac27e29bde366d1f54d16f277b1850b05d61a78946a3e570f572b1e480302047c435bb5006730650231009506428899927bced6a3574d9506bcbb2da29732ceceb0ad0fcb3d9b9771e9317f99e836299610c2c69040caca20764d0230704111ac0dbb647c5bfc94a16d2e71a523c29065ea109aaaa3e9e708b5c63e2896d2929dbe1d333062cf21d5c7405c3f0302047c435bb5006730650230058b45a32a306a26ecb722a0ecc7b1a03946e7c2bf11296efdf7c0c46cdb2c6ea8529c550eb813e7177aab3eb1b5f0800231008bd73a90b3deed74651ad10b6f6feaab7d31805a869475a7607f57ba117b073a3b4b781a5fdd66e617b1ca067f6f4ee60302047c435bb500673065023016bbca7101070fb1970ef7bfd9abc8dd049be4c5d341e21ccea279f35e18343225ff1b013065a369aabfee5a794b9997023100fd70c0bff93f319c778561b7297dff14057b8942676d997fad997cd82e35128598eebc04137b229cc9bf76df973f388a0302047c435bb500673065023051eef2d568e8f796309bb6084c1c82597bb18bc7aa7f50e47d8258dfc2704449e3f4f03fdf9e5bc8cfb54e15495e2443023100c68279b9caabfc16c775f8ee906a794a021b6c31e75f1e8cfb3588e6b5801e44654fd152cf10e93a9d40370be909f8a40302047c435bb500673065023065a7272d70fbfd605b4578b63dd95f2325ddd2540222f95b8f5497fb37ef3e3d1154492c02699da93596de759d2152cd023100cd8766760112b8db6c5326ea9be935a9026deb297b875737053104f98a6675a17cb9a15ecd9c9c8806beb743504017df0302047c435bb5006730650231009caabb9f935948a7ad812270c68a8437908bf9f078f5fe63ad087f0adf0973c6cbf0f76861d222d4420dc1496f206eb602300fdcb70bd9e7a55dc8b263573818e67665336dc8792375cbb22e1a1dbfa6a24e522cfa0ca496566905d7e96a3fa8db2c0302047c435bb5006730650230225949260b87695496ab36025da913a9187bf5f44524d1258dc379025426172aff0208c7ba94c7382c9ccb287c27a66f02310085aac706982d4859219e4372297ecd5025def901647eb638501f8a44bc14c2a8962919d4dc710287e6b47eae8e56e64e0302047c435bb5006830660231008aa7da3fb8c01570f30e227dea306e6654d9c9ba4e9aa55ae58d491d2cd6fe98b82b81ab00a551b8f1f2846f37695bfb0231008202163a6a3a21d1d0b218c31ecd6e21eb80215c727e8b078594fd1f89865878561f2af390d9ca32f30ec71c12491b430302047c435bb50066306402300bfc54f5c0afc371738b2a09032da049d235c4bf254085fbd805814fb6e3c3320941239a7ea2c8c52cb2edbde5e77c9a023077430cf853fd0e87ecdb0a04c3f7d0833a3d1bfd677e011e56b419cae3d963a80c03ff932eafd85eaed0e198a277d1e80302047c435bb500673065023100db67286fce4f46634f7b8c581ebd367818852e66f129bb182a49d68fbd0d6ef5cc4c6f1c370b0d56d448babef2a0a4db0230585863116cdcfb294ce28c8dd015b116a732c1904a08b81399679b640f75aa8ed1940ddfedd86308257855dba1fea9750302047c435bb500673065023100953aac20fe5245ba12e34111788e0bb4bcbc9831c034aebc8d4bfcd1c8d2dc98e4acd4da6b495782c44a6fff92ab3e7202307cc5d8dce7b9a0a66c50c27b45a322e195a59517ab0e1c8eef7211dc3c11458f555985b56d8dbba7a4b66daf93c80fd70302047c435bb500673065023100eb059ff9b524c7a97d74c948991d5af5bdf263e16f599c4077ed11d141848d9f2bb7ed9d41158e17e5083ebc99881630023079a01f81c2b71f0755bb1495f9c4bcd46f34902bb4a9a30d3c086d74a3a8c0e07d49fc8b336f4b532a483284ae676c970302047c435bb500673065023046e82ca137d7406ecb19ac5370bf93a77a4927ce58c0d55a890dde861528ecb92d59cd880fe1b3b0f2178ddc10b77b52023100829ae8bd0aa7825fd194c3d97a430cab5c02e34567bb755b6b3dc1cf29b0dae3d013e64aba9cd13609425547b27380f40302047c435bb500683066023100c8d8daf36a91b0179eb16fec16274d67ec4f030eaaca6683ddc4a16933a0b12814d50e27e209bc3d6b2f4cbd6c00f67302310094ecd0e985553445c65c388ac86cc9bb6b9ccb8ce9989fa6a9bfdad1ac4dfb38e8c02e4a69b8a5d9a3117a97accbd9770302047c435bb50066306402307c955c71317105441d8219af3d66acbd75bb923d5ead0e0bd8ac1072827e7d1e0b66ac26ffbfd0cfaae54b7490781141023042469b81b544920cd33d41852eac1fc88474d71b6fd800d1b7ffb19ad0bf580b0778e3c462e3f55e8c9cafe466d6d3f20302047c435bb50066306402300a7ca1e1ff3fc8b0e5276133f71ea395f63f0178f2b06e17fdd85ac1e509bf959a11f762fca0cb24bdf576e909536b8902306388cae51b527cc342d875fc8a2b23414021789f7482646e00838d78448ed718a368419779940e24167ad7865cec9d970302047c435bb50067306502305f8881ada4c3f9cb2b9c07e3c548d8e37d7f4e29b094371d77e7ecf500d80df1ada2401b07b26996ebd3e00c6666b8e3023100973db304036f22b11c3ca511c93485902781f7733cb9a3620530aa67ad69aad778f9b12c2e07b6c7907aa55d2a355c5e0302047c435bb500673065023100f42d45323b28f12e2990c0c692c74d85841206374cba76f164356cdc8b25cff31c558b97765c4df61bd7fdc38ccd01a602305ba0e0599793d219ec0d403dc717964597a6b3c1bb14ac3943b5bf13f3b9c2261b76bca6417cf247806b03175f4a54fb0302047c435bb5006730650230470e4701ffe0d636bff671a0fef3dc159a4ec2a7eec8afcdce3917d2d5503eb31e93b9356d71d7ab7296af9ea9facb4e023100c92c6bcd7447792403362f5c16be3ae6efb19b8d5336ffa6c3ad992ceb3022818a1f292aff9f2c6b21c47e5559a5c2880302047c435bb500683066023100a6d7aa8abb35fd0086e8be3ce9e4d3e1be26c90142c6a2d86f2146b55b7dda67185a4ccd4a7646b9754cf86442e06eb202310093cbd46194ad71d39a3dfc2a10ccf4e5fd7fde416f996dfaa6386367aa7c1841e72bfed9611a94a8bed31a3432e3efe00302047c435bb50067306502306aa2a225ca94f4f022c09a980b8f4b1efbd8a6dbec9ee84c53d69a8984d6f63d7602df36ff3cb530b81d7d2c85e65abe023100b3acf425a5e83f71e2119bb370310e4733e63d6636f7e1956a2645e53f499171984544dcc041ae9dbec4aeb5e5da10c50302047c435bb50067306502307b0906e2860a9591b6113a38a9fec93506b033521f0454912e4c7534eca0d37466ce1d25865f4d7adb1e96b208db4f2b023100904fb3dc82b2d227edd4836d9f1f35dcdb1da050420efda94618bbc2c18df18d0a4212545b8f168b40c0dc0021ef3bb90302047c435bb500673065023100cb7e2ff6bae12534b5e06852409985bc74a41776ab3b8dfe4c672918a116ef1b529aaa56a75c7e4814e0bdaec75b6f58023075273abdefeac4e9059af9b42675eaf4c70933aee10e2b63b4cf8b672ccb6cbfd984d64fa4c9e9b503e5c96f324a528d0302047c435bb500683066023100d5b128ca749d6a1594d3dda4da2b2ae29f63b1fa22e1527bd8117ad42c4b863042e6148c933b086bd72b0c97f5e524c6023100ded116137d449aa6bc8c57ce1f29ee960bb492ded70cea1c0f2073cdf869a389fe984fe9513c118c596b7bed170361220302047c435bb50067306502306dc4e4659f704a901b42574c47ed56230c0abecebfafa74749ee9da078b07618dba248f5880412f57544bca1e55ccdd3023100a0b404614efff9012a30d63a347370cac87262e9d0647f4176bae92ef52dfc13c7a21b96e0b0a9e36cc3e1065a9c7caf0302047c435bb50068306602310090fed23bb0abac929634df8c326b4b07aa72d272baa6ac5cbdc72453b4a705ef6f18c273dd3365f4d8e51d1fdd70eeba02310089d729e39b6810d25f1f44ffbc829ed67a0764c8255e006f50e3d05e5e27cebc493c9d93d5c46b8316e32115925654aa0302047c435bb500683066023100cf30aa5494b48f8cd86a6d0d61c2156e44aed61eb6f58e3502f031e9d2cdf7a8314f33a975c7861aa7919ee81f97f4da0231008cd133677bea166f98f7d0efa364357ab9b4d19c490b9f24e49c6b58252e421e99a028fab6a3b1ff7036c3caa0bc7ed70302047c435bb500663064023017e110d7ec19c67abf7fe6450bd12241b8c126cb4422c1bfb0e80e288a294ca2d7610a8f8774ce00aa67c94e901cbed402306e15751aea393de245dac2105d38be70281a02322bb2fdb58c8523acf35f798921ab6b79cc31f6e055cdce7ff60a73800302047c435bb500663064023051064afc4d80996b1756eff2483fbfe3e2629cce8c965ec853100abbe161e8890fe5c893b35829d01dd85cddd8b0fcef02301b3aae50df7adab631f7e4b9f82ae860e5d801925545530c813f0358ce775687235708c0320c001c1378e8fd87194cee0302047c435bb500683066023100ebf5b9a12b67d7ce588000989fd28ee19b2672ab18ca4107322792df9dde08af750aa9c10a477d13e36550211a92c93a023100c0e3137db6885627f7192094b3b89078f85d1c3ff39960bfb00bc060b6df51c2ca0f6606070f037da52dab978106198c0302047c435bb5006730650230240604d810e8e64e5318c91bb5cd9fbc38a3d899ea400aca28768972069975b2a20ee46ddd184bc4368de9da3699830b023100889b00e15c4db9b3185dd8388b4014c843fd7385710186499dc979b22dbad6b4cc539719ee720bf70152f14d79edb2a90302047c435bb500683066023100c26cab31c6e9bac356ada19ea85d7f7b360eaab62ba55ed768cdccf5e10e8680661281db7ca8b42386cdb6fb9b9818c1023100b6dc024b46ef5d47d65f49d58a29c0566e286bc6cfa79e0c4707311b043e2961a2261bc258d65189cd2a288d2dec47a70302047c435bb50067306502303d1cc27bfcc5a433aa91a1a7438170d5ab012559d8b56ddbafa656820e6019735154a1017f99a10d9d82711b4de20aeb023100beedb66ddea65a25a63923c3f9222fafa45630655b2186d025eb86326be0bdb57e43859321de285c1de39bbfeb7c617f0302047c435bb5006730650231008bcc849c3c6370cec97c637c038a831681bc1a32b0d31630a6f9d7cace896dc6ecae96a2ac9d1a485e2779ddbb4ea2f40230011fc716fec89cbb9f6db16ffef8a62af16cd2ac2042d865c1aafdcd66757f8c127d3fa24ae766b86f646792832aaeac0302047c435bb500673065023035951ad8ff675aa4947c29e60dc19909b0455a516f9693d0cf2e362a4a1365015537dc779cf162b5dddbf0dd9df16b76023100e59dc5322a46f032a79c3af540e1899c17ce2cd76f9928cd7b5acee2f0d70ecbf1dc5a17e682790a8679cd8a9e05e3d80302047c435bb500663064023063f25e93f5cdf135e1623b1c8cafa5b5fa1459fb717ae26fc2ea43444d51aa8f75a7297b7ea7e241f254c09007d9589502307649faab45b40c55ed63be9c61c20b9900ecb591c3ae844014df2980073527fb64779729792fbe3f1f66603ce30685f20302047c435bb50066306402302dc763581c5dd01b9ffcd792f747407ab66bd879f7382c996ad232b2e3c44af2d732597d44428a1001b3af665712c4cc02300542cffe7c52ab25f77a064cbee22eb7a6eb0d0208c54dc3ebccfb5ae0dc2e4bdb822da27eb93d0268cebc039bb8fe0f0302047c435bb500683066023100f824e4b4c3fe6a576f76ed8e2aaffcb41c8163745a8f4f0bf123ac2a38e48c866e3231dc1c1340bf01dee879cef13b1d023100fa9911d3ccbc86897512e9c13e80878014e10dfec5b192600417f578f24b24ead642772c2e6efd23db270e8de90ae68c0302047c435bb500663064023052277dc574491a600d6bec5bfb9a53187e9a880c31aeabc3496752be33d76489d965e517f9a73b471035041c52828a4e0230716c6d7929ca8948f853cff536bc5132d6c31780e5c2c11a98673d6c899713c14171220b9e829bec15f4b3b2934ba95a0302047c435bb500673065023100d0adcca5c440735585cbb302c35096328a4780468f687d56c649c7a9915d6ecbeb7e3653773a445434fa5c4df23d5f9b023048956f1ce3e3a2ec5028661ffa6832bb6e28440105733554a9ac6b6e91dae15dd3d7a83eb699d8789de2bc958783a77c0302047c435bb50067306502301a6a32cee9987faf73638742d6e5bea475c32b0ecd94cf81ef2905d6a0c173087bca1ad8071077680b6d25454754a2de023100b0859645289f24f91c3247c8d0a84767050c122b1b0bde132985cf92ec7406d2f935c550a4f36409e56c45fc72cf3ba10302047c435bb5006730650231009440503c18b1a4a6d375f7c1cdc9a54dd779cbd98c0ab5a09212399e0bb8554a6fc0a1110cbded4d9de4da4d20cda1a002302dc343d614c1f7318a68e785f2fcca5289eae18e32aa0c9ad3fe2b30aecfc5e5f61a7c724723361ff78754f9bfcd4b7a0302047c435bb500673065023007dd0692a2008271c82dbce80e604344a73aec08916dd561a8e97588923d87071445e05635a820af7ab2250cd1a9576c02310080822aeb372c0515a102afbaa9e6b931b8e3dfe30ba08e320fee03300fb7a28cb233d59351537a2cc02225481e606ee10302047c435bb500673065023100ddbc622d12a0630ac56942240749fd16bc5cc4cb177d7dbd4f6efc60a5788c07cd0205ce6c426a5208d9906cd6ded11302303aa3c6d34ecf68e8cf7c9079424c4068898779d1c5368a761d219cc29a297226813f545d585dae8c4370383df22106f70302047c435bb50066306402305b33178f208133396f1228d450af02a718cf6fa0ff133f8f57ae931ee0f3b524163b2c0f099bd9e48f5c0e0a22ef64bc02301c66a31c99d9ad17c4218288d44c61f8211eefaf240b4b7ae336e0be9a81979554192c2587c61bca13a805220882a2c00302047c435bb5006630640230188d21840fa5f8a98462b11519f4d0f321ca0c0169a0d4da7a15c1a8af8568278ca681430095705d78d0ffdad52f9bd802304e7b98f2afd531043352d8cc362b8d6885c358ad339164a196f9a2a4872b76ad490a9cb046d951fbefa0eb3498023d5e0302047c435bb50066306402301ae57ef34a3d727da36069c22f5abfd1e6aa23286a83b0122537275d7ce03500ea8ce9e997271305067dacd730e2ebfa023052d5bdd5384dd56bc5b2e93bc81c2a164aa74e1d5e53fb1145136812f5e6d4e28ba1ffb12b977ee2ddacc68ad71627d70302047c435bb500673065023100fb5855a68f8a3cbff28503662a31fc361e24a400040f1eb2b332b43e6caba998701d39d0c9a5770d87a0cc761d34f66302302b2bc6b34e4b47f3cbd476cd1e1c103a3603d0e7978254612a885a1ed7790ef919c0ef24c6f3c119a8a96745614437f30302047c435bb500673065023100ff75f4e00537e442bc4ca253052c18b02ae904740a18b0a886d75eab8e15b7dde6c95d3c11e549052a7922687732832a02305ce5616dffa2f1e20268aff1e59af5a9a1a56691ce0eddb31a39034fc28bfd11a042e373752f0e0b3d748c6b4ffcb0db0302047c435bb500683066023100b0008c66f8e0c1341cc884d457149f92f3cfb413dfa35c33f6b42b5290d6c3e4707dc71987ee0f42ba61ca61825a84340231009277a259de2e83668c7e42d3c77aff22aee627f5bebc6df628c9da28f8674f430e52b133166129c92dfabd79e9f8dd9b0302047c435bb500673065023100fbc434288b824d9fde5fc647e407aea6836733e308b96a2012b088f93c6cf79dd6a5a68cdf7bcd55b65b5402c735743102304a5816a037ea97289547b8db65441c416ad33198d7f0642bb12dcaf1b332bc833717d6ff510d2d2eba1accac101b24930302047c435bb500663064023039b7a6edb518510ca0dfef4ddc1ab46153d2303aa270f9924894288295a0f438398d1dfdfb9b9d0aebeee22df94edf2902306b1fffc87239e3f5593f4f7f68c15766736a86ea86cf60cb1df6dcb698273cd7cb701e3a498d1efd007e5f0bf7a8660e0302047c435bb50067306502304c7cfc25d595d59af6cfcb959aa4f4ef5469da52f189f77dc34c3b94a6d373301ce5ba130d67a44ddac4cb5ccdb0c809023100e9059e582575fa63acf5ae7db5698489eb925311f723d9e4777bdef78870ec456525496952167fb8568c9270c8a4d92f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023014b972702ce9883fa3f54ccad0ce5933aad2823234f9d9c517010d39d66854cdccd85e2d906d6c35069f913f6c8b1bfb02303087906ecb51277a92fb8ce52d21c054a9774fea313d3147ff0fea74b5a3239750caf631ecb8da4cd13bc2200d2110120302047c435bb500683066023100f4d9068d67ea9112d3b9d63d343a156d7e3816466a59e27ad495964966e4c0de86450995651d2dbb46afa641e42c9c6f023100d2e92a7a5d6fbd5be672abb882078541ac4da13773ae7f885df130ab96a67c88e2d3b9b09d18f485c9965b1fa9fb4b6c0302047c435bb500673065023039a352fbb9262f71d054c1baca62e18dc20e74d348f3d67163cdab7b967ee414bde793ad817dd3cfcacdd863056530b0023100f079ea3d95eb652af92a808e278f79c534b622e982023ed9d9d018a33257cb1057c8e4609c1540e536e0ff902ffb687e0302047c435bb500683066023100bcfd3034e9ce7bba1d95cd73516cd399d11b6ac428c27b3c295a45999ac1492b0de6b8c35511f4f7c99cbc6e8f46b62f023100802b430f1e922740ec85cb6f647fe913ad82897394737284b3bc16f083e872eaeb0f0ef9848a006ea60a85dc2b7c3a0c0302047c435bb5006830660231008c66b441ae5123b8e848dd4a8365b867ce552b777339952a68130f72ea8c113e7ae5baa7a886089f02df2105c1b5eb2502310094cd381a9e8214f75b20e679d610ccb53046b134f96011fa80e4cba0643690714c53d9e4131117e3c374ff302f9c69c00302047c435bb50067306502301248a0f545b96a7065bbcd652eb66a7e6e8bcb5e6e2c96985352cd5117f1b3bb8001cc5e8a88bf6df52f5cd799ee00130231008a9af14c058c62ed12dddaaba12a61484279d51f23d0264d0359e534c69517bfa42dccc2c506379921313b95a5116ac90302047c435bb500683066023100d7ca15c5f1bb3a7c7b4d5256f1d0e11e76eb74bcd23f96298befe0ef4b3a72ebd335a1a2de2a4b8470978d00abf78f55023100a687a7c1ac7ea0f95f874a76ce2f776b31d69611c5244864c76aa00ea611888a390c54c5044ffa4d676bfafe0d90abc50302047c435bb5006730650230214b9c3cb048b56ed3e54761feb63e5a3d09e10818980c2f28d7115980b5f90b63d27e1e0b5cea39ee5d07c862bd4a28023100a2c8823b53da8aa3fd496a0f14e3810dae362321aca4df60ab1b314abb02c6d6790adfc49bee4b4301f13afef950e3e70302047c435bb5006730650230776ba963718ef0d197f039f8313c32c539e8cb383fad7e97f62baa76ff498f77a0ea7630852e59b59e493340882263b8023100fd068663511e672454b550b8361fb29cfa8aaf7f2b194ef3e4c61db1e0451868d5c17eb8c774543a0300420ab6bbe8380302047c435bb5006830660231009f487e952c77110b7e5bd2d1fec8893959d55d73a42e4a6d81748c6d2305874f45cd37430ea2cbf9547a4356143e7196023100bd55a27cd372064b0908228c67509d84047878fbd1295499c0636b13e0c0b559d0a833f3f3d953a1ba1bd856fcfc15910302047c435bb5006630640230092ddd331b947b5f947e39929254ff888874f631dda085190cba56dfa855b59a4ba9d5c4bac01b3a649170c3f03ef24e02306428e6f85087034d91bfcda86a5eec05c64a8759ffe52171af5e568c7d3264ea91126159504fcbcaf3d1e0b9a467db030302047c435bb500683066023100e0eb599ec969d0ba251271a2f2b6f393d0ab585b03a422d9cc76c24c3433e71dd4e2a0e6107d659188be13ac68be2a44023100a70339f9e500ed4d1f4d00be729eb7cb82fd06dfd07c1224b4c220a59f8ec1e03db3bb8b4314a6b9d713354b1acc16f30302047c435bb5006830660231008262062893fd3f6f3ae702749c71594d49b48ae557c966e086782a8833377ddf3b37a75329abc29fe9635ff4c650483e023100ab84f7ba3e8a73b8fbab316418ea0fdafce0eb389b78055c7a203b1f6c9270e846a5de350470b879fe22a7aff83278af0302047c435bb50067306502303e4b7a30cf61748374fb6364f2f7ae5c7355643805045a0fc25473d4c34434fd9228e683c9eab085742120831f2b2811023100e40289f49dae4af1f25891134d3c401e83fb7b5bd6c878657bd58211adb1466738836854d077f16d99a76ee03c66d25d0302047c435bb50067306502302896cb6ecad4d8cfb181d1c9db6c4d2bd4fc0ab82a7666a568bd6eb00c88b0b1f9ab014e9e11bcac21e22f87fccc19dc02310084fd84796a14d72f33cff4f8e90f81cc741e6f77f608c99e159335ea3e67684858f709413917d5451618db8bcebf4a750302047c435bb500673065023009964d727cd92e071ea0482a63d324a43f6cfe5986c1dc011ffd0974135ed609dc3c1e754d23a41a811fbd1f9fdc2ae0023100eec87c52656e81a518649536c5e0549cabf78884c32d7aade521648342c64791bb2dc707274fd126043e576bde03a1270302047c435bb50067306502305128b086ea9b061197cec45187ac395a496913204e1d4d859063951669cd6a729a00213ed86395ad61737910f1e62fb6023100a7e07ba1b71c663786ba0e7aa2daae4f5ad7e8f873318e3b7129ce26e7c8e90ffeeaac56b51b8701300e152919d4ae3d0302047c435bb500673065023100b1b8b48fd40d98ab71973cbbae2ef3cdfb6ed09553955eec28d0e037f149a557c53872faa2e869e40253bc2adfff237d023046e94f2b4f571acbd786c78811fcdfa4c785e2fea878e05d150b804a41ccb5f1cd9122cbdf86adf13dbaab28cb1351b80302047c435bb500683066023100c96da3b51ab7e20dc833c0ae74f7b37bd53dccba36c646baf8996aadf279d67bcdede2ebbc1c32760a3c4ad11ef4edda023100c40b33525479fcf378085d2ee20405866c9f2eaa436d2c929b647bc8291189f96b4e4c26fe2ebfaffbc2427c61ec92180302047c435bb50066306402301d5460f771ebe6fa7ed5f9619b59c89b5f63e8961da6062c4068bcf9ceeb3ce8e39e87057c46c6413a3085d33130227702306e2d4a3a225c55a013faa8a3427cd12462792dc31c7be6ce75063ed896c3102a35f38fa9565a02856db2ca7eb2725e6a0302047c435bb500663064023025c0deb32ef76b72a2c898d3afeaa2ea40e4ecdeb06d31ce309bb44cfcbb4b3e58c93eebcc5cc8bbffa9ab38a8a083da023048565f503b57d85624826013b1658b9204a94ccd50b23a7233099ad7cad47904d03fb1834d090f6d98659e40a9e8ffc90302047c435bb500673065023100da4d4844ce347dc6ec5b7f16b7d9d8b710747d434b05b32c8171107d0d0be660ea3d5fef87aabbba7b6609b2b75ac4c90230142e69957ed2a8ed6872338b6f06725ff9ec17529aa9067afa1da130cad7644a19c1b30d66de417864035bc915b02c430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a935dae0a5f5f8c374f77ba9d5f91cca40288aa63810ee9c01b7995075207701c5c2d392863416e864250aee17ee49f3023100b1ecf3b878cce3867cf98c720c1c43de660bd97040c44b2c86e96e60d86e92217aeeaf6ca3bb0e6e70794914ddd001ac0302047c435bb500673065023012e4a1aff81389ada8794a2ba9184b90e6476047bdb69550ae03be80c3ee9a8c308267a407c26e157e6bdc06108d0704023100e9a3fe359265a82f301c03cc1b7340db0c34ba761dc398d29bec105de6aa4847eccf30857722844bd1a19b35be555e890302047c435bb5006630640230444e5917e1e44eced874373050b8345b303cd9a9c2e9a95a2021d6e3ad48b23b1b646d9782622fb66809aadd925033ab02303b89dc620d79dfb76478d0f8a7f8716326b6d2a5703e216a8fa4caac871803ba80fad0f9c8e740a52d52f8fe5568fc8b0302047c435bb50066306402303590d9f3b46307edc4937e012e369befede89621bbe1a914d68c517da29568e05688b68ae43aeefd28309150c5a3cc210230248caf2fcb9c4f9d5749218dfe20b06e4faa0a11bee70ebcf6fde003e904d3f2455f0ccde4256f84cfb36bc9a57adcf90302047c435bb50067306502303f05b8b1239cc52d218d7013b3c64427cb0716d9d39bf6b09ac332720f0ea024716ed765be31a27bfe4ca74a93313074023100d038e57892e01df5427174a92f18d3aa8d973920c36837244305583681f2cb6808c9d1e8d7b01ff4c7003eaeda4cccc70302047c435bb50066306402303c8472d2128d5e02559b2da0cd0a34bb803331f4b2b3c96de672adfdd08b640cc7de07e35761d4083c43efd94cbd9f74023064ca173aebdc10409c52d77c6932b3250c29a51cd4a4cfb453026aa3d1159fefb939d274fc6738c40370a7e1c913c9370302047c435bb500673065023100bfb8223c1d80e03f75f6784dab284af9d2c8ab7c7cc3e119f55d0041a7dc02979a81e54c8ae14de3c8de639452aa68aa023059bbbdfe3544e3382eb23e7f5abf077dadcb37918465544ba8a76371f278cf5915a1d946d73b3be439f12393bb923afc0302047c435bb500673065023100bfe40539d597502f98862e2fff3f989d27da77bae82d0798ef42fa5f73b495e83ad8f2184ca98bbdaad7d33ad0a405090230184bdad38df01af92279682dfdc4fd0fab3f8f894a3b5cf76d9dd335a60e6221dc6f5d233645ce3a04b897528b001b370302047c435bb5006830660231009e2c5365b5c4c58e82a5be0cace8c2929ea746dbfa60e8b4d3cf2f489f521ef77c0e2718c4443b77767495a4fb9c2a25023100cfb5729da3abe1c31936ddb73ac832f578b4714c01fe41f8795945c113e4a7ec25f25bcec65c1efb716e3670b38c992c0302047c435bb50067306502302d301303b5c58e30baf4f1f2df3103cb4400a7d413f4ca3cd89af545e69814e7553ddd547a8b72c28c110260aa528b9b0231008475e2132b5d79edc28a886d4c4a3e9d5cb919eb843f0847888b41cc84db6a78cd0ff44242d66533f46ef0327c597d2c0302047c435bb500673065023100aee52725bb7e681647e50134367e940d9a9b14d232af900be78452fea3c51963211fd08c900a9dda7fbd4486876ee33702302c9f6193179bc8d3e4062965a6f68360a26f2eecaed40e0557d0dbb11485d8832e79919f6aed203cddcf61b9500004c30302047c435bb500683066023100eea58ee047396f8475d5506190528e13cd620e728001be243e2fee74157b220bcf4a42c25cd41e54aa53564f3874b1ad023100d220ca2c2ff7d0cfed4350d2af8fd1041b2a8c432ea1a9b2ba3807ec3bae1baeeaee0716df9e2a9c2cf416c6398a9c810302047c435bb500683066023100b43949d14c4d7f12b471c1519bcdeff1b507918527e6ceced96e8e86041d9d00ad33663e8ac4e68cb37b3de3be989d74023100f19de152fc817c9d80f66012b497f936192ef5c89bec41c28694b951ba3aa96a7dcc948907e18dae81d1effbc47bfff00302047c435bb500673065023074bc6db8eee9b6d56006dad75d92c82c3d20ecb983c9a85ce2f9be60d66c3ad7742e33503512ecacb519a03a354d2f0502310096bd9338a38fe4d45d412504f39246dc81399f999f93a213492829ce0785fe3365a97cb8af10ef7c226a77812ba7bf7a0302047c435bb50067306502302b4283d4073066183efc35f07162c60cef43946c9dcc81db5793c544b2315f4d144728e48c41a19f2ea04e57cf498f4d023100a0763756357d42494035196a51ef36a7c236b2e7dd3371088658589f143902fc5e65a684fe71987cc69511a08e7e2caf0302047c435bb500683066023100f05c3aa79c6bd87f5bc9b04dd44757f5bbca0227a0cabea67fc0c5265bb34ef9fc0c20a99b4cdc24874061fc1606686a023100e0da46945c65e464ed42e690cf8aa86a513652bba48dacd7445f677a5a579405d9c72cfd7263fed56b66e629cc5991ba0302047c435bb500663064023054eebd2ba9ad4fe6b7240745c959f04d8e5c224ed00c2ed944642861dcf9005d784e0475818e76af1357cc541fd1195b02304400d5a62ef4356dc74a4421aeb91f731645a285215c31755d436144fb0abf30fd3a6949304169ffdec52c9da3b25bb70302047c435bb50067306502305e10d1137b7c2123d29422085acf89e77bd5d93914024ac17b44df3386676f0c48201d95756679b32d6a199056937b3b023100b36bb6b1bbd7f75d928838e1f6050d166191a26133e4dcf45ef080d46389ae748efeddd4020b9543e737cb87dcdaa6370302047c435bb50067306502301121d76e5bfbc043607ad0b4a3f66f955c95fc7d42dd79e55d9b8ed5d39f4bf425df9418b0c4cdf7fa65eeaabc9e0cf1023100fb1bc2fbdcd0abe8c99efd3e091e090936a6baac4d7252122d8757248e4478094ccab48473b181b85f8c341020c5288b0302047c435bb500673065023047ed36412da1ea927b68db6b3230e1c58cc5f014c0b367e6593921bdb5b39147b8674e8047cf88c7e523eefa7acf4331023100e79a3e7bb12f5e2ac9cdb1825cefde32847252a792effb0195ad54ec04e03f8b8fd49371d2d949a90e8b14eabc489dda0302047c435bb50066306402301e0687331f577864b27e19ea95e970ae9ae72e9579241ed2e39ceba0f2dd2ed0e97bcb7ce555492ea3ac5be8ba9ca8a00230790423dc945b5d6de4d7aaca724b148f9a4579f5528812e3f225a081edf119f88de5b5ad76f1b3ed61c0779d46db6e980302047c435bb500683066023100ce57b515d76a4709b38087920fd24528eca1f71f1006c8bb0f3628441d5758aac9f45cbef822d8cfd7383f86f6459f7a023100dd8af52f9e06924e4d2fcbc9fa1e62d1661b0fc084d12c8e26c9c8f96eda5a01332427ad13016299b8d09002030b3fd20302047c435bb500673065023010497b067d06ef963bb95147cf83bbff27b7375f873710260dbf0baf53ad3ce02f020994e72a2b72a5f6eaa745cb6e02023100ba4a53645e488889298698493cc9c58f8b11a9172a582b383a91946e9cb8eace6502be3116cb6327fb19b30f2551fa280302047c435bb50067306502310080e330fc28c2209ef99a109492807cb6ff8bbcd7d4a661a67ddd1fed7e0669baab0ec44dfe3bb2755f0a3828a9a95f5d02301bd8de9d53e5552e620747da501cb1bd8ea795a76bfd2eb656947926d091eb61389078b088914c9bbd1b0a03460cf77f0302047c435bb5006830660231008e6e027bdc64fb0b9058fcf29dcf44a967b7cbea488745d34b43f78411c0ebd5763fcc8e5c68268a335285f597f8e855023100b08041f49015cb509c71a7f971db4a53e8cb59d644fcbfecd99d01d7b72923e6c03d8d621c1914ca4aeb13368e59c9cd0302047c435bb50067306502303f3776b3ccca2744babcc1e6c9b95cae8c3e7e515d5b759ee09cbc7abf077b3c5b1451d0c079e425ca94d6b1c22d67da02310090d7c3a3348f079287eedf01c846d547e8a3f8db3359841f12bdbcc903c4b45b86d93c712148008071c9d0ac729d45210302047c435bb500673065023100c618f1fab1abfd0ff9264ada22ebb2158173344a39ec12850e0fe9bb9ad561128eb89b64f16ee0d82fe272f0fe9dd4b702303929cbd8f0bb358ab15edc118869a1db5ce69c971c844861e83141b6b5cd292654336d678d73b1b40470993994b1a8030302047c435bb500673065023100a8604fd74b958ea8244c321101e74eeb3af3bcedb4e641fa55e6f647a6e9d47866d262cb054ab03be30becc58d77ccd002306743c575bf7e2985fe18dcc261987c2717a8529986c10efae114a778da5a3cbc9fc5120e73e7d0de3660ca5f3f5a5cfe0302047c435bb5006730650230068f37d22ccc0826c0820f106398868fa89a73e384093c0392f75c543974359322af3b96dd26f30eb349ac05672bdfcf02310090c4a9376f5a0166ba90b6c1247e696ea48f541ec1a52342d493660c4cbe1224d6963cbaad4936523526f6c7a3acc4ee0302047c435bb50067306502304b5e9842072043563954ef3bdb990185b3a4eac4356a2c29fae7f76795df818c4bd051e101de1ddb89048e90657b20d7023100ef15db566ff2f9edd4ab8da44de9cac100312d23cbc5e68c4b9f3c3bede6c1f3fa389627b657945e91aa8c830877e7e10302047c435bb500673065023100ddba6f46e037792c69aa885d8c54dc13413285a75aab396a21be7fd2f979c7c6770076788042a46bc7d9863f1033cab2023072e1c05e11e1efab650c3abd03354cb0ea72fc77afa08f89e676c1cb2c6c13329924715cb083b4bcfd63c24a5ef0dbf30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310096c811d0479073c7cc8b2eac445fd68998e1dd36b81f66251071c187bfc5a9f9e2145573415aba9a1eba44b1a777ca170231009ed5960b419741ceb8d6a49f014698d6c7d78228703321a36d67187d7de6c9e906897eb9012df3efc0646d05ff9eb6a90302047c435bb500683066023100f2c38ef047f57a0d573868b4fbea7a9040d24e4227686da53d0a3c896f9778dc1b5e5143d4fcd3c433489296de618616023100c4f11bd7deb713d6d9ce3fd2e695be45606da638b8739c770c318a9690e901015e9a21d0b6ea367898a9545fb5172dc40302047c435bb500673065023100e2fc6d69e1c0e2b2a5af35311b8907c7c091a053502445ff604c40d28cab23c9c191f6a1ecdaef59549fc386e2afa8ea023041d8f579ec426fc86e5ad3e9d7b77f1634312f349bac32eb4cf542c9321cc8c5d1de8adec7672e2996d6e3f43970d6320302047c435bb500683066023100fcc5503119bba002f4cfe1501a2f287edc75289aeaacde96725c931ac78d1e8c8161092f35ce69578ae2f5abce85c52b023100a5339e445f6108592734ea7c790733a8e0e12e73975959137f4577f6bae150bf3a95b351b3090f294a2e9fed0a5fa40f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f76e9a80cfcef486a0a83da96f4c51d45ec06d31fd1356f2d44b88650cb1ef9b566dc914cec8d447c1005e2e22ccc770023100bfb54c7b2c25c1d4eca237150f902be2d75c3b4fe164be5fec56e26a76e87d0fcd61d015ecdf8b6a11f87e29c71b12430302047c435bb50067306502302bdb610b7ff3f6915459bfc636b0d1473854a4c0446252c76907ec2e9080046580c1718889ed0594a69b15f21a8c2b75023100ea12bc21ee07d1fdec39bd1be291257dc99359bad9860f86fd03e85a9adb7cf80c04a1b831392117d45fef8d434716dd0302047c435bb5006730650230169174b752c780511a97b87a6539f7f8e52cfa65af623fbf117b18e1b6331f6a1e521f8d7187b044940bb195e9ce2298023100f7bef034e91b21a5b5befb1cbe77578102c631f2822d28375bfdb0a350175aae1ef19fd6393fdb96e92bd98ef16785020302047c435bb50067306502310086bec55eea9fb63b62a8feea64d3208a7e8efd3fcd94248c684ec69bf866836505163628ca7b5b3618067d16cf22bd91023021338ae060d9f94a8a7c1c6047f5edd94558ae4cdf4b216e5021fedf4331c6cd5b7255096eec97cf1b06595827c2b6330302047c435bb50067306502305e584c4351307c318a9d8078dd915f99b6a1c9e038cbe09e60784dfc8d2b68fd8c0b6444f9de53759a9ab3b7377b020c023100ed5bf20cf9d7005c02a696ef8a82bdc0e8fbd69f09237231d1ffdb28dc5df6e6098895305251d72264439fbfa1192a460302047c435bb50066306402300d77bd00e3daf6b5292ca3ab98553530f69f51b9b19e86ccf53b428a329a81b2b7a59c635b98fc5f67e2759e96aecfc6023077fe87ddc1ee5ef2a53fe9307718277cf1ea45f4bab0763b3d779e7bd2a0274916000e39d442f4abb2219330841ff78d0302047c435bb500673065023100ef4154a63472b71637d8a80958c3ebb69ef1f5b661c73f764cdb81b1a3d3f5c6536525b552a25efd4d1f73287846a9f80230714e13f3cb3fca098e0d46ab4821884ececec3a5bfde6ae58fb7ffe816c2015baa711b22bf5def242f9a335016dc8fa80302047c435bb500663064023077bf27e04042ec4603a2c46addd16b262068b42f910727cf738139cec2b323dc0174519e41ead3ebb9208e6469a514b702306c6a6bbad9e4aecab38117a3938b4063b973245f67831c9cb652576c6646f5c71cd61660e12631ac1b17f498ea5ab34e0302047c435bb500683066023100f8ba87710d356edd46c733bb227907c551db1507df8935114aca5aa5df5b605d18724f2d5f57f963d89f7f1fb96ae834023100ae29473cbaaf7559052e115a70c8927270cf933e2c0cc008443ea814c0ee409f738b2cb5d2c937f6a07243897d8dccea0302047c435bb5006730650230057299e3bf6b7bffe7379be5c7cad833bc30380406188f35ab21ccda8da2ce8551b9c678d3a9be608887633d96855e1b023100a81787606c17e9828e3f589b9ba45cfd712f3379150b3a8aa810516d96a79e4d805b16ca9e0107812377c533bb469a920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e240a126faec496e2794d9e2c38815314d3e7c47f89805f131b934e1c3f3e6149f4b0243a6a32c18a6dd631ed46c236302307bd1f1e1b508c9d81216e919f30dde260023f610c2863287525cd79be5941b33e4f1187589b33d346ebd1da6576216780302047c435bb500683066023100b508b2343c2f4a83d6291c3e4f08cf377b8ab05455bffe9e93d74866d795e945365a82513f110fbb2462d99e72308ef2023100bf06725bbadd688b7455953106ac0aeb20a384852a18569329455704a036faf2c4932b6ffa4984b9c37d2c3fb98ec6b70302047c435bb50067306502302ac5e7b3af1cbe25dbe0cba2c45ef51dc1bf2a060038e503daa4118f90730c7477be316dc44de397d0240381c5a61972023100e6f9851c08b4654feed635441d00cf94029b1c9bc9b50fd34c01f3403fbdf80400af8e8b36cd74e0a2d7744a78a43d630302047c435bb500683066023100bf5dda273d02e4d85571a9c0ca3650e0e07d7fdb88912201ef22a652c5e54d4b9d02571874550659c4f41e59f656533f023100efc672572e5358d6a930f941c368c5b140d75cc03e51dc4f09b4780f8517887cc02e81ceaa5cbc3effe09e659372136b0302047c435bb50066306402305a4d77e7d0fcf5e0fab84e5f1796757f3816810dd225534d6b4f3219a627e94d81bbbca315d7c1b6e69b13163dc8e068023065a2974abfd860eb90d40622a4747baf99c7404afc4138b99f48a756005c8ab43aa80f3c2f77ed3bf27153d7ed41e8020302047c435bb5006830660231008b15fd01b3d092fde12e1ae11c86774dc1f7f8085da965b2a307386e0ca5bf91493ba4764fa45f0e487a5c14c0064e12023100c81f4434dfbd8410232b76c59ce8dab8ad3ef7d0eae4a4270e5bee81d76f7d5467737fd2ae27f0cf96e626f518ddc7200302047c435bb50066306402304fee67ff672028b8545fe2d24ed6ce7ad5a856d16dde532a36e0006a52f10713843929682a45aa04ff50b09eda51091b02304b3b203c0533b57ee24c173954aa5720087af7e4523eedca4c74a697c5156ce87e523648b4aab8bdbd2d9472a32ec2eb0302047c435bb500673065023010e026408ce28d1309f1b2f4e37fd07b0ff998279928df40469c5bcfc58fa8a6688f3cc82133f2a4ed2630f492602e4d023100c26f921430c78f3cbd36cf3b8664f320efcf92558c6c645a305908e4abced8fa6e85f8473fe4d001c4527b4e158253bc0302047c435bb500673065023100c889743699610766daf56f81284f87033e050eb94179c08768d7cff96a5ce4a59267c8d634900ecf63210ac1be3066290230295e51b195e07f9d91aa128ff1d69fc0f8a412ad27b1cd0748b2f75f5ecdad20346d5d2d5fca426983fa5459bc67ee920302047c435bb50066306402304cb118a31bd013481077d4f69e6fed6d653b8cd6639c7511b4eafc9a8e100982a137be154dcea3c52828f0d86484347c02307492f87bec6aa257b706aa5d414b90496800580a584d1bb48fb430d9b6b57a4d1c8acf865f9aa249b090c5ac58cd40430302047c435bb5006630640230646ec6c65c32c85a331f8aec2d2b9e2b0f52c902e5db819479512fd3499251cc7bc9883292e3443ef2ea9baa7102eb43023012dfbca2bd3582912f0acf21c61f7a00355dd258c5f40f6ad315f66028864438827bd11c6a2608ad24e067806ebc33370302047c435bb500683066023100e338e74ac18b09fe270dcb7527a4bd92ede0f007996f215b698034537e1061c2ad2236f73e27aff5a4ac75636c954292023100d4c05904047657813e5c3c819633772edbbbe81364814d1446ac83b10680dfe42ba26adc735a4486aa6140930c9ea9950302047c435bb500673065023100ab07d743b803a47e259e296813994f005c6c7555db6425f81d301871dd2938bf3eb2f0f77ec210078221eb814ab3e99d02306344b4cda7bd2b83ea80b38616b271911bba3aff95922fe3945a9bce23a78e2fb6a60ab825e7b70b61e11a817d4b9af30302047c435bb50066306402302cfc4b3b4e041aa9ba8d1ee984c0138d6bbbbcbb47c5039abe868448812ccaa746c1b66d10c3f89200e1ee38017eae620230343db758d422b61303ee2ec6ddfe63d4c3b6c3c40a0636bc5362c60cdeb49ad19dd95e5f0cca96abd95d04bb40c47b430302047c435bb5006630640230303f51ed89a9c262002f3eaae797f075674ec3f94813ecdac0aa5ab356eff6c0bbaae9eb89e186298f940d0f425cc7a30230694f7dd9090b6f34973d4b862b22c81862dfdfd8464517a424f01422d4ff00a70a99a11bf25a697137843efdb1deb25c0302047c435bb500673065023079b47c01bb08afd6493c6d3ae8b577b458756b6e65217f42eb1270d4e1bc5f681dcc6261f398633eabc49706199c9cd10231008f60b17ef9f779a905b5ad2336bf7f27becb56c690f8f52143e3442a482aa9ee5cdbec1b65af1198efba8354690a640d0302047c435bb500673065023100a6e365b7a090e134c0ff96abb9249be8865282878f3a082550396a3d759b40bf470aea86b04b39954a5c0a96ba66daa202303d0887a023464d70b7cbf037ba43356aab07f1284f873dc1052479e07107d314c0d668b84d5d72d9bcdf2bd369a74fc60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230027319716d4d467b2b39a808c95722d2f88538906bd37271b4774e3b2154716a1c3f9916810b5c8aa80c696060082cda023055a3718b6af09dcfbb6c9edeecc6ac5b3aee9dbbaa1ac4af90af2029d383c65ba4cb8af8c1831645b6b7b83e2d3c67f20302047c435bb500673065023100ff261f9f414b35a059aa4d1ca70ebdaa1d46969f60ce2428e9bbe238b604f1353ebceb7559480fc591d115c076ca613602304087828eb7d3a386c47c41f800d9b30655fc7874977c397bc7baa2cc68f5810ec5fa1b60934076a5a038e4694a1b47320302047c435bb500683066023100ccd7cd5864d1ad34cb57f4b453e699148c3eae4e8132c2f218e557bddeee2101544b36e408c8f8346bf960653cabe733023100ffa488649e410fce1d3df9ad2d1302d1ad87f725ae62f694d0c468000d9b0a9e89bc54207a87861a4a621570ecac39c10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f5bd36c657e6ceed41640dad7627991b419c97413701803052123a7fc63df0a385e22a22d5e0f6e400e388a22bf53a85023100c7aa34499763879f7628336f2d31ca9dd8ebf52ee326848bc87a63b312c278a3b91f34fe9e97e39486c18db28c1c8de70302047c435bb500673065023100b3c8b479bd26e935847d849276c24a6a672009caec1897d4f3e01341f56b491ecefd6ea6c43ad681822ff00c5ba4ae88023041acd648685ee93a60e6fc35fe76e3d7f8a35fe9ed776dbd6b1b3a0cdf4b38781138fd7309347a3b7c8bb97648af7dfb0302047c435bb500673065023100e05831b35fd1a1f586d3f54aa63bb79230adb860e9d09fc80382d3eec2c2c1dd54f74f2e1b3dbbfddd428fb0fede2a070230420a8f57aa6925184221beab73db54d0654f7ed14b999834a5df7fa37db1491bf09dbee246ba65be1f50f28488e519a00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023039112d7ff8938db95f41b5ed85b518cf7abd65ea61dbc4d9b7690e46b49d80227a7bf6dbe7a046c1d444bbdda7fcbd3102300736364018c604e851d6e14c5561bd4823dfe145c1ce7bfa9f2fa8a71b6c10c17b72041be5902f6a7944da21aa9ae89b0302047c435bb500663064023074691bd4c0e96033e33f5bb9a24ae7a624a1a9544bcef0eaaf448dfa7789a9636263ccc43d2634a60489ecad292205b9023042ed5c4d43f4d85a151bbe56d4d5410e6cbff5d276145d77581bdd7a413a2bf40a7602e919188bfe97ec2caf1db437f80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c59d0b53f699c07a601a7e49a85d9c21a39d39a6b9eb48b710a72cc9567febc73a2fc58072541dd4219e1adca1fcda1202307200abe47f0b5c534834996562af67e55eccf6a010c22908a31b8f35a70123e19da3799c1b6fcfd7b76c7e87f0e2750f0302047c435bb500673065023016ceadeac93de4b54d143ae67c8924a67f1742f473941aa7d09824b8a1422aac3e49ab13ca65d5b945991892ff33206f023100a946c5280726d09a12abf801ab3f5291decd05bc076d0ee26a756d4bfdc124449cd71b4cc4330291427fb54bf46683d90302047c435bb500663064023060cee17316b26b9ac882ca792dcee91a1c2a1050baf4cd4399dfcd3c16132cdf25b73980b539be99df27baa6b4e273b002305d88a471069269eaa6e34602bd140086ca74d92ae31e8d5992d6b2eaca430f3161ba22dcd42cea0b5e0bde1162705f970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023028ec8df76c9977599c19f2863580bfa96361f3690db22a59f2047c82833a0765d02b63a1421d19d97da9b172eb5e0cd1023100a713b694e8a241c1719b3b7900b9741f06e8e71af6f51ed0fd439d23d30bfa0dc7fa9e3be893a0eaa16fd3370ba3d6f40302047c435bb500683066023100fb11c92f314f3f33ddd8ed61cd39441c7763f97fc01f4251c76a558a8506b9e2e438ae3e0c8ee5ff0d7dcbc1cc181800023100a77a1d03a4027557eb48dbbd6f5bbd5e4e35707309742bf57433296f8cb4e400da0c8f3297e4d75da65a61355c58abe00302047c435bb500663064023031ed45985aea0eed94543f6ed607024a2bdb48783e4729a9d22f84f179a53aeb8c87d6231c30900a568822b87c826aca02307f261d0938c433f023d63495564d7e4727b2b0773fae973448aa9ad869e8650893dee2db64a9b428d14c348cfb67c54a0302047c435bb500673065023001827fafd254f781f521c8417019d3872a30dc99c15350c1d394959548158b2e3483395bcc15d338830e45ead013ae1e0231008a696350679a3ae8d0951ab4dd46cf09ba5063e43d5509806825ad346de7fb5c1d366728e5acd4a5e3462c1d4eb308d70302047c435bb500683066023100e5a30d91f989a37f03c6c66f97e824cca76b64440aaf299f497c7a3c0ccc29b58577ef11623f6abb0caa82824670ea420231009cc4579853a5000b3ef585a49c9414ed66118d37fbf91a433cee3085efb60335c46b82f74d8d20a77e92ffba9201a83e0302047c435bb50067306502301c211c6b58727964c48641fe0f5b29628dcb04f6f04b69cca9d490558e5c30fb1e08d372903abe614744f85aee6876b3023100b761e8722513d753a062bc535dfb6101da56e7d7f1da3685f0b4f0805591b8d3d0fc54a3cae168280de0fc7335c234290302047c435bb5006630640230118fde9a6a46afa63547e54a19d8961e2f0161f10404ae54a12527c06630d4745bd1d9727d0bc3fa791de7abcc7b7cc6023073573df2b0cc7d589d8dbdbe925cc17e728c64844d871ba520218f0c837f85220db1b738b04588daa500eee5af39648a0302047c435bb50067306502302806183f3d9fbe48aed54421daf79a26785bd34a9f40d2ccc3b1523beb01a876d5ffadeb5dfdc49a0d02ede76298f098023100cf3a8e00d66092b7669f45671e1eb37720af7befde34bf30b20076623c409dadba1bf0ff9f9c627a060c0b52d33fb3600302047c435bb500673065023100fd9d44dcd7912ef2c87cd2b53e0d7ac1c9e420b57ff8c19b5764af16317b4b502b0cc9f94ce003c3f5ee312f28644210023029000308893f130021329cbd1b94aa2bd59ac394ba8cad906200441c11ef129e5be0ed3e7a4add68902b119203eae27c0302047c435bb500673065023100b2e029bb72a5d3989b6871abae2eec660369008cd2f88468f509ee0f1cdf86bd818da9caef44ac6b88a7f69d55b1a049023056aa477cdfbdd98563b2c31df8c67cec904928bda5651e03c2c918970f84239e3c35e008139659f36b451c40df9c37fd0302047c435bb50066306402304ef05fc70520c0e1265d04bdcfebc30613f9cc1c39d936addc55d401eaabc068b951ebc613e66a01742354cdd21fe13302301b8e5a07e8814d40adc7746a058b52c0d6798bb4ff9ac37ef7269718cac9dc3c43e721c034aa5dc3b813f8b1739c79370302047c435bb5006630640230491bcc78e5a3a57617648f8169ae4f2b530cd7d951f5ee2e2b3f089767f44d602d7468ad529ee971263dfd108560e4a5023034bf1d7ed4b1e8663fc8571ae8de149835f3d89442a5ad16054ac08f10c864cbf91c610eac1cdff0508a77d167ff3c690302047c435bb500673065023004c61fef74b5ce2d2d37fd87fd91363c114b8dba16031a8a2d9e29ab3b357c67cff0bd2fc9e53af6d96084b67d57fc320231009a4ae7f0894ae15ca7ea51a95aa99ac3e5ba40bd829b19ff4af17169e386c2aa8da47248b97624aeee946ac7c22369590302047c435bb50066306402302e3991dda99ff3436832fbd75d121df1da70c31ddfd14569d84411aed82451f4dc2b65f6d50c515040af58bbf1fb64c402305da3bc7f99efbd5c9676cfbcf80e06b983fd098ce051e11b99fb11a96682cb1e1af15285c2d5aca3bca1de2869edc5c30302047c435bb500673065023064985233a35492299d80642690f27a0eac9b84e4c777afe7162200c36d135f6a3e5b7a8fffbd90b3085055d43e392887023100cb5b17f4831bd288e111f753d23a9238725c34af926b0673b673d48339125853726dd98dfd1cbd56807a0d26037335fe0302047c435bb500683066023100fc88b9e956469cf4d4fe10b8b598e7df24301e145fdb73a3fa5f721a75e0c5ab8e61badb17886ea0a7bd6e56a34e6e2d023100ee26633dd81c30e419deeeb91304e953327e78ba551b47564a2d4f7697562515fbc164c060669f872b6f75d8be18e1000302047c435bb500683066023100da500375e3bee2d456fa01b33efc3b72bf601c8f25076037420ecc9b19789a002f0e51b8fdd38645e4e4744392a44a8302310090910e93cd95639f880a6a2197f773dce8be468ec86aaf005346625e8e6e70b9e376259e611439f515a02e5456e72a8b0302047c435bb500673065023100a0208d22c3a87bedd2f212a0484c1518da0829a35dd6547a225e5f2ad2bd1ec938696a60954bcf8cfc33aaeae8d0b9570230421edd7be3d8c9b1dc94347aee821ec0bcd73adf9c773a742a88c76004540bc1d1291c8b217fddc3df009bb12b8388ba0302047c435bb500683066023100b1ef6608f24fedf4c7535c906f3e5e387f81ec36f25ded74baddefbf5ae6157e739fae8db9543cb7f5bb709eb20ab5fd023100d6a19cd920d6e39bdf4f1758054845272cf83b827e4f23180739bb143687d03c707326fbeac77589559cbdefeaf8fbc90302047c435bb5006730650230692800c36b7ddf053607b86bcdbce29af950e250ec16bf9b2b628c11bd3705311fcb5e07cf1eb8bcd8ef40f3cd52958a023100e41efeb859e4bc0394a1f0841e6b9b07e6afa732201a218c70d7ee138f282c29f095381b38792a2eea88409bd08b57c70302047c435bb500663064023076a2b7532bdbd86dd0f692afc74bd59cf90cf4aa1d3999160f7085ee3fc2581c5f76e89cc103ebe87e396a3dfda4676b02304ec5552e60fbf108746233e6ed8f3b641502fdd1ad3d42e4c6877d32a4a853517d8c5b8600d531958d7057fa5170f9a20302047c435bb500663064023021a9609142af96158e977bd7da1059ca7ff2673f5bb34e5832fb04f733e33ef444107f877c07c9c8abc98eed933c7fbb02306eca058453b12dd83d53dff61fec48d9fca4f660fb4d0c231be9b39114dd783321d9fa38b937bed1468037d187901ba60302047c435bb50067306502306994112a9bc4a1dd198299f5e616facdee8468d5f8b009a51ba81ab936b1babf5d0f0bf8d31858d8598a869b20b72541023100bedca1595a8c12cbaed4de74acb1230a1b4685eb901102167bc39a2b882e847ee6321e20fac87ef5427a9f6ca16448690302047c435bb500673065023100a8bda879739161d7b548f14e25649f8f774318c86828fb2fe5587827b7f59075d6e3335f9c80c53d166c47876042f7b0023043e8864f08a89a5b8d39e454870b1051655cedfb4701eec4bc3b166aed6328785f31b363acb7c99c1c24dc5baa498ce50302047c435bb5006630640230243f5bb4a6116895c06d0d2b685176e0a2774948dc3f035b8a5fa8886b7fe509fca066fedec6074ac7548275a70fb53502302167f677923fca42cb21e3795d4034c135fcbbec2d42e5feb04c0a60303ce26c57b97c2ea5621afe8c1c69b3ef5626f60302047c435bb500673065023100cc96381cbf66af12e78776d3138bff5e578ff7f616333c26bb5caa7c8d0056862d03d115de99c1a3dfb71c88f0a8e8510230048ff9bfdecd40d7a907b1590f5bfea4418aa37d48379760dcaf9e8fb2e6b96fbd6bc9aa2d6912bf5e75ff917365051e0302047c435bb50068306602310092aeb32b84c4e834b27b575a1166261782e30657446e9e2a90dff48f8491bb16cd9436a2da73898aa9e8021f62028edd023100e17ec82f80ef5c1dbef7e0ac7adc0599caa2411ca49cee9f6846ca15c86b3f74b108a25a4ed335ef5be0d18c5a6e74810302047c435bb500663064023033b09e09e964ca4a7905b298999aabe7acdcdd40c3d7ecf1d124d06ae512ba71aeadbbd70a03cc4606f18ed7beec9c9c0230736c3027e2b6491aa8db0c9fea9401c7da7b101f717ab3ea8302055da984cbfdf9b415f90bb768924bca172c1e9c7ee50302047c435bb500663064023002d514a11bb7c2102e75a20b14b2ed1ddfefde9bc1a0aa9da2e751dcd8412132fea785930c511eaaf47c01c658f284500230527d3bc3eab55af805e6baec755c18e390229e67fa1587265c8f71f06211e1c38ee215cf8128a3e282e8519084d2c5180302047c435bb50067306502307ff07a173cf9f3dedb5bb0e0ff7e4fbcf2c890530a304bc7cbb4ae7ff119939d2775bfccc05e27e9b787bee38b58152f023100b35ff98270425f1efef1730eda4dce3108ece1da5d29f7a172f737c29e5ce335603a38d6224e2f3f27740b0a0efa8f050302047c435bb50066306402306a1c40ba2554c7bd2ce9f507a98a21b5324fb201dddab1b3192df68fc8cc4ffa96cc84aac62257c4680846318ed17ffb02302dd867e79c162b4f6170e8289d9f130558d032a9b27192629a79f6bfd9768332f3c221ae43f450325d1616bd1d4e7da40302047c435bb500673065023100fcab1584cad40f023598bcfe20a76ed95c8f368b2e876981c9ee0db75ee01196638f363774ae3a763206beb1177a53d20230106c44776f910ad4ceb339765adae9673b68794d89f689249607e30525c52554183ea0c5da12d8d14365d2516934fdbf0302047c435bb50066306402303cba9f92f50c15bc335dd66f02a266ed0d671c631ec0c5e0db82a688dc9e7f5c158bfd7e51598fd93fdd35fb5085b92a023056017a0ae2f2309339876e5d50242e285cfd8aad1a331e52953fce811c4465a641012c3ad94fe56cedd1ba3017093ca10302047c435bb500673065023016fe31a59eed38b8a6ed25edc32cacf7826c7cc12c1d99605cce742496715432997069d904401e1353829045891df99a02310096de2eac49f258f0feb001629f7dd643fa946b9dc1abf0d268665d692dbca8dbb20d49cfa60d29efdf742f09c977eb810302047c435bb500683066023100ce8c2b9fa80b00e98ff78fb23e17e0b67111d930903b98abdf2b3869da692c821c17a38b9d06aeddfdde637d2a8cac0302310094c9e425594706adc5213bf787d75c10792de653ba07b566aa14b65b7e2fa35b70f1bcd6a6bb977b305b2202b5ba12e20302047c435bb50067306502306e552cc68f7c3ea63b767ea6ecdadc9bf214caf11c0adb2f2abdd53be5c098bcc6ea6ec500a71d7cbcf9b39da7c93f32023100f3ff90ba0755689729ced60106071eb299f938bbfbbfa51a1dcea26416a7474aeec4496d034c75cbde47431538081d320302047c435bb500673065023034841d37b6086501d8f0e5c330c85fc0fe5e436b8107a5f909959f27fdd457985105a7d97730a3ce28d9e369a3ad7860023100d7ce39c8f12b45ad7b0d47d14e0388b6568668e8b01ea0d88f842a42bc53635f5224ac8607a5b4a20714797d03718abb0302047c435bb500683066023100bb655dbe29ccf375c53ff2a6661bbaeba40a002aa6f82176ff3b7d56f5f5859c119e5e970ec20bac04de43bc65441bf8023100f1674b545aee1a998fa98f3c806e97ed401ee1975eb8048c8a51190ff2b001e8291ce96126926e42e9980cd330c7aaa30302047c435bb500683066023100e65f8e5d1d0f7957c00f46f8ce9f07db92f0d16e5768e59faa82f4750cf5e65a5baff0baffeec26ce18719b733226008023100e1284c63295ed71bcc5a6fd162473206d585bcdebdf6032909ebf352fb5d61c3977eb44b5fdb9b146953b5f1d22dd6f80302047c435bb50066306402302a06b827560c2c3ea922dac5c66db13ad0a56382fe4931ebf44645170380b9257218ab6ec576b18f1f4a111d43a6d9a002305db2b73b942bf7e2f868fda98a03c2720ccf25c4d62d2d9c300fd29254943637e7f0e6d18cfd1f21482ee34d528075ed0302047c435bb500673065023100a20f0b86761590b15b20a72dc1e1b3203e4e1c5c7f660a200de5f6272ced0d8d3ce9c6c5808dd7a247c214af14505f4d02302bbb14964949235a57ec7b2537bab80f78f08f39e790ccf873340ae32f256b3af0b3837611b977f83b274abc5768bedd0302047c435bb500683066023100b72a122e62686bbc043e8fc8914f60ac601dc010fb623faa61bc8d3d6881a42890c1f156483e593548b37aafdf1d9a5c023100cdb3fb1d1daf3dc72e071e4c86040aac4c16ed1b22089c6585b39fc43d012e6f0998e14a7c2afd2b34cc85361e4b8c050302047c435bb50066306402300311e8bc50bd4c8f4dfff0f7bcb8d064b3ff9a8ac8ca9b317f05e7c538218e9c805db9dace791557fbbf794320db94ef023000dfc617581d6106770e98863ef9379626558c9fb48add65b9b4c11b18100ec91b56fc694d099865f4350ee0b9426eee0302047c435bb500673065023100c2600b7d034c06f39e195140222f88cde700b38a5b865fec8d7ed4a5aac9ede7863d744f6e33bf8ca4a13d86f52daee502306aacb3e14c0a6085e5b4f1ffda8bc510bb374be1e48f7a9c26a5825c29aec9639866a1770b66dbbe470d99511d7d75330302047c435bb500663064023063e376d6a06cbf44176de9dbb6b4b5dd85b921ef4b6d3cfcd7e03c37dbd3cdd2066b0c2237c18f6cffd061274130b01b02301a8a6081ed8537d2d2cac1665c5f2c6ff37ceadb85da37098de88dff2c49ed97f11b8ee103b07945f3664bad656968c30302047c435bb500663064023045a34920a52034a1ab94a538b5b1280cd501a547b867344b4a8b77bc3d5e7cc21c19ca96fce46d04cdba3af9d7b8873a02305ef8cb980a767a11236b00c5b8da04c4161aaaf2007a1d440846dead1a1aa3476ce04cb1cb6edbc0d4da8fc5377921850302047c435bb5006830660231008732d5ba904c66d8293aa1504164b30bbea05b385872f44f206aa1e79c9a61a17e269e22c88c670f6b7c1d337aa60164023100dec706f823165e46b7fded607fc7d7fc2565fc2c4bd19a6f3ab068ab5d4687d8b558d10dc50846a948e831f7b4b308580302047c435bb500673065023013fed0262d2b9da261623efb793945431d83316b6d19cafed9ffa36ea466359c6cdeb109e06e82310548bfe6b72b0c2a023100f95b2848c7637e8dd8cff1d87337bca588f4a7c26ebc41f6c5754bbb1cbae8d29f76d5a44efcaf9d29e0202ab259835d0302047c435bb50067306502304754e01ffe881e9e7872f4e6a732ef8464617f9b9e2396247457cc47809ad1fc8f6ed1333220a22980dac64536d481530231008d9847454f40b6c250944b1efe1f5fcef9f420d7efcc7796cad9b984d6ea9dd11b28d0bd47e46527579145ae46f0a6cd0302047c435bb500673065023049dfed6d42e0c9b5e7380430b2a7725cb2d3cb1334e5371e80eb449b95387a8342c28b9a8e19d17525d21db6d6e3180b023100a9a5438501c7ff788dc533b70644364f11ed150031c17193f81d0b9f0eb1ae9e064ead7fbe54d56c84e3a629d83b36cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008710a2e4e970e73534e12594192dfd1bc7ecdedb8983507a3c2e0881490550b063addc9daa8f32f2c2bf4bffa2f4ecc7023100a435d3721434dd2d248b6906900d385e00370fe9eb128416e1009c137c4ad3ca6709161ba331c599290452ab011d4e640302047c435bb5006730650230613627860d2b229a823fe5f6abf835c4b5d7b0102da224241a00373cb0b52aba92335cded6a49cc8bb37f24fff625910023100c267b8ca87d64888e3e3013283fc389504585a041565b183aef5432938d496deaa54e343464f7ba730e571d3f36276970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023009b22ce6ccf62608674ce4785c3d3b0d1d89cacc0288874854c18bf22e12e3bc923d1da58cf16e7abbe58262538819aa023003613c2561eb965af5807442260a1b4650f590f06369ab480b28494e9e1d5121544485492c16c64e003468857d9cfc3e0302047c435bb500683066023100be4c0bbdcdebb8041fb957fd6cdb80335ff5797ae9a24888e754e3115c6e085d898878c19ce6ae6bb648f2daccab12a6023100b8681fca1a67793f079ccb3e086efe2baa2770993707c934e537868bbe1bd0bf211b2550d90872ecff3b8c22fe0efe0a0302047c435bb5006730650231009854e61536e56e85de9778cb1fd1ea7c2e9020cecac36633ca1bc80ab349156e6a13d6c6e4b6c7822542f9c1c922a83d0230460908cc410e3429bb882b7d8c4afd5b3c94e7f1f2fc8aa41660d535acc48be5370758f2f06fa6470bdd8698a4feb8ea0302047c435bb500683066023100c5d66fb20be5b6c2280e2451e7b8cc202d07e4c7774aaca97f6cd884e27600ddb83ceb52d13b44f44935ccbf5ceb224f023100b6a67124e6ce18fff2d57d64ab7f8f0cda85af3db1091f502e44f42b70401b52e86aba854f0bdde208aa0f1715b32ea40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fc9ffc97eccbed96dc9145a132c1064ad6553475085722ae5933d8d7cbf924d7a46d52d5186182f316131cfb9f5c96a2023006ab6f7ce8cedf285a3f0347211030c9502029627ed3913d9307915923f0325b11c2315be7210402c5739babd9980d180302047c435bb500673065023078d93e5f1ace3bc402887d4eaf5c55cdc5bdd7ea7b7e8dec84fc172dc272cd024b12c63286dfb3410a5aabdd13123bc3023100a551d55a348faee8c0195efbc4ceddf27f22c9b498280643a3a317bf026a578487700a5c9c050141c904ac49a4a301930302047c435bb500683066023100d969e44c68766722ae6349f31972f626f57aced897dc2ad512a7395c547c4049c9ee4584dc7413860295922b5a2f9cb5023100d8154a240e9de7a1804640c2fa06bd915ebb4c49255eb8cfbec12c59f943dfdbf1290a4c2c1533c0daa8ed4cee487e280302047c435bb5006630640230221b1cb2e01a0acb6e072f72e7aeb7482904e0ffc8866034bb47a5fe5599763a0dc44507a53bbfbf3d36a2d36f1843dd0230354a0a73f0aa87c52b585b79d326e930d47bcaec018dd3362369e84dab016a73a0923b718d383fd14cf10aa28eab59f10302047c435bb500663064023078eca6f1580473369fe4d50d6782987fbbf8a51a287ce0b07c2913764414b712c773567a5bad957b9fd85a1b3f5b4460023026c9a30cdd277ccc5ed7327333aa95dbf1a5a1fdce2b3ace49369183147e195054658ebe3480f4d13e0b775f67b4f28f0302047c435bb50067306502306d5778e7b37c8cdd70e7d35d6bbecb6dac8f384045186ad9ed468de4bedb81e2ff23d5077821965cb11b71ce59296ee1023100a6b0f7ed30f556f508e87f37e76e35d2b9a2b4b6d7ecda09753f408b811d940c1985520f615bb60bca6ceb17f95ff91a0302047c435bb50067306502301ad7499d7cdefb417bf0804e0ab5d09e266f7ce11a8cd8e501795fc2ff3bafcb5e91627dbfc811198129a4fa0490e5da023100f7e0f5e3a585e13033a6638f44daa8e7f0d4851387effa2f904f8dcb110cff985af19d2967cab7d703dad91ae5948f320302047c435bb5006830660231009a2d4718e68a9b658eb0b469bdadb706e76800a33ea8fe2414130e1a80f41fc9f2126e00d8d252fd016de96729b6aeba023100e81f32fd520ff691b0e1c8bf1b9dedabf9dd6d0db433e1b24b93c7d5124aae26d70b720ad2cb467c0b12970fdf9e42a50302047c435bb500683066023100b8bae1ef8343d5409d73b618f24311670982dd615012f44985079c33b0c981eeae968fe3c4726db25b399d9e7ce21201023100ae00579c922a86a95853a6a4d18908cabb5e89c5f46308e17590de0c81afd8210c3de7a3ee8819b52f224de1b92bea010302047c435bb50067306502310082c372ba22d943895193e6b403223f011078c84ce414cef6803ada9fa8a61bc9528d2fd91572963721d5b73de2dbacfa02303b265e8f0508355f95b6ef1cacce598e011923b2685b8d6056a0f1f8a09a914f176c3eee9bd7332e6d40dc6654d2d07a0302047c435bb50067306502300dfbb1775c9d55e31c7bb2d78c35c32c1f298c2e583246db9a3b89288e65eb41a07cbdacd03d2d7007b22ba4dfecf0db023100d582d06c7a23aacc8929a104fabcdf0bd18b5527866f4da105275b3955538774077e09aea8e56718fe229f11fd929d400302047c435bb50066306402300cfc06bc5843fd7e77498f038b6184bc11495482ae31227cb31a6a901fa50912b9411c6ce49cf165f78f2973850c5d88023053cb46cb4f2f44acaf9c91b7d7036b9b55abf7aa35283be836bb2e12f67d9abd10355031fe14ced6c289aa510127617e0302047c435bb500673065023100f9063a1dbb2fda7e6a7fd80464cbdfda390823f8f8d7526a9238264481407bd3358e9aa78e1f11cee37d941c08ce122e0230488fb15b255c17aac2314b46ba5cd7b8e55682ac431c7894c6f0c05ce83ecbc52582b006f3fa52f57db2b4104d1b99570302047c435bb500663064023070ec9152f558199197ce58679f2bd737a6aa274979d493567b9d7f2f14987b094130aba8e1b59417987f7b8231f503e802301a51a476e04a5d91819f1579e915d95ff929978714d50e707b5a947581cc75828513d69f02a4de5d2a095fb41b173cf80302047c435bb50067306502300e53f6c412fcd1c76c8b03d2274cc123f5035dd19f71683374e8db4947bc8ec33e83479b557b8ca5b285d25e01d996c102310088df05f23c8432ad29b8e1ee084f2ebbaa1813f1b43669236e20c6960c08e42d154376cbfb73df895563c21150399b020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230585a6bbdb244b125f0de00f13eac0370fe89d429b716b43bdc18b71f7b1398403a42186d46f744c463aadb31ab0d1f33023030ee0f6ceb803d4ead195d221540347eab926f248ae0cf3b13552543709fff9f07a1b8b3c3b99fd7b087190ab077adb10302047c435bb50066306402306866e352756a4210a2bd5afaab86c10badf4b5d553d4f02ecc14ad6bd16426c4ea1de98691c5939b2e6fce0ad09ff2ca023079e640c288dad337892fb3cf5abf7852efcd8d7fa329045420a77433f245ff2d69c2d64e3c67a11a58a3deccc7a0bafa0302047c435bb5006830660231008d24bd12e5e8dc278783b3fb4f27dfdd1af9b4803dc186138c60482962b40299e7daee812b1f05d781efd17c95e79d83023100d22cb13002a277c8a71a78a424be901f951623976c0c88c0bcac5092ca96a868394d46a7dc1641809da30162ce517c890302047c435bb50067306502300d6fadd29a19c2a761c4d2af7049eda18f521eefe015969ada3b8384df6e9069d4188342ca3d63314e1f02302ea9851d023100bd72e60cfeca9a7b9b8031aace2f81884f2598ebf26420ab68ae9406176e146ffe21915da82f30a62164b2f7408b6bff0302047c435bb50067306502307ccc4d8f6168a4bfd77bf789e4c88850fa7df26f2e6fd7a69aaaa132082ac677e4cdd3ddba2887c621e0cbb4664e97ab023100f06efe7f5ea241d1862963d33bb5f491cf3e8cab5d91d4e3d2eeb6c6a2169dbf2c23ee5bfdbb04ebeffb99314f66352f0302047c435bb500663064023020e128d204c3530f4b7fd7f843421fb9381e7239dd551f8754b76481cabf0f70b66b27456b0b5c44ce80dc7649562d1102300e5187ae8cd764f1c0c1e7045d18c24c68ef7dd26fe93e287d0c05d9a92ae2008a25f4d1f433a708b1a1ba45119f40e30302047c435bb50067306502305c8eebaf7d47309ab673b24726da827a07394de4eeef547a625f84f5e3476364eea24af4a89caefef644daa8975a44a2023100d913ecf20d4ef59c02ad56aa25b618acc736619c5fa03993de96271926af57c34416581d32e18eb4ebd608a6c3e9e64b0302047c435bb500673065023100eaae8ade5455f48bf0a752de05ef465d3f13d52b74f63cb21370b54dec5ca3632e6aacc269815d17eb19f4c664a32484023032cf5879e0d8c4987de6c8a17ee9bb8c377f6da9862a1a5bb284d3ac30d6fef494e6ba4587952db1c05894a4cb5c72620302047c435bb50066306402300284fc8df3e580c1045cd71ea172794fd8bece9af29ea773974b087d7ad3805c12aebd2c92bfcc97dc6f8f1f75294b77023042a0d0467ab37f0fad9ba49247ddda082108d09a4b34f60badd4d7e778ab3cd0ed9505e9e908aba465f157cb28789b7e0302047c435bb500683066023100b2a5894458178e7d651577f38bc227fb26c82cedd76985bc8876e9fa5eae0d55250681a215151854e409f49ba1003ecf023100dfcd1651aac65b61fa97bf4c7257d49f58ae46bbb77ae9fbe41f07d0d3b94fc6adbabb1d8d1bd7208d278d5f29d4aba30302047c435bb500683066023100e097ca8d197f9a6c51ef64b2e316c2cbf9990ead6513d5fdf34ef566706268d5982010fbc71ff9142f55ad1cb05bacc30231008dc49c2b528495c176f67ca7bc950971434aec18e1322585102d1a405e58a59c8d6c47a256a551113883d4e4b0df59f10302047c435bb500673065023100be7ef424f1068c3041519a21080a571a56c16a18854fe81fc3e6dd1f46bdc7c68a44cc92cfadbc493ac002a7406501bc023011d78636c995f49ca99c2c7d2ead3e650997d176bb9992b5824774c7f81597b5508354688c09b32d1aff180b66f8648b0302047c435bb50067306502304649095eb011adbbe4ba50f8677ec1b60664e2e0cf656a8d675df8482525ba298553b01c6ed32db5a5af6c80ac688ec3023100d3d9304fcd28270bae92afcc7ad1cfe86c274ac1583c8946eeaa32d67533d5206dd601235b37981b5a32b4ee1c138d4d0302047c435bb500683066023100a14180e01f976dcb889f17c79256bbf2bb714e87a4bd87e6ac1a28a4e31fd30d46a78f98c7efe08df916cbc4a7fcdfa4023100e86a125378efe9bd83c34878a15fba742c323c4fd396400fe44d1875f9c6187d11d2f19430781ec283b46a171353a7820302047c435bb5006730650231009867213e8bb28b35a37febc274e792c63ebfd82f73625bbcdd02f823b6d070c58d69255cc048a82d7013c4a6494a98f5023020a88d7befcfd9f565ab6ede3761e2ee3d7ca4751c5f15be6716aaebb1fa6c72b99dad08a1f5eeb54badcc1f1e740ae50302047c435bb50067306502301488c38fb9cdf7b2997d94595f3d48fb2cc2a31a729d3287714d27974acba7d99169ddd2acb700a5ee5038fa50aa8f430231008667dd2975d37bf1153faa2e3c72e4ba0e4574711fcddfbbd633e128ddc13ec1ec7731b6029879ae47268b8bc7da48370302047c435bb500683066023100d10124541220f149fb17bff58b219edc8945fb198f48695a04f5735f8acb4bccd724de7d6c1cfc00e2e6bb8304cc08b302310097b87a8b764ba45422c616626f444bf118965c45b610e43b531c3963a760508c8760de5abf3a73fae45b3428b1db01a40302047c435bb500683066023100962ba5ab44f5ee69cf79658a958b443f4247211ef4b604fb229bf9efc8af035b9c288642b08465da1ed9c86143f44c02023100a88844d376e9068af9e4a4a8b34719b20f71c2f6281829f06cdc50c7019a3720254a7a514182d7e8a02c846bda5a94740302047c435bb500673065023100e932fed144bb0b1a1b543163cd401603e33e4cca60112b75a806aaaaa92cec7973f1e37128f9b0dc37a921748226187e02303a19b982c0fa3d2097054451452e8a18aa0064722a07baef5b994334920151b72c7a070bffacfc3a5424288c6919e9000302047c435bb5006830660231009fe00068bfaeb2e7ce56ddd594c8332b4ea917566f4a97ab703facfaef2377dabdb08211e0e63bb57009660a1010c9e4023100e43db2529eb55079921470f9f688c2a0ca90f4a9387e007f92c88408b2ac999a48018b4b7b0afe729ae2ec2357da14f00302047c435bb50067306502303d8e7b65e99bf2111068e6ddeb825d0aea929f6aafa3c60530c596468a6831cecb7a3dbe2deed5bf1ea930f125112cbc023100e321b58d3ba386c5289f0bdd971bacaa1984246a088de7544908d8940b1e2cb7c2536f87c8bfa09a3debf2ae70892d3a0302047c435bb5006730650231009610a6df26fa27f194ba682b3a8cd6a404fed381e1cba5704124f8b8dce57c6bd7aa26e27769208b54fcf55391a2ece8023030fdae69c2aa7dea3ae56957dc4475cd336fca8435d6779086a1823c8e511ef726fbcb9d7876a3015f17c1472341239d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023046331e910f6dd18dc9afbbe4915206f028fa5bfa56a54cf17294942b72952a146d41395e236fc2808f23d400cc9c6278023100b51c3b51336d0cd67494c08de01dbb5bf8d08ed72e30cc56796f03a8fb84b1610cb480fad540573ad82e233dbc05151b0302047c435bb50067306502303ad1cfdcdcc2d072676acf3dd670750f225f0b22840e8d04be89dfb40f26e90309c978eb2658b34ba1eb6453937f3e17023100f41a12fd9d9cd793413bbbd5a0a259af0110e87d7e4e0a0455e47080d2d456b772bb7acc223c4a3b9e9b423c1a485b710302047c435bb50066306402301b541bc14e27bc25a7d0983b23b4c9927e9734df818ddaa4822a61448f81cbc80f4b58c9563a634a73a9a5f6420babf902307bec8d802f1dcb9f4c5ea0e6302604d980e61397f32d44fa14a083c90e061d5f29e7250bd980283f962b6ec19de551660302047c435bb500683066023100951a991fbf56f781ba6c101bc081ed54c04a871812ccc534ebe6cf72e929956d21d4689a4c2c1fc4ad0edffd78a38d8f023100d78390a5c671f25d78aeeaab6524a30866929d521ed16183e65d4cce53ccd599e6d5930d74866c25710d6856bf6dba9a0302047c435bb500673065023100b0cd9a52c1603d89e946b17d8aa6431a935a127006d0cd09126b1c376e4330bbff200d78a5d86530b5fddd0ffccfb65b02305d02f476bd3fb52d850a33f6ea531056eb23d2d2ecc7aa7d4a44783c1c8a9129c74e637471f914fa6f3ae9738250668c0302047c435bb500683066023100d5de6d7dd67321bda86d533d9186b91dff3988ab16748cce3e3f8f7ab335a52b82373262d6a83ce80cc9821020b9aaf8023100efa94158f59dc4f0437957720ad7a328d820273c72c7526b1cdd0a0a4c111ccc15a19881daea45c2b1b144bcf37c866b0302047c435bb50067306502302186db8a6d2c88ef7b3978398229fee720026058387fd2624f8557fa8d66427c4534bf4b4e993307c67993dbb3e46d9d023100c9f5b16ac0682f419c711606c2c109609f94cfa8a70822d75860f2371c5e3c2aada7057ace24d61cb34b64c8d5f05efa0302047c435bb500673065023100ccd0fbef8186bc1487e847f027132ad30d66b637d59f196b4c8d45249f420c3c630118fcb4857d07a2062b6f1108557c023058828569c52c944c2848b454909caf8c991ac9689c3c3f68f1c4570ef88223fdb55975e89d02db5b6b9782b423ffa4220302047c435bb50066306402302b1ceae693821626cce82cc7fd5764a6310e3a289f9b86812afa520bf363f2bd2e444f0cf8f0d40c9f395497ea3b419402306401e5f8a346cb6d4264df9a581805f9368aa8518fb2ddc8618db743cb1a9023d65bd6f33430fb8ff9daaea2ddbc188a0302047c435bb50067306502300ecbcc4ea7595bb0acf50233a464f341620818668ae338b6dd204462ac9e52fa2389e244ee20c3e7d19264d05637f392023100acb56bf4509c6cb62fab5389343060143ebf84675aa303e4844d9083914cc6b061e4acb69ade4cd68014e72c4d1db61e0302047c435bb500663064023071306235edb6076a713bac626f504c09add4fe284ca90e7cfd98bba3f39dd10120e2a1a5004199fa3d7cbe6f1e069f4e023029ccdd1d74aa6a9f7621ac242b399bd4d24f1f1357259433d4d0369e75f617fa420e161fa37ef4da07db5d5d9ff3e0870302047c435bb500683066023100d45e13596a6b4ebc3791a29f381417a40c9a6e89b810819c94893c29f2fcf2ef3bb0bf628352e2d264c194ede0403da0023100d4f4d894b91a4e6b8a186b482b7decfab6ce9f32852afb2de5fc3da400b76655b3830123072f32c77dae857ec43928550302047c435bb500673065023100ee57e580fee6a0e121b2406a896a5cb9f5d20dbdde0aaa54b8b1490d4868a73c8c4c4d73a1264dd13ef9a017fc5a2a0f023008a37e82ed5b224f7597c1eca9832e16d5dfd829c4425045cb9139370afbb800c78ce14740cea1157a96085f793ff8830302047c435bb500683066023100dd40530993ff82a24fc1151e4b857e23f876371017259e63af2dfc630207f4b14d3a57103f4d2de31ce1b8eba3679350023100d22ba1e28a1dd9426b5505e062fe40514f41f0b181a85939fbd9da94a509dbed1995b777371e2a7f67b02d39a49da1120302047c435bb5006730650231009d8039788c44542857ee65398f053baea3427f794f200936391563a4f67998a373ed50265e03404290e3c9e899f241280230314df09db1b28273a7835ca7cfbacb7d772a6dc1331773575797165232b02dea67587885ed25fc0f910bda88be2c1f8a0302047c435bb5006630640230633757579a78c4829b7e875b2f57e924445f6aaccab08bafc2e7ba26b86b921d5842d2edb810d71102dbf33f1c517f7002300be048f2b33da7d50bf758af26b026b2600c2058699f8104809b0942c08cef2ef1852baf7b6e08f55ab4b87ad05ec43e0302047c435bb500683066023100eff20c285e9af44bfd9e8c9631826cc8f8950c9e1ab2106aaf8633fde08753a740f603c43cb77eb6129655a550f599e8023100b0ae70b6a7b83be2a7bb38a86228c6e902be990ea2e30be2309042ec322d722282681d4fc8c5922d6fe2ce746ebca1cf0302047c435bb500673065023100a900b0429202a27bf8b1ce3845f4c35286a5a77454f9e3b8656288457145d89331334e831d0067aa63391ac5b5cde6c90230559e50ba338d988af412cda1231b61bbe2ef872954412ac1a53f3197c22d9ee9e779a30467df110e49964565a67f22a80302047c435bb5006730650231008fbfe03fc3ffa450b84ba8894caf259cf242b980fb75fa0c2600bb0a9f751c60f09d761eb53d3259f7326c387daf203602305d1979aaaceed0b7f3d07afd7aa2f794202a5794b8ed3d690242148d804b72e3864c233a0a85064b82983ceb70ef6e140302047c435bb500683066023100d5a1bd4936b69c001a30a14e0bed3510a97700a94e415cda6a7fb66035b5cc32447450c093d343bf20006bf750cf7793023100d699f492bc7e862ca7a8672a0779aab50918ffc05deee7e4bdf95dd4fb65238f089b0481ad8cd5ed03fc089dd16fe9df0302047c435bb500673065023100fdd2c1ec9b07cff3b59f2c7a6066aea6a65aea1cb4037e046b852e9205ab8ebef974512414ae7df0c8cce2a58e30957002301c4150a28482c04a08c4e9e0f2176383d2f52139e5afc79734fd89d233f026f039789cf4342c2d85003e67085b35d6fd0302047c435bb50066306402302bb18604fe16d1e7080a2b7eead754a3959912538d3993441f56519f3962caa1b897f0869210eea05c80c9c498cb6b41023062ed324d0071c387e56254e82ede0f7d87ab6c35a6160edf9fc851ab0a00905b08f71a2316b79e6246dd5d3db7d953340302047c435bb500673065023100fb93fd85c4e029bdc0f051f57ffec266039dfe0fbcda9381b4a79398f1e9770930f3cc6ef409f4db1b9ad387f6503a1e023041e62296b97f3e17f0bcb4c660179a88b53c1b3fc8d7cb97dba1086c885ce0db2918f514bc7ae4bc21f84f85b2c88a820302047c435bb500673065023100dc5fdcb735370e0b503d79e0eb60116b09c759283caf8fc697dfca370c61554e70d80bae971bbd0c2daaee82fd519d22023000947ee3ecc94b0f4eeffae92f550e9ba6ce07a746f0393d63eaf2fd283389d04ad75da04f1d54e9f1087b99b1d4b82d0302047c435bb500663064023033cba85650549e15ab74c1e3f309d8129fb484823abc214f5753580c63aa43b83f94eaa402688814e5c9c59b596fc126023008a2d0a6c04f20504c8d9f3179a9bd366895f1f9a2bf28884adc61514b52724d3fa490208c84d2d904eb5bcc05607db70302047c435bb50067306502310097f95426a39f9f8b3b1a49156240f87d5faf529b82ffff14aaddf4afabbb089b2cbc6ee23114d70c49f93723c9115ddc0230654fa266708d1ab7e8e23406430ebccf8a111031e99eab48264d50655033185467294026403b18601ebdc89ddad84d6e0302047c435bb50066306402304e7437f389760c31e63f447189196350fde9f78fa213b1630359c48aeedf437b41169736212c333b287a44ca704303ea0230245d3a56bcf93365a19a13a777feeaaf6365737ebb838f2fadcb4116e8eba53715adee61482a6add706f9c64e5fa9c240302047c435bb500673065023100ff01fb475a141b9bd56c35224fa771e36443a013bb192a71abbfc68a4e405986d07960838016309e38d18005d3de3696023015027f02a3891aae6ba5741fa779c3b0d5314ac5c4cb73e059251f97781cdcdcd4dcb21db969b241caa386fcce27c4c90302047c435bb50066306402304ccf987df338f27b462b86e988d9ea40cb80a598e56568e028d04375d36d499e52b2252f608c31d661ab6516916e6fa10230069f2594be6dec9d47eca9e8f0f21c90b713da711fe8ab164e26fb8b6f667404d7cb58dc0d3b405adba083c87526b45d0302047c435bb50066306402304ba2b2d0cffe3c7015854cf8ecd05946fb0a39dce066de977e4c277dbd37869674d1db4f88bcff5353445025b4f1804b0230150e1f91a1a54e3f0b0f61a5c8ef7eecbe6973023d3016a29503b97c7b8cbf5e6eb9491c0ef933d3c529e48fee4ebcbd0302047c435bb50067306502305a83c419eece1d8d9787c6efa26d8c92eceb62e27cb53dd6a4b9c5a4f4a59a74e459f6817a0374463940247e0fbcaa7a023100ef3c8950dc46bfad8312e5bfb41755ad98f860c364475878dea8b0a49ed5ff85fb8ffe7629dd5282cda469cf9cdcfed90302047c435bb50066306402307ec35e35bf90ef1d877fbcf77e41f58b364d0812e2ce6ba59417a431f809c86b5efb10a182738da01a9895e51803156602302a63bb31d725e5996e3431547a5bc70a8b9f264787ac81bff619294ca1bd41db0de03da7b0acaf6afe0d03c71081d3ca0302047c435bb5006830660231008145d5208a417c8cff6970789e5b8cd12dc2a558a12d34383c10d94d6ba60a0d82c3a7b8002a0cd17396e1dc0841ffe602310080a3873186139d10e0e1891657b39025b8249e3acf330a869514a888577bb9cc8c2bd2651c8143346d70e1ee54a7333d0302047c435bb5006630640230297a011e2c3393db52c8363d5b8c38396c4168eb3ed953916a1d97e376361888eabc72b45b7a317a3024adb14e7ca9fb023028bddb77baddb18b485fed6b285c594a80be461d04d448db2a6ad23f65586b8628f0356fbca4ee2baeb66e3be2156d2f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ea4edf4033315452a5e4d2b8daabfda55d0185112d0d9c596898fbde321742bf8d20e092f1e7df6eedfa06ec0c86a50a023100da31daa6e194742e7ae66c4a91d115fe06b6007289a68e2d7a0018fe9280f622669051f0f20b360cd5d9c9cff91eaaca0302047c435bb50066306402307686890e55b022b144ccb9f0db22b8c65ce19c707aafdca1e79ea1567e41f2be1629023617708d446aa559446ec890cf02305e1be5b805c455150f3d8cefdc56a9c56ef099bd6f0d7eb6dbd23e65bb29720830bb8dc39a1b01c83bd3b1638deb82610302047c435bb50066306402306aac4bdaa842388562fcf22ad224f7a36d4f182fad60f4facbbed48cafc34841011d04ff2a4cf05ac584d8eb38e2e25d02305d17f187371ee99041ae8061841e48935dcc2182282fe1889b1c6a04d0264b2d0c592d67354c398c0f2dcfecaef188050302047c435bb50067306502306dace655c508f03b2d184d61e04238144299fb796e5bd0c2355898c331f5a96f64c0f0b258f258af629a091237fd22ab023100c6dae7c39d09645f4822f9b6b67909c56ccaa50974d22db23993d2411e0fa1d5128b7a8689ca197758e7c90f5a866a3c0302047c435bb50066306402305f2f5947bae4ed36a00aed0d62f1a726bdbbbd801eec1b3b55fc809b5ca7cb749915e56d17b5232928f5228d9563ac5b0230634ac0032a6383a9bc70fee574e01a9b362af89e75a06861a179cb5a1e13efb1c21efd0f57d6ec973220a62998e108f30302047c435bb5006730650230209708dd8f626b7f92088dda3639b01d164df24215f001ca1ecf2190525f4ff2ccac2795ca2b1df29b2a9c1c0c4023040231008af324f180b4a424d913f5750ac2f8dde06d91e88c5a9f355d8fe682cd122b5beed2582c04b772ee3d37bc9dac598b1f0302047c435bb500673065023065f7a4f3d58cf0932d695f4dbd7417aa7b7163f4e2b6f6f6fb196334a745e26221aa9cda44cf2f8f6b2e0ab6fe100025023100cadb2e5ab8c6537802e84ad14d6f8af1db58bf5b5de4a663216b259d79a4c0b8279a9368e567bce8231cb43af145fccd0302047c435bb500663064023018676a8f9825caa5491bc0cfb6190e6f3bfa7f634fb062adcf9cd35da6f109b5667571ed0a9c615c5cd8ffb0424db73f02300785490fca8127aa6b3d7d000c2a95c763f54932800dc82a545c2ce0821e0e6a9aa19b8cc1bf5143369335b011fcbc0b0302047c435bb5006730650231009b560f9ad34e4806b46d2b5528d6fe01001d284d8efe23cc763f8ef0577499c2da9d37edb66a21a9660c9785a26b77a30230109ac0671abfd9e2f1d5674c99662ff96acf40dfccf157dc4ecbfc5247a9a89d6ebb0cf542c79ea6083c552ec80f99fb0302047c435bb500673065023100c9bcaea811181ef28b6afe42fa917386e0e3b1fc85949ae62e1ad46c28a3ab960970c99487d885f9ba9b6853103b853c023061e6dfa3c7365fc18aa70b9b452571c700d91fe962a3c1b275d42521f25531c20883575e98273f2a4158e50b51ab03520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303f877e6371b6ca6e529990e268fe0dc16b2b7fb245ed20ebbd097b1a969f0044a58ea149aea888c3b75b4b746baff85e023100880f8f3aa8d8e6a5aa522c459f124cc0702ba5d0d6431e7b8534caeab4012405d1db4219f3095b733f4bcc45446e6bb40302047c435bb5006630640230172340bdfbbd6fc93ad2f06b26c477100e327c029bf86fe8aea42b15701b665eee6c25271cd0c0dc6878e51d2cc83062023024950253d9ce9bd16a950c3aff4637c0388e3b3fd0e08ba848addd2d721e28adde651f58b4fa4a9c7aa4a2ff8bbba7160302047c435bb500663064023011cb1b25430db7f5af8339b71a06107d7105b734a83662b9c9e7793a7c24c4ab50da4c1509224e1412fde016e3a8fe0502305bc3953d6160332c39d20ab09401278f5efa97ca3a5720735796b0800bebd0be30ebc66437ec4f914fb2c578520138d00302047c435bb500683066023100c70872f4fc08bf7b1750fcb268db33176407beed2a4a410530bb8c3d4fdb628896da72196e6d44612ffdce6e3a979f38023100ef946b3f0f8535fbf6dba085a86a5fe27cd562b1a6213571428f587a06098be3d375ed194a334b50da24cd89007447b00302047c435bb500673065023100a4e1500c76038b02f9522c6c76477992e0f612d140a9b320e553f06280a81cf3f4a2f6f62b9ed65ced741455fee38e0c02303b17eafd45c15aa2660e2bf55dfc72e4c2180242dbc4863aadf8c4477033b427ed6d6bb791397479983a4813d21d177b0302047c435bb50067306502301ebb8db57502f228cd52bde4ab37b8fb736c78d5544cbd0b130c41da2e8485aea8caab2ae029a06df594640516d2de17023100ab9aa0d6d11abceb29d3152ab2557b011a433c14e92eed21d91e2cf8309f46011f717393302c542d07400c32a26d0fff0302047c435bb500663064023015062ef2074e2dad72993b968ec524558e2c05800421aac4ab4bb91bf46c13904f55dbe43e8ede545db7e15b122ddf2e02304eeaf69036c9134d98533bad0418e05b12512363f883b0a29a98ffd7bc409341d956eaaf1344256553ea41da46af6f090302047c435bb500683066023100f07e9f46844de200c2965d0e0726db6538238da25d28da7b16ef279cac108bf5829f91e90345f197c5bf2d6962af6698023100a66d897eabb243d169cbf5a15ceb8f75e5260ce7d06d332f22c965be03e9997f0cc3fff04a40249221778f7f4f072b840302047c435bb500683066023100b24d1737877bec88d4346f7ffc3e8106ca2ad0931937344442b38b0e6a6e960c863d19c7b771988fc00ed94dadb3437902310086370a2f9c799b37930b107e1e90b221fcea613b2743bcae0aa7385df85c294d03d897f9c7211dc560ab58d315903a9e0302047c435bb500683066023100ac0a128def96504d35a04964affe57fa2ac3a5661a29542b1d1d7606e8db3f41459daab7b818ea0411a25ee8885ef7ae023100a7f89c0e54e6bbc7d03c52e2d0e0f25ce4cf618777d5612c6cb114ba12c8cd00c51ad49c28927afaf5d731bd827cc2860302047c435bb5006730650231009ec10ad6fd68503c0d9a5112b74662f12529fb43480a42897df9c348c2ee67221f2da3f19e07f2fede6c9ce695f0b08202304bf35e8f2bd77a5afe2dcf08d08a10af17d48301ae757edcdf40939b074bd05531568eaa6941f01a19a5383c2dc0ff1a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302c56f72513d41ad79413625e06a1c5082fb82670dbb4e076a4f35d4a4ed7b4f848f21672de74a176af2cadc7faef431a023100c6ab8079ce842595e6de7ad5d2ee9269628323ba198e87dcdeb124a5ee3a53650feb6f2b233c6be093fdddc816caee380302047c435bb500683066023100cb6d9075cef9e36347cff4f6aad2321ea8bd79870a565170d2e9c77ca8e0f881f6b0a1ed34ace3d3d7456fbba88daa6b023100befc8bc65194a30f2f90c058bce8f7f7fdf74cfd914d0d531f02d0ab555d45c02432c1c5862c46e5424eeb602b91dab40302047c435bb5006630640230132517c861a11bfcda2fd01acbbaf69aa4366f814d85ca1fa935cab3fd6436bddb2b780d260e5cc12b6e259aadc6fe4f0230108956d6c1e79a33b7f06e4ce046e822e84e7644b5a15bc1d68b92ee16fcb4e96e826bcafe378e3bf1e1f419b9fd464c0302047c435bb5006730650231009bdadd0e72090267ae4cfbe3dda42ce031d96c2c902cadeac9452023d61b940936346df6a55432d5c70fccb74f3b350f023079af7e577cae3438c33ce2a0f202debf7398472e1b5ab856ead576b9b526ee876375341c81fb6ddc1ae7a2d203f710e80302047c435bb50066306402300e4e5a999adad41ee4d41e9f662ed7f7a025004bf73e66e7eee8f93c1859820bccadd8d2ac9aa2da8ec6eb59f4bd21c002306a2d91792e5c8b679549459b80d5d5e3c95188a64f5f09fc2ab8e17d318609c23459fa29cb29f13c3bbe9a8f8e3491cb0302047c435bb500673065023100c99868c41ec5191ec5473811c813900588b6211ca330e72c108a9b046097f962fc7e80bafd1d5b7ff6833dd37250681102306660e9559506329bb546c7d8e1f23e4d3fcdf83c9f66abaf35b489a889cc1e17992c8434c155f00f222b9ca18acb46e30302047c435bb5006730650231008c03e544dfc925ae4a3dc411f7fb69aee1bf2bbbf340133089780656f311b0ea222dc6304dba251463ab03fe3f41be5c023009f933d973feebd9d055a09e1b004ef4245bfccdab20f3fa8c4707eef11ebe8d9f4b0e4583065d559e1b2d7b85108c700302047c435bb500683066023100c5436bf6721644bc1b7caa95b89bd30736f425a18233950ea75ffed0f858082b5bd4797ee9d17c7bdf641ac198a692c60231009b141f0a1c6f1ed4a4dd57d5f956b3d3b1329bb419f83c6f055fc82c170760b681a3f6ee1364158f42784741a01ab4e00302047c435bb500683066023100ac2d7cea53379306911117b563ba0a5393a0afbd2ce37033a695ccf97eab483ed5543dcdadd08a83c76a54dd26535efa023100c85b4ae82fde4c4cd670653298348b2c48136fe2065b754c81281986b3297674b3a87870649461358b8522ff936571600302047c435bb500683066023100dfb9c5924026c9eca487396ea104e8f9fd7665f62d5a45dfa75084f618ca9d36a22a10949d5dac72a5902ac156f5980d023100ac3d163fe648a9c95eb1161493099668a5662dff6086f5fdeb1ebf6b165e08aa3935d597fbc73eed408e8cfba409cf890302047c435bb500673065023100823e1e1e09c360b1e57940c256012f2bb3b93b79539daad990bab7b46a5ed0e66eab3e197d4c03986248c55e87caa2de02303fb5d7eaed5d65302cab3ae5b4d47518bbd3e6275436d775fc1d68e72da08191223b932f1309f044ec5024f2fcf927720302047c435bb500673065023042565ab8d749ee89f20677da49331787ad11173ce8b9888fc79ac454e3d0858557042c0846fe68165798f266398fa0780231008151d2197c952edd0d3c90968a68b77c65c06f78239446e9e1ef3ba3fef4639cf37c9082cceebe254efb2418e9f098ad0302047c435bb500683066023100fcf6efdb6e41e1fed63c1e47e0b2cd7c26587ae5aa878bac646c4ae190a1e8e725c6ccbeaf98ed381bd85c930e96a1de0231009af069cf0c5c86c8dc74f493ff67de8b3cb27de2fe64362a5be1d1203c7491137af3247d11925f11cb1d0308ad6a6ca10302047c435bb50067306502304995d62f134b61ed52d376b0f26a407e5ee179a85df4738a60ea8cb321d8adc7ce89d417867347f9a2f2ca313ca42dd50231008b44b25d0fcb1f6cfdb71636baf67a2f9fadeaf6520633734202d1e94bfbc6dbcc1e09232263b91b5b4697dd42285e3b0302047c435bb50067306502307d66577115f2bd8eb55f14d30dc2c4bb5a6d5d430bf218fd1927df1868bcdc346f18ca474d298e8d0d6bad21312c335b023100b0e882603d5fca585cabdb548c13a13fd443161e2d6ee82155ec4f5605bc074f40acc2f59974d96135022092b01d0ac10302047c435bb500663064023034e4eaff0be9e39b58d181620eef8f30137f188e23d63da54bc8c6fca9df5cc383517cf930175079766cb4a30bd7000d02301aed7cf173ff573ced1c9d1558805d1236aafbb58e8007ae174785f2510604887c90fbea8c13c88016d2d4beabfd17cd0302047c435bb500673065023001ad1c31b50ac9f6ab61c6f4330e4fa10798657e3ee839f53413ccea63e3b837fb413d5529194e64d77d93c23ad6e78c023100bfadb2bf07f1428b107c709f671b6131de192e1647228569dd8bd98c86344fd3b4f8ceec0b34e2be0fc072e26593e8c00302047c435bb50067306502306b26e90bf378a9d6e048c2c03395c9b4c2ddfe86b0b657c627d570ed4a91fb684405cc040e05fd29b85be256f013684d023100f550fff2dc517650c9e4b8ab00474af06107bd8d7292942d19b655ac8e45fd066f04fe834016142db2cf8143ada0c3340302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008f6fcf8f6c031135ee728c4545c6e2a404ca50d70013fa5046e58d3e7c4dd8eb883551b9fa263514a96a8735aac66c09023100eb8d18acf18284ea6a33a6127bcf7164d06ed56d2f8be7b567a08fd84f2009b7970dc0be12da3d2dfe74ec5380ff2c9d0302047c435bb500683066023100d8df35ebf3df2a77461d9cf496bcc70b9bc59c43dc6fc89493c08ccc27cfacd865870732834664ceb8bf6a5c5481c56e023100ddbccf77eaf0fa41b3dc6e55d0155654eed306a54cf65c0c27dff100057f369e658090650792aeae391e2143a15abd1d0302047c435bb500673065023026c5013e2268a4039d9b81b02cf329297123a71b771ecb520fbffaab3e148dfc8d95a1d548fad4d2b518b636ee6898fe023100eacb605c26c7f3cef0facf2c3661927a91772d88902c20b1ee5a9fdea51df86622148a6dc6d5821db21dbaeaccc039600302047c435bb50067306502310087375145803711443b62305ca48239d579db5f9e0f55649b1fbac8c136412c7248a7f941a56f35eb5e008149bea0bd85023049651cf57e3961a901a4e920ca29d4c253b456fad23f684d92675a04a628dabfa4f4dea1fb4c2a144aedbc62b3c9d1b40302047c435bb500673065023100cf4573b526b1bf6438690441630c13a5b2044885a4938d55e706c42f9817176763b3b8b9759355f296664862c1d228d5023062ee5e279cc1e0ebd29c04d88be3543dff20e6906575e55f01c4a391d64aa436194edfca0ff823159f1dfd9d608b09d00302047c435bb5006630640230662d2b84025c45439c24dff5cb0d5e88d219631c8e8248fd7b193d661835be07672779db762aeff412e8150fa2807c73023053073e9f77c6f95cee7a6004195ad59c99d39373c3f222584ea532c635bdbecf6654cf4df5ec449dc237b5b36cb15b8e0302047c435bb50066306402303b0585ab1691f5bfab77a377e1825987ad2cece50bb5c15ab982d73a5244658cf1cc6cf1e4ddbeb2777349c8edb2e4df0230395efc50da2eebd71d8c90b293a12f1e19bafe85d3ee9970cb0bee097889bd5163ac5a03ac4a7ae8232a1049a3ed42ac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e7b8161171a87cbb1cf9abc26e70090bbe82fc85575bd950049efc215b8eaf9f24dbece9d8c9dbd59125c99f3257e9d6023100832b60b0f1bac138a07044755c3f332d4b0a4e972107045be8dd414e4a3d8a26b32fcb24b011fc3823bb6b49db182e3c0302047c435bb500673065023100d14a988984835de77a46ef54f59e6ad99d37c5d2f1b86546c50e40a0d8517d6515ff9bc3c02d1f883300db9dc75795d902301e7bafcb0293a014524177593be4dfe0a3128f6801d5333f9d04b9db3ef1984656f9b54d9a3d7a8cb4f34cbb16f4e0b80302047c435bb500683066023100b2b067fdc850086a309375da1af5f2ac450db47f1a30ac4f1b294c1badeebccab6d871e246130b92685bb946b613c388023100fb0cb923cbed1d145381378fd84291e202959ec3aa84500f97f5b5c40a1740599e6ab11eee32c13bdcdb8f6775bfb3610302047c435bb500673065023100a36afaf62f3b3017bac647b525db20bbb60b4bae480893539a24f465f9a0ddc2a45ad3b826efacc1f3cab2fcb09296f802307672174977d9d9879dcb66aa984a62e74f418ccaad87f54c5585290eb0daab4570d55114630796612d9f9c5233413f620302047c435bb50066306402304fbe58ffb58e8448dea497ac6c20aaeddb01dd9b3a72231771b9fc7bc1b1d3a68afaf1306dc7bd8605a2dc91010a1c49023045208bac4dd6fb9c33b1ef0054b4cdcccf44824d1e7b14beaf358ef013865f34deb60d72cd3926ea10c7645714c3543c0302047c435bb50067306502301f0bddcfe8fad2c2e15ba353da1aab0f2b470923e5ca173a6c8fe898016c99504eefe381cba2a20f4d2ee130dda22774023100cbf593ecaa8d3e7f113bcdfa4f5de95610d71de81588a8803ba3508ba4ade13aead0fbdd7046b88cd6d891462394c92c0302047c435bb500663064023007f3ac0f0e52ba873c9df2bb3c306630cdb6e7db0ecf809e171cfe861f83291d013a5d26e7677726df2b6186a743f5a202303edc0e500a3baf8fb3487a004933775a9c1b1d25466697c8a2bb14ef7f163767c9b646d667df1d38788f737c955cbb5f0302047c435bb500683066023100b7162a00a40a01f3c49b66215f524dc35576b59941fee15b4400187e1803b1912fd851c6f89feaf8052c1995770a649902310095eec208f37257168ca5462409815d0f4e9f9434ada7326ee934e610dfa1705f3ce64ad9c32bef3562c07dc4a30f237e0302047c435bb50066306402306ebe5aaf03e1737c3b1cbed8073582c2d27c420964bdd70a8513f804b37cf1c7aa6a175432a27009243916919c6002a402306a290e793e81f56e81ac26e19c2313be75a7cdac7ffeb896505637f660cfbb6109306b8d54de57944076b852d9671a0a0302047c435bb500683066023100af94681ddce8b61712874118a784f5e4505cda5eaed6c8169272a09aec5c00b8961ef9829f64489149215269d5bb5e65023100be60e87414806e69076a6f3c2c968a68c735af889b8ed0dd5e616668d49a8adec97299e800f8bc9f9d995ffc9336524c0302047c435bb500673065023053dab64fdc086ec5c7c5284cdb7f6a012216bac3d56138ce9f041d1e4b8e1b7a29a113b53772515fd0d7c3aab2ff99fb023100ecd19a54cfd599a436f4c95483f8876af4998ca9064d44936085e550276881b1c0299327a559545333a75b18b1730eac0302047c435bb500673065023100bc95fb4918d36b6e4db9a6b724f829e1e20ed38a7ddd0ab9cb01b0f92611fc7372b8b33f09cc4ed0ae5896f5097d07ac023010a1418425a0d314e7ca70aa8c381015f181c910da08c4e3686100873d9dea41603300e13855890ff1bc6adf37df6f7a0302047c435bb5006730650231008678e1112bb247c8e7d7f7bab5b0221c5b8ef53ba799576add4f3af38af37ff84048f2096623a0687361405016ed4d20023063abe802245e23189a9b6bac0e7e88f41c8c9c0c56e7c95b542f433a7c1a5fcbe4ec4a3d9f631a79a128ff6c9b02102e0302047c435bb50067306502310090cf99285f7b5c2338d5e43dae0bdddf06f80e42857e530897962efb463305f0490fed6e8be396f6cebe463cda27f40102304da6316bf05e099eff7b25010fa88ca7b8889ec961ada3e3acdeff96a85b22a16cb84abc0084eb79c40cd1598ebfc4450302047c435bb500673065023100c399e2b8e4fc7bfc9f6b821065eb0500a7b1e69c7b92f44cefbb20e8c7d348d58cc3b3ea06298349246d1942b522cf4a023000fb398d7303b963dfa7cc602f43cf4dd9f97a665aa2fe0d0385b113c72be7cef56460b77e0ac2da55bebae5d40621fb0302047c435bb500683066023100dfa0368eea9d3c96dbbf50e0537190cde5c35099f62336fb460904797c5ca412c462d3f0d8e2665b20f78e0758735642023100e9368a29234f272c6b6e40acda799f8c5e4e7e60ffcb14ee0fa8a7750f2ea9cdc6db402f5dfd0baf69bbdb0a200c5b670302047c435bb5006630640230086f8b9b3d9fa96ec60dca846991710a09d051bc0e01b6f39efdd6ceaf1e428f2ca52791b865fa04a7775a63c66b44ee023068d6189c467a6f1438340a13f23b23d0ff4241fd9502bd873e1952426192cdebf610baa60cb460f751baa4a8278897660302047c435bb50066306402304aebe0793fa44cbe4d399b1535aecaf928887d81aaa42c0abf775033f61c4049db391a3dfd6ad1249296cba2665e160a02302e74cc2683cec3c27ed0f38d2215c5fb5e70ed1d2e9eb81a24c48645cac6fcfce5b686e93d69fa56a6bbceba35ea867b0302047c435bb500673065023100bae384f42fff7b76e1b918cabf5d666ee166bd6a5f610171ff634aacfb29d7da713365ab221e9f969dec7cc3a2468397023019cb7060f7abc272c9413194005eb3cc5823b932cc51e3b0c656d5c81336a6bf737a78ab01bb739868c15a264bf02b9d0302047c435bb5006830660231009bf4b78eb51432f4c42ab57ebbc77fa35f8da62fdb7c229d99b6cfad37f7332407dbcf4bc922f9bf97d82abf202753ed023100f0f8cee1b61e6cbe0d5a991fa8f20d373e7fdb1b3cd66c9af4c7543120376869ee212a2d98d8184166f01c52bdc2f4a80302047c435bb5006630640230184ce8626789fbefca1e668b2e1662464798c3a578d5762bf6acb571cba88ce2f54cbb29b876c293850ad6380080eb0c0230415f1249c536527e33db5e5be2b158910e493d08e9246d4a9eb7297e630ad778533c764dbac6ab2b77a6e685af3288b80302047c435bb5006830660231009171fca26d8ab17ff88d1f121608067cd5d4dce5b095c96554f918a753d8539c7dd20c06cdf073ec76541e456de0d787023100dbf94d28633a1cf75e57e5c8a6445ae1ddb432ef69f5e7893fcbf152f788a5c5c8d56435921642f301646eb9730a54e20302047c435bb50066306402307968a5b919c52242540f068ffa638dd6c155c55df200b9a409f5880ff12f1b83477c6600d0dc2aab2f69b1e64b7fcd06023076d0f26b61077255f0da9a516faae0d4569c46dadb8f1cd13eb26a34e25c326b69c32ffe0c8cd5221298b5611eab19f00302047c435bb50066306402300dd559b696ae41ededcaba31e007e5bc33ddeff9da9602e7daaff6e64a4a100ed4d6622313fcd794276799deffee584002304c5f43f4d779af92f47b1e520faa6713fd8a7074b2b6c8313f82445284fe5968697408d59957ac4e0dd4f05e93ee82470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a6feacfcd0536fa92910d2c55aea417d0fd9a449a6cddd9e281d74954f7180c54862ec6bdf3721599df6bbf7d77420ea023026d52b474444c93aa4e0be972104d6d64ab77e4d29db9a729136060e90004ffcf12b77dfbff82c651b943187b03d2c6e0302047c435bb500683066023100e168a4292d98916de2ff19bc5389a2a1e4d60907b32e419b5c6a517b7d89aeae05f62f916d6518eedf3527df3008f0b5023100db91dc9021dfd19f36fb5db6bef03b0045d02110cc303668e58c7285bc65ad49b96faf3db26796e8517ce5df63a3f4400302047c435bb50067306502310097ea66f974e6cef1232ecc49741e65b12017f7e2098829eba244aa74093fd7133c326f041e3b421a7ec7857beba091af023006208d687bcb675331679423e874702ead7468c868cb23158fb88ddc1236990ea7d817129f6711df02d2d82443f6b6df0302047c435bb5006730650231009b974430a9e1e42193dc9d0de728cfe9fbc7bd5c493575f99ed2266063325c2788f3ab98d108fe794dbc87bc9993d44f02307ea2a153ce46cc094a7aab911d3da3283cd7245d2799d17c52e096456737f080391733efce4ed1bd913512bd0189d9de0302047c435bb500673065023100ce91f44db72714af97c82a69c4aec54e754a1f3fb993c9d0795ad8f0d6029650d64d8c4bf9ec3412c4534c8a7448d96d0230779e651e4e160239607b6deb82d47cca042ecc4aadeac27dd179d22be79a5f9c52450338ce0692e3281600361c6f5e150302047c435bb50068306602310096a118e7c152e5c4309d8269f2fef7a3a5d83ed5e543e333ac6b33c8d124ac40b389a63ccf4ee225dd0ffb394ec469d4023100e92c3423f4df047784b150bcc915dce71d78b424f433353a2f87232c40b6fbee73056fd2d8bf17645eb9c330ba79796d0302047c435bb50066306402307ef82509384014728851812540c654e346939256ce80cfb7f11fed200d4808debb9d641bb2c26819d6a4b91836d6ffdd0230510ef789af8d234f637e4c6a89595cf2da3120da0bc5d78317202b01d18e89645f9d71bb3d3b0a2ae9d647db3aaf657c0302047c435bb50067306502300fb57fed0fbb0d35c79d8671dc1419d31886e2b793ce3543f1ecb5a39921350ada0dfcb6d2f0da243cef0b94cd2d5006023100ba4bcccde965d8527fdf76c0253c3b52caab848d9623e66da9366e81da2fc09a00e39e3095f3bfc5f6ba83d6313956540302047c435bb500683066023100f42c0cf96a4822b80a54886fc1520f485c97f71312ed46604819ab54258ec0982c9ca3175c3ab8f09f4c3242428861d7023100c6ff76b5299a167e0883b9457a248db22a4f3bda0337d19c742902b9c43b8eb1c392e75caf72bcdacb3c370fe6a76c860302047c435bb5006730650230400303e3cc10a1dec9006fa52ce111af733c15893ba436cf0a3dd3c461728beb33452b449a285d2c18d4681d9065946e023100f27f3f5f4763fff877ff2040f19e214cb86ddc62517515cf4831a6a14a55e2d7e591db0c123f6f62cbf2803aa5973c190302047c435bb500683066023100aca535c126ff1780ee7f239b5b6ac97b82ca312978016bfaad2fb3865d02b16188956374ee3767a58d7ee3c9fa10786b023100bd6015a0aa11bb8ec74601dc1667cbee1b7c34b0e163baad60f812c4d2053074b6ce91265115eba94b4f0c1c441ceb920302047c435bb500673065023100db08e43e9b0ccf4314cc51fa8081e99a4ca95a3ca94fe8c1c0d04ccc4a71d48c60b7ec085ec1024e0bacb89efaa2e8c802301f8bd460ec9de6e904073c033d98dc53636811d144d3f0167d2149a775e10829e0134c210c9aeaa1b5c2c8d298113cf40302047c435bb500683066023100b3f86b4415cd4262edccbfa26d551d8be3e871c6a243ac78b57a314351def3e44b65028bff60609b6e073cf46fd288d002310085f103e2e149b26bf4133710b3c52acbf5f2c36a2697b29ce221390331073d1b15618a21033ddc5c3fc0214293e714100302047c435bb500683066023100e52ee1ef8d47c5dcf78f28106b1d28c89239d8fce69f65f2ddd0bef8f61a1c08c2510034b7aafd382228b28284c15d3b023100844bfbff73f3ef30161532849f2679b8b522d04cbd499ce10a9e74a7b673289b686c85664aa9d0b770912db9e31af0df0302047c435bb500673065023100d47b68a16ab131e5b16cc7d3cdce2a8af92849dac265bf3d40893c435879d6ae889c9dc178c8bb82f5cf919cf93a8e4a0230277db7bc2893ed17663d8caaa4fcf7eef227f1a0a9cc988caf2a99593d434b9ff65d0837330287ea345fee8770e59d440302047c435bb500663064023035516e07348a5c2fb35cde742d4a102d595ca71001e28711c2f2b4a6896fc7767f0497c929bfd56678572e475e22485002306bd39942dc439033745ab3965da6f8f74471d528611b88727db80ce66bfe4cdd7f4eeeb65c20974e3b0fb6fcfb5f73e20302047c435bb500673065023100a2eda18b483f626e4b7ba620b38e105bcc8d68fcf52ba80f61129ff4415464192c5d51319196642e5d9d853deed2e43902303794849e1a66b757dff9f529a8e1b21a83caf27b050065c180220a6f90b118d766c0ddd9b827e76ade37c31d5bb6135f0302047c435bb500673065023057ad60a6294a6364bfca6c78bc172ce5550d158eba5cecb640f3e1fd8025f824440b062292298a885800258b96aff009023100d622fc77bb254311cca587d05abda757879559ea0c375268c91a71ef7f41e0b6fd445d78e1c9e4b3a518b4ef0af1cd990302047c435bb50066306402303c743244cce6836308ec60732e6cd614ab95b28283483c68d1652b13d615a50b718295e1755ffb2a467e5d55b124665e02304b7074c8bd58649aa78919129c1e11b8e64f969cd2b11a6e669d07705118c791d04685937e30fef5e6234e1d92d2c6630302047c435bb500673065023100c9d9e2bcf27e3e175e8db91929c4c1a2677458707ecec110bc737cafd6ea80e3d42a326a92ba52c9f547414569b3672e0230733778179f9340cd6b393deaa49b1b4fc5c0542746e7e56c9cd4ca4665b1af82fadab374864c2bfb0d15ea4922306e1d0302047c435bb500663064023053d4e52e0097e809c64e106194c1091b1c0435d71af8491c4348c31118b566cd33a6830a976b906195e10ac9b53653da02306aaeb0f9c2184bd3fe41299aca51ba15558d94aa52174d9ccfa3afd8fe9e2a9fe17ec6cf75e2ce57d8a263a71a1dae000302047c435bb50068306602310096932630588a80eec19062735e7197c2512023ecd86d45fcb5e5e1edd6269bb2e1addeb68551d33c49423b3c18957162023100d2f61dca43ff089a05a38e38e8dc4c9fa2e78bf56d8eab616eef0d5567bd5281c769d44cca0836506d45e064518a5fac0302047c435bb500673065023100ca96e4f88457cf71506f99db573f299b49989dfc6385ab5cbcf99d7da6cfe90d644db360517aa3b7b6a0f6d4e63f336502305d7389d5c70df049f49784e4cee163a6a6d2b11dbd9fb5fc858aa313594420ca2c594bd511a93dfa618dc66cb43535000302047c435bb500683066023100e2a1637ee45f60f443fce6d9f60b0c146ba7ea47c78fe5e916fb6faf33147cb86f4e266249bfca39738bda281928e8b9023100cd9d8dd4f9c94a4bc3c0cd006cb6d930acd7ddf9c2c1bc4ccf9c15420ac2bde53cdfcd0fd2c5ada441a86a75cac32d3f0302047c435bb500673065023100a6896a291398068688aa14fb6ff7417e306d035025eaac5fdc18dac42953e3d66fbb8e81a6eff002c29a6d41895c4e0d0230438b0eda19485ce8263c548a9a37eb6420f4a30275b7bc341c502a02c3f6202a6f9206775488b5d2d5900aca9f660b300302047c435bb500673065023100f544c6d903837609e100a716103324b72311898264db74929b9f6378284ef55e29baf3c4f8bf852f064610b49ed7c40302301559b5a6eaefd36ec7e516aae9631ea42e953dbe3c1a0404d36db8fe8cb0caa9206ace632dc37cc380428a8bc8b65ea30302047c435bb5006830660231009fd0da767a1229cf6b7873a28d24fc027feffadf7c664cfe9b08fc8cf3ac76d305e9b4c2e95f2679ae5b465e60448336023100a72e3449fad3b838497a75cd6bf4c89418bb40858da7da33ec378a5b146b3d5520903e3b595f6b1e8834aefa8730378a0302047c435bb500663064023004284049b79db6f098d2232993eb1ae7d2116a5e1153305272d013e6639b9a383f45324ca2394dc14c6718f0dae391710230226ed31976623aabff7deba57aacbe200826fa597ee6ade5b9a6485f67c33f21a44333c0568cbeacbd19f3d9c40d40d90302047c435bb5006630640230762fb5068c16e575b7081dc875a7520f8ea94f00ad5aef72bc8c5379dc501df84071b988921d5bff7705f0e1f9c5366702306b8cdb7b25c7a6963d03ea9e062251105117f714ac5fb56e7579e24f08d60ac101fbe4cfb343c9b503e7753046682f9e0302047c435bb500683066023100d9b6df0a20349be70000f65d5ffd16c51502b7b7e72d9092e3b43234a19c3a4f7df5f593628c164c41e42af5d7b97499023100a5526d632bd77164d2d72754b2e0f1fa6959fbe8f4dc0d7ef0d1ef4461145e59fe3123ea4c811b53c4894a44045ad0420302047c435bb5006730650230432479a5eb7ec048fe243415f4031b07efb3a49f025d40107a3d3649f86f879b079101f228dbf24e23848f21253e876f023100a9ba59c66e8c318a54ad2ca6f3d8029f841ab624cae269d0beff000440c21a150135d6bb430f85479f6507c5bb284f7e0302047c435bb50067306502304c8e18a548523bd80f8886f996498d9a07f1dac9b1701930465c4d73f8f3bc63fa686cfdeb873fe660a8048e12ede015023100fd069c25db657d37901aff90ed440afb3b4d4cad28e2cea29783c82d777ab6e37a42904b09c6246a2cc319e18675fa640302047c435bb500663064023027169cd876eb020e82bc7716f5059f2c7f5cac9ac0ff1d9054a2f0c9f6678567588d2264d76a083800526332142c93a90230246a33dbb9bafdff27cd99c85203ce3ed41def0d9b998cc2095c444cb7edbb9f4fac27b494d0bc3e249a909209b628d00302047c435bb500673065023100df39827ee429541f632c981965e1fd4405d8701493953148a91f53e56cd93e97309c1bd3c62fc7c1763df28bd85ec51b023048a699137cf754dcb4b7e05b4c147ce713001f47bd1aa433fb96161f4b906ff6186464250c73f7719775fa88d7d6f52f0302047c435bb50066306402304fad8d5ae8b2f386f35533b3d3de95d976ea83cd0ec7de53e824dac799a2e4608fa25eb6ca83adf1764722e8eb3ab7d4023054c7a6b7a4ec5ba13a01c9604e09eedf7188431e80e01317fec3a9df5f01e0543fd1b7934ad9e72a58df16d6840503880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303c3e130777f3ef93f91695f2c29c4688c7d272ecfcaad566ef2f9d4808678eeb0048c9bdf282ed31aac7edbdb92072e2023100e0fe7d23e290db69f17eab8ee172318310e167de6c52d877821476cb9e3e152b2b44532ca47a3515abedccc40d056a4c0302047c435bb500683066023100c47ea039cf1c834e0a20b8aab09b132a90d9899b0bf92d64dec54cfbe3c58be81bb7b8d00db6a2870d40c84b294046fc023100fbcc414924ea5069cbd9fe34dd1c9047c3291c1e8449f10b725ad39e290322144a19fae5eefce77dc147d4e5e3021f520302047c435bb50067306502307d0c7cfaba13546c68120790adcbe1ff389654df1f3db58fae4509d200448f9e19398ba00a41cd301ac6f3c3ebcfa6040231008ce476c7f4c248c511f6df13a08641d0ed57f03dd6fc75c8fc9d49c7dd3ac5b2ad51c2dece82dbf412cef18c80029b070302047c435bb5006630640230352bf112b776dcc1dca24e628c6e9a2fb2d5d40e5adbdd02b612469a60d723b95a74d24582ac9604d6f105a93ad06a470230575034d86c39afe2cbaa4f9dc8d061e497c404b6ac7a54dacac1b69d263c34b28bd27915bc6ad46a24902967baf236120302047c435bb500673065023048939c7f54a1c798ff4a3a2ef022ecc4c8bc913c0668d72fef61fbedf3902875e83374d47bd315364fd998c0e5c3a30f023100eab72914208b36139091d41a2ecd37d389041a437178c42101b50c55216eaece7fe100c6118884d50dc1609e5343ce680302047c435bb500673065023100826c4261efec3bf767e7460f3a23910eb8a152ada1cc6f307ed3ada1b6a9ab5e1621aabb0c897211bfba12b33dba2b1f0230705ad93c03c370a56e3f7ca0e55b7fb4ba433a600a61c4d84cf49b2aac53e2b155d523d470e26c81e4ce5b49fa4257660302047c435bb500673065023100c3f2516ad919e854bc2d5ba2408c2792b33dcc4e8858a4990eab503e22feabe875da9f17e946c03e25872b46cc7305e10230786c8c923f5b446da8e1eb2b7c38786a4141caec80aeb83e69cd337408e82ed6677b9df0c14a537075b63558f1c17f3a0302047c435bb50067306502301a96a0b578fb48f0074a395c8f5aa38acc4511a6d6bb0d2c7f82da7dafbdbf0cb0d0d9eec6a85f31fb4f700431b88666023100fa4656f9352a107489f8d1ce04402e80380a8e4fb573fb5cbe06ae88f96da641f9621a8a939db3d09e9fe644b84e3b910302047c435bb500683066023100cc6d635df59f038394a119a20046e7432f1a561baf4fbbd1b6ca6ac5676aec9982d123adb75033f12cd7989da3a984c9023100a921f130bb9d9f066253b778e3c77efcc3f2b27274dd10a2bc3456ba3b4f54ad460dac9cf5f97a6e6fd6c27544e507dc0302047c435bb50067306502304df88f70ab57f7ddd7b9d8b742bde123c3ba9e6376b3a29ac3bd7476febd4573d80d181f72ffbf88dd957b8de376c422023100f719562e406a93500f3e17b12f00efdd6b37efec5a4959652b6ec865e9665e291e61670fb6ca99bc69d5bac4d892873b0302047c435bb5006630640230340e8b96f0175e5a891e0df39e822e570790de438831282e89b7051d508054523a7f6072cf38080fe8dae4062fc7e3e702305a022cbc608519881a560d4d3cad1185a16af5497d2ebd5da909e24fc05be014b60c95c69e9a7544012291f73f70fec30302047c435bb50067306502304bd5c9b01e95ed65699e113c10891420f5d42ee22b6de1535e5b4a6aa69d88048f0f27319db84c9b672245cb0fb9a5ad02310085304dca2156473d40822d3675f1b4d0f01f9c34967c31be89000b64af1a4566fdba58c487e6050de2392bef23567a000302047c435bb5006730650230389888d7af5792951d0540298655815082b091efe890e9530e0c71e32c152ad79004e0c3c55a3f343e5bfd985c55688b0231008383845b612951cb2c68c74c2a21305594093659a395d9f828ded43783ea5c58836063d9e7fa4d02d1ee16ae9070266a0302047c435bb500683066023100943015ce30e6aa762fc3d6f27f6bc40045e4bbdc500094139c32b63a730a4488066c4e832188ce5134a03312a6277265023100ae8084809962b4362b2fb8580b6315c7edcf373ce003521f128af8e8d7539ab0ebc4cb19562a3dd48d059dff0466087e0302047c435bb50066306402303d8400c87899f425bf0e96f0ea1a315de56c8d664a41d3d49df5d279898d1f414994f0e67443c09ab4144663ac793e4f02303db2c21aca51757c5ad41830a91396bbf520fc18e545164ccf4ee73792e7435676a82bd36fc4f810c2583e251ff637d90302047c435bb5006830660231009245f60f18e687fc005f0612a7cd283776a3dfa49b70b504a9418a8840d73aad950dc37bfee16ef34f00133d6de2c9d9023100a182b875ae4b40f75d1f11c2bb252a044c6c0b673d939f2ed6c84cc1fde6e30f4b5b91d8077b32ceca419819cb1b3e5f0302047c435bb500673065023010801c9e9786ba81875bc7a4ec6a9a600111f55d51d7278b7c03719cb8dc290861559feabfdcc2c6e936908f8ef14e9e023100b3c036a96a198b58d8ebff560ba75a44f6e9506f0a376fd9f9f9592428bb64180093027b7857c8cce0b5514331bf93500302047c435bb500673065023100a442538714c608c0ac7658baaa5e647b262b3f23d0b947c68276452f464bcd1b7b56a4cb1cd55a7d304c24a8eafe9b0a02303858fa896469a6752467e0b9f5925e1c88a6d4865ae2936a2d9ed6ab76551f9c31ea1cf84f4c6280012af5c67c17a1510302047c435bb50067306502305a04670480fd2e7ccf7db0916868895602b2141cc77163ed907dce44ac59f448c7899bb409e053c9d13ae6bc4de8f21b023100cebcfe1e04f0887992c57904f637e748b5c0b60dc550d8f1824c35a26f9c9c179f9d21b7b8583b8aee24ae851d479c810302047c435bb500673065023100e181ade2f4dac4fb93a3170b0518fefd06cff30d91a3a29cec28e324fe7078e5d751fb91786835d35aa83f757615785e02306ecc2fdb8b20ce74162426e6379739f61306d3b247961f6354671b28e3ac2a395e2520f505814958a8c637ae4af73b970302047c435bb50067306502310088155fc30c36b4981a6f64fcc6883b7d50d8f3b07875ebce7d87c47cba66c13c66dad81b4cd97ddcc103a44fe92209bc02300b43c40933f3f90fecfba0114b5e3721d60a84b60b58d231b0cbb592c24c89f954c3675b7377a8bcb62b7fb11a4156980302047c435bb500673065023100cced4b96534d8e93f264fdd7d54d7074a9e254c44bc905ee9c4c9fd3e93a67468a6a84ca8d5471c771ad4b17a4a3286f0230522daf1935b2a99a4d483304540ac6dff0d6ad34b98cdf58adcaa9aea9f0f0d420d3a21992675ecb5e8f806318345ebb0302047c435bb5006630640230476a9c317af43a17f49e85c9989522a0ec565f8fcb5ca584edb0f4b6b40152bf40bf6646ce4a857748277f55064aa601023070c489a280d5f1f37fdf612546eedfd60afa200823207512d8e48b1088910489f2dbd16373e229246966db3a3d8a9ca10302047c435bb5006630640230566230aead27ffe03db1eee24461a4b0684facb58276cfaa84a1d79798a2227975924c0c406e483b245e82912575ce6602305c46ce7d2c911c40e73e2c6711ff8c62996348e0002357c03c580f17a74ae601cc4c5647d45ba73b2bb4e4fda20cc2f30302047c435bb500673065023068878659a3ff424e532124cefd64f4e08d8be594df68c504643b725b13d88c083ca8e487fd978f0fca5da8705b037ca502310088a148c44ae6104d2fef65ad41a0502e39abea0ffddf406c40cea103a1417e5cbe90015af67b2c1918d9a4d9ce36e2710302047c435bb500663064023066f1d8a32344b345962e294379a7bffa8ad731f1a73d2bd64d1d4e29e13b623702ca80f1028137fe69f7c7d4fe78859b02303ac2620fa683b72988aa42af9ea95275a250649b63570c127f365e6b946b8c3ce73aaa5fdb19a68121a1bcc877f5338c0302047c435bb500663064023020d73a802c1e38cde662e0d79ed1d9a73a0661f1d69cf7b327fbb31a0d613f0744e23d3fdadac6dd8e2702798f0c947402302da7b3f1d640348b9c04737c61d9308ac7626c116101591f7730095d0dff3e8951f102df6ce7001b1f06d7ad2a8b73580302047c435bb50067306502305c2e30f6f50ac13e0ad941413977fdb6ae2e1f041751bb390424e468e4aa44eb3ed1e9fb3ba21377617e0627492e65d602310089ac190ca9ac6bf219c3c036b87708a587eeb1899c994d14b6abd02af2667875bdd125cbb60a63a542031ed1a09610800302047c435bb500683066023100a5a9f9fa92cc1da120e55b329872843b438509115b51bc7ae69b9038f689a55b516ee8f15c8917eacafc80b833d5642f023100f0d4e43189bee789a7ce4d5eb9a34d327e6e09e9137120038b8050fa294b99fa102358d75f5070b6abf1d51080ad327d0302047c435bb500683066023100e414891f57eea67012094a51bb5c824aa68f1c1d8d0894ca90272dfd7648d34e5e878295d4c51bb17902bb057fa9fc8f023100fab5174070abe2db65f482bdd522174b522e50c2ee0969398cb07ff350eb3f8bcb2d0da79f411a187e74da558b0f050c0302047c435bb5006630640230447ebe3caea1324b47ddd7390655ad18da022f2ce6f98857fcd2c29f54647f2822ce2129d562765546dc5487677d339802304a51738b40a6dc035f8b57421e792d3a5f48eb3f2141ff82de75db29b4028798b81dde7fefe7702338678693aa0636930302047c435bb50067306502300fd960e89dca03e460e3f886f98a1918b7c94bda09e83a774029d4fba5e3ec25d50bc7c5043f8ed3456c946852bc8c35023100b61d82f8b787aca3005779b00a8153a349563c609507e61aa7562dee19789fc652f8df6017aab653fd668ecbb0b6bf4d0302047c435bb5006730650230032a27c7923e0fa8be71ae5b35e3121ecc6f67a2e1518b94da83f1d64b566fc38ee17b76382627e4b94a61254b69f992023100e5fd4a34c29df7d978bc5dc92d7e20b06c793d22bf8773bcea068a98b13872d9661b2b56567c6af410b2bbd3a42f6df60302047c435bb50066306402302491509c6ced7d01fa3c8a90080d73a5b9e484eb6e059b5e48bf9057ead1255e4901421445a6538e17e4497b1acaec5a02303957105562a81dfa2a1d48a2bca9cec4515ebfd39b9797587f537dfdccd5e61b11ae3ed169299eea0dc570cc7735d4690302047c435bb50066306402302d960d244c3799a4fc0b0fbace499565717118547567e023510546fa518556140d242bf602461608c05ee8f8dac88811023021b68b2dea8b2ae04ad43a2a1d53244cacd48bd4cf13caef98309db7913d24ce2c978bf9eb2788ca98e30ddce197ff620302047c435bb50067306502302197e974f3c79754875f1eb71612fae8532b62df8e7690c1924ecae8d372524523e3f2aaf3c039b7ba126a1f22c531320231008fcdd2c78cbda673f7aa86a115e20349248e7bddda6c68fdf22b96f0a81113dd7283bc07a31e22841e02be2457aaabaa0302047c435bb500673065023100e8cacd18ba0e0907cb6d13b5228bf2cf8de011a1696b8e5d2b1671336174c624a554d1530e3bbcea840ede6d07e617c2023062fde50ca8181bae8c240f8a9ff1d39fbc88add9ae04233be3b5309f5d75fa0000315874061d3484b8b04e23ebba29180302047c435bb500673065023100f7fdb6f0426c122d98d3836c26b50cec3aaa461e2d2c525d2ca714186c89fa89f03cc8d3783e196a7ebabd75831987f10230053aff3bfa5673285d107cc94832968788f94d5a35565ab4ef88b377dcd7f836db42fac7ec25395ed7bdfb0bdd90e4200302047c435bb500673065023100ec8ea7e891944bbcf7113501478bd3dfb08dacf25ad7e337b1afd4a3555cb67c2b0e41a49e9087929687ec83e99ccc170230364fdf25a4a3f9d64e34711363dab9af2b4c20b92dfa1b0c78dc73f5c69f572a0e55fa9742c5ab06d35cdc1ef0ba27db0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304e125a025cd3d6f2357cafbebedaf46934e469a57f7d7fd26942bbf9f13ff0b7083e4711ea90c0b4acf5c6fa159f371f023100d940227681f9b84420802d71064ad54343446bd8c45797aa8e3ce11ab6e12f78646c5d0479eaf9111a15c9ebe10bae3f0302047c435bb500673065023045715190048f96f3777355c74e52fe5a55099a8f7d45f04a2bbbfaf456239109e0d4be271923cb39925c510686ee4f2e023100daad1ec76c9bf0c0703ebe14544eed55ec772f458e45625d0e142e7d3f0ce8e885949ae8ef345a2216a535e705826d230302047c435bb500683066023100ae85cadb9dfc3a194141dc0e23f95580d1875ad28fae7a43f699e92a550b694a4550a11a764583273adc7b72246b5ded023100987883945541a312cea58140fea5ed2945906c0eef1fbd420b664e87f569ac4b3ae83ff5d382096d78faf900795d79eb0302047c435bb500683066023100e7ffc2c4f653502b538a91629b35f9d447a9f766aa856a1034e54d40ffbe1a2bd56c2f4640abb35dc0dde7a1491d40ea023100a9010dc7cf8e298f9c7349b70fc55c8f5516d77e60ca5170fe4988f30a3c17323b1de5320f40736ffcbd8923fece571e0302047c435bb500683066023100ca6edce5c5ca59015545d6f5b8d40a38688617eb251814e96bae209c35e03dccdaf151130294c1ebe5392eef17d9337d02310085b298e2653e80d18e7843e3ac03231b41a614e65fcf9f7b01d927bb678bc6bfc3f0ce0b91bee1e2d26afd20b06c5bae0302047c435bb500673065023100c48582e093e9f7ee40b578f0099e88bb26a25ed68e36365f46d6e79a32f19484f8afc8611ee9ff891428e745dfc7b2c4023053175b49a364b02f032e44473c3ea5d92a9f1eac587518e7d2abbcfe2fdbb7fa1e4170a22a81070a85bed0995fc854110302047c435bb5006730650231009df29229ce38f9430b489f977f2571ba7c46df1fd2148798dab244f11e31c16ef397ec02861fa41e6fa6b72c9061368f02306ce0e15eeae75cc7887056ef83de9483abde0f81779e1ec6cea3b1ec44b2de07c2ab651b3310b4a62c251c96414d84eb0302047c435bb50066306402301c73be4859fa43db5b9cf7f2d7278b98dc2844d274a370d8ca2d6b5c1851e15d4bbca948ab5d631ca815a5e7b120e941023056a0cf658679427d2df21185d243a928cf9569677420af924f6a5d7cddd404a6a9111a4573a21547f0b291b4684ab5b90302047c435bb50066306402305ecaab6d6a67e123c154f10807f55e3a15370f4913cc3b79c477c74b50ce835a5c06ec5ea93ee8d08b0798caf257647c02307a899fca0bd67418e0b4ba49b77076ae645e2ad60b08cc9a684697f9903890c6dcc81a7cfd9e69a2dc158f52aacb71340302047c435bb50067306502307f1b8d5361db7477bb4d78b4a90a6d19a809fcff2c3b625444112ad4610eaff4c86b83cf782f74caafc482810110fe46023100a99143328c8cdbea01fd5d1091e7f524d0a96b5c4ed2b8476952337599d27683d5ae7a0363445b01c9cb1478e273fd8f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023004cde0492af6acc575b87b11f668551f9f6f95fba8cca109b47a7320b96e3e02edb85a0314f28b239e318431216604c20230467f77752c28a426f9626222e5d2d2209ba3f0fc650992c403e69860fb4b9df8854491f7a7f5cb16b0ca91733a1039010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023033f74b186f3663dc685ea65493e194d027e310356d16ffb87569d869afa9afb1ea69260bdde05b7d90e4779f420256df023100f20ae060d353ad29c3188caaebaa52222f5e18c1b587df2e3498b87089856e734838963c08c56bcecf64fece17690b480302047c435bb50066306402307043a13c6655e5100d30a8da28727c1484b815361953d0e87d468a8ed2519a02f0b3aaabf84a99df64b39de88ee3736e023015d47dccd06df4d0597cd6eee93cc0c27a8552e954c40f0d9bcbac7b8fb842544c6c5b2c0a8a140df1764ce2df7347820302047c435bb500673065023100ee25522e11a14d68d8d08ed29fda622df12933c38633ea969f745cd79a32f527e8b4b0ee8b71b56e63f862e1bac592f102300f5750cffe29a53b5c70590cd15c5e5bb475b3b97a4ac0f950dc602c497d4e611f67a30386cf99b1b07305e855ec9ab00302047c435bb50068306602310092f38872b2fb1d3db6ae9419782244d2d5e4300aac116dbd8d66bf4a16d929c4dc3cb634ecfe7bfaf7cb6623d1bcd0a4023100ae12d81ef031e50356f082a35711805acc19c24ee5d0d942bbc89f80bed7e2b09d29df07de0ae690a3ce23e9976672110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303bb0c6754f31de990f100525ea83a888a5982eae6c6beea0a561be0ac29dd9ed127bf04267fcef1a898e26b14cbf4eb202303a24f54911e0b2405ddd8be8a3b09822b6c5bce79f661515d0a5d503d62b85b5f628c3ad4f91591c76f0e2035590388d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310096c473134ded83ed915c188fab82bc10caf688921ae193b28b7493b7b03e933a904b4191f3645aaa11cec2e775dcac4b02307b27dbbcd0502222f2885a30cb68ebae239ceb18ccf0beedbc115040fc18139acdf34c1612a742caa0306de7b781d9510302047c435bb50067306502304b07113637d49e74ba586d34bddbdc502f2503cc7d5a9b5ecf02f2c130be048068ea71f82621c9414be9ee5443881ae9023100b280812b8e24d7441799760818c1868a357926bd20371b8000976fa1f1f18327ca8fc3499265a885f3cb23b32cdda0d30302047c435bb500673065023100f6f7fc6d0e5fbfd6b8e3b85d5a89e1c8a06857f1c681c0b5818a4eaf1b085e341eb59543d82928fcecbca7bd3778f764023030158f743f17ab3edff70a7902720ddaf40605dccbfbc4b80c76a92d2d21ef79644ee660fd2e35edd10285fb95496e7a0302047c435bb500673065023100a3b7aaebf354346a981bdd60e4dd1f43487ee999bd0175e01abb059789b34746c79caf499e11dcfcb26f2f649809ebcd02301faaa602f0d0f28eab57e98ed76c99f0d80eff1ed266b68de8bb6a3507df15fcbf0168a42acc367be8370e2dddb192390302047c435bb50066306402300fb633dfa9f5b4536ace7c2c3766142e1eabb2d6e19cd8837aa64d2796948594dcd48ede167a6f74474df2ec931fbe1102303197f75910b3f7e51b0ed4d15b6de5ef152b7d691ba384cbda6f5ca6c116de1a08db38bb1c7ecafb6f570b4edfbefc980302047c435bb500673065023100a75839abd6750c6c53e8bf36a3a40dd52fa2f4bbbaaf19416a01de58c47b2bfe993eed0ff6ec7226c99968bd7e9e269102300b75be3f2b2ddd4235554bc28dac9e4a2010860fdfa24d5f74605ccaebccef5b8dbeb4e2b487bd513200c398c1886beb0302047c435bb500683066023100c2d6f36560412aa6b721e6ec1c0e31264138da45864ebbaa31db736eba87e68ce3c91c06f6aa817cf377c046b513d275023100fe6e8600aa1880218d122568d3fccb38859dcbbe2646ef829279d9c05e3f6e656b787605b7a7950d2b92c97bbf287d670302047c435bb50066306402304c3ae3efddd330158ea4649d451592efe3ef4772f6b367f371e348f94028474a72461e0dba9801400a713138499b0e1402302c9c241db1324ebd1a3a12ed68b906686a9481f2dc79c4a2248ab3b279960e8245cf9ada87a95463077c510a1d7d68180302047c435bb500683066023100a15ebbe310146a53f75bf6f0d62924305924a39ccf140566fe522081e8b3c9f2b49783ecb3727f942a149ec4cd28a490023100ac25ab867e2acd5df24490e718600f58f7628ae0a46226fbe3c1b4ecd3c8009c550351cb4a6c96cdff614e839c5fdfef0302047c435bb5006830660231008ed4fdd231faf23d9fb7dd655af48a309ad7e5aa17b6e5571908735c9e89b66ea476678373135a5cea35b3f245816aa8023100e1e8007c729bdec3424b47397dfbd2790057843e5fcf7decd4bc1a58a9c89ed5784b1d301cda976868a35957ddaed7990302047c435bb500683066023100e15b7138c832ed542b76dae0d7a08ebdd19e5305f2f1fa1152bd584a8851d2bd063fff31ce7cbed9373be4e22a65cd91023100da4b6e80476d953dc5b80431e485c145360e112159417bf7b7c98b46ba184e7cd4bfd80ca9feb0f6ffda70de98e5da5d0302047c435bb500673065023100a33b195bf9a2fab1f2b3daa34a888b75eed94d23632349b6da7d7d2b0c1a4202cc28c7c0cad3f71fbf0a5948132ad583023029485f0c305bd0cdf04e1cca8bd868e62c7e5eb0c89300f0b369aa18dba123aa3d72fff29e031cfec37e0cf23c68b9e50302047c435bb500673065023100c337b39b2306b62ccd678c9c53968da51c2dcbdc0912fe540d1e3d0c807cb7a9f77d9b2695809aa210fa1446ae66bf0a023029c1093259e89000eec76f3d01997622e7648e4879c55ccf372396eb03f42339e2d7fc0ee3dbeeade15d9aa5cabf771a0302047c435bb500683066023100f7fe93b95764b34b21ff7044034975c2eb4aa500309ddcd4d56ab31014545371c193c1968fa7bc5539f3a52353bd088f023100e473e1589b5f2e46e9943ef813395896f6628684377a5517bb847e88e1a2fa52cb23405227720bbd56ec3c2fecf1b23c0302047c435bb500683066023100d0e090a33b45cf8ce48250b6b986a199e5ee12a8e279386dac17e99f62f03ffb05e315f3e8b12afafd5da0f1505e55cd023100cfb04c2d30291bfcff9c0279911130f7b6c3a4b18ab63d2d69b6567e0549490ddedf1687b7fcfde935ea8447503c27b60302047c435bb50067306502310081f283218115e44190cd991644e44bbdb7252000ac6e80faa8d51d81490c25562e29331a9e28f337ba3d4dd4c28ef3a4023029c478752abbc403059894ac7fd0bd82fc5306fee2314348486efbb9e35abc7b482185352a134dee8ba533cb4d7fdd600302047c435bb500683066023100eff6ceccca1c060da6cfe7baa53dfd475acfc74088e065a43ec00ed05131713c4822dbbf13690ded97707fd6af68778a023100cac897a4eaa91b0cf9576d1bbcfcb6154d3437f7d97897dd7f08f92fa393ec5173324e8cffdaa5ba0663c8dd035936500302047c435bb500683066023100a23fe43a8e202ebf30c14da2bb70263139db7fe4c1076c719f8ccba4b07f8686b0d3144e444daff945f53eef9622d847023100e2883a2afe5a5aa808070256be30a98f43cd414b602c53cf465b3d35f56021e489f6c0ec6299329f86923039a80278580302047c435bb500663064023051751629ec9f624191ca2c6ff2196aeffaf55d7046d0250bb8f2b1bdf675ed26175abf8296e53794e2df149cab1bde8b02300f247e33e14f611edcc04a9b7190765156a231bedd73c1d48a293d09087704fc0db464f5879b40d08cc7f9c862f0ff6c0302047c435bb5006630640230787cd5267c5d6bc77cb232a39643ec4cd22a47ba930dbf6131a77738f21567f468cc429077fbb3fd5815c5364ecb678b02304ce41c1dc71bbed8eacc9a3baa919fede0c7423532d8e198d3d66b9c44e540bbcbc2904fff43fbe6c463454f732164070302047c435bb50067306502301150b78f0603d25ca92826ae1b6ccace16de27bfbdf3a09b3658d34c7ee130761e5fd276e72959648ed9ac696473ee10023100c63b9844afd51d57f987b50edf011e486ce47bea9e314391bde873036575c68a2f8ae653762644b8de16ed6d0029f0710302047c435bb500673065023100d5c4d1e2dedc4a4051e303ec4cda1f2a4a4bab7dd032b4b64c99685de1cdea99b5c8ed7b2d7e89a28e1a38413c15974a0230209afa1a9af9f420951d110984d008d36f6eab175ed6fc91a45ca11194cd71a92bc636627cb58ed96ee4842277c8ab8e0302047c435bb500663064023015adcecce38479558ca709a1858b2e956ca9579e78e8c08d4a763738cd85757cc3b67107eb28b0bd1158338caeaed8ee02303963aba0aebdb049e7a3d308ef35f3b257c5edb02503205dc286a001474319e4e91177fc3f3a21d96d828c3f1a0e9e720302047c435bb50067306502300e17dc12d931e2b34e019a71b6a66b3ee7e80ea9e5800b4fd1645b58b4003f63b275ab81d2b3b5ff3cf819bf4dc18748023100c248a621c2320ad669cc716c84cb6a17057f644eb8cbdbd87d9d203e018ccd1cdb99b87fe939d36896208d54ae4c04e30302047c435bb5006630640230481ed0c3aaaa57123eb49ddf3518a10b6bfbb29dcbe98f96b0ea2e32323c8f0d778f35e9b8cc399722134c3774c1b90d023065fbf6d6e44c2031976b8ae2d059c3f0032e3e644e14f19b4974e7cf3b75bb0dd9163cc93a102deb0e8ea1205c5f71f20302047c435bb50067306502300b686bea4e5059953d2194de36fb133a7eb0ff675446954119b7111c136bb48597e99338b5b672e7e06dc523262c6d3f023100c020ee088ec2a676247cd2d7ace9f9a64e5e26fa072c90c0b0fb31fbae8c62814db5c197a1ea1a7f6c9d396b1e60fb6b0302047c435bb500673065023067cc8e44e79267eabf15e2e9af5ed61393142fbabe84315283b5f71a68a367e54128ca25fa9b6aeeb9270f91f787c99c023100d12102dae6b99f777a2da070c88dec8af8bf295440d3c7333f29a73d12323af316a5a19d7e8a999f6e04bb98f17bb1df0302047c435bb500663064023075ebf9dc68130eec7358019c1920451bb41f7b75df91b3d10028536eef6beff4fd6f74012d8e7beb2ce4642a30ff801502302d463c99d93fcf66ccc490e9a79f807eb08b8750064cd340f5a56552366c2b9e086533008232bd1efc57037385ac60f70302047c435bb500673065023100cdd88002b12c7a66571c93431086cf0ebdc60d3f90eeb64c11847edd75af82825c2477b5ed59efae04a740145a426d2d023069e8acbe8c714c4cc7f6895d15026085b4b843518b19a802f2b270a0d14133fd8824dc8c2b96b423778a79d9b2e3cbef0302047c435bb500673065023100b188d17fa45b7c1617cd0bf255241c206fb19eeb4bedeb9324b771e60d7c74058d4007b7d51ba990c04bb1d5592e78af023028877f9c91de4c4ba57014d9f6b688f83afcb4f41990a91b6d13756d45d00dcc325059665132f9066b9369b8cded7f520302047c435bb500683066023100e0c61bf4e4c37913a4b7b3955a570f3d39048d6d8f30cd89b448afb4118eb4330a5ea2185de8502770e052cfec39279c023100f51a0194c69addd399215dd7e180a00099f9fc75d12410f606b64f0f0558501f30af2d731f4babfeef01f5e6ed448fdb0302047c435bb500683066023100fd678c80fdb01d3754a03c18c8188ac2a5520ca06ef45cc15e96c9222e70ef21aac0caa119b72063983720415888bdac023100c01d7e8c811e49270e88bcd374dde1db33a9822d5117d455b7e7986997d0140dd2dc70b8f02c02d8fdb1b3ca966192370302047c435bb50066306402304321ea5c5637ea380814bd1e80ea2c5916693112fc307175ee96e390da09f604f1d17495cf3a5c37b295fb37b0950b46023068dcb76aa8bb1862947c6c1cc0d352d94890f202a934ce90b434691fed5f48829eb82737aa52c09711caa2fc1bb771320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023077b601b45ba4374a1d387c336460c0abb746e3bfaa205bf4dcd6230ac06fea882dea7892158cc601a70c5f71d7fc0aa902303f45245d1f1adc055636d219ae0f5b4ddc311cdf93ad632224df386182cd1b7249d9d9b2f045cde60d3f91b98720816d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310085c5c3b0bc221461041efd4c72a8848e28e15f42ccab463cb238cd61beca8a76a11be56a96f9809677b82bff79cf7cdb023100e151677937c73068c0b00504e5f2c71b4e55f2d4fe4e1faf8dfd317792eac20b2e21b59ea1d84c70461e7acf1c84e92d0302047c435bb5006730650231009d66bbea812ddeb6aaf8cab165363990bfc597572de392926c3457c339139dadeab877621dfa03cb31854eb0de59e829023025fa562fd019072931468d66333f4967aca60fee780cd0f54615cd401be08e37f28e3053cacd42940c2c669bb197f2af0302047c435bb500673065023100f60d0f5c65612f958862c71b834b8bb0d0c2786a02c966be6df886edc148142543aefe996e1aba4bccb344b81491fe3f02303cb776c85a4d67c5e0c084a14e231a2a2f63c0bf65e6baeebcce24482509e6c8cd5ae049b07d7355aab02f94fe0ac8fc0302047c435bb50067306502302415cabf194d565e2d63254a77af233b1c3e485450357166aa8e5c9e5e3ea48311bd7d859a58ba4f65abc3467389765c023100e9d8c16e9eb5c3efca8ada8bbb73dabbca0e287c4cde6f1d86bf40d8dbb9b625093c90009c59ed5ebc15f28f1cf247520302047c435bb50066306402300f899e95dd4599c63e97ba0a93a7418399f2c9827142222e3ca4c101a545f18f35330f3c4e8f745693ae63e379fd487f023024701730ea8544fee4493af3c60c9c6e80c091c51dca13e9fc74abefafdf3534807810f7ed504d1051217642c798ac510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008157d05bde06a9c33024ac5e80aad1a42430fafc333e36b21e1182308a496de46d06aaa1899175119baddd970488724f0230433233936a627781b83641fab427a47de755cd98d11a5eac1c2323782e71d1a63d2a1194486a957bf825b13c6b4e14b90302047c435bb500663064023067095dd414b53ce93d1a5113ccdb55cc134f7909adc382c61521f90e2cfbb7a4897ffdce9ca9b003377a1b07271b28d002300ef360f219fc271d58db3c45dfadbc6f5e6c50c3f80ed6bd3488851691250f4501e89f10369ea007bc952b41e67c794d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023074f07740df8401d91c71a4eb2cb4370c1844f4d351b893c040ae8a28891ef016e6194565d244636ffd59ad1df04bd88802306a4a14764d091ef6d9b0cc9d9616a75f6361e824758f50313857ea212ba715f442ac146b70be2da4d2c96719679eb7c60302047c435bb500673065023100f1a55a8e87441ccc542f0b447d3faae42af591aa67f36e01e34862e12c845d9a8326efe8531ba5d665e00450b74e00b702303164e5bbc63755a3ba0b4dffa904eb96b0098d75dfc7cac983c2718bd4d4d4780682e11f8ddc311dba60cd9de019a8e60302047c435bb50067306502303514c339291262f0f50d6afa4a0250ff6be9f53e6d1ab2eb7a20e4e83203f3e0227b54fb0fdc5a6101d88d7b7a12f48b023100e678b2bc59149e92119d472fc7d03580c5b3819ca2f38de5f195d6e36e2ee70d16350e16d1574b5629200c244d3e72c30302047c435bb50066306402301fcccff2524ee6ff7ef0d862bba4ff5d10e7e1a2e27243f5a9c42af9de558c2e306a05a2103c6ca794e99bc893e3befd02305729ed7fc24b0dd42284b423ada9be3a97acabff051474875bacb2bf4176ad0e2c9c98d3cb65e00d9542d18c25881c110302047c435bb500663064023021bc6bb6785b727cf5f372ced9f76d65c31a94fcf34b875d88f1acc106bed4ffddfdc337c018586505417b97894cefeb023079cd2995af08b0a77af440cc733ad78bc1b3616bf768dc83409560863074be87b1a2d02564337996288696bb2cfad9ae0302047c435bb500673065023100cfb48781ce474efaada7f75c8bf321b6088393144f886ed9cc5e65922564c5e9225afb593033c71ecf81e3388ba443af023039c9488154c9184c9fac8d8173d0eed39d8cfaac4fb643682a5de556382aa57b924244994902e351b5868602418fe43b0302047c435bb500683066023100ab465b2fbdb4767cc83ae5367a655600c26aa1c689b32d555e2f4dbc2d38f2ae164b7ee250f51bf74c89fdabc84d8512023100ff4e2a3c42c76c8457024f0c3c2aa5c0a4836d32a3a2707baf9bf491200b4eb8dee4a7239801245722715f5f4fc9876d0302047c435bb5006730650230762beae4c91a1ef073648dbb1654ae2d8c7ccac44c3a586edd1bbc58b88223feeff830e76db74e94c11c3646628cbba3023100a775444abc735b4e183599b8b7773b04351194480e92a3c572444182473eb5712008269fa93a81ae4dcf81f9118a5c9c0302047c435bb50066306402305b3fdc2e7638e988d3dc8d2bde5394107bb773fe6b40bec9d0acc3525dd42260a330693df114416c9e79cb60f3b9e6e802306b03a4efe9daaafa0d5fff9140373b690b0c40993a0cd53536cf643a97aa7563362127a7bff920922c181ed44e8d154b0302047c435bb50067306502310091ba0588a6036740cf1a877feb3c13e55aa9d1cc88347a80c7253647552da38991e29a070d990200a87f6d059f4bc56b0230779f291d8e8b02d4092e4d6973e87d136fad7ea5785eb5ca27d74561849464b705c1cce86ceb9fef16330d82a9c0cc6c0302047c435bb500683066023100cd490ce1d12b1b57a28f81ceb79c48691001de89e228f4cce573ba8b3aa7c7885c9d9128f53b7d74af8ab816de4b26540231008f3a88df7547ee811fd23fbd31fd08b535debf34ccaebb16954025897dd6fb80a14f3cb4c8a85e3a037abf0345caf0d30302047c435bb50067306502303c481d1ac2accc91c8049e1b21ab516f7818f5ab06f1f0b3fcf996817ac920fbed6873d0ec26649674bcefa4b0dc9ab1023100bf9a85585ec0f76a25426559c3ca3c8c980a9bd43b513ffac19d56ff227d328bfd3c31c263b02994dfc912c2415433490302047c435bb50067306502305b5dbc523ffe7e5515cb6397e85b1e31d5900a6c9d8f141ca64d7fbffdea7265b1449777557102fbe6bfd87fc45fb026023100a952345e7e78e6f2c63d689ce5a044e984ff18439c14e1bc166cbd629cd15bdf0fc65c2392950b18b24914e1c71728e30302047c435bb50066306402305cafe258787c436e041b410c507972160d7abbffbec59d537178f914f3827fe4dcfc54c0995adf5a17a5e36a85d70571023073a0cfec26c00d6ec7bf8354485d66664f9b548d422c1b2bd08c3ec85981d625b4b6fdd6acd041cc5f9015acb8e26c270302047c435bb500663064023022b18133b0907e0ca55d72b3d597a0faf15e09bb88b6666bda570ec6c54fba47905db36e841258a9b99c0272bc559c1f02301588ae3e99a3201417a41cc5a2c58df9d42be106ae13fb35852ec229563fc3fb58a84117d54554bc4a3499b24ecec9c30302047c435bb500673065023100df9c2c444769b91f1ffb3254e5a05aff3413a1b8e2653b447bed87a5c404277b2fac840d70114e6d37ae09134b7f54f202304554b34e1aa5b5feba4ee6c35c3e31d857930352dced126bc5793f3cc81b22cebf981b2876afe6b8a0aaddd352d6e0530302047c435bb500683066023100e7a3d647379cd7a97b456fde11f17ad240c603a7a173150e13c7691c4f8d2d8d839b7e6959d62cdb980b06a180146117023100c814e7e716f212fe6ce9754a6010942221c508a0fe08a7486711c470066c481d50264d2a4604f964571294a9b7abb3300302047c435bb50067306502310085e0ce23d5202bed798d785f75debb5f95555a2b63378853eda18c110e04dbfd5af1ad8f65c4f6e6331189eeebe95829023029dfb2d0fc52940658a4c8c665872e082c4e60c18e33eb81935088cad1bdecaad2732125434341918d3d03f5086c5b2a0302047c435bb500683066023100d3704b9076246b9d4f74033d5958d24414fb0700fffc155e42581faa9fb8f207402fbe01b7235c4e0371f0c743c53074023100b58c10225a22a853f6c948404477ed2588f1f1c4d5a1e86f2bf18f5001244ba20e4e4f9b17a7ea224aecfe3c206ed0c60302047c435bb50068306602310095b696f87f3dcdc40adf499a2f63787e39240ad7ba48f7c419354fc5e1358c2d57b1a0a37a95bbc0db4bb8d2a10370c3023100aeb498f4cbc882d7e5e4e625be69a39e2316a1cc6bba4e7428a570b0b906309afe45b0424a88e95ca9709f5e04e853470302047c435bb50066306402303361f438c1e5eba1fa7ac866bf9bf389ad98c441bbb340dbe60796e383d0863c3bfc75ea07612bc349660a7a70c4350b02304ca9ada49f7d4e23311a27160cd13437442b0072a59d8c446f9c7ba3a120306d319d7ad7dd97c2f415914b8a969bb5eb0302047c435bb500683066023100de0aeaac6c99567837d86a0a1ed75c7c0cd993aecd6f3521b2a2168061e901584bc72a2ae8442ac723b1711504a8b8df0231008351e8935168f96a0080ee316eb35e6b9c5383ce3a8e516772fec857263d09c36a09233889a8e43a27456fee2a2f7b210302047c435bb500673065023100a76b3d4f6943bda1f1128f562746250241b78d30aa5a07c65ed60c5c75eef9796e7506ced6a11ba0af5deed16bae838d02307eed9f1aba3c752c8f42af34c402fb844eb2a77dd707444a3d6ca829bdb938bf96df3ced93848f80590ae41c3bfec8c60302047c435bb500673065023100f57f3a70d605044d368e48ca60b707a52e03daf544bcdfa23411790b1356174f736c8ac4a0217337f54274b8af0eddf2023016dbafe45d064ce04f7cbf6f2f59dc9ca43beabfb3b1c29df105760acc3ee9e5ad051bd5ba71466a589fd46d747cebd60302047c435bb500683066023100a8dc9de7e2fc453eb355b60817d3d9390265db75f261194c38f8b47e2136ca2574af6995a8796bec1f92fa2c49746333023100c77181d114ce62192cceb91ae899163ce44c6f23214493bd325bfb9d6494307a8c329f847115a23ae215d93427069d970302047c435bb50067306502310097e02ac28fa2636daea033f485abe634a75ca54a0c3abab07b2927ace145904ff5a4f9eef62cd03602f082b3a2af41950230738d4633d1e2359039ac1e70888b07970eda7e9e042a675fc972930a021cb2b64493e50b523bb94e829659c15021b1f90302047c435bb50066306402306c88ad3b0df8f3b4e5edd9945ebdc81f58bd791bf3acbf4e53ed4d8bb370e28a6e254e6d39af7b1671c2735d27ef14350230128e8023548ffe5ada10980ddd63cee6ebb0668d99f4913728758772d56ce8c9d093d63a472db56e8a03f3bee15647280302047c435bb500673065023100a3e26de5ac8f24911c94122e515efa08d406d002de726aeb4bbe1a3bafac669698693c47ece4c02a844fd8ec6c9d6f9f02303a40de7499473a587183202b5bdf3b14c7a36465c986f9427c5eb48a261d6693b1d952f3ca8513c0d57f52830914e0e10302047c435bb500683066023100d3a0708385f6e009c0ddf20614ac982746026b3d892051f6d883ff658f1fc813307efab23a6467f269b8154c16db38f502310080d7c7a438470c5d2265d2e72cb117540aee57eeda7febfedaad7a942026e6f6819fbe9342440dee6e405b4b38ae2dff0302047c435bb5006730650231008656759be2d9858d0ac5b38300596b519d764a960468a49ad7b5e957ee4a259787efadea2a862f31ab85bf1742ebbe7d023069bbf65282cd8684943920f2a0548c4be1238ab890b5ce954bc3b9a6f47d383e2d9c6933624e6b3273b3c7a39d0ece200302047c435bb50066306402300ee70cfa59e2fb83462f2db9ec388e8659950e1c1ace3d112363c50f37eedff136f854437a7e9006d1db71b83f045c2602307ad418792d64c5ce6a14411c512b101c4dd6c784121853b878825a2471eb1cd588ab0969cc40cf7edfb9806a26c794ad0302047c435bb500673065023100d0f874dca4afdad1e912994bd8dbdadf7dae2a913071ea3d611190391f3d86c2486c6bae2f6474f85550883722ff050a02300f61f6c909591ad90ef6b6ee5ba00628fee5ca8f60eecd868748b8144cd54dd7b8f8b3e2f1614685c84323101173a9c70302047c435bb5006730650231008c8bd50fdb832aca04281c32a25dce2291122b0a40914b7bb5fedd22fe9e8073b79d294fb1568ec477c7b447b2812fc502304c70cd9f4c7626d507a88502f764210b83a7e9a761742345e67c6bfdfe20bacc133af273fdb87de7f6ed665c55b7dfca0302047c435bb50067306502300e6e37343fb9ca78ed2bff344669efa585384a121f22fb62574943e07d10253557332146106f9d915e04e46c69a7846b023100d9499c10a37f77862932a2820292d98e4e71d94c256d857ae78e4d89a389ba348efaa90ae7f79bc9e0bdee24e977cf090302047c435bb5006730650230395d4ca4d769f5633ea5be3005e30dd555c65c6b9f5129b4c579bb66e615f3815e3142d03015703b999e52ee1c774c31023100c94326089deff5b0466b120ad5d04002ad7e929401153d26d01c639f7d4dd1ab738f856a567ebabe79dec82eefb43dd20302047c435bb50068306602310089eaa4490dc348a3a9c781111197f196cf517256ec1f8df446ebc50d40cd9ff1df2a027ec7761316456a1e96576b28a7023100a37c1deb57a413ba631ea9f5b65a8d8618efdb52ddc33d52542054d04615796419b465bc6e96cec785bd29805ad4ee370302047c435bb50067306502306d1b77ee539c464a76aa9e29de80d7734b1b7ea48d6bba5d4dd563996b1a2f46bbdf2ca786d0d46078d0c5a4c781431f023100cf99f2bb2a2c97bf0ef32d46bb69ee8e39b0d2971f6b5d48928d2200ac06fe5d5a98302df4b6f25158f5a4b60148d1fe0302047c435bb50067306502304e3060c39f153f6f0aed0c4f342f8ac1d02d4c284c92e243dc8d70b6eb5f552933cbdd6d24d0a234488eaad32c1739b9023100b14678f39e998d0eb02da209ef5726bd6184e733897708ac256cb3c10562f51dfc3e7c240c7f26ef223212a3ec16eaf50302047c435bb50067306502300fb075a92baee7887bb499755dfad464c74e86be3f8640d7662d2bb432d2033192aa1acdc01cd9fa01850ce38ddfa89a023100ea144a480b46e67250643ba067671be344dc14c6624b150bb723d484633a0f32e845455e25901f2d15b29c6a1774a4fd0302047c435bb500683066023100a2ed2869688d9e2d6a3140392e946b0348b3af76db12d98ff607b2d93d7bd481a0b4322b06961557c2d7df0006db49dd023100f23f483b29eec64ee75157015eaaf7a451b0f1613a9a557c2dcd2a3f2b105769d7eece22d2bbfc11d81cff7cdf7f77ae0302047c435bb500683066023100a09c198422a3e91bf28b0e1427e4f22e8d624dc6be997f00fb0b509914d35400f8b0c4e3507b3a597b1e4c4bf22ceb01023100ea6ad0b6deae0f26be15f88f5b9eb2374956b7f5499673f540c45c7bd7ff4aadc4736578eda3093e006b8972d8d12c740302047c435bb500673065023100c956ef71ee66ae287497b9bf3cd86af7d5e847bb2bbed2ddb7c6b234f0efb16a85aa441d0ccfae7bfe667b816e9b217e02304d7efdef4e7de2749e282b328bd45649922e04c3e0f68dc610b8024aa041315a387ae25632a2327ddaf05a9874e8fb930302047c435bb50067306502300b2630f72e2d4d9bc990074d9a9150cf8b36cc2025ebaf715ca86e9df535526c2e15874585f5514e4196502716642d23023100b214f0f52a7cb2c3bd4f468abfe6045688f03ce097b458ea970e6c01eace9874d2e3880d8dc322584a6f65d5c59c84930302047c435bb500683066023100c817460cf5aa8cbc2b60873feb6b1b012ac322933cb661659b54d6467b89657606757d851af63bca2062fb027e61f872023100f9add55e6c6d6212e2d737d6a15875a74848d765c8db13a01b659267acf39b317d4a0f46338fa43567acb0a30f03a3850302047c435bb5006830660231009c022c143ee616def5f9617db17b095bac1a3d5dd609cde7bd69eed550d7707616499fbd266412e21c9c554f46ec11b1023100af766ed1703b98987bf177bee7f7434423328409ca356ca35cb4a0199ade557327aa0bfac7fffc22f88e73fce2fe9f5f0302047c435bb500673065023019977c7cffa409b76c1c23e139b1a66a9e5f9221de717836eaf58f7236a72360d56abe00750e2adb3671fb3e533b723d023100b215522b32bb6167b889f586ffa8f22c65d33a375eb313f9fc23d9e0b70afe8041e91971f22f6441f43ed37e37f0f4980302047c435bb500673065023100c7f058d64d2c10af1e67bb926f4b66c6f720a0fdeb5a7fb32bbd36cfa7b6171764cdac88b3110abf09c457ae9e11b34d02306e2395effe14bbd35836157eedab9469a76ede636af643285b46424929c9a64778f13a7e6c8f8c5b0510e144ce0f47610302047c435bb500673065023051efa500b5e73a602f3b5dbbf7e36bf6f54b0f1b9dbad9cf6909dd3f655c73c02cd25931d12034b450308a96da6c65a6023100ab3dd34d121465dd023bcc67900bb7fb671ec224bd3961792b61c623b47713c20ee725a1ef362f0be1c5e5ccce7663740302047c435bb50066306402305956a6f62c6d220b90f034d14378577c14e1373b014ca6477cb18505e9ded2b4cc95c7910bf3dd28090beb489133657402303ca540e43f3846bc98089025c76d24f943587ebf0fd84c2cc12b145116de6afb4b067e0029b5a6036c7e2599b66731730302047c435bb500663064023030a6fb199c78edc2f9ce180a4640f3f10bc41d63dc28f1fbb9789ace1f0b8980e489963baf6a0e5cf9ffb0b8782bebde02307fd4403dc72be29dd28ee4419aff90af4acb73579023c99e27ed65a91a0cee8f18bb82ce95437a422672ced030afc3b60302047c435bb500673065023063b674cb51b004b3815e74c98f29629ce014aba006481a63d9d203a6351ed182df0aad5e8c5e55a6c78db62f61302ae9023100adb973aa39fc88faef14e37120272077bb79af61c92f38c8e45ee9665db09534d0ae34cdc71e130df1f28f2c341b27640302047c435bb50067306502306382f8d0249bb2ecdd0e802039a11e8f5386e989090d1eee1383961d7c9af17214fbdf83d5fcb2e20bf63f6a56c90d760231009d69830ff8319ae7a3204d0ac3ad6cabeb74527e3c1009ec5a5ddd900d3f951ad1a3a880de8e1070cd4317c4e1ee39060302047c435bb500683066023100e086c13e523a1e3ae66f90fc4c222bf36535b25262db777e5dbc09067d256031c1f6fd4ae730079b6208fa71a68c56ef02310080296eb7cb6b4d5012392ce4eaaeac97fffae00add3ead1aac9a21344eb1fbd0c31fadd0d21f4a57d25dec87eb601a750302047c435bb50067306502305e6ad9edeae7884d856c5e7684cddc34aa554d2c13b15dd3df3ab013b4d67076bc0822edadb919b7e17d5647429fc41d023100e97d36246ff374b61e6244c89dc4bc864081ec055cd6fdd9e4806beb35680fb3b86ba8e34fa6649a5aff84926b80fc660302047c435bb500683066023100e294ec3d03a25a625f1efc4b887fc8b7d08666b1bfe6c98993910ff8ebfcbea84b4984d64b937f03127e8ef857fa7ad7023100ca27ea374269786e84f0ecdb93a8dac3aa63a8480acd39fb65498a39b71bb81ffb4faaeabf02a2d15479e469b8b6c6470302047c435bb500673065023100b3154bb1fd00be635ae2ff6db7f87d6969d71cbf8f45868dc0e08f1a6f2d2d2d143491e8d7e960e0e7bea4baf1eda2cf0230117c30ebc7103a283ac3de6884c9f2484830428af84e18a7eb51b1859b0f43507418239e8b15f461b55410109a6ed1f10302047c435bb500683066023100c9d9362a395ade9ba219fb48e500931b8e354fc5b4d2d0243ef82473544a7586ca9b7f574cd337f280f2b788681c87e102310082de6d5c16518effb9e7e8c73e1564bf1761fb32a011a9c54ecef50dd1b16c381fa7fe72d75301701637fc2232b434b60302047c435bb50067306502306f8397208b085a3a6b7efc4fa32728293d9b01073c30a783b5383d99b149f8ad42b11917ed77a42a1c2195fb3d6f2fc7023100e3ebaa617bca9811fb4cce2a2334455365532e9707c90644ed29d54563afbdb0671ca61a8d0bacff4e827f3f2b360b460302047c435bb5006630640230041bb6cc15a673bc780916c89e28196d7d99772016e28cfb9a29bfc0a17703cfd8389a865dcb68b060cc01911d45a7c7023042aee553345e1d248c69dd1cb08752c3a393a382491cc0128c9e2339d8371e9e6f652d74771b42fbf70ba0c20819ba1a0302047c435bb50067306502310089969f43e0d52fd0f394d21d166a04121719051fdfe1893cf963c26db3fccf2349781281b6337c40e845a4b40a47a5ef02306c0ab1812ae89fe9276de41a028177d09bdd0656d511c4bcf5c34fc88b25590a59d2841fa608c3b2deba9898b4ddd0ba0302047c435bb500673065023100e45cd1f81ec4a0ddf227bc846df5ebe475230299906d1d0af7cd0a6d56d1399854979e5258f4b72303593f8c88d1cb6f023050a5e32efe7db4528b3c96253e6f8ecbc1d081dcb065b8ef9a25bb38844478017ca561c533c5953501b0b3d844dac48d0302047c435bb500673065023100b17052b871a2875c8e9d685601d888688ea334c254cf8c5499394dcd837d618f819bdc9de3fb2f098621b2c0e321b7a50230705658e0145be6fc3cdfc3f1bf2d44d24803ffc80643d2e413b6d5119e81e7a30acd995df61aa4a8926fa7dca1ed3b830302047c435bb500673065023100e4acb516556afb2f728feab5d3fb62fceec969ec72bc8bd15172ea42cfc31cfe5660f18cb1a3e7318ebf6286bfdd516702302bdd93413a39398f941e190cb6473da265d2d6d47057d0e5270078ccb953890c2b2498f525b7ada9978ec856204f177f0302047c435bb500673065023055ff0014b9dd866b3e93e6bfb95e9ddad738da199a0a22d01bf0c4f6a37e035a65602d3df3ed7745e95ea2d4144feae5023100af5327fb9b56afe2be63d3aab05a7fa8f73c7492364815f8067a509ee427794acdc50eea6df683be4e4b6a7526e722610302047c435bb50067306502301ca87ae02d9f553a42d7190a9ff8a416c9e34f68142b04a0d835ef0ce6bcdcb72e4c94c27d0a160b2c70b0478edc4107023100c5e00ba012f3502ed9c3f3e785b814f4ba13d0231b08f02bb219145fc0ff7b9cb137ccf9ef23cbe137bf3550cd9334e60302047c435bb5006630640230453c97653ba3b5d58b43bbcc2a3080dabc875a46be6638f15b1e65d5942f8c3662924273100c56242d2ecbf8faba0bd90230582de77ec8fd883d29a4ffa510a110e46387541b354a2e8c4b39d4f18b260488cbf1818848172f1c7ebb2657f5b590d80302047c435bb50067306502301ea8c11768bd0772067e2e71a3427f68cd2607e1b39233fdaf80977c8aada12c02a45a1ff75fe6a260282bb4df9cc380023100d595dcfee7b19854092d26f91c32a76b1681886595bc5a4ba1e565e84b60b3bf47921cff9eff8ed9752f14f766f092630302047c435bb500673065023024a5187d544bf33234e6e772ce4f2d10fcfb2d73fbf70f274d6f57326626d0d0e84be2baaf5668bb49078d6a04252445023100dde22dd3350ed657339324c0ced19d82ba4022b698c085f08c61fb19f8f450a0f87e56d60d47e1d43892a032b7d3d1980302047c435bb5006630640230590f24817156199cb68974308da0ad0d062989b188862698d7e8bf1a466e132d826e2cf0cbe3a2c92b77864eb3e2c74202303c7c248a54e693d29b2de234138ab4da8d07564c1e76b3934e0ca169517145948c8b18dbda6a9efe599aa03100eaf7cb0302047c435bb500673065023055c2c93535342ccc3956bb52a75eeebf73b84275a5e44451520f4e4ccc3c0be5d34afd317592865a7363a256d14ca8fd023100887a7942bad6244fca7687dd3fef17836375ef8c9ba2e3c23a51bff1c47ab5ddd707c626d455a2159d655db227599ba00302047c435bb5006830660231009f4b64f779dcee142acfe3d1a5d157a6d4e4f044225300359f7b4e88506cba3af0241a3de4097eab169507903f625573023100b5719eae3db6f2b439a0309196ded27ea60d082242f662f137c874f34d341c60defca1da60f7035bf93d08b39c74398f0302047c435bb5006830660231009a1a9547e4c14b041cef1367d438f784d6ee0e5370fe353f6ce117140a199d512ecfe5597caa125cab364ccebbbd46c4023100a956768ee80daa51e77dad95a8490a6970e488ed452423bc63e955cc706e7d871bed3cb7fd98f3eaafe54e079fe1a7f00302047c435bb50066306402301e7efdd24f62be4cc7da2e1fcabc2bd504ae090c364e56e9a8b0ee01b55c6f8fe5649408958573048ba185fb2c123e2a0230509700f94b5827eedf0ab2ae290fcb8c5b94cfa000eff4e7d3fb4a7dcf91b50048c2eb431c7db81f771033514f60fe0b0302047c435bb500673065023100c2d326148f13810bb6ec4d14fc1e95682b8abb610cb0ad854c440bca30a98a7b3042e4e2e7bc202408f81b46c757a9cc023052a5978fd7570bb3a8739d8d04e8c087f136e346d50d67365531b5f2d2262e71694b2ef7f8dcf749304d6e20e376083d0302047c435bb500683066023100b56ffc80c02cc8b45624325d6268a05e018fec97d771d4e24c4c197aa92d49ab85a7f91a733fbc25cf51a231aaac4f32023100b8e2650efb3efa847097f52c8f26fcb187a293b7cc67fb29540ff0e2eb50fd5e42464e189de88acd91c369cc7cc88e420302047c435bb500663064023052d06ae80acbd59f52185b767fbd959256d007860759518a3e82bb8bbcedb2d15c0de81c1c9c1dad42b161d8f10246af02303f59c54550ff549dcce12d7276f019a020ad42c4a43cacc4ea9f79d6ddbbdff28ef0f52da0bca273aba12d07bc0043650302047c435bb500663064022f06a6a48c5c0ca4a8f844941f5b86e60e539aa931bc487f14b807ecab0f037e2827ca61fccb60c37f11ff0eef032857023100dd6bd06377773d5c990f9dc3e2bb96cf7b321cab5a6cb5d2f72b7de610517419f3cbfbc9c255acaff4580fc7993953920302047c435bb50067306502300fc8b5bad76f23f4721b20809d701a31904c5a310e5f4d553504fd10e29e2a1faab6692a7d18a1bfd72dd1090a8ab44702310094331d26929d355528d60f3d1b090f035d9603e65f197b95ed269110554847b1addcf05e7b82cd2c091f269bfe91fb540302047c435bb50066306402307811e9fc25d85e3716ab19e53215db13646902636967bc5efc70228511b5fbccd416e119ee4f81ecd629decc6764922902306ca7d10e6055c0a8d554f724f1679cf44ae5ab069fd38b92d8eab456901830226aa5a9c11a2977dfd0c1e9352bf7231b0302047c435bb500683066023100d8325c2a9bfe72e0e715ae6a62f9cc85738ca2c66c1ae43bb48da9d1c1bc13966f5af20a2af58ed2853669ffbf30ab87023100f3b50af96b63aab337c99ef5566b1acfc1d541bfcaa1663500bbce1d6ab55acba02f3f5b774aa96f5d7a24106f3df02d0302047c435bb5006730650230410d3d7f0cb83d04fccda84522abd3e416b8a184d85155db1a898dffbc4c833c6ee64a4ecc71b8f394ca51bc3ccec96a023100badc26ea6541e44855d5f9f5116c7e8b9cb69296d45c7e6e6f2c7a6a8dbd9d60d4281cd2afd0718b5d5420882bf245550302047c435bb50066306402301c7764e315a75855ce4e814d5b037d8b8d7454e1d0738561bf2464c39f3ccb6bf535857eaa81ebee6b6f8bd22b2c0f40023066700a80b076dd30172b17d4578ec8b7aa6d40170b648c88a732c2de86a51a3ec1c3ecfbdd9fa98b47c186b45c45828f0302047c435bb500673065023100c6d67c98f82976ec1c01dc7501b4bf226b98847bb78020ce5e92bdc63c3368edfa3d7a4acbd5992f4e8cbd102a86a65b0230449e3834e26239a7dca64318316f87cc4cb53b47d21e0e95d49d60b9b8ca7461b9124228e4f043611f6a7fc142c50cb40302047c435bb50066306402301bb4dfec06b9df901f4fcbfbb56a77995bb19f8416d3cc177a830e925379d2fe54ef7525c038ca02ea46b80560fa1fa2023064077b7bddb2db0b1a3de2e857adfedd8450e36e1866590c498aa7ca006df57a3358ffdc450d595b4181474c0b117c6f0302047c435bb500673065023100a056406a10fab18b0e280721db1fdab66dd75ff025e5e489461f7cd06fe1a0fbc4bd4d0ac2169b40dd16925a92c09d0b023019b81deaebcf8821b9833ecde90177b33c457ebed263a3d8ff55d2b943070cea109034c4491d0c1f4dfd4fb33ccc3bd70302047c435bb5006730650230645afebfbe8ec4ca654daaf4c94df377f22f5cb4fc4504acba4f4e547cb2fe085f01da89b9ba0b8a8325c779a6d487af023100e53204b5169854ccfeef85472e8b7120a547841b8f142890acf0678e2561ce6561da052b5834fff481795dd0dcc60ce80302047c435bb500673065023100973351305175e6f0db493d344da0ff4f09afeeb0be14b4dcaebae7bb574700788d63399f814f746423b8ae4d660eec42023064d9ca1b87043c5043ef1cdb7b2d282ea7ff698a1ea3a638b83fca89d15fdc2b6ecab5a32138a2ba0ffc82e8d32126aa0302047c435bb500683066023100b3841062e340b527c4e0f265657b8d66327cb328caf30f9ca918cc199b2fb8e88fcf907b4a341976f940b73cd5cca022023100fd6910410dc821519a5cecccbaec5399a1fd42fdc52072a271ed62b90f903820f6c0845d8b281a9567e599c72ef78b1b0302047c435bb500673065023100ec08f85998c61b738b0b4427748843e6cbaeb828403fce907948c354807e855610f2cf15a0a174db69338935b372f76502304998f76bf42c8881fc3fc2b905ac957d9238f320473e7b626a275b7ad709c5caabe0b7f02cb9c3bde5b0523b971690490302047c435bb5006630640230055a0bde96339910212e719698bcf9f70202d225f0cd2bfcb5249a40542cf84e4e5777c573a76cbaf9f8cc1b3e59031a02306bf7ce2c60d93b4532efc8f066f7b16b4b9e57b8d126af35ce33f5d543b2a79adc0b9943450976cc4f65d182d0a858350302047c435bb50068306602310083299cb0f3c44f6c22ba473c1bc4563317bda9efe2a871c93597eb3f145bad70d6e8498284ee11fca4a094ff7b92a2a4023100eb0f83b7f9d23c8e2cc4c0a10eb8f12b2ea06be9e944379be203d6a607e8a46c3fa76f3eecdb6568cf87db7d74974c0e0302047c435bb500673065023100cc395ebc6478e68e51049726baa68ab3a7ca60dcb790b9afb00eeaded1ebfffb1aab9aebe1ae93a0a5ce540550fafd1e02300c315ed58acbaa05508925abd6b2961bfe0e61faf9dde60238dec253f36009a121f8252f1aceb9d2fc22d1442da6150e0302047c435bb50066306402307a2076d8f27c6ab60f0351a08cba486aacd4198b1e6c34ee13b998d656ebb9423a29621575ee199cc347300fc8caa30302300f1573bac081b9ff066a9147f239a4fa85932f39f5a23f566abf8d6895ab5b20a21a8c09f935bd6e009fc4c8539cee7d0302047c435bb500673065023100cc1a4db08dbcb8e036e2b3a91b22fd1b6d745297b36f8a07054e4cf7b223551ee92ce77ad031d99a30ecebf3be3f50a602302911f9198a011fa79ea862676f62817804af3bac126be28ec09a03fa5b3612296cf246d5662e0cb122ce814d08dbf7750302047c435bb500673065023039df04cf2b888e33a5770729369d05431ae8a089b646356b0d60da78ef631c6e18f8de8a0be50bbc1a34ae0d19953449023100c27e5412b378787874af77cad4ab1fc1e53595d039c3a101f5b330995785216f19457f263b4a983626d164f8558d51630302047c435bb500673065023100c147054ad93c10c962a9032804b1a67d741f8bbcf0eace839e351adb7ecd95bfdd14908f26aba5697c671d8f90d5c74b023057184c669fa3d19ae4bd135d85d824999885d4f2a76e38821f43c636668fafa0d499a11998d7d533770b4188401020250302047c435bb500683066023100f986fff87873edadac7f193a345890391b5945fed5ae10c4979d9e77e00a88a8d3725d07af91a2f2b99960eaa9fa7469023100bb90e3b4bf84b6befb17e61e2831fa214a6b1c408d2242d81745b8e6d1792a9571d3dda79ef691478ddfdf14ad70d5a40302047c435bb5006730650230604f7365134695dec9beb8fb4287c303824ee6131aadbf5c501a59a890d9acef7ae1a73e7cdd9c1a3db61ab147f88b54023100ec7d95a11a61fc20f42a81c7958779d4d5cfcc7e5166d1a7536cafc4dbfd8a24bd3211b4f49a5796c3938834901135cb0302047c435bb50068306602310087d3967614844fabd9c5c1ab4a66d27b4c1cf1b0563be81cc86733c377eaaef9c7cb42a87c086a478743babce645389b0231008e0ac1d251cc03d16fa2b3a7afeb34f12f562023b75f6a332afd85789b1ba5814e5d19a713f8331fe88d244046c19cc10302047c435bb5006730650230732f636cc4b29ab9c40c60b2faa5f93b74100f9a0b6375896a6ca6468f168d32c66598abe2bd8234b0804ceceb4241ad023100ba2b739db436f114f5574ccb1eeef2e087b0ee14cf08a82b6ec917b18fbbac9894dbdea3f696ad522ee5346da7117b900302047c435bb500663064023100a58f7d4a01b0ba5b49c048db3dbfddc83f29f73c9475e6a01533f6849bcf1f008d136740314776d59ce990e006dfd2b2022f6ab06b3d30f28d353ee81a0c62b0141e1f6a27aea2298a02ae050a2c9c7eec9b04564330aa66fa9354f33bfa47db190302047c435bb50066306402303436dddc23ef5992c64f9410e40d21636daab68686dd33a42cc114f6aa99a87c143fc5349d2df4db82cc50603f0da54c02307c8506418b65b0b2badca5b8d0a4f89eef7ec2651964b7d4d21838c0993b3c82029481d8d2cb7c93c6245101445958b50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023046966c971269f3f225a4205a5a355fd71c10e4956401a7d7e9caf55f2f73d3cb01c04e431bff807b67c5daf2f2f7cc7b023100c089a1a5cf11fe23b6b2402ab9f1e22daffde086e0591f6f8cfec5ad625c4ccdbb813e3c4418facc7a3a933b5b4c68c70302047c435bb500673065023019ff020524e6f6b69dd7a139ee81bca7277443e84513009c1f93e0f772567365d453042923bbeb8f5acbf587367f49b40231008d3a21f8ee7f86196a8204378d0197089d029042787bd373a874ae178a221a51153c3152cdcc2722d777de9315d2a43e0302047c435bb500683066023100adbf38ec46919b155e4b0c34852ca1962c47fdaac44fb10d5f9d4992ca3173703d51e3a15247ec1100e85cfb621bfa66023100e7e8912ae4b84c1a0be9d744ec933e35c9b6189fec65be2dddd344d741537c9e9048a2227dc2b0f0a7273e11b3e1d51d0302047c435bb50067306502310092971b4109faa0e0fff1127d053eb669b6131c3d7062ab0fe4c52bb89d1fa6e14f604b969d6fab4f4c570ae2df5ef10e02300bd4f491d663bb168480873fe7a942760557e321ac44bfc8383a695725d7591d12a606dd95e458dabc8e5d0207ce92950302047c435bb50067306502301b95c86315f5677c546eb582a9f90cb6dc3eaa704e568bed4361874dbbe88f98087db0466f6d0b10d27aef5552768a2d023100aec184493d7fb706508b56e7ae7c7e881645fd2279d3782887c42b76384b421583381d13047e5d4df2a1660f082ec22b0302047c435bb50068306602310085ca514d8ef46992aeb775bf0f849ea218169eadd70c29a075279c8a6ed5a19a63224b5c0de362c7dcecbdd8161951ab023100aabede5baccb918a7bc3e5e5c66f93b22cb79bb7d9220cd662ae3902b767b27bb2f9a2dc19b1dabce040c2688b9790020302047c435bb500673065023100e051996fa9929eba3d2bf3cc21f88b10d3149a35c3949e38f415b6fc4ec29e5552c999ef1ed2afc1da1fe7061d719d2e023035581d83fbe4b724bdd8eff9bb2eb84d398a1beff1a1dde67468ad46f602a824afa0de310c26309a2597e681d88b97130302047c435bb50066306402305a5f39732c2b6d52e1cc537cb80c447137a71159d212c637dbf083dd36e396158f314730b0f075d296dc5946620a18820230332175abf58aa5096f854dbd1fddc18cf3e3cf5930cb99d00ded11afafb8913426b6a67cc05ddba4eda4b990080b68040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305a587cfa698c0708b863f663764ab2f6b11609ad06a71a1342cfcf8319875a3690871680645d12abf4e0921db9af10880230358114c6c96ca625933d8e57949248e6a32872a4221a7477e9f3bcca637e0b9ec751f374fa8c408e29063b444d0e955f0302047c435bb500683066023100ffc7ab31f05da9e69751f512144bd309efe4becb10b49cb8201ea256efa218bd960ad0ea85f5669c11dfe7d75cff766c023100f3ae7fe761194d71d4b1a10e906771ffa3e7869adc9b9293f73100a07e805dc2c05900c34893f93c238960e31ace44520302047c435bb500683066023100b290d481eba0c6bd01f29c1e46cc3b9599804f9ff13f40f9ed16dbefaa7d0ee6687c2f85b51e9095f381c6eeada3f18e023100c65f71494f066348e5bdabc9e3cd04290671714ec96c2cd6ecd0c7bb1f60bff22f31c205837ef1d9a3046fddeedb442e0302047c435bb50067306502305fea3d36d2dc001c9da8437a83de5a0cb7accb3bfbdb564e7cc93bb79243314e3a9e2a1e8ce30a626c53f4ed19709616023100c0ba15fc49669208e12345d835b8732cd19da40d47f56fe7965d1f969973d27ecb9712c502e258749486f1aa995df1cf0302047c435bb500683066023100c8a0a7cf6af1b4bf21b2343b1bd506a60a57e67a7ce51857ec1c10d626ff160cbe8978901bea52d53bb04622fe61b44b023100c714a66de1894ff8629dfbab0c643eaa67dbe41435d10805b6288c694547b9ce51db20ed16c214bb097488278f6952fe0302047c435bb5006830660231008ab21ef8ee3440751c76af8e761fd24538b6c2045a040458e7ed3bade3ca8130410e56dcf8ceea5c254cf7e7d7c33aa10231009957db1582a200bae861a891f7401a7c29d4ff78de964cf4e1d2b2309739a1918d4ea964e2223c6e41ddca1ff5b0752d0302047c435bb5006830660231008a613eda4ac5295228cce6bc8bfd0dfcd24c97193fbc5144b8f8d1340df65a180a23ec0f72b37831b4a785d4669b0c7b023100e8aabe4241ea99ff0c95530ad9c8c89cab6c6f10d704818ca2b6a43c3e50b60e6f34501c8231ea0695aad749b4b38b1c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230369d6311f24fec95f3b8fa661fcbfab27bda241d391f08b799c879527392a224739bf4b3e26a3fe9c497bcd58a7d7b3e023035382a2e621b08ad2b8872cd608a46e5989d602a303a912c65742c71b5db2007d015a90e8ced9c564852918f9788e42b0302047c435bb500673065023100a9330caa1c5841ffa372ddb5247c7b093aac2f65ed82437f48d145304e2bcf605c3c603be82013047f3d70469376f19a02303a52dd5973ae70c93b95b5907116562c067a9edc9ea5d056784afcd0743fb9acd67aba51c7751d668e7126360a196a130302047c435bb50067306502310098da0e0cf8e661120af4667f0a23a3f428164e24a21ce8b61640701f48e9b9144e4701786faec75a51a05ba7e6a45d5c023008725d574acf98d9ac441de4ff067930943680244c9549e10e9d3d5d0a69c4c851155ce787f3af7ea2ecc03f22fcaea80302047c435bb500673065023100d47ed7b0108c90cf736eda84db57c3433ec4964fe41f34879c69771dcd2da4896d907f7fd6a7d4b60c261b9e2f6f146b023062bbb94113f48680507e26af40183b9db50dff08bd64193c34dda102cb61f3d9b5f40d2333952476ed4b83f04f1b941a0302047c435bb500673065023100e82387239c913ead07ec4b8f6aa3eb4aadad2051a7a9e1362571b49f9523772e54d2258edf0975366ab22562fd8bf07a02301e3c7a35c9c522509179b4e0cadc89b4609f5be9278d9c5ccfb7bd11f2a81b973a19189aa640a2ba6ed04fda9aa57a970302047c435bb5006830660231008dde1fbe9e0bd887392779237a6100aacb5a163fffda43589efe7d6c851ba596d339a5bbe3bcc48020acff02e1f00b65023100c032d8470feb84cb432a02133e25acc18ed9a5f9588a6f216a5909232c328ad5d2bafa50d09a3bc1598fc9cd6d234c4e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307cebd18c6a211df6d2b4a707de51a610c7bdd15991efeb42aece173cf950fd27ffe9fca36622aedc49d3aae953263f07023100ea89c1f535025316639e3b1a5965872036251a9a2b450c3a1e301362ea989ffc2c5917dfe8b180c6e71e990be6242a4e0302047c435bb500683066023100dcb0adcdbad250077143e68d04719a5504385b25fc50073523e1384a8f98753dfc61fc577b0df2b33a18987594ea0b93023100bcf6ee016403fcb3ce768c3f44882113bc7a2912f71e5340a36f6143fe574419ad25fd311f8c351565091ce8900de3400302047c435bb5006630640230132b263421258613000edd1944fa7f0fd1a60d8dc25c536786ac5e1c6fd24101d1355992ae676c0cea8e7b6743a2677002306c470c1ecfc2b5999e66ad8971f0534496d1cf8f67fa21d908c017b3b67c4df34f125a18deb1b4d07d9a56d3df985daf0302047c435bb500673065023039d94aedc3a7213c9535f553a7e162b817642012585013eddf0b639a97ae0b32b30504c51246365e4716f700e0ed4cee023100b976cc5ad8e98d4d264d40fd017417c377e04571fa185919badd33bdbf96d63cf72c0f55e4ee937ee7c5ecaebc5d099f0302047c435bb500663064023028d5c97f688d883b2c362aaa5e4fcdc298e7d70d8eb44696d9897eb512aab33eb52822b0578b7c53f22d9693785c4ef802306af509073733e2fc744ffefdd40c067b804422ac8ee6ea50da0302d8cc3dc4489e61f95a99eca1adaf99fa55662b19290302047c435bb5006730650230718aee807e4cc56d97ac17805f455d0428ceb68bf742930aa6dc07b3ae1145f57e7e8938240641ea09edb1b5f1ccbc21023100d6537f69a53cb88038f60685dddf024d35793f570589050ec29696847ea05b4c7f1930769c000edaffbc484ffcc42f080302047c435bb50067306502300e527b858b80a409b2690eac2dbd57cfec174cfadf5ac22fb0e2c0ac8f83a326a6c663de71523efba93d84a8745cdfe3023100944df10f3fb0c4e43435c146794474cd3cbdbbc9fb9265a2966703df14e40caaf761a42c14aae4dfba454c2286a24cbd0302047c435bb500673065023100c9fa47aafe392d92c56d8a7ae5d49e3f8253271830d9a46f96519b91b512d1c90893a2ff1dfba03269826a9d3a5433e4023063a5399dc63113db43cbe0cd264b0cea9009ecb900f534e3113c35e6b9e790970f38c2f632b16d561485408a7e2834a80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305a148a4f8dcd5a869b1164cff87c990d949e7186ecec6d9b06e6194965a47791c318b1a74d1dcdb3ae2eed29128b4de6023100b5484d481ff8304343a5ea23646d9a29ecea3d0231e135d1e29dd76a4b3d92e0fddda25ba31173ace8b6a0778ecb11530302047c435bb5006730650231009f112f1263be43dc525c9013006cee53c8d16b815dec82c1f701697b1c99c0dddd219610c177ba4f3a5eaf15e01005b202304375791d7ea30b7d7efeab2dbea44cea325f30ced434e4c4d46174343195204cad3a5a2a5a266183f2505f09a4fe3e9b0302047c435bb500683066023100e778adf104df8f30493c390e2c453ec8e7b8b29d8f466d1d80edeacc13cc241c3e7bd12dfb99525cff03957e43ed65d402310094f98a5276cf7fefb386d2bdfb8e7d43b1213eec4fae25ccee9e035ff94627dd427268b4247967215584123f929e6bcd0302047c435bb500673065023100d3f0b31f15601e1ea14a03386cdaa54562a8c1493e6da74f89034b11de717f77246783aa416892fe060c1e584cdfc4fc02300d90473eb8d1e03da8bd9f01f80649c6601964629c04063100bd273c4f254a88e91c0945fe6a8c20a3b7660615eb623c0302047c435bb50067306502303cab9b4eb77400ed618b30bbf4afc7621c9f9686f7bc14aab4d824d4167800f77f4d7e6f56bd51df3b51e58bcafa443e023100a3ba5e2b1f899c1f60eb8b3bb4ac57474305b3218976774bd135e911fd40a04b2f10fe2ca57d8c486b52cedf12862d450302047c435bb50068306602310093a1cbc832d7678ca6af274e3617ee31005fa3765b32fdf473388092204b2e4d22ac9a11db0710f24078e1ecf0c78ed5023100805ea6a802fbacd07e7291bc6772b5d18cd0e7488942e911d0861ec2d1baa274ea2deaa6b6b4c024c5763e760436b4100302047c435bb500683066023100f2765e1090ec20697b50265f56421c00faf42ff539204e88b4cbd3d377d64b98d9eb179459124687911b8e00afb90b4f0231009f388e4801462233c895502973c9c9624afceae4b51acc177bee661abd843aa237854997e9b5ccc2af15d936c25765b20302047c435bb500673065023011c086ab14b0985903c9ff739f118b41180faf18d96fafbd88dd27442e04ef96426cd2411e83f5864525764ef1399ca5023100a44b89abb883abc9a1147dd8bb209d26fc33463aec8bbae9c08c6d932d135ec5f9567a083850bc53516273b16e9f96500302047c435bb500683066023100acdbfc3664f1db3aedafe676608758514e0fb3efbcac7be116f0925b09156875f0b5a1201d8aeaf6c138fb6c659414e2023100add01a083461ff192ca0854fc9e22f3a9092ce4de6b69214c3e78a7379151c70a718aab60b01798d669d319dfe32e6c80302047c435bb500663064023023a2b436dddf04df2b64b35b00bc919e97026f6d555dcaa6f1015ad0e3347834e77e80e6e38e3dd57f4ccd0522e590c0023004a13e9e9bd941aa1377bf86303c7b3bc7ef8d9c1a6d897077cd71580d040cdcdb32ae0d442365c7518cf746e57438580302047c435bb500683066023100d610848998374387d178f6d9f4bb9d9797b8eb11b75eb8562441c06fb4d09c5c64aa818183c094b43832632f95c48fb0023100dce71c2e7db661ce820e4e182aeee9525d5928db9f74a0d20972fa79b78661462bf3892ee83cb0b64be6edfa8aae405c0302047c435bb50067306502306982eb318f2da6ed4a6129b1dbeb8fc96212a372d7fcbcb430472d8a4931c5aabb4716e37b0b59007a32e1172d261ea7023100a565fa17cde4ae4022bf02d3d6bbf304186a7667a5bd4f3fac4cf9a232e6b888ed77c346ed961221597314a6e16117c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e969a052349ca7b714093fb43cec8db8215ba6cdcaf46c0fbfb1894c2d610e660e2be09b6c8a90ed04d4e917f2729773023100f8193dceb06727f52d4433ad23609d82a03fe9907c29a823e30f831cb1b22c000c56245e710caa5b2687d71e6a76f3ef0302047c435bb50066306402307c63143b40ab2ce6f82529b73d37effd5a0542302a1782edd85989bd71386ab2c06aa210aa19dd92623a283706420e110230637cec9ca06250641b3acc93befe0669d53c7b14a58ad3850d700a8058ffa949b67baac875f974931a3d5e2786820d500302047c435bb50067306502306897c9c0617fa8e1da21a98d4e7c751771e9ca4e1e414f646df4bc0053bc9d714eaf290a7bc73cb5fb4c0488752a1ccb023100e0cca906b204bf6f443fd973a02d2ad7bc8107297dcff22a2bbab2a23af7eacd348c83f2a956a1a43e8e1e168fbb66f80302047c435bb500663064023065b0afc68308829e57af429707a43483451984c169b5ab1f4cfbb0170a9bfd00c515202d70e047d1619a0a4b5371b00c02301e1c138c99af269233a2294a65ae2830c5d174080111055c632c5f3ae3a9d412a3be951f8a90c7a76e8482f02ffc781a0302047c435bb500673065023033b5348362a074069df70791b1e88ebd888d5766e1b6016fc745977e17f5199136a89b49baa07cdf2bcc14119c320b28023100a85fb3bd17676322939a37fd6477d3308596cc5a0b3f5f940717b4e6f7827ea2e972f1ee065702a9d9ad05b648e5827e0302047c435bb500683066023100cf17ebae48b3b099e9b00635f93978f259fac17d9cfa09dfdc5a3307f1de80d083f6981b245863aed4bec3fdf7af47e8023100841970a9f794d7b5ebcf7106e092cbc635cd1724f2d772538dbe16be9783ffc015e0e6d57d1d5b1404d5e819f9ca760f0302047c435bb5006730650230403021d924f2f1fe10a62c7d816a1f76454c33c39d36c09387ed9ad78c0e70a02a4ec1925cffe4a7df11e1deeaaba58b02310096a5b6a25c755bcd2102dbb7b03c5989cd4e465bd46f3f72c02d15703d466c736b1e47bee9bc5d54d4a3d88efe42d2400302047c435bb5006730650231009534a4be835992a8eafb5173c8c9c0e53cc2557fae975effa50de47ff2b6f9fa5b37eecc86395e2769ecf2a6da4e98be023078fb76fc1fd8986a4369b3624271df092d0f9ba45ed2f90c37b97e1401eacd6e76e4a4097c07888913e805877329ff000302047c435bb500683066023100acf32c0b35a660b183ff8c17266aa9a33092df77331b2ab89ad817786faa03f65353369113248954fa92f2000e0badef0231009076f00b3f1cf0f5fa8024408c884c267238e57f5e97d389dfb90754e362eb6933d05b6490b852d7a30764ef77d5b3e90302047c435bb50067306502310084a262da4d127f582b4d80503a81e5b683cb205784d5a437b6647d032e02a04c8cbb5c8baaa4f7010d69782e4eaa874f0230790084591e04f959e9695e348c485a493bcc36e307ca8fe26df5f757e57ceb62182d9199c6a9b8fca469fb30981a5de90302047c435bb500673065023052d702d04c92ae038954441fb87b6f7d721207ec45ac3d450de9fe23ddc6b805e398e1a49948e4329ee313a606634dea023100b88c6bcef855445fcbd11835b7816fae4b4e6e09488a89fa05c1b9f524207c149bd7f6a4cd511166b12136afb94c2bf00302047c435bb500683066023100efab53ceef4fc5f197e6ec3eec30fe50b6051cddd0fa768e2de12bf61b4c29cee3372ad0d92c3cf08930466783a77849023100d51228dd8ee6e504f14215c4751844336a494762c5d9eb5def5e9dbc2e90e208e5f31ba156c1925fa4c6a2a06deb47430302047c435bb50066306402303ca05ca206517d5583fda983e2521190e508b51949b8756b4ca269feddc229fb7382b4d13c82890ceb3efd95e1b15b62023066174150bc538e26b6a11968fbda0c92f64dfa0fc4929a6cd4560b6cb51c627884e5bc6c4e3e8449a689ef11f20f5eed0302047c435bb5006730650230364c81bcf4bbc1744a6efeb27453bcbb53ce0a6d7af897201604b19c0db3260c897a69495c59679c084cb6501f894c02023100b6d4354f694bb6567dd1c06281fe553bfdb17e3e10961630803489926ab59a52d1de12c89e755fba0d24aa72e28059a00302047c435bb5006730650231008819e26bff88128658697385fcdff225169b6b44a991ff0492748daa89950b0a4f4e671daf7fe5bbd485601a8eff3621023003c923b82eafe49ff55855b24a049b9f9cccd7eb86c1176f196f676956622961620f803d63366569990a7f5cd89821b90302047c435bb50066306402300df43942ca411dd52e729bef0528e62153b68707a83740d949764a3ecd1f5fa6981d7dbbc1c64edfe23ccf5fb1e584e40230422f455fa285499873aa38ea47b31dc1cf2dc6dcaf7084a132b04020b7029e0ff9f9cee429c6c181939cc35b39b248e10302047c435bb5006630640230231fef9194dad2ec8f3e33570f6dc0fb261d749e59a556a62007723f99e33a1ab2c2fa001248f6fb910b0c885dd214b20230658457cff2ae87f182c0379e0d08989fa51d1e2eed0405b7d75d9404df0260465b3442b1afa73bf30104be92677eed6a0302047c435bb500673065023100e3aa303694b48cfc222d7cbe60ecf7d8704f86bb135ff5e72feced2ed278427a13eb21267781c8bbad2e40a167dfca82023050880fdee61a3d2b32dbb41255ca421b44bff7b6f1f308a93de745d3bfea7f03177d49704490aa75322bde1788660a8d0302047c435bb500663064023029e5c928f9291458b70e0e12f858d2e26fbd8274ddda95976575222acd4249515118bea69a5933df33b86e71f636bbf80230432e707420e2bf33912ae7f64b817f5b1042abed507475bf7c9a84f93ca9e5d93d06d7e48786cd1aea2dffa9047e80cf0302047c435bb5006830660231009c6c18c334bca481f30695dadedc592548b42bc58556f60f8dcb197b9397bdfe0a48663d7a7ca2103f37f7a9fc107c72023100e37718d798b5e7939fd9281df215b4435218672a5c82f78a52f8e4ab78f57ee67dd9677fd922bcb64aeb39627600fdac0302047c435bb50067306502301e4b239745a5d596eaefacee05dae21f7ee03c810f98b7a0a045b0409194cad8b4343e98331baaa46f4af34a9014f4ea023100e8cc40285391f1bc1f23798c9028e2b608126a268a628908fee5d3fb2c30df90f6d28533b35f7302f5b709cce38224af0302047c435bb50067306502306411140d7504686753ef97758dc364be66d199a247bb2df7410c3dd8e6f2e990d8f9b93840addf39911d92a12099ced0023100825b03e0c1888e32eb145250838f1d6d40f8fda2874776fe846764265c15bcd46f21690fdb17fbd1bb512d471c229d5d0302047c435bb500663064023041a821364428b1e2f9d8d7a5649eb77da922c41deb5f817fe884e558aa91f382206cf3dae674799be620f23f077c236e023068aed122479ecbdfe58272292e0d70064b04894aace1f1e7d6e4f429ac45f382cd81bb4b107820b26c3cb82b0ae7b6fb0302047c435bb500673065023016cbc14675af70e96d3882703a385af9ea643d1fa7247cfb24e5a33a63020a178e8cfae46a5b709103e2c8c17c4cf847023100ca896bb9a555d10854b640bcdb01c2c3e211efabc8fe2716856df947a994902526b6a89154ec2ba319fc4947ba608b9f0302047c435bb50067306502301a2b26814e22f104566afe5d4926e782130aa345eb33fb35cd121a37f220b46fa7f7796a9f0bf75bf9994d6a2e94c0ff023100927a022b5c79e83be0c37c3cb66aa60dcbc54c2f95eec308ed853be59b4861ebc1984c6187d1fa8a7f61360897fa144d0302047c435bb50067306502304e813ed69e68f9f51ac6ce93bf1503453cef9bb6361c04b3684bc0ea6cdb14c067769eabd216c97d39bea84a3c5a74e3023100adb364e2e3fa4abe0a6fc9efa75dca9c4e40fce6e9bd0429df09339d5cb08caa6c91029014a59e0796bac85b88ff20cd0302047c435bb500673065023003c1cfb32fd34ef2d299571bf171d87bf6fdfc44a91a1e11fb6cabf8ee953bb6e653f84ed336a083a2dcf62fae756233023100ce45711c2358940fc98473c0c10fcf260246f64d44cc077eab80cf905368a7b3b6af6e77bb788181bb89fe03a4c4f73f0302047c435bb50066306402304e6d218ad1f03510d86338d749097e3407007f476b1893560f0210b9cc5dbfe399bf95d80a11ef02e5c73eb12a6e6e9d0230556388fada72b379a932e98da2713af2d7a6589a0455168054cfbfdeff6bce9c1cf9208a0f018c7411fadb4d709bfdd70302047c435bb5006830660231008ecdc90fe516fa02b7d4f62ef031e8ecd681e51bc879aa5eb68b4361e8f5f5239de3a52f9922083a182b0634a71566b30231009eb8205ce21825039c317a453683d5ddd132bf8bc8a35807b9b5cdf5fa9f7a9faefcc3df651f5cf563089ee274d38f1b0302047c435bb50066306402303f0a4622b2bc15fd4ac2f4386b8f35eb2fc8c6a909ea301201d7b06929cb919492e3b45badaee386c66c9fbb9af0398202301c4f151559ddf923201b48dd2d0cc2a8304bdc2f15d6fdc5780a56d7f1768da1436e9867bd3e89f41d4cbd9c3ff734c70302047c435bb50068306602310095e8ccfb51d1c2cab4409aa4f823bcacc7bf4685abbfc3815bacdb1aa005fd2a28be47bf245b33ff9ec603c26438a734023100e254a7fbce69ed8ec0b4c0744d48aded38dcabed5cd6c541a233a079d01db7225d070c82746b1917606451e4300b816c0302047c435bb500683066023100d4d911b25ff947c5491e72dd15a24d54dbfc60ac2f586240645110acab766e38403334376d25871fb57f876223372c01023100925b0ea1f9331280cecc2641fb5d97207e77d9cd113d48ed17c328c2f6d7bd94ba33c84ccd09f4f57982d8b75a7949930302047c435bb500683066023100fc0bd55fa075bf87c9b994098a3745a7534bd35b788149f56a3b8f93e04cc320e784849875f40a8e1272d132908960e0023100df4de9dfb2c65db74000eec9f485c6bb233fba67d9590c4d0b0d0abcd7a8a9155d45884fc329884386e96e083d88f8ac0302047c435bb500663064023008e91c09d6f5475bfedc0e75c09afe4683968bfc1f80cca86c2a2d51e2ddaf15286c45f7e2a02097cf0bdd707d400eac02304688f547460045744a24cdf53f9b71009b97e5eccb42c18760231eaa32b61b40dd8fcdfa25873e3d7f935bd77b39f89f0302047c435bb50066306402302672d0abdc63d66945d17a57b2e5dc10b837f773fc7103e48a898f6b0ab836ff2ba23b4c2160f52f46f6429013e5586002306b9027aa2e652cf2451354d770d05e046a2333e860ec80e1a9296a47f6d9f1ca38995ed5c4867892fe9e0d9d0b0f0fd60302047c435bb500663064023059736410ef2bd35b8757a4b1bdd9e1013954c10b8d24ec181bb4f2c2652c0734cd3c095c5a11d6937e07256c5ed0126602303012cd95f05ba367db56421c7eff304affb77bc05e4ddfecd0ff9418b1e94fad3de125adda42ae1545d85c91cce2be870302047c435bb500673065023100d6256ce7133e07afbcd3131265c3f562de43c46ba1006179cf55707959d1fbe3c24c96dbde651dacb6feb5c573ff514902300cc71b203eb28c215959322b32b71de15c02153e7e862361394d94ec89f566a100bab3b0d3be92b677ed10f0d64c161f0302047c435bb50066306402300eabf442563e27d14c7f7b33ab77c4dfefea9c3e7b16ca3f578b051ed538aa6cf9268ae3aa53a2e00706cd819a3e5c7002300d1d14839bf21f6afd17ff3b624e2e4a4d29febe1c72253db7742e52b83585f6e1ed54974fcc156f95a3bf143c809e940302047c435bb500673065023047e3e84843a676bea1984b0202e4224510cfb112ae5f4c12cf3c311706217e8cd318da97e7e9e0b45fa581bad8bc00450231009b045e50d57996bdd5591505dda158c85b18a35406e03299f0d1ed0113e8ccc07cc77aabce543452e17630b4567d67710302047c435bb500673065023100ecdd7e9e2b8f659e4cf6ea37a66124b11fbfa61d4b0d260024a936bb5c824faf54ef07c7a2c1b45cb89c0d41781bcf43023039363c5d0ee3f5a20acf64145181f1dd3bbf0853af5d178f30a94bafe8963165e9cec1a3b38ecb868bbc34c1b0aea3040302047c435bb500673065023100873edb38f1c2ca6f74bf42d14b42dbbe55c878cbb1e2f5efde8fbe0475f15981f400e1d51aa1eee5ba223c46f69a1918023007d7375bee7ec82c8b0b7b55f4ce7beae493fd2b878c5906e5130ebd041a82d79fd5c4c9cd84510b6fa1c632d85ba88d0302047c435bb500673065023100c55bbc92bb0a115d9210e4653f45d5b8df2cb93c82a55a371e8ad909dba75594ff0d041b12b6dbcba25ad94a50fc9c45023070907f52aaf841999f3e5c228ed628468b5127ee9f55dc0d46491c02ff4622328e0c58f75537a73a459ef930b79824480302047c435bb500683066023100deb9590c589b6f0cbb901c23f33137d5c6a268821abba33d17b8db4089b63c244d9a7bfbdf62ffa64168883224f8dc75023100945157c477cc48893f93ab5e8d7ab44161de28b40c894da0f24482a469575dbdd4de877581c7e8518227a0c86880eb460302047c435bb50068306602310099bfb33053f322b12cbc03c9ee00eb817771a2412416adb5eb98255a5b7d09bad1fb8e801182ebfbab03983ee649a5b20231009f65cd9d94bc976b031b89f98812debd84a1cf7938645173423bb180fd9a6329108240fbc221f899646fcddd3b5b835f0302047c435bb500673065023100d86481fd1aeb258fbd41a7f07741b7064054df88d99b78b6eb034fb0cfc73ea07f87ae950d209dc8fbfe5c7cfa7241e5023060766936215aad31631502b37ad712f32ef26b0be00b31c7735236ffc8fdc09d438b2e0408cac4e3cda7112943f8f6320302047c435bb500683066023100feac18d4156b06d46ac130872f0c4b75b204834c94cf78f3a336185fe7b489bb118bf4c5db2f0e027543f135ad17ef57023100c404c6baf311021912128dbaa7ea640daa948169ea324163392a8b1bb6b8a35839ffd2f5592c19ac26f1a6abf94de2030302047c435bb500673065023100ee810a5fb67403232a22b0157449337e7d9bf405abd79e6df187b0cde7ac1e5d18bd271e85dc274d8a3aaef131a9271d023076f15e22e447f4017afdae08562d01340720560b9dc645f285aa0c2009567b85dd43675c6a1391824e1b50d4b55ea8560302047c435bb500683066023100b5e96a06dec897edd6d74296aadab22af99f2afe17da6cca5f705be7b94cc951170c12f1832a158245ce84424ba68ea1023100acb681a938997a9ab5ba918f82007900d1fe4f9d7ef13642a39eafd9b32e602e07b22d55e18bb4bc30d3cc1248dcc48f0302047c435bb50067306502302939b020baa6e268c9f3e79484e1a99c66a44d9a5272e0eeb59bf8616ed0f7ceb39f42ae7600116ea02dad3feb4b82c8023100f6716ab420c1cf718970f00d71fc5cfa1a82f7ef4c0504bdb19eb6365f8e108c8478c03e8527608b18bde408608b4f010302047c435bb50066306402300cbd2ebb9b631a0244fa6672fd8ed6240a394c4898088aadb73664b213cfc74e2654c294327243da39f1771cbabd08870230042550c76cba73f22a57e4da89acc1ccc98fd388b009715139dff530f2f60014fd2403ae22eaedcb071d473d55894cf50302047c435bb500683066023100ab089a295d95788d7de766c4d3cd8b878a2758e9a69aa1edcdeba8c7267e6cd085cb8bd1f184db8175413f53804d9b080231009931bd86b82b6c536520596ffe8d47993c55484d355f205b2a9205d77c1a7442cf94303f0c5bcd842086ed0e5e68916a0302047c435bb500663064023036f3e3fea5fa7991788eff4c4222d2c3fae856c7b7661eabade51098dcf0fd50b221ba6e8d000e3a3e385e9202f0eae502306f7a226c4301909950d1d9b5131f73b5147b2b9767b0e5aea882e741ff1015e15966b78005bb1f6feb48cf7210c3e1b20302047c435bb500673065023041fec9b51faac0ea247314b0f81ab2348b23421b5347373d416702d8d8d36f05c836ae431913cdb39eb4ae9e4b085a44023100972ce3b1a8e5e6c62cf87ab73e45650cf86a9f614904a61c64961e5ad5985965dd0c90d97f0537f6922229325ba089ec0302047c435bb5006730650231008d1b401f0ba9be3168b3d985c15f6ceecb0c062dac6bff0adcc31ff4c794a1bd4c49b6667005dda68ea65cd9fd6d9b23023039142fa8f58fe5bd22d360fe3e1eddf31553d5d80b4b23800b1d25028b2534962981ba3a329f10f87ec33bf841b1c8100302047c435bb5006830660231009469a01b1a1f785c3497263bd1e9caa374b88cc9874124ab01337cdcc9f5354171e882492d03d7d0e6b863b0b941cef3023100cddd761a0170006c32eb5a7a76db9c2af8a84b9c44092947e3950b2b8d03419ee864a989fad9a0914611a084084d7e490302047c435bb50068306602310080d8ff65d70075194237e51d156969f8364d4ee3864759fe76e1fa5c3fb792a626dcffb4433293cdc27c5913e071cbb5023100cfc3bd45cd6dd954e6eba65ac51dc32d8b223872ba48ff55796b5f80b7457c0a38ba164f550dbfa58e11f36ad1b256350302047c435bb50067306502306398a9c47a696e8685b5009bc7a5fbd2e0c0bbe5e2b231248412d2f634861e928f13f9202ce351389db42af710ccd864023100bd29e94e12d0fd08b7d86a609f60f9f036397b7365ff8b5270c2f8bf946861f5d3c14dbde766621cfacd64a47cdb97310302047c435bb500673065023100b1993fcd0624be33b76d32872145d35335852d3581f0915451e6872d15dd5a927cb2f1495190dbfa06702a2c6f3c8fd7023057445e1603c760d5397d145866ed387502aefc17fafe76bcd5f79eb2ab981897e2613572e113a7fff0380c7f8b63224f0302047c435bb50067306502310084f6cba826339de8e99f441c61837ceabd2d3678d1e2c3bbdf9eda1b2189fb43e1221605513ba3d65c0503946c0fb9b70230057c1c96fe2f247de434f36effe79b49755000c4a6cd7b33e72a85148682d1eb8146e68b2dec52e62a099bcdf4fba5100302047c435bb500683066023100cbdf2a89494e99e83ce56a1e559fdb3c5b0cc11c004cf0f52805c484b668c5ef169848268f67c52422d544abe811416702310082754df9a45445639976e6d8841791c9d364a73fc1e94d22edea31aa107ded84e7b1810dab7a43fbe5c3ae6ea235db4a0302047c435bb5006630640230359a7f949701519f8d19c5302a914d86230ce5030f2ca43ab6df375d8e11bbe8e9f7ee3453531f1fd06d5cdaba3b8cfe023049dff90a1ad7d6b404112bb1279566c5f255c3af8feedff76a1603d2664281886ef9a7cbddc6d82c67ce5c8b47ce46750302047c435bb500683066023100abf6d64c6f6f65471d290d6262e921c36daba46e85919c8086e0927bfcbe32335caa991e1e32df5575d4ab347c46e3080231009bbdd2afbae6f736ed57676bb9d5944015f747ffe6501d93218044e39e991f306272bcae5972717803de0e053aac23710302047c435bb500683066023100e7184bf53190fd55b62bf2eb488bcb75d8fc20fdb773c7334cc82c54cf679880dd2afeea497f30bbc98536a6d5d47d2a023100c404520caf299eb2a48c81ae3ab6ab774656adc962f2c154cd93df645b5894870ee1c6e8520101e11836f36c8b936ad80302047c435bb50068306602310091b9ab5355ea9d3e23247980213c05cbf07ec875f72b15f13c34accfdf665e197577b1a21327c8d21025fd8399335898023100c7a8b9de61fbceb9f483703c78d0d20e585e7641b67f9ac43a6dd2649adea4e49bbf8f9f3c3f5d95f4716d3ecc36ba9f0302047c435bb500673065023100ae4dddf2b40b2c8a8609923f62748fd709a88f9c5ce93304123c591796ead75bb10724c1308b58abdb128cd57bb9d4f5023061f1b2bd15ffb9536768d5b65ec261e5631e5125f1290626c484e41ac0711ba7549d192a22e2a1bfe744afbd0a683f5f0302047c435bb500683066023100826cbef987f47614aafdfa087c5824b96f9bbfb570cb619ef7913db4ac646f73568df2cf772ae369a418991a1ff51ff6023100cacbdabf1d7965a498fb1aa4aa79c15bd9993767ff4e2c1f4f88f8cca476ddde1911009c3ae5e883fa991aed8023fd0d0302047c435bb50067306502310089c05c9a8e095fa121a1c01d5eacfdf9379d1c13483bcd279044616d1aaa030cb2fd002e44764eee7acc3ea7cd12945e02303a5e7896da6ae94df338ad089d1138f5c1753aa59f513a3ae9a61e7a7c1655297de6ad6f401244401b89b3714830d4e40302047c435bb500673065023100b0449f60a546faa0298b551d725d88c50094c59f249dc5875c080b1b644f8924c8d0a06564319b9a9dba9a1d7d3b00bc02305fb2833b713aa112179361daea6f5139e1f56145c8f672aa6baa27cc78dc41754d37987014ca07e529db6bd284d3ac790302047c435bb500683066023100cb670f184828ddec751f9f1416e4ab463e8ff995f3ca6bc0e27491108b7735ba3add71d309db2a59f002f43b8cd50e93023100d251f8fc86e64390c6ef4a4300b6b2193e2ac645bd2039721e1ebc6fa8180bd73448b4b46aa7b3ef9c13fc1df65fed2f0302047c435bb500673065023100d1c1249f199bc5cb513da2a657a78798bfa4f24127e9cddb56ac331fa2421af67385976f6b8ec48d593ed0e599709fe2023045d1a8cf0dea9ec58087ff8d60361a6feb2fa30e9e7bb693904743806edb664ba807af5ef6bcde65602d4dbbe7c2cc4b0302047c435bb50067306502302cc9609d95b3e89e7d4a29fd5bb5c79f9f7d3a72cc05d3233bb140816a13e8e5db44c933fb0d858cdb215c18049b154b02310089333c7f9053410c63255e0c3a3cde5606ffe1cdf236a35fc3729617e7ace1bbd29d723dd49e824eefff5181c18bd5cd0302047c435bb500673065023100c8a426a4351f6fca58062c1b9bb5d4186d59f9708068df5d7e2102f2d2e45b49fa0a24a5d0808b3ec9ebb6ec151e9c7302304db0e9e2d89124d39120ae3458fe9fca7434bc9f8377c8526940bf262432b7ea4cb76e11825c342120f361680d1c078c0302047c435bb5006730650231008aab8c4652d2b6daa451828ac8621b568201244218bd94338b952e4696b28fc1d12b8e084771881b0deccfac5fae848b023005cdc88d65897f54ff0b12a76e406e41b6c3a8d28daa29117ae4e71da9af1ff9e3439a256191fe8597c272ec336ada7f0302047c435bb500683066023100a9add9b301c82a81ef68f2fe759bc525cb84d355be7603086dd493a41e305afae07bd887ba8a601c08cf955e025e45c8023100f389652ad5754b6eadee42f9a6ef08cff04508f388b790c32209971f40323b16d59c9e27163f41126ba0e027a13351c00302047c435bb500673065023100a7dff4f36889461ff4b50c80ad86b58e13564034b83521636718d1a41bbe6d317f0aca5cdecb803d292b279ec433199f02304250bdc949ca51dc9b155b9ca1f7a7e5a327251e221814df339e3115f286939d048881c7ec228d669031d88d46909ffd0302047c435bb500683066023100be6d21cf0f798dbd1deebae70c5b03558c22750dd2338c2afb358af54ce38b185fd7647d3ac38c1f95246a2b52cec21a023100ee68eb267dc39ede49b1105bdecbb1a5120ad5b7711a41a84b0ca787a767f6a048447e332bc089c3f9f2727ba6788eea0302047c435bb500663064023060ac0ce4b172f9d684a7291bf2eb283922c1e412567e1380198d61bb7719a69602de1bbd2c2bb0b902d078a03a4dce03023036016b3567e6420eb6c5fae1f43cb19ccc31945a051ac0113dc5c3351fc25e9b051b9b99a1baf8685e257579f187f3350302047c435bb500673065023100f760e186fb10bb5992c5655ff3553fe256c3662c18b6b7b5a65f70f6399c5e48f96baabf8ca161611a81e105d53e24e102307ce9bbffff043734e23a1f2d64c26d10712241f3c4ace3a8f19b1301d9f3a44d38035cf2ba15df2d9b862187b829b33b0302047c435bb5006830660231009e5ecc38cb698f6873978fb4464e335f3c637c04155beeb889779cba45a409936d03a4e11e1c3eab9dfca96140b3f2e3023100b6ed74fd2be09cd5c6177054d6444eb77713f17b2d7bc507136a215829a42d8e03e3e1c9fc7c05a940045e0bf75e89d70302047c435bb500683066023100b8ad5cc3baa1f5f5db1b7e2ec72c52873699688b6daec155b84f0707b527632d3c8b9b09d9caaca9b23049859636b3a7023100ae8d53969507f0b87806caf532b744c0c11615c7be89038c7be9c8c64f453f30113e7f2f3323c45b01601f006654b7200302047c435bb50067306502307e2a707a0a95d70c6f26fcdcb266640e1a4c71a317ed410a8ba75c62e7988d45d68457a6c7ff8e68f2030e8757fcf8f0023100f8f1782bae084190382615883ae63ba4fe0bbe758400024479234bea9674be0b0bb7085fd531255c18a86d0720764fe80302047c435bb50066306402303bc1edc4c40995a7a9285f4774390dc8574388ea0a72c6d15298441bb031e47b9e5a94004734507d53b563a6043391e902301fca10596f60258a3d73698ebd8b7e4477855b1bb58ecbbb0d4ec229e5ce4ed7be095a7288a623e04390444833deab120302047c435bb500683066023100f17fa38f04693c7d6ad57481fe4c0cd342476c78a731efd8532aea5960b9919bb2accf180c84de9196bee2ae90eab44f02310086cbfa2f9ba1f227fb8c21a7594d802625cf9f12a8d732fa0960c926f5164467cb49562b85a480ee65dd936ff560475a0302047c435bb50066306402306692e92d21774a4f4fc44b9b57e726d3d9ab821b25477181660cea80e5ef5d50225e36259a5dec598345f5c0fe06c69b02305aaf749d1ab34423f25c09a1545b68deecdaa8af77b142a395db052054e6039e72266457ce5b6a3d084a30e23f28df7c0302047c435bb500683066023100f51858f9f79250120b5f369b1f0f17ac76177275440f9a3149a68a6a960a8360b1f3c1826465ba75d027d7579d28b187023100efa3e0bbd699107f39a2efb67e1638e1baddb623a0165ade3295434479fa8bdb31fe5a11d588d43ac4d61969d433545c0302047c435bb500683066023100de3546cfc5448790581cd6ec504ce74e0d923d4acefd1c4442aad6f1097e39e4abb9c54dc3605cf97ef087995f954368023100d89f18538fc5b7ba3c93faee1297aec90b35c1d073bf7e7034770e201599b1e4c1fe5f12442dadb4738290072d5fd0170302047c435bb50068306602310094f9387def877f7ca55c6b4d7194cc6fe285d1dccfae80733f5edca39e7003f89e7203b8db3bdeaf69f3e8082d170fb402310095da95fd04315abe933736ba551490164c4a185caf85bd834191b366a9f11f66e0c7d3d4ba4e49bb82ac9a28a2649d810302047c435bb50066306402303532404e0772febb0c8a5c9066af9a5eff30a8c158cc406104cbe0290a677d1993ade78b712cffdd1d73a252ce00e7480230215d4f74cfd028257423e4a8942e2e9359cebdf72b78797f4438887587a99abc5ce0da856c59402bb80aa2997140c1490302047c435bb50067306502305265c82575b796e998e887056e0a2c936ec77213879d01f841d3d3e291abd2d50b5d64593bf2c8028885f3fe6d53f726023100d1648bc986a4940ef93f11d53eb3adeb49bd0d2146723dc5b2e3d9458991de33489927764743055d91328d534781b64c0302047c435bb500683066023100f4a5ab619cb6c56930cce1340268dd118141ed6bae41837504462084a6fcc94bb0c69b8c0c641052895e5198c3fdd1a5023100da0d36972a6ffd6ead2ebdf92339e79f9cca400369a45232b7ab6b5d3f4a39733f9a638d199f5b5b5e3ed0b88bfca62b0302047c435bb50066306402301d738611a00444fc9277756b4c558fb318d807ab80823297af0a73f7da264135fcc96c5aa17282c8c1e78fe41ff0adef02304b2e668dd25e24b38c11180cf9f68348519481b7c99a46fafd8c639043920b2bdbb176ab0de3cfb19574a1242c53d35c0302047c435bb500683066023100ee3c012b7f2e5cc5c8460aed1b591da6dce63b7a91db01afad9d224df103cc686967018959e24844dcd533f91d15227e023100ebcbb64ac731b4062b6c7b327dedc915a92c188d6525ee8cb8cf8f3bf0a2eb57ee3bed53d24ac0ac48bada73340675aa0302047c435bb500673065023049c55f5effa3e17940cf076f26e29e957c70a0d9f39e243bf30480b6eb218480a4fe8d041a852140d9515615b0582bcb023100ac1f8b401286dba69fca1e8313783d949524db2982e424937fc7063dcaab446ae524a67edbc7da94ae757d518d421f820302047c435bb500683066023100fca27f0df002b06ac5d0e5429c86b3df190447d77099f18eb334034ffad366169b85b6bb4b41f50e3e5dfd38c6a5b512023100dc9179cfb670863fd1f704a6f182d3aafd5aa6410664a1bfd38ba6ff4dedc4766d81a5b7c089dd2855840a673a60f7620302047c435bb50066306402307919087c4b5ed158b6963ba2234b30f9c45d1f5969b98ec0dc3e8c82075008e9c91b23b980bb49c63a58be09af9ebbfa02302228910e3b22c1189a5c33490ee7bd01b2cfbf3c6fcc368a43cfbdab2bbd1f49b0177cc8618306f7003e4fa5087407120302047c435bb500663064023014e587c4129e6531707c9a96b4501df493aa995ad98180db3093c552c994409812ce2de7492f58449e3c4d0e547533c002300eb6c369951d1b02dc83f1e4770985eebe8cd6deff3c2a3cd8b5db7461b2a5bb07e20ff262f29f82ff6ce376af89e5510302047c435bb500673065023100efcf575f0bbc7c45b017666ec13a56017e20ac21a809e3ec9be6cc373a139c70ff49e25100800b4ce5b6d73f5a231dda02305ca75db732fbfd3551c5bed9a65aa01f34edbf04ed761f1a64a0cdca4f31cd1791b7322436195f950e19a90d057b6c8f0302047c435bb500683066023100d4f9b19b529d8e9ff0bfbfab12e72e2468fe65846ad73dcbfc8ba4a2094785c249c31992bec9def1b867b58f31e4b5fc023100c2eae85b856ed549b9463e9c0542b116a727a5dd7fc40eeebcd5989af7ed2e65e92010007f8ddf8709744269a8928ebd0302047c435bb50067306502304bd2d578213f6b026e134d97e78159ccbb9e81a7b9a85365ab46a6a31a84a565e6240f200ec559bbfc69fa5c2f6bf1ab023100ae84777ac72dab9440f095a1a25f3a3d22cf5a43589162e2f297429f6e987ee04c427105f425397249aacef61a0e5e3d0302047c435bb500683066023100f94a1e54e4f929e5033972d1bb1eae1d5e2e08ba86d0dbd4c5e744be09959c9dcb27282bb5d46569ff584d0ee2a297e5023100929b55af0051cd322ee7ec126c3bafc0748c751fcada62e33336c26946a1ae1cea2c5d4406ba5689770e0fb66e913cc00302047c435bb500683066023100822b6acd032d3e566027168766e2a33d1371d6670d78043b36ac5de9d7fb694b1bced290949842a6dcd740eae3e6fe22023100c07777ba7a7c8dc81355016673081228debf47e513d0b876a66c183403f990e99210f42254f8375d8ce641e95c0d35420302047c435bb500673065023056f4f490074602c58e42251d7dffd6499b4dd3cbb1fabc7419f15a3bc164bacd3c19f301b73771d52c6204a6b21118ad0231008670327eb00b9dfb1c97f68e635ab08c909c7a735909e800c43d5068252819ceb9c6218cd0f04857db61e90923f0dd950302047c435bb500683066023100fa0ff6ee258f051e06593d0ac08220df78dea0bdd3f67f44a2f6f5e64d237dda6b14196bf010df93e7e29591db0f8e40023100f86ea6ff382730d20ceb968f5987bc9cbc84adc05a67461d35c1ff9ac692f0d45ab1cd5c0337e2302811fa6bceb8993e0302047c435bb5006730650231009521764d165d3e1866af9960894daa667f24842112c527f11b841836c81aac351a23d78666eea2ef9d89e89c59a1b9b402302d1a7bd942240f6b0d1619ef94249fb53186ed748719b52e3b037e4b956bb4ab6a3cea4db54de51e66d471cd3da55a880302047c435bb500663064023066b9ce5d5517e1bab385c98561918e99840afa06598afd4a3c36bd7731834716ee7b1bcaa0feb0fdf5a8de8fed232613023040e1299b68e67a35870d09c5284567c7ec96c1007a6590a696befcd7551fd0b1ea0645ee9006088cd14821946e259a710302047c435bb500673065023100f9a34c59a091d80078b769a314d78a779fbaab3305cdab07f3e4776c401ee7dc8f01975fec0a3a0cf9d769b1f0bc4d58023046caf60b6f226c03dea2becd3577c99c901c3c43d3ddf998ed0cbe35759e0c4d06ce34e5cf6d7d144c6fd9655cba84d10302047c435bb500683066023100f12790103863c0687dc22a941c91ca910c7a38ec549d23ac57aa641250087c1bf23789e2b0a45a4a2f0c3d48a0a701f2023100af82e368cd63777fef7801eed95074c70da145cc2af8ef4398e50e860d9d6d347ece797003e8c18252e3af27aabbf5910302047c435bb50067306502306f997352f3b7e5861f82c1445072083fddfedfbfd85084e6e4ea92e48976c4d7f0f1296658f942cf7da50ffebfe834120231009b1b6b467f40cc94c69dd878348d567a8e492d337c798f150924b105584d9b35d84a55ede151ba0a330237bd82d6daef0302047c435bb500673065023100fdb88e904c0df10af8f25f273ccc59c3cd795f660ef31d6653e05f53a8e5da9c180a37170011185aa2b51bea28553da002307662a1159efc64857d8dd0dad4a142a82ceafb75e532dc30b80dcbec22c390119cee8b331130329eea593057ce66721c0302047c435bb5006730650231008a89e654bc917068dab242e1218cea768a642665e9ba7a2b4073ac5b0829e00b947166fd41122556e42795abbceca64802305960e0f03fc0e3db4f086a91bd99d9db5810d091fa3826c82e5ed381c5b6fde5c259ca22bfb99f62883383df3156cd4b0302047c435bb50066306402307e23d5f7c4f8d4ae76c68d71c9af79d8b8fcf0a7231cb6bfcd89b0d429e434601bba29b1b191ab2bbc7d902b9c4efd8c0230021e76eb49ff36b0acc44bc14461b7b1699677f94c42fa47ba1f22d4fee28318e98c778d5e3cd23d421485689f40ef550302047c435bb500683066023100b6cddc1313caa8e0083a69ef1e434c1560f406432a42c66ffde62af605e02705d64daeb153d655ade8086c86fc6f582d023100c4d97ccd32b2ccd820e5be1e170abd1a68935f94f32a988b2bcf10590f18242994c9e512be4f9134a593a2a6bd1c05260302047c435bb50066306402304fb70f7ad091d37ee2bb08f398d29a91c7ef6d6b5c04b049084ddb9ae419658683530ff6cdc02835d08d172118c43e1f02302d5d3e0b63f6b6f4133568ba379860957218db0c148cdbca82a67577c5eebe2cbe10b255f0d377632064cad547bb44690302047c435bb500673065023100a8773cca129665b6c43c22a16e684bf33380b09950347efe75a6d9fe775b73123951bf26b659041a766ea319faf45351023074f73f4c2e446522b5bd0152d928bc3f019109642c9b5d61d3220c950fdd524cdaeb040ca58d4f241238d639b632e3330302047c435bb50067306502303ad4f1c8ba129cbc3b5aa50f39ec323142567b266e9566a4d8dd59f9c30d104289ef4d1ea372e9af521a33797b804a99023100d2101299042f92520a0a48b2a4a6313b7f5276ab74b0375c02d122874f5b219fb8fc1bb2b3ed842c82467284d1becdf50302047c435bb500683066023100fd69675aa990ce2ed7771b86cf5cd58648d37ae77804868cf036ecb3cac1b398a0ec3a10b982a646c5fdfe7c2d858ca1023100aa23de06ad923a101664f9fb93151436a0ed0a2a918d097ef9b847c1b3ffefbc0834a94aa4047dce7050e5a097c7b3ba0302047c435bb500673065023100aec81256ee0c5b7a358043253063ce94c4b83021d50b299e8360d166991187d6d5c31222859b613e78037018b5d5bc40023060e9dbcc96cad9d34a8a3b4684a818539be3e71a0f1663ae6229be2bd9f10fcca137ea7bf5f4a1c8593ecf807d3048150302047c435bb500683066023100db5b8256d2d55b9112764d55b16d4058acb76547b424be4f879d36a9e014ced9933f4435f5f54c9cfc068a625e6a782802310090a83f3c18fb4337bb31d37765a42bed1da5f79a738eb5ab8e48cbffe342f4a3f0fec518eebc40423c833bc5cc8d3a070302047c435bb500683066023100880c0bc4ba5b85a9b3aea3f988da70189152f703c2f708006d1ca8f8d5ce762a57714cd1a7ce178d961b5e86f2f05fe6023100a43bf70898d62ad49385ab9d8d57ba2b23fac79bc2194bb934eb2e0bff616074eb701a1ee78f073ca80e3229b11317a40302047c435bb50068306602310088d2850f6dd8011cf1913f7df05faebc43d159935854b8a624259d7c818298267d7da747bbf0a8f8324d2b59e0ebf0710231009eb0d7a23183bcfe274e42971ed4817cc20757607fe2c159bec75721d6780c19e058b0b31cf1f3d10cc18d769fe1fcf80302047c435bb50067306502302ee81e62a8b9720019dff7e0b6615b0172dc4b2bb9a8f6f61c34c06effe3f5a4476fb0ffcb8f42ae335f4962c0186615023100e69b728249e0d2bef582955bc7cf1bf8d53d9f26fb9385e5648cbfb27fd72b3a1ce359354dd44f86ecc561b5f0e710d10302047c435bb500683066023100bd190f6e7d9969d7c3e013accc3c5675cb2a0dac74c783cbb010773763a82a47a39dccaed4a418dbc5a2ee37ae8a3a60023100f7f2fc5a732739167c4ed4615f91373b373b81afec43e3cbdd3bcc3ac2573bcca79bca95c0b8193aca8c98ccd0d471d80302047c435bb500673065023100c9e100ea444f6e42a0732392364f6dcbb29db6082442b7d2fb6e86513c5f03021d8bbc4a9c843da11e78cb89b46945f902307a8796a9541dea881c06ce68f0df70416654c344966a213289195885bae6f96966f4b2ec9888cafb75382b4aa23425670302047c435bb500673065023100f4489da8ba29603eea91ebd0cb8aa84e8eb07c970017b5226ed48ff9d43bce020dbff0181f77811a066d60890f5f4a1502302ec9a149170fb912dd9f60f658b40aad5fbf21047e2dc99f403a28bf6b641ee14e9e6aa71583f961731ad1d1fc90f2fe0302047c435bb500673065023100d9dfe01de7868310ef0f55a7a8cbe5e62fce5afb3d0db0c7d03ad44c7e4c0ad5194cee1f81e164a9e601a891b5852ef4023010c6f74ea9cb75a9b53ec3566f910f25b291b67cd3c45a2dd1d24136c5be82fe90f567d2edf03ff053f05e8c895b83bc0302047c435bb50067306502304dbb5e81ddf8999ec9ce85ad4cd36b81b320d9c7cdc3400920474fcda59d2e00559765d48bbdfbae4dd94cf103386f30023100ead406835cdaf32287f58915b77f6dab12ba678906913e380f9e759bf59f3cfaf37c3744a2e1bc5cdfd96b43676263a40302047c435bb500673065023100ffbec98e69a3942da69437670c6b60532de242c4b0d3ef8789d48fe7a698b8d4eec3ace205e4517e7f578ff72a9126c202304c46d12bbfe27c4e8d7d9335bfd0f5eb3113b4eeca356faec4ccbbbe4766026030c2526ccd17a9d9463979937cfe31450302047c435bb50067306502306def53fd71a823a2346edab9f4cf212d15677a910b1de9d46c81f3e3a58e673052167c8b5b8cdfe27414d5da4460f1090231008b9f41eeb5be0883d167a47f6e98ed4f415aa412e0516a0059dbf4cb72049398c72d39222846bb9a4ceacef081af47590302047c435bb50067306502305729fe0426b4fd9e39b90ed83d16e75c8bab64114eaa760e87ff29e009c542d4a9178e2db0a064fbae2b93b767148236023100a7773ae36f70d028d02611a933c54b83f2eca8c2c7c1d7058ac1baa28db249e6dcc07c7211d8c9a3d055bd2c8e52f0240302047c435bb50067306502305bfdebae4ed6420d4715ef3a124cf4b0f0946947b9eb8a4c9094d4c5f5a24c86d58b4da42546119d365c52e78effd208023100dd2c4b6ef99dc67ce7fd4084bd8d278db179c488c364dac4887165129f5c2977a36f6f8eb90c180bd04f0532ab0fb8e50302047c435bb5006730650230518a08085a97c309158ae00e0d576f2b688072aa3db10378aa79a7eae823b0706d4cf5aae84c8b5709139fb0335c3d56023100ae6b500a413d18dc596f7cb16f0d2b1d4e705f8c33ccda2cc8fa95f8b8f96a6e159b3c87f2595575c3fa50977a9cb9270302047c435bb500683066023100a583f740b6e4c6d85495567c5caca5b5171626669fd2770203a8b327b867984be2dcd2bbbee6482adfc2dbde1a557eba0231009fe0498aaa696bbf3e8ffb8dcce20736f11efb2ea18ac3b4e328ccc0ef9ab126f77f0de848c1a6a36e915f12054949650302047c435bb5006730650230166a2dfabe15baf4cd211697ec0ee95b2cddbbff408ff3d082825c725b0ef6fa11d3a14c3d5fe2e936ae4972b5546f25023100fdbf17241eb43f32d6df8172a970b1cf35228b53c77c0743a213f447cb1862f203371dc40db067d82e6fc0c8dfe19bc30302047c435bb5006630640230530272f34048ab4029bacc18910d1186939ca65a39f182eccebcd6e0550319f53329baf4d13cdeae42f985d8a2e1f78e02303fa547f82a362fa073e7373242c8b8e3ef3f46b796d4369a3a48695783433395fe0ea6559e5564e1cc2888c0cecceb710302047c435bb500683066023100dfdcddae32271e6667e933fd589af7329b3d412f489a829130f4d817c9ca62d7d32005e083ec665b4f2a67412ce87e2d023100a28d2f71d860147b175d5fc7126fb789c842d542f13f3cca6476e112fae5e3c24d788a2f04a1aa7d9ae198539ef104370302047c435bb500673065023100d98b99bd6c6f0744cc200ba3226bcd862b952fe7a44c2790d6805c3cc9267a7c7fa50a79be5bbec57c1f3c06320769420230764c2fb0ee64326c6ff77402a8c1428bf451accc1f7b1ce021d6e8fcd1f16aab7484be11b02784144d520e56425f98e70302047c435bb500673065023100eac97c091c994fd7d7f8f2ee54a054a36369a45ca885825b55ddb03dc0e671cb9e99451f4e83a771e3fe59e8c8758bee0230239e56aa0b828089318a72e653c9d6f6d3d5ed3fb309ab4a69b19bb5721408b8dc426362dc524d7e902e1c358d16944b0302047c435bb50066306402306a959e0fc02e10733157e5adbb98c676b9c71fc1c030cd44ef4e8de67cfc79ba800a35a53324ff1cfcc15acd0c27cbde023043df7c15b2932209ead5477f6e18a0f05f80c62615399c2e01ef4e89ac5798243e9c1ce7c37c40bdd9e28ccfcaf1e6ff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310087f8078eeeb53a96351a57b36cc635f9653569b8a694a2b776eba0f7fdf5dd1310a99e428064509ac1e55d31d9c46be60230486c4a366e1087e5cf4073677870899e5c8e1f9bcdb0abcbaee02bfd393c5d353f07abb553a7c3e24e35a72f645aa89f0302047c435bb50066306402306e9bcb236bcdb5e264e7365664e3a918fbbf7e672a601169ad6d1e3b702785fdb9db514f606104e8130df1aa8f0b5683023018ed225cd78b7cdc603c47b017e85e85d21fe1e51508611204b307c0853d915c13513b479cc803327418b92d563e04d80302047c435bb500673065023100f58e8690e330b7ed851291ea2fb78d4379ad62b4240ac356f63924b0f6ff166a170936d02b6d1cca1f9b60037684d2980230703276b46b4791203774506731b2aa2fdfbd6434f88e40716d0efe53371aec15c15425dc2035e465188f1dd82ad38ed20302047c435bb50067306502303b745af2e51a89cd9585064203f2bb5b5479fa3dbdbb6ff64a03aa8f0c1868ab824e6446c58b82ec964200661e86b9be023100ee66a6bd53739e170e3fbc647237ca2c292de33379bbd15c95d383a9dd7d7b9d5cfacdb81b62ccb3f0c1dd20e3b025c90302047c435bb500663064023021dc10986f1f3ccdd1b9d677c1b39a972e5ebf076eaeccd53508944c62956bdf6aefe21299355f15857ba6faa36e1701023022d77ba026b0381ec6b55e507f5eaecbc62129f682568e6098b44b9c5d17d0cb2fbb90e5e8d84f140f74e21052b7860c0302047c435bb500673065023100f6ab42701ff802450d852ce90ed1fcd933cd35740d857ebfd86f05d8bde0c38fc5cb21e9233d649ccbb1ce8a7694f25702305b615ae6190c32698a2edd050e426639ac75cd99adf78c58d503f54b18851749ebac4cb992ccf9337a97a14309c589d50302047c435bb50066306402306636b207a066c55a7f03ba3ce05df645cf04c7b3edbb9f8b0dfa1c486daf4f94029d026b61e82992f65ccb2ac8a158ba023038d42403446628f8de6acc6033dccadf8a795c6008db727bf1c08a64e4a82b72e07b6fededc4506cf115fd9f51eb43490302047c435bb500683066023100a04261a9780eeb368cc9d397cb10ed4905317ed7a29c5b9abcdabc1c265fc7438358c63a8bdaff5f0f7b9e282874e45f023100bfb100b2ddf03cfe98da3c02b52acdd258f27b1b4da36fadafa2f539333c0c7ffc428e34a7089884d97f5bee05efd7a60302047c435bb500683066023100eae2fc0b6bbf541ab273c9e2e2de575ccc9472bf2ac7ec05eabcf6475235c7ee5b974139f48cb2a48b36a531671d73f8023100d7a944ee1261368d8c732b15fc576b1876e6247bc4ec2db73dc9571d347aa07c742a6a808d67c386facdd839913d4fdd0302047c435bb500673065023100d445e384fc6bfd7e6055fe608ecdf4887f8b11a206d0d835f4e5e8d2e0fb354a7c13f87768e42798e2da13aef7c7594002306cbf14cb3daf47cff878ae07e8b396a83b368fd0fd53144c32697fe6fe5c6079335cc214fd3d7c4c3c17d3ff2f2bf4fe0302047c435bb500663064023075d8ff3bbff53dec8b5d1a5c7e629d60cb186602e59f416a9e1137a082fd7607dd6ab1f79d6db25ab0179db3ac747b7502300c7be3c1c0631e9a9350acce13bf49134247c3c65bb56ab57d8d381d29d35736e627299257bbf5b3c64273c5625e6d720302047c435bb500663064023016a787d5a68ebca666a48e6c49692f29181a6e6dc0e669a43ce4ceaef1e1c0d7a8b19d0f11615d8299c01bc80379714202300361cb792c69871b4e408b2441be7df905708cc552c34da006bc65c08b421e9da3929b5e95239a6db480f1849e468e6d0302047c435bb5006730650230649cac8b0a9d5bad19c375b6367ebb29725fc56df8b90d8eec6b4679d801c3f06c93dd7b74ee35f4400f940ab77e902c02310082417ca18ac479159e7fab40738a3c82d4e358ac9f3aba9772294c2303ce4135bc489eae180afbed3b003026c62b0ccf0302047c435bb500663064023059c62a092515873a71b8134a6076df4a87b8cfe7c41d3e7bacabdc7cf857e403795a1f1b10bd8a915d173336e140aaed02302fcb56e83bf4000702339dab290fa4119c5f16db13604653155ddb0ede8724bac51f605f30d3cbe88a222198f60568af0302047c435bb500683066023100e5acb5694148325d5ff59c775f96e180db32f21720fd74b95bb252f7b03f8efa0e2684a3d25b91fbbb9ffa8d940049e8023100edd6abe19fb16b536ed7fc6e815eafdb60554888d2f191027a2841d719c2e4557ec67f23dd3cc2aa437712b932b155ca0302047c435bb500683066023100be312f8051ec310d0ab36aef1be6b6c046a12e8cb32659658e62e49c2d541a28cfddbb46561fbff3a73cd0b9d907fdec023100a318e20731ad65a45a698487de5be4f4e0cb918e60934045db628d93b70ae729ab08fec30fd5cdf5f415faa32feb4df50302047c435bb500683066023100d07ce108d4d2d67775178bce0bf2943cf6db9b4074981eef4b2d05a630b4de84eb19770037deb9981e4fe44c2892e671023100bdff598381dc015a331e13907e38e78f2564eb3773b61b0738ed0376b4df3bfd18e6f5ed65206b5f2ed6c382a64f02fa0302047c435bb500673065023053535e472550413d84c19bae4f23e687b422d7a2c44d8bf8b17e50e59e67d533b2dd79ad3ca5a697a685b79e507a01a2023100caabb6bfbeb8a5ec7a31351262631505ac4e36b41e6727a44d2be39eece70257e05824d657c6a4acdd52eda272499d0a0302047c435bb500673065023100c929dae6c0df4b7da32c312c0f05d0c3faca757b010a79b817039afec845ce2cef35e3b0d3d3c1ae734b1537a43d02fc02306d8d10931a868e18b2811812bdfe8754ccc7530155c8cef895b88738a35ad4336039fa428848b293e0c3dd9885b19f0f0302047c435bb500663064023021abfb2e520c1e7a9c67387de71bcaeeb8d3203246fab84500de23b47c80f96ac7da061c78e5ebcc2e51d71e59ec80d302301dcdca53d1ee606b9eb4137ea9f00bb9c3a998ed05f8872d9db9334cb59df0411873b6daf7da1817805327ea9aa27caf0302047c435bb500673065023044e6ed0dfb28eba740e010275d8b9ff8e0978e3e904409a44c8ebd305fffea5a0454c7c6b05f7f40d1d8555acff0bc52023100b8bf2455f2e524cc87ec33c89ea3f5fba372195b8f5a8346670ff7bc37e968070950016019fc4c59371a781c78373be80302047c435bb500673065023100dd8d96978d18e4ea49d44e992a6f57c4eacc547c8431af5f1b892bef49111364f545a3da7057750f78eaed1e2d97d65402306da95db8a2ade87af844d053a0a2b2c571b601d6ae7f41a7349ab4f433c355dc0ee17a61475e910422f4b6e20ca59bf40302047c435bb50067306502300f5dfe1154743d67fc30d7be8f31021d9a26ae4899a5395c2cd060951b870eb653b6a9b6f33275512d71b22367ecfc140231009dfdb43c91f5845b885de15a5a8481ce302746706f66da16a02c42e2891da215333763fa6d8928ba2bc07fb1e08d04500302047c435bb50067306502301d1f28027a5a4fc8d4573e60ec48bb50aff1d1cf30258a780f3a765451f3d1ea5d3e3d14eebda77d12f840841536c5b3023100c62ff7caa787d9305de21b3e351e0f3e500593971a33f39a0b983fcd568669ca27e05483b7df87dec55030fdff34821e0302047c435bb500683066023100ab5d1c24799be4155a0639aaebec8da912491acbb30c8b0626b0cc59de2e5cda6f401ce1a559885f84f9520935be768d023100a5f954066df1be1f5cf563952c6ecfb7bc5d00f097bc0fbcad0e2df5bc5675f39ff41c8f9a47e8d1a9ad2c82c858d1130302047c435bb500673065023100f569cb59b054def81e941f5dc0e35c8c4471f9614f62e75cdb05f7c0f409dc482d5006b1d3abe56de1812724f6675d3502304b2b4e2200539568e8f881470b39f25882f81fc158a9ea7af022f53c7ad2bfebb17f6612e18ba06c9b7083c6cd6df23d0302047c435bb500683066023100ee64d5ca86001d65ed53ab9323d575007460976a7ede3472bacca8fc2e9c0590b3df882376e656e1aa0c91c4144573c2023100ed427db260667477a65b357b4e81608c77a494734a71c20fe462e8c818c319cff8581634f76c2e8c9e5b75975d553cf20302047c435bb500673065023100de1ec8e178e73201e1e0c6288f189515f85a86d36505239c83ecc9898d88e807bab5a280b77b7582ef0847452040944d02302cbbf9fb8e946efffab81216a5b28120a99f9430ecf981462ecec27fd2e818b5104e6b247c0955522836d6ca36cb7c3c0302047c435bb5006730650230758799bf4d2a31151ac6086db5722af7e3342c2d836035b090313824bc06c0a58925ec26223cfcd26676997faee79e3d023100fb3a087cd308ee6d41819b6b4662066203476633097ddd832b861c2d5259207b815daab26da1bd1499687adf5a9d3cd20302047c435bb500683066023100e9d750e35d6ed1ffba494c38f3d1f4bfc2689c09873b7bb7038497c637d392c92fc173865d72ee4d7dd91fc3069d97200231009aae30259abf1729eb6471869eba67c27bf20093c3229caaf9fc2883f46c0d0ea35bc1adb622e3eead1c0e77c678ceda0302047c435bb500673065023100c128a6a2c9074cb0319fc7bb2c20db4a293d0db68110d186feef3fae8b049cdaaa399916825dde37343910c497b50821023063d5bd4a15298518c6206d55687c0e8479d37abf6214f3978626ab12ad0bb76c0de490f6578e947434f5031ac58337170302047c435bb50066306402302ce335ee57e2b0073c5232ea50f97a40517e49fac00646274ddd6a8db1eface3d3bab6cf1ce1afe668a7808fa09181390230437bcdd056efe4fe6441e1ab27178f739881a878adf3ab351cb942fa7547b38cd9b22eb3de4fc03f7e8ca41a9968a52e0302047c435bb500683066023100b8a85a4b47231fea6db26922f8bc35049ba94ad8250037f4242a5667ee9315dc5a7eb740501fd7912a2c117cb2b1f991023100e8860eb78c249c3d5aa6ba3ee4d05ea53b8c971512f2a53d38d6c7b953141faf4b9fce63f92f376c6763da343ac95a0d0302047c435bb5006630640230721b3088ad68d62edf9ba8ab4f507e6e8e07386708d47e37535bfc188bbfc818a8a30db27b26c7651aceea2c5861419e023030f60b2abfd94039f0b48f9f049dd5ef0f1a07898ffe761663a0ccea9c2545ea0207754e8def14f09081bfd504f9bb3f0302047c435bb5006730650230408c521a56c08f6d72d927d4d21a859dccab61909ae34a172c9943e7e2d69bc8dfb7a768ee15e4c72c50a6a6feefab00023100c41b1d5b31fe0189d2fd2064695a949bc0a9570e4c2fb81a4947b85b4655c495283bb7d775d21841783d4e610b05bad50302047c435bb500683066023100d8ed3250bc9469a8f1ecf37a6d6eb18c84ff17c1a92a93df87a20c5af187a32d81ee81814af2a22f5946ab46bccc008c02310094249d917055f3deefaecbec51da3d26a854a4fa900848d25ed27fe32ea98d1851e81bfc785e5b2d62af502a1997a7f00302047c435bb500683066023100f30d67a0643c31792364103c1939f3018d6b7e078be334360139cec4872fd3f087721e4dade788ee538ba79934b2e631023100f1990f68002e0c42b25d4ce6327e7f1a582e65fffe312c66be8eb4f5cd9b36b19134b7d51ac7ed4a266ac0578e155a910302047c435bb5006730650231009c9e209f4924330c8105f4ef165971b541791c486bcb99bd649fdef50fd6e9d7e794ea3e7fd201bfddb7b2e3971ae0f1023015587b91f4759b0bafe014185ac53a6b9dde6d46099e0c2ac58903d3147255ee7d2c126ea42b32636bd005143844d4da0302047c435bb50067306502306df507169d1229cbf50b7751f2a8f43b50095f7672041ea8c40c32292921707780b424b1c2c8dab78ac1a5c1aa54d67d023100a3b7ed2e5fead890d4baffbe5e715bb5231376c2d1e9c03a5f1b97e89fdf577f0728281ea2e20b4cec84980afa2a17af0302047c435bb50067306502306897b748086ea2c289131269a89b4c436ee2b01456a256b5ed6f27011690538fa20013df3b242731b945633272e0056a023100eee06314b5630aebfb45eb27b56930658f94245fb756a5d0a550a1bd7030c634f50ca5c829291ca351f9d6c9d54abf750302047c435bb500663064023030dc215ea9ef1ca50c982c5c56d03781313e2fb92a7719c50653df36a720544913d55312928364c2ee35f3a4312bf622023031fb3332a0ba055e98201b950579b4a4186d9c3c26326a7cb70de7e76634f8b8e7b49adc057ed09136ec103050984bdf0302047c435bb50067306502307eb85a7c669ea2e669898a9ee1112a7c141dd609b15631cfe3bc6160b4f1806a2253c0ff285ff301b7bc5e0045bc3e21023100a66998245ba7ed546e19f453a62960291a08b71e6e99ea14e48449281dba88caad31b23a2338b451bbc9d6abf1f1da1c0302047c435bb5006730650230183d5b49a7b20db3a61761fb17a00dd70c548ba372410c67bb0c740f7a18a1f5363fe6d4395a6dea8d682cca4b65e3b5023100a65cda97cce3ced39e521ec0146d12a689e79c4429648905ab1665420247c8f7f0511a88f7ccf187a3bb05dcba26cf010302047c435bb50067306502310098beb7f5f6ef995713bb90873b0dbe25508898bb3b0f3333ba3fcbada70dc67629eb930c2f7dd8646660ce90b22ab670023034fb54de0fffe82a3da9bfd8aa4669c344ab782e152d0c5a54518952b8b7c471ed0940934e3e12d2862f743e34d345e50302047c435bb50067306502305bb42c2d2172d1bd3659c343f5a0024c0331ea8fabc81d66a694f6bdbdbef0293753776861cfe329c19ee2f9f94b4ce8023100b6a446ef1fcacf69bd9122549697444fed56c365c92ea6b39f4ccb562c8328cafa83f6189454f50783d547bb30c32fba0302047c435bb5006630640230656f640fc9be75fa253ca0031c4eca77f96b2fbf2681047b31243c75f4d532a30ec8d24832bcb30d84bc2971d6d4d6840230108d7307cc6427b03efdab1cc2d97931889584c274b93cb22c2e47f632674bde21319379bf5d0117de1d2dd2dac967480302047c435bb500683066023100d477f75369b0a8aa25bfdc9d448009efe1298e95908d68b152fa715cbbb13db810253b505a41ee05ca9e6ba17183776f023100d35086f73164c280fa8ce3271f516d019dd4d5d0de6d6b016666cafd15c8a9fb00dd52a37dd4efd47d6ad77611470cfb0302047c435bb500673065023040b0127055d64600ae95467019e16fbd2b301ec1d62b5c6c8aad2b0f9a1fe669b2464495ea150b73f6527dac0638c1b5023100b631743b89f5794096ba1bb6a237aa5e69992d043b77a66749d69c6b15af8c48cd58cb40cc1dd9b7fe64f77b1b6c7c0e0302047c435bb5006830660231008112c8d737b7e2f9944fdfde16ce4282ed5f49a7c3ea083a32de850a7c8f065add9d2508caf1592caeb2ebf632e74ff0023100b1397737ead3c021f438d395d22cec2e5714f432183ff3eac3e7b576dc958846deef470a50dd0aabde1f53360ff17dba0302047c435bb500683066023100b8f26547bef3dcf1c7917104f5bc197f2f16111c140fbe6e646ea7d3f0f1d4d4ccfd6f39dd24b4e81ddea6049363757c023100e5bc5bd0fcb852b7bdee7db12723e84a842b12c0642465e719ebb79feb1723301350fc3dd06afff6a2fa23abc47914d90302047c435bb500673065023100bf2e0b0cd83de173843f6891c742d99e9cd3890d9554d7555b67cabb62035f0c5d418172e12cbd1a7ec96bf6a06a382a02305474d1c472641e88ba89eedb5476fd4964dfbaf1ac5a7e5da71408c4b13ffa616162fda08ca0534df7599054ce86e50a0302047c435bb500673065023100e46a6240598fd73a2101f1b845f4b458f69fb6331e450e19afeb4ed57b01fe58e4499a6d1727d575e124240d4e5f4abf02300185d89417b68d4858c56f0359f3f4482d795176bab0a9c7fd85eefd30848c11a0e5754549d79f8a187927ea830ebb1b0302047c435bb500673065023100895bda1433ef2f0cc73fa00cc13f802139b7af020e8b37498f447d03bf194f8764627e1b34d1c74203a430ec38d4d71902303ab24db626f1fc22bf46e0534b1fa93696f4be8cff085a61f81c47280ed2d85ac30e30affb7a87812eebbfea29bba1e60302047c435bb500673065023100bc7fcba8d2bbf1d4ed5c5118e67925738d9a431887696cf1387546675113fa356d958571292b061793db605446b64c46023070df2ec1090b46c48c5db9571e9c5e0b1e43c6cff423eeb6e00c92a6ddd6e53ffed5527d97449b76c91fb5b7ecb0c79d0302047c435bb500663064023000a4f9211de96b2a6b59d907a44ac963ad3904aa27d69bb8b813016d29821498cb824e9c4bbdde643e7a2f7c7a79ac2002302635c9b963eeacbd29e9ae8ceaa783658996c66512476e3683b172bac1545f5872e4f9476f688ac43befa0c704162f500302047c435bb500673065023100f3d7ea59daf96c19b50427dd46108b13abdc8ff70007cc5f4d2ee57954fca3606a48362a8baaa041b04b2ab4d564859002305bab32a62938b654555f96632b68d45ccb1aefbd12fc3a50d3a9f75c717c0e01c2f4c1edab824654a93ebaf98e88c6080302047c435bb500683066023100c5400dbc9258c732a01a183cf7fb7eb1d57e02fcfcfb843450b65d19a6fc44ae2ac2a8a305cbecae3e0f7c2a776b508a023100894509f846b4699eb41d7fcd07e6aaa339fe74a0af54cc169b3a5874ae7e182a495a6e3bab4072e43613cc8da1b582c40302047c435bb500683066023100ce4f015587a83ba881614888a420dd246fd1f2c7985c3ac5a91cebebf7065e7e2f0ee710d52312886c4f253a83548613023100a649d3cfaa9fb8b1b471a10d6cf90e38984929b55b975424e581ec9ed29ac63b3ea5f92408f8f5563706f0d94d7a5f5c0302047c435bb5006730650231009bb83e072ee0e3639b22703d89dcd93d3cd3a041d348110424c97c50a953f11f91b2eba6faa118b5a9052cbdf4043a52023049389418a71421c18e55eb96d1b63385776408ec32cd1feaf532e6bd74eeb36b21053956cc0d47555ee1668364ede5040302047c435bb500683066023100dcb267f60a6217840c27023cf97baac3f0f7df4342258551e6b297e22bc0893a751434b547329cfd1134a009fc6eaf9b023100d8c60cceea5438757f90387867718f78916454c69524cddb16120cee951750b8ffee6ae5fefe6e8973b70bf3e3fb46270302047c435bb5006730650230353f317ecbd7db6e00cb9febed64f222d9da77ed65a0d04c65aded2fa68986dc52bc78dbc8d600e82b9bd7113552ff4d023100b6b6e491477ac7f4ebe9e4d4503b21557f14c33566c0151f1eb84f80b1d6ae1d74a13bf0343e464c3cc6be96a10ac95b0302047c435bb5006830660231008039814ef2b25cedc782eeb4ec37f640337d154c3db250ebec894237194904c55b2febd9be395eacf62b1b066eac05ca0231008b318ce65b6c460982abe854e130917c88b8100b6ab43473dedf655f3d280649783162936d660197b614c6589f83a4fa0302047c435bb500673065023100c0930f6ab7360937e87cbc9c5c747e13278590eca3ffca176874b13b37ef741fa13f01f6301acd3f9958882eed822f6e02300a9b91d7098238fea9cf91ccb7d5cce8300799b0940edd0e973d55657011802d10c8508a0f94b5b805d7160c5ebe7a1f0302047c435bb500663064023078669d4764331b4047ff58636f51b106e4766a8d9d4df998203dc2f886cc70027b664056358ffdd5da9f6ee57efefedb0230773e52b7061058354408c39dd6ac4926a29910b8ff12aaf9c1c809ad6e0be3122a380f3c10b0161377d50024898506ec0302047c435bb50066306402302e181c2bc9a6aed1122557a66042bcfebd8c2fbce91641af2a3610747cd8816b57f6690cb1648944cb11f46dfd0022e0023015d9bb1e2b91594390577ad03ac096a077c3bf3907e165f7c1f73f647cde069edb7708afb52d0156e450b64cfd63e3df0302047c435bb500673065023100ba68cf275b0e518a6b17600e2c843103b21667f3ec3cacc8d3fe0740f90b0b401edd1141bf9a8f9444dbc4cb08c0a8b7023008559a0055aab4afd34cfd67afca06f8ad3c742fac8f7de5da09f0e7e935ea4550b05741ce57a7970483e0b1b703a2800302047c435bb50066306402302a41ed9ab5dbd4ae477cb081154b6d6cc796dc7e65428b9826f0962efd282f6cf8c79757c40b8c34f4bec9d626aa404f023053b109aae4e49604782d623bd7b6d7a26244c36b0504aa00b7afb463b7614430add2988763cc2f6580aec288b79f64be0302047c435bb500683066023100c24a183883594571d08e3f17e7bdbbf940a1197a7b07ba1c18eb63c7cfb2bcdc1d5bc9d3ca35b549f6064c035587029a023100eb4ea833e2faadb08dc4e0b72721e6dfa21d9ebbb1e1f5018cb1e86bb12a8e722f22c44fa028017b5a44f19013e157190302047c435bb5006730650230010ee56228a16a3a87356a485b0745177a1ab7572872077f8240385c9f5c3c95b610b4201b46670e8f85ad6b9d8ff3a0023100a9f051aa5976530654c5487bbc98a0e0fb96f5b2c68beb8d5b87e6b2910f454fb56fe98c247904e31f65f18104bc22150302047c435bb5006730650230612ec73989b8fbd59b2b35aa6f0e12e32a465dbde29c6a35089dced2271fab59d49508f30653d6a36395dc5eb7d7e5e1023100e126948ae877aabf1c03e1b3fd4713b3ab910e965083deb9c0430bdd14117c957a76c69f345a038f35cced993463abfd0302047c435bb50066306402305d3161b8c0ebcad5566fd5876c8766bd308c3ccaa86dd1e053e59c116ee1489aec9055f440669413576c49ed0e30557c023062e3cc9eaee5110f3a82d31c0be4f1cbda307f2d0ab5e1269a7ecbe2c1a52f33ce1d9c5f9dac6553c8b61967bb7bcc6e0302047c435bb500673065023009762d493beb2cbb1ae4b0adb0c8e9deae19395ca7579665d117099e682234486be239e157b4bcfe701e1d08b8abc76b02310085030f2158d004f794dc65b539fbdf65364e19ebbd38fb1a77be10b32e15e37fdd43ea2ea7791e14ea902a972d1ae4960302047c435bb5006730650231008505b87dfcb1c30f75388814e56c8124367312c085b4a7f2612778eb574f429a3bccc507d716caf34ef0edac697294fc023030a5fb83c40c862cecb28ec74aa565168c169fd8357aa7f2538b0502a23476ecedf7783fb21fd042795b83af8fd1afeb0302047c435bb50067306502303122bd35a25b19c002eafc1285277efd40b315d423f526a57eebc5cbae435df5f60188dc81a540f214c276d4bcbd91fa023100f100d407412773d0c1c5ee3d8a814a72f655090ee05813a4449fc4f1b587dbfe50e844e1a6918661ec42c953d8c3a3030302047c435bb500673065023056df5e1608d8b2c63cb567da8a3ad34e89de165524aca28ed639331bc9e37d95531c35831dd1e34613fd6bed855af0230231008b2f146a9174f24cbe070a18bedaf964e9c30d13d7620bc9b081821030231b1a3cbc08a80021c55660889f9ea2cb0f910302047c435bb500673065023032d707bcff3049166987de234fee26fd1a6b9510d58aa98034501ce7933c2bd2c3ccdb4a7f9a30f024a7e51e8c297175023100900e47f478a801abf242f6387597590b3e87c2cb6fac725cd2926039fe073365b8a19bb5557c178c576763b3a3f867bd0302047c435bb5006730650231009a9747d76ad1922b7b66ad14e2285ecdbc6d5a06333cd01f135bb7395c1523c3f7c570b041bdfb00ffecb1713160c841023066b3f0f8635efffeab8f5b5ce0350100e15d38da9f0ad9c3c93dcbb8933dba3723c8ebf49cc4df8e778c5ce9aba238370302047c435bb500673065023020b4888d6436db61833a2eef8e0e072b1799d67a0dcdc4f2c6a8d8cb569be3270555ed0726488642f51d01d708e06eb40231008704ed48afa723509b4403bc509bb1197daa9801418ec7ead240aa41a298434f41d3a1643b03f443474fb18e80af1a490302047c435bb500683066023100e9552f237f2d2fa96b136c2fa99e713658e5ce221d3bb0a41fe4fc1ff4b0e121ab69fd025abb4f97d0f32cf2914e81a6023100920ef73a86364b91fb6342839244e8e4a4b31803e17abebc038bcc6c8494147ded9020abcfcc28d86bbcf7ef497e38700302047c435bb50067306502303b510e51c799d4c5c7e05ff707a3024a22a5d412a264b555af79ae59148386eabe500e6beed968ef3f8e7520e426bd82023100f8357d408a6b2467219a3da1108d73689be5a89f4def6d5ca569b21ec879ef52c86790a440af3643e47f2f0c1df8eb590302047c435bb500673065023100d42638200632f04add21373afd07ba0a5465506d8de6f8307774823a22957f321e82b6c280b9ca74eebf654bac00707b02305140b537978920492f9ee2ad7fc99d6eafdb383067eef51b022ff96ef6c1e20000ea039a4ae5a82e16de85fb510924de0302047c435bb500683066023100b9bb3eaf3ab29eb3bb05ab8be1a8eab42233c3733340c8256ff030106e0f4c59a7b6a01598def334520ff339c6ec0481023100dbf2a3b4e6b845e4159d4267e58bb3fb43095a2e65fce369a74e703d844d804d1ab85f749cb4d7b8563d615d754236050302047c435bb500683066023100a8cfa5a0ec261df99c32a77029d03e7def53209229023e91c7456f042014502119f535c383d97efeb11d5838ece6771c023100d1ff974fc18e67b5583d2db696a633c6b39e54734b492f36d6139d577841cbb0ff38ba9cafd8ad76cacc3a8c094b33ab0302047c435bb50067306502300849c65e0329e8a95411a701f9797834f1a8ebf88df2c4ff17859a092d6a07022ee1b3a9eb9cab4637dfe2fda1096bf9023100853e0d8d8f4992025431c69a9bf5e1aa625516bcc8463c647b093ee8b1ff8720fb33cf3946d3f50438061b5291f974a50302047c435bb500683066023100c6b50bf28219a593ed21ec92172b48f56e50286b02c656218f0e68ce7b209a756265d4617a3d33e9e767249cf10c6bb102310084d631e420b9b103d7ddd472657efd9231e934f810b9863320edef714b8146e5c9255050a0211034a97188d6c69fd95f0302047c435bb5006730650231008d3f20d391b93599f272d2bc21232693f9911fa2b404ff6642488b458cbd389859f649f625fa9682d243d808cd97b4b002300d4c751b42e3e0076054148d3daaa4416b075bd25c9ca95202532af0638418bc3a65703352c48945d4eced5ce1db09620302047c435bb500663064023060a40c3ee04d5e39bac6de4c4e424355edf532c7ff4a254d3fda484c6acf2e754c86e1f9767da2a6a6c9c766f09fce4d02302a9ffd6b5482cf29e9963abf437faaa9352f589d4039416ba47d2e869f425cf41d4cd85a15e1f972806e7d11dc51d8ac0302047c435bb500673065023100ada10afbe6c15f0127e039b955acaba90a1d79f090b854170cbb61abbb56f01c431ab36e35fa9106a14631588c035b8602307b87e44c3ef569f4ad69cb472e71c1a900e3ac3182f23489d444be6d6a397a86b4a7323b04c3649a3ad4db71585035120302047c435bb500663064023026362a23bcaf355263a017686701b4042812233ef839b640dd34647c8b2801d59d7fcaaa4af5f5d6074c7ccd20e941ae0230691e97c2a22e9addf104e312dccd7ffca162d7988ca97f18a8d83e664a08ed0569824b3755c136b185030035d2adaee60302047c435bb500683066023100ac7722530f57964b16e0fe9cd371585583b5b279e479c7c5271e7561ca35d2d7fdd190043c3c024eb85cc03c63bd8c020231009baf9f8ca088aa5099e7a4fab292e0f7c46df2eff61fbfd91ec6283576de27df865654cfd46501ce940f5545e18c5a2c0302047c435bb500683066023100bfbe23673d36ebf4d097a52ac3696e8f5fe00738d4a7bafc4ad9a469a0b1389d9dba6bc6d49bf19035fc78a48c1fa0c3023100f934404f6d7834a31a4772ce3a4f7be4888c82b84b2130dd3fdf26b91d008e2289ed9371f25a1a7422b060f08ff0cda90302047c435bb500673065023056b41ca9e56b953d9976c2d97d86cf28be597605fae8b6a0f913311c0e91518981dae467f7b472fb276d6390d7475bd502310098ccc5720543382dc28a045f400f7bf7569888c241ee966606143fb123d539b513935c89cd7fc6dbf3517e4e6d1d77cd0302047c435bb500683066023100a5cf0ba43d8ce4330ff30ffa57a09d9c97041e76384bc85405bfce2854d322078ae310b270cf02b8dd53d26b051320b2023100d816ab9963bb6bc2d35a7e988b76ccae3bb6d23bc047db7c68b3d1ab4df24e08f376234757bb498764b45cc45fa73c070302047c435bb500663064023062e61231ec34d4d9c73ec3eb6881fc9c7a63896b9c170ec6be43448724634841ff4fcf5300027b2d5bfc1e924dd3cefd02305d10615a688959a252562041271b003a1f7690e8e909aea7bfdfdf23041dcab5a7fd4c14d13090cd2270242aa5eb0b120302047c435bb5006730650230773c83195313df703e2d516d11e22214b988a19b25c04f1ec5a909535bc69b12ea7db5b68ff42f477262e3e2035d5430023100b126bc85627ff421a2f8f9f93d801fc2e70f7f63ee96cbff7438e38ddbbd720d793f60a8cdcdec157ad6adc7edc25a590302047c435bb50066306402305fe4ba191e8b998a7a7e8a329d54ef38a0b918f452f63c07dff93e2970e230141960f717453e38496ef48c9d9a558b4a0230557816efa4c584c4f71a3670ef695844c24f5638081bafef6358ae9397a0db8518e1184b3cdbee918943d7baf56f71680302047c435bb5006730650231008fc1b04a78f62d1f08437e301035b8bf10c22e17dfe8b6db654859b70bff7f05299dc0d43ea5b548f84b24a085f3d872023029f3f38351753652fdc0f14c54b60cd5beb6f5f923a80bec73f9a8bc2dc4d22851965755bf3bba43fc1b33b3452dfcc40302047c435bb500673065023100fbcbaa10601bb57aa83e613d3656d9a1d3a978221d04b27a729a65353150f4d183b88de24348a0069749838d0df5156602300a088c44ac4a904463234558bc569577c4b136e5f6025a5fe419bf7c356ec53bcbf527b6449a1d9a0618db1d3fe7c62e0302047c435bb50067306502302e41747a1d9dea2e0543be4607b014d301412d1262e8462601df88466b0046f6aa7afae3d6710168e250b59ff8b013e80231008d62f938c9db2d147ffc5fb10e3d04dd381cae5ea45d1df81661c81dfdb0e20869ae9ceb12011b37e79a1d67c8f6c98a0302047c435bb5006730650230663fcc971e9120605bc151818f7c554b9aa25cf907dbc8d0b14968a1c00f1b5c3a15df33850ae412d766641f8e3b19a8023100db797d9ddbede0faa1a6fd4e3692aba920e2c9cd51c761ed462ea1dabe0ac21eabaee475f5915a94dfb1aaa93b6d9bf00302047c435bb500673065023100b712706ae7079a7535413016f01bade95f83731f818b2e15fb2c89d5a02763c5c05a1c759487e131a7355c1b9b76a44d02305c1b9e60c4bf3896129ec85df0dea8392bcb5292448174b895f8499ac2ebf4164205c8d92e4c29f5ef185bd45cd8fcea0302047c435bb500663064023079d8e2309403fadaee835db760b72cc4a2440860b28ff7f448e9a31105501afa886d2d50e9e223821ab5d89fbf77f2910230618391bd8ee11933be046574f2048f17c725ea521d08e43a909eb9f20ed24d856ed254fdca7e7e633f237d0b19a436b30302047c435bb500673065023071b1be3c491fdce361dea74a6cc1c1e8f971c0308c39d3249cec3a579a736c3c2f58bb3ab957c3cab93510312c8ec3b5023100dfe3fbf700508470d22fcd376802f5dd2476816eef9e5c93bd96de274be3f02734ff1ec9d0e45c326624bcf445ea4f2d0302047c435bb50066306402300dd5a0b90b65c939daa9eb099899724ccdf8581ca2d55f8fff1ea8eeed4f68461464efd3b548237024b25fda4f8fafbe02306c97ad8c269612651edc46d9a9a4ff6e01b074a9f437da684b9e1ee3b3291579d639f01dcb862cfdf59327de4df5546f0302047c435bb500683066023100a1bcb08a3060e072ed8901da8b6beebbff256f91c7665e04a57341b562b12035cbd4576df974ee918dedcb84a6d3d4f5023100e8bfc8d8cf29d14af920c713e35342030dd6983cb93f2cd69ba7ebb099e2aa37e0c40330a670801d3ceaceea6c720f830302047c435bb500673065023075b19ecb48097c1ef9258e9d9ad0c696895fe2c18217a4efdba6f0189f836e0e719aba82f308ba5def2024fc6066a436023100860dd56adda85431780f6c3efda0bc64dd7eb86e90a2386eb595c7f50b1552d0cc3f9462e086b3f7a588d548190652a90302047c435bb500683066023100d8540f023874bd41cf11f8dbf7e4b996d5a28e1a27db3af0d8c6aa4b1ae959b14620ad252836930911967ca035080f6902310089bbc6c7f7f55025481a21ad675e13ab9edd9e5ae6f3eb43f3ea1906a462d9d6b2d10c64f3422b9b922ca92dfdef79b80302047c435bb50066306402305cdf75fc8904fdc54a3a319949e3fbfdf657cf085dcd4bc1f5b494379da90220d5f49635c17ca300a0130e7344926743023066a47dfac4ae3e53c6f3c8db6675bf20b8c57de4d7111cba9de9f5e7b52264191a1857b93eb1d683607a7931fdf8b2760302047c435bb500683066023100c0a539a35953fdde0d276ae33efb0b042356a19a702150ae5873aa7cafd71b3d0efdaf50fa811e278d7431732db823e0023100cae17df0cd928e0b0800bb88684aa07c62997cd35699d10e73e6d41ec2d5ad344dfb1c81919bc3e6bceb925bbff25cc70302047c435bb50066306402302c293e960b451eb125fe3f5da6e10edef1a1d376e3f86dfc7aabcd78978e6828f5d174e38572dc1465c4a35f8cf88e8b02304ba8849704c4214f07ef7ed368086aa0c7516bd98284920fab07a81fccf8e4e1ab15ebd4eaa72bd08c1def00ae6554060302047c435bb5006730650230305ce06b24eb1c6bb85a1ee6d8c2c28398ce73c262f58ad1f4b02491947d796e8e7611762787f5ddc4e4fe5cad5706da0231008d94a7c3e6d2ce999224bb0645aa7ccab82b99f8d9e141023269d123bb8ed74d57eaee75b0215463399ef405aa6784bf0302047c435bb500673065023100af5021af68cc9e1156e60d441bcacc88ac833efbdd2b1deaa024c7a27db5413dd34f3bf07b24d192d80255bf199daeac023031c04fdd5bfe56c8026c6456344eb8b4ded94456d962c91d24cbd575d227f904791a76ad2fbb4daa2b06eac9c5495ce40302047c435bb50066306402304f26a87a160cabfe96d12877b364441df77e2a47af4eaee4ed0eb88e807a6ce3738053a9487f76682bb5d856a3db72030230458d21a8748166b532c58a91bec1343b806cef66726443cfef3dccb32a1d432522fe45d2b52276aeed100c35d1a790040302047c435bb500683066023100d1d24ed11d214485bc88c47621e36bf2dba7772e4b5c057bafc984a44fbb067775f4c1fa64b2894156d0bc7f36ca0bd8023100b5b5a3589f3d6ff0386b98e1e290b98e89cdf95688fc790e514654dbcab44bb483967855a18c7333f4f23de778dda21e0302047c435bb500673065023055dd640063a6c20c1baf7f6b7a1c211e7fafe8b3c7b44b04bb9ec761c5da14df0a4633e2ae989385da370825570d32e20231008f03baee62137886e3bea3ba742b2321ecbb00b44495d83953af5ecf1c0f3e345100db0aab11df8ec6a191e6d7d134f00302047c435bb50067306502304ac40ac747627b3267eb4f887b547000c50827ed9043018622ffa80f9927dc855ab0e723cbb8df31bc2a431fea64b4e8023100932c6e2278cfebcc7ff6dcf847b23dc0cb9db8476c15d950be81bf53473f946d49dd0e4e261202be46d5b827637d895e0302047c435bb5006730650230479285083bde4a575771dc494be2ac5a60a14b3af0cfe1649aa3087264586362e71a78d353a28d71aac67d5a13165bd2023100a8d435253bd99de80d2eed364f6eadf05c2681d0588b7536bf2510416ed92eb37a00744887ca5fea04425f2c995baf0e0302047c435bb500663064023017d650123ef6fdb2bacbeae1552cd272e0d6189d17df4ff320db4f340d9b97b6f61fdc70e28b7bba3e694c9605a9738402306fd1396828e81729c6ce85fe6b44e126ec61fb9c847653cc4480059075a9997adf0b488755406bcef606f56dcbfdeef20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307a21a91c6004159f7c4f05d3ce7f6bb30a31d6e74fd7ae4b4f06a95e393b07628ac7837e8c5636bf859cdee5d23cf91b0230367695113d8bcdaa19391b3c37e77b3b1f69d44ff76a1aa7e835ce50b0d85ef956d78e42297a2aa3bd89c9cf2bf61c6b0302047c435bb500683066023100ba0b37cd48ea4009217e359b5d014524af51ea2e64fcd7431014424465b9e0590a7571bab32e565e17caf79ee00c31ce023100a17e84159813c511485e429b9ceb31cd2d607ac9e8ffc63c90d4850b90fcfc2cc005442158fd2b2b44dbf7fab75e85060302047c435bb5006730650230226cd69fce8643e5c1ea3bb6a5d1dd44c513a4adea8b489428db52e75f620dad818294d5ae5f60ce8a9b2192ad81ed3f023100d60c4ae0ca259a03e565e4bd6c25f2c0136129795b39d1e018228c17aa46ec9f3f1a4b7c1869fe7556284d46c49fdcb10302047c435bb500683066023100b62594202c24c1327e0244c50ecca35b3dfe2088d0078d65a80aff2c10f6032cf9e55b001d19c31b15a5f389c8881c6c023100f510a3dfda40050ae6527eb1eeb3320bb83025f8cb3f741160e1d81bb174a416069c15cd1f918307d38d69e7e7bbe9020302047c435bb50066306402303a6b8efed1586cb9b60331af0e64541ad7a5350bbbee0a9f5648f1395f35aba57f7820c22f91e9e69b1ea9cf0dbdc26302303cddcccf1ce7d6ee2c4d50e133556bef91a0790652a6f17f79cd514895c006383582b2b53d3e4eddbf1936ea343ee1380302047c435bb50068306602310086dc9715afdda171b1c3f468fbff611db9f73e3fb978dbf7d12f8d47503d40370db92fe7ad0d31c5f074ce2cfd6e0307023100d417d1400fb413445b92094c56da69e0d94cf0b142badabf800693918804210f4e2d7266597b62491090978000fb491a0302047c435bb50067306502310080ee4f84b982410a2c38cfbdf295c20c9364f2e0b3c6c63c1eefb865090e96a61d31f88ea1100ade7e409e7e0f7c5b120230172182cac0ec3b8aa0a2fd2613e2a7e87c9340fc436d5c4ce679d2a24c1204c6fe7fe1939228c59a525c93bb9225c0ed0302047c435bb500663064023062265b6784b97c833103f35df02386085f9afd5960620751eb4a258a47fcae4b4ec2772828dcb1ad4b85f4dcb23371200230779226bc97511f2142b09794f2a95349f4ef260a4ff3ee658a71f610f25d4e436c0ae037461077e31c2d5c317d25d6560302047c435bb500663064023032c3d8850a698f059501edb5c1e46744a47410c2963be260f51c49c3651eed0634a0409364cccbcf514cf3d22a1ce01302303121e6d01773dca4559245326c1307098bd9cea59e15217b1d8e3f1413273fe440bd035a58f67f2b69efb23826ba8fec0302047c435bb50066306402305919ab0d2bf31601408c43367e555accc8f6c9972c190aa0f097991d8cdced922411c3c4d8058b43ddc4328a9c6d2f7202301a1bb608a533bccab457b6c9ac8f161ac6dff9c4d0aa3af778ad42541a5f848d67f8eea55bc0a9f85e1e427e1b39a9e60302047c435bb50067306502304be8bfca1c83bb7af5e1542279855b58261d3d3f1c5bc091bf34aae175acb05afca06cdad78d1ee002ecc2216eb827ed02310083b8c35ce2c80c34804f490e7f36bf1cba97a224c0434148c40aefdc705d2ef72c9cc7a2f44ee27e2df779e4b5f429630302047c435bb50066306402301628c0621ed941e621ab0cb1a59417749de7fcd858ca2e0ac957f7c60c830690bfee93f731ba90c825b1caa20428278a02305c505a6d51df866eaafdf4aec3f5d6ad9d28afcac801dbcf673bb4fbfe10bcc166aa6f8444edb91cfd6830cd740ace3c0302047c435bb500683066023100e071c2e51aeb738ebda58b902d27bc58edc1f3917cf8919e15b05d1aec9c2b40403d0e5ddbbd3ae1f6342b20137a5b280231009d47ce39183f1970f825cf9f4b6757a7c5be368e2581a7aee011209d7650d0158d6eaf225e77f064ccabd738bca1ffe50302047c435bb5006630640230351ad1ea38af91f4e4e267d5f12ede3f995f790ae57ae5ff704a53063e50680ee41d8cfd7c9ec963fcfc1f8f9ba7868c023031ce5635ff661c3b7a3e267eb88861422e78af8f0f97a9dc9b2af57393f3d8b36ddada28219df247d0fc6129b78ed92d0302047c435bb500673065023100946b23087c09043884e0c8de05fa3e0c7c5f7770f7d08f4ce7e27033d496b1173d001d2c783d73e535560322d0e6c5af02300b2e2d962c47c7360340fedb196ae777381c51a942fc739fedb1396959f2361f6e5944b39c4b38968d44a311710f04eb0302047c435bb50067306502307ae170b0627343315501f5d41312dedb776ea6615e705a41c0c5c4562245a94e9b38d38ea88bee8dc0599bc0cf0f178b023100e15094bbb4abeef7bf5f5ce5e5827384bc3e4a612b80a21d61dd1fe55c5dc75efc292eb2d668457ca2e7bc0c5b3c61910302047c435bb500673065023100f694ccde38e33f1374a98724355ac0635be9c0ee5310349c6f6de4344129fd51fec607c2e5e23132381e87e6a2df95b40230687e59c2d76caf64ac3b159168e0d55edb0d97cb75805f0fe92da6bbed3f95d2e47f317cfafe6e213c73c2bd840f47500302047c435bb50067306502305078c5771fae0fd59c05a3c05064eb73c6a0c9d85742d5012966ec6dd2e09d7d9bfa7e3a9b25f010bc9c0ba0df461922023100893beaef79e93615f76f5cbbdbe30e97faa4b701c788236ddf9a8b8e3e3b4f1cada1703b3948f42aee76b4d50da333eb0302047c435bb5006830660231009eb9b3b69039e1be5665829c992bf73babad61c51c34970027a74de15a8e407a1285322d0c2bf14ab9e9a86511006cf3023100ac948d7e98e35266eb17f0623d2f473b8694a98824fd9d91cff17fe2b259a7bef3b730817a5953315103ea48f501b06b0302047c435bb500683066023100b6826d79b399449570e54de115e899871632d56de58787e7383fbc3aea065b4ef784793601ab1dd3ea91a7289fb741a0023100eb87eb62e3f6f201af4a5a812fa3325ea9cf0f3b5cc8c0ebf2924cc7c8af6d26bd8ad4e634bae2bd9449ee84670f19770302047c435bb500683066023100e60ac03df9d98e4e0a10ec3df16bb1359e2ffb584f0a365c88f55c87a093a5f3dae075b4dbd4ad434534fd4005e1e752023100e875bed8fc7ad8effb75cfb2e473e97dd3a43561813c0729c96d4690882fb13a20424f3006f53544a68c0f119b74ec010302047c435bb500673065023100a9abe0f319f93a5e6df9f963fb91fba95ff2311288c424035a9a46ddea7573e793a1af56c7b5bf413c042ef730ab9b4202301f5b903b7b6871108b94d81476c62709f50fc87934129256310da50b8b9e58b3fddb29c4af7c100b109f8e09d3bd968d0302047c435bb50067306502306b96b987c2c14c446e0d6f2009d63851242cc302b243c5f17b780d651e7037b0a69005940fe542e38cb23681d8384a3a023100c00c6d2114f7999182e100b542cee228f7c398b83e21a8d86bc0cdeee0777808b587246b6fea06d7dbeadf3f199652460302047c435bb500673065023007804f982c00f036eaa456e42940d7ab668904cb12aee3b98cfab24342c033e9c63c15f7e43d48c24ce12baa8bf30429023100cbc9217fe3eba516e622ec0efd7fb6a3dbc5f8383234f1257491262719ff87f44efc9237a0080dd358e884ef8bc9e3fe0302047c435bb500673065023050c86c10cb320c9474601edbe167a6a8d30e2a5dbc0ece77eeb0b8c4a68a3ac3c18aa7aaf722d0bf8ac123aa1aa29e25023100f5714f7d796930520c3fbfe22480213dd9b961fa51089e4856b3f9fc588922268088b86d5838c30e38040bd279d4de960302047c435bb500673065023011398d6214a87eb668d1e24ff2833d87bd23007e138b5b7498549bdd4f8c3c1b6ecd69c64b3fb84993490a27645d309e023100d46069e3f5a3a1d1aeaeee714a0fe82dcdac10a92446b62f335e69aba43ef817bf7e329a55851a207a7bd86479734d080302047c435bb500683066023100baece4dafa2e526a9028ec1276930b45a86935c620870010a02ceec87380d3b5b4a8e8040569015654fcb4725eb216e3023100950c5db9e74781ed882eb13f682bb9b7069df3319113a3038293fb399906e7a3add8b5bf4ab33fdbc005f06b9a8473640302047c435bb500683066023100e5e55e1c1e81b5446e781cc55924797cde33ed1e992ad55f6bb4d55e633a6b0022d56ff6c21b1bbe7f62b524ffbc5249023100e21d5a2a59a7a2dc8a0a6299cbe3093c1a9c52fa106524236257a123ce1319c879ec789819ef9fb70b1a882afcfc685f0302047c435bb50067306502300f4fa45c0c70b508f833de6f3f051d0d49adca28d1e7e310df32eb0e5386bbdb872e8370a28fc1c2c2b70b45ad97d14302310096b7b4119d5b8362bb526975394447ed02bcc3b17a3b7a5d12500ccbcfd68a4bef333ec12c58f7f222406fdb779fd0e40302047c435bb500683066023100ead5ec0724881031f0579cb9d2ecf41eabf5fa09cb51b4422c8201e981a2d6eb2e2df1a8ae88aeb858b941d41045baf8023100d221b212bd7e2cd59d4ee27922383cd14bdd5784ad13dbdbe6acace9f85a5b585a5fa14365bd33d690c0b9513e20c7c40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f1f735931ffd239b5b9e67f1576575092186281009553a2e0546051e68bd8668a364ebb60cd9650ff89b390bd2418ac302303875cb50dc7d52ef1a8f4dab782f337fb8db969496e18f981a57ce4f3939c1957e373bc4beca8777b197dc002106ce3e0302047c435bb50066306402303c4cd38bf2b4bc0fc128165c78d5fb72b1005b186d74d97df4780d84fc37a1886a89a2a1bf8844c184d66f08cb4746500230356779314f123c4ee193c9300c22ce0578abc65b5177092b2ea814144089995cd5416cf2129ff4f0cbb8231b7fdeca420302047c435bb500683066023100cc5b6e7c6f4a1dba2e090bcb8b99013af037215f1f9e2a71e4d44f2ddea5313f6d8080c02c541b9103733b992a2c0412023100b84420663d47e9d243b45bd21492ecedce802b6274c22ecc4469f9ee9713998b1c3dd00b0e5aed0c4d30b46d4955f8c20302047c435bb500663064023077d9a3b2c354a8a0a1c0cdcb1bf6455d72969d51cfd826fcc7859a21d9faf8c9017fe15c7b76f29f93be08de8ff7842802304f4e3ec8c95e1b6c735c3e27ba96a8af2c03f3b83dfdfdd8a48a6ac66e8bcd18180a86f924a852fc60024f8a2341d91f0302047c435bb500673065023100e9f6f951ac3b41e0d0adaa8502f10ece5ff43676699b0b031975311c69181bc2b615516161e7412f5c2cd75d12f7fade0230662ffc17ef5fd3000a30ed629bfaca5328f9d9865112ee721abc4231962183bb4c15f1c51160d74424c6ea2b21337f400302047c435bb5006630640230659b5ca7fa15e8576da865dd9baae970d69baeb9b638f31b8e49a01d3a28906435ef832ea57076cb268413fb50bd2b9e0230054a8560aa488f81dd080027b85a0e5e971dcbf6d41fc3c205d5e0798e136fad4796385eafb0d2780012e1b65f8c949a0302047c435bb500673065023009abb641a5a531ed3f041efbf92cb50672bc0bd90a25270f52951fe82868394e579988c7f9d20ef0bcf0344f3922190e023100f9a4a765c10561e0c02a8dc6b198484f41a9d39df2aee84c1f21c1c217a1969197565a2016c332a1e0836e2fee15aeb70302047c435bb500673065023100b2000a0cae0e2130e38e42e2e002be2adcf638827353cf727f7187e129f867762079626173cb9e30bcabdc0562313445023047f9816dc2cc552f0472d3076ae3f8bc35c924f8a9a03dce15fb0e1ad07dc838002f0c7bca4ffcc130f35cb555aecc720302047c435bb5006630640230753e30d1a17006388f35966f2176aa8ac9a56edcb3d60666b2f39f2ce5596616ef4b400ce53b842267f01019f886dd6b02301fd35e92110ad839fe34356b8671c41586e938811634643dcbf6fc920a384c6cdf7cd77d7b87f23930f3afc22da2d88a0302047c435bb5006730650230490547fc5f03302e9c6ce35e94a2dccd40b36b36a7d6396ac42e234e4795adffec44791d44ffd9c6f9c86ed1a3f07d47023100c70d98f68f2c255613b1523c2b4871c7c2e3f80be481f1536373f5813ff0041494bfe6ed012092cb7342a28bae86f23a0302047c435bb500683066023100f1d439e8d814e6c56c61d9c2d0a9ac6f9ad255712a5fccfdf3e84d99f252b5ebced4d5f62503ea631e66bad0ab33d981023100e3c6113a9f52a6e7475f0c2eb9863c1980de6c833d94fe9db1a513cc6d6e3bd921fd6a0ca9be3a517595386546d354e10302047c435bb50066306402302164a1d1b23804be6ae5f7e949abd3199570db60c9121c48670b6d0e6a771ab2285f5a76dc394acb700f5b77f3165ead02307de88f6bccc1bee8f81b8d73bd037c4877baa90671c6cbb8536aa67959c9061ef5654d638301c11cb68a8f2dcb6012170302047c435bb50067306502304be02979772cd1c9c2c01839e2e1c182db78d9b7b775c1b06e007ee01a488ce17e87b728a985ee7f45ab0a66e33b32b7023100c835752ce8136f1a4216253b5147de5c4f6fb6346faa5c470c3c11be44a0db37ec7df96ef90664595227bbcbe05f9cb70302047c435bb5006730650230564bdcda990e5ea9182a699c81c2c50f2ae5bc2302bfb527bcabaf0157ba595869b63610c93cb9537800460a88948ef30231008c0865e7286e449bce45d1596afe2d86776f2df27bb0ac77cdc76798d3ab0d9be6e1e6520cee369b9b40148b73dd06970302047c435bb5006830660231009f1fa2768b0fffb208c4937d2e8a0103a59fbb8ec364c096dfc8a31aa340cfc20b13713103da79770dede9d65ce4bf82023100b533e0b46dda5730833a0b6411cce1c1004b86ca9e4a3747740d37942aa2863ac70422652321236a91529923377427a00302047c435bb500673065023100fae6795a5af37c1b2e4f098c1cf144f652e8079274ebfcb704e7d9552f8f8679e45767b0f72aac05c6a093c5f9255eff023040e10a96c992ff2c1e10fbc1791817fd2769b16528261719fbba45da311e000b4b2ad76b0ac27e0e64b520e383be62350302047c435bb5006730650231009316bc1cb25d825982975f7ca1714cbc162d9f6ad95bd76b92e7063dd5246def11c32cb2b77e6e0b020a160af9609c8102307f0c6203157cd959659115668e65bfac1411ed501ea7b325091deb6b27ddcc99c7a4b36a655b08b7ed8f1fd4146db2f80302047c435bb50067306502310098d855b09a2a6eeb21955083a42fa524cacb25e42383935427a7c4d29f7a7dcf124af6795a8c8b80a6a69a081a76e3cd0230744702cd7465864e7cb376a7004dbafad57220e0ab02bbe68c7ce0d5660023eeab0fd14cddfce97cca716e17c75d1ff60302047c435bb500673065023100df5770636bb07846da2064093f16186251d1cdaf75934e45a768cf9ba82a277067a487b6a7ba7a0e45a8192e964997980230733becd22dc3f5b572be0ac7509e218071c7b5c0743681e388864366fd5ae5acf2411cc8fd465b2bccb51180a08c4dbc0302047c435bb500663064023077e918a9d909d8dd6be0feddc707e404a83abfa63969e8c4c8ecbac5d62e5ebd89ee06ce2640e9caabfd02b6abc242f502300c27c23869aa868d8f7d48c5491626f7790991b07c1d74457c848b07b9c131033d37692c00a9e2839fab611392dc732a0302047c435bb50066306402301b8b62fde79709dd4ba3822854a5f135e43c916d599c93b5de93cad2e790626411dbc0110324c89b65751368a6786b550230736ad7b620238da74a779fd82e687a9f6e41208419ecab946eef96be04cf45079879e79c760ccd7238dad8e0265f383f0302047c435bb50066306402304fdf201cd4b15ec1c42d76a122ee29bfb64b2a79da88048ca25ed83c2259ace123b2c10973a1534e6b4af2faf880b44202305b3cb08403f8959c16a53e47492c550529cd3113937beee7df80a4d8bb39915d301b6cefe16b9d9e64d1ea86233d494e0302047c435bb50066306402300f56500a7b8622f2838674fb791a64f336153a4b6dfdb0649da41952d4c8c9469adb8a924ea7a80397add4f55047d5f70230637ba9b5fe23ece41327ada510a08431b25cac71cca3909541004289b7ae434c611c34839685cdca24e48d29faf4eb360302047c435bb500673065023100e59a2f62bf17b56dc9ff422297afac45c7e0f0990d1aa94b59dda8f54d6aae19e8e603ae64287fef3ef4472688f7447d0230231d0ccafa90d658c9c15cef401a1c07e8554318b4c0781cc79cf2814ab0264a645f093b4807d7144b1d983e7465497e0302047c435bb500683066023100c0dd741a0ac4699bb01a02163028bebb70e29214c0e935022a72f8ee039d5bedb866ba5c1e0a8737caf5450531ddd8cb023100d6bc67951fa81016999e2486b5415a0c038c49c1cf74d9f9a996b5c81420f964bb299b1ac605e9230f0f43f4059b54740302047c435bb500673065023100fe51d7a9ac85d98f283335890c6924da77c3e3e7ec6eb57d3f74e15182db6586186e38e890525b1dead5c58a45772df602300c2b7ad349040a591e0aa66dc642c3ec1bf01b19ec6b92b9215fe1118295b8e83abb47484237ddff9cb7ed919cf3b6150302047c435bb5006730650230794b1206f12f88abad4d60f749b57199bc054adb16e0efe1af88667e103b3beadb5516a15e45b8dae50450b917d5ff56023100e5d336de0fae87f9fed219d3e6e298f5a593a22b8fe792e96a646b71123bfa7dcea13961534c874ecedfb608d8b32beb0302047c435bb50066306402307374db7fe179aef711d6c62d7d0c2e1c0554032f8abef403967ed0e3960829ba69e1363f0b10e539f9c24cac6c8ac84202303cf53f2d387ba444d310dd53c18f7cf897129da46c3fba377b01a7198046d52ad65cfceda10f38e0db8df5638ab4bc290302047c435bb500683066023100bbcea33277e8041aa985360c8b1a4b4ae1b51410f650436bd55a8289a3766758cb10beb3911a1218ad82502c9c89a785023100be7ecbc96bdf3e53fe94e1bd8db409d04a34b5f83cfdda3831a6624dec1c578cdba9a6eeddc228c0bd4960d38a4b8ebc0302047c435bb500673065023100ec4e90c0ea0939213d59c50a9bf2d39f9f86662785433ec974e83c973329314f00214166e2af26129e61138a33650c57023068016b46e8c8cb768a08c3131dbf54aeb46af34c3b7c954f40660f6f2e9eb4f5ee49b119c847c950caaa7e8be86ceb1b0302047c435bb50066306402307d3c741e1c676049ae56a6ff4c331bba7c02c567173862f244aa87ee09176f8cc3a5492477bd655097c4793f7821938f023023ebb3022cc5efb170a4f0234282cc0f9f5d3173a6abfdb9cf39e083bee84b510256a935ebbbd6224c00e6a6a74c5c350302047c435bb50067306502304901b477fba18ee06e2d5035712739581aab592c603d84a421135f1133411dc1b61ef5b58aaf8103088815d28b2ea757023100a48d33a4a4e18c2a4f69f7f1c348146fc885a4c701c2bf21521f9c0cbbb28585bb7da2506bd47d079f3ddfb3d1651ec60302047c435bb50066306402306adb136e54e296837c7e0e5abb0cb31ccf8c99e9e0c122e4abea571d3db1f818ee0252992525b1a7e2003f91054107430230489cd50c3c5e29b062ee45f9d7a86e3f39c91ee288ea9cb53cf5a4e0d55747ad55688b6bf35f0799f17a4b7ad206c0230302047c435bb500673065023100bff87b8d2450fa641fb1566a9bdf4ae0a532848e439128ddb5f654d61d8121078fbf2bfd48880dc4caac1cca23dbc95a023042518e8cc59e2314213a908dc8ac4816d15fc9dd3582bcbcb06caeb6eaede0a6a17a2708b5605e5ca09d9829a1af54c20302047c435bb50067306502304fd96c36f06ddbdb71740539ca64f7a79548eeddbaf9ab159d0e86c0fb75bba52dd5aeaac9b7219c5d1d47027248b689023100f9e0e27ee84aecf415e34f68bef6740e411702c05ad486d16ba760a39bbd65ef117643a0c546914f2b6bd7c7fd4a83480302047c435bb500673065023100de64691baf900f76720cd622389d528b87fdf1b7da4b5ae2f34373c606d0f96e371e5e01cb9ab588e1f1685b75384b6802305a6f3d8cc7b2cf4cf3923d3f96c11c425c6f716ed472b4ec164ba3fef14da677a1527ab425bdf230b9a67140376714bd0302047c435bb5006730650230062ce6c7d5cda88c04c7464eb8d7c2e7a2412be81249449f51715159182129797e04d963173d3c8734cabd2efcf21e88023100ee6103ca2dac7804dcefef0a6c9fc0e6c11ac91ae3264427355f825ab6f9e8091625e0e3810ab78c6e4628d3d619a8670302047c435bb50067306502301221a88f7a5e782601b03554600b80bf9b4e91c17a2a00bf255777c44129095db21c5b9cc27679eac76300f3152b8ae2023100d628cb00266a9275418046995722ea578a87d83bf5747da49c38e10df28f7dc54813477a63b81b786ac417568586d2c30302047c435bb50066306402304e16c7fea26336779e23dcc0373225dc5b2ec8bb70f7337ff5e566a8ae81299e378e1cccb318dc465c4a2743d3dfffaf023042d4fa861c618387476cd076dae90d946df3b848602962aa5d8ddbd35282981da5124a25c8c46d1b2ff1d83563925c550302047c435bb50067306502310097e34359715a8769f24a2a3d8db05a3e35fb0f30eb7799af682651fa15da91c118c82cad66dfead78c765865f968a27b023051d43eaad01828f81a84df6f24926bf94972b36abacfb9ba87096cb9238c14ce161c5612268c15f77e6604739e6ed8eb0302047c435bb50066306402306dfcdbba04cc19683cbeff78ea146af76e1a22b62b304a7ee465163acb619ecef9c6d50ec27db56c71429899a3f4d8f0023066236d4fb297e7b53d4f69935de5cc3182d8d83c9927a56e2154405fb78a36860825469eba34e82c8a199a8155332f480302047c435bb50067306502300cd98bfc7df0f5b44c8a6f53f3eca0253bd264927408563671870cda1370b9cc3591948d896903a958344d24ef3b0eba023100df507831dd11037726ffe570a7b4190024eccbacc3f38e488f5c2d5926b59f09c0039d87d6af3b753beb0f74b877b99a0302047c435bb500663064023011ca0eb28ccc114843900788ab7064df63dc4aff6d23c5a023e319c9afcbd96638f47ed27cee26794701eee9076dd071023006c45ea0d6de9deae47782465bb6fdd74a09d721bbc65a63a601f762be9e69ce07c8220661c7cac7b8a1bface1a7a94e0302047c435bb500683066023100db84cd6137838ef1fcc1d959bf65652b138b772705cf1978bc6019e4924dd1277e79c052aac9dc0532dbca22dc521d99023100e8dcd2163afeaf9f95bf92f14a1fba299682b260dadc8f697f4f2103456bfe0953ab90fb7c38261b02ea9ef7646b33bb0302047c435bb50066306402303d90afc56b02504725f2b4e92ac2ebabd361b002391bd33be1272690820e5495d61030cafc9b564a5b2669d628ad314f02301d25c878d66ea6a0dfb31c1affba18d8d64dcb63e60cc9e6b5169ba2b3b11963f685cc2ccbe6cd181f3a888fc71d90c40302047c435bb500673065023100d1978601856e87c1f7b5e0005948a7915294c16a3343ed5de35b78ae870df0a6b661e10b8d8616be7fc537e1aa5ed736023014348807e7a163410519c9bcda50347cb02988f095b49babaa84fa3d94ca1af8ab787989b97ae1d6d8dd986dfe9835420302047c435bb50067306502300bffa7e4a000f626a5cd60361c201d2c0a4f2e83202f36835d1a734ddc55e83c89a53970f8a3f263d0efa7b7eb3c1f56023100d98181920ef547b426d1f3dc9ac4f992b8bb1cb9092332dec01cc0188325b18e6050a4e22904b4943d9c2e45e4bbc3820302047c435bb500673065023100e4dab2fb0ae8cd676d3da891dd3be84c08a72ff71fb878053e3f99e81391dcede696f97ef6c3b78b6143c6b63a692e11023056d431a40ab6c6636b523bd4ee1e5cedff2058c6ab54147a46b0ee38634a36adad1334ccc732738bce85d6306dc650680302047c435bb50066306402305a4641b43d5f2e668be8d749daadbe6fbd6a9d4af308e37e70f477a37200692aa9898a3e74ccbcf128266368a87a822302300c153f5e57d8b097895022155196e402cdb9c9bc6cb3caabdf1bd0e9902db2e30b20f446539445cc827434223d2cbde80302047c435bb50067306502301cf4d6e1c61cfc320a8b9bd30d2e9e0b71f491d5786907eabd48d425abf7c1d429a679a2d4088f143b58be2391b95cda023100b4d5857f04ff5ff677d7325654b9a5237e6b65c452a0ddcad670a1446f713749e144531d2af699501be82118200a3ebf0302047c435bb500673065023100c3aecaa016d6ee58d23b70bf7b693af7d149de3110b9a03ae5a569080150c470c3cd163ccfdc4384d50bf1b3968adc9a0230594fbd73e39491b4439f81df0e7d64d588e5a7287437b780e8bfae685b5a2363178501fe7de2815d4821d282a425b0fd0302047c435bb50066306402301b699d0eb77d2c8295b939e681b94311cad4821104fd129a5abad8550ef316d0757eba56af636a396015ec0caeccdfc40230447812af6822a4ddfe1805f75fd219c1d0eafb60becc45c29119157b07e3eae559095ef0f098e65c29ea234fba0436870302047c435bb50066306402301c4981ff45d2e90cf38a5a4f0397055f219b2c6173b70a42a28f1655b8f05ddaa7c152978083f358e57e566d6d68f26d02302160cc5a93cb4c97b1e578e002f12d34b000af9c20a2b8c94fb2e419aa46511941831d1c9fdd02c529c78fc1ec995a9a0302047c435bb500673065023100fbbed36dadfe96921b38f737194e6ea119b22c9c57968b22904657d3142d6d3c33ed20da8ce8fc08831b091c491300d9023008289e990106249e815d935d890a4e408848c18b164a10990485f39a2f2c9eeac62465dfb3a9145d550342c29f19b4120302047c435bb500673065023100bf22fb8a94fa5099655ea696c01001e16f22798d3f9f5eac9e2d44268ae11da3186dd16eedfc45d3317f2a14996a0811023078b808eadf9f9b5a2fdbfbe1b4afaf464f4dab4bee925764f4bbf336726f07e57896fb578350a38cfb0d7a3ceffc47e10302047c435bb5006630640230264b0a52d50e6836db370636415227eb0fc334bd96d0ce2a04b53fb567f62910f0a02d796836007fbd73729fb530d2ff02300d9b535054c72b5ddebdff40bc4a2bfc8e3557b3f8d8a19c5b5ef6c5a1d7413c02195ebacdd1b5d9e6e0473792be47ef0302047c435bb500683066023100c3df4bca749c2f0be3a88a6e602ffd825d67d4efad8b2654b127c7d26378a702b90bcc0427d336157c768a01c2db68e6023100d73f250b5379f2ff1000079a5d06c4745120f58cd55f85a2da37fb19fe4107fa9102b51e1c6186f8f3c9fcc0cef2cf100302047c435bb50066306402305dba60d2256bc0681fae5f4f172c54d998b07ec6275518a0d68af48a48094944f70ae01c30aaa1951a77428babedab88023053c5c3e7dbaa8802a3c0ffb6899b74c062a651c4669018f86775143f2c0af44584e306eb15850d8fea9db94f5a576b080302047c435bb5006830660231009cd2a595a3cd54f4f2f8855c51fc26d2bdcf1efe07f3eb2473f4d6b63a19f88fe6e762ac165006b383e407ccb0cf137f023100cb64c118ad18c702e4a1a503977b799a4f29d5a54fca907f0d7bb79ed3f380a0a29a9f9715b2fc82ec9c5ba0c81d65bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230777d07e632ddcf01ae2ebadcc4b5f3e701d89bc65e48007a1a32a0d6504583ef39aef82e58dc1220c2958f611378202e023033b6c38e2c46001c84aa26afe8bd1648d6151d8f8dee22e65dceb3fc1564a7d0f7b52b5d0b0a1b292b201e9e3ae419c10302047c435bb50066306402303ff112257e374cd61bb3e526f1257104fd796ff4f4ad71c7764ebd54aef87b46ca915c67a3a2221be7313fe34252d91502307d732c3776354df53c3a3868d68dad24d442a2859beb4c8509bcd54778808d5173a14f30fe877f9a0535a36467d0c2770302047c435bb500673065023100899d795a8f18796caed46ac020bfe8ac768ed363de73b8fc36ece363f1da4f4ac59d802bf1768b7e6d83c925cd0130e20230736849e7e249e415462f3bdd7444a0862b77f135a6a6136be3583de75ef7fec6dda57f1a52cad00c6a37d5ce728eb5de0302047c435bb50066306402300f5009bd8125feccecb92cee8c6151866c98aab35a658f4de967b5937def41cd11df30892be7554f6febf15b0555fe0b023030f6caa5458fff683eb54abb247230681a74e01c3ac5a8ff0a73d9a026b3d5cf9d30200fe1e71b40c30cc0e8b97ec8b30302047c435bb50066306402303c4dcd44b9988feaee9e71d0b8481aa7a64423e52e90e7b82c0a5bdf697cd3996cf4561654b925c3424ca68c0234826802302a7057d1f9752dce94f159b2f4cb13a71c056b0f20c88ff887631a7d8ec98b2d266ed18377b9481f71f58c19f8087d3b0302047c435bb50067306502304a26c314cb6a0d66bd65bf3d12de46408b2c900aa4528f60aaf241333e35fa0022a2da8fd54cc909e42222bdf9fd10df023100cb577f5a3cac11c79c4330f2d377f5d6747cb7ecbadeaaaf83edcd0b1b6a56c294a0cb5aa5196f88c3bcae222e2df2880302047c435bb500673065023100edfa784538034a6fbf0e8cbb75f515338686552593ef9e23a0d2b55092730b2608f3f9753bfda687ccfc8ae919de90c202300e78e4b20487b7ba7a88d35f23ebc52874f162fa558317e3036b95d6e2c287e47e20dc77ef233dcc163932b7946ca2c20302047c435bb5006730650231009d95d57c72c541dcd861b9f74c16c5520ecc766bebc581cfee227ea261d71aad90ff01f3af37af026384b8aa1a9782920230792b5bc70ef7161420bbb861d90361dbb91de0281eebd98881c1d99d7aa77e831012828957cab49302d559af706edda20302047c435bb5006730650231009461b27c81cf966e7b97a607888c6d1254a19a5e25d9eae4bf71369574e3104bcaee66e43fdf1be0b19699ad2e0a0c080230447552714e5290dbe86998721a98f646d36d6e54642f85da02f3c63f35e1e6c350292bb2a80f31a3487bbae49559e7a60302047c435bb500683066023100d909a4c53a7fcee2d4f6fec3b88777beddfde82fefac1e0c50c594aa540502d83c4c7f2139bc0ff5ca40abb8ddbe1be402310081730fde3a928510c95c1de2e77b18f8a4422734872a208b775d8a40c801d42f008737d19981e68a72b007d3441bf8ef0302047c435bb500673065023062e30da3e5f304c19ec0264d5209d3ca1a4a250ee53b30cfeb104c21fbef3686cabb5636d452090ded046be28c6822fe0231008e84bcc6fb25221e41250b3fd085e76913f5561e62e07ba4393d9560cef0b8f5f447965de55d221481d1d7cbed9384b90302047c435bb500673065023072f8282cb54ad69460003ba7c6b2b68e01d4dfdec828e76c5e1c00358089b317e1c24f4b9594b9007e8992366095783a023100daa4235cd1148298a642794b7f7881c966d3ab86d6e9afc6146d4775ad64f22b631683992e2b26376a33843b4b4a95b50302047c435bb500673065023100a8ae533cb1f2f9008f7f9bd9638ca9fdc45289e1e4374068383a50c0c2d605b657bff0d3fad63d0c34748da4e85af29502306009f60ba6a1b14539876fa35fc7109ca08cacc3e3df5b7e6f6f2f06ea679d5d3a3255a0f73cfed2554c0d0330bed4530302047c435bb50067306502300de590f3d378adc828ed4c6dc49ae0708cc7e2068495fc45a527d6eccd6ba29ba9d8b961d67ce8652f89ebb2c783a123023100a649698edeeebe27b97fe3f9bceb0595e979032459e3bb2c3f70dcf7b2d1eab16e9b41c7d2ba87c72c46aa1306f918910302047c435bb500683066023100c0445ba253905fd206f48dd87f41616f4355b679af445c3bfdfa99888f25c4b38dc431f35b01981ad89490bbf4ac1659023100f885bf1ed179e27a5cd7710946749788316b21fd05d6610d7f2247c73b1bf2a9761708fb1abfd6d1b490bd5ffaf9cef30302047c435bb5006730650230338190f6bad7d7aab2f0510b9b0d4261d3d106c82f73ebca206ac6ce038bd259534ccf3200d555b46515418d24cefb2a023100c5a73c81f1cdda866bd5195949cc80edc77bad7e67e7afe9c9d652472ba2a2fe87076c8057f77a5f5677600a76ac5a080302047c435bb50068306602310093718b93519c87b5ccbf29939dd11c8d6f1b5e0874f109755d6a1fc2866ffa6dbdff1ec0bf61f81e5c4345833a9c71e3023100e77d75b2891d5c20aeb08e1eec53d0d9744b193ab46d08409b33cd6b6f3734b3fcfc00a4616f94674315ca374add07200302047c435bb5006730650230390728c85be15cfbaad447314cdb1e0536660114d13a1cd17597dfc434769de30447eaa09524f2d5483b419a8a86a92a0231009782e4a3f3396bf8c0e29deaeaa9e11fe71d5e824376fa4d6f307cc4b40418ee95d2f402e545ccdbb74f452912316df40302047c435bb5006830660231008501a9a48c0f9d75910473c8f40d108543fcd985bb9d94d1fc650730842cf4d3a49b5dd2b2c5e5188c5a5a69b96fa0fa0231009635a27eb46a034c5705c7596cd64d78ed2249d3e5d4cbfaca6b819df19e8170f8b7affe276e75503c43f65d4e3857610302047c435bb500683066023100941e485aee811aad311d2c6d943a702a3e4e6166ed3bad4f67a150dc5a99549432507bcdf9c39835318f5b9132e45974023100b08823055bee91ba85aadc3cbcec43367930cce0a71133f6d1e8b548111a895d3e9ec37bd631cd63741ad1a5a753cdf90302047c435bb50067306502305fa991edc26fb012c1b3c026e3aa53583b9f0752baf9171931768323d45d90e1d09a540bcafd90c9c29917c1d20e5f8f023100e2e1fe4abb6163ae0f29d5e714b48fdcb6c7cd7f727b3dd61b7ae21e793c9471239f0e0be1e18d7d59b7ac49d1c5541d0302047c435bb500683066023100df8448e2ff777859e9fd9aff47063e2edcebde75cd8b77a1cba86892c997761390f38f0f9b90d563ea067293f5b8eb67023100bdcbbaf575642e1f310a47836019b6da201ba101866af32cfb12d69a6df47fffb705647669b1445ea8f94d9a43b7dcae0302047c435bb500673065023100884a808f3c909395a10672aaccb69705ec47c30aca51dd5601192137017be2e9e25cfe04e4f75924622fb948d7726ce0023041a38c9e8c3391402ec9fbb0af16fb43afb17179eb2260f2b11ddc27f2ec96457ee131107993a20849aeb3ecee13d4510302047c435bb50067306502310090985edbba9e8a037cc807149d663bcf04666e40b627f9e3f1bff9c3ee878c26f9ab936fa5316e6546306666885305e702301dc4432d7cb23482e62fa23e250eb044ef1cd96021989ffec9b446e6469643dc6c2c60b76529828cda87bcdd7001193c0302047c435bb500683066023100fdae5081c18dca8b5bdba2007bbd730cf3abd9d1255e45d649c200a5d1b89b6c2f4339ce875ba86e05044d5656a7eb04023100a78468f95c0058082d6ca6e8d53d7291420da158773c1a1c651612b376ed68e5a29aa5dfd93141c4fbb1d6111d2844230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303ded5d86fd914087191a53e641181a99d9fc192d47da0ceab08193a6eba782d21813eaa57051ba4e27509cd5f3dbe57d023048bda3245cf9dc515eff0c749e1c85b76b8a82a79826782f6aefe234441a72c3ea9527b7653ead16bc5a9774c4c649fc0302047c435bb500663064023016aee7b3f1e4af81cc54469acc3ce02b3add150da2e2e23f301f5feb09d2d034c3586a481e2bdf5b88bb29cf521ff36402306b1dff97ac273ae5cf68b225543df70422204a7a4a797343373a9352c06e94a59885c598cf1dc8f40214ac956a255f230302047c435bb500663064023020fea56bead62c54f60c851ae7414a7874d886e275d3c456799ae0848cfb6564b72d5bc59d03e9e3941e8c800166cd800230614b2993462b8df830482398a37c6bac130aec25eddab236d7dc57d4ca2726317bc2234e529db541f5b96be6531b32c30302047c435bb500673065023100ce3ed5fbb22d52943a1d036e2da33dc55f8c029dc25ef2982a8d4b80c2601c8e99668931f1458a29a0df350759e7e6470230026cf4dbb99d52135357ddd788a9b9bcb1d4cc285f827a33ec9cece9d743ea16c7be5f6e2b3e9e48f94b7db7aa2d933f0302047c435bb5006730650230740f1b923cbe42a58170752b1cf1cdc174f42a397e57b72b0f963fb139e0daae006b7baed4bee2beb357f51c443e093102310080beff095c6f0311d9594ddf261797dd1e066e79c46ddd0ce012ec4efa47cebb681e79ae0e1103ae3e14ed87a39166cb0302047c435bb500683066023100b84ee02aeca587013cef62054fb5d50d90df0b3a34208b89ec55f1ef1ccc8d4334591e15736ac8ca92dac5b7d18bbf39023100af39826ca90f68b76055b4a44bb36a3caf39d8d8825d301710be3daa1fd1caea13b3bbae6d893bc9d6357e22d26a06110302047c435bb500673065023100bd7be101c41301a34fa76f34c5e6acb7d17b990d7f20b8e2776123478f7e586b45d067aaaa676b1484fab81a710139190230397f64db224af187f8cea4cc52d24eeaff0e1034ef9333832ccf88b714e8fa491f433b3d2d95a0c1e8bac2b5075434b10302047c435bb50066306402301dcf467399975d630b52a22c522346c438af0cf116c2320621cdb22fbd5f70c6fc8a11b452e130e743043d8819f12fd602301a02c18c6814b9c18ccfdd42259166ca691bc47e97a08b1a37589e7a86e0e8322a1c4b4930165543ae84fe1ab8fc15730302047c435bb500673065023100e2023815102da1d9c667964900eb5db0e842c7de3e82f4685876ec4710da1f08c0bcb5b3018c12a90d39fc478f207f840230190b1946218070b0e84e60e462d1ce1831e2d89e32192e5125ce378ffb7226276f632a0644a93a3b40cbdc11858d6e1e0302047c435bb50068306602310082ee2cec283a0d2619b2123de6c9439abf83d7ccf219db5476d7bec4acef711d4584a2eed97f17212a6d31d6ae4eff26023100dd7451d258613948879dc3f3d22731eb2790684cb0064d989d621996e0360c8f0fdde562db71f003f4ebea1fc748f41b0302047c435bb500673065023042280bf28605bc60cef3a1c464860a2ef57ea33973fb3a1ed48752180cf38e092e3b9be0f6a23d69257f8eb57274c836023100eee53f365f33bf010a45fa0918d03ce5913b41effb1d3de78cd12a414833515da0829c42c02055f2fdd883d5ed3483bd0302047c435bb500673065023100eff8c77c8c7450407c362cd4786eb41618e123a04bd9e540e33ce75d86439689b85d134c91021327caeb7b0b95ef61dc02306798da799a2afbdd1d471c80dc6c703674bffd8c59d7cf7fdf84e95c05621429566b535bb17614084ffcbb4df490d2a00302047c435bb500673065023100c755793c5c38fec06f711f2598929e36bff7399f16ed0d65df5d2a71cbda1f34e44508a7da2882df30be7cad1b8614ad023068615fcbb08f5e4fca9bee4b43b7e956dd922f9a1ed7a325f77164952154abb99d288afab53f3858daa50e5676e5a52d0302047c435bb500673065023100fd9a40ec5ac51118800cad2c257120642544a3d30cde5d14f51c7435bf2c4e1314335b6d46c7a3e52d9a75cdc85dc49d0230158b9a8759d5653ca962d2073a59c39b8690215ff2fa65e4bd1400459b8ad256d79aaa88168c49868107a4dbc022e4a20302047c435bb50067306502305eede243e68dbbb63e7aa98ee2e1e66e553544fe773e1ce83656f64e318be735724354b7901d1d091b23269d9e7d456d023100eb3fd27a3caa1cfa1b8b2275bb911ec56b1f00ce91ccdbb7db8ad38968a62f2f41091ed08862013286132273fbd182da0302047c435bb500673065023100ffc13717592939b0b7fd00d8eb806c7f162ac3708d8bcb3fc69e3c90dfeec2ea5a1599ee2188cd34ea6b92f8fefb69d402307eb2829fba4f1472ae2e5a26cb7eb87971f07a8ee101bbbb55c7aa5c237d2d7312e963d090e5fd0d64372b899c1f6a1b0302047c435bb500673065023100ed554bbe636421eaf99bb29c2139ea98a94b3cb7a16aef19e17e12132cae1d7a378f07ab132c1265ecd9949c5095e8bc0230756ddfd432be755a5e2f92f46f3075015310e2e56c013111d0e61a505fd283680dd9f130c830cffaf00d3e62da90d1cf0302047c435bb500673065023030cd7bee6a2cb1e614a697cbac1136256845c226ed05528adaccac24fa7feb051d30680e67e3000844507d4b8fccc37e023100fd72ebd64c85dd45de7e122d7defb00ea6c00cc3b029e5b59d4601b1e474f809332fe27a9497114326ac82551c26373e0302047c435bb50067306502303a9066e05522426d48dffc8676c82bcc180314317ff533de94fce5b7ad42277d77e9a562a66f582583483c2cf29f83790231008aae0c65fbd109e2cab71de0a9269d52ed8aad49ac09f079d622a1d8bb429195d3ad69bc923edee5c8fa9e3820d6afc10302047c435bb500683066023100d2ea1bc6402312ed71cf9e138ee2917873c82d8b71f5fd3627107dab408224d082038a573ca3f10edfb9f999b1c5b55d023100bc3fd494296f54434cbf4a4614bd6f5934e0f837199a9a9d44c9ab48c75afb77e7b57efb373a0f987101918e0df97f8b0302047c435bb5006630640230094698c8d7dd3b7a75508127d22a6c4783ffbbe2c922f7714cd327551087e43632da1450e3b27073455e4f0f857b1c1c0230290e966ec4c64f9431cf06e8f025204c1a390dd9f65220d711dfad7da7030d1443025dfe4bb5eacc242ca6ce89f2c66d0302047c435bb500683066023100dfc53ef71f227dc1682e83f882ae45598ad3e232fcf09757ee31a5d30a3710bbbd6386d53b81dcf246bdc937cf1aca65023100b789b162944c8bc118538c924d9b42d4f657f8aa9c23d94c300e4edea61c3e61d97e26520ce4f0d18291623a30b110290302047c435bb500673065023049e5e1ac8eb032846561ff9ef34733fb873714f0ae897f27e9661711618ed169cd94c89b82ece455fd351268c197912d023100a2fcc1c5231309d2fe74e2d096c663a9954edfec39ca18db2d3759ce9b1eb0b2f478e56d4b46aa23fa8ab21a4a7961af0302047c435bb500683066023100a0052965d9645eeb94d60030dde8cc7975a80f3c4cd3f2ba424285dd33c708a60a4a67bac1d46999f91edc81a87870730231009a69eb6532882e4081055cebb38b06b047bafcff0ee7cb130ac3ba8da95d0a2879f6255bbdf896119cac617e5a68d8ae0302047c435bb50067306502306bf7b239883e6a5c53979815adc1aaedb621d53787fc9915ea8c9127ea37091897c5f5c0e4793627d1c769293d54afcb02310091ab5a293cdcf543920c7a9a54aeb8ee0ad93db48627085c7bdecdb5a4ca5b8814005801d4b29be4a8fcd1aeb5041a880302047c435bb500673065023100885f3b31dfd1b696a3c3be2dab63c3e64b57b2c7614eb29b9ea95bd6ff1d450d1dd09b5655775f7cbd5e32e6c6859d0a02302dece5efdd1685e5c9902325cbe37d93e11009656e4b4293c75506e7aa624036a4c3d81128405b7937179a06dfe4af8a0302047c435bb500673065023100ce69cd611c5d5c792cfbdc7c92194a71cae513083f26a0e69272235c66eae1831c669780f38b17b6a546a9d0d925d69002301c3b139c1f62f31df23a5deb542f291e4650740963e95205f4c4c9d31cb3dfbbd7278b995fcff77ad3c07bb5f2af04940302047c435bb5006730650230198049f7e2c145b7f26a88323f51e42070882214e2855ab2b79c8d956ee4b0ed40ec74a9a6ef6fbbdca7912786ee031f023100cf0f03843a03377fca3a925bad06c1f5986c758059b3f5e7eb7594994a2adebdf6711f5c4e5a4051ebb9ec109df1986d0302047c435bb50067306502304260efeb16da13430b1df4ea552b622de1e8c0db61e8a5c24bcc17ed64b5b9aa620b0cb24ce5547b92c10e6690914dfb023100b161b473800e4efa569db4909f2874542edfe29a5e252a5be6a3602fece2aa1fff8a3902a580a08c52acda7b7601804d0302047c435bb50066306402302c49602dcb3c09b90e9c7fbf00483b45da85e68ab550fb0f834a7da4b706161574d9e8c2c3d15e522c96a149834c302802306c3d1421c42b20b7617d149654526ea31cee2a5452a47517ad66459539cbd57a061916f734563f2f47cbe89b54d93b610302047c435bb5006730650231008423dc10fa9d7f43a5a9b9258391626c3a36a3ca7ca6572d6bd73728e4f38c232231b604c4150be49ac49a880ec387c6023054acc8f1242ed30df25271c0b00c11eda2d6cf3edbc7be4fbc112b01816f75714bcce8c0cdee8353e211ce1cc3cbc7700302047c435bb50067306502307f014b01bcf1f4c223f905ba34d92c764812b465a946021eecfc078734cff432fa7a6b4457e048b8e98de88f7634a073023100b9117aa53f4b6b9fad244669c5330aff54900f610156ba2901de478dac9c0cb693d08cedcae4676a7ba8701a4231e4de0302047c435bb50067306502304b9e290fd6f730a6365b2167095e70ad379ab6c52fdb7699cb8dda9f95dfab3cafb6b3a1cc8098de3fcfd11dbba06ed3023100edab6eb920aaa316cd73f29dd180a11f389d821956496c0172c3ba7631febfefbc99a785bd2453f72a0d7782c723b9d00302047c435bb5006630640230145cf7be7df5f0112cb497ff2cbf72b33177945974ff2838130fe05194b3f7dabad359e88221d515f46fdf258d9248f202302d7760a3622d2b92d94a6e9d1e4fc78553a5e2082993a3c544e5db5b338b87a6973dc772bf9c63f44e733cfd0d17ff310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230634d670275fe307c40bfe7f0a340c824afb0e3a74b83cf409702bc1d6511f8894abb21e6717fa2b7c8058acd69c485930230279b0d30f600d45a41837488981d2339e24361d7ca0d5250e8306747673b72d100d37ff1c5746c268d8b3a817898ab580302047c435bb500683066023100a4a91ba7bd4465694b75a4b4a1c5043bc04951e52ba03f0b47ad4a4b49da617cf7b73cb9519913b872f83e2b80a9aa64023100901c719800c01f9b91d34a11bb0226d1c9bdcb81159ff2c2f653a6ae039dc7dc1a25b67b09dc9104d511c48eff015c380302047c435bb50067306502306bdfbd778cb1b80e9aab2638d6c512b35e4085207f453161ab45ac4942cfd1b1fcd58cb5395b197ce61e186eb5b32e270231008b94a3801903bfaf2457b96310f24bf2eb8cf0a9a71757757a32667810763727587e436b038caef9bf9deaf5f298d7e00302047c435bb500673065023044c4ba8a07cf37869a146b37ec2e5c7d2873dc9d76724a2ed456dcdbe9e1e4e3f6c270bdbc5f94830304ed55c239b5d3023100cfa06f4597889acc22c4883fb323e500746582acfafb06483718371358bd67089c93da4ce661e07479a1d7afbf0eefc00302047c435bb50066306402302a8ac31d34ad2d5c33ea7552e19a02d84a60c512a7ecddb1804309974d19ecb7035482b47b897a0bc0db5ef1e7cbddac023074525e8548570c3b6ab47e4343b5e723d02ea5161a9f6504269ecfc254fda3637920e95af7765b0d5ba66e96466c7cc50302047c435bb500673065023100e2fe17b59217857d12854fe3868f967f3d342336f3731f6d7f6b6eb46d20fd4c2c1b742d67294a808ab87837f789c86a02306bb8a443ae40db0a7a620f909a7a3897cbdb8538593f286ea27640790a29f8d835acbf7bb71b8fc329d2501ab29511000302047c435bb500673065023036a3f4f74cab57316eb80d127b75105a6ea004bf01592f716257580d522844c79acfacf6e92d543ef8f5f80074fc4f98023100815fcf624f7c9136520abdffab30d7aaaad93238d0de4ac2366f1b8f0610d97aa6f5a1e5d6e456aded6d49cd31cb0afd0302047c435bb500673065023100a4bab99f5b7b78d523a4f73b311b1aba605d72537caaae5c8fcb78e1b1dc6ec1f68db6f3ffd876dc4682087da549744502303e02564ca07ff5bff818b1e38b7b1eca06907ea0b89037509feb5c9a73a4909503a538530228d87f850328b0ceeb1f270302047c435bb50066306402303d0c04da8145129a44388a98f06098db148c9ff006485f3b9cd93b3d39cb2fc44bb56eea80d4b4abb8fc7b4a79c1c523023033954dabde15e821a58ba69ae034a826a696069a5b577a5984b531f45800b19cbda6e9df41b5875f3168db81764f9c560302047c435bb50067306502303cc20480c5ac97b2aefe886e438452e6d8a065c540db36ab04f5be40f8401b254de8c74c61aa713e94ec1d56dcd7d3e4023100de14f5c20206f20029325d1891ae0a4ef69ba0edd6f94639e3134c820264b13dbd99004ca5c9499b3cee110121a737b20302047c435bb50066306402302697c4a430d44eb7db6c3c90c703c5cf9f21825bc006dddc6f2edcaed5ce4385ab29546a9dcc87ac268eaf1aed25a6ee023068a4f32a493ac8ece0777010c8615881a509b52381993f21831dfd9ae9c1fea934d922d069f431da7cd2d523a4eeee140302047c435bb50067306502300909d5b18bedd84298a69ba9f3d90561beb3e2ea52eab985b1e8719a7590fc28549bc6ba4348bedab3aecf5589c494cb0231009a3eac9fde645a411fa2032875fa2d5e2c244ee3e5e651c5aaeefdbfaf25091c790c595b24cd05cb579da23a7ceda4a40302047c435bb500663064023057c618b6a27c6e29115bd5d2480a573a523bec9cd66bf791f413eac602e3fd4007c1299a837886ba187ddac0b31d4dc602300ba405aae70901f672d5fff2f6fedbb032cf86034108174e2c51583d695b2b8ec938802c774eb41d3f02be14e66945100302047c435bb500673065023100b8e842881d8b0bcea0a2d020972145e9c58eec000e6724581e7ffcb830accf15e0e00bc3d15fe0f1a430e72154ec66b5023049dae422c60225959cf703f001a343bd3189c0a26cc3c06b427086a4ab3380f3233c2cabf9561290316484d6c09484be0302047c435bb500673065023066df3884b3692048b528fbc4eb9fbc86e7eb0ddc2a85b50a449bfff2d068ca7817ae6f74fe301703cfb6b11f9a88eca1023100b5055867396db9c4ec002b3b3431aac7f03a7c0927fbab7c1f9bbef567b169130228bd45f001e09dff2117985e03955e0302047c435bb50067306502304c532b03fe05a306bee31359cc70c8fe8f40c8d3ca4d527933d362933aa2fe04559e13ffe660ed87d972a5e79a42afaf0231008e6b2ccd37e18e99c1fb9c3801e28450483002c9c8a62ac582aa23e099fdb459ca1c3f8a8d0c101338b5a886deb9d6780302047c435bb500673065023100acdd6419296597c35a38d935c9ad87e0847b32810fa77a48511d8fb6598e22494ffe116cba0de2f8509dd1ff100f63890230108b149054bca78f9418e905bf7c3108e2ccf873139ae12ed5c9f20deac3b8f50e2a247cb9c330ad1575c605af8eed800302047c435bb50066306402304d32be29f81f8b013880491107dcfa0957b46e6b3740c5a58282b76880a9b27d5545f33a42aedcbba8a63313df05e16702305b65450d7a5faa3425a2472831908810eace109ac53e077712549de72a52db47b716d8d4fbd4b025db5c9c0542addd350302047c435bb5006730650231009f8126f019da86244ab9189a512a3284643a4288304959aa2999e816fed9b798ece3155aed422bf758981ca3121d547d023065a2990ab5c0d3bf9131d334379f525566980a79175ee3b2317e1607fc7668c1684fc8873239fdda24fe6901935d455b0302047c435bb500683066023100922cc37ca8ea2d73b9cc50a869a35f2c6d45b7f57cda390dfedbfe677673b4388bb5fb581dae15cee6b7aa61afd22510023100e125a3a06209890a26b0ea9691715b95d03c7f4546bcbe07884e0471e0a4cec54c68e188f7e4b5e6c096dd14b6026ec10302047c435bb500683066023100a87b11674e3c5d357963e47e41f48d13c1101d3f8c3332fb93259a69b9ec4c7657ede85e467140ae137cee530b38d827023100d4b1aa29a618a67ff8810dd8fb365e4e66ee14498e5c10aae826bee68b15b23c53b55383db6d1633475229a0effd78dd0302047c435bb500673065023100c5f2f23a9779ede5577fac59a0472b3997dba8a2574c4eddfdd0160c8eefdd97b6bd42ea6fc8d6c40e8d445618b9083102303d8eb22e3d5d549506317464dbbd191de476edfe6ca216c7b0f6e93c0fe3b76ee2dd95963ffa97dbfef2a11c156c3a8d0302047c435bb500663064023032265e0f4fffeb8cc4da515c35997b3d08ba8cdd6c49f3067c0d21be1a45fca9e13c02d761aee1900045baa48cd3399d02305f668ca428b40f8c1a4a12378d980d785e29f67996b827c653c1fb2976576d96c6f158d5ede8dedad4c9f3aa2d4abbdb0302047c435bb500673065023100ccdb7a79a5191a273caa9c591f6db2acd925863e2e9c7ee52dc2918c4d00e88b067a7512773c9590330ad29151078562023037dca39be093d17197a90dda920b41b917e07db4c4fec79a0ebaf9d0e5a12195b8c0d6dae3560f90e57b1b3045f73e420302047c435bb500663064023057f5a12f0920708907860b0764e0951e5f1289efb7933f3f2ebc3d6548f83f511a1e5d760751183db7539b5209eed1bf023031798664152e20f8f7da76e751c79c4765d4a4d212f4842b923d0749647feeea51fbca37999c2925da2d8d6e47a33a100302047c435bb500683066023100971d9a934cf5751dbfd6148c0430e1f070732e882584db9ac30300a7a475f6da25144079c435fd8acf85ba2756eb8865023100af2c630dca47d55e803908996697d732f223d526708fb7f738f51ebbe43666c011d493f6a5c0af01ab4a10f8653684ea0302047c435bb50066306402301eb35f5c3e537f16c6bba12706fa6d417b261ac22a0b53ddd53f44e5ca1ea05b06e6330939777a8e1a61f10f08853e5e023049c5f845be5fba94353fb36290b86a8c3580769a369972e1e2759dbcf21814417357f0ad405d1221d8c382ef45cc63eb0302047c435bb500673065023100f37dda85f2b0a347f18a76b6b285ea6d5b3b30052737d8825b7f3f195dd3a89c87f56864625bf0b963353190762b94790230533e6c21a03e2ec6bafa2ee6498966663d76e25b0da5a1cefd194811e01388fdc7b97bf663d58955647d84c9dadb8e1b0302047c435bb500663064023040968e34f31dd655212863719108e2772731e64f4fba9858a5ab45e4c9cdd4d8d1a8122370263c3d005dd6cb1896b42e023072e6a5685374a96c5989c573d07c5b90276e99a4cbe02cd94fc87748091cfc0005b075ae4272c9e3a47dccadb2a1f0870302047c435bb5006630640230047198caaaa6491c51aab1a6798a0d5e64042d40f07ea82f9fae318c2677c040989e587141a14c44e5ca63653fcee06d02305a282f54ff8329dcd3b56bd04504fddca81e3c80319e396a0635dedbb34fd63d1c3877f0ab5154e1d3a15e8d5665281c0302047c435bb500673065023100a53f7277eb206e93962ddc0958a3e8aba8046cd56ee86c1fbe33bc07a296093ff89ebf274dae14e4151b8bdf7c9d2e86023068e6ef16af5d6c91acfe3d83c79325853a643838a6bb2b0609ddd08a104a4c2ed2c660b44674725326a1e953b6d8411c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302657de0c05e40e5b2a237e3d909da581aafbc0ffc4e562c9e5cbeb81cf5ce1295c9b4314ee67a834566f424f69fe4706023100e6095096ea53c659906337d9c5f1e781f4724900f659bdd1a7425315a19bef5ba26c5d0f40ef9f021f405a3d1ff5025c0302047c435bb5006830660231009af9e4128d7460cc339dc7ab39f66bd11f39a1cc0106b849cc78b6090a79758ce3b7426333265b364fc430732f25678e0231008669eb629241a9058cde3b83d8d2467e8ddc51424efe0d9be9d55a964ee4372d516409eeb5f191be4592d9ff82329f060302047c435bb500673065023100b086f7d5b898b4cfa7365f4ac278cb982c616e18f6c88c1fc52786f6b1d52dfa15635660e310bdc5ec0b38521bed75e202307cd39b956f95db184c74643e216cbed2d6123259013c02b0c4e5fd5c0328cb521fd55cd55c4268082ddbc46c8a4b79360302047c435bb500673065023100d09894b7b48d2447b06ac31a76fe6114cb5d20a29649b1182ff244927e862aace8471fd1c3910470277666ba91f857a302300e2b4b89b18afacee5e02dda78b655191800809784cce7599c09523a6982ab4cb298c264ca1793afb9f79baeefbb69330302047c435bb500673065023100804d29aeb7f13cf493833ae4f12d6c50375be9cf4be16833e6e9b94e2d23b3a954bd30a17c096660698c60e0fbb4d3c702306e551a0b89f71ebfebf37bff5a169be8967a4c453a51acfaec2e1b7ee74fd9007a18a6404359948182f00f15dd6b3a450302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301e3041e1168fa7eae01e617de76408049165b037ad0bb880a8d8a3e6fa9f360ea7c44c29a5863fbdeb1be27e8b39ef38023100dd69341e1bab087b0b52f4ace8d97dea7b1ad6db20fa80cb1b6f2ddf496dbc69f193aec7054b0cad38ce15541260ef130302047c435bb500683066023100b8843a16862ea894284eb64553f6ebd6d03bf16c40d6df76674142ceceb23c6514a318ea8c16e827be81020d1206fe1e023100b1894888e5d4930ded99fd5680829ee5873692d1a2060b7cee084901f1afc751df83bc17dbf44ee2f29a79eb59814fc70302047c435bb50066306402303c8ec3b450b39a4b99b12f3e9bb608a5ab80304e7284fb0c18219795589931d3ff4a517c273c44138c1217d8a688325e023068f8a4e264233b1239f319ce54bc876283232d943ad9fcf5ad5d2f9149bf6cee7f0b75a6bb01bb3abd4692d4d3fb50040302047c435bb50067306502301db4b665434fde61c94e6efa98eedd0d482b12c1ea89368282e41b9239611e34f910728db41dff2118364a86de8d976e023100b07660ebf98f4b325cbcc406d60ab707c7bc3b2b0631f1a5deeccc1122334c515ce9b3366564514b9931b54de8d58b5a0302047c435bb50067306502300932d524d2512157d52589c8dd889a80eb8818cb37a5d04eae59febc89892629d0ced6ea06d44ac0085851e209c415f0023100dfc75e88829f55e7d14c036d4ee91333d89abcc2cadfbafab6912a7276c42763422a84750d0e73b7ae92247ded0c8d8b0302047c435bb5006730650231009623c09166a938be8a0001f1d92abd95716d305b59207c85042ab2ac19c0d5fbd42c90e0dd0cb4cf447e15cb0535aca50230523010f5f731f8794c1ec1dc7b8356e6276dadf790f719b4792798de9edbcb99d1bc3f22c9f28e95bbad2e706d318f820302047c435bb500683066023100fa60714da1ab4a83b3927587c1d0513ea97c6827885bd85732e559c8bc86825ebe5a7524c394861fcea7ed36f21ad9e402310090530b7273b3977e9ad35a700d5cc163867d97f0f342d797a622cd451b73157db703e48ff94090cc139dcf54e64185cd0302047c435bb50068306602310095d6c17f8e0e2faaa956922092d5a5d592546b87997dcb4a5010c0a16be6243c05b9a515f2aa3f39be6c0d2a88d8cfb9023100b37349eb6257f9c12b179d4f97c3bd66666ef2add0269e59f10decb5d42bf7f196dd3d5da8ee9ca3d23e4428c76f7f1e0302047c435bb500663064023074fa8a2a177739ee6114d96d9c247bbedb65a33da816215f5935fe63a07e13cc5498571cedc91fab45e150ea8c031427023056ab7e155b1c6d991a07b570d6465e75c42f736367844b20aeb9698048413187185dad4bace5f917ca3ec99b780d81740302047c435bb500673065023100e483b43b6dda12f1eada4de829de55b278352a6c34920a12b83d9af9cf9050fc06fe51be98bf20e046e06c14b7498b3c0230478010891ed00b2c77d5b7d3e3e852d831735dad2df5df9460dc927663e56d36a464c2970a9a37051cdcd1dd2839589a0302047c435bb500663064022f69cc16d50ca4e2db10225f9eb1f5bd423f6e5eda2620b2e8933965e5bf07d2c648eb8ba868f12640c6811d23f5a2cf023100da75b6588a518ceecedc807f122cda6958d90c80a48a291e5ed074fbced0cb89087b3a4a91da74bad333fede17574e0d0302047c435bb50068306602310090843905f4de80451e02479609d157e71f74e59a7f86babad4e7144893f2b397b9f53c3b189227d46504c42f196da8e7023100baf10a588aa247fd126ae5a18bf767162a00c2ae1fd5ec1ead29502efb6c2f73f4833de011f2f9451ad0e37d798688030302047c435bb50067306502310099d6994784fe907d6b3af9507ffb10d01885e423792e299d5eb75c18234585adc9973a8225318f445ec0367b445521d70230504548f4a70116ec1d781b9ef4f382997e3f01ec6c940742dfc3f753b6c7a8af1c116fd5eb5dab9b53d24ed5db666e000302047c435bb50066306402305889168efaab40a269dfb07c7a7b6be379ec724cb880b103de7ee0f752d0c092394b49431db724243bc92de74e620dfe023014c1723cfe3cc11df3ce2d70ff875a492a66e381851d40495d6dedc3dad09c9c6df5ef722bb83332e8be092fc91fdb360302047c435bb5006730650231009c21637192186a74ea73c838935cc79655cbf00e30bbde3c491eb50f76928ed6066d65ae5aa3c91261b5d1d783d89d58023051c02b6d83626dc6f9946c57774629e87af578246771b087d51a913dc70519608cb200e96720a970917de7bcb46d2b2f0302047c435bb50067306502300ea6ac7441fc9a0a650b3d60872542daf77578e3b7edb8b9ff3d377de5d9caa3f88379354c3b5a9b4c264453f312d782023100f5ee682f5c5f000baaf494b52cd3316c2b26a50f27fa62ea467a3c50d943159ad5da926c8f98acd7e345d0d5f24777f90302047c435bb50067306502305a78696589292646d2689094c539cdc17c1adbbb921c50863b16d2bffa52fb355e9eb1276a3e51f7ffea18e2f1c49ab4023100905733feb884af3734163be99c1766882e372730a957f4c1aaedaef86072c773f079544035ce756df2c06c8983f560c40302047c435bb50066306402303f172f41172a8fbf9c17ddbaa79d54ffb156c25bca7d431692aa9cec9880be451e9e8ce3aa90f2c756a7b0c3a7f5a65102301db475b90a999f9ca0b21f4be2801ff770b6e6da98af5a15adf30bc93d3e8e127c7a843a3847c229d4cd1bda3d405c000302047c435bb5006730650231009797655e292ea77996c602394bd494bbcf8cf28eacc1e689d72eddd4ca95454a2503f8541af3ee92ab091f2000356e470230102f001052895063d5dfb0fdb55d8fa207442ba7620eceb0c4814724024cdca2f8f8032af6dffb94061c57a0a7b9f8b10302047c435bb500673065023040218a12a789e50254479622daaf2be13a95267c7b37f7bb4a3cf370748e8cf6e96289a6e847713d446a5e8eea76a08a023100e9fb4e79ab3120a9c226a94d9c4fb4ece71b98de192c35036c0fb262a3539e4963de7f6f4780e57e050cc669b4687b460302047c435bb500673065023100fa13039ae616b9020e372940a3a8d1c2639423fd962161c5c95f48ddaa8324e8a086d8691a8d42f89a203e4a7be17f5102304ee9a576a3837522b03e9e8f33b125ad04c6f8484d93141176228a5363e35927bb4ce4bc3384626a309a9917d82bb05d0302047c435bb50067306502310098653826df0f0b8b8e8a537c9b2c1be513eb182f9eb39a1440eaa53cf08b3f311253fbfbb5c766bfaa68fa71f43eead702304faf67966f55f3ea19e96ab5c15cd15c668b7cdcdd192e33980acbd53d13ab64efe1ef1081a501c02fcb993a95ef260a0302047c435bb5006730650231008d79d5d1459eeb2220770894e203c5e8717162bf764a7f8c40497b3c957ad5a460c258b30673d049c6c82da8e4be1081023003e5a3f983342fd83e0642f95ee29474be0877b8895c5ebaf0ddf5908599bb735e722838203eb0cfcd2c46b222af856b0302047c435bb500683066023100e7e7af4eaa11e9e17bd6cfe828433e3a73155224bc9b60d53cef1938e16a434707e2e0c97012295d2cb64aaa0d4570f9023100f7ad30b72fbec5da5c24be88adbfcbfb8a1ef43bac80c34b68fd47b047d9f48e57478bb0640f20beb761232fee694ec00302047c435bb500683066023100db95f85aaf262438ee5e8a83522afb01c45baafa2b3ac8889834f9f43c33a2005b6461fb965af08c38402ef0b8a48a92023100a0b488dc248185a28a5c6c7638029f17770df9cec7664d817f86630f544a9fd3e55b255ffcc4286b03517e6a82a837b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310096db20e52d6bf3dd496a22013ab821bd77c3019c4a75afaab41551a504f2744328a024b95e26724a37051d45a41135dd0230271ecd6a9025b5914f94dfc6c1863694e27dbc1a030618a21d5efd3e1e0cfdc3ae3be52b0a7a90d43b3f892c6f556c520302047c435bb500673065023100a277f2f6c89edcdb00b62c7a62cfa1aee973af85af5934a9baaff9682db1406de61337cd0f8f0bdd84378caaf66fc230023051065e3fe42e746d36dbfc8bd6fc553a0cebfe59b252d7eb23b310c10d0d436bbed4b20f1912c02db2c3f19ec154cf530302047c435bb500673065023100caab0c6e3a127586d7cfc478d298b99cbf6b52152c054facd99545664828767ce2f628f34378b03f5ec95d2f904147e102304894d3529614aca967fb4b1512d389d1f04a1ecda1bee05055f3722d0a6992e625da1896d96b8c2816721759afe86f6a0302047c435bb50068306602310095db599b10dc4b42428fe208f24b442b6566502502c4d68e1b691413177e5f1db63ad3268f76c725031bc7dfebb445e9023100a27c03203d6b69bbff513c01490b79f40621f7dd9262d68c01ddd2f899b7947b29834656dc95a9c0f3840b256e98185d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a1859fcb2fa441172469dc6f406aab60821151b16781173b0bf517d6a4e464135515090876ef9ff6103157f542164be6023050207569f7d38ebd77864af824cf203b750382505966db10a838d5981aaab66d886d4c0daa254482eeaac54e24151c450302047c435bb500683066023100d2cd049e1586dcd468b33a3286e3668e2383416194ffe6c865bf05d96d0c16b247d4c8b8b42ba6708e8da551250c0f850231008f9e3b0bb4edd7bf1f26774ad0d1d7777ab30336c32541d7a41d7f2086f606a313d1de59460f9058d71fd04080fa540d0302047c435bb500683066023100829a40fd1f396f57680d16f4064606bcf8c1f2a0ba1049dbfc9364d001f23ca58b87c3b3581a6f7f9e912aa9a9c30182023100b915c9a0023a4343c7d3dd477c4120e7e2465ee51f50c6777f1356904781a4cd92b86353b26e1a2b4c7b23555ed095570302047c435bb500683066023100b361d295cf886634ecce8de1370b4ba5c7862edb46568e9dfdcb40e454806cbb126953507c8eddaf29d25b6969ed74fc023100f505d3511e5250fca335aa4453b85fb3cae5e4b1a81ff4676457af1c93ab89c22304472dc7cf07c95dcb3044f83044850302047c435bb500683066023100843929cbe3c03c09e13f151172fc637ae12d71eeffb48546530cc09324e536d3f78602323b2e723b21f32aab990ffd2c0231008a7290bad096875380f3f9ea1f1154e2fa1c796e501e77f34435cdd8646be18ae264305883d771ca7962077e5134650b0302047c435bb500673065023073f5d4356da1fbb36ba03a10221c4181c6ef08fb55e6a653444440dd9f4b289f937ec3db784b51b9db7d170c665c2039023100b2485d28d4cc20708a6363e738c72724d13bdbb9209b6b09ba84eef1e9b0007a12c3c202b9b9964c30a18bb220a2cdcc0302047c435bb50067306502300bd334b9d2f003abb24b9b1fdda51e7728fdfd4fdc260aeefa459be59b4bb1c09511c7ccea696cde608cb5ab9150cd18023100e76d832fa9b5c4d07fd918c80ee2a0d13fd791cf16f5f208f30df7afdb701cf1c0f956eadbfe6f270b291c4f6670a0a00302047c435bb500683066023100afa4a3515c7f1c9f2647141ec5d5d7a8cf1ba1b9593e29b80d7552bdbfb8a537b7f6424d71bd0df3610b1554f0c5f4b2023100be6079cbb60693d66f22dd2ecfdf7cd20136883a811d007fbc4bbb0fbbd470b8f1eef9764817b23420be17a7a2899f1a0302047c435bb500663064023061353d1a38afabd2632af0d1ef410d59105d42043c4b31dbfa9301aadefa24f809e4f3827ceff6850c6afb60dd90cc9c023062b228d646a914473d42802f605c93be68fb782690ee083ecf8c95e106e8cd451e4bf0ec648dd198328398f2ff6edca90302047c435bb50066306402306064df4cc08105cdae53b172fc3e00f8c22d3bb8786d5aac23fffe81b86db89fa942136d6876f7197228233ae7bdf2f102306f7a46bd4504929a914fcd2abca272b8633f92f10845949fb0e578e0820caedede450c58018b9c24d5bacbcbde4c52ab0302047c435bb500673065023100f5a6afcbc0d666ddc9a909e365afdd2bcb38d65eee1c22f1cb75cbb6ce9e4c6ad59e2d36b14aecdca1ecc3c46d66de15023058a84415e0b7926c7514ad8ddf39150270b49d55ae549d502cd9dc35dfd721c54c5347a79be04c7fbf0232b41d42573d0302047c435bb500683066023100bef1c3e2f2b434bb547dfae6f6184147f2bc116fc339f5409d52e3b9b866efa1b1289e7c69af72bdd4ce4745ba1f98150231009ee9ea1ec6e10103ca1f6a37aa8b5ab11eadef779c68c1026172f76f17cc42a31dc83e559f3d947d55dbc1cabefc1e3f0302047c435bb500683066023100d264fec15216da5b15cd360039677b2c60a4bb66fdbd3b5a4a7c009183058c6f3787deecebc5924344f9a982d99b167202310089778f98043d11148821b39ad69c54fcb6ff43251ecfbf66040631237bc359ba56a537f39cc576694c67a3113cf7f4b30302047c435bb500683066023100900c4fdf37921e071b9af33e9721234d5abdcbaa6399e769af4845d015e629481027e3aefab0a502e24bde259968064902310081cc7e695dcfe14908acbd2cba8a654fa8e3d6b1928d089f7a3a4e462ba7011c4b508f8b53743f3bb76218dbb7100c170302047c435bb50066306402303b6a9da7c20b5802d5265622cdd0916f5411b712e73d462c9031a3a81c1d8b2f10682378f4a75a4c48a51de9012e01be023044a10c0ce821ce9bf7e65cec49a71e4b11bb0375e37659d08045baf6ecf7326c28938ee39d115f624324528e8182fa980302047c435bb50067306502310084eef3ec7df30172108043732626dd1c19425ed82d4b6872214c68f32cfb5ba67d50b41a2dcfcf8f785eb7241136bac802305c666fe44a5a45b7a5ea0f5828c1164e16c9df48c1501392cd84c3a81d2b001beff4d4b984d3015562195388f5d487c00302047c435bb500683066023100c2c6b4fd93831108ba66a4cdd12cfd21f6a8d402c9c421bd8e62dd3e1164ec007a16c0d1c98bc03c29835f53caedba4c0231009fbb4a5da746d4ab2ca9e3c3234d5ed70296c2684140ece69fe78833c6059bcc9b73f41c721c95dd9dfb2779cbb1f2600302047c435bb50068306602310088e95f11f2ff928c30f3ee8583469f6b40b57b22b70d8608a998b5c76f461d44145074e80dfef82fc60acaa4cd9e7001023100d729c43ff7a63c5d79b4c28bce179fbd5c99f9fcc6eca923ed9ebe266373c68898a6b709a98c7a5f3ec5ed2cdb1cb4290302047c435bb50066306402306adf367a33cde53cc251d00f2ea55be3e53b98a97c99aa315bfbb57e6faca19f710cf0f2ea326da09ceb66196a06c23c02301ca015d1992a4b4e1b19fd503388322648f6951a2a5c5e0ac18c6ea4d3073c37f34341610de926dc96d6b27ca28efa3f0302047c435bb50066306402304e8ecdf71820271f71bd62c4fda291827f0b008ee788c325d97faa832c2c463d2ff2b7de77ce8749fcf33f020e12c2b302300208caa6c833f689b0cbc73aa284bef0e9be294da190868ab02f967c4d36fdc1075d09448f96fe1f8e95d6acf9be19fa0302047c435bb50067306502306ea7b5045a1c6ccd177533d1ebb97f20ab70956b361ab669ff6a2d146d1fa1e95a92cfa92ca93f06203c878a68fa2193023100b6e0c34642411e27374081086190c61c06484fafbf6a64e4de28afa9100ab390de536b48b2b29286faad69c71f6a6d370302047c435bb50067306502304866030ec68764c5606241acab9f381b83cd5a4a096de322b5e1dddc1d4740aeaeadd9958656c4de24076c5ce3a9a0f8023100814daae1a087152456704289e3d3f3b0166f7b3d783d8e25dedc8f656672d32b7c199844fba9f76dfaf85028c7b69ff20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023074c14ee04398fab743ad7e52835b6612f697d1ba0e55d6aa1a45abf9edda0c4187951e8c3a0e173228fe697f9a39117f0231008b4646d9d01ff7ba5d552bc666e6e3d4a632cb2747d80a1d848e6ec89c2a953fd16a6e32e0a27a1fff1b8ceca786f81f0302047c435bb500683066023100f04af7603923a74d96412cf327f559585e8fd77bb3a39f364cb1b5c140f4a57bc828878bf5f3d162f43e7664e0ddbb1c023100bf5b243baeba0dfa561ec9e38daacfc0d13ed926e57a9ecd0faa81519f0f95fe81d47ed5887b6791e5affb2e58d579070302047c435bb500663064023012a552de3e3587e8aa9f99aef1656c821dfef18c7182878b772706b4f75b7f6565d0a3ff59f73487910e3cf4b8132b0b023008c413d03a725c015ddc28b042276493c85b2c778820cf44a71c9409b6a1a8944205458d8c60e0108bc17ed9403c2aa30302047c435bb500673065023100925b4a6ec1d2b950830c44fcacba335e944621662e896cd6d16997a5aea6435484449550831249cd58c8e3eea67959ed02307a7292c8c61109a29ae069d2368f1cebab2ea60d4823196fb876d2022dc28de8dba104bb744241c06a4249b1d23cf2b40302047c435bb500673065023032aed2a8716b5aef3ecffaaec9ca2145ca83c56548ddd1dbb963dd81de8ce755fb7201679c69d9616a74be96cfc91277023100cd0ec958f721ca268deb92eb9cee364bb3fcc9068300cf8dee72ad21ed2cbd3984137e9ca99126028cae695e4548084e0302047c435bb5006730650231009ba40522ad45ab7dc613f43088212f0ace4b5fa1904ba99629cdf6c6355e0f9f09ee88a3834c3c6fe52ebef0b81347f2023012cf0d53922be05545e697dfe06c4b1656aa228baab69831dec0d011f6c891bf1192826939e6b6669eee09c61474e2ea0302047c435bb5006730650230520c3d59455b71784f3287c45afaeca2b0b5eb9d658419e2a6c79295f86526c313bc8d9763477f7c5d7a8b2fbfe61d55023100d3f3b8ef49dc9b5a2602c20a4376f027056e971ff7129b3864b4c6cd33cc7fbe3c556347ef0b421c988bc5fa58dd87120302047c435bb500673065023100f5083f5ba7e9523a7a0eae92d1fa92d14dca4dcaeafd2d9567288c1dc71960da6ba4b0e08edd2b8a96554c37cd56827c0230787b9fd1d82e35635a960f257750eb73fd359131fa2ae0619456054642a6a5a5a22a4cff0fdc450d38614056b9e48bf50302047c435bb50066306402307d0ec53478e2ec7271e5b25a105a24a1db37437dd063f47f4ef8c3f5792f7923a355a0b23cda2ec1d1c8239d379375d30230624830996d7a5b7b53ef66db696b0bd7148f6d2272d56aed98684368f3482eafc53542955705f5e05952187fb67aa6410302047c435bb500673065023100c9b4e66394e05d5a4fad8e1dee6fd0d83bc169ded87e33cce3beb0b1dc05bc44505f301e940ff18b1e28069660bc111502305d2b403375d61da5c26ba164b771d3cd3a768d11e975569b968318ffc0917fa472bfc58e1685c62fbcd09b926f2b53660302047c435bb50067306502310092afa53444abdc5b3b3db95e38f61fd96bd729a3ecf70e458e998b0c020b137d30aa56a8571869b9885379051817e43d023023c07fd404b1683ecd94faad5c8c67a118df8957316cd36250e4102236fc1ef4588fabc4661678a66344d7b8e67495ff0302047c435bb50068306602310092ab8670158b64352d38a6d27196b959f1cf8e8a5b1f231c5f38af28ff8b5d8b330f135ca3b2db14f98b54553b98bc90023100b583b39dca8b1a1799f35d280f152856a5197359bb859a11229dd41579f162ab47848d4a618c79586d5db1b5b90492be0302047c435bb5006730650231009d32191f21a06dd371b0317c4fde7559d6e5933d6abef350fadd4d6fe79b3b808a9ebe3caf6472ecf70558a356448b16023050b813be9792316908d020b1ff1d9d9b1a23a8cae91ece6ba80e01354792cf8cbff30aaf92ec11c0d20ff596bd11739a0302047c435bb5006730650231008cbbe553020a077292734c2dc9e4ba9143fb230053f6c8a91f7caba20c88f0dbd6c79f4ec025cd32b4be1dd8781bc5e602301d16f7a8e44f9076878fa53e3c59e99b95376810614a1d3e9a440e22be6d1e565b490d8501f707288551140c1ff82c960302047c435bb500673065023030a136850c06ece6ea92e79a627a1b8e07b934ee1feabf44fa1116a1e28174ce5496cb4f76b00664b39f4d5dfc9af3200231008e4429d78dad9cae4ed6b67d877fd9ffd4958a145c23d24e5cded8f4526e921f81164c7b2eb3b496cb835da2c21c42190302047c435bb50067306502304261504ffa619d899d6215a873ecf52deb290c71db5057ea46d01407b2fb29adb08a7fb067a4d436dab0592a1f3a4aca023100e495bd31e1d1bced43e7927ff6db836c188a265c03409828fdf4151c5eb684e02d5422e3896d2161f18eea3f95b24f840302047c435bb500673065023045bedc55bc16ea1836fede722514750092f54bc53cbadf28c7598bbc82e26c94f8e67483814f551202c46dd69def55f1023100a3cdc403a756d54f3da0972a116acc8f488326ba0b0cdc6f3afe8b03fbc09c2344ce1207ba88ec334bc5faddd615c1ea0302047c435bb500683066023100b9f467d7999ac20bae2d4c439c6b0ae9e4dcdfc2195632119b63204c5cbd8d1e59e1dcfb1a875ef4d131435d55e90591023100c58a746296df1dd7a5eca84468514c7bb4f2921400ff712f6322dd7306c69d908c9b985dfbfd0580c7bd4f1c5dfa9f340302047c435bb50068306602310097ec5c13e2c2191064a1bdb154197577e5530647f1bff0bb5372e64090923c84355548a6b1a6cbf8fb65623d8951e2d4023100908a2970560463f318808b790399d8d4404d934ee010b9a8aabc4eaf2d0c2f2ea3e192da3d7aa0a729dfff08425d45460302047c435bb50067306502304b577ba48233d121fe4b1954f5f6e787476f6ddc37970fc5e760fdd0b07fe1c39b12cd7e6623c323cb9abb514a79abf4023100ad3bb3d6d40dc3f515626306129228bff0503d2dc3369fe367250df602413f6189e4adcc1aa6dd8687b3933630ac9e130302047c435bb500683066023100af30578d8819c7d9f0f207d9ffb56d5fe2e0b6f5cf732bf9205a394e886b17956e988c6c308bec846dcb646c49551c56023100cdb219861b2c61a127f6a8ffecce4cb4dd8684c4a83b1fc1cec54bb5c3a56dd27530c3bc8b6258ac3080ecc9e8529c890302047c435bb500673065023100e7bc4c12b7f5f3b62c3560d6fed0f8060b6806affb450601c2b12ac15b19a2cfd5fc59a3419502303ab4ed731411a1860230601bff89c7a4ad0a41270a5fee4cee7631a34a463de87bcc23620b1b2b1a1b4cf41749ed650a5646673d2379e012d8f30302047c435bb50068306602310098ca71e3a56e8e4a815dc2d5155fa45fc857e8fddaebcf30f72e131b3dbacdbe9322d0bec9813cc563bc61bfe26b643b0231008d633b3b163f204b585f51962d729e3c027ba2406dfefd17d3a4f04ac9cf63d25abecf2d7a54c3d9ffb56f5878d37a2e0302047c435bb5006730650231009cb779a1f2688fa8937ec5b953ac7f26538b08bec9a73841cd2474c6bc1e0adf3e8b591c0906e13b519c86aaa0dea7420230033710cf5130a8ad59772fb9d5dd1760dd43a492d22d7d86696b57c21f1971e93afe49b0e03f6100ed0a4092ebead6ab0302047c435bb50067306502304624ee6bc4329a39e91385647d58e842e7319edea95a5b04321a3d64a5c02a910f56758b7982b83814c8ed0f40a10be6023100a10323148566fbbbb004e293e3808498e6f6a5609a505e5429a9f99be6e24385cbaebf7444a6994cbc773c64ef76046e0302047c435bb500683066023100ce24ad3f5a2e8f44d793f78c2badacb8b36ec3fbddf7b90420c5187527829013acd5cbec712c25cadf4e09a34dc90c89023100c8ef107e99171aabed376f2804842e55d63c12c32c16b7b53f6ef9ff62354e770f90001c2bcddb51d16f1b89818efdc60302047c435bb50067306502306120321c9bd48e12db099e523d221ec32d2dbe535f08189c2f19f0956a41a524a2f4144d50e6042a01efa0ac8524f129023100f4f59a67e43143e58a05bb66b6666fff282371e35045aedf9b475e108d4d469a8764da28a5a7e66d47c493c86388cc5c0302047c435bb500683066023100be91c24d966044f03f01417b36c32821028c88eb5c88b886568377fa2ba27880fae15a263105b7f56f347cc49cfc1af9023100d6e6b69619b3cc6e860d6ccdc5335be08feeaf1eaf18ada5072d3571d856bc73178614f66998517493e491bfb85044a70302047c435bb500673065023046a8e1750a3d9223dc6eeaa5b21f8b780f6bb83cb7b3dc1adb2f4fb535e8bac5f1ed23d5d32b87222d34ee309ea92810023100d7fdc00b02e865dd21d9d988feb2da867dc55cbe02d38308d0c3969b8f252b1b145dd862b36b1f0f97c18e9133132c150302047c435bb500673065023100ff44eb29d0822943aba5e99fd84be2125e6aff20501a8b939fcbd7054ab3845fac5ae7391c81049ef49e04426e104b5302302e76dd9918ef116476000b838e615c72a47218de1ecefff4782dcbc460fa5f3766f67815418bd9a7a5fa908a8c88252e0302047c435bb50067306502306b526985694f0257f8227b986d44fbb656e9944897c0d85dfadbf38634abc11ed9e359e182a1a4e5edd0633bcf32cf48023100e2290f6c214f9b1980177296b4f7385270df1f77b80483cc3c413f273f21d923ead14f66a9861a212dfd469621c5efb40302047c435bb50067306502305d7b7efa3e889c18f01e49add3d37fdf6e6446ed143ebb59ef1146c3e750f88b183825d2119b0a2445e45ee723761327023100b0cef800a9677021233f2411300f9087ce1fa8ab69c392cd3a0dc1c95888187d3e146574a6cfd31816e49675b29766050302047c435bb5006730650230070f54d7c3e42c7f60b2ced0b706a6c4308d2728e14432c2b9573ecc1bd031fcb3b273526b2b7a74ea77b114f564c59e023100de68e903a5b29634bfad0171fb81053d3b4690960778f406f55d4ac4143a5ce3def779212bb9d28d34d7f6ab9c9e5ed30302047c435bb500673065023100a87ff65fcd6dfc1d9cbfd306c83861081b51d4d7c5d271aa2dad19769f5a7c4ae4204e4687699c3c24c0ac0b4fd56db102301c70a6a0d15d25d1efbad4515208bccd7888ea547c4ec201c18adc0a0e46ce048b14e338fb4f4aa704fb67b97cc00a190302047c435bb50066306402302a259c897b085772d3f634bfa5315dd999b4575026992f04bbc0131de805a6999882137d43db59d2bd1bc4783bfeb5c0023034ff311654104e9db19b1c4a09814bbb40cb2727db7f0d76e9788ef2e6c30a9f4bc250f7c6f42ebba30bc6692a5261b10302047c435bb500663064023055a0ad71d8261c9f1a2afeeb99274949b367a3dba84429d93cbf19fcf827953404375061dc3bb4c2d55721867a98aa1602303d704b4703ddecd3e5b7ea440f43ba9dae8a1867c546cf3056b23711ebb68540e9ba40ea49cbe40cbb098faf163b5a290302047c435bb50067306502306bdb2a00119e574a118444c40352e7aaf5e1659c7573bbba699d7a68f568c5ac125b207a820c1e478e68fd80bcedb49d023100dccc85cc70ca0218c473cebbc4b4614044ae02b358a3afea5636bcd5027894c6502d25b594174b5c7c1b833d01c50de30302047c435bb500683066023100897dfe9b9f6917b71309cf53f64b42f00bf2ba88c9b1901df147891d0f135661ec40ebb3fa12467b38525da8941608d1023100d3239f69fb6abfee247f7d046c3305e9c233b699f0bb5411a1755cc40eefa7bd71f187514a35fd3af48b41e813ab202e0302047c435bb50066306402302000440ac8b2b7364633270213b56304f948e40bbba5f910af952c19631a336a55bbc25e1e8dbd7ff24a8f15dcbc881f02304b41dcd3ddad52c8e525f8e5449e01fee1216320565758627501861005661911ebd576fc7d4e7b7764b4839f3488bb130302047c435bb500673065023100b4d64a0b293c48b86641db3d60d93027b448b672477f2a4773cc611836f6b4d8fa3e66abf906c3add707e51970be46d40230737c45c21d750e57ef0b48dbb1a6a8666c2bce5de941b1b1fd23a2d29269549c030b3d83cdd1a71091a78ae7224e06a10302047c435bb5006730650230528c7443c8750af834cd4d5ff240953f97a18daa26bc2cea2c70b221e84539ad0210b4fff98751f863d4c658719adecd0231009a459904da251dcfa83a1bd0bca06f7bd446bae1ef8543bef156ce284dfe4067f6f99790cbb3bed3cfdf756a196152770302047c435bb500673065023100d91329c977521d3f5d2a4171ddcb6e1d4e81743f36b9fcb45717c842fcc91a9612f6d7dbe5c881b907d0368e078ea41f02303d947eebedebdc627d4056e7da258b70da61e201283af1ce0abe8cf01deefd68fa14e58f6915754431ed885e7c6c9da50302047c435bb500683066023100822f19a01ca750077bdb70ba420ca7361c6da6944857302a38e6f1d3d2d58bf00c1de63e96a6ccd949fd84522a33d995023100fdc311f3589ea372dda9c61ee537254a0d77da70fd4a1db3a3bcff840ef67d8e52561184fddf85e628866a5bed0c900c0302047c435bb500673065023100d632eb5eeac8d059460b6b26d0aafaaa873cda0fd353f5006e541f0c49e860f62617874cee3f1b0d928dfe78e0d5468a02304d79d63e233ecc4a3124cc4a956da6d431cec54a29ac399bd6585499ba14ad55e4d7939457775ff60252b25fd8b2b5ab0302047c435bb500673065023025ca45fa310a2f456df0bcb3931e49c38acd0e86a5d15f5f34bf298ce421882496b444f64bb81813a5fec8d59ae45401023100fe115f01ba0b07b711f532aa7d9b513cd9496cf531b1a284ad5d7996ada20910d5c3443c28416ef83aa675af4fc82fbe0302047c435bb500663064023071d61e427959ac283f837715b36697ea3c246ae9d2614512e8be87a236a8a47e30fc1d2df99be500ab07cf905550eb6c0230370719dfd2e62c6b445c284b29505b5fd22c32d784d8a7717a31462f09998050ddca5b5b6200318d540dfe852070606c0302047c435bb50066306402305b033717f903f4d3334aa1a2f57ca8fe24808bb7151864a37338c31dc31f8ed4f0369d26f8fffef7a3065ba135bb791f023018d731b071bc2ec606960a97e30ebb355c8d25feee60a7949190337e7e2e85e735bc418945ee81c63b3042dbcc11effe0302047c435bb500663064023020d5f4672289a0814ca57767d31c0a8dc9647870a6bb04fa859db0ffa379ea0ea8e70dc03996456afd826c3a837585dc02301e39e471b9978996c7365786f125afa422732cdfc963cac6c40ce8f5ffff08455f892a51fa0c1761ff71b366b5b4b0080302047c435bb500663064023000a9b2568f87414b371bf07d4ebaa7d5a3d668fa7ac6df10ba7ff05b6fe98bad0e5bd49e635f0b23ac0d19a0b52f3a720230537c5dd36516f9bfcf192dd63c6fb1574b19bacb8ac9d45f227ac818b95613d701a274fcd40fdef6ffe3fa6000b27d9c0302047c435bb500663064023036136399e1386843180d03a928d9952c49398bc36fdb5c6df0cc8b05125ac063dd77944a4b11b670087bfa6722da7b56023016afae2366e313d6b37a748601a08505cf6c2908559aef8e2a01c1b2939ec74c3ea4f06f91bef7cfb3c81198dfb0db410302047c435bb500683066023100ee1e61382096fe195641f8eabe6cc761ed8f19a09af167028e4348eb13ee3d26a3bc47b3691cdf23143f78d2aec0fee1023100cc1780656e7e50846b3d2590aaabd217766d73f1f43b05856ef0d9a88fa74f2cfc13bd1bfa9e59e6bd8ed692b7fad6710302047c435bb50066306402301639eddd6295b22881048c8082f718b1b0bb112bef86a49ca2bc93b8461cb05115027722ac81596169484fec9367996b02304d846b58528ccd046a53e536877b1d793e2286bace16f20d18068b9d308ced7993719b84a5b6bfd5b0da75faf97e09070302047c435bb500673065023100d89b74613832dc78b2dd98c68dcd18002eaed662cbf8d4fa29fdb9b500bcba334f2068584af24deadc76a529ab916e9802304d62979d4c59d1342911f196dcb0ffa43e26c72ad43828eec3fa9d82d52bd1488db0e7ee2faf471abf0fc44270ba9e3f0302047c435bb50066306402306102a962f007fbf479920de7c8d3f635b187e2487add065a9381579c9aac8ec7d45217d4ff2eb80faea38580f85df20b02305ea6205fcac2f0edfe43d69d70d42c23072a366ac24dac7d6199639b05eeb28a41246c2244734bbd12215c6a91f346df0302047c435bb500683066023100bea31b3892e9992342c0edea62f0a50becc5fc14603df38a6db15da4be1c532a15565eac14df86f59e0f936bc0b0a50f023100872e7ba3d2ed1090502767bae514fcf0b2fa0821a8790f41e78b23e4639b5464d6c87e36bf19e1a7970c4decd806debd0302047c435bb500683066023100e21ac3f6e409207fabfab99118938e63a75510745457a185f9368d9ab88ac364b55d95f7116c9787bbd3a0f3e2afd50b023100a5de0ff809de38f0517945e22fd4ce07a8a6cb2b8628eae62c811965b63fd816d3ee7aa919f2efabf2d36e9a3681ef930302047c435bb50067306502300a2b35737fcce19274ec46a08cc81fbe32dfb69c94dc60b15c453fc5694e304c6e82bb8b80d7ce7d5d85857197b0be61023100aa1de6781fe598666ba9dec2e053248f527da59049b715646823e60456ec1e4be68115790a3db4b8e72d4d5b56ee2ab10302047c435bb500663064023070c3bfb0c2471a44f5e87e20361f8a1a31861843fcf5bfb88ea5997ba1b2de4f4b841d614f9b337cf5925786a931c7b202304756a4f6cc8f24936d03570d7c14865d74641723f00fbf5b5284092425dd41932c73bb26030512710b18fd71ceaad2990302047c435bb50066306402303c7727d132b70c905cd064f286009d279d29e6c16c32dd01df00b490f09c310a39525fe713df1a294416c50b0f6838ca02307c8bd360439888b56303aa11cd3d0d91b50a1cd91591911a7e0c8bf0f4eed224b54f40b9189a302e9e8a9b123519a91f0302047c435bb500683066023100b273d77b9d05a9db92fb555c3ccfd73bd31ea312ee2aa92aa380c0e3abbaf3699c16d2535fc4a69051f3b4b39fcc5cb3023100c5646793c0ec8876b0b28a0704f4900e9444cd2d1a3d69a96bccfc86992ebf8136bc96f8a7d1d0e5e3c2dccb65654c770302047c435bb500673065023034c135ca8d4032e78e581f7abc7ff594bc91d3d49f793cbdec615d8b2f0e3ad9e6724dea753a4aa5aa46d046531bab5f023100ddd95a0c9d7c30b82734a83e0a8b0509b7702cb7c571b5eaf44d55cc2842719c1d5054439776d0486305abba52076ffa0302047c435bb500673065023100aa2b3d3d52560c449b32ab084986d8167ed7e7dcb9c39dc18b9a4b9e8e19e8faaf7b2c83075dbb2a53503d84d456eed102302975b127e37914dccf626a361f935f47a74e3bfd4d10252f27c6f9793bf07c4d957c6aa5bbaa2355d9c9e72dcb7e2c180302047c435bb50066306402306d3783790e1c113c373b2eb4943bb900158ae0f0418f35157957d349f860bdeccc6e40a77d7c2ef8993677613602a11102305d7c58ffe613baa3e8976cf63e26729c2a849ce47f57061ec3a9497cc8f749628daac8e74db039fdca2ed1776cb01fb20302047c435bb50067306502300f7cd9e0db6b13de6e7f5b105eda35a9a044c12568503db36d643aa63f71c2814033c9ee4ab38f3cf1d33570bdb424a3023100fcaa829da7e5e6b8759f7803f6612ab9f242c93936bf549e3de9ce7076bde797749b25717abb8c3f3410190fa72853660302047c435bb50066306402304c503cf9ee76f80e2bc8785b7843e3933bb836b994011fb8b7827473cc8b8146f9284e3e72ba823948cd016ddd094cc2023052ab8f1a6152879362f5a75a2aef64a7754c6169b54556a22ceb60ecda1ee0522b549ee4dc566ab980258e608a6986020302047c435bb50066306402301070813d01778c6633349481a33ce0dca1fa7d516b2900ad6b4ea62793b06f6a9c7df8af776115994d0bcccdfbc3923c023045a2fb8ee8f7e15d34ddb63764266d104a6920daf82e67556ab8e651a179b0ab29452853f918c09d8aadb64042be69050302047c435bb500673065023100cafd8fee6011bb68bc87d1f38437d4a6c4a8e6daf92a05a004feae55da967dc4f64d565ad79dd5e3bc83270b1166227a02305182486fc408e2a0d64c69388e56210998a0490eb8989573ec9b143c35f5591d7922f0cbee08dbda8a495976fa5338930302047c435bb500673065023100ba1deb6b34c8448cebc2f338c00a9dd5dec764d78f000fb2e344285fe3789ef92567f1ad84f437db47a54a7ea8cfe3b3023040c2feef6f3a5cce7c551158e36698905bb562aeafadf18313e2400299c7e6581ad480ae8ab509db9f25493a596c99cf0302047c435bb50067306502303f380092756d50fed63338dea27941e395ecacebe8df53e4416d882e1c609527083fbd6713c33a5111c3c983660fa1d1023100d58027c4f17cc0d0ef7a6fb80650ebf64de428a94deafce95dfd756a1fc9fe8c92b18930fa3a3d17ae6f60ba558ad5390302047c435bb500673065023100d873ca068d7b94056a78f9636171e0a321fd35ccd0de264e20edd23fbb8422eb057fbe518d43307da30e946b20880c8202301af89da6a93e39cad58f6f3669e165b66898484ea3654ab766de4a520e907e7c634fd296b35aea3b84286a48f754d7900302047c435bb500673065023100c6d5af9dd7d55e1ce07ffa942760e8cedade93fa2d3f0469f907ca646a85e8ba7ff8b7b30f7e4b3e0294f0459492078302305076398d10343d478646167c2ff03a2f8bd74701dfb3fd6dec05749c0a3dc84949bc14aa0af8ea0c33da46ac04596fe10302047c435bb500683066023100b5c512762609bb0a26fb1401441b33d412b5c44756ab8913fa4ca6599fa9e87bc5dccd3d2d43b67d8c42aef1c37688dd0231008e871b74bfe5e60fa4eb724ef8c03cda81538becfdb3e977efed31af40e0fcdad3e5c35f6ffbe663e6637ec310a1b6aa0302047c435bb500673065023100c36b118cb5b558c187d07175b2f646eab31cb26611cf31535477babf725539c4fa6733d990bde5bf46e01789268821d702307b11a76e0707028c911f7e229d0d98e6e6d339f455a10747277791fb6f2904ace8efdfe30c90635fea53e1a6dacd407c0302047c435bb500673065023100d0f75afca4068117bea8f6a2a8922043a4a71f2640591d0bc2db539938653ae0c8b5803bdcda654b7be0d5984b552a1b02306160d074050b81bd1fff7cb532254e999aef219dc26eebee6ab22290af503ba139a93253c1b5049cf4fec3c327ec66080302047c435bb500663064023030aede6d4c8601354b6b44a1244dcb962b9efeb99134c9f29e6951fd33e97e8ff591f967d517768cd73b107dd9daf3a502301f02d665e98151ae18870287b16d6186cda621c100777f4fda9c66bf25afdd4838a8f5738583fb6525afd5d7e8ea92c40302047c435bb500673065023100e4397fd579a9f92020fa39ededce092480fc8e7badfdc507eedb4170c11b1fc5820c3f4a36adaa3d85bbde975d0575b70230426911c0bfff94407957a3ff4b5320a8fc635103ea142263ef437d54faf5e7a419374614d57b572e0f9e70297847188c0302047c435bb50066306402303c44c4a98cbf5127f18850b19ae4e7c9b8f2e948af2013a7c5a6c16d6a1f803149529cc15e35778e529ad866c3584e830230489b6407b9aa22dc40f99bb79b9ba60f7126860eb9b9b712fc22b2b4f0bca12d956c04f1a94c0bcd7ae7fdff42eb4a680302047c435bb5006730650231009b5f6204c5d13554cdbea781abfaf95bdaa5e374ffe7ffc5498bb10ec633456d5d428187aaa277e632e18156a08b672902306e795446c1b8585f1179594493740c750ea7d1b5320292d00a9e7fd7d37939a6a61d3291cc883b12804888970e65564e0302047c435bb50066306402303cf07bfad8fffae3a844bb161e1a5251b6d35010b5271a114731a8b9c03ea0c5e97e9e176e29ac87df806d00ea8ed2cc023005ff439c80756b20002dadcb6395e1301fb5579a86aebfdbb082af491723b5048ec91c9f84d143db4feabba65a3e1b630302047c435bb500683066023100fb1802d288bdf5235db5bf4f2bc51657a3d919ac0ce66d6d65a565969f71dd14fbf83450245e1be9554b21e29ad89777023100f79414f9777d80a66110087b6acab6a141f7e709aae5c9fc1681624b30ac3c7f7b017fe8355ec93424452f8b29552fdf0302047c435bb500673065023071ecfaa500c6bf02fc5bdaae432eb246194dea213bd2fa0367fe4be30eb297892a192636074f7491738e2cdee259c012023100cd68a1b6f241dcc4c5913dfddfb32ef45cf778c46fd4feeb692c5681cbac257c40e3d14ae9c5b132bdc3d2c3ee517a3c0302047c435bb500673065023031ada6cdaec1502ff1b4e7a9613d82ed2e97ccbfafd2e7df49a60e4e15bd6ab05c44a11952a712ad7177c87a30b18efa023100d3215abf6d118e8c6047c9928fdd5fad87c2a4ebae53976ca23ac3c5223fa4081c20b3610471ba499c4f2a4c3879fe340302047c435bb50066306402301ac3a679ba7f5b35ca5448e70ec16d9f02a8d76af7a9fec04a0a501f97941e4b3af85a8473c26099763ca0f1b27b5ee80230325537f5e79ab9d839bf307a663e6c5985d341a86b8bb7513f8e81d39d47f467f7634706a8738822288dec37eeacbb080302047c435bb500673065023029a1200f5642c772278088f885b01c19c5dc846961cf251f90696ddc0b4d218a06906fafc72e06605cd2c191f4079015023100860358b7576c6dd43d04c376df387332bcfe3d189cb4f0f5a342fbda48fbf8f3cfce55c9b6ac4c5cd2f974d6263bc5ef0302047c435bb5006830660231009e2f8064ce8c70ac80154bf8311495f6550d3b5e2af089af572ae710f107e09b83fbbfb143173a8724352d2f0906b331023100c3ffbbc6710074eb21cf732a6b2ad76509dd34715d24518692d9cfb56ffdb1062cbb0379af57df2d06d4e47485c8c7d90302047c435bb50067306502304b83a1d09ce0472211cc6d9599e78745a83c8d82b70196a8434bcd245b8e8f41737355091cf65c3d4762987d57ddb415023100d9d9d22a1869e94eb2b982d9104f187f51eaead4ac92fa1f691bf6bdd427c302c53448bb276271040e239e76a7f581460302047c435bb500673065023100a32a6ce2974f7fae72fdea9329cbac456680e89d2034c3ae3de3c06ff41492e3bf375ae638a90796779fb7c5e81c15c9023059301baa074119dad828b2a5bc36b9fd65579588dae2c1e26ecfa4690895ebf45d111cebe3c2b9067cbaef392a377a1f0302047c435bb500663064023007e316876aa18d472aad37c35551547b54e0862a6f599b4d7365aa1f14521e43b6cc910eb0d7d1dd42f3b5deaffcc58d02304aa96d2d2b58a29ea8a6242b1e4eacde03d6a466fcbf2fd7f73526ec3d4e57df5c33cfde5f123029a9c7f40ad6f972ae0302047c435bb50066306402304699858fbe89b3fe5f3ae6d370e8e47c3c3e49703322813a0df41f3c2876fbaaead8f6bfdd6082856ffbd6f283b03e4102306a6ddad700e5b14a4d1c0825407b3b21d0218cda755216e305bb86d3faa39aee7eb18b11fd161dde9c7e431b666743960302047c435bb500683066023100e4a4107a1366ffe83c0a19e8843b82dce8a294e833bc72fba774323dd1e8f2975db43d8171fee55882ded27c9a257583023100ab5978c099875d08d586e7fe8957154d350b8525cfe26ed901fecb91ae7ee70414026a53527b329c9ffdb9652c931f5d0302047c435bb500663064023026d6a97ecc5f41da75af30c1853f8ddbb51d78c5bee34542eafb0718028c03aacceb182afaf313f932d69342c0be45da02300a7d10bef56d2abf7cbb793fe91831da51deeeb0a23f67a6cada1e0f9b0f133ad059f2bf472525d47d523cc72695308d0302047c435bb500683066023100ad5ea473fe436a046cc417632cf76af7dbc06723a4a333476f8628d1112c1fc58c1ce43ba24ed2f7db177767ced910aa023100afdbeb914d00c41270245746cc1c4b371dc7fc7ba3815bb87edd1e4e201c121083f3771133071729f1092c4bb2f17fa60302047c435bb500663064023066b982a1277923eec2bc811ec7001a1b01093c313586a6c031facf8d617dd5aa8547003583392fc56eea5cdecf644a3102305e110ff694e01ad17787d98af80ae5149469d7b34d587ad790a14c43df75916e3676ea4e06476d13c5daec9e15846d120302047c435bb5006630640230163f6ca0f841c700b90de6b07a1fc2ee703915937e86bc1a6048008715dc72b81e53f28969d3da19bbe08702b9a7fbd0023013860f2903f6432f02e44ed7af721ca49d5439a91751058b0030a5b472c3ce308e22c31cba4a08170f99994b972674300302047c435bb500673065023100b1c4ec1e0bdceac3bb8781651c52ad079a7d77ad024e479d7ba96aecbec3c98319d31173e91e918347f2d971ea21515e023031d9d31bd6dab7e6f977ddc623606e7960d610ee25bfe5f423f9c18760276099589a09c6f99b9d42d6e28312354866070302047c435bb500673065023100e78e7084d0ba5f7513ee68cec2a9b5198cbd57b85b508b6d182435e978e4eccc2ba272f345a3b39dc0f981f13b262e9a023077dbc1d39cb4690fc44715309b5e39e6facab1bd7aa3390228975e11698fb6db9cc9135ebc786a1e1efe3370d99699ea0302047c435bb500673065023100848c3dda6be550f3e8f75903b6ed312c8db28e3ccf84c603ee1fa6b9b77fbda867f023ffcf4324285cc1f4c6cbb1e3b8023074b43083f267145cb3bcef2cd38c108c31c37337bce70a852e6bc75f05c5792a711f50a2f5744bc06d285d196e4a166b0302047c435bb500663064023054570d91854f12f553cb9b462a2e8c3244d2aec33a397c26733168b7bf8541201bec1c449c532dfc4effca24d68ceaf9023033b6d36a81cd762fec5ded888d50075796aca075d0e29abe6405d57ed97b1c22880fe1b73643e0f547004bee57f296eb0302047c435bb5006630640230213275436ef80844c5f15a2f7b582d265b6634b3d58d85c5ac3fb2f0a00469ef3daad08cabc56d3ae3feb43e655e72d002303af0aaeb2525811091d5cb7f111bf5a385ff0466efa8aa0018d565c2992e54441f84bb92bee684c7fde45e32d4fb9ba30302047c435bb500673065023100eea0f10efb0023a15ba174669d2db69635f6ac0c55243709761789859d590d90580aa0a5a3d609959f0ce50b8c3927bb0230223d97416ac88eb3eb44bc8084db1af6386c321d7864343a71248f005ca82448ed42f1ce77113ab273684b702e0111a90302047c435bb50067306502310082e14c98f1d51130f4356c528af676fbf9788bd8a6f41f34ab230f94b9f14add37685a4774f999be03482623907ff9f502307ddbbdfc2dd224c1651d43187e4966aca97792882da69fdca0dba5b62a28c3229aceaf806d86a720e17cd883094c76680302047c435bb50067306502310080abb39300eebab79efce493c09d81ef96bb53791be194852051a037a7ca3fc98d556e3046d16880e7f201c4eff9940402300471dae232ba70cfce3142cc0359bf91fb99c54efab46bcaaf465abc7f40fe1d71870348fe834f42916e4133f0422f190302047c435bb50067306502304db5b4f1933f38fb8ee8f18814c97f4500b397f9563f6b65a217386367402f1d89c8f2d5fd6632e669568e479efa266e0231009373ac77ae24648e8b943523279e632ab5b318d63ba86c0f2dd93237bcc3a1c4b967f7d1fa6482fe493b1e7da34baf4a0302047c435bb50066306402306d13195c9ddf4506ef174ce3ba4ffe326c08727f367c1fce1e254d2d35e5f367ebd84f9b5fd7808a12b2519e04268bd102302f67472f45f4ddac593e227d1abc507554f63a49370c037120c5d707ee2fcad96fe5a951908199a302248ee74c8307da0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b2976b322e818cb6f2ed0bec4a70df203d28a006e7a6a6c3aae567cd85c78126fe8ecb292451fc3755f78fbff851d8f10230181316bb5e45d09a732ab30136da032d38d851090508a15396b703acc19e8f760790ce1fb9dc4a52a3a240105d46f6040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c0254bed0c0bd34dd0c718609ad5b841b03b6f35748e802ec3a5cb501d46792608317bae37040d4a7fae13a5b730c6270230053069c463900a78724137eff31205d27d2e2a2e70b4857e32bec3e38a4bef3f9fa0929dfc9b3e9583884fc94e4300300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a6c68f50bdee27d4a8ff1748266ab0cf692856ea6cb8947fc0dd3227ab89e653321155fa60e021027b9568176edf3489023100b47adda7b6a7add2568a05d61d85d95a90f481e73714703a3875763b0607addde587565d7878a6d104e89101c9f30e4b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100be9f363d936d5e024454ac08aa22513d0d73585f98223da7630320954d8652a7663ec0ed7fb3cb4e200e24f920126319023047739e033d2755fbd14c0e590e40edc2eb3fd1cb05c8ad58589c6494c08860acae3fdb21a4ba2afafb922247ffa3344f0302047c435bb500683066023100ff9f7bdbac33ec16b3c9ba56ddc7288c9b004ba3cad095e68b3bc4dd93e07b87f9618befd60e4d7ca747ef7028aa49b4023100c8401c8e5517501c57e5c041c8a18575899a8f5ea4dc83543f4399b6efc45b41bad9e191de63d73284728b43aae7aa9a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300eae03d2a913a78048ff8d8896b48383fc4fadf96ecc4b87f0295ee476c15aaa3c96fef6fbdeaae7c0e6750022b70c32023100d97ddfe36a3896242d6c107bd9cad846229ed1a5433a11a36e87463755d96b96f2e91999ffa7d6f02a5afdc98e30b8f90302047c435bb50067306502302036879e1203b25dca3650456b769449652320dbfef1c5b280c174d568becf16f972ef1050c1d1b4283e8eaa6d0d57ae023100a010bd07721e49a450c9abca2f6d69c190f918af6534b3cfa72067341207973375a610588091deaae164bf9bd7fca3680302047c435bb500663064023030161e7c0c6c239a9db9da9af3046e8ba477c55b78dc36e21b652d6b07351768793365dc934f449995b6823854a90f39023030674b722b6e5321f074de82089954b51464c0eee03373d6789551575ca876014513ac3e7d18a104c1d934f165f30e1b0302047c435bb50067306502303582fee1e7186be8f70268de99227e86d8980c6ebb306eea2767af681202da232f75f8a949137c2ed8ed1ecdb5d2f8dd0231009258d069010ae0fde90833eac8f07f1e661994c80735f5eb3f09460934ccf89b0d1e998d59e66747a728aa93c17144750302047c435bb5006730650231008f60a75ec4f2fd23d611994757859c305620babfd1f0fc6713e656606436438bc30841031f66a41e8fc2cbd7348d1520023002b03cbdc8dfa80ab7f6c6002f28048a22dd38d8d6ecfe920272c65f09a02a96edaecc4127b0ddda74c8633b24b377110302047c435bb500673065023100a04518a1a73175c833572b80911579051c26296a5078003f7adae3fd87ffa5eb294564768f06706b9ab2314998536ee8023058a3d373ce2f06df03f97c3cfca860b3f1e4b76ab87fbf478074e338675d651a33399cfa0b5dd41128e3ca1458a775e80302047c435bb50066306402300e5f18393896e0de6f5d4b314dc75c903625b50862abc3f74f2ca4506e9137ddc7f0ba5d10a0d8fcd5010572f8b53f58023031cc63c4e2327b5546070781c4b2bce7c9c38f8d30e4177fced32a8f1f8895466c98f5654ca6a40f188811e136d5e9cc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300859a575720d0877e40ffe41a8724898434d147ef31a208c07305b08d265c305ee3143b1b22f3730a9ebfbc8ce9a732c023100bb4bde848fdf709bbdf7019c8c8d8345d6d44e9830c7095b792f79c126f6a99a5dd2b7793ed27ab17992106dedd90d7a0302047c435bb50067306502303cfd5ac0360f745412c93a26d41262d4f90a045bf8d6d168c5d15a4bfd09198499595308ee602e3690431155e4a3b74a023100f34a478a009d4b5f1174cd7a6232720ed128e447f8fdf5a5f26d48569be064eac1be2418cde463c042584471a5ec5c820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f7a4911c95df6a81fe1b73c72317f4aa70540256ee6a6ae18d297674864775da7ee3391b1a72f9e7d1685c2d84eba4eb023100bff8c96506bd8c57ff6d4b0ecc391714ecdc68384b1a49a0037d33ef9b9cdc00457ae16634cac4c7201c6d519589f3270302047c435bb50066306402303dfe8f222d8c7e904866ec928a0642541434ec2cc1eb31dd6e82abd17469d589aecc7fabedfd7b55db5ac6a084b99970023052d4bb1452d5218f4064ce605e068eb749ffd99d70a0f9b55720edc964281cb9d672362f9a61a6eff4cefc0227e6cf0a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ede3c61b0e207a0b8d2f5577d44059c351fb6fa06eb7f4b148b9c3f5ae4f3e8b6cdefd936b2e0eaa625916ac72e8fc070230503b0c7ae28b3c68044d6217b60e05e64fbe138f286e0545b9b509b338e77a4a932d92d47defa5c8457c4923153e65ba0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303dc63d0e17300ce0c3be824593666ed586501d51bc03e029fc50fe6c495a37ae15ea1394fe2fc232aac10101b1418ef00231008452f6b5bf6c222615c660f6bdb1c6e11064a6550f5881f7a327482e4a86d4f12b547004e017947568fc4672fb8ad0600302047c435bb5006730650230399e837ed8a88c44580f8b8c770471ee488ac67fcbbdd9045c382600954c27a6beb9201190e82574095280ec49298b36023100c1c5ad487576130e0f8a93330bfe95ca7665fdc4a8974968bffeafa7e183696bcf8ecaadb6df44f64b9d28e557d3b0470302047c435bb500673065023100893db4922a4bde9a864bb3cda400c4135ae05b172be07b9e0f8890a059dda80f3e0d50d113930495453fcf3e10d98b3c023045555c42b5e362df8c553b75fdee8dc9c2e335734028fe86977619dbbb56f7d57bea6937454382e6e2c21c58b461be840302047c435bb500673065023100cf55555bec59a6ba001c43818cfa673c991d0e94505970a806f35722c91246432cf4e3c35963159d98378be3761f6e6002303b3e27f54217915db11cf0262139cf70158972d5ef559de262997ed351450c9742299ec4f6cedc912158ed1ca00a57ea0302047c435bb50068306602310099e5ca9a23b3fd08facd5d0a08e9177420c2551daa48d126e558c04b15323c8800b83d86ceaf1c259c158df91ded760e0231008c4a90fa2efbceac5950e7acaf0d01dba56bf907c70fd66826df16b27d5532af3b1ede4a24616afbb4c59792e6019f1b0302047c435bb5006830660231009b136fc262da25b3e02b01c287cf1702636c26f206676b7110ce8072956415c4f13453436c640f531dbd9863447f8c60023100dd4c30c1fc66db16030dc3820b92a9d8fe0b46ff6231e8e8d6d9256e83164f9db5a191fae467deb34dcb5116835f27c20302047c435bb500683066023100c69b0ed56d32c6f45dcdb3974202a130a00014d9cfa837b13c3deaf97b3a3b2a1801995df5fac30c4e4cf21216940795023100bcbf6ee3adb0ff6c3b9553b9c026e29d372ce30501c6e3beaac189d0d6bb0db9575cfc1344539295c6b1b3b2539c2dc30302047c435bb500673065023100b52cf9824bd078d3bd4452e2c3c62c9033e17c23facb76897edc4edc436ab521dd84bb45a3c2c62a3d0c02a5bfd9e3b202305b3e6ac08614b9b125f1a806b6a35ecd2a88e1edbaa8df8f6824bcfa2d7b62e373103417e8826b974527f71f8d931bd30302047c435bb500663064023060b27bed1fa7bd9e5452d2a77bd2764a3c075e103b5c0e1c0acfb85928fa57ae2de6e1758fa5f2e12a72fc184983f22f0230358d093d974d80950379b9d0264edffc499663db376538f9e48a83f1d4f5e7213463b5cb364fd80258b86254e50ec8590302047c435bb5006830660231008bba34ab7f5952b5d64ab1ef0c3a29876ec6c2ad13b3cdf5bc030ca97d25d3e948c65867c9d3aa2b6569412701827aba023100befea39b8783691a6f5e2a91b6a4eae0eaf3a4583a2f9d1ca44456055865cf6e34ee27302ea3bb2300199a441f207f240302047c435bb500683066023100f1aa2fef43a64cf0ca73b874b048cf6c5c214048a58b693130dc3ce7386a960156e932ad3f278008d4d62433ceb951a10231009483887ad35bda4a6189301871034372da80ad6df06a4ae3c1f6fa97d127894044af471a7d5ae83a43827f49ebe1a94b0302047c435bb500673065023063363e9eba21f445db6cfa156c0772d1a2ab7d348fff85cd800c954e57101c3a6bc035337931e767286702bb5193a8d7023100b4f62fdaa976171dc5d3f1147b2f2eb66e45793515905cf88bf729c44729e960dba7d6b77662e639ccb76dd682aa4b4e0302047c435bb500673065023100be67a8757ec1714e3e1fad0857034b23c5e2ec97385445637757210490d29527f583d9a4c1a71e33d27f41c19ab981f6023031480cd63551a995c29f22a18aada3f6b9d78d1cd3f5e49aa4c010ae729bbf6f9be6dcdf4c307cd8bd2bed1271dcdbef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230788cfd21935e9decd9195b71467bc4cc3da88fbadd6b2177a249bcf7378575a47e2abfb92b12d027cece4e28c30ac9a9023100c3608e09f189bae001415537d7fd3acaee5d85f00c8dbd6e1b024d60b6576a669a826911ea435753e7e8be5e07a98e3e0302047c435bb500673065023100ca3fe770976b9c534341a6d8d8129f3dddf7ccd299b535ca697642c72c8883fd8b0602868ed4f0ed640db8cbb46e1ef00230141feecddcb583980c8f1232a311d8ee59c0c4fb96994a8e169394c080b001182f200f6da81f5463991d761970ddbc3e0302047c435bb500673065023071c91e7ec735864290b488eabec5d833f212a70dcae0ce9bb437895326ad40a78cfef18f2b4b28854482a1aea218a65e023100bfa2301fe9d10bc838fd879297925fff0c81dc60c68468119168b638d9d5a86d40d17e0c901998848f362c62795d50fc0302047c435bb500673065023100c6ccabd03616170d7cdb4bcf127164f1c31217c0fff84986a8169f44a3663cdce8ddf8b2e135fb74ee06150c8d3f02af0230082c2eeeebd7edc55127a80f0f4d662d9cc113beaf2aebe8d148faa4b377578481bd3b50987e7db7051d7aadd3178e780302047c435bb500673065023100e10fdd98da956d6347dd0712d5e47476a6e5ac1a5c52ec2e0d2f9f24d39c89e509feedb99dc9bfd7c7466ef7dda1572202306beb0cebd19e90a4c202b89a69b7dcb1100768a852acf3df45b576fe836360ffe4563b83f6ea445cebcaa2f0ea45ce8b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304bb462a9efb943712048c55078b847ca15e8c3290a683b1b5e63fcc972ff4c39ec4f4e83e00806569554ded8694c91e00230749caae1f557e087ec7feecd26a068ba934a22e426baff716e0aa463417ffa9fdc0458d75c30d87e13e894fc1572d83e0302047c435bb500683066023100e8e741370f623858d1de4075df40733c05b59f415f0cb5c05de34d36ba9a700645bff14af2de4a6d5918e3f31253e1e0023100bcf20a78ba661f25f41f5b3a9fdfdd0fcdf62e98d763f9786f7d2370070e1ede4b5c09eff4c0b06615617fefae5004d00302047c435bb500673065023100bb761ba6456f2f1f07fe935487d869e8e96d00f782f7e7860c1b71512fa39a4d74db819d5865f2830bce21e922b9ee3d02305337c9eb5241033f5c888faba3d6c46a4587c0869c37c94e36470af5b0e35c7c791ae900d9ee4d260c7569cfc5389d680302047c435bb500673065023100ea484f109a33880b2a3b1f78415b1169bc07571829327c13408ece86d9522083bd27e957810a7dee0350e6e8e8f629520230284b0f0bc0edd4eeec9b3e60786fad067b42e537a1357db0977863dc7b74beda6f73a771d7a835a500288c580ee9ae530302047c435bb500673065023100e3aeb288591d10c269aeb3b99e100277ccf56ee5a972d9abe802ee157ef18f859efb8eba081a710b4f02ddc419ffd06f023007a18edd421b4a4b09a20f98ff212cd760ec4b0868bd18361d0426bd4645bb2c6ca9a706a6e7aeaccd404189b56c49720302047c435bb50066306402300662e9ca17590968d6e499d957cf97d2436321c067b183ed22477e85664dedc380ee645e1ce6ce94a7c9b23acfddb74602301da65b50802fb5df8bfbe8a6424661d9cb699f013248016481f0c2117f13162804f08ab8241e738502e54877a71c1c4e0302047c435bb50066306402300c8d28bcaaafa08f7b04b24801d558bc9179b574dc1b330eb89c816961bf925dd9a76b73396f9d6794238429783a543e0230430e6fa4e415ba85c5c63ba6cbb7fa347395d40fd56888d304cf28652b06dc6bb26294cd2d845255c2e55ec877006fd80302047c435bb500673065023100b6bc46a9016778927b08164ebbc10edc6faea8da01d312d048548b530aa56260360652422fbb3e026184d70a8fb2560902301aef3eba00ad84ad90f00523932070b8673d05eb9727864565f872c314a1b4388ff04a20a598f55f1b2446e4fcb024630302047c435bb500683066023100aa73804a73156e31d40115999becf5e7d6886dea3b7a80e627aac5d5b944df4afa86c3ed931b5310fdf2046c92adfd620231009053548b266efa3380d1eb7d88f7ed06eb1c9aa3555baf2b9ea42132e717c4a4eff5435b79dd34868ee7f3924a40a1eb0302047c435bb500683066023100f8ca421f0bad0acf0dad13694338aabf95e5fc40535875f724a8baf6dfffec0e63a7b44ac1da83e022c3a4f1cd85bcab0231008c367bc179072135b17eb9ebef5f547dcf32d7de90e8cea3dbf7b034ec65e5f0dfc30010066423dbac677f411342ea030302047c435bb50066306402306d2f3fdd3bb7aab2a5d1de45b96f4dee972730cf0149a59727789cd4185e2d3604eb937e2ab20cf63bee7cd42c590597023006af288ba0b4e158a2257c6292d852c9b053d2e81fdc65663a5c23823c6ba6788e48b4676457117c43711e0fb0084e390302047c435bb50067306502305d4dba43723598d8e60120c6dd494b53b142531ee7f763112c534ccf3c5efd923986ba4bb3238da3e7435d975005d31f023100dd35b30642544c0a09149e1560362ff515a64b627f7a3cddb8c640437a33146990223cd5a7f79060189b293835680d580302047c435bb50066306402305dacfa412cb1b52bf43b983c976bf556223d3d1e27c310685e53407c255680dfc38e85e5a3ad2ef59df26cfd5271286f02307a7de55e6f6835ba74f024698df70fdf98465a524a79f5d9b230b74f0a747dd83675b391940944cc7024cf88bd13d07c0302047c435bb500673065023011403182cd29c868ad790ce7847e7e64746bdd29baa6d2bbbbd38bf48eff013816d7df72d35a70cc44671a48128d40b8023100b4d4aa607655fc7ba9aa73b325cafacd7a79ce10c638a39ade9750793a7dc050d04bf304b3669cefb01bf3e3ed5587750302047c435bb500653063022f1834294590e586fdb709990b8c5dee4ae512509dc26fae23ef5fa7b2dac92eb3e426bb22c83467b58ce64338f8531b02302148693a1099cabd9ca1a9e77524a911385c080f1d8caa24411ae00037726f87642db2a819e33ecef695d5c13560f9cf0302047c435bb500673065023065807d4d54ef4a3971901fafdbaa4dfb4c089a63809a15d82bb9e2805b955677bc0ae88ac74ad8fa3d7dc8633c97f092023100967fb3f2f70394a5b9e216cee3f46839e05d8e1d9c4019effc444ddcc0dbf65e78e7c2ea870d15e607e0411a87d3a70e0302047c435bb50068306602310093f3d23fdd651619251654bf458e58f5f20b7dbc0c1910cb9e964f274fee229c8c07c16459a083b764d91e3177d631c6023100a31db165b67eff5f544852ca32cac36b7b7fc84b6bc2e4a283d59de5742333d6c32de9e2091ab7ce18a4feb44b42db5a0302047c435bb500673065023030388af865d12b032143d8e39d36533e8118a49fa2231ad1e43f6d2bbd26afc3f41905bf30e4e1284df7cd41101477d702310092a18b2463a21771652b89c63903234587a111a945f82f67ff879c2aa865919edec3462ffc621ef569efccbde9d4c0b80302047c435bb500673065023100d2580a9a5c5052fab3ce62bf0a9fbf7f53d5cedc708ddf0c7551536cc876f9f95640fb42d8dfa2569675f849424f23650230442fdc7f948675b68208d592dc9fd5e0f504844facfe11c4056c1f5e9680142d9b595d60b25d83d467989cf3e25124180302047c435bb50067306502306c4a8d5e7b50e1c587649be7e23559b38fa2a1b8f30ca8ea7afee64833604b84e271043a59b971d13d6986af7e76e606023100909f191f273823c07188552a062c34ef5526ece2800cbfff6027baa0052ba0ddd459a597a642665dc00d2f52cf113bf90302047c435bb500673065023040bcd1e53a039fde3f27643b5cde67b9ded4a7b2d6de5c2fd032fc986ddce586754c1b718f6686ac0493e3ef6d0bf335023100b6713a3ed99c1c171e31c9ccd17c19c39fc8ffc6d271de0e1cf6903f6d2083a74e2213cfd0ccd8178f045971f0b5fdaf0302047c435bb500673065023100c7bc334b80cbb313a79df33a06faa190c336287497296c659710d11feb1867376e5a3ce96d97096fed9120456a4f6df1023058efa5897f041a0be543f39dedef84a02be1dbd67119ef9b4389f6c04d81137d3d8b76ba02aa74dc8f7af7147e4d715c0302047c435bb500683066023100953a6a839c2f298c06ce5ab4e868e348ecbd7a498e32b42d2172f4379e4882bb5bc53e5a8982ba61c4fa6e0f55bd6ba1023100907bf3aa46fee9da7bee3dee75e4652417f0964bd25ba45086081f988ae6109b9608cb9e23e09c94ff4141a6934bdf1d0302047c435bb500683066023100cff8256415e0c7d5c3557cd04ae97bd194eff441c789c975515a5b2cb48b4a6ae60753897295e15cd01b75c207eccd5b023100dd02c70c0221da168c31e2cda497e4c9c9d649e65275c15ee4ae6b4221a4250b54753740eba67a0de1b291651d41ddca0302047c435bb500673065023077560bf9d56dbb18d08edff16b1a8df2346ea92a31acb5f74c23fae1998326dad7dbcc5ce794ae4d2c56b9ab6abaa8ae023100e931f50b5845ab5ed280dce3ed7928dcad12d3f44ec7c8e78763512aedb13906f427a949861024bb3dc255b037e28ca50302047c435bb50067306502305ef62775f0e2fd847a0cfb20f74192ac58e407a3a0cfb36103940087527d80a86f69695063727efff8277389910dea31023100e8323a4b0af6e295a21ee2048e5fc0c70f1580a818ad4b77f932a9be1b81339e3cf9c9a8d59b8614d5a27d831c20d2240302047c435bb50066306402303478a7fd3c7a80158382e984023d535db1470e422c23564303063ecd0eef38935144318f0d936ca1536eb1c5b9fb9b36023079ab9c7bb8b1594558fe38c717bec46291b035c90dccba540c312d5e07294c720762b8628b2e2c221080af0b7c367f5e0302047c435bb500673065023100df6f6426d9fe32e5e41114444e30b8c1a047aebbfe69e5bc1c8260183099efd0861dab6030a93144abb70b7053857440023053bd05b858bcd73d6b3a4e8e164b8061c2ab137968e9c5a58d480167de44277cdb14a6a9f648265a2da0e96963fcb0110302047c435bb500683066023100805f005677d3d1f053a0ccf52b410d678894f86dd6c32d7416fda47c21744b7b3d64772449032b27df255500531ce891023100890660740585777622c1195ad876181da22cca372653527fa936f6220bbd6862df6a71bcaaadfc5e99356a02871f6f6a0302047c435bb500683066023100f1fac7b3eaee87a1b028a7d2f006b9a2fae3a94af171907c2e984c0ad071676acf97d3efd39a1c240690bfdff7b88cd7023100e9b72ebda1579ec3b3119c8af501ad604ba7c10d33d78ab9e6666d3effd72c6665d8cb5c00e78e097fa6dbba56bb08780302047c435bb500673065023064fb0de708f8f0eac52769d84718eb2111df7f8a983f435b64efd8f5469cfe9fba3070169db30ab7b5a01aaceac744a80231009044ceb3d75ed042bfc09becfe89081b29670a55605c5eff0739c4407c66e41e9f6b0bdf2d7375772567f821ddd10ddd0302047c435bb50067306502301d947aa83db0ec9268838b7eca266a6b0d3971b7ea95e124dc7031bec6abfa09329083a1e995ac824343fd18c2da7b30023100eb7d4442ec36e74f5d18f04d09bc3e9d01d6ce97c45833547de3763b3bfd1a93acc852db0f6dcbe02edf32a107c9a98d0302047c435bb50066306402307d8af3f0c30641854aeec91d6b569b4ab0193c42d5fa45d2fdacb87223d584d92e3d876ff01eab4068570c7d6ebc22d302302b75784eac23d220a7db32a8034f11c5e5708588df8438f480b7c5df69f9276b6d092ae9b67fc8ef48de031d3b6ecf7b0302047c435bb500663064023066f9846bcf3b681aad5080d7061cdd95c5b82c5ff879ef584d07ebb50b936830b7e4a6501388f7385a9ae28031d9c26b02302fbb1b04d7e66192932b0dabe5ae9da95ac5bef595a176613e5699ed51078bb4207ed426607d7953616cec76776ea69f0302047c435bb500673065023100eb0519beb8080fcabe0a7ffb302fdf3b7543f77e8a2007a31afae8ba4d7f0410b910805c4ebf98af32d64f93df52af3f02304032edf5d7161c69b3f13ab5c6dbdb435edd0d866fb8f101bea516ebaf481b9ff5f4242d68cd6d389c4d31292ff55fe00302047c435bb5006730650231008017131bcf31f4e1667a3ac31c261c9a1aa095c2ce8d92925ddda2b8d28140ae7df1943c88189fc5989b58f1f3f5d01902305455889943d5e9943f8d8d569bcf4e2388c443578c8698c35e003d294e8cf363eb8672a14a40189e6f218510fd280f150302047c435bb500683066023100fce147dc7d5c9381ab122a97b3a54997eef6d7bc7682a05c49545469cf68cb4e9aa7da4b0b3e0b4e78587ab80f8ef9fb023100f2de991851ef8608960fa361aba35a4dbb6b9572b074de963327d501d7b59bf8f367c6272c8fb20f5e8f157a2e633b2b0302047c435bb500683066023100c3e94e4a9828575db7f05c7f447a12f54627f4cfa2948d03c44a074c18305247dd678c4083f7fb022641fcc84d2f76ea0231008a696d9cf5167142251c5462e6502fc3d9287dc8d3596f03d9086a948aa2e9dfa7cc0a311e49dc8046d4a6ac98e571df0302047c435bb500683066023100ec964130540c6bee8e073ec0b9db6ac0994633356efad9768e1619c9bf902ca27597b802e6295a95193f2e16af82d459023100f590fbc57d38b0721a362a63459e4db3382c2f56fde27866840606db08257f4e4323444f58adb372fd3f5a8e958842920302047c435bb5006730650231008d9e0f717c7cb740010b21de71f37117268be375b9a86863bb97c4921a827d8c2f6669b5fef30f05e0cf5327f048ec9602307017452903cfa6b46cac80c0330a7f8b324773401d7ea579da4eeda8f858e37f67dee0bee0efdbe42a363c2726098f810302047c435bb500673065023100e5944a37010c01af2bb34a9868754576746139c72d11746b9318e0e9e2344ddd6afac7a67278574a94299b9826884e9f023067d790f396d295d84a9f8851fadfd44289c65ebd94b4fa2c73907e9019959d8246426ff19f032b22b1c98d928c5d88f80302047c435bb50067306502306fc0c720c0818d995c176337689411ec2000c2057f28db7ad172f31dd30c3de23436945725f208e4395be2aa67ee1aa5023100b5522a0de8d3c57409248f61f602bad56bc713469ec7c89560af26b1195d3e6e77e010cc0968ff09c7cfc905a01178590302047c435bb50066306402307123105bb3ac82657aa76c065999ea5547c6a4f536606903b41936ab3a0677722229ef3f4d28df6edfd4282577e1c06002302f1c34c81768f0b40e9dee2e950cc432900a83b3e0cced78f97ca878df01cc1975a78544abacd019638a1d022131c2c90302047c435bb50066306402300b4f4ef159ba8ba2524842c61309ed127ca45f6ebd4d7bbb37b1a0e8aa7de4b3e848b0cea60dc99ecf138901d6632f0e02301f34c06bf1e8f29e7a537f4c1a10ce440a6faa0907c4efc92d6a015928d2fe26970a2163458a9519a723b5d38f0a8c7a0302047c435bb500673065023100e4dff3befca91b127798d54536d3a505e4e7896a802c9ad03b18615376d04eb6a06f7da4cfac1e951c07025a1cc2ff600230310f291eda780794d962b368e7176777c52c1b96531e89b15ef826a2533f8cdeeeeba7ecabf4692ee8685d36d71860560302047c435bb500673065023100c73006fc627a620466ec8fe35212543b398aa7a107541cebbaa9e2565f61d3ae2d9a98e002f534d3448d8210fcd025dd023051eddd4cff5342cd404f4e99d38bbd406e4f83abde640a16dab3e10ba18bb9dc3ba9cd6a136d81c88fc37237488915820302047c435bb500673065023100f0f489356f2a184ffe2e091d1e950dd3673dc2b438e0fe71a214c72ae7f7974af1debe6d9f1516a105d622a54d4fb354023053b1c1471e798d9109138c36845afb555010a167e13ce3b50a439beaf3886a9ab22ab4f15f89a4a53ebf5414ef8663620302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305487cfe26fc62828d371fcd547c59b83056e7edbc22a786c8afc790601a7aa0bbc5bb808a5f2c9a746f7d1980d033a680231009793b87097798e0a12f011a59c6f1f8834a8a4c8db9731a70a8384711605fa0b5a11c593f4473e3fb730925cad9c11900302047c435bb5006730650230339901265f2533b277bbeb2effed3755041af37ddad3a778199452a4a45aaeb69cee9f784247fcbc4ad30b566464bc9f0231008f58e6884e1ec6649fdb4ebbd62592c76f66cfae3c19284f72013a93cbdfb815614d057a929d680da21a6ac901f11d1a0302047c435bb500673065023100a56fe006d6940e3530efce557679c2677030b48170c9c7903a3873164f94a335729f07e4446bff2509144f349527be04023052f6b0a40c03645986b64c06d4ef705d4c9cafe6390a27a6fe846357a4d2b1ab3e7fa80331b1094670af52b7ef0faa560302047c435bb500663064023039aced8b14a9a8d5613b7717b0cc7dee012a1fb8494ba756d82a81dc713e9e4a4451584340f8dfbf01c1b6b5368be86802305382d526ffd55e4c760c534499ed0593501d45e4b157ab7de2a524ac152d7ce76273aacb220aed47ebf326192ef838740302047c435bb5006630640230476d02b63127ce23fd6d143d70be274aac65de6f37149d053c2877f851da294fd5b6b3800c86c419ae6eecac5536f67f02302221ad9b6736d8230e3557ab2e1fea6ed69138efa74f7af7ea5b943f00e0f45ef6d90b7c25322f4b31435518e41ad4ed0302047c435bb500673065023100866ee4959ed56866a84e5a232ef7c93b8f6468a46a911a1ca567d152abcde0996004b05d41b7e285389fdc644be579dc0230506efaffe9c305bde3a5218eeaa6b6ac6e8271d315cb038a857d241b3c5ed171ce4a6d6cfac89b35936172b07a5b115e0302047c435bb500673065023100f6e2e40025580ff7929e0108fea77d8e557b196034109adf399374d628ae1acb2a3c4e5d36d9a25a996745ab754d49910230029b60c66efb199e799ebb81b3efb9d6df62ea05d973008a7a507e98976d3404e2c38326f02a957a68bde2ab75e98ed20302047c435bb500673065023100ecab1c98283d6d6bca4f1a699677fa1a6c508b5f63e349c6ae5270b524f7e64838f7ebe950dfc7c60eed00c16ed74d69023001848b997584a9caebde3aae13c6e90c714e6bbe39804d76b3ee2b960b5506e75b28588250e282d045f6465c3b162d500302047c435bb500683066023100c79dd7ab35012522f7af6c7870f813f2a0f230c14e98d6ce292e1923284480a4e220518bf68d40f077ab6d350345702b0231008277e75c98728949116f869c2626f9bff396723972cb170fc5d3642c19b443d724ffab3a86f3eb5b5dc73b2088b667ee0302047c435bb500683066023100fc0d7f6c8ba762d98db1f146e668891f7d232e727e2ae8dc04424f69182686f5c734a1ed34d6bff40dd540034f3b9c170231008dedf137ce8948ca1360dbbdb2d7377214684180ffcc664c9bd9c84d987a2f0b08e7cf3ab5f8e851f870527bb82c6e320302047c435bb500683066023100a252fec50306524ed70ad886522ea125db15eba6f2d525be8a16117787868dde65fc25259f2712e5b3a6f200b2d6453f023100e007d55343135cef63d453489df86171a9d008f0bc5042e1fc67b062892020e002f17a32f3ebd1c14ecce49ce236eb5f0302047c435bb50067306502300c22caaec40267ff10237a9c3542fc246034e07ab736c1635aa334f873707c11ed261b940e54b50e067e7f61ea3df3600231008b41dbce491a65288aff1e88c3502021cfbc96b74671a4baa580a9b4fec89e701f4ee123b866781cd12ec49949026a790302047c435bb50067306502306664bac3368e206fb8da7429aff44bfbbd7e5750f4317b9ce2185adaabc64429af4060bacbc5a1bb14ae259bfdeaa0f6023100ab3b8201433809f6032d050e2e0999d7e195f9d76fa908aaa84ce9b48ca8482536bec304f717dc95b389a0b908e5c1840302047c435bb50067306502301450d0d274d7093dca28373e01fe381c7387e0c13d9de1d9698322a7e4a7de1f8587017079b7cd5b364d62658ee33ff9023100db127cc8b7b2b498263c55265db056f281e8eb08a457ba15107fe652bf69823f55d78a7d4cecc71602c3108668a62b5e0302047c435bb50066306402301b981b441353fc5b437adb2ee0bff0e5eace1a270089e1914f7c9dbed85a8c9e18f65e6909c8bb66560139fd19c297c102305dc6855a3085058f7314d3291dfb6bbbc1d25865a71ca23ac136abb3fea239edbabd26a470161577e3740667466bd5c10302047c435bb500663064022f787ceb944d418780adb38e86fc098e08ff011657ea81102a303728ae3d33d23974df31644592ed9650361fba0ac23a023100b1c747416ec150ec10d21c087de18dabd82f7532f70a0b8dc23f8bee77f8140a364e8804c958a9d48ae32eecb0523b280302047c435bb50066306402301a5822ee1e2e12977b7d62b71f2e927d44e6424c778bfd74dba3682d7a6fbc2e93287fd828770ade315f5f92fc8c6c9a023008d72337ac5bad6229e4cda8d3b4c57695fe42eefcfcf09dbaa66b212db0bfa594e9959c2e2c30b75b56864fb2a0e5c70302047c435bb500663064023022ef5594386afcac7759a35740dae672ce18f3c1a2ec1da3cd5c86e2efb41bbe70d962169a4b771353f169c5b4a1ba3702305b5de80dbb925bec7a8157961045cee80b25b8c15f591ab7c5a25443315b77fff49c47611ef4c63c2ba0667012834c6f0302047c435bb500673065023015ddf9c1a91be50c146ef002621a926ea1e54e3a7d013ebd76f08c2314c5e44303c02a423f99fe6c4360b0601464d2350231009e73293ca7e47d68d91f341ff44aedb4008b5e7dd1caf40a4fe6cda355efd8f7e1bcd28c202cef301c1595bcda9540b10302047c435bb500673065023032ce9cdcae0218665536518d7a4619d65aa61cb54e959b87c3ea9e8fccce020f9fd0b9846dc15a0074c981acab8c06eb0231009e9b45e6974139b1b5050cd8e6c58939191e5b56c323dabffa925c2ed4ed8c16fb07c4053d6c11dbe0a5e0085e722c680302047c435bb500663064023007ab20b97f0d0a23063fc371f6d14b194b6707656fce5adbeb356a626f1d3dd73e2f3e145da2b9d3e8408b97399770a60230258b46c85bc86fa626ac473ff06862805beee580e84f162c5321990b3acb6a49874207f2fd76cf5e8a3e3cbb2a884de80302047c435bb5006730650231009395984a2e3046d4bdb84d7f91071432726361976a2733c196b664354beaffc9bdf46dcee927f2ce6daeda3b0b408f2b023075fa9020414cc3bf87884a6be5843421701c0288a206000ac55171a6281d5e6618ebbc201384d3613650c561fcd230aa0302047c435bb50068306602310086233376e33f6349cba8b98f0fcc0a2d2b77dd98d3b4ba9a6885928ad86e3af503ecd2a5c6b06e5fbd0263a26b26f6bd023100f81c6136df303ece50eeecb2d6862bb48a9fae088982b6f5380d8f1c9bef5f68c4bf4e805c43bf198781f9a27ff849580302047c435bb500673065023100fbb0965ef39b66340636a96aadca10a4374f8400f18352601b0729d1f9e585bf0e9c338084af4b8b15d5ed05aee7bc2402300f6ff7b71b570f2114ee8a2e6989c177e928601ddc63464e2f9925c1ead31cefaf39d8dfa1fe6d82f913092e3c5177550302047c435bb50067306502305edd37887925e3b7ee092d1293e8f805f5ab3327b1582ffba483c919fa6b4989c81bd24be535dbd9df836c1189271056023100edbf5b972783b75187af9e1cf47694b586e68195853951d3888f7d6ae97622de355df19431fc0577f08356d5d370de580302047c435bb500663064023077e1d3062703cb762180003db6dbaf1e1e7378aaa4a22d467ed16dc92848a31d7500bdabbe1979d712d205480b35d3360230334672ccf66ad28924570c3da0e1e4681b2a28a559f41b6fd8bef5377335be3e7e1e2fe3d5cf4f7a3c94c5eb7ee16f2c0302047c435bb500673065023100a3b251198f766c59f4545593bc30f3c1f6a11ba9fed11862d20dcda01400c434aa4a0bc37b6bf56481fffe152ea3e586023021726e89b716953305ffdfdc6ed2cf4f46146e40a76d1249fe9446abf4c0c2392db38d3f1948c647d0e1fe32f3aa6fbd0302047c435bb5006730650231009963b4cda8b91365408a6f3b76abeb5499f3db9822ce0aa0e6d8ed16ae1b423d3e98e06f5a6c58114e2b67632b01081002305937605d9fdc41a5fbd81302271257055a93f7cdd78c40e21b970f647c44f97a9f1ac8383d90f479f3836fb0d42337dd0302047c435bb5006630640230628d4f8d3e8ecb4a5fdff8287dd15f65522c73a37878200d3e1ae5c6ffbd016307b722098ba39484acdb581fda32909b023075909b5b341a72e62cabfe9fb21c8cb2c9735d25ef966471507984087d93b3717a242815a47e82cab4eaa75547b2c04b0302047c435bb500673065023100d9faa202653475dd759e70c00719dffba5969fc9b174dfb289f1cac9bf1b4267d6044de837c3d1f03438337a4cb81fb4023027ad542defa000b7009f83cac82f919549d4c6fef40bd930f6d07e58cec18a986b1de08029d4e5c665af0f0a41653bb10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a7b17d19c513d281a01beca5db283df6f00692b051475f800535ed073630077c9de6292237a243dd77153c69ef2f3ccc0230583e20422321220a271b6771e6bf98e9feb71d78f10aca95e18d480d18eee33c6c97ea9470499809d0b478439380c9660302047c435bb500663064023075e032c3f2fab4d32d4db979b89012206e2eeba893ae3eeff8bf8c27553bc0f7e3dfb08a5e218a5809ea2900c13d0a4d02306880b18b306831fe7077478623f23161ab814a7effb531ad605bfd2cd90413b5e53a630ba622235a08d74919b6d126890302047c435bb500663064023013ed633a0ae0c0af3a42cd7d49354614a804cb2342622ffff617fc948b64eae54598162c6a6252c82ef68c65ed7ebda5023064dc558fbe0b9a5a6fc02c8ebd84cb7be2e50625eab0c0c1db99c80ec51e66201344c5c4807a8f80d04028a97f48f9100302047c435bb50067306502307982d8f3165fff10472e32bc490d74228e901e100041f79b65d3c375100d89adc742a6cf64223c8a0c744d5eb5cdc2840231009e00104409371322d574ed70d7fda7ceea2658ffa772f861cb7617f5a222d6b29e8f249ae757f1b1cf9a3c32b3c4fcee0302047c435bb5006630640230510f372010444f9d01fad0f74b540b6d1bb2a0e1c42e87757713c3a32ff585e497725b996e6c0f2924cf8fc0b30ba53c0230216b0818d67f40b804ac7c666c5ce9ee9b46cba69f3eb983f17e994ab09402f3bb54f1a9657fa72d00bc4e6e718ee9720302047c435bb500673065023100ae3dedd85da75123b2bf2b5d49a4390931e21e2c7f8c0bbac8129d02a11e5958103b0389966809f0140aa66d95d816b802304477389ecbc457067f54925ddf05c99a0dda3ca8f4ff70af7329f996179441409644a1f5550e4f0f68b1bf28bedfa8c20302047c435bb50067306502305f9393f44161ea9b7adeef65e06e8b954d256be1695814db45a645c36b492d876607657b5360fc524402e5710380bae1023100b8ad455b01ebd53b8ec4d8b42e5fba7933e7a86c1a52f65ee83b750d54246c94c12f1d59a2bacb691017d255598329540302047c435bb50067306502305487b3c07b44234fabb97afa4253b77a2732f23d70aa876a235b596909bf8119391bd59e5b1ba4d56eeacd361c29d6fe023100ed5e14f038afbd9b5ee1c5b926dc750a5ac83631c6841998a9e1611f7fb110ae01fa3f7336447adfe5b8e08c88e19a260302047c435bb500683066023100aa2ac4b4ea6cf968880c36aa6f90976e5276d50bbef0153ccdf8534f2817a3f10632661f14ab5a10859184fd3e862641023100cf43579161a54274e4477b148478b0d2d517a66a554342ed138cdac0dc1fb384ef92f97645477f0237d60f16e767c8780302047c435bb500673065023100fa0f28986f38161ca9ed6da49407d7773b9966a3dea6f5fd4c2b00ff73d169905e6460ac9c8c738616e7414c55d5c76c02300a621038432e9ee3c15fd109ce9ea35ee00fe73d526205b8f17a9c98f97ad680b5d4336e7e1f5b3051dbfd4985e171500302047c435bb500673065023100ae901e7870c0f823f1fc90c28e16c3d7da86beaa5705caa7be0930859a380cca791d714d9fa89d2c343085854d8d51cb02300b7c9dffea7110417d0475f99964d57fd4802f66b76659e534b6e597a6296ff31a55c8d7a2d7a876288b12c3bc84b6d40302047c435bb50067306502306253bf2f99095da242aab0891ef895d3bdb51183029e516450eda006a62c113f830941383a48402be99ee4d8482fc9a10231009475b3993ed5606f6953d4469b3c0caf636fec78b356ef6c9b6776219ca99ce03893cba76f9b3e3d1405ac7b8f0b48ef0302047c435bb500683066023100e1e32dca065b63545dff232e9645ee85fa9466ab5916c246b9156ff61c1739ff2f4a9794d07653649e5d675aae67114f023100f119b0e6796cb0544464b049a749a517ce638ceff5983a8569fde682c5ef0f1429a6f4513bccdfaa790d85a72ea2e2d80302047c435bb500663064023039ed84f244c2a8ff87e561afa41960837542b6466ecb70449973e0e9748878349db561654bae9a33eea49750adcf4aae02301885fc3b4621f8811f5a244f910dc81e30808ac319d2806cc3dca6ca65ee5383728031d22ac80ff1195b1ce410d95d1b0302047c435bb50067306502300b79cf73801331e1f2f90015ad0f8c55d79487393675f8c22a8b45be0f4efbfb92b3a7c66fa4b0639a4bb945dcacc4b0023100a7391f3e429d6a2467dd3608e480b9cbffb431499b73b183a0159265295825485c392648a0e1f7b2c9718e7d15be1d1f0302047c435bb5006730650231008423b13ab856688a05e5b0bdf5244781981b303c8dc1ac4fe145f8728c46821719207279b909134fc54b6410c3f7d3f402301e061d1c80a46f3b776e19739c215d9fbb6eb8c2e39039b32b5bbab637dc32e40c76e0d8e473e472b09ed8efaa9e6d7b0302047c435bb500683066023100caec30779415a1afeb2ce12b48d2f9a5ab096a69647a2ba476d05a1806a40435503951857081122a9fcb886216ddb8e90231008d0461c1dbdde6e0bd6d5c76b71ad6a6c315973c3fa5a95f3e71898fc6e82c2a4e711714744c936a2b9c1a31f12224bd0302047c435bb500683066023100e84ad7481ea82c4a23bb9ea0d9f3ff31d85bce085cf0129b59c5e67b30c7a3b90160f59d25b0447b69fa078549a71a91023100a5603d181438bf9f5d736d62e3c72ae94926094f7a2a6e3b1ca561ed1895f6670b46ffdcaf11392a77c3b1fce53870c60302047c435bb500683066023100960a878ccd9b9bff7577a1fffd88494582a67899318b6a8ea905a8a92d2f7d47bff9d1dfeeec4e2c1eb9e72ba94fd17302310092e0a82fb9962484a86b08ab2956fa2acba19f54cfdb01293347c3b8090a0b3de62e04f6cd2633bf1ee1aa81dbe498600302047c435bb5006730650230763864e66f4c44c0e83970411309adbf99a2e63a8d6d8a197251d7c123ee17372767a86d88d1b674597fdc5fa4d628f1023100f3d6379433fc41610e850f9e7527c20232553e124db95b4398c3c8719a3e8403e01dda6d5e2d3e6e29dda3140504def60302047c435bb500683066023100cdcd9498560a671893a7551ae0c7677a1073cbbcbb6ea0fd8032459a7c490182106ef8ba3594aa577579332e57f0a3a6023100d6444169c77baf0138d4fafc8c129e13784d5228c00e30d21f27f5f6807ba28e6110e07810ceb65fdf6692840d39a39e0302047c435bb500673065023100dffac0f4138ddf50baa62449f10d24775b8df36554bf5280fa2ee751a8ea552fe2f31ae84fa15e1ee597b7538e925ac602301db1ba332190cad2c75f0a97f21e224cf3ba4af94a1a7eea92c03b133688c8b3d7d6d05bd7435a30139f90d75e69a4560302047c435bb500673065023100af10eee4e087827a518604186c9d77d3154cb23d9bf9879e38a6d1f1a5cb6877e60f62341df20d484d436c39275513cc023012d8dad22cd6904ccb8e32cafca5820bbabc237a99b881df989f4ce22303b298a5efa9e9a31050798420fa13ebee0dcb0302047c435bb500663064023014409b947117679b516b841e58b6b09e948989fbe684a575e3d7ab526e8eb37593137eb46ec814769cc60cd5ec6a80b1023003b325d41183341c0647f5a0fb4850c555c9b38010a2f6806f5f5c12fe7cffb94e34babce39f3412780e1a2889dbc3970302047c435bb5006730650230348e8495d86d829b6b53b4b0b5c4bfd2080284326b0872eed9076f6bee96ff6b74f117551f14a78e66d7f0c1d159fe7902310097c3d30714ae977067cdff9a406197b377109b0d56e3b1393119b513f4357dbdd026bd6e894ecdc47e2e8e74755732ca0302047c435bb50066306402304e710fc1febe5c4b55dcd3d1e1085fd14f17b0279f780f5ca75bcdbc7d594a985a6a901b727b816cd5e04c8d328e61a702306e07f4cd17e01866608f20647e29ad57ef7ea4953adb8879c4f5c1f1035a9b9f8908749b3a7744813272c3ec105ff8ac0302047c435bb5006830660231009f9a0f05296f23015a8929b938719e873f44f8ca13b7e5db30aeeedcb779ac6843097a15ccc1fc71ad3360974b25e5dd023100d200240f68abb838e4f8723b1602a97a095add3e92f00953a00dd8932cebaa775fb6cb043351db8cbfe49a5c33da77370302047c435bb500683066023100c714f3b4ffb5b6057a8edb00ee76cd84a4f075031bf3d2a803867fdfa7e923a1f1db1e436ea46a4aceb493444dd304cc023100932eb35dec150c69b54887b410b6d4ea679d2cbb54b77c72f8df68f50a22a11601b2d5df6594affb65b19f7f4d7cb2100302047c435bb50066306402304ab00ac9dd084848e4a768f02a9cc9c2c0b115978caa55623f2d2a5eca279badb15373f562c8f92caeb0921ce421238e02303406f708f1d4c920ec9053271e0ae12e15f103c2e56e44edc87c03f4b242f7bcb011912ea06e5acd4271c5a9206097060302047c435bb50066306402306311e7059e4a99da4d6912abe3247d4198ff630f8a9ded6714396fc85bfc7327906ab04601af7badb7761109e3830f0f023004dac05340f6058020851e890cdccfca420c5466f55626e58387e3389bc113eba2e77faa6dcc3e6b082aca958d10c40b0302047c435bb5006730650231009c7feee3662b536d20aec5e2ee118933e52f8a169ed9cc49991619096761629b92041bc4da92584aa64788915bc1e8ab023061bcb7c64b0dd5c2e4ee6fd30584344de12a3d276fe25d708829552184387bc9e07af7afff7bc07a0c3c73f3c29299290302047c435bb5006730650230409163c7d63480d6ccdaa03c7077ed9b2875750d7eb258ab8024470f367841b1bcbfffec2e8a825a73d133adc0d67cd6023100a2962c6882b3c6567f16fea91a1b4fa35fecf35c350a438df1645c2915c6367f00d5e3500b6d0a238b0a51372cfcf5ed0302047c435bb500673065023019bd1908c3cb38e4750a1a5ed527d66ecca9bb6db4c968bbc2750e5b1d051dd63dec3c1f62b4a288a8d98a7e89cba06f0231008c11bc27f776c0ed46d184862b5b161652546431e5f6df79e46ee005f7b3660a0bd41b56dab7e8a100dca9495b3d4b900302047c435bb50066306402306a80cc6feb3c6fa31909af98d0e3b003e76efbd015a15b749cae3b2f310615b299bd908e280a864c19180afe5829e87c0230492a262d963ce22d2080f1b940b34ab8c09c390e060a48e9cb244407bb119b8de2b0cd97f3fb7e5186b4b27c20d663ce0302047c435bb50067306502305c05f1d4bc3d4f47a190707e1729cf0cae24cac0c3607beb0ece67568eb23019650964124164b2f88e5d7068405fdebc023100eeabc2a33c98919f73da6bb8f4007f7048dc56835e59da1ae10e0fe9b9d42a9859ff76bfc10a5304aa5ea863faf4c75c0302047c435bb500673065023100fd92b4918bce28b922c689b6210844a102a66cd1172d2061f9002098b336f9f7663a4ade39cdda3fa0fa969e4ece0b670230183266e07a8fa731b5e51dc7623abd6414d3fac0e790ec12a8410961c9f5866b37442d47f621b30e328005129d06d19f0302047c435bb500683066023100d60a67bdc5b95b2ebda786aabfc8c172d6b29313d2f84b2c11c7d23ca98bf02b65e04da3bf6efd5605082caa2d9c38c4023100ae4ec593a95ad637a21b407a5308c90d7a772a8c0f06506cd84ee1ad3a26e3af65a28c43ff24252acf3d8658967e22e80302047c435bb500683066023100bacb94d066843f5129ac04ba441bdfbcc61994d65e484a3361b69021d63f1d5214220c39655deab5ae565cd81a2f7ad5023100d4144a3fcab05565155a8f78ea9a0eacf8ec1f604e83a570cd99d3ee200973b133bdccb921abffbc0a6283f1813fcd630302047c435bb50067306502303ea306ba0aa11b7df5348183fb4f9f034993cd0af01a69e24b79f300ad987eb042526d20156eaf1fd4e449badd0929950231009d383c0c3b26372e67afd783719699827597355a3f401a5cb27063768c916ab9702e04048f1842964b0143b7f7f4a1150302047c435bb500673065023100f4f27927f6ca85e19fc0eda877a06037c415e51bb0c26b64153576235e449f652c506b1c43c9694eab37bb55a6199f1502304d5b0a7d9a911ebb2d31dc14943ec2b0b3d89f336968693b0518f54d9c15ac4d49b2ad1e14bc3d0f0b52f8c183dfa2c70302047c435bb500663064023058485789f2335910c634b7a73487204368b542449fdf322141760500ecf225917c916ea1c83ac7dfca153ee0b23649ad02303958c6286f4d202c434ef9393328c9c801e06d7b1a4212de28fb4c1344807dce24419a6b53739783fe5351c3b7e1e6b40302047c435bb500673065023056ecc7715ccd04c22d7348ef55b2ef3213f197a6e34459d99bff564ab41722af3c3279b96ff9d3dec39d04e669a59a14023100fa6a039d1d7022a00c78b3219451d3ac20d9f514cec93772ab76e95fd766e155b84505377e7885f331fde161084629790302047c435bb500683066023100f4860e555b4e77ac5acbfced841691e9fa22e434b9fe378681b849e750e18e4c46aea40b1d61a0e248727834d3ac3b3502310083c4f1b8b665e59a29dda73c35381cffbf45834641fe76c927406e249b2ce00878582986de6f9d9f5e1798d31d0727680302047c435bb500673065023100dddefb5f95bf657afbd434ff67766e846308612babfffa6bb3f95e4a43591bfd2b032262e078d2355ae9d19706d888d10230031bc951e6d02b514c462e0c6943c49522a25245bcffa8fdaf795404b1c3ee9a4481b6bc02372136d41ea8d2a91bc26e0302047c435bb50067306502307e1cf69aaa65daeee71d597b8a9ad4303a11450e46569d848535dc977098a7673bf09ea455966393be6cbaa1d9b2cf79023100e32c296ff768bda2c81f5ec8df00b6114ebc4a31c372f0f111041bb607fa739d2ed834145e8d5884dc32d55a2bce250e0302047c435bb500673065023100b5929b4d3a5e4aba4a45d00abc356421426f988c000fc8fca94846b62f7cfaad9898d2e816acafdc68d4ff1d94fe13990230263259ee125ab0ec7bb41b0639c3e5e8f4b9f677099e3fb4bb5af1140f36ea6adb8e6aa032b4abdb14b046c158aafd210302047c435bb5006730650230221770cb6abf4737b222916577def934acd9ef213c82144a94124e1e3020cfd02fd2089056fea2d127685256871034c7023100f8e9906a22a9ee14c5c6e5c32ec821a424aff4334b5e6660ae297de7c5b6126ff852527b4cc4d26e4733654159e9218d0302047c435bb500683066023100b0150852560cabf183fae520afede69fafd8c15f504d9612026febea90f49eceb8cc4704a16020b4b952859167499ea4023100bac1f92f71c6ce378513db0bd7b77ffe6ad77246d161d2728add01aae0bd8760e23ca6a87d640d2d775a13b8b403f7320302047c435bb500683066023100d1d81a53f5797cc87ca26b7182a9c8b990140ebc15e269177097a120cdd59d0e7ceef628a878642e6b96b04c29ce318b023100df963058133dbf4ff5368c10dd279f0783ceeb039cd37167a06462dd7505446887bebd36802d7dc038b337ef726a92e30302047c435bb50068306602310090d63a91c8c13a7adeb72d8f0f7ec3ca62c925935f5ac48554262fe676bdad27cbb6550f39a4fd9e0b3a6f68ab0fdb8e02310094f22fb645d7b53ebe5693b27e40ca556286d0b8fcbdf2ffcd89fa8c8f59e358dbf4caf14ac5c1f019d85d2eee89b0460302047c435bb50067306502301a8d224a9137d141510fd8d04c893940f568799f69313de21b5cef159dda3b86e31c6e994f427e396b5b997a8b3a8fcc023100972701932080dc637757960f154b3dbcae4f46669a9c20f963b332823f6b1a2a43fe40efd589b2e445df022b8d3c57860302047c435bb500663064023044340802b662fc7d49c1a9ae0cb00b14cf9a4c42b31774e69a5b293a58859db5433dcdd8218152ff7527fd802b440e6902302495c45735ea931d8044017f5b64b318349e6d20e22154fad9d6857ede1e75756c7887a35d5b41167b2567474fb2faea0302047c435bb50066306402301a9966d863423b5ee586ca3f3416420a07c2ab7abf884db1964954c310d7f61196fdb0892bc50f6be9177ad782967f020230613c8f50c85607c5a1e045a130ba4625bb4ed815b41a3d45739ad2d1143e259007c06e8f4bf8140a59785d004d97cf460302047c435bb5006730650230251ab64d6a007138acffd9783253145c9ba1ebcc61fa4f6d5fc8abe6f776b43e62b9001d721fa5ecbbb27f803b9272b2023100dcf054bf0a8d40149f010662d376f877e253b1ab3046ef3d3f6b6f82a51ae884723088c3f3cb76ab4aaf7d9417f57e4a0302047c435bb500683066023100b1b5acbd4609998904db3ea2ef5115a57904fa302e6b97a99abfacd5319487ed33b0da6d7b23fa9a39debe7f36bb333c02310091eb9671a1517e7c35eb5f72808a54d1a1893c18258359a669c61c092c2823c43436bd1405577bd718e9fc0a3da888ef0302047c435bb500673065023100fb6206801c4fc00ea0438749cb46bb4e00aeb1103b4e566cb9fc28adba5b608f89f939a5774b841394d8d7adbfe6823c02300e7264bd1ea963af94289439eefe94b24a9a92c7a58c844828483e027af7cb2fe1820a9c9ac97fbc7026ba1790e7b49e0302047c435bb50066306402301ec2ac624ea39c32f2d4b823e972de3245910e424d90e6d9956763ac89c198fd9c529fbe12af9c9d0c51218471a6519102302af705167caca8dd5cb82eeb3bb83b0fdfaa7ee9d68bb0bdca6f6eb89aa943f81ec1f52039beb08625a65d2f43be39080302047c435bb5006830660231009915a70d5bab0887a54b8ae94768ac92e5bb00d05723994ea89ca63c3ae5b975daa7b3629ee1ec1ab2434c75b88e5037023100a5e1b2b67d2843d62cb5056d02c35221efc1d07ca1dab0683a00adc03abea3d79e00aae9a604778caefff4bbc87422bc0302047c435bb500683066023100959a614597a15a0b6e3ec026b4ddb5bfd7ea1f186e9245a37fff024c32a3a770a946f902bdb60f4c735c31da2772f3800231009afd87029e4642db46a07a41a23a95adfab7dd430da340585dc1868d690cc4bc4f000d252ba25f09e4bc52b0740cfb100302047c435bb500673065023100b633dd417db5f30d1bc1f48d4612c6b2b98ee9224781576e99ef8388f150e3dc6dbef85464d74e2809e837eda6d17bf00230354feeb00b381f8168e386bd7bed7eceaf4f4e9a11211850304c30a03ca6b1f59d3f207a7210cc833c6e974192c03c9d0302047c435bb500683066023100c9c06f2f3a66a5d0fde8af265d53431b55f1ed6f0631babe64d6ab8ca92f56e575b4d5f285a11222936a84e6aef18cd3023100e167826e86a0b4e5f84e52b90f6f418b875034d0682c9c2412589ab2679a0af6a3e0b7506fcb6ff40626d3ce7eb367e30302047c435bb500683066023100dae0cb343ba71a0058e66f4746dbf4fb86c7f388c1a7ebd2cd4265ff744795fb60b28c153b612bc086b6a93431332f5e023100821c8ced2a2aa12ce88dd263f1a4790e1fe8cc2e209bbdc5f46d1e68077d080f7ef9c518b2eb95c965f14f18b3e1b0dc0302047c435bb5006830660231008029c8271521711929b149349fbaf9e4b407185dd44f826c654213a6085fb7d22e8a39044aa2cd388fd38f87b352ab73023100fbc3e1ca32d44a082d2f129755d06c74c07407597961bb2413a84719e3b7ad7499e98dde4cca5232dccd934f0bd508370302047c435bb500683066023100eb3f1ef2cafa7bf0054980ce1dc35e5f48a0185f048cacd78353b485c8ade603d33adcdd6952e1c37e9b7d79dd55785e023100a5337b341d1f747124660e8fa8244fbeab60225082f3bff48bb2722b9c85f552c2ffb8df03bd03e4d7f12bd9fc963bad0302047c435bb5006730650230793be4dd8d750b6835e53be23a8ad04c6816634cdf83efe9405fe58319967d0f0f385b86077a77cf10f1d689ad2d1fd902310093b3d0ad23d24be17b4da192ebdf4e2042c56cc04565c740444b3ee938ce557aeb3f8c504d2c5d631e5fb7f1adfc88a80302047c435bb500683066023100ea01fe8f01250b935dfe0f42b14195c89756ff8ec57815790ab96fa9e2d39b0ef611d516e10c2a53b2f19620ff8edea8023100afb802c493819249bdf9366c62eb9a45965063c1d3091e82b53ea3ac64748bbcc9b1b32a257d32fc731544f05d750d5b0302047c435bb500683066023100a8ea5c4f9bdb7dc572b2fec580573f76520fb0bd4c7465b5b218c580c8114d218df18b6366979cf77c87a29f39e67279023100dd651af7647dbf482cbeb89c1e4b569c9b60f5bbffd2a5ec79dbf43a19dd81cf7ecf6fd5952c6168046f435e6b20d9da0302047c435bb500683066023100ee0de579154a64bfc22d4bbb55a25ac4eadc8436d79f655dd69aa55d365590842d7dd81b2f853eccd2c98310c193ba47023100946167a0b8f449e58093c9851be0c8a34b2a30480fed110fb1df7fd8411526b33b79c343208e320354d48f1e46a69b9c0302047c435bb500673065023100b3bc467792803507c818cb92b3181634373a27d6dfeb0e775b382a72ab7c1f93fa83f748cdfefb13000ea5491c404e7e02306826271b079f20958175ce4cea09f033b9405cfe62d9b4b144b602bf4c8b9aa90c97b993140b2f8f0f8ce8f50de3f0390302047c435bb500683066023100bf61bbe5ac49346e0a86e4ee1584da907512e130f0ed2fc7d6ab87e960f29d5d1e7c751a7cca4cd6a1230a8570ef278f023100e8844c9025076c3aea8cc0eccdbfb61e550723b959340c1245f9dff0ed1a9008bca2119e6ba529bad3f64a5c107501590302047c435bb500683066023100fd784674528d7b967df3495882606ac84012caa553d2908238bc415645af55129e9966196bc2e92d1072863b26f02010023100ff57bcaac9f00348f86b51f9df7f184106095aed3b830828032dada04c455034ff9711a2a7bc98fe61cc300243d1662a0302047c435bb500673065023100c30109c222fad932a220e425d29ee7fe52c2b156e9f12fbf9a986034ac87a7c319b0031de01504c90200b164732bd41402301fae3928cd7f23c03e2c2ae38fdabc7f24f032262bca51a46c57d48d6e84c302a11dff3ddea864a4d15680f9137d5fe80302047c435bb500673065023007ea3952a5ce42c2f9952f859a985820c90492bf522e6949aec1a2f1ac4fd45102ad5edd117b83ee196b17cf4965f453023100815509558e44f4355ba77ba33319b4abc674cd58131a55a4dcef9f6c0821feef7d8d072a631c5cc359924242f958f76f0302047c435bb50066306402300c77ea9e6299ad7fc1dab7ced3b20b886bcaa88398e4ea4bc79600e6f2952889f564e5deb6ad0b0115a1aa108dd6ae0f023041f67e9340a7e76a81f52bfe8d939b8fb04c3254f32cf3701989cff5d7c4114aede5784cef347b56103bd701f9b9ac5a0302047c435bb500663064023031dac37da702ab4d84cbaec0d2e1c1556fddd80fa88ac3b58a637a05259c4297c792de953103b0abb2d8c658afb39a9002305ca149bd95c3f6e7541d98b45c9c75b693745cc5a4f3b0b514848cc1c23008e4dfc3d5dd857e32f2ea54a7179a618ae70302047c435bb500673065023043d1a44dcb6cd25393d8db7ee9151b15a61155bafd535ff701cc465e8a558107d270ce16f5de37fbf26f6269af8f70ba023100ee065b6bcad464a0ef3066543ada96f1175f0d63ff4cc35094fad2ed280c3598b1b1ed5172ccda275300e496b508ad2f0302047c435bb500683066023100d689c53ce7386680146dde942b7e755c68887f856935e163b2f85446e2788c2cfd309588e61f2e32e2039ccf22d20497023100855198a87ea2c49b1c52e35a9e878ee5e22f0a82b74aa018425bd06cc0185ee56d395797ee9bb66fad0196f1b58cb6a00302047c435bb50067306502303a58c2e2e1f849b8a5f375c921e61149901a2d7b38a517becea80114c8e222691c581d9dfb49437da491af4d4fa68c2d023100b964652cae2cf87f8d9d858fbacd6bb9ca59207161e8ccef9bb9794ec652e2fd795df86c54f16ad8fdfe1e6842539b0b0302047c435bb50067306502307f924f25742602e46fc3508ff44741d4e345ddc9416631f3d4e135f43dd6eb6fce8ff46849b206e1ca4597597bc927ed023100b6183f89ea6044e978e5a8945ad39aee87ab03855a3c14cf0ba463254ac0c655be434d75b361bc7733704475296fe4810302047c435bb50066306402306e8811b03dce45e2d3ec11e2aab6420030f98319679b80731737157d2b2c8b60e20886ee0806500bd04fe5c1cc8185b502306e6da0c0f4a600a03e8acc4adc3c7a4c9a2cb874442d1e25d537a024d5ba81460eeada2c82ecc5d032f9329e9bd359370302047c435bb500663064023011d21aa2ac076fa7d83934964badfcc5eebe753d1ad22c6b3ef972295788a7624820f1f2bffb09d7de4fc429c21a3d7a02304e40d189d53d2a82287255ebd34ef9a5a85c7141022e17603966643cf4a7bca64f51d6dbd853f69f2065075e92a990a30302047c435bb50066306402303e141d91aad52e0de045d9107feebaf2be100f0ab5d348ba65a01177fd7e4065b3df3d813252b27e2e5b88c5ce51f70c023018582c11ecab9c3dfb6548f357bd1903d8db0ab592c19f0bede53aa9a660839462972403405fdfe20361d001b68ef5e70302047c435bb50067306502300ca39cf926df3572cd0ad0923b30302d753cf43ed828d84c98fc517f90bc7b453e03d1593e5cd37c74c72c71723b6ee9023100ab0ec7751e62525e2a9d4bf4d03fba4aa652e3b5a9374692e8e5e1f6cac084656cbfd9266997db5150582ec6464af2b80302047c435bb50066306402300b9a5efc1b8c627febd6a47b287338b88108840fd5dc5abc7835128bbb14b95dd63ae126f94bd682b722be7944178d4902303a7a92b4957f5400a9677cf479299cdf4f63446db33536f80137b40d4d2daf548141bbf88abca8de624c4fdfb24888ba0302047c435bb5006730650231008b0a711775c5f0928d3f5f32b223e4cc630173f5ee601594b49196f5bcf636420cda50df1319c3b31376ca6aa767081302305cf707915595656be89aeaab0b7a8827c0fe0ac5b338189bbdc0154a49f103abb7dc0a1a9f029161479cc2b8586b3d710302047c435bb500683066023100daf2983a306c66f793eedb962060e1908ceb260c00c43556c54ff1afb1356b787dca6e984ce7ac4739ae83b8577c65dc023100d1808f53fcd5735fa60497e67927e29754d08228cc55fe5af12cf424a7bbe1a2ace0d058eea6c88be544bb80d7c921b20302047c435bb500663064023028b08eb950921b139d064dfb774d0671bae11e66d917a180af688c050e1e382a934156ee85041ff1bd4f5e8b4bf2dfba02301a3f9e8d70c5b7acf33072a67179ee52054db2eff5c81d21a38f4d87450492ae18f57efc45ac127cf2d222deb9ca2d6a0302047c435bb50067306502305477a6614bb7d156992b2c6d5486f5b6c7fea231eba04701143cebfbc5b025330e02455d10a20ea4595cccc12e7e218f023100ca49747d5c487019a872376261974f7227e738c6223f8dba0edf541a0afb16fc79cd1b3929a1f2f384bffbfb05e0d94a0302047c435bb500683066023100862700300e664d87d36ded4b098b2f3a80087c84c64798d6418e299abba46e6c9b21275feaf050221b3a69712242edde023100996cc13aca8a09e19a07dd395f1620dc6b0a5c80e913700068525670381fa09059adeb3647aa228687d9ad8e0b955e5d0302047c435bb500673065023100e0c188bd9e6c87eb5682d4e26f5ff9d82bd9cfd285ee89671fa0c2f07ee40160811f26a7498962f52add6ae5f493e2f602303d66f4b70539d49c9ba95c640d86eebb284800ae1682ac89db297098caa23643c1563e94315d40b360a12ee858202e300302047c435bb5006730650230659c28afd4c24c6cab0f50051b8cbe84ea2915ff70eeec1e1939ef91528571d6d73ff014dda7891d8ef901add7fcb312023100baef359f2c5d128b9fa8d7c3d14b096afa53e6f502071df5724b6edf16214f6ee0675cd16be8e51db200c7636978b5050302047c435bb500663064023003b3ee9d9d13ea1caceed14ae8c78669c951fcd3e94fafe8e5f87fb6da649f6c32612a3b1cec5ca2be6a29fb47ec84600230718a9ed8e31638070eff40d03308715d4a1cf9f3a87c0f79b14056da76ba763e53b17280a46db2b0e099d357dd8f9da00302047c435bb500673065023100cb72712b080f6b043b8121c2e1857950a9b3fb87c38d0e5e5af0e836069e233519fbcf6a46d665bc3f7bfca6f0e42ab602302461c4ddd6f67db74134847c88c323e482ea2adb72ccd752333b441d7b872c723b134c756044edb6e83ffae6705db7320302047c435bb500673065023057a54817e65c6b597eaeab897ad30f40fc64690a7d43caeacc079721b903dd6982369f60adfc6832f3a646ee55c8d18f023100dbd3588471b9d9d08b5a7af01cb5dbb66e75411ed5e912ae29628250e19fc55b11c1d1764b9c8359f1d55da2729388a80302047c435bb500673065023100fcfcd177cf3b4e10ca2938c6c70e9dcfcd556a3d4eeab2f325262b11952feb120c30f47e0f95a29b347c5d3f2296a155023032462b146d7b3b33efbe21565e0d14f13d1134cacd45d8ac2ff330cedd02bd1e1fa74177586cc9495f36c689c57f2e4e0302047c435bb5006730650231009a2c6c0221cf492d5d4443c39c5d3e6f92f4a3bc75b9446ae85262afffc316718a54697c4905c96d7cb64c83c7d3276c02300dd2e059d0ad7cc9c7826b434275a496a29d8b28f4aaad91a7034ace094067986111c1aa5c564563ceb9f65995e354b00302047c435bb5006630640230466ef9bfa0113ebcca00ff0aa2884dba4cacfebfc5078ae0ed32c4fdd3f08ac49dc5e64ea006b738482f1fbc5a8caec0023047c753c4d2629d3595bbd2fcc936036318ee6995eb4ea6dd77cfac116eb16d72395ad53d0cf6f964f4ef69840c9c0cb80302047c435bb500683066023100b2cc267f3759a8222a9231abe34bca006c444bc9432e7316ad459d577263b4cbf9c9ecbabdafdb0ce77f68f7b8f34e9d023100851c5785c767d5abc291f64ce5740d087ba78c4899c840f4bdecf34eaed681ccc9b17285a1f9be1c0cbea1f60b9feeb90302047c435bb500683066023100db33ecd0661a33fc1cc3e6aec82c03b9a2bccfc01cea2bdc6f28cff58078c0cd84af9fbc67d852891afada759f62d351023100baeada35ec226f336da5b35c89c0b8e4bd4c3e07dbcad06731f3a5356aa058287497ec2acca4173d756560430782f3860302047c435bb500663064023070113dd7bc6a3b1689d158d838e10daa9d6812a7b415717c34e012fe9cddd7a6e823495c467ba6846abecc9e46a3342302305032168a0e962d3411853314c925e7a36859fba9e9b907c964ff1c25bb8e5019ea3b936ed9eba819c4a215e0f22be2630302047c435bb500673065023011d9085c45767c1f2d2c2f28a50f65819287a53004b98fc061e60c2b4777b5d62ecc65ded9d4c83803ff3761fce0125e023100affd79ba346ca088337bd4665236587c905f72def4da06506a34ade58bd2471868ef62092b63407fe19eb053ba7ee4aa0302047c435bb5006630640230777a5ae3b3fc6486f1fd2256986b9fcdfdc0cb21f78b51529ca28b1ab4f69bcc572e9e19e3867cec9ec5e348898f4c500230588db62d40b331d4ec6c75af2027be7e525c069d2af19d32958aaf8f58aaf5bf250fcb86758fba8cb4fa182a9fd765b20302047c435bb500673065023100fa68e17352525bd2e281a3bcb3ba9ca397f402a6a88a82b62a509268f3a69d4cd1f29eef3a699762b3b82e0366165d1f023035f414ef81a7a32f6f62abe509e1f2193ff25ed626db44cc7f95dccdfda6eee2e4d08043a5ffb8d6165639ed16e6ab410302047c435bb500683066023100f47dfd3433e9b7832719ddd1366c35b9f260aadcad962e443822dc3554a8019ea04610fa4a8816e9b0b0ec8bcff96bed023100903370526a4bede195e3b095ad3d784656f91e7bf1b920f79f5a9def577d1cf903d4165fc8c11d495d0cb8ce09e532ea0302047c435bb5006730650230721d7397ae360107b86604969d3a35d3bf1bea3b1da421aed379ed19a3cb785bd0e023fcc356bc9f3bf0a479fa5f1cde023100cce6ce79fac621c1a340c07a8066e22d9f7e8d6c2ddcbb8c02cc68fc86c1a314147b7f1babc855ae0f6ef4a77bc0b0c20302047c435bb500673065023100cc00388f3deb593904a73fcb4a56ba7357724783e81666ce472b862d237fdcfcc7a64d8646c21132bd3ca92c77aed7a70230090d9d63e05085148d147acdeb985eb74b07c51de00c628ee59a9d137c46fddcaece3ef527ba16ce999ae360bec48d9d0302047c435bb500683066023100d081a97b7181101e7d785d4fe119fcc572ee40a278b50096e2221abe84a0bcc24e7c5c9775c04d1be728ba74c577bb84023100a6a66f6397434a39f3381cfcbbc431324710f5c46620f55debbbb35a8ec60ec67dc566896705ecbac68fb4ce88b6b2280302047c435bb500673065023100f14b1e5dfb0ad87a12b2e70990331d8097f9cd413968980179dd31013b56dba29b02b7d7a5794be814f8ec439bd612c00230677126d514abeaa650d8812b634a6eb90f2ff80247e1ca0ef85714bd2e804919f0244e673712a6a0f9c6ad0cf0a359500302047c435bb500683066023100abb76716d59093baae7393a7438b023c5d0ae3c80c5c9ec2d8d64857d9cc9ea2206dd54d19e0913974a6d645d1caa681023100c6c73eedc0835565597fcff2c5c79f92adddcaaf8369f618782dc6c09da6f3f141ad4af51ccf4cc25a419fd9fff1c6d20302047c435bb500673065023100d3e16573761d3fdc823459bfd6d1e20ba112630e214acdef2d9cb519fe0305f65e7dd2f405400168409588fa53449bdd0230134000bde2d37ef7355c6b3b91d66572f8665682b854df81343ada75ef1a0a4d0d116fa39393e29d2ab2f726a761f8db0302047c435bb5006830660231009884d09131780e9b191388b7636d0a004ad61a6e3a88031882db4e081f4b8ff8b87837b58f73858cfa8cad438641ccd7023100ebb46507f27ab0ec848f7ea6933ba803c04cb20fa9bd0dab266f07a33e2accbe7796979da65d1e2e9ff61be26af6faca0302047c435bb500673065023100a74e93ee7bf1577287a523b94e33a7d088fd688942e5f4cb1be5fd7d740a8dc667968c22a1f6717aaa37b83a7dde4a75023007e72f6bf9d804aa797ded04e1e2c1b7fb16e7810f6882df4817b1c33fa970cb5c5f2761dfdff20e9f4ce579a4d265a90302047c435bb50066306402301e8d8fe7c7469c14b9085ecb652efb92ab68958ed699bb0904e477f817327a6e1c0e02c1ee1f4cdaf856365c5309d01b02307292b59d83b63311e31bd6f8d9249edca18fbae2b4114f6ea5a722da0df6c05c94d82b008bc9008da17da05ccfda7e3b0302047c435bb500673065023100f84557979a3e860d3139b23532f4ad74a83d44b395ace6146d6871e17cd4100b86b0e3a127a0524751503b18bcd69c810230348900a1fedbc88d2acb0c5de05d0af552c91cfaa70eacb5a90c46592c79200250e1948976d68b7f8edf774fd8f4f73e0302047c435bb5006730650230065f0e6636229b0414903370999173197593b8345f35e40646f031519f338af6db39c0a2850e7e1be8b6b9c6760a181c023100c71cf5fdfe64934371d4bec5d5b60d08c82e2dd58fd0c1144893b81bc7b49e61308c12558c44e217162037756fb5504d0302047c435bb500673065023053094030336682ffe87505a7f52e5fb00a09029a08d375740921b5dc1ee84487574dc6fdde811861d20366323886cca4023100cdb60fe894ac43a62cea59510c97f0e3aecaa1140891974eb656ab27b1cf6ce270139ed031d1a00e7e4b550658186afe0302047c435bb50067306502302c3dbeb105fc4a7eafee21669fddd6389ad0fd7c16eb694d44724430b7163f1550dfe205c56b156313f93db189b79099023100802dbe985693b26c317d1ef353ad3684019284bc9cf944abec7680a1fe14b44d83530dc0ca6466a71234dc4539ccd8220302047c435bb500683066023100bff51dbbc41041446beb38c73429617ab6f5092613c63f95d521465500bd2b7db334ece99e08e9b0bc2155211ea78367023100ec6cb082c96cc2082e454540d451825203374ed2cf5f1f096bd6f54d511d11cd3dff2a91bc5d1aedf5fd9a0683de4ac00302047c435bb5006630640230772fa15076b54955cfb8e9a8c636a0e8f45dc4220b2a4e7cc47fd59501583a391c8b05e8d237b61d5e449414a89552b702302fada807abb9873f6a7e2e31413335c8731ce979ee6f7eed18ceabdf9cda777f64e5518bbed9c8962a22cf5f5bdc1bb80302047c435bb50067306502300a946f2b1ff8be40f50566e263b88b55c006b4d38f20ed27732490fd63c03a66aa732d815aef7bf34b6a3d734083b55d023100a44c1e065d1a7b0a46e0aaa92bad0010e517c1c9b740f3db0efd7cb0f8a95bd10aed2ea1bdbe92bf9d266dad9c4919520302047c435bb5006730650231009c19f9850d6125ac677c2711781e8fc1ab0d7be909ba4fb3bf8c6e78778081d0436109b90bb7a62093ac3303c8281faf0230321547e9b9cff67d99738fdfe70ddd2615d8b464162e1cfa0df836a904b7cd67631f46d638abde3eacdaa6d0ad2204100302047c435bb5006730650230685262f7d4b3fbde4ed6cd82ffd692fa947293c46cc66838e01a94b26f66d1310b6c7623fd5b546294c50e737c18354a023100c7d9436e663fd5b28d177bd3a5c241be9ced40b573ea5661a321cc97a0a4574eb7642b004f7a00a931f9da2ad0d6a07f0302047c435bb500683066023100e1ed919a825c600b03574f703d3cfc29c6e89fffe7a2ed798cf980fbe40fc39c1f7e644c13e5a7b1925dd57d4c3ba7ea023100f03ae00c58743cb9f205b097e7a6bc494d2c6b061b1d9f58d0bba4b09716e0f57eabf77c54aa9c0901792b52ab7889f90302047c435bb500683066023100cd17dc2444b947782812380f96eb87f05ba9119e5f0199580de3555e560d8feca401780fcb3139b2e2d15b41490663170231008f450d68983cb4b979589020ba9f4b509c9e967408ff886cc0b876d6ad36e177a9eca3fbdaf3ae08e4654b8f6401f5fa0302047c435bb5006830660231008f61b56dc5ebb92ab5a62f557ad43bdba19e1ee2a03a3887adce1c54a5486fa6d41a5429df4e7d430c5ed63033458621023100b922fc960f99df80baa795fbf4889c7cc74569c057ca7e2b684f11f652cea603a65e98ed13fb7590d225293659ea15310302047c435bb500673065023100b429f78b6a88f796ae133224669d27e39b25f98429dffd12e1fc7734ba222108a94c871cfde72aaa020662f428fe3d4902304d37934a44edfcad5cd8385bf4a75a24de000cb3f2a912fbee7837a76230519cd2f1cfc40b53b38926b21505ffd1a2100302047c435bb500673065023100c47f23debcafe2822ab57dd7e812ef6f65f359b9b721c1fecfa46874dbec0536c4a059cb5dc72bce8081ece9f5e5f18c02301824dab4fae2c1e7037ad691f6afb440bf22f98086b96c3e991aeca212b862d14273c506ea654f8b14b070d54a98dc790302047c435bb500683066023100ddedf820bf0f26cc01a38291172a421548cf5f89cae025fc29c041f9f5d310d09eedfb6c04c46b2de4ab068066fa80d70231008bb899b71f575f5924a52134bf959cf15e82800719625f781c7c0c4234657372996f72df3847feb5bf6a4f075261c13b0302047c435bb500673065023015dcdd7b1eb99e3bfcb49c3d68a2035965ccca6c13882fe8c95da91862ab6ab4c3ad72f1b73df880dd760e8d8ff3fa4b023100e8aa67006465cb2f22d3cc07f87ec758a8118c2e344db2bafe80c5c7ff59d71b702adbd6a448d0929e8070c4c76b4f160302047c435bb50067306502310092350a2189fcee90f461f36eb30bc3868ab69b35e484e246c2a137de377d3445890b0e96358df9bc6f60838d4d518ccb02305512d7c281806a42e9e0bd5d0724bc3084b37eb3a6608960ad897ab5f0a4f8f6bf567cd0ffe930a1466b464812fcdc690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b8e3ca2c1b257e3f4a10483dc913fb96fcaeba702d178ed32427fe8e09564c97853e6ea15f84a98a16216dd2e45b262e023100df77192ef34a4e9a0537a8c520b91619e2e85387974953937f4dfb95bf126ebaf0633126309aa3011c5d24d1ff75aa660302047c435bb50067306502302ae220722cdd42c10b12d4af994d5e0709c0d31d1b01cef2d8ab4bbc56cfa29f5be9f2556265625680c91206dfc3a530023100a43ff26809cba80e5474ab183011d15445642d97f9fc66b1afa7f947dd997d0299d805666376bb4d81942612518f9e4a0302047c435bb500673065023100f1d9c76335dd1c20c1efcb2679b25cde342b4f1606b9992f28f6f0a83e48b021d7a8d3ea5287c6660207a53db84af3f10230424c5ee924f827bacbf8502740a8cd96759758495c26e87e3e0c37d8ee551414bf8b56e66d78218653527b720b0e4dee0302047c435bb500673065023100cbcf071e5132bbc795ddbe6210f4cb1ddce09b2ec949bac8cbc31fe0ea44d4c5413d34198e04e97058fb42eb52ba8f690230739872b53b110744991cde93f589fcaa6dffd867a6e5c3d4493da36ef3cfb0bb8c90ebe0f5f5f021f9bb7b72df6b38770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e4788caa3252766690e7a21962cd20db2c29d199d475a567b86d1368a39bbeb3a9bc3ec583d460daf7c068f8c50e581c02302babeb4debe03ecfa8d764f197afc9a73eb5da4da6920a87ff1d151d04c490703e3c679617fc772bf5463e784868042c0302047c435bb5006730650231009af500711afd66e787464c374a83e237a71a710b397e8c387e03eb972a1ddfa8203de0767df21b91f56423178f5c7ed90230238ba58e68e443e98684dd10046b055819f914d79d8a26ffea2f98789e5f9bd16940117baf626944c428e1191964ba730302047c435bb500683066023100bdaf029db0c6daa1318a2eeba6693ecfba101b105ada31573adf26119801774cf3bd464c8001041d82461f35d2760158023100a30535e134784ff89f702dccf12f2da019aa373e67b06c857329c8e3c71f1c1a50638beae5445e34df613028e42f60000302047c435bb500683066023100898a08aa15bcd0300a4fed00c1622334e0a86c0f49cad70057bcaa7ab03606ee5d1bab5985573e18a0ecb25d44e57ebb023100db10f044faf8562bb78f91d90bf20f2c4da4dc50cce62866b2a434647a1445f42f12bc57e109e0f7442d0610fa5fe18e0302047c435bb50067306502304a29dc171f183bf7c8a357b5bfabee58df9ebf80aec751d273266a5aeea510dfa72a53b42c53e7b8d5f0a6e521275e4e023100ee1b6a9de226225b4f64d98bc4709f8ea34ba761f0dd9898bc0a720438ec42812b5711592f8c0155ea6208d14afe7f260302047c435bb500673065023100faccade76a3c5cc23c55bad1e86870909cb473edfa3cf71b07b37f7e5c06956f630c9569abf1884e91f18fd42b736c1502303ff33879ed4e0e752a1d336259d9533c5d9f308a0082bc2a206d2bc6e2ff1877a6da8c1f9f696783c7edf449ba943d660302047c435bb500673065023100de8b2c72ffdd8694c6a94f5387d7f8da11505b0da364772ac4312c1a980f9d25f8915b5d1e3d3bc0f29e415bb9d665da023034eaa444d86d13e49cc0288e785e77d667b200472beacd37287df1ac191765dfaffad0d9207ff44c05415d7eede83a500302047c435bb500683066023100b9838d48094c385640d91c4633518688fdbd3862c6190e6d91dfef6b45afef9c8f7a505734a622d7eb4c37712343ce1002310086cce3e1e38fcde517536b373a3559ab15e28b1bdd262c98d746363a930311cca654832ce35f3c9469635abf0e3f77e30302047c435bb500663064023016b5ec1ca908206a412d01607692382eab29103f18fb84dfd08774681cd92d7ea763e065b413b987182c56911de9d98702306b9783936b83bf594522d9b592c8f9d96134b373f2178c9e7cd7a0bc3414ca4af1b035ef160f70f6e6c6dfa7c35dea440302047c435bb500663064023052fdb4709d9322cf45f8085ffa116de6ca2477278a44d6d7882aa52d929fdd88315ebcfb73937338c9994c313073738902302c080227091f73247ffdd1184db53d156c68791f67144629fe30ba98110efd7efaa359e27f793d8e00c9f39871c68b540302047c435bb500673065023038e309cf2192575bc0a9114ce397eaf6fcd1c3adb396adf4d3a2bdf96e2488662f2271e191dce0da2fa80afe441cf64402310091275a2c15520c8cf7bf2c6c7443066f50cd010aec37e4c1c6ab4ad7ec7a2790a8aa7812d823a39ca318f057f033bad80302047c435bb5006630640230224881aeec6f4d59e9a1acc62bedb2a43d820cf46ae2e014aa499b76eb7b72745785d2b1246c63f25f7823e67b08ab81023003196b3aa008d0084fa09dbbacf4ea73e87a341a784b93df264c3aaaa4d499e39bcadae9aa990608df3a17940392408c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008193fd70579579a3d8fa0036dd191357fe6a12e459d6b6fc3017519da00c12500b76c1d3fca8f28fc2365b60587bf33e023045a733096f9851bac70901dbdb8b2334d9a5b8a9cc6c9a58e63fae85782327f04449e1a22ba7859a26a54a5355a292cf0302047c435bb500683066023100a3a0c620c42e1081f314e2aba286b6437b6bee5b47b16cf9492da9692026503b802f075e52d3cefd12f340c64e82550f0231009bd7f45d839957e853e83c0217570f069bc6f55f60160e401436fd3fb1fd93aaa374d855c18ee6cb06e4f393dab1acb20302047c435bb50066306402307baefee0e88f9c336b21e44d6c4b088bb3469dd7745cef3e18fee54d4d070b9fbcbccd489d4d0868b708575284dbd82702305969f443c84c96503022e0ecefa00137231c43eb254c87500f878620d5c2498eb8d35de142de7d3d2e0bbd6ce53384ce0302047c435bb50066306402303e2adc1ecde85e953f2c7c3012dc7ddb070e818730e18550ca4a1a3a0d8109a2199271ea1dcfda5ea3d5c1abbd64e12c02306b8ca503985ef721b9aecc86e65ef71123b59b734a22ad8e30f839c7ac2de38fe9f459692975e25ab7f53392730121b60302047c435bb500673065023100a2a4331c2c8722830860a37b8870ec23073119b917dd5127c42e6f2d99de601cb1da04f43bb34ffbc34a5de701fa1228023013c61d960929e9ed308addacd5a84d3dd958ebb9c5caf655e1deb009a3a5eadea366f479fdbeee3629306f0fc1080ee10302047c435bb500673065023100b99c1131ddc831508bc96b941ba540f28b6bb13bb98cab1d2dbb39c5b58fa86992d1b5804ba747191f248136198e51b5023069e34ac4fae5fd2c859d89058095003f4f3102e7342ae3e21b8b81a8ebca9d60b594f2ff23089ff846788b6152ff60c60302047c435bb5006630640230064d1fa15d7160230ebb58476c081ceeffc2dd80748a5acb9322f30cd5e50fa79ba5b397b1dce16a6ee8fbab78ffa21702304c86ca35f493ee22a0dbd566318d44ce36465578b542c6bf0af8f70ae4f0f6d56470b4d5543c228fafd939d8ab0b94410302047c435bb50066306402301e0895071eb73bec33a3e95c56fba3886207c0d6ef17fedabd284ab0c66ddc7a8ad8b57b3369d0f47072f70fa69b02860230516089f1bfdf118a1433bb3bdbe81de5b270b93f6933e24040a1d8aa9d1e324f144206e8ce95d65d14ea3a879662faa20302047c435bb500673065023100b68f9714e1ad3032c4ec7f5ce9839dd89ad02e95d2b6b7f609aecbbbe7bceafff85c82cc18ed1e6c852d14140768bb6b02302aa4146efa17f74c64e3d6b3b465cd7141fbbe44328ac4f79344945889d463e06d9779f0c8b28b03b19c99c4113b06150302047c435bb50066306402306c4c21a0ed9feacf76684906a64afe599e1f34129792199b50c9f51be6179b4fdd0792e3e77e7e961d74b3792ee61933023025af1ed1b006d1b31cbce82ad299d3796e608bd11942a0807e03ef0320df6068a9be7b1d41340c96346b94d3d395ba680302047c435bb50066306402301034f8e6826b1c729dae62c87ace4d7c5d310df6601461069b6ec405bb1f43992ef439a0d71e9453b8669662b6ca87d20230233fcbfe27151676648605d6947231789c16b9c77c032b22d65780b35a8db94b8645973cfa9af3eefb1e58f69aff74ec0302047c435bb500663064023013dc9a84f042d0507ea1070f61e7ca32711761d3b7009da50e3f483d010ee50a71c9e976c959481134d72092434379f6023048f64a04a6a5914488bda64f646e5a9c7db7a657b9d6899857c51ccc721922830118c0b8e83517affb0e57dcfdfb25c70302047c435bb50067306502310088820498c187b7019717e74605958b45702f02f534e953ed52c0330b15c8494c743ccaac8a3781609ee573b01896e48c0230331355c3042a45f235537500a1d63b84a3d56e3f49ff0fdb7a25656df3712e6c9a6afc0d0b5041874377b7e9ec093c500302047c435bb500683066023100a260b7149936f8d2ff6809f5ad63f8ec8c1ae41064b500f2dd74390d80b6aba48f40f6e3d5928e5f9f3596ae03abf2fb0231009127837e3a6a425adfdba005bac744efb83d6ff7dc9c68c8c07414e1c95aaa7fbf9c72a95023f15a90958aabad905c140302047c435bb500683066023100a72a0e8b2718cafd0c888fc79a86df1c588a9bae0f6a785a432d29b0294ea16df657b4f55c7ce44713f09a8bcc6f7c2c023100c146a86510e27343f6e90d70a137cd776c15ed4bfe65d6f06d6d25ea05f38976bc68730d70042b617ac141177f006b7f0302047c435bb50067306502300f51334ca1135a250f25b8e9b430de11f841b5761d2bf0f7c046259d29aa596562e58b34b0266c15e4bb10e8d6e9cb1c023100a292591aca0401b8528a8e667fd85fb709a2897eb120fd968708142a8c8a738c67f0c132b9b0892849b5660fff06bf880302047c435bb50067306502310095711e25c122e7938fc17187bbc22b8d23ec0fc4daa0d6a3d93cf4b8f682bd6668bc59dba8a6c13d909f958c462aaf0f0230132588e9fe106fe089cd09972a2a07dae7aa946519054c0f64a019bd6d90547a7cfffb7e42dc06ed21e0ead712ea88a40302047c435bb50066306402301c4b374e9f20773a839425ac4eb639881cb2683936d017865259284d59ceb8e65ad725d313d0400273fa3d77e9b7e5a90230284566658b1b063e9458fdb426a07ec935c42b7ab0a568b93e522b846ac7ad00031bcd175bcaba043c8bf10befba02070302047c435bb500663064023044465a187f8791b20e20c6134065aaed9e8b52a24d266c16a80b5f25cc6967a2007b5c1fb08d7fd08f7e4e669a5c47280230527470210671ee1cebc8c0a831e3d34a122acb07f365695ab53f3af82d1b7658923c07f3ac6b662df31fcec4dbabc5610302047c435bb500673065023100dc30c0a6887d8d05f7dd8e44625ea2dd1f4c240d75d23e0c15e691deb91622cef5db5067301cffeb2648e68e87b216250230038c5d2c94ba7e9a3adead492dbeaf3d26e7a401c6ea8ee28da76146a0518b43a30424c941d7a681351ea2169ab2206c0302047c435bb500683066023100eabdb25f4c5ed482d5020d996a48453162024d345dbb91350ea3455d4f0138ae3f60e01a0fef93488f70eef5d0740812023100a88281ace5f1b6bc9fc7a3d8e41e3647d9252845b92645c93970bffed112c8918da5fd4195ee0de98f76b3f3af5e4f1d0302047c435bb500683066023100d6858802460f19a9ea5ecced2c77c6d629bf505bf1252b0c5709fb9771f3e0b301e65e5d8f63e2065ffc80b2eb4f5327023100f3f94d4104b3c020fff5bd3fd8cbd0e963c10c1ceb10a06cdfb09ed279bf900ceeebbc1bf9859e9cb2484bbf4772d6aa0302047c435bb50066306402302abcb1b17ef2f9ccf9b065a5ed347f3199846fa9b1763bd713751095af30ac04292d2b5964d7ad01f798b4f171fb29ec023033acb34f44dde39afc08fef968665a262335dce9fdb6f39f375d3fe7d0cd6dbe016977601d55d0b16b47456bc5c76c1e0302047c435bb5006830660231009f8fd9d8b6a3aabad6d137416b933fd17f8c9f4209f3427b707ab106be20742efea70c265550be0f2bb92a165561bb03023100b09cd1ca46c9916481746c7021f29fcff28a9a771b6d412f526515e0598901ce0f2523504079fff808e1f1e3b5b647440302047c435bb500663064023043b0dd15041d95d8f436514cb5242f97495c5f145ce26cadc1638ad4d3cbe0a55b4c75ce5801f7b2646ebe4a09dfa00b023046c838ea0197caf12649917d42f836ca484c7ce079d8194afa62b0a7576c91def6c7e651fec23862f1b4396cced2415b0302047c435bb50066306402302e8c0460c6540a0b7c0bf2802948785a82bd43bf905828fc65f6c261642de2bc5a27ac29ee5010d5039fc3c06718600b023004c2e5cfbbf8ba0e9a8e817c8bd52f008224b345716f039c113f9c920a2838d9035d040e273706111b20f0653c41f1d60302047c435bb500663064023032fa8bfa5a24c69c41b0ca81625f2aed7e6561dbd62547ae6f371eb50632ba2ddf43de3d5fd5106588f1d8864d38d1ba02307ed653bb223657bb4d9fba7d8f187f720515f10c57dce662b33e219901929becb472180541d8cbb64673ab6b929b90d00302047c435bb50068306602310098bf2b119ab220b75e2be97d69d4ddf200ca92daf7d061311781c74c8ae6f4aff9e17dd9d5644d1168fb8c80acf2f862023100a6fc4b4c6ad0c925b398f49c77610c25effcb76bb145aa3b184e05fb39a4e3c1242d68b5878d3a1fded9aa5bf77820590302047c435bb500683066023100d9fb556a928392e5bddbcbbc22c613d0fa7a04630348ffeecebd7dfa14ab6f9a32a92c667c447e029a60c6f65c849101023100995a61c8b45a4322fd6af6ae3113e87de1d3dd473296c2024b194ea47270ccccab2ffc4a3e0fa627a75be9eac97d1c460302047c435bb500663064023029b8e365622bf2339854d10149a10bfb2dcec63a13b6554c8f0fea5b38cb0aed9f8d698fb85807bfda059a64f1ed338f0230237ee3752e3d2b4dd80e7ddeae22ff98336b4bf932ba5fe93c3e6ccb35e5e3fc3e9eb8f0b62df4af5c33f0e455d073460302047c435bb500683066023100d2f48312869a5524972dcffdbce368d811a02ae4d59343ee4e7b7a89d4cdfbe78c11bf7876e5fb97a0aefc3021767896023100d8516a947611e782286d85e3f173032b50703f5fadd7e88f588a49cbc4707ec8dd2eec29da3d986b9861414841db03250302047c435bb5006730650230519e69884bb864868964f33721d2c368865cb87ca6de9cf12e2c2b74ca938a975bef02735fab9c9e0aba00fe09487f78023100b35c05d4a53864e3b22fe7fa1dc02accc34ccb28a849b0f9b554cf747c0a0611fd99f7610d1b8699c6ab19626f5ba34a0302047c435bb500663064023072a077d8dbb56ff2c2edf15cbc171e719563e23cc3c15261ad9575c6c7a3c7dd5b3eee759b98691ed1fd724942a601f602307229496ca9d5676d4932419b9e14ec644b7b7f7d59f35a4b403f656a26af9b3bce006e283f9a4467e82e09affcc7f6790302047c435bb500673065023100c128c5a9688a47d7441b1cde0983382ec38bdc73d716aff2f61421311ec397b303bb8560729bfc6c73b137cb8b910c8902307190f158ea8c887773a536a7cc2aa5cb9ff3d1be9960e29623c5273a1f54251ec23ddd1745fb01cc6f5b4179db595ef60302047c435bb500673065023100e2e3f0dec7a65c2b46cd3e7d33e5fede279b1fb282c5d5f7d6b12d9946597412c318ce55f63363f892edfe1d6337f3a902305db5ebaaa8273a240581be004456ea2b7e414d8aff61949655b535d2243832f210836e7909f1ec19ce2ef6d6b53cc8ec0302047c435bb500683066023100d5c95aa49bdae9f550e500ab0e4ff12b70d4e57dc7995eb4a4a0c9712878b4c3c4aef1a79a3754980a1dd0f233cf53f7023100d4e0a866760ce01afb31adf7c1f283bea6f641790098773ea7f41858bd97f6a82c927f4f02c4e19b412d0c7b7f9d9eeb0302047c435bb50066306402306652fe4d7386c3295215727aa507a59854879f627ff9018f847ac4065c870b590b4d9995ec0f39768299948414bb46f902300cc65a4a28d0d64efdeb3d6d735683c30d540497728588ab9c20198a66bff08841d0618ec56373dc9b364e4455b5860d0302047c435bb50066306402305987db7b130a1f2717e17bf60ce7a84937816d153d4acbcba5cf3f09ab5727e9d8956f2aae2b68af3e1defee93f3393b0230317eba5f771ef91533b354261ce95489841852d3ffc2a62c26687318127727d5ab861f8a2796f24f896a3903b390ee7c0302047c435bb5006630640230662c4fa2f3301e754cf2d656624c50ed44bd7cae08bfc1d4703a4d84c49190f4b63c0011025cdd1a1964248e18d6891d0230363542e1b6aa99e24c8edb1a41eb2ae3b72d2fa682e0afe07663d8fbf44fb1d8b61246fa760014f48e791894dd4ae1460302047c435bb500663064023046f73dc5a3594e97e41e44ce498fd48d22b8d3b0932697a63d8825caf2f8966574dd57ecbb5091f71d606b5de76b784f023033f57a09b12252fbeec334ea109dd9a6f099f9d34ba18268d8c04c15c2dc0b3a7249f9dbcf88e69f8431d2ebbf20a39f0302047c435bb50067306502304d1929e97405d22b48d6bd42342e59fa4cd53dc95c2ca7963b9f5d5beb56edc2e3d70b011241d1d82eb9219821e68981023100db926be3ecbb438d0563bff7c1a4df35ad51ec31a4127664cea9c69aa6ca1104e0b2eae167ada371d5cc96dea50ea1cc0302047c435bb500683066023100bd73208bc6ddd950b4badef9e83f015b5a9707aa1db42790c194ece9d6b7608d74b91ec0e143cb4a33d7ab6e8841394f023100ecd045298f4f686cd5e3d0add2a32a481a588a0980da0b4b52abfcaa9c34f450b21dbfc0f881c9f4250fde4005d4bc810302047c435bb500673065023053e2c4360cc8b169d15d9a63b161989fe9b2a4b3ea4e8926f0183018e66272fbb4758476069b06b90579b035350ce3ec023100a6e47a2817073a1493d62eacacc86aa0a635bd99ff469827e55101527ecf5020df51988e53cec8da625b047ebcbe4d6b0302047c435bb500673065023100964bce0b0a51bf124b30b75c042a6ef3dabb0c5aa4677e1fde75d33f5f34d7f069c1ffdcc447617f6a94f3a61ffc793c0230522071561d5ec8f633ae5ccd570bbe36d62f59549148a83b8e57160b3344b2551f523560efc48465af721ab13981c6660302047c435bb50067306502310084b3e1c8d91fdc660928db1afd13053c702813df707d586c6878fda0a239149bd887b3085b1633a4c430e8a70f4dbd880230295f4c088cf81b3faca36fc603a9ff9b8465f8d7602d272a10b7f5e3dec5988c26a0c16b9c72f7f8b5a28b4693f1c05f0302047c435bb500673065023100f587955bc4933f6a50ec97380e0ac9301a1e43d0661c22abc5fe690042f7c09ccc96844e60c7c14ec90c9b9ce426326d02306db1c15c0ed95f676ee9cc439f8b607d1b3b306bddc28154b464c7dbf99cc75c2084e1eadcdd7bbd8d978b95d4d9b9ce0302047c435bb50067306502300555282f1a996ad66e2e32802507a7f58b49fcaeb7aa85584b8f594f8c64b74d54b468e827ebf3a39f6eac8fda7439b40231008d948fe2b42963cf90b119d2923a9e90dea90ffa1610675335df85c8097339d6f49e800aaf0b5ef9bb347b1ee0e964bf0302047c435bb500673065023100fa69ef3b8b22e2d6cb044e25d91b6053bc03c5c16732bf0b304c7f5db29ca077bdb523b7b5aaaba410bb201f6a5b25c902300e557660de971b5d726043a6f8344f4fc615265817be105dc308f2775b05c1964f43e8c93000a8d12536ff998dd472e80302047c435bb5006730650231009a46ac5cf5168c10d6931fe262972b6dc64e92f450403d6c899133ca98f2c0579f016c9e083741b1918a8d3253a65aac02302284f6a4c6f231bd55ebc23378d4cdf0654550c0f219c21c648f33929c535d7fb734003a16cd67f740d7cdb4170ccde70302047c435bb500673065023057f8bec4126f11cd29f3917671fb81e1864c41702736ed7c1ca78497cfc8117232928a1d8f521689f387e298a21dc5a9023100b4026c366c1f1691899a0bd7f4b92191ce7fff6412c94dcde4b10c8617c18272f51ce33bdfd8a548e02f9e50a3747e6b0302047c435bb500673065023100a5a95f359674590289cf11d0d4d154b7338675208b17b41fc708d02567315749ac8101ca2e42fddd5b14e6b1d53a9c950230799a8877af0e966eff5feede4d4759ee1ec5cd17565cd9dba7777549987af1ab4bec4df5350fc717d5133c8d9988b0290302047c435bb500673065023100c3a4cad9c7aca5d14734358e1bbcbeb08a7c642684d4bcf7415caef0fa131dd0ca804601adece2dc1500bdbda39de911023069e9d145d77f3ade5c05d20b84c75da44966264ed9d09aad11166205e9d9c097ea616379febc2d955c24bcfcf65a3bf70302047c435bb50067306502301568823a2e1fabeb2b72056e372b06b7c60d59f3d2f152193220e7947a8eee6dcae23caa494b6e2e155879965be1f23e023100e3f1c7edca55201b45babe06152af2fedf1c357892994089f6f8a8a2050785b3787ac454ef4487df99a8a8ed660abce70302047c435bb500673065023100fee8f3a1c4cbff9ab32aa0a42b8c5e078888bc984fd0a50601d8e44faafe8369dd31c3ada604b6ad8944f59fb1d2268c0230162c0ecc21bad36a6fc76f6ce455409cce6f89d5ada8ab7c69a611b849eb63cec571267492033a7315cdd0f304f205fa0302047c435bb5006730650231008e797ac6c9cc8decf61c8bab30601c67052b0594d08bf68fb4f6715174332ff291c7c4aeaf019b6ae1249a8fe2536db7023007feff594f1eec03c66918c558af27ac66488e6fa3d12fd344f815dc1a987b0497b4ec53e524f453a200bc55e164cd900302047c435bb5006830660231008fe29a88a7ab1c8051362ad10c45093ae53c505f3e85c959229328041190505bbe5e0ad516177cb574f9c2ce94e20d6c0231008686c587b253c493f859cffcbead840ddc2c98005586b50a60db1ef024cf343b696bdf3a966eb6b55fee50bf84d519250302047c435bb500673065023100d1e8e1d5b498adc9f7e4847f0bd00d5773fa3248e7e4f0bb56dfc52a7a6ef23dc22110bcb64547c29488cd3faa877cd102306896cebcbac52902e5b48233179961c57c4201ee883aacb48343bbc236b1dc33e9f53f4225e460e4183aece16a4876190302047c435bb500663064023075c21bb02880495b4d49df2f0ef8e550df7298d12a175ca90d4d93de5065e891d899ee7799701184e393bbff7c621d8a02303c259df552baecac51e06b312ec8097219c7ed647d68bd27fab23c8886b3793182f52f03c93465f1a81780901de62d490302047c435bb50066306402302a9ae4b704d29aef6c97ea4d7b5615314d7e696e33337b6fe74529058af8beab750246811c438ad1b5d1a7c7e501e7ad0230022010b90802f7cabf2dca21b6e95499265d73e1b75faae6f23b7827b434f5618b7b9e55dd4f4cabab770cea02643d8d0302047c435bb5006630640230331c5ce90d6617487cc91582afdae3cec7184f0fa4cf3d52e0b82355d27a500b629cf819e328cb00081246e9a0c0bd0b02307bcfb8303f3938c5b506d4ff1e302e326a549f9e94f855d6146090da2a5fc3d9a822576c249e9ccf68d9ad70e080c7120302047c435bb500673065023100e5eda29e9cd94d0a98302c2c25d62302388f9d9843c711da5366b35e80f5d9bc1e8970ec783cb714e7997b4db024988102304d4fcea4d78f0184da4e5e15905969db572d4578252d87228b5b1ce54ec7bb93bae8fcb7a92b5688e622aee9e2edbda00302047c435bb500683066023100c66087fb5d41ba2688b70d1e6ee5bba7f8a8ab21a24c44e67b4639337ffc6f58c6ef28ada0ff9b18466dcb070b881a17023100ad7f5c3d6ab907833eb74e35b99e82f70aaaa8f5709c39e48a76a18d04455102f2b6013c85bc7f310f91e2ca2b772f250302047c435bb500673065023100d941e1f1992a87a233a4e193a56a9927079e48d3dd4f9ffd78bbb135e1c5d5d448006dc0381bb9ab25eb39e508cd186d02300649be251b1b49a28ec4f0ab941863087da1d887793050c73075767a71dc6eb40f21cacda8b27559a11e5a8907ec933f0302047c435bb500673065023100df0e7b03051dbc9ca6f85b13f7a1993fb951006875b81882e79591220bb419a2b880ee0e2c9b75dd67b6f1135e3ab87c02302bae4a0cdcc527a07f74eb6e6f505e7191c6d4d390292495b212e6d3815c19537932688bfcd4c743b5fc12179f781dc10302047c435bb500683066023100e1e55a5c99ae528229b587cc8d90dadff246b39201c36fd82f861c936e1bc8731628d379b57ba249947ff7a02f246a70023100f48f3635cebfb2d69413f900aa246e1f8b6c3b7296a5fb38bb82f03bf5b05a56fe547397599532bd7aa398b99b676c990302047c435bb500663064023021c665ef3c86b79740b3a618114590889b74849519807921d1f92dfec2360a2c3a4e8bc768679dc5f1093d4d1736995e023061f6f4f79a9c955b4075a832b08175836f24acd26390b318f67ee405f8116b82abfb8e940a84957d463c60dd9bc67c040302047c435bb500683066023100833136e0b77e1a907bf90676da02c3ede9c1805e388722b4868d4473eb011fc38f00f20a9f63266739fc879ed0f60660023100a959e5773e5eab07dd3ed3f70d6dc56be8e241483f7f82553fa54c17510b733b633df7203275ab77dccd1ec8ba518aff0302047c435bb500683066023100cd8b46b92bf57885e3b256d00742d46a9f9ce864f0eae084c056027124725575559402c5344bbd9238f501b60764ba93023100813c0d7a7a87d01b55fdc644dcd9a50f3faa6b972cc2fbfea18ebf7ea31347a6dd2eefb7710e16741fd4758c803d44320302047c435bb50067306502306864c748a9bfd9cb663178c830d1110d2e0dd5f19e6943a66ec400b132353dec03fa7aa804cf3e5573235c970d682239023100c55c952ddc2b1269c07b0af489e53b9afa11a482421884cce4042659a3bcceaf33f6c1e0dfd7b75578f4cb6371018df50302047c435bb5006630640230755b0f5ae99b07603e1573238ef955d8ee3facfe8caddf1754f7f40cb26deb9b6cad9add636557d5f5cc8b7e796a7cf102304a6d1f97a2663a435c2717a42735d67f2c5dbecc96910cfd522a7210330b51c9b3dd901ceac3bb7415d4fa86e6b360bb0302047c435bb50066306402304a463ec4f27b22c1b154b2ecf9608227653040a247b93d1ca10ebe8f71c60f697afe4a12856d5f3b53891e267d1bb85502300a638ddd429235e52b755eaf29397f20cbe6618e8ffe01ca6e928ede8a24bf3709158b85a18d213b4d23e5228e79e5400302047c435bb500683066023100ead73d327b6d2a1741c683356c4137dcf1d5cffdbe49e883395050ac95080347ed1e138b803f16dcb515839ffd184d9f023100b7d12f1d3d994708e97ff272d8b24a0c5ac766ea4041223bc4ddc16a7b2302d8697bcfcfe6077c09cb0a9fcad27f036e0302047c435bb500663064023057e076b19d74e64388aa7ec4d8116e8d13b2d6fa530a070f1185f803206d4ada417adedabf951b044488c75974d51f8202303ebfa94285eb8387259e841b2c50e45f1d09b9a182c27f7124053c1a22e4d469ee4b945bb73e7d8bac7a99681f6352190302047c435bb5006830660231009d3a4af3e2b5aba302dbe103a5d33cf78298b3bbf7455ced8ea8b2bb5068a69e85f9fea4b4e375e89c2ac1ba560b4a93023100d71c3f33c51046b4530670fd212037258cf6c11e4ffb9575d720c7dceed6852442f35a6d857ee5012ee9f0eddb29700f0302047c435bb500683066023100a7a81f94988c6f3441b7aa4ddd018560fc242a1d3d432e3ba3174d97822711cc12505d6d3f844428e6d1b2a4b04f58b0023100ca8997f10aade41b86a5b8c2479875b0ee096eb1ff6a273e6642b164b434213c7acd226d27228355592f4d000d37dcee0302047c435bb50066306402306ec34ea550a40081a9b7bce07a644d0d97f8ed411680b7b7c78dc33d88d99f8522db58e82aab274c18f43ef9f2b626eb023060a154a0b90da6990b81a83ed63085224f670463764be818c2fcf3317eab57d3611c54fb703f7de47f6e0ca53eb6795c0302047c435bb500683066023100a9468cc20b663ced276ff8b7cf5b52901bf18208eb52530a10a434b4b4bf73443bfac991a7663cc47f78dac98fc6c509023100f1a6f6a2a65e8b0ee161fcc57bb70207ddf4468b07a28aefbd8368a53c10cce99ca2cbee05d91f7fe6a802aecaa6d0d00302047c435bb50067306502305b6a33f3aa1ea4460dbf12305917e94f3d3cdd90456b67287eb3e1481bf15380c717fced426af922770653ae008c792a023100c3a648b8d029ed3dd37cf4d339b7df8254e7cfad01ecc9de79ef2432d455aed324fbdc0b8bf664c9156776700e3b22520302047c435bb50067306502305e5cdff28879328e570b988a51dc0caf2e56366eec3db68ffdca5782d4655f5717bd9c1da2c1c18e608a987d636a1664023100887bf435a367c615e1b0f0050425d669dc1067bdd872916e21b5e15f2995fce6658bf8982fb0a656083248c8eda864470302047c435bb500673065023100d51cd8791bd5ae9bcfa84284f7a5a8b823ada436ac3b05e92e28c00a20121330bf64b9a3b1637ea795d9c77a95a72fd802305aad3813d24196620ce2058961db3590d0ebf9e6197546637e99aa23d2cbd00f9f15488aa6a1e1344d03f8c3e20d28680302047c435bb500673065023100edef7c7c1c74f6eecab55eeb0d9f828bfef31ba45c1fc02e980b79bd24c9d981dcc1a8c4ac327548dc4b2b274999aef80230544b1df113df6b9eb0428d2214890e581a74088988e39edd040d6e098339157323455ea3b720ac94ec8811b826c6280d0302047c435bb50067306502300c40f8e31f0ea5f19a52e9af6166c1ba1b7b50095d6ba144a8afb108626563594e9073188b2be46e28c0a38908723345023100e71258618f7f499282c4b277cd9e2b216936472cdb40c177ac616691a61c4c1cdb8a8620d48da4a5ad82663d41065e240302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303275c68e5b815b0caac3af32c0636fb4dfe30cf90a62243ff75357836734842d830a95a298ecd25449ce4dc1cbaca85002304bf995887483e53bb82baadab71ddb4f68b949f23a7b3c97403590402042af9cf931cf75b199e19005b7fcba716965170302047c435bb500683066023100de3523a7f92ce708aea4f3a2396a9ece97d9127da2f140dcf120c9af7e24c93f183604f600f07f15ba326978050cde93023100b3f34e12431a27e6ae7e04bf71a4288f07dcdd841dc12f32a14e2b99621794ec311804686eba76e8c68b1aea6910e6230302047c435bb50067306502307a20a847e662e265429e3a356850711f4091fb25519c8e1eed764231615ceb564ca7c4d77910e4697ee244535157c6b402310091908fb9f1b86670da72fc63acc3506006761d0948621e753542dcf1e0c7bfd48650e5124809890dc98aa431b93784290302047c435bb500683066023100e42ddc35b006b44b4e321e5af026af6011db0b9c334c5584ef9683a937ec76ba1318217d883256db2cc9b96d729ec7ca0231008ac30244e0333fb9e33f660efe210da1b7c4a690847a4d5295ffc04a8e2a40c7aaaa0de0c5c785d1c15cabf02c5a4c160302047c435bb500683066023100d42c7a1c1058cb745e0221fa1e8161ef475701876f429bd2a4166d94b9526fdd7c3ca989a27894b6ea5d0929708bda8b023100ac0548c88bbc6836221ff9570312aa58bd730a28e0db9f7c503c95f27f52cc00fad4f54ce6d8f1cdd2159f6ec37a50520302047c435bb500673065023100b91781c7665e3adc60345130a801f18d0fbd66b4e68fc04d870ac068b6833f6a030e1bb9fa2dba7eaa7bb1a540ccf52002302f0d712c9c76d3dfd10861d92d17aa214bda2f1d0a9f6285cc6c6e2b496163e4d09dd5591f65ef6ed3acef1b4831e39f0302047c435bb500673065023073ac1be4288a04d4e0fc6b3fc704dd4d22b2dcbdb97fb2ed30dfae33ea5090b9bec6eee6e106989bb5f05ca35efcdc04023100f7fb53c18c4b8d911a1aeefe23b97fa79fe50181daf5341a7753f410facf951fd85c6afcb687fbafd9673fdf43833fb10302047c435bb500673065023100ece17a6e83f9d2fc7f93182890bfbe7389e9104056797a45af1624b09294273706b194468045f4f7cc0db0d42e84aebc023045844bad147c888d3ec9eb1bf1ebb2f0195a02d3d8d14471b34ed356007ffa5c553784c3f17b7ade05d8edeae2a205d20302047c435bb500683066023100f7b7f9e6621133eda904c2766155d0b7eeec9589cacc0dce5e98aed818f16485482da69702c3ae838694554a9295e7b7023100a668c46836acf41e11e2d58eceb73e44c14eb0acded5fd0b325a406b0ca367e692693f713a0f62a020bf90b6497ac7d80302047c435bb50066306402305b7c5bc528b3277aa9f93e3e9888b424fabc969cd24fe6896c8af29dfe7229d232b0107760bc3f0828b3e93cf1f3a7a102300e1b4b74048e05b194d2ed3ffd7401b8b53bd45f9bd1ea2e7d465ff09a87b14f874672c94742c318fdc604db7597c82c0302047c435bb500683066023100b58edd8e7c2d11469e99e94896dcf48a34ab62236816baafdd40034d8688f2d6d67c659a1e520bc862c54f007b3f8eec02310081fcdf6edc660ca9f176b2ce0f95552d619484c9bde3011648ae6759747c3b52d9671336e9f985df901c584131b74a4c0302047c435bb500683066023100ed5c02ebe770df5ce1de5e49d3373ffb76debc3a517be993e771c2f6e970819ea00bb7f2e53d62084263dd44fd908f7d023100f6c9238eefba9deeb12cea87df07f58859744663fda820370ef21b626b706caa56249f459cb3954635cbb5f0a568ccac0302047c435bb500683066023100f4d131faf74f5bde95c2007a746c6255f4b9c8ffa887d49516d2e2ed3d520f88b280279ea83acd9fed7ccb828f992ac2023100d72719d939d821c0938852107863237abbe7c837eaccd1ecbfae6f2aac2798c11ed28a63df3f47700d6a6242619c963a0302047c435bb50066306402300c0e76c9f154a6259cfc933fb1f4378ec23417cc915b868d30eeb4648d626638cd47b2f2dd6dafde3713f1f8fc6e646e023004ac3d46c6857ba91ba39b6c215c2469ed4bcb9d152cc5d5214882195253d6dd9ee8cc702be2692af4f1c16b11f1de2a0302047c435bb500683066023100aa5d794fd11ac3a2c635b3a4f76de3a87517f8f62a1c4f15efc940959dc0fe252f44da2c21bb78806b0c1482b64d9c87023100b81d17816717e7709d72168f3a346be4ff9b3a5a169cd9be3bbe8de9e755528bd26a685671da09d2130cfb6bf690fd6c0302047c435bb500683066023100c12ae0ad382f39df0a6d27e2645b8c6e9d32cb7f395184a96856977023ec48cb0b20cb09095c7a40e22ebd5e61365499023100f77a0d7c3e7b89451b9f76f07ca2e2f79d65e9ebee683f85c67837ae8efd78889488a2c06a55115d2e3310fd3896c8a60302047c435bb500673065023100c5c20e69e60471abdb7034dc23d045af995ec1aa6db1daf274063507babebf40b0a1b715f00f2f7ebc1f7d22ee6d534d02302cc0b7d6ddfe8e5a69cb7f1b654a6cc52fac6b79a3b111d1a452894a1179b00ad83d1fd54f6bb640fc1c4476aa26503f0302047c435bb50067306502305581410619a5404fb90a5e7358796a4f5ee968f9e79fc993ffc73b486ed038deb50373f4faa40f29b92bb04e72a4cdbe02310097ee49d3425bbe52c29ffad4ece9dd8360a74e64999676c30f608a95c21aa988df7e1c91d4f3b5a8c65b43337e01a5200302047c435bb500683066023100f5bb9ef5da44f056f9fdb67dbcbdba3b805f9c56a69d57c4cdcd3ca85e74262959d1fca26c69653068853d4571f08d9002310097f14605aedde52c8d12768a57b5b88a6174c1d716188db5099f71dd2a15cba4ebd3f72e922ecc95c2612857c0c520e90302047c435bb50066306402304780f0c80fe11cf3563aed4add942b2d328f6664bb7c4e44c52d263c31e06bb2fbbde2f52d8f2b28e28b0f11ae9fc181023035511689ab03c040abed6c517ea1584e675b3d4bb530f41d299cf56c3cf5fb8fa488de2e9205c586680a44ec0768bcdc0302047c435bb500673065023100ebfcfd4b839f9aafe41b902d9a57ba0aa082173ac8f85cfa660547694755bb270e594eb23c0a37babf078fa00d47e656023016d12713afe1299ec55f63cf12a04f7ff834937fff868708ecdd7b51ab657d010094a53c32d6c97d086cb5a7da47492a0302047c435bb500683066023100939a84911d29702f2d5455c6d1935bff70bbadade5552d5e2c1232ed91486e2e00c759d6bbf4561ac17e5e6685e0a507023100e05a24381af00a5a74b18af129ca6dc9bbc63b24ddce3bb67a823e85a7df4b07cbaaed5f778fe0f0dc52fadc642092690302047c435bb50067306502300ffabe6476f5f46c8f4e61a3e554f53cd4a76951925a9eea3c6a8319c7c869bf35492a045bb44d40e7ce759799907911023100c2efc893bf665cfa44475b225e4b91ecf376b634792585baf67fe8882d573be8398a970caf7f0866a2858c2ab07a07590302047c435bb500673065023100984b6b2598a8b48c91b2a85c089e420b666711756a07cc245d3ac25cfdef58e7aa77dc4540eba5525d15c3ba0a9f8f0a02301861ed9c38547ad04f7b1f606b983153272da9d10ce0d39d1991ef6e2b09563847ca5fa58a4aa39004b8db23df3e8d550302047c435bb500683066023100c56a3a7fcea05bae3a2dceb7d8489a7eb3e8cc9aaea066067360a2041243d72f1552a2ad4aec6ef16862f49692ab2d920231008583d9161b80fba5c01c75e793e867ebe4bd4e7f024b3a2a1f16dd1770c79cdd0cd2a9167ecbbef11354b8418747d5800302047c435bb5006630640230113a2514f43b5a1998e35e76c7cd94e9c9c8e62ec81cba690e6aef24536c2d09e01753a4a6f27b39750237692e7a689802306990abf8ffe9e58e0b54357758de28094620d8801488547fff237f5b55556eed548965d53261145c35a5445551e26ce70302047c435bb500673065023100fae715998ffcef2d38b34edbfaf46748535db8d79b4a5a89f51b9db4d4f4ba58bb9b5550a68faa9f5cb65e331886adf4023040e4affbbc194410d6b24837e859c4290a4e97ccdc69272e79772a2ee184248ad492980024533234b24aea27bca9817c0302047c435bb5006730650230799f80fec49f18672468d208fe84141ebfe7192019740c92e30b7e196ddf386075fad26dfd255536f2145fcd6f5f1e73023100b78ae68cb10720cdbd4cea793e5444ecfd1927f02c9d7d157b9615f7ce69ee3101ce8a2b737f42051d9394be3027fb150302047c435bb50067306502310082f75aa20fce0676755789f1f1e067e2cb0289bfe45538c90b29ebb4d203c3768adf5c02038e2f1c3cf4df57cf5dc9d202307b9df3e058756452a9c1e2b2c27279712ba07112c775e537f0564abb37252dd05b0922c96535377b94228ac2d52768540302047c435bb500683066023100f30b00f073a679afe00b03a32a09cd1ef64585312512e77f045d74af41a6cee073632fdad89a117026b20bef074be8ea023100858201c7382b900d490727352f5dcc1a9c0eeb31b044d5b26cfcc5ad89a39e07f39e70c3f6356d732c8f0beb7f95d8750302047c435bb50066306402306d98f9b98176a1ee50a224b897feaed23052887a0602f5af2f84f61ea3d62c445743a99fb8a2d5f19bc6798c3720c3c70230619e1a9b738c3d0dac51bc016154a8079695a124e21b2f70a82e27bf9046de6ecc8eb2eaab4d8bb3f39116b61c6b40660302047c435bb5006830660231008fe45eca29b863376dbd1f238aaae9b2bb13d2f1853930ea63fac0ed2fd6c9c557430df48eea06f2f906e575a0a095f702310096fc6a090c546ca87dbb08ccd0df677adf1a1e89c5ea9e7db679974a8eeaf2d9c054ed76357cae758ef10c86b91609af0302047c435bb5006730650231009abc616a07b17f4bb3c019f1b6bf3c587f959397d66f17ab2a7d29ac0c2b3ea4077e89c00883fb526728cee6a0264840023060c0e8ff10b3d8d946dbc73026a8c63dc59fa6b8cbfe94d960feeb07895b86f1954d88b43eef639b8f56b49172c926940302047c435bb500683066023100f7462dcc1cf3e8b4ba1e69c46adc414aed0e7ba67aebccd77da5557c11a67eb654faad00e56b9f0682ce4701ff353ac4023100da5110a3e4b5647f90298a917d4cb1d98b944f45d70d2933d47d260191eaebb8851a7776aac52221373c2b6611ba2e4c0302047c435bb500673065023100803eb1bd90fd690c08fe771e62158c8c263ec21136f285d34ac5aec9c2157a5a4a4ee85d5631772108fba5c7efc9cbfd02304a58480e38cd090aa8a33bdffbb5b500581edcc4c31981020d653b1209b63b489b991efde7b78e6383b7449a816ffc9c0302047c435bb5006730650230302f80a4b0edbf8519f6a439cb79bf351911b0925d2a69869ea139518e2cf4c8725a5307db3d2a55c4706e55cc2603c6023100fa78e05b4a817b0f1caee7e7d67acc79d0da2354bbb5f3d64055be4063dd79d8249b2328980253b1feef7ba6a45a32af0302047c435bb500673065023100aab1033e55e578a1d8cdce4d3093174fbc2f7937558ca133098c825362b2c5b9ef430defbbb6e73b700aa7ce9c7723c0023053fa87a432c2660cd7bdd136d3617bd169fc77cbc9b54cb52501dcf3a6ba03e806906d087902be91ff0236a77b314f840302047c435bb500683066023100b4a8845f0763527d3d13d20f292e1f47a37d4adc3da631144db59fe5cf10a9354b82122076ee89b5f465c5b75a3b07d7023100fc729d14e9f74d89ad99d4fa9708e705fdcebfc90d01b94beeb75f31dbfa589446e5b088d33c85da2279e57a6fd39c490302047c435bb500673065023100cb67dbe1107513a09b408c35b003a63dbba0fa2d0066f1b0a2695130eac0a225f791252ed1b59ae10213a2186063c27a02302b99a66679e25b0010df7e193a36dab4b6ed93b434f5a611c596990cd03182da83b2c86a9cba44933e2d94df3d28574e0302047c435bb50068306602310087a72017e9840354b964b5d362ab37af02a2079b4b42f952e5728bc702743b8f462ce4091bed00a5f69d39b8b270bbc0023100cec28c308e0a1c54485ec88eaefdd1156c3d1ac73e1aa97b59866f84efc6c6ecef11a726b62fb93146f2955b88198a080302047c435bb500673065023100f5b14fdc6ee3eb6b92860be4c7fd86f3888eeacf9439a0d9e965f9ced7fe5a0f90934beac81fb022460282be178f999f02307a4e200703599ff989efb0bc8983637375ffbb07a2dbcf978495a246d670c0ddfeed25bb8fa10c38d69b7c6efaf6a2cd0302047c435bb500663064023037775675bf7c30db5a2f19998d5e1b639816153bfc4accaa5c1051f04a25bcb140e884f08ffc42c478a284904436d49c023040441154ea1d1afd617828fc5715bf8c9d14f9569afed793e352660186fa4583ca6bfc70b4b2f84302e0ffd6c4565bc80302047c435bb500673065023100ea509f8de495bd70237eebebf9bab4598516af538d64430f1ae0392dd4482e75735af56890fe57e91dc7acda1b16944e023061498f444dce5e4dd59c34c8de679092c9b94a083df026ec1238cf2d009c3ebcf6a92b82bea28b78a38bc5a0ae8af0e60302047c435bb50066306402304154d90af9e9269b56094aab23d1b3308771af6f3c0bfcd3a63813d2f744f93d28f81386686e7191879b78059a7cbd990230156ab68088cb92d07156c2f584af19d9da29be1b029848dbdcf977272b439b690f62435f8464a9f49f89bbb296ded7ed0302047c435bb500683066023100bdb547509d54ae87e5916df683fc24f7082fc271d1580b7eb52208ec873957edcba66a06f7427d239f4e94d5417639b6023100ad3fd0447b95a6df4c536888016ea0ae14c3ae219663446316bfc4beec4209a192c39aa02529ef5d69f1c22bce2dfbd20302047c435bb50067306502301170ed3a5a577d3c337df2ccbf3d60e36c00d20f385137fe18c222d772bed9439322d0154d09bb77dcd779ba62f904ba023100db598d8bbd563b8af0721fbaaae7d3cdcdd3c0ed1a40f1c7e70a683ca2e57e7af3761406a9d2e52b23a9566919cf76490302047c435bb500673065023065ed7fe78f621273934e6c701e7fe08cd71fdbe975578b28c766da4f68a485d03f178088deb5fb4e1a0187eaf9547dd10231008a83943f5320360b72fae60c975839b71d10d77585b9ac9fac25dc74c3f314dc0abc91474917aeaa2ebe3c97924c34970302047c435bb50066306402300d09108125e582a3850942ef8c40db9e07da94a9d551fdbd9c514a970af221a2fae47474498a0f2bb1d094b313f59e6a02303a28d224e4d08558183a74dfa70884a0f4c69e38be2e588f6fa27f555fc8427a110bcde04300dadef365e70b69f284810302047c435bb500663064023020ee8e1d38331c14a7450b20264736fc34d95eeae6fef586703f69ce9cffe3af36995041a111d0943ddfca36a24a10a5023039769dddd16c6fd39ba3319d5a0dde54ff6d4f095387e59ed89386ebf69abe18e7328f7868d7cf3c866a776cca25e79a0302047c435bb500673065023022f9167fca144bb9e89b83c9e84c685d9ef664f8af7edeb9f09e8d49258336017b5103398018118be9b95a9ea6a348a3023100fa8062a44f96ec58d45d40eb1dbacca7b7b5f2eebd325715b5923d4cd44400521495b0a9ac1dd5ebf81cef71939689710302047c435bb500683066023100d5f7f8d39cf6c1e24375340f4e1911d7bec49a2e43b31cc80134f2e1039108da5626b883034c90ad663450012b6acfa7023100a03f2213f1b069448f5f98672d25ac73e5bd3fdffd30ecee4e1fe4e168ed4eca61578461ce22557e875e4068978cfe670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300676af27d86285c031cf50d587cc3a020011af9fd97f871e4eda00b20c3dd7387b64cf4f2f410030fc0aac6c01343648023100f707dc61960eb96317b69141893750def08d1dcbf4578aa8339b234f5c13dc1a4a5c6ed6e6b6bbee178ed71da07baf730302047c435bb50067306502303c43a3372eebc9c0395eee69263395bf13871bbbf17fcff11e77f87e9f3aaa3358a8596847af4c1fd393a423454fb0ab023100a924082db0a8ad93054bde1652044ca17b87f067f3b1a8db60961de07b67326d54c27f1617acf5e8b21a18313653b9470302047c435bb500683066023100f04d3de2ecaa6009fe256566e83391c1ff60334e14b9eb6669e168615901a3d39f7dfb043b41d28bd9f00b60cb782850023100c923b8295196120167a6ebdb79a33e1e3c1f091316cb7010686e2650231959f6171851c98875d49c516a6d7a27b4ef940302047c435bb50067306502300b84eb18c4d05d640fe071e120497dd90acffb0a0efcbbdc52a50336a2f77e5bdc1db3505291eef66a6a604c049f6b89023100b2039ef90892f12a614aff67921eb13242c831a9e9cb78b47247c54a37564e798da55aa7e58c3e8b7ae44eb95c9bb2830302047c435bb500673065023044c2ae7647b71b3c477898d5d8563343b3db1e901aec0df5fb59443b17309fc5f849b41319bad2ffa7395d5e3ee69502023100fb242458b0a1533a1af21cafc3046e1997e7fd737730db548e7f4c7c7fe7e9aaf27f47e5de5a30a6e565c3232b672ccd0302047c435bb50066306402303ed12ef33a051d3973ebc12a9d299e3907df01bc90d714408cd205d0b22a870c54a8b9f60e303a5d475383a7504a3440023042c76690de866a00fb38935664767a184de04d4fdade26efc464c5b1dfb7a1df8531527a62504b5b976136b43150f76f0302047c435bb500673065023100b5809abb0f36daab79c1240a700cc38b5d9fe68a5fb138601036b1acd0b947f186b3ba2cc04b981710647bc10cceec8c023075dca0f4deb77f66038d633ae97b7eec934f9bc78560d6289b7e4a4efca7954dc7ddc5e5c0a5da99ec44e9a569eafd1f0302047c435bb500683066023100ba61220384cbce6f5c03c3e9521294612b2baecb662132db5868bb042e266a97f961baecf60c65968fbc50c71fc89f600231009e3dceba40240588373f2a0b8d41633da4523d0fd17a9c451492cb1395b451758ab1500b6ac09c086c83d7f355d4f2460302047c435bb500683066023100bd19b550dcc916a0d5ed54754d4c3457c471a1752c4579a105ad354493f8b57a9d2188a7f872583863754d2ea2a51c2d023100c7c382d87c607e6ca1827b3e387c87117472b3d8d3a67908e1740fb681739ac9131e2c3f620d004f9271e8675093823b0302047c435bb500673065023100ef913452d57bb39b4d1feae56e7a2419297d34fa14a97f2406f991f197b50c125d893250f5c3ea46bd8ee8915812864302302fe7871980fbfba5333ef3956824edc79c25c47995127195d57a8e6f78f9491f1882b297b2f03fba2dccfcbafc7311530302047c435bb50067306502304721bed03399004db648d69896f63e96e3e9ddfd38c3996c0c42d1631f64c89ff291f93cd6fcbcaf9c98295b6e1a4c62023100e337cb716b1ddb8b4a85f664f2bf641ed19486a93c24431685ef9ee9acb016964f5ff71995db642057fa5fd0284d46270302047c435bb5006630640230406e61613e4246c7538db54dda207ef897968775056493dfa4193c367d95c2fff02abe8643004c372ad0123913c5138102301742a675162de3023c3f2936eb4cb3262fd7c1d133c2628e5609c708ab2bd8288c8024d00df0c502e1044a3d68a50bca0302047c435bb500663064023027e2c23901d945c45632833e56805f01df204b46c26852a80050dada9607ec9dada978362ebe979333a516c13f54d31d02303356c961c328032ddb9c6edca51e8b8fc4dac9278d7a5096a39f913e0ef6c2f9c4976e1d2c8d5e9d9286a907fa1098370302047c435bb50067306502303825926dbda60dada317dcdd23a0a4bdf6cc71ae1b5688f4ee1a409f48572591514bffe0142696887f622086fc1e2b190231009b15c35d3ac61394ff0acafbcad1d4b9129b306e831d9e06b6388a12a9d8610d592da75e231ab1052b11437c9370a0c30302047c435bb50066306402302e4e376acbeb602caa9922ea45a7a28e20b89409dba1e01f13d67c6df1b63675b8063907ec1554b4d0ed7d62fda9461402307f23088b81e8f1399fac114cd94e6fe159ba204604c7e2716edd16cbd51a732edb648712c2784e3acbca7a7fbe2045d70302047c435bb500673065023059cbd605e34430032f40f6d2b50717a2cfdc51d71728a97952177fd0b45d66ad658456ae939539edd97fd95743fe10670231008f8fda6a10d95936aa3ac7c56d64fbd4e8d7c69aad54b1b7b80e7443e4a373cd899ada700b9a1b0739b002f07db3bbf30302047c435bb500663064023078080abf041a17088a81138f6e2b9b5361b98538962c3c7b61b65e753f117c54a181d36d24cbcc316e63b0adb4d1cc3702300830adc74122a9fd54f353c7e01371c54f0381ecc23fcc24baaf334580c28089c7eaba7c5b458da0fdd1189a42adce2b0302047c435bb500683066023100a58f2f90b92f6ea0b8d4ef53f849d326fdd4ad077d7fd76243b6571cec175c840bc47c3936cf03ee5a906b8ccc8a2ce9023100f18ecac1254b9fa4082cd6fddd9db5313c460a9e0b2b501a3c5af7a288629c28b1188979f9b471152431f0a483c52e630302047c435bb500673065023100e8d50392e11fbbe05b981acb23ae324ac1d7e11059abb660e8f087e64c2232dc8b59874a75d0e6df2300ffdee64e9bb802304e5e6b49d122fcaf2960e72846cb8d19ffca06d424dab0d2a25b53e207c4c90d20a099e062b0694eeeb6c873809d5b3f0302047c435bb500673065023100cb743a41cae5cb7ef20783983e0f749134554941a1210f968edfc362414cf2526042f69a0c2b1d7d297773ab028a3c33023036e60c5015114cb4533f4ff16c31e6538eda817158dec50abe91c1e24e77dc6aa4bc7281fc6d0b20fe037af771536b220302047c435bb500683066023100b3af9cc9669cf4d7866c678697bb95c292de33a69df3e145aa9f05144d69ff119e6e6cdd6230fd7200d0ff94074c8155023100d19e636a3e3dd5a1c307429e4a2d31fd6c7a6bab00f23a276198934a6c534567a585531e59755d2726623f08dae939d30302047c435bb500673065023100f923b84050c4c3c71cec1983f173a93f51a328ee9a25ba6f9a4e72582f96b0f7d6a1a1dc27f87111f042c0426b4ba54002303fef2dfb61bf9ace286a31cd1afc4e8f2570ef332fdafae87d600ce61e784d0340e4c3dd1495b9eef8d2e4740b780b870302047c435bb500673065023011f96f11ed59d3ab746e7d57ee81a4cffd07395b304f8e7a83e40904b9e2908531be052672786c2717b65e07568f2913023100dec7dbf5497e95ed709bf6fd8498443558c464dcf44903ba054369906c674bbdab1035f4d92ba8387ba005765ecc9e450302047c435bb500683066023100a1b4dbd1c159efd225b894d3573a6698011ce471117ed86e80e464b89ac4a27d5324c2ddb4aad0188b814383f451d8f9023100924d82c8406ab20d817daefc761dcff02974ffe6c885fb9576f75d1434865172bf47c7aa6a213873325574eaae5029340302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b57dbdc7d3e84c1d028360fb22f0d4dda2841b80ce3966bdd1c1de01a5a52df20e4438de44cf73d7651f0d8adc73693402300ed5ea6fb75606133c90844103fae340292d2e69cecd998807d900ccbb23f8f4a596f68bb56edb332fdb632213ce04cf0302047c435bb500673065023100d7e9f6938d4772e1fbed76641b0f17db97e88eead0c7b425079414010f049f75839ac58f30de6a77970f56b034573fec02302050756048f0b9eff6b5e876036569fe8a3c2f78769e214a826d41d3caec932015e2442a91c1759910432ac5beef0ccc0302047c435bb50067306502301801acfa72ceb8596506ed8435c396c15b26e73d9fd4e5826d49d643d8d6baafb7b2d049ebc9db41d71603caf53f69c50231008fd19852571e5afe9b9f5bf89aad68846e03d76df3bb3a755d8ad1dadd4aad726c59fe05c8f4ee6055f61bb671a3f2ea0302047c435bb500673065023100ae0194d484b85370ee83ee632e71c3a6ca585f1533e0c8ab5c61ccfdd634d2ac203be083be12d889fe3f5c9f7260e2a6023077329ebf54f09b90de06e1dcb0e5d18319b86fabdb30ac075a02a71bef2eabd828f3a3acebe4061a05b32311d56eb2ba0302047c435bb500673065023100abae1d5f3a6bd041035f6652eee3ff02b4573210000ad0a5f295e02a8b13c8927595cb08a446113436e453643b70e97c023055faab6cc94e054e95fd623acdc683f5a44f9f30db1ed7bc323cff22ca14f951683aeafafa647ab4188062d70be28ea90302047c435bb500683066023100b85ef6dd5b4fa276599926d808ad60723e8142d87002f6f879ed4bc1c671d3d788f7c2f4414e6be7025346e43c2c17d402310083efeada027e30f08c2b0d193b9479f6489781f68422175643b0b801ea6fe473c360dfa8d2967f764872cafa0f74b43e0302047c435bb50067306502303efc3bd5947875ae579d9da23809d0b56852c6d65277c5d7a5e71b66f73828947aa3d65659e0636536fef8cbf3b09478023100c7b3a2c25d89822e4c3880ab1dc4cd3f2e620fbc9a6c1fc61a7402e548c676112cf1355904dcd9659f25e473fe46e4790302047c435bb500683066023100a1aa928a183189551c8401f9d014714da95c56c4f77c380e6d36dbd89d576e97d1e778e038cae11710d51cdd3ba469f702310092c6dcb8a294c2f5b862c9b14e7190e5ee0e9ebad108f4345b08eb05ad689e2cde4ca77daa31879f8954a98d5dbed5a40302047c435bb500683066023100d9311a50c4d54a5fd6515228a88f39a99f72164cf75b08b0d7bfd792ca55eeb950c4b36e7934e4985f3e918575293fa3023100d6d26cc92060f42da4a403b2c46ac48bb898d035642ee3d6cd914dcb7de806f0c0564bf2e0d1e32213f88c45cfe8f68d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303c08d4bc3d19595a56510200ac0e0848201820978931cd98f8c3689539c95ff32a7573739bc180e70b5501e85b34cb970230387fdf7216c6ffd81e9e749a25c2a78052cf082a4f052f26369f2874bcc3768501ac261b4f62431bff5c44e703a0d0be0302047c435bb500663064023018a436d6cda4d1679567f63585cffd421f4b40fe71fac0cf790427b4e0616cfb1a621a538774299145bd57b969f50d7802306e6f08372ea56e290d0fd3a28a484ab1f0007541fdb177781f73483f957a577d0d8e1d29fc6e76a46e41c193e23ab9140302047c435bb500663064023073892b68c2f297d60d3b3ce50f2751d266c4fea243d89e9d18f81a96d9e59d49f5a4ba97a4ff802c5345242b2c4e03fd02300ad592334812c3c044e56fcaa5162732b1748e5c9c1ac055d325fd8a4500562ae88958dc0b3f6a8f4713f2922322f52a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023075ae69d93d69bc5de32ecaceb776604ee3da3d83ef398af254ea9b136b2d57f5aee720ec6a757faee16b3dbb38b3ef0f02305e240a94b6484176fd077537c2f9395391bba1145c9edbef07079bed40e38534ddddfdc14360b40d149e1671622d7d070302047c435bb500683066023100b92435f4086947b56be0b66d0651954c7578d71b5e7006a17f3654662254633c377d11803649c5435dced3778ab9333d023100d878766064c8a47cb841bcdd2df0f105fbd75a3ff82546b6f5158d9952ec35186150848e1915b084e8ba53dfbca7ff290302047c435bb500673065023035c3e241b6d2da400d7fbd78d037078027ac586275cc2e1b94227d26eef022867cc01c6b2177b577ec21f438de6e8d590231008e1db0627ff4dfd8eb8d3db874df1b5f0dceff1ee905d926fc1b71343bce08fd1d6dc55f4f65d6716dcc458604e6cb6f0302047c435bb500683066023100e7d1609340a4fbcac5e7f6569fa553538fe2a143992113701751b78134e322048d7b8266c41723f81bd56660739bf67a02310093dd62c95110834c82b5576ae011c37e54209b777750bfc5cf900e5224d56a891e3e21b0dc2c7c330861b4e121ed87e80302047c435bb500683066023100afa27a23f0fc9a6e83a453322b2e1f416775ad9f751d291ae032332f8fa337a27614abae559cf5b70e6812fd67ec0ca2023100b14bbafdfd6e3031b411410d8855a50f964148c755c387eb7007c522794a51d8d058b3fefc2bb794ffde3ed9cc8747550302047c435bb500673065023025ae7827ba63499738ec2662f56a9a95a5cb18e2917532bd7cc42ee2559ea810a773cc5ff8e41f0ad239d2f2c76f9eaa023100fde32de6757813baf84e26196c68792dfeb1c4dd8e2cf9209eb65fbeb9caeb30d22cd18f8746ac56919231ffe347b8f50302047c435bb500673065023100e84d3c441ca870946b7db6b5e0ae37340f9fbf17871df3beddb5b9c8d790eee1b1fa2ec781bb9ccba058016b0aec2aa80230159a0c1bad8fc75b9319a0b6f944b6c155f7d42c75cac94b1a2b56c30f21e6bab6250279e4b1f261315215e822c675660302047c435bb5006830660231008f455ae18afeb911403be096ac4c900f4fee20ef841b75384a4dd0ae27be060caa2a20d1796ffda673b547cc6090dd9a023100c88ec0d37efb08d0026a6300d239572229397155a693d1be03ff41616889615460dce632bb687dfe68beb7c9d5e26f910302047c435bb5006730650230406fa5de6cd5622beef5d39dde6be023eca179086d820e6e3611e1b17ad0e916f3bcaf8d3a1f52a718217d3015503f1b023100b0ca0aee9b35454bba42bb488f464d0aa18aabfbc76aa29e492f95dce032ecb1515aeacc58264db188707cc2241d110f0302047c435bb500683066023100fe0b6b2270b362094bbc4c7329a1f1ad322d4d2951935fa11027ccbcf15706532d0badf9a4f0cb235bbebe9aadfc5da2023100df0c33f627e6ebb9941c15850dbcca97ed66ac0ad65e5183cd0f29dab310377a17ca33b6a96c4067e848b887451f44530302047c435bb50066306402305db98140c87f58eb3598ee9376532033cf13d73232fc57416c134f4ec6f2732738d50787ad965f68326bd015cbad93c402303a3e30281b05fd164c51d051e38800a0b2a633c1cbdc0464b3238ebdbf9ec960a07696b6df58a004a1a5ace43cdc0cce0302047c435bb500673065023012b42ee9b5db0263f3a05109b2b2a206e10b326a463f1e31bb7b0f6a084e47bd76c9f0f6de1b7ef00bc4aa1d8a33b8fb023100d1b442329d949f4e8d772636430f47c2bf3f996373606e891bf2fa3368402912513dda1490817d54b12032b86bbbfa780302047c435bb50067306502310099a435f29375bebb2e8501804a803c5c884f28730629dfe70ca8f0d436239528cef92641013f3b244e31d9a877339f2702300715f399828ce8b96c2b21c686a5074bd9325bbbe96dbd71247bdc773fae63afc3933817ab16092ba2104700dc8b68d50302047c435bb50065306302306b16ef48fa475b35417d5ec6e3ecb4a6b7dd4b7f940d7e376c098e2749805cd26b163d7e6743ee7bcd91819888cfc090022f678dc1dfd69146b6df33d40bcb7cf7184a3a051472729b90d565168e1bfb7a483362ca9821bff3039a80e3990c1d980302047c435bb50067306502304a1f58b8ab8941de8aa7c7515dce94d50b7df1f3b08bef55e090d1af88e360a32f46d0129af160bef6422a43b6c9110e023100a3d7860c104d00cc7e68d4c5dedbf0242ed32c2e67a424cf91c7b908c442a63ee13df539743118e012735b74991f17110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023002ae469b0c6d5742faae9622389a7e648f69790d8536d9da9e41f33f0b512f55bd1cf22e8d662c64fe0e014b5a19a143023100d72ed1724ffe181193523d5b1bf3bd7f6710de3acd938f0d57fb8a27a55dd81907cfe3e9d3860203786d9c5392d5a4ea0302047c435bb5006830660231008b8acc1fb035171af9c14ce6994d3aeb54715a48510d9f0003cc1a9a17208187f0918eee2a32b0d54de243f44e9b367402310095f75d727c6cbcbb7a0589abc27f91046f39039935162b3e820a2b9275433ffd4bafd9aed822fe3485b823c1c93ad5b70302047c435bb500683066023100e412f3376594e2710903147a5a44875bc11f450b1963544377b3c84c42bcb01fec0bf844c58f70d5a3f2b1d76b4a7cda023100d7175345516a525dc02167fa56ceb50c440fa88f4d6656f2b44a4d7c744ae495f9f5ca587867d9b491fdff16b0e336c60302047c435bb500663064022f025dc60dc04a55529e2f184b524cc7257cdf67c1eb146b8da3370dcbc733caa999c92751dbeda89a61b982ffe8399a023100b6d3772147ee7647f0cb18702be717f15f7ff992f51bc0e6b88269d3da0b537d821daa6afe65c7d50240339cc1a151eb0302047c435bb50066306402302fd4f5a49b8f6517e1e7bab037cfc178d1bae80860b3fcfd9c026f27e96025c3b38bfa2fe7a16a424a2ff66568a5d72a0230281347fa8d432150f76ea1b75cc471c33bd188f37dfb343af79be31b06b095df10cca737d9e2ae87b201d53599a37dc20302047c435bb500663064023004eb7b73b278fd077a9bd6b884d256ff54e75baaffdb5c5e60cab4d5148a8baf01e0349f2ac730c7f0b60f6980575ef2023040ddff5a79e2f071f3bd1692660ccbd4bdd72b5008e9badca4467370fd17e17ab46bd16f1a6f77e6c998d6251588aca90302047c435bb50067306502307ed0cf1239d45c95309a5d3e82a80e19d13ebc4463e44984b0d91e0d8f31b79d25913c62064c522d9f10fba485aa83d7023100fd9b7d7bb92c41186eaad3d5c04b78b357a28c584111d77f1544223cbc4c71dc8851ae6b42676e09ed1b4f7a064433bb0302047c435bb500673065023015957c37d5736e9cee2f9f1771973e6ce5958d59fca9fc6c1d6a644e283ee156187abd540388f33e44e94afffcc1c800023100adecab739a340dd316526dece3e56cad4b7adeaf052edecf11e10b072439bc80105d51e170aa0e7b8afb1c1dd76934990302047c435bb5006730650231008c92003723eea48fcd2d320dc673e7cdb3889ff743dc3e08ee17b26d5e668a5d5cb2bf376ca95c2c175d40f35922a7c602307337eb050f486a90e42dcbd8785c3543faec07491918b657efb591922f880d7bad4b755cc52939232cff314700d151a70302047c435bb500673065023100cdde213e2d42b1147af8198b6a2959a1630f02c159326f9902b405f17aef7c1d2fc64fa0351753036080fdaf44cc97160230751a36aeff1f04886666fb927129c79ae020371e06e2730fd0fdb2d1e0d2f73b10582d88ee66383f5102f2ff56e48d460302047c435bb5006830660231009ac9e08f20b6b54dfd072fe4581f057ffe3ae0c911ca2a5e641c09edd6e02b522b6e8f51dac00385d5aae765ceb89a38023100a27c8719f59d4357692f3c542b725fb3b55ed8471085373353eebbcffd0e62fcff9aef88ca5dde95f640c477743cfa9c0302047c435bb5006830660231008650d9130fce415ab28e8118218e73822c2c6bb39b6fd976acc6b38b57fd73147e1702e75087ef35b93c711a165da0e8023100923065e304895a48fce079c5d25bf1f78eb4eb508afa08f6e58742ed376db8fcc940741cb8c7ff627780590b5804671d0302047c435bb500683066023100dda8f89e5fc75c600d05d86650ca0fd7c304870700005bfbd91ca2438c4433cfa9cec925dc18cf80db5a7582b34731d6023100cc262f561fa68446bd67618716d952df5cd31421d2d485c962bfbdb32ec674c4a7187152e1f85044eedbec7f6d936e740302047c435bb500673065023069223ec1353b47f866b7c6970f045af6f12e3bc5cdb838c93c51e49e6e9f65ff20232b1aaf40c3c72900e2e2ca3ba819023100ca2f55aaaec068fb767aa9e30245ec1fe5641aabd691c42f8b97325486baccfac22e8ea52ccdd2bdb86e31eac7da86110302047c435bb500673065023100ced0c42ced480d5188f7b93740b8869cf318ff232c57eef99dadd2dc1da9aaf5534903de0db9cd061635745dfc88ae19023017de39c1715f818ca3e4861131871dfe1ce3365ccdc9df805394b9ada16f8beda7024c32b4e2d990e481d74367d840df0302047c435bb500683066023100c1d1fc93036dd894cf0b5f7fa425926e2d33312debd22da836538667989059aad15cf16b84e963415c5bb472c203264b023100a53bcdce1e77b1b098b3410778195d3f3e6dbe96dae9f30eb1588069c911688bc555f67a8bcc5652f66f2e00701f61cc0302047c435bb5006730650231008e60c9b6dfafedf48919097227b3cec6b5b75e5c157744aa41382134af82f0e5f3c088c63509ade3138cc1e3fb8afc5802302d6bfb9277ed90372f482d15d3226dd00556998de4e356f7c6ca7f28d0ce7abe7c1fa8458c55d0c03bb9629fa073c6c70302047c435bb500683066023100ec13a40e3baf4e19060a3b2bff80297ea5402031b10efac655d677d3a949d3b6fd5f88db26ddb9c294c53864af5f9c8802310085a3dba8c2607a7c401981538ab13567bc0a223ed37817174a8591c6c8400b8e4157c3754aa962077ea45eeebec1b71f0302047c435bb500673065023100e676326a3e48be7ce9ca158bd8b3b0336ffc0accdf9d3d971fd205975c0f6ce25bdd2c8f735535674a1ed8722665427102306a97d032483c42794ebf034533458fac2ec886c9f6370125aab9c3235a0d50e830fa2067d9b3316bee85d0e160ca141a0302047c435bb50067306502305f294ed782c12610f914b31db9240826e273f49bc2807dd87310cafa1b4cbd4f5c7f2e177a33120841d7f13dfef7bfc1023100c1584b08178965ce255f2bbcdc35e765feac9630a120aa6692c49402ea0c1591e64f04c6800951b651696216f833b16b0302047c435bb500673065023100d9d8ae2de60434dc8daa09efca43c33487d7da45a13c6f7e604b6efc7c0473400d87b8b9c8b85499c32b97258639a0e2023044cedfc7807d4d18aabafa875e53c497b4696babb405ce96e9adf24991f413c619f368296a1182e312bd1b0e0d2fc9f70302047c435bb5006730650231008d02445291fb7cee8de59e778598c6781ea4f09009a92d5c000df3e0cbbb16fa97f0864995a8802183a2eefb35704a24023040dbfa4332e2e7e1dee221ff272909a0f0da03c4a9f91a0538f8076ba9f0d6ba771cf8e1b2e7f3555eb3cbc4e2ac307e0302047c435bb500673065023100de4d288e84056e2e8a5f926ed33c17561f350d7a72064b6bd98b01a034495ec52be8d5bdf07c9eeff6a6ef94db0b8274023057c85c220f0389bf5f458e855b492dc3fdff5971bf23570912f21f7ad08b5c917a3b7448650ecadca12ebfe5e612df150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230764ac671b41933865c081c43bc092ac68da391ec21a9cce6236c14bebefa609fe5fa3ced961280808e38f4cc64a5410502303f91c8cdd5efb4909bdba7adf12c195aa8e8b28dc0cb2fad59ac4c75a61e2e4108faf1c73bb7916cd94cc3f743f8f16d0302047c435bb50067306502307133ec19413fdbbe5699a7b891caede6c6230baed54fe389c91ceb6dd46f58e28f299298ca8ace355a7848cbe476633e023100e4c58bddde7849dcd36f2eaa33e991f791e4920511bd6392bc27b322569f23f898e943f3ee37744c37295e506dc490bd0302047c435bb500673065023100c193f4424de086bcf73f0acb3e06de750f4e85b02708f7e6f17b80254c7a4a5adcd4e323bad624a9d47bee179abca617023063ff1a6c007905a9e397e794855b6391b363ee5e5325c3d42dc77ea191b5d1f003ff6f74a60b79605c1c066eb1cb545e0302047c435bb50067306502310087654f2f05b63608a6f559cfe95533e089b77fe9922b37e3587eec5551cd42923ddd0c04bf0befeeb933b7c8f642e702023000d9f8e394c458e455030d9432217ccb749bf23f485fb4ef8d5e2b802884bf36590b98c7215ff1bcb636cb6a9ccc7d6e0302047c435bb5006630640230662e3bc6b961fd9e57195e93afa8135d5b40222974e7cb025638efb5bf5e9ba91b5e969bb027a0d718a09f72f020d2ee023024091221098939d8eb7aa767e8e8b705f5fdb47a0c8712aab33e55907d0c2cfa4409ffc2cc047fe89dc9d0adb4e7b9a80302047c435bb50067306502306385043bb04ddd69c70289a01fbaa591d50110d0f38aea55bcbcffd3e8d39fb49fff04e40a1318c10393a22467ecde7a0231009e6817a419924268b39898985c463f2600002f989487e495f5525f99f799091ff7f66c273409e67e664e4f44f2db62cb0302047c435bb5006730650231008e5d6941f58961a43ca5db8b0a689e6649fb884f33461496fdb21f0a53a0f8e4f1eab54bbbf485dbcaa7c12a5ac257ad023021aedfe2d198bf1edf4ef7013565f66a60a48e295a6c4d8187039fefb5e97c55692585cd4fb2b85a3e253e667691724f0302047c435bb500673065023100ad3fc8656e5d7805d64b7bc9d6cd9cfb951e0a426db590ee77765e3e67412d424a6b577fa785655167bd75547cbedc1702304a9cea600cb6e244e651c70454f8ebe4f10a28be86d65653c1ad2974e1c96886bece2e77b92fd8e5235e50a89252c7820302047c435bb5006630640230513f0f36cd8161edd97a4653fc549eaf4f6ef93b91a5f38601c7e356c5218c26321fac86c392ff90114056f32c7f05f802307bd0bdff5af8737e4768bb39522f99efe85337c9ecceb694c630291623189e2bcc74f95cf930fc03d6605dfdf8dec3780302047c435bb500673065023100ba5ee01d9872ff5f7f89fcc7017be208480e5f5fb8244e58748d0b35a84893b7034dc7750ccfdd5529bb21b2fe2daa81023046fc17d8ca7e920f2fbf504dfbbab29685d85b65a2a0d3db4f160c522822972182ec8165c5e635b21588a5105772abdd0302047c435bb500673065023100e67c966c2d5a8c1feb49effb63cbb40cade05232ca51c766e2210eda3210f533801711f47b71025eb50983b7aff659ab02301cb5d3779f333e5643bdc8a7b5b159bd73b033d4654bfc5375b33194322b6cacdebbe957170095753546ab4e970dde9f0302047c435bb500673065023032169950e71f16ba6e1cb9e89b05b4eedd3ca40feb3d87468f1648acda0b8b87a2a80f2554e361b3a5f1c4e90be4474f023100d60830fc12fc3d08fac092b1e61e427ec2e3f59f6f9c6dfd3aa168a16f39e9c5d4b4aceb419f5932e5aa83e3c980005c0302047c435bb50067306502300ce638b5c7e7f31cc2222dda56f5d43a91ba3f9e28de4b85b290867afbd361d12e61b0fbe1b9618988ce23c22c9c4a01023100b2ac9d7300048d0d8085f9a62aa4cba39df9b34d4e980980d79b13a8f02d537228e5dc85b334d8e274dc4c54e6480df40302047c435bb500673065023100ce3feb7452e7d23a08d110421d1053105a76a97beee9efd50e3dd15aad79196cf8360e3408f08506cc56cf596d2b11ba02300aef960b2e40cb8493b654854f1858b3505bc61146b65d8a7be214ad73d210459f390ccbf7cbcfd758a0fc4dc5d5c81f0302047c435bb500673065023100f47f16cb60de68269447b3dc0c18321d1428db81792e0aa5d5bb2c7ff0c3c0a18c0816d65822afb79c3768c7220a2dc702305ba77a74aaec5f637c222b33eb0378572fae41f7a8a7a7fe57fa262ff03160c7148ddd6095b7394689883b8b533c3ed60302047c435bb500673065023100b531e8b42b03dda509feb9001efb376642bce685cc08a163647329fe8ad0b17d12f9752bea22b5071998cab2134229530230250339f274ab68b9f7e6f5f7041162c79685ec7e1f811e87d05b7d55925655d806c92395ca65af3d0a348865b03f619f0302047c435bb5006830660231008572c8aa04bb51b85b5f2ea161c5837406b5faf25fb6a13becc349ff655778ee11d1fba2cc239611be7bed4f62786685023100d508a14ab1459951ea8beb3cc1d0368ba14cba3a32a851bb355f65f8d69cf725f51f069042bc45f50f10e4e0649a275c0302047c435bb5006730650231009baf8be543456e068b0155657ffec45e199619a922e04cd1bba16777211a8874f2196249ae41762dbb6591406baf367a02301eee422ac247ef8384be3f2bbb719a3d23fe0fd06cca649fcd19eda2edcb519319c653cca5aa0666c4ec44e0a3c69da20302047c435bb500663064023003c98842f2de7bc0f9ccb167c175e64b3845f6dd2f0977ab92d9875c5f31d90de5a6d3f76315e946b552f3b63c840d5b02301d027b4aa63217f52a402b1b833f223ceb1e173ae04ed3a30088f097f14b211c33d0be58198e20cd3b9559f5f0a9c9340302047c435bb50066306402301ae07267e3316921afc45934122c097b67c9cea8e3ea3d9d486d8c1b9586658e3d8f2b2379cb9293e27dbd6dfe4bec4802301ee4d4f369ddde8a2d59cf01b86b54ab058a84da676bc03b617ab29db67ce45789a3a9f730e4f2f493e8e73c31f2d38d0302047c435bb50067306502300c9f2d3a77acd3f037416a36cb810c74b918451727de3bff0f122869901b5e718ade25df280db5cc3ec0abd223d82750023100fe0eaeec8caeac07ad35438c267c5fef5e13cd535600d9ed2b0be76fad02132d4a9147a223afc040da95f26af678bff40302047c435bb50066306402307cda79894c062dcf14509b59794d157e7c55cf432a17a726dcd7fdb968da11b6d08c391e337779263eb3d23f84968e6302301ec44e6c439e9959fb0d61f6ce6ea6f7c9e3fbd72ff472ae7bb46f61dc615f7a11cc382d61aed9e190cfb796b4d7956f0302047c435bb500673065023078fd5eae7ebfd13e41c5ed6c2671b6b134b3adddbe6f65f43f008fc81b4e9170cb6b8d5d998dc195ea61208ea9de96d7023100979e20c25939062a7451a421fbbc9c75d058cafe8a748025864eb973f9a5d417da979bf25d52cd022382de0196b6f6190302047c435bb50067306502301ade5b4ebd8f1665dd9ce13ed1095d55d37c1f025dd418392d21b739a03f78dcdf482b3f32507bd4839a7589b5c3c5d0023100fafc4812b5d29b2bd97c7361d1eed65d7a8f80bc1c30d97556f1582f66bd57cba5ed88ceb71bcb17d34e95d5d2852a190302047c435bb500683066023100be7e0f5070675f45f73213760e7ee1c77ce29d9c5f171036eff53ff6dbe74094fe7e858faa4d36c8eebbd1aac5254189023100e4c8e2cf48cf60ccec336810bf7b9638341ade80d8fad86ad76f9feee42522b38183f21df7656d33c109b7f57d7c23df0302047c435bb500673065023100cf3167535a205627b010cb79b7a9cf289632218a43dc1eb3952d943e3ed72e86656eee5b8fe45c9a8aa10367056aa15502303abbd93cb1ba2848bfd5c8d629b8c5c757eafb9002bc151e9d50623e21ace0d59060033f7bef2fd21d371719ca7cc1360302047c435bb50067306502305f3576041952e656b6150e3fd27c66f623b04dc2d2c46808341e41d263ce65beef3101581c47826d1f3164b3c3eba957023100ca42e54fcb2a55165533b6bf787fc494815ac1be57e7957b29ded5749c84314478838ffd46682941f78255d69c4b6aac0302047c435bb500683066023100e95cb26fb1b46308a0b42ceec38933c1bdde7c93fcbb3a75aeb50e7a98a14812a75ad1ca0d19e4c4a4e6f533a134d859023100c0c626acad9e45b6166e51b9219a0f4cc064b356972714b966a50bc3dbb1207b482b3f2be9de9c124dcb3dca838cfdc90302047c435bb50066306402301ae3e936cb22e4fe165804c4e4413b387db5bd809287b24a51e772a113081a2384a9a492a03ede32bf0b624e3423ba3e023067aea1cf4b7c2ec486fcd4317f0962689c51f783d4e2e5f8767fe1ec4aebfe63718d0ba7512d590b56fa8d33cf8fcab20302047c435bb50066306402303346ee6c4396e23c8f98f623cba8fa4390ee0bc42e0567535327745bc6e2789944b140f30a4694c5e5f8ccf558d1d92a023028ff3c7ca7a007a147412c18d3317f381706a0dcc0903a364b93baec4835fec9b196f7c085908328f38fd5a2ca18592c0302047c435bb5006730650230571e800ef1a571616fcd6baee7a5fd7f5a2a2f05068014236fc1bf733e3ae70e370477935f03b87cb06505c0f3b59e81023100b9cf4d81a633c9782505c0e11887e6204a711b7348e71f239d3a9d32afc70478a85a03d40b3971f0805970115e3fa5650302047c435bb50066306402300f78525977daefdbf7b062985ee76e581e3a2d9b6054a26cfd095cdf6639e0ae2c44905fd78c49f31c403c6f120cb6f802307e2dda8165b7601224d4b6b344bd764e34ded5ca33d6eddbe71b0229c2b8508a1b959af071a2542be2287a7392ea92af0302047c435bb500683066023100d3c283974101df5851a0d9e48dbbb2cb5958ee57974f5614cf1704b2247361bd737e7f43b286393ef1165f060da9939a023100da0ac1edd67e0072e7e1af3e6396eaa8cd044fe0aad63854a3b102c43b1beaf4f47c3cad61a3a5fe4f84cf9878b9a2fb0302047c435bb5006730650230461cb6022d26e61c0cc91803821a90d9b9b606622f52a62a7efef6c8f869fb05681f0e00c74322a1377170557bc56f250231008bd905bcfa904bb5c5e3b3690cebf205da089878aa4f641f2901e42910cde2b67721d163a8ff13e8bb6dc10a233fbc270302047c435bb5006730650230171920e1d84cfdbd9d61cd60df68af755b7838fdf9baa8e569adf2e93fe842646dd6b70b087b8dafd8d1726c5864437d023100da5997cc1fd67c52a3ab59608c74a74148f3c9a575cc6f64dc80ee939cb373951491dc1b48d494316aeac1875373c3560302047c435bb5006730650231009d687904f5bb25d309488bd4e97a2fca809c34ea6ee72fae305866394e6d9b169aa2b71aa39922c6d50b6e144af54c40023045b5adb218f305b3ac6352da8bcd98c9a01608ac12e566eb7eeaf5510d5569d96595d3f9543b3565b8bb8ab96cf4ce150302047c435bb500683066023100a5e9998e87c8a0f41f1268bd2a03cd79866f8f555d06909a469438e1cbed6d85f7470e6a736cdd0808914954a66b092a023100ffb71cd0662730cbbff9e59eea836ad89118f2ab24dc8ea2e704d3b6198805baca162438102d19e1f6080b07745a5b7d0302047c435bb50067306502306c16b099b965e020c27a4165da84228ef69e76dc89ca8ccbf05d29df68f2015ca7095e631f419b7be455ebc29fbc8b4302310086602ebb8fdc8b29f1acf6fab3f62f61db366296efffa06adbc486dddb80581143af307f689066fa0e64dd0747f6cc9c0302047c435bb500663064023064a244bb7c3247bfcdb96060324f1f1a38aaa8d7c8ed406b6278f9f2e6917e5c5e5c116717ddf6b3d6a290f70e92a96602307f6b8c7b1c553579da3d5950ffca8443dfb85e6ccd939909ca798ee22c85553664ac56541a51dabba9ea6d95cac664030302047c435bb50067306502310096a0ca058616a7d92cf87eff006774c4bbb012b85f748b3e14e21b8254e3f5cd0006eac8a5f467bd3f6dc3b9fb2f777a02304b7a528f4c860e9131ec733c7a1cc932eb4cfac5ccb5947bbcc2edaaf6c865d773bf5e36cf5f6917b6f9bdc6841f74c20302047c435bb500663064023029d613e3bb5d310cea49cdefc1880d8987b8c0e620cc87dea3e04133acbbc9b704091d2a5e00ae704b4a5cefe701fd4d023078d3b5b31dfb75d9bf432722c3c739596c0a72aad2c7b885691cd3b4ab74c744156396c73294e28d851c2d873c4725c00302047c435bb500683066023100ee59edfa3066c9e50f959edd848095a1b7bd1d982dd9f532e3f7cb3a7fd11218691279ef063b016a9c0aea6cad4135f8023100b91729a4750eb8c49e56162c78a384d2aa2f3c2a5b2994df50616fbb4af922a9a6142eee1f3772302fff8c3a4f2443830302047c435bb500673065023100a79d00239df971f414b8f0f49731886b4fc7bc6d05cc9ad7a2450512a67bb809c4908e0bb402f439905dca7bd4b2476d0230410d3f8f71fd9c29113837baf37ba38ba5e5d0823c5d9a53ef19e578313bae9058620d471d76c6dee64a6e0de83d71ae0302047c435bb500663064023066a104f5a56efc8057ccefa8d8f179fa6b3c2bc203a4b6d20ededc217b1ab0796787c5e7ab835b4727c113463cb719f3023046ce43c7f8a6dec4688ab4b95dcb9164fe1124afd026f5887d2d6282eccef6d4570ffe69e1b1b1df1411a469c537cf1e0302047c435bb500683066023100981b1423dfcde33f516e1acfc0e4ddb18db813788f88bda4024e2819c8a874d28bdd0b8e4907c2f5eff3a2052a0807e1023100e16baf62e98dc168bbf8549fa58a846e90711d0bee5a7e468d8b3adc6a780afa00b7b0cf92a597da90e244ab694090e30302047c435bb50067306502306588edf267be5d124533f51782028a3c1b2d0b0ff37f02e269265087ef66dd3e5d44b34089c48b6421b3ab481cfbab4e023100e63f7fc7f6fc008eb32630d1ef6a264fce0044808b46a8dda43257c38055abbb87cf85dd570b03fe03662a6da08756c90302047c435bb50067306502310085de258cb03ddafe10bdf5bf0485408c7bc693aa4a9efde4b0fd41fa553df77e6094ea8e5deb67db222e217eba38f4f5023017f758807a282fede1920e3942c887719e6fbeb96847c3db207ad8bb8912ccf0741dc7e3780cee1efb59f419506b69620302047c435bb50067306502304f1dc19fecc9202cb722d2cf2c920ea7af1846b196bb69fefa961773ab1e189b12b1442949bc823401909006b5a5597e0231009463ff8a6a588bc1d189ff32c110973ee9f7662848cc803fd59280de926ce2fc824a3ccb76325214bc722f96253d45410302047c435bb500683066023100da6dd4edcdab95c5c1cd475efbd7a408337a6d2bfd797b79d1a8d69ffb49ad91e0b14dbd7c9236db7bc6a3ae314c5b50023100fb7fe6815d66cf31451a7b6053a2a52cd675d61588db83d2a1d2964d47b85e0dc79ce1fcdb4b3a18731e9fe0b7a76cce0302047c435bb5006830660231008d72ad17b8ae8c6538ac18da19247b89965530d45067242818e54ba0bbdad252055a085bbc66039bc133ce27a361855c0231008128c7f249b7d8590cabee42bacf1ec2faffb5c0372cc4bfb0a19490a0cc184e9fbcae0009391028d0356cd742e810270302047c435bb500683066023100c67ac504b27283647a9905830e9944be582859b6140c3a9b414b4651095dedf7114db902678979f3b947e896109acaf3023100a7c4052352dbca3ec80a87ff21bdfb115885e00545025747047e989c4c6bcc61240b9d8a504fd471db5a104481cdbacf0302047c435bb500673065023076c570881f0ca138f62cf84026d79efb3d6df6deea082c5b8ac03e7e60799fc0052d3fec7454644e47a2718bac610116023100f3c3dc40769100574330a6ff2765f9cda71c2b278dbf60f69701cad1bf165ad7cb1eae673df129c46c02405f872c7a190302047c435bb500673065023100c996bc7e4552c3ba6f69d1a6f2fa8de1ffee494c90629c573a0f3424891c8ccd2c53714f5c86cdbda0eadcda1e19116102303fe0aab2b340c872642b1ca6db8b160ab3b1abc90a640d19d78aea7f0538c31853dfea672a44f484380e145f7e2b84ef0302047c435bb50068306602310082c03e4c6faffe192e9946a902e5b862da9c2dfd648a4e97d551793f8832d41bdc39e1bc46de1a1a374ae4573b7091ab0231009494411089d4612f58fe9508a408d5423bba381c1e486e42ace80feccaeb529ed04d290e1ddf3d5eb7aaeb61615baaf90302047c435bb500673065023100c8467a991de3311544df34c713f8566812101809ad41b530dbdeb09f32124ceb1fb37ceaa29a436dc4062fad87fd398e023009505d3726c799be64366aed8d138b600fab79e9be46646604e3be148a0e9d73ac7cd61ae2b9c3d812cc589846b29bc10302047c435bb500683066023100c1bb9a66a7bf7b8f6651c7b6e9f9596ab297f0c0cb174ed5006645a9d1aa86708a46ccae12915d5a8c5e79f28875db86023100cd251323b30371f00a11357fd38d191bccae77cf67f55fb1667a404857349fdc841354a637b2d5b054a6711a217c72950302047c435bb500673065023100d9493d858fa2c755479040ee68b5e2b749482b318d143d30656f7fd98834e2f1358476daec6e80ef544ea7198536c06d023026e14a2ad75f8a384c5b6e99f365870d504f4eef48b355571666edb3d637899b574932abe289a41c8e6e9afb7c2007dc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dd9e5f298012062bfce17c0110edf4c5f6be6dcb02b23a912905d9283ddd472d5a0c0212c18689b781c035ced35e110002300c5be25c0b3833162d8a744e682d9de3e32d4280591a988f7b7df02e7433cb6c201d3fbc751f1ebabd578f0a45acee450302047c435bb500673065023057ab35bfafcfd0d65fc998c69baee2967f1a282a0a0f72142107e5b335985c4a287459320637e604e849f1a33366f8ba02310083a17f5005555d99c217cb91a567e975159e7aca009cc9682ad3c12f23c5c8da08fb7f8c83ec4ec0a9f397c7128c0a0a0302047c435bb500673065023100b02031c81f5e0c274b5005d18de7bc7e5d704055e7282a176b59c5a57d3b9d0e9af7d8fdb8ba5a522e101a8fbd905e500230566d7baa3e96e9f35c2d0d986b59d2f71de3c519b726d6ace5572ae21f6eef992b9210b41cf04be4ba8e8d5f72319b780302047c435bb5006630640231008ce31b9fc87f98745ad9136b6cb525d0a52e125fd3c67075c0b479b709c3589829133f80a10d2a4e70595b65b8c57a94022f5e320dab3bd2bfcf0aa2c6310a4f7125f0afbfa122ca329b1cae17ec869f2b8b50ae87b6f1707971f8948fed797cdc0302047c435bb5006730650230425ff96e42439de5484f27f21a76af0f1e59cb2be479b5077fdf3f444b213b35c6289c82b9fb44af578f31e98da763b1023100d6c979b4c419f8fed97ac6ff779601530bd67491e062e8a781338c2dc1d0d123af63cded8e5b802576dac46759baa46b0302047c435bb50067306502310095c00071316dcbe7a088558fea8945a6c6a82d53229cd92ee329c2164f80aad2b65f8537d923b6a7a4897db0f16af40b02301714fa17cbdf55bc367fa9fffeaf4ccf5affb49b8064f95f72d82422eebcf25b52f8ce84d9bd6c19cbb8b4a29c5700910302047c435bb500663064023004d1cd90d0171afa8b86218cf2d754a5d2e39646ed879b9a414cc0211c6b7baeeed4fa59e36fd5415708c84578307a89023068573ece2d24dae8263b14bb336c298015bb43f1a1cb6da5e0d7642663c5ad6c9c89b49ffe0f7033f7fcd998fcf1b3330302047c435bb500673065023100a4398b8e748ac7d093bf199472f98d64d88dbe2256eb059bdfdd99fa2c68260fe139eb504baa63d6314fdde0af30a67502302fd853aaf96431770f14a6e7e1a3e285c475999b33baf0eb96074478bb1ae86e7729f86256ea5a3a71c3839c49925ab40302047c435bb500673065023100b4dacdd7523b03a73dbce9c163acbc2353c1f5772e7a97aa35aef1fe98259fd5512164fd0cff2948d1b91d0f7b8af7450230137c7269f1bd049d953ff1225e642af2f7373bd1ed549942567730a403c383bcdc1aaa4ff958fefcb22a5078aae72f020302047c435bb500673065023100d311141a8d5a41cdf87ea9c9b298ccfc030c7a18d8dbc496d5a988f9f97f43c69e16dc02ded2186adb3555097d79cac202303b948512164ebe98a29150fc0850ad5ee481060d5f5355bafd717f4170d6135a929adc96d9b53f517217c3ef8797e9d70302047c435bb500683066023100f2c27bfeb02a1a79524ef6f23563b1824febaa2b5539a901fd8cebbac1a211f0458ebfe1a3f70226ad3b2bf2e3b3f652023100e36e94ae592ce2aaf84afc2de2621cee35d11942e8b2479e8a29f19d8b55eb055c339ec2a2277033288732e3b15a30c50302047c435bb500683066023100edb4d37ae65f56f2af6cfa8ce502e713e907243cad2cf08d2090778494d645a7a7a706ac70181d028f9c1ab3128b51e4023100d40ffa8e280f08a09f671a3dfee9e33181f3cd17acb100471d452b9335502fab4fe78795e03c330841aa5c001dad7a500302047c435bb500683066023100a92cbdf6a6b4ec91306fa934b5b0a0da77c03c8e782e5c64890dda6095bf0df8832a3d2cc3c4140b2a4080ebdcf11567023100ce5120b2274df8b5aa08fdc56decdcfeb145feae3384c02713fd59339cb0550cc4a624487fdb29b351f88406d04561dc0302047c435bb50067306502305f03c6bc832ae8cbc77540811f7bb95a4b7081a7564dbb4303928de21a03daec193f75d4192f707c74fe768937c1c44d023100f9be7481a3be34d60e20bbd404fe2210afb361c63e09cca7f8c60c3cee8c113b701e13d1aea6fd4f400914abfb3c9d210302047c435bb500673065023100aca2b13824af8304cb1a6cfd420ad12aa1dfc7cc43903f10d66318ecfc6be94e8ed29eaa64d5611c7154e01e51b7274b0230422b425445de14dac1f4018f195b4ee53055ece15784bdeab511087442920a8295a5c05a1b79290c730429547145cdcf0302047c435bb50067306502306812dcac044fb25c0dea880f2c040e41ffba225579f24b105a23f506e4ef86dcbf5a76c31e797aa49d528a940498125c023100f0d841532261275fa1aa85af4b5c07138da6397b9abc7fce10441e4a51a97de01cc6f61a1546b0ca078d9eb44d604efd0302047c435bb500683066023100fcf134de92817778487faf0073ba0ac5a8bf7fb5c99fa6eeab56a67a1b449e4eda0266f7e08b7793f0fc912cfc13ddf4023100857e0b41c044a0ce8c5686bcaa69fecd31b8e4838d797402b4ab5c2e02de38e10c346dcb1d0601a9402ec5df257324180302047c435bb50066306402301aeeb54c7e668497ed30eba7616d7054917a1187d6efc22a7b159bbdb86b99dc339abcf6b1186ef3c38b0cc6478eb1c602304a803490af00135ded17f9ce55c8b02232dba5d9d2487aae796ef0592945d5d6abe311454641f5dba3b0816ef06e30fa0302047c435bb500673065023100d34fe9796546843d975dbe0c7f2d8e5def99bd5a24dc90b33596f99f533f09faacf29b7fb8a7315b2f0f0d4eb305f13e02303b47fa74b7f5db7df306f00c899cbca498295a9b7a830d57af983f60cd97785f7fbb6cd7de42248ed4f3399ad9b815930302047c435bb500683066023100a7d4cb60adaf897f80bf2d205679a533f88407488006996315bc9cbe895e36529289ad66c7caf36479dfeddd6b8022ab023100ff5a7569d3fde95752f0d55a41657966b3277b8c250cea287a17521cac96fe319f5c9b4b27280883b3fe8c6e0346883e0302047c435bb500663064023059d7e3cb47ee80288f934fb6ba0dee6fb73062a6319d1bd24c03dd0a98926121bf46924874b4405b4d43b98125bd62290230081680bf8c6e327047eee182ed9503846578be7ea311a96335739ccde809f83d0433c33fa3232273257e1e892ed73fb70302047c435bb50066306402306372d7d940e50cea67f3a3b02032d771a189a10abbf70ea71851f5acbdb373090a196d750916982de17415789a6081dc023063aacc4cc60965ca0d4e43663a0451d798d500cccd48fb72ee00997fb3dfc79bba32b111f46604f9f0fc7f47ab6a07a90302047c435bb500673065023100ca7aeaa6be286f533aba2c94d6916540b7030f109775f02f916fa5b1e7bbcb1601087d6c5d633a23883d3b42593a33df0230052408c69a5d88f0edfd69afad8802b29e5e9ecc39a7adf130b8907b16465971608cc030b3ff8c4f020ef146c2f966ff0302047c435bb500683066023100d8cf29e5c603d46aeca255ec5799658c9264d5439ba53c3937e1ea170e0a4ce68ae3101250efa4152570ad18eb6eab8f023100ebf60653fd19c3218972da02719a2f7e8cb85b4c6820626b9c180028c7ccc1d70499a899a45cf6cb68e4ebdbe11046380302047c435bb500673065023100aa8ab207cd01bfef13025860009f517db714d2e7662fa6c8093b79b18e872785d0a8687217d3fbb3005237c34077718c02304f0e99032dfe1640afbe837082668f2ad87f8fa782da70ab7369ff0d5e141862bd1a6a62a71b645024d215bc19b494260302047c435bb500673065023100977b8f272a88213efba6349beaca81a1d654592d18486c055b1637a838dee4bf4c3c23ac5750cc90a3b5635940d06f340230390f21a532c04dfd2f688085967490c2231ce6bc88d198e56d121c3997578b33929880fb52c8e97cc40a330cd1897cc40302047c435bb50068306602310089412fdc7c7aa52bb2ceecf392a8681ad9089277011c9799521f2141b0341ea95480aa529690e584aa7d979b919df20d023100bd117894804301d4bec506d64903f906daffa23cc682a29c21b41446f4993c86a204d21ea98e63e91ebd3f1ca6714dc40302047c435bb50067306502300f5733fae061f7b5a7b429d0b34b8b885a9a7d20ac677644f6626590ae7e224bb0f37ef71109e6bd5e24e527b25e9dbc023100f43966ffeebe590750955dce879e76c673fe7d4c5681f6d3c36faeac6db8a550473bc05c6f5a18c7fed8becc2454efc10302047c435bb50066306402305956598e9a685367d98e00b42d00d193edae181c6c6dcaae03428156b18eb9eb3ea443bab0d4886703426142d1b6c175023026b321f1c03256d6a00ddca008d38b5e47af5702e113baca2ae705a432d2e1f9a08798552b3a8ce7b8dfe31c3871166e0302047c435bb5006730650230139aa6648d8d4e0960c70d9286c5f9fd5866b44c0b765341de7693a5693bc0820f7fed1ed299fe27fe35ccf7933d0469023100e22c44a0323df8fed690cc486b8f98f67f099e640026424c4dfefacbafed91c5b88a8e7f5f4b2898d2a670cbc160bab90302047c435bb500663064023074458f4ae40120e9b806dd003d2035f635a32c9d1ff8ee54367262cf7146c0c2f2cc73b218d8bfe8435bdc6b00d61bc002300cea4e3e63097e0ac18b7f65d930491150e22b0c1f51b9be91646a52f0b8aeac1c9f654931a917c149b2dddc9e99cbd90302047c435bb500673065023100d02b8d1feec1054f10b8fe39f7a885d34d7abce1b7de9f82ff10000ebc7164c36b361b0b32f2a1cd5d3b28c313e650c202303e34b606da901554c082a40f1da03d95a104b2e57997955afc76583bcfd081286aa761d9235ecb6a5a7a07b3dcd4fcef0302047c435bb500673065023100a3aadfe55dcde892a9e0366632b1cbd2f1e6055c1f2dc2fcc7c7974374a578255204d068bfde21a643fdc39aaa16c95502302a16c8aa1ba838a3c0461d57137db3f8bb4bf1df01584d88e92bcd1a7663ad8a534cdf9ef36eb6a66ae2146b16418e840302047c435bb50067306502300d4d43ac4fe8087f9dd61c7aa84ca60362f190c6029097a931879faee31c461d99389dbcd1a6d28705acda39afc59ef9023100ec7d2116e8c3b50b930e4f66c5f478eb1b5451c460a95179a68193bf65ff04cdcebcc8e6472377595244e73b308923180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c4678f18f3d6eae01eb5cb01e1b63477b890e4ff8586510cdc66c6885a650763cff8df739de28b43a037772828294c7e02300c900d796f3605471ff6bf6a7b4063ab5d24a90e46fd0f70e45b5e533f3ab89f66283f4148b771d4722ce3b8dbba285f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b2c78179f9e7c140fd121fb1fe29d1498df96131741091bff7342d4dcca0a7ca2c2b00d3efed0035c0349def0573ac3c02307064fa82fb9fc97aa856c8a43c9161dd48997a5a47594a5c2dc262b89fd7cc539665b2f9ffa750279bd3642e9f64ce3a0302047c435bb500663064023001d66a45fc2bc92e753646b71c365c70ac349b4d69d56d07c3613206b6835affc603287535b62fb7c95b9361944f16dc023048b6c614f09195dea73783d4b362f9721b0b4b3a4cd3215818b6df8f4c93c2c426389643b40e82c6139376d57a65132d0302047c435bb500673065023100f5fd660dfe867d2d8f99a0cc680f82e903e7c6f865c9ca8cd0420953b541803f9e531a35166f100e8417b6dd18cf280d023036fa30b60929ddefa7b832b42f8908089600c83d5e4c3af919eafcbd7f4ab67e5cf6a7d3dc33464b8834fd3e8799cf5c0302047c435bb500673065023100c1bfc7a0d75430cd07a6df8e52201ede2cd0e5a2c27392ee6a8e5bba0f268dba9527fd0a61014cb11baecd16ccc838ab023050a298e47431665e136e3a00b39c993048fb3157732d1ac54f9f6cc954129d86e58f9eb29807956f911406c8e82ff0f30302047c435bb50067306502306364dcf0b7e5d3a9334177b2139763180625f2e9f6167683e1500967f61f64a804accd63ff5b721ad9b02124acf6412a023100c9856a83edd638820a8820f74f72a2bfbb6e70a9764ac46d631fe70102175422ad9a73a5b9d80753bd97b9afc93a21a90302047c435bb50067306502303193c8e4303a4d758bef5c57e2e5481897408aae7810a088bc8f70bde9315f4d8a0967091e369ee1661b9cd37364bdaf023100eb76fba1b5467544615a4f3e18570aed2c8c0db7bfadd854a8bfef4e37899033e6aa78113eeb3116f26983e585bca0010302047c435bb5006730650231009b438d122c4ac1ab6e930d7206365d3e7df5dfcf273c5beac97ecae115d148e2d871db42470703da12970757117d3ac20230156a3f06482d986f9d7b12ca0c558910d71119fbf3e65a26f89c3811c57065fdd3661d5f16dee52883f3dbdb298458d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303df4410d1f0147b80ecd9e11953133e002166c2f2c60e0738633e79f01a790b54a23abe5a1a5f68ae63ea06b3debb5ae0231009b520b7392bbb27f3df0ad09ddceb9113fc1761aad0483f2573e3cee800ed1331ac0feed21f49abd8b36de9e3f67c0f30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009ac98bd727c14ed2fed9211bb7c8b746b03676951b1eabf782e09fc583ebabf58a68b6456c6243b2c9719be23bbbd58b023072c88d6965bfd502ea90850a3759bdd1bddd1d51ddb5e53d357d3450d4ade5d9496a48f42920c129240892788aeaad3c0302047c435bb50066306402307bf03d8ba5aca445bcb2bcc3d791b8ca9a2b74fbae0a34606b92e8e4c40262c5d23225a5b66100fde75dda456dc0485002301d66839ec2905c4e1e7b87fedb6f6b23ea2c3e64fc610e2c373d507e55fd461a14a510d5aeb75f0e474b3bdd0072af6b0302047c435bb500673065023100c1e3785c3091e44de4ca44471b6c882fc6e77f1bcc595c1e66fe77590abf0c8ca590cb24566e1faef9b2537c083d7ad7023050658f59b15f0624ec9cab533bc9b39703cc4ac95d9a8e0f9f60a198e42870b934ed74b04b0f39e4cf3938fb8c7222ce0302047c435bb500673065023100c9cafd38a58e3ee7d4be1c128074b721b970afdd8ba3866f8344e040fdcbe75a5636d53cd02143a8477a0eba00a5c03f02307d793a4077e3a336089a07e89ba53322e82339375288c708894c786e403076f45a418ff26ffd3b45b5d38c1d789072ca0302047c435bb500683066023100ece095595c3c7d4d9443b837e74b604a1b3515fa1aa702bcbfcf68e6f0017d4f487987daffe0be0fb15792610179106b023100d3f412af2593e2175801d5100f3c74ebd48a8a41001ebc46452e65ba5874c4db369fb6ba903af097ba27e206f9c54aa20302047c435bb5006730650231009edbe18c95b33286f7c8f1839e346d4e105e6948dfd4c7e2df60278cdaa3884d8108689bef824b16a121af68042f904602307e8b6df55fa883bfd1cc33bef42ea9874b72675190cd5e5217b4cb90d03377d827cf38ddb70762b6a65d1d03d5b8cabc0302047c435bb50067306502303064f1b3a74b683ce0e8c5838161d1d1738a3635f1185a8367fe6a2e0c15dff0df27085760ff914da2afb987b4989ebf023100b29223f46abad156e46dd3bdb11f320513580f9450c802f7e405f5ee8a42b10414b67d601b5d9e4552d1c026adab4c930302047c435bb5006830660231008d7615029fb0bed760814258adc6a2c0bd65570f6ede4afd7295f32ccbd71f836ee6cc63cf534688d4fcd99812201ebf0231008f415f5cb952726c0a029f2cd3e3ef4a2f19c2e6a29a593c53ac573227a32d228382841801b882c5dce08c40e5392b710302047c435bb500663064023053c0f7bd5a1d4a864e32929e77ff830337b618d1e650a737d5d4d0844db4328ffd513fd84482d69649982b20ee61ee140230252eabdbbba80f83a32b6b2b871f92756aa2f8dd5d8eee88f63c6ffdaa471d9e2ffc72c9144695d0ba9813536d7e05960302047c435bb500683066023100cc4e034a91b1676e745609e249496a630a937b10ee9cdc56a7b28f2758c90ef13502039edeb570abfe46d9c423710466023100e6607755015b826901e6b436608e972407943547dfd93e908bee94aaaa43bd9c4ff18dd45bf826ef30eb0535cf27ff050302047c435bb500683066023100ef18ece1a0349dbe546eb4f2381651fb7451e3bcba7ab72fcb262d68f1a87652176af26779106ce213eb910bac1147b10231009fed0b218bf8e67338018167a41caba66ae0b83676c2529577d9b22bfb49e10bae151c5b97005464b9d180485c33aa350302047c435bb500673065023100df5d1d855227cb800838ecaf5f10363b929b2b8af4f5978fbd4d07434196c026cc0a33a32a5a845c71a9c8b16383a43a023005bc0514e191cedc0de045f3148dd72503dfe3168dca5915e81217c86fc917c243942ef5548c5fcaf701a14ca0c6b67c0302047c435bb500673065023100973aa16002f4279d708321c341ff4b70d346952ec7be1216ff186485549edcbe573711419ea65c281c7edb39658e341202303eda00c0285d4c1656b49b0799239f9c4986053cb30699555a27c51c6492d07fef5742515691018c9c8ab7abd6f3b3940302047c435bb500683066023100d9173cc4bae402b81cb55695eafb0f602398b979a36d4b92620228abb349d234a326da9ce81d2c3b3778ccaf98702761023100a3fe96f44c9a6e4135d34bdeb6b9bc8639fcc1fe3a28706f58361dc993f7d041ba5162c6ef8e78aad74a198433eb0de20302047c435bb500673065023100ed9a3d1ce6582b30af86edc4ad57031aa2458ee19b20d89ec2f035b4cf76d9e54de9cff223759456c3cb672732523a0f02307a814975ad7e0a4349e168b7f461e5d86d7c98063c88b3ab1f34ce5cf572a72e3b1c76f2cb11418cf6c2acfc549f26ac0302047c435bb50066306402301ec61ec6d7e01b054ac9c06bd9802b0b8be56c616ec61c65d30b1885057d6914bbf01f7cb83adf02d3121ed497cbf8ba023009eff28d9cb5bcbb275e00ebd1ade92c385142d5ecb318dc82c0f578b292a7ec1af9cd07427928f35943dfbd89f3eb560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303b7081c3cb010b153932ebd46842265143065db3900dcd99cff10bdd914d583184f552dbdb07fb18cf92d73447abdc84023100a244a0a17069cf6f8c1095c2f3a8065cc0fe2a58754bcfd22a1634120a25972b60ea11baddd56ed5092348ecab86c9c10302047c435bb5006830660231008f5ae602666ee3ede43b95ad7ee6ef86b358e804bfb8a9acc2a666664c776fa7d788ba6d41211c7e9a30130073a7df75023100d592e2313a461384e8f201b59e37ecf1df09ba0142f4a378dd2c019c9cc62fd9537e4154dd5ac96ce2111e4cae96d47f0302047c435bb50066306402307e35def44c7e171717bc5b3830bba4fa413e92b62564803c3d18f4a6fa5ea520cefb44e65f7dfc35b7a897931f7d6352023059da5b02b8d579e5a2c7e3bbc0d7064c9afcbb2fe4c6a649d08891e65e74ef0558dfbb5f1be91e64e1f5d47363c2cc790302047c435bb5006630640230725f78888821f380cba03e562dd56c4095b34f22513ea0808e34b667903b000c65938faf820e4c12dbd62074589ab2a702307631c69f85bc41b65bc6d92253d83a85f7f2bc219d9ad78e77d248885b14d4eb99d0351035f973f93bb50a1bb98be34d0302047c435bb500683066023100eb5dfa24b0b17fa7538084c2019e7e50d83fbf166b1e34db3adb408b96be21c334067557dad95c2dda3b309cdb980631023100bb16df35cbfe75a2246bf1a8d0a9b00fcab9dc0839f263c57cae634f1090ed240220d7f3885bf242f7beaa3e9d1920580302047c435bb500683066023100abd727b11661570691b695639dc90ecfe8b190718e4a8e76ad956c02c5e2d38cd588ce259a174b652c41f89b4a234b1f02310098431d1ddba09eca766a92d270e5886ac6df760ec044ad07231813daf7d6b34cf8188e40b4ca5dbe8de359b24c911d240302047c435bb500673065023100a3cb93057040ac169ca61ff804427f2ab22d9d083d6d264d754897a6c1d806078b99f2d91fe3c4255575d1f01f8d7f3d02300520f9112b07fff99d8f45715efb8fd9c21259c7c7fe23e2cf6466279cf024504ddd0df53c16accb9a98c1171bff12ca0302047c435bb500683066023100d7c5ed588c59bf4bc74f2967fd38cc6222eeeff295c6e49890c9574c5688d222383208689000fb147a15b21eec139d0d023100f3d2c75a446d5de58490402e4c991177cd35e7ab67db63cfbe20fd7a7e4d420d8c8bbdd24c825a3aa830788abad2b7340302047c435bb50066306402303bd42da123774c8a15d5c602018174a2f6d154ae259b85a8b44cd5b53899dde80ed4567d3531da240f96c478f09a83da023073e330ecf44c16e60e2c24459ef4f0cc639d91569d3aa5249e34227e91671d5be3b4ea66ba964a6fcf6a86ae1c7ede2f0302047c435bb500673065023100a36df250c2a38e6b3e62b2494f1ee6cbf89a4550016b6910a7ef38fb529fddc7f8e7c7cf071121e10355475db598a93d02303e775d9a328932e46398d5b4dbcc0b18041e8b921c29e2e360f311e08b4614c7ea2cfd8864f045e536b586b5062ccc510302047c435bb500673065023100d21948aae661e45a3d0d012b5a7a2a59dcb6de9a9fa328184b0a76d1cb34f3204d87637929b710badb6dac611342cd99023063096e29d00889c567369e7a946caa0c7348a372fbdcb8299baf04d90e611a8cd0bb7cb5975ce9f20d6594cfc0c598540302047c435bb500673065023100c542424eadab8c2c294cacb17b9ebd057ed318c9f82230c2b4434fe1eb0c39c13ea0344fc8f83675ec21dbe9855a93f40230193aec51a5c402aaedfbf71ccae373b50214deca4c1e4428b365a872878d61cd48970b212cbd099bf580c0dfb4ad6bec0302047c435bb50066306402305bbb7d4de6a44e72aad9ea1b8a1e00363a87f1996ff01b9d06efba2699176dd23e080a37a918d467e9be4ff9b53eba7d02300535869d82cf6ac559f5f91a29bfc4dad9a8112b86727cf8f22778c70fbe3130ce68c1256263f7c54e66a89cc6a500a80302047c435bb500673065023047bcb5dd120cb088c384b0de17e984857b509ac9096653ebe0a50b641b738c69af4eb9ac95a8921b2432c934599005990231009fdcc27f9cf7a48c7d9c3b223a13f0bd2aadf37dafd672e83e5f3e4a141ea612c9dfbdea89ec81e62fe18fc38ef09c250302047c435bb50067306502304d646b1dfbc4ba8743aac02a97ca7daa0fc7470b06a5e95cb926b354dd62b81711867270983f508d2df0ec3c90d0b6a00231008ccc55e4975b30672e1866fd4ae699dfe41c9e6f9c654f8626dba05b38c921c3c6dc1e2c6974cf6febe1742fe0a1cf5a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c96f424ae2251a929e10884fb1dcbc8e3d90e2a7ec5719f5e235c191ea185abf5638f6fdf3f01a3d1b15da14bbd206d4023100b97af2b16b3effbdbbe5b401df289698ff2fd1805db9bdd6a3371b732911f8fdb18a8ac215a5896bc5d20473dad51a720302047c435bb500683066023100c1e0409031ec0fbb0a88098b884d39d790a6e6894605f3ceed4ad9254a4fba67eb4ef85e57d92827e46703e99dfbcf8a02310096bdd91f3af4466339c3820a7f51d9a26bb0de46610e1011405ea26543fe879515b4c4253eb0505bf755b9aefe9eb2400302047c435bb500683066023100a1627d5872cca119f57d822542cbb5474e7929492547ad1483b8d50c66cd00ffbb4975b18a745b6b2f54216c7eb73ad8023100a21abf6ac4a205c252c1e4ab229981986d23e5e82beba43b52b0fe9215c78de4a260e2966fe0ca2f36b9fac143b2a3060302047c435bb500673065023100ca1abbb261ecdb5d4c3d2f9c1300732034a95cd573b3b64b735fc578f12e4acaff180e170b2699fae676d9da7849893402301dc2392d43ef5abd14c26fe69edb1a393bc214f758e241405d700c8e5caec9f7e407b2652e1efaa67b39c66265eea6290302047c435bb500673065023058286c90a6ace783cd2b8658a447bf70fba51dc466d99845d4c294078814aa2841a2b52cc6f90fe1bb05070891688b98023100d27f39e7652eff8b9bad27451c22d688c8caac570d4b3ecf08676e60716ee0bde5f1c30a4b15aa39e2f883f4741eee090302047c435bb5006830660231008aedd5e96b55672c47ff93d9bcf7dc9c5c92031d65852659eafb90439800265273abbeef7f5e8ab32c80a758e72af3bb023100db4dd791ffe673d862e175caec231e39e32766b9a9881adcef885e9739cd5d28e6129569df5d213689e826f21555c6eb0302047c435bb500683066023100eff9fd5a7c77095829d25d394181d7777227990476ca56f4db88115ada8fc0f20a69bd9a2d2569879cef3b8eea3b72c9023100aa14cf4feea2e1b279c5a9b90be40dfb5a7a58452abe5edc90ad30165810f2d5b85bc8d811351a0610739ca8feba457e0302047c435bb500683066023100931f11b5bc5640dbee030c668fe498b8767466a1c3a9a66c65f793baf52e4649f4c8f5940e6e9935002a6b99ba66c9420231009c4050b8c1c524f503b93bc342d69c85f5a3487ba4aa404c092d588a83a95e3da1daefb9e9d591b4d79128212d334bf70302047c435bb500673065023100a21f4d353490b2d0b8d449e45e2f104e3568229bf2adca8809c2fa64c92f06e060165c642e0d37092619828f64c47e660230521c8504bf0f97bf0ac53f8f35f88a034910a4d8787b537a861d10d6722f73cebd67d618b6935502eaaca7eefeb06d5b0302047c435bb500683066023100e7875958effef60e23a76594b5672f1eb562fc79228e593d5f9bb9eac2e7cf67c454c25479ce71b4144fdfefa5fe3fb8023100fc219f66d672928f8ef388c2aa54c43a30f2a5141d7da5dab7e3fdb47b16537d0dfa326a54c6705648e224ecc444e13a0302047c435bb50066306402304f0a28bf2030751ae5415b917f41bcb31ae4e7d95ac91e382a4e05c4709fb1ed8ee5982874f8edf5cb14d31e385c0bb802300318bc14c9111ad907dd4893fbe3c1a985eca392db969f0082001653b6ee3030505888c74277ee1069e157ee64ba4f6a0302047c435bb50066306402305f8079fc9f415c95d2b21ce4283c7f1d5be0eb19aea096fd41c079d4938e2ffc9240c72e8450d88a6e8f47bee9e06c24023058c002ab3e5949bc29f5298584ae2d765dd528041a42a6515215abffbc8bdaee313fc8f2edab1b08bd828e56163bd4170302047c435bb50066306402306180c45d491dad05950a171c421411297468775f8857ff4d24117ea98afa8a64e74f44a2b369794a096435732077fd6b023018c009801021a4f80ec9db8fa56d8b0aadeef24c3a5ce1a90e3b5a07ce226faaf799923fde0ee2b0b251afc0e93ad1560302047c435bb50067306502305d842d800c3f39fc31648c4b18aeab0ddbca13c32af018ab84018e90e31e035455c0147cf6b58cc1eebca611200f17ee023100ab2db94ac8a48d5b0e3f8f85c69666aad4f4222590977a590f4ec63ce8828f26b3478f73b200aaa25abba5bd5045fe0f0302047c435bb500683066023100e8fbfe9c363bc06f000d7dab0bf263d9cb9d783ffd988913d04e234856d67f5fac5b470b1f868295dc5768b8a8b1381d023100d3cfe2bd56968014b58767c8f812aaea49bd84cdbd2db3f4a79d50501b003aee0e0c4842e88bd188ca388c220bf3adb40302047c435bb50067306502307096dbd9d42aed4ace4c0f10825d74b85c9744696321d000f76b1874c0c4b70851b3d3bf58582d3cefee8aa94275bced023100958b0448b6cb70da821fcf9d83add07b38948aaba044f95c04eeed6fd43afeef02ba4247bc4cae649f1b6461768792f10302047c435bb500683066023100ec1560af86e27b145bc432c39d289b7aac54d1773c1875c78037ac2a657fa66674da836d288ae60ef8729148291dd5e60231009a0ce4a03dcbea133b02da9a1b0430a2a867d8c6bbba108d3abed0995e3a3e8d2819715cdd1c7a2b794637c77974f0360302047c435bb50067306502306f6e585d23421ddae9e5a96c709b1796f0adce4d052b17123c961a3801a1a6d9c890751a2e50e5a208ed8fc45ee2ad76023100a09c0716540f2f28bff6d64b767fdf4704082e4190ef1abcf5ff19002e344bcfe3650157790158861933548048a1ebfc0302047c435bb5006730650230164816a22d5e700b1a21a72aa305588bd6eeb84a54a7eb65bbacb23bcbe25700facc54fab8ef1c76346fa412cb73a527023100965d1d0bab8820a9e48344661d744ba61a638881805474f3d5c8ae99ac2ac29aa6c0e49a39dd181b8596b47e0ace3b830302047c435bb50067306502310085b545c1c26556d96ea28037154ec6986405232dc30efca2bfb5ac574751d33fc1d065e33d6c25bc8f8c14c77e16718a023033e643e893b5b3fe19561be7e7a761f209f254d804fc1c1036e9c7831f3b51db062dddda5a7aa245be584eea8d785a050302047c435bb500673065023100ffb9c13cb638178e63329fc1b02ee74ae7da811dff7db1f1bf1ec8cb96d84743b3affcfae846192f7823af8041ed79ea02303fe9639bd397b60717060dcc873acdf6596c58618aa0f325387dcdf80ebd25b6b05041b0f135ef454bfaf7226f700a860302047c435bb50067306502303009477e7ce5813bb806baa6609d8cc57eeb22f24391d69521ee502be9f82c9395ee952aec15e25771b8a64f2d2a60bb023100cfe574b68f594efdd1d17010480cbcf3d8b8877bb4213ce7fc14703e85bb502aa6d8a87c411d4e45a4482364f68b1a920302047c435bb500673065023100b29c26373a41f5d2d9b7b74bcfc473e0c8c00e61634180b3176308a7554623aae83b7978dfafb3ac4f1b2e729c77d42f02301861bc9be70e523131b847576c97ea68e3ad05005fbb4044e7a2026534e2f73d65435a1b99bba850b4f52e0f4e80c8540302047c435bb5006730650230145a2748b4e92f308f5041b8c8a95277100b9f8aed7a272744782f55416dbf82f6e7e9a2066eced2ed85e9e5cfb4e23002310090d5805afdc45b77aa72eaa1523b16c270de62a2ff1bfbdbdca46a0b26ce9ca5ec3eba634dbc850eb695ddbe93378c7d0302047c435bb500683066023100b4d22532aedd9ff00f51e047da419cec35adb53bf0fbbac7c9de82b2cd3d73b41e3563e13bf34d7ce23a4e87a38982320231009283c4caff56936443bf5e4899f35be1ffaeb78057f81482c0c68653b8450d49a4b9de26fad6c390f45f2ee318ac05350302047c435bb500673065023100c7d55e8191d5d054d8d85df14eaa2ab66009784ba8b2fc173da6a93189fb93476a2f74352920dd9cd066f623f979b56a023069d535cf68bc0bdf5aed39c095dab50c8ecef6a65f4ce7cba4acc2af310926318ab195aac66e4889918326cdf441b0b50302047c435bb500673065023058930846c4f39cc21827712340989f301c9a59e8b7b43b4bb210aa4080cc3ca7411488ce8ffb0439bc7715383c16a22c023100e07edcef43e59f17b9bf98bdc782644132ccb2fee523be9fcbc60256d1667f0d0dba2ad5325cbfe127c4deca5cc975490302047c435bb500673065023100dcfa8a15eea70e7442211506cfd80dcdc19eb0948f235b28134430540337c6d40b4de36d78e06dbf610781964a33bdc902307dbf8a62ce438ce42fe9fb06d945dbb4545830ec2c16fa42c51711ac3ae634005eb424e7fe223b5f07eb49fb573229260302047c435bb500683066023100de8e58d9db789b1b1363c49e68fce9cbb56ed170fe96529ff80ce3e5250c42e05beeec153c952d57870e32218f051570023100f900eff9bdce01c6212ace8e8cf8400447e1855c80049e1d918ee1167bb77bdc4d942a536d61adf23ba6c5c9539471fc0302047c435bb500683066023100807390c901548e22c6909d8f1b1e3e28c08173bf477b629b599152cb3ec7d34fff43808185069f5cb81125c1fabca1b6023100eab0a5e940539bc4c3d62811c4de31ac2f54976f38f6035ddec2ee1f86716c9e7c5773fab086ea765de98df2434adf040302047c435bb50067306502300654954ef57080a662ddf92ebfd31000ff172063495b2ce72f2d6a79582a0fed155d3a3cc5da1703ef0a9b1f145f4f9b023100fc4cbbe1678e41fd50453aadedfcfc06b714d1b96e832851195aec6c8c3d04bc6f9a96fd9f33584fb7c198f7deda8d540302047c435bb500673065023065666bbe9745de6f8f3f7eb3eaec21771fe297d84d5c8c62e409763024b9b502818cef415ac3478e72e12589018c0ec40231009335a25e765f98dba3243fe3809ce527bc94521d5bc8de35a20166c485b470e8c1236f57bcf69192f5a12a1c686f44b90302047c435bb500663064023018ddc9933af8decb031a8b9adaf69a2d28e0a0cdd2f92dc3ff9b2e61d95a540ad5a0a59bc4d1c61818e342c4b48cfd6102305c14dc34fb891f774b7e8546ccd57c6fe0784c96130f2dd2c2930f3a19e6499df2727fee47b45f4f418e901785e729cc0302047c435bb5006730650230762bf685c32eb512390039a30c33cc2491359094c95ab05afee7eb944eed785d2360e13e2e86905bdbe741e87773068e0231009759bb926cfe51a9e14f55c9f919633ea340df7be80e6881b8e0744e9dad58bb32b14aaf7afc5baf642e0bf69d37e0a90302047c435bb500673065023015001710cc762f0eb0b764c6e50cb5c95d9e428426e54917aac7f37874e86c29fffe43767e80bd320cb40880c751ee1d023100fa6cb1128bb2c05e6bb0b31f853a6fb7b576edeb97dca587a3da5a547fc815d764e5413061166b301d79fa74d3a2c2190302047c435bb50066306402306aafb8cf546f67fdfbfcc6716d69b483e33a964e973e30401f9c3a0db4d62927ad990fc11753259886254635c448008602304dc98e3d58377794906abc482d49823dcdeeafb5ae9a3e935952425ff789dcd257b7434423b86163cf26afded04534370302047c435bb500683066023100b2de36bd38d11cfbedd19aa89cb9a6612f89b2d4a1994f2bc24aaf6acbe9b34e248a2c41af9c2461ce03358d300c4273023100ab380ac267279434a668b134110168051816ec0a9601ec6f09d7d3641c1e3928676df5fd9c85fecbf5a75a0daa4d24590302047c435bb500683066023100ca4cdbd9ff82a945861d936089ed678bd1df3a82b8e4ab3ae0eb843b69a987638ceff5d6f0dc79f831cd617d7f07597e023100a68293ae706aa0241536c71bad45e2ffd66636d028f0eaeb3f85933d5e8e80d772ba1fa8a755ac4896fe7e17bec5d8d80302047c435bb500673065023100a6c1fe3eef8b5dea285263d241fad73a77a048e56f38b920c0aad525f1ab4bc4f82c2ce6a75a29ae2c643e45e05a62e30230477a7154098088bc6902eeb428aa0c64a94dd5a3c1f7dc216787398f4ec365ed6838b87f02be58994dabf2fcc05d226f0302047c435bb50067306502302ef4aeb29253f7606152c06d57b333f39d8015c156fd8312456265d60874ab9e29fb822899763436d3a1a496ae971607023100e49b91c42d202f09711a9374931822afd9d182f8ca3b8d2f7a00d158d9e3a383e654867ce9e06b48530f1cddae1a9b520302047c435bb5006730650230623df7d67d45012645b66f8a5b4ad97bb4a5874d35991c00639a59e66f146bbccbd48dcc6c1b95452dd364bb3281dfbd023100dcbb33918b3a6a7111fb65b763ae50ebd80d87cf9f72cf59936896e379f08671966bc657e761828d1e5dc8e4f25a148c0302047c435bb500663064023060f33c741e85c4bf3139789883ae4198922998a1b8640901ed4598aab5e6ac22caa344d6e4fb61217de80f889507731f023016ca1f7204e03de8963d554b29b0291f9ff9b9859b90573c07f5bd7cc148c8a7f166071fa7edcb2c6063cee059bb07fd0302047c435bb500673065023100b01e60925a45e20e86e1e49bc130e7c6e34d0ec51fc1b7d2fb3bc237bda73b3fe13002ef34ca308f72d58c8dd146bc5502305a8fc65e693e9c07c228cf6db0dc4587c3f15d861873ba9164fd99abceaeea05333e73adebcdd09bbc1bae1c08e2ba930302047c435bb500683066023100cfaae3a9f0703f4ffd6d8e5d20ee04be8640c805c59e058caa288c15f5d866d31e7381ec99c7948b007fb3a51c8255190231008661fa743853e49676af53f9847310c513560fc639bf0b5c7e1b406971ebc97d26d80ecad87eb4d0c891fa21509416580302047c435bb500683066023100a62279a64b7decb4e0a7acfb6a56c90fff0a83c260fa1048140aff0baf1c0dfa3007074babfc749a1d71a8338b03006e023100a148edb14df6fd52279ce62c5e1642a1e7dddcb7b40e7e989db4d8a5c42e4cfe4c2c03f2b0d52459416f9b816af359410302047c435bb5006630640230422341415d059006670988ec6c01b11e83f0d3e4998d0b8da29bd297f697d068b3ee5577228f12eb10187c1105ff718602300bb53c49b771c0383ad00b2723d2b7a0591e8b6b7908952d015ee308b1e18039214bb32efd89d111fd5052e0671893810302047c435bb500673065023100f05ab75f8bb9d8f6a4a77499184dfe7f7f502da265636ac64d517059249718cb19f25948fc335ae04de15267a8a40dc002300901d8dadf0f3b7fdabc0d5804dde89d6f435c76f040710d3847c3a44a2a76da6e74ced1c191dc5de44da033076c32090302047c435bb500673065023074d8a35c105371758bc37dd0c49389057c2d26267234be912d5e87bd2f8a91134f2ff108a63ea9439d2be97eae7295e9023100fbe64e7892b80b229575845620bb6853ccbe60f8ec68155ef18bc3f9402c6055b451e9a6e24ca4f61982646d82d63c330302047c435bb500683066023100ee5494a4258f1a3fe80c94b56d3d92013ae06aa55049bec6e4cd16405cf5acb7169abd3f1fbcbf19a92d379450e16c0d02310083e197ee33b59d0cb39c2af202903602c4aa2d40fc2fd107048b01708487f7004838cc23c0cabb87f5d8d0051331c18b0302047c435bb500683066023100a945e08c35d1b4dc7d29ed48bc0d3b5b25b69e322e0d74120a69c1887df08d4e6ad8aef7a78bbc791fb877fe4203833a0231008eecef787016585bcc9cbe1f2dc348cc75bc1619863a2f7ed47445dbe396949c15fc8ec4970eb8373e27c9b84b1bde8e0302047c435bb50066306402306067beccefa1be850b52068cfa36968d2a788ef5e24f48608c612ded15e3a3e01babe66781d75718515fdb534a539be902303aeab3b11f1d242b2a6d635b9dce423d2a3d4ede6c84f8cd77565b652a01b9e0e5ed2ef69742b118e992a394e9c2a95e0302047c435bb500673065023100ad4bdc7bcb047a1e06afee39d0f8af8af5be6dc0d97564094be14fb6cd30a23370d615deb603918d8e57de113528fc02023001800e7616848cc7ac6e49daf39072ff45177dda4093026dc1e65554b11eec87a5828f78ee4167bd43468155a1fe70dd0302047c435bb500663064023031032bbb7edccc472b43a07d897bc7ff43d17e2ef414564640c30e07176295d474f636fab1cdce49024e96a85276d9ab02306b2fdb33ee332b65e396a1089c36adca52025db0efdf446e7557395da00e83465e58df93d5434825898f09ad1ea6f85a0302047c435bb5006830660231009372f1c7727b23cdeb0de4abe2ffdecba62cf8e0b635716f9cc273d19ac7a42c0b75713f8e982d452fe3563c9fa820fe023100eb0e00afa7417af80b77a378fbb5df710b6e0e911d2996125cd71e9ef5e3086276194d3b7317e7f6c68a7dee7a6509c90302047c435bb500683066023100c11b3598a72b829cb5eb77b34e6e99eed2c5f6199bdeb7e6d4284e486089964a06d3c6da337d92fdc7cfb47ce258d0e4023100bf6cde6db69cc29b1b766cd1cafb9c87c7f033b3bc6d84a44e808edc51b84b8c77196245c4099e8db9124c45c4d9ea790302047c435bb500663064023009c6aec1450216474a1b5f45b969518bd63ea0e1edbbde04901e3ee0fde1c8909f312752958ea479d8fca587098fac9402304a67b6a2d1bdadc335563f8f0025f7c6bfcb630674b23c79b35a005be6ba6f78e259a7fbac5fef9956089c596ee331b90302047c435bb5006730650230752a460df0c2cc58fed53afc17cf3d87901e1b833e12d5061ab6a407331986aa40fb0dea8ad54eaa409be975bc2e1da4023100f55bf39b97e22aab272b357028bb1a5cc8634e25774f9243c471e72ef234fd20e24b19231c9dc9fc628e99fb451633970302047c435bb50066306402305368b607f7f22253174566c0b287adbbf61f9a3dc4e1b14af2f93d6196f1b2cb131fe17ee7b241c1612984cdc49aac39023038471b48438f6131b4293f9f5213eae7478ce1e7c8b633df7b2574c5d1550aca8f0cb2211dfcd3cacf92707028e424630302047c435bb500673065023028db6bfef68881ae59b92f6f90b12f4bd4bc8d8370ce647ae3613809cc74c914c613c5bd11a89a19dd00c5a6b3a724c3023100edc1928bf4d0d3ebacaba1a2d872378945ee7998366f44f03a1907de86ca6e70da2c5de06ea318b90af42dcb9e218ae80302047c435bb5006830660231008b337696a87242c51e62ba34d42a6f82f129fff7cd3f4184b67617e89c46e9967c547f5b7219903ae7c959242443b1b7023100e6008a1c8854d9127dc374e49d5c939331d4dcb2f526260e318160f7b752612b2142a7db4582ba22fdc6b50243e16aaf0302047c435bb5006630640230590770a18ded1a40d21e3ce629e1900d802bd88a9b43a382d1503caa94f474274ee0608f6e6974aedfc0165f468a99d3023033936ccca35e366203b8ac777d51c5fb915a1fd776fa929af285afe195bb6a18eb816f95b76e3ce645a35f623f0ad2b20302047c435bb500673065023100beeaa6d4af5de0843f80a8f82973fca4a93fa5bfe1ef9ffe71ae3f0295143770d71c9eae38f17eda8096cdf4c0265ca0023044ae1d8291f8ba50c356be09aeeee533005bd4afc7fda3f4b70988f9c4664f5001f15fda104f917f80b8ce644e13366f0302047c435bb50066306402306f1e3748d73f3c02bd50a346a47524e7f2ab9d4ff800d8d32d829b97611282f34595cb8e21a3d673844be2a81e96e04002300b56129e348c73a111cbcd3ff5ee5ce04650ecce10434921602c0a5b8ca780365181cbb6d706b61d86d0dee362eeccd70302047c435bb500673065023100fb968d79ac2c50306561011ec065fa6ed6367bb79e9dd335b49b672491fcd049cc6b1587674e149df6968a81b692a89402303d87003947a6bc8ce1e5bd8ebc9e0de01f08a8c0f81eb2abbabd966269b4b3daaa3eb285ca3ef7a6fe6aa14867ad951c0302047c435bb500673065023075a05800272b5f81602b52af0ec706dc2fa47d8ebf1f1d1da82de2db83ad95071f92cb1f1cfc9fe77d4820855b792597023100c915c7043169575a70af0db95502d950b814211ba52482ac771c204d42abca61c4fba6dc547efb52ee77cd9075f841d70302047c435bb5006730650230469203082e9c7019fa5d80c38a1e67c84820feaff457e7cb952519a5fe3188ee0bb8f0bc8fdf45481cd36302a28bee0c023100c1472de3183740a6c84799fcb460481ba359d911999e594d9e69ac705c9b9ee7562e49d744b923182e9f070f641062e80302047c435bb500663064023076d39f85a0d1ad39a21a2464d15193e706d540bfd023dd88171aad62692726d62c48afdf4612cb95f81de83a05f133370230349536fa6e155b8723835247f73f0b995b1d57e0b671612de71ef1d8ec9a482056259c88e93f1883406b339ce70df4c60302047c435bb500683066023100802c29dd893b813cadf814075563daac5ff5743d9e7b82b1880ebd3d4b82745fa60ed4c0917557d2aadb79973cf0073b023100ef7eb4f7f133a6213555b708be07991586fe658101659b5fdddb6a8e5cbdae872d677f256d651a47386cdde9e9427c7d0302047c435bb500673065023078a7c4a72bdd110603a1da11f75832daf9243fee2d0102c05efd3d962e6b2bbabd8e4d29f336f1736be83912a1dfb2af0231008ce94962bd39de0d733e05ffe4306d5e161f39c1c2213101d9578cbaffb1a5d71b7b04f23f353251b294202f2499504d0302047c435bb500673065023072d22cf9e3a07bb9d4b9cc83dc0a7a3b219f413f20723064e8db38cf1f31aec564663c7ac7318b00ed6129b4ddc02ab9023100c9ac3fececbce4799701ab94c9ee17d25b0c32cfd98dcedd32aa14790834afcbf7b741961e7fe0222f4a84b5cd02ef730302047c435bb500683066023100b1e1a21a8efa1a799259dd118a2006475311ce59d79eca32feb17f4cb91d34aa74b6a85e606c917eda0c201a589f36850231008bf63990f607ed1cfdc76f4420321a1a1013785544dcc93d4cdeb77e5967bc30678bb02d7a223d668d484ab7f7d74ca80302047c435bb500663064023073bc419e47181d5ad50b07e1bf400b1837ab0bf055070c9f56ae937e1db34fe123d6f6dedc50e802bc693eff291b63c60230182c3968f346a85408e11f8975226f22bda93b313a32b61d6ccb8e999b7845d8c1e8f53e20cf4f00ad9e799165b36f7c0302047c435bb5006630640230400987e9fcca48ff332fbb7a23d6ec733e26961e77d5ac2914717e7579ff3ecbf2e6f3fc3bbd092f4284647e31b6457802302f0feb17e00f89992db9d0f28eb9708990efe619340dbe9e5d163db94462f3f0ffcf6d63418d07ca94a1337afbf511800302047c435bb500683066023100b1ec450b4c827f6be0192e56fca21f18f59f5c9fb8b3ee8645188825218da59effbe741dae76d005ab66899d2e3b3c07023100860508e26a7a917fe85eaed009b72adbdf66117f892cd3182e5a1ea6c607e045a7550135552617926f3fa9ebae3b261b0302047c435bb500683066023100bee6e73cd26c35c7112430291b5de9e140ac1e518a5c1ba6071ae6fa23475dcb7d3b995476cc426587a9d1002fac574e023100b6279b1147997f3d8529fb7d330a6db71d7fce68f6adecfc9080e5697f163ab109649a20b353e1aebf80ea39c8c602dd0302047c435bb500673065023100f5f2bd74580c6ddff313fef8accee92f6ed9675adf8812c55b470e6aba904feb2cc9d3206072245cc451588465c6f8db0230704164f35b64d212434fb5deaaa3c2508948604278f82e33db821081cefbdcd12e91e6aeb3e36626c1e49b38054df1140302047c435bb50067306502306abfec9cb26986316a8ce44b862ffc47d1a04c9e0313a277dc6c9a6532aab206b74357cf8cb6b5d58ce7d8d1c21080c6023100aa15cdb0907d82b9d4c376077afea40d8eab3f588e1dfb58a810cfd126cd4b853285bb614b7e1039d7221427e4f99ca90302047c435bb500683066023100e87b23ffb2b20533423f0e7ddfb974536286155c1e36aecb6a0c7da3724cee2c4ec0fe2eb87c9c0d3ee06e7476931595023100d7937613b8959230deb201b206ccca5d5835c9bdf2bfdd5fffcc4d08e172652ee3f2a91db5c6ee16e5d8d97f0f209bcc0302047c435bb500673065023100ebb39e2dece3b9abba56b667105a668336c3a93f899b3d87bbbc03dc33da3d46dee67005f0516e690a92c65bfc2d69e5023034ee69027c6f0cf281ba67d4223a92be8be7120e473c8280c18624a1f5b2cc9c7f8a72a37236aea870e3fa4322a399400302047c435bb50066306402302bec49efe5c51e5f68a62eb2af0eaa77021e016889728b405ea3f0b80104bc457fccf83d6769e34727681c2aa9b9196302307d37aa44c6a8461bd6dd15aff1ca0fcdeece388d7d918d015b1251d606ccc6844b8728e3798b9c9b645c61b364dce34f0302047c435bb5006630640230777634cf48cb796e8630057a1daf03a7b4a24fc9c07d56421ad44f09dde76941571463abd6c4c59c0de2c99bda72b3ab0230101497d4a51df69f24cf3a1305e227a5cbcabfd6eb4f9e77c7fafb3a2cc2b8876f848e2f93cd00e1c0dd5bd09d7c15040302047c435bb50066306402303a1e2f2e8d064831d7a17cbde8d0b37a48ca92f24648d6d9ce077f362a6db8549faf7668641627f5c307941493ab949502306fe7be7f510a06a194f4b0a1aa058d6f43893b8944591516bbf0c86c623dc5cf3d85a120e6a2f75076ed8c6067cbd60e0302047c435bb50066306402302dc49be9bff51e8eb7b75e7a68f5f90d14981140002c89d7c09153e88cd55066600f12a701a1f1ad35e1c30033f4355402303b717602539a1146fc169ec70c8c6fbac11ef177c223c61852784a72299b9d6b9c0f8de06af5802b0cdcdaac998fef000302047c435bb50067306502305a80926009743fc17124f6c489121ec76b0c7f666586883be2afa3ef3790858e47b09671e87cbeaee1a5b2f6a8db2340023100fb58f00e10165a08f8632c95a973bf3cf5455338912019a6b683f343863bb98c8d4bfb0eb8c7ce95648879d5983ffb600302047c435bb5006730650231009f5c0611838eac919668624ecdd8303fa44e372204ec7ad132fc42923a94658029aad26ddf9938d25d9455a5f90552dc023004df6400163e71d9269862e09b978d86d983bf6aa2598021dd88dbbb4a91fd17f9a1abfce214e35c4a72dbf3093125250302047c435bb500683066023100c5803a8b6763f47ecca54e5da391706ac7971cd5f338033ab0fd5841a285376e6c4dd78096ebd04ce0d70013fdc089e8023100bcb6cf93fca5cf160bbd9d999afe0a4eb09ba095aa279d47c78f4853df79b3106d6253f0ea58464250fb5338bc00892b0302047c435bb500673065023100dcaa27d8f34fc027d972c928dd5e9ce0abdd2e604b2bd33a9ba3deb52db8d0231c212608f52edc64b9fb06269551d17e02306ffb12deb7c9707924bb409626fa32aaac95cc82a876deea67b9adca7a06bc45f793daadf89cc7e0e3584754525d95c20302047c435bb50066306402301ec387e5548eb8ecef39ddd6073d8db63c5e921c1ff0365ead88bc4451aeaf734c03c8d78994dfdf094bdb2bf627917102303ab1cad7eec59ac6441f4c7dda043cf91fcd09a1bb643673f5f3ed7e289c89d558274ea7c048765136cbc7fb32b77cc70302047c435bb500683066023100dc657b014ee1c1ee4912b7064faae4083e05f1504e22bb1454be697bf28375e17dfb90f2245fd1c4cc8848e77c12bbaa023100f0406ebf7ad4ec78d8adbb4b5cab4ff310feac120489eb0d430a354af8847c8410b59707604f9f9e52eff116f7ae670b0302047c435bb500673065023100aa32920a3af88076410edb4c3b3ab821044a0d2976d580d32713bb42217e8055ebd4cd11a18b3f96435b66ff72b80ba20230056628cd792c94278822b8fb9729bcd207e46cbff7476e1454e4359a74e4bbbc9c2bdd8866475fa29edf1fc33d303a160302047c435bb500673065023100e64d6b82a6531fbf1e2b8e97c0f877e6a09b8d5b399d4108a46316530119808a7a694d512447f58209ca64473d955ca90230022f6df2a8ae843a65e7a16d0b17256d42de74e8e281a44a60eb4872a8183da5dfb6054b63305a58b2beec69ac62a2a00302047c435bb500673065023100a6e14f87e48a01e5d71446742cb77186a09f778a8dc7ef773db8cdd9dc783ac40c6d8ed11edfc6f084ea984aadc638ff02303a8952da834867ba8cd55d226fae6fa713e1158a5447e8dcc0c4b283b584efa03679e57490bd753c816b669daf8bea9c0302047c435bb5006630640230724f71eec62dfab70eece830007f0e342ae52e57a33ceb29a2bf67227357487b0b85d3710d8452fcc2cdc9b978cf7308023015427747b589548f8a21048e5d542e406bb0550bd08179f4100ea54711a7ec433277801776bfed908ebbdf2ec6f95fb30302047c435bb50066306402302f9259066b3074494f0ba6da267892b972736426ffd841277f858417cb27e45c32781dbdf68869572b67af60e11af5780230059809173a3269a3999e8003ade887dc406881727e454a0b7277904a416efcf3d1693397f3c8aab71db3b4e0347111550302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230429de17b5fb6741d11902513a51c7c17cdb2385287210a8589f290f0c151a08dffa738216f3f25636b882cbde3910ea6023100da920473d6f706ca854f0321b977296b5c661a7ca19164935d3bf51d095c1cdfb31e4706def83f2e038fcbe7e91520560302047c435bb50067306502300f81a075e7f20e32fdda0997663a845cd9e14a9f4d6c2f5a478071d62d298a61695547ef1a2e58d8fcf6f7f87d347f840231009086d89f978d06f2256bd049ae8a8a5ea2169e932a7c06532148bc8ba7122ce08bbbe12549567dbcf055bdbd5cc0f75d0302047c435bb5006730650230731aedbcd7bd7ecf5d41342f5b6ba10b25eb8aa4ca71d7c46f6d79684a37263f11f9b46a7c29a40c02e4f300aa1f7df1023100cd7d1fcc3e0f4fc117f2022eda748b5e9f01cb23c9769b69f8c465d48919690af42179e72bd90ad49ec772319ef4c0c70302047c435bb500673065023100a47eceda9522095be36c6d518115044706fc9c7b3d5a1dc2f9454c5f419ef983e37d9c573cf713a9cca16c5bede4fe7e02302fe1c0a46a893581c14f698cba2a248fbb2553c3534058e18d3b08bf8f60661ea5376ad9b7e12eaec2e76c5d6caafcc30302047c435bb50066306402304cb018d7cb2824c0a6b3e08f8a2a1ddf9c99c981141d7b9532b506fde90cf9553e462ab0170a1ea918e96a71e6d866560230378ee686952433b09d8c7676014d9addede1b5933d3947386ef5ce9de4b499010e1ef78f2b962c401a285c23b59dfe110302047c435bb50068306602310095a8c8043b4819aea422ed07216eeb75349930ee435a5ec410eeca7fb295416b3348c379b63292ac46bdfad245a77836023100b55fbc69466615e0b6f249f48a8e98287d353bdf70170163c7b2bd887d310aa167ee469e7b28f8c7ddce5ccc04832b580302047c435bb500683066023100efff0d99d1a17440254fd30f5f17aa967b7119c0b345974c819031ad254fd1030ef08de74cb10e226e94dc2dcba1c04a023100b5e7eec8b7adad68aaff742e05de7731d54cd4e966cdadcdb94397d28edfce0b03d898804bc874525ad6b1e7ab988f5a0302047c435bb500663064023025ed6a4457e174b5cf9960c0c068391ae494f18b11b8033ec9759e55696717da28a8d042be3bf6642043e802578485fa02304ac74b76f7da7b1c377630b5f795cbccf372e312c476ef6ca46dd639ff74cc0a4e113fa6ab6faeeebeb3789fa7e8cbb90302047c435bb500673065023100f4a1a2344dc4ea782fac2c6033a15b35264b1aab28a2206214444cdba2ab91443f5420069d3ecbe47dcd4f6a48b811fe02303386cfdcf76a4f95928919b3c4faf4c242c5c11d0bbd696fb68c07ebdc1e73094bd998a79733ee10ae52c8f500337abf0302047c435bb50067306502303f06321676b2f8f17111bcbb316c569e2e284446f773612b4aa3af7d800e02a7eba39a816c51cf6aef98a6e04ebe5b1a023100a437dcfb29081a6f999cfb0390ee51f104b0ee10d1d0ac99f0df8dec6343b41d8f110e13da987f744499a4f8a701bfae0302047c435bb500683066023100e4a61ec60a172945e8a3daf35466de44aeb09abb8e6cffc37df11891ac48081e58b00ff180d789be05c9cec502b3fe0f0231008b1bcdb7eada61874b6e22da3686e085eb17a808b05f6d7cabc5f3fafa46a074c2c505cc6ef09c2d9730bc40d2a050520302047c435bb500673065023100ba6f12b25be8a0c425b2fe04732968703971e76a7c4925118ac972c0fd791a454c15b2b25f37753472ec32daf4fc7d98023075517c293e9fcf4e3644a4c98d45e30869a6f1fc990ae702045b0936d545648c512a19d84d74d842aae75de6e871f2090302047c435bb500673065023100c9c0d1307b6d4ebf231cdffe9fb96ee50ad9ca277f6ca6ada36e64cde22890a436edf5193a4b5fc475a41e6436e350da02301fedc56ced5d8782cfff911f96bd350a32c5dbf6fef3717579218377b333b2eab562a1944b96e29bdfa8f4820da427d00302047c435bb500673065023100a962d16e2f2fe4594199a845b7cb2dfc9705fffbd9aa6bba769fb9caa71ae8bf8c3e76d668cf23250fac0e0fb891762302304dc1176e37e3f859666468e4fc1e38a19283fb7339ca740f4da970ba86f7977744a8a770225821a71bdfc540daebebb00302047c435bb5006830660231008153bcaf72b0f1353be2defac99d0aaa05034f609a276ea0452e7531dac55a6d89ba6ecc22e01f49bc00973cffdbdae2023100b6251417e6648f0b9dea967ba57003b340d07ddb88b642695669cd17f2286f9d526b9b9cb19daf8a2781a1474ba0244f0302047c435bb500673065023054586bba2f76b60f2ac39b8369327e2bb2210312ae08dc460b2d524832bf03cd1c6479f38ead48de93f3f6a0ba33694102310098cd3ab221afc889f7cca9b0dd6b84ab6cc055a720cb76a440731200f9e97cbdfcc0a7827131c02e71946380ec8a28770302047c435bb50067306502304358f026f49afa009d88d1f4edac7aa644e30ff73f1ac1148b4fc7e057f722045917b791514e0a7ee9e0daf645c76770023100f72f5bec3bd0b4be0039820646913165c97afdadf3ed702726b73de616cad3649405517c84f7aab02f20d1b64984ac610302047c435bb5006730650230504476b416f8ce8870a021f40c77c169301238233015351107f88f1e4b5a1cd043d52a0071542212807555e071215448023100b44223fe79f9efe4eac0f5fa7f11102a30c36790366f587236e98950b7c530ae46b32e1e7fba1b6c912910332639f9ce0302047c435bb5006730650230120dd2240485310dc0cc84419da44d5a6001d12c3d61033ac07e3a8d48b92633954bff5e57f5ba2a43a3af43a6415be6023100e312cfd17c57a1a763d69e71f1cd2feb5e354892d3206bd69928375dca167add2e8bff42e92ad6aeb723887141239d230302047c435bb5006730650230428fc1723ec41c66eff35dc3bc64c9bc48b0e1f73e33f07d4e16b2157185014ccd052c70d9ec3320871e5cfdb0c8ca1b023100b8177016e242ea629dd6718d2c6951899e8c1612b284c22829198562122fd7404f0855ab0d0525b27e1e06e008140c800302047c435bb5006730650230724f87ba7b1e79001a6782168703dce48ce8154662242d99e6c9d778b8c6853c090c5a360d7ecabe40810ed62ecc5973023100f8010aa09df16a365644b3384b2b9126006af134e40d2b8c2e7f54ac3f4d4a7a0697031e4bd894a42fe24c1c4aefe5d60302047c435bb5006730650231008054f41d403acc78c44207f396e1db18520963c64a4981925a06d4f1055827481ddeb7c9103795b3efeb3ff0091b5ff102307afd24230587962a537b7a7e37b31cc590112c7428b95c619d89728945132e01bc03266ac5207c23163f47b73f4f4a1e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100da716d7ddcca1a00311eafec31060caeb34b2f2bccf6ed789a60b32467f00733debdcfb3d55db06c81f995daed253e8a023100c940e46237179acc0b41205fea371cf6f17fd17e001969000fafe0cdef8df5eafeb0faa9a7b93310fc4f3f3a286ed1930302047c435bb50068306602310081b40538d977cba5d70c1ebec1530d385abb8302ed60b8ae2c594e5e041af085c2179075449c12fd1ba789f0bec733db023100e247efab0ee2d22a7c5714dcf59fe6f9608aa04025678941416695e9815c592b54213229f5777906185227c98b9263210302047c435bb500673065023100acb2eaacbb8995bdf2c473e4de369df258b5dc57ad0a403cbe7d01df30c462c128fe9f57d3de06e956d31799ec0da5f902307a6876e62594b9f2bc264c477752addc5d3c923c5cc949b15e23ee8ebe651d82a554d4458282cb885b6abbe0fb4d8dc20302047c435bb500663064023100fb87505281e4c5eb4d3204028cd552f10b41ecc1885a833c803ceeb31f220ec77c385349001493b0e2b6cf14ef0b96e3022f69955209c5ab206d946df5bc913c33d3b9b82da0d8cde33029b11cfbe33c30349f24c9de2490f50f6c11507cb783440302047c435bb500673065023100f45d80b8909d60a8a6449975b4628316fc653b2e0ead5309503ca02ab8eb83b3a6c0eb1aada88cd0708a20062eb9bf58023031f6ea69d9eff514aa33eb0dc160ccc74309ba83eefa016437bef96890108ebc502350986727ba3e051009f5bfe5c4930302047c435bb5006730650230581dfad946beda187eff53f43c1b25fed4caf4ecbb532d74337aa9e7e9096f9df9f9fb4f0659ce2c8a268c4bf3ad3f76023100c0d34bec34b1daa05c87e877998dbf51c388cbac98221d80a70ec4b017ab630ac33d74ddac43520216e12af5f9d9b03d0302047c435bb50067306502306944967c7355f1b2e6fd4db4c36e2582fbf1b8595aaf7d4dad90f71f03b6852f325002b9925615b6d89b3991002cbae6023100c21bee9134b71c4ef3c12970041d35307fa9c6c372768fa48aa41e267ab5d4fae0b9bd732e9bdd91eeea6a72500a9eee0302047c435bb50067306502310091592e26495c24b37901eb40f7c288c3ab7dd73ff9929a37659852d3425f6f44b24355af3ebcace3fe71b3a10317b00b02301be0378e904b0eaf7b97078c3999acd5f629623d6e82dba58b5bad068018a766c92d81095e5d572df96e3919fc15c85f0302047c435bb500673065023100a94c4d94d02c13369acae69cc618bdfbc17bb88c493148b64b5abb72edb2df4b9f2a7b8cdd3b2454b73f484c4688f10802305cc539b5a34fee4786c9089988c2706a6ae2b43df22e7ab70f4d46381704f0ae0de15cf6a5efc349d29023a0a7e7d68a0302047c435bb50067306502306fa3dc6ae52f73f6c5362ffef55df2093780e266cf3e07f9be94568626c8b4691679fcd49ae13828747430a03d61e1de023100ffe8e4f71e25a5c3a11cc587ac15e0f3ef6307c1835ddf6e2d8b116e91286072aec4cc3ed5d4ce5ef310a314681f1a720302047c435bb500683066023100d3ebb4f6264b1619ba7c8c02cdc733b1448f8e50d900f884b124d232dde8e2e30b2fc55bd806efae0c0ee592cd303ef6023100e85a01fbc9f76dcb84d951f28c0c198ec34bfadb27beacbedb81436aea0e13903c578b75e6925464f9829ee291d6ffb20302047c435bb500673065023100a45b0f11e950cf9f19be8dc5ca78a19d8f6ea37c301c2835cb2db4d981f17c6de20507e02b85bed5cc02ee75c6902074023006539245b56bb53d7a04baf0ec7b90d42e8edcd2c227798d58d61d552857471caff4cc0520985c0e4b75148e414a81c00302047c435bb50067306502305feacfdbb827744ac7cc2685bb3f7118d0c3622a532458971301884ff310cfc0b42414252e88d5be3801b0ea7f1135f4023100ac0fb237a2a6cdf6903ff76ae96faa00fd060acb15f82303af62c2d3e6efa2435df65c7770f8184397fc932b7d2d98890302047c435bb500673065023071bc5b994806840cbf43824afd52d69d000dab2b471270d564f51025e6b9a214d2e461d3f83f932f26fedb73ed66f77a023100aa47cd7b0730c67db68d4017f621a824f4db08fda63453ab244d053963c55f0f405002f054575b4dfbdf274736e5644e0302047c435bb5006730650230714e9f1f946a4a15aa2212e2f81653b3578da6e1620fe5b6cb375839323b90249f43a0d7b5ae9339c6138eb4fdb79240023100b05722038b7990028d25e019efb40db5f42de6bf999c55404c2a297cc4d37505a7346031b9cfd568ddc1be4c76572eff0302047c435bb50066306402302bd9f1e3ffabdd015ee900115065a47eff8ecc653acbf36c3b945c0a76771329531f9d8daa10d8775f21d60263c64a7b02306a19f4c16cab901664cf677202d6d611ad337d25752716027994140bb50b1e62f8496450cb6841e49ed3ceab0c866c3d0302047c435bb50066306402307e13ebc59c439f008e4978d5bacdd0c258b5f690224a3faf470f7afa5b0a102c44379868d7b20f04e43b99c9e8e53ce502303669598b75618cb1ec0c2cf6539739078d1c4f6fed46a6a8b3e2690b372f682768f1ada8397f06dc46dd52ed35ba8b850302047c435bb50066306402305d0fbb40597e0959aa763e2dda2c0fcdbf1489003ce65c3aa0036760bc6d034314cf3045b1775839ce3fd087489dff5e023002461d3a0b26904b4421b16d2fb589ea86e6270e0c534481f6866a2fe2f5cafc2ed573cd0fa96da53e1a7547e0e346e20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307ece9f2a99f21b9bfa484f4d91260cf7aab2714b9c972b6a226710743d67c5621326b8c10215809262c4859c0ae0f1d0023100d478c77bb0223bd1286f33356ac92113599ba861ee03c251e3662623c7b402fc8a21d3d508eedc689dcd23b9f25e674a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100955c58526a4e949f6b93b023efa91edcf9e776028d88b1f777de0de5634e9042741cba6dfbadc58642a5b8333af89dfc023035e8b1f07f889256e69aa8e191fe3ff79fe64070367c67bb4089fe519932c86629c2716059ac86e4eb83711711a7077f0302047c435bb500683066023100d88592afc6bfce458bbb1c2611cab7cbb9367ba3b3d733e1dfd9829788271afd1d20f072126dd62b5639931bbb295bce023100b2fe91728bd79da6da006fd8ad67aebfd62dbfe65a6468fb5d6387c7eb155cbbd8a5a00649eb2ce35cac0d51caaf24df0302047c435bb500683066023100b52af38a67f25563f68b8e467010a29cad2356aba9487c5aa1889650ac917c02e13fa0e8ac71869fbd6adc93a67124ee023100d9a0e9bb014f09c0506c8a3cd52573f44eff05bd4f052aacc439c39dd2343622938d111e211c662e540ba18357ee8bde0302047c435bb50066306402302cb762f66bc6673cbe54c5a7d4d967479a5383d385a8ba220846ecfa84c563b07a8aa9201d21e29cc0385c268f0c560a023060fed5b413a141ed319d543c87aed716297ae1373e45f99669ddfb5c273746662798e44e2ac1b9ceb21e5a7aa177f6ea0302047c435bb50066306402302508ac0c7b99c57bc06ab92f98e4215bb88f6f97c320b64d681169fd6e655388c71d39373cce4bac90f087ce6c8ffb9b0230295352459fe700be0bb658d4c3d6938d1b2aac1b354a2dbf2f4007b9960d8b7a90624fd661d0b346ac9301fb6c2103f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306773611c758e2b9a22e72cf99827490d338639279465e38c6a9ec34be8b5baa313db76d814e25547aa18cdb987a83273023054c2984264f185ff25fc9085a3a8f80118ecb7958e6152500916d3f64da92c3de00ed500fbf224bebe0d0da0e9c1ed610302047c435bb5006730650231009c0d7b8d6bbc5426a4c8e97031fe2ead76b965a5f58de57fa5c5b430227f538b0ef4826a914e6085c77a69d022d2fde6023051270c12d529a6e8463cf3fd5fc0841fa4cba762666d59faf2b2de0bd1a1f2fe4db493f7421d7b9e10e0cb34e67aa4550302047c435bb500683066023100f4c2fbd1a0fc8a5f61a25318f1ed14e4402ee467926ae4ce8b25f4c86c65e1f096cf7f1fcd2ee0c9a6bc177f73bdf8cc023100c34e14113d31d9676b1aa93103bd99a5fa65b40a851f1f76701bf4405ac45ff289c85944ccf8b639c8983a19e2da062b0302047c435bb500683066023100f53f449db8f096d1ffbdfc083a81d3e431afe135e34a257a67845472d41c3cf8830d9709ab955c4ce89d43f6bb77b0fa023100b598f091ec537b2b6ce666ca81a821905fede9470fac74417b7a45993966db65ec70a6aa32d628a4501a586d79321e290302047c435bb500673065023100c87331a4d5e5907c741f09aeb5c7ee5d530decaf86c04557ddc463f0ca51c215494275ffd816ce4dbc011c83af21a10702300890f073045646a158ae1ce4822c09157187f97977132beff70874a99d393ffd6dcc078a9198c11e184c6fa5f5e3e3e90302047c435bb5006630640230059f63757c7444ea00e892d7f2bfcc297dc57e0918145c2cf8db96711003e7308afbcd87027e7be77b369b5f2b809d5a023013c379e392d057454ae73e9ab7b9420869020c6078f53c35138032740995c6523900d75cc205c01e3e638dc1e2c5ba490302047c435bb50066306402300b17ffd44622866da588b4f40ebd935db606a3d1b54d1ca8d46a81b003210ab7e7990f453c476ed99bb1f76dc8e3d5d40230707b94499959ffcd7f4b15e4053dde97b1d7559ff687d8395f4df74cceb0b309aef8b6cd94e500c7fae1be0767abc4560302047c435bb5006630640230352f95ec1782b42d646617783e9d2a1acd90679c38728ac81e826839d2353ab627dc32eb517834c61b35d4926f0a5e96023040d8775caaa50055fbe3384c7cced519ceb99d2766fe21e7f316a18d1f7d5fa9f6561f366ac5c62b3c6c09715d4b5bf10302047c435bb500663064023024847ba915478c81cb4be9e5bc258cf265119ede36e73020e5d63829df2fe699772d1dfa79f82c76928baad45958e0b102306c527fa9de5ea84f90f0443da5877370461dc00d9c580a4c05ec790c11fe7c98e6347bc0f713e3c841749b64adde2b830302047c435bb50067306502310082d5bbc68a1782c6e0bed785cd1e9d6514fa889d01251f6389ea2b444239f0ac3b0ab73fbaab0c723ba98f578c91052d023045451951d8ecad5d8ca44ce8cd612fe57468305b65abc9d5a2a12aa12c950b6d1d1b929fb3cb619c10437f1bac78f9ad0302047c435bb500673065023100f8a5ef13491de982633b3799a5e9f10337d6ed0babbe8a8208a57701f5444b76ca0ba77f27b760054956d4d78fa97a1d0230521d591562fe58b686e53e317af96d0bcd065d961a0f9a679ad8349c5ef0515ebc9244253491f49f68ff1c2637c5e5d60302047c435bb500673065023048f67feca134a35f19f49680064d03dbe4f87f48ce2842871866bd9045212e737bd950022993ca7a2e3753d19938c31f0231008af07531ee53bb9ed22406acb1a5341ee51f363343e53e0a7432d87c36c988a316d0f46b7cb3bbcc9b3ac986d3ac23c20302047c435bb50066306402306b259718f9d17cfff40d471ad005821aea03de606d36047883b4fbcd0f790c4a7c4ed1e27b859a6663aa0e3d5ae27122023061047c1e9b8b37cf300bb21e9e944ebf7473be03a8dd0cc3edd6c30389d4a3b0e5aaf5d1b8a9647ca71e9b858d1754880302047c435bb500683066023100efb37d22d7301e3496136554b742e1ed48e6fa7486041846a189f92043fde0e320df1ec185fac44bc39b0201c43f47be023100c507ac469712750ae0955d423dd073697e71e299854fa3113d57ea23738def0b5162b7822843a36dcfecae4b7503ad6d0302047c435bb50066306402304f8c9f5dea58d63cab0290748d352b80df99ac366233a97706153384276d35cb9640beab1e8cf3f6c7e5139a641938270230355c2d2000c3d499bd4855acd733868ed6f2a7c57854090e5a93e186458acc64a93c2a3db699a9dcfafdc21d70f5e2a40302047c435bb50066306402304e196c7c85e857a61e2556b456989e00b1bbdb6a1a2a88879c6b8b5c25db259f3315d437baf8fe1de12adbffd1d21e4e023030b3e0295602a8893b548481ec6a52d500fa1c2becb509ca56df872c441f8b223f3d38d6a950b05a7622d3ea2a9d27e60302047c435bb5006630640230596dcb27ee8a19567f547f9669605d4b6556b6e2d3e53d01797139bae121b66c4f694e2407893b07371f5ab3c3b77fee0230383d6f690b15744bf03524f4142e0ef78476b6e26512b8101c6161e37d5befe02a10ea1bf412aae43d189aeb9b7beb060302047c435bb500683066023100e0e5113fdfac52d2dffd518ea6ff029e924e67ef97a97a51491675ec0b9f6928e7850c529543696111b5f1c293eb63fe023100da8bd707835b39d85ad5ec3abb38e4d738f18faa4d6883204ebedf1cae2eae61f8ee4a330a4a981c3d60805b11b90d1e0302047c435bb500673065023100c26cab170339c2fa90e77f4c1c83b91da3dbe1979c99f40ffbefe645783692f12b4e3b45f3b17878d09197d96537a11b023034f7bafc4ddc1c3026d3cb98f6bce01cd200ea8426b6451556f242fab77e5f9d0fb479831401d2a8f278113fb09ef3ed0302047c435bb5006730650231008d9f03bfe10afc15b9f6c6bbed338c088fc4108d77f86838ca8bc9609477eb5cfb5b89a0b0c99c3c37354c131e408f4302306cf122976083741293d0e89399e2b5afcd0a76af657aeb944e649629a6a980f82d5003bd628586e11ef83548df5546b30302047c435bb500673065023100d6aa98533a48cc50f0c84aa50ac1dc7315a797a6c8b5296a2ea54f3e98e04552d14d2ac9d320cf2dcb113c266f0266b902307739946cd8ce88630619853b6add1e34e7a1ea4a60d3da4b932167e89639ca0c3429d54bb8c60bee472761174c41ab6f0302047c435bb500663064023024fa848bed3c2291921f3fd92b0c216ac0208eb06dac5f15284a8e9a0f5a23aef72ac15c0c203e4006293e9ae4f7700102307d21e7e97c9a817e7a1ae940fe3177e4b103506f7a744cf691a0d8a7260516b04607d55473d11e5dd10e7bd371cf8e010302047c435bb500673065023077bb3411f8f026b88d430b6e7bc0ee8f1f91a10ccb49bd535bbdcdd3370d8129d7f4ed182f8894002f4cdb003d16cd59023100ead566c1e420bfb3b948e88b1989ce7604dbf56b1e88dc3fa331e6434953902e5d511799ac7b128afe0031e3fcfcbd5d0302047c435bb50067306502310098b9ffb1884388e9bdee11c96d0d4418d2cc4412f991cc5fcd4e7093465acfffba15b8719cc44be4d43d1665b0957a8902303c17ea9baba9c2bb836989a78db3ee58e7634abde5826f6e2e81e2f2026b327d380b7d0fbc7f5b5d01a5e4dfbe7fa4b40302047c435bb500683066023100a4b887c81efb43b43cfdcb5282a10328fdec6b7a1f8b5dde04648e78dd6567a005cb987c0f5d8c3f04c50c69e900b04f023100b8c9c7efb868b2a875f07771c6bf81c1d038e6bc6dd0b0f676e915a09e8bd13a7b20d715d99813704532263de3ca2a6c0302047c435bb50066306402305526b736cc4e34eba844765835a23b11b1f86d075fbdd5d88b723883387857efd948620267319b9624bcf2dd15966f9202302306c3ab4b8dfd7c19135440e791e952ab7c7aeaf42819548ca6ceb929db0db79eaca489f52978f9745899ac6a7746c60302047c435bb500673065023100ea293d40045ade66c98d516c4a47248f73edc0ea4c3977707b00c9d6b75e6c3c283aeb0f68daadd9ed2bf706226faa0e02305a4cc023a07ab630e02495a15b652bc167e934b471861cd76763be444f105b257405ba57e14ccc813be5a2c2309028000302047c435bb500663064023079cf9078baa092d7dfd71eb5fcc31f8fb3f4c1f5c06e30d7d4b9e2504a8554083828e8d96b8d8e20ff5cf9f077f9238a023015b6b368f95f017c43699b62faca386f7935c2cb3f46449ccc11daecb46f581eeb09e49a3aebf931872f16ce0fd9f3a10302047c435bb50066306402300c53a3ee3dae6132ec58f01abd8a2d12b49af5b463b22bb73cb2ee63fad3921361281d39010d4a8f49b71852f8793aef0230047d7ab756709b3c6d5b3ee1bdb34a9bbf42e89809e6e14ee458af2177f3d62d2c6752ed2921d92e8e8eccd2962b44470302047c435bb5006630640230259bc1bf39d3e4e0d7295e10641f43c3e8526f97837255c6657a3754886f40bf2be557d22ede4c20fdf6bf2c91c2fe7b0230763d5e319ef58192f1636f3f4ed2602dcdd474590ef1f4e1e7b7e66ecf8f50fb8c0d7328926f5fa7f2997557bcf740cd0302047c435bb50066306402307e736c7bbb4967eaee27d051510c32c07144098e954fd231342e65b89cd06af0fc5300f53f0b2016b7c4f22fe0ff9df8023057004334f09aae0f6ea9fa6835b616ab452159467e00edd868027023df84e4c50963b18f4a403af6a44f5ded0272a15b0302047c435bb500673065023100b52b95ddf4fe80afbd60b38a36e4250ea739c4f6c0050a2daf638cfc0cad9848077826ce469bf2bb0391c6ff3f6e54ca023029e79ea82a988622f7acfa0d8f4d35ee49dbdae5d5b12e21173812e8001c638eb36d695084b25aec41811f2ada10793b0302047c435bb5006630640230139e766ca832f4e21b1b6ba4e196462aef856f8551eb262bd05944350d074ca8c0fde0d3429a1fcdcb56437c83ec818002307381f6b5ea88bc4de412a684157f1000f252c19a2829e98e61080bbe2a0e10bfe99c1cf8677250374128b8ee479a419b0302047c435bb5006730650230120e70af5ad1604ef4b5bc509c33882fb254e55862db51feb4b33613f2a7b24ef5e09ffd149a0769c6052304cf759d5d0231009ad8b8c27c43a78bdd0e829dec5aae640f500739179d1428411e8111f85061047db53e7f43eb4e7ba1d56718aa6c1fa70302047c435bb50067306502310087b5f2d1f2afb4884a8d9ee4c5992d9f6204992c93dfb8f6d2cd8824ea3faf2a0abe7b53346da7b00fb40c789dc1fa37023066dda6c9a972078a71092932b1a2427f050c86c2ea9879a4f3ada36868a7f9182e38b391610480aa2f0d5e20b41ed0f70302047c435bb50067306502304a0b0dbddd2a8aa3d4fb68220ffaf38356ab798de5f96d77352885cd959491c197d88dfead0c91ff5e484708a369ad76023100f2bccfbbd8a0f33c96e18fdf51e5964996867bd04f1c53b97852b6b6e687623e78fd9ac17fcea78a68e4aa75498de9300302047c435bb500673065023100bd818dbce8b7e82a799a027daf13872b5d1bfc574e24de8b1a4a0750a5a9a99cfe7ff3629acf0a1444434397c1bbd25902304597f93d9ad87e97d4b37153279f051c62f4816b36f05d2b89eacb9050b5581c66cafaca907e12950ba74aa07e60864c0302047c435bb500673065023100cbfb1a6ceeb06e00a170dd4ea4a0f510368bfba7279a5600ee65302affc238af8107de57d70962762bb3a28ad03b59c70230775d5c7eb34ade29dd2dd94ec8ddaa150bdcfc0df8f55fadfced087eda8c66ccf019a700de2e5f16fb1c54e6f2dfd81f0302047c435bb5006730650231009aad27974afd03dbb588894802fcc11710ded29a256e43b61eaa3cc605da4562b9c827a5329e78c92fd359077097207b02305aa639da9130339fe24d44a0c5251cce58c37eb6225094b4f1b365dacc414bafa7aa1a0cb3f47ebf8be055d93c7c94b10302047c435bb50066306402302942bc44eacb0e347c8a0f399f33bc1803109ca4613dddf1d3b350295d38972c1a94a78faab1c66778297765b41e76570230110d6a3756eb0867cd1328fe301922af7359cf4a5e8cfd88ea905965ddd947b42b5a818d15edb90b96490a616ade389b0302047c435bb500683066023100b9ceb7b634846f7962e29dc39765f4f60753d28ecdf338bc380857f8336ab5199c025d8685bce4ea5d4f0d2f281d85ee023100bed462bc903cbd4fcaa088717a892a0de4f1593b3fa4bff0738ce940823d53fbc54bb05b8f82a27e50958b22c207e42e0302047c435bb500663064023007de6bc6711735af4da8dff6285fe911ab06f8cde48905c9e9bb82bb6b2ab549287c0427a94ee88286ae5916f37fdd060230284c5b4c93ab572d1de2cd5b768b19a6e2cdaf4099013124c9bc67a69d5b8c9903fbe9b48bdbcd11c2ff7c2749fcc1410302047c435bb500673065023100bdf721e0f0c5562143cf363ca57dc83eaae1d1dffc6fa86c84056371419f6eb4113427292fc181c15e15ff2f8407dc1a0230231ca028379f5e5a0e76b09cdc5f63b07ca03a1574b9fc753e2b874718b36a514e6bdf68e93d9e5063c16d1864995c160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bcda67f4255081c8b0ea7fe54d168535e22ccbcd0c14f591eb8e9deb23184faa9d0a6e55f11979d4fe19f21cfbb6d3b1023100913bf2889a5452717777725e8b9d2259d956e6bbd9a8dd5e085f6d32c1cce53a59c299694f06303708de5584cd7b0fcb0302047c435bb500673065023038488d9366d4c423986a0188cbb5e73c3bb392a14a5781faa7ae65cca6ff7ccec588bbae41d5e6acf341ec2a24c7db72023100a58069309f236890ec7a4a531f1fc3da4f9dddce39ebd1ff75c623380960abce2c7bd94e6411e0c7a6f153f4acf60d6b0302047c435bb500673065023100b44d0b6c8997896b70261773fe75659af600d52aeefb1c1d75244dd235273327b92faafc2337699f4c2d49ba4f8b442e02301fc08f058e8488c8f34fd300ca016d9542820a3d16a19b6d95aa153d3dd3984dd31a9517acf890e3954b7549fcafb54d0302047c435bb500683066023100ff7211cf171b35cdb2cec08af66d7b2d409a010d4084fd81e4909a6ef5677163c4fba53a7f6808a40d9170ecb0933b67023100abe83181fc66b3eb8b6788fa3319e55b284e7021a60e1c4687c1d3b4be16c96846a350ba453e47487d22a51186509cba0302047c435bb5006730650230449499aa0d61507c62a213a9287bbdb902a343772c4d237266470112adb76c9bfbe263c123fb3ef3a2b596f6d1a4c9c6023100a9cee81952a8aea8a4ebc34212769bc866b8c1ff551abd140df1075cde313472892bb0227f1fae91d9127ae68a3ba7c50302047c435bb500683066023100946d3b8b1d0dcb5e23e9c2c3ae344f0a7eaff1597a1361ad2bd2d741c93aff995be2a4fc0733211aa01e78eebbc6a8e002310089be56b0ba641eeee05a64d922ee27864ad1a203d791008f8d31fffbce0d73c892528aa8b6e8e4ace9b5a075de646a830302047c435bb500683066023100f4406af4f79589b2c69b019c7216c4813a8495b260e8c9fd7b86a38e81cd405bc22fad776f11e9dd63124b5c98af760d023100fa5d1357ccba923607f5467abf6c82fabe033ba1cda069b9548c267c11ae676dcbe00c0c74c169ee5ed8b1ed8aa7c5050302047c435bb500673065023036712b340ca9d7c02130d0499a69afcdfc7415da5bbd854ee4ff0b089b50fb8f24aaa9fc7619ccaa1236b9ee693a919d023100ce3238cd6704ec0a28ba83bceeb373027ac8d6df11bf07285a0702fd19c197668336a79f11ad6e12097dfe5a9720d6ad0302047c435bb500673065023100d36c4af21d353ed01ce0146a940f99d8570c6fc3fb1b0d8fda6871e3baaf35ee39a084a5b38894a065eee84986cdd10f02301d5bff0a1a0075f70b1a3e3f8ea42d771c817168bbfcf5bba1c5e20fa712fb72252d407acfe7f589566e7ce8c1ba11750302047c435bb500683066023100ebbcb9883ea0ec1af9944d8e581d881377c0239e8824c30d687e64047fd4a005131eeb9e385644040353f2ed933ca144023100ebbbb01b0c9ff022c9c4df6e0f64fe1a77810a600defc254d5d1caabb7241d2baed6e141a8ade09bd6b4b6ebeb9287b40302047c435bb50067306502307d04952e047aef70eba08dd34e43efbabc2dfd126bad20aafd8b68d20bbf0d46108fac7e4045cf87c1bd6998325cd511023100c819d5df287b7267b240fb53e1712e9007ac114a904ccfde173343c6063f8468c5c9abd8c2db3ec822f83ddf7664ec500302047c435bb500673065023074e97889a7d8a37b1aa0f9408a8c271c14b5b3fc0478aed9650ff49f3d31d527e660877bf41b61b34cbf85da483e02d202310086b49d34616c04622d89372fcc59e9d1e6e3922e629a43be0d48b0dbf2f2a4436b19e5f94134562f4d12545df212debe0302047c435bb50067306502301b92cdbef9a4173188b2e4e963f45b6d4acff8ea4dcfb24bb21f196423e5ed8c73622a8849ac1f403b12b1967c098d3f0231009f7af56843b05f3401c08b02237a2b87de467a584b5ae8d533d375366009468fe4e4f09ab7a7407a08c3074ad597f0a70302047c435bb500673065023072763c462c2a26f28e0cbd70488d7a253c407fa2b238d4580d3508e96cdbd9513a001ddf23fbc2a3841e6a8c0044ebbb023100e3d05f4f03c8fabb937a386017df8258692dc4f39337cdb283c9320313cf2fa1bb9580a255d9eecfe849da55180fb1080302047c435bb500673065023100c6a40388e6a334586aad1d59fa0090f07278958206e4071746088c5bbc99237374b72e2f35a2e038519bea84064935830230437baf5a0aeb95fc5e56d4791991fecb181c32b8a85c3c7d8194983e6da05359356b2daab9f74aea1cb60a2b7171d9300302047c435bb500673065023100d374338afcadf8340212e5865144100ff22a95380e23b1216f4eec27056fa12fb877417ba569d954cfa4f5460935bd50023056c12d3cb06304bd52d4cffe72e76b67e5ab4d593d802905961bb6bf0e199a1de947e19b0a0af1ddd1662e6bb9d63f860302047c435bb5006630640230371009f069b68f33be3134a28ae5f2db6584720ac8f7a2e00bd8c042244ecfbd391972eeea7e061df22325701bc70c9902305776de050f2ab0079694ab88cce8f874c5c11e884cabff4f531741ae98aa2b39893afdb3506a12f7c8ce37e1f69130b50302047c435bb50067306502301b53f34396fc7b20d0dfa38ee202c91768904bb7f6d1367929c531dc52d1aa6c3b6bb3c9805182f3f7da06c51722c9580231008ab6233a46f86080c0ddd03ee94f8868cb9df38f22772f81ac99e1aac6f5cbe21b4e1cd201c710ddf7060c3f13a6511b0302047c435bb50067306502302e9f95b3466e1b19900af5f296d320978ed9456f3986cbf3ba84e818541ea2eb2b9554df5b1f7c5e56337e282262ae50023100ec52845711ed7963824ed81d0c1db382bcde3d180f37239c5ee5774194c9a0b2b8a369e6ae18146c1ca26b64e0080b840302047c435bb50067306502303bed5d7cafb897aa094ae200b7f9190c42ffd535cfebf530700567548e5fac2a1cc9258aa1827a2286ad0c157fe60001023100ec2c480355e5b6126bc24dddc15859b36a1b0e23da54ab43eab0740ea5f631da8ea5ad85e085acebe7c74025a03874da0302047c435bb500683066023100ce1d1efb4314d2cf476255649532050654011f69bef1deccd065fe84739b2009f4a9674e7b39ce8f86962bd05e1dea8f023100ecd31f71643acc6405dd59164d3f4c85e70cd71649fbf8924371d11ff6e8d9f7aafec28175d09fb40c7bb5927c0081dc0302047c435bb50066306402303cda21658f5ee2eb396ecdb59c854ea64586dc8b7e36294360e92682e1958fefd5d274b1085e1288ac20c6f2ae19ce46023050ff2a15515d3968dd04fd243642eb115e369a7ec9022bbfcfe71d47e73bddd3b5ddc44a84ac870f6500885b22abcf9a0302047c435bb500673065023100f7483725f3e38dd89ebd7d9c368bfaebf65bc938460ecd6322ffd8f3a1b77b44bf38896ae043767f7c49280ce7879aac02301543c32852c7e010ee3c4e933467838ce881461fc3459ecf68764a943a23cc62899461ae3f36468314ecc328fc8620a20302047c435bb500663064023018dcf1ba29c9177c08e887685177ea70b06c1818cde5b6206591abd9920c7a8222ca5303db7b8ccb4c0a5416f9e4777902304150ad39b4efd6f4882b3c789e1eb1d0738a1aab2e68a9882896787055dd1b840bfb610b88787eb21aa4432e8e66a3690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305f3dc8d75f374eb15707d83c0bfc95d5656079935f845d0da9c9fac4bb95667fb6f2966018206ea269ee30dbf9fbd3b2023063a97157839c38fe6444aac2163d1752468aa0ae7ba62a8a47a7433a6f1cff618be41cbba2c30fe13b38468d3b9a01690302047c435bb50066306402302cc7990551bb710bf6a3bc02fafdf0beec11796d7b3a0bdf6d5949035ea7e7c43103fc538f6de72002a1826a8780a58d023032ebccd112a089878198b79885a405cef888808ac22985dee15b8bfcfb04400f3486589a803367e479f78a901988dfb60302047c435bb500673065023100c9b18456dcf233182fa0f595a83b20abf344ea4d025a8ea3f7c5b300f7e927caa84378b7c9608554469ae7d5d93b0aed0230665a4dd05d478d224e77fa9727463b97eea292f0ee2ec2290c264aeaaf32a664452f9f8254314d27e22ef5ab0a4503880302047c435bb5006830660231009253f388f4afcc5d393e1c7d4e8a2303238044e8e16b8316cdd7bcb9b5cc011361e56b4e41208bfec4966261e741bc3002310099abc540c2136d2c1a1a1c81f5123416f095c299496b7e535e4e17f18c118018fbd3f053171548b6e1c909b18cdd02860302047c435bb5006630640230271bf44cfc24d2f0ef1ef66c1c4d143ff54e06c97e460fb45c8506219a712feff80704e435872f0d70e2eb8782d68ffa02302266d7d44a87ad34c4e5706c6ee56162e8822df2c172db57b0c4a43b0587554b52939f3a0ac291ca5e9de7e0f28589910302047c435bb500683066023100c245a5aa0ba2a5e3b56c6cea3e057b4086b27ad8b6f14b523533462158a65b0836967535d20d520fc727164119bf5a0f023100f0ea8bdd9a39fe9c291e965a7877a513f7b4b14c577a48355d1bbc86afa7abbabf839edb3b49f3578f8009bb0a25962c0302047c435bb5006630640230263f89081e557cf92aab73b5475b29b6df9b310470b9c3f378d2874ef5c0ee8ec707cf6e212d42f96b4de0636fb23f9c02304f20aea417014e8b57b94db9c08120a09718b6c0c765d66a05a5f5d8c14e859dd7d5660d4287990ea405c5a6d8ca6b410302047c435bb50067306502310083fcdd564aa4911d5f7e455f9aafbfa247f2f3e837b04acf6e47e66472771d057169fb63aaeeda76c0c3dddd8acd289e023070da256d9af8ca09e78446d93e48d5b0594b9fca2b97d45dfda59a7899e19b4ecfac3b8421a034e118fd7e3e326f91530302047c435bb50067306502300263111f778ea9477d76bb32fb1f604603ae7ebb8a52f827adec146d1c75b462e712b6217844c3a7bbad7d2036bbec480231009159e5cd12fde020a87963c73fb9c1c27945333055ff67cf24d43ea194c2f00ec2c5311e32fbb54a19e69b48afd040b90302047c435bb500673065023100f2e6ac12ad164a3ce1e1598fbd05a3f699763b5a0397aa841441c6270dc3c01c347b63b0de171d502a1690b8ee72003802306e82a211fb88a7e2c0a9b1c0cfa4dff5fd18aba32f7c862e8d1632ba2bf0a6e3be17e645fc4999412f63ffff2a10fa890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ba767b22fb9704946e2c9d6dd47c87f758f6ad3c55245fa38e8417c11acbffd27ab4cf376737c24702cf1e82810579cf023076c23a903c1f98acd8221018e7a64f7c84b5422fb6c67d93a381440d029f65627c3c7f4846ed5d5b8cfaab9726d67a850302047c435bb500683066023100fe183c64781a897a725c0b45593cd06253e4a0e5ddcc4a21cb274ef631f287a3c7f95f4fa916f62091827b80c0fe2941023100b94b77ba5bb9f97f943c833d6d279bfdd0f785610370e450b30f11fab354c0a4d863e4094754348540e18b4c6246ff440302047c435bb500673065023100f3f68ac22c3e6f4e4f8e61f394e2f6004e8b849befac055734b3d649da1db210c33489cd2bb0766e94d2b1a98dd9c39e023002494711ed140701984e3c86dd5af9ef8da1afaf8449593e7d903f71d34d0fb3c21498c4a10a25c67f2933507bf54b6e0302047c435bb50066306402306dcdb7a9f66fb68e05e75fc7787085f8abc17f88c2cefc294b93ab1d17a9bda730311679842ad91ab474a434d42ff2a10230378c5ed1d50bf1fa159d80d7d00cea4ec4ebfa2720f6ad9ac80a4f39f51a3efecda08ff4d513f8a7b2670b09f1d974ef0302047c435bb500683066023100873a9ac10ba1677b3085d722fe7e93f7fe03c4386766cb84d26de24f7f5dc591de8f0a016b3a16c657911c6aff0ddc9f023100aaa179ef292df43fb262b6ba23dbdc01e4abbee07a616b4ceb2764091e4616d7e4e075f23227eb41afac5d9ba80b2be40302047c435bb50066306402303363f87b84bf1367a339cf83d7953579f8c6f7b9d5444cd7fd8d9d0a0e632004086ea0444004f9d2c50579083e15d2bf0230758522e774b8b3ef33b68d7ca23d11ae1de035923b4a70b5036da7962aa9572a9ff220945e1244e1b7b2d672f6e8cd070302047c435bb50067306502304e8d764814de5dc2847b30cb000aa201cd66a196a5f263c5bd7ef28359eb0be76bb36c211237e62c875ba5daa159cee0023100ec06176e0202da6b54f49f7c7ed8c4d74cd3fc315ec0cf19d72a92697a9373e77481048770e53af9f8bdc9e805a74a650302047c435bb50067306502302117e29b7a1fccaa48396a280abcd0ebe0a53c83ab5bef6c0e6023ecb748b9c32b79c1a7c22d89a2a041eea2f3be3a6b023100c8340bcb657b1bfbbd53d67584a2847d9c068c967e3579739636171ac4e9d7e3be58cdf5590c9c95644bf4f8942522e20302047c435bb50066306402304513eeb4ec18845310ecb4ece2c80483065b916785eace1b3c98a3913563f5c90ce79e8be12b6c7a269c96c94562f73d02302c990760f39a625e97f03958ab58d9e7e66e541a87e0bcca0235e17345861b9017afa2506ed0af82dbaac291998a22750302047c435bb50066306402304367b0145ded673cbac00ce0099a3cf5365f363cd2d21a3acba11187c709b6f82ba0477e2072d1e5ad54c1c6c04432c60230117135d147f2bfa4b96607ca6831e90d15f30ab2c4be4f3dc3130cea42005331f726298419f2132af52a2aebd5d61e8e0302047c435bb5006630640230061a01a34e28cc76bd5839e719dd3023c78a3d6ce0ff3433deff57e677857c3e9cbf6b413287d90dcc68776eca4439de02301ad841927b3455529dca52e2f3c32a219deb36ae527a692b9d6556aa617e189ced2bc1a15f31212b09c089e594f597d80302047c435bb50067306502310094a3458c947f5e60c36348168fd244b819db4b2b497cc89a2529d664973d910560780b40cd2f4944269dba55896b434d02301d3a25f58e5d2cda56f76130167b981d9d41073528b12ec2a058b2544ae4b5cad76e3182f5b9f526abb2f82c973b387d0302047c435bb500673065023100bafb1be9717aa2d092646c8d520cfd97a956cd8ff62db1bb98b2544911cc32add1569c909b9dcac2541e73314889eed30230198301aca1de57619cc3653ecacf6d5ba96ccdb7de29ffa9a5ac47b5455a071d6c8f60e5381e4d2c688613e8e88014630302047c435bb500673065023006de8a2f6ac33f4a147fcc9bef94b24b05106d1117e71e6e200a3dcd6aabeeabb802519d5fc5cce140b1f664d5c880c5023100f188ed6fcf0cc4dbc4157f614f2ef3753716253050644c77027bda1aa620c0be12e1853df6b8597384273000bc8566ae0302047c435bb5006630640230066389b9d88a9c62533b4dd5bfb99853f89b4daedb4a8a934fdf8784b15e97b61925d5f36d705555d9bff8c22b5bae880230443b5877aa0f680c4fd434d1e0544665bb5ce659d0553bc79a95923655d967b2b7efdc883b98c79b6c5ca44c4cfe0de70302047c435bb500683066023100c0f9ef56983da74a6fd5f5a2aa35d7b8fbaace7a912edc8b4000256ade0f72b50f28010f8466ef7c4bfc54c2952025ae023100dfd30f52e91b71dc0b24e11d501924e05b93c350e5b86c5f5ee6c7bdf97f78576e0c282f7e538c9e5726dbdcfb9766d30302047c435bb500673065023100c1fd637149e9968131227c778c79f66e69aa9045bc1e4604ea32d7aeebd540d036adcbcc2a377dd07235bae3b48c6eaf0230454b222215dcdc28b2cb26d33a68660d4653b5c87e3e45a9ac7555d748132d1fa85c940df5c152c71499240d3832a82d0302047c435bb500673065023100a3ce2a1269ff43b21da845542a4eb007169fb299d5889498905dc31bfaaa195ac6fe7b19d7b458eb0f6ef275dfb1b1d502301fd18b655a4c7ee4a8aff3e005152c31557f4e27ea97a8c1624b347efda2057d59725fe399885ed621077d2c71a1e1280302047c435bb500673065023100e46c66d1f3b1910fb516f6d7155bec10d80b001ff8006a47e121c8e5df018a12e8d03ae500ae017641ab981f530e31d2023042cfa664b163af244ff56eac1b70cf505d4138b06dfa307f9fd846150817875a0f439f202d8e915e257af6cfc7fe04ea0302047c435bb500673065023100fd18eca4fddc030ded806e8459208324762a5c021a2a55f2a9c5ab83c7ac09c7d1a1d889ac55433dd148e1a65e62846902304ec56478e3c28e3c204a43933b9d780dffc26877e73607f428b978583e43a99f91a85104235e8444d47cd6c9b7a408440302047c435bb500683066023100cec3d22c2f2699f4d5ba12020549fa3615eb698d40ddcead578a9dcf1fbf12daed557ebb661084cfdb2c40889be9af8a023100e20ea952c88a0da3a52219e38ec108c205fdc434c7bf40937dd3cab9bf840c2614e0797edc8aaab6de21c89e3cf5ba4e0302047c435bb500683066023100ff03c6497fd592e32be026f05306f4a40b26ce0d7ff1fd7c255b3e3c0514942254db9db9e28084f3108901f8caabf20e0231009c16e5c97231e20a8b06972ef9902e06850250c85f71d1026146d82787dfd50e59e95c0b93bcc72f1bdb9b6e53ae8f370302047c435bb500673065023100d6e3947c1c4753358d62273f8d77313abfebc2946b9a564e34820686da4b858e15ac4ddfa0c90d02654bbb25cc9bdb5a023037ae6bc392a87c13d94cdfba8cf0d409d0d9cb0d0e9012630e4b13db0ca43b77664dd710090370586ef9857ee51490720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009e023863faea12db5575bfab6c46a08fdd57dc048ea064ca541bfb13f723f2b2e904a5e84ad6d4191fb992b1976eb46002304563ee519f84244c653688c3d732cb0f1f78de819bda68e499b7c153ea16b98c1b05f6047e67f4ad1048841a970bf6600302047c435bb5006630640230352d49bb68aad20dc6f29b8e3010447e0f0269d8d63c16fd0ec9c020d56da3afc8533341ef912c0529e4ef42a5bebce5023054916b0f4499d29ddd65938bfae6ea121d173f755360ec62b1cc72270efc51eff2f65e589403bf0689a757d4315e53b90302047c435bb500673065023100839761cf3b552fc7caa903b7b96dbc36263e05ac3152ba578cb1e40544bbfa34b357d0cfe26dfda906f096c178663572023015d64fda05d28522961794df5aa13e4e3d0e9609c7595c83ad3e6d31cee65618ebdaa3f3aa7ec35b62444e716b171df90302047c435bb500663064023100df2c082c4e4df9dc7795ac8519ea24ea978aed1266756051081f14ff573d9bbb33ca1f8968aeb756a24f8fd8850fa336022f6608338347fc3461c664ee37d59c3f3ae854f91a9d5edb6c33eaa92e4e0e4021fadc69eaac4182f7654b6c56b516710302047c435bb500673065023003edb23ac954aa279ba43aab6aa0d29b0498174db551a203c02cdcaa1d073eac56f36d73104f9ab9d8a9eb04677652ba023100da65d58e5957ea39f79f2a1aa84a82a148b4bcecfdc7b9b14bd9eafbfae7414ae0af7f5ffecdf3b5f7b3abb877eebd6f0302047c435bb500673065023100a4f608d8358f5af779087d837938db70f14e70f615d17e1beb465d83957c67e5a3ddd26034feac4ebc30ecff427a2c9902302ec617e4636afe257f7986e93de272add6b5018bca827023b3e5a9e070605c95afe078e239fbe0872679ac35aebe3bba0302047c435bb500663064022f5825e070115742876d7d91295606a8a2549aa3ecda7f930b873c5f38ab79ec6075031cec8dff92353bacda1b26678f023100a340e6eae43ef5a31d176aa3bab9401ce6d027221cf125c9d3426df8ee515af98b5defe9f1b2847556f3f56c3f1506200302047c435bb500663064023012f67f9f2e0064bbc3c728f6851a3670b58f4764750b6f9018f80e6b4fb020ecdb6a751651f70aecc464c2216016d10f023003ac33bd9c0f4eb1cdae52ba814a55ba1439982c04ee51d767f074efe8efb492ed4483853077dfc2d1611c4e6b1bd87f0302047c435bb50067306502303343ecccba368768e2183a6463745c9728f8f46e539c0ef186b5eccbb0ac99f9ce3fc2fa972d6056cbcd6bf794fd7244023100e8908623e15133150ccd1eeea7e7358c39578c942e94361cd651d494f74e5ae63e426a6da20bb7f2078c23b924b64c870302047c435bb5006630640230235cb69999a52408563f6f7da2ff08ef69d6c1fa7605394cc4b188ccce90c064d376c130c0f1d00cc4c09f1785141d7f02301dcac6ecadab3b9d63ba06a4967e5f40adbda31d6161ae2ba5dfea2e322f6cb8974576d45fc03e710c9b249853e6990b0302047c435bb500663064023064a56332d6b99a527dbb701bfbd43ec0cd870c23c9d1a33bca6201c074733a871099eb1995b3d457cc3265a2aecc1ec80230213b0606dad86c8e8814e33f7f51bb75da8dabb5c1ef506c07ea0254462c8023a165a4edc85f02399d7ec52515957ce60302047c435bb50066306402301682c0c5fc62ba8fd73a46c57ba136fe1ae58761047b22adf459d60959a6cd568b8b46c5f05d257dfa92ad694dc06f7902300e3aa3ddf8b44be5a035b81f5a48eddf86d3c97d8d7858ccb8ff415de4206534734dd58408928160f75961abe0c8469c0302047c435bb50067306502307d82fab3a655c837edf4fab3a621b676ff05535f7ca1b2ee632da75c8c8f54adf144e8d795762594e7a78655ea4542e4023100a4b6a591410a013f946893b29b3d1904a70a854d651ab53b939152abcca63ac8e92efdc03419355227a5941eb3e550ab0302047c435bb50066306402304425aabbb8aaf946f2ef13e39d5604662ece1d70cbbce0633b4152afbb71ec509ef8092560921357a886d2ec9a0f625a02302dde4e8bc8b3e127cd5fa186c4a891293d2633edf24fb00f86eaac20b4ea17b5705ef58cc3e899e35fa9cd8048beeb360302047c435bb500673065023100c6a12d2a95023faea068830533392d8cc2028f9c0d87585bba25dca5e58021f6429873c52c0a9a38066d7264a76d5df40230567425765f40ec831ef8e20b117419a48a6d49c907553cbb1f291fd594772f2ef43aa56591fbbb6fce2befe81c620cef0302047c435bb5006830660231009c203776ecffc75aacb892ef2048691c385434c8987a9ec4ce24819acc350ed736907be7991724c13ad150477ebf0a79023100f87597ac18a6d447def5e6689d472e4821333b95da8156fe51c4a840f258468cdeb45f9d8c73ed3d60192e1a87d9e83b0302047c435bb50068306602310093dbc80e784bf6b392b4dd66b6cd5fdcc7aca528ea94d1d0826997d211fde07840c9849908f5c46a073069e606531255023100f347c69e91b8caba33f17a9cec2562a49ce6527081a54b4a957fafb955402decad27b12ecfc3973d09f749bea3b94d540302047c435bb50067306502302a37af4cdcbe09ac27271d5974f64d81a077be9988758782f1d16647c5d9150c0d37a8739ddf5d51e50df399f040f58302310082b8fe5d819f3268f7404b17ac473265d394bce65fe86c1560b6e96a54413515dba76268939f67f582d484138d2980bb0302047c435bb50066306402306094ef0d0cc9cd618601da2f6749e482972069a54d5edcc937c9db34038560b1c9b1af8ab97e4031a8abe3de339ae310023020b987292d8fb758d9ef14ecd9be9049e0dc2ddab5b37e08f94edc34252bec3500a5535e121538d512b95417df3bf47f0302047c435bb50067306502306b0cb1518ba03b6b151ca308a6b30dc762c25c67d0f6640a8b12daff24d667d2de7c4d2daec90666e21e4ad00201e2ca023100a1c15408cd9680d6150ebb5c51f58aa4ffa13eeb3a65d8b26b468af93feb258e3b172ce2dc9a75690268358229954b800302047c435bb5006730650230793b469aa130bb564080b4f0e64efa58a112d59149ff50be6e24e5c609d9f01142445d49ab9f2b4e98bddd01288a815b0231009e90199aa1aab30b280e71b7f6904dad135b062ae7f2e0af7afbd7a69b3ba4c720b3abb29ca815de9f62f1bf9a5979ab0302047c435bb500673065023100d3a71e8b7fe734e58b5f233b532fc63416924a7b0f6f5e39b6d77f287b9f745e2bf5454494ec202f1c60b66dec17ab27023068746af41890261a9ac0dc7d00bb7b6d8888607adb75dc27cb6976d8545034d8f44f5cd36a36eee5a8c66478fb6176990302047c435bb500683066023100f8180866663af26d05314f6b65ee9f90a0e9bfd7ac8b16fda168e5d2b9953b7fa98c783db48479ee170cde823aa630560231009908eb521a901e12bf7174ee4a5a953dc6415b203cce78e8407672408178f75017bb59ad5670eb53e6fa4ae40af74f070302047c435bb50066306402305508f2c177d6de27b8dcf37a41bc067213516a983d487534d5da729b45626fa044a0ff7e482caad381503021aee397cb023071c50d828309b8086eda92b73dbee0f1118de3a0b389d69326c8133f8348b1e093f07d6fba35c172c5be317b23ea839f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fb2aa7f3ba3c4117ec1e991b9ae983b2ef698ad540d97e0e0cf32279b0965f7e122b42ab5b360ebbb4358978648a40540230264ad668c52324e580a582e673c2d54d3b5617b21f66312fc0796c2c1e5fbc8f588f976b1bbad581768ddedcbc5a10770302047c435bb500673065023100e7183da4c16be3dd79ab07589c3e836f722308d9599be1699f48570bfc6ac8d00f9bf111e5a182b16cf24eadcfa7e54b02304432038d3ae18f522c250aeb0e9abffd191a0e44ffbca078d2bbac0071c274b494a2f1b0fbc660bd1ce274516317f0120302047c435bb500673065023100f2e01da20934fa0c5f40577e26399a6beb85a624cda135f87823a606ad447b7153f2413179009e5cd6998fce796e657a0230738ea5011e28183345a2194974bf3bbe49acd6c26c7028254aa4485201e8f862b3b9edf9aaba44d7ebc4a6a62c94c8e90302047c435bb5006730650230281832a62575f68d8a2c59351e454e3ee65bbbe2e9cf693564c04c096a49fc371ab4aa433b41e65c241cae930751314c023100d3206ba0c6aba47a735f9485ec6a7d15dac8c4f04a31ba3f03469855843d3437b4a4f01061afe07da3bedee079ba65ab0302047c435bb500673065023100fb7ef9a99ca61204c5e0847acbb0ab6c10391dbce059df0e9f6f388de3f2efcedb5e48cd740edd95615457bc0a724aa302302185dd13948077493aa15eda9703c1a87cb2802b83c0fab09a08dc10caa8e77e9165af6119aeff0c29f94b07dc0b916c0302047c435bb500663064023044c001357f45f4fd9dc624266e68e95bbe881a3a1dbe762a4a3d6350d095b5fa4f22083a9d8e3a3405dece8483a2085802304bf78add3036ae925b33dd2d2dedac6b93b3efd6b284aa6b702d79b367513a4042f9ed82f2b5cbb34853ed68e2dab1000302047c435bb5006630640230585c97c706b1df63c777304655bca412f4492846e8c038b29c247683a5d069e367364d3f3d6c24d3dc360f69322ad129023047380659e2923e353d36990d22d6d8f72d02219830255aeb6d4f69022f6c3c1b118b3877670c570910e441e61e5a2f4f0302047c435bb500673065023100a4edda25f8479ffc02f4f98f786f18a0fca05d389935ec89ee2316a7426afb5d1738cd65af27bd6cfba1058dddd8feb002304c2b12e184884b6f9664f42eae5c52e1fcc9d89f06601e25b0f22b8d3c563076c0dbd7aae11733f959c24ebc15cad54b0302047c435bb500673065023036886c6f2989ff1b2e1a88d1fd032b804e47e4e36eacbf01f808f72619a9b59186b2d9786151bb526d39917f65940db90231008d6a27a02915379cc4e9bee464c72ae95fdc8561f3ac77e9417008900a46d0b654262c632d7d7fc2d920687313b865670302047c435bb50067306502300c359c0f99bddc93356bac32edc8368b3691ae4ee09a959a77388b366aacc6b62dd7b34f6892adc318ce8c9355069527023100f2b582b2d4956caf2156e9553b3d2529b9287888433e71a0b2873e0e1163b4dc918c815a7e05503214a82a41382581920302047c435bb500663064023028dc483d75511fb3d1194b451a6abefb09e7c1110a08a881d17d8f301551f545a540cd0b98d1d7ff8f81283210e866b80230766e6f51eeca96b2f35d00666f6c1475ace774a4caef816968de7e20e384de508819383d3a801aae18a089a11d59ad650302047c435bb50066306402306ffb8acb2e88870eca370d2cfeb38794d0e015adee3af4535a4de668ed32b38a44ee8e745a3e5d9b51f8e113bc14c97f02304657d8c2c19d0a97fc0795008afe4f32115094f1c60363e98a343851e8316c320a3ad8fe8802b1483b5f0fdbecf6b2fe0302047c435bb5006830660231008a999a9c79556357d3fe824fbd3e5adeff5b28d1b110bd79677a460effc5f6c769a4059221c879d34cecc7cd7524f6b0023100fec653d9b07a5a8ac709bb3e1a65654e5741ae080e5f7e7973c865f8dd64bac97f304086f794bf4506f7ef44563df8250302047c435bb5006830660231008c50feae8bcdc5c099f4b89469a6148c37a2dd44d4f4534c2dfee178b1cb7e42631a3931eb1ec584b02a004ec07a948c023100b54d1734ae305068b2de23e5d918082f61c4b0d8ffb6d638e267de0730325e9958249e8ba9a6b61bf70589b0b19f17080302047c435bb500673065023054f6abb370fb84e209790567b2c2b4c53e01fae1581c1ae73e9bc436ceaea05d8f58eb9a07c0da27d129d128e81dfa0a023100997073ffcf72f4b295f620325622e8412e4de49643fa96d7e089781c25e52945a1aa4a27701c38920ca5391ddd4ba6200302047c435bb500673065023100c89e4d8ed3aa0b589c929105f438e640aec1053ee43d1ec082c63c031780b955106f2094af091c91659635472ac34e8f02301bb2e655a68ab38b4001de5fadc2022672aca30b72b1e4667803d348c16dcc524a398d891a4e1b55479f5f76f7b0a3cb0302047c435bb500663064023063a98ea40256237d81a8a9c4a0c73941331ccc0e2e9806a896fbaa1eaba28a0017a6e725389cb6df6ddd6f8da80e1fb002307d7163623d0295f342c8129e7fa9ac724712f671fdfa196c01ababc39bbf69699754b0ad85762868880ce7683258a7d20302047c435bb50066306402303cb2447e22b61e61a4b1f310210e8bae40a49b649537cf9aeb6b689dca1541d791fb3c923be40b1f4db6acdb3f0f1ad402304f46bc3fc1bfb52b39d85397b7074c36abfccfad47476a4bffc9e9c1bb319c5bb3d36c00abe8754157dd200618c4405e0302047c435bb50066306402303e5e94975abc4a1dba7a272456f16a9937616c422ddc94cb199e9a549914e8e24925c2e493df86bf75566add6dbecdbc023030c81ad0d65d6770c6ad3c040497ffd64dfa53cb11b8fc4ead9a784426a80f7b2010659a3db038623867cd7e4f63cf720302047c435bb500673065023100e3d2d2e20bb3bb8326824a9a72dac42f90d70c3784499f2b001eb4cf77f10d3d3423fb83bc96fa035d13a8ac02f44ede0230632f28b121dca57f6ed2176e85c51daaa596588335bdab4a0d161d68c03bb084233a89bc9529c9900003839794acae200302047c435bb500683066023100817aaef2ee579647b8ebb950524668f0c930687d97418785e5bc606c15ce181760fa96ae1e8b7347c0497fb882e5ba4f023100aa66d8bcdea9cfb48ad1864aa650a2265ae8603adf7676e666bd0a09e585873715df1807dfa46138a2284490f4127a0d0302047c435bb500673065023100999a2bd87893e9ad188b5768140e90d159477431e38c6a6ad81ca7233b38a7d2428f68d4babfd1978a846cd33ef967cc023067c500eee1d683903fb7c21e588cc9d332a9df114173e1999d2e7e78201d03b2963a19f409abfde82df5eada6520042f0302047c435bb500683066023100a65e13dece6d7ba8c648022dba6a563b1d538eced58ac0136e37b60dcc02779c7909ca5813e1d56956eebe41fdb52fb6023100ecf6c05141f105a31fcc645fefa21aa7b687aad5550f06bc881cddf1fb52473062927d0bd24bd77501fabb2f21bdc8ef0302047c435bb500673065023100cb5ef8c7fc671aa5b565fe794c4c9208b674118474ac8420354b0f3aeefb5cb8b8d1cbfd85eb93b7a900883fecad81f602304a3ee679de7985fe44f47e23fcb9300d0b0a7ad95a23c2f9ac84f0d85410eb8b634001aa92a92367b90d354f6b503cf10302047c435bb50067306502302f69d8b0603029c8804f8c3b23a2a84bd322713885d8dda4ac5cd981fcaa69fe1f189fe99324c834b1d73be657716edc023100fe885823d2cd3ba240d65af1307d32fffb126d2d907b45b6b9c6555927666ab016e1cffa8978d000e8cbf70f9d83d51f0302047c435bb5006730650230090361d0729b1f11e029376a0dd6fb3c5a3f7ce8dad314109efc31599fd0e723b91df117f6c60b22aef504f0b2f8f2b1023100b13c87fcfd1d03619d2a1995cff5c2e6bf762ecf5dc871fbff6a08bd777ae8013420aef2c94a007ffd95cc780ff14fc50302047c435bb50067306502303f408f487587f782447e1ba13bb3d0e5c886d3e7d3e918d54e87de9232a7e98ab3a795d350a493759fe5f30a9fd606f1023100cd3b6b22a8d50b2fe863cefa0f2dbf28e38bfc9413bc23e1bf5bd5243e04565a53aac8f40afda6ece0443f1c71cfbdbe0302047c435bb50067306502306be884e5c85234971bfadf6ee32148c784ea657d2a7cf9beddcda60afa6df30f3c7a68d227757d3f90f5d26fce61f8b002310099d6ec93d9eddf46e3efe391bf4af13a5d16812bc8e53f685974aa7070b460e8e13b982e87e359262e5f1d57c2bf54d40302047c435bb50067306502306624baa17e723faadb82f6505cd1f7e924ab69d448eab9a02fc6786c6078fea2c751d0d530ca58746e4626ccd1c1ad5f023100b59399b2736e8724bb967e6647d989c9205effc3fc89adff4ecbfba355d5245b327fb68e844b4b1aa6ed9b1dd24acd020302047c435bb5006730650230671040671ea40d937e6ac6c8312633305f8ac58c5b2d7cebeac6136c9551263bfff45b6ff00f834c26ea8653975e65ed023100b0c23753942025bb043ee673084cb01045ec907f35d0ac8f3c228d38d099464c7a50577f7df475260726ce4926e9125f0302047c435bb500683066023100c7a36765cf82f95b3dd8bfb41c77dd75a1592ec47ca57e711d3250a31d0cf0bb8a0ba6e02527b0290b88d000fa089598023100f92ed5b30307d618ad3a8b134d1550160dac3a66d8d5a0de333b77c1fe94b99469d657140fe70206845100942571985f0302047c435bb50067306502310091b695ed023a9acdda94cb672d706af2cc74cd0841bd2cf5aabc63726d13efdbed12c90ce0eb5acd76e96311c2e2eb6e02306dad0b1fa0a78ae1cef8a9d43762d09d7328899233fe6d4590ed85516311624023fb17ff78f2bd67d5c8fa04cf089d6d0302047c435bb500673065023100d7af85d6db445c7b100079cb07f2ec191cf03794f3ce2b69778e699ac66a9a7e8cfa49f51ea245c2ae6436bb79a6402002302b1f0f51ae491050664f7c1d2d05802f40744e8244d8226cabbd56dffd5dce3f3a3bee02aa2ac8b93078f4a07dda22f80302047c435bb50066306402300d261556da855ae60b6d0192bbf7631f7d319a3fcf8a7ecfeae28aed99ad4513a66b8f2140df2e57ee65a5e8ac268bb50230737c69b64f9143b376c3fb78618b10f80cc82b674ca94ffb85843b6ddabaff160b9a273f0abeee9345a6c628ec83d84b0302047c435bb500673065023100faf96d8c7e7e8adfdca686fb884faa9b02390749fc48775b9603ddd23be12bb40b91242f0fa475610455c8b2026fc894023019250a5f6abacf85bf49eaa07df40d8218ea7d35877bf9c28d5570608ecdf5915c0a9307a55e7f02ecd28aedd1b1d6670302047c435bb5006730650230451f8daed45ad430498faa0aed7fb672f477201f179ed1f6c2c32eeb4d1a9b54ddb3cb3e2c11c471401b82e942d27b6e023100ac1246a98f823cf1f36bd4e3470861c120698b5d25574a929a69d3aa74f6db9495ba45507d21bbfd247f6284e74de1ff0302047c435bb500673065023100b872c80b3b3ec5e3835e7b402ec8e2f4d1193eacb1516f006c4dafeca3d540883eccf608ded7f1e8d53b3a5e43565ac40230237f6f46e375b494dcb1415bad8ec646d8d35b2a6efe2059eb22bb0a8ef4addaaf1d54f7e449bd022fb47e508fd0ccad0302047c435bb50066306402300a251d161d49fbece27b2b58575b66598be1f170d3e616461b877decfc2c2484c6497155e9d55217b3d6c7766c5375d402305d5e0f23e182c7bc8942828ca85aa5f0f6924d3ff0e028ea16b10068637bc6bdf9cb040994dce170b61ae81ffe3bdbb10302047c435bb50066306402300b470348c274a4464d7fe20853a3c391bb84e2406a9f7d092d6cab8500e53b352fb77bed196a28ca20fa3caf1d81ef6a02306b6bf2c48aaf44f71e4449516b059ea6a70278357da64638f53c54a31e687ad88c0cd8c77cddd352581f1bf9eebd2ca10302047c435bb50066306402303aae4c0bc4f01232ea1ef5cb37365573498cea27bd74d013757d1b0e6d40bf4cd9570c7438efd92ab4cfb9e4e048fdff023048d6f7dbc35164c2ffe36dfac0e28ab5972e900b8d395ab44b7e35febde277d917c5662da0c64b4506848af89c473c6d0302047c435bb50067306502307339fa2ded171b4b76d73691d13423ecadc3dc1b7471928c920b31d05352107c2a83c511b04ac348f83bf585a157aa3d02310088efbd5e751ece400cb28bb524bf65416d621c0e99f5c9efcbe1cae49547a2047772a674183fd65b0664282c90d4c73d0302047c435bb500683066023100d9b2235be7ef5830d8dedcda010cc365696d8accf5f065a0f53c509f8a8d443f939a890ec6bd25dcca5875d301ee6263023100de542757742648d2f01733162c1866306d68314b9a1e93a75b76713e030fed125019609165458e77948f28ada6afa4820302047c435bb500683066023100996adc1d5bff13430d65ec77f5f25a4fbf72c3b1a7566843c294b3bc0bae0e2ab8c46b850e00ecbf1ab1aa3c8532e106023100ea2a649458252c208cfccc361a24de52ec3be832c30db1b97dfa80533ec8c8672775d408dcad802b603a2f780035171b0302047c435bb50066306402303958b0b6e0d60feff11c49e2f9cdb11fd7234d2f60039870a508306fe3e2bc71a1a487bd78b19553c481fe4abb7ceb0902303abc7b30eaf2c5e45934e82e97796ef8971f534d3829231d6df9c46f9143ad3c3404ec813942de405211cdf34b77136d0302047c435bb50066306402302eb6d258e49aad83e985c13a512c9dfcfbd4938a84aa00b1aedde91ca10b51e857cd2763420bde5ed85aaafffbda6670023027a69685162016bc9fed676d4aadf75490fd5226762003b1c688d0172b66ce10e1be5bfac5a71462c4e105c8e4d7484a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230352ccf81bd82032f8f14ad72d1f5c52ec07761f8fa3ca82027e6a22975a2ec52f7efb17e925e1903f59e331a9a841b69023028f83fd96e14d3e823ba9f21f4a7ce3328b19232411aef1a8459e3a87a0e1b04f527cf92c0577b39e9749ac15587da470302047c435bb50067306502306322636f5d0a974370ffb2668c1198b2e2735d377b197ef7ad3a640f8d06ff7cb4c1caaf95ba74df3264f66566a2f1ef023100aa713469c901e57adf0b54d6d529b66279590db77593e04e2d9c0f9ffdd8daa7f165140865c3e8d3f1923c733d07df620302047c435bb5006630640230404a9d7a06b7c38c783b0ed37a20a412ceb6cd6b3e9a1d1efc91515deca1680d13b7fa5f5667e162fd8b31911bf94fe702304f30842cc5d7488ac3ec3829321cd2761b84ad056c80e1c97a6ec2be432e8a2c2ca2b51af617022689bfdbaad73e177a0302047c435bb50067306502304d50feedc76f1843a460fae16a68a377798d1c345c729ae6d454ca8cecb5d2e20170e74ab2232406e31c1b46fae3614c023100afd9945cf4d25ffea1a451b2e58f4a0d6134ac989ca83c695d81652e9a4b66d4f9de05a0a4ba4c512aa458bd27c5ac560302047c435bb50066306402300aefe8148bca03a744e2cd4ecaa10fcbef8a91fb59ac06ecf3840e57f9a63460feeedddb942a4a836b42e047c08eddc402305c23094ffd61edce60b769790b2fa4095d521cc651ac480cb3961b2ba4c25b4967389999a81374db74512e00b32e485b0302047c435bb500683066023100f9d144890a28e81730c31945fe5c6a1e2d4cf58e7ea25e67e6d5c2d3798713d7946c19b1852bb09b32ecac6da78b9ac2023100d89e0af652a701ef13da3e7fa1e30f2d58ba1dea187baa8225d8aec1133311dcea6b2de06a18965a85270e353175f2d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f9ab94f00fdda9bd807b4013f097e258e05f357183a85d83010411f33ba4756904a5dbf43b47ce1086c22f6d6c8ba0ca023100873734ffb72f4061c7250a8f31749660ced8b64d93d4fe32c1dc29a8e116d85f80a52f9f0ee518a8fc85950697a9aa0c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023025b37906ca26b493e4adcc396286ddb35e5d2deb683bdd08235f61278784682ba63890fefd992b978aa484035725f1d102301ee6656993ee2bc32d4559ebc3ff615862cea66b088408daa11fa07bdf14f66b6cb974cf00f079a60eefb4c4960e89d20302047c435bb500663064023064785a27fcd140c4988667f40bdf27ccb0ec6d00ab6f3159ee8b6949c7a7b83d9b124b281b75691fb062a78a2cdf191e023065102163ea0b26ea0195983ee85de8ae3d998f1d2eaef7afb0fdcdb065c165c4a090a5b699e6e4a16089f2718673a3c70302047c435bb5006730650231009b328a6170144aa8f51eadd0f653132b6ac913f4e741b95bb3d871a8dff006cc0b96f8d07338d764c1b5cf540fb1438102300fb9b31be2d71d068a64d3603e676ac94142bc469d3a9e37142aeec4665ca840bab5a8de49f9f421e5cdc435f2f7aeba0302047c435bb5006630640230110bc8e08a8ec8a2ed161c55c3499301b1e547c9ccd25701e4f68952e7fc2d5ba6ec9ef5c7a2ca13e63813bf6a39a47902300f780139a660884b7b209e5ac1d12c20c3678594515746c01346acaf2d2987da055d6355b8b02570378d7ed19baf27b90302047c435bb500683066023100b40d6884e4d771f8faff75ac897a35dabb4f57b04c4dbede43ddadc75c8bd2f599d62557c9303b68c62387792f3ef23a023100f73589ef183bf1bf56069f6ae62299456090c0e57bd19d8230edab3c2d565d0c5ba1139cfdf42b22a1b3a1ee965feed50302047c435bb5006830660231009ec68a7a61d81236bf0a4f20a773cddb9c432cfb5f5064767b1187a56df13209c68807116e26b773ed6cd25ff53cf82e023100a5330157fc0077425db37bda6cca68e9e55425f42f7603f13ea2f3369287dac85fb823796e0b7ad62c09f140510cd5bf0302047c435bb500683066023100b2dd025660d6b2aa530b5458ba0030f6b90f181339c08a2c9c3a3e07a4c92ed9d8a6601f0f9d459108f1b679402bc824023100c867feebf066b3972ba69402fa2491814f3005e6678ae36b9c4be45a8e3d56f202c7bb1babda88aa55458ce1760fa1e10302047c435bb5006630640230518eb9d1d1766988f8ba5057001341a8e83a89fe495e44667e8aa2fa40690a62d7eca58441759a73f3145c56c3e63f8d0230766826bf46189f9595babdc54e6f797eafcd96af59a63cfce9b158371db70a1e302078f13ff838439dd5581820b72d400302047c435bb500673065023010926db157bdfe9722785ff53a66a34a143b0ac24cca366aebb1012bbb0fc8a6400f7e9068985935054b6c8c05635682023100bf58d9e356eef5f332bedf0bb7fac09a0e8db02e0df7b454e598e93a98d7ce156f1c2aa765d9ea2c6e7976331c59cf140302047c435bb500683066023100e055223928468dd42a6d1d5af98c3996c8e624cbb5fb4bd556d96ebc20a2bc7a03ccd469550919893b3c97ad319563a8023100c2b227ecffe500077a158750a32ef9bfbf7c2420ce16b4cf30a99707203afa9769998e897fdd901d9edf8fb2580ea1e70302047c435bb50066306402300825d40220188fab1cb86ea46be93e628ec7fdeb686a52f3680e7870beba505934653c15fb62e6966627f54097689fff023008ad0d8ca8d3d2639f1055153af54b6fb08894e13d12d30a6c69adbb3f6f5837d71c832372fea01e2874d9b4a6efe5520302047c435bb50066306402305ed982e65a3b1bbb233ffd0cedb2e2fc80b7147fc2fd2e751a811baae2ce8a7b5c80585732cf0385151324fb78b103e40230730f09af1226e100bf169143a27c7c64d78184ac0d6e4ec23f027c49ec69ca7c862e7b6c9700e4999647a4766ab9e7d00302047c435bb500673065023100a543ba154fae3a7484a1755177e9a9747df20b29b5e52987202a18f11534164487da96bed36321ce619b31379f6978840230745f8b98bd75afcf881d342e9a015747786593db35ae73bd5edacf5cd8f1b4424afafadd787a7a7d1488c24950b000c60302047c435bb50068306602310087cc606aac2bd6eb7d95b069c52b657b98f0278a22d74b34f5ef8998703c4649189fc3ae82fb2e86a3992ddc600241ca023100fe9fda2b0e11edfa6eb5b288a792ca9da2d9a93bbe5c40e2e224a3b08ae6ca11f9f34c1d611010031765185b1416bb460302047c435bb500683066023100bcaf3abb3dbe1fa6f24f425ccb2b13a78ab00d6c1dde46ec41f1c11540c3fa91f9df601a6ac0e2d4c8314bb924c35c04023100cd4929204275d7b0b68ec781a41fda4dbd43cc5f22925955dbcee31ab632c1bbb2115f57dadd952f52361038b892c4370302047c435bb50067306502304d0830dc0b8446763b46033263b0394475abe182649d004ee17714be24db7f004a5bd5f16a119279d392e1af6d9588c60231009f35d92183f2f0fa638a02b3a409a14f3b678a502fde98785266da1ed8b3c06f6acf5665600ea45bdd11e12cacceb42b0302047c435bb500673065023100e210c90d95200a3bdfa4497f5e85198419193099cab2563d593d06311ab66af3939bc8b3324d58802e429574d75296bb02305cbde19f7711b2719316db55b10c385d7cab26a1b1ae29be788b5b2945f88d5d434ee0e3ee30af00ccf79426caaba9720302047c435bb5006630640230613ed84c9e049046c500abb9b7d008415b3a169f855b4589d7c2441f338c02815d430ca042676d01f4ab3cf2116ffbdf02302f87bc692ffdd36cbbf4a2a0941772d6e94101b4e09a679a0a11ffca95e366128761b98499dbf87b2db391a3c17b90800302047c435bb50066306402304043ac3c8a315e4d62fbab194c8009cde22c2f1bce9be5c8a55a7547bf541790a8367f52668153c1162ef6f11406814202301911d5a56170c23e638292fd9ad31590307844643231b6cf34be657b1dff521a57fd9412555a21ad1720ea4d29f7d92b0302047c435bb50067306502304ed5f3c9404d43ac95e46bb0852f01c5dc59cbb12b1cef1c065e67ae43b2f72dd653d425f432a9a58fe7cb111278b1950231008ccd2673a4c877f6be32d58bb6d63bbcea7929c32e28e95e7bf6699f54a3bc11534b39c79b509455752c50ac881692990302047c435bb500673065023100a099ccf365f6bb5a4ca19457f0f2bb1b7597cf4e67984fef30322ba7b16251f0d83415b91accce197e107ee7f4e81b1a0230491e4d896c025357c6b1345ba69e66ccb94d32f88388d4821f8b244fb25a4594477298e74a3183361f713dd7ae2545510302047c435bb50066306402301593b6f25c6c91ba9ec49a3234f1b359376823b2b8505c15dcc3e98e59ff6b1f02799a7231a12f663af5c9af590b811e02302360b56bc49b91d43a4685893c865e0f2ac3280cdc2716e2b08078716e4c0db53d0fcbc38e822b1d4c90aa08bd7dd6530302047c435bb50067306502306b828390ceb9f79ec16919420d578bdfc43accaf37853eed262335464a61dc51ec23a541fe518cc1abded71935167cf50231008ebf41aaa848766d328c003450371d781929abe08e13b21eaa9fc9fef1581e1f4d150cf7f4aec3d1711e8f48334eb6ff0302047c435bb500673065023100a1225fe28d341a4fd21abe81e1cf5262b198ccf944527875ec70fa7489a42e79a4d2a81f47734b78d753712cc95df64c023012441c738ee52331febbf2ca548b930f2fe605b3232c2d2a3efa16cc4b7a418c2b898dd0767478be2ab392f1df174bca0302047c435bb50066306402306f5ec9fc696ea0a433a17b26c53d5b583f0afdd7a664d9da9ed115ae61aa3e18a4f7077a373a9ba6bb0708d4fdc2ef460230177de745b943f59dba02605a6009d2c5a5a72a0605a7ddf6cf9631e65dfebb1dbd3a49196d2300be53f72413c30f8c470302047c435bb500683066023100d1a370ccf0ba4c39574859d8b6f270b23700bfca84fe9a37cbfd1eb02a399e2ebcd7a525d628565963d8305518b1d3ea023100dc03c507b38989d7fb23b73e5a61ec5942945c5eab8491281b617ab78f0b6b14d2c9102ee42c90d7dcb0d1f8a6d80c490302047c435bb500673065023009642e2e629714ed62f70be84f162c3add06a1c071e17cade6c389c3b5706f2747bde64f0efc9c100f347f84911c4fbc023100b40ca086df44679357b01bc21153053c90040e4885f4e5835a4a1635298babcf1e3cfefa8d4d4068678330291c64d43f0302047c435bb500673065023100fa36064c892c3076dc0e66833c03a9d28c83109e6d540929c06dba141e47f49b97f19af1870048161b57b915102af73d02306515c980ead8a98e7f261fa9c8aa7fe58ac31812b76b9dc0e05317494323bdd2a1fe238ab32d5bf5f0de299496e22bc50302047c435bb50066306402303cda024d73a00e941d5070732e6acb78a80e70e741ab398503be98a56825ad76d0ba74d09b923d3a78a7f2864ca1f9ee02303120820ea99f1330c5d868bf16844fe30099162a845ae8a39a8d0da577bb3a3994edc19732861c0d684493f7e3bade8d0302047c435bb500683066023100aaeffdbc686627546047432dc2f5f6eb8b83649c1450e49db31deecb534c68148612d3242184cf1ab7429a7491d66efa023100b614f4259f5a180b5ae3d656fc68c6cfab72de9d2ed9fd6cf63130f7ef1c2c8b6696d3d2eaff7b2bff6fd3e28f88d4870302047c435bb500683066023100acf4e0152b844a828c0c1e086e85d4a07ab09bf96aede60046aeb73cfef2b70b41297a0b9331cbcc17d6f1ab1e793f9c023100b3994ddad295e1e9376eed6cdde6e5be65b7ac77370f52b5ede7f8c1b62e941f6f2c77f27d23e7579a0ce64d0fb213aa0302047c435bb50067306502310085b56ae109695290350907dd1de1811a45bb79714cdbfe0d5270e1c1f0353ac34b58b613bb40bc2b380a993b843da9340230620a4b365e2dcec71bbcf83eb7591a030603874a45285a5af0eae64e1c172d2a0ac6d24886e11de1d333f748924298bb0302047c435bb500663064023023fa8ce6a2297e56c59ddc0b3a9e13c25e65513eddba1d6db0cd2d1e589351cd6aac2acc438b7a6055e9d4544d853bbd02303e0fb15f25a9b4e55e8a2681e462627e6e34e955d371d573ceaa687d7a7d3ae964e0150ae06e57692e748e904d277ccc0302047c435bb500673065023100cb4e7a3d8c723cf9b694ed1b876e9d3931c7365e1f94c497513ed9240dd045424f15d72549cf5eda235408ece663f512023028fde33e7a1182d7a67c3017ba74c6755d4d60a4ed1139158015dc7fc19feaca8e41042a123f1ab76faf4103032143b00302047c435bb5006830660231009f871e4f6717be26b06ef6021e6d64cdc2fd0ac8f320468c67b420b1bcd894cc41eacaa6f9426596e336e8ffe50f193d023100e40b41fc82e87370ee40df4536b1efe06c26bfc8a632ea057be912aaf6eb3040aa5c84e193ff4ae63efdef6638d6b0450302047c435bb500673065023100d55c9882405bac906f8f232a0a47ae1381e6b5181a8bc74c9d1fb0dcc9da22f94634a5172172dfa02a462dc63e199e3b023058d37640c15e72e3d3fe4406d1f3c86a6cd80985887bebe6664988bc22affe07b1f30a723aa4c41704f6dcb0e36a4d6f0302047c435bb500663064023003232749a8c26d30687109a88efea9bac4e637e7392ab1fd8275a5957d99246c95202c09fe7c507512d4b56eb6cf937b02303a56c3fc8a7c72462cd6c0637799becd1f90aefe9b1ff53bb1b44ed0d019cf8ef35752a6f4be962727c0e9f349fecb550302047c435bb500683066023100994b5e72b2eaa0471a07ea6ebd7d3bfc2242fe62d061c228b47386406b0b22c78ac3e503ec5efb11c1e6ca9e778a58d3023100a4ec28967d877ee16bb21e9b7ecc6d4322d87cc7a8ea8ede32b863b3251287e80f50faf218455703c325abcff92ffa290302047c435bb50067306502303dfb9d8212e999a3533b9d149c2d995f1a73ab8df50e88385cd715f1fcf1fab5dd18ef4d7916993d1cc8ff3f3f419e07023100f1e015b75cb7d3f41eae013b8c42ce38fa99264ea62eae726b983abf4f7f35f9ef3c39ea3a13b31b04951d1656bb15de0302047c435bb500683066023100c99a71a1144dea7131e4b458cae2e29bece205b5a056252c10b73a2806f3ecdb2ad63099517d62e2220bf588142a826a023100fdbbf4fa9508b11c8873cdfb730bf4655077045f0c81d109db5dd5554a17519d8e32d9f9f7003c0998ce93857de890d40302047c435bb500683066023100b5ef523d5e3fd9e7498a214ed82ecf643745196d68a647ba58527791685b32e0fc0e0c337e4f28015265ac2325b8bed9023100b7d270ac4c8f7e872ce9f4d13e6f796747f15e54c3e13073e9def35c3fda4f6c04ac5554527cc7a7665553d17a3be1980302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300b364d6dbd37a12e08b7e7c99eb36481c3b7071a53a9c47c1b0509729e4168732754b6070f90b278f1e1b7d671538c6d023010ba9628b2b17916708e5b6bb264a81692d392890a8fadd23a6601b7d425d4ae851324b249e719824012ca902ac903720302047c435bb500663064023029e974fb6d591424a56972db14862e93dde74ee05f7dcc56b33a6a089b247bdcd4841eda046c8405b471de6ad6bfe72c023079aba2e9abfa621c8a3b24e0cd7e97d5020e496e35657333dfead9607d11d58fc01c3077acb39e57f429fb3b7f8afcef0302047c435bb5006830660231008bf17fa1e3da6d668e13457ca14e479a1c9be95842f438be3a7177f3a334bdcbdec50e8ce2338575b44d5c923096c3250231009e20a7d7b5714bcfadd3291c9c01970595eef142ea007883f97113dfe56f2019ebe09ba52e08d89164115dbaa69593200302047c435bb5006830660231008cf9e860471fa8f5e6a21f89805112750ea15f67b9101cc2431643ef79f83c55a9d389d067899e6a5455c32071b89b75023100b102f9a19996ab7d3f504cbca3e8e4c882e7e95d0670c231eafeac15fd5d93b1808c2fba8261393952ed23313f008b350302047c435bb500673065023025b9f3fdea8a729ddeb45c8cecd3c0dc8a3d5b64534f4bb67b2afb7cdd1a522c333cc98bad4ec9fa4c9df59435d1972e0231009fa35ce21c36264dfc42d97d219e28762f4f0a0ae31b8796b3728bf92b84ae38dff720b6b220c4f2e0dbb50a476560720302047c435bb50067306502305e3a483afb2d3c12ee239b903d180fbb33e1c93480007e7cbee76c45d551774b4e2c0529547d4c6ab7cc3bd783c029a8023100c3abf7d8a07a175644468644a600254756bf1eb4a3d8bedecd93086d2c63690d756cede8c05baada99154b4b5a02fbbb0302047c435bb500673065023078b4f12049557383c59bfa4d57446c4e8e18c7a52fe8f7c40e7fc459108c0159d47eaedd16c2d22538b165ff865f67fe02310090428f7ea2813405732f744d9581148715317939b349c0dd69f6c8305cab1051ca290bb95a03ba1ebefe696e7df122d80302047c435bb500663064023046e981a1baed71ca4ff7a1e0ebbbb06a068e55f52457ebf7919467a6ac832c728ad1e390fb79d9c80e19cfe903777ed902306e6b2692cc6b48d7ae4f724d8ef932612974df5d327c3b3ab3b56ea4668934eb00dc5882682598e61db4c19f40ff17a50302047c435bb50067306502300156edf6a0d6a76df1143413ed7a1ecb5700f9b82865fe56bf0586d35718a6b32f2cb472b1ebd5d3fdd5924d9abba670023100b61c8ea1d6e708e6919a75dac3a3579dd0c360fe6dc3aa999dc8205bd50ec967eed9b13ccfc1eefcb6b63bee4445cfc80302047c435bb500673065023100fed8f74076f803a02c29e386c7aa18b356eafe2ad8e27f8ffd5d86c7edf5630d51efc6a0f037cac96fd7b145bce2fc0502301d857a3579518b484f3c74b50900c0c562d3cc90ef99e8786a81f0d06f4712386c6d2bde53cea04209612363966bef660302047c435bb500673065023100e1466e36cda8e1edeae14d50c29056fcf8f0fac530b56b6afc0188be48c64dde444ba09a284ba2b46e1fd53e20267c1202303c4288514be64619d46d26d3473499a3a0c490925a49d0c53da6947f586ed21d5e7fa36ef37ce74f3db1529611ba77a30302047c435bb5006630640231009203f3ee6ab381b35464772879cf8ff123672d1f378d7e73473818a79c7a0717c7e46a7f67a4abf06280ea46f70c09ef022f6f350e403652002f665cccd7faabdfab5a66dae176cd1acb962fc542f90a36fb9eea46d02d278ff581a94e66d307b10302047c435bb500683066023100d02e3f1f5f39e034510f6dc82db9d28cc21c6bf086274edb1d796da9ce6ebdc633a04133d56b3edd0edca3be2e061351023100ecf0e71f64e93e97bde1dcdb40154b75a2faa98762d2c84d2f81dc5133e0053bd5bdcd59da7cc2b92b758b728e78b7e60302047c435bb500673065023004fde1de05a03261f8ea8299fb4bfde0a5514783a79b9c292de0aac27a0108f0f744a1bb5132b6d8b7d08b93db4df820023100ce9e5d281fe545ad3b5bc4b6c351a4ffd4a91c009215176eb140fee6911a1ac5dd6abbc30acda384cfc1289ea98af0ec0302047c435bb50067306502306b2b4c9bc7019fba79d4cc2784ed6ac273491cfdf9eaf47a78d40bc11cf807f3e0366c7e4b455a34ab8e9ef92d1a6426023100bcb8b7f637364d9f4f0749fb9feac7e89a19438a17a1bd9589fdcb132ce0bdd76a413129ac261742d54ea2c1260262e90302047c435bb5006730650230253750b41b50321131a7b194dd4918dd9ac1aed7bef82b96e1cb5dc564fa7b07b00aed12de8024d3d70e9e656c8128ee023100ecd0d9da7ebf754222677e8817a9f15bdd4bc128b14c6abfff02450e218821975a04df2055c590a8ed5f26afa753d1140302047c435bb50067306502300dbf64d8d01435e50cfc6869d852843c66e01ad08412423bfb376e71ee29518647f681e755e94d1f3bc18abc0102782c023100cdf86e3d52cf2043bb647dc7644cb95c47ad388a7b15f8bd09ea78e4dec1b249413142c0d7f9cf96e520fda430f6a89f0302047c435bb50067306502304baa6df7ce5353b975678d2f9d0887a34963abefd1053300ee925a4d1524311e45fa2048969b96b4aeb1f39f310eba41023100fd2c7879292169409cb1db36b1381496e15b8c1fbfabf279acc230e974180222cd6da35adc821a1699d214c86cc3e7720302047c435bb50067306502302ef8d53a67f48700effaf048f6c8a26286e39726e37c8393f57732725094314e3dcb0db9b44e6011c3d5fa8f25fea79b023100a83d713620a89500ada29369e7c62b5279a91ce052964a3704a28e5115e03747204d1059a4cd48241d18c11f4381bfe90302047c435bb500683066023100fd8ceed1cd2f41670973215841bdc884b4535ae4f00d9f87b2c1b98df71f8390e6a70a51cfa6931246e7145107fb8c330231009462c8300f5e8b7da2a4d663c518f8bb9a17455213b508e9f30811c83ac1c1d7847fee5a21c725ad0702d8e66bf7b7bd0302047c435bb50067306502305930705353cd8d2ef6b4ed8b63b52ba26218fd57421e5b96f89b82893ce5ad525066bc9f2106f17c4d435b0a71b28018023100fa5e860076c2d14b7406cdf0094946318afed1c99773f1f58403355b51585c49417fadd43260e5511d1c9ab411334a590302047c435bb500683066023100c8480c360ccec8abfae1cf94fb050051aaf2a9970c32c31a2ac961117a5509a616f6e946bf72b020e5ebd2840bd3f5f8023100bd0ba40ac9378070ef57c72f6403dc210acb05db2cd3ae3921e51366ecea0428a6e51d7bf4a0ca4b92511d8dd5d3175e0302047c435bb50066306402300fe1ccae40b69463649153dab529a6ae5dbf5cfe65905053ea8021135c3fb6d29ced6e6787fb1e406436d220bc6fb284023039e60a808741c5af3d429b7b0036df5dff95250493e93cd7c21fdd4195c6eba125122f9e2175d8077ff74b4e6fefc7790302047c435bb5006730650231009e632bae3d6a06e7c1ea125bb7cb29919785a4e80d3175038b2e993774cf9e7e037dca69dede5c7942ea9c40553650f802304648764dc4f05bb426d917218e0895f7d57bfc1bb97b06d69b231630fa889bb9335004da09024d4b546ad638576963c60302047c435bb500673065023072983361bc3ecc44009b3399e391875d55badbd97f32e0b683641763b1c456364e2b0f884593d937a897f3e52a237584023100f948c3aa07224be426a62ad30dc35a942d7475f5d248eb445936345267b3afc871bfdafc8ea216512f06140dbbe0d87c0302047c435bb500663064023065d8818805e4ba7455844a8e67106089d496b354dc5c33cce18e046a0ac098cc2de1d3d48e9fb4eb264b33f86a69558c02302731a50acd23ce62e5e39259fb4a542b3e4672c61e92ce61595f639f2e9e24331a0760ed11e7428dbcf41389db54981b0302047c435bb50066306402301e3f42115e9eb194ba8b93c4b288873ffe0f70d1a537fdc91b6e12009faef90fb0403b5d7387479ca13ad1cdf859089d02302017f11e41d7d9a6f166ab2fb5061cdf32c661019d258903e2a8153c3daf9403d1e228033387a65f37a802b39a22ca1a0302047c435bb50066306402304740e86648321838ad40a8bfe3e670801157de83b446b34757890caab6bacbebac8680bd532b4a064d0534d760f861fe023050d9bb9520d4eaec0aba113cee93947c125a9871f7e79407589fbcde4d5cbb76b8b9d3fa3b9f00853960642500dd991c0302047c435bb500673065023018c60abe81bab8e35dd70c7977f9e9a70fc4baec19e6f4ff8bc16ae57f38e52df8d13bc2d75a81137fb5562d55934719023100acad3633035e9c56229e18942bc46073d5d9900ff083acd366f3c25ea90353bef8f6ef114faa96741fc8d0d7be8a6d280302047c435bb500673065023071f0475a34320100379ddcda6a3ff5db3541890e5197f533727d350e5593527922617e5ec5af1bc902c1d96cee707bc0023100d0fb221e9f4bf8a6867d77f430c8bb472b27fc72f51ab30fd6fca621aa83b7f1c20a82154ed1a418da9e5b7d247142fd0302047c435bb500673065023100f4b3a67a92506d1f5aea5d5c4cb9cf90aa283aa38017c058bd097f19d6b1e107831b3614c4aa58b22534477cb876b72a023030502e0063f1697798752876682e3922a190752e7108938e70146f851fda756fac6da8c6257a7bd505de91dc2bf1c12d0302047c435bb500673065023100d3584e0ea0e65592bbdeffabe791dc57db5ee062b7952ca1774ef89a7f35556be14e1e759709a3dfc4a3b6b91d2eb029023023dc5a6a8a1d364a3fd08784512b5faf2a74a9b41bf645fe17e457180a4af20dafaf9085e0be6cb4db9890e8eb3287cd0302047c435bb5006730650231009f77a9d9e78f668716ceb0a7a649411e5a66f53fc88fa32b4f98351beca46815d5f4e4e2755c3f95ee8c8e88ed1c365f0230282a7e582b5fa6b6a3391807edaa37a3bcbabac63255fda131ea27d98cf49560b93c17c7c3a1474bad9a58fcfc7fb66c0302047c435bb500683066023100e45d35cd9c8f3300ff07807827e88bdd5b964cc3489874e487c624fbb8662eee5c267a3277890c0804ed6c372dd3272a023100ee02c0889a209b0895ae2a71210620c854cb1e3869ad4658ca6b3004158ca1e34fb146c66acc71de50bde87c477aef7f0302047c435bb500673065023100867ddc083180dd758bad2342b2213386eaa2ad3407e1c6258d21a31275f56e77f7f3a5a93a283b5370a1debb81153787023037c364c510e62283f4cc425899d360db9c025d9faf097fd261242214a04640c7bffd71513df731ccf483cc24dd367fb60302047c435bb5006730650231008109719fd7d1dfa5cc64a52e7f66d377bf72416346d86683389f0d665ce44473cf40563f555bc814498ff4ac43f959d902306e0bfa997da89b55f1ab0f591d3f8a8fd5e7db4b7f34a43c7bc713658263bd20c0fa2d1ae4301b74f1c3b306ad69e2c10302047c435bb50066306402302ac3247747029c5e804595ae01bea24094f91a247689ed74b79717b9555a5d146efa97af0ade56a9c40156439e7ff3e102306f85674dc2d1205141b05999bed2f32cf19281296267376a443943aa98297024922c4c3b154aef58b9bac3afe240261a0302047c435bb500663064023062db2c263b31a71c50fe909247113e24505ebb7199179b11269ff1f706f3474f767416bac6bc531a5e4cbb0f8783872702305d41c5b5a7d15ed57186ca844b23a71bd105bbf780d76246f896dc5cd34b48d710c835382f07b135e026bfc120265e390302047c435bb500673065023100a2a5800a730b73d289f99574e2b48c5a965efcd4b009fe2853f9dc3c5cf962193664d44899f588ab853e9502683d2da3023069fd38bd7e1fb0a98325e14efe7b64eaa470f2c99c8eb53f8eaba202532aa28bb9a5b9ee4c6939b63eea3e352547d4240302047c435bb5006830660231008d32be434df37a29a02a23887a20056acc1355b5c385f402c751eaf11243ce05c0a96a931561f3c02c3a9dd962b513e5023100896b14eee74b4734532e2bf30b9193ba081213f1693560edaf81fe291124b3635077f1ae118072aa4c0e5359d97314db0302047c435bb500673065023059c9bb0a7d5368776bb071f2049166ead42b00329faaa8cf60ab5500d24eb97642047cd5fab23230a10d4c79f18e20a9023100afe9e723b125f6da5c524077de65348ddcacf64f31dfc276cf627366f144a35b37c166bb33cf1deff6fcae9ef2f2e5aa0302047c435bb500683066023100e23ced784bcb715fa4680eb3d81e8f49a5fe97b6d67d4854d65dfa8415855c18639f7ae49d6a9a11e06c07b1399b46bd023100a1c480e02eab4cdaace18f28ee4545ba7d7eb801c4b4617f36bc873b4f38adf1190d8c02222305896ee56f75741f0fb30302047c435bb50067306502302b3cb5c2d0977e49066499a4cac43d6e2a2a498e5cacb53f9c773e7e5f928a7dbda02abe7d72b15d4bda4bea9a34bd4f023100d32a7cd0f479b527b7fd9a6f87038b853c936030ba73603184aa5004f7834089a26b43bdfbda6d1585d9c8691f8458860302047c435bb50066306402301e5f1bce1f9e777cdc8023a4a722811f0e45cea225f912670a330123ab99520991d7e9d8593e18758aa962b8f461ad7102304db5eec69712b9be1feac61fe3726823822420f2f79076cebc5d27b1c416f3d801d9dde7d46ca99c57aaa48ff4dd70bb0302047c435bb500683066023100e6356bbd9e879ae224eccc7bf24b31d07ec881362416212fda299b8fe44cfc3d4de6c53eefbb31d61896c1cee60a3b92023100fb51fac0fec53284faa15ce70531aefaa1f99fb5a5a09590a63225fd8f3c8a040a853a7cd6b4be93e51e6eea613a1ad80302047c435bb500673065023042c8a6cf2f0f36935bc1106b1b57ecbe3fe02fd4603297eca9e71da53c7ff9ea36901ff2f06a863792c050f5d1731630023100a1764f9655905b2526d026e1073880abc94e393643635869f1925bb69e20b6a348800e800bc0a588f724f6323d4c20fe0302047c435bb500673065023100f32f90d36f1eff877b6f46044cd52b4e79d3fe7e2d0c0fdd59ed5c5f3af4434d439fa139f6e611459fb6c8fa4c02e555023018969447aebaa477aa9e9a2a361afc47f11369c2c2e619a9eea48da78a692956b860d5857b0ec0529fbdedb0f101b3930302047c435bb50066306402307636affb8bd807195deb160221011cd02e1b0c8d8a4399aafc9ee8e367c071ecb12b6e5edbfe804fc225991c83e1948602301a2d9dc62c21cd527aeaf83b97260c6ff8ea7595efac2f8ec75b77e2431d14b699ed91b59e8c12291c886adbd3ae028b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302c259a7a014b8f64fa8722e9f301fd0e1b4b231ee29ee8841d806416c1044aded36a68069d6b9cd41035da6b34fff68e02302eeb7c4eb9af15c30195dc17e2345bce8c6fba1102118b020b4ad33f77d0bb39909f23f2bd5671488c7ec84c45b293c80302047c435bb500683066023100b69e43db04876b10cb775ed67d20c038054afac77921424af0c3e08e77b75fa28b35949109c28986f909989b5de51f0e023100fa6433085a850c081df9b9d56e12579e430d43b81bb79b5e810e0d791f1d6f9dac0c2e45480fae6ae083b029d36369f80302047c435bb500683066023100ed6e4e6a5c94c0bf6cc324a32f79c1c876c85e31bc4530d81b4a54eb8ae9fe5f67f7981922162d55fdb605bd0460da83023100b59514c5a315d8ac342d1a0b6efc53f13078416432aa77893fa160ebc8d7cf83ea6c0f54c85779abe77239bf3c71368e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305b1c112e48dce29f8a67697a4baa3d5e06618b47f133715afd10f79eee18ae83aa32f2c45ed424ead1ee77ff8ee79134023060bd042d5b1e797e38fdfb25577c368f03eda08c5d2f68182c269d3be57f2336020af0f893e815bce4804c1ab0eb3eb80302047c435bb50066306402306cb9baba9ccd45b113b486b0d836d941ce0feee471f1aa24b0429f4e4b3a74f8094450584816ac2aced73ea66f5dc1da0230362d9cdcbd351e1ae35a04eb2f8f75589d18b36cd0f5aa9f8f85f1367b1b9e0792927532d123893a5b7118ba4e402f320302047c435bb500673065023100fba9a8fa9db928c468548f57a469ccafa47fe282198cb1400d422918f37d21545dc8ee694a42b9fbb4d0311c7639dc5402306a4cf2aa6996176a06ffdf83630a787845e59b7ef035878dcd1b1447fde2e71913707abe244dbe8fef35c0fbee73b29c0302047c435bb500663064023009eddc62f225dba0f7f09b7d9227cc32bc77ac87ed07ee151545a0416d002e57baa93670b08d97f3861ebcf45a535e6b023033d773cf5c72ad2ae0bde7bec134b29958e1c01ecc84e8f6f5be2f5715463818e3978abf8a6add1b68b94daeefe68f160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dcc133e2a64e437227979bd7316bcaa5b6db5a377b0f3948cc17d4a580da9a46bab0c6c0f61f322f412022202a69ca9802307d297aa22a6c917c0db51e262d85abe04ee130be67b236239ea48dcd5be4dfb0abad806201f3c845440170a3acf01d0c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305ddf313c94f533a07f1fcefb395a42fc66fe76d8c954fb60ed17699369f08b316ec0879c2296a4c59ba642a985d58f840230719f6934ea36afbc5953bc2d75bff511215361c70383eb92671791dfe18a3060d248cbb6c9b1beb74b4ac5b425105aca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c97c51e5864beebe66ca995339f34d545596485b538f49e5f3f358eed2f9362bb986aeac4eb541e7e06be7e24f7644b402307a2425f631b273c934c31caaf97481aa2778132c8971a72595b287e4016953e5f0e4418a53e21ebf1b9e7ee000c1c1130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301d0b7baf5851fd0ae95357404bc40a3a9a2e8200ea7d34c892684759ce7d6a7e66ab89bdba7d0a2d1726aa6b77817d70023100aa8530cd67b51f0623fb7fc46b46a2f7730ad8147b144e80b85a607a5b1a778bcbef1a59e51d3c933cdee6c51f17e8ee0302047c435bb500673065023016b830a6bee327b9bf3b48bede507556196796ebc547d89944e44c457a34d566183a25ec7743a61aacd32206c5cd5189023100f8debe9940b267de1564a51fadb3a8891f37a71629caff6005e6cacce4593010880ed5ce33017d80388a739ec04e2d510302047c435bb500673065023100f0c8f927d60d6e1f18a328588ecbb96c6b2c7973b29631fee7056cbb508f8f1dae80a1e2e0df9a64458674a92417499d02305f1355e32c59837fa31cf0b84aab2dd33f80a047c6cd5c13e1ff944173275905306a5a2019178ee043e6ac8e14a2f2ea0302047c435bb500673065023100e5d9b2624426b3ee5162d5c0d6c0dab73933575b2c7dc3f87af9ef64c093361abc19c4da23e568f733cc046d5b379264023067bb696306bc8dc97b997ac9146dc277d1ffbf1d7eef2b5aaf3ff36f093563c957d426d7546bdc973968ed5bef11885c0302047c435bb50067306502307791c5a9cd9df030fb97d358ef8dcbfdf10431110d4599fff8b1fd1caf518dc5df6392bbc0f87852bb6748baf2865124023100c8de9c0ce953340c56c95dd9ce7552d71f38b92bbaa134617d921a9464a3fe61a23331ecec2cdd39df9d0a524dbc211c0302047c435bb50066306402301bb3c70bfba746403811a412b38d66ee4b5c4757168b2f75ae98b30ee8ee29eac8f713b2c128ba661cea82f17896525202301f6a680440b3dfb904083f09b6abae35e09729a93ce83e31a51cdb4355c1083f6dc9efbc1362b3abb7b953d76f6441340302047c435bb50066306402304b4f63a1c2c9f83b3fd69663fa1dcd95806995232d86d03ac94ed4be3047248766663274fc95d4463a2fd1d719410a6e0230238f3928f094d13a31c41e1f842a989cd75af9a0f8565faabff6520082378af3724c3fa65a4ff9fa2cd85daadfc7ed220302047c435bb50066306402302a3d8ae896288f622b96c300557f7a1ada9709b1259eef7f970cc17493f85e74c91e57f9e931795e13ff6d195bc1fc4c023079eb2e6ddd27199e251bbc1e8ebba4563addd0bc1200d151506aadc5691abfcb1d1dc740a78724a342e9d75169e245b70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f9f33fb097a4261be05b9fcc40440b86ec7e88d5915b364aa017870a5008bed85998023cfaf6b775a33d8cef0956154f02301510bfb727c2a9cabab0b81d257e83eb61695849e45ed96b844f94ac91f186a883a52035ee4573d32e260d00d122c6240302047c435bb500663064023037d662f85682d4211fcfa1c110e775d621c8cdd8cb30d7f596963cb74c616a57e32dd4c215eea4893462483d03e8d312023058e11a0387e68f30721238fd1e1165719be657dc39f2ab5c6e5fce873226bb33768af3f6af5fe719ad47b1a203ba2b390302047c435bb500683066023100e5bcfc31e884637e1cb039d5bc3aa194d29bd299970b824194f14d7a0cce4ae27da8d42da9eb92284e6693c1c79c8c17023100bab27805f64e01d405878d7e6dd16d44360aac9215b2e16f16c46d9999286383591caf9d7c5616af1ddad9a5aedcc2690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b6fedaf06ec02e9834a9aeb7f9eca023c9dbafd46273af04c0197d1dc8c7f1666c2689efc35e30213bc14aa657bfb1bf02302f56cf860c3399e6bf7c02808e1c942ac94088d43b86092b44d11eb8ec44b4ed5d54fa990f989700cd00df27f985b3940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310090cfffa61a5e70d3b3a2fcf93cbaa4b0973f41421a40f8be7667306aebd7aece8c8dfbda318314298984ff342a6e10a202310098f47ab6413862bf00925f31e5a0419b4ec7b3c9c598f4626f6e676b6b21dce899bbd70b87fca5b970b77c5417290e090302047c435bb500683066023100a974261437be8b8eff3aab99b149c174e033dd8f226a1fec19535e7549cc4485e238f8b5dbf853c46f3b2663bd251cbc023100ece0fde0f00405e5bf1f894b1dd8325c5ff9658cae3ba04f9b66f289e0e7e3ea6de893c05c0775678481e94f356e72220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303336264bdba8225f5ee16c9b70aa472bde3d6f79f5b5337be35fe58362a7c4dbeedcfe69b6a6a87f676936b65540718d023100ddcf92fca4cb0235beabe46d6cd50468286c1f35910c4344fb50c086beee661434805026533204e794e37c5fc833566e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f27743ca302fa926887d2c7fcd2635603ccb6eb6c3da8cbe8bba824a5608a7845035f7f44ebdebf95f5bdfba96892b28023100ffd54c49ec400de7cc9e6eb48c98dd733fd4d901cc5e418887fa4cc381a6620859891c695181841d2228fec7f797d0250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009fe6b6820faea2570cc2be3ac8e5158305a60ce991d6d0ba5b7ab49659b024982ebcb762c5afc8ae4e675fed87e535da0230371714cd6f0d49c88bb3ea11a58fa2f23e4c5841db71fbea684b581eb3cdbec53827489f130713fab22f02fd5cc0d37f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e64a40cb335cf2f721140a3fdfed38f47a88ff5ce71591d8c0948131b4759b0fb29f1c5449bcdff9b815958c86f79a91023100dd4c518f28ec3b1a873ac695b9a2349cc6e2700bc4bc56a518a0b6bfc55d69399a26bc5dbec89f033e7bc86223879fb00302047c435bb500683066023100800cb84cc7929e661a4e530e7d6c5d5b307e01d544ba77bcec6a0dd116c99a666b57f9ea3baaea3cecdaad715ae9a136023100d19bb94dd2356f5c5169a2920989a1bdbdc1f200f482ab8ecefe7588139e5b53725b7ea3ddeb9b091d0e28b8eb1d35040302047c435bb500673065023100be6bab99ee02ef5fd589ee8ffa184a9160252144698ce277d0216709191173bdb2739f3b9646479c84363c2f3d47bfd8023041a3ff6aadf0487b98c2f1d0eec257bce0da8444abc925eafe35b45765cf1e521404d68c8d34f8679d21460747176c710302047c435bb500673065023100b5b83414e2dd30602a784fdac685698b8a7c1e9a5fc048a50f8fbc75d4071b5a0473f6a7e228b8c6f59e424929d2fa23023008c201791dafbc78d8186f87c386008d7f69b5a96646ad54b884a8cb609e0582c310896dc5910d54a25dadd29a525b8d0302047c435bb50067306502301b3e4ac8f36012839d8aca89b71ee11bec591175efb096b61a17010247357fffa86132c8cdfb1e55d05847142d3ea9a0023100f5eb5b894f414bf460a00598724d137ce93a31c1dfaf378f3d3e61a46275126416776f3b71dc3346a94a7910ebec97a50302047c435bb50067306502301ec491a11d035cdf5b518eda29a0607ecc6dac09d2804190cad4837e105e7c404a3737fac8ef1f4de9c7114a30b211b5023100e7695ebcacbf6eaad750181561b34794e0f77a9382845a97e184bd7534009bc2189f9371722082377d1c3bae4efd691a0302047c435bb500673065023100bc36054bc5050caf02cc956662379d77bc3f6d73efeb9a3c9f7dd56abca7ab021a80d478a6a55cbcc5897190249117f602302aa08ef0d797569ecfeeeddf8abb589c2b438135bce7eb862516011512f8d33ebd024ed61ee662f9ea09b6c2b29e40cb0302047c435bb50067306502305c6f98e76fd013d6ba104ac62eb42ec89cae67150ce0ab66867dbaf437dea9372066cf100895679bb183d56259bbeef0023100dc05826f0bf9639d9e25dafb970572befdb14ef885e14b37c5a6f92a2cdaa6922ca37aec886d0868be8d4885ecdb5b2f0302047c435bb500663064023100ca97bf80240d5cef15e8ac47852b82d03f51de060727e0d19ed7483b2180c7140ef634aa4f44656ce38b97aa91664d5b022f2dcc484b701e5ca69f27e4a6c3deb4644384950787071da85fc14bf1c864dc7c3f985e09b8cef5f450a816f24ee4970302047c435bb5006730650230488f6d28d7c110c615e26c50a26bf855701e053020344dc6691c305509439314554075e1064cdab94272c1da6b283090023100e54eaaf96242a4307b023f3483d14857ff69fa7947b7ba637b48900bd188371b40ff8d104e33daefdae7fe174b4a4a5f0302047c435bb5006730650230202d5d757920e7c418324d44be160621c82ea96ccbefca2b0407f4cbd7379db8159d7a1e087c5c1d605a21e84d1d06b7023100d3acc3be35e4538c750227014019b1a999d8660210be92e197b7b73d4ab88a6a6e222010ff772befe2cba151c13e958b0302047c435bb500683066023100cacaecdd912264c150cb8c41fc30541b0c5398498a262f04d50dab43978d5093a0e7a410aea533eb6a5d25ecf26b32b0023100bbf16a1967db7c244f86dcdac975605c80e7ae139f8f2a7b5b314d34b6a22891c32af92a652a10ffcc58163dca7d20e40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305d1317a163a9f7dfeb21ff4441c9594813ecab213bdecfddb0cb84010bf0caabfb6014a011675188473a8baed4d7761102310082c4a417d3097499f5fc26a1ec29a1629e37582417c2fe9cad96b84c08f5a418c5a8eb12ef9c8982843c2f2c069204a90302047c435bb500663064023044cd78960e42f8b8077a94704eae6cad669367b11d5fc3cb14f2e1554a4d3d7c45453b12e120d7eccce7eba403a6cbbc023049e34795aac5977437f6417a243af8e29167fab0cf68afeb3a96a74be2587741729ac2dd7865a7c4c6dbc9235c034f7c0302047c435bb500673065023100a403e38b44713856f305de25dedb1c80af1ef0ea41c8cba2009896ae800b5fd1bcebb9ea9d99aa9592ac33c33d63b0c302305154c4da91c2d3b86c111b53267272b8b9cdef61dfdb0ab3792918c1042e7c9d728f4ba6569804426ebd20970cc013020302047c435bb500683066023100f694bbbe189ae2e6791db0fd2681592b4e29637bc09ba4dd4d3e800eb4d773f4a5d01875298e1a031634e8e6dfb13d79023100dd393814fe925861e2872b723e179a2ac238fd10d02be4c67bb5c287425c2d2c567b6f1a475bd474010e4dfbd80526ce0302047c435bb50066306402303dfe3e6326b56497f045af1a2ab7c12fa54f7592c48e049f8416870d26412a48935ebb6bd6cbc62c89c477a62822cf07023068285798abd04ba406b899237c5c7e2e26d3d073ac7470f8e0180f400d8e3c0fdd8487526cc07f525b4606e1dc20783d0302047c435bb500663064023045481141b54196c5e0bc83dcea92c939a4a3c7a522dd7eb2abc024f344325f62df73650c341f2c6df9c12973d407682702300f661b160e217d148d335f155f93387a973bae214c8b943d4b96c19263696f070395d009c2f46473205129ac7d2b3bc80302047c435bb5006830660231009ad69af110ec686e4a5a5bbded6c8c6295253ff4f2b346222905dc3c7615d53a582b7314b72549bf08c149661c32ada0023100db092faf6f967349eda32f8ff8ac8c2563e0e00fefa74efd849919aab14fd87c4eafd972795273a33b5a3af51e7af65f0302047c435bb50066306402306fb9b47e2f292a52ca526966dda76c6c39229f12abccc2b9356e3881b3262a3b0c90a3f909e4bbc269b8a6efa17d232f02302b2e67a051d862dfee61e3683d65c068d9b66eda14e0b7b3e86f6d1e4021c8e64fde122d2998a888cfcfe7a03551c5050302047c435bb500673065023100a9037d98f85dacc18d9248a0ec9b8cfa1741db7885fa2ea1a2d07e0d9d2838e2a4d9497c5c5e332dd1c8ed7309f4729e0230242fd742f66fd239676eb1dfcf84dac00899784e2b40233086ace4ab9648e41dedfb2af3fe97d72dc1185a71ebe285d00302047c435bb5006730650230312f43d784ed313c51044efa6afd9865e2eb169d8c75eb2499f5faf4efbede17c5c62e24c8deae6df6dfbffb18d5b755023100b0ea44602d48b969e7cef7b2063d22856ab89d5ece4cd45932e49ab78c91eb6da2d9ed46396a3b37b9677d3ea73f180b0302047c435bb500683066023100fff04ac6bdd440ff8ba19bcba5dbaebb98ed3dcca82cc704c167cb6afa5e630d975b35362e7e9c17d6c1a81a748592e8023100cf77782c2031343da83f8519d4507a75d664e77a19a6a297ef1931fb700792cec127433a171aa03dec7f56e053a270c20302047c435bb500673065023100ce119ddc6f22650d27d6ce679bdf3f9bea3bdc55c9ff07212b92733853ba458b065dbfa20b05abc127d6941fbbe453260230775846e778625cafa752f1ee2909c418f20e2a0852add38008190224be653e00c1d8b1533e4f053760a32b23cc297ecc0302047c435bb500673065023100ca84044edae32b78272c1efe1e5b2fd2e47390ebaf82330c461fb30a0de91a1e03df424869c33941e27f17474d004b8d023020be3c0884fe34b846364e65ce2d2e4245270c80abaa088fda64a18da4925f0ceb620a85cbc1e0b751752a6d19b8188b0302047c435bb50066306402301f923596e15f741f6484f140633be0abb198bf79122ec3ac3d70050eb7bd6d66467850c8ce636015c5ecc8aa00836e1f0230295d8ec46f7d9d7a33f376fbc645887296243f895a1f526387ea2da867dd11fc6f02d617690febd56eca5e2c0edd27610302047c435bb500673065023100de696b6e2390d29c8968a67fa77c7cbdc33f075509a65ad36fd3c3dabbf0da111313dfef4e9649921d26c213ebc13bb502307a73cea5f63c7baf9af70fee66844547dda041e914bc491668ccdc4e68d20864676ef2a9355a4aa5c4e9634f8be99f220302047c435bb500673065023063f68eb7af3b47010a2556246423cab3a631884ef1b05cf446a05219d370df1eff5efdaa7985315aabf8b143aacfac57023100d6350e2046b0a6a1a84f67e71bcdd88bcd6963b65559abd2a329c337eacd35794251344db175f025111a3dbfd673f67c0302047c435bb5006630640230525e7e59139142d7d1569ee9171b609cf9e9a38fe656859faa121e461cf115fb06034294bff401f4b7db5b5e1c032b2b0230121a61dd293e4787c4daf58b0216f867776afd6c1cf4e068982bbf3cd2ba53d48d1b0995226bc1e212209203981e39d20302047c435bb50068306602310094b56f3b672eb25385220fb78dfa595d0531ec80d28bef53d20a88ff33f473447ae0bb891874e24275720b10263a528f02310083468fe2ca53bd73d9a8c7746ecf45f7ba1c8cfaababdd922641c21a6b6d3ee9a4ca34a8bbce8dbe5ff263174f31c9b00302047c435bb500673065023100ca3d1dc9544004c66532467e2a4f110eb79dac33c3f31a2776eb6a7ae3fa27686560ea6cd50ec378180964bcb192682e023030d224b53c0bf0f649a0171d5081ee9a0710c53af6fd9ce75efd9cd2b395eb9e382bf5f4b1e5e961109acc95fcc933b60302047c435bb500663064023003e3e8e101124bf8878d169975b395860639e83fd39535da9debd730e75ea748486d8a253f11f7ebe84a1a298566fa0502302c7c788c62e4118a5f3730f92e5e419e0902fd58dd36c4604c9f8ccbbf0044805f44bec5e50edd57387270cbf40fbf700302047c435bb500683066023100ac330b46e3d12203d6a155d9fb8b0c996927daeb0ba309285dd87afa2fe93e756422cc1620610c662c764a39ca05e1d5023100bc27a52cbd000facb1ef85f4861a8bf51958a40390dce936d7a926ced92493bad4f805ffd08196db55833277fc3b05910302047c435bb5006630640230286e078c5ea4e1c3cb2f1f189cd1d618536f5c42171a39d6f0796fdf926c8cfed14e62efbbd8608dd2b4f90804b72e6c02304c864b0d101da7c73f0b02a03fae50858aff3a5acba1cef7b277bd285636f430553939719e58222765c6229e45c99ff70302047c435bb500673065023047abd61e398bc8c5b891a49b35c3387a2112a80c73612563f9c9f981bd3db5e9632b82c8a3d66a82af7dfa260b36f663023100bee33f2a9dbf74f376253fec0e881c0ba808bee51db795c8c458479e8d0e6bddadd3d3f20fa02a30ff81eedb02abacbf0302047c435bb500673065023100880f32013beecd6cc2bad820f33ac976c8c587a9f8df2fed4b0240674e0213e2971c465964d23fdc6d7d98071aae66ea023074a8e73dc760d0e5d4853e8152f69261bf5e3c38a4cae4c4752c46aecaba2017ae802eab4160ee98956e936fe3609be90302047c435bb50066306402306774aa9a7c8e7abd99cbc1ed771535c55ad78f69df4cc485995a911e91a385c859072150e6f4139aea5d78dee9ceeeb6023029db7837a591619d33fd0a33745851e5cf02027d2a41094365f95e41a4057a297b9b2dca7032f1281f4b51f2420086080302047c435bb50066306402306e73187c23cdaa556a85474d0e420da8a024ff4e5a79b0995ff829a8dadd656b421eab77de768d1b4db1a8260c2428aa0230417ab751642346edc3e760988af403c97c30994595aa8c2b26e7821f4b66cc19d6b6842fe69f402d9ace421ff4706eb00302047c435bb500673065023100c596b02dfed204f057a15277efdd5f945300456406370a41848f5bd9f5a39f03be4919346bfb38e128e4bbc43f8ca902023004ed3db52866180a49f761062250c45725e624d50786ed605fa57a0db381e7bbb639a8a96f9c6785eecbe77233376b5c0302047c435bb500673065023100f26905e1180fa1cf5c4bb3ad06ab08d4b525cb109cd5af91ff73a902644d0a81d27c8cf10be5e0292a4237185d91149202307b3667194d7a561e667ec44065df222a44461fe0db5c891f0f468b043fdd81882d5ddcce9009e19521ac9650fd41d5190302047c435bb50067306502304b5929c685d41afd4864bc556ae4b6b2dbfd3f2b3bfc3cf910fca2df7afe1167a21ebfcf8ef20b8b7dfa948df14b9345023100d476e3d501db7a96b028ceaa3e1e6a7d5b6a746732095bdfb8f7e84be2c61335b01794591e558afb19e3e161e7ff7b8c0302047c435bb50066306402303be3a86cbe90e39d7ed3b67093924bfdaa6ac57805e20d1950a719ebd6ddd2ceb3bdf8ae3c49dda97836def1a24d296002303cbd0b694ddaf8414afc40024672635ee7a9f3a618f745bd78c9028f1e96e352d87e0a65642e8525a4cecceceb8123870302047c435bb500683066023100c2b5e0b799de3e6b70fe99f51fbc23b51d55e39d57a04da1dd1ff62e61ccbf2db4da81e4e7b084d5f19d54d75466effe023100f25c47e5847b833921059363bed40781699c981235d7237e65194b15e12513a60871040d19668dd86a6b8c353967d0600302047c435bb50066306402300af3bc8829539c5619b1f911b1a4388cf10383dad130fe559b099ff5cfeed7650d0a667922c1697509a65824920544f80230708d1f21d1314fe152e38d36fca474f594d3e2d6cbc9543867b7bbef698933f879319c9e5cb0cbabbed9976c8b90cd9c0302047c435bb500663064023030ab41f2673ff8c1f0a3626eb4688f98366aa2981635759f2afbec59c8cb19b8187c011ea8d7166dd1c14e44aecfd9b6023000d5c644d841ada5db6f57db40978def751851f633ecb3c259578e8a4e1bc43897ed67ececeef7b84940616fe4e785550302047c435bb500673065023067f00cb1fc013d674fd587a009a16cab724281bcd33ca4bbbc2d6a6ac9169384650b299b8af2d7b6e4343103c00c699a023100cba458ee65bb549bbe0ffcdf6ae575945cfe8cb1e66bced68cf6a3881e9484c6fbdd909cfd469ff3a20b93aa3752f9800302047c435bb500673065023048edf83e3191b3eeac690fd1bcbd41b6f589514a08e160c0b31979d3596b740030ecec53b8280a862eb53ba307a56076023100abf57a931629fb6e39d2caaf5c4c5da8b614438920f5dc6144af5e35bf03242d96f00fb2c456db781f512f46ab66fe260302047c435bb500683066023100940d5fa712ece592ec7a39cfd59309b411a9e058eecb88daf21932741711e5ae931fcdc1e72a75fc86964e68197cfdbd02310080e9b7d5ad4b1243708584d3e491a6cb57bd853bb8bebd9ff6d58ee7705daa9cb1854ad24190078ec6a50bf77a92feac0302047c435bb500683066023100d8070615de0e71895992b2531284b831f2669fe9296cc647496fafe1c566b92b38114c3c9c7cfb0ce8dccfa8a78e1dbe023100d77d342830be94b0efca1a01dcd1dfd504fa421009efc99ec74bacd5fc666688c689b70df403fbb70ec5e8069b08e3540302047c435bb500683066023100b3097a175957bd368d96a3c803068c4997afbd25d3dd4b13629a32a1930f47c58eb70bb528d21ff30a9ae68b319f66e4023100e82df13c31c6baf2f0592ad418914ab956d108b0375dc1cc5efe5f02df8a38d6bd8a0949dfe0b3e89cf2542e89c6f2a60302047c435bb500673065023012e67ed13abf932c842d5574b9a9068e80505bc0b5221b18f33a28ae08320fa1186416ed363cda5abc54379787da36d0023100a18866052aa4a5ff9a8c15c254ae455320e9d85bf6afb812f8f3a07594e918d8784b003b8cb47080036588f13e6368da0302047c435bb5006730650230083f69a66463a9549283bef4d833b38d4ce283f1ba13e98535f448de5091487b48f3bcbfe4a5f6b195cae0deef97c2a6023100fac77f1aabe3eb8aae0ee4e880341ad34e7f48e7190863c93783061062929c714961d622355a9f836aba68d6ca3022430302047c435bb500673065023100abc44b1f4b1f46698c8138450a4d2dc6ba022515aa8a2588c20f6ca8ac95e55dc4835dc3cefbc53193dd59612346d88902304a65bc6947507bb9e3c4f9ba9b751a2935208fdfc524190aa2a683140b6da084b62d54a0c6ccb4ac835f3c1b8ed281b30302047c435bb50067306502310098e7f1bd6d1171f7e285533d0a5349d12ea3a7ba31baa4a19ee062b417c756500fb71107df38b01af3ab13e356ea8fea02302616f0881baa9cab3401bf1671b30d9f834b2efb53d825d89763a71c3fa594ac1cbf2a80a51294265ec2d9fbb3bc1f950302047c435bb50066306402307e8a78c73ae565a80cf9690cea68dffaaf920e905bba16c947fb427b90b37a7469641997739b38bc1936170931e4ee9e02305600192fd0b9d6f281530d4a78fab9333e1e7a776d6d0bb09044f80d662195cc09b315ef21a8455f845350b46bdf8f9c0302047c435bb5006730650231009bc1738e6d8bd1e38573708f2ed0bd41628da44f8a5755aa42b859fe48e3a9714a40fc9feb4a022c4a6eab04549eeaa502302829f93cb5df159a16054ee56cd4d83c99a8f4f2146f83b02b588374f2827932a5f1745dd1f97dc8c74e25616e37a88e0302047c435bb500673065023018d93544504fe975504e9216eb468bd6aaa0bbec2816772ae191a16478a18eaa6a9fef1bbca73cbab18163c6fbad5535023100ca00f71e52cc6deb35ed3f216058dfd10278f994345fe9d04d11e5f56d9020d417af94d9c0de10f71a61cca2315350820302047c435bb500673065023100b85f365e2d57c63e33c43439a7b7eca4153fe88015af139c1fc727d7801f35037576e82517114f50dbdb8b7e931665150230032ac9171b1a43bd4d9fe708b37ccf8735bf6a854e795bb00081e7bdd82844d5d138064ab335ded379ef30c85e05dd8f0302047c435bb500673065023100dbbc91a791bacb60753d696e2a29e665d332c3c65147688be423150e4dc1c9a8244378a82524d4f63c9460b9265848dd02305c641feda6dccf8e24cfd52c397c17118a4274e86e03e134a99c8a3b0a2d9687d4bef2eba897d8de48674c2e03c369c60302047c435bb50066306402305ea4dd265bc6d86f951c7aa10902b84d97ca65f3107ce4fe3f7efbc753195edb426ef8b2d21f41afaf82fdcb5082b8d5023010976d2261274ecd7b0989946b2714b1cf153a0e0fc20d930d52dc0e5eda8b161bed0248cf02f192612cdc469ed562320302047c435bb500673065023047189865603ff1d1d8df6606d3005081a7f9ab7e43927385a0c00f3a22647e32de7d11012d0e6e7c5ba19326bc9d93cb023100e11d8ae1c0a885d220891623d9caae965c25c914bb8ab5bf7415736e234b4aa108132040de82557b14cea68db36ef9e00302047c435bb500673065023100e39cb8d9dd047178ff5483ddf920fce38f120bef14bef74a820693a73865c92c47c22613a438288ab4cdd79dc094f6fe02305d25239307e6be97ac70253ded67dbc5ec1669020f9ad5c55161f8b6d1d064d2c33000dc426b99dbe30873c8ff36187a0302047c435bb500673065023035e0d8e30d46595ba7deb64c2f09c14783c13045e312daeae2342c21f7c445b89017e0dd77c67fffa99ea7a1a886fb29023100a24148a4167acb0da2f54c9ce782f8f24674be190d334b0652d81147b461496262554b9d0691ee974b4a06d368b44f200302047c435bb50066306402302f26ebea895ea4b4d3568c70d38d9e15dc5c3114bc8c7e91757d4d31b4da34d116dec2b15bd30b1dea5a7b8916d9726902302d51be3c6b983087ab00269e4c2b01245a9c4a8326b021c871823107598c9ddb0767e0dd2479db0ed07783aad49cba6c0302047c435bb5006730650230671d77adb258881da987352bd974fc5e2c99518844bd1113674e9f8d2ad19fdb43cd1803075fbdeb81945d65b4006f6c023100c364218c5f8d2cfeaab728266b8f2ffa8e03b37f4bbce7ced982d89da6309557463bfe464daa093d2d894de2063ca8ff0302047c435bb50066306402303c6d1227c37ab2144400f513a3f3a22173375f5afcb4ee0624da5d9d0d97bac5b2ab94b504566e42165a223a151956b402307f1890fd91771a8083b6e95d18e6a8f6f2d8e24e00188a82eb1cda5025f0243863285ff4e4d97d693d6a8df7f21d0a720302047c435bb500673065023100ca6bef6ae0321ca140852a3a0b23613a58e24779d61db748c5109f500817b752b7bc50c88f1237a8ade2b3bd3a0efdc702300ee914b96134a533196aa95a4e4e20fb34fa2ae350ebffac01c427dedd78d50c09709b62b0a8e4551f5e54bcedab0c0b0302047c435bb5006730650231008f9083ea2a209ad22a4457715069e44c2c00ab54e776f9fec54a03ca612b747d8f23b82081c29e128685fd8e91cf526102304118910dca5afaf0d568b34cfa6dbd0037f683619daa0fd771c88dd499815ddd697d7c1ff8835be2fb33b54cf3218fd90302047c435bb500673065023100952ccd36a376f8049c7a251f908bd305e98a9cb8261e9cd8f093fbb5d007ba6698c85b67c253293b399eb7be82488c3c02302ace0479262328c1a4bb6277e731554573b68203cbcae7721a27e9012582ebf0910666e77bf6af613df0749d45de0ea30302047c435bb50068306602310084cadb2e473fb4ed0c2719535e97ce2c807c32a7bb88f1b2a8f37f888309960c49395540cb396ad12fb7ee0b181f0b68023100ca4ad428864ce04cc234793e7fef6b2531df0fb924df020db14281ab91227a44533ea3d2c23663acdad286e0ab0286fe0302047c435bb500673065023100d975e24fdd00b04af994ecee6b3a7a6bf1fd19520da4a9f1481bf48d1619909f41b531cae6458fef884f6779841ea29b023064b2f370a45c0f67036f28eece56e19871c4457df056054456273347f6cbfcf31a16e7737d0ce97d35eb8b6390e8baf00302047c435bb500663064023040f8994e18f4f396968fc54adb529bc1f1c0cf3ed8f6c6189cbd737dac5844394341797c4696b150e90e934660f7ad4e023010d98883dedb5527c431066f29dddeec3c4f50fbd77aea9372cdbbb047b768931549614768cf6da48a4705dabcc9c60a0302047c435bb500683066023100ce805630b173923ec0871aa57deb1ea3bbf419d2eed6e3f2440e8dadc96a6689b6275a7f09ba811db44d5094a6f157c4023100bc2bfc4afeb786dc10efa4d4cd32ce1ce689af1acd08db10a0489e1822ebb40a6ef7f24768a4aa33e705ff8e3eae36c40302047c435bb500683066023100a966ad0078d9f15971889f1ef92321e8ff3c3660eb94c23f8ec2843fa2e4329bdb928c3e199aabf76f65ec2ebffa5315023100b90353813e0265c7efef456ac4a62dad94e400ad62164d41e5baf6f2cc02c1af1daedb1195fa12338cb8309368e963870302047c435bb50066306402307d8050a57282d62f1ff7be89900d0f1d4d2d8dbdb8cb9580d195422b038039c782ebcfebd26d00270ef6f198837f175c02307ca177fec349b9c30d1c72f76dcee18685e9c29e3fb0fcaf64ca4b88444bf9144c132e98de943aa462cff0b5e72b10f90302047c435bb500673065023100ae6e1d6db9e99d1591ce2fac7e510a991e958012ff8a7b9e26af63fc01638da214e032af0694dfdfa14ea9e859c254ee02307bea4deb4aca6da850218ea3914d80542823ed856f0508b8d25a4af689122b1d84e4b5b633fecb00455868eff7dc8ad60302047c435bb5006830660231008d1f4e4b226818e080cb90b55546efc0a8f893c042a98ab6d852281067121b76dff20340bd9914006208254806ed6deb023100ca8628481c939ce837fbe5fc0c741d142b906a3328ebaa56e6eebfa410fda340c8283efc8b605f8db778db7c28ed18f90302047c435bb50067306502307c751bf090c1cedb877b10cf9ce4a2e9e24776703427efde0680f86dec9d4db898f645845664634657e0dae319db3512023100ad97b2710e97c6647927e950e65c18955504f101f5d749337cd02cd3befe2b3a8cde14c8ad5ef9569c0acdfbe3dd44760302047c435bb500673065023100d27c9c0e3d1f8d061c92c7179d5e41d95cf863beb5c82fb4db38a030e1abc8f391a66672c5572941a0171bc7bcabc3f60230512876203d998c688796c0795e15f6d11833bafc9cb94e045b6a76153130114fc020efc047bac43ec6f8ed1a5b7bc9440302047c435bb50066306402307e391b2dc0878e821153dca9dc3a9cd6ba351b31f748b9a37aaaf714d6ae679b9fea0751f73bb3bf6323fd65b1e2d3f802306f9fedae65435fcdb43bc6ce6aaf4e6e2226da2a20cadc3c1cc3b0ca47d3682888945dc01a3c467852fedd13f09c33af0302047c435bb500673065023100ffbfe8bcb8aeb6528a71a13c50a065965e2ca3eca43b2c6280047c41006f01c3a96358701c8b66f8be480c5426e4922c02307634449e54bd20b850f907409c01edb3e485b5008c4a3044acf481ff153a953ad503e8a2bdb088410e477ce20786004a0302047c435bb5006730650231009f0a52562c5a2b1c3cfa71adb3f6636acae88aab24e48ec01157207105af218606199e14fe56fc16e5cee46766b7d18c02301a70ac8ec65867375e52a52f19b3a6947beaa3d0bcd4792c43a60d03aa5a5c2bd16062754a45e4c4b3049f09c01346870302047c435bb5006830660231008e941278f7badf785e26cab6c9829ba2d1f52defe90a3cb419505424fe0da76af2f70179fa4fdecdc06fbb0de5011bdd023100c11018b594b11edfe879ec2b928394d7197b618f21f042eb13d4817407db216272ac97299983489353dcf2b31f89b8e00302047c435bb5006730650230531b90571109c1b5e3b9754bb6def2ad82a5385357e4c83b8fbd8f0e65a938a236488192e0db8916f7a9a1e965b6344b023100bff5bf2682c70d13dbff55ade134c11b90dc716c2d33cb8dbe5f4e8b507b4073f8e6cdcbf9167f00030e40be93510ff40302047c435bb500673065023058d1a8f3dbe90e37027dc984c2d7a1de24997b1a1c35f9b2f04de91cbdca1c06c7886581b53d65b493c39c7b83c9283c023100b81cecaf508f92303d28398eddeb0eb307077e5770dba7d121feeea11757fd3adda39d35186c629c979e19f48459cec30302047c435bb50067306502307d6ea7fedf89e1c90a8d32874f89937c2af7572ca782d8c05749b5aac9d6c30c46ea304c8258745bddd6e13a1c3c15e8023100bd741a87f638baea3a7a42b68aacdc486172b25fa1d232ce87b09ea198c8a11d3db1c7a751ba14059679618a740f90ae0302047c435bb5006730650230174a11237e7cfcb41bf3a42c4166886716e862e8d62826294f91689df4f39cd8e7759d95b59598b10b78e1275a53e5720231008b8dbb243adbc6a6e21cfbca817a7cd1bbba5e086ab4998e6abad3e9cabe54b087b08b30f47abd454e388c33f63a86740302047c435bb50066306402300ad75193857cfb99ea41bd6160a49caaa38008216395a3c541e61abec7a72b1a1ad2b8b8496077e4e2ac31852ae76d1f02303f6441af8349297561e26cb4b247e5dbe20e2b7561e07089d8e80169f9fdd5d3217671c06433e7676190719b6912c6cf0302047c435bb500683066023100833be612ec01328024b6a3767f945c93589f933ff8f1656f458c189eb4287c76608090e220b56cc458925704549f4759023100c56a96c966c77ede17f072427c319521708c1819f0da0a2bd2afac16ef928f98402866adf391d2cc5b06fcb162c0e9db0302047c435bb500683066023100ffa784b79e102bec359e0e2ece849de9e69ca5b7cad0f2b3caac541075d9f05e21367bf0063f2619722f4ec3e451385b023100caaae0392c38925098cf36c9929373b808bad1d7dcc1b69bff1d9c73de00859da5346da6f2006d9de2a41522fa3298d50302047c435bb500673065023100a7a751ea279109138343704cd7d1f1c28d83010b9824bb0f3500568c6e10a4abecc15b523bb956c6196da1de3a34b01d0230053944e74feb6c70b4aafebb902f3b21f58bad32863bc4b335be1a1af119626aa68e0000f2dc316b6a28a68380cdb2da0302047c435bb5006830660231009793decb256b30dff8f00798ffaf597714ac6d820e55d2153a67dd1179b7ba9556e98b5a12a98639c9c956f4f0d97c0d023100c99c806cda36aeb45a5118347436d73f485416647fb4336b328a1ad64e962c6b8b3d5fd424ae01e8efc482d68ee243e20302047c435bb500663064023001f580d56b81c35d618dde32a6f864609a1ceb7fee422ebbf88ff9451e188576f450a69ef20c79d88389398fce1a4e4d02301685d24af335f4880f425ee7790506e71fad5d7b7b0798983b026d078b9d9f85a6a853a93748c0bf4560eae03f69d4fe0302047c435bb500673065023100fd68e483982b29024cd7c827da35f2a966bef1cb140c1bef3adfcc3d7d3ee73eeef924780d00ecec57fe07c1d83dd8430230762a840ae808224d31e7e0a0d8a2cc757468c32600c1414e6a1476c8aa4ab2c6c0c346dfc81f028ac82a9944ae2103a90302047c435bb500673065023100c37bbd00b7b31a30c783391762f9ab87dc612a5778a6449a1c1ae9776bf672ce348afcbbb3abf38974be8953de9341e802303f957453ff484a79cf97dabe00b13ff21063675e96383dc114e56cc5c94ca0e9f24634f6959ae0091a701cba65037ef80302047c435bb500673065023005c30df33919aacbe701a9619661b6aa1b07364126c11c83ff9b4effcdc15c754ed4c8f924c7487235eaeb912d517862023100dc315d30126c720a3096866bfec815c6123e1584c8803b52a847f68c68d4d81650ff80dc27719c215fc0a480d9a7e4650302047c435bb50068306602310081b3ec6564c84ffd16b1d0174fc6b73d360423b8a1d78f6e665a310ecbe5af30ea0737e96a851ce038293b1690b0cba60231008963bb020c076358b64a04e10359b711cd5224bba50e12dcd98ed6b5f73f78b83e0dc1a657fa7cc75a0d53371e4782460302047c435bb500673065023100e8635c1542dd62903d7cb87b69cae5186946d8e6538532d468018141807b2853eb29f84297fb560e777e9cac3b3ad67f02307ba5ebe6be81ab9895e367a8abc001ca74cc914941bfd6b375de39c14196a3afb2a177a7a7fefa48d5debfa99f7784e70302047c435bb500673065023001366c4d7c5310b716e07ea7ed9d27623118a2f5c8cd8da096b17cfb05d4a979d76ce4cab4db43e764301b023cfdbe9b02310090c2d555ed98b92a1ba781b007e2fce81a8da75b79e9495e1a64f2b175c26c71ea541acba755b554bd3b98c3b40206630302047c435bb500683066023100a0d582a20c262882550469b4aeae2b5a613b712ab8cdb136ef0f4dbaad67e30a71e12cc9464a806f63f7d0bb09ee61750231009c537cad08db3986dbc282c1dfee49a8e4a0d8752544789590b32cc8e025c2fc2a0b52f580f52ac681c168b3672611e70302047c435bb500673065023100950644c2235fbde5e885811d33538373b20d74fbb8edfc5e8493a334564effaf2811aece3b42dda8ec61c416d076a0da02306d51830523c28ec178c4e51233e7f13b1868397ba8a673d9fb510ca5e8840647877e6e180a6306a652d9f5453b64d5090302047c435bb500673065023059047ba1c0381e6fa03041f6f4a6433fb737973251e4eb5736b1f94ec59d49ec4221fc2764088c09897e2e4969fbaec9023100c1aa490dc9dfeccc3bf2f6d0a1a0dbeabfa8e7423947c392e50637026f7cc24f18f459a4eb345ff530ea136517b8af7d0302047c435bb500683066023100f1e196c822ffbd34ed9b993e3a627b18bfe49f5c9cc18e6bc7685f00c453831549c7334fe2ee01db33cefed3802602910231008407d9e96496223cc6767e23f38c57082d58ac86b61c1e29de6a66f75575185c6df5c5b124f02e8ae15d3e6cbef32e050302047c435bb500673065023100afdd2e22fefb8ff5fcda38c1c948c2af3d3ea26c9510655289d5292076810b0d686b5dc694c4a08b3ec54204e2206c3f023066e87932b74fbbfc694295fa9071de807a6e30ce9b77e9a4382e1f3d6165e8539c8bc5cd630e811770bb68b2b1ba3fe30302047c435bb5006730650230162b4b04efd06cb16c61c7f50772735ac1859a7842acea84d329df51b6dd7798a7e9be127c94bb50021d18a3678fa0eb023100cb45b1223dbb94e51959548b265bf5547768901a774a6368e8da2202f9ea67b1f9cd0a571170d78fd1c1bb0f506672b90302047c435bb50066306402305309ae05e075df57224fa872bf4792b02346239f8412da675f28a69a6b134600c797d949d86ffd35c279280ac5e1f55c0230460696ba45ab9e539bce312e589089247c85f945e78c46341a45d94b298a451d5c73a20830cc07f4a76a52e662cd19970302047c435bb50067306502303dba89bf123f799f1c98f4b04f23f39371ea05b0e6d1c6e0fc1ad0b0a4cf307965d42d6da9e39014beb6855d569d1b3e023100a05c7d94589273fb42d3981ae7c8940ada4459d1792adc08d82027ae37ac90df60f95827fd5b0ef44052d866722fa4d90302047c435bb50067306502300536fe1395726c91e7370ec3062813860b330d4e183f2970e5ec38ce0b0252fcf86faca11d97bf55430fa7c44112c97d023100d4ed14e8b8d34e605dc4d456d2c9cfd5ccb494c8552c313a4f5d1e1f9a63ee5eedfb9e3686d4eaa19b1926715b3b183f0302047c435bb500683066023100dc9e5edc435e22eea4fab4874a08e0c40a5a8145519d8f70018797872e80aad69d3ad615d26847c474771c4ec8bbcb71023100e4ba030f92f99efaa0d62434e6f8e8f5592fe2dde3169ee6a76bec38515772174a103bc80ea64ddaa692f9f68109473a0302047c435bb500673065023028f3df6d62b91b0ce625731f02e2c9a780c2b2a3b5bcd5d0833b74b7af541041e6c0f96890382a80f380fd23a8faaa170231008b358c80c13037775545be9abdc1b67c075df3ee6b779de2594501a351cda2c427658c27b032f1c074a64ad5dd0141980302047c435bb500683066023100e25e0d63a3ba35a22cb6c22cbcbdceb61cea74b0bbd0eee731641d7d0dd2467885f496c3b6d4b5ec889c47a66cb3121f023100c10f21c5d5c819a475f20061badc9b3821db810e66c6f8173c8d50068d9ea33d5eb53c8dd571bde9607359ac42c280990302047c435bb50067306502303986f5f95308d8cd14a9d985033270aaa9823ef2d9e2023f3153ddfbc94bc981fc0cb8e19060a5c279b8b1d37bc2787f023100ec2dc0d1053f6d31cb964b95b02f31fa3777830e849e181748c5a8d0154a8d70f3d980fd46b1e882c27ae65b1faa31380302047c435bb5006730650230683394a3f0c71e718309fad2c61b6f55ca73290e08c8b49f7bf1f29c60e6cfde3d4af54cfcfa46b8dd16e8890666e8af023100a4775f11d3d5b1efadc3faf7fd0e5a64e33a7d50488cb1d773169c52b1ee81cfc2016961bd7bace6a2c3b268e91082250302047c435bb500673065023038ebfd3b987bef80bcf30d663a284da152b8cbf4dee154c3b8177591ed8101abea5737c8fd66ca796e024461131dc541023100bcbc810441726c1d8a2c01e33e040fbf721a9223fef4f79e05157e0d43fc10f430267f76dc02d038cc3370117dd01a1b0302047c435bb50066306402303e9145df37626462d51f498f78144451940347d2465b6f8e280e201c9a8a8faef8e3aef1ec6bc665ddef09c1baf96663023032027c6dc3600683dedc664047c2038f00724c06a115b945e3bf5f6efbc1189cd959118345e71dded0319c1e499396980302047c435bb50066306402301fdef047822162367895240e9ebb05821377a02864edbe6aeb3e4a4bd9f1836d86b30f7145d18c1c25a4f0e5ca05f151023061279ef1db237dc35ec3f34c02b62c59a8fffce6d678379b55fb204bdcc9697365c419438b9c09ff7e0c7e3b84ab9e3f0302047c435bb500663064023071b6a8a1dad2cefb320ffee6493249e98f3003fe3b068d6f8526b7597280ba2a142a2e6e644dc385da00be0ec92ec35d02301f00520253015021243faf0b09268a8a27d0f0de4866f77fe70f7f13a9303b26602c45a6ef3e4346b09a771e78f3eccf0302047c435bb50066306402305a91c303d407d3b72a9a4f5ccbd28cfc6b3dd4b2aea2bba02faae18a138a8bd021e7469ea7ceecff33e66fea7770f5af023034a170a5a689e77e1b0e047f25db3ff0b9cc02acbba358394d9b03e1dc2498a7f6ebb2538d96e4b656b6c146c73248700302047c435bb500683066023100e7880c77f49d0e72a94fd72b2c5c8332ba3e2db219955b94f93b9b74d53c0c5533188d122bbf22754f58653e116d25d9023100869851e2be81488ddc6cc9249a295ec6afaeb0626f2bbb570e4748536af3216dab970eb5b6e2b2567178564f9cd92d9c0302047c435bb50066306402306c94e0bea39bd37db2c79e830669d9625cb59615a83deaf59aaeaf49df7ab22cde7f08caa4d3e383a3b6a71745c5aa4c02306cb47cafbe990899eb3ca010dabc65991374bdd2b4f782e05360f0cdce7667e8d3a86a2d1d1314045d66305bda768e190302047c435bb500683066023100cbd1e468adaa7ceb12e19ba38e17f9b983459f7a771bbe97455eea4ec0f70f79a4f0f16ea27184118051105f8522e9c7023100b4d2150702616284d81a61c99300d56f555d5c15ebeb228cf3259273a88d3108a8e6fb52e2e77d6618642418e9bd936f0302047c435bb500673065023025a1a27835e1902fd59e263a0f8301df5bae23d5ef77a369edaae8616fc93455c8c90f0debf75a06f7f4058cd4b3b9e1023100f95e01480c2a3d2304641b06d1a509aec39b074a8ee7409b845fcf814b2c51141eb6db5b0e1f71fd36b10838580e0a710302047c435bb5006730650230721f0c09b5e8a00c97af1de611429b3b35eab2f22e90c046bf43e81f4eb16130a4709a7a6cbac01d7c26ed630c9932b9023100c5ce6804b02b71335f2fa092a7cdc0b4aa11ebe7665a8515f1f5217362abbac405c7d627a958fed280561ff320477d840302047c435bb500683066023100d2e910f5f1e7306411f3157700cedc88117878c9538334f92b45a9fb8edf39a329b838467922fac5eb4422ece0b5a50e0231008b867c592aedb089bc7ffdaf044ba77a463d36878a27e91ae5a77c505081fbf664ddd226962411e6a4a18ff784d42b820302047c435bb500683066023100fed06461f084e43e24152aa8831fd900d35133a72d8def4aa7a416e4685cc3377ca6a6d235342eaa67a33706a8f7d246023100c8ae758ac4b5446ae3c4e37b5041797ad0f755cae42aff5f59b10ef8a36fd922c9b1115724deba45013b46a70412f3640302047c435bb50066306402302e0cf3573666dd6041baaf643b007971dd9892b6270be3bff07676e4d114f374e07be9ea16e6f5435073bf88a85d290b023018bb6a3935cd4817830dad9639f6257269dd54678a9d97cc4f7a40f002216e60c744b0971a24642f9b25573f17f60ad20302047c435bb500673065023100f5c1cc6aef283cbee1cc462098dfdc0a8f58b2b3ce7d4fb90a1feca0384409e3ffbf112350ae18b2b2ad6489615b6ec702306d897f39d9fafeff15d6cb4b23fe31d9566ff5004783597520529d9ba1efe43aff11aabeffce716acb3aa729a643c3510302047c435bb5006830660231008459b44e90bca19a2653b52ba3d2285980b05a2dfc02994be7ddb130516115d04b7f8937cc75d40286a4830d2f1f0ccc023100979abf5b776d9ae5d7aa4944d2f34ecc5300f6871f71eb1499e04a928fcc7ea5e0d10c7149744dd5290688c2d5efc35b0302047c435bb50068306602310082f88168a60a994bbc6819e34400a0c7d779229497c09b29f0884ce9ea34b7f4bb0c09cb94b4a0ec9859d80e3a037986023100cbb7c85a7aa2406e3ba9e21cf1afbf87034ce4560f64ff9a9a0c2c0f0964beed0cc7cd88959fa0290e0dac9669608baa0302047c435bb50066306402300eba8714fcea7acefc77d6585042638d32d1ad187a0317e77e4d0f30429e8c8125ad548f80528637a108a7fc7631f0e4023043ecf2fa1112cdc42018dae326a34d7afde5b7adea5b87a89be2f1d42d34be359364d0660e673f2b5d556ca6f19da5dd0302047c435bb500683066023100a9b88cad07b31d59fba1efe6955c12b2edeed1cdcdf7b55c4a4a5a64885a511e7ed6db7ed7acd3b49f2e87fa97f758f7023100ce7e1cbe3f8be6ac4854d3b2379b3fc7c4f57eaffef31ea9c2e166aa5bb838b611e179c137a21712c615b35dadd826570302047c435bb500663064023050b89bf0cfae5b21f3149514240e700af63bd0b5516e4d7d631f3cb02e227afe45530bac4a7b37d23ed93a587da02ceb02300fc8b73eff48e1fe2b51de61054a85ef554a53d94400e74bee3fbcec6f13826f3d7d34e58326772ad53abbff2821fc220302047c435bb500673065023100ad58c065fc43304961f4cce4575ccae0ffbcc312707a874e6c00af6151159a5990fffde6bd1868b7ef51cfa8d21d8b2e0230070a036aafab2a6abdf90a0bd94d3ccdb2bccb9cfc806b25d42dec2a0efc49a955827f5d51cefd2fcb8f51e02d49d3340302047c435bb50066306402307bd95e3f324d58b4ea26e9aacf55bb23851ba19fe9624b69a4be317f8aea65b151b5d7528d0b790f8338c8d038bed075023040df9c2be57107a54adcdf36ff2ffa2b0739e033aed52d958e2cb2588a0f4ae8e5c0a656d7c1301295ac70d1afa6712a0302047c435bb50067306502305cc9bb0ddfae3d863eb4f23c1bab1f79f04740a4de9f830d4c9c964f0c18da99bfdb9fc0d224f913bffc011b43ad5e43023100a0493f6c315c62f52f9b77c0777c36440f94e29e29b88ad55b7b3e6161056f0375f818057b13b2c5207107f00e4095a50302047c435bb500673065023100f7e4a7d099afd7f5df68f79a864257446ec26905453bff78756756e6407143ce51c54350a024c9e1571bf5a580166d3a02304d86b839e3806a940b9dd735e4f41a25b27eaefc743d6f1dafa57b0de03dcb56c5cbd09f6dc7a6a8aa601e488781d62a0302047c435bb500663064023048e5fba39fbe36d85a1090c10cc32749a1e6560e4fd06e91e4e0ad58f025c24c179966f031a02ce4f8fa4e99e4872e5c02305414ea5a116462d77127b256943c854c8079d932f6f16d97678f62513b8a81034f126e7c6e1018aab51d98693a9b64500302047c435bb500683066023100800490ec5df7ff328774e8e1b452ed7a962304bdff1bf905a32f3e99b40cc76b504bec60dc7c7b2f85ce3216a5efd356023100b20ecfa24565b1d6c66ee788863cb5e7d578589c0d844965c69b14fa2f9ac1763367aa59745280cb81333896bf7cc6fe0302047c435bb500683066023100e1c7fe38cefc567c76271eb5bbbc92cdd5811953712d09837bd3728381a3da8cc3dd2209aa404dd1c20d4a813e58cf77023100f1e166edc04fb5ff58ac9b5394b0b199674de9e62d654207d893c0d6c80769bffa81aec089587b477c4a8f24a81a43610302047c435bb50068306602310080fc4e0166e7e2ce345b1694177f1bad1a403830ef8d9accdd5adb00b43ade7ea83785931d891e88806f1eb9cd0a7a4e023100c5862d10c854cb44bb682ab31d0bf28c34e5362d9a4c4a55899b56670b6c20d0c963bc5a8e1bfa6e2ab7bde2f2155c3b0302047c435bb5006830660231009943dc208b2f81720155037d19a0e6d2f0517894fea22270bf2e317fec3eed7ea267e9ff0413da337dc6558eeb2ea7e0023100b693bbe35f30c7caed6ffce0c1d3703417152afaa6f563e6cf8f979abbbd1ea4cc38085fbd50c36dfd871e1db87fbf380302047c435bb500663064023014a555e6d8f99aa80d876bb1602d9a39f064d763e57d9b6061f06ec84e06a484ab498e1842656dfa2cae80ca974a1c9b02304dda37e502f8ea3b619d3b3570ae04836791c75a26ac3a3a12a7987d60513cdcef8128b525dd224260c8683f6f09c41c0302047c435bb500683066023100c589a552859ce4dd7c337cdd405fc13b2b446ef521da844d7407d912bdd2ed65ac5959fcac453a9ac769cc25a2903759023100a360ca535e07eac1c9a5af5959f9416004849501979aab45d14783605adb092cb3a729d13b29569e1fa5df0f693790520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310084af6fee28cac14c0fecd7dedffd238d04c6598763348dcf0cd6432be07fa01da546aec94f8f335d13192df98e137907023100ef9be1521ac2c17fd6639e0136cb277c96925cdb68c647b3c662b4532d6c282f171444843a217c386083c332874c09cd0302047c435bb500683066023100cdba15e2dd56bbee15d5cd4259d7b9b3f2c0f0e59acab1ca955a5091d8f3cc6b4482a75e699ff3d56a84c4b3b8079b6002310083d5b35bb398adadec36022b19bf33b6c35d0ce16ea899075f1fc4bc14f39144df51d58d4c08cbf3f978a221110f91740302047c435bb500673065023100bcf0535b37281f7a06a5328e2975d5a982703c7f3e85bb7acc77a3e771f969cd11da8a33442e7b6f3befb31823fbf14f02302816c72eddb1660fbba8c5cbf1902716f4327dd50ed4b4093a436ad1cf42b193395d3dd8ac28bd3bd65b39cd129fb2980302047c435bb500663064023002126dcde2530f3498904048bba8a88e76f16af50eab6d4126392fd515b570cc1174f3652cc233e5f2b460a74947ba380230310cbe1f7d79a8787e462a959aec2a837a7419a4f1451dbd5efb55f3668db87b940fc1dbea15e761faa04a53d015b6290302047c435bb50067306502302c51c1456f609526e1728406ee2d7f6599c2c50b5cc9bce9e14b487812f207b2a53f0e655e0b9dffd136367feeea9541023100b97e1e134d5b3fa2ccf73d5445a0886729656dcc8e6cfc81f35ad4b1a0f2e0aff02a6525ca38d43c68367fc1ba75625f0302047c435bb5006730650231009723c9dc90d8b2152282b55072d94113d77bf515b0a0b89caef38561cdd7e13f2ea91e95a3b5bf12297abadc6bff55490230523fd62691b100b58df69a4edacf3c46aa16c98a79340527dd2e11adcad2e78b23ac9bc5d94e08298ab6092a9c50a38b0302047c435bb500673065023010c44e546c941e24fe6068a866557386d70d352a8f156074b90e75ec78bbccc272f22afe0e20697bb6887a4f57cd0092023100f663ec0d237e0996f79e3d8665b4f6267b8ede3062ff4799f773f08aee2388b30b5c88bb0f96dd321418e88900fd54970302047c435bb5006830660231009e0e0c717b34c981bc1ac001776955b188063a232fba102bb419a924ed471fd44d772cace74745089db70639b4831184023100c114327108de6417d89ac741bb0c39397a3a7c90b1b27ae15b757ce2c269d7e3cb0503e78329b0162764cd4b621131380302047c435bb5006630640230617fcd5300725b17cd18bd8563fe8b6ed0c986f27ea8b11b79b2fee5101c342532de0f565ae6bda98dab9a6b11174b6d0230108f62caaedfb818c2455b2b692a456122d691ac1b3ac0b80a5661c72a36b968a7f2bebdcc3785f3a12034c5330c70ac0302047c435bb500673065023100c395cde63d27131eea1be1532b9a68426852c40eda4646e27be2456ea80c320272b5d4b2e3f14b2847bdb649e2d4fcfd02306ec7ec88ff1e3f2ed6b83e19fcf8c283dc66b6ffd37186a39a03ffb7f7c4d3c85ce0a9fec0d063120bbbd0e55d36b6340302047c435bb50067306502300198bdc5c0e146e5e5bd8357dd070862c42b72a17d85638d550a57fdd468810c133c5c5af7850eaef17ea261565151d6023100fd42fffb11a015241c1a37e079d06741e73dc8995f2f0ad3bbcb8acd05a6a8a246ddcb11e7552dc2e050b73f07f097280302047c435bb500673065023044b37cb497cfc55d151f898819a4c87be2e36284254b0de7c8701a07d66fa5755bcf7caac62092e8f36a3b04d9d98df102310089cd07018ef41217005c4a08716aa8f11c3c64a4d59c33c1fc0dcf86cb8a9e9edc1c22a6a67e1899955e92f8d81b36300302047c435bb50066306402305fcbd76c60c26e26316e91a969d896c05cb18af23f8c255735ddc2e75c4d40aaa47ad3e2b16cb9f6a13d46d3438c56b3023065148203a2e33f2f1aa55e8a05a5348d3d773bfe9e31552821b5ee8580eba247d85a4fbff3a654dbd6a493bcd99133bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306731826d9ecbd1c8b927a9aca26804e68819aac96f2626f8d9e2dcc946ed0693fa88c4c9ae65c9fbb2864c131ab32ce2023100f7fe7b180724d52816001451ffee54c73bf5db70c7e6108a25b4ea6e2075abc97581aa00b920ecf26b46be82008deed60302047c435bb500663064023057386aa93ad90ca2a842a279aa4b7b8480c3507e37fe63abd97f796844c93a618e9637bdff296243c325594a9fa87ab2023008c7cb8e429c39301e77bf90dcfec7eeb1ef564cdd479403fc99b01db5157d20557af3a324d50bf1057113da3721ff040302047c435bb50067306502301fa9b690298c90caf99e29793dc8a72ee3c59a3092875dd6b6db245f2e6e53baaa524c310544d7bab3b3f5a7e6530a460231008cd980b23d859ca33f83fd711a3d0af31fd99fa07b9559b8dfc1443171c3a440b5dd0bcb5284ee5c267f362fefdf022a0302047c435bb500673065023020f7b14cdf87d82f13df43765d0aebbae32d3c0e2a1a018a01679210d976197c5d81928d573f79d70217d37749bb9359023100cc64281208132b816af41822f7c88db0016518e77f6f7fc57df27f5288e8f788e7f3eac77d61f9f067c5b000c80e41470302047c435bb50067306502310090154c71716ec6f1fc2f98133d05b5792ecf2a1d79f78c9d8266acfc0a1d9444a504785f8b09ccb594d71dcec039752302302c178d7bececc67b969ac60fe4e27ac44c261444e19eb6006dce12dc44cee1e0a8b54357fd0dee758b813db96eea864c0302047c435bb500683066023100af6328a914de15460c325f4555a5d04cd8501da8229fc61dc9e5fdf538117ae71bd3fb6671ad2d72dcd02c22317f5fd6023100e1579f26dd734483f5cbeaf24995f194ee8394d84aa0ce1162de422eab4c005a20540c5343486930114260c122b7b08a0302047c435bb5006730650230362a56761a21e5a48e7d1510377793878cd85737d4136621c55918a697461893023022db20c9af148b6dbcb4424a7327023100ccaa8ca36db6848ad5fda1e7af4255b7892038ec3bf502b69c049572c55938a43b9fdae4025a30913340fe0f820596a10302047c435bb50067306502300479d8719931b10ca64547e373d81caa602869acfa9e399adacf01a9e973fa3b6df9866336d3bfc9890855687be87937023100d2f592a86ae5aaa08065db56a0c44c5b8e1657c5d9e49f19a5c7da619de561d9214be6f27c8b4a9b487f3ea38db1215c0302047c435bb500683066023100f5cb4c34bb3662514e4f663ecbe4eaaaf99672c9a9746397601ecaa11a750af6ac2c7ced8c026d65cad3a31563163547023100bff90ebe9a5847c089c2b8ad63c7849fb0810cac77348b9b6980560e83255d6908475932e5ef7275103bc089af21cca00302047c435bb500683066023100eb16f2f9fa5a2782a53d704d17fff07b89de92aadb581ef7c45c822a1894ea2cea980294c7279a496171b72f1e8caa5e023100fbbbb246ce8079ba8932a860b453e7d446be9560d87ef30f5e523be7ad9c65e763fd3da66fd0491af384158fe48c58520302047c435bb5006730650231009362490f9b734d5bd676b36c4a58988884b71f82b687c1bb9c3c140ff9779df3bf5c12bb08d25824e5167fe3c62e32ac02301030f304c94459e5ce77ed9019a06ef8d28f0225e04697e6d943197ef2675bde8f3129de113fe949681ee46acf463e9d0302047c435bb500683066023100ca520b974fb74a7b01350819654ca4a51c3c8ae3f703e0edcb5e581cdb4e1cfb1444f9f1641596e7f09bd8d31f2fe5b002310090e478bf288446ebd609221c6f341ab895b59d428cef20db1046838bea92910cbc4419d048fce006f4bd0f64eae93f0e0302047c435bb5006730650231009c4417dd47bde54063b588ded5d688e1d90a2bdb25dff0c4834aa84713472047cd81163aefcc5ca8d413bd8a0b13eea7023071620a4c4cf2ea64f1f750a62ff4526392e3fea79cae03083c0dbe0fdb4b33683544d0b367ecb3c4e8cb00125e7e3d3c0302047c435bb500663064023065bfdd9c391e112a040967976b528919d6447123a1b26c5a9bf436623b88e36262185d60975110b6762eb8bc78146575023054637d56ea72bc6b95837e29e7980e379c13a037e22c94c7945ab87aa41484d632fc7f1e4b1669767fcb99cb6083d33d0302047c435bb50066306402304127958c2aae57758c659a969f0a25bf9d4521bd007d99bfc2fe3caa2fc3a805f93a67d2d0aac59cdec050e8e50509fa02303cbfafc031fcacb4286cb3d5d5ebcd37847b1248dfa6cec4d0d5c656a6f8173e1bd8d3b22944301bc68a0a4c28d807130302047c435bb500673065023002e9f9584a81c3aa4e1ecf67d15f10af1e8eb08bdeb4d2557d63dd443c0a0429ad6b3caa4dbaa84b0fe3ae12bfb84018023100cea5cd23f5d6e6ac35d8cada5f3d6d00a07c32e9e566479418cccc2bcdc99e65f694ffeb20d0c1d8dbc96f06ae6a823b0302047c435bb500673065023100ebbd2a7fe5cb715fc4a58125eb806c69d6f6a6700f45588e0eda2608e6c54abc05d40cc49477e22c75c031aece7db38c023062be8902105855bdcac3c9fbe046700352ce0c5fdea0fa0556a9fc12fa508c6282120dbc70fb0e0416e60974a4b7d8d80302047c435bb50067306502301c0f3ae1d7874d74f82690b40b9fb75555ec4b06399389b957b7d0c6e73af908ad74c58ef88e6d2350b44bc9b9e02142023100a24eb0fce0537cc173abf4034d640d2ccc4604930f04554d2d5fa2c3c977bc89e235d577df0cad1dc068feae2fd8e9d20302047c435bb500663064023075a3c2abd44a4b51d2a16887d859c912fbff2afb5fee777fe4123b86caded85975873fed8ac9c1c8b9910594c07c4c210230457e2732ee752917bd82e37cbdf514984fd1994bb0f26a26fb51004857f47c751095562baa4754f4b5f07734c8b1b5fc0302047c435bb5006630640230645a4279e4c60757dfe3e8a56c5d19ac950c33f313c6a8482627867b5012dcbafbd6f1be7c2a86501b595364c18099df02303754e05baf3449242b4de9d31c53a9d5996187876d4216082beaf26923cada1ceb443cd7133fcb4d1720ad20d101a37c0302047c435bb500673065023100c62cb80ef7772ef1829a6a242c4a71e890b69ad110e95e89520ce73e292f9a915b100fc52eaee7fddf9f94dcf681671802303ade823d555c11812a062e144ef577df91f98ab80e44a5915e629da58568dd3255fb7a96858e5e9c0f72ae6a9c68c6fb0302047c435bb500673065023041ec7924755a2d427fa78a2fdded53f931b32dd051e755267ad9ebbff28cfa4ccec01df5b12df327eed9fa58b9ebff97023100b201889023e58a48b5bae87c02dd1712d11cc0e8faf7aa96c511bcc2eb5e01cabfe666acba1e12755a55a7ac8c35f47c0302047c435bb500673065023100c5f1cfe3891ec7676c5a653d2437adfa7f204d5b0c6b201ea0f5d67da9cd337d74d17582a274978e33262078ebb90c5702300f31f35ad0b651bd3b1f5776571fa5d096ee6ff108ddcb5a50aa090290a59c5a94a22301def33d9d4b1152fd71d5c2520302047c435bb50066306402304be1a3854457c42513147e0498b175d669e10705c9300d2a6f01fe532b12aa6fc566280648e7a6072a2d3cccaeca0056023043bd63796301ea2c46f108a785645b2b056b13adeb583a47ee2217d74533fdefb0d8e4c3f4fa8e314e3fb56c75cdbce10302047c435bb500683066023100b984afcdf96852bc3501b86ae76e8e13fbffed8736c0428ccc4e3b53b4b234d3307f94d792a806b8e28e301bfca22141023100aa37f05aa1222473ddd317326f4b4e824fab25715d353b7c8209d0eaf9aac5d250fa3482a28411747890ce99dfe3c42c0302047c435bb50067306502307d740307c3fb223bc72f7d48678345cc87223ddc2bf942f3afde452e3e18fa050e992eeeda7d38c87ed5296eb0076867023100adcec72c8faa45790e07e3f3c0c2e73b242d43f03ae7c8cd33b3ae3930acc2e126e4268bf1ba1ecd6c6722b318b51b520302047c435bb5006630640230536c2fef19b8265775488ce6ab373915ecef46b8de173dc56338efed52f2828fd18e983ca5708b268a229c9e30259ebf02307fde0a88acc8d8ac164677f71b88b5ce72d47c3ea13f465c49173322a272e677eed4e3a99b063e53c02423f722a612410302047c435bb50067306502305e6744d26e2489c3031e7b334f0c6d0c1e520999a48bb7de58a8ca83ca7e5f7ea8c1772dca4a4a54051cf923595b3eee023100d6279132916ada5a59085c15d3ae81d62183551d26a830a34c00d69acd6dc4cfa5cdf1d990861e1a9912bdd598e611e60302047c435bb5006830660231009e2383d217eb94a7a85ed03c9b512ac6f7b4dd19428767f94a9e2ea24958a57bc0e92dc859b6714f17ae45e519707788023100928cf3eba2fa3b5930d0b0e4c28d6e063eae3de689ad383297fba3389e1a8e065ea23945d03c6fda863ed90c9f07573e0302047c435bb500683066023100d444598d03b5805834cdfa2bd4fdf22a4558510c49b040926bb2dc64b2b6d9efad7d251142c76b6777272d58fa7994b1023100e3d27029fbbbaa464d734a1e459ca1846c5ac93e828a57873f456ee8bafe9b609e9fd88e2bc873c1a607d33ca33abfc60302047c435bb50066306402306b1e2ce8c0740a1409acd0ba7a143ac6a0494966f7c466341f70bc73d108402c7e25caa59ead1eabf7f2440dddd458870230299fd43532a95d72484675daaaf6ad6d29daf10eab9712d4bb67b6c2c628114704c76355b69cbca0a8736d18f35ff1350302047c435bb500683066023100fa92b3385eb4bd9c289e1b8d3241b5b9a9899c84c6797b7b0da24fc812a2dd21f71aa536b39080a4c4e74520adf33145023100a0428bddcd293d80333191e8cb78ec46a45d8cc4a6709354df5d0a1cf608a12736a43a63559de02116aba2446b89872b0302047c435bb5006730650230785cd56e7d726f9924ab549de59b99b7417b0f5cedfbe6c62ff3de62edd4c6a213262361087c5b0572a1ce714ec7746e023100f0f731a2fa1a4135985c29d1f4da7ff173af5852388243c952d86f59e95472521a963cf5283489b87b26e3875afd4b1a0302047c435bb500673065023100991563b9384cee853d02355593ff447d472698463e02f2accf1bd0eb057a3e9b140283442adcbaa3b1239129b996793402300618ab516b76aa1c864190211581d31e5affb08bd161c4c1ce33f0fd9d5050df669152c47f5a961101d241d16049afdf0302047c435bb5006630640230015c5f47a0ea17c68452b009dc6a7cea17b0646798ad0fde43e741d897a97d92eb2715a80a0cbe784565ca35676767d102300dacdc075ef12b3e8ddcbc44f5a4aba8b431446c943131159da5e28e1d6512178cffeb90268d881f76603e4464f1e23c0302047c435bb500673065023100a134c65790f779bc40afc1a595ebc9a0c9b9176bc77c9b89c1ddce0815afdb93dc2e84b088617a9c441181df673ccebe0230391e42ed4736d546db4e5b8adfabe72ff3f91c5ffc96703fe71436b54b9254ae46eb5f579177bbf360a54f3b76b2eec90302047c435bb5006830660231009d168db658fd45931d10e48edd5b10f01f8b453e1cdc50dd983b5090a09e864f5bf50b4526d03181a25870bbec498e4402310092b2f7395d3c6fbec7051e609c93cafd18f382ece006560cd256f67cedea8cd16e08052b48e3f61586d6cff1e7c981300302047c435bb500673065023030c578c45384d95da7841fd53819297c5010df4e90ed0e563fce903a22557af3327212da4bb61b152eab9fb5ba5d51bb023100a48ab22a4d4fe0d739595f2f3cde6c0dc9b2950d2ee8f37e98229ee528b8cff883673f74dfebfc7fd350db64c8f55acd0302047c435bb500683066023100b7b5d4f6d8ca5c95164f7c22fec7b4a8946b23dd08b949a956839ab9decd3b0ad93d778405d51f32f730c11e8a6aa64d023100ba4dba455a17ebf529dada2af6d6d7d3eed29f7457a6b1eaa3b5ebeef2cddb90dc21c3631b9726c55ddbd8a5f44471550302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023020ba7380fce656e9d087059dc925f728cc4a6f5d9048a88252327541ee94eb64461bed24ee6a45ec78fd554aa4a7769a023100825ed7024fad53f12a6ac866f6d3fa6d5370401a00fd5f316952e64a3c9b55695a3f051e7a271d0b04096c8902c39ea00302047c435bb500683066023100b5d360cb43d5b3391ebe3c4c87631d5d8a8a5df98c74214589655ba6f06cc0fa5b758fb2fcc38f3025579e6579f91e95023100e29df464ed5a99af5a3180139e2cfe44675eea2f075d48fc273f0a275adc0beddcd3c3eea39ec9722331a1a266d262870302047c435bb500683066023100dd470d94344131f079f58fcc0c3f28000fb9f466f7d715009a0b6e7dec05c3fc37d19d0473de4433a619d40c3daa2d56023100ae8852f666a9d3b3a83019b2ee3f19f363fff643e967dbfd24fb327214fbac4720f1c3cca810f2b6e42ba865020b33d00302047c435bb50067306502302263ec8da9c99be6a4a88ca7225ede714aa6749c360b744f9fd412e7c937d6fc831db82738fcce33d6ab2ab1ca1ae0f8023100d29c71b59c369471f15601e26b5d891f2c3d8abbae4e33f0da1048a29354eb93c3bd39fc08a1dddd159bcf9a3b502e3b0302047c435bb50066306402307a895abab982fd86393bff0e3ccd973e526dd511caf942746b2cd8ae1fae9ed2d00720be5cc3d3b7e7d09e57088f283502301fad6f723420759a2a036a8bb4aa2d298c620a21eab9572ff1d138f8e7abf94536f338dc26e2b13c32f526ec524208d20302047c435bb500673065023100bd1ec84e592213be92bcef528189af2cee2efeb489d8b64239673b08bed7b33ac4dd7d9174a13089f3cfe164a667dd6c02305ecfb293e7da4638a142bbd61327e45ce8c1ba253a33edafeca8ae2716eae564e402b3abb58c5b56900a37bdc2b7b3b20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f1bb379c5a7b3022d387a8b31fbe6116ee36af6341549c7f910cf041178f4e3afa6dc707c1f4711cd3ce48485d140a1b023100d408a5bd8d637d4f9f2574585d215653da7b8c3fa854d900a09074d76ef03464ca14bde62019114c334204ee044cd5990302047c435bb50067306502310095c2a1316f9e74a6a3cb7046cadb7c9d1e9e8995516d8dd583f021359a175fca0f5d4eb3d0e880d4cc26f06b727ac1c20230125f86e5acefa5f704e3dfe6159e6f41e4fa9b54737a84129a2515082b944c4725a3cfe8e6e90c6ea288fa299355a26b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230203ac297e6947e110637fad574d98a1700f328026cf9c7634b06eb1303aa07c373e640e2aa6e2473e61f4f3921ae348002306c0284bf5cdedd32c31d1280493a652f9793ec958736929ffd42cd2c96b523fbe224e4da649901cd3c109b6d5e70b0f70302047c435bb500683066023100f52deed7aaf7d5e48be2490a4d2c8f900fb02ce4d362c6edc3dbb8c2e6f64b89e106d1e81bbd43a799678c59904de1b402310085ee70f8bdcb581175b6cf29768f60a2aa31b8db1fd5cbefe712c59adaf2cdb6eb6893b5dc796019a4ac6e7b2b6df10d0302047c435bb500683066023100c88602fabba39277a7adef4173404604fffe709790bbb0462fc20b1c2c5657c098d2a851a31cbb07f6e88a5d6af4dc15023100e126ea0e6e953e88bc489d395dc32e1b8578b2df2282c82c28f7d3aef410744a0f40831b09bfce4e8424e5aac9450b920302047c435bb500673065023100e021dfa50a627040073b27eaf6bb2e6253cf1ab9a799a521c6b9da3f650b79451b2562f474c789d193dda097f9844e62023014f06bf68826a7f505f79795e3b00c2e079ccf2944e3d683bb0408dd475de875325611b45ea249a4513dc5183fe6bd410302047c435bb500683066023100c8b3ff197d0250e0a12a917583b48bfe69102ac4adec9c979c59f4d82de177c1fcc2c1162e67490358e3965adfa2ab240231009fa65e346c16a181ca513ed25ccae681a8641c28fa3af8a25018d2a2c925d98d0183c8ffcd36076e8fe0ffb3606c69210302047c435bb5006630640230039a55f797a66ed208fd2ffb9389a8a2025c68e9358dd306ebcd36d62e3bcca229ede73ec499fe8d25c4a5d9cb113b27023035aee8298fb0b28b44d1fae28c7db9e893b3c112e6b6c3c43e4e25de5024572ea45f6b059c63334e27a0857e41d1e5ee0302047c435bb500673065023100830b3b48d579fa8a34c765495af4b080d21b5a4ed3fad1f22621641e7a239299034cd6b31708146409db1e5afa984cae02303ed5f75d69e344143094988928c7652a5a96126bf873e75d5c53653766c254f637b8c67ec1ceb4d73b2cff10d126dcce0302047c435bb50066306402306fd210f5e0c68364cd00c37d9eee5ac6d891f9736d3151022ddb87cbe5ab32398f5c8e89b1c2dc1559111b3eb2d894e80230745f9e38a07edf20695be20f998e3f9f5bd6404016dd92c94a6dfdbaa5c81a0ddff33e8f49d63effd35a8264a98d77a50302047c435bb500673065023100dacb3a17d33f38eede9cf38fd714bde8a1767164abe3dcdc653a67e8dbef698f34d5959afc495e574e823901596acd9c02307d17334ae456efa8568f3ac7aee7e01b2edfb61fbe9f8ab66dd713220a34cdcc1de42f2b40bd2b48239b319007c852570302047c435bb50068306602310091608601aa51ea2f46bd2d245483121d56c33c83a33b60b8eb6148830a72e03bbb9b1cb2e21f067bd1f5416f58099d42023100ce0b8555933d19060a68ac5a5fdb96073fb4888acd9cd7234a3f43ffa01b8a21e0bff67051cce5a381473ca11cfb64fb0302047c435bb500663064023022a04353ab8756e18538ece76d2797c3e9fa3f22467c518db4780878c1211f6b22557fb0e24979ff82871c34a556e78902301d06293ddfc9e2b8ab110938a51c0c47f4d14f9d566f0b1d97a8c707c7d7d8c309e0b1763a79fcf33cec0006f68a0ec20302047c435bb500683066023100995696ac527903701f5b752faf6a9abf6e80e1bf2eac2198326b10fba6bdde4e3856fc3dcacb531a969436f8c20084f1023100d430c334e3bc2935df9d32742f2ef553041f7cd6fb3d9883b98a921a8a9df176561db3b6a694dc1470654e5e36ce5dc20302047c435bb500673065023100df23d8e2e9ac94ab0afcf65f04293a6e34c5dd0ce836eb2797e8fa5e20c5d800722fb07e39470c558a97db821ba453ee023014e3b76f5bf803d39390b2c38c52c6b413f3f98ff8d1de44f708f9ae550000b9a29c295f0fa77377f806630932c0f4530302047c435bb5006730650230639b2d9965f8a050c7950d86d99c7dd7a9c7cd4f5666803010c318b426af1bc4f1c5866d052035b6c32bad3755f414b70231008c8e245d0c4888924fae4ace9193bacaf8b08e9f08e039dc3785334db8534a4385cb31c7cfab90023051c8650fbe95a80302047c435bb5006730650231009013d466d19e9cc553f5b7e36f55534a8a98b8c67072cc394f8760cee6e4d1751c1c2785a84ff12a9a6df9f0e7de0a510230552282b19b5d9c9c34fc32d6c834ad677d63ec54f6f9a8f6f0a2abec72d92ba3fdddd186278226d234589a42c93673e60302047c435bb5006630640230038c4d3cdd475d4f798f3bedc6d5e38d710e1595fe6797f60f732e41b8f4ff1e8160241052b299df5af041c45f01e61a023016b0773c5c9b779a9822c0b2697b60114270e64a8f89c8ac640b1eca03206e1455b429669be2bb4ae9624ac6bc0f988b0302047c435bb500673065023100cd0b19eb0c7362060957e412379178a2aad4dfcee1275fceb957f4f7ed68c726698f6e5ed1ca3ae67998f10d81da51b90230448d4da0e3e17e139972fe151fba25a6115f67b177d626dab3b6774719f1b9d80f47cdf3cc792c1c0260d5cebc3c82bf0302047c435bb500673065023100b0f81d8a31dc6a577c6986f18c9163c5c7d0ac5c780546b2daec6b60798993aaff9f6b22c42bf16b9ec642253b1818a802301b215bf5c0af293e2d648112f1209c7d5e4d7a38969278ad9a307ced8df052a7b427d8766a9d5be4d6db2e9a2398307c0302047c435bb50067306502305e0916622965e18f25b7a509ddc3994d78517182a043c41d8ecbc25b23fdd7829e6d7259d1747447d824377aea322cd9023100d3284e93dcae363c0d415d525ce6c23534da8ff01f1fbb8faeb7e4b8e23c119b1d672170dff8e26c3b0f9e0b7030aae10302047c435bb5006630640230279803b72fad9b6c9335934673769a098611be14ed14e553028051ae03312b90a504562c6b5178f6a1d749f8ba6d772202302990e056dd6ed722ad97638fad77dfae1eae59e5527c98a46e0d6862cae84fce842c4d2ee4a35ede63ce76b1565cb5e60302047c435bb50066306402301d12619502e7fabe0fd3f3bc5a3dc34e535ae15589b8eef29267524bb38c961da89e98c53ec558afd6749a510abe5858023043787cf07ad27cd14a68c95d510eaccdf02e3935930aa9b190c446c7576d4fcb3fc95b002aca37e6e139b9fe7165d0950302047c435bb500663064023001dbe27bce3afc5d0eb06c1941a979a54db86288dc08ac8d1912eb3b9a5ab38c32993e5306d4a09f21e8d8734373333e0230081b8c88a6424f7e58d4e6b8c4d00ee5b88da2142f010d975e9111a3fb624dd85c9d20b27540af64d9017ded6c5b3cd20302047c435bb500683066023100928f9e41c172d7259859cbf8ab623e81d96c47a7a4890aa839768ef551f0f7729ec1c780489b9fee0176c1061125cccd023100d08901ccd24b2e6dd1ac5af43e3dd63dc39effe8b995ca2a36ffe972cdd579fc269c9c7341675bb4a191b2aa680f60b30302047c435bb50067306502306eecce79406dd0a0536514b03109aa97ff3363ae8db2cf4eba0446c87cd6c5f259b6c778e1df202c91c56d95410cb46f023100fa2dfc22c8f432804d1b2199b856cd777fca82fcb9d131e1c1639f6cd1b86d88fdfe4c1bdd8c3baeee1763063e92a5390302047c435bb5006630640230539846093fdfffda11b4c3ebf31ceec779f35d77a45a4457537d3514d9805235ec17920f487de69efdeab43cde3a3db0023045168571d52fedb7f7b587d265fa502d7cb3a8a0f21ac4ee94b049b86eb5947f701f406f6e83ac7ef7c339b416f8b3020302047c435bb500683066023100b4080af831b703b567d6c7053381c9d3d19a2b384b9dcec6253e7fb016ca893792e5ebe68a6bc39c575a63ef1238fd550231009daaebd9e134ac8ea481f0d9bd14d63fd4a228353bbb2efb3066dbe01d0bc415c72ff077dd5134a7ef0a0635923098ad0302047c435bb500683066023100a164995a9cc688dbb455fd66f39cfe040adeccdfa9ca91e95d80feb415401bfa2b46c44c8d0d77b18e1f6bd662c6955f023100836e46ff6ca8bccaf7de1df36dc7a81883e238d950fba13d5a6f55833fe9213fef297656dae9044127663394c06839ee0302047c435bb50067306502310086ee007b2d5a8a239176dfd4538b13c068684eef18966bc4182fe71784e4c7729412e2705a6f1ffdae0fffda7da4b3d70230046e84bc94f456d9a4c147b96a2fad9eba0b173c6a2197118dbefaaeee61b81d232c08830ab1575cf90008908812fcc00302047c435bb500673065023100ad12b48d864f72aaba6ac0c3f5a31d105e4f226e278ce4103f7562883dddb13330f03b7c76554a99c66d68bfb074adce0230557c973551adc5c7b8bfdb4bbdc1430c2930fffe93ec824a1c68f62756d99b41d48dd58634a3cb6b335394ce85db0d430302047c435bb50066306402305113767e3d678c22cfaf80b9fa6db11d8d16680e1c5ea9ebd8787b1b1873aa144dbee85bb7b0a65187226d72942c8e8a02304f30bf7e1d025fb2be6dc43dac1c99657467570fdbb2786b334600b554efbf8c8e2e70be82d581f0084a24816ba21b000302047c435bb5006630640230378ecc599da13a17a13a6b9b8cea2d9a7b154714f8acc744a8d182024b1035b676bbb4c0d191de3bbbab26b1b603090002306ecd012d5ef42a47e57ca69a676c1f68b4667be2f6336f13b61db7da97111f5320fa5a46ecc9852deb6961239fcda0530302047c435bb500683066023100db598bf90125256e16228b86536ca52609cb74644d30c5ec5d153f57b2d66ab2589c92bbc2212a7d16818a11fc691d30023100f24ac414aef002838e369a6c943cf1c55c9d3ab52c89e26ef6d6291aaf6457b020024783b66aa24fe96eaa0dea971edd0302047c435bb50066306402305c6e908a29ab6e26d1c7408eda031dc8e9d78e88f4383573ab168482255bbe9f644104b44f6be1b506390fc4a937a5c9023019a91941e94043da404c163fa5ad20db277a64adc4bd544b9766369dd7b4c775a2d302428f9a7488cc2cc6d678951a790302047c435bb50068306602310080ccb211aefcf1925193d2b72bff2f7b1f4166a8f120cd138788939d57be118e3f37ca9e7da26f88f6c65287c008054d023100daf7a4bf98a5859a8d71a9902924811af3336357986ef9f812e63be546edc5f8782e5f372f3ada6c7ba5364db2f436040302047c435bb500673065023100e1b914df9021fc0b12a60c417e0711dedb0273019b3fa1fe75d3b97d36c043b2cca03dd5e61886c9916ad1a4b9ac7557023040e5965a76906e2b1ff6d7e491ada1e213185cce940aba4dd568046af535a0a640fcd9c46accdc6efda6f6d336d016cd0302047c435bb500683066023100e9f3709daa8aa674de96eeb04ddcb9dbd5c9cbc926205016e179a97a56a6e367f3a43d1d8960d5a6840a960c9120820b023100f9b01e2d54a30141f71c2158f2abfc9422ea258bd6409ca2a8ce847ddc34dc3becfa294f3a139d0f13aa69eafaef19d10302047c435bb500683066023100d790e43dc5c10ca629e2e3349520b28f5812f319cea71b6dcb36c18138f3e3245cedb14ffb8e96ccb31678c0c3745bb1023100f6eef6a04a3ea9ce59b183e2bf6d77c81432f845760039b61617936e9fe6a68cd13c2107bf363ae4b4a544f77b2ce7300302047c435bb500673065023100fc9c153b6cbc43367f9a7665d316b08ab452afd017de5f0da0624ee9b13482b5375bf9ae6fb72756852d135f2fc3f6e802301068c376858542a47d2251a1c010a81f178a507ef6c928e4f6c5b0cc22dedca9bfcb2a215fa39ccafaf7b015169c723b0302047c435bb500673065023043bbef089548558d8b145694e1d93c2d5c835b10601ae880a47862f7265b4bab0559dd551fc8b39247bbf136e00e1ccd023100c9b8af09c68b5f228e9d698ace02c9e8306ff00ec5b3ead67f9ada412ac44fb436a62605441bb6452920a11e06eb4fb20302047c435bb500673065023100b16fe541166804aa50efc32ef9476f9b53ac4c409752c7e7bb9d6457e3bfe11c363bb073d4efe25c707350ca68cc93da02304c797a1d528f05f285d70a0148955d9a307bf8e385e1390ba4d0f574965525bc60ca99d8ecb8df1d4dee3930367417390302047c435bb500663064023043d36bccc69447c08615b7db1addc72d7846eb1a0024f077b1aaaf0d98334802dd92acc3fe8a4663898ba47045dcedee02302897613ea44c5e3401dc9adb8491e48505fa40ffe2b74ca9140f936a1ab1f1c9cd1d7fc0ff6125eb08f6fffa2f9d647c0302047c435bb500673065023100ba868442616e4487b9841f0b79ef38ceb78bd835bc6289c53f267684fc146545bc60ad574773635d77bb50662caaed8b023025345a7e259c22a03d56106eae4eb12e964c1b006e75e03654f8ec0c4b86adce72c9ff5b795c0a8c326448ca58693f870302047c435bb5006730650230317a894fcf2f3e327a2408a7eae35665a304a121a022a624f891144eb77f648b8c7776be9a543255bb166fa986ee7749023100c34cc44bf07a81c53a698a0058351ecff83eb996778a4b7200f4aaceee8c059c2724baf082ea5464566fbd63a3e656710302047c435bb500673065023100c3604dca67d9c83b79dcded302f4b8e8639f6fb60a8fd1169735bcd7fdd7ee56de37139dca0e5ddfc11f5500574a826102301a1c24353d9e2a42b8242e0fd834b1931c518f68275897e1d040f7163a7e462807394b99206a5c4c53d176e301b34efc0302047c435bb500683066023100da11c6602ab52f037fe3a93d0600e02d278ac00486fa847f3546720b2ddd3d6f273c524165668e97566d4d8b7e65acd40231009a3993b63ede5410a9e21076afbdf667006d35118985916758066bf83621d85e6a730135461110e37306c791e04390280302047c435bb500673065023005b3d29c26ac87298d063b0a90dec1f57116b7c5590c44501d24c8e7e1172b7bbb4df978cea955617a8d9601b139c991023100a1f21e2a5ccc16bfd5bf7fd250dd7a86bd8a73a70f1533b229d6fe87d7557f0795000cf21a6a09133c40ddf9c4a1bd620302047c435bb50067306502310083d73007c714f1d5aca7717fbc30cdf24a268027b20991c2df3b32f4206a1805d768f0cc141348574e9c01b62867ac8e02307b725dc2cf763b93f0a1b706d30f0cc24147c8f5035572cb6c696c5dc4457cb4e1aa004f1b8a89b5f8666121cda5188e0302047c435bb5006630640230378e47561847f3c8fe5f27daa7c0e044032b7840fc9d76eeb0a48088a442849c4447199b1e5e5b9fd6c00f43edad27a10230538cdc8b92e501cbe0f2f4e7d0686a7fa152da7f9df72fb320049e285d90295ae83f5a96057b310ca31b846ec6ec58470302047c435bb500663064023002275bf53aa3236959ba31d4dc860bd4b57997f4efb69493c4a07d618e03767b7402f67e17319b5638d47af483651c9402307a2f2b2a2a7710d954437ee6f4779ecbcbc470a7b1c62db5a1af023c9ac41b43255af9e74db1bc35ed81426335fcc4240302047c435bb500673065023100b55fe05032d011ea915ebafd1768653e2c1ccaed3e8970c9dc931506b71c4d1625b5d2b0ead6106185073c796f5a6c8802305bf29a56eb1be793b5842f27ea2c45cc55bf57fc1af2f0fd0f9abb68401c1a82a82a8b25e5002b9cf861c2eeae6594fb0302047c435bb50067306502300790c9a4c6d3168e3d9c0bc2d9eedd2a270ed7f52e389d38faa6e6219ccb7c18b71d934a1b6ed7d80d833e14a7fddf8c023100e44784d06ec78666752eb744f196e72cb8d832d53987f2726a5107fef9aad5f2a2632fe962b7a6a55c50ae8d663ca53c0302047c435bb50066306402302ba5c06c3f9d17e8a566f901b47a60f3a2513eb9b12f1014b2199966d8e873372f6e38ac8cdb6396b0c9a5d4cae0a9fe0230650d5c86e4fffa6c8ee44c6339a609fd8fe3efd6357ffd7ccc46d5532c93bc90c58fe125fc25cde893f19d849f3fe1a70302047c435bb500683066023100c2d3d7becdbac93b203f37abfc3031830713af29cc041351b155e095fe686fc3544ca506931eba7692176b6f8f3b2e1b023100b39c5b57b8f2cf0ce6c8f32355de62ed3545b264b94f7aa196cb702cc19d3d04392419bea29fb0ad7d998f2e4b92ea230302047c435bb500683066023100fe5b5b73243bf0a54a7bd29f099c39f5e40c227e35085e1c66a1595fc58c2eeb18c680153e963d02611a524eb05522e40231008342a5c0c04c0b873a0aab7b30d0a3c4e01a9bf99bec46f5df6ffc5ffcb2104a3d7cd185f8171249ebbbe3043b381e2d0302047c435bb500683066023100f2e7c2196047e2ab822575db2ca9dc0f05e493407e8bd532bba22d4d4a9be2ef247820525119d4c8decc4e85668fc3fc023100ae49682568283e3af5855a5d6b60881ec725db29973e3bf0d63aafc059dbef9d0d9eca30f7045a9cd19488e0679c37e80302047c435bb50066306402303721e984eafe8dcde609b9cfd0ac8738bae4e67916c6cfcf9dc0a3340acded654ec4b5db0a7c08517d5e9ab9ba49d39b023057a8e92cafd5d3571ab4203095dfb6eb27a32dfb991c975ed1351cd3093976db901b7fe8051a8246480f2b76740a70730302047c435bb5006730650231009b64f1475b0dd6567741046baa27219f372a7db88786ad2820f6db65b53410ac561372d8a0fa36c9e90df81f4b56e1b102300f88526035843b7cbc84175b314c1d46d4d8d1c1240c0ce31ba3e7b739f1b0eba8a33530dfd370211b35f5d8db729f500302047c435bb500663064023029046460d9fcda83a2ada72463cca37e112bd90eb8c94e6d18dbedacda2d09058fdae54731d535d682ab1b5047cfd47602300e9fa4d7e64f5523419491999378c1d2d918df351c623c7a40817d151ca66e2f910d180e7e976f3573bfa2f2775f2d7a0302047c435bb50067306502301c9b8d01a7cb03325bee03cc65caeafbcbe2195742be7bb358c28f05a26ea1c260dbd92d86e0fe7adb97cb245430873e023100976c8d5fff1f39c24d5d80d51415220ef836d85df10b35e830ad85c0f1c3f4dca6166aadbe1fbca6e836fa3526d555420302047c435bb50066306402300eef1058ec5e326cdb5fbf368f9d954277470b8ca4dbd30f4f0a4e44b1167805b72762c64d6722f7241cc8d12655122b023053a7a70f1d1c52df7a797656ff763732c2f6f2d2fb208081755af574e0499b28c589c395d3f7624d4f8bdcd1aa434a840302047c435bb5006630640230658136e99a6fc0a97a9b33d5a578a0ec84940730d9d10e92e962601d93c88ca78abb387b64d3e9326380d0fd76fc7cf2023001c76357c714fd2b2c86596b946aa73854534898cb85840a987b5ba9540c77f4caf0cbf7a35fc560389cb352e95f2b6c0302047c435bb50066306402304b0e87cb12f0ddeea9b6926c61c8c0341b03971e8c15c43a7dd677ed428d428d7e85877ee82de3515a740964fbb8428b023033815906aeb4949da673946ae7d1cfad4628b5c56f47100484e0929cdc3ac735743847f51e3e83e5c8e6ab4b7420021e0302047c435bb5006630640230449a885bab00885796d464519a46ff6c0466278d08426be15c027410edcc6e80df0aaa80254c1aff75cec014cb0111770230748822a379357da3ac2e170f68cea27b5866fe4668a65b3ff386384881e8c96456b6fc183fb237f554aecf5ab44cceba0302047c435bb50066306402306e08910a82faee6b9cc525ba583937e83a1cbd2d1c4ceccffea33ed808ab46af2271cdf8d0086f1678c2d2ca27c3a633023076ce7ee379d60745a5d08556b2ee8ec72e640549772bff75f62c56b35d02a79b0012824688995859080d57c80896c5810302047c435bb500673065023100a8a9f37fb44fb37f19521f0a85cfe83891a8bb45f5e12c318996e7e7cfb8d8233823ed37509a43c1ab591acaf427010e023073da8a011cb6a5cd6a3e1fb9dd19c16e2f0351e7add3959865551feb9905af4f8db2678819dad84a5b4de85e9f39a6970302047c435bb50067306502301c90ff67a1790dfecdaafa466df22b75f431c3b10e36cb810ae938a6e50466e9a1838c5d7cdf51f50a2b2d6740698c78023100f2f36d275b67f766f9c87ca1209324e6216dad6b7598051bef9ed35da99701dd82fca41bbb31c2c1dd5fbb5df7ea0f190302047c435bb50067306502306e84bf7846f0311f30c826491c7b4252c3e7b8c0a7359a09a1dad5c49faa2631d9af7de4ea816a403b33b08fc4504100023100b9fc308fb932671e9637a16d23905105c43d27fe646652a558c09a60f4ee006d871470aacdd2334f59ac4f229ca028bb0302047c435bb5006730650230603134a19569013edc8b18c6e7e6ba2da7e9d6edb1b26a99997ca67e7c5768483ca21eca2370d3a42fdb703c6d5049d9023100d1edd13c448661c549f014d5ce85571a1c7071bad411dfa5fca5a34f1a0dae70d72e4a726dd2d26994263ee4eb3296ac0302047c435bb500673065023063213a004b71477e32c82268125e8b90f891dbd17b70f003d22f2a0a920f166ad5972454d0f6ea7d09eb150b69b2e313023100f8c43bff7c90e4113d40e0fd9a3a38e103f5b7f8978ef85de30dd5dd242528e227f89bde79bc30162435414502b7ebab0302047c435bb50067306502302534f468d8d72e3139630f0a5bc2604dbcaedff3126edb0df425b5db3d2d95492af60f773b2a93cc874855f415a58c66023100a4d8857e179cbb92478bb93e4072251321288415ab9892423809d9b1cbe58f19553a3f76419345b15caa80e8ee7a5c290302047c435bb50067306502301fdc0251c672e9bd266a076f21f93cc948d9feb244765fbb1897aa4dbc1203163ee3aac4ea7e0a8e54272840718fdfd2023100eade981d6077b506ed462b2cd9b0bdadbb3decf7570fb749c9d3ae9473e4dd07b1f8100c15dee2870d99379cbcb14a9b0302047c435bb500663064023041fed4665672c270f41fe35cca7ba123cb5bc29126836b5a8b78297ae0155aafec9dd46558c91ec51d825d25c399ab2802302590aca9299fee32e1efd02e59cf20303f883aac72917a75f716fdd3533f47569b78b0916f6f1327f4d21ff989cbbd130302047c435bb50066306402300999b3c875e08f5cf17c79dbf867dd75ceaacdc0000ec91b5d16933ddbb02a4ac798b19ef207c1e2c36847bc19b7dfae0230029d1a56377d6fc5844f5eb3d535aef6b1956750cfa988340afa70fe61a89651356e8057114b413b0658d997f1e7ee8f0302047c435bb50066306402302dfb72c4c23611cf9de8c5d2268dc14b4e0c0d14d91a343f1a140a98e7ae03757691373c7c96cbd5b194c1711a33895d023074e201636a3f7362db4cb08d192755fd9147186fd4ffe9ac3fc96c0e31d1f353016af0a6859630c57cdb7463141dd3b50302047c435bb500683066023100b551c9dcac1f88d9d5d0c461c7ec445647c8ef016fca19ebedb4a906835f419e913fb87911f04315119e7004c85f450a023100d1ea468d4a243c1ec4a572cbe961f5f31de59b9164e84fc01bda1d3dedd9372a9d4a23db2d328756e8f81e947d50b1af0302047c435bb5006630640230128cd650e44965d2f409779525856f7ef8552dd8acaedea85d252396087ceba957db2b600362918d8b8bd825b5844444023003ab1b1e9d0f5fac409331049031027fbd372c93c5efdc3059e4ff295dc51e02253515568404feb559a51208a068d0420302047c435bb500673065023100bdb0c606abab59b060d95577b824c714e66a4e488575a50353390fc4c0f3b80ae08dab3aa911ef6904619162e2bd7d1102302d0e25ab5fe1465fc0aadb1e3880a7ae9cbbd742250d451631c4e74b6e6365a688415206f854b36769e76ba9db6e25530302047c435bb5006630640230661790c3ad5bb479f01d6614d7609f1651b90696ffe86055c48d2baee0a1342077b964f75ee9da453900451afda5761902303fa4db24a5fcdf4e8d9a67ee367dfee91ac44b7f46dc05553a1741816433e0028b718f934bf073c5076b4bc126bf92a00302047c435bb50066306402304c9e40850c2f60056ffb279b846758e9c072d0cf56906f3db7704141fcea164be9a34f882a19ac1af3be82b89b28145302306d76e73bbc830eab54ec9d870006a3b4a8bb95f7a4eea975fa5a53769f97fa5a2b416c56996600c815304150d0b017890302047c435bb500683066023100d234198c8132e2cbd62276ee3324a9b49412f8153935ff9567c523f6c74a282f1d00fa3534bb0d8b162af46901d57caf023100f5b8d8865ac08220e2347bb5bf0c231879e6b78d7f0a34e5f2c9294b959a055628f2acce4a2346425428a74bc5f034940302047c435bb500673065023100cc44d82b5ca082afaf99f291043ba27fb729a76d4b534d11246a06aa4219b001877451ba9cd769cecf3cf0920232cbd102302fb6fbbe443be603ad452b150d41eba32f920c7f2cd7752d09e072db8c77d2f371306abc8f95845bf65a0184bc218fe70302047c435bb500663064023038778bc7b552e4edabcb421f984406e25153e182a090bf3c9ac0147edd457e04f32dfed43aba41a2a2693a2bce90bc2b0230457bf2f088b059bcc65d2695e1e47c907ccd5db24aa7ce7fc92756b42da6d022c1083b441527f59dedbac0c14eb5cc240302047c435bb5006730650231009e9300652619930fefa5df053f310fd8caba383ebcda8becc1a000c613a489d848cc5b12418f325038a26e602832a2d402305b26f7b2920b50f376a1d3f74ebe79438c48f88233987723e63e27f25ecfedb2e964d094e8e73e7f1aa5f5b2b769ec9c0302047c435bb50068306602310098fc4a5df65eb9efc88ef5df61cfff60c44d32a98b9b1854d345d28c0e95a73128e4243371b9c7682bfd64aa51e7bdd1023100b8cfde71a147b82cbde74e54d50022d635da891de0d826f56ad759e67239f1b788774ed78bb0824627e0c9ae900ed39a0302047c435bb500673065023100bcf72aff13e388b9018f7608b5d93901be0c3a38839e666ab275d33a29a9765252a0dc570be980af775b277cc57e78130230297f839566dcfe69edf74a96151e65332782e5ca54dd211827cd2e1706f9df90de523a773d0068354691dec39a1359b20302047c435bb500683066023100aaa66c05474a615c8be5a1103911084b3a2fc2d0e1cbe9ccce2e965b657f7106187e6fb7d1117522735e804d4f29b6d0023100ec3a8d07d998541c887b0bf1ded896ba0f09863737387d8eda6dae482a13206d7803fd244e6a61b48f950ae8b0acf97e0302047c435bb500683066023100eae2e94cbff62c61a3920a783cd04dd1384f3c6eef28f3e55518f9c76152737242e63bffe8bcc1b0aa2addbcee0200eb023100b23a6e39206345c38830a92c66e65577f461d0e9fa94b432cd5415bcd3f97d2f22f63773004b38a3ce2e015baefeb6f50302047c435bb5006830660231009f4c32ed222669fa16707c1fa7fb39cf13e37c91387404c8b4d19d599c5e4d60c228e391870674856b1dac731b662eba0231009465782caed6643f0caa6fbcb5a8901f4dab04f0c7b0f1b5b8013a206a100cdfeb9a7966a07941a1d37d6fb51e9ef8950302047c435bb500663064023078a57ca197aa96832f476ece85ab338064249e606fb2b1fecf1d59e8ab04789b968d4a36664132a205538f6d7b6d540702300e63565fd5b459d4de2c02f88ef49ff8cacaa30e988402a6c841f45f97a652cea9ceebc38627d109824920da59d27f510302047c435bb500673065023051b36f61ac265b5c880d323e5ad1dc3c77cbcc89e60a783888559ddbec2824f56f86eb79eb9546784822cb0aac7dceae023100838d5d8334a432027b41303a04ea96dbec924a208bf9587d407081d5e2ef4cd975ab4bd5f2b07e56ed02990129025d450302047c435bb50068306602310082f0ce12985de52fb13671d819cff8b7dd35935663ac63dec2db320322855acb0e2786581fc0659361f1b9ea3b5237c002310092c983be5de9e524703a58ed0876e173526ed6cc88fabad1460d82b4a36d2d9ffac2bfc4e83a10d106bbb4a379b313630302047c435bb50067306502301209d96962e5918f047b264cab638ef1d17f6bf769f67a2dfb532f5553c7f3a837fb1dc8c5aa59a5acd99c97f335818f023100ada0db93858ac3442eacfcbf0c97f1af52bd6d455e6e4144791851bf7814a370469ae0ba69e5071ba3460f6687c6bff30302047c435bb500673065023100d0f66cb5772393a240735684879b889b18d4bc5b530d0b46f9efc37dceba20889a48117c77b5736be5d127aeac1d681502302fe74a0d3e86fc8831213c2d47cf50dbc4792b250cbfe90df7a26ce38fea2be0235dae23a95a00cf0550b22e8cd8ba3b0302047c435bb50067306502301d7df333b7131e25b48e8756e765ae391ad70b7f9d3ab5ffd0b26e446d17c54db62924616724ed4b05c6d7a028e3355e023100e3e100297232bdfef4c781ea5f1f1f95566d9302ec64b29043c14e6667f0f4dd88d3a56f5980f30845704909e194e2e10302047c435bb500673065023100ed090b4d8b4e62fc98624e5ef3f2da94ecf02ee167bb70f3636b9808f9b1329c7765b2c3e452a296bc5162528a7852cb023047b480798a8e1fe25795cb14765203bcbddbfed6e80c69c6609b62156671ce55c0589a6140067673c2f6e08c6607357f0302047c435bb500683066023100aa42545fe4f3958f1bb85578fef6d875aa1a721ed1054ac87574d229c129bddb9a30a7604d1e7394dd2a16d80b07a47a023100de85e11f0ce0ac3401354214078d363a18e224211164e8cc27d9457d1efeb3ec8a73e74dfcc0be57ea1bd8025ead3aba0302047c435bb5006630640230153efd87c8229a5ae8359f727b56794a14c7dbccdb914b7f06af39acfa81db9b340a797acdade2d599348fc4baea65da02301ef1d5b64b02e90281d88657c1ccc7de8e5706be5851ceb45e9498739aea4c80d574e7507264f109c750f82c434e2a750302047c435bb500663064023027aed712cfab5a3215d5ed852b02d759d7b3d3edbfac56a553021220144b03f69e13f9b77a82d32772d783428e7bd77e0230210744d1a248cd9a22d3b4547e92e520761942fa98924453e7db8a3569cab3dcc8c4f3dba622fe40e67c07f2bb03f17a0302047c435bb5006730650231008f53576ebda844b34348648f904bd4cc28abca0db018cb6868329634fe061b601d770d87403924d9b5d01d11b9c256c902302610cc1bfcade4c6ddc2070c18020e20f78d219c6e44e9d69e52b16ff92a22aafb2cf63fcaf3297278576bdf27ec815d0302047c435bb5006630640230509b9c35bc94eb964f6532de46f872e772c7012175d0b88a58d6a308769be26dc3df21da60221f9a96c044b3eeee7d1f02307b1ef8828515957057cc7d5ac7d5cfa2c02e05c273919a2f34bf43c81a63ed6b910d7decf2b045a484deca85e35a03680302047c435bb500683066023100d48647ffea7bf047b86058cf417cf4bdd0c2edfb9ce6afdd55eb30f0ac935d9ea9dc3eafbc820ebf8abc4c59787121ba023100c286c098bad26c6beaedf363f218f1dfaa833dcdad8faff54c3fbd9730b85ed67560177711033184ab37480fefb133070302047c435bb5006630640230545ddae2c869fa8d042c8d248d1550e9c3366ea2bd8134bf56693dbe77799ff5334ac748e97c145abe44d6a48c58a362023078113512f101a1a83d688da167740a26a6fc9bf6e62eb8ff53a9cf3f215a60c4d05e8214c63cc7fb574ad46a476516fb0302047c435bb5006830660231008f4cde51f75555ce65491f6275868fb71addb23459a352af4356a4de2b49ed380bbdd7d349d0bcd3a238d5c9c501b36f0231008c7827d13200a4283004774cab545009109b06842781e8645badaaec5da7a5b73c41e71a4b1e7df4cf0c383a4df1aa970302047c435bb50068306602310097f9f6fd21e6cb3d722e3a4bbb143b3e1d674b152f9602a4843c284d564b2b3f675cf7111a6dde49816b2a1bd79de381023100a7134b15ab934c21ba6ac9aec4ffd98dac08721e8f2d109a30288e2a1ca0f3db92904f3522568c687846d16875aef75a0302047c435bb500683066023100b8a38d151e061c3924c87234a2ce2fff9a2d79e9a1abef8597731e09aa5c45a27927565ac0deaa438412ee51dec475cd02310092ed31d9eb8578c0e14adecdd9a07eeecfa47fe5721ece717361a471eb0e159c97ce1c24602f3473b83e4e90a17ddea40302047c435bb5006630640230074193f68a92819f234a7272703bb830e6da2d95c68d9f76c566452ce947fb80f99e817799c51daeb096462faddd199b023053d397adf1ff69299442c5f79f0e2f41863fa91784b1ecf69895623a6b2881a5960b741380743b17e6e20dac18cc75f70302047c435bb50067306502307fd75084365714ae5db8b3b9c10f96f0483fa7601de01b372e9977a1b893ef4127097c5fa76ca0e0cbae4ddd0d85f3de02310099b8a8fba02ed8d5d25586a26c58bc5bbb8227098c8578cf98e56b2e937d7b7f30fff83ec5871dbd8230fa00d4284a710302047c435bb5006730650230442f059b6c2569d32768f2ea0c8441ea173c4fb9d309b9634ec8b13901fa599c1a7955e9dd54ad7b7da78804521398dd023100f1dbcfa8b01173c327199ffcb20562c4997d46dfec48bd4a3da484869ea600ef998cb23e47e46f998c1ced4f37f6345a0302047c435bb500673065023100ab444d5d4ebffb922108a936d0890d2154f9519f4dafda4806dc2280a14ca98854b653166ad163a12ff86ed0f33dd25002301254b52b5e93414c9e660f5dd9ea9ab9dab3fd5a1097e10096f8c7aea2f831692e062f46f0c9a6e65cdf392004847e710302047c435bb500683066023100b3b86acb54387364be73f96a7f09854e23d840a03c167f89ab39cb9556d814f5045dbeaa1136ec75cde7a32b6f0ade6d023100d11d79b1d6aecf0ed11cccc8162d0ec2e768f7e2d00daadb6d40d02489eda87de542be785746d5829b84c7e616e9f0a90302047c435bb500663064023027c1a4be23e597d706c0aeb8818cdd932093bbed30ed4f0ff8d826afd065aba6e3adc7d53c90dce4cdc7ba0dd9e809fc023079ebf77cbd889b738454f6c301d1588d72c8603237f0b137bc701904bda77e431a93dbd40c598dcc49b42e7d71f5535a0302047c435bb500683066023100edb5220fa63ce70bfcb7399f5de97c046d6c760f99a34907239ccf934e8875bc78e0f7a26acd5ed0d4e86e365261564e023100c7ffbd3959686b3f9e6cd93d5d9b972e20e6dfcdafc1bb47886bb553ae227c520dceff74ad5cbee5d3d24b6865fb229b0302047c435bb500663064022f4229a61f8832349f4741c779bb662d1f106b0132d404832139ab618d93d9f1ed9e2a7e8cbae6b708c4fdf72c8518e1023100d15a45547bec280e9258e8ace5bc601b0f9a64e7ee09561bd03558c9361789c586482054ab77a82408ad25e3c4520e2a0302047c435bb50067306502310097975f1940f376bfd090b6c16cc46b7b194d28746c397e842dbd2519c5d223c5fbaafbb31fee9c0f90b83036155d266702303a997d9c39d215de8e7b6db75c843ed6bb5101efa57698a71f198ffd8b030a258b4ae97b6834b0ecb646d2e4974264b40302047c435bb500673065023100fc1ab5ca70af52bf3606993f5e881b50cf4dd18fb5af98901fe245d7d9187f00c8e833001476c86185ede78e744cbeab02300fe0b299d75529e634fc2e5d869ea2239e2470579ecbaf23a784cf3cee7be1f2de37ed8af1010af06f33ab112ab140ab0302047c435bb5006830660231009e0fe7c49f33283e1f33bb842c59fbd838f87547ecdff3a102f232fb8f5027441d8d1aa83a797b6dfd6036f36cd35587023100f7cc1903b09dc019a2f8165030b9b313acc7ff614e18b071cdf72cc044896171b7f855168cab2792e20781fef5a57bb60302047c435bb500673065023016ee9a1533920677128bced966672f090f1cca95ffeb618516b91ea3a15674f1033bbd4c43e2e9105eaff1b497b53752023100c4df82caf10c8e5248061add94cc423e24a745e1c1351b2db2d3b684f227c0114aa2ccdda1c09e0cdf4c0c4f3e64ce5b0302047c435bb500683066023100bf76218900123408768cac9be0526f116a61d3d09c30e72d9ec3057f2049c2780063972240790ec8b973af01f582e84e023100e270333fac4bbf773d1a42733bf30ddeb0d9ed8adb8e60f91914c70a4d0766a041ca6a6ae46b61169df8353eb26d9d3b0302047c435bb50066306402305ed23cfd746713ba369d320ac0fe9db10120b6cd79352f7249ba4324ec662a5547db1933e9cbee37b8716d85c48e00750230082e70150ed9d210478140bf1b9dffee3675efbed53000ec2aed76f71341e519847f5ddbf4d06e685f574c0dffe3ebc70302047c435bb500663064023068d29c942e9ed060bc0b7a30027e67f944cc1e2a8ee64eda550e9d38a0158c216d7a1fa944b861384403e4bcdf7c715402301a15253e80faf8e01ad31bdde2e65fd68d5854d89fb9a546504f0573e43ee63f623a3c2b9f2ab1ab372a488d7a4bacab0302047c435bb500683066023100cdb18aad8b7e4948fddad5ce3cf12c6130335a1d39a0661de5c735db8c711c95a6d7c84a235a94a0b7c72d2fbb36de49023100f96c3ae194e3517b41021afaa22fd54266c27a498216f4ccbbab30409dcd007c4dad0926e3f194f30a98198266cdd5c30302047c435bb50066306402304601047fc2b51e2ec1a142acf0ec0c96edbf5944d5a9de36c4812237879bff91b7423e16c84c543f89ba32e8d079b88902305c61757f8c03757c453a4a9926a94ef96c281b64ae185206e39faeff200f5d39d8d85662da574951f14d2977b5f69c640302047c435bb50067306502304fae37fb08e1d39b247aa7895bef09dc7705a0282e61f507b292d2c01c703680529506c8399b3cb9b44e803fafeed520023100e88f054f2ac2fcffa4900e3322984b356608ca044bc1bded4ab64b38fcb8e04559240daf52162f5b010d7aa5bbe789c50302047c435bb500663064023079ba3613a058f7acb2215173c7c52da7e893d7e70a60dfde9c5152c8f434e856fcec198909b552c7721d4fb65a36e9460230788d77939266ff534ac838e586ae651f6bc3adf3039e138202364ae2baee7c8dc57e725e7eaa3d151a16fb2fef728fc60302047c435bb500663064023066015adfed6821744e7b1f5e2d2ab425684a10e6464a66f13bad7424e6aec9c6311d9002c4f77a99ae369853b45410de0230043bf2a89c090ac79528e030284c2685c1ae22e97bd71c18b2a72f6c082d96d583b4e434e97d945879110c62373bb52c0302047c435bb50066306402300a9de659de7c8152e6685bdca624ed00dd44c26f9cbbf3df1131301e643a114de183e9513531df791e9e139284d26e080230020ffc585f9d407284e1c0b24dfd5ab52838df52c0af35c26097d4b4910fa9f76ad72dae58bcccc3ff2fe794473854ca0302047c435bb500683066023100b57aaa914a7eb7d678fee1da6085f5f1e24549a1df41f254e2a6d550fd4bfbfd402210764a96587c07752c23b6f64bfc023100dafe2411cc8c81998629e0125c79d21b64c208958b1a503b5adf2b57be677a3c80c70d7043d70dd95bd52173682bab2d0302047c435bb500683066023100c18d7efd22b49d39b71bd62c5dce1f1256a84264c342cabfd2ec4d24cdd7688010b41306f2264b7ed72fb1749367329f023100f66d3567305acd617e8025408b62cdf58ee73f6a77bc4ec99d39fc71af0b730553021d152c54e2b7b99b93df1eb45b5c0302047c435bb500683066023100f41ef37607fdf0a6e50b88fd8fd3b1c675a63b19826d8e2cd354f6b737d32adfb53d0efb715747c4cb045062441da63b0231008c46f21fd3acca8a820089c83329850edf07da6cb9f80cc0719eb9f7eebce6eeb7a04a58d69f0c2b85ad83a2e4f32a370302047c435bb5006630640230468339ba29b8a7a4edf975e19a30d1b87e4635e2591a711b2aed415fc59c1eed5ec26e06e81bacb4f263c597bd31b1ae023007749b04649a27403fcd171532724cdf2bff9d6a408db4af70f68bef0233620d0a2f91eefa4d44b8519759911e71ab9b0302047c435bb5006730650231009a4e90d6d652ba7dfc3df1fc8e741a01403f8c0a1f36e1f946611d0629f65cb1f91e9a7426ac70560263ec18192cf58d02304a9c3310941eaacfedbb1653048af565bf2fbb539c3c039cd436570075f02fe3fd3ce92dde42c82d41f93923b3a3a2860302047c435bb50067306502310084ee455186a7facb012ad1755a71ebf1331fd9a1694dcb696ecb6f6f4a26b1527b5e1437b1255e631bd714c3298fe7450230315821fed63c750b89193f772a8e8ffd42aa890b443db84928d160ef3af5386ca42550e5b22898e36565c3d6a15afbbb0302047c435bb500673065023100b45da15f2c038bfb2ee81b8d9f88a3220d0bca7c90f795456906197bf5b9a2a6d9393d4bd698159e8d30c0223a69ba61023031fd5d135b1744d04beaa580f7d13000823e4cb2b7e2e8b15c91a8b05cd49a3f8361dcf7eadb1fa0600a26d7c7e51d060302047c435bb50067306502305fc68c5af56ac0c45f2fc4b5fcb91492b2c70bc0b46f4966e142b2cac128c8045ec891cfc55e95c1e8646cd241d59eb3023100fbbb932c99191e08e0cce75592cfa4a67b2c42ec7590ab5b39d72a59b7e4fd84b25a7cbc51f6c10dc7963ec0264f72900302047c435bb50067306502301f8fe151df4a933554a317211ef324da5d5651409b345deed5f0ad5b552a6c8a8f4b86c1d25080cec0e59df8386a7994023100d4f289b5198b0f556d0c2667a92b313b746c2e7dffe8f559232aef6c09b01e429531f5a546c4c6a21e135a73ce2ec4660302047c435bb5006630640230310afcd174865fdecdafafc74e611dc623cf87d32a37a8d6864abc9405418baf73ee5f040d8cd721e626ed1ca523f77b02300f65a2b174c57fa8df12610b532fa5d34d65cd40c7def7bfcecb671d9ac2eaf0505938e860338f747b3fb916657eb0060302047c435bb500673065023100e8ab9873bfe7f8f0f9cdbb146d059a7c9dbb6c8a56c29421d40ced45ccdb04bddcf908422dac5b627f388e8e65d144c202307873dd9748c213e1841db39cd4bfcc5cf980eda30762ed1c789485f2bf6b06c985ea27025d119afa3c8115d43307b2fd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d290c764188d8b4a936e0396a09bf1377e3cfea35d57606dc93fa981491ea44f723b7ae56cf7edc23c314db454e8d55402307e48858650603962fdecd1716177823df21fbaf1f5401bf2b516c409770e157908f5b3bb96941464dba84cb40f7b3c910302047c435bb500683066023100e7206206501291a84b9473ad0598ec663f8e3b819899afe7b6d8ed81cb47a91470df45692c1d90107756dbbe17e83a410231008d9dce6be363a84c22f8aea8fc4d9b4d3b84eb88b116cd9d89beb5890e84bfcf9f3ff4c0555189d364e75e048b34182b0302047c435bb50067306502305db8c8604a81977145f796816084c20d7525418f915d94c00e66115e2a2fb2db32dadef4499862ec85d48a71e9402fc0023100c46ad88d01237dd92e59a190465427ccfdeee391b305807df001b80d4877e5ca7da0cb9ba493ac95fe13c1112006528d0302047c435bb500663064023079329a7b62e0b49b3dde9af1fafdba770b9fd5d48aec5b0aaed415f834f906ee303ae320d07d65e9c429126c1fe7150e02306bcf0bdc432a3760e42ce40859286e7e1c1a3074a228fbdd372972227599927ddb98958fd45edede6c233693f04930470302047c435bb500683066023100db4aae65898a72850702c33bd624b52a7a25ceb80d013e6f84d487e0f550b9286bcddc7f9f2d3194e6d551dccb254a6d0231008b274fc25657336b740ef097bb25d0f993ed939b92a99c2fb560308f87a2f1c32a103cc7b13767dbf3e66e10274eea100302047c435bb50067306502305213bb899fbf1a2bf76f538e45ca9dd0f76328205c5c9d2f075c57ea60740ed7586041f44c8179e9b22dd81a0053ae6d0231009b04e28e99964633fd3053e9a86efe727ee245c021d5ca9d9f97340ed6aaa203e46884ca325838fa7de55060b9ccaee00302047c435bb500683066023100befc949b04aa9e97a9ff43b05476192f13a3252abc4e43a66a42d96236a92e47b26ef5213cb055e4d74dbffe2fa49ae7023100b470a8e07721747a29f3797735020fa4ebb436e2e9ec77980acdfd06f1ddcf195e5dc2c4e747c8d814f4b0592ec61d680302047c435bb500663064023073aa672df591033da9b569e6c98d9d8237baeecc6df0d402dba5036d178a8e7f8a32882242e8c5a2346c9cd42a73496b0230236635762fe1371ffadcd9c9e5c06e06bd7d29df632320c880e0aba525368fc240453a22f28fd4e33e0f83bc4fd6cc070302047c435bb500673065023100ecaee5d1808f7a5f131bb36373fd35d1419b152d28935326d6ea056f5a4e6ba6401831d15f107fdd979d2f42cf0eaca902304b3fe6c1aee0e64238f318f1f5c81f5f5c5aa85ac9e1f8d59267c9436802ffc75cc65165c5bcb0b669fc6994b04ae3b40302047c435bb5006630640230302b4062f57806c588886e213a6601c5c86262d22d2480a264f29afeeadedf406236a51dca834d162582727299e4ed500230306df2644aa6ed007adc7b32164614101ecb887162c94ab584d6233f9949c303fccc297f46777f665ea18d980343ce810302047c435bb50067306502305eb4c399884a6ddb08387b97a3fae311e78271373d98b2c5bc50a75c91b9bdf270bb838671ae7c45e72e9d28bfcdafb002310084f12e6f28268e82d69b8994b1f19974a5ac5c223fd13d933062b745f2159bc348f9ac21398a7e1cfc8e20d3fec451270302047c435bb50067306502302186c1e7d956be05971ce3ce35a90be9229c20daabc208e6a193f523338ebc1869d984fc780aa7da18c3b4d1d20e0d510231008e59c2582e53bc19f29ac58a842d7d972d43b1846f6b75858d900604c2c56c562da61fb652c47f1e3cc56560ace9452c0302047c435bb50066306402303894457bb939e22e7d7604db9d0d8ac80a07801ce6a473ee3bc1ff708abf77d23f44c06ac2097d71175d5538b7a0019402305c00c497142c5ee7d509b42f190519c8f57636abe0d5b336547e321c4ddbda4b44af79a3ceffef18c4522db2177e4f740302047c435bb500683066023100c7a6e1e25e1b58a70a95ec4609d35927d9da7c361e5d6d8e759e9546e9cc401cccee6280f691a024e412bc7a1bbf17a0023100aae95db5eca8c53ea4b4437970c0efc59c28ae239c4b9f7db4acde4b10e6062d30fc72a73b20bb4b36a00ae30797a6c20302047c435bb50066306402302d00decd292757756b7ac3c75726ef303e95777e7fe2a2d60dee85b4576101c228c28acd157de3c76152a08c6897566b02305d6e36f295ce18b17cabcceb0b78754e56b5ef91a668676de107d6c0a01a3f272158fb6c34b13efcac2b812739b6ade80302047c435bb50066306402307e495b5608ab1b8fcf45cd719ee852041896aaaec5c1e0c3147c03da8009f2acf9ced01ab0039114cc30efc518fb738402306ad51dea949929a8bc1c69c68516e1cdd54b20ea81703b35731e4002dce0faff1ec4abf9d3e009f52a96050b466015430302047c435bb50067306502303c0ff08f7e75c30f08017e406c833ce55ee00d87c746b28e672c7926cf6f41a6dccf7cca464b9d8eed24315312407fca023100e127fde3bd265bdd4f2022b56dab42daec3535cdb0890af0064d01e9ccb7602d08925baf345f655c3e6b4ac5ebacea990302047c435bb500683066023100a4610ba7f344bd6577f239f3f4c2e22957541f0c40763dd43a6cd319faeb997c0effacfe892499d821d2b471f7748db102310094f97f1766fa93e971ac24065562a06fd729ea67c343d7d75cb6c31eb4b9e9c5799306ddb964e47e105a3a46709dae500302047c435bb500673065023100d8f408c31a7396877cc5b9a32ae47785c4973c779c5a3fb93bf5344197913b5ee9a6aab5b4e7f40a0e4551bb19d25794023054f5c7706cc36f2b1899f1dda014b6a70ef8ec4c722604ca1a63760b72b782b93ae22847b114272c895c365e9e4fd4e00302047c435bb500683066023100b57cdb7e87c7b94ecb7ff63f4f7769081bd7bbce79a6fb6d3466a1bd828e6457b59f8987add70a142a188c622926b6f70231009a543297ffb4f71b4f5936b5be10e9183b560d42dd38ea82af95c929e1321ac4a8ef3f056745dbc90d30895d7fd1efd30302047c435bb500673065023006cebda62f96025754ca9190178669560a88aef31e8082e74d82e26837abe3683fc73e37721e441dd50447cc1ffd7a79023100fd2849a0c7c7bef48cac30744de3ddf67a0c602acc2a6d0c4a4cce663b5b48f2967acc6375d07f37f03974e2772a60a50302047c435bb50067306502310083fd22a70ef4e8d5cf5315026a76371b6bfbe931dd66856fd9523a988f4bdc242246f5ba0cacd732f4901724b18c02a402300fc3b0c6e602567126a5257507e89d2ed6fec508e63c62c4abbb519112f1000d5618170383abd4e404ec0c6494bedd1c0302047c435bb500673065023018b1b91c78a6f008e8ae816f1cecaafdcd9fe72def7146b527e2a736f3e123199e8f150b24ebd0573a235a1f4fc7a9b7023100f8d040943fa8538796e8fba50bbfc5d096e14674d7b4d72f2753015f0c02d6e920581e00be5e4d0a80c564b98fa669220302047c435bb500683066023100835ad4051d729526676fbe89f729487fa70b5ff35ffd94d783a3077b790b4396adafa3a6eb0ac0f75805aa76e1f44aa802310095af023bfa98453d0019206581c5c847e9b60478592b35919644487693bef78ac86dacec38eac73155a4a0eeced648c70302047c435bb50066306402302dfc0c39c7674e77d32840ae637c9efeb851f919f392a17a2d7a5b8811d3756d5d962959499898797d3a83753e82bb2002304c9a8cd72118457d9aaff912fb8bcb7c4ca74d57c85b85e3fd0fb301d7231a0d9dfd3fe71e7ba499382c105a8438c0f60302047c435bb500683066023100e5aabd0d4edf435855824a4a9847d67ba20568a9a4310089ab12362cca4b17e51bf762c18fd5aef21195c348f41da6a40231009035db075717b504587deed35daefbe17bb1927f61dd50deeb96e94f84bd916be6be68c1ea884b25d5368e367c7607320302047c435bb5006730650230262716f69d76c178c7bb52d15eef7888ec287db182c790fdc443416f87998fe9d6eb04c3b61f517d5d60e5c77df63d260231008d47850ed0a72ed0847fa5c1aca544bcf4b663048472aff157e30573b475c4cb7d1ff91095cf586b60ed0ecd1c2ba1080302047c435bb50067306502304c34136896d334595d470b52998ed04c4c7f86d9e21032150251b7484d8475dce86b4e0e1c3d006aef6e0efec013eeec023100fe7b4c9c21855321c193c9c3c1c398a9474a71796a40ca258bb1799d2befbcf9d9968b149910461b72555f444af816d40302047c435bb500673065023100d87a243e4f2c6f0a0eee9391e4158fab020869ad3d4bba6a80f25bbdd0cb43ddb41e474f61914488a7e0a22f6ece2e7e02301a77bfbd2e3bb18785acea41c2a82a40507a05ae62745b16c3231402b21e619a85ef987ed760ad5d3edc36e6023c20560302047c435bb500673065023100c1149940d11ba52d2c974b8238245bedc54e9baee069ad7a8d1fe0e1849c3ef48f79838aa84c58bfd37e5fcd30e1d54a023040cf0ac49fd6a947aeab18f1b9f954e36181e89ca5325adfc231eaf17e4877b080497fc3bc0c7a99eda10fccf47c52a70302047c435bb500673065023007c59b50596b8fbb545fa887780d92cf615e1375b98cdf54c0c91027c2815788538323195bf09b8089a0e8c9ef6375d0023100b38dc85b8fcfc883b08f1ad648f64c69983afbd5f79bb9ea140a548230269a154969b1b00af2bec65dbcdb6d8064cc950302047c435bb50066306402307ebcb0b18a609dc41391268982577e85ee59d68a4dd708eeab6f3cf5f3dd1bcda1a7d2b2fe5fe7c543fc664191bce0b3023042022f1a7148d4ae8df7f51e74811f2a2165af7e01057c0a4cc2ecacd89c3fb0f6f319e2fe439000f192b7854d0a53620302047c435bb50067306502301cea597978830bb432c70c5b87c243311d250292aac767b45272803acb85f72222452d01abfa256273a9a5ec4d522bc202310090db77e2114edd91f21f7579b249b3d4dca02e19780b2abeb31a1c97b93db94d8171aa68e9b8eeccd9f92f42eaa5d0040302047c435bb5006830660231008a3343ba2760a7809fe9d03e14d6b6a8d399c9f559d21f493b7771be5ee91ee2c0ca7169ad6637b2b4d0b2ad9954c2c7023100bcaf3fdc3ca569f957d9652f7ad21643d400e0b62f011d140f69e1e269147512606d5b2bb7d406163b1affc8f2d980c60302047c435bb500683066023100b59803bc471bc0c9f7d87af2199ea2c1bc996604c7a3b00ef980bef07a404b399e78c1aa75a35ab6a3a9546a7b2e457a023100ff4effabc147093854fcbfc8ce44b0d8b6fe4cf63e8f32148ed4ad03b077edda91dddad7d2f230d26ef35ad4211bee1c0302047c435bb500683066023100ec3d34b1b61ec259d42f83da538a247a97245c237d9d00e50a519e2f53e5afbf3919f7bd04164610b6ce07ab9f34873f023100afcad626de58c56ebfc74a02c735715c9b1c727cfd11aa6f428b6173903f86bc2415167ca0fe48a5709232a19914b62d0302047c435bb500673065023100ed83b092e8f6f9aa81429dff97418ae689bf195a9c95d58198a8fd9df25583b94ea4a0d6acdf2b787f24d769fa4915a40230173b4d5c5c794b8dd9e3a4711767457ffd5427244beccedc21f1a197d16267d358257617f828987f698e4deda583d3f70302047c435bb500683066023100f315ca38e08a9c4422b7f77cc55cf4f7690fd164b55e85b47b669ed2789134d1e6a83a75ead886527d8d6c6b9ce2c69d023100fa6bc85eddd90e4739eebb576fc8fa84aa51ba31ee3d64e5d9180cbe774b7792173390f197496f6eedc70680896bb8e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e7f8ef35bc7617d96b0456370d39fd53a159920d89129c51b533242e8b4b474e29475cc898b3d4dbf6f96a5e5f24179702302b3fb366b6c1f6ae8ed3b5188dbd23391480354133aa0ff80ffedf1b56e4542def57cd52729be3fe3f77254dc8e01e460302047c435bb500683066023100ebac5b8222c8ada3ba055e13682f647178625ced90824d3ce76c74b041583773832819a612a3e409068223c9048fe8e3023100f2245136df7183408beaea34d51cc5dcd6e99d9515ae87319eb158350532f9e0d2859ae4fc0602a63af745bb54af71900302047c435bb500673065023100ff4ffa4b541f34fbfb192b3afc5ad24d67069dcf7a97dd69e4abab87e36f30fa2d752a89a00f770db5df462effd39d5402300f95e979ca257491a5e3156e017bebd610d4435c4226d7cae9b6448ee0a8f0d01a0b101d95de4e867a85b089c73106660302047c435bb500683066023100bfcc2f824ab8d8cad1a9de9be0ae7395df8ae6a8e7c6a8037e1011bc77b3edf5fee734937b7bab13667baaa9b11bd251023100c30d7dabcb0d19e299ca62b335d40c9e14944f0338fbc35680227a0c7e420d6be4c33d39d3356204aa6ac9eb05b74d2a0302047c435bb500683066023100d28606aa8bc6d2fc0b3e7f4a4a7fee2c499facea2ba1768ded90fc865d97c6a318dbd0905d77b360702a39ce9b7bc4a60231008e44ef8d4512bfe6b1e1d188d583772f524eba8cfdb88a29d1271ac7ba9fbea7a27195a6b228e59560af7b58956bd4a70302047c435bb50067306502304588a061fe2cb5066f008553b55b9d18ead0bf5d638644138d5b4dca9ceb5a94ff0188d07fe0712c39b333f2a7b84d84023100d924724022ecced4882701f89f1b15ec0210d4c24384c2e193b4c2e7f956b9a68ff3a6e5968e3cdb70375e040b53f7bb0302047c435bb500673065023100b902705c0c548ea0548c5ca014719fdccad24f266a5699e33d1716548e4a97f602df8e9a80f08faa0dbd39a76cfde513023018d0cbc6aa6cb5ef8f5463e814292e655f7832a7b89040dde77ea2561139f84b155ff7a5f2d6ca5826cce69680b3cc4b0302047c435bb500673065023100fd9a8c6b25bd29930b3e4d8c92ead26f5d7fb3818758135c371cd2c13c66e9bef70afb76627fccc01ee8d8c58a4a4d0a02300b7da87a5e3f0d245163a1da5c0fe64491c16a0864261c73d62d6b039a1d2f0bb2815157da7f78ff5063e2c4997d51d40302047c435bb500683066023100a603dd15f48db562cbb0c0c9ef549686e3c4c781791ad1e9081b3088d65b0903755c8cd5f3e66ad9bd56463cc6c481930231009d1663c1aaebd09e7f701bbdbf30021b1e179ca7f22d1778e94217163176dd899a6be7e20fc5fc5fecbfd35c2c1d36f80302047c435bb500673065023100896daccd04670fb28cd30ccc0017ac89e942d0da69cb3827f93e6cd56a45566d94df9616820ba4738894791154bd6670023052f62441ba81e80550e86c659993fd149cf22e7ebf0e3121e38a9e10f26d9d006ddc3d44136730bed53515374d4a28270302047c435bb500683066023100bef1d0e5955dec40b188aedb1afb7e2e8ddb69c83227ad6b7ece17c2ecf538b50df7b67cac3167e66d7612a7f896860d023100f965d6b7278d8207f20f07df61a5614e88c9139465f30cc81d29f6ea51a49057169682b473eb4ac901c10a4ec7adf0970302047c435bb5006730650231009b50c6217844cfd4cedf89a4e88754c9afbff9fea77d0e42e33c37bc4ed37f0fd0eb483499ab9f34daf858ce18c91a7c02301d6239cca10c8afcbe9272cdbcc04d9615547dedce6bf5d055abe45c8cceb6000c362be04d90d94f546e280519c7504d0302047c435bb5006630640230267e89ff239a31044c29cd2ba26d7f239276462f815f290d6d76a0e62a65234a8d3ff21260cec65a787759c43080796302300b9b51a098ecca30608be9cb6ffea171ef16005c18aeebbd9b7b163b11626b4e752018784a7ba69a1eef3eb772f6ced60302047c435bb500673065023034686fe785ff98482f63c1420c7a88e88f0d044c17b24eea440ee55583c0899d3c9c2d682d0e9fc62c76675cbecb4caa023100ee767df97cc7873109733d708f519d9e3f01890ef03a89627700aed228bd26d9bd0b078c49c091e67eebc516b319d87c0302047c435bb50067306502301681d7b88f90b39e9fa0d22ed8d2f7dcda816e39cee3585eaf14a5d00e3d43d21615ac01e5fd01b48874b22cdbd5682b023100911e849f5ec97f68a69ddc9489cb667f4b9766d5603282bbaab5d31d1c96f4ba16923f651a6ddcd02ea8d40d7ac4049a0302047c435bb500673065023045a5e8148120b1af1baf8c418779ba7000b3bb6f586b3164e4a745e6774ddaf6329b732f07440628f128ca5cbd62c0ff023100bd27c722b43810033906313213cb7b94a92fc33342dd646fa8f1bdaf2201aba3ef9cd13099f04bbad010a4d0f56aeea90302047c435bb50068306602310098d655cc51f7050b81802328de5a6b20fc38bd99b80eae4254d7a85fdeb6ca6a4e006a89d47e49a38cad46956ed64aca023100cfc80090890bbff4ec75269c8d6f57681043e94e77510ff654662e683da18a1a570599a88e241f0535d74bd847be80770302047c435bb50067306502306b112709f54d2eaf2cd17f875b8817a2427cbcfc7051861e268e8d60f7a4e7eede44e7347142319c61533d36f562f54602310085373286f6acd4cc443e45ad61fb8c1a9c752b544d3ff4052883df3b20c544ec7afe31cfa794a8a932973af6514d329f0302047c435bb500673065023100c49015d95588a1f990627f6fdd93acb61c67e72ae5c1f2e0a8e651c37bc41c7391275d8780de7286ef45da8dbbca2eaf023012ea794b0db423e85798e433af6eacd491513d92bb6d26148f300a0d7a9a4fed608f9f94e1df25026805da95c9b56a150302047c435bb50066306402304c1c9d6c204dd62306a204303e0aa9adb8276e7b696159a9da0f33e0433c12e1ea19f493862e17c8f9bd29e596c991e002302d7091729777436ce8ca76f3db874b23298f9d4a0928822b11813abe4bac474c17e4e2b1b65aa4c6984da28976f1c7da0302047c435bb50066306402306cf985836e5f84ff654f2ca10cdc9aa298485f3c3d87dec7adc78a1591dac295f41920babcdd201da501164f3b68f1d202304eb70dcb6045786b19e8346b6c1a6043938b0878bcdb66de3aacababb1406b607e19f8791d920e9f45f340136cdcea390302047c435bb5006730650230114a7b07f747e4a2c32bf4cf30b3dea00e4b34a3e95c359c192df063d061dad8a2d789a823a869ead4edec71b41eaa27023100c67bcb1bf4959a7f8c262c0ccdf0afee5117e1f2739fefca3b62ff1be62d550f4c858c0b69d7660c99977808ed09199a0302047c435bb500673065023100843259fc88f576238ed85fdc32b27cb053fe8ba7fcdc72b23ee759fe16c18d2c9a22e494afead4f1c21aa4a56291cccc023038dc631d38a45e50e7a8ef15631d7687ea5dfb4e06fcab05925fb925edc71748f8cb690260dcdb8399b233d5184b8d1c0302047c435bb50066306402306cc8156d76acc5a693ed30ed97652085e5cb11884d11874d1e6ae7608555fad0667c7963f22f87678eeeb3dcefde58f002306ca6e042d29a73ef07d3616bb6f34da55f2401e2a68ee2d2663f5da4159c3c4c5ec535edb5cdd91f44e707e8add13c040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300c6aff7c5ca0b5276f009a6b42b3fb4bfaa1c8c3bf1040e25b6a9e833ea70e2221389c91fda974420e571ecf6e605b3a02302939167e3c61db40e6b2b494d5c5ff1f8f8f0982784fe4a98922eac519e52da8f34a492f9731680e709baf753ee4d8310302047c435bb500673065023034dd3dfbedcce61c7a780cf363fb5e47658cb4bb87adfccc8d02c4e4969f2bd20dbdd3338c329a8ad0c8257a55c20454023100e59734f56e783c4c241c03f394065bbef8bfcb05c96cbf820c9f1a9738944be6f1a8be83c40cbaf2236620fb0a1306a50302047c435bb500683066023100803f4168ca70e0d8ccf24a36266a64384a4dd292f2ccb336305902af9faba1676a6363cba32042c5aa41fbad2e818815023100b185030258c505c60da9e8de2cbdd8ca0108b80feaa8471d0d225aabb3965becdf95d00811be160c2dd02174530571f20302047c435bb50067306502310099c6f9195c75ac542643160e37850522ab931399a587e2d47491b61891b7cc391674a466ef798c32cb503a0b8cb3f52c02300b7adf36c4af73a1470b4fa1851d0c57abb8dbec858fdbce75dd28c24e50977dece8577745f579d1197a9e84fff735860302047c435bb500683066023100ce883aab0446d70cf3fd610cedec7c8bf0e0d73c561e028dacce7ebfa3a46b22a3b5f60b1b8bb55877f5208f71339dc7023100d9e72f77ee3b8953f92193cf34a6c0ff336c04bfd2de72bff6b847f65955eb063a068cbd7e852a2a0b98d3ad77db9bf70302047c435bb500663064023005fcdb31cf4721a60a19791e2706a9a2a946bf21d34a51f6702c0bfda7cdd614113162f3407dddd111501a89fbdb77660230395efd4ffb5acab0f46bfd973beeb85a7ad93a6a17ab607b6f7f5bd6712c151f946ea69b197450df1d2ef8f871e1b97d0302047c435bb50067306502300d71acf49e9ea308df502c9d67e758e7bf11516be5c96078e2af5cd214180942d945db5d382c16ead2163d6eb07ccb88023100b1f6197bb0e8adc03ec8be6aa89a57eabdf147f400bd047ebdf8e7b61e5b89b496828f7fde61dc0c7e7ae59b34c0efd50302047c435bb500663064023049595cfbdc8c51d7a7ddf5d7f1d36e1a9958d05c735fe87ca6a49593b51e3fe2acdf62cda522cb90c2af8e2caad0f3fc02307d4e52835ace5390aab0614a1d2716b8808f758b1807727a175594d1a5ea73e38522ac1751e375e5a77ff3c5733fd8690302047c435bb500663064023000e9a42a464b523ce5dcdc1b60ae9aff36b6c825d94c694c51ac6e3ce9a91ddb4328f59fe5f60355fd0127992cdc7784023069bd16a5c342f498604a285772ddbc8f143866e49c975ed0b6bf475bfe0161a28e3739385f3ba9b4dc0e534d42b798670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100825cabb2b17b7f5f0ffc770f4ce39fc587553ea8103b06d5b8a522308a5b67e6d13a43c5618345b6c94cbf30776e4f8c0230560b46f2df8ea0ac392caedf37ca080332f179fb8a6f0c6124ebfec78657078cf09c71696fe415f24dded5e3548f95700302047c435bb500683066023100f3a2264f44158f490ec158a931a02faaad2ab8e7a956942819e2f0c64764f5367f2bcc75cc4cb306debc99ae0904b2d4023100a4a3fb700004ebaad7c5ffba58796c625ef59ade3b17072dce877d57069c19499e154644ed207044b3f3ae02634ef71a0302047c435bb500683066023100a83d281adc7e9123eab07e1a813432c9e94e7b3b05d5b52718f082ae5f9f9ece2e3ef837e8d370b189050c742a5b31d8023100f4c5e8ecdf1e62244c1920ff9ec5859610e2c0554003db6f5551b5613c6cd4f262fd2aee7fb7dca7f7d57ddaf58e70210302047c435bb50067306502301eda00c698f97eacdbaf7a4bf261146f6cc8a02af7bbbbadee2483034b96023ba7d82fd71ea0140a6dcd5a435981b4cb023100f42ce97412a6c018a88feca9a5d7904841564180f34f4958c314ec1e9f053ab2d53e9eb1d46c3d938257877e9db50f490302047c435bb500673065023024e908d9115e257c819b81ae383d18c98d25fbb8b1d3ab855de478fa8348b369dd873f54490ba0995db978270acf73a1023100eb72f4148bb2ceb3dad173c2e80f37745a8a25f4441562c2877c91702371b52b5f3e4d66a7dd70077ffa607bbde97c870302047c435bb50068306602310086e4d3604de5aee570d167d42f10d6f3998ce32b2f539177f3f75fc50a1eb756cae264b89947703737616d809751e7f8023100a6ad6c8240c254d3d24bf3895c6d34dadfa8e2ac3b8a25fd6fe7506da0a592b3d8b2d42b073d9747ce22dbe9fe7ee27c0302047c435bb500673065023059f8ed7f09fc5081df5fd54f06bbfd45035a253b4929a3324746ca692104d61ad8cf8abf75d94f7a058ad1356cac01e3023100c743e3f03310f173078ed11c14b66d77f63950d9c9822bb5c85d08407d329b056e10ede5fb97f8071cd7ce5c295ec7670302047c435bb500683066023100d88765c6afdd5b8bafcd34500ca16ad899b655e809de821396bf4cae9a0cb825902451d1297721709c9c29c5931e566e023100f293d86c54fc99eefbb2a7615e39d771a9575f044ae1c35cf2fd8096ad58d812238e46a6bcfaea888663aebb3ab543770302047c435bb500663064023003b3d55c4bc902aa6c05bc7d4890f4c89d7984311bf11687ac4b3db78636ca43b4c67e5e96e61e79e6401a4014519da902306be15f7d15c74c023f734a6be2abe50744bd61c6060b72cfe5038bed8ff591fedaa5a89e12d0c5db5cf6ef08da6b45d20302047c435bb500673065023100da05d1178f107d2997380da16504c79221cee2109b79f9ec4d0a564fc4ef7b853a6311b0c50cc56b989df098c3348ce90230236f0c1b69818036736e133a37ccd5766e2b95185ec0202863aea5ea2df06ed110e640339108e134216328a405aed82b0302047c435bb50067306502301a0c381c4570a639837a9857e6e0875ffa6d400a2697d68356914a81459902d2df71bccd73fcdcc80cbadfc68deb4b8702310095bbe22a6cd6b1c1f2454cfb1c15ec344c59529cb0e456fef1c6d19165f97ca4d690e49a7df6513003c083f50d6d15ab0302047c435bb500663064023056264fa35e8e89a39fc0661b9bb1382004f0e0ed1e6eb4b4391503ea3d5f8b98346e2e0cfd5674acbbb2f2246ca006f102307907d9c43e4c9a60012319e3c279a636d4a81b74f62230764ef54b0be11f2ba6b2996e4e93d95f133d7bc1d59f9d8b3d0302047c435bb500673065023100a4e4ecf27b6db15663861059bc82a0818d056daec8c81be6d9e5dfc3cbcae937490c27a11a343aafb6d4b6885b97586302306be182624870473fa03f359e1930aa14efc4d3ced1f3a87dd08730e2f0480ccd6272d1f0d42f6db7a152fca30a34afe30302047c435bb5006630640230329c97f3cd53747217c5cd12e78ef72ce1eb45eaa229a7f729dcc60bc93acedd5068e5ef397494efbc6ca9195beb73ad023015b4bf5cb31e569d149f8e8510d7a84e8c10374f9ac38f841af884ad61048cdac0e35116d029602fdf985684c905d8dc0302047c435bb500683066023100d83a4c11ed3130271a3771bb86be1d746a4ebc2ede3fcd8fb078b40c1310610108cd7e470140a8bbabbcd6d889cda237023100f8c942915caa7526b23ff25f9ca7979860fff07ff64c3ceb2cdc9ae8a000a3a082195401422a3c41063bddd23762e8a80302047c435bb50066306402300ef0be583c823d19668cb76ff683c511456cba37cf90e9391cf4544977bd68bbd653c4cfe32b83fb9cbeff67f389074d02305235e808398f170f0230d653d63bce2e59a415ce9828173f306f403d8e1a5102d85c6b0457e57fe2759f3b2a895fe77d0302047c435bb50068306602310086f451d3098ddc56d53c22b52f35b8fd450da687fc3fd4ef42ce2a8757ecd1a4c60f1cad19d24c7af03da60ee94e9f2d023100d20f946fa8b77e5a5974cb700a32285b7d9cc5a52a1e23780ab9d9074066696061adc0ed82e702874d91436feb8ff62a0302047c435bb500673065023100b4c90610160a6a012e9bde58c0bd97bd1ad842b93c24102752b27c9647b8edf8cb39517a937a6872a99c47b7680bcd9202301a4f4c92d97f0628c1f3302fe2c36c65eb35aa8877af6d109a00b7eea72719b8a2c3f6714366b196bbe735d5292924300302047c435bb500683066023100b3a7b1fc405197b561ff50aea9634378e2de062d2bf34fdc49e4a5dc32fb1f4a71a8fdeb51dfcb2314cb6d00c7650d9b023100f087aef8026cd03fe22bb5de4813838bb1cd658bd3f7f96b18bcada03c56b9b9d55a72dbc9655c6c3aa0d426f849bc2a0302047c435bb50066306402303831c405a4e65742a44f4e074b799859ad6a0db6ec92d80ed49a390ec82c5e16fd138c2f15e039ddb7e99dfa7da5b6060230762b7e7bad69459541b86fc2177d43ee83644a00e17d9355b8be36d63b3265496183f2a9bfccd3d88cdf224b97c1c2d80302047c435bb500673065023100f10b93126f9a601b18e1c24f59b0ec7e8acbf65295b752e815aa8ca55191bca6b5459095c0bed253ac208627c9b93b17023045ed8e61fc9e16c56efeb0bcf9a186c8b5cf0fe1814bb5221fe5608b1501a02d72c12e1822fccd1e2c7aa7875b58191c0302047c435bb5006830660231008571b34711c576017de6125c7bd34e45b5bd50115ce3f8ac5cd986d6b38ea7b94cd430f3b8f60be852f6c43f04cd9dec023100c7d686056c1eedb8d8649ce4fdc0b3f65ad447c1814ef2b9a69dbd08ef94c4701c0979854698f3f3cc62832ea786684a0302047c435bb5006630640230693fcc27983b321ad5d6f8c05d99e3dc88963546d281fda6a82e59d5ca79b6198098e2ea547533b970e64958c10eac3f02301297305667c981712737f82fb974b14eb86d50026a723f553552316f7a0f99b3b1637f7e413cd8b26a1d9f2c6a6e01b90302047c435bb50067306502310084638fa079be0e7447a895aeaa7deb890aff8644d10059a547b322dc04e8954682c8438b8f76263d288d1ddc6ea7a150023053b756a2baf0d6105311cf89756468c58c246ab0a371f2895c9a30362697ce443ab17daaded58bef20158ba9b1731dfb0302047c435bb500673065023100e49e5a595a937f58d2568a83d9faf9c159e5c04d324cf6d927100efee41ba9e6589c94e5376c6ba21b1df98e66131a7d023076ccf0f53ac57d1db0a16d553bc8513087be6b85d97c9e0749fd74c91d5705e635fd65b87c45a1ba5469c0f074844ba30302047c435bb500673065023100a113d0f3925f1f404795a80b926d97ea75a945b6166f4fe36cda0041c9ec347dae58b9aed0197bfeee83bb5e4ebd9ce102305f7a065cb09b351c88a6be20f89737d6c029677cf6044f17c0f8737728360eeae76e5b62bb6a2cbdac30b6d9ca28bd8c0302047c435bb500683066023100bcbe5ed55eb0e51515f8db426bdfddcf9a594aaff300c740e6671f3c423f0b150b62227090094727cbfbb61626801f20023100a7cf3928dd4ea6949f11f51a5213618615e1efc0542ec84a0595f45d28cd167d15d66953c35bb28c4da4a89d6d53222a0302047c435bb50067306502301323cb247dfcc404812ea8fe950c5af81617c3e279510a3ce83073b9c49bed0dbe9818018bb77af030e11c13d4d818e202310083b0f3cd8e815bc3957cd1384daa9a3635736c1e452f4c4a90ee20492ba6c652330e85a3412b1fde1133e2dfa88f95870302047c435bb500683066023100adf25e5ea8643756ff2df84bd4e8edf9e9e7f7d0c9cb77ce1b3d62fc2b9f4fdb0daba790ab96b6595d5e1fcd6a36a9f20231008aa721564ca38d26816038b57a8c782db5ea9c0b9724dc55a186aa29f6b860d5d78b1263f4519138da053c16066eeb740302047c435bb500683066023100dd0947d4a21aa34e3b0f83ccb329cd356e743ee4d0504bcc033a797acd8b7938aac053713637b79183038af6923d8f87023100d584ee78a80213dd4e00ca65461ec01c1fdd1816e7b66df64017f9cd3b442f5ffd2177845ca56fc034429a1126cb9b0d0302047c435bb5006630640230027f3e8ccf5396e5c6ba5d76c9bc49c9e0efaf816e8020564ec2ea76284553df42ff6419366b5c50465632f29324d8670230135c82ca02ffea17a67c82e7400e7f0b09062dbb4d6c05c55d459a20e95db8d48a20243175249c8f368f654edc316acc0302047c435bb500673065023100d3854dbcebf6dfee35383b6cd187005115b079beee772cd71fdb3aac5f0e03c2ffa2825fc7cba9adf54451b6724a94ce023032a2f7e7b13ae91a1ed37231f11fdeeb355758a0cfa6b839d4f6b24013441208ed29a0b3bb82616a72bca9394c89eb600302047c435bb5006730650230682bb199bfa331fdd16b5fbf2befc0e810049bcc36cafc49c2ec65e59e2dc43252b087f93838bcd6dc7581edb8de0ec0023100ab2cc4a4dae1f2ab221a41d385d906138bc4a78a9fb52bbdb706318ddb9d9afdc12ee030c15df8a88935e3dcf0e595520302047c435bb500673065023100c2e8e03599e488106a6faab696133a0f127cdb4c97455eb5120422d33f2200eddbe7a0da7ca87fab3fc63fbb1985b4eb023024041ff0265172edfccf3d3f81d7866c272e44e822e2bf67b8d596e5cbaee3d23d753149df6bf40ed076cdd494216b670302047c435bb50067306502303fccd842d4894d70e0f5fb2568318317c6ff1b4db027be9058166d65ea3f2acbc64d59ecd8c9384d7f5681fe9998f83e0231009070ffd5bbc58748afc0f4084b4b91df9193316a9cf7d070e379f7c7e650a13e4eb6a013f02385862fe42682d897c22f0302047c435bb500673065023100885290bcf378b59d676ffc9a9a7c47fc814ad5109a320625c395936bc38c807c4d93d3e3374637838f4e298df4a6cf730230430ad20966cbfacfad600fbc6ccc9491c4cb91eb3d8008a45b56039fe49134f99b716389ec2420af06419dd711f592050302047c435bb5006630640230607e59c09fc0b04f07ec2c1838baaad73be2662778d5c4e16e7a48e53ac41ca89ed0db63f577fa2670bf34455fb359ff023060439100e5d4f5b817b0c9f9b11769838eaa28000fe1f5e7001fd27fd0c46ef9e4ee8e4e6f89a8c46d987e3b80f0b1040302047c435bb5006730650230729d00263637d7519045ed42b00a773a59fcfa178881616d5864e4fcafafa11870264b987737cbe65bcbda492b1660cb023100acbb60cedfc7282e3121bb39f65fb3f85f72ce9f332e532fc5c1980f42ccf942dbc59dc5befb0c0594bd078ab2b9f6b60302047c435bb500683066023100e3a6de5a98e286210e9727dad0aad8b805f43ffa45457144aff9e366b0c20bfb72c45f1849a6afc537c3b1f597dae209023100c7f1af8c23e95dea79247a1737a9527bbc6519af62ccb228eb7e74cd17228aab5a747fbb70ffca91116096ae985e24650302047c435bb500673065023025533414b28c9e24599bcd433e7291cfac8fbe334b0908330e48ec574e3800e864b3d7da3d411242d817e3207bf9fc58023100d58c1060984c185af78a0416447cfcaa43191b588278c2051d0244032de6e56a9b2e05072352509a493b3de6e0baa36f0302047c435bb500683066023100d8e4692075f9951e9ca7ca99cde0de705522ac0a55dcdb7e96985efe3db84749a6e51a7bee6db0e07cca4fcbc763cb04023100825953554ebd9c2bfb86f4de188e6c1f0ce0bcf00c48eeadeb32f56d5cd2cc225f9a43d1a0bb5b6a313fbe9297e0415e0302047c435bb50067306502306bb67f3b2a7f02e27d4b0a22cdc45292e743f1ef3fe4cd436e16b96d0af4886d3b966c43a33ba8da59a7a440311df9d2023100ad82484fadf449a86ddec4fe4beb0f229cc129d685b91cf31b24c2834dda696c283a8eea41b668560e97e83f874a73c30302047c435bb500673065023100f4dab21fe3bd2d541c090633e2c0d6a5816134d36119dbfb1270be5c251d200ba0fdadd7bfa162fb63732fe1bbeb88cc02306544435a27d382bacae9ee5c039d1bf3be4b4fc1da1ebe35b7a8da9e1b91b62965ea14f20509211dfc98e5b55ffde3fe0302047c435bb500673065023100d720bbcc992fc11354e0cff32ca9e414b8b42705e52dc37fc6f8bb6cdbb03e9e1f487fb30b5b6442dd5b5b866b086f46023034b53aa558e8439f3e10e69831a371a7779720c25465c6cb8c638795fd55dcbb77d3e035f5a06c159302969449ce7b580302047c435bb500673065023100d30bf4759daca2fd3dc14210dc92f977eeac48cba2bfeb1e2d73297ff47ddac8692532c7f19e8d8ad0a3a63cecec911902306a21c7df03dde86d9e714e5a2b80cdb0504bb6aebe1580bbf534b9e6f25c6cc11c6bf5256199374605aff20960472a810302047c435bb50066306402304777a0e97a54a3dcaec5af3ac575f4953f925d797e9195bab1539aa46778d4709ad15d80c6d20625ae09ce05152c7be0023068b849371a89685d35a743f235fc9072937e0df645bfebfa987dbab5f369971df600a12a8af5c1c3d879eeb4388029730302047c435bb5006730650230105dd4a34c0ef05f6c83a851da4524fa45edf60b69c025fa30239d2aab1ca4913c13d78430dccce074a377634230dd72023100e162b6f7aff9839d0ab6362d236fb6a6bf1a15790865b9df90d9e35bfc6496efc8c12a7304f069e0646266cae919d1d00302047c435bb500663064023057be917ab5071eb81980d4f74efc32c46e8c398bd7785dc564e1b7a4dec3001bf5e31ca21333d9fae9c42fb04a5e329b0230615fd24d8e7e71573d7d9ee606f011a8759fc02d5c7b655ec239192e1f95fe98cb521623357a2c281518378cf423b2da0302047c435bb500673065023100c2c5d3393a2bc774c70ecd81a17555a2d7db869cb78664a0fe14e46519ef47e00be3f47e3397bafd6bde33c0cca30d4f0230505a7808b54ecfab877bdb9fc700883d2fc0b6dbab6883b75e144743ccb456527d09d9cc08be185198d3e8a1ff94f9860302047c435bb5006630640230282a24a6fe2dd594a02ee225b915993f56742dac4a2e544928032c34552d97fd884bc9286e16a8a00ecead016905d95502303467afb0e9a9feb47e1d6dbc7222ee80f183a0062892056190019a6ad606670704f5235294b2c911d7cd547c41b2f4ee0302047c435bb50067306502304f686a9cf398106efeb3415a0d893f65486cd1c7fa266c09784f77a6fc46585042be70566007bc5e0696f3553b8441f8023100a6466074b4f2b108aeb52aa53499d965b25cf048bf53126ee0c6b4c5d700b9f362ebae9735ee38e1e072e311ae5ccec20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a0661cc142cdf137e2ca4637385828379c5616d592a55ff5b8e6b2afb0c81f03466430756c4a027b0ae0b86068129d5502305905699f3543dda2073187b8f22473f903347f1179b19186722041e54ad445749a2aa6a5a4a33c31ba97b559f7b4948d0302047c435bb50068306602310093c2819248e04a0bd2832b3c9ba26bdb72036bbedf587197f39e56db9ff6e97c47763fe1930c84580486f062a477f6b5023100886072f132d3ceb9715d50b2e9913512b41b4a57ba8bebcde74e1a854bf2f29d99fc16cd233da3a2c441dc37f78743d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f6a822071f9950dd61a373a3e69c07a88f613c1633cea446219577ba1da0f187e1cf860ed0f2947b559dfc89f3fc9949023100e88cba95ee78c602c30e8b06140b5fc5ae2177f9caa9a7c5ae9715f2616a91ec6c7182f154aa665a9db7950af9e0da060302047c435bb50067306502301c103a4b56e827dd74b6ec8635706ea948c8d58744335eed54cc03abc9c5f5995c5ab707741d8432c9473e155d5f694c023100c7f728ecdc87ab7568b8f72aeef1357a9d3d5ed0ad358fd1c89381e02f197235b95c9dab1c8e1ae7dd9427ce5ac3c7050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230304f729278d473d61cd3b9cb888ea44d6e89363e4288146d78cf6b46f472d5e4a8e7d6f7039bc9cb53365dbc6dc2770702301ce78a1b46a203aa193299c7422332b9c6881a72ba360705f466ebbed6b1245451c88e432acbb1e3c805b7ea66310e060302047c435bb500673065023100bcb9d3f0e01fbd6a85e755feee712c98ef865e3448c7de0f6a4087ccaeddfa4761fbaf0d6e338956a25938175d6895db02305c835371a7ab83e010f9110e4e6fa67e34864d379774a8b005ab55e6af4dd4603b80f8bd0785886e48cdf0984ff221ad0302047c435bb500663064023040cc5ff3ff73f366087e7d355b2141aece35e411effb26afd582876095d376280bab9194e571f88d9e8f837547c7c5c2023060afc6212e0a145c31385282e016bc8cf897ca6915fbe3e5c56182e3b0a58b3b428e130ed74c0cf07ef8edcd483754bd0302047c435bb500673065023068bfe1726eb3dd4983d5a1404060204ff65270fe914648d9e5040d0e9ba08da42adf53d631eef4f6cc5160ce074ccf750231009f6318dd1ad6f78fbc3ed71576a66e4bdb714715a8ef76d9d4ec10e8aac7df98d10fcedf45e99fb1d2cdea55415fa8df0302047c435bb500673065023100c6ec123042f5062853df74eecaf18b201159624447a484730c8c5b79c8129e8825e19ae666f65bebae8d05e60e4d580502306a557e47a1b918351fc0c0e4a7f1ce752660ebf211d9311ec1d44fbcfe70f4cd3e035c763b819a47ad06db41dda3920e0302047c435bb50068306602310091d1aa61233faf3934f75f5ac52cac60821ef112e192532720caf8ba707b405684dcb387f4072aace9354aa0d15e93a7023100f4e2d816610d6b206fe7e8b93710d7b40ed9983768c8d3b503b805dcf5988784cb0bba9918cda8e985504cad4afe14f00302047c435bb500673065023100cde2534f17c494845b13faa3aca3bc1724150dd501f584870e2816c890eaf1a48f1b5ee0409237b2d8b87340d0f5e1c90230765ae0996aa763948d63c6581102267b162493a5c2b6d8544a9818e78d650b6caa9c2275a63d935437a67ed8087657160302047c435bb500683066023100fc368085deaeedab869477f9119a242e9b2c67b4d74215ace0485b97329b1241aa165f1b0f67836d6b8982687dab54d302310083e6023a9f3f3dd92bd1f418803cc0ea56d220aacfcb27a228d076bef71d7c206e8ea89e1c531a5930a6ec347040e9c60302047c435bb50068306602310091d4a9e86cf5c4a3c19a6d1d49609dfd67710cffe319a5fb13c6ddd1eb4d1c152dd961e29c3bf984bfbeb1db3bc893cd023100ccfd6a3305ce4c4c4e2d38fd35d40bb8c1fca98ff83c5c53aa6a46833b910417e1f52bc7f4e446f960ea22ce8420eb320302047c435bb500673065023047e466873d3134c987b9ccbcd18548977388030613719842c1d309986de40fdd0300ae1d9aea9310842efedbe951d1f1023100d821c96429a16d94cd77843a1131f33e4b83aff6b5199295fbba396fc23aae41f00ac300cbda6336615c8d02d0d9157f0302047c435bb50066306402305cb1f9c588e94d957c8e44f7e9dbc365f17735ce0eab8ffced2b2a7260436a47cdf2f98bac3562a34b11da5b5d23aefd02302a3a3498b24fee47a2e7cfcce79050b36d7fc2dd1f122d13323c663780f78bc15d25f8a6d60683ac70d2831d77a26b7c0302047c435bb50066306402303e182feb96de0cb432e57fa4871818d8491519c2504acc30301a46146d411b44af70e087bdf5c1496ec94330e30d0b2202305487d8405c565c4a24c593d7c5365211f9bc3673f48c94fc1e744d0467a12ac09a5b6454c86f268b2d2565cf47f9d4840302047c435bb500683066023100fb69df1dccc9899f07ac579d1813d68639b87e99f4885e5edf46eac80b03c25fc27cabd914de21694d5e928d2759f951023100fb38ea0de2b68d8e44f8ff9dcaa923feff8e3415eef05ea151536d036859d16c630d10c2dc22f3512ef8adf3b11869cf0302047c435bb50066306402306ccc5a856569633680cc575eb663ec1945b012238988d62e7bcebefd1ec28aa9df26a79247e8a19f2692d3b6d6b59b8e02307d0f1684809ed3d9d3794984726337ea10685a924224d5238410808049662fbfae486f3e19dd61e7a1467b37ddea8d440302047c435bb500673065023100a93b7a5f843683b8544b4c23762d94547756bfb601c55973c3108f3778e64eec64410a765581df04459cc935f9da4ddc02303f79859e9fe3ea42249e85d052077504078004f6ebcf5066e324fb379da76476d0e965e2453202aefeb83b40523428920302047c435bb500683066023100c0e23ff27d2e04124c3f419e7052b033e14052238da74897be305829d4a23a3b19b93ae64fa61a390bb7049b2f3ec4aa023100e4e5822b6edf92cbd625f73ca9f2769d3cfcaea00de7103343ac3081922246897fece44f0b7c80c2d2d3df6e9da293bb0302047c435bb5006730650231008f667cca0357b28e454ab457ca021a534d517679e3e74e8a2f06b6a6c0f417037c5520c197f9c27e891cd62498b0b10a02300a6043a07b793f2f89b720862e551f9671b15d7e4721aa61aa8968c657fad0369ee80ab0ba3e0fde62d867efe91501410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ba510c751fb5045616579cec89755a5e0d21ec0c930d6035cf309ff22d6fca6db54a893fdfc1f3444ba4932864f1e123023051b25445538a5cad372e5ad503fec3507a9656b3ab516ea9b4e69d3d795f791ddee7461c661d11dedd6debe769be807f0302047c435bb500663064023048d48c766e4e925f933e7399f655b8cc8ff9a0db3acc81d4ea2d291a4df26d9a3bba4d899f0a7580aba2f5ee731a477902303407a5b1130540c21e0a1a85174cc501f599dd3bb9ed88dd0376b235cacf2566f54ecdefc5b9b5f54d4b97ef68f67d590302047c435bb500673065023071c96fe6310299be3366f0e4feccd73a46606c5712715692e6e7ad416949c54bdc2ce3f997e5ed2657df4cd5d83d72e5023100801aaca4f3262fca33d9d43d42ca296146823f3afcb5b8ce22587c0e41764fcefefc89e5c7479bcc9ab472426df9508d0302047c435bb500673065023100aa05449d337469e00fa83902504d63230eb111976e3c2aac402547b5188c0c7f8f17d2d6d0ab8bc8379d6bfb9c5152d602307d2820b2349440bcba712305105fcb09edb58fd3e301e9617732b8f25e9e53773edca8a47963a5711c209c8c75915e9d0302047c435bb500673065023100bff2250aa4ce4e91a6a35c1e66573923b235913fba174bdb8d9bcbf1561fc9371553aeb61dc8b1c0f67cad0703e5a30002301769b91e4c6c31178c33dae4fad845bf735506c9c03c207825ebeb87055f1daf4ad962f0549316ac06ae378b4283b6ba0302047c435bb500673065023100bf2e0d3cf44e516ea88bc3276bbc507bff9d34f6ffa98c81f25bfb37a29914b53cda2ea12a329f4accd2b2bc32d834b8023017f335f6078800e05e66c17678696d5917487d5aa66f310e039b540495072ecf5bf92527433e524a5d2fc574db129f310302047c435bb500663064023005271996038aae24555f26a91ab61c67a4de73bcf911a35cb98b78bedaa2c28be96fc6253dd767c847c748c73752d71a023009711f5b1fc9039cec4a1da2914d183e78d84bbf13f9256ed64385786683062d136c4b56d66798748b88711cb268a13e0302047c435bb500673065023003b5dfba58ec42b56d43c777fadbc9e95c3f3be45d2f316cde7e6e699cdc06b24fed47eac566da50dc5d28f1193acde7023100c25029e09ac4856b4ebcce00baaaca726ee6010f2009fc873cbe849bc84459dc7f706dedea986873860693a6256f4a360302047c435bb500673065023049263fc663d330628d4fb000601187cda9d1c735c271c29320965d6b88a113c6b84a7d618287fed2650390064e7b993402310083b492c400262aeaf308a2f61b47f65609cb0fe7bddf4823b4fe4d406506fe8e84c2cd284ee293df7047accb1157180d0302047c435bb50067306502301ef94987f54dcc6199a82cd7a6357f1b166ace1e7ddb0badf1131cef71eeb04a4d00b56eaadb688587fe51a6aa6ef000023100e725f8cd0cac2791aaf76d484aa43d4a3d132b9671fd6bc36190d8fe931acff871ca8d270150ef82277c2bb2db9cb0c70302047c435bb500673065023100c89555fedb2e89220011dad1586aa052bedec883ec89ec576399ab0091eb5e5fbe25ca1f043517d216b8cc9a7529e554023013ed290a72c26f24359326a2caf49198ba42d2de265c6a389658bbcb4a9af85da4d560609e234860db08c8d01ce0fe360302047c435bb500673065023100ca66aee7c6a902b67f64bd1b04b380ca254dd237a8acae2b83b9a940e132ab0e16b57bd55c5c8dc35079ae6bfcb0fce702306a8854b28445796fef16775481b66c2251c8634bd45c3809269fe947cefb9be2979ac8181c11e03fff9ecce7122574940302047c435bb500673065023050c220ccf7d218a2547b440e4978d1b169bfdd87afbacb7aa76c5f32db021cd15120f470f83d08233a6500da67aea47002310093be7f2a94bea2a2a96821d01fd1f6c85367bebe756a70e2d377df1220764bfabe3eac676f2a56d24b45d2275a99c1830302047c435bb500683066023100e6cc02903cbfd67649abaa72a696e725e863cb62a77fe33b791feef530a8f32971b6db9357e512782c7f534ebbbf669e023100eb7237cc2eb10e7afedad29d925981672e2451465f8467d0696239c8872484b4f811457dfd8fef35f99b0e97ed549d7e0302047c435bb500683066023100f862393d587a02a68b6f4b849b96ef15699c9f04fc83cac9db622a385656fe3addd1fbf1522603bcb168925a37dcbf2402310095b7002078e4a90e7072ea5b69f3736d470fe93283e673929553d05ef95f9388256852c68a0a3e6a9f332fcfbcc4ba1d0302047c435bb50066306402304e6697d090aa8a84e19eb7f7a089ca64c9a770ee0a40b6413e8b44901d1ec85774ffc0a6790e0b2b4b0bb952a882043f0230784980f260137917889f1903de5cfd33b3553c509aa6bf0d43480b27ec8b43bafe651a168b11136f16e162ef627877b20302047c435bb5006730650231008c065bc3261b73f23be6c592f79a4e1f25150d3cf854c5fce5c53f2e868de77eb55ca9368af3ffaa1fc9e6f9c935221e023021925effd71f18c82666e0e3281ab1335c0fd514d9aae9159b120d6bbb2f221e9975ba64958b279d48d83ae030f61a1a0302047c435bb5006730650230176c5496b3885d40543b7b111aa62a5705cba112ed0ebd690c40f9549cf797f7adbc93858dad3e91e02c1827b8f7cb550231009472d81539dcfdc213ebe72ca7d85c6a122c0ab548ec940ed12e345b726c76cf004695a84d96900cb81a6de87d25dd380302047c435bb500683066023100f755d18351d1e3b02f398acf182fb84af9a63c999345527fd4c5be56299dfda32f858913881417d06b1d96196a8bbfd7023100953d28d227ed8a7ee40cf783d0532cee32e50e4ff76e6ff8584d7724bbfbbcbb177186e87c24a888c0ce2bb6ae9011fd0302047c435bb500683066023100bf0ea6d5c9c3abc53745690b00b7e57fa5c98d9ad6d4ac46691ec322933a01c7f8c4264144761808f0c3d9e8a83b5c21023100c64078248eba2ed45c8787f6ac547c6815a08602d7c11cd4c1ca0add3fa81cf0cc3756bd267d64e1b5ff63a70dfdfb160302047c435bb5006830660231008bbfe2ec386ad800c8eb204165f9e7848dbef7a31785ded1808cc23dc53c10f966691e37f7c959ff7475d29ec15056c50231009b1c9d35665da491138d874e8874b4c71757f9f61852b683a6d24792f3e3c62b63868114732aed62c407cb0ca4c9e5970302047c435bb50067306502302b0f9b712f3f015ec8fbe8b4f127a387e0dc92045916ed2b6e3d731b170979763a7a06e7784d2af952a5bede8c7ef5cc023100b8d3f7b1c8dda965c3f5c5d613101b93b3ea801ed35741085a9d1bcf4f905fc77ca1e87f0542e93248e62526951c7fb50302047c435bb50067306502302373703cf10410e299dd97432b5effa4afb25643b34d38029b91f435c84ec3b51741e4d60389addcd4e7864e92e25aaf023100c8d595c0fc261b1ee63a05267c0a2fc6534cb915f94e5fb628259bb6f13c9710aa24c57b870155ff08d59017eb4ab0ef0302047c435bb5006730650230595254ac40949897d2bb9c886ec45b492ff6edd1c45cce29a341cd128b5c82e51c973528bc81900afcfd12a188be998402310087c0d71a8b872355fadf16053d867f2a99b220627c7f573ea5695673a9b0964824f89b4a3344d19cf4ba07ec138c2eae0302047c435bb500683066023100dd59eb7e3dccf17f8c47bb63916b5d8222532ea26fb87ceaa0b3b646135527c9c985dd41782d7f4cc8de811b70a74041023100c0628bb1a233b8595fbf1f910646639c9fd9c822b84723bea8b1c5e534925042481565f4844e0cdf853d553ffdaac9ba0302047c435bb500683066023100c82bfcc3d07a8aab7feabab29eff5ada3ff45b5fb7038ede61d7ed6a51f4a4f86896102c231b8de2f4f2606e9f9e044302310080819ec3504093b9bcc15a9bd5e3989010008a32c0683c5546a418e944ff3db5531d50ca49561af815e73bcb3f6eb47e0302047c435bb500663064023011e35d8d8fa2f3047e40a35efe56ba929a04bdc051df568f882bc8dd5aa3c4f5716bf1c91194c8ba49e7db5c1bde54d802305ec670bfd08948df48a95ffb8bebe61e1803ef78667b55dd23496419011d5a5f60a989ab7d407f5b7bfc71542ac5283c0302047c435bb5006630640230408749d46d3cc704ebd166dd60ef0d60ca3e80d90d0b9b6d0cba1471630a386ec3bd27a3689f23188bef6ccc8e5e734f02302f0281e738a2dcaae57dd0e79f70b5fc83657326c5dea2d14d0c65230f6d20d905637ba6da11ac025accb25f9af469fb0302047c435bb500683066023100fcef0d283c0f779cf1ccfbd3d4977e1b5f007738d8b43668604e63e58697d5c6a2812ade1f529ab1b7704bb8e6a11bb202310084648ed8fc53f55f40f8341e5094a902a2493645f61c4976b047abd23a2e805b56eedb9b28b6efc217bb2e9eb34833ef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fac8a1d25b4f3d54e141aeeff17e8c5d1b479578958f469527331a744a529138488f433997ed7479021417c64006a7bf023100e7eccc4b22fa8862ab8fbe5bc0198eb7611d2c46a3cab2e8c296a28613b9cd2cd0b3c45cf1575d66422a211cc32925a40302047c435bb500683066023100bfad8218f8b8055cee69ce5af4b0dbf012b9e28f55e0a1427454a3b00504aaea54ca5e9d0b2fea8de8cd6eb312ad748f023100cc4737640e3036be4f1ab5676be1dbe4698c9484c539e40a4181dcd840ca01e063755e014537cc13b8fd005b381761f30302047c435bb5006630640230155519b4d583739a64bb64363ed515eee7b7a987af8ca16606bbaf614ff0d29c978838ec72649d01f60532697bbdd2c50230564c6f7701b7125f1b31fe6d8338438f62d1c0c394c5017ee1c8043112a28b094d5c34b11f39a0b7a39914e567de97e30302047c435bb500673065023100d3d2569e9fa61d95a06f0d93b85656a9424703774c452dda461fcc8a9678d228dae3d40f87ec2fb44496cef3d84465c30230688d7b058054e5607fcf9f6246de0ef27ed483b2fce67e2278db748bdc731b6ff473905366a3e445a80ec1d9af421cc40302047c435bb500683066023100f8f7ff6a04a1e7d5b6fef85328a77b43f682f74017f67c606ffa563b499abf0c4610efe36572065eaf02f646a971385d023100900eeed40b233a696569cf0e75e47581e91cd0f39ac9e174d5c67745b90a3ea3d046e08c369bc6338a7dd8406e0685260302047c435bb50067306502303998e45d91379f4b495e35d4c9b0659d19ddd9beaa2fd617e1a19f892372e84d3c246ee59a6a53ff024863c49290c752023100b0ee10050313c9b26db5ba7b571c039b617d9b498b1b05973d6bd0ea286d7732a11ecbcba91efa505cdbe05f78139d490302047c435bb500683066023100d298a031ace8746be37b6fadfda9d01b1ee30b3055357eb1e54fcc85be7f1559fc81a691904f4e2895fe66dad9d584f8023100ef0ae42b721b0670f833ac6f9b4f6a878afca8321bbb2be86d8820470db72a2212a63669401cd8c8797929d5b3f8a2d70302047c435bb50067306502305526e7c6d69b865528d29e7f1a50f05c67d2ebee07107555c78069ef19ac1b7d12207228da9d5979742f3bd0b5342fc8023100aaedb95b64baac2d5456af5ae6ebb412104ec939ade7d0fc574531087e380b9b258ff75304939f8872b19edbae18e74b0302047c435bb500683066023100a3e798a126981394f9b8c950c7bb242b3c933b47a927a41811e4bfad93c9e6d8a8031a268165b705dbcf4ee02bea3ab3023100f545acfb55652d7acfaa55465befeb3d418d3fe35a56d0f6aa160619e475884b7f8fd107ccfdf10e2ff33118c7f8322b0302047c435bb500673065023071492f48ae35405aadb79e61caf578c3d7aa448909c52a9f4c58d3b9e389c539f09bac0bcf8d2474f3cebd9d92483912023100dfc81d423296c3d75c5596ae5b32575350eebffa27fc719b0251856b383d3606a7508b81235a503324735c3ca5bf3e0d0302047c435bb500673065023100af65aed38bba01a48597984ea649de638691935164189fab557b7c32845acb21175959bd2b2a673c3ffd134ad27ac2db0230158223c06fb14b948cfa0500591cbba0991783ca78abcf0a5ab0ebc1e01a7636f171d043156f3d7cd1360ccf007739950302047c435bb50066306402303aa271476e59d6214267f8584bc2710f07a51a2d0665dbd35e3ff82da50d0fb2d750219a9bb38bf658def26935e6d23a023066b811eeebcc852e42db8a84491391855621b81d485f2282b41d0d581805f1779818e34201a93340ea1917cb5069edf20302047c435bb50066306402303da86437d6a3f142e2f5690724a246c94f65d94e4d0c1805ab3d4907bb91516f45135f9591299e7d04e29a43f0ecd3fe02306a674082009b56017106830e456323919b4106f219f78366c6641252102bd8534b25b3f9ea531de1c5d5689944e4cc240302047c435bb500673065023040741dba6aa01ca4203ddd9719e153da5a71a4e8cf54591b9b632561fdca42c03a41b61df608f4599a7c5917af732498023100f3ac16e1e822891a06c2bf113d5b7d98cebcc38a3837072b18e99ae602d551038b2b47670db921234253c75648f4ea5d0302047c435bb500673065023100bbfc7441ac4f9483a00c01a0e051b5f4b835b19c6303905c7034eddf7b352d175af01363715e078e5e0f259c498cbc42023053b0664fe24a101b19c3f44954a2f8a9d6f19b85dada71662b876ead578da8cca1311c644bb4a1e3d09c9a0e0dacb4870302047c435bb5006730650230756d8c4efc8f817730caa0c6154075e87671ee1c212a8077ce28714040bdd1938d87a562c90c14cf6ed6ea739ef6520b023100fdcc605509d65d1158a2bd3cf8472a815d7a9e718e645628b649cf50c77c48531d00ecdb2a82281a3368652b25376e580302047c435bb5006730650230611277a99d1b73d7c8db483628bfb638d80830ff2abf19abc7f4661972a36f80c2b1d5ead454aefed1865a7376dfd466023100e404edbe3592f150d5e7a3b4ef15569bca959d6ff322e42582e6d073c797ca46ae9ef13404c5f4d4cc8b7bfc86f08b850302047c435bb500673065023100e6fc35f769db7b8bb7d379d265dd87bfbf1a02de017a7a9a206ebc1e11d5a610cff785aa83b371162398d129bda6855e02307b074bf4bc7348032995033599e75a00b8dd63e258d757607a86033d59fb97f2b25788543e9b2dff6918ae728d3ad9ad0302047c435bb500683066023100a347cd7d8d784f19f51cf33a60dd1d0cf748b713b465d5a81d4c06922f15ade10e443786278076862080bb9ff02c2cca023100c807f0e32ea5728715ec2deb94b29ecce0f16bfa362248cbde2ae0d78b1d6a7b6c13ccae02aff3715ea049be294408190302047c435bb5006630640230021b20a79cd2fc69a5f108510c2635dec9c472e09a9435bf89161d9d26c0528490cacf50b31dc3d02c0d766f55111f3802306ee533d6c1d0b23dd4e660fc4c1a619b0642b643d80b36a4c86e621133a085291a586762c14899e59cb3a5a400a0e2ef0302047c435bb50066306402301ef5d234dfaebfe64ffe3ca174b623a2859b54e7daaf4e1c465abeb7da00526baaa4e426d41169a2e756a6214edce0c802303c00c7d0cbacd52203dc2f28ecfba23ffcd4550a7d3180f40843ed1a39881a5031962817dc01d702a9580e91206ac7b90302047c435bb500673065023100f8357fe99e6e3518658e3b3bba9ee284e8caf0f679eeef892d76495b2981777273555fb4823d17893745e459e3c1f57b02304a748b27fdbea6cd6a424ee598f58d8e7730437762dc1268604f9f01b1483e48db42e0da83cc06e344c69a4daa041b880302047c435bb500683066023100adc0e2ac7e890bb4add5cd99febc3e878425548fa9d5c006b9048da0ba7de8d76b48200534f2c588c13943dde6b7b2f2023100c4692491a1abd30d66c0798316e2f528d10a43ecdbf279847ef782383e05b4981a122bf413f1cd0878b648dd07b6f23c0302047c435bb50067306502310080925c20c734e665c0cd8a54c96475a4d830ecb15749187b3920470fea815a7480553ac0f45447ecfa78b2b4209a9e31023051fd2eee7eac82399f2cd73e20148b73e1f2e24421915e94f8e9dbaabcbfdacd423d2025f9eff095bd16d9035686eab10302047c435bb500673065023030510578f5a8ec2305ee3fc6702cc43bf91d00b7a7657be4aa793aaef4c06d347504ae819d9b0600d3928efe5a446c3e0231008691f2b10695daf1c8bcfd9afe044de1cc9d44af912dedf94c7d5ee757a52b7d3c9a51a68629a7169bd78b978a512a830302047c435bb500673065023035ed2b9ff6b0d775c6d1efccf999c10f6383ae914587b065a0242d2b78ece69a6498623b8b260168c611fbbf8ec49b27023100a746000dcc558a9085c66ee783314edb61c336f53a526f7173e2b4552704c773d6a6257a5b4ed029b43441421c58fb470302047c435bb500683066023100bd2a8cdd333c9f73d366d8b33e3e368369af92d84ba57433e849c2049e3fe19e33da64bff3cf4648f0ad183d5d9d6bd8023100ff06f90c8c9c2d3b717b9704b965b166829038ec8d4b79cb5813552c684cd325df0d1214747c50787f018de8f07d24a60302047c435bb50067306502304075cc49a06a4cbd2f9e8433aa05f39da1cd1e4af30d190533f320dacb7e0900d89e828b5608ad7cf52fdd0c6e9df7d70231008f57fabde3c0f50ee5447eba512051e9c5bf1b12c3b46112dd9e994e1e9d802e2d0d98251b5f345448d2cdebb83986f30302047c435bb50066306402302a1d00d8342643c1638bbfe0c4f531b709f413b45edf3697575c573c614f6b14f43ecf837da8a4b0220c4bdd8a60b33202305fa745ea92f1421622a4a4ac53f443a2b8f757609f5136c4a9bbc47f714b2891bb2efed6a73803af46fcd63f128592e70302047c435bb500673065023100ac2c600f4fd35b2c61c9dadfde6415d83ad4c3a287c89ff6edf9e4ab2439b0bff639c2d676fb9e44b0404aa77a672d0b02304cc141f451eb328766e958876b0292bd0eef8c72829f111f0ad74e435f9fae47ad6c376fe6de9607f2dc0dd766f99fd20302047c435bb500673065023100820f888444a90fdc345c2e4c44e82f5891246f0f184e6f1af5828d9efb8640f6a16103f238df1798e6b1cb6379909d0f023049fbdb6faf1bac55f9868945aeb3072a15f289332671178a8d54d98f6211eefbec53babf52cf3fd313d550c423b78fd20302047c435bb500683066023100a6b7656021ac51a1c958248ced4f444af0ea7a115984e7399cddd49c05579df81baa17c87889bf898e9745059979593a023100f1c9365bcae8ea500aad8c0971a7d17c3dacfd21f74fca7992be38680880059eed4cdadde33a0945159e3b016b2ed0bc0302047c435bb500673065023100a171a3184200ef0cb4465766cd2a75ecb09fdace9c2edbc2bb4d3cb5e548db798e3b1c2b7f2106121a9fd5dab6fa39f70230699a54b04822cbb88ca7f891ad123d74c023d6780af092dd10e6688a0f4290da1e71daf5047a8c4294721d0ae094338e0302047c435bb50066306402301f2ce8f4e1ae7f3146cbbcd5a528f3e5495267f43e737d213592437878ffa8e3bb8a6f25071d5e5f656acd2d31b055f202305afebd722285282383465f7f7413eb3233f49e5d1acf83e03054f0d5460439ed7707cd0010635eaaa6f19f1f4433a3010302047c435bb5006730650231008698f9f844bd5caf535aa003615a58e4ba20a301d98eff27aef35ddcb837c074ee4dbf8e5ff180d7f392e0df3351c9e502301f4ecc81441a8d160d0e1fe649d40898c78c904e85dd5735cbc5e9f46c592a89eadf73f45bcb4af6db591447eaddb3290302047c435bb500663064023030da08bb06711235679ef016f917055ab34d99dfc9aa807e41f3c44307f2548ef67dabf92dd94e47f10a4633795187250230686dfa48855d6a1ff700a677bec4e1b4deee92e9a18eba7df4f82404eb2c19d492df5735e8d18b98e8f02a402fcccd980302047c435bb5006730650230416f3e6b13a90c92018656e183e171f0a7072858eb88394e1b7df6d024436d5c86a2ba072d17219f42acc57b52c0c50b0231008bdad1630d79cdf7313ec919500c5fcb358c28d85c565310479c718948d10cf6a27bc0abb38ffbe6bf600080893805d20302047c435bb500663064023051440f54e8dee8dece607d6880737b4466ad7d541f84333286c6a7f90a241ba43d7f479c668b8836cfc90e078cadbcd502301cc1cb75b42e9c5382af12f144f3af91ef4f25d416ab0116972e57e99cc765baaafda5940ce38b97facbe70a6bb52ddf0302047c435bb50067306502300aa8d0164998e5e540c55938ece1dc7d43c49559f811ba006ee6c40ec5f880b46365127f8960f15fd8cf20a30388c262023100a76035b93181d6755b0f5cf36b3fbd777b55d6d0596f39dfe44e658f26adf93b37ac151ed0b55e1a4bdf71571856b9e00302047c435bb5006730650230543decdd15b5bf06b09434fa370763e420ab486a5849f5942484bb1522f9259eabed40470f944f26097f80488d9fe15e023100b3019331b50122a039c952d14d07085f0c5922f0cca4ea49e0bf4d88b093b12d2672a7290a07ab36f84c53907a767a9b0302047c435bb50066306402302d6ecfae7484ad0a3d01aa425b5796518079b6893a49b7598bf7fb528bb086c170bc4d1e95d30e1a2c415b2b6138d09d02301b92656b13f9d0eb376247d9608c6bc352319018894d390ab175571a6ecc36482158256462ec808353fc8aa70f1b81090302047c435bb50066306402302be8ca788a03fb16a345a6f3a84cad916cb7fd8fafa80757cda6a3bbb30d8def830ec439eed30c16e8bc864294efddc30230343f374bb5158221bdd5a55f20631d1c5c146e2202080bc2aefcbc7773733cef18bebcd305f60165f60f84c525db28b70302047c435bb50066306402301b1c9919791b5a6fae5fd0e20d769e72e47c0047c34e81861d78ceb10e34614ffd6232e8ec607a7ca2c2902622140aa9023066b95b3db3b9545d695acd0a8d2c1bcb22d267a3dd00a7c2343d4c47e7bcb86f418a4bd95efd5c3d51248964a0a48f300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305275b0b21e834a08c0c8893b9918226857aa409df11d36443ebe353689ed40d1fe9dd555e68ecd2a7978b1223522bf490230257112bf9d838e0b443618c1c24128e4c996b818b53e1406fee173e7b7cf1bee7eb169dc9c97b9a43082de66c9f594eb0302047c435bb500673065023100f319ebfd1800391016a8eac3d63768ed154d80ce42edd021fc237b57061d4a4b75582b3a16d599dab52254454ba8392a023066ca5f2a9ce6a50ff09bdacb0311ea8dcab4d7649c1ff79f9aeafbfd6578b2688ffc6e42d6353d6b42c46619f08cf3f50302047c435bb5006730650231009904826ffddd6984dcc80a1f483f9432ba28f023d34d2221de06d31f97544abd11cbd5e9f202454a1b5742d8d587ef5d023002a7d03085ce472aa3b793e4db74d21a16b23e7bbf660b12456219e26430ee4ce36e3f12d1e410075d6e1e6cdd07b5d90302047c435bb500683066023100ef6b13cfb2ef274f213179831eb1be032b3bf4c06eec8f99dfabb613a0e61aff39c373dca5bd2f2c2e1a87284e1eecc60231009a30aa7f3264d14cbf4f42ab63079131dd0154a37af49fa0a02b056ba49c1def062e1a8bed599b45aa50e89be4c7ab1b0302047c435bb50066306402306741aec98e31827987675cb7b4d53f6f1578ddaa68b0f29851eb14f0dbd3505c625495936d30e77df9789a95462e452302300ac4c7eafc46168d5e0e55c94a5c5d3da107ea245361d6005f54c235ba29cd798891a931453213f72cb5523f8371f52d0302047c435bb500673065023100a6a50f5e8ebf7493ae7751b51e938166d4ff73dd656b7189a3257f7a1b336d68cb6155f6d08d87ace125f85b895ea16b02304114bd36a160f5f891600ff7fa7c35b1b9cd47effab4147d5fdfea42c3c11f64db98063f0d9e0eb7f5f56ace9864d7690302047c435bb500673065023100e007f7c9deed97f6bc9ff469467fd442997b5f84291ad16b267e9e7df8745859c63540cb40a99c09ad2889834a2edb91023047782a53a680201e88d042c92627cd9347f885e9a1bdfdb63803b7224d6e35e2b8291612832dac35af0d68c9c8ba6fa60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023005830eee9ab260ec5511cec24423b9c0e4632049049f11fb173f4eda0d4a42a744f6fbfee0c5bd2d9e0434ae6b2dfa10023100a7d62eea6de92127312bf73157d5e337d12038216f395437834c2b7478a4803c9c2b865e321eab24b45b5a90c9871cf60302047c435bb500673065023100b414e0bc4ec594bb181c571a95490cc1138913d224bbccb434414272bf9b7df16ae2556bf70df1061fabb89bff0d8d3702301bafa3ad677cbc5fc8a1c55b31c34872608caf85aa951ecd50b55abd639f713e992571de10d4e5e08ebcb53e95a961840302047c435bb500673065023035b6e2384bd9b72ecc7f67d2b777663f8b5199eb724a7e93cccc53500feaae68731caa7048c8c883d55c5f0fef22b2ed023100cafff200d23814af94052f182a505d3cdc57c4b49ce510640dc14a9274dc8a5bf304b4a8a7339c162e0e90031645cfc00302047c435bb50066306402306c1338362784148d6cdc42582c3fa39c78de38046ab5338f148ca272e27ffe4da5bc181efd9e5402c3fb3c05a3ab795a02302c859507b61895ea33edc3074a9f63f67d99641eba56630fdecd96668b86166606b82666952a1f2d6d7649e1fcd9a9cb0302047c435bb5006630640230431c9edc767990aae35f9c08de5f2f62fbd114380e94c5186d05265995eb1981ec8bde03491506e6edf090b8b7cf4baf023035a818a8f9a7a89a3bb1a5d1ee0da0baf50b994b7747e6478dba2880d3418063e22669a941ab369221e07d4fb169722c0302047c435bb500663064023050e06c2a7f53016285971b14f19135f408e32b51a51ee877bc37c91133c283439ac52b00421a0a0abe52ab5d423aff6402303361e6e079c47ff156aa0453fe1c1902364923132e148d2b57d47759b78959d6e62072ed5e22739a006695172741cd460302047c435bb500673065023100b529714af66d915a1d8dfc1fa3f8d88389d3b852df62be497299c0248387ee13ee36378b02f0ec04d5307500258b8b00023068f9b4d15cf544166d257790f586454fb173c40c38b956598390cd70dfdc967432c08177cfeda1c09e353e5b828c139f0302047c435bb50067306502303e07b27f66090625ae1cc899cc938b32a958685893c8e55c14a9a9289b2bafc38540d5d8910dcb867d9d073590cbe8400231009d485810041d01e0035f625446d49742631f778e4701453459f1bc2e243686f4e6f93281afac72e48940acb3c6f5cf490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304b53fe9c703215bc1fd0c43b6ea629fc377c89967e3a79b3fa5271e0f72451ed891cde0df7af06b734a202cb0a86bae6023038efe9252bf162cdf51e23d7d31016eecc27aed08b702a0e54457885be20b43510c93b0a5135468a77e739e3ccdb84fb0302047c435bb500683066023100fdb6adca495515044edd03a86917af6a5b6733ce01ef3bd7e8fd506fdcb6fac71f6fb7194fe7e409bd8712260085710d023100ae0c5f0ffdb8e9cf04b15b006333fe00799b2f33351c0a581766c7832c7e886cf567a5d075d3acbb1207568799a93a9a0302047c435bb500673065023100f66f58f3ebfeee65e53ed85763817c392a9538569ab12ee754574a27b0e031e27b3c8a33621db8db532ef19334ed67f002304e2896debfa68d441ed896897dbeedb9eb13ccb6563177beda507206630a3749c9478a9bc22b760cff4a9d12c4aec4640302047c435bb50066306402307e0f6893866cd5e71f7b03f9a99a99bcccaf0db472a23f7d62eabfae062b469180b0b59aa7de927e54ea10be5619443f02303500eb34b45b548ab692ab838301131736309eeec86451422cbd6292285663a0eb774e8671d8970df7ca7c3e6fed00a90302047c435bb500673065023100aabc4b4c60b730daf0ee85e548e0eb052612cd59475ffabb31931b43579ea8ffeb0c72606b126da50c5141a121583e28023071b929efe9eb98a0249a19ddd3a8299340cc4214801c0789e3401254c5598822ed013ffa1d411db0c610ac39a05f24120302047c435bb500663064023010e2fb46477dd04dd4989f45f1932b52c8c13a6440162b60a15b82cec07492c9663ae0259ef401356813a304c3eba7ac02305e878d7c56a1e269414270017f71bc3ebabc37e822994c2732cc24dd7ec21df434a57398bbaf511b7b74dcd6e849fa760302047c435bb500673065023100cd6424ef2f6795664e5b5285c2ee636e015b458fb8039a7e1f6ec15b0771352cd4867c29611e2adb5e3465268de421a802305eb4e49a0874443541ce7390cd12f9adb11b5f09f9a0b7833a6b2ebb66dd3d8c68612486a302a75984e2f2799c76085a0302047c435bb500663064023072b006b63c7528a2c251b01c0a8baedf63128a50fe6dc0b292a9372ba77e11ede2c66921e9acc85e5bde5f7d27ca2be7023048506ca29678457b4ba4d40dbed86c3125a3860b1a12da950e97aa31346dfffa5cb5efdba740f7fcdbfb8b9fbb60c8040302047c435bb500683066023100fc247299f06c1933fa02e5920e655d3b4b14b32a56348c1f788d9f442b3c1c7627395e047db3a8f2908d4055f5d36222023100e53e65a2dabe35d5f1c04aaf8752adb2f40394d930fab9c3dc0c88632cb8117091f98d3d30dff91a9f86ae5880ee9f440302047c435bb50066306402305e19b8c58501c944fc8f82ebadf06600949328a24f475354d29453e567a70ac71e6932366c24aa9c37e75a94603fa0f3023036c41abfd7c7cbbd96406eabeb00e44b722edd813699ca83f0bdcb8880ba5085a29aaa361de97f3ec0c12bc8a1268b6e0302047c435bb500683066023100bc1414d07dabc69ace64555cf2a14181f33e14f335e94ed1c865df99ac90affeb2a26dbabce747f05893a540ec5f5903023100f057a76a998d3234bd9699781714ad16e566a89277390cb8e12523d4e849b76f83f235b00097dfb9a947d3ea538264460302047c435bb50068306602310082ab8309be291703fe76b4a78f767c31176639cc48eb049275b3c620e52c863bb648a3a2581207076c33496684ceb0e5023100e44725a6a735e34f764378fecada746f898e1a13a7a1743aa2f230761dbe9eb8dc03506b79476b3779fa30a2177ae9660302047c435bb500673065023028431bce5319f4e802f0def45852e5b6e67a29dc0ad017ee3f368a6a97798ccbb61fae7cf05447ee1fef3d533da7e527023100e5f21b7ffa7559c84c6c92dc502523ec49ed9b7c9ecdb3adb379e149470be84614b9afc0b8f50066bf8998489dec3e270302047c435bb50067306502307c9846c9de5b6c112ad92a1e9d5ca9324cddacdd62e7336f8bd6ab3bb0a1fd0784438b314d8877569fc2bac5733d5a7b023100a7465dd2d9195bddc42740f7367cbc9ed4fb99f6d696147c6e93ec5abb4c2d5be0a91c61d9625c30f32e19c6ff798e700302047c435bb500673065023100a777a379aa7712028e2e6d117cb6f37a8bcf3f2b59cf95a2de886a472e64086ec2442f3e2dbb6d181a456c458bd06ac902302f5b8133ef8cdac6632a061cb001fddbb99d3de3011c43c3ddb25d17ca19fd948572f4b3b39ab8b2bc0632829a1e86dd0302047c435bb500673065023059fe951bdab9d464d28130080e1432193297eb69222a940a1740b9e9c74986499645b10d312754ecffca45597e1578d30231009ac2954d8225b7ee39daff022dce610af3599dc521df4e88c518900ca151fc63535d22b7d28f8364764f2b07527898200302047c435bb50067306502300b18b8f6854ee75099912cd6a486da0e795c8bb1d9b64f2ea5a46d9235f29447673c1eac5a727d038b37a9248cf40aa5023100f75b595581edebad6b8b1e64b4bc484e55a4d598b5b792bbd5dbc14dbe4b1e10811c44244d60140c1982ab631dfbcf610302047c435bb50067306502302a0fe041366ddae68bc7b2e75d31ac7418f686c188ef4049656c4dfdedc3e2b9d3d0d00dc1ada19f05a12243e746dbef023100b6e11d9b9d457a0d64c4b726cc31e28d7d47cda93e02cd39a2838d4d5b8c8b2a73006b3d979ccb27ac3ebffe302d3a0e0302047c435bb500683066023100bb3e890efcef00b59be3e42dd917906c3c989101ac3bf7feb115c487536da6b088486da9eac29712027de9c897c4f265023100cd499fad97ccce2252a4dab59d5b25507f21ed5c5184db786d495186225ff91eeb9338afb112448e387331549d0448f10302047c435bb5006730650231008a73e9264477890a9ff91dc7d9f4d0add08d05fbb6d1425fc07e21a3b32337509499b22be07f1d1eb9b02c43e5b0b8f90230699a8c112f0d86f97b0bfb6345a05fcbe9ae7c87064cc070ff23769b0fd3bb4867e233c8203003a983144454c3906a780302047c435bb5006730650231008c8a7ccb508d1cd622e71476a899ecbd6ed549a23e47fbd43d1f01a4bfc50070f154654375b248bb485b4d2f696f803a023060805646ab1c57e1b072f99d25fe7b4f2564c99cb1d8f917acb84b15d4db716e1c2181c3fba97a1e154265ac38cfc2ae0302047c435bb50066306402303faf80879f4245e52f5cc067a54ae0bfadd9ec0c97ee7c09b56633f6c6a7fd42eb954e76b77d70fdb3f1fcc3e56c33f30230203dac2464c6808029213f98f048af394798479990ac9707d77f786e7b087187db6b0025e32135f8e417a308736c72410302047c435bb50067306502310089d7036db32b2c167bcfede92a936d21c2a662345ecb44aee0e56dd47af3f6289a8f94a82787aff0fe31147aacbd8dc902302702113694a84664326fdeca397b91178b5f315125057b31a22eef8f9ae9e9e078f1044cc824df852a691e727291c5be0302047c435bb500683066023100eacdd6ed14826bba5d476d3f2eee386df4c5170bcf3da5be704dc33eeb94fbe71bbe26841434b26aa925ebf28b72e203023100bb223f0f47eb0dd6f6ed95c39766707b305200eb0540469c3e616cf7f5f55fb156893b3145ffc8501cd6f5e0e3f5323f0302047c435bb50067306502300dd94257d01d634ebaa204bbe0a6c6027ee5ce185c6593d39055c9972c9a84444b0ba3eb6298507bfbb811e2df7cf2e30231009ab45bff4ded99d2ee431deb26f67b6d6bb8019a545b84229daa26d5ac9dee0215d5564d550cdc946adff6a355dc2bca0302047c435bb5006730650230775c6bb9f1fae80fa288b7e9ad65a642f0a5940d4bdddbdc6d496e24c30c4916741843a333ecdb2e24b4635fc13828e4023100f8176345d5e8d838358ea867126a7dba7e51b5c8d59370d4671640a38d258990eefcf8df8ec3a646aabaa3074c9c22e40302047c435bb500673065023100ef10745b4aab6b0eee6e25341edb62b619229782745c05dbc0138d736f92aa817ba76936daf7ff14cc024b5199d3229e023066db93287df576c79b4e71b47073bb31cdeda773b2a611e06b89b0d58dfcf5eac0458424e1b5eb685c31391d04bd06fa0302047c435bb50066306402307f95315ae7a112bdc8d38fcf5db760f713378c19216189fe8d7af46e2d425735f850b99bf026030d85a9af961f22c4490230303643b047401316e61b6087ed9fccad6fbb6d77225e3147e2a4f50ce708545f53cfd1fe78af0fef9a43329ca3a55e0a0302047c435bb500683066023100a158e6e6bbcce73e7d29eb0187afa896b29cb72ffbf9f3454897eeeaa2dfe195a8ec4980842c4e51d40bd24cfdd76082023100907edf863336fb0fd5ef1adf4aeac15bc0b3494aeecc98c25ca9fa0e1bd49b59150df3fc2a484474d3dc80cb435f39600302047c435bb500673065023100e9fae084cc4917574b9ac6c9208aa0567f944f41274c86d6685cdcb081a0777abbb170a2ba440863dc92bc5a5f9430c402303578e0bd2f1e36802291913241b120533d48564c42b854d1ea4fc5eaa894341cd8b95d7f131b12360e62568e2148498b0302047c435bb5006830660231009c5091d31ee331cc5b3e3d04a0550795f5198d3f5518b9b34911622fdd73d1c0639cc63bcefb4a81e8ded6627bdeaa86023100cd5bfdc78df94fb923eb0b7bb5a861471405d8a51e1c6c9f7972f1924592156757162062ac865872c34706c82dc3d3290302047c435bb50067306502306d268b9bea4d2332cabeaa294a1da352e14cd5f2d04a49f2cd032b1cab556070e49aa1a7ae9c4fe89a52c55d97eb5383023100b6af243806f9c495ad56d0c0634a67e49be85e255ef0df21cdd36f05c10b6421db7bc3ffe73b341c953206176da0abe00302047c435bb500683066023100e8dc3fb20e49d5c23abdcc8294771d1df5af2878a829fe5c4e0079806bac9da0ae184532f163aaa317f4da1abe731434023100c955dc0c553147e7cb99b21313eef5a1afcd70d13bf9113eb8f2de800e21d6ec203109b0b183cdd47dc704a564907ff70302047c435bb500673065023100a221a14425b1953dae587cf36b8d7c0298ca01c5c94e1e30bee866e03f04f38be7a69474a0d361b01cb35c522b8677c70230126938b1ed2a171a9703b0a407a4b96a86015548a3d38b850e374e1eb8baaff1da62849b2f50de7116a44ccb7d7481ed0302047c435bb500663064023052488483487cc9f1699f83b957e59ac7a2a91852949d26338327abab138e40a366f43319b9c3c89732c6ebf166cdfb9202301a71fe9aee5d56c300461f538a39c2f2a90820bae27859fcff1f9fd4c532086dced11a7d502b204212527258cb0ce8cb0302047c435bb500673065023100a134c855b169d352b4de00ee3ca11e0fb646c9da1f9e6443e561cda6b3dd992266ca9d2fdb7ef02262053b84e7af668202306be3a6b6cc091de80883c24e7ceec27c115c70be050ee01c56563512d6e50bc6a16c87697757a552b77b62c6f53fac660302047c435bb500663064023025ca9a98f80c6bd908c9fa328622e4e3777d3e9fdc63f454b281af73bb2af099a628064d706755f32d3681f97d28b76b023065f191450556f99ebeef882d7ac20874ca9ed642ad4102b1cb0638331029f6efb5b3c3e6b89e12fc5d96a53b94fe5c5c0302047c435bb500683066023100af9556b11177c62e23009f3124dcb05c4f43c73647c0bc287f6c22a9e080aedbe0e6c11cd999ce70f35ff59de8003958023100cf2b94edb1b71dcaeb23b32cc8c4844d837b1b98b6d42a80374dd941a6050991378293fffb6de8ebba6a635fde8378d90302047c435bb500673065023100afae3b18ce56866b91846b93ead1f5f2e1f9c8ce5e00838c8edb3da038cb83a479fa2ee7289d56d493613cbee5d9449102307f7671cf824161650528a34323ac2108f241f77efc9f9d659a328e02142cc6ac952fdb8bbcfb5a16dcc2bf3248665a0a0302047c435bb50066306402303a55232c497b9e8e1f63b25f6ec25299d9f69cc42d81a93d02dbdbe1ca8c17354dc807a9e189c906d66b7428bfa07db302301824c703ed2907a29149f562e0b061f089aa17ad55e429ddea6c86a24b652a306fa5b72f9a9b5660f694b51ec74d28900302047c435bb500673065023100e78079fb1067b11d2c66db9ffc660c310e2c992c97063aa4a151881975e960964fe664f3ec11bea2e5e94242dc660f3302306aa3853b32f0a0e77f38a0ba7c3648eaa1864327b1cd53796996e393cb04413570898a151a51b673b85d8ddd3249d7e10302047c435bb500673065023010482f084c7bff97a1762f8e1d6e1a4132f29618808914a0171f3d65d6a531a2b0f6d49a1c5d11048f7184edcd814e96023100eaa6c71e651ec0d7d29c34fa49f7979c4ab1c75a3d53180769086a11c8f5ef81c610ae4486ddd6f6762fde4eaee7c5460302047c435bb50066306402301991a3aa9115b2056a2e910a5b18b64dbf7debbb4b7e364f96ca582522d0b5de0bffe023c2a6bedeb52ae31a5ee3eae702304903c706a16110212eb4db6893fe0c8db90edf0a31cebeae31d523b9329ff3c9e8f097fd6846e4b58c5a0a090a360af10302047c435bb500673065023100d7ba5e15b010c7abe7fe8ecb8c4106325c15fe1d90600a81afa56d220870be3a98fa803afff66bf0e071938c2e42fe080230043992665e97f9dbce9515b995fd2cb6b98b52dc23bdf4c6f7e87b8667bfc4335db89b6e6e1ab9e81713c9dee75efd380302047c435bb50066306402305f94e89fd0583d6d30e4734d9e51d18bc33dede9f2648872de3478fc916364a9ef7190d0c3c6d913e4e6343bae2eba8c0230638da2ca00476fecb6006c31afda8dd4014a9f6bca59c0f51a2bf1b6ee7558c7696c47c040d60fae7730474fd1c1292d0302047c435bb50066306402302d1226dfd85269ce7aea6d7d75c952b31d39f6125d55d6a88d60a4253619e7e9eb99bdb90fdee2045673460aed59ac070230355670aff620a52cfe2cce1de92c1c32e3480f40f3a9875f0e9fa5b57381212c7d084e3a3b61a71e25e429a18df0f0c80302047c435bb50066306402306dca2801f21df66496e7432814f07848750b62e24f2ef7bbf35a6b5985f210ed4f149532a46d91c66d1ea58d1616779802303120f1ce0f557cfaa37ee5f925685dc482bef88f06e10596d557bcd529a313f32eb4c3c85d992d2f34749933751ea4210302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c2f7c412bca83f74a2218e4adf8efcef34468a72483932ceb8534b16c32942f301e6dbd2560db3845ec17f6dabb65e71023008277d3007a0d14294085bf2a4f87f9dd2ea7e4d1e49db93bf2ed7f4c25d4aff0576dded69a3db0a04d0b783eab4b3660302047c435bb5006730650230636b515ec3d49e513eaa9a013725c64f794a80562734c5f69b05ea743a117d0555fa225a5eebaffb367ceb69f0ecb6ab02310098c0e064b01e1c7804f311f4211d52c54174ac05824268d9636a7d767b76905def1b0f7c4381dc58ffd69835343d93210302047c435bb500673065023100e954f72340bec09f161df7ec4b4048d788e7832eceabbfa973d80f7a6ce37c19a796b2a289d101dcb1f416b3cef4cac60230192ae9af591c2e28eccb80f7d505cdcf2bb144304368faab5c955f3e679de7acac72137aba572d2f0ce0c46ca0a40ca20302047c435bb500683066023100b3c3af12c7d50f078c5fd4287c6d494f84cabe853524092f71e245e25324dd47e68a926a0b00e4c36b288513180d084a023100a997fb57c97aeb83edb2d3b00a742b7fd7972fe6e055faab2117f61f3de14d0383ab998df0ceb82a9cec6ec16e34f5cf0302047c435bb500673065023100bc9b9fdb68dfd0ee76fe9398b02cdf94858559ce985811cd73897b6bb8d894fcaf0aeb70e8a110218ce93d1b70b216a502305ff7a251e4656b9b2e8bf290c8b12d91cec68841e8245f5e86c03415e5531c3738e5cafaa1aa8bdf64ea4441deac98710302047c435bb500673065023055639886a547e78442a76bb802f6e30289aed9c23714af86b85812d6928a2371b6832aa9b90718a4d033d9009260a6a1023100acaf751977d31efe7398c38dbf2ac769a7471a1ce5d4465019cb9f53159027cfddd2a2e26f01823dae410323e592ad8b0302047c435bb500673065023100982b6475072ded8fab66d45ebb5365a8dc0a86cd6c8ef7d405a489b0c9cadc5d294540508bbffb5a09c5946ed6a946c902307dbc6ab2066dc09ac8aa2ad69375f5b64a5b4d16b7b46b6a8018846b17459f81544cecfba1a4826db54e8ffee32222e80302047c435bb500683066023100f12081f1ae196a6de837daa1e5cdee35defd61db8d564b18a81fbf07e9a1919b3d2bc19ae865d40cb7d65658ea2ecf660231009c0d4a888c66005979268dcc7f4d35ec4a3e2e32f28b20cafc892b29a58388fb86e2a0286965d713af1ac1011f39e0910302047c435bb50067306502310087bbc54dc3a98529d4ecac8646007dfdf51c532ecd242d120a5572418d547b0ad83c7263544915edf37443925b56c54102304c8fedebe767714973cdc8a70c50e6b0b306453f3bc2a45c749abb5a9c3cbdf8586abe63f601d92ee73d41e682993bf30302047c435bb500673065023100999f3038400a049bf499288df46e21462c91e84327c4cdac42e3b03ab0692dcdb82cfe1d17df55bdf1930f6f4c78553102303b4d68ccf64f4d9f81c7b74261fdbb79a4eae62050d5dfd8d965b92f80488d9ccdaf52cfb2f87e9d9ed295341dfb12600302047c435bb500683066023100d0eb697eee4cc831d23f74920640081ab63bb5620ff1fb4fbfcf1181af4991a985354cd9ce97e3b84e31fd8a6a7f21a0023100c96d5c111b3698548afbf1eed62ff8b7397a26c82bb05b223025af531172fecbf724a2b68f80889c372079bb616915400302047c435bb5006830660231008334c8729b4ff177c61423fed9170b406c7677dabe055f315a94724a2d40eca4e1c72ddb3989f301b87a4924385de27d0231009ba4cea15736bb3431f60b5b0491be9c5c398e69bd005d7851bd02fed2f1dacbd3f938ea5f2a5eb754bd763b1300ae090302047c435bb500673065023100d27b8737275528fe6edafbbeea371b93c3a2df5ec76925a5e2afb936b057ff5b8e9b9bb29963bbf2272950087f514dc202300e45c89f96031cdf4fcb9f894cce5ba095346c22592ed39486ef10698815e5f94881aa49cb4ac5e61d2769a728f701330302047c435bb50066306402303b706592e16c592a09b6ee82cf55b70bd202f2b0d5d11ef6f50009159ec0e19c3fe241dc778af309673d862ff3b521930230286ca41b0206f3b5f27bb1523461aed86ac7dbfe9705a8bc494b55e2eafebd927f598bbb203b57ac2427d740e6accdd00302047c435bb500683066023100f62afa4ec370639078b5d28262c476207e887416d713684b6aa708adb36024e89522b3b639a6955f8c42fafb22cc3f0502310094233b780cd90ee190ae832d90ac38ac29ddb6a377e817af7805548da57f844533e794cd1365382a8c43696c8ffa98190302047c435bb500673065023100bda2f883319e980a8ae7fc58498a1680d5ab5aa0c81a5acb463c4450ce0375c50ab37d9020ded2df369d29e70be977c7023022bd6552516b4ee48bdd4095551f668316a50890337c567339737ea0d9c2109136e3f7da33b87e81c981707315f95cbd0302047c435bb50066306402300947e4f9e7c35dadd87a808c4fed8e6fa13c47b99b264249b0bb9d1bdf2c19b60004c0bcac9677a7196159d93c9ad3400230432effd07dbf2c13f2d6c5c347061cf65a58b1c8950d9d294f0d21b83ff9dea57b2f3391d0da9f9822523d4e02ff77bd0302047c435bb50068306602310082c4e44e892364330e15016137e30e9ab41943a6023b30862e7047ccb973f5eae639146ebb25a7a68068b60570e41ef2023100e307824af72d759bd4872f98f689bbea32e422cfc292567381ea419728a8e39e011f9a18f9d561f7890c0844ae1dda9c0302047c435bb500673065023100bfc38ed14e559d66c6d2311ef009ab6a3e1d08595940e77f61c6c0c212a345b9c42be0e08db2b0eedd15ddb2d7c4321a02307fb07994a229dfff369f84f14f7c14e82395eb8e525035c32cc6f57608fb444e5db18a6caa9df1324962ddbd3d2b7f580302047c435bb5006730650230687989be84f4856df460483c74a3d202951ca63c87c31226416e6852233ba55b9fc8c68a8ca37b5449b2c2c19e2e88f0023100b1983c7dae047e42d9b6a77afc4a219e95dcbbec2df56c405fa58c7f1905ac1b1d61ea0d8c23c48cd8d716a3a845622d0302047c435bb500673065023007e22a1d6a9bd672ba1e681e2d15c17d8c245ffdf0644d77cb8cda61c0e99b4c04c466af2f696b8199765332d7aea8d2023100a8f1411a789bde519b9107c887932e434cd7bdd83c5cf5b474abd9aab7d599bf7dd21b96fe2d54b7f16c5b7de684098a0302047c435bb50067306502302d0f6e8c04327cad9ac5909c55ed98f844e96d4279b0adb28a98c86f588cc003f1b42b5da85e77f245a4eacd899447ee023100ce1ad8c8f14d88d173e89d3e4b7e0226cae68f7f18d887bbcf1dd4de75455c4122615575b75b736eaf635266f2bd57500302047c435bb500663064023034f9bf99fded39fd76b18cc6ff1172fad6dfdaab2a02924d6e6f212af056315e6aa60ea516511a1406f9feefc967abe9023035cd11d6b6ecd6c1fdba17a88917051d23ad2ead6b9e12b97cd5fff39158e9d0cb1a2e7b75facec57b4f920aee239e280302047c435bb500673065023045635685c0ab4e450923cb7cc566096e205bf3579ef48c5e84b755183bb6636d82fc74d5737e509d8ecc17c30d1dddb00231009f3d3b50dc957be84e291aa1448067fc509359700d3a0333e387c519387f48af8292ca3c2adc020b46d64c5a14f124160302047c435bb500683066023100c86d9d6438fa48014afb65424e77f6e17289f062390e18c9b11bd88eed63c5e75f8c585ca60a8bef82ab065d99ae1f8f0231009de8ac0cc3bcae84cdd67d68b71dd962f11f0c340756124093e9f0463295e4c154fdd5b5898deb88abf6ddccee234c3a0302047c435bb5006730650231009f8790f9e916b5636258f22597d26b0ac59563759277c940a532fe89bb7e6ab1f0a4b2c3d1f15fa49ef778e95e0b079102302ba104c3daa1303e83ca0d308f6244574117d1317560631a36bf16c8df18b3d123e1818738f486445cc6559ed9f377970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023001aa854b981dbe743696921d47096db26a74c48a6556f52dc4ee5764be7601f534681137245d1b306d2041c8cc67af5802301327cad572d542d3f37090b03373d58374e3142d308e1f94dcf0932c71433e8bcf7bf5a9fdb859c5931a72153ac8386b0302047c435bb5006730650230421627cff8d05bd7a8cd0cbfb3405ec0e7cd12ca2a2224206cba1e91c10d947b9268104f129ef5df13f6d3ae59b6e3b7023100a8b4dcbd507c4be4b70fadc2723d2a106fa84261852eb35c3fcb84d87d0b803bec8ecce737661100a6d9db1d6cf3f87e0302047c435bb500673065023100c76d5135f1e735038da3f5d6c11bc7d5c5d21c108484ea2318a593464b2a9069e015150b73ddc2f594213dd48c3ce85b02300623c2f2d29fe8a4433a798bfae62649bf1d632fb3486cabaa81eee6e19e712303180856d37e62a2d515fa194065ca900302047c435bb50066306402302a23450cbd39f521d93ffb8c3dab165237f351c9328608a8406a20f16d14c88fbaf78a329b7105aadbf50d75d41f691b02307f6c6b32c8c1f0db8dcd8895495e3a1f2d8e45f0e41d2fb56a416c6f77377c5cc744f6706d74593ee49c0823b82068840302047c435bb500683066023100a6aa6359d3b5e752e3515642513505b3e02dc95767f3ebcdf576327faa8f626d0e9fa949e83755b048931bbac3bfa4b1023100fe6fd8233cfbe4f494c056c705c83fe57f0abd5c24b8012aca49042b01761e10dc94c7b62de64f32adb09e44cccdd7770302047c435bb50068306602310090010482ca7b090a314a83a7edb5fdfa57e723d0d4f188bfa18913820ac3ab6d8b319db1e2c0c5766bd22b8598528a22023100908545b961286eeca417b13a60ee49cca93cf562ec353eee1fe0ceee44ce06b90c0cc2bb21b2e57701af5048ed42a5b50302047c435bb5006730650231009eb142ed9a27282dd2f52fb4946c1083762089c53d2b41d37bb413baf9b79dc7fd2ede46c20b6ef4e2af5a83659954fa023067518bb7bd1d020b3239f49732ac90fca115a5ffe759827dc8063bde87927dad619679886f38598909869686dbd162f20302047c435bb5006730650231009db9ae8f3048ba4688f38e6cad102a667c8d7f74b33451c80219e9100a2a15a9b39a967232fa67faa323362a35cd19140230562833b5ecef16679ac95181db1f0fd489ab1c80832b64d24879f710770b07a924ac5fab7fc15e22c35864fc05e3d7620302047c435bb500673065023100e5da69674bf465ecea6b9b6562497ed658f01560626deda9a4e695f5b4ad244f0fe425920a0f544ca17d348527cbc7ba02303e35dcfea4d1ccd1a12d61df9e23ec2739aea07b503a5aba3ecdb70ebc28830f29491b0edd4e71b65a17c248daebc6440302047c435bb50067306502306621cb1f980aa243025155f1063cba1b01d4eb633894526e31d231691e31386339fbba70f864e919f8bdb26a326f9dcc023100916e24bd91acb6c3cc92790b9e144a3cf13b1f6e936484ad971583d57e54575833717915a1d87b9528f4db69819ccc9e0302047c435bb50067306502310095e817bb9a73cfe30ca5d3d7c82564163522ced0acc650c763587b64bb61d46341783816bb109e2e07a2cda684e3c2830230306454fefeccbc21dfef487cdd6789a0cf2c8f6bb16b2705adb4207db673fc54f78c2884899da8b6e2a9af3f10087d870302047c435bb50066306402302d5308602afc745adb612f747f88182ffc531cbe26c694b51181f8285c92b65e3ebf36d0ef7ddbac91ffe1f2543ed33502303dbe74b38d11aec516b117368e49e49db410f1ffb8b7417c9654ebca6577313c868873e24047de86dc3dedb21cf2c4fa0302047c435bb50067306502302a5e5e9a3aaa3f6e19b609614e72bc047dbdc0240824c35e0bb40505cdeee25de32db5296912b9161f9282438aa82e11023100927857ebe95c15a0c2d163865e736db24d25ed53ea55ca6bf162c255283d10dda2e49a9d497a7998805514245495774a0302047c435bb50066306402306dc080558c4260e4ebaad17cff822e1e1220aef73d79eb3968c2484c883f1eaf6702389909689f2ccd01758be024c5e402300dbd582ccf20cfa12f28d1f8e4ec0914babb5b21c45129ed20486f14c988f6b5c5d53a34c312eebb83bc33dcb6bdf5820302047c435bb50067306502304bd3add45d42479ff63f8c3a55c16c310ea9e6bef69b54cd34ae951ae322ad08f713ba2238a3f96b0edeeaa300c26baf02310093944a0c3b4582d12757db48cc522db79d128615230a3a09d448461132da27f5879d7fb325fe5af3d4dadb8d655bcbb50302047c435bb50067306502302e323e4a00ab8c0377b4b44a4cf444793dead8722f43d9705d7205bbee9e837d0ea5125fbdf516463811faeb81a265c8023100cdd6a902f67ea9b1de0ffd3bbb7bee0604dd5b1c5eed504782288d83cee1e1fb3aab5252c7ff92622a9bd36738743ac90302047c435bb50067306502305bfbc1ccc726b509ceec705433e7b44e57e3849a1d72b4058bda39058f660bf6ec7ea3bcd17dc31eb558d81796beac7c023100cbfac26a43db305724268f247a5621cd2be091a139eb3e4b75de3548e698973cfa0f536c79d218286f88c6b21caf04c80302047c435bb50067306502304c2004703cd1467ed3b86c1f543b3ce718226b7c5f6dedee9ac391fb54a393ad70d42907c4feb2f0cc8a867a0a68c121023100939e93fcb53fd673a148fabe012a40fa41c96e4e986476a721c7cd2860d0e93a5817deb7e81829a099a70ef7260f3c260302047c435bb500673065023100cee7a54e2b0ab5c3f568faa981edbb247475d590c26f2acd1298c1e2342368c86b86222c7c655e0d5420938b0c716ad302302c81a83af347994590911c9785fa1bd3230819f36f9a109f1192504abf85e00725b9bd97d9205816dcd501262370c1550302047c435bb500683066023100e9df01c0e5379f670ddf5bac87e50c4b714420e4b20b4b813eed23cb8f4420f0034eeb6c3a89d8626b856584d38edf3a023100e268558695ac013e55082ce42189a700613e93561858170de62ca18c0e982948bb10ccf82362732188bf4c5675512c860302047c435bb500663064023004d4d212179632e931a754aa726892452f8abf61e6fd11bad064379a9a359c41a473c52f1179f88f6df4b81df162669702304594e71a599e5740d7c80b18d0f618f62a53f6442f9d1e45eca5fe4003dcb957a2237106fd3c9858dca63442e5a14c230302047c435bb5006730650231008e99cd7ea699a5949e8203cbee9698dff171f1021005d677696da0e75b2c5790c543a5cae211719ed7598cf073e0aa65023033766525e6253ed4fa0690f36e8144abe6ad9e69e918caa3eb00cb97fccd957c24e121ba5edfc62ac2187dec4ce839330302047c435bb50067306502305e7029e3ea5603290371fa38ec2d8068fbfde3ef0d210f999ab516d4f379f51a67eae4be6559d580d1a31513162643ae023100d17d077828cbd6b2fe7e31cf3950a17bb38f692e733ff6bd5e8873a1bcdf0dabcf83aa938cb8e6832266744575bbb0510302047c435bb500673065023022f2fd53bc88c33abc381960cb45242c15525f1356bb609f1ed0101129922c0af6914d02e82398d732f4fde45b3c8bac023100d99f3d714bf10ef17307ee3c3dc9e3e44f6ec3e412e75d6550ea5c2d1ad733badfb2247315ff6b15d76bec05be0b0d1e0302047c435bb500673065023100832cab011a76bf0b97f0437568640205ca9da3180b33d0d82a48c3c362ae286337cc023a2449211a3175a665b27132b002306570ff47990abc9a60978b6c8c1241d4d8c1714f200535571699dda8286638ffd8660d0d53476c59ae1964087123f8070302047c435bb500673065023006e2a715cc8a7a7f322c1a04f0950c690d4768cb96b9b83a808051b87a355b91b5be19a8a782e2969e03ab4552c2a14c023100c372ae7720a788b3c0c6f715453ac3e3c462d28132830256188bd8489a1ddc98eff1c745e6cf18f96e78ebe9a96360af0302047c435bb5006730650231009bd9b3af7cc940489e535b7e99a31260944615cc8fa059f2cd4e8fff3e8f5401ff3f26e0100ac6222299fe799fa878ec023037414106ed18830a5b5fe18998fb018161b378558d99360af6335f395d1c27fb4e02f3647a32608ae470def8984fbbde0302047c435bb5006630640230751917e594f4ab71ae2c03a09227cca5cd02ca0af9b47294521600fffa709f71d0eea1218c51663832559274f3f7ab9c02307ea694ad61efa2cbff506bc54db3891bdbfcaaadccded45777cfb19ccd712ac3a7fd964e4c6b2fda76aae1c38763dbbb0302047c435bb500673065023100cd48379d284cba1d39a87af8d9e0c62f537e3dc1d7e6c7bfc520241918a4b01dd63fa209e4569a02f82886d229efca3d023012ceea23730da2275a05129aa5168e4d553ebf19ba429deecadcd9e8ef773ef5927ac6b1808475f87c96a069b812d18a0302047c435bb500663064023018732e437cfb6223fad4ec1a2c37106fe4c1cc2e4e47ca2ca880556fd07c03cadaa302044750704d6d919bb77ab165c502303b6493f044b0838b724265f53f52239901d0842a812d2b9c2282f0618556559e698ae33c4fa3a50f180e1f05d51ff8ec0302047c435bb50067306502302672a02fa74e0e165faf769890707ac53408a54b172f5231f56469351612f4f8ae23f2d0708793a6139fd082561f1212023100abd54d6173e11ced753806159c98d656c58e4ada6dc63d631f05199e65f9fd01a934671c96b5ddfdcce29381082658050302047c435bb50067306502303688319dd6f94f4086bad495d5a204704bf46e3578a6736c0c61a7f544fa83afbbfc030fec00c3dce593c997d8ba398a023100add02893aa5a41e2b00fd6a2c3bfc96d83644824f6bc27b6220ac33f6c5e5b1625a448a0913f5d52dfd62e826d71c89f0302047c435bb500673065023100bbd6d5f392f45a3fdac3f71b7d218c80f2f0aa59898f03fd341cecc91bc31c6dfb0da99cb746677a323cb7a8fadfb16802306607a97cc0419770aa2d6a34a2bbf16d57609efdd86b9430137b3fa2908dcba4f21508bd63d0f060fd8ebc36983234640302047c435bb500683066023100e7fa58db46593adbba8d56ece5da7e191edc34ec926bfa74ae513b99c255f250f4fd2f2e388dbbd22f1bd2c165fbb6860231009b56c93fef558fd43ff7988c360025957c11c40bc9acc3e266aa81a6e02fac3e283542e8a83c0939e65f21b6a4a807f50302047c435bb500683066023100befeb9636e73112d92f4fdafc792f8751c3be3eb04c5a8c6a271ad171632acc05fd88b1fb8ab60441c2d56b2504274a9023100c0df17c6a4e3a9c4cf5875ede565b3b614559a785dc51d5a12d7fdf97f7fca78adf39e6aa00ecfd88689a0974a2393050302047c435bb500673065023019dfc6629bd65327f62d2563bcd36cea8eee00983a20a5e2bb46bba7c6dd4f3d02542e3e566748cfe071b25fc691a37b023100d40066e4a167e0812c03909039ee0096395d5ef20b41332935f4332ae712496e7627f9c0b33b75436b897454e83332ed0302047c435bb50067306502301ba912b2df97a3664ff8e6629a2a9e919ffa64f50ada4f4ba1e074cedef3c59a377e265d9cc102e7daac854471f1d6d1023100b0a95384006fd8dc09cb4e639f40007d4158f134d3a24b0fba08ffe92ccbd40429266d244431fc148961fff5122c05240302047c435bb500673065023100e361743ba320ba3e3ad4fc9206d68740ca54292793a7ecd909cd457f89dce4c0ca68190b99e151e107cd4c67a857da62023065e5674e9b8d923bc2503b675ae244b8f9beb64f7faf6b9ae357bb4cb5f337f0588e06d5df9e590c1e226de4bc909c510302047c435bb50067306502301c6db3737a253bcb106a4bd3bd2434aa0ecfd46e28185f766ca5f3c74c8e5ad61777022751f8bacafa1808619441ea6e023100cedc517edc1186f2e3fb7fc40092155db3de234f1f6dfbaf2f33e02c78e5b2a1662af8e52a34fec5239e33e7edb005e80302047c435bb50067306502300222ac6d25d6b7a64ba7b65d863803223e063c12adfcc8cb8d1b845c0454483b228e0bf159647f0f0df09e21658589ea0231008b0489909d15fa38dc3ef39af8ee6da9fe09e96c43927eb61f8d784711b62130d6677de66a073012711c0eb0c01c7ac00302047c435bb50066306402306daa49cd8c40ccf905f1a02b7c4169457c9f75cdc73405f4933700a99aec3f8460197eddfd761679c3eec7f1a8d084ab023010960d88288e4d30558aec19acb72cbad26bbd7e6a32d08e908cc4bf757ec5ad67d694a281fcef9117b8e1df252194c80302047c435bb500663064023004e149ecf3e8dbc05421b8253845cf27f0ca519e407c7a525de2bb881c0e847a09db426fe01a9eda3b41a68001256b1a023071887ede7403171686886fbd7002710fe1188b6d3cd8383e89ee02275204653f9395b2a42b381e8b23c856fe730844360302047c435bb500683066023100cecdd19d9e7594effdfc89ae0ab76594f368c66091eb77dfa7af6ad6b9057135f7b4bf193298bb86e64ff958311d7619023100b9eb2f9f793e024529a20cc8abe5ec220ecab2682691de195715f7833a9437b4509a6c303df7705dc2af3e38843e1db20302047c435bb5006730650231009c2f34df5f11438d31ac790cc07536a7df34faaee3863edb5d042e2f49a87231f904d064e7e1bb5a66fe6579b1197a50023002730be9e3728bf59acd7a44595477c1149650e7c0973bac8548f2ba8d01d6b299b0ae39bdf3809d8a141dfffccd61bf0302047c435bb5006830660231008723ac04ff5e052c651455b5cd0efa2b40a5fd9a7209a06d0774d48c4a74241421b1a46fad1e541f94eb7a84927aa9cf023100e659a5c8512cc7cae2d95410fa2721f82382fc6bc0e3c8f69901cc9216f15aa13d6a39b2965ca34bb4252d035e922a7c0302047c435bb5006730650230468289e9ab1033102640f9482e7924e3ddeaa5e0649d0521be79f1a3b9cc2049ca626b7e99128362c9e9d56c08aec94402310099e1f73067ed25a33bd4ca81f38ec93b28a03c066332073c0802e0428d4ce3d10c21d9ac8370e14a0ecc716426099dec0302047c435bb50066306402300cd76dfdaa84c191ed540c3778f7e015c5cef2a97aa49db767b4f5a5aebff6b9f6c0cfc4a875407abccd22d56d89cefe02305cbf0e51d13f3511544c461814197baa1fa1cb2b7e741ad529b5bc7a91b61250ec63d65cff2da8149e6b71094ff163010302047c435bb500673065023100d2d77ac7623d6b3d43b1edbcca4764a0cb1cd36396d5d61bef2acff55722d1ec10880f22ce4deab88e06ae1e8f93f04c02306ddea950778a1e61c8f54b4c17a9fd81df520f795285039d7ac807db816e23527f7127c8ca55722481e0d33b50f3eacf0302047c435bb500673065023100ff399b5f5f94441f78dd1faa7c90827405bf9bfc7819dcfcdcb40b5a5eeb72236b1fb06db66045b3d0b7dd4d0a8016ab02304688da353c0eb703b91050b57aa2e55d82c22851e03f827f9bbbc40e2df930560c7d2f3476cee20e71ab26f99fb11af90302047c435bb500663064023028a3bf1bd9cbd2f9d152cb8c8fa4928cfd01fbb070c48186d5d148a87cc358a13262e2cd7017fe0381178221d92ac71b02307207e64964631fef468e66ffb5eb3381c08b2178ff59d799e51188b4a695be30a488ff12b6874c7305218a941e46d0fd0302047c435bb500663064023056fa6214aee954b1af9b867f5abbb3ae6ed9589113d93b2840c3caed443568be2e65bd3346e2f12802c3dc047a6c9fd6023058da5c86d05649f4c3e4500a6645bf522ef51d2b9abea1cae121121c34ec3765381803493edd0e28a3bcca6fb0cb134a0302047c435bb500673065023100f8f003c11cd3bbff668e661bf49461e1f18f5714c8c52945aa4a466385c0f69da79d6fdc33f206f56d5e9914a111b2fd02307a72030294029e58aedd90059f23395e3e7c7a026241d44953175325e699da341912db10c235cb582f5140370d09fb240302047c435bb500683066023100c654f3c0cf5261e889db9e9870c9a21e3703150fdea32853976336cba51aa6b2ae6d47b35e268bb378d0d1379a575707023100c3c7abe7518d59c6a34e693ed91b66d1e6508d5ff445461159b1635dc2490c25b41bd00ce03814a30263098b5c9671d70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301c2ccee2ad3db1aae5c569350071e3d027704798540bfa66ae728ff8706e62e1b0300ebbd08692e6647099684fb73aef0230758732c21256d1409614b5d445492c9a84305a46423be757f8f00af63a0f5097a146858e1b2141fa6c8afcb4f6c3bec90302047c435bb50067306502305af6839fb49740ad362e167dd1a42165ae45469740c15db4f01e310269d9bffaf24fba2794c0d90993d98fb45470fd8702310087a0fd0385e23a8fcfae49e20bb64d5031ae15515b67d1cd5420100f3e181916764881364949575b4e704582b0b570440302047c435bb500673065023100e7b233e352ffabb7e82f8268d147c2218984b2fd4209e404a6537e4f7370e9331fa7d1b26977b87b5f8ae891caefc2d50230713bca860452b8b463326a1f501bb9c67ff7ba5f31790edf271f99bfdfc87f8fc6de6bd3117e93763995e135285080c90302047c435bb50067306502304715e7bc1876b0fb0be5faef31f82155bfef246fb47192783189d5935f9f102262eabc92709f20441c0d21cea434b37a0231008279ca970558d4093d36e0715d4e26ea221f463c5524cba543cf73bffa583d8aa2e9fec9316eb73e0948ead13904e4cd0302047c435bb500673065023100f9308a620ed2d834b10b7abc1c46bcf77c9efbd7ca5d007e15e0271290c6003994952669b8e596ec1fd1afa9984ce0b20230757f08c2bebfc90ce975710de95736951ed62e59bd1a16bc2d19c663885bfdefd3117b611afa605cabeccd05f176273b0302047c435bb50066306402304ce0d212fad5137f49929eaa0b9d994f9147dda4fa8904f07d18b918e49c32fd7e8d9fca0546b5b711059e0829f9d7280230634ba724089c562a5174f07f3706162c4dd8eeaa2a7293548a88bf291291bcc4dc74e1c7003050404589b3f3034f40a50302047c435bb50067306502301367613cbf4509603c6bea893fc7964a7495c9791185e06798ecbaa252289f19d7bd7cd061f209900b4ad16deedccaa2023100dad5a705b7b4cb13f2b683d8d2a027e5b5d976ad2e9f5c93039c8caefac0cd350006995730fa7d20ef4df5f62098307c0302047c435bb500683066023100e867b47766467085927d8e7c46f717eb47aab8a61ee479007d52250d7edc609914f6e3e3286d736056f235617018984b023100c880ecbf70019e8cafe7a3fa4c81aa320c8bb4796e86bef5955598a007f2858360841d7bab99c55e9beead6573c43ceb0302047c435bb500683066023100c1d60927f9080a7a1dd00d73bb5e7e2ce5c37c0257cd10271231a8891093ec7c62f21ec0083ad6e7403fe0d65dd291c2023100effce662519cc739fd1820ca81941d8292bc31d444f211b11af86b332af04880123a4d0c3e8414441587ac063884de040302047c435bb5006630640230287b4259d004850807b4cf4874fb2a4da9cb10ad1e4f343436ad63f53003d8899f66df67c33cbc2b8cc5596de119f16002305529a2078446329d667da73c04f31fe58b753ebcc410781d74a963d3072cf0e2686da89b8d5d65f2e8be83fe2489afde0302047c435bb500683066023100c3cb918a41458d4a07add22e885a30f9c833c45d37f152ce0e0810ead8c1ab816551b7d8a9671863bbe1a787aa40f57f0231008b911b99dd196b5610f9746d203f17b4c25b735b9fb51dbbe6711cd4143e7126beed25904b0224b534ccb28ad2d6fa010302047c435bb5006830660231009b7759b43cef23edd402f9eab157d0c7c2864cfa8fea204561f45753d443c1921e92858b9b1f241898d10043305512e6023100b1d8bbd6062b49a0e35427b9f00c517c2e37f49f8f076450d0b8b661335614018973c9453e3b5ffed5c97d62b139887f0302047c435bb500683066023100819b99ca56add27c599b882267fd007b90b2592e78b7a814627114b6a81906793f10f8ec9b949e0a2dedfa8d557c699102310092d2d13c9cc820e0da6a235859ca6ddf8319d2532efcc097e4c2c6bf62a66f740bfe88293b870989e04ba22233e5d4360302047c435bb50066306402302ba6c44592c454fa4c99b2686adce32fe309426d5e292705e9674e76de36a9763f4bc6a9ead656440963fa88b21c2c4002300df27b0c33e77c07f88d194335cc40b6fc6658a22660b753a2e99cf77b0a32064883da51bf470d108b2106b5eeb3d4db0302047c435bb500683066023100a4c4c1ebf94a81f7803798b892a1e96007865adce1250b179b5f35171672c23d61a250183b7ba3cfe24aa8b2ccacb1fe023100a338472cfc66b7ef52b7bac9e8cc9a003dac54ee3665bca8c4e76c7b243d4138367d821a1b9a366ef9040f546b3d0de10302047c435bb5006730650230655f2f1ec8de1730e0a47b48ec039128f15af165228c1b803718219046331f957889de54339129c95fc7d4f930e268cd023100aa40d2ce561b1aac21e7ee4861aebee3c0b9f8d91374287d90778a938b7d760f1d3c41559b1a79fd02ef363584e131580302047c435bb5006830660231008e3b309af18a99b9968dbb15a7e22479f177e0727142d15705b091d5cc6bb34202896803ed44ab53f66d910d59872fb7023100f7309f738df204b3545547e00511f4a2936e49dfefcdc95a7cb4072ac4630dbc18818587a9d7fc7b369a909e3d39c6160302047c435bb5006830660231009e319ccb1afa06311fe6629b476fe3fb70f82822760413893b405c68c7438dd9c4d9dc3871589561b06ce98086cb7a12023100e93f56cb643cb631bc54e988a396e5b850481963e10788907be5229a309a44a0b50e3bf17b7c6c6f0d484149b3db6fca0302047c435bb50067306502310093d8612f5282f5e413083bfb4e332d545c0d85926c12b566586cb575d42e4a73d9eec4c7a848d141fe5b0e09fb1fc2c2023060ccfa5f5bff1d057695cf3904ef886ce9111eeb6234f02f485a1e701e303eb5382d397b3b05401334a7ead120164bed0302047c435bb500673065023100dbaeb03b22e771193fad4a6431cba2115e1abc52dfb8293345047fc4ac80d9cbf2dc0bb5312f297389ff3052a5cfb9d802305a9b2a53e6d5dae66a4e37dedde6126e1dd64303b50279a0048e549ee07eb10e9b4ffa65d674e94b7232942dd6cec9a20302047c435bb500673065023100f0e5fac73ed55734ad43398bfbffc85c7bb2bb6414f57b7cf33c04fec2d23663fabac54f2dcea2c02623093f1e3edaba02301a637e0795c8f83c4585a2aba28c0786b0d216d739fdd9c45e598292de1999e9b195250acd88a36f1185cf598f6a3a790302047c435bb500673065023100bf1b020574d96fcba9dd4c804d3906faba7c714dbdbf21e87b0009064490ace84ecb9e58b062fc2446af381a71fd239102301579ee644f3342f89fefbeffd9a90ba8157d13acaecaa892e1c5598a545c17b68d1232694d84de655a2461ffaafa6b470302047c435bb50066306402302485996d74f946b743551ccfacedf4b7d2a090f11ea03081ce24b0b362233be55353ce3b6619c212c991e94b19bb68b602307f1584f5203079ca913a7150174f55bf91e5654888ce400f6c2feb8b4212e2e89b34a94adb720b633923c609a6214cff0302047c435bb50067306502306bb1054b3fce12e91af36c3286beecfabf6673c456fba31476a4d9efcc402311ef8639434488c404158d8743faf96d14023100fd78b88e9c937df75127dc9f66258cfcdba2e5f600ed33e15343451a126156ae3c39bb7871724858275dab57585cb6690302047c435bb5006830660231009856c5e9814e7014394e914d78446c75d15860ca03e31d8a9830cd6207cfcbe1bead8bde9d65f2eaa021468eccee2fad023100857d36ad33eb7aea351d1c9b1a013d2fd827b3cdb0c7c306a751859a6a4a5e09ff3e525265896f4927962059d09b9d6d0302047c435bb50067306502306942a82da3c55d5bc65c14760f8bdf06e1083f7ad94d07c698ef0bf5483b74d6d79b3a3644ee12ec466c0b000bc9a34d023100a7f42bb46ce1296345e076b7a8ede3cb798d8c28b7c9a4a0aa2735a7ebe254d53b7ed1fe25e4663d4ff3c59d237666390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ee902689b7b95fecaf1e7710e0086323408868d201aefa9249f8ac18039d50701efea9fbb06270d0ee9edda9825ce5c1023100d53420bc58f23226ace39b8df280f0d8e6036297abf93212b67530f25e6df96405d67cf4194f6c02d06cab0d2357fdfd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c61d63fb5b136d92cd7e5a691a7538a234735c28f1ae26f923a934f203c1de476e47ef660e29c904b37f53ef535f49c40230187fca650c389fd798db1babcb5f048a6be7422c539eb35f7fcef384bf1e0e682b18da04ab080df524f1998a506ea0560302047c435bb500683066023100b4342b11ca9f1419fcb2aecc0a5b075ff76fc2e9e5bac16936c704d6d2f97c147dacb67a67f0b5165135f5272c9b147e023100a46dd1de03d13e3a2fa5fdb3ded8ee97cb327d9d9ca793edf0cd75b30255a0f94a008ec260779be394e67f28079c24580302047c435bb500683066023100ff55aff309e89bdfe542000edc4a2fb0c7f175a28ba3b773f9f44731d515e5935ce1e9b55a9a6bce43f8188ce7b991b0023100dae895e742195a86aa3cde5bb54ea121ac77810ff2cbdd7aa071a73cb9e914f31b5fe58c022b39fd911d4cd2e59762870302047c435bb500683066023100ded21e347a7f302167d3f18a6909978bf092e0aebe487572e9ac5523c69069b679676c49ade2786eb6ca240248aa55ed023100ede53778df8bdb0b32b8877831f1199f2615eea2f4148215df7bf9d5a7346f92b097e5617124721d97fbac18e4a7e41d0302047c435bb500683066023100f0a3a87a3839d50be18bd3c6dd7a012ddf322897300d292dcd779c5e46c047c629f15a16fec3ff05db9aa838a384894f023100801acb2162d6b48be0cff69fe470fca4a0fefce697f500e215edbb2f7c09db54d3e1a162e1565d40ab43479c1cc29bb10302047c435bb5006730650230656d5634ef6c7458c17d03ec390e530c36c83b2b579d957fa72c78f72ba8825def9ca2e23ed65fd373d7682e918550df023100f9cba94c853ea22d7028e6b6448850844317363de59a054b6588cb3c5ffe0c5f51d51f67ae3c7692c11d5c2f05d55c030302047c435bb5006830660231008ff57f33d6c78cf4a18f28ce1cb1e25a233bce89c38977878510ab3a398e42caf7ca7dbf749e9add5cef0f364774cf77023100d69f1e46b73f6ce03ecfc318eef860fe30c19906797ca55865f09df8c4ce2a3233e57b92d9a6a89b6e9262f1e4aec2470302047c435bb500663064023030420d136d3f2688f5b7f0fe511096e2328b3531ea510c9a3fabbd37e007f29ba1ba19c5709e4b7f9661befb74a7180702303882c2fd9cd11d0b0469d77e804406753749af9bef3b480fb2611f363e9e36378fb86e17eae49726b9ebdca8f9e320fb0302047c435bb500683066023100ed9755af0faef1db9749866c62389a1eeee2f6ceec30cb2817880a132aa2cf338bf5bbc5d2a6a47cd7a9864dbf7c903a023100abe84f00faa6a41451d00fb084d27778fe3c561cbbfb603ebb9b0ba77a9f88f409436f60f23e52431f1d455e23573b650302047c435bb50066306402305dd870ac062de2368ddaedfabc7f107912594fedf84228d0c33ea5df13ca3bc5f3f7e2d0c80b6965eecad782540f555402304e49730ccc6351c30efdd3dc3e5e311d4c869d680c1a75457313c7f95b44e92a492a7244ddc9276c89e2a7db0cbfdbc40302047c435bb500673065023100b5c80023130ab7eb0c57012147545fc97b72a6bad6ee1d1aa8f25916f604ee65f4382039952658d61f5dd544d92904130230251d35425642819cc3de555c91bd235468012dd8dab037d174b47fc38efe874ed75795849e7ee1aa87a1ea5b0fcab2fb0302047c435bb50068306602310081dd2661f91ab5f405122566729915e722c976750830a7d2388f12ace66a6d38b682fac7a0feea2a9cf781e48f96b4e6023100e024650a93677cb31dcd060b638a49633c0d0227cdfd6f730e822ed4c1092f9f6d3bc53a14809966f2bd6afc9a14b11a0302047c435bb500673065023100dcdcec04beb2f158f65ffac1e9cd93a098e372d8e02b8729ac3f51703dd59687484151df6fbde7406d22b151dbd1d8fc02306d5fd41b3499cbdf08dcb681f76de99099c7b09b144d112f147f455bb34daf6c9c766672ecd2f2921e844febd8ba582b0302047c435bb50066306402303ddb9b0439e5e8dee6b42b575f6b80b43c5a6cbf46a8f4720f12770b0322bcf48b8edcd6e56318c9770d92003fcc67f902303300891f8ad317ff1f03287894013ffb8a0d8c1c74a6d2d327c9f38a8e6fc151242865f6b8efc5cb1837d942fafc6e550302047c435bb5006830660231008a5e6de6fbae6830fb2fc7b0bfa8bb251ad1ca05461a420edf38804db8482ca80f94736d9ef5085e65c08ea3977f7318023100992dc2744b95e995069f3f4f806a1477a7bfd6f222c7186d5ab87f0f43a2c191ae4f5ea1d0e25173fb24b0763448b1510302047c435bb500673065023005f5b35bcc4f93376c8ef35f9b716744d56a1458550dd1bf2dba23d6951e3629fb98b47fcff92d090c42969dadffeb5b023100bf23ca495a4d892a10920a9d2f7908fd401d304b5424fb557fc71e2b93cacdf3b280b71fbead5783a55a1373f75c49780302047c435bb500683066023100a69496640ecfe4607c26584e58baf001bf97af45d6a1be3160a8d702e75d18139daecb54118f740b92ae0b2567485e1c023100800df2566e6eed9d6622ec8961561730fe8af176a747376463268ee066c80ac55f7bdc2438e4ebf0ee349e1b36bc18380302047c435bb500673065023100e4e760c3f22cccb6471b3e30383c5a0babddfa5336bc4e2651ced0adcb15268dd11b7e82dd324cbb7f9acc746007c61a0230697f0b41e47c17136d64ccb97cf4fc95407aa88bfb2a694eabe4de293bca9ca5b8ba236d989efb16448842cd2872729a0302047c435bb500683066023100adef44af9c6549c0bbe43cbbabe221dc350b188227dea80f34a5a8904a2a0164d8107bea681cb34c4eeb6b6fd3066839023100c42901583b23eb35e831c121c489c9723c608db74b89865203dd5469c1e2d30e4ce1902d8f1438cb4f7859a718d5f14e0302047c435bb50066306402303147c16f59e80f1ce4a65c8efc6c1ccf833c1c1f0111cf1530459ddb0568f025f5d076c2ab4788ad2ed2ec7e72278bd10230504341428da9a9a6136130e45bf840257616cdc7649c36076b51a8d099207897836ce73b45c6a3b46c98cfeda84a228b0302047c435bb500673065023100db0d746e2546299d98f6c59810e6c5ab2967a8af9919a096b79066e36c69a3f52025d5497de835ed3eecba8e1c01486902301e50eb488ddf7dcd45b977109f77773e880b6a71a09f408f242c172e384cfe440b221a6836b6e01716083b555cbc8d780302047c435bb50067306502300cf3f246e9f7dfb448430af6b6f6e02d8ec9bb57528204726c652d8ac0a9df5d77f98213e88b8f54d0fef5f1a61149b8023100ba8c8c461ed9fadf55cff12ecb0f93e04179be23199e3130cf89435461607807e7ae8d429ac05b71eb8cc1eb2b8d6b530302047c435bb500683066023100cd7eef03ab8e975a339004ac3657446a2b281055548c84988fdc761a46493b71f48f5820e1d60b47d65c67f5c2cd1b11023100f4f88394e0ca6dc647700b7a85580e9ed649d238e2e3d321b370c782c55d4f64c1ef20d37e8f641fecc967b59df07a4f0302047c435bb5006730650230481a66fd7e23336941ce491bbb6f1ab734a22560d62fca7a4533524c55b527fc8047b47b6ca4ec11110eb4bfcc9d86ac023100ae797b559eaa0fb15871b29acc7463d3dd48962a374729d8751cae0829116db4e10252e0245612d6527808f0f256453a0302047c435bb500683066023100eb38da0aacdec17588c30b750570bf0d8f7eff9ed18012d74d2b064198a7623245fb71f093e10ea4917aa56611347e88023100f208dc6086a0b565f6200486175107439a8a579e56fab03c168971ea78203ef5b80aa9f9f113dc18fd4447ff50b48a950302047c435bb50067306502306cd0b0df4060656a48b598e00e8f892dfad6d8775da20fb382a06f5395c1bbe6fa93405408be60715dfd9e59c97ed442023100f21ed49a959104989b00cf76ad05a5f9d5205bc40bb813241bb357677a57a42c731ac4218a47f64012a2bd60bbbcf3e30302047c435bb500673065023100930caab32524ee66d2933104c73db43ff17a7a0deefefcbfdc5ab6d1a1d7a1de35efd55dc026b58f58ba8ed41e0bffec02300f3282548737195c2b010a81e8c3829f29784f4996263d4a47589795dce3baae8da09170e6f872666b5eec3dd0605a590302047c435bb500683066023100efc9200792ca3e04840e24794ce5f0030c3bdb5896fa9346ad1459f7fba6411cbcdea93e27722f4c976aca460c46fade023100f1c3dfe7371939f5f739834b1f69fbd5c9b05f034116fbdde8ced92e9481e3119b291bab67dd69cc6b5dacabc8c273ba0302047c435bb500683066023100ee925e881466c367db0dd603439f075f1c3e40f0da08671168615c6277a6a36071c60e132a57544130bde053e50f3275023100a54888a93bdd51b8859c422a8053ba7e16a87735fe729e36882e6913eb28ec1a18fc8a42bf6ea7560588972d1427766a0302047c435bb500673065023100d6cb5f9696f917d873222b56b38e22084d24ffaa4c9c3a3ec124258143aca89087c163ef7a1d6d146fc836a785d1bfb002302a61927510e6539a2155f59c580fcd8c57b508b38abb4463b760bf7e802b571a54e5264fed50d713c0500d62ef3b12b40302047c435bb500673065023100bcac997c00d707d95b351e4bcbf6bf5a89b71c9c601c5ff75aef3f2f5ef8f5cf4dfcebbdb05943f5195db2fa08a1dea102303d98f8c5d54d58151e076507417c49d501b15dc871685b04aa704b59dccde9bdb059175adbe5ac2541dcda545865beeb0302047c435bb50068306602310098ac1749b32cad766dfadcc755c02e8773975b8a61e0052f1052d970cf6eba3f32a02760895f550fa1d1b421718709a4023100db20e5376f18594550e9c2b86b2c033a878258e0b57a9a1c90cb48baab38563a06fbb64076c0b55b0dacbdacdb5b0a3d0302047c435bb500683066023100c40c2d56d6eb6c020ffdf942ad061b32b4b7469e04e9e5c281fd22e86f180ae72fadc75630d1c1fa79344a68d8b72840023100c06cd82ddc796885dfab2b59f1d6b8d9452bb91aa39c757d1f53b9cf1109ac22c97b0bddb71c83bf7a1e2fbcc109e24f0302047c435bb5006730650231008cba65747c9f21afd77c28a38f0c992ea73aab29792b66bc47edd65a35701d2b5695c87abc98aace9b26eb078695d29702300cb7a5c942f791cdebed650718b9365e2c0c25a07e9158e6114673c2288e45c134b339daef5f45141c137b18d86c1a2a0302047c435bb50066306402302fc9099b64199ad19f1dc96cc2e81f3d39d57e707b4416493317fe6f7fcda5ed46df89536846c27332c810b2bae203f802301271bdc6922747e8ff593c6058d2ecd178a893c0eaa622334692b89103b98b515ae2675bd55c9dddbfdac879c10f4a480302047c435bb500683066023100d48331fd7da23b93a00adb74fea4380cb9ffb6b8d48ffb43bfbaaec599ab488fa48caf9d111e3e8417fe44e007716d2d023100bb4a4747c3794e5b18089cffe6e00ca8a34c0291749761251c848fa00a103519a54f6ab96f2f340653603f3988b18b920302047c435bb500673065023100c353e52bd64aa850d51e2571cd7ab30a1d94120476bb586caf4df750b99078e6b9000442377cfd95a102da10d316b61102302cb002e97cc8a372ce8ac327fc3f276ee058e94b4cb4793652052ca1bce47106efa3d37149c68d72dfd51692155946320302047c435bb50067306502306ebb7ef686d06496677ee8128353d7c803ab319ceb8b8bf06798941c689da530ca3e3579e571179fdcf87326c3b47196023100f457c9345b55e49859c89e5df9814a26af14546bf3643d82815271b168292d3ceb7a066f0cc7bdeebc3ec5f9d04b98000302047c435bb50067306502304fc9ff41bebecf21aea5d16a0f6e7efacea8a816d218fbc6d2643e547cb014ef2427051c1cb6a91a345ab3f0306538a6023100e6a01c6ea04ff057e9aad039cce69c4b45046712fa5fa68cd993d1196a071bb2e78de3f9c51c7ebe2f1b8c2a7226253d0302047c435bb50067306502304d3d1abc8259c46cedca557ea091de2bd45e5522bd460c034a6af42986739185d415e2c1f58d1f42d6f5aee175d37a320231009eefacb0b7ccba67f014481bd142b00c78ebc339e5078ac850970b23e18e0df30727989901c7e4560833071e85feb3010302047c435bb5006730650230230a1b9fb7628b5dde2918ab139c622420b997199c919ea31f20b631473166e205ead1847846f6f4d7747c6a94cb3be2023100a3aa7b99d13fb3aca59881340692df126da51c7f863c74ce4619780c8a38dd8d93bf4ef640ce9fefe5d9f53f6edc9faf0302047c435bb50067306502304113a75c2b85523b7bc2af279ef4416316c56b6dd3700fa98be6d1c790a7a1a9d623d542c5a054ec9c24972376265dc8023100bce1772fc5c8297aa1ac396f5e14a2ac98d545efe306f3f379c922fc6bb1cea610b29e0d52688b515ce70e45a22f6f5a0302047c435bb50067306502300d7ffa2b1ca7a933aefb4b4ebf72c9e7440d5cd97ecfce1e2197452e740d503668b3a9971fa79b508cfdc8d13689b5ea023100b3f1d3dcdcbca13e51096b652da0a4e62bb6fc62719081159575aa682d22e3f9b8c41a1df1993aa68939db51d2a29e5e0302047c435bb500673065023100dfc972a85ea47702f62aea8547ff8af173d5b9760bdfdb276fced9f2fd035775ff06773647e67dd7d03e5137bc972aaa02301267a9a9d51623dd4df1cf79fdc627aa1d51b08c8e0ffe4003d027894d185abfe4cb74b863a78bb68e397d30338668e60302047c435bb5006730650230201f478d6a5346f7192efe37ff234d878ddf8111a3ca5ab3d81f6c8ca50336a9a4fd775d15b79dffff5b850c70ad543d023100edf78dc1e603dabe351ec683d58200c6d7098d68d1f88b4004e9847a6ae604f96e13918f6dfac41f619b3f9ae091980a0302047c435bb50067306502300cb94951ab86330bbf0d4cb5ed967c894b200a892c3e42288812b68eaa949074c46181bd9a8cebab1e306f509ad2388502310095b853aaf3332eca17c7426ec8a986b3b328759aaa78a98783ca32b2ef32d3723e116765c3354c14818fba09055047d60302047c435bb500683066023100e20b51bf7079cd81fa6e40fb891a28bdc3b745a9b44520d60b3d5fbf28408f167f8839a4b7b611bc1133fcde5142c216023100eaad9aa264625bf02f0b8c3423da8b39e638c48058601e572da60d5c7664453034b6384494e595faa2108ff9379a3e390302047c435bb5006630640230517142a70045eeb55eb288fdfbb820d89d9e925c65628090e60cb36b68f916ae54d8b232e50708464f95b52d71967a830230491216cfde3dd126ddcea375f5c08677d40913fa1ce79389981b70ebc901576567c1f84a0c2288da4d1b15d13628f4d30302047c435bb50066306402307e963bb1b1d774877178ce95abe93d8753854475fe9acd47f00299b21702f6f2e2027417e6c8a6142c7b5cdac5cffd49023071d6541aa6c8f6569042e51d786449860fd4d2e835b506c43ec43ae29d11a800a34f158e1ccb2a890d64a88655949deb0302047c435bb50067306502305329e6069233eaff89ba7def0104c50307c24a3d8e1121c348ae1fa80a6d83ff12aab0592274e452f91e38dac94e2d99023100c1b557e04d854346522b6da0ed3fa37d43a8feba364aba2291f856220204d7d00b6acc422ff58891f19c4922eb71a3c90302047c435bb500663064023079128acff4f804592c7aa659dc8d7f05c9ccea3ee9fd8eb3c81609b7e690ed7f4adf569c30734aa6c9ab99995dcea4a00230068d3d9dee79b1b687081e4e391cf574bc9eecc75fbce2483ef61d2a83880b13615f267516cc82f965074448c0e5d24b0302047c435bb5006730650231009370fc11018e09ca49ea7956d5d61e787a2658aed3e2f9a2e79301248ae1ecab5c3f3f57bd2da2274e0092feceb7b91902300bcde2a3f12f586c47befcacb9c2960ecbcd0c1063adf0cdc2090693dc60af45e7f6c25a2143f0252992a3b37786144f0302047c435bb500673065023038efd825bde89dc62df6aa701eed44db9360ea503cfb2a3b90d829090e82357b44c330e45b3e60f81d51e171c1afb6ac023100ca21c20ea5de778becaf46513ee16910d3fd7e59675fa9514dafd05fcb0d565227e9bd030d2df4c54d29a812a8870b5d0302047c435bb500673065023100a8d94c312a78a5bef3b6613828352260c47ed1e7d27a6da103107bc73749158e2ff3dacd560dbe970ac0e8ff8a005fb302304dce5d07bb9ef60f75637eea7e58aa662011109a436176f0d91a39c5d0e4f33461856b57251f921d9dd22b2a2b6395270302047c435bb500683066023100f2c32521e5738af5914b5cc44552a2c71c199d58c58c52dc6d8ed77640f1002bfea8593ce07ae67fa535268a53fb19e4023100e747f8aa84056e4f235c6b4f492e396c86b54ebb1a15c0c96f9c608da4b2ec8f5bdab5a03dba43ad357ee3e02de6dbfa0302047c435bb500673065023100eb594f77c7ccfc061b4daf01b60941c46ba10264ed43f2b894a10d5663e01442d2bfea81dedfee217f92e7804e371f820230248e269bbd49c116a38aec6dfe8961f8e78867e841e70f3165827d0b87d4920aa239d70b2215c479b7cb808fd73bf4f30302047c435bb50067306502303ce9d4689202a53fb504732f47d920c10e0214c4930a63443c9ec1e45f736edf181ed9a78f1246dd9a94d5b5aa9895f0023100fcbeda28b5222527621a975650e08d6a4ffd3f73a6359a01ea7b855e25a43cf54ccde00e30ae9382dc09ea0a1c54bdbd0302047c435bb50066306402302fa3270a7c8e0e4fd49881b72084117522cd6b66018e8969ead366bf2698ea59fb8cbf960526110e5cda5aeb04a3fcb202302c8ece0bce220dafdbce98c2a3061244974e68a4daf06169a9f967042b7f3e3963c56e34b70ce23610cf6df222df95ee0302047c435bb5006730650231009ad305d7fc08b0280f78d35525912cf763e90d562b17b176b6e862a9aa3d9b0c5dab81bfbecfc9f0c4ca124d72151597023068d127b3963caa75e9769547a0eb74e80ea3774068a2c6cb0b9cda14657f5e3fa8435a9c9c4880f4b92bd24ee919d7e50302047c435bb500663064023001c2611a8baee6020a7103caede834aead443c2552793511cecf1104fed6593edca3a2869634e1bb1a1716f17b4d63410230706f372de76c342e4c603de11de46a1ff6fb5811226dee44089ad256ff1f0638a72c2e87e602e19ff5007e3b5e6016900302047c435bb500673065023100c1455145285929596053d5e90df057d1be44d9c9dcda4141bcfd1fbc4075057ab7ac7ca4379419c66b8a8b1ec5c1fed202302223ea4d4989405887e9354896d01da477f914e462323cb2199dd769f8afadfe0ce37d161ef64163ce59d24ad17670d80302047c435bb50067306502301f1ce5ef7aa5d91afbdfa33076c840721b82f438da05c3c84b9d9bce80d2bd118c158739e61c99f0eb84988274e445c3023100b7b26901669993f6154b60cee59b8861020d0ea74f838561c0a66e75658f54079be532e1a9b9c335df67bb17ae7432fc0302047c435bb500673065023100b9712b3b482b5e329eaf5057d5c665cb9fe1ee043be91464a09f9cba4ca9942615cbdf184feee0920f10ce8104852d2302303d15241b37e15fa7b339dda146d5086e8823beed4890022e43f3b2c168feca6f51c2eb961991f0c58eb72e5c22bb37ef0302047c435bb50067306502305d7bef6517c07f1e6e377fd36eddcbc1c9667f1e4b4097f447c210f6769679614ecd2c487db08011e974ef9a0eb6993f023100d2a787bcaa4f0be68ab005f67bf8f16cb660e70f1411b139baab09a9ba230181b4f9327acb5e8c8439f0e69f189bce900302047c435bb5006630640230684a5f3622bc9ab7a26753a80a076d10708f9223f4c2fc6f34ece8f04b4aed435f4da3166294b8e24bc6d1eef93a1787023015f82999402d2e5530a6bf4c340b1358894de45ed2e6d8b8421f1a75620ffbe6d4bcd8d394a91f1ab5472bbc0c5707640302047c435bb500663064023021dd1f71862bb83b3a03d49181fb4b562baaa0b1aa1ec381fda2171c98f91b6d0ed271ec6e92ea280a8b8939dfec6bad023004a83cbbee9c40ba4c60c225543e4234ace93c3d3773e5f3f9c37d0d3c086c2269020101695dcb6772541ca4af23e6780302047c435bb500673065023100d26f46e160aa9d0adf514e111e6a498c6a0a4a3e65a80a0458286338f9520f945ea4189154fdec37dc0a79ab0a583b9c023033e96214274ea3771e6d5119b995423f94133e9c48f496feb9e7ad956c650ada3127b61bcede9582bcfe28b872564b650302047c435bb50067306502307e2bf4224f58e6cf66f48a0d24000e1f737910cdab51265778b0a0b848a05fddebef849081e49d61babaa1a892f74e43023100b26d33da7959b59345ad06ba9e36aebc1d98f1d9819147426000bae3e34add6748e9a1d2b318bd8e671f8fe2a5dfc87a0302047c435bb500683066023100deb831149e490af0bd412c25df3347ef40b4f33d0187876fd22aeedf8759d7064abb74e099750dd640a5b791879b16c2023100fb01b7886aea2e49bfaf343eef426eafa29d17e36babf883debb26bc82f4bfbbc84ce0d6f055e504c8f0f155194ea96f0302047c435bb500683066023100e0c2c3bfe968b85c62df86016f03ad781112b046adfb9aaa15c65ce458bb14795fe6fb19386cac8c28b89885d49562350231008d16f6535ce0bf30ae693ea677c9677924b998e815d2cb52f0b7dd50e43988f6ebd8cf6311d226dd18a6be0f1c5fc1b50302047c435bb500683066023100a35752b68ab9d3e255a5f6655eb379d26b2589ec4c647c4f759ac25ce1e73a77068854f16a2a424617b52574c4f22236023100bbbb97148c339267d806074d8a8b7452d50e5cb2c04e0ec8ad7c24df453695687a7c6697bb1307df50156c1b46af393d0302047c435bb500673065023100fcec5391d67d3e3c254bc8032b8dc4501e7a32aed391600b2ea8594445fe5ff6bdc3290f848befd050aee7b0928cf9c902307c9f7fd37b87758d1db92878c8a4e5b4e4885ff90c0034703c0886c4fff21281ca73928046c6736c922c481c8b0761f40302047c435bb500673065023100cee4a7f43555ffdb19139f662e68f633758791954850bc593f09a6f0b3214b548fe05c506176670551941534eedfd5e7023055c33396d89f73f66a9f895d330d38ed2f86f84f2f2058ea87502d3f186285f59a7ba13a776a74744f02de80b15421350302047c435bb5006830660231009be4d58621316db72b6648619e35bd468c0e23a732a2a9737b662b3b930605c9bd2567d76266cf42230fa8d97ea9e0d6023100be8423c10817b293e204dc04a915b3b30f6ba26ce287c03a56c15df7d146b54b273a2a6592f08bc5d614c4815ad09cdc0302047c435bb500683066023100f61c218c6846c82bce00daaf86f89ef1cb096009447160733c30abac46689a5b13c514621c001c431316dc799e358972023100c1dd29bd6d300fc30379648813359da38408c9d83e619f2e94db1b15b6561d4718857559a6c1eea4d011c8808ce627430302047c435bb500663064023005273153e10cf2ac135d4d4d74e1d3198470e34220100cfcce5e8efabd3c9b865125145bf4a972af49d1e7027c55dca802301dc785c885f7e7da1b00e5141c0c0d6473ebc7d6f63879c63dd2a92a5fca04b62b426e830c75c7c67ab751dd2277f7660302047c435bb5006630640230603ba51887d3527f4840adcfc5ec11dd6051965780d2faa3f90709bf87d3f8280ce10f7b49808261ba02f9ad31086a9b02304437f7c5c35b98e5c2178949891e4e4423f8048dd598ee8d4f8e6f4620d99c077667d609440ccc537e1798400d25985f0302047c435bb50066306402300b201f944a2e0b9d30f6614f4228ceec653e8c92719daab876a903b1de763bb9e5b49b8a3406147ad5b5b31356310c51023049c2aaf613e0cc16d9e1179180c1766d6bab546f536fc508929a93f8032940e201b36360af462096a79797d9a04507cb0302047c435bb500683066023100badbb85ae087f4e88e2c852c7f14a88b27ef0ef2409466132fad53a3b52ab2cf75a4b7ffb9100d966220704bbcd174ec023100f76328a273a8897de8ae1044eb97b4a26f50244788811821ee20af069cf87ba361047c73821f1f2fc2ad997108d5a12d0302047c435bb500673065023100fb88bd1e52fac5d043a260eab4669496249f195673496d38952496e7479aa15196fe23f0573d141bb5cc2d6558739e58023031ddc1eed13e0a2f74d8631bdff49e383626bd66628529c29bdcb17840574f8bcf2c552cb4c82ea7f84f03722efadf9f0302047c435bb500673065023100af761ec35d97a890c51c90c4250289b05bef61771f308ec530a0f0ac5f93481d24b8bd4b80db9e80b92f9159ccff992102306b648b4ff42fac065a451c5e7a1774f86e0b1b70c141796757e83a75044d317ac98f71f1a55df6e64ef81457029c8c3f0302047c435bb50067306502305f16c5941c1892fa7e77d95399f8aa28ad4b2e7f55e6c9f71d52d2053ba7c4a6543d0470dada88832aa0eb93c6adc518023100e32cb8f9a00d563ec04cd4f162864f1dde6e31961cc118e5348f1d4d69f4e925cbec55c408f1a387c9d8d2f3b078770b0302047c435bb50066306402300351adfeeb46ba56cca770d27164c443b56f96ae003316f5351467c069c2d8e567f19e9c7e8a2d480ed3849fa76f303602304d960076dc75618f7a50adb91b065c8605be9ee2e6cee724fac081d54194889c50b8fdfdb93250f06df3d23a7f911c260302047c435bb50066306402306cddead322b1422503ee5efb15ea0c77827c6e77f39fce6487b6685d7ce9c1718970b926dd1238e87cfe0d1712ada35402307c2919555abd4c526fa9fbaa0e03b88da813f6721e975a5dddf80d607de8de3634b6795994ae6bf81b9075abbdf00a180302047c435bb500683066023100ab369c9622b92fa5c2802b50b50ad39a12b96f763135d08857815c72958f52031677cb7ed880b3545a5f1b65ca1a9ee002310097f55db5069f7db857f1c5f071daba5184e0ba7dbc8f7cd8564381d903be36a2f04dd1b8bd76d76cdcc2b628eca818590302047c435bb500673065023100bfbf6e619e7cebf76f47a812f3de16b1d59e73dfdd8ead8931c29a53b1fc7a851377f098a9b67554bd47495eb0b94f6502301bc900dd2985251cc747e042a6539fe1ca293f8e8e994d129b13d853ba79b7150b17061320409136dbf671dbb2867b520302047c435bb5006730650231009219704a113b4c6bbe53b3695ea24a6fbb2628624040bde1b06c2a0411f96144dc83142017b1971f121c706410f37f20023074960346c22cd43e115d86c81071cd47b478b8e927fe95d3bf0a5a61f24bf5253a5669092029293de5c813e543a2c0ea0302047c435bb500683066023100bba24f63eb5be9e3324400a841fe66f7187008f56c6300c02c5991bb1845f58e837c7fe32d6330d7f2504172126bf06e023100c0114aeb1f203c3aa2cec99b41d1af41790f53ff2affc74319c4c9ba621b89ede5c9a26aee373aaec79efc84c31a44770302047c435bb5006730650230726cd7eed8fa42632af3593bd023a4fb2da35d7cbbf1bd1e14e68c4e14f6cd7ebce0daba10d850b68bf82278679880a9023100fd7f77d570268042ceede4fafe71e363a78b32a37350f4566c1611aa3bbc6ec93584ab54a5b3d41c33106c50d62771080302047c435bb500663064023100e5c7caf34a5b45fffd5694c33eabebc14055a067cf40bb95170eb18e901409798caf1b5f5e356db0e20c022f18cedde1022f0b461c999faa034ada092f60444db3665dc463617bd58b73029eb7e61776f64baa479967ae8bfd440104ef14d7f5df0302047c435bb500673065023100cee002170a5fb9ef4a13210ec4505f92ad9b4f3ab3b136da39e71f1aa9dd8687a4956c0da9647920d911fc23f50d5918023064cb3d0dcfb9ac5ba45a8a68ed5c3dfdd4f86553cd5b02b8beca2d5dcd192fc757c1541afd6aa6c91d446db8946a6ce40302047c435bb50066306402304e68e4f9108184814199b33dc15e8825f873c62c0f68c98fdb2fdc4eb9cdb49c18b01fa9ada00230e302928fc8f3ddde023026266e720bd21d12a64fce52fa13a4d2e114ed0532ffca6d5deb8651c6a3776d7adb18e4bfbcaa8f79aaf9f6537dc4b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100920805006323f9cbd691cd7c0c564683c0de981313f8e7345bb428926c04ee2f39a8cf696f530161ee80c4232d25c391023100e1f7982972fdbf110d88742dee1c524fae34c6a7370e1c49e1859de12a6d5ba5d46cbe5e9573677215212dda8bbee2360302047c435bb500673065023100b00ace42405f917117b1aa7496e1bed689ad04581addedfb1bc2ff4d4ebac418b057068f325aaee10e1244e46f006432023042022583e763cf38903fe53882aa3d7b6e3438f50be94786c288d39f00fe99cbc1cd5939c95f73f9adf38e101bee96e40302047c435bb50066306402303d01d5a1a32c1060ff5f66986c90a11f8864c1dcb3289f0199a1ed2f06981ac3a4a247b57842611b80fde2792372ec8c02305b4ea8fbb82e175e51ab1482bd718cff87249e8944088f80492edab49cbea2f18b39a036591f9264667f5b838faa66370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023044b60b24591810c3652df1ad6431b9131777fac151a38e7740fa0ceb191373d7153257935e14e90f79622af91782a1ca0230056056beacbbbdaf2309f2892ebcc62684d0158fb985b611fcdc33c093b3c9bf76b9c1715672100897f342185d5b02c40302047c435bb500673065023100da09423d50e50cf0a8ed8de0039f6a3227067298af1f5f17c8aa51a66630c5d9f15903604ff4d7234f58db42a61f19f3023015faf7b4ecb9ffbd0b810941618394123ad8f646936c9d0eee40bf29e88f10621e1b2a2b35ceb48ebaa2823c0a83fc7e0302047c435bb500683066023100cdf0ef1a3b7b82c2dd880d22f24026f33527cf357a742cc990e177d26df7f4a68bcebe05647209e01b603e7088d44f58023100abd2d89f5ead25e3d412d506de1b33405fba1850eb41bc416295c8659a2c3edd9e7773740f2bfd7e76c0a80f7acb12eb0302047c435bb500673065023017058b69485575aa76d066726ce99d95c6c278d2ff21cafbc202860b8dd9f4a02e45cd385d051e909e9fd6173a33c6e0023100c328015f2563f3dedb6342ba12fa8749036201283d7ff0d61f9d941beef6335ac8e0d9d424849eafbcb517c8e1a7e26b0302047c435bb500673065023100ade1b2548d1e54c7430204cf4d9cd862232eb10f6e40636fa701a84e369d94a0656b3c37f5b7029012486af8d1a2a858023078d6b1971d52914d140848b5e9a4c849a7351f32335da234612b8636a06f396980c1b38da71621c131b9c947c0b6d5850302047c435bb500673065023100f02af815374c37b1604216a6deb0b8d7290208ac42c0b9643786e8006c897d4ff9741f2b5a77efab0ef262b5ead2410a02307074138291716bdc3b46ffebe15cff4b90ab0e1d80750d0ed0f78b1d02e16481ffbca472b2b8b50b32b0708b41dcef1b0302047c435bb50067306502305228639043fb6fc5a8a7327786c090b4da023073f6baeb49f4f8df9ed30ac149179172ecb46b71022653a7a4952701a6023100dbcf072d08191525493955a2a080a63fe75e992075ff25bcd7764921ff5e57f79c26f0d594e4a4964cac2e75a99ee7190302047c435bb5006730650231008c0a2cb5024c414b2d538ea188decad3c17c2ff6efaa57cbde2731355218435020cd5b8ee9c1db9d02b0d0329249871002300c2c65a2b7831e47b1bed1122a2a74a8a2255e1387b7b3126ee7ca93c2f8ba04c528a42add0fb0251c7b3fd0187d31270302047c435bb50067306502307119f36a4329d52f91407b0b346364fb95c8ba3092afbb63d0064cabf22f69e04c463726267c08a81ed4e937c8a2b84c023100cf40fa9c2f05644c8e0fd8fa344ac636a42a3ce03a57b60da348a30cd2adc8104060203be3f059b24ff9e4525db0f0f80302047c435bb50066306402305d1a82073ab4bb34fe238691e0ac99c5b9541bc1feb5d808c80bb9ac52cd0569ea694fd7f3386a43c8fa48b056d947f90230584ac30f0b26a1b2a3d1d0fb59bceff4a2fcd503d2c754ae4aa2534af108b07fb8398e86e35fa0039a39b571bca9ee890302047c435bb500673065023100a5b34a3af874c1d9caf5626905c1bca1210885bb685660edd7b1f1a34d13c77845419922eee39b2a5329efd60f9316bb02304ecc32aa17854a6f20cddd34500311af06f850ba604a92afe00cb4c461001ce6bacd1ea2c0a20db1b8d8fe51fded017a0302047c435bb500683066023100a0c0c3931a17e50b11e16975866d012941c4ff46d1ea1ba33c2676a750a7a489466f1f405b87dbbb6dd8a7428b5ca9e2023100881aedf1f0f00181099fe7710d6b4cdca6fcc1fdf76b2da4b9faae3ca27e94450dc662e1cefec882431215fffad0039d0302047c435bb50067306502304f5f605466cc59823c0938835ab769f047c65c28e6ab664f1d8fc2100ff989e3b4602f859b2036bebf25a33ddddbff82023100aabef220b42a300375f64b652bb05ad1641da49d8d0eca559a5434fb5d8502ad0ade3d2c52ea98fae80f9899d41be9df0302047c435bb50066306402306480ef4af3507ffe674a9871398bb6f3b85779a270a50c7be56e58e98530e83234c5917978f0ea74bb489107f5e93ce5023051b09ddde5a222724ee68c0445d2b9581deb7e2d95ed48ed2f98800f0acebf1013d00e38ffc367c018cc1a02f684b1760302047c435bb50067306502304e5a71733a222ef841b5d3d89f7ab94d2274bd3d848c36cc1beb6c73bc54d2d7be5f769fd88f5eff742de6d60d261090023100ed2aec9bada7f615be8075f32579883f3a838db85bfa44e180bd0d0462dd188e79946b4767ab6719b4bd58200e61ee360302047c435bb500673065023100b9223eb2ba5cf2346fd44ba50688d50885e4d07d4d1345005b0dc2643719fb36c03df2e7fe2d866410e889b344b407580230200db544946a20c044de89dd81bfffb32cc225121db887b2b8b0b53a934d138a4b4d50da228e3c7094db4cd80aa6b00e0302047c435bb50067306502310098d1abde66f4b27affebbfcd9b2b043a7322c62753d486f6c78593e093868fe09c6de646fbbc1cfdb0263de3dd72df0e023008ed1402d1afcc111896e94943cebe06ad7131b8a9fd62915ba9acf3853f1fd7aa3c2e42c45df7fb1962dc51f546899f0302047c435bb500683066023100ebc366d709eb3cd82122c77e95af660f86ed38d68ae49d054b37769b5c8dc36819614cecab4afe72f567272199d1d15002310087b4665819e0df15caeed105476678402fdaa6d89823e89e9c7702cfaed475730b82b65ba6738840fbbd285f456d7f820302047c435bb5006830660231008db57c8346d43544fcc850bbe6a65710a14cd75dd02ca7fd940fb98af1d0390ef86d86a8f69a74dfc1be424afca0d2a0023100dad96c67bd9d395c39699ca3793e52acb2255fadb79230ac7beee8ca6d6a8e7b3b95a4aad362f069c1e1ab4247fe41eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306c287c6057b1bf4b5cfdae76ebd61c90e10f4dd4bfeb72f57c2219d9527f220a6c301b399e64f8aad8056a293f6419020230386bea38621402feb8dfa2ace0cd23427316857f7e9db6b294251e1d782e0a24b87c7b315e7665affa2ccf116f9279080302047c435bb500683066023100e89ce19bc77ce498566bedbacfe128b38b9ddbaca205151746357a6ecd9601f533d54dcbdc014433d7c924ffa9f1c73c0231009a9c7a72d7d3b3fbfa504f09a2fab120957e32704069fb83539ee7baadb1e6bdd689263cd5851d0a19d1d495de49f0e30302047c435bb5006730650231008eab9231235289d290ff9ebb127030704ee1764177d41776dfdfd070b2bc5e1c6309dbd618a1b423e35b9296bd92cfa6023067846ab3ff8156e43f5c6185af9a7337b288d9ac53957268862e33fe604a9d6f600e9ab73d04740c5c41b8696deae0ac0302047c435bb500673065023033c2eba40e3324e70fc7d95ad90971bd38e1d42113a96e22e90f3e1e45b5f903e6027a7308bc3acc3dae8e1a48e88eb7023100b3211b19ca6bacd72936fef1adb4603f715a022f080c8f5530456baaa19dfe1334b18a50e4d43325cc16d2ecd14bbbf50302047c435bb500673065023100acb6d93e9a64ba797c037768913f25b1d43a08abac1bf38e064a3f2906002fd8831cf5557449c21e72c153acdfed496a023016098893d0656b094c8cb5cdfb85735bcd6f4b18138ec0185aa4d1b16831881c743f5238e25e41d0012790064ba5650d0302047c435bb500683066023100a9861587bb061df325f4944c355dc2898c21bbb7e5f78c63f9bd80bf3a5d9b549e9e38fb012ba2867f76ed98ef72b49a023100d42996c96a7e378eba09d8020acec2da53e796780f0eb4afefc10b1576d03d5d0bbd6f068405c04fb50498c9c14d880a0302047c435bb500673065023100d58dfee9708409cd87980bec6fc6d9d6b01829c6701eea9083c40b0d187647e65e17055ed3a1026e043d22fc1773a61902302298ab0148deac7b42b128b82915b68a1a6f2e8a5e9845845cfcf12910285f5d76936815098234240e0e465fbf3cd0490302047c435bb5006730650231008d852c4c4f0e23a35e0ae65ecafc4415e4fae38a2f5b0b41f039b4ec211f60225fc7e49aef7c11ab9b3655908cd8ec7e0230630229c8e1851671c434d7443cb7f16ee12a47e0908372bd81a9fb22e77bad5e591ebc113efc146003308388c397857b0302047c435bb500673065023100a3b10ba684c9b45a285b72ac74d1b50d498f5f54ccb6eb3274ef1ec89513e9291310c3344aff1583e7524900e92060ea023074c5ee1c2844ca7ec66535dac31b61524228419689b94eecd7fdd7b6c596caf03a8fc15eb7063e0899add281a6dea5870302047c435bb500673065023100850e3398e6f14ce7ee6c187fa26a6d1d20413571ad74e8d8917ef4d165dc57f7ad35fc008a4332692bde4168f92a7cd302301d25345b035f46d7efba06e322c7c687cf1aab60174d8b5c3528338b234cbdd41b32098fc46c0b1911a2c39344add04e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230316eea379ea7803a4eb5c6ca8297610839850cc8ee5202a7111211589b8a9ce850e88ef4da9d27436973b7315f6c99cf023036842f8cf6b45bf8fc16017824d1ca9b23064b36aa479cb70cd8585c3a5d622140dcd634e115fd2b22ea3feaeb9475710302047c435bb500673065023100b68e6fe7e902cfbf8e08ef6697983d2d589f8c302c6a751a6f250b9606d11672d741018edad5b4cb960d173a57c7fa08023038935a11cd0bc32f3031fe6f9d7f2a69d689f876253b415e85d85aa9085fc5789e22b8adca67b69b7e52647598f0119b0302047c435bb500673065023100a532ef73531e3d9f398244118e9c492ce17cfc8e3a304c3f72aee459ed18cd6c3b5852f38b1a6c6aee9866cc565705ad023046e495b64f5fb044a6bda923cb9b27cb2672a6ee4c254a6245f4622bb203f420b472350f33eb79e7e848f24bc57024030302047c435bb500683066023100b7d989a4bfe0717cec59c91dbeb7139565ddf076888275e2e998d34aeb0124c3c0ec3ec53143c2048da2f0ae3b30388f02310098e3e7f2f6cacb4fd05481ae6f28b93dac95da919fd86da5c5372cc1c73779d7251a0fc8e1c7334fc8311139b33acdd90302047c435bb500673065023100ca0162f3924fbab3e76aef1d050d55befd494a16fd8024f9c60cedfe0df2fa4bc3405528224bfe555d9fba41ea664727023055619679a41568843cb11c954bdc1233d2a1c4c899ffcac59dc297d5e94df391cb324893356bf8c91ad0c30a333f76110302047c435bb500683066023100803fc44d9eeeee3cbccc4c8a2d6af54179841ed51c814c3cc3ea97c082671b1e9dd968a6be3a29b5a00ff6dce8880d2a023100e122e35962d147ae8baf145dbaec228f215cb6fc6e4b158ea980cefdedff57bd0ce889ab5ac8905aa5bf9c2394fa56900302047c435bb50067306502305d924f0492ca1993aada0bc9d5989ccb49096c76a01581a2ca2bf32328a9be5ed3486da5e87031805151ef31b154680902310098c1a0c5cdf707e1375808069040566e4a1667d47d5e65d27ac6879faa7afe4a483d793abc3e480106d0d474a8cb3e9f0302047c435bb50066306402307b3bb044afc3ea8bfaa4a4559073ba59482bd2df90346cabe58cf4a49a99800c1652c1c0e4e34e37af3aa7badbe93f96023078585b5fff9b31cc15a529d7415797e6a56d9fc2411178e3b4c70c7f7c8b90266ec06e8009e5a20e7ba492ddbc2349760302047c435bb50067306502301b0ec62ad36329de05fab6f1c1c968ed054ffe329eaee10b02ccb5b5a6a7615c0213d647bb19772ffee36116374d39e5023100f38481d48b01bbbaebc7c8e5c062ae30c7b67c1cf2198c1b0afea0535931aeaac4aa0321fbb8309f458e566744c559a90302047c435bb5006830660231009c1745c4f54cd990aa28a9df98e799b48360032e4cb0dd0c1abee234684abc0c8076b05fb893151cb1818d9f273476d8023100b2a963668cf3644552cd87ef0d1bc1c95c814a620b804fefa8dc049356d6b755f0983e4e162011400648027a906555920302047c435bb500663064023005158a06ab51df4d2f1e72068801e95ddb0aaeace38250844f0ca14f6e0f4db2025340f6ce0d798888bb01c537432add02301c0b9f4dfc0e6b5bccdd56e3bd404455a64863b8aebf1764cfff0b8f0eb3ac3edae4c437a29ef6247e49d7eb08a7044e0302047c435bb500683066023100fbe9087e26639ea0d413330b04087d90c931c4d34085088f1b619d3b2b9054811f5f81e5408632cfe01fb30cd71038d80231008f689b3a07f786b6a6c349f4f79cc9ca056f4a8950a49a2c81f743f12eee66898f7782c5b0fbc7ed4617fd52c35894e50302047c435bb50067306502307191a020695c647d6ceb9ec86ee27c444af483e07238d8b06f6021fd9cc0781730cd982d0673078ec5cdf14a138297ad023100e8a5199d7f2b6f6d8d819854bbcbb8278099df3ae24c4712ce1fb09a673f0fbeaf7b391b744e5f74eb19fc700dfd2a2b0302047c435bb500663064023070efe6befab8755a48aab694717445300c617a6c2e927a28405ba0f39fa954d2a0169fc945797a65f60154778be94391023011fbeb305e640b958c44ed06811c766906622190b21cdcb4fe0470530f8a746df3d9f0cad75da88c3f227050ae3d68210302047c435bb500673065023100e2205c3c1e2af9b607c6a50246c6912b88bb352166f694cfc8c66f9a7566c311e36fece4cd457f977ad7a70baded3aae023079dc3d4edc14aca7ce6606934b394bfaacde5525281937220474f748854752b5cec2572327f4d8046d197bc7d76b41a30302047c435bb50067306502310088aae42ceab7132cff380cd3b1418ebaf227c6db3719699a6024cb98cb82bacd590a455b3e199d9d524b8be438e4890c023072aff5da076246da2c0acf68204e48ea4ec01742d2fe05fd6d722f56e67b35310ebf994ded6500dd1e59a6da868880750302047c435bb50067306502302dff471edc244898c88195b997d60def3b8df7f800e41430784f3a2d7abcb485b119621238e69135babfacacb3ec6182023100967c80a46f873643bb68cc48c80bc0fd3ca6f51f328bd632b03e72eaab1a5e8faa0544556fa34fff4f599ccf483978af0302047c435bb5006830660231008e716ac7001f751654cdc1b9173bf0224571892e1ba9e935d47ada7a98441b279e3ae261b0425295e2c944b2c0bfcd1b023100ce9276f286bd241c23b1842f5d6b61fc16731a0947263e136e317130b30bcb947e7cc5eae32e2eab4b5787f8a3b29b7a0302047c435bb50066306402303202fae9522f85b72016a79444899bd5d66b24ff9b963d6db0bd062a198b85c59c4add034b189ee1ad12512d651242330230531edb5e448d647fcb6574af56823ca2551a318de4c99945301748132f7f7c2ba76765f4664c37faca4d29a8cec84fef0302047c435bb500683066023100fafe12a817b6398f86fef5a5fae167e59e58cd091e2d4a350e0118d4714d781378102118bd2d7ad2d8e3ac0c50c5bddb023100bd494bb1597843d52cd3919d8a18a2ba16865681af3f1a5b1c0508c16fef84f6f6136c353c7503a6c8c6184ae5808b3d0302047c435bb500673065023019bcb4114b8a1f327d664bc558ec7dfed771134999aeefcf1f9125af0507cbd06827693292fa8af2e0ad859340af964d0231009f19539e4c6f8f68467bba7367cb410b6e4714afb8fccaecb7ca7811bf1bbd7cbb0aea7f52b04714445611b3bff974bd0302047c435bb500683066023100a99d25fc2dd8ae0fb2ddccf1989b347eadf6eb8fffe77253aa13b2529e64aca624c8766e9895e5b5b7693947f1c16add023100ed1bbffc6458177083e9685c3e2c3e3c03c8d85504195007b046e9d7cc2bbb93a33aa43a544c8c24bb1e7480bc610cc80302047c435bb500683066023100ad5ec89ca2d723d296383b1398078721862120678e5db09400e6e4c620e27c2395e3d5dba68b8169751faabe9c31c34502310096759afae4c9d22bb48b12da5ead7f9ad48b7955bd53db1e9bd0fb9471a44e8967336ec537db2170097dde6b14d6d9500302047c435bb500673065023100de7558c2289a69ed2b8a5502231022f2f4ba7b281c7ea3b658aea57e673dacd11340b66422fac1ef37d538fb4805db6b023006433ce6b2101916e845c54cada2448033f27c9174e6f0489f329decb57630c42cc5e2c500d019175d1b77f5864d8b950302047c435bb500673065023100b33ace41136e8155928a421e3624b5b6630cee03604fd2416e5300fc3afdaddc9d93c33f232d47ace80fd21f0739219c02301732833c4d70d9cdda0ce0356fecaa5369779fa4ead58174ead0edb9e3f61bdd4edab598498cf5169d062e92b93a7b0c0302047c435bb500673065023077db40ce8d1f1aa3252b085862bbb9eada0873f88a2c93820b3397222b45a21c7f767a6052a6e257ef777f423d4b8cba0231009d52902c17bba3c6f7e73a55134639d0982191c26615d90f4c00eba8e1135e9caf2366bd737e68cbca3e450f50cefb9b0302047c435bb500673065023100d7faf2a6c6d6ac2994d14b4eea302c9acfffe612ccacf17262cc0eea523bb5dc2ce9396f2ff06b202a29e150e13a954c02303084072ff16027ca4c9198366aec2eca42cc44d75502f9da00ff2c790dd47beb03c97af0f297d3b88c749239c74bbd360302047c435bb500673065023100feb2396e495ce660cd6420164b9dbaa274853e8c11846d92b81b5e8eb64cee249d826fcb8d85791a6f8bb6463cbb5b13023045da79047026973e78c03234a88e47acf37c4096d299d2094cff2b2efaa5f32cba5af3a6f8baed1609492896af28d1160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100932f89bfc5906807bc547dbc608c4cc3a3d95cabf2474be9d13de66dba557d8e2d158dbf07b67676899374c821bd6929023100aa4d990d500b60b5c61a26eb8ee389dcdb251a2ab7aa08eeefcde5209df342a1a0992ce89c8f4f9ede8dccb41c59b9f30302047c435bb500673065023100ea26d5975020fee6bb697460fdc594b9d68dd0d867e5d4b248245a9b4da193eead632e4df24b51f8114efc5a067fea9d02306590a8aae2c325b0668f1f31f397901d24d30438915f28ab73e79f8d78f91f5ddcb5fb83e580259b477dd196134bb75e0302047c435bb50066306402305f9c9bf8b1e28395601301a0e510af9fb007c46a8dc0e60da3b2c57d7f167ec70c8a39bdddbdaa84cd7ac7145e0ea5ce0230666d255aa72db38f0b471adc698cb64866ef365613e911eb340d0390cb99e2024e924a78ba455506dc0275102d0641e00302047c435bb500663064023002e35df336d97e43470ec50dd36273e64e29bad24f172a03959af7dfcec5ab95b809d93a7685a7cbecbefc2a1ba04bab023011c223a923398f4855df99dc2a2d9621dadafb9b66e5db07acd3a4a32c7efaf7a2094108fa730a4a14ee2775a054146b0302047c435bb500683066023100e585bed725b84ca85758f05353d4261d7408360af408a5aa49afb284fb6839dda5c7e9b1fa38d7136f64b5723fc27ac3023100be43e3f2c16f201c4ed485475548726e6e0e18beb2d36b8eddff90d8e31ac6dc48ec97ca6cb32d196c602246676212470302047c435bb50067306502305f75ed4e50868877baacde5d8a56cacd6d02d44e2d7a1b22ebc4b2f12a0098323b6c0a8292a04998f249aab0001cb4f8023100d3a112ee74f26ca51bac8ab61f8f9e8621509b4e45562fc1df19ce40c88a51dc25d4534297296d7f5b70cc7157c59bed0302047c435bb500673065023100b0a85c38b8759ea033df2e3d262babdeabea4e4d795cc3f56314917eaf39b6c85854e98302f3fca222c907255a490bbc02304975b18408d3a2816e343a1c85f1372f7d7b9cdaea656f4b6a276d66ea27a6a00b10e313c6c74842b98171d3ea3fe9fb0302047c435bb50066306402301f63b9276eb897a2f850d21509b44a4b214822fac21839c06670def6f73d47d6d367a25bbb828ac18aa9b42117eba31002305489dd2c2950aa0659d5fb2da9ec0ee30c9ae277ca133d6cc2ff1d2f5cb9e0d5cca83d4c6ca2d9140b8fa36e4377f0720302047c435bb5006730650230722f9b71ff10c5595544185a666b1ba3604cfe5055138495de1ac8b35479ae0e201d3d0ceae9eaf0fb660ec92c3c6569023100efded996bcfb2b422cfa3cfb21a1defbe828ff683ac34bc046b26857f28cfad80a319658baecdbeadf7adec6022999c90302047c435bb50066306402300ab8a6ea8b60543b31d36f29ed9103c16f042efbcf0347639cfefc305dae968aeeee21427059fd93b0ffb29d806f087402305f008c0249daab9e827aea9fbb81fc8cbcc991f9027ba9c4805d0dc2c4d0f83675e7d315f0cf010391de60cfe18a91b70302047c435bb50066306402303c52182049f9958306c219c8535f1699dbff65c5f14785eb2615c16ad39dd1adbb31f606d75cbb95fe41ff8623000013023069d2a95900433dab0b512598ec9ea3531a6ab2b716b4077dc0bd134388d6f0153b145900819ec7852cb9d678eb0d0a220302047c435bb500673065023040e6a5e7989bb6b2f1f507fe1fac19ce1b7010ea276fc57308b7790afffe061313bf4484b1d61a71da65a271e7cd9e60023100e6c6ed60658170d71b8c07de722a23f5f6aa67d9bd44b72bed6748cba60a3e460e98044850d528c080dcd30625f773890302047c435bb50066306402306cb57155aee554786a5a715adf253f8093ead93dbfd61f9cee6e436ff49d7a4db7b0445328aeeba577bd96e70fae86d502300563105a721db654e0bc5a12a3ff38d26274a7d905be91efd706f3edef531778764a3a09e9ddab1d29a007942c8f48a80302047c435bb500673065023100e697bf0aa35184beafe572ec7ed012a47737ab3ece9d7757f74b7734e88d09b4f119001f71d5636aa2a0818f6778c24b02301fc2f0d9d5970b540280a7a2df810b15e567ca29c60cbdcde62c24cf1ec20f9990b18fe5c96f3a2f6afaac624d7ebf810302047c435bb50067306502301fc2f54bb12dbbb6c6a976a3436f694054365c1863bf079663db1026aa6046a1aa1fc2b3eea1b1c916cdfb2cb37ce39a023100ec9ebbd96daa5ed5546ce2f246a30c7b7d0e3456e3765bdce23caa5318c378576289b8770d644e96b3f9eabacd9a0b960302047c435bb500683066023100f609092579ce0bc93887fa089e41af9c38ca34efc1765ae79701205df638e28087e5dc0133b9dbe3a8949268b394297d023100d65c39ae4d28902b53f3d234589b20f858170358d31f99b97bca7b5faac08cd2afdc53fe829efcf16e22ddd591e457d00302047c435bb500673065023100963e1077de468a163916e4b51d40cc988ed47e63b31d39163d55f21694f64e6cf199d8f40bfaa7bf6af508f6d3de601602302aa417b44cd97dfc10bf14c4157860e90ef0b208ff97caaa178d2a53773f4f256193caf6bbcd00a0607cefe6b23f56c60302047c435bb500673065023100b4023a020b9e7c990f49ef91445f09d2916c6e8b8d959c0661d987b9bfcd6116a7e4549df2810bbcb0d56f31fdd2b52202301ec26c4984b675b54357a32755ee98674b92da4ea05f66c7163644fe404877f567d16343a2f40466e3f7ddfca28699150302047c435bb500673065023028052d2068d8abf9961d65c69345d51f9dd0b076483aff2529b7cea96733a012b651dd3014fada080c351e47d667814602310083a20f419343cc2adf725006c8c72efd0aabd725730bcf632a4e030257fed2d4df51ac88244c9ac173afe1257983471b0302047c435bb500673065023100c6ad351becd50c4f918d6df2eae7afa9fed658bd66bd4fc0b2bd2b69d3a944321509ca4e3b5bb563cd77370c996db2e502303c26a46497e463c159100640c87ccf3812a80973fafaf72b1d30b5ea3b757cd78cac3761fde04619e5ce1ab893e962d80302047c435bb500673065023035954f19cd9d7ad582880f42c87a0138b2c30e5adc15c59c6b6679958b902d5e2eba017ab982b58e79d9d63401364297023100814a88d97ce871ef22b9e8682494b0d4be6992758305f5b8c4eb093e21b895a06386cdc5e009f94c550e02cd9bfab2fe0302047c435bb50068306602310096b6e05dae667f5a38581605a9c3663d7208e80207c0687868626a728c0f9da7014a059ca931b1ee3f39b8fe79eadf2a0231009065759ad2f1214eeab8c96980dca3ab0470f90ea8cdb95fdd8d992a630d6b5c102cc7d4e98b56bb6737872fdc36d0bb0302047c435bb500663064023003379fc0248346dec3f0a91175854db7b0c4925fc172996abec0fde321e10bb227a83a64daba7b764097e4b2a43d989302305ba26d8836d17aa638222e450aff3be6a4ccb36f0e4b542dbe3546b78cf77431dbfa505d949867c78d1b1bb6ed5b906e0302047c435bb500683066023100e5aae65554b43f8f1aed550aab839951836ce9ee1f5635025bbc9e039ea7adcafa7713a6b4508630f60fd1a0ea5deadb023100881d2dfabd5c39be526a2ac587f9c6007bbb0670abe6e6c526880ae67817098cd324b2abdf0d512d105c054549a398f20302047c435bb50067306502303e5f86a76d93da13bd440a761fcc91e4e729db8dabff0d7888d51916c03a398592bb386191dc8b305230dff970cb93e2023100ed6a8b2e34a19ad2ab4b24b57c3d22013b0f9a6dd1650feb17fdcd46eb258dfbbb511173e58260e9bed6c4fc8506ba300302047c435bb50068306602310099344ff2c3ff114a86da651d6c8aefbc57b6b6fea643f1cef49d1adfc99749da279ebde9e8621fc9c09ffae4114c6866023100cc4384b51057da5ebb7ffde890f98c029b4fde4856e6793ff64131c1142f30e3a4c209ed421b480a2865cd4748a05d750302047c435bb500663064023076b805c9d4f1a797222153606cc826d802197cfe700d61cf91d8fa7d9b7deb55187ba90a71811d3d830a2f20147cd19002300d9bc8854c884c7545fba786336e18e72a30d6937805d79a79fe7965850deeb890df8348c36fced6bb96d827c556329a0302047c435bb5006730650231009fdf97762ed3f524b969fbcb71e5dbbd33169724c6618c60abf30e9db86b6d279ae855e446b2481b40a731c0260607f502307268d35dcb9f7cc906359f11b1ae25a2b16b4e0678e58fba7a68a164dc9706195ff792e78e615b52cf69ca38eb2e84160302047c435bb500683066023100a82d7620ff029350071dacfd276f201e426b507e8561d175d0afa5fadbe539c7cd79fcb9ab03f996abd7f7c33883646e023100b2b7b991d4454d56b77556c5ecf6ced6e178036c21c7e28beba7b0f251f74eb9c315da05de9a24f4778c5a960da39ffd0302047c435bb50066306402301ff46aa88fe6c2084ca898103966af652e18c9973708dcfccff01ca3f9b64efefbe2da977d1ff5f4db31ba698cff9c15023031b9379741cd6128390c6b16c5210b7a35fe5ec79809f95fca5ea3023030c0fc3166d777e7529dbf2e7886c334b9b1260302047c435bb50067306502305cfe26db721568fcfc54d33b6d4b97c4f71b4f31ed67aabf8d50d5ed23d6bbb9111ca38d0f195bfcbf51dc8d08c28b50023100a70a0a724ddc53837526369a84aeeb2fc6af669f971ca9fe8ebbd52c3caaf920de9018b431f28ed642463f717d93addd0302047c435bb500683066023100e47229dd8f3413a0dc0dcd993ae96ab305360610cbaabf51d906d85a87927915ef57e273fa24b44ea04056c5ccadc4be023100f7096e863bd7c0a85ce071bba6e8f0e80444eab4d65e9fca26b0f96337de921e294e400860fe0f136671fe8bb8a291690302047c435bb500663064023016b2fa61111dbf9941bfea42739817faa2dab78f697e1c72d34f7c0e802c73087d66d957d94fc1f89bc4a0cfec87830202301371c9e5264d94643d818660ab04d6a18e77896fc9417025e938cbc85cb06cfbccad409357eb94e2dc54297faa3019870302047c435bb500683066023100b8ae2531dc27ddb9cd6b004a0a790b35dcbd2bea40b87ec54240586f05d6a8a526c62738f5d4b84b502a6fc57c7e789b023100dbf5d543b46717b5d32d6fa665d64e5859f9dc0c346306a5470628d123284454eae5999f343be0c49f9a9f327e6f803e0302047c435bb5006630640230334ecd1055e32f2aaa869e289e8a01564093e16ce7eace3bbf2229b4658a42fe0b6a9025139334b80fb28e85cc3ab28702306df170456bca7c599b4b07ddee416877d604bf864386d8fb25341b4dda0002e7b3d0c62521b7ca3e53fd47356cc56ece0302047c435bb500683066023100998839f42a5f0fe01db28977ec7deb459000500784f28f07222357da45b36333ba730a4dbe2048c909def957728ec184023100fafe9479dfd3c2ea67ac7a174f37485bd3a278783521ba7c5b27c6e7742d803f53fea01806dce9a02ad6fd89c16100330302047c435bb500683066023100db243f03f318874b6ab4e0e92fee2eebd1ec22368835050465ad4f6813616a8a4a62aecf63d28308665c801f7089897f023100ce488dd9bc9dfb549feccbbc0e8f766c9710cf2dbc4e26702c1cc4482ce9f17cc48bfd451ac26d75a7fc79178f071d4b0302047c435bb50066306402302243471deeb2bbd890d0f0dcb479e587313a0da80595c4761ae55d8ea3a23900d8f978f9a499d6623d4e0920eda646f6023043beaca0cb1b6f08d6f1b7cb0bc9bfd4f9d83cb8c00e642a1100468ece7126996714cedd35c4e47d9aac931ed30a4af30302047c435bb500683066023100d0e003d1c9bc6517018a0204efcbd326e5f1b78803039f2f0a4af75ec2e27103d74cf6337a0fd91f747c96eede2b9ab7023100a5b1461080124552deaaf9602598e95eed60ba1b96838b879615239eabd157b091f8b3fde1083ace556ecb47d72106f10302047c435bb5006730650230102e6473436ba2e8a52977de29fc09c7ca28df69b07b85ba46367b47b841e568126ba9cd63006bc998706c841097668f023100eeec702c39f5a893feb2d534d6f910183d31addae7f3e0d48b5f3bf1213becc6d8a6f0c7018f6e64bed16d6bae2182af0302047c435bb500683066023100e60f293d45d9183c48af9c49b479b1120278daa888ac17d4322d997fd36edf86af9be70cecac76f6aea6631ce7da8032023100901e8945f5572b348115a59621dbe0b5acac028f6c0c3cb78a28336f1c35a40df2e9b8f5bf02b7290e69611a627f52610302047c435bb500683066023100fcec03d628412ebcd1c6e3895c3728b3d33f14a7b3217f61cc8939272bb2a0161ed1fe3db9e346eda34808ab999246c30231009c672281b4e709ce40885eca3dc8fab06e8752d68ef6092f6b8eef4d9d1a183a649b6fa8e25a449bd593baf795ba9f5c0302047c435bb500663064023062bac9837b390549378159a9cd291071a231d11265e172704edfacf7232a3fe71c74c2b0ba7bc38438fce442b59b082202306f8a62506e8cb56b8d254a77b8916f84f59e2b2eb890c170daebc55f49dd6cda023b6122bcfd4ed19aaf184eb00cc84f0302047c435bb50066306402300f4dc64c675e268d748148a68b26cee719abcd8e49dbc94907d2e7f8126b34501b41b06837ca164c758ad7ca366fb2ab0230700476f74bc59e36d6a1c8220c390c7c289092923c3c5dd6c7957832a0776e42b9cfab88a86bf9e2b0da600195090f500302047c435bb5006730650230682c1c06e699ca41526f3d399a2f8932c0451ac32f03ab07f5a62b5d4b5b09b37481d76a43776a1c786b42a6aebb63c2023100fc090659fbcad5ec480cca109a73ddf839b7d753943dd9220e668422292d07fec28743ff770bab35d41e945eda593e0d0302047c435bb500663064023021ce94b17117363e538ec40ae9096477e1ea3259772ef21db3a2a0f7c40228f7f67e7b92cbbc09d905a4a23a9d533f3202303186c59cb73494106016a914a2c2bc6b51a401e02d1512cbae9a1a29ae998983618ce3ef42021f51f685687e004278390302047c435bb50067306502303128e6dd484e9e33fcd9bae6f8567eaef7d493303dbd4c0dc02a5914008ffd80b8524c25be016f67572ae2db97cae6fd0231008ca3070910c309d15981884435c38dba078609fda11d73651862b80d7e5e34f9c5416e78707a971d7dc7c68003c8a4ef0302047c435bb50067306502301111bd93fb093abaf248c7133a6d71c39a097509d985df1403e4d2ddf254851352a563ec4d8656a7aaa39f8a06a6859d023100a2197e189a847fb273bf6c43963e91c09c29c1d1b6cde7669a40d5eac296d440ac6a2ec173b45107003b1bcec1a618340302047c435bb500673065023100b4406c4ec659673a936ae2ac75cf35481bc40566ab362874d3c6bc9dc0a7a6c058f0652dde2cf9dd3ecbcd634355235902306ee6f35df37d08f86815a43f77ce652b26bb303ab0af84a90a78d9755d7e79424a114da363dea86720d994aeb15f66c70302047c435bb500673065023100c1550cb6ff75c0f8a1f8b48a4fec1206873fec313ad7c7110079ec4b6ff71b4f3b6dd838f40cd91bef4f41d2318c7fe3023073ad23180ee79db828afb53e531aae17b07b0ba0334fd27aa8b69b2097ae11b7e15ee5a517e4d88bd774579614046b1e0302047c435bb500673065023023f3a0d0a898d2d3c566156d5db81e30fea6f630955cd1b2fe171404bf1558de821dbece14c7134a37dfed265b24055c0231008fe141e4b727a66a58948303a96443d99e4b9db513ba7719999d849f4c8ad7e3ddc7b86cd127bb874e996b697d49866b0302047c435bb500683066023100d26113abb9c9d5cd39571293be3e1db5c800f48fe48c6fe4048480813874b0a45ff5d1ae1ecc72050cf36c4ff9aca9f2023100a12e8233530e5d41ebfb9e5851c40d924c977f894ad09d6a9ce8f8b228aad821414a3fbcdb83de837be646e0263fb8180302047c435bb500663064023050292451d6416620a1c9d3e33f5b46dd0de2367e2dd7d5cc80642e2edf768522a486b1a6a2c06a0635554ec70481429602300e266414cd422349e04622ae3f81027c4edf95eed2c307e5c9aea238326cfc1e2386d3bb45be90b3576ff69a689964c50302047c435bb50066306402304f1860ad38647d7eb0c64e3af3a9e637d736a4248753b068eb0a72ba47915b97210be76a358648cc5c9b083af459e7bd0230586f651f75c74aeea11399aa005c6938a88935dc3bee5f6082cfb5c87d9b4bd2512525994861b3339ddf4d491b8c93c30302047c435bb500673065023100a3114e97a2e1a80a8070fbd80a43d67a67ff11f0379a632045caa24a722ad079d537e2a260591f518b76eff14f2d5a2a02304d2dd5ce91f0fba6bbdf99f2ef89d4c70e32389c8462178f6e364d233bbe4445034b05b5257fbf73b73c6dfb5d51929c0302047c435bb500663064023039d8ccb992bac6d5d8b440f0674b24033ee19df70712bd49d682edf16f72e65c07be26f03b3b701b4dfd53f2142046a8023030525709b6aa97dc3aee1105c54f788e9fd53c9713386ba4f9c9cb2783f6bfc8f15fd0044f064ed76e67e07acfe6e0650302047c435bb500683066023100e8739f2acb85690528d8412c25ac5dedbf4a0cab69a1709ebffa9fb86f1be444c8b7194e592d2354b5c0a5606e9b48d8023100fd8ea324e07098c691a813a1af5d19c66de28c67fcd30eea244daeddaf8a8f65d8eced1495eaa308f7cc522e268fe43c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230431f6e82c6105e86ea15838f7c5e02aba4bb4f4554e3307ebfde8beb5e8152c9c475119286b9a9932274b240f2896b7302301ff747c8b8087e0df52cbd0bdb8432fb5f02be7dcd1da1ea0c378eb4c01683d9a8f8b786f7a2c6a5043639e03473e5ba0302047c435bb500683066023100efba0e88b26a8557249e8bd439657ac85d6710f417245632101834e5ed38d2053cb0ea0c2c92c0cbeed95d3f3a13239e023100c2cd027b30cc062c9b33d0fead8bfb78dcf1c857521e0a33d337423fb9c9e5919cfc6bb71febaa1e593c59dc0b2aba820302047c435bb50066306402304583c5287ed7b6c0c264b68a57f68d184130649dbd1bfd6af6dfc16d58d5b64dbdad106971226d6a8ceff714cf60fe4e02302e874d22170abc708a4bba5947ae97c5da13a1427dffcc3d3702607d10d2d8708fb148ca375dee7310d5e4a8f31dc1e10302047c435bb50067306502310097e334b7950a031db22e5c97c62da78cd994a9262413453fd322cbcec5fce230962dccdec27f4d2dcb4d537d6e1cbab102304e980c537fbe2e1209956226df4b6d11a314a7283305e268b56238c9cc22975384c5d409e5f0052dfceaf0c609a575f40302047c435bb500673065023006ec3db22df4fb2ea8210cdeda0914686e959ce6e7df2983a665183596703b087ddd1b95cb14d022046abad23801c1210231008f26d5007b5d637fa06051f8722f4bb7ff16bedfef4aadc29dfcc78b0a7f15d603e5b1c415a7c61cc39cd061d1a41be20302047c435bb500663064023003fc731ba371197b1429ca35f96715cb397740aca6e2e96dd87a7c1ee5bcca566c7a6759b2df82ba4efe7a8b4f853fe502306e93e83201f334def05d8299a5743f49ed7812f769abab8742301f7fad84062b53452e006640e0877ae5f80ae558d96f0302047c435bb5006630640230558996284c093455b07e8de2937ab7db381cb8ae213179d70b2ae923abb0de87320c28819190c68d641ec77a01a1091902302d1cbb9c0b7bcd82de086d389ef69546a9e790d06278d02d43be382f90e7aed7d5db5c9b86e6435a11480ccd7f7df38a0302047c435bb500663064023067ad738f7af89a7d2ebdfe4aab71ac94b62e1e1f94af4d9aca234277bc9456a4dee086a997fb4e1d895bb3ddd564172b023067170bee79eeb38dd21b4d5224b652caf20e526b0b649e62301d65937ea582b2e87839647bbca2a2e13599fc7b7c5f270302047c435bb50067306502305f6566d86244469acf7af49cc75db5a85bf677606d440adf854fcb3245d518e9446520bdefa3ddf570fc9b5fbe57b142023100df95244d5aad3388035f59811038365fd90612af7c4bcaa720cb4c8565384974cd1d11d3de6b0642fdee2809518f79d20302047c435bb500673065023100a8cea8132f0af4efb0b212de9bde33a3e10ca59749b906aaa2e6817557db259cfe561b317f3c34f51c70867390536c1702300d7c452afac8acecb9c5266c7d1e35c77ea0e501ef863c605f45f37320c72034179375242018ca95422cf1beab8849130302047c435bb5006630640230588eedabb80cf40238fcec62341d846394ea7fd5bed6253ebc077125f72489abf248c79d7c4317c713d63d78f9baebf0023006eea4342e03db4571ee5e6b2be19027f8a5161f3cc5ba4bf801929a4b5f9d64724928a6aa147f80d433cec123a445e20302047c435bb500683066023100cbe22261b8ed1912cc870d45f171ad7ab466ed270e89182aa1b57f81bcd4000bc58cbd457e2f4148a520371e8eef81c1023100be7f11f5581ecdc0473d9558a60bc92623cc25047b8ddd8c89184f04ac76cad07a35b2cbbddc6b37d60d7a0bad954fe10302047c435bb500673065023100fdc7d4cc206a613d569c5bfce623c45fa9e670a616976fde3c2fea07365d287f6ba6d860180846c44c2e3158799875fe0230234f2b0de04c95e54bcd0aa839962d90b2245117d7230037db7fb4702a136d58b79727e2fbd776fb90b0888b5c405f910302047c435bb50067306502301dffb5f63e8be4a2bb986abb1078e6f8103903bd164a619627b39033a3934bdd838b93972afc2ee52a11ac1bbe9cb1310231008ced9fe2aa0047615adb15a4d4d58b846a04aef474f267372c1469073c2291504213078bd0969bc5c5bd895828b3ad3a0302047c435bb500683066023100ccf3b321a3cd0c60ab9c3d514d0d84578c9a303db291a11338dd24f42e2e80661427261f39631258aa6283b84f2564c4023100a5ddd65e07c70171882cc9136bd687daf6c8a0e74524957602b36f263cd8482ece5521998e3834a03d6607d93a8425080302047c435bb50067306502301685d9fa0b4e0ebdef7f5fff3799f0cf1eeb196efbc57d75ff6b8c479ab74ef1615e9ee22209f2e8d4903c77259e86fa023100d203a0663aac443d281855dbf1f70b41a1aea9c368f1f1c9496342e685b6ab3ea132a0d454da52da5736a0344ee94cfc0302047c435bb500683066023100b400819c86305eebeb84ee9c61534b91e8d50e42b00434697682a9091178efa524abd9e1b7330dfb08e3cf6a62f788a6023100d3f253373169a8a25cb52b7a3b49c34be868bdb49f3b5ecb5e112f7c03cc219e3134995f7eeb0cb7cef21b65fe915e880302047c435bb50066306402307b9f3d381283fed0ef37b275ade15b775814cd77e56cdf71afc02dc2bb256cbb14633d607a3a44335abb4a0c4aedb7b202301f2cebd8f387b1e523a0ffbb6b31d3033485041a27973a93c1c282e09de858065372c449847261b899fd4ec427b5f22f0302047c435bb500673065023100f63e66b7e03026641da50edb52398e7e1f09349cf0958db3d64b8fa19d24a70fb66fcdf66bfcb376df73aa5bfc446dfa0230586d39c230d908b655a95c5439cc98fd80d1f8b034b40f378e3f845c7a26cc3d376259627fd5608cbef9cd1bc7f2be050302047c435bb500673065023100e08274011dac6dc6162243c9085ac6ad35484f1ed4a822ddaee471884bf50de90259644b7a1c170bddc63e1f55d2e744023058ade176aa1635b74ee9ac0135a1a2bde0657e38b2b2de16f49afcb472de13f60bcfa528850be35e1ab8eeeec016d9860302047c435bb50067306502310080ee56453a361e169fdedbefb6327297ab09fff1cc874859c4e114bbcc9aa21c5a0e767c248826186f57f577b532b74a02305f130e728153fe717fa50df38d08556d562db77da2b95b425ffc95987267cac3a60f0d081e7dabbe0653a5bca36e9a150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306cc901b93f83989625c96254a8311fa52e584f8cd2e12feb0380ff6e3c2eec94301e46acd7c4b7e98c2660841373c1ed02306b93de680c219dac1f16d4438131d791902a2ca8ce9e0b1840f80cd129f481fd419fac6210ae27f72c28828e35f099220302047c435bb500673065023100bf14f66d2b2563a52aa1419c240527a9957c95c79ec0d135247f85cb8300412bf6ec6b3c2304d005a20b9dca4cc6172902307b9d971ebb53d4abedb987ebbc2ea648bf371c957670a6c0cb5611079bd4ef07b3e7748844e68eaeb954bb856829d6770302047c435bb50067306502307bcf4554782881349d70a6c75fe20d27170162bd0ea8835cfdcb0382b546deb82da84082168620c8e8d9a65628b8aa47023100cc27237baa581344d24069deb19721590d5e2e321b1f9c43d56b88314e28a6bbb0b23afd232d3d990aa4abfa3e949b580302047c435bb50067306502302ee88ccda30707c7418e4a0abd0033ce873c71a429b30d6aff6a6fb0121e6b3dde42489fcbd49d9a86770f951b2e37a5023100ecf281c60cad5241067d525f09378fab5ad79fc232e3a3d47e94028e917618f7bd4bbe78acc410afc31111b42337cab40302047c435bb5006830660231009885e2acce1fd48ba5ce9c7eecc4c1f0fd1849f48291f3e2748cbf25723b1b6f6ee8f4312ee30d807029bac8662918a1023100da381260f69215ef71c7c15a922c176dbfa70f78d87f913289f1eb437fd14c75c0d9a9e279e3cdaa78718fee4eba214d0302047c435bb500663064023009d582b5796f2b8f18f3498978060e60df9d1a7bf3195701e2b6a2c5273e8df8a302ba2f4b79486bae77a95ada84a08302303ed5c1b5ba62a9a00e3b9c1e858a8cb555d0932f7ecd824f740a94ce7386a54b99cca195d9061b4a513779ca2fff463f0302047c435bb500673065023100df525412360a0a894d8bb6e611cb4a77224306216d7094f1a701a80ba8f475eefaddfe966a3caec0228660bb9260626d023028e61cefb70921d835f9ee68449a1b97f755b5e0ce8165ac0b0cfa9a0907b2be55ca51541fcefd2de3d604f955e72d060302047c435bb500673065023016ef002124b144ca050d9ebd87ba476b30489e1f07ba2fde3bf69b291908ac861a32270707297de92d86f866bc660faf023100cfde7af45af8b683c202c7e8ec80edf329dfc72353d49d5399316ac6f7346ef5f49bbe1633d85025a8df1afde7302acb0302047c435bb500683066023100badb01519112edb9dd816a721e6781d2205b925361caefe39d0e0ad56ea7753dd00218b2961504784f1b2168cec5ff99023100e63bcc216e5f791062ef079ac2ad374f5550d0f5d8982689ebaf76e90ae3060b581ae43d4b88b5f9fa26ebaa8109e4480302047c435bb500663064023044b2c052e8901b8ebaa2c3fa7efb4a2d80b02f8c9b35f9f8dea7301290a10743ca479f56e47fea49099dbbe39d8b73c202304ea974200643e622851864cd5b98a59fc7572cb5aecced30b397f587ef8137ac1180da774061936e4020146e964d86c50302047c435bb50067306502301ddc5914817551ca903b5861b794b9e80a1c4752bb14d3c9848f206a5b26b69c152dab78a60c997633e6cb1b32c9bc2c023100f0cfc553f2cfe68f9656468320ab41cd51d9db616bf54faf1a59a691b8233aea5b947947bd8118dfdcf536f83fa5d4a00302047c435bb500673065023100e1248da52e50e7f7c8c1d6defce1e3a770384d210fe033c8634438d8f06f4c5c352d8cade3120af9c39db129eff4c18002305a4227278235dc60160651eb411657fac9a9141c35c0b28f0eb2ad6d797247a3df378d7b965fae6b442c5128e088b4cb0302047c435bb500683066023100901b850dfc3d97abcd8c7587e12a1677ff41f4011790cd69e178585276c47ceb8c72a05efd28085f87fc8ae77beb84bf023100ef6f968404aa5928ac8b7ba32977473f9a10c99e98d7cc5e0d7453f3983a5f8d0b993f9fb54309c94664c03d0ea2579e0302047c435bb50066306402300f8916fb6381ef9cb154fc8b55f581d01ad29a48cb4ec07d93ea6ffc159855e167dcd6c556a3ce0d4bc8c8ee4770af7e023004f5f6a7af2c86539c470f53c9661a37c9a0b14a38d6d47b8b3cf0988569f65f7543911a52c2852b385d70d9a1ccaf800302047c435bb500673065023100b92d6c39717147ee7452407fad628a8736e631a198d4885c685b9376e89aae83506ce4e8d95d802a693080223298d359023007f894b183f42721fa0d73440d06158062d533f61113eea654d57a85d3458683b8a7a1671ba54c6b831934ce962a35870302047c435bb50067306502305bc4311ea0ff5929b4f4ac116abaf1df90e11143ce62c4f62ac3a3e40707a90c5081da811e64d3b473acc34e1977448b023100c2105c67adc93cf3d2ec64e1ee9592e5c978d593d2c0db927d2324bd0009575a5278546f9fb9149857f0ceba3620bcc00302047c435bb50066306402300947aad079602dae705a47d4dcf5253f43a4688bf96eb1c4936d5fd2581bf82dc17056a9074072b1615b11ff77b964f3023063c36b3db58715ef79c3b2241028db223ed35669c7dfd0ad554344b68e1e3e3e9bb997b05278a91d9d0d4751135765520302047c435bb5006630640230558bb6b806bd209e4310e5d3abb1c0d48a150b2adeae3e3b94deb6a96d93c03c36791f90fb0c4c81d38c7135df958bbb02303ec9abe2b8c603c56cd6428706403dc34006c3eb417fd66c88f404ad364f0d92d81de0892576c8a1685f1369d594eb800302047c435bb500663064023020caf13095439c01e1ca55c1633f5c3aae93aff8dca4a12ed5503b43d6d328228c21513f7c5cf3e753f51aa5e9f68f6002301f3970d091a6c9e77cf8f87f89d3c7e7f15e24233ca7503b7a404bb516bec992c5fb982724483a0e4729ef9c73feec760302047c435bb50067306502300316bf0b158bc385ba1d63b70f2380aa254fbd7686eaa053d166bac1ad05f221ddbe35a6986996082343fa2d1370c439023100a873176150ad72ff92b1706a34bd31772b4d3e9939f990e5cf1c48ffc64cb9ccbde2022c2bb2752f348f5bf1e014c00e0302047c435bb50067306502300b09c3933300177b500cf0fbd0ec6d506dfa3f151d6604d926430cd10064281b9c4c0a9df43620f90ee1a7ec7af7aeec0231009a0b10aeb214a7489ca5c1669bf9f796a5d99e48fb21999586ea434ee3492c5bddc75f837bd0b2feaa961bf64199a5a10302047c435bb5006730650230532ea79625e9bce94012c7aad9add71e606075b79b1b3cd42893a8232f8353f442052efda04ff41405142afee8065977023100eac4fbe1dfe93b2b7cfe07229245f95a96d3dd20402aadd521bf7c0099bc26019dd6a5befb06fe26eac669a8b07020680302047c435bb500673065023100bfdf8787496819b51339c8ce32b4fd4c5274b5a33c99bb7898a8d6b44563464da8a614b1231705b9f135c1a00188bfe702300a65c06479ddc0376d1d9f4557cc08ee8fbbf53fb8d458f121753c06316eb7eb8d5486572327eee2243ea26695bc8cae0302047c435bb500663064023055dfcb8e3defaa5fec9e96af2df0309dd1f9527e4a3ea1e75105747dcdecf52ca9732548b1c721038121a7e2b29b720d0230227e82331d07dee75280bb846c8e476382c8da192ae5def6cf3a1c5f105b4f0188020b261de1e1046daf6c37b120adf60302047c435bb500683066023100b8126c1d48dde4f5d338905af77a5647d16aa318027243d49961c16133c4aabb51196e0fb9563d413c53392a88cefb120231009e205b42d3c1525845461ca03a09052523e326f6d26d839b083654549ab507e2f9c343471809b7c839fb1b78eddb146d0302047c435bb500673065023035c1294dd979b7f4a33e734d754bdedb2e06ba765e9661b70026e7daa0a413fbc0c0c89e842b215fce97a681e3cae310023100c752ec0ccc39f0361334a7ee0bb08b4a412409dc57e41baeeb43eedd5c701f0a06ad2a4b96a8b47abb639f84463837690302047c435bb5006630640230123901b8b1545d7084e8ccdc1a6d7dce656e7baf81b1935c191dd7c4a07f5f0534df495a22cea351f77c2dff0297be520230188bba1b9519666c6b22f925c1f5bb5113fe28a9a29a4853e3189dd5506d972161c811cb09b53c1959efa348b5fedb310302047c435bb500683066023100bea613bbe1a065716fab79b0c67302b0728fb5cc2af1daf68beb00d23a6ede42b6f52a7694938ef01d42f85163c89e2d023100887fdcbc65d9c7b6bcb157dbc77c46a1ab61f79a547d8c7d5923f2377723e199e06a16a68a964517ded8bcb95f1884f80302047c435bb500673065023100b122e84b11e9636f031beaab2c72297b689bbdeb45c8a08a5d9b5bb901cb3130053f26b31b263d9173a91c151db6136d023038190c2d0ec0cd150ea05da09514ea3a132b02987da84fef5bcff347be6163672991d681f92f337c73a736e212a87c920302047c435bb50067306502300a7c36c93b9dc9db047ea51975cb18cc381918e6ca62ad65b95ebce54ebd590160769782cb05d10f3502864cabff011e023100e67b0d704e907958d79d01714f12024952eae5641048ac1bd2a9d1ca6028f226bf200a624265dc257ce497cf2fbdde600302047c435bb50066306402300e14ed1622b0485650e949ef164a98efad0117f4193e322ba6167905f668bff505305de489ebe6c85028d7091874ddb8023046b2b5b5ed556053583bc20f4ee2ca1e4b6ca34e4b891395101d6c95ccdd360b94182f89794a2a7cf661fc3e281045590302047c435bb5006830660231009ed05ef46c0c08c1b8d264ba3828cba74f583f5f7d5b0ffaafab19d587ccaee435ef288cfa518cf04ed35557ee9a0dc802310085ebb7fd59233b4273b23cb1d7ebf941c4677a4e4bea30f82b85ee0c740aacf4eb41d9503ac0ffb0753f861872d43b010302047c435bb50067306502300cf3563ccd45670bc6592a752f4b268fcfb12e95578aacf990044a0e74979c5ae9aa0b37c7ecb4da73169eb2d0400357023100ecd3b3bc4bdcef79165a5fc4eb16fddec93fbf2a6796303989b30756a7fc922801a3979a8e222141162bdf93de84d7580302047c435bb50067306502305a06be89c0800e194e218bb8b03476b155f54a9ab207188096e7075dca1599a7ca30cdead5d6326477143df4a91abd3802310081c85b032642056c046c6679f3872ef71ce178515b962b9ba7aa2e17eafcba8268992ea09f19a959dba46875c6de568c0302047c435bb500663064023062b782bd7fefc0332ed82060de91704fddca9503b807d7e52bd0b9d6e851a8d51bb2d4813b4ea3d8879e8067aab799c002307fb4b0eb91f568866eaf70f43e7b81302de2abb74d6de6786d85c111573b65666ab3f168e554593d4777ac34e4a744700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c658a8d59b62adfbd378527bd25a6c9ea377a43a5d4b143dbf4a547d54247256b1daebd92527dd4339328e86936b2ad402300b8958f9a27f9c0981e9c21e8cbe817cc003da862bd2566fd579ce3548bc4aa89e2e9c9278b7838c7957fffdb48a3a720302047c435bb500683066023100b0a0196fde03ae145fb1a0d3b640defd3494dd7c279db6b83140a99c3450ac8d02eb0d54e9fa08396a3f615a98dc724002310092fdd92947658e52a6c72d8d90cb33627cbdf7879d347ecfb56cd3561da283060e7c2a774cd924369d2d91099142568b0302047c435bb500663064023054c5c590c851113c2e232b8efda8c943cdd9a3cc3a5aafa01d22f5a36a5d060bf55ec65ab90beb24e5d737558fcaef9a02307c51d13d35880122f142082c3250c80946c921b3eff2f25a20342767959ade13f0d7779ff767e0e9ca599b8d544278a90302047c435bb500673065023100ad404d3f86eec93daacc4d3af4aa1547966d8dfa7e8ba181af08026173aabcfe8ccf71322eb2d6a048c0e96a1d3f8cc202304179e756908b0c83290afbb507bd22922c430afb6016f027720f869167d32fcd97bf4bca937f93453500a2a95dfe00a00302047c435bb5006730650230250659a116c2f51a48d498376f233507cea32cbc1a215b212832b557f4510b88e79aa4e76d4ceecf2c6ab90a8abb49270231009530c664af43543bb999cffb13424ec78bbf3bd0fc862e587bb6412bd5d637fd73b94a51f7aafc0f73f11caceb44dbe90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023027915b2e129e20bdfb40a2de60e82c32637f4efc4e084e73fdaf0101e5b5658f4839bf6a6d2e3871fd329f2c183a3a00023100916594865b1487338afe5c9f568c81430737e40b1a69226663a76654b0e3bbb8b83a23c13009a99286b12bc8cb77c1120302047c435bb500683066023100d7b73f4f1708fce4048762578ced437f2533c22dbd545c43a1750b4311111efe626f96a1ebf152352954583afe0d370e023100bcef910df968486ab462a9d56aeb83c3ca30110cc19509853a2247365cceb28fffdacccbd6ea4d0ae7e833423c2a06c60302047c435bb5006630640230621684eedde9d70ee742c84e45896de415f3839428204edf57026082f54ac5a8a155e629306735c284aa8551500580f1023048c86beb47e6abc7e247a57f68797994467e5487b630cd4fc98e487db5a76cba8122fe0b987f14843782c60245a56fde0302047c435bb50067306502305748aad15bd7139f5e54d9f18f26ba40039d604c7a122d7a45b4a02c186b5fd62a6d2c46f2af5e5a957e1eeaafab9ca9023100c0585aea03caf4d558cea9c338e98bed53278654ddea20432866de5535e448548072afe09951bbe550c44eee13e5225b0302047c435bb500683066023100b4f2736d3ce1ab9a14e804f069bad50d14d7e7801aad2de690d71c65ae758c89cdf171106f520eeb41d528bbe9d6d125023100f03100ad80ced0d64faf2d3822e7d59f5a16e1842025093f61a948888e705ba166babbba7e21c30833b9a214967f59ba0302047c435bb500683066023100bb9d2843125802f18e7dc7b5916ec33e358f039a8523146ec2a1959acad0dade0b01ab0590525d9b7c5a6604e8ac5fd6023100aba60dec2298d0fef6caabf19aa7d186f975b9285345cb4a54db383442edcea9e44a8200a68b977488b95d6f5edec1050302047c435bb50068306602310096eed6f7a95cb97b9825151b368f966a0106c2742e0388a2fccdcdfb8e90351d47969de0a505155593365b6a53b47086023100e81260213e0a07b0e719f93ccf6d5abde5b2fa0464842ac9a0e7a84b478338d74a5b6f1b04e20efcd8079bcc944895110302047c435bb500673065023030067d07274bb45aee234908ae780803080e3384135b3ed7ae67fbd23430292e488e10a891cb3c3132540d6a434991ea023100a8b9bae6f94012c9ac9da16c5bdee2806b805b25046d7bc20eb492b024ce3144d1d8ddd88e47045784feb63d8abca5850302047c435bb500673065023043f967881c042fe3aeba7d4233c3666d7b0ce6d4fbd8508995d5307472e4a262c65f23a7f06a1818f670749cec960f2f023100ba7e684c38fc7c82d42f87698c5265a3c093cc7d16880cbc46a6b3f7a8069519119ad9e33ff5ba5e0f6f9020ce7b01cd0302047c435bb500663064023031a10ce714eba439272c2d751edf461445be8312d480306e732e522410fbbdd5e0f069c74f55cf52b2bd5d823a5dcfd302301c3b1aa7a6efd1b0a87bd332db5854dfb8206262fe061da3b0da29768792f8114fcc1bfe22fac8b3a157c117284ab0510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302d8676988185bdadf78f505c4221ce05eb03253c9b817999aace6bfbf760a846e4ff6a0863aa792c73f67a5c448388d1023100ea794e2312620bc33c27e3ce7dd9a4a7afc274f8a555c529d2abb78520130538e0d6f591077dce5be663ed8e0bcee5380302047c435bb500683066023100e0b97a2213b97eff3e39975a3155a51b149e2f0f585a9ac1b38966fb765136f85ba9974ccf63b745ab66a7a83c781f94023100cfaceca8b00f0bb79ec96935edca0dbe4e4383d0eec6d6e0cd6720cddf99cb010170bbcec688ff417a36118a4a5ab8570302047c435bb5006630640230500115594a540b309b2783e8080a12c0d1522d127e1b9596c2addaf26d4d021bf3defc01a59256989f091fcfa97203cb023032788ca891d750cf364254300eb5634fd965262461bbe5c5a6b38890baaddccc8c14c65f51c1f4a1119aee05471210c10302047c435bb500663064023053f270d5a2fa6dd5c7326162cdd7a17b21755eca543cfdb47f9c62b481acd997833d65f9dd87bada5c1aa23ac4cef0cd02302d10aad14cde79e18bbc4d47e6991e308257ccb58cb905ae3d5f5f349c628555f2139448b74e1da5caf724c746ae1fa40302047c435bb500663064023010ce1d80a7c7dd3742ded4ada077b2b22bc931bdacc98f194475ad632a0a3ddda10c70ecf23ed42c49c460496f0a165f02303fe5342808162c95a1d15056c136262fcde47cf3c17cdee0e20da01363db9f101150ca1a62884227d747f725b8b706a60302047c435bb500683066023100a5f1e2c00bfc915037a19097cfd74ddcb268b698f9e99b39b0a9f608eb8695bfc9801d11a37666dde8f18bb9f8fe3820023100e0e2bed42bba9ffd89d379e8334449d8886fcbd9df02b2cc60b75604190ed5ba2872582a483c78c793705d50029caf520302047c435bb5006730650230312ff4c3cbb5c008a695ecb916bd963eb7c0d868d64d31c9b8984ecd37938aa0c260fbc8671c96f725d2fd302bd9502c023100a1c8e06ca9dcf495ab6f171008b3d47861ec34998934de20a6176ce6347c5b73b6c5171418e64bb99b3cf4ca794293670302047c435bb50067306502307263dc9ca5addd0b93a09731c4bc9ade218368129d6c3e423c3dca14405a7dcced8ed50e7fd25dcfb1c435d29e20218b023100a961cf3885c14853805e6beadc021b6dc013ac8ed29808e5d4c70e34772eb0ccdd0757e0575daaaa97622cc478db91a10302047c435bb5006730650231009639afa4a1d3b48766a283c23b739532147d65d238f503a3a282f0eea8f6f8caeabf9c60d8fabfaab15ef45ffcb93e7302303a053af6d8ee7c3e089403db8b321dfbd0bc9feafb86aad69b1e4c492a64c1ec6f53568cbb47aeb8e55d40fba6ac407f0302047c435bb500673065023100d0bf45d7882ec43821fd0d1217819f3aeb17fa7f6d40d4b94b5724b4f1f2111c412ba52dd38133cac70cfc23c447f21c02307b88a267c54a93fd7c34ba4e711f937a4e2a231b767a8d1c65f13af8749773b2a07620e28621b16d44f5fbb52c42a3660302047c435bb50067306502301aaef88ad6c773de1b5929c1b06890e859c56ffb5ef2e39af7429755c3bf0780eee1ca85d67c0a212da8b3d0d45b0f76023100fcbb2a0d3a586d8793402cd18233485b6d915c21e1837d9fffeb801f6d3447fc314d97e911429c3b205cd77a568622ed0302047c435bb500673065023039c2545d5b795606d8fd18d3eb2edbffab612974fcc6b91aa0a28b39136f5edcc0232ffbc23515eb10527d81a352da58023100bcd23fa4235ddf774b02271ec91e6d08db2dd730db91febf575d18fe8278c8f420052e528869e40b9f32fb9b78fcbf230302047c435bb500683066023100ffe5060655bebfcdbc302ca8f3096d95129fa00305d0187c4b3b50c703fc8d751165b25ac0f9c442f295ae8227636ee1023100de1a95aecc7c63edf703e85d909f68e1d38e840e5f933169d338cc22d6ee60189be7605ba9d6fdcf46794382a98bb08d0302047c435bb500673065023100e3584f28d03c8e885ba8b7a78624b452430c3276248483cbb0d4709bb0a547c93432d7c71931087902d068f46a62488f02300645d78b7439928afdf5e77f564e8d2d3bad28d932cedceb19cf839d303265bb01626649f4383482239aa6c98761f2f30302047c435bb500673065023029ac2aae80ce80cc3f34f46bd1ea0fca414e7a85b4da6d73ae2a9885afe1458619bb182936fe25587c54bf5cdf4071ef023100bfced24e0b674bbffe7b9dac67b7ca56373395c9ad24021c996abd1308af96d79af23067924bad4d4eadadf8fad6aa400302047c435bb5006730650230457bf3933ab4d4162ced5bf4ff655dbb617bcdd3cc9551be82cf256c7312c1046cd1414b6eddc70f16ed7e1f4ef153f3023100ca5ddc72e8bf3cf6b50eb184b9dbc837fd0ac58d1a55a5481ce7f466bb85e519bac02d608d610b62a8ae7940c5f897440302047c435bb50067306502306e9a17c909fe915ee894bdd4dc72c833a4d7b334994afedc60be7a329525676d0f3328929f57b5ce95197b7c1891d434023100a255322250369057c035f0c261a7eca2c6bb8d85b206ad702892bf4f5c6cab1f565b4add56f62fc9eb54e8a9089b7cd40302047c435bb50068306602310081b9fa4703344c2985bef18324693d06d0059f13f02ef7a331964d17e60b9732261fa07ab52c9ee0843885881e32d4e0023100fe1ae9f0265a044a5c2898e4c5a48cc23afd86c2403fdd8552b6b1858c9df36a23ea5252cd884a698e0b142b92a24e410302047c435bb5006630640230722d11024c20c802b733f3b3532b1c192752a2c6b3a0b16641ab48cc0646b3de2c0287105a039415fcb5a52559bd98530230619512c285b222bc5dd52b2cebb9db04e2e3efd635d81a9939b432569e053629bd513567ed58b1d507807813ce8abdaa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a558aab0795caee6875c381708a2e9bf0caf2e6f99481946a5109151dda0c9d058e50aec62ba13f7c8ee1de48613d7c9023100dc139a11f70e7e7710499e50b15777b3c01076fe42335fda1307328e1124d8eeab9e43c0864629cf76d1f7101445e34d0302047c435bb500673065023100b829a1d8d68d95ed165ba093f6b469e464361cec08dbdd22bede82b8fe8b2dbd97bdbba902fc64b0f7b2bf24e46dc31302301908add3a4ebdc72658c6702c92e140f1d7e28aa2180f5090057f61789b58fae0a1d19aefee2ece3d412447e3ea57b260302047c435bb50066306402307a9383cd3e1f9a6646bfcb60d56cec7582b461713ff08d3ad75ff11461c4eda0c9799de309298debc5fe2323f7afc2da02306804372138e533710f82315b4b617aba7b18155e1e92a1bf26514ae532d1865f1ec3d1cfbd6f670588f5dc92af39007e0302047c435bb50067306502301f5347c05ca3ba9a1a79658a88cd6438f7ee988cc6d55a855c779c74882172c6dcbfb5c588f04bc8cfc67c93fa5a153f02310082fcee337561b19a497ab8acf1096fae5f8da6d40e09a133fac9530037b27f8105c88689d8403a325fec1fb1b47ecae40302047c435bb500683066023100da96aa09994470f357458cf59c04b280a282c73d423f7caa1d2e6190ebeaf01e554f0a4094c5680e505f840315cd5dc1023100f5b983468c640bc943e7b0d184e352f03f05ff17d9952e8fb5078b7c8aa754ed70df7d40ef51ad870d9a4265bd5cfff40302047c435bb5006730650231009815f8b149c8c790a24d2afac5fc8908ebdb3af8572bb4669044424fed321e92a786dc667f9329670f35f627f662dc6602307a84af30c2691753a0bfd6cd917284e00ff5c0b109441cd938824f3c120dd794dc4ab673802a0ecf2b1543d17b64641b0302047c435bb500673065023100d5229962c9052e89ff78551311cc7a0915ed123ee6284ce4cc1644e2443d3aa2c2101783bbf84d5cd3ef741c49e244b2023040ef63ae96c4e21ab7a64ee3cb236de4fcd484a17873b57e7cf858082ff7dbef05899a4145e5e4142104ca93f30fcbf50302047c435bb500683066023100dd97de3566067340ce116deb60f2bb2d8f30b0324d0b1e03102470537abfd132a305d0b445a5fcce82ba94c1bd5418ae02310085ae043eeef6151e508651d36aa4f71f343f317cfa56a64e8db6267bf7b5e78970f361d068720e98ee413cb83dcd13ad0302047c435bb500683066023100a76e49194f25b6689554ea7e37cfd4ef51db8b4db53662a925d40bbe76bd7f3e37c3576d2c60b01cd1bebb2c79535be30231009899b046af0b5718eb31e80b1ea09078a8a08786e7759d0ac2ed2ac04936b84fba9219e4540fbf45b5f6e002be3019910302047c435bb500673065023038bffe6aac3e984a2618e8d2d718b094a161022fdf717976f3123c951c09e4d61222615d342abc59600c70b17ef64695023100b12e0a9fc200b9dbf356b7682e65733075dad7eb309b1dc99210d3fc4f7b8c8ee5f4bdf36871248e9706ab7f5efefe4b0302047c435bb500673065023032d56df4e6c96ff34ac1f33e238ca0bf83c296206aaeccbfc5a0cc3be967e3ba4271e95eef2d2537c3d0f67dd9b16de0023100d54fcf41b8df213f2e8f9ae2d8196548ba47f7717060398b5de0fc52c6f1a62e77ea47ab81eb53a142e802f16b4cc9140302047c435bb500673065023039886ea4402af134125f907bb749aa751878b451bbcab9040b540a4c9eb26a5ea0dccee49271916441ff185474d06536023100e1d7e62af1d3ee3db24e32b38da31579b505d0ac9760cd1e062346df1d42e1f99a2c8b49b86e852039834154f0d9c2890302047c435bb50066306402300524f56c231854e59324133ca8fb9cf2c4d9f771dbeafac5feb650a89f6425667bc3615ef4c2d503ff5e4c69a892d1bf023008a3bece5d5ad92e1e22a0dce8d3060c705e94a1afd4abc2874212310e2c1d6d692284670d01cebbebfbc5a616b224c10302047c435bb50067306502305ab5517ee089dd9a786ce7dea30a50d721b737274a12a87f3dfc47e951cdd358c281596a3789206e67e76afa787dba00023100a2de528f5be9a8400e31b5a1f804d67ed9a7ea8ec4b71b480007e0784712bec5810e1ce7dba74ef6692cb5c940b4d4ad0302047c435bb500673065023100a8ee29d5f7ade60723cf6b135ac186d559d483787e90b852a423b648080b7e26df43f1bf814bc225b3d7c942ebb5017402300d75911d381489d9870218117a887c217d0fe8c92446c4ba19bc5e97ca5863739ee36a34adf422acb4204891277a13140302047c435bb500673065023100c8c56bfc334b9998a56a0a668f281ac2f96603ffb8e7d0c208d49aa35c63bcd8f785c5bbb8ab44f4935c87fd48d958790230050268b8cf61138fed679c2cdd793af9a5be2c2ac72fe62166d2a02a876a5b495a880f9c51b076a52d75f0fb1a8452070302047c435bb500673065023100ef4be609f576b79bbfc68a7907017eed434c499e808e0c57f82a1bed85832f76c7bc2402ff75ff51ab77cbb981dc23e5023002dbb668ffa36229c3ede3c1a114d8d106f7c7d79e9a9743153d779d68efee784c97471c059d4c3cda3ca13cc207273e0302047c435bb5006730650230197b2ad937ec9dbaadf6049e10ff54e8a5cf407a76f54fa3a9bd6ab89da74ebd4dde1f4bee6bc462fe199b7eb2519c96023100ff7a9de60b6808abbbbdc1f74448cee701eb7a4eb000f95087965babcc95fd4d202578cec0d8865cf18287c7b9809bd80302047c435bb500673065023100f29d93c7bde591073392dd8f826cc45e4f7fbd55a24e35d339619d15f7d1aa5cb587ea4c0c341b01ef95ececcedac4de02306df74baa9688b7f34e59550b11a120238b73da8f2a75b56d12cedd65022d9c6d5298d89005ae0a19429e794aa119d6970302047c435bb500683066023100d9e0522d08f0b2505c874d19982df57158c33652728db2eaf958ed551162a6af3e7f461064956c81a9869b5d2467179f023100e781281054bbf2b1a371c9616ad2815235e011493bf6d1b04681bfc9849819c6a75877dffacb63cb5b16c466419748930302047c435bb500683066023100b33620cb0c6d1d0c797483c9ef1dfa4179521e9a5c00f54250ea7ef79311e1af370a9a07f7d3e183522ae81032b0de8e0231009dcba05b7e911a8c006497a27ecc0f9cb28176128250849bfc049ecda0f27102224b01298d0753902a31bd4ce8658d670302047c435bb5006730650230242a26e521f5459188e739877edc48c1c2867937f563d5cda10f91d1300f5754c3a6375d18ef1e44d1c66209b9e2aeb7023100fca671cf34c7070e2c3a9d2c52506aa5f858d2a248310f44d2136e0ac7e37b14e7061a9ae9e07003664febe11803d9c80302047c435bb500683066023100f66db76923d58a60f1c7ec0929028776c2facd746148621dffe19a9d8d7df3168498acc5bca3d454817fd3b7fedd2989023100ab3847c2e82050709ebaeb1dec867f8a018adea70089487502b01b409b49c3241b91244e89a3032ea3de80f0df88a5940302047c435bb500673065023100abfe6112c210ef3e425d18fb4f919aec1064a43da13967eab96de9b156a39becc21953813aaefdaf7981254ec39f040e02307b85bfea584592d344688fb79ef0a50c11572f2a8637d08cbde99d70f467cef82005948b7cb23c1da41097ef74882b5c0302047c435bb50068306602310096aa7accdb075bef355a859a61269ffd3222952b9b8fb664bef0d68db688d2504145b29a6b761caafe63df229be0f8d9023100f7c9a059afebd4895111e71fb6dabb8d8cfd34b3c73df0c8a967fe0feb0a40a9791a7bc6aaaf755e7b8b7504d0eb82ca0302047c435bb500683066023100aec0998cbda5982ef7b605f9d3a6f65001172b8526100469010a283e7060d160519b25392d0fd9cf87e6ca6e3fc58dc1023100eecaf898521d17a14ee7c2bd9e607a1690bdf42d7e8e7e875bc4721db67c0235ac8642d172185d5dbf167a7b34ba3aef0302047c435bb50066306402306fb61572708f4da813fe94e6ba16ad30e2d548a88726a8ed6889dff2429985eb2891dd3933dfb72703b3a06afb33423802300f28391dd513827838be272012d12f287e2782cef94ea9592ec619fbcebb62497a148cc8e95e58ac222f13ef0be13aad0302047c435bb5006630640230706392624576fec81288c7b055a7b5187312cf53264bbcbc72b088af6e8524976228cb731a49b70deaa37d9182d528af0230060bcf97f2ff82ae1474b763603a9caabdbb5b60310c62841fd81ef89ff555b3c8dd08abd1f25a1890482faee761174f0302047c435bb5006730650231008b9927531edaf9efd302f73c9d1a1c39532a69039a7d939a0fd8a60b3fdb9b249950c2e7b998ca03362f5dfccfb8f95d02300707587f138735de060bd8c3fff34bcc1791a59857df5e348500e3f76fd8e45906697494aede2580c37e36d896beab940302047c435bb50067306502310099b4bf30946434da1ca7c7eab8146fcc9efc694ea31b4de5a057d9df694765b189822e948dd8ed0d29e31d6403c663a002301c6153129cb32ea66ac350305c2b9f22a1145dc12d4a663cf946c6ad6e2e1ecfda6347de97780ec8ebb7a7c8db450ea80302047c435bb500683066023100d6aa9663a14c6170f98dcfd7846aea3a7cd54984835f606602fa7b8a597cf986864efd28d2d40e0fd4b556d12efd842d0231009c9f7b84e1fc9147dda0e7699d1ab4b5f2b2095418666d0d11cfa78de9ad7719b143ef784b6614ec23d1e6f732c10f570302047c435bb5006730650230227f654559064523ef717d509788f6e7f7c7bb27eb8fb1d1131a468061b94dfb925fea4e07bc0865d5458e7233e33f23023100c0a63108cd92d9b0fe3af5cd1eb9f3f319617a10d7fac2600ca2ee594b6a348574e2e60ec1f021a10e2f70b626be3ad80302047c435bb500673065023100f79a1cc7dde96e3b41a91d133da09f19999554605e072660e1e7d8b299a39e9d8e69a5a44263b8629cc1ebe5b89a740802306a6d85e1676c6ecebdbedfb78419055d38e0e48c2eb8ae505ee59d625a30e785e473eced8476cd2322126c3d73b0554f0302047c435bb500673065023100d23eacd147e00a0573cc294c474045dcd70d57463647fe8633e6769dd6e0e146c545fd1849bd5aa159874d5181a21aa202306ea4ed9f8c9246afc1678c7693e8b90b3e95d21a31a858dbd8dbdeaf16a1ec45bdf276b2579c36105c54351367d0c6950302047c435bb50066306402306e0a0a6236dfaba2c2c56332039b53799293a55d59d65b136906a74b436f95e3fb69a73bd95111b2fccd4f02b2c65eff023067d74a43e38832b80e9ba13563774d97373acd12c707783c5ba2a5ae0663197b416c278ed70fcf0cd4a1719bfd6d0bea0302047c435bb5006830660231008ad1c6a3895d5817179406baf50cd6d7d53bedd6d4866f64574ab84fa972cc7e6049e6ed2f27a1035bde2dde5f70aea5023100dbe3d87c478728efe6a5ec777e6043dcd110a2838505308a8e8ac93dd59602f1604acb7a429480719ab2e26ed1dac5d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008fa4b53bc11fd403e098b4b99e3a8fc40f941239619c9390833ea749ae9fc7dfd4a6160a957a2eef04180906500e0722023100c3275ef8cac22c13370df24f0e041425dc909b6f641816506f2b610506cb02a48d2b8d9f3aee2f1e544230df05b3872f0302047c435bb5006830660231008b8ffe623131c750188f4288fb6ff9b37e66258911e677c1262bbfff6160af6468c1b92fe27a588d182b3666e50c6a35023100d04555053c42b2f46eed4cbdd9c79861d06b8a01392010045afe08d50933462d21efc00155f6dcee893c79ad289180ea0302047c435bb500673065023100ce6f73dc83ce9d0a68b2a2fa769e49815555d89a98d7b300765da829e6a06b603d99c4a6003c1b591b19a2fe3f72c7950230560cc3c973bfd31534ee1576fa34a9aef9f1478ffd67e228bd8063c4eb5f666f05f1a3bc813f6706e1b0c3f1f2776dce0302047c435bb50066306402304a10ca92c468bf3bbcb6aba1099fe8606dcdbc3bb1ded22946945add025f62062bf34e4fd7eb578a2ac41fd2be15bb4102301d2365ee97e3d43f98093e4a7b61b6ac66fb0946ebb232582b941269310b96174b0a3f9fc5342a296c53c8c1387b07f10302047c435bb500683066023100c39e0ac301e093f42478069b85755de8c22c0cb7482fcd4e3fe639b164e3272e795efb78c2ba2a6a59ba697406a111ab0231008ac49137e85e00a5c71c618021a5db3429d2050b42fb53ba07932ba10daf6027db466707cb34631a5488c95bcd1f47b70302047c435bb50066306402305463581f37171b25da1b5ec58c36379e274e2f6f104915a99bae1148dcc47737420cf16f797f2c747b4a7ddf585fe7b2023071c303164f933a842c79d7326402bdf6bb6c56f95157dcbeedc38ae4094620abaece666d3d0d94590050cac7e2c66b650302047c435bb500683066023100888f44839684a3b2daae059eaf87c5dffe9453e2c23027e12f0ac4d821614c4ced492e64cd183c8f09ec31804ba33b30023100fe6af63e4c1189f97bc075ce02fca79ad5a35e5d9dc110f83450fb0abcc6e29cd02e0def085367936750dc7bd8460e9d0302047c435bb50066306402306eea5c7cc2154fe717717a8458a8d442db04651e88d2b396000ab79dc4f50d32e87aff458977120506febad0817ff099023031d5bd631e3e7c8c295d08ab50cb4d0f891810fe33bdf72d7a82af2d9071e7278f301556589fdaba7b2b0d78ca6d30900302047c435bb500673065023056c5fda7ddccbc3409ae759c61102174148db5c5c2ecf445e72cf1f1acc57567b280118650a4ae6f9585ac35b68af467023100e1f9dac20ca5d2052257abfa4664f37318ba8852349e779cd7588924d355b8947f32f5d5a312a3c140939a7f7a94d3550302047c435bb500673065023069b1c28e97ca801978e109486adbcbb5107819d82f53f75efdde3f1042756b1e73cd7753a00f3474ca65157a1b172c60023100e175c382b82638d33335253d0e240cb2889f9c6750fe35f6cd83505d3307df2b0cade52fcff76b3cffcfcbc5cd927aee0302047c435bb5006830660231008c60f11316191826e84bc4346c2cfbbd6fadbf697fcdf36efe68ff4be4f1a5367aa7367df98405a8466a78ade0ed24b202310081fd58e1866513c339f0036bdedd190453d0d5321d139850f7a4283d71891d8be8757c85b5a979242f9a67b9b656ccb50302047c435bb50066306402306a734ec4bbb0ab893d77a6575f73e622b61c8be53f3ecb59b8c6c3082a4629f8b9ec55cfc03c56ffca3a18faefaec25002300635e7a210110cf0a0b25277e5b320f599f4fb4c2942d253f54d870d63a7408a7e37af625a67c6c683008544b17533f10302047c435bb500673065023071ea29d3a3f018af2290b9defb2a04b885958c87d031cab7493f30833c99c268c503bf3aa0830566fab573010d7b1381023100ace92e05567334b098425d7e8d8ecfd797038f65ca3b894468690a540477829c7f74c2c5ab680cb0cb3692f2d707dbc60302047c435bb50066306402300bc1c10362ed4f8db2541d64ab287f64f48159f875cd5b311a778c67700183211c0f295b2da2112d1d428c20e8610df102300b828f0bf0e2317eb70e33422d7f49e74db1a90f4c215d66ad36343dbfdfcbffe6e690dbc0f1646cbb65f618f64438090302047c435bb500673065023100ea66b30ba976b70a9b38738abb0dd489552c82804e113a67fb9b17a0ff1a2077fdceee06a2acf40143326e30341b21f0023004c39aa47e23d83914bf5f79bfb369e7134183534b4f7ba9bfbd498986727a55d64fcdc6a3a4eb3a9e10ab4768fcff360302047c435bb500663064023036b253bf3624c9491554833d9eab63ea4893e225672eeec1f0b38593490e9403509e0417d25622480c1474f046fe5bbd02305552efc2ca6928f483f0e46d65851546a17fb8ee4be6cee9550a8441ae5411b206d6ab5d9f64d60fd36cc587bd367d980302047c435bb50067306502310083555303cca1e5148be2dce4591cdd5e1465c9dbad10a7db1c2126adafdb55ee8a636d2b0d84786279a7be5e6dc86a5c02307512d5b5520af2926ae21d3003d631c3e8729e2c91aabd0e57f71520649f4d39f2b7bfa35b34fd2e019bcb17da7e39010302047c435bb500673065023100c9935ea17cbf650c4efbafb31861641633c5b09a2c29b6694ba39b22ff8626ee9062cf459a0fac93ea6e192880e90883023038d2f57d5397d4f4e63a2bd3fcbfdf64ce976214f9cf830eedc148faf32a67659d5c19e8679bf83fb1814c3ee3ad6ac00302047c435bb5006630640230140670800f6e555931a6d39cf2e28398036d99dff00b9b97c5c150681fdc96417d5038d77202ec69aec65182a5a8609002304176a3450448a6db96cd4ce7e6264c271d0ae024c4bbce8116cfe1dac463f066c4a69b6e342fce558bf22af8bf2792de0302047c435bb5006630640230017153dd20dd411b83a6026578c7dcde94a42c351f3e126f9856c14d2a0f8984c4a7f35bcdd2f6c78c10533731d6e76302303537fce1298f7cac7b85cc7396124a3755beca7897688e8c6bf007fed81669db3b5ee2f3693af2eec4020b99ef50f1ab0302047c435bb50066306402302b57d49dd87c6a24bd555e5a724672a97ede03a1c83d97ff2b9fc132024b8d86bc3b5122b1c40356ec52cd5c5a51437a023004b49feffd420bee9e2b518f7278b792fe92169aee4e0248fe75e630ebaf590d07cfaa9452e3a8ef03f2051d91f471990302047c435bb5006730650231008ec15fbbab98f9d1bbee5d9ea438cf79d8bb87b244d8da33f87851cd3a9b9e00a31922863a9f393fdbfc0f19cb85db6b0230214b699444a9cc7695608ddc295e491f8dc119ee169feef2d1574d85539a6fa399608d6eca32f07b5905a1d91c5966f10302047c435bb500663064023037774721686c46e67287f921cc3d2b45fa00fd4102467e5648e765e56ab9e9edaa61f4ef93f5e49d1052d4296cf1adc8023003e37f079a79e62258250977ab8133a50b863218c8c0a7f1639b0187460a34042db993f125ceac3b10637d4365abeb5f0302047c435bb500673065023100c3d8b79a105931cca64a91cfc60f616bae747029bec1ef7ce70d96f6323143a4b4609aafd98a6070ff44f6a9517d084d02303f89eeee0d0c886072337a899108137bce4e74572f26add0d2efcada766dd49e1addcdd26762f05058cba505ecf987e90302047c435bb500673065023100b0b6b8228bd3f00e99efff5e58ff729632e73a71bfe39f1214343346570da82aac7a2d232c8720d910f69810c0ee8da70230500c5fe9392939645b6dd9d77519c4d70c875138c3329713542e94be0a98d727215a19a91b20a583a431571ad42952800302047c435bb50066306402303c44bd673a16b7d5e6d90d27d8f4b56cda44e090287501fb75c10a9de91983ab761aa9de5e50255fed5627527348818c02307c6a357aa8265d35a971998a5a07013fa13d4747407d453e76463477452bda57d0c38208ba564d330928a199e3f71c5d0302047c435bb500683066023100e917084167af9517ba79e882830f8e8747dd06a9307ef39cc821871f77910161472ca96bc7b932f5ce6755e564690e0102310083e5f9e91fcaac8c94e9deb6c3556bb4b641d780a2fa3bcff2e89010a0619b13c1dfec7f77673110a32444ba4478de500302047c435bb50066306402305aea3910e7d3156f48a4cff0e3d7a2b744f43846686396f6668a7710fa6c874f22a84a642cf94c93e59897703c593e290230047081bfc9792f752909e025586efe9f7026e9cf61d70347681a80dedcc6392f24f804d7cb5990f669b2558452c228090302047c435bb500673065023100d5a8eb46ff932202e3eff18cd68e00f2f889e5316640976547f9555416406ef2b6db787c6948b80fed094922aa6c6b92023076658502974a3d132848dd49010274d8d552175ef7968c141bdcaf7f862b33a086014c59e3930948824dbe25bb4c4bd70302047c435bb500673065023100ebb99893d07d6a4f0bb9183435800af013733fd8a81ceb1db91c060d71b45325713ebd4b68d399ff8806310531c1ee100230739cb17b57eeb753eaa3dec43e86827ed652b4b6b5c88fa9ad874d8d2c085cfd4b7fd17f80a3bb937bd8d0050387f47c0302047c435bb5006830660231008c73a31c4aaabf8943352ab88b0ae331389b1d55fc7090a9e73ceba390fc4b1b794681bf0b7aaa713f47285824b0ed97023100b3fbbe5a23c2d305b1a7bf44fb2a132f95190d303168950616bafe361d84f8b3deb27fa9d3704bdf36a01da8584cc4350302047c435bb50067306502304f388d17f7f87a0544efde2b2de3e99468ea1a9955d8fc01f87098557836c034e0c4b175441e80f15ef555a0dc6d479f023100dec7ff9b88da74be7be39d6c38f119ad9ebdef9107e62de64451aa0700c02909609165c997cf6f9d40bc2475feb72ab20302047c435bb500683066023100a2c084f5cf4b982ec33a47128b7ea78cd746ad563d713e144c7231de26f563c33e783e6a2da5da8363c003f40948f1e30231008f95fe80694f1189160194085e70c2e6036f743ef214bbe031f1923f11c71c3b6a24c00b7e4e72862387f446b74ae9cf0302047c435bb500673065023100a8acbc0bd81046507f8488e4c446efa74b956906e1dff57239f4291808c64291fecedb0ab81bb8816a17bbbb75e2ef880230036245d9c63790a0f4a0c81720534893db511c66dcc69f7fc51838cc6039c40e62ef2163debd886f9777305fce6d376f0302047c435bb50066306402305b784b08597484c120fc08c34956e8909ccd742eada5eb4f0f532bc6a1ac8e2e55377b2c19f970688e67b1524690e73b0230671f5cf3f1c163f20cf425614072ebf769408462ae1eeca67bdf3a39dd1f19c4b050c20dee827efb08cfc34fe44335890302047c435bb50067306502301ea03a6b3743166fad9a8bbe3b2f3b0b2d05a90fdf06da3c41f702e25ac4f7e31fc7ccf18e46770e230f7975f9dea4b5023100b5a493b58b126053ebb68fa7125e142c93daa4a7b55df4863a5997592707c7dd9d657dfc2f2b505086d4499599892e1f0302047c435bb50066306402307b9067f3d93687e503a95d55fa1cccb5bbe3234ea799e9b450e55e16b41712c8c684124785d13db162e14c608cc18a55023003df44d367763fc803d47aacc942b1372e3eab1a391b0fe8f4340f1621d5a527d1436e27c716c16b0ea905acee26f44d0302047c435bb500673065023044bda9d0e0cec3a9b8c9bf130eab8b6bba96e9f729f3f62c2af47d7f325452a21f7604b9195f0160ba77a4a28f91253a023100d4ffe4098d51681295358f26ad9f38ee9031900f8fa99d3a6ad317037f142d571a68f1a411959bf505615334371071b90302047c435bb500663064023003272b00dd662444d75c4eb7f76ebfb30405643e9f2a4396d55abb6ac0d23e963b184704a44d675b0c51797cad53797602305eac0ceca21fa043dce0c8637aa3549be951f9bbc33a6246c433acd6ad668c83006c7cad0f290e25c8b0f79d14f86aa60302047c435bb50066306402305683ae57a456e58123223976ef920c87c5f7cd6e29e70b4000255177aa1f97b7d5300f1ff6b74d6b09793af3dae3db0002306fe21e6cd41c38d9a905907a0a0a3f2654bc6b1036bfa399909e617ae0bcaac6f77fbe618470fc891095bc829ce7fae90302047c435bb500663064023028d9b644981f83368563764387b150c5cf0743472aafc9872bf22976cb380606611bee7d9b1f177bd9e160c83cfbf4b10230101f83bf26b3915f4b1c958536f6ed17206f9f7edcbd16e125d5206076670e493591cf361839a18248a2381b46e65eb70302047c435bb50066306402300598dc0f93c4e3d3430430470574b6bc208203d4d716571980995870b5dc2e91c4bda212bf1b0bd6ca6cdc3acdf29f4f023023f25894d7fbf497a2e379d2c208c7430154ad7c1411aaba374e3e6a3cbd0c14ee112e782dd189632f08296c1c55cc570302047c435bb50067306502302e614ff6f9d00ff7c0454daf95992b4726cdca145575b8a6dd19f6369cb6dda34d28e397d5c10881252a4fff9fe8fbc8023100c1722af79c753631e9038b1e7e929246a5a639145e3956e3212bd0f74ce5786498a6083858b7d9393fa771c9fcd959650302047c435bb500673065023040798627fee73075c4fdfe2d1e697b4db73c7271abd61a5c8b5489fa9d34f81e4668fff0e73ba3e7761017ba5b79711d023100d7f677c3ef3ddebadbeb816ad385fc9e33bc9d2c1575cb5646045b24cf637a64b90de7cdd34c549bc187d5836cb88bbf0302047c435bb500673065023100aa12f917b5223c6aad93e596c6ec62d38c86852cb7241d451c06da31f68b669d0dc9aaf2e3c96270bfac358c9e52f429023041f75a2cba3ea2550d662b9e7d9bb33fd49e5c541c0e9d257ee78ebcf0060f81fe02a21d26bda5cbeb99813ed9e734fa0302047c435bb50066306402307c30e92de45023d8e01846b23c69b26ea5e97fcab82bcbf2f34d68970fa6d67a0c6019ac5c7a4857fb8251967f018f6b02306f3b37159eaef5e86ca7462ca970c52bf280b5ae02c61f1821e5dd3431fefdd42beb8c6ddb46664f8908df1d05e8fec10302047c435bb50066306402301b2079b504b8e2bb6eedd1816d810fb2d6edba0f728570c19f11c76024f64528f8c33b50dc555a5d6b7ece5023ffd2db0230328390ad1dad7d1b43b07613cb067c9af7e907541c0788d831b8f08aa0827b450b5adc5a0258297cfbb17337ddcfe7760302047c435bb5006830660231008d3e2115fcaab5e39a9e1ab950eb7f336823b7e5b1789f2f746cc119ddc34681cceba4ad40748fb7df053090cbd568e2023100dd777a5fe69f5062c1ff2a5ce55a145838005172ed645b88580ce9445312b47d21e4e486a43a1949f9f614044b251e8d0302047c435bb500673065023046b5d1efc608d6c6f0b8cd196434cbaa2a47c5004614282269bcbd2b35855ff18e294534654e18c27e352001e96e9a8c023100eb13a07986eb502e3c16dd3519b605a733312b1da4ab9fffd70448affd15e932a9b4352bc9025022b12efbcebb687d9c0302047c435bb500663064023022c6e8f5a0d6176ad9429bf1b9e5dd0f57017328f1d73914522e9fedf49517af98bb0bad1d04df0f56bdb902c8576136023046948a36b196301d8f2971541f6b6e823575136a8d5dbd192b40a7b0b203b47086a61068ef8582f8cfb2cbf161386d380302047c435bb50066306402300213f4b42955542adcc5c4f6064dae17b24c1e8d75c177622017011bbc88b9207b5355c103cd437bf82ea44cf34d26a5023006e4e427a6a6f67df43df25f2dcacc40359196a82182ffc273f6e9f7087d11f87f747908447f08849d0778c567eabd4c0302047c435bb500663064023046161fe6a6ea2f501a619f1e8c8bec15cd9722009782379960d4d016c701bd6ebcaccc3f563e9de3f10f3bace087f07302305d9e7d64b8c36dbe9add466a5e0ae45eb8d86d6460a9657a9acf75c08ac00a51bc285e6c0ce417dbda48925abcd614040302047c435bb500683066023100932219ce4ef4e755fc4cc096b4e517226effb8dd328e67be3ee8b9294d4e86e6a133445515dbf37d3522690a7835d6b902310091b866911a61bec9bd1b63bafe364a6d8ef0337b6171176d2f2652f5a30101945557513a81cc18e5657f52db35e1e32b0302047c435bb500663064023016b65dfb6e8fa2a7de7e850a1c4baa52e2bdf646434de0b129efb865b17194709fb149de6d9ace68eb10ea5786810a440230122d8633a3f441cdbcc327b33fe0a077fdf6e47ea62c63846ae90c5b26341b64846d3f3d75ebec3197be594a76fc85e40302047c435bb5006830660231008bbdfee059e582ec075840b72d23da7866088760be9ec3546848e81ba987de88095230e5ffc0621fd45e01b7ef9b0762023100b25b39dda1cf0983984ed796bdd2868ef7be600907fcf3ce07b7f8bcd0569215440a5bdb355d86303aafbd27a3628f1a0302047c435bb500683066023100ede148dd75afbf4b9dc9892dffe803382833d69eecf13413024a822b017ddea86208c3a6a0c72e2bf251b178c4c96df7023100fb24f5903e009408b9eaed4fa5a84018bad0cb863f80cf673c98436398ce3aa7afba366bbfaba91e7da8a7d78b9733c80302047c435bb50068306602310085d842b5dca8097b534a7969be5046478abaf7cac9b5d9ae4f974842e29c703af167568215ef66b594e4933ee9885938023100d45487fead67aeefb50971c54ff10a500ecd69bc6441c11f15c716ebe3f832d4d240620d394d7daa54ad468fc86e9e620302047c435bb50067306502304d8e8b8baa9c28258bc46f9b85d97c1133e7b5c8a121b9bfcf6993c79ba72e6c99d47389dec01d83da077bbaed15ccba023100abd0ba6b7276dbb43aa16cf2f579e7191cf9b08fc494de125a5c804ff7a05032b7401f3a13488e8df6d5772275cf05d70302047c435bb50067306502304e53ce6556f7f44838fd1bfbd21f2c962297cd93f511d2dca679c0aa07d9ebc684bc8e43a2f0755994e6d122fb280aca023100fd4410e7267c04816c792cb2a429302e672f1dcd8de67d99fabcf1e92bee4ff7f35533e1f02fed8257e878c5aee32c1f0302047c435bb500673065023100a47037cf8ef9216074ad8bcc80927b8f6a3e00d44544ddf8a67224e0e17dbcdb72a01a96b0a91664c04db75d52592f2402306005e77320989970024189619f3ad69f48e6b1d67878b54b54f8e470fbb1558dc945ff18b924a95145a28a3207832f410302047c435bb500673065023100dcd8f407e6810602ca496560d4ca7df31c65b7390f8fb863ad7d380b66485ecf8f322d3789c0f73e3a1cbbd54d1d3a80023041503dd5af16ee51c5cc4d86ddcf4d4081b01f8230711f921aec1312c45b375a198ed1f6eead32b3193156318eae2aa70302047c435bb500673065023005498e372b7fb104aa96dc1d4a1a61d9323685da1a754553fefb6521fd6096fa476845a3ccf871804deca3a76d0da69e023100919ed85b410923ff2131f6650807dca48535c6a7a9f9187c3351092b75dcfd5d4d7d7c4a2a5d1f228e80eab6e21a07e30302047c435bb500683066023100f57ca8aba94403db003c3352cabb3a31826f69810214d54b2ab676c6ced520213673f0b5cfa2514f44301ee616cf0d23023100b81b268f58d0a33dd99d7edd886e7d2ebe01d5bf5975a163c33462cd8b46f2c2f4069bf7c38a88b3e666f6c8c673cc750302047c435bb500683066023100f01900fa269a7117b11c4637fa7f77f6909f2a0b24a268fc5c9aace161c840269bffe411dc285d98ab538643887f123b023100add222a08a677c43b242de513e9189398ac9f8a1578de5dd52bd08e057bd9c87c8309eceed6ad3e0c48ad6e142144fcc0302047c435bb500673065023100e5c8d7351dd36b7c73e351f0d011357074a15b3c815d494ea4cc64179e00c535de81987dddb5ead2dc0f954f50cb8ae002304b88e07509391c0f5597e58ad0d1a139906ab7040a892342f7926851096fb958dcfbe0e9f772b6a988593388b1ead9050302047c435bb500673065023100ef5a91221f1d827f97290f7b92b58c58872b73f8aafe3fef2266d535f362bf997a993dd603a4b4b65908d88b78d86d0702307fc8ddcca1515acc0c74e9982fd43c8ae8b53d27440ddbfb1cd2b3b842c9043d0ae498aed193d9eca2e1620bd93fe4e10302047c435bb50067306502303f2632de2fe4b43088198fc35bd0262cf94760cb082fecfe20c6ec3e1fac1967a4a69715c9e67928ead54cebadf6faab023100fe1358034d8f7c7b2238548b2b456bd9e33ff9d006edfc16ea3c59b0b16a416671077f5390e6795188e3bfd1a6dd4fd40302047c435bb50067306502304c0077364edeabbbf4c03802249354de56152f272275fb638398c6766d272f7c5ae890b5024529347a42407a5d56c47c023100ac8d1c0663799b772ebaf87f1c55260618ca82f52c073d5c6cd882cee5d1d60934672e50334b4348af0599ef6a2afd150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fb0c26a3185f816cdb852c52f4f0e10956382f23b4617e60e984e0d67876efd8313c04f313624533a6db3cffe9c1866f023100a4bca83a1c0df6c6af0ae1d94a515d00ea4d02b3014daf58ac1690ed2cbdc4c009c2aca42e05662f2417c4858bfbec180302047c435bb500673065023100df8230d886094d9018dc62079adaf9db3941ef007084e794e4d2ff9d52edd041f654051115e07b7f17bdbd53a666ee3b023046b22a5133056bcf35d01d57f5f4334765d3ed4cfc43f67101ac30a667f298879fc17195b3e6404681435327b68e92080302047c435bb50067306502307b3aae77911a26644e8f00b857fa33efb8cec9d20623d5bab7875876f4ef81e3971f6f82e4b12f52ea68abc298ed81430231009308dde166d159e28363b800f0359ef7040770b6dace6b5ae6308b1a38eb4b0171388c8a4bbc1709552fbbd4abbe70dd0302047c435bb500663064023009fbf3a3306d00801821e00299e70faf8e9133f24efda0758f32b9fb99dc88de2a5c6346cc6ea34e707333f413a59b4102304edc53beaad3bbf6c08e27e5e26f7a3b0ee70a8d333f0109ff53918bdb9c4931343194186513d4b17dc45a0cdadde0690302047c435bb500683066023100d2f418816a3a7a166967eb1d8d5d8a8f335dd91dcbccd344776f79c2ab256b7093102e020251e60a9597ecb263fc3de20231009b64e4b92a50fa053a994b5c3260d4df87395c73f6c9161b1eb5274c95270f97a145649dc33fa44d37e0a86eedd666db0302047c435bb500673065023063e51c1be4b3dcb0be845f9c6f738adde1a0a1df3cb628eee7776c8e95908f756b08233df4068cd5a1b5914eafda899e0231008cc2bf6ed90a904ab80a521b9623755f605019f16ddd6162005033f01134dee5ff59484678a4c401c1c7507c833b85070302047c435bb50066306402305a06fd2820f53f3bc74cfa6f885e0081fad65d603029444ca9ad1c8fb6ea1654dee7b625e9048e8f5aba1abed1348ae8023032a0b905fb156f6819b77b9a9979882724eb89be62a6c2faaa5544b3fcedf9f41cf9f6faa4e17d3e3c0d63203f1266270302047c435bb50067306502305de77172e062bfb23f1f37f67abf30969dcf616a413c919f61456890e83c0e0eeb2487f96d74bf31fd588a1d518008c60231008e0172864e76b26d231778da6ddbd7013976406e16a89ff26846880d748d139900e22e76d7b1ccc8dd3b9e3de376d7220302047c435bb500673065023100c406c55c3743dcac21e6494881d7d24dc4f594e94a52ca4df47973da2c00228fe3de63f79b761a642540707c399bc6ce02304eeb28abbe3116034c2662c66c7354f24627af6314a4a46a0a492d6bc4f69fa0b416c18782c36c9783f1f4f76ba25fb70302047c435bb500673065023100f9b907d41d56227ca3ed21f1ce0dbf9752e504484564dac5974d218aeb09a1bc4f51966ce040450349520ac80fbbe8ab02306070e05e05ebfb0c2d69787d79eb744aeaf31ab4e9a4a9ae2e5b37d66ba31e6d21e92049bde2158edb1e6c34acecb0110302047c435bb500683066023100babfc15915241d6a7a8ce3925495125293692478ae5db8e6f99713c83bf76bdb4e6f79331964b06c5a1bc98109bd9b26023100eca8391500f816801d76320270e7bc08453189c17886903f108ca93fb68e89dd75d4791a227965d2cf08608e1e3e09b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e652507bac4187bc84ca88d15239073cdc0b987f721fbc458eed2c3b06d9106990acaaaa4e3659ec75b27c3f5985ce42023100a7df6d378835ae01be9b5da9c978e4c03c19a7cbc988264c108373c0e57e1f52c8250464c1a7d1f761bc2ee348a19f570302047c435bb500683066023100949f280299cfd78e38cc12530c1630cc27ba9c6a26f7ed9d36659e7920fa985a152d22916c3362b5406cc6081b9af866023100aad090974a09eee73bc915ce79d98b4e9d44e29c7adf5db1f323b34c210b91c8558a0aa863968bffc84e1027c63ce3810302047c435bb500673065023100a961912b192c47493949df33b300db89586cdecbf0419de70f610316cb40f0ba248772833b14c1a13389e18bcf656cec02305aa905bf437ef32671621652eed14ef271d4672e749a40428aa16017e31b5dd82daba549724a40c3f92c87440b8b7cb70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023023f5aabb8fb2adbfa8b1ddce9578e224c3c14decf2e1c1505a799a19e90eff40413d5e7de114a3a30605e0d55ec8b17a023100eaaf46ab408e20fdb46f95aaf1c5739cf54fe6e82b0324cc1297f56d35312339d166ad4c95fbae370be8203c014db9960302047c435bb500683066023100c063b4a2e509cc71174f7feea0ca8ab6a14105181ddcfadf76797937e45c646581c71ff318e9db575c4cb24eb2dc80da023100af2de48abf8b729b5bcabecf2d5677d05da93e8b2364525e7c0724e19f6d82008cc38c94eebd8abef81433b48e0612260302047c435bb5006730650230556fbd81e262bd8cc1e12ca9e5d5fde2c935652c2b06d14a52085075ca2f6acf9e7bc268b458c56e49a25f3bd91c9430023100eab5bf934832795fbf84c5ed69a030a7c67ac9ece0498d4530ea0536f2e604dccaa0f5ed22b4be498883087ea93cf2160302047c435bb50066306402301b5ddfc66fff232764bca8d76e40f2cfdd1ebf46bd86b4616a4c52a0cd8e8da439fe2745435b45ef2f1502d4cf16da4d0230465d796218d72f1d0bcb6a0f601a2ddf5a821ae1c893df3f7a08eb0153d42739d8d3421f0a0a543c9043c43f53e337fd0302047c435bb50067306502310095798797e960c0b0416e4eb4e5827ed146f32ed019fd41adbc5aae75ee3fec665261f07726e7907a53be806d48a92f3a02307b419702c138c29fa4463dc5b667aef1dd7a7c7d0b09f6ba7364ea8981e2156b6bae1338cd1bac1c2a9901073adf4c310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f7e732d91a493e91b960ad6f4043e3fb726f90cdde52519048bd1462b9ff8478c8b53dbbf3e54a4713bec78fe9577baa023100af859cbc7b14ad886f0ec7807134c52b0b742177141f5892eb3a4e2eca677f4fabffb37ba40c5a7a297c7450597755b00302047c435bb5006730650230222b95eec32ba96abe7c745da15366f27d95fbb8672159e931ba8a79a4075b75eb29e610518f454c4dff3be1b1d8958f023100cd3146f02e02fca8e6b79a87967c96fd6b4f5b27a63dc28172ad952447f8bbe413f9263214dc290e458f13736aa1be030302047c435bb50068306602310083a91baa10aad3dd82ed5bcd9181f6a549bd97d94a5597a9f192262820bccddb938d3c0cd8605e1b5fe492d763cf8bb9023100fe3f85e4c004700373e394adef803511b723fd7f23c15ddb4d8beb6cbb727f4802d194a4242f2751c7d78414ff6fa16c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eb2c4bc0bb12c1fe608c24ef9a31a3d86ae10aeaece2d8c5db1fa334f0d06bc7cb00f0648627a9cae11fe3d077964e8d023100aba4ce35fb236a63f88adfaf1118a5540aff6c59e6b9c735a138108bb2c99bf6478c6b2854cc922a18deaa0c2866be0a0302047c435bb50066306402307a20877a9d3e6cd54bc145ee48b9975a39d544e4a573ad7906920e58cf0156725cb1c55000c7b01cede58d2ca43b5a72023068fa5cd3f9a275ac2df6dc8e13511e4561c7a1b802b4da7cd3a0f421ab69f1fdac361a73997386caac690ddec12cfa260302047c435bb5006830660231009221757857efc2c7b281726243606d015fc4845b86cae78e4d22ee28e1dc74f9255e4901d37c31a8057381275db4e2c8023100d3c21ec0a24d379a72c599bf41c6d3272848218cc410eced972679e772d76d636811038063ebc39952e8b3de459577c30302047c435bb500683066023100b4bbd94e98bd0c87af83838299105dbdc592aedafd3b84467535aa03720af773f3fb18179586d34f898b9d7d67c538e2023100d855b2ae014d3181f0e9fb7db1fa33589a86d6432708b6889c90369296c9e3df9eed68877ab7631c0d0144b05fbc68010302047c435bb500683066023100b9ecbbb7231f690f43a3f30e1fc05a4943ae05fc6274a7f3ee7ccd1fc37c0eb86289c0b06b2a217df49189c867172e4e02310089f98134bfabd8eb158b890f537b81bb492051798f74632c9d657557d72c672dcc923a3d2e283385892c6d29e2000afe0302047c435bb500673065023100f975a32b2be60fd10356cf4c31d38075958623ea97138e8707d54cbeacfcdb85c982086281f8992fdf0a2554902fdfb8023076c30068b518a3eda9c1e7965801c56eb3f7e9b3bb1a106c931a97c48e22cbc0ad5ec2e69bd6a72405b11e7946b2b8cd0302047c435bb5006730650230052f473fc59a51f65b6de03f7273223bb91fdb307648c68f3960939e7f854a9ec0253d9d1f0ae7e7013182538ad41a99023100ba9d548304301f3422c54fb821cdbb5ba75734538d21113d13fb34abeb6580fa6d7a9f6660c1a9cb35684d1119b5d3840302047c435bb50067306502301419433e36fb72a3d1736fb46391e766edf72626abba8bb10dc27a27e63a61f5dcf84bc08e8d46eeb80c66325b8fb803023100dda626148b8bb40f25bc5c7a79ab567867ecba786e2b96d469e98dd901a40a65fefaa6df25b93850104cd2ba29fc5d660302047c435bb50067306502305b35c079f39d2b11239fa7b4da0a34cacaef2ae8a1dca98395b7f78ed5072d68d3c49a46eb651219d0223ca3aa0ae6af023100a07b848f75f5eb4234d1cd4f144aecb35a1a4aa297784a3dd2e74262612389238c6f6d0ed293221c2d487e82f787cda20302047c435bb500663064023062f3ccb3dba65e301af013874494acc5fd9a690de3a2ed6f48d69a459cbfff318f0563e10b997985b58c89414856a66c0230057056fb0f80aec7117e1adb73818b7db06f82a6607f2b7b428b0fdd416d3e0e24b7da048210c8564df4fabe539223cf0302047c435bb500673065023100b96d39dccca20f800450ec9822d340b5928e16b8263af69f2ee15477d0fb3caa59312b35991dc5d59b55ccba7ff29f7b023047ab98312139690a24bf8cdeb1797d7f3ca272719267590607ffe29e42bf1659fb2be4a3df8c7732c5d88c93aba0fb1e0302047c435bb50066306402305216d6d3a64bc3ffcb7a02e8ea15108cbfb200f31e2455bb2e95006d976286a505eb6624606c94313d8f411c9e4adaf20230698917cee7719ca87289bd03a1bdb4c751af6e962756cfc662fa8f77621507513f392007ff624f37426c0a28311a0b230302047c435bb500673065023028dea81f013383bd5428b43e82a2708cc64d49f6f5a18bec495c5eea84850f184dcd831c0d00a64a964bb09532dae52e023100b82e6817813b23c169e8ccd3b6795b746726516b80e8d7b7b822ce8f8d2f6b96e7e503262bfb106908d329ef05a409830302047c435bb5006730650230059243a6810c3d6a6fd8a4bd52d8ceb42062f45ed9dbd2cca36176aae5ac38dcf6524d9d1d6d49e676b23a8d7e1869e30231009eded314879ed303f5daabdae317ac104e4b27ac1e4252e58cedd945a3730e418bcc3390eac81e0db1f6bb9eeadc2fd60302047c435bb500673065023013ec96a79493e64b08886f3432168b7099a06e4fa938b55ae39f4c25e5ab9fab02baec88fa62fec871e11ef80d6213d40231008765192e3262fddee9e13d93f2efd5f0a5b37fc6a0b69e0ee071d05be0dc5b821b506e3dbf44eb26f382b1a7c59192130302047c435bb50066306402300c7bfe9176f9c593862599f281d0e4ec0503d0870349382e58b78a8fa1068d6d21321489e68efd161248a4b5edebdc3f023048739020b21e941b3fabc79fea3518b1d5c26908380838fd21b452d9b462f131b5fc06702b47000b151fbc8290134f1d0302047c435bb500683066023100ecace03b0cd3c6398de9d83017e78c07d00c41e6c3dae972fcca359b67534db03d5ffe687fb9d78831affb0581ac3f820231009ced9a0db247e9cef9223ec7462f080384e04ae79adf27389bcbc599071446ff52ea586eb7bfeb87829b776729208c390302047c435bb5006730650230722e86970171ad3ccb9f42587d164759d569bf1cffd349f1ee5deb61eb27c0a5a3d8eb2f3232c0a15dc8b176941db4df0231008adab9aa54765868e8c73a73a8c751f41a9c107606e63c2ab36672f1f499935696b737561c51d61341217c55f6b12cc40302047c435bb500683066023100c7ebe5afb05a9286cafa5fc4b96e579b90fd6d51bd9020645c6bd81764db05094dd800a574dc617d7916641f4c20622e023100dd3ff280512ab3a71127d4688e7b59c9be6aff8703e3ed60838b33ba8f6032b38cb707f1b4f2430efdc5c03d7f9627e00302047c435bb50068306602310096d7d329b1b659370fe6e6983bdba1a8807f97520ccfef31acb361fb69e367c8b4942da5edc26440e6d03a8a31a15f6d023100c0bca59939eb317e63c376893abc64683cc2de83392dc8647d8b02c76dbec5f31b8f16c573123c5af826253145a4f74a0302047c435bb50066306402307c26b9a1cb78eebc3847e1bbb42b147c5d0539145729b9af3768294cbb3469a76a00956898e3a5df5c6bdacff32751030230430d803a9dbdab5220aa67962312f62ac08606a024a1fa3f926a82f437529bb1c6106186b51d74e87f14fb7702835d450302047c435bb500663064023026c90eed9f6b268adc497b8b2f6146d6369c2ced82543750cbe56100c4c0abba33c49ce640fc8c4e3573c363df6ab13402303a0f3f63c55babf7f43b9ce6a05bfe76dee334e91a027d8705027500e0d7652152b61192f8d747c8a5f26f1e8e1fb4010302047c435bb500683066023100e89b53315becfbf7d143e3f1313ac6ac7cea853d2dcb56cb0ecd8fc30b6a2aef9e21d8fa30b3efd0bff08b518ebc491d02310086861fb8285b59ca2ba797800e136f8bf8f42db4175ec566b1e1122c962935af23dfdb65fd5128c1a621c72362cd15a40302047c435bb500683066023100b0a1aeb299760dc630c3899fed98d8811a38d6968beb63be023414fb887ffc3596967151957f388085a39b9812618cea023100a52d5bc2fac1877bc0dd7be366d23cbb86882606af498835b6c896af6fd1e5cab27064c50cb4f6d69b146f8565069f060302047c435bb5006830660231009fee5b00979262dce6aacbc53e3e118cb4254a5b207870e72082b1a5463d627e91cc38210a3fb0c3d0710f3e37141b92023100ca8ac9928d9d6c3db53069ec5348448a03f1f00a51c1831ef56c25f378691d9ee27db4a2174b41e28ca1702967b104da0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100872f5cdfa92481b01ffa5000684ef3ecf3a20d1ab676410f6a164e8c397a44d5621a4d19b62315cbafc855a42cc45438023100b3a173e925358cef1ae7d5ffeb6f51c587de1a8847bbb5913e909911bc54d691808ec809a2bdf65fd992cf12e551c2d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307a2cda41ce79cba68a3a218ab923ae69af6e08a31ca60c7ec9d51fcbfe78319899cfb5117f5fc0ed6a9637dc064f23df0230329b5950acfae722d6c0ef672e53fcae2d829c8ac46b5e79f4157229fd4673529146e39bd1f9852f1bcc7a75630a30620302047c435bb50066306402304df267bd5b1cdc742051523fbe11b1895cbabfa739ccf1f912574e4c1ede4d7f323cdcebf87190e47a8f0796cd5800e90230128a4712505d2c31ed0917ce8eb1cf5bb11e856a8965d395cfb5c37cb7eb4d44ad82ddd0001f147a90fcfd1d94a0e15f0302047c435bb500683066023100bc092c1029994950e13f3a57d830d5dd20056ea7cce13b14cede1107376edc7f4e221867bd1785793e666ccaa88fd1f1023100b96b3ee2a9d54b6c1d0170a465f8eab7ff9a3385ab62a0960c4f4a8e761fbc003f4b4b3c25fc207d0c5d4a5478f6279f0302047c435bb50067306502307fd28fb7791061fd2af2cf7d73f09637c670da39caadce8cb683ffb3647b274df246d6a57804499bf10cbc57fddc6c13023100d239b2d8b28f57ab6ceeb01ead79ad0b5de3d9b5e389d7b72c242809801ec8d43769275ebb76eb2e62d1bcf4ec0786520302047c435bb50067306502305f0f12ad66ed923be90174fb0d920adafa49a15dd11abfa577fb86e1ca024e96637b9f582f4223cb38d5f0b235010302023100850b2c314f3d7b096919949112e92a551056bf04cadb2b7c8bd444026bf602f2204979501a47d689dd25231427a68c5e0302047c435bb5006630640230227a634c175086cac6e041d92347e52b2910782b89c858d78125e6d1f7dcd577595f69164650ef36d245c10d059acea202306b8d4da100f27c31453ff786356ae0bb1dcb2b18e5cca5b05bd50011816101973aa337dc209e97a3de69fc54f028dae00302047c435bb500673065023100ad2d30459eef3ddfdd8c437a7008965496c9424c98c0882421999a9ef6029d380f9e4d1c7cb00314868ac878ae88a5ef02306f0fdfa8b0f34c75f1d4202f659239a77e2814269d0672048eeb9fce1c0440d99ee5faadbfb37e75d10c41c4dc74e0ac0302047c435bb5006730650230140af3c3848959e5bce011080e117695e67839b5afab1cddd3ddc87225324bdc51bb6e28b491e6b55a131befa81be03e023100f9012e25c94931d76b649134a4a8af0810346985966492d34cd114d748513c279dccbe2c257dfb6dd0869de0b31f81d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023055ce303254c5d3ce626c5a85886dc738d8b4dce9891fab5b4191ba5f0632b07066cf94b1752c0124724a8ad503c5058e02304a495e387840d6679ce40f3dfc7e393e76e2db92a2c60652f9636a53cec29a189b5b79fcfe55f87f711714dd6a53b1080302047c435bb500673065023100f84c4a210159027dba5401121558fe75953b3f70eccd540863ab5d9c6ba75f203cf906b1104e03d5557b40bd6a1d40d3023015cc69b9b6c53385f0820ef80c3ecaca3d5c6bfdebb571ec55cfe39451db721951aa7b2afbb20ec64234b5e171ddb7320302047c435bb500683066023100d6e787e981992824f8677f6ff8df290bbb0cc4ffc51e94e7c0dee9132b1880d9ff11a4aecb660d28366d31905715a17a023100bc1198731f759ce933de41747b88fa81a724eff765333a226e523d0a2b2540cfc52cb349e46a44a46ccebb39759da2010302047c435bb5006730650230139561a66fb7f715238ebc90a896e99ec63fea28a114628953ccb974702900c496d3dced2ea482b54d533cdbdf4d1ffd023100c5c32aafea249b70608c9967bb1c1a20ccc5e366b106f041043b2c386eb7b15ba4fe60fed89c2ac9a12bb8b5ea6b814b0302047c435bb500673065023100da670b39ff3f986d51966afd4ab04c1b870f0d4cf0ff76aef301cd1c528acc48567288000d72d056a8fc91bba7b958f302305945ca4691ddc6e9b03e66e439a8a393eae09cc8db8a12e20e857cb0ae766a58c3621d743018c6d05b0e52a3c9d9ef4f0302047c435bb500663064023059a8ecbe5f5715caace935a1a273c1863aadbc8307b98571d5ff950de981316350df63b8d6e7092e69b5cb86fc204c5502307e39343d0ec1683868d16b052924e58667d98d8b34efa155384de3af35ed707762cc7de4eb9ba6f09982d602f41c80c40302047c435bb50066306402301786f11d93f0af11cbabd89bb30ad07db47da2ba2953d2c5ed07a45bf9099f027db619736fdf3a6e397a5b7706e0d81e02307e5be67f9b1e63f4e66a0964526ee65e2c75222d09e6530b763de4ed15b1cae7c8ddb72a52d014b30f92420b5977abb50302047c435bb500673065023060f6264711aac7e2ba2283ad34dd720fc59e02b3cb6713279cc2bc84e6a6f94be570057434cab1dac84b3a4e9f95abb4023100d74a614204d36585ba3aba44b9dee47d5be306848a7afac97ab20240557f0e6f9dbdc7046faccda1d16f2874073b10a40302047c435bb50066306402303f9195998a9668f164ee9418aa353f5ddd7e7f007fafee9195904a4cb017547aa54ac933615ceb7a0589c37eb802839502304db3fc23d4599da4671fef5fc73c4f1d892c2b86757834cab0e06ac9068760f7ae47b60fba0f4a36553ae971d6cd97f40302047c435bb50067306502300e0de9f330b24faac80efd46c03c03d0ad15af11cfcb5506bd94ce1369e0de3d65e61ebcca023e306f7e84e3dccd8af1023100d9dae2b084c7d6d9298774f14dc687f1c2c043614443004b848e0f7b27b7260cbfe248b1fd2340c552997388652ea3c10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ac336c99813da839a5b7304679e9da36002103b371e95fdf1746c366b0c5f5adaa8e37c188925a75fc449bf329abd6220230333e2995607cc87adf8256446f41685ddfa609217a79f7b553f6fb9c2fc052897317c1b2f4c26aa09b303bf244c902750302047c435bb5006630640230372a0befb51342b62b18b0fc4d84d7608ebdaf336f9d9aad0a624e1c4b1c09c1d2b1a583da732a91a683334f577bed540230534c717e6c3cc6a3b01397b6e65b58e64b7c0f288e1f4af4f3e006a6edbf4f971d25645194d1aa0828f0a5d254ea00930302047c435bb500673065023100e2fb4ef836dfe3dab96116e383af1cb96edd835e5fe6141b7b5a4e5e34bfd8f154c48556872bf82a4652bda45cfc0d88023024749b3f980e78c6111110bf7c1e0bf60fa12008e1e347953adb01b5465a42eeaf70c3e36d6f13b8243e7a1d953c9d1a0302047c435bb500673065023070f675d099744e0f25f85c0bc3a340c763e15151c74a9c3a5c34d25f7bcfc07c95a1365825f644b891d089e6f4067ff6023100cd9c580f0168d65497a8782e4b9ef2c4ad26c30c7a1b094f924018c11f54b9157d7fac385889ed50840c748bfb74d2570302047c435bb500673065023076b56947f64b86a94e0e391b60a7b92af1c98de2bc5ce4aa0099d6961e177b0a80b43aab5e80f811ed96cfb2b1f75c43023100a3f07d179d2b669a06b2e333cb80ae03182bf13ac30a07a92b9a7b8a34fc61110c788a9cf431b7abefac552e099f268a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b443d7b4cb852c86b67c9a513c1b2ca0c96e6bd8af680445a05fc56a5398dfedee92d2bdbb2ced75563b0b889f78cc3402304563cbf170b62b6c7fbd0e16dee86b8aeedf93d855587ba6f1d1d7925a0ef9e11a1e4a4a6319852682250ba22e41b12b0302047c435bb500673065023022df772ba0cf862f01cd2f07bb54c9d57b9f695c7b9e270bfdaee70e30464f96c0a770c6e60bea0701db6cc29c4a7b00023100885478430de09ab8cb874f32d629c0f05f3f78fed088da6cb325f7aaae6853acc7645f26183d29f63a436ce9b18a2e540302047c435bb500683066023100a8d40c3f2d63d5ab90a337903c7a1902acb691f0281e322ba16bde61b76d7954cd1568934ab9e2af97a09f58592cb770023100e22104bb9235fe90d1599eea9a2b53a63fcc2db3e1b1c0d2feaf99065bb476d32f20ab4cfee68ef09a404fa75cfd2a1c0302047c435bb500683066023100fc723eb7de3975ed00e1505539d9e9e239911872811f0fc9efb0b86dc1b24ad1666140c060fe7e3aea948db336967ba7023100cd098f4c7d5366a6eefef9548e4e25bc726a672af3ffc8c6ec5030622eb32a0e7b2e9728faaa425d4949ad71264793d00302047c435bb5006630640230186cd45d33376ec59561c76b40fc3de2d85a48965681b21ba79bcf45fc58d09d03b535ca9bb2c76ba8f5c1453fc9f45c02305e99d905cd08656318d4b1d1905d0ff7a75459dbca9ea5824c54b2fcf4c358b941fdbccb36fb3a3b7f719984d2dd27270302047c435bb500683066023100afc62742f3722c89597ef883ae581e1275c5574c433cb05c3ed8364f89e591a970ba1547b1622979c97ba5530bf60b51023100f7fcfcdde5db50e290bf5cb2d8ce38023c1efd9870f886fd7d2ae169a7d44ee8c0c5723cb79418c648645fb6bad97c6b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301f6e96471a947faaa47bb952a7d442486893353bb7687c78614fe3fc46dbe1058c4398615e9edb0f13338119bdfbadf302306977a2156bb4050a3c12914fb4b9a4742d24552c48133213f96f737da37a6c40c5416f0344fc7d571e46da609f6ebfb80302047c435bb5006630640230037f3b7486cf3762418ebe76318861244f11fc41f7061495e4ab1daf6a01a68ef5c5210749ea719f11dc5bb7809a16410230402beaf6ba4548a6081b3f89e2e06111267222a2711fde4cd59f75afa8b27641b0278c47ea43f1467cc4ff8eb2f0d8c60302047c435bb50068306602310083e9fc28e5feff146c9cfcb7d924cf2aca432fad6bff672832e15497da1304884abe53c538554f03a2d222c1cf97015a0231008f7fd4b8d0031f26006bf9d3c77845d7c99373eb60760b2f0f1cc37b2221e1132e225d3a0a796223e130bd907a632c560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305a119eeb6c781bc64581f0974c19f36ba51b1dfb79c8cfd5effcc67e251bb4c94347f4b13ae35d6cafca284e5b82d9fa023078155a9700ed3eb950bfaf10744fc8e230ad32766e6bf4794c12ab624cd9c1720e2ef3431c010ece264aa4e4b1f69f3f0302047c435bb500673065023100c576983fdce03cb251c09e4dd2b16bbe5be4cc6e4b404820a09c286e8860b17f61f922bddc9bd89ef8b9fda404849bed02306e80f4734d42a8e573cdb7aa4dc7a7a8b8fc9c218654940146f4b35143829508c3986226be831008ce7634a7873545380302047c435bb5006630640230667be20c7b0e21d0045bdefddbc7e10c04b0eb360676352f5fc7f29dc1594aaa9a13babbda53429e8c8bd58927463e9d023065c0e044d8b6032ccc051f0b36db4818d0473b99587a948b2fcdfa11055bc73bcf205a4647b9c678523523537d7622900302047c435bb500673065023100e285319bf41a1cac42d6c16f847dc033fb83589dc087ed7546d30026b81358e7667c3b3bd01bce213a7813ee6687461a023045ff819dbe381682fffee13e36b9cfb8d0e7ddf8fc42b0396c2378a0315a4a65461d1a448a1bea6fdf2f2cc6f34805ff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009180d03e11f6709cbaf4327824b6f36eec2ad9e6d19fb8dd21d618a7bf9c8d3f270035ece4d94812e58cdb939ccbb9fc023100ae5aef3a65f7ae3fc26821b9f7d4ce4082245a50514a96f08e33f276baaf3245b370f70f39e053d803dbd1c94c39a7760302047c435bb500683066023100ae89cded557c942cc636b2b02d6e11e41d6660d361b3311b101143d6a9043a5e6c2599f5e225f53a3b085a79b067359e02310085ac37b3c2a178db30e488d1c06120e123793a6310fd6c229b07969c9e6d5882bfe72dba942d9bc4083110a607ae937f0302047c435bb5006730650230415b243739a26f3c8ee459e5a2e5a00f3f0fa555e9baf6e59ca10470b20ef564eb8e300e86387e9011419db7cc2634ad023100ef63ac165d07218e1afa3e3ac36d5d0a43b11496acc1263b031293cce45d2c6443d4fb0079898f8cdb9b333c25084a710302047c435bb500673065023100d084cc3abb0701369125675ff56aee93887f6bf8b0408ccf1dfcc628943d6fc8c7e91596d52c95d93ac58e74acbebdc6023057ab1a88d3ccdbde8825f5f30a461ccdceb3481822149aabd893f429b9cc19829fc79410b769fdf64022f45ebc5964850302047c435bb50066306402301d3d7b6240c0ce15eab5185ae36356c034c7a8cced0eb5b9a67615b227a389b29741a851df252c591ebe95862d984b8f02306a5724ca4a8e7ff402837858debbafec25e50256a061b43648d73e27682242c123e04e17fb178605ce27b845409b61120302047c435bb500683066023100b0a129661f993396889e3ab868be252816a2dc2af17e7470ab288ddc1907ae0fa6a89ea12251c37ee931e390090e5f0d023100bb3c955bbf4e79034452263a4dbf1544890ad93391173c72935d0ad11cdad84dfb818ce9fd0315921ff83ee4848657ad0302047c435bb500683066023100927b09baf819e4fbdb6404245eaccc4ee79d4fdbe36f80092ae99fe7da47c70961ed137c48008d45f1ac2afc3d0f56c302310086ef0351ef5d5415836172da31cca40df47b7c610f886c03bd1c90b613ec3d588a9fb6cc5892f19de3fb57d47ef45c160302047c435bb50067306502306ff20cd9281a3077f2a2757d6b4ec8e92904e185f70d4a1b397906f3d4e0d7e07167264a4af0582fc8841bfc9f98034e023100f229bd61dc66ac14fcfbb1916852d9115edf14f750a14be32fa51bdc29cb87fcdd8e8adeadfc808e66c9f7e3085bffb50302047c435bb500673065023100c482159c04123b565ef4332e534b7f26cdd318fc865c3b6bb14549b4a320851f6eb327053ab60d16cecbc71610b882f302305facb8d300bb9f8ef0bf6c6a97f66ddbc19dd675549a67c8536ba129b2f260dc1b4bb4204916ac4ece440053fecd7afc0302047c435bb500673065023005d605abc9d33e48f241cbb70202a297b0c5c616c247703c2a382ce47801c3405d66397f087af6e0d4354a68163c3c7a023100f6442f57666f1e4f87c92a274f4a01c3f99a3cecd413a088f3a23c6fc21a05d1d0b18ff1fdc8afc80b32ade17bb0096d0302047c435bb500673065023100ca340a1324f8d746c02c8ddf665188c3796e6b14714c6a879a190a979cac12c58d165b31016ed30a96df655357b75c64023074177f9167dc94cd9b8539333806f6b0302f36dcab8af0cbf2b88af597a7388a8f6cf50d96dabb8d65d626bbd098918a0302047c435bb500683066023100d80612dfc71d27e8cb36089beaac6a403dbebbf9a0684d4a94028afc1d4163734bfa1d8d1f67f162ef4cd170bcced00a0231009ac6a5d397ee31b7eb1bcf45ede771796dc997ff3514e9bae894789a0a1015c4d8cfb216f188f55bf12be1d73d3267d50302047c435bb500683066023100836d73863877aa3c8bc0788833a2748841b31a7934ebb34e52fa7a8ab3e33ced0656200894c54ce09a10de2d3de528a0023100c5d3abb2270dd47473df69517ece04bfd1d1040db18b93aff463cef6a97e17a32795a94a9b25319f468125feddf795c90302047c435bb500683066023100b022815055c538912a887f3682c4fa02e6cb2e8de8903c46d2556269e95deb8f735eea419ca6c9da502a6903a4cedb4302310083677319be5c28fdb1c621807509270ef33f3a0d0674a4e9407cacbfb7ce172e84a2cba0fe08b0d2827008b4b7e8fd250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009602f5f0375925d21963f2969ece4831ce69921359baa6adc4b0e154a28691a12b54a4f7deafbcf13ae2dc6f1026d958023100d6c6b82ca1731daac3cd046bc699bdb621288f7a758c57b57291aa1c19a6b1cbb59fa00fe53e5ee0f2772ba6e83337ea0302047c435bb500683066023100d033bb2c39bf783c1f311afef8aa9f121a5369ed713a6fe0462e7dda4bf7ee3a7e1a42c989120e401f4bb20e65e2fbe3023100b675e3be7f74dc0c33162176b1f0378fa8fac630b1a2b9b925ce2113827610cd0125209c5b907a6d2618e2259de25e9b0302047c435bb500663064023043320475d32108199317cc7133cf26352f33e8033aec87f0f7b57730969afe7834552b19ce91f2365e9f7025ac5ed7c202307273450aa1499df422d6fbc139bd036ffba3fffd734e1e3ee7d0831c96e5c2df476790bc37d6123c8056ebcbdb539b1e0302047c435bb500673065023100bf679ed3adc204eba407ace5c06dff8b2caee1e953973f95906c9124c96a7b45589f9920d23e7e45266e839990221e360230477708fc226713606ec7e6f4d19e868b2c11ea28e6796e196542e8ba1924940135fe06ad074f220d3f69e70c846321850302047c435bb500683066023100ba900f5c85e577cb9ae20332cd6905eb9b3765c97a098bc770e8bfa7fcd1c3c936fb4e22faba56270aaf82b8af9c35df023100f37f935fc2091c8aef16e7fb44342659b5a33aaab37ba625c58d2886a0e34080ecfac69cc040809227995e2ddc61f02f0302047c435bb500673065023100982d9704f9a31fdfbf2dcf60fbd4f56b212b5b9fd612e94ea5edadb088ed686404986fed12cb1338f552bb80b0f8e82402302f20032ff855045a96b3c3082733fd68882ec9e66301b4abd8987aaf871f7c75a84971cc4bf294db5caa04137aafa1c10302047c435bb50066306402307ad0a58679168258c52e44d669594f29e04d11f01d07553a502b28074dfe4545108978299479b88fd283e844faea71d202303f64b63bbdbf10d7bf1a29e357f2955bcc3499102f388753934707f95da0c8dc0d5b889a442c509ec972970436b1ec570302047c435bb500673065023027eba2635932e4945cdbb28b297a04f0c97634bf79c4b61e9d6e3c646e05cdc6dff2bff991187a87e57f01bd1ce9e461023100841476b74f59940ca7e8e85d5fd6e14b7fea71afdfc3dc6b42efb7dc0d67fd804988e2b2bfa0f97319a1d0c166d3dafc0302047c435bb5006630640230377a6c55b85ca96f055dd9c546d4a5d4138dd14f8d9f1294214c34bcfe6d8b61d4520592949bea8da017539a00e9071d023074f19eb6ca9c0cede9091275700fb497e5b4f389a4153c480c0cb100040bcc6c6ad4b221ae274528875a9df2e247c5c50302047c435bb500663064023003ad63419c20a80576f1053464539d59462992f69d4b582dc150ecfb12732f7379755587669381d44c34705bb0b3b155023046f7a1065e125aa64c4cc68efc5dcba3d1905ba88f6a7f141a585ee1e56fbb634aab6a6890e28cefe65aa8eef24ab2490302047c435bb5006630640230600ca45c9550d52fa66f00a5fb837655d4a8df4c20201d86ec1a6afd102a42ad8ad47aff47a435d4b2a8ffc18420613d023072c3ea706771a259151e533ae0b55066c01eb8745a8058609096877b78cebe817891f70c162d7250d48cdeb320afce8c0302047c435bb50066306402304dd051c40a2fd5166453d45742b69ef30055efc3e6319d96f3279ecf4f7dab9f0c8de480c65b009a4768a193da142e1f02303f58203c40bebe9ca4fd87edffacd56213fba11b0d32106962caaa5349a21cb81e0c63a33a73355c5d4f331f210912c50302047c435bb500683066023100f46cfd4e3fb9c543deac207062f52865c59bf8a85e6e3ea881a6887fbb97e9be4ae7cace5fae2bb7c7ec87a69904f949023100cdc365b30f6e6027561426ced51712e4aadec8e106eab25b7b742c3b1191e470f820acc6f9777152481838d89b5b69dd0302047c435bb500663064023014278a5a6105b273ca333cef6fcf633472205fa3d60ec0f55fedf9dc385ff1c7dc28dc80bbf4a422496c9158f425b3af023068d345b0b2d64455dc9e851f0486672bd1fb6c15eaa1823c3e1844e3f3d40cfc60fae8bb052ae9db5bbb670dc46e47290302047c435bb5006830660231009b6486085080dddd4e1beecc5284dc9b188ee1957f57e347b4c3e270fbf6b7383fad4308ece54fe4ec040986a40e8ce80231009cbb5cd0fa4b6c3469c69eeb0be78e052c4e38d056e77e3880934851a6e5eb349acd54435af1bdd0408e45c1933dac1a0302047c435bb500683066023100c31678426010af2c23de7fcc0b6d857a39aa8123d6838ce1ec83d79384dc19443b47b58caf4a5fcabb229b39c27e3b31023100b5a392de1e511771f85772ae9159b2d7ab2ac1147e2ec83a3efe9f75d7fcb6a759cb20496cac4a3976f608acb90cc5280302047c435bb50066306402301a3aa9d70b2e93bde67f985a73092d7744ba27dcd68a60adb8bea7af852e8f1c207a6208ac0533439163c1d3071db20f023073f2cec1e6af4eef04598f6ea7f3ef199c63c2a4cca8ff75d3f6ac1f78bbea2d75f66bcd0d90a955242721a5524fca5b0302047c435bb500683066023100b8d9971983a9525d396e566543e5b8bc1df8d1f0af2dcc94b7487d4f4779841da0c23603c4db4bb349ff0fdb2954867d023100b4c8cc57a2ad193b7298228af80375fb9d8a7fce5acca76a83bce8f79e3be24a2cf0a862f767c4a893d4a0fa50eed5a20302047c435bb500683066023100d5dd5939c5523f850624f4c5d6157c9e905805adea74cf8b7adf64b1afecdaddf561242b336f189d91527842ee2255aa023100ccf6adaedcd5636326e9c20156fba4c1e6c94a437e2e4b8223d9803f31e964cce27d78f20daf9ce6d9d3b98577f3ee270302047c435bb50067306502310084f91e23a8cce76f26ae8d35c511057cd44b002c55e3c2097a3e6a8927255e7f3e53748b41009d6cef14218196f58798023058bb67286a4f0d8a45be1331015c4c6de8f6bab63e0ea339930a6162d89e660cfe7941609f5d4b4885c217bd0f3c49370302047c435bb500673065023100f0bde61c534f714b0d8b69d5be20e925279b9bba242b654b35af806dbc8b6b51e45dd260e8e97aae8eec43e8f96b5d44023025e0824d0f8da7defd714d15727cd82dbb11623eed3b615c15841fb01634131fb71976b8775febd140ba66618bcfd7350302047c435bb500663064023044d73f4228d9b0b5b8b9f647171373759fb441e0a0958b9ab03e11199a95eb828197f717ad5981e5847e009845f69fbc023061ae88baea879734f276e0031bf5e4bc65cff825b3a76a0906050cef94eb8c79bebe572b3d1e72813c8d8d79607ce5fc0302047c435bb50067306502304ae638a0b2a3b8e1f541146bf1fe1a79d4102119f015dfc7797d8f67ecbaa08f5a2c69d5d5c683d36d641f584ce0d8b00231008f459efdef2d72213ee53de57072ddc1675e548272d30a4f51109e71cb7c7bf26ad45175a9e38731a7bab064ee36fa2a0302047c435bb50067306502304b12ca61fa8ddd814e01b2c1e6c7c0f6fe5b5ddc739140be7b3993f7506ca1b05fb989bdc3bf88b7c9864ad46880240f02310081adbd1e6f977f3dc1932b2d636678e5392ca3a7fae2ff0fc14dab3fcbe635734220a3f16a63fde35cf7ae83714e4c8f0302047c435bb500683066023100b907418fd3c93294141ae5768446f27c253cd7fb228dc63391fcc69a7fe0dadba55b1863ef38ccbe4c6b8d3c6f5935b80231008696d753bffe83b17bb68d8d3dd7239fd879a1d055dc0011112c2ba39a744454b987ea1aeb20179e6723ea8b887d3e860302047c435bb500673065023100e6fd8205695b79885f59bc099f78013d1cd8fb49e4bb84bc83fa77a293e4f8e53e078ca0a31b6dff1b23396ca63b618b023009d9edae24223dd4a66d5db0c40a3f2b9f51bbac731c9e41b9068323cedbb1429bd5e034983e82a18f2bead3180d735a0302047c435bb5006630640230578146034062eb63d659cace1b48f31528547d88eca6923177c31fcca7d1c0c62f82e3cb0d187cff5003e6456de9c12d023034e5a5b6e292cf220319425aa683caec2e661eb5704c62d89271ecd25d6f854887f195e02c9a64ced720f15efaeedfac0302047c435bb500683066023100869c9afd6f300f61eed83ec8b4b6b379f667d7869523e6e5f7a13de1dd98c9f6c9cfbcfb231072bd942d153abcd616fb023100eba6133d13e62ddb9810a3d9bbd7788022b1b80a161d27a0083d2fc391dc9e96eb0b23c56f98772479755a7ddd3c09cd0302047c435bb500683066023100875fa99a8e0d7ccebca1f1ba443fd94128438ac433b2279fe0138b322ed8b8808f9ce2903cd6d0fd156be1ef1793156002310090e84aa625bc82837fde88e30da8afffd224ea93833d4471dc2fe180ce403c856a086de779ff5adc7183c30a683c54f00302047c435bb500663064023052956296c43ec89cbe1fb0ad695d98a475abb223507427086ebab01979964233979d2d4f814bfb88aa830ce8a51846d10230171c0aa5c35643c9dd945d275e6254ffc52e6b71afa4079317ad39bb620ec5c7b4d5f3158e51178a5ec7dc265c6afdbc0302047c435bb50067306502301b285415ffa0ee277d7ef9dc25819d4d6ec2d226e8c091848776669bb72806149910d4bc7aa612d10782b26558dcbcb4023100febc23640ea21a264631c7d14179b5aa750d814a5a690b97f6eda04c6e752af8eddaf323ccdbee71483679814e2ded390302047c435bb500663064023068d53e0de2535b482d4fc23864355e1f926b0977bdca181ad99a072eae8cbe2c2ea26cb7442dcebe5820bf9af33a467902303cf6010bd873d85b3eced1eae89ded98d42aad00228daab09ea4cf327c77ba366262032c0a6169ba2425e657ad9256260302047c435bb500683066023100bc867b779b3acf3bf0f5e2bd4d20a255e45ec915f141a88ad9d9863be6cf3413b28af847ed6cc42ad3b27b7c54dd78f7023100fece42f843c6322455f7e4a1ff3b309e70b717aa0c512bdb2e2f0132085912d1d82b266752b510a2263e5e044872cce90302047c435bb50066306402305c432bb3820d791b899500b4fc6ea6fd8712b7b09c20bffb7960f782964ce0f537ef45acb34549e05daca1ca2227152c0230355502e1a76f1d5f2236f7f243a96502a6a0892f87f279d0477b371e01b74c35e71879547915c1132131356ecb002e0f0302047c435bb50066306402305c4cd76b854638b452fa46b52948795a0ff4d58253155b4a5975e86e705aafc4a6020e074a58d7f1dff63eff70fb286002301529b54751bb95f2acf7015f85d7615c708b21ada2790ac21d03b8e12c047b85fc74872ff88250908a94cacddf4378630302047c435bb500683066023100ee95cde8281ee3d40d0a77ff4313f0f4a0bbc2fcfe835ab9ed575ed85ea732018465d1a7c137ac890cb5267654525b0c023100d53cd3391df80a184e0fcd9c96b14e6dba9eaf94d3e61fbc1e45c4d44d6b730d885a36c2febe5c7a2dc094258013cd4f0302047c435bb500683066023100de6721480c90d81cd40a5c9b16c7a3a6253e040acc44ac66b24223f7fb7082cb3bf14db3724fa1bde9e28ea85fe8df4e023100cdff9861c9a4c399c543ba8321848e99f2f7ebcb38fd123351a8ce9ebefdf05125fb0148f955520b2fa5bb5134cccf540302047c435bb500673065023100acd65c31b06aaafeab0457fb178ea9a7f3a03059d756da6595d2337580a841dd96dfd95ac4edfcddd2a3b54959c6371a0230398f2800133a35674ab4f0e786454fabc11eb97fc92e3cc67d143fedac314bb7f954263aefbf4932b4d4d293e1139e1a0302047c435bb500673065023100c3b84753ae5300ed96013da5c5e1e6152e61dd3e65226e9e3fb9a4a7c6d4101b43cb54f8063b0cc9cdf273074b53662802305e306fa66f51e2906d071d5aade699e0bae55f18cb652dcbd92e2b7d41db1506fc97862f87df230e2ffafe146f83cb710302047c435bb5006630640230104ccc0b225a1189bfafaeff927f5aeaf8ace77a9f0a5802e0118af63f770b9b6303ed935d215ccb64e67dce5afa1afa023068f09ad41416ab1588b6db23f2c0d06925b742c78fa8374e4ddcafb634896a3590aadfd6305e0397022b8e7e45827dba0302047c435bb500683066023100d2bca3026539456af3dc9f79d0b73d35e70fbcbbd6010d63a9fa84a1229c078b802edd4415171d6043ed3944157e97fe023100c89fb98307b57dcf0797399d0a82d070b6f2ca17d8a16be168697a3511f8dbef495c56652fd7af609cb0b54b743cce400302047c435bb50067306502304870757c09b678d3dd7675356b8234ef08639f77c8462acae4d5603b6b0583030393391128b998a4316b36c6c804890f023100a3ba72dd56de20ff8b831613a77518618b62e4e7d3ae34db1d78b49680b7c7a357e6b4d151731240b66b4ce89b1d20000302047c435bb500683066023100e7ee6b9d3f7a06bbb02ed36de7e4255cd9e78cc9f66de59d4dcacf587f07ad66183449559da29cf049a14f5abbcc4d78023100d408672800b5de4eee62c7fe651c8e6ac719efe9c0f05be58e3e5a137711918d6a3d779efff2d3881ecb14a4cb05bc360302047c435bb500683066023100a367604fc97edca5924d86a9164e8e9b56d9285a553f13f3e43d5635841c5d2e1b9aa8e5211b6d4814a2c1585b1fb0ab023100e6bd514bf5cd3d54fc17b8b8c85f35317f5dd82ef58c2d209b9e6ad0e3ca7ac15dfb1bab521b2e69b392f854a2155d660302047c435bb500683066023100db4f5425ccdc32ee360340f323688f2eec54109d8f82903d2d76668b027c2794d6f45589b45fefaeb247a4fac565b5d5023100b3898933071242f0caf68d42e4558db4cbfe911b81580658740ca140eb34bb41864219d3ae3e33ab816324303575c5f80302047c435bb500673065023100b8aad8c8ed9ba0f52d8863b621ce9c6d79b607ce8684308fd0e6cae2de1fc38b0e208b53e52a5dbc53eb74ee156929d70230020e19545b984d23952d5b3788ffab54c564903b627376228a7421c9335d44de994488fa620e2a034ec51bb0850c96690302047c435bb500683066023100b5407c083256300faa72130f10c314eb446a10b38eaf57f07d4e58bb0b87c629bc8023799c123dc0a7cddea10d9766f8023100c3b09de83831a5b0123d1b1a87831d92af6385030aad01c814c16fc98c8bb02188f68be51637885bc8c3d4b06694152a0302047c435bb5006730650230192e27f74f5e8992f26b6732efed033391b5a9892a51e1a4b0e84925c6f60ce1758a2354b31e4886f5ac398a96e8e75a0231009ef5902c1b3293d776e531306830a42c8c9ca3cc498c101f7a2f84cd5f75c7c38066a47b44379ae528d7becf223122030302047c435bb50066306402304e2261a95fdeb4849169b3886cf59c4c755a15e605b2afada3450b976ba0cb78d76ceb556c2b9f8944d4e069dc51f96b023035b1759eaca3b272bc9718a6034b7ee5fc6fcdee4bbff6bc3ce53109a4059380f89046735e5aac50559ddf17ad059cd10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023036face852e12b42cc3edebfa8f99e6a8b4115ea910c6b0052e0ffd9d5b87494ba45436b1201e9b50522e082cdcd76e6502301fda1b4e9ef018a851d3cd63b91fa7ae216bbb5e9d41f4fc8d558b4cbe9c28edd5bdc5792e7c2237f514d217e5c6152c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008b784e1abe02422c74752fc1922e56d04f5aac2016ad07037aea77a9bccecd8c78b1f9e6a44cab044889bd9d90f687b302307db2172009127e58c87b912ae0606007e151aad97d89ebaabdee676b342c851c87fba43f704bf3adf60d7f6b8fedd28a0302047c435bb5006730650231008ccba99b2cfef640deb6a1d2fa6c0d91d34b1761014607c4b0475251077d51c50145b8cdbe87ec76f6e0ef84239aa93202302d9e9e91faae5936181cb60cf8575fbf30eb29c80d8201253ee80fd6b52988e33c849abfb0bac652ea7a91e6ac90b58b0302047c435bb500673065023039d8a06e49aa2cb61ad0d173cdc93c6ae21ecd2c008d646816871a0cbba6bec1282846a67c0cf852b69c3fec3eda9264023100a49a7e2fd953cd511fc6eb60770462620b8607afcf9339f70e3d45c4fb220400a9a502a1493c9c230641f5f7956ff9820302047c435bb5006630640230302e82e664cf8f1892841f9787e778bcf767e4763c93f652a28b7f47cd65b99cb612f2800b01d35cd0841e03d73dee160230546a2cfbbdff9ca293e23033837b6f991d5c935a506d3b1f9306d89a0b36553a5fe81cbbadbe8278d5ad7b6ac566f9760302047c435bb500673065023100ace65663149d5287d36722fb7aec0be948f4c4145f8e140db0ffe4ad6c0c7bbd0d955c131127347e0f8994cd224e8d3b02303b04f8d27479289c1528178d098418bba6a6e5f572d710451f78cdbc56ac314dc1e4e145905bab6a3ada8ca25c0f351a0302047c435bb5006730650231009a7029f44e4b1d6bfa16cd4f7953b88f0759dc5e2024b22758f14f60483dd7452921d511712685ac2db629d1620075290230113e29582b84f58cde9c6f996af8062e34a9e2f642f7d1e0d964f0f6136bef0568b9981af6c4e7a91bad41becda23b410302047c435bb50067306502310095c10f088aa2e67baf354d8fc59088415d4864d6e994c804cdc249e4d328c3b6a2d059c47f3f82d750208facd7452137023010b76ce1df28bc611423a207d8e332189d9f30d63ac07319bfd09d9cfa93a25736aeb82dc0b594cbddf9b067b712dfc30302047c435bb50066306402304fe634ea5a09089dee47a01b98672e50f4dfb837442a3e68aa250666f647d42576bd6879745f92110d9b78b241dd33fa0230057e104e1d394216c22e17f7220373484c8752dbd19eb2cd1321c2980e039d65794d8929fb64b56fcc3c80ce5d73b0660302047c435bb50067306502303e4b1393a51a5084d40e7cbed5341ab4bc5ab7cb974123c9d6d346d7b4d9bfde87ebf51549a08322a1c02c3e7e0c52e4023100e5373d715e064697d9d4546147c83f948dd9461d568f6faaaabf1a5072683eadf4981d22df5f3f888fccbce20aef61470302047c435bb500663064023078be984dd388bc9680eb6439a654c4119a6cb93646843ece0e403fea87fbd4ec9aad2c9701e89a9074e493257689ae50023075c454daddb3200c05a0210af7d21b3b70af8ea203ef5c1b8c68c1ebbb1d317d2538c3aa73f05313d111bafc593a45370302047c435bb500673065023100931ad3411fd8c7919fd4e0956600653e7dbd146e85c603a9f078cf0043f64cc66e17214b69bb297acba45f616a4e9fe1023077b5d7a7549347106f6df7f902d824e9f40b5cd2eb29ec2d98eeaba5597aa2227110de0315955fb8d697ce5f53c243f40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100920bcb71afd92f106744fceb5d46852719b83748f1e080c32bcc7f932e531cc10ac77189d06631d5de691f58133ec30f02303e783a8e3043a71a6614407d436c6552b4b5f261d54a444c7c4d604d2d9eac6ea671ebf39822c04d86413b3c890301580302047c435bb50066306402301dd6b94be5a4f7bea4a1d3c330e092b27294329d0ec27970f5fc0c9d3d4b8b3bcc62e418e47bc783e012368695c20f0d02304153d8ac40f2ec83e7f2a6d146e26a5e23ca5c8bbbbe4d67bcf28f6c409beaf13b036eec0ea4a963d3bb86145b0183dd0302047c435bb500683066023100dd272769b830e5669194df979781e1c1bd682ead5bded4d7c6cfb345cad142bba39fce0a6e0dae26e52e59e24be9206a023100cae042f12c560d8638449aa0485a158adc6c3b4237028b37fecf599c21577f6b4d55cd7749ce49b6edbfbeaa35f417930302047c435bb500673065023100ab0b21c4b0b7a94f34442f961748192a9a2ad92cc8a3c13282cd211f8ac38e8bf1952e5893923eb315e285b721658e8c02302209cdd695b2097bf860b7327a60937e58a19c3beb284ef918e7c27b25663fb29785c27f8801b0306f675993a3c7cbf10302047c435bb50067306502310087d8aa98e6d846563f9f63d886d8794c59435f03140cbfa3f02c14367212110fef40cb11b5f909ab9c53632ad53c383e02305ad11912b9ef8f07d1043c77a05483011d7effaac0493e50d012bcd8b2e7b336ce583a4c0eb36ebe4e1ee2ac285226340302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a8821ae6c811143daddd65045daf7dbfe4d3e0047c37e01a7793e099a4d9e3ac40a0c870a1e0beb792958d31f296f5d4023100e732b3ac45def1885825c7657ae1599a2c9bf63de6c197ae944e4b09932a167bf2120613311f7bc9eaa895de60b4afdc0302047c435bb500663064023022a0a45dfada1560a86f0a0b2dd96a33735c36038428949788ad2381453d5e2bd34527886573f37b785c0e7d8e0249170230594271bb0c57f9d9c8f020ea61692b7465ddf1cab8dc9ae9897d45e1010fc46b741808291a08b2cac1fed53768c12eb60302047c435bb500683066023100b957386e0aa2d431b1856a07c9a12f4bbe6007ed9c37f516aa459ca7c9f66d560b4367120f84ac3d869bd9a128686f0e023100b3e836169b66d8d74755248debbef42e0f7ee9b0d234254e3c8b60f6e190b92bfe7051f79620c9ef3478d4b5f73152de0302047c435bb50067306502304724e895f3f6f082d778d7061812b911c0c313ca31ec2c4b3ab0e9d697736194069b82c7318ebe925138ee555791be1f023100b46b0a1b9bcfd848e2a924d39e5a4b0b037c24ccc984aa54cd1515709d775820caf0c346e6a09662067ac87d52c5c27b0302047c435bb5006730650231008dd54fe8450b392ec79e89837d5ca1442b95eb68053444ba2b589b9151f7d633f023846af866bb2ee82f1d3715ff62a202307508d8e6951569d18b1217a89b2532de5a61eabed5799cb6970c8302e23b8d0512765b206f81bdd253dccb607303cc4b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b62bf6f7adc543f3d3cbd1a34076387595e0391bb2dae32c5153e5a6b46045db68792df5b76eb99313d1e7205f2d63de0230174b05aa034dcd68ec1dc691a0ba4c798236dc212fc41ae60046187c10c97f330c99495e7b25d7dbf5d932dec4d4f7100302047c435bb500673065023065e512c7c922f5cd131ba4139b76d24999793de3453d1da07ad4ded1bd0faea894422eef0991e7a883520c516320ed4f023100f7fdc3829eebae030a8884b7192ad75522497c461f6a1e867746dea11bce37725eb6d5692c4b2338fa18d254fce55d8c0302047c435bb5006830660231009688c7692a4bd74290fdcc8a3b92494605ce1a5af348e46b8e83e4116191274e5faf05c1efaf4548db4f9eb5876416ce0231009987668c9d6d4914ff5c55c49f0a42dacaac9402558545d592f456c83e6533d72e6425949da82b3801bdc143fbaf7e7b0302047c435bb500673065023100f40ce3ede2b74b39a30f742e8241294aa6638057f1fa8fcabf6f5a36083584117728504a781f242f722271e483a4a9e3023013a0ec0703d5cc9a3eeeb6ada370e4621a02e95fbab2355bfb6b744d06ab66c31c03bde2cadbd5d50aaadeeed4e2da250302047c435bb500673065023100e0751b10b22f9aeba3b99f15de169eb546e1e7d3ada3b54af2fd69536512c0172f170ef0c62bb159247ec6ebffd223aa02305eb8661b2980c34995ea193c13676d60b8d84a3aca7062e4b8c12c0152a3a6b7ef7980b838cfc546267defe0f774165c0302047c435bb500673065023010e037c3a084ab07a01ee59602279bf341532835a4f939a8df65ece9bd5ff7e9e6ad02fe796a076c492bc74b967d0b0b023100f315f8b7914858fedbe13f8f5675e861889646e4d22cbee01c37d7344dc406ec6aca66cac56d4e435e4eab3114b0a1a60302047c435bb50066306402301defa3e112bcd60ced4173f9e6079c41677fa5dbe4c7a27556904cd08e817b3a76d4f3735f920ff8251dabe69579884c02302bb949857ddec3738569cf70107c88ff3bb471a17bd9e0358eb50501bd73fd7a6d5a3e7a390f42527d6cace032ee330a0302047c435bb500673065023100b84fcd9908c540f85b0143fae93a67dcd5c08ecdb3810f7e17aa490d8a7eaf74608d72d7c4a55bda324929de3121a42c023049e5f020a2e69eb93579acd6b1dd24158888f88ff8275ce050dff387b283652a988e1d84f9d8fa31e30b3038c44cea400302047c435bb500673065023075278c1d3f53e36068c9808838c6377d122694a512aeac51928405d9b49ab47858314f70a26bfb622056da7aaf5d419b023100bc1a64889efa02986e94bec8e870d6ba49d3cc13851c47a92ddd462f6932cd43a7b314ef9e96908a030274d0f04245440302047c435bb500683066023100a3a4ab4958fd80feaa1dabd0b86b41f340f3b7b4c9d30abeb9a31c897b7c78fb24414f3ede507507650a71165d997ea6023100ca6e7b21a25837d597a623ed5c2edf3c0402568d8b53285b392f51f60e8ac4f647c9139cf4eda4f1e1c8118c37fb04090302047c435bb500663064023019a723d0fd124547cd2851de1f65b3a2187f396ffb7f36a7e72433e6284682465a7ce04488e1b089314dd8aeed05e80102302572262c3113758cd2f045180d29c5f54215c9a9dd264e759602c486fe489a43ff05f5b7471f3bd54371406701e599300302047c435bb500673065023100ef7b583768099ab58681e5c6e7c439056041121be78f79f6e8f298df8f013843abe8fa4e4c480abc7a1ea2476b13c22402304f9bafb46da29cd67aa0497dc144f735556201878e5e07355a7ccd5d0386416152a97e4d731fb9a6948378602b0881f50302047c435bb50066306402303f8f5bf8aa422d0f8a07ebaab13e4622deab16d37842b6137009be44fac5c240f734638584274676291a6cb564e39d1702302cae0f7a40bfb0cd0827b2737d6c3f8dd1aab7a955e177f6ce0233b72d1db56498b3f19e0edaeb051fbbfd958d7abef10302047c435bb500683066023100ebd18d1d79b856037ca8b2b74a1b75d2d3fc982f42eb1b506b2b8e02cd40d2685e4845873756cedfc45424e6c2c62583023100abe72230fc6745fdaa50893a770bd2832384516a54cca3dec03de7cda12346fb544d87a93df9ee8417049f9014725f380302047c435bb500683066023100eb00244b14f5cbecef6768af6a273b3b14a2dab30e6bafddf4762156367a651a1e7d1ac7013263bac20c908a5ab0519f023100be7e1e408cde29090109e49dae7987bfcd2a4f36dc58c2ff77e30650faabad93639ed176d2050dd1062e332a12c15a9e0302047c435bb50066306402300b74efde2925333237cbf0cefd671fdafdf871674a55479c7e124c79e3f302742680cd92e64dc7ce46728849c5ac1879023036af71a21f7cf88982348d8d25da7d6771f5790f920c769d1be5f8c1274132af8eec599ad3bb60301bcec488154cbf3c0302047c435bb500673065023100d8e76db4746677bc71c3d9ef611d8e1d5feb5f49db53fffd133916b266fa434b7e062d8da96626bedde722e171656308023012ce1ee136d74c797ef30f2bf87abad21419fd1952a53aa455512d54c0215f1afbe4b161819fdc2b4045fb6bb7e14ac60302047c435bb50066306402305419bea433a0a8618981f5b92b9bac21091be9e70d7feb22fdc466c85923168932407c83b4c7b38ab62efcd2c35bd7610230563be8df91c4755d77cd8cae13258ea3169dbdd441f0b9f31507d2ef7cbff3b4115dce96ddc79bde2675b4fa343f079d0302047c435bb50067306502300789e425d5b8dd661ffaeddac180a6c7aaefa5c61ca1c242781c7626a769a0b3bfb0ccee3bfb8125477aa974106dae33023100a96da0e32426db75297b07dfcf926728b19b2bbe7317c94b86af048b77d73703942322dac125e62db86240c47b04e7f80302047c435bb500673065023100e3bcd08e9f05184328315f79232b26171c49cf058938bffa8604fd08223796b9df9d4244ac84856069334f385c6b190e02305530efa6defe644015112abfd15cbe371b2f1d0e461bdffaf198e0e2a709fd8796279c5419de56c22a87eb40266dfaae0302047c435bb500673065023100f948c6b4a6a36a7a1fee18bb980d78871a3a87702352399420ce738e06bb97754ad66995326b7d7c90ca3eb1ba8321d90230731d00224f0ec387284240465caac91e2aafd8c3c432ce652793a775c689d1fdd33e7ea8d6fdd512e69302a3bb5995b50302047c435bb50066306402301f1fd9fecc71a715ee6af224d646244ef4afbbcd89b43da1ac28fd7f606fbaad2ee731f4f3a92b882114b23ad14638d8023044b51c0bb1936e04c98d6dbe20087ee5acbfd538a1b8cf13eb42bfce6c1b49dc82b973790a574582635e559cb670f4d00302047c435bb500673065023026ea3bc2609ae7fd3790cd089e1214a65bd16975fca4582ac6c380ccf20b271ccb8ea76ea2406cc1ec0cfbf3da9ccbc4023100fc48ec5f999b4c73d4cc26cd35a8d9c9be6a2dd2ed0f9331b902492f30bee1392330a00d909d82b063ae4ac2948d021a0302047c435bb500673065023100a230ba484fac0c1e730176bef7495c5b0dfbb300876cb3b103e6cfaccccac8ee91d7743f1f11bdcd11d62606302d7b0b0230663a76863ade3d8f98c56a808392b63aa8b9de6dd019089d941f764ff266f4c951c734636ce31a4b5f54c21c97bda22a0302047c435bb500683066023100e05edf9e9c35c1cedfd7f8bc3750a16e2bdd45d683f90d4d8589b6f3ebdf3c2eeb5b6e5716874b088d50890da9983ed5023100b6ee048b62cce9a824a37533d399c7fdf4820aa9f10e3f768c487b31ddec54394b3910dfeb01dd12b64f4ac17d910d300302047c435bb5006630640230161258102a73fc02b8d1b2e8bbde9a3956922f0e5e3ee6b7724288efb09242908ad9d8feeee9fbbea98e2f6ccbfa788502300bad85edce8ae6794ba0b7951cea997802c27cb01678f401d11c80776bcd1419bdfdab42abe029142238e1b03657e7900302047c435bb50066306402304485470b0741cd541796800a4ec7bee067a2c52bd7d772c0a49c990d31fc117585a98a5f1f69569d56138a350d5b251902304f4e581b9dbdb9dcc4094d0d74221993a44a577a5dcbb0948cbaa7b38362c2d0e0a187aef2bde4283ed88f155558bc900302047c435bb500673065023063efbf190b64a6446715a6be2ff0c1a808cddf7fe1fbd477e67555a02cd9a74ed86bdd70693418d9409764489d811375023100c81f7ceaf7188f4afb8e22626d358d1b5998b0fa6523a52182660388045589470253469efb2ee993e9a8c625edb6a0d00302047c435bb5006830660231009166f7d3ff1da987565f6bdf8dc6dffbedeb98a3d890a48cbb2bf172023cfd50b8dfe212bb19df292bbf2757bbf0e29302310094c5762b740c24dd0c56984278c4f03c93249479dff206dbf9d22cdcb07aeec2a0bd8f65d1f6295f152beb26ca5bb9490302047c435bb5006730650230734af41903c74f62a695f03f431a86cd81331e3b760c7b8fed45cfdeee2a47b9161217e92992edc5d53f0ba83aab4d0c023100cbcef7c090a972821477bac9ea9fca9e6ca34820ca76547e24270e88d5b08223eb6fde0b6b10690c133cc84b1d31c4930302047c435bb500663064023030f3b1ad114521ee4bbaab7cf76deee2c4eb97138be383e175ebcab12f5f40e00c0d7f324bdfb1b2707971d5591b33a602307fdcd07d25e90b13fb41ea344f2ddb9baa5452d4593ccbb8d5b65868d23f413cfbbb854a9d17f82057adfdaa8f40aff60302047c435bb5006630640230014fad5c589c793482ed40c3ae750697c2c6ece387f2396d36d5e1267049438441cab2e33af643f418caaf225e1e9cee023025a8c826e274bdd18efd1dcfa08858b68f3808db3ede00ec3fc195ee8b002928ffea448f9834fba3877c7341eb98b5690302047c435bb5006630640230197e48bd88bd640205304eb0893569673cbd900e438c2f8fa8f0c156b333f821b571a3cfc45eef2927074f1e85ec67b6023058aad4285f5100c2f4d91f6bb346afd52c99d8377eabb451326b287022803db041935120111ad5bdc8c768e2df26532c0302047c435bb5006730650231009e94fe1dfac19214dd66505107477d05cf56a96f3215e059f46c092af0be71c9586b444c43d65925a647fdb1ed3bddba02302fca0e4caaa31a8e8d3e2adea46d5dbf5d467e796ecf92cfd15ea197136b05b4eb00afbc6a2c9d1341d48ff5bac426e50302047c435bb5006730650231008b762aa0b52e6b61fa50344bb19a1bd093be6bbfb532a11c4eb11caa88f328e776eff019ae5ed149e5cdcac672a8bafb023063ef75d8ddc56447118b0fd9a3cb9878562e9bfa143756f68ae00403336e207b1bb1beb57bc306f7b7768a1360f3df6d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cac83aef9547b36a073296ebd4704600081fec81f7fe0437a707c40816d661db33a69b6b52e20720cd389782b58fb65a02310094c8e13704852ecd9cc1df78b92d97a14f43d1a36c17698abfc07f6c77a780a2c524f5068612936abdf7a92a7caa57b00302047c435bb50066306402307d225224a9999d8af5852c268da86af3a1b5427ebeb50241a508860b6d179a8899b9dd9f63fc291be0a2b376ac99d40d023067267d3b925b20fb225a273c4a1651f84fbb0e3cbb476a5d97b47e4c83028450d37f6fee3525485c482c2ce80f19c6040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023000a4f1f9dea95c160808dc699768bbc12258a96bf5abaa2536dceb6f0f1b650960a289a458e48db5d63efd3e0a834246023066140c83aa6c03e121b8359ac0e7c167f990ed7ae75a58b17b016f92456016ec306b90353e5d82cea980bba38a17b9c40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023074602092556a50a32bb72d4a34be81ff555b2b637ca18a7e7b9e5c1bfcaa131d731618709b9c72b39a365965f923d0a1023100b35a3288714688ad5cf47521eceabf44c9af8e3b79f426e4e86c6b95ce2695250e3787bc09d7bfa61f62778ae42991b20302047c435bb500663064023016c0c611f203b089974f15f6c4a79a0f175930c6c80f3a3bd33e07d51cacb13e69a03b008d26c0594cc6babbe49b2b3a02306d44a6ce1889762ec4aaa6ca1902adab5eea2c21c7e83b79976992a57de13b25e807bb5cb656712df7a4ff4e85a543c80302047c435bb500683066023100c0ca0d18802a7a38c9ca635d4143cf594bf1fcf71fe410ee85290e48281a9b33c739cfced36d0cc7182d7703b07b4926023100c9eaff3b99bf73859f3b2ae08d6b3d67650049b2151cde2ff1a65617c456bf88547e7c0932a4365802f0c4281049ebad0302047c435bb500683066023100b67ad41c2899025e2b7065e25e400c343c6348185d6e94c38790d431403e9ff9254aaa4cd679935265d80fc0226f53c4023100fc98fc4e364fc90292770770bfc9e7e2a46f5a5b9cc3d0e90ecc5c3dd1505be6ccab1e89fd19df6aaf69b5639207c4aa0302047c435bb50066306402304a43ca0cb9ef9879a412e7e1a5054bc8c69da16e2bdee4ea5922ec397ef680c4ee9aca023ddaeba42403a8935bf6df93023059f00c802e87c8b5178e891273b53c4325cdefe029a6940f5c1ed80fa3bb7728beacb8fe97d87fbf46f1b8feb237532d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307a05ef0780b52ef12c315e13c21ba7b5768a48b4f26f4055b1f893156e505007e653eedd993c6fbc69ce891f7f493ded023100fe7a3e51e86d555a5591ab65ac28607e4ce489da184ee9c9ea93ee03cdf3d657edc5dbe57a19cfd295a58957e6974e2a0302047c435bb500683066023100e9f6c8f324322424d51ed18316570abdc7ac9eba6b6c1bd6c8d5686366828fbd99a3f6641a3d5158f21f78ca3106a048023100e41ccef2ebfab9e0ebc771056411226c9a85a2ec89f30cf7b3ebbdc0235c89eda50f96313318bf85698e70376a45eb890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100907fe2601afdb5229a08cc12c81ddf6bd09593218f1997e8099f80b2069fee8f66ba636ca978465e8dd7925a3dbff50202303c37da202b6094c50bef91e8e05704843439356cfd9febe22de4ed32dd9f5817a760fa131cda12c71e5d80c0752e1b1e0302047c435bb50067306502306b5f986e3325fccb150ef3ca7b930a7cff763e09f361bc85671e9b71d2567437542f5a1f8fecea032c5f58600ebb9f48023100c11bc427075e89e74ba0ab426a43027d9d2a14864d218cba09d1d68996575f313d4a8550bc03e3e3cdb5679b03de6c1c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307ad0cc55acc590d39729ca6559f9f1cc11e5be274f44e6b9945b5e3265ec0610adb22e70a59da4090f70755d8dfc8dac023045676b66e7af7549ad009207f2a6b081661dd3530a3e0cd0bd4cacda09031f1930fbf16e8a27de591aeb458df578007b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301b612240003a51903ec8165df6de157500cefca5142e9cea6a8edfa4abcf35182e296546bda5ba8b48a31ece6bca90d302301e3a2c2bcbd7c313c0dea3d339ea83b6eb2eaf34a7a8557f91e4178a2a9fde4e9106d1d0b01a33ec78471fb9de2daecf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310084cc37e43838b24ae9cd6f0cc19fd52bc593d80253cfd10aadb7c8f35b4b8fa81dc63a7451ade17b80f0ea2e29303d9c0231008cff06a7b0a5878cd2b48649a0919a805a80dfa00beea84f9e6574211ae9f4937ae3a3a4774d02147cafee07255b7f270302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301d5fe1d4da2515a5e965225dc07e185575fcc9c931119f5c87d66326c4ed81c75a7601d79a057652670d0a9f22f10940023068381e43ca22792a50b5ddfbb8029308fae3ac839d9af73d41774ab4a6edd2d80ce155ea37d01780fc2a871d71d0f5910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ed2511296b573db1cf8c6e1134b159ae927e2febda91003db167fa7dc1d147c0d88a63730a441771bf99a281f18c28d40230562ef4e3111130160ddc934a958e539035fba71f6c7298a0c902c25244bf9052fed11a8f3710f6e5c7af567192c739db0302047c435bb500683066023100c25c685cbdaad8217b707535065fd269e4cc52f6f3e38bff0356453ecb6f9849ebed0bfcb3262ccd833c6ef16fce3add02310089c0d33276b32422553113030f07a1202b875b4bf76f45353970ad0f53ce03f93035364f8da7b458fd37806a8f9c31250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009b154563303fdc9989d8bc9233f95b65de204e13deb7c3027a872b9ca7a44e6a2b5a8809b43a1f9f576c30aa10531c55023064e0f9a6d69a713490e61cf1d17521451f657c27c08fa69b6efb1dccdac00f642379fe228d55dab6593b1cb23b51c1130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230374c59fecbedc7a9596e09eca786183d85bae4b3200a7d5ed2ad5688b031c4ff6f3a13fa57e4e34374c8f45b249cb55f023100da5f76dce7c45b28aaf383fc15c312dcc76c2427ce4681f8b1edba2329e4c1f2f9aefb5c06087ab788cfac923efc51da0302047c435bb50067306502305eefb404258733b91ec645da2c6d89a2a6e7620279a143c8941a5cd6cfe1df3e2d7d6c7ef46123badca90d863d7eca350231009de3a09de5c8668cebdbb841fa77e04473f31b5f4e94d93ff343f3bad9ad56a5bddc85c1413873a3ad536c710926f8c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305e78b3fe7cc450332e8b03d794fc457056fbdb98286ba3a104c0fae01a8466f6b54a5e487c6ab4ce5fd905239f692808023100e855fc232c969b5dfcb3aa8824da55587abbd1cf5c555f74362667df1e6b431f3ee459752f79f6319658d1ca49344ea00302047c435bb500683066023100dee19d1fbda1f81671d70d1e50f8f24d1395a41db31732d390d849d389cdbf0fbcb4142ceb4e0fa6d506b1877f53bf26023100e648a5a81bd876127ef8cb30508f987d5de6a1862c39dfcbc37a68ec85e24c07b255213a8aab4b57c322712ce7bdcbca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023008f2667a2ac8ccbef466fd53a9b44278fb17cb4dff8f5c76016171abfff2946cc473d0fae30e79274235cde267bd320902305906420308bba38fb8f02b9514955c5e8582795f2deb0086736892949c0b754936435255b0373bc113aa260f3a189e280302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a77fea55f94af3cd86a491fb838677dee91618b33e32dfe869ef92559a4f50061760916089233d93de4a70acd06f5b7a02304f64e3d52098c50a8362ff5aed4ca07dd4d3db8d1e42938bf590316b33c91c4aa58cdb4acd808b81af89a8e188c87eae0302047c435bb50067306502310091b684f117017de1b765fa89e7b3902ee5de4f34bcbd2faf58364327bb4f2e843c3e8205a93c30d9116c975f241dd69502303e045ce576d50fa12d203a04aa36bb55840e6ce4920caf010f0701528ccec72b6bc948978665e6f495fd788b332b40fd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a4c69258be053defc1d347202c586a0716a224883c61a9a981d220cf6304fa14fc12f871107a6e8991cc2a8d12771be2023025d36d8dc19147da9eb0bb4b389e510fd29e50f18198b5ac9cd51eb1bd89e5e41f4b5b8f5df5dd9f01b5e4afe6fbb93b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023008aa1d0d2f3282da1dc9c287daa2ec78b406f4d8f600115daa56275a6703c12fcb3e2724085db48a6729e597a25dcf64023100a3fa7333d7d4c41fe70eb1b5e61f2bd83189e67d14d2c780760f5c23d81b00e72f3d8960108ee374cb481926b80113cf0302047c435bb500683066023100a3d165d495841d5ae4d824b5c6c4f44743addb3c9a8e959554947577271bf9658577e64f556a636fb3d61f22adb16dd4023100d6a2cd4b96cce72c47193bee60f8a19b854e7ddf1f8ad0fb11af0fae00b2f238192a02e3e4a98ec3223c88023c5a25c30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d4bef1077d311bb42aa85d7deced1095904c09da3cc2afdfb81d37732d5c4071dd34a0ad0b0a543fa8656b6feb0d13270230781818c92a7c628d0495c9d4aea0c92f2251d562eefbd18d27febd0a57e22cf6eafa46818e0fa4ad45455fe00519d1b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306c4e8a590f36b3730ca882238f4e30c480323e17ff918aa6c199cbf5a4899ce7b99876b17ef596f5bf6005a935a2d754023100a3e6721145763aeaf3bc6c7db931563bc673669723515a76d2e9555a09f1a9d133fbcca801ac044be1ae6be53009eb790302047c435bb500683066023100b41f5cd5276fafec7ab2b09e2bc7f3a20b0fcf75fe269254bdc40571c84cd25a083dd24036433a77360502f8204f8bfd0231009661c027f875d99a08d21f60fdaf079432bfb2abb1216b6a37ce3f4249fb58d287502342682f488725c9c73032bbad340302047c435bb500663064023053192ec4e4b31fa218f71995b4831bf876a2143f3e82fc66bc2f6d4224bb031ee74dacf4348c970bead54c536f7182f602306181ca4cd6d6e215adeb79b9a90c52d6ddb0af143882c12fe7c3b45caf10aa8fd618dc76bc5fa265eb1a1fbf3026980e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100880fbad2073a79f6af1b7e1cb0895d48cabbc9096a1694e611af1d9d767433451d7b3d293b42bd94067dafe03b1fd3890230046915a0acba04ed830840613c22e8aedeba51e4091a3b59478603225f323d265eaa0fed6597991ab33cf43c3ca5400b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f2ec9455799967c3a54b15390746cd769ea43dc2b43ed03c80ae7274e32004a7242ab4212b2ae47e2392062510c2ae8b0230600ae786bb0117593e34925a50a532dfef0664a2618f9b17ed2834c16206defab55bda41ed3d84ed1ebabb03a59fcf2e0302047c435bb500683066023100d6b1cb639697ff54c3bbb1917f7b9768935a6398ff32db5cbda8980feb0253d6523d9edc30d71269c2f51ea8d2131706023100d652b27abf62884f7763aed832bf2fa49e85c974259d1af5ae1328a5390b50e0a83c967c06ee32835cb5713d64b96b350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023033df7cf2c977701158aeee6c4a887603f13f38b8f798b21436b62e5a30dea81d5cc781a921ed766dc7642eff04942543023100b04a8ca7401df0202703460d497d6f073e1143f06eac41ff932f059f3c5b9f89a96301039618085222792c4d135e09600302047c435bb500683066023100ed99945ebacc678229db39b561ae4941382ef9322c47e7ba4aca0696716ffd3ed6c1f5a376ab92dc034226c67e1805870231008a711c492ee676a47212bd870bf9ca45c1ad7ed01c036aa30ce2cadea35eb29c4a32a81e5662661b03585d76597799920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307c71ec9e7aa10de8d7d31846f9fa3c53444fde18b03433df5b1fc1c96091fc871952e68a47bcdfa9ae5315393aee16af023035f2ee195a14b2d0eaf9b585634a3d66aece79cd605cddb97500617e7eae0e9a59dfd0ea1848e22382634250cee677420302047c435bb5006730650231008dc967731beb6a3bc6981eb8df1e6a9255abe3596774f3c4ba6445eca2cb8318a128ec0e7763c9ab23a924d44f8b70cb023033c2c0c67584e156a7b0b33e72bc26684c13a43effeb67c9f2163bf3e7bb9ee3e4f8b58f902a7cef69e85e0078200f080302047c435bb50067306502304a30bd376475b8a5d9176c0445ac5e54815433750a03179ed4b02f7ca657d72cb38eeeb8e553a251fff74f5b2de9ce5f023100f49ad92f0910c427734a574eafdba6ed7ab79aca3e916fcc8c2b626d34a299fb005dc2cc5da6818f04c93edf1758bcf30302047c435bb500683066023100ddedfb5decc40922bf9ad5ecc5602e39d2388a17910fb646ccd141dc82d607bde763edab61bb246cf29faf582f70a605023100f2e9f2206646b5c5e09ae8c0e43997723b15ce9c0179aee4fee3d842f11db8e1634007865b2dd6e80bcae680cd40222f0302047c435bb50066306402305de5d593e0a65e08587fd95da497348d040d6fa488ceb3ddd82c22cd2a80e4cf52761efb7c40b753b0e7c804fc6efc020230605bcbd4fd56255d6fcabf2c62d49e4e8b2660a0261b19faf81d8a160b10d8a2c4484c163dddf58588bc625fbbe4dc730302047c435bb500663064022f76c9095db160ef12dd8b6901368d246a1cbaa2fbdf8b40d8a8fb04505ebe938344a08520f95483d5f7722c3d6328a9023100b117e527657edef2a52f498d7cd2e38658784f1c08a3e5be845ac81e508caed10781917e20a64370b46c80eee5ddaaf20302047c435bb50066306402300892e854a5f589f6049459b5fd20624eb51cf6d9c883e1e1c7dccad86a90061184cd893ce11f66dcc6cc77cd8a90f6b90230216f0839b7e888edb6c1cb7771160eeb94f00e3d9e9a27e87d165686a6e555230248a25657a81cd2c8385832a6f6d79e0302047c435bb500683066023100c37575532d00fa01530843d1b0f33b27e88beff8601514843a4cf0fb91564077d23bd8a3df0858b2afc7d025e0f3ffc5023100bf2108fd6bf952619cc7ed3393399d832e54f4330f6516a90df1d699547a4e742ebebe1ddc60eb820c3c7bbe888080d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023058a9f1b8b79af905d759004214eed5068e0d47ddd7eae43ceb383ccd989873251d12df404a69bcdaed051ca52b14b05f023100bbf457f3357a9572944693b551dbfc128141da5a0ca2c1d034b364545364630e3ca0f207d6b9e02fa89fdd09d7cf374b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f2c76d7176fe2d03e814d0eb5554af8c2690d2742ebef3d49721a42d7fba441150f77e558c17e515507dbbe1b624f52d0230516f9f729113fd9f414de0c2bd7fba5fc5b3b197ff234e77d54b244cd712ddfbafa3c490c1a439fd60a85f63c5ee22890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f5926935a3698f7dc1377bd5f6cf6e4a4a558b1846f56c8ae6f7e9f4f9fe7bab44a3c3ef9263a78c264cb211ec5f854302304264abd496cd5c2bc2e251f7d8d100dbf59edd79bf96fe22400b7b9aff3f4cd2f46ecb6b1f13f9f01c984089d343567d0302047c435bb500673065023100da2f7c1f97c09a12d0c7fb0daf23da45906ede0327746d8afdf61eeb9259368f531ff75f533950aec08cb089f7d42b25023076ac2daf34f7e902bd1a89ac5fdab22ce854baaf45790273147e653faad5f031390411ed7ac88f41411d1500e86827f40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dc43b47fd7757fde8daa37f8c445c519cb3f824f12d8b55f28dc401329f88de9017bdcf51cb242b8e6fbca8cb7b32973023100979bde21bb7026b0207a124204490afb82c69f1d05990dcb34afe612357b1cab7bb04b8387e4879c8d472f8ee439d93c0302047c435bb5006630640230763edf5e367bc88cfc06002db0ed5d73f83155ab1fea48cb56f2b801d7a30c941e84a1fc32126ba285f95b5317e19f6b023075f4c8ed2d0da91e18d37fa8472015d3975816012790a75b62929c187b2b990207857a973b86a01ca42a084587608d370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d0d115da4a034beefe712159f912592d9b74ce987cb57744d347bc5e158b292dff2aceee59e3bf670c5976d4b9e59bdb0231009ad5291c96ac3bf82257e117b5580e24c2d8fe2b108052933552e4685824e43b2250cf21052bc04ce5b4360f75e581f00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023020fa2f6570ea3175c9506d707c2cbc19df04b338e592184becb60e67690f26dc5a939a0d3177c3af7cd25f0466167203023100ce3ed74f20c613ccec10bb8d40c7339e014840534fc5ce044d9bbdfa5cd35fa99419dfa28f2fccb8d3ad13547098ba350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fcc47890f775619c5c2ed71b91a58755b772e75416b17028683bcc9b74f2ff50bd859ade5d077707bbfc0b70062c4817023100d7bc3628cc6aef1bdd49fce68724fc5a50a239fd7e923d0bc45dbb01ca94395216c3c661dffb305cb7ea6d785cafa3320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100994ab796527e0ae27a7b1d9ecd50870d85e94b3e555397dd1bddec3d3b42683f838c3814fc07182f6fd5db16375296ea023100d0ef0311fdf915235e4e91a15e36c752ddab077cdd03f4b83702fcad7db9f14dcb17377d69c4a823dd3029112a64ceac0302047c435bb50068306602310090259522d0d4c3be36ba62b2dbcbc16543de52b4ed364be7617fbfa324b36fdcdbb36e833edc9da7bd407993ccbd5e8f023100861bc5ac0fc295d4a3b90f3b3beb17954cec68dfdc18d667a25ff96e6496ffc66575d90e1d6335fa629c28126776ddd20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ba67fd1d251b05c2ef7e8cd05e0045b395e91b8534c45ea6d228f4dc91c289dcfaab7291b8c25b9b4e49b6b4f722ba40023100e87b285453e72dbf7815210971aa3abe8d868bfc5f5815ba60e295e7ec81b81188834c48e1db2ce682e20b391b2d2b3f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023038a620d4348d38819be0921a0136b2e3ea7d9e6029eee8644c6764722622a22c1e627a25ba862dd2d9a23f345e215c8702307c0212b0c422b061cb3324af9716a26954bd1f4b36e86720b2b56fc0cff14b65a7704dbaaa81303a349933dc6a87e5bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100de24fc2b6c706d9de6276f515a2a3f509ef41d452793108491bd86afba314bbf71bc854ad90ecb095e4924e6b6a46f0d0230315a445ac8579d984a5209763f54ff87e4a388a9627a0a306f6bda9cb3a0db224b89389ea931f26ea6a0d0d35c312b7e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303591d1955f5cbf2f88bc1a0350e9c3748ad93c346de2747a1d19ad7b4b92d09581d83c968d4f34f9636bb8291d4d4590023007856d189646f0bd56d4004e251dcd089b2fab9908b0a3ad54bceee508c1a7b82f61345d548139226499129744ec0a640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c7fe05e73c067e0a362e1750945744a16072a5ae21ef5c3e3061dc7edaef14d41f268803442a5b756e3602c0baba5e32023100f1bd7092ccba4783114a84a535bce0d179def8d75d8056c9eb0fe9ad164683d8eb9676fb04921f49de4000845ef485b50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023001c2d1463128ec9ff03ff466e17ea2f8fb023f6a99eb2a20d87b56c400c9d27bdbbbb97b704dd797a17a3ff7640025740230753c20c4ba8b6cfbc296109657db4201293ec6aa0aa2cb82c602fdf0e406357a653bf9a348ebaa14c40adf89fe5077ac0302047c435bb500683066023100b4278e90adbaba5f6511881484b3f10856b2c95c315e90f233e00148853961556e86d661324ca279387a4f8aed83e742023100f85323359b881951f48c4eb9bd52fc14a6f49ef75089e58965eaa7269645c0175ce9aacd6cee71c2a4a6f4ffe36633180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301333cd9e2fdeae9dcc5c38bab836b4fceac2e7575ada804d8533df8ea1a6a5a979bbde5f73a996b55488abb9f1bc2dcb023100ba7d3c1f1749292337ae48c047e253808ebef0af8cc1673896f97c99139bf5fb8e84e0d0c8a5af3972cc20796d48df100302047c435bb500673065023100f7818aeeea6cb1e3276221c7bd8b88129d3142ab556ea2a17aec70220b4577bd812726ee78c5aa4e5089164aa7de500c02306e4b2cec741cabc979bdc041af7c5f3095cd3aeb431d6d2e5d9e18b038b7cc7c54f123311b364f9c8a60ab46c9e0eb2f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ff9bf82cfe6b043cf581a51979b9d9932d3cf05c2ff3eef23cba50e67017688b5e3b8ea45dd3186ebc8c6c2279c00b0f023100862eddd7fa2d9b41cce207d26247d351e0a264745c3aaf7113fa60284930aa38aaefc81b425083f5341cdf6f1be4da1c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f87773f6f39e82708b53732751e4abaec1e5fc6ca50ad34b6de212917af3867b891c5afe69a8b696d58875396d49e619023100e2e55f357154853c5211164a15b2887fbae86716a47d69863b8383bb43d69a3cceced8d022665316ab719ff6be1fb93b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100823a6b94f59a713a4eed73b82e670df7ccf72ba4cda87f51b95aa09e5796f87f9e5f195540f4913a90632eb23e03a85b02304ab222bf97e856ecb7a4508b489fae38372344de20205933a7894ddc17c2c945228b3aadc6f5200dee8718bcff6df6620302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300c38caf7b368121d7dd47d80559e291b0a965b48514fef39790d6761a0a3a94166ea26d27e33d11ee6962e403992acd7023100c368e1ee6c2cfd93df36f25ce3740700c52b6826c9463e949cb204316954065d3a25ed62bbf1bc7f2ec8ac42963d813e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c375dcc98ba682d733349628b300a3145a091cf9e2fceeec23f4fd33b331c626da381bc8f7415e569c878ce765bbab5b02310083be5e396cb22a1e2d44f848d8f0c72f239a0d7fd82d25989469cee2770a8b9308ead9d8b9e26bfd243849a9647c82340302047c435bb500663064023055ca0fcc71a3bd6e7adda793dfc24698304cec8da4fd7e554aec30135d0d99354eee8ba812b5dea6ea6c4bf317a7b4a00230682e7fb5d6dfe3a6c4b4f16e4989c0b33364eae8f4e0c1aa262f55952105ae4f11f7c653060947aae1cf911646d5b5300302047c435bb500663064023070412db4b09ed32fa9ba55bd96f4f173791471925158c5983d649a60f618faf39de1dc1b0702338966f51c7274a459840230748403738aac6aa2daaa76d67b48ddef65d33b9f4ee330434356abc2feaf5ada9abb859e7e4504b5d18df854f992a38b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f61a76b41236fda0d27ff250fabfd19b55034c2e9b0fe498e6f1956c5897409a7ac48bd0f988d8d9ebdc4807c297466102305a27bb46a01b6de0ab8130e76b0b90747fd22969e9b7c3b88ded2f6c68eb310876ea9698f3afc56a865b2da092ec169b0302047c435bb50066306402300a350af723dd13127da94b6eb5b291f150e22ff44826c78c184e121f86d458204cb20a9f3217426eb8d41c8a5b9dad5902305abc0a8e8173289ded27174eb47c70200557b58752b0b5c1aa3ebcde0cc04230b2522ea5149bbd52d0effbae6a4e6a290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b9e6fd54297fb36ac1a1e71cae063e9b3b96b6e3f76afbc09ddca3629cd445193224cb3764e69052a6ad1e186daefde70230709f802b096a5f28c5bf745fac7b798a0f19887ee195792c5a89d44536ce23b63d5462809b472966829d93dad1ec50490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bef5fb814bc81cbb0a816c9dd1c8a268467dada32e365300719c41a5c61af6f79fcf42975856c20d7c14a6142e355a2602306785a6ee5c2100e096c3b9392ee789cb0ef48810eebd8d54eab2d2a036f5a39363719867061a4f2e2705b950d714720d0302047c435bb500673065023100a2d884dfa731b24c5a8d89f353f2ac6b60022ba01e3c7f825c41707b947d854eaad4afebc0b8670def7f4508fca43acd02301b27a53526dcfd96c15db7b5f85bc4e4bfff8ce15fd10819e527318616a3f50ff221e6a2e8893caadec82f5dc418a54d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305f809b843eec2aa98707b5946f46e97caa3858fdacc2c3f00b37cef80e0e4e5ee8192ac04132594ee47b22d971b600b6023100b9d36c4d5d5f5bebd1373cd63f30e83469d095a6605d0cb8462b0528c28e642bbf97398b3e9769ad43ea1b1640ea714b0302047c435bb50067306502310081b2fec2c5a52a498d6445b2487cce9d860735b82381903734cbe7849eadc37eae9d78f78b759419d4c32e0cf298c9bb02300204bb078d5ef3a27105df82d1d6bf126cdfcdaac576a4d33f04dd97b7950ec4906b36618cc3bf3c1ee979f3c1fbcb100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310081072bc1a84a7e80c3d98d5aac82f3785920b942be15e840296dca6436b48e92cfda4a3e24bae76af8816e01d226a47902303fc156551878875c856967f9682028ff4701bd3dc44ccca2fdceecac0c7aadec82f088da99fa251bb9a3f68f8793b9f30302047c435bb50067306502305ebced17fde02974d3862fa221715ee5bdc0ccbc510a59ca31cbfa682512a89ef0136b231ed3a7dd47467506f9846be00231008f48642d1ccb05a82ad60d522252e0654f6b763cf1ffbd17405c7b156fde3184467e1554f55016f789979e776c2fb55e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100857b785b4145ca7f81a6fe999489fda700b91d8e8b45cbf0cda35b628570e9cb916e9808b08df677a94b3c2ff355a750023100da92b28161cf4cd3340eda8b3e4788313f38e0b91271f64b105a16f5f440afcbf984d48605704f64394d8fed2498d2b50302047c435bb50066306402304e84cf722ed5ecb22aaaf6f9bec0e301323eced931cba23b637bf5a12e1326c87c3ef0ffd12e74a76de0fa35c4061506023015f0983a01f3e276905f093bbfcd4f4d6300b1af46cfb805e92002de8f2e8790c620e60e60df98994d28b2b8eb45043c0302047c435bb500663064023004f790774bac86691299f24e9f4053c54ad6c1ac91aa4af33a005df55ba58817e118af3207e4267748236495a90b2c210230556fb1e3273bacd9752656740b6a103648a0db62f758e62ca64b624aa0d63bdc8bdf1f3f6b9372fe9a519f93034cbadd0302047c435bb500673065023072ee2cc634d38553e10c11741f29e928c1e952c2ecb3f0e4de0d4529a7208c9ac3dbf709083fd2a398dacf21c50464ef023100e41fc1e87f36d1b5197afbf780181a806ec3fde2fff6ebde120d0d4b9bed9ae765c6da28907f7f5dc592f0c68104de610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e3421eac1a8e9504f64d211d6ae0b03832f1fe79e96f07270c7f2473f18e54ee9876d693aec3bb278ebfb0ac79568084023100afc1378db198d1a87a44f8405cb9aaf71e2e9f54ca5333b1b04e360e27a7358cdb31190597a486e0eafc5a5745bb97de0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a2740d94001f3b6688da7611334a28d04e3956ee62e07401c3943648916ef50267fc51607e2384d10504ecb5a704654802300c071d8fd4e6f1206fda1fef1610231b00d383f24203b3d1fe9ff061501b38e7cd2f0021a764cb0e7469ea8572c737810302047c435bb500673065023100ea086f5d6adf3fbb1cefddeb74026bf12b7ada6f33d334dd9351d96013edc96138b1718664c226f272fbc518ff04088c0230656b06508ea4616874ea37018c1c332fb5c40390c1f9b9d63a7b5369bfb05de64ca0fc3ae79e2e6b974e95f786760ae20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023004a04aec0af8df8110ae745cca0dfcda2248d3df592a46197b75accc8016b1a3e541890a922ef44f7327770053718e46023100b22f82f84e939b7e18e8751fcecf17eda6925e4e11000a15e67b309822481d690cf013d7a2ae25f1442bfaa606fba0750302047c435bb500673065023058d02ae049eae1ffe37409637739730c0d17f3b0aa329eb39ff94c4387f8adfafb1615fad8f871071ea50d36a225bd3d023100805366d91cb49623aa218a455f1f0d9904d38b5f1b0a091c5dfa986616f30cef777ce8a984d41fc039b52554ba3f0dad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50065306302307b418d8e88a1b3892fb55ac610ffaacb95c598f7301d7143720312e8ad9edc104b411c1a2ac475032cff4b0b149ec630022f703609e923e227def82651681a3bceda6fed611e34374e1df87b725035256ec401a0377345399d9f353c33e07638810302047c435bb500673065023100d11e5887abe09eda4e9c671fab64054f1d542b5bf544d999b5619987ddf5881db8c5177bc6e27caa243980dbb6f9572702301432cd24e2fcf026f8dcdca514644a753e0e75106caa71fcfd9d8d55ad718273d1a0aaa8424daed34a528b86d202b6130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303e3daf599716f22596d68483e06a7de5748842cdc9b6d6c28ecdc599f0b35dd8a2d628721dbe38b3665c929e9020499a023100e4ceab8d18de40331cca289518b178d8f42364d7e81a92d3aa68b474987ac5d04527c82626cbdd40a0c70a2bc183911a0302047c435bb500673065023100d32d0a27275afb6d9edc9db0afdc875bddf320cae911903c85bf74a15b2aea0d85ce1349148bb5fce294719afa00c1b602306eba96521641112c35873bcfbb84b1026ddc903d04c36f41a42b75c03e501c473074febac1295cf7072902ffd72aad690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ba7f595760883da7a1640bf8e1dcea4dfbf352f87d70599ac697b20ce3add2e57603ce2c3b9ef34e421fc4edcf96892e023100b69c29f661223f82c5177662541ecced0d20dbd3c06e68154b9771e2f697c7d0ebbfebbb3d2f1349647cb252a783149b0302047c435bb500683066023100d4846b454911c164cc8b3e0199b42904083e12e745467d204dce5e39f868cad9f84cfaa86ac2298a196743cb26a92f36023100be62b6ba92a6ad95b7f406032b679b55c9f12ac85c2b512550f0af15386d3fadbb783acb78efc4bb5723eef7db32b53a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301dc033f47574957401894b569c2b52c964558c326726b9d50a5ba21b468ec119e889b36c67b79b17c70f3fbdc673c367023100d4ac6e37a0c1ab219ef0138235d9686daa1a4aca675e36bdee17f60e652a550f4fa5b6bc831b61c56e2b0c5d199047700302047c435bb50066306402300ff9f02d2570ae14636a25f5b3b277e95099a9a1df5607b299c2f62a3efeb7a6e3282fb194d70cca313c73ed002ce42202302270ba52a593c82f361fd847d932a7a46bb593d12838606f07de5c5ccb6c44ce10109f3e9b4329fbfa8b126570eeffc30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b704b3757f538680e5aa1f3c9016253f1dea0d16ca2918b27c5d896975e3c2c26a60a90ee3e5d190507d019ccaa270b7023100b389d8b0d5efaf8c932dc405398473f1a30781e4d3518b6fed4285ff3231895bf2bdb048a3c9cc56692f397a65ffbe0e0302047c435bb50067306502306fb42679ffda73e962742378d884b8d3fde214b864225b54e08829c4ecacd9b1dad83ba28d016ef9bb3a264c1a85dfaf023100b933010c1019494dadd00e388fa8364a3d884b98bbe63b67b46cc09ad460210085a2fafe7b170909d89d33abd1728e0a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c4c88d3ad98968f623187f719a7c9d62de74302b6574d7e08f677c2ef604f5913a909d9873c0a8b872720f81e8c199d30230368d9c250956055783f090c198fc1ed8fc2bb30e9e3bfcf74a8ce0c4a1f08c11bf5b2e3ed00a6522ffc7371b4b8923e90302047c435bb50066306402304b70592532d4abefb52c756e62178c8dabb3beff9e169c2fd65be49a85e40f9f4f15e7e4f68348be4456892fc222df360230386730172e852a101f3cd573603fe1448b1be13a8104b61347878ab07e4bc793a7c93b3d1a14fd6efe9b147fda31c9790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100aa8b641fdef4aad960d7b5fffb315872af8de7b1a38981198c9f5ae983f4bbdd0360e060b6dc3f45098f6b302d6672a402304796d4b201fd4ab68f5d131ced5f6256d250ebbb96ecfeafe9929a0a0c3f2f79648cc00ad1630025e57d0aed817c9ac80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303c58be39a8b941c577c5492ba013dc8f2731d7262303a5a659daa2cc8f599b2ff640e9488102d0ce757f75c9c4a962c5023100830f255db9e6d87c36ff95ec8e6a07279cfc6b5ff6110624ac7f8c349eba50607ced4ebf3f4294ce075ea945b321f6910302047c435bb500673065023100cd62e30425bbabeb9d8ac99b77fb32db58d3663a184587ba0b781f39493c8d36999cd61c271f1ba66c4a708779063d99023078c29a34eee51efaf5fb695f89225c065bc1e27ef84f4cd1d55c39c14fc4349bb201a7f98da7f8c9e1fefed4042164980302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a4f754b52208d05785ba8651216f5a1bf292ba73182a831e72a6325400cd92d9ae76711e404abe99463087b521ae4e6c02310096af71ea352517c15d46765f250bddd64e2e853bef3f7da0fcaefbc7f5143baf341b5ebc584930d120e0ba3353dcf27a0302047c435bb50067306502302a885943ddd0d814b3380fcdaa177536ea06c86c896483b7d777fc3bc76061f6ba6e6771ea96b53cd3bfe656be897c64023100f6c6fd30c6a969028d66e6e05b14fe5508fe9f7f2d2f027606afa5b0c47c17c1d8359fd2b5794d93456aa8f9b9d2856f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307abd5c2901819616ea4aaffbf3c7bb0bc77b90dbe4969e0f1c4679ad4bef8615aeee4b4bb5941fa1138b630d06e14e60023100e1c1900c08a46d5dcf54cd77c898768696aa254521902cfed07da49fe5107f4b3af897d33a8b7d483db7259b34a43a9d0302047c435bb500673065023100854e0756a0a8c83f2dd14f99d71705fb3ecef710fe2627a98a4d7cae0bc656b82c3b256d74322eb2aed770257627a81b02301f5aa1cc5bf7d30d2e748b2c70f00ccf49b77fd6acd461eab7388af314c2f864985146079820f0a6c71b843c65912a7d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d0208e202b7e262433062ef439e84d09306bd6e4928792a971ef05fdd62c4408cd3c7c985d2c192dea04d00a384a1c88023100ef4fdb44f2f3b3a72bd03ecf0388199aa00be2303e25b5acad980ddba0159fcd2743809449339c2b487575222159c1e20302047c435bb500663064023058f0635976ec118a82e3c8ada09de8de5ca9ebd600f80d32e6757080230bfc84014ec37cd48288ae598502813e8b8842023049df486e41c03ed9369f85520f5ede8e8807259fe410d3d10b8d7d7830d2c9201d49ba510359050d0ab0c0bc07c9a0860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ea4c076880e6bf5851b7dd94988a0b77582f28a83d60280bbd11b2935199d0a3aa3c8f533a59392ae9bb97b097076e9f023004b3545e53645c31b92b41d4d9c33ad124751879ba0814ce99bad459227b85de43781632206f5fa3ef46bc8ae69ca6810302047c435bb500673065023100c8261dc3dd217f5d2f29c7127d0207d37bc99ca4ff8cfca72718c68d1dba680fd19fb570018729b47a6a955be091db7d023043ea8ada7d64d7f7265dc83935aa214cc6fcfd5871385f586b10da46f7bc77cef3c192293c5a932c3989c5de36ff7ad30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100aa7ec22bc795d701e5403a101137ac463abe8e965383ef8718e8ce8a9d55ada86abafd2e6c0a8e8a642c3f84ece35e01023100bcc66954edcbace3beb3798648946a0b133eeb73626146515db03f114eb9211c00dcfb360fad95fa7ce095fdf09b53510302047c435bb5006630640230324b7e85529c60ba6679c982fea07aae0ad09795830da068f70f4e5ba6d1fc2c5b9d72add23c92488003ceb218bf74ad02304e61c2535a22d2c0b5e268a554daa5c83aecaa4a86ab2b22fd4805383745082271ec80720bbd1ce7524b0e05372238fd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100aa1311607cda1ec1c38a62f61ffe46b77ea25be0412f3c60949fba7ecb4cf8f9615afe2a2505dc2e6536a70c71696520023100a81a3ef6093cf79589dfcac36de7e23cfe6cd851a21881e23a9c4163e4e1570c0bf736a5d97e823c40706202b22b25a80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301fb3e168d8af85dace93e21960a052a66c0cd7c9979d6c4f6d498642c1bf84d9024e8f01d028d02106cae83b3103cbaa023100a360c7e1613cc4dbae27ee779923e538b859635f195afe4c450cb2354c4338c90d542aafe972804dde5422299e82422f0302047c435bb50066306402303f9f44af74afb28ed067f3426a7fddb17c27a719df8fc59949a5d71c89d69d83d9b1a8e18581e43c1ab03b17847c418902307a7a0b9c99736332b155e922acb6b2db0d7033c187c69494644815b3f9fd52e76a0a76deaaab14e39cdf383848a8e8100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310082ebb2201bc099d670a34809497182d8147143c5265e06746f054cf86f60ddfb0b84c2e8cc0028fb71b56e2b09caf485023100bef83a66f45a492f2f133fe3b64adc1a9cb8f2d33bb90d7103795bc44482a851e27c9b00bb25e42a0952a0cf80ce06b80302047c435bb500683066023100942856363402a63a3995354885afe93fda343b63b5fdb88d183b452e763a942d8d108ca19db57fd7e216f87a2db0dac0023100e6dbeabe5eebce30f9f5bc8674edf88bd308810cde5e40797d780d505b6bec37cbb05df285a78f4dd85931b9b704a51b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ec5be8d09e18eedae6368d58aa5a0d7f73690b90241fef38d5638bf29dd090fd27dd244cb7827c308b111cbafcbf2b17023100a1fac37decc472733de63460225ba7cb9046121f2afd8a8660d1d77cde232c69aba51ddae91eef36c5f63ed6e80d2dfe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100972b43b41e05109235b4febf3782013e643e0bbd316c0a2ace1c5f9a64126c207ad9848b2d779ca3ccf2e794ca2777c3023100cb8cf1c3a3326b926fbc462d1230cc3e895a727fb4cbcf8ae715c644d20a962a2079f2fef104596bdd902af6333efae80302047c435bb500673065023100d375d1c14e389a79ba93e4854107433bbbb9a7f7f483316ab51d46a97c1e44f011f7ff974c9f28683c17815211da984802300c3f9487401b9aca76894332b487ae5bd24072ff63ae220233a3ba49602eb525ccc6ea5da73e79daca7a39701e0fb1900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301f60a94ac7cbac4c8108634f0b16b3a0106e4b9d4ba3cbe509a57d605ef80d8cd06b12fe86c02185de2c99416104d892023100ad0879a45d73044756f293d5ce9af170db6b2fd532b78dc81efdaf48e5be3c4b612fbbd275dcf22e18366e81f40e26fa0302047c435bb500673065023020aed08b166115970216d7f2a3298943d7844220bf8faa18bf0189599207ea7141267b178f0caba2e6dcfe66a60233e90231009e0b57760a6e80537a9e7a17c1825402d70ea54b160096ca29207c560be3f6538e2e418849399b6f94019e6f7ca95e810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301794707456579cd0980407715ff7d032a54e0f07b0c2e4b316e5fe0523f759bede365d6c4debc251a30b9f13e339e86e023060580d041518ceed0f13bd6408b70b17c603e058cfc02d0962796c25fd8f43739175d17aeb9a4ac5b4ed1d71fe0ae4fc0302047c435bb50067306502300bac66a00777e92a2066df3cc1c9589b427c3ee2dd099734823a1e551ff672b6bb76f9eebeb9de10a388b6c24f4b5382023100e72ab21d19dace909776519219d105d903de5177c34c3ae7d954befea51609d519a6994208addd8e2351aca20ac33ccb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230466c0cd676c39d773580d9a9884bf90ca70cf8f1375969bbb4e933a9dd59fb6f11f420801bf175815c2a5c1524d78f58023100bbc0835f1d04e29af2bc89a749b87f8d416af05b84d33254288ccbab8f2ce042d1070a16bb538211793297b60622a49f0302047c435bb500663064023060632873f83035aab38784469402699f29f871c3f791288a67cfa3c8656675bd892eaa00b66c5dc5282eb997d1574d380230027e726e579747d357214ce35299181eff041160982871bea168840a37d085a97618acc4c11818aa5eea0ce3a8d6c1ce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230228e674180f833e3903aa0546373a5f1ef88305718149d919b5b094cae939a759f873954222596ea7115b8f2d12596e2023100988dea97e22f7a984b0f76e0a145d39a26c3b602adf0d3ef198969f05af157b365be5d30f7ba77c7cff888d69d5bb4a60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230611f69192c1322ffb566af452c57b892bd574eefd641a87e38f81240c19d514d30ebb0d999e765eaa8497682624a53580230504eda8e560241b2d097404d9b9b999a8dfc80f2db16d3cb9133de136fc867d34d6830f938e752ccc82396aa09ad55570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306e1d4ec6432c38d0abe93183b69531f0e4784688c3283a2faf0cbda3ecced965c7a7982d252d1e794e9352f76df3a0370230783a6969b9295b6f171931caedbb22e60b0cfa9d3d4b5462683f090542d136cf0ebbe8aa4f797d4e6538bf1152e4e4a10302047c435bb5006630640230153413f08f7c03a8b2d51900b78ab1083ee9f307f900725566120c58ff4bb426db698b05b2abee87b2f93dce6d28c3dd023014a4f2ca2769dbe973f44a6f7246580e680860962fdfbea60b12562b8e8c6900d382ee39394711f4b920e92e023e4d960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d7af0a245145fe96123ecf1f5da5a916a43589069a99623099e9a9d2f5bf24fb81f79728e9514e8d1db839e5a7d72406023074417c77c0adf219350dada4e30e92fee8d4e4e3a8c658ba63b3850900c268696868cd08bd14bd121b6562b3fd0fb3510302047c435bb50066306402306582b4d6c0caab991bccd3c6ebfa7c697e055f9fff979fdd669c8b7e9b2a9a52a27086af844e30b7875e6df5789a194602307c3d035ec7e655241fb8237d2ba499b1c8e10cb4b7be29cb3d73710f201dbf95f466e06d6412b2a96129a429fb3a7f5e0302047c435bb500683066023100edf69c69f93b7aaa1875fa01917c6c9272de9a333b71cd48752e72af66b81bf6dba3245bdede587fd099ea550c479cb4023100c11f2db68b996f95d453391aea9682dffcd51ce2a6386dc2d71ab559d397e0b65a1fba7dcad6d930fe1bf690c23f5d7d0302047c435bb50066306402304a5a9af0c0c2570fbbcd414fe47a53d0deb483099a1c10d63809361e890c772e1a70b79853c007ec3fb2a6629ccf935f0230223d25a5289e1be0d1dbf0e2e6c0d7dd4adf89aa13d6befba9355dd24383164b31ded03396f4e33dca138c6bac2bfd900302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304356cda7e36380557a3a1b8d93691f16b2c1377a9cd1b0e421ee2e90758561b602625c270decf35a60d3f7170b0778ce02304beabcb9db656d0bae6e587a69d316975dafe4275b4e6a099825f2df98023808590cec9640dc37c28033d10e8d187da70302047c435bb500673065023011aa99fb919e6d0adf3d05ee46eca5fa2db1667298c41f7976a26c509ce32e37bc21f1b2309f2cb22f457ac52258471d02310086df34b94062d43e43867ec302950700f72f3756f8ce72170ea2a3743c4180c4db7f4d5a71a4d1ac8781aa210ca6c00e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023075e5b57c3542417acf064d520518f35e3fba69c0129a2e6ae8789530412d6cfc3e75a143cdae8ea859cc44cc8623f9f002303266f6d55f8988bfbb0a1f7df5315f118925ef133f5b38d2a79ac5bd3ff7f399d62e0d5df0d81db7b5969d58349301ba0302047c435bb5006730650230351b04f2304822abbd907d171c62c436b5a83c15bafcbc5b150f2d88bff8bdf17291241246c3ef1e21a62fd413edffec023100a54cb9bab4f5613d9ec672766aea2ea941b16ff8a89ad01f2de6010b289129a52ccc777b01a906b2f9eb1ecc6f68d9c30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ad0b48fd22a3e3293ecf27a7debdb8285642a3b3e1240aa40debd8379f1e2b087955a5386d8d36dc58a79dc3e846755d02305d2a066d45d2b9255f85efad32a3926350995e8d2f840d66a72e845e9506ebacadeea10f4f77bc4d4e4423ef0827e65c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023022156d51e45b91177e03e86961724f3371eb95f66e51e74c1660962c76432069a1a21f9eb5258ee516f8615af184124c023100988bb8eb45e84f7d7088afc144a402238f18d115970f4de39e72734ee9d3c908b631457a57e2238936cdc943c96de3560302047c435bb500683066023100c492feb806530f5534edd894c5287f3228d2cb633c9eccc5b815c3b389c1aa4cb148a893daca365e4950d87bdc8aa332023100814802f2c6928b3a989380093c12c42f4fe6b636985bf06b4e87f70146f0c5a351fea7bfdd0fb4e68e48715b0584828d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b438d3c6bd5439fc7333307cde0f15e7bdc3c1df7c4ac82b69740d60b2836af83b06abdd55e28cd60ef43062d59a08ff023100be713944b4f3391dd55e934008e26e2994da321764d565535f332ea0f4bb6c7e440e3a88606eec99f72ea6aca9e0c4160302047c435bb500673065023100901456f7573f1c02e0d0ab3edf615f9045889528f60b7e565098e832584139155de0dd63e4708c55ce0d759b62ea62a20230567d021b7769296bb4085d7627ab105d8e1e2b6f34da367a31e9016a5a1aed83b9a191cf756261a7814157c861e44d7f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301577c6e11800852c925f6017a828f0d25d7a466dadbe2c6ff9713f1a4f20f1659113aa0feb80bbd37fa1f5d5b97366fc023100b6d497b00bd930c8aecc6572f673072177e0f6454aa6a8d2758300673833d801b8c1e1275c71af1959ab1aa96d1b289c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a1b9053cc3fc46f442a057b60b579538c28914b273c8627258d5d800a539892139ff5b0a4cce6bf800c4d9d66a1f492f023100dc01e897ee53d949f6151bd2980c96dff7471547f8b12ee1881b91b1b6263f13525b6dd1e73d6a0feaa77e7ede52cbac0302047c435bb500683066023100f72e25b7aef417ce66058b64c623ce09911fe99d386e3366dde3121be5ab88d84c7adbd4d338e79d40ddb5741aa1c943023100faa4f6de7cb37ff5582b1c945eb182fab379ebcca49eb4d79bb684d9d6d3d001dc37742301ceda392ff2fbe2aa2eb1b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d4d022edf67dfa6461f0e84d8f62ef652347d8119802f4bfe34c549915b7aa8a083b1ed34f5a49b4dcef88a29ca5e28b02305b7c98e11cf0a8c3f54b587e8598b54db300c0341e61096f0174ebc12b47fa921ce01a0040db64b4daef551b6ec776cb0302047c435bb50068306602310082b03448619aebe1913588ba7953825e0843704d48237e5a74199e775a071526aa7dd2446c9c5b43c8503ddfc0193e1a02310087a9996ea358345287edc3443d0dde3f70d71abd6c69710d792114f1f8f5860ba0afa334f2416883624a4e7fd573ef0c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307a84904f815ac6ac3df9a0dc97fc52f8995dfe4b617765d521f28d138ee74225fb72a9872c43af05e92f55e77950883302304903261e5bf25c2b1481f59a50ed520dfd10f0d44eaf2889e895f62e68ad89d830002be81a573ef9774121511409e9e60302047c435bb500663064023045508d9f0cc7a0681cd677c18045dcc94005feb6d9cd815a4e8dee795d49c4382fa10e61830f98b1c803342e9376c127023065370f1b6b57e968273f2aad57e7e8c58224359ac83e523890fb314c591fccf6faf5bcad523594f38e2216a56c81cc680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301fed2f583451a5958b445a77e4a8a3c5865827a3d38a1f3cea9672473fbc9bd4f6d2d2a3f09b16f6d0af1bfb7c0af2a50231009fb401007b478e24ed776db96925242c20ef10007af4c2c5f50dc35d0b2973879a71b941f6311bdb83ff818a1add46f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230243f7ce014f17acd380150980caf4c979846bcb2c2788777c88e368eae183e0fa43571606f30be749a4970ae9168bca2023100e6db1d3286ed82b418bb30cb131a2eb382b4176076bbdbd0065a57a293dda264bf728737e4e2bc57cbe76ee76dc883e50302047c435bb5006630640230442c43b3329bf46ab03320e654ce64ff3643abfa78b6b01a405e20ee02e016d671579d02eba3bb9f7c82c6f3ff365cf902300ac170c32668870953faa5b6471b8b2dcda1cfee5927eb912d6e4dde43ae40735eebdd54d5c12120d1fceaf025a7d7250302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310092cf177715155d471d70d83d914ce41210f25e71585e24476676c281315dbf14b1b8a93b5e4753d75146ead01ea694bb023100c3f762bce5689177e48a7aa602774e30b24e4a1c730451b86f93e45412dbbb8089884fe71a5b4c8fb2c0e2c6faa0cfb00302047c435bb5006730650230522390992ea39d07d4817c700ac9b1afe0e9873ae61fc826b1978a42cf02044da28d439ebdf545faf1e6d02472edabe302310087a3399ea89974731d0968c404e7454e7391c79d8264d2232d7d7e5835d44a3e3c698146d72c5fea0523c0666193fa1f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b70516a79a18d3d14144fd98017f9cf69fca42214c6b9a6c68bf049dd252892f018d33d3e76ddc0dfddcb04438c68298023100adbb07f9a485f723ba4b41c96cfd2f867d329fe42b7caac88f361d5d76d2c808bb1e3b8b1ca53cf6d2567caa2f817c0a0302047c435bb50066306402304969bd8910e35641963e87529fb84e7badf09018d422b7f6e37f77cfc0afd5cdcc340a78ac6e011a1ab561a5e8301c8102304a33177c17d68a8ba7a3aff78b1693fbd187e02732bc011cd0758cd8f631c9c08a414a4ed3fec5f5b2e7441b561999160302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023073f74389772a5eb8df49b8391dd9a37e2c96f2d0f9ce26f4bbba9e0c91df0e3e0044462ab8e17376cc8e58b7fabf21b2023071581467bce51933443321afe5a8de784b4144f7d6bf1a9d73963844ddb2faf3d1a8bb1fa2c1482199b99f449f8e18560302047c435bb500673065023100df298be85c871f8a1fdae28eaf6464615df7abec7ae14ed77676959c1e2836c20af0b9c04b5e484eefbe61e8aa913d8702302f41da38811489a1d2c3fb4b95cd6066733ab2031d5d0d8b2fdbd9f43732e9976bb6d4ad922977e2f0042a78d1565e4b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100be71fe6af6de1fb914afb9ffc7b6e1554df62002cd6e31228f0cf5611694da1a2afe73662fdc2d7f94cee7debf6b3813023100bfa3e38f7897ead6ed0e4cd1aadbfd6ab9986a739ce7dc69d6493e3607d5edb1848b24a0f35d5b4f33555fb6049d48e40302047c435bb50067306502306b9d3e4a1a1afde51cc21fedcf81da00443a81bea9809b39c4cf5d9f1ce0df665863bdbe90e86fb54396361655ec6cd6023100c6761327dc59112632e0dce07fc7915fe8b28986558bd90deaa9078c6af85b68a213956412817cb1ea758a96b1f9d38d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023042a14b8f5b24f367b6d8f743d8cdf4c6dbf1119eb8ec6a785c884b21f254cf12b92fb0682e241f893804b44720a14738023055767dcfa6dbc55af4b77c7ffa85f29b024028bd429c3f080c98a3bf769336f5266e1c3a6aa8ae3f3784b0269b4b54f40302047c435bb50066306402301843cae4414b5f0a3548615ddf2627619718c02b5cef03f96f854cfc6599e5f60ea0a8616ba197a9a27279bed43ec94102302c1e64da87757c9b600d82a80f830db90d04dc85b15030092ed741a956d25501746edf1fac43480eaae8a48044aebbc30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e1da1218318a9884a83e14761d2b12a5a1c8ba310a365f7b421e76e4c250325f27809c200f54f3f2ce8298ad3b5af2cc02300c18e63dc6090487af67519546ff8385aabb4aec77059a6198b4e75cf2cc45a04ff2e70cbee95aaa7a7349a0719e4c610302047c435bb50067306502300286acf0bbe62c6c2d726dabe173b2562b777a80ccb6c1f5eb49deaf344ae5af69f644bf0e18bdae2b9bb05de2e3a710023100e7c16920853f492650e05e6210fdb5d49eabca4a01aca84592e93ebd1c6d2228c5e964bdbc4326177f5c297090764ba10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310096efdcc55849468967aeb4b3df4ca3c8b2c4ececc55f39e7509ff65087f2bbcbbe46e309b0b24a3f53e22ff897b6f34b023100e2b584496f5b7b91329690f33812ad20eaa9c50ac3b213540fd5fbe1eb18d9995211b5fdeb3ce76ff7720648291dc10a0302047c435bb5006630640230688de96cafd65a18a093cb38196b25b90b7a5d53064147b843c17cc82b816e7bff9a54922bf2dce36d1dc87445a7f868023040c06a2fc2e938e40a0797326c9d04f520cded164f6e544761f66292545fa41b4b9831637caafa1daaecf46be291ceb20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302bfc614ac846eca9080f1eac74517f32433736bd4595814bc9e6144812f784828a5a0a2f2f54146bb8b982a998721554023071130f8e221afa96d3956ccbf28d9a44867e7006a7ade530cfe201ed0fa19a2f05f3b48dd2e019de45f3190c7a33f1320302047c435bb50067306502303c08e203e1b4dc79a96e721142218ee11a639bb0dd3832332be6effff5543452ee05458d011328d36226602b099c8e1d0231009f5f685b63c2cf1a2446f4860104fc8c05ff709dac57ff95e413e1012797415be9c913771ff0b6e08bc50e3d5b12c15b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023010169b9fe4af9572d5d82562a455e6432f3f8a02673d519a72e3b9eeb8c51bae2832e040ae25d8a711b85f12cd6cb8da023100aedcbc4c94b3ac7bc3af601e4e8b255ce987de3e3741dbd91b97da333bd3dcd3f05ae027c7256eeeed7b0b2cb6d84f790302047c435bb5006730650230044178dff55040ae870f53628ba5f2df58a846291688aff2f7bd947569dcf6597ba10b95f40fce2d807c8d0608de9c3c023100ea4d8f29ea4132654cb834fb726e88fdd34dfa12032eee93c707a9cb48239251810b6934f8efb991dd8cc5cafa99f1b70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f5f2c685bf0610805968c3f827a4efd7b292fd32ef040d22af310c0a82a749b8ff937b9c6fcfdd54a0c0685fb1f680b8023100b3f17022635ea7b2a352988a3896747ba4710ed824ffc0aa714a7697a496058d1cf5a15e6b9991b81c72c3e3a57fe03b0302047c435bb5006730650231009cdd3b4c3c375868e31dd14d622093774434caa85b8602dc137960b1e4bca03a789cf83713dd071a0919f6758dc67c1e02306544d3c4c2aa90be53c279b0a882a6daec02358a4de2d38947acc2850ca4c71476d1237dc96a72d9d634b09a10dbb6e80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d96957ec5711c7ffbfe9133b898549c82f5d78de04408d18298b3b1f1647c910c35b412e045bdc1fc32f75dda39ea73f023024bd57a5709e1ae55865def1e6a0e5cc6a15c77fa969dc9a1a44572afec02d1ba3f5f4b9f2b4b8900663d07db7d8f06b0302047c435bb50067306502305aa8e48598154eb293b60b13d3ca9436d6ffa9f07be9cbd04a400e8a9330a7475f8f7c2d86570e1b51b4fe3fbc08f4db023100fc47500cc13a327678261059d7a8d9076e3576aef6a14fb6c39e81594130f9360644f5d94970d0b15e7c4f982a543fa20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a818e3d37e95357fa4128119e79d01638c93ec8db9fab69a04bbca5c9fe75262e2ce281d30574a8a99b100913cb699010230296d9a7922902611ec581ca5d08a0d5644f2e30157c1af3e9aa6766f7c1256a9cfb0773e7320369964631ef5053245220302047c435bb500673065023055f8a4d34f9c021ffc9d439b16c0d8b6cf15269c4a98aacd98f678413a3bd3a6a08e71c5a6ccc1070e2440af14c979870231008cd7e029a444cec29e36b90bd36264dd16fb8f877005b6f50ad1c5b633e8faad503696319f0b6bdb735b5239284e70820302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fab11b2bb597d7a47756e274dc3b40b80d76bfc4eef883d3bcc7f34e9983456f23cd2e179ced754f19632c95ba6bf4f202306b88e9b4fd7596cb730b1d10075917c6ae8e34aac0376c7cb60b4405c3e299ff41d036b6e091d71a9828563f7e51001d0302047c435bb5006730650230142e1e7b090837ce574343c9ffb6aeab5c525244ca415793d97091f23a41d487d3f301805a1d298c76abdf3a265856de023100ece694bd4eebf713ed6eb6bf4033f7bed8345a5346170f567a28ed372cf41dec104a35b5b1f8a7dd4aece94ec372ec4f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023040aabc9728465741b214068689eef58982258c3d147c88afae87b338d9833b5d4b75c1b6337de47f0c152b61fb2db34002302cd160ccbf2b0fba729f41960e4c12e4e7cdd47440c967c16cf0fe66d2c825225d7f41cc9d927a9a5e4c5f7b306887a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300606fdd51f106e66064588974500f6f70c339d9b348ea45af6c419a5d088353c765ec162839a5951094456c7b302b5270231009e18c37842c7ed8c51abe0e9dc2978887a835dde00331ce71e022da07d10597788f9ab0d87a95494e6c57cafe09df6d20302047c435bb500683066023100b9cc897e546a1e144d940b43a52aa8c91b4600aadca022667e1a2cff3f13e9b2579ea74dcb861fbc1363bec50388d452023100df2333562481e4f8d1028b23f189a9d93c77773948a2fd47daac0d6971b6787fa7209f564c33a9b97fb468bd0ee1b0a60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304511ff6258c505bd81c63bd4e7cf19ce6301fc8e0e69382dd60202b7741c50bc614d82823859106531468ad94a0a9cb102305840dce82fc3655ba0347552a1f618b3138a5d28f02ba10b478a223e405e3020f0113213cc269cb36f11f1f5d8d6672c0302047c435bb500663064023054d0092bf82fdd93e168268af9a2175a6d0b7243ac2e9491658b96cd7a3ec8cfb53132c787418aa8c57fa80d886e61fa02304c1a61a98b59099dcb5c0e8135151f5677ac8bc83bb1625862341d336589147e2d9eb5b12dbcef19aed6fefa94a5790d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301cdc645ccdf39d243128af2c757d82824ec30215e9e41ec48744747205b60e4a852a72bb0542306fa4cbb36bb964752b0230755a71a0de674840af0cfe622dbc5d1bfe9dd9e0aabc88a4e3d52a8248270573b5daaa56bc6641b32545053192ad8d7e0302047c435bb500683066023100ab0b6a733ffd41a435888cfdf7764ab8aca697c2a3ce39f8a033ad2a12ecc57196e5077cc5abf5e81a93755824df4e73023100d930a5f0fe6e704bb40674cc1a0bfa164e4c425f76627162f1ddde7a9ec2dccdebb74e7450a9adc1540f4210d093c61a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c178b8bda6d72d5531e74c74fe938c80ad2ba3b5c3b60623c18b1c623d2ec113a562db266a7590eb61742ea5bb14a4fd023100cb7bcdf5de1d41a3003dd92f1d82348c6529a5089427daa4444e5b464d8f1fbb746c71a62749bacf83adeeb6e81ff8da0302047c435bb500683066023100b62b07e6df8313782a8052434729ae894e72ee6e4d439c79f4554be97b3be6eada8d6f2b900e19aa56a4ada78a8e4ec5023100f79b41b0766fc20908e064cce783e9f5aa7bc70096b2d3db2d4ef9eaee94fd680db0925aecb151a4249457831ef369a10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301fa2b9146ba88f56ef660022eee9e0f087dfc5b105ecbe96fbfc13d13325fe7732f0b58ecb60fdfe7c04463e32b05f31023100d380b177222d32522ff5b50d47b089f0dc39e4a3a6bac54db46275208dd6dfd7e0c27f8b2db8af20593b6c338ac5715f0302047c435bb500673065023100963de87754c15ca37cb64b743a92b1b9bc04d2f29efa08bcf46f6e29799817cc9783a530ae53939b18fb3cb59eb8da1a02302881fa561626c921d369dc23d9ab7d6750bd08ae64d877f60954b57251e93316b7d0d41c589c35366f634f3129d052730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310099f219e71fef2e2fdb049332e371224d62062239191bac8e3c46b65b8094fe2b16b99341cd9b734d21b4d04c23ce2b890231009792622641024bdcc12f435edd073c39aee87566b20f4e64fe491bf4bb4ad352370daeae4d42e0e3615f5fd09744d8040302047c435bb50068306602310098c27e8ea580b8dad982b9d61ee2aed18a2a84ccd899a55ee140a5e0cc83d5b94fe6dc8e98bdd1bdc178e78a4d99ca6b023100d3ba49cfbc2694df67e032b156db3f3ed9b298759a2b94884608d1fe6bdfacb126fd8bf10c5a035f67017048c267ecd60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f3c32515d97712898b87c0f0b344c49c39a05bb4db5a1cec34f5a88419cc00ab975f58ba9759ea2d6b237e1263a4c39b02301abdc7188cd6829748cbef05864330dbaeaa7d144d6e043ea42d10a5186ddda87ac5cb77d95204305b2186d1ff9e2eb10302047c435bb50066306402302c99b2777804791976698302425f8d663c6559acd435eb3780e3f4cf31975da15d4a010a0fc4a59c4a90f14724ef575102305cd154bbcc6cbbaca52b34c644f6bea58a00a5e59e66662392bbfd2c627d5a07bb051a1d415c52e588fce4f935f3a0a70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ff884a5e12bce568dab012bfef68f3d87a26f9767c34124a2dfffbb89be838c68d940044a352066bda417795bca8688b0231009f9b9ba952c4c9f75b06c25f13b53311d64d7616ba0ed565c17ede6ee840ecdc3c95676d068e82530e05fe789dc523590302047c435bb500673065023100be933b89ae80f482c965bb9ac8136917e5abab1d5525bee8e68231f4519ef9375a648ff3247db7ab7efee93c70d4ad6a02301ee73b818037e12633a36ba6e80cb70b9bc999d8fab48612fc2d85d2b15f34dc224a5ae508b908edad4a04d9aff6f4170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023005b061f86e6491622dc0d17732a5d9da9acf6d2e7e68c24dbf38423bfd73b8f6ebc7ab6cd3c7c8f8461ad7085a6ecc9e023014280b6177484384ddf5df72f9de14161507d66d5136574137df92a354cf56f9e48decc1032251aa397a935f5401ed630302047c435bb500683066023100f6f5d2f3693f7f127437f8d85c888d8672ebf1d3e7d2457bb71a1b5446c8fa54e9260a61283f931eb95e1828eea41c41023100b40a2b6a6672e3382cb5a72f701adbebcc1196b6e87d899bbbc2595aba90f18cfd2a433e0a87cc2aa4a8c6b59b0228d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ced43d1a472d0b4f61958070dc2b172e46f343146308b20379969cd3bc66bfd86e73dcefb7056fef4216e02bff734f36023058919255e45f7e0e09f44db9247e3602c7a67c65c39256754029ec9119e723f97c7fdae28f9847d8eeda0438241beff00302047c435bb500673065023100e7446b4d2cd5265b5505d73c3f264a13229547936024cec1e93007ae079506dc6c98fe9f892b3e50b1225198d86c9e7f0230798ad146ce86bda696893b06c9833d60eea656841ba8911980327f488c7c5058e391fb393b64c14d9a9b63b3f3205bc20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008db3b8cf9afd261aff5ee8773be934a8f1a04e2d004b49ffa87645eee9fec9097ff26fe6455e8bf8af0edaa2ff8fa30a023100dffdc4f63fae7604cce5af23ea790486475a1a945bd70cbe8773d93bf090f178f42faa0977819e451e2db81015f289ef0302047c435bb50067306502306f3f8d1b43980efded61e93b5cd1afe116a1cc2e0ac9046deca8ac6d5c9c315b9c7f7527b32e87c5416d5239db4edad8023100a76543782bea7657996ec405176cc43ce5877c76f4f1534629633832ef48e377f3bd3df6a41f7710f3d3f4617a5cae3e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307bae5a5da71b327c6074740011e3ecd796d3dd7f707230e9d2c03ac8a8c5b491ca6392522d68f13db5651ed69d84cc63023100a76097b734cb1b089a266b812b72aae1f87e2dfc846a4cc036de0650fb318d07fc22e3fd170306ebc5cb8e80850f077c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230629b496f2faf67c1e537207637806c3d35869cf76dfd69b3cfcdfdfb01f9bd98be179cafe074b8b8a81ac7675e4cf12502300d104e854cd7a02e393bdb671b0316cb53aa22025ddbe39735f8ac9736abc721b79b141767ef44c6269d21b452659b580302047c435bb500683066023100940667cabf8e38835d96ec094c7c8d410f7de3c576153624f8f7816261d9edc2f1df5414690d718f6efddfc759199816023100f7e26a79702cb0cc505aff3bd629b1c5d618a7257607388588329fbc73a56b91af4db6e1e9c988c37f3a02112e1b80390302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305cf0b129410fbb74c3a4cab430c6279b959760bea18d3ed0c0c7450dbedc01b5f7d26a713b6a72a6426703796e2184850230649429d4a7c0abe7c5dc0c61cd547abf0d8ee679686e20bf2a599294532cb182f95a5cca7911b05647f8d2c8507fc14c0302047c435bb50066306402307761b2bb3a4a275743383b5055566705b3558a6c91c71e499e9ecdc35b1e0780ed4ead9ee491190a2e0aa7bf27a88e4302300351a014b60a6f2af81e36fbc5e0e355bdb90d2c3ed5e760b156c76aa6b4cc6a1f15aad275d411573d73500decba43ea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301c8ca7a583747957a9bd704e7dfb09c0f020d5f3ec2cd49cb8b732bb2f9d933cc9b103c162d2dd326953d2b53b141c5e0230622b959663b1fe6d96472a54bea933b5a8ecee3e4393bd178610046481f43fc70de784acb24d21d3a74ad4feddf627080302047c435bb50066306402303ac5e780abbf6555331835fb27a75ceac948771cf61a3e5f08b38ccb393877413e082740eb48d666594f3f80329db4370230553264ba854fb8f2028d8275bf041c8d72305c30b29dc8849840cdcddaee9615af6aff470e9ab43cce3cbacc3d4b35a30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023054f9ba54a6c935d0b26d58d0d12d959385b6e29a69e7d1be27bc8b816df41975c861df425b8afb49777a0b706f06c3a3023100cbdc7a5505b99786ff7ecbc3999d393699fe0f32e455c21c51b535f21e7fc5ec0f7216a37f1cbbcd14e94112f9225fb70302047c435bb500683066023100bf7ec2d4a50a905fa392310d2864681300af04a3d9d7cc9d23cc42faf7e4333c375ce121b593dfec6406e2cf6c41988202310097b5b155c3846a4ccc84a84ab15d0507320bd72db0fe51e0a1b43c1d92de50875418dd52ac8cd7230f5c18b7616fdd720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b2dbb92357cc422776b74cfb275d5cd4493bde20ab26175dba8ffe8f16ff35aab4a374fa6972614f16061cd5d5f9c6db023007df1a694b4d9664ca5574853c619801c0bc357aa303db2caf227bebe4d15b7559218114a4d44a21f1f6860607bfc6430302047c435bb500663064023042091768757f4df60b5742c65d4a5bef8f637019f56a53d705e409f77357eba406c5b3dc6bb02f54e22e8514456ea01502302da7d30c4a119dac3df3b86d6b0f4b6728393d81a213ca650b07b9ffdab26401e680c2fb5ba61287adb465bb89051ebd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009fefe991f0c40651eb0d3a6d942b3d0c9b895e24a9e80683af15f0a6ac0006281cf683b7865d545fb1ac6e65dca8095b023100edb7c9c92dc5ff587153a1d6b273029a3483b95b98d19cf5501f26ea84866f1f0ca0c6ed2d8bda337da53559f34fec6a0302047c435bb500673065023100925cb642bb9acb6eba52a5db4b192999514b5c09e6fddbecf49304406a568a7f6e774463a51a367ef09c9860a1bfdc1f02304569a0da688fd2fd3100f01808944bbee4ebb0b5109b58f4c478d635442e4a05c5d80702dd9b30396eb496379edd732d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a121944a62c7fe05d379ffa460b838aaef1e827cee12b7ef92a8e0678faa96ccab289781522fda0af8e21168b9eab070023100cfd24d4165f0cd6d2d2e30623aa9ce35b39fd856b5705518f7b300f77510454b6f6edefea52dce083644496982bea27e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304585e79053da4422125081fd36f689eb67b2563476897a9ef34629b77889a43bffc6e26382e4cc43c91b4287ae42bd70023100bec66381abfc3ddb325fb777a2a6b591cd60dee3d76c249bc1b3eadb2c9e46f4f1d70f3a4aabc2b9ba877727abb678cf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dac99412b08ea011ab203c9f70af8aa8ab77d4b817575be9b1563d472fc1a1a4da4c42079e041fb3b67add5c38ebd07f02306b69c8950374f0430e268738f71e169a1382dcb20a94e1b281f3b1bc027fba3363330791530f396b4387e68f3546fc400302047c435bb500683066023100a8d9db339ddd0e68a04c6ab10742cc1ed022f815c097341c7fde56403e8d0ad3f30b3b3445a734a453ac585bfea0f453023100e5ee21fc8de95eea7699d7c5cd45c76f334ee78b4c609626f8d58c16d7e07fb7855502b81f2b970a5b84621d78f5e0850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230403f000023be2540180ecf5997ca2044ebbe531c13896036c89840eac5b78389b008b93389ddd817599d5f4f4b1ab4420230144e8df711e935cd58e4782f5c4c679bd20eb25e94aacd7d23c7d4d7183091e6cea91d64811d2ab1946881c4095e52840302047c435bb5006830660231009bed477c54675b469a80a6cf7ae5568b0f6f801e54b35fe4b456c0e2e835cf9d4d390878a77699c4a6a9ee99d5af3186023100d12619827a4d1d3cda747f71f863d6e6a38d0458a0f54d3f8b9f375577065da9499715a3319c4c2529c7bb5e3096e2d30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230145235b109abce2551821cf9e5d32195a61a95335c043fb340aedce77bde732623fa9f5a4dd50213b890c34843313af3023100906e800b98c0d6d76b52f28cb2dcdabc66f07b275023b68420cd335721dd6c3e5eaa72ed31e129a2df65b6186d0573960302047c435bb500663064023017b8a0ecad367bbf7264771bd2ddd9ad155e9ed79311128c77bd4ae0806d2aa7065c874d15e730a0cf31ecf46908f08c02301ca644533c538017970e1f47fe17676277533fbeb551a0c3bd9549ae56b0eea54b400a6e19dcce3d0975a833de5289ab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cc13d9e30e6b7374e820b2a95d12e85670d5c597a566ca0637b49d10676ae1323625a9a86621081a09efbb23fb9d796c023009f8ef442c5165e2d9ebf92a82bf85641f9cdb2ed9a077ced37ef5204d6864879b1742130eeeca981039ba797fde4ee70302047c435bb50068306602310080ee44632afc13d7afb1c5501aa36ca103b8415a4b7c4c4e35d5eeebd829613468130d7cd98d5551f1cd0ba782e24fe7023100e1892e2315d880187a4022bb3c50a5fe4006b324fdade4b853197495910ab6e141e4bd9789245fc03b83a6431d26ffa90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301ad7c409cb748b2bae4c4ddeca4b9ef72fd680a7834852234dcec98641fe94fd691ed9db548476b3bac8738957b6e697023100eb2c324d578128cf01112d5bc579e429b69e02c3af0f1de72b51f0c09e52528cd09fe265f173f057fba0bc0c52a9c65e0302047c435bb500673065023064125134010582dfe9efce161c8326c6a7240048bfdac02d65ac825bd2b2f9f6fba1507d4a6ca12a1c8f5524a300280d023100fc5e34fdf4ab36cca06acb61c46cbf1961b5b8c68c05a24e1845f73d579d2a9c3d76b28a0877a831a0cfaf637f140b290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306c93dcf0a15e1fb95d2ac00417a044014d950a3a25e78876e04a1f22875bab4fe6be0bf391bc28e113927847692bf2e8023100a1e648330e7ecbebb13fe4ba787926460116a155b24c19e516c810692b50ad6b4be221c826c6537d20cf1eefa3744a6d0302047c435bb500683066023100f402ec6b414cf43a12e3057e6ffa64dc4841b9d60f775f4ffba8def8f446eb7310147616e581d9ece7e69938c97bcab9023100bf425620c620e239f94160eb9fdec146bf4cce9a572498a501a4d16a9ae999beaac5f481927c98e5681da7f9b67f6a9a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cfe1534d1e9a7631fbfef6f35f291d900f85c142e249dfb904cf842c20f3bb9e8f70ca64bff02cd496a6d99283b972d802304c290304271bb14ac8b042ca16bdf1c3af5cee45d52836de66f0cd33f32d15c5501a267a94a0c52af21fc07cd17c40a20302047c435bb5006730650231008e3c2daa6f430b5e57b460eeca2b02acf1a61747a193d436524457b81ee7a0fe8fb2185a5683ab1376ff962f70e10e190230109af9a0c6eaf39bd8505c9cc9e120f40045a925f8932be99d512a5c38172b516280797fb75de61dd48b5ad850559f710302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302ae7fdfd7bef739722dff38ba5891a5c73706d363d488e6bb2ad70ae9e11e609c504d301696f97ee5c122a0d7155893d02310086debddf60bf6dfb847263e7e7ac16b5cfc8b1ee9a5ea6849a544df5c36404e06339d2a9b4643f24b9c0472de1f6795e0302047c435bb500683066023100efb60e493895f3bfcf733eb6dceb0cec2cd7debb4eb5af0cf0c7f86e5dc3c1054351fb9b9c648b4a1766eb0b621502b9023100ba7852328b5fb9b5456f0404a2ea00ac8dd9f34c74d03211388af6a9efb45f7dc299ec1dc36881ed9433f2ad3b4a818b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008aba44d93333fdb412f8933b0f474aaff57db97e5b5ec0c172c1033b14e9661bc51b022b075480cf13f6e053ce882b2d023100abd1628332f0384807b12eae9824bc32654c995c48973589565f0c02d8dbc1ebbdc936abb7af946c5bed6182714c51a90302047c435bb50068306602310083d3206854887d937b67b3de3c12e02dcd4fd8ed6d84128641134f8a2a3374de4655cb6a32cc3286b586ecf4348c47c8023100e31b231f89a1f0c847afb58e0e26b557295dc27b9051352d23c06e9c493876671ebba40e1cb4e5353e56b916937e44930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d1ec0c52060bd1ad7a6a24cb7713bbef570337c4a46fa523f173f5545700c4580433662e83c78bf8391af5455a59a947023100cbc573301951bfd56c696ef7bbf849b09c289318e39fb7b6d6cb0a03f4b6cba2ebae51f4132547a4cffd7f2c6cd41e980302047c435bb50067306502305c8ef15b4cbcacf8766ce906d0f662e8753f189c9be7535075eab58595be1efb43ab8b531b964667f9a114bb002058c9023100ed5e071ce7d4d61f0f2f0e1752339f20bd382383da9ea41cd2d22ab81fdf87ea92b57cdecdefaf17b43da68c9aa027e40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d2c9aff91e686b67340625509fbab4ae7afeef3db4148836ace2e11b1f35097ffc7d054b33587a296b8096ffb13f96c102301cd494df43447e5473baa366476dee99e20516a87c78056c1525ec55fa4f24256675f22dd931a17c9962434849df920b0302047c435bb5006730650231008f12283d8d6f134133f4ed3704f5aa5f0335c09e4057dd4d8c015d03a161906bc80ddd8d9d718c5f7367255b86667fdf02307dc08c0898259977ae4591ea89df6aa0d6e411396cdd5b3e99e5a7f4f166371264fdb237e670aac458ce5b29ac3a684d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303228e8367f3cd959d23997f6ec99f8e0f0ed0a82ffaa7396e728b7d6d0718dd156b3f9a5ab00bd4dd118faf5ac0159ad023100bf285e935071e57cbf61ed5d66d42c4b017c98c08838cc2fd2cec88c458d8cec69bb34310ebb5db853dd17eaff7e12030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c241364548b06393802e6dd74e7d0053184ede13ac40b2e0e50eec9b4eb248fe31d41d6c4ae33d6e8f2fe5b744e97bfc02300407475c3feff21676436799aca4f144d568763723a32ee9734f4197029d4dae6d9bb20b5259cfc5f4d89316e988a8a40302047c435bb500673065023100f76b76e903dad2d3657e8d3dc9a60c017ebe7f3c5ca3d8b2a34a0192d2a81a17eb83366e7d7f0ef0f0833a34733e6f7802305ac4d8d0e496a852feabf2c707d55305bdf8edb6aac1d3def26a4d16fcc633fef8f6cdf69cb19c1abeb24611fdbf1e9f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310093b24f3c56d85604d7da783bedd991855edbe5014f4f6a5aa0211660668ed05862a93996103f08035e23f49004f6a5ca023100a10840873af896d43d1eeea093090aeea0ed8795659c42e524c30bd4df08d2967a306b7fffccb16ef93c820733e0e1580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303e0db214c2666776b7d3381c5a53ae6e4e761e0aed8d8793d6f87be40f686166adc7fab7194e3f799aec84c1c623159b023100e138843ffdc64de30f1414f64ce9aa35a1f8b418560cd386e28631b4c25c11886238a243e9482d25e75a89ce48d6a5ab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023040672c686740328045b199e5ad391e38de2fa2458dfc586884d96f6fc1d7a40b425757d9c1545dce5f7f6922805bd94502306a9028b496f60a0f37d064d227adcd155c871882d18bc507d71528d935447666dc45ab4c22ac9b519b65b21ddeb587790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b835b29f251fc1e51ec435eb12a4e4ff0353079e9ec6845aa892e9eb5d265e3d71f1c2779b092bb7817ea353bf076f6f02301983a557b738f16120aab785734af500da3315a90fa2a4d3182ce892352690a1a5f893420c6c7a079d29463750cd0b120302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023024a24448ce6a2a390fbe86516917b916bd93581c51dd0fb850a7e3677c6701dd5b347c00ef678a7e4450e371d8cb02e6023100d825f7b5b85b328d9d33e33f1b379d652b3cf5224346e5b94ef703d98ca0ac04df04efc99637332a17534d8e16f5270a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fbf57929c265a3963e35124f48705f960ec1623e45f9fd36add136fdeeb73c9ba486bec4d7fd6ea041ca119da43fdcef02307b28266440d4fbbba54213828f8762d151e37adaf17a97282d218e355e9162a5f351bc553153224caf5ecea1f14399550302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230515268ec21fe940a1280b1016aec44c68f71161318ff6cdbd2269a67e5d5fd19868e8dc5a0411742e2df20abb80206fc0230380a0de3d649b30e5acf0553a6bf2c9287870ce0fc9bee94a9f4eb1d18886e64da9feb4a950e376318ffe0a8cba5c27e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f9e5f239f72e916dd9a26afad0fc99d5d0aa4ced5e063dc5b56c013263d6fd3266ab7802def7cd4c16335006f4951eca02303dda521537420611b265f83a60485ff61acf219a72a8394113ac0dbe574653ce1a74ecdcdea40877be664cfcd3e722c60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008e6ce24ae71a4c31196a912841008dbc19083242a178a2ab0795bea87dfa7ba2ab293bc378506e336dc2267de2cc9c04023009da2376dd92dbfb81e19f48121ceacb335ae80fa16c4b4b0213028ef2b609c9118b1083178ceb41dd5c885daa5a899c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cd2bdb74e441019c77066f172a2b21a2789b54684365224fedd4b271045d7db40038edd2489a34970c28ee5edbb6d84d023048cb0229c61ee03ef0d62cb48f3e4056f322f166c8031c7f832266722262b7d1c2c0d99b02cfbf94b1b74af546eecafe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305d556e565365448d437581775ae1ae5354b1555ae745ae9d644df2f65f690c29e55bd15a1d67a07b6255c02bbb23ea2a02307ab8782a131310904002c5c45e7ebad5d3bf733dc9dd4d65324ef147148c67ac43717ead8fc956edc4d2224abf60e32a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301b589f800603c7502982c32a4a20594a43f2b063b2ad96806b94fe35d0e28ec7388e44c5cc75bcbae0512c7a48e8510b0230056ff6383e025c5e54bebffe71106617d40c7fc269dd81f2ca8fc78618cc53033b434d59a1fe21c98bd6dd00b758fc490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023001df025d7143b1752c0ee77e0e996582e84d79544e0a88e9f83cf45aed0b12f87de9ba7e4a47680dc142dff2dd3fd23d023100b1d107336131835f9546380471a44b0283d798721dcefde679bc5f60abccb8c25083bce7e3064ef8abda45760e6bbc0d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307e7024b7c46f9887f83bc974c8c3be7b5ff0b1a21d8be174823699888f5efa4646222ad06037c49ab699d1a8fb165acd023053f3a1f6196e39599b2a1973c6788203db3b8352b53ccc0f2a23ec10bdcab4d5d9c9cbdd1d74d22f7f3562d903a7f4340302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304a2794e73f93b22715a7b7f3424cdbfaa5d3f7b1bf74a5588f26213a26ce471395c8f95fb65a37aa6b79b937fdfa6b520230159b476a654f3bb34bf87ce7b999276e995c12295c6f70d6ba966176f9c40b66d0dbc44acdae8a34083f4f4038d369320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f62199bd1940a314acb4d9a4261dc4c9bf271fcd19cb4812c5fd8214797c81cc6878c18be185c9b6d3597b3883d6903d0231008de2fc3bc484f5cc4294251485ac36905ce5e401c3c7297d06f563e1d1fd92eebc9066482c69890bf3ed5963c7a702f90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302c7d75574430bb147eca72ba4e479102a38ca78c691402ae9aec5dfb5e3dfe32b1c045a914da2fb2b94f972079edcd6b023100feb7b1b452ecb54c90caa89bb02fb28d6c0b609eb575dca718307d25ee593eceb0e2b4cadb17abc16bc25888e043d3880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bcf4b12a3d9dd7648080d059eec021b596cc9dc88f174cf83edaa4eabf1081c175fac5b8c00eb8728df80bdb41b1013302310081646836c7e78939755b053783230014df7c376561f0ff1031bfd95f1448473f76f51616e351a6e14951c915d7ad01fe0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300dedde18925525e2a8040f0909ad15d4e06d913f817cfc4eda3b7a53a3bf49847d655d2b16358bf2215f2fbde31f0a6c0231009c62b27b634b1ea0d04a7e57861c0437600cd03e628563dbf7b1f7ef86209849133c202cf16064e883f64011fb32a3ea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008f535c529aea2f117028c44883f99ebcbacf19d364f7ca8874970bd1b3d731105ce0775d126a6a62965a7ab3b28ebf66023100a30816c5f8105d01ac901d086a8480b2dbeea0a6c2a69fd7b5aaf97f43402f7b5fb72fd4afc62c88ff87d0fdfae445ed0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304eb355f569e5847bb0dcdbcbffe2275b53419fd2eea9e2fc3cf85637736b0dc0a0c2d8a616d654676751316d9e06028302305dfd06e453d6c9e2308d8f41a97beef534301b74c208ec8f474f4db26cd15c7dcac46a8cd0ac382b8d0c0c214f73367d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dae282b8a7dfecbd51257773ea4ee87d626cdea2da8d552388ece4eadbf5e4f04b9ffbfe44c78fe5934d22bfcd993aed0230585a5b4596990be4f8729b09c1f368a2b928f6a72d8712ee61a78231fd3f58852cacc3e486158cd2f7befbc11aac63ec0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009c89d177777898c3f6ce11ebd6d84ebd903c16631860ef9695e1058e6f5d178a08422dfbbddbb3e52c99617dbf8c13a6023100af1753dbfd17ee6244cbc794000769d3dcfd4a5dcfcd906e43e45f42a747474d6064a0387dbfe4e9625fca88e0924b3b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f67f0401fd547df0315434b0c0ad6c190366d6e077f0dcb78a408d2fa0b6fe5d475cce2ac40977b1e2fb72871b16ee8b023100d7f7cc02d19971071fd93fe2acdef356a602f503a82ba589cb9ee1acacba03938eb3efeee78aa79559b303882b36e6610302047c435bb500673065023100b9b37280816786c9c93c48777f84f8f353319d150ea62a263f1dd48a2fe1c74eefc1120f5c2481fd2bfa90d5192daf0a023006162c5a9f7147f494abd4e4efb17996c338284cd2169bfcdd57e4da0424f0ce9670163158423f4b56a300cc461d793a0302047c435bb500663064023028e1b2319b63de0ff0585d68a363f4c285e463aa266a2c1fc0b3984d3a13d6a9b72b7babcf883d43daaacba7267162f802305a5e83be37ee10551a2f160490055317211d9021dcedfc43636f600faf1fb9de6bc5bc0377fa89fcc558de20b98a9afd0302047c435bb500673065023100ee922c5effd402cdae24a3ef86cd655d6da4e2854d8ac3da3dd7ff60d4e6dd08294c7c8c04dc29d392818b02b73705840230506a93d0f0b9bf4e1e7ac973a401152153c4fbda6a348c688c93ed42e37505c83700f72e8d032fd3e32f29b0b37104210302047c435bb5006730650231009c57bf593398d43cb109df8ee8ca1010f578ccd1fa1b336b7620792b4f8ee9ad29febe5d921f66fdc051a5a47347b06a0230111e3d1f7ec64f60951cdaa33d3abef56fe522c153b1b93345f585d377f1b653cca173be13219ab073a88c6c67217f2d0302047c435bb500673065023100f5c33ae6c26052bb3d14083906a791e8717f9cbe7b2593c1c165584190f3b1015f68c72db54c5461d8abfa910a93b55c023046774fedb646ba3590e8b85628a318b4b804e6b50030a426fd83ffed858da0456bf6475bf8aefb013e4690658a3366020302047c435bb50067306502303293a7d7d18063c2336bd9daf7a1845d0dcdf97960db31dac8a9f2cbff6fa7cf97205ae49e312ca3404ab358f15701d6023100e3a4083ab5ea72292c785528259851e9fa8406863d4c13730d1d1f7b43504ed44f4abe6930e2367de5f83780cd63ecb20302047c435bb5006730650230192399cc3d8c8baf1ab8f614a3a26f7b72a2f9d46fb1bf2a340e5aade7ed20f98374d7915c0c9af578b2fb2512a7eed4023100b11620c681639d8c3a83a2f3cda70e6032171b15d88850e8bd70431c2b78b16205d807780840f5f3ab9554167190a6290302047c435bb500673065023100fcf9927e805243e4fadaf9303b810021db8be4f85c7a4c763c0b006872e8b2efdb7f4f05f7db4b9bd47c2b14d7caa1ec02303f557a9644afdb5534001a5fc05bb374f8142913e59b0c70c3261851bbe8e09d2908bf57eb74ed4e4c0a374f7d346c710302047c435bb500683066023100bbf72220aebed22a55f9181c5e0beaa8c99bc3cb09b5a723d570464affecde2842a343bd72a6bf78307b8ad6c6fdf732023100f4d56c9ccdd5995a454fc14d29af91794c0b04d4db1c9ef137c390f2e39e0131b449094daf825364970db0944d6604360302047c435bb500673065023071a6f33e7bbf8774b41e4b1aed9807c9c26bec7069af99eb4e253a85612151a49d43cb158c68e26ae3927a9f46a439b9023100dcbf97ca0b9b4d940baf30cbf7d88e258548a12c2cd7ef0cfc47c3082f55b3bcc06ffe0b91bb34647417816e84b8a2910302047c435bb50067306502303825c2d639f2b11d12db893e2278868ec42c4f4dfa4dd713fd8a4cd29deacd006956efc649b23c6f41da2ecdfda8f2e7023100efaa03a20e95844162791b56ccd7c4eb3e63da95a98f9246866dfa35cc42f922c14e53129934268fe07ca7f8c9c780c80302047c435bb500663064023040eb0969651f4de06f739a45e41887c7294b4ed34d1462b632d1c5bb9975cbfeb6feff538c44ff85e6b6ff4dd12c0a4902305d6b9f3742c69cff6ebd140fae44e6e6f1c11268da0bbbfba869c9a662edb9a0ac283d8d80908c38750f665815ee50da0302047c435bb50067306502310089e055c5ecb94fa530e694dbf9d68de1f475c29827252d9aa3a780f5ed2cd9a5eb9ffb48cb4877d7b13e0c820b5909f002306266c5c5c48f408c29faf1e5993d24dec6e973db35b5e64bf1f8e876aafe5afc8ecc7bf01f3e9a673a851f50631988e30302047c435bb500683066023100fceaf8337d851d8c8413229abb2c334ef5f74c26bfeceb0109eee962d76abda65b15ab4fea594a1e190e13fa6ab0290b023100a3e94d4e9a6390ef00fd6e1a030cad4e90bffd8707cb8892b14543c8e0a15da7eac93e4223b37434c0b2dffbf2b3bb120302047c435bb500673065023100f3c39aaea2e2cba903130e29d4311c8bb6f28cd7abfd37a2a3f7223196da3d708bea4ff155a91d978d6e3d07e96e0f1102304ee02073e7ea972b66a6b98d4f82423146a9ea8752b1f3743e75ec55070a23c3aad2999e06604f6d257ced713b95c87a0302047c435bb500683066023100a01c95a2123e3fe49eacd969fb65bbdce9be1abe0ecc959e704aac4ce2a7effa383e8718926df67dd0e16c6ac435891e023100f671a84451d0a5ada214ac07db85bffbd62e5ff440845d816bf24331056d1ae39c84e150398bdfa308519f9f9eda37bd0302047c435bb500673065023100c52cdb691237dadd549c5325ee554f146f1818740d001be55421757be8d3ff39dc0513ab0278089c49fe7381f737e3120230498e1febcdcbb9240d39a01a7c56cb64335b6db1b71e4c5d78e9e1cd3bcac1e8fbe6b429cf00402edf0aca4b94db22fc0302047c435bb50066306402300792bc625fa0d0e64d6b2c723604e62796d6cc5e1ed2d3246afd4e0a6f6b30104aa241d0a63865a62965804f4b2eee7402300e50085a6a2d7979dd4924bfd5acb39eb7cdadb950ffb1a7dfaa43cca579b13ea01ac7de411e13d85be3e9f5b76381070302047c435bb5006630640230230a5684c85f70287d527c15de3618783ec8c1724c3f40e21e9618599f34a585f9b85a73adb687088605c0b946e64ad20230468ac0acb15fa0aa13e653957c22c475a2126e8332fa6dd1d8dee08c810739d6b212c85189c36f76d78f8e8dfdbc3b710302047c435bb500673065023100828565226501d67a464a507463c85db9fb942df6195c046687c9ceff9bdd6f5b568006a50201cd5b8ed55e8ca65176f302303aedd196a0f6a25935b056a1e3a7c79610740231dd712562d059349665a76447f54d28727ae8ffc2c4dcdedfded7ae4f0302047c435bb500683066023100c8c043e6fdd7997cdff479971a14bd2c7be7242453fe1eab80e448e1fd027f5c35af1688ca96f2ce9905c0983ba43e69023100f392be1707b538ce09c8806683d4c541cfd5a66d0fcc9f5e7292424fe5930a22121ab1f90b2887ff1cdb96ada75990e80302047c435bb500683066023100ce418c0b555d673dc8e8e09888fdb92173d081216c6e186fb34f524d1afdf8f31028c495618bd8ea9f8211dbc6bc15ce023100c1e422160c930e7c5925b410bec8d79ba48c7ca90dccb82961dd1aad4c1e0db1b83113f7b5202986c05ca29aaca613d70302047c435bb50067306502300ebf84de976075c7ca5dd02e66965c80a7b757c2855933dce90941311da19411ae14c5c54ecd2bb609c653b5ef97c68a023100c810a01abc7e530afb53898e2954ecf20eec798768914a37b5f98c91b060916152482ec133e874afb2a3988d7f03e9300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100de1a49e6d88eab0a3fa0a59980f9a18f6d59dfeaaa2bb725dc7e66e069df40c357d452116df40f2c2933d3bc57892cc5023100cebf1f69f4050d19182d1bd73b7da817b12b65649b780031a7c9b2a0c1814befb06e8b79b195293806fbdf0b9f98cd1c0302047c435bb500673065023062b2ee6e49f6a8d6d173c96304fe3cbd6d2eabea9df87eaad316f2196bfe0c2384cfbc84bfe13bcf2c5dd1ed08b341f1023100b7a451036d46deb32cf66d82ade44c681610cb0f6058e1de1964e651f804cf5bb2c96de3c14e510bcdb3106d44cdf1050302047c435bb5006730650230367c7741a031d454948cf70924585ab91721185a898793ac2a5536e6335c33d5ee08e80d574db411f383c57150490a2e0231008c78dcf3d42d250b9451f6c1aa237fe4aa3cbd155e39fc67b1ff8dab91765d8a0dfe7bba3e0dcbc29d05ef0a9bc9774e0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb50066306402303aaca4c43dab3c4ed1e92cb4e1bb89324893e32037ef1a5d813047e90eecca8d061460537e9ce8768fbafcd188d80cfb02303ccaa2a58aa6557bfa4919e71f7547d6d7fbd0fb2108fa0d75bd96eb066c054668eda25093349b35a8e6312233a8f8bf0302047c435bb500663064023003b580a041e6cf68b91431b56b18ebb78677ababe421c853e3daf95e9a41dcf7fcc2dc755a808fc35c93163fd903c8aa02300b4c8103adb4d5fd81294b66da8455febf9f2863961d8c61b9d6c42ae2d0cb0861ad6896ae996d6ff2991f31c024af280302047c435bb50067306502300bbc3a99c11b89a00cb4be0f3f6d828e4c5c7d8a4bf1dec43e5e5d1934167dd794f2b9b5b88cd512a6b36ffe0db1eaaf023100cdd048605c258add87df7d9d2d8324fdb1d41b9c50f4d0c01ab1f486f562e235da89ea9bb462e3cb9fc06ed75ee3986e0302047c435bb500673065023055ccb5ed36aae03ea3bb72e22c74d9ae1b6e8c4d755e4b764ea972113679b8669342f9cec24a8b634abb34f490b358380231008c48c24ba29aba03081d56a320ae011cd03035de17f0b14f06475d21b429c6c4db04f5a2b682cddfcdae6023380c8b930302047c435bb500673065023100c108893783a8d947476fe796167c4a066a66cd9a027d7cc1b63b767d5175d9eb30a53e543030c39dd33bcd68df3085ca02307ea3a64c656da794d9a2c4d3317d4e1066ffb2d388c77828214a47d9fc14b1647892965072a048c0bf3e1e1ebfcacb580302047c435bb5006730650231009ddf4289fe1529e6967bd802c6bcc9d17771cd8b67ad0454e92900d9e68727061c185885f1d798a801b78c45388fa706023041404dd54e6f863c3c2bc1ebd51553ae6bd53a716c221a16d2656cb306a70ee9fd9978235d22e8a80c0168bdeef1ba050302047c435bb500673065023100e510ab34e18e5e7ddb53f5934519ae5b113ce54ba671ef52ae582fa1bfdb6d3f01e427d19895f9f193d9999e6e5afbb302307e50bd46f381c31d504b77258210e4f70dbdff29b3ba0460cae2066b6797e19865297b5a06852c32a0378ec69c876fc80302047c435bb5006730650230424f10f59373858741a0d94c0212fea94c25a39edec99dfc1823627dfc2dddf8f5e6c0a281f58b6f96c544d802f0fadf023100fa406739463a17d1041f0dd7c39a7ae82fa047040b656041b999292ed6265c741495452598d5034e1bab9fdaa6ccd7f40302047c435bb500663064023022798022ce97ecd6e1f4983c8738e83798e4e616db3a901167d8682ae73766f26da0f2fc4239eb3539c106ed5062ad11023008945d72b55f995ab62ec360c61b4959e264e89f1d346b78cb6b082b48c2ba5b4755bc0e61fdc1b9d958a73d8eea7fc40302047c435bb50067306502303edc9529aea173cbc635573cac803bbec96e510c1502f37d0671f0bbf6a208bd8887db8c34d66c9335f04774df45bba3023100f10f5ba586c61d7b89a48c441f34390b4fae43698b45784930c7e10fbb1b1b39cfd76f73b73b04758f1a1ad16e7f79750302047c435bb500673065023050375ede88543ac89e8324148ad4e12ad1b7c03af8def0b66cd47f047161863a1497fda9f425bf05bf6b77b8c515150a023100edccb9bcfb96fbec66dc1a1cb04e56ac2e7f824292ef84d2e9ec36b8c7e774e5326fbc86e2fc40cf2b3c6513da90216e0302047c435bb500683066023100ad440531eb20ea4aded406bd7990b1d79cff3bef21177b4fc9d255306196b6906e1c67b91b3e3e279aa7d5baf1053bde023100e5c5cca4d57f4ce03605c4820349e2a34f2778e0183b3afe03c6d3d351e891b3ed9868b48e8459e74b24552c237acc330302047c435bb50066306402303330d6cadf6fd70d9d50dd0b3c6cb79781e843faeeeec52b60f963883f4392ff6e5433123bf305b85f19c7e76b59d86b02300ecffaef3f51ab2ad01fa1823872c0b32f39d4e496b624233015f058311d4f0f30e35d08d845cdac0e6a0a8c425ed5700302047c435bb50067306502303725e50c1a9e1fb06189b7ed0f3bd40f88dbdd4ab9042b5dfe7c147c77ea1f796f64827c126b39560521ea7e72cd81dd023100e2d7d5ba221da72b5156bc719590d6d4da71a1a494a4910e3c8e87db7b98e7e65cb73b765f9f635d8a3533e38a2deaac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a483e866ecda7e0631b838bbd6cafc01ab1bd57ba0e9f75a79e183b32f4d29a904a69359fa38d75a19f3ac683e8b36f60230037e0564ab2bc1e791e43d6fbfde8bf304dfdd0e1858fed08d09014da1bc9a7e84800d80eea3543772a0b537bfb9d27a0302047c435bb500673065023077e7c8444f1a7dbf84eda47edad97247aa6e33f9b7c12ea6af9a093dc5af0636dd778a6d21aeab299221daff6b64485f0231008073573891eabfd7523387700fa0358d2f883eaef8b7d130e081a93e77503fdc0cfa73e03cc9c971f11ce2da9c2cd34c0302047c435bb50067306502306ffafc28747693cd4ffff87b26ec0993a355d9fceb2860df0ea8fe438dcad6d039d3eaf123f9739d823e457d8bb695dd023100d9f493e69ed7c0309a63f57a63ecaa67b6df47b7bd5d45990189937889f5e6fbbac5ef8feb588feafa06f01a93156bd90302047c435bb50067306502306e1e5482a235218313fb50e2b14871afe348d4dda807c1b90910fa4726d3d8bda77e6f6168c373fdaf43f3b11fed42fa02310093e189db21f96e87902a1cd628f56ac19d685f1a513b7144a38cfe9e705ec20dac75c080ae390e81da4e5bc3d29dca580302047c435bb50066306402305663a7d323a26707e4087f2affcad050bf9392b2319f87339cb3083150d76148dcfe80037ddc451278e6e655789702db02305765e1cd514105e058cee964c9058982e45bc69c87da722002f4ade96b80dc4f3173b0e575b181e4d33f98f6d4d794c20302047c435bb50066306402300e2e89107b86d88c01a42e0928fe7ab3b64482d18e036f770d830a980c7bca12499d66f0f63529f44951c12cccb53e760230217fdf588a1300d83509e347a3d8c32a45f724ad0e0fcadcee6298dd109419989b89623009f4d2b83c593c3159a664570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d3ecefdf2ff6068142c9763ca220645c6755303e0b149def57798c8ea04fbde3d2d1ee0f12088045731a589824c90288023100bc00d768665a16c8443baa5ff97dc1048edbbd306112f5cf630ecf8204b9297951a8f1bc02f6dcbd40e1ff761b4a12fc0302047c435bb500683066023100ed2f8d977fda91ad8aaae3687b1885bcb0690ff85d46d151e0e85ec6508b481eb4c18804573c068272e6e687f579a753023100e48df80910683ad639b8cc8174fab386f4c8f5684c63572521dc7d89d5e8eebd829b1aef31adfc5edbbfa5c51f563b0f0302047c435bb5006830660231009851f9e85a4adb8a5435d45e5457f72ea14edb94335e3472b73c88abe4242c5d339f7b780582c88f2ef37bfe1badb44c023100a9888cd37f2bee4ee02966f99cf91c659e8ca6a227b4f5cb1acf451b61ff00fa2cb5151f5641672dd479a1b9a302c0360302047c435bb500683066023100ea5d2e4cec4288a514b0e96e61c4d508a16e4decc030df530c2eb06e56a669e51de69053642cadbe68ce5c11b87cdc660231008a872923f6b392051633354f17cb752edc49f434776fa70f0f8a555fb9cd2ba866106fed44ba4e55e14c67b079f833780302047c435bb500673065023011967fdb6c149fbdeab4284457ff238b6077ff28e88426f38c0e00a90e46369733ee6610108e7caa7e12cfd46e69172a023100e58ad64238acc22a3c742f1b86989a69b0ce9b55d8ea7549ee877b6cb00bbb7b4342e08666cbc0283e3be57241ffe0be0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100aa03419f52fb51834dd95575bee1d3127c28158fdd7b47ebfedc049ab500a3e5884d326a9c86a1298a6e2d4219eee24d02301a2f13239df85c0a23c7313d9030e3e7f5f25b628f6c4b3edb7c69b7242d64491caa4d2cc90dbc22c0a86bfcdd058ef50302047c435bb5006730650230126696172b2be3bbdaa2a61711821fee441ea2dde1e3bc604c5513454f4a15d8b481d26a94fe7f3649ae771a8c8fd42b023100fee437b50ac79567d8edcce15e0f8a46312283cc5339844c06718f15e8c0a9e6eef0951724c0cbd8834c083eec5d47170302047c435bb500673065023052d56b5014f33b2c664fe1d1068b333d0e8e08fe9ab16fd2ae6653fa57e4d64b297093f3f780759ddcbd4cc3895944e60231009e003695253a3faece06a4347d3218fd9978c302bf594e1658573f05a06c3a595e7b38cb1d1f667e672c5bf3a07aa12b0302047c435bb50067306502310085f85aae21da8dff109d721338d8b0f99e3a08c8ec0907ff6091d09a5f7d334ca72a83ee51a66bd4612a12e8a7e4d20102300af970798dc58829e08e804015cb005a470295b8cf30e328b21f882fb7a5ca65f38bf01529f35a1025f6eb634c4247360302047c435bb500683066023100c1b2272625d73afe2172475c3f10f09fbc2bf1312cf01b1ad4209bdac4cfa56648c73cb9fda3b9e134d3ee9ecaa8f1b4023100be721fec754c65198a4e80111801a5eac5b7fae2649372dd969b595bffb7ba0c95479983f901d1c2b4bfc8685387bd0e0302047c435bb500663064023015d385996208e89ee7dbfdfd853f6ecf74855163d398ebc327f586bf5942b2383366cebb7cc0f382d20dc680927098ae02300285400f118b2d6e774eb99a886f7dd2a2ce545f12bb1460244423016678ae33d0bc26cc3da396c14be2cc9fb9a7dce70302047c435bb50068306602310093c8a13cc78ab0338d1f0e4335938a8ae30295a04a108d9689b04a99de4debb6243e497c64201727e1b8e59eac9b90c5023100ea3e3811385d6c66d66a3cb444672661c959ff7dd4d3760f896db2dba4bcaf6f56ace2f5dbf745fc5e76b7a15e9197580302047c435bb50067306502306fac1538a7853272152343d65d7cf0537fbd6e009fcbc61d17a529be98a7a13b27c04d115acd5d2fd51be031307d1d08023100fb8a821787a5e29545356d07b9520a48dc163f82bcf4352b60d1fc82a04a5d3540002d4717986eed52f8ea5216874d800302047c435bb500683066023100f2cce828ac73a39e6c842cb31dfecfa69be0f3982944c5aa7346caaf3512478aa16749ea67763c8a5c49a1385720508e023100c3df815726beed210193b0af215415f69bce3e46212f4ae721d95d3fcad057d6eb2d33dc9ef96d49ca862bebc74ffd980302047c435bb500683066023100f13f999a4a038084e242b0083ec0d8f1c73cd5d50fe7dc5384a341b4974566c39b7f351765430679234a9df7aa0b6bf1023100c44c92c12796d71dd09c4d44f1d7efb3a831b7d3ad5a03ef28fd8848673e7740570a8331e8fa46ceb0278252a79294560302047c435bb500673065023100978b9cca6a8e7bab22919090cfd5b6b91d4252538181d6fe4b866bd2fad0c997069958d13ec07d8210dc64d2e532c46f023025401c386e18f99f392362138760f998fb5b283d6d6c6621bc1640ad0f11dc9c1249eec0f1ce687ea36b71d3533d079d0302047c435bb500683066023100b0a2f4762c1303edaa73b194e889af39213e6f5c335a0ef5123160d4ee3bcc3f419f7b2efee5ad053791ccebccda57a2023100ad195b8b574cc364200a1d02d4bbdf1d31eef1ebe8f03c7ec8a3a9b54636586d48583ab1e8f91837f4e14d18450a56850302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023052accdd73fd252a92914dd641421d9dc7a67c2403b49e71830d9bb0e28aeb39fbc22cfcaefe61375408e7e5f13988a77023056ca5f95b0dee60d15d02cb827a7e0a2462bf8de3de04020e5cc990a2c64a30b7da3ef485361d880b80759d9cf8d65660302047c435bb500673065023100f5a7e91aac3323dc4bdf031ca27b35d82874bce4bf896b16cea46ca10a9ebbefa9ff959b8cf6d53feaa9244bc6a295b402302db8c2940c3ae8f4c8bbd931d98594a8e973c9b6e80a68809e585995355b50507c988d0c26ab805ad0a9ceb6057d25990302047c435bb500673065023100b23b77fe0a6595b520408e75ae61fdf607cb6ad94327c6f30162ffb6983921860db6e318da0425c1f92afe23353ae87e0230681933920701f5a212ed798c888307ba1766af81c31a58bded9d6759fc7e3b418a4cdddde05fd22d22e3f5c52e131ad80302047c435bb50067306502302e07f32dd299678e28f5ee3b2021973ba99f712c3c0e461f8177b93a64d799e46c2684cfbde361438e9efa4c1ef8ccc8023100c09fbb3ecf19953e11cb0c3e4cd1523c65d6cc9926d6a89c4c30c489354f97d13c12614a94a7c9d4b88f2753adc20b150302047c435bb50067306502303ab0b6552a91fadb1803307680a7c433596414678fd2193e8b50f4b1fbddf4e6b57c74eef14c203f8aac64f67116f507023100e7476bf237a6e827734f6a8bde4ec321f0081eaed53bd4dcd2ddc58b02173047c9816c5341d51e9a5324aaff2db5ef880302047c435bb500673065023100bad39e4211b36ff8589301e650b3b7efa00410ed74b9e71b745cb97bd43e9a9b1a5f1e8caf1cfb48bf2aea853eb8ce2002303ad303d46e572a081c4a74229ad057f6eea69859105dcd5427dfe7194461ed9d96357cdc24c5139d82f93d939584eab30302047c435bb500683066023100a8c3057511bb110df304b3eab8f3ebe745dc0d1f04ff16703b5583839514925b3de63736347c39f0101ebe47cda063ad023100885533b7988884926e0b54a0b1b4be43b21ab8b61c23babd961f51c121c49eda6d777940247f74b1bd96db4bea55cfae0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d16c06e97179cebb5e5d0c65fb5f3ebde63bde40ccfe79732bdf79a9b310297946e59658051f123d68c5b3bbb2172e6b023100c75e7a962dcaae664d8fdbc1a5744ad5560b31ecfca2ab077da2ea1c2793e2c0d1417a883bbc10297831289b32abdfac0302047c435bb50066306402307605acfebeef87fd9631c76c005f5634ae2c843d99890d5fbfa83c9e583c1e8ea18e782f6ee44abc27a894131a825dce023057d70fae514d186966cf2105d15173cd1a79b4f0b8162ebd090944771ac3fec4d3c4e942f4a519bd050cc4f34d3b72d60302047c435bb5006630640230295bc7e5cb1b022449b3c367ac7a06b852dbfd724d855546fbc3ca9e2585c7943aafd5c07c986eab5877c5e12e814c2302302bdba386b94cd44229cd0e6661074a2bc268b40c96bd16587165136ddbad5295b059137ece9b23acb7e7f700661f85320302047c435bb5006730650230092439cd417a7d4f7d33734f7e1c48125f50e96ec7afab68039c5d12dc8d6a09b7c30ae393518d0289632d1224e83ee502310095b1c5ee099a398f929ce4b72d88d5a1a90696b19303391b04d52e50d8d7f19d04afdf240f92f2febeb9265ec6978fa10302047c435bb500673065023100c902289241f7b6295f9b70df216802480fcae387e9c7ac5f97e0555004e2b5d37c2d388e42edb8e87aaf7333c626d7d902306f4bab63d76bb5bfdb2d0b976cebd3ed94358d2cecffffd3c92844197bb218292d0befd8f3864093fa5a6fab8f2363940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c737bd9dc1e88e8d20c50acb1b21b109ec21c08e045f3b58e227cb9fe1b12a0f8b4d1d8712c91ac70a5e63a10ff951f1023100a626799f5fa036876294443443319aa29387f7a98b2b7cc054a37ae5e19d9c83f6172fd87f3f7c2f7631d4d6f61c39e00302047c435bb500673065023100f47686e9e0f32daab4908b9e8faf9897d9281ccbfdeda0d249aebc1c0ceafef1ae20f0e413d7fa3b1376470031d827a002302376bd09a2e51ebfa8f4c48388d605c927094278ea59f5452faf29970f90c4122ac312fe0321fd81db01e97c9878f6940302047c435bb50066306402303410f4ca452c74866c8079f5a87c6fe9d097f5541531a0ad726e876592d5db3123ad33021da23faeaf557d9d85fedd2b023078032399531c9c8271555bde5b4068c42bac629a7a1d6c6067add911a97daf68259ad8a89c30c9f1440ef0d3d27d62600302047c435bb500673065023100bb30760a21c2108c061bc51a36c21430a6bf33bfac073896c16f83e4314de3cff04d172a95924995e6a10d0433ead2f60230310851d445d3ea0a253ad65690b1216061253edf432ecc1474d3dd17de470f473102eb3626804c52a049cce8b5f6f4e90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023006ff2d45f6ebfcb9f5839322981fefc48014f1bf27b2211fcf31cf3375339ffdf66a244b48072a09c3d1c8ad7053f6e602300b65dc5d3886faababac94ae12a7293930d7bc5c126b2659e0568e7b1e9ccdf814ec4d7a5cbfc7b43a1467b06e6917760302047c435bb500663064023047b9f8ba48c603753712b365cbd9bf85fa88a30056760c65c4680ef469a9f9986f94a57d55c563951812ca8ee620d8c202304873193f37899442135efbb127f63e8c1e4156100a55ba57e269b61e1adb3c5810181fce5ee2a0a19e44acf94cd6a84d0302047c435bb500673065023100b4b3875721034503589714d5155f288f10ccb400b05125cf46d191728519cb40282c2a1b577c32058e880fd2df5a56b902306a75e4cb141cf073840b4192082cd6871ee4bd7744195508ae36bf7a8e7f56c44b5624622174ca59a381df62a78b0a4c0302047c435bb500683066023100cc1243d3e781c5eebcb87648a065625c72eb3d53673b41d06a5c5dc9c41d92022b394f01ffa26d540e535b1dbaaa77bd023100ff41d2d1f68e983b47f505448f535bff9437fbeac2d4e5cad86046600129ea784fd0d44a195142f3903004adb25d8ee70302047c435bb50066306402305820b8c0484323ac66592f44703646a4d542e05f460e837e9d650f3134ba60fb3a75bcfdf852e6a2a3459574bdb31125023036c6b845d00bda9121be9dfc8883a416c839406215940307fb205ba995a81607d26b6a45b8d55e90df45b0915fafd88f0302047c435bb500683066023100c7d82f3d1b0b15cd2b40f9431570d3d5ff3dca1a5baed7ea5c794ff548bd5b718a32e262f20061ca8946e086a509326e023100c022836d2c64eb4f9acb92355012d5cfd78aef6e6917f83260e75e0dbb2b6341679eb8884b4a151e1f39701521f42b950302047c435bb500673065023100a12df8f8f50b97f4294881bfb80dc2c3de9703ea85d006884165aae491c9560978e71c02130d3bc407d70f3569e36ca102307df3b13db974e32c053b8d831636531bba0f03f1d6337a6af061a5e4b6a7a40d186cd34a439d0306e757f6489b732c740302047c435bb500683066023100dbf1b2f539df969b6e1317d5194d239395c894e7a4354a8d86159acef107fef1b547b2cb17fa09ed3d08de9ddfed18c1023100de3b2dff1cdc588e15ef1dc4687553ea6f5f79c566a0150c1f265404d6199e1cd487b47fe6f5becda149e9b698cc297e0302047c435bb50066306402303691b87cc4c8c2d8edd9c9937f58fcbf9bc73232b95ad5daf3aa79a8e1e9a968f1c0b21e9b58f7fc4a81b7ecf5cde47c02306a028768ba3455db8832867f0078bfc23413240bf3e6b86378f57d93978a768e0581ad99a7c099f03066a15541f397c00302047c435bb50067306502304e5a23f99ba395cc3ce906db1eb05049c2ab3ff9b89655fe1a135e6ea5b6c4a0a22a981cb2111700267fee5f4f6e3e09023100aa0cc6a2618f06f6caf956999d63a902d63f2f6426b1460c0c883bdd50b482a9f00ddd93ce184157bef825cd6140fd390302047c435bb5006630640230186a67ae8d632d246a52962284d061a4996541d2ff1dc4b208e6dd7de28d4dedf0927a371236d325b4bb0800376432e3023061660e97e15753852298ef7c4f0bda1d563998508625b04c77d2e4b3ddfb21592cf7ffe726e34560fb5bca907858b2460302047c435bb50066306402306660a01f66278d8390eed6fd1b707f2a3ee4ecce96e3935719ac032d39d9c97f0ed6c6a77ee9a5143c0f900a5ccc8abd02306c3c13d808a8b73feef74fedd1e69ba590321e95a167cb89c58ef40f89ee70317ee1115aecb5c38c04d20b6ab873b46f0302047c435bb500683066023100e847097e053047b01884cebaec61a9c1e80083afb351d4556429d79d25ae2960d0eefca9c1726dce1e3f29cec4175d1e023100bd726ed9e4aca453de11ffe2f377acacf9497b680ee77705ea1c3067866f737be15b7634ff1d02068b3f4eedae1ca2a10302047c435bb500673065023100a7a0111f7beaeb367a53d8cecd1388a61dee7a5855e5c5b0677b908258125fd73bca4a2e6e6713a49c0ff29bf7214d1602303fa2c2c5c3c758eef17bda2007666e9bb7bbefe3c91f1f50f0988106f9cb3a1884d47bc71781ed3c79c72bc4f7e846970302047c435bb500673065023100e0475466a5c4950e1333e23a8c5e4bfad2824a074b56394426290264826b2d954f21468cf5605996d9a3e687b493853f0230285057ec18566b300a13f8a249bba2f8dd1937030eb878c838fc0915cf55a669be4ec996e7df4768e4898b1f92d1fc740302047c435bb50067306502306323e4ced24b7e706335d1a56e6166b2f2a62985f6b068d7d8e3dce7e9c81691d86a7d9907a0434ec9aca595fa7f7d93023100cd3c5233e972070e65ccb5e915fda92233d505b7df2b4e3b70ffebcfa943f259aa3f8b191b560a4f3333fe2393fafeaf0302047c435bb50067306502307253deb801fc9e8bd8f79139bd95a0de2a3216ffd855417227d849977320295d25d6e1645722c6e434c24617ff32899c023100c9256757230c3d30c8da10dc921f4c809dbace67dc5ac5b7d335c283f286ec6cc86ce612468e2d1514bc6c95ac8870c90302047c435bb5006730650231008c697c7ff1ce4a71a30482a36a29f0bf6da31d681ee3ec72dfb4dcfdb208e53455c1cec03c84598e61d75d0aaaa7a2af02303b295ea50dfe7f799648b7649815fb3204e640b0068cb941bd2512f2b37074615f915cf6b0d56c7a011370c3040d7f590302047c435bb5006730650231009c1235c4a93a39862d329c9883a9f4b2c8c183b35cfa2f167aafe6d226d02b7ec6c9f26af6b626af29fbf78950a3948b023023d98b6693a64f64ee4495b261fbd73f5360a0a1a477cf6363307a2fb78f603618bceaa767af083eb9261fef5102f1c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fb31a8b3aa3ec96b70a9ef5eda65353a422cefcc0084c8263554a6faf34807f6a4a72ba2f85b0a2a9b0eaca932a6de6502300dce9708666f51a9cf8eb4a5ce8ae96745a4ecb1c333db1093e036ac126f01b6663bd35af3c39fac3b0a1bdfbc629b900302047c435bb5006730650230779c70aa1c1fa377191bb6125a950ddc634cf8ca4081796edc523c88f74ce866eeb38b3ec5c2164371b0608c0e8a6418023100f1eb60ca8aa68fe2d60f9ee3a2957ec185627e54b25b4f7631e4f68d4d583dcdeaf5977105c52e6a378a39034efec0540302047c435bb500673065023011766f05eee966bfd6de142ea2f37ed52c60bf8bd0810d3b2742a3c442c9c7c7246e801efa0b64bcb58d3fa99640b9e8023100a8b32bdb604e782b18f2e189a99b34bdae37c510ae61e293ac9db7168afee565468adc5970b7ee2fc4ce4d4835b35cb40302047c435bb50067306502310092dbd33d04e66b8ed2108870c177082e458f4ec65778bdfb9dc9bca9fdb30f242c60b58ace5b50a8a97563afeb49f914023065b8494df196237bdc22e50413aefbf046406482679537c29286c410107f9fce7de308e7ad44d469b0b2b295cacdce140302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d7b6977b70dbf3b8ead4ac97f0f3f936136e2b4785493ebd491f828478ab7e58ed2aad7fa7e57c3df2e91d34e2794d7902310098c23abd8d24bddbfbe46891e16f1a1ed667066b3dff8e25208406e6c110b4394b02506ac073a4b3296d965b81c4481d0302047c435bb5006830660231009f025459e3ac74f3c14e0c0398cde791723b3abab1dc5918fd38d298cec642115982b78df6a8c3b107b52b6546ca1eb90231008ef6a56e894e2f3e57a4649693f503afb5b3fd528ed79f7fd99a4b7d7fab3732b64572b7c1dc217bfc8d6421032bb5ed0302047c435bb50067306502310099d74046eb91c8add22a8932f9bca4484b44c02c3acdc5097e76fefbd819dddd8d6bd56145215deda612766958fc5e4e0230750afc66cc7e18e84fa5e421fdf537fbb878a78998288abcd1e65dc3c5cba9e5c949c351089383742bfa202b2040dab10302047c435bb50067306502303d38e78838c9735da4d688d98dedddfdb00e9f1251181ea0656001ebc6ca94ed80d9b9cfc25a0314143dbd3b6243ce21023100c7f0e7784a670f01c6d74fa9dd3fab4fc23c53bb7e68d8284bac2a6f748bc2bb8d8c5d3c158a2eb49b411b8c88e223bd0302047c435bb500673065023100c113f86260e522e5a5cd2249ffe92bf132953f2545da96def7efdf6ba225eea03638be480ded0471ef0f8196a51b1d1d02304ab9bae089623ebe03c99e0d97e7466472cca176f8e6de82252cf906cc786af43d1f7e365f05504d00f19374538ef6570302047c435bb50067306502300c57edb62c5d0e63978be5925cd36300a7de890050217892705c65264f40c1e83a59183ea384f6be0f673d04e67dc369023100f5a996884f236492291b7cab6ba6a9e3f354516d50251bfe6970b9ae8b5506fe86f13f4ba6e4a34212d0cfc14e0b796c0302047c435bb500673065023100de7ed0bdef61a99a27636af630837037b3cf56574fab96fac66f4a395b05bf08cc0693845979f9e803102e5dd45ff60502301e7e7ac1b0ae5b14f6e4516ff147f765aa4c65846c5d507a7034ce9d6dca0fadb8af1de1588d83a548d477b3beb2aa110302047c435bb50067306502302f3dfb536c003ba1a89a2fb62b70ce6d35c199cf56903670ae592fdcf38be9af749b22be0d7d69744b84ff4c50640d4f023100a95b719bd6fb2d4258834a8bc38b587410473f45a067ced6c507372345ca422a22b9775e98a260044b80a32584c44ab00302047c435bb50066306402303d40eb0017cd34a0ce713ebb04e2c5a3a85508c13e20a421afc49161cd24e0cb2cb64cd6ef1499037b13778c6020925f02304bfe4f364d2e44f8f34eca17157f2ca181ed952f21aaf339281ba5f9288e4e092654fad7965509d186f0f6bcf9e0c3b90302047c435bb500663064023036f5129eab956541b46c7edc00b30a456203f4ee31cb40d9e8d2c6789851236562d73c4b6354f96b9ecdade409c45d5102306687197f5cf96521c629f2353464e8b8d640895427c229ffad074bc74fe81915ba8e55980e73b0b5b79e4e35a5d13a960302047c435bb50066306402303e76d1d8ec17cc6d5bff2619bf3b9421dce2a5cb7792136eff9ea45c2d9ba32b3d3c8e7b981939549197394de3f8cb4e023042e3d90b53d630dcee53fb7af35715cf2969e5b767b94dd52bf143c4db8cf715fb626d3493ae826e427719a8e77dd2ce0302047c435bb50067306502300f569fc1a92f38c4e1302fb6b0cfcc235146c29bb2457aaa025dc4584ab172c1852f655cb51a69096cf8d8a1755744b3023100bbb2275447398148b87faa42230f5041495db861d7ec4e220f13c9462db5f3e3e5d6613349e99d11dfc1dc070eb503d30302047c435bb50066306402302a968b24ef3eeef198a705fba9aa49f44e62bcddd0450c905101991e9ecbddbfa0222c760a73c7a5ba55852ec0ca5d890230194fa6b41def5a50119e3d287d2249d4d32c5d5c078f96d0e6c3e2db2b49029c885370fcc6e275c890cd1a87ec9dcb010302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008c52e9104c0c1aa00547e59a6d37e176e30b673abb82b7da6332ebd61fa0ab2fae2f27e8c8ed6626fd684182e344b135023040461421fc3f061cbf9b31554dbd5f8b12adef9033a40d5db9e9341d63794e30ff9771cfaf247701dfd6a47c795df5540302047c435bb500683066023100dcf990cb846611427ce0037b703b2d7cf59d159ef40c76471c1bb71aa9328b48c6c0cc823c7929c5f36974097ddf3b96023100941189246eabd539e1a4d5af26e48e44f00a487ab630e4636e9aee5a8813fa370f5221bc089a4e8d38869ceeb4b0bd890302047c435bb50067306502306efce1aea2417530996974ce44a701332e0fbf4ce7e49e16738d1837c9939cf955ce491d274750f59c36a8595527852f023100f0d4bb7f511ebb7f3b0f09b00f5dd46be5c392b801871fb501e4e2236e2da19c9b8b3727c850e154665a2e6d99d6a8b20302047c435bb50066306402301d295426cf15afca3a8412065e49d171ed4f8201c540bcb7c5c3d47e3769bfd6f4537afbfeaec15591c75f38c5d67e4902306a50d4d0a12b091441316ec9c354dd443bb2a26b8d56c4ceed7e49dcf4d5686ca257f71ffaa5c54db15a827096d73a150302047c435bb5006830660231008ae58785d537826467ade164cd7308f662f58d7f6c7eae6a664d1467e7c4d47b3d445e4af1c71a3fc619a20e96f80eda0231009b7d5a835ec08b2511ba1b902d6d600fd7d4167d976e4807fe122131a29b04295ee080c98ce764af93b59ca602a8deb50302047c435bb5006630640230479c7abfa02e197b48fd6c4cc993aa9289843d1842def53996a51cad68ff9c3df064944cd5b5077acf762b4db3af783002302cf09c70141de8013f157fe62543803923f01d25bb75989d9bb538d70810b2aaaf495e6e62333de715999b606bc9a8af0302047c435bb50067306502306444783d9b077a75cccae6961f55a94052a2478e5827cf6f0dd4b1b925bb99993b6167a90e77f527f86d170a2ec22ea8023100bbfb52a369340a6cb04e508ac50c520696b64c3648f6e6347ab367e7c0e4825f7c493448c9aea7ae1004ea25d27e351f0302047c435bb500673065023100ef0e5b75325ca6a042d8e20cfd305d3d22ce33cda6e26b1737796e6ce9a10580c7aca9b11aa18d7b98113b45515fa94302306caedbebde420c68ce3bcd73d3d514853623c1fe8925fa2561fa219d86576f03af5023a6ea523ab30cecae0af1af097a0302047c435bb500673065023100f2aea1e7e713b07c5416894995050bfb5aca801de753ddb9db42a9c0104ec7dbe198d7e93918b5d2acf0277bda1a36c6023061c4f06e37e27275cb2df6358c175cd79945fafb09db9b87d98c241a6f2c60468cea21bf93d45cfc9222ab2c046f27480302047c435bb500673065023100cad76b3fa43d8853d979d56827c72296d81de618a04ae0e8cbfa026d96b5bc35b3e7828c5e67bcfeedec0e2bdf4cdfa402301e5aadea9816d6d88658ac1390028a364697387f93c6a5f1bd201b8eddeca1a3841583c8aadfa67760e3ead224273e2d0302047c435bb50068306602310084bb644c52186b1c8ce7b71f5c2dcdccc62f505541c0305282ae28ed7487f6f1f6614a4da33f08e40b9c64e17e557eb3023100999e7bddb6b64fc559bb913ed38fb0a86eca44c028b00525e917c76264a57b552d09b210e87635fd1ab9dffb000efe3c0302047c435bb500683066023100c355a2807d1a49f6638d0b29df84316d2ae8cfdf4ac97a304a81420b093dd8b8f060de902ae6c7d92fcce5653aeebd55023100c3d9c0bf514ee52ca815bc37e7e05cff92878b9e575d1782ccde4ff1a48c2081314efcea40bcebcde702b7cf0765cc850302047c435bb5006630640230747d409e6cd8a797bdd522740bd01e26ca62f04d668277f4a69c65964befb630c286c9ab57ad40151b5fe126792731f5023079c63470c85367af851ea70c556e59e5b2c666d4d443f451e7d0c501fa25edbd6e539545f3ae1a93a1264ffa7b4d2e770302047c435bb500673065023100bcd622e66cb1296d7f12b92191e718b0c908dc38512516f578913180aa3767358a9c0f1d44a282254a56ca55970a2de002304bc82e3439cc8e0163f6899166ff0eaba70e0d382cf3eb4966310036ef05eb3fdccee19c11b5a4124ea7315aaf151b620302047c435bb5006630640230275a6e85304f73acf0b2c145f016271664b110d9b10d22db39583bfd08a5c07bf20faa7c24da667ac9e273b8d863ff4b02307678a4f1b6eaf53d227258464549e6bc445810315359f99deb875e1dca2ef1bc1f86bfc2e844a291d97a159f043f922f0302047c435bb500673065023049d65392e3c1f93333b32e9c23eaed31aa1d0dee0708a14073640abd0097a51aa7a5aa00307683acffe595d5ce983f1a023100d1eb9a01fc74ecf61476926e72d6db569d1c3366f9bf30791a049a6dd7ca4a65cf8de964e806c2200357bd425df667950302047c435bb50066306402307d5cd8f05b3f09601ec8146d3c4582c532689fad1b7c1c4383061475280b4897beed4e9f9d7607ce048f4aa08bc1f3530230183268991db355e2fbdbf896f0e1f98669636940fcf0f3e92aef819a39eecdd9ddceda81c62c68909a2294acbe48e40e0302047c435bb50067306502306a2ac8143ca623b91575ec5d12bc2c381157fe1026dbb83d28aaa0a5e9c87052ebfda0b6eca44c0e6d8f154cd347da50023100d9e8ca1d2a62b37bb4af4cba45e9e5899e339d44befa9e9b4229a22ad8d4b97cbab98fa00f6daae1370486c358d1f4be0302047c435bb5006730650230510a8092b9804ed4c2dbd45a73ae73f8f76c0da77d2f79e86e1a67f80408303786d951643423bb611d9379662bbcc8f1023100e2b3505b75440f358b616d64b66d6751cc43b403c7d8fffa668b261a896d07cbb85463565a041288e27511e84575d7790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f26210e7204519fb0eb1c7851a676ff84b97c9e192ab9334464e253d246431b7cac447c4a31266a0567bf32b8a700e770230231d9be8321182b15bca1587a0e5e200de88c4c5f03f0e30e72222bdb11928c7ee3f38ffffe629d638b9c7fd50a5d1220302047c435bb50066306402300df5825f2c5aad7cd7cbcd1f3a9a42bc2000cd87367262db66c98e29e7a787b14df88efbf652eb76341e2a2b22fb093e023053319d7be6f571ec1332762d1c25a7b422cc64731b35e08a3201db265c3b312f25ebc3343a2e49867db691775b76730b0302047c435bb50066306402301949aad096c12575eb50870dd306cd9d6e1991c216411cdf551640d9c708059b943fe46c051973b97d24d4083f6552f20230357436aeffbed6a9d6db566c7ce6a998450e1040713b23473533f770e863a3c1d0a93bff7a5e5f98a39efcfd140311280302047c435bb5006630640230206aaa8c0a16b8b495cec114f3de613a4f0dc0bf457d5fb6f90cb4c705344099242ce96c59560f7245871d3a28d6367b02301803bcd97575e6838ec09738fe62bc64ce50ae00d89ef08d40af8ee795bc7c22b78fa82acb00165e801c8ef6eb2502ac0302047c435bb50066306402300873339dde309a57e2a6fe8d6c63f5dacf85953f9653e530ddf0bdfc08ac1b02db0e813f92b0d0dcbdfaf08abe46a2d702302cca5c37d1ffae27272e139aaa5f57ab226c4b362bc55a64160567bc62da77bf2300c2d7b0146f43bb935cb8e54a00320302047c435bb500663064023068e746a441c9f25e71fa1b0a67afd95fdc26e611647f285855046d93890cc542ad10e9782beac5e169fc4ed24c9fb553023046da44946075946d419bca75c12ad845f7f9ec2b09828b75d8a927769235740b7d096b55f77444fcfd8c160562e0da6f0302047c435bb50066306402307ddcd534fbf3b10a79a39de12730551ad4e0f88addf897ad0310789ad696206436d64a7d42ce2a2f65664569acc05476023065b02d4d7bbfc95e56cf736e30e6f033b341d8d78e6a772721566a1e7a9b08777fc91af8cce8b8c24ca2f2fc3128a2f70302047c435bb500663064023075da550e9f8cfe0b1a132459c97008e6f89ffdfab8dbb3241a9968aabe88a987135c7321e67a8c5e7e769f43584621dc02302726ff0e28549b9fb2b2ded0977d6490a3e309faa5ae0135545470a35741c32aa807ba92fd1f9105c64577d33a86980b0302047c435bb50067306502307e8c60374d3f8aaec72443882836a23747bb8ab27ec8527079fdbfd6826627497b38e1cf6d005775561a30287105c2c4023100e51f9e3834c90ef9084c27bc742e064c22b02d77b1e73901c9c2d6de343709e15dbe9ff85b4dcc5c41417171c266c4d90302047c435bb50066306402305ff9421abb4f8cf6ff0c7202a38a0c38f6fef3954ae80986c75feb25ee3b075a3bd98e6c0cce393f79b41147cdb59dc802301660dfe8325874627efa0260255418be94876ea955b5b6f51aac39db919b88f1a82470ea9ec2a4e57877ea5d3e94024f0302047c435bb500673065023100da266f068f4b5c646a824754063e45876a47602cef89956c6e07a0f9cf86982d3d3bc188fc1d450b2d71668e244de48e02305d5e7c363abbcc5a5a90853287936c0c6aacfbbda73d3f06b0d88f642748fba04cb71939ef20fe8d4b059c2f631019d70302047c435bb50066306402301975d9b7464d826fbb6119b160a95a9b37b54ae718c691919188266ea2d6dbc028e40f3c65210e1638b6fdfa10e2589802307311c0ad9d01bc7b24e8456cf4c537f26154d73ce78e271b8b4a477b83a5d889bbdb93172775b76075c2ab2c31d83ad80302047c435bb500683066023100eb3e22614f8ebf7d79f096b1a33b2632196967b93816d56b02631ff579edf008c36b057582726225bc8de8724d6765eb023100b6f3817895fbaed136ea3942276751b354cf8812be92324e855aeaa5576f567e3a6d06b6a0e5fc73fc4f1cde02645f4a0302047c435bb500673065023100e33e7b357ad050ce7a6c9a4b2c1f673a394d358983156ac76246484e6a5b192799df57e1b7e3e409b976b335f9a427d20230574816d15c55e15c5feda6258c60eef44c756dd276b2975952b18b7b5c167717e3416d36771fa04f4d7b4c2b06c028280302047c435bb50066306402304086fc630a94cf02a0d70d19eeb1c23070ed04391c65a108afc0e7280abb9151a4279fe5c0c27e2735f295dc4c043b7f023025961eeb3255c232a2f6ebb06871a8af76efe7ef403d257014dd74ee5f2c0eb2acc59e47bf3726c170fa3095db0411120302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb50066306402305924a34b56d19b1fa47cb231a14c599246ed823c1dfa474b7b963f482b3e9152a40b63d92ecc2dfdfc2c41b8f6279d000230187d63a0fb2eb9b9d7b1a7170164515453f397550883968705d3c8dd99c5b3c6e263f7fc68ee67d21bbd9073b8961a5d0302047c435bb50067306502310087b859d390b3e50131b1a1db83e7c6aea2eac4f723b1cf701b522fa668f1241c6a825b8b46e6f251799883cca78d40840230709a2a0a13261cd7a650a59d6ca4be886a91c2fbc3340c413e50a5d9e18c11a201bcb9c91baa24fd7f4694e7920d55fd0302047c435bb50066306402300ddd9ca66aabdf3f7a8b4c3171497180a60ad8c26fe3cb686a7ae24c3233c2c326f9bf657cb7c783a1e88acf33666c040230748cfc868a82e229518846a5b83783f3a811c1d31a13c42d04a560004a4ad99e5bdad634045022bcca540ca574887c700302047c435bb50066306402306e5dc991d886797d356a6a333c7f82553e7e28faef30f0e2c8f86aa3e770ff2d4463642a88f1fa7fb44d11d3357b328102302ecf8fcc5a230ada9842dff189e6de69144721418bee87b745f4a64fd961e870a3d142c619129ae410a6a993878a8e070302047c435bb50066306402306f6d2e82e62731d8052b0747411f3d741cdcebad90a8bef6ed2a491078ac1899a64ac38f56823311bfd4c0214dfd8e1d02300824c4ea9573cf4fc060ebe3950d99844905f684e6375c936a299fd09f21f111803d00902bd287b59f434c46659ac7230302047c435bb500673065023100b0b3b861b1de3e8f9cd7241cee39906e15e8195eb6b2158014bc6ad84133889afe448594fd232801ce3066f1e7553122023044c53d975e6c933126c95d864fc27a2631431c274c47be20ea118aead6f3300af3d049315f9fcf751992d81f959c548b0302047c435bb500683066023100a29c94b025f49196f3da139475574fe62b7e44e2295f3b47b6d0d5f26701c81f1e8126d5dedfe52adba41754dbab517a023100eb0bd9e4ba1ddeb20e2b12013446c2fa040a16c9d96fd68aac665de6224b09591d21c21cbdd9738f4b48e91660a6974b0302047c435bb500673065023038484bc9dcbcd8b115668d1d0e86446ccdcfb8518f957652b4d22a8708c9b312c7ee58a766f4c3b540030fabb74a0c7f023100ebaa515fe956349b3e5c5daef77d09325597cffeda001c0d4c10bdf875b75d25dfad86d8bf7ee72ef3a2e3bcd67153a70302047c435bb50066306402305acb675aa2d52f6000f7cc76d4b6c040c464d2bb7093e13c3df7c02d80741104135ae6d1001c8d357ee04009258d081202301652b2c3498bfe7decad93b53d043dcd5ccca5007a64af445aa9a624fc8fb831c01fb9d13f12da8e9647979d74a1da8d0302047c435bb5006830660231009bf3183dd67215e12697cc4febaca2a6361247bfe48e9099fd948273c9ae62fedf36f84ba404a1191d9a879393b14665023100efce9710b08565581962b5d23af45a8dee1fc529ce12f47be05bb1d1697a613804b9e4e2959dc56647b9165cee577bb80302047c435bb50066306402303e6421592ad4a4be67ab7b1076c62f572bc45c5efbe14b17cdb30615921795f5cf318f167a83cbf447e0b53bcd8cccc702307a996e5345be8c334c75638073e8bdf83e36641b2e40866d7efd72c23fbe8ba7274a4406b40f5229fb34e9924317e1b20302047c435bb500673065023100db4fb327e5f8c7cc0b4060eb33c52dc3c58f429b26bff96cf42191095c43bb0e9daf7c29c2669730e45f03be3fef137302301164317e9d7fd2b65ec4cd4b1f40897d358276238ff3aedd9b13512a4e6cb2ba2489941dcdb0a973e7b47a05ef2f14ea0302047c435bb50066306402304dd7bc421428171cb81ff22392a65fd9f02cd5b0ac0428e9eda6b3e39fdf1cca3a721e81455689b39ac70d6035309aef02304c3496a48978d5fe5d428a7d1a7ead5418117205c3e10af757811e5cf31cec0bd332e6ec0bc58ae38aa2c20c118c44360302047c435bb500683066023100938a3846da9197abc86585b922902a9204065f3136af6c4c2c42a05906afcaaa490c4fcbb4138bb7685c686f277df591023100e8b2c0aee460f80c44df6250a66581784583cae9aad2bada1ccb547ae5e9924bcff2304161e4ebab3a935fb7f7ba28580302047c435bb500683066023100c24a88b9463be46c47ade1c8dfc145a2fd0722c1e3e9df56c0e70c7fb0e0944622eeb37737fb35c99d7085c24155857f023100db13afd8e78a5044745c1d431f4111be88a193e9d74713c9ce05210b5e3ea3f56bc799e9d305e5046901ccf49fea930a0302047c435bb500673065023100ead51213facfd1f73a5de053659eab715c63bb691cf7bb7b77481946021781471084c92d3913ffd9cd56e70ce17c400b02305fb4860e36208b2e608cd7f974e03ecafe4075728a97daec2ea0d2047f34cf2d30b12ab08dc7aae77465e2ed5cceb8eb0302047c435bb5006730650231008276929ab5aefb90e3eef04cfa95b070a12bd6d7ff575ea0aba84b844dcfb2c1d78bb24a4b2b596f47db1605b8e41d8d02306733990a1867c55e8bf2be5418b46e6997145d6350319c62309282041f8a1e08fddf7f98b03e851f496cbd43884084c60302047c435bb50066306402306ad122a31be4110685cd2954ed1f5c52d79ed95a83a557f71f56f617b4c648a594fb929332a9c03e3c9cca56c092b0d00230209eab56f34ed010f4177102ff480c60ce30660c493d457489c90e74bfd9d6c2cd8f97a8c8246a8ca57c4d9cd8834ae20302047c435bb500663064023071710a515b05980e66878c392071d8eed6efa3d314bb0b5197be5bdd678ecc84194f46d252720acaa8f961d00a1a57eb02305d657b1a72374d307748847c120008f0a6453d080e75fa64ad931591cc8a3b828fb566673c4edafe271dbde4133a8bc00302047c435bb500663064023018518c9cbf7514ce02d0a086d70eaf49ed9317e3224f761806dd14060cab99f9cffac8bab955f61d4859a686f0963393023002a1fa9196498e07bdd5cf7afefb48f930211fce7280ba3f3774bbc9b0d13df37bba2bbec8182fa282bce88bea16ccf80302047c435bb5006630640230731835b465cb97a6f196daf660a593dd65c1a1d25dd97fa808068468695f509c231af1215433f8657e547ed523ed09f6023001a5f76967cceaa82c41a9cbd2a11e397ee979ffe7f6ecaecb6e50523e82e721ee26b41737f0a8659277611f19dacdd90302047c435bb5006830660231009883ff3ca6ba48665232eb3c269b26b970dc01ad7de0d6ac946ddb3ce0043b3feceb940f42e7d36802f24a731b7eef35023100da48d48a54038f85f1db6975415f7a001b3b0916f1bf1a997d01899d9c88d67806695192eccd8a6dcc205a6d295b12070302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302d50198bb6f85589cf2219a32c67ced3a59568f3a0427e6fc8386063a9799d6ed6d95d7da28a3308a3a4620afc91578302310091a2105d8f338f474db9eaf49c02a6da3e470dadee28d50f846ab998bffcf39dc3e610d18617ce9eab394ff04b3cca050302047c435bb500683066023100ba2ef80d02cc4d0f524decf1458d962f34dd6a1444c2ca17291324bbc70e2a3b4b4e806b5c67f27e1db79346ded62627023100b17a98b72c60d0e919e8ec5a81f43d5f22f6925ce616c693ce23b4f755c9c97983f67d24b99f415c0c48ec3ff6500a270302047c435bb500673065023100f83037acb5ccbbe971e928c5713c7ba4a7198772ed6890ebf04a99337bff223c0385687f8a5ff6301f5e9c5cfa66432d02300b46a4c8fdb43738b91ead294798f4d0a06e5664c1f6c693f6ba5a45d4f47e32df3eecc3d1684a059849ef050b1f90150302047c435bb500663064023013d29fac22b488b4e1fccc7f9e7c303b384c7d13f916bf95c66d1eaf6fd00ed4f9deaf0375e2edac27afb0aeb1f109c302301bc2c1f71ef273a8ab4703dca5d69e710cc7067916e1a14812f8ea9ef5a66ddd7b7a55bf62c4890f9b883b0a5f9872d60302047c435bb500673065023100ae43b592ad760ce5f1f499c2915555d82139e6563166b15e7cf6fc657fc67287519428a405a9c5ade1615370865664c00230456189350028b98032706f9669585d8c09765b323f9187f897693737f7671f6054dfce24736296b093e69fc693e16f6c0302047c435bb50067306502301155b80602fa0a2546fa77d09e113609c1c50079dae8f96ce79e328fa85716cf6e167ca9cfcce51626b389fd858fe202023100ea94eb8ea948aa0f3695409eae54a65dfa512967be031b305e8607c15399e15e97be0a2a5c37ef1e6ade0560f11b73520302047c435bb5006730650231009dba9cb0580e02227f05ec34e16deb6c27dfbb05b482bc5c81bf0f2693bb8177ba3451d1682ae33f25953ed781569d1f02307b1fb8716fc99048ec7c6c9c624ebfea403293baa9bf787a54d5d3e17320d41c61f1473c981800cf9beebe8210de6cd30302047c435bb500673065023002e79a8202f5a8d46f7de88274c67cbd0a477e987e44fb495783270a9ea9cfd29adb7c1e2cb057fa80ced55c84d54a27023100a779acb154c1b7d1eec07df70466282440b3b998cc8860daef5f57793673c2d5c1ca97de96890de38a56a9f23453256e0302047c435bb500683066023100954233f66bf6eb32cbb92755aa9ec5ecdcb6f470b1803e57c04ffd5ead090bb78491950f2cc28ec537d2042609ccc447023100d9741e92d96c1040658cc61e088c412c10c18de7007afcb987580f97cc07629ee5e570c530f43763786e38d8344e1aa30302047c435bb500683066023100eed32c5f6031172986f572a9907f0515c047c1153c353861153c536e3f7b740ed6d51a33c7d7f09a65b9996629ac7963023100ddc811644ea5e93b1822ab7d57ecab7026b6bdd6390e2b3007a7f8b1cd14bfb0304eadf0768aff38bb380ee0ccaf40760302047c435bb500683066023100bb7e1d36164f09ed6cd7db60920070c80b0638862479454c63549719efdc709ae6250fc4c464d06397230ea840e81e88023100a3b64930bf8b125257394c42cad9f067a1e2542f6c76be822792feaadbc9eb9745ce0866f11fa4ccede81abfb64c02ca0302047c435bb500683066023100d8f8b65208f0aa463a99a7b45b1dc48172515aa1735ed0629880651e3a2f5a9addabe32b29074aaecc8b4f550826107f0231008903ed951c0192a6b4ce75933f6997a8ab47ab1505b79e300430dd22527cd764d05564548f695b0ab456d7af6d2c156a0302047c435bb500683066023100e571d0c6ec98a24ba64057733411a772e4d008b655e50d38ca24c82ac8e7b30ce5133c2eb50975628dc68e3c9e0709e3023100b30969ffce6f996bf7d7a25b993e4110a44b7606541e6d7d8320f5169c7c9865dbce148044b2e3906faed6a5a60e12910302047c435bb5006730650230467f8bb5636cdfe79f3aeb37294b78024615d4626fe6ed930297162f032ade8fe294181abe19c4176e885d687bae1e20023100ea4980283e52bad82506d9d3d04a1ef2f19e3c277067f17631a06110b19d5ea6945c46ec399450c699d7b44b0a48b7ba0302047c435bb500683066023100862f0d9176ac30052117935e7af2d1d083fcc029833fa1922f4d9bc34729bb8124a0bda428b00af6eaafb059d58cc41c02310092d25220754d202f27d619bfd62b8c76d871a4625218d507b4a8354b52bef9121e6e042c06ebde27671e7df117cf708f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f98b4bec63683be6c6475ce3b0e0145a9719c343cb51d633c63251ec022d695c610b0d4038744313c10b96540188d121023100b918109a7c20187dc89965a248209b61ce06404c67b555bf13902f9560b87bb2f30640732b7f9fd6e173d6ac468103d40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304517c9e0a368ef3c7e4a0736b29e7a244a7c3edc8dae334a528f020ed243241a544a457ba43240050ea3439bdaced3aa02301178418f35aa14d52078ee0d90a3880f9e0548a6706eaf01fb5eacdfba41722ba19bf9907ff9b73ee4a578817ffae39d0302047c435bb50067306502305164f970a9c40b062f8106a5b6a7abfbe68aa173bc84b89204d467f6a500f4a11336a359186fa17cffd17f60fc537ec9023100f2edaeb15d4944f467b1190c0408505c7268c8ff19267dd262a994ece4bf766cb953b748b8806546f56f30ebc4db8bf20302047c435bb500673065023100c94065d79c1aad66d998e061c97b4ac9bb36c093f1cf191ead29baf59c2086a9bc5aa4d664bda232bb0563d8755d21cb023024879abb1c9fbdd6bc2ec1417cce84171d3ea939cbc8d5d71b585f2d989e4ae46688b45684003bfca0dc478993868b490302047c435bb500673065023100c3b0dc102eb30b478a0e6952f09a442c21daf77bab0223794ac8c452d4d4b5e86195c1f899fec2b7146085bb4444e10c0230093740a668583b1f4f9e77965041d7b07e572869edef0826121fbeb5162c805180ed5994778ec02bd33df0bd514b5f450302047c435bb5006630640230587d29a8fa0805762c94847ef0b520572adcfd8293c93175b37f8acd310d1cce002cab6ad107aba3b68f2410e79709d70230180b4d71965a4dc700362c4dcdd1a9918e9767910b23e15ee73b2cc75dff24345ec68aaba4c7fb922efc61a0ec143f700302047c435bb5006830660231009a96ee643c9e51471b30c32ddbee32c65d27bbaaebb856b605ba7d2edddadd50c2c81dc9f7d20df46d03904d227d161c023100a11dd2049965a8b73c940620ac95aea0ab2bbaee9cc8ee4d191a4403748518d8cfc5ea019659b75d0f05ca6812d2978c0302047c435bb500673065023100b25dc824f97821a0b7889b1bcbc97a1846f13c961bc560099846426c756ebc1b554ead36aeaca8b89a10e24fd59075f502302f8ff5e4a8cfbf46bae6de53ea0a468d1086ab59c8659a2c2204d01eb8cd411233043c9a44c9d30884421b69ff921b580302047c435bb500663064023029f0b0d72e87ef272477e7943c2bda2da286ab83546a556422e8f15e93395b39dcfea56c6de6dea8ab47ee1ad14b1be402306e74ea09b2e1dceb001d4e898c8c792fc4fd963e8f60261b872e72336fb255d991f304f74a84cb8750e4b1f9b8a197ac0302047c435bb50067306502304bd796a63c7b885aafb802e3ea89cf94ba370236562b1709a9924630156e36b2b45a2560d2c8fc34f9da27751ecc551d023100b6c48a9773672e746ddc21ecc35f0683154870b9145590232a308a1d3de56006c0f9c0c85fb5797975fcf4f51cd0dacf0302047c435bb500683066023100801959cc85fc3882c6e6dee777a50d63f5245f3a169f5228cd2b17ed5064b8b46d4f1a61b579618f6fa9cf7f1d720761023100aa7a32b130fc9dfb0e6e8879cdccfa55b5487a7abfbad6125c4a9f1d0c0530a5d0f14891b67356187f3eff0d111dac1e0302047c435bb500673065023054ad3cfc18c21c2c1d104c6389758098aea3f41d702025ddbfe9c4ffa55c346ee007d27d753d715fc628fecdbd367e2e0231008d6d2b9c0c7dc6edec1d039dc899be7b28a28074474700a4629c1baddb5825f04f94462acf0bc6d01e3246d08570350e0302047c435bb500673065023100828e1621ae95b0575496ff98bee26870271b97b9b5c8b96f0b51237e46a5ca78d11f6a32a64b4d5455dbfa38aeb0ecc60230581ce6fa81fd8bf86e6e87cc492ec850a72bda09a4dd9a8952428a5894fdf3564c403e6946e3ac9b45e3b14b98f488c30302047c435bb500673065023100bd6fa474bb79346abc3455bf5b7e622e3ce06d6a6c7ab85bc12b33cf48c523ec0b62abc548c8a63d8ddd694449a713150230569fe3e76ca2fadeac745d01a3ccbda3c2c46da35a6cc174317c5c4a893865c32ce3580bdb4ebb1bb0eb1f30fba2c0dc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f23dc17d2c5b8c04a8a519f73e66adc2bd0953c195c8313c96f0aaa3d59d463f9dd0bbb142b6b70bfea06e54ef47ee780231009c5b13c62cbd011c54f9feab292cf6f1eab89ddb73508bae8354fa10c09f16bb13b563979fd64c6c923b106d064e5d550302047c435bb50067306502306aad4f0d8feef08f38dea1872df11725c9f734d1e36284c2dda2bc59265940c9b0319fde6ed7b4c6088fd3f3e2765c1d02310099afaa571e752e3197eed9be7e334d8fed3e4bfa3ec73c8412505527dbb3e8639b493a08d7b736d92fdeeaf781784fbe0302047c435bb50067306502310096b9e596ca489a2cbfa4429ab6610896c602eea361533331210bf7e9d8869289ebd043e75590dc18599f26d5c1bb840b023069dfb9ea7fdefc342a23dd5fefde3bbcbb965be7802d07ff09df1935412120c70a4d2452a5ca1abcf3288790beeeb8260302047c435bb500673065023100890e2e368d59cdec75b57f5a028e746edf06294fdf3a26bb9de37b5d18a5a2975eaa84ad3d4c37986e46f04dc62e64af023056fdd16f88a899b143d82b6ee8c78ec7689522f864867bddc776ca894067dc7d13f071f43088ef39f6204cf4966ff59b0302047c435bb500663064023023641e6f3213ababeb4284401e01c6f5d8b969442a02d8ccb519f3127e34187215f59af8ac4fbe8db62fcf187e130aa7023004a6f3f0d781f6e6d353f60bd038dfc6bc0fb7f5288e54860f4e42f9a2987e269d5329991edbe78c7a8fe682512d1e630302047c435bb50066306402306d9edb09bee5d2bb4970e0725c88bf956d1b85b3dc4cd412e73441bf511d838113958326cff90b3cb3406c8f3e36d147023024bd3d7846d78cc5319d8f9da71b25e8cb84e9063ba35686ecbac174f657558b62e46c36210a3aa3924631d22b719bef0302047c435bb50067306502307ba61d71ed625610c52c7c5725273321e948af951e10930e02e770ef7373d13015872a0d2614936cb945ff8e4e1d8d06023100e80ee0c98b07081be0917149c1fd7ed2fa687a0a7a2957e118058cccae25419fcb8cc13965bfd29b4bb61ebb32ad03210302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100c65814444170ab9f023f1d6098d1ccf60740d5ff0bfde92adfc0a247eb397e575b2c732c1d39d753ff085550c726624802300ad589b6b4d5e90a3e3b06dc32b4b96bd6f166354448dc98406f5bcee84e96271541f25eaf0a88e24e5b27d9464bb93b0302047c435bb5006730650230339f39e64447f0f01a28deea37561a38ea034dcc2fa3c39739e25084958c06fad07e6650cad448f12f62fb1d44bb8478023100a047b352ebe5120553e58fd1cded54b29f32d4a76900449bc32d2b76a6a012ba00045fb794e70fb4630066f8e4dd88210302047c435bb500683066023100bf17759d58f8c339b3f23c005076c350abeab26b3557764b1827a0780b0217dbedd77a2678c270f7d2f7662b40889871023100acce386dbacbceb5554dfeaeacd81151e4724ca1081e7973e275543f4a2fd3f4f6bba2afbf432ec09922adc6c4ae02d60302047c435bb5006630640230407548f118b0e1a6ef814c42059ce1ede77dff39e3748972da9406452e966ded87c03efdeb106d3e9e803c7f70e829f00230194ee743e24dbc5fbd7f25d7f1570efe179cb9af1596e2de0f9773d9c0bc8e4dbcf6d1a636a4d7455bc070baeec8d8c70302047c435bb500683066023100de4204af6640ad7e43b2716a3b3e985871a9843ee0965311b1a77a5611b6c715c2820d2bf55e735a524209f00e27d549023100914e47a213c0265e89dbb50e1ee7960c0d613a6a20ba5e9956644a80f8c7bd45758871bef67c818deaf2f789042743300302047c435bb50066306402306e659659445d14cc084e38701f21757b85af52aa567b0ee42c0ce665286baaf2b0c0d0fd24e1a2ba242f540dbc8d283402306d7fd2033d891fa5e4384ca5c86b88c3bfef06f7b45373d8ce692bc669f5cd541c2850e82c5689e2b76dd1472c684f550302047c435bb500673065023100d7f6514fa797986a450b2edae8839f9225675ab52b19608d5002c1539a62376a55084cf1a95058ab82258df209e1beda02302371dbed7dc80432e9e1ce12c742ab32cc6b3d85fb69b6b4a367a0723eade02cbdfc17ce00a6328c691562f0dd1bb8590302047c435bb500683066023100a6fd199be1ad83ac9162e1988e359f23a740bcb754bcac0803a0a48cbc5022d2e9fdfe1af05f438aa5253f1a41e90bca023100d3c1c6ecf77e586d3221ed4a4df8e91d0a882b0d631f0d07a48a630abec8802ff5636d76e3196438f924fc45889bbbbe0302047c435bb50067306502302ec47cc66256bcec3f533ab1925c284e60c2c462b0e16f5e7e4c0d1108638f51d11090efdf214606bcf65ae863d1e175023100be425a1802ed3ae29ae1a501916f3e4f5741ffd43b50515fbc303dd544100ab9d0ed80031e05b357fbd215cfda990b7d0302047c435bb5006630640230041cff79c4cb91d3df4fc4e044879c359537ee609407eab7c7edc28ae4eea309617c57a85ab38679b28b483ee1f018ac0230705f5988ec875c399dd3066a9eff0cfdb083404262af05d570e45971badc6a453a8297dcde3997a838e291c0acd2a93f0302047c435bb50068306602310090e994585838155d12ea2f5f5dc07b2d9ef91ec944c9c6b0b679d05100528fa140e04f4de266a710983cf5f73efe8ac1023100e9ff54b49b6a08ac026ddd3ebe8a2aea5f5083b73740dacca85d055597c1c0f74075188d45b3c6a91b9de55982d67eb10302047c435bb50066306402304aa85ad4018ce079a1266c35eff54ce63b6e173ff2934ba670959e7fa1399ba184167fcf2ff0cb1cd366f14b1742bf6002302e4594211c585235452c4abbe0dc4f9ef286a801c1de1fe2dfdbcbe8e24d6677784cbba947862fe6c85b0dc8e805f89a0302047c435bb500683066023100b7127d1b90ce033aa17764e4b608548212b09bb50f5ccbc717fb8a1ae1866031705a1aa5728d2f3e94d1bd3d31c5d618023100e941a7bd954eb326a91f44c36110c4dbd826bafd66983c3a044758e28afd40a14e4608ea11276e5c0c70d53625cb50170302047c435bb500663064023079bf70b462f45faaffccd6a34148d873782558e8a60fbe0f287aa6538d369452389d59fd09d87e2b48c4c799fa6d067d023028ec2cc2b44bee474ee5bb7cda49a88eb8b63f9ede179c8dd11a5620552348263296fdceecf1b0a2d66a9ff060a75b420302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023020901cb6aca72b5d4fc0db503d1598a7963609e22b4354b5f65d62055b5e31f8d29fface2f7b8a554dfd49006da89b35023100a2b094ba87e220bea8e9010be4312279e00b8c33a1be2a8ecb676391828b0f790c1d4926ee48dbc0a939b4966323c0040302047c435bb500673065023014740d3e7d71578732a96b43e596c01b012f9e759a6a21df91465bf6cd4eac80ac71bd990755e7f2a76cf2b3a665fe4d023100fb4eb21cacd3c82079f862dbea6ba249a142a957542c5db72355539c227ac5cfedf56a8bd4d70e957483c04adc81abb00302047c435bb50067306502307c5a6d1f012f8107a6edf78c14d3f63572f1a7d6a6c368199f744ec8dd462f7984f73988831aad7fcd0ac4f236e7ba86023100c136b0f0ea8435fd88aa17e450d3ae347be98202c9007c1b21a6a1768d702b87ea2ba177db9b509462ad0dc349a8ffe80302047c435bb500683066023100a8a00d0ec7271fd783f1e7ed05c26b0a38b0f79cf5de3840e89ad54ebbac12b35d53cbb28997b9c45f38c58ea9a30d280231008a214e6c34a420eb085c39ee855255ec08f70936dede95135f36eb7fc0e679127c661dd3f7c7cc3c7665155e5b2e659c0302047c435bb50067306502304c5244788f2607077a03941a452ecf90feb173d7c9baf38b2f8706f0ba98524b3124d0c8e2c13fd5812013d72064689f023100aa6fcea24613c07b6298a8f73c79694706d8d53bf1f32bf4c663666144f94c075ce4c47f54636b4a0cca480e529828f70302047c435bb500673065023100a5a827e789a4670cc4b8521f316deb99eb6cba0c63a8c11443f6afbd7dfd9d3ae881e0f0df8691e84056fd3da75f28dc0230160c45fbc97251810a757808958c42402efc337c31497d11a12564cc4f3f31a918482d79c85c069d6b957948c266f7520302047c435bb50066306402304152f4f48d9f9dd56e99881b8c1ed7c0d5b80537b0c5f127543abb9d8f7ab516a32db787785fa5e4aec71db758a49cfa02304b9907cc3c46760ab2a252736304c1548961d9ae6ebd3b083f7294e5313d2cd8dac55218bf19f557e06d1538be8371280302047c435bb500683066023100dfcd5f0508a362475bc2551ad2ca08377a31ff83d33067aeb7ffd095b5b882dc12c48436bb360f1e7a9e784eb2f7ac95023100af632f46972d11e06347fa0fae2adb4191e1abb85af4cbe8ebe76a6d76f63990dd237603211277f760f525c881ed93b30302047c435bb500683066023100bbc453e665284ae0eaec3dec47ef9010a5757114b50d67a8eff1a0b9cfb29e638e0416cff0af92db9553639c566f9693023100c077c71d387ccc7d39828cf61c87d0de5b0555b343321371fb08aabca0d87d04c88fb4c9c2e4480054f8a445fb610b6e0302047c435bb500683066023100c4fd2c3242bce5ddfecbc661e6257fcbb0021bfd02c5c62c3514670bb1ce0c772481be49ae430b17df710b3dac505fb4023100945cf5b9408a5b7c6b667dcf3a2884af0aaba6118103023ff45182a5ca211206b6cb4d8dd32d3ce2cdacb69dd1efa8dc0302047c435bb50067306502310084a60d2323fc4fb3608c20a00fff9ebc420752abcae769cf7e2d41524e1e731161d5d60a1569e929b6e5fd49a0508d9a02305fa6dbbb9c37562b16ab22cb7b110c5172e746f4591c686bb416602d8f8823b5b5bbd53e44805c2b57b856e7611e102d0302047c435bb500683066023100b0dcf4371fd58e7043235a35975a578680d32abcf74e5d96484026194589970bf751794acec7427ed9f73275b19cd4fe023100c0ef7868b4c7dade9653db104751a4cc7689bc6a17b86d7b3e8a46c9c81fb651ca8f8a2797a95cbcd4b70e0c1a54de220302047c435bb50066306402302baf8a79c253bf45fa982e0c10f952236e219070ef47e062a9b1c87a40019d1f96fc0e54b53544b5deb70202a840933a0230734c93dd2d0c12cd74024b49aaa8e3cc26104f80f19e4033da3bf164b321c3a42ac5114ded49c15dc54191cd7c2504ce0302047c435bb500663064023043a469de04b30d78689507662fcde681dcca038d702702955c33a1f0a021f8a971706fcb8c8e7fd7527701396e42ddb302303da36480f4021faf4fe776e07b68691d82d90c1fc7f5d14a6911d50e6987cc9b79af8b71658e5b91f0378b18f71fc4230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e6e30241033c496fb0d32cfd1d58154ca4a9d45b450e0c12e656716b21b50f24779b5633c35b33069aee566841a46e9e023055cf3ef17c5c7520d35153ebf30eecaaf69c499bb28f1fde14153f1c3740cc686006710b0c4de794ea69ec908d03225d0302047c435bb500663064023059eb63c2b8ca1cd3fa9becf3834526c4f7380dd5cc1e6bf5bcbf49836221b849c7c9759d4de0115d487f0fc2e14e50240230098edf05e6b65f7f903b8ba4fe4bc2eaf359130332f9433402954970440994f0fad249e6688bc8fd53eff0ed10651f970302047c435bb500663064023000dafc97fa6b1f9e115b612c6b9f842c06b4429eff050f537a08364d354116a755f6c0e631f79eadc8207795add88f4e0230278113ff4cbea4bad2c4ee401ddf21766d9d1444a75878d5fd831a3caddd30cea51d7eec7d6092f27a3c792b4421bb390302047c435bb500673065023025624bd659a64e4ddba633efbc25e5af5d6dae2f3846023ecd3011ec062e88fd3bb56efba576882031cf111917b528fc023100a4d26bff1cb7d7d51364d11e927ff3a9a7c9231e68a56351960f15bf43d70f851188f2f1f9c28f45f5c7e5c5a64e87b40302047c435bb5006830660231008d3c07621f44095acb6ec3a1e122d869f079167f0ed2b5fcc331005af1d26181bad855622431442e084e9ac2a8ec0604023100b55860d9548189983d971927229a057ee6dc5e7a8fc55334e5017943996044bcdf9b0ca6af83a630cf9755a0fd71b62c0302047c435bb5006730650231009b200d880f1d7d08a2796c39c29e8a88cdd2fd3188bb458305a433b352a8c0d38c907e3ff65a27e9ffcbcb6674a9c62a023049afe365e160a866e3c268919f945d950a0c20f0e15e9ab022c3b906453cfd9c188ae9880db2791f3d190b2c5a57eb650302047c435bb50067306502310085d910c67db230e25d5fab77e1eb1f891a56f4f0f08257757e4dd0b3321220bcf308441dbb3eebf364473f9ec5ac8e8e0230042a7e0a57dc5eaa2b106819bdee54448c223a4675ec81af3c68476fa804943a482a70eedd9671c18acb5abc66bc876a0302047c435bb500683066023100ce67b6ce267c6f899f457b9dadc3c4aefbc7caad0f4f640b9aa4002a595ba451a18c9878a9a0972e14731534323a941202310099d13af6f42e19a4feb760ff68efa94114067721680a9ab9b2a94ddfe44994defe68928c32146ef8f5254c740e9a10230302047c435bb5006730650231008d57f9269f12e7736ddac2d3e9cec89f1653c046c78acfd0189c2ac5a5b3753e191e14f700ded4cc7f51584a8fd498660230390785a3a121e4f7e2185652322ad7085075a9deeb1c6d13892e97e3f82b99238a1c3fc017445e40b567e8f3bea9c05e0302047c435bb5006730650231008398d88489a207c9966dac60f0ae683b4342fb16eb53220d686b5cdd62258a11866c3d56bcf5e2485f1a752efc5d20520230677f8cc477c280c85d04b94fc5d11012f2acfebe4c9f4dd8a7ea3b148f27aac29fc3c626e40b0b7237ecfb191a6999c80302047c435bb500683066023100c325fbb0beb529638da64e2e4477b27962bb380dd14eef3abf322ebd08b0f6186f65250485a5e56f44bf7deb49148333023100fb8ab3ad1009cb82e66d85e247d1b2638151b4b21b082588dab84c1b8c67907812b180a2833548a613131fc3ec279e5b0302047c435bb500683066023100f95e0c845ab9970192cc311a0c9d49a2b3285895a7ab41ebb28d26036e2da3c1a96f0942f72625cfb665bb784f9ee9830231008afdf00f4082f634adc9ed24b5866a00a0e5c4a2c27d09606133612abd84e414c72393f763e7a808082255f02b9e6cbd0302047c435bb500673065023048aae579139fee33f4e46940683f7a57f8227f73df035615872a74f43320d2835da673fadd9e4216eb6042a768d39835023100dd32b7b909feb2ec21d6e98bdbbe3c674cf79af45191da9e40a8036fd2ed79a2413a3324de5b035f4b5526b72aaa0d2a0302047c435bb500663064023045d96aff53e307d1ddb434ebb7e3dfb7043403cfb296ee513bf8519e0475c799263c1058c52ce21091f14b3f3011c51302307c38ec00d4b8cda0942d6be4b620d1d8a8563c600c1c03b5ba219bb5a98b90098e6ebe7a2780ecefb3b9475d4a40c4180302047c435bb500683066023100b6e0f60d9c86d02e1fd50fe089f442c042c769b8923ef816e38b11c05dbf8b61980e235ffcef496e5ab3434940c8ff0e023100da2b28ab27bd74bccbc9d20c6e97ed46f5437e96179b2e3cd8f3adc045c7bd5eb6c0dc415444e77266e842e3ca9728db0302047c435bb50067306502302dc3743701a3e4545ee4a0a276b46ea3fc0f73efd53321c5ff9f312697c1eb9a2573ae714af3a2985dc9f701c374884a023100bdd3b944083eb1d0693336f1154ff36949ffc6d88960ab808bab21b10eb8e4605c39180e125a5908cd4cd64d72f053560302047c435bb50066306402306460a9458feab2cd6f125751d520ec289bc6058c89084b7eb4172c6f9e6d5402c8ac2b98c993818c5705609447bede9902304414516c9ccd70237dd705c1cc7038f3ef658617a219b1895ba5fd065638c4d73591564aba217127ef3bbf8949ebb4910302047c435bb50066306402307048645d84880389397377429d537ac15b62bd3d665e29f846be64e6f6f1799a81f06e969de6b6b6ec6618790df6ea1c02305c0243a96b023761ccbc6b13aa48f5c222fadb3131ef5f195fe5c5a3e68bfdf07169b071e6add43e21c3132a00fb5d310302047c435bb500673065023100c81cee20a91c155c972a4bf0ed28f70bf2ef51793867e0e3239d0ab6a3ffc8824a823ec184a813c4dce050445396049602305622c3c191ba4b3f5c7cce1a03cf44d5f4f6d6937c14a3fd101c119a24b622139e3ee71d5432e0ada769c2601b898e660302047c435bb500673065023100ca0075b197bf7fc73d068b920ff2a65462a9402ed96db10cf6e2ac010ccb0cc2e343b6e8aa051b7ece6f60677cd77c6b0230431385c2df4795bea3473982da2ebffeba16161b45446dac68b702d04fe61b02b7fc359bb22ca4f6e627c5222e4581a00302047c435bb50066306402302002e7804be4dee869745e5373594940cd686525653261fc1d0bd935e3e9eb23401c27e4196af15f0ecb63139025607b02300b7fad94eabefcc76a9e42a3142c7d3a1a01ea3e961380365d2ea0a5321de1b7e4b2670fe11abfdccadbd75ea674238d0302047c435bb500673065023100d14569fe9b404ba1cf3e145e15808a45b7a9fab5e8a62aaa672a4fac65886e1806c0ada01056683e0da095ac550c0aee023022c1ac68e47cfcb336403ac5247b762228f178fb79052d55692428b1432dad974abba413bbc2c743920a48f9aa8d0a810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310099721cfe6b721b50921ff78c5ac72a436a5efeecb4ec3b01aaad1e8ba6a8e4f841cfaa49e95e4dce47d347b992d316b4023100a12a878b36e53e6b01d4133b275c6e24073c92ab68c4e9524841b3607c5b8bdf65fdabf04afeb7bb304f9497c3233a990302047c435bb5006730650230368120b0d6a3ab4ae7b7343a2e353bbd7a441263e4287a6eb058040e7de11ffc28f7698054489a5059057da56aa3122a0231009f78a08eaefad0c5b7c9375189d80b83be3768c81aa68e3dc4d4cc1c4ebe31e4761d296071d00ed36dee5ad8572f6b350302047c435bb500663064023002fbe7081eeb27f36455f857c3859579d153ba0ba5ad9751206139601949fe89c842128c0fdad61ad0335c4e69b703a002303ce90928c7c5a860429f24aa048cc29c680a8234e0f077e198054118b918396cf69e6397ffc9ca53da7fb52fbcc71ba30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302720a34f856c4219ec0d36d118774b190679dd618faeb1228d6dd4f33c4a77dc0cd4ffe1506af2cf027d7d2abda7ca00023100c3d6a62acbb807fef20c5c43aae449f9324b1328f2da596688b311604ea291dd41839277b534272eb0a420f1eca0e08c0302047c435bb50066306402305198a12a563151631fabef68e0713be287dbc0a5878ef7d8695a617463c57410925e059295a9571c6e2aea6bd39e5d2002305b1d38d590cdf7954f4e500a46540787083a39b36fc3d5adb7e9c8b72bab5af8e635496ade1ad3fb114a8303518c34e00302047c435bb50067306502304d43cc2434b711d5291260a6cf6fb2e3da9e944e2d1f9f669cbbad1447fff0e3e98b64d99a07dfbd5020792286a0573d023100db81c6c9460241f4e088c212dbfacf616f9734ddb0e2df04282f3916891e0fba03204bfcae077fbf8d1272438b678d5b0302047c435bb5006630640230476283a9c7bd8a6598218362934fd22ceb014aef4685577742ce173701a3aec26ca5619bd4d1b53490973068097e3447023059ab7ca6149a79163c7ab4c38a41c9d3607b4f9ea27b06913fbb821ccf7eabb13768aad9ae1eb51c12f44101737165bc0302047c435bb50067306502302a3a4e5b68196eeda3ed7a00ba71b0d2f4f6df70811e31c4600157e49fe926516f45c916064da1dc204cdb2f09b89d7b02310094f33558b5397d550580a964442f6d34e256279bca6789759ff8cc6d01582e0b8399bdd8e3e3f161ce5e77465aef48ff0302047c435bb500673065023100d3b4541961e0762040cec19d193b02d8d0983b234130b626a85a976bf4b8cf7d0e8cae0fbfc2d5026a46626e2024ff230230231ffb1ee0abafba6207d683f0e685bad88d5ff237f26b8189718837e6b5bd0eae20f2fa9b58306877e69f70befc2a8a0302047c435bb500683066023100ecd618f41e15662a907c9fd0ed3f8a74c79aa5bb33f3bcc17468cf5c8c0c1792f68379939ef869686f3d70e8a9bceb1702310080a51d22b8524a383b0225bf5f1a1d3d0e7a7c5439eecf7ad4a453744e9b697adf68f8482fe74e9868a28898b55d0dd80302047c435bb500683066023100ef67fb1e5a5e28d720b5b0e41f4028205e1a84062c165283d450d77516b0e6ca3f9c1346de783458dfa7d58c1347d7e1023100e4ae1b299098b1a9c3e1b98d0265b8f8a1b37acdbb1da835dba01a65b1d0dc10e08df6a1ffbd7225b27705bb5961e4da0302047c435bb50066306402304640fa1b1ebe670fe89c935f476d732effea63ca8eaa38779225c56a9a264a4e23e3afb9b76cb8df796cfe7f8c2df0180230318b0fbd2700f0655e1bf0d2574344ac0ee77282ccf33fdba539902fb1abb83d32403d6d59a628bf5a02a302181459000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cec4d8bfbb71cd41646f9ba554d427230e4a32df891c6669da019cec19f49617ceaf11e9b7ab6776a31f5af921bba8f00231009f6927e8c27cc780a2307333be60977ba645bcce27c82e5ea4bfb42d444fe95dea3e72928411d3a1a091a21236a952a90302047c435bb5006730650230585abf48f8dcf1c3b86ac4003b1129b7ac37e8c0c3480dd5df94a433a82753248b177967d4d4c29972a809d7d7f62bd40231008deaba03fcfeaff12f102a3fdbefe4f957040806f76f41c0505e217ca6e314972f63f3cb7b162427cf0c3a2fd6fa82c20302047c435bb500673065023100c77219ddecd73e2270eb9e9447341ccbc272b77303d5c06c9856e420dc47850093ea606a646c40564d72401a87726f19023071b3f14b6dc304aa8d8290d776f8e147507633472260cf48750a064940ceefc66eb7574e94f6c3d97c0561275e9a78970302047c435bb500663064023009ee99cbb1e84bbe4e73856337b16d68a881a849e2b4c801d283cedf69de4cc53cdc2be18094dd88c1d4202ea59f79670230509797868e2be9925a872ec4ca426ee96f568c55bb06e98f094d5378dbdc3aa90aec4d6a767fe84dfdd44e681183392c0302047c435bb5006630640230762be6a3b4b099b3c71d7305bac1bb44e5b8900843a738f3190573ddcb8f0a6260dc22660eccaf1b1bf465910f87921402302c57041d6d43bfc18346e0e841b24201cd3226c0d3113a5689a1f95974c3588ead13a4b394b865b8578042c8d13d2ea30302047c435bb500683066023100ac90abadb183c1b7bc22bf7d204c2f059088319bdb25f5169cc21a34980f9738135a8b1590c17c22beb701f783023c9502310089907a700830c1f3bc76bdc17c2ffb639bbb6de6667953b8a134bf097b8e45f4746c089aaa5c00ebc0ba0302be0c3eb10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f125a60ef439ef1ef060db097cb73270ca39a33eb0eccd23f3b6b191d09c91df1b2366c3061d3988837ce93d7319b5fe023100c93109aa5571cd67300357a8651dcd7174c8c00334a7d3ed50d79c3696d05b2b903316afd38ebecff106e8ea530782190302047c435bb50067306502310088ab11d36941501d7afddcbd032c983602a3a7ec1f246490c304d43d32007f9f0be9d8efa26b284f243088e9d2d7731e02304d672f47795f2cd2ffde65d484d041c1cb2a3526e3844a261bdc80b12a26724485268a2c4919fcf0d2f5d4d2ceaa62b60302047c435bb5006830660231008ceb45114f885dae48cfdb27ea69e0dc178913f460ef63e9880acf2d5b5eaa8e40fda54be9d5dd6c5327cd90da6f7ebe023100b2883fa21e8365b5e6ef2d0b40f84ec018471f1f7289deee99ca2e12347584b0a9f212a7ec869dc5a48e8796edb311060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230687e7caf382ef73fabf0cbf94d430082b6c60edb9df75bfd660f9b678120ed46d9e85715112024effebc9cadd9086a79023100b2d04db6cc053b6b34fe359440e38270ed6d3a430ba1165c5958f878f6fab8027cf75519f24d0b9e6531cefae44a6e7f0302047c435bb500663064023078bc470491941a839e06d1e431bd943b4857d6c27e289b7350d5727427eddc3e7f2fafb752271cda9be01f3bf9e9c1f4023042068861cfae433b53aed67407d8063a4f4c3235fbc840f4a8e6b930528c99da822d6d552b91a942c4c8d30211efce2f0302047c435bb5006830660231009312e475337859c89f7f99c700fed54fdf856069553707b9a5800ef1a7ff98593191ee478ec279905f4fdcd258e3d5e3023100c615c41f1d164c394b0ef2f55c8279010a9b66c3feb60672c2f5eb50baa9c4e1999b120b8e47667f62d55e4a275ace030302047c435bb5006730650230687e7caf382ef73fabf0cbf94d430082b6c60edb9df75bfd660f9b678120ed46d9e85715112024effebc9cadd9086a79023100b2d04db6cc053b6b34fe359440e38270ed6d3a430ba1165c5958f878f6fab8027cf75519f24d0b9e6531cefae44a6e7f0302047c435bb500683066023100efd78d778351197b01daed9590145cecec5510d68e6eb797b019435a35b57852971adeb66042856413c132e8c0efad250231008f2cd7a6c2e0ac578b9701fc461cd05304853012dd3c57f779a1e0afa17aeae74a0f4e098d2f2dea2fbf68a7ded2ce610302047c435bb500673065023100c240e194667b07402ca53c70c38ff4e7759ace0144d6d8f3324fedc7534c28eea0a20ba0b81d64bbff40531123498bef023006418a88c7987cd2ef7100abf26a833a17f90dfe0a3147d3f20c292651d04ebc04e88a267ca48907f50e4d0ef7003e280302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301663114297d629254abd213e3834eb1d06bdaec2aed2b7514833b4e2aa3c7d28c4d6e933eb02e702d55ebd0c37edcaa0023100c76a474d47991b49e3f8ffb4d75ab1b87eb4ad9a9a7ccd6078aab440e3f0944df50ecbcd3f8c36a586c34a791786b8ea0302047c435bb50066306402302a6b9948c873d30beefd41232ce492ad9b6332a0779aa978bc4485f4f25ca31e3ed6bd1692597335fc7a22a8d6f3235202307d440a7565b34e22f0ede030e118b84b113a6148383264049e746d0a3fd53cb77cfd028378bb17f62a6e1f676526d2dd0302047c435bb500683066023100a22e0cb3258064116a854bedd0c87b1101acc0288ea63abac3dce4fa59955cce763fab5757f2bd6db979c53f21fcc543023100e264548bdaa8985bc068b4e1982229322a16165993031dbd0b16651a2e3b2290fb25d66553c0e80e76f647e80f0080870302047c435bb500673065023021ace261fb2fde5f77e8068eaf5f499b383d7b308154eeeb9656e9cee16328ebce5f06f984415b83e91d4c083e5a8193023100da835e5c88f32154670870add814a6ce1b2ffe3dc2f8c251e1ccdd1b368c5470b36cf368dacf99c63992f41345f7ad890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230101668f506aa213c6c08859a78c78bee775d9b354cc65b2e8d177ff48dc0c89817e88141ab9093bb87064f115867532a023100da28c15a25926137809002c6fe5caffc5fa7e93c4658ea042cf5582191dea9da1d3986657935d8af5b8c1a615c43e7a60302047c435bb50067306502306928aa213651bd7e60058fe735ab3b4e885a5127227e44765d1ab28da106dfc7eca9defe7242329d1f6c375612a71d290231009f1e580a027cd9248180ac1fe8e7706dcbf93bfe0d9743bf13c0b9b2cbc3916c40fe578149f93dafa9151d3a1a6bd25a0302047c435bb500683066023100a661ca755683a38e601701c41b3e0844b0a5c513384b7a80583ba161159714b5af73eaee620eebc824e845bb5938a56402310085e9009c96dd98e86bc2b69b07cc1d363f1d14f4a0a351896b65d9f095fdda46ddb2f7affbf782a4cccb13e0708028e80302047c435bb50066306402301230476d1c5c97f0a9a42195c6a9f81ef5b7660f428ea00ba661e51ddb31ed420c116085d046b8bc16b556badaee0e3c02302e593e9859fa47c4916be9752ac3872aba4fb2f104b7967770b66e2fb7b0ee27dcfa20b9ce9d47842190ed491723ba3b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fbbaae23083a0789894a897f2d5a56d6f0041d87afdd2579add445e2a573d62f925f59a4ce0dfe4bc7f8c0dbede75448023055dc3ef8dfa729ec08abc6e364db107dde0378bb008d3b356beaab3446ee02263983baeb427165d10abd806fd00ac0240302047c435bb5006630640230355dcf3b49f7cdd61c9348f924109450e4839e1226feab7cfc536cef59b48d3411085364396dd231c9d5a4e612f3fa3b02301a18b67c3e755bc8d1ccc7f7c4d7df0f8847e8a200be9568a459285f7898c750f41e54e2b3b729fcbb13cca173c8282f0302047c435bb50066306402302bcebdf5e32d77186ba584c1c664d6072a84e45cbdaafe2c637a4b525823c69b81af4cd2bfff3fdce3dccffa1b8815b10230026accdde9c3e7439516a4f43a4930689faaaaa73070bfa0b9b433091dbeb77b1cea1998b447c1f7d29b1ea02109b0880302047c435bb500663064023064f3dbedd0cd6526bc5e5d4ff5e6babfc37e6ba0e1c72ee41430528dfdd0d8f604bbc69332f027be3448a7712aeea89e0230493b17da5fea23a09ba427fbfa300cbcd5d574a6809ea6057d4cfdb0a828877e1ab0b5ed98ea6b793d3cce8af06c37f60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bab84c60067e0a41f46a8cc41ab3c2dc311c77294a9a373e2e68ed7c9ca7112c4e8f28b6249101ce573a093cafd4d9e9023100999f19dcdbcc18ed71befe4d653c6f84dae573578f9498b1d478fac13874f4999a0e4d49575b52aaba9b7061f4fd740c0302047c435bb500683066023100aefe8481d789838019e3f5b117c89abc3df27bde2975836cfcf2fa4f6ab49928c193f4c50a4c587fd3e6d488d43b0bd6023100fa9710429ebb026b338b9b1362fe62642bd35b708860321e179c444dc56d2c863aa3a4e5fb5e85ea4161b9189ce9c8210302047c435bb500683066023100f4a3628219dfd592bf3b71b09101589e4bf364836dd87148f54218f1b38467cbc838810037a218a7893ae0fc67b5d8d0023100f03caa26a9f1e955e8188394499befb5b51b0755fe02da961e29768cac7c94b2b7e5bb631e78c72b99eb576741296e260302047c435bb5006730650231009236369bef7dd9b533bb4c50cced0cd713f29cb5a75dcaad9b430fcb9729d2b2768ee797149e41b52c08b925ffbba7ed023016be8a86a479229a76de57feda462d25f4f96d16f7034b6378f2f9e96fa0a7f7be8409e76f86c478b4c16f14677dde4f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310087b9466ee95b508a62d966960a035f269bbdd90fd5b99ca5c6fd621dd93ae6bce2b2b0b4694fe45791691e2d47be0478023052776e8c5b54996e5d27422f67969b528421e93cbfc5bd9ebc2383b5f6fe5431ed962ff0d6922d65f759a7d3e44e97410302047c435bb5006730650230348fa879574c01fe4d89ac7d4e30f6e59ee0a5aab8f1013a55e97801a9820b78e56b749765a77cdf5a28605114742c6c023100e461c78f02b7377d7d7a042b22f287e63d9ee939c0e1a6917252b67fc66c183eddcac1c657900931f485244fc77495c80302047c435bb500673065023100fd6111ba39a5e54f50d4e4d9b158e8043bbcd2e88355dcb5db68629c764f02a6df0ed56fb11ba225fbc83a28dd0c0570023008d4ab0e253f84ffda29775bf0dd2ce61edf9c2285c2828b7a78f8df373febd775d3efd8f4d63474a451fcdb66b38a170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301ea6b7e722dbeb450d04a2cb39f51f47de0f9f7e6f9abaac9416fde23835365e84567c37d8502506acea1e3fb9b156a9023100dbe857348941587f4db2b1576c4a3d2845652458a8e4d75b689da7566013dae43b98554c723913456d091e93b9e28d4c0302047c435bb500683066023100c0576e4fb0088f63211266c437990eeeab981ce28fe5fe1d98552a743b9a79db03a1045d35f82cbf3082b83b2d1e4d5c0231008d591ee045d43a1b0810cbc128a5acdbeec1c04380cd815a4d43d6551797e6a6028eb42aaedfc1cb9660a8ededcfa6850302047c435bb500663064023068d5ab4b98ac2367d64bc2700b6de4c41d88867570df83b8b603282ddf487d7483f06822070b0a7c262b9b337419a66002307057f99856060da30c149a7f5001431586b7563f9f6d2cbfbf4522ce4c3fad8fca66f6bd4b9223862a9ba4961cfe27500302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300e7416740d4c3f4678839a94010b19d02aae816a4851edd908bc5f5fd1eb55420a61b59788e0d7d6b2ffe6ae2c660e6b023100b69d131a53dd477b9f3cb8616385e4eb05e4220910f62700cdcdf7e04b4b354c3020e001456f2789666f6d2f99018fc20302047c435bb50066306402303cd224a7ff2f6c980d3606b36ae7d98d435d3e0562871d7565cea4a4403b16b8c219d87f0c02280e926d2575b30c06cb02300ec2ee4a7ed4a614e44c2e60d01a38bab90eb0010d222414a60f5afdc1a29a8654a29d72e04eee8d5a9515fed3c527cb0302047c435bb500683066023100cd212e375f9ab1a4f578b60e7aee45b32a98eb379eb98eba48f6b7e07bcef5ed0c74ae11e066db2cb18475dce1e35d40023100e0e2f850380e1d5477cac3e84235643a6c4b8461ff14e0e2b9afa02ed5c15cc75818870c5b2d3aa4116bcfce157839ef0302047c435bb5006730650230652d09c89ef8bf42d2a536ebc56e184cb523ba218946ff799de26c76fc817a2ab66103852ebfe219bf6fb9c1d0bf2292023100cbdfa5eb2c680975f1fa8d9ca375e533b849c2981798988958089d2b2bc905c4299610c5f9a3fd46aa9647387dcfe74b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023002992db1970cfd90ca3d1e128826abac24079095743a53c82b0c1b22fdd4249812aa51caf74965e8df28bed2e8e98b3b023026824cdac7f26ce81a831b7f4baee18fd907e5ab0e6b4a9cd5a09e3710bda378e8466069fcae1fdc2bfb70aeba96b8930302047c435bb500683066023100ec1b31e75f87ece00fcfc3eabba262dbdcabb45f6bb0e734f4fd76621330527e8a4ab979e57ddb9e3c972dfa58112112023100e75bfe56953cf4cbe8ed048216f615b0b4131ef1bd0ff81f2c9da10c93c80df7b2486be6b6e82e71f29b457940067b2b0302047c435bb5006630640230463f73b23da82a2bc809a04a6b1089be8c13e8760ac28eecb0dfd2eb3c999c43d028a1820df5e1b59c5b6fd7fc0bdaaa023033920b18ff354402ea6ee629cb552ef6bed03858f1e577ecd628301e00bcb52a4fcbf127f29df20c53aa6943099978f50302047c435bb50067306502310095552310091c2499718d38a9852dddccb6490ae17bc5696be4cd34ae3ed61224162d8bd32f3f354da1e48e7570d254610230041b2591a13d2a75e116ef2ce1a3745139f5795db0c49443a6d99f083d8e140c3afdba3622d62d3c37a4279b66d85de80302047c435bb500673065023024446d5407a31093509dae432d0e3d477832ba3be3d19db60281d27787baec6e892781da99c267ed0a8ba76a4e366ffb023100924d1fc7a23d6c3919fc09b721dbba1a5f2de1e292d9ed5882bd4a056dc7db5584564fca1850fe76ef42e8598a64b0f50302047c435bb5006730650230679b747351b1eae73827ae5eccae634bbfa1236bc89e9644e2a728bc73d76eac522ff6fa4db79e0aaa071a15553161be023100c82e0497c5884392bfadd12a14ae21271ec2411e0643ed6db305c03e3b6d6470ed1c51d0e29c1c1b6a79c50d987b2c860302047c435bb50066306402307fe73c6cebef3055ffaf79db1b20262eebad16dde97bcda1cca06c1cb60b890904c770b572f5aae4968faf4b40c6366e0230717059a257ad67b334c730abd3052fade7825de79c6e35ca2bfe1028c830ab15e9563f054c2c87f5a914a28222db122f0302047c435bb500683066023100e996798585ef2a1e9f00dea781eef4dc353bc1652c4aeb260027ed41603604de9fd2ab0ad2cca36ee6ca2250d14f11d8023100a22ecc51d25855f1c960dbd786f050cb6842978fc2654d8a2ddafda276611e355e720d500baaca1f811ec6dfad18b4930302047c435bb5006830660231009dd0e56f71db588e081d21f362123ea82d707ba59a298b73275c4ff5d6d7330ee70e21fbddb4b732ba164fe7be09155a02310092eb4a752db43a355ff0b4007923dd89615510a06fdba82e78128291cc63e26eb433ee6e4f948d98a8999f9ea86297440302047c435bb500663064023064f4c2e9716156c4ab32ab5670e247b7537f2e4f4e3888661fc9cf99f35572fdd482edb472e6bf0ee7ed0bd75ba5dd940230494508bf53087a3ba1f23e1996e0241461e4182122693ebd853ffc7bc64b13a719c9ac1e9e36475d4b95cab6af0ccaee0302047c435bb500683066023100de2790f929c899e80d50ad3e990b9b337cc4602f805fc6e9af0125c37bb96cbb9f9cc70db1ff2c52c711fa2b580eaa05023100b9de1647be2d3ef8e8c5a7c36cf6bbdaf1c3feb73256ab46feb151569e1806de5f2509323b263b58f25d692cd6041fa40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302900f4e3c490bb26f767c1ad4dce43d436dd6daa9e2f46b67df024928168fd8e61b4d51077623eb02b37494b493d9f6c02306ed6944052b8e08538774492a81d51f509ef23573f6d7ab1252b030b4b90992168d3be87eac13c6c506fd279cb82b1080302047c435bb500663064023062b1c3a721f7f4ab264d35fb2e599063ee17f91de8a97e072ae676f01f37cefc21431f6611d79093623f97f7fd5974d8023071434aea64bba09bf0a3ab12ac2403f97a789fffaa00a8661c2420232e302d444f41dae42051ad823a28d8c81fc231740302047c435bb5006630640230279161e74e7073f7675b187372f2e3caf73aaa777bc0e1f65c8896af11b65a6d8586a38fa1536b1c2d9263e946b3697b02307c8da7d079217b8e5b23894d8822a5b97b4d7a4d52a8713caacfef586beef606b7ca4a39ea2085e74d48a83894078c420302047c435bb50066306402304c5a73aa59f2d3589dedc76de50b62f471b9cc171d2bd0597c822f0bffd1bb9fb93ae60d2ecc3f9241fa2311a3c73d95023001097bb60225ca3fb2a4fc71f32437710a76915a0f710bb830fa474d3710965153260b5233caf8fab4a7c4d38f8a3f0c0302047c435bb500683066023100e2b984c352ab28bdc5ef9d81b759dbe581609cd854ab569c49308c8eecdb17d1b0b1384222283b1dac24d20a415236bc023100c603abe863ac3de906afae4cef5c305c436f904925ecbb00e81ac006208f2904ed6873c98a3b4367fb4f21e7b547261b0302047c435bb500663064023031af8c4f56f33022390495a8bb5cb379f561c25be7fd15339b3a2241709468201394626d14c7673fb44b863da342647c023061d7beef008ff2eb7b83fa188c98c13616bf7b366cc0aa7c2e1f1c4025d1c76e95ff4454521cfc04745f633170e6d9820302047c435bb5006830660231009a9219266cd1a90ca601c6d504856935aaf1ff0f9d5abd0a750b64b152fdc72b6430c3779f1a0d02ce56a3186f929ec7023100bc27d73d7c4e17cf6bb094cf5e7a0cafd260acf5072e2f4d4a5ac7382a88780d180f61a4e8a667995c65ec60e304a1a80302047c435bb500673065023100bdc8f00554ee5e2d62208f923517aaa1f96ae9586ed97afbedb2cdf938523cb89b78e034cc4c3172192076d9d52e0913023015a75c58609e90d499e9b59058cefc0fa95b92e7ccf1498eb504305efc1b6fd4ebd49b133eef7e7aadfb6c940e783cc00302047c435bb500683066023100a3ccde0a4b23119d9ad7408e5fef9436a0a64f80817946c65d2211ca3f002f81a865585fd4d04e639e4f7a0c73e12e69023100f352d4c8fa439a6e121471e7537eb2110054513bddca0c256d22db6542cdb60418b525be140ffebddc1d141aacfc1b160302047c435bb500683066023100dbda59527f8682dca973ac2941d3418333ba38c270627d1baf270ab990c719ff2bae9b922d22938520770f02c0e7e14b023100c36b77e9e9999ccf7764a08a2a08584de861665e0e86a022e29c73167b882efa52f4c8ba4fbac0edf7b83516aac991cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023069c36d0ce5dc4eb6528764bbf83a5ca12e03ab906c37374d51cf633ba3968fb4e2d82b80e18c4520f0ec0469c9490cd0023055fcc049cb8da7469c28f929d0145a16ae4e898ea75714daa59f0fa14b9fa8cb02427018518e50dd015f7de8265949940302047c435bb5006630640230724e2feff3ba12f84ffb1934f92459544f7db2943389212f5b3a06f9beaa50fc5caa05eb8c83f95ebc205389dabe592b023017f9d3446161570850dc1ad54bab5a829888a7ca1919385a87184bc89631701685cd4d772905a8ca4ca566dd8223e61d0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb5006630640230642ffab20c4a9859fd7f5c9e49c2748bc3edd5081308c8abc2c84c051f0168c2069fbcd42e3d2c56e43f35ab25789592023042734d062011a03ad24dc58358fa31d1c2f234d15a9672c5a19d9d91ecf23d2eac1cf6c5922d1462a71f8bdb0f4642960302047c435bb500683066023100996103acffcef968bb1a9068ce401b6f0811a8fd17cd6dbddd0b273b580725a51638797ed99050a6d7d1d523fa38912002310092be2f6365ebff9c30d99c57197f9c1e8bdf65ca5e96c126b1881e7f5aab96c4abb5d96367c61202c52b94d0fb7eb0bc0302047c435bb50067306502303fb0b21c0e90f7037546ed9aac7f0e3a1aaf6b31be36eff0040b3e4c421a79b9c217611c14acd4f39524ebfdb23e5646023100850e44317d70ebdadb3d1c678583e9f628e14ab4fe21a98f7bfb6528fc9b038f5143bcaedb11b1420d660a7babe90e9f0302047c435bb500673065023100e88b4c60d5c31aa6560d0f4a033b3c61f7eb3539606496bc69b6f0f54bad72e548a46cc0aad858436ceacc84fbc8b71102306be21313a1dd1cb3d5de5269b79a7a414c99b9f0298ec83c9fb8332aef2833da4d27766a9f5247aaedbf93bd39f8cfa60302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100c620cb392deebe7d5cbe0089620759290e70f57c8bbb9279e8ec450e3575563a16227248b0c8b7fdfd692778e33e1d87023100e5bc6f1df20f3deb6a2b8ca6267a4292af807aa9b8750d6978808843f48a8c00f8e164dca95af07b99a9ec7d49bdb3ae0302047c435bb500673065023100c05ca2bf25ef23ff84027a6011bb990609e975add2fccc293fecb7f56845728fb92440f1523cbed683e8b5f241f66e8c02301cccb572df2b04c90b9f8ffad4434b51d3bfb39e8e324f528c01c15257c7fde65a0cdeb904f5e2948f6b1791f53e9e740302047c435bb5006730650231008ea4da4f9ffdaaed6e0e6caff4fbcb096885d672a9806c9bba7360185c806860040009b575fc37f7c4f36d86547fbfbb02306c5ca1ba461583c47c502823ea189829ec63072600f540b38c575879ce0937e1a87ae0e125d0905bde0d3acddd52cbe00302047c435bb50067306502300ffdcb86cb8cd68530b325e4e98f0964f3e8e8bcac994517dfc09d8aecbd905e4dd973daed9751e973f9a79d6bf2073a023100b72c498e4c12ae7a85dba906041248c4c8a718b3194b45ec3bd9eee993df8cec69af998450091994c034e5f6c95dda480302047c435bb5006730650231009f22c70cee8cef7e5bc8d2f08892a0bd92a49eedf7436fd174c3d50583f695edf8f24842be1910454e1d5faafe44afc1023067ba855dd0b8d3454c5c5692c0cdd568ebb3c9a96eb5d2f92b62136065450a8d7e785d1912e72539b34160b2451325020302047c435bb500673065023023c9f4ba7ac07415ae59fafd21f9afb92e4063767de419cec2cc4fbbe42064c49e8ea760ac3c0216bb18a1defd3175730231008de59d4a7680f5835be3b381d53d13fb836ec268dc3d049e5a4a9fb63818712d0a7a548a26bcb83c9a89bc48554c3fe40302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100e8a55d6e20c9d969c6fa775f162c473686bde70a9bd518c38ec8041ea52795f7f50efa597fa24f91dad6a21399bc1981023100b1476943b378483a389dda72743da01c5fa35d2681903ee570bf61878b47c46bbbba08d464a6d26de23738dd0850ccb30302047c435bb500673065023048600f7a5e019baa37232498194d03bb6c740fb103aa4eba65b021d30e5a9a11abb9ee16d97d5335cbc1f4424476a0ca023100a7bba4d47dd1e0ec10068a2482b647451c0ecf4c4f5d77817555951a22282a21bdb38043d31a4dc223b1f2c9cb0562950302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100b006e3a5acd2b5302e847c2ee2c63349552649bc4e25d2b3ac1db76b35f9ff1e05c9f1fb800ea35d60076c5418b6781b02306fb6ea73e84c8a7a3adbfabd50dc8e62a44b88f5ed621fa8a6b1488df71ee0c6db5b2bd7c4f47f6e82a0f81fa2795d6b0302047c435bb50067306502300d3c5fe9776ce13230dbd02b62929a8065cd892e8d8cb2dbe6edce81b244293d62d1ea82f80d8976be93827757af602e023100e49ee9dcb65a268e9343949e98e490bffa7a7f45ae119afa1a1a5cd61354d3759be6a5e31ab7a9bc793b083055b918eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b706e412345f25e818b48be0a4f215b8704d040658f1c4287cbd28d855ec40cbfe336d1c854fa8e61cbe81164df148c8023044550317983bad54407d980617e0d7baff1e9c838393ed86ee196ab189ad07c5a98fc42b5e0f51377ade07936c4175e40302047c435bb50066306402307a659a38289d3c378f6c19eed679ce7e6abf31d2f1b5b4537cc40e2cd0fc453bab4112497ff3068ad2339f1239a739db02306dd14da16e5aedf93c6419708a174a524870efa9f63239d6c43bdaa3eb35ec5e6480bd61556e12917029e5c6c3ac67fe0302047c435bb50066306402304f0d5770fea425ecd69604c770115bf660c2f3044aee324ce86641883d2faca91ab07d144f2731707be842559dfc6aa60230771756594fe0bd2b63c0d2548115ee3c48bc6cfcef7e331fc6432ecab208dd8c1b165048a68ae224b55e499055ef1fd00302047c435bb500683066023100a5a4c3c9be14cf68e741c29c8a924c80f0e9a0e990897e21b59b33f2f0a73ff7371a95f802a006f3c651bf789f8db0f9023100f9efcb37ac1408305a239097804329ff787fa7d1164a3da127a541c3673119591b51137284c8804cfcf524bb585775c30302047c435bb50067306502310081d846be2b7e3808891af90902e726e5278b4724ba3a3b54f5c95b91a563ad90a38bb9b6a5547b6d863ba922d6f4ef7602301d480786ab837fbe9d9905a18886914ee45840bbd1c8aa2ab73534e95e38f9980fd601167b458a745a663192523f41690302047c435bb50067306502306a18065f9c42e082dbe78cadb079c37bfb00ec7822cda8305e9ca1ebf5e473d8102c79fa53008a14c93192c4d0e4f865023100a3c54f64583d8425df1dbb1debe9e8800db3ff437c6c69ce36889db98ad1bda55b96f824e11855c208ac37f95e412b7a0302047c435bb500673065023100bb10ba1dab68c6b8eb95c2a09341e612271d07c416d9e9c7666727c1f5ad9784b67c219ccc29d2a755f0b01295fd66dc02304c487dfb6bc3f1ae2275ac68a59da09d68127f9cd8147b63af2e9d24c8862835cfc6aa78ef09c81328b7eb5bd7a9b00e0302047c435bb500683066023100a5a712527bf4c87ba36f5738a899a40ae3feac5cb7904807f9072759b124f365babdaaff86937cc451341cb58d407892023100c2214914bbeca2c54391f791bbec1c6f6b0741d1ba5979f6108b9694a2a6bbe29df42816b5f38d6b392717877f513dcc0302047c435bb500663064023067355b5ac2a35f94fcce736f3f2a0f23c0b68ab2f5b39fac61cef8bce2d4102e39259367c5794c5c310ad0cd9df9f76302302a4ac2d1ad5ce2278970f35aeeedf57741dc6a1d64129e6669b002773dddbfdc68e37e14daf8720c7ce5a77622917a890302047c435bb50067306502307c6da05d2a60ba622436b41c99d990bde3502b1d54c0bc5ab1228f5737c329a1916ede5a64cd3a03c091e36370fc61f6023100a766d46ccd96a6c64522d16ea6d00b54df001480ab2b3a7bc9871bc3d9dbd0e3a43384c575c8fdd535c2592bea5beb8f0302047c435bb500673065023100df885bcaf8363150e4c38baec0d76905b630df4c877e3ddac0019da88db3a9291545bf34ac508435ff07ecccb292f14402306f03d4895240b664a85fe3da820477ba391e3613bca2e687e6cab4eb32e7514e3bfca9f17144e94babae93910f01495a0302047c435bb500683066023100f312dcdd7a55c396e2c26ba1a16f19ba6c9ee68cf71e197d78358ca355d46c8a26699abdc85a6b84c220c3e16e796997023100e3c6eb1cd1939a77fdc58e16ffb5333983ff650c4794d80ca1a288fb7b94eb5d2df17d14fe42572e030020976c0429da0302047c435bb500673065023100ffa91231f75a770418ce7557c5366460e1dd3b52fbd09d833d81d4bc96445a7cea9c7719910aef2e907b8f3136a3fbe302303f8f033c9c49c429010baa2b6cac503713fb32c6cdd68ba848063a4f3321e4c109debd39761acfe153b674a3baf4bfd30302047c435bb500683066023100b261be3d83ac5b3a08bfe20002090ee12060b337e21c5ee073be8ddcafe37e6f8c39c4c19e30bc4bc5ead398d67ef51c023100f0f998ed0ff89957e70638dd3a0b86457e4427c2e1d27d0ab084cb4eccd4a1227c60c62ac1eaa4c6a3cf80fbe26c01ba0302047c435bb50067306502307bcd65e5fcfbffb9f815bd6b5d0fe08d490095ee307a88c49a60bd7e084b85116e50beb20239b0ad34e77eea7c2e946c023100bb473566f7bce83e5950447a34fb8b89db3838e1f8cc2cb59490dd528b42ed57b21013711615906c703be015e7c652070302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306bebe46fd7c9cf2615da282cd75583fa2f0f6c2f43da1d47efcec602ddd43cb084d5e0003b3145d6067875904c92ad04023100d13a6a0ca293564603b947389ad71b74fd64726280023297d6f29bf392e3f5de96180f626926be5aa63f10277cce555c0302047c435bb500663064023048bdbd51066af041e6a626c037a70745d1995cca88c87b782057b462c17ec9bac7a01c51087436f895931782b3238a5102302156a15ef784589458cad1f4e053e158117faa0b7c957631761dff80810855db229d2f6ef8fef2964225c397082882ac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307541bf2d7db5271da407b3ddc13b094c5ac7e24580d78d5afdd30ac99998de34310871a7e1ba5bd73637c2a27c376c83023100f5de4c285f7ab1ab9bea34c295ba5195072a11b2e69a12114ba2e1918fb6281f9898878c3d2a2ec8edec5611862d92a60302047c435bb50066306402302732f666cd4d12235792a987f6ffacb398d9fb621d17ea3f552f22f35fc45cbade8ec98810cff8df0bf96359abc673ac023034e815c0686ae23f7502996b9bcd1a4bc4e110f3cf185abf9c5900f380be058cfce128a1efa0add3afa957c2ed276af30302047c435bb50066306402305176e52e66d83fd2c8cbf32e478eae45ba962f06a6bec0096d9c70500935bf6b47ad831f5eded375c7d52b76176a58fe02300809965d19d5aea86c823e2a1c9d765cb20ac40f466180c0b99bfbb1da7f5a2f67873b5a127492458fa51fb8da3123430302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500683066023100e0c329f1e041e10866c5d6d2b9fec89b9f36927f141b0043a523a7b1d009c53b57f2da3691b26155aac80145e2c63c360231009087775eab5e52d10205cab45eca435c066f335f90a3294fbcd06b8ae885e282e35016d45576adbbd5aca1e4f9a9eec10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023001a5180231322558ef50f2dfa9d2604f0925739df24ac189c972d3ca7d4aebfadb9aeeac9e2047b8acba47f258fc290d023100d092e581e8215dd9c422a4009a8f08d2846daf69ce2561d2b38040a6f71d6b247982b2f68933f23802559eb0ad59b2580302047c435bb50067306502300e7c53f33989cc7a9313efd933dea962c5ed6a492d8d36610e6cea14a0f2d95415a2111986f48285f4e0f5c867cac79a023100b2e09ae2ae3ae0626d74836c0a2b84f5fa5eb3aac188327480d60845ae05793afe43a3db6d75f9c6ea22142cb911561c0302047c435bb5006730650230575b0a04359fefc77ab1001bb82a79dede126cfd74f224b621fedce99e529be0d5045cc5fd316ea7f879371bf93fe952023100b665c79f69c4575c3f22e08e5f680b82c3c3c9ca56c33346e2a1060b7d4e692802d5a26449e7db3ddcde7019b15a622d0302047c435bb500683066023100926981059b8d21c0be5be15e0114e73e0a343b96eeba04da1fd9b3a26556bec54edc1a70e81e4bf15ebc37113771babe023100ea002caba97674b2f303405d32688a963cabdccf127bbc2c4212a5bbf0e7eda6ddae3629dce76f162c78501badaa2bb20302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb500673065023100e160b70b56b0b04d94408779b3143e35f621493b0d5c0961da3ef902a2e5c02cfe9c7063cdea9afb067a3953ad8e5f48023078a25af03c94476b36163baced270c0faee3d362b774d3ec8a4be31075510bd84fec270d573b80ab1e33f29d7fdd10cd0302047c435bb5006630640230758878d7a2b0ecdbcf50a5862145820bb2ceb2ac9b1e6a95e91b3de28be52265a25024fa8e8fefcfbf7cf4a28d5afd390230323030ec12b6b06c5c4601ae3e918d05cb1c107f4ead164e23e4f4cacea36b0402acec6ba33d245c5f2fac1305288d180302047c435bb500683066023100b26d6982a30ea1ab24f151ef46dbc7c47f71a351a1ccb91ad128c02766f6278f0dbf6d8373e46acaa89e03b72a3f319f023100e6bdf055c3f4176617026c7a344f63d706f71316214f415d021003e79096852680ba0f66dd34ba86ca2f8e29906690950302047c435bb50067306502307c1adfda497fdebc180e56461b71e8a7e4c97780a582a8df9506c822975deb20b167cee737a519a87b2cd4586ec65166023100e5e18abb6f00dd7dab087a68ec1ca2b8e5a39c3f45a5df6dbe4d3695ae328e5554f3137f581915299c1d30735406273c0302047c435bb50067306502302bb8f2fa90c1436e63c79046098de1a4c672c69c91667666f1898f29d031910de3630e36e3a75bf1be9dcc3dea43cd9b023100b3c0b19d09b19a7eea83dadc6ddb699051a69800379bf91721119414251c3038e16801e9f1040437d8bcb901e92cab0f0302047c435bb50066306402307ea2593ba406149829fd90dd566a3004cefc677882bcd52e18bbac4d8e1da445c4a6b5d9e37f81b472a377d4b5de708302307da2b5182d812a21e0760b434bec9364ddea204a6d4d1512ab5899ffa23721ec8c8521da7e59ace8e0b29158f3f6bb7e0302047c435bb500673065023019fd26b99b7547cb5b1bd11a1dc45626eaa1092e855ceffdf54f67db593042b7e33b182333ebfaa37d8726469e9b5c1a023100cbeda212e7e4673155ef1b000657821d4fb11909672d0ffd7b5e4e8e3762f8ad6600b663945b1a0372db441fbc6361d30302047c435bb500663064023014950226192eb0f9f7815ad6f42c6e935dfe72b0f6dfe7199e2e33a99ffcbb262c10432a175d70b0adbeaa6506046dc70230108ef4f684d38e3f709e18e95d94595892ee1c4b38f1b67b1bfa4e3fb5a970e72711c3216aee93c2715cdb35cb2f9b100302047c435bb5006730650230610bb1d29b4320af33cff07c306bcae3c992833bd1cea2aebea701fbd6d07e77647661bf8cc12e2107fbe4ed5f2fa4ee023100c4103403ed2c621b65477e2a3401a738c783fd095a9e68378a187be0368c7adaa09fcd70de4b6834650a462072eda4540302047c435bb500683066023100c850460e2c0cc7738b3d3bc29c73274dbb58d31abb2474f93686b8fe03ef4d3f98e0e84783e18197753553debdea5b0f02310082eb4eb76d9136b26d5cec1108e7e9bf03c262e0005b5bc5f039ba62b1b1a555b93dba9fc509529ae5e4fe44d6a44d300302047c435bb5006730650231009363e5acd7421071a16272ae7f24b5cb333210cf8c2d6967498833eab330cfd2a291f84f0308770437811070b4e3f62802301038a8eeb2772c447d06a8a7e4b37b1d8527105c363484808d631f5bfafb09ad3104734fb1e54c1a10f43bb1a815cc560302047c435bb500673065023100c1f16576fbed0306bced2cdb03d5f0fca25df6f10585c76a87585a34de293aaa301b351749dbbac56cae4dd3ba0b36d502307ca6bde69f77cf92bdb6ed06295b78dd4028cb92fb2a89939756a109ca06e1c403c41e75e0ab539b57a614771d278cc70302047c435bb5006630640230598cd097af9981334d35f6eb2894feb1c541f29f672209d6db5c50661691652c9d80086492a21f1ac3d852b7baacc11902300de43a52468c1292b2a6ae083d53e3499ae5fd18c8529e88280eb95edbce8d9912bca422c28dd669499f688398fd44a50302047c435bb50066306402305842500aa9838e8760b4bd53ca4e6d3cb46096946d8efbefdcb16195110a47eacc4f169f5b65ad2fce088ee81a8c2081023071eee83c6b8897fc3366eb4c3b82e28de5adeae12e7ad8aca27a5fd5b6a4d37e985f1151fc0babd1a318edce5fa5fd220302047c435bb500673065023100eb4f1694e16e40f391578819c6686dff698256e8661b8421b9916d2123e930eb0af65a8ce76eeae82128fc6451a1aa2402306b18c903f15a985bc6e6ef917607cfa21f1174412673b70462ff55cfd30a77a8b3caa740457988a85d2efcd86a1c24ea0302047c435bb500673065023100b380f3f724f285fa1c67cd324a6aefbce2be31507af7eece8d71eba9ece68172386244d278cb7785f1037d84fac731ae02307ca2b411856e0a260dca22d9853b8e837184d53e08c15049fd97827e693bd95243e5ac7bc63ad0a82db0b8a79f4867bb0302047c435bb500673065023100be148f799c6d3902f58574ff77af6802bd401795d674cc7a2683894d2137e6b24200713f11d04e22e6abdadeb541ca660230696d5b118bc0305cebb456e1ec54ecbf71797f2abadb524f10e6634382696a6753bf04ad7f26641dcb75d5bc364502f40302047c435bb500673065023004083943feda0a51f7e697cc3efa56c395da89054733bad382369da147e4937cdc70371db6b985223afbcc8cbddb7b93023100b56ac1c94d35ad6ab85375804de3971b5153c46154004b79f71bf713d84600b85ce224a4f2d4081a1b2b654e51bfdbef0302047c435bb50067306502304676180e3e89d683c958fdff30691223f66aeef87f4570bacafe0efae64b8be4bfabdc173d638959f361297c08e2f21c023100887b5bc51c82b71b697947815a3e34eac6a2b76920ec9fbb533737c7fdb38f89fbb7af3047940f03dbb7b642686a31fa0302047c435bb500683066023100a0f6878a403b0bdab01697885d2cdf3a4605904af4c54a4dc83b035f7c650d224bda63285243204fec4f96d4e0cf63610231009aec08ade4af472d929e2d8e2fd570037b10867a2a1f5d4739ca38d4443dc0f22a29ffd646f9e49a1d7a09b982d664a70302047c435bb500663064023076c39a6e9da1bea6035965fbc6f73a4f12a149d054b8631b224a8261f1bcb1e2bfe110bd367f80c7433f0116710beaef02305cc6e0a22c85d552f1264f68a911c856b7b90db80cc845f4641875db89e9f30d0f9f3a2b91ba4f524b88d43c172ee7680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306a7f0b51937793bdef4dc50c1c6e223c404b24c3bf82600ecbd79bf4244d4bf899c43c09409ce6bebb61f620cdd80c55023100a9aa39f6667abbcd62efef2831ea2e67728e3e038ff156b3b11389ecf6d11d1468a640bd100fe26c3f59546f841f1de00302047c435bb500673065023045f9fb8e08ac5d16abad64d9b5d4a88b776979d78fe9fcd30389c69b82cdf9831b2d6853e33eb96db7defae2c042e790023100fa81bbfbf5293a2039d725fbb0b0cc7244fc5ddbd3746a777f8ed61a33f128fdd376679b44f0481e44eeff7cf364a57e0302047c435bb50066306402303d2022b637316237e173a10e5014a8a992dea69fcbac250ee2fa89773a78b59e22ad0e3d3936e5f9efd183290373cf9d02302b174395888083c51df532cc7e4816556ae4535f377701ccb64856ee29f734964b220641424c1c8b09cc3667bc3fa4220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b98c1160ab05b3c10a4d558a01d59648f69bf890f231d8571d09df900cbc81b218f6a91110538f8001ab4860eae390c2023100c95ccf511c29214c83fedbc7992a79f7cd0fce86583a2b56b5a9f1248b07832c41bdef541931215efa08e9b3b44f3f120302047c435bb50068306602310096db33fe5bb1afc3accc6b50244aaee87f4cdcc0a23b377ac10d2c0dd8626c7513f94bc73588ef6c8399ec10da08b481023100d3bb93b7c3d46411e29c35f1c0de7e3302794a6c6b599c215ea026dc9f92d11b4dab35f70dfd33d484f7c470af1d78e10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301b82d4e5f0dab3715d45b43a045578c9e33b68b7dae30144c1d3d35cb61cf18c33fba5ba18ffd650ffb43d575ce98fa2023100886aa8e8688d3531fb7bee3df942c70edd0f943b6db99ef139b39ccf4910de5ce931b2e61fe7ad80ab339ec30fe609410302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300823288be4c1c99ea30b98132b9aacf3c0657668e12a8704c0ccc4958678c7d008c54224f009e8ae58d8a221c88029ca023100822346aff5a889b832c261bdc632f38d7d38ae95777a2f2caefdb2b6dd75fbdcfb0ae6fbde3b7c01e320e111bc8186f10302047c435bb500683066023100fc68c4dafd78ea1a63c3834930eafb7927254dcfa81c791f0a495185d7fac29453c4396c45a8b4d3e3be0f02784c6b14023100a71cac5d3cfa89c12450840a380f86c0b7094171542333e8d7c3889336993e6b69a92fb9c892297e565ec949990b75df0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301d49a60f01ee0e987c4f47b80d8d83aff847b017b618acf5be35b51e499d38486aa719a6f173185beaa58fbc1ec44b1a023000bc1e2de32ab29167c66a399708f657a644f1397219950262ff1fe8e608891724dbb166d4e776bd6c712e58c2c9e92e0302047c435bb50067306502310098ac0c5b0dbe7bd4771c6e4e26a62a8aeca2a0425a8e1ffa3a5fdb2811e79224476fd680cb3cd7def8bcdcf18bf2a645023046b7c25b21033c9ab09dead169808e7aeb174fc5e93e72bc877192e624e5da4136746a534950e3854b9f5038f69407ab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310094e041db84f707a2058e55a4f0edb1ee0542168fd8cf36dc180688348dcc6184dbd718c6ea85d145a4d1f36238d3ea0a0230294f4b2c09ecb7f58bd0dc2612970f321a9f41f7e5eb9ba71c4c367f46f716e6cb317c183ac45a89a3a9aacc42bbe7ff0302047c435bb500673065023100b422721c5ca0d33b4f6dcd9027509d54c2386b8e9123b98b881ed9a6e69b21f019c7321840c036b1e3a83e625c235e5d02307997516cd94fd82125211de1cb0d917310a44442c0bdeec8b74ad58db5901202ec783bb9b52fe1c309e4ba8b2317c74e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023049c8f52b169ae5f98a66833acc80918be65bf4056c987e9f7718f0eb2f40178ff256e549d6021b835271e7fb5e7c8cf7023004971d1fa166ff4e8090672e8ac32d3000149714c8bb9ebc3daf769cefc6a8dee99a3aa5c2de5123c2554deeed4d2ccd0302047c435bb500673065023100d65f7d58279d4b610304f05992bda30309909c0148b4fb20cbebf5dd30fe80a5b644f630de327cdbf8972fba37decf8d0230644910156ac6f211b6cf22d74f7309746fb79ae102bf2f80999ba4b0496981cc64efffbb9fd6d3bb37a90f5e586b3c0d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b8d15e139194db38940aaf079712a40a6f11f30562571f93aae9f35fc8dd0b15d0cba436616f933663085a716d9634910230618c040606c01ca52fb19d8e3b06914e3754af0dcc57002c46d899f981820e23eba1707643642ba7e9f9f3cd0e32093b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d1bd0f0a208cade5db3cab80ceb06244518a2bde77aba0e2c5070264b695993818d443cccc778daeba08163d4d83b1a0230605848d011f221ce0e4b80d45a85044882604a53a8a3327d323272e0b816117557217957700fee0939ecbaba6abbfe830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100eb53f76102168be3719e1df671baa1711683d2bc839539e4cd4073753f3038f4967295cf7a450f7d616e0cdd03a01cfa02303b1a090ac8bad0c9217ae922b7ea1294c455cfcc528b2ba4e65ace08e0af359ce7402cfd69ae97fdc45ca0b3bc80a99c0302047c435bb50066306402304ff156ef9a4e9f11c569567bd78b42d826a7f3ea2d519bc141e19bb5bf99d9426af428f0b3b30fd6c915595a44e005ca02301ed3d935867d4f0bb51e6f8f336b71e2cd71e95a1c21c291a85443e5db99478c8c1250fad75c23bc53a9984ae85153640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100954ade08317126b7db8deb864b8a1a922550d1e675e04274b5f18efa4e6394a582c66734fd4fe995489d10d4371caecd02300b3d7a44ad22b46339b8ecbf741bd838ab7b4bd1cb71355f688913e576cecaecf4d44165cafd2d96adc7d9c679f70fef0302047c435bb5006630640230281858138d22c41f6ab0184364b8daa8b84b3817044691cc13311ace41a8b4a9f3b4264558f89eb4b586b1e0c57c08a5023034090186c4be746cdee1f0401209a2a0a070da512c401a9027a038340d5ca038159be4a3833a215934265e8146e5e1690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008193de50ebcc63c1dcf07af7c828f59b103ec3461563ba9c914fe9038dc33632eafdbe93a3f9bff24163f09cd795a552023100dbd54c1e7f26d8222abfb812478fd105a53bdd94a443e0cb00e18a87fcb9668f7535b24c13b711cf7322a79a84b20add0302047c435bb500663064023075c9d8f6e6f5a86c550dc8b6102cc56bf23c0d1f64d05d2963e6936c927b66aee6083915fc519b05c8beee1fee4c382c0230309e79e02919f86fd763df3c9800bfb322dc438a068ad1af718e42f0f1abf3c447319de9df5ead34daa4ea6ef1618f5a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fbd4b140fdc86ddbbda26a1309fd9cc077e3ee9f3ce0f4c68e8a796a444fdea2d41fa75ef8070ac72d7739f5fdfb4936023075107aa47bbb7aa5c05859cc1db30c000718dce34ec00a2c62cf2a3bb9c45729527c14437500322eb7003d822f4bf5d20302047c435bb500673065023100ebd7131df695a4053852e3a93c6910a4af51b185d789634f0bc3d6540f754de6e6d3305bf17fde579b6488b0d0e482820230497d3f3fa1abc92b9e5f9edbf106ed64e17701f58c70513635ac7425d15cfbc54cb4818a1bea53ed7fe1fbcab0ab237e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100943ac178dafb14d529ed1369f0b7acd08734cb102e84acfa51c43eda832e857bbd3deefec87f4ab2a51f6242050376ea023100c3c5765e0e9f24dd680addc960948065cdf7c8ec7ec4599f3097d875906a4d236dce32d73b14fa101572e667cb148da20302047c435bb500683066023100b9724c472f7d75422e432c594f8ceaf7459242b72d0b3f545d88b7f91cea5a0dfe02bed4d38b6e04116904e1c97810ac023100b8bff342936d80b75fb21ba9d6f02a3811695fafdc14b5c09980cf37289239515257788933fc59d7662f2a9dfce7c6bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023052faa2e60b0b775a4d299954f8ba3710f03f87c65779c0393fdf8ac995d3a32e41b5799ab3eabaf1d5a9b99ecb04c1f102310082be72db3170b585439833e4ca45518128e0d0501eac4e2094fea9eaa6a6ae6675b7428a9e8aa6231b90c59ace3873e20302047c435bb500673065023100ee550a353cf9d473feafb37180fcff3ceae6cc56e5e8cd4443f18a87262fd81bf0e7c2e4caa01c82eda0ebc26f9e99a4023012fd7d3cea5c77c79c092b078e7011779f2201774bbe644db8c12e7ff5c4f039801d88c192bd3cd0fcde1539da4e4baf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ff50955b7845e03c55d759a9fe01979b3fcdd6dfb5faf6c28000e12a96002389aea775ef9d8356c43cd0dcda18783776023022f39c47b588e5f4738dd5a2a947e3462989c7af61193878f6188e75f2a63b28bed3aa15904869ee2a696e44ca92184b0302047c435bb5006730650230205785717c5c15a8a38899327e9336eaed5a8d5cc002dfd708a038d167e4b5d6d8c4a96a4c85933118db392c9f7f573f023100ed641930c2baecfc25a5d45788845e2f83ad82f9c1b052fc17a47f455088ff3a252cba28cca223e56bef5fc62822df2b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f365526819ce8440a0110ef53ae28613d29c316eef9e8d391a2c22a08dd34b5040360c0f8f9b9fcedd5fcb2fc5a42461023100c3475871a6cea50c504970efb1e20d9b21f25f6e722b5576fbb599a5c919dd5b6ae27aea104f4b094fe33f64c3bac11d0302047c435bb500673065023100ea35aec21f43550d41b9c2cf64f8ac0cf5b703bfaaace892c4c1aad86cc7124e45cedca6a31185a91565c0fd9012e88002303a2c9e44308e697c60dd123e65db481d0d8459642bc14e70739d8d787bdc2f5979e22a26e38c6733d9e61cd484d90bef0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009dd9e0d91094f029b1a7d070901d5043a1054aeb72b1fd9a317b0539e7ad8e7951bc0fb3fa31e2e8bde1357cbe4c7065023071c08bdf7733fa6184ae1ccf5395d26751a3379880a99f068df5a015855bc4467802aa294b34c6024965873194334d240302047c435bb50067306502301788dd4952e34a9da0a8832547bb60b391ea407fa25661511ed274092c7d44cc659adc947fd9480f57b7b9f818611f06023100d63b036eabfd2a7c0160b1974d046e64954de460c4f40e1105082bc53cffb1eeef70b35edcdaa6b825b96884ac1eaee30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100824948b23555a339f6dd3d3d4bf7b0a55c7802966e529c58af8590ac5da5cb0ff1f15ab6a38c456225de581935734855023100fa4ea4adab8c47389dd9dbe5c507481dfc2a56cd8490930f9e988b8d9c795a663c146707a67cd5d9055e433a0f6ce9ee0302047c435bb50066306402307129bef3f23ecbb4d6549f6045f5696f917503bdf09707aa1ebc1b6a412222f6fe24ecbd9d42c0c2ff5f162b38bd9584023043717ba9725a4fcfb21a9081cf4bebd1fda85c108376267ebb1fb7c9725ee0030b78ac231db84dd747aab00d62e611030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230047037a41c02a0c6e5f3441ca83a3578a99991634bcc912113deb2ef65ca719ab7fb0114836eedf53ab5fc6bf73d0738023100deb9cce78e526e5ca86451d0a193710cb7cfd663e24d2064cfba8853d257417a03f2c1fe8d81299db70e18c099337f990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ae9176651d14fc87bd86dd3dae22ee6cc3c42e2f331a9eeba3dc7eae0ccef5152b0319e456021960455e0fc09534fd4602306e65b0f91119db551bb2c8735488ba2369570f523152d46a413adaef95878db5da403488fb1a948973c68d6547b0b5730302047c435bb500683066023100ea4d1ee2a048a66b786cb2d28a1fe2cec8d21c2220495e744af4a5efe9ec41d14842dc24952e358e81b96fb307841b83023100b55b78ce94369f44dca16742b591937e8130d57445ec69b9cb9d0708e598c7eb4a5eaad20f24fc0817ea88ad8e224ae80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023051d9cc0c95051dc0e8241177a5088c5d90d1d3f66013db1900ad569ccd13a71a55dca0804459126a5bfb5729f0c9f3bd023036375eeb282f83d6b20d3bd42ab9034f9102e012e234c1b04b1f1936e4a6b958da4974e8061091983c86f0a55105b2210302047c435bb500683066023100d51c0dc6b63b17e9e68cec725eabe2d7f91dfade38db8a4b749351499063027fa989404b898cf8b1c13c056131d6c91d02310080626e9b97a5ff54e912e8dcdb80ea75a5ac2cf1c3b93629ca204a1839810488a3879267629cc01f54299dbf10538e4e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307eea72a3bdfeebca1b9342692a977993bc1b8fcc4c7ebfe271867b7afce2e509f7fc140a2339168a6f611e8f24e59a2d023100a7899a7a1e216f0894034aa0820b2534b3ca1fa4558d0fe4cc0358f2c07105256218e82182689912409959cd51e4eed40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310094f0e65cd472151b09feee5d4d5437067f557b7eb448c5ffd113b882bd59f7a33c61ba2f87cc09ef302c6e2fa38ce423023100a691aa166c6af2d2c5a36ff3825387b8e39d3123daa01da08d8736df5249585a70f13d5952377d1915597d2d282579320302047c435bb500683066023100fa5ef3405a86090b8f1f5867eb7859f7d3062d4f94a3b64d36f6840457a563eea4718faed0e5f1ca57e4416f72b88a13023100d10a12a94badc171a9ae7a5cfefe057a07b170446ee3dcb569a66c631aa98c0166c6898f35994811be4892fc735748a30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307da5a54743c374259261d011fbe1f3d784163cdb58dd91b8f6482b53d9ba67f75b34cd0d553adab4ebf15aade6a79a9b023100e152cffe7ade1ee211439cc3b3d9648631b6afa2fdd2f45c49ec4b053dcd8622f5c713ad301a02bec0293b088fb504410302047c435bb50066306402300cacfd48425b90cb3019250356b23122b31c33837a05b678ecb780f95ac5a7ed75242512e0212e23e890ba40a88d1691023066683139a6d077c4f7bf664679a9d2c54459b2a294e2d3dc9037ecb678966421e6a44483b6ee1014e5d7410dae8391580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230268a574eb916d7b809dfea5fdbf3308ffb79e195cafbaf90b52fe2a986e73a3cfd79bda4184108162b17895f46c2a36f02306ad6e52b1f525baae86ca9de33e9a8aa7453acfe8b9e80d1ab1b83e684ccc0e4deac50032ba72efea5921fb0c3ff17e00302047c435bb5006830660231009a46a38ec464162edaeaa339bdc6ed1df5578871a3080636015036fc07aa9cb2aa01f99c443133aa60495a1534d374fc023100e44645406a147ed56981544b27fe36d51cb6373149b4b857c99774b2ee499c43e6ac346e02196e1ef324d0a5a6b50ed60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305ecbb5a9400f77fcd8351beb6ad656291569e006f4cb6d709bba3452ab21f2d40918313841aa291cdfd44395e2acbd8d023100c46963073391a2d2dbf61b4a49522b688493171b651842d4971252461cbc25b84cfc9ae4cea3b55a80372941f0e1f0950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230559c906c6bd8c15a8fcc4c6016dcac7f3a6b2abdcc03cd0feace21dd055be733cd1c2e91476f54d5496db91139ebdd650231008b1e239eb136a076c4d57d92261cb0a4981b18b0f60f09fc7822b1335b8e43998a3d7c12308d30c8cc171da97eb2683b0302047c435bb50067306502305a83214f05fe8ba82320d014f5d2e8e70e54e8f2618a1b02a93adb13d426bc9eb0575eedb75f52bcc8d490e7c04b8048023100cde7a485d248e169e86391e66c6b63e719b4734a8f529195b0e2ee78aebec1c6703d48207541d43a808b0707f4d55e340302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305b18ab64ea21d5c78962cc84f867ac29038de23d22985ba107f6045f62c44a7a8eeeb24d909c11a4878d08bc7ca5706a023054bff59a8294498c3149d0cad017b58b164f1cf00d881b0ad5e15a8d4458de3bda49fe10072e8c630e26ddb692f8eda80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307dc68c2bb3a02d1b9633fe8da7793fb7c8d5ddd5313a768aa3fa253321e353b1c2df3069ea4cad4b223a9015bb44df14023070d1569f56693624dc952df3798c89e11737e4c981490d5efd929dbfca73b1e81477dfbf0acfffc4e45305a729dd436c0302047c435bb500683066023100dd8fe61a3a8cf68f009fd8e43ed2ed996523b7cf6dc3e3d1c9ead0e838d25d5c1a8c9fcc51e9d852b26ee72cbc2b959d0231008f17b7d7d83155d02d01c169848e13d97c7c7acf9e3a4a5a3fd63e50c8d9800fda8ff3dea43fbd35c8fec571686389e10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307148705fe35a18775f1c97d8e4b333a1ce0258860fbaf865ff487169d1e7bf92749c299d3d2a7b404aa165ffc7c62a88023052ab8711022808fb6c6ae7d0c065ac433885c206193622e8a7c1c3314b74cf5a6388898f58d54e686bac779923fdb6cf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dc70ccbf705867da00ad7b0ccf1a822c360abce435b6b26245ecd5d99eec984e81deeeed47ceb41645877c0891ece96802307ac50dc758053b2c92e3486110278e2232d79c7645417dde2311313b3e92224c4863bfd9ed32e19d490276142b9f566f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f3d6dd0a9e0962189921f768b76a8a88dd31f89a13e3ee8e694d637daa933f75b1306872b9ed9eeadc269acfb4a792290230674c20ab5ce487253031c98afcf8ac9859411ab0a1e018a60d98ac11721ca252d37a18f988a7867b98fdc0ceb8ef49280302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ea00e7ef92a68832f5c7ce284d41d176572f39961a90dfebe0150128ab4f4eb67c43fb842436db4bde07a3603662d01f0230232ceed24f221c9e0ab076b47df6ea4524277ce2d0b65a16aa52090e8a3f365a790ae0cac84f11163a661ab4d588c1890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009f57e7eaa2778ba9d41c15ccdde1653db792ec8d4fcd830f9e4dd267efcff9c0a8c03d07bf2448dc31f0f6c501447f6e023100cc5d27b9b9949f5aa4ffd2c0188506b0c17975692c839c53c1b24207d0a456a4af31d01e48b9da2feed1f77b6a86ec9a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a172339d67bb5b43754e7739c4478d10319ec023682796094bd45250e10b462e92c5b2c3bc7a4721141d3a20a08daacc02303912bb3767eedf176521325a1bddb022e85fad19b3a6320738b8b6754a96d3590a944148bc2871b428cdf7de1decd6160302047c435bb50067306502302cb5af51804fe231ba885794c74c5279f7843149fafae64fc2765c6ac18fd7e6569638575fa9307a3f04da5851a0fae6023100cd1c84ee31c795d23109a8371cc943747aaf156f8e1454a739d075cffcdce89ede5213d74ddcc902fcd2cf03e6102d050302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d78642d449c43518e9182c90baaf07123e3cd5001f6f37cf4df40d9d84c801ee0d6f3e74c9d1742b9cf209d7b8f50c9d02306f67f728894004a9c402e2b09d4f1e7b09d90640ea22e2a88765819af896acce5125545b47a40ab77bbe8b3849f85f400302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d4208b5be7b1e6e128358e90510c5100770c4d9d7e41d96940603acefa04a637f6e082ac6eefc4e8ec92e26b12537bef023100bddedea7dc51b275fe152eeb929437d1a80b2e7e31e1f86b71d64bf1c24689fa238fb3132a30f67410272b54bc8b17310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230133c39f33cb2c5a743102db060de4dbf1b93319937a6f4650e040753f65d407927902b663d742dedccf3c9b38928baee023100d16fb934e70277007bd17981e71ee84a20b8e99e40d39f5997f427d6792d8a681914959928238647223809e05ab3edb20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100fd3dbf717d49cb0579fec9e6c648634c232f1c4a68c9dd9f595781cb4e7a43c83190c0ca70076a2b64f615d7dca3cf9002306edf4da05e6b7bbc6d89ceac82eacfae39ca314e27f3245fc85359f876a29547333f6b548fa23f1fc2a46889db40af110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b5a410a63849659f5e535bc8f4ac8d225d3a2d78d2975a4595c976d75afc79eeca8e2658ecfceff167ebebda2a84a0102300a7648f20d007277795d69b8cde02380e0d1b1e76ca2847f7c7b07c0fa11dd150478256a8a0ecd5b6a82ed1f681e63840302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eddd0ad7384b69b301c67b94c4ef858505b66cc81075d9b0d9e2eeddfaa1cb6137fe0596a85201982a992e0b1e8220bd023100fcdd65ecf3e3e9044261d18c891486621ecb3e7f0822803e24a295bca263cded212f7211344f8711477339c580dec5190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cefe9e9e097b4f90ba9a481980c53950c4c32f9332d1074c765984c9db2699fcc896a8101d2d44cc5eb1cc367d320f7302300c44f704c361bee98472ac4b66e918bd73d0e4bcc96e69d74cfd4d939a2270c8a08c0082f97ae027dabd57619670dfb70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023049d15b0256b4547a8cff9ac594d55ae6dd315522d29efcb55be0f9b6da2df52d02a08d7d6cd3409f3ab978d1c96b0779023034dfe255f9fa17484e7c27449204f616cdbb6911ad706bd89eadf6982c8f7df817aa8e03c7e6e221a772695b40c040680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ae7579edaca1579f204969545d57537abb6480699e7eb9a579b35c8888af728cd307a87a866857dde38c41ad6e165d10023100fcc9c6afa6ca920144a48143d0abf9d241e03c34b1c00f067b7394b88be03f31c85ab584fb66e86f3c36f76f266f47e40302047c435bb500673065023100c07a5af978af1f297fa35359a7b0b80108424f28d43045c4d55810dd58d332ac5811195d5e7bb9cbaac109df916b425202306598cdc1ad70386d4b232b72904fd1650a349ddd26ec2e522441e736e6e65565c49966694197f18225e0d9b0b84543950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305a97952a1d7db7f2d3de30db51399528684739250394d6e95f8b1b0b1d1b080fa1c46988d3ec84c875b326a3a202001c023069f74f94e40e3f3d9676c1c3001dc2bbdc38e2b2d093a2f2afc216965a4d0b0ec9f695a5e0e5da1293f31789ea5cc0740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d5549380dfb6eabc8c570ba88326556fa016a02d8c364a5315786faf2afe35ef5a0334b12348221be92bb3ba273a0791023100e61cc01251b560a8d693a38fc7b9ef85d288b1b4eb049070420d2f4fa89b8eea2364623cc5bde1c39ddb36fb9d8530c10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303df5768d1a500589b4f42141e1dc8fab1ffc078e325912db959c20c053f46c6f90f699a5d4131df6981745c83212169f023100d60f17fa5294b805fa8d61da8f6edf479b4472e3f6aca724b03f2703980b8f6a87ab721ca907b0062b3cac974fc0fb3f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023015a7f5de0d0fe6b132ff9311a2a31e088050ac712992eec1e48da472e4ee72dee1f57c50e6d9c43ae4b7290217e2b0de02302840527ad1d131c6b355d748fd8ce6513990e3f70856b07f5b1efd25982c84dcb5a03a2117d47286e4fa221d1fc1dede0302047c435bb500673065023100c9065ce876e09c033ab18cf6b950e2972d66a8d188494075f3b0ded2b0f40f0c7632509acc74eeb5b49a792b9050c121023039f34c27ac5718b844648cd20d1e49effb266b4621bd6c98f5f07e022dcf01f1d3238f690c21de524b8ed805a573ba9e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302f0b15c9404002ce560ff92a21a2e811afdeceb90251664c28cfa882332d24310afb56cb5ee7342341f67ed4c1920a53023100bd965b2f23288bf842399e88d3b14e9d63902e15a99dce431283ea376c9472c3f725c60fe6c3896f37405acc4a4212230302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301d061a56d8da2846650d5353aa06507ba34081c4af8510abc3fb82233cbdf52917a665e87d7facd6a0a5fd1ae00297a1023022fe00e636107b91f9315b3d06896ceb4e1abef4c949b3620fd9eaf3bb27271998dd9a791b7f58d87a22f95dfa56a4cb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c7f96481a2642dd85ae61139fe77ff873d0b721f3ba6793009ff8c57b76baa5923e27dec1e29647226b1496fd660c17a023100e0d3e408a2902e8cd2ed00feb698ebf9f4a16e4aa58e2984ae0be1c6e679a6315c6e89d39bea1a277332a2dd8058ce940302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ba246ffd88350f37a69a0345d5a2b6e7b8fb0dbebe18a10a2c3cb9660bd7bece11c604824fe9488e4db6bccabbd05057023074f09775fe0dbe6064bbff92ec14536685c3d729740aa8179afadbdf388d41c4f2ba40a3306a1fcc3d9127225d04891f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a421ac75ecf721a1087e7cfa1bb6f3e898145b976bebfbb380ca4aa089687fa18efae5364697338229b344a7cb4082e00231009a24066fb6bf9bcb57eb6ec7303067f8fa5ed9268586ea5f54ebf82033a7500a26e31e86af41607778a534a208de3a520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310094eebb02d4f8c4e3fc65a9d0c0182b397cb3c85b47b687227facfaad859e6f69fae79656b303ead79d43042f33b9db16023047f6429b6147f8ca484984061f2cb0dd3dad9cb9303c640956ff6037855db45193c05a91f588624929907909f77e819f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b791f54baa52dcd5500059788dca509130e8c02f2c1b1f63231bdb8d2a31e9038b907e91238ef1174d7dee8602e02f77023100e2b1d84f74580e7bafcb5ac9797d8d308b3ee60cc0dd58b718c4a89a2317e036f72bd40c50b85ad6dead6033c91f47540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b5a6f33c1a1757c4b5c0e3824645a221cefde575a73f29835b65809ad0b1a9272e3af3a29ae007312bc3c589d9e8735e02310083c403edd5544ced4a69b549dd606ff044591b76e62eebcbe7147c3a625b47631c1d30282fc784c8de526bfd7fa10f7e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023048a35a7214df6be52d07062f2044a1e6303b710c0448bbdcf9b8a99477a204096643b810dd635225f346407104f126b6023100f9c298494493e37fe4893baf86fb9d1e9cda49ec83fe3c91663206298bc4feae926719fff6cb57480c5c6883e4cb34020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023055ae91b0446c8ad8fc8324226d946d6c294011013cdc59676890d42017c8d7c8b4e27206e7f53406752cbfa3461bbe8702306a8acc24708342c7c92aeed21f50724252d8c946c92a1f8999e22df0772c35e23f7a8d7dbbfde21a1abec699b59dc97b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008070b70354b47575ef069f5a0db59faf42cd6a010fa601afd033a55a13bd549b5745a7d454eb491a4ce569c7644b13c902310088e20d51b56e5a01b10af6fe2354e03399ea2b644822ec04c71b6346160ac9e33c6a0c435f0a593671310e43fa8509b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304a3626a37bec4a33c908b9e79d9b8db4fa07f0570bfdbd1b707b3b64f5f33fd11919275f56d4f4417f0c8dec48543b63023041fc68ca482210f6a44555efc999935e688c2dc30f0f12cab87f24853806e1bdc79be7e1559be9ac89daf985b78ea8900302047c435bb500673065023100f5f7be1a45c16e9ad781f0e90297c2ecaae3767b4c8bdcb7684e3df12a0759d08ece9ffa4c432b98c88f6dff69e31c9c023056ff5792f6c916ee1bf5da730b79460e3066b90fa98731c346b7499e428121dbe54b70981db8b8c50b120d4640c3a8640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009c434e266bffb058865b6103245015aeedaec987893e50fd28a9861403247d42a417a8ae753293886dd0b2be4c2aa091023100a5b97b5a8edaf6cd381a41d83afe5e661051c14e051381ce59bed19eace6c4192f303f3792c098acbaf1bae5e3cf44dc0302047c435bb500663064023079df9cbfa123910ed3c32cd47467f9f905e82711ce1406e48e62acaef93447d84bac67f2d618687aba8e6e649f299ccf0230577015422a86c2f4223c39bc6f1929c7f0c24e050dd8bef042099b9b06235ce171e35e7c6a7b7916b2351716f7f8127d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009eee2742af80771db8a5d913f6d0e00b5a0c2955df16a1b7045ba16486ec6388752069e1ffb02aa08d4ede8d9d7665d002300cf66b4510ec6f27977a840f930974079d24c121b1b30179300c0a3f15fe4e7ad6002498ccb3a74abce960e22075918e0302047c435bb5006730650231008acdaaab62ab3e45cc80dc06d6cede3bf199b11aacb9f4ce2265a3efe11dac229123df098d181a5f9267db5dcf141cab0230752cd4abc088bb498f1ddef7f51558b90bd107f29017aaf58f07d4f065e963595ad6016d99a4b12d6acbb26e971628280302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009afa9e48cbe6f730a03cb307cbbef0adacd30c4946a0878d4bc81fc4a781c54882f0f19b7342d82d1193538a6d2ebd6e023100e2a66369088a38fa3d6579eee6c1a0f7c0c9eb5bd9fcd327a8dbc37aeb6eb388f48aef3d11ff123154b0a92bef6327fb0302047c435bb5006730650230681ec3e32adeab50ca9726913e4a390b09a8e1a6fc1a98811673121697d0e6582b6527556c09cdf6f3389eedd7849ffd023100f190ac02f663b9a4864d2b88f9bd332da6a8797499752a4295b73a2d6956727ee8d156e3476d0d237c959f92a047c6d40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cf61ad7a57a7a786ba95eeb42dc92f9bb2e5fca711c7a9cabb3b15fed9d5d67455b93e9206f3e571ea25c44367313c8b023070673bc4fbf243eb5b5ba5c26f57fa8524226a5d05cac6a35582fc34708444e01aee7b5f04ad85b61655981e236cdda40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d43ba989f2a7dd5cf4f2e4c687838117e5c7a0cf4235eb3d7db37edfef7b55ec8266b5c70d8ac591501708b000a6ac7f023100f3cfef54b498e873e7e0f29ddd0e2b25b530cd055dd40dfd1942fcf3f77f7a18019c78e9d592e25197199bc2ac19d7370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023053c1a093a900a98fa023ae3d94f6fcc521a1e1962152ddc05e0382adeb48fd93f67f72bd64e96d69c5f8c92379eac21c0230471e83ac7705731f105f5e4b9e4294ce3c616737a1bdd7c00e801e579eeb52cba2cb49abcc82015dbd54e149b428c0290302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c8a2daa3c17f5a0e5dad5eb9e3d7944f9fc16d20e9889e8df3b1fbb45a3f07f282a03e474ca049d3256d18b0f10f811d023052d1a226f8ea235b467147e82f2e3d88c7762feb1984748754895df4fed67e421d231932074eb32848e405bbcabdfa6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100db66d531ec220b0147955ffec41bdd7e9291b8cee4d587bfc5267cd976c44d5639600feb4446f052f96c4c4c1e311f4102300ec6952ac69fe2e9915a0b7fd078706dd017753f3d6282106e559402197d461b6a2970d58e077a31c0dea7c0f8a6a4d30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b27657b0e91d9003fdd19098d3105d421303dc34037044bd8e3129d38ce6290b709d35009bef904786fb586c2fe474ee023100c7213bc655285110256a4cb4b3a54ce6ef9cb8a32804e475c58fe070fde54778e4f6163cd2d43754b6d97e1fbc0cb2e60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023075a09d95b5fad072df3766d7ea3f59139f2a0b0052afb612e56a185a966fb89a7a653cb1c352323f9bd46051c8e249d60231009fc1072667e087c29ffe5cd55a3ec8bbb461f63b0dfa92e7a15d174cc429fdf3c2165dfa337b59099cd756226e0860460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c2c35b6790bc820b8a0861a4b14803f35dc278563cc771dea1627c0e6e8cf001ca222b031d59ba2b05b78f2dd258f8fe023100b095e5e010e659a9e70d1bc07175c53bc6c07853b80f5f52fd95a640da207ba210df5e6983c1f61bb79444abb7271f310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301dada9c935b6053bc4a58180368ab1ebb1c010098c621bfc5e6270e58917e735cf1b9dc04ef2a19a0b7c56175347cccc023078ba25ac7824e3e62ae1430f5e7c00416fc347f4842438a34326f7098054d59fa760181eb297aa5af0ab0e59c1c662bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e76f625977116ac20d88a31e6cb02cccbeb0b3f7e5dfaf16be58c38aca9c2f8cc8737f94e8d5d84023f90c0b8bbd12e3023042b6fce058319ce246607ce6babeeaf9407973cd4f5ced1ce943ca73b0b415e19bf82c2953ee3b3bbfa62b7c533fc0180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dae24da7cf7d60f418fec791b96133216d00978f765c0dfb224da4e3dfe42fe7fd415d82b2de5df51d488e999cdc3fe1023010ba474bb561127fafd589cf1bd2970f48cee90e2bb30b2d8e0ee2d337f25809ac82eb414df289b09238a34d0c18d2740302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b32c6f5e596067bf171d5729696eade212056cd0a13562f7a284c5aadadc950a69845728d5893ee92e3707ed23882c87023100f289cd59b9edbe37700e45b51b2358cd75626e532f11d688bdf5a786866751a202218efb2d9e4197f5bed6d26f2239f90302047c435bb500673065023100d35aea167142a83be77c29eea9efeaa6e33dcb6b78d3c85e24b87323b8406a5f3e17db59d144a30014699d7e457ca325023028273110531941b8a37943a1ba6902fef5543fd38d6640f3bbf90053801fd191eae869fa70abad2ac7a4913d7d5881f50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e7961e75c27f7fec2be25616ff5400a34539a22920228c9737adfe07517f3990e3ecd918c78542b020b935cfd5964fa80230580664e1e780f30a4da7306e45ef2f4289b7548b5bb6d3139dd46cbc3b71f209a4c39eabb90e8c1c525a0de090154ffa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023028bb2f52aba9783ca0b7b3e14cb15ed0f51593147dc05f52ecd3f18a245cc946444caafc35ff294511ea576f6db61e64023100abc061ffd8b4517bf838c89901c2be4c4b45481ae630806d908cb0dc608730b27d8daec3145625418de1d8278651dc960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230744f8d95de5c858d2eba2612e8c91b38286590ddddd1792a35eafad1e8d811478c70b6ba39ed61020c45238d0958bcc60230786150196069b4001add0199e588c6f97aeac462bfb98151544e710754b767189748c2f161dd5c72c2bff6c8466d46670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bebe6e8dbffcc874d24a88e32e12b8945ad00996df485d1b17a5b218a04b5e0ee7601f8d4820fa76f3f7397275848294023044ac2c79744c3578fbc7be2a70a047282e15bf0e1b3ee41cafca6c34ce5aeffe7ae538c61b069d4286fefab2afebbfc70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303df86d2a573b2bf9ae089f0856c137a17790a39556fdcb769b4caa5ac6191ec3f69c3049c31dcff5eafeb67d2379ac8a023100f8d95ef35735a1abc02a8da6365b7d65831165471566fedeeee843bb3cd4e6541ee2b76c7978f7ca5efc3a7a22323d6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303f272518ebb1d6d427e6e3164c427de9310ff48e49e6fe190e74f18c723088f603e56890009799e5bf5891071d9b0c8302304a153a02be194b23887e7a81eff873ae7585f65af8f85d24fb9f72d9fa64c400f90084cba2ec234a2f40e6958fd8e48c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023014a6a000fe76b935635f43c06a3b17a9bfb410cab5b5ae57d888d9a31832217afb6f0385340c71dec09304253306043802310095e56adcf4dc527b8f34be609aa2b3920981a1b26fbf4441a6b625505f1aa57ea411ba00061a23b6661264aa826f1d150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300942d399b54d5c8582b5774218c6070848305d908a3351498251a4d89e95342a7be4a23a186bfe8f8e37dadfbeb8dfe202307e3e84f6f2701d96eb74544ac6b68d29a44fb08f8676bac9ccc648c82a3217832d4e6154d981e88275935b92ff3a78dd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d36e318aac75929df975ae1989be330ed894cd82733577ede40f43c637e7f9ceae2c4eca0c6ffec8187ba43eccf940ec023100daa311b8cfa08714328a3f82764303aeeec7ad7be6029180f8e183a0b51b4fb9f2e3aa798381948f7e963464e98795650302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c909dbb0ddd60a1915242726fb5c908dbe65e40ac9339a288406088dbc02988f903ad6048163ee00c9c316adb92cd5b3023100c961a797f433056b27f158b428ad46b5d9566ba06a5ac334d92a8f82f5ec284ae00f5db45a1f2a7057d1fdc761856ca30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ea63f305ace9c35819caa0c158b3b2f1921f4780747b1361a74a0485ede8481a874b035c8fdedeaef5b0dc609cffcf8e02301b7bc9f98b72527c38518699fa15ca0a68d5535e498c8a78279512b0007faa5f5a2a056be599e7eab3f1bb51c89aba930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c7449a3e79d7290c2f415e50f0dbe297e066eaeeb138523744e276a48bac95b97d80d2b7a187cb47fd080b46728e29820231009fb0e3d47a6c676c8b6ea56abb9021ce2189eb97d07fd9478810528e1a6db98f93643072771394e544e9c44b9a6d82600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230593495ec9fbd67f36b40d75f33ac83e5f1f207695ae29b9e58203e6401345e02e94debd195295ffff2a36a8b3e46dd0e023100ae7efc7b3df7370e72650314cb0a9fdc0622340c5ce5b326023d285e3cddaf8e1f83f34691774433c3f3e56dedfbc0a80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100909ae6b4a60d1a767f48f48325b5338e6b77df6ada7f37d4f8d63fb5a3adedc69f6ebe5fd5cd9b8869829f1393aa9abd02301cad26073d6868a7392be58a81b0e136521b50c3e7f492b8c8c6e53e4d03cd7850a5a221764f074d5a7a7abb7e23d84f0302047c435bb500663064023037ace0e1029a0a80c6cc7469e3842d3ef03d78413a7508605afa057d3135e64489670bfdd0019dfc9b968687cce46675023030dc38dfe76901640a4c1365f83b6372940f42db51e7fbe88e81ee6a7a6e58a5582bf7827ba47ec0ab3c907acdc764000302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ffd5a1046898f9dd44033e4434d1086c2875f2eb1ca04d97fa4915d337d465f4d5948398cfe2a7833d28445a9cefcc26023055ee289852d848a1ea12a4af3db7e465e07908b67d1cf4ed2801c7ac8eb7d187f5517a18945ef03697419ab7281c54810302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eb52dbc5c7354792ade027ad594af5dbe19286d0fde6d17d7a16c65ce6b89c30262fa45f8a98fad19090b7e932558cd8023100e418f62b17a09cd8cca46123ebaab422609305952750ddf58a1a439617fd1706a446617a036f020cc4291b27e2fbb8d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c1a221ad6c99000d1eb9661c60bb44b917f531d008a97e7e0d3cc0ca4e65cab9d2404c9ae9c75728c9d8a1db8b5164f8023100c09f11ed387ff9fab35c154aa9fc1c744924f1b5ab72e59fbcb699962ec04516ff2894984536397bcab9ddc7940649940302047c435bb500673065023012e147f8975e7cae4532311cfcb7cda51c8cc6f78aa110f1e2773de48c559ce216126ff73b2b35b1bddbd400f58b97fe023100d127caa47474fbe69bfe1effbeab7664601240122c688398cd3e6f8f72921674305e991a4c5093abcdf146dbd2d882c40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306f26b519dfccb1d7532a269504bb00d758cfcebe7844992f415f2bdb52cbc2fca7c1e4525bf70c663cc5c3277c93b5e9023100bb906d8989fc1d65df56ed2f70487fec01671f18ec9491f6751500bb89168844788616f8fd46249f113bf6bee11b7c640302047c435bb50066306402306cf33d9911b5b2c0720706161fbf2f03e2bcd66cc5984e306594056d2785c8798e680ed67d10fde3cc8221332588a4a3023022a3dec1ca074760eec571de352c77cdc154dc46c9639c11a8bf895edd2dfe3b1dda158c8a871acc537e0110cecdfcad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310087a9dd8b6da99ce29e91569b07aaba49651267ded5752813688627cfb6140766defb04133d7de939aba520d0a34228e9023100dedbd250950ec66cc9cdc77612f0cd8e6b983ae959a45fc996dcac6cac23d391d72fbe1c16b6f46b2bd57976f392c82f0302047c435bb500683066023100d229e589cec8450b75cccb1e9d67447dbafe0b584d2f47293641ca9e7c06eed5c85aed90d78dab2b3c29d1daa74a8fe5023100a771c8e69d3c3637017fbecaefad718e8546115c528d9c279b2ac131ed1c8e13de8d26ecc7eff8fef52cfa7aa50ab4040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008575914f08037ea5d37635d40ecc88433bd75129ea888223d5deed384ba8cb93a1583e026f0759376dd79dacac4f871b023100de5005d84de28450486c8a5583e6babc9ef5f95b25daf6fb0510dfaa801050e532ee87d6fc413211981204426a1952c20302047c435bb50067306502304d1e5a8d0bacffba904a608dcb108c27794e63272c1f2de1bab46303f05613d18b3a2cb0d10193ee3bc09142be0629bc023100d419dbffd7eb6c7b92d2070bed27d0d2b1ae610769c9c4961a4459cee0af80a4afc6f40bfbd8f3faecd94ac14b23b1350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023069fcca78dd4bec9f7ccc56d3972fa74380bc6881970d78e75c9051f83331613904fc2b2cb3c2b3a0d04f94c592f1723e02310093b7cd27d1fbae2beb68045a22e62258f2add94f4d80d1ddb00272cfc9fbd10051487aec6a799c60f9d01b858c404b9f0302047c435bb50066306402306202835af5cb1f96a29be6416b0bbc69d9f3a1ed31536e6f4d6f1245fb0f4cdccc058ce60f0419faa939ccb8debff3dd02301562097cba874b86c4e43f6b6f1380bc01eab167c21de896a73b24b8efc225e1d24af5942c84bf9f71bc8cbfb0f9a42e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304f14c8fe3119d5906c7e8f0954021a2ad85fcdf86662353db7f35d79068f71f2b4d218989300a5446322f1ab7a2864ff023100cb64131c7397a11586117bdf7eec2a7de303d30c0c5fea8bd30e8dfe7aa13135f89892f3998cb8ca58a04ff2b9d500ea0302047c435bb50066306402307cd7a8fb02a1eaa3d6d62ab418113a8e0bac30a83024936634c07f99df0ea0660cf97cd6bdbf2d40fd6d47b7dc5ae28802307b22c50209a95842fb9e7fc8f9310d3a29f19c42d5ae0f124a023454733e1f62f4deec7c68bde5981b852c2c8994ecfd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306e1ef493e6f54027ca346a89cd8ab0fb0663daf4de9fe732fca8156d6b7f42cb41e04db3826d5a7f5db4ce9b87b9c0f0023100e3c5ca9c871b336d89ba96c911639983715507c4f0b118af7d3c966d75aa800fb44b07e5e3103b09d50eb319d6173d300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ff7f7e6ea61c7206a40710e7e148ff92b525d10a731765d334e541920d1c760fd697cc92aa40b371eeee88202057f8ef0230137164b5165ffb0720c7312b199d0a9a40b78b6d3a9f1effe0b39573fa5dfb6561d2cd2757b6b2760082f9799de1e1df0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305e3075473ff517cdfecc94f26c82c62df8e03cdb842195f984546bb667eb025e50ddfc76ee1f4178341d194090686169023100b8c3279973d0a0dbe574dfb22ec7df8922127f2684d6739a3f4f3056da4e289f125eff32fe02ee5d4e1c0dbdc4b70c070302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f14666bf14771f811c7146cd5ec17c68acc9c3206506b9903b764bc41f3608b318b03f0b94b2d4bee9826c8f68c0c1bf02303bcecd43f40183ba306955a12e9d169791cfd6eec63895d732c8da76eb74e7523945df0680e7c8dda920f7d46fde0cbb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100db2122ed149a717d9255061316445ae7a3cb886a04b099be096660594829357761b93e23cd8ba9f67014dd815620786f02307a3d76d3962f13cc49fada8b490917f072acbd0cc81509d72817617422c61755dfe037986edcfd67284efdef967496430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304dfb30b203e3d7d24eea3cb8c721acb5c5761229cd894786d3791d413c3aec9fc5d271e4a1b3eb8374ff303357b60897023065b54b95b7afcd58321873ba1781cdac991eb8c3ca44b51e76ae01f9983c3f2684729fd138208681c33a0d1df73e271d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023076b5ed787a8a5fdf8e397dfdd34c91f2fc1f94eedb373344349d0b81fb61111238cdd3fca016a54e4930820a912fd6910230130f0f8dd2eb5c92586e63762c50bef5b3e23fbcac36d54305de4faad9100cba7de700ed295e6893502b739d18542db60302047c435bb500673065023003f4146b5cb596b5ae3090744f1f04d9ef68856170c1460b186e7f0388fea418107ce8cd76bfa78139cb08328d77692202310091193b735a169a1d028632bab82f0f46b99df474e9bb1dc3cefd97753f08ffbedda600423f9324cd2c851cf2aae72d2f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100db0a7e3cc5c03ab5b85d4f66f66fdf7e6fc49e8c7ba508582759a19f5b69c8a278e0bd3b3b4c57fec82cceaeedd60d5e023100e906dc77bfbc2eb77c67030343f7e9ed363f3bd3022084632a72c41ba1e049c197f3c0bfa0344a7fc963a905f215eb2d0302047c435bb50066306402304dfe85fd8657cfadbe7d7390ff529002e9c98fd2cefe53ba3762a2af7314e673445f0ce56b41124cbd865ea28ec7352702307706ecf03afc50f83842c0d2cc3a8cbc688bedbaa86183a3089cc8c1ae141f486edde89550caaa329ab0c387d32f021c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100cdc1ff67cd68b165f955b089d79865dd6c0a99155b7f0070fa27b3e35b7b14eaaff3b41942538cd9468a5391969b25c9023100858d57467145504879241aa9674eebfc6873ab85baaa797d748f2a3a4d2b2a28f51979ce8eab0dd9a9d0bf65d068b2ae0302047c435bb500673065023100db18c69d227d230c1cb9c8a31c63307cea25ac268d839c356bc8d6badc0d936a6549958716b5b339a35cb4317b1de86102303bb906ebb814583fe8a5362db13edebcec772a283b0e96384bc4b446c3638eddadf12ac101c75c9a4631b30bc391eb370302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b2fcbfbcb4ec0ef2bdc09aab46d8b5ddb8bd863025d8458699e35a67ac03ec3b007b315c499821f715781a53dd7baacf023100a9a770e3540ff18dc58faf5229ba0bdcfd6fb66a3b8a09aafea3346f21d7be1c9439d59cda2dc2db6ce93d3d15726fa90302047c435bb500683066023100cccfd8abaa38d565461167158a666b013bed7cadd44286e0efaf83d81b5c2f641e6f8852d5c1b19d082b93a29070c71a023100c866204db5eac4c8b91764c9a4cf612a287c501d3120f2a018b4b81fbde10b53ba7b886f18945ba4fafadea4520b71a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023073d4758dcc998f8cdead512a867fc8265f5008c3cfd69e6d086e0a0958437a66380b8c644743d9a5eefce8010dd2946102307b46b63e3aa657a57d25b2701c1b2dae20c45faf47cc89c58da00c479fb49daa24973f8abcdba7b9a8f7b594b22b3dde0302047c435bb50066306402305bc1fd1e51413dbc262f92605ce128da3e21d3c33a48ac68f8870feaad5322220c846af06def67b1c07471f508db8ad30230528756330cb9770fae44e468cb81d8d15e61060882d027361480a7b7f01c2cd0a062ddec11bfd569d1f0a529265ff22d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306a33622fdc7796e4c16ad8655fdf573e855af912fa55d075561a9458d0388577d17197daaabcda9c530cbe9be3f7e8d402306a0c96277664f0d2e455877df00d2c62d27b69e304f8ec348e08c5b72850f563f2456eee67345d33169364cf97a376180302047c435bb5006630640230222c54f9cb5bb2ff90ff54f4b05b181e3c837d19cd4d868d7d452854e1e588b87894850bce258eefbb45a6834df73ab5023002d9b4e881a1d23430324ca6215d3b533752c0804e92537f17805a733a5a1d6184c6e9346f6643f7e32e0befffd3b89b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023060b33a9764b4e299b9c13680773709d4c4d057c836235e1a51bd756672b78f59e16c68c43458cfcbcab928bff8dcb1a1023029775606d275a96097516e35d4799fec1c5459385597d21bd0904661e50fd0656e93d436d87be0e3600668512be7073c0302047c435bb5006630640230200f56f5b3ab1afd33e7e727ee8002a2583539536569d39ead211457d635835b00d59a84ff5007809272dcea9ab8f17302305426bfded1f407037b165076317151e5cf1bb60f2a05ead9ac14be3f34d0207f068bd208aa0305be5f32a6744ef4634e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e488fa556375cca9d7de985e5e1ebba02c1c35393bde20a90568997c13eab33881e1ccc3adc3f9bb2694637f15ad17cb023100d2001b036c3fb52c863eb2691d9f0357b3610ee5bfc36a3f416af54df74d9fb6ea5d3b7fced0aad7dcae38cd09fb7bbb0302047c435bb500673065023100e1b43da768a4922d7c2127f52623993b51d0eb4d8f105fe71081326266c92a64a83c6a57724d2b7ae58349ad2471de8f02305fbffaa15cd8af0ea14ba5120aa237a8745ef6a03432b5c5cdceef9aebe50e345a2e2967f0813d041f32f2fb268737990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302f9fe2f2ca57771143ef40333471894e7bf877ad23edfd2bbc910dde24f1b2af500a9d97eb99727ea08e613c6ecbe8d002304ae1701608c6b379d47460cb2d5a9cc2f15aec4be4c30c49c23bd9c0b4c235d83fdd2c17846ada95a66cff520b7ab18e0302047c435bb500673065023100a0081ee83dca698c71116ede147f67ff9737a4e21a1b601943c52f170ed48612936c67ad7e19a516f9f306b3406c46c602304500b2c91f9b387bedf6ec0605e0e695b3640fa57a602ca84b1b8aac7a3740eaeae4371720fef072697c50934c3b2fad0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301eb81089841589cf9a6c39c4e81e98ddbe301f2f1fc71b05f15935ca56216e27d6b912d6be3c5d3829ebdd320c6614f20230283565a71d193b89099dff2573fff27a4b903abcf8da700f81d96df32c8e13c73df44405c4ede0e8ea24bcf3adb26d820302047c435bb500683066023100c8f24e81b3a453d7a23d395417aa1d1a3eeb821bc0fd95571ddaec5898dfea992240eec411609c0603504d4901edc7890231008364847606626015b9a2584c62e2294b11a721bf7f2f03659c6a4e3939d26c36ee94da90068e83e903067152a54cfb220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230222828b68497bc2291786657fdc3584b079459aff11a435cce21845be1aaab46877934962de3067acdf649bffe23a7d1023100c3cb0f44996d4b756bcf0cbdb58dc1a15f222a5bd129e1a6445299c6cbb5af41c7ba118f00354ae87834e39ea24fc1b20302047c435bb5006730650231009e7c178f87a0eecacbb887334396c56fef284795aac19ae097376f49b50c65934c4b6c9911297fba742f22a19d0866c1023033852eb3c24541c41e60708682e578956559ce9d2ef60bb325e531d4cbff64219db7376a1fbd4197a3be77699584b1330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306959be0a89ee1ee26deb7f2705500cbcfc35b7241010eb00eaf2697c67b4124301a9a71f2e17870f1266d0d96fea3348023100f6942f74822194602a41cdb5279f63aeccfde4ee13326e5ff0678aac83d654d0a7d9e6e0b209977594ab4cecc0611d7d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230740ff6dde7074b898dedf0172971705cc64d7f6ad5393a71e2d5989b6ee6e7d98398e377f4f43e4fe21e666d0f2d3637023100829993572c96b170c4b2681d5e4100273aca982d731fb68526cd285222b91e8f5437bf2cac43d626ce2f828750821b0c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023022da9c4a26e447bc7ffc915631a922f9f0c2ca498866a926581dbac1849ff3afc5d7707973172b8696d786dda724a86d023100cc815e49904b1d7275ea5c6becfb4845cc612edf44f527598f04f25de770ebbe63f18df0244477a9a597a63688885b020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023050ee9609e50eba9cb6a626d436181194830e0872fda0ebf75b3d57a43cb31e78b358aeff7b574f0af76ba2b4bc804df4023100a746d37eba120ac4fd9108b91f3773a28a194c8302dacb067918755af3bad8b85be34a82194c560fb646439de75431ab0302047c435bb500673065023060c0e10e1118b8432786f526c00437b81e6bfbc4df28e1d91a679b75fc6890a8243b47d3873212036ce13b3960259cb1023100d3090eeb57a251348caafd75ade772818112367ba5e576d7f17ddcdcacaf36037bfe3babfea6ceeccb7fa47c78fcfd930302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eaf9e1b222a39547c597ea956b9e51c1cc6959c0ca91916c492a9a6f39ef4ff6913b73c8b397b379574a15360915e9a6023100998fc268d15b8c63de8bb7ee3406c641457d49b8b28ac5ca579c57d119d45fcaf2426d5c780641239f45f93926e120050302047c435bb500673065023100b96d4bab2b103448bd5699d2b689d5204857f5be000043dadda0c4e9d4ef45f22a58cc43448398621180a56cc448412d02302fa3ffba7454690db083d1b7ffdd57f61535a818ae24cca6cdc424152039096ee8638a2338f3410e12548070af7491170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230115d4392ea96fca110f9ee33e962be9b302671bffed00c55ad5bd2c4fcf198256e22d091ec89b5e51f5158520edbe44e023100b022380b89287676e80a4a31e0d3dd251331e28a59e5454d3d593e6284d9256c39614961aa87a660a08065d7554e68c30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301cdd9acd4fa2e5c45229d77af385f03bd90b28da798673ca476393212a8cc97e8ef761bdeb5c0d92098a366d52a63574023100b244d24b1340ef59d7058dd752b42df478e8f7a4b6b75939a30a62ff9ce53170de5cb980c44b2eef651e1780807402cb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302b137a540edefee1d99bb91c06ecefb7f68982ad5cb8239fbe800b678a2a286239617be505a0457f5202d37c390e11c60230390b6aeb1a0e59b58fa216896ba587c50fbe846ac0c62f5b23f4bd6755b34c27c30a65c1080f9ec4beab0b73832cfe9c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310087e6c11cf71e20f1870830c39ba447d9138b63e14eb6de5c823e898d7aeed6530ff8f6ed0a1e55a113f7b61026f089ea02303a0f8a8693c35fddebf3902453a9ccccd74e7c4f93abdb3358110e591de4b07e1fa69b8d5fd24eee8e344948bd65f41a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302f341935ee2413850e839072b74f43c65e8c2c22c6746dd9ccdd6f5a64f97d791cc1ce1b8611e60c9f832aaf8833a1c8023100896635f68f0dbec69d73358552d99eb1eabdb7361b31152b1c30e28fb59be8e620abab31ede6d9088eec5ddacf46142c0302047c435bb500673065023100ac323644348eacf0a1e110cba34777183896424fa2f9ee96ab469ab5445befbf93b8b5033fcedf72f42e8108545c74fd02301705c7105ba8a083ef28bfae467bdfa524637e9fc0972cff44e858667c498b6eb4b1b3056ef41ed6a9de7de4ee1348f10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310099375b23a88d04fc88ab2614b4a0bed23794929aa888d128feefc279181cc58c3f10e5c96c13a60f7229eff7b81265e20231009fca6169f2982d8891407d4d06d0884117c61d05a26d00d2f9480cf7d91cf6c5d19466ed38897c26e0eff9d92776c7010302047c435bb5006730650231009dade5e4cc760f1445f202dfc23e26ccaf6499f97e5d17c47391a889a12e47d0d27f5bef01b73f0613b18e05eee37d0902305183548e97bb0e1703b510c2be602a4120e0d3712af6f86d207ab25187a63393e47383873b8b0311b039de484b1b46b00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023054a1e3a39b834eef08a08af1c9539fdc3feeedc6ae59e30e4df6824a7dd1e434f2a31fe983a9a3ebff68fa7cd6cddb40023100addaeae5fbb2846fae2f714e4ff17976a8ca7e881228d6cb187c233dab633b9447baf03a39a2b76d6a752a254417506e0302047c435bb5006630640230534520feab146b080cd76981136ec6bb64d1d6974d06b490c8394f4102f6160e6e9a17e1501ecb545ddab68146929e3c02302b15e0b71b20790840715702790d8fede0ec8462dff5bf6d0a8ab5e933d72b6a5bf860928e8d110f5aa05396625e69fb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023048e1eb2fad5095317ab293c1b041510bc58cab2f4bdee948aab2fa197545dfbeb057aa16834e087e153249d71c497362023100eb2d988489755502c26225bf9abce33fab4bc20dd948f80be0d0634b4bf6ca93982907b6b7a443298b5690d10be578190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008b23eb652a7d0fd73906bc500f4e527b7849e22fb26c90aab82d9a4dcbe4a9624bc2b69c7e301af6fccae5709ade72fa023100940f0ef81681a8d489ed379cea22e2d8e5717af037a96dafdcd5e3a9df8d945782b46094bb0c2107f91d79dfb1b9ad330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009ae35e9a009bd4c2067184d123094799f539b8a3ebe7baa56e84c605548755a033909bb0031c74b03a2af5db0195f5c502306aa5c5431336f47e46d0f6c96a348f6cb7357c5009591a5b05be0c8dca4f58a2e2c8bce24d28ee3046b42b47712911c80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305fc72e5325b562533e4e42e00630e0ef88ca3610bcb4ea3ed9368ffe3e23aeb279c1aebf6884483f8a86db5dfabee223023100f07e9936c32ec77e9a181ce9d5190308400046ece7feaa172764ce23a01e9e543b57d8c1405bcfd7392036e3ce5470600302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d771f877273ed80e238c0701a2896f7e0a7ac94ec12a7e59d9c46ba519b965be9bceadd1c9b5d99e4285b0cc2a7c522c023100ae6b64cb3784635337e84ce482bbcba4485384bce207cc3fd8ea5ccd177fb3278208f997c712518c9711d464fc9f7a420302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f5f8e77e9ac0f8e975bf9cc0ad3c1c3eb4fc6d28791e6d70993b384554c7446cd17fccfe33ff178eba1c1c59cd0dc8840230417ebe191adcbcfc3da498ee05562484bafa3a0672d30d64ffe6ee4562993bcbf58c9597f3c663722fc93fe2f94a79be0302047c435bb50066306402305726cf37bda2994cdc67b5a18a5c73dccfe4ac860bef06666d0d546f1b6a45a1e44fd323f78e8d71b2cb5b89c21908d302300d2dd644580b8097de5016488472094a0a041530f12efa0d39a460c686a6fbab00f9520ccd06bb9b93ac2a32db893a6e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023078a89e0621927f3f671c23aebd576536ca0a99d680b7d0cb31b8cea08edefe9aa7d7e673af5e9933038025abe0f885c402304915009301a891ef344296d85171073d5ca5ca338565b31b23b741027461e8a98fff6804cc34e3b0ce941c04b219d8cd0302047c435bb500673065023075f153f4f6edd8c9f4a72f3d8553205352271ec74aeb4eb3d0385e794b0c17b0ba9088ba06dc508107d1ee7377e8c6c0023100feb20b1d9a964c720f59d20421cd1446904a822cabe11dabbb8734b42737a4e93ab149d82a0c48ebf5ef51fb8938e5f70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dc0e1dbe1b25e4598dc6ade32f10d5a5b98f87ea1ffa538f435b440deb31cde6f6257b78ccb19c063fdf234adcc32ca3023100b63c5cc854c5efc87d389337cb6bd037991e284f60f891fa9e3c652296998d9d6ad14949c4e71241756ac27ec65730520302047c435bb500673065023100fb5c4ff1f528aa939c282d476fb1632cbe4e30e7e3b737225d17833209803c96f51342682946a1db5a779ad1354dbee802306f31afe4025d8fbe4c71d7b57f3f632f6c99382dc725237b6d9f1f43792561bfd76e581c6c166d0489401a02d9136d200302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f0ab92541bdd73b7b2e8af1d953f9072217cd896a9192897584d5066c657c4f1b2b19e4e9a5d470725a1ee9a7c601f9f023034296a86ac4eaee21f7739a9e612133368df838d6f51b36314f102e73d0a001a7361c58cd09e601d31e4dd3d40c506bd0302047c435bb500673065023100e8a4e3ecae558b3396814c98b3f56ceb2dbe3f174e493c3da3a30a54c97522ce30b0f1d2a299733145c3934dce96f7d80230178ec14302ef6b42206bf9c93f1124925a6e1c7cefe252f51c929d4205056927047f665bfc600cb8a62f7db0948239910302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a14af321254ea25bd9dcb9bec265f33bfa9b25699d012f02e805e9b91773d6015cf5a8678c7570076365c3ae9ef0f23e023100e4ae5c1281bdd2d4c020e283dd487c672501748706ddeaa665f702eaada41c8a56f61d0bb56db63eea1b10aa039ebd360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100efaf53925febea75a25b28e978dcb203edda5bccf45e62286e43f18f046a766fa4f3eed632f67fc682b503670692bcff023100963e13cf87a6b35ff68af923f09ed837203c35ee91f910c027de648f7b8e2526962ea3982c3f15f51caaa8f1ea0b32050302047c435bb50067306502303a73853a836e7fca09131c755af3ae43c3497e1e34ed31fd611708809f198d46cb6aa8d3db9ba72d8cdb4a36e5358baa023100ad51c1da2a6570718bebb2b139797ce7cbf30341052fd168825be1fc70a3b1e6c701f73e881a49cbcdcca0d8921031130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c954325d2b604b93703c37029607e1b405fefcacd9deb1582996ce8285ff8f83824285aa49a35edf272927087b9a06a6023100ea9f34f60ccda2bdf4a543b154ec36538d26c1beaf8f15c5aa6f1eefe3f7a6b2b09e6d0ecae8f7a0073ed1bb65cc1bd70302047c435bb50068306602310097144e3251bd06cf12cb2096d3c42d5917c4369672d95c272ef8676a25d0eb7fb29f560182939b99dfbfdcb2246aebaa023100fb32352884e7d2ebd28a1373fb251fb9ebaac7a0f1a7e4c7094249862594cde3092a1db7afd3653c082e106d0d7a81950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302f566a6b5a4ca5946c50bb1fc9bf2cce765d2bc91aa03a89bff3f04aa9c93d6aea7d3d7ab4d640683aa062c6b364a5fb023100e980d520fa64c7c309606071701ec4c4fda7b62d6995f4300935b41729cd03b8fbefd3bb098f4ac8b63cead554cd10410302047c435bb50067306502304e792d8724ebda51d3f0b979ff2a56bc6199029068b68a8803a5d65c52ab05cd329acea2fc1bf49447dd7ab4455e3fc0023100f45d77186571608b5bb7636e6825572ea1fcf88878afc5aad1f4ed873421872902da88d54327fc24f074b9204627bc650302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302bdedba3909d7536c6960d75fe212e8cba3e2af59a9ce78b7e95f8b399103138bdb86fcce0275058f4583c3642519cb0023100d63c1d85d7101edbf28624d29bb94a30c00908968cedcc36be8279a7478f04d2ee0b981e02b584c6ddc1b85b0f7949700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023042e18d82c2d67ad91cb398b497901bb2f815af15296f4fc2bdefa8910ac9d0e391c7f5a775162b45fadeaa983f2a772c023048976c7d2c1548ba875c906923336d9aa479d9d81302689ad94a2b91237dcdb7cd0212c6b12ce4a27eb11677f56128810302047c435bb50067306502306c852f17dd10f0b2bb6b48c8cae1c8724be82647e2afa0016fe38265987ddd1e40170b214a564ce1ab6aca3121e4d19d023100d6b128f4dcad52aa7fdacdc67d5d73ec83d7d70f8fe94f81efd22837c1be9edddea0c248023f6f67eb82b825c72c67d60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023062a11599f3cd9e23f675a510a8d153cb97e46e35f44fea849086bca5eea9a428e2c2861e033e48b07dc3d31fbcb40bab023100e8accb50c9db3fb2935910e72a5f5c8a6ebd39b06d32d16772793afa96a0ce328424c8a3772f3842ec97f34cc7e149a80302047c435bb50066306402307b3c347eacd8c78112d08930b35a2bc980857a26adbb27125c64d71f41ae9c30bfdc622df16c7739fefe534e855d26a1023033971fa8fa99f8c4dc08c5f3306fd2d44ad1dc8067f3d9c8da428daa1a2db1194a9802fa9858c8599f04e7aefe5d5bb70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230090ecac06174ee7ae3736322ce9c822048c16b3c8467128eb770c642c25a6dcb2c8454d2534c6a4aae8622b5b5316e4e02304f0e4cb1781dd03df70802e4c3a5dfbfd61a28f93493ab7d346c7ab80ebb0c8db5cac533db40a4947b6e9652d1d8e7a20302047c435bb500663064023013a2c60a745a72b9c3d977d49126f91e97121f8374b24394073c672464ac9cd423c8cbc65fc77dab83b5ec76b715c90d023051de114ea8a2bde33c8ff2b302e040e4ff874ea700761e7ca1d59751e300eb66f9d0dc10b812619f00e4b60b26dc93d10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306022d38ce945da16ea66a621dfce9d8f418168ae52f30027ed81d846447061df6bf987edaa93f54a887f7c1ef624f4db02310082336f595390328cf81169d94366500b623b676b42ece3be4f54a85b012a9d12b70c69b7fda9070efeacbc1eaee0af770302047c435bb50067306502307c262916ee0f99bdb37c11e1a093bba931639491de96a6f41ae224ea7f73a1a72272f3ae8d48d0550a51fcbf07953510023100d0bc39735bb16b7d9a9b1b607e75f4212fe215ddd8428c722a17f72e88f50c869f42f8c8154109921e4a279276f68f470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300973759837616be53c1daccf53c6bc64fcc9965f6ab6c4b2809ea19dc859c1a1003d80d45983668e6e1bb4f082ed3c0f023100f6efc5b0c6fee252dfadf9a2ad172bfe54814fd26e5ba22b01a7f85f423c0d833bc468d8e560bd9a11609ed2e22771440302047c435bb50066306402305629802759bb58a4bfa0345d10cd71b0098b80c38a133f9bf9576c2d3c6c04cc78478ff77dc31ab5a0e2b4a7d0ef16900230147ea488e72bc2bd2e0b7c778082b5b6d6040f5b948514c1f2be053e3225795171e2c963464d33fdc23180160e374f300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305e429b9715c69e23cd7a05ac455e707aa61e6caa7b760c515d56c3172f9a554091b0965e5f2482af42da9fd906f607c6023100c36dc4f64503b161debb509f65b7d3f0da1550f326b6b4ab1c7ee4c404c5108720a1cc8aca9ae9e262c8faeee0927e180302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c6ec6225f70ad3d2bbd68bc9ea8538a1bd8585a2f37d7b76070901d73c157a53265c8adae3d725661f8dd52e2c3e63170231008c3f49d82b6db4f0ecba9d93c05d41a2e71c8d046a3e7ec54ab81d2902abe427305148469ea0859658659c06a66110eb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008170d77d31880f3f5793b4a66431ae0742db0a1847b4e2913ba093e2c3672711fbc9f6c22060a7f489f2d25f7d1359d802300193590361c37d7bd90508defef4853b949b9c946c32c9845af574a9c9b5b3fe0f979858a9140193c7b0ab746b987b7a0302047c435bb50066306402307c19113f083e00ac759667d0827130146c10ce6ee6d2a405247c7a981d2787ad7047504f4f3bf88dd6c07566b788d068023074b25dd82c59889d1465d1061d2801079c11d8381f8d0752e32d29cd8837708c2396b93f7d5199825631e3d0cc6eb2830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100edbdb08179751ea41ac105012bd459af4d0ac42383d61c48dd601f70ea2c497917a4935a1d5598def4fb434c52faa2df02307413f6b75eee3cc198349b97cb04e63d53725d4124eb9bbc253a2b2fd89ee05644797bfce34b2d2f0b1560d974495bc70302047c435bb50067306502310082c57b64a295fed1e5c028f85cc3c75d21f904d0207301394cdc672ab2fcf8dd0af4249df77b3eee0b8cfe5253793b1b023067b53df79179be00ba1ddb6abdc348f529b7e8df1c73610001ca9921410c970794d0ba055ae67554f053b2ce99619e830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303c3caaf673089f397931c0b54cf05b0130e7e6eecf6d06b46c299fab0de5e7870621939c8e0b21a14ff6572af8b46dc40231009884d874b84ce0852a220da3efdb3ab42355eb25867e76371a9365fe6d283a12d9a49bb00b513c1d20970eb761c45b330302047c435bb5006830660231009e54548563d810c66dfb47690584a392e80e39a29b7b59b63511259a268b3e2784bb1badbe923ac310ee0667a682ceb20231009e4fe99627fb56239c864ad27cae64a6a8a503e31c7067b47ef5014276295564dddf27d8f7345abae32c8f941f34fde30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023001312a9b91d952fdd5595e42af9973378a6cc8973b1947292f70f81288a207a6aff98d559071866f0c6f3d40f3affe0c023100aca6fdd0612082be9968011df944c80b2615c67bd0addb755ea4ac42091a9e9aced0ab4626c2d9f271cbae27a9238deb0302047c435bb5006730650231009e579e530faf3d0b1dff22b64dd13c8896567dc3babf16eb59e1cf89d3d7a4064b9974b6d88883faf8194f0562585cb502306dcb1a714ef8fdd45c464a445f5e671233c6cf7b8aef3228c6395eab1ce425c83d620eef2184983ce8131cefe7747b3b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230471f69767e890c1dce857a4177872399287c9e51b243e53b12630793025561d74600b607af6d401ed211dfccdea974d4023100dc685c850acd05f43a49ec33006c76480c5c11c3d08c7c40fc445bc387dd2902d3305ebd5b982a3dfe590e9d76c2d0680302047c435bb500673065023100cdab31f0483d2b5a1260a294d03292b84d286a4a77df5b06b2b433ff95db9afd43f457955411428898ef09787b5e4e0d023015110bb130a6fd7edac8063ced6420c6ccbf7bf6a92d598d83238188ef023c92c7714617ec998db6e625620453556e310302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d6dc4c5bc3a091bbcb7942b5f3d5b5b47c161b3b3a1351603bde5ffb3c5f8b86ecc8e9f98e8c5d426c6753183dcfed50023072c6d6c094d004e79e0c01f81b8c19f7a37156b6119ce2880abd4ffc59b3a9a2ff39003e4b8bd6fdfa113cc21d23b1bb0302047c435bb50066306402306a0d86d3794f3f1d87cbced93fa9a44bf7c06e0e5fa9450ae81566efccc418a255f7403821100939657899861c5132f0023021f43186b805799a737adb4c70455d849e1589e7eee1371d2b48844559756c020406e869d4ca3b94a39d13ad35ea129d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306ed8bc350b28e46d4f237bb95f648bb178299739423dc9a9f086f367ad38bab1f3deb8977cccedaf0ce997817930d647023021ba15d3783ae44e5be937d10263d1377b2197605a4fbe507fd9ea60ccf4a3b4d4a3442678681dc4e9b8ec9ad686298e0302047c435bb500673065023061309cba37c4b972af1c1a286ebd9b53b15390fb112ba269511aea0c5deeb2ab86df3a70f9e4c17535dd9c3f3618ab370231009cf3c6b363fae8d28b731b111ba9f157699f5f352ea43764520f468ae72d26229603de8e649626ca8adb3b93628129530302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301a4a3ae5aca27d2264d2e815d585d1e99634b745883b123e25881475a5fbc3940eba2d0064e095ab71e87dd004500cbd023100a573dd970c10385b7573b941cdd5291a9e708480f619c717d03066a5fe150c3dd36d75518b452b6d2821730af5097bff0302047c435bb5006830660231008ca57074261b9525ad545d78c4e58c551cc0fcf391a609b8f6dc72ac976a50edad79ff363895ee827c3af89b606931fd023100d9f77a5c16ac5b59835857dd41ac65f6d10aebd1b3c7232d23d9fb7bf1214736aa3441c2b50a8e90df81f612100489720302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b1737b78767926ac449ca20c2b69cf32ef03e17569a794f34f14913856c599d0b124ea87125b4b187666a69113b96f8a023100c349d2085067e4ea93410bf39310bb5c6e5efd4119974f2655d839bd4e8c011d3490e2cd990d4e011cb02dc5d1ec87030302047c435bb50067306502302a12a8cacf77909618e32bdb14d88bfca2f8dd4fba611463b0fdad240908950bb468ae945498a311cf8a3c426154149202310092dbb24358961e8dbd9118bcc8adeb38f581c0168cd1fa85780f17eb5ee0e985ba057e3f524581231beb7221984e4fa70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305c29718b9985959ba4a56a7a570ae6c6f51b2af6aee8a5635af22b99616605ae58a57c88f3fb619b5d6427a30f96aef9023100998ab33fbacca8cb1e3a185652de8149e854f3de527e0c67d51c6087b88442569a07e1e20d3e80813da8fe234dcb9b600302047c435bb500683066023100c0819130f809d0f60465a913e6a2298810500343901b51eb7ca4576aa14b4b20ceb5588e93760896c0a34ff1b40cdc29023100fc9ab7e74785c18d43bf16ca770dfaaf605ed2ea261826a23cfed228b5afa439e34d6a0ff661528f9c639a5e86e6dea10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100838700d43f3679aec2392444a4d48b034c585abdb2dcfec7bc6c0f40de6f49ecc2d853f915a2da2a82c3b6dd67a13d1f023046cf69c8f5c6e57a6f98081288db9f394d8166e11162a4e8e504576f69c8d5812905d6edda0aa1f593daade94abb7fb20302047c435bb50067306502307a00fc948e10266b985e8df14940eac4b5c29b3107336ee33c0cef2735ea7e6f1a1765f771c96d9c06917382a8070945023100e3e408f77169d909489317f52a8b453a3e3dd8a52eabc356f6b66773336454c35361e2abf7c27f05493d48741ee8cedb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305c874b6c493895a8151e86043e368548eb2f2d9f1b451bd645ad364e2cd22187e8475fe4db81f6f68991ca8ce3e72291023100b953d0ffa6046951f341c17599b41eb409c1a67902ecb6bf0dcd0b8a24a1634696351f9dc05e14070b89b4066ce9a4250302047c435bb50066306402303973b6374cd4dffae3cff405995f4963ddd31e5eb8ae3900f17c4ffb2017a26967ab666dfbe589cb1f623f0ab9520db502302cb285984cde3256f1081cbd99d1a04aa506cc04ba6d408d413f92946b86d63a95a454836cb4f846134b5326387ba58a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009a9dbc62670bae80849e6482dbf8acb95bf69a0a8fe73252dec10d671d8c941bc08ff08e3ab8a70daeff5ab9bfb9784f023100e1db7207d888eded67b574380a95be6d319f6c22aababf0e38c53f6ded67f8620315ffd535b6eae2d2cd1a4fa3b6ccc50302047c435bb500673065023100d8ceb08e8bf5d5989072e731bad446c2697ffbc19b0c2a2a6330a35750732c593c38f82682a24ddbe1f6b687160d0d0a02302ec6459d03743f16cecd4ee31efc285ba5eca2df037d7800df11c60bf8101b7bca8b503c6d0e3005401f92047c0832f20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300b4c56e4ac9ca864ca04ae40b509973499adf47738712b646191dd22d503bbed1ae4636503240bf08c260a872cf1d3e4023100f2a2e8123c130e3769cb3380bbeca83eef9988e2d33925539a24203ff4951de8ff2baf75cdccfe6e739973c6c717d74c0302047c435bb500673065023100d7fb06559d0d0e70072bb19ac2be32d5a3c1ecdb462e824cdc3a35e836ebfd4c143bc3d571e7ee03004e3f4e8b18b7bb023077d8c4c4257b12239f714f2a51b99bc0ff6511304424671c7a2d3b043b044114506b7b7d9341e3011338a8777b611f950302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a77c552035e36909bc4df2382bcf60761efb574b5fd12ec6afb9eca37c5758d32cde6687f7dc1586544c860e5abe4e3202306a09464eae780d197638a3ce9af2d00ed33a2ac460c7d24e35f836051f7dd24368611ba8076a40b3c2017ce2f8e685c90302047c435bb5006830660231008bc3db5ef69b8c963ef8eb3438b4db6eb19897e028b38cf91961783568c9df75a3f8dd16805daf76c4f32dfcb2445bda0231009a866358b9d0905c86b9a1bc926148b3eadec6b5035875b56ede134cb28a808944dbaf2b1635ea3880a2d3b7f3f90c4e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303a53f964f07ce4f97631a2296877bf619b42c40309ce4042f32e4210426a6579f8fb885f454514b36c5845c5ff3555b1023055fe961e5522162fb81719c83f140bb5ddfa3429a5e893cb19b089b4114e95e245f99f21cf2a8b841a628ac6a14b5fcb0302047c435bb50067306502301a302adf3edbda943127c10c5ba4c425a80dd0e945e447b425e2e2ed15e60c9ed3a1ad0ce79c902c2ad7ff23c596715d023100ee46708e439468694bda79bf83f99ac9cd5e0a33169ab319be8558eaf961fde967ed67c43f6883407ad866447c3ffd840302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306c95f17f722d10a035c3614515ea2c73dc8258ba02c94ae799e03947bf351e57736d9f04fdf1019f0481f921b373cd4402303ed88121840f8659652f79f0fa8b375a5c18a167a7bde8849fd493be860ca80fe2b54ec70e3f9bd7f968394862bcec490302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303565827404f5c64f51e25a069d5c7a0a527e7d3602a699e807bbbddc8c8465bf424d8bee19fb9f02f343a8e58ceb097d023100e22ea2f6c80bca368046d9002592ba9b0111f5dd3201f5fc261fd73041b81c92ea0f0173e1dc038f71433b0c89d365bb0302047c435bb500663064023041a655c0b1798be38dfcfdd678fb0f3dc0e7fa3369c736c8b4cec7853cdda1d15e318e8b01b32086f44a518ad790bda602307318324a3d7352eb4d75dd1ad76435164d6edd338b119a99bbed51f271b04389ca40439008b0c6fff14f5e261f3bfcc30302047c435bb50067306502304261367ed1a4aa2e6f0829f8d72a39385ea6f835fe580da0727ceb36b38b785225ae29f5f7255ea083fb7664853c4ff6023100a70b79dd24376a08d92e63fa29af7db167aa7257de824c70352117166540f2af69976f83679472a0df74abe6e26455b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301498bfab4cf7dcedcb7a38f2388a219cec076b15a81a6eda111eba295c33f8093d0a05f8c5865fbb3231968de1251b92023100a9ca248dd5cf188925ab92baade6888fd8d7b5bc8e6ce9ad9b49e3d65f4b12d6aa17a53d7ba1d30105ab9cf0bebb36c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305eeafd990d561d403d9d3a0604d80e8b86a816ebf257cdae80e3856451aeceeadc01d576e8657a95d5a495dfd2cfd13a023008c3215ab5539a5b444e56949370383393741f16de3346049e015aa00bad31e871d940f21114b57be932ee0a9cb172c40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fae0c61de68eb1055eff1a231240837f8fa650a272d02c3d4de819d9b3a12820b1adf5a4309c86e54fbb1f1a478bb701023100ecc2f8220c8acbed80786e75bff0781327a25efd21d4ee8f714e7d43b71f2df2850013c0fac008bb54c907f53cd8c3760302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100c1db55d8fe023092a334b3278d7aa938151708ca24b48208020014cd8e16a457af04768198494b8d0c7ece918214b73b023100dcc29f412c3a84946946cc72aa7a16f78ef2d369d0fb830b5ccde5d1b351a248f5ec2ebc764b0e490debecaf4f6bb0400302047c435bb5006730650230579d6851522d7202cc5a0cfbf6af747d7becd8b669c0afaedb72b360dd0441069ed03b29c244df0b90e20ce4fbf6a6f8023100f419c671febe4f93b65d8225fb034c38c31d4a2ddb3e1ccb5bc0ec960a72cee9337a15f9f8f0f046b627ab8542e7d6590302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307acc7958a913ad8db7934681d3aa027ba3338e6406ffbc7109c07c7b571cd72bfea705aa1de3a8c53c1c1aef8696f2f60231009669facfc4757ca1846b06ae217bad006d26fdbfcbd7a27ca297cd4cd8bf3a0e58f861a2dfc8d07c7ffa4a09c3724b770302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f560624df33477844f43f9451b633e6daa113cf54995a6ce115039e4a007dec65a3c744c086e9cb8521cb4c01adacd76023100b8563f1ab12855e0b3500e3096ac762880b27c6a28e0e0747c117be4c57e4884d90c3fe76e152f074e301aabd5356e030302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023038d7e9edebf9dd2ec1535c429c178d943a426538ceb884435aaca8b84121b2ce72bfc869b23f3e86ceb955266a89e1d00230517c2b1885128c95915eef6f32365d4198bd3c93af3574ad39b4242ad336aa3f50780fbf4709aa1df2dd51ae46d117870302047c435bb50067306502306896d127c3689105ead108b16bf42d675ae2272d0fc36fbac92bb28201778f70cd9a8cc3ac496381bbe28c89aeae681b023100be6c7ed0247b8945cf7ce6c7ac5a78d3c9240648bf71179f0b8298a9440a566aa88945adc4f6447992b2083350af65c00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d7e20c9e25650f4216c773a4e6691acfc86497ae3a593db172b6915a90291da1dac6aaf874cb77c4c05567137eabae5e023100d1e02b604604c3e5c777fcf97cb1b92cd588493619d4081cf8e453d3ee65d1dd99032ae346377d11be5464323c31cebe0302047c435bb500663064023012430944150dcf79a7175e8a212b6fc4bd867c5c9c284efd0a5a4ab8e06ba7f93cf1fc26f0beec752d09569fc42c89d30230139059cfcf879e6d044bd7ec682cf226afdf4d6c71867b45d3240ebd002ae54a3b60852ee4f41f3b648a0b77d7abec1d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023058ed09440ca8f951540b607e24a3a6c97877a73b6372af10a049ede2c51f298b290dcd1de7e4261458578d31170517bf023046c135f3bfdbc47d632513cb80ca4332d414d3311e35e8796e3fb116d615ba7b473d7d11de199244eb0508585b9490e50302047c435bb50066306402300d95156a3b21a50d8ae7047e60df8535cf88ed1e9a46e1c52c9f28339e361d7390cbbab47e703883d3163264026bd1c102305254e74ac8363223bba6256548f7878bc3460941b885ae012c8e2cd25a89aeb4bb37bb2297d8eb9052d2bb1fd28689cd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100fd8eb73ad605706ee9caa89448e52616ec6ae43aac5042d776b71ad78f3745069ed3abf63d8605661b5cdb4c1bc4a660023100ad05ad91e8cb4f5226db8f6d1a240f6d6cc6a4754f82a57e7ed9f2f158fdb273bdf1a8cc910be021a5380d6cee217bd60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230033dac4c66e8dfab9260758301a65600621ba5412e2d5d653d65df64fb9dc4dfd7744196998bcb660900530f985654e70230542c980ce1d41ecf52e9b9e1a9648a67b6c66421937da0aaaa9c0d7ba5989faa2e0234f96a9e827662000a72d115e4840302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100da0e3ea4faee6e2ffdbacbf9caad5f7885c5129892c4d5d384f2ded65f45b082b1a5c91198fd90f955a9351a7938434f023100dc33f6c8521d1cfd25175231aa810b4c32d50b45fd4c8edf0cc4f18f36fea3d29ff4f41d6578a770fceae9b4fd10ed320302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023014fce5467326762e8f4e6c2cfea67f574fe6bd397e5caa9bd490c2550c72ee91e50f59797dfcc3abb36ffb8551c8fa9c023100b79d7566064e384be3423b7a8e757f08ed836fd851ce4733a8641ec4676d0eaf4c1f8363ab65cbe4407e38c4262935830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304e7c111e86f49dddf2260e7aee644fa17a1d2079d905fa7b02e70529371dc9bfad67a16b2da4b7ad78b0b798aa0fd690023100dcc78b58c5a67a8685e57a081183e5894d3933082c7e232c0ee466599b98b07dc8ce66fffadde67cd6556170177c3fe10302047c435bb500673065023100fefd70af0e7ce96ce51222caecc600d0d764c65d1ab8493a842658f72353e19acc6a7da00bf2d967b7ec0f325dd2516502304c034a441506ef3d4fa064145e5db2b24799e29b5112b6be8b20b4eafad5f2986fea22e63b3693f7baf9e13dd35db6f00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304d2f95fe05bb4f67f5b977d8b8bec0623bd414b2f9859598eaeb3681011fe1a4ea402a770a4475228af5c86e22f5c3f3023079bb00e390a2bf6e3fcd283c05193e7de6f519cfa7c899a8d7cbfd73bc6e684321600ddea0a849347973d7b1cb8fedfb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a94651836c07f3a6599b1bc4fe1e2b70e44e363e030cfdd2458705123b79708fe6cd5ef0fc95819720340e494e7abb2c023100889c391e706f14557f65820fc5ce9ae1067cffe212c2e87c3e0b67473392fcc88c9db97be31b80461f0165d2da90c6c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023077b3099598a05e6b7c62d965948cb857886bc94d5f3f345e5cef4eb563903a0f877085268d1e63aefa056e8a0471aacb0231008a1fe84194199c6305651720b4cc69c955dd485d1f0fd5e55a008fd55d79c989a22cf7b5198ca953e4ef07debbbcdd920302047c435bb500673065023100b264d3bad4c77f27c7369ff4f6ab6709a3de99fef8c2c08f8dea005ec060ccaa4a2715bf8788e87574c8c334ecf6c774023039825289d3f44835311522a7a2d8d076be025b11d6202d6f8bc42cbb2eea0f7b3593a638e5f1f6ce36c3332f07844d080302047c435bb500673065023100ce7f05c6368917d23ddb93ab99196f812d65172831c92bee788828498d5ecf6710e6c364698460759b39910df433951702303e57cdf9ea468909c6de54ad93102bcf398351a78bf68c9dcadb9b23013848286a39b55f33799b89d41ce092e135b6230302047c435bb500683066023100bbf1d49306e49e5ed4227790b4d1d55fa6f8c094afe0165c8cea1dd2679a06241e123e6f579ee8c73cfc09a8cf1b428d023100cc06e20f1d47915d9c3b51d1a193e5e45a320f75e09b9428ef693f9ce793985aa345880be1b73e518e9ab5e78be14f020302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230785fbcde543c736f43bdfe0382fd457598d2cad72c8170cfded0ca3fbb4371d0f79d96fce0ee761c21128a152ee4d997023100caee2843c73c177af3f4c66f03baf99d8ec1854d6cc92755ea3c15394a6a535e5bf1725dcc3f52620af42962861468a60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dd60028d7c0f1bbc9755a3995c7f9969b3f72719350afe3ba94c23d8ef362cf4bfdf12e934bb7af8eeae82b8620addf50230793adc88923696392c06551bbdd98bb879b35fb8fb980861bf5df13508d70600d3a4457b8377ea2e1fde3978147094170302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304e5d466a06c349c10ac212f627195929851c20c7400fd4dff79ecdbed38cc7fd32f28ba4dbc22b88349dfca06417c8d1023100c61b32132ea127399300c5937b9a70bf4c0b70546abb2dbc49017ebae9701ef948ec8254d4b4fbe9eb19b9b2999ba2ac0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ab0d165685833dc3190a57001a39526261152250ebbccc3457e3de04aa1ee8f34e9b6e5bc98216e0b801d00a8fd77a5302307348bbec5b425e2a91380f0e46eee684c0a407f4a3ac5f9f78958fd5059ec9a24c9280f0baedd5f2d448ee04b089266a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023008e02bc3eb681dec1e3209d7cd5cd7779b54bddb7b767457de5433f303642f3c7628686ac3a3db87e0a7f10b513cdb68023029b99d12a08da44b5837b1eb5df8878fafec9fcdae56a7675319b99fbd3bc8eb340e70dc12f4d7d9c5f043bed4d74b680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a9e46cb5285f126b9bba0706447866ce92dd6ab484c9a79b563e29d39a7d80d71dee55494f189f7449851d4b5ac7ac8a02303fa052e195bf3a8a27938d461edba41e1138921e6627589840181f05dae1d75d9b85799efd1f86eb055a51b9e1ce17130302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bfcc9377971dfbd52e4dbdeac7de341313c296aba07b7a5c0fdf75164fb250120014f9b7a8a54765f533b4b45315cf180230732a066ca1c43f5a44c5d92e06acfb96f056738bcac98aff127578e731212e737c838b600cc06988917a4a8c0a43d5280302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230757aad7f53c09a8d57f6651c737f84fee27c95e6c7d6c6e891f0a8250a2cde53353aa5bd5b8aa0a124c768cecbc65615023021f32f5eedfd4f751d8f21e6bcb174637eeb7fe9823ddc98002158eb4fdef0b67433e9be3bceb99f85a1c0ed7e6f21340302047c435bb50066306402304ef8dca670fbb86d3a85d4dce94625d38314697f7593026f363e652f5dca1faab956c9bd2e8b2a37df103f7d465c74b2023043bfd1c16403f8fa98d928d7eb8840505582698543aa0889cb98992ee8db3d1c4b869da0f99267cc71331209df9050300302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302c43db75806d17c631e37d7864c4a843f02556a2936e953a3e8526ee1d54e17c6f2c68bb55703df99e13d7032b2cab51023100843c72d3d305b2b8400975308a0a99c92d2d1945b7d2380c5938a8d587e11e8d8de4788bc2e8261615c26ae60673a3bd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ded25a0aebb1e5e55f615f283652c2eea9ce130f1e572c164a308caf723b830da38da67a4e49e5a3beba93e57b97f41202305a671013894985b937fb0a3550455ab96501475f9e010c0cab63190f73d1dd9bc7b7e8f74a23a30b6f2b2db1a5d84ba10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b787b1b96d59df51f939d2cbe476a90cb8427117455293abc1595335e70f343f5f3299a9129679f633c2c522bad75cdf023064427fb9e3876457842b853365dbe7edc3c098847c9e23e315d11610751f2c53c4294982736ca359c3174b7a4272d21c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dfe7f6bf71178621b9e5e5ea41a5428182c82d5c4242b7f5ba06c3db6cf53f857b6f386420c9718240e4aafc3f4b77db023100f5e92e279da9dcbc7c4f7689f0c59f0d62d9b840c13f4266073cc24918f06102671393e5cb8d0359d10f20aac1dd07fc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302e7b8a64b61c88694725dea148a63d5885a2b20031ab84f41e7ee0aec0184c8a0bc4f7ec64f3d9b48671f52068427c82023008c38ff28ed620b7fe3df1d1ed244274ed7a279a536f9a4afa4cbeccee45344b2e2cf1bc468f07eb59d4edcd17c9799e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023042717b17108fb0f089b10dea7a06effefd558c7105ea725ad83ff53a6077d1219bb26222055a46122ad5194d189876af0230483491bfbbe42b281d5bd4b7834141df3af2f7747e1e5d90c3b0fdbaada89156f2904c66a29622b40fdd52e9fa6420b30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e0b416773e3b5e8ad72ded91946432bbbb9cc8b3da928ccb9b9b9abd7a4a099bd1a9a51fe608bbc2ac7bd3456ff3901402304bccbc727cad27b2434285d8acf63832060c108bc952e48f565c86317807f5f6dfd1f9b20fb1608a64455731d84e70be0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100974fc95f818ca7f7a4eade594ff60a817816358e091b2ed0af7348537a146e58c0cef1e32d4482f6ba37572998b0f26f023100e4401213d5d873351c8a8cce01b7bc67d216bea30aa33fc9dcf46808e15b1f93a71469062218f2828c3a2fe4ad9adbfd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e271d6c2937e15cff6bfac590c4a0c6555d5d34fd839a73747855f27fe1e165dd8fdd1bf7ca71102e8b7647460c76fd50230285468bf5b98a9692d96d0e46708320be84883e90d508b6fbd4b6778a05721c05ebf3410dae809ecc42701234a5464770302047c435bb50066306402303d205911d7f73848b3d4dab91c724a0d4fea3bcb3b1da3e229c5e26a8f4a4c592f3da9caeb215169e7273a99f31896f9023054b5fc3a89041308aafd2a047edd87c96f93ee7579d8c40a160a5b3cbd9008377c12183d3ab37a1e0f7e49cd982cd6560302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023078ecf094253f90071c1fb2ca0255ca12f8710c221bbf67a5b5e9b130c0d7251fe39163bfea17dd9b70ef11e02a7c8d5f023100b996c6f9763d95cfe7c9a97765043ccd9ba0ca51aa235e74681f1331c250d9805d078fb4a1fe567ef4662ede5797d19f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c373dfc5d8d2b1f13d157105dce7c9d9410735420c36ed3605bc98ba2ce06705e6d1b1389724ae92fb1fbc65d273e3680230695b2826dd34ee591d626401fe9065ba9b5d4118386cbdd2d0ceae84cab5526240c0ae25900c3e488b109ccdaf516e180302047c435bb500663064023045ce5dd6e898d01c2c4c62c7d5167d25a79d6a8b867e4ef26e0ca5230d8fe17f804b3766ed1cdf2fe3465bb557e7c2c802304d389300fe10e0ae07bba63019683b887ca40e177542befeb1d15a3c555811011294f300ac090ab0b4b109030c2ae9f00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023053cd5ce02373b884110be63551fd68455d0bb22650abd5bd1beb4eae9289dacfce520762e2d65fabb78520210e21f1f0023100b5579cdab51d063aff3932e0e782f619c4110ecdd2157cbcbb957aae9eaf2c311005f542590c0e9a4ad27e6b5bddcb680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f002d1ae5444168445fc4095816da806f0c0867a3a29f57c32fc49038ee4b6eee325b836235c0d508b6c6f48d966a56902306b2e1aa7c920ebcc0e981fdb48902e0794cd631944ad0be8a1c5686c9bfd3e8eab14f8ac5d09d4bc7c185109aff7def10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023018b896893f6321f3437e211b6051579945ea47b791a6659e647684d3369010ffaecf80574f7ebcca999e5005afbbabe402304c552d112eacc036380bf6eddfe349669628de5cd26b6746fabf69bbd7959f6b7063d1b239d593a5f9eb185b61f1ba4d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b092f61f0085b36e6b9eba02fa20b439d9c25c8b92a6083bcd4d0e2dea36723505c60bbaf5b8211121c5c6a76d5d55350230223a50dbe857d68bf53f020270434444458c49e9849f27b1d71a451460d26b0be726502009d5668b03618771dbef79580302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023075cfbb798c41400ba8dae084d83f2ded2b5b4d2ee90ac613bc45568d2add5954f856a0c3f76652d7e622af01f453ef9602304b2d6d7e51389988018df4b3d100b285eed940d16b995d94918454cd0d13470c2d4592c3982dff403cc6b1a97e8af3a10302047c435bb500673065023100d9e9d7c756a4c250db0f5e344c02e30734043778bc7ba2bbe2921e5608b487694c62e5af388886bf4b5840a9de55d66d02304329c67ed793138745c85705eb71ce6803c05bd2df959133b5345c4d8c9c1f93ffc7dd2a16f67366a969c8b4f291bf1d0302047c435bb50068306602310089bbac962e1c67fd9e1a928c7fc18b6b5a13a679b91433ac2007fe6cd4fa80980dd4f977886ce600a3fe9657f1e0a9ba023100fcd3b7179f8d0f6cc96d29f4f903abe95dcfed9d4425b21b5cf46d5a33bf2584884bd2f6136086f8e07d51c37d9aec9c0302047c435bb5006730650230763eb3b857ba947efc34c78562772445152b47ae3fc7d5c1de64d84522b5d5893c2b26d9f4d6be9dade7c11ea1f28b92023100cec05532e7100863e16c985af49589de1f073de72866ab76023a7433793b50290e48a9e868bf44f84d99a5430e7397260302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306e78f877a152bf75b0e219409b0622c57364b9a7ce2bcb125792116e91ab5d77b6616a7021d7cdb0a9852f08304990a70231009fbbd18f42589670769e905455511a1c90fba83e1fbb9fe881252ac4984a703e94f4b2b9fe885d613c69069ff436c65a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009d834f227719159ec6e98c8f6ad804527c35aeb885a363aa8447757ad93a43538f59001325223d9f62af91435821ef2802307fd8c1e50a63df4b442bb85c3a9ddd1ebb2dd17762b4dd4913631d06d38bb9baf319828fad0f921e09d6285bf52493970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f285faa5264127f825f82448845cbd2c03903fa0eedbc5f3b1aa2ec71c8b36ccb91af9ff555a9f6d20217622b6e8cd2e023100b85cf798d3b7cb5ddeae2bd0f766b0e9e84b0f7373f1ec865cc38e643d09d74d08dbd1908233bad8497295082d8c97e80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304625e93a1cf94424a2258dd4e21d7aca7f35b1e58abf8abff062103628bb2e48c5906c591bc7b5a4bed9d570453aae0a023100ded64a742e057b9db2811d63ec701fcaa906dbc5498c3aed60f0283e63cb7e52cebd38d0e0c1b1122c3c6198a00e48f70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023053ef5b5dbc80c11b23e88ee346041845be44e5c1536cf831a9f79407fc70ccab4a5d16aae326bb89fce748323b09c799023100a3b09156a8414567358adc7f136ab3c3d613ad481e4e41e1a173dd7c5a1c441ccbbe9b4309513eaf694ce8d3d0ec63c20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303f4d39d41a1538e92e211d32767fcdd0cbc8aa23cdc26f506f916c083077c641265401b5d4b31d31fdd5ebfff9e25c8902307e3527ec3a979794fa1a1eb5891fa1a13f1e079bb8dcb41512c9e2c9fbe6e3c3c295316cb73fd209b81e855e91ea46540302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f285faa5264127f825f82448845cbd2c03903fa0eedbc5f3b1aa2ec71c8b36ccb91af9ff555a9f6d20217622b6e8cd2e023100b85cf798d3b7cb5ddeae2bd0f766b0e9e84b0f7373f1ec865cc38e643d09d74d08dbd1908233bad8497295082d8c97e80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b106a1a2c75209e8d0a888b7689244e317bdfc6f634c744a2cff2f5dc5d0fed0d0c62df0a47eb37358218ce7ef0c3c2b023100dde452b14775ac81feaaf26f35af4b6f38a3450ee386151a5a2bbd9c9c925babc970b70df316fda45989f331541b60790302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023023e52c2a0ee3c81d6fa04321f2303184d571b5dee04068e54295e58de29182ae8ec8275c27dcea8d9ad07b81772760c3023100c2decf2241ff4f79bd6e1730024c94df5b1acba41794ab697affbd69dcad8b3785a57614cb07b65e41bd299cdeec2ce60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f285faa5264127f825f82448845cbd2c03903fa0eedbc5f3b1aa2ec71c8b36ccb91af9ff555a9f6d20217622b6e8cd2e023100b85cf798d3b7cb5ddeae2bd0f766b0e9e84b0f7373f1ec865cc38e643d09d74d08dbd1908233bad8497295082d8c97e80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306d69a83f4c84406ac52227b24a86ea3930c8741c728e9174637ff84b00600b848055dbac991721fb6da710c274b2918302306fafe1ce5e50b8e8557267a54372d5d8fefa3b18b457c020c43e57f726efdc6df39b1ef7869e21673650ca908da16c780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304b2b3abf61b37aff402e7af5c961303965c820a23a2636052355d2c131bc12749e0e3e2005016bf047f42a74790cfb320230196a462fbe13141fd8843cf2ea6b83fb3b29b1174d406b06ae4a2c5ab30f81900c2882cc45a40588c1e94717ce684ba40302047c435bb500673065023045990f35619f5199545ab3391fb3ae17b6d87dc030221fd6af8a05a994e3d88df6fb63c1df9d07b6090de8e3e1fbd98c023100c98401965b2ac934ff56b506273d653a94e9317252ef94fe41f0c3db878dd5e5b7a5ac9cffe1385df35695482fc93a9a0302047c435bb500673065023008d77f4bd6d7456618675c85caed0aa98117ec6d2a1e52591bcf3f092ec7d9cd11136df5fdfe1f324f52033f52caf692023100f95c2daba1512e0ece8e6ab4fd5089efa300fbd9d1ca3e60ddc50c0cf918dd2334fdbf8c40ab1b48a91138e30b5a7d640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230777335bd4c3d7430f356674d41465995c99b131525d6d8c4a6471d1b9359c55fab52b961af4e771f798339f77111360d023100b5b07dec5f68ad124153a6917d70f868a514a5802ea73015aca08f174f9a5e80b2b79fe13df8fd10c552f96b3b7e2c3a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307c0a877c45e1de8f1c73741d0cbc268e327c1f480bcd015bf1665d44e36a27a931cd98ea7d3ee6fcfc8b9feffc16e96a0230244e7f72ed5e6bfcf36f2fffb4de8ebdf27eedefa6c9d44592bd8888fabc65c7806682d29b8e9479e58edff1606e5cea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a18a193ac25fc29b0e38cad12d6bebb50efdbc03f6a527db5af1ea7fddd1ecc5eca2f59321dd1700118dcf314cd2399b02301c711d2a535ded8eb6b4dcce9b698cb7ddf087feff41070cce365c89c8ca1f9616cfaffe472e05019cc2f57a15827dcd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b41aee035ffbdd6f9d6786ddb1de83c820cf1c8684684e7e60dcbfc12e18f770f4f60d17c924e4b909b14a99fe1ba3a40231008a45c81f6792ddb0ce2adb02582a78a5adc9434196a60f7c8da19efdd51cba66638538fdfd66f57067f3e4a524b258f10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023007d30c84a6c81db1bc6c4e8bb5b32b340a66d279e7b4070609dba34501bd8622c9439a37e6d44c48a477c0033f25bef4023100e033734f5a856d35b90dc084813540e936be12cb36c1e02993d5fad361cc8a25cd1ecbdac5cc7a446d3e15e11ca8b3aa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307f8e47a85f64b794d295f4804103a1a0d1b9a13f51b9c93054a53beaf962da38d1ea5523808519a6d2c9cc55d7ed4625023100a7b09b9ac436e6936f3535a23fbd0f6f107133f55383e2f1f448ce88a8cf2e428823485480040bb1e84333b5a7db83970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305f428cda8ee4e91440175cced11f0fe07fc8f5b64425d307ad2b789ba06c11141a6885cfe6f161e3dd389d38ce1dd3ef023026c413542c013905fd471e86d35f0af8ec77519caf5fd14c4efe7f0c4808c3d1e98b26e14585ad86d0b5f18e4e0991830302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301758fe78946050632864b50c4889da45ab6075a307b252a97fb649fb1c815ba3b87036a5ec622fc0d3555d5230f13db70230378757507c8786fa2dd169fca732b06dd47f174397c34159ed49da03ff8e952f8cc1a98b03377c270c94989a7aba12060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305e5d03718610c0491d671ccd4e7a70428ba8fb49031a33211478bf75611feedba182e0e5afa75cf3f12c4e10fa0ca045023100f0c45c8ef8710d30f173419bbd4449aaa973186c78027e701e337ef0fd99afeebf138382882eb00a5735f4a95e3050c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023078c8e8abe89897d603290ff1d4b58784d99fcdcf3bac23c44bd000bce97774aa37fde5e7770e07ebf6be65e0794a137602301ee0f58662607b713210c3dc1b8790d7d528ca1dd43365d2a704f012f5360726d07cdb6d5604948afa0a47f688a8d5e20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ee5aff73542b580b72d9bb0cc9b91074138e76a81bd8a9ad060435edb9525e06da2fc58c7983534e65413b6625a8fd1802307995f7f932bff4cf7600aa0e781c62daa9b9daec341368079c13fe3ae7887ade01de4c1ee68c62b3d3b57c64cddbfebc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009054618b1f1ff481877a4b93d5657034bdb80ba47d942edceda35d69d07d15415963a77ec8ed5eb2c152ab5aa271443b023100fb6a7e633074890ff4445b077fc7a9976f1b9b432c20cd2d921a313c079a6383c3785dd70b7389a43057b48fd0aa79380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502303a84405f27a876e14979ff5ecda5142d288d2c67185c5863f77500723a28f8351bd99f095defdfc0851375efdcc92cde023100ae888087af221f48f140838e3df4b20dbc0c25a9e1d9a5f91c288b3bffa1a7ccba18cf61faffeca6461d749f5dd2e9440302047c435bb500673065023100d683c50d6833ee14842a72d0bccb71dec0d11d1061ceff3ad832213dd6d3a7ecf31e0aa6715f3817b2a3c3d9442c3d0902306f80ceeb76f7663f2f6e2e2c369c6a5f0640159cf0d1d1fe7387976e0a13fd3a7db48c94d24c03adac922deb6a51ab880302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b4be7b9cfe348110f601d4ec2c37044af5a035a45c26ac0fb8d0b64c86cb39ad2bb50f1a635eae25ab0b71deefdc1157023100cb676739eeca605be2c9bd222eea6913b85eacef47f52e9a9d73002b880c4767212e25647c2026288ba6e915641a23a60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dff32de096ae9dfbe29a7a01426e53230e3022a44dd3e7339f0179dde867329e5ee9bc08308e3b345182258a8bf6a7d8023012fae8aa42185cfeac5a1cfccdf1c1feab9d00e12152e19ee04cea2ffbcd49d6b5f5b8e10dd849989d1ac71969f0c9ce0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008c070041034df69d8770f0ee1dcca20e136c2b948d4da6ed4c2ab162ca9fa74a9fad3b68939130c641aa4a8a7f0666b9023046451e99ec00bc88975044e80427a6042c34f9fc1c05f00c59e8f24dcb26b65038e3629e97a969d1cb825a2366d62d9a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100effc1304cd782ff15401a6cac3dbf0bf499830646a5dbebd98b8184ecb4e0508036d1a64336f28a409cc939da2e648e4023100dd0454bf7578ef8b248783649a1b90f5a55e383988808401043277abd42bb4f5ae2bccfabda9432385c4d8153c6a62bf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100987de49a127cbe51f880bc9c1fde868364c41c8fb4fa69e60ee413bfb5601db677e04298156d14e9e89abbc441e977f00230015e2c411b2717cfeba36bb70e6b8cf4ee9b52d0ca6806a78a3b85e5decafcf7e7883ea22d0c2a31bc1840a3b2f7bcc40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502306d1a191e1ad675704f27593b132866597add6070b6dec8320f4752b5748171be80541b4c6bbc50323b41ee2ca6511722023100a6b8da2fd21c50873daf4e15124069b7d5bd445b80003f42fcb19281966161668f9e3e26ab4dd50ffe0614797a8e36f70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f383bb4bc46df5defccc40d5b3d4376bea606bb9f690743900ab65076ed6bfb6b6a9f4ed1da88a4ac1198b29fca4c76302305615610d45a545c31fa7332e469cecb06b42ba0fd568ddfedf58a4852ca265beff51f9527dfe378eb83cb49be19c94b80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100aff350f640470b9914e72fa152dcd0cd137d386b2dbf918c1fcc45d72ef7fc883bec6ba6f7aa7490c33382c017f87aa502307e87d3f08363dee129e36892d821c745139cdf38d35a181668effeea8955b5a47ef40735b12faf244bd9ee9ecc1825c50302047c435bb500673065023100eebe2ec328ff5a612940eda5dd7ae0107bf1f75e31ada24c00fd5f11fe3aaba01606b6f8b385c2f5c0553bb78cf1f5c10230557e75aaef44adda7c3bb8c18d0e72496fc3a7f2e704d909dade9b462bf3950bc25077e0851fce459b4226c6ae7c32fa0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303d777a5ee54f7bda63808f288ab6cde5c8e9b9d8c94b19243cd99d6ed30f55ee4241c8a024f5deda2f5302cd71c9c73702306a8c61df8a44da7149eedc1c3fc2c417c539b0b2ff1b86de38bcf0818c8ee5ff8d666762726a6dd38f91a66baa5546330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100c2edbfaaa7d3a5b88990ac447e986ec5b84b84176d9f8d73af65e19b4926b225b9eb9806e642e2482715195b9ad150580230453216e3cad48028486482d756decc7c93688aa5a379a663027386235203f881a1ef032231a8b88e69e819e6dc20d9520302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100bc8a83640ad0a8128d83a42b7ace3dfcfed54c454ef1126d271d6f92c09c1fd2d2bc89b0d778b0aa04fc4188de879f520230087c7d30a9bfb3ecc91ab59de578e688975ca0052481596ffe0b3d75a81ba3cc7779b9e414130fa84b8a8e894f8904b10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ffea88acdf4a51de0b622d029abda79ee26374b6e7c35eb9a80bfe6f5740f5b8dc83ea4c936f792b4bf10b7a39817c8d023100da9c5ccca988ff66c7edba574331ae9bc6a911ebc2acd75287bea88a231a6ab47bac0f33c010cab51dbfc09b3cbcdcff0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100eec85154306119b8848f1dd8353eba1d78a7de21c2a7d7391ef87dffb6d79d22774192d9bced67b04c877c1b7c442cf7023100f5dbfa22ee8e4db4d474dc94bb4067abd4f4fb2c5122c70fd5137afeb14feec1410f385018f066fb9cf794de379f15970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f507b14174cdf9970cf92b9fd3c6a99562ee58d122ef84b6ebef69a40a759957016379784dd0483337eb2258d1097315023100e00f43a506525434022d17a23edd52f5e770966166ad7f8f5b0fc0f2cb6043fcb47cff0da9ae5aa203f9c0ac866aed360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023021eee434e4fe56602283cd010e2534c029cd7667630a6a7e40d1c15ae1e082317336db1889270a690f156b81668b8b7102307a22a05cd897a8f1f60e063332c4a645ea4e941d027b33551d44d44037f5f8e1a868fa76835fe17ecc6ccea6cb43d6d90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a3562a8e5dbc62e33421ccf125f364047cd7aaf3d5026e270e52e77896667a614476e3a05f920dbca817373b2b431e36023100c14332e12ca9c57d815eb943c8f6f8a7c2d8d528eafb97ff548f13bdea14c84d730414f942c87d78a85be3a349cbcb700302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ad52612177b4d84fe904c1220a36046df86bb9a50b60888ce7cc21eb56429345529304931d06848565c58d3b43320b5202302ed84363de20a7e46163bc15fca118be6f27d0c84daed1f5d92753b041bc499d86091699feb03ef44610856f02b1d03e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f4c99d415af97234b7c066c2d172c09db0f2f89941b1f3d9ab16f03803394629bde946115f3be896744f29dcc53c5cc50230211f0cfecc5cef8da33eebf4a954fdbc01631dca1526d1e81360cf80ac78c359d6f5801df3e6da959a1bdcf750a4dd970302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304fb0ddb842eb8adb6f2a139e67340a3b31546d2cdb7c6c612909f3dbbe42f5cc08cd6046b1aab1afba8e3f7b473a253302303715591a6a1d8f89bfdbf1f2115139d62c98ca16313983a47c2deee47dd317be54087578b8a7eac253ea54069b7f89360302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a80f9e39cf6b25ee850dd803d0289a3778b7c1eede7b81ea92a07535dd62e88a137d0a1d5d00df4d51af30612a861ab102300d6535d1da7cbfd998c729ddfc5ef694d80d863eb25bdd8bf006741b65ac0b207774326e74b5f73defdd8ede7c7b108e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f9a73d1b98a851f961f16c28893b9a165cdd4f43bbb2c790fb85ca1cbef7769290b6eac1b1261af6f04683b229943290023100be424e0527c9893c59c0834645fd9de87b97f5bacfe5f5c87a52bb59563bafbe0f8b5ac2561b762bd307fc44fd4e67870302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231008fab56155de8c764a6967431877dd44ee710cf3bb4aa50af841f561c4dbe26b982abc997dd45eabed982b4b56fdb62e9023100e92e32431b44980244cb7fe0a52c2fdebf90915259f3f04acceea4ede99b80fe7f560192b755c5a77e17e9940eeb1d3f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100a529a627b618b4ea46c5c683ef6a7394c37eb6b32e968dd1ed27a68acd9ee63c89b66092e905f3fb269535d320d3ad1202302265d810b3e16e416c4b125fc4b2f14cdd7e7ddc8364ab67544d8eb6ba9e005e2276680bc64d7c84e41a971e0eab88f40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310084e8e3524ffb7b043115c7073851fb3d16c7f37cdc5cc3f2d82200145edc26d16f212e64f60a59d0cb289bdb8b3a6b02023100fc9e51a96ff11b0bc5ad5717f9a0b640c917b67e5a5266dd33c787824aed050eb8c973418276589a2471b4ccf983759c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300f2a04c60d031d0ba0a094e0abbaf4a2525a9f0ec3865fd6b4b0f4da4157717eaf6d3cefb9ed095a6d024436809aa4c902310095c6ef58390b31b0328c3361abf3fccd4f584eb695315beb25e0187aad038eaa530120c577ffcd7d19c523e5a805dff40302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023053626bccae11be260f5b4727f3f1d6f99c44f344e69c21617e63610785d0c3004048bf1905cd066436008ccac8fa3862023100f7a1de9cb5f343aa2c7d7f9601ef1d95652a12adb984821b52d2cbe4fc2fb827f0278d4898a81c5f6ecc341f636dbe3c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300cbb0d92b499260fd8fdd40e18e9d0c70497e0ccbcc3549931f6a82dffdfde1df2939044ea9f49187c515fabdb84fc3802305d484e5c6a9008da15ba34ad9df50e542642f580ad0d61236cd8cb970bb2b96e1e66dbacce3d66f5ed55d158d26bb5730302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306971b9285f219a1bade206c8613cf6acbdfc4c70d5ff286f17012069e07b34dcaf1fbf883e8fa92264c057ce942d2467023053f06c3fe34a13ebd4c7bf94816952603d9e489fa985afb7e35ed52220da1b2d2c140004ac4d0c93e36ed62765a237090302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023016c7f14419c277bba3810ffed3b19cf410cb263bd56655e6ec5fac848a2c1cef63f4a8df1efd7ce5d2bde6cefca23d8e023100883a4d6072266c48d8c6fdd5996f884571f52d7834d3c5b9dc2955b0a0a540ef787f85d76f80cc5ed8eb109edc090e510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307754147252f8c842c958352cd8ba66c6393c39049174c2433b23f58f00c3d7b4442d345bcf9adfdbee18ad949ca49d9302303ee8aa08a33d8f916239faf806ca1e8ffb21b737dbedf3d0d937d5865746f15ca5d69c6d1030540554cda4ce3edfca3d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402302fd3ade122521a872fbbe51baffcc4ec5b4c83d2280355b7ffcfb660a3e59e1571f5939f29cfbf9098b66961722209be02307c7899242be5a1d496fcea6effc84008d962a0a14289b121abf23c3c5bd2fdfc1946995fefebede1fbe239fad82991350302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310086220eda1ec68bce012a4a40faf6ff58f78c79ed47e58ca5248b42b4d215fba7b278059819b430296a0482673360950a023100e497dc27642c945eb2018778dacbb4a0eee614bd469bb6d15ae86e062cba68091c9a6a697f325f394a1a4ca0ed66037b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023005bd8131645447628ba90cee77e5bce6e26cc94b70d4942d637074525552a596ff2bc691319d7b8b0e0412507f23507d023100f1916be778ff775b1db05aca4ebf1ef73d255cd1a9f2102b6f81d543ea8fdd38af089cfae7e02b3117af08b5896815d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231008f482c9c9397018be1a9ac7629069e6877a1f0111f754ceef8cb60fd02836eac9c7f62a183a31c7e0a67f57d071fd8f302303229a41391585af0f63dbcbb9f55d9c9e3ea12711afd767f138e07d573ec6712f1dbeb746c2887e7d0c8d429820ef0e70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a03d542cb4606a645120dc71d2aa9e96d0d8902037038ec792a0eb76301c7f12f8f589ad8e95b9d039fca5c8cd2dcbdb023100ff46463892408a9823cf8f2c97b7d67f9a534f1cbad73dbb709e48558a96d7a933d0f5a1cbdf5ed49ae7c01d9d67818b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230230ab06ca855657addd45548168ac09788dd61ceb568b9b73723a3de1f5f03625a1b40564296c221af3dc88a3ee5877b023100a36af906acf07f0518330ae0f4c21ce8f17ae4669ca5e73a1f97ed7681e77dca046dd40085bb1b45a83e0bc2500fa7470302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305202224ed65e7dcf1b00ea09d9259a54bd6438aa5a3f00deb7e038128f638f022f51b6694e7c4901ccd13828530f40eb023100aebdc729c42dd457fcac486862a0d0c487ad634886c6a4d8ac649602c5ca01199ef7bec2f614512971c3508cf940a26d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d217d24be16a75de6f5686db2c818d5fc7655f3777a3888700b344f4d6172e76011ad73d391ec84bc80b4e130bdfac0802303a6ad6531b2cbda1fd82d452542368e6c9ac61ce629abbb7a2a2a7f8d7336407aca6070f85d5bd647e4a85c23de642430302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023018c608ec6d2197e0f80becf3beceb75ba7d886ca02bffaa574b948a6ea28c3ae1592575005d8c1859fb7458fbaff3c5f02300cc01a53d0bb46a9b6674159d85588fe27ec36ece5e6834e37820d71ba8bd940f99aa33fe75ac76678950b9350ba139d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50068306602310094923086657ab8994ec75bbd7ece2aa0b93d06c3896688b5d18486dd951180206dafb9718ad7ec182bcf849fc3984b07023100da772cbabd868002333bbe2808109e5ef6b96346994b0393a4da1d859a9ad99b5625e378d3186fb8c154f6b3631568380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304d824a2becafc70afedf34d3da99d2bc8735a2bceb46d5ab2ee03ef1334c7231aa746f803943c43e80461ee0589582d2023100a0e756d3f272777586429fd7de33db11aa1fed787248ecea6e0d12cb646d635b09e7fa8fca93ca9a832ad4a696beddb20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a8a46a7d1a11134ddf890893fff6365fdc40050adbf7e0c29e511e359cc148a3e53ed669c7b00fc1e8cb666906ccb7b7023100c8a65a7330e32ab8b536884b78da1086af17987566ff1b98adf9f0bd99babc1bb77e33b56bb8ab73fd1c950dac62ba630302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006630640230323a1080f98188739833971eb536540c9ec0b635c9cc8173fadcc4fb0b53004cdf8bba1015d063fba8276e477450b9d7023060b1fb06936aa58e58f6548624553d8390d0b7b2f3d22b8e49d42e2b943205e3aff785f9eef7e334a2d90bb04c4568ca0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301cbd3d1550bc5fc94eae0b8571847b9a565c941f2a59526e89214c309920481bce0ef131abbbb384e61f9f793fc61c820230255bfd4a66b56eae7e58415cd8880d9e7d65f6efdb4e84e355a8db535bfd6cdc9cfdfe1c43df820e96c184d97bcde2ab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a7c0f52883c99d721cf4335fe73f6baccc72dbd7175ab8b578e9c220ab8090783987ddc01d43f71820c115f8b9a8ba5b023100c96ef7297ae53cf54d80428b1531ff7d5cddc22e34effbb5db246bd6e67d050bac35183070f770d81f353cca840b06bc0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307a68c771b521226899487769c2bb8ec41cc9345dc0d949b38ffa7be0cbd19cd9b6717c6f5b2d813c5824a41d5cf0448c0230122ddad961b26a49dda593999cbba4d1cd40af4e9fe6b29ef1ef38b150fed360dc3fbfa764bb6fa2bfb1ed3e916ddcfb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306a865b0e020f6323088107b620894ef67e0019245f206e1dd7f943b056f3fee22cb2e116397d0171c41a977ae6a6ecc8023004c4a0e34afeb162f12052894ed2ab3600b0d07bcea7240116e18b99cf89438169ca8a9b2b2aec6d2021833aad4dbdf50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100f935de0de16a1f811ad9813ada82317eb326e98fc6a1dadbd05634456fee7633d1b0ee8a812eea587b0e9fa80f24000b023100b404f8e73e442589de28f2077d1f55b4d7081e4b4ac6edceb78c1eb61326fdbd25cf4160503a178fd835dcd80dc41e990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301dda5ac71b71faf680324f69c8c9179f7a1000fbaedc55601c5a3732e5f6346b93112472c4878fcdf7fe9fede0909db802307a9f08bc2531890fe5495b701891885600b0a91fff70397c564af388333d93c91b8778ebe284ecbdaceb24de821e6d510302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023056dff7013c1cdbf0fcd194f530856f01b6c7a779507a7c90f22930598429e09880e68ce0c345ddf8ab6f202b9384495702300faa3db8aa32e66b06354e154d7d907a2e310a904e9b032b6f931d30b0d927f3189909d0e20297af24976df618447cf50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100d85cc4730f07a276893458e51b416d60c8a17c8c8190ca1cb133a89da17ec425b2f09ca3a9a796705172749256943e070231008a5005ba326c298f84aa4da424e75b169303a1847d2d0f43a3e255c7cd3ec5ac9e5ca3830c1082f6addcb50c9c2cf86b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301a1f5dfae403a9add15719514bcf87897b9f974f0ec263cc800a7f562b1c6fa47a0ab5ac193f4a47d8e018d82fe7720e02304f25641df8fa54e2a5b1b21d7f236564eea8246fd2f12ad48a1ddd6e7d71fb47cc08e8581a901858396f2f6aa15bced80302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402303e33adf22c46b5d5661e6ac2d81c2ad4b72e0c02e3ec7c47ce72396afb793e75a51e1fabc0c59de5a7bbdbe38a2827ae0230615f584f26893604a3988d46f0e54d9c78cff067bc1eec2acb5ec8f1a97eb35421873f1aaa6e3481ad6819670a5520b70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ae2f735dd77e68e4ac05ff0d40e142a7e30c7ded7d7ce466b9137ed8de0bd609cfbfb929cdd7cd7dcf78b92309f602a8023100d581b0787f85935baf30bac439316b03350aadbd5e651bd534ea2c51707713cc74a56072ba27600eccce9bc35c565ea70302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cf732ef2a39bcefb3fe568ced37857420e04f2821568846ac965f0555a3a9a8a9db5c42c720dfb4a9a0648195f0e2f4302306f46aeca45eca352f1e5b65b01798247f42eca85b0039f41017f2f3b4a76811270bad304b2837e811feeaccee681d0380302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023027df2824fcef6eeb91f0e2d07bead12dc999d36fe2350eea2445cd6d5b71edd24e88cb88f6db792d7c8f3b4860e2e122023067172ab9b233712c95245919c98a17f73f7bda473cdabb8f0a3164b7116303ab04ea59b7f00fd26404daa76f519f04640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023022123456d05b6e6a527e2c7cb0b46f38eee5a49b4d7d151768ac24244530b89377035e932cfd12946c75ec1756dee524023100c5ee3bc2357f45d09c8d410307903ac6ee74e6cffeae6b11d81172d6eb645ebddbd151456399d713e52ad1cf688b3d6c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100e6c4343169723a5c36ae7189dcc8ba06ddd21c035ffc5ab78a8d0e0f223ebe49ab931de4d9d64870b33fedd2809bd1cc023100e9079948b08127fc2b83b0c677496cded211b94cb24c2b0d1eadf924c9abc5801f19979572a84c2f08f20137643ccbb30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a4d5ba0235f006e8313f50529829ea29f8cfdd71f9cea7e6ebcdb018bb0255665bcfb704b5bc57d955ea4c7b236315d002310084c7a4faf6eecdc0850a3a3815ebbb73b643ef81728eb2a8620b6a2eaacd9b34cdc7ca98c88a9dbb3f01e820d2a8f6c90302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230659ca9f83d75e530061f12898db546952ad765035678618912de4a6533f93c6f436e7d901df0a7601188cb9f1c68ac55023100bcb7845ecff63c95bf2ef22d21d07bf33fab989368de73ae8d8a900c4e379d37a3fa6c17ba43d346bc7ef15b67f1bebb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100bc94aa1b7d202eb4e9533bde42ec5e2bf7129bb27f0a023f2203fe1a3009aebf2392e806c6ee0fd0ac088cc4c0b9b2c60231009e1df93abe70e06ab59ce409c9db2c2e96d456a3c2b67cd213342ce4dc201a97a0a4e68f84721c7f47fad9086b324fe50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100822c581e8c519106845f234c1115c75017831e666ec50c09dfdb99a7be42cacd725f528d1035e64c964fa12aaf28f2c2023100ec6355c44c61526d69b268b30031e4dec0288c27aae9abde622e5cfb718884807e541e48d85bde6e3b17afa0de0de5110302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300900965366eeb4200265557f8cbee3b10faf987dc523a83d394ef42a351e1597fbe3a864c684b86b3718effdd58133fb02307bc215c859aeba9a11d8b0911d11a443cf11d7813b4c3a4ed91a598c593087f9492b9278baa3975993c21a84ab9557690302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009343eb7e9340d859a3750c63943d42b4d9cb3c71abdc889aaed92855f692869724c607e7c683b5403bf295534fd51ee10230612ed69c698aa5bee19a636078701ebb777de30305e4ebdda685f6400e3894b16c387919653727a0c5b077ed67bc8e220302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100e67eb24ca352cefcab868bfcf7b204e9c53ac551efef04bb240d5de38a92b7642afba7300b621ddbd04d473ef469f22f02306f5a2340996bc5a5fa552c28837eec425f9c1908e0200cb5b7f35244e7763586cbf413a06cdef0a5484bac56a7d3dc330302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100ee78737ca7743872725f971194cf57cb8d9ded53d301b97312a231cb1ff9156c22a1449a1f3baaef25ad9c348ad39e9a023100ac29817caa37cd81d54adebb0054bbf232d2b36bae0a9db2e28e1ebdc0196ca14a25d55a699e4c88844fa681329ffd5e0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b1b23809b9113ce8b8eedb5f9f784395806906e20f3b5b8d5d787deb36e442dbfc79523d4926c1e82bc959de1fb61e1e02304f575be7b27d8f8354ebe225572e1c99d1d10d590425c9d33765f3c0020bf1f66d8ca570eba47b406e051965d502f2150302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402306cd59796b350875aed0d855beb11c2f955ab2a93b834bf4a185e5a0c5f6d4a7c86569b3d0a3d320fad9e9a4948b4f22002302270e5ea4a7978b9c461d2451e2637a767e4c796969d8dd7149d2978e0b147f4d6e3a18264a8fff96f8f67732b5570710302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023017da1fb7fbef4a9aa918dcffe09e94235d2737e2aa9798ec49ae12f11f61a92543d7c8822c1ddcbcefcd3f00dde1cc5b02302fb0ebb936b009320f5d90a5c2df97b088d79138e27907c3f9e877eb94fbafde9a5d1083f27db0d5b510c319292fe4d60302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310084618c7ea3ebca47839106ae005eb8564342ea4c4a33b9d08c8ebf79b67cad23d85753142634467a97908e1d3ad98701023005b2564fa4a5641b45e2544fef628625e78db1ba1c4b32e74fa28fe68922a1e18fb92871d0754ccd9579a960e4523cb00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301bcd05c500a7d5f4ffceb4b095000225e6e1a8d616eead5c441ab0cd424c2eb310f58ebb5a47b5fdd4cfefa9457d355c023100c132054223c042cb227aac42c3638d9640c5926d07d1d2d4ecd3900bac0ab358b467a02a96c848af7f805a8ab1eeeb890302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230170bd16b0f7c24512e30aab96965056ba57da0aa9a4875eba432d985ab9eb728fb0414f22464e9de27e8dd51aaa2921f023100e2b6e0434985e662cadc7b70b3c2c945affd3a1563cb790ff3bba8203dce5116ede0ee51dd75d1e53f3cac60784f7b4a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502310099acdc406e97681ab3247936ac8fe5c9b9de92e136d336f0523557778a6d41c76249cf39a984b771490906219ae16b7e02304d3f02cc4f2ff632c82fce2576a421f195e3c8155aad51aa1c192be707b0410074d0ba39a79dcbbe2f186f6e2a2299460302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023014062a59ecff4febf235dddf67de269d369e677e20ba5a411498b39f7b5d7c7d89c35bad41739f95a9671ede0d65d82602301d4a008c423a447ff04248579cfe89a8c5ff13c362e5b988ce5e050cefdf5dc7244dcaf0b1f684e9ddb33ad4186979e30302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009cd356c5ffb30f248e5c5bbd0cc70df4a551981e2f283aacdb2be7329e00fe89eea376b5ae77a0bf92f45caccc4253b602310092a8102d035ac6f9b746b3ef595736ab51474f261849a8c8d9e4e5f4951283cf835f0339ad791f4cea554f2bb4daa0bb0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301ff2fceb95afee870ddb550da9ed1efd27f9321ddcf88d28e3c5c128d16e745066cccc2937e6ebde246fe914ff02add3023100b882d18ce57722d7798dc4d75c31c8321eb3be41d08b1f9d19d1b7a2e330a992fbf25432be42a9490c9ebd968cd9a11d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023069100f27db9f9b8810708d7a6720782244571f77ba37b382427a782d1b3e31e93553245ce428ef6eda00824137447e2502305c2bc3b2097143a4fc9b9aef0711cffa91ae04714598e2d419582dc55976feeb5f6fa20e4d64ee3c1045aecc2c39b35f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023016e70398a94758a80e6f5cf416745ac288b4c868c749e1441033a2ae4638d298d03267aa92f593dd436cb600c6f758d1023100deadd8bcf5dc66d7a1260f664a4954e67fb06e55a8b56a506044b17e9a241a8a6cda2568672ba77d488f457b8ce41f190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302bad12f54b436396a0c1e4ae41c3d1e295d7f5d529072829e7715972a799f3f35dc8c6c0a5c2ad4daf5f2aeb23e6a6fe023100e71076369b21c9f780fb3dd4a4e882a80326e8ddbf40c92be7fb434214acdda27c4d66a3954a601df60a89c76cba2ccf0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023052710879afb1933bba618d2268e2e5cf5688ed1384b73cb00ecb2323c8811fb50ce298ce4c3ce8d2942ceef59340b3c40231008641657424d4993bf1544764e1cd2833b1b841a66a366b57064c5ac72508cff8da8ed36aff2333790bc9299ed6e792960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009505fe5dd62cd4f889789592e72c4c58753efa270f2ddc50c0669690abbfbd13e3ddd08f958cb6d4c6b944a48513af96023100aadf35a849579404f4c9742dec212b0ebdf0f8837230c73ac13817f1a0ba5bdeb767ed0d9109ed59f55722777ef95f920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301f019db6007cc4b2183b992e44ea42aaf4ad6d47624b0f39e8147b274ab9dd7553027b06a4708947039ed067459fb341023100d731689650b7140d057c733190010ddb9550b89e13d64ab9332efa9774a2e60074e8e0410b779311bdf6a18b06f7c6ab0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502300e4d92b4e051fbede33d6d989f903f779ff1e7779e14431bf449b9322e6414ee7b0490e3c2b3ad3754e43c089029aa15023100c27d64ad5fbda95dbcbd19adeadc62db68d3b604a6597da3c6e29d1e76d2748bc437365cada8136d92592a38dfac75100302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502301a17b9724b7ff7f567b7d6f70cdb28198a85b9216fd4745cb6296b081f5f42fc284eb42a7eb7f84a02ccb245c9781a78023100f79572af69c8d4aa638918bc26df8ebf592f271864b0bac112f88de9f908eb44d3aa1a31c85fb8777d49dc8c28fb5d780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100faa85dd96530e3f905f59c547f19fe96c9dfcce984f031cbfe3e84c4e61e251d3a1b610836cf1630cf7dcad897292094023021854ea54d5ce3ad3c8901be8692ae636fa756c70ccad7f170603c77969f668a846b49b8c721172897912bb91eb650680302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402300e5261d37d84c75aaa7b4ac588c82dfbb34900429923c7467cc5fc008b8f74928b622e808dfbc206fcd3a71e7267f33802306a3273cd29e35c73a2237363684c3e6c2151f43138f71fd82e0859a8692974aa982fdc817b86b4b8f353d86f421dd1e00302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502302bdb0a1f9ef174b558ee9646316a61b7b6957cc1b169f8d41f4f7a25427eea4648cd1f3ea66cad991ac7ee53ededb0d502310086bcd7a5bfa3aa3906ad99508a7c96299fd69257acc18d642cab9d3e667cc11ba0a6e79af263669034fb2814385b0e920302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006830660231009d3f685593334cdcf18a6c798e650ae813fb547d744260af168845f9af1cda52036a03f5fb9357297e7c15ea3e193a0c023100d1a89b7bf0c6af695574e4908f16c20c7631c0fdefc87aa4615e3467bcd1e1e8610ca151d36413a974e2b54dd715bb780302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023060628af2effbef2bc34a57b9d2e55402a7acba796b5561aea4038640d42797346ce9e5fc9a5d9e7cf1574e218eac33bb02306238b69cbde575386151c5f7e575224ea9669f40e6534e8dde9a4b6cd3dac3313443cab79336da16e4e00ea2a25f39040302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023040df51921b24c0b09a83a299bd2fe2c1a9e0125ed16431207b3b1844a20ba654e079a846b7d1886823839f5b2d2e29df02310098e2be71002f559bd5c94fbd2da382cac8faee9ec74a4ba7f4115a92d490c3ce8f8aa389ee69ce1c3c9179ee3a965ab50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d2fc54d1fdfe2f92bab61f5b79538df729d9512fd2b093d4f56203d13bcc385cece50690f27fa2f77523f1f93d7218e302306201e13ec28d644e44a17dd25f7c0e6bef3309638ae908d92141a010e0048340c6a0f654985e8135d106b0d1f48c1e7c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100999618b5f8b97d3447e1966b3f2ed0b138930d0097b4c4cf8af1114b4dc6b09025ae436860642272c1ad4250e4f41815023100d3522b19a15a5c58d5b6d429071209383c8ec978034dc67df3c7092c7f1f116056df13661bf85fa4c61fba5498c593a50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304351c356a7c277dbc4060cfba35f6bc1013d2239a39c14d841efee4e2db3d3c80a3475964f3c61944065a964d3ddd0c302300d8648cb4543fdd0f3a1240b15de1c6776eeb897941ab33aa72e3c5528e9aa7e0775f6826e499d4809cfb3878bf7966f0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023024277b8aad076dd22ad6ecdbd4466db30ef2af2d3a389bc2af946e2782e552c7d839d80409e51d56ccfa64249234a5b3023100ca45b5790b3863adb84ec672298c974405b86820b706967025af580cee19688a116c90ec5ce604fe5e9cac94cfc1cb260302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f4bf68ef5cf54624554c8f24904037fc664ac7de284e4669a5da959acbf387a6169d90a28e4e531d4785fe92525a39bc0230339ec095323c655191d56ae2a8d12538cde6a6f30f0bf30f8f6136ae825dd209edccb1320d6f307a887ecbff6e75f9dd0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500663064023016b8a0dc0bfdd147206a7c9d7e372a6f778d77f85c7339df0f5c95b8d9a30113b5317cc7bca0c857cd61eef93022fa63023072e5c2e2f86befb2e490ffee8c9353bb022fd2e109a42743fe887922d39f227a30641aa1363e135a01dbb77a5d79fb190302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b751f8dd2681bdf944a70e046ba4b27562b4ce84b6a26d9544f479a4d0c6c4ca10ec7b8e6c0a2d789f250823682afecf023100ddaa7de24781024cade9dc2e5b26fd08f2e938cf3397dca6d865f5f9f335235d0e41fd9b760692e3e3f8019b795537a20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402305c884b6572e973cba7bae0bfb3cd7f2700c8b74e6f796035290571973c28c01ec3899f822a672d19c0018769c5e8694702305ca285fbe271a4aadec8f569fb8e85d9881df564e96b61dec6bcf3a625526b5c291146141a4b580fc1204580974bbe2c0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502304fc178e4e3bb9b0b12a969bc8dfc30f38d2734d90888099e0767d187ac3550a17705f3022bb040659c51fc82a5aebd09023100fb952b58937f00be456fee37683ed8748aff78601b02b516abfec2d67c576063fe669b4d10e740a9e23aa56627c2a5c50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100b994b24b806d8281484d44d92f242741ef0a3f6a429af85da1839a1d29ac60ea0effebf6cce514b87434356264469d7402306a45297455b75788e2fc3f1a706295f0d3f4da516bf413a2d03f3ba27e3da8006ddd12862b09405e91c21c5de1e1084a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100ad752c502743f03dc6fc34f74ad275ad1b858725c435c79ced0662694e3b8426e40dad28ec8f3fa43879e8b45695b172023079df466dea8559365907f339e7f60fa60a113975604b696a9f12adfbcbdd9eb1f5d7a0abbf70e86f3fada9c5161d642b0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650231009e80b10a9a31e7079519c25f4004b88ef0aad0ba30cb9f5068d33af87ae134e890b208046cc0a5aae0161f68b2907e5b02303f837f521346ad88aa17c9c6e9cedfa85adb5657dcfd08b175a73fc8a4fe22ab1aa6d79bd86c26652fde13fd4af495570302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230112ff2738f0732396dc7dd585db64199d38c91ea459d3c671e5283be6c742d69f7c19ea20b53b8d7728f8eb2712c266f023100bc455b6e83c75ec317f34269d7888f669f180c61ccf1a9352bf048badae3171d3b5f16520eb8d55dcd69208b0ed226640302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230437379910bf9d590faaa61a228b55d045f693e8827f1a03ca93d4b060d480e493d89f0550a28f1a2f361c9feceebed5d023100f2bdd31b8264c043028576f7b33d0adf47d39f1f033159cc1377dd15d5f2cbf8d3272d7ac896811a9f994edc0be3dbf10302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100dfa764b16d33c568c44fead09b2fdb23eda0690405df36b82d16c9b30cccaacb077093d32a556882c385fdb0d1a03258023100ef5b2440b0b99d846bac6349bec97ee9507f85e54c99d0e02b9741286c14982627af1a76e745f3f3653e62ee894897ea0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230708328a8194428f0d690859ea744d8ff0cb97b536726c5080c7b1808755691750c281b303955af9155c9ecaa58cf14e4023100d90667102976b36de2acf5c717fb919c8331f536def63200947a6a5c3963b3074a90641f86efb2435b90760a7daca4df0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100dbffd6aa2dd4d99ef8f3cf6131feb43e7e70096315521db29e528c8132b3ff8b98c834587088fa893947f41c335b92a002306ec327ab3a323e5957f18760aaccd2583bba14e2fd1031e9ba615f3e4b851c7746f76ea0543b18235faa1c215a1bb7d20302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500683066023100b648309be298f2ab48d2e252f330911d118fa9577d3829b31b4e9c3e7ec3c5521f63f45f4b93fd674283f6d7891f4080023100e26d149dd09d305dce1dd306f2e2149c9012f6b2060ddf806ba6dfe7e5ef9690ea349e3dad421102df12cbaf918ee0060302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d2858c412809935308b42890c9457e899a387b0a13c272527864e20a641bb0af5ced973ea4ffed271d6b3ab469410cee02307796e431c38b42ba87c9edaf4d9756a8b85b2a30b24ca65e8554170fd2606935122e14a3698e67c7b0e881be9d5daf610302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402304483ac003456cf81610464175c72535bc208706317e1d082c145a7dda967e0cd64d441ab5778dd9444cc443341ce1ee602307d96d6a051f94ecf2d5e161fd5fb749aba467c2d3992de7c4a692c4e99571d58ed584f1e70be680e13de6e2d3c87773d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230252a4635d5964e2953a54e13d0c4f3eb951759416f65eb91397d7a60dfbe1e6227c2a7f127ade2dfaa1f760680c4eecb0231008ffe90380fb284f91fd0b5ae2ee074eb62ce66c189c739ec822f8ef0959cab4a41272ae26c72eaaaad9c601f12aa13630302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402301aac5e6dd58141ec6ff5d062252309f228af4a701214c8633667f0602b5d2ec57d6613512b6adb4fa14ab86eaa538f6f02300b6f516f8b66fd5c16bcbc12133d386e941493153ee2e9295111dabd027bdb0276c436871e635a6613d16814f729ee670302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100f8f44b5d5ffc7b48dbcd1bf2819a8bffb35884f99fd88b7cdb05b112751c431eadbf5476a41201e3585b40ff7bab5a7f0230303fffaa8eda5c45f04e96c2868c48aec1066c577cab9726769f28a125fe5fec82452d45d3e91648c613f17c3c9a09d50302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307696dc7f97ebe5350a4dceb4b4571bbd47f1c4a39ba6c7902a3f30769a91cd0d44e0254807f1e2672abc2b40d70c5b4d0231009203b69ffcf20137e305e85e3c9c9a3dc56ef0d4ccc00f68dcabceaf3de9b81a20352cc44350bc4b82e3c14e3ef7b12d0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb5006730650230798964c4f85467a5c285a3e140711c740131b03fab5921cf50556687c40bfd62a98b5cf19b2bc467e13de2b89fb3c489023100ae5ac2a5b4f05a1357520846ae0f50b4f48162dfabdc1c2958053766e9ca401142182d3e5a023f6b51ddce12147b96990302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100d62ca0539be35518e23a120ed9f8d79902b366b58cb6d06920b2941174cd6f45f7354cfc5b1fb50bb5c868c3b7b4cc3502307e4da9e237faf7dc78ba56f4e822777d97cebcd72efe473c7e399e808535469c47a25e7fdc305c111de274253bcd555a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502307f6751b49f0c0d960a91cf3181e90cbb6da18c0bde476f5dcbdeeb8ef74b8504df854575f4ff51337ba05ecc7408c7cf023100bb0aef42cb48aa874dd0c05e3842768f961071c8c64563234426ed805ba4a6871a7d621fce025a7a278f5c1fdc347a320302047c435bb50067306502302db806d36c6235bb9d365de51f7fdcde04f6237d8b23f250465ceeda62060dfd09aa983c106f7b16ce0c23a2d30613a4023100c52c3f0e780a808953cf5d7bb91885f9d4a43cc953136d0c82eff46b498c8574230f4b3166c930a50906b6de6af1ba3a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50066306402307b95427bf13b6d36f96dd7367b2371202bae713c7dd07a62569d46751ad3446e5c9ccd9728820ff61662f4a2f49c103d023049deefdd4bc8fae2c3b8c07c827f6f065a1b01a2607981d09a0e63798b5c0fbc1df9d57c1c925728dadebed2c75aaf6a0302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb50067306502305166ea27d6cd42946612acca5f3cfb52eeab6d9511fcd6e62db9082ac2496f1bea3e3c311aeff240473653feac6f3d0b023100da1434e36bca85df3bec621ef7b9ef317511a01471528cd15fb8b9ce6678ef1217a86ce30921c2675453829cba75bbe00302047c435bb50067306502304feb332b0e14026849ce25d72e6708e93473d7d838382bf2298af1e47b6eaf34d882e0a31a944c21ba93b4819f33a89d023100aee518ffe80745bfec1131232721a1a1633ee2b5e8070bcb026450b6340b4c0e05fd0011e8423561eb94acccaf5214960302047c435bb500683066023100a50e898153c45e67db4643bf9bbef1dbece0c20cb952d45f6b0f9761e53cd779f2e4e63d3e8f9368afb9ef7f1efc3c61023100f568208a2c31e8140ce779607b38cca7c8867345a20bdfc825c666ead6e9c473fbe6259f1a067e1c593d05f2acbd2c860302047c435bb500673065023100cf1c31d6ef66317a5e4cf3fd5bb77973ff3c2fe99b1d362fe6cc83ba810a8cfd1b3e9431ed9c8afc5f9474d63f03e1d202307e310a380e412c350a766bd41c740d282cb1416a18fa60bb47ad1db9d23e1463942323ef00f87175e864e8b906b9a8530302047c435bb500673065023100c04e94954d10f2caa89b869c174b3d1801d0035e03fe4d2fdcf0f4cc0877de5ed8a3ab178ef994b2bf7b470d06a0aa1c023009cf4400a325e6fb0179d412444ce4a02f29909ad6041911998c1bb15df1f2633246ed7c885b04debf7d3aef2885dc2a0302047c435bb500673065023100c94a6c46fefee67a663ea4c58c06027851148ce4f5fc8ceeb251f55d438a87d792f42417aa0cdcd00e658c1167d5ac7d023000fadc77d733499a1ef54b1bc994ba7b874e2fef0e0159aa1c5a9fb667ae45726c28062a9a4abd432dbdb571f40d7c1b0302047c435bb5006630640230683cc6fb310e7bd6913c31729eeaa58b7424bbb563574a46f7cc4f6fab4a1f166a6e636d5b6c59aab773db76c58d27a402303cca3feda70a251778db9363893a106d2544b7f13f55b6f475721ed42b1c4c75f9e27bb291cc9ee934a3c6403d853407rxed U]//3 茅=GS kX=Opz5hx>w.\m&X!?`Vc ^Gm"m"07 |-PfLB+x;4x&+0ZZ P nvp)s,u dsr?-6fn W]FK &R0_l_ti};ΥO::6X-RlSKe:Eg9HzϊKJIJC|=mX-j& n=qT đՃ4\(-h2/ʖ,՘}B`nǾB? +ɽ@sbЋA7fKΉw!5<&Eل,!^)y|mύ@+bxbcR$&;`U =oEg Ҝ#Awmj8LʷI6@f()xE[ aVQĉ u [a>p>O|?Old  b ? RlH$H H FH hH >H HHH0H0D(d8l[9[:-[>GHH<HI^HXY$\lH]lH^]G<bdefltHuHv=*NNOOO O&OhCkernel-devel4.18.0516.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.éppc64le-04.stream.rdu2.redhat.comO CentOSCentOSGPLv2 and Redistributable, no modification permittedbuilder@centos.orgSystem Environment/Kernelhttp://www.kernel.org/linuxppc64leif [ -f /etc/sysconfig/kernel ] then . /etc/sysconfig/kernel || exit $? fi if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] then (cd /usr/src/kernels/4.18.0-516.el8.ppc64le && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiVXF 8wUcn<y92%# ([4 8!Lxj w 3pM/& pWXb=}7tf ,TZU6GL U<; 9 PWTTL`9 lT50C> C v> i3w(+YW&rR9A9 ZqU4 +#+ NQ}yB tou&TE6gvDFMZB/ DZ Mh/<)zTX +w\8N$ixV B 6 YDHL\g8g6 4$,l 4:]<e M% _^XRJaCx 11xXWU3^5KxVPVVcX e7\s>FNBa|}S > 92WM_o#3sXj3{j_w:Xe cqknH~ "ER|3.u@@dzK~;yb ap{ m8?6]]R<<q yK< aX=cZ y jz'^}$m kjr&.<KJ7[ m #6[qf# Z>I#^lei#FI bv  f%&G0 TT) Oa 3pCU   * i0QA+ PA]w# MsD+kt K7} #ER!w\ "A& iUJ DK)  \&qa, sv#w1+5l CI  <VNX $J'T_NGv;%r%@&%P WG+\' 7n |z(  MJk %sh |_GR "+6C ]G&HHl  :7'G4T -x Jx U_o8k=] n) I }> o  5MQ~e.})f9yu @0 )  }\n l p  G 6h5$  u%:V' ""##!&!!("!! 8A& _4,o.J!a7 5 s\ P Zh'-/_ Y7 *R 6#|t5 M[%+TJ=K =qk  815-xn#,Gj]nk C hccso$G+gT E d )2bcNZ_|qEXLUmaaa"af; l9G&b&[$!a h;r 6[pi #FQ;" ;i3leS=14j Qi<$|f/x[X[52u,5'%`%T'%<!gs  *C Im9>/#Lk}Y&nCC (aR9M %SFe5l B.IXo$8[? %UZ+I 7B3 Gr3VW;2 fKvaMH6q:O "2? ,.z:i1yYtX/; aXh-[A?tA8d6?qXk`%}!(\%m jA[65d<\pL/kg= ']'6 eE6>PN AP{ a\AKGOTt:K ~2 fD*`OJLi' Ac%z*bpX.!x,b7F G  ~ \r*tVf=l   v fVt\"uQ 8&F!b[^]xk WiW\uk05J?&imcB S F  ag \ W"}Q|gt(I  1a\Z"*hRlm>'YJf e  Y#tUUKwxq  0or=xh, [ -Fn ~ o  b|H*'b4s/ 2(M-5=%{y kGpR %u N=(kx,RYb2(ZV wR{UoS hT-S LX~ gcex21 $ i5TC yv)*p Piv ~1 9;H[;5& : M /H3_<GSB8 _4^f0sqtVihO3YTcU< G1 24L;Qu'B- c4q*#!AR^ ^p;+pVcI TtZ% Rk ew-pF? b^QF^ /a2x\R>}j9:Op ' #"Z  05 W*b7/X,/Z)[KU?=[]%PfSG`Z"V$oN.ayIL &~!Etf[$'AQ)ymK6Jpm  w rl.  U6[q UE zk`c"YG 5BR?S8a[[ ~vXsntTIh; )we`WTz[4X({czmX_S%i*=Ud;E(4 FSJS=W+ )-k_.FJ|"J=uQNiMy$NX7| AM[$eQo5,)RMPBT]'+.#HD/Epho( # H H U^ 5eh@J\^(nSiiiii0e^8$F\mOzW . ZKcHS@vu[|zN|Y[_h_ `;vX t`' jzYNdXb v59!N\y]k<\R oTL5I&]R#`B5;"w-Gc &9# IO>" z 5B- s`GaOkA]!hzw $DP<6i  S,=]gFz 1KaoN}S$Q7W&&&f2Thf#  h_) 3m:9d!~od7|jQ }oN` ;7:/1-w J cq% Y &Z(xj@-\ 5i La9~~f#^ 'I9p<]O}f@nzSYnkQhLH18 hD{WMhga-/zӫ +jqF D% ! _Z % R6Njo<V0Z PT!  &-ha$d|R% ;<)T39QQ'`b|#]?J@x|M9M<a Rqy)gb-5a[JJa|!{ ,-eA^a%W Ota_ (GG' <\ wcsli>i}-=~D-3/'  2aao]]e8]e3xb^U2 6/o^*;E4)y@|U +QMJ&WgRC 2UZS*E,)a6@vSD8 {E+0=!x3/gE j A?EBg[AVf ^g&GpV+[_UY Sz -QuFt M5 mKew$ADK!\8Vd nOcOBQlH9|4YL|! *_ n0;d ",t#zA;uEz#s~Wyzz ;R ITWp`3y Mb}I9*`}m r;$T6u@  hJdhf3= = v2,{b= q#CAvSYD/-c{?L3IbW XR^s_$GU /S J#57p'$_ +:{XE \ P@ < ")" X .N0_^gd%q/Vq^!  o\2V3O L0Yj4NIt =L6>Kp4 6 2/P1HVnI)"./M N| ~ { # j%}j?=f& |'UlN Eo [UA Mi%, {h}4?K!A i'?_ g 1.,=>  P $UM O+O?8,]2  'p)5N&&!6 %)4FOL&x[ WBK  / R&g R$' K.!G] ; 7!Z =2]>T AtX ? cd* {19u \q|#{$:%u M )0* q " o ,%E$ ?q+B Vva &exv ~60! $P2H!~1=%M.$~041!PZ g$N, [?o/c k,#$&@%$NJ"?%t4)85B st c  IRx Hk  . R T!,(4*#mS. M$   ,uf$%[\e*F K' 3h=I ]M "f  4x~  # . .@9g+!gPP<)% :  P 2   J g= 5L   (ar # N { ? * = 1 V  hGM N{)PV?(n>?Y^-b    [.0n t^q-"b [ (>6 D_S{ t ".&S'  >   T?(&-P Ol/ 0 (W/4Y/ dX+ e<Ci5Z8bCP 8S X %>Q;*#MjGS6 F6 W8+ Yte46} DI M#^A"nj'(!H9K+> $:K/.ipN`bE-GLh ,;:#bk m|@ /%$) 1# k+!K6s$ xS@'m*1AWN d:tNS ?nc=.]}^h];fO`  UF23#zX + zI0!8 7A 0 i=hv5 I72\  's)=+%U.lL yP ?  (RA(5H@[itZn& `| + e f .!&2J:`-< Z 42}.@ `?Y f!29~  6Ez1d ;-#feJn-q+$CR7M?a=a+)Q [oa! PjXv8Y[ 8 PM  41~c= v< 31[| { "6KS J*3]cW-1 r C!3 !' _ I/  K %= K&v.m$s }i)3#$R g.Jn nqTQ 1 Ni|!;5-~ AG `}5dRAm* f&'5V+.7J 1-Cd{!3 /%t ?)cU M2BVF *WS 5 i V9Y! ?11l? ZX< "!}?p +~4 G=1:9 V1@1w/TE 7X0%'HO2_ZcpF( &S< iJ ~" " T1    a z]' N[fM"%H !00lQ 6.'/" Sd3qk*(/ 2s@i&  ?E 17 0'seC N 0[u% m#tJ0  h &+XNcB {( K 2o.D#W[ bO3|  0w=1; $)&! M ?5xMmJR8Bt f{*21 K;A)S q љ!6;j0u ?)16G&<[R("  B\9 @ c:uI5 lr# )yLH4(1  MfD  - tѻ4*p& f + 1\4k w c~P*G  X f** mL w { 9B \ O vGa9u<  iMPh>dH+-4 zB dDvK*R\ R +% %G{ (,i l@ J|S!y+v/! E  I w1  w<tV:F NCg# $ "l7-99/|JN7* \KWv("=pN u8K  $ ,1 0TP!S KE!je !2 t \  ;,L?`? @5@%.;7P"h N3-)(YU X%= [ 4< _Ut-n&:2Y d J, 86./jh@ Qa DcI T 0A;jM$C"(08a TGeB!$!WG  K)9F:K1e&=(t, o .; B lX2  <dGO c!!"5 Bf_vj]"Nn{"$ 5S Z+ TL:%M+0Cu/kR\$"7ZU K?l8 v<IFS Y  b041 Rx , VQx$D R$^<G  Lyd;Wx M cL'uvF n"PK ?Xpq  %4124aZ "/&D< $8 %\*>ao );&_ B8[ j_ +-CSH9(,W{I,"- [EF{ZFh$" 2 OFyA-M@S8D%8L UOB Y,QORb7FS pd> pE5K&_T#-) )d$ J<Y57TK/D & 8d&3 [ n^^ \^8"w @+@  cC CF [a ' Ic)F) %rW+$ duK6=t"|YN <{ 3 0 9 9 x%c#N$),B;@G*lU$4>2 , H>pp Ž $N\>hZ9 6DA9h(> G5tb !Z& K(F+Nb Gg+t !L:Ks#  5h6JjWgj.|:kt 6Z D/3po?]32>3;[+#c *`@>F"7h` ZN*k& '6bGM) w?2 d7z(@5$ gF%57 ~:M/O;<`k7$%kLN mYV"h rRM l+ p!4 k pN.%@s6 $ 3!O`|,E%  v 97j 1y Y$! 6-6&dV ,R 5x$76+ o"DSWp%A*;97T~%=E:;M-Q 6<;b :?6SN*& *1 Wy ^J jQ y@Z  z']RNU jj Is'\KXa#F"x> 5y(0a1: J (d }fB-;_qX-P*z,?,W $9SB !  WRfPj5JE\I v_D Dw Cyp eSs @a4@2O%$. $ 9&%0ZBLa N0i 3~ 5 4~8p z 4B  Sfe># ]{5}8.Jg<3FE'4 #-%pTY4 o-' 2paD{|0:D4 z4u=+m[=!<#ypF:l9' "  oo ) m1`> v(&-!^   N@2':? xi Pi& _i/ &'$ k.N dG$%M/C[E - )u  d 2M'A.U"&:upB)64u 2eLhK"pH ?OWRy\B̞  4B]! ?^Y[(>#OW:HVIi<x4 z k$rp 'rbD' +A c #;O h w -!;h @(1 \,// 1 (, .$i z!= #*6 S  Z  m/Ys ,a" 9x Z ;1F J G# $# ;  9 Y(Qx#:1 C [-'B:) I,cW/CL/o ` Rp~ H_-1Ea  I>lpen&m .+)^ >W!#T:38g`/K Ya5wr e @n Mj=O2L P.s rel|f  Kqb R /5 U pf E0# @B b/TC  ',;W"$_(ruO:"s4 2GY9 5J@]-, n s"'4![E9n a kY|Hg9+f l-~ ! *xLIT G { h 76q _ }'O o>?75?K< f +hv QU j y6K e1 p p0 k m iS C . ; c %'JxE BB = y w (%4 ju`#Qp-O   r 3-Uq, M?<vAwY  E-)8[" #K^ !F h? V$B5w -*'+ x^ 2PFQ3o O#S4"Ks@)I3 iv HOvX [J ~@W i pnh?im$UN : $r X*7O   - W   lt<!P "5_$ Z# (j R#(e8 ,BrfXPK D& (3t ,"e9Z$@/$< -K4#)e(i1  jC O[ JQA{JY h" cg O62K, i)Df $Xx mg  . >:3 ;. u ol%DD 2 3$R$!R q%6-) : +D HK'0O Ou"q<RRWʜ5&@MI+s bv-\jE ;{*4 65y) t*.4; sqJ.ob^ #M? ` 'C3,*E ! h6c 5 ! h1$a)  QD 83K4^N )KF"(+F @.G!2*Y{ $.] B] w67i4y  LYEz: ` Jp+)$]sfk 6^;e>;Ab 0as Io<ez%/Tfy/~ e bZ`4  X 0yUv( ITS(Jnt1_!AaQpKRe )$*")y#[8X&<Be)R]",Vt̟"$b39n%v2*sS: *z f`!+ |Ig L/$ ]$2 , 4]8(dA%O7;A-/8 5!{ :s%F $I F ZC O.PH Xdr$(;orV&} MgFs  _ j: *$!"3"M!bU!VI,# h Q3"D  !*. aVB^mSBe1BicYW72J/ %!  yHZ ]&;Z 6-%d) u #| PHVp=rdxh&C d*>= e+#G xmU8;S+>x@u/J\6"/O(KNUA- SC A !BM Q! _B`z 3h#( Q DOl}96 ` d/4. e_&' /BAIkpo  '  (d 8*X[&= 5 2.vB c@h "( .wg , I k*< +5k'.s#}6wW[i>/7m%42|1C I]e)u0:L' lrYHE WS>QW^-]Z8t) | Y~z7zYGRDvA 0:y k8;@ <4  %&Q%)pLh1U^r'mz-ap=gH^o}mW | u!% G~y$ wt [>K( YG0HI0H0 X)Y)T ]r"Q)lAHhpS2T!S|<J_P&wd  zW}Ed8a er<VeV WX;@$6SJB$0'T)A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤AA큤AAA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤AAA큤A큤AAA큤AAA큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AAA큤AAAA큤AA큤AAA큤AA큤AA큤AAA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AAAA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤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큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤AAAA큤A큤A큤AA큤A큤A큤A큤AA큤AA큤AAAA큤A큤AAA큤A큤AAA큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAA큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤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큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AAA큤A큤AAAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAAA큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AAA큤A큤AA큤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큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤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큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤AAAA큤A큤A큤A큤A큤A큤A큤A큤큤A큤큤큤AA큤큤큤A큤A큤A큤A큤큤큤큤A큤큤큤A큤큤큤큤큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤큤A큤A큤큤A큤큤큤큤큤큤큤큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤A큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤e>e+e+e1e1e1e1e1ee2ee2e2e2ee2ee2ee2ee2ee2ee2ee2e2e2ee2ee2ee2ee2ee2ee2ee2e2ee2e2ee2e2ee2ee2e2ee3e3e3e3ee3ee3ee3ee3ee3e3ee3e3ee3e3ee3ee3ee3e3ee3e3ee3e3ee3ee3ee2e2e2ee2e2ee3e3ee3e3ee3e3ee3e3ee3e3e3ee3e3ee3e3e3ee3e3ee3e3ee3e3e3ee3e3ee3e3e3ee3e3ee3e3ee3e3ee3e3e3ee3e3ee3e3ee3e3e3ee3e3e3ee3e3e3ee3e3e3ee3e3ee3e3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3e3ee3e3ee3e3ee3e3ee3e3e3ee3e3ee3e3ee3e3ee2e2ee3e3ee3e3e3ee3e3ee3e3ee3e3ee3e3ee2e2e3ee3e3ee3e3ee3e3e3ee3e3ee3e3ee3e3ee3e3ee3e3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3e3ee3e3e3ee3e3e3ee3e3ee3e3ee3e3ee3ee3ee3ee3ee3e3ee3ee3e3ee3e3ee3e3ee3ee3ee3ee3ee3ee3ee3ee3e3e3e3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3e3ee3ee3ee3ee3ee3ee3e3ee3ee3ee3ee3ee3ee3ee3ee3ee2e2ee2ee2ee2ee2ee2ee2e2ee3e3e3ee3ee3ee3ee3ee3ee3ee2e2ee2ee2ee2ee2e2e2ee2eee2ee2e2ee2ee2ee2e2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2eee2e2e2e2e2e2e2e2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2eee2ee2e2e2e2ee2ee2ee2ee2ee2ee2ee2ee2ee5e5e5e5ee5e5ee5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5eee5ee5ee5ee5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5ee5ee5e5ee5ee5ee5e5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5e5ee5ee5e5ee5ee5ee5e5ee5e5ee5ee5ee5ee5ee5e5ee5ee5ee5e5ee5ee5e5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee2e2e2ee2ee2ee2ee2ee2ee2ee2e2e2ee2ee2ee2ee2ee2ee2e2ee2e2eee2ee2ee2ee2ee2e2e2ee2ee2ee2ee2ee2ee2ee2ee4e4e4e4ee4ee4eaebe4e4e4e4e4e4e4e4e4e4e4e4e4ebebe4e4e4e4ebe4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4ebebe4e4e4e4e4e4e4ebe4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4efefe4e4e4e4e4e4e4e4e4e4e4e4eaeae4e4e4e4e4e4e4ebebe4e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5ee4e4ee4ee4ee4ee4ee4e4ee4e4ee4ee4ee4ee4ee4ee4ee4eee3e3ee3e3ee3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3e3e3e3ee3e3ee3e4ee3e3ee3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee3e3ee4ee4e4ee4ee4e4ee4e4ee4ee2e2ee2ee2ee2ee2ee2e2e2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2e2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2e2e2e2ee2e2ee2ee2ee2ee2ee2e2ee2ee2ee2ee2ee2ee2e2ee2e2ee2e2ee2e2ee2eee2ee2ee2ee2ee2ee2ee2ee2e2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2e2ee2e2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2ee2e2ee2ee2ee3e3e3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3ee3e3e3e3e3e3e3e3e3ee3ee3ee3ee3ee3ee3ee3ee2e2e2ee2ee2ee2ee2ee2e2ee5e5e5e5e5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5eee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5e5ee2e2e2ee2ee2ee2ee2ee2ee2ee2ee2ee2eee2ee2ee2ee6e6e6ee6e6ee2e2ee+e+ee+e+ee+e+ee5e5ee5e5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee6e6ee6e6ee6e6ee6e6ee6e6ee5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5ee5ee5ee5e5ee5ee5ee5ee5e5ee5e5ee5ee5ee5e5ee5ee5e5ee5e5ee5ee5ee5e5ee5ee5ee5ee5ee5e5ee5e5ee5ee5e5ee5ee5ee5ee5e5ee5eee5e5e5ee5e5ee5e5ee5e5ee5ee5e5ee5ee5ee5ee5e5ee5e5ee5e5ee5e5e5e5e5ee5e5e5e5e5ee5ee5e5ee5ee5ee5ee5e5ee5ee5e5ee5e5ee5ee5e5ee5ee5e5ee5ee5ee5ee5ee5e5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5ee5ee5e5ee6e6ee6e6ee5eee5e5ee5e5e5e5ee5e5eee5e5e5ee5e5ee5ee5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5eee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5eee5eee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5e5e5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee6e6ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee6e6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5eee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5ee5e5ee5e5ee5ee5ee5ee5ee5ee5e5ee5eee5ee5ee5e5eee5ee5ee5ee5ee5ee5ee5e5eee5ee5e5ee5ee5ee5ee5ee5ee5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5eee5e5e5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5ee5e5ee5e5ee5ee5e5ee5e5ee6e6ee6e6ee5e5ee6ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee6e6ee6e6ee6e6ee6e6eee6e6ee5e5e5e6ee6e6ee6e6ee5e5ee5e5ee6e6ee6e6ee6e6ee5e5ee5ee5e5ee5ee5e5eee5e5e5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee5ee5ee5ee5ee5e5ee5e5ee5ee5ee5ee5e5ee5e5ee6e6ee6e6ee6e6ee6ee6ee6ee6ee5e5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5e5ee6e6ee6e6ee6e6ee5e5ee5e6ee6e6ee5e5ee6e6ee6e6ee5e5ee6e6ee5e5ee5e5ee5e5ee5e5ee6e6ee5e5ee5ee5e5ee5ee5ee5ee5ee6e6ee6e6ee6e6ee5e5ee5e5ee5ee5e5ee6e6ee6ee6ee6ee6ee6ee6ee6ee6ee6ee6ee6ee6ee5e5ee5ee6e6ee5e5ee5e5eee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5e5ee5e5ee5e5ee6e6ee6e6ee6ee5e5ee6e6ee6e6ee6ee5e5ee5e5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5e5ee5e5ee5e5ee6e6ee5e5ee5e5ee5e5ee6e6ee6e6ee6ee5e5ee5ee5ee5ee5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee6e6ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee6e6ee6e6ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee6e6ee5e5ee5e5ee6e6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6ee5ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee5e5ee6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6ee6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6ee6e6ee6e6ee6ee6ee6ee6ee6ee6ee6ee6ee6ee6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee6ee5e5ee6e6ee6e6ee6e6ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5ee5ee5e5ee5ee5ee5ee5e5ee5e5ee5ee5e5e5ee5ee5e5ee5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5ee5ee5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5eee5e5e5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5eee5e5e5e5ee5ee5ee5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5ee5ee5e5ee5e5eee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5ee6e6ee5eee6e6e6e6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6ee6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6ee6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6e_ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6ebe6e6e6e6e6e6ee8e8e8e`e8e8e`e8e8e`e8e`e8e8e`e8e`e`e8e`e8e8e8e`e8e8e`e8e`e8e`e`e`e8e`e`e`e8e`e`e8e`e8e8e`e`e8e`e`e`e8e`e`e8e`e8e`e8e`e`e8e`e8e`e`e8e`e8e8e`e8e`e8e`e8e`e`e8e8e`e`e`e8e`e`e8e8e`e8e`e8e`e8e`e8e`e8e8e`e`e8e`e8e`e8e`e`e`e8e`e8e`e8e`e`e`e8e`e8e`e`e`e8e8e`e`e`e8e8e8e`e`e8e8e8e8e`e`e8e`e8e8e`e`e8e`e8e`e8e`e8e8e`e`e8e8e`e`e8e`e8e`e`e`e8e`e`e`e`e8e`e`e8e`e`e`e8e`e`e8e`e`e8e`e`e`e8e8e`e8e`e`e8e`e`e8e`e8e8e8e`e8e8e`e8e8e`e8e8e8e8e8e`e8e8e8e8e8e`e8e8e8e8e`e8e`e8e8e8e8e8e`e8e`e8e`e8e`e`e8e`e8e8e8e`e8e8e`e8e8e`e`e8e`e8e`e8e`e8e`e`e8e8e8e`e`e8e8e8e8e`e8e8e8e8e`e`e8e`e8e`e8e`e8e8e8e`e`e8e8e`e`e8e`e`e8e`e8e8e8e`e8e`e8e8e8e`e8e8e8e`e8e8e`e8e`e8e`e8e8e8e`e8e8e8e`e8e8e8e8e8e8e8e8e`e8e8e8e8e`e8e`e8e8e`e8e8e8e`e8e8e`e8e8e`e8e8e8e8e`e`e`e8e`e`e`e8e`e`e8e`e8e8e`e8e8e`e8e`e8e`e8e8e`e8e8e`e`e8e8e`e`e8e`e8e`e`e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e`e8e8e8e`e8e8e`e8e`e8e`e8e`e8e`e`e8e8e`e8e8e8e`e8e`e8e`e8e8e8e8e8e8e8e8e`e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e`e8e8e8e`e8e8e8e8e8e`e8e`e`e8e`e8e`e`e8e8e`e8e`e8e8e`e`e8e8e8e`e8e`e8e8e8e`e8e8e`e8e8e`e8e8e8e`e8e8e8e`e8e8e`e8e8e8e8e8e8e`e8e8e`e8e`e8e`e8e`e`e8e`e`e8e`e`e8e`e8e`e`e8e`e8e`e`e8e`e8e`e8e8e`e8e`e8e`e`e8e`e8e`e8e`e8e`e`e8e`e8e`e8e8e8e8e8e`e8e8e8e8e8e8e8e8e`e8e`e8e`e8e`e`e8e`e8e8e8e8e`e8e`e`e8e8e8e`e8e`e8e`e`e8e8e`e8e8e`e8e8e`e`e8e8e`e8e8e`e8e`e8e`e`e8e8e`e8e`e8e8e`e8e`e8e8e8e8e`e8e`e8e`e8e`e8e`e8e8e`e`e8e8e8e8e`e`e8e8e`e8e8e`e`e`e`e8e8e`e8e`e`e8e`e`e8e`e`e8e8e8e8e8e8e8e8e8e`e8e`e8e8e8e`e8e8e8e`e8e8e`e8e8e`e8e`e8e8e8e`e8e8e8e8e`e`e8e`e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e`e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e`e8e8e`e8e`e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e`e8e8e8e8e8e8e8e8e8e8e8e`e8e`e`e8e8e8e8e8e8e`e8e`e8e8e8e8e8e`e8e`e8e8e`e`e8e8e`e8e`e8e8e`e8e8e8e8e8e`e8e`e8e8e8e8e`e8e8e8e8e8e8e`e8e`e8e8e`e`e8e`e`e8e`e8e`e8e`e8e`e`e8e`e8e`e8e`e8e8e`e8e8e`e8e8e8e`e8e8e`e8e8e`e`e8e8e`e8e8e8e8e8e8e8e8e`e8e8e8e`e8e8e8e8e8e`e8e8e8e8e`e8e8e8e8e8e`e`e8e8e8e`e8e8e`e8e8e8e8e8e`e8e`e8e`e8e`e8e`e8e`e8e8e`e8e`e8e8e`e8e8e8e8e8e8e`e8e`e`e8e`e8e`e8e8e`e`e8e`e`e8e`e8e8e`e`e8e`e8e8e`e8e`e`e8e8e`e8e`e`e8e8e`e8e8e`e8e8e`e8e8e`e8e8e8e`e8e8e8e`e8e8e`e8e`e8e8e8e`e8e`e8e8e8e`e8e8e8e8e`e8e8e8e`e8e8e8e`e`e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e`e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e`e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e`e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e`e`e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e`e`e8e8e`e8e`e8e`e8e8e`e8e`e8e`e8e8e`e8e8e8e`e8e8e8e8e`e8e`e8e8e`e`e8e`e8e`e8e`e8e8e`e8e8e8e8e8e`e8e`e8e8e`e8e`e8e`e`e8e`e8e`e8e`e`e8e`e8e8e`e8e`e`e8e`e8e8e`e8e8e`e`e8e`e8e`e8e`e`e8e8e8e`e8e`e8e8e`e8e8e8e8e`e8e`e8e8e`e8e8e`e8e8e`e8e8e8e`e8e8e8e`e8e8e8e8e8e8e`e8e8e`e8e`e8e`e`e8e`e8e8e8e8e`e8e8e`e8e8e8e`e`e8e8e`e8e`e8e`e`e8e`e8e`e8e8e8e8e`e`e8e8e8e8e`e8e`e8e8e8e`e8e`e8e8e`e`e8e8e`e8e`e8e8e`e8e8e8e`e8e8e`e`e8e8e`e8e`e8e8e`e8e`e8e8e`e8e8e`e8e`e8e8e8e8e8e`e8e8e`e8e8e`e8e`e8e`e8e`e8e`e`e8e`e`e8e`e8e`e8e8e8e`e8e`e`e8e`e`e8e`e8e`e8e8e8e8e8e`e8e8e8e8e`e8e`e8e8e`e8e`e8e8e`e8e`e`e8e8e`e`e8e`e8e`e8e8e`e8e`e`e8e`e`e8e`e8e8e`e`e8e`e8e`e8e`e8e8e`e8e`e`e8e`e8e`e8e8e`e`e8e`e8e`e8e`e`e8e`e8e`e`e8e`e`e8e8e`e8e`e`e8e`e`e8e`e8e8e`e8e`e8e`e`e8e`e8e8e`e8e`e8e8e`e8e`e8e8e8e`e`e8e`e`e`e`e8e8e`e8e`e8e`e`e8e`e8e`e8e8e8e8e`e8e`e`e8e8e8e`e`e8e`e`e`e`e8e`e8e8e`e`e`e8e8e`e8e`e`e`e8e8e`e8e8e8e8e8e8e`e8e`e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e`e8e`e`e8e8e`e`e8e`e8e8e8e8e`e8e8e`e8e8e`e8e8e8e`e8e8e8e8e`e8e8e8e8e`e8e`e8e`e8e`e8e8e`e8e8e8e`e`e8e8e`e`e8e`e8e8e`e`e8e`e8e8e8e8e8e8e`e8e`e8e8e8e8e8e8e`e8e`e8e8e`e8e8e`e8e8e`e8e8e`e8e8e8e8e8e8e`e8e8e`e8e`e8e8e8e`e8e8e8e8e`e8e8e`e8e8e8e8e`e8e8e`e8e8e8e`e8e`e8e8e`e8e8e8e8e8e`e8e8e`e8e`e`e8e`e8e8e8e8e8e8e8e`e8e8e8e8e8e`e`e8e`e8e`e8e8e8e`e8e`e`e8e8e8e8e`e8e`e`e8e`e8e`e`e`e`e8e`e8e`e8e`e8e`e8e8e`e8e8e`e8e8e8e8e`e8e`e8e`e8e`e8e8e`e8e`e8e`e8e`e8e8e8e8e8e`e8e`e8e`e`e8e8e`e8e8e`e8e8e8e8e8e8e`e`e8e8e8e8e`e8e8e8e`e8e`e`e`e8e`e8e`e`e`e8e8e`e`e8e`e`e8e8e`e8e`e8e`e8e8e8e`e8e`e`e8e8e`e8e8e8e8e`e8e`e8e8e8e8e`e8e8e8e8e8e8e`e8e`e8e8e`e8e8e`e8e`e`e8e`e8e`e`e8e`e8e`e`e8e8e8e8e8e`e8e`e`e8e`e`e8e`e8e8e`e8e8e`e8e`e`e8e8e8e8e8e8e`e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e`e8e`e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e`e8e`e8e8e8e8e`e8e`e`e8e8e8e8e8e8e8e8e`e8e`e8e`e8e8e8e`e`e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e`e8e`e`e8e8e`e8e8e`e8e8e8e8e8e8e`e8e`e8e8e8e`e8e`e8e`e8e`e8e`e8e`e8e`e8e`e8e`e8e8e8e8e8e8e`e`e8e8e8e`e8e8e8e`e8e`e`e8e8e`e8e`e8e`e8e`e8e8e`e8e`e8e8e8e`e8e8e8e`e`e8e`e8e8e`e8e8e8e8e`e`e8e`e`e8e`e8e8e8e`e8e8e`e8e8e`e8e8e8e8e`e`e8e8e8e8e8e8e8e8e8e`e8e8e`e8e8e8e`e8e`e8e8e8e8e`e8e8e8e8e`e`e8e`e8e`e8e8e`e8e`e8e`e`e8e`e8e8e`e8e8e8e8e`e8e8e8e`e8e`e8e8e`e8e`e8e8e`e8e8e`e8e`e8e`e8e8e8e`e8e`e8e8e`e8e8e`e8e`e`e8e8e8e8e`e8e8e8e8e8e8e`e8e8e8e8e8e`e`e8e8e`e`e8e`e8e`e`e8e8e8e8e8e8e8e`e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e`e`e8e`e8e`e8e8e8e`e`e8e8e8e`e`e8e8e`e`e8e`e8e`e`e8e`e8e`e8e8e`e8e`e8e`e`e8e`e`e`e8e`e8e`e8e`e8e`e8e8e`e`e8e`e8e`e`e8e`e8e8e`e8e`e8e`e8e8e`e8e8e8e`e8e8e8e8e`e`e8e`e8e8e`e8e`e`e8e8e`e`e8e`e8e`e8e8e8e8e8e8e8e8e8e`e8e`e8e8e8e8e8e8e`e8e`e8e8e8e`e`e8e`e`e8e8e`e8e`e8e`e8e`e`e8e`e8e`e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e`e8e`e`e8e8e`e8e8e8e`e`e8e`e8e`e8e8e8e8e8e8e`e8e`e8e8e`e8e`e8e`e`e8e`e8e`e8e8e8e8e`e`e8e`e8e`e8e`e8e`e8e`e8e8e8e`e8e`e8e`e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e8e8e`e8e`e8e`e8e`e8e8e8e`e8e8e8e8e8e8e8e8e`e8e8e`e8e`e8e8e`e8e8e8e`e`e8e8e8e8e8e8e`e8e8e8e8e`e8e`e8e8e8e8e`e8e8e`e8e`e8e8e8e`e8e8e`e8e8e8e`e8e`e`e8e`e8e`e`e8e`e8e8e`e`e8e`e8e`e8e8e8e8e8e8e`e8e8e`e8e`e8e`e`e8e8e`e8e8e8e`e`e8e8e8e`e8e8e8e8e`e8e8e8e8e8e8e`e8e8e8e8e`e8e8e8e8e8e`e8e8e8e`e8e`e8e8e`e8e`e`e8e8e8e`e8e8e`e`e8e`e8e`e8e`e8e8e`e`e`e8e8e8e`e8e`e8e`e8e`e8e`e8e8e`e`e`e8e8e`e8e8e8e`e8e`e8e8e8e8e`e`e`e8e`e8e`e`e`e`e8e`e`e8e`e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e`e8e8e8e8e8e`e8e8e`e`e8e`e8e8e8e`e8e8e`e8e`e8e8e`e`e8e`e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e`e8e`e8e`e8e8e8e8e8e`e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e`e`e8e8e8e`e8e8e8e`e8e8e8e`e8e`e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e`e8e8e`e8e`e8e`e`e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e`e`e8e8e8e`e8e8e8e8e`e8e8e`e8e8e8e`e`e8e8e8e8e`e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e`e8e8e8e`e8e8e`e8e8e`e8e8e8e8e8e8e8e8e`e8e8e`e8e`e`e8e8e`e`e8e8e8e8e8e`e`e8e`e8e8e`e8e`e8e`e`e8e8e`e8e`e8e8e8e`e8e`e8e8e`e8e`e8e`e`e8e8e8e8e8e`e8e8e8e`e8e8e8e8e8e`e8e`e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e`e8e`e`e8e8e8e`e8e`e8e`e8e`e`e8e8e8e`e8e8e`e8e`e8e`e8e`e8e`e8e8e8e`e8e8e8e8e8e`e8e8e8e8e8e8e8e`e8e8e8e`e8e8e`e8e8e8e`e8e8e8e8e8e8e8e8e8e`e8e`e8e`e8e`e8e8e`e8e8e8e8e8e8e`e8e`e8e`e8e`e8e8e8e`e8e8e8e8e8e8e8e`e`e`e8e8e8e`e8e8e`e8e8e`e8e8e8e`e8e`e`e8e8e8e`e8e8e8e8e`e8e`e8e8e8e8e8e8e`e8e8e8e`e8e8e`e8e8e8e8e`e8e`e8e`e8e`e8e8e`e`e`e8e`e8e`e8e`e`e8e8e`e8e`e8e8e`e`e8e8e8e`e8e8e`e8e`e8e8e`e8e`e8e`e8e`e8e`e`e8e8e8e`e`e8e8e8e`e8e8e`e8e`e8e`e8e`e8e`e8e8e`e8e8e8e`e8e8e`e`e8e`e8e8e`e`e8e8e`e8e8e`e8e`e8e`e8e`e8e`e8e8e`e`e8e`e8e`e8e8e8e`e`e8e8e`e8e8e8e8e`e8e`e8e8e`e`e8e8e`e8e`e8e8e`e8e`e8e8e8e8e8e`e8e8e8e`e8e`e8e`e`e8e8e`e8e8e8e8e8e8e8e`e8e8e8e8e`e8e`e8e8e8e8e`e8e8e`e`e8e`e8e`e`e8e`e8e8e`e8e8e`e`e`e8e8e`e8e`e8e8e8e8e`e8e`e8e8e`e8e`e8e8e8e`e8e8e`e8e`e8e`e8e`e8e8e`e`e8e8e8e`e`e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e`e8e`e8e`e8e`e8e8e8e8e`e8e8e`e8e`e`e8e8e`e`e8e8e`e8e`e8e`e8e`e`e8e8e8e8e8e`e`e`e8e`e8e`e8e`e8e`e8e8e8e8e8e8e`e8e8e`e8e8e`e`e8e8e8e`e8e8e8e8e`e8e`e`e8e`e8e8e8e`e8e`e`e`e`e8e`e8e`e`e8e`e8e8e`e`e8e8e`e8e8e8e8e8e8e8e8e8e8e`e8e8e`e`e8e8e8e`e`e8e8e`e`e8e8e8e`e8e`e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e`e8e`e8e8e8e`e8e`e8e`e8e8e`e`e8e`e`e`e8e8e`e`e8e8e8e`e`e8e8e8e8e`e`e8e`e8e8e8e8e`e`e8e8e8e8e`e8e`e8e8e`e8e`e8e`e8e8e`e8e8e`e8e8e8e`e8e8e8e8e`e8e8e`e8e8e8e8e`e8e8e8e`e8e8e8e8e8e8e`e8e`e8e`e8e`e8e8e`e8e`e8e8e`e8e8e`e8e8e`e8e8e`e8e`e8e8e`e`e`e8e8e`e`e`e8e`e8e`e8e8e`e`e`e8e`e8e8e`e8e8e8e`e8e`e8e8e`e8e8e8e`e`e8e`e`e8e`e8e8e8e`e`e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e`e8e8e8e8e8e8e`e8e`e8e8e8e`e8e`e8e`e8e`e8e`e8e8e8e8e8e8e`e8e`e8e`e8e`e8e`e8e`e8e8e8e8e8e`e8e`e8e8e8e`e8e`e8e8e8e8e8e`e8e`e8e`e8e`e8e8e`e`e8e8e8e`e8e`e8e`e`e8e8e8e`e8e8e8e`e8e`e8e8e`e8e8e`e`e8e`e8e8e`e8e`e8e`e8e`e8e`e`e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e`e8e`e8e`e`e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e8e`e8e8e8e8e`e8e8e8e8e8e8e8e8e`e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e`e8e8e8e8e8e8e`e8e8e`e8e8e8e8e`e8e8e8e`e`e8e8e8e8e`e8e8e8e`e8e8e8e8e`e8e8e8e8e8e`e8e8e`e8e`e8e8e8e8e`e8e8e`e8e8e8e`e8e8e8e`e8e8e8e8e8e8e8e8e8e8e`e8e`e8e8e8e8e8e8e`e8e8e`e`e8e`e8e`e8e`e8e`e`e8e`e8e`e`e8e8e`e`e8e`e8e`e8e8e8e`e8e8e`e`e8e`e8e`e`e8e`e8e`e`e8e8e8e8e8e8e`e8e`e8e8e`e8e8e`e8e8e8e8e8e`e8e`e8e`e`e8e`e8e`e8e8e8e8e`e8e`e8e8e8e8e8e`e8e`e8e`e8e`e8e8e8e`e`e8e`e8e`e8e`e8e`e8e8e`e`e`e8e8e`e8e`e`e8e8e`e8e8e`e8e8e8e`e`e8e`e8e8e8e8e8e`e8e`e`e8e`e8e8e`e`e8e`e8e`e8e8e`e8e`e8e8e`e8e8e8e`e8e8e8e`e8e8e8e8e`e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e`e8e8e8e`e8e8e8e`e8e8e8e8e`e8e`e`e`e8e`e`e`e8e`e`e8e`e8e8e8e`e8e`e8e`e8e8e`e8e8e`e`e8e8e`e8e`e8e8e8e`e8e8e`e8e8e`e8e`e8e8e`e8e`e8e8e`e8e8e`e8e`e8e8e`e`e8e8e`e8e8e8e`e`e8e8e`e8e8e8e`e8e`e8e8e`e8e`e`e8e`e8e`e8e8e`e8e8e8e8e8e8e`e8e8e`e8e8e8e`e8e`e8e8e`e8e8e8e`e8e`e8e`e8e8e`e8e8e8e`e8e8e`e`e8e8e`e`e8e8e8e`e8e8e8e8e8e`e8e`e`e8e`e8e8e`e`e8e`e8e8e8e8e`e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e`e`e8e8e8e8e8e8e`e`e8e8e`e8e8e8e`e8e8e8e8e`e8e8e8e8e8e8e8e8e8e`e8e`e8e8e8e8e`e`e`e8e8e`e8e8e`e`e8e8e8e`e8e8e8e8e`e8e`e8e`e8e`e8e`e8e8e8e8e`e8e8e8e8e8e8e8e8e`e8e8e`e8e`e8e8e8e8e`e8e8e8e8e8e8e8e`e8e8e8e`e8e`e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e`e8e8e`e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e8e`e8e8e8e`e`e8e`e8e8e8e`e8e8e`e8e8e8e8e`e8e8e8e`e`e`e`e8e`e8e8e`e8e`e8e`e8e8e8e8e`e8e`e8e8e8e8e`e8e`e8e`e`e8e`e8e8e8e8e`e8e8e`e`e8e`e8e8e8e`e8e`e`e8e8e8e8e8e8e8e`e`e8e8e8e8e8e8e`e8e8e`e8e8e8e8e8e8e8e`e8e8e8e8e8e8e`e8e8e8e8e`e8e8e`e8e8e8e8e8e`e8e8e8e8e8e8e8e`e8e8e8e8e`e8e8e8e8e8e`e8e8e8e8e8e8e8e8e8e8e8e8e8e`e`e8e8e8e`e8e`e8e8e8e8e8e`e`e`e8e8e8e`e8e8e8e8e8e8e8e8e`e8e8e8e8e`e8e8e8e`e8e`e`e8e8e8e`e`e8e`e8e`e8e8e8e8e8e`e8e`e8e8e`e`e8e8e8e`e`e8e`e8e8e`e`e8e`e8e8e8e8e`e`e8e`e8e`e`e8e8e`e8e8e8e8e8e8e8e8e`e8e8e`e8e`e8e8e`e8e`e8e`e`e8e8e`e8e8e`e`e8e8e8e8e8e8e8e8e`e8e`e8e8e8e8e8e8e8e`e8e8e`e8e8e8e8e`e8e8e`e8e8e8ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebebe6ebe6e6ebe6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6ebebe6ebe6ebe6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6ebe6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6ebe6ebebe6e6e6e6e6e6e6e6ebe6e6e6e6e6ebe6e6e6e6e6ebe6ebe6e6e6e6e6ebe6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6ebe6ebe6ebe6e6e6e6e6ebe6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6ebe6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6ebe6ebe6e6e6e6e6ebe6ee8e8e8e8e8eaee8e8ebe6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6ebe6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6ebe6ebe6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6ebe6e6ebe6e6ebe6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebebe6ebe6e6e6e6e6e6ebe6e6e6e6e6e6e6ebe6e6e6e6e6e6e6ebe6e6ebe6e6e6ebe6e6e6ebe6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6ebe6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6ebe6e6e6ebe6e6ebe6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6ebe6e6e6e6ebe6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe6e6e6e6e6e6e7e7e7e7e7e6e6e6e6e6e6e6e6e6e6e6ebe6e7e7e7e7e7e7e7e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6ebe7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e6e6e6ebe7e7e7e7e6e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7ebe7ebe7e7e7e7ebe7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7ebe7e7e7e7e7ebe7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7ebe7e7e7e7e7e7ebe7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebebe7ebe7ebe7ebe7e7ebe7e7e7e7e7e7e7ebe7e7ebe7e7ebe7ebe7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7ebe7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7ebe7e7e7e7e7e7e7ebe7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7ebe7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7ebe7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebebe7e7e7ebe7e7e7e7ebe7ebe7ebe7ebe7e7e7e7e7e7e7e7ebe7e7e7ebe7ebe7e7ebe7ebe7ebe7ebe7e7e7e7e7e7e7e7e7e7e7e7ebebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebebe7e7e7e7e7e7ebe7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7ebe7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7ebe7ebe7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8ebe8e8e8ebe8e8e8e8e8ebe8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8ebe8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8ebebe8e8e8e8e8ebe8e8e8e8e8e8ebe8e8e8ebe8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ebe8ebe8e8e8e8e8e8e8e8e8e8e8ebe8e8e8e8e8ebe8e8e8e8e8ebe8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8ee2e2ee1ee5e5e5e5e5ee5e5ee5e5ee5ee5ee5ee5ee5e5ee5ee5e5ee5e5ee5ee5e5ee5ee5e5ee5ee5e5e5ee5ee5e5ee5e5eee2e2e2e2e2e2e2e2ee2ee2ee2e2ee2e2ee2ee2ee2ee2e2ee2ee2ee2ee2ee2ee2e2ee2e2ee2ee2ee2ee2ee5e5e5ee5e5ee5eee6e6ee6e6ee6e6ee6e6e6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6ee6ee6e6eee6e6e6e6ee6e6ee6e6ee6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6ee6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee6e6ee1e1ee1ee1e1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1eee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1e`e+e+e+e+e+e+e+e+e+e+e+e+e+e+e+e+e+e+e+e+e+e+e0e+e0e.e0e.e.e0e+e,e+e+e+e+e+e,e,e,e,e,e,e`e.e.e,e,e,e,ebebebe.e.e.e.e.ebe.e.e.e.e.e.e.e.e.e.e.e.ebe.e.e.e.e.e.e.ebe.e.e.e.e.ebe.e.e.e.ebe.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.ebe.e.e.e.ebe.e.e.e.e,e0e,e,e,e,e,e,e,e`e.e.e.e.e.e0e.e.e.e.e.e.e.e.e.e.e.e.e.e/e/e/e/e/e/e/e/e/e/e/e/e/e/ebe/e/e/e/e/e/e/e/e/e/e/e/e/e/e.e/e.e.e.e.e.e.e.e.e,e0e,e,e,e,e,e,e,e,e,e,e,e,eZe/e/e/e/e/e/e/e/e/e/e/e/e,e,e,ebe/eZe/e/e/e/e/e/e/e/e/e/e/e/e,e0e/e0e/e/e/e/e/e0e/e/e/e,e,e,e,e,e,e,e0e,e0e,e`e0e0e0e0e0e0e0e0e0e0e0e0e0e0eZe0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0ebebe0e0e0ebe0e0e0e0e0e0e0e0e0ebe0e0e0e0e0e0ebe0e0e0ebe0e0e0e0e0e0ebe0e0e0e0ebe0e0e0e0ebe0e0e0e0ebebe0e0e1e1ebe1e1e1ebe1e1e1ebe1e1e1e0ebe1e1e1e1e1e1e1e0e0e1e,ebe1e,e,e,e,e,e,e,e,e,e0e1e1e1e1e1e1e1e1e1e0e1e0e1e1e1e1e,e.e,e,ebe1e1e1e1e1e1e,e,e0e,e,e,e,e,e,ee1e1e0e1e0e1e1e1e0e1e1e0e1e1e1e,e-e0e,e0e,e,e,e,e,e,e,e,e,e,e0e,e,e,e,ee2e2e2ee2e2ee2ee2e2ee2e2ee2e2ee2e2ee2ee2ee2e2ee2e2ee2e2ee2e2ee2e2ee2e2ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5ee5e5ee5ee5e5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5eee5e5ee5e5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5ee5e5ee5e5ee5ee5ee5ee5ee5e5ee5e5ee5e5ee5ee5ee5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5ee5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5e5ee5eee5e5e5ee5ee5ee5ee5e5ee5ee5ee5e5ee5e5ee5e5ee1ee2eeee2ee1eee1e1ee1ee1ee2e2e2e2ee2eee2ee1ee1ee1ee2ee1eee2e2ee2eee2eee1ee1ee2eee2ee2ee2eee2e2ee2eee2e2ee2ee1ee2ee2eee1e1e1e1eee1ee1ee1ee1ee1ee1ee1ee1ee1ee1eeee1eee2e2e2eee2ee2ee2ee2ee2eee2ee2ee2ee2eee2ee2ee2ee1e1ee2eee2ee2ee1ee1ee2ee2ee1e1ee1ee1ee1ee2ee1ee1ee1ee1eeee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee2ee1ee1ee1ee1ee1ee2ee2ee2ee1ee1ee1ee2ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1eee1eee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee1ee2ee2ee1ee1ee1ee1ee1ee2ee1ee1ee2ee1ee2eee1ee1eeee1eee1ee1ee1ee1ee2ee2ee2ee2ee2ee1ee5e5ee+ee+e+ee+e+e>e180230275eed1a4c7d8385b524f602c4bb9af9454734760470c9af4383d5720e043aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079d69d9c6ec615d389b2928c40a613d6843d8c296b2f0929845ba812d93a56aa553b59f96957d83caa4dc64c6c4716e182cbf5add4b021d1911d4d42c0eb63f1106a746521d4aa348d6b5fbee31d6e9a8c9857f637ff82ed625e37920686e1e0805bdb6d8c6f888fcff08e26c479c55f37fb2035ee4533ce150d805bd2c0162e1791203d1d9284d3d8db4ea0a741a1b03e300e2a9c812205222e8fc026a458420220a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803df2db4a45a7d3624839e9e9cd0de0f3a4a71efe6ad3cc4171b2bbdbbe1ca4057f1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e320632e52ffb9402cee403e23e94ab045f16495fee63b72e6feabe3cfd4b042acc22a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7f601391a2d0a9735cb8d3944593d4f7fb57361886d8128246e80719d9d8e485791521ef3382497c166c0e5ced0713b21471202df473ec431dad8a7ad4bc7b69d886cffa26ede9bdca9bbd1662deb0e3b8fd78ec886ba1918415db9e8051a6512d84cbe0e51ffb4446b41d01452f52b538b633e4eeaf0a9bed49539e2537e0cd3f2bbfe26f9610ec2ef55396441b9f3269170478f9971fd72ecdedb3806d45d78a9fa63f96f91d2ef67cfd5efeb9afc313b033447aa37c8e1a627b8b522e6a7fe234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d32e3498a5f4a7dc3d788925a5e23e27c29e54888af946740169172d4b4a1a49c30caaac37a040f1b4670018f8237274b8791919f7816c44dadbdb2aa22025d8c5bcf42056ef46dbb72e9b3d529e46a022692c79f08b39bea9c111bdc5e3ff6d43c856fd7b0f448dbff667d62904c000e382c767d263a394f6ebbc7f6a914ff719e10f7f81ce1d0d0665169fa2da9be187686025da32794e896aae2ecd347af9e3cf6a55d5843ed7143402484c9462194feca5f9bc6bc6a8746a74762cc3c5e2ee832eb06ed50d9d40fda1dd24060260573c046ad651ba0efd1b2246ddfb4360952afab5cf8288ee493458a394b82bb692cc73badeaf61e1e1db0bc9dfd4d011aa1f71f3ed51575e83a8808e09a515804686433ff0778d7b240f6c246237754cd4f66f1642f60ce5dc8b7c457faf88867e22e6b200ba8bc9ba6a8444281d5d79ceccc4ed4a8d8f0a543dda61132bfb483f30ee6aa1f17f31b950256d77e11077b598adb75a1555c6cc828c21d13d39ec18568d58c9a08933f86b54623cd254d3ac801ad379c877427ea8ea0fad5fac2abadb34552b9f0b8ba3b94a300bd7395ddf1855772125a9c1dbd3000990934550b329cf82e757dfa6ad63f900cf4f47b0ef7607912c65adb324080ddf0124f2eeaf0644d2a420308d70fa7598ea397c5f566ad1bc1c070d75b8acfad9884be9f5870df25b07c40f9ab80ecaa8efaa70c859014ce1da0e746ac21ac9012e5d3570ade0ee737f43f415b13164581063388c0ebca2b44ea746e4123489457831b8ba7a5b5a312c39e578120e3304442f9ec1987bf09fd30fe883cef09a120f5044a42a193d30118764d3cf499e956e787cd4aff2e26444379c708ffcc3030813c019e847d2eacf471513ea9bb667630cac2c093fc22b4815b8bbe14ed21f92895bdc003f7b504f935bbd15d00331ccea6d11fba4f9693f538f56ce17fd1436da2b236d1086e556830a64c28830b78865172d81037a89502082067c566aa3c5b6aebc25a7a1675846ccab8f5c2f81fac991cfa67d31e9efb6be9516120813981e6d5105db8f5c3e4df9616316b59df6140184e3186d4127da17c9ab8c276195ca50c21188b7cd13a6f39abb2d725a0efa7c01d15d5e1ca5a9d4757962861c5e95d4e86ca84e087d41c4dcaac35c1cce1d031566b762694ba34238b3aa911c56f112d79fd3c696ff9da61b50844961989bd95363a2accf969e9055acb49c4af21780a4ec38fcc326ca8a437907463dc7025da31519c51b4e027255cd469cd971f3f5ff4a0e76325f1cf2a3f2d4d0fd5a30d8df21d8ad7557ce89909a35735be610a011b498be060333179f9c555fe04268d6b168955b52e5b0daecb9b5b116bdd9ff082a597a74274ed04fb8b3f0b38de40a34e2230fb4f44790117e6840545fbc109b7cd20bfaa6ff0b6f7d0f62b7dad59a0d3abbc6afd647824f3f56543160ef1f62f1775a9bbdad2b2003bd6f7e988ce0e6671687bc54fbbbbb1fc7a728709980871a63992f0f225346236091481e3a3ad8e0045f905a9802da1c6d2011748cfe8de59285c7bec8b14fc3297b9479f9e491ab176d1432fc3f0e90ac3358eb843395b29d30cdea3dde23378d546857f6d4775dc8fdb9c0e862bf062e1a98a3cdd2f8a8954348476f8c586c3cf35e19c7673fdd540557bc29e87ae1adba8c025ef57007cf9432adbd4d290648a29cfc8a8265f1febc9839a0820d10b7ec58a00059e9a3180d3ba835e1cb28b93e83a2d15ff93df5ccef6932722be3000417596bc38888ec392e36ed88a9ca8d716d0b34b8ab26b3528531f04befc36db1ace14f666de33a547d7f78371aec9cecafb4375879e729bfc85f7b14f2b2ee11c8f36afa56d8310a5a585d9970c6780881b156d2f00fe8d5097a82ecd898ea44da53df5b193f8759c1aa9bfb9660d3abc5e829caae909a0c191189e50ba3d9e5102ab34d148dc41340b0806fca463aef05d6de016cd33184d19e1b150e7fd480da86f2dfe316f26dfccfd47809ec592b1c286ecd2b00fd82af56b7c890b4e3926bb02d21c32da9a9c828a888d8e461e13309fc9a56a1378eb6d004ce97049e7aa8cf927274e35b640e8e9582e7e1f5c075e58ec07401a5f763239aaf0be910d05149413c313fc709846ff67d38f5003b0d6ce8d2e59d3938c3f9fd1ad0a08747128445e443213c53693804b0b6376e0b1fe6c2a81e96dad128868bc72d95a8a9a52b3bf8ef5ffda62593e4ace706e18bc1add4e447f769e4a24e5dda946168d991a92fd04a30cb01f0205e434e62c91aa3b35e76f132611c07043fc9a10ae0ea393ab6dc388be8076e9571c601d0562ab265ae0635f8c4d530d34631f46ad5cb7f9d413fd7c6b76980dcf79f74f4ee8950608df428d011f8eae9c471bdfb2dc5af274f0d683f92bb70d7532d15671cce46d8b57a7ba5817e03c064f6b7b28c2afb33aa72c9c303eae02121a860790510a9dcbd62281579b8fd318af635b4709b72489bebb0a984b7f8bc4fdab6649f511d976b5d311bd2be1b45c940f35a483c7b44063b92d0b6883d7bfc8f30241c0790fec70be7f57cb1e72fafe1e5d16bd75218c1c469705261e43b7c37900f1b995fcc2c5f60a5ac5324a0d3ba9635613f125358f363ef17ec274aa587510853fd5d0b555de7a979c0eb4933ee9ed7e6319ff86f090e9e80e0078f5ef5cfd2403f21598ed263eb8973f542753f7f59e783f94afb99f988fc3766af3b3a0fdfbf50d4d486e171204a8ff60c2b0301b1447225969cf14b1278c105f7187d16a732d08cdec2a6bcfbc8045df789325e414301a31af88504d17f4d246f8efe6273e72da06110cff4fb49a24885f211dd1b75a65276b5909afc986d706418f72ead166a69459805c9b26ef836b1bb7b3f1faeb9e37c4f46e8a82da3a4d6a6c53b6a9b8b763410ccb7109191d44f4f24dd105f668c32b7e895ac8df93d3402395980cfa05d5d6335c06f2fb5bbe1d84b191d142ac43e44f08253c1613b3c4c990f1830720635c02f5b2a3ec393eecc109edd25f721107a8a6ee7875114453c23e2b5fbf36a220ba9895b774deaa6b4fa07319a7f5598d861c5990ee81ad85ce0830ccc05f3994d74c2a0c0012832a57357dae41c4a0ee189efb04add028abd5b4df1d59f8a9eb190b3a3b8cd79dce806e1e8c45e3e094f3b14b5337d09da9c7aed39dc5855529f0fca2c2608bef8b94422e2899e56400087be1be181d1840710b76113b7b655a22c65ddf13e3ec7eb930cbcb1ebed1243bc726e72c69472c4bb250a5654247cd6b19f8aa82b493d62b5372f9df198f553cf7d8d5a4a74ea9c0b291eae6d21cd6ee91b03508110a0fa1c93eb60fb03bbdc14a2cc4f6c3e5830460ba63ed37aecd1b8373b4cb108471d6a3e438156fdc510064ce1b13b1be3aea45fd2c21ee44df54512a86775b64521281f34e3d13a26ae99c4542293bc1cd983371a2fa24878a452eabeb465754f8986cd8d7c057d164555c5288e933386a28ff4b3e36b5c5f2025e22388eafbf70d32c242bf41548c3e1edf4ae5f75a98456b7f5900e673eec551b1f75d04c91aedb57cc7bde5468e4f92a7df627bf7c2ac72262ab81a2f61abea573ea80e7923a101bdeb181ea104c35e3090633be8aef93759f3ff3b299c4b7995fd3fc9ac34e26229a7b75c0f93977164ebc306d88d50be83e0a030061af0081ec5642952058f28bed9a4d77ad962165c563ff729160442e64ee0f1ff3fb60fc4f9170c5561fd3fb0a42cd03dd78c8dea7ce960c859c53603537f41f75fd184fcbd1804335ce2c82990d73e57948022b5b6db2d7342c4eb359359ce40937e41531b9b4aaeabb5b5d1e6faa888075b3318cdcfcba74364f49a991029b23093a991784cd98fbc469ae7a749873ad56a1750f5b4182c7788db21a0e2b370faf799117685cf07bd02b52c91e8aba868bd153e076ab21d3e7e78ca2841a338bcff71ed937b87371d42f740ef22f2c1b20e89e198848e8bbdacbd113d3315c15b8810ead3a4635788f009d3d0fbbeedb4e7df3c06de5aa264385e070c07a25b74e1e9c85e89b7cfee8846c38a453f349c2f4e84c4ebd47ac29a4005ac69b3dda6346a5cae74ce97acf88f179ba82d0795c296e3331f315ffbbac1722ba6452c931bf95189b1f0b05c090a617035dcad58a9bdac63635509cbd81e64ddbbd1c55441b24d2723ffa4be205950ea6ce1e1acffdb26f3bb320166287d05aa1e1987dd6576feed92ab91c7ee23ca2644047376e8f1c0ccf0c28ae37ba48a37675e92395b95b746dcd1d6669f62e979ce5b28a644f24d559940b8a37072896dc4d2e53c6ff26b1fd177d5acf38a226b6f09f4cf5a577e1d0676a8932b883a871e92c1427692fa1c07de01a0678e2cb08cb3bb8d1440d4d27e3634a2f5a35e3c609382e6aa75598d678ca7b32b90b6f50d2554352f3071213bdcfcefd84a3a124a289aafe2fd544ac37cc6e9f3e1579b02d37968da4449957b4fe1c578a28e384abced83dfe07ef00e690d0c1743c3c9bef28d8cfe253a1f624adeb411ee1b39fad8a20a739ab969828a0c78f9705981cce47f2ccc04bb82ff4562a455a031186ddd0f34dadc5d59997adc83c4ccf706a86294fd7865af0b342ee23a6bc69c2ec7385955e7b8bf85d3c218408e9fb7343d8e48b46080e22fcf626e56548f85e4ee878c2df12a6919b753967b9a86392741b609e8a4096c0455c7ba6bb4bad5f1a8dbd7b8fd1a89c454285a6a81fc11af3354fc9c0ae9802f538510f5e6636fdb8df307cab62346e4608125b19c0bf67c1b8d5cbdb7a16968899edc5bcf8c7cd0d4d03d569108fde6736b72b3d766a4bcedb8bdb7a725827616de7d5ac81d8d7d959e08c5e0cebd028a52e8dc4b77e07d061d5fb1cb38b59864cd0bde35485e5b298ec78a08d5c5da9cdde2c649e878f1c765ec425283ea382da8b47497c408bc581d92ade997552d38838d93db2a6b307de1e75dab3070bf96d234b14a56ef2cfac837864d4ce35da4ba8243262a9031046b9a3ac1d61f4a25c3ffe1e4b4e628fa2ecd87da46925d14201f8c6fed656258a787926af0afb84e8a4359be0b2e57bd789aea63bffe2f27e0b3dd048e8a72dd80aab3ffb3a493ff47dc70a2820f35b44f7c02149695fa3129fb0599265f3b5eced13415859cd8b1d6e64e1569327896facf2e21d312f5ac9af7a77cbaa6c0479e40b358e75a7716738b3262af59c3fac30233e8fb30446bc1e12d00d0819791bceb83055db2aa66a1e943e0be03362031f9d198f6ece3796174c4307865ae2596283b12ce87da7da7513a5f1a8de8dbe61eeca533a464cd67a6377952873f9d574c2955d4466ac5d8149c0748cef7e566e776af903c8a4c28c229f272e060e280ba03986f65422068419aacac6d0c9ee0236d4f54f59cb9d1461a2945efacf5ffd6c1ef357ced706d360f7330a1b84a998b0b54ddc97b7bc93e053488d71ee140e57d1f5d25fbfeaf5d93733982be60231bb5756a9334ee8d241e609e23d0221e7d5e5dcbb252be9f2132064f13e142fcbfd35b75cd0e130a906ffefc38546d62fe3ed39d693d7704387d8b099f9a1ae81d84f688801c75368602d0c24962073e8d421dae30932b06feb3d4c574751118652bcba5d2c4515f8cacda67fc34d1f35314ee49ff2658559fb148831d6e7820ecaf3040770121438f7da40e8be1c427a1f0a88a4abcbec3466b6a7447df3313dd3d896fb058c255ed4290c30de613c83d6751331a19ed3b916ef522b82859f532ebbb151ca54c42b1a2e44403cb1f13ada21f8bbef060e79c7eebffd303afe03b14bcc66f672de4c62739f81839931e32bcece570651ff7377efbb4f36d65938f805781846b82f6d7f0c5db3667900ed62d8ee66c4f73b02b2a8baa7846470f13a864aea45c2f1264c2842cf6b64fb18251dc7c04d9c8cedb2786ee80490ae66e7074ec2e3dbc52a5f2f208eae193c5b3baef4a2751f49b3274f3a6737a36e909241e2105c66276d17c27696d0463a67dc3d055d77fbf3d405b417f1dfaa71d817b0cb0a85f552604a1cb1571ea9a9de616640e9c0e98eb28b97c31a6df129624e91d3e2267ead9be01c3731939f5c5944198461ecb2d9911cb6fea764fbb5d1eced9db72b28c47a93e3be2593f69dd78d7d7393472aa4eb92461f1f109a31175bc43c7670ece8d0e53353f5afdecbcd41dcfc0103c397c6abeafc14d50152ab1a081c398b910fd06df081095cc84a156ae040bb52002abb88543c0004a249b883c8c5bf0e19e57e405c0a3a32dbc540a0e452c914553884d931e223180cab23f00a9d2942636bc9c35eedd3c8d05a1d4910f59f9940880a66a4e4ffde03cd7e9c271ae82153b9b6ab2006cd0554cc9163ae049936534e1bb86c2d7cad5ea7bf80971ab396208512b8d6d80f4caa6c196f4d4619c989240fc8ce33682ba89e57676136d6681a101cf3ab762f3c1c4b76cbdffda41f5cca332552d1472030a27ac2e96b96f3658f6c3e7198c913f6b8904d76506a2e7cd8bb764b0eb1be443610a7423dc4ebf140a71fd1fcfe7332bffe7d8960c81be147732552073499cab1c8b906bca6ad4df2146c26f8bab59cbe20a40a7924c794ba3f0165b6b3085bc413882b3803d914734c8b63aeda6adf0667f658302e11115a526568eaa23e4cbf836ae1f22cf86d773cdcbb95b9e80b5b1cd3c1427ecb65a41a47b91b8b0db3e68a378a3beab585210a073577e121c5ee54d2cd875de2e464c102d6d46c4b9666ecc690a76780639ac9814ddbb0f545918b9f8f56c3e5b07581ff4e47080d022c7ab54223c7e7712cce85b5ad3046f440c0b0503ccf3b543aff93b9838e5a2a9e47e3a9b3a690f78a61e5353e475d6a821819a0637498459ca8df5f87e427036e594ddad894ad5210d0b11b76909caf1817e17536411ceb6d41b20ab198248c60e864907653ae21bbc0be5a529db8169c9105836a5766e7a9b45762fb270b92f844ac1fc1e579a87354179bca1bc3ae7dca593353e929705b19080466c2fb04d6645d6eba842a21a3d2283f06af5f3260a2907e6e7cedd20ad0bd6ef527c44ee7b654f1b9b01abdaef33151bb1788ce96f4d42d642454fa06c967b2c3c7af620492a5b2df7f4fe879a1eb5f84b648cc3dfade4f2df3754e1d1bf2f48ce3df98c030caf4080b494230a7bfb0e37b9f4431d979735191aaae09b8927a05157b8bf9223c1500863d37316ca81b002d88e36df1e1ef265fbce73dc236ce3a6e9e208717105c7b61455c40a556f18e55d22f7cb448bece89fd6c6dbab3b4254b1feb82bdd0adec7f9d870fbef893c576d0333ca49a4824e0d8d3f0fa29be1e6f53c4227a716c270fdd873b7861b5efdd4b6328dc1058b1de5587af907bc8d547e9c9c961b4186117874163b8117be2ee1c481d641e528a9b8d31bb8aa314abb365aff9969c555e44ac44cb08acafe5efb4ceb7d891acc6424ac2b528e7c5d93f58dde6c01c1541bcb1f04c33612eb2f577b85b5224d7b40ab198cd7da796c0ef4441418692864eb9933a4cd4d1331fa3b64e0d91c4128e03b48e2eae7ee3d6a190e3f8c4ddcfd86b1d684e5c97e9d35d57a659a0a78a1ae42d5890b5d7122b59c33cffa021ee9f8d62a52ee3fbb20831dd2898c2575c31757854ae4f872ec90826a12f6638b93be7a26c330fe6fa4dc67f38ca1a0c07dd8344af018cb50bc5b680645ced303da139891475186ca4dd46f95d7cab675df0268568d21d177e9914b93e661e0a910d21fce430f8e1e7cff62f0cc4cc001924d4f4c30542bdb305c3f9cb76ef5e3b68e94874aca0b01fbc431f5a55b4b298ab10905368e7f0b596d9af26debf6ee7a3c211dd4a3b73e345f30183e2ec7395e3aa595837b4cc24f347cd36018ca28066875229a71177ba43d2ddf53cc330ff076675bc54d1fd5e776854032030a072a3306095be0acb68ab37ebe79d9858a262797eda1deec6ec49e14ca948e8b38559bc6aeec023bd4f4ca264ee5797ec7015c2ddd106b65d95e1ec15883ffafad8fbe741986efbeaaaaaad2c9a82f1d41773a9b504ad76654f3ae2ce4d8e68d69e358ef88caa86f1e2cdf0c73c676eed997c5fd559a58344610f86102eaacc7f7a45cf53f17b4dd592cbeb9d6aa1cf3f56211564b6aec28d3339494746850e2ae5048c8b32befeb056e25cb3379020af72ecdbcaf2ea110def532acf608032edd4f58a732d68f478c2578c22a348161ce544b7eae545375145c8962ae513c9225d87a4213b0331b3fe45b7562ecd27c3d6e792c512a224c2a80046c166fc96d769898f980c51f201ee6a1d8039659612762f1add3c9116c9a9ab2bcdfaabddadfc70ce18009d87367b8b7ab4353409d337e2278721c18728ebd60de036775b54bc812b863911351c640902bde7e01a37d61669fad7b70c9d622a8895224b2ced0795dcb7afb84525d64752aa9fca71e9a69b272a3c7c0172eca5ca3b9a5b1c2de77984f6e7eb6801551cb40f58ecb6494c975ca12aec1dd58d2e18ec63d6403365a1312af976c7e3a5b526e08af97fbd426972afae6c6a1821e707a1ba632f5e98239819b66404d7a98e8db567b0daa49db68eb254f61131994b47e67d6f1a92b1f27851adb4ee2f7bf8fd47d2e850ac4c4458e7c6932015bb259d5611c70860acb7712c923da33ab747c62765676f5740c0a7699f503215dc6e371e332b7a7f5a6fdddbac9c860fafe2a6ac1dffb6eda6a11e9fff2f8d41d958e85458ce64160e2daaa8d78720a3c80ccd18a6124ddaad8bbcc85c90b219185f0d8b1a54acda8952e0ef305aebfa78bb1b76ef78f0f22f8cbf1d64b86508b4b457d535c6c36db02c5e3f1eee65927f1e571c61dbc097e76599169b91990033ccb3a8cce18047274ad80f2d8c0d6311cfdbf709a0d5e358719ea7728a568bdc1a869307b6a1d1633e4ac55daafff5fac1155a218b232ba4113fbb47e886616791a6de640fb4ab875edcdb4dec2c752090c8864482f5e56fa0e88b5bb5ef40f1dc985e247ca86d74b0c929717c343f20efc6c0276d24e8f62c08c92bd283043adcd2522df8f5a57671c216c3736225d79c8131b66be99905b84030c41235cad081f909f6242641ba2b5654344762cea0ff54c8d61c099d242dfcd10fdc9723f1890f724834a464d0ec30a11f428b92d83fdffb7d7d618b969e115d5289d199365fae45733a473edce6abb4840951a05a1938d04dd038efa1294e542349bf17458da3119fd918a6ac995ca5c5137657c6f84379e5a4d025a3fc34b150298ab6d2bfacfa19622c0fbb88d2e012256a2cf77d11f767add6590e242b566ebe73aa29c309662f33e1fd2762a997fd3f16fe88f7ac4afd7b1bab9167b555303541f95ce4a9e99707a022ee0c2b652ddf192869d9452c49a6c17cf628b53539eaa8d8f2aa7c7b504dd29db49a74e051d82d7f4ab15e9ec39c25ddca064ef5b3a3e862d624d4d16665abcb3a4f958df4569c208606dfcbfd9df6d1f0d62907e43e6ec2bd9ff91d37fb4b3157ea34e4947a8f50f08c55f1d0558aac52e0b495008bbdb98d4e4ced809c2cf43cca714634f49f29a327d8f453f5cd9f71b38b5a0fd3147f703cb00e190239330118b9ba5f70dbae84caa52aa1f49f11a7d7399bf8e61d231411e8524c920e0415a52abe5e99dc3e4b2f12846f4f33707fa4c464ee51e8c711be4ed47bf5007c51018f0c3615dea623e3a204814292aedfba9e68da6f3e299dfa3b723dc975ced97d3d4fafffcc4601e17cb683cedc22111dfcbcbb420a59e90baee675459f7b8e7104a9b9cc118b5d1d9edb570b796fa5edf30832d3a2f664e71240b863189de37da9a4e4a9bff787a77ad7036314a30119149f2845b80aac78fb99d2c0d479c0cbcf9c17144a973a38a72fac4e3bdd349df1c38607d8f63e49754718ec47627d42b704f78e9692c5adbead872ba420bf8bfb42cef6bd4edae17fd89ed611f361d00f75aa25c6e5157e8e2cbbc6b854e520b58c12c5be2ffd22aae917c87245ddba128b8d31388b3b0d6c273aee5a499f33cb5b69c164564553d34c32a98408ec1a7f7a0ef0e0dd3b5f91ffd4627f9633813d5827fc12089593223cf78475b6d5d7f406c17d8821ef3ce94a12fadef6b34636f9809359e54434997c460a74aa665b1e447b6676a62a22221ac8a2528e60522e40fabd3c0b4da4687fea69b80b90059c68b4243e2753b901fc7a352aa59677f4666ae06cc85756ddeaabe5df939ce2bf56380dfab623b6a2889a20ddf003631a00458269694a1e49b6fc8e4572f21361943ba64f8a30905f2c09333d60c4aeebb6a860f2803c16fe3139081cde6ac9bc1718439f6fd735147475c96ba6f10aad34cb5b86d87f54fa04a50135fe7600cce60de36e557f7216a43acabbad4c6b621a12a7115e32415b29a4a5e90537d6e813742de37138851938686cd4397d87000aecdf84603c71f16eef9573c3a8c4a195bd25d7b8dd1521f91a35223fc6ce82debe22a30591dc413032082f8daab5f030bd4b06c931aeea6f4a551e16f73b9195e26c8bd1ca2bc844d8b6d0436b5cb33d3e7625399d229642c4d989fd387353f3995e542d5da565b446c8b80469af051ec2af8230ad8c9b450591844756d7feb3d622af30316086c503b31cae96dba2fa230af5c006407df65039f840bfc887183d690e335d5aed3f51746b5e0a46f1e2ab109ebc383efd94edaaaed14457e236268e0185818cd6bc2f5526104a65a6a7a5478b080c92c6d361ffade46596643486f1fc406a3bb138348b3811e719afb4bdf2b59d41fa92caaa5465b7944e2f7ab98092de65fc3e21760910a7716dd2aa80b977f5e3f190ea0e0432a583b6a8cbaab65c1c686c4a18dab25e32d80148ef7fc38da1a7a518df04ba4b353c931382d641ff16d0b055c8fa6b45a728aa4c0caa350e2ab2b52188f5db5e2bed84593f64b96f9520d2c712cbe23950ecb781f0562a49f5ef4489b6a765b128f4e144d720b8a90bace5645da0f4ba857990a7f61ef117b3143c6668e919b4e860f342cba2389277b17fe1e7a6903c1d4d77f02f841bb8e0b7042309473979251b2b77e94fc1cc4ecd2d280036bd23c1d2a279a7d98812fb7b078dbc0e08beda77f3ce5dbcfbd20e64b590cbbef131766ab393b1d9b2b1ac9ab9529b661030c1861ff6add69d3bc808475c77834873df83d3168c1e5e97b99f069db274cd06e9093d4ccf45854b3858321a79138629fc5af0cdadb66ad8e4699eb2acdb1d4f80f142654c667a6efbcc9fc0d78515095b4f5ad56ca990832daa33e3a5665e6a53ffea81c088e1ecb0986982af12e04ac1aad247dee39c17a3f84880f52eaea6753c23ea8bc886a986113d83e46bab0141cf151dec00e2fa7df5fc02ff91d133e7b74f182dfe441be3dc8764d51223145291d99753306077f9fd7b7172ff1b519e7bc7c9b82566fefc24f29dad144250ce9ff9d66c97093d0f5dac8e18f1b3e413d8a2e63910cdbc4885c7d82e5e1f6cbaeb04c7e9f936b0d48d15527065e06c969d6f98cc5137adc042c864403e0f671d7871b78d25ce7913e528aca2c30b617bb13dcbe0ff8f940241e32580a58c968fa68cbe5b3ce7996110b395f67633afb53ef74e2c97eeb22a1216010f0f6c42caccd9efea034e39335355296a155dd8f013b0b8b05fa5778ff8ca639f2e4593e72d7ab3fe2c2f7bd4df77f620fc3783a7e8b8b96fd32e2c336221f6e43d8cc669b71c6dba8c96e7ab4307c9416a3bdc0430bb2c8af56a20e5742ec6df601d6176eaacbdd1d7b9860c7f87de27d6f8b1a81f2014bb71c9244e9a94c270bbdf5fb7a311f1dce9658cffdf13d37b5d82e10481f7b7d09d4e6a62deb3a81a55e288b92eaf98bb85081b289827d7753bb1d756c1a9386b2794c21d14275896bb8144bfa644de784897c99288eacb04a1b31fe974760eb77ba805f975e0686edd44a60adc7f73174ea2cb45e2b8dbb81918f5bea661b9d287614b2522c6235ef4e702aff54065eec0eb74dacf65c9ef5b958ce7a9af9845947fef316afd33ce6bdfe58c24e6f5eb0c868c10fa5fd9207cdc1068e295c1d9603391ce1e8ff87d1e677ec2a8003c8e0fb69d3f0ebed16b41520762a1039b46d9e90c50e4169cbbe09fc79446fa0374aa916fc57b1ad8af03f7c54395cbffff0c3f3560d2cb22f42a770d2e2887e06960822f1803cae8ed22be4452b59a20988126be21ba7bc3536174451c16ac011aec52fa30131c8983d63a46087fc415652907e49813da2cbb65ba2ec0fb1649d92898c5b0ea415c31073aa9cd8c7ed2b8f446693383a306694b4d280f94849a59fc7cae4963592f55b6fda60ac3e3303922033f503c3112a54ed9e8b6f91b4e53f54cf48d654d502668405473bbf0a541b381ac68d2f6e06d2edf0d9504bc2948207a8e915dba4a9cfe25aa6a2f99b5d94618190cd5be0b51ae668bfd828788c4f1c12dc1c807aa1ae4f665055c95990eeb836fc759dc50939d8c460e4b3fe1378c5b5ee6ab76bae9e10e65e47aaa0c1cc5b120868af4daa6571c95cb60e8fd5a093a7084d0ecb8fb17c4e94233e4c1813e9a1ced4ea083c9f1405aa45fbbea9d77acd203e51387bf256ab633257ba90ce27be921f0c91c8241b083b35ace878c28534c88b8e2842295c11476d300013958eb4266df4216c16051db923c3db2b01ceb4606f6d0884f845983b8f0b48f7b17629e6ed832ee0a58e2aa9d7f1e3d09125bea91b1a2756c29ac028d5d095ec4ec2bf01fa4a76e35e67bd119b85b993030c123ee7457da88847301e7f5c388cd78b0d470c52b716841c8df93b540ac93cb35e72a4f7d901f0f7542765c75e1ed04bbd30f1bddd32b7e614494235ff153827da72d56647df9ca76522ae8da1037ce34fec6c7295f95cfad4751859480debdd94efa97583bfe022574e6ff359d3eae9a0e5c3bb1ae425e989a5268dc9b171e63cfc71c78ab496ac0cc68227f9c974b6a8ebb97e8de7d9438024586ab190f5cf0718c7d8ad3e081fc0376a9154db98029196d3771d2732750efd10540a70e9c4dd2547c252629d4e43e9a1cfcfc4a0f7f42dba35ba80e091f0f9b5ae97c9a7dc993c29e2fb22ecb62b8d21903f5a3ab313540968b04078c22a498871d21f746d5be9035a76f9470b3862544e5265d79dcafe24a8a3a8d61ada78e00f2bddca42d79658ada50feff401b4ce623ffef9a133179d3ac3526f08f63a90a12097559778925dd0515764fc9370ec5fef19c95d1d4b70c5369853034c9703f72fbd19208f22a27c74820058c6d454d9cf174f11b363f1f5dcbda2de696306b40df9aff263122ff9b7f513bf705a52bcf10db17057d8e6d66273f82549d29bb1c5d3170e52fe3a6c5e131fe2c0738af2b93ce7f82984f57a255263fcb47aac314f327200fd3297c4c3591dc16dba703c9426de66e7230cd5408ac43699c3c3e185dbed68434847efc9ba0245e0502c4284b40ddae428d4711a54c73e39d9493680b8bf4c0e4396954c1034e0b40278c95446378127eb8f8943414e5cc251613e46d3872333172eb8c8135cc8611191ed80d97351b83241219154bf53df9a820ee7db1a65b901292cede8bc9efcddd32495fc8a2d52d5e18369a22c5bdf21d957d54e2244e3d9d40712724658d31de73ee3e51f2970f730f75c5d7975460e02611397f97af5d0cd06e43389c7139de840b959b03225c6aaa890d07953bdc119fa38af692a860fd477a2ddb8c11ec4b5921a2175e0c227cd45109fe50442d1339abe383e81edb1432e9da9767d371ab813b4955b3a0be691aaf8dc64be0eb44e21a279b7c36948df0865af1fecebcd92735e583eddc11e13af83c2055b7b0fadbdb47a0f3da068a17bf4281bf97d49dc515f625ebddc66f4dc93de4eb4a2623e11c9317dce9710edc9ce646bba91c681539d749f6d9c6dc277843f8518aa51f2b74ec5e2f1848bf5892419799adb785debbfdf33d7f16483204fb922c0eb57cfe680b849eb68fb7742d29ff7a8e7147d7b129573f69907a28c6d340749023177ca8c656ec80aa883ec0e5ccf38a8810302b1301b4da0df46a22c62f8505521311e4575bf35f98da29af2ffa6f8617bbb76ed84a95570e2b1a75f8b253a08e3c25eb886f8bf8a7a445f1b1af5ec7cba84b00964536b6c1a60606a9e1ffe37825dcd33498c5ef2e508fa694b1f927afbb288f297345c9e4afec9fc476818f248c28c78e26dcea6dc2f6ba3e65342b727e62be0ce6cf050f5215dacdaf4884ce604e804c68b467895e646989dcc955c24b26206be47bfb9f926aa0bccc41e6ac7ed1fecc5ff534d028b8b40110efc494a6ce368cfc4f71a80cf7d3d87cb0cbe60638052e341e3c1fe8c50928d50463b590da59e51f824c39b6c43fdf3595fad71dede50d5deb9b08c09d48921d613f210ed0e0e9bdf5135e9b651c28de684dfa50588a132645e1328793df4839d51a7c9189b8331a0527d9613596298bedf3e058b39f3928d59a270a05dd64e43feb7f5e91d41ae1628f34f339a656e0b3c734ab29fd87fdc2356fe919d3c2b58f1a1842948cd86aba5fefd11411b397efe153228e850779164a80735e088296aef61538ac616e71aabc75966698cc69433ec1786fa7f300722cd33cc92f439c968bb4f0aa40e6a5b648473f6237dd73c94139d14dc80dbe5eedef578aa778e820988b1e722989b12440aec25fd98bd4f639f08032fcd2d02e2cbb83223cb023451ce6fac2f7d84d7356e8963e9b1b6c29666d8df29315cdfb687cf78ebc8b23ce451424dbce87f17672aef4946e9608443852128bf2b982060fd7093d87f6eee4e7b75c4bb398b428350278e1d1cbaa04183cd99913afc99551e5707dd4a8214eecb6c9fef9eca28d0ba02485a7d5bd3ee0d4bcdb6c8b511ca43f01d1421b05448a30907f4a35d626e2ecb12dd12fa52281002fd940cd8484276dd100003ce42b0f292ae8e1c12b00d6463cbd491e9b63d697cb02dbd4da5d6888ab32463c1a6e1bdb55b07a88e9bccbedc3c948fa44ad9acbf224f5c953259af2c51cdc4ad99649c6908f52f39010f288f474bbbbd9b13c358c6eae318fedb50c907d0294616b98e4e80f85baa450bdbee8659864e6016a45336c43e111c79dd023b00980ea90e662a4471e6461a99771cc8d5b99f1941d0b4873427d7704dd4f8128eae5a23a577ae16c364e919f855202a87d93a300058381c2353754bb9a7562ab336d016f35df93674c7fd9487cb1c0f9ef2d388648aa224258ae74d6b79f07864e67d73fe7fa2fcd447e99f1f7bbdda60a3d410609e40f0f772f01a9f019dc6e89cdb4c55914e135d3aee201291ffbf787d679e4b7a4d081703ddfd781ea6dbb5f46bc001315384c2abefb20b42eee8cec6a6733d9aeabdab5e05833d6531e5a41c8652e09be5ffc2fd353c43b760eba4c632917e45ffc84c6557bb915a729392415bd5c9818efe39a21892846522a2ab844d2fd759841169e2c5e930a4544319ec8fddda58fb23f503531259807ac2dce16ac4505bb75cc778d5a2da1cc028fd022002c0443ff4f8ae6772eccdc6e72b17db8b741472fe810195c97ccc134b0429468cde24a9c8afa1349b4b4381e872338fe8b7c74bbd5f7de12ac6f95e54f0c6de92266ba712b4d371b5468f300225c530c710d097c61c52cbd436a9c327f7568c64cbdb7f7083365fe5ca2bb2ce3dd0d718bef9483efdf6ae5120cb70ce9a902e2104f0445b596adc067e37b80c850e898a4213cb9d67584b47245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395ee72ecd530f0e47ba5da46c052c26f4b9a953459ac4f6afbfaaece45a5ff82011960fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5edd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a9901bb3801c1b6cf9d36bef650e297aff61dc1cbbb9789d0e667fea057a262e39e86100b67666a4d14507fd43f105a251be7d713303af0581a5bd3b0d787c0a2aa9fd4f05382315c0a32fa3d77d08b9c75b190bdbef49eca11f61520db974316ef5b09915985fb3f074dc1ebc48f7796722a162b3f0263d3ffab496fc54482b2494bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d6bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b80b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d9175b80f0fd759d48de2f33001630dc4905ee3786cc6097fce981632661195691ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e16fa4547451bf5656a8624083945404367142c2a1e93b9e46c479ca81ce2b15dc862700d6dd1c194542bb1b7d6078c829857f179d549dbca9f9fff56d1a9bbd4905b9550f7574b59e8be2e813904f46198fb093afc816a8df6c92211325fffb8cded840088f864c7969facb4e46c115cbfbde5370b9617e772b077d62be3df8f049d5b2b6f178eb2ddd8e0d32c2894d31051830bab7b131979a636527a32cd914be8c093277041d16fe28db29f6fa8f905f4c6b028c487daee15cd8adae17a81b6406e399005db9ae973c5ee9872dc996129d1226069578643f673d9038ca46a17203b4ad62ae9a23b466c6e5d8273c3f3525073c096b52e7b06e80f09a7f945f078dfd7b6d81c2aacb5150c898f37a17ac22be28d013d772e75f5ef0acc67cc624c910bf0e2584ad7709fc43b875369898d663deb8b1de1328e47cfcd5cf6d3fd97daab3be354e524f76657059aae49b92884a19fc1edb6a6bc11a8f0d078d321e2f12f4b25ec9424f5c34dbdaa5cc64e4137f041be5f18b3e6cb5783f0fab9655298e24d49ba6b81e85c73f96c38a354d01b2d6256edc97c7f3ace7719a65baddd8b12fac3177f55cda800e7beab755e47c0a124e5836d92e407784fe9249b750f3af2d93f048136e222312ccf4b73395d043977551a72fb80cf08e869aced8d19a7e71032e2010256043e2e2c3e7b91d615a1f0a27b096a4169899d971457227db50e17e15b41fcb8c021ab1942ed9ff47185b2decffb701acfc4d2177ad16f8208839c92ff5fc2a3b2bdd4569ff1ec09deb2abf8d5022feb768157927b0e4e2a946963525f5bf94c71b18b539e3a242717621b4c39e2503a8a0c8b67a4d649104fa0ae61a7eb14aac6f7fcb7a82fdd255f7c294be3785ad4c7ad8263f6dcb2505706e585c1d0a83decdccd78eab1ddb47903145cb22e7b61f941453042895bf79b0e17629b896ffea7726674edcba7a42e93b0352506c648a4bec7a491461ad710798765079f69a51ed864ca3539a5e044383f2d51b3c60dacd300f6a02824cdbdbb8675ef6c213901e454d4205a24b785ff54f2ffcc22e011f860bd6f6c2c7888132f6f53b6fa84743c0dbd8e13009652a92e8256b84b235aaf9366b3488f836e09df24e2d80c5af1bdd7228857acf488d5815d3d8244e6fd3feabe243ea8c4492d30b7b9566079d72fb32fc9ad7f6ee32d73dfeb15fd52e36ab7b9628b7aefd55ac894eb3186d4815f08ca5bac06543afc01fed7d2702b2053c686812486db0f9241bdb013fc1a961aeb0385d671dd3f8ac2752ae1af263961c4e056bb82fd29d46155c4b526772997cc9c777aee8ede713520f00b34ff856f4b8f816aad35491cfb852598a9a0222878967072ea1e544e626a52d6e9b74e201b9606b86a899444285e372e9c4d714620bb217611ebb360309d80bf99dfeb64e97362ab7e42d7dd18228aea7cc18da54a53549135ea6164c24fffb0f7d1af1d3131ad44d0dcec7329ed0d761ca45aad69614a120631c179d916de0241aa6a001eee6152d5084327fa6da28fbec48679900f86af802aed738fe903da54c6e4ee4eec51c55ca19f6bac958d0ee35eeeab2cdcba0faadb149976f7a187b8cc109f30317b990fd5122bf285e1dad10fbe50b34024bb77c35cafbc223a8b152868206b8875e23ec7ca902027b3a169bcf541dace358934e87534d35fa28805e85953342324ab19f4186537efb01ce800bf4bcd9eba42f22247a3da26a0ca22168e6be5949a87bd086d181f32e4094bbe4ca0fae94b9cf57dd166bc490365018fb0aac6ea91b9b0d89cfe0419771f05b9c953284bc1f43d334f4757132267131f7514799c7b17f3d0922dd79b1ff3284a087395f296821fa33ab0d607a504a20feab165347f8043170f6275bd0fb61debfa3cd99bfc996fa5c3e073557479039c3445683721dbbb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f28dcb900e903fe30544817569a81caff5852865252045200b560c475c8d5bcc799961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0ced786965e36da745834b3a4f762e19b88ce9a7495ca7d63fb93c18f4decf93c709679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c411dc4204a1cd104017817eb85ec72819139f578a7b2308bbde3029c775658d0156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0870b0af69b26ff365284413d4e8c152c32c343d2560f6e212a1ea2eed90d4d132ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5e46daa30383c0370d1621af8de9f4ef969d2e29a6304e76805b19c4de0b23cddfa89afe5606cd16fb841dae5b83c357ec47f85f9abc84ffacb63affeb0d90d94d2b632175ccd85d9a952d3d17a41c6189375e5e672b8620dd4b81bc0dbe95bb355ba19993966103991811c07ad608b2c222b1a848959420df5f4301dc32e1f5c8ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a0d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0efa5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dc116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c81e3052a62a5923033703d8237e53a0640826fcc7c97f309078b39ce04802310d87a7abd4f3d2eff93162865e9298aa9761ff5d708af47bd8c2a9217d7f5d57b63847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3dda17f6c533c90144066c8cdb029e9bb5074d40eda1d1c36bf63277fb217b781585d9e418765f5177dc2924931e55ca65f4978229bb19961222644e62c888f8b4781c238c4aa4c6354ac975603567f56fa0029e51e7f4d18bddc1dd584857aedff51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa69465a9b252ea1096b59ad7653f14f2b2fc684c259889bd8fceed9b63f792fea5859a41cea51335ff677181dbecc9f4b4153167999e469070e242a4847265c7d13399335381c9c71fec3722fc62724963d3d1543b6ba0d2ea885e6990447fb8c72061b98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a670c59c9598c5c1737e2e056e275976e1c4635f13a6f5a1749fcc7bcf76408d41ccea099f586f33723840f2e06479f5e649c29543f2bbe54cc51402a94d5fa8aa32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f0521abf30ff19c0833cedef2dbdf095f74df68042755a34986224753caee65d76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f595498c71b0829e2ef0f0d6b439111e87162411a9ff40f1a686dbcb84e6ea08864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa83685204dc41904214a43b7b5f314c4210e85573f8e44c299cb50f70cf1b72df8779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1dfdf5eb412ad15679cf3eefb0c2cf028728fcad67667bd983013afbf958c00c8f29450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f2977d41af0f71a19e0d327b3790d43f0bde1b385c7a3bb9c40b40e6f75c724cc898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade33601830cd10e103583e2e0b9d1116c1bb20d14909824d4af0e66746575beff87acce6badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa619211e2aa87c2f18b2671e8fe2f4525d58463db70d9c502ea503388ff3f61df95f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc82164b39a87fb9f9b6719daef964e29f23aba514d5566eadb995d6507f7008d77285df51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c082da36b931047726850ccb98c1e71f8095ffbb9c441c0705bb8224e9aed7cab9453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123d732a7280ce412179b0a0fb56ec7ae4a296a864b2067f7ec15d1dd36c25a21033b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c3c6e398b99be7e338e8b6dc1bb492597d770f990eadd4aad6b0296a45da4d2edccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f6a1d429fa49cfbfebc93779590bbd3bf80865c86db43454b9edb294f9fb5e302af6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fabc15ed1b11db3c8e14e5bf1b9781cd884a996bf850892528bcc0ce827fedb40d983f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a48b7aca20bb20446e70ffd55db62a40eb7526c84a670eb857abfb51711f44877b10196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd13eb99165097a7ebb5baee4ba15169766fc3a5ab156ccb8b547e9d03f616a4ec0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a2e4bc4e001c8e5e0ea8ac4e435260c2f11155f2bea33885ad1270f3bdfa4b655306b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d82f0fb62c039d2b492ffb37bbb0e659bd9ac899cda4866bc36ca8b788cfd751b293c45da4944fc51bb777ae7911e8fa117f20e4ba434a3f843f53bdd484e5dc5d71dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e359d4894a377e057f31ba8d1a038351a6d45fb2df9eda89cd0b37cb232293f3b9987ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa3fc857726eef948093c90fcdd77626d6a4d84f0390ad7f57efe2b8578fdb4a543177abc985def1417f9a5a39cbfb2b33c97409ff2abbdbae153daf767f53c66aae2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae569f102f266f71bdb86d9887ae8ebf8105a1cea012c842edf3834104e0238c7f2fd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0e1079ddfa33dd02db731044cd8ddfc833a838e8165d8e4af6b790b4e288689dc2a5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f8a7b3263e5f0dcd6f74aa877bd13932616ee4acff7fbbebdd7138ce31ca8a1775d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80beee2857cefdd24692e998d49a007159a6ed94a74c4d53eb2b6c50e5c557e47230e082874195098f2f2100e62f22c40178d745cb75db7c42003ae7edb2f1970087345b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8bc6cdca1aa91dda5a797386df7f8fea8823dd55d233263e5eb25f62f4d8f9f96d09cdc32023db4bc7ca656c990b0bc3b81eac461abdb3a057193f4b7808342a5f5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2d9fe113bd08b162188bfad989adf4c5a70d683c6e7864603e1038a586c7bc4dab374ea36b57746df5674c49cecdb2bd6f3a8d3089280e2a4567136628f3e15b5b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b5052170852a62255fa32f884f4f05d11c8ecdac4d015c286d47e0b0ed5047d9a9c3f477ea61b58b9795a7c02a22abd138c6f2be3fe1b248929768726ed778d656bfc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e156a234a01c041a6402699577633a39d07025fd4e566a9218575fc0eb9be781dc19ceb068f1a023408459c13da17386fe003796354bd6d7d5a2ee3996f08369db935de9961d0a6be9630c3699a6a8d95c2f8baaf32421e9ec48bd044ae683530802f63bbc61f801bf8b571ec714d957bbbdfaafc4bfbbc7df61a5790867cd1a60f4fc1e8f9784932b7c5cc9e36774c66843f8ef99c0529152879cf69eaa1d6959ec0c1800e28813ef807fc9b53c0a819dc45d886de428bbdb81a58f26a2bbf528adf495202e9273d542f866c11f33dbb64f057eeba2ade4a235a812c8f007dd25c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d73914544a361f1e90faaf42dc35e9c6ab6fd3afba1c22b0755eed8b6ece0f7ec5dda1fc9251532d59180022cd02f179cd15b0f1739d215f9cccc0209d3e38f0794c91e08d9bb11ba335f5e8dfa0bde1a3fb2e89b0514515d11fa879976d9865bae118ea775892f4d28aa19fc213a311bd127ae6ec29c24609182a8d53d23bd53d875cb78e13ab1259d8efb23f1b692d9cbbdb2b4a5cd64ef75d8022e5133fdba5e0e31e9894f3a45f6edc3523b6b3e4da7acb536a0948c7f6ded097589ba3d29b1f9512f8b0e81d9ddfe72fc46ca37b31f1a741912eea6bb2dbcf8085eb20a6a1fe5198779aca3da54bf5cc3cec1445d1cd288e9525ab87d61cfc7c4878ec8729767dc45a6ee44cff689fa05093db4b67c465c2bdc49b69032f6f9828f6877ad4048c2963c9c309a01ee4debaab75d78cd0af21b15ae8cde6c11e662588dbb430926203be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f78e8fd3892f3d291a73c2e7fbdb43aac5218c3cb5ad40ba1a656a1fe8e40369131ecc4262e9016e466ae3a620099396cc2756d5e688034ea1321eeff59f4a2511f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b5ef491d91cc9c36d0cb94a9ffd9507da22f46c1ec4229eb7ba5ef456c7609daed00442ff50de8e648b7408f347b525b3a009010e60581c917d508a77eb2f8c98f793f9796530be68106ba7491fd44e4b2129528573f19fcd8e7c3174590a0a2760696987619d7c75cc24d84b800888f90a4d946ddf79d300ed89b554a298f024120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af410f406f1db38ba9657ac4b9b707f3a74bbab3486de9cad9cbf4fdcca19009bf7ff9ff83586f6123916f004b97bfe007ed5df7174f071ad9f7f31e0bcbcda865c86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c438423043fce6587fc34eec805f68e711417509267244c629bbe3138b1df445fb9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08ec271229f326bc72e07b50104601c233e73454798e9b4575689525a2dde846ab37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a343999cbe0e5ee17058f6cc28049d52bd5533063210940e5b7f7a6eddb1cd7538ae364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f6965e016e9533ccd32650c39ccf80e080167aa2ae9b655018c2e7653f438f4877be5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5eff4cd272eff38690e76f53d80f69b0c3869479a3345b6ab71a4863488e655ce4850a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82c2184acbf66e3aa899f9f8829e2cdcaace21d58d58662036b8a5423de3f7e61853461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85580230275eed1a4c7d8385b524f602c4bb9af9454734760470c9af4383d5720e067ff78e31e24bee49d525597c6ee303717fb960cc6e8f76329c4f8a50820e2b8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8552567612eca5707f73558e6920a0939c1242b601a58cce898f4e68fec795fd81de3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85556c5affbb3731c54ad5afdcdc86997492633df4e797bbc88dc6afacce6d39652e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab97a8754daaaf47db447230c53a21aea2f2f87d46fc32f9124d07e52119bcee05188da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159540fa4895265fd9546e9fccb5f656b32118f50a1a086ead61e05eba5e863d4af642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a30b2b9a171e33e530250cad0c13a5f707813e5f6192f5eef9a46831a96e5b39cd24b3f54278482ab5b0dc02a2d163e04f800e23e305372b7999c19b11f426fb8553dd84898946657da98928aceb8631593816c24e2267fcf3e0e5ae107c96a6b2025f90a0305440e43849ddc5adc78b8bef6d6332ec62ed711340200eb96271e082496c45ab93af811732da56000caf5ffc9e6734ff633a2b348291f160ceb7e4a8262e95f9d4076e3d29656363921df8c5d856ab5253bdafdf61c36045d7c69b0c3e8ece218ccb26a01f985d53b739024c49f14b0efb0e5b98f1d0bdcc5168b5bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8dcf9f18f65ad44089354233370a05e1eef4b982ec2d2a929dabf5413646fff0cf0c5fa8249a5c39dec71bfa492c4450ee5fe0af935a776ad4ff3f31ae8bc457adebc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e3badf58e0532ae9453f37bf7cae746303bf1e9eb8359477b7d138a763157d4f44ac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3544fed4fd03a6009c1eb898feea6f7d730463f4aeeb3d80249d5867aa31bab936451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e431d78b7d7bc99a5515add373d698dd0dcea01150312fce48d4701e793d6d943dc9c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46fb2eef9f3f2cf62598de90b49e9cb513b352753309b1f924378060b4b759e54dba04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f990550c9bcd5715c816c5e566c7384ee7ea3f6ddcdf17ebc430a4945a08f6bc9190bca30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bdb91421e6bce846713330a519d13c50fb2a9c2c858dcb1f53ac0fd710e9cd81f07964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5672d97b2259349d7c49f7ae714d252c3aa351436da39d66b4f39e741060820f5e359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e15bd8ea940f7e7f36b8998e539a3a493e100739f91b85e499c946bcee3f7a55eb355c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457df6939dcdf5972d4dcbdaf8fd4aa05334f4123212d341ccf87b6160027d867fd7ffc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544a8519c6917b154f36b8cec0b619c34aa141731404ebaceb20fac32c88e658a858a400759b3c9b1613fcf7ff0ed5f6c1d93f15f767cd877e1a19df026e2ec83ab6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd71f9de24ab727c648a790ff671cc794d517ccc784d531830c6ae8f533bcd56426dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef638cc7bb81e1058190ecc65b7e8fe63d97b84b6e64630b0366522c0abfdf7d65793a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383917ef8c606069a568a0c6db9639dd95a20686433403b5a22172030548fe872813bc7c65a117201f8039c7f1bb78874628f31d9f49ab0b7a3cdc77308771ab20b284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf8c2ceae6a8344eaafd2685950c092d5f8f409a9de3dc8e3d1e240cfd5d93db48fe444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b368f9c46c862aa00de581cd1a005c5ba50b782a329d3b3bfe0dc0a8cebf54267a614c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583e86fda55c49a4570a1cd8016aeaf2c5aba375acd5dfa6ce9aed7f701b4fdf6947ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cef52c4cb9a0b03278d00cbd276660a299711f87568623d6fb922d8b88df08e6067856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e67456915c581716b15a19d9799781ce5c4c6e7b4e0b37441043f121861630ab2e212bfb68803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a211ece9065af25dc310872de08c461330999d20c66fd8db34be7f1379f4138e6b9c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e4684441511e4b4217051c4481c946dbbab4fa11f6f8dd6cadd2458e75631ded482497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f2d23d6612d42d19cf3d06db8ae46845a438ae0a00debdabe5c06ec53f169c253a8ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bfcf0153fea48968f576e67ff203145c01b568bfd1a312f39b94ecbb17c2a0983457027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db924a97967d4eb31e6548f085cc93b7220c6aba323869f2cd959e80f48c641b48f16dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e945db1a9344d17eec312687691263e5fbc84e06e6dd40ea708abf94c30a5e966a5288cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f15497f6ed902d09f4ca11b4397757f7c43e508d29b367ad7003659ead59279733d57c12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f025f50c5ea69c42f5d4876660e06643a6b3672294c7debef16c2b72152cf3a8e9ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1da88eec9d361f7857d097a91de5a1334b6fec4267fb0911ffbcca9cc97659d87124f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda55a504115505bbbffe6bad81b8a770d0bf585796167e24e1fc82b02a63ed800170411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401610f9b8aee6385800717c205dc7d901007c261787c1aa922be20f38d73f164c66dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e904446e2e7fb0a4b553a6111365b0c8034710542ade02b872dda57505c83d593adcbe4db5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb11293cf36c597c355846b1232302ea1cc257b2abe5d6d338af9cc315ef7530065bfdf524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552fd1399f5944921a7d2e0d3cba2d81154f0eb3332676025440bebd485c8df3a4704a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c021f3a6a2cceb3c3934b3473fc590fe3e776152369d7110d6f1eb6d59f7219dd3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b5693396bb0dbba3e6f8460868901b0e54d6ae3ca4c174d83f905ab30ca57e66bd498af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42cae94c3a81fceb66d2c421f40276be484fbf2ca00775eafd0c957f9515a055748e13d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5f9d677c9a1c86f7b9fdad9db10821b48f26b09b23985aec87163d45a0d1165c194659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5809f655236fa9514ec92a25b2fea105ebb8575c2cb9ba70fe96a6174eb9d950ce986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2b082ce51c0a79a37962b1945807eb0654e96bab40ff3cf2e5bc57bd47bc2387242d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d5201ea5e5603b0f88121052ce71ce18674736bac18be7ef8c4f1b5f492602fab925d9e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe53712d38edf71c4541e7a9a9d64ea1239e73f36df62ff508ebf7743bbbe5fcc12b9246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa327ea5f6cb5829b11a39b0338aeffcab8c93a0c04c0b4d947320178f29d65dec7a5aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c31edc4fbba6f4fc5b671f327bd8e22415f36f9fca74b562306bcc258a1466d565767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2bb31afb742516199b547baecef44fab916f1a979dc98b536d66019ca6cebc3d0852f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987d9b7132f8d62401f86db62a2df7ad32f46898963e9afebd3f68308b22700395080d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c64c2e7dc88caab9518889bc9e1929e0ef91059d2c543ea1d8f438ebfa3196ed6d5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f4b905f5f07f65d3972933768050b7a1ef8637c9a0e59e024ab9008ce4bac41aa44481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db3f5a0271b6e436197023e886982b12fb92f3e84b69cc7d5869c57818c66e095e2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c6706726ae1e843d692b56afdc3c7f1f43b5daa4d0418f9c95a4a19650ac24f436ee86cbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c7789e0801b7a50d21bc2036e84b516fa8421f3ccd500a1f90100619feeee52e5c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df5a07d90a09dfb789953f86dfacf672edb2552694515ca9d60c4e76378230ca4ed9d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed3c5d4bb31680e244ff9001847483ef372e6005709af9885c154e15b788592cce0a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83cd1415b6437bccbf351a26eeb62caff1704c432c6eee24c5942d8fc5cd8fb85acd2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c562c07a226f395b7f6d6c5063bc141015bdd2685c4825a8043594c173796c2bc7e4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a90700735056e6e3179756ac71f437625bd3b902b58d158613a787e56e93e674872c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21ebe11e336286233fe4af1b6308a80e6d4e58886269e877f18d5635763ed9fbaa119df02c98ea2d73202fe4dc3e63935e565dc308770a9623ef7a18c213d0076cd502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567bbd95fede8bce17ea8dc2c91a8461907beee210f943e2131aa0b2cbcda0679496d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c842604c50953db62d06bb8421eed8d092a45212993c2d4d345a5ae6c06306fb9412044288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7bbdc323d5113f3a39d202a7897f56c24d470a17f03bd7831bb504f5ac8b0d42c7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43df7b8a0bc03abc6e40374841c5bd4e6118702082d94673b8a85aefc7daa944213541608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec89f27c315f18c7a9073a21b8c3214f005e385c6a9d62e3b44495e9c7bb5f5c0fd5ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c70b35da192386048f4d7434c6e015bd9605072699fdbbe671d4ec989a85219336180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302e8d87015cff582aa173e3fa898a22fb6013905df0610f4997586c71ef69e0bdec6f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fec1baea59a578c22acbff440b4b6488ed12a07ebb4d7f98c6005e1a712d2d68e67c6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e19c532e4e959cd16e8ebc6cf8499b6ea59be96266f84e0b0b1f0d8a102bcdda58937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28a7ca2f5cb73dbd6a3aa938e123b57575ab4fc7b58590b3372a3f825bdadcccb83b9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c3803ae38a4be4f9181e9deaca98b67d7dd751bcf44022bcded0f32081c38c7579291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a97206f13fb1bd82c8028ff6d102a34c1a960e7b41b9d8220f034c50869cbd7eb1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c330a7f9304137eb6633f1de8f80e6c3325534ac25d0568f1db18e08c1f7ff2db138d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f31e1b712ce8700306b73c447d4fdd1dfc12335c257a3374f42a34207ea23fdf5830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd100d852c4ee87b5cc98f66ad453eeb3a87037a48f09c7fe87daec9f51a43e8ea3096ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e2652627026901eba6bb9713d49ea4deb40382f79e2e253aa44b1ed541c5eac2c0b8a1c70ba1b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d421a031357a97d043dced33a7d6690dacb1e5bc61e04829843a4298c672854ff5ec578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c9ad0120e9de65b96203264d2e54ec794c69c0ce444bbb60fa4a49f49e13549e434ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9eff643b0fd3856b4bafa791f817637dfa45c00a5943049e37457d99930e6744cdbf3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e84ba5c806aa642ebdbf37e9166f8f98432396500e56df3157f562bca584ecb53f666cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e5e4f21e1dc15bb982c4da23b062e41d607d1fa37e61dc16de209394691b46f28935f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad255821af27d0e98c7540d6d750e3a99610df6d1cafcc8962d3af8e58c4dfeb9e7b1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd880b286bf9c6dcca075152b45698f8a2483985a29dd99bb97d24eca8f993c37d818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c180f6fc82368987399003145f1c6801c94282e16a4b9f53ac5bfc861695fa95cbf21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6136b605c9cf4f1483d5439ce30dd82e37f15b3a105cee9d3d7cc0638fdb84b5d7ff91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bd4f3733e4070bd93841d382d8f7eef2da9137165515bfa3ac7174f54a5145582ee2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c88c3b38fea3e8687933050d6ed5c31e4d5c59e2940c0283ea5b3cc92f78170e6f75e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d0c52987f84db01681622a5d8ec6fc174ad262c757c9e48f0040c15d91abaaba2cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19d8bdf0273b5cf16cc96e9e7d5b7ec98a928d792879f7937d66aef996fb056a1358d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5b8975ef9acabb06135c8187dd4f411032774b62333ee3deccf1a357e31c8f8f653b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97ded1bddbd7ed273d7fdf50cb095716f47e32579d1a560a5fd8ec65ee8e4cbaafec3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94ccf4b66f3d0a3597c9e7db76e665c5e7c90f70e00698703f6bb5874de993def2c6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835fcb2627976689ef088740bcfadd6e70b6848f1bc4c73b29e4c16a0c448dd8a60c42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb33912535f0db74c46afcadca46e1ba72f687961ec1d40d159aedddc8586b930f53d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753e165b01b1999ba4dc64679a60a0891cecc1361d80a30c7fd14302adf0d20847bbbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b33cccc0bf2074f47d79dcd814351ea337f9c6989e778dc42e6c849b9d29c743e2379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d341e8a4cd9dd6445a6e3998ca465bc420860d3dd6854d429a35476473160d99825effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47df9a59fa7f81edbbe8f058dbadedc21bdf7bfc713ae70a79b5066fb71ed2f3a4fb31a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39b3f8af551cf2d527bb51715044663f20798fef310447ba5a53b899af2ff073acf5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725b7d258d442f32293d5f3a17c5342026c556feed7d8f074d3e8fe5b12977380e08699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2de6b6b776258834818b1a973e75b7077884ee5d32b435eb67fe8638abb687a28ba8a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22c7796537539016266ebbc35b7915f65bac3a6cd12ac767aacc13a02c4276e1b3a247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d287816160ed4c4cdbae9c2dae5d993d2ae0d32df58fe9cf04a27a29db990a1f5158eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6b8aa32bfdbdc7a5f0041a035409659e1c327f94eee90124ae6f3fd38323164d57cc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa466ef2fb9cb14f8382237a433353f1e2e4b5729ca0b4035940e6c0d1dc0fa368b1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd98cc8b969859af97b541a8feb251c6448a9abd0a9163a52193a4e14c13176106d6d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a28b7a12c92ef400b1aeda82e428e32b248c79821a5d413f5068711797fa5d77c6b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f013f59878e87b73b027122b748e60892beb775fc7f504dff4d69a0f9fca5476927a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c76b08232b3e0d28ffb31c3c29b684422ddd2d91472fef8d3cd1c4455b332f27ca3d8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdf192907178018c2039d2a67ab37f02f021b24fe519b564b55f31bd56ebb9b39843823cf08b2b70ce128f0b3ea28ff4f643e715e6786cecdc8dd7f4b658648d92bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e45dafbc9e2a271876d2aa1966753ea952d72a90de2e93a5b0ea5f44d7e97d42fa97971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf06f6bc66ce7b39ced2b4262ef95d0f9cbabebaaba4fa680f23ea5aa8c60c5fe3bf45462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e897680b533fe1c7774e5011b3a77b1bdf4a18e3212cd94b07badd0c3a6149edd4be59e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c722df1398f1d6ce15f9d3f1305444ff6eef3eca6268047aafea5f4b22c338442751619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f84611f635f643f1d5c4eb16ea29fd1b159111b6dcc627a7841bf98da30b4575b5a2572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dc3fdefbaca1c465134b790aa170ee2ca700bc10128bb4440c2be4e7f9b5c541123824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2ce7e67418c475c61cf784ff96bd76e32479d4d4a2db2e9afec09c88a93cd6d7a49fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ea1afdf0276fdec5c715e44d7ef3699fc6d0b4ed00271409b08daea9f99d2cc6660a336f0e1cc7ee57baa5a1f8b92d5a05701fe1c51d8b5676c4d506add7f3098b850cf836e3f6fbbbdc009c3f759118d2efb61dac30e2fb671a9327a908a535eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc81433d2e7219ee7a73c82d9768578ac6833eaf4e6b25a13f58e3f8ae4bf4e3a02c47f305845c786cf52f8b493bf63718360c20841e15e26930450a912b6eb64bcf25f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90faf54a500e35f5aad731a74b3b4628c39a686d65534a9e103755f50c264fa275d68db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5eff8f6c96b1260ff5c492082e86aff8fc67c0228d309381c36e77506179db07d9f5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a0100fe66934026624227c639eadcd7f4b1ca402a9fb4dc5c0623d608d55bf38179977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda40918264c2eaa72a787be431d927be1c1adbbac2afd815fff5691127e6a28d1b13942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96faa6a60ebf473ac977b01ce5df020d84d05731a7b3f02b2ba95eeb1bcb835b8174cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae66b86b0f0d066a14588cfffb80894c2a467bcf86125c5bdaa3eb45ea171909fcb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f006291d1f0fff3d9de79f31aece0c799eb1e2daef67f5a6c0bee037569c4a5ecb29a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be6368ccb2482024da43bcfb52f80fadd52b757f3d98054e4d788a106abce52912669662f9dad99cbcda0cf80e35a489a32021ae3221ed20a0cd68030408a0054815d735c3543fedbc2db3722408f465751aef5273098f35ec7e16586efbcff3edd3bf2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759efbd02e5ffc91f19d738e256bd471d55d88cd7c15a8555a62b5d78debdeea227ed75e3829ae8686419ac369feba2276ebe7113cd5dc3f40fb0fd0bc1d96249bc1a67234d483ea03775fe8db7fc88344cc9528fc9953ac9ee0da2506ed5a5f1b062b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba7527348539787c01e188daa0ce05c7e2ac787f9499fe29e7048b503a6f7809c87232c01852e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d15c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7447bcec8d21ffb2f435619efd4112d328bff5a1012e78f26726d867d6e62a704e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fbc080ace304598c08da4cc96ce7844d391258399381a9b380b99498550b98eb9d86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319f89fbd986063352401db972b788763109558c4a2da43960f4ee3cf1fd675da16d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf7c954641160a56176a8bf11cd8e7483df582c0fdadf69893d32da41591d5b0615f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5d23ffbb690631046598bd39ae5b74c35054dae72c5f57604e4af654d3574bec5a7e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3055f4a09a5abf36245064d50aad8ac18b8b668b1c629c3cbcf3cdb469c0c59f0f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf5a770a9f0f1504d10d141ad6e021161a0562be7090695051fbe7b30f8b1000afa9f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0c82c4675d1eca8ca3bd9f6e60f4229d58b452f4601fcfee2fad705cb54f49571df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a865214a040d1af720d58955c1bd68556f876df994ef067f4a17fedbba0cd7b841ab6d9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad488ef311772d0b1905f33ad020d557d4e5dbaaf7c21bfe1b819d54fa7819b0d532938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574a995455ac77b2c3885e7671083c95fdc22d4756225a5e306b0664993e14651ac4cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f68eaeb867980113e0f1994ffe02dd19467a969f9d5d4bab5673783e0670f02964e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0880b27a7d5ce1c26f9fa0501118b7a7430afc015276284e4e742aafce1a274f0e55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c47f5fd5748fb09938a42aaec7dc2518b0bbf8b46aca162295f3eed5c5149727c61c1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e3382561b22d28f5ed05099fb3ee0d623269482006c337387535d507cb0fa0659fc28b81c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb0879d22855e05150116c576390c70510a24000d0d0801a23209cb267b14d2a58749743c49bb12adde3cebb69e1f67832cff6a3721ccb5244aa45d752afc2b87b39c5d1e4b418537aaf2903b5bbe8014ed1f40e24ad459217075f78cf661c4157c95e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c343f9ba54aa640012b4271535e36b012e4c4aef54cb85d43126761172a6b89b9735ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777e2fc8614c226daae576c0baf629504bf9ae842a7c613de6388054651dba4136043eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f54684a7dbd20d9b2dc47a44a268c9d93a656807525f75c6331f02760c4276e4f0564ba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadc6a01f461cd15f2ac1f7a2733d9bf212ca0240345c4f81f0bbaa8d5cbdb250d443f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdd2326241bbf5e4823960e9226833e36550da075447f21236ad89c3c85a4e4bd810c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b2861166b3f2a9defcb66744661043b851bf17c29f7c12cfe9e6c8ce8c14f4aa57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc7c4a9304348f11e1ce6ca54a98b697ddc42d7386028df2c9274f56c3f4ca61cc11db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbfef180785d9c092343445ef977264fd0cf7f47987364d8f4264768fbc0949ab772b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d3491994f4334a3e58abea1d4e6ee153caf48449f320fbdb446ea4f67e6f2ac149df1633aa7b5e519005a5e5c2dc3af899284c89bd7d714cf1a7d7f1287ccd2530af9a593673545ecb5fec459db7840936d2b421db560fdadba51036e649a6872d5ce865441c86f6b4a052c4b00bd09a690142aa9b6aca8efbba86ba5ea79d0ff9c77df65234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa70e9bdbae5b3a69168f362e620cbc42fabb711fd9ed1479043cf46d5acb3ea97c22420e2055bc894f500a89d1a73ecb75fe5ae98599fd31dc38f462ab9870ff82571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df97b41b4039889d06f5f9b4c0bd82a95e4544f03b69c4f14bc5a774d7dfd55d44cec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cbd974028ce294a00a1d688c3fd76054326ffa794d96000271ff314a9ac57b6e25be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b409815e48e17bff96a0ed2e87ea1d2d549f7b9557d98e2e812d460e9e75c3675d1ee00c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe873df577a58792673736aadf1d21a95c04cc82a15656815f56cbb072a509b304b728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d67606d1e17dcd0fb72e0e998413a5a5ca0202aa9cd50ce8fd6e9ec4059cc37e3bd48cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f9223c6816e9f8e7f63ff6074335d12b518140972c2f2296b486b72d3234bed79274eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e276075c268adaa541fbe6b1470503966aa74f519a911c78bc592f04994ce313d72f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdbb41b2ea8367ec4c6794df0c934fad90c07bdd399b9be68225e9e18765b6a18f8c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddda4975b7a5adbac50c4bcbce0fb0afc69121634a7bc0f91a8d241e5ebf53ea6dadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95f60cbd6825edc05d08588568862fb68a7dcbfb59dba6402d3d28b0e76cc57a52808c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc0db409c55ab862dba2651c5b8d03b7f932c50b9217e771b01edb24b84fcd2c144c4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafa45ded50098d64d4d89bd901716905f6f1194dab34b1c0aa789b77b040df1095a1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb2f214f4499ed839bfa951ab2ca77d7b0666c50a0a2f7e5b3a034533d473dda666d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c63b87e73fb1429febafe2aca0d482f0caeb4494ca9d5c36f0ed7d589dd19ec3c2479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c51003ea1065fe69611c6753e5134d059e5f2a486aed95265c672c9abe595369e63cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98bec0d359680b55c414b1a4b424cf25f72a0eb44817e0891a025c775188aabeebb6cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb85209e2d35cf29db6bea270fa2d69ede2a04be1ab0596513f0d1f3e51b2ed62604ba9eae7ea0293059b0a505a2f6712d0afb8f7797f7ed1536d343a131bbcf15885a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340da4b66d2d7fd6f15d6db5e5444edca2cfae3398d362a87dca8e2c44208f95b31333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c347cdf93dc10625c9095a83914208e9b420c03ef1a2856c78218f9cf83bc9225d2e8a3cb7026dcb29f07dcdb3b8daabeb0c1c417d2c451516b78d4d5b9b9df09a00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e1904602d9327c92b8cf7a2555b46e19a09b10c1df9d02b9fb1a34b6d47b596048d136401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9d508b340681f722cf50b49277e642517944fd3c4390d2757acb3f12f6828e66b5d9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e491065cea83c816253266584c7c1ba53568114e900677cee29ef3b5ed524f6da4360cfd97c9c75fc7d11c27a83c036131445fb37f2c714746418634d4e857f4f4196eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfd5e77656481a69d6c9f29edf8e9243c92080e38ca1b702a94a1da43fe82c234454149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b810b4d7f9295f752d40fd3711e8c6c33a5589712fbad5691ebaae48ee99cacd26044f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec07a631338b7bb54f3d5423f7ef669d54e09ae2426351c5365691644a66d5a50b6cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f547716ad7761d636464c4eecf66ff228bd7746675b89efb79dc1287d07c29bbe7dec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3da613613aa0010b2afe1c6b86dac7f3fcd8e4a9da31afd84e30fa2751da85d229f74fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670c7500f109962cb8f1f4491fb81a92a7275384b903fcde93870175357e40f60da9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd93673dcb28c887ef45a78c519968461059b2e8e2984c19b5c41f2e0687f3200ebdea284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fde8f2d358e8eff9ef2ea693874314e6a5e64c4be6c096e6f57760a5ad1f43a09b9005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855b3c0d8470fedc535362c827c6b7e0807e91074f4fcc6baa63528b4b68aad176d0d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2e2cf0102ed5d4c5799eb742518fdad5aa6ca0effdd08330b428384b249109a7133ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e9ec30c2dd483696540a3ca3623060a6c26d1a7215106bd708958c67e63c9687e44fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a7886adb42a3502d203b6746fbb76d4b563ba96a528c953771430361883b139b0b436c4a1fde160e7d87974e3b8eeccf9dfaf67c021e0932f6ed99be4eaf8605eec458e1d37df2b2e495aeab3a1c817374dee6cb93f9a2e5d7f515b762ef1bc21251138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c55e8407b9e5aa5e030b139eef5966264e6669c9ec788484a920b354cf8b5720a2ec323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b947c4d2debab3d2a4a6d97c8c2cb3f62cf9cfe151a03b7df44981b8135146eae338a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfd399b9f4e3d8e1767c4969673b8646176d6961325b7cd4d15c9275940f8b10c2ac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa7a771908678fcc40baa8392774803f3bad72766c6cdb67deca3a68e5662219527e83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f21729886be1dff1f9241f8396820fcfdc983f224032d9c59b048f9edc5b0b55e8e37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa21074f1bdc67a1ca603d29a1b399677645121b9799f999ca9d71c289ba3d3c6efd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e1e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85531488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c130ec3ba373bce39f5ca881dd3f1a093c44f1e1169d8e6db3db59b9f079c9ae32caad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3ed3829cd4647b8e73458ea8cb12eb3ee6ee895273cb374425a0d7161e98326aaf6cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35c08659d3509813d62511852a4c97a6a9b0e59d59a440eecf8949cda0c97e6329b2a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac568e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde7dd4dc84550a29e8892fea920a1ac735de272da08d5c1aaf8853f37d93df8db130373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37bb101ed07f43dfee840b27fc6bf1e0cc56858c157960bda1f3b0f2d19e0e80952d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2c070dc2a9f95de38de24b399b66cbd0b897cd3749eff72e6d218afd148982e7317203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a33434f6973fb4a5d81454f694aadd911359ce5380cef1518784a2b160b98269d010f1741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef4db10511bf9e7c330fce9e09448127a2914851c4f165920f5189e923da53670991b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b13a98fa0edfd64bc8be4b8537f8d4e83ec1e6f9ed4d1c3e7bdc63dd2bc11c39bee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c1294e0d546e661ab4201fb5697bd350402abb455f8a9468b5045385269088b7c4c9b44fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b4331ddc231307302729bc42eef14127720411a4c405068b8de0a7321879129d370b8f82dcb5bac72d7ca5ff9cef2f3163781ca05ddb24b6467d0ecd0e0699ea90ad85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1eead2af810fd23967527905afd2d999276317717f6c4e7ac9c5f821f6fc8b43f53d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1822a535b6df4c5f7cc12657028de1e8d57f2cfb29bef4e20501dc4ca882924aeb801847a976872452da0f7c397005bb2b86d16eb734024309e369e7cd63ddeb5583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa35b9f2a710e2d0d7cbf641cae7efb81e7327e10a4e303970eec2b84c3e475ef5885ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056fa1dee30fdb73007a57708706ad6c0607f93e0abb272c624cb50bdf528b7d3d92dab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98733f1086e0f726fb2b7fecbe6273c69ae9b3392c40f070e186217cd7055abddd4b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c53ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249962e3a7f7bfcc5742144c3f1e81ee7154b9c3f037e2616226eaef100e203094f8b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12f23a8eed09cc9e87bbd876ea155787e6d8025fc03fbb5eb35273091fbd1211e7f2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f61070951005e5851b4624eea7adc326ce0f2bd71009b05b50cf91697e983620684e7366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bc1388faf3dc1db1dbb2deb29bc89f347745225101779b4b419ca58b87bd619683f51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a2310e5936d9fe55877f5de2977dd85aad8ee1edf3a571e7483c0dbd54d05b7a3ef1af8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43bee0327c14aebe4839fa3685c2da9227a4b56770c8ee5f936fcb11d8dbc61cf6fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a057844753d8d744bcd79b327fffb478924af20b870e365f3e1348710d7552d4ca61490744f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838ab56c17ac704421bc33cc42997c7c188a80a66e24dad35759f77e84d3b14d2e95f9f335aa94a46b4dd99db0f4f54669c7c727287c6de91d4f939d05b430412da52../../uapi/linux/input-event-codes.h../../../arch/arc/boot/dts../../../arch/arm/boot/dts../../../arch/arm64/boot/dts../../../arch/c6x/boot/dts../../../include/dt-bindings../../../arch/h8300/boot/dts../../../arch/microblaze/boot/dts../../../arch/mips/boot/dts../../../arch/nios2/boot/dts../../../arch/openrisc/boot/dts../../../arch/powerpc/boot/dts../../../arch/sh/boot/dts../../../arch/xtensa/boot/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-4.18.0-516.el8.src.rpminstallonlypkg(kernel)kernel-develkernel-devel(ppc-64)kernel-devel-ppc64lekernel-devel-uname-r    /bin/shfindutilsfindutilsperl-interpreterrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3ee$e @didd@d]@dhdd@dd\@d@d!ddD@d d@d7dNd@dx@dp@dkY@dcp@dZ5dTdP@dJcdBzd>@d7d0d-bd&@d!@d@ddddxdcU@cU@cc`cl@c@c@c@c@cwc&@c&@c@c@c@ccc=@cc@cۥcT@cױ@ccvc0cƍc@ccFcR@ccc@c@c|cwscr-cn9@ck@ch@cb[c_cV~@cMCc@c:c2c*c!@c*c@ccd@cb{@b{@b5@bbbb@bz@bޅb@bVbby@bb>bb@bUblbb2@b@bb@b@bbw@bb@b~H@bzSbu bk@bjbgbf@b_bX bT@bP#bMbMbF@bEbA@b; b8hb3"b1@b/.@b(b@b!b~b @b@ba@a aa7aaaa@a@aa5a@aza@a@aaW@aayav@amaaf@a]aQ@aLl@aC1a@a;Ha0a(a'@a&0a$@a#a@a@aS@a @aa a /a`@`` @``@`@`ݮ@`ٹ`@`"@`@`9@`D``r`r```@```Z`f@``@` @`@``@`@`e@`}p`x*`t6@`n@`m`e`c`a@`[)`X`P`KW`J@`Gc@`B@`?z@`<@`7@`2K@`0`-@`*b@`%@`#`"y@`!'``>`@``@` `@```2@___I@_@_@__1@__ܙ_H@__@__@_м@_v@_ǁ_ǁ__@__G@_@_ _i_#_@_/@__@_:_@___@_ _@_"_@__~@_}_w@_s!_k8_e_cO_`_X_P_>e_;_16_*@_&_"@__@__ L_X@_c^z^^@@^^K^@^W@^@^n@^y^^@^א^?@^ϧ^V@^^˳@^@^Ǿ^^@^'@^@^^@^^U@^^^&@^^@^1^^H^^^@^k@^@^@^0^^|@^{G^{G^wS@^v^t@^s^^r @^p^n^l@^j$@^g@^f/^c^Y^U @^Ri@^O@^Nt^M#@^F^C^AE^9\^4^2@^*@^&^!^@^g@^r]]]+]@]]]B]]Y]@]߶]e@]]]]@]Γ@]A]ʞ]@]@]{@])]]@]W]]]z@]]@]]@]V]@]m]z3@]v>]rJ@]i]g@]e@]c]^][]V]UI@]S]R@]QT]L]J@]D%]B@]A]@1@]>]9]8H@]6]1]0_@]/ ]-@](v@]'$]%@]$];]]@]^@]@]@]:]@\\@\Q\@\@\\\t@\@\\@\9\\ޢ@\P\@\ڭ\\@\g\@\\s@\-@\8\@\\O\@\\f\@\\r@\,@\\@\7\C@\\@\N\\@\@\6\B@\\\@\@\@\@\M\M\M\~d\k\eX@\d\^\\\Z@\HW@\C@\@n@\?\8@\73\3?@\@\\>@\@\I\@\ `\\l@\&@[[@[1[[@[H[@[_[@[[v[[@[@[ٙ@[S@[ @[ @[[@[[[@[;@[@[R@[[@[][ @[@[t[#@[[[:@[[@[Q@[[@[\[[[@[v[qrDenys Vlasenko [4.18.0-516.el8]Denys Vlasenko [4.18.0-515.el8]Denys Vlasenko [4.18.0-514.el8]Patrick Talbert [4.18.0-513.1.1.el8_9]Denys Vlasenko [4.18.0-513.el8]Denys Vlasenko [4.18.0-512.el8]Denys Vlasenko [4.18.0-511.el8]Denys Vlasenko [4.18.0-510.el8]Denys Vlasenko [4.18.0-509.el8]Denys Vlasenko [4.18.0-508.el8]Denys Vlasenko [4.18.0-507.el8]Denys Vlasenko [4.18.0-506.el8]Denys Vlasenko [4.18.0-505.el8]Denys Vlasenko [4.18.0-504.el8]Denys Vlasenko [4.18.0-503.el8]Denys Vlasenko [4.18.0-502.el8]Denys Vlasenko [4.18.0-501.el8]Denys Vlasenko [4.18.0-500.el8]Denys Vlasenko [4.18.0-499.el8]Denys Vlasenko [4.18.0-498.el8]Denys Vlasenko [4.18.0-497.el8]Denys Vlasenko [4.18.0-496.el8]Denys Vlasenko [4.18.0-495.el8]Denys Vlasenko [4.18.0-494.el8]Denys Vlasenko [4.18.0-493.el8]Denys Vlasenko [4.18.0-492.el8]Denys Vlasenko [4.18.0-491.el8]Denys Vlasenko [4.18.0-490.el8]Denys Vlasenko [4.18.0-489.el8]Denys Vlasenko [4.18.0-488.el8]Denys Vlasenko [4.18.0-487.el8]Denys Vlasenko [4.18.0-486.el8]Denys Vlasenko [4.18.0-485.el8]Denys Vlasenko [4.18.0-484.el8]Denys Vlasenko [4.18.0-483.el8]Denys Vlasenko [4.18.0-482.el8]Denys Vlasenko [4.18.0-481.el8]Denys Vlasenko [4.18.0-480.el8]Denys Vlasenko [4.18.0-479.el8]Denys Vlasenko [4.18.0-478.el8]Lucas Zampieri [4.18.0-477.2.1.el8]Lucas Zampieri [4.18.0-477.1.1.el8]Lucas Zampieri [4.18.0-477.el8]Lucas Zampieri [4.18.0-476.el8]Lucas Zampieri [4.18.0-475.el8]Lucas Zampieri [4.18.0-474.el8]Lucas Zampieri [4.18.0-473.el8]Lucas Zampieri [4.18.0-472.el8]Lucas Zampieri [4.18.0-471.el8]Lucas Zampieri [4.18.0-470.el8]Lucas Zampieri [4.18.0-469.el8]Lucas Zampieri [4.18.0-468.el8]Lucas Zampieri [4.18.0-467.el8]Lucas Zampieri [4.18.0-466.el8]Lucas Zampieri [4.18.0-465.el8]Lucas Zampieri [4.18.0-464.el8]Lucas Zampieri [4.18.0-463.el8]Lucas Zampieri [4.18.0-462.el8]Lucas Zampieri [4.18.0-461.el8]Lucas Zampieri [4.18.0-459.el8]Lucas Zampieri [4.18.0-458.el8]Lucas Zampieri [4.18.0-457.el8]Lucas Zampieri [4.18.0-456.el8]Lucas Zampieri [4.18.0-455.el8]Lucas Zampieri [4.18.0-454.el8]Lucas Zampieri [4.18.0-453.el8]Lucas Zampieri [4.18.0-452.el8]Lucas Zampieri [4.18.0-451.el8]Lucas Zampieri [4.18.0-450.el8]Lucas Zampieri [4.18.0-449.el8]Lucas Zampieri [4.18.0-448.el8]Lucas Zampieri [4.18.0-447.el8]Lucas Zampieri [4.18.0-446.el8]Lucas Zampieri [4.18.0-445.el8]Lucas Zampieri [4.18.0-444.el8]Lucas Zampieri [4.18.0-442.el8.v2.g6f5f]Lucas Zampieri [4.18.0-441.el8]Lucas Zampieri [4.18.0-440.el8]Lucas Zampieri [4.18.0-439.el8]Lucas Zampieri [4.18.0-438.el8]Lucas Zampieri [4.18.0-437.el8]Lucas Zampieri [4.18.0-436.el8]Lucas Zampieri [4.18.0-435.el8]Lucas Zampieri [4.18.0-434.el8]Lucas Zampieri [4.18.0-433.el8]Lucas Zampieri [4.18.0-432.el8]Lucas Zampieri [4.18.0-431.el8]Lucas Zampieri [4.18.0-430.el8]Lucas Zampieri [4.18.0-429.el8]Lucas Zampieri [4.18.0-428.el8]Lucas Zampieri [4.18.0-427.el8]Lucas Zampieri [4.18.0-426.el8]Jarod Wilson [4.18.0-425.el8]Jarod Wilson [4.18.0-424.el8]Jarod Wilson [4.18.0-423.el8]Jarod Wilson [4.18.0-422.el8]Jarod Wilson [4.18.0-421.el8]Jarod Wilson [4.18.0-420.el8]Jarod Wilson [4.18.0-419.el8]Jarod Wilson [4.18.0-418.el8]Jarod Wilson [4.18.0-417.el8]Jarod Wilson [4.18.0-416.el8]Jarod Wilson [4.18.0-415.el8]Jarod Wilson [4.18.0-414.el8]Jarod Wilson [4.18.0-413.el8]Jarod Wilson [4.18.0-412.el8]Jarod Wilson [4.18.0-411.el8]Jarod Wilson [4.18.0-410.el8]Jarod Wilson [4.18.0-409.el8]Jarod Wilson [4.18.0-408.el8]Jarod Wilson [4.18.0-407.el8]Jarod Wilson [4.18.0-406.el8]Jarod Wilson [4.18.0-405.el8]Jarod Wilson [4.18.0-404.el8]Jarod Wilson [4.18.0-403.el8]Jarod Wilson [4.18.0-402.el8]Jarod Wilson [4.18.0-401.el8]Jarod Wilson [4.18.0-400.el8]Jarod Wilson [4.18.0-399.el8]Jarod Wilson [4.18.0-398.el8]Jarod Wilson [4.18.0-397.el8]Jarod Wilson [4.18.0-396.el8]Jarod Wilson [4.18.0-395.el8]Jarod Wilson [4.18.0-394.el8]Jarod Wilson [4.18.0-393.el8]Jarod Wilson [4.18.0-392.el8]Jarod Wilson [4.18.0-391.el8]Jarod Wilson [4.18.0-390.el8]Jarod Wilson [4.18.0-389.el8]Jarod Wilson [4.18.0-388.el8]Jarod Wilson [4.18.0-387.el8]Jarod Wilson [4.18.0-386.el8]Jarod Wilson [4.18.0-385.el8]Bruno Meneguele [4.18.0-384.el8]Jarod Wilson [4.18.0-383.el8]Jarod Wilson [4.18.0-382.el8]Jarod Wilson [4.18.0-381.el8]Jarod Wilson [4.18.0-380.el8]Jarod Wilson [4.18.0-379.el8]Jarod Wilson [4.18.0-378.el8]Jarod Wilson [4.18.0-377.el8]Jarod Wilson [4.18.0-376.el8]Jarod Wilson [4.18.0-375.el8]Jarod Wilson [4.18.0-374.el8]Jarod Wilson [4.18.0-373.el8]Augusto Caringi [4.18.0-372.2.1.el8]Augusto Caringi [4.18.0-372.1.1.el8]Augusto Caringi [4.18.0-372.el8]Augusto Caringi [4.18.0-371.el8]Augusto Caringi [4.18.0-370.el8]Augusto Caringi [4.18.0-369.el8]Augusto Caringi [4.18.0-368.el8]Augusto Caringi [4.18.0-367.el8]Augusto Caringi [4.18.0-366.el8]Augusto Caringi [4.18.0-365.el8]Augusto Caringi [4.18.0-364.el8]Augusto Caringi [4.18.0-363.el8]Augusto Caringi [4.18.0-362.el8]Augusto Caringi [4.18.0-361.el8]Augusto Caringi [4.18.0-360.el8]Augusto Caringi [4.18.0-359.el8]Augusto Caringi [4.18.0-358.el8]Augusto Caringi [4.18.0-357.el8]Augusto Caringi [4.18.0-356.el8]Augusto Caringi [4.18.0-355.el8]Augusto Caringi [4.18.0-354.el8]Jan Stancek [4.18.0-353.el8]Jan Stancek [4.18.0-352.el8]Bruno Meneguele [4.18.0-351.el8]Bruno Meneguele [4.18.0-350.el8]Augusto Caringi [4.18.0-349.el8]Augusto Caringi [4.18.0-348.6.el8]Augusto Caringi [4.18.0-348.5.el8]Augusto Caringi [4.18.0-348.4.el8]Augusto Caringi [4.18.0-348.3.el8]Augusto Caringi [4.18.0-348.2.el8]Augusto Caringi [4.18.0-348.1.el8]Augusto Caringi [4.18.0-345.1.el8]Augusto Caringi [4.18.0-343.1.el8]Bruno Meneguele [4.18.0-343.el8]Bruno Meneguele [4.18.0-342.el8]Bruno Meneguele [4.18.0-341.el8]Bruno Meneguele [4.18.0-340.el8]Bruno Meneguele [4.18.0-339.el8]Bruno Meneguele [4.18.0-338.el8]Bruno Meneguele [4.18.0-337.el8]Bruno Meneguele [4.18.0-336.el8]Bruno Meneguele [4.18.0-335.el8]Bruno Meneguele [4.18.0-334.el8]Bruno Meneguele [4.18.0-333.el8]Bruno Meneguele [4.18.0-332.el8]Bruno Meneguele [4.18.0-331.el8]Bruno Meneguele [4.18.0-330.el8]Bruno Meneguele [4.18.0-329.el8]Bruno Meneguele [4.18.0-328.el8]Augusto Caringi [4.18.0-327.el8]Augusto Caringi [4.18.0-326.el8]Augusto Caringi [4.18.0-325.el8]Augusto Caringi [4.18.0-324.el8]Augusto Caringi [4.18.0-323.el8]Bruno Meneguele [4.18.0-322.el8]Bruno Meneguele [4.18.0-321.el8]Bruno Meneguele [4.18.0-320.el8]Bruno Meneguele [4.18.0-319.el8]Bruno Meneguele [4.18.0-318.el8]Bruno Meneguele [4.18.0-317.el8]Bruno Meneguele [4.18.0-316.el8]Bruno Meneguele [4.18.0-315.el8]Bruno Meneguele [4.18.0-314.el8]Bruno Meneguele [4.18.0-313.el8]Bruno Meneguele [4.18.0-312.el8]Bruno Meneguele [4.18.0-311.el8]Bruno Meneguele [4.18.0-310.el8]Bruno Meneguele [4.18.0-309.el8]Bruno Meneguele [4.18.0-308.el8]Bruno Meneguele [4.18.0-307.el8]Bruno Meneguele [4.18.0-306.el8]Bruno Meneguele [4.18.0-305.8.el8]Bruno Meneguele [4.18.0-305.7.el8]Bruno Meneguele [4.18.0-305.6.el8]Bruno Meneguele [4.18.0-305.5.el8]Bruno Meneguele [4.18.0-305.4.el8]Bruno Meneguele [4.18.0-305.3.el8]Bruno Meneguele [4.18.0-305.2.el8]Bruno Meneguele [4.18.0-305.1.el8]Bruno Meneguele [4.18.0-304.7.el8]Bruno Meneguele [4.18.0-304.6.el8]Bruno Meneguele [4.18.0-304.5.el8]Bruno Meneguele [4.18.0-304.4.el8]Bruno Meneguele [4.18.0-304.3.el8]Bruno Meneguele [4.18.0-304.2.el8]Bruno Meneguele [4.18.0-304.1.el8]Bruno Meneguele [4.18.0-303.1.el8]Bruno Meneguele [4.18.0-302.1.el8]Bruno Meneguele [4.18.0-301.1.el8]Bruno Meneguele [4.18.0-300.1.el8]Bruno Meneguele [4.18.0-299.1.el8]Bruno Meneguele [4.18.0-298.1.el8]Bruno Meneguele [4.18.0-297.1.el8]Jan Stancek [4.18.0-297.el8]Jan Stancek [4.18.0-296.el8]Jan Stancek [4.18.0-295.el8]Jan Stancek [4.18.0-294.el8]Jan Stancek [4.18.0-293.el8]Jan Stancek [4.18.0-292.el8]Jan Stancek [4.18.0-291.el8]Jan Stancek [4.18.0-290.el8]Jan Stancek [4.18.0-289.el8]Jan Stancek [4.18.0-288.el8]Jan Stancek [4.18.0-287.el8]Jan Stancek [4.18.0-286.el8]Jan Stancek [4.18.0-285.el8]Jan Stancek [4.18.0-284.el8]Jan Stancek [4.18.0-283.el8]Jan Stancek [4.18.0-282.el8]Jan Stancek [4.18.0-281.el8]Jan Stancek [4.18.0-280.el8]Jan Stancek [4.18.0-279.el8]Jan Stancek [4.18.0-278.el8]Jan Stancek [4.18.0-277.el8]Jan Stancek [4.18.0-276.el8]Jan Stancek [4.18.0-275.el8]Jan Stancek [4.18.0-274.el8]Jan Stancek [4.18.0-273.el8]Jan Stancek [4.18.0-272.el8]Jan Stancek [4.18.0-271.el8]Jan Stancek [4.18.0-270.el8]Jan Stancek [4.18.0-269.el8]Jan Stancek [4.18.0-268.el8]Jan Stancek [4.18.0-267.el8]Jan Stancek [4.18.0-266.el8]Jan Stancek [4.18.0-265.el8]Jan Stancek [4.18.0-264.el8]Jan Stancek [4.18.0-263.el8]Jan Stancek [4.18.0-262.el8]Jan Stancek [4.18.0-261.el8]Jan Stancek [4.18.0-260.el8]Jan Stancek [4.18.0-259.el8]Jan Stancek [4.18.0-258.el8]Jan Stancek [4.18.0-257.el8]Jan Stancek [4.18.0-256.el8]Jan Stancek [4.18.0-255.el8]Jan Stancek [4.18.0-254.el8]Jan Stancek [4.18.0-253.el8]Jan Stancek [4.18.0-252.el8]Jan Stancek [4.18.0-251.el8]Jan Stancek [4.18.0-250.el8]Jan Stancek [4.18.0-249.el8]Jan Stancek [4.18.0-248.el8]Jan Stancek [4.18.0-247.el8]Jan Stancek [4.18.0-246.el8]Jan Stancek [4.18.0-245.el8]Jan Stancek [4.18.0-244.el8]Jan Stancek [4.18.0-243.el8]Jan Stancek [4.18.0-242.el8]Jan Stancek [4.18.0-241.el8]Jan Stancek [4.18.0-240.10.el8]Jan Stancek [4.18.0-240.9.el8]Jan Stancek [4.18.0-240.8.el8]Jan Stancek [4.18.0-240.7.el8]Jan Stancek [4.18.0-240.6.el8]Jan Stancek [4.18.0-240.5.el8]Jan Stancek [4.18.0-240.4.el8]Jan Stancek [4.18.0-240.3.el8]Jan Stancek [4.18.0-240.2.el8]Jan Stancek [4.18.0-240.1.el8]Jan Stancek [4.18.0-239.1.el8]Frantisek Hrbata [4.18.0-239.el8]Frantisek Hrbata [4.18.0-238.el8]Frantisek Hrbata [4.18.0-237.el8]Frantisek Hrbata [4.18.0-236.el8]Frantisek Hrbata [4.18.0-235.el8]Frantisek Hrbata [4.18.0-234.el8]Frantisek Hrbata [4.18.0-233.el8]Frantisek Hrbata [4.18.0-232.el8]Frantisek Hrbata [4.18.0-231.el8]Frantisek Hrbata [4.18.0-230.el8]Frantisek Hrbata [4.18.0-229.el8]Frantisek Hrbata [4.18.0-228.el8]Frantisek Hrbata [4.18.0-227.el8]Frantisek Hrbata [4.18.0-226.el8]Frantisek Hrbata [4.18.0-225.el8]Frantisek Hrbata [4.18.0-224.el8]Frantisek Hrbata [4.18.0-223.el8]Frantisek Hrbata [4.18.0-222.el8]Frantisek Hrbata [4.18.0-221.el8]Frantisek Hrbata [4.18.0-220.el8]Frantisek Hrbata [4.18.0-219.el8]Frantisek Hrbata [4.18.0-218.el8]Frantisek Hrbata [4.18.0-217.el8]Frantisek Hrbata [4.18.0-216.el8]Frantisek Hrbata [4.18.0-215.el8]Frantisek Hrbata [4.18.0-214.el8]Frantisek Hrbata [4.18.0-213.el8]Frantisek Hrbata [4.18.0-212.el8]Frantisek Hrbata [4.18.0-211.el8]Frantisek Hrbata [4.18.0-210.el8]Frantisek Hrbata [4.18.0-209.el8]Frantisek Hrbata [4.18.0-208.el8]Frantisek Hrbata [4.18.0-207.el8]Frantisek Hrbata [4.18.0-206.el8]Frantisek Hrbata [4.18.0-205.el8]Frantisek Hrbata [4.18.0-204.el8]Frantisek Hrbata [4.18.0-203.el8]Frantisek Hrbata [4.18.0-202.el8]Frantisek Hrbata [4.18.0-201.el8]Frantisek Hrbata [4.18.0-200.el8]Frantisek Hrbata [4.18.0-199.el8]Frantisek Hrbata [4.18.0-198.el8]Frantisek Hrbata [4.18.0-197.el8]Frantisek Hrbata [4.18.0-196.el8]Frantisek Hrbata [4.18.0-195.el8]Frantisek Hrbata [4.18.0-194.el8]Frantisek Hrbata [4.18.0-193.15.el8]Frantisek Hrbata [4.18.0-193.14.el8]Frantisek Hrbata [4.18.0-193.13.el8]Frantisek Hrbata [4.18.0-193.12.el8]Frantisek Hrbata [4.18.0-193.11.el8]Frantisek Hrbata [4.18.0-193.10.el8]Frantisek Hrbata [4.18.0-193.9.el8]Frantisek Hrbata [4.18.0-193.8.el8]Frantisek Hrbata [4.18.0-193.7.el8]Frantisek Hrbata [4.18.0-193.6.el8]Frantisek Hrbata [4.18.0-193.5.el8]Frantisek Hrbata [4.18.0-193.4.el8]Frantisek Hrbata [4.18.0-193.3.el8]Frantisek Hrbata [4.18.0-193.2.el8]Frantisek Hrbata [4.18.0-193.1.el8]Frantisek Hrbata [4.18.0-192.2.el8]Frantisek Hrbata [4.18.0-192.1.el8]Frantisek Hrbata [4.18.0-191.2.el8]Frantisek Hrbata [4.18.0-191.1.el8]Frantisek Hrbata [4.18.0-190.3.el8]Frantisek Hrbata [4.18.0-190.2.el8]Frantisek Hrbata [4.18.0-190.1.el8]Frantisek Hrbata [4.18.0-189.1.el8]Frantisek Hrbata [4.18.0-188.3.el8]Frantisek Hrbata [4.18.0-188.2.el8]Frantisek Hrbata [4.18.0-188.1.el8]Frantisek Hrbata [4.18.0-187.2.el8]Frantisek Hrbata [4.18.0-187.1.el8]Frantisek Hrbata [4.18.0-186.2.el8]Frantisek Hrbata [4.18.0-186.1.el8]Bruno Meneguele [4.18.0-185.el8]Herton R. Krzesinski [4.18.0-184.el8]Herton R. Krzesinski [4.18.0-183.el8]Herton R. Krzesinski [4.18.0-182.el8]Herton R. Krzesinski [4.18.0-181.el8]Herton R. Krzesinski [4.18.0-180.el8]Herton R. Krzesinski [4.18.0-179.el8]Herton R. Krzesinski [4.18.0-178.el8]Herton R. Krzesinski [4.18.0-177.el8]Herton R. Krzesinski [4.18.0-176.el8]Bruno Meneguele [4.18.0-175.el8]Bruno Meneguele [4.18.0-174.el8]Bruno Meneguele [4.18.0-173.el8]Bruno Meneguele [4.18.0-172.el8]Bruno Meneguele [4.18.0-171.el8]Bruno Meneguele [4.18.0-170.el8]Bruno Meneguele [4.18.0-169.el8]Bruno Meneguele [4.18.0-168.el8]Bruno Meneguele [4.18.0-167.el8]Bruno Meneguele [4.18.0-166.el8]Bruno Meneguele [4.18.0-165.el8]Bruno Meneguele [4.18.0-164.el8]Bruno Meneguele [4.18.0-163.el8]Bruno Meneguele [4.18.0-162.el8]Bruno Meneguele [4.18.0-161.el8]Bruno Meneguele [4.18.0-160.el8]Bruno Meneguele [4.18.0-159.el8]Bruno Meneguele [4.18.0-158.el8]Bruno Meneguele [4.18.0-157.el8]Bruno Meneguele [4.18.0-156.el8]Bruno Meneguele [4.18.0-155.el8]Bruno Meneguele [4.18.0-154.el8]Bruno Meneguele [4.18.0-153.el8]Bruno Meneguele [4.18.0-152.el8]Phillip Lougher [4.18.0-151.el8]Phillip Lougher [4.18.0-150.el8]Phillip Lougher [4.18.0-149.el8]Phillip Lougher [4.18.0-148.el8]Phillip Lougher [4.18.0-147.13.el8]Phillip Lougher [4.18.0-147.12.el8]Phillip Lougher [4.18.0-147.11.el8]Phillip Lougher [4.18.0-147.10.el8]Phillip Lougher [4.18.0-147.9.el8]Phillip Lougher [4.18.0-147.8.el8]Phillip Lougher [4.18.0-147.7.el8]Phillip Lougher [4.18.0-147.6.el8]Phillip Lougher [4.18.0-147.5.el8]Phillip Lougher [4.18.0-147.4.el8]Phillip Lougher [4.18.0-147.3.el8]Phillip Lougher [4.18.0-147.2.el8]Phillip Lougher [4.18.0-147.1.el8]Phillip Lougher [4.18.0-146.1.el8]Phillip Lougher [4.18.0-145.1.el8]Phillip Lougher [4.18.0-144.1.el8]Herton R. Krzesinski [4.18.0-144.el8]Herton R. Krzesinski [4.18.0-143.el8]Herton R. Krzesinski [4.18.0-142.el8]Herton R. Krzesinski [4.18.0-141.el8]Herton R. Krzesinski [4.18.0-140.el8]Herton R. Krzesinski [4.18.0-139.el8]Herton R. Krzesinski [4.18.0-138.el8]Herton R. Krzesinski [4.18.0-137.el8]Herton R. Krzesinski [4.18.0-136.el8]Herton R. Krzesinski [4.18.0-135.el8]Herton R. Krzesinski [4.18.0-134.el8]Herton R. Krzesinski [4.18.0-133.el8]Herton R. Krzesinski [4.18.0-132.el8]Herton R. Krzesinski [4.18.0-131.el8]Herton R. Krzesinski [4.18.0-130.el8]Herton R. Krzesinski [4.18.0-129.el8]Herton R. Krzesinski [4.18.0-128.el8]Herton R. Krzesinski [4.18.0-127.el8]Herton R. Krzesinski [4.18.0-126.el8]Herton R. Krzesinski [4.18.0-125.el8]Herton R. Krzesinski [4.18.0-124.el8]Herton R. Krzesinski [4.18.0-123.el8]Herton R. Krzesinski [4.18.0-122.el8]Herton R. Krzesinski [4.18.0-121.el8]Herton R. Krzesinski [4.18.0-120.el8]Herton R. Krzesinski [4.18.0-119.el8]Herton R. Krzesinski [4.18.0-118.el8]Herton R. Krzesinski [4.18.0-117.el8]Herton R. Krzesinski [4.18.0-116.el8]Herton R. Krzesinski [4.18.0-115.el8]Herton R. Krzesinski [4.18.0-114.el8]Herton R. Krzesinski [4.18.0-113.el8]Herton R. Krzesinski [4.18.0-112.el8]Herton R. Krzesinski [4.18.0-111.el8]Herton R. Krzesinski [4.18.0-110.el8]Herton R. Krzesinski [4.18.0-109.el8]Herton R. Krzesinski [4.18.0-108.el8]Frantisek Hrbata [4.18.0-107.el8]Frantisek Hrbata [4.18.0-106.el8]Frantisek Hrbata [4.18.0-105.el8]Frantisek Hrbata [4.18.0-104.el8]Herton R. Krzesinski [4.18.0-103.el8]Herton R. Krzesinski [4.18.0-102.el8]Herton R. Krzesinski [4.18.0-101.el8]Herton R. Krzesinski [4.18.0-100.el8]Herton R. Krzesinski [4.18.0-99.el8]Herton R. Krzesinski [4.18.0-98.el8]Herton R. Krzesinski [4.18.0-97.el8]Herton R. Krzesinski [4.18.0-96.el8]Herton R. Krzesinski [4.18.0-95.el8]Herton R. Krzesinski [4.18.0-94.el8]Herton R. Krzesinski [4.18.0-93.el8]Herton R. Krzesinski [4.18.0-92.el8]Herton R. Krzesinski [4.18.0-91.el8]Herton R. Krzesinski [4.18.0-90.el8]Herton R. Krzesinski [4.18.0-89.el8]Herton R. Krzesinski [4.18.0-88.el8]Herton R. Krzesinski [4.18.0-87.el8]Herton R. Krzesinski [4.18.0-86.el8]Herton R. Krzesinski [4.18.0-85.el8]Herton R. Krzesinski [4.18.0-84.el8]Herton R. Krzesinski [4.18.0-83.el8]Herton R. Krzesinski [4.18.0-82.el8]Herton R. Krzesinski [4.18.0-81.el8]Herton R. Krzesinski [4.18.0-80.23.el8]Herton R. Krzesinski [4.18.0-80.22.el8]Herton R. Krzesinski [4.18.0-80.21.el8]Herton R. Krzesinski [4.18.0-80.20.el8]Herton R. Krzesinski [4.18.0-80.19.el8]Herton R. Krzesinski [4.18.0-80.18.el8]Herton R. Krzesinski [4.18.0-80.17.el8]Herton R. Krzesinski [4.18.0-80.16.el8]Herton R. Krzesinski [4.18.0-80.15.el8]Herton R. Krzesinski [4.18.0-80.14.el8]Herton R. Krzesinski [4.18.0-80.13.el8]Herton R. Krzesinski [4.18.0-80.12.el8]Herton R. Krzesinski [4.18.0-80.11.el8]Herton R. Krzesinski [4.18.0-80.10.el8]Herton R. Krzesinski [4.18.0-80.9.el8]Herton R. Krzesinski [4.18.0-80.8.el8]Herton R. Krzesinski [4.18.0-80.7.el8]Herton R. Krzesinski [4.18.0-80.6.el8]Herton R. Krzesinski [4.18.0-80.5.el8]Herton R. Krzesinski [4.18.0-80.4.el8]Herton R. Krzesinski [4.18.0-80.3.el8]Herton R. Krzesinski [4.18.0-80.2.el8]Herton R. Krzesinski [4.18.0-80.1.el8]Herton R. Krzesinski [4.18.0-79.1.el8]Herton R. Krzesinski [4.18.0-78.1.el8]Herton R. Krzesinski [4.18.0-77.1.el8]Herton R. Krzesinski [4.18.0-76.1.el8]Herton R. Krzesinski [4.18.0-75.1.el8]Herton R. Krzesinski [4.18.0-74.1.el8]Herton R. Krzesinski [4.18.0-73.1.el8]Herton R. Krzesinski [4.18.0-72.1.el8]Herton R. Krzesinski [4.18.0-71.1.el8]Herton R. Krzesinski [4.18.0-70.el8]Herton R. Krzesinski [4.18.0-69.el8]Herton R. Krzesinski [4.18.0-68.el8]Herton R. Krzesinski [4.18.0-67.el8]Herton R. Krzesinski [4.18.0-66.el8]Herton R. Krzesinski [4.18.0-65.el8]Herton R. Krzesinski [4.18.0-64.el8]Herton R. Krzesinski [4.18.0-63.el8]Herton R. Krzesinski [4.18.0-62.el8]Herton R. Krzesinski [4.18.0-61.el8]Herton R. Krzesinski [4.18.0-60.el8]Herton R. Krzesinski [4.18.0-59.el8]Herton R. Krzesinski [4.18.0-58.el8]Herton R. Krzesinski [4.18.0-57.el8]Herton R. Krzesinski [4.18.0-56.el8]Herton R. Krzesinski [4.18.0-55.el8]Herton R. Krzesinski [4.18.0-54.el8]Herton R. Krzesinski [4.18.0-53.el8]Herton R. Krzesinski [4.18.0-52.el8]Herton R. Krzesinski [4.18.0-51.el8]Herton R. Krzesinski [4.18.0-50.el8]Herton R. Krzesinski [4.18.0-49.el8]Herton R. Krzesinski [4.18.0-48.el8]Herton R. Krzesinski [4.18.0-47.el8]Herton R. Krzesinski [4.18.0-46.el8]Herton R. Krzesinski [4.18.0-45.el8]Herton R. Krzesinski [4.18.0-44.el8]Herton R. Krzesinski [4.18.0-43.el8]Herton R. Krzesinski [4.18.0-42.el8]Herton R. Krzesinski [4.18.0-41.el8]Herton R. Krzesinski [4.18.0-40.el8]Herton R. Krzesinski [4.18.0-39.el8]Herton R. Krzesinski [4.18.0-38.el8]Herton R. Krzesinski [4.18.0-37.el8]Herton R. Krzesinski [4.18.0-36.el8]Herton R. Krzesinski [4.18.0-35.el8]Herton R. Krzesinski [4.18.0-34.el8]Herton R. Krzesinski [4.18.0-33.el8]Herton R. Krzesinski [4.18.0-32.el8]Herton R. Krzesinski [4.18.0-31.el8]Herton R. Krzesinski [4.18.0-30.el8]Herton R. Krzesinski [4.18.0-29.el8]Herton R. Krzesinski [4.18.0-28.el8]Herton R. Krzesinski [4.18.0-27.el8]Herton R. Krzesinski [4.18.0-26.el8]Herton R. Krzesinski [4.18.0-25.el8]Herton R. Krzesinski [4.18.0-24.el8]Herton R. Krzesinski [4.18.0-23.el8]Herton R. Krzesinski [4.18.0-22.el8]Herton R. Krzesinski [4.18.0-21.el8]Herton R. Krzesinski [4.18.0-20.el8]Herton R. Krzesinski [4.18.0-19.el8]Herton R. Krzesinski [4.18.0-18.el8]Herton R. Krzesinski [4.18.0-17.el8]Herton R. Krzesinski [4.18.0-16.el8]Herton R. Krzesinski [4.18.0-15.el8]Herton R. Krzesinski [4.18.0-14.el8]Herton R. Krzesinski [4.18.0-13.el8]Herton R. Krzesinski [4.18.0-12.el8]Herton R. Krzesinski [4.18.0-11.el8]Herton R. Krzesinski [4.18.0-10.el8]Herton R. Krzesinski [4.18.0-9.el8]Herton R. Krzesinski [4.18.0-8.el8]Herton R. Krzesinski [4.18.0-7.el8]Herton R. Krzesinski [4.18.0-6.el8]Herton R. Krzesinski [4.18.0-5.el8]Herton R. Krzesinski [4.18.0-4.el8]Herton R. Krzesinski [4.18.0-3.el8]Herton R. Krzesinski [4.18.0-2.el8]Herton R. Krzesinski [4.18.0-1.el8]- bpf: Adjust insufficient default bpf_jit_limit (Viktor Malik) [2219567] - bpf: Prevent increasing bpf_jit_limit above max (Viktor Malik) [2219567] - NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN (Benjamin Coddington) [2231130] - perf/arm-dmc620: Fix dmc620_pmu_irqs_lock/cpu_hotplug_lock circular lock dependency (Waiman Long) [2177103] - bonding: fix macvlan over alb bond support (Hangbin Liu) [2117816] - s390/ipl: add missing secure/has_secure file to ipl type 'unknown' (Tobias Huschle) [RHEL-2852] - s390/zcrypt: fix reply buffer calculations for CCA replies (Tobias Huschle) [2227778] - intel_th: pci: Add Meteor Lake-P support (Michael Petlan) [2156847] - perf/x86/rapl: Add support for Intel Meteor Lake (Michael Petlan) [2156816] - iavf: schedule a request immediately after add/delete vlan (Petr Oros) [2231174] - iavf: add iavf_schedule_aq_request() helper (Petr Oros) [2231174] - PCI: rpaphp: Error out on busy status from get-sensor-state (Mamatha Inamdar) [2230045] - powerpc/rtas: export rtas_error_rc() for reuse. (Mamatha Inamdar) [2230045] - powerpc/eeh: Set channel state after notifying the drivers (Mamatha Inamdar) [2230045] - s390/pkey: fix PKEY_TYPE_EP11_AES handling for sysfs attributes (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_VERIFYKEY2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_KBLOB2PROTK[23] (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_CLR2SECK2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_GENSECK2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix/harmonize internal keyblob headers (Tobias Huschle) [2225520] - s390/pkey: add support for ecc clear key (Tobias Huschle) [2225520] - s390/pkey: do not use struct pkey_protkey (Tobias Huschle) [2225520] - s390/pkey: introduce reverse x-mas trees (Tobias Huschle) [2225520] - s390/pkey: zeroize key blobs (Tobias Huschle) [2225520] - md/raid1: fix error: ISO C90 forbids mixed declarations (Nigel Croxon) [RHEL-5084] - md raid1: allow writebehind to work on any leg device set WriteMostly (Nigel Croxon) [RHEL-5084] - md/raid1: hold the barrier until handle_read_error() finishes (Nigel Croxon) [RHEL-5084] - md/raid1: free the r1bio before waiting for blocked rdev (Nigel Croxon) [RHEL-5084] - md/raid1: call free_r1bio() before allow_barrier() in raid_end_bio_io() (Nigel Croxon) [RHEL-5084] - md/raid5-cache: fix null-ptr-deref for r5l_flush_stripe_to_raid() (Nigel Croxon) [RHEL-5084] - md/raid10: fix a 'conf->barrier' leakage in raid10_takeover() (Nigel Croxon) [RHEL-5084] - md: raid1: fix potential OOB in raid1_remove_disk() (Nigel Croxon) [RHEL-5084] - md/raid5-cache: fix a deadlock in r5l_exit_log() (Nigel Croxon) [RHEL-5084] - md/md-bitmap: hold 'reconfig_mutex' in backlog_store() (Nigel Croxon) [RHEL-5084] - md/md-bitmap: remove unnecessary local variable in backlog_store() (Nigel Croxon) [RHEL-5084] - md: restore 'noio_flag' for the last mddev_resume() (Nigel Croxon) [RHEL-5084] - md: don't quiesce in mddev_suspend() (Nigel Croxon) [RHEL-5084] - md: move initialization and destruction of 'io_acct_set' to md.c (Nigel Croxon) [RHEL-5084] - md: enhance checking in md_check_recovery() (Nigel Croxon) [RHEL-5084] - md: wake up 'resync_wait' at last in md_reap_sync_thread() (Nigel Croxon) [RHEL-5084] - md: refactor idle/frozen_sync_thread() to fix deadlock (Nigel Croxon) [RHEL-5084] - md: add a mutex to synchronize idle and frozen in action_store() (Nigel Croxon) [RHEL-5084] - md: refactor action_store() for 'idle' and 'frozen' (Nigel Croxon) [RHEL-5084] - Revert "md: unlock mddev before reap sync_thread in action_store" (Nigel Croxon) [RHEL-5084] - md/raid0: add discard support for the 'original' layout (Nigel Croxon) [RHEL-5084] - md/raid10: prevent soft lockup while flush writes (Nigel Croxon) [RHEL-5084] - md/raid10: fix io loss while replacement replace rdev (Nigel Croxon) [RHEL-5084] - md/raid10: Do not add spare disk when recovery fails (Nigel Croxon) [RHEL-5084] - md/raid10: clean up md_add_new_disk() (Nigel Croxon) [RHEL-5084] - md/raid10: prioritize adding disk to 'removed' mirror (Nigel Croxon) [RHEL-5084] - md/raid10: improve code of mrdev in raid10_sync_request (Nigel Croxon) [RHEL-5084] - md/raid10: fix null-ptr-deref of mreplace in raid10_sync_request (Nigel Croxon) [RHEL-5084] - md/raid5: don't start reshape when recovery or replace is in progress (Nigel Croxon) [RHEL-5084] - md/bitmap: factor out a helper to set timeout (Nigel Croxon) [RHEL-5084] - md/bitmap: always wake up md_thread in timeout_store (Nigel Croxon) [RHEL-5084] - md: factor out a helper to wake up md_thread directly (Nigel Croxon) [RHEL-5084] - md/raid10: fix wrong setting of max_corr_read_errors (Nigel Croxon) [RHEL-5084] - md/raid10: fix overflow of md/safe_mode_delay (Nigel Croxon) [RHEL-5084] - md/raid5: fix a deadlock in the case that reshape is interrupted (Nigel Croxon) [RHEL-5084] - md: add a new api prepare_suspend() in md_personality (Nigel Croxon) [RHEL-5084] - md: export md_is_rdwr() and is_md_suspended() (Nigel Croxon) [RHEL-5084] - md: introduce md_ro_state (Nigel Croxon) [RHEL-5084] - md: fix data corruption for raid456 when reshape restart while grow up (Nigel Croxon) [RHEL-5084] - md/raid5: don't allow replacement while reshape is in progress (Nigel Croxon) [RHEL-5084] - md/raid10: check slab-out-of-bounds in md_bitmap_get_counter (Nigel Croxon) [RHEL-5084] - md: raid1: check if adding pages to resync bio fails (Nigel Croxon) [RHEL-5084] - md: raid1: use __bio_add_page for adding single page to bio (Nigel Croxon) [RHEL-5084] - md: check for failure when adding pages in alloc_behind_master_bio (Nigel Croxon) [RHEL-5084] - md: raid5: use __bio_add_page to add single page to new bio (Nigel Croxon) [RHEL-5084] - md: raid5-log: use __bio_add_page to add single page (Nigel Croxon) [RHEL-5084] - md: use __bio_add_page to add single page (Nigel Croxon) [RHEL-5084] - md/raid5: fix miscalculation of 'end_sector' in raid5_read_one_chunk() (Nigel Croxon) [RHEL-5084]- s390/dasd: fix hanging device after quiesce/resume (Tobias Huschle) [RHEL-2838] - s390/dasd: fix hanging device after request requeue (Tobias Huschle) [RHEL-2830] - s390/dasd: fix command reject error on ESE devices (Tobias Huschle) [RHEL-2850] - s390/dasd: print copy pair message only for the correct error (Tobias Huschle) [RHEL-2831] - s390: add z16 elf platform (Tobias Huschle) [RHEL-2854] - s390/qeth: Don't call dev_close/dev_open (DOWN/UP) (Tobias Huschle) [RHEL-2410] - powerpc/kprobes: Fix null pointer reference in arch_prepare_kprobe() (Mamatha Inamdar) [2227601] - arm64: kdump: Remove custom linux,usable-memory-range handling (Baoquan He) [RHEL-2307] - arm64: kdump: Remove custom linux,elfcorehdr handling (Baoquan He) [RHEL-2307] - media: dvb-core: Fix use-after-free due to race condition at dvb_ca_en50221 (Dean Nelson) [RHEL-1784] {CVE-2022-45919} - media: dvb-core: Fix use-after-free due to race at dvb_register_device() (Dean Nelson) [RHEL-1841] {CVE-2022-45884} - media: dvb-core: Fix use-after-free due on race condition at dvb_net (Dean Nelson) [RHEL-1842] {CVE-2022-45886} - media: dvb_ca_en50221: fix a size write bug (Dean Nelson) [RHEL-1784] - media: dvbdev: fix refcnt bug (Dean Nelson) [RHEL-1841] - media: dvbdev: adopts refcnt to avoid UAF (Dean Nelson) [RHEL-1841] - media: dvbdev: fix error logic at dvb_register_device() (Dean Nelson) [RHEL-1841] - media: dvb_net: avoid speculation from net slot (Dean Nelson) [RHEL-1842] - media: dvb_ca_en50221: avoid speculation from CA slot (Dean Nelson) [RHEL-1784] - media: dvbdev: Fix memleak in dvb_register_device (Dean Nelson) [RHEL-1841] - media: media/dvb: Use kmemdup rather than duplicating its implementation (Dean Nelson) [RHEL-1841] - media: dvbdev: remove double-unlock (Dean Nelson) [RHEL-1841] - media: dvb-core: fix epoll() by calling poll_wait first (Dean Nelson) [RHEL-1784] - media: dvb_ca_en50221: off by one in dvb_ca_en50221_io_do_ioctl() (Dean Nelson) [RHEL-1784] - drm/amd/display: fix the white screen issue when >= 64GB DRAM (Mika Penttilä) [2231934] - gfs2: conversion deadlock do_promote bypass (Bob Peterson) [2225228] - gfs2: do_promote cleanup (Andreas Gruenbacher) [2225228] - gfs2: Make use of list_is_first (Andreas Gruenbacher) [2225228] - x86/cpu: Enable STIBP on AMD if Automatic IBRS is enabled (Waiman Long) [2227916] - Documentation/hw-vuln: Document the interaction between IBRS and STIBP (Waiman Long) [2227916] - x86/CPU/AMD: Make sure EFER[AIBRSE] is set (Waiman Long) [2227916] - fs: don't audit the capability check in simple_xattr_list() (Andrey Albershteyn) [RHEL-863]- redhat: fix to be able to build with rpm 4.19.0 (Denys Vlasenko) - redhat: add additional gating boot tests (Denys Vlasenko) - redhat: list Z-Jiras in the changelog before Y-Jiras (Herton R. Krzesinski) - scsi: st: Add third party poweron reset handling (John Meneghini) [1930388] - kvm: initialize all of the kvm_debugregs structure before sending it to userspace (Jon Maloy) [2179896] {CVE-2023-1513} - bpf: sockmap: Remove preempt_disable in sock_map_sk_acquire (Tomas Glozar) [2229965] - s390/ap: add ap status asynch error support (Tobias Huschle) [2110511] - s390/ap: implement SE AP bind, unbind and associate (Tobias Huschle) [2110511] - s390/ap: introduce low frequency polling possibility (Tobias Huschle) [2110511] - s390/ap: new low level inline functions ap_bapq() and ap_aapq() (Tobias Huschle) [2110511] - s390/ap: provide F bit parameter for ap_rapq() and ap_zapq() (Tobias Huschle) [2110511] - s390/ap: filter ap card functions, new queue functions attribute (Tobias Huschle) [2110511] - s390/ap: make tapq gr2 response a struct (Tobias Huschle) [2110511] - s390/ap: introduce new AP bus sysfs attribute features (Tobias Huschle) [2110511] - s390/ap: exploit new B bit from QCI config info (Tobias Huschle) [2110511] - s390/zcrypt: replace scnprintf with sysfs_emit (Tobias Huschle) [2110511] - s390/zcrypt: rework length information for dqap (Tobias Huschle) [2110511] - s390/zcrypt: make psmid unsigned long instead of long long (Tobias Huschle) [2110511] - s390/ap,zcrypt,vfio: introduce and use ap_queue_status_reg union (Tobias Huschle) [2110511] - s390/ap: fix status returned by ap_qact() (Tobias Huschle) [2110511] - s390/ap: fix status returned by ap_aqic() (Tobias Huschle) [2110511] - s390/ap: adjust whitespace (Tobias Huschle) [2110511] - s390/ap: use insn format for new instructions (Tobias Huschle) [2110511] - s390/zcrypt: Filter admin CPRBs on custom devices (Tobias Huschle) [2110511] - s390/zcrypt: Add admask to zcdn (Tobias Huschle) [2110511] - s390/zcrypt: CCA control CPRB sending (Tobias Huschle) [2110511] - s390/ap: add missing virt_to_phys address conversion (Tobias Huschle) [2110511] - s390/ap: get rid of register asm in ap_dqap() (Tobias Huschle) [2110511] - s390/ap: get rid of register asm (Tobias Huschle) [2110511] - s390/ap: Rework ap_dqap to deal with messages greater than recv buffer (Tobias Huschle) [2110511] - s390/ap: rework assembler functions to use unions for in/out register variables (Tobias Huschle) [2110511] - internal: add new files for RHEL_MINOR=10 change (Denys Vlasenko) - thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards (Desnes Nunes) [2233974] - mm/userfaultfd: don't consider uffd-wp bit of writable migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp handling for THP migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp special cases for fork() (Rafael Aquini) [2231554] - mm/thp: simplify copying of huge zero page pmd when fork (Rafael Aquini) [2231554] - internal: update RHEL_MINOR for the start of RHEL-8.10 development (Denys Vlasenko)- thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards (Desnes Nunes) [2233974] - mm/userfaultfd: don't consider uffd-wp bit of writable migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp handling for THP migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp special cases for fork() (Rafael Aquini) [2231554] - mm/thp: simplify copying of huge zero page pmd when fork (Rafael Aquini) [2231554]- redhat/configs: enable CONFIG_INET_DIAG_DESTROY (Andrea Claudi) [2230213] - net/sched: cls_u32: Fix reference counter leak leading to overflow (Davide Caratti) [2225202] {CVE-2023-3609} - cifs: fix bogus cifs_mount error handling in RHEL8 (Jeffrey Layton) [2215018] - KVM: nVMX: add missing consistency checks for CR0 and CR4 (Ricardo Robaina) [2190257] {CVE-2023-30456} - netfilter: snat: evict closing tcp entries on reply tuple collision (Florian Westphal) [2196717] - tun: avoid double free in tun_free_netdev (Jon Maloy) [2156366 2156371] {CVE-2022-4744} - net/sched: cls_fw: Fix improper refcount update leads to use-after-free (Davide Caratti) [2225103] {CVE-2023-3776} - net/sched: sch_qfq: account for stab overhead in qfq_enqueue (Davide Caratti) [2225196] {CVE-2023-3611} - net/sched: sch_qfq: reintroduce lmax bound check for MTU (Davide Caratti) [2225196] - net/sched: sch_qfq: refactor parsing of netlink parameters (Davide Caratti) [2225196] - net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - net/sched: cls_fw: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - scsi: lpfc: Remove reftag check in DIF paths (Paul Ely) [2229152] - scsi: lpfc: Modify when a node should be put in device recovery mode during RSCN (Paul Ely) [2229152] - scsi: lpfc: Make fabric zone discovery more robust when handling unsolicited LOGO (Paul Ely) [2229152] - scsi: lpfc: Set Establish Image Pair service parameter only for Target Functions (Paul Ely) [2229152] - scsi: lpfc: Revise ndlp kref handling for dev_loss_tmo_callbk and lpfc_drop_node (Paul Ely) [2229152] - scsi: lpfc: Qualify ndlp discovery state when processing RSCN (Paul Ely) [2229152] - gfs2: Fix freeze consistency check in gfs2_trans_add_meta (Andreas Gruenbacher) [2095340] - gfs2: gfs2_freeze_lock_shared cleanup (Andreas Gruenbacher) [2095340] - gfs2: Replace sd_freeze_state with SDF_FROZEN flag (Andreas Gruenbacher) [2095340] - gfs2: Rework freeze / thaw logic (Andreas Gruenbacher) [2095340] - gfs2: Rename SDF_{FS_FROZEN => FREEZE_INITIATOR} (Andreas Gruenbacher) [2095340] - gfs2: Reconfiguring frozen filesystem already rejected (Andreas Gruenbacher) [2095340] - gfs2: Rename gfs2_freeze_lock{ => _shared } (Andreas Gruenbacher) [2095340] - gfs2: Rename the {freeze,thaw}_super callbacks (Andreas Gruenbacher) [2095340] - gfs2: Rename remaining "transaction" glock references (Andreas Gruenbacher) [2095340] - gfs2: init system threads before freeze lock (Bob Peterson) [2095340] - net: mana: Use the correct WQE count for ringing RQ doorbell (Bandan Das) [2222573] - net: mana: Batch ringing RX queue doorbell on receiving packets (Bandan Das) [2222573] - net: mana: Add support for vlan tagging (Bandan Das) [2222573] - net: mana: Fix perf regression: remove rx_cqes, tx_cqes counters (Bandan Das) [2222573] - net: mana: Check if netdev/napi_alloc_frag returns single page (Bandan Das) [2222573] - net: mana: Rename mana_refill_rxoob and remove some empty lines (Bandan Das) [2222573] - net: mana: Add support for jumbo frame (Bandan Das) [2222573] - net: mana: Enable RX path to handle various MTU sizes (Bandan Das) [2222573] - net: mana: Refactor RX buffer allocation code to prepare for various MTU (Bandan Das) [2222573] - net: mana: Use napi_build_skb in RX path (Bandan Das) [2222573] - net: mana: Remove redundant pci_clear_master (Bandan Das) [2222573] - net: mana: Add new MANA VF performance counters for easier troubleshooting (Bandan Das) [2222573] - ice: Fix NULL pointer deref during VF reset (Petr Oros) [2227743] - x86/kasan: Populate shadow for shared chunk of the CPU entry area (Rafael Aquini) [2232451] - x86/kasan: Add helpers to align shadow addresses up and down (Rafael Aquini) [2232451] - x86/kasan: Rename local CPU_ENTRY_AREA variables to shorten names (Rafael Aquini) [2232451] - x86/mm: Populate KASAN shadow for entire per-CPU range of CPU entry area (Rafael Aquini) [2232451] - x86/mm: Recompute physical address for every page of per-CPU CEA mapping (Rafael Aquini) [2232451]- dm cache policy smq: ensure IO doesn't prevent cleaner policy progress (Benjamin Marzinski) [2227951] - netfilter: nf_tables: prevent OOB access in nft_byteorder_eval (Florian Westphal) [2221046] {CVE-2023-35001} - scsi: storvsc: Remove errant duplicate code (Cathy Avery) [2211725] - scsi: storvsc: Limit max_sectors for virtual Fibre Channel devices (Cathy Avery) [2211725] - redhat/configs: Enable CONFIG_AMPERE_ERRATUM_AC03_CPU_38 (Shaoqin Huang) [2219725] - arm64: errata: Mitigate Ampere1 erratum AC03_CPU_38 at stage-2 (Shaoqin Huang) [2219725] - KVM: arm64: Correctly handle page aging notifiers for unaligned memslot (Shaoqin Huang) [2219725] - KVM: arm64: timers: Fix resource leaks in kvm_timer_hyp_init() (Shaoqin Huang) [2219725] - KVM: arm64: vgic-v4: Make the doorbell request robust w.r.t preemption (Shaoqin Huang) [2219725] - KVM: arm64: Don't miss pending interrupts for suspended vCPU (Shaoqin Huang) [2219725] - KVM: arm64: Move vGIC v4 handling for WFI out arch callback hook (Shaoqin Huang) [2219725] - KVM: arm64: PMU: Don't overwrite PMUSERENR with vcpu loaded (Shaoqin Huang) [2219725] - KVM: arm64: PMU: Restore the host's PMUSERENR_EL0 (Shaoqin Huang) [2219725] - KVM: arm64: Restore mdcr_el2 from vcpu (Shaoqin Huang) [2219725] - kvm: arm64: Remove __hyp_this_cpu_read (Shaoqin Huang) [2219725] - wifi: rtw88: unlock on error path in rtw_ops_add_interface() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check only affected links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: send time sync only if needed (Íñigo Huguet) [2196823] - wifi: clean up erroneously introduced file (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Handle return value for iwl_mvm_sta_init (Íñigo Huguet) [2196823] - wifi: rtw88: delete timer and free skb queue when unloading (Íñigo Huguet) [2196823] - wifi: cfg80211: Fix return value in scan logic (Íñigo Huguet) [2196823] - Revert "wifi: ath11k: Enable threaded NAPI" (Íñigo Huguet) [2196823] - wifi: cfg80211: fix receiving mesh packets without RFC1042 header (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: fix init command fail with enabled device (Íñigo Huguet) [2196823] - wifi: ath9k: convert msecs to jiffies where needed (Íñigo Huguet) [2196823] - wifi: ath11k: Add missing check for ioremap (Íñigo Huguet) [2196823] - wifi: ath11k: fix memory leak in WMI firmware stats (Íñigo Huguet) [2196823] - wifi: ath9k: Fix possible stall on ath9k_txq_list_has_key() (Íñigo Huguet) [2196823] - wifi: ath9k: don't allow to overwrite ENDPOINT0 attributes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid baid size integer overflow (Íñigo Huguet) [2196823] - wifi: rtw88: process VO packets without workqueue to avoid PTK rekey failed (Íñigo Huguet) [2196823] - wifi: rtw88: Fix action frame transmission fail before association (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a few rate index validity checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: Validate slots_num before allocating memory (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Validate tid is in valid range before using it (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: fix NULL pointer dereference in iwl_pcie_irq_rx_msix_handler() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check link during TX (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add a NULL pointer check (Íñigo Huguet) [2196823] - wifi: iwlwifi: pull from TXQs with softirqs disabled (Íñigo Huguet) [2196823] - wifi: iwlwifi: Correctly indicate support for VHT TX STBC (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add NULL check before dereferencing the pointer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix potential array out of bounds access (Íñigo Huguet) [2196823] - wifi: rtw88: add missing unwind goto for __rtw_download_firmware() (Íñigo Huguet) [2196823] - wifi: iwlwifi: disable RX STBC when a device doesn't support it (Íñigo Huguet) [2196823] - wifi: iwlwifi: don't silently ignore missing suspend or resume ops (Íñigo Huguet) [2196823] - wifi: ath9k: avoid referencing uninit memory in ath9k_wmi_ctrl_rx (Íñigo Huguet) [2196823] - wifi: ath9k: fix AR9003 mac hardware hang check register offset calculation (Íñigo Huguet) [2196823] - wifi: rtw89: pci: fix interrupt enable mask for HALT C2H of RTL8851B (Íñigo Huguet) [2196823] - wifi: rtw89: fix rtw89_read_chip_ver() for RTL8852B and RTL8851B (Íñigo Huguet) [2196823] - wifi: rtw88: fix incorrect error codes in rtw_debugfs_set_* (Íñigo Huguet) [2196823] - wifi: rtw88: fix incorrect error codes in rtw_debugfs_copy_from_user (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: Handle SO-F device for PCI id 0x7AF0 (Íñigo Huguet) [2196823] - config: wifi: debug configs for brcm80211 (Íñigo Huguet) [2196823] - config: wifi: set RTL8821CS, RTL8822BS and RTL8822CS as disabled (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: spin_lock_bh() to fix lockdep regression (Íñigo Huguet) [2196823] - wifi: mac80211: fragment per STA profile correctly (Íñigo Huguet) [2196823] - wifi: mac80211: Use active_links instead of valid_links in Tx (Íñigo Huguet) [2196823] - wifi: cfg80211: remove links only on AP (Íñigo Huguet) [2196823] - wifi: mac80211: take lock before setting vif links (Íñigo Huguet) [2196823] - wifi: cfg80211: fix link del callback to call correct handler (Íñigo Huguet) [2196823] - wifi: mac80211: fix link activation settings order (Íñigo Huguet) [2196823] - wifi: cfg80211: fix double lock bug in reg_wdev_chan_valid() (Íñigo Huguet) [2196823] - wifi: cfg80211: fix locking in regulatory disconnect (Íñigo Huguet) [2196823] - wifi: cfg80211: fix locking in sched scan stop work (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix -Warray-bounds bug in iwl_mvm_wait_d3_notif() (Íñigo Huguet) [2196823] - wifi: mac80211: fix switch count in EMA beacons (Íñigo Huguet) [2196823] - wifi: mac80211: don't translate beacon/presp addrs (Íñigo Huguet) [2196823] - wifi: mac80211: mlme: fix non-inheritence element (Íñigo Huguet) [2196823] - wifi: cfg80211: reject bad AP MLD address (Íñigo Huguet) [2196823] - wifi: mac80211: use correct iftype HE cap (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix possible NULL pointer dereference in mt7996_mac_write_txwi() (Íñigo Huguet) [2196823] - wifi: rtw89: remove redundant check of entering LPS (Íñigo Huguet) [2196823] - wifi: rtw89: correct PS calculation for SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2196823] - wifi: rtw88: correct PS calculation for SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2196823] - wifi: mt76: mt7615: fix possible race in mt7615_mac_sta_poll (Íñigo Huguet) [2196823] - wifi: b43: fix incorrect __packed annotation (Íñigo Huguet) [2196823] - wifi: rtw88: sdio: Always use two consecutive bytes for word operations (Íñigo Huguet) [2196823] - mac80211_hwsim: fix memory leak in hwsim_new_radio_nl (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add locking to the rate read flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: Don't use valid_links to iterate sta links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't trust firmware n_channels (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix OEM's name in the tas approved list (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix OEM's name in the ppag approved list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix initialization of a return value (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix access to fw_id_to_mac_id (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix DBGI dump (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix number of concurrent link checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix cancel_delayed_work_sync() deadlock (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't double-init spinlock (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: always free dup_data (Íñigo Huguet) [2196823] - wifi: mac80211: recalc chanctx mindef before assigning (Íñigo Huguet) [2196823] - wifi: mac80211: consider reserved chanctx for mindef (Íñigo Huguet) [2196823] - wifi: mac80211: simplify chanctx allocation (Íñigo Huguet) [2196823] - wifi: mac80211: Abort running color change when stopping the AP (Íñigo Huguet) [2196823] - wifi: mac80211: fix min center freq offset tracing (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rfi: disable RFI feature (Íñigo Huguet) [2196823] - wifi: mac80211: Fix puncturing bitmap handling in __ieee80211_csa_finalize() (Íñigo Huguet) [2196823] - wifi: mac80211: fortify the spinlock against deadlock by interrupt (Íñigo Huguet) [2196823] - wifi: cfg80211: Drop entries with invalid BSSIDs in RNR (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: fix authentication timeout due to incorrect RCR value (Íñigo Huguet) [2196823] - wifi: brcmfmac: Check for probe() id argument being NULL (Íñigo Huguet) [2196823] - wifi: rtw88: correct qsel_to_ep[] type as int (Íñigo Huguet) [2196823] - wifi: rtw88: use work to update rate to avoid RCU warning (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: adjust quota to avoid SER L1 caused by access null page (Íñigo Huguet) [2196823] - wifi: mt76: connac: fix stats->tx_bytes calculation (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix endianness of MT_TXD6_TX_RATE (Íñigo Huguet) [2196823] - wifi: rtw88: Update spelling in main.h (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Simplify setting the initial gain (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Add rtl8xxxu_write{8,16,32}_{set,clear} (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Don't print the vendor/product/serial (Íñigo Huguet) [2196823] - wifi: rtw88: Fix memory leak in rtw88_usb (Íñigo Huguet) [2196823] - wifi: rtw88: call rtw8821c_switch_rf_set() according to chip variant (Íñigo Huguet) [2196823] - wifi: rtw88: set pkg_type correctly for specific rtw8821c variants (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8821c: Fix rfe_option field width (Íñigo Huguet) [2196823] - wifi: rtw88: usb: fix priority queue to endpoint mapping (Íñigo Huguet) [2196823] - wifi: rtw88: 8822c: add iface combination (Íñigo Huguet) [2196823] - wifi: rtw88: handle station mode concurrent scan with AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: prevent scan abort with other VIFs (Íñigo Huguet) [2196823] - wifi: rtw88: refine reserved page flow for AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: disallow PS during AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: 8822c: extend reserved page number (Íñigo Huguet) [2196823] - wifi: rtw88: add port switch for AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: add bitmap for dynamic port settings (Íñigo Huguet) [2196823] - wifi: rtw89: mac: use regular int as return type of DLE buffer request (Íñigo Huguet) [2196823] - wifi: mac80211: remove return value check of debugfs_create_dir() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix RFKILL report when driver is going down (Íñigo Huguet) [2196823] - wifi: iwlwifi: mei: re-ask for ownership after it was taken by CSME (Íñigo Huguet) [2196823] - wifi: iwlwifi: mei: make mei filtered scan more aggressive (Íñigo Huguet) [2196823] - wifi: iwlwifi: modify scan request and results when in link protection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable support for MLO APIs (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: prefer RCU_INIT_POINTER() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix potential memory leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix argument to efi.get_variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix MIC removal confusion (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix memory leak in debugfs (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update support for b0 version (Íñigo Huguet) [2196823] - wifi: ath11k: Remove disabling of 80+80 and 160 MHz (Íñigo Huguet) [2196823] - wifi: ath11k: Fix SKB corruption in REO destination ring (Íñigo Huguet) [2196823] - wifi: ath11k: Fix incorrect update of radiotap fields (Íñigo Huguet) [2196823] - wifi: ath11k: fix tx status reporting in encap offload mode (Íñigo Huguet) [2196823] - wifi: ath11k: add peer mac information in failure cases (Íñigo Huguet) [2196823] - wifi: ath11k: Prevent REO cmd failures (Íñigo Huguet) [2196823] - wifi: ath11k: fix double free of peer rx_tid during reo cmd failure (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fill txd by host driver (Íñigo Huguet) [2196823] - wifi: mt76: set NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 on supported drivers (Íñigo Huguet) [2196823] - wifi: mt76: dma: use napi_build_skb (Íñigo Huguet) [2196823] - wifi: mt76: mt7615: increase eeprom size for mt7663 (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable mesh HW amsdu/de-amsdu support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable configured beacon tx rate (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable BSS_CHANGED_MCAST_RATE support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable BSS_CHANGED_BASIC_RATES support (Íñigo Huguet) [2196823] - wifi: iwlwifi: dvm: Fix memcpy: detected field-spanning write backtrace (Íñigo Huguet) [2196823] - wifi: mac80211: remove ieee80211_tx_status_8023 (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 78 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check firmware response size (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add MLO support to SF - use sta pointer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: configure TLC on link activation (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix iwl_mvm_max_amsdu_size() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove RS rate init update argument (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize per-link STA ratescale data (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs-fw: properly access sband->iftype_data (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: only clients can be 20MHz-only (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix iwl_mvm_sta_rc_update for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove per-STA MFP setting (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use BSSID when building probe requests (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update mac id management (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adopt the latest firmware API (Íñigo Huguet) [2196823] - wifi: mt76: connac: add nss calculation into mt76_connac2_mac_tx_rate_val() (Íñigo Huguet) [2196823] - wifi: mt76: connac: fix txd multicast rate setting (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: stop chip reset worker in unregister hook (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: improve reliability of dma reset (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix missing unwind goto in `mt7921u_probe` (Íñigo Huguet) [2196823] - mt76: mt7921: fix kernel panic by accessing unallocated eeprom.data (Íñigo Huguet) [2196823] - wifi: mt76: move mcu_uni_event and mcu_reg_event in common code (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable coredump support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: add full system reset knobs into debugfs (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable full system reset support (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: enable p2p support (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: Replace fake flex-arrays with flexible-array members (Íñigo Huguet) [2196823] - wifi: mt76: Replace zero-length array with flexible-array member (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: add Netgear AXE3000 (A8000) support (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: drop redundant prefix of mt7915_txpower_puts() (Íñigo Huguet) [2196823] - wifi: mt76: fix 6GHz high channel not be scanned (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: fix probe timeout after reboot (Íñigo Huguet) [2196823] - wifi: mt76: move shared mac definitions in mt76_connac2_mac.h (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: get rid of eeprom.h (Íñigo Huguet) [2196823] - wifi: mt76: add mt76_connac_gen_ppe_thresh utility routine (Íñigo Huguet) [2196823] - wifi: mt76: get rid of unused sta_ps callbacks (Íñigo Huguet) [2196823] - wifi: mt76: add mt76_connac_irq_enable utility routine (Íñigo Huguet) [2196823] - wifi: mt76: move irq_tasklet in mt76_dev struct (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: Set memory space enable in PCI_COMMAND if unset (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: use driver flags rather than mac80211 flags to mcu (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: introduce mt7921_get_mac80211_ops utility routine (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix eeprom tx path bitfields (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove mt7996_mcu_set_pm() (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: init mpdu density cap (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix pointer calculation in ie countdown event (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove unused eeprom band selection (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: let non-bufferable MMPDUs use correct hw queue (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: add eht rx rate support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove mt7996_mcu_beacon_check_caps() (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: remove mt7915_mcu_beacon_check_caps() (Íñigo Huguet) [2196823] - wifi: mt76: connac: refresh tx session timer for WED device (Íñigo Huguet) [2196823] - wifi: mt76: add missing locking to protect against concurrent rx/status calls (Íñigo Huguet) [2196823] - wifi: mt76: handle failure of vzalloc in mt7615_coredump_work (Íñigo Huguet) [2196823] - wifi: mt76: drop the incorrect scatter and gather frame (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: rework init flow in mt7915_thermal_init() (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: add dev->hif2 support for mt7916 WED device (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: expose device tree match table (Íñigo Huguet) [2196823] - wifi: mt76: dynamic channel bandwidth changes in AP mode (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix radiotap bitfield (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: unlock on error in mt7915_thermal_temp_store() (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: Remove unneeded semicolon (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix PCI DMA hang after reboot (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix wrong command to set STA channel (Íñigo Huguet) [2196823] - wifi: mt76: remove redundent MCU_UNI_CMD_* definitions (Íñigo Huguet) [2196823] - wifi: ath9k: fix per-packet TX-power cap for TPC (Íñigo Huguet) [2196823] - wifi: ath11k: fix undefined behavior with __fls in dp (Íñigo Huguet) [2196823] - wifi: ath11k: Ignore frags from uninitialized peer in dp. (Íñigo Huguet) [2196823] - wifi: ath11k: print a warning when crypto_alloc_shash() fails (Íñigo Huguet) [2196823] - wifi: ath11k: pci: Add more MODULE_FIRMWARE() entries (Íñigo Huguet) [2196823] - wifi: ath11k: enable SAR support on WCN6750 (Íñigo Huguet) [2196823] - wifi: ath11k: Disable Spectral scan upon removing interface (Íñigo Huguet) [2196823] - wifi: rtw89: add support of concurrent mode (Íñigo Huguet) [2196823] - wifi: rtw89: Disallow power save with multiple stations (Íñigo Huguet) [2196823] - wifi: rtw89: update statistics to FW for fine-tuning performance (Íñigo Huguet) [2196823] - wifi: rtw89: use struct instead of macros to set H2C command of hardware scan (Íñigo Huguet) [2196823] - wifi: rtw89: refine scan function after chanctx (Íñigo Huguet) [2196823] - wifi: rtw89: prohibit enter IPS during HW scan (Íñigo Huguet) [2196823] - wifi: rtw89: coex: send more hardware module info to firmware for 8851B (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update function to get BT RSSI and hardware counter (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add path control register to monitor list (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Enable Wi-Fi RX gain control for free run solution (Íñigo Huguet) [2196823] - wifi: rtw89: fix power save function in WoWLAN mode (Íñigo Huguet) [2196823] - wifi: rtw89: support WoWLAN mode for 8852be (Íñigo Huguet) [2196823] - wifi: iwlwifi: move debug buffer allocation failure to info verbosity (Íñigo Huguet) [2196823] - wifi: iwlwifi: make the loop for card preparation effective (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow number of beacons from FW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement key link switching (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement BAID link switching (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: track station mask for BAIDs (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 77 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use correct sta mask to remove queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid iterating over an un-initialized list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: factor out iwl_mvm_sta_fw_id_mask() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: properly implement HE AP support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix _iwl_mvm_get_scan_type() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix getting lowest TX rate for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: call napi_synchronize() before freeing rx/tx queues (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm-parse: add full BW UL MU-MIMO support (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Support devices with 5-6 out endpoints (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Clean up some messy ifs (Íñigo Huguet) [2196823] - wifi: brcmfmac: add Cypress 43439 SDIO ids (Íñigo Huguet) [2196823] - wifi: rtw89: fix crash due to null pointer of sta in AP mode (Íñigo Huguet) [2196823] - wifi: rtw89: correct 5 MHz mask setting (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add tables for RFK (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add BB and RF tables (2 of 2) (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add BB and RF tables (1 of 2) (Íñigo Huguet) [2196823] - wifi: rtw89: pci: update PCI related settings to support 8851B (Íñigo Huguet) [2196823] - wifi: rtw89: mac: update MAC settings to support 8851b (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: fix TX path to path A for one RF path chip (Íñigo Huguet) [2196823] - wifi: rtw89: read version of analog hardware (Íñigo Huguet) [2196823] - wifi: rtw89: use hardware CFO to improve performance (Íñigo Huguet) [2196823] - wifi: rtw89: support parameter tables by RFE type (Íñigo Huguet) [2196823] - wifi: rtw89: fix authentication fail during scan (Íñigo Huguet) [2196823] - wifi: rtw89: add flag check for power state (Íñigo Huguet) [2196823] - wifi: rtw89: add ieee80211::remain_on_channel ops (Íñigo Huguet) [2196823] - wifi: rtw89: add function to wait for completion of TX skbs (Íñigo Huguet) [2196823] - wifi: rtw89: 8852c: add beacon filter and CQM support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: tx: remove misleading if statement (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix setting the rate for non station cases (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: validate station properly in flush (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: set STA mask for keys in MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix ptk_pn memory leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make iwl_mvm_mac_ctxt_send_beacon() static (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: track AP STA pointer and use it for MFP (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: Fix integer overflow in iwl_write_to_user_buf (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: move memset before early return (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize seq variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix spelling mistake "Gerenal" -> "General" (Íñigo Huguet) [2196823] - wifi: iwlwifi: Fix spelling mistake "upto" -> "up to" (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable new MLD FW API (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a new PCI device ID for BZ device (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add RF Step Type for BZ device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: scan legacy bands and UHB channels with same antenna (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Fix possible division by zero (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: skip dump correctly on hw error (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: fix possible NULL pointer dereference (Íñigo Huguet) [2196823] - wifi: iwlwifi: Fix the duplicate dump name (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: work around ROM bug on AX210 integrated (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add DSM_FUNC_ENABLE_6E value to debugfs (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: cleanup beacon_inject_active during hw restart (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: support wowlan info notification version 2 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make HLTK configuration for PASN station optional (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: request limiting to 8 MSDUs per A-MSDU (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix shift-out-of-bounds (Íñigo Huguet) [2196823] - wifi: iwlwifi: acpi: support modules with high antenna gain (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't drop unencrypted MCAST frames (Íñigo Huguet) [2196823] - wifi: iwlwifi: dbg: print pc register data once fw dump occurred (Íñigo Huguet) [2196823] - wifi: mac80211: add flush_sta method (Íñigo Huguet) [2196823] - wifi: mac80211: flush queues on STA removal (Íñigo Huguet) [2196823] - wifi: ieee80211: correctly mark FTM frames non-bufferable (Íñigo Huguet) [2196823] - wifi: ieee80211: clean up public action codes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't set CHECKSUM_COMPLETE for unsupported protocols (Íñigo Huguet) [2196823] - wifi: iwlwifi: trans: don't trigger d3 interrupt twice (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj-a0 and specific rf devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update init sequence if tx diversity supported (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: move function sequence (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm: Update HE capabilities on 6GHz band for EHT device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor TX csum mode check (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix A-MSDU checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable bz hw checksum from c step (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use OFDM rate if IEEE80211_TX_CTL_NO_CCK_RATE is set (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: convert TID to FW value on queue remove (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configuration for SO,SOF MAC and HR RF (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a validity check of queue_id in iwl_txq_reclaim (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm-parse: enable 160/320 MHz for AP mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: debug: fix crash in __iwl_err() (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8821CS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8822CS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8822BS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: main: Reserve 8 bytes of extra TX headroom for SDIO cards (Íñigo Huguet) [2196823] - wifi: rtw88: main: Add the {cpwm,rpwm}_addr for SDIO based chipsets (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Support SDIO specific bits in the power on sequence (Íñigo Huguet) [2196823] - wifi: rtw88: sdio: Add HCI implementation for SDIO based chipsets (Íñigo Huguet) [2196823] - wifi: rtw88: Clear RTW_FLAG_POWERON early in rtw_mac_power_switch() (Íñigo Huguet) [2196823] - wifi: ath12k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath10k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath11k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath11k: Send 11d scan start before WMI_START_SCAN_CMDID (Íñigo Huguet) [2196823] - wifi: ath11k: fix writing to unintended memory region (Íñigo Huguet) [2196823] - wifi: ath11k: Fix invalid management rx frame length issue (Íñigo Huguet) [2196823] - wifi: ath11k: fix rssi station dump not updated in QCN9074 (Íñigo Huguet) [2196823] - wifi: ath11k: Configure the FTM responder role using firmware capability flag (Íñigo Huguet) [2196823] - wifi: ath11k: Optimize 6 GHz scan time (Íñigo Huguet) [2196823] - wifi: mac80211: set EHT support flag in AP mode (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: fix potential NULL deref in hwsim_pmsr_report_nl() (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix duplicate entry in iwl_dev_info_table (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix the order of TIMING_MEASUREMENT notifications (Íñigo Huguet) [2196823] - bus: mhi: host: Use mhi_tryset_pm_state() for setting fw error state (Íñigo Huguet) [2196823] - bus: mhi: host: Remove duplicate ee check for syserr (Íñigo Huguet) [2196823] - bus: mhi: host: Avoid ringing EV DB if there are no elements to process (Íñigo Huguet) [2196823] - net: rfkill-gpio: Add explicit include for of.h (Íñigo Huguet) [2196823] - net: qrtr: correct types of trace event parameters (Íñigo Huguet) [2196823] - wifi: rt2x00: Fix memory leak when handling surveys (Íñigo Huguet) [2196823] - wifi: b43legacy: Remove the unused function prev_slot() (Íñigo Huguet) [2196823] - wifi: rtw89: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: rtw89: fix potential race condition between napi_init and napi_enable (Íñigo Huguet) [2196823] - wifi: rtw89: config EDCCA threshold during scan to prevent TX failed (Íñigo Huguet) [2196823] - wifi: rtw89: fix incorrect channel info during scan due to ppdu_sts filtering (Íñigo Huguet) [2196823] - wifi: rtw89: remove superfluous H2C of join_info (Íñigo Huguet) [2196823] - wifi: rtw89: set data lowest rate according to AP supported rate (Íñigo Huguet) [2196823] - wifi: rtw89: add counters of register-based H2C/C2H (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update Wi-Fi Bluetooth coexistence version to 7.0.1 (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add report control v5 variation (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update RTL8852B LNA2 hardware parameter (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Not to enable firmware report when WiFi is power saving (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add LPS protocol radio state for RTL8852B (Íñigo Huguet) [2196823] - bus: mhi: pci_generic: Add Foxconn T99W510 (Íñigo Huguet) [2196823] - bus: mhi: host: Use ERANGE for BHIOFF/BHIEOFF range check (Íñigo Huguet) [2196823] - bus: mhi: host: Range check CHDBOFF and ERDBOFF (Íñigo Huguet) [2196823] - wifi: mwifiex: remove unused evt_buf variable (Íñigo Huguet) [2196823] - wifi: brcmsmac: ampdu: remove unused suc_mpdu variable (Íñigo Huguet) [2196823] - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg() (Íñigo Huguet) [2196823] - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg() (Íñigo Huguet) [2196823] - wifi: brcmsmac: remove unused has_5g variable (Íñigo Huguet) [2196823] - wifi: b43legacy: remove unused freq_r3A_value function (Íñigo Huguet) [2196823] - wifi: rtlwifi: Replace fake flex-array with flex-array member (Íñigo Huguet) [2196823] - wifi: rtw88: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: rndis_wlan: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: rndis_wlan: clean up a type issue (Íñigo Huguet) [2196823] - wifi: rtw88: remove unused rtw_pci_get_tx_desc function (Íñigo Huguet) [2196823] - wifi: rsi: Slightly simplify rsi_set_channel() (Íñigo Huguet) [2196823] - wifi: ipw2x00: remove unused _ipw_read16 function (Íñigo Huguet) [2196823] - wifi: mac80211: enable EHT mesh support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: correctly use link in iwl_mvm_sta_del() (Íñigo Huguet) [2196823] - wifi: iwlwifi: separate AP link management queues (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: free probe_resp_data later (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 75 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: move max_agg_bufsize into host TLC lq_sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: send full STA during HW restart (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rework active links counting (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update mac config when assigning chanctx (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the correct link queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: clean up mac_id vs. link_id in MLD sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix station link data leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize max_rc_amsdu_len per-link (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use appropriate link for rate selection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the new lockdep-checking macros (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove chanctx WARN_ON (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid sending MAC context for idle (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove only link-specific AP keys (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: skip inactive links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust iwl_mvm_scan_respect_p2p_go_iter() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rxmq: report link ID to mac80211 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use bcast/mcast link station id (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: translate management frame address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement mac80211 callback change_sta_links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the link sta address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust rs init to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust radar detection to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust iwl_mvm_sec_key_remove_ap to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make a few warnings only trigger once (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: coex: start handling multiple links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs-fw: don't crash on missing channel (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use STA link address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: skip MEI update for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix narrow RU check for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make some HW flags conditional (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement link change ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust some cleanup functions to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_mac_sta_state_common() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update iwl_mvm_tx_reclaim() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust to MLO assign/unassign/switch_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add fw link id allocation (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust internal stations to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: replace bss_info_changed() with vif_cfg/link_info_changed() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add link_conf parameter for add/remove/change link (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't check dtim_period in new API (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust SMPS for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add set_hw_timestamp to mld ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add link to firmware earlier (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust some PS and PM methods to MLD (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust mld_mac_ctxt_/beacon_changed() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust smart fifo configuration to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: align to the LINK cmd update in the FW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: always use the sta->addr as the peers addr (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: modify link instead of removing it during csa (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix crash on queue removal for MLD API too (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix "modify_mask" value in the link cmd. (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add all missing ops to iwl_mvm_mld_ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for post_channel_switch in MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: unite sta_modify_disable_tx flows (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add cancel/remain_on_channel for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_roc() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add some new MLD ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add sta handling flows for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an indication that the new MLD API is used (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: sta preparation for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: vif preparation for MLO (Íñigo Huguet) [2196823] - wifi: nl80211: support advertising S1G capabilities (Íñigo Huguet) [2196823] - wifi: mac80211: S1G capabilities information element in probe request (Íñigo Huguet) [2196823] - mac80211: minstrel_ht: remove unused n_supported variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Use 64-bit division helper in iwl_mvm_get_crosstimestamp_fw() (Íñigo Huguet) [2196823] - wifi: carl9170: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: carl9170: Fix multiple -Warray-bounds warnings (Íñigo Huguet) [2196823] - wifi: ath10k: remove unused ath10k_get_ring_byte function (Íñigo Huguet) [2196823] - wifi: ath12k: incorrect channel survey dump (Íñigo Huguet) [2196823] - wifi: ath12k: fix incorrect handling of AMSDU frames (Íñigo Huguet) [2196823] - wifi: ath12k: fix packets are sent in native wifi mode while we set raw mode (Íñigo Huguet) [2196823] - wifi: ath12k: fill peer meta data during reo_reinject (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR report support via virtio (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR abort support via virtio (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR request support via virtio (Íñigo Huguet) [2196823] - wifi: nl80211: make nl80211_send_chandef non-static (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR capability support (Íñigo Huguet) [2196823] - mac80211: support RNR for EMA AP (Íñigo Huguet) [2196823] - cfg80211: support RNR for EMA AP (Íñigo Huguet) [2196823] - wifi: mac80211: use bullet list for amsdu_mesh_control formats list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix NULL deref in iwl_mvm_mld_disable_txq (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: EMA support (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: Multiple BSSID support (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: move beacon transmission to a separate function (Íñigo Huguet) [2196823] - wifi: mac80211: generate EMA beacons in AP mode (Íñigo Huguet) [2196823] - wifi: nl80211: Update the documentation of NL80211_SCAN_FLAG_COLOCATED_6GHZ (Íñigo Huguet) [2196823] - wifi: mac80211: implement support for yet another mesh A-MSDU format (Íñigo Huguet) [2196823] - wifi: mac80211: add mesh fast-rx support (Íñigo Huguet) [2196823] - wifi: mac80211: use mesh header cache to speed up mesh forwarding (Íñigo Huguet) [2196823] - wifi: mac80211: mesh fast xmit support (Íñigo Huguet) [2196823] - wifi: mac80211: fix race in mesh sequence number assignment (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add debugfs to get TAS status (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: support enabling and disabling HW timestamping (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_add_sta(), iwl_mvm_rm_sta() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove not needed initializations (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_sta_send_to_fw() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_cfg_he_sta() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Don't send MAC CTXT cmd after deauthorization (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add stop_ap() and leave_ibss() callbacks for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add start_ap() and join_ibss() callbacks for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: select ptp cross timestamp from multiple reads (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement PHC clock adjustments (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable TX beacon protection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for timing measurement (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: report hardware timestamps in RX/TX status (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: read synced time from firmware if supported (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for PTP HW clock (PHC) (Íñigo Huguet) [2196823] - wifi: ath12k: Enable IMPS for WCN7850 (Íñigo Huguet) [2196823] - wifi: ath12k: Identify DFS channel when sending scan channel list command (Íñigo Huguet) [2196823] - wifi: ath12k: fix firmware assert during channel switch for peer sta (Íñigo Huguet) [2196823] - wifi: ath12k: fix memory leak in ath12k_qmi_driver_event_work() (Íñigo Huguet) [2196823] - wifi: ath11k: fix BUFFER_DONE read on monitor ring rx buffer (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Support new chip RTL8710BU aka RTL8188GU (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: RTL8192EU always needs full init (Íñigo Huguet) [2196823] - wifi: iwlwifi: Avoid disabling GCC specific flag with clang (Íñigo Huguet) [2196823] - wifi: iwlwifi: suppress printf warnings in tracing (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: pnvm: fix uefi reduced TX power loading (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj and Bz devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs: print BAD_RATE for invalid HT/VHT index (Íñigo Huguet) [2196823] - wifi: iwlwifi: Replace space with tabs as code indent (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add required space before open '(' (Íñigo Huguet) [2196823] - wifi: iwlwifi: Remove prohibited spaces (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix typos in comment (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove setting of 'sta' parameter (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an unassign_vif_chanctx() callback for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor __iwl_mvm_unassign_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an assign_vif_chanctx() callback for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor __iwl_mvm_assign_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add a remove_interface() callback for mld mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add an add_interface() callback for mld mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new STA related commands (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new LINK command (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new MAC CTXT command (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Refactor MAC_CONTEXT_CMD sending flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Refactor STA_HE_CTXT_CMD sending flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Add driver defined dump file name (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Add new tlv for dump file name extension (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid sta lookup in queue alloc (Íñigo Huguet) [2196823] - wifi: ath11k: fix deinitialization of firmware resources (Íñigo Huguet) [2196823] - wifi: ath11k: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: ath12k: Add missing unwind goto in ath12k_pci_probe() (Íñigo Huguet) [2196823] - net: Use of_property_present() for testing DT property presence (Íñigo Huguet) [2196823] - wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies() (Íñigo Huguet) [2196823] {CVE-2023-1380} - wifi: rtw88: fix memory leak in rtw_usb_probe() (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add v5 firmware cycle status report (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add v2 Bluetooth scan info (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Fix wrong structure assignment at null data report (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add register monitor report v2 format (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add traffic TX/RX info and its H2C (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add WiFi role info v2 (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add more error_map and counter to log (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: use module_usb_driver (Íñigo Huguet) [2196823] - wifi: rtw89: release RX standby timer of beamformee CSI to save power (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: mark Edimax EW-7811Un V2 as tested (Íñigo Huguet) [2196823] - wifi: brcmfmac: Use ISO3166 country code and rev 0 as fallback on 4356 (Íñigo Huguet) [2196823] - wifi: move raycs, wl3501 and rndis_wlan to legacy directory (Íñigo Huguet) [2196823] - wifi: move mac80211_hwsim and virt_wifi to virtual directory (Íñigo Huguet) [2196823] - wifi: ath11k: add debug prints in regulatory WMI event processing (Íñigo Huguet) [2196823] - wifi: ath11k: add support to parse new WMI event for 6 GHz (Íñigo Huguet) [2196823] - wifi: ath11k: use proper regulatory reference for bands (Íñigo Huguet) [2196823] - bus: mhi: host: pci_generic: Revert "Add a secondary AT port to Telit FN990" (Íñigo Huguet) [2196823] - bus: mhi: host: pci_generic: Drop redundant pci_enable_pcie_error_reporting() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix EOF bit reporting (Íñigo Huguet) [2196823] - wifi: iwlwifi: Do not include radiotap EHT user info if not needed (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add EHT RU allocation to radiotap (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update logs for yoyo reset sw changes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: clean up duplicated defines (Íñigo Huguet) [2196823] - wifi: iwlwifi: rs-fw: break out for unsupported bandwidth (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add support for B step of BnJ-Fm4 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make flush code a bit clearer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid UB shift of snif_queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add primary 80 known for EHT radiotap (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: parse FW frame metadata for EHT sniffer mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: decode USIG_B1_B7 RU to nl80211 RU width (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rename define to generic name (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow Microsoft to use TAS (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add all EHT based on data0 info from HW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add EHT radiotap info based on rate_n_flags (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an helper function radiotap TLVs (Íñigo Huguet) [2196823] - wifi: radiotap: separate vendor TLV into header/content (Íñigo Huguet) [2196823] - bus: mhi: ep: Demote unsupported channel error log to debug (Íñigo Huguet) [2196823] - bus: mhi: host: Remove mhi_poll() API (Íñigo Huguet) [2196823] - wifi: iwlwifi: reduce verbosity of some logging events (Íñigo Huguet) [2196823] - wifi: iwlwifi: Adding the code to get RF name for MsP device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: mark mac header with no data frames (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add LSIG info to radio tap info in EHT (Íñigo Huguet) [2196823] - wifi: nl80211: Add support for randomizing TA of auth and deauth frames (Íñigo Huguet) [2196823] - wifi: mac80211: add LDPC related flags in ieee80211_bss_conf (Íñigo Huguet) [2196823] - wifi: mac80211: add EHT MU-MIMO related flags in ieee80211_bss_conf (Íñigo Huguet) [2196823] - wifi: mac80211: introduce ieee80211_refresh_tx_agg_session_timer() (Íñigo Huguet) [2196823] - wifi: mac80211: add support for driver adding radiotap TLVs (Íñigo Huguet) [2196823] - wifi: radiotap: Add EHT radiotap definitions (Íñigo Huguet) [2196823] - wifi: mac80211: fix ieee80211_link_set_associated() type (Íñigo Huguet) [2196823] - wifi: mac80211: simplify reasoning about EHT capa handling (Íñigo Huguet) [2196823] - wifi: mac80211: mlme: remove pointless sta check (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: Indicate support for NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT (Íñigo Huguet) [2196823] - wifi: mac80211: add netdev per-link debugfs data and driver hook (Íñigo Huguet) [2196823] - wifi: mac80211: remove SMPS from AP debugfs (Íñigo Huguet) [2196823] - wifi: mac80211: add pointer from bss_conf to vif (Íñigo Huguet) [2196823] - wifi: mac80211: warn only once on AP probe (Íñigo Huguet) [2196823] - wifi: cfg80211/mac80211: report link ID on control port RX (Íñigo Huguet) [2196823] - wifi: mac80211: add support for set_hw_timestamp command (Íñigo Huguet) [2196823] - wifi: nl80211: add a command to enable/disable HW timestamping (Íñigo Huguet) [2196823] - wifi: wireless: cleanup unused function parameters (Íñigo Huguet) [2196823] - wifi: wireless: correct primary channel validation on 6 GHz (Íñigo Huguet) [2196823] - wifi: wireless: return primary channel regardless of DUP (Íñigo Huguet) [2196823] - wifi: mac80211: allow beacon protection HW offload (Íñigo Huguet) [2196823] - wifi: mac80211: check key taint for beacon protection (Íñigo Huguet) [2196823] - wifi: mac80211: clear all bits that relate rtap fields on skb (Íñigo Huguet) [2196823] - wifi: mac80211: adjust scan cancel comment/check (Íñigo Huguet) [2196823] - wifi: nl80211: Update the documentation of NL80211_SCAN_FLAG_COLOCATED_6GHZ (Íñigo Huguet) [2196823] - gpiolib: split linux/gpio/driver.h out of linux/gpio.h (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192se: Remove some unused variables (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Return the original error from rtw_mac_power_switch() (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Return the original error from rtw_pwr_seq_parser() (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add 4359C0 firmware definition (Íñigo Huguet) [2196823] - wifi: rtw89: fix SER L1 might stop entering LPS issue (Íñigo Huguet) [2196823] - wifi: ath11k: Add tx ack signal support for management packets (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add BCM4378B3 support (Íñigo Huguet) [2196823] - wifi: brcmfmac: common: Add support for external calibration blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Load and provide TxCap blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: common: Add support for downloading TxCap blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4387 (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Pass the PMK in binary instead of hex (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Add support for PMKID_V3 operations (Íñigo Huguet) [2196823] - wifi: brcmfmac: feature: Add support for setting feats based on WLC version (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Add support for scan params v2 (Íñigo Huguet) [2196823] - wifi: brcmfmac: chip: Handle 1024-unit sizes for TCM blocks (Íñigo Huguet) [2196823] - wifi: brcmfmac: chip: Only disable D11 cores; handle an arbitrary number (Íñigo Huguet) [2196823] - wifi: ath11k: generate rx and tx mcs maps for supported HE mcs (Íñigo Huguet) [2196823] - wifi: ath11k: move HE MCS mapper to a separate function (Íñigo Huguet) [2196823] - wifi: ath11k: push MU-MIMO params from hostapd to hardware (Íñigo Huguet) [2196823] - wifi: ath11k: modify accessor macros to match index size (Íñigo Huguet) [2196823] - wifi: ath6kl: reduce WARN to dev_dbg() in callback (Íñigo Huguet) [2196823] - wifi: brcmfmac: support CQM RSSI notification with older firmware (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Provide a buffer of random bytes to the device (Íñigo Huguet) [2196823] - wifi: brcmfmac: acpi: Add support for fetching Apple ACPI properties (Íñigo Huguet) [2196823] - wifi: ath12k: remove memset with byte count of 278528 (Íñigo Huguet) [2196823] - wifi: wcn36xx: Slightly optimize PREPARE_HAL_BUF() (Íñigo Huguet) [2196823] - wifi: rtw89: refine FW feature judgement on packet drop (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: enable hw_scan support (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: add channel encoding for hw_scan (Íñigo Huguet) [2196823] - wifi: rtw89: adjust channel encoding to common function (Íñigo Huguet) [2196823] - wifi: rtw89: fw: configure CRASH_TRIGGER feature for 8852B (Íñigo Huguet) [2196823] - wifi: rtw89: add tx_wake notify for 8852B (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8822c: Implement RTL8822CS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8822b: Implement RTL8822BS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8821c: Implement RTL8821CS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Add SDIO HCI support in the TX/page table setup (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Add support for the SDIO HCI in rtw_pwr_seq_parser() (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Remove always true condition in rtl8xxxu_print_chipinfo (Íñigo Huguet) [2196823] - wifi: rtw89: add RNR support for 6 GHz scan (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192de: Remove the unused variable bcnfunc_enable (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: 8188e: parse single one element of RA report for station mode (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192ce: fix dealing empty EEPROM values (Íñigo Huguet) [2196823] - wifi: ath11k: fix SAC bug on peer addition with sta band migration (Íñigo Huguet) [2196823] - wifi: ath10k: Remove redundant assignment to changed_flags (Íñigo Huguet) [2196823] - wifi: ath10k: snoc: enable threaded napi on WCN3990 (Íñigo Huguet) [2196823] - wifi: ath5k: fix an off by one check in ath5k_eeprom_read_freq_list() (Íñigo Huguet) [2196823] - wifi: ath5k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2196823] - wifi: ath11k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2196823] - wifi: ath12k: PCI ops for wakeup/release MHI (Íñigo Huguet) [2196823] - wifi: ath12k: Handle lock during peer_id find (Íñigo Huguet) [2196823] - wifi: ath9k: hif_usb: fix memory leak of remain_skbs (Íñigo Huguet) [2196823] - wifi: ath11k: fix return value check in ath11k_ahb_probe() (Íñigo Huguet) [2196823] - wifi: ath12k: use kfree_skb() instead of kfree() (Íñigo Huguet) [2196823] - wifi: ath: Silence memcpy run-time false positive warning (Íñigo Huguet) [2196823] - wifi: ath10k: Remove the unused function shadow_dst_wr_ind_addr() and ath10k_ce_error_intr_enable() (Íñigo Huguet) [2196823] - wifi: ath12k: dp_mon: clean up some inconsistent indentings (Íñigo Huguet) [2196823] - wifi: ath12k: dp_mon: Fix unsigned comparison with less than zero (Íñigo Huguet) [2196823] - wifi: ath12k: Fix spelling mistakes in warning messages and comments (Íñigo Huguet) [2196823] - wifi: ath6kl: minor fix for allocation size (Íñigo Huguet) [2196823] - wifi: ath11k: Set ext passive scan flag to adjust passive scan start time (Íñigo Huguet) [2196823]- xfrm: add NULL check in xfrm_update_ae_params (Daniel Mendes) [2218948] {CVE-2023-3772} - scsi: storvsc: Fix handling of virtual Fibre Channel timeouts (Cathy Avery) [1986067] - netfilter: xt_owner: Add supplementary groups option (Phil Sutter) [2136194] - netfilter: nf_tables: can't schedule in nft_chain_validate (Florian Westphal) [2230460] - drm/nouveau/nvkm/dp: Add workaround to fix DP 1.3+ DPCD issues (Karol Herbst) [2229989] - net: deprecate PF_KEY (Sabrina Dubroca) [RHEL-1257] - KVM: SEV: remove ghcb variable declarations (Vitaly Kuznetsov) [2213807] - KVM: SEV: only access GHCB fields once (Vitaly Kuznetsov) [2213807] {CVE-2023-4155} - KVM: SEV: snapshot the GHCB before accessing it (Vitaly Kuznetsov) [2213807] {CVE-2023-4155} - Documentation/x86: Fix backwards on/off logic about YMM support (Waiman Long) [2229884] {CVE-2022-40982} - KVM: Add GDS_NO support to KVM (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add Kconfig option for GDS (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add force option to GDS mitigation (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add Gather Data Sampling mitigation (Waiman Long) [2229884] {CVE-2022-40982} - x86/bugs: Use sysfs_emit() (Waiman Long) [2229884] - Documentation/ABI: Mention retbleed vulnerability info file for sysfs (Waiman Long) [2229884] - docs/kernel-parameters: Update descriptions for "mitigations=" param with retbleed (Waiman Long) [2229884] - arm64: correct the effect of mitigations off on kpti (Waiman Long) [2229884] - x86/speculation: Add missing srbds=off to the mitigations= help text (Waiman Long) [2229884] - usb: typec: ucsi: Mark dGPUs as DEVICE scope (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Remove ccgx,firmware-build property (Desnes Nunes) [2222463] - usb: typec: ucsi_ccg: Add OF support (Desnes Nunes) [2222463] - usb: typec: ucsi/ucsi_ccg: Convert to i2c's .probe_new() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Add ACPI property to align with device-tree (Desnes Nunes) [2222463] - dt-bindings: usb: Add Cypress cypd4226 Type-C controller (Desnes Nunes) [2222463] - i2c: designware-pci: Switch to use i2c_new_ccgx_ucsi() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Convert to use dev_err_probe() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Use temporary variable for struct device (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Switch to use i2c_new_ccgx_ucsi() (Desnes Nunes) [2222463] - i2c: Remove support for dangling device properties (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Constify the software node (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Use PTR_ERR_OR_ZERO() to simplify code (Desnes Nunes) [2222463] - i2c: nvidia-gpu: convert to use i2c_new_client_device() (Desnes Nunes) [2222463] - i2c: Add support for software nodes (Desnes Nunes) [2222463] - i2c: Introduce common module to instantiate CCGx UCSI (Desnes Nunes) [2222463] - power: supply: Fix logic checking if system is running from battery (Desnes Nunes) [2222463] - redhat: support virtio-mem on x86-64 as tech-preview (David Hildenbrand) [2229123] - virtio/virtio_mem: handle a possible NULL as a memcpy parameter (David Hildenbrand) [2229123] - virtio-mem: support VIRTIO_MEM_F_UNPLUGGED_INACCESSIBLE (David Hildenbrand) [2229123] - virtio-mem: disallow mapping virtio-mem memory via /dev/mem (David Hildenbrand) [2229123] - kernel/resource: disallow access to exclusive system RAM regions (David Hildenbrand) [2229123] - kernel/resource: clean up and optimize iomem_is_exclusive() (David Hildenbrand) [2229123] - virtio-mem: kdump mode to sanitize /proc/vmcore access (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_remove() into virtio_mem_deinit_hotplug() (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_probe() into virtio_mem_init_hotplug() (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_init() into virtio_mem_init_hotplug() (David Hildenbrand) [2229123] - proc/vmcore: fix possible deadlock on concurrent mmap and read (David Hildenbrand) [2229123] - proc/vmcore: don't fake reading zeroes on surprise vmcore_cb unregistration (David Hildenbrand) [2229123] - proc/vmcore: fix clearing user buffer by properly using clear_user() (David Hildenbrand) [2229123] - proc/vmcore: convert oldmem_pfn_is_ram callback to more generic vmcore callbacks (David Hildenbrand) [2229123] - proc/vmcore: let pfn_is_ram() return a bool (David Hildenbrand) [2229123] - x86/xen: print a warning when HVMOP_get_mem_type fails (David Hildenbrand) [2229123] - x86/xen: simplify xen_oldmem_pfn_is_ram() (David Hildenbrand) [2229123] - x86/xen: update xen_oldmem_pfn_is_ram() documentation (David Hildenbrand) [2229123] - virtio-mem: fix sleeping in RCU read side section in virtio_mem_online_page_cb() (David Hildenbrand) [2229123] - virtio-mem: prioritize unplug from ZONE_MOVABLE in Big Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level unplug handling in Big Block Mode (David Hildenbrand) [2229123] - virtio-mem: prioritize unplug from ZONE_MOVABLE in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level unplug handling in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level plug handling in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: use page_zonenum() in virtio_mem_fake_offline() (David Hildenbrand) [2229123] - virtio-mem: don't read big block size in Sub Block Mode (David Hildenbrand) [2229123] - fs/proc/kcore: use page_offline_(freeze|thaw) (David Hildenbrand) [2229123] - virtio-mem: use page_offline_(start|end) when setting PageOffline() (David Hildenbrand) [2229123] - mm: introduce page_offline_(begin|end|freeze|thaw) to synchronize setting PageOffline() (David Hildenbrand) [2229123] - fs/proc/kcore: don't read offline sections, logically offline pages and hwpoisoned pages (David Hildenbrand) [2229123] - fs/proc/kcore: pfn_is_ram check only applies to KCORE_RAM (David Hildenbrand) [2229123] - fs/proc/kcore: drop KCORE_REMAP and KCORE_OTHER (David Hildenbrand) [2229123] - proc/kcore: Remove unused kclist_add_remap() (David Hildenbrand) [2229123] - x86/gart: Exclude GART aperture from kcore (David Hildenbrand) [2229123] - kernel/resource: remove first_lvl / siblings_only logic (David Hildenbrand) [2229123] - kernel/resource: make walk_mem_res() find all busy IORESOURCE_MEM resources (David Hildenbrand) [2229123] - kernel/resource: make walk_system_ram_res() find all busy IORESOURCE_SYSTEM_RAM resources (David Hildenbrand) [2229123] - kernel/resource.c: fix kernel-doc markups (David Hildenbrand) [2229123] - resource: avoid unnecessary lookups in find_next_iomem_res() (David Hildenbrand) [2229123] - resource: fix locking in find_next_iomem_res() (David Hildenbrand) [2229123] - virtio-mem: check against mhp_get_pluggable_range() which memory we can hotplug (David Hildenbrand) [2229123] - virtio-mem: Assign boolean values to a bool variable (David Hildenbrand) [2229123] - mm/memory_hotplug: MEMHP_MERGE_RESOURCE -> MHP_MERGE_RESOURCE (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) - safe memory hotunplug (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) - basic memory hotunplug (David Hildenbrand) [2229123] - mm/memory_hotplug: extend offline_and_remove_memory() to handle more than one memory block (David Hildenbrand) [2229123] - virtio-mem: allow to force Big Block Mode (BBM) and set the big block size (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) memory hotplug (David Hildenbrand) [2229123] - virtio-mem: factor out adding/removing memory from Linux (David Hildenbrand) [2229123] - virtio-mem: memory notifier callbacks are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: existing (un)plug functions are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: memory block ids are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: nb_sb_per_mb and subblock_size are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: subblock states are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: memory block states are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: document Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: generalize handling when memory is getting onlined deferred (David Hildenbrand) [2229123] - virtio-mem: don't always trigger the workqueue when offlining memory (David Hildenbrand) [2229123] - virtio-mem: drop last_mb_id (David Hildenbrand) [2229123] - virtio-mem: generalize virtio_mem_overlaps_range() (David Hildenbrand) [2229123] - virtio-mem: generalize virtio_mem_owned_mb() (David Hildenbrand) [2229123] - virtio-mem: generalize check for added memory (David Hildenbrand) [2229123] - virtio-mem: retry fake-offlining via alloc_contig_range() on ZONE_MOVABLE (David Hildenbrand) [2229123] - virtio-mem: factor out handling of fake-offline pages in memory notifier (David Hildenbrand) [2229123] - virtio-mem: factor out fake-offlining into virtio_mem_fake_offline() (David Hildenbrand) [2229123] - virtio-mem: print debug messages from virtio_mem_send_*_request() (David Hildenbrand) [2229123] - virtio-mem: factor out calculation of the bit number within the subblock bitmap (David Hildenbrand) [2229123] - virtio-mem: use "unsigned long" for nr_pages when fake onlining/offlining (David Hildenbrand) [2229123] - virtio-mem: drop rc2 in virtio_mem_mb_plug_and_add() (David Hildenbrand) [2229123] - virtio-mem: simplify MAX_ORDER - 1 / pageblock_order handling (David Hildenbrand) [2229123] - virtio-mem: more precise calculation in virtio_mem_mb_state_prepare_next_mb() (David Hildenbrand) [2229123] - virtio-mem: determine nid only once using memory_add_physaddr_to_nid() (David Hildenbrand) [2229123] - MAINTAINERS: add URL for virtio-mem (David Hildenbrand) [2229123] - virtio-mem: Constify mem_id_table (David Hildenbrand) [2229123] - kernel/resource: make iomem_resource implicit in release_mem_region_adjustable() (David Hildenbrand) [2229123] - virtio-mem: try to merge system ram resources (David Hildenbrand) [2229123] - mm/memory_hotplug: MEMHP_MERGE_RESOURCE to specify merging of System RAM resources (David Hildenbrand) [2229123] - mm/memory_hotplug: prepare passing flags to add_memory() and friends (David Hildenbrand) [2229123] - mm/memory_hotplug: guard more declarations by CONFIG_MEMORY_HOTPLUG (David Hildenbrand) [2229123] - include/linux/memory_hotplug.h: move definitions of {set,clear}_zone_contiguous (David Hildenbrand) [2229123] - kernel/resource: make release_mem_region_adjustable() never fail (David Hildenbrand) [2229123] - virtio-mem: don't special-case ZONE_MOVABLE (David Hildenbrand) [2229123] - virtio_mem: convert to LE accessors (David Hildenbrand) [2229123] - virtio_mem: correct tags for config space fields (David Hildenbrand) [2229123] - virtio-mem: Fix build error due to improper use 'select' (David Hildenbrand) [2229123] - virtio-mem: add memory via add_memory_driver_managed() (David Hildenbrand) [2229123] - virtio-mem: silence a static checker warning (David Hildenbrand) [2229123] - virtio_mem: convert device block size into 64bit (David Hildenbrand) [2229123] - virtio-mem: drop unnecessary initialization (David Hildenbrand) [2229123] - virtio-mem: Don't rely on implicit compiler padding for requests (David Hildenbrand) [2229123] - virtio-mem: Try to unplug the complete online memory block first (David Hildenbrand) [2229123] - virtio-mem: Use -ETXTBSY as error code if the device is busy (David Hildenbrand) [2229123] - virtio-mem: Unplug subblocks right-to-left (David Hildenbrand) [2229123] - virtio-mem: Drop manual check for already present memory (David Hildenbrand) [2229123] - virtio-mem: Add parent resource for all added "System RAM" (David Hildenbrand) [2229123] - virtio-mem: Better retry handling (David Hildenbrand) [2229123] - virtio-mem: Offline and remove completely unplugged memory blocks (David Hildenbrand) [2229123] - mm/memory_hotplug: Introduce offline_and_remove_memory() (David Hildenbrand) [2229123] - virtio-mem: Allow to offline partially unplugged memory blocks (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotunplug part 2 (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotunplug part 1 (David Hildenbrand) [2229123] - virtio-mem: Allow to specify an ACPI PXM as nid (David Hildenbrand) [2229123] - MAINTAINERS: Add myself as virtio-mem maintainer (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotplug (David Hildenbrand) [2229123] - Revert "drm/amd/display: edp do not add non-edid timings" (Jocelyn Falempe) [RHEL-845] - Revert "drm/amd/display: reallocate DET for dual displays with high pixel rate ratio" (Jocelyn Falempe) [RHEL-845] - drm/client: Fix memory leak in drm_client_modeset_probe (Jocelyn Falempe) [RHEL-845] - drm/client: Fix memory leak in drm_client_target_cloned (Jocelyn Falempe) [RHEL-845] - drm/atomic: Fix potential use-after-free in nonblocking commits (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: conditionally disable pcie lane/speed switching for SMU13 (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: share the code around SMU13 pcie parameters update (Jocelyn Falempe) [RHEL-845] - drm/ttm: Don't leak a resource on swapout move error (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: avoid restore process run into dead loop. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct `DMUB_FW_VERSION` macro (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix 128b132b link loss handling (Jocelyn Falempe) [RHEL-845] - drm/amd/display: add a NULL pointer check (Jocelyn Falempe) [RHEL-845] - drm/amd: Disable PSR-SU on Parade 0803 TCON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix clearing mappings for BOs that are always valid in VM (Jocelyn Falempe) [RHEL-845] - drm/amd/display: disable seamless boot if force_odm_combine is enabled (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Remove Phantom Pipe Check When Calculating K1 and K2 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix seamless odm transitions (Jocelyn Falempe) [RHEL-845] - drm/dp_mst: Clear MSG_RDY flag before sending new message (Jocelyn Falempe) [RHEL-845] - drm/atomic: Allow vblank-enabled + self-refresh "disable" (Jocelyn Falempe) [RHEL-845] - drm/amd/display: perform a bounds check before filling dirty rectangles (Jocelyn Falempe) [RHEL-845] - drm/nouveau: bring back blit subchannel for pre nv50 GPUs (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp/g94: enable HDMI (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp: fix HDMI on gt215+ (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix one wrong caching mode enum usage (Jocelyn Falempe) [RHEL-845] - drm/i915: Don't preserve dpll_hw_state for slave crtc in Bigjoiner (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: Add Powertip PH800480T013 drm_display_mode flags (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi86: Fix auxiliary bus lifetime (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: Add connector_type for innolux_at043tn24 (Jocelyn Falempe) [RHEL-845] - drm/nouveau/acr: Abort loading ACR if no firmware was found (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for jpeg_v4_0 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for jpeg_v2_6 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: separate ras irq from jpeg instance irq for UVD_POISON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Move jpeg ras block init to ras sw_init (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for vcn_v4_0 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for vcn_v2_6 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: separate ras irq from vcn instance irq for UVD_POISON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Move vcn ras block init to ras sw_init (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix usage of UMC fill record in RAS (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix memcpy() in sienna_cichlid_append_powerplay_table function. (Jocelyn Falempe) [RHEL-845] - amdgpu: validate offset_in_bo of drm_amdgpu_gem_va (Jocelyn Falempe) [RHEL-845] - drm/radeon: fix possible division-by-zero errors (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix artifacting on eDP panels when engaging freesync video mode (Jocelyn Falempe) [RHEL-845] - drm/amdkfd: Fix potential deallocation of previously deallocated memory. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix a test dml32_rq_dlg_get_rq_reg() (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix a test CalculatePrefetchSchedule() (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: fix active size for Ampire AM-480272H3TMQW-T01H (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi83: Fix enable/disable flow to meet spec (Jocelyn Falempe) [RHEL-845] - drm/bridge: anx7625: Prevent endless probe loop (Jocelyn Falempe) [RHEL-845] - drm/nouveau: dispnv50: fix missing-prototypes warning (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358767: Switch to devm MIPI-DSI helpers (Jocelyn Falempe) [RHEL-845] - drm/vkms: Fix RGB565 pixel conversion (Jocelyn Falempe) [RHEL-845] - drm: Add fixed-point helper to get rounded integer values (Jocelyn Falempe) [RHEL-845] - drm/vkms: isolate pixel conversion functionality (Jocelyn Falempe) [RHEL-845] - drm/panel: sharp-ls043t1le01: adjust mode settings (Jocelyn Falempe) [RHEL-845] - drm/vram-helper: fix function names in vram helper doc (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix THS_TRAILCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TXTAGOCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix THS_ZEROCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TCLK_TRAILCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: Add atomic_get_input_bus_fmts() implementation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TCLK_ZEROCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix PLL target frequency (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix PLL parameters computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: always enable HS video mode (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi83: Fix enable error path (Jocelyn Falempe) [RHEL-845] - drm/bridge: it6505: Move a variable assignment behind a null pointer check in receive_timing_debugfs_show() (Jocelyn Falempe) [RHEL-845] - drm/i915/guc/slpc: Provide sysfs for efficient freq (Jocelyn Falempe) [RHEL-845] - drm/i915/guc: More debug print updates - GuC SLPC (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Explicitly specify update type per plane info change (Jocelyn Falempe) [RHEL-845] - radeon: avoid double free in ci_dpm_init() (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix is_timing_changed() prototype (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Add logging for display MALL refresh setting (Jocelyn Falempe) [RHEL-845] - drm: use mgr->dev in drm_dbg_kms in drm_dp_add_payload_part2 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Ensure vmin and vmax adjust for DCE (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Validate VM ioctl flags. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Do not update DRR while BW optimizations pending (Jocelyn Falempe) [RHEL-845] - drm/radeon: fix race condition UAF in radeon_gem_set_domain_ioctl (Jocelyn Falempe) [RHEL-845] - udmabuf: revert 'Add support for mapping hugepages (v4)' (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix the system hang while disable PSR (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Add wrapper to call planes and stream update (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Use dc_update_planes_and_stream (Jocelyn Falempe) [RHEL-845] - drm/nouveau: add nv_encoder pointer check for NULL (Jocelyn Falempe) [RHEL-845] - drm/nouveau/dp: check for NULL nv_connector->native_mode (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi86: Avoid possible buffer overflow (Jocelyn Falempe) [RHEL-845] - drm/nouveau: don't detect DSM for non-NVIDIA device (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Modify indirect buffer packages for resubmission (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Implement gfx9 patch functions for resubmission (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Program gds backup address as zero if no gds allocated (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Reset CP_VMID_PREEMPT after trailing fence signaled (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add missing radeon secondary PCI ID (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: workaround for compute workload type on some skus (Jocelyn Falempe) [RHEL-845] - drm/amd: Tighten permissions on VBIOS flashing attributes (Jocelyn Falempe) [RHEL-845] - drm/amd: Make sure image is written to trigger VBIOS image update flow (Jocelyn Falempe) [RHEL-845] - drm/amd/display: edp do not add non-edid timings (Jocelyn Falempe) [RHEL-845] - drm/amd/display: limit DPIA link rate to HBR3 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: vcn_4_0 set instance 0 init sched score to 1 (Jocelyn Falempe) [RHEL-845] - Revert "drm/amdgpu: remove TOPDOWN flags when allocating VRAM in large bar system" (Jocelyn Falempe) [RHEL-845] - drm:amd:amdgpu: Fix missing buffer object unlock in failure path (Jocelyn Falempe) [RHEL-845] - drm: panel-orientation-quirks: Change Air's quirk to support Air Plus (Jocelyn Falempe) [RHEL-845] - drm/amd/display: add ODM case when looking for first split pipe (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Reduce sdp bw after urgent to 90% (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: Fix power context allocation in SMU13 (Jocelyn Falempe) [RHEL-845] - drm/amd: Disallow s0ix without BIOS support again (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: change reserved vram info print (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix xclk freq on CHIP_STONEY (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: conditionally disable pcie lane switching for some sienna_cichlid SKUs (Jocelyn Falempe) [RHEL-845] - drm/i915/gt: Use the correct error value when kernel_context() fails (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix Null pointer dereference error in amdgpu_device_recover_vram (Jocelyn Falempe) [RHEL-845] - drm/i915/selftests: Add some missing error propagation (Jocelyn Falempe) [RHEL-845] - drm/i915: Use 18 fast wake AUX sync len (Jocelyn Falempe) [RHEL-845] - drm/i915: Explain the magic numbers for AUX SYNC/precharge length (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for renoir (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for yellow carp (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk clocks levels for SMU v13.0.5 (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: resolve reboot exception for si oland (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for vangogh (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for SMU v13.0.4 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: enable tmz by default for GC 11.0.1 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Only wait for blank completion if OTG active (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: skip disabling fence driver src_irqs when device is unplugged (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: set gfx9 onwards APU atomics support to be true (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/nv: update VCN 3 max HEVC encoding resolution (Jocelyn Falempe) [RHEL-845] - drm/ast: Fix ARM compatibility (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Use the default reset when loading or reloading the driver (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix memleak in aconnector->timing_requested (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: release gpu full access after "amdgpu_device_ip_late_init" (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration (Jocelyn Falempe) [RHEL-845] - drm/i915: Disable DPLLs before disconnecting the TC PHY (Jocelyn Falempe) [RHEL-845] - drm/i915: Move shared DPLL disabling into CRTC disable hook (Jocelyn Falempe) [RHEL-845] - drm: fix drmm_mutex_init() (Jocelyn Falempe) [RHEL-845] - drm/amd/amdgpu: limit one queue per gang (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: Fix output of pp_od_clk_voltage (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: add missing NotifyPowerSource message mapping for SMU13.0.7 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: don't enable secure display on incompatible platforms (Jocelyn Falempe) [RHEL-845] - drm/radeon: reintroduce radeon_dp_work_func content (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Have Payload Properly Created After Resume (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: reserve the old gc_11_0_*_mes.bin (Jocelyn Falempe) [RHEL-845] - drm/amd/amdgpu: introduce gc_*_mes_2.bin v2 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx11: update gpu_clock_counter logic (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: refine get gpu clock counter method (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx11: Adjust gfxoff before powergating on gfx11 as well (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx10: Disable gfxoff before disabling powergating. (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gmc11: implement get_vbios_fb_size() (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: fix possible power mode mismatch between driver and PMFW (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Enable IH retry CAM on GFX9 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix sdma v4 sw fini error (Jocelyn Falempe) [RHEL-845] - drm/amd: Fix an out of bounds error in BIOS parser (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct DML calculation to follow HW SPEC (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fixed dcn30+ underflow issue (Jocelyn Falempe) [RHEL-845] - drm/amd/display: reallocate DET for dual displays with high pixel rate ratio (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Use DC_LOG_DC in the trasform pixel function (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Enable HostVM based on rIOMMU active (Jocelyn Falempe) [RHEL-845] - drm/amd/display: enable DPG when disabling plane for phantom pipe (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct DML calculation to align HW formula (Jocelyn Falempe) [RHEL-845] - drm/amd/display: populate subvp cmd info only for the top pipe (Jocelyn Falempe) [RHEL-845] - drm/displayid: add displayid_get_header() and check bounds better (Jocelyn Falempe) [RHEL-845] - drm/i915: taint kernel when force probing unsupported devices (Jocelyn Falempe) [RHEL-845] - drm/i915/dp: prevent potential div-by-zero (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix NULL ptr deref by checking new_crtc_state (Jocelyn Falempe) [RHEL-845] - drm/i915/guc: Don't capture Gen8 regs on Xe devices (Jocelyn Falempe) [RHEL-845] - drm/sched: Check scheduler work queue before calling timeout handling (Jocelyn Falempe) [RHEL-845] - drm/mipi-dsi: Set the fwnode for mipi_dsi_device (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp: More DP_RECEIVER_CAP_SIZE array fixes (Jocelyn Falempe) [RHEL-845] - drm/dsc: fix DP_DSC_MAX_BPP_DELTA_* macro values (Jocelyn Falempe) [RHEL-845] - drm/fbdev-generic: prohibit potential out-of-bounds access (Jocelyn Falempe) [RHEL-845]- x86/show_trace_log_lvl: Ensure stack pointer is aligned, again (Oleg Nesterov) [2188093] - ahci: Add support for Dell S140 and later controllers (Tomas Henzl) [2222879] - s390/time: steer clocksource on STP syncs for CLOCK_MONOTONIC (Tobias Huschle) [2177649] - memstick: r592: Fix UAF bug in r592_remove due to race condition (Wander Lairson Costa) [2215906] {CVE-2023-35825} - scsi: zfcp: Defer fc_rport blocking until after ADISC response (Tobias Huschle) [2230241] - RDMA/efa: Add EFA 0xefa2 PCI ID (Izabela Bakollari) [2170086] - RDMA/efa: Support CQ receive entries with source GID (Izabela Bakollari) [2170086] - Revert "isystem: ship and use stdarg.h" (Jocelyn Falempe) [2229185] - drm/drm_print: Use system include for (Jocelyn Falempe) [2229185] - x86/mm: Do not shuffle CPU entry areas without KASLR (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/mm: Randomize per-cpu entry area (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/kasan: Map shadow for percpu pages on demand (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/pti/32: Calculate the various PTI cpu_entry_area sizes correctly, make the CPU_ENTRY_AREA_PAGES assert precise (Rafael Aquini) [2165931] {CVE-2023-0597}- cifs: fix for following DFS links where sharename is the same as prepath (Ronnie Sahlberg) [2130474] - crypto: rng - Fix lock imbalance in crypto_del_rng (Herbert Xu) [2229700] - ibmvnic: Do not reset dql stats on NON_FATAL err (Mamatha Inamdar) [2227904] - mptcp: Correct the sock::sk_lock.owned lockdep annotations (Felix Maurer) [2228890] - gpio: name PCA953x gpio chips after device name (Steve Best) [2226775] - scsi: storvsc: Handle SRB status value 0x30 (Cathy Avery) [2218133] - netfilter: nft_set_pipapo: fix improper element removal (Phil Sutter) [2225276] {CVE-2023-4004} - macvlan: add forgotten nla_policy for IFLA_MACVLAN_BC_CUTOFF (Xin Long) [2226791] - tcp: Reduce chance of collisions in inet6_hashfn(). (Felix Maurer) [2176119] {CVE-2023-1206} - ipv6: fix locking issues with loops over idev->addr_list (Jiri Benc) [2123305] - relayfs: fix out-of-bounds access in relay_file_read (Bill O'Donnell) [2215510] {CVE-2023-3268} - kernel/relay.c: fix read_pos error when multiple readers (Bill O'Donnell) [2215510] - seq_buf: Make trace_seq_putmem_hex() support data longer than 8 (Ricardo Robaina) [2212208] {CVE-2023-28772} - seq_buf: Fix overflow in seq_buf_putmem_hex() (Ricardo Robaina) [2212208] {CVE-2023-28772} - tools/power/x86/intel-speed-select: Support more than 8 sockets. (Frank Ramsay) [2212508] - platform/x86: ISST: Remove 8 socket limit (Frank Ramsay) [2212508] - media: saa7134: fix use after free bug in saa7134_finidev due to race condition (Wander Lairson Costa) [2215902] {CVE-2023-35823} - Bluetooth: btmtksdio: fix possible FW initialization failure (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: fix the reset takes too long (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: mask out interrupt status (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn QCA 0xe0d0 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add two more Bluetooth parts for WCN6855 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add protocol for MediaTek bluetooth devices(MT7922) (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn MT7922A (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: Fix kernel oops when sdio suspend. (David Marlin) [2142489 2144730 2145097] - Enable MTK BT Support for RHEL (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add a new PID/VID 13d3/3567 for MT7921 (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: support bluetooth reset mechanism (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix btmtksdio_[drv|fw]_pmctrl() (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: refactor btmtksdio_runtime_[suspend|resume]() (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix bus hang with wrong privilege (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix firmware coredump retrieve (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: Enable SCO over I2S (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: Support wake on bluetooth (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: rename btsdio_mtk_reg_read (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: enable AOSP extension for MT7921 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: enable msft opcode (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: fix resume failure (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: handle runtime pm only when sdio_func is available (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: drop the unnecessary variable created (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add support of processing firmware coredump and log (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add MT7921s Bluetooth support (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: transmit packet according to status TX_EMPTY (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: use register CRPLR to read packet length (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: update register CSDIOCSR operation (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: move interrupt service to work (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: explicitly set WHISR as write-1-clear (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add .set_bdaddr support (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksido: rely on BT_MTK module (David Marlin) [2142489 2144730 2145097] - Bluetooth: mediatek: add BT_MTK module (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Support public address configuration for MediaTek Chip. (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Support Bluetooth Reset for Mediatek Chip(MT7921) (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn Mediatek Chip (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: fix blacklist_table context (David Marlin) [2142489 2144730 2145097]- HID: betop: check shape of output reports (Desnes Nunes) [2212164] {CVE-2023-1073} - media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb() (Desnes Nunes) [2153575] {CVE-2022-45887} - selinux: make labeled NFS work when mounted before policy load (Juraj Marcin) [1753646] - Revert "xfs: expose the blockgc workqueue knobs publicly" (Bill O'Donnell) [2223260] - media: dm1105: Fix use after free bug in dm1105_remove due to race condition (Dean Nelson) [2215904] {CVE-2023-35824} - media: dvb-core: Fix kernel WARNING for blocking operation in wait_event*() (Dean Nelson) [2213142] {CVE-2023-31084} - drm/ast: report connection status on Display Port. (Jocelyn Falempe) [2189645] - drm/ast: Add BMC virtual connector (Jocelyn Falempe) [2189645] - x86/cpu/amd: Add a Zenbleed fix (Waiman Long) [2226832] {CVE-2023-20593} - x86/cpu/amd: Move the errata checking functionality up (Waiman Long) [2226832] {CVE-2023-20593} - x86/amd: Cache debug register values in percpu variables (Waiman Long) [2226832] {CVE-2023-20593} - x86/cpu: Restore AMD's DE_CFG MSR after resume (Waiman Long) [2226832] {CVE-2023-20593} - x86/sev: Change snp_guest_issue_request()'s fw_err argument (John Allen) [2216284] - virt/coco/sev-guest: Double-buffer messages (John Allen) [2216284] - virt/coco/sev-guest: Add throttling awareness (John Allen) [2216284] - virt/coco/sev-guest: Convert the sw_exit_info_2 checking to a switch-case (John Allen) [2216284] - virt/coco/sev-guest: Do some code style cleanups (John Allen) [2216284] - virt/coco/sev-guest: Carve out the request issuing logic into a helper (John Allen) [2216284] - virt/coco/sev-guest: Remove the disable_vmpck label in handle_guest_request() (John Allen) [2216284] - virt/coco/sev-guest: Simplify extended guest request handling (John Allen) [2216284] - virt/coco/sev-guest: Check SEV_SNP attribute at probe time (John Allen) [2216284] - virt/sev-guest: Return -EIO if certificate buffer is not large enough (John Allen) [2216284] - x86/sev: Mark snp_abort() noreturn (John Allen) [2216284] - s390/uv: Update query for secret-UVCs (Cédric Le Goater) [2111749] - s390/uv: replace scnprintf with sysfs_emit (Cédric Le Goater) [2111749] - s390: Add attestation query information (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'Lock Secret Store' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'List Secrets' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'Add Secret' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add info IOCTL (Cédric Le Goater) [2111749] - s390/uv: Always export uv_info (Cédric Le Goater) [2111749] - s390/kasan: support protvirt with 4-level paging (Cédric Le Goater) [2111749] - s390/protvirt: support ultravisor without secure storage limit (Cédric Le Goater) [2111749] - s390/protvirt: parse prot_virt option in the decompressor (Cédric Le Goater) [2111749] - s390/mm: avoid trimming to MAX_ORDER (Cédric Le Goater) [2111749] - net/mlx5e: TC, CT: Offload ct clear only once (Amir Tzin) [2159233] - net/mlx5: DR, Fix wrong action data allocation in decap action (Amir Tzin) [2159233] - net/mlx5: DR, Support SW created encap actions for FW table (Amir Tzin) [2159233] - net/mlx5e: TC, Cleanup ct resources for nic flow (Amir Tzin) [2159233] - net/mlx5e: TC, Add null pointer check for hardware miss support (Amir Tzin) [2159233] - RDMA/mlx5: Fix affinity assignment (Amir Tzin) [2159233] - RDMA/mlx5: Create an indirect flow table for steering anchor (Amir Tzin) [2159233] - RDMA/mlx5: Initiate dropless RQ for RAW Ethernet functions (Amir Tzin) [2159233] - net/mlx5: DR, Add missing mutex init/destroy in pattern manager (Amir Tzin) [2117777] - net/mlx5: Read embedded cpu after init bit cleared (Amir Tzin) [2159233] - net/mlx5e: Fix error handling in mlx5e_refresh_tirs (Amir Tzin) [2159233] - net/mlx5e: Don't attach netdev profile while handling internal error (Amir Tzin) [2159233] - net/mlx5: Fix post parse infra to only parse every action once (Amir Tzin) [2159233] - net/mlx5: fw_tracer, Fix event handling (Amir Tzin) [2159233] - net/mlx5: SF, Drain health before removing device (Amir Tzin) [2159233] - net/mlx5e: Consider internal buffers size in port buffer calculations (Amir Tzin) [2159233] - net/mlx5e: Prevent encap offload when neigh update is running (Amir Tzin) [2159233] - net/mlx5e: Extract remaining tunnel encap code to dedicated file (Amir Tzin) [2159233] - net/mlx5e: TC, Remove sample and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove mirror and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove tuple rewrite and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove multiple ct actions limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove special handling of CT action (Amir Tzin) [2159233] - net/mlx5e: TC, Remove CT action reordering (Amir Tzin) [2159233] - net/mlx5e: CT: Use per action stats (Amir Tzin) [2159233] - net/mlx5e: TC, Move main flow attribute cleanup to helper func (Amir Tzin) [2159233] - net/mlx5e: TC, Remove unused vf_tun variable (Amir Tzin) [2159233] - net/mlx5e: Set default can_offload action (Amir Tzin) [2159233] - net/mlx5: Devcom, serialize devcom registration (Amir Tzin) [2159233] - net/mlx5: Devcom, fix error flow in mlx5_devcom_register_device (Amir Tzin) [2159233] - net/mlx5e: Fix SQ wake logic in ptp napi_poll context (Amir Tzin) [2159233] - net/mlx5e: Fix deadlock in tc route query code (Amir Tzin) [2159233] - net/mlx5: Fix error message when failing to allocate device memory (Amir Tzin) [2159233] - net/mlx5e: Use correct encap attribute during invalidation (Amir Tzin) [2159233] - net/mlx5: DR, Check force-loopback RC QP capability independently from RoCE (Amir Tzin) [2159233] - net/mlx5: DR, Fix crc32 calculation to work on big-endian (BE) CPUs (Amir Tzin) [2159233] - net/mlx5: Handle pairing of E-switch via uplink un/load APIs (Amir Tzin) [2159233] - net/mlx5: Collect command failures data only for known commands (Amir Tzin) [2159233] - net/mlx5e: do as little as possible in napi poll when budget is 0 (Amir Tzin) [2159233] - net/mlx5: Use recovery timeout on sync reset flow (Amir Tzin) [2159233] - net/mlx5: DR, Add memory statistics for domain object (Amir Tzin) [2117777] - net/mlx5: DR, Add more info in domain dbg dump (Amir Tzin) [2117777] - net/mlx5: DR, Calculate sync threshold of each pool according to its type (Amir Tzin) [2117777] - net/mlx5: DR, Fix dumping of legacy modify_hdr in debug dump (Amir Tzin) [2117777] - net/mlx5: DR, Enable patterns and arguments for supporting devices (Amir Tzin) [2117777] - net/mlx5: DR, Add support for the pattern/arg parameters in debug dump (Amir Tzin) [2117777] - net/mlx5: DR, Modify header action of size 1 optimization (Amir Tzin) [2117777] - net/mlx5: DR, Support decap L3 action using pattern / arg mechanism (Amir Tzin) [2117777] - net/mlx5: DR, Apply new accelerated modify action and decapl3 (Amir Tzin) [2117777] - net/mlx5: DR, Add modify header argument pointer to actions attributes (Amir Tzin) [2117777] - net/mlx5: DR, Add modify header arg pool mechanism (Amir Tzin) [2117777] - net/mlx5: DR, Fix QP continuous allocation (Amir Tzin) [2117777] - net/mlx5: DR, Read ICM memory into dedicated buffer (Amir Tzin) [2117777] - net/mlx5: DR, Add support for writing modify header argument (Amir Tzin) [2117777] - net/mlx5: DR, Add create/destroy for modify-header-argument general object (Amir Tzin) [2117777] - net/mlx5: DR, Check for modify_header_argument device capabilities (Amir Tzin) [2117777] - net/mlx5: DR, Split chunk allocation to HW-dependent ways (Amir Tzin) [2117777] - net/mlx5: DR, Add cache for modify header pattern (Amir Tzin) [2117777] - net/mlx5: DR, Move ACTION_CACHE_LINE_SIZE macro to header (Amir Tzin) [2117777] - net/mlx5: DR, Add modify-header-pattern ICM pool (Amir Tzin) [2117777] - net/mlx5: DR, Prepare sending new WQE type (Amir Tzin) [2117777] - net/mlx5: Add new WQE for updating flow table (Amir Tzin) [2117777] - net/mlx5: Add mlx5_ifc bits for modify header argument (Amir Tzin) [2117777] - net/mlx5: DR, Set counter ID on the last STE for STEv1 TX (Amir Tzin) [2117777] - net/mlx5e: TC, Remove redundant parse_attr argument (Amir Tzin) [2165908] - net/mlx5e: Use a simpler comparison for uplink rep (Amir Tzin) [2165908] - net/mlx5: Lag, Add single RDMA device in multiport mode (Amir Tzin) [2165908] - net/mlx5: Lag, set different uplink vport metadata in multiport eswitch mode (Amir Tzin) [2165908] - net/mlx5: E-Switch, rename bond update function to be reused (Amir Tzin) [2165908] - net/mlx5e: TC, Add peer flow in mpesw mode (Amir Tzin) [2165908] - net/mlx5: Lag, Control MultiPort E-Switch single FDB mode (Amir Tzin) [2165908] - net/mlx5e: Add devlink fdb_large_groups parameter (Add missing Documentation) (Amir Tzin) [2165908] - SUNRPC: Fix READ_PLUS crasher (Benjamin Coddington) [2218539] - SUNRPC: Remove pointer type casts from xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - SUNRPC: Clean up xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION (Benjamin Coddington) [2218539] - NFSv4.2: fix wrong shrinker_id (Benjamin Coddington) [2218539] - svcrdma: Prevent page release when nothing was received (Benjamin Coddington) [2218539] - SUNRPC: Fix UAF in svc_tcp_listen_data_ready() (Benjamin Coddington) [2218539] - nfsd: fix double fget() bug in __write_ports_addfd() (Benjamin Coddington) [2218539] - SUNRPC: Fix trace_svc_register() call site (Benjamin Coddington) [2218539] - SUNRPC: remove the maximum number of retries in call_bind_status (Benjamin Coddington) [2218539] - NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease (Benjamin Coddington) [2218539] - NFSD: callback request does not use correct credential for AUTH_SYS (Benjamin Coddington) [2218539] - sunrpc: only free unix grouplist after RCU settles (Benjamin Coddington) [2218539] - nfsd: call op_release, even when op_func returns an error (Benjamin Coddington) [2218539] - NFSD: Avoid calling OPDESC() with ops->opnum == OP_ILLEGAL (Benjamin Coddington) [2218539] - SUNRPC: fix shutdown of NFS TCP client socket (Benjamin Coddington) [2218539] - NFSv4: Fix hangs when recovering open state after a server reboot (Benjamin Coddington) [2218539] - NFSD: Protect against filesystem freezing (Benjamin Coddington) [2218539] - nfsd: fix race to check ls_layouts (Benjamin Coddington) [2218539] - nfs4trace: fix state manager flag printing (Benjamin Coddington) [2218539] - SUNRPC: ensure the matching upcall is in-flight upon downcall (Benjamin Coddington) [2218539] - nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure (Benjamin Coddington) [2218539] - SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails (Benjamin Coddington) [2218539] - NFSv4.x: Fail client initialisation if state manager thread can't run (Benjamin Coddington) [2218539] - SUNRPC: Fix missing release socket in rpc_sockname() (Benjamin Coddington) [2218539] - xprtrdma: Fix regbuf data not freed in rpcrdma_req_create() (Benjamin Coddington) [2218539] - NFSD: Finish converting the NFSv3 GETACL result encoder (Benjamin Coddington) [2218539] - NFSD: Finish converting the NFSv2 GETACL result encoder (Benjamin Coddington) [2218539] - SUNRPC: Return true/false (not 1/0) from bool functions (Benjamin Coddington) [2218539] - NFS: Fix an Oops in nfs_d_automount() (Benjamin Coddington) [2218539] - NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn (Benjamin Coddington) [2218539] - NFSv4: Fix a credential leak in _nfs4_discover_trunking() (Benjamin Coddington) [2218539] - NFSv4.2: Fix initialisation of struct nfs4_label (Benjamin Coddington) [2218539] - NFSv4.2: Fix a memory stomp in decode_attr_security_label (Benjamin Coddington) [2218539] - NFSv4.2: Always decode the security label (Benjamin Coddington) [2218539] - NFSv4.2: Clear FATTR4_WORD2_SECURITY_LABEL when done decoding (Benjamin Coddington) [2218539] - nfs4: Fix kmemleak when allocate slot failed (Benjamin Coddington) [2218539] - NFSv4.2: Fixup CLONE dest file size for zero-length count (Benjamin Coddington) [2218539] - SUNRPC: Fix null-ptr-deref when xps sysfs alloc failed (Benjamin Coddington) [2218539] - NFSv4.1: We must always send RECLAIM_COMPLETE after a reboot (Benjamin Coddington) [2218539] - NFSv4.1: Handle RECLAIM_COMPLETE trunking errors (Benjamin Coddington) [2218539] - NFSv4: Fix a potential state reclaim deadlock (Benjamin Coddington) [2218539] - NFSv4/pNFS: Always return layout stats on layout return for flexfiles (Benjamin Coddington) [2218539] - NFSD: Fix handling of oversized NFSv4 COMPOUND requests (Benjamin Coddington) [2218539] - nfsd: Fix a memory leak in an error handling path (Benjamin Coddington) [2218539] - Revert "SUNRPC: Remove unreachable error condition" (Benjamin Coddington) [2218539] - NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0 (Benjamin Coddington) [2218539] - SUNRPC: RPC level errors should set task->tk_rpc_status (Benjamin Coddington) [2218539] - NFS: Fix another fsync() issue after a server reboot (Benjamin Coddington) [2218539] - net/sunrpc: fix potential memory leaks in rpc_sysfs_xprt_state_change() (Benjamin Coddington) [2218539] - SUNRPC: Fix xdr_encode_bool() (Benjamin Coddington) [2218539] - SUNRPC: Reinitialise the backchannel request buffers before reuse (Benjamin Coddington) [2218539] - NFSv4.1: RECLAIM_COMPLETE must handle EACCES (Benjamin Coddington) [2218539] - sunrpc: fix expiry of auth creds (Benjamin Coddington) [2218539] - pNFS/flexfiles: Report RDMA connection errors to the server (Benjamin Coddington) [2218539] - Revert "pNFS: nfs3_set_ds_client should set NFS_CS_NOPING" (Benjamin Coddington) [2218539] - SUNRPC: Fix the calculation of xdr->end in xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - pNFS: Avoid a live lock condition in pnfs_update_layout() (Benjamin Coddington) [2218539] - pNFS: Don't keep retrying if the server replied NFS4ERR_LAYOUTUNAVAILABLE (Benjamin Coddington) [2218539] - SUNRPC: Trap RDMA segment overflows (Benjamin Coddington) [2218539] - nfsd: Fix null-ptr-deref in nfsd_fill_super() (Benjamin Coddington) [2218539] - NFS: Further fixes to the writeback error handling (Benjamin Coddington) [2218539] - NFS: clean up a needless assignment in nfs_file_write() (Benjamin Coddington) [2218539] - NFS: remove redundant code in nfs_file_write() (Benjamin Coddington) [2218539] - NFS: Add support for eager writes (Benjamin Coddington) [2218539] - NFS: 'flags' field should be unsigned in struct nfs_server (Benjamin Coddington) [2218539] - NFSv4/pNFS: Do not fail I/O when we fail to allocate the pNFS layout (Benjamin Coddington) [2218539] - NFS: Memory allocation failures are not server fatal errors (Benjamin Coddington) [2218539] - SUNRPC: Ensure that the gssproxy client can start in a connected state (Benjamin Coddington) [2218539] - Revert "SUNRPC: Ensure gss-proxy connects on setup" (Benjamin Coddington) [2218539] - SUNRPC: Ensure gss-proxy connects on setup (Benjamin Coddington) [2218539] - NFSv4: Don't invalidate inode attributes on delegation return (Benjamin Coddington) [2218539] - SUNRPC: svc_tcp_sendmsg() should handle errors from xdr_alloc_bvec() (Benjamin Coddington) [2218539] - SUNRPC: Handle low memory situations in call_status() (Benjamin Coddington) [2218539] - SUNRPC: Handle ENOMEM in call_transmit_status() (Benjamin Coddington) [2218539] - SUNRPC: Fix the svc_deferred_event trace class (Benjamin Coddington) [2218539] - NFSv4: fix open failure with O_ACCMODE flag (Benjamin Coddington) [2218539] - NFSv4/pNFS: Fix another issue with a list iterator pointing to the head (Benjamin Coddington) [2218539] - NFSv4.1: Fix uninitialised variable in devicenotify (Benjamin Coddington) [2218539] - NFSv4.1: don't retry BIND_CONN_TO_SESSION on session error (Benjamin Coddington) [2218539] - NFS: remove unneeded check in decode_devicenotify_args() (Benjamin Coddington) [2218539] - NFS: NFSv2/v3 clients should never be setting NFS_CAP_XATTR (Benjamin Coddington) [2218539] - NFS: Do not report writeback errors in nfs_getattr() (Benjamin Coddington) [2218539] - NFS: Remove an incorrect revalidation in nfs4_update_changeattr_locked() (Benjamin Coddington) [2218539] - nfsd: nfsd4_setclientid_confirm mistakenly expires confirmed client. (Benjamin Coddington) [2218539] - SUNRPC: Fix sockaddr handling in svcsock_accept_class trace points (Benjamin Coddington) [2218539] - SUNRPC: Fix sockaddr handling in the svc_xprt_create_error trace point (Benjamin Coddington) [2218539] - NFSD: Fix zero-length NFSv3 WRITEs (Benjamin Coddington) [2218539] - NFS: Ensure the server has an up to date ctime before renaming (Benjamin Coddington) [2218539] - NFS: Ensure the server has an up to date ctime before hardlinking (Benjamin Coddington) [2218539]- Revert "NFSv4: Retry LOCK on OLD_STATEID during delegation return" (Benjamin Coddington) [2217658] - powerpc/pseries/vas: Hold mmap_mutex after mmap lock during window close (Mamatha Inamdar) [2224883] - KVM: x86/mmu: Fix race condition in direct_page_fault (Jon Maloy) [2179929] {CVE-2022-45869} - x86/speculation: Allow enabling STIBP with legacy IBRS (Ricardo Robaina) [2187268] {CVE-2023-1998} - ACPI: sleep: Avoid breaking S3 wakeup due to might_sleep() (Mark Langsdorf) [2215625] - locking/semaphore: Add might_sleep() to down_*() family (Mark Langsdorf) [2215625] - perf stat: Support hybrid --topdown option (Michael Petlan) [2088833] - i40e: Wait for pending VF reset in VF set callbacks (Ivan Vecera) [2203921] - i40e: Add helper for VF inited state check with timeout (Ivan Vecera) [2203921] - tracing: Have filter accept "common_cpu" to be consistent (Jerome Marchand) [2210711] - tracing/histogram: Fix sorting on old "cpu" value (Jerome Marchand) [2210711] - tracing: Dump stacktrace trigger to the corresponding instance (Jerome Marchand) [2210711] - tracing/histogram: Rename "cpu" to "common_cpu" (Jerome Marchand) [2210711] - docs: histogram.txt: convert it to ReST file format (Jerome Marchand) [2210711] - bonding: add software tx timestamping support (Hangbin Liu) [2181339] - bonding: fix missed rcu protection (Hangbin Liu) [2181339] - bonding: use rcu_dereference_rtnl when get bonding active slave (Hangbin Liu) [2181339] - Bonding: return HWTSTAMP_FLAG_BONDED_PHC_INDEX to notify user space (Hangbin Liu) [2181339] - Bonding: force user to add HWTSTAMP_FLAG_BONDED_PHC_INDEX when get/set HWTSTAMP (Hangbin Liu) [2181339] - bond: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to active device (Hangbin Liu) [2181339] - mm/page_alloc: fix incorrect PGFREE and PGALLOC for high-order page (Chris von Recklinghausen) [2100592] - mm/page_alloc: check high-order pages for corruption during PCP operations (Chris von Recklinghausen) [2100592] - mm/page_alloc: do not prefetch buddies during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: free pages in a single pass during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: drain the requested list first during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: simplify how many pages are selected per pcp list during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: track range of active PCP lists during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: fetch the correct pcp buddy during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: allow high-order pages to be stored on the per-cpu lists (Chris von Recklinghausen) [2100592] - mm/page_alloc: move free_the_page (Chris von Recklinghausen) [2100592] - mm,memory_hotplug: factor out adjusting present pages into adjust_present_page_count() (Chris von Recklinghausen) [2100592] - mm, meminit: recalculate pcpu batch and high limits after init completes (Chris von Recklinghausen) [2100592] - compiler_attributes.h: Add kABI workaround (Waiman Long) [2215801] - linux/compiler-clang.h: define HAVE_BUILTIN_BSWAP* (Waiman Long) [2215801] - compiler.h: fix barrier_data() on clang (Waiman Long) [2215801] - compiler_types.h: Add __no_sanitize_{address,undefined} to noinstr (Waiman Long) [2215801] - x86, kcsan: Add __no_kcsan to noinstr (Waiman Long) [2215801] - kcsan: Add __no_kcsan function attribute (Waiman Long) [2215801] - kcsan: Reorganize compiler.h (Waiman Long) [2215801] - include/linux/compiler*.h: fix OPTIMIZER_HIDE_VAR (Waiman Long) [2215801] - include/linux/compiler_types.h: don't pollute userspace with macro definitions (Waiman Long) [2215801] - include/linux/compiler*.h: define asm_volatile_goto (Waiman Long) [2215801] - Compiler Attributes: use feature checks instead of version checks (Waiman Long) [2215801] - Compiler Attributes: remove unneeded sparse (__CHECKER__) tests (Waiman Long) [2215801] - Compiler Attributes: homogenize __must_be_array (Waiman Long) [2215801] - Compiler Attributes: remove unneeded tests (Waiman Long) [2215801] - Compiler Attributes: always use the extra-underscores syntax (Waiman Long) [2215801] - Compiler Attributes: remove unused attributes (Waiman Long) [2215801] - Compiler Attributes: naked can be shared (Waiman Long) [2215801] - Compiler Attributes: naked was fixed in gcc 4.6 (Waiman Long) [2215801] - include/linux/compiler*.h: make compiler-*.h mutually exclusive (Waiman Long) [2215801] - Raise the minimum required gcc version to 4.6 (Waiman Long) [2215801] - deprecate the '__deprecated' attribute warnings entirely and for good (Waiman Long) [2215801]- libceph: harden msgr2.1 frame segment length checks (Ilya Dryomov) [2222256] - netfilter: nf_conntrack_netlink: need to hold rcu readlock when doing l4proto lookup (Florian Westphal) [2188230] - net/mlx5: Expose steering dropped packets counter (Amir Tzin) [2223198] - net/mlx5: Expose vnic diagnostic counters for eswitch managed vports (Amir Tzin) [2223198] - igbvf: add PCI reset handler functions (Corinna Vinschen) [2153365] - igbvf: Regard vf reset nack as success (Corinna Vinschen) [2153365] - intel/igbvf: free irq on the error path in igbvf_request_msix() (Corinna Vinschen) [2153365] - Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp} (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix build errors in some archs (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm regression (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del() (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_chan_put (Ricardo Robaina) [2139617] {CVE-2022-3640} - iavf: fix reset task race with iavf_remove() (Petr Oros) [2223604] - iavf: fix a deadlock caused by rtnl and driver's lock circular dependencies (Petr Oros) [2223604] - Revert "iavf: Do not restart Tx queues after reset task failure" (Petr Oros) [2223604] - Revert "iavf: Detach device during reset task" (Petr Oros) [2223604] - iavf: Wait for reset in callbacks which trigger it (Petr Oros) [2223604] - iavf: use internal state to free traffic IRQs (Petr Oros) [2223604] - iavf: Fix out-of-bounds when setting channels on remove (Petr Oros) [2223604] - iavf: Fix use-after-free in free_netdev (Petr Oros) [2223604] - iavf: make functions static where possible (Petr Oros) [2223604] - iavf: fix err handling for MAC replace (Petr Oros) [2223604] - iavf: remove some unused functions and pointless wrappers (Petr Oros) [2223604] - iavf: remove mask from iavf_irq_enable_queues() (Petr Oros) [2223604] - iavf: send VLAN offloading caps once after VFR (Petr Oros) [2223604] - cpufreq: Fix parameter in parse_perf_domain() (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: remove MODULE_LICENSE in non-modules (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Adjust balance_performance EPP for Sapphire Rapids (Mark Langsdorf) [2181273] - cpufreq: Make kobj_type structure constant (Mark Langsdorf) [2181273] - driver core: make kobj_type constant. (Mark Langsdorf) [2181273] - cpufreq: Make cpufreq_unregister_driver() return void (Mark Langsdorf) [2181273] - drivers/cpufreq: Remove "select SRCU" (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Drop ACPI _PSS states table patching (Mark Langsdorf) [2181273] - cpufreq: stats: Convert to use sysfs_emit_at() API (Mark Langsdorf) [2181273] - cpufreq: Init completion before kobject_init_and_add() (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Allow EPP 0x80 setting by the firmware (Mark Langsdorf) [2181273] - cpufreq: ACPI: Use str_enabled_disabled() helper (Mark Langsdorf) [2181273] - cpufreq: Generalize of_perf_domain_get_sharing_cpumask phandle format (Mark Langsdorf) [2181273] - cpufreq: Add of_perf_domain_get_sharing_cpumask (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Read all MSRs on the target CPU (Mark Langsdorf) [2181273] - ACPI: CPPC: Add ACPI disabled check to acpi_cpc_valid() (Mark Langsdorf) [2181273]- gfs2: Don't deref jdesc in evict (Bob Peterson) [2214356] {CVE-2023-3212} - md/raid5: Don't do accounting for non-align read io (Nigel Croxon) [2183033] - powerpc: Don't select HAVE_IRQ_EXIT_ON_IRQ_STACK (Mamatha Inamdar) [2218348] - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION (Benjamin Coddington) [2217963] - proc: Use PIDTYPE_TGID in next_tgid (Brian Foster) [2047252] - netfilter: nf_tables: unbind non-anonymous set if rule construction fails (Phil Sutter) [2214963] {CVE-2023-3390} - netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain (Phil Sutter) [2214963] {CVE-2023-3390} - netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE (Phil Sutter) [2214963] {CVE-2023-3390} - fanotify,audit: Allow audit to use the full permission event response (Richard Guy Briggs) [2055328] - fanotify: define struct members to hold response decision context (Richard Guy Briggs) [2055328] - fanotify: Ensure consistent variable type for response (Richard Guy Briggs) [2055328] - RDMA/mlx4: Prevent shift wrapping in set_user_sq_size() (Amir Tzin) [2166019] - RDMA/mlx: Calling qp event handler in workqueue context (mlx4 hunks only) (Amir Tzin) [2166019] - net/mlx4: small optimization in mlx4_en_xmit() (Amir Tzin) [2166019] - net/mlx4: rename two constants (Amir Tzin) [2166019] - RDMA/mlx4: Remove NULL check before dev_{put, hold} (Amir Tzin) [2166019] - ptp: mlx4: convert to .adjfine and adjust_by_scaled_ppm (Amir Tzin) [2166019] - mlx4: Do type_clear() for devlink ports when type_set() was called previously (Amir Tzin) [2166019] - cgroup: Reorganize css_set_lock and kernfs path processing (Waiman Long) [2193485] - cgroup: Fix build failure when CONFIG_SHRINKER_DEBUG (Waiman Long) [2193485] - cgroup: fix missing cpus_read_{lock,unlock}() in cgroup_transfer_tasks() (Waiman Long) [2193485] - cgroup: Make cgroup_get_from_id() prettier (Waiman Long) [2193485] - cgroup: remove obsolete comment on cgroup_on_dfl() (Waiman Long) [2193485] - cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach() (Waiman Long) [2193485] - kselftests: cgroup: update kmem test precision tolerance (Waiman Long) [2193485] - cgroup/cpuset: Improve cpuset_css_alloc() description (Waiman Long) [2193485] - selftests: cgroup: fix unsigned comparison with less than zero (Waiman Long) [2193485] - device_cgroup: Roll back to original exceptions after copy failure (Waiman Long) [2193485] - cgroup/cpuset: use hotplug_memory_notifier() directly (Waiman Long) [2193485] - mm: memcontrol: don't allocate cgroup swap arrays when memcg is disabled (Waiman Long) [2193485] - cgroup: cgroup_get_from_id() must check the looked-up kn is a directory (Waiman Long) [2193485] - sched/psi: Don't create cgroup PSI files when psi_disabled (Waiman Long) [2193485] - cgroup: Homogenize cgroup_get_from_id() return value (Waiman Long) [2193485] - cgroup: cgroup: Honor caller's cgroup NS when resolving cgroup id (Waiman Long) [2193485] - cgroup: Honor caller's cgroup NS when resolving path (Waiman Long) [2193485] - mm: memcontrol: introduce mem_cgroup_ino() and mem_cgroup_get_from_ino() (Waiman Long) [2193485] - cgroup: Use separate src/dst nodes when preloading css_sets for migration (Waiman Long) [2193485] - cgroup.c: add helper __cset_cgroup_from_root to cleanup duplicated codes (Waiman Long) [2193485] - cgroup/rstat: check updated_next only for root (Waiman Long) [2193485] - cgroup: rstat: explicitly put loop variant in while (Waiman Long) [2193485] - cgroup: return early if it is already on preloaded list (Waiman Long) [2193485] - cgroup: Trace event cgroup id fields should be u64 (Waiman Long) [2193485] - cgroup: fix a typo in comment (Waiman Long) [2193485] - hugetlb_cgroup: remove unused hugetlb_cgroup_from_counter macro (Waiman Long) [2193485] - cgroup: Make rebind_subsystems() disable v2 controllers all at once (Waiman Long) [2193485] - cgroup: Avoid compiler warnings with no subsystems (Waiman Long) [2193485] - cgroup: Fix kernel-doc (Waiman Long) [2193485] - kernfs: use 64bit inos if ino_t is 64bit (Waiman Long) [2193485] - kernfs: implement custom exportfs ops and fid type (Waiman Long) [2193485] - kernfs: combine ino/id lookup functions into kernfs_find_and_get_node_by_id() (Waiman Long) [2193485] - kernfs: kernfs_find_and_get_node_by_ino() should only look up activated nodes (Waiman Long) [2193485] - kernfs: use dumber locking for kernfs_find_and_get_node_by_ino() (Waiman Long) [2193485] - kernfs: fix ino wrap-around detection (Waiman Long) [2193485] - ice: prevent NULL pointer deref during reload (Petr Oros) [2153356] - ice: Unregister netdev and devlink_port only once (Petr Oros) [2153356] - ice: Fix ice module unload (Petr Oros) [2153356] - ice: Fix tx queue rate limit when TCs are configured (Petr Oros) [2153356] - ice: Fix max_rate check while configuring TX rate limits (Petr Oros) [2153356] - ice: Fix XDP memory leak when NIC is brought up and down (Petr Oros) [2153356] - ice: remove comment about not supporting driver reinit (Petr Oros) [2153356] - ice: block LAN in case of VF to VF offload (Petr Oros) [2153356] - ice: Fix stats after PF reset (Petr Oros) [2153356] - ice: Reset FDIR counter in FDIR init stage (Petr Oros) [2153356] - ice: fix wrong fallback logic for FDIR (Petr Oros) [2153356] - ice: add profile conflict check for AVF FDIR (Petr Oros) [2153356] - ice: Fix ice_cfg_rdma_fltr() to only update relevant fields (Petr Oros) [2153356] - ice: remove filters only if VSI is deleted (Petr Oros) [2153356] - ice: check if VF exists before mode check (Petr Oros) [2153356] - ice: xsk: disable txq irq before flushing hw (Petr Oros) [2153356] - ice: avoid bonding causing auxiliary plug/unplug under RTNL lock (Petr Oros) [2153356] - ethernet: ice: avoid gcc-9 integer overflow warning (Petr Oros) [2153356] - ice: don't ignore return codes in VSI related code (Petr Oros) [2153356] - ice: Fix DSCP PFC TLV creation (Petr Oros) [2153356] - ice: copy last block omitted in ice_get_module_eeprom() (Petr Oros) [2153356] - ice: properly alloc ICE_VSI_LB (Petr Oros) [2153356] - ice: xsk: Fix cleaning of XDP_TX frames (Petr Oros) [2153356] - ice: Mention CEE DCBX in code comment (Petr Oros) [2153356] - ice: Change ice_vsi_realloc_stat_arrays() to void (Petr Oros) [2153356] - ice: Add GPIO pin support for E823 products (Petr Oros) [2153356] - ice: switch: fix potential memleak in ice_add_adv_recipe() (Petr Oros) [2153356] - ice: Fix off by one in ice_tc_forward_to_queue() (Petr Oros) [2153356] - ice: Fix disabling Rx VLAN filtering with port VLAN enabled (Petr Oros) [2153356] - ice: fix out-of-bounds KASAN warning in virtchnl (Petr Oros) [2153356] - ice: Do not use WQ_MEM_RECLAIM flag for workqueue (Petr Oros) [2153356] - ice: remove unnecessary virtchnl_ether_addr struct use (Petr Oros) [2153356] - ice: introduce .irq_close VF operation (Petr Oros) [2153356] - ice: introduce clear_reset_state operation (Petr Oros) [2153356] - ice: convert vf_ops .vsi_rebuild to .create_vsi (Petr Oros) [2153356] - ice: introduce ice_vf_init_host_cfg function (Petr Oros) [2153356] - ice: add a function to initialize vf entry (Petr Oros) [2153356] - ice: Pull common tasks into ice_vf_post_vsi_rebuild (Petr Oros) [2153356] - ice: move ice_vf_vsi_release into ice_vf_lib.c (Petr Oros) [2153356] - ice: move vsi_type assignment from ice_vsi_alloc to ice_vsi_cfg (Petr Oros) [2153356] - ice: refactor VSI setup to use parameter structure (Petr Oros) [2153356] - ice: drop unnecessary VF parameter from several VSI functions (Petr Oros) [2153356] - ice: fix function comment referring to ice_vsi_alloc (Petr Oros) [2153356] - ice: Add more usage of existing function ice_get_vf_vsi(vf) (Petr Oros) [2153356] - ice: implement devlink reinit action (Petr Oros) [2153356] - ice: update VSI instead of init in some case (Petr Oros) [2153356] - ice: move VSI delete outside deconfig (Petr Oros) [2153356] - ice: sync netdev filters after clearing VSI (Petr Oros) [2153356] - ice: split probe into smaller functions (Petr Oros) [2153356] - ice: stop hard coding the ICE_VSI_CTRL location (Petr Oros) [2153356] - ice: split ice_vsi_setup into smaller functions (Petr Oros) [2153356] - ice: cleanup in VSI config/deconfig code (Petr Oros) [2153356] - ice: alloc id for RDMA using xa_array (Petr Oros) [2153356] - ice: move RDMA init to ice_idc.c (Petr Oros) [2153356] - ice: Prevent set_channel from changing queues while RDMA active (Petr Oros) [2153356] - ice: Remove redundant pci_enable_pcie_error_reporting() (Petr Oros) [2153356] - ice: move devlink port creation/deletion (Petr Oros) [2153356] - ice: Remove excess space (Petr Oros) [2153356] - ice: Introduce local var for readability (Petr Oros) [2153356] - ice: Match parameter name for ice_cfg_phy_fc() (Petr Oros) [2153356] - ice: Explicitly return 0 (Petr Oros) [2153356] - ice: Reduce scope of variables (Petr Oros) [2153356] - ice: Move support DDP code out of ice_flex_pipe.c (Petr Oros) [2153356] - ice: Remove cppcheck suppressions (Petr Oros) [2153356] - ice: combine cases in ice_ksettings_find_adv_link_speed() (Petr Oros) [2153356] - ice: Add support for 100G KR2/CR2/SR2 link reporting (Petr Oros) [2153356] - ice: add missing checks for PF vsi type (Petr Oros) [2153356] - ice: remove redundant non-null check in ice_setup_pf_sw() (Petr Oros) [2153356] - ice: restrict PTP HW clock freq adjustments to 100, 000, 000 PPB (Petr Oros) [2153356] - ice: Support drop action (Petr Oros) [2153356] - ice: Handle LLDP MIB Pending change (Petr Oros) [2153356] - ice: Add 'Execute Pending LLDP MIB' Admin Queue command (Petr Oros) [2153356] - ice: xsk: do not use xdp_return_frame() on tx_buf->raw_buf (Petr Oros) [2153356] - ice: Use ICE_RLAN_BASE_S instead of magic number (Petr Oros) [2153356] - ice: Accumulate ring statistics over reset (Petr Oros) [2153356] - ice: Accumulate HW and Netdev statistics over reset (Petr Oros) [2153356] - ice: Remove and replace ice speed defines with ethtool.h versions (Petr Oros) [2153356] - ice: Check for PTP HW lock more frequently (Petr Oros) [2153356] - ice: Fix spurious interrupt during removal of trusted VF (Petr Oros) [2153356] - ice: Enable RX queue selection using skbedit action (Petr Oros) [2153356] - ice: Add support for VLAN priority filters in switchdev (Petr Oros) [2153356] - ice: support features on new E810T variants (Petr Oros) [2153356] - ice: xsk: drop power of 2 ring size restriction for AF_XDP (Petr Oros) [2153356] - ice: xsk: change batched Tx descriptor cleaning (Petr Oros) [2153356] - ice: reorder PF/representor devlink port register/unregister flows (Petr Oros) [2153356] - ice: Add L2TPv3 hardware offload support (Petr Oros) [2153356] - ice: Simplify memory allocation in ice_sched_init_port() (Petr Oros) [2153356] - ice: switch: Simplify memory allocation (Petr Oros) [2153356] - ice: add helper function to check FW API version (Petr Oros) [2153356] - ice: Print human-friendly PHY types (Petr Oros) [2153356] - ice: Add support for ip TTL & ToS offload (Petr Oros) [2153356] - ice: xsk: use Rx ring's XDP ring when picking NAPI context (Petr Oros) [2153356] - ice: xsk: prohibit usage of non-balanced queue id (Petr Oros) [2153356] - ice: remove non-inclusive language (Petr Oros) [2153356] - ice: Remove ucast_shared (Petr Oros) [2153356] - ice: Allow 100M speeds for some devices (Petr Oros) [2153356] - ice: Implement FCS/CRC and VLAN stripping co-existence policy (Petr Oros) [2153356] - ice: Implement control of FCS/CRC stripping (Petr Oros) [2153356] - ice: initialize cached_phctime when creating Rx rings (Petr Oros) [2153356] - ice: set tx_tstamps when creating new Tx rings via ethtool (Petr Oros) [2153356] - ice: link representors to PCI device (Petr Oros) [2153356] - ice, xsk: Avoid refilling single Rx descriptors (Petr Oros) [2153356] - ice, xsk: Diversify return values from xsk_wakeup call paths (Petr Oros) [2153356] - ice, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Petr Oros) [2153356] - ice, xsk: Decorate ICE_XDP_REDIR with likely() (Petr Oros) [2153356] - ice: xsk: check if Rx ring was filled up to the end (Petr Oros) [2153356] - ice: xsk: Eliminate unnecessary loop iteration (Petr Oros) [2153356] - ice: xsk: fix GCC version checking against pragma unroll presence (Petr Oros) [2153356] - ice: xsk: Borrow xdp_tx_active logic from i40e (Petr Oros) [2153356] - ice: xsk: Improve AF_XDP ZC Tx and use batching API (Petr Oros) [2153356] - ice: xsk: Avoid potential dead AF_XDP Tx processing (Petr Oros) [2153356] - ice: Make Tx threshold dependent on ring length (Petr Oros) [2153356] - ice: xsk: Handle SW XDP ring wrap and bump tail more often (Petr Oros) [2153356] - ice: xsk: Force rings to be sized to power of 2 (Petr Oros) [2153356] - ice: xsk: do not clear status_error0 for ntu + nb_buffs descriptor (Petr Oros) [2153356] - ice: remove dead store on XSK hotpath (Petr Oros) [2153356] - ice: xsk: clear status_error0 for each allocated desc (Petr Oros) [2153356] - intel: Simplify bool conversion (Petr Oros) [2153356] - ice: Use the xsk batched rx allocation interface (Petr Oros) [2153356]- blk-cgroup: Reinit blkg_iostat_set after clearing in blkcg_reset_stats() (Waiman Long) [2212032] - ipvlan:Fix out-of-bounds caused by unclear skb->cb (Davide Caratti) [2218676] {CVE-2023-3090} - net: openvswitch: fix upcall counter access before allocation (Eelco Chaudron) [2214262] - netfilter: Drop fragmented ndisc packets assembled in netfilter (Phil Sutter) [2217795] - netfilter: conntrack: gre: don't set assured flag for clash entries (Florian Westphal) [2219357] - netfilter: conntrack: allow insertion clash of gre protocol (Florian Westphal) [2219357] - sfc: use budget for TX completions (Íñigo Huguet) [2179558] - sfc: fix XDP queues mode with legacy IRQ (Íñigo Huguet) [2214589] - memstick: r592: Fix UAF bug in r592_remove due to race condition (Ricardo Robaina) [2213205] {CVE-2023-3141} - audit: avoid missing-prototype warnings (Richard Guy Briggs) [2175322] - audit: update the mailing list in MAINTAINERS (Richard Guy Briggs) [2175322] - audit: fix undefined behavior in bit shift for AUDIT_BIT (Richard Guy Briggs) [2175322] - fork: Use IS_ENABLED() in account_kernel_stack() (Valentin Schneider) [2131754] - fork: Only cache the VMAP stack in finish_task_switch() (Valentin Schneider) [2131754] - fork: Move task stack accounting to do_exit() (Valentin Schneider) [2131754] - fork: Move memcg_charge_kernel_stack() into CONFIG_VMAP_STACK (Valentin Schneider) [2131754] - fork: Don't assign the stack pointer in dup_task_struct() (Valentin Schneider) [2131754] - fork, IA64: Provide alloc_thread_stack_node() for IA64 (Valentin Schneider) [2131754] - fork: Duplicate task_struct before stack allocation (Valentin Schneider) [2131754] - fork: Redo ifdefs around task stack handling (Valentin Schneider) [2131754] - fork: fix some -Wmissing-prototypes warnings (Valentin Schneider) [2131754] - igb: fix nvm.ops.read() error handling (Corinna Vinschen) [2153360] - igb: Fix extts capture value format for 82580/i354/i350 (Corinna Vinschen) [2153360] - igb: Define igb_pm_ops conditionally on CONFIG_PM (Corinna Vinschen) [2153360] - igb: fix bit_shift to be in [1..8] range (Corinna Vinschen) [2153360] - igb: refactor igb_ptp_adjfine_82580 to use diff_by_scaled_ppm (Corinna Vinschen) [2153360] - igb: revert rtnl_lock() that causes deadlock (Corinna Vinschen) [2153360] - igb: Remove unnecessary aer.h include (Corinna Vinschen) [2153360] - igb: Fix PPS input and output using 3rd and 4th SDP (Corinna Vinschen) [2153360] - igb: Remove redundant pci_enable_pcie_error_reporting() (Corinna Vinschen) [2153360] - igb: Add lock to avoid data race (Corinna Vinschen) [2153360] - x86/cpu: Include the header of init_ia32_feat_ctl()'s prototype (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/pm: Fix false positive kmemleak report in msr_build_context() (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/speculation: Restore speculation related MSRs during S3 resume (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: remove leftover comment for filechk utility (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/cpu: Reinitialize IA32_FEAT_CTL MSR on BSP during wakeup (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/rdrand: Sanity-check RDRAND output (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: change filechk to surround the given command with { } (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - firmware: refactor firmware/Makefile (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: remove redundant 'set -e' from filechk_offsets (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: do not redirect the first prerequisite for filechk (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: move bin2c back to scripts/ from scripts/basic/ (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - perf/x86/ibs: Add new IBS register bits into header (Michael Petlan) [2088767] - perf tool x86: Fix perf_env memory leak (Michael Petlan) [2088767] - perf tool x86: Consolidate is_amd check into single function (Michael Petlan) [2088767] - perf env: Add perf_env__cpuid, perf_env__{nr_}pmu_mappings (Michael Petlan) [2088767] - perf/x86/amd/uncore: Fix memory leak for events array (Michael Petlan) [2088767] - perf script: Add missing fields in usage hint (Michael Petlan) [2086837] - perf mem: Print "LFB/MAB" for PERF_MEM_LVLNUM_LFB (Michael Petlan) [2088767] - perf mem/c2c: Avoid printing empty lines for unsupported events (Michael Petlan) [2088767] - perf mem/c2c: Add load store event mappings for AMD (Michael Petlan) [2088767] - perf mem/c2c: Set PERF_SAMPLE_WEIGHT for LOAD_STORE events (Michael Petlan) [2088767] - perf mem: Add support for printing PERF_MEM_LVLNUM_{CXL|IO} (Michael Petlan) [2088767] - perf/mem: Rename PERF_MEM_LVLNUM_EXTN_MEM to PERF_MEM_LVLNUM_CXL (Michael Petlan) [2088767] - perf amd ibs: Sync arch/x86/include/asm/amd-ibs.h header with the kernel (Michael Petlan) [2088767] - tools headers UAPI: Sync include/uapi/linux/perf_event.h header with the kernel (Michael Petlan) [2088767] - perf/uapi: Define PERF_MEM_SNOOPX_PEER in kernel header file (Michael Petlan) [2088767] - perf: correct SNOOPX field offset (Michael Petlan) [2088767] - perf tools: Sync addition of PERF_MEM_SNOOPX_PEER (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_PHY_ADDR (Michael Petlan) [2088767] - perf: Add sample_flags to indicate the PMU-filled sample data (Michael Petlan) [2086837] - perf/x86/amd: Support PERF_SAMPLE_ADDR (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_{WEIGHT|WEIGHT_STRUCT} (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_DATA_SRC (Michael Petlan) [2088767] - perf/x86/amd: Add IBS OP_DATA2 DataSrc bit definitions (Michael Petlan) [2088767] - perf/mem: Introduce PERF_MEM_LVLNUM_{EXTN_MEM|IO} (Michael Petlan) [2088767] - perf/x86/amd/uncore: Add PerfMonV2 RDPMC assignments (Michael Petlan) [2086837] - perf/x86/amd/uncore: Add PerfMonV2 DF event format (Michael Petlan) [2086837] - perf/x86/amd/uncore: Detect available DF counters (Michael Petlan) [2086837] - perf/x86/amd/uncore: Use attr_update for format attributes (Michael Petlan) [2086837] - perf/x86/amd/uncore: Use dynamic events array (Michael Petlan) [2086837] - tracing/osnoise: set several trace_osnoise.c variables storage-class-specifier to static (John Kacur) [2175293] - tracing/osnoise: No need for schedule_hrtimeout range (John Kacur) [2175293] - tracing/osnoise: Use built-in RCU list checking (John Kacur) [2175293] - tracing/osnoise: Add preempt and/or irq disabled options (John Kacur) [2175293] - tracing/osnoise: Add PANIC_ON_STOP option (John Kacur) [2175293] - tracing/osnoise: Make osnoise_options static (John Kacur) [2175293] - tracing/osnoise: Add OSNOISE_WORKLOAD option (John Kacur) [2175293] - tracing/osnoise: Add osnoise/options file (John Kacur) [2175293] - tracing/osnoise: Fix duration type (John Kacur) [2175293] - tracing/osnoise: Fix possible recursive locking in stop_per_cpu_kthreads (John Kacur) [2175293] - tracing/timerlat: Do not wakeup the thread if the trace stops at the IRQ (John Kacur) [2175293] - tracing/timerlat: Print stacktrace in the IRQ handler if needed (John Kacur) [2175293] - tracing/timerlat: Notify IRQ new max latency only if stop tracing is set (John Kacur) [2175293] - drivers: base: cacheinfo: Fix shared_cpu_map changes in event of CPU hotplug (Mark Lansgdorf) [2178301] - drivers: base: cacheinfo: Update cpu_map_populated during CPU Hotplug (Mark Lansgdorf) [2178301] - driver core: bus: move documentation for lock_key to proper location. (Mark Langsdorf) [2178301] - cacheinfo: Check cache properties are present in DT (Mark Langsdorf) [2178301] - cacheinfo: Fix LLC is not exported through sysfs (Mark Langsdorf) [2178301] - of: Add of_property_present() helper (Mark Langsdorf) [2178301] - driver core: fw_devlink: Print full path and name of fwnode (Mark Langsdorf) [2178301] - driver core: fw_devlink: Avoid spurious error message (Mark Langsdorf) [2178301] - driver core: bus: Handle early calls to bus_to_subsys() (Mark Langsdorf) [2178301] - driver core: class: move EXPORT_SYMBOL_GPL() lines to the correct place (Mark Langsdorf) [2178301] - driver core: cpu: don't hand-override the uevent bus_type callback. (Mark Langsdorf) [2178301] - driver core: bus: update my copyright notice (Mark Langsdorf) [2178301] - driver core: bus: add bus_get_dev_root() function (Mark Langsdorf) [2178301] - driver core: bus: constify bus_unregister() (Mark Langsdorf) [2178301] - driver core: bus: constify some internal functions (Mark Langsdorf) [2178301] - driver core: bus: constify bus_get_kset() (Mark Langsdorf) [2178301] - driver core: bus: constify bus_register/unregister_notifier() (Mark Langsdorf) [2178301] - driver core: create bus_is_registered() (Mark Langsdorf) [2178301] - driver core: bus: clean up driver_find() (Mark Langsdorf) [2178301] - driver core: move driver_find() to bus.c (Mark Langsdorf) [2178301] - driver core: bus: clean up bus_sort_breadthfirst() (Mark Langsdorf) [2178301] - driver core: bus: bus iterator cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_add/remove_driver() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_register/unregister_notifier() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_get_kset() cleanup (Mark Langsdorf) [2178301] - driver core: bus: subsys_interface_register/unregister() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_register/unregister() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_add/probe/remove_device() cleanups (Mark Langsdorf) [2178301] - driver core: bus: sysfs function cleanups (Mark Langsdorf) [2178301] - driver core: bus: convert bus_create/remove_file to be constant (Mark Langsdorf) [2178301] - driver core: bus: constantify the bus_find_* functions (Mark Langsdorf) [2178301] - driver core: bus: implement bus_get/put() without the private pointer (Mark Langsdorf) [2178301] - driver core: add local subsys_get and subsys_put functions (Mark Langsdorf) [2178301] - driver core: fw_devlink: Make cycle detection more robust (Mark Langsdorf) [2178301] - driver core: fw_devlink: Consolidate device link flag computation (Mark Langsdorf) [2178301] - driver core: fw_devlink: Allow marking a fwnode link as being part of a cycle (Mark Langsdorf) [2178301] - driver core: Add wait_for_init_devices_probe helper function (Mark Langsdorf) [2178301] - driver core: fw_devlink: Add DL_FLAG_CYCLE support to device links (Mark Langsdorf) [2178301] - driver core: fw_devlink: Improve check for fwnode with no device/driver (Mark Langsdorf) [2178301] - driver core: fw_devlink: Don't purge child fwnode's consumer links (Mark Langsdorf) [2178301] - drivers: base: dd: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [2178301] - drivers: base: component: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [2178301] - drivers/base: Remove CONFIG_SRCU (Mark Langsdorf) [2178301] - devtmpfs: convert to pr_fmt (Mark Langsdorf) [2178301] - driver core: bus: move lock_class_key into dynamic structure (Mark Langsdorf) [2178301] - driver core: platform: simplify __platform_driver_probe() (Mark Langsdorf) [2178301] - driver core: platform: removed unneeded variable from __platform_driver_probe() (Mark Langsdorf) [2178301] - cacheinfo: Initialize variables in fetch_cache_info() (Mark Langsdorf) [2178301] - regmap: apply reg_base and reg_downshift for single register ops (Mark Langsdorf) [2178301] - driver core: soc: remove layering violation for the soc_bus (Mark Langsdorf) [2178301] - of: device: make of_device_uevent_modalias() take a const device * (Mark Langsdorf) [2178301] - driver core: device_get_devnode() should take a const * (Mark Langsdorf) [2178301] - driver core: fix up missed drivers/s390/char/hmcdrv_dev.c class.devnode() conversion. (Mark Langsdorf) [2178301] - driver core: fix up missed scsi/cxlflash class.devnode() conversion. (Mark Langsdorf) [2178301] - driver core: fix up some missing class.devnode() conversions. (Mark Langsdorf) [2178301] - driver core: make struct class.devnode() take a const * (Mark Langsdorf) [2178301] - driver core: make struct device_type.devnode() take a const * (Mark Langsdorf) [2178301] - driver core: class: Clear private pointer on registration failures (Mark Langsdorf) [2178301] - cacheinfo: Fix shared_cpu_map to handle shared caches at different levels (Mark Langsdorf) [2178301] - cacheinfo: Check 'cache-unified' property to count cache leaves (Mark Langsdorf) [2178301] - arch_topology: Build cacheinfo from primary CPU (Mark Langsdorf) [2178301] - cacheinfo: Make default acpi_get_cache_info() return an error (Mark Langsdorf) [2178301] - ACPI: PPTT: Update acpi_find_last_cache_level() to acpi_get_cache_info() (Mark Langsdorf) [2178301] - ACPI: PPTT: Remove acpi_find_cache_levels() (Mark Langsdorf) [2178301] - drivers: base: transport_class: fix resource leak when transport_add_device() fails (Mark Langsdorf) [2178301] - driver core: location: Free struct acpi_pld_info *pld before return false (Mark Langsdorf) [2178301] - driver core: fix resource leak in device_add() (Mark Langsdorf) [2178301] - drivers/base/memory: Fix comments for phys_index_show() (Mark Langsdorf) [2178301] - drivers/base/memory: rename base_memory_block_id to memory_block_id (Mark Langsdorf) [2178301] - driver core: Fix test_async_probe_init saves device in wrong array (Mark Langsdorf) [2178301] - device property: fix of node refcount leak in fwnode_graph_get_next_endpoint() (Mark Langsdorf) [2178301] - driver core: bus: move bus notifier logic into bus.c (Mark Langsdorf) [2178301] - driver core: bus.h: document bus notifiers better (Mark Langsdorf) [2178301] - cacheinfo: Return error code in init_of_cache_level() (Mark Langsdorf) [2178301] - cacheinfo: Use RISC-V's init_cache_level() as generic OF implementation (Mark Langsdorf) [2178301] - platform: remove useless if-branch in __platform_get_irq_byname() (Mark Langsdorf) [2178301] - platform: Document platform_add_devices() return value (Mark Langsdorf) [2178301] - software node: Remove unused APIs (Mark Langsdorf) [2178301] - software node: Switch property entry test to a new API (Mark Langsdorf) [2178301] - platform: Provide a remove callback that returns no value (Mark Langsdorf) [2178301] - regmap: Rework regmap_mdio_c45_{read|write} for new C45 API. (Mark Langsdorf) [2178301] - net: Convert more users of mdiobus_* to mdiodev_* (Mark Langsdorf) [2178301] - PM: runtime: Document that force_suspend() is incompatible with SMART_SUSPEND (Mark Langsdorf) [2178301] - cpuidle, ARM: OMAP2+: powerdomain: Remove trace_.*_rcuidle() (Mark Langsdorf) [2178301] - driver core: fix potential null-ptr-deref in device_add() (Mark Langsdorf) [2178301] - PM: domains: Allow a genpd consumer to require a synced power off (Mark Langsdorf) [2178301] - driver core: move struct subsys_dev_iter to a local file (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_exit() static (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_next() static (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_init() static (Mark Langsdorf) [2178301] - driver core: remove subsys_find_device_by_id() (Mark Langsdorf) [2178301] - driver core: make bus_get_device_klist() static (Mark Langsdorf) [2178301] - platform/mellanox: mlxbf-pmc: Fix event typo (Mark Langsdorf) [2178301] - firmware_loader: remove #include (Mark Langsdorf) [2178301] - PM: runtime: Adjust white space in the core code (Mark Langsdorf) [2178301] - device property: Fix documentation for fwnode_get_next_parent() (Mark Langsdorf) [2178301] - PM: runtime: Relocate rpm_callback() right after __rpm_callback() (Mark Langsdorf) [2178301] - regmap: Add FSI bus support (Mark Langsdorf) [2178301] - PM: domains: Reverse the order of performance and enabling ops (Mark Langsdorf) [2178301] - driver core: make struct class.dev_uevent() take a const * (Mark Langsdorf) [2178301] - driver core: change to_subsys_private() to use container_of_const() (Mark Langsdorf) [2178301] - xen/xenbus: move to_xenbus_device() to use container_of_const() (Mark Langsdorf) [2178301] - virtio: move dev_to_virtio() to use container_of_const() (Mark Langsdorf) [2178301] - cacheinfo: Remove of_node_put() for fw_token (Mark Langsdorf) [2178301] - device property: Add a blank line in Kconfig of tests (Mark Langsdorf) [2178301] - device property: Rename goto label to be more precise (Mark Langsdorf) [2178301] - regmap: add regmap_might_sleep() (Mark Langsdorf) [2178301] - regmap: Add can_sleep configuration option (Mark Langsdorf) [2178301] - regmap: Use flexible sleep (Mark Lansgdorf) [2178301] - platform: use fwnode_irq_get_byname instead of of_irq_get_byname to get irq (Mark Langsdorf) [2178301] - driver core: Fix bus_type.match() error handling in __driver_attach() (Mark Langsdorf) [2178301] - driver core: Use kstrtobool() instead of strtobool() (Mark Langsdorf) [2178301] - cacheinfo: Decrement refcount in cache_setup_of_node() (Mark Langsdorf) [2178301] - driver core: mark driver_allows_async_probing static (Mark Langsdorf) [2178301] - driver core: remove devm_device_remove_group() (Mark Langsdorf) [2178301] - driver core: remove devm_device_remove_groups() (Mark Langsdorf) [2178301] - driver core: class: make namespace and get_ownership take const * (Mark Langsdorf) [2178301] - devres: Use kmalloc_size_roundup() to match ksize() usage (Mark Langsdorf) [2178301] - class: fix possible memory leak in __class_register() (Mark Langsdorf) [2178301] - PM: domains: Power off[on] domain in hibernate .freeze[thaw]_noirq hook (Mark Langsdorf) [2178301] - PM: domains: Consolidate genpd_restore_noirq() and genpd_resume_noirq() (Mark Langsdorf) [2178301] - PM: domains: Pass generic PM noirq hooks to genpd_finish_suspend() (Mark Langsdorf) [2178301] - PM: domains: Drop genpd status manipulation for hibernate restore (Mark Langsdorf) [2178301] - PM: domains: Fix handling of unavailable/disabled idle states (Mark Langsdorf) [2178301] - device property: Fix documentation for *_match_string() APIs (Mark Langsdorf) [2178301] - device property: Constify parameter in device_dma_supported() and device_get_dma_attr() (Mark Langsdorf) [2178301] - device property: Constify device child node APIs (Mark Langsdorf) [2178301] - device property: Constify fwnode connection match APIs (Mark Langsdorf) [2178301] - device property: Allow const parameter to dev_fwnode() (Mark Langsdorf) [2178301] - PM: domains: log failures to register always-on domains (Mark Langsdorf) [2178301] - dt-bindings: irqchip: Describe the IMX MU block as a MSI controller (Mark Langsdorf) [2178301] - platform-msi: Export symbol platform_msi_create_irq_domain() (Mark Langsdorf) [2178301] - PM: runtime: Return -EINPROGRESS from rpm_resume() in the RPM_NOWAIT case (Mark Langsdorf) [2178301] - device property: Add const qualifier to device_get_match_data() parameter (Mark Langsdorf) [2178301] - driver core: use IS_ERR_OR_NULL() helper in device_create_groups_vargs() (Mark Langsdorf) [2178301] - devcoredump : Serialize devcd_del work (Mark Langsdorf) [2178301] - regmap: mmio: replace return 0 with break in switch statement (Mark Langsdorf) [2178301] - mm: kill is_memblock_offlined() (Mark Langsdorf) [2178301] - driver core: remove make_class_name declaration (Mark Langsdorf) [2178301] - regmap/hexagon: Properly fix the generic IO helpers (Mark Langsdorf) [2178301] - regmap: trace: Remove unneeded blank lines (Mark Langsdorf) [2178301] - regmap: trace: Remove explicit castings (Mark Langsdorf) [2178301] - regmap: trace: Remove useless check for NULL for bulk ops (Mark Langsdorf) [2178301] - PM: wakeup: Add extra debugging statement for multiple active IRQs (Mark Langsdorf) [2178301] - devres: Slightly optimize alloc_dr() (Mark Langsdorf) [2178301] - drivers: base: Print error code on synthetic uevent failure (Mark Langsdorf) [2178301] - class: use IS_ERR_OR_NULL() helper in class_unregister() (Mark Langsdorf) [2178301] - regmap: introduce value tracing for regmap bulk operations (Mark Langsdorf) [2178301] - regmap: mmio: Fix MMIO accessors to avoid talking to IO port (Mark Langsdorf) [2178301] - regmap: mmio: Introduce IO accessors that can talk to IO port (Mark Langsdorf) [2178301] - regmap: mmio: Get rid of broken 64-bit IO (Mark Langsdorf) [2178301] - regmap: mmio: Remove mmio_relaxed member from context (Mark Langsdorf) [2178301] - thunderbolt: Mask ring interrupt on Intel hardware as well (Desnes Nunes) [2216483] - thunderbolt: Clear registers properly when auto clear isn't in use (Desnes Nunes) [2216483] - dt-bindings: usb: fsa4480: Use generic node name (Desnes Nunes) [2216483] - media: Revert "media: uvcvideo: Set unique vdev name based in type" (Desnes Nunes) [2216483] - media: uvcvideo: Don't expose unsupported formats to userspace (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Fix configure initial pin assignment (Desnes Nunes) [2216483] - xhci: Free the command allocated for setting LPM if we return early (Desnes Nunes) [2216483] - xhci: also avoid the XHCI_ZERO_64B_REGS quirk with a passthrough iommu (Desnes Nunes) [2216483] - USB: serial: option: add Quectel RM500U-CN modem (Desnes Nunes) [2216483] - thunderbolt: Rename shadowed variables bit to interrupt_bit and auto_clear_bit (Desnes Nunes) [2216483] - thunderbolt: Disable interrupt auto clear for rings (Desnes Nunes) [2216483] - thunderbolt: Use const qualifier for `ring_interrupt_index` (Desnes Nunes) [2216483] - uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS583Gen 2 (Desnes Nunes) [2216483] - USB: serial: option: add Telit FE990 compositions (Desnes Nunes) [2216483] - USB: serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs (Desnes Nunes) [2216483] - thunderbolt: Use scale field when allocating USB3 bandwidth (Desnes Nunes) [2216483] - thunderbolt: Limit USB3 bandwidth of certain Intel USB4 host routers (Desnes Nunes) [2216483] - thunderbolt: Call tb_check_quirks() after initializing adapters (Desnes Nunes) [2216483] - thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access (Desnes Nunes) [2216483] - thunderbolt: Fix memory leak in margining (Desnes Nunes) [2216483] - usb: typec: tcpm: fix warning when handle discover_identity message (Desnes Nunes) [2216483] - usb: typec: tcpm: fix create duplicate source-capabilities file (Desnes Nunes) [2216483] - usb: ucsi_acpi: Increase the command completion timeout (Desnes Nunes) [2216483] - usb: ucsi: Fix ucsi->connector race (Desnes Nunes) [2216483] - usb: ucsi: Fix NULL pointer deref in ucsi_connector_change() (Desnes Nunes) [2216483] - thunderbolt: Add quirk to disable CLx (Desnes Nunes) [2216483] - usb: typec: pd: Add higher capability sysfs for sink PDO (Desnes Nunes) [2216483] - usb: typec: pd: Remove usb_suspend_supported sysfs from sink PDO (Desnes Nunes) [2216483] - xhci: host: potential NULL dereference in xhci_generic_plat_probe() (Desnes Nunes) [2216483] - media: usb: siano: Fix warning due to null work_func_t function pointer (Desnes Nunes) [2216483] - media: usb: siano: Fix use after free bugs caused by do_submit_urb (Desnes Nunes) [2216483] - media: usb: dvb-usb-v2: af9015.c: return 0 instead of 'ret'. (Desnes Nunes) [2216483] - dt-bindings: usb: convert fcs,fusb302.txt to yaml (Desnes Nunes) [2216483] - dt-bindings: usb: fusb302: Remove deprecated properties (Desnes Nunes) [2216483] - usb: uvc: Enumerate valid values for color matching (Desnes Nunes) [2216483] - USB: ene_usb6250: Allocate enough memory for full object (Desnes Nunes) [2216483] - USB: uhci: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - USB: ULPI: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - USB: serial: option: add support for VW/Skoda "Carstick LTE" (Desnes Nunes) [2216483] - usb: remove the dead USB_OHCI_SH option (Desnes Nunes) [2216483] - xhci: decouple usb2 port resume and get_port_status request handling (Desnes Nunes) [2216483] - xhci: clear usb2 resume related variables in one place. (Desnes Nunes) [2216483] - xhci: rename resume_done to resume_timestamp (Desnes Nunes) [2216483] - xhci: Pass port structure as parameter to xhci_disable_port(). (Desnes Nunes) [2216483] - xhci: move port specific items such as state completions to port structure (Desnes Nunes) [2216483] - xhci: pass port pointer as parameter to xhci_set_port_power() (Desnes Nunes) [2216483] - xhci: cleanup xhci_hub_control port references (Desnes Nunes) [2216483] - xhci: add helpers for enabling and disabling interrupters (Desnes Nunes) [2216483] - xhci: Refactor interrupter code for initial multi interrupter support. (Desnes Nunes) [2216483] - xhci: remove xhci_test_trb_in_td_math early development check (Desnes Nunes) [2216483] - xhci: fix event ring segment table related masks and variables in header (Desnes Nunes) [2216483] - USB: core: Don't hold device lock while reading the "descriptors" sysfs file (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Use memcpy_and_pad() (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Optimize early_xdbc_write() (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Fix a potential out-of-bound memory access (Desnes Nunes) [2216483] - Documentation: usb: correct spelling (Desnes Nunes) [2216483] - docs: usb: convert documents to ReST (Desnes Nunes) [2216483] - Documentation/usb: Fix typo (Desnes Nunes) [2216483] - USB: serial: clean up kl5kusb105 documentation (Desnes Nunes) [2216483] - usb: uvc: use v4l2_fill_fmtdesc instead of open coded format name (Desnes Nunes) [2216483] - usb: uvc: make uvc_format_desc table const (Desnes Nunes) [2216483] - usb: uvc: move uvc_fmts and uvc_format_by_guid to own compile unit (Desnes Nunes) [2216483] - usb: uvc: move media/v4l2-uvc.h to usb/uvc.h (Desnes Nunes) [2216483] - media: uvcvideo: Add GUID for BGRA/X 8:8:8:8 (Desnes Nunes) [2216483] - usb: gadget: uvc: add v4l2 try_format api call (Desnes Nunes) [2216483] - usb: gadget: uvc: add v4l2 enumeration api calls (Desnes Nunes) [2216483] - usb: gadget: uvc: allow for application to cleanly shutdown (Desnes Nunes) [2216483] - usb: gadget: uvc: rename function to be more consistent (Desnes Nunes) [2216483] - usb: gadget: uvc: fix multiple opens (Desnes Nunes) [2216483] - thunderbolt: Add missing kernel-doc comment to tb_tunnel_maximum_bandwidth() (Desnes Nunes) [2216483] - thunderbolt: Handle bandwidth allocation mode enablement notification (Desnes Nunes) [2216483] - xhci: split out rcar/rz support from xhci-plat.c (Desnes Nunes) [2216483] - usb: host: xhci-rcar: Use xhci_plat_priv.quirks instead of code settings (Desnes Nunes) [2216483] - usb: host: xhci-plat: Remove useless DMA-32 fallback configuration (Desnes Nunes) [2216483] - usb: host: xhci-plat: Add reset support (Desnes Nunes) [2216483] - usb: host: xhci-plat: Improve clock handling in probe() (Desnes Nunes) [2216483] - dt-bindings: usb: Convert Marvell Orion EHCI to DT schema (Desnes Nunes) [2216483] - dt-bindings: usb: Convert OMAP OHCI/EHCI bindings to schema (Desnes Nunes) [2216483] - dt-bindings: usb: Convert multiple "usb-ohci" bindings to DT schema (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ohci: Document dr_mode property (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ehci: Document dr_mode property (Desnes Nunes) [2216483] - dt-bindings: ehci/ohci: Allow iommus property (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ohci: Add missing compatible strings (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ehci: Add missing compatible strings (Desnes Nunes) [2216483] - dt-bindings: Fix incorrect 'reg' property sizes (Desnes Nunes) [2216483] - dt-bindings: usb: ehci: Add missing 2nd register region (Desnes Nunes) [2216483] - usb: typec: tcpm: Remove altmode active state updates (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Update active state (Desnes Nunes) [2216483] - usb: typec: mux: Introduce GPIO-based SBU mux (Desnes Nunes) [2216483] - redhat: configs: Add unset CONFIG_TYPEC_MUX_GPIO_SBU option (Desnes Nunes) [2216483] - usb: typec: mux: Add On Semi fsa4480 driver (Desnes Nunes) [2216483] - dt-bindings: usb: Add binding for fcs,fsa4480 (Desnes Nunes) [2216483] - dt-bindings: usb: Introduce GPIO-based SBU mux (Desnes Nunes) [2216483] - usb: host: ehci-fsl: Use DRV_NAME (Desnes Nunes) [2216483] - usb: typec: maxim_contaminant: Implement check_contaminant callback (Desnes Nunes) [2216483] - usb: typec: tcpci: Add callback for evaluating contaminant presence (Desnes Nunes) [2216483] - usb: typec: tcpm: Add callbacks to mitigate wakeups due to contaminant (Desnes Nunes) [2216483] - usb: typec: Make bus switch code retimer-aware (Desnes Nunes) [2216483] - usb: typec: retimer: Use device type for matching (Desnes Nunes) [2216483] - usb: typec: Add wrapper for bus switch set code (Desnes Nunes) [2216483] - usb: typec: Add retimer handle to port altmode (Desnes Nunes) [2216483] - usb: typec: tipd: Support wakeup (Desnes Nunes) [2216483] - dt-bindings: usb: tps6598x: Add wakeup property (Desnes Nunes) [2216483] - USB: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - usb: typec: intel_pmc_mux: Deduplicate ACPI matching in probe (Desnes Nunes) [2216483] - usb: typec: intel_pmc_mux: Don't leak the ACPI device reference count (Desnes Nunes) [2216483] - usb: typec: tcpci: Request IRQ with IRQF_SHARED (Desnes Nunes) [2216483] - USB: Improve usb_fill_* documentation (Desnes Nunes) [2216483] - usb: typec: hd3ss3220: Add polling support (Desnes Nunes) [2216483] - dt-bindings: usb: ti,hd3ss3220: Update interrupt property as optional (Desnes Nunes) [2216483] - dt-bindings: usb: convert ti,hd3ss3220 bindings to json-schema (Desnes Nunes) [2216483] - dt-bindings: Convert usb-connector to YAML format. (Desnes Nunes) [2216483] - dt-bindings: usb: rt1711h: Add connector bindings (Desnes Nunes) [2216483] - dt-bindings: usb: hd3ss3220 device tree binding document (Desnes Nunes) [2216483] - thunderbolt: Add support for DisplayPort bandwidth allocation mode (Desnes Nunes) [2216483] - thunderbolt: Include the additional DP IN double word in debugfs dump (Desnes Nunes) [2216483] - thunderbolt: Add functions to support DisplayPort bandwidth allocation mode (Desnes Nunes) [2216483] - thunderbolt: Increase timeout of DP OUT adapter handshake (Desnes Nunes) [2216483] - thunderbolt: Take CL states into account when waiting for link to come up (Desnes Nunes) [2216483] - thunderbolt: Improve debug logging in tb_available_bandwidth() (Desnes Nunes) [2216483] - thunderbolt: Log DP adapter type (Desnes Nunes) [2216483] - thunderbolt: Use decimal port number in control and tunnel logs too (Desnes Nunes) [2216483] - media: uvcvideo: Silence memcpy() run-time false positive warnings (Desnes Nunes) [2216483] - media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910 (Desnes Nunes) [2216483] - media: uvcvideo: Fix race condition with usb_kill_urb (Desnes Nunes) [2216483] - media: uvcvideo: Use standard names for menus (Desnes Nunes) [2216483] - media: uvcvideo: Fix power line control for Lenovo Integrated Camera (Desnes Nunes) [2216483] - media: uvcvideo: Add a quirk to force GEO GC6500 Camera bits-per-pixel value (Desnes Nunes) [2216483] - media: v4l: common: Fix naming of v4l2_get_link_rate (Desnes Nunes) [2216483] - media: ipu3-cio2: Use v4l2_get_link_freq helper (Desnes Nunes) [2216483] - media: ipu3-cio2: Update Copyright year and fix indentation issues (Desnes Nunes) [2216483] - media: v4l: Add a helper for obtaining the link frequency (Desnes Nunes) [2216483] - media: v4l2-common: add RGB565 and RGB55 to v4l2_format_info (Desnes Nunes) [2216483] - media: v4l2-common: add pixel encoding support (Desnes Nunes) [2216483] - media: v4l2-common: add support for new RGB32 pixelformats (Desnes Nunes) [2216483] - media: v4l2-common: add bayer formats in v4l2_format_info (Desnes Nunes) [2216483] - media: v4l2-common: Add an helper to apply frmsize constraints (Desnes Nunes) [2216483] - media: v4l2-common: Fix v4l2_fill_pixfmt[_mp]() prototypes (Desnes Nunes) [2216483] - media: Introduce helpers to fill pixel format structs (Desnes Nunes) [2216483] - media: uvcvideo: Refactor power_line_frequency_controls_limited (Desnes Nunes) [2216483] - media: uvcvideo: Refactor uvc_ctrl_mappings_uvcXX (Desnes Nunes) [2216483] - media: uvcvideo: Implement mask for V4L2_CTRL_TYPE_MENU (Desnes Nunes) [2216483] - media: uvcvideo: Extend documentation of uvc_video_clock_decode() (Desnes Nunes) [2216483] - media: uvcvideo: Refactor __uvc_ctrl_add_mapping (Desnes Nunes) [2216483] - media: uvcvideo: Undup use uvc_endpoint_max_bpi() code (Desnes Nunes) [2216483] - media: uvcvideo: Simplify uvc_endpoint_max_bpi() (Desnes Nunes) [2216483] - media: uvcvideo: Fix memory leak if uvc_ctrl_add_mapping fails (Desnes Nunes) [2216483] - media: uvcvideo: Avoid returning invalid controls (Desnes Nunes) [2216483] - media: uvcvideo: Avoid invalid memory access (Desnes Nunes) [2216483] - media: uvcvideo: Set the colorspace as sRGB if undefined (Desnes Nunes) [2216483] - media: uvcvideo: Fix memory leak of object map on error exit path (Desnes Nunes) [2216483] - media: uvcvideo: Fix handling on Bitmask controls (Desnes Nunes) [2216483] - media: uvcvideo: Do not return positive errors in uvc_query_ctrl() (Desnes Nunes) [2216483] - media: uvcvideo: Return -EACCES for Wrong state error (Desnes Nunes) [2216483] - media: uvcvideo: Improve error logging in uvc_query_ctrl() (Desnes Nunes) [2216483] - media: uvcvideo: Check for INACTIVE in uvc_ctrl_is_accessible() (Desnes Nunes) [2216483] - media: uvcvideo: Factor out usb_string() calls (Desnes Nunes) [2216483] - media: uvcvideo: Limit power line control for Acer EasyCamera (Desnes Nunes) [2216483] - media: uvcvideo: Recover stalled ElGato devices (Desnes Nunes) [2216483] - media: uvcvideo: Remove void casting for the status endpoint (Desnes Nunes) [2216483] - media: uvcvideo: Increase UVC_CTRL_CONTROL_TIMEOUT to 5 seconds. (Desnes Nunes) [2216483] - media: uvcvideo: Fix usage of symbolic permissions to octal (Desnes Nunes) [2216483] - media: uvcvideo: Fix assignment inside if condition (Desnes Nunes) [2216483] - media: uvcvideo: Fix missing newline after declarations (Desnes Nunes) [2216483] - media: uvcvideo: Handle errors from calls to usb_string (Desnes Nunes) [2216483] - media: uvcvideo: Only create input devs if hw supports it (Desnes Nunes) [2216483] - media: uvcvideo: Handle cameras with invalid descriptors (Desnes Nunes) [2216483] - media: uvcvideo: Remove format descriptions (Desnes Nunes) [2216483] - media: docs: Document the behaviour of uvcvideo driver (Desnes Nunes) [2216483] - media: uvcvideo: Set error_idx during ctrl_commit errors (Desnes Nunes) [2216483] - media: uvcvideo: Check controls flags before accessing them (Desnes Nunes) [2216483] - media: uvcvideo: Use control names from framework (Desnes Nunes) [2216483] - media: uvcvideo: Set unique vdev name based in type (Desnes Nunes) [2216483] - media: uvcvideo: Use dev->name for querycap() (Desnes Nunes) [2216483] - media: uvcvideo: Add support for V4L2_CTRL_TYPE_CTRL_CLASS (Desnes Nunes) [2216483] - media: uvcvideo: Set capability in s_param (Desnes Nunes) [2216483] - media: uvcvideo: Remove s_ctrl and g_ctrl (Desnes Nunes) [2216483] - media: v4l2-ioctl: S_CTRL output the right value (Desnes Nunes) [2216483] - media: uvcvideo: Do not check for V4L2_CTRL_WHICH_DEF_VAL (Desnes Nunes) [2216483] - media: pvrusb2: Do not check for V4L2_CTRL_WHICH_DEF_VAL (Desnes Nunes) [2216483] - media: v4l2-ioctl: Fix check_ext_ctrls (Desnes Nunes) [2216483] - net: thunderbolt: Add tracepoints (Desnes Nunes) [2216483] - net: thunderbolt: Add debugging when sending/receiving control packets (Desnes Nunes) [2216483] - net: thunderbolt: Move into own directory (Desnes Nunes) [2216483] - xhci: Convert to use list_count_nodes() (Desnes Nunes) [2216483] - usb: typec: ucsi: Register USB Power Delivery Capabilities (Desnes Nunes) [2216483] - xhci: Add hub_control to xhci_driver_overrides (Desnes Nunes) [2216483] - xhci: hub: export symbol on xhci_hub_control (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Add hpd sysfs attribute (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Notify drm subsys of (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Make dp_altmode_notify() more generic (Desnes Nunes) [2216483] - thunderbolt: Refactor tb_acpi_add_link() (Desnes Nunes) [2216483] - thunderbolt: Use correct type in tb_port_is_clx_enabled() prototype (Desnes Nunes) [2216483]- s390/diag: fix display of diagnose call statistics (Tobias Huschle) [2187995] - rseq, ptrace: Add PTRACE_GET_RSEQ_CONFIGURATION request (Adrian Reber) [2218454] - locking/rwbase: Mitigate indefinite writer starvation (Eder Zulian) [2077282] - fbcon: Check font dimension limits (Ricardo Robaina) [2213493] {CVE-2023-3161} - libnvdimm: Notify disk drivers to revalidate region read-only (Jeff Moyer) [1999673] - nvdimm/region: always show the 'align' attribute (Jeff Moyer) [1999673] - nvdimm/region: Fix default alignment for small regions (Jeff Moyer) [1999673] - libnvdimm/region: Allow setting align attribute on regions without mappings (Jeff Moyer) [1999673] - KVM: SVM: Return the local "r" variable from svm_set_msr() (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Virtualize FLUSH_L1D and passthrough MSR_IA32_FLUSH_CMD (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Move MSR_IA32_PRED_CMD WRMSR emulation to common code (Emanuele Giuseppe Esposito) [2124598] - KVM: SVM: Passthrough MSR_IA32_PRED_CMD based purely on host+guest CPUID (Emanuele Giuseppe Esposito) [2124598] - KVM: VMX: Passthrough MSR_IA32_PRED_CMD based purely on host+guest CPUID (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Revert MSR_IA32_FLUSH_CMD.FLUSH_L1D enabling (Emanuele Giuseppe Esposito) [2124598] - kvm: x86: Advertise FLUSH_L1D to user space (Emanuele Giuseppe Esposito) [2124598] - kvm: svm: Add IA32_FLUSH_CMD guest support (Emanuele Giuseppe Esposito) [2124598] - kvm: vmx: Add IA32_FLUSH_CMD guest support (Emanuele Giuseppe Esposito) [2124598] - rtc: lib_test: add MODULE_LICENSE (Lenny Szubowicz) [2207975] - rtc: efi: Remove the repeated module alias (Lenny Szubowicz) [2207975] - efi/efivars: Set generic ops before loading SSDT (Lenny Szubowicz) [2207975] - efi: efibc: check for efivars write capability (Lenny Szubowicz) [2207975] - efi/efivars: Expose RT service availability via efivars abstraction (Lenny Szubowicz) [2207975] - integrity: Check properly whether EFI GetVariable() is available (Lenny Szubowicz) [2207975] - x86/ima: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - efi: Use EFI ResetSystem only when available (Lenny Szubowicz) [2207975] - scsi: iscsi: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - infiniband: hfi1: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - efi: Register EFI rtc platform device only when available (Lenny Szubowicz) [2207975] - efi: Use more granular check for availability for variable services (Lenny Szubowicz) [2207975] - efi: mark all efi runtime services as unsupported on non-efi boot (Lenny Szubowicz) [2207975] - efi: Add support for EFI_RT_PROPERTIES table (Lenny Szubowicz) [2207975] - crypto: ccp - Add support for PCI device 0x156E (Vladis Dronov) [2180960] - crypto: ccp - Add support for PCI device 0x17E0 (Vladis Dronov) [2180960] - crypto: ccp - Validate that platform access mailbox registers are declared (Vladis Dronov) [2180960] - crypto: ccp - Use lower 8 bytes to communicate with doorbell command register (Vladis Dronov) [2180960] - crypto: ccp - Return doorbell status code as an argument (Vladis Dronov) [2180960] - crypto: ccp - Bump up doorbell debug message to error (Vladis Dronov) [2180960] - crypto: ccp - Drop extra doorbell checks (Vladis Dronov) [2180960] - crypto: ccp - Don't initialize CCP for PSP 0x1649 (Vladis Dronov) [2180960] - crypto: ccp - Clear PSP interrupt status register before calling handler (Vladis Dronov) [2180960] - crypto: ccp - Add support for ringing a platform doorbell (Vladis Dronov) [2180960] - crypto: ccp - Enable platform access interface on client PSP parts (Vladis Dronov) [2180960] - crypto: ccp - Add support for an interface for platform features (Vladis Dronov) [2180960] - crypto: ccp - Move some PSP mailbox bit definitions into common header (Vladis Dronov) [2180960] - crypto: ccp - Add a header for multiple drivers to use `__psp_pa` (Vladis Dronov) [2180960] - crypto: ccp - Drop TEE support for IRQ handler (Vladis Dronov) [2180960] - crypto: ccp: Get rid of __sev_platform_init_locked()'s local function pointer (Vladis Dronov) [2180960] - crypto: ccp - Name -1 return value as SEV_RET_NO_FW_CALL (Vladis Dronov) [2180960] - crypto: ccp - Flush the SEV-ES TMR memory before giving it to firmware (Vladis Dronov) [2180960] - crypto: ccp - Add a firmware definition for EPYC gen 4 processors (Vladis Dronov) [2180960] - crypto: ccp - Provide MMIO register naming for documenation (Vladis Dronov) [2180960] - redhat/configs: enable CONFIG_INTEL_UNCORE_FREQ_CONTROL for x86_64 (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Return error on write frequency (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Add client processors (David Arcari) [2156826] - platform/x86: intel-uncore-freq: add Emerald Rapids support (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Use sysfs_emit() to instead of scnprintf() (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Prevent driver loading in guests (David Arcari) [2156826] - platform/x86: intel-uncore-freq: fix uncore_freq_common_init() error codes (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Split common and enumeration part (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Display uncore current frequency (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Use sysfs API to create attributes (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Move to uncore-frequency folder (David Arcari) [2156826] - platform/x86: intel-uncore-frequency: use default_groups in kobj_type (David Arcari) [2156826] - platform/x86: intel-uncore-frequency: Move to intel sub-directory (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Add Sapphire Rapids server support (David Arcari) [2156826] - platform/x86/intel-uncore-freq: make uncore_root_kobj static (David Arcari) [2156826] - platform/x86: Convert to new CPU match macros (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Add release callback (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Fix static checker issue and potential race condition (David Arcari) [2156826] - MAINTAINERS: Update for the intel uncore frequency control (David Arcari) [2156826] - platform/x86: Add support for Uncore frequency control (David Arcari) [2156826]- ceph: fix use-after-free bug for inodes when flushing capsnaps (Xiubo Li) [2209299] - net/tls: tls_is_tx_ready() checked list_entry (Sabrina Dubroca) [2212176] {CVE-2023-1075} - Revert "RDMA/umem: remove FOLL_FORCE usage" (Kamal Heib) [2210153 2210849] - Revert "RDMA/core: Refactor rdma_bind_addr" (Kamal Heib) [2212211 2212217] - cpufreq: intel_pstate: Fix scaling for hybrid-capable systems with disabled E-cores (David Arcari) [2221276] - netfilter: nf_tables: fix scheduling-while-atomic splat (Phil Sutter) [2217731] - netfilter: nf_tables: add rescheduling points during loop detection walks (Phil Sutter) [2217731] - ipv6: Remove dependency of ipv6_frag_thdr_truncated on ipv6 module (Phil Sutter) [2217794] - ipv6/netfilter: Discard first fragment not including all headers (Phil Sutter) [2217794] - s390/ipl: add eckd dump support (Tobias Huschle) [2159695] - net/smc: fix document build WARNING from smc-sysctl.rst (Tobias Huschle) [2159734] - s390/ism: switch from 'pci_' to 'dma_' API (Tobias Huschle) [2159734] - net/smc: Fix device de-init sequence (Tobias Huschle) [2159734] - net/smc: fix deadlock triggered by cancel_delayed_work_syn() (Tobias Huschle) [2159734] - net/smc: fix NULL sndbuf_desc in smc_cdc_tx_handler() (Tobias Huschle) [2159734] - net/smc: fix fallback failed while sendmsg with fastopen (Tobias Huschle) [2159734] - net/smc: fix application data exception (Tobias Huschle) [2159734] - net/smc: replace mutex rmbs_lock and sndbufs_lock with rw_semaphore (Tobias Huschle) [2159734] - net/smc: reduce unnecessary blocking in smcr_lgr_reg_rmbs() (Tobias Huschle) [2159734] - net/smc: use read semaphores to reduce unnecessary blocking in smc_buf_create() & smcr_buf_unuse() (Tobias Huschle) [2159734] - net/smc: llc_conf_mutex refactor, replace it with rw_semaphore (Tobias Huschle) [2159734] - net: add missing includes of linux/splice.h (Tobias Huschle) [2159734] - net/smc: De-tangle ism and smc device initialization (Tobias Huschle) [2159734] - s390/ism: Consolidate SMC-D-related code (Tobias Huschle) [2159734] - net/smc: Separate SMC-D and ISM APIs (Tobias Huschle) [2159734] - net/smc: Register SMC-D as ISM client (Tobias Huschle) [2159734] - net/ism: Add new API for client registration (Tobias Huschle) [2159734] - s390/ism: Introduce struct ism_dmb (Tobias Huschle) [2159734] - net/ism: Add missing calls to disable bus-mastering (Tobias Huschle) [2159734] - net/smc: Terminate connections prior to device removal (Tobias Huschle) [2159734] - net/smc: Fix possible leaked pernet namespace in smc_init() (Tobias Huschle) [2159734] - net/smc: Fix an error code in smc_lgr_create() (Tobias Huschle) [2159734] - net/smc: Support SO_REUSEPORT (Tobias Huschle) [2159734] - net/smc: Introduce a specific sysctl for TEST_LINK time (Tobias Huschle) [2159734] - net/smc: Stop the CLC flow if no link to map buffers on (Tobias Huschle) [2159734] - net/smc: Fix possible access to freed memory in link clear (Tobias Huschle) [2159734] - net/smc: Remove redundant refcount increase (Tobias Huschle) [2159734] - net/smc: Enable module load on netlink usage (Tobias Huschle) [2159734] - net/smc: Pass on DMBE bit mask in IRQ handler (Tobias Huschle) [2159734] - s390/ism: Cleanups (Tobias Huschle) [2159734] - net/smc: Eliminate struct smc_ism_position (Tobias Huschle) [2159734] - tcp: Fix data-races around keepalive sysctl knobs. (Tobias Huschle) [2159734] - net/smc: Extend SMC-R link group netlink attribute (Tobias Huschle) [2159734] - net/smc: Allow virtually contiguous sndbufs or RMBs for SMC-R (Tobias Huschle) [2159734] - net/smc: Use sysctl-specified types of buffers in new link group (Tobias Huschle) [2159734] - net/smc: Introduce a sysctl for setting SMC-R buffer type (Tobias Huschle) [2159734] - net/smc: optimize for smc_sndbuf_sync_sg_for_device and smc_rmb_sync_sg_for_cpu (Tobias Huschle) [2159734] - net/smc: remove redundant dma sync ops (Tobias Huschle) [2159734] - net/smc: fixes for converting from "struct smc_cdc_tx_pend **" to "struct smc_wr_tx_pend_priv *" (Tobias Huschle) [2159734] - net/smc: set ini->smcrv2.ib_dev_v2 to NULL if SMC-Rv2 is unavailable (Tobias Huschle) [2159734] - net/smc: postpone sk_refcnt increment in connect() (Tobias Huschle) [2159734] - net/smc: rdma write inline if qp has sufficient inline space (Tobias Huschle) [2159734] - net/smc: send cdc msg inline if qp has sufficient inline space (Tobias Huschle) [2159734] - net/smc: align the connect behaviour with TCP (Tobias Huschle) [2159734] - net/smc: non blocking recvmsg() return -EAGAIN when no data and signal_pending (Tobias Huschle) [2159734] - net/smc: Fix slab-out-of-bounds issue in fallback (Tobias Huschle) [2159734] - net/smc: Only save the original clcsock callback functions (Tobias Huschle) [2159734] - net/smc: sync err code when tcp connection was refused (Tobias Huschle) [2159734] - net/smc: Fix sock leak when release after smc_shutdown() (Tobias Huschle) [2159734] - net/smc: Send out the remaining data in sndbuf before close (Tobias Huschle) [2159734] - net/smc: fix a memory leak in smc_sysctl_net_exit() (Tobias Huschle) [2159734] - net/smc: fix -Wmissing-prototypes warning when CONFIG_SYSCTL not set (Tobias Huschle) [2159734] - net/smc: fix compile warning for smc_sysctl (Tobias Huschle) [2159734] - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error cause by server (Tobias Huschle) [2159734] - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error generated by client (Tobias Huschle) [2159734] - net: smc: fix different types in min() (Tobias Huschle) [2159734] - net/smc: don't send in the BH context if sock_owned_by_user (Tobias Huschle) [2159734] - net/smc: correct settings of RMB window update limit (Tobias Huschle) [2159734] - net/smc: send directly on setting TCP_NODELAY (Tobias Huschle) [2159734] - net/smc: add sysctl for autocorking (Tobias Huschle) [2159734] - net/smc: add autocorking support (Tobias Huschle) [2159734] - net/smc: add sysctl interface for SMC (Tobias Huschle) [2159734] - x86/resctrl: Clear staged_config[] before and after it is used (Prarit Bhargava) [1989284] - x86/resctl: fix scheduler confusion with 'current' (Prarit Bhargava) [1989284] - x86/resctrl: Fix a silly -Wunused-but-set-variable warning (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to write mbm_local_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to write mbm_total_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to read mbm_local_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to read mbm_total_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Support monitor configuration (Prarit Bhargava) [1989284] - x86/resctrl: Add __init attribute to rdt_get_mon_l3_config() (Prarit Bhargava) [1989284] - x86/resctrl: Detect and configure Slow Memory Bandwidth Allocation (Prarit Bhargava) [1989284] - x86/cpufeatures: Add Bandwidth Monitoring Event Configuration feature flag (Prarit Bhargava) [1989284] - x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag (Prarit Bhargava) [1989284] - x86/resctrl: Include new features in command line options (Prarit Bhargava) [1989284] - x86/resctrl: Add a new resource type RDT_RESOURCE_SMBA (Prarit Bhargava) [1989284] - x86/resctrl: Replace smp_call_function_many() with on_each_cpu_mask() (Prarit Bhargava) [1989284] - x86/resctrl: Fix event counts regression in reused RMIDs (Prarit Bhargava) [1989284] - x86/resctrl: Fix task CLOSID/RMID update race (Prarit Bhargava) [1989284] - x86/resctrl: Move MSR defines into msr-index.h (Prarit Bhargava) [1989284] - x86/resctrl: Remove arch_has_empty_bitmaps (Prarit Bhargava) [1989284] - x86/resctrl: Fix min_cbm_bits for AMD (Prarit Bhargava) [1989284] - x86/resctrl: Make resctrl_arch_rmid_read() return values in bytes (Prarit Bhargava) [1989284] - x86/resctrl: Add resctrl_rmid_realloc_limit to abstract x86's boot_cpu_data (Prarit Bhargava) [1989284] - x86/resctrl: Rename and change the units of resctrl_cqm_threshold (Prarit Bhargava) [1989284] - x86/resctrl: Move get_corrected_mbm_count() into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Move mbm_overflow_count() into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Pass the required parameters into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Abstract __rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Allow per-rmid arch private storage to be reset (Prarit Bhargava) [1989284] - x86/resctrl: Add per-rmid arch private storage for overflow and chunks (Prarit Bhargava) [1989284] - x86/resctrl: Calculate bandwidth from the previous __mon_event_count() chunks (Prarit Bhargava) [1989284] - x86/resctrl: Allow update_mba_bw() to update controls directly (Prarit Bhargava) [1989284] - x86/resctrl: Remove architecture copy of mbps_val (Prarit Bhargava) [1989284] - x86/resctrl: Switch over to the resctrl mbps_val list (Prarit Bhargava) [1989284] - x86/resctrl: Create mba_sc configuration in the rdt_domain (Prarit Bhargava) [1989284] - x86/resctrl: Abstract and use supports_mba_mbps() (Prarit Bhargava) [1989284] - x86/resctrl: Remove set_mba_sc()s control array re-initialisation (Prarit Bhargava) [1989284] - x86/resctrl: Add domain offline callback for resctrl work (Prarit Bhargava) [1989284] - x86/resctrl: Group struct rdt_hw_domain cleanup (Prarit Bhargava) [1989284] - x86/resctrl: Add domain online callback for resctrl work (Prarit Bhargava) [1989284] - x86/resctrl: Merge mon_capable and mon_enabled (Prarit Bhargava) [1989284] - x86/resctrl: Kill off alloc_enabled (Prarit Bhargava) [1989284] - x86/resctrl: Fix to restore to original value when re-enabling hardware prefetch register (Prarit Bhargava) [1989284] - x86: Replace cpumask_weight() with cpumask_empty() where appropriate (Prarit Bhargava) [1989284] - x86/resctrl: Remove redundant assignment to variable chunks (Prarit Bhargava) [1989284] - x86/resctrl: Fix kfree() of the wrong type in domain_add_cpu() (Prarit Bhargava) [1989284] - x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails (Prarit Bhargava) [1989284] - x86/resctrl: Make resctrl_arch_get_config() return its value (Prarit Bhargava) [1989284] - x86/resctrl: Merge the CDP resources (Prarit Bhargava) [1989284] - x86/resctrl: Expand resctrl_arch_update_domains()'s msr_param range (Prarit Bhargava) [1989284] - x86/resctrl: Remove rdt_cdp_peer_get() (Prarit Bhargava) [1989284] - x86/resctrl: Merge the ctrl_val arrays (Prarit Bhargava) [1989284] - x86/resctrl: Calculate the index from the configuration type (Prarit Bhargava) [1989284] - x86/resctrl: Apply offset correction when config is staged (Prarit Bhargava) [1989284] - x86/resctrl: Make ctrlval arrays the same size (Prarit Bhargava) [1989284] - x86/resctrl: Pass configuration type to resctrl_arch_get_config() (Prarit Bhargava) [1989284] - x86/resctrl: Add a helper to read a closid's configuration (Prarit Bhargava) [1989284] - x86/resctrl: Rename update_domains() to resctrl_arch_update_domains() (Prarit Bhargava) [1989284] - x86/resctrl: Allow different CODE/DATA configurations to be staged (Prarit Bhargava) [1989284] - x86/resctrl: Group staged configuration into a separate struct (Prarit Bhargava) [1989284] - x86/resctrl: Move the schemata names into struct resctrl_schema (Prarit Bhargava) [1989284] - x86/resctrl: Add a helper to read/set the CDP configuration (Prarit Bhargava) [1989284] - x86/resctrl: Swizzle rdt_resource and resctrl_schema in pseudo_lock_region (Prarit Bhargava) [1989284] - x86/resctrl: Pass the schema to resctrl filesystem functions (Prarit Bhargava) [1989284] - x86/resctrl: Add resctrl_arch_get_num_closid() (Prarit Bhargava) [1989284] - x86/resctrl: Store the effective num_closid in the schema (Prarit Bhargava) [1989284] - x86/resctrl: Walk the resctrl schema list instead of an arch list (Prarit Bhargava) [1989284] - x86/resctrl: Label the resources with their configuration type (Prarit Bhargava) [1989284] - x86/resctrl: Pass the schema in info dir's private pointer (Prarit Bhargava) [1989284] - x86/resctrl: Add a separate schema list for resctrl (Prarit Bhargava) [1989284] - x86/resctrl: Split struct rdt_domain (Prarit Bhargava) [1989284] - x86/resctrl: Split struct rdt_resource (Prarit Bhargava) [1989284] - x86/resctrl: Include pid.h (Prarit Bhargava) [1989284] - x86/resctrl: Fix kernel-doc in internal.h (Prarit Bhargava) [1989284] - x86/resctrl: Fix kernel-doc in pseudo_lock.c (Prarit Bhargava) [1989284] - x86/resctrl: Fix init const confusion (Prarit Bhargava) [1989284] - x86/resctrl: Fix various typos in comments, take #2 (Prarit Bhargava) [1989284] - x86/resctrl: Fix various typos in comments (Prarit Bhargava) [1989284] - x86/resctrl: Apply READ_ONCE/WRITE_ONCE to task_struct.{rmid,closid} (Prarit Bhargava) [1989284] - x86/resctrl: Use task_curr() instead of task_struct->on_cpu to prevent unnecessary IPI (Prarit Bhargava) [1989284] - x86/resctrl: Add printf attribute to log function (Prarit Bhargava) [1989284] - x86/resctrl: Don't move a task to the same resource group (Prarit Bhargava) [1989284] - x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR (Prarit Bhargava) [1989284] - x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled (Prarit Bhargava) [1989284] - x86/resctrl: Clean up unused function parameter in rmdir path (Prarit Bhargava) [1989284] - x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak (Prarit Bhargava) [1989284] - x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak (Prarit Bhargava) [1989284] - x86/resctrl: Constify kernfs_ops (Prarit Bhargava) [1989284] - x86/resctrl: Correct MBM total and local values (Prarit Bhargava) [1989284] - x86/include/asm/msr-index.h: Add IFS Array test bits (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Update IFS doc (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Implement Array BIST test (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Sysfs interface for Array BIST (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Introduce Array Scan test to IFS (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: IFS cleanup (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Reorganize driver data (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Separate ifs_pkg_auth from ifs_data (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add missing kernel-doc entry (Prarit Bhargava) [1971937] - Revert "platform/x86/intel/ifs: Mark as BROKEN" (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add current_batch sysfs entry (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove reload sysfs entry (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add metadata validation (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Use generic microcode headers and functions (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add metadata support (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove memory allocation from load path (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove image loading during init (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Return a more appropriate error code (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove unused selection (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Mark as BROKEN (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add CPU_SUP_INTEL dependency (Prarit Bhargava) [1971937] - Documentation: In-Field Scan (Prarit Bhargava) [1971937] - redhat/configs: Add CONFIG_INTEL_IFS (Prarit Bhargava) [1971937] - redhat/configs: Add CONFIG_MICROCODE_LATE_LOADING (Prarit Bhargava) [1971937] - stop_machine: Add stop_core_cpuslocked() for per-core operations (Prarit Bhargava) [1971937] - trace: platform/x86/intel/ifs: Add trace point to track Intel IFS operations (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add IFS sysfs interface (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add scan test support (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Authenticate and copy to secured memory (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Check IFS Image sanity (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Read IFS firmware image (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add stub driver for In-Field Scan (Prarit Bhargava) [1971937] - x86/msr-index: Define INTEGRITY_CAPABILITIES MSR (Prarit Bhargava) [1971937] - x86/microcode/core: Return an error only when necessary (Prarit Bhargava) [1971937] - x86/microcode/AMD: Fix mixed steppings support (Prarit Bhargava) [1971937] - x86/microcode/AMD: Add a @cpu parameter to the reloading functions (Prarit Bhargava) [1971937] - x86/microcode/amd: Remove load_microcode_amd()'s bsp parameter (Prarit Bhargava) [1971937] - x86/microcode: Allow only "1" as a late reload trigger value (Prarit Bhargava) [1971937] - x86/microcode/intel: Print old and new revision during early boot (Prarit Bhargava) [1971937] - x86/microcode/intel: Pass the microcode revision to print_ucode_info() directly (Prarit Bhargava) [1971937] - x86/microcode: Adjust late loading result reporting message (Prarit Bhargava) [1971937] - x86/microcode: Check CPU capabilities after late microcode update correctly (Prarit Bhargava) [1971937] - x86/microcode: Add a parameter to microcode_check() to store CPU capabilities (Prarit Bhargava) [1971937] - x86/microcode: Use the DEVICE_ATTR_RO() macro (Prarit Bhargava) [1971937] - x86/microcode/AMD: Handle multiple glued containers properly (Prarit Bhargava) [1971937] - x86/microcode/AMD: Rename a couple of functions (Prarit Bhargava) [1971937] - x86/microcode/intel: Do not retry microcode reloading on the APs (Prarit Bhargava) [1971937] - x86/microcode/intel: Do not print microcode revision and processor flags (Prarit Bhargava) [1971937] - x86/microcode/intel: Use a reserved field for metasize (Prarit Bhargava) [1971937] - x86/microcode/intel: Add hdr_type to intel_microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Reuse microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Use appropriate type in microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Reuse find_matching_signature() (Prarit Bhargava) [1971937] - x86/microcode: Drop struct ucode_cpu_info.valid (Prarit Bhargava) [1971937] - x86/microcode: Do some minor fixups (Prarit Bhargava) [1971937] - x86/microcode: Kill refresh_fw (Prarit Bhargava) [1971937] - x86/microcode: Simplify init path even more (Prarit Bhargava) [1971937] - x86/microcode: Rip out the subsys interface gunk (Prarit Bhargava) [1971937] - x86/microcode/AMD: Track patch allocation size explicitly (Prarit Bhargava) [1971937] - x86/microcode: Print previous version of microcode after reload (Prarit Bhargava) [1971937] - x86/microcode: Remove ->request_microcode_user() (Prarit Bhargava) [1971937] - misc: Mark MICROCODE_MINOR unused (Prarit Bhargava) [1971937] - x86/microcode: Remove unnecessary perf callback (Prarit Bhargava) [1971937] - x86/microcode: Taint and warn on late loading (Prarit Bhargava) [1971937] - x86/microcode: Default-disable late loading (Prarit Bhargava) [1971937] - x86/microcode: Rip out the OLD_INTERFACE (Prarit Bhargava) [1971937] - x86/microcode/intel: Expose collect_cpu_info_early() for IFS (Prarit Bhargava) [1971937] - x86/cpu: Load microcode during restore_processor_state() (Prarit Bhargava) [1971937] - microcode: Replace zero-length arrays with flexible-array members (Prarit Bhargava) [1971937] - x86/microcode: Use the firmware_loader built-in API (Prarit Bhargava) [1971937] - firmware: Export firmware_request_builtin() (Prarit Bhargava) [1971937] - x86/microcode: Replace deprecated CPU-hotplug functions. (Prarit Bhargava) [1971937] - x86/microcode: Make microcode_init() static (Prarit Bhargava) [1971937] - x86/microcode/intel: Check patch signature before saving microcode for early loading (Prarit Bhargava) [1971937] - x86/microcode/amd: Remove unneeded break (Prarit Bhargava) [1971937] - x86/microcode: Do not select FW_LOADER (Prarit Bhargava) [1971937] - x86/microcode: Fix return value for microcode late loading (Prarit Bhargava) [1971937] - docs: fix broken documentation links (Prarit Bhargava) [1971937]- x86/cpu: Add Xeon Emerald Rapids to list of CPUs that support PPIN (Prarit Bhargava) [2215040] - redhat: configs: increase CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE (Audra Mitchell) [2215423] - docs: admin-guide: Add information about intel_pstate active mode (Prarit Bhargava) [2216962] - net/sched: flower: fix possible OOB write in fl_set_geneve_opt() (Davide Caratti) [2214027] {CVE-2023-35788} - scsi: aacraid: Reply queue mapping to CPUs based on IRQ affinity (Tomas Henzl) [2160149] - cifs: missing null pointer check in cifs_mount (Ronnie Sahlberg) [2215018] - cpufreq: intel_pstate: Enable HWP IO boost for all servers (Prarit Bhargava) [2175625] - block: make sure local irq is disabled when calling __blkcg_rstat_flush (Ming Lei) [2208904] - blk-cgroup: Flush stats before releasing blkcg_gq (Ming Lei) [2208904] - scsi: storvsc: Always set no_report_opcodes (Cathy Avery) [2217552] - scsi: storvsc: Don't pass unused PFNs to Hyper-V host (Cathy Avery) [2217552] - scsi: storvsc: Handle BlockSize change in Hyper-V VHD/VHDX file (Cathy Avery) [2217552] - dm thin: fix issue_discard to pass GFP_NOIO to __blkdev_issue_discard (Benjamin Marzinski) [2212240] - dm thin metadata: check fail_io before using data_sm (Benjamin Marzinski) [2215418] - dm: don't lock fs when the map is NULL during suspend or resume (Benjamin Marzinski) [2215418] - redhat/configs: enable CONFIG_MANA_INFINIBAND for RHEL (Kamal Heib) [2188737] - RDMA/mana_ib: Fix a bug when the PF indicates more entries for registering memory on first packet (Kamal Heib) [2188737] - RDMA/mana_ib: Prevent array underflow in mana_ib_create_qp_raw() (Kamal Heib) [2188737] - RDMA/mana: Remove redefinition of basic u64 type (Kamal Heib) [2188737] - RDMA/mana_ib: Add a driver for Microsoft Azure Network Adapter (Kamal Heib) [2188737] - net: mana: Define data structures for allocating doorbell page from GDMA (Kamal Heib) [2188737] - Documentation: net: net.core.txrehash is not specific to listening sockets (Antoine Tenart) [2175716] - net: ipv4: use consistent txhash in TIME_WAIT and SYN_RECV (Antoine Tenart) [2175716] - net: tcp: make the txhash available in TIME_WAIT sockets for IPv4 too (Antoine Tenart) [2175716] - net: ipv6: fix skb hash for some RST packets (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in RST packets (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in SYN_RECV state (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in TIME_WAIT state (Antoine Tenart) [2175716] - txhash: fix sk->sk_txrehash default (Antoine Tenart) [2175716] - socket: Don't use u8 type in uapi socket.h (Antoine Tenart) [2175716] - tcp: Change SYN ACK retransmit behaviour to account for rehash (Antoine Tenart) [2175716] - txhash: Add txrehash sysctl description (Antoine Tenart) [2175716] - txhash: Add socket option to control TX hash rethink behavior (Antoine Tenart) [2175716] - txhash: Make rethinking txhash behavior configurable via sysctl (Antoine Tenart) [2175716] - igc: Fix possible system crash when loading module (Corinna Vinschen) [2153370] - igc: Clean the TX buffer and TX descriptor ring (Corinna Vinschen) [2153370] - igc: Avoid transmit queue timeout for XDP (Corinna Vinschen) [2153370] - igc: read before write to SRRCTL register (Corinna Vinschen) [2153370] - igc: Enable and fix RX hash usage by netstack (Corinna Vinschen) [2153370] - igc: Remove obsolete DMA coalescing code (Corinna Vinschen) [2153370] - igc: fix the validation logic for taprio's gate list (Corinna Vinschen) [2153370] - igc: Add ndo_tx_timeout support (Corinna Vinschen) [2153370] - igc: return an error if the mac type is unknown in igc_ptp_systim_to_hwtstamp() (Corinna Vinschen) [2153370] - igc: Remove redundant pci_enable_pcie_error_reporting() (Corinna Vinschen) [2153370] - igc: Fix PPS delta between two synchronized end-points (Corinna Vinschen) [2153370] - igc: Remove reset adapter task for i226 during disable tsn config (Corinna Vinschen) [2153370] - igc: enable Qbv configuration for 2nd GCL (Corinna Vinschen) [2153370] - igc: remove I226 Qbv BaseTime restriction (Corinna Vinschen) [2153370] - igc: Set Qbv start_time and end_time to end_time if not being configured in GCL (Corinna Vinschen) [2153370] - igc: recalculate Qbv end_time by considering cycle time (Corinna Vinschen) [2153370] - igc: allow BaseTime 0 enrollment for Qbv (Corinna Vinschen) [2153370] - igc: Add checking for basetime less than zero (Corinna Vinschen) [2153370] - igc: Use strict cycles for Qbv scheduling (Corinna Vinschen) [2153370] - igc: Enhance Qbv scheduling by using first flag bit (Corinna Vinschen) [2153370] - r8152: fix the autosuspend doesn't work (Jose Ignacio Tornos Martinez) [2159264] - r8152: move setting r8153b_rx_agg_chg_indicate() (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the poor throughput for 2.5G devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix flow control issue of RTL8156A (Jose Ignacio Tornos Martinez) [2159264] - r8152: Add __GFP_NOWARN to big allocations (Jose Ignacio Tornos Martinez) [2159264] - r8152: reduce the control transfer of rtl8152_get_version() (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove rtl_vendor_mode function (Jose Ignacio Tornos Martinez) [2159264] - r8152: avoid to change cfg for all devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: add vendor/device ID pair for Microsoft Devkit (Jose Ignacio Tornos Martinez) [2159264] - cdc_ether: no need to blacklist any r8152 devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: add USB device driver for config selection (Jose Ignacio Tornos Martinez) [2159264] - net: usb: cdc_ether: add support for Thales Cinterion PLS62-W modem (Jose Ignacio Tornos Martinez) [2159264] - net: usb: cdc_ether: add u-blox 0x1343 composition (Jose Ignacio Tornos Martinez) [2159264] - r8152: Add MAC passthrough support for Lenovo Travel Hub (Jose Ignacio Tornos Martinez) [2159264] - r8152: allow userland to disable multicast (Jose Ignacio Tornos Martinez) [2159264] - r8152: add PID for the Lenovo OneLink+ Dock (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the RX FIFO settings when suspending (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the units of some registers for RTL8156A (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix a WOL issue (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix accessing unset transport header (Jose Ignacio Tornos Martinez) [2159264] - net: usb: r8152: Add in new Devices that are supported for Mac-Passthru (Jose Ignacio Tornos Martinez) [2159264] - cdc_ether: export usbnet_cdc_zte_rx_fixup (Jose Ignacio Tornos Martinez) [2159264] - USB: zaurus: support another broken Zaurus (Jose Ignacio Tornos Martinez) [2159264] - Revert "net: usb: r8152: Add MAC passthrough support for more Lenovo Docks" (Jose Ignacio Tornos Martinez) [2159264] - r8152: sync ocp base (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the force speed doesn't work for RTL8156 (Jose Ignacio Tornos Martinez) [2159264] - net: usb: r8152: Add MAC passthrough support for more Lenovo Docks (Jose Ignacio Tornos Martinez) [2159264] - net: usb: use eth_hw_addr_set() for dev->addr_len cases (Jose Ignacio Tornos Martinez) [2159264] - net: usb: use eth_hw_addr_set() instead of ether_addr_copy() (Jose Ignacio Tornos Martinez) [2159264] - r8152: avoid to resubmit rx immediately (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the maximum number of PLA bp for RTL8153C (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix writing USB_BP2_EN (Jose Ignacio Tornos Martinez) [2159264] - r8152: Fix a deadlock by doubly PM resume (Jose Ignacio Tornos Martinez) [2159264] - r8152: Fix potential PM refcount imbalance (Jose Ignacio Tornos Martinez) [2159264] - r8152: store the information of the pipes (Jose Ignacio Tornos Martinez) [2159264] - r8152: support pauseparam of ethtool_ops (Jose Ignacio Tornos Martinez) [2159264] - r8152: Avoid memcpy() over-reading of ETH_SS_STATS (Jose Ignacio Tornos Martinez) [2159264] - r8152: check the informaton of the device (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove some bit operations (Jose Ignacio Tornos Martinez) [2159264] - r8152: redefine REALTEK_USB_DEVICE macro (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove NCM mode from REALTEK_USB_DEVICE macro (Jose Ignacio Tornos Martinez) [2159264] - r8152: replace return with break for ram code speedup mode timeout (Jose Ignacio Tornos Martinez) [2159264] - r8152: search the configuration of vendor mode (Jose Ignacio Tornos Martinez) [2159264] - r8152: support PHY firmware for RTL8156 series (Jose Ignacio Tornos Martinez) [2159264] - r8152: support new chips (Jose Ignacio Tornos Martinez) [2159264] - r8152: add help function to change mtu (Jose Ignacio Tornos Martinez) [2159264] - r8152: adjust rtl8152_check_firmware function (Jose Ignacio Tornos Martinez) [2159264] - r8152: set inter fram gap time depending on speed (Jose Ignacio Tornos Martinez) [2159264] - r8152: adjust the flow of power cut for RTL8153B (Jose Ignacio Tornos Martinez) [2159264] - treewide: Use fallthrough pseudo-keyword (Jose Ignacio Tornos Martinez) [2159264] - nouveau: fix client work fence deletion race (Jocelyn Falempe) [2160452] - drm/mgag200: Fix gamma lut not initialized. (Jocelyn Falempe) [2160452] - drm/amd/display: Fix hang when skipping modeset (Jocelyn Falempe) [2160452] - drm/amd/display: Lowering min Z8 residency time (Jocelyn Falempe) [2160452] - drm/amd/display: Update minimum stutter residency for DCN314 Z8 (Jocelyn Falempe) [2160452] - drm/amd/display: Add minimum Z8 residency debug option (Jocelyn Falempe) [2160452] - drm/i915: disable sampler indirect state in bindless heap (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add Wa_14017856879 (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add workarounds Wa_14017066071 and Wa_14017654203 (Jocelyn Falempe) [2160452] - drm/i915: Add _PICK_EVEN_2RANGES() (Jocelyn Falempe) [2160452] - drm/amd/display: hpd rx irq not working with eDP interface (Jocelyn Falempe) [2160452] - drm/amd/display: merge dc_link.h into dc.h and dc_types.h (Jocelyn Falempe) [2160452] - drm/amd/pm: avoid potential UBSAN issue on legacy asics (Jocelyn Falempe) [2160452] - drm/amdgpu: disable sdma ecc irq only when sdma RAS is enabled in suspend (Jocelyn Falempe) [2160452] - drm/amdgpu: drop gfx_v11_0_cp_ecc_error_irq_funcs (Jocelyn Falempe) [2160452] - drm/amd/pm: parse pp_handle under appropriate conditions (Jocelyn Falempe) [2160452] - drm/amd/display: Enforce 60us prefetch for 200Mhz DCFCLK modes (Jocelyn Falempe) [2160452] - drm/amdgpu: Fix vram recover doesn't work after whole GPU reset (v2) (Jocelyn Falempe) [2160452] - drm/amdgpu: change gfx 11.0.4 external_id range (Jocelyn Falempe) [2160452] - drm/amdgpu/jpeg: Remove harvest checking for JPEG3 (Jocelyn Falempe) [2160452] - drm/amdgpu/gfx: disable gfx9 cp_ecc_error_irq only when enabling legacy gfx ras (Jocelyn Falempe) [2160452] - drm/amdgpu: fix amdgpu_irq_put call trace in gmc_v11_0_hw_fini (Jocelyn Falempe) [2160452] - drm/amdgpu: fix an amdgpu_irq_put() issue in gmc_v9_0_hw_fini() (Jocelyn Falempe) [2160452] - drm/amdgpu: fix amdgpu_irq_put call trace in gmc_v10_0_hw_fini (Jocelyn Falempe) [2160452] - drm/amd/display: Change default Z8 watermark values (Jocelyn Falempe) [2160452] - drm/amdgpu: drop redundant sched job cleanup when cs is aborted (Jocelyn Falempe) [2160452] - drm/amd/display: fix flickering caused by S/G mode (Jocelyn Falempe) [2160452] - drm/amd/display: fix access hdcp_workqueue assert (Jocelyn Falempe) [2160452] - drm/amd/display: filter out invalid bits in pipe_fuses (Jocelyn Falempe) [2160452] - drm/amd/display: Fix 4to1 MPC black screen with DPP RCO (Jocelyn Falempe) [2160452] - drm/amd/display: Add NULL plane_state check for cursor disable logic (Jocelyn Falempe) [2160452] - drm/panel: otm8009a: Set backlight parent to panel device (Jocelyn Falempe) [2160452] - drm/dsc: fix drm_edp_dsc_sink_output_bpp() DPCD high byte usage (Jocelyn Falempe) [2160452] - drm/i915/dsi: Use unconditional msleep() instead of intel_dsi_msleep() (Jocelyn Falempe) [2160452] - drm/i915: Check pipe source size when using skl+ scalers (Jocelyn Falempe) [2160452] - drm/i915/color: Fix typo for Plane CSC indexes (Jocelyn Falempe) [2160452] - drm/bridge: lt8912b: Fix DSI Video Mode (Jocelyn Falempe) [2160452] - drm/amdgpu: add a missing lock for AMDGPU_SCHED (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add the missing CPU transcoder mask in intel_device_info (Jocelyn Falempe) [2160452] - drm/i915/guc: Actually return an error if GuC version range check fails (Jocelyn Falempe) [2160452] - drm/i915/guc: More debug print updates - UC firmware (Jocelyn Falempe) [2160452] - drm/amd/display: Update bounding box values for DCN321 (Jocelyn Falempe) [2160452] - drm/amd/display: Do not clear GPINT register when releasing DMUB from reset (Jocelyn Falempe) [2160452] - drm/amd/display: Reset OUTBOX0 r/w pointer on DMUB reset (Jocelyn Falempe) [2160452] - drm/amd/display: Fixes for dcn32_clk_mgr implementation (Jocelyn Falempe) [2160452] - drm/amd/display: Return error code on DSC atomic check failure (Jocelyn Falempe) [2160452] - drm/amd/display: Add missing WA and MCLK validation (Jocelyn Falempe) [2160452] - drm/panel: novatek-nt35950: Only unregister DSI1 if it exists (Jocelyn Falempe) [2160452] - drm/panel: novatek-nt35950: Improve error handling (Jocelyn Falempe) [2160452] - drm/i915: Fix memory leaks in i915 selftests (Jocelyn Falempe) [2160452] - drm/i915: Make intel_get_crtc_new_encoder() less oopsy (Jocelyn Falempe) [2160452] - drm/amd/display: Fix potential null dereference (Jocelyn Falempe) [2160452] - drm/ttm/pool: Fix ttm_pool_alloc error path (Jocelyn Falempe) [2160452] - drm/i915/pxp: limit drm-errors or warning on firmware API failures (Jocelyn Falempe) [2160452] - drm/i915/pxp: Invalidate all PXP fw sessions during teardown (Jocelyn Falempe) [2160452] - drm/amd/display/dc/dce60/Makefile: Fix previous attempt to silence known override-init warnings (Jocelyn Falempe) [2160452] - accel: Link to compute accelerator subsystem intro (Jocelyn Falempe) [2160452] - drm/bridge: adv7533: Fix adv7533_mode_valid for adv7533 and adv7535 (Jocelyn Falempe) [2160452] - drm/probe-helper: Cancel previous job before starting new one (Jocelyn Falempe) [2160452] - drm/vgem: add missing mutex_destroy (Jocelyn Falempe) [2160452] - drm/i915/dg2: Drop one PCI ID (Jocelyn Falempe) [2160452] - drm/amd/pm: re-enable the gfx imu when smu resume (Jocelyn Falempe) [2160452] - drm/vmwgfx: Fix Legacy Display Unit atomic drm support (Jocelyn Falempe) [2160452] - drm/fb-helper: set x/yres_virtual in drm_fb_helper_check_var (Jocelyn Falempe) [2160452] - redhat: include new drm tests in mod-internals (Jocelyn Falempe) [2160452] - drm/amd/display: build with std=gnu99 (Jocelyn Falempe) [2160452] - overflow: Introduce overflows_type() and castable_to_type() (Jocelyn Falempe) [2160452] - Revert "driver core: make struct bus_type.uevent() take a const *" (Jocelyn Falempe) [2160452] - Revert "iommu: Add a gfp parameter to iommu_map()" (Jocelyn Falempe) [2160452] - Revert "mm: replace vma->vm_flags direct modifications with modifier calls" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.2..v6.3 (Jocelyn Falempe) [2160452] - redhat: include new drm_kunit_helpers in mod-internals (Jocelyn Falempe) [2160452] - drm/i915: build i915 with std=gnu99 (Jocelyn Falempe) [2160452] - drm/amdgpu: Add missing include for ppc64le (Jocelyn Falempe) [2160452] - drm/fb-helper: Add missing include for s390x (Jocelyn Falempe) [2160452] - drm/edid: Add missing include (Jocelyn Falempe) [2160452] - Revert "drm/i915/gvt: use atomic operations to change the vGPU status" (Jocelyn Falempe) [2160452] - Revert "kunit: Use KUNIT_EXPECT_MEMEQ macro" (Jocelyn Falempe) [2160452] - Revert "treewide: use get_random_u32_inclusive() when possible" (Jocelyn Falempe) [2160452] - Revert "treewide: use get_random_u32_below() instead of deprecated function" (Jocelyn Falempe) [2160452] - Revert "overflow: Introduce overflows_type() and castable_to_type()" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.1..v6.2 (Jocelyn Falempe) [2160452] - kconfig: disable DRM dynamic debug. (Jocelyn Falempe) [2160452] - drm/vkms: build driver with gnu99 (Jocelyn Falempe) [2160452] - Revert "drm: POC drm on dyndbg - use in core, 2 helpers, 3 drivers." (Jocelyn Falempe) [2160452] - Revert "mm: free device private pages have zero refcount" (Jocelyn Falempe) [2160452] - Revert "mm/memory.c: fix race when faulting a device private page" (Jocelyn Falempe) [2160452] - Revert "drm/i915/gvt: simplify vgpu configuration management" (Jocelyn Falempe) [2160452] - Revert "i915: use the VMA iterator" (Jocelyn Falempe) [2160452] - Revert "drm/i915/userptr: restore probe_range behaviour" (Jocelyn Falempe) [2160452] - Revert "dynamic_dname(): drop unused dentry argument" (Jocelyn Falempe) [2160452] - Revert "i2c: Make remove callback return void" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.0..v6.1 (Jocelyn Falempe) [2160452] - Enable A64FX_DIAG config option (Charles Mirabile) [2047817] - NMI workaround for GIC irq controllers (Charles Mirabile) [2047817] - arm64: entry: avoid kprobe recursion (Charles Mirabile) [2047817] - soc: a64fx-diag: disable modular build (Charles Mirabile) [2047817] - soc: fujitsu: Add A64FX diagnostic interrupt driver (Charles Mirabile) [2047817] - irqchip/gic-v3: Fix priority mask handling (Charles Mirabile) [2047817] - irqchip/gic-v3: Refactor ISB + EOIR at ack time (Charles Mirabile) [2047817] - irqchip/gic-v3: Ensure pseudo-NMIs have an ISB between ack and handling (Charles Mirabile) [2047817] - arm64: select TRACE_IRQFLAGS_NMI_SUPPORT (Charles Mirabile) [2047817] - arm64: entry: Save some nops when CONFIG_ARM64_PSEUDO_NMI is not set (Charles Mirabile) [2047817] - irqchip/gic-v3: Fix priority comparison when non-secure priorities are used (Charles Mirabile) [2047817] - arm64: entry: add missing noinstr (Charles Mirabile) [2047817] - arm64: suspend: Use cpuidle context helpers in cpu_suspend() (Charles Mirabile) [2047817] - PSCI: Use cpuidle context helpers in psci_cpu_suspend_enter() (Charles Mirabile) [2047817] - arm64: Convert cpu_do_idle() to using cpuidle context helpers (Charles Mirabile) [2047817] - arm64: Add cpuidle context save/restore helpers (Charles Mirabile) [2047817] - arm64: entry: make NMI entry/exit functions static (Charles Mirabile) [2047817] - arm64: entry: split SDEI entry (Charles Mirabile) [2047817] - arm64: entry: split bad stack entry (Charles Mirabile) [2047817] - arm64: entry: fold el1_inv() into el1h_64_sync_handler() (Charles Mirabile) [2047817] - arm64: entry: handle all vectors with C (Charles Mirabile) [2047817] - arm64: entry: template the entry asm functions (Charles Mirabile) [2047817] - arm64: entry: improve bad_mode() (Charles Mirabile) [2047817] - arm64: entry: move bad_mode() to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: consolidate EL1 exception returns (Charles Mirabile) [2047817] - arm64: entry: organise entry vectors consistently (Charles Mirabile) [2047817] - arm64: entry: organise entry handlers consistently (Charles Mirabile) [2047817] - arm64: entry: convert IRQ+FIQ handlers to C (Charles Mirabile) [2047817] - arm64: entry: add a call_on_irq_stack helper (Charles Mirabile) [2047817] - arm64: entry: move NMI preempt logic to C (Charles Mirabile) [2047817] - arm64: entry: move arm64_preempt_schedule_irq to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: convert SError handlers to C (Charles Mirabile) [2047817] - arm64: entry: unmask IRQ+FIQ after EL0 handling (Charles Mirabile) [2047817] - arm64: remove redundant local_daif_mask() in bad_mode() (Charles Mirabile) [2047817] - arm64: entry: always set GIC_PRIO_PSR_I_SET during entry (Charles Mirabile) [2047817] - arm64: entry: remove test_irqs_unmasked macro (Charles Mirabile) [2047817] - arm64: irq: allow FIQs to be handled (Charles Mirabile) [2047817] - arm64: Always keep DAIF.[IF] in sync (Charles Mirabile) [2047817] - arm64: entry: factor irq triage logic into macros (Charles Mirabile) [2047817] - arm64: irq: rework root IRQ handler registration (Charles Mirabile) [2047817] - arm64: don't use GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - genirq: Allow architectures to override set_handle_irq() fallback (Charles Mirabile) [2047817] - irqchip: Do not blindly select CONFIG_GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - arm64: entry: consolidate Cortex-A76 erratum 1463225 workaround (Charles Mirabile) [2047817] - arm64: entry: remove redundant IRQ flag tracing (Charles Mirabile) [2047817] - arm64: entry: suppress W=1 prototype warnings (Charles Mirabile) [2047817] - arm64: sdei: explicitly simulate PAN/UAO entry (Charles Mirabile) [2047817] - arm64: entry: fix EL1 debug transitions (Charles Mirabile) [2047817] - arm64: entry: fix NMI {user, kernel}->kernel transitions (Charles Mirabile) [2047817] - arm64: entry: fix non-NMI kernel<->kernel transitions (Charles Mirabile) [2047817] - arm64: ptrace: prepare for EL1 irq/rcu tracking (Charles Mirabile) [2047817] - arm64: entry: fix non-NMI user<->kernel transitions (Charles Mirabile) [2047817] - arm64: entry: move el1 irq/nmi logic to C (Charles Mirabile) [2047817] - arm64: entry: prepare ret_to_user for function call (Charles Mirabile) [2047817] - arm64: entry: move enter_from_user_mode to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: mark entry code as noinstr (Charles Mirabile) [2047817] - arm64: mark idle code as noinstr (Charles Mirabile) [2047817] - arm64: add C wrappers for SET_PSTATE_*() (Charles Mirabile) [2047817] - kgdb: Honour the kprobe blocklist when setting breakpoints (Charles Mirabile) [2047817] - genirq: Add stub for set_handle_irq() when !GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - arm64: Improve diagnostics when trapping BRK with FAULT_BRK_IMM (Charles Mirabile) [2047817] - arm64/entry: deduplicate SW PAN entry/exit routines (Charles Mirabile) [2047817] - arm64: Prepare arch_nmi_enter() for recursion (Charles Mirabile) [2047817] - arm64: Make debug exception handlers visible from RCU (Charles Mirabile) [2047817] - irqchip: Remove unneeded select IRQ_DOMAIN (Charles Mirabile) [2047817] - net/mlx5e: TC, Fix using eswitch mapping in nic mode (Amir Tzin) [2166015] - net/mlx5e: Use query_special_contexts cmd only once per mdev (Amir Tzin) [2166015] - net/mlx5e: Move Ethernet driver debugfs to profile init callback (Amir Tzin) [2166015] - net/mlx5e: Do not update SBCM when prio2buffer command is invalid (Amir Tzin) [2166015] - RDMA/mlx5: Use correct device num_ports when modify DC (Amir Tzin) [2166015] - net/mlx5e: Nullify table pointer when failing to create (Amir Tzin) [2166015] - net/mlx5e: Fix error flow in representor failing to add vport rx rule (Amir Tzin) [2166015] - net/mlx5: E-switch, Don't destroy indirect table in split rule (Amir Tzin) [2166015] - net/mlx5: E-switch, Create per vport table based on devlink encap mode (Amir Tzin) [2166015] - net/mlx5e: Don't clone flow post action attributes second time (Amir Tzin) [2166015] - Revert "net/mlx5: Expose vnic diagnostic counters for eswitch managed vports" (Amir Tzin) [2166015] - RDMA/mlx5: Fix flow counter query via DEVX (Amir Tzin) [2166015] - RDMA/mlx5: Check pcie_relaxed_ordering_enabled() in UMR (Amir Tzin) [2166015] - net/mlx5: Fix wrong comment (Amir Tzin) [2166015] - net/mlx5e: Coding style fix, add empty line (Amir Tzin) [2166015] - RDMA/mlx5: Coding style fix reported by checkpatch (Amir Tzin) [2166015] - net/mlx5e: Release the label when replacing existing ct entry (Amir Tzin) [2165914] - net/mlx5: Release tunnel device after tc update skb (Amir Tzin) [2166015] - Revert "net/mlx5: Expose steering dropped packets counter" (Amir Tzin) [2166015] - Revert "net/mlx5e: Don't use termination table when redundant" (Amir Tzin) [2166015] - Revert "net/mlx5: Enable management PF initialization" (Amir Tzin) [2166015] - net/mlx5: E-Switch, Fix an Oops in error handling code (Amir Tzin) [2166015] - net/mlx5: Read the TC mapping of all priorities on ETS query (Amir Tzin) [2166015] - net/mlx5e: Initialize link speed to zero (Amir Tzin) [2166015] - net/mlx5: Fix steering rules cleanup (Amir Tzin) [2166015] - net/mlx5e: Block entering switchdev mode with ns inconsistency (Amir Tzin) [2166015 2166018] - net/mlx5e: Set uplink rep as NETNS_LOCAL (Amir Tzin) [2166015] - IB/mlx5: Add support for 400G_8X lane speed (Amir Tzin) [2166015] - net/mlx5e: TC, Remove error message log print (Amir Tzin) [2166015] - net/mlx5e: TC, fix cloned flow attribute (Amir Tzin) [2166015] - net/mlx5e: TC, fix missing error code (Amir Tzin) [2166015] - net/sched: TC, fix raw counter initialization (Amir Tzin) [2166015] - net/mlx5: Set BREAK_FW_WAIT flag first when removing driver (Amir Tzin) [2166013] - net/mlx5e: Fix cleanup null-ptr deref on encap lock (Amir Tzin) [2166013] - net/mlx5: E-switch, Fix missing set of split_count when forward to ovs internal port (Amir Tzin) [2166013] - net/mlx5: E-switch, Fix wrong usage of source port rewrite in split rules (Amir Tzin) [2166013 2166018] - net/mlx5: Disable eswitch before waiting for VF pages (Amir Tzin) [2166013] - net/mlx5: Fix setting ec_function bit in MANAGE_PAGES (Amir Tzin) [2166013] - net/mlx5e: Don't cache tunnel offloads capability (Amir Tzin) [2166013] - net/mlx5e: Remove hairpin write debugfs files (Amir Tzin) [2166015] - net/mlx5: Remove NULL check before dev_{put, hold} (Amir Tzin) [2166015] - net/mlx5e: TC, Set CT miss to the specific ct action instance (Amir Tzin) [2166015] - net/mlx5e: Rename CHAIN_TO_REG to MAPPED_OBJ_TO_REG (Amir Tzin) [2166015] - net/mlx5: Refactor tc miss handling to a single function (Amir Tzin) [2166015] - net/mlx5: Kconfig: Make tc offload depend on tc skb extension (Amir Tzin) [2166015] - net/sched: Rename user cookie and act cookie (mlx5 hunk only) (Amir Tzin) [2166015] - IB/mlx5: Extend debug control for CC parameters (Amir Tzin) [2166015] - net/mlx5e: Allow offloading of ct 'new' match (Amir Tzin) [2165914 2166015] - net/mlx5e: Implement CT entry update (Amir Tzin) [2165914 2166015] - net: flow_offload: provision conntrack info in ct_metadata(mlx5 hunks only) (Amir Tzin) [2165914 2166015] - net/mlx5e: Fix outdated TLS comment (Amir Tzin) [2166015] - net/mlx5e: Remove unused function mlx5e_sq_xmit_simple (Amir Tzin) [2166015] - net/mlx5: Simplify eq list traversal (Amir Tzin) [2166015] - net/mlx5e: Switch to using napi_build_skb() (Amir Tzin) [2166015] - RDMA/mlx5: Use query_special_contexts for mkeys (Amir Tzin) [2166015] - net/mlx5e: Use query_special_contexts for mkeys (Amir Tzin) [2166015] - net/mlx5: Change define name for 0x100 lkey value (Amir Tzin) [2166015] - net/mlx5: Expose bits for querying special mkeys (Amir Tzin) [2166015] - RDMA/mlx5: Use rdma_umem_for_each_dma_block() (Amir Tzin) [2166015] - net/mlx5e: TC, fix return value check in mlx5e_tc_act_stats_create() (Amir Tzin) [2166015] - net/mlx5e: TC, support per action stats (Amir Tzin) [2166015] - net/mlx5e: TC, map tc action cookie to a hw counter (Amir Tzin) [2166015] - net/mlx5e: TC, store tc action cookies per attr (Amir Tzin) [2166015] - net/mlx5e: TC, add hw counter to branching actions (Amir Tzin) [2166015] - RDMA/mlx5: Track netdev to avoid deadlock during netdev notifier unregister (Amir Tzin) [2166015] - net/mlx5e: Propagate an internal event in case uplink netdev changes (Amir Tzin) [2166015] - net/mlx5e: Fix trap event handling (Amir Tzin) [2166015] - net/mlx5: fw_tracer, Add support for unrecognized string (Amir Tzin) [2166015] - net/mlx5: fw_tracer, Add support for strings DB update event (Amir Tzin) [2166015] - net/mlx5: fw_tracer, allow 0 size string DBs (Amir Tzin) [2166015] - net/mlx5: fw_tracer: Fix debug print (Amir Tzin) [2166015] - net/mlx5: fs, Remove redundant assignment of size (Amir Tzin) [2166015] - net/mlx5: fs_core, Remove redundant variable err (Amir Tzin) [2166015] - net/mlx5: fs, Remove redundant vport_number assignment (Amir Tzin) [2166015] - net/mlx5e: Remove redundant code for handling vlan actions (Amir Tzin) [2166015 2166018] - net/mlx5: fw reset: Skip device ID check if PCI link up failed (Amir Tzin) [2166015] - net/mlx5: Remove redundant health work lock (Amir Tzin) [2166015] - mlx5: reduce stack usage in mlx5_setup_tc (Amir Tzin) [2166015] - net/mlx5e: Trigger NAPI after activating an SQ (Amir Tzin) [2166015] - net/mlx5e: IPoIB, Add support for XDR speed (Amir Tzin) [2166015] - net/mlx5: Lag, Move mpesw related definitions to mpesw.h (Amir Tzin) [2166015] - net/mlx5: Lag, Use flag to check for shared FDB mode (Amir Tzin) [2166015] - net/mlx5: Lag, Remove redundant bool allocation on the stack (Amir Tzin) [2166015] - net/mlx5: Lag, Use mlx5_lag_dev() instead of derefering pointers (Amir Tzin) [2166015] - net/mlx5: Lag, Update multiport eswitch check to log an error (Amir Tzin) [2166015] - net/mlx5: Add firmware support for MTUTC scaled_ppm frequency adjustments (Amir Tzin) [2166015] - net/mlx5: Add hardware extended range support for PTP adjtime and adjphase (Amir Tzin) [2166015] - net/mlx5: Add adjphase function to support hardware-only offset control (Amir Tzin) [2166015] - net/mlx5: Geneve, Fix handling of Geneve object id as error code (Amir Tzin) [2166015] - net/mlx5e: Verify flow_source cap before using it (Amir Tzin) [2166015 2166018] - net/mlx5: ECPF, wait for VF pages only after disabling host PFs (Amir Tzin) [2166015] - mlx5: fix possible ptp queue fifo use-after-free (Amir Tzin) [2166015] - mlx5: fix skb leak while fifo resync and push (Amir Tzin) [2166015] - net/mlx5: Fix memory leak in error flow of port set buffer (Amir Tzin) [2166015] - net/mlx5e: Remove incorrect debugfs_create_dir NULL check in TLS (Amir Tzin) [2166015] - net/mlx5e: Remove incorrect debugfs_create_dir NULL check in hairpin (Amir Tzin) [2166015] - net/mlx5: Enhance debug print in page allocation failure (Amir Tzin) [2166015] - net/mlx5e: kTLS, Improve connection rate by using fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Keep only one bulk of full available DEKs (Amir Tzin) [2166015] - net/mlx5: Add async garbage collector for DEK bulk (Amir Tzin) [2166015] - net/mlx5: Reuse DEKs after executing SYNC_CRYPTO command (Amir Tzin) [2166015] - net/mlx5: Use bulk allocation for fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Add bulk allocation and modify_dek operation (Amir Tzin) [2166015] - net/mlx5: Add support SYNC_CRYPTO command (Amir Tzin) [2166015] - net/mlx5: Add new APIs for fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Refactor the encryption key creation (Amir Tzin) [2166015] - net/mlx5: Add const to the key pointer of encryption key creation (Amir Tzin) [2166015] - net/mlx5: Prepare for fast crypto key update if hardware supports it (Amir Tzin) [2166015] - net/mlx5: Change key type to key purpose (Amir Tzin) [2166015] - net/mlx5: Add IFC bits and enums for crypto key (Amir Tzin) [2166015] - net/mlx5: Add IFC bits for general obj create param (Amir Tzin) [2166015] - net/mlx5: Header file for crypto (Amir Tzin) [2166015] - net/mlx5e: Use read lock for eswitch get callbacks (Amir Tzin) [2166015 2166018] - net/mlx5e: Remove redundant allocation of spec in create indirect fwd group (Amir Tzin) [2165994 2166015] - net/mlx5e: Support Geneve and GRE with VF tunnel offload (Amir Tzin) [2165994 2166015 2166018] - net/mlx5: E-Switch, Fix typo for egress (Amir Tzin) [2166015] - net/mlx5e: Warn when destroying mod hdr hash table that is not empty (Amir Tzin) [2166015] - net/mlx5e: TC, Use common function allocating flow mod hdr or encap mod hdr (Amir Tzin) [2166015] - net/mlx5e: TC, Add tc prefix to attach/detach hdr functions (Amir Tzin) [2166015] - net/mlx5e: TC, Pass flow attr to attach/detach mod hdr functions (Amir Tzin) [2166015] - net/mlx5: E-switch, Remove redundant comment about meta rules (Amir Tzin) [2166015] - net/mlx5: Suppress error logging on UCTX creation (Amir Tzin) [2166015] - net/mlx5e: Suppress Send WQEBB room warning for PAGE_SIZE >= 16KB (Amir Tzin) [2166015] - net/mlx5e: Use kzalloc() in mlx5e_accel_fs_tcp_create() (Amir Tzin) [2166015] - net/mlx5: remove redundant ret variable (Amir Tzin) [2166015] - net/mlx5e: Replace 0-length array with flexible array (Amir Tzin) [2166015] - net/mlx5e: Replace zero-length array with flexible-array member (Amir Tzin) [2166015] - net/mlx5: Prevent high-rate FW commands from populating all slots (Amir Tzin) [2166015] - net/mlx5: Introduce and use opcode getter in command interface (Amir Tzin) [2166015] - net/mlx5: Enable management PF initialization (Amir Tzin) [2166015] - net/mlx5e: Add hairpin debugfs files (Amir Tzin) [2166015] - net/mlx5e: Add flow steering debugfs directory (Amir Tzin) [2166015] - net/mlx5e: Add hairpin params structure (Amir Tzin) [2166015] - net/mlx5e: kTLS, Add debugfs (Amir Tzin) [2166015] - net/mlx5e: Add Ethernet driver debugfs (Amir Tzin) [2166015] - net/mlx5e: Update shared buffer along with device buffer changes (Amir Tzin) [2166015] - net/mlx5e: Add API to query/modify SBPR and SBCM registers (Amir Tzin) [2166015] - net/mlx5: Expose shared buffer registers bits and structs (Amir Tzin) [2166015] - net/mlx5: Serialize module cleanup with reload and remove (Amir Tzin) [2166013] - net/mlx5: fw_tracer, Zero consumer index when reloading the tracer (Amir Tzin) [2166013] - net/mlx5: fw_tracer, Clear load bit when freeing string DBs buffers (Amir Tzin) [2166013] - net/mlx5: Expose SF firmware pages counter (Amir Tzin) [2166013] - net/mlx5: Store page counters in a single array (Amir Tzin) [2166013] - net/mlx5e: IPoIB, Show unknown speed instead of error (Amir Tzin) [2166013] - net/mlx5e: Fix crash unsetting rx-vlan-filter in switchdev mode (Amir Tzin) [2055530 2166013] - net/mlx5: Bridge, fix ageing of peer FDB entries (Amir Tzin) [2166013] - net/mlx5: DR, Fix potential race in dr_rule_create_rule_nic (Amir Tzin) [2166013] - net/mlx5e: Update rx ring hw mtu upon each rx-fcs flag change (Amir Tzin) [2166013] - net/mlx5e: Don't support encap rules with gbp option (Amir Tzin) [2166013] - net/mlx5e: Fix memory leak on updating vport counters (Amir Tzin) [2165677 2166013] - net/mlx5e: TC, Restore pkt rate policing support (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, ignore match level for post meter rules (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Fix 'stack frame size exceeds limit' error in dr_rule (Amir Tzin) [2166013] - net/mlx5: Lag, fix failure to cancel delayed bond work (Amir Tzin) [2166013] - net/mlx5e: Fix RX reporter for XSK RQs (Amir Tzin) [2166013] - net/mlx5: Expose steering dropped packets counter (Amir Tzin) [2166013] - net/mlx5: Refactor and expand rep vport stat group (Amir Tzin) [2165677 2166013] - net/mlx5e: TC, add support for meter mtu offload (Amir Tzin) [2165893 2166013 2166018] - net/mlx5e: meter, add mtu post meter tables (Amir Tzin) [2165893 2166013] - net/mlx5e: meter, refactor to allow multiple post meter tables (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add support for range match action (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add function that tells if STE miss addr has been initialized (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Some refactoring of miss address handling (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Manage definers with refcounts (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Handle FT action in a separate function (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Rework is_fw_table function (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add functions to create/destroy MATCH_DEFINER general object (Amir Tzin) [2165893 2166013] - net/mlx5: fs, add match on ranges API (Amir Tzin) [2165893 2166013] - net/mlx5: mlx5_ifc updates for MATCH_DEFINER general object (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, allow meter jump control action (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, init post meter rules with branching attributes (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, rename post_meter actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, initialize branching action with target attr (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, initialize branch flow attributes (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, set control params for branching actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, validate action list per attribute (Amir Tzin) [2165893 2166013] - net/mlx5e: Adjust function actions_match_supported() to upstream. (Amir Tzin) [2166006] - net/mlx5e: TC, add terminating actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, reuse flow attribute post parser processing (Amir Tzin) [2165893 2166013] - net/mlx5: fs, assert null dest pointer when dest_num is 0 (Amir Tzin) [2165893 2166013] - net/mlx5e: E-Switch, handle flow attribute with no destinations (Amir Tzin) [2165893 2166013 2166018] - RDMA/mlx5: Remove not-used IB_FLOW_SPEC_IB define (Amir Tzin) [2166013] - RDMA/mlx5: no need to kfree NULL pointer (Amir Tzin) [2166013] - net/mlx5e: TC, Add offload support for trap with additional actions (Amir Tzin) [2166013 2166018] - net/mlx5e: Do early return when setup vports dests for slow path flow (Amir Tzin) [2166013 2166018] - net/mlx5e: Support devlink reload of IPsec core (Amir Tzin) [2166013] - net/mlx5: Remove redundant check (Amir Tzin) [2166013] - net/mlx5e: Don't use termination table when redundant (Amir Tzin) [2166013] - net/mlx5: Remove unused ctx variables (Amir Tzin) [2166013] - net/mlx5e: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Amir Tzin) [2166013] - net/mlx5e: Remove unneeded io-mapping.h #include (Amir Tzin) [2166013] - net/mlx5e: CT, optimize pre_ct table lookup (Amir Tzin) [2166013] - net/mlx5e: kTLS, Use a single async context object per a callback bulk (Amir Tzin) [2166013] - net/mlx5e: kTLS, Remove unnecessary per-callback completion (Amir Tzin) [2166013] - net/mlx5e: kTLS, Remove unused work field (Amir Tzin) [2166013] - net/mlx5e: TC, Remove redundant WARN_ON() (Amir Tzin) [2166013] - net/mlx5e: Add error flow when failing update_rx (Amir Tzin) [2166013] - net/mlx5e: Move params kernel log print to probe function (Amir Tzin) [2166013] - net/mlx5e: Support enhanced CQE compression (Amir Tzin) [2166013] - net/mlx5e: Use clamp operation instead of open coding it (Amir Tzin) [2166013] - net/mlx5e: remove unused list in arfs (Amir Tzin) [2166013] - net/mlx5: Expose vhca_id to debugfs (Amir Tzin) [2166013] - net/mlx5: Unregister traps on driver unload flow (Amir Tzin) [2166013] - net/mlx5: Fix spelling mistake "destoy" -> "destroy" (Amir Tzin) [2166013] - net/mlx5: Bridge, Use debug instead of warn if entry doesn't exists (Amir Tzin) [2166013] - RDMA/mlx5: Change debug log level for remote access error syndromes (Amir Tzin) [2166013] - ptp: mlx5: convert to .adjfine and adjust_by_scaled_ppm (Amir Tzin) [2166013] - net/mlx5: DR, Remove the buddy used_list (Amir Tzin) [2166013] - net/mlx5: DR, Keep track of hot ICM chunks in an array instead of list (Amir Tzin) [2166013] - net/mlx5: DR, Lower sync threshold for ICM hot memory (Amir Tzin) [2166013] - net/mlx5: DR, Allocate htbl from its own slab allocator (Amir Tzin) [2166013] - net/mlx5: DR, Allocate icm_chunks from their own slab allocator (Amir Tzin) [2166013] - net/mlx5: DR, Manage STE send info objects in pool (Amir Tzin) [2166013] - net/mlx5: DR, In rehash write the line in the entry immediately (Amir Tzin) [2166013] - net/mlx5: DR, Handle domain memory resources init/uninit separately (Amir Tzin) [2166013] - net/mlx5: DR, Initialize chunk's ste_arrays at chunk creation (Amir Tzin) [2166013] - net/mlx5: DR, For short chains of STEs, avoid allocating ste_arr dynamically (Amir Tzin) [2166013] - net/mlx5: DR, Remove unneeded argument from dr_icm_chunk_destroy (Amir Tzin) [2166013] - net/mlx5: DR, Check device state when polling CQ (Amir Tzin) [2166013] - net/mlx5: DR, In destroy flow, free resources even if FW command failed (Amir Tzin) [2166013] - net/mlx5: Add support for NPPS with real time mode (Amir Tzin) [2166006] - net/mlx5: Expose NPPS related registers (Amir Tzin) [2166006] - net/mlx5e: Use kvfree() in mlx5e_accel_fs_tcp_create() (Amir Tzin) [2166006] - net/mlx5e: Remove leftovers from old XSK queues enumeration (Amir Tzin) [2166006] - net/mlx5: Lag, avoid lockdep warnings (Amir Tzin) [2166006] - net/mlx5: Update fw fatal reporter state on PCI handlers successful recover (Amir Tzin) [2166006] - net/mlx5: Make ASO poll CQ usable in atomic context (Amir Tzin) [2166006] - net/mlx5: E-Switch, Return EBUSY if can't get mode lock (Amir Tzin) [2166006] - net/mlx5: E-switch, Don't update group if qos is not enabled (Amir Tzin) [2166006] - net/mlx5: E-Switch, Allow offloading fwd dest flow table with vport (Amir Tzin) [2166006 2166018] - net/mlx5: Set default grace period based on function type (Amir Tzin) [2166006] - net/mlx5: Start health poll at earlier stage of driver load (Amir Tzin) [2166006] - net/mlx5e: Expose rx_oversize_pkts_buffer counter (Amir Tzin) [2166006] - net/mlx5: Remove from FPGA IFC file not-needed definitions (Amir Tzin) [2166006] - net/mlx5: Remove unused structs (Amir Tzin) [2166006] - net/mlx5: Remove unused functions (Amir Tzin) [2166006] - net/mlx5: detect and enable bypass port select flow table (Amir Tzin) [2166006] - net/mlx5: Lag, enable hash mode by default for all NICs (Amir Tzin) [2166006] - net/mlx5: Lag, set active ports if support bypass port select flow table (Amir Tzin) [2166006] - RDMA/mlx5: Don't set tx affinity when lag is in hash mode (Amir Tzin) [2166006] - net/mlx5: add IFC bits for bypassing port select flow table (Amir Tzin) [2166006] - RDMA/mlx5: Move function mlx5_core_query_ib_ppcnt() to mlx5_ib (Amir Tzin) [2166006] - IB/mlx5: Support querying eswitch functions from DEVX (Amir Tzin) [2166006] - net: ethernet: move from strlcpy with unused retval to strscpy (mlx5 hunks only) (Amir Tzin) [2166006] - net/mlx5e: Do not use err uninitialized in mlx5e_rep_add_meta_tunnel_rule() (Amir Tzin) [2166006] - IB/mlx5: Remove duplicate header inclusion related to ODP (Amir Tzin) [2166006] - net/mlx5: TC, Add support for SF tunnel offload (Amir Tzin) [2166006] - net/mlx5: E-Switch, Move send to vport meta rule creation (Amir Tzin) [2166006 2166018] - net/mlx5: E-Switch, Split creating fdb tables into smaller chunks (Amir Tzin) [2166006 2166018] - net/mlx5: E-Switch, Add default drop rule for unmatched packets (Amir Tzin) [2166006 2166018] - net/mlx5: Adjust function mlx5_eswitch_inline_mode_get() location (Amir Tzin) [2166006] - net/mlx5e: Completely eliminate priv from fs.h (Amir Tzin) [2166006] - net/mlx5e: Make all ttc functions of en_fs get fs struct as argument (Amir Tzin) [2166006] - net/mlx5e: Make flow steering arfs independent of priv (Amir Tzin) [2166006] - net/mlx5e: Introduce flow steering debug macros (Amir Tzin) [2166006] - net/mlx5e: Separate ethtool_steering from fs.h and make private (Amir Tzin) [2166006] - net/mlx5e: Directly get flow_steering struct as input when init/cleanup ethtool steering (Amir Tzin) [2166006] - Revert "[netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup" (Amir Tzin) [2166006] - net/mlx5e: Convert ethtool_steering member of flow_steering struct to pointer (Amir Tzin) [2166006] - net/mlx5e: Drop priv argument of ptp function in en_fs (Amir Tzin) [2166006] - net/mlx5e: Decouple fs_tcp from en.h (Amir Tzin) [2166006] - net/mlx5e: Decouple fs_tt_redirect from en.h (Amir Tzin) [2166006] - net/mlx5e: Introduce flow steering API (Amir Tzin) [2166006] - IB/mlx5: Call io_stop_wc() after writing to WC MMIO (Amir Tzin) [2166006]- mm: page_counter: mitigate consequences of a page_counter underflow (Ty Berry) [2196726] - ceph: fix decoding of client session messages flags (Xiubo Li) [2213062] - net: stmmac: propagate feature flags to vlan (Corinna Vinschen) [2174701] - KVM: Avoid illegal stage2 mapping on invalid memory slot (Gavin Shan) [2190376] - perf/x86/rapl: Add support for Intel Emerald Rapids (Michael Petlan) [2165766] - s390/dasd: Use correct lock while counting channel queue length (Tobias Huschle) [2215889] - inotify: show inotify mask flags in proc fdinfo (Andrey Albershteyn) [2163455] - scsi: scsi_transport_fc: Add an additional flag to fc_host_fpin_rcv() (Ewan D. Milne) [2169276] - perf bench: Fix numa bench to fix usage of affinity for machines with #CPUs > 1K (Michael Petlan) [2134284] - perf bench: Fix numa testcase to check if CPU used to bind task is online (Michael Petlan) [2134284] - powerpc/64s: Make POWER10 and later use pause_short in cpu_relax loops (avchouha) [2188343] - powerpc: add ISA v3.0 / v3.1 wait opcode macro (avchouha) [2188343] - scsi: lpfc: Account for fabric domain ctlr device loss recovery (Dick Kennedy) [2213027] - scsi: lpfc: Clear NLP_IN_DEV_LOSS flag if already in rediscovery (Dick Kennedy) [2213027] - scsi: lpfc: Fix use-after-free rport memory access in lpfc_register_remote_port() (Dick Kennedy) [2213027] - PCI: hv: Add a per-bus mutex state_lock (Vitaly Kuznetsov) [2184863] - Revert "PCI: hv: Fix a timing issue which causes kdump to fail occasionally" (Vitaly Kuznetsov) [2184863] - PCI: hv: Remove the useless hv_pcichild_state from struct hv_pci_dev (Vitaly Kuznetsov) [2184863] - PCI: hv: Fix a race condition in hv_irq_unmask() that can cause panic (Vitaly Kuznetsov) [2184863] - PCI: hv: Fix a race condition bug in hv_pci_query_relations() (Vitaly Kuznetsov) [2184863] - RHEL-only: KVM: arm64: Fixes comments (Shaoqin Huang) [2202988] - KVM: arm64: Fix buffer overflow in kvm_arm_set_fw_reg() (Shaoqin Huang) [2202988] - KVM: selftests: arm64: Fix pte encode/decode for PA bits > 48 (Shaoqin Huang) [2202988] - KVM: arm64: selftests: Use FIELD_GET() to extract ID register fields (Shaoqin Huang) [2202988] - tools: Copy bitfield.h from the kernel sources (Shaoqin Huang) [2202988] - x86/platform/uv: Update UV[23] platform code for SNC (Frank Ramsay) [2163467] - x86/platform/uv: Remove remaining BUG_ON() and BUG() calls (Frank Ramsay) [2163467] - x86/platform/uv: UV support for sub-NUMA clustering (Frank Ramsay) [2163467] - x86: uv: uv_hub.h: Delete duplicated word (Frank Ramsay) [2163467] - x86/platform/uv: Helper functions for allocating and freeing conversion tables (Frank Ramsay) [2163467] - x86/platform/uv: When searching for minimums, start at INT_MAX not 99999 (Frank Ramsay) [2163467] - x86/platform/uv: Fix printed information in calc_mmioh_map (Frank Ramsay) [2163467] - x86/platform/uv: Introduce helper function uv_pnode_to_socket. (Frank Ramsay) [2163467] - x86/platform/uv: Add platform resolving #defines for misc GAM_MMIOH_REDIRECT* (Frank Ramsay) [2163467] - IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors (Izabela Bakollari) [2170629] - IB/hfi1: Fix math bugs in hfi1_can_pin_pages() (Izabela Bakollari) [2170629] - IB/hfi1: Restore allocated resources on failed copyout (Izabela Bakollari) [2170629] - IB/hfi1: Use dma_mmap_coherent for matching buffers (Izabela Bakollari) [2170629] - IB/hfi1: Update RMT size calculation (Izabela Bakollari) [2170629] - IB/hfi1: Split IB counter allocation (Izabela Bakollari) [2170629] - IB/hfi1: Improve TID validity checking (Izabela Bakollari) [2170629] - IB/hfi1: Consolidate the creation of user TIDs (Izabela Bakollari) [2170629] - IB/hfi1: Assign npages earlier (Izabela Bakollari) [2170629] - IB/hfi1: Fix expected receive setup error exit issues (Izabela Bakollari) [2170629] - IB/hfi1: Reserve user expected TIDs (Izabela Bakollari) [2170629] - IB/hfi1: Reject a zero-length user expected buffer (Izabela Bakollari) [2170629] - RDMA/hfi1: Fix doc for hfi1_free_ctxt (Izabela Bakollari) [2170629] - RDMA/hfi1: use sysfs_emit() to instead of scnprintf() (Izabela Bakollari) [2170629] - RDMA/hfi1: Fix error return code in parse_platform_config() (Izabela Bakollari) [2170629] - IB/hfi1: Switch to netif_napi_add() (Izabela Bakollari) [2170629] - RDMA/hfi: Decrease PCI device reference count in error path (Izabela Bakollari) [2170629] - RDMA/hfi1: don't pass bogus GFP_ flags to dma_alloc_coherent (Izabela Bakollari) [2170629] - IB/hfi1: Replace 1-element array with singleton (Izabela Bakollari) [2170629] - RDMA/opa_vnic: fix spelling typo in comment (Izabela Bakollari) [2170629] - IB/hfi1: Use skb_put_data() instead of skb_put/memcpy pair (Izabela Bakollari) [2170629] - IB/hfi1: remove rc_only_opcode and uc_only_opcode declarations (Izabela Bakollari) [2170629] - RDMA/hfi1: fix repeated words in comments (Izabela Bakollari) [2170629] - RDMA/hfi1: Remove the unneeded result variable (Izabela Bakollari) [2170629] - IB: move from strlcpy with unused retval to strscpy (Izabela Bakollari) [2170629] - perf intel-pt: Add documentation for Event Trace and TNT disable (Michael Petlan) [2154066] - perf scripts python: export-to-postgresql.py: Export all sample flags (Michael Petlan) [2154066] - perf scripts python: export-to-sqlite.py: Export all sample flags (Michael Petlan) [2154066] - perf scripting python: Add all sample flags to DB export (Michael Petlan) [2154066] - perf scripts python: intel-pt-events.py: Add Event Trace (Michael Petlan) [2154066] - perf script: Display new D (Intr Disabled) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf script: Display Intel PT iflag synthesized event (Michael Petlan) [2154066] - perf script: Display Intel PT CFE (Control Flow Event) / EVD (Event Data) synthesized event (Michael Petlan) [2154066] - perf intel-pt: Force 'quick' mode when TNT (Taken/Not-Taken packet) is disabled (Michael Petlan) [2154066] - perf intel-pt: Synthesize new D (Intr Disabled) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf intel-pt: Synthesize iflag event (Michael Petlan) [2154066] - perf intel-pt: Synthesize CFE (Control Flow Event) / EVD (Event Data) event (Michael Petlan) [2154066] - perf intel-pt: Record Event Trace capability flag (Michael Petlan) [2154066] - perf auxtrace: Add itrace option "I" (Michael Petlan) [2154066] - perf tools: Define new D (Intr Disable) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf tools: Define Intel PT iflag synthesized event (Michael Petlan) [2154066] - perf tools: Define Intel PT CFE (Control Flow Event) / EVD (Event Data) event (Michael Petlan) [2154066] - perf intel-pt: decoder: Add MODE.Exec IFLAG processing (Michael Petlan) [2154066] - perf intel-pt: decoder: Add CFE (Control Flow Event) and EVD (Event Data) processing (Michael Petlan) [2154066] - perf intel-pt: decoder: Factor out clearing of FUP (Flow Update) event variables (Michael Petlan) [2154066] - perf intel-pt: Fix error timestamp setting on the decoder error path (Michael Petlan) [2154066] - perf intel-pt: Fix missing 'instruction' events with 'q' option (Michael Petlan) [2154066] - perf intel-pt: Fix next 'err' value, walking trace (Michael Petlan) [2154066] - perf intel-pt: Fix state setting when receiving overflow (OVF) packet (Michael Petlan) [2154066] - perf intel-pt: Fix intel_pt_fup_event() assumptions about setting state type (Michael Petlan) [2154066] - perf intel-pt: Fix sync state when a PSB (synchronization) packet is found (Michael Petlan) [2154066] - perf intel-pt: Fix some PGE (packet generation enable/control flow packets) usage (Michael Petlan) [2154066] - perf intel-pt: decoder: Add config bit definitions (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Add MODE.Exec IFLAG bit (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Add CFE and EVD packets (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Remove misplaced linebreak (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder-test: Fix scope of test_data (Michael Petlan) [2154066] - perf/x86/intel/pt: Add a capability and config bit for disabling TNTs (Michael Petlan) [2154066] - perf/x86/intel/pt: Add a capability and config bit for event tracing (Michael Petlan) [2154068] - container_of: Update header inclusions (Desnes Nunes) [2196368] - media: netup_unidvb: fix irq init by register it at the end of probe (Desnes Nunes) [2196368] - media: dvb-usb: dw2102: fix uninit-value in su3000_read_mac_address (Desnes Nunes) [2196368] - media: dvb-usb: digitv: fix null-ptr-deref in digitv_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb-v2: rtl28xxu: fix null-ptr-deref in rtl28xxu_i2c_xfer (Desnes Nunes) [2196368] - media: dvb-usb-v2: ce6230: fix null-ptr-deref in ce6230_i2c_master_xfer() (Desnes Nunes) [2196368] - media: dvb-usb-v2: ec168: fix null-ptr-deref in ec168_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb: az6027: fix three null-ptr-deref in az6027_i2c_xfer() (Desnes Nunes) [2196368] - Revert "usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS" (Desnes Nunes) [2196368] - usb: typec: Don't try to register component master without components (Desnes Nunes) [2196368] - usb: typec: Only attempt to link USB ports if there is fwnode (Desnes Nunes) [2196368] - usb: core: Unregister device on component_add() failure (Desnes Nunes) [2196368] - usb: core: add quirk for Alcor Link AK9563 smartcard reader (Desnes Nunes) [2196368] - USB: new quirk for Dell Gen 2 devices (Desnes Nunes) [2196368] - USB: quirks: add STRING quirk for VCOM device (Desnes Nunes) [2196368] - USB: quirks: add a Realtek card reader (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Fix probe pin assign check (Desnes Nunes) [2196368] - usb: typec: ucsi: Don't attempt to resume the ports before they exist (Desnes Nunes) [2196368] - USB: misc: iowarrior: fix up header size for USB_DEVICE_ID_CODEMERCS_IOW100 (Desnes Nunes) [2196368] - usb: host: ehci-fsl: Fix module alias (Desnes Nunes) [2196368] - usb: core: hub: disable autosuspend for TI TUSB8041 (Desnes Nunes) [2196368] - USB: fix misleading usb_set_intfdata() kernel doc (Desnes Nunes) [2196368] - usb: typec: tcpm: Fix altmode re-registration causes sysfs create fail (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Use proper macro for pin assignment check (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Fix pin assignment calculation (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Add pin assignment helper (Desnes Nunes) [2196368] - usb: ucsi: Ensure connector delayed work items are flushed (Desnes Nunes) [2196368] - xhci: Detect lpm incapable xHC USB3 roothub ports from ACPI tables (Desnes Nunes) [2196368] - usb: acpi: add helper to check port lpm capability using acpi _DSM (Desnes Nunes) [2196368] - xhci: Add a flag to disable USB3 lpm on a xhci root port level. (Desnes Nunes) [2196368] - xhci: Add update_hub_device override for PCI xHCI hosts (Desnes Nunes) [2196368] - xhci: Fix null pointer dereference when host dies (Desnes Nunes) [2196368] - usb: xhci: Check endpoint is valid before dereferencing it (Desnes Nunes) [2196368] - xhci-pci: set the dma max_seg_size (Desnes Nunes) [2196368] - usb-storage: apply IGNORE_UAS only for HIKSEMI MD202 on RTL9210 (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05CN modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05CN (SG) modem (Desnes Nunes) [2196368] - USB: serial: cp210x: add SCALANCE LPE-9000 device id (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EC200U modem (Desnes Nunes) [2196368] - USB: serial: qcserial: add EM9191 QDL support (Desnes Nunes) [2196368] - USB: serial: option: add prod. id for Quectel EG91 (Desnes Nunes) [2196368] - USB: serial: option: add Telit LE910Cx composition 0x1204 (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (RS) modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (GR) modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (CS) modem (Desnes Nunes) [2196368] - thunderbolt: Disable XDomain lane 1 only in software connection manager (Desnes Nunes) [2196368] - thunderbolt: Use correct function to calculate maximum USB3 link rate (Desnes Nunes) [2196368] - thunderbolt: Do not call PM runtime functions in tb_retimer_scan() (Desnes Nunes) [2196368] - Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout" (Desnes Nunes) [2196368] - thunderbolt: Do not report errors if on-board retimers are found (Desnes Nunes) [2196368] - treewide: Convert del_timer*() to timer_shutdown*() (Desnes Nunes) [2196368] - USB: core: export usb_cache_string() (Desnes Nunes) [2196368] - usb: ulpi: defer ulpi_register on ulpi_read_id timeout (Desnes Nunes) [2196368] - usb: storage: Add check for kcalloc (Desnes Nunes) [2196368] - USB: sisusbvga: use module_usb_driver() (Desnes Nunes) [2196368] - USB: sisusbvga: rename sisusb.c to sisusbvga.c (Desnes Nunes) [2196368] - USB: sisusbvga: remove console support (Desnes Nunes) [2196368] - media: Switch to use dev_err_probe() helper (Desnes Nunes) [2196368] - media: uvcvideo: Fix memory leak in uvc_gpio_parse (Desnes Nunes) [2196368] - media: usb: pwc-uncompress: Use flex array destination for memcpy() (Desnes Nunes) [2196368] - media: usb: pwc-uncompress: Use struct_size() helper in pwc_decompress() (Desnes Nunes) [2196368] - firmware_loader: fix up to_fw_sysfs() to preserve const (Desnes Nunes) [2196368] - usb.h: take advantage of container_of_const() (Desnes Nunes) [2196368] - device.h: move kobj_to_dev() to use container_of_const() (Desnes Nunes) [2196368] - container_of: add container_of_const() that preserves const-ness of the pointer (Desnes Nunes) [2196368] - driver core: allow kobj_to_dev() to take a const pointer (Desnes Nunes) [2196368] - container_of: remove container_of_safe() (Desnes Nunes) [2196368] - linux/container_of.h: switch to static_assert (Desnes Nunes) [2196368] - media: dvb-usb: m920x: make read-only arrays static const (Desnes Nunes) [2196368] - net: thunderbolt: Use bitwise types in the struct thunderbolt_ip_frame_header (Desnes Nunes) [2196368] - net: thunderbolt: Switch from __maybe_unused to pm_sleep_ptr() etc (Desnes Nunes) [2196368] - USB: serial: f81534: fix division by zero on line-speed change (Desnes Nunes) [2196368] - xhci: remove unused stream_id parameter from xhci_handle_halted_endpoint() (Desnes Nunes) [2196368] - xhci: Prevent infinite loop in transaction errors recovery for streams (Desnes Nunes) [2196368] - xhci: disable U3 suspended ports in S4 hibernate poweroff_late stage (Desnes Nunes) [2196368] - USB: hcd-pci: Fully suspend across freeze/thaw cycle (Desnes Nunes) [2196368] - USB: core: Disable remote wakeup for freeze/quiesce (Desnes Nunes) [2196368] - xhci: export two xhci_hub functions for xhci-pci module usage (Desnes Nunes) [2196368] - xhci: Apply XHCI_RESET_TO_DEFAULT quirk to ADL-N (Desnes Nunes) [2196368] - xhci: print warning when HCE was set (Desnes Nunes) [2196368] - Revert "xhci: Convert to use list_count()" (Desnes Nunes) [2196368] - xhci: Convert to use list_count() (Desnes Nunes) [2196368] - usb: typec: Add partner PD object wrapper (Desnes Nunes) [2196368] - usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq (Desnes Nunes) [2196368] - usb: add usb_set_intfdata() documentation (Desnes Nunes) [2196368] - usb: host: fix a typo in ehci.h (Desnes Nunes) [2196368] - usb: core: hcd: Fix return value check in usb_hcd_setup_local_mem() (Desnes Nunes) [2196368] - usb: typec: ucsi: Resume in separate work (Desnes Nunes) [2196368] - usb: roles: fix of node refcount leak in usb_role_switch_is_parent() (Desnes Nunes) [2196368] - net: thunderbolt: Use kmap_local_page() instead of kmap_atomic() (Desnes Nunes) [2196368] - media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb: dib0700_devices: Remove unused struct dibx090p_adc (Desnes Nunes) [2196368] - media: dib0700: remove orphan dvb_usb_dib0700_ir_proto declaration (Desnes Nunes) [2196368] - media: dvb-usb: fix memory leak in dvb_usb_adapter_init() (Desnes Nunes) [2196368] - media: dvb-core: Enhance shared multi-frontend support (Desnes Nunes) [2196368] - media: docs: fix minor typos (Desnes Nunes) [2196368] - media: dvb-frontends: a8293: fix LNB powerup failure in PCTV 461e (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: drop line-status helper (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: simplify line-status handling (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: clean up line-status handling (Desnes Nunes) [2196368] - USB: serial: cp210x: add support for B0 hangup (Desnes Nunes) [2196368] - USB: serial: cp210x: add Kamstrup RF sniffer PIDs (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel RM520N (Desnes Nunes) [2196368] - USB: serial: ch341: fix lost character on LCR updates (Desnes Nunes) [2196368] - USB: serial: ch314: use usb_control_msg_recv() (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV32-WA/WB RmNet mode (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV31 with new baseline (Desnes Nunes) [2196368] - USB: serial: io_ti: add Agilent E5805A support (Desnes Nunes) [2196368] - USB: serial: whiteheat: fix heap overflow in WHITEHEAT_GET_DTR_RTS (Desnes Nunes) [2196368] - USB: serial: cp210x: add PIDs for Kamstrup USB Meter Reader (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV32-WA/MV32-WB (Desnes Nunes) [2196368] - USB: serial: option: add Telit 0x1057, 0x1058, 0x1075 compositions (Desnes Nunes) [2196368] - USB: serial: option: add Telit FN990 compositions (Desnes Nunes) [2196368] - USB: serial: cp210x: add ID for GW Instek GDM-834x Digital Multimeter (Desnes Nunes) [2196368] - USB: serial: cp210x: add part-number debug printk (Desnes Nunes) [2196368] - USB: serial: option: add Telit LN920 compositions (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM060K modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel RM500K module support (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EC200S-CN module support (Desnes Nunes) [2196368] - USB: serial: pl2303: add support for more HXN (G) types (Desnes Nunes) [2196368] - USB: serial: option: add Telit LE910Cx 0x1250 composition (Desnes Nunes) [2196368] - usb: typec: tipd: Set mode of operation for USB Type-C connector (Desnes Nunes) [2196368] - usb: typec: tipd: Move tps6598x_disconnect error path to its own label (Desnes Nunes) [2196368] - usb: typec: tipd: Fix typec_unregister_port error paths (Desnes Nunes) [2196368] - usb: typec: tipd: Only update power status on IRQ (Desnes Nunes) [2196368] - usb: typec: tipd: Forward plug orientation to typec subsystem (Desnes Nunes) [2196368] - tps6598x: clear int mask on probe failure (Desnes Nunes) [2196368] - usb: typec: tipd: Fix initialization sequence for cd321x (Desnes Nunes) [2196368] - usb: typec: tipd: Fix typo in cd321x_switch_power_state (Desnes Nunes) [2196368] - usb: typec: tipd: Enable event interrupts by default (Desnes Nunes) [2196368] - usb: typec: tipd: Remove FIXME about testing with I2C_FUNC_I2C (Desnes Nunes) [2196368] - usb: typec: tipd: Switch CD321X power state to S0 (Desnes Nunes) [2196368] - usb: typec: tipd: Add support for Apple CD321X (Desnes Nunes) [2196368] - usb: typec: tipd: Add short-circuit for no irqs (Desnes Nunes) [2196368] - usb: typec: tipd: Split interrupt handler (Desnes Nunes) [2196368] - dt-bindings: usb: tps6598x: Add Apple CD321x compatible (Desnes Nunes) [2196368] - dt-bindings: usb: Add TI tps6598x device tree binding documentation (Desnes Nunes) [2196368] - usb: typec: tipd: Remove WARN_ON in tps6598x_block_read (Desnes Nunes) [2196368] - usb: typec: tipd: Add an additional overflow check (Desnes Nunes) [2196368] - usb: typec: tipd: Don't read/write more bytes than required (Desnes Nunes) [2196368] - usb: typec: tipd: Fix spurious fwnode_handle_put in error path (Desnes Nunes) [2196368] - usb: typec: tipd: Cleanup resources if devm_tps6598_psy_register fails (Desnes Nunes) [2196368] - usb: host: xhci-mtk: omit shared hcd if either root hub has no ports (Desnes Nunes) [2196368] - usb: xhci-mtk: enable wake-up interrupt after runtime_suspend called (Desnes Nunes) [2196368] - usb: typec: tcpci: fix of node refcount leak in tcpci_register_port() (Desnes Nunes) [2196368] - usb: typec: Check for ops->exit instead of ops->enter in altmode_exit (Desnes Nunes) [2196368] - usb: ftdi-elan: remove variable l (Desnes Nunes) [2196368] - Documentation: USB: correct possessive "its" usage (Desnes Nunes) [2196368] - usb: Check !irq instead of irq == NO_IRQ (Desnes Nunes) [2196368] - tools: usb: ffs-aio-example: Fix build error with aarch64-*-gnu-gcc toolchain(s) (Desnes Nunes) [2196368] - usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [2196368] - usb: ehci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [2196368] - dt-bindings: usb: usb-drd: Describe default dual-role mode (Desnes Nunes) [2196368] - dt-bindings: usb: xhci: Add Broadcom STB v2 compatible device (Desnes Nunes) [2196368] - dt-bindings: usb: Convert xHCI bindings to DT schema (Desnes Nunes) [2196368] - usb: host: Add ability to build new Broadcom STB USB drivers (Desnes Nunes) [2196368] - dt-bindings: Add Broadcom STB USB support (Desnes Nunes) [2196368] - dt-bindings: usb: Add generic "usb-phy" property (Desnes Nunes) [2196368] - dt-bindings: usb: usb-hcd: Add "tpl-support" property (Desnes Nunes) [2196368] - dt-bindings: usb: Add "ulpi/serial/hsic" PHY types (Desnes Nunes) [2196368] - dt-bindings: usb: usb-drd: Add "otg-rev" property constraints (Desnes Nunes) [2196368] - dt-bindings: usb: Convert generic USB properties to DT schemas (Desnes Nunes) [2196368] - dt-bindings: usb: mtu3: add properties about USB Role Switch (Desnes Nunes) [2196368] - dt-bindings: usb: add binding for USB GPIO based connection detection driver (Desnes Nunes) [2196368] - dt-bindings: connector: add optional properties for Type-B (Desnes Nunes) [2196368] - dt-bindings: connector: Add self-powered property (Desnes Nunes) [2196368] - dt-bindings: usb: generic: Add role-switch-default-mode binding (Desnes Nunes) [2196368] - dt-binding: usb: add usb-role-switch property (Desnes Nunes) [2196368] - dt-binding: usb: add "super-speed-plus" (Desnes Nunes) [2196368] - dt-bindings: usb: usb-hcd: Detach generic USB controller properties (Desnes Nunes) [2196368] - dt-bindings: Explicitly allow additional properties in common schemas (Desnes Nunes) [2196368] - dt-bindings: usb: Bring back phy-names (Desnes Nunes) [2196368] - usb: core: stop USB enumeration if too many retries (Desnes Nunes) [2196368] - usb: hub: port: add sysfs entry to switch port power (Desnes Nunes) [2196368] - usb: typec: port-mapper: Convert to the component framework (Desnes Nunes) [2196368] - usb: Link the ports to the connectors they are attached to (Desnes Nunes) [2196368] - usb: Remove usb_for_each_port() (Desnes Nunes) [2196368] - thunderbolt: Add wake on connect/disconnect on USB4 ports (Desnes Nunes) [2196368] - thunderbolt: Link USB4 ports to their USB Type-C connectors (Desnes Nunes) [2196368] - usb: core: Use kstrtobool() instead of strtobool() (Desnes Nunes) [2196368] - kernel.h: split out kstrtox() and simple_strtox() to a separate header (Desnes Nunes) [2196368] - USB: core: Change configuration warnings to notices (Desnes Nunes) [2196368] - thunderbolt: ACPI: Use the helper fwnode_find_reference() (Desnes Nunes) [2196368] - thunderbolt: Remove redundant assignment to variable len (Desnes Nunes) [2196368] - thunderbolt: Use str_enabled_disabled() helper (Desnes Nunes) [2196368] - media: device property: Add a function to test is a fwnode is a graph endpoint (Desnes Nunes) [2196368] - usb: typec: mux: Allow multiple mux_devs per mux (Desnes Nunes) [2196368] - usb: typec: mux: Introduce indirection (Desnes Nunes) [2196368] - device property: Use multi-connection matchers for single case (Desnes Nunes) [2196368] - device property: Fix fwnode_graph_devcon_match() fwnode leak (Desnes Nunes) [2196368] - device property: Add helper to match multiple connections (Desnes Nunes) [2196368] - Documentation: Remove device connection documentation (Desnes Nunes) [2196368] - usb: ftdi-elan: remove variable err_count (Desnes Nunes) [2196368] - USB: make devnode() callback in usb_class_driver take a const * (Desnes Nunes) [2196368] - USB: remove usb_bus_type from usb.h (Desnes Nunes) [2196368] - USB: allow some usb functions to take a const pointer. (Desnes Nunes) [2196368]- s390/ap: Fix hanging ioctl caused by orphaned replies (Tobias Huschle) [2215891] - crypto: jitter - correct health test during initialization (Vladis Dronov) [2214270] - x86: properly define CONFIG_AS_TPAUSE in Makefile (Nico Pache) [2193009] - zsmalloc: fix races between asynchronous zspage free and page migration (Oleksandr Natalenko) [2213146] - netfilter: ip6t_rpfilter: Fix regression with VRF interfaces (Phil Sutter) [2169958] - x86/mm: Avoid incomplete Global INVLPG flushes (Rafael Aquini) [2213793] - rbd: get snapshot context after exclusive lock is ensured to be held (Ilya Dryomov) [2214973] - rbd: move RBD_OBJ_FLAG_COPYUP_ENABLED flag setting (Ilya Dryomov) [2214973] - vfio/pci: Also demote hiding standard cap messages (Oleksandr Natalenko) [2207849] - vfio/pci: demote hiding ecap messages to debug level (Oleksandr Natalenko) [2207849] - mm: avoid unnecessary page fault retires on shared memory types (Nico Pache) [2213877] - mm: remove redundant check about FAULT_FLAG_ALLOW_RETRY bit (Nico Pache) [2213877] - mm: Allow the [page|pfn]_mkwrite callbacks to drop the mmap_sem (Nico Pache) [2213877] - s390/qeth: convert sysfs snprintf to sysfs_emit (Tobias Huschle) [2203380] - s390/lcs: Fix return type of lcs_start_xmit() (Tobias Huschle) [2203380] - s390/netiucv: Fix return type of netiucv_tx() (Tobias Huschle) [2203380] - s390/ctcm: Fix return type of ctc{mp,}m_tx() (Tobias Huschle) [2203380] - s390/pci: clean up left over special treatment for function zero (Tobias Huschle) [2214268] - s390/pci: remove redundant pci_bus_add_devices() on new bus (Tobias Huschle) [2214268] - s390/pci: only add specific device in zpci_bus_scan_device() (Tobias Huschle) [2214268] - PCI: s390: Fix use-after-free of PCI resources with per-function hotplug (Tobias Huschle) [2214268] - net: atlantic: fix potential memory leak in aq_ndev_close() (Íñigo Huguet) [2184353] - net: atlantic: fix aq_vec index out of range error (Íñigo Huguet) [2179726 2184353] - net: atlantic: verify hw_head_ lies within TX buffer ring (Íñigo Huguet) [2184353] - net: atlantic: add check for MAX_SKB_FRAGS (Íñigo Huguet) [2184353] - net: atlantic: reduce scope of is_rsc_complete (Íñigo Huguet) [2184353] - net: atlantic: fix "frag[0] not initialized" (Íñigo Huguet) [2184353] - net: atlantic: Avoid out-of-bounds indexing (Íñigo Huguet) [2179726 2184353] - atlantic: Fix buff_ring OOB in aq_ring_rx_clean (Íñigo Huguet) [2184353] - atlantic: Remove warn trace message. (Íñigo Huguet) [2184353] - atlantic: Fix statistics logic for production hardware (Íñigo Huguet) [2184353] - atlantic: Add missing DIDs and fix 115c. (Íñigo Huguet) [2184353] - atlantic: Fix to display FW bundle version instead of FW mac version. (Íñigo Huguet) [2184353] - atlantic: Increase delay for fw transactions (Íñigo Huguet) [2184353] - atlantic: fix double-free in aq_ring_tx_clean (Íñigo Huguet) [2184353] - atlantic: Fix OOB read and write in hw_atl_utils_fw_rpc_wait (Íñigo Huguet) [2184353] - net: ethernet: aquantia: Handle error cleanup of start on open (Íñigo Huguet) [2184353] - aquantia: Remove the build_skb path (Íñigo Huguet) [2184353] - net: fix __dev_kfree_skb_any() vs drop monitor (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to icmpv6_echo_reply() (Antoine Tenart) [2184076] - ipv6: icmp6: add SKB_DROP_REASON_IPV6_NDISC_NS_OTHERHOST (Antoine Tenart) [2184076] - ipv6: icmp6: add SKB_DROP_REASON_IPV6_NDISC_BAD_OPTIONS (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_redirect_rcv() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_router_discovery() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_rs() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_na() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_ns() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_rcv() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to icmpv6_notify() (Antoine Tenart) [2184076] - net: add pskb_may_pull_reason() helper (Antoine Tenart) [2184076] - net-next: skbuff: refactor pskb_pull (Antoine Tenart) [2184076] - net: dropreason: add SKB_DROP_REASON_IPV6_BAD_EXTHDR (Antoine Tenart) [2184076] - rxrpc: Use consume_skb() rather than kfree_skb_reason() (Antoine Tenart) [2184076] - ipv4: raw: add drop reasons (Antoine Tenart) [2184076] - ipv6: raw: add drop reasons (Antoine Tenart) [2184076] - tcp: add TCP_MINTTL drop reason (Antoine Tenart) [2184076] - net: fix call location in kfree_skb_list_reason (Antoine Tenart) [2184076] - rxrpc: Show consumed and freed packets as non-dropped in dropwatch (Antoine Tenart) [2184076] - net: tun: rebuild error handling in tun_get_user (Antoine Tenart) [2184076] - ALSA: Update kernel configuration for 8.9 (Jaroslav Kysela) [2179850] - soundwire: stream: Add missing clear of alloc_slave_rt (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add new mapping for HP Spectre x360 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable 4 amplifiers instead of 2 on a HP platform (Jaroslav Kysela) [2179850] - ALSA: hda: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: gus: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: cmipci: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: ice1712,ice1724: fix the kcontrol->id initialization (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo NS50AU (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for Asus ROG 2024 laptops using CS35L41 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add "Intel Reference board" and "NUC 13" SSID in the ALC256 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add Lenovo P3 Tower platform (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add a quirk for HP Slim Desktop S01 (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: fix PCM constraint error check (Jaroslav Kysela) [2179850] - ASoC: max98363: limit the number of channel to 1 (Jaroslav Kysela) [2179850] - ASoC: max98363: Removed 32bit support (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Thinkpad Neo14 to quirks list for acp6x (Jaroslav Kysela) [2179850] - ASoC: nau8824: Add quirk to active-high jack-detect (Jaroslav Kysela) [2179850] - ASoC: amd: ps: fix for acp_lock access in pdm driver (Jaroslav Kysela) [2179850] - ASoC: simple-card: Add missing of_node_put() in case of error (Jaroslav Kysela) [2179850] - ASoC: codecs: wsa881x: do not set can_multi_write flag (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: remove code for module namespaces (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable headset onLenovo M70/M90 (Jaroslav Kysela) [2179850] - regmap: sdw: check for invalid multi-register writes config (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: add quirk for EVGA X299 DARK (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing checks on FE startup (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix avs_path_module::instance_id size (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Account for UID of ACPI device (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix declaration of enum avs_channel_config (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix declaration of enum skl_ch_cfg (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Access path components under lock (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix module lookup (Jaroslav Kysela) [2179850] - ALSA: hda: Fix unhandled register update during auto-suspend period (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: test if a BE can be prepared (Jaroslav Kysela) [2179850] - ALSA: hda: Add NVIDIA codec IDs a3 through a7 to patch table (Jaroslav Kysela) [2179850] - ALSA: oss: avoid missing-prototype warnings (Jaroslav Kysela) [2179850] - ALSA: cs46xx: mark snd_cs46xx_download_image as static (Jaroslav Kysela) [2179850] - ALSA: hda: Fix Oops by 9.1 surround channel names (Jaroslav Kysela) [2179850] - ASoC: rt5682: Disable jack detection interrupt during suspend (Jaroslav Kysela) [2179850] - ASoC: SOF: Separate the tokens for input and output pin index (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix tuples array allocation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to program SoundWire PCMSyCM registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: initialize instance_offset member (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: use 'ml_addr' parameter consistently (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: fix base_ptr computation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to get SoundWire hlink (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: fix sublink refcounting (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix logic for copying tuples (Jaroslav Kysela) [2179850] - ASoC: dwc: move DMA init to snd_soc_dai_driver probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-topology: Make sure that only one cmd is sent in dai_config (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: save io region state in case of errors in resume (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-client-probes: fix pm_runtime imbalance in error handling (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: fix pm_runtime imbalance in error handling (Jaroslav Kysela) [2179850] - ASoC: SOF: debug: conditionally bump runtime_pm counter on exceptions (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix mute and micmute LEDs for yet another HP laptop (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add a sample rate workaround for Line6 Pod Go (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Apply HP B&O top speaker profile to Pavilion 15 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for ASUS GU604V and GU603V (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for HP EliteBook G10 laptops (Jaroslav Kysela) [2179850] - tools include UAPI: Sync the sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2179850] - firewire: net: fix unexpected release of object for asynchronous request packet (Jaroslav Kysela) [2179850] - ASoC: ssm2602: Add workaround for playback distortions (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix NULL pointer crash in acp_sof_ipc_msg_data function (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add a quirk for HP EliteDesk 805 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for 2nd ASUS GU603 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo L140AU (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entry to support System76 Pangolin 12 (Jaroslav Kysela) [2179850] - ALSA: pcm: use exit controlled loop in snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ALSA: pcm: simplify top-up mode init in snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ALSA: pcm: playback silence - move silence variable updates to separate function (Jaroslav Kysela) [2179850] - ALSA: pcm: playback silence - remove extra code (Jaroslav Kysela) [2179850] - ALSA: pcm: fix playback silence - correct incremental silencing (Jaroslav Kysela) [2179850] - ALSA: pcm: fix playback silence - use the actual new_hw_ptr for the threshold mode (Jaroslav Kysela) [2179850] - ALSA: pcm: Revert "ALSA: pcm: rewrite snd_pcm_playback_silence()" (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix mute and micmute LEDs for an HP laptop (Jaroslav Kysela) [2179850] - ALSA: caiaq: input: Add error handling for unsupported input methods in `snd_usb_caiaq_input_init` (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add quirk for Pioneer DDJ-800 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: support HP Pavilion Aero 13-be0xxx Mute LED (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ASUS UM3402YAR using CS35L41 (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Asus VivoBook Pro 14 OLED M6400RC to the quirks list for acp6x (Jaroslav Kysela) [2179850] - ALSA: docs: Extend module parameters description (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi-cht: Add quirk for Nextbook Ares 8A tablet (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use more existing defines instead of open-coded numbers (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ASUS M3402RA into DMI table (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ThinkPad P1 Gen 6 (Jaroslav Kysela) [2179850] - ALSA: hda: Glenfly: add HD Audio PCI IDs and HDMI Codec Vendor IDs. (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use high-level I/O in set_filterQ() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix error handling in snd_audigy_i2c_volume_put() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: don't stop DSP in _snd_emu10k1_{,audigy_}init_efx() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: skip Sound Blaster-specific hacks for E-MU cards (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fixup DSP defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use high-level I/O functions also during init (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix SNDRV_EMU10K1_IOCTL_SINGLE_STEP (Jaroslav Kysela) [2179850] - ALSA: emu10k1: pull in some register definitions from kX-project (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove some bogus defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: eliminate some unused defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix lineup of EMU_HANA_* defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: comment updates (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix snd_emu1010_fpga_read() input masking for rev2 cards (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused emu->pcm_playback_efx_substream field (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused `resume` parameter from snd_emu10k1_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: minor optimizations (Jaroslav Kysela) [2179850] - ASoC: max98090: make it selectable (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi-byt: Fix "WM510205" match no longer working (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Rate limit usb_set_interface error reporting (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove remaining cruft from snd_emu10k1_emu1010_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: clean up P16V part somewhat (Jaroslav Kysela) [2179850] - ALSA: emu10k1: clarify various fx8010.*_mask fields (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove apparently pointless EMU_HANA_OPTION_CARDS reads (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove apparently pointless FPGA reads (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused snd_emu10k1_voice.emu field (Jaroslav Kysela) [2179850] - ALSA: emu10k1: stop doing weird things with HCFG in snd_emu10k1_emu1010_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove obsolete card type variable and defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix access to Audigy GPIO port (Jaroslav Kysela) [2179850] - ALSA: emu10k1: drop redundant snd_emu10k1_efx_playback_pointer() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: properly assert E-MU FPGA access constaints (Jaroslav Kysela) [2179850] - ALSA: emu10k1: drop redundant snd_emu10k1_efx_playback_hw_free() (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Add an option to skip platform trigger during stop (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Do not stop/start DMA during pause/release (Jaroslav Kysela) [2179850] - ALSA: pcm: rewrite snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Split the set_power_op for IPC3 and IPC4 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: append codec type to dai link name (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: support different devices on the same sdw link (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: set codec_num = 1 if the device is not aggregated (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw_max98373: change sof_sdw_mx8373_late_probe to static call (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: remove late_probe flag in struct sof_sdw_codec_info (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw at link 2 in RPL match table (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_cirrus_common: Guard against missing buses (Jaroslav Kysela) [2179850] - ASoC: SOF: Use no_reply calls for TX (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc: Add no reply inline calls (Jaroslav Kysela) [2179850] - ASoC: es8316: Don't use ranges based register lookup for a single register (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Remove specific patch for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: nau8825: fix bounds check for adc_delay (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Simplify &pdev->dev in probe (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Simplify with dev_err_probe (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd9335: Simplify with dev_err_probe (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Remove some dead code (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Fix default regmap values for some registers (Jaroslav Kysela) [2179850] - ASoC: ssm2602: Add support for CLKDIV2 (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add delay control for input path (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: disable KAE for Intel DG2 (Jaroslav Kysela) [2179850] - ASoC: da7218: Use devm_clk_get_optional() (Jaroslav Kysela) [2179850] - ASoC: da7219: Improve the relability of AAD IRQ process (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for Lenovo Z13/Z16 Gen2 (Jaroslav Kysela) [2179850] - ASoC: amd: Add check for acp config flags (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ThinkBook 14 G5+ ARP to quirks list for acp6x (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: fix page fault in dspless mode when DSP is disabled (Jaroslav Kysela) [2179850] - ASoC: tas5720: add missing unwind goto in tas5720_codec_probe (Jaroslav Kysela) [2179850] - ASoC: ep93xx: Add OF support (Jaroslav Kysela) [2179850] - ASoC: ep93xx: i2s: Make it individually selectable (Jaroslav Kysela) [2179850] - ASoC: cs4271: flat regcache, trivial simplifications (Jaroslav Kysela) [2179850] - ASoC: ep93xx: i2s: move enable call to startup callback (Jaroslav Kysela) [2179850] - ASoC: amd: Add Dell G15 5525 to quirks list (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Print the format_val as hexadecimal number (Jaroslav Kysela) [2179850] - ASoC: max98373: change power down sequence for smart amp (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: conditionally wake WPIO1PG domain (Jaroslav Kysela) [2179850] - ASoC: Intel: Add rpl_mx98360_rt5682 driver (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add __func__ in SoundWire lcount() error logs (Jaroslav Kysela) [2179850] - ALSA: hda: patch_realtek: add quirk for Asus N7601ZM (Jaroslav Kysela) [2179850] - ALSA: hda: LNL: add HD Audio PCI ID (Jaroslav Kysela) [2179850] - ASoC: max98363: Make soc_codec_dev_max98363 static (Jaroslav Kysela) [2179850] - soundwire: bus: Fix unbalanced pm_runtime_put() causing usage count underflow (Jaroslav Kysela) [2179850] - ALSA: firewire-tascam: add missing unwind goto in snd_tscm_stream_start_duplex() (Jaroslav Kysela) [2179850] - ALSA: document that struct __snd_pcm_mmap_control64 is messed up (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: Add RT712 SDCA driver for Mic topology (Jaroslav Kysela) [2179850] - ASoC: add snd_soc_card_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: expand snd_soc_dpcm_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: expand snd_soc_dapm_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup dapm_connect_dai_pair() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: documentation updates (Jaroslav Kysela) [2179850] - ALSA: emu10k1: update label & help in config system (Jaroslav Kysela) [2179850] - ALSA: emu10k1: don't create old pass-through playback device on Audigy (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix capture interrupt handler unlinking (Jaroslav Kysela) [2179850] - ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards (Jaroslav Kysela) [2179850] - ALSA: i2c/cs8427: fix iec958 mixer control deactivation (Jaroslav Kysela) [2179850] - ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard (Jaroslav Kysela) [2179850] - ALSA: pcm: fix wait_time calculations (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Tear down pipelines only if DSP was active (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to retrieve eml_lock (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to offload link ownership (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to retrieve DMIC/SSP hlink (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: program SoundWire LSDIID registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to check cmdsync (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers for sync_arm/sync_go (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to set link SYNC frequency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to enable/check interrupts (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to return sublink count (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add convenience helpers for SoundWire PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: introduce helpers for 'extended links' PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: special-case HDaudio regular links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add structures to parse ALT links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: move to a dedicated module (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add return value for hda_bus_ml_get_capabilities() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: improve hda_bus_ml_free() helper (Jaroslav Kysela) [2179850] - ALSA: hda: add HDaudio Extended link definitions (Jaroslav Kysela) [2179850] - Documentation: sound: add description of Intel HDaudio multi-links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-skl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-mtl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-icl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-cnl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-apl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: make DSPless mode work with DSP disabled in BIOS (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add support for DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Skip interfaces not supported on a platform (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Add flag and state which will be used for DSP-less mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: Do not dereference hstream until it is safe (Jaroslav Kysela) [2179850] - ASoC: tegra20_ac97: Add missing unwind goto in tegra20_ac97_platform_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Clarify bind failure caused by missing fw_module (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor dmic codec platform device creation (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor error checks in probe call (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor get_chip_info callback (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove unused variables (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove acp_dai_probe() function (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove unused code (Jaroslav Kysela) [2179850] - ASoC: soc.h: remove unused params/num_params (Jaroslav Kysela) [2179850] - ASoC: samsung: switch to use c2c_params instead of params (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: switch to use c2c_params instead of params (Jaroslav Kysela) [2179850] - ASoC: soc.h: clarify Codec2Codec params (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support HP OMEN 16-n0xxx (8A42) (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo X370SNW (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Preserve the previous PCM device upon re-enablement (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update the acp clock source. (Jaroslav Kysela) [2179850] - ASoC: max98363: add soundwire amplifier driver (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Fix spelling mistake "schduler" -> "scheduler" (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Add missing mutex_unlock() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Add support for chained DMA (Jaroslav Kysela) [2179850] - ASoC: SOF: avoid a NULL dereference with unsupported widgets (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Use register macro in place of integer literal (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Use u16 consistently for old_legacy_ctrl (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Store additional legacy registers on suspend (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Store saved legacy registers in an array (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Move allocation of saved registers to struct snd_ymfpci (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Switch to DEFINE_SIMPLE_DEV_PM_OPS() (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Add error messages for abritrary IO ports on older chips (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Fix BUG_ON in probe function (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Create card with device-managed snd_devm_card_new() (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: dai_link->platform again (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Add a debugfs entry containing control details (Jaroslav Kysela) [2179850] - ASoC: wm8903: Remove outdated DMIC comment (Jaroslav Kysela) [2179850] - ASoC: es8316: Handle optional IRQ assignment (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Lenovo ZhaoYang CF4620Z (Jaroslav Kysela) [2179850] - ASoC: da7213.c: add missing pm_runtime_disable() (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2-custom-sample.dtsi: use card->name to avoid long name (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: add snd_soc_add_pcm_runtimes() (Jaroslav Kysela) [2179850] - ALSA: asihpi: remove unused loop_count variable (Jaroslav Kysela) [2179850] - ASoC: hdac_hdmi: use set_stream() instead of set_tdm_slots() (Jaroslav Kysela) [2179850] - ASoC: dapm: Sort speakers after other outputs (Jaroslav Kysela) [2179850] - ASoC: soc-compress: Inherit atomicity from DAI link for Compress FE (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix regression on detection of Roland VS-100 (Jaroslav Kysela) [2179850] - ASoC: codecs: rt5682-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt715-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt715: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt712-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt711-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt711-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt700-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1318-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1316-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1308-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: max98373-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: sdw-mockup: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: cs42l42-sdw: clear stream (Jaroslav Kysela) [2179850] - ASoC: simple-card.c: add missing of_node_put() (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ASoC: ti: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ASoC: atmel: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ALSA: hdspm: remove unused copy_u32_le function (Jaroslav Kysela) [2179850] - ALSA: docs: A few more words for PCM XRUN handling and stream locks (Jaroslav Kysela) [2179850] - ALSA: docs: Add description about ack callback -EPIPE error handling (Jaroslav Kysela) [2179850] - ALSA: pcm: Improved XRUN handling for indirect PCM helpers (Jaroslav Kysela) [2179850] - soundwire: intel_auxdevice: improve pm_prepare step (Jaroslav Kysela) [2179850] - soundwire: bus: Update sdw_nread/nwrite_no_pm to handle page boundaries (Jaroslav Kysela) [2179850] - soundwire: bus: Update kernel doc for no_pm functions (Jaroslav Kysela) [2179850] - soundwire: bus: Remove now outdated comments on no_pm IO (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix support for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Add quirk for the Acer Iconia One 7 B1-750 (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Improve the pcm trigger sequence (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Make hw_params reset conditional for IPC3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Do not perform DMA cleanup during stop (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Ensure DSP is in D0I0 during sof_ipc4_set_get_data() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Remove conditional dpcm_capture setting (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Update BT offload config for MTL RVP (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Update BT offload config for Rex (Jaroslav Kysela) [2179850] - soundwire: stream: uniquify dev_err() logs (Jaroslav Kysela) [2179850] - soundwire: stream: remove bus->dev from logs on multiple buses (Jaroslav Kysela) [2179850] - ASoC: tegra: remove unneeded semicolon (Jaroslav Kysela) [2179850] - ASoC: simple-card: add comment to indicate don't remove platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: Return on error in sof_ipc4_widget_kcontrol_setup() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macros for chain-dma message bits (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Set pipeline widget before updating IPC structures (Jaroslav Kysela) [2179850] - soundwire: amd: add pm_prepare callback and pm ops support (Jaroslav Kysela) [2179850] - soundwire: amd: handle SoundWire wake enable interrupt (Jaroslav Kysela) [2179850] - soundwire: amd: add runtime pm ops for AMD SoundWire manager driver (Jaroslav Kysela) [2179850] - soundwire: amd: add SoundWire manager interrupt handling (Jaroslav Kysela) [2179850] - soundwire: amd: enable build for AMD SoundWire manager driver (Jaroslav Kysela) [2179850] - soundwire: amd: register SoundWire manager dai ops (Jaroslav Kysela) [2179850] - soundwire: amd: Add support for AMD Manager driver (Jaroslav Kysela) [2179850] - soundwire: export sdw_compute_slave_ports() function (Jaroslav Kysela) [2179850] - soundwire: intel: don't save hw_params for use in prepare (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix recursive locking at XRUN during syncing (Jaroslav Kysela) [2179850] - ALSA: hda/conexant: Partial revert of a quirk for Lenovo (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Simplify the logging of requested firmware files (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Add support for loading bin files without wmfw (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Expose the DSP boot work actions as wm_adsp_power_up() (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Support DSPs that don't require firmware download (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Support DSPs that don't require firmware download (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Use no_core_startstop to prevent creating preload control (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Introduce no_core_startstop for self-booting DSPs (Jaroslav Kysela) [2179850] - mfd: arizona-i2c: Add the missing device table IDs for OF (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Add 12288000 clk freq to cs35l41_fs_mon clk config (Jaroslav Kysela) [2179850] - ALSA: portman2x4: remove unused portman_read_command,data functions (Jaroslav Kysela) [2179850] - ALSA: ymfpci: remove unused snd_ymfpci_readb function (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for some Clevo laptops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Initialize in_format to NULL in sof_ipc4_get_audio_fmt (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support Victus by HP Laptop 16-e1xxx (8A22) (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: update pipeline_params in process prepare (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set copier output format for process module (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for base config extension (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add base module config extension structure (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add effect widget support (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Move the kcontrol module_id update to helper (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: use common helper function in copier prepare (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: support multiple configs for BE DAIs (Jaroslav Kysela) [2179850] - soundwire: stream: restore cumulative bus bandwidth when compute_params callback failed (Jaroslav Kysela) [2179850] - ASoC: amd: acp: rembrandt: Drop if blocks with always false condition (Jaroslav Kysela) [2179850] - ALSA: sh: aica: Drop if blocks with always false condition (Jaroslav Kysela) [2179850] - soundwire: bandwidth allocation: Use hweight32() to calculate set bits (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add remapping for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: add table for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - ASOC: Intel: sof_sdw: add quirk for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - soundwire: cadence: change access to IP_MCP_CMD_BASE (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CMDCTRL fields (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CONTROL fields (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CONFIG fields (Jaroslav Kysela) [2179850] - soundwire: cadence: add helpers to access IP_MCP registers (Jaroslav Kysela) [2179850] - soundwire: cadence: remove CDNS_MCP_CONFIG_SSPMOD (Jaroslav Kysela) [2179850] - soundwire: intel: move bank switch routine to common intel_bus_common.c (Jaroslav Kysela) [2179850] - soundwire: intel: add abstraction for cmdsync check (Jaroslav Kysela) [2179850] - soundwire: intel: move bus common sequences to different file (Jaroslav Kysela) [2179850] - soundwire: intel: use indirection before moving bus start/stop sequences (Jaroslav Kysela) [2179850] - soundwire: intel: add sync_arm/sync_go to ops (Jaroslav Kysela) [2179850] - soundwire: intel: simplify sync_go sequence (Jaroslav Kysela) [2179850] - soundwire: intel: remove useless abstraction (Jaroslav Kysela) [2179850] - soundwire: intel: remove PDI-level restrictions on rates and formats (Jaroslav Kysela) [2179850] - soundwire: intel: remove stale/misleading comment (Jaroslav Kysela) [2179850] - soundwire: intel: move common definitions to header file (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Search only pin 0 formats (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add new tokens for input/output pin format count (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Remove the ref_audio_fmt field (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Modify the signature of sof_ipc4_init_audio_fmt() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Modify the type of available input/output formats (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Always parse the output formats in topology (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Parse the SOF_COMP_TOKENS only once (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Do not parse the DMA_BUFFER_SIZE token (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add a new field in struct sof_ipc4_available_audio_format (Jaroslav Kysela) [2179850] - ASoC: SOF: Use input/output pin consistently (Jaroslav Kysela) [2179850] - ASoC: SOF: rename a couple of tokens (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: Add support for bytes control get and put (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for TPLG_CTL_BYTES (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: set_volume_data only applies to VOLSW family (Jaroslav Kysela) [2179850] - ASoC: SOF: uapi: header: Update sof_abi_hdr doc for IPC4 use (Jaroslav Kysela) [2179850] - ASoC: SOF: uapi: header: Convert sof_abi_hdr comments to kernel style (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-control: Merge functions to handle bytes_ext get variants (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-control: Rename snd_sof_refresh_control() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: add support for setting up loopback routes (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set() (Jaroslav Kysela) [2179850] - ALSA: asihpi: check pao in control_message() (Jaroslav Kysela) [2179850] - ASoC: codecs: zl38060: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1019: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: pcm179x-spi: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: adau1977-spi: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Enable Bluetooth offload on adl_rt1019_rt5682 (Jaroslav Kysela) [2179850] - ALSA: Use of_property_read_bool() for boolean properties (Jaroslav Kysela) [2179850] - ALSA: ppc/tumbler: Use of_property_present() for testing DT property presence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Don't access EM2 (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Steam Deck Shared boost properties quirk (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: fix hw->formats cleared by soc_pcm_hw_init() for dpcm (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: only startup/shutdown on supported streams (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Enable cont_update_posn variable in pcm hw_params. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Add pcm pointer callback for amd platforms. (Jaroslav Kysela) [2179850] - ASoC: tegra: Support MAX9808x by machine driver (Jaroslav Kysela) [2179850] - ASoC: tegra: Support RT5631 by machine driver (Jaroslav Kysela) [2179850] - ASoC: tegra: Support coupled mic-hp detection (Jaroslav Kysela) [2179850] - ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU() (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro (Jaroslav Kysela) [2179850] - ASoC: da7219: Initialize jack_det_mutex (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: remove redundant DAI config during hw_free (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Remove hda_ctrl_dai_widget_setup/free() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Unify DAI drv ops for IPC3 and IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Define DAI widget DMA trigger ops for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Use the topology IPC dai_config op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Add setup_hext_stream/reset_hext_stream DMA ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Define and set the HDA DAI widget DMA ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Introduce DAI widget ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Use the dai argument in ipc4_hda_dai_trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Pass the CPU dai pointer (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Modify the signature of hda_link_dma_cleanup() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: remove struct hda_pipe_params (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Remove hda_link_dma_params() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Remove BE DAI DRV ops for SSP DAI's (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix speaker, mute/micmute LEDs not work on a HP platform (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add core token in each module extended token list (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for core_id for pipelines (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macro to set the core_id in create_pipe message (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Remove log prefixes for snd_sof_run_firmware (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3: Check for upper size limit for the received message (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix error handling in sof_widget_ready() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: don't squelch errors in WIDGET_SETUP phase (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Fix broken early bclk feature for SSP (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: process pending logs upon FW crash (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: don't allocate blob if it will not be used (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Fix incorrect sample rate print unit (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set dmic dai index from copier (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: update gain ipc msg definition to align with fw (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: fix copy-paste issue in topology names (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: harden D0i3 programming sequence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: re-add sleep after entering and exiting reset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tng: revert invalid bar size setting (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: Access MTL_HFPWRCTL from HDA_DSP_BAR (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: use SOF helper for consistency (Jaroslav Kysela) [2179850] - ASOC: SOF: Intel: pci-tgl: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: SKL: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: HDA: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Fix the device description (Jaroslav Kysela) [2179850] - ALSA: hda: intel-dsp-config: add MTL PCI id (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: remove useless dev_dbg() (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: remove indirect runtime copy (Jaroslav Kysela) [2179850] - ASoC: soc-dai.c: add missing flag check at snd_soc_pcm_dai_probe() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use struct_size for struct avs_modcfg_ext size (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: nau8825: Adjust clock control (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: ssm4567: Remove nau8825 bits (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: da7219: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: max98357a: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: maxim,max9867: add "mclk" support (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: add option to start DMA after DAI (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support HP OMEN 16-n0xxx (8A43) (Jaroslav Kysela) [2179850] - ASoC: zl38060 add gpiolib dependency (Jaroslav Kysela) [2179850] - ASoC: mt6358: Remove undefined HPx Mux enumeration values (Jaroslav Kysela) [2179850] - ASoC: mt6358: Validate Wake on Voice 2 writes (Jaroslav Kysela) [2179850] - ASoC: mt6358: Fix event generation for wake on voice stage 2 switch (Jaroslav Kysela) [2179850] - ALSA: ice1712: Delete unreachable code in aureon_add_controls() (Jaroslav Kysela) [2179850] - ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls() (Jaroslav Kysela) [2179850] - ASoC: adau7118: don't disable regulators on device unbind (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Replace fake flexible arrays with flexible-array member (Jaroslav Kysela) [2179850] - ALSA: cs35l41: Add shared boost feature (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Refactor error release code (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Only disable internal boost (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC (Jaroslav Kysela) [2179850] - soundwire: qcom: gracefully handle too many ports in DT (Jaroslav Kysela) [2179850] - soundwire: qcom: define hardcoded version magic numbers (Jaroslav Kysela) [2179850] - soundwire: qcom: correct setting ignore bit on v1.5.1 (Jaroslav Kysela) [2179850] - ASoC: jack: allow multiple interrupt per gpio (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Improve support for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Add quirk for Rex board with mx98360a amplifier (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Enable DMI L1 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Restrict DMI L1 disable workaround (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Do not re-enable L1 if disabled before suspend (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Add components prefix in structs and function names (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Centralize strings definition (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Move nau8821 and CPU side code up for future platform (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Check Bit Clock rate before snd_soc_dai_set_pll (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: use for_each_rtd_components instead of for (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: remove unnecessarily included headers (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: use sizeof of variable instead of struct type (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Small code refactor (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Remove unnecessary init function (Jaroslav Kysela) [2179850] - ASoC: nau8821: Implement DRC controls (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: fix possible stream_tag leak (Jaroslav Kysela) [2179850] - ASoC: amd: yp: Add OMEN by HP Gaming Laptop 16z-n000 to quirks (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: fixup warning struct snd_pcm_substream not declared (Jaroslav Kysela) [2179850] - ASoC: soc-ac97: Return correct error codes (Jaroslav Kysela) [2179850] - ASoC: da7219: Improve the IRQ process to increase the stability (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs and speaker support for HP Laptops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: Set streaming flag for d0i3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Enable d0i3 work for ipc4 (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Wake up dsp core before sending ipc msg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: use set_pm_gate according to ipc version (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce a new set_pm_gate() IPC PM op (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform. (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix struct definition (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Use min macro for comparison and assignment (Jaroslav Kysela) [2179850] - ASoC: soc-ac97: Convert to agnostic GPIO API (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Enable Amp High Pass Filter (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Ensure firmware/tuning pairs are always loaded (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Correct error condition handling (Jaroslav Kysela) [2179850] - ASoC: codecs: Modify error implicit declaration of function 'gpiod_set_value_cansleep' (Jaroslav Kysela) [2179850] - ASoC: codecs: Modify the log print statement (Jaroslav Kysela) [2179850] - ASoC: codecs: Fixed a spelling error in the function name (Jaroslav Kysela) [2179850] - ALSA: hda/realtek - fixed wrong gpio assigned (Jaroslav Kysela) [2179850] - ALSA: hda: Fix codec device field initializan (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: fix coding style and unconditionally return issues (Jaroslav Kysela) [2179850] - ASoC: rt5640: Update MCLK rate in set_sysclk() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set copier sink format (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Print queue IDs in error (Jaroslav Kysela) [2179850] - ALSA: hda: remove redundant variable in snd_hdac_stream_start() (Jaroslav Kysela) [2179850] - ALSA: hda/conexant: add a new hda codec SN6180 (Jaroslav Kysela) [2179850] - SoC: rt5682s: Disable jack detection interrupt during suspend (Jaroslav Kysela) [2179850] - ALSA: ppc: fix unused function local variable (Jaroslav Kysela) [2179850] - ASoC: codecs: max98090: simplify snd_soc_dai_driver (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: refine parameters order in function snd_sof_dsp_update8 (Jaroslav Kysela) [2179850] - ASoC: topology: Return -ENOMEM on memory allocation failure (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_free() return void (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_free_when_closed() return void (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_disconnect() return void (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add Positivo N14KP6-TG (Jaroslav Kysela) [2179850] - ALSA: emux: Avoid potential array out-of-bound in snd_emux_xg_control() (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: Add RT712 SDCA driver for Jack and Amp topology (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform. (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ASUS UM3402 using CS35L41 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Elitebook, 645 G9 (Jaroslav Kysela) [2179850] - ASoC: codecs: aw88395: initialize cur_scene_id to 0 (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: Fix DTS properties reading (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for handling spurious interrupts from DSP (Jaroslav Kysela) [2179850] - ASoC: codecs: fix platform_no_drv_owner.cocci warning (Jaroslav Kysela) [2179850] - ALSA: fireface: add field for the number of messages copied to user space (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: add delay function support (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: add get_stream_position support (Jaroslav Kysela) [2179850] - ASoC: SOF: add get_stream_position ops for pcm delay (Jaroslav Kysela) [2179850] - ASoC: SOF: add delay function support in sof framework (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: add hw_params (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: allocate time info for pcm delay feature (Jaroslav Kysela) [2179850] - ASoC: SOF: add time info structure for ipc4 path (Jaroslav Kysela) [2179850] - ASoC: SOF: add fw_info_box support (Jaroslav Kysela) [2179850] - ASoC: SOF: add ipc4_fw_reg header file (Jaroslav Kysela) [2179850] - ASoC: codecs: aw88395: Fix spelling mistake "cersion" -> "version" (Jaroslav Kysela) [2179850] - ASoC: SOF: fix intel-soundwire link failure (Jaroslav Kysela) [2179850] - ALSA: hda: Fix the control element identification for multiple codecs (Jaroslav Kysela) [2179850] - ASoC: amd: update ps platform acp header file (Jaroslav Kysela) [2179850] - ASoC: topology: Set correct unload callback for graph type (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Add missed "else" in sof_connect_dai_widget (Jaroslav Kysela) [2179850] - ASoC: cs42l42: use helper function (Jaroslav Kysela) [2179850] - ALSA: pci: lx6464es: fix a debug loop (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: cleanup Playback/Capture data for snd_soc_dai (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-dai.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: ti: use helper function (Jaroslav Kysela) [2179850] - ASoC: tegra: use helper function (Jaroslav Kysela) [2179850] - ASoC: sof: use helper function (Jaroslav Kysela) [2179850] - ASoC: intel: use helper function (Jaroslav Kysela) [2179850] - ASoC: sdw-mockup: use helper function (Jaroslav Kysela) [2179850] - ASoC: spear: use helper function (Jaroslav Kysela) [2179850] - ASoC: cirrus: use helper function (Jaroslav Kysela) [2179850] - ASoC: rt: use helper function (Jaroslav Kysela) [2179850] - ASoC: max: use helper function (Jaroslav Kysela) [2179850] - ASoC: hda: use helper function (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc.h: add snd_soc_card_is_instantiated() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_get/set_widget_playback/capture() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_tdm_mask_set/get() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_dma_data_set/get() for low level (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add missing snd_soc_dai_set_widget() (Jaroslav Kysela) [2179850] - ALSA: doc: Fix PCM interface section typos (Jaroslav Kysela) [2179850] - ALSA: firewire-motu: fix unreleased lock warning in hwdep device (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: fix uninitialized local variable (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor bit width calculation (Jaroslav Kysela) [2179850] - ASoC: rt715-sdca: fix clock stop prepare timeout issue (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro 360 (Jaroslav Kysela) [2179850] - ASoC: tas5720: set bit 7 in ANALOG_CTRL_REG for TAS5720A-Q1 during probe (Jaroslav Kysela) [2179850] - ASoC: codecs: tas5720: add support for TAS5720A-Q1 (automotive) variant (Jaroslav Kysela) [2179850] - ASoC: codecs: tas5720: split a tas5720_mute_soc_component() function (Jaroslav Kysela) [2179850] - ASoC: topology: Use unload() op directly (Jaroslav Kysela) [2179850] - ASoC: topology: Unify kcontrol removal code (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unnecessary check for EOF (Jaroslav Kysela) [2179850] - ASoC: topology: Return an error on complete() failure (Jaroslav Kysela) [2179850] - ASoC: topology: Pass correct pointer instead of casting (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unnecessary forward declarations (Jaroslav Kysela) [2179850] - ASoC: topology: Rename remove_ handlers (Jaroslav Kysela) [2179850] - ASoC: topology: Fix function name (Jaroslav Kysela) [2179850] - ASoC: topology: Fix typo in functions name (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unused SOC_TPLG_PASS_PINS constant (Jaroslav Kysela) [2179850] - ASoC: topology: Properly access value coming from topology file (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Wait for debounce interval after resume (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Don't set idle_bias_on (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add SoundWire support (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Export some functions for SoundWire (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Separate ASP config from PLL config (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Ensure MCLKint is a multiple of the sample rate (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add SOFT_RESET_REBOOT register (Jaroslav Kysela) [2179850] - soundwire: stream: Add specific prep/deprep commands to port_prep callback (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Do not run the trigger pipelines if no spipe is stored (Jaroslav Kysela) [2179850] - ASoC: SOF: Protect swidget->use_count with mutex for kcontrol access race (Jaroslav Kysela) [2179850] - ASoC: SOF: Avoid double decrementing use_count in sof_widget_setup on error (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Protect pipeline free with mutex (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Implement pipeline trigger reference counting (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Rename 'data' variable to trigger_list (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce struct snd_sof_pipeline (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Use the PCM stream's pipeline_info during trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Populate the PCM stream pipeline_info (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add flag to skip triggering pipelines during FE DAI trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Define pcm_setup/free ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce PCM setup/free PCM IPC ops (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Set IPC-specific trigger order for DAI links (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: do not free widgets during suspend trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Only process widgets in the connected widget list (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Set up/free DAI/AIF widgets only once (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: Export widget_in_list() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: No need to unbind routes within a pipeline (Jaroslav Kysela) [2179850] - Documentation: sound: correct spelling (Jaroslav Kysela) [2179850] - treewide: fix up files incorrectly marked executable (Jaroslav Kysela) [2179850] - ASoC: cs42l56: fix DT probe (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add buffer type support (Jaroslav Kysela) [2179850] - ALSA: memalloc: Workaround for Xen PV (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: use different channel mask for each sdw amp feedback (Jaroslav Kysela) [2179850] - soundwire: bus_type: Avoid lockdep assert in sdw_drv_probe() (Jaroslav Kysela) [2179850] - soundwire: cadence: further simplify low-level xfer_msg_defer() callback (Jaroslav Kysela) [2179850] - soundwire: stream: use consistent pattern for freeing buffers (Jaroslav Kysela) [2179850] - soundwire: bus: Remove unused reset_page_addr() callback (Jaroslav Kysela) [2179850] - soundwire: bus: Don't zero page registers after every transaction (Jaroslav Kysela) [2179850] - ASoC: ts3a227e: add set_jack and get_jack_type (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: create jack inputs for aux_devs (Jaroslav Kysela) [2179850] - ASoC: soc-component: add get_jack_type (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify probe-component implementation (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: prepare_widgets: Check swidget for NULL on sink failure (Jaroslav Kysela) [2179850] - firewire: cdev: use single object to dispatch event for request to IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - firewire: cdev: obsolete NULL check to detect IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - firewire: core: use kref structure to maintain lifetime of data for fw_request structure (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: zero clear HDMI pdata (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: prevent underflow in sof_ipc4_priority_mask_dfs_write() (Jaroslav Kysela) [2179850] - soundwire: bus: remove sdw_defer argument in sdw_transfer_defer() (Jaroslav Kysela) [2179850] - soundwire: cadence: use directly bus sdw_defer structure (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add FIXED_RATE quirk for JBL Quantum610 Wireless (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs, speaker don't work for a HP platform (Jaroslav Kysela) [2179850] - ASoC: SOF: keep prepare/unprepare widgets in sink path (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: skip prepare/unprepare if swidget is NULL (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: unprepare when swidget->use_count > 0 (Jaroslav Kysela) [2179850] - ALSA: fireface: fix locking bug in ff400_copy_msg_to_user() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: start with the right widget type (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Set compress data offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for compress API for stream data/offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Prepare set_stream_data_offset for compress API (Jaroslav Kysela) [2179850] - ASoC: SOF: Prepare ipc_msg_data to be used with compress API (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: minor fix for allocation size (Jaroslav Kysela) [2179850] - firewire: fix memory leak for payload of request subaction to IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use asoc_substream_to_rtd() to obtain rtd (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use min_t instead of min with cast (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Correctly access topology fields (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Implement PCI shutdown (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix possible NULL pointer dereference in snd_usb_pcm_has_fixed_rate() (Jaroslav Kysela) [2179850] - ASoC: codecs: Aw88395 chip register file, data type file and Kconfig Makefile (Jaroslav Kysela) [2179850] - ASoC: codecs: Aw88395 function for ALSA Audio Driver (Jaroslav Kysela) [2179850] - ASoC: codecs: ACF bin parsing and check library file for aw88395 (Jaroslav Kysela) [2179850] - ASoC: codecs: Add i2c and codec registration for aw88395 and their associated operation functions (Jaroslav Kysela) [2179850] - regmap: sdw: Remove 8-bit value size restriction (Jaroslav Kysela) [2179850] - regmap: sdw: Update misleading comment (Jaroslav Kysela) [2179850] - ALSA: fireface: implement message parser for Fireface 400 (Jaroslav Kysela) [2179850] - ALSA: fireface: add local framework to message parser (Jaroslav Kysela) [2179850] - ALSA: fireface: update UAPI for data of knob control (Jaroslav Kysela) [2179850] - ALSA: fireface: add helper function to parse MIDI messages transmitted by Fireface 400 (Jaroslav Kysela) [2179850] - ALSA: fireface: pick up time stamp for request subaction of asynchronous transaction (Jaroslav Kysela) [2179850] - ALSA: fireface: rename callback functions (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_es8336: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_wm5102: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5651: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_es8316: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: amd: acp-es8336: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI support for new acer/emdoor platforms (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Spectre x360 13-aw0xxx (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: compute extra delay for runtime of PCM substream (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: obsolete return value from context payload processing layer (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: move parameter for pcm frame multiplier from context payload processing layer (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Support mt8188 platform (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: extend tracepoints event including CYCLE_TIME of 1394 OHCI (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Add a HP device 0x8715 to force connect list (Jaroslav Kysela) [2179850] - ALSA: control-led: use strscpy in set_led_id() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Always initialize fixed_rate in snd_usb_find_implicit_fb_sync_format() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Enable i2s tdm support for skyrim platforms (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add i2s tdm support in machine driver (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor i2s clocks programming sequence (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor dai format implementation (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add new cpu dai's in machine driver (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: keep history to process isochronous packet (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: use circular linked list for context payload processing layer (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: use circular linked list to enumerate packet descriptors (Jaroslav Kysela) [2179850] - ASoC: nau8315: remove dependency on GPIOLIB (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for cache position in sequence replay (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for cache position in tx packets (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for pool position in rx packets (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for helper functions to pool sequence in rx packets (Jaroslav Kysela) [2179850] - ALSA: aoa: make remove callback of soundbus driver void returned (Jaroslav Kysela) [2179850] - ALSA: ac97: make remove callback of ac97 driver void returned (Jaroslav Kysela) [2179850] - ASoC: amd: ps: Fix uninitialized ret in create_acp64_platform_devs() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Check runtime suspend capability at runtime_idle (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Don't return -EINVAL from system suspend/resume (Jaroslav Kysela) [2179850] - mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform (Jaroslav Kysela) [2179850] - ASoC: amd: ps: use static function (Jaroslav Kysela) [2179850] - ASoC: nau8822: add speaker Bridge Tied Output configuration (Jaroslav Kysela) [2179850] - ASoC: amd: ps: remove unused variable (Jaroslav Kysela) [2179850] - ASoC: amd: ps: use acp_lock to protect common registers in pdm driver (Jaroslav Kysela) [2179850] - ASoC: amd: ps: add mutex lock for accessing common registers (Jaroslav Kysela) [2179850] - ALSA: hda - Enable headset mic on another Dell laptop with ALC3254 (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_ssp_amp: remove unused variable (Jaroslav Kysela) [2179850] - ASoC: Intel: sof-wm8804: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: cht_bsw_rt5672: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: cht_bsw_rt5645: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_da7213: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_cx2072x: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: More refactoring of hw constraint rules (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Relax hw constraints for implicit fb sync (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Make sure to stop endpoints before closing EPs (Jaroslav Kysela) [2179850] - ALSA: hda/realtek - Turn on power early (Jaroslav Kysela) [2179850] - ASoC: rt9120: Make dev PM runtime bind AsoC component PM (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ASUS M5402RA into DMI table (Jaroslav Kysela) [2179850] - ASoC: wm8904: fix wrong outputs volume after power reactivation (Jaroslav Kysela) [2179850] - ASoC: rt711-sdca: add jack detection mode for JD2 100K (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: add variant with nau8318 amplifier. (Jaroslav Kysela) [2179850] - ASoC: amd: ps: move irq handler registration (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update dev index value in irq handler (Jaroslav Kysela) [2179850] - ASoC: amd: ps: refactor platform device creation logic (Jaroslav Kysela) [2179850] - ASoC: amd: ps: implement api to retrieve acp device config (Jaroslav Kysela) [2179850] - ASoC: Intel: fix sof-nau8825 link failure (Jaroslav Kysela) [2179850] - ASoC: Intel: sof-nau8825: fix module alias overflow (Jaroslav Kysela) [2179850] - ASoC: SOF: trace: No need to check for op pointer in sof_fw_trace_free() (Jaroslav Kysela) [2179850] - ASoC: SOF: trace: Use sof_ipc_get_ops() in sof_fw_trace_init (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-priv: Mark fw_tracing ops optional in documentation (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: control: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: Add helper macro to be used to get an IPC ops (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Update documentation for sof_ipc_tplg_ops (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Treat tplg_ops->route_setup() as optional (Jaroslav Kysela) [2179850] - ASoC: SOF: Add FW state to debugfs (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Always tear down pipelines before DSP suspend (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Set target state earlier (Jaroslav Kysela) [2179850] - ASoC: SOF: core: Print out the value of sof_debug if it is set (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC3 topology: Print the conflicting bytes sizes (Jaroslav Kysela) [2179850] - ASoC: wm8940: Read chip ID when wm8940 codec probing (Jaroslav Kysela) [2179850] - ASoC: wm8940: Rewrite code to set proper clocks (Jaroslav Kysela) [2179850] - ASoC: wm8940: Remove warning when no plat data present (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Razer Blade 14 2022 into DMI table (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add new quirk FIXED_RATE for JBL Quantum810 Wireless (Jaroslav Kysela) [2179850] - ASoC: lochnagar: Fix unused lochnagar_of_match warning (Jaroslav Kysela) [2179850] - soundwire: intel: remove DAI startup/shutdown (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: remove a redundant comparison of sram (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Peakvol module configuration (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Parse control tuples (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add control volume operations (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add peakvol runtime-parameter requests (Jaroslav Kysela) [2179850] - ASoC: Intel: Add HP Stream 8 to bytcr_rt5640.c (Jaroslav Kysela) [2179850] - ASoC: da7213: Add support for mono, set frame width to 32 when possible (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071 tablet (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: initialize panic_info to zero (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Enable cache for AMD Rembrandt platform (Jaroslav Kysela) [2179850] - ALSA: azt3328: Remove the unused function snd_azf3328_codec_outl() (Jaroslav Kysela) [2179850] - ASoC: SOF: nocodec: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: wl1273: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: mc13783: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: cq93vc: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: bt-sco: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: adau7002: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: ac97: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: 88pm860x: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: atmel-pdmic: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: atmel-classd: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: amd: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: SOF: Revert: "core: unregister clients and machine drivers in .shutdown" (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: unblock S5 entry if DMA stop has failed" (Jaroslav Kysela) [2179850] - ASoC: rt5640: Allow configuration of LOUT to mono differential mode (Jaroslav Kysela) [2179850] - ALSA: hda: Error out if invalid stream is being setup (Jaroslav Kysela) [2179850] - ASoC: soc-compress: Reposition and add pcm_mutex (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_realtek_common: set ret = 0 as initial value (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: add jsl_rt5682 board config (Jaroslav Kysela) [2179850] - ALSA: hda/cirrus: Add extra 10 ms delay to allow PLL settle and lock. (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Workaround for XRUN at prepare (Jaroslav Kysela) [2179850] - ALSA: pcm: Handle XRUN at trigger START (Jaroslav Kysela) [2179850] - ASoC : SOF: amd: Add support for IPC and DSP dumps (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Use poll function instead to read ACP_SHA_DSP_FW_QUALIFIER (Jaroslav Kysela) [2179850] - ASoC: imx-audmux: use sysfs_emit() to instead of scnprintf() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Use SG allocation for SKL-based firmware load (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Introduce single place for pipe-config selection (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Drop pipe_config_idx (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Remove skl_tplg_is_multi_fmt() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Update pipe_config_idx before filling BE params (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd-clsh: Remove the unused function (Jaroslav Kysela) [2179850] - ASoC: rt715: Make read-only arrays capture_reg_H and capture_reg_L static const (Jaroslav Kysela) [2179850] - soundwire: cadence: Drain the RX FIFO after an IO timeout (Jaroslav Kysela) [2179850] - soundwire: cadence: Remove wasted space in response_buf (Jaroslav Kysela) [2179850] - soundwire: cadence: Don't overflow the command FIFOs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Allow for dumping debug window snapshot (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Allow for dumping FW_REGS area (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Gather remaining logs on strace_release() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Probing and firmware tracing over debugfs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add probe machine board (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Data probing soc-component (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Probe compress operations (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add data probing requests (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop usage of debug members in non-debug code (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Make enable_logs() dependent on DEBUG_FS (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce debug-context aware helpers (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop fifo_lock (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce avs_log_buffer_status_locked() (Jaroslav Kysela) [2179850] - ALSA: hda: Interrupt servicing and BDL setup for compress streams (Jaroslav Kysela) [2179850] - ALSA: hda: Prepare for compress stream support (Jaroslav Kysela) [2179850] - ALSA: hda: Allow for compress stream to hdac_ext_stream assignment (Jaroslav Kysela) [2179850] - ALSA: dice: Remove left-over license text (Jaroslav Kysela) [2179850] - drm: tda99x: Don't advertise non-existent capture support (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: Allow playback and capture to be disabled (Jaroslav Kysela) [2179850] - ALSA: dice: add support for Focusrite Saffire Pro 40 with TCD3070 ASIC (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add quirk for Tascam Model 12 (Jaroslav Kysela) [2179850] - ASoC: SOF: Add DAI configuration support for AMD platforms. (Jaroslav Kysela) [2179850] - ASoC: rt5640: Fix Jack work after system suspend (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: Clear DAIs parameters after stream_active is updated (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add shutdown callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Drop obsolete dependency on COMPILE_TEST (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt298: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt298: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt286: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt286: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt274: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt274: Refer to DAI name through a constant (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: nau8825: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: da7219: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: bdw_rt286: Refactor jack handling (Jaroslav Kysela) [2179850] - ALSA: pcm: fix tracing reason in hw_ptr_error (Jaroslav Kysela) [2179850] - soundwire: stream: Move remaining register accesses over to no_pm (Jaroslav Kysela) [2179850] - soundwire: debugfs: Switch to sdw_read_no_pm (Jaroslav Kysela) [2179850] - soundwire: Provide build stubs for common functions (Jaroslav Kysela) [2179850] - soundwire: bus: export sdw_nwrite_no_pm and sdw_nread_no_pm functions (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Rename KConfig symbol CS_DSP -> FW_CS_DSP (Jaroslav Kysela) [2179850] - ASoC: nau8315: add new acpi id and compatible id (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Return whether changed when writing controls (Jaroslav Kysela) [2179850] - firmware: cs_dsp: cs_dsp_coeff_write_ctrl() should report changed (Jaroslav Kysela) [2179850] - ASoC: sdw-mockup: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt715: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt711: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt700: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt5682-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt1316-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: max98373-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - sound: sdw: Add hw_params to SoundWire config helper function (Jaroslav Kysela) [2179850] - ASoC: max9867: Implement exact integer mode (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: ADD HS and SP virtual DAI. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for selecting clock source as external clock. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for reading position updates from stream box. (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add a manually mechanism for detection failure (Jaroslav Kysela) [2179850] - ASoC: nau8825: Adjust internal clock during jack detection (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing audio amplifier for KBL (Jaroslav Kysela) [2179850] - ALSA: pcm: fix undefined behavior in bit shift for SNDRV_PCM_RATE_KNOT (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix Kconfig dependency (Jaroslav Kysela) [2179850] - ASoC: da7219: Fix pole orientation detection on OMTP headsets when playing music (Jaroslav Kysela) [2179850] - ASoC: max98396: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: ppc: keywest: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: aoa: tas: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: aoa: onyx: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - mfd: arizona-i2c: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Initialize private data for subsequent HDA FEs (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Fix possible UAF in acp_dma_open (Jaroslav Kysela) [2179850] - soundwire: enable optional clock registers for SoundWire 1.2 devices (Jaroslav Kysela) [2179850] - ASoC/soundwire: remove is_sdca boolean property (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw_amp: mark coeff tables with __maybe_unused (Jaroslav Kysela) [2179850] - ASoC: SOF: dai: move AMD_HS to end of list to restore backwards-compatibility (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: support rt1015p speaker amplifier (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Check ops before memory allocation (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Disconnect substream if suspend or resume fails (Jaroslav Kysela) [2179850] - ASoC: amd: ps: Move acp63_dev_data strcture from PCI driver (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update macros with ps platform naming convention (Jaroslav Kysela) [2179850] - ALSA: pcm: avoid nused-but-set-variable warning (Jaroslav Kysela) [2179850] - ALSA: memalloc: Allocate more contiguous pages for fallback case (Jaroslav Kysela) [2179850] - ASoC: codecs: Remove a useless include (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: remove Experimental announce (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: read multi-link capabilities earlier (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove check on number of links (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove sdw_intel_enable_irq() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add callback to check SoundWire lcount information (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: move SoundWire interrupt enabling to callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: factor interrupt enable/disable interrupt functions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add per-chip enable_sdw_irq() callback (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove useless interrupt enablement in interrupt thread (Jaroslav Kysela) [2179850] - soundwire: intel: split auxdevice to different file (Jaroslav Kysela) [2179850] - soundwire: intel: add in-band wake callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add link power management callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add bus management callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add register_dai callback in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add debugfs callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: start using hw_ops (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: add MTL AIC SoundWire configurations (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Allow client to hook into pre_run callback (Jaroslav Kysela) [2179850] - ASoC: rt1316-sdw: get BQ params property and apply them (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: get BQ params property and apply them (Jaroslav Kysela) [2179850] - ASoC: Intel: sof rt5682: remove the duplicate codes (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: add support for ALC5682I-VD with amp rt1019p (Jaroslav Kysela) [2179850] - ASoC: core: fix wrong size kzalloc for rtd's components member (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: get pipeline instance id from pipe_widget->instance_id (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: get max pipeline number (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: rename sof_ipc4_widget_free_comp (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: set d0i3 register with d0i3_offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add d0i3_offset in chip_info (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add d0i3 definition for MTL (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Add helper to get/put widget queue id (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support to parse pin binding array from topology (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for parsing the number of sink/source pins (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Implement tear_down_all_pipelines callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: use small buffer for iccmax stream (Jaroslav Kysela) [2179850] - ALSA: cs5535audio: Remove the redundant assignment (Jaroslav Kysela) [2179850] - ASoC: soc-dai: Do not call snd_soc_link_be_hw_params_fixup() twice (Jaroslav Kysela) [2179850] - ASoC: amd: fix ACP version typo mistake (Jaroslav Kysela) [2179850] - ASoC: Intel: cirrus-common: Make const array uid_strings static (Jaroslav Kysela) [2179850] - ARM: omap2: n8x0: stop instantiating codec platform data (Jaroslav Kysela) [2179850] - ASoC: tlv320aic3x: switch to using gpiod API (Jaroslav Kysela) [2179850] - ASoC: tlv320aic3x: remove support for platform data (Jaroslav Kysela) [2179850] - ASoC: rt5682: Support DBVDD and LDO1-IN supplies (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Support DBVDD and LDO1-IN supplies (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: check also dpcm node for convert-xxx (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2-custom-sample.dtsi: add convert-rate for DPCM (MIXer) (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: remove asoc_simple_convert_fixup() (Jaroslav Kysela) [2179850] - soundwire: cadence: use dai_runtime_array instead of dma_data (Jaroslav Kysela) [2179850] - soundwire: cadence: rename sdw_cdns_dai_dma_data as sdw_cdns_dai_runtime (Jaroslav Kysela) [2179850] - ASoC: cs42xx8-i2c.c: add module device table for of (Jaroslav Kysela) [2179850] - ALSA: hda: clarify comments on SCF changes (Jaroslav Kysela) [2179850] - ASoC: SOF: fix compilation issue with readb/writeb helpers (Jaroslav Kysela) [2179850] - ASoC: codecs: da7219: Do not export internal symbols (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: amd: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: rockchip: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: codecs: da7219: Introduce set_jack() callback (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: probes: Implement IPC4 ops for probes client device (Jaroslav Kysela) [2179850] - ASoC: SOF: client: Add sof_client_ipc4_find_module() function (Jaroslav Kysela) [2179850] - ASoC: SOF: client: Add sof_client_ipc_set_get_data() (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Separate IPC3 operations to a separate file (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Replace [0] union members with DECLARE_FLEX_ARRAY() (Jaroslav Kysela) [2179850] - ASoC: adau1372: correct PGA enable & mute bit (Jaroslav Kysela) [2179850] - ASoC: adau1372: add support for S24_LE mode (Jaroslav Kysela) [2179850] - ASoC: adau1372: fix mclk (Jaroslav Kysela) [2179850] - ASoC: SOF: introduce new DEBUG_NOCODEC mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: use GPL-2.0-only license (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: clarify Kconfig dependencies (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add hda_bus_ml_free helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to suspend/resume links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: clarify bus_init and bus_exit sequences (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add helpers to suspend and resume cmd_io (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: clarify dependencies on SND_SOC_SOF_HDA (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: use helper to clear RIRB status (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add hda_codec_check_rirb_status() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: always allocate CORB/RIRB buffer (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add stop_cmd_io helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add hda_codec_device_remove() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: add codec wakeup helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: move all RIRB/CMD_IO helpers to hda-codec.c (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add multi-link helper for LOSVID (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: start moving multi-link handling in dedicated file (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: move codec state change to hda-codec.c (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: simplify SND_SOC_SOF_HDA_AUDIO_CODEC handling (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove all dependencies on SND_SOC_HDAC_HDMI (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove option to disable the common_hdmi handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Enact power gating policy (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Power and clock gating policy overriding (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Standby power-state support (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Count low power streams (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Restart instead of resuming HDA capture streams (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Handle SUSPEND and RESUME triggers (Jaroslav Kysela) [2179850] - ALSA: hda: Introduce snd_hdac_stream_wait_drsm() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce PCM power management routines (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Split pcm pages freeing operation from hw_free() (Jaroslav Kysela) [2179850] - ASoC: core: Exit all links before removing their components (Jaroslav Kysela) [2179850] - ASoC: tas5805m: add missing page switch. (Jaroslav Kysela) [2179850] - ASoC: tas5805m: rework to avoid scheduling while atomic. (Jaroslav Kysela) [2179850] - soundwire: qcom: add support for v1.7 Soundwire Controller (Jaroslav Kysela) [2179850] - soundwire: qcom: make reset optional for v1.6 controller (Jaroslav Kysela) [2179850] - soundwire: qcom: remove unused SWRM_SPECIAL_CMD_ID (Jaroslav Kysela) [2179850] - ASoC: dapm: Don't use prefix for regulator name (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Return ssize_t from sof_ipc4_fw_parse_ext_man() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: boards: Fix typo in comments (Jaroslav Kysela) [2179850] - ASoC: Intel: boards: Fix typo in comments (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use readb/writeb for stream registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use snd_sof_dsp_updateb() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: use SOF helper for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: rename CL_SD_CTL registers as SD_CTL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use SOF helpers for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: remove useless check on GCTL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: always do a full reset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: remove useless sleep (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: remove useless members in hda_pipe_params (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: use component_get_drvdata to find hdac_bus (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: start removing the use of runtime->private_data in BE (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: use SOF helpers for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: add snd_sof_dsp_updateb() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: add readb/writeb helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: use mmio fallback for all platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: fallback to mmio in helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: fix comment error (Jaroslav Kysela) [2179850] - ALSA: asihpi: remove variable loops (Jaroslav Kysela) [2179850] - ALSA: rawmidi: remove variable dest_frames (Jaroslav Kysela) [2179850] - mfd: arizona: Remove #ifdef guards for PM related functions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: fix possible memory leak in hda_codec_device_init() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: fix possible memory leak in skl_codec_device_init() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Support for loading external libraries (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Remove the query_fw_configuration ops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Stop using the query_fw_configuration fw_loader ops (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Add support for IPC dependent post firmware boot ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add ipc4 library loading implementation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add flag to indicate that the firmware is IMR booted (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Define platform dependent library loading callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Set the default firmware library path for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Add path definition for external firmware libraries (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: Add helper for looking up module by UUID (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Convert the firmware handling (loader) to library convention (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Save the maximum number of libraries supported (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc: ops: Add support for optional init and exit callbacks (Jaroslav Kysela) [2179850] - ASoC: SOF: Drop the firmware and fw_offset from snd_sof_pdata (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader-skl: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce container struct for SOF firmware (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Set complete state before post_fw_run op (Jaroslav Kysela) [2179850] - soundwire: intel: Initialize clock stop timeout (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: move SPIB/DRMS functionality from ext layer (Jaroslav Kysela) [2179850] - ALSA: hda: hdac_ext_controller: remove useless loop (Jaroslav Kysela) [2179850] - ALSA: hda: ext: reduce ambiguity between 'multi-link' and 'link' DMA (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: add 'bus' prefix for multi-link stream setting (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: remove 'link' prefix for stream-related operations (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: add 'ext' prefix to snd_hdac_link_free_all (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: use hlink variable/parameter (Jaroslav Kysela) [2179850] - ALSA: hda: ext: hda_ext_controller: use hlink variable/parameter (Jaroslav Kysela) [2179850] - ALSA: hda: ext: hdac_ext_controller: use helpers in loop (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: update the preset settings (Jaroslav Kysela) [2179850] - ASoC: simple-card: Fix up checks for HW param fixups (Jaroslav Kysela) [2179850] - ASoC: soc-dpcm.h: remove snd_soc_dpcm::hw_param (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: fixup comment for snd_soc_dapm_widget_for_each_path() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: cleanup white space (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: numerical order for dapm_up_seq (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: cleanup snd_soc_dapm_new_dai() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: merge dapm_power_one_widget() and dapm_widget_set_power() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: cleanup dapm_widget_set_power() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: ignore parameter NULL at snd_soc_dapm_free_widget() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: remove no meaning variable from snd_soc_dapm_add_path() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup error handling on snd_soc_dapm_add_route() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: replace snd_soc_dapm_wcache to snd_soc_dapm_widget (Jaroslav Kysela) [2179850] - ASoC: twl4030: make read-only array ramp_base static const (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3: Log the tx message before sending it (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Ack a received reply or notification separately (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Wait for channel to be free before sending a message (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Read the interrupt reason registers at the same time (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Log the tx message before sending it (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add TDM slots setting support for ACP I2S controller (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: protect per-core nodes against multiple open (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add quirk variant for LAPBC710 NUC15 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: add missed microphone widgets (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: add missed Mixer inputs (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: use right control for Master Playback (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: simplify the return of comp_bind() (Jaroslav Kysela) [2179850] - ASoC: ak4458: add optional reset control to instead of gpio (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Support System Suspend (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Remove suspend/resume hda hooks (Jaroslav Kysela) [2179850] - ALSA: hda/cs_dsp_ctl: Fix mutex inversion when creating controls (Jaroslav Kysela) [2179850] - ALSA: hda: hda_cs_dsp_ctl: Ensure pwr_lock is held before reading/writing controls (Jaroslav Kysela) [2179850] - ALSA: hda: hda_cs_dsp_ctl: Minor clean and redundant code removal (Jaroslav Kysela) [2179850] - ASoC: codecs: hda: Fix spelling error in log message (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify log control for SKL (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify ignore_fw_version description (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not print IPC error message twice (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not treat unsupported IPCs as invalid (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not reuse msg between different IPC handlers (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing include to HDA board (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify d0ix disabling routine (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing SKL-based device IDs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Support da7219 on both KBL and APL (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Support AML with rt286 configuration (Jaroslav Kysela) [2179850] - ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe" (Jaroslav Kysela) [2179850] - ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe" (Jaroslav Kysela) [2179850] - ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe" (Jaroslav Kysela) [2179850] - ASoC: amd: Update Pink Sardine platform ACP register header (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Avoid superfluous endpoint setup (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Correct the return code from snd_usb_endpoint_set_params() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Apply mutex around snd_usb_endpoint_set_params() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Avoid unnecessary interface change at EP close (Jaroslav Kysela) [2179850] - ASoC: cx2072x: fix spelling typo in comment (Jaroslav Kysela) [2179850] - ALSA: hda: Update register polling macros (Jaroslav Kysela) [2179850] - Revert "ASoC: soc-component: using pm_runtime_resume_and_get instead of pm_runtime_get_sync" (Jaroslav Kysela) [2179850] - ASoC: codecs: allow WM8961 to be selected by the user (Jaroslav Kysela) [2179850] - ASoC: wm8961: add support for devicetree (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Load max98927 on target platform (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add max98927 machine board (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add TDM support (Jaroslav Kysela) [2179850] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2179850] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2179850] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2179850] - ASoC: core: clarify the driver name initialization (Jaroslav Kysela) [2179850] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2179850] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2179850] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2179850] - ALSA: asihpi - Remove unused struct hpi_subsys_response (Jaroslav Kysela) [2179850] - ALSA: sb: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: wm8978: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: cs35l36: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Fallback to headphones for type detect (Jaroslav Kysela) [2179850] - ASoC: uapi: Replace zero-length arrays with __DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: control.h: Replace zero-length array with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - usb: gadget: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ASoC: intel: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: usx2y: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: asihpi: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: hda: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: firewire: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: aloop: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: pcm: Make mmap status read-only (Jaroslav Kysela) [2179850] - ALSA: pcm: Avoid reference to status->state (Jaroslav Kysela) [2179850] - ALSA: Remove some left-over license text in include/uapi/sound/ (Jaroslav Kysela) [2179850] - ALSA: firewire: Remove some left-over license text in sound/firewire (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add pcm_pointer callback (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add pcm_hw_params callback (Jaroslav Kysela) [2179850] - ALSA: memalloc: use __GFP_RETRY_MAYFAIL for DMA mem allocs (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Call snd_sof_handle_fw_exception() in case of timeout (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Only dump firmware registers for IPC3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: Print relevant register in ipc_dump (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: skl: Use the ipc4 version of the ipc_dump (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add separate ops for ipc_dump for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: cnl: Add separate ops for ipc_dump for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: remove the unnecessary snd_sof_dsp_read() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: reuse the common ops for PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: HDA: use IPC version-specific ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: define and set the disable_interrupts op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: define and set the disable_interrupts op for cavs platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add a new op for disabling interrupts (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: use power_down_dsp op in hda_dsp_remove (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: define and set power_down_dsp op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: define and set power_down_dsp op for HDA platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: introduce new op to handle dsp power down (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_da7219_mx98360a: Access num_codecs through dai_link (Jaroslav Kysela) [2179850] - ASoC: soc-component: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132 - remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: SOF: pci-tgl: add missing PCI IDs for RPL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: reorder PCI IDs (Jaroslav Kysela) [2179850] - ASoC: es8316: fix register sync error in suspend/resume tests (Jaroslav Kysela) [2179850] - ASoC: cs42l83: change cs42l83_regmap to static (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add pcm_pointer callback for mt8186 (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add setbias level for rt5682s codec in machine driver (Jaroslav Kysela) [2179850] - ASoC: ts3a227e: add parameters to control debounce times (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Split endpoint setups for hw_params and prepare (take#2) (Jaroslav Kysela) [2179850] - ASoC: rt5682s: simplify the return of rt5682s_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: don't unprepare widget used other pipelines (Jaroslav Kysela) [2179850] - ASoC: SOF: clear prepare state when widget is unprepared (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: remove useless assignment (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: clarify calculation precedence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add ops for SKL/KBL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add initial SKL/KBL hardware support (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add SKL/KBL hardware code loader (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: expose functions for SKL support (Jaroslav Kysela) [2179850] - ALSA: es18xx: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: soc.h: use array instead of playback/capture_widget (Jaroslav Kysela) [2179850] - ASoC: soc.h: use defined number instead of direct number (Jaroslav Kysela) [2179850] - ASoC: soc.h: remove num_cpus/codecs (Jaroslav Kysela) [2179850] - soundwire: intel: add helper to stop bus (Jaroslav Kysela) [2179850] - soundwire: intel: introduce helpers to start bus (Jaroslav Kysela) [2179850] - soundwire: intel: introduce intel_shim_check_wake() helper (Jaroslav Kysela) [2179850] - soundwire: intel: simplify read ops assignment (Jaroslav Kysela) [2179850] - soundwire: intel: remove intel_init() wrapper (Jaroslav Kysela) [2179850] - soundwire: intel: move shim initialization before power up/down (Jaroslav Kysela) [2179850] - soundwire: intel: remove clock_stop parameter in intel_shim_init() (Jaroslav Kysela) [2179850] - soundwire: intel: move all PDI initialization under intel_register_dai() (Jaroslav Kysela) [2179850] - soundwire: intel: move DAI registration and debugfs init earlier (Jaroslav Kysela) [2179850] - soundwire: intel: simplify flow and use devm_ for DAI registration (Jaroslav Kysela) [2179850] - soundwire: intel: fix error handling on dai registration issues (Jaroslav Kysela) [2179850] - ASoC: SOF: replace ipc4-loader dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: replace dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: replace dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: remove unneeded dev_vdbg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove unneeded dev_vdbg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add HDA interrupt source tracing (Jaroslav Kysela) [2179850] - ASoC: SOF: add widget setup/free tracing (Jaroslav Kysela) [2179850] - ALSA: hda: ext: remove always-true conditions on host and link release (Jaroslav Kysela) [2179850] - ALSA: hda: ext: fix locking in stream_release (Jaroslav Kysela) [2179850] - ALSA: hda: ext: simplify logic for stream assignment (Jaroslav Kysela) [2179850] - ALSA: hda: Use hdac_ext prefix in snd_hdac_stream_free_all() for clarity (Jaroslav Kysela) [2179850] - ALSA: hda: ext: make snd_hdac_ext_stream_init() static (Jaroslav Kysela) [2179850] - ALSA: hda: document state machine for hdac_streams (Jaroslav Kysela) [2179850] - ALSA: hda: make snd_hdac_stream_clear() static (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: override mclk_id after parsing NHLT SSP blob (Jaroslav Kysela) [2179850] - ALSA: hda: intel-nhlt: add intel_nhlt_ssp_mclk_mask() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: refine SSP count support (Jaroslav Kysela) [2179850] - soundwire: cadence: Simplify error paths in cdns_xfer_msg() (Jaroslav Kysela) [2179850] - soundwire: cadence: Fix error check in cdns_xfer_msg() (Jaroslav Kysela) [2179850] - soundwire: bus: Fix wrong port number in sdw_handle_slave_alerts() (Jaroslav Kysela) [2179850] - soundwire: cadence: Write to correct address for each FIFO chunk (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add pcm_hw_params callback for mt8186 (Jaroslav Kysela) [2179850] - ALSA: ppc: Switch to use for_each_child_of_node() macro (Jaroslav Kysela) [2179850] - ASoC: Intel: skylake: remove unnecessary dev_set_drvdata() (Jaroslav Kysela) [2179850] - soundwire: qcom: do not send status of device 0 during alert (Jaroslav Kysela) [2179850] - soundwire: qcom: update status from device id 1 (Jaroslav Kysela) [2179850] - ASoC: max98390: Fix dsm calibration reading (Jaroslav Kysela) [2179850] - soundwire: cadence: Don't overwrite msg->buf during write commands (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_ssp_amp: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASOC: SOF: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_es8336: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_cs42l42: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Switch to dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Implement 'set_bclk_ratio' (Jaroslav Kysela) [2179850] - ASoC: cs42l83: Extend CS42L42 support to new part (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Export regmap elements to core namespace (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split I2C identity into separate module (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Pass component and dai defs into common probe (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split cs42l42_resume into two functions (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split probe() and remove() into stages (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Use cs42l42->dev instead of &i2c_client->dev (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add bitclock frequency argument to cs42l42_pll_config() (Jaroslav Kysela) [2179850] - soundwire: bus: Don't exit early if no device IDs were programmed (Jaroslav Kysela) [2179850] - soundwire: cadence: Fix lost ATTACHED interrupts when enumerating (Jaroslav Kysela) [2179850] - soundwire: bus: Don't re-enumerate before status is UNATTACHED (Jaroslav Kysela) [2179850] - soundwire: bus: Don't lose unattach notifications (Jaroslav Kysela) [2179850] - soundwire: cadence: fix updating slave status when a bus has multiple peripherals (Jaroslav Kysela) [2179850] - ASoC: soc-dapm: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: bcm2835-i2s: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: increase SRAM inbox and outbox size to 1024 (Jaroslav Kysela) [2179850] - ASoC: SOF: Adding amd HS functionality to the sof core (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Add support for Rembrandt plaform. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Make ACP core code generic for newer SOC transition (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add ADCOUT IO drive strength control (Jaroslav Kysela) [2179850] - ASoC: ak4458: Add ak4458_reset in device probe and remove (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: remove SOF_RT1015_SPEAKER_AMP_100FS flag (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of PLLB setting (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of I2S1 setting (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of Micbias and Vref2 settings (Jaroslav Kysela) [2179850] - ALSA: dummy: Add customizable volume min/max. (Jaroslav Kysela) [2179850] - ALSA: dummy: Fix trailing whitespaces. (Jaroslav Kysela) [2179850] - soundwire: cadence: remove unused sdw_cdns_master_ops declaration (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add mtrace type information for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: icl: Set IPC4-specific DSP ops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add support for mtrace log extraction (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Configure the debug box offset (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add define for the outbox window index (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macro to get core ID from log buffer status message (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Only print LOG BUFFER update message info if requested (Jaroslav Kysela) [2179850] - sound: oss: dmasound: remove software_input_volume declaration (Jaroslav Kysela) [2179850] - ALSA: memalloc: remove snd_dma_sg_ops declaration (Jaroslav Kysela) [2179850] - ALSA: line6: remove line6_set_raw declaration (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec.c: use devm_kzalloc() for DMA data (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: setup rtd->pmdown_time at soc_new_pcm_runtime() (Jaroslav Kysela) [2179850] - ASoC: ak4458: Remove component probe() and remove() (Jaroslav Kysela) [2179850] - ASoC: max98390: Remove unnecessary amp on/off conrtol (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: add comment for kzalloc()/kfree() on snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ASoC: sti-sas: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: switch to using gpiod API (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add devicetree support to select topologies (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add generic pcm_{open,close} callbacks (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add mailbox generic callbacks for IPC (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: fixup snd_soc_dapm_new_control_unlocked() error handling (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: don't use WARN_ON() at snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Utilize acpi_get_subsystem_id() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Call put_device() in the scope of get_device() (Jaroslav Kysela) [2179850] - ASoC: SOF: Remove strsplit_u32() and tokenize_input() (Jaroslav Kysela) [2179850] - lib/string_helpers: Introduce parse_int_array_user() (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce function sof_of_machine_select (Jaroslav Kysela) [2179850] - ALSA: asihpi - Remove useless code in hpi_meter_get_peak() (Jaroslav Kysela) [2179850] - ASoC: amd: fix spelling mistake: "i.e" -> "i.e." (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: check fe condition at out of loop (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: add soc_pcm_ret() (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: remove unnecessary codec2codec_close_delayed_work() (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Replace zero-length array with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: codecs: max98088: remove redundant ret variable (Jaroslav Kysela) [2179850] - ASoC: amd: enable Pink sardine platform machine driver build. (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine machine driver using dmic (Jaroslav Kysela) [2179850] - ASoC: amd: create platform device for acp6.2 machine driver (Jaroslav Kysela) [2179850] - ASoC: amd: enable Pink Sardine acp6.2 drivers build (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm driver pm ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pci driver pm ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm driver dma ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 irq handler (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm platform driver (Jaroslav Kysela) [2179850] - ASoC: amd: add platform devices for acp6.2 pdm driver and dmic driver (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 init/de-init functions (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine ACP PCI driver (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine platform ACP IP register header (Jaroslav Kysela) [2179850] - ASoC: max98396: Make data monitor features configurable (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Modify dai_id macros to be more generic (Jaroslav Kysela) [2179850] - ASoC: tas2562: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2179850] - ASoC: tas2764: Export highpass filter setting (Jaroslav Kysela) [2179850] - ASoC: tas2764: Add IRQ handling (Jaroslav Kysela) [2179850] - ASoC: sigmadsp: switch to use kmemdup_nul() helper (Jaroslav Kysela) [2179850] - ASoC: max98088: add support for noise gate reg (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Use generic implementation for .ipc_msg_data field (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add snd_sof_dsp_ops callbacks for pcm and mail box (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Add dai driver for mt8186 (Jaroslav Kysela) [2179850] - ASoC: codecs: add suspend and resume for ES8316 (Jaroslav Kysela) [2179850] - ASoC: SOF: imx8ulp: add missing of_node_put() in imx8ulp_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: imx: imx8ulp: declare ops structure as static (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Skip IMR boot after a firmware crash or boot failure (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Verify ext manifest magic number (Jaroslav Kysela) [2179850] - ASoC: SOF: Kconfig: Make IPC_MESSAGE_INJECTOR depend on SND_SOC_SOF (Jaroslav Kysela) [2179850] - ASoC: SOF: Kconfig: Make IPC_FLOOD_TEST depend on SND_SOC_SOF (Jaroslav Kysela) [2179850] - ALSA: memalloc: Drop special handling of GFP for CONTINUOUS allocation (Jaroslav Kysela) [2179850] - ASoC: Intel: sst: Switch to standard device pages (Jaroslav Kysela) [2179850] - ALSA: pdaudiocf: Drop superfluous GFP setup (Jaroslav Kysela) [2179850] - ALSA: vx: Drop superfluous GFP setup (Jaroslav Kysela) [2179850] - ASoC: atmel_ssc_dai: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup WakeEnable and WakeStatus (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup AC Timing Control (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup IO control (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup PCM Stream channel map and channel count (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup PCM stream capabilities (Jaroslav Kysela) [2179850] - soundwire: intel: add comment for control stream cap/chmap (Jaroslav Kysela) [2179850] - soundwire: intel: remove unused PDM capabilities (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup SHIM SYNC (Jaroslav Kysela) [2179850] - soundwire: intel: remove IPPTR unused definition (Jaroslav Kysela) [2179850] - soundwire: intel: regroup definitions for LCTL (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup definition of LCOUNT (Jaroslav Kysela) [2179850] - soundwire: intel: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2179850] - soundwire: bus: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2179850] - soundwire: intel: set dev_num_ida_min (Jaroslav Kysela) [2179850] - soundwire: bus: allow device number to be unique at system level (Jaroslav Kysela) [2179850] - soundwire: bus: rename sdw_ida as sdw_bus_ida (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add remapping for HP Omen 16-k0005TX (Jaroslav Kysela) [2179850] - ALSA: hda: cleanup definitions for multi-link registers (Jaroslav Kysela) [2179850] - ASoC: wcd9335: remove always-true condition (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: remove unused definitions (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Remove dai_posn variable (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Add copy function for capture case (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Move sof_compr_copy functionality (Jaroslav Kysela) [2179850] - ASoC: Intel: fix unused-variable warning in probe_codec (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: summarize related settings at soc_new_pcm() (Jaroslav Kysela) [2179850] - ASoC: SOF: Fix compilation when HDA_AUDIO_CODEC config is disabled (Jaroslav Kysela) [2179850] - ASoC: amd: acp: add a label to make error path more clean (Jaroslav Kysela) [2179850] - ASoC: amd: acp: switch to use dev_err_probe() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: remove unnecessary NULL checks (Jaroslav Kysela) [2179850] - ASoC: Change handling of unimplemented set_bclk_ratio (Jaroslav Kysela) [2179850] - ALSA: hda: Remove unused defines (Jaroslav Kysela) [2179850] - ALSA: hda: Remove unused MAX_PIN_CONFIGS constant (Jaroslav Kysela) [2179850] - ALSA: hda: Rework snd_hdac_stream_reset() to use macros (Jaroslav Kysela) [2179850] - ALSA: hda: Move stream-register polling macros (Jaroslav Kysela) [2179850] - ASoC: SOF: imx: Add i.MX8ULP HW support (Jaroslav Kysela) [2179850] - ASoC: soc-utils-test: Add test for snd_soc_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Use snd_soc_tdm_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Fix comment typo in cs42l42_slow_start_put() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Move cs42l42_supply_names to .c file (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add include dependencies to cs42l42.h (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Don't include kernel.h (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: change es8326_regmap_config to static (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Add support for computing timestamps (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Save channel count and sample bytes (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Introduce sof_compr_stream (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Remove byte offset computation (Jaroslav Kysela) [2179850] - soundwire: intel: Remove unnecessary TODO (Jaroslav Kysela) [2179850] - ASoC: Variable type completion (Jaroslav Kysela) [2179850] - ASoC: core: remove setting platform_max in kcontrol macros (Jaroslav Kysela) [2179850] - ALSA: hda: Fix page fault in snd_hda_codec_shutdown() (Jaroslav Kysela) [2179850] - ALSA: hda: Remove codec init and exit routines (Jaroslav Kysela) [2179850] - ALSA: hda: Always free codec on the device release (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop hdac_ext usage for codec device creation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Introduce HDA codec init and exit routines (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Introduce HDA codec init and exit routines (Jaroslav Kysela) [2179850] - ASoC: codecs: add support for ES8326 (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop legacy HSW/BDW board-match information (Jaroslav Kysela) [2179850] - ASoC: Intel: catpt: Drop SND_SOC_ACPI_INTEL_MATCH dependency (Jaroslav Kysela) [2179850] - ASoC: Intel: bdw_rt286: Rename module (Jaroslav Kysela) [2179850] - ASoC: Intel: hsw_rt5640: Rename module (Jaroslav Kysela) [2179850] - ASoC: soc-utils: Improve kerneldoc for snd_soc_tdm_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add TDM support for acp i2s stream (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Initialize list to store acp_stream during pcm_open (Jaroslav Kysela) [2179850] - ASoC: Variable type completion (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: Fixup DAI sample format (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Add sof_mt8186_machs for mt8186 (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce function sof_of_machine_select (Jaroslav Kysela) [2179850] - ASoC: omap: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: DAPM: Replace sprintf() calls with sysfs_emit_at() (Jaroslav Kysela) [2179850] - ASoC: core: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: skylake: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: catpt: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: sst: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: tlv320aic26: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: cs43130: Replace scnprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ALSA: aoa: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ALSA: ac97: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: cirrus-common: Use UID to map correct amp to prefix (Jaroslav Kysela) [2179850] - ASoC: codecs: show PING status on resume failures (Jaroslav Kysela) [2179850] - soundwire: add sdw_show_ping_status() helper (Jaroslav Kysela) [2179850] - soundwire: intel/cadence: expose PING status in manager ops (Jaroslav Kysela) [2179850] - soundwire: add read_ping_status helper definition in manager ops (Jaroslav Kysela) [2179850] - soundwire: qcom: Update error prints to debug prints (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Drop no longer used ROM state definitions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: Use the FSR state definitions during bootup (Jaroslav Kysela) [2179850] - ALSA: wavefront: remove redundant assignment to pointer end (Jaroslav Kysela) [2179850] - soundwire: Use acpi_dev_for_each_child() (Jaroslav Kysela) [2179850] - firewire: cdev: fix potential leak of kernel stack due to uninitialized value (Jaroslav Kysela) [2179850] - list: Add list_next_entry_circular() and list_prev_entry_circular() (Jaroslav Kysela) [2179850] - ASoC: cs43130: Re-use generic struct u16_fract (Jaroslav Kysela) [2179850] - firewire: fix potential uaf in outbound_phy_packet_callback() (Jaroslav Kysela) [2179850] - firewire: add kernel API to access packet structure in request structure for AR context (Jaroslav Kysela) [2179850] - firewire: add kernel API to access CYCLE_TIME register (Jaroslav Kysela) [2179850] - firewire: Add dummy read_csr/write_csr functions (Jaroslav Kysela) [2179850] - treewide: Replace open-coded flex arrays in unions (Jaroslav Kysela) [2179850] - firewire: Remove function callback casts (Jaroslav Kysela) [2179850] - ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256 (Jaroslav Kysela) [2179850] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2179850]- Revert "softirq: Let ksoftirqd do its job" (Oleg Nesterov) [2196767] - perf: Fix check before add_event_to_groups() in perf_group_detach() (Michael Petlan) [2209645] {CVE-2023-2235} - perf/core: Call LSM hook after copying perf_event_attr (Audra Mitchell) [2172142] - kprobes: Skip clearing aggrprobe's post_handler in kprobe-on-ftrace case (Audra Mitchell) [2172142] - cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset (Audra Mitchell) [2172142] - cgroup: Fix race condition at rebind_subsystems() (Audra Mitchell) [2172142] - tick/nohz: unexport __init-annotated tick_nohz_full_setup() (Audra Mitchell) [2172142] - ipc/mqueue: use get_tree_nodev() in mqueue_get_tree() (Audra Mitchell) [2172142] - genirq: Synchronize interrupt thread startup (Audra Mitchell) [2172142] - genirq: Initialize request_mutex if CONFIG_SPARSE_IRQ=n (Audra Mitchell) [2172142] - scftorture: Fix distribution of short handler delays (Audra Mitchell) [2172142] - tick/nohz: Use WARN_ON_ONCE() to prevent console saturation (Audra Mitchell) [2172142] - ipc/sem: do not sleep with a spin lock held (Audra Mitchell) [2172142] - signal: In get_signal test for signal_group_exit every time through the loop (Audra Mitchell) [2172142] - genirq: Move prio assignment into the newly created thread (Audra Mitchell) [2172142] - sched,irq: Convert to sched_set_fifo() (Audra Mitchell) [2172142] - cgroup/cpuset: Fix violation of cpuset locking rule (Audra Mitchell) [2172142] - timers: Move clearing of base::timer_running under base:: Lock (Audra Mitchell) [2172142] - cgroup1: fix leaked context root causing sporadic NULL deref in LTP (Audra Mitchell) [2172142] - jump_label: Fix usage in module __init (Audra Mitchell) [2172142] - padata: fix possible padata_works_lock deadlock (Audra Mitchell) [2172142] - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() (Audra Mitchell) [2172142] - padata: upgrade smp_mb__after_atomic to smp_mb in padata_do_serial (Audra Mitchell) [2172142] - cpu/speculation: Warn on unsupported mitigations= parameter (Audra Mitchell) [2172142] - x86/speculation: Remove redundant arch_smt_update() invocation (Audra Mitchell) [2172142] - cpu/hotplug: Non-SMP machines do not make use of booted_once (Audra Mitchell) [2172142] - can: usb_8dev: usb_8dev_start_xmit(): fix double dev_kfree_skb() in error path (Jose Ignacio Tornos Martinez) [2156581] {CVE-2022-28388} - kernfs: Improve kernfs_notify() poll notification latency (Ian Kent) [2195844] - stmmac: fix changing mac address (Corinna Vinschen) [2177654] - net/sched: cls_tcindex: downgrade to imperfect hash (Davide Caratti) [2192308] {CVE-2023-1829} - Bluetooth: btsdio: fix use after free bug in btsdio_remove due to race condition (Ricardo Robaina) [2185961] {CVE-2023-1989} - net: qcom/emac: Fix use after free bug in emac_remove due to race condition (Ricardo Robaina) [2192673] {CVE-2023-2483} - s390/crypto: improve retry logic in case of master key change (Tobias Huschle) [2212794] - bpf: pull before calling skb_postpull_rcsum() (Felix Maurer) [2186521] - bpf, sockmap: fix race in sock_map_free() (Felix Maurer) [2186521] - bpf, sock_map: Move cancel_work_sync() out of sock lock (Felix Maurer) [2186521] - brcmfmac: Switch to appropriate helper to load EFI variable contents (Lenny Szubowicz) [2183047] - iwlwifi: Switch to proper EFI variable store interface (Lenny Szubowicz) [2183047] - efi: Store mask of supported runtime services in struct efi (Lenny Szubowicz) [2183047] - NFS: Don't report errors from nfs_pageio_complete() more than once (Benjamin Coddington) [2213644] - NFS: Do not report flush errors in nfs_write_end() (Benjamin Coddington) [2213644] - NFS: Don't report ENOSPC write errors twice (Benjamin Coddington) [2213644] - NFS: fsync() should report filesystem errors over EINTR/ERESTARTSYS (Benjamin Coddington) [2213644] - NFS: Do not report EINTR/ERESTARTSYS as mapping errors (Benjamin Coddington) [2213644] - net: openvswitch: release vport resources on failure (Antoine Tenart) [2190225] - net: openvswitch: Add support to count upcall packets (Antoine Tenart) [2190225] - net: openvswitch: fix race on port output (Antoine Tenart) [2190225] - net: openvswitch: fix possible memory leak in ovs_meter_cmd_set() (Antoine Tenart) [2190225] - net: openvswitch: fix flow memory leak in ovs_flow_cmd_new (Antoine Tenart) [2190225] - openvswitch: Fix flow lookup to use unmasked key (Antoine Tenart) [2190225] - openvswitch: switch from WARN to pr_warn (Antoine Tenart) [2190225] - EDAC/i10nm: Add Intel Emerald Rapids server support (Aristeu Rozanski) [2165649] - EDAC/skx_common: Delete duplicated and unreachable code (Aristeu Rozanski) [2165649] - EDAC/skx_common: Enable EDAC support for the "near" memory (Aristeu Rozanski) [2165649] - EDAC/i10nm: Print an extra register set of retry_rd_err_log (Aristeu Rozanski) [2165649] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers for HBM (Aristeu Rozanski) [2165649] - EDAC/skx_common: Add ChipSelect ADXL component (Aristeu Rozanski) [2165649] - EDAC/i10nm: Fix NVDIMM detection (Aristeu Rozanski) [2165649] - EDAC/skx_common: Set the memory type correctly for HBM memory (Aristeu Rozanski) [2165649] - EDAC/mc: Add new HBM2 memory type (Aristeu Rozanski) [2165649] - EDAC: Replace EDAC_DIMM_PTR() macro with edac_get_dimm() function (Aristeu Rozanski) [2165649] - tpm: disable hwrng for fTPM on some AMD designs (Štěpán Horáček) [2159583] - tpm/eventlog: Don't abort tpm_read_log on faulty ACPI address (Štěpán Horáček) [2159583] - tpm: Use managed allocation for bios event log (Štěpán Horáček) [2159583] - efi: tpm: Avoid READ_ONCE() for accessing the event log (Štěpán Horáček) [2159583] - tpm: Allow system suspend to continue when TPM suspend fails (Štěpán Horáček) [2159583] - tpm: tpm_tis: Add the missed acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm: acpi: Call acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm/tpm_crb: Fix error message in __crb_relinquish_locality() (Štěpán Horáček) [2159583] - tpm: Avoid function type cast of put_device() (Štěpán Horáček) [2159583] - char: tpm: Protect tpm_pm_suspend with locks (Štěpán Horáček) [2159583] - efi/tpm: Pass correct address to memblock_reserve (Štěpán Horáček) [2159583] - char: move from strlcpy with unused retval to strscpy (Štěpán Horáček) [2159583] - tpm: eventlog: Fix section mismatch for DEBUG_SECTION_MISMATCH (Štěpán Horáček) [2159583] - tpm: Fix buffer access in tpm2_get_tpm_pt() (Štěpán Horáček) [2159583] - tpm: ibmvtpm: Correct the return value in tpm_ibmvtpm_probe() (Štěpán Horáček) [2159583] - tpm: use try_get_ops() in tpm-space.c (Štěpán Horáček) [2159583] - tpm: Fix error handling in async work (Štěpán Horáček) [2159583] - tpm: vtpm_proxy: Check length to avoid compiler warning (Štěpán Horáček) [2159583] - tpm: fix NPE on probe for missing device (Štěpán Horáček) [2159583] - tpm: fix potential NULL pointer access in tpm_del_char_device (Štěpán Horáček) [2159583] - tpm_tis: Fix an error handling path in 'tpm_tis_core_init()' (Štěpán Horáček) [2159583] - tpm: add request_locality before write TPM_INT_ENABLE (Štěpán Horáček) [2159583] - tpm_tis_spi: Add missing SPI ID (Štěpán Horáček) [2159583] - tpm: fix Atmel TPM crash caused by too frequent queries (Štěpán Horáček) [2159583] - tpm: Check for integer overflow in tpm2_map_response_body() (Štěpán Horáček) [2159583] - KEYS: trusted: Fix TPM reservation for seal/unseal (Štěpán Horáček) [2135881] - KVM: x86: Add helpers to recalc physical vs. logical optimized APIC maps (John Allen) [2117761] - KVM: x86: Allow APICv APIC ID inhibit to be cleared (John Allen) [2117761] - KVM: x86: Track required APICv inhibits with variable, not callback (John Allen) [2117761] - Revert "KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu" (John Allen) [2117761] - KVM: SVM: Handle multiple logical targets in AVIC kick fastpath (John Allen) [2117761] - KVM: SVM: Require logical ID to be power-of-2 for AVIC entry (John Allen) [2117761] - KVM: SVM: Update svm->ldr_reg cache even if LDR is "bad" (John Allen) [2117761] - KVM: SVM: Always update local APIC on writes to logical dest register (John Allen) [2117761] - KVM: SVM: Inhibit AVIC if vCPUs are aliased in logical mode (John Allen) [2117761] - KVM: x86: Inhibit APICv/AVIC if the optimized physical map is disabled (John Allen) [2117761] - KVM: x86: Honor architectural behavior for aliased 8-bit APIC IDs (John Allen) [2117761] - Documentation: KVM: Add SPDX-License-Identifier tag (John Allen) [2117761] - Documentation: KVM: add virtual CPU errata documentation (John Allen) [2117761] - KVM: x86: Disable APIC logical map if vCPUs are aliased in logical mode (John Allen) [2117761] - KVM: x86: Disable APIC logical map if logical ID covers multiple MDAs (John Allen) [2117761] - KVM: x86: Skip redundant x2APIC logical mode optimized cluster setup (John Allen) [2117761] - KVM: x86: Explicitly track all possibilities for APIC map's logical modes (John Allen) [2117761] - KVM: x86: Explicitly skip optimized logical map setup if vCPU's LDR==0 (John Allen) [2117761] - KVM: SVM: Add helper to perform final AVIC "kick" of single vCPU (John Allen) [2117761] - KVM: SVM: Document that vCPU ID == APIC ID in AVIC kick fastpatch (John Allen) [2117761] - Revert "KVM: SVM: Use target APIC ID to complete x2AVIC IRQs when possible" (John Allen) [2117761] - KVM: SVM: Replace "avic_mode" enum with "x2avic_enabled" boolean (John Allen) [2117761] - KVM: x86: Inhibit APIC memslot if x2APIC and AVIC are enabled (John Allen) [2117761] - KVM: x86: Handle APICv updates for APIC "mode" changes via request (John Allen) [2117761] - KVM: x86: Don't inhibit APICv/AVIC if xAPIC ID mismatch is due to 32-bit ID (John Allen) [2117761] - KVM: x86: Don't inhibit APICv/AVIC on xAPIC ID "change" if APIC is disabled (John Allen) [2117761] - KVM: SVM: Process ICR on AVIC IPI delivery failure due to invalid target (John Allen) [2117761] - KVM: SVM: Flush the "current" TLB when activating AVIC (John Allen) [2117761] - KVM: x86: Purge "highest ISR" cache when updating APICv state (John Allen) [2117761] - KVM: x86: Blindly get current x2APIC reg value on "nodecode write" traps (John Allen) [2117761] - KVM: x86: Bug the VM if an accelerated x2APIC trap occurs on a "bad" reg (John Allen) [2117761] - KVM: x86: Do not block APIC write for non ICR registers (John Allen) [2117761] - KVM: x86: Add support for vICR APIC-write VM-Exits in x2APIC mode (John Allen) [2117761] - KVM: x86: fix APICv/x2AVIC disabled when vm reboot by itself (John Allen) [2117761] - KVM: SEV: fix misplaced closing parenthesis (John Allen) [2117761] - KVM: SVM: Do not virtualize MSR accesses for APIC LVTT register (John Allen) [2117761] - KVM: SVM: Fix x2APIC MSRs interception (John Allen) [2117761] - KVM: x86: nSVM: optimize svm_set_x2apic_msr_interception (John Allen) [2117761] - KVM: SVM: Add AVIC doorbell tracepoint (John Allen) [2117761] - KVM: SVM: Use target APIC ID to complete x2AVIC IRQs when possible (John Allen) [2117761] - KVM: x86: Warning APICv inconsistency only when vcpu APIC mode is valid (John Allen) [2117761] - KVM: x86: Move APIC access page helper to common x86 code (John Allen) [2117761] - KVM: SVM: Introduce hybrid-AVIC mode (John Allen) [2117761] - KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu (John Allen) [2117761] - KVM: SVM: Modify AVIC GATag to support max number of 512 vCPUs (John Allen) [2117761] - KVM: SVM: Fix a benign off-by-one bug in AVIC physical table mask (John Allen) [2117761] - KVM: SVM: Ignore writes to Remote Read Data on AVIC write traps (John Allen) [2117761] - KVM: SVM: Introduce logic to (de)activate x2AVIC mode (John Allen) [2117761] - KVM: x86: nSVM: always intercept x2apic msrs (John Allen) [2117761] - KVM: SVM: Don't put/load AVIC when setting virtual APIC mode (John Allen) [2117761] - KVM: SVM: Refresh AVIC configuration when changing APIC mode (John Allen) [2117761] - KVM: x86: Deactivate APICv on vCPU with APIC disabled (John Allen) [2117761] - KVM: SVM: Adding support for configuring x2APIC MSRs interception (John Allen) [2117761] - KVM: SVM: Do not support updating APIC ID when in x2APIC mode (John Allen) [2117761] - KVM: SVM: Compute dest based on sender's x2APIC status for AVIC kick (John Allen) [2117761] - KVM: SVM: Update avic_kick_target_vcpus to support 32-bit APIC ID (John Allen) [2117761] - KVM: SVM: Update max number of vCPUs supported for x2AVIC mode (John Allen) [2117761] - KVM: svm/avic: Drop "struct kvm_x86_ops" for avic_hardware_setup() (John Allen) [2117761] - KVM: SVM: Detect X2APIC virtualization (x2AVIC) support (John Allen) [2117761] - KVM: x86: lapic: Rename [GET/SET]_APIC_DEST_FIELD to [GET/SET]_XAPIC_DEST_FIELD (John Allen) [2117761] - x86/cpufeatures: Introduce x2AVIC CPUID bit (John Allen) [2117761] - KVM: x86: SVM: fix nested PAUSE filtering when L0 intercepts PAUSE (John Allen) [2117761] - KVM: x86: nSVM: support PAUSE filtering when L0 doesn't intercept PAUSE (John Allen) [2117761] - KVM: x86: SVM: drop preempt-safe wrappers for avic_vcpu_load/put (John Allen) [2117761] - KVM: x86: disable preemption around the call to kvm_arch_vcpu_{un|}blocking (John Allen) [2117761] - KVM: x86: disable preemption while updating apicv inhibition (John Allen) [2117761] - KVM: SVM: Fix x2APIC Logical ID calculation for avic_kick_target_vcpus_fast (John Allen) [2117761] - KVM: x86: SVM: fix avic_kick_target_vcpus_fast (John Allen) [2117761] - KVM: SVM: Use target APIC ID to complete AVIC IRQs when possible (John Allen) [2117761] - KVM: x86: SVM: remove avic's broken code that updated APIC ID (John Allen) [2117761] - KVM: x86: inhibit APICv/AVIC on changes to APIC ID or APIC base (John Allen) [2117761] - KVM: x86: document AVIC/APICv inhibit reasons (John Allen) [2117761] - KVM: x86: SVM: allow AVIC to co-exist with a nested guest running (John Allen) [2117761] - KVM: x86: allow per cpu apicv inhibit reasons (John Allen) [2117761] - KVM: x86: SVM: allow to force AVIC to be enabled (John Allen) [2117761]- sctp: fix a potential overflow in sctp_ifwdtsn_skip (Xin Long) [2189324] - sctp: check send stream number after wait_for_sndbuf (Xin Long) [2189324] - sctp: sctp_sock_filter(): avoid list_entry() on possibly empty list (Xin Long) [2189324] - sctp: fail if no bound addresses can be used for a given scope (Xin Long) [2189324] - sctp: sysctl: make extra pointers netns aware (Xin Long) [2189324] - sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop (Xin Long) [2189324] - sctp: delete free member from struct sctp_sched_ops (Xin Long) [2189324] - sctp: fix memory leak in sctp_stream_outq_migrate() (Xin Long) [2189324] - sctp: clear out_curr if all frag chunks of current msg are pruned (Xin Long) [2189324] - sctp: remove the unnecessary sinfo_stream check in sctp_prsctp_prune_unsent (Xin Long) [2189324] - sched/fair: Fix imbalance overflow (Phil Auld) [RHEL-419] - sched/fair: Move calculate of avg_load to a better location (Phil Auld) [RHEL-419] - sched/fair: Sanitize vruntime of entity being migrated (Phil Auld) [RHEL-419] - sched/rt: pick_next_rt_entity(): check list_entry (Phil Auld) [RHEL-419] - sched/fair: sanitize vruntime of entity being placed (Phil Auld) [RHEL-419] - sched/fair: Limit sched slice duration (Phil Auld) [RHEL-419] - sched/topology: Add __init for sched_init_domains() (Phil Auld) [RHEL-419] - sched/core: Reorganize ttwu_do_wakeup() and ttwu_do_activate() (Phil Auld) [RHEL-419] - sched/core: Micro-optimize ttwu_runnable() (Phil Auld) [RHEL-419] - sched/numa: Stop an exhastive search if an idle core is found (Phil Auld) [RHEL-419] - sched/topology: Add __init for init_defrootdomain (Phil Auld) [RHEL-419] - sched: Clear ttwu_pending after enqueue_task() (Phil Auld) [RHEL-419] - sched/psi: Fix possible missing or delayed pending event (Phil Auld) [RHEL-419] - sched/fair: Cleanup for SIS_PROP (Phil Auld) [RHEL-419] - sched/fair: Default to false in test_idle_cores() (Phil Auld) [RHEL-419] - sched/fair: Remove useless check in select_idle_core() (Phil Auld) [RHEL-419] - sched/fair: Avoid double search on same cpu (Phil Auld) [RHEL-419] - sched/fair: Remove redundant check in select_idle_smt() (Phil Auld) [RHEL-419] - sched: Rename task_running() to task_on_cpu() (Phil Auld) [RHEL-419] - sched/fair: Move call to list_last_entry() in detach_tasks (Phil Auld) [RHEL-419] - sched/fair: Cleanup loop_max and loop_break (Phil Auld) [RHEL-419] - sched/fair: Make sure to try to detach at least one movable task (Phil Auld) [RHEL-419] - sched: Add update_current_exec_runtime helper (Phil Auld) [RHEL-419] - sched/fair: Don't init util/runnable_avg for !fair task (Phil Auld) [RHEL-419] - sched/fair: Move task sched_avg attach to enqueue_task_fair() (Phil Auld) [RHEL-419] - sched/fair: Update comments in enqueue/dequeue_entity() (Phil Auld) [RHEL-419] - sched/fair: Maintain task se depth in set_task_rq() (Phil Auld) [RHEL-419] - sched/debug: Print each field value left-aligned in sched_show_task() (Phil Auld) [RHEL-419] - sched/fair: Make per-cpu cpumasks static (Phil Auld) [RHEL-419] - sched/fair: Rename select_idle_mask to select_rq_mask (Phil Auld) [RHEL-419] - sched: Snapshot thread flags (Phil Auld) [RHEL-419] - sched/fair: find_idlest_group(): Remove unused sd_flag parameter (Phil Auld) [RHEL-419] - redhat/genlog.py: add support to list/process zstream Jira tickets (Herton R. Krzesinski) - powercap: intel_rapl: add support for Emerald Rapids (Prarit Bhargava) [2156804] - vsock: avoid to close connected socket after the timeout (Stefano Garzarella) [2209710] - sfc: Fix module EEPROM reporting for QSFP modules (Íñigo Huguet) [2192382] - perf script: Fix missing Retire Latency fields option documentation (Michael Petlan) [2177014] - perf event x86: Add retire_lat when synthesizing PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [2177014] - perf test x86: Support the retire_lat (Retire Latency) sample_type check (Michael Petlan) [2177014] - perf script: Support Retire Latency (Michael Petlan) [2177014] - perf report: Support Retire Latency (Michael Petlan) [2177014]- netfilter: nft_redir: correct value of inet type `.maxattrs` (Florian Westphal) [2189517] - netfilter: tproxy: fix deadlock due to missing BH disable (Florian Westphal) [2189517] - netfilter: ebtables: fix table blob use-after-free (Florian Westphal) [2189517] - netfilter: ctnetlink: fix possible refcount leak in ctnetlink_create_conntrack() (Florian Westphal) [2189517] - netfilter: nf_tables: make table handle allocation per-netns friendly (Florian Westphal) [2189517] - netfilter: nf_tables: really skip inactive sets when allocating name (Florian Westphal) [2189517] - intel_idle: add Emerald Rapids Xeon support (Prarit Bhargava) [2156824] - tools/power turbostat: Introduce support for EMR (Prarit Bhargava) [2156806] - kunit: drm: make DRM buddy test compatible with other pages sizes (Nico Pache) [2209108] - redhat: fix missing kunit module in mod-internal.list (Nico Pache) [2209108] - bluetooth: Perform careful capability checks in hci_sock_ioctl() (Ricardo Robaina) [2196353] {CVE-2023-2002} - macvlan: Fix mc_filter calculation (Xin Long) [2186948] - macvlan: Add netlink attribute for broadcast cutoff (Xin Long) [2186948] - macvlan: Skip broadcast queue if multicast with single receiver (Xin Long) [2186948] - net: macvlan: fix memory leaks of macvlan_common_newlink (Xin Long) [2186948] - net: macvlan: change schedule system_wq to system_unbound_wq (Xin Long) [2186948] - net: macvlan: fix potential UAF problem for lowerdev (Xin Long) [2186948] - macvlan: Support for high multicast packet rate (Xin Long) [2186948] - macvlan: Skip loopback packets in RX handler (Xin Long) [2186948] - macvlan: fix null dereference in macvlan_device_event() (Xin Long) [2186948] - macvlan: add cond_resched() during multicast processing (Xin Long) [2186948] - macvlan: schedule bc_work even if error (Xin Long) [2186948] - macvlan: replace kfree_skb by consume_skb for drop profiles (Xin Long) [2186948] - tipc: fix unexpected link reset due to discovery messages (Xin Long) [2193242] - tipc: Fix potential OOB in tipc_link_proto_rcv() (Xin Long) [2193242] - tipc: check skb_linearize() return value in tipc_disc_rcv() (Xin Long) [2193242] - tipc: fix the msg->req tlv len check in tipc_nl_compat_name_table_dump_header (Xin Long) [2193242] - tipc: fix a null-ptr-deref in tipc_topsrv_accept (Xin Long) [2193242] - s390/dasd: fix hanging blockdevice after request requeue (Tobias Huschle) [2043875] - s390/dasd: add autoquiesce event for start IO error (Tobias Huschle) [2043875] - s390/dasd: add aq_timeouts autoquiesce trigger (Tobias Huschle) [2043875] - s390/dasd: add aq_requeue sysfs attribute (Tobias Huschle) [2043875] - s390/dasd: add aq_mask sysfs attribute (Tobias Huschle) [2043875] - s390/dasd: add autoquiesce feature (Tobias Huschle) [2043875] - s390/dasd: remove unused DASD EER defines (Tobias Huschle) [2043875] - md: Fix bitmap offset type in sb writer (Nigel Croxon) [2189478] - md/raid5: Improve performance for sequential IO (Nigel Croxon) [2189478] - md/raid5: remove unused working_disks variable (Nigel Croxon) [2189478] - md/raid10: fix memleak of md thread (Nigel Croxon) [2189478] - md/raid10: fix memleak for 'conf->bio_split' (Nigel Croxon) [2189478] - md/raid10: fix leak of 'r10bio->remaining' for recovery (Nigel Croxon) [2189478] - md/raid10: don't BUG_ON() in raise_barrier() (Nigel Croxon) [2189478] - md: fix soft lockup in status_resync (Nigel Croxon) [2189478] - md: add error_handlers for raid0 and linear (Nigel Croxon) [2151208 2189478] - md: Use optimal I/O size for last bitmap page (Nigel Croxon) [2189478] - md: Fix types in sb writer (Nigel Croxon) [2189478] - md: Move sb writer loop to its own function (Nigel Croxon) [2189478] - md/raid10: Fix typo in comment (replacment -> replacement) (Nigel Croxon) [2189478] - md/raid10: fix null-ptr-deref in raid10_sync_request (Nigel Croxon) [2189478] - md/raid10: fix task hung in raid10d (Nigel Croxon) [2189478] - md: simplify sysctl registration (Nigel Croxon) [2189478] - HID: intel-ish-hid: ipc: Fix potential use-after-free in work function (Tony Camuso) [2182388] - devm-helpers: Fix devm_delayed_work_autocancel() kerneldoc (Tony Camuso) [2182388] - devm-helpers: Add resource managed version of work init (Tony Camuso) [2182388] - workqueue: Add resource managed version of delayed work init (Tony Camuso) [2182388] - HID: stop drivers from selecting CONFIG_HID (Tony Camuso) [2182388] - HID: intel_ish-hid: Add check for ishtp_dma_tx_map (Tony Camuso) [2182388] - HID: intel-ish-hid: ishtp: remove variable rb_count (Tony Camuso) [2182388]- i40e: Add support for VF to specify its primary MAC address (Stefan Assmann) [2091552] - net/tg3: resolve deadlock in tg3_reset_task() during EEH (Ken Cox) [2159218 2166475] - HID: asus: use spinlock to safely schedule workers (Ricardo Robaina) [2186282] {CVE-2023-1079} - HID: asus: use spinlock to protect concurrent accesses (Ricardo Robaina) [2186282] {CVE-2023-1079} - e1000e: Disable TSO on i219-LM card to increase speed (Ken Cox) [2109782] - erspan: get the proto with the md version for collect_md (Xin Long) [2207724] - netfilter: nf_tables: deactivate anonymous set from preparation phase (Florian Westphal) [2196148] {CVE-2023-32233} - scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate() (Ewan D. Milne) [2171092] - scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR (Ewan D. Milne) [2171092] - scsi: core: Add BLIST_NO_VPD_SIZE for some VDASD (Ewan D. Milne) [2171092] - scsi: core: Fix a source code comment (Ewan D. Milne) [2171092] - scsi: Revert "scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT" (Ewan D. Milne) [2171092] - scsi: scsi_debug: Delete unreachable code in inquiry_vpd_b0() (Ewan D. Milne) [2171092] - scsi: core: Use SCSI_SCAN_INITIAL in do_scsi_scan_host() (Ewan D. Milne) [2171092] - scsi: core: Use SCSI_SCAN_RESCAN in __scsi_add_device() (Ewan D. Milne) [2171092] - scsi: Define the COMPLETED sense key (Ewan D. Milne) [2171092] - scsi: core: Add I/O timeout count for SCSI device (Ewan D. Milne) [2171092] - tipc: check the bearer min mtu properly when setting it by netlink (Xin Long) [2185143] - tipc: do not update mtu if msg_max is too small in mtu negotiation (Xin Long) [2185143] - tipc: add tipc_bearer_min_mtu to calculate min mtu (Xin Long) [2185143] - net/tipc: fix tipc header files for kernel-doc (Xin Long) [2185143] - scsi: smartpqi: Update version to 2.1.22-040 (Don Brace) [2162103] - scsi: smartpqi: Update copyright to 2023 (Don Brace) [2162103] - scsi: smartpqi: Add sysfs entry for NUMA node in /sys/block/sdX/device (Don Brace) [2162103] - scsi: smartpqi: Stop sending driver-initiated TURs (Don Brace) [2162103] - scsi: smartpqi: Fix byte aligned writew for ARM servers (Don Brace) [2162103] - scsi: smartpqi: Add support for RAID NCQ priority (Don Brace) [2162103] - scsi: smartpqi: Validate block layer host tag (Don Brace) [2162103] - scsi: smartpqi: Remove contention for raid_bypass_cnt (Don Brace) [2162103] - scsi: smartpqi: Fix rare SAS transport memory leak (Don Brace) [2162103] - scsi: smartpqi: Remove NULL pointer check (Don Brace) [2162103] - scsi: smartpqi: Add new controller PCI IDs (Don Brace) [2162103] - scsi: smartpqi: Map full length of PCI BAR 0 (Don Brace) [2162103] - scsi: smartpqi: Replace one-element array with flexible-array member (Don Brace) [2162103] - scsi: mpi3mr: Use -ENOMEM instead of -1 in mpi3mr_expander_add() (Tomas Henzl) [2163671] - scsi: mpi3mr: Use IRQ save variants of spinlock to protect chain frame allocation (Tomas Henzl) [2163671] - scsi: mpi3mr: Handle soft reset in progress fault code (0xF002) (Tomas Henzl) [2163671] - scsi: mpi3mr: Update driver version to 8.4.1.0.0 (Tomas Henzl) [2163671] - scsi: mpi3mr: Update copyright year (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix W=1 compilation warnings (Tomas Henzl) [2163671] - scsi: mpi3mr: Update MPI Headers to revision 27 (Tomas Henzl) [2163671] - scsi: mpi3mr: Avoid escalating to higher level reset when target is removed (Tomas Henzl) [2163671] - scsi: mpi3mr: Modify MUR timeout value to 120 seconds (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix admin queue memory leak upon soft reset (Tomas Henzl) [2163671] - scsi: mpi3mr: Successive VD delete and add causes FW fault (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix expander node leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix memory leaks in mpi3mr_init_ioc() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix sas_hba.phy memory leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix mpi3mr_hba_port memory leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix config page DMA memory leak (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix throttle_groups memory leak (Tomas Henzl) [2163671] - scsi: mpi3mr: Bad drive in topology results kernel crash (Tomas Henzl) [2163671] - scsi: mpi3mr: NVMe command size greater than 8K fails (Tomas Henzl) [2163671] - scsi: mpi3mr: Return proper values for failures in firmware init path (Tomas Henzl) [2163671] - scsi: mpi3mr: Wait for diagnostic save during controller init (Tomas Henzl) [2163671] - scsi: mpi3mr: Driver unload crashes host when enhanced logging is enabled (Tomas Henzl) [2163671] - scsi: mpi3mr: ioctl timeout when disabling/enabling interrupt (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove unneeded version.h include (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix missing mrioc->evtack_cmds initialization (Tomas Henzl) [2163671] - scsi: mpi3mr: Use number of bits to manage bitmap sizes (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove unnecessary memcpy() to alltgt_info->dmi (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix issues in mpi3mr_get_all_tgt_info() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix an issue found by KASAN (Tomas Henzl) [2163671] - scsi: mpi3mr: Refer CONFIG_SCSI_MPI3MR in Makefile (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove usage of dma_get_required_mask() API (Tomas Henzl) [2163671] - scsi: mpi3mr: Suppress command reply debug prints (Tomas Henzl) [2163671] - ipmi: ipmb: Fix the MODULE_PARM_DESC associated to 'retry_time_ms' (Tony Camuso) [2174220] - ipmi:ssif: Add a timer between request retries (Tony Camuso) [2174220] - ipmi:ssif: Remove rtc_us_timer (Tony Camuso) [2174220] - ipmi_ssif: Rename idle state and check (Tony Camuso) [2174220] - ipmi:ssif: resend_msg() cannot fail (Tony Camuso) [2174220] - ipmi/watchdog: use strscpy() to instead of strncpy() (Tony Camuso) [2174220] - ipmi: ssif_bmc: Convert to i2c's .probe_new() (Tony Camuso) [2174220] - ipmi: fix use after free in _ipmi_destroy_user() (Tony Camuso) [2174220] - ipmi:ssif: Increase the message retry time (Tony Camuso) [2174220] - ipmi: Fix some kernel-doc warnings (Tony Camuso) [2174220] - ipmi: ssif_bmc: Use EPOLLIN instead of POLLIN (Tony Camuso) [2174220] - ipmi: fix msg stack when IPMI is disconnected (Tony Camuso) [2174220] - ipmi: fix memleak when unload ipmi driver (Tony Camuso) [2174220] - ipmi: fix long wait in unload when IPMI disconnect (Tony Camuso) [2174220] - ipmi: kcs: Poll OBF briefly to reduce OBE latency (Tony Camuso) [2174220] - ipmi: ssif_bmc: Add SSIF BMC driver (Tony Camuso) [2174220] - ipmi: Remove unused struct watcher_entry (Tony Camuso) [2174220] - ipmi: kcs: aspeed: Update port address comments (Tony Camuso) [2174220] - ipmi: Add __init/__exit annotations to module init/exit funcs (Tony Camuso) [2174220] - ipmi:ipmb: Don't call ipmi_unregister_smi() on a register failure (Tony Camuso) [2174220] - ipmi:ipmb: Fix a vague comment and a typo (Tony Camuso) [2174220] - ipmi: Fix comment typo (Tony Camuso) [2174220] - char: ipmi: modify NPCM KCS configuration (Tony Camuso) [2174220] - cipso: Fix data-races around sysctl. (Juraj Marcin) [2181138] - netlabel: fix out-of-bounds memory accesses (Juraj Marcin) [2181138] - CIPSO: Fix unaligned memory access in cipso_v4_gentag_hdr (Juraj Marcin) [2181138] - netlabel_domainhash.c: Use built-in RCU list checking (Juraj Marcin) [2181138] - net: netlabel: Use built-in RCU list checking (Juraj Marcin) [2181138] - netlabel: remove redundant assignment to pointer iter (Juraj Marcin) [2181138] - capabilities: fix potential memleak on error path from vfs_getxattr_alloc() (Juraj Marcin) [2181138] - selinux: enable use of both GFP_KERNEL and GFP_ATOMIC in convert_context() (Juraj Marcin) [2181138] - selinux: free contexts previously transferred in selinux_add_opt() (Juraj Marcin) [2181138] - LSM: general protection fault in legacy_parse_param (Juraj Marcin) [2181138] - selinux: check return value of sel_make_avc_files (Juraj Marcin) [2181138] - net/sched: flower: fix error handler on replace (Ivan Vecera) [2180870] - Revert "net/sched: flower: Fix wrong handle assignment during filter change" (Ivan Vecera) [2180870] - net/sched: flower: fix filter idr initialization (Ivan Vecera) [2180870] - net/sched: cls_api: remove block_cb from driver_list before freeing (Ivan Vecera) [2180870] - net/sched: flower: Fix wrong handle assignment during filter change (Ivan Vecera) [2180870] - net/sched: cls_api: Initialize miss_cookie_node when action miss is not used (Ivan Vecera) [2180870] - net/sched: sch_fq: fix integer overflow of "credit" (Ivan Vecera) [2180870] - net/sched: clear actions pointer in miss cookie init fail (Ivan Vecera) [2180870] - net/sched: mqprio: simplify handling of nlattr portion of TCA_OPTIONS (Ivan Vecera) [2180870] - l2tp: generate correct module alias strings (Ivan Vecera) [2180870] - net/sched: act_api: add specific EXT_WARN_MSG for tc action (Ivan Vecera) [2180870] - Revert "net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy" (Ivan Vecera) [2180870] - netfilter: ctnetlink: revert to dumping mark regardless of event type (Ivan Vecera) [2180870] - net/sched: flower: fix fl_change() error recovery path (Ivan Vecera) [2180870] - net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy (Ivan Vecera) [2180870] - net/sched: act_connmark: handle errno on tcf_idr_check_alloc (Ivan Vecera) [2180870] - net/sched: act_sample: fix action bind logic (Ivan Vecera) [2180870] - net/sched: act_mpls: fix action bind logic (Ivan Vecera) [2180870] - net/sched: act_pedit: fix action bind logic (Ivan Vecera) [2180870] - net/sched: cls_api: Move call to tcf_exts_miss_cookie_base_destroy() (Ivan Vecera) [2180870] - net/sched: flower: Support hardware miss to tc action (Ivan Vecera) [2180870] - net/sched: flower: Move filter handle initialization earlier (Ivan Vecera) [2180870] - net/sched: cls_api: Support hardware miss to tc action (Ivan Vecera) [2180870] - net/sched: Rename user cookie and act cookie (Ivan Vecera) [2180870] - net/sched: taprio: dynamic max_sdu larger than the max_mtu is unlimited (Ivan Vecera) [2180870] - net/sched: taprio: don't allow dynamic max_sdu to go negative after stab adjustment (Ivan Vecera) [2180870] - net/sched: taprio: fix calculation of maximum gate durations (Ivan Vecera) [2180870] - net/sched: act_pedit: use percpu overlimit counter when available (Ivan Vecera) [2180870] - net/sched: act_gate: use percpu stats (Ivan Vecera) [2180870] - net/sched: act_connmark: transition to percpu stats and rcu (Ivan Vecera) [2180870] - net/sched: act_nat: transition to percpu stats and rcu (Ivan Vecera) [2180870] - selftests: forwarding: tc_actions: cleanup temporary files when test is aborted (Ivan Vecera) [2180870] - net/sched: support per action hw stats (Ivan Vecera) [2180870] - net/sched: introduce flow_offload action cookie (Ivan Vecera) [2180870] - net/sched: pass flow_stats instead of multiple stats args (Ivan Vecera) [2180870] - net/sched: act_pedit, setup offload action for action stats query (Ivan Vecera) [2180870] - net/sched: optimize action stats api calls (Ivan Vecera) [2180870] - net/sched: act_ctinfo: use percpu stats (Ivan Vecera) [2180870] - net/sched: fix error recovery in qdisc_create() (Ivan Vecera) [2180870] - net/sched: taprio: don't segment unnecessarily (Ivan Vecera) [2180870] - net/sched: taprio: split segmentation logic from qdisc_enqueue() (Ivan Vecera) [2180870] - net/sched: taprio: automatically calculate queueMaxSDU based on TC gate durations (Ivan Vecera) [2180870] - net/sched: keep the max_frm_len information inside struct sched_gate_list (Ivan Vecera) [2180870] - net/sched: taprio: warn about missing size table (Ivan Vecera) [2180870] - net/sched: make stab available before ops->init() call (Ivan Vecera) [2180870] - net/sched: taprio: calculate guard band against actual TC gate close time (Ivan Vecera) [2180870] - net/sched: taprio: calculate budgets per traffic class (Ivan Vecera) [2180870] - net/sched: taprio: rename close_time to end_time (Ivan Vecera) [2180870] - net/sched: taprio: calculate tc gate durations (Ivan Vecera) [2180870] - net/sched: taprio: give higher priority to higher TCs in software dequeue mode (Ivan Vecera) [2180870] - net/sched: taprio: avoid calling child->ops->dequeue(child) twice (Ivan Vecera) [2180870] - net/sched: taprio: refactor one skb dequeue from TXQ to separate function (Ivan Vecera) [2180870] - net/sched: taprio: continue with other TXQs if one dequeue() failed (Ivan Vecera) [2180870] - net/sched: taprio: delete peek() implementation (Ivan Vecera) [2180870] - net: sched: sch: Fix off by one in htb_activate_prios() (Ivan Vecera) [2180870] - net/sched: taprio: only pass gate mask per TXQ for igc, stmmac, tsnep, am65_cpsw (Ivan Vecera) [2180870] - net/sched: taprio: pass mqprio queue configuration to ndo_setup_tc() (Ivan Vecera) [2180870] - net/sched: refactor mqprio qopt reconstruction to a library function (Ivan Vecera) [2180870] - net/sched: taprio: centralize mqprio qopt validation (Ivan Vecera) [2180870] - net/sched: mqprio: add extack messages for queue count validation (Ivan Vecera) [2180870] - net/sched: mqprio: allow offloading drivers to request queue count validation (Ivan Vecera) [2180870] - net/sched: mqprio: allow reverse TC:TXQ mappings (Ivan Vecera) [2180870] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Ivan Vecera) [2180870] - net/sched: mqprio: refactor offloading and unoffloading to dedicated functions (Ivan Vecera) [2180870] - net/sched: mqprio: refactor nlattr parsing to a separate function (Ivan Vecera) [2180870] - netlink: add support for formatted extack messages (Ivan Vecera) [2180870] - net/sched: simplify tcf_pedit_act (Ivan Vecera) [2180870] - net/sched: transition act_pedit to rcu and percpu stats (Ivan Vecera) [2180870] - net: sched: sch: Bounds check priority (Ivan Vecera) [2180870] - net: Kconfig: fix spellos (Ivan Vecera) [2180870] - net/sched: sch_taprio: do not schedule in taprio_reset() (Ivan Vecera) [2180870] - sched: add new attr TCA_EXT_WARN_MSG to report tc extact message (Ivan Vecera) [2180870] - net/sched: sch_taprio: fix possible use-after-free (Ivan Vecera) [2180870] - net: sched: htb: fix htb_classify() kernel-doc (Ivan Vecera) [2180870] - net/sched: fix retpoline wrapper compilation on configs without tc filters (Ivan Vecera) [2180870] - net: sched: update the nat flag for icmp error packets in ct_nat_execute (Ivan Vecera) [2180870] - net/sched: avoid indirect classify functions on retpoline kernels (Ivan Vecera) [2180870] - net/sched: avoid indirect act functions on retpoline kernels (Ivan Vecera) [2180870] - net/sched: add retpoline wrapper for tc (Ivan Vecera) [2180870] - net/sched: move struct action_ops definition out of ifdef (Ivan Vecera) [2180870] - netfilter: ctnetlink: fix compilation warning after data race fixes in ct mark (Ivan Vecera) [2180870] - net: sched: allow act_ct to be built without NF_NAT (Ivan Vecera) [2180870] - netfilter: conntrack: Fix data-races around ct mark (Ivan Vecera) [2180870] - net: flow_offload: add support for ARP frame matching (Ivan Vecera) [2180870] - selftests: tc-testing: Add matchJSON to tdc (Ivan Vecera) [2180870] - Documentation: networking: TC queue based filtering (Ivan Vecera) [2180870] - act_skbedit: skbedit queue mapping for receive queue (Ivan Vecera) [2180870] - net: sched: cake: fix null pointer access issue when cake_init() fails (Ivan Vecera) [2180870] - net: sched: use tc_cls_bind_class() in filter (Ivan Vecera) [2180870] - net: sched: cls_api: introduce tc_cls_bind_class() helper (Ivan Vecera) [2180870] - net: sched: ensure n arg not empty before call bind_class (Ivan Vecera) [2180870] - selftests/tc-testing: update qdisc/cls/action features in config (Ivan Vecera) [2180870] - net/sched: taprio: allow user input of per-tc max SDU (Ivan Vecera) [2180870] - net/sched: query offload capabilities through ndo_setup_tc() (Ivan Vecera) [2180870] - net: sched: act_bpf: simplify code logic in tcf_bpf_init() (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for teql qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for tbf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for taprio qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for skbprio qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for sfq qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for sfb qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for plug qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for pfifo_fast qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for hhf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for gred qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for fq qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for etf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for codel qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for choke qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for atm qdisc (Ivan Vecera) [2180870] - headers: Remove some left-over license text (Ivan Vecera) [2180870] - net/sched: taprio: simplify list iteration in taprio_dev_notifier() (Ivan Vecera) [2180870] - net/sched: taprio: remove unnecessary taprio_list_lock (Ivan Vecera) [2180870] - net: sched: remove unused tcf_result extension (Ivan Vecera) [2180870] - net: sched: simplify code in mall_reoffload (Ivan Vecera) [2180870] - net: sched: act_ct: remove redundant variable err (Ivan Vecera) [2180870] - selftests/tc-testings: add list case for basic filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for tcindex filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for rsvp filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for route filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for flow filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for cgroup filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for bpf filter (Ivan Vecera) [2180870] - net/sched: use tc_cls_stats_dump() in filter (Ivan Vecera) [2180870] - net/sched: cls_api: add helper for tc cls walker stats dump (Ivan Vecera) [2180870] - net/sched: taprio: replace safety precautions with comments (Ivan Vecera) [2180870] - net/sched: taprio: add extack messages in taprio_init (Ivan Vecera) [2180870] - net/sched: taprio: stop going through private ops for dequeue and peek (Ivan Vecera) [2180870] - net/sched: taprio: remove redundant FULL_OFFLOAD_IS_ENABLED check in taprio_enqueue (Ivan Vecera) [2180870] - net/sched: taprio: use rtnl_dereference for oper and admin sched in taprio_destroy() (Ivan Vecera) [2180870] - net/sched: taprio: taprio_dump and taprio_change are protected by rtnl_mutex (Ivan Vecera) [2180870] - net/sched: taprio: taprio_offload_config_changed() is protected by rtnl_mutex (Ivan Vecera) [2180870] - net/sched: taprio: avoid disabling offload when it was never enabled (Ivan Vecera) [2180870] - flow_offload: Introduce flow_match_l2tpv3 (Ivan Vecera) [2180870] - net/sched: flower: Add L2TPv3 filter (Ivan Vecera) [2180870] - flow_dissector: Add L2TPv3 dissectors (Ivan Vecera) [2180870] - skbuff: make __skb_header_pointer()'s data argument const (Ivan Vecera) [2180870] - tools headers uapi: Update linux/in.h copy (Ivan Vecera) [2180870] - uapi: move IPPROTO_L2TP to in.h (Ivan Vecera) [2180870] - selftests/tc-testings: add tunnel_key action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add sample action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add nat action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add ife action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add connmark action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for xt action (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for gate action (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for ctinfo action (Ivan Vecera) [2180870] - net: sched: act_vlan: get rid of tcf_vlan_walker and tcf_vlan_search (Ivan Vecera) [2180870] - net: sched: act_tunnel_key: get rid of tunnel_key_walker and tunnel_key_search (Ivan Vecera) [2180870] - net: sched: act_skbmod: get rid of tcf_skbmod_walker and tcf_skbmod_search (Ivan Vecera) [2180870] - net: sched: act_skbedit: get rid of tcf_skbedit_walker and tcf_skbedit_search (Ivan Vecera) [2180870] - net: sched: act_simple: get rid of tcf_simp_walker and tcf_simp_search (Ivan Vecera) [2180870] - net: sched: act_sample: get rid of tcf_sample_walker and tcf_sample_search (Ivan Vecera) [2180870] - net: sched: act_police: get rid of tcf_police_walker and tcf_police_search (Ivan Vecera) [2180870] - net: sched: act_pedit: get rid of tcf_pedit_walker and tcf_pedit_search (Ivan Vecera) [2180870] - net: sched: act_nat: get rid of tcf_nat_walker and tcf_nat_search (Ivan Vecera) [2180870] - net: sched: act_mpls: get rid of tcf_mpls_walker and tcf_mpls_search (Ivan Vecera) [2180870] - net: sched: act_mirred: get rid of tcf_mirred_walker and tcf_mirred_search (Ivan Vecera) [2180870] - net: sched: act_ipt: get rid of tcf_ipt_walker/tcf_xt_walker and tcf_ipt_search/tcf_xt_search (Ivan Vecera) [2180870] - net: sched: act_ife: get rid of tcf_ife_walker and tcf_ife_search (Ivan Vecera) [2180870] - net: sched: act_gate: get rid of tcf_gate_walker and tcf_gate_search (Ivan Vecera) [2180870] - net: sched: act_gact: get rid of tcf_gact_walker and tcf_gact_search (Ivan Vecera) [2180870] - net: sched: act_ctinfo: get rid of tcf_ctinfo_walker and tcf_ctinfo_search (Ivan Vecera) [2180870] - net: sched: act_ct: get rid of tcf_ct_walker and tcf_ct_search (Ivan Vecera) [2180870] - net: sched: act_csum: get rid of tcf_csum_walker and tcf_csum_search (Ivan Vecera) [2180870] - net: sched: act_connmark: get rid of tcf_connmark_walker and tcf_connmark_search (Ivan Vecera) [2180870] - net: sched: act_bpf: get rid of tcf_bpf_walker and tcf_bpf_search (Ivan Vecera) [2180870] - net: sched: act_api: implement generic walker and search for tc action (Ivan Vecera) [2180870] - net: sched: act: move global static variable net_id to tc_action_ops (Ivan Vecera) [2180870] - net: sched: htb: remove redundant resource cleanup in htb_init() (Ivan Vecera) [2180870] - net/sched: cls_api: remove redundant 0 check in tcf_qevent_init() (Ivan Vecera) [2180870] - net: sched: etf: remove true check in etf_enable_offload() (Ivan Vecera) [2180870] - net: sched: gred: remove NULL check before free table->tab in gred_destroy() (Ivan Vecera) [2180870] - net: sched: remove redundant NULL check in change hook function (Ivan Vecera) [2180870] - net: sched: gred/red: remove unused variables in struct red_stats (Ivan Vecera) [2180870] - net: sched: choke: remove unused variables in struct choke_sched_data (Ivan Vecera) [2180870] - net: sched: using TCQ_MIN_PRIO_BANDS in prio_tune() (Ivan Vecera) [2180870] - net_sched: remove impossible conditions (Ivan Vecera) [2180870] - net: sched: remove unnecessary init of qdisc skb head (Ivan Vecera) [2180870] - net: sched: delete duplicate cleanup of backlog and qlen (Ivan Vecera) [2180870] - net: sched: remove duplicate check of user rights in qdisc (Ivan Vecera) [2180870] - net_sched: move from strlcpy with unused retval to strscpy (Ivan Vecera) [2180870] - net: sched: delete unused input parameter in qdisc_create (Ivan Vecera) [2180870] - net: sched: remove the unused return value of unregister_qdisc (Ivan Vecera) [2180870] - net_sched: cls_route: disallow handle of 0 (Ivan Vecera) [2180870] - net/sched: sch_cbq: change the type of cbq_set_lss to void (Ivan Vecera) [2180870] - net/sched: remove qdisc_root_lock() helper (Ivan Vecera) [2180870] - net/sched: sch_cbq: Delete unused delay_timer (Ivan Vecera) [2180870] - net/sched: remove return value of unregister_tcf_proto_ops (Ivan Vecera) [2180870] - net: extract port range fields from fl_flow_key (Ivan Vecera) [2180870] - net/sched: act_ct: set 'net' pointer when creating new nf_flow_table (Ivan Vecera) [2180870] - net: sched: provide shim definitions for taprio_offload_{get,free} (Ivan Vecera) [2180870] - time64.h: consolidate uses of PSEC_PER_NSEC (Ivan Vecera) [2180870] - selftests: tc-testing: Add testcases to test new flush behaviour (Ivan Vecera) [2180870] - tc-testing: gitignore, delete plugins directory (Ivan Vecera) [2180870] - net/sched: sch_netem: Fix arithmetic in netem_dump() for 32-bit platforms (Ivan Vecera) [2180870] - net_sched: em_meta: add READ_ONCE() in var_sk_bound_if() (Ivan Vecera) [2180870] - selftests: forwarding: tc_actions: allow mirred egress test to run on non-offloaded h2 (Ivan Vecera) [2180870] - net: sched: support hash selecting tx queue (Ivan Vecera) [2180870] - net: sched: use queue_mapping to pick tx queue (Ivan Vecera) [2180870] - net_sched: make qdisc_reset() smaller (Ivan Vecera) [2180870] - sch_red: Fix a typo (Ivan Vecera) [2180870] - wifi: ath9k: Don't mark channelmap stack variable read-only in ath9k_mci_update_wlan_channels() (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Fix an uninit variable access bug in qrtr_tx_resume() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: ignore key disable commands (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: reduce the MHI timeout to 20s (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Do not do DEL_SERVER broadcast after DEL_CLIENT (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix fw used for offload check for mt7922 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: Fix use-after-free in fw features query. (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix SDIO suspend/resume regression (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Fix a refcount bug in qrtr_recvmsg() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix invalid drv_sta_pre_rcu_remove calls for non-uploaded sta (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix flow dissection for forwarded packets (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix mesh forwarding (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix receiving mesh packets in forwarding=0 networks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix the size calculation of ieee80211_ie_len_eht_cap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix potential null pointer dereference (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: drop bogus static keywords in A-MSDU rx (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix mesh path discovery based on unicast packets (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix qos on mesh interfaces (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Serialize ieee80211_handle_wake_tx_queue() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: mark OF related data as maybe unused (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: do not check WED status for non-mmio devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add back 160MHz channel width support for MT7915 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: do not run mt76_unregister_device() on unregistered hw (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext" (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: fix MLO connection ownership (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: check basic rates validity (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: fix puncturing bitmap policy (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: fix NULL-ptr deref in offchan check (Jose Ignacio Tornos Martinez) [2183487] - wifi: wext: warn about usage only once (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: allow system suspend to survive ath11k (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: add LEDS_CLASS dependency (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: remove unused iwl_dbgfs_is_match() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix AP mode authentication transmission failed (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: use RTW_FLAG_POWERON flag to prevent to power on/off twice (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: p2p: Introduce generic flexible array frame member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add documentation for amsdu_mesh_control (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: remove gfp parameter from cfg80211_obss_color_collision_notify description (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: always initialize link_sta with sta (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: pass 'sta' to ieee80211_rx_data_set_sta() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Set SSID if it is not already set (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: move H2C of del_pkt_offload before polling FW status ready (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: use readable return 0 in rtw89_mac_cfg_ppdu_status() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: drop now unnecessary URB size check (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: send Zero length packets if necessary (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: Set qsel correctly (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix off-by-one link setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Fix for Rx fragmented action frames (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: avoid u32_encode_bits() warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Don't translate MLD addresses for multicast (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: call reg_notifier for self managed wiphy from driver hint (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: get rid of gfp in cfg80211_bss_color_notify (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: Allow authentication frames and set keys on NAN interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix non-MLO station association (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Allow NSS change only up to capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add a workaround for receiving non-standard mesh A-MSDU (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix receiving A-MSDU frames on mesh interfaces (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove mesh forwarding congestion check (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: factor out bridge tunnel / RFC1042 header check (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: move A-MSDU check in ieee80211_data_to_8023_exthdr (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: make rate u32 in sta_set_rate_info_rx() (Jose Ignacio Tornos Martinez) [2183487] - rfkill: Use sysfs_emit() to instead of sprintf() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Allow action frames to be transmitted with link BSS in MLD (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: configure puncturing bitmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: include puncturing bitmap in channel switch events (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: validate and configure puncturing bitmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: move puncturing bitmap validation from mac80211 (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: return error message for malformed chandef (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211_hwsim: Rename pid to portid to avoid confusion (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: add MLO_LINK_ID to CMD_STOP_AP event (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: emit CMD_START_AP on multicast group when an AP is started (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: mlme: handle EHT channel puncturing (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Extend cfg80211_update_owe_info_event() for MLD AP (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Extend cfg80211_new_sta() for MLD AP (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: move color collision detection report in a delayed work (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix use after free for wext (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Authentication offload to user space for MLO connection in STA mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: trace: remove MAC_PR_{FMT,ARG} (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fix txdw7 assignment of TX DESC v3 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8723AU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8192EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Register the LED and make it blink (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: set TX power according to RF path number by chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: correct register mask name of TX power offset (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: use passed channel in set_tx_shape_dfir() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852be: enable CLKREQ of PCI capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: try to use NORMAL_CE type firmware first (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: don't support LPS-PG mode after firmware 0.29.26.0 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: reset IDMEM mode to default value (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add use of pkt_list offload to debug entry (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine packet offload flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix potential wrong mapping for pkt-offload (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: disallow enter PS mode after create TDLS link (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine MCC C2H debug logs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix parsing offset for MCC C2H (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: deal with RXI300 error (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: debug: avoid invalid access on RTW89_DBG_SEL_MAC_30 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: mac: add function to get TSF (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: split out generic part of rtw89_mac_port_tsf_sync() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct unit for port offset and refine macro (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update Wi-Fi Bluetooth coexistence version to 7.0.0 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Fix test fail when coexist with raspberryPI A2DP idle (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Correct A2DP exist variable source (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Set Bluetooth background scan PTA request priority (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Refine coexistence log (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Force to update TDMA parameter when radio state change (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Clear Bluetooth HW PTA counter when radio state change (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update Wi-Fi external control TDMA parameters/tables (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: change cfg80211_set_channel() name and signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Replace one-element arrays with flexible-array members (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Support firmware hotfix version in GET_HW_SPEC responses (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Support SD8978 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Add missing compatible string for SD8787 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Perform correct BCM4364 firmware selection (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4377 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4355 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Rename Cypress 89459 to BCM4355 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: mac: Use existing macros in rtw_pwr_seq_parser() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Move enum rtw_tx_queue_type mapping code to tx.{c,h} (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: pci: Change queue datatype to enum rtw_tx_queue_type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: pci: Use enum type for rtw_hw_queue_mapping() and ac_to_hwq (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: support ww power config in dts node (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0u: report firmware version through ethtool (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: complete wed reset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add mt7915 wed reset callbacks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: reset wed queues in mt76_dma_rx_reset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: add reset to mt76_dma_wed_setup signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add EHT beamforming support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable EHT support in firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add support for EHT rate report (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add EHT capability init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rework capability init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add helpers for wtbl and interface limit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add variants support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add EHT rate stats for ethtool (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: increase wcid size to 1088 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add cmd id related to EHT support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add helpers for EHT capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add CMD_CBW_320MHZ (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add EHT phy type (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: remove __mt76_mcu_restart macro (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_tx_complete_skb (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_txp_skb_unmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_txp_common structure (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac2_mac_tx_rate_val (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix error code of return in mt7921_acpi_read (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: release rxwi in mt7915_wed_release_rx_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix memory leak in mt7915_mmio_wed_init_rx_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix rx filter incorrect by drv/fw inconsistent (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add memory barrier to SDIO queue kick (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: reduce polling time in pmctrl (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add flexible polling wait-interval support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix WED TxS reporting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: wed: enable red per-band token drop (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: set sku initial value to zero (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921u: add support for Comfast CF-952AX (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix switch default case in mt7996_reverse_frag0_hdr_trans (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7603: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: fix memory leak running mt76_dma_tx_cleanup (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix memory leak in mt7996_mcu_exit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix memory leak in mt7915_mcu_exit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: introduce mt76_queue_is_wed_rx utility routine (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix invalid remain_on_channel duration (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: remove BW160 and BW80+80 support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: fix POWER_CTRL command name typo (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: do not hardcode vht beamform cap (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: update register for CFEND_RATE (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix chainmask calculation in mt7996_set_antenna() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix channel switch fail in monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add chip id condition in mt7915_check_eeprom() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add error message in mt7915_thermal_set_cur_throttle_state() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_thermal_temp_store() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_mcu_set_thermal_throttling (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: call mt7915_mcu_set_thermal_throttling() only after init_work (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix deadlock in mt7921_abort_roc (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Fix off by one in mhi_ep_process_cmd_ring() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix compilation errors in rfkill() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: bump FW API to 74 for AX devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Reset rate index if rate is wrong (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: simplify by using SKB MAC header pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add sniffer meta data APIs (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: rx: add sniffer support for EHT mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: always send nullfunc frames on MGMT queue (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: remove h from printk format specifier (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: improve tag handling in iwl_request_firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mention the response structure in the kerneldoc (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add minimal EHT rate reporting (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: free memory on error path in radix_tree_insert() (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Change state_lock to mutex (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Save channel state locally during suspend and resume (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Move chan->lock to the start of processing queued ch ring (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Fix the debug message for MHI_PKT_TYPE_RESET_CHAN_CMD cmd (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Only send -ENOTCONN status if client driver is available (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Check if the channel is supported by the controller (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Power up/down MHI stack during MHI RESET (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Update mhi driver description (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: Update Makefile to used Kconfig flags (Jose Ignacio Tornos Martinez) [2183487] - wifi: wireless: deny wireless extensions on MLO-capable devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: wireless: warn on most wireless extension usage (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: drop extra 'e' from ieeee80211... name (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Deduplicate certificate loading (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add kernel-doc for EHT structure (Jose Ignacio Tornos Martinez) [2183487] - mac80211: support minimal EHT rate reporting on RX (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Add HE MU-MIMO related flags in ieee80211_bss_conf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Add VHT MU-MIMO related flags in ieee80211_bss_conf (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Use MLD address to indicate MLD STA disconnection (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Support 32 bytes KCK key in GTK rekey offload (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix extended KCK key length check in nl80211_set_rekey_data() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: remove support for static WEP (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Add support to read EEPROM caldata (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Add new qmi_bdf_type to handle caldata (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Fix incorrect qmi_file_type enum values (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: dp_mon: Fix uninitialized warning related to the pktlog (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: dp_mon: Fix out of bounds clang warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal_rx: Use memset_startat() for clearing queue descriptors (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Fix uninitilized variable clang warnings (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: wmi: delete PSOC_HOST_MAX_NUM_SS (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal: convert offset macros to functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal: add ab parameter to macros using it (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix memory leak in ath11k_peer_rx_frag_setup (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix ce memory mapping for ahb devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Remove the unused function ath10k_ce_shadow_src_ring_write_index_set() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add channel 177 into 5 GHz channel list (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Add support to configure FTM responder role (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Fix potential stack-out-of-bounds write in ath9k_wmi_rsp_callback() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no callback function (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Dump the efuse only for untested devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Print the ROM version too (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Use non-atomic sta iterator in rtw_ra_mask_info_update() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Use rtw_iterate_vifs() for rtw_vif_watch_dog_iter() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Move register access from rtw_bf_assoc() outside the RCU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use a longer retry limit of 48 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Report the RSSI to the firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: rt2x00: Remove useless else if (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt7601u: fix an integer underflow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8723ae: fix obvious spelling error tyep->type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix memory leaks with RTL8723BU, RTL8192EU (Jose Ignacio Tornos Martinez) [2183487] - Revert "wifi: mac80211: fix memory leak in ieee80211_if_add()" (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: fix a regression in adding rx buffers (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: fill the missing configuration about queue empty checking (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix assignation of TX BD RAM table (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct ADC clock settings (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct register definitions of digital CFO and spur elimination (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: set the correct mac_id for management frames (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix null vif pointer when get management frame date rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change Wi-Fi role info related logic to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change RTL8852B use v1 TDMA policy (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Packet traffic arbitration hardware owner monitor (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: refactor debug log of slot list (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change firmware steps report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change Wi-Fi Null data report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add version code for Wi-Fi firmware coexistence control (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update WiFi role info H2C report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: only read Bluetooth counter of report version 1 for RTL8852A (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v5 firmware control report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change firmware control report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v4 version firmware cycle report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Rename BTC firmware cycle report by feature version (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Remove le32 to CPU translator at firmware cycle report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: Fix a typo in debug message (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out-of-bounds (Jose Ignacio Tornos Martinez) [2183487] - wifi: rndis_wlan: Prevent buffer overflow in rndis_query_oid (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: fix regression for Broadcom PCIe wifi devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: avoid NULL-deref in survey dump for 2G only device (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: avoid handling disabled channels for survey dump (Jose Ignacio Tornos Martinez) [2183487] - net: rfkill: gpio: add DT support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix double space in comment (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: debugfs: fix to work with multiple PCI devices (Jose Ignacio Tornos Martinez) [2183487] - mac80211: Fix MLO address translation for multiple bss case (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: reset multiple BSSID options in stop_ap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Fix iTXQ AMPDU fragmentation handling (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: sdata can be NULL during AMPDU start (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Proper mark iTXQs for resumption (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Prefer DT board type over DMI board type (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: remove most hidden macro dependencies on ah (Jose Ignacio Tornos Martinez) [2183487] - wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add rate control code for RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Support new chip RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Define masks for cck_agc_rpt bits (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Make rtl8xxxu_load_firmware take const char* (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Deduplicate the efuse dumping code (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: refine AGC tuning flow of DPK for irregular PA (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine 6 GHz scanning dwell time (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: update BSS color mapping register (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change TDMA related logic to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: refactor _chk_btc_report() to extend more features (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v2 BT AFH report and related variable (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update BTC firmware report bitmap definition (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Enable Bluetooth report when show debug info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: use new introduction BTC version format (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: add BTC format version derived from firmware version (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: select CONFIG_RELAY (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: Fix global-out-of-bounds bug in _rtl8812ae_phy_set_txpower_limit() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: recover RX DCK failure (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct DPK settings (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct DACK setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: adapt to new firmware format of security section (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: consider ER SU as a TX capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix assignment to bit field priv->cck_agc_report_type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix assignment to bit field priv->pi_enabled (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8723be: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8188ee: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8821ae: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: get rid of wed rx_buf_ring page_frag_cache (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: resource leaks at mt7921_check_offload_capability() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: rely on queue page_frag_cache for wed rx queues (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: handle possible mt76_rx_token_consume failures (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: do not increment queue head if mt76_dma_add_buf fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: enable per-phy led support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable per-phy led support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move leds struct in mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move leds field in leds struct (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix unintended sign extension of mt7915_hw_queue_read() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix unintended sign extension of mt7996_hw_queue_read() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add support to update fw capability with MTFG table (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0: fix oob access in mt76x0_phy_get_target_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix endianness warning in mt7996_mcu_sta_he_tlv (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: drop always true condition of __mt7996_reg_addr() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: drop always true condition of __mt7915_reg_addr() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: check the correctness of event data (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: check return value before accessing free_block_num (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: check return value before accessing free_block_num (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: split mcu chan_mib array up (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix integer handling issue of mt7996_rf_regval_set() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_rx_radar_detected() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_ie_countdown() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix mt7915_rate_txpower_get() resource leaks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921s: fix slab-out-of-bounds access in sdio host (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add missing of_node_put() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix monitor mode bringup crash (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix scan request param frame size warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fixing IQK failures for rtl8192eu (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: btcoexist: fix conditions branches that are never executed (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8192se: remove redundant rtl_get_bbreg() call (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8723du chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8822cu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8822bu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8821cu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add common USB chip support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: iterate over vif/sta list non-atomically (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop coex mutex (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop h2c.lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop rf_lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Call rtw_fw_beacon_filter_config() with rtwdev->mutex held (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: print firmware type in info message (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add join info upon create interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix unsuccessful interface_add flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: stop mac port function when stop_ap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add mac TSF sync function (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Introduce rtl8xxxu_update_ra_report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix the channel width reporting (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add vendor name in revinfo debugfs file (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support Broadcom BCA firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support for Cypress firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support for vendor-specific firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add firmware vendor info in driver info (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add function to unbind device to bus layer api (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add ipq5018 device support (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add new hw ops for IPQ5018 to get rx dest ring hashmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: initialize hw_ops for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update hal srng regs for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: remap ce register space for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update ce configurations for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update hw params for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: fw: use correct IML/ROM status register (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dump: Update check for UMAC valid FW address (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: d3: add TKIP to the GTK iterator (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: clean up comments (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Don't use deprecated register (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: pcie: Add reading and storing of crf and cdb id. (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: replace usage of found with dedicated list iterator variable (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dump: Update check for valid FW address (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: don't access packet before checking len (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: modify new queue allocation command (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm-parse: enable WiFi7 for Fm radio for now (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add reset to rx_ring_setup callback (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix race condition with struct htt_ppdu_stats_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: fix QCOM_SMEM dependency (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921e: add pci .shutdown() support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: mmio: fix naming convention (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add support to configure spatial reuse parameter set (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rely on band_idx of mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable per bandwidth power limit support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: introduce mt7915_get_power_bound() (Jose Ignacio Tornos Martinez) [2183487] - mt76: mt7915: Fix PCI device refcount leak in mt7915_pci_init_hif2() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix coverity overrun-call in mt76_get_txpower() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0: remove dead code in mt76x0_phy_get_target_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix band_idx usage (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable .sta_set_txpwr support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add basedband Txpower info into debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add support to configure spatial reuse parameter set (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add missing MODULE_PARM_DESC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable WED RX stats (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable WED RX support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce mt76_connac_mcu_sta_wed_update utility routine (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add info parameter to rx_skb signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to dma queue alloc (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to mt76_dma_rx_fill (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to mt76_dma_{add,get}_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: introduce rxwi and rx token utility routines (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce helper for mt7996 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more starec command tags (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more bss info command tags (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce unified event table (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more unified command IDs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: rework fields for larger bandwidth support in sta_rec_bf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: update struct sta_rec_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: rework macros for unified command (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: introduce chanctx support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: introduce remain_on_channel support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: accept hw scan request at a time (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: drop ieee80211_[start, stop]_queues in driver (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add unified ROC cmd/event support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add chanctx parameter to mt76_connac_mcu_uni_add_bss signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add mt76_connac_mcu_uni_set_chctx (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: do not run mt76u_status_worker if the device is not running (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: update nss calculation in txs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: don't claim 160MHz support with mt7915 DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: Fix VHT beamforming capabilities with DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: Fix chainmask calculation on mt7915 DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable coredump support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add full system reset into debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable full system reset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_dma_reset() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move aggr_stats array in mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: rely on mt7615_phy in mt7615_mac_reset_counters (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix reporting of TX AGGR histogram (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix bandwidth 80MHz link fail in 6GHz band (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: improve accuracy of time_busy calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable wed for mt7986-wmac chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable wed for mt7986 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: move wed init routines in mmio.c (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix mt7915_mac_set_timing() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: set correct antenna for radar detection on MT7915D (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add spatial extension index support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce mt76_connac_spe_idx() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework testmode tx antenna setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: deal with special variant of mt7916 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework eeprom tx paths and streams init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: reserve 8 bits for the index of rf registers (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix bounds checking for tx-free-done command (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: Remove unused inline function mt76_wcid_mask_test() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x02: simplify struct mt76x02_rate_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move mt76_rate_power from core to mt76x02 driver code (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix and simplify unencrypted drop check for mesh (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add support for restricting netdev features per vif (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: update TIM for S1G specification changes (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: don't parse multi-BSSID in assoc resp (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: use bss_from_pub() instead of container_of() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove unnecessary synchronize_net() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Drop not needed check for NULL (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix not unregister reg_pdev when load_builtin_regdb_keys() fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: fix comparison of BSS frequencies (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Correct example of ieee80211_iface_limit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix memory leak in ieee80211_if_add() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ieee80211: Do not open-code qos address offsets (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: link rtw89_vif and chanctx stuffs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: implement MCC related H2C (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: mac: process MCC related C2H (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: introduce helpers to wait/complete on condition (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: check if atomic before queuing c2h (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: rfk: rename rtw89_mcc_info to rtw89_rfk_mcc_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: 8821c: enable BT device recovery mechanism (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: turn off PoP function in monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add HE radiotap for monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: enable mac80211 virtual monitor interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Check the count value of channel spec to prevent out-of-bounds reads (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add reset to tx_ring_setup callback (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add mtk_wed_rx_reset routine (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: update mtk_wed_stop (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: move MTK_WDMA_RESET_IDX_TX configuration in mtk_wdma_tx_reset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: return status value in mtk_wdma_rx_reset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add wcid overwritten support for wed v1 (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add configure wed wo support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: rename tx_wdma array in rx_wdma (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: introduce wed wo support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: introduce wed mcu support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add missing of_node_put() (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add missing put_device() in mtk_wed_add_hw() (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add axi bus support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add wed support for mt7986 chipset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add mtk_wed_configure_irq and mtk_wed_dma_{enable/disable} (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: fix off by one check of ARRAY_SIZE (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: add check for allocation failure (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc/wed: fix sparse endian warnings (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: fix return value check in mtk_wed_add_hw() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix parameter passing to iwl_mei_alive_notif() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: return error value in case PLDR sync failed (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: trigger PCI re-enumeration in case of PLDR sync (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: fix double free on tx path. (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: print OTP info after alive (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm: Update EHT capabilities for GL device (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm-parse: support A-MPDU in EHT 2.4 GHz (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: advertise 320 MHz in 6 GHz only conditionally (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: set HE PHY bandwidth according to band (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support PPE Thresholds for EHT (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add support for EHT 1K aggregation size (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: rs: add support for parsing max MCS per NSS/BW in 11be (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support 320 MHz PHY configuration (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Advertise EHT capabilities (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: fix race condition when doing H2C command (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Store WLAN firmware version in SMEM image table (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: avoid inaccessible IO operations during doing change_interface() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: switch BANDEDGE and TX_SHAPE based on OFDMA trigger frame (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: read CFO from FD or preamble CFO field of phy status ie_type 1 accordingly (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: correct TX power controlled by BT-coexistence (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Use struct_size() in code ralated to struct brcmf_dload_data_le (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: replace one-element array with flexible-array member in struct brcmf_dload_data_le (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Use struct_size() and array_size() in code ralated to struct brcmf_gscan_config (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Remove redundant argument offset (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Fix return value in ath10k_pci_init() (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add definition for some VIDs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: Fix some error handling path in rtw89_wow_enable() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Avoid clashing function prototypes (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use u32_get_bits in *_identify_chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use strscpy instead of sprintf (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Name some bits used in burst init (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Rename rtl8xxxu_8188f_channel_to_group (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Split up rtl8xxxu_identify_chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Move burst init to a function (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: wait for the mac to stop on suspend (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: iwlmei: report disconnection as temporary (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: use wait_event_timeout() return value (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: implement PLDR flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Fix getting the lowest rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support new key API (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dbg: use bit of DRAM alloc ID to store failed allocs (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: print an error instead of a warning on invalid rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: cfg: disable STBC for BL step A devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dbg: add support for DBGC4 on BZ family and above (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: use old checksum for Bz A-step (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix potential NULL-ptr deref after clone (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: avoid blocking sap messages handling due to rtnl lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix tx DHCP packet for devices with new Tx API (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: don't send SAP commands if AMT is disabled (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: make sure ownership confirmed message is sent (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: send TKIP connection status to csme (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Use IEEE80211_SEQ_TO_SN() for seq_ctrl conversion (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Remove unused variable mismatch (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: change debug mask of message of no TX resource (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Trigger sta disconnect on hardware restart (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: update D-MAC and C-MAC dump to diagnose SER (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: dump dispatch status via debug port (Jose Ignacio Tornos Martinez) [2183487] - wifi: Use kstrtobool() instead of strtobool() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Avoiding Connection delay (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix for when connect request is not success (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: correctly remove all p2p vif (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add HP variant of T99W175 (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: add support for sc8280xp-crd SDX55 variant (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use dev_* instead of pr_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Set IEEE80211_HW_SUPPORT_FAST_XMIT (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Recognise all possible chip cuts (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix the CCK RSSI calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add central frequency offset tracking (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential NULL pointer dereference in 'brcmf_c_preinit_dcmds()' (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix a typo "unknow" (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8192ee: remove static variable stop_report_cnt (Jose Ignacio Tornos Martinez) [2183487] - bcma: Use the proper gpio include (Jose Ignacio Tornos Martinez) [2183487] - mtd: rawnand: brcmnand: Add platform data structure for BCMA (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential shift-out-of-bounds in brcmf_fw_alloc_request() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Make QMI message rules const (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Make QMI message rules const (Jose Ignacio Tornos Martinez) [2183487] - soc: qcom: qmi: use const for struct qmi_elem_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix qmi_msg_handler data structure initialization (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: remove variable sent (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: Fix spelling mistake KIP_RESOTRE -> KIP_RESTORE (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add WoWLAN pattern match support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add WoWLAN function support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add related H2C for WoWLAN mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add drop tx packet function (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add function to adjust and restore PLE quota (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: move enable_cpu/disable_cpu into fw_download (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: collect and send RF parameters to firmware for WoWLAN (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: check if sta's mac_id is valid under AP/TDLS (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add BW info for both TX and RX in phy_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: make table of RU mask constant (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: declare support bands with const (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: adapt to new firmware format of dynamic header (Jose Ignacio Tornos Martinez) [2183487] - net: Remove the obsolte u64_stats_fetch_*_irq() users (net). (Jose Ignacio Tornos Martinez) [2183487] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add a secondary AT port to Telit FN990 (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Fix race between channel preparation and M0 event (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Use mhi_soc_reset() API in place of register write (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix monitor vdev creation with firmware recovery (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix reads of uninitialized variables hw_ctrl_s1, sw_ctrl_s1 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add 8852be to Makefile and Kconfig (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: add dummy C2H handler to avoid warning message (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops related to RF calibration (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add DPK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add TSSI (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add IQK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add RX DCK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add RCK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add DACK (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Delay the unmapping of the buffer (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Check return value of ath10k_get_arvif() in ath10k_wmi_event_tdls_peer() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix firmware crash on vdev delete race condition (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Send PME message during wakeup from D3cold (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add support to configure channel dwell time (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: suppress add interface error (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add basic attributes of chip_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add functions to control BB to assist RF calibrations (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to configure TX/RX path (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to query PPDU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops related to BT coexistence (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to get thermal (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add basic baseband chip_ops (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add power on/off functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_channel_help (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Update module description (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix reading the vendor of combo chips (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Make some arrays const (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix wrong bandwidth settings after scan (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct 6 GHz scan behavior (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_channel (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: make generic functions to convert subband gain index (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add HFC quota arrays (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: set proper configuration before loading NCTL (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: parse PHY status only when PPDU is to_self (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: move chip_ops::btc_bt_aci_imp to a generic code (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: verify the expected usb_endpoints are present (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Remove -Warray-bounds exception (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: fix memory leak of urbs in ath9k_hif_usb_dealloc_tx_urbs() (Jose Ignacio Tornos Martinez) [2183487] - wifi: realtek: remove duplicated wake_tx_queue (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Make arrays prof_prio and channelmap static const (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix spelling mistake "chnange" -> "change" (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Drop support for TX push path (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add wake_tx_queue callback to drivers (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add internal handler for wake_tx_queue (Jose Ignacio Tornos Martinez) [2183487] - cfg80211: Update Transition Disable policy during port authorization (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: minstrel_ht: remove unused has_mrr member from struct minstrel_priv (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove support for AddBA with fragmentation (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: agg-rx: avoid band check (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: prohibit IEEE80211_HT_CAP_DELAY_BA with MLO (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: don't clear DTIM period after setting it (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: change AddBA deny error message (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: mlme: mark assoc link in output (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add RCU _check() link access variants (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix AddBA response addressing (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: set internal scan request BSSID (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: advertise TWT requester only with HW support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: use link_id in ieee80211_change_bss() (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: use link ID in NL80211_CMD_SET_BSS (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: transmit AddBA with MLD address (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: wme: use ap_addr instead of deflink BSSID (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Process association status for affiliated links (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Parse station profile from association response (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211/mac80211: Fix ML element common size validation (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211/mac80211: Fix ML element common size calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: ieee80211: Support validating ML station profile length (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: support reporting failed links (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: recalc station aggregate data during link switch (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: include link address in debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add API to show the link STAs in debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add pointer from link STA to STA (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add to dump TX FIFO 0/1 for 8852C (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: set pin MUX to enable BT firmware log (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: ignore warning of bb gain cfg_type 4 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: update BB parameters to v28 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct miscoding delay of DPK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: correct set of IQK backup registers (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Fix AP interface delete issue (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: support station interface creation version 1, 2 and 3 (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: add creating station interface support (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: dump dongle memory when attaching failed (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: return error when getting invalid max_flowrings from dongle (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: add a timer to read console periodically in PCIE bus (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Fix authentication latency caused by OBSS stats survey (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: fix CERT-P2P:5.1.10 failure (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: fix firmware trap while dumping obss stats (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Add dump_survey cfg80211 ops for HostApd AutoChannelSelection (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Support new chip RTL8188FU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852be: add 8852BE PCI entry (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to read phy cap (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to read efuse (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_txpwr (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: debug: txpwr_table considers sign (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: make generic txpwr setting functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add tables for RFK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add BB and RF tables (2 of 2) (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add BB and RF tables (1 of 2) (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Don't exit on wakeup failure (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: stop tx queues immediately upon firmware exit (Jose Ignacio Tornos Martinez) [2183487] - Revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues" (Jose Ignacio Tornos Martinez) [2183487] - treewide: use get_random_u32() when possible (Jose Ignacio Tornos Martinez) [2183487] - treewide: use prandom_u32_max() when possible, part 1 (Jose Ignacio Tornos Martinez) [2183487] - hwrng: core - let sleep be interrupted when unregistering hwrng (Jose Ignacio Tornos Martinez) [2183487] - tracing/kprobes: Do the notrace functions check without kprobes on ftrace (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix a double initialization typo (Mukesh Chaurasiya) [2203370] - tracing/kprobe: Check whether the non-suffixed symbol is notrace (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix to check notrace function with correct range (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix within_notrace_func() to check only notrace functions (Mukesh Chaurasiya) [2203370] - powerpc/kprobes: Fix kprobe Oops happens in booke (Mukesh Chaurasiya) [2203370] - xfs: verify buffer contents when we skip log replay (Andrey Albershteyn) [2187456] {CVE-2023-2124} - perf c2c: Add report option to show false sharing in adjacent cachelines (Michael Petlan) [2193188] - powerpc/papr_scm: Update the NUMA distance table for the target node (Mamatha Inamdar) [2183474] - i2c: xgene-slimpro: Fix out-of-bounds bug in xgene_slimpro_i2c_xfer() (Tony Camuso) [2188408] {CVE-2023-2194} - prlimit: do_prlimit needs to have a speculation check (Alex Gladkov) [2196314] {CVE-2023-0458} - vmxnet3: use gro callback when UPT is enabled (Izabela Bakollari) [2183057] - r8152: Rate limit overflow messages (Jose Ignacio Tornos Martinez) [2153573] {CVE-2022-3594} - docs: Remove unnecessary unicode character (Patrick Talbert) [2207988] - PCI: vmd: Add quirk to configure PCIe ASPM and LTR (Myron Stowe) [2136922] - PCI: vmd: Create feature grouping for client products (Myron Stowe) [2136922] - PCI: vmd: Use PCI_VDEVICE in device list (Myron Stowe) [2136922] - PCI/ASPM: Add pci_enable_link_state() (Myron Stowe) [2136922] - PCI: vmd: Fix secondary bus reset for Intel bridges (Myron Stowe) [2136922] - PCI: vmd: Disable MSI remapping after suspend (Myron Stowe) [2136922] - PCI: vmd: Add DID 8086:7D0B and 8086:AD0B for Intel MTL SKUs (Myron Stowe) [2136922] - PCI: vmd: Use devm_kasprintf() instead of simple kasprintf() (Myron Stowe) [2136922]- net/sched: sch_fq: fix integer overflow of "credit" (Davide Caratti) [2187718] - net: sched: gred: prevent races when adding offloads to stats (Davide Caratti) [2187718] - sch_htb: Avoid grafting on htb_destroy_class_offload when destroying htb (Davide Caratti) [2187718] - net/sched: act_mpls: Fix warning during failed attribute validation (Davide Caratti) [2187718] - net: sched: fix memory leak in tcindex_set_parms (Davide Caratti) [2187718] - net_sched: reject TCF_EM_SIMPLE case for complex ematch module (Davide Caratti) [2187718] - net: sched: Fix use after free in red_enqueue() (Davide Caratti) [2187718] - net: sched: fix race condition in qdisc_graft() (Davide Caratti) [2187718] - net: sched: sfb: fix null pointer access issue when sfb_init() fails (Davide Caratti) [2187718] - net/sched: cls_api: Fix flow action initialization (Davide Caratti) [2187718] - scsi: lpfc: Update inbox lpfc driver for RHEL 8.9 to 14.0.0.21. (Paul Ely) [2165048] - scsi: lpfc: Copyright updates for 14.2.0.11 patches (Paul Ely) [2165048] - scsi: lpfc: Copyright updates for 14.2.0.10 patches (Paul Ely) [2165048] - scsi: lpfc: Defer issuing new PLOGI if received RSCN before completing REG_LOGIN (Paul Ely) [2165048] - scsi: lpfc: Record LOGO state with discovery engine even if aborted (Paul Ely) [2165048] - scsi: lpfc: Fix lockdep warning for rx_monitor lock when unloading driver (Paul Ely) [2165048] - scsi: lpfc: Reorder freeing of various DMA buffers and their list removal (Paul Ely) [2165048] - scsi: lpfc: Prevent lpfc_debugfs_lockstat_write() buffer overflow (Paul Ely) [2165048] - scsi: lpfc: Introduce new attention types for lpfc_sli4_async_fc_evt() handler (Paul Ely) [2165048] - scsi: lpfc: Fix use-after-free KFENCE violation during sysfs firmware write (Paul Ely) [2165048] - scsi: lpfc: Exit PRLI completion handling early if ndlp not in PRLI_ISSUE state (Paul Ely) [2165048] - scsi: lpfc: Remove duplicate ndlp kref decrement in lpfc_cleanup_rpis() (Paul Ely) [2165048] - scsi: lpfc: Remove redundant clean up code in disable_vport() (Paul Ely) [2165048] - scsi: lpfc: Fix crash involving race between FLOGI timeout and devloss handler (Paul Ely) [2165048] - net: sched: sch_qfq: prevent slab-out-of-bounds in qfq_activate_agg (Ricardo Robaina) [2192680] {CVE-2023-2248 CVE-2023-31436} - vfio/ccw: remove old IDA format restrictions (Tobias Huschle) [2187662] - vfio/ccw: handle a guest Format-1 IDAL (Tobias Huschle) [2187662] - vfio/ccw: allocate/populate the guest idal (Tobias Huschle) [2187662] - vfio/ccw: calculate number of IDAWs regardless of format (Tobias Huschle) [2187662] - vfio/ccw: read only one Format-1 IDAW (Tobias Huschle) [2187662] - vfio/ccw: refactor the idaw counter (Tobias Huschle) [2187662] - vfio/ccw: populate page_array struct inline (Tobias Huschle) [2187662] - vfio/ccw: record the page offset in struct pfn_array (Tobias Huschle) [2187662] - vfio/ccw: pass page count to page_array struct (Tobias Huschle) [2187662] - vfio/ccw: simplify CCW chain fetch routines (Tobias Huschle) [2187662] - vfio/ccw: move where IDA flag is set in ORB (Tobias Huschle) [2187662] - vfio/ccw: allow non-zero storage keys (Tobias Huschle) [2187662] - iavf: remove active_cvlans and active_svlans bitmaps (Stefan Assmann) [2153349] - iavf: refactor VLAN filter states (Stefan Assmann) [2153349] - iavf: do not track VLAN 0 filters (Stefan Assmann) [2153349] - iavf: fix non-tunneled IPv6 UDP packet type and hashing (Stefan Assmann) [2153349] - iavf: fix inverted Rx hash condition leading to disabled hash (Stefan Assmann) [2153349] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Stefan Assmann) [2153349] - iavf/iavf_main: actually log ->src mask when talking about it (Stefan Assmann) [2153349] - iavf: Fix VF driver counting VLAN 0 filters (Stefan Assmann) [2153349] - iavf: Change information about device removal in dmesg (Stefan Assmann) [2153349] - iavf: Replace __FUNCTION__ with __func__ (Stefan Assmann) [2153349] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Stefan Assmann) [2153349] - ipv4: prevent potential spectre v1 gadget in fib_metrics_match() (Guillaume Nault) [2188040] - ipv4: prevent potential spectre v1 gadget in ip_metrics_convert() (Guillaume Nault) [2188040] - ipv4: Fix error return code in fib_table_insert() (Guillaume Nault) [2188040] - ipv4: drop dst in multicast routing path (Guillaume Nault) [2188040] - net: igmp: respect RCU rules in ip_mc_source() and ip_mc_msfilter() (Guillaume Nault) [2188040] - xfrm: Zero padding when dumping algos and encap (Sabrina Dubroca) [2189212] - xfrm: redact SA secret with lockdown confidentiality (Sabrina Dubroca) [2189212] - xfrm: fix bug with DSCP copy to v6 from v4 tunnel (Sabrina Dubroca) [2189212] - xfrm: enforce validity of offload input flags (Sabrina Dubroca) [2189212] - ice: Remove LAG+SRIOV mutual exclusion (Michal Schmidt) [2120585] - ext4: correct the misjudgment in ext4_iget_extra_inode (Carlos Maiolino) [2193101] - ext4: correct max_inline_xattr_value_size computing (Carlos Maiolino) [2193101] - ext4: fix use-after-free in ext4_xattr_set_entry (Carlos Maiolino) [2193101] {CVE-2023-2513} - ext4: add EXT4_INODE_HAS_XATTR_SPACE macro in xattr.h (Carlos Maiolino) [2193101] - ixgbevf: Fix resource leak in ixgbevf_init_module() (Ken Cox) [2153374] - ixgbevf: Add error messages on vlan error (Ken Cox) [2153374]- kunit: make kunit_test_timeout compatible with comment (Nico Pache) [2168375] - kunit: fix assert_type for comparison macros (Nico Pache) [2168375] - redhat: include new kunit tests in mod-internals (Nico Pache) [2168375] - kernel.h: split out mathematical helpers (Nico Pache) [2168375] - linux/kernel.h: fix overflow for DIV_ROUND_UP_ULL (Nico Pache) [2168375] - linux/kernel.h: Use parentheses around argument in u64_to_user_ptr() (Nico Pache) [2168375] - : drop the gcc-3.3 'const' hack in roundup() (Nico Pache) [2168375] - kernel.h: documentation for roundup() vs round_up() (Nico Pache) [2168375] - apparmor: test: Use NULL macros (Nico Pache) [2168375] - kasan: test: Use NULL macros (Nico Pache) [2168375] - kunit: use NULL macros (Nico Pache) [2168375] - kunit: Introduce _NULL and _NOT_NULL macros (Nico Pache) [2168375] - kunit: decrease macro layering for EQ/NE asserts (Nico Pache) [2168375] - kunit: decrease macro layering for integer asserts (Nico Pache) [2168375] - kunit: reduce layering in string assertion macros (Nico Pache) [2168375] - kunit: drop unused intermediate macros for ptr inequality checks (Nico Pache) [2168375] - kunit: make KUNIT_EXPECT_EQ() use KUNIT_EXPECT_EQ_MSG(), etc. (Nico Pache) [2168375] - Documentation: kunit: Remove redundant 'tips.rst' page (Nico Pache) [2168375] - Documentation: KUnit: reword description of assertions (Nico Pache) [2168375] - kunit: tool: Don't download risc-v opensbi firmware with wget (Nico Pache) [2168375] - drm/tests: Split up test cases in igt_check_drm_format_min_pitch (Nico Pache) [2168375] - kunit: executor: Fix a memory leak on failure in kunit_filter_tests (Nico Pache) [2168375] - Documentation: kunit: Cleanup run_wrapper, fix x-ref (Nico Pache) [2168375] - kunit: use kmemdup in kunit_filter_tests(), take suite as const (Nico Pache) [2168375] - kunit: fix executor OOM error handling logic on non-UML (Nico Pache) [2168375] - drm: selftest: convert drm_mm selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_buddy selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_framebuffer selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_dp_mst_helper selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_plane_helper selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_format selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_rect selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_cmdline_parser selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_damage_helper selftest to KUnit (Nico Pache) [2168375] - drm/doc: Add KUnit documentation (Nico Pache) [2168375] - kunit: drop unused assert_type from kunit_assert and clean up macros (Nico Pache) [2168375] - kunit: split out part of kunit_assert into a static const (Nico Pache) [2168375] - kunit: factor out kunit_base_assert_format() call into kunit_fail() (Nico Pache) [2168375] - kunit: drop unused kunit* field in kunit_assert (Nico Pache) [2168375] - kunit: move check if assertion passed into the macros (Nico Pache) [2168375] - kunit: tool: misc cleanups (Nico Pache) [2168375] - kunit: tool: minor cosmetic cleanups in kunit_parser.py (Nico Pache) [2168375] - kunit: tool: make parser stop overwriting status of suites w/ no_tests (Nico Pache) [2168375] - kunit: tool: remove dead parse_crash_in_log() logic (Nico Pache) [2168375] - kunit: tool: print clearer error message when there's no TAP output (Nico Pache) [2168375] - kunit: tool: stop using a shell to run kernel under QEMU (Nico Pache) [2168375] - kunit: tool: update test counts summary line format (Nico Pache) [2168375] - kunit: bail out of test filtering logic quicker if OOM (Nico Pache) [2168375] - lib/Kconfig.debug: change KUnit tests to default to KUNIT_ALL_TESTS (Nico Pache) [2168375] - kunit: Rework kunit_resource allocation policy (Nico Pache) [2168375] - thunderbolt: Add KUnit test for devices with no DisplayPort adapters (Nico Pache) [2168375] - drm/todo: Add entry for converting kselftests to kunit (Nico Pache) [2168375] - drm/todo: Add entry for using kunit in the subsystem (Nico Pache) [2168375] - kunit: fix debugfs code to use enum kunit_status, not bool (Nico Pache) [2168375] - kunit: add ability to specify suite-level init and exit functions (Nico Pache) [2168375] - kunit: rename print_subtest_{start,end} for clarity (s/subtest/suite) (Nico Pache) [2168375] - kunit: add support for kunit_suites that reference init code (Nico Pache) [2168375] - Documentation: kunit: change complete_and_exit to kthread_complete_and_exit (Nico Pache) [2168375] - mm/slub, kunit: Make slub_kunit unaffected by user specified flags (Nico Pache) [2168375] - kunit: Make kunit_remove_resource() idempotent (Nico Pache) [2168375] - list: test: Test the hlist structure (Nico Pache) [2168375] - ASoC: soc-utils: Add kunit test for snd_soc_tdm_params_to_bclk() (Nico Pache) [2168375] - ASoC: soc-utils: Add helper to calculate BCLK from TDM info (Nico Pache) [2168375] - Documentation: kunit: update kconfig options needed for UML coverage (Nico Pache) [2168375] - kunit: split resource API impl from test.c into new resource.c (Nico Pache) [2168375] - kunit: split resource API from test.h into new resource.h (Nico Pache) [2168375] - kunit: tool: more descriptive metavars/--help output (Nico Pache) [2168375] - kunit: tool: Do not colorize output when redirected (Nico Pache) [2168375] - kunit: tool: properly report the used arch for --json, or '' if not known (Nico Pache) [2168375] - kunit: tool: refactor how we plumb metadata into JSON (Nico Pache) [2168375] - kunit: tool: drop mostly unused KunitResult.result field (Nico Pache) [2168375] - kunit: tool: readability tweaks in KernelCI json generation logic (Nico Pache) [2168375] - kunit: tool: simplify code since build_dir can't be None (Nico Pache) [2168375] - kunit: tool: drop last uses of collections.namedtuple (Nico Pache) [2168375] - kunit: tool: drop unused KernelDirectoryPath var (Nico Pache) [2168375] - kunit: tool: make --json handling a bit clearer (Nico Pache) [2168375] - Documentation: kunit: fix path to .kunitconfig in start.rst (Nico Pache) [2168375] - Documentation: kunit: Fix cross-referencing warnings (Nico Pache) [2168375] - binfmt_elf: Introduce KUnit test (Nico Pache) [2168375] - list: test: Add a test for list_entry_is_head() (Nico Pache) [2168375] - list: test: Add a test for list_is_head() (Nico Pache) [2168375] - list: test: Add test for list_del_init_careful() (Nico Pache) [2168375] - list: introduce list_is_head() helper and re-use it in list.h (Nico Pache) [2168375] - list: add "list_del_init_careful()" to go with "list_empty_careful()" (Nico Pache) [2168375] - kunit: add example test case showing off all the expect macros (Nico Pache) [2168375] - test_hash.c: refactor into kunit (Nico Pache) [2168375] - lib/Kconfig.debug: properly split hash test kernel entries (Nico Pache) [2168375] - test_hash.c: split test_hash_init (Nico Pache) [2168375] - test_hash.c: split test_int_hash into arch-specific functions (Nico Pache) [2168375] - hash.h: remove unused define directive (Nico Pache) [2168375] - iio: test: Add check against NULL for buffer in tests. (Nico Pache) [2168375] - net: kunit: add a test for dev_addr_lists (Nico Pache) [2168375] - kprobes: convert tests to kunit (Nico Pache) [2168375] - bitfield: build kunit tests without structleak plugin (Nico Pache) [2168375] - thunderbolt: build kunit tests without structleak plugin (Nico Pache) [2168375] - iio/test-format: build kunit tests without structleak plugin (Nico Pache) [2168375] - gcc-plugins/structleak: add makefile var for disabling structleak (Nico Pache) [2168375] - math: RATIONAL_KUNIT_TEST should depend on RATIONAL instead of selecting it (Nico Pache) [2168375] - math: make RATIONAL tristate (Nico Pache) [2168375] - rtc: move RTC_LIB_KUNIT_TEST to proper location (Nico Pache) [2168375] - rtc: Improve performance of rtc_time64_to_tm(). Add tests. (Nico Pache) [2168375] - lib/math/rational: add Kunit test cases (Nico Pache) [2168375] - time/kunit: Add missing MODULE_LICENSE() (Nico Pache) [2168375] - kasan: test: make use of kunit_skip() (Nico Pache) [2168375] - time: Improve performance of time64_to_tm() (Nico Pache) [2168375] - iio: Remove a cast in iio-test-format which is no longer required (Nico Pache) [2168375] - lib: kunit: suppress a compilation warning of frame size (Nico Pache) [2168375] - kasan: docs: update tests section (Nico Pache) [2168375] - iio: Add basic unit test for iio_format_value() (Nico Pache) [2168375] - Documentation: KUnit: Fix usage bug (Nico Pache) [2168375] - kunit: fix missing f in f-string in run_checks.py (Nico Pache) [2168375] - kunit: tool: Import missing importlib.abc (Nico Pache) [2168375] - kunit: replace kernel.h with the necessary inclusions (Nico Pache) [2168375] - Documentation: KUnit: Restyled Frequently Asked Questions (Nico Pache) [2168375] - Documentation: KUnit: Restyle Test Style and Nomenclature page (Nico Pache) [2168375] - Documentation: KUnit: Rework writing page to focus on writing tests (Nico Pache) [2168375] - Documentation: kunit: Reorganize documentation related to running tests (Nico Pache) [2168375] - Documentation: KUnit: Added KUnit Architecture (Nico Pache) [2168375] - Documentation: KUnit: Rewrite getting started (Nico Pache) [2168375] - Documentation: KUnit: Rewrite main page (Nico Pache) [2168375] - kunit: tool: Default --jobs to number of CPUs (Nico Pache) [2168375] - kunit: tool: fix newly introduced typechecker errors (Nico Pache) [2168375] - kunit: tool: make `build` subcommand also reconfigure if needed (Nico Pache) [2168375] - kunit: tool: delete kunit_parser.TestResult type (Nico Pache) [2168375] - kunit: tool: use dataclass instead of collections.namedtuple (Nico Pache) [2168375] - kunit: tool: suggest using decode_stacktrace.sh on kernel crash (Nico Pache) [2168375] - kunit: tool: reconfigure when the used kunitconfig changes (Nico Pache) [2168375] - kunit: tool: revamp message for invalid kunitconfig (Nico Pache) [2168375] - kunit: tool: add --kconfig_add to allow easily tweaking kunitconfigs (Nico Pache) [2168375] - kunit: tool: move Kconfig read_from_file/parse_from_string to package-level (Nico Pache) [2168375] - kunit: tool: print parsed test results fully incrementally (Nico Pache) [2168375] - kunit: Report test parameter results as (K)TAP subtests (Nico Pache) [2168375] - kunit: Don't crash if no parameters are generated (Nico Pache) [2168375] - kunit: tool: Report an error if any test has no subtests (Nico Pache) [2168375] - kunit: tool: Do not error on tests without test plans (Nico Pache) [2168375] - kunit: add run_checks.py script to validate kunit changes (Nico Pache) [2168375] - kunit: tool: fix --json output for skipped tests (Nico Pache) [2168375] - kunit: tool: fix typecheck errors about loading qemu configs (Nico Pache) [2168375] - kunit: tool: continue past invalid utf-8 output (Nico Pache) [2168375] - kunit: tool: improve compatibility of kunit_parser with KTAP specification (Nico Pache) [2168375] - kunit: tool: yield output from run_kernel in real time (Nico Pache) [2168375] - kunit: tool: support running each suite/test separately (Nico Pache) [2168375] - kunit: tool: actually track how long it took to run tests (Nico Pache) [2168375] - kunit: tool: factor exec + parse steps into a function (Nico Pache) [2168375] - kunit: add 'kunit.action' param to allow listing out tests (Nico Pache) [2168375] - kunit: tool: show list of valid --arch options when invalid (Nico Pache) [2168375] - kunit: tool: misc fixes (unused vars, imports, leaked files) (Nico Pache) [2168375] - kunit: fix too small allocation when using suite-only kunit.filter_glob (Nico Pache) [2168375] - kunit: tool: allow filtering test cases via glob (Nico Pache) [2168375] - kunit: tool: better handling of quasi-bool args (--json, --raw_output) (Nico Pache) [2168375] - kunit: tool: make --raw_output support only showing kunit output (Nico Pache) [2168375] - kunit: tool: add --kernel_args to allow setting module params (Nico Pache) [2168375] - kunit: tool: Assert the version requirement (Nico Pache) [2168375] - kunit: tool: remove unnecessary "annotations" import (Nico Pache) [2168375] - Documentation: kunit: drop obsolete note about uml_abort for coverage (Nico Pache) [2168375] - kunit: tool: Fix error messages for cases of no tests and wrong TAP header (Nico Pache) [2168375] - kunit: tool: Support skipped tests in kunit_tool (Nico Pache) [2168375] - kunit: tool: internal refactor of parser input handling (Nico Pache) [2168375] - kunit: Remove the unused all_tests.config (Nico Pache) [2168375] - kunit: Move default config from arch/um -> tools/testing/kunit (Nico Pache) [2168375] - kunit: arch/um/configs: Enable KUNIT_ALL_TESTS by default (Nico Pache) [2168375] - kunit: tool: add support for QEMU (Nico Pache) [2168375] - kunit: tool: make --kunitconfig accept dirs, add lib/kunit fragment (Nico Pache) [2168375] - kunit: tool: Disable PAGE_POISONING under --alltests (Nico Pache) [2168375] - kunit: tool: Fix a python tuple typing error (Nico Pache) [2168375] - iommu/amd: Indicate whether DMA remap support is enabled (Desnes Nunes) [2184064] - Revert "usb: typec: ucsi: add a common function ucsi_unregister_connectors()" (Desnes Nunes) [2184064] - usb: typec: ucsi: Only check the contract if there is a connection (Desnes Nunes) [2184064] - media: uvcvideo: Fix InterfaceProtocol for Quanta camera (Desnes Nunes) [2184064] - net: thunderbolt: fix memory leak in tbnet_open() (Desnes Nunes) [2184064] - USB: serial: option: add u-blox LARA-L6 modem (Desnes Nunes) [2184064] - USB: serial: option: add u-blox LARA-R6 00B modem (Desnes Nunes) [2184064] - USB: serial: option: remove old LARA-R6 PID (Desnes Nunes) [2184064] - net: thunderbolt: Fix error handling in tbnet_init() (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom FM160 0x0111 composition (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom MA510 modem (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom L610 modem (Desnes Nunes) [2184064] - USB: serial: option: add device id for Foxconn T99W265 (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom FM101-GL variants (Desnes Nunes) [2184064] - USB: serial: option: add Telit LE910S1 0x9200 composition (Desnes Nunes) [2184064] - usb: add NO_LPM quirk for Realforce 87U Keyboard (Desnes Nunes) [2184064] - usb: typec: tipd: Prevent uninitialized event{1,2} in IRQ handler (Desnes Nunes) [2184064] - usb: typec: mux: Enter safe mode only when pins need to be reconfigured (Desnes Nunes) [2184064] - USB: bcma: Make GPIO explicitly optional (Desnes Nunes) [2184064] - USB: serial: option: add Sierra Wireless EM9191 (Desnes Nunes) [2184064] - xhci: Remove device endpoints from bandwidth list when freeing the device (Desnes Nunes) [2184064] - xhci-pci: Set runtime PM as default policy on all xHC 1.2 or later devices (Desnes Nunes) [2184064] - xhci: Add quirk to reset host back to default state at shutdown (Desnes Nunes) [2184064] - usb: xhci: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller (Desnes Nunes) [2184064] - Revert "xhci: turn off port power in shutdown" (Desnes Nunes) [2184064] - xhci-pci: Allow host runtime PM as default for Intel Meteor Lake xHCI (Desnes Nunes) [2184064] - xhci-pci: Allow host runtime PM as default for Intel Raptor Lake xHCI (Desnes Nunes) [2184064] - xhci: turn off port power in shutdown (Desnes Nunes) [2184064] - xhci: Keep interrupt disabled in initialization until host is running. (Desnes Nunes) [2184064] - fbdev: sisfb: use explicitly signed char (Desnes Nunes) [2184064] - usb: typec: ucsi: acpi: Implement resume callback (Desnes Nunes) [2184064] - usb: typec: ucsi: Check the connection on resume (Desnes Nunes) [2184064] - usb: host: ehci-exynos: switch to using gpiod API (Desnes Nunes) [2184064] - usb: typec: ucsi_ccg: Disable UCSI ALT support on Tegra (Desnes Nunes) [2184064] - usb: typec: Replace custom implementation of device_match_fwnode() (Desnes Nunes) [2184064] - usb: typec: ucsi: Don't warn on probe deferral (Desnes Nunes) [2184064] - usb: typec: ucsi: Wait for the USB role switches (Desnes Nunes) [2184064] - usb: typec: ucsi: add a common function ucsi_unregister_connectors() (Desnes Nunes) [2184064] - usb: typec: ucsi: Better fix for missing unplug events issue (Desnes Nunes) [2184064] - usb: typec: ucsi: Read the PDOs in separate work (Desnes Nunes) [2184064] - usb: typec: ucsi: Check the partner alt modes always if there is PD contract (Desnes Nunes) [2184064] - usb: typec: ucsi: acpi: Reduce the command completion timeout (Desnes Nunes) [2184064] - usb: typec: ucsi: Add polling mechanism for partner tasks like alt mode checking (Desnes Nunes) [2184064] - usb: typec: ucsi: Don't stop alt mode registration on busy condition (Desnes Nunes) [2184064] - usb: typec: ucsi: Always cancel the command if PPM reports BUSY condition (Desnes Nunes) [2184064] - usb: add quirks for Lenovo OneLink+ Dock (Desnes Nunes) [2184064] - USB: NO_LPM quirk Lenovo USB-C to Ethernet Adapher(RTL8153-04) (Desnes Nunes) [2184064] - USB: NO_LPM quirk Lenovo Powered USB-C Travel Hub (Desnes Nunes) [2184064] - usb: idmouse: fix an uninit-value in idmouse_open (Desnes Nunes) [2184064] - usb: ulpi: use DEFINE_SHOW_ATTRIBUTE to simplify ulpi_regs (Desnes Nunes) [2184064] - usb: ulpi: Add debugfs support (Desnes Nunes) [2184064] - usb: typec: fusb302: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - usb: typec: qcom-pmic-typec: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - usb: typec: stusb160x: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - USB: serial: qcserial: add new usb-id for Dell branded EM7455 (Desnes Nunes) [2184064] - thunderbolt: Explicitly enable lane adapter hotplug events at startup (Desnes Nunes) [2184064] - media: flexcop-usb: use usb_endpoint_maxp() (Desnes Nunes) [2184064] - media: flexcop-usb: clean up URB initialisation (Desnes Nunes) [2184064] - media: flexcop-usb: clean up endpoint sanity checks (Desnes Nunes) [2184064] - media: flexcop-usb: fix endpoint type check (Desnes Nunes) [2184064] - media: flexcop-usb: sanity checking of endpoint type (Desnes Nunes) [2184064] - media: dib0700: fix rc endpoint lookup (Desnes Nunes) [2184064] - media: flexcop-usb: fix endpoint sanity check (Desnes Nunes) [2184064] - media: b2c2-flexcop-usb: add sanity checking (Desnes Nunes) [2184064] - media: flexcop-usb: fix NULL-ptr deref in flexcop_usb_transfer_init() (Desnes Nunes) [2184064] - media: usb/dvb-usb-v2: fix repeated words in comments (Desnes Nunes) [2184064] - thunderbolt: Use dev_err_probe() (Desnes Nunes) [2184064] - thunderbolt: Convert to use sysfs_emit()/sysfs_emit_at() APIs (Desnes Nunes) [2184064] - Revert "usb: storage: Add quirk for Samsung Fit flash" (Desnes Nunes) [2184064] - USB: add RESET_RESUME quirk for NVIDIA Jetson devices in RCM (Desnes Nunes) [2184064] - media: uvcvideo: move uvc_format_desc to common header (Desnes Nunes) [2184064] - media: uvcvideo: Add UVC_GUID_FORMAT_H265 (Desnes Nunes) [2184064] - media: v4l: move helper functions for fractions from uvc to v4l2-common (Desnes Nunes) [2184064] - xhci: remove unused lpm_failed_dev member from struct xhci_hcd (Desnes Nunes) [2184064] - xhci: remove unused command member from struct xhci_hcd struct (Desnes Nunes) [2184064] - xhci: show fault reason for a failed enable slot command (Desnes Nunes) [2184064] - xhci: Don't show warning for reinit on known broken suspend (Desnes Nunes) [2184064] - xhci: dbc: Fix memory leak in xhci_alloc_dbc() (Desnes Nunes) [2184064] - usb: host: xhci: Fix potential memory leak in xhci_alloc_stream_info() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up driver prefix (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: move driver structure (Desnes Nunes) [2184064] - USB: serial: make remove callback return void (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up attribute visibility logic (Desnes Nunes) [2184064] - USB: serial: console: move mutex_unlock() before usb_serial_put() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: convert to use dev_groups (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: add support for HP and HA devices (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: simplify divisor handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: assume hi-speed type (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up baudrate request (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up attribute handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up modem-status handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: tighten device-type detection (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: rename channel index (Desnes Nunes) [2184064] - USB: serial: kl5kusb105: use usb_control_msg_recv() and usb_control_msg_send() (Desnes Nunes) [2184064] - USB: serial: keyspan_pda: use usb_control_msg_recv() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: use usb_control_msg_recv() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: include FT2232D in type string (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: rename chip types (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: drop redundant chip type comments (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up chip type enum (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: fix 300 bps rate for SIO (Desnes Nunes) [2184064] - usb: typec: intel_pmc_mux: Use the helper acpi_dev_get_memory_resources() (Desnes Nunes) [2184064] - usb: misc: usb3503: call clk_disable_unprepare in the error handling (Desnes Nunes) [2184064] - usb: misc: uss720: fix uninitialized variable rlen (Desnes Nunes) [2184064] - thunderbolt: debugfs: Fix spelling mistakes in seq_puts text (Desnes Nunes) [2184064] - thunderbolt: Add support for ASMedia NVM image format (Desnes Nunes) [2184064] - thunderbolt: Move vendor specific NVM handling into nvm.c (Desnes Nunes) [2184064] - thunderbolt: Provide tb_retimer_nvm_read() analogous to tb_switch_nvm_read() (Desnes Nunes) [2184064] - thunderbolt: Rename and make nvm_read() available for other files (Desnes Nunes) [2184064] - thunderbolt: Extend NVM version fields to 32-bits (Desnes Nunes) [2184064] - thunderbolt: Allow NVM upgrade of USB4 host routers (Desnes Nunes) [2184064] - scsi: uas: Drop DID_TARGET_FAILURE use (Desnes Nunes) [2184064] - usb: clean up after dropping driver registration log spam (Desnes Nunes) [2184064] - USB: host: ehci-atmel: Add support for HSIC phy (Desnes Nunes) [2184064] - dt-bindings: usb: atmel: add USB PHY type property (Desnes Nunes) [2184064] - USB: xhci: make xhci_get_endpoint_address static (Desnes Nunes) [2184064] - thunderbolt: Add support for receiver lane margining (Desnes Nunes) [2184064] - thunderbolt: Add helper to check if CL states are enabled on port (Desnes Nunes) [2184064] - thunderbolt: Pass CL state bitmask to tb_port_clx_supported() (Desnes Nunes) [2184064] - thunderbolt: Move port CL state functions into correct place in switch.c (Desnes Nunes) [2184064] - thunderbolt: Move tb_xdomain_parent() to tb.h (Desnes Nunes) [2184064] - USB: hcd-pci: Drop the unused id parameter from usb_hcd_pci_probe() (Desnes Nunes) [2184064] - USB: FHCI: Switch to GPIO descriptors (Desnes Nunes) [2184064] - net: thunderbolt: Update module description with mention of USB4 (Desnes Nunes) [2184064] - net: thunderbolt: Convert to use SPDX identifier (Desnes Nunes) [2184064] - net: thunderbolt: Enable full end-to-end flow control (Desnes Nunes) [2184064] - net: thunderbolt: Align the driver to the USB4 networking spec (Desnes Nunes) [2184064] - net: thunderbolt: Add comment clarifying prtcstns flags (Desnes Nunes) [2184064] - thunderbolt: Add back Intel Falcon Ridge end-to-end flow control workaround (Desnes Nunes) [2184064] - thunderbolt: Make iommu_dma_protection more accurate (Desnes Nunes) [2184064] - iommu: Add capability for pre-boot DMA protection (Desnes Nunes) [2184064] - iommu: Introduce device_iommu_capable() (Desnes Nunes) [2184064] - thunderbolt: Show link type for XDomain connections too (Desnes Nunes) [2184064] - thunderbolt: Add KUnit test for devices with no DisplayPort adapters (Desnes Nunes) [2184064] - thunderbolt: Add support for XDomain lane bonding (Desnes Nunes) [2184064] - thunderbolt: Split setting link width and lane bonding into own functions (Desnes Nunes) [2184064] - thunderbolt: Move tb_port_state() prototype to correct place (Desnes Nunes) [2184064] - thunderbolt: Fix typo in comment (Desnes Nunes) [2184064] - thunderbolt: Replace usage of found with dedicated list iterator variable (Desnes Nunes) [2184064] - net: thunderbolt: Enable DMA paths only after rings are enabled (Desnes Nunes) [2184064] - usb: reduce kernel log spam on driver registration (Desnes Nunes) [2184064] - usb: host: xhci-plat: suspend/resume clks for brcm (Desnes Nunes) [2184064] - usb: host: xhci-plat: suspend and resume clocks (Desnes Nunes) [2184064] - usb: host: Initiate urb ep with udev ep0 (Desnes Nunes) [2184064] - usb: ehci: Use endpoint in URB to get maxpacket (Desnes Nunes) [2184064] - dt-bindings: usb: Add missing (unevaluated|additional)Properties on child nodes (Desnes Nunes) [2184064] - dt-bindings: usb: Add DT bindings for STUSB160x Type-C controller (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Sonix Technology (Desnes Nunes) [2184064] - media: uvcvideo: Use entity get_cur in uvc_ctrl_set (Desnes Nunes) [2184064] - media: uvcvideo: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - media: uvcvideo: Use indexed loops in uvc_ctrl_init_ctrl() (Desnes Nunes) [2184064] - media: uvcvideo: Fix invalid pointer in uvc_ctrl_init_ctrl() (Desnes Nunes) [2184064] - media: uvcvideo: Remove unneeded goto (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Acer EasyCamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Quanta cameras (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Chicony Easycamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Chicony Easycamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Quanta UVC Webcam (Desnes Nunes) [2184064] - media: uvcvideo: Add support for per-device control mapping overrides (Desnes Nunes) [2184064] - media: uvcvideo: Add missing value for power_line_frequency (Desnes Nunes) [2184064] - media: uvcvideo: Replace broken URL (Desnes Nunes) [2184064] - media: uvcvideo: Fix comment blocks style (Desnes Nunes) [2184064] - media: uvcvideo: refactor __uvc_ctrl_add_mapping (Desnes Nunes) [2184064] - media: technisat-usb2: Fix comment typo (Desnes Nunes) [2184064] - media: tm6000: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - media: gspca: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - thunderbolt: Add support for Intel Meteor Lake (Desnes Nunes) [2184064] - thunderbolt: Add comment where Thunderbolt 4 PCI IDs start (Desnes Nunes) [2184064] - usb/hcd: Fix dma_map_sg error check (Desnes Nunes) [2184064] - usb: move from strlcpy with unused retval to strscpy (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Fix CC PHY noise filter of voltage level (Desnes Nunes) [2184064] - usb: typec: tcpci: Move function "tcpci_to_typec_cc" to common (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add compatible id with rt1715 (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add initial phy setting (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add regulator support when source vbus (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Fix vendor setting when set vconn (Desnes Nunes) [2184064] - dt-bindings usb: typec: rt1711h: Add binding for Richtek RT1711H (Desnes Nunes) [2184064] - usb: common: debug: Check non-standard control requests (Desnes Nunes) [2184064] - usb: typec: ucsi: stm32g0: Fix spelling mistake "booloader" -> "bootloader" (Desnes Nunes) [2184064] - usb: common: usb-conn-gpio: Simplify some error message (Desnes Nunes) [2184064] - scsi: target: iscsi: Fix an error message in iscsi_check_key() (Maurizio Lombardi) [2186500] - scsi: target: core: Fix warning on RT kernels (Maurizio Lombardi) [2186500] - scsi: target: core: Remove unused variable 'unit_serial_len' (Maurizio Lombardi) [2186500] - scsi: target: Remove the unused function transport_lba_64_ext() (Maurizio Lombardi) [2186500] - fix iov_iter_bvec() "direction" argument (Maurizio Lombardi) [2186500] - scsi: target: tcm_loop: Fix possible name leak in tcm_loop_setup_hba_bus() (Maurizio Lombardi) [2186500] - scsi: target: core: New key must be used for moved PR (Maurizio Lombardi) [2186500] - scsi: target: core: UA on all LUNs after reset (Maurizio Lombardi) [2186500] - scsi: target: core: Abort all preempted regs if requested (Maurizio Lombardi) [2186500] - scsi: target: core: Fix memory leak in preempt_and_abort (Maurizio Lombardi) [2186500] - scsi: target: core: Fix preempt and abort for allreg res (Maurizio Lombardi) [2186500] - scsi: target: Remove unused se_tmr_req_cache declaration (Maurizio Lombardi) [2186500] - scsi: target: alua: Do not report emtpy port group (Maurizio Lombardi) [2186500] - scsi: target: core: Set MULTIP bit for se_device with multiple ports (Maurizio Lombardi) [2186500] - scsi: target: pscsi: Remove repeated word "calling" (Maurizio Lombardi) [2186500] - scsi: target: core: De-RCU of se_lun and se_lun acl (Maurizio Lombardi) [2186500] - scsi: target: core: Fix race during ACL removal (Maurizio Lombardi) [2186500] - scsi: target: Remove XDWRITEREAD emulated support (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Do not require target authentication (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Allow AuthMethod=None (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Support base64 in CHAP (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Add support for extended CDB AHS (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Fix clang -Wformat warnings (Maurizio Lombardi) [2186500] - scsi: target: Remove incorrect zero blocks WRITE_SAME check (Maurizio Lombardi) [2186500] - scsi: target: Remove duplicate "the" (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Fix NULL pointer dereference in iscsi_conn_auth_required() (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Control authentication per ACL (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Extract auth functions (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Add upcast helpers (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Avoid holding XArray lock when calling lock_page (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_session to iscsit_session (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_conn to iscsit_conn (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_cmd to iscsit_cmd (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Fix possible data corruption (Maurizio Lombardi) [2186500] - scsi: target: core: Silence the message about unknown VPD pages (Maurizio Lombardi) [2186500] - target: remove an incorrect unmap zeroes data deduction (Maurizio Lombardi) [2186500] - scsi: target: Fix incorrect use of cpumask_t (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Fix possible page UAF (Maurizio Lombardi) [2186500] - scsi: target: Add iscsi/cpus_allowed_list in configfs (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Make cmd_ring_size changeable via configfs (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Make sure the np under each tpg is unique (Maurizio Lombardi) [2186500] - scsi: target: configfs: Delete unnecessary checks for NULL (Maurizio Lombardi) [2186500] - scsi: target: core: Use RCU helpers for INQUIRY t10_alua_tg_pt_gp (Maurizio Lombardi) [2186500] - scsi: target: core: Remove from tmr_list during LUN unlink (Maurizio Lombardi) [2186500] - scsi: target: core: Stop using bdevname() (Maurizio Lombardi) [2186500] - scsi: target: Perform ALUA group changes in one step (Maurizio Lombardi) [2186500] - scsi: target: Replace lun_tg_pt_gp_lock with rcu in I/O path (Maurizio Lombardi) [2186500] - scsi: target: Fix alua_tg_pt_gps_count tracking (Maurizio Lombardi) [2186500] - scsi: target: Fix ordered tag handling (Maurizio Lombardi) [2186500] - scsi: target: Fix ordered CMD_T_SENT handling (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Allocate zeroed pages for data area (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Use struct_size() helper in kmalloc() (Maurizio Lombardi) [2186500] - scsi: target: sbp: Replace enable attr with ops.enable (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Replace tpg enable attr with ops.enable (Maurizio Lombardi) [2186500] - scsi: target: core: Add common tpg/enable attribute (Maurizio Lombardi) [2186500] - scsi: target: core: Make logs less verbose (Maurizio Lombardi) [2186500] - scsi: target: Remove unused function arguments (Maurizio Lombardi) [2186500] - scsi: target: Fix spelling mistake "CONFLIFT" -> "CONFLICT" (Maurizio Lombardi) [2186500] - dm: don't lock fs when the map is NULL in process of resume (Benjamin Marzinski) [2192702] - dm flakey: add an "error_reads" option (Benjamin Marzinski) [2192702] - dm flakey: remove trailing space in the table line (Benjamin Marzinski) [2192702] - dm flakey: fix a crash with invalid table line (Benjamin Marzinski) [2192702] - dm ioctl: fix nested locking in table_clear() to remove deadlock concern (Benjamin Marzinski) [2192702] - dm: unexport dm_get_queue_limits() (Benjamin Marzinski) [2192702] - dm: add helper macro for simple DM target module init and exit (Benjamin Marzinski) [2192702] - dm raid: remove unused d variable (Benjamin Marzinski) [2192702] - dm mirror: add DMERR message if alloc_workqueue fails (Benjamin Marzinski) [2192702] - dm: push error reporting down to dm_register_target() (Benjamin Marzinski) [2192702] - dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path (Benjamin Marzinski) [2192702] - dm error: add discard support (Benjamin Marzinski) [2192702] - dm zero: add discard support (Benjamin Marzinski) [2192702] - dm table: allow targets without devices to set ->io_hints (Benjamin Marzinski) [2192702] - dm verity: fix error handling for check_at_most_once on FEC (Benjamin Marzinski) [2192702] - dm thin: speed up cell_defer_no_holder() (Benjamin Marzinski) [2192702] - dm bufio: don't bug for clear developer oversight (Benjamin Marzinski) [2192702] - dm bufio: never crash if dm_bufio_in_request() (Benjamin Marzinski) [2192702] - dm bufio: use WARN_ON in dm_bufio_client_destroy and dm_bufio_exit (Benjamin Marzinski) [2192702] - dm bufio: remove unused dm_bufio_release_move interface (Benjamin Marzinski) [2192702] - dm stats: check for and propagate alloc_percpu failure (Benjamin Marzinski) [2192702] - dm crypt: avoid accessing uninitialized tasklet (Benjamin Marzinski) [2192702] - dm crypt: add cond_resched() to dmcrypt_write() (Benjamin Marzinski) [2192702] - dm thin: fix deadlock when swapping to thin device (Benjamin Marzinski) [2192702] - units: add the HZ macros (Jocelyn Falempe) [2160451] - isystem: ship and use stdarg.h (Jocelyn Falempe) [2160451] - i915: Move list_count() to list.h as list_count_nodes() for broader use (Jocelyn Falempe) [2160451] - resource: Convert DEFINE_RES_NAMED() to be compound literal (Jocelyn Falempe) [2160451] - media: videobuf2: Assert held reservation lock for dma-buf mmapping (Jocelyn Falempe) [2160451] - media: videobuf2: Stop using internal dma-buf lock (Jocelyn Falempe) [2160451] - media: videobuf2: Prepare to dynamic dma-buf locking specification (Jocelyn Falempe) [2160451] - media: videobuf2-dma-contig.c: remove spurious 'b' in message (Jocelyn Falempe) [2160451] - dma-buf: Add unlocked variant of attachment-mapping functions (Jocelyn Falempe) [2160451] - dma-buf: Add unlocked variant of vmapping functions (Jocelyn Falempe) [2160451] - kbuild: simplify access to the kernel's version (Jocelyn Falempe) [2160451] - hwmon: (core) Add support for rated attributes (Jocelyn Falempe) [2160451] - ACPI: video: Allow GPU drivers to report no panels (Jocelyn Falempe) [2160451] - drm: Move nomodeset kernel parameter to drivers/video (Jocelyn Falempe) [2160451] - PM: core: Add EXPORT[_GPL]_SIMPLE_DEV_PM_OPS macros (Jocelyn Falempe) [2160451] - PM: runtime: Add DEFINE_RUNTIME_DEV_PM_OPS() macro (Jocelyn Falempe) [2160451] - ACPI: video: Make backlight class device registration a separate step (v2) (Jocelyn Falempe) [2160451] - ACPI: video: Add acpi_video_backlight_use_native() helper (Jocelyn Falempe) [2160451] - scsi: sched/wait: Add wait_event_lock_irq_timeout for TASK_UNINTERRUPTIBLE usage (Jocelyn Falempe) [2160451] - iosys-map: Add IOSYS_MAP_INIT_VADDR_IOMEM() (Jocelyn Falempe) [2160451] - perf branch: Fix interpretation of branch records (Michael Petlan) [2086826] - perf/x86/amd/lbr: Adjust LBR regardless of filtering (Michael Petlan) [2086826] - perf/x86/utils: Fix uninitialized var in get_branch_type() (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 branch speculation info support (Michael Petlan) [2086826] - perf/core: Add speculation info to branch entries (Michael Petlan) [2086826] - perf/x86/amd/lbr: Use fusion-aware branch classifier (Michael Petlan) [2086826] - perf/x86: Make branch classifier fusion-aware (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 software branch filter support (Michael Petlan) [2086826] - perf/x86: Move branch classifier (Michael Petlan) [2086826] - perf: Add irq and exception return branch types (Michael Petlan) [2086826] - perf/x86/intel/ds: Check return values of insn decoder functions (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 hardware branch filter support (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 branch record support (Michael Petlan) [2086826] - perf/x86/amd/lbr: Detect LbrExtV2 support (Michael Petlan) [2086826] - x86/cpufeatures: Add LbrExtV2 feature bit (Michael Petlan) [2086826] - perf/x86/amd/core: Add generic branch record interfaces (Michael Petlan) [2086826] - perf/x86/amd/core: Refactor branch attributes (Michael Petlan) [2086826] - perf/x86/amd/brs: Move feature-specific functions (Michael Petlan) [2086826] - scsi: zfcp: Trace when request remove fails after qdio send fails (Tobias Huschle) [2159733] - scsi: zfcp: Change the type of all fsf request id fields and variables to u64 (Tobias Huschle) [2159733] - scsi: zfcp: Make the type for accessing request hashtable buckets size_t (Tobias Huschle) [2159733] - scsi: zfcp: Drop redundant "the" in the comments (Tobias Huschle) [2159733] - s390/qeth: Convert sprintf/snprintf to scnprintf (Tobias Huschle) [2159732] - s390/qeth: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [2159732] - s390/qeth: Use constant for IP address buffers (Tobias Huschle) [2159732] - s390/ctcm: cleanup indenting (Tobias Huschle) [2159732] - s390/ipl: add loadparm parameter to eckd ipl/reipl data (Tobias Huschle) [2159689] - s390/ipl: add DEFINE_GENERIC_LOADPARM() (Tobias Huschle) [2159689] - s390/ipl: use octal values instead of S_* macros (Tobias Huschle) [2159689] - s390/ipl: add eckd support (Tobias Huschle) [2159689] - net/iucv: Fix size of interrupt data (Tobias Huschle) [2192507] - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex (Waiman Long) [2176760] - workqueue: make sysfs of unbound kworker cpumask more clever (Waiman Long) [2176760] - workqueue: Rename "delayed" (delayed by active management) to "inactive" (Waiman Long) [2176760] - workqueue: Kick a worker based on the actual activation of delayed works (Waiman Long) [2176760] - workqueue: fix UAF in pwq_unbound_release_workfn() (Waiman Long) [2176760] - workqueue: fix a piece of comment about reserved bits for work flags (Waiman Long) [2176760] - workqueue: void unneeded requeuing the pwq in rescuer thread (Waiman Long) [2176760] - mm/memcg: Fix mem_cgroup_id_get_online() underflow problem (Waiman Long) [2176760] - net: fix NULL pointer in skb_segment_list (Paolo Abeni) [2188595] - net: stream: purge sk_error_queue in sk_stream_kill_queues() (Paolo Abeni) [2188595] - skbuff: Account for tail adjustment during pull operations (Paolo Abeni) [2188595] - net: vmxnet3: Fix NULL pointer dereference in vmxnet3_rq_rx_complete() (Seiji Nishikawa) [2186419] - tipc: add an extra conn_get in tipc_conn_alloc (Xin Long) [2177374] {CVE-2023-1382} - tipc: set con sock in tipc_conn_alloc (Xin Long) [2177374] {CVE-2023-1382} - net: sched: fix memory leak in tcindex_set_parms (Davide Caratti) [2181874] - net/sched: tcindex: search key must be 16 bits (Davide Caratti) [2181874] - net/sched: tcindex: update imperfect hash filters respecting rcu (Davide Caratti) [2181874] {CVE-2023-1281} - crypto: rng - Use a different crypto_rng for reseeding (Herbert Xu) [2193410] - media: rc: Fix use-after-free bugs caused by ene_tx_irqsim() (Ricardo Robaina) [2174409] {CVE-2023-1118}- xfs: assert in xfs_btree_del_cursor should take into account error (Andrey Albershteyn) [2183168] - xfs: prevent a UAF when log IO errors race with unmount (Andrey Albershteyn) [2183168] - xfs: fix NULL pointer dereference in xfs_getbmap() (Andrey Albershteyn) [2183168] - xfs: avoid a UAF when log intent item recovery fails (Andrey Albershteyn) [2183168] - xfs: fix memory leak in xfs_errortag_init (Andrey Albershteyn) [2183168] - xfs: Fix unreferenced object reported by kmemleak in xfs_sysfs_init() (Andrey Albershteyn) [2183168] - xfs: fix sb write verify for lazysbcount (Andrey Albershteyn) [2183168] - xfs: invalidate block device page cache during unmount (Andrey Albershteyn) [2183168] - xfs: invalidate xfs_bufs when allocating cow extents (Andrey Albershteyn) [2183168] - xfs: dquot shrinker doesn't check for XFS_DQFLAG_FREEING (Andrey Albershteyn) [2183168] - xfs: fix intermittent hang during quotacheck (Andrey Albershteyn) [2183168] - xfs: fix exception caused by unexpected illegal bestcount in leaf dir (Andrey Albershteyn) [2183168] - xfs: fix super block buf log item UAF during force shutdown (Andrey Albershteyn) [2183168] - xfs: fix uninitialized variable access (Andrey Albershteyn) [2183168] - xfs: fix potential log item leak (Andrey Albershteyn) [2183168] - xfs: fix inode reservation space for removing transaction (Andrey Albershteyn) [2183168] - xfs: fix extent busy updating (Andrey Albershteyn) [2183168] - xfs: fix low space alloc deadlock (Andrey Albershteyn) [2183168] - xfs: purge dquots after inode walk fails during quotacheck (Andrey Albershteyn) [2183168] - xfs: get root inode correctly at bulkstat (Andrey Albershteyn) [2183168] - iomap: iomap: fix memory corruption when recording errors during writeback (Andrey Albershteyn) [2183168] - xfs: attach dquots to inode before reading data/cow fork mappings (Andrey Albershteyn) [2183168] - xfs: get rid of assert from xfs_btree_islastblock (Andrey Albershteyn) [2183168] - xfs: fix use-after-free in xattr node block inactivation (Andrey Albershteyn) [2183168] - xfs: pass the correct cursor to xfs_iomap_prealloc_size (Andrey Albershteyn) [2183168] - xfs: don't report reserved bnobt space as available (Andrey Albershteyn) [2183168] - xfs: fix overfilling of reserve pool (Andrey Albershteyn) [2183168] - xfs: always succeed at setting the reserve pool size (Andrey Albershteyn) [2183168] - xfs: remove infinite loop when reserving free block pool (Andrey Albershteyn) [2166567 2183168] - xfs: don't include bnobt blocks when reserving free block pool (Andrey Albershteyn) [2183168] - xfs: document the XFS_ALLOC_AGFL_RESERVE constant (Andrey Albershteyn) [2183168] - xfs: prevent UAF in xfs_log_item_in_current_chkpt (Andrey Albershteyn) [2183168] - xfs: fix incorrect i_nlink caused by inode racing (Andrey Albershteyn) [2183168] - xfs: fix incorrect error-out in xfs_remove (Andrey Albershteyn) [2183168] - KVM: s390: GISA: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: disable migration mode when dirty tracking is disabled (Cédric Le Goater) [2169294] - KVM: s390: Unwind kvm_arch_init() piece-by-piece() if a step fails (Cédric Le Goater) [2169294] - iommu/s390: Make attach succeed even if the device is in error state (Cédric Le Goater) [2169294] - KVM: s390: pci: Fix allocation size of aift kzdev elements (Cédric Le Goater) [2169294] - iommu/s390: Fix incorrect aperture check (Cédric Le Goater) [2169294] - KVM: s390: VSIE: sort out virtual/physical address in pin_guest_page (Cédric Le Goater) [2169294] - KVM: s390: pv: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: sida: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - iommu/s390: Fail probe for non-PCI devices (Cédric Le Goater) [2169294] - PCI/AER: Remove redundant Device Control Error Reporting Enable (Myron Stowe) [2180894] - PCI/AER: Configure ECRC only if AER is native (Myron Stowe) [2180894] - PCI/AER: Iterate over error counters instead of error strings (Myron Stowe) [2180894] - PCI/AER: Enable error reporting when AER is native (Myron Stowe) [2180894] - PCI/AER: Configure ECRC for every device (Myron Stowe) [2180894] - PCI/AER: Clear MULTI_ERR_COR/UNCOR_RCV bits (Myron Stowe) [2180894] - PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions (Myron Stowe) [2180894] - PCI/AER: Use consistent format when printing PCI device (Myron Stowe) [2180894] - PCI/sysfs: Rely on lengths from scnprintf(), dsm_label_utf16s_to_utf8s() (Myron Stowe) [2180894] - PCI/sysfs: Fix dsm_label_utf16s_to_utf8s() buffer overrun (Myron Stowe) [2180894] - mlxsw: minimal: Fix deadlock in ports creation (Petr Oros) [2177956] - mlxsw: core: Fix use-after-free calling devl_unlock() in mlxsw_core_bus_device_unregister() (Petr Oros) [2177956] - net: devlink: convert reload command to take implicit devlink->lock (Petr Oros) [2177956] - mlxsw: convert driver to use unlocked devlink API during init/fini (Petr Oros) [2177956] - mlxsw: Narrow the critical section of devl_lock during ports creation/removal (Petr Oros) [2177956] - ice: sleep, don't busy-wait, in the SQ send retry loop (Michal Schmidt) [2184013] - ice: remove unused buffer copy code in ice_sq_send_cmd_retry() (Michal Schmidt) [2184013] - ice: sleep, don't busy-wait, for ICE_CTL_Q_SQ_CMD_TIMEOUT (Michal Schmidt) [2184013] - ice: remove ice_ctl_q_info::sq_cmd_timeout (Michal Schmidt) [2184013] - ice: increase the GNSS data polling interval to 20 ms (Michal Schmidt) [2184013] - ice: do not busy-wait to read GNSS data (Michal Schmidt) [2184013] - enic: Use irq_update_affinity_hint() (Michal Schmidt) [2101515] - ethernet:enic: Fix a use after free bug in enic_hard_start_xmit (Michal Schmidt) [2101515] - net: enic: Cure the enic api locking trainwreck (Michal Schmidt) [2101515] - enic: switch from 'pci_' to 'dma_' API (Michal Schmidt) [2101515] - enic: convert to new udp_tunnel_nic infra (Michal Schmidt) [2101515] - enic: let core reject the unsupported coalescing parameters (Michal Schmidt) [2101515] - scsi: mpt3sas: Fix an issue when driver is being removed (Tomas Henzl) [2166206] - scsi: mpt3sas: Remove HBA BIOS version in the kernel log (Tomas Henzl) [2166206] - scsi: mpt3sas: Don't print sense pool info twice (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add() (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix a memory leak (Tomas Henzl) [2166206] - scsi: mpt3sas: Demote log level for trace buffer allocation to info (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix possible resource leaks in mpt3sas_transport_port_add() (Tomas Henzl) [2166206] - scsi: mpt3sas: Remove usage of dma_get_required_mask() API (Tomas Henzl) [2166206] - scsi: mpt3sas: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Tomas Henzl) [2166206] - ipmi: msghandler: kABI implementation was wrong (Tony Camuso) [2182345] - hwmon: (xgene) Fix use after free bug in xgene_hwmon_remove due to race condition (Chris von Recklinghausen) [2184583] {CVE-2023-1855} - RDMA/irdma: Add ipv4 check to irdma_find_listener() (Kamal Heib) [2117129 2135976] - RDMA/irdma: Increase iWARP CM default rexmit count (Kamal Heib) [2117129 2135976] - RDMA/irdma: Fix memory leak of PBLE objects (Kamal Heib) [2117129 2135976] - RDMA/irdma: Do not generate SW completions for NOPs (Kamal Heib) [2117129 2135976] - RDMA/irdma: Remove a redundant irdma_arp_table() call (Kamal Heib) [2117129 2135976] - migrate: grab the compound head in migration_entry_wait_on_locked (Nico Pache) [2188249] - module: Don't wait for GOING modules (Mark Langsdorf) [1964563] - redhat/configs: Fix DEBUG_BLK_CGROUP and BFQ_CGROUP_DEBUG configs (Vladis Dronov) - x86/MCE/AMD: Clear DFR errors found in THR handler (Prarit Bhargava) [2190279]- iommu/amd: Update amd_iommu_fault structure to include PCI seg ID (Jerry Snitselaar) [2117775] - iommu/amd: Update device_state structure to include PCI seg ID (Jerry Snitselaar) [2117775] - iommu/amd: Print PCI segment ID in error log messages (Jerry Snitselaar) [2117775] - iommu/amd: Add PCI segment support for ivrs_[ioapic/hpet/acpihid] commands (Jerry Snitselaar) [2117775] - iommu/amd: Specify PCI segment ID when getting pci device (Jerry Snitselaar) [2117775] - iommu/amd: Include PCI segment ID when initialize IOMMU (Jerry Snitselaar) [2117775] - iommu/amd: Introduce get_device_sbdf_id() helper function (Jerry Snitselaar) [2117775] - iommu/amd: Flush upto last_bdf only (Jerry Snitselaar) [2117775] - iommu/amd: Remove global amd_iommu_[dev_table/alias_table/last_bdf] (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dev_entry_bit() and get_dev_entry_bit() (Jerry Snitselaar) [2117775] - iommu/amd: Update (un)init_device_table_dma() (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dte_irq_entry (Jerry Snitselaar) [2117775] - iommu/amd: Update dump_dte_entry (Jerry Snitselaar) [2117775] - iommu/amd: Update iommu_ignore_device (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dte_entry and clear_dte_entry (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use per PCI segment rlookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Update alloc_irq_table and alloc_irq_index (Jerry Snitselaar) [2117775] - iommu/amd: Update amd_irte_ops functions (Jerry Snitselaar) [2117775] - iommu/amd: Introduce struct amd_ir_data.iommu (Jerry Snitselaar) [2117775] - iommu/amd: Update irq_remapping_alloc to use IOMMU lookup helper function (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use rlookup_amd_iommu helper function (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use per PCI segment irq_lookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment rlookup table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment alias table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment device table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment last_bdf (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment unity map list (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment alias_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment old_dev_tbl_cpy (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment dev_data_list (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment irq_lookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment rlookup table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment device table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce pci segment structure (Jerry Snitselaar) [2117775] - iommu/amd: Update struct iommu_dev_data definition (Jerry Snitselaar) [2117775] - redhat: configs: Enable CONFIG_INTEL_IOMMU_PERF_EVENTS (Jerry Snitselaar) [2176995] - iommu/vt-d: Fix an IOMMU perfmon warning when CPU hotplug (Jerry Snitselaar) [2176995] - iommu/vt-d: Enable IOMMU perfmon support (Jerry Snitselaar) [2176995] - iommu/vt-d: Add IOMMU perfmon overflow handler support (Jerry Snitselaar) [2176995] - iommu/vt-d: Support cpumask for IOMMU perfmon (Jerry Snitselaar) [2176995] - iommu/vt-d: Add IOMMU perfmon support (Jerry Snitselaar) [2176995] - iommu/vt-d: Support Enhanced Command Interface (Jerry Snitselaar) [2176995] - iommu/vt-d: Retrieve IOMMU perfmon capability information (Jerry Snitselaar) [2176995] - iommu/vt-d: Fix error handling in sva enable/disable paths (Jerry Snitselaar) [2181397] - iommu/vt-d: Support size of the register set in DRHD (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow zero SAGAW if second-stage not supported (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove include/linux/intel-svm.h (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow to use flush-queue when first level is default (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PASID directory pointer coherency (Jerry Snitselaar) [2181397] - iommu/vt-d: Set No Execute Enable bit in PASID table entry (Jerry Snitselaar) [2181397] - iommu: Remove SVM_FLAG_SUPERVISOR_MODE support (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in prq_event_thread() (Jerry Snitselaar) [2181397] - PCI: Enable PASID only when ACS RR & UF enabled on upstream path (Jerry Snitselaar) [2181397] - iommu/vt-d: Set SRE bit only when hardware has SRS cap (Jerry Snitselaar) [2181397] - iommu/vt-d: Preset Access bit for IOVA in FL non-leaf paging entries (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove pasid_set_eafe() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unnecessary SVA data accesses in page fault path (Jerry Snitselaar) [2181397] - iommu/vt-d: Add RPLS to quirk list to skip TE disabling (Jerry Snitselaar) [2181397] - iommu: Remove guest pasid related interfaces and definitions (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove guest pasid related callbacks (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused PASID_DISABLED (Jerry Snitselaar) [2181397] - iommu/vt-d: Clean up unused PASID updating functions (Jerry Snitselaar) [2181397] - iommu/vtd: Replace acpi_bus_get_device() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused dma_to_mm_pfn function (Jerry Snitselaar) [2181397] - iommu/vt-d: Use bitmap_zalloc() when applicable (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused macros (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow NVS regions in arch_rmrr_sanity_check() (Jerry Snitselaar) [2181397] - iommu/vt-d: Use rcu_lock in get_resv_regions (Jerry Snitselaar) [2181397] - iommu: Add gfp parameter to iommu_alloc_resv_region (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in dmar_dev_scope_init() (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in has_external_pci() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove iova_cache_get/put() (Jerry Snitselaar) [2181397] - iommu/vt-d: Add missing "__init" for rmrr_sanity_check() (Jerry Snitselaar) [2181397] - iommu/arm-smmu: Force identity domains for legacy binding (Jerry Snitselaar) [2181397] - iommu/arm-smmu-v3: Properly handle the return value of arm_smmu_cmdq_build_cmd() (Jerry Snitselaar) [2181397] - iommu/arm-smmu-v3: Stop pre-zeroing batch commands in arm_smmu_atc_inv_master() (Jerry Snitselaar) [2181397] - iommu/arm-smmu: Add clk_bulk_{prepare/unprepare} to system pm callbacks (Jerry Snitselaar) [2181397] - iommu: Make sysfs robust for non-API groups (Jerry Snitselaar) [2181397] - iommu: Use right way to retrieve iommu_ops (Jerry Snitselaar) [2181397] - iommu: Remove apply_resv_region (Jerry Snitselaar) [2181397] - iommu/dma: Explicitly sort PCI DMA windows (Jerry Snitselaar) [2181397] - iommu: Do not dereference fwnode in struct device (Jerry Snitselaar) [2181397] - iommu: Remove duplicate ida_free in iommu_group_alloc (Jerry Snitselaar) [2181397] - iommu: Directly use ida_alloc()/free() (Jerry Snitselaar) [2181397] - iommu/iova: change IOVA_MAG_SIZE to 127 to save memory (Jerry Snitselaar) [2181397] - iommu/iova: Fix alloc iova overflows issue (Jerry Snitselaar) [2181397] - iova: Remove iovad->rcaches check in iova_rcache_get() (Jerry Snitselaar) [2181397] - iova: Remove magazine BUG_ON() checks (Jerry Snitselaar) [2181397] - iova: Remove some magazine pointer NULL checks (Jerry Snitselaar) [2181397] - swiotlb: fix a braino in the alignment check fix (Jerry Snitselaar) [2181397] - swiotlb: fix slot alignment checks (Jerry Snitselaar) [2181397] - swiotlb: use wrap_area_index() instead of open-coding it (Jerry Snitselaar) [2181397] - swiotlb: fix the deadlock in swiotlb_do_find_slots (Jerry Snitselaar) [2181397] - swiotlb: mark swiotlb_memblock_alloc() as __init (Jerry Snitselaar) [2181397] - swiotlb: remove swiotlb_max_segment (Jerry Snitselaar) [2181397] - swiotlb: reduce the swiotlb buffer size on allocation failure (Jerry Snitselaar) [2181397] - swiotlb: replace kmap_atomic() with memcpy_{from,to}_page() (Jerry Snitselaar) [2181397] - swiotlb: don't panic! (Jerry Snitselaar) [2181397] - iommu/vt-d: Avoid superfluous IOTLB tracking in lazy mode (Jerry Snitselaar) [2175620] - iommu/amd: Add map/unmap_pages() iommu_domain_ops callback support (Jerry Snitselaar) [2181397] - iommu/amd/io-pgtable: Implement unmap_pages io_pgtable_ops callback (Jerry Snitselaar) [2181397] - iommu/amd/io-pgtable: Implement map_pages io_pgtable_ops callback (Jerry Snitselaar) [2181397] - iommu/vt-d: Avoid unnecessary global DMA cache invalidation (Jerry Snitselaar) [2176983] - iommu/vt-d: Avoid unnecessary global IRTE cache invalidation (Jerry Snitselaar) [2176983] - iommu/vt-d: Fix buggy QAT device mask (Jerry Snitselaar) [2169568] - iommu/vt-d: Add a fix for devices need extra dtlb flush (Jerry Snitselaar) [2169568] - xfs: fix off-by-one-block in xfs_discard_folio() (Carlos Maiolino) [2112147] - xfs: drop write error injection is unfixable, remove it (Carlos Maiolino) [2112147] - xfs: use iomap_valid method to detect stale cached iomaps (Carlos Maiolino) [2112147] - iomap: write iomap validity checks (Carlos Maiolino) [2112147] - xfs: xfs_bmap_punch_delalloc_range() should take a byte range (Carlos Maiolino) [2112147] - iomap: buffered write failure should not truncate the page cache (Carlos Maiolino) [2112147] - iomap: Export page_cache_seek_hole_data (Carlos Maiolino) [2112147] - xfs,iomap: move delalloc punching to iomap (Carlos Maiolino) [2112147] - xfs: use byte ranges for write cleanup ranges (Carlos Maiolino) [2112147] - xfs: punching delalloc extents on write failure is racy (Carlos Maiolino) [2112147] - xfs: write page faults in iomap are not buffered writes (Carlos Maiolino) [2112147] - iomap: iomap_read_inline_data cleanup (Carlos Maiolino) [2112147] - iomap: Fix inline extent handling in iomap_readpage (Carlos Maiolino) [2112147] - iomap: constify iomap_iter_srcmap (Carlos Maiolino) [2112147] - iomap: rework unshare flag (Carlos Maiolino) [2112147] - iomap: pass an iomap_iter to various buffered I/O helpers (Carlos Maiolino) [2112147] - iomap: remove iomap_apply (Carlos Maiolino) [2112147] - fsdax: Fix infinite loop in dax_iomap_rw() (Carlos Maiolino) [2112147] - fsdax: switch dax_iomap_rw to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_swapfile_activate to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_seek_data to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_seek_hole to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_bmap to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_fiemap to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch __iomap_dio_rw to use iomap_iter (Carlos Maiolino) [2112147] - iomap: support REQ_OP_ZONE_APPEND (Carlos Maiolino) [2112147] - iomap: add a filesystem hook for direct I/O bio submission (Carlos Maiolino) [2112147] - iomap: switch iomap_page_mkwrite to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_zero_range to use iomap_iter (Carlos Maiolino) [2112147] - iomap: Change calling convention for zeroing (Carlos Maiolino) [2112147] - iomap: switch iomap_file_unshare to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_file_buffered_write to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch readahead and readpage to use iomap_iter (Carlos Maiolino) [2112147] - iomap: add the new iomap_iter model (Carlos Maiolino) [2112147] - iomap: fix the iomap_readpage_actor return value for inline data (Carlos Maiolino) [2112147] - iomap: Support inline data with block size < page size (Carlos Maiolino) [2112147] - fs: mark the iomap argument to __block_write_begin_int const (Carlos Maiolino) [2112147] - fsdax: mark the iomap argument to dax_iomap_sector as const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_read_page_sync const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_read_inline_data const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_inline_data_valid const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_inline_data const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_sector const (Carlos Maiolino) [2112147] - ipv6: Fix an uninit variable access bug in __ip6_make_skb() (Hangbin Liu) [2185798] - ipv6: Fix tcp socket connection with DSCP. (Hangbin Liu) [2185798] - ipv6: Fix datagram socket connection with DSCP. (Hangbin Liu) [2185798] - ipv6: avoid use-after-free in ip6_fragment() (Hangbin Liu) [2185798] - ipv6: addrlabel: fix infoleak when sending struct ifaddrlblmsg to network (Hangbin Liu) [2185798] - ipv6: fix WARNING in ip6_route_net_exit_late() (Hangbin Liu) [2185798] - ipv6: ensure sane device mtu in tunnels (Hangbin Liu) [2185798] - KVM: arm64: PMU: Restore the guest's EL0 event counting after migration (Shaoqin Huang) [2175146] - KVM: arm64: Retry fault if vma_lookup() results become invalid (Shaoqin Huang) [2175146] - KVM: arm64: PMU: Don't save PMCR_EL0.{C,P} for the vCPU (Shaoqin Huang) [2175146] - KVM: arm64: PMU: Fix GET_ONE_REG for vPMC regs to return the current value (Shaoqin Huang) [2175146] - KVM: arm64: timers: Convert per-vcpu virtual offset to a global value (Shaoqin Huang) [2175146] - KVM: arm64: Fix non-kerneldoc comments (Shaoqin Huang) [2175146] - arm64/sysreg: clean up some inconsistent indenting (Shaoqin Huang) [2175146] - KVM: arm64: timers: Don't BUG() on unhandled timer trap (Shaoqin Huang) [2175146] - KVM: arm64: Reduce overhead of trapped timer sysreg accesses (Shaoqin Huang) [2175146] - KVM: arm64: Don't arm a hrtimer for an already pending timer (Shaoqin Huang) [2175146] - KVM: arm64: Fix S1PTW handling on RO memslots (Shaoqin Huang) [2175146] - KVM: arm64: Fix typo in comment (Shaoqin Huang) [2175146] - KVM: arm64: Fix pvtime documentation (Shaoqin Huang) [2175146] - KVM: arm64: Fix PAR_TO_HPFAR() to work independently of PA_BITS. (Shaoqin Huang) [2175146] - KVM: arm64: nvhe: Fix build with profile optimization (Shaoqin Huang) [2175146] - fuse: wait for writepages in syncfs (Brian Foster) [2185834] - virtio_fs: Modify format for virtio_fs_direct_access (Brian Foster) [2185834] - virtiofs: delete unused parameter for virtio_fs_cleanup_vqs (Brian Foster) [2185834] - virtiofs: use strscpy for copying the queue name (Brian Foster) [2185834] - virtiofs: propagate sync() to file server (Brian Foster) [2185834] - fuse: add a flag FUSE_SETXATTR_ACL_KILL_SGID to kill SGID (Brian Foster) [2185834] - fuse: extend FUSE_SETXATTR request (Brian Foster) [2185834] - virtiofs: fix userns (Brian Foster) [2185834] - virtiofs: remove useless function (Brian Foster) [2185834] - virtiofs: split requests that exceed virtqueue size (Brian Foster) [2185834] - virtiofs: fix memory leak in virtio_fs_probe() (Brian Foster) [2185834] - virtio_fs: convert to LE accessors (Brian Foster) [2185834] - dmaengine: use sysfs_emit() to instead of scnprintf() (Jerry Snitselaar) [2181398] - dmaengine: Simplify dmaenginem_async_device_register() function (Jerry Snitselaar) [2181398] - dmaengine: idma64: Update bytes_transferred field (Jerry Snitselaar) [2181398] - dmaengine: dw: Move check for paused channel to dwc_get_residue() (Jerry Snitselaar) [2181398] - dmaengine: ptdma: check for null desc before calling pt_cmd_callback (Jerry Snitselaar) [2181398] - dmaengine: idxd: Fix default allowed read buffers value in group (Jerry Snitselaar) [2181398] - dmaengine: idxd: Set traffic class values in GRPCFG on DSA 2.0 (Jerry Snitselaar) [2181398] - ptdma: pt_core_execute_cmd() should use spinlock (Jerry Snitselaar) [2181398] - dmaengine: Fix double increment of client_count in dma_chan_get() (Jerry Snitselaar) [2181398] - dmaengine: ioat: stop mod_timer from resurrecting deleted timer in __cleanup() (Jerry Snitselaar) [2153929] - cifs: set a minimum of 120s for next dns resolution (Ronnie Sahlberg) [2182867] - cifs: use the expiry output of dns_query to schedule next resolution (Ronnie Sahlberg) [2182867] - cifs: sanitize paths in cifs_update_super_prepath. (Ronnie Sahlberg) [2182472] - redhat/configs: Fix incorrect configs location and content (Vladis Dronov) - scsi: megaraid_sas: Fix double kfree() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix fw_crash_buffer_show() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix crash after a double completion (Tomas Henzl) [2163670] - scsi: megaraid_sas: Driver version update to 07.725.01.00-rc1 (Tomas Henzl) [2163670] - scsi: megaraid_sas: Add crash dump mode capability bit in MFI capabilities (Tomas Henzl) [2163670] - scsi: megaraid_sas: Update max supported LD IDs to 240 (Tomas Henzl) [2163670] - scsi: megaraid_sas: Add flexible array member for SGLs (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix some spelling mistakes in comment (Tomas Henzl) [2163670] - scsi: megaraid_sas: Remove unnecessary kfree() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Use irq_set_affinity_and_hint() (Tomas Henzl) [2163670] - scsi: megaraid: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Tomas Henzl) [2163670] - scsi: ses: Handle enclosure with just a primary component gracefully (Tomas Henzl) [2188481] - ipvlan: hold lower dev to avoid possible use-after-free (Davide Caratti) [2188055] - net: macvlan: Use built-in RCU list checking (Davide Caratti) [2188055] - x86/split_lock: Enumerate architectural split lock disable bit (Prarit Bhargava) [2123535] - bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state (Yauheni Kaliuta) [2175160] - hwmon: (coretemp) avoid RDMSR interrupts to isolated CPUs (Marcelo Tosatti) [2158707] - scsi: target: iscsi: Handle abort for WRITE_PENDING cmds (Maurizio Lombardi) [2156588] - scsi: target: iscsit: Fix TAS handling during conn cleanup (Maurizio Lombardi) [2156588]- RDMA/cma: Distinguish between sockaddr_in and sockaddr_in6 by size (Kamal Heib) [2170083] - RDMA/umem: Remove unused 'work' member from struct ib_umem (Kamal Heib) [2170083] - RDMA/restrack: Correct spelling (Kamal Heib) [2170083] - scripts/spelling.txt: add "exsits" pattern and fix typo instances (Kamal Heib) [2170083] - RDMA/cma: Refactor the inbound/outbound path records process flow (Kamal Heib) [2170083] - RDMA/core: Refactor rdma_bind_addr (Kamal Heib) [2170083] - IB/IPoIB: Fix legacy IPoIB due to wrong number of queues (Kamal Heib) [2170076] - RDMA/core: Fix ib block iterator counter overflow (Kamal Heib) [2170076] - RDMA/srp: Move large values to a new enum for gcc13 (Kamal Heib) [2170076] - IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces (Kamal Heib) [2170076] - RDMA/cm: Make QP FLUSHABLE for supported device (Kamal Heib) [2170076] - RDMA: Extend RDMA kernel verbs ABI to support flush (Kamal Heib) [2170076] - RDMA: Extend RDMA user ABI to support flush (Kamal Heib) [2170076] - RDMA/cma: Change RoCE packet life time from 18 to 16 (Kamal Heib) [2170076] - RDMA/srp: Fix error return code in srp_parse_options() (Kamal Heib) [2170076] - RDMA: Extend RDMA kernel ABI to support atomic write (Kamal Heib) [2170076] - RDMA: Extend RDMA user ABI to support atomic write (Kamal Heib) [2170076] - RDMA/umem: remove FOLL_FORCE usage (Kamal Heib) [2170076] - RDMA/nldev: Fix failure to send large messages (Kamal Heib) [2170076] - RDMA/nldev: Add NULL check to silence false warnings (Kamal Heib) [2170076] - RDMA/nldev: Add checks for nla_nest_start() in fill_stat_counter_qps() (Kamal Heib) [2170076] - IB/isert: use the ISCSI_LOGIN_CURRENT_STAGE macro (Kamal Heib) [2170076] - RDMA/nldev: Return "-EAGAIN" if the cm_id isn't from expected port (Kamal Heib) [2170076] - RDMA/core: Make sure "ib_port" is valid when access sysfs node (Kamal Heib) [2170076] - RDMA/restrack: Release MR restrack when delete (Kamal Heib) [2170076] - IB/mad: Don't call to function that might sleep while in atomic context (Kamal Heib) [2170076] - RDMA/core: Fix order of nldev_exit call (Kamal Heib) [2170076] - RDMA/core: fix repeated words in comments (Kamal Heib) [2170076] - IB/iser: open code iser_disconnected_handler (Kamal Heib) [2170076] - IB/iser: add safety checks for state_mutex lock (Kamal Heib) [2170076] - IB/iser: open code iser_conn_state_comp_exch (Kamal Heib) [2170076] - RDMA/opa_vnic: fix spelling typo in comment (Kamal Heib) [2170076] - RDMA/core: return -EOPNOSUPP for ODP unsupported device (Kamal Heib) [2170076] - IB/uverbs: fix the typo of optional (Kamal Heib) [2170076] - treewide: use get_random_u32() when possible (Kamal Heib) [2170070] - treewide: use prandom_u32_max() when possible, part 1 (Kamal Heib) [2170070] - RDMA/core: Clean up a variable name in ib_create_srq_user() (Kamal Heib) [2170070] - RDMA/srp: Support more than 255 rdma ports (Kamal Heib) [2170070] - RDMA/cm: Use DLID from inbound/outbound PathRecords as the datapath DLID (Kamal Heib) [2170070] - RDMA/cma: Multiple path records support with netlink channel (Kamal Heib) [2170070] - RDMA/core: Rename rdma_route.num_paths field to num_pri_alt_paths (Kamal Heib) [2170070] - RDMA/srpt: Use flex array destination for memcpy() (Kamal Heib) [2170070] - IB/cm: Refactor cm_insert_listen() and cm_find_listen() (Kamal Heib) [2170070] - IB/cm: remove cm_id_priv->id.service_mask and service_mask parameter of cm_init_listen() (Kamal Heib) [2170070] - IB/cm: Remove the service_mask parameter from ib_cm_listen() (Kamal Heib) [2170070] - RDMA/core: Remove 'device' argument from rdma_build_skb() (Kamal Heib) [2170070] - RDMA/srp: Use the attribute group mechanism for sysfs attributes (Kamal Heib) [2170070] - RDMA/srp: Handle dev_set_name() failure (Kamal Heib) [2170070] - RDMA/srp: Remove the srp_host.released completion (Kamal Heib) [2170070] - RDMA/srp: Rework the srp_add_port() error path (Kamal Heib) [2170070] - IB: move from strlcpy with unused retval to strscpy (Kamal Heib) [2170070] - treewide: uapi: Replace zero-length arrays with flexible-array members (Kamal Heib) [2170070] - RDMA/core: Delete IPsec flow action logic from the core (Kamal Heib) [2170070] - net: Don't include filter.h from net/sock.h (Kamal Heib) [2170070] - scsi: qla2xxx: Synchronize the IOCB count to be in order (Nilesh Javali) [2164947] - scsi: qla2xxx: Perform lockless command completion in abort path (Nilesh Javali) [2164947] - scsi: qla2xxx: Use the proper SCSI midlayer interfaces for PI (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove the unused variable wwn (Nilesh Javali) [2164947] - scsi: qla2xxx: Simplify if condition evaluation (Nilesh Javali) [2164947] - scsi: qla2xxx: Use a variable for repeated mem_size computation (Nilesh Javali) [2164947] - scsi: qla2xxx: Make qla_trim_buf() and __qla_adjust_buf() static (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix printk() format string (Nilesh Javali) [2164947] - scsi: qla2xxx: Update version to 10.02.08.200-k (Nilesh Javali) [2164947] - scsi: qla2xxx: Select qpair depending on which CPU post_cmd() gets called (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix clang warning (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Reduce memory usage during low I/O (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix stall session after app start (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix performance dip due to lock contention (Nilesh Javali) [2164947] - scsi: qla2xxx: Relocate/rename vp map (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (GNN ID) (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (GPNID) (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (Nilesh Javali) [2164947] - scsi: qla2xxx: Update version to 10.02.08.100-k (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix IOCB resource check warning (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove increment of interface err cnt (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix erroneous link down (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove unintended flag clearing (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix stalled login (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix exchange oversubscription for management commands (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix exchange oversubscription (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix link failure in NPIV environment (Nilesh Javali) [2164947] - scsi: qla2xxx: Check if port is online before sending ELS (Nilesh Javali) [2164947] - scsi: qla2xxx: Initialize vha->unknown_atio_[list, work] for NPIV hosts (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove duplicate of vha->iocb_work initialization (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove unused variable 'found_devs' (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix set-but-not-used variable warnings (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts() (Nilesh Javali) [2164947] - ethtool: eeprom: fix null-deref on genl_info in dump (Davide Caratti) [2188002] - packet: do not set TP_STATUS_CSUM_VALID on CHECKSUM_COMPLETE (Davide Caratti) [2188002] - af_key: Fix send_acquire race with pfkey_register (Davide Caratti) [2188002] - net: llc: fix skb_over_panic (Davide Caratti) [2188002] - inet_ecn: Fix endianness of checksum update when setting ECT(1) (Davide Caratti) [2188002] - RDMA/irdma: Fix potential NULL-ptr-dereference (Kamal Heib) [2153377] - RDMA/irdma: Split CQ handler into irdma_reg_user_mr_type_cq (Kamal Heib) [2153377] - RDMA/irdma: Split QP handler into irdma_reg_user_mr_type_qp (Kamal Heib) [2153377] - RDMA/irdma: Split mr alloc and free into new functions (Kamal Heib) [2153377] - RDMA/irdma: Split MEM handler into irdma_reg_user_mr_type_mem (Kamal Heib) [2153377] - RDMA/irdma: Remove extra ret variable in favor of existing err (Kamal Heib) [2153377] - RDMA/irdma: Initialize net_type before checking it (Kamal Heib) [2153377] - RDMA/irdma: Do not request 2-level PBLEs for CQ alloc (Kamal Heib) [2153377] - RDMA/irdma: Fix RQ completion opcode (Kamal Heib) [2153377] - RDMA/irdma: Fix inline for multiple SGE's (Kamal Heib) [2153377] - bnxt_en: Fix mqprio and XDP ring checking logic (Ken Cox) [2159222] - bnxt: Do not read past the end of test names (Ken Cox) [2159222] - bnxt: report FEC block stats via standard interface (Ken Cox) [2159222] - bnxt_en: Remove debugfs when pci_register_driver failed (Ken Cox) [2159222] - bnxt_en: update RSS config using difference algorithm (Ken Cox) [2159222] - bnxt_en: refactor VNIC RSS update functions (Ken Cox) [2159222] - bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer (Ken Cox) [2159222] - bnxt_en: Fix possible crash in bnxt_hwrm_set_coal() (Ken Cox) [2159222] - bnxt_en: fix the handling of PCIE-AER (Ken Cox) [2159222] - bnxt_en: refactor bnxt_cancel_reservations() (Ken Cox) [2159222] - bnxt_en: check and resize NVRAM UPDATE entry before flashing (Ken Cox) [2159222] - bnxt_en: Update firmware interface to 1.10.2.118 (Ken Cox) [2159222] - bnxt_en: replace reset with config timestamps (Ken Cox) [2159222] - hugetlbfs: don't delete error page from pagecache (Aristeu Rozanski) [2188334] - mm: shmem: don't truncate page if memory failure happens (Aristeu Rozanski) [2188334] - mm: hwpoison: handle non-anonymous THP correctly (Aristeu Rozanski) [2188334] - mm: hwpoison: refactor refcount check handling (Aristeu Rozanski) [2188334] - scsi: qedf: Remove set but unused variable 'page' (Nilesh Javali) [2164955] - scsi: qedf: Fix a UAF bug in __qedf_probe() (Nilesh Javali) [2164955] - xfs: don't use BMBT btree split workers for IO completion (Carlos Maiolino) [2127493] - tools/power turbostat: Add support for MeteorLake platforms (Derek Barbosa) [2153966] - x86/bugs: Workaround for incorrectly set X86_BUG_RETBLEED under VMware (Waiman Long) [2184343]- nvmet: fix workqueue MEM_RECLAIM flushing dependency (Maurizio Lombardi) [2187618] - nvmet: use a private workqueue instead of the system workqueue (Maurizio Lombardi) [2187618] - nvme: fix discard support without oncs (Maurizio Lombardi) [2187618] - nvme-pci: fix timeout request state check (Maurizio Lombardi) [2187618] - nvme: fix multipath crash caused by flush request when blktrace is enabled (Maurizio Lombardi) [2187618] - nvme: return err on nvme_init_non_mdts_limits fail (Maurizio Lombardi) [2187618] - nvme initialize core quirks before calling nvme_init_subsystem (Maurizio Lombardi) [2187618] - nvmet: fix memory leak in nvmet_subsys_attr_model_store_locked (Maurizio Lombardi) [2187618] - nvme: quiet user passthrough command errors (Maurizio Lombardi) [2187618] - nvme-tcp: fix possible circular locking when deleting a controller under memory pressure (Maurizio Lombardi) [2187618] - nvme-hwmon: kmalloc the NVME SMART log buffer (Maurizio Lombardi) [2187618] - nvme-hwmon: consistently ignore errors from nvme_hwmon_init (Maurizio Lombardi) [2187618] - nvme-pci: disable write zeroes on various Kingston SSD (Maurizio Lombardi) [2187618] - nvme-pci: avoid the deepest sleep state on ZHITAI TiPro5000 SSDs (Maurizio Lombardi) [2187618] - nvme-rdma: fix possible hang caused during ctrl deletion (Maurizio Lombardi) [2187618] - nvmet-tcp: add bounds check on Transfer Tag (Maurizio Lombardi) [2187618] - nvmet-tcp: handle ICReq PDU received in NVMET_TCP_Q_LIVE state (Maurizio Lombardi) [2187618] - nvme-pci: set min_align_mask before calculating max_hw_sectors (Maurizio Lombardi) [2187618] - nvme: enumerate controller flags (Maurizio Lombardi) [2187618] - nvme: ensure subsystem reset is single threaded (Maurizio Lombardi) [2187618] - nvme: copy firmware_rev on each init (Maurizio Lombardi) [2187618] - nvme: restrict management ioctls to admin (Maurizio Lombardi) [2187618] - nvme: consider also host_iface when checking ip options (Maurizio Lombardi) [2187618] - nvme: move from strlcpy with unused retval to strscpy (Maurizio Lombardi) [2187618] - nvme: add comment for unaligned "fake" nqn (Maurizio Lombardi) [2187618] - nvme-pci: disable Write Zeroes on Phison E3C/E4C (Maurizio Lombardi) [2187618] - nvmet: fix mar and mor off-by-one errors (Maurizio Lombardi) [2187618] - nvmet: fix a use-after-free (Maurizio Lombardi) [2187618] - nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change() (Maurizio Lombardi) [2187618] - nvme-fabrics: Fix a typo in an error message (Maurizio Lombardi) [2187618] - nvme-fabrics: parse nvme connect Linux error codes (Maurizio Lombardi) [2187618] - nvmet-tcp: fix lockdep complaint on nvmet_tcp_wq flush during queue teardown (Maurizio Lombardi) [2187618] - nvme: rename nvme_validate_or_alloc_ns to nvme_scan_ns (Maurizio Lombardi) [2187618] - nvme: catch -ENODEV from nvme_revalidate_zones again (Maurizio Lombardi) [2187618] - nvme-pci: print the command name of aborted commands (Maurizio Lombardi) [2187618] - nvme: use command_id instead of req->tag in trace_nvme_complete_rq() (Maurizio Lombardi) [2187618] - nvme-pci: use nvme core helper to cancel requests in tagset (Maurizio Lombardi) [2187618] - nvme-tcp: use in-capsule data for I/O connect (Maurizio Lombardi) [2187618] - nvme-rdma: remove timeout for getting RDMA-CM established event (Maurizio Lombardi) [2187618] - nvmet: parse fabrics commands on io queues (Maurizio Lombardi) [2187618] - nvme-fabrics: decode 'authentication required' connect error (Maurizio Lombardi) [2187618] - nvme-loop: use nvme core helpers to cancel all requests in a tagset (Maurizio Lombardi) [2187618] - nvme: handle the persistent internal error AER (Maurizio Lombardi) [2187618] - nvme: remove a double word in a comment (Maurizio Lombardi) [2187618] - nvme: use struct group for generic command dwords (Maurizio Lombardi) [2187618] - nvme-pci: fix freeze accounting for error handling (Maurizio Lombardi) [2187618] - nvmet-tcp: fix regression in data_digest calculation (Maurizio Lombardi) [2187618] - nvme: add a bogus subsystem NQN quirk for Micron MTFDKBA2T0TFH (Maurizio Lombardi) [2187618] - nvme-pci: disable write zeros support on UMIC and Samsung SSDs (Maurizio Lombardi) [2187618] - nvme-pci: avoid the deepest sleep state on ZHITAI TiPro7000 SSDs (Maurizio Lombardi) [2187618] - nvme-pci: add trouble shooting steps for timeouts (Maurizio Lombardi) [2187618] - nvme: add device name to warning in uuid_show() (Maurizio Lombardi) [2187618] - nvmet: fix typo in comment (Maurizio Lombardi) [2187618] - nvme: set controller enable bit in a separate write (Maurizio Lombardi) [2187618] - nvme: set non-mdts limits in nvme_scan_work (Maurizio Lombardi) [2187618] - nvme-pci: harden drive presence detect in nvme_dev_disable() (Maurizio Lombardi) [2187618] - nvme-pci: fix a NULL pointer dereference in nvme_alloc_admin_tags (Maurizio Lombardi) [2187618] - nvme: mark internal passthru request RQF_QUIET (Maurizio Lombardi) [2187618] - nvme: remove unneeded include from constants file (Maurizio Lombardi) [2187618] - nvme: set dma alignment to dword (Maurizio Lombardi) [2187618] - nvme: fix interpretation of DMRSL (Maurizio Lombardi) [2187618] - ixgbe: add double of VLAN header when computing the max MTU (Ken Cox) [2153372] - ixgbe: allow to increase MTU to 3K with XDP enabled (Ken Cox) [2153372] - ixgbe: Filter out spurious link up indication (Ken Cox) [2153372] - ixgbe: XDP: fix checker warning from rcu pointer (Ken Cox) [2153372] - ixgbe: fix pci device refcount leak (Ken Cox) [2153372] - ixgbe: change MAX_RXD/MAX_TXD based on adapter type (Ken Cox) [2153372] - tracing: kprobes: Prohibit probing on notrace function (Mukesh Chaurasiya) [2183475] - powerpc/kprobes: Ignore traps that happened in real mode (Mukesh Chaurasiya) [2183475] - nvme-rdma: handle number of queue changes (Kamal Heib) [2160665] - nvme-rdma: remove timeout for getting RDMA-CM established event (Kamal Heib) [2160665] - nvmet-rdma: fix kernel-doc warning for nvmet_rdma_device_removal (Kamal Heib) [2160665] - net: mpls: fix stale pointer if allocation fails during device rename (Guillaume Nault) [2184956] {CVE-2023-26545} - block: don't set GD_NEED_PART_SCAN if scan partition failed (Ming Lei) [2151112] - block: fix wrong mode for blkdev_put() from disk_scan_partitions() (Ming Lei) [2151112] - block: fix scan partition for exclusively open device again (Ming Lei) [2151112] - mm: swap: get rid of livelock in swapin readahead (Aristeu Rozanski) [2035182 2182084] - redhat: require reasonably recent grub2 _only_ if grub2 is already installed (Denys Vlasenko) [2183531] - i40e: Fix kernel crash during reboot when adapter is in recovery mode (Stefan Assmann) [2153348] - i40e: add double of VLAN header when computing the max MTU (Stefan Assmann) [2153348] - i40e: Add checking for null for nlmsg_find_attr() (Stefan Assmann) [2153348] - net/i40e: Replace 0-length array with flexible array (Stefan Assmann) [2153348] - i40e: use ERR_PTR error print in i40e messages (Stefan Assmann) [2153348] - i40e: use int for i40e_status (Stefan Assmann) [2153348] - i40e: Remove string printing for i40e_status (Stefan Assmann) [2153348] - i40e: Remove unused i40e status codes (Stefan Assmann) [2153348] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Stefan Assmann) [2153348] - i40e: Remove redundant pci_enable_pcie_error_reporting() (Stefan Assmann) [2153348] - virtchnl: i40e/iavf: rename iwarp to rdma (Stefan Assmann) [2153348] - treewide: Convert del_timer*() to timer_shutdown*() (Stefan Assmann) [2153348] - i40e: allow toggling loopback mode via ndo_set_features callback (Stefan Assmann) [2153348] - i40e: Disallow ip4 and ip6 l4_4_bytes (Stefan Assmann) [2153348] - i40e: Fix for VF MAC address 0 (Stefan Assmann) [2153348] - i40e: Fix not setting default xps_cpus after reset (Stefan Assmann) [2153348] - dm: fix __send_duplicate_bios() to always allow for splitting IO (Benjamin Marzinski) [2183559] - dm: fix improper splitting for abnormal bios (Benjamin Marzinski) [2183559] - dm: remove unnecessary (void*) conversion in event_callback() (Benjamin Marzinski) [2179207] - dm ioctl: remove unnecessary check when using dm_get_mdptr() (Benjamin Marzinski) [2179207] - dm ioctl: assert _hash_lock is held in __hash_remove (Benjamin Marzinski) [2179207] - dm cache: add cond_resched() to various workqueue loops (Benjamin Marzinski) [2179207] - dm thin: add cond_resched() to various workqueue loops (Benjamin Marzinski) [2179207] - dm: add cond_resched() to dm_wq_work() (Benjamin Marzinski) [2179207] - dm: update targets using system workqueues to use a local workqueue (Benjamin Marzinski) [2179207] - dm: remove flush_scheduled_work() during local_exit() (Benjamin Marzinski) [2179207] - dm: declare variables static when sensible (Benjamin Marzinski) [2179207] - dm ioctl: prefer strscpy() instead of strlcpy() (Benjamin Marzinski) [2179207] - dm: avoid 'do {} while(0)' loop in single statement macros (Benjamin Marzinski) [2179207] - dm: favour __packed versus "__attribute__ ((packed))" (Benjamin Marzinski) [2179207] - dm: favour __aligned(N) versus "__attribute__ (aligned(N))" (Benjamin Marzinski) [2179207] - dm: adjust EXPORT_SYMBOL() to follow functions immediately (Benjamin Marzinski) [2179207] - dm block-manager: avoid not required parentheses (Benjamin Marzinski) [2179207] - dm: send just one event on resize, not two (Benjamin Marzinski) [2179207] - dm table: check that a dm device doesn't reference itself (Benjamin Marzinski) [2179207] - dm raid: fix some spelling mistakes in comments (Benjamin Marzinski) [2179207] - dm verity: stop using WQ_UNBOUND for verify_wq (Benjamin Marzinski) [2179207] - dm integrity: Remove bi_sector that's only used by commented debug code (Benjamin Marzinski) [2179207] - dm crypt: Slightly simplify crypt_set_keyring_key() (Benjamin Marzinski) [2179207] - dm ioctl: drop always-false condition (Benjamin Marzinski) [2179207] - dm flakey: fix logic when corrupting a bio (Benjamin Marzinski) [2179207] - dm flakey: fix a bug with 32-bit highmem systems (Benjamin Marzinski) [2179207] - dm flakey: don't corrupt the zero page (Benjamin Marzinski) [2179207] - dm cache: Add some documentation to dm-cache-background-tracker.h (Benjamin Marzinski) [2179207] - dm cache: free background tracker's queued work in btracker_destroy (Benjamin Marzinski) [2179207] - dm ioctl: fix a couple ioctl codes (Benjamin Marzinski) [2179207] - dm ioctl: a small code cleanup in list_version_get_info (Benjamin Marzinski) [2179207] - sfc: include vport_id in filter spec hash and equal() (Íñigo Huguet) [2159251] - ptp: convert remaining drivers to adjfine interface (Íñigo Huguet) [2159251] - sfc: Use kmap_local_page() instead of kmap_atomic() (Íñigo Huguet) [2159251] - sfc: use sysfs_emit() to instead of scnprintf() (Íñigo Huguet) [2159251] - selftests: forwarding: add tunnel_key "nofrag" test case (Davide Caratti) [2103797] - selftests: tc-testing: add tunnel_key "nofrag" test case (Davide Caratti) [2103797] - selftests: tc-testing: add "depends_on" property to skip tests (Davide Caratti) [2103797] - net/sched: act_tunnel_key: add support for "don't fragment" (Davide Caratti) [2103797] - e1000e: Fix TX dispatch condition (Ken Cox) [2153313] - e1000e: Separate MTP board type from ADP (Ken Cox) [2153313] - drivers/net/ethernet/e1000e: check return value of e1e_rphy() (Ken Cox) [2153313] - ipvs: add sysctl_run_estimation to support disable estimation (Hangbin Liu) [2182003] - scsi: ses: Don't attach if enclosure has no components (Tomas Henzl) [1975026] - scsi: ses: Fix slab-out-of-bounds in ses_intf_remove() (Tomas Henzl) [1975026] - scsi: ses: Fix possible desc_ptr out-of-bounds accesses (Tomas Henzl) [1975026] - scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses (Tomas Henzl) [1975026] - scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process() (Tomas Henzl) [1975026] - vmxnet3: move rss code block under eop descriptor (Izabela Bakollari) [2172579]- crypto: qat - add support for 402xx devices (Vladis Dronov) [2144529] - crypto: qat - drop log level of msg in get_instance_node() (Vladis Dronov) [2144529] - crypto: qat - fix out-of-bounds read (Vladis Dronov) [2144529] - Documentation: qat: change kernel version (Vladis Dronov) [2144529] - crypto: qat - add qat_zlib_deflate (Vladis Dronov) [2144529] - crypto: qat - extend buffer list logic interface (Vladis Dronov) [2144529] - crypto: qat - fix spelling mistakes from 'bufer' to 'buffer' (Vladis Dronov) [2144529] - crypto: qat - add resubmit logic for decompression (Vladis Dronov) [2144529] - crypto: acomp - define max size for destination (Vladis Dronov) [2144529] - crypto: qat - enable deflate for QAT GEN4 (Vladis Dronov) [2144529] - crypto: qat - expose deflate through acomp api for QAT GEN2 (Vladis Dronov) [2144529] - crypto: qat - rename and relocate GEN2 config function (Vladis Dronov) [2144529] - crypto: qat - relocate qat_algs_alloc_flags() (Vladis Dronov) [2144529] - crypto: qat - relocate backlog related structures (Vladis Dronov) [2144529] - crypto: qat - extend buffer list interface (Vladis Dronov) [2144529] - crypto: qat - generalize crypto request buffers (Vladis Dronov) [2144529] - crypto: qat - change bufferlist logic interface (Vladis Dronov) [2144529] - crypto: qat - rename bufferlist functions (Vladis Dronov) [2144529] - crypto: qat - relocate bufferlist logic (Vladis Dronov) [2144529] - crypto: qat - Use helper to set reqsize (Vladis Dronov) [2144529] - crypto: kpp - Add helper to set reqsize (Vladis Dronov) [2144529] - crypto: qat - fix error return code in adf_probe (Vladis Dronov) [2144529] - crypto: qat - remove ADF_STATUS_PF_RUNNING flag from probe (Vladis Dronov) [2144529] - selftests: net: rps_default_mask.sh: delete veth link specifically (Hangbin Liu) [2185801] - selftests: net: devlink_port_split.py: skip test if no suitable device available (Hangbin Liu) [2185801] - selftests: mirror_gre_bridge_1q: Avoid changing PVID while interface is operational (Hangbin Liu) [2185801] - selftests/tls: Add {} to avoid static checker warning (Hangbin Liu) [2185801] - selftests: nft_nat: ensuring the listening side is up before starting the client (Hangbin Liu) [2185801] - selftest: fib_tests: Always cleanup before exit (Hangbin Liu) [2185801] - selftests/net: Interpret UDP_GRO cmsg data as an int value (Hangbin Liu) [2185801] - selftests: forwarding: lib: quote the sysctl values (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking (Hangbin Liu) [2185801] - selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_rx/tx: Stop when wrong CLI args are provided (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_rx: Fix 'used uninitialized' compiler warning (Hangbin Liu) [2185801] - selftests: rtnetlink: correct xfrm policy rule in kci_test_ipsec_offload (Hangbin Liu) [2185801] - selftests: forwarding: Fix failing tests with old libnet (Hangbin Liu) [2185801] - powerpc/pseries/mobility: set NMI watchdog factor during an LPM (Mamatha Inamdar) [2186026] - powerpc/watchdog: introduce a NMI watchdog's factor (Mamatha Inamdar) [2186026] - watchdog: export lockup_detector_reconfigure (Mamatha Inamdar) [2186026] - powerpc/mobility: wait for memory transfer to complete (Mamatha Inamdar) [2186026] - crypto: drbg - Only fail when jent is unavailable in FIPS mode (Vladis Dronov) [2175712] - crypto: jitter - permanent and intermittent health errors (Vladis Dronov) [2175712] - crypto: jitter - quit sample collection loop upon RCT failure (Vladis Dronov) [2175712] - crypto: jitter - don't limit ->health_failure check to FIPS mode (Vladis Dronov) [2175712] - crypto: jitter - drop kernel-doc notation (Vladis Dronov) [2175712] - selftests/livepatch: normalize sysctl error message (Julia Denham) [RHEL-256] - livepatch: Skip livepatch tests if ftrace cannot be configured (Julia Denham) [RHEL-256] - livepatch: Add a missing newline character in klp_module_coming() (Julia Denham) [RHEL-256] - livepatch: fix race between fork and KLP transition (Julia Denham) [RHEL-256] - scsi: bnx2i: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Nilesh Javali) [2164956] - x86/xen: Split HVM vector callback setup and interrupt gate allocation (Prarit Bhargava) [2187810] - s390/uaccess: add missing earlyclobber annotations to __clear_user() (Tobias Huschle) [2183078] - s390/qeth: fix use-after-free in hsci (Tobias Huschle) [2183992] - SUNRPC: Fix a server shutdown leak (Benjamin Coddington) [2166107] - powerpc/pseries/vas: Ignore VAS update for DLPAR if copy/paste is not enabled (Mamatha Inamdar) [2184979] - cnic: don't pass bogus GFP_ flags to dma_alloc_coherent (Nilesh Javali) [2164958] - cnic: Use the bitmap API to allocate bitmaps (Nilesh Javali) [2164958]- perf vendor events intel: Add uncore event list for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Add metrics for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Update core event list for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Add sapphirerapids events (Michael Petlan) [2180657] - perf vendor events intel: Update metrics for Alderlake (Michael Petlan) [2180656] - perf vendor events: Fix Alderlake metric groups (Michael Petlan) [2180656] - perf vendor events intel: Add metrics for Alderlake (Michael Petlan) [2180656] - perf/x86/rapl: Add support for Intel Raptor Lake (Michael Petlan) [2180654] - perf/x86/intel: Add Cooper Lake stepping to isolation_ucodes[] (Michael Petlan) [2153896] - perf/x86/intel/cstate: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/intel: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/intel/uncore: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/msr: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/msr: Add Sapphire Rapids CPU support (Michael Petlan) [2156802] - perf/x86/intel/uncore: Add Meteor Lake support (Michael Petlan) [2177039] - perf/x86/msr: Add Meteor Lake support (Michael Petlan) [2153962] - perf/x86/cstate: Add Meteor Lake support (Michael Petlan) [2153962] - perf/x86/intel: Support Architectural PerfMon Extension leaf (Michael Petlan) [2153962] - x86/cpufeatures: Add Architectural PerfMon Extension bit (Michael Petlan) [2153962] - perf/x86: Support Retire Latency (Michael Petlan) [2153962] - perf/x86: Add Meteor Lake support (Michael Petlan) [2153962] - perf: Add PMU_FORMAT_ATTR_SHOW (Michael Petlan) [2153962] - mm/hugetlb: add dedicated func to get 'allowed' nodemask for current process (Rafael Aquini) [2153926] - mm/hugetlb: simplify the calculation of variables (Rafael Aquini) [2153926] - mm/mempolicy: fix lock contention on mems_allowed (Rafael Aquini) [2153926] - mm/mempolicy: do not allow illegal MPOL_F_NUMA_BALANCING | MPOL_LOCAL in mbind() (Rafael Aquini) [2153926] - mm/mempolicy.c: use in_task() in mempolicy_slab_node() (Rafael Aquini) [2153926] - mm/mempolicy: unify the create() func for bind/interleave/prefer-many policies (Rafael Aquini) [2153926] - mm/mempolicy: advertise new MPOL_PREFERRED_MANY (Rafael Aquini) [2153926] - mm/hugetlb: add support for mempolicy MPOL_PREFERRED_MANY (Rafael Aquini) [2153926] - mm/memplicy: add page allocation function for MPOL_PREFERRED_MANY policy (Rafael Aquini) [2153926] - mm/mempolicy: add MPOL_PREFERRED_MANY for multiple preferred nodes (Rafael Aquini) [2153926] - mm/mempolicy: use readable NUMA_NO_NODE macro instead of magic number (Rafael Aquini) [2153926] - mm/mempolicy: unify the parameter sanity check for mbind and set_mempolicy (Rafael Aquini) [2153926] - mm/mempolicy: use unified 'nodes' for bind/interleave/prefer policies (Rafael Aquini) [2153926] - mm/mempolicy: don't handle MPOL_LOCAL like a fake MPOL_PREFERRED policy (Rafael Aquini) [2153926] - mm/mempolicy: cleanup nodemask intersection check for oom (Rafael Aquini) [2153926] - mm/mempolicy: fix mpol_misplaced kernel-doc (Rafael Aquini) [2153926] - numa balancing: migrate on fault among multiple bound nodes (Rafael Aquini) [2153926] - mm/hugetlb: add mempolicy check in the reservation routine (Rafael Aquini) [2153926] - mm: remove unused alloc_page_vma_node() (Rafael Aquini) [2153926] - mm/mempolicy: remove or narrow the lock on current (Rafael Aquini) [2153926] - mm, mempolicy: fix uninit memory access (Rafael Aquini) [2153926] - mm/mempool: minor coding style tweaks (Rafael Aquini) [2153926] - mm: fix typos in comments (Rafael Aquini) [2153926] - futex: Do not apply time namespace adjustment on FUTEX_LOCK_PI (Joel Savitz) [2170113] - Revert 337f13046ff0 ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op") (Joel Savitz) [2170113] - kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data() (Joel Savitz) [2170113] - futex: Remove unneeded gotos (Joel Savitz) [2170113] - rtmutex: Ensure that the top waiter is always woken up (Joel Savitz) [2170113] - rtmutex: Add acquire semantics for rtmutex lock acquisition slow path (Joel Savitz) [2170113] - locking/lockdep: Fix lockdep_init_map_*() confusion (Joel Savitz) [2170113] - locking/lockdep: Avoid potential access of invalid memory in lock_class (Joel Savitz) [2170113] - lockdep: Correct lock_classes index mapping (Joel Savitz) [2170113] - locking/rtmutex: Squash self-deadlock check for ww_rt_mutex. (Joel Savitz) [2170113] - locking/rtmutex: Fix incorrect condition in rtmutex_spin_on_owner() (Joel Savitz) [2170113] - kallsyms: remove arch specific text and data check (Joel Savitz) [2170113] - lockdep: Let lock_is_held_type() detect recursive read as read (Joel Savitz) [2170113] - lockdep: Fix wait-type for empty stack (Joel Savitz) [2170113] - locking/lockdep: Improve noinstr vs errors (Joel Savitz) [2170113] - locking/lockdep: Correct calling tracepoints (Joel Savitz) [2170113] - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count (Joel Savitz) [2170113] - locking/ww_mutex: Fix runtime warning in the WW mutex selftest (Joel Savitz) [2170113] - fortify: Do not cast to "unsigned char" (Josef Oskera) [2139487] - fortify: Use SIZE_MAX instead of (size_t)-1 (Josef Oskera) [2139487] - afs: Work around strnlen() oops with CONFIG_FORTIFIED_SOURCE=y (Josef Oskera) [2139487] - net/mlx4_en: Introduce flexible array to silence overflow warning (Josef Oskera) [2139487] - wusbcore: silence fortify warning (Josef Oskera) [2139487] - skbuff: Switch structure bounds to struct_group() (Josef Oskera) [2139487] - RDMA/cxgb4: fix accept failure due to increased cpl_t5_pass_accept_rpl size (Josef Oskera) [2139487] - intel_th: msu: Use memset_startat() for clearing hw header (Josef Oskera) [2139487] - dm integrity: Use struct_group() to zero struct journal_sector (Josef Oskera) [2139487] - iw_cxgb4: Use memset_startat() for cpl_t5_pass_accept_rpl (Josef Oskera) [2139487] - scsi: lpfc: Use struct_group() to initialize struct lpfc_cgn_info (Josef Oskera) [2139487] - netfilter: conntrack: Use memset_startat() to zero struct nf_conn (Josef Oskera) [2139487] - netfilter: conntrack: avoid gcc-10 zero-length-bounds warning (Josef Oskera) [2139487] - thermal: int340x: Use struct_group() for memcpy() region (Josef Oskera) [2139487] - net/af_iucv: Use struct_group() to zero struct iucv_sock region (Josef Oskera) [2139487] - ipv6: Use memset_after() to zero rt6_info (Josef Oskera) [2139487] - bnx2x: Use struct_group() for memcpy() region (Josef Oskera) [2139487] - tracing: Use memset_startat() to zero struct trace_iterator (Josef Oskera) [2139487] - xfrm: Use memset_after() to clear padding (Josef Oskera) [2139487] - HID: roccat: Use struct_group() to zero kone_mouse_event (Josef Oskera) [2139487] - scsi: ibmvscsi: Avoid multi-field memset() overflow by aiming at srp (Josef Oskera) [2139487] - ipv4: ip_output.c: Fix out-of-bounds warning in ip_copy_addrs() (Josef Oskera) [2139487] - media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf() (Josef Oskera) [2139487] - s390/zcrypt: Switch to flexible array member (Josef Oskera) [2139487] - s390/speculation: Use statically initialized const for instructions (Josef Oskera) [2139487] - cifs: avoid extra calls in posix_info_parse (Josef Oskera) [2139487] - x86/entry: Fixup bad_iret vs noinstr (Josef Oskera) [2139487] - x86/traps: Mark fixup_bad_iret() noinstr (Josef Oskera) [2139487] - x86/doublefault: Remove memmove() call (Josef Oskera) [2139487] - tracing: Initialize iter->seq after zeroing in tracing_read_pipe() (Josef Oskera) [2139487] - tracing: Silence GCC 9 array bounds warning (Josef Oskera) [2139487] - fortify: Fix __compiletime_strlen() under UBSAN_BOUNDS_LOCAL (Josef Oskera) [2139487] - fortify: Provide a memcpy trap door for sharp corners (Josef Oskera) [2139487] - fortify: Make pointer arguments const (Josef Oskera) [2139487] - fortify: Replace open-coded __gnu_inline attribute (Josef Oskera) [2139487] - fortify: Update compile-time tests for Clang 14 (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memset() at compile-time (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memmove() at compile-time (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memcpy() at compile-time (Josef Oskera) [2139487] - fortify: strlen: Avoid shadowing previous locals (Josef Oskera) [2139487] - fortify: Add compile-time FORTIFY_SOURCE tests (Josef Oskera) [2139487] - fortify: Allow strlen() and strnlen() to pass compile-time known lengths (Josef Oskera) [2139487] - fortify: Prepare to improve strnlen() and strlen() warnings (Josef Oskera) [2139487] - fortify: Fix dropped strcpy() compile-time write overflow check (Josef Oskera) [2139487] - fortify: Explicitly disable Clang support (Josef Oskera) [2139487] - fortify: Move remaining fortify helpers into fortify-string.h (Josef Oskera) [2139487] - lib/string: Move helper functions out of string.c (Josef Oskera) [2139487] - lib/string.c: update match_string() doc-strings with correct behavior (Josef Oskera) [2139487] - string.h: move fortified functions definitions in a dedicated header. (Josef Oskera) [2139487] - string.h: add FORTIFY coverage for strscpy() (Josef Oskera) [2139487] - lib: string.h: detect intra-object overflow in fortified string functions (Josef Oskera) [2139487] - lib: string_helpers: provide kfree_strarray() (Josef Oskera) [2139487] - lib/string.c: implement stpcpy (Josef Oskera) [2139487] - kernel-doc: core-api: include string.h into core-api (Josef Oskera) [2139487] - docs/core-api: move *{str,mem}dup* to "String Manipulation" (Josef Oskera) [2139487] - selftests/tc-testing: add show class case for red qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for prio qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for mq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for ingress qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for qfq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for netem qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for multiq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for mqprio qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for htb qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for hfsc qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for fq_codel qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for dsmark qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for drr qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cbs qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cbq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cake qdisc (Ivan Vecera) [2172130] - net/sched: use tc_qdisc_stats_dump() in qdisc (Ivan Vecera) [2172130] - net/sched: sch_api: add helper for tc qdisc walker stats dump (Ivan Vecera) [2172130] - hwrng: core - use per-rng quality value instead of global setting (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - start and stop in-kernel rngd in separate function (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - do not bother to order list of devices by quality (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - credit entropy for low quality sources of randomness (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - break out of hwrng_fillfn if current rng is not trusted (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - only set cur_rng_set_by_user if it is working (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - use rng_fillbuf in add_early_randomness() (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - read() callback must be called for size of 32 or more bytes (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - explicit ordering of initcalls (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - Use DEVICE_ATTR_ macro (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - remove redundant initialization of variable err (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - convert sysfs sprintf/snprintf family to sysfs_emit (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - remove redundant initialization of variable ret (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - Fix use-after-free warning in hwrng_register() (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - move add_early_randomness() out of rng_mutex (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - document the quality field (Jose Ignacio Tornos Martinez) [2172884] - netfilter: nf_conntrack: allow early drop of offloaded UDP conns (Florian Westphal) [2183080] - net/sched: act_ct: offload UDP NEW connections (Florian Westphal) [2183080] - net/sched: act_ct: set ctinfo in meta action depending on ct state (Florian Westphal) [2183080] - netfilter: flowtable: cache info of last offload (Florian Westphal) [2183080] - netfilter: flowtable: allow unidirectional rules (Florian Westphal) [2183080] - netfilter: flowtable: fixup UDP timeout depending on ct state (Florian Westphal) [2183080] - ptp_clock: Let the ADJ_OFFSET interface respect the ADJ_NANO flag for PHC devices. (Íñigo Huguet) [2180896] - ptp: Add adjust_phase to ptp_clock_caps capability. (Íñigo Huguet) [2180896] - ptp: Add adjphase function to support phase offset control. (Íñigo Huguet) [2180896] - kernfs: dont take d_lock on revalidate (Ian Kent) [2126350] - kernfs: dont take i_lock on inode attr read (Ian Kent) [2126350] - kernfs: remove redundant kernfs_rwsem declaration. (Ian Kent) [2126350] - kernfs: fix potential NULL dereference in __kernfs_remove (Ian Kent) [2126350] - kernfs: fix NULL dereferencing in kernfs_remove (Ian Kent) [2126350] - kernfs: prevent early freeing of root node (Ian Kent) [2126350] - kernfs: switch global kernfs_rwsem lock to per-fs lock (Ian Kent) [2126350] - workqueue: Fold rebind_worker() within rebind_workers() (Valentin Schneider) [2088578] - workqueue: Unbind kworkers before sending them to exit() (Valentin Schneider) [2088578] - workqueue: Don't hold any lock while rcuwait'ing for !POOL_MANAGER_ACTIVE (Valentin Schneider) [2088578] - workqueue: Convert the idle_timer to a timer + work_struct (Valentin Schneider) [2088578] - workqueue: Factorize unbind/rebind_workers() logic (Valentin Schneider) [2088578] - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex (Valentin Schneider) [2088578] - workqueue: make sysfs of unbound kworker cpumask more clever (Valentin Schneider) [2088578] - fuse: add feature flag for expire-only (Pavel Reichl) [2109496] - fuse: add "expire only" mode to FUSE_NOTIFY_INVAL_ENTRY (Pavel Reichl) [2109496] - fuse: extend init flags (Pavel Reichl) [2109496] - wifi: iwlwifi: mvm: protect TXQ list manipulation (Jose Ignacio Tornos Martinez) [2152168] - wifi: iwlwifi: mvm: fix mvmtxq->stopped handling (Jose Ignacio Tornos Martinez) [2152168] - thunderbolt: Explicitly enable lane adapter hotplug events at startup (Desnes Nunes) [2130062] - x86/tsc: Add option to force frequency recalibration with HW timer (Prarit Bhargava) [2100597] - ovl: fix use after free in struct ovl_aio_req (Miklos Szeredi) [2176159] {CVE-2023-1252}- mm/memremap: fix missing call to untrack_pfn() in pagemap_range() (Nico Pache) [2168370] - arm64: mm: correct the inside linear map range during hotplug check (Nico Pache) [2168370] - s390/mm: define arch_get_mappable_range() (Nico Pache) [2168370] - arm64/mm: define arch_get_mappable_range() (Nico Pache) [2168370] - mm/memory_hotplug: prevalidate the address range being added with platform (Nico Pache) [2168370] - s390/extmem: return correct segment type in __segment_load() (Nico Pache) [2168370] - s390/vmem: get rid of memory segment list (Nico Pache) [2168370] - arm64/mm: Validate hotplug range before creating linear mapping (Nico Pache) [2168370] - mm/truncate.c: make __invalidate_mapping_pages() static (Nico Pache) [2168370] - powerpc/mm: fix "section_base" set but not used (Nico Pache) [2168370] - powerpc: Avoid link stack corruption in misc asm functions (Nico Pache) [2168370] - powerpc/booke: Avoid link stack corruption in several places (Nico Pache) [2168370] - powerpc/mm: Fix lockup on kernel exec fault (Nico Pache) [2168370] - x86: fix seq_file iteration for pat/memtype.c (Nico Pache) [2168370] - powerpc/book3s64/hash: Add cond_resched to avoid soft lockup warning (Nico Pache) [2168370] - powerpc/nvdimm: Update vmemmap_populated to check sub-section range (Nico Pache) [2168370] - powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt() (Nico Pache) [2168370] - x86/mm: Sync also unmappings in vmalloc_sync_all() (Nico Pache) [2168370] - Fix page corruption caused by racy check in __free_pages (Nico Pache) [2168370] - mm/gup: fix gup_pud_range() for dax (Nico Pache) [2168370] - memcg: Fix possible use-after-free in memcg_write_event_control() (Nico Pache) [2168370] - mm/huge_memory: use pfn_to_online_page() in split_huge_pages_all() (Nico Pache) [2168370] - mm: fix madivse_pageout mishandling on non-LRU page (Nico Pache) [2168370] - mm/page_alloc: fix race condition between build_all_zonelists and page allocation (Nico Pache) [2168370] - mm/slub: fix to return errno if kmalloc() fails (Nico Pache) [2168370] - writeback: avoid use-after-free after removing device (Nico Pache) [2168370] - x86/mm: Use proper mask when setting PUD mapping (Nico Pache) [2168370] - mm/mmap.c: fix missing call to vm_unacct_memory in mmap_region (Nico Pache) [2168370] - mm/hmm: fault non-owner device private entries (Nico Pache) [2168370] - mm: split huge PUD on wp_huge_pud fallback (Nico Pache) [2168370] - mm/page_owner: use strscpy() instead of strlcpy() (Nico Pache) [2168370] - mm/vmscan: take min_slab_pages into account when try to call shrink_node (Nico Pache) [2168370] - x86: Fix return value of __setup handlers (Nico Pache) [2168370] - mm: fix unexpected zeroed page mapping with zram swap (Nico Pache) [2168370] - mm, page_alloc: fix build_zonerefs_node() (Nico Pache) [2168370] - mm/mempolicy: fix mpol_new leak in shared_policy_replace (Nico Pache) [2168370] - mm/slub: remove forced_order parameter in calculate_sizes (Nico Pache) [2168370] - mm/usercopy: return 1 from hardened_usercopy __setup() handler (Nico Pache) [2168370] - mm/thp: ClearPageDoubleMap in first page_add_file_rmap() (Nico Pache) [2168370] - mm/thp: refix __split_huge_pmd_locked() for migration PMD (Nico Pache) [2168370] - mempolicy: mbind_range() set_policy() after vma_merge() (Nico Pache) [2168370] - mm/pages_alloc.c: don't create ZONE_MOVABLE beyond the end of a node (Nico Pache) [2168370] - mm: userfaultfd: fix missing cache flush in mcopy_atomic_pte() and __mcopy_atomic() (Nico Pache) [2168370] - mm: hugetlb: fix missing cache flush in copy_huge_page_from_user() (Nico Pache) [2168370] - mm: thp: fix wrong cache flush in remove_migration_pmd() (Nico Pache) [2168370] - mm: fix missing cache flush for all tail pages of compound page (Nico Pache) [2168370] - tmpfs: fix regressions from wider use of ZERO_PAGE (Nico Pache) [2168370] - tmpfs: do not allocate pages on read (Nico Pache) [2168370] - shmem: mapping_set_exiting() to help mapped resilience (Nico Pache) [2168370] - mm/hmm.c: allow VM_MIXEDMAP to work with hmm_range_fault (Nico Pache) [2168370] - shmem: fix a race between shmem_unused_huge_shrink and shmem_evict_inode (Nico Pache) [2168370] - mm, slub: use prefetchw instead of prefetch (Nico Pache) [2168370] - arm64: mm: update max_pfn after memory hotplug (Nico Pache) [2168370] - mm, vmscan: guarantee drop_slab_node() termination (Nico Pache) [2168370] - fs, mm: fix race in unlinking swapfile (Nico Pache) [2168370] - fs: inode: count invalidated shadow pages in pginodesteal (Nico Pache) [2168370] - mm, fadvise: improve the expensive remote LRU cache draining after FADV_DONTNEED (Nico Pache) [2168370] - mm/filemap.c: rewrite mapping_needs_writeback in less fancy manner (Nico Pache) [2168370] - fs: drop_caches: fix skipping over shadow cache inodes (Nico Pache) [2168370] - mm: introduce and use mapping_empty() (Nico Pache) [2168370] - mm: remove irqsave/restore locking from contexts with irqs enabled (Nico Pache) [2168370] - mm: zswap: clean up confusing comment (Nico Pache) [2168370] - mm/memory_hotplug: use helper function zone_end_pfn() to get end_pfn (Nico Pache) [2168370] - mm: vmstat: add some comments on internal storage of byte items (Nico Pache) [2168370] - mm: vmstat: fix NOHZ wakeups for node stat changes (Nico Pache) [2168370] - mm/mmap.c: replace do_brk with do_brk_flags in comment of insert_vm_struct() (Nico Pache) [2168370] - mm/mmap.c: use helper function allow_write_access() in __remove_shared_vm_struct() (Nico Pache) [2168370] - mm: use helper function mapping_allow_writable() (Nico Pache) [2168370] - mm: memcontrol: reword obsolete comment of mem_cgroup_unmark_under_oom() (Nico Pache) [2168370] - mm/page_counter: correct the obsolete func name in the comment of page_counter_try_charge() (Nico Pache) [2168370] - mm: memcontrol: correct the comment of mem_cgroup_iter() (Nico Pache) [2168370] - x86/mm: use max memory block size on bare metal (Nico Pache) [2168370] - mm/util.c: remove the VM_WARN_ONCE for vm_committed_as underflow check (Nico Pache) [2168370] - include/linux/swapops.h: correct guards for non_swap_entry() (Nico Pache) [2168370] - mm: set vm_next and vm_prev to NULL in vm_area_dup() (Nico Pache) [2168370] - mm: don't prepare anon_vma if vma has VM_WIPEONFORK (Nico Pache) [2168370] - page-flags: fix a crash at SetPageError(THP_SWAP) (Nico Pache) [2168370] - mm/rmap.c: fix outdated comment in page_get_anon_vma() (Nico Pache) [2168370] - mm/mmap.c: extract __vma_unlink_list() as counterpart for __vma_link_list() (Nico Pache) [2168370] - mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup() (Nico Pache) [2168370] - x86/mm: Kill stray kernel fault handling comment (Nico Pache) [2168370] - arm64/numa: Unify common error path in numa_init() (Nico Pache) [2168370] - tools/power/x86/intel-speed-select: v1.14 release (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Adjust uncore max/min frequency (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix display of uncore min frequency (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Add Emerald Rapid quirk (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: turbo-freq auto mode with SMT off (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: cpufreq reads on offline CPUs (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Use null-terminated string (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove duplicate dup() (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Handle open() failure case (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused non_block flag (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove wrong check in set_isst_id() (Prarit Bhargava) [2154078] - platform/x86: ISST: Fix typo in comments (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Release v1.13 (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Optimize CPU initialization (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Utilize cpu_map to get physical id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused struct clos_config fields (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Enforce isst_id value (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Do not export get_physical_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Introduce is_cpu_in_power_domain helper (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Cleanup get_physical_id usage (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Convert more function to use isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Add pkg and die in isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Introduce struct isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused core_mask array (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove dead code (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix cpu count for TDP level display (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unneeded semicolon (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix off by one check (Prarit Bhargava) [2154078] - platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix warning for perf_cap.cpu (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Display error on turbo mode disabled (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: fix build failure when using -Wl,--as-needed (Prarit Bhargava) [2154078] - KVM: x86: Propagate the AMD Automatic IBRS feature to the guest (Waiman Long) [1989283] - x86/cpu: Support AMD Automatic IBRS (Waiman Long) [1989283] - x86/cpu, kvm: Add the SMM_CTL MSR not present feature (Waiman Long) [1989283] - x86/cpu, kvm: Add the Null Selector Clears Base feature (Waiman Long) [1989283] - x86/cpu, kvm: Move X86_FEATURE_LFENCE_RDTSC to its native leaf (Waiman Long) [1989283] - x86/cpu, kvm: Add the NO_NESTED_DATA_BP feature (Waiman Long) [1989283] - KVM: x86: Move open-coded CPUID leaf 0x80000021 EAX bit propagation code (Waiman Long) [1989283] - x86/cpu, kvm: Add support for CPUID_80000021_EAX (Waiman Long) [1989283] - x86/bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from S3 (Waiman Long) [1989283] - KVM: x86: Advertise that the SMM_CTL MSR is not supported (Waiman Long) [1989283] - Documentation/hw-vuln: Update spectre doc (Waiman Long) [1989283] - nvme-tcp: fence TCP socket on receive error (John Meneghini) [2116939] - nvme-multipath: fix possible hang in live ns resize with ANA access (John Meneghini) [2116939] - nvme-tcp: fix possible hang caused during ctrl deletion (John Meneghini) [2116939] - nvme-tcp: fix regression that causes sporadic requests to time out (John Meneghini) [2116939] - nvme-tcp: fix UAF when detecting digest errors (John Meneghini) [2116939] - nvme-tcp: check if the queue is allocated before stopping it (John Meneghini) [2116939] - nvme-tcp: always fail a request when sending it failed (John Meneghini) [2116939] - nvme: fix regression when disconnect a recovering ctrl (John Meneghini) [2116939] - nvme-multipath: use vmalloc for ANA log buffer (John Meneghini) [2116939] - bfq: fix waker_bfqq inconsistency crash (Ming Lei) [2177565] - blktrace: Fix output non-blktrace event when blk_classic option enabled (Ming Lei) [2177565] - blk-wbt: fix that 'rwb->wc' is always set to 1 in wbt_init() (Ming Lei) [2177565] - blk-wbt: call rq_qos_add() after wb_normal is initialized (Ming Lei) [2177565] - block: sync mixed merged request's failfast with 1st bio's (Ming Lei) [2177565] - blk-mq: Fix potential io hung for shared sbitmap per tagset (Ming Lei) [2177565] - block: bio-integrity: Copy flags when bio_integrity_payload is cloned (Ming Lei) [2177565] - dim: initialize all struct fields (Audra Mitchell) [2172125] - XArray: Update the LRU list in xas_split() (Audra Mitchell) [2172125] - lib: bitmap: fix many kernel-doc warnings (Audra Mitchell) [2172125] - vsprintf: Fix %pK with kptr_restrict == 0 (Audra Mitchell) [2172125] - lib: uninline simple_strntoull() as well (Audra Mitchell) [2172125] - lib: dimlib: fix help text typos (Audra Mitchell) [2172125] - locks: fix TOCTOU race when granting write lease (Waiman Long) [2152051] - locks: eliminate false positive conflicts for write lease (Waiman Long) [2152051] - locks: Use inode_is_open_for_write (Waiman Long) [2152051] - fs/locks: remove unnecessary white space. (Waiman Long) [2152051] - fs/locks: use properly initialized file_lock when unlocking. (Waiman Long) [2152051] - redhat/configs: Enable CONFIG_PINCTRL_METEORLAKE in RHEL (Prarit Bhargava) [2156845] - pinctrl: intel: Add Intel Meteor Lake pin controller support (Prarit Bhargava) [2156845] - md: fix regression for null-ptr-deference in __md_stop() (Nigel Croxon) [2162231] - md: avoid signed overflow in slot_store() (Nigel Croxon) [2162231] - md: Free resources in __md_stop (Nigel Croxon) [2162231] - md: account io_acct_set usage with active_io (Nigel Croxon) [2162231] - md: use MD_RESYNC_* whenever possible (Nigel Croxon) [2162231] - md: Free writes_pending in md_stop (Nigel Croxon) [2162231] - md: Change active_io to percpu (Nigel Croxon) [2162231] - md: Factor out is_md_suspended helper (Nigel Croxon) [2162231] - md: don't update recovery_cp when curr_resync is ACTIVE (Nigel Croxon) [2162231] - md: fold unbind_rdev_from_array into md_kick_rdev_from_array (Nigel Croxon) [2162231] - md: mark md_kick_rdev_from_array static (Nigel Croxon) [2162231] - mm/kmemleak: fix UAF bug in kmemleak_scan() (Waiman Long) [2172763] - mm/kmemleak: simplify kmemleak_cond_resched() usage (Waiman Long) [2172763] - mm/kmemleak.c: fix a comment (Waiman Long) [2172763] - ptp: introduce a phase offset in the periodic output request (Íñigo Huguet) [2179072] - ptp: add ability to configure duty cycle for periodic output (Íñigo Huguet) [2179072] - platform/x86: intel/pmc/core: Add Meteor Lake mobile support (Prarit Bhargava) [2153968] - platform/x86: intel/pmc/core: Add Meteor Lake support to pmc core driver (Prarit Bhargava) [2153968] - sched/core: Fix arch_scale_freq_tick() on tickless systems (Phil Auld) [2184083] - qede: avoid uninitialized entries in coal_entry array (Michal Schmidt) [2160054] - qede: fix interrupt coalescing configuration (Jonathan Toppins) [2160054] - powerpc/64s: Unmerge EX_LR and EX_DAR (Mamatha Inamdar) [2134271] - powercap: intel_rapl: add support for Meteor Lake (Prarit Bhargava) [2153964] - dm: fix __send_duplicate_bios() to always allow for splitting IO (Benjamin Marzinski) [2184429] - dm: fix improper splitting for abnormal bios (Benjamin Marzinski) [2184429] - ovl: fail on invalid uid/gid mapping at copy up (Miklos Szeredi) [2165342] {CVE-2023-0386}- timers: Provide timer_shutdown[_sync]() (Ivan Vecera) [2174474] - timers: Add shutdown mechanism to the internal functions (Ivan Vecera) [2174474] - timers: Split [try_to_]del_timer[_sync]() to prepare for shutdown mode (Ivan Vecera) [2174474] - timers: Silently ignore timers with a NULL function (Ivan Vecera) [2174474] - timers: Rename del_timer() to timer_delete() (Ivan Vecera) [2174474] - timers: Rename del_timer_sync() to timer_delete_sync() (Ivan Vecera) [2174474] - timers: Use del_timer_sync() even on UP (Ivan Vecera) [2174474] - timers: Update kernel-doc for various functions (Ivan Vecera) [2174474] - timers: Replace BUG_ON()s (Ivan Vecera) [2174474] - timers: Get rid of del_singleshot_timer_sync() (Ivan Vecera) [2174474] - clocksource/drivers/sp804: Do not use timer namespace for timer_shutdown() function (Ivan Vecera) [2174474] - clocksource/drivers/arm_arch_timer: Do not use timer namespace for timer_shutdown() function (Ivan Vecera) [2174474] - misc/sgi-xp: Replace in_interrupt() usage (Ivan Vecera) [2174474] - timers: Don't block on ->expiry_lock for TIMER_IRQSAFE timers (Ivan Vecera) [2174474] - hvcs: Synchronize hotplug remove with port free (Mamatha Inamdar) [2167962] - hvcs: Use vhangup in hotplug remove (Mamatha Inamdar) [2167962] - hvcs: Get reference to tty in remove (Mamatha Inamdar) [2167962] - hvcs: Use driver groups to manage driver attributes (Mamatha Inamdar) [2167962] - hvcs: Use dev_groups to manage hvcs device attributes (Mamatha Inamdar) [2167962] - hvcs: Fix hvcs port reference counting (Mamatha Inamdar) [2167962] - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup() (Mamatha Inamdar) [2167962] - docs/memory-barriers.txt/kokr: introduce io_stop_wc() and add implementation for ARM64 (Ivan Vecera) [2179061] - docs/memory-barriers.txt: Add a missed closing parenthesis (Ivan Vecera) [2179061] - asm-generic: Add missing brackets for io_stop_wc macro (Ivan Vecera) [2179061] - asm-generic: introduce io_stop_wc() and add implementation for ARM64 (Ivan Vecera) [2179061] - ipv4: Fix incorrect table ID in IOCTL path (Guillaume Nault) [2176792] - ipv4: Fix incorrect route flushing when table ID 0 is used (Guillaume Nault) [2176792] - ipv4: Fix incorrect route flushing when source address is deleted (Guillaume Nault) [2176792] - selftests: Add source route tests to fib_tests (Guillaume Nault) [2176792] - mm/rmap: split page_dup_rmap() into page_dup_file_rmap() and page_try_dup_anon_rmap() (David Hildenbrand) [2179164] - mm/memory: slightly simplify copy_present_pte() (David Hildenbrand) [2179164] - mm/hugetlb: take src_mm->write_protect_seq in copy_hugetlb_page_range() (David Hildenbrand) [2179164] - mm: /proc/sys/vm/stat_refresh stop checking monotonic numa stats (Waiman Long) [2178001] - mm: /proc/sys/vm/stat_refresh skip checking known negative stats (Waiman Long) [2178001] - mm: no more EINVAL from /proc/sys/vm/stat_refresh (Waiman Long) [2178001] - mm: restore node stat checking in /proc/sys/vm/stat_refresh (Waiman Long) [2178001] - sfc: ef10: don't overwrite offload features at NIC reset (Íñigo Huguet) [2154500] - sfc: correctly advertise tunneled IPv6 segmentation (Íñigo Huguet) [2154500] - igb: conditionalize I2C bit banging on external thermal sensor support (Corinna Vinschen) [2130727] - platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering (Prarit Bhargava) [2139963] - x86/nmi: Make register_nmi_handler() more robust (Ani Sinha) [2037005] - net: tls: fix possible race condition between do_tls_getsockopt_conf() and do_tls_setsockopt_conf() (Sabrina Dubroca) [2179819] {CVE-2023-28466} - cpufreq: intel_pstate: hybrid: Use known scaling factor for P-cores (Prarit Bhargava) [2179183] - target: iscsi: use GFP_NOIO with loopback connections (Maurizio Lombardi) [2156546] - core_pattern: add CPU specifier (Oleksandr Natalenko) [1968108] - Bluetooth: L2CAP: Fix accepting connection request for invalid SPSM (David Marlin) [2148404] {CVE-2022-42896} - ipv6: prevent router_solicitations for team port (Xin Long) [2141600] - ipv6: Don't send rs packets to the interface of ARPHRD_TUNNEL (Xin Long) [2141600] - Bluetooth: L2CAP: Fix attempting to access uninitialized memory (David Marlin) [2148408] {CVE-2022-42895} - redhat/scripts/create-tarball.sh: Use nproc instead of rpm macros (Prarit Bhargava) - Revert "Switch to z-stream for 8.8 for CKI pipelines" (Denys Vlasenko)- ethernet: Remove vf rate limit check for drivers (Izabela Bakollari) [2172124] - rtnetlink: verify rate parameters for calls to ndo_set_vf_rate (Izabela Bakollari) [2172124] - sfc: Change VF mac via PF as first preference if available. (Íñigo Huguet) [2117449] - Fix genlog.py to ensure that comments retain "%" characters. (Eder Zulian) [RHEL-340] - redhat: fix duplicate jira issues in the resolves line (Eder Zulian) [RHEL-340] - redhat: add support for Jira issues in changelog (Eder Zulian) [RHEL-340] - redhat/configs: Put CONFIG_SFC_* to a proper location (Vladis Dronov) - redhat/configs: Put CONFIG_SEV_GUEST to a proper location (Vladis Dronov) - Reinstate "GFS2: free disk inode which is deleted by remote node -V2" (Bob Peterson) [2181343] - iavf: fix hang on reboot with ice (Stefan Assmann) [2181811] - iavf: Fix race condition between iavf_shutdown and iavf_remove (Stefan Assmann) [2181811] - net/ulp: use consistent error code when blocking ULP (Sabrina Dubroca) [2176955] {CVE-2023-0461} - net/ulp: prevent ULP without clone op from entering the LISTEN status (Sabrina Dubroca) [2176955] {CVE-2023-0461} - lockd: lockd server-side shouldn't set fl_ops (Jeffrey Layton) [2179329] - NFS: Correct timing for assigning access cache timestamp (Benjamin Coddington) [2180851] - Switch to z-stream for 8.8 for CKI pipelines (Michael Hofmann) - KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS (Jon Maloy) [2160033] {CVE-2022-2196}- tracing/hwlat: Replace sched_setaffinity with set_cpus_allowed_ptr (Jerome Marchand) [2174935] - drivers: hv, hyperv_fb: Untangle and refactor Hyper-V panic notifiers (Mohammed Gamal) [2172513] - video: hyperv_fb: Avoid taking busy spinlock on panic path (Mohammed Gamal) [2172513] - HID: hyperv: remove unused struct synthhid_msg (Mohammed Gamal) [2172513] - HID: hyperv: Replace one-element array with flexible-array member (Mohammed Gamal) [2172513] - clocksource: hyper-v: Add TSC page support for root partition (Mohammed Gamal) [2172443] - clocksource: hyper-v: Use TSC PFN getter to map vvar page (Mohammed Gamal) [2172443] - clocksource: hyper-v: Introduce TSC PFN getter (Mohammed Gamal) [2172443] - clocksource: hyper-v: Introduce a pointer to TSC page (Mohammed Gamal) [2172443] - HV: hv_balloon: fix memory leak with using debugfs_lookup() (Mohammed Gamal) [2172435] - debugfs: add debugfs_lookup_and_remove() (Mohammed Gamal) [2172435] - Drivers: hv: Enable vmbus driver for nested root partition (Mohammed Gamal) [2172435] - video: hyperv_fb: Avoid taking busy spinlock on panic path (Mohammed Gamal) [2172435]- sched/deadline: Add more reschedule cases to prio_changed_dl() (Valentin Schneider) [2120570] - perf/x86/uncore: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86/cstate: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86/msr: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86: Add new Raptor Lake S support (Michael Petlan) [2120365] - net: sched: atm: dont intepret cls results when asked to drop (Davide Caratti) [2168336] {CVE-2023-23455} - nvdimm: Allow overwrite in the presence of disabled dimms (Aristeu Rozanski) [2154070] - Revert "GFS2: free disk inode which is deleted by remote node -V2" (Bob Peterson) [2109600] - gfs2: Evict inodes cooperatively (Andreas Gruenbacher) [2109600] - gfs2: Flush delete work before shrinking inode cache (Andreas Gruenbacher) [2109600] - gfs2: Add SDF_DEACTIVATING super block flag (Bob Peterson) [2109600] - gfs2: check gl_object in rgrp glops (Bob Peterson) [2109600] - gfs2: Split the two kinds of glock "delete" work (Andreas Gruenbacher) [2109600] - gfs2: Move delete workqueue into super block (Andreas Gruenbacher) [2109600] - gfs2: Use container_of() for gfs2_glock(aspace) (Andreas Gruenbacher) [2109600] - gfs2: Get rid of GLF_PENDING_DELETE flag (Andreas Gruenbacher) [2109600] - gfs2: Make glock lru list scanning safer (Andreas Gruenbacher) [2109600] - gfs2: Fix use-after-free in gfs2_glock_shrink_scan (Andreas Gruenbacher) [2109600] - gfs2: Clean up gfs2_scan_glock_lru (Andreas Gruenbacher) [2109600] - gfs2: gl_object races fix (Andreas Gruenbacher) [2109600] - iomap/gfs2: Unlock and put folio in page_done handler (Andreas Gruenbacher) [2109600] - iomap: Add __iomap_put_folio helper (Andreas Gruenbacher) [2109600] - gfs2: Remove support for glock holder auto-demotion (2) (Andreas Gruenbacher) [2109600] - gfs2: Remove support for glock holder auto-demotion (Andreas Gruenbacher) [2109600] - gfs2: Minor gfs2_try_evict cleanup (Andreas Gruenbacher) [2109600] - gfs2: Partially revert gfs2_inode_lookup change (Andreas Gruenbacher) [2109600] - gfs2: Add gfs2_inode_lookup comment (Andreas Gruenbacher) [2109600] - gfs2: Uninline and improve glock_{set,clear}_object (Andreas Gruenbacher) [2109600] - gfs2: Simply dequeue iopen glock in gfs2_evict_inode (Andreas Gruenbacher) [2109600] - gfs2: Clean up after gfs2_create_inode rework (Andreas Gruenbacher) [2109600] - gfs2: Avoid dequeuing GL_ASYNC glock holders twice (Andreas Gruenbacher) [2109600] - gfs2: Handle -EBUSY result of insert_inode_locked4 (Andreas Gruenbacher) [2109600] - gfs2: Fix and clean up create / evict interaction (Andreas Gruenbacher) [2109600] - gfs2: Clean up initialization of "ip" in gfs2_create_inode (Andreas Gruenbacher) [2109600] - gfs2: Get rid of ghs[] in gfs2_create_inode (Andreas Gruenbacher) [2109600] - gfs2: Dequeue waiters when withdrawn (Bob Peterson) [2109600] - gfs2: Prevent double iput for journal on error (Bob Peterson) [2109600] - Revert "gfs2: stop using generic_writepages in gfs2_ail1_start_one" (Andreas Gruenbacher) [2109600] - gfs2: remove ->writepage (Andreas Gruenbacher) [2109600] - gfs2: stop using generic_writepages in gfs2_ail1_start_one (Andreas Gruenbacher) [2109600] - gfs2: List traversal in do_promote is safe (Andreas Gruenbacher) [2109600] - gfs2: do_promote glock holder stealing fix (Bob Peterson) [2109600] - gfs2: Use better variable name (Andreas Gruenbacher) [2109600] - gfs2: Make go_instantiate take a glock (Andreas Gruenbacher) [2109600] - gfs2: Add new go_held glock operation (Andreas Gruenbacher) [2109600] - gfs2: Revert 'Fix "truncate in progress" hang' (Andreas Gruenbacher) [2109600] - gfs2: Instantiate glocks ouside of glock state engine (Andreas Gruenbacher) [2109600] - gfs2: Fix up gfs2_glock_async_wait (Andreas Gruenbacher) [2109600] - gfs2: Add GL_NOPID flag for process-independent glock holders (Andreas Gruenbacher) [2109600] - gfs2: dump inode object for iopen glocks (Bob Peterson) [2109600] - gfs2: convert to use DEFINE_SEQ_ATTRIBUTE macro (Andreas Gruenbacher) [2109600] - gfs2: Use TRY lock in gfs2_inode_lookup for UNLINKED inodes (Bob Peterson) [2109600] - Updated dist tag to el8_8 (Lucas Zampieri) - Revert "net/mlx5: Don't perform lookup after already known sec_path" (Amir Tzin) [2176349] - KVM: x86: do not report a vCPU as preempted outside instruction boundaries (Jon Maloy) [2124800] {CVE-2022-39189} - Drivers: vmbus: Check for channel allocation before looking up relids (Mohammed Gamal) [2178622] - drm/nouveau/fb/tu102-: fix register used to determine scrub status (Karol Herbst) [2168648] - drm/nouveau/devinit/tu102-: wait for GFW_BOOT_PROGRESS == COMPLETED (Karol Herbst) [2168648] - fs/proc: task_mmu.c: don't read mapcount for migration entry (Jay Shin) [2174623] - perf/core: Fix cgroup event list management (Michael Petlan) [2162525]- redhat: include all certs (Red Hat and CentOS) in the srpm (Denys Vlasenko) [2179095] - redhat: do not require grub2 on s390x (Denys Vlasenko) [2179095] - thermal: int340x: Add Meteor Lake PCI device ID (Prarit Bhargava) [2156822] - i2c: i801: Add support for Intel Meteor Lake-P (Prarit Bhargava) [2156841]- redhat: fix the signing failure on ppc64el on centos (Denys Vlasenko) [2179095]- redhat: add centos signing certs (Denys Vlasenko) - redhat: fix "make rh-brew" not choosing _scratch_ build (Denys Vlasenko) - mfd: intel-lpss: Add Intel Meteor Lake-P PCI IDs (Prarit Bhargava) [2156843] - x86/cpu: Add CPU model numbers for Meteor Lake (Prarit Bhargava) [2153936] - redhat: require grub2 >= 2.02-99 (Denys Vlasenko) [2179095] - redhat: delete unused script and file (Denys Vlasenko) [2179095] - redhat: drop certificates that were deprecated after GRUB's BootHole flaw (Denys Vlasenko) [2179095] - redhat: align file names with names of signing keys for ppc and s390 (Denys Vlasenko) [2179095]- net/tunnel: wait until all sk_user_data reader finish before releasing the sock (Hangbin Liu) [2176344] - powerpc/pseries: unregister VPA when hot unplugging a CPU (Mamatha Inamdar) [2143007] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2172474] - net: mana: Fix return type of mana_start_xmit() (Mohammed Gamal) [2172474] - net: mana: Define data structures for protection domain and memory registration (Mohammed Gamal) [2172474] - net: mana: Define and process GDMA response code GDMA_STATUS_MORE_ENTRIES (Mohammed Gamal) [2172474] - net: mana: Define max values for SGL entries (Mohammed Gamal) [2172474] - net: mana: Move header files to a common location (Mohammed Gamal) [2172474] - net: mana: Record port number in netdev (Mohammed Gamal) [2172474] - net: mana: Export Work Queue functions for use by RDMA driver (Mohammed Gamal) [2172474] - net: mana: Set the DMA device max segment size (Mohammed Gamal) [2172474] - net: mana: Handle vport sharing between devices (Mohammed Gamal) [2172474] - net: mana: Record the physical address for doorbell page region (Mohammed Gamal) [2172474] - net: mana: Add support for auxiliary device (Mohammed Gamal) [2172474] - hv_netvsc: Check status in SEND_RNDIS_PKT completion message (Mohammed Gamal) [2172438] - hv_netvsc: Allocate memory in netvsc_dma_map() with GFP_ATOMIC (Mohammed Gamal) [2172438] - hv_netvsc: Fix missed pagebuf entries in netvsc_dma_map/unmap() (Mohammed Gamal) [2172438] - Drivers: hv: Make remove callback of hyperv driver void returned (Mohammed Gamal) [2172438] - hv: fix comment typo in vmbus_channel/low_latency (Mohammed Gamal) [2172434] - x86/hyperv: Introduce HV_MAX_SPARSE_VCPU_BANKS/HV_VCPUS_PER_SPARSE_BANK constants (Mohammed Gamal) [2172434] - x86/hyperv: Fix hv_get/set_register for nested bringup (Mohammed Gamal) [2172434] - x86/hyperv: Add an interface to do nested hypercalls (Mohammed Gamal) [2172434] - Drivers: hv: Setup synic registers in case of nested root partition (Mohammed Gamal) [2172434] - x86/hyperv: Add support for detecting nested hypervisor (Mohammed Gamal) [2172434] - x86/hyperv: Add HV_EXPOSE_INVARIANT_TSC define (Mohammed Gamal) [2172434] - x86/hyperv: Expand definition of struct hv_vp_assist_page (Mohammed Gamal) [2172434] - KVM: x86: hyper-v: Expose support for extended gva ranges for flush hypercalls (Mohammed Gamal) [2172434] - x86/hyperv: Move VMCB enlightenment definitions to hyperv-tlfs.h (Mohammed Gamal) [2172434] - iommu/hyper-v: Allow hyperv irq remapping without x2apic (Mohammed Gamal) [2172434] - smp: Fix offline cpu check in flush_smp_call_function_queue() (Waiman Long) [2169471] - sched/fair: Trigger the update of blocked load on newly idle cpu (Waiman Long) [2169471] - redhat: rh-dist-git should depend on rh-srpm (Denys Vlasenko) - redhat: change kabi tarballs to use the package release (Denys Vlasenko) - redhat/Makefile: add variables used in rhel9 makefiles (Denys Vlasenko) - redhat/Makefile: Remove RHPRODUCT variable (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: expand sources from srpm (Denys Vlasenko) - redhat: remove GL_DISTGIT_USER, RHDISTGIT and unify dist-git cloning (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: Use Makefile variables (Denys Vlasenko) - redhat: fix typo and make the output more silent for dist-git sync (Denys Vlasenko) - redhat: add initial support for centos stream dist-git sync on Makefiles (Denys Vlasenko) - internal: update RHEL_MINOR for the start of RHEL-8.9 development (Denys Vlasenko) - watchdog: diag288_wdt: fix __diag288() inline assembly (Tobias Huschle) [2171361] - watchdog: diag288_wdt: do not use stack buffers for hardware data (Tobias Huschle) [2171361] - bonding: add documentation for peer_notif_delay (Ryosuke Yasuoka) [2171348] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878] - ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878]- ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- cpufreq: intel_pstate: Add Sapphire Rapids support in no-HWP mode (Prarit Bhargava) [2170564]- igb: Initialize mailbox message for VF reset (Corinna Vinschen) [2103948] - igb: Allocate MSI-X vector when testing (Corinna Vinschen) [2103948] - igb: Proactively round up to kmalloc bucket size (Corinna Vinschen) [2103948] - igb: Do not free q_vector unless new one was allocated (Corinna Vinschen) [2103948] - ptp: introduce helpers to adjust by scaled parts per million (Corinna Vinschen) [2103948] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Corinna Vinschen) [2103948] - net: ethernet: move from strlcpy with unused retval to strscpy (Corinna Vinschen) [2103948] - igb: convert .adjfreq to .adjfine (Corinna Vinschen) [2103948] - ASoC: Intel: soc-acpi: add configuration for variant of 0C11 product (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add configuration for variant of 0C40 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: use common helpers for all Realtek amps (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C11 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C4F product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C40 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C10 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw_rt1316: add BQ params for the Dell models (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw_rt1308: add BQ params for the Dell models (Jaroslav Kysela) [2100582] - ASoC: intel: sof_sdw: add rt1318 codec support. (Jaroslav Kysela) [2100582] - ASoC: rt1318: Add RT1318 SDCA vendor-specific driver (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: update codec addr on 0C11/0C4F product (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C11 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C40 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C10 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi-intel-rpl-match: add rpl_sdca_3_in_1 support (Jaroslav Kysela) [2100582]- net: ena: Update NUMA TPH hint register upon NUMA node update (Petr Oros) [2167316] - net: ena: Set default value for RX interrupt moderation (Petr Oros) [2167316] - net: ena: Fix rx_copybreak value update (Petr Oros) [2167316] - net: ena: Use bitmask to indicate packet redirection (Petr Oros) [2167316] - net: ena: Account for the number of processed bytes in XDP (Petr Oros) [2167316] - net: ena: Don't register memory info on XDP exchange (Petr Oros) [2167316] - net: ena: Fix toeplitz initial hash value (Petr Oros) [2167316] - net: ena: Fix error handling in ena_init() (Petr Oros) [2167316] - net: sched: disallow noqueue for qdisc classes (Xin Long) [2168282] {CVE-2022-47929} - net: sched: cbq: dont intepret cls results when asked to drop (Xin Long) [2168327] {CVE-2023-23454} - sctp: do not check hb_timer.expires when resetting hb_timer (Xin Long) [2133092] - arm64: Add AMPERE1 to the Spectre-BHB affected list (Mark Salter) [2140727] - net: mana: Fix accessing freed irq affinity_hint (Emanuele Giuseppe Esposito) [2168969] - net: mana: Assign interrupts to CPUs based on NUMA nodes (Emanuele Giuseppe Esposito) [2168969] - Revert "RDMA/irdma: Report the correct link speed" (Kamal Heib) [2143088] - Documentation/sysctl: document page_lock_unfairness (Nico Pache) [2165737] {CVE-2022-3623} - mm: allow a controlled amount of unfairness in the page lock (Nico Pache) [2165737] {CVE-2022-3623} - mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb page (Nico Pache) [2165737] {CVE-2022-3623} - mm/migration: fix potential pte_unmap on an not mapped pte (Nico Pache) [2165737] {CVE-2022-3623} - mm/migrate.c: rework migration_entry_wait() to not take a pageref (Nico Pache) [2165737] {CVE-2022-3623} - mm: make wait_on_page_writeback() wait for multiple pending writebacks (Nico Pache) [2165737] {CVE-2022-3623} - mm: rewrite wait_on_page_bit_common() logic (Nico Pache) [2165737] {CVE-2022-3623} - mm/gup.c: use is_vm_hugetlb_page() to check whether to follow huge (Nico Pache) [2165737] {CVE-2022-3623}- perf/x86/amd: Fix crash due to race between amd_pmu_enable_all, perf NMI and throttling (Michael Petlan) [2085282] - x86/perf: Fix snapshot_branch_stack warning in VM (Michael Petlan) [2085282] - perf/x86/amd/core: Fix reloading events for SVM (Michael Petlan) [2085282 2086722] - perf/x86/amd: Run AMD BRS code only on supported hw (Michael Petlan) [2085282] - perf/x86/amd: Fix AMD BRS period adjustment (Michael Petlan) [2085282] - perf/x86/amd: Remove unused variable 'hwc' (Michael Petlan) [2085282] - perf/ibs: Fix comment (Michael Petlan) [2085282] - perf report: Add tools/arch/x86/include/asm/amd-ibs.h (Michael Petlan) [2085282] - perf/amd/ibs: Advertise zen4_ibs_extensions as pmu capability attribute (Michael Petlan) [2085282] - perf/amd/ibs: Add support for L3 miss filtering (Michael Petlan) [2085282] - perf/amd/ibs: Use ->is_visible callback for dynamic attributes (Michael Petlan) [2085282] - perf/amd/ibs: Cascade pmu init functions' return value (Michael Petlan) [2085282] - perf/amd/ibs: Use interrupt regs ip for stack unwinding (Michael Petlan) [2085282] - perf/x86/amd/core: Add PerfMonV2 overflow handling (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Add PerfMonV2 counter control (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Detect available counters (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Detect PerfMonV2 support (Michael Petlan) [2085282 2086722] - x86/msr: Add PerfCntrGlobal* registers (Michael Petlan) [2085282 2086722] - x86/cpufeatures: Add PerfMonV2 feature bit (Michael Petlan) [2085282 2086722] - perf/x86: Unify format of events sysfs show (Michael Petlan) [2085282] - perf/x86/amd: Add idle hooks for branch sampling (Michael Petlan) [2085282] - perf: Enable branch record for software events (Michael Petlan) [2085282] - redhat/configs: Enable AMD Zen3 branch sampling by default (Michael Petlan) [2085282] - perf/x86/amd: Make Zen3 branch sampling opt-in (Michael Petlan) [2085282] - perf/x86/amd: Add AMD branch sampling period adjustment (Michael Petlan) [2085282] - perf/x86/amd: Enable branch sampling priv level filtering (Michael Petlan) [2085282] - perf/x86/amd: Add branch-brs helper event for Fam19h BRS (Michael Petlan) [2085282] - perf/x86/amd: Add AMD Fam19h Branch Sampling support (Michael Petlan) [2085282] - perf/x86/amd/ibs: Add bitfield definitions in new header (Michael Petlan) [2085282] - perf/amd/uncore: Allow the driver to be built as a module (Michael Petlan) [2085282] - perf/amd/uncore: Clean up header use, use module_list from nf_tables_exit_net() (Florian Westphal) [2134371] - netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain() (Florian Westphal) [2134371] - netfilter: nf_tables: do not leave chain stats enabled on error (Florian Westphal) [2134371] - ipvs: use explicitly signed chars (Florian Westphal) [2134371] - netfilter: nf_tables: release flow rule object from commit path (Florian Westphal) [2134371] - netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain() (Florian Westphal) [2134371] - netfilter: nf_tables: clean up hook list when offload flags check fails (Florian Westphal) [2134371] - netfilter: br_netfilter: Drop dst references before setting. (Florian Westphal) [2134371] - netfilter: nft_tproxy: restrict to prerouting hook (Florian Westphal) [2134371] - netfilter: ebtables: fix memory leak when blob is malformed (Florian Westphal) [2134371] - netfilter: ebtables: reject blobs that don't provide all entry points (Florian Westphal) [2134371] - netfilter: nf_tables: check NFT_SET_CONCAT flag if field_count is specified (Florian Westphal) [2134371] - netfilter: nf_tables: relax NFTA_SET_ELEM_KEY_END set flags requirements (Florian Westphal) [2134371] - netfilter: nf_tables: NFTA_SET_ELEM_KEY_END requires concat and interval flags (Florian Westphal) [2134371] - netfilter: nf_tables: validate NFTA_SET_ELEM_OBJREF based on NFT_SET_OBJECT flag (Florian Westphal) [2134371] - netfilter: nf_tables: possible module reference underflow in error path (Florian Westphal) [2134371] - netfilter: nf_tables: disallow NFTA_SET_ELEM_KEY_END with NFT_SET_ELEM_INTERVAL_END flag (Florian Westphal) [2134371] - netfilter: nf_tables: use READ_ONCE and WRITE_ONCE for shared generation id access (Florian Westphal) [2134371] - netfilter: nf_tables: fix null deref due to zeroed list head (Florian Westphal) [2134371]- bnxt_en: fix memory leak in bnxt_nvm_test() (Ken Cox) [2112186] - bnxt_en: Fix HDS and jumbo thresholds for RX packets (Ken Cox) [2112186] - bnxt_en: Fix first buffer size calculations for XDP multi-buffer (Ken Cox) [2112186] - bnxt_en: Fix XDP RX path (Ken Cox) [2112186] - bnxt_en: Simplify bnxt_xdp_buff_init() (Ken Cox) [2112186] - bnxt: prevent skb UAF after handing over to PTP worker (Ken Cox) [2112186] - bnxt_en: fix flags to check for supported fw version (Ken Cox) [2112186] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2112186] - bnxt_en: fix NQ resource accounting during vf creation on 57500 chips (Ken Cox) [2112186] - bnxt_en: set missing reload flag in devlink features (Ken Cox) [2112186] - bnxt_en: Use PAGE_SIZE to init buffer when multi buffer XDP is not in use (Ken Cox) [2112186] - bnxt_en: Remove duplicated include bnxt_devlink.c (Ken Cox) [2112186] - bnxt_en: implement callbacks for devlink selftests (Ken Cox) [2112186] - bnxt_en: Fix bnxt_refclk_read() (Ken Cox) [2112186] - bnxt_en: fix livepatch query (Ken Cox) [2112186] - bnxt_en: Fix bnxt_reinit_after_abort() code path (Ken Cox) [2112186] - bnxt_en: reclaim max resources if sriov enable fails (Ken Cox) [2112186] - bnxt: Use the bitmap API to allocate bitmaps (Ken Cox) [2112186] - bnxt: Fix typo in comments (Ken Cox) [2112186] - eth: bnxt: make ulp_id unsigned to make GCC 12 happy (Ken Cox) [2112186] - bnxt_en: Enable packet timestamping for all RX packets (Ken Cox) [2112186] - bnxt_en: Configure ptp filters during bnxt open (Ken Cox) [2112186] - bnxt_en: Update firmware interface to 1.10.2.95 (Ken Cox) [2112186] - bnxt: add page_pool support for aggregation ring when using xdp (Ken Cox) [2112186] - bnxt: change receive ring space parameters (Ken Cox) [2112186] - bnxt: rename bnxt_rx_pages to bnxt_rx_agg_pages_skb (Ken Cox) [2112186] - bnxt: refactor bnxt_rx_pages operate on skb_shared_info (Ken Cox) [2112186] - bnxt: add flag to denote that an xdp program is currently attached (Ken Cox) [2112186] - bnxt: refactor bnxt_rx_xdp to separate xdp_init_buff/xdp_prepare_buff (Ken Cox) [2112186] - bnxt: report header-data split state (Ken Cox) [2112186] - net: Don't include filter.h from net/sock.h (Ken Cox) [2112186] - ethernet: constify references to netdev->dev_addr in drivers (Ken Cox) [2112186] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2112186] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ken Cox) [2112186] - bnxt_en: Use struct_group_attr() for memcpy() region (Ken Cox) [2112186] - net: don't include ethtool.h from netdevice.h (Ken Cox) [2112186] - treewide: Use fallthrough pseudo-keyword (Ken Cox) [2112186] - net: Use skb_frag_off accessors (Ken Cox) [2112186] - net: Use skb accessors in network drivers (Ken Cox) [2112186] - ethernet: remove redundant memset (Ken Cox) [2112186] - treewide: Add SPDX license identifier - Makefile/Kconfig (Ken Cox) [2112186]- ASoC: amd: renoir: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [2169761] - ASoC: amd: renoir: Adjust the gain for PDM DMIC (Jaroslav Kysela) [2169761] - ASoC: amd: yc: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [2169761] - ASoC: amd: yc: Adjust the gain for PDM DMIC (Jaroslav Kysela) [2169761] - genirq: Fix reference leaks on irq affinity notifiers (Ricardo Robaina) [2154842] - genirq: Prevent use-after-free and work list corruption (Ricardo Robaina) [2154842] - perf/x86/uncore: Don't WARN_ON_ONCE() for a broken discovery table (Michael Petlan) [2154044] - perf/x86/uncore: Add a quirk for UPI on SPR (Michael Petlan) [2154044] - perf/x86/uncore: Ignore broken units in discovery table (Michael Petlan) [2154044] - perf/x86/uncore: Fix potential NULL pointer in uncore_get_alias_name (Michael Petlan) [2154044] - perf/x86/uncore: Factor out uncore_device_to_die() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Support extra IMC channel on Ice Lake server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix CAS_COUNT_WRITE issue for ICX (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix IIO event constraints for Snowridge (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix IIO event constraints for Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix filter_tid mask for CHA events on Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix Intel ICX IIO event constraints (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in __uncore_imc_init_box() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in snr_uncore_mmio_map() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in hswep_has_limit_sbox() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in sad_cfg_iio_topology() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Make set_mapping() procedure void (Michael Petlan) [2154044] - perf/x86/intel/uncore: Update sysfs-devices-mapping file (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Sapphire Rapids (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Icelake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Get UPI NodeID and GroupID (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Generalize get_topology() for SKX PMUs (Michael Petlan) [2154044] - perf/x86/intel/uncore: Disable I/O stacks to PMU mapping on ICX-D (Michael Petlan) [2154044] - perf/x86/intel/uncore: Clear attr_update properly (Michael Petlan) [2154044] - perf/x86/intel/uncore: Introduce UPI topology type (Michael Petlan) [2154044] - perf/x86/intel/uncore: Generalize IIO topology support (Michael Petlan) [2154044]- net/mlx4: Check retval of mlx4_bitmap_init (Amir Tzin) [2150787] - net/mlx4: Fix error check for dma_map_sg (Amir Tzin) [2150787] - net/mlx4_en: Fix wrong return value on ioctl EEPROM query failure (Amir Tzin) [2150787] - RDMA/mlx4: Avoid flush_scheduled_work() usage (Amir Tzin) [2150787] - net: mellanox: fix open-coded for_each_set_bit() (Amir Tzin) [2150787] - tracing: Add linear buckets to histogram logic (Jerome Marchand) [2161509] - configs/generic: enable CONFIG_RTC_SYSTOHC (Marcelo Tosatti) [2135417] - watchdog: fix UAF in reboot notifier handling in watchdog core code (Wander Lairson Costa) [2131308]- drm/i915/fbdev: do not create fbdev if HPD is suspended (Jocelyn Falempe) [2156006] - drm/i915/fbdev: suspend HPD before fbdev unregistration (Jocelyn Falempe) [2156006] - drm/i915/hpd: suspend MST at the end of intel_modeset_driver_remove (Jocelyn Falempe) [2156006] - drm/i915/gvt: fix vgpu debugfs clean in remove (Jocelyn Falempe) [2115903] - drm/i915/gvt: fix gvt debugfs destroy (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix kernel warning during topology setup (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: Enable Freesync Video Mode by default" (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix double release compute pasid (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix kfd_process_device_init_vm error handling (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix size validation for non-exclusive domains (v4) (Jocelyn Falempe) [2115903] - drm/i915/gvt: fix double free bug in split_2MB_gtt_entry (Jocelyn Falempe) [2115903] - drm/i915: unpin on error in intel_vgpu_shadow_mm_pin() (Jocelyn Falempe) [2115903] - drm/amd/pm: correct the fan speed retrieving in PWM for some SMU13 asics (Jocelyn Falempe) [2115903] - drm/amd/pm: bump SMU13.0.0 driver_if header to version 0x34 (Jocelyn Falempe) [2115903] - drm/amd/pm: add missing SMU13.0.7 mm_dpm feature mapping (Jocelyn Falempe) [2115903] - drm/amd/pm: add missing SMU13.0.0 mm_dpm feature mapping (Jocelyn Falempe) [2115903] - drm/i915/migrate: Account for the reserved_space (Jocelyn Falempe) [2115903] - drm/i915: improve the catch-all evict to handle lock contention (Jocelyn Falempe) [2115903] - drm/amdgpu: make display pinning more flexible (v2) (Jocelyn Falempe) [2115903] - drm/amdgpu: handle polaris10/11 overlap asics (v2) (Jocelyn Falempe) [2115903] - drm/amd/display: Add DCN314 display SG Support (Jocelyn Falempe) [2115903] - drm/i915/ttm: consider CCS for backup objects (Jocelyn Falempe) [2115903] - drm/i915/dsi: fix VBT send packet port selection for dual link DSI (Jocelyn Falempe) [2115903] - drm/vmwgfx: Validate the box size for the snooped cursor (Jocelyn Falempe) [2115903] - drm/connector: send hotplug uevent on connector cleanup (Jocelyn Falempe) [2115903] - drm/amdgpu: fix mmhub register base coding error (Jocelyn Falempe) [2115903] - drm/amd/pm: correct SMU13.0.0 pstate profiling clock settings (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU13.0.0 reported maximum shader clock (Jocelyn Falempe) [2115903] - drm/amdgpu: skip MES for S0ix as well since it's part of GFX (Jocelyn Falempe) [2115903] - drm/amd/display: revert Disable DRR actions during state commit (Jocelyn Falempe) [2115903] - drm/amd/pm: avoid large variable on kernel stack (Jocelyn Falempe) [2115903] - drm/i915/display: Don't disable DDI/Transcoder when setting phy test pattern (Jocelyn Falempe) [2115903] - drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid() (Jocelyn Falempe) [2115903] - drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid() (Jocelyn Falempe) [2115903] - drm/amd/display: Fix DTBCLK disable requests and SRC_SEL programming (Jocelyn Falempe) [2115903] - drm/amd/display: Use the largest vready_offset in pipe group (Jocelyn Falempe) [2115903] - drm/amd/display: fix array index out of bound error in bios parser (Jocelyn Falempe) [2115903] - drm/amd/display: Workaround to increase phantom pipe vactive in pipesplit (Jocelyn Falempe) [2115903] - drm/sti: Use drm_mode_copy() (Jocelyn Falempe) [2115903] - drm/amd/display: Disable DRR actions during state commit (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix type of second parameter in odn_edit_dpm_table() callback (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix type of second parameter in trans_msg() callback (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: Limit max DSC target bpp for specific monitors" (Jocelyn Falempe) [2115903] - drm/edid: add a quirk for two LG monitors to get them to work on 10bpc (Jocelyn Falempe) [2115903] - drm/amd/display: prevent memory leak (Jocelyn Falempe) [2115903] - drm/i915/bios: fix a memory leak in generate_lfp_data_ptrs (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix memory leakage (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios() (Jocelyn Falempe) [2115903] - drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios() (Jocelyn Falempe) [2115903] - amdgpu/nv.c: Corrected typo in the video capabilities resolution (Jocelyn Falempe) [2115903] - drm/amd/pm/smu11: BACO is supported when it's in BACO state (Jocelyn Falempe) [2115903] - drm/tegra: Add missing clk_disable_unprepare() in tegra_dc_probe() (Jocelyn Falempe) [2115903] - drm/i915/guc: make default_lists const data (Jocelyn Falempe) [2115903] - drm/amdgpu: fix pci device refcount leak (Jocelyn Falempe) [2115903] - drm/fourcc: Fix vsub/hsub for Q410 and Q401 (Jocelyn Falempe) [2115903] - amdgpu/pm: prevent array underflow in vega20_odn_edit_dpm_table() (Jocelyn Falempe) [2115903] - drm/radeon: Add the missed acpi_put_table() to fix memory leak (Jocelyn Falempe) [2115903] - drm/ttm: fix undefined behavior in bit shift for TTM_TT_FLAG_PRIV_POPULATED (Jocelyn Falempe) [2115903] - drm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure (Jocelyn Falempe) [2115903] - drm/amd/display: wait for vblank during pipe programming (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix GuC error capture sizing estimation and reporting (Jocelyn Falempe) [2115903] - drm/i915/guc: Add error-capture init warnings when needed (Jocelyn Falempe) [2115903] - drm/i915/guc: Make GuC log sizes runtime configurable (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix capture size warning and bump the size (Jocelyn Falempe) [2115903] - drm/i915/guc: Add a helper for log buffer size (Jocelyn Falempe) [2115903] - drm/i915: Fix compute pre-emption w/a to apply to compute engines (Jocelyn Falempe) [2115903] - drm/i915/guc: Limit scheduling properties to avoid overflow (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Initialize AUX channel in it6505_i2c_probe (Jocelyn Falempe) [2115903] - drm/amdgpu/powerplay/psm: Fix memory leak in power state init (Jocelyn Falempe) [2115903] - drm/bridge: adv7533: remove dynamic lane switching from adv7533 bridge (Jocelyn Falempe) [2115903] - drm/atomic-helper: Don't allocate new plane state in CRTC check (Jocelyn Falempe) [2115903] - drm/amdgpu/vcn: update vcn4 fw shared data structure (Jocelyn Falempe) [2115903] - drm: bridge: dw_hdmi: fix preference of RGB modes over YUV420 (Jocelyn Falempe) [2115903] - drm/bridge: ti-sn65dsi86: Fix output polarity setting bug (Jocelyn Falempe) [2115903] - drm/vmwgfx: Fix race issue calling pin_user_pages (Jocelyn Falempe) [2115903] - drm/shmem-helper: Avoid vm_open error paths (Jocelyn Falempe) [2115903] - drm/shmem-helper: Remove errant put in error path (Jocelyn Falempe) [2115903] - drm/amd/display: fix array index out of bound error in DCN32 DML (Jocelyn Falempe) [2115903] - drm/amdgpu/sdma_v4_0: turn off SDMA ring buffer in the s2idle suspend (Jocelyn Falempe) [2115903] - drm/vmwgfx: Don't use screen objects when SEV is active (Jocelyn Falempe) [2115903] - drm/amdgpu: fix use-after-free during gpu recovery (Jocelyn Falempe) [2115903] - drm/amd/display: Use new num clk levels struct for max mclk index (Jocelyn Falempe) [2115903] - drm/amd/display: Avoid setting pixel rate divider to N/A (Jocelyn Falempe) [2115903] - drm/amd/display: Use viewport height for subvp mall allocation size (Jocelyn Falempe) [2115903] - drm/i915: Remove non-existent pipes from bigjoiner pipe mask (Jocelyn Falempe) [2115903] - drm/i915: Never return 0 if not all requests retired (Jocelyn Falempe) [2115903] - drm/i915: Fix negative value passed as remaining time (Jocelyn Falempe) [2115903] - drm/amdgpu: enable Vangogh VCN indirect sram mode (Jocelyn Falempe) [2115903] - drm/amdgpu: temporarily disable broken Clang builds due to blown stack-frame (Jocelyn Falempe) [2115903] - drm/amd/pm: update driver if header for smu_13_0_7 (Jocelyn Falempe) [2115903] - drm/amd/pm: update driver-if header for smu_v13_0_10 (Jocelyn Falempe) [2115903] - drm/amd/pm: add smu_v13_0_10 driver if version (Jocelyn Falempe) [2115903] - drm/amdgpu: fix userptr HMM range handling v2 (Jocelyn Falempe) [2115903] - drm/amdgpu: cleanup error handling in amdgpu_cs_parser_bos (Jocelyn Falempe) [2115903] - drm/amdgpu: move setting the job resources (Jocelyn Falempe) [2115903] - drm/amdgpu: Partially revert "drm/amdgpu: update drm_display_info correctly when the edid is read" (Jocelyn Falempe) [2115903] - drm/amdgpu: always register an MMU notifier for userptr (Jocelyn Falempe) [2115903] - drm/amd/display: Update soc bounding box for dcn32/dcn321 (Jocelyn Falempe) [2115903] - drm/amd/amdgpu: reserve vm invalidation engine for firmware (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable Aldebaran devices to report CU Occupancy (Jocelyn Falempe) [2115903] - drm/amdgpu/psp: don't free PSP buffers on suspend (Jocelyn Falempe) [2115903] - drm/amd/display: No display after resume from WB/CB (Jocelyn Falempe) [2115903] - drm/amd/dc/dce120: Fix audio register mapping, stop triggering KASAN (Jocelyn Falempe) [2115903] - drm/display/dp_mst: Fix drm_dp_mst_add_affected_dsc_crtcs() return code (Jocelyn Falempe) [2115903] - drm/i915/ttm: never purge busy objects (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix a memory limit issue (Jocelyn Falempe) [2115903] - drm/amdgpu: disable BACO support on more cards (Jocelyn Falempe) [2115903] - drm/amd/display: use uclk pstate latency for fw assisted mclk validation dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix calculation for cursor CAB allocation (Jocelyn Falempe) [2115903] - drm/amd/display: Update MALL SS NumWays calculation (Jocelyn Falempe) [2115903] - drm/amd/display: Add debug option for allocating extra way for cursor (Jocelyn Falempe) [2115903] - drm/amd/display: Added debug option for forcing subvp num ways (Jocelyn Falempe) [2115903] - drm/amdkfd: update GFX11 CWSR trap handler (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable SA software trap. (Jocelyn Falempe) [2115903] - dma-buf: Use dma_fence_unwrap_for_each when importing fences (Jocelyn Falempe) [2115903] - dma-buf: fix racing conflict of dma_heap_add() (Jocelyn Falempe) [2115903] - drm/i915: Fix warn in intel_display_power_*_domain() functions (Jocelyn Falempe) [2115903] - drm/amd/display: only fill dirty rectangles when PSR is enabled (Jocelyn Falempe) [2115903] - drm/amdgpu: Drop eviction lock when allocating PT BO (Jocelyn Falempe) [2115903] - Revert "drm/amdgpu: Revert "drm/amdgpu: getting fan speed pwm for vega10 properly"" (Jocelyn Falempe) [2115903] - drm/amd/display: Fix gpio port mapping issue (Jocelyn Falempe) [2115903] - drm/amd/display: Fix FCLK deviation and tool compile issues (Jocelyn Falempe) [2115903] - drm/amd/display: Zeromem mypipe heap struct before using it (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Acer Switch V 10 (SW5-017) (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Nanote UMPC-01 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix prefetch calculations for dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: don't enable DRM CRTC degamma property for DCE (Jocelyn Falempe) [2115903] - drm/amd/display: Fix optc2_configure warning on dcn314 (Jocelyn Falempe) [2115903] - drm/amd/display: Support parsing VRAM info v3.0 from VBIOS (Jocelyn Falempe) [2115903] - drm/amd/display: Fix access timeout to DPIA AUX at boot time (Jocelyn Falempe) [2115903] - drm/amd/display: Add HUBP surface flip interrupt handler (Jocelyn Falempe) [2115903] - drm/amd/display: Fix invalid DPIA AUX reply causing system hang (Jocelyn Falempe) [2115903] - drm/display: Don't assume dual mode adaptors support i2c sub-addressing (Jocelyn Falempe) [2115903] - drm/amd/pm: fix SMU13 runpm hang due to unintentional workaround (Jocelyn Falempe) [2115903] - drm/amd/pm: enable runpm support over BACO for SMU13.0.0 (Jocelyn Falempe) [2115903] - drm/amd/pm: enable runpm support over BACO for SMU13.0.7 (Jocelyn Falempe) [2115903] - drm: Fix potential null-ptr-deref in drm_vblank_destroy_worker() (Jocelyn Falempe) [2115903] - drm/drv: Fix potential memory leak in drm_dev_init() (Jocelyn Falempe) [2115903] - drm/panel: simple: set bpc field for logic technologies displays (Jocelyn Falempe) [2115903] - drm/amd/display: Investigate tool reported FCLK P-state deviations (Jocelyn Falempe) [2115903] - drm/amd/display: Round up DST_after_scaler to nearest int (Jocelyn Falempe) [2115903] - drm/amd/display: Use forced DSC bpp in DML (Jocelyn Falempe) [2115903] - drm/amd/display: Fix DCN32 DSC delay calculation (Jocelyn Falempe) [2115903] - drm/amd: Fail the suspend if resources can't be evicted (Jocelyn Falempe) [2115903] - drm/amdgpu: set fb_modifiers_not_supported in vkms (Jocelyn Falempe) [2115903] - drm/amd/display: Enable timing sync on DCN32 (Jocelyn Falempe) [2115903] - drm/amd/display: Ignore Cable ID Feature (Jocelyn Falempe) [2115903] - drm/imx: imx-tve: Fix return type of imx_tve_connector_mode_valid (Jocelyn Falempe) [2115903] - drm/scheduler: fix fence ref counting (Jocelyn Falempe) [2115903] - drm/amd/display: Don't return false if no stream (Jocelyn Falempe) [2115903] - drm/amd/display: Remove wrong pipe control lock (Jocelyn Falempe) [2115903] - drm/amdgpu: Adjust MES polling timeout for sriov (Jocelyn Falempe) [2115903] - drm/amdkfd: Migrate in CPU page fault use current mm (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix error handling in kfd_criu_restore_events (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix error handling in criu_checkpoint (Jocelyn Falempe) [2115903] - drm/amdgpu: disable BACO on special BEIGE_GOBY card (Jocelyn Falempe) [2115903] - drm/amdgpu: workaround for TLB seq race (Jocelyn Falempe) [2115903] - drm/amd/display: Update SR watermarks for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU IP v13.0.4 msg interface header (Jocelyn Falempe) [2115903] - drm/amd/display: Fix reg timeout in enc314_enable_fifo (Jocelyn Falempe) [2115903] - drm/i915/dmabuf: fix sg_table handling in map_dma_buf (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix the lpfn checking condition in drm buddy (Jocelyn Falempe) [2115903] - drm/i915: Do not set cache_dirty for DGFX (Jocelyn Falempe) [2115903] - drm/i915/psr: Send update also on invalidate (Jocelyn Falempe) [2115903] - drm/vc4: Fix missing platform_unregister_drivers() call in vc4_drm_register() (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix NULL pointer dereference in svm_migrate_to_ram() (Jocelyn Falempe) [2115903] - drm/amdkfd: handle CPU fault on COW mapping (Jocelyn Falempe) [2115903] - drm/amd/display: Set memclk levels to be at least 1 for dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: Limit dcn32 to 1950Mhz display clock (Jocelyn Falempe) [2115903] - drm/amd/display: Acquire FCLK DPM levels on DCN32 (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Grab mode_config.mutex during LVDS init to avoid WARNs (Jocelyn Falempe) [2115903] - drm/i915: Simplify intel_panel_add_edid_alt_fixed_modes() (Jocelyn Falempe) [2115903] - drm/i915: Allow more varied alternate fixed modes for panels (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Setup DDC fully before output init (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Filter out invalid outputs more sensibly (Jocelyn Falempe) [2115903] - drm/amd/display: Update DSC capabilitie for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/display: Update latencies on DCN321 (Jocelyn Falempe) [2115903] - drm/amdgpu: disable GFXOFF during compute for GFX11 (Jocelyn Falempe) [2115903] - drm/i915: stop abusing swiotlb_max_segment (Jocelyn Falempe) [2115903] - drm/rockchip: fix fbdev on non-IOMMU devices (Jocelyn Falempe) [2115903] - drm/rockchip: dw_hdmi: filter regulator -EPROBE_DEFER error messages (Jocelyn Falempe) [2115903] - drm/amdgpu: dequeue mes scheduler during fini (Jocelyn Falempe) [2115903] - drm/amdgpu: Program GC registers through RLCG interface in gfx_v11/gmc_v11 (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix type of reset_type parameter in hqd_destroy() callback (Jocelyn Falempe) [2115903] - drm/amd/pm: skip loading pptable from driver on secure board for smu_v13_0_10 (Jocelyn Falempe) [2115903] - drm/amdgpu: set vm_update_mode=0 as default for Sienna Cichlid in SRIOV case (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix memory leak in kfd_mem_dmamap_userptr() (Jocelyn Falempe) [2115903] - drm/i915/dp: Reset frl trained flag before restarting FRL training (Jocelyn Falempe) [2115903] - drm/i915/dgfx: Keep PCI autosuspend control 'on' by default on all dGPU (Jocelyn Falempe) [2115903] - drm/bridge: ps8640: Add back the 50 ms mystery delay after HPD (Jocelyn Falempe) [2115903] - drm/msm: Fix return type of mdp4_lvds_connector_mode_valid (Jocelyn Falempe) [2115903] - drm/msm/hdmi: fix memory corruption with too many bridges (Jocelyn Falempe) [2115903] - drm/msm/dsi: fix memory corruption with too many bridges (Jocelyn Falempe) [2115903] - drm/amdkfd: correct the cache info for gfx1036 (Jocelyn Falempe) [2115903] - drm/amdkfd: update gfx1037 Lx cache setting (Jocelyn Falempe) [2115903] - drm/amd/display: Revert logic for plane modifiers (Jocelyn Falempe) [2115903] - drm/amdgpu: fix pstate setting issue (Jocelyn Falempe) [2115903] - drm/amdgpu: disallow gfxoff until GC IP blocks complete s2idle resume (Jocelyn Falempe) [2115903] - drm/amdgpu: Remove ATC L2 access for MMHUB 2.1.x (Jocelyn Falempe) [2115903] - drm/i915: Extend Wa_1607297627 to Alderlake-P (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix for BO move issue (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix VRAM BO swap issue (Jocelyn Falempe) [2115903] - drm/vc4: Add module dependency on hdmi-codec (Jocelyn Falempe) [2115903] - drm/amdgpu: fix sdma doorbell init ordering on APUs (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU IP v13.0.4 driver interface version (Jocelyn Falempe) [2115903] - drm/amd/pm: fulfill SMU13.0.0 cstate control interface (Jocelyn Falempe) [2115903] - drm/amd/pm: disable cstate feature for gpu reset scenario (Jocelyn Falempe) [2115903] - drm/amd/pm: add SMU IP v13.0.4 IF version define to V7 (Jocelyn Falempe) [2115903] - drm/amd/pm: fulfill SMU13.0.7 cstate control interface (Jocelyn Falempe) [2115903] - drm/i915/bios: Use hardcoded fp_timing size for generating LFP data pointers (Jocelyn Falempe) [2115903] - drm/i915/bios: Validate fp_timing terminator presence (Jocelyn Falempe) [2115903] - drm/amd/display: Fix build breakage with CONFIG_DEBUG_FS=n (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: correct hostvm flag" (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix UBSAN shift-out-of-bounds warning (Jocelyn Falempe) [2115903] - drm/amd/display: polling vid stream status in hpo dp blank (Jocelyn Falempe) [2115903] - drm/amd/display: Remove interface for periodic interrupt 1 (Jocelyn Falempe) [2115903] - drm/dp: Don't rewrite link config when setting phy test pattern (Jocelyn Falempe) [2115903] - drm/amdgpu: fix initial connector audio value (Jocelyn Falempe) [2115903] - drm/amd/display: correct hostvm flag (Jocelyn Falempe) [2115903] - drm/amd/display: Fix urgent latency override for DCN32/DCN321 (Jocelyn Falempe) [2115903] - drm/amdgpu: SDMA update use unlocked iterator (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Aya Neo Air (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Anbernic Win600 (Jocelyn Falempe) [2115903] - drm/vc4: vec: Fix timings for VEC modes (Jocelyn Falempe) [2115903] - drm/admgpu: Skip CG/PG on SOC21 under SRIOV VF (Jocelyn Falempe) [2115903] - drm/amdgpu: Skip the program of MMMC_VM_AGP_* in SRIOV on MMHUB v3_0_0 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix variable dereferenced before check (Jocelyn Falempe) [2115903] - drm: bridge: dw_hdmi: only trigger hotplug event on link change (Jocelyn Falempe) [2115903] - drm/amd: fix potential memory leak (Jocelyn Falempe) [2115903] - udmabuf: Set ubuf->sg = NULL if the creation of sg table fails (Jocelyn Falempe) [2115903] - drm/amd/display: fix overflow on MIN_I64 definition (Jocelyn Falempe) [2115903] - gpu: lontium-lt9611: Fix NULL pointer dereference in lt9611_connector_init() (Jocelyn Falempe) [2115903] - drm: Prevent drm_copy_field() to attempt copying a NULL pointer (Jocelyn Falempe) [2115903] - drm: Use size_t type for len variable in drm_copy_field() (Jocelyn Falempe) [2115903] - drm/nouveau/nouveau_bo: fix potential memory leak in nouveau_bo_alloc() (Jocelyn Falempe) [2115903] - virtio-gpu: fix shift wrapping bug in virtio_gpu_fence_event_create() (Jocelyn Falempe) [2115903] - drm/vmwgfx: Fix memory leak in vmw_mksstat_add_ioctl() (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix memory leak in hpd_rx_irq_create_workqueue() (Jocelyn Falempe) [2115903] - drm/bochs: fix blanking (Jocelyn Falempe) [2115903] - drm/virtio: set fb_modifiers_not_supported (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Fix the order of DP_SET_POWER commands (Jocelyn Falempe) [2115903] - drm/bridge: megachips: Fix a null pointer dereference bug (Jocelyn Falempe) [2115903] - drm/amdgpu: add missing pci_disable_device() in amdgpu_pmops_runtime_resume() (Jocelyn Falempe) [2115903] - drm: fix drm_mipi_dbi build errors (Jocelyn Falempe) [2115903] - drm/panel: use 'select' for Ili9341 panel driver helpers (Jocelyn Falempe) [2115903] - drm/virtio: Fix same-context optimization (Jocelyn Falempe) [2115903] - drm/i915/dg2: Bump up CDCLK for DG2 (Jocelyn Falempe) [2115903] - drm/dp_mst: fix drm_dp_dpcd_read return value checks (Jocelyn Falempe) [2115903] - drm/format-helper: Fix test on big endian architectures (Jocelyn Falempe) [2115903] - drm/bridge: parade-ps8640: Fix regulator supply order (Jocelyn Falempe) [2115903] - drm/bridge: tc358767: Add of_node_put() when breaking out of loop (Jocelyn Falempe) [2115903] - drm/bridge: anx7625: Fix refcount bug in anx7625_parse_dt() (Jocelyn Falempe) [2115903] - drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Power on downstream device in .atomic_enable (Jocelyn Falempe) [2115903] - drm/mipi-dsi: Detach devices when removing the host (Jocelyn Falempe) [2115903] - drm/bridge: Avoid uninitialized variable warning (Jocelyn Falempe) [2115903] - drm: bridge: adv7511: unregister cec i2c device after cec adapter (Jocelyn Falempe) [2115903] - drm: bridge: adv7511: fix CEC power down control register offset (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable F32_WPTR_POLL_ENABLE in mqd (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable VCN PG on GC11_0_1 (Jocelyn Falempe) [2115903] - drm/amd/display: explicitly disable psr_feature_enable appropriately (Jocelyn Falempe) [2115903] - drm/amd/display: Add HUBP surface flip interrupt handler (Jocelyn Falempe) [2115903] - drm/amd/display: Fix vblank refcount in vrr transition (Jocelyn Falempe) [2115903] - drm/amd/display: Enable 2 to 1 ODM policy if supported (Jocelyn Falempe) [2115903] - drm/amd/display: Enable dpia support for dcn314 (Jocelyn Falempe) [2115903] - drm/amd/display: Validate DSC After Enable All New CRTCs (Jocelyn Falempe) [2115903] - drm/amd/display: zeromem mypipe heap struct before using it (Jocelyn Falempe) [2115903] - drm/amd/display: Update PMFW z-state interface for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix watermark calculation (Jocelyn Falempe) [2115903] - drm/i915: Fix display problems after resume (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix revocation of non-persistent contexts (Jocelyn Falempe) [2115903] - drm/i915/gt: Use i915_vm_put on ppgtt_create error paths (Jocelyn Falempe) [2115903] - drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table() (Jocelyn Falempe) [2115903] - drm/udl: Restore display mode on resume (Jocelyn Falempe) [2115903] - drm/virtio: Use appropriate atomic state in virtio_gpu_plane_cleanup_fb() (Jocelyn Falempe) [2115903] - drm/virtio: Unlock reservations on dma_resv_reserve_fences() error (Jocelyn Falempe) [2115903] - drm/virtio: Unlock reservations on virtio_gpu_object_shmem_init() error (Jocelyn Falempe) [2115903] - drm/virtio: Check whether transferred 2D BO is shmem (Jocelyn Falempe) [2115903] - Revert "drm/amdgpu: use dirty framebuffer helper" (Jocelyn Falempe) [2115903]- nvme: fix SRCU protection of nvme_ns_head list (Ewan D. Milne) [2113865] - perf vendor events power10: Fix hv-24x7 metric events (Mamatha Inamdar) [2149192] - perf tests: Fix 'perf probe' error log check in skip_if_no_debuginfo (Mamatha Inamdar) [2149192] - perf tests: Fix *probe_vfs_getname.sh test failures (Mamatha Inamdar) [2149192] - blk-cgroup: Optimize blkcg_rstat_flush() (Waiman Long) [2162173] - blk-cgroup: Return -ENOMEM directly in blkcg_css_alloc() error path (Waiman Long) [2162173] - blk-cgroup: factor out blkcg_iostat_update() (Waiman Long) [2162173] - mm/memcg: Free percpu stats memory of dying memcg's again (Waiman Long) [2162173] - memcg: sync flush only if periodic flush is delayed (Waiman Long) [2162173] - memcg: better bounds on the memcg stats updates (Waiman Long) [2162173] - memcg: unify memcg stat flushing (Waiman Long) [2162173] - memcg: flush stats only if updated (Waiman Long) [2162173] - memcg: flush lruvec stats in the refault (Waiman Long) [2162173] - memcg: infrastructure to flush memcg stats (Waiman Long) [2162173] - memcg: switch lruvec stats to rstat (Waiman Long) [2162173] - mm/memcg: Remove mem_cgroup_per_node from being kABI protected (Waiman Long) [2162173] - mm/memcg: Revert "Free percpu stats memory of dying memcg's" (Waiman Long) [2162173]- virt/sev-guest: Prevent IV reuse in the SNP guest driver (John Allen) [2087262] - virt/sev-guest: Add a MODULE_ALIAS (John Allen) [2087262] - virt/sev-guest: Remove unnecessary free in init_crypto() (John Allen) [2087262] - x86/sev: Don't use cc_platform_has() for early SEV-SNP calls (John Allen) [2087262] - x86/boot: Don't propagate uninitialized boot_params->cc_blob_address (John Allen) [2087262] - x86/idt: Rework IDT setup for boot CPU (John Allen) [2087262] - x86/cpu: Init AP exception handling from cpu_init_secondary() (John Allen) [2087262] - x86/idt: Cleanup trap_init() (John Allen) [2087262] - x86/idt: Annotate alloc_intr_gate() with __init (John Allen) [2087262] - redhat/configs: enable CONFIG_SEV_GUEST (John Allen) [2087262] - virt: sev-guest: Pass the appropriate argument type to iounmap() (John Allen) [2087262] - x86/compressed/64: Add identity mappings for setup_data entries (John Allen) [2087262] - x86/sev: Mark the code returning to user space as syscall gap (John Allen) [2087262] - x86/sev: Annotate stack change in the #VC handler (John Allen) [2087262] - x86/sev: Remove duplicated assignment to variable info (John Allen) [2087262] - x86/sev: Fix address space sparse warning (John Allen) [2087262] - x86/sev: Get the AP jump table address from secrets page (John Allen) [2087262] - x86/sev: Add missing __init annotations to SEV init routines (John Allen) [2087262] - virt: sevguest: Rename the sevguest dir and files to sev-guest (John Allen) [2087262] - virt: sevguest: Change driver name to reflect generic SEV support (John Allen) [2087262] - x86/boot: Put globals that are accessed early into the .data section (John Allen) [2087262] - x86/boot: Add an efi.h header for the decompressor (John Allen) [2087262] - virt: sevguest: Fix bool function returning negative value (John Allen) [2087262] - virt: sevguest: Fix return value check in alloc_shared_pages() (John Allen) [2087262] - x86/sev: Unroll string mmio with CC_ATTR_GUEST_UNROLL_STRING_IO (John Allen) [2087262] - x86/sev-es: Replace open-coded hlt-loop with sev_es_terminate() (John Allen) [2087262] - virt: sevguest: Add documentation for SEV-SNP CPUID Enforcement (John Allen) [2087262] - virt: sevguest: Add support to get extended report (John Allen) [2087262] - virt: sevguest: Add support to derive key (John Allen) [2087262] - virt: Add SEV-SNP guest driver (John Allen) [2087262] - x86/sev: Register SEV-SNP guest request platform device (John Allen) [2087262] - x86/sev: Provide support for SNP guest request NAEs (John Allen) [2087262] - x86/sev: Add a sev= cmdline option (John Allen) [2087262] - x86/sev: Use firmware-validated CPUID for SEV-SNP guests (John Allen) [2087262] - x86/sev: Add SEV-SNP feature detection/setup (John Allen) [2087262] - x86/sev: Check SME/SEV support in CPUID first (John Allen) [2087262] - x86/compressed/64: Add identity mapping for Confidential Computing blob (John Allen) [2087262] - x86/compressed: Export and rename add_identity_map() (John Allen) [2087262] - x86/compressed: Use firmware-validated CPUID leaves for SEV-SNP guests (John Allen) [2087262] - x86/compressed: Add SEV-SNP feature detection/setup (John Allen) [2087262] - x86/boot: Add a pointer to Confidential Computing blob in bootparams (John Allen) [2087262] - x86/boot: Preserve boot_params.secure_boot from sanitizing (John Allen) [2087262] - x86/boot: Fix boot regression caused by bootparam sanitizing (John Allen) [2087262] - x86/boot: Save fields explicitly, zero out everything else (John Allen) [2087262] - x86/compressed/64: Add support for SEV-SNP CPUID table in #VC handlers (John Allen) [2087262] - x86/sev: Move MSR-based VMGEXITs for CPUID to helper (John Allen) [2087262] - KVM: x86: Move lookup of indexed CPUID leafs to helper (John Allen) [2087262] - x86/boot: Add Confidential Computing type to setup_data (John Allen) [2087262] - x86/compressed/acpi: Move EFI kexec handling into common code (John Allen) [2087262] - x86/compressed/acpi: Move EFI vendor table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI config table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI system table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI detection to helper (John Allen) [2087262] - x86/head/64: Re-enable stack protection (John Allen) [2087262] - x86/sev: Use SEV-SNP AP creation to start secondary CPUs (John Allen) [2087262] - x86/apic/of: Fix CPU devicetree-node lookups (John Allen) [2087262] - x86/mm: Validate memory when changing the C-bit (John Allen) [2087262] - x86/kernel: Validate ROM memory before accessing when SEV-SNP is active (John Allen) [2087262] - x86/kernel: Mark the .bss..decrypted section as shared in the RMP table (John Allen) [2087262] - x86/sev: Add helper for validating pages in early enc attribute changes (John Allen) [2087262] - x86/sev: Register GHCB memory when SEV-SNP is active (John Allen) [2087262] - x86/compressed: Register GHCB memory when SEV-SNP is active (John Allen) [2087262] - x86/compressed: Add helper for validating pages in the decompression stage (John Allen) [2087262] - x86/sev: Check the VMPL level (John Allen) [2087262] - x86/sev: Add a helper for the PVALIDATE instruction (John Allen) [2087262] - x86/sev: Check SEV-SNP features support (John Allen) [2087262] - x86/mm: Extend cc_attr to include AMD SEV-SNP (John Allen) [2087262] - x86/sev: Detect/setup SEV/SME features earlier in boot (John Allen) [2087262] - x86/compressed/64: Detect/setup SEV/SME features earlier during boot (John Allen) [2087262] - x86/boot: Use MSR read/write helpers instead of inline assembly (John Allen) [2087262] - x86/boot: Introduce helpers for MSR reads/writes (John Allen) [2087262] - KVM: SVM: Update the SEV-ES save area mapping (John Allen) [2087262] - KVM: SVM: Create a separate mapping for the GHCB save area (John Allen) [2087262] - KVM: SVM: Create a separate mapping for the SEV-ES save area (John Allen) [2087262] - KVM: SVM: Define sev_features and VMPL field in the VMSA (John Allen) [2087262] - x86/sev: Remove do_early_exception() forward declarations (John Allen) [2087262] - x86/sev: Make the #VC exception stacks part of the default stacks storage (John Allen) [2087262] - x86: Increase exception stack sizes (John Allen) [2087262] - x86/head64: Carve out the guest encryption postprocessing into a helper (John Allen) [2087262] - x86/sev: Get rid of excessive use of defines (John Allen) [2087262] - x86/sev: Add defines for GHCB version 2 MSR protocol requests (John Allen) [2087262] - x86/sev: Make sure IRQs are disabled while GHCB is active (John Allen) [2087262] - x86/sev: Propagate #GP if getting linear instruction address failed (John Allen) [2087262] - x86/insn: Extend error reporting from insn_fetch_from_user[_inatomic]() (John Allen) [2087262] - x86/sev-es: Convert to insn_decode() (John Allen) [2087262] - x86/sev-es: Split vc_decode_insn() (John Allen) [2087262] - x86/insn-eval: Make 0 a valid RIP for insn_get_effective_ip() (John Allen) [2087262] - x86/sev: Fix error message in runtime #VC handler (John Allen) [2087262] - x86/sev-es: Optimize __sev_es_ist_enter() for better readability (John Allen) [2087262] - x86/sev: Do not require Hypervisor CPUID bit for SEV guests (John Allen) [2087262] - x86/boot/compressed/64: Cleanup exception handling before booting kernel (John Allen) [2087262] - x86/sev-es: Remove subtraction of res variable (John Allen) [2087262]- net: mlx5: eliminate anonymous module_init & module_exit (Amir Tzin) [2157750] - net/mlx5: E-switch, Fix switchdev mode after devlink reload (Amir Tzin) [2157750] - net/mlx5e: Set decap action based on attr for sample (Amir Tzin) [2157750] - net/mlx5e: QoS, Fix wrongfully setting parent_element_id on MODIFY_SCHEDULING_ELEMENT (Amir Tzin) [2157750] - net/mlx5: E-switch, Fix setting of reserved fields on MODIFY_SCHEDULING_ELEMENT (Amir Tzin) [2157750] - net/mlx5e: Avoid false lock dependency warning on tc_ht even more (Amir Tzin) [2157750] - net/mlx5: fix missing mutex_unlock in mlx5_fw_fatal_reporter_err_work() (Amir Tzin) [2157750] - net/mlx5: Fix ptp max frequency adjustment range (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Fix child PKEY interface stats on rx path (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Block PKEY interfaces with less rx queues than parent (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Block queue count configuration when sub interfaces are present (Amir Tzin) [2157750] - net/mlx5e: Verify dev is present for fix features ndo (Amir Tzin) [2157750] - net/mlx5: Fix command stats access after free (Amir Tzin) [2157750] - net/mlx5e: TC, Keep mod hdr actions after mod hdr alloc (Amir Tzin) [2157750] - net/mlx5: check attr pointer validity before dereferencing it (Amir Tzin) [2157750] - RDMA/mlx5: Fix validation of max_rd_atomic caps for DC (Amir Tzin) [2157750] - RDMA/mlx5: Fix mlx5_ib_get_hw_stats when used for device (Amir Tzin) [2157750] - net/mlx5e: Set geneve_tlv_option_0_exist when matching on geneve option (Amir Tzin) [2157750] - net/mlx5e: Fix hw mtu initializing at XDP SQ allocation (Amir Tzin) [2157750] - net/mlx5e: Always clear dest encap in neigh-update-del (Amir Tzin) [2157750] - net/mlx5e: CT: Fix ct debugfs folder name (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Don't allow CQE compression to be turned on by default (Amir Tzin) [2157750] - net/mlx5: Fix RoCE setting at HCA level (Amir Tzin) [2157750] - net/mlx5: Avoid recovery in probe flows (Amir Tzin) [2157750] - net/mlx5: Fix io_eq_size and event_eq_size params validation (Amir Tzin) [2157750] - net/mlx5: Add forgotten cleanup calls into mlx5_init_once() error path (Amir Tzin) [2157750] - net/mlx5: E-Switch, properly handle ingress tagged packets on VST (Amir Tzin) [2157750 2096109] - dm thin: Use last transaction's pmd->root when commit failed (Benjamin Marzinski) [2162537] - dm thin: resume even if in FAIL mode (Benjamin Marzinski) [2162537] - dm cache: set needs_check flag after aborting metadata (Benjamin Marzinski) [2162537] - dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort (Benjamin Marzinski) [2162537] - dm thin: Fix ABBA deadlock between shrink_slab and dm_pool_abort_metadata (Benjamin Marzinski) [2162537] - dm integrity: Fix UAF in dm_integrity_dtr() (Benjamin Marzinski) [2162537] - dm cache: Fix UAF in destroy() (Benjamin Marzinski) [2162537] - dm thin: Fix UAF in run_timer_softirq() (Benjamin Marzinski) [2162537] - dm integrity: clear the journal on suspend (Benjamin Marzinski) [2162537] - dm integrity: flush the journal on suspend (Benjamin Marzinski) [2162537] - dm bufio: Fix missing decrement of no_sleep_enabled if dm_bufio_client_create failed (Benjamin Marzinski) [2162537] - dm ioctl: fix misbehavior if list_versions races with module loading (Benjamin Marzinski) [2162537]- net: gso: fix panic on frag_list with mixed head alloc types (Jiri Benc) [2136229] - futex: Resend potentially swallowed owner death notification (Rafael Aquini) [2161526] - Bluetooth: L2CAP: Fix memory leak in vhci_write (Wander Lairson Costa) [2155872] {CVE-2022-3619} - net: Use this_cpu_inc() to increment net->core_stats (Antoine Tenart) [2152542] - vlan: fix memory leak in vlan_newlink() (Xin Long) [2051415] - vlan: move dev_put into vlan_dev_uninit (Xin Long) [2051415] - vlan: introduce vlan_dev_free_egress_priority (Xin Long) [2051415] - vlan: fix memory leak in vlan_dev_set_egress_priority (Xin Long) [2051415] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103956] - intel/ixgbevf:fix repeated words in comments (Ken Cox) [2103956] - intel: remove unused macros (Ken Cox) [2103956] - ixgbe: propagate XFRM offload state direction instead of flags (Ken Cox) [2103956] - ixgbevf: add disable link state (Ken Cox) [2103956] - ixgbevf: clean up some inconsistent indenting (Ken Cox) [2103956] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ken Cox) [2103956] - intel: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [2103956]- RDMA/siw: Always consume all skbuf data in sk_data_ready() upcall. (Kamal Heib) [2141420] - cifs: fix use-after-free caused by invalid pointer `hostname` (Ronnie Sahlberg) [2154172] - ceph: blocklist the kclient when receiving corrupted snap trace (Xiubo Li) [2162414] - ceph: move mount state enum to super.h (Xiubo Li) [2162414] - xfs: estimate post-merge refcounts correctly (Bill O'Donnell) [2161678] - xfs: hoist refcount record merge predicates (Bill O'Donnell) [2161678] - NFS: Fix revalidation of empty readdir pages (Benjamin Coddington) [2166364] - NFS: Don't deadlock when cookie hashes collide (Benjamin Coddington) [2166364] - locking/rwsem: Disable preemption in all down_read*() and up_read() code paths (Waiman Long) [2162139] - locking/rwsem: Prevent non-first waiter from spinning in down_write() slowpath (Waiman Long) [2162139] - locking/rwsem: Allow slowpath writer to ignore handoff bit if not set by first waiter (Waiman Long) [2162139] - locking/rwsem: Always try to wake waiters in out_nolock path (Waiman Long) [2162139] - locking/rwsem: No need to check for handoff bit if wait queue empty (Waiman Long) [2162139] - locking/rwsem: Make handoff bit handling more consistent (Waiman Long) [2162139] - dax: fix ENOMEM handling in grab_mapping_entry() (Andrey Albershteyn) [2128474] - crypto: ccp - Failure on re-initialization due to duplicate sysfs filename (Vladis Dronov) [2130714] - crypto: ccp - Avoid page allocation failure warning for SEV_GET_ID2 (Vladis Dronov) [2130714] - crypto: ccp - Add support for TEE for PCI ID 0x14CA (Vladis Dronov) [2130714] - crypto: ccp - Remove unused struct ccp_crypto_cpu (Vladis Dronov) [2130714] - crypto: ccp - Add __init/__exit annotations to module init/exit funcs (Vladis Dronov) [2130714] - i40e: Fix the inability to attach XDP program on downed interface (Ivan Vecera) [2121511] - mm, compaction: fix fast_isolate_around() to stay within boundaries (Daniel Vacek) [2149309]- aio: fix mremap after fork null-deref (Jeff Moyer) [2166088] - mm/hugetlb: use hugetlb_pte_stable in migration race check (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: fix race condition of uffd missing/minor handling (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: simplify the code when alloc_huge_page() failed in hugetlb_no_page() (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: pass the old pte entry value to hugetlb_no_page() (Rafael Aquini) [2158120] {CVE-2022-3522} - perf/arm-cmn: Add more bits to child node address offset field (Charles Mirabile) [2122267] - perf/arm-cmn: Decode CAL devices properly in debugfs (Charles Mirabile) [2122267] - perf/arm-cmn: Fix filter_sel lookup (Charles Mirabile) [2122267] - drivers/perf: arm_spe: Expose saturating counter to 16-bit (Charles Mirabile) [2122267] - perf/arm-cmn: Add CMN-700 support (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor occupancy filter selector (Charles Mirabile) [2122267] - perf/arm-cmn: Add CMN-650 support (Charles Mirabile) [2122267] - perf: check return value of armpmu_request_irq() (Charles Mirabile) [2122267] - arm_pmu: Validate single/group leader events (Charles Mirabile) [2122267] - perf: qcom_l2_pmu: fix an incorrect NULL check on list iterator (Charles Mirabile) [2122267] - drivers/perf: arm_pmu: Handle 47 bit counters (Charles Mirabile) [2122267] - perf/arm-cmn: Update watchpoint format (Charles Mirabile) [2122267] - perf/arm-cmn: Hide XP PUB events for CMN-600 (Charles Mirabile) [2122267] - perf: replace bitmap_weight with bitmap_empty where appropriate (Charles Mirabile) [2122267] - perf: Replace acpi_bus_get_device() (Charles Mirabile) [2122267] - perf/arm-cmn: Make arm_cmn_debugfs static (Charles Mirabile) [2122267] - perf/arm-ccn: Use platform_get_irq() to get the interrupt (Charles Mirabile) [2122267] - perf/smmuv3: Don't cast parameter in bit operations (Charles Mirabile) [2122267] - perf/smmuv3: Use msi_get_virq() (Charles Mirabile) [2122267] - perf/smmuv3: Synthesize IIDR from CoreSight ID registers (Charles Mirabile) [2122267] - perf/arm-cmn: Add debugfs topology info (Charles Mirabile) [2122267] - perf/arm-cmn: Add CI-700 Support (Charles Mirabile) [2122267] - perf/arm-cmn: Support new IP features (Charles Mirabile) [2122267] - devres: provide devm_krealloc() (Charles Mirabile) [2122267] - devres: move the size check from alloc_dr() into a separate function (Charles Mirabile) [2122267] - perf/arm-cmn: Demarcate CMN-600 specifics (Charles Mirabile) [2122267] - perf/arm-cmn: Move group validation data off-stack (Charles Mirabile) [2122267] - perf/arm-cmn: Optimise DTC counter accesses (Charles Mirabile) [2122267] - perf/arm-cmn: Optimise DTM counter reads (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor DTM handling (Charles Mirabile) [2122267] - perf/arm-cmn: Streamline node iteration (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor node ID handling (Charles Mirabile) [2122267] - perf/arm-cmn: Drop compile-test restriction (Charles Mirabile) [2122267] - perf/arm-cmn: Account for NUMA affinity (Charles Mirabile) [2122267] - perf/arm-cmn: Fix CPU hotplug unregistration (Charles Mirabile) [2122267] - drivers/perf: thunderx2_pmu: Change data in size tx2_uncore_event_update() (Charles Mirabile) [2122267] - perf: qcom_l2_pmu: move to use request_irq by IRQF_NO_AUTOEN flag (Charles Mirabile) [2122267] - arm_pmu: move to use request_irq by IRQF_NO_AUTOEN flag (Charles Mirabile) [2122267] - arm64: perf: Fix 64-bit event counter read truncation (Charles Mirabile) [2122267] - drivers/perf: Replace spin_lock_irqsave to spin_lock (Charles Mirabile) [2122267] - arm_pmu: arm64: Use NMIs for PMU (Charles Mirabile) [2122267] - arm_pmu: Introduce pmu_irq_ops (Charles Mirabile) [2122267] - arm64: perf: Defer irq_work to IPI_IRQ_WORK (Charles Mirabile) [2122267] - arm64: perf: Remove PMU locking (Charles Mirabile) [2122267] - arm64: perf: Avoid PMXEV* indirection (Charles Mirabile) [2122267] - arm64: perf: Add missing ISB in armv8pmu_enable_counter() (Charles Mirabile) [2122267] - perf: arm_spe: Remove unnecessary zero check on 'nr_pages' (Charles Mirabile) [2122267] - drivers/perf: arm_pmu_acpi: Fix incorrect checking of gicc pointer (Charles Mirabile) [2122267] - perf/smmuv3: Use platform_get_irq_optional() for wired interrupt (Charles Mirabile) [2122267]- wifi: rtw89: Add missing check for alloc_workqueue (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix potential leak in rtw89_append_probe_req_ie() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix initialization of rx->link and rx->link_sta (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Drop stations iterator where the iterator function may sleep (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: use proper statements in conditionals (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix MLO + AP_VLAN check (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix coverity uninit_use_in_call in mt76_connac2_reverse_frag0_hdr_trans() (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: Add checks for nla_nest_start() in nl80211_send_iface() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: Add missing __packed annotation of struct mt7921_clc (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: do not send firmware FW_FEATURE_NON_DL region (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix use after rcu_read_unlock in rtl8xxxu_bss_info_changed (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix physts IE page check (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix wrong power after multiple SAR set (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: Fix some error handling path in rtw89_core_sta_assoc() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: use u32_encode_bits() to fill MAC quota value (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix reporting of TX AGGR histogram (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix ifdef symbol name (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix firmware assert during bandwidth change for peer sta (Jose Ignacio Tornos Martinez) [2136125] - Revert "mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD" (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Turn on the rate control (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix warning in dma_free_coherent() of memory chunks while recovery (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: check link ID in auth/assoc continuation (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: fix null-ptr deref on failed assoc (Jose Ignacio Tornos Martinez) [2136125] - wifi: fix multi-link element subelement iteration (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix antenna signal are way off in monitor mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac8021: fix possible oob access in ieee80211_get_rate_duration (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: don't allow multi-BSSID in S1G (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix buffer overflow in elem comparison (Jose Ignacio Tornos Martinez) [2136125] - net: mhi: Fix memory leak in mhi_net_dellink() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix QCN9074 firmware boot on x86 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Set TWT Information Frame Disabled bit as 1 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Fix ack frame idr leak when mesh has no route (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix general-protection-fault in ieee80211_subif_start_xmit() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix debugfs attribute ps with rc table support (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Fix bitrates overflow issue (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix memory leak in query_regdb_file() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix memory free error when registering wiphy fail (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: silence a sparse RCU warning (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: use explicitly signed or unsigned types (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: mac: fix reading 16 bytes from a region of size 0 warning (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix rx checksum offload on mt7615/mt7915/mt7921 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix receiving LLC packets on mt7615/mt7915 (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: update hidden BSSes to avoid WARN_ON (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix crash in beacon protection for P2P-device (Jose Ignacio Tornos Martinez) [2136125 2134582] {CVE-2022-42722} - wifi: mac80211_hwsim: avoid mac80211 warning on bad rate (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: avoid nontransmitted BSS list corruption (Jose Ignacio Tornos Martinez) [2136125 2134511] {CVE-2022-42721} - wifi: cfg80211: fix BSS refcounting bugs (Jose Ignacio Tornos Martinez) [2136125 2134460] {CVE-2022-42720} - wifi: cfg80211: ensure length byte is present before access (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix MBSSID parsing use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211/mac80211: reject bad MBSSID elements (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans() (Jose Ignacio Tornos Martinez) [2136125 2134385] {CVE-2022-41674} - wifi: nl80211: Split memcpy() of struct nl80211_wowlan_tcp_data_token flexible array (Jose Ignacio Tornos Martinez) [2136125] - wifi: wext: use flex array destination for memcpy() (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix ieee80211_data_to_8023_exthdr handling of small packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: netdev compatible TX stop for iTXQ drivers (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix decap offload for stations on AP_VLAN interfaces (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: unlock on error in ieee80211_can_powered_addr_change() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: remove/avoid misleading prints (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix probe req HE capabilities access (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: do not drop packets smaller than the LLC-SNAP header on fast-rx (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix rate reporting / throughput regression on mt7915 and newer (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Improve rtl8xxxu_queue_select (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix AIFS written to REG_EDCA_*_PARAM (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Enable 40 MHz channel width (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852b: configure DLE mem (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: check DLE FIFO size with reserved size (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: correct register of report IMR (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: set power cut closed for 8852be (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: add to do PCI auto calibration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852b: implement chip_ops::{enable,disable}_bb_rf (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add DMA busy checking bits to chip info (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: define DMA channel mask to avoid unsupported channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: mask out unsupported TX channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: Track scan_cmd allocation size explicitly (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: Remove the call to "dtim_assoc" IOVAR (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: increase dcmd maximum buffer size (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: Support 89459 pcie (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: increase default max WOWL patterns to 16 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix deadlock during WoWLAN suspend (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Remove redundant ath11k_mac_drain_tx (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add spectral scan support for 160 MHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add support to get power save duration for each client (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix peer addition/deletion error on sta band migration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for enable/disable MSDU aggregation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: disable 26-tone RU HE TB PPDU transmissions (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for processing P2P power saving (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support WMM-PS in P2P GO mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: set wifi_role of P2P (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: send OFDM rate only in P2P mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support P2P (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: correctly set BBP register 86 for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set SoC wmac clock register (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set VGC gain for both chains of MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set correct TX_SW_CFG1 MAC register for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: fix HT20/HT40 bandwidth switch on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: move helper functions up in file (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add TX LOFT calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: don't run Rt5592 IQ calibration on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RXIQ calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RXDCOC calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add r calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RF self TXDC calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: move up and reuse busy wait functions (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add support for external PA on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add throughput LED trigger (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: define RF5592 in init_eeprom routine (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix number of VHT beamformee spatial streams (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: retrieve MAC address from system firmware if provided (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: add get_txpower mac ops (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: move firmware stats out of debugfs (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: fix repeated the words in a comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: fix repeated to words in a comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: reset pointer after memory free to avoid potential use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix failed to find the peer with peer_id 0 when disconnected (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: change complete() to complete_all() for scan.completed (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: update coexistence to 6.3.0 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add logic to control BT scan priority (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: summarize Wi-Fi to BT scoreboard and inform BT one time a cycle (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: modify LNA2 setting to avoid BT destroyed Wi-Fi aggregation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add WL_S0 hardware TX/RX mask to allow WL_S0 TX/RX during GNT_BT (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 Wi-Fi firmware steps report (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 summary info to parse the traffic status from firmware (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: translate slot ID to readable name (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 cycle report to parsing Bluetooth A2DP status (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix array of flexible structures warnings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rndis_wlan: fix array of flexible structures warning (Jose Ignacio Tornos Martinez) [2136125] - mwifiex: fix sleep in atomic context bugs caused by dev_coredumpv (Jose Ignacio Tornos Martinez) [2136125] - bus: mhi: host: pci_generic: Add a secondary AT port to Telit FN990 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add WoW support for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Include STA_KEEPALIVE_ARP_RESPONSE TLV header by default (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: Fix "Error - Attempt to send packet over invalid queue 2" (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: add multi-port ID to TX descriptor (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix rx filter after scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: free unused skb to prevent memory leak (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: reset halt registers before turn on wifi CPU (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: update LTR settings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: set NAV upper to 25ms (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: initialize DMA of CMAC (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support SER L1 simulation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: support fw crash simulation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introudce functions to drop packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: unify use of rtw89_h2c_tx() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: concentrate control function of TX DMA channel (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct enable functions of HCI/PCI DMA (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: L1 DMA reset has offloaded to FW (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for setting TID specific configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for setting HE GI and LTF (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: show connecting state in debug message (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Combine set grant WL/BT and correct the debug log (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Remove trace_step at COEX-MECH control structure for RTL8852C (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Parsing Wi-Fi firmware TDMA info from reports (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Parsing Wi-Fi firmware error message from reports (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Move coexistence firmware buffer size parameter to chip info (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Add v1 Wi-Fi firmware power-saving null data report (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: use void pointer as temporal type to copy report (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4378 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Support PCIe core revisions >= 64 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: msgbuf: Increase RX ring sizes to 1024 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Allow platform to override macaddr (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Perform firmware selection for Apple platforms (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: of: Fetch Apple properties (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Read Apple OTP information (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Support passing in multiple board_types (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie/sdio/usb: Get CLM blob via standard firmware mechanism (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Handle per-board clm_blob files (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: d3: parse keys from wowlan info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: iterate over interfaces after an assert in d3 (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: trigger resume flow before wait for notifications (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add handling for scan offload match info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: enable resume based on notifications (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for d3 end notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for wowlan wake packet notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for wowlan info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: don't check D0I3 version (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: cfg: remove IWL_DEVICE_BZ_COMMON macro (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: refactor iwl_mvm_set_sta_rate() a bit (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: rxmq: further unify some VHT/HE code (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: rxmq: refactor mac80211 rx_status setting (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: fix typo in struct iwl_rx_no_data API (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: pcie: add support for BZ devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix kernel-doc issues (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix miscellaneous spelling errors (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: Fix miscellaneous spelling errors (Jose Ignacio Tornos Martinez) [2136125] - bus: mhi: host: always print detected modem name (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921s: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7663s: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix random fw download fail (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: introduce Country Location Control support (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix rmmod crash in driver reload test (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: reset msta->airtime_ac while clearing up hw value (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: do not check state before configuring implicit beamform (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix uninitialized pointer in mt7921_mac_fill_rx (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix mcs value in ht mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: get rid of the false positive reset (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: fix in comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: add PPDU based TxS support for WED device (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: move move mt76_sta_stats to mt76_wcid (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix the firmware version report (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_sta_set_decap_offload (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_[start, stop]_ap (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt76_usb.mt76u_mcu.burst is always false remove related code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7663s: add rx_check callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: fix possible unaligned access in mt76_connac_mcu_add_nested_tlv (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix possible unaligned access in mt7915_mac_add_twt_setup (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7615: add mt7615_mutex_acquire/release in mt7615_sta_set_decap_offload (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: fix transmitting packet hangs (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: add rx_check callback for sdio devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: delete stray if statement (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix use after free in mt7921_acpi_read() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix an uninitialized variable bug (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: poll sta stat when device transmits data (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: fix the deadlock caused by sdio->stat_work (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: move mt7921_rx_check and mt7921_queue_rx_skb in mac.c (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921u: remove unnecessary MT76_STATE_SUSPEND (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921u: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921s: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: add rx_check callback for usb devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: testmode: use random payload for tx packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: introduce mt76_connac_reg_map structure (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Remove copy-paste leftover in gen2_update_rate_mask (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: split scan including lots of channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: support hw_scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: call tx_wake notify for 8852c in deep ps mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support deep ps mode for rtw8852c (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: set response rate selection (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: set TX to single path TX on path B in 6GHz band (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: enlarge polling timeout of RX DCK (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: enable the interference cancellation of MU-MIMO on 6GHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add DIG register struct to share common algorithm (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support TX diversity for 1T2R chipset (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: record signal strength per RF path (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: configure TX path via H2C command (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: parse phycap of TX/RX antenna number (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: use u32_get_bits to access C2H content of PHY capability (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Increase TCL data ring size for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add multi TX ring support for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Enable threaded NAPI (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: mhi: fix potential memory leak in ath11k_mhi_register() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: implement SRAM dump debugfs interface (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Split PCI write/read functions (Jose Ignacio Tornos Martinez) [2136125] - ath11k: Enable remain-on-channel support on WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix endian annotations in casts (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix endian conversion (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: mark a variable unused (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix skb misuse in TX queue selection (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: remove redundant variable err (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: add 43439 SDIO ids and initialization (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Simplify the error handling code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: Fix comment typo (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Add DMI nvram filename quirk for Chuwi Hi8 Pro tablet (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Use ISO3166 country code and rev 0 as fallback on 43430 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix use-after-free bug in brcmf_netdev_start_xmit() (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: calib: Refactor iwl_calib_result usage for clarity (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: always activate all links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: implement link switching (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: keep A-MSDU data in sta and per-link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set up beacon timing config on links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add vif/sta link RCU dereference macros (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: send NDP for link (de)activation (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: extend ieee80211_nullfunc_get() for MLO (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: track active STA links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: skip inactive links on TX (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add ieee80211_find_sta_by_link_addrs API (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: isolate driver from inactive links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: make smps_mode per-link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use correct rx link_sta instead of default (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link_sta in reorder timeout (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix multi-channel handling in netlink RX (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: call drv_sta_state() under sdata_lock() in reconfig (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: add MLD address to assoc BSS entries (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: refactor QoS settings code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: warn on invalid link address (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix double SW scan stop (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: assign link address correctly (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: move link code to a new file (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: refactor RX a bit (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: check STA magic in change_sta_links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: remove unused arg to ieee80211_chandef_eht_oper (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: remove multicast workaround (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: remove redundant err variable (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Support POWERED_ADDR_CHANGE feature (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: Add POWERED_ADDR_CHANGE feature (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: prevent 4-addr use on MLDs (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: prevent VLANs on MLDs (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add support to connect to non-transmit MBSSID profiles (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix hardware restart failure due to twt debugfs failure (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add TWT debugfs support for STA interface (Jose Ignacio Tornos Martinez) [2136125] - wifi: move from strlcpy with unused retval to strscpy (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add missing destroy_workqueue() on error path in rtw_core_init() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: tighten bounds checking in rtl8xxxu_read_efuse() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: declare to support beamformee above bandwidth 80MHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct polling address of address CAM (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: no HTC field if TX rate might fallback to legacy (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: correct TX resource checking in low power mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: fix interrupt stuck after leaving low power mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: enlarge the CFO tracking boundary (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: correct suspend/resume setting for variant chips (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: enable CLK_REQ, ASPM, L1 and L1ss for 8852c (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: fix PCI PHY auto adaption by using software restore (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: set TBTT shift configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add retry to change power_mode state (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct BA CAM allocation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: initialize and correct BA CAM content (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: declare correct BA CAM number (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: update TX power tables to R49 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: update RF radio A/B parameters to R49 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: TX power limit/limit_ru consider negative (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Update Wi-Fi driver/firmware TDMA cycle report for RTL8852c (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add v1 Wi-Fi SCC coexistence policy (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Move _set_policy to chip_ops (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: update WL role info v1 for RTL8852C branch using (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add v1 version TDMA format and parameters (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Define BT B1 slot length (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add logic to parsing rtl8852c firmware type ctrl report (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Move Wi-Fi firmware coexistence matching version to chip (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: update radio state for RTL8852A/RTL8852C (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: adjust mactxen delay of mac/phy interface (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: modify PCIE prebkf time (Jose Ignacio Tornos Martinez) [2136125] - rtw89: ser: leave lps with mutex (Jose Ignacio Tornos Martinez) [2136125] - rtw89: declare support HE HTC always (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852a: update HW setting on BB (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: disable dma during mac init (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: declare support for mac80211 chanctx ops by chip (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add skeleton of mac80211 chanctx ops support (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introduce entity mode and its recalculated prototype (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: initialize entity and configure default chandef (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: concentrate chandef setting to stack callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: concentrate parameter control for setting channel callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: rfk: concentrate parameter control while set_channel() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: txpwr: concentrate channel related control to top (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: create rtw89_chan centrally to avoid breakage (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: re-arrange channel related stuffs under HAL (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introduce rtw89_chan for channel stuffs (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: rewrite decision on channel by entity state (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add cold boot calibration support on WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix incorrect QMI message ID mappings (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Register shutdown handler for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: avoid uninit memory read in ath9k_htc_rx_msg() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix potential deadlock in ieee80211_key_link() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix uninitialized use of primary channel index (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use full 'unsigned int' type (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: move from strlcpy with unused retval to strscpy (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: read ethtool's sta_stats from sinfo (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: correct SMPS mode in HE 6 GHz capability (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Add link_id to cfg80211_ch_switch_started_notify() (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: send MLO links channel info in GET_INTERFACE (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: allow bw change during channel switch in mesh (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: clean up a needless assignment in ieee80211_sta_activate_link() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: allow link address A2 in TXQ dequeue (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix control port frame addressing (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link ID in TX info for beacons (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix link change handling (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: maintain link_id in link_sta (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211/mac80211: check EHT capability size correctly (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: split iftype data into AP/non-AP (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: don't add empty EML capabilities (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use link ID for MLO in queued frames (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use the corresponding link for stats update (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add link information in ieee80211_rx_status (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: properly implement MLO key handling (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Add link_id parameter to various key operations for MLO (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Prevent cfg80211_wext_siwencodeext() on MLD (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: reject connect response with MLO params for WEP (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use link in TXQ parameter configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: add link id to txq params (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link BSSID (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: get correct AP link chandef (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Update RNR parsing to align with Draft P802.11be_D2.0 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: properly set old_links when removing a link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: accept STA changes without link changes (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: prohibit enter IPS during HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add flag check before enter or leave IPS (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add flushing queue before HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix WARNING:rtw_get_tx_power_params() during HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add the update channel flow to support setting by parameters (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add mutex when set regulatory and get Tx power table (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add mutex when set SAR (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Fix to add skb free for TIM update info when tx is completed (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Fix to add brcmf_clear_assoc_ies when rmmod (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix invalid address access when enabling SCAN log level (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix scheduling while atomic issue when deleting flowring (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix continuous 802.1x tx pending timeout error (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: add peer map clean up for peer delete in ath10k_sta_state() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: Set tx credit to one for WCN3990 snoc based devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852a: correct WDE IMR settings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: refine leaving LPS function (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtlwifi: 8192de: correct checking of IQK reload (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmsmac: remove duplicate words (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: access chip_info by const pointer (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: phy: fix warning of possible buffer overflow (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix store OP channel info timing when HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix stopping queues in wrong timing when HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: 8822c: extend supported probe request size (Jose Ignacio Tornos Martinez) [2136125]- ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF (Jaroslav Kysela) [2125548] {CVE-2023-0266} - ALSA: usb-audio: Remove redundant workaround for Roland quirk (Jaroslav Kysela) [2125548] - ASoC: jz4740-i2s: Handle independent FIFO flush bits (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops (Jaroslav Kysela) [2125548] - ALSA: patch_realtek: Fix Dell Inspiron Plus 16 (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: Static PCM mapping again with AMD HDMI codecs (Jaroslav Kysela) [2125548] - ALSA: line6: fix stack overflow in line6_midi_transmit (Jaroslav Kysela) [2125548] - ALSA: line6: correct midi status byte when receiving data from podxt (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: Add HP Device 0x8711 to force connect list (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for Lenovo TianYi510Pro-14IOB (Jaroslav Kysela) [2125548] - ALSA: usb-audio: add the quirk for KT0206 device (Jaroslav Kysela) [2125548] - ASoC: rt5670: Remove unbalanced pm_runtime_put() (Jaroslav Kysela) [2125548] - ASoC: rockchip: spdif: Add missing clk_disable_unprepare() in rk_spdif_runtime_resume() (Jaroslav Kysela) [2125548] - ASoC: wm8994: Fix potential deadlock (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: fix stream-id config keep-alive for rt suspend (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: set default audio parameters for KAE silent-stream (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: fix i915 silent stream programming flow (Jaroslav Kysela) [2125548] - ASoC: rockchip: pdm: Add missing clk_disable_unprepare() in rockchip_pdm_runtime_resume() (Jaroslav Kysela) [2125548] - ASoC: audio-graph-card: fix refcount leak of cpu_ep in __graph_for_each_link() (Jaroslav Kysela) [2125548] - ASoC: mediatek: mt8173-rt5650-rt5514: fix refcount leak in mt8173_rt5650_rt5514_dev_probe() (Jaroslav Kysela) [2125548] - ASoC: Intel: Skylake: Fix driver hang during shutdown (Jaroslav Kysela) [2125548] - ALSA: hda: add snd_hdac_stop_streams() helper (Jaroslav Kysela) [2125548] - ASoC: sof_es8336: fix possible use-after-free in sof_es8336_remove() (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Xiaomi Redmi Book Pro 14 2022 into DMI table (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Add quirk for KBL-R RVP platform (Jaroslav Kysela) [2125548] - ASoC: codecs: rt298: Add quirk for KBL-R RVP platform (Jaroslav Kysela) [2125548] - ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt (Jaroslav Kysela) [2125548] - ALSA: pcm: Set missing stop_operating flag at undoing trigger start (Jaroslav Kysela) [2125548] - ASoC: pcm512x: Fix PM disable depth imbalance in pcm512x_probe (Jaroslav Kysela) [2125548] - ALSA: asihpi: fix missing pci_disable_device() (Jaroslav Kysela) [2125548] - ASoC: mediatek: mtk-btcvsd: Add checks for write and read of mtk_btcvsd_snd (Jaroslav Kysela) [2125548] - ASoC: qcom: Add checks for devm_kcalloc (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Lock substream before snd_pcm_stop() (Jaroslav Kysela) [2125548] - ASoC: pxa: fix null-pointer dereference in filter() (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Fix potential RX buffer overflow (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Fix DMA mask assignment (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2125548] - ASoC: ops: Correct bounds check for second channel on SX controls (Jaroslav Kysela) [2125548] - ASoC: cs42l51: Correct PGA Volume minimum value (Jaroslav Kysela) [2125548] - ASoC: ops: Check bounds for second channel in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2125548] - ASoC: fsl_micfil: explicitly clear CHnF flags (Jaroslav Kysela) [2125548] - ASoC: fsl_micfil: explicitly clear software reset bit (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: More robust component matching for CS35L41 (Jaroslav Kysela) [2125548] - ASoC: soc-pcm: Add NULL check in BE reparenting (Jaroslav Kysela) [2125548] - ALSA: seq: Fix function prototype mismatch in snd_seq_expand_var_event (Jaroslav Kysela) [2125548] - ASoC: rt711-sdca: fix the latency time of clock stop prepare state machine transitions (Jaroslav Kysela) [2125548] - ASoC: wm8962: Wait for updated value of WM8962_CLOCKING1 register (Jaroslav Kysela) [2125548] - ASoC: ops: Fix bounds check for _sx controls (Jaroslav Kysela) [2125548] - ALSA: dice: fix regression for Lexicon I-ONIX FW810S (Jaroslav Kysela) [2125548] - ASoC: sof_es8336: reduce pop noise on speaker (Jaroslav Kysela) [2125548] - ASoC: SOF: ipc3-topology: use old pipeline teardown flow with SOF2.1 and older (Jaroslav Kysela) [2125548] - ASoC: hda: intel-dsp-config: add ES83x6 quirk for IceLake (Jaroslav Kysela) [2125548] - ASoC: Intel: soc-acpi: add ES83x6 support to IceLake (Jaroslav Kysela) [2125548] - ASoC: Intel: bytcht_es8316: Add quirk for the Nanote UMPC-01 (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Alienware m17 R5 AMD into DMI table (Jaroslav Kysela) [2125548] - ASoC: max98373: Add checks for devm_kcalloc (Jaroslav Kysela) [2125548] - ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open() (Jaroslav Kysela) [2125548] - ASoC: sgtl5000: Reset the CHIP_CLK_CTRL reg on remove (Jaroslav Kysela) [2125548] - ASoC: hdac_hda: fix hda pcm buffer overflow issue (Jaroslav Kysela) [2125548] - ALSA: usb-audio: add quirk to fix Hamedal C20 disconnect issue (Jaroslav Kysela) [2125548] - ASoC: SOF: topology: No need to assign core ID if token parsing failed (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book Pro 360 (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: fix speakers for Samsung Galaxy Book Pro (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Drop snd_BUG_ON() from snd_usbmidi_output_open() (Jaroslav Kysela) [2125548] - ASoC: soc-utils: Remove __exit for snd_soc_util_exit() (Jaroslav Kysela) [2125548] - ASoC: rt5677: fix legacy dai naming (Jaroslav Kysela) [2125548] - ASoC: rt5514: fix legacy dai naming (Jaroslav Kysela) [2125548] - ASoC: tas2764: Fix set_tdm_slot in case of single slot (Jaroslav Kysela) [2125548] - ASoC: tas2770: Fix set_tdm_slot in case of single slot (Jaroslav Kysela) [2125548] - ASoC: core: Fix use-after-free in snd_soc_exit() (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: Fix spelling mistake "Sourc" -> "Source", "Routee" -> "Route" (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Lenovo Thinkbook 14+ 2022 21D0 to quirks table (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Adding Lenovo ThinkBook 14 Gen 4+ ARA and Lenovo ThinkBook 16 Gen 4+ ARA to the Quirks List (Jaroslav Kysela) [2125548] - ASoC: rt1308-sdw: add the default value of some registers (Jaroslav Kysela) [2125548] - ASoC: Intel: sof_rt5682: Add quirk for Rex board (Jaroslav Kysela) [2125548] - ASoC: Intel: sof_sdw: add quirk variant for LAPBC710 NUC15 (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: fix capture selector naming (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: use right control for Capture Volume (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: fix reported volume for Master ctl (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: add missed Line In power control bit (Jaroslav Kysela) [2125548] - ASoC: wm8962: Add an event handler for TEMP_HP and TEMP_SPK (Jaroslav Kysela) [2125548] - ASoC: rt1019: Fix the TDM settings (Jaroslav Kysela) [2125548] - ASoC: rt5682s: Fix the TDM Tx settings (Jaroslav Kysela) [2125548] - ASoC: mt6660: Keep the pm_runtime enables before component stuff in mt6660_i2c_probe (Jaroslav Kysela) [2125548] - ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe" (Jaroslav Kysela) [2125548] - ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe" (Jaroslav Kysela) [2125548] - ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe" (Jaroslav Kysela) [2125548] - ALSA: memalloc: Try dma_alloc_noncontiguous() at first (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add DSD support for Accuphase DAC-60 (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirk entry for M-Audio Micro (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Yet more regression for for the delayed card registration (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add Positivo C6300 model quirk (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS Zenbook using CS35L41 (Jaroslav Kysela) [2125548] - ALSA: hda: fix potential memleak in 'add_widget_node' (Jaroslav Kysela) [2125548] - ALSA: hda/ca0132: add quirk for EVGA Z390 DARK (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi - enable runtime pm for more AMD display audio (Jaroslav Kysela) [2125548] - ALSA: memalloc: Don't fall back for SG-buffer with IOMMU (Jaroslav Kysela) [2125548] - ALSA: aoa: Fix I2S device accounting (Jaroslav Kysela) [2125548] - ALSA: aoa: i2sbus: fix possible memory leak in i2sbus_add_dev() (Jaroslav Kysela) [2125548] - ALSA: ac97: fix possible memory leak in snd_ac97_dev_register() (Jaroslav Kysela) [2125548] - ASoC: SOF: Intel: pci-tgl: fix ADL-N descriptor (Jaroslav Kysela) [2125548] - ASoC: SOF: Intel: pci-tgl: use RPL specific firmware definitions (Jaroslav Kysela) [2125548] - ASoC: Intel: common: add ACPI matching tables for Raptor Lake (Jaroslav Kysela) [2125548] - ALSA: rme9652: use explicitly signed char (Jaroslav Kysela) [2125548] - ALSA: au88x0: use explicitly signed char (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add another HP ZBook G9 model quirks (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirks for M-Audio Fast Track C400/600 (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS Zenbook using CS35L41 (Jaroslav Kysela) [2125548] - ALSA: Use del_timer_sync() before freeing timer (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix last interface check for registration (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Lenovo Yoga Slim 7 Pro X to quirks table (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add ASUS UM5302TA into DMI table (Jaroslav Kysela) [2125548] - ASoC: SOF: add quirk to override topology mclk_id (Jaroslav Kysela) [2125548] - ASoC: SOF: pci: Change DMI match info to support all Chrome platforms (Jaroslav Kysela) [2125548] - ALSA: intel-dspconfig: add ES8336 support for AlderLake-PS (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Register card at the last interface (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirk to enable Avid Mbox 3 support (Jaroslav Kysela) [2125548] - ASoC: mt6660: Fix PM disable depth imbalance in mt6660_i2c_probe (Jaroslav Kysela) [2125548] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2125548] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2125548] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2125548] - ASoC: stm: Fix PM disable depth imbalance in stm32_i2s_probe (Jaroslav Kysela) [2125548] - ASoC: stm32: spdifrx: Fix PM disable depth imbalance in stm32_spdifrx_probe (Jaroslav Kysela) [2125548] - ASoC: stm32: dfsdm: Fix PM disable depth imbalance in stm32_adfsdm_probe (Jaroslav Kysela) [2125548] - ALSA: dmaengine: increment buffer pointer atomically (Jaroslav Kysela) [2125548] - ASoC: da7219: Fix an error handling path in da7219_register_dai_clks() (Jaroslav Kysela) [2125548] - ASoC: eureka-tlv320: Hold reference returned from of_find_xxx API (Jaroslav Kysela) [2125548] - ASoC: wm_adsp: Handle optional legacy support (Jaroslav Kysela) [2125548] - ASoC: rsnd: Add check for rsnd_mod_power_on (Jaroslav Kysela) [2125548] - ASoC: soc-pcm.c: call __soc_pcm_close() in soc_pcm_close() (Jaroslav Kysela) [2125548] - ASoC: mt6359: fix tests for platform_get_irq() failure (Jaroslav Kysela) [2125548] - ASoC: wcd934x: fix order of Slimbus unprepare/disable (Jaroslav Kysela) [2125548] - ASoC: wcd9335: fix order of Slimbus unprepare/disable (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add Intel Reference SSID to support headset keys (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS GV601R laptop (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix NULL dererence at error path (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix potential memory leaks (Jaroslav Kysela) [2125548] - ALSA: rawmidi: Drop register_mutex in snd_rawmidi_free() (Jaroslav Kysela) [2125548] - ALSA: oss: Fix potential deadlock at unregistration (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for HP Zbook Firefly 14 G9 model (Jaroslav Kysela) [2125548] - ALSA: hda: Fix position reporting on Poulsbo (Jaroslav Kysela) [2125548]- KVM: x86: smm: preserve interrupt shadow in SMRAM (Maxim Levitsky) [2097144] - KVM: x86: SVM: don't save SVM state to SMRAM when VM is not long mode capable (Maxim Levitsky) [2097144] - KVM: x86: SVM: use smram structs (Maxim Levitsky) [2097144] - KVM: svm: drop explicit return value of kvm_vcpu_map (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram struct for 64 bit smram load/restore (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram struct for 32 bit smram load/restore (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram structs in the common code (Maxim Levitsky) [2097144] - KVM: x86: smm: add structs for KVM's smram layout (Maxim Levitsky) [2097144] - KVM: x86: smm: check for failures on smm entry (Maxim Levitsky) [2097144] - KVM: x86: do not go through ctxt->ops when emulating rsm (Maxim Levitsky) [2097144] - KVM: x86: move SMM exit to a new file (Maxim Levitsky) [2097144] - KVM: x86: move SMM entry to a new file (Maxim Levitsky) [2097144] - KVM: x86: start moving SMM-related functions to new files (Maxim Levitsky) [2097144] - bug: introduce ASSERT_STRUCT_OFFSET (Maxim Levitsky) [2097144] - KVM: x86: Rename and expose helper to detect if INIT/SIPI are allowed (Maxim Levitsky) [2097144] - KVM: x86: smm: number of GPRs in the SMRAM image depends on the image format (Maxim Levitsky) [2097144] - KVM: x86: emulator: update the emulation mode after CR0 write (Maxim Levitsky) [2097144] - KVM: x86: emulator: update the emulation mode after rsm (Maxim Levitsky) [2097144] - KVM: x86: emulator: introduce emulator_recalc_and_set_mode (Maxim Levitsky) [2097144] - KVM: x86: emulator: em_sysexit should update ctxt->mode (Maxim Levitsky) [2097144] - KVM: x86: Bug the VM if the emulator accesses a non-existent GPR (Maxim Levitsky) [2097144] - KVM: x86: Reduce the number of emulator GPRs to '8' for 32-bit KVM (Maxim Levitsky) [2097144] - KVM: x86: Use 16-bit fields to track dirty/valid emulator GPRs (Maxim Levitsky) [2097144] - KVM: x86: Omit VCPU_REGS_RIP from emulator's _regs array (Maxim Levitsky) [2097144] - KVM: x86: Harden _regs accesses to guard against buggy input (Maxim Levitsky) [2097144] - KVM: x86: Grab regs_dirty in local 'unsigned long' (Maxim Levitsky) [2097144]- RDMA/bnxt_re: Fix endianness warning for req.pkey (Kamal Heib) [2142690] - RDMA/bnxt_re: Use bitmap_zalloc() when applicable (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove dynamic pkey table (Kamal Heib) [2142690] - RDMA/bnxt_re: Scan the whole bitmap when checking if "disabling RCFW with pending cmd-bit" (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove unneeded variable (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove unsupported bnxt_re_modify_ah callback (Kamal Heib) [2142690] - RDMA/bnxt_re: Use helper function to set GUIDs (Kamal Heib) [2142690] - RDMA/bnxt_re: Check if the vlan is valid before reporting (Kamal Heib) [2142690] - RDMA/bnxt_re: Correct FRMR size calculation (Kamal Heib) [2142690] - RDMA/bnxt_re: Use GFP_KERNEL in non atomic context (Kamal Heib) [2142690] - RDMA/bnxt_re: Fix FRMR issue with single page MR allocation (Kamal Heib) [2142690] - RDMA/bnxt_re: Fix query SRQ failure (Kamal Heib) [2142690] - RDMA/bnxt_re: Suppress unwanted error messages (Kamal Heib) [2142690] - RDMA/bnxt_re: Support multiple page sizes (Kamal Heib) [2142690] - RDMA/bnxt_re: Reduce the delay in polling for hwrm command completion (Kamal Heib) [2142690] - RDMA/bnxt_re: Use separate response buffer for stat_ctx_free (Kamal Heib) [2142690] - net/mlx5: Lag, Fix for loop when checking lag (Amir Tzin) [2112917] - net/mlx5e: Fix use-after-free when reverting termination table (Amir Tzin) [2112927] - net/mlx5: Fix uninitialized variable bug in outlen_write() (Amir Tzin) [2112927] - net/mlx5: E-switch, Fix duplicate lag creation (Amir Tzin) [2112927 2112917] - net/mlx5: E-switch, Destroy legacy fdb table when needed (Amir Tzin) [2112927 2112917] - net/mlx5: DR, Fix uninitialized var warning (Amir Tzin) [2112927] - net/mlx5e: Offload rule only when all encaps are valid (Amir Tzin) [2112927] - net/mlx5: Fix sync reset event handler error flow (Amir Tzin) [2112927] - net/mlx5: E-Switch, Set correctly vport destination (Amir Tzin) [2112927] - net/mlx5: Fix handling of entry refcount when command is not issued to FW (Amir Tzin) [2112927] - net/mlx5: cmdif, Print info on any firmware cmd failure to tracepoint (Amir Tzin) [2112927] - net/mlx5: SF: Fix probing active SFs during driver probe phase (Amir Tzin) [2112927] - net/mlx5: Fix FW tracer timestamp calculation (Amir Tzin) [2112927] - net/mlx5: Do not query pci info while pci disabled (Amir Tzin) [2112927 2129249] - net/mlx5e: TC, Fix slab-out-of-bounds in parse_tc_actions (Amir Tzin) [2112927] - net/mlx5e: Clean up and fix error flows in mlx5e_alloc_rq (Amir Tzin) [2112927] - net/mlx5: DR, Fix the SMFS sync_steering for fast teardown (Amir Tzin) [2112927] - net/mlx5e: E-Switch, Fix comparing termination table instance (Amir Tzin) [2112927] - net/mlx5e: TC, Fix wrong rejection of packet-per-second policing (Amir Tzin) [2112927 2049622] - net/mlx5e: Fix tc acts array not to be dependent on enum order (Amir Tzin) [2112927] - net/mlx5e: Add missing sanity checks for max TX WQE size (Amir Tzin) [2112927] - net/mlx5: fw_reset: Don't try to load device in case PCI isn't working (Amir Tzin) [2112927] - net/mlx5: E-switch, Set to legacy mode if failed to change switchdev mode (Amir Tzin) [2112927 2112917] - net/mlx5: Allow async trigger completion execution on single CPU systems (Amir Tzin) [2112927] - net/mlx5: Bridge, verify LAG state when adding bond to bridge (Amir Tzin) [2112927] - net/mlx5: Fix crash during sync firmware reset (Amir Tzin) [2112927] - net/mlx5e: TC, Fix cloned flow attr instance dests are not zeroed (Amir Tzin) [2112927] - net/mlx5: Fix possible use-after-free in async command interface (Amir Tzin) [2112927] - net/mlx5: ASO, Create the ASO SQ with the correct timestamp format (Amir Tzin) [2112927 2049622] - net/mlx5e: Update restore chain id for slow path packets (Amir Tzin) [2112927] - net/mlx5e: Extend SKB room check to include PTP-SQ (Amir Tzin) [2112927] - net/mlx5: DR, Fix matcher disconnect error flow (Amir Tzin) [2112927] - net/mlx5: Wait for firmware to enable CRS before pci_restore_state (Amir Tzin) [2112927] - net/mlx5e: Do not increment ESN when updating IPsec ESN state (Amir Tzin) [2112927] - net/mlx5e: Fix calculations for ICOSQ size (Amir Tzin) [2112927] - net/mlx5: Fix spelling mistake "syndrom" -> "syndrome" (Amir Tzin) [2112927] - net/mlx5e: Fix a typo in mlx5e_xdp_mpwqe_is_full (Amir Tzin) [2112927] - RDMA/mlx5: Don't compare mkey tags in DEVX indirect mkey (Amir Tzin) [2112927] - RDMA/mlx5: Fix UMR cleanup on error flow of driver init (Amir Tzin) [2112927] - RDMA/mlx5: Rely on RoCE fw cap instead of devlink when setting profile (Amir Tzin) [2112927] - net/mlx5: Unlock on error in mlx5_sriov_enable() (Amir Tzin) [2112927] - net/mlx5e: Fix use after free in mlx5e_fs_init() (Amir Tzin) [2112927] - net/mlx5e: kTLS, Use _safe() iterator in mlx5e_tls_priv_tx_list_cleanup() (Amir Tzin) [2112927] - net/mlx5: unlock on error path in esw_vfs_changed_event_handler() (Amir Tzin) [2112927 2150647] - net/mlx5e: Fix wrong tc flag used when set hw-tc-offload off (Amir Tzin) [2112927] - net/mlx5e: TC, Add missing policer validation (Amir Tzin) [2112927] - net/mlx5e: Fix wrong application of the LRO state (Amir Tzin) [2112927] - net/mlx5: Avoid false positive lockdep warning by adding lock_class_key (Amir Tzin) [2112927] - net/mlx5: Fix cmd error logging for manage pages cmd (Amir Tzin) [2112927] - net/mlx5: Disable irq when locking lag_lock (Amir Tzin) [2112927] - net/mlx5: Eswitch, Fix forwarding decision to uplink (Amir Tzin) [2112927 2150647] - net/mlx5: LAG, fix logic over MLX5_LAG_FLAG_NDEVS_READY (Amir Tzin) [2112927] - net/mlx5e: Properly disable vlan strip on non-UL reps (Amir Tzin) [2112927] - net/mlx5e: Allocate flow steering storage during uplink initialization (Amir Tzin) [2112927] - RDMA/mlx5: Use the proper number of ports (Amir Tzin) [2112927] - mlx5: do not use RT_TOS for IPv6 flowlabel (Amir Tzin) [2112927] - RDMA/mlx5: Add missing check for return value in get namespace flow (Amir Tzin) [2112927] - net/mlx5e: xsk: Discard unaligned XSK frames on striding RQ (Amir Tzin) [2112927] - net: devlink: convert reload command to take implicit devlink->lock (mlx5 hunk only) (Amir Tzin) [2112927] - devlink: Hold the instance lock in health callbacks (mlx5 hunk only) (Amir Tzin) [2112927] - net/mlx5: Lock mlx5 devlink health recovery callback (Amir Tzin) [2112927] - net/mlx5: Lock mlx5 devlink reload callbacks (Amir Tzin) [2112927] - net/mlx5: Move fw reset unload to mlx5_fw_reset_complete_reload (Amir Tzin) [2112927] - net/mlx5e: kTLS, Dynamically re-size TX recycling pool (Amir Tzin) [2112927] - net/mlx5e: kTLS, Recycle objects of device-offloaded TLS TX connections (Amir Tzin) [2112927] - net/mlx5e: kTLS, Take stats out of OOO handler (Amir Tzin) [2112927] - net/mlx5e: kTLS, Introduce TLS-specific create TIS (Amir Tzin) [2112927] - net/mlx5e: Move mlx5e_init_l2_addr to en_main (Amir Tzin) [2112927] - net/mlx5e: Split en_fs ndo's and move to en_main (Amir Tzin) [2112927] - net/mlx5e: Separate mlx5e_set_rx_mode_work and move caller to en_main (Amir Tzin) [2112927] - net/mlx5e: Add mdev to flow_steering struct (Amir Tzin) [2112927] - net/mlx5e: Report flow steering errors with mdev err report API (Amir Tzin) [2112927] - net/mlx5e: Convert mlx5e_flow_steering member of mlx5e_priv to pointer (Amir Tzin) [2112927] - net/mlx5e: Allocate VLAN and TC for featured profiles only (Amir Tzin) [2112927] - net/mlx5e: Make mlx5e_tc_table private (Amir Tzin) [2112927] - net/mlx5e: Convert mlx5e_tc_table member of mlx5e_flow_steering to pointer (Amir Tzin) [2112927] - net/mlx5e: TC, Support tc action api for police (Amir Tzin) [2112927] - net/mlx5e: TC, Separate get/update/replace meter functions (Amir Tzin) [2112927] - net/mlx5e: Add red and green counters for metering (Amir Tzin) [2112927] - net/mlx5e: TC, Allocate post meter ft per rule (Amir Tzin) [2112927] - net/mlx5: DR, Add support for flow metering ASO (Amir Tzin) [2112927] - net/mlx5: Fix driver use of uninitialized timeout (Amir Tzin) [2112927] - net/mlx5: DR, Fix SMFS steering info dump format (Amir Tzin) [2112927] - net/mlx5: Adjust log_max_qp to be 18 at most (Amir Tzin) [2112927] - net/mlx5e: Modify slow path rules to go to slow fdb (Amir Tzin) [2112927 2150647] - net/mlx5e: Fix calculations related to max MPWQE size (Amir Tzin) [2112927] - net/mlx5e: xsk: Account for XSK RQ UMRs when calculating ICOSQ size (Amir Tzin) [2112927] - net/mlx5e: Fix the value of MLX5E_MAX_RQ_NUM_MTTS (Amir Tzin) [2112927] - net/mlx5e: TC, Fix post_act to not match on in_port metadata (Amir Tzin) [2112927] - net/mlx5e: Remove WARN_ON when trying to offload an unsupported TLS cipher/version (Amir Tzin) [2112927] - RDMA/mlx5: Rename the mkey cache variables and functions (Amir Tzin) [2112927] - RDMA/mlx5: Store in the cache mkeys instead of mrs (Amir Tzin) [2112927] - RDMA/mlx5: Store the number of in_use cache mkeys instead of total_mrs (Amir Tzin) [2112927] - RDMA/mlx5: Replace cache list with Xarray (Amir Tzin) [2112927] - RDMA/mlx5: Replace ent->lock with xa_lock (Amir Tzin) [2112927] - net/mlx5: CT: Remove warning of ignore_flow_level support for non PF (Amir Tzin) [2112927] - net/mlx5e: Add resiliency for PTP TX port timestamp (Amir Tzin) [2112927] - net/mlx5: Expose ts_cqe_metadata_size2wqe_counter (Amir Tzin) [2112927] - net/mlx5e: HTB, move htb functions to a new file (Amir Tzin) [2112927] - net/mlx5e: HTB, change functions name to follow convention (Amir Tzin) [2112927] - net/mlx5e: HTB, remove priv from htb function calls (Amir Tzin) [2112927] - net/mlx5e: HTB, hide and dynamically allocate mlx5e_htb structure (Amir Tzin) [2112927] - net/mlx5e: HTB, move stats and max_sqs to priv (Amir Tzin) [2112927] - net/mlx5e: HTB, move section comment to the right place (Amir Tzin) [2112927] - net/mlx5e: HTB, move ids to selq_params struct (Amir Tzin) [2112927] - net/mlx5e: HTB, reduce visibility of htb functions (Amir Tzin) [2112927] - net/mlx5e: Fix mqprio_rl handling on devlink reload (Amir Tzin) [2112927] - net/mlx5e: Report header-data split state through ethtool (Amir Tzin) [2112927] - RDMA/mlx5: Expose steering anchor to userspace (Amir Tzin) [2112927] - RDMA/mlx5: Refactor get flow table function (Amir Tzin) [2112927] - net/mlx5: fs, allow flow table creation with a UID (Amir Tzin) [2112927] - net/mlx5: fs, expose flow table ID to users (Amir Tzin) [2112927] - net/mlx5: Expose the ability to point to any UID from shared UID (Amir Tzin) [2112927] - net/mlx5e: Remove the duplicating check for striding RQ when enabling LRO (Amir Tzin) [2112927] - net/mlx5e: Move the LRO-XSK check to mlx5e_fix_features (Amir Tzin) [2112927] - net/mlx5e: Extend flower police validation (Amir Tzin) [2112927] - net/mlx5e: configure meter in flow action (Amir Tzin) [2112927 2150647 2049622] - net/mlx5e: Removed useless code in function (Amir Tzin) [2112927] - net/mlx5: Bridge, implement QinQ support (Amir Tzin) [2112927] - net/mlx5: Bridge, implement infrastructure for VLAN protocol change (Amir Tzin) [2112927] - net/mlx5: Bridge, extract VLAN push/pop actions creation (Amir Tzin) [2112927] - net/mlx5: Bridge, rename filter fg to vlan_filter (Amir Tzin) [2112927] - net/mlx5: Bridge, refactor groups sizes and indices (Amir Tzin) [2112927] - net/mlx5: debugfs, Add num of in-use FW command interface slots (Amir Tzin) [2112927] - net/mlx5: Expose vnic diagnostic counters for eswitch managed vports (Amir Tzin) [2112927 2150647 2049881] - net/mlx5: Use software VHCA id when it's supported (Amir Tzin) [2112927] - net/mlx5: Introduce ifc bits for using software vhca id (Amir Tzin) [2112927] - net/mlx5: Use the bitmap API to allocate bitmaps (Amir Tzin) [2112927] - devlink: Hold the instance lock in port_new / port_del callbacks (mlx5 hunks only) (Amir Tzin) [2112925] - net/mlx5: Remove devl_unlock from mlx5_devlink_eswitch_mode_set (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API in mlx5e_devlink_port_register (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API in mlx5_esw_devlink_sf_port_register (Amir Tzin) [2112927] - net/mlx5: Use devl_ API in mlx5_esw_offloads_devlink_port_register (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API for rate nodes destroy (Amir Tzin) [2112927 2150647] - net/mlx5: Remove devl_unlock from mlx5_eswtich_mode_callback_enter (Amir Tzin) [2112927 2150647] - net/mlx5: fix 32bit build (Amir Tzin) [2112927 2049622] - net/mlx5e: TC, Support offloading police action (Amir Tzin) [2112927 2049622] - net/mlx5e: Add flow_action to parse state (Amir Tzin) [2112927 2049622] - net/mlx5e: Add post meter table for flow metering (Amir Tzin) [2112927 2049622] - net/mlx5e: Add generic macros to use metadata register mapping (Amir Tzin) [2112927 2049622] - net/mlx5e: Get or put meter by the index of tc police action (Amir Tzin) [2112927 2049622] - net/mlx5e: Add support to modify hardware flow meter parameters (Amir Tzin) [2112927 2049622] - net/mlx5e: Prepare for flow meter offload if hardware supports it (Amir Tzin) [2112927 2049622] - net/mlx5: Implement interfaces to control ASO SQ and CQ (Amir Tzin) [2112927 2049622] - net/mlx5: Add support to create SQ and CQ for ASO (Amir Tzin) [2112927 2049622] - net/mlx5: E-switch: Change eswitch mode only via devlink command (Amir Tzin) [2112927 2150647 2112917] - net/mlx5: E-switch, Remove dependency between sriov and eswitch mode (Amir Tzin) [2112927 2150647 2112917] - net/mlx5: E-switch, Introduce flag to indicate if fdb table is created (Amir Tzin) [2112927 2112917] - net/mlx5: E-switch, Introduce flag to indicate if vport acl namespace is created (Amir Tzin) [2112927 2112917] - net/mlx5: delete dead code in mlx5_esw_unlock() (Amir Tzin) [2112927] - net/mlx5: Delete ipsec_fs header file as not used (Amir Tzin) [2112927] - net/mlx5: Add bits and fields to support enhanced CQE compression (Amir Tzin) [2112927] - net/mlx5: Remove not used MLX5_CAP_BITS_RW_MASK (Amir Tzin) [2112927] - net/mlx5: group fdb cleanup to single function (Amir Tzin) [2112927] - net/mlx5: Add support EXECUTE_ASO action for flow entry (Amir Tzin) [2112927 2049622] - net/mlx5: Add HW definitions of vport debug counters (Amir Tzin) [2112927] - net/mlx5: Add IFC bits and enums for flow meter (Amir Tzin) [2112927 2049622] - RDMA/mlx5: Support handling of modify-header pattern ICM area (Amir Tzin) [2112927] - net/mlx5: Manage ICM of type modify-header pattern (Amir Tzin) [2112927] - net/mlx5: Introduce header-modify-pattern ICM properties (Amir Tzin) [2112927] - RDMA/mlx5: Add a umr recovery flow (Amir Tzin) [2112927] - net/mlx5e: Ring the TX doorbell on DMA errors (Amir Tzin) [2112925] - net/mlx5e: Fix capability check for updating vnic env counters (Amir Tzin) [2112925] - net/mlx5: Lag, correct get the port select mode str (Amir Tzin) [2112925] - net/mlx5e: Fix enabling sriov while tc nic rules are offloaded (Amir Tzin) [2112925] - net/mlx5e: kTLS, Fix build time constant test in RX (Amir Tzin) [2112925] - net/mlx5e: kTLS, Fix build time constant test in TX (Amir Tzin) [2112925] - net/mlx5: Lag, decouple FDB selection and shared FDB (Amir Tzin) [2112925] - net/mlx5: TC, allow offload from uplink to other PF's VF (Amir Tzin) [2112925] - mellanox: mlx5: avoid uninitialized variable warning with gcc-12 (Amir Tzin) [2112925] - net/mlx5: E-Switch, pair only capable devices (Amir Tzin) [2112925 2150647] - Revert "net/mlx5e: Allow relaxed ordering over VFs" (Amir Tzin) [2112925] - net/mlx5: Fix mlx5_get_next_dev() peer device matching (Amir Tzin) [2112925] - RDMA/mlx5: Remove duplicate pointer assignment in mlx5_ib_alloc_implicit_mr() (Amir Tzin) [2112925] - net/mlx5: fix multiple definitions of mlx5_lag_mpesw_init / mlx5_lag_mpesw_cleanup (Amir Tzin) [2112925] - net/mlx5: Support multiport eswitch mode (Amir Tzin) [2112925 2150647] - net/mlx5: Remove unused argument (Amir Tzin) [2112925] - net/mlx5: Lag, refactor lag state machine (Amir Tzin) [2112925] - net/mlx5e: Add XDP SQs to uplink representors steering tables (Amir Tzin) [2112925] - net/mlx5e: Allow relaxed ordering over VFs (Amir Tzin) [2112925] - net/mlx5e: Support partial GSO for tunnels over vlans (Amir Tzin) [2112925] - net/mlx5e: IPoIB, Improve ethtool rxnfc callback structure in IPoIB (Amir Tzin) [2112925] - net/mlx5e: Allocate virtually contiguous memory for reps structures (Amir Tzin) [2112925] - net/mlx5e: Allocate virtually contiguous memory for VLANs list (Amir Tzin) [2112925] - net/mlx5: Allocate virtually contiguous memory in pci_irq.c (Amir Tzin) [2112925] - net/mlx5: Allocate virtually contiguous memory in vport.c (Amir Tzin) [2112925] - net/mlx5: Inline db alloc API function (Amir Tzin) [2112925] - net/mlx5: Add last command failure syndrome to debugfs (Amir Tzin) [2112925] - net/mlx5: sparse: error: context imbalance in 'mlx5_vf_get_core_dev' (Amir Tzin) [2112925] - net/mlx5: Expose mlx5_sriov_blocking_notifier_register / unregister APIs (Amir Tzin) [2112925] - net/mlx5: Lag, add debugfs to query hardware lag state (Amir Tzin) [2112925] - net/mlx5: Lag, use buckets in hash mode (Amir Tzin) [2112925] - net/mlx5: Lag, refactor dmesg print (Amir Tzin) [2112925] - net/mlx5: Support devices with more than 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, use actual number of lag ports (Amir Tzin) [2112925] - net/mlx5: Lag, use hash when in roce lag on 4 ports (Amir Tzin) [2112925] - net/mlx5: Lag, support single FDB only on 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, store number of ports inside lag object (Amir Tzin) [2112925] - net/mlx5: Lag, filter non compatible devices (Amir Tzin) [2112925] - net/mlx5: Lag, use lag lock (Amir Tzin) [2112925] - net/mlx5: Lag, move E-Switch prerequisite check into lag code (Amir Tzin) [2112925] - net/mlx5: devcom only supports 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, expose number of lag ports (Amir Tzin) [2112925] - net/mlx5: Increase FW pre-init timeout for health recovery (Amir Tzin) [2112925] - net/mlx5: Add exit route when waiting for FW (Amir Tzin) [2112925] - net/mlx5e: Use XFRM state direction instead of flags (Amir Tzin) [2112925] - net/mlx5: Allow future addition of IPsec object modifiers (Amir Tzin) [2112925] - net/mlx5: Don't perform lookup after already known sec_path (Amir Tzin) [2112925] - net/mlx5: Cleanup XFRM attributes struct (Amir Tzin) [2112925] - net/mlx5: Remove not-supported ICV length (Amir Tzin) [2112925] - net/mlx5: Simplify IPsec capabilities logic (Amir Tzin) [2112925] - net/mlx5: Don't advertise IPsec netdev support for non-IPsec device (Amir Tzin) [2112925] - net/mlx5: Make sure that no dangling IPsec FS pointers exist (Amir Tzin) [2112925] - net/mlx5: Clean IPsec FS add/delete rules (Amir Tzin) [2112925] - net/mlx5: Simplify HW context interfaces by using SA entry (Amir Tzin) [2112925] - net/mlx5: Remove indirections from esp functions (Amir Tzin) [2112925] - net/mlx5: Merge various control path IPsec headers into one file (Amir Tzin) [2112925] - net/mlx5: Remove useless validity check (Amir Tzin) [2112925] - net/mlx5: Store IPsec ESN update work in XFRM state (Amir Tzin) [2112925] - net/mlx5: Reduce useless indirection in IPsec FS add/delete flows (Amir Tzin) [2112925] - net/mlx5: Don't hide fallback to software IPsec in FS code (Amir Tzin) [2112925] - net/mlx5: Check IPsec TX flow steering namespace in advance (Amir Tzin) [2112925] - net/mlx5: Simplify IPsec flow steering init/cleanup functions (Amir Tzin) [2112925] - net/mlx5: fs, an FTE should have no dests when deleted (Amir Tzin) [2112925] - net/mlx5: fs, call the deletion function of the node (Amir Tzin) [2112925] - net/mlx5: fs, delete the FTE when there are no rules attached to it (Amir Tzin) [2112925] - net/mlx5: fs, do proper bookkeeping for forward destinations (Amir Tzin) [2112925] - net/mlx5: fs, add unused destination type (Amir Tzin) [2112925] - net/mlx5: fs, jump to exit point and don't fall through (Amir Tzin) [2112925] - net/mlx5: fs, refactor software deletion rule (Amir Tzin) [2112925] - net/mlx5: fs, split software and IFC flow destination definitions (Amir Tzin) [2112925] - net/mlx5e: TC, set proper dest type (Amir Tzin) [2112925] - net/mlx5e: Remove unused mlx5e_dcbnl_build_rep_netdev function (Amir Tzin) [2112925] - net/mlx5e: Drop error CQE handling from the XSK RX handler (Amir Tzin) [2112925] - net/mlx5: Print initializing field in case of timeout (Amir Tzin) [2112925] - net/mlx5: Delete redundant default assignment of runtime devlink params (Amir Tzin) [2112925] - net/mlx5: Remove useless kfree (Amir Tzin) [2112925] - net/mlx5: use kvfree() for kvzalloc() in mlx5_ct_fs_smfs_matcher_create (Amir Tzin) [2112925] - RDMA/mlx5: Clean UMR QP type flow from mlx5_ib_post_send() (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to update xlt (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to update MR pas (Amir Tzin) [2112925] - RDMA/mlx5: Move creation and free of translation tables to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to rereg pd access (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to revoke MRs (Amir Tzin) [2112925] - RDMA/mlx5: Introduce mlx5_umr_post_send_wait() (Amir Tzin) [2112925] - RDMA/mlx5: Expose wqe posting helpers outside of wr.c (Amir Tzin) [2112925] - RDMA/mlx5: Simplify get_umr_update_access_mask() (Amir Tzin) [2112925] - RDMA/mlx5: Move mkey ctrl segment logic to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Move umr checks to umr.h (Amir Tzin) [2112925] - RDMA/mlx5: Move init and cleanup of UMR to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Fix flow steering egress flow (Amir Tzin) [2112925] - mlx5, xsk: Diversify return values from xsk_wakeup call paths (Amir Tzin) [2112925] - net/mlx5: Remove not-implemented IPsec capabilities (Amir Tzin) [2112925] - net/mlx5: Remove ipsec_ops function table (Amir Tzin) [2112925] - net/mlx5: Reduce kconfig complexity while building crypto support (Amir Tzin) [2112925] - net/mlx5: Move IPsec file to relevant directory (Amir Tzin) [2112925] - net/mlx5: Remove not-needed IPsec config (Amir Tzin) [2112925] - net/mlx5: Align flow steering allocation namespace to common style (Amir Tzin) [2112925] - net/mlx5: Unify device IPsec capabilities check (Amir Tzin) [2112925] - net/mlx5: Remove useless IPsec device checks (Amir Tzin) [2112925] - net/mlx5: Remove ipsec vs. ipsec offload file separation (Amir Tzin) [2112925] - RDMA/mlx5: Drop crypto flow steering API (Amir Tzin) [2112925] - RDMA/mlx5: Delete never supported IPsec flow action (Amir Tzin) [2112925] - net/mlx5: Remove FPGA ipsec specific statistics (Amir Tzin) [2112925] - net/mlx5: Remove XFRM no_trailer flag (Amir Tzin) [2112925] - net/mlx5: Remove not-used IDA field from IPsec struct (Amir Tzin) [2112925] - net/mlx5: Delete metadata handling logic (Amir Tzin) [2112925] - net/mlx5_fpga: Drop INNOVA IPsec support (Amir Tzin) [2112925] - net/mlx5: Cleanup kTLS function names and their exposure (Amir Tzin) [2112925] - net/mlx5: Remove tls vs. ktls separation as it is the same (Amir Tzin) [2112925] - net/mlx5: Remove indirection in TLS build (Amir Tzin) [2112925] - net/mlx5: Reliably return TLS device capabilities (Amir Tzin) [2112925] - net/mlx5_fpga: Drop INNOVA TLS support (Amir Tzin) [2112925] - ipv6: Use ipv6_only_sock() helper in condition (mlx5 hunk only). (Amir Tzin) [2112925] - Revert "stmmac/intel: mark driver as tech preview" (Mark Salter) [2122230] - net: stmmac: Fix queue statistics reading (Mark Salter) [2122230] - stmmac: intel: Update PCH PTP clock rate from 200MHz to 204.8MHz (Mark Salter) [2122230] - net: stmmac: power up/down serdes in stmmac_open/release (Mark Salter) [2122230] - stmmac: intel: Simplify intel_eth_pci_remove() (Mark Salter) [2122230] - net: stmmac: work around sporadic tx issue on link-up (Mark Salter) [2122230] - stmmac: intel: Add a missing clk_disable_unprepare() call in intel_eth_pci_remove() (Mark Salter) [2122230] - net: phylink: fix SGMII inband autoneg enable (Mark Salter) [2122230] - net: phylink: fix NULL pl->pcs dereference during phylink_pcs_poll_start (Mark Salter) [2122230] - net: phylink: disable PCS polling over major configuration (Mark Salter) [2122230] - net: phylink: remove pcs_ops member (Mark Salter) [2122230] - net: pcs: xpcs: depends on PHYLINK in Kconfig (Mark Salter) [2122230] - net: phylink: add QSGMII support to phylink_mii_c22_pcs_encode_advertisement() (Mark Salter) [2122230] - net: stmmac: make mdio register skips PHY scanning for fixed-link (Mark Salter) [2122230] - stmmac: intel: add phy-mode and fixed-link ACPI _DSD setting support (Mark Salter) [2122230] - net: pcs: xpcs: add CL37 1000BASE-X AN support (Mark Salter) [2122230] - stmmac: intel: prepare to support 1000BASE-X phy interface setting (Mark Salter) [2122230] - net: make xpcs_do_config to accept advertising for pcs-xpcs and sja1105 (Mark Salter) [2122230] - net: pcs: xpcs: propagate xpcs_read error to xpcs_get_state_c37_sgmii (Mark Salter) [2122230] - net: stmmac: remove redunctant disable xPCS EEE call (Mark Salter) [2122230] - net: stmmac: fix dma queue left shift overflow issue (Mark Salter) [2122230] - net: stmmac: switch to use interrupt for hw crosstimestamping (Mark Salter) [2122230] - net: stmmac: fix unbalanced ptp clock issue in suspend/resume flow (Mark Salter) [2122230] - net: stmmac: fix pm runtime issue in stmmac_dvr_remove() (Mark Salter) [2122230] - net: stmmac: dwc-qos: Disable split header for Tegra194 (Mark Salter) [2122230] - stmmac: intel: Fix an error handling path in intel_eth_pci_probe() (Mark Salter) [2122230] - stmmac: intel: Add RPL-P PCI ID (Mark Salter) [2122230] - net: stmmac: use dev_err_probe() for reporting mdio bus registration failure (Mark Salter) [2122230] - net: stmmac: remove unused get_addr() callback (Mark Salter) [2122230] - net: pcs: pcs-xpcs: Convert to mdiobus_c45_read (Mark Salter) [2122230] - net: phylink: Convert to mdiobus_c45_{read|write} (Mark Salter) [2122230] - net: stmmac: stmmac_main: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Mark Salter) [2122230] - net: phylink: remove phylink_helper_basex_speed() (Mark Salter) [2122230] - net: phylink: remove phylink_set_10g_modes() (Mark Salter) [2122230] - net: stmmac: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Mark Salter) [2122230] - net: stmmac: fix missing pci_disable_device() on error in stmmac_pci_probe() (Mark Salter) [2122230] - net: stmmac: disable Split Header (SPH) for Intel platforms (Mark Salter) [2122230] - net: stmmac: Use readl_poll_timeout_atomic() in atomic state (Mark Salter) [2122230] - net: stmmac: Fix unset max_speed difference between DT and non-DT platforms (Mark Salter) [2122230] - stmmac: intel: Add ADL-N PCI ID (Mark Salter) [2122230] - net: stmmac: switch no PTP HW support message to info level (Mark Salter) [2122230] - net: phylink: remove phylink_set_pcs() (Mark Salter) [2122230] - stmmac: intel: Enable 2.5Gbps for Intel AlderLake-S (Mark Salter) [2122230] - net: phylink: remove phylink_config's pcs_poll (Mark Salter) [2122230] - net: phylink: use legacy_pre_march2020 (Mark Salter) [2122230] - net: phylink: add legacy_pre_march2020 indicator (Mark Salter) [2122230] - net: stmmac: optimize locking around PTP clock reads (Mark Salter) [2122230] - net: stmmac: use .mac_select_pcs() interface (Mark Salter) [2122230] - net: stmmac: convert to phylink_generic_validate() (Mark Salter) [2122230] - net: stmmac: remove phylink_config.pcs_poll usage (Mark Salter) [2122230] - net: stmmac/xpcs: convert to pcs_validate() (Mark Salter) [2122230] - net: convert users of bitmap_foo() to linkmode_foo() (Mark Salter) [2122230] - net: phylink: add pcs_validate() method (Mark Salter) [2122230] - net: phylink: add mac_select_pcs() method to phylink_mac_ops (Mark Salter) [2122230] - net: phylink: tidy up disable bit clearing (Mark Salter) [2122230] - net: phylink: handle NA interface mode in phylink_fwnode_phy_connect() (Mark Salter) [2122230] - net: phylink: Add helpers for c22 registers without MDIO (Mark Salter) [2122230] - net: phylink: add 1000base-KX to phylink_caps_to_linkmodes() (Mark Salter) [2122230] - net: phylink: add generic validate implementation (Mark Salter) [2122230] - net: phylink: use supported_interfaces for phylink validation (Mark Salter) [2122230] - net: phylink: add MAC phy_interface_t bitmap (Mark Salter) [2122230] - net: phy: add phy_interface_t bitmap support (Mark Salter) [2122230] - net: phylink: Convert some users of mdiobus_* to mdiodev_* (Mark Salter) [2122230] - net: phylink: use mdiobus_modify_changed() helper (Mark Salter) [2122230] - net: mdio: add mdiobus_modify_changed() (Mark Salter) [2122230] - net: phylink: add phylink_set_10g_modes() helper (Mark Salter) [2122230] - net: stmmac: fill in supported_interfaces (Mark Salter) [2122230] - net: stmmac: convert to phylink_get_linkmodes() (Mark Salter) [2122230] - net: xpcs: add support for retrieving supported interface modes (Mark Salter) [2122230] - net: mdio: Add helper functions for accessing MDIO devices (Mark Salter) [2122230] - net: stmmac: fix return value of __setup handler (Mark Salter) [2122230] - net: stmmac: only enable DMA interrupts when ready (Mark Salter) [2122230] - net: stmmac: ensure PTP time register reads are consistent (Mark Salter) [2122230] - net: stmmac: dump gmac4 DMA registers correctly (Mark Salter) [2122230] - net: stmmac: properly handle with runtime pm in stmmac_dvr_remove() (Mark Salter) [2122230] - net: stmmac: skip only stmmac_ptp_register when resume from suspend (Mark Salter) [2122230] - drivers/net/ethernet: clean up mis-targeted comments (Mark Salter) [2122230] - net: stmmac: configure PTP clock source prior to PTP initialization (Mark Salter) [2122230] - net: stmmac: reduce unnecessary wakeups from eee sw timer (Mark Salter) [2122230] - net: stmmac: remove unused members in struct stmmac_priv (Mark Salter) [2122230] - net: stmmac: Fix "Unbalanced pm_runtime_enable!" warning (Mark Salter) [2122230] - net: stmmac: add tc flower filter for EtherType matching (Mark Salter) [2122230] - net: stmmac: bump tc when get underflow error from DMA descriptor (Mark Salter) [2122230] - stmmac: remove ethtool driver version info (Mark Salter) [2122230] - net: stmmac: Calculate CDC error only once (Mark Salter) [2122230] - net: stmmac: ptp: fix potentially overflowing expression (Mark Salter) [2122230] - net: stmmac: fix tc flower deletion for VLAN priority Rx steering (Mark Salter) [2122230] - net: stmmac: Avoid DMA_CHAN_CONTROL write if no Split Header support (Mark Salter) [2122230] - net: stmmac: Disable Tx queues when reconfiguring the interface (Mark Salter) [2122230] - net: phylink: Force retrigger in case of latched link-fail indicator (Mark Salter) [2122230] - net: phylink: Force link down and retrigger resolve on interface change (Mark Salter) [2122230] - net: stmmac: retain PTP clock time during SIOCSHWTSTAMP ioctls (Mark Salter) [2122230] - stmmac_pci: Fix underflow size in stmmac_rx (Mark Salter) [2122230] - net: stmmac: Fix signed/unsigned wreckage (Mark Salter) [2122230] - net: stmmac: allow a tc-taprio base-time of zero (Mark Salter) [2122230] - ethernet: stmmac: use eth_hw_addr_set() (Mark Salter) [2122230] - net: phylink: Support disabling autonegotiation for PCS (Mark Salter) [2122230] - net: stmmac: fix off-by-one error in sanity check (Mark Salter) [2122230] - net: stmmac: fix gcc-10 -Wrestrict warning (Mark Salter) [2122230] - net: phylink: don't call netif_carrier_off() with NULL netdev (Mark Salter) [2122230] - net: stmmac: Fix E2E delay mechanism (Mark Salter) [2122230] - net: stmmac: add support for dwmac 3.40a (Mark Salter) [2122230] - net: stmmac: fix get_hw_feature() on old hardware (Mark Salter) [2122230] - net: stmmac: trigger PCS EEE to turn off on link down (Mark Salter) [2122230] - net: pcs: xpcs: fix incorrect steps on disable EEE (Mark Salter) [2122230] - net: pcs: xpcs: fix incorrect CL37 AN sequence (Mark Salter) [2122230] - net: stmmac: fix EEE init issue when paired with EEE capable PHYs (Mark Salter) [2122230] - net: stmmac: allow CSR clock of 300MHz (Mark Salter) [2122230] - net: stmmac: platform: fix build warning when with !CONFIG_PM_SLEEP (Mark Salter) [2122230] - net: stmmac: fix system hang caused by eee_ctrl_timer during suspend/resume (Mark Salter) [2122230] - net: stmmac: fix MAC not working when system resume back with WoL active (Mark Salter) [2122230] - net: phylink: add suspend/resume support (Mark Salter) [2122230] - net: stmmac: add ethtool per-queue irq statistic support (Mark Salter) [2122230] - net: stmmac: add ethtool per-queue statistic framework (Mark Salter) [2122230] - net: stmmac: fix INTR TBU status affecting irq count statistic (Mark Salter) [2122230] - net: pcs: xpcs: Add Pause Mode support for SGMII and 2500BaseX (Mark Salter) [2122230] - net: stmmac: fix kernel panic due to NULL pointer dereference of plat->est (Mark Salter) [2122230] - net: pcs: xpcs: fix error handling on failed to allocate memory (Mark Salter) [2122230] - net: stmmac: add est_irq_status callback function for GMAC 4.10 and 5.10 (Mark Salter) [2122230] - net: stmmac: ptp: update tas basetime after ptp adjust (Mark Salter) [2122230] - net: stmmac: add mutex lock to protect est parameters (Mark Salter) [2122230] - net: stmmac: separate the tas basetime calculation function (Mark Salter) [2122230] - net: stmmac: Terminate FPE workqueue in suspend (Mark Salter) [2122230] - stmmac: intel: set PCI_D3hot in suspend (Mark Salter) [2122230] - stmmac: intel: Enable PHY WOL option in EHL (Mark Salter) [2122230] - net: stmmac: option to enable PHY WOL with PMT enabled (Mark Salter) [2122230] - net: stmmac: remove redundant continue statement (Mark Salter) [2122230] - stmmac: intel: fix wrong kernel-doc (Mark Salter) [2122230] - stmmac: intel: move definitions to dwmac-intel header file (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_do_config and xpcs_link_up (Mark Salter) [2122230] - net: pcs: xpcs: also ignore phy id if it's all ones (Mark Salter) [2122230] - net: pcs: xpcs: add support for sgmii with no inband AN (Mark Salter) [2122230] - net: pcs: xpcs: move register bit descriptions to a header file (Mark Salter) [2122230] - net: stmmac: reduce indentation when calling stmmac_xpcs_setup (Mark Salter) [2122230] - net: stmmac: reverse Christmas tree notation in stmmac_xpcs_setup (Mark Salter) [2122230] - net: pcs: xpcs: rename mdio_xpcs_args to dw_xpcs (Mark Salter) [2122230] - net: phylink: Refactor phylink_of_phy_connect() (Mark Salter) [2122230] - net: phylink: introduce phylink_fwnode_phy_connect() (Mark Salter) [2122230] - net: phy: Introduce phy related fwnode functions (Mark Salter) [2122230] - net: phy: Introduce fwnode_mdio_find_device() (Mark Salter) [2122230] - net: stmmac: Fix unused values warnings (Mark Salter) [2122230] - net: stmmac: Fix mixed enum type warning (Mark Salter) [2122230] - net: stmmac: Fix missing { } around two statements in an if statement (Mark Salter) [2122230] - net: stmmac: explicitly deassert GMAC_AHB_RESET (Mark Salter) [2122230] - net: stmmac: platform: use optional clk/reset get APIs (Mark Salter) [2122230] - net: stmmac: fix NPD with phylink_set_pcs if there is no MDIO bus (Mark Salter) [2122230] - net: stmmac: enable Intel mGbE 2.5Gbps link speed (Mark Salter) [2122230] - net: pcs: add 2500BASEX support for Intel mGbE controller (Mark Salter) [2122230] - net: stmmac: split xPCS setup from mdio register (Mark Salter) [2122230] - net: pcs: xpcs: convert to phylink_pcs_ops (Mark Salter) [2122230] - net: pcs: xpcs: convert to mdio_device (Mark Salter) [2122230] - net: pcs: xpcs: use mdiobus_c45_addr in xpcs_{read,write} (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_probe (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_config_eee (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_validate (Mark Salter) [2122230] - net: pcs: xpcs: make the checks related to the PHY interface mode stateless (Mark Salter) [2122230] - net: pcs: xpcs: delete shim definition for mdio_xpcs_get_ops() (Mark Salter) [2122230] - net: pcs: xpcs: there is only one PHY ID (Mark Salter) [2122230] - net: stmmac: enable platform specific safety features (Mark Salter) [2122230] - net: stmmac: the XPCS obscures a potential "PHY not found" error (Mark Salter) [2122230] - net: stmmac: Add callbacks for DWC xpcs Energy Efficient Ethernet (Mark Salter) [2122230] - net: pcs: Introducing support for DWC xpcs Energy Efficient Ethernet (Mark Salter) [2122230]- xfs: reserve quota for dir expansion when linking/unlinking files (Bill O'Donnell) [2086880] - scsi: storvsc: Fix swiotlb bounce buffer leak in confidential VM (Emanuele Giuseppe Esposito) [2150659] - ACPICA: Fix operand resolution (Mark Langsdorf) [2156144] - driver core: Add missing kernel doc for device::msi_lock (Myron Stowe) [2158839] - PCI/MSI: Protect msi_desc::masked for multi-MSI (Myron Stowe) [2158839] - KVM: arm64: Don't retrieve memory slot again in page fault handler (Gavin Shan) [2161161] - fs: allow cross-vfsmount reflink/dedupe (Andrey Albershteyn) [2086200] - powerpc/hv-gpci: Fix hv_gpci event list (Mamatha Inamdar) [2161258] - powerpc: declare unmodified attribute_group usages const (Mamatha Inamdar) [2161258] - drm/amd: Delay removal of the firmware framebuffer (Michel Dänzer) [2162039] - cpuidle: Add cpu_idle_miss trace event (Mark Langsdorf) [2122312] - cpuidle: haltpoll: Add trace points for guest_halt_poll_ns grow/shrink (Mark Langsdorf) [2122312] - efi/cper, cxl: Decode CXL Error Log (Lenny Szubowicz) [2143733] - efi/cper, cxl: Decode CXL Protocol Error Section (Lenny Szubowicz) [2143733] - efi: cper: Add support for printing Firmware Error Record Reference (Lenny Szubowicz) [2143733] - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_reassemble_sdu (Wander Lairson Costa) [2152927] {CVE-2022-3564} - drm/i915: Fix CFI violations in gt_sysfs (Jocelyn Falempe) [2154880] - NFS: Clear the file access cache upon login (Benjamin Coddington) [2050832] - NFS: don't store 'struct cred *' in struct nfs_access_entry (Benjamin Coddington) [2050832] - NFS: pass cred explicitly for access tests (Benjamin Coddington) [2050832] - NFS: change nfs_access_get_cached to only report the mask (Benjamin Coddington) [2050832] - init: Initialize noop_backing_dev_info early (Nico Pache) [2160228] - mm: vmscan: make rotations a secondary factor in balancing anon vs file (Nico Pache) [2160228] - writeback: Fix inode->i_io_list not be protected by inode->i_lock error (Nico Pache) [2160228] - mm: vmscan: fix extreme overreclaim and swap floods (Nico Pache) [2160228] - mm/page_alloc: ensure kswapd doesn't accidentally go to sleep (Nico Pache) [2160228] - mm/page_io: count submission time as thrashing delay for delayacct (Nico Pache) [2160228] - delayacct: support re-entrance detection of thrashing accounting (Nico Pache) [2160228] - filemap: make the accounting of thrashing more consistent (Nico Pache) [2160228] - writeback: don't warn on an unregistered BDI in __mark_inode_dirty (Nico Pache) [2160228] - s390/dasd: fix no record found for raw_track_access (Tobias Huschle) [2161270] - crypto: testmgr - disallow certain DRBG hash functions in FIPS mode (Vladis Dronov) [2152133] - dmaengine: idxd: Fix crc_val field for completion record (Jerry Snitselaar) [2144375] - dmaengine: idxd: Make read buffer sysfs attributes invisible for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: Make max batch size attributes in sysfs invisible for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: Do not call DMX TX callbacks during workqueue disable (Jerry Snitselaar) [2144375] - dmaengine: idxd: Prevent use after free on completion memory (Jerry Snitselaar) [2144375] - dmaengine: idxd: Let probe fail when workqueue cannot be enabled (Jerry Snitselaar) [2144375] - dmaengine: idxd: Fix max batch size for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: add configuration for concurrent batch descriptor processing (Jerry Snitselaar) [2144375] - dmanegine: idxd: reformat opcap output to match bitmap_parse() input (Jerry Snitselaar) [2144375] - dmaengine: idxd: add configuration for concurrent work descriptor processing (Jerry Snitselaar) [2144375] - dmaengine: idxd: add WQ operation cap restriction support (Jerry Snitselaar) [2144375] - dmaengine: idxd: convert ats_dis to a wq flag (Jerry Snitselaar) [2144375] - dmaengine: idxd: track enabled workqueues in bitmap (Jerry Snitselaar) [2144375] - dmaengine: idxd: Set wq state to disabled in idxd_wq_disable_cleanup() (Jerry Snitselaar) [2144375] - dmaengine: idxd: Do not enable user type Work Queue without Shared Virtual Addressing (Jerry Snitselaar) [2144375] - dmaengine: idxd: fix RO device state error after been disabled/reset (Jerry Snitselaar) [2144375] - dmaengine: idxd: avoid deadlock in process_misc_interrupts() (Jerry Snitselaar) [2144375] - KVM: x86: nSVM: implement nested LBR virtualization (Emanuele Giuseppe Esposito) [2155149] - KVM: x86: nSVM: correctly virtualize LBR msrs when L2 is running (Emanuele Giuseppe Esposito) [2155149] - kvm: x86: SVM: use vmcb* instead of svm->vmcb where it makes sense (Emanuele Giuseppe Esposito) [2155149] - KVM: x86: nSVM: implement nested VMLOAD/VMSAVE (Emanuele Giuseppe Esposito) [2155149] - eth: octeon: fix build after netif_napi_add() changes (Íñigo Huguet) [2152918] - net: drop the weight argument from netif_napi_add (Íñigo Huguet) [2152918] - net: remove netif_tx_napi_add() (Íñigo Huguet) [2152918] - ipoib: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - IB/hfi1: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - IB/hfi1: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - crypto: caam/qi2 - switch to netif_napi_add_tx_weight() (Íñigo Huguet) [2152918] - can: can-dev: move to netif_napi_add_weight() (Íñigo Huguet) [2152918] - net: virtio: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - r8152: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - eth: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - mt76: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - net: move snowflake callers to netif_napi_add_tx_weight() (Íñigo Huguet) [2152918] - net: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - can: m_can: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: remove remaining copies of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: benet: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: atlantic: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: smsc: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: remove copies of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - netdev: reshuffle netif_napi_add() APIs to allow dropping weight (Íñigo Huguet) [2152918] - ipv6: raw: Deduct extension header length in rawv6_push_pending_frames (Hangbin Liu) [2162124] {CVE-2023-0394} - netfilter: conntrack: handle tcp challenge acks during connection reuse (Florian Westphal) [2158726] - act_mirred: use the backlog for nested calls to mirred ingress (Davide Caratti) [2131339] {CVE-2022-4269} - net/sched: act_mirred: better wording on protection against excessive stack growth (Davide Caratti) [2131339] - xfs: add selinux labels to whiteout inodes (Andrey Albershteyn) [2094060] - tdx: enable TDX attestation driver (Wander Lairson Costa) [2076748] - selftests/tdx: Test TDX attestation GetReport support (Wander Lairson Costa) [2076748] - virt: Add TDX guest driver (Wander Lairson Costa) [2076748] - x86/tdx: Add a wrapper to get TDREPORT0 from the TDX Module (Wander Lairson Costa) [2076748] - proc: proc_skip_spaces() shouldn't think it is working on C strings (Wander Lairson Costa) [2152572] {CVE-2022-4378} - proc: avoid integer type confusion in get_proc_long (Wander Lairson Costa) [2152572] {CVE-2022-4378} - NFSv4.2: Update mode bits after ALLOCATE and DEALLOCATE (Jeffrey Layton) [2127153] - NFS: nfsiod should not block forever in mempool_alloc() (Jeffrey Layton) [2127153] - NFSv4.1: Handle NFS4ERR_DELAY replies to OP_SEQUENCE correctly (Benjamin Coddington) [2061259] - NFSv4.1: Don't decrease the value of seq_nr_highest_sent (Benjamin Coddington) [2061259]- uas: ignore UAS for Thinkplus chips (Torez Smith) [2113004] - usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS (Torez Smith) [2113004] - thunderbolt: Explicitly reset plug events delay back to USB4 spec value (Torez Smith) [2113004] - USB: serial: option: add Quectel BG95 0x0203 composition (Torez Smith) [2113004] - thunderbolt: Add support for Intel Maple Ridge single port controller (Torez Smith) [2113004] - USB: core: Fix RST error in hub.c (Torez Smith) [2113004] - kunit: fix Kconfig for build-in tests USB4 and Nitro Enclaves (Torez Smith) [2113004] - usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS (Torez Smith) [2113004] - USB: serial: cp210x: add Decagon UCA device id (Torez Smith) [2113004] - USB: core: Prevent nested device-reset calls (Torez Smith) [2113004] - usb: typec: Remove retimers properly (Torez Smith) [2113004] - USB: serial: ftdi_sio: add Omron CS1W-CIF31 device id (Torez Smith) [2113004] - USB: serial: option: add support for OPPO R11 diag port (Torez Smith) [2113004] - xhci: Add grace period after xHC start to prevent premature runtime suspend. (Torez Smith) [2113004] - xhci: Fix null pointer dereference in remove if xHC has only one roothub (Torez Smith) [2113004] - USB: cdc-acm: Add Icom PMR F3400 support (0c26:0020) (Torez Smith) [2113004] - usb: xhci-mtk: fix bandwidth release issue (Torez Smith) [2113004] - usb: xhci-mtk: relax TT periodic bandwidth allocation (Torez Smith) [2113004] - usb: typec: altmodes/displayport: correct pin assignment for UFP receptacles (Torez Smith) [2113004] - usb: typec: intel_pmc_mux: Add new ACPI ID for Meteor Lake IOM device (Torez Smith) [2113004] - usb-storage: Add ignore-residue quirk for NXP PN7462AU (Torez Smith) [2113004] - usb: typec: tcpm: Return ENOTSUPP for power supply prop writes (Torez Smith) [2113004] - thunderbolt: Check router generation before connecting xHCI (Torez Smith) [2113004] - thunderbolt: Use the actual buffer in tb_async_error() (Torez Smith) [2113004] - USB: usbsevseg: convert sysfs snprintf to sysfs_emit (Torez Smith) [2113004] - dt-bindings: usb: Add binding for TI USB8041 hub controller (Torez Smith) [2113004] - usb: typec: ucsi: stm32g0: add bootloader support (Torez Smith) [2113004] - usb: typec: ucsi: stm32g0: add support for stm32g0 controller (Torez Smith) [2113004] - dt-bindings: usb: typec: add bindings for stm32g0 controller (Torez Smith) [2113004] - usb: typec: ucsi: Acknowledge the GET_ERROR_STATUS command completion (Torez Smith) [2113004] - usb: typec: retimer: Add missing id check in match callback (Torez Smith) [2113004] - USB: xhci: Fix comment typo (Torez Smith) [2113004] - usb/typec/tcpm: fix repeated words in comments (Torez Smith) [2113004] - usb/misc: fix repeated words in comments (Torez Smith) [2113004] - usb/image: fix repeated words in comments (Torez Smith) [2113004] - usb/host: fix repeated words in comments (Torez Smith) [2113004] - usb/core: fix repeated words in comments (Torez Smith) [2113004] - usb/atm: fix repeated words in comments (Torez Smith) [2113004] - USB: HCD: Fix URB giveback issue in tasklet function (Torez Smith) [2113004] - usb: xhci_plat_remove: avoid NULL dereference (Torez Smith) [2113004] - USB: serial: fix tty-port initialized comments (Torez Smith) [2113004] - USB: serial: usb_wwan: replace DTR/RTS magic numbers with macros (Torez Smith) [2113004] - USB: cdc-acm: use CDC serial-state defines (Torez Smith) [2113004] - USB: cdc-acm: use CDC control-line defines (Torez Smith) [2113004] - USB: cdc: add serial-state defines (Torez Smith) [2113004] - USB: cdc: add control-signal defines (Torez Smith) [2113004] - net/cdc_ncm: Increase NTB max RX/TX values to 64kb (Torez Smith) [2113004] - usb: typec: Add retimer handle to port (Torez Smith) [2113004] - usb: typec: Add support for retimers (Torez Smith) [2113004] - dt-bindings: usb: Add analogix anx7411 PD binding (Torez Smith) [2113004] - usb: ldusb: replace ternary operator with max_t() (Torez Smith) [2113004] - USB: serial: fix repeated word "the" in comments (Torez Smith) [2113004] - USB: serial: io_edgeport: fix spelling mistakes (Torez Smith) [2113004] - USB: serial: ftdi_sio: add Belimo device ids (Torez Smith) [2113004] - thunderbolt: test: Use kunit_test_suite() macro (Torez Smith) [2113004] - media: pvrusb2: drop unexpected word 'a' in comments (Torez Smith) [2113004] - media: gspca: drop unexpected word 'is' in the comments (Torez Smith) [2113004] - usb: typec: add missing uevent when partner support PD (Torez Smith) [2113004] - tools: usb: testusb: Add super-plus speed reporting (Torez Smith) [2113004] - tools: usb: testusb: Add super speed reporting (Torez Smith) [2113004] - tools: usb: testusb: Add wireless speed reporting (Torez Smith) [2113004] - usb: typec: tcpci: move tcpci.h to include/linux/usb/ (Torez Smith) [2113004] - ARM: sa1100/assabet: move dmabounce hack to ohci driver (Torez Smith) [2113004] - usb: host: xhci: use snprintf() in xhci_decode_trb() (Torez Smith) [2113004] - USB: cdc-acm: use define for timeout (Torez Smith) [2113004] - usb: typec_altmode: add a missing "@" at a kernel-doc parameter (Torez Smith) [2113004] - usb: core: sysfs: convert sysfs snprintf to sysfs_emit (Torez Smith) [2113004] - media: usb: gspca: aligned '*' each line (Torez Smith) [2113004] - media: hdpvr: fix error value returns in hdpvr_read (Torez Smith) [2113004] - media: em28xx: Remove useless license text when SPDX-License-Identifier is already used (Torez Smith) [2113004] - USB: serial: use kmemdup instead of kmalloc + memcpy (Torez Smith) [2113004] - usb: host: ehci-q: Fix ehci_submit_single_step_set_feature annotation typo (Torez Smith) [2113004] - USB: storage: Fix typo in comment (Torez Smith) [2113004] - usb: typec: mux: Add CONFIG guards for functions (Torez Smith) [2113004] - usb: typec: mux: Allow muxes to specify mode-switch (Torez Smith) [2113004] - usb: musb: Add support for PolarFire SoC's musb controller (Torez Smith) [2113004] - media: pvrusb2: fix memory leak in pvr_probe (Torez Smith) [2113004] - media: airspy: respect the DMA coherency rules (Torez Smith) [2113004] - media: usbtv: Add PAL-Nc standard (Torez Smith) [2113004] - thunderbolt: Fix typo in comment (Torez Smith) [2113004] - dt-bindings: usb: add documentation for aspeed udc (Torez Smith) [2113004] - usb: Avoid extra usb SET_SEL requests when enabling link power management (Torez Smith) [2113004] - usb: typec: tcpm: Register USB Power Delivery Capabilities (Torez Smith) [2113004] - usb: typec: USB Power Delivery helpers for ports and partners (Torez Smith) [2113004] - usb: typec: Separate USB Power Delivery from USB Type-C (Torez Smith) [2113004] - usb: hub: port: add sysfs entry to switch port power (Torez Smith) [2113004] - ucsi_ccg: ACPI based I2c client enumeration for AMD ASICs (Torez Smith) [2113004] - ucsi_ccg: Do not hardcode interrupt polarity and type (Torez Smith) [2113004] - usb: xhci-mtk: add support optional controller reset (Torez Smith) [2113004] - usb: typec: tcpm: fix typo in comment (Torez Smith) [2113004] - usb: xhci: tegra: Fix error check (Torez Smith) [2113004] - usb: common: usb-conn-gpio: Allow wakeup from system suspend (Torez Smith) [2113004] - usbip: vudc: Don't enable IRQs prematurely (Torez Smith) [2113004] - USB: usbip: clean up mixed use of _irq() and _irqsave() (Torez Smith) [2113004] - USB: Follow-up to SPDX identifiers addition - remove now useless comments (Torez Smith) [2113004] - thunderbolt: Fix some kernel-doc comments (Torez Smith) [2113004] - usb: hub: Simplify error and success path in port_over_current_notify (Torez Smith) [2113004] - usb: remove Link Powermanagement (LPM) disable before port reset. (Torez Smith) [2113004] - thunderbolt: Change TMU mode to HiFi uni-directional once DisplayPort tunneled (Torez Smith) [2113004] - usb: core: Bail out when port is stuck in reset loop (Torez Smith) [2113004] - thunderbolt: Add CL1 support for USB4 and Titan Ridge routers (Torez Smith) [2113004] - thunderbolt: Change downstream router's TMU rate in both TMU uni/bidir mode (Torez Smith) [2113004] - USB: core: Fix bug in resuming hub's handling of wakeup requests (Torez Smith) [2113004] - thunderbolt: Fix typos in CLx enabling (Torez Smith) [2113004] - usb: hub: Add delay for SuperSpeed hub resume to let links transit to U0 (Torez Smith) [2113004] - usb: hub: make wait_for_connected() take an int instead of a pointer to int (Torez Smith) [2113004] - thunderbolt: CLx disable before system suspend only if previously enabled (Torez Smith) [2113004] - usb: hub: avoid warm port reset during USB3 disconnect (Torez Smith) [2113004] - thunderbolt: Silently ignore CLx enabling in case CLx is not supported (Torez Smith) [2113004]- config: Enable Security Path (Ricardo Robaina) [2161309] - tcp: Fix build break when CONFIG_IPV6=n (Jamie Bainbridge) [2143849] - tcp: annotate data-race around queue->synflood_warned (Jamie Bainbridge) [2143849] - tcp: Add listening address to SYN flood message (Jamie Bainbridge) [2143849] - tcp: Fix data-races around sysctl_tcp_syncookies. (Jamie Bainbridge) [2143849] - firmware_loader: Fix memory leak in firmware upload (Mark Langsdorf) [2122319] - firmware_loader: Fix use-after-free during unregister (Mark Langsdorf) [2122319] - firmware_loader: fix memory leak for paged buffer (Mark Langsdorf) [2122319] - firmware_loader: describe 'module' parameter of firmware_upload_register() (Mark Langsdorf) [2122319] - firmware_loader: Move definitions from sysfs_upload.h to sysfs.h (Mark Langsdorf) [2122319] - firmware_loader: Add sysfs nodes to monitor fw_upload (Mark Langsdorf) [2122319] - firmware_loader: Add firmware-upload support (Mark Langsdorf) [2122319] - firmware_loader: Split sysfs support from fallback (Mark Langsdorf) [2122319] - firmware_loader: Clear data and size in fw_free_paged_buf (Mark Langsdorf) [2122319] - firmware: Use kvmalloc for page tables (Mark Langsdorf) [2122319] - firmware: Unify the paged buffer release helper (Mark Langsdorf) [2122319] - firmware: Free temporary page table after vmapping (Mark Langsdorf) [2122319] - arch_topology: Make cluster topology span at least SMT CPUs (Mark Langsdorf) [2122319] - driver core: fix driver_set_override() issue with empty strings (Mark Langsdorf) [2122319] - arch_topology: Silence early cacheinfo errors when non-existent (Mark Langsdorf) [2122319] - driver core: Don't probe devices after bus_type.match() probe deferral (Mark Langsdorf) [2122319] - regmap: spi: Reserve space for register address/padding (Mark Langsdorf) [2122319] - arch_topology: Fix cache attributes detection in the CPU hotplug path (Mark Langsdorf) [2122319] - cacheinfo: Use atomic allocation for percpu cache attributes (Mark Langsdorf) [2122319] - regmap: permit to set reg_update_bits with bulk implementation (Mark Langsdorf) [2122319] - PM: domains: Ensure genpd_debugfs_dir exists before remove (Mark Langsdorf) [2122319] - PM: runtime: Extend support for wakeirq for force_suspend|resume (Mark Langsdorf) [2122319] - regmap: add WARN_ONCE when invalid mask is provided to regmap_field_init() (Mark Langsdorf) [2122319] - PM: wakeup: Unify device_init_wakeup() for PM_SLEEP and !PM_SLEEP (Mark Langsdorf) [2122319] - arch_topology: Warn that topology for nested clusters is not supported (Mark Langsdorf) [2122319] - arch_topology: Add support for parsing sockets in /cpu-map (Mark Langsdorf) [2122319] - arch_topology: Set cluster identifier in each core/thread from /cpu-map (Mark Langsdorf) [2122319] - arch_topology: Limit span of cpu_clustergroup_mask() (Mark Langsdorf) [2122319] - arch_topology: Don't set cluster identifier as physical package identifier (Mark Langsdorf) [2122319] - arch_topology: Avoid parsing through all the CPUs once a outlier CPU is found (Mark Langsdorf) [2122319] - arch_topology: Check for non-negative value rather than -1 for IDs validity (Mark Langsdorf) [2122319] - arch_topology: Set thread sibling cpumask only within the cluster (Mark Langsdorf) [2122319] - arch_topology: Drop LLC identifier stash from the CPU topology (Mark Langsdorf) [2122319] - arm64: topology: Remove redundant setting of llc_id in CPU topology (Mark Langsdorf) [2122319] - arch_topology: Use the last level cache information from the cacheinfo (Mark Langsdorf) [2122319] - arch_topology: Add support to parse and detect cache attributes (Mark Langsdorf) [2122319] - cacheinfo: Align checks in cache_shared_cpu_map_{setup,remove} for readability (Mark Langsdorf) [2122319] - cacheinfo: Use cache identifiers to check if the caches are shared if available (Mark Langsdorf) [2122319] - cacheinfo: Allow early detection and population of cache attributes (Mark Langsdorf) [2122319] - cacheinfo: Add support to check if last level cache(LLC) is valid or shared (Mark Langsdorf) [2122319] - cacheinfo: Move cache_leaves_are_shared out of CONFIG_OF (Mark Langsdorf) [2122319] - cacheinfo: Add helper to access any cache index for a given CPU (Mark Langsdorf) [2122319] - cacheinfo: Use of_cpu_device_node_get instead cpu_dev->of_node (Mark Langsdorf) [2122319] - regmap: cache: Add extra parameter check in regcache_init (Mark Langsdorf) [2122319] - regmap-irq: Refactor checks for status bulk read support (Mark Langsdorf) [2122319] - regmap-irq: Remove mask_writeonly and regmap_irq_update_bits() (Mark Langsdorf) [2122319] - regmap-irq: Remove inappropriate uses of regmap_irq_update_bits() (Mark Langsdorf) [2122319] - driver core: fix potential deadlock in __driver_attach (Mark Langsdorf) [2122319] - devtmpfs: fix the dangling pointer of global devtmpfsd thread (Mark Langsdorf) [2122319] - regmap: Don't warn about cache only mode for devices with no cache (Mark Langsdorf) [2122319] - regmap: Wire up regmap_config provided bulk write in missed functions (Mark Langsdorf) [2122319] - regmap: Make regmap_noinc_read() return -ENOTSUPP if map->read isn't set (Mark Langsdorf) [2122319] - regmap: Re-introduce bulk read support check in regmap_bulk_read() (Mark Langsdorf) [2122319] - init: Initialize noop_backing_dev_info early (Mark Langsdorf) [2122319] - driver core: Introduce device_find_any_child() helper (Mark Langsdorf) [2122319] - regmap: cache: Fix syntax errors in comments (Mark Langsdorf) [2122319] - PM: domains: Trust domain-idle-states from DT to be correct by genpd (Mark Langsdorf) [2122319] - PM: domains: Measure power-on/off latencies in genpd based on a governor (Mark Langsdorf) [2122319] - PM: domains: Allocate governor data dynamically based on a genpd governor (Mark Langsdorf) [2122319] - PM: domains: Clean up some code in pm_genpd_init() and genpd_remove() (Mark Langsdorf) [2122319] - PM: domains: Fix initialization of genpd's next_wakeup (Mark Langsdorf) [2122319] - PM: domains: Fixup QoS latency measurements for IRQ safe devices in genpd (Mark Langsdorf) [2122319] - PM: domains: Measure suspend/resume latencies in genpd based on governor (Mark Langsdorf) [2122319] - PM: domains: Move the next_wakeup variable into the struct gpd_timing_data (Mark Langsdorf) [2122319] - PM: domains: Allocate gpd_timing_data dynamically based on governor (Mark Langsdorf) [2122319] - PM: domains: Skip another warning in irq_safe_dev_in_sleep_domain() (Mark Langsdorf) [2122319] - PM: domains: Rename irq_safe_dev_in_no_sleep_domain() in genpd (Mark Langsdorf) [2122319] - PM: domains: Don't check PM_QOS_FLAG_NO_POWER_OFF in genpd (Mark Langsdorf) [2122319] - PM: domains: Drop redundant code for genpd always-on governor (Mark Langsdorf) [2122319] - PM: domains: Add GENPD_FLAG_RPM_ALWAYS_ON for the always-on governor (Mark Langsdorf) [2122319] - PM: wakeup: expose pm_wakeup_pending to modules (Mark Langsdorf) [2122319] - driver core: fix deadlock in __device_attach (Mark Langsdorf) [2122319] - driver: base: fix UAF when driver_attach failed (Mark Langsdorf) [2122319] - driver core: location: Add "back" as a possible output for panel (Mark Langsdorf) [2122319] - driver core: location: Free struct acpi_pld_info *pld (Mark Langsdorf) [2122319] - regmap: Add missing map->bus check (Mark Langsdorf) [2122319] - device property: Advertise fwnode and device property count API calls (Mark Langsdorf) [2122319] - driver core: location: Check for allocations failure (Mark Langsdorf) [2122319] - regmap: Add bulk read/write callbacks into regmap_config (Mark Langsdorf) [2122319] - device property: Fix recent breakage of fwnode_get_next_parent_dev() (Mark Langsdorf) [2122319] - drivers/base/memory: fix an unlikely reference counting issue in __add_memory_block() (Mark Langsdorf) [2122319] - driver core: Add dma_cleanup callback in bus_type (Mark Langsdorf) [2122319] - driver core: Add sysfs support for physical location of a device (Mark Langsdorf) [2122319] - drivers/base/node.c: fix compaction sysfs file leak (Mark Langsdorf) [2122319] - driver core: Prevent overriding async driver of a device before it probe (Mark Langsdorf) [2122319] - Documentation: dd: Use ReST lists for return values of driver_deferred_probe_check_state() (Mark Langsdorf) [2122319] - regmap: cache: set max_register with reg_stride (Mark Langsdorf) [2122319] - firmware_loader: Check fw_state_is_done in loading_store (Mark Langsdorf) [2122319] - driver: platform: Add helper for safer setting of driver_override (Mark Langsdorf) [2122319] - PM: domains: Move genpd's time-accounting to ktime_get_mono_fast_ns() (Mark Langsdorf) [2122319] - PM: runtime: Allow to call __pm_runtime_set_status() from atomic context (Mark Langsdorf) [2122319] - device property: Drop 'test' prefix in parameters of fwnode_is_ancestor_of() (Mark Langsdorf) [2122319] - device property: Introduce fwnode_for_each_parent_node() (Mark Langsdorf) [2122319] - device property: Allow error pointer to be passed to fwnode APIs (Mark Langsdorf) [2122319] - device property: Check fwnode->secondary in fwnode_graph_get_next_endpoint() (Mark Langsdorf) [2122319] - PM: runtime: Avoid device usage count underflows (Mark Langsdorf) [2122319] - PM: domains: Extend dev_pm_domain_detach() doc (Mark Langsdorf) [2122319]- gitlab-ci: use CI templates from production branch (Michael Hofmann) - cpufreq: ACPI: Remove unused variables 'acpi_cpufreq_online' and 'ret' (Mark Langsdorf) [2038200] - cpufreq: ACPI: Only set boost MSRs on supported CPUs (Mark Langsdorf) [2038200] - cpufreq: ACPI: Defer setting boost MSRs (Mark Langsdorf) [2038200] - s390/kexec: fix ipl report address for kdump (Tobias Huschle) [2161328] - iavf: schedule watchdog immediately when changing primary MAC (Michal Schmidt) [2152493] - iavf: Move netdev_update_features() into watchdog task (Michal Schmidt) [2152493] - iavf: fix temporary deadlock and failure to set MAC address (Michal Schmidt) [2152493] - iavf: Fix error handling in iavf_init_module() (Michal Schmidt) [2152493]- net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103955] - ixgbe: stop resetting SYSTIME in ixgbe_ptp_start_cyclecounter (Ken Cox) [2103955] - ixgbe: Manual AN-37 for troublesome link partners for X550 SFI (Ken Cox) [2103955] - ixgbe: Don't call kmap() on page allocated with GFP_ATOMIC (Ken Cox) [2103955] - ixgbe: convert .adjfreq to .adjfine (Ken Cox) [2103955] - ixgbe: drop unexpected word 'for' in comments (Ken Cox) [2103955] - ixgbe: remove unexpected word "the" (Ken Cox) [2103955] - intel: remove unused macros (Ken Cox) [2103955] - ixgbe: Fix typos in comments (Ken Cox) [2103955] - drivers, ixgbe: export vf statistics (Ken Cox) [2103955] - ixgbe: fix unexpected VLAN Rx in promisc mode on VF (Ken Cox) [2103955] - ixgbe: fix bcast packets Rx on VF after promisc removal (Ken Cox) [2103955] - ixgbe: propagate XFRM offload state direction instead of flags (Ken Cox) [2103955] - ixgbe: Fix module_param allow_unsupported_sfp type (Ken Cox) [2103955] - ixgbe: ensure IPsec VF<->PF compatibility (Ken Cox) [2103955] - ixgbe, xsk: Get rid of redundant 'fallthrough' (Ken Cox) [2103955] - ixgbe, xsk: Diversify return values from xsk_wakeup call paths (Ken Cox) [2103955] - ixgbe, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Ken Cox) [2103955] - ixgbe, xsk: Decorate IXGBE_XDP_REDIR with likely() (Ken Cox) [2103955] - ixgbe: add improvement for MDD response functionality (Ken Cox) [2103955] - ixgbe: add the ability for the PF to disable VF link state (Ken Cox) [2103955] - ixgbe: xsk: change !netif_carrier_ok() handling in ixgbe_xmit_zc() (Ken Cox) [2103955] - ixgbe: Remove non-inclusive language (Ken Cox) [2103955] - ixgbe: Use irq_update_affinity_hint() (Ken Cox) [2103955] - net: convert users of bitmap_foo() to linkmode_foo() (Ken Cox) [2103955] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2103955] - net: Use skb_frag_off accessors (Ken Cox) [2103955] - drm/i915: Fix watermark calculations for DG2 CCS+CC modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for DG2 CCS modifiers (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ CCS+CC modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ MC CCS modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ RC CCS modifier (Jocelyn Falempe) [2041686] - drm/i915/uc: fix device/bus include on rhel8 (Jocelyn Falempe) [2041686] - drm/i915/display: consider DG2_RC_CCS_CC when migrating buffers (Jocelyn Falempe) [2041686] - drm/i915: allow control over the flags when migrating (Jocelyn Falempe) [2041686] - drm/i915/display: handle migration for dpt (Jocelyn Falempe) [2041686] - drm/i915/huc: better define HuC status getparam possible return values. (Jocelyn Falempe) [2041686] - drm/i915/huc: stall media submission until HuC is loaded (Jocelyn Falempe) [2041686] - drm/i915/huc: track delayed HuC load with a fence (Jocelyn Falempe) [2041686] - drm/i915/dg2: setup HuC loading via GSC (Jocelyn Falempe) [2041686] - drm/i915/pxp: add huc authentication and loading command (Jocelyn Falempe) [2041686] - drm/i915/pxp: implement function for sending tee stream command (Jocelyn Falempe) [2041686] - drm/i915/pxp: load the pxp module when we have a gsc-loaded huc (Jocelyn Falempe) [2041686] - drm/i915/gt: Flush to global observation point before breadcrumb write (Jocelyn Falempe) [2041686] - drm/i915/guc/slpc: Add SLPC selftest live_slpc_power (Jocelyn Falempe) [2041686] - drm/i915/guc/slpc: Run SLPC selftests on all tiles (Jocelyn Falempe) [2041686] - drm/i915: Remove unwanted pointer unpacking (Jocelyn Falempe) [2041686] - drm/i915/guc: Enable compute scheduling on DG2 (Jocelyn Falempe) [2041686] - drm/i915/dg2: introduce Wa_22015475538 (Jocelyn Falempe) [2041686] - drm/i915/uc: Update to latest GuC and use new-format GuC/HuC names (Jocelyn Falempe) [2041686] - Revert "drm/i915/dg2: extend Wa_1409120013 to DG2" (Jocelyn Falempe) [2041686] - drm/i915/gsc: allocate extended operational memory in LMEM (Jocelyn Falempe) [2041686] - drm/i915/gsc: add GSC XeHP SDV platform definition (Jocelyn Falempe) [2041686] - drm/i915/gsc: add slow_firmware flag to the gsc device definition (Jocelyn Falempe) [2041686] - drm/i915/gsc: skip irq initialization if using polling (Jocelyn Falempe) [2041686] - drm/i915/uc: Add patch level version number support (Jocelyn Falempe) [2041686] - drm/i915/uc: Support for version reduced and multiple firmware files (Jocelyn Falempe) [2041686] - drm/i915/ttm: Abort suspend on i915_ttm_backup failure (Jocelyn Falempe) [2041686] - drm/i915/dg2: Incorporate Wa_16014892111 into DRAW_WATERMARK tuning (Jocelyn Falempe) [2041686] - drm/i915/guc: Record CTB info in error logs (Jocelyn Falempe) [2041686] - drm/i915/guc: Add GuC <-> kernel time stamp translation information (Jocelyn Falempe) [2041686] - drm/i915/guc: Don't use pr_err when not necessary (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add support for DC5 state (Jocelyn Falempe) [2041686] - drm/i915/dmc: Update DG2 DMC firmware to v2.07 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add additional tuning settings (Jocelyn Falempe) [2041686] - drm/i915/gt: Add dedicated function for non-ctx register tuning settings (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add Wa_1509727124 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Update DG2 to GuC v70.4.1 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add additional HDMI pixel clock frequencies (Jocelyn Falempe) [2041686] - Revert "drm/i915/dg2: Add preemption changes for Wa_14015141709" (Jocelyn Falempe) [2041686] - config: Enable TDX Guest (Wander Lairson Costa) [1836977] - x86/tdx: mark TDX as a tech preview (Wander Lairson Costa) [1836977] - x86/tdx: Panic on bad configs that #VE on "private" memory access (Wander Lairson Costa) [1836977] - x86/tdx: Prepare for using "INFO" call for a second purpose (Wander Lairson Costa) [1836977] - x86/tdx: Handle load_unaligned_zeropad() page-cross to a shared page (Wander Lairson Costa) [1836977] - x86/tdx: Clarify RIP adjustments in #VE handler (Wander Lairson Costa) [1836977] - vt: Initialize conswitchp to dummy_con if unset (Wander Lairson Costa) [1836977] - x86/tdx: Fix early #VE handling (Wander Lairson Costa) [1836977] - x86/tdx: Fix RETs in TDX asm (Wander Lairson Costa) [1836977] - x86/apic: Do apic driver probe for "nosmp" use case (Wander Lairson Costa) [1836977] - x86/mm: Fix spacing within memory encryption features message (Wander Lairson Costa) [1836977] - x86/kaslr: Fix build warning in KASLR code in boot stub (Wander Lairson Costa) [1836977] - Documentation/x86: Document TDX kernel architecture (Wander Lairson Costa) [1836977] - ACPICA: Avoid cache flush inside virtual machines (Wander Lairson Costa) [1836977] - x86/tdx/ioapic: Add shared bit for IOAPIC base address (Wander Lairson Costa) [1836977] - x86/mm: Make DMA memory shared for TD guest (Wander Lairson Costa) [1836977] - x86/mm/cpa: Add support for TDX shared memory (Wander Lairson Costa) [1836977] - x86/tdx: Make pages shared in ioremap() (Wander Lairson Costa) [1836977] - x86/topology: Disable CPU online/offline control for TDX guests (Wander Lairson Costa) [1836977] - x86/boot: Avoid #VE during boot for TDX platforms (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Use TEST reg,reg instead of CMP $0,reg (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Do not corrupt EDX on EFER.LME=1 setting (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Set EFER.LME=1 in 32-bit trampoline before returning to long mode (Wander Lairson Costa) [1836977] - x86/boot: Set CR0.NE early and keep it set during the boot (Wander Lairson Costa) [1836977] - x86/acpi/x86/boot: Add multiprocessor wake-up support (Wander Lairson Costa) [1836977] - x86/boot: Add a trampoline for booting APs via firmware handoff (Wander Lairson Costa) [1836977] - x86/asm/realmode: Use SYM_DATA_* instead of GLOBAL (Wander Lairson Costa) [1836977] - x86/realmode: Remove trampoline_status (Wander Lairson Costa) [1836977] - x86/tdx: Wire up KVM hypercalls (Wander Lairson Costa) [1836977] - x86/tdx: Port I/O: Add early boot support (Wander Lairson Costa) [1836977] - x86/tdx: Port I/O: Add runtime hypercalls (Wander Lairson Costa) [1836977] - x86/boot: Port I/O: Add decompression-time support for TDX (Wander Lairson Costa) [1836977] - x86/boot: Port I/O: Allow to hook up alternative helpers (Wander Lairson Costa) [1836977] - x86: Consolidate port I/O helpers (Wander Lairson Costa) [1836977] - x86: Adjust types used in port I/O helpers (Wander Lairson Costa) [1836977] - x86/tdx: Detect TDX at early kernel decompression time (Wander Lairson Costa) [1836977] - x86/tdx: Handle in-kernel MMIO (Wander Lairson Costa) [1836977] - x86/tdx: Handle CPUID via #VE (Wander Lairson Costa) [1836977] - x86/tdx: Add MSR support for TDX guests (Wander Lairson Costa) [1836977] - x86/tdx: Add HLT support for TDX guests (Wander Lairson Costa) [1836977] - x86/traps: Add #VE support for TDX guest (Wander Lairson Costa) [1836977] - x86/traps: Refactor exc_general_protection() (Wander Lairson Costa) [1836977] - x86/traps: Cleanup do_general_protection() (Wander Lairson Costa) [1836977] - x86/dumpstack: Introduce die_addr() for die() with #GP fault address (Wander Lairson Costa) [1836977] - x86/traps: Print address on #GP (Wander Lairson Costa) [1836977] - x86/kprobes: Inline kprobe_exceptions_notify() into do_general_protection() (Wander Lairson Costa) [1836977] - x86/tdx: Exclude shared bit from __PHYSICAL_MASK (Wander Lairson Costa) [1836977] - x86/tdx: Extend the confidential computing API to support TDX guests (Wander Lairson Costa) [1836977] - x86/tdx: Add __tdx_module_call() and __tdx_hypercall() helper functions (Wander Lairson Costa) [1836977] - x86/tdx: Provide common base for SEAMCALL and TDCALL C wrappers (Wander Lairson Costa) [1836977] - x86/tdx: Detect running as a TDX guest in early boot (Wander Lairson Costa) [1836977] - x86/mm/cpa: Generalize __set_memory_enc_pgtable() (Wander Lairson Costa) [1836977] - x86/mm/pat: Don't flush cache if hardware enforces cache coherency across encryption domnains (Wander Lairson Costa) [1836977] - x86/coco: Add API to handle encryption mask (Wander Lairson Costa) [1836977] - x86/cc: Move arch/x86/{kernel/cc_platform.c => coco/core.c} (Wander Lairson Costa) [1836977] - x86/sev-es: Use insn_decode_mmio() for MMIO implementation (Wander Lairson Costa) [1836977] - x86/insn-eval: Introduce insn_decode_mmio() (Wander Lairson Costa) [1836977] - x86/insn-eval: Introduce insn_get_modrm_reg_ptr() (Wander Lairson Costa) [1836977] - x86/insn-eval: Handle insn_get_opcode() failure (Wander Lairson Costa) [1836977] - x86/sev: Move common memory encryption code to mem_encrypt.c (Wander Lairson Costa) [1836977] - x86/sev: Rename mem_encrypt.c to mem_encrypt_amd.c (Wander Lairson Costa) [1836977] - x86/virtio: Have SEV guests enforce restricted virtio memory access (Wander Lairson Costa) [1836977] - devlink: protect devlink dump by the instance lock (Petr Oros) [2131116] - devlink: hold region lock when flushing snapshots (Petr Oros) [2131116] - net: devlink: enable parallel ops on netlink interface (Petr Oros) [2131116] - net: devlink: remove devlink_mutex (Petr Oros) [2131116] - net: devlink: convert reload command to take implicit devlink->lock (Petr Oros) [2131116] - net: devlink: introduce "unregistering" mark and use it during devlinks iteration (Petr Oros) [2131116] - devlink: Fix use-after-free after a failed reload (Petr Oros) [2131116] - net: devlink: Fix missing mutex_unlock() call (Petr Oros) [2131116] - Documentation: devlink: add add devlink-selftests to the table of contents (Petr Oros) [2131116] - devlink: Hold the instance lock in health callbacks (Petr Oros) [2131116] - net/mlx4: Lock mlx4 devlink reload callback (Petr Oros) [2131116] - net/mlx4: Use devl_ API for devlink port register / unregister (Petr Oros) [2131116] - net/mlx4: Use devl_ API for devlink region create / destroy (Petr Oros) [2131116] - net: devlink: remove region snapshots list dependency on devlink->lock (Petr Oros) [2131116] - net: devlink: remove region snapshot ID tracking dependency on devlink->lock (Petr Oros) [2131116] - devlink: introduce framework for selftests (Petr Oros) [2131116] - net: devlink: remove redundant net_eq() check from sb_pool_get_dumpit() (Petr Oros) [2131116] - net: devlink: move net check into devlinks_xa_for_each_registered_get() (Petr Oros) [2131116] - net: devlink: make sure that devlink_try_get() works with valid pointer during xarray iteration (Petr Oros) [2131116] - netdevsim: convert driver to use unlocked devlink API during init/fini (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_region_create/destroy() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_dpipe*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_sb*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_resource*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devling_trap*() functions (Petr Oros) [2131116] - net: devlink: avoid false DEADLOCK warning reported by lockdep (Petr Oros) [2131116] - net: devlink: fix return statement in devlink_port_new_notify() (Petr Oros) [2131116] - net: devlink: fix a typo in function name devlink_port_new_notifiy() (Petr Oros) [2131116] - net: devlink: make devlink_dpipe_headers_register() return void (Petr Oros) [2131116] - net: devlink: move unlocked function prototypes alongside the locked ones (Petr Oros) [2131116] - net: devlink: use helpers to work with devlink->lock mutex (Petr Oros) [2131116] - net: devlink: fix unlocked vs locked functions descriptions (Petr Oros) [2131116] - devlink: Hold the instance lock in port_new / port_del callbacks (Petr Oros) [2131116] - powercap: intel_rapl: Add support for RAPTORLAKE_S (Prarit Bhargava) [2120363] - selftests/bpf: Fix test_varlen verification failure with latest llvm (Yauheni Kaliuta) [2149222] - iwlwifi: remove firmware version limit for AC9560 (Íñigo Huguet) [2129361] - wifi: iwlwifi: fw: skip PPAG for JF (Íñigo Huguet) [2129361] - sched: Improve wake_up_all_idle_cpus() take #2 (Julia Denham) [2134931] - selftests/livepatch: better synchronize test_klp_callbacks_busy (Julia Denham) [2121204] - sched,livepatch: Use wake_up_if_idle() (Joe Lawrence) [2134931] - sched: Simplify wake_up_*idle*() (Joe Lawrence) [2134931] - sched,livepatch: Use task_call_func() (Joe Lawrence) [2134931] - sched,rcu: Rework try_invoke_on_locked_down_task() (Joe Lawrence) [2134931] - sched: Improve try_invoke_on_locked_down_task() (Joe Lawrence) [2134931] - arm64/bpf: Remove 128MB limit for BPF JIT programs (Yauheni Kaliuta) [2140163] - bpf: Define bpf_jit_alloc_exec_limit for arm64 JIT (Yauheni Kaliuta) [2140163] - arm64: extable: add `type` and `data` fields (Yauheni Kaliuta) [2140163] - arm64: extable: use `ex` for `exception_table_entry` (Yauheni Kaliuta) [2140163] - arm64: extable: make fixup_exception() return bool (Yauheni Kaliuta) [2140163] - arm64: extable: consolidate definitions (Yauheni Kaliuta) [2140163] - arm64: kvm: use kvm_exception_table_entry (Yauheni Kaliuta) [2140163] - s390/cio: check the subchannel validity for dev_busid (Tobias Huschle) [2160494] - s390/cio: add dev_busid sysfs entry for each subchannel (Tobias Huschle) [2160494]- intel_idle: Add AlderLake-N support (Prarit Bhargava) [2144692] - selftests/timens: add a test for vfork+exit (Oleg Nesterov) [2116444] - fs/exec: switch timens when a task gets a new mm (Oleg Nesterov) [2116444] - namespace: make timens_on_fork() return nothing (Oleg Nesterov) [2116444] - timens: make vdso_join_timens() always succeed (Oleg Nesterov) [2116444] - xfrm: Fix oops in __xfrm_state_delete() (Sabrina Dubroca) [2156048] - tcp: Fix data races around icsk->icsk_af_ops. (Guillaume Nault) [2143904] {CVE-2022-3566} - ice: synchronize the misc IRQ when tearing down Tx tracker (Petr Oros) [2148858] - ice: fix handling of burst Tx timestamps (Petr Oros) [2148858] - vhost/vsock: Fix error handling in vhost_vsock_init() (Stefano Garzarella) [2159969] - net: vmw_vsock: vmci: Check memcpy_from_msg() (Stefano Garzarella) [2159969] - vhost/vsock: Use kvmalloc/kvfree for larger packets. (Stefano Garzarella) [2159969] - vsock: Set socket state back to SS_UNCONNECTED in vsock_connect_timeout() (Stefano Garzarella) [2159969] - vsock: Fix memory leak in vsock_connect() (Stefano Garzarella) [2159969] - tools/power turbostat: Add support for RPL-S (Prarit Bhargava) [2122848]- nvme: re-order nvme_alloc_ns to match "nvme: use blk_mq_alloc_disk" (Chris Leech) [2152742] - perf vendor events amd: Add Zen 4 mapping (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 metrics (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 uncore events (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 core events (Michael Petlan) [2148294] - cpuhotplug: Fix KABI breakage (Prarit Bhargava) [2156529] - scsi: target: core: Fix hard lockup when executing a compare-and-write command (Maurizio Lombardi) [2119897] - x86/topology: Fix duplicated core ID within a package (Prarit Bhargava) [2159553] - x86/topology: Fix multiple packages shown on a single-package system (Prarit Bhargava) [2159553] - hwmon/coretemp: Handle large core ID value (Prarit Bhargava) [2159553] - x86: Remove vendor checks from prefer_mwait_c1_over_halt (Prarit Bhargava) [2150067] - x86: Handle idle=nomwait cmdline properly for x86_idle (Prarit Bhargava) [2150067] - cpufreq: intel_pstate: Support Sapphire Rapids OOB mode (Prarit Bhargava) [2117767] - KVM: nVMX: Inject #GP, not #UD, if "generic" VMXON CR0/CR4 check fails (Emanuele Giuseppe Esposito) [2159433] - vmxnet3: correctly report csum_level for encapsulated packet (Izabela Bakollari) [2158809] - mei: pxp: support matching with a gfx discrete card (Jocelyn Falempe) [2147557] - mei: pxp: add command streamer API to the PXP driver (Jocelyn Falempe) [2147557] - mei: bus: extend bus API to support command streamer API (Jocelyn Falempe) [2147557] - mei: adjust extended header kdocs (Jocelyn Falempe) [2147557] - mei: bus: enable sending gsc commands (Jocelyn Falempe) [2147557] - mei: add support to GSC extended header (Jocelyn Falempe) [2147557] - mei: debugfs: add pxp mode to devstate in debugfs (Jocelyn Falempe) [2147557] - mei: drop ready bits check after start (Jocelyn Falempe) [2147557] - mei: gsc: add transition to PXP mode in resume flow (Jocelyn Falempe) [2147557] - mei: gsc: setup gsc extended operational memory (Jocelyn Falempe) [2147557] - mei: mkhi: add memory ready command (Jocelyn Falempe) [2147557] - mei: bus: export common mkhi definitions into a separate header (Jocelyn Falempe) [2147557] - mei: extend timeouts on slow devices (Jocelyn Falempe) [2147557] - mei: gsc: wait for reset thread on stop (Jocelyn Falempe) [2147557] - mei: gsc: use polling instead of interrupts (Jocelyn Falempe) [2147557] - mei: add slow_firmware flag to the mei auxiliary device (Jocelyn Falempe) [2147557] - mei: add kdoc for struct mei_aux_device (Jocelyn Falempe) [2147557] - mei: me: fix clang -Wformat warning (Jocelyn Falempe) [2147557] - mei: me: add raptor lake point S DID (Jocelyn Falempe) [2147557] - mei: hbm: drop capability response on early shutdown (Jocelyn Falempe) [2147557] - mei: me: set internal pg flag to off on hardware reset (Jocelyn Falempe) [2147557] - misc/mei: Add NULL check to component match callback functions (Jocelyn Falempe) [2147557] - drm/display: Move HDCP helpers into display-helper module (Jocelyn Falempe) [2147557] - mei: gsc: retrieve the firmware version (Jocelyn Falempe) [2147557] - mei: gsc: add runtime pm handlers (Jocelyn Falempe) [2147557] - mei: gsc: setup char driver alive in spite of firmware handshake failure (Jocelyn Falempe) [2147557] - mei: add support for graphics system controller (gsc) devices (Jocelyn Falempe) [2147557] - mei: avoid iterator usage outside of list_for_each_entry (Jocelyn Falempe) [2147557] - mei: do not overwrite state on hw start (Jocelyn Falempe) [2147557] - mei: me: fix reset policy on read error in interrupt (Jocelyn Falempe) [2147557] - mei: me: avoid link reset on shutdown (Jocelyn Falempe) [2147557] - mei: me: disable driver on the ign firmware (Jocelyn Falempe) [2147557] - mei: me: Use dma_set_mask_and_coherent() and simplify code (Jocelyn Falempe) [2147557] - mei: hbm: fix client dma reply status (Jocelyn Falempe) [2147557] - mei: cleanup status before client dma setup call (Jocelyn Falempe) [2147557] - mei: add POWERING_DOWN into device state print (Jocelyn Falempe) [2147557] - mei: Remove some dead code (Jocelyn Falempe) [2147557] - mei: bus: add client dma interface (Jocelyn Falempe) [2147557] - mei: hbm: drop hbm responses on early shutdown (Jocelyn Falempe) [2147557] - mei: me: add Ice Lake-N device id. (Jocelyn Falempe) [2147557] - mei: pxp: export pavp client to me client bus (Jocelyn Falempe) [2147557] - mei: Remove usage of the deprecated "pci-dma-compat.h" API (Jocelyn Falempe) [2147557] - mei: constify passed buffers and structures (Jocelyn Falempe) [2147557] - mei: revamp mei extension header structure layout. (Jocelyn Falempe) [2147557] - mei: fix kdoc in the driver (Jocelyn Falempe) [2147557] - mei: hdcp: SPDX tag should be the first line (Jocelyn Falempe) [2147557] - mei: request autosuspend after sending rx flow control (Jocelyn Falempe) [2147557] - mei: Drop unnecessary NULL check after container_of (Jocelyn Falempe) [2147557] - mei: me: add Alder Lake P device id. (Jocelyn Falempe) [2147557] - mei: allow map and unmap of client dma buffer only for disconnected client (Jocelyn Falempe) [2147557] - mei: use sysfs_emit() in tx_queue_limit_show sysfs (Jocelyn Falempe) [2147557] - mei: bus: block send with vtag on non-conformat FW (Jocelyn Falempe) [2147557] - mei: bus: change remove callback to return void (Jocelyn Falempe) [2147557] - mei: bus: simplify mei_cl_device_remove() (Jocelyn Falempe) [2147557] - mei: implement client dma setup. (Jocelyn Falempe) [2147557] - mei: hbm: add client dma hbm messages (Jocelyn Falempe) [2147557] - mei: add support for client dma capability (Jocelyn Falempe) [2147557] - mei: allow clients on bus to communicate in remove callback (Jocelyn Falempe) [2147557] - mei: me: add adler lake point LP DID (Jocelyn Falempe) [2147557] - mei: hbm: drop hbm responses on shutdown (Jocelyn Falempe) [2147557] - mei: hbm: call mei_set_devstate() on hbm stop response (Jocelyn Falempe) [2147557] - mei: document that mei_msg_hdr_init returns ERR_PTR (Jocelyn Falempe) [2147557] - mei: fix transfer over dma with extended header (Jocelyn Falempe) [2147557] - misc/mei/hdcp: Fix AUTH_STREAM_REQ cmd buffer len (Jocelyn Falempe) [2147557] - mei: bus: enable pavp device. (Jocelyn Falempe) [2147557] - mei: bus: add vtag support (Jocelyn Falempe) [2147557] - Revert "mei: virtio: virtualization frontend driver" (Jocelyn Falempe) [2147557] - mei: bus: fix a kernel-doc markup (Jocelyn Falempe) [2147557] - mei: protect mei_cl_mtu from null dereference (Jocelyn Falempe) [2147557] - mei: bus: deinitialize callback functions on init failure (Jocelyn Falempe) [2147557] - mei: bus: do not start a read for disconnected clients (Jocelyn Falempe) [2147557] - misc: mei: remove unneeded break (Jocelyn Falempe) [2147557] - mei: hw: Replace zero-length array with flexible-array member (Jocelyn Falempe) [2147557] - mei: virtio: virtualization frontend driver (Jocelyn Falempe) [2147557] - mei: add connect with vtag ioctl (Jocelyn Falempe) [2147557] - mei: bus: unconditionally enable clients with vtag support (Jocelyn Falempe) [2147557] - mei: bus: use zero vtag for bus clients. (Jocelyn Falempe) [2147557] - mei: handle tx queue flushing for vtag connections (Jocelyn Falempe) [2147557] - mei: add a vtag map for each client (Jocelyn Falempe) [2147557] - mei: add a spin lock to protect rd_completed queue (Jocelyn Falempe) [2147557] - mei: bump hbm version to 2.2 (Jocelyn Falempe) [2147557] - mei: add support for mei extended header. (Jocelyn Falempe) [2147557] - mei: add vtag support bit in client properties (Jocelyn Falempe) [2147557] - mei: restrict vtag support to hbm version 2.2 (Jocelyn Falempe) [2147557] - mei: hbm: add capabilities message (Jocelyn Falempe) [2147557] - Revert "scsi: iscsi: ql4xxx: Use per-session workqueue for unbinding" (Chris Leech) [2122624] - Revert "scsi: iscsi: Use the session workqueue for recovery" (Chris Leech) [2122624] - l2tp: Don't sleep and disable BH under writer-side sk_callback_lock (Guillaume Nault) [2145235] {CVE-2022-4129} - l2tp: Serialize access to sk_user_data with sk_callback_lock (Guillaume Nault) [2145235] {CVE-2022-4129} - net: fix a concurrency bug in l2tp_tunnel_register() (Guillaume Nault) [2145235] {CVE-2022-4129} - net: tap: fix general protection fault when freeing an skb when the ring is full (Antoine Tenart) [2152802] - platform/x86/intel/pmt: Sapphire Rapids PMT errata fix (Prarit Bhargava) [2144689] - RDMA/core: Fix null-ptr-deref in ib_core_cleanup() (Kamal Heib) [2120677] - RDMA/rxe: Fix mr leak in RESPST_ERR_RNR (Kamal Heib) [2120677] - IB/hfi1: Correctly move list in sc_disable() (Kamal Heib) [2120677] - RDMA/cma: Use output interface for net_dev check (Kamal Heib) [2120677] - RDMA/usnic: fix set-but-not-unused variable 'flags' warning (Kamal Heib) [2120677] - IB/rdmavt: Add __init/__exit annotations to module init/exit funcs (Kamal Heib) [2120677] - RDMA/rxe: Fix resize_finish() in rxe_queue.c (Kamal Heib) [2120677] - IB: Set IOVA/LENGTH on IB_MR in core/uverbs layers (Kamal Heib) [2120677] - RDMA/cm: Use SLID in the work completion as the DLID in responder side (Kamal Heib) [2120677] - RDMA/siw: Fix QP destroy to wait for all references dropped. (Kamal Heib) [2120677] - RDMA/srp: Fix srp_abort() (Kamal Heib) [2120677] - RDMA/irdma: Validate udata inlen and outlen (Kamal Heib) [2120677] - RDMA/irdma: Align AE id codes to correct flush code and event (Kamal Heib) [2120677] - RDMA/rxe: Fix the error caused by qp->sk (Kamal Heib) [2120677] - RDMA/rxe: Fix "kernel NULL pointer dereference" error (Kamal Heib) [2120677] - RDMA/rxe: Remove an unused member from struct rxe_mr (Kamal Heib) [2120677] - x86/fpu: Fix copy_xstate_to_uabi() to copy init states correctly (Dean Nelson) [2122850] - x86/fpu: Exclude dynamic states from init_fpstate (Dean Nelson) [2122850] - x86/fpu: Fix the init_fpstate size check with the actual size (Dean Nelson) [2122850] - x86/fpu: Configure init_fpstate attributes orderly (Dean Nelson) [2122850] - x86/fpu/xstate: Fix the ARCH_REQ_XCOMP_PERM implementation (Dean Nelson) [2122850] - ceph: rely on vfs for setgid stripping (Andrey Albershteyn) [2128904] - fs: move S_ISGID stripping into the vfs_*() helpers (Andrey Albershteyn) [2128904] - fs: Add missing umask strip in vfs_tmpfile (Andrey Albershteyn) [2128904] - fs: add mode_strip_sgid() helper (Andrey Albershteyn) [2128904]- x86/insn: Add AMX instructions to the x86 instruction decoder (Prarit Bhargava) [2117765] - intel_idle: Add a new flag to initialize the AMX state (Prarit Bhargava) [2117765] - x86/fpu: Add a helper to prepare AMX state for low-power CPU idle (Prarit Bhargava) [2117765] - intel_idle: make SPR C1 and C1E be independent (Prarit Bhargava) [2117765] - rpmspec: drop traceevent files instead of just excluding them from files list (Michael Petlan) [2155509] - powerpc/bpf/64: Add instructions for atomic_[cmp]xchg (Mamatha Inamdar) [2113254] - powerpc/bpf/64: add support for atomic fetch operations (Mamatha Inamdar) [2113254] - powerpc/bpf/64: add support for BPF_ATOMIC bitwise operations (Mamatha Inamdar) [2113254] - powerpc/bpf: Simplify bpf_to_ppc() and adopt it for powerpc64 (Mamatha Inamdar) [2113254] - powerpc64/bpf: Store temp registers' bpf to ppc mapping (Mamatha Inamdar) [2113254] - powerpc/bpf: Use _Rn macros for GPRs (Mamatha Inamdar) [2113254] - powerpc/bpf: Move bpf_jit64.h into bpf_jit_comp64.c (Mamatha Inamdar) [2113254] - powerpc/bpf: Cleanup bpf_jit.h (Mamatha Inamdar) [2113254] - powerpc64/bpf: Get rid of PPC_BPF_[LL|STL|STLU] macros (Mamatha Inamdar) [2113254] - powerpc64/bpf: Convert some of the uses of PPC_BPF_[LL|STL] to PPC_BPF_[LD|STD] (Mamatha Inamdar) [2113254] - powerpc64/bpf: Optimize instruction sequence used for function calls (Mamatha Inamdar) [2113254] - powerpc64/bpf elfv1: Do not load TOC before calling functions (Mamatha Inamdar) [2113254] - powerpc64/bpf elfv2: Setup kernel TOC in r2 on entry (Mamatha Inamdar) [2113254] - powerpc64: Set PPC64_ELF_ABI_v[1|2] macros to 1 (Mamatha Inamdar) [2113254] - powerpc64/bpf: Use r12 for constant blinding (Mamatha Inamdar) [2113254] - powerpc64/bpf: Do not save/restore LR on each call to bpf_stf_barrier() (Mamatha Inamdar) [2113254] - powerpc/bpf: Handle large branch ranges with BPF_EXIT (Mamatha Inamdar) [2113254] - powerpc/bpf: Emit a single branch instruction for known short branch ranges (Mamatha Inamdar) [2113254] - powerpc/bpf: Skip branch range validation during first pass (Mamatha Inamdar) [2113254] - powerpc64/bpf: Limit 'ldbrx' to processors compliant with ISA v2.06 (Mamatha Inamdar) [2113254] - tools/bpf: Rename 'struct event' to avoid naming conflict (Mamatha Inamdar) [2113254] - bpf: Guard against accessing NULL pt_regs in bpf_get_task_stack() (Mamatha Inamdar) [2113254] - bpf ppc64: Access only if addr is kernel address (Mamatha Inamdar) [2113254] - bpf ppc64: Add BPF_PROBE_MEM support for JIT (Mamatha Inamdar) [2113254] - powerpc/ppc-opcode: introduce PPC_RAW_BRANCH() macro (Mamatha Inamdar) [2113254] - bpf powerpc: refactor JIT compiler code (Mamatha Inamdar) [2113254] - bpf powerpc: Remove extra_pass from bpf_jit_build_body() (Mamatha Inamdar) [2113254] - bpf powerpc: Remove unused SEEN_STACK (Mamatha Inamdar) [2113254] - powerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC (Mamatha Inamdar) [2113254] - powerpc/security: Add a helper to query stf_barrier type (Mamatha Inamdar) [2113254] - powerpc/bpf: Fix BPF_SUB when imm == 0x80000000 (Mamatha Inamdar) [2113254] - powerpc/bpf: Fix BPF_MOD when imm == 1 (Mamatha Inamdar) [2113254] - powerpc/bpf: Validate branch ranges (Mamatha Inamdar) [2113254] - powerpc/lib: Add helper to check if offset is within conditional branch range (Mamatha Inamdar) [2113254] - powerpc/lib/feature-fixups: Use PPC_RAW_xxx() macros (Mamatha Inamdar) [2113254] - powerpc: Move PPC_HA() PPC_HI() and PPC_LO() to ppc-opcode.h (Mamatha Inamdar) [2113254] - swapfile: fix soft lockup in scan_swap_map_slots (Waiman Long) [2155734] - mm/swap: add helper swap_offset_available() (Waiman Long) [2155734] - pNFS/filelayout: Fix coalescing test for single DS (Benjamin Coddington) [2158520] - arm64: kdump: Support crashkernel=X fall back to reserve region above DMA zones (Pingfan Liu) [1940674] - arm64: kdump: Provide default size when crashkernel=Y,low is not specified (Pingfan Liu) [1940674] - media: dmxdev: fix UAF when dvb_register_device() fails (Dean Nelson) [2123301] {CVE-2022-41218} - crypto: s390/aes - drop redundant xts key check (Vladis Dronov) [2158893] - crypto: xts - implement xts_verify_key() with xts_check_key() (Vladis Dronov) [2158893] - audit: cache ctx->major in audit_filter_syscall() (Richard Guy Briggs) [2123854] - audit: free audit_proctitle only on task exit (Richard Guy Briggs) [2123854] - audit: explicitly check audit_context->context enum value (Richard Guy Briggs) [2123854] - audit: move audit_return_fixup before the filters (Richard Guy Briggs) [2123854] - audit: fix potential double free on error path from fsnotify_add_inode_mark (Richard Guy Briggs) [2123854] - i2c: ismt: Fix an out-of-bounds bug in ismt_access() (Prarit Bhargava) [2119066] {CVE-2022-2873} - net: dropreason: add SKB_DROP_REASON_FRAG_TOO_FAR (Antoine Tenart) [2155186] - net: dropreason: add SKB_DROP_REASON_FRAG_REASM_TIMEOUT (Antoine Tenart) [2155186] - net: dropreason: add SKB_DROP_REASON_DUP_FRAG (Antoine Tenart) [2155186] - net: dropreason: propagate drop_reason to skb_release_data() (Antoine Tenart) [2155186] - net: dropreason: add SKB_CONSUMED reason (Antoine Tenart) [2155186] - ipv4: remove redundant null pointer check before kfree_skb (Antoine Tenart) [2155186]- turbostat: Bring code up-to-date with upstream (Prarit Bhargava) [2117769] - tools/power turbostat: Enable accumulate RAPL display (Prarit Bhargava) [2117769] - tools/power turbostat: version 2022.07.28 (Prarit Bhargava) [2117769] - tools/power turbostat: do not decode ACC for ICX and SPR (Prarit Bhargava) [2117769] - tools/power turbostat: fix SPR PC6 limits (Prarit Bhargava) [2117769] - tools/power turbostat: cleanup 'automatic_cstate_conversion_probe()' (Prarit Bhargava) [2117769] - tools/power turbostat: separate SPR from ICX (Prarit Bhargava) [2117769] - tools/power turbosstat: fix comment (Prarit Bhargava) [2117769] - tools/power turbostat: Support RAPTORLAKE P (Prarit Bhargava) [2117769] - tools/power turbostat: add support for ALDERLAKE_N (Prarit Bhargava) [2117769] - tools/power turbostat: dump secondary Turbo-Ratio-Limit (Prarit Bhargava) [2117769] - tools/power turbostat: simplify dump_turbo_ratio_limits() (Prarit Bhargava) [2117769] - tools/power turbostat: dump CPUID.7.EDX.Hybrid (Prarit Bhargava) [2117769] - tools/power turbostat: update turbostat.8 (Prarit Bhargava) [2117769] - tools/power turbostat: Show uncore frequency (Prarit Bhargava) [2117769] - tools/power turbostat: Fix file pointer leak (Prarit Bhargava) [2117769] - tools/power turbostat: replace strncmp with single character compare (Prarit Bhargava) [2117769] - tools/power turbostat: print the kernel boot commandline (Prarit Bhargava) [2117769] - tools/power turbostat: Introduce support for RaptorLake (Prarit Bhargava) [2117769] - tools/power turbostat: version 2022.04.16 (Prarit Bhargava) [2117769] - tools/power turbostat: No build warnings with -Wextra (Prarit Bhargava) [2117769] - tools/power turbostat: be more useful as non-root (Prarit Bhargava) [2117769] - tools/power turbostat: fix ICX DRAM power numbers (Prarit Bhargava) [2117769] - tools/power turbostat: Support thermal throttle count print (Prarit Bhargava) [2117769] - tools/power turbostat: Allow printing header every N iterations (Prarit Bhargava) [2117769] - tools/power turbostat: Allow -e for all names. (Prarit Bhargava) [2117769] - tools/power turbostat: print power values upto three decimal (Prarit Bhargava) [2117769] - tools/power turbostat: Add Power Limit4 support (Prarit Bhargava) [2117769] - tools/power turbostat: fix dump for AMD cpus (Prarit Bhargava) [2117769] - tools/power turbostat: tweak --show and --hide capability (Prarit Bhargava) [2117769] - NFSv4: Retry LOCK on OLD_STATEID during delegation return (Benjamin Coddington) [2137826] - KVM: s390: pv: don't allow userspace to set the clock under PV (Tobias Huschle) [2154284] - net: mana: Fix race on per-CQ variable napi work_done (Emanuele Giuseppe Esposito) [2151722] - powercap: intel_rapl: support new layout of Psys PowerLimit Register on SPR (Prarit Bhargava) [2106143] - ceph: choose auth MDS for getxattr with the Xs caps (Milind Changire) [2126703] - ceph: try to choose the auth MDS if possible for getattr (Milind Changire) [2126703] - ceph: convert to generic_file_llseek (Milind Changire) [2126707] - ceph: don't leak snap_rwsem in handle_cap_grant (Milind Changire) [2126706] - ceph: prevent a client from exceeding the MDS maximum xattr size (Milind Changire) [2126704] - ceph: add session already open notify support (Milind Changire) [2126701] - ceph: use correct index when encoding client supported features (Milind Changire) [2143875] - ceph: switch TASK_INTERRUPTIBLE to TASK_KILLABLE (Milind Changire) [2126700] - ceph: allow ceph.dir.rctime xattr to be updatable (Milind Changire) [2126699] - ipv6: Use ipv6_only_sock() helper in condition. (Izabela Bakollari) [2144855] - ipv6: Remove __ipv6_only_sock(). (Izabela Bakollari) [2144855] - redhat/configs: Switch CONFIG_X86_AMD_PSTATE to built-in (Prarit Bhargava) [2150424] - Documentation: add amd-pstate kernel command line options (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: add amd-pstate driver parameter for mode selection (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: change amd-pstate driver to be built-in type (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: cpufreq: amd-pstate: reset MSR_AMD_PERF_CTL register at init (Prarit Bhargava) [2150424] - scsi: target: iscsi: Fix a race condition between login_work and the login thread (Maurizio Lombardi) [2153832] - virtio_console: Introduce an ID allocator for virtual console numbers (Cédric Le Goater) [2072437] - blk-throttle: fix that io throttle can only work for single bio (Ming Lei) [2088193] - scsi: zfcp: Fix double free of FSF request when qdio send fails (Tobias Huschle) [2155157] - scsi: qla2xxx: Fix crash when I/O abort times out (Nilesh Javali) [2115820] - perf trace: Fix SIGSEGV when processing syscall args (Michael Petlan) [2145089] - config: mhi: set CONFIG_MHI_BUS_EP to disabled (Íñigo Huguet) [2136123] - config: rtw89: set CONFIG_RTW89_8852C to disabled (Íñigo Huguet) [2136123] - wifi: ath11k: avoid deadlock during regulatory update in ath11k_regd_update() (Íñigo Huguet) [2136123 2139481] - wifi: mac80211: mlme: Fix double unlock on assoc success handling (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: Fix missing unlock on beacon RX (Íñigo Huguet) [2136123] - wifi: mac80211: fix memory corruption in minstrel_ht_update_rates() (Íñigo Huguet) [2136123] - wifi: mac80211: fix regression with non-QoS drivers (Íñigo Huguet) [2136123] - wifi: mac80211: ensure vif queues are operational after start (Íñigo Huguet) [2136123] - wifi: mac80211: don't start TX with fq->lock to fix deadlock (Íñigo Huguet) [2136123] - wifi: cfg80211: fix MCS divisor value (Íñigo Huguet) [2136123] - wifi: mt76: fix 5 GHz connection regression on mt76x0/mt76x2 (Íñigo Huguet) [2136123] - wifi: mt76: fix reading current per-tid starting sequence number for aggregation (Íñigo Huguet) [2136123] - wifi: iwlwifi: Mark IWLMEI as broken (Íñigo Huguet) [2136123] - wifi: iwlwifi: don't spam logs with NSS>2 messages (Íñigo Huguet) [2136123] - wifi: use struct_group to copy addresses (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: check length for virtio packets (Íñigo Huguet) [2136123] - wifi: mac80211: fix locking in auth/assoc timeout (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: release deflink channel in error case (Íñigo Huguet) [2136123] - wifi: mac80211: fix link warning in RX agg timer expiry (Íñigo Huguet) [2136123] - bus: mhi: host: Fix up null pointer access in mhi_irq_handler (Íñigo Huguet) [2136123] - net: Use u64_stats_fetch_begin_irq() for stats fetch. (Íñigo Huguet) [2136123] - wifi: mt76: mt7921e: fix crash in chip reset fail (Íñigo Huguet) [2136123] - wifi: mac80211: potential NULL dereference in ieee80211_tx_control_port() (Íñigo Huguet) [2136123] - wifi: cfg80211: debugfs: fix return type in ht40allow_map_read() (Íñigo Huguet) [2136123] - wifi: mac80211: Don't finalize CSA in IBSS mode if state is disconnected (Íñigo Huguet) [2136123] - wifi: mac80211: fix possible leak in ieee80211_tx_control_port() (Íñigo Huguet) [2136123] - wifi: mac80211: always free sta in __sta_info_alloc in case of error (Íñigo Huguet) [2136123] - wifi: mac80211: Fix UAF in ieee80211_scan_rx() (Íñigo Huguet) [2136123] - net: qrtr: start MHI channel after endpoit creation (Íñigo Huguet) [2136123] - wifi: cfg80211: Fix validating BSS pointers in __cfg80211_connect_result (Íñigo Huguet) [2136123] - wifi: rtw88: check the return value of alloc_workqueue() (Íñigo Huguet) [2136123] - wifi: rtw89: 8852a: adjust IMR for SER L1 (Íñigo Huguet) [2136123] - wifi: rtw89: 8852a: update RF radio A/B R56 (Íñigo Huguet) [2136123] - wifi: brcmfmac: prevent double-free on hardware-reset (Íñigo Huguet) [2136123] - wifi: brcmfmac: support brcm,ccode-map-trivial DT property (Íñigo Huguet) [2136123] - wifi: brcmfmac: Replace default (not configured) MAC with a random MAC (Íñigo Huguet) [2136123] - wifi: brcmfmac: Add brcmf_c_set_cur_etheraddr() helper (Íñigo Huguet) [2136123] - wifi: brcmfmac: Remove #ifdef guards for PM related functions (Íñigo Huguet) [2136123] - wifi: brcmfmac: use strreplace() in brcmf_of_probe() (Íñigo Huguet) [2136123] - wifi: rtl8xxxu: Fix the error handling of the probe function (Íñigo Huguet) [2136123] - wifi: mwifiex: clean up one inconsistent indenting (Íñigo Huguet) [2136123] - wifi: rtlwifi: Remove duplicate word and Fix typo (Íñigo Huguet) [2136123] - wifi: mwifiex: Fix comment typo (Íñigo Huguet) [2136123] - wifi: iwlwifi: mvm: fix clang -Wformat warnings (Íñigo Huguet) [2136123] - Revert "ath11k: add support for hardware rfkill for QCA6390" (Íñigo Huguet) [2136123] - wifi: ath11k: Fix register write failure on QCN9074 (Íñigo Huguet) [2136123] - wifi: mac80211: fix link data leak (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix disassoc with MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add macros to loop over active links (Íñigo Huguet) [2136123] - wifi: mac80211: remove erroneous sband/link validation (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: transmit assoc frame with address translation (Íñigo Huguet) [2136123] - wifi: mac80211: verify link addresses are different (Íñigo Huguet) [2136123] - wifi: mac80211: rx: track link in RX data (Íñigo Huguet) [2136123] - wifi: mac80211: optionally implement MLO multicast TX (Íñigo Huguet) [2136123] - wifi: mac80211: expand ieee80211_mgmt_tx() for MLO (Íñigo Huguet) [2136123] - wifi: nl80211: add MLO link ID to the NL80211_CMD_FRAME TX API (Íñigo Huguet) [2136123] - wifi: mac80211: report link ID to cfg80211 on mgmt RX (Íñigo Huguet) [2136123] - wifi: cfg80211: report link ID in NL80211_CMD_FRAME (Íñigo Huguet) [2136123] - wifi: mac80211: add hardware timestamps for RX and TX (Íñigo Huguet) [2136123] - wifi: cfg80211: add hardware timestamps to frame RX info (Íñigo Huguet) [2136123] - wifi: cfg80211/nl80211: move rx management data into a struct (Íñigo Huguet) [2136123] - wifi: cfg80211: add a function for reporting TX status with hardware timestamps (Íñigo Huguet) [2136123] - wifi: nl80211: add RX and TX timestamp attributes (Íñigo Huguet) [2136123] - nl80211: document uapi for CMD_FRAME_WAIT_CANCEL (Íñigo Huguet) [2136123] - wifi: ieee80211: add helper functions for detecting TM/FTM frames (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: handle links for wmediumd/virtio (Íñigo Huguet) [2136123] - wifi: mac80211: sta_info: fix link_sta insertion (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix link_sta setup (Íñigo Huguet) [2136123] - wifi: nl80211/mac80211: clarify link ID in control port TX (Íñigo Huguet) [2136123] - wifi: mac80211: return error from control port TX for drops (Íñigo Huguet) [2136123] - wifi: nl80211: require MLD address on link STA add/modify (Íñigo Huguet) [2136123] - wifi: mac80211: more station handling sanity checks (Íñigo Huguet) [2136123] - wifi: mac80211: fix link sta hash table handling (Íñigo Huguet) [2136123] - wifi: mac80211: validate link address doesn't change (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: set sta.mlo to mlo state (Íñigo Huguet) [2136123] - wifi: mac80211: fast-xmit: handle non-MLO clients (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix address translation for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: fix RX MLD address translation (Íñigo Huguet) [2136123] - wifi: mac80211: fix NULL pointer deref with non-MLD STA (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix override calculation (Íñigo Huguet) [2136123] - wifi: mac80211: tx: use AP address in some places for MLO (Íñigo Huguet) [2136123] - net: add missing includes and forward declarations under net/ (Íñigo Huguet) [2136123] - wifi: rtl8192se: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: rtlwifi: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: rt2x00: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: brcmsmac: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: brcmfmac: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: mac80211: do not abuse fq.lock in ieee80211_do_stop() (Íñigo Huguet) [2136123] - wifi: mt7601u: fix clang -Wformat warning (Íñigo Huguet) [2136123] - wifi: mt7601u: eeprom: fix clang -Wformat warning (Íñigo Huguet) [2136123] - wifi: ath: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: ath11k: mac: fix long line (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: set sta.mlo correctly (Íñigo Huguet) [2136123] - wifi: mac80211: remove stray printk (Íñigo Huguet) [2136123] - wifi: mac80211: support MLO authentication/association with one link (Íñigo Huguet) [2136123] - wifi: mac80211: add API to parse multi-link element (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix TX link selection (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: use MLO link ID for TX (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: do rc update per link (Íñigo Huguet) [2136123] - wifi: mac80211: do link->MLD address translation on RX (Íñigo Huguet) [2136123] - wifi: mac80211: select link when transmitting to non-MLO stations (Íñigo Huguet) [2136123] - wifi: mac80211: fix up link station creation/insertion (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: implement sta_state for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: limit A-MSDU subframes for client too (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor ieee80211_set_associated() (Íñigo Huguet) [2136123] - wifi: cfg80211: add cfg80211_get_iftype_ext_capa() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: look up beacon elems only if needed (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc link setup (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: remove address arg to ieee80211_mark_sta_auth() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc success handling (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor ieee80211_prep_channel() a bit (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc req element building (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: switch some things back to deflink (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: change flags in ieee80211_determine_chantype() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: shift some code around (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor link station setup (Íñigo Huguet) [2136123] - wifi: mac80211: move IEEE80211_SDATA_OPERATING_GMODE to link (Íñigo Huguet) [2136123] - wifi: mac80211: make ieee80211_check_rate_mask() link-aware (Íñigo Huguet) [2136123] - wifi: mac80211: add multi-link element to AUTH frames (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: clean up supported channels element code (Íñigo Huguet) [2136123] - wifi: mac80211: release channel context on link stop (Íñigo Huguet) [2136123] - wifi: mac80211: prohibit DEAUTH_NEED_MGD_TX_PREP in MLO (Íñigo Huguet) [2136123] - wifi: nl80211: fix some attribute policy entries (Íñigo Huguet) [2136123] - wifi: nl80211: reject fragmented and non-inheritance elements (Íñigo Huguet) [2136123] - wifi: nl80211: reject link specific elements on assoc link (Íñigo Huguet) [2136123] - wifi: cfg80211: set country_elem to NULL (Íñigo Huguet) [2136123] - wifi: mac80211: remove link_id parameter from link_info_changed() (Íñigo Huguet) [2136123] - wifi: mac80211: replace link_id with link_conf in switch/(un)assign_vif_chanctx() (Íñigo Huguet) [2136123] - wifi: nl80211: advertise MLO support (Íñigo Huguet) [2136123] - wifi: mac80211: Support multi link in ieee80211_recalc_min_chandef() (Íñigo Huguet) [2136123] - wifi: mac80211: don't check carrier in chanctx code (Íñigo Huguet) [2136123] - wifi: nl80211: allow link ID in set_wiphy with frequency (Íñigo Huguet) [2136123] - wifi: mac80211: Allow EAPOL tx from specific link (Íñigo Huguet) [2136123] - wifi: mac80211: Allow EAPOL frames from link addresses (Íñigo Huguet) [2136123] - wifi: cfg80211/mac80211: Support control port TX from specific link (Íñigo Huguet) [2136123] - wifi: nl80211: Support MLD parameters in nl80211_set_station() (Íñigo Huguet) [2136123] - wifi: nl80211: check MLO support in authenticate (Íñigo Huguet) [2136123] - wifi: mac80211: add a helper to fragment an element (Íñigo Huguet) [2136123] - wifi: mac80211: skip rate statistics for MLD STAs (Íñigo Huguet) [2136123] - wifi: nl80211: set BSS to NULL if IS_ERR() (Íñigo Huguet) [2136123] - wifi: nl80211: add EML/MLD capabilities to per-iftype capabilities (Íñigo Huguet) [2136123] - wifi: nl80211: better validate link ID for stations (Íñigo Huguet) [2136123] - wifi: mac80211: fix link manipulation (Íñigo Huguet) [2136123] - wifi: mac80211: tighten locking check (Íñigo Huguet) [2136123] - wifi: cfg80211: clean up links appropriately (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: simplify adding ht/vht/he/eht elements (Íñigo Huguet) [2136123] - wifi: mac80211: refactor adding custom elements (Íñigo Huguet) [2136123] - wifi: mac80211: refactor adding rates to assoc request (Íñigo Huguet) [2136123] - wifi: mac80211: use only channel width in ieee80211_parse_bitrates() (Íñigo Huguet) [2136123] - wifi: cfg80211: add ieee80211_chanwidth_rate_flags() (Íñigo Huguet) [2136123] - wifi: mac80211: remove redundant condition (Íñigo Huguet) [2136123] - wifi: mac80211: don't set link address for station (Íñigo Huguet) [2136123] - wifi: mac80211: fix multi-BSSID element parsing (Íñigo Huguet) [2136123] - wifi: mac80211: move tdls_chan_switch_prohibited to link data (Íñigo Huguet) [2136123] - wifi: mac80211: don't re-parse elems in ieee80211_assoc_success() (Íñigo Huguet) [2136123] - wifi: mac80211: replace link_id with link_conf in start/stop_ap() (Íñigo Huguet) [2136123] - wifi: mac80211: refactor elements parsing with parameter struct (Íñigo Huguet) [2136123] - wifi: cfg80211: extend cfg80211_rx_assoc_resp() for MLO (Íñigo Huguet) [2136123] - wifi: cfg80211: put cfg80211_rx_assoc_resp() arguments into a struct (Íñigo Huguet) [2136123] - wifi: cfg80211: adjust assoc comeback for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: unify assoc data event sending (Íñigo Huguet) [2136123] - wifi: cfg80211: prepare association failure APIs for MLO (Íñigo Huguet) [2136123] - wifi: cfg80211: remove BSS pointer from cfg80211_disassoc_request (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: use correct link_sta (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: remove sta argument from ieee80211_config_bw (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: use ieee80211_get_link_sband() (Íñigo Huguet) [2136123] - wifi: mac80211: split IEEE80211_STA_DISABLE_WMM to link data (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: first adjustments for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: do IEEE80211_STA_RESET_SIGNAL_AVE per link (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: track AP (MLD) address separately (Íñigo Huguet) [2136123] - wifi: mac80211: remove unused bssid variable (Íñigo Huguet) [2136123] - wifi: mac80211: change QoS settings API to take link into account (Íñigo Huguet) [2136123] - wifi: mac80211: expect powersave handling in driver for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: move ps setting to vif config (Íñigo Huguet) [2136123] - wifi: mac80211: provide link ID in link_conf (Íñigo Huguet) [2136123] - wifi: mac80211: set up/tear down client vif links properly (Íñigo Huguet) [2136123] - wifi: mac80211: move ieee80211_request_smps_mgd_work (Íñigo Huguet) [2136123] - wifi: nl80211: acquire wdev mutex for dump_survey (Íñigo Huguet) [2136123] - wifi: mac80211: fix key lookup (Íñigo Huguet) [2136123] - wifi: mac80211: separate out connection downgrade flags (Íñigo Huguet) [2136123] - wifi: mac80211: Align with Draft P802.11be_D2.0 (Íñigo Huguet) [2136123] - wifi: mac80211: Align with Draft P802.11be_D1.5 (Íñigo Huguet) [2136123] - wifi: mac80211: skip powersave recalc if driver SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2136123] - wifi: mac80211: debug: omit link if non-MLO connection (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Ack link addressed frames (Íñigo Huguet) [2136123] - wifi: cfg80211: drop BSS elements from assoc trace for now (Íñigo Huguet) [2136123] - wifi: cfg80211: make cfg80211_auth_request::key_idx signed (Íñigo Huguet) [2136123] - wifi: nl80211: enable setting the link address at new station (Íñigo Huguet) [2136123] - wifi: mac80211: RCU-ify link/link_conf pointers (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for station APIs (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for channel switch APIs (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex in add/mod/del link station (Íñigo Huguet) [2136123] - wifi: mac80211: implement callbacks for _link_station (Íñigo Huguet) [2136123] - wifi: cfg80211/mac80211: separate link params from station params (Íñigo Huguet) [2136123] - wifi: cfg80211: add API to add/modify/remove a link station (Íñigo Huguet) [2136123] - wifi: mac80211: add an ieee80211_get_link_sband (Íñigo Huguet) [2136123] - wifi: mac80211: Remove AP SMPS leftovers (Íñigo Huguet) [2136123] - wifi: cfg80211: Allow MLO TX with link source address (Íñigo Huguet) [2136123] - wifi: mac80211: Consider MLO links in offchannel logic (Íñigo Huguet) [2136123] - wifi: mac80211: rx: accept link-addressed frames (Íñigo Huguet) [2136123] - wifi: mac80211: consistently use sdata_dereference() (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Support link channel matching on rx (Íñigo Huguet) [2136123] - wifi: mac80211: fix mesh airtime link metric estimating (Íñigo Huguet) [2136123] - wifi: mac80211: make 4addr null frames using min_rate for WDS (Íñigo Huguet) [2136123] - wifi: cfg80211: use strscpy to replace strlcpy (Íñigo Huguet) [2136123] - wifi: mac80211: exclude multicast packets from AQL pending airtime (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: use 32-bit skb cookie (Íñigo Huguet) [2136123] - mt76: mt7921: Let PCI core handle power state and use pm_sleep_ptr() (Íñigo Huguet) [2136123] - mediatek: mt76: mac80211: Fix missing of_node_put() in mt76_led_init() (Íñigo Huguet) [2136123] - mt76: get rid of mt76_wcid_hw routine (Íñigo Huguet) [2136123] - mt76: convert MT_TX_HW_QUEUE_EXT_PHY to MT_TX_HW_QUEUE_PHY (Íñigo Huguet) [2136123] - mt76: add phy_idx to mt76_wcid (Íñigo Huguet) [2136123] - mt76: introduce phys array in mt76_dev structure (Íñigo Huguet) [2136123] - mt76: add phy_idx in mt76_rx_status (Íñigo Huguet) [2136123] - mt76: introduce MT_RXQ_BAND2 and MT_RXQ_BAND2_WA in mt76_rxq_id (Íñigo Huguet) [2136123] - mt76: add len parameter to __mt76_mcu_msg_alloc signature (Íñigo Huguet) [2136123] - mt76: mt7915 add ht mpdu density (Íñigo Huguet) [2136123] - mt76: mt7921: reduce the mutex lock scope during reset (Íñigo Huguet) [2136123] - mt76: mt7921: reduce log severity levels for informative messages (Íñigo Huguet) [2136123] - mt76: connac: move tx initialization/cleanup in mt76_connac module (Íñigo Huguet) [2136123] - mt76: mt7921: make mt7921_pci_driver static (Íñigo Huguet) [2136123] - mt76: mt7921: enable HW beacon filter in the initialization stage (Íñigo Huguet) [2136123] - mt76: mt7921: enable HW beacon filter not depending on PM flag (Íñigo Huguet) [2136123] - mt76: remove q->qid (Íñigo Huguet) [2136123] - mt76: do not use skb_set_queue_mapping for internal purposes (Íñigo Huguet) [2136123] - mt76: pass original queue id from __mt76_tx_queue_skb to the driver (Íñigo Huguet) [2136123] - mt76: allow receiving frames with invalid CCMP PN via monitor interfaces (Íñigo Huguet) [2136123] - mt76: mt76x02: improve reliability of the beacon hang check (Íñigo Huguet) [2136123] - mt76: mt7615: add sta_rec with EXTRA_INFO_NEW for the first time only (Íñigo Huguet) [2136123] - mt76: mt7915: update the maximum size of beacon offload (Íñigo Huguet) [2136123] - mt76: do not check the ccmp pn for ONLY_MONITOR frame (Íñigo Huguet) [2136123] - mt76: mt7915: add sta_rec with EXTRA_INFO_NEW for the first time only (Íñigo Huguet) [2136123] - mt76: mt7915: update mpdu density in 6g capability (Íñigo Huguet) [2136123] - mt76: mt7915: do not copy ieee80211_ops pointer in mt7915_mmio_probe (Íñigo Huguet) [2136123] - mt76: mt7915: disable UL MU-MIMO for mt7915 (Íñigo Huguet) [2136123] - mt76: move mt76_connac2_mcu_fill_message in mt76_connac module (Íñigo Huguet) [2136123] - mt76: move mcu_txd/mcu_rxd structures in shared code (Íñigo Huguet) [2136123] - mt76: mt7915: rely on mt76_connac_tx_free (Íñigo Huguet) [2136123] - mt76: connac: move mt7615_txp_skb_unmap in common code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_write_hw_txp in shared code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_tx_complete_skb in shared code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_tx_free in shared code (Íñigo Huguet) [2136123] - mt76: move mt7615_txp_ptr in mt76_connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_fw_txp in common module (Íñigo Huguet) [2136123] - mt76: mt7915: get rid of unnecessary new line in mt7915_mac_write_txwi (Íñigo Huguet) [2136123] - mt76: mt7921s: remove unnecessary goto in mt7921s_mcu_drv_pmctrl (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_mac_fill_rx_rate in connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_reverse_frag0_hdr_trans in mt76-connac module (Íñigo Huguet) [2136123] - mt76: connac: move HE radiotap parsing in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: fix command timeout in AP stop period (Íñigo Huguet) [2136123] - mt76: mt7921: not support beacon offload disable command (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_mac_add_txs_skb in connac module (Íñigo Huguet) [2136123] - mt76: connac: move connac2_mac_write_txwi in mt76_connac module (Íñigo Huguet) [2136123] - mt76: connac: move mac connac2 defs in mt76_connac2_mac.h (Íñigo Huguet) [2136123] - mt76: mt7915: rely on mt76_dev in mt7915_mac_write_txwi signature (Íñigo Huguet) [2136123] - mt76: mt7921: rely on mt76_dev in mt7921_mac_write_txwi signature (Íñigo Huguet) [2136123] - mt76: enable the VHT extended NSS BW feature (Íñigo Huguet) [2136123] - mt76: mt7663: rely on mt76_connac2_fw_trailer (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_load_patch in connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_load_ram in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: move fw toggle in mt7921_load_firmware (Íñigo Huguet) [2136123] - mt76: connac: move shared fw structures in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: get rid of mt7921_mcu_exit (Íñigo Huguet) [2136123] - mt76: mt7921: add missing bh-disable around rx napi schedule (Íñigo Huguet) [2136123] - mt76: mt7615: add missing bh-disable around rx napi schedule (Íñigo Huguet) [2136123] - mt76: mt7915: add missing bh-disable around tx napi enable/schedule (Íñigo Huguet) [2136123] - mt76: mt7921: add PATCH_FINISH_REQ cmd response handling (Íñigo Huguet) [2136123] - mt76: add DBDC rxq handlings into mac_reset_work (Íñigo Huguet) [2136123] - mt76: mt7915: add more ethtool stats (Íñigo Huguet) [2136123] - mt76: mt7921: introduce ACPI SAR config in tx power (Íñigo Huguet) [2136123] - mt76: mt7921: introduce ACPI SAR support (Íñigo Huguet) [2136123] - mt76: add 6 GHz band support in mt76_sar_freq_ranges (Íñigo Huguet) [2136123] - mt76: mt7915: fix endian bug in mt7915_rf_regval_set() (Íñigo Huguet) [2136123] - mt76: mt76x02u: fix possible memory leak in __mt76x02u_mcu_send_msg (Íñigo Huguet) [2136123] - mt76: mt7915: fix endianness in mt7915_rf_regval_get (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: add back erroneously removed cast (Íñigo Huguet) [2136123] - wifi: mac80211: fix queue selection for mesh/OCB interfaces (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix race condition in pending packet (Íñigo Huguet) [2136123] - wifi: mac80211: Use the bitmap API to allocate bitmaps (Íñigo Huguet) [2136123] - wifi: mac80211: fix center freq calculation in ieee80211_chandef_downgrade (Íñigo Huguet) [2136123] - wifi: nl80211: fix sending link ID info of associated BSS (Íñigo Huguet) [2136123] - wifi: cfg80211: fix a comment in cfg80211_mlme_mgmt_tx() (Íñigo Huguet) [2136123] - wifi: nl80211: Fix reading NL80211_ATTR_MLO_LINK_ID in nl80211_pre_doit (Íñigo Huguet) [2136123] - bus: mhi: ep: Check dev_set_name() return value (Íñigo Huguet) [2136123] - ath9k: remove unexpected words "the" in comments (Íñigo Huguet) [2136123] - ath11k: Fix typo in comments (Íñigo Huguet) [2136123] - wifi: nl80211: retrieve EHT related elements in AP mode (Íñigo Huguet) [2136123] - wifi: cfg80211: Increase akm_suites array size in cfg80211_crypto_settings (Íñigo Huguet) [2136123] - wifi: cfg80211: remove chandef check in cfg80211_cac_event() (Íñigo Huguet) [2136123] - wifi: nl80211: relax wdev mutex check in wdev_chandef() (Íñigo Huguet) [2136123] - wifi: nl80211: acquire wdev mutex earlier in start_ap (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for tid config (Íñigo Huguet) [2136123] - wifi: cfg80211: handle IBSS in channel switch (Íñigo Huguet) [2136123] - wifi: mac80211: properly skip link info driver update (Íñigo Huguet) [2136123] - wifi: mac80211: only accumulate airtime deficit for active clients (Íñigo Huguet) [2136123] - wifi: mac80211: add debugfs file to display per-phy AQL pending airtime (Íñigo Huguet) [2136123] - wifi: mac80211: add a per-PHY AQL limit to improve fairness (Íñigo Huguet) [2136123] - wifi: mac80211: keep recently active tx queues in scheduling list (Íñigo Huguet) [2136123] - wifi: mac80211: consider aql_tx_pending when checking airtime deficit (Íñigo Huguet) [2136123] - wifi: mac80211: make sta airtime deficit field s32 instead of s64 (Íñigo Huguet) [2136123] - wifi: mac80211: fix a kernel-doc complaint (Íñigo Huguet) [2136123] - wifi: cfg80211: remove redundant documentation (Íñigo Huguet) [2136123] - wifi: mac80211: sta_info: fix a missing kernel-doc struct element (Íñigo Huguet) [2136123] - wifi: mac80211: add a missing comma at kernel-doc markup (Íñigo Huguet) [2136123] - wifi: cfg80211: fix kernel-doc warnings all over the file (Íñigo Huguet) [2136123] - wifi: ieee80211: s1g action frames are not robust (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add another Foxconn T99W175 (Íñigo Huguet) [2136123] - wifi: cfg80211: Allow P2P client interface to indicate port authorization (Íñigo Huguet) [2136123] - wifi: mac80211: do not wake queues on a vif that is being stopped (Íñigo Huguet) [2136123] - wifi: mac80211: check skb_shared in ieee80211_8023_xmit() (Íñigo Huguet) [2136123] - wifi: mac80211: add gfp_t parameter to ieeee80211_obss_color_collision_notify (Íñigo Huguet) [2136123] - bus: mhi: host: Move IRQ allocation to controller registration phase (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add Cinterion MV31-W with new baseline (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add support for Quectel EM120 FCCL modem (Íñigo Huguet) [2136123] - wifi: rtw89: disable invalid phy reports for all ICs (Íñigo Huguet) [2136123] - wifi: rtw89: pci: fix PCI doesn't reclaim TX BD properly (Íñigo Huguet) [2136123] - wifi: rtw89: fix long RX latency in low power mode (Íñigo Huguet) [2136123] - wifi: rtw89: drop invalid TX rate report of legacy rate (Íñigo Huguet) [2136123] - wifi: rtw89: add UNEXP debug mask to keep monitor messages unexpected to happen frequently (Íñigo Huguet) [2136123] - wifi: rtw89: enable VO TX AMPDU (Íñigo Huguet) [2136123] - wifi: rtw89: fix potential TX stuck (Íñigo Huguet) [2136123] - wifi: rtw89: support TDLS (Íñigo Huguet) [2136123] - wifi: rtw89: allocate BSSID CAM per TDLS peer (Íñigo Huguet) [2136123] - wifi: rtw89: separate BSSID CAM operations (Íñigo Huguet) [2136123] - wifi: rtw89: allocate address CAM and MAC ID to TDLS peer (Íñigo Huguet) [2136123] - cfg80211: Indicate MLO connection info in connect and roam callbacks (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: print the link id (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: support creating MLO-capable radios (Íñigo Huguet) [2136123] - wifi: nl80211: expose link ID for associated BSSes (Íñigo Huguet) [2136123] - wifi: nl80211: expose link information for interfaces (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: send a beacon per link (Íñigo Huguet) [2136123] - wifi: mac80211: set STA deflink addresses (Íñigo Huguet) [2136123] - wifi: mac80211: maintain link-sta hash table (Íñigo Huguet) [2136123] - wifi: mac80211: RCU-ify link STA pointers (Íñigo Huguet) [2136123] - wifi: mac80211: ethtool: use deflink for now (Íñigo Huguet) [2136123] - wifi: mac80211: move ieee80211_bssid_match() function (Íñigo Huguet) [2136123] - wifi: mac80211: return a beacon for a specific link (Íñigo Huguet) [2136123] - wifi: mac80211: pass the link id in start/stop ap (Íñigo Huguet) [2136123] - wifi: mac80211: use link in start/stop ap (Íñigo Huguet) [2136123] - wifi: mac80211: implement add/del interface link callbacks (Íñigo Huguet) [2136123] - wifi: cfg80211: add optional link add/remove callbacks (Íñigo Huguet) [2136123] - wifi: cfg80211: sort trace.h (Íñigo Huguet) [2136123] - wifi: mac80211: add sta link addition/removal (Íñigo Huguet) [2136123] - wifi: mac80211: add MLO link ID to TX frame metadata (Íñigo Huguet) [2136123] - wifi: mac80211: remove band from TX info in MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add vif link addition/removal (Íñigo Huguet) [2136123] - wifi: nl80211: support MLO in auth/assoc (Íñigo Huguet) [2136123] - wifi: mac80211: ignore IEEE80211_CONF_CHANGE_SMPS in chanctx mode (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: split bss_info_changed to vif/link info_changed (Íñigo Huguet) [2136123] - wifi: cfg80211: simplify cfg80211_mlme_auth() prototype (Íñigo Huguet) [2136123] - wifi: ieee80211: add definitions for multi-link element (Íñigo Huguet) [2136123] - wifi: nl80211: refactor BSS lookup in nl80211_associate() (Íñigo Huguet) [2136123] - wifi: cfg80211: mlme: get BSS entry outside cfg80211_mlme_assoc() (Íñigo Huguet) [2136123] - wifi: mac80211: tx: simplify chanctx_conf handling (Íñigo Huguet) [2136123] - wifi: mac80211: status: look up band only where needed (Íñigo Huguet) [2136123] - wifi: mac80211: sort trace.h file (Íñigo Huguet) [2136123] - wifi: mac80211: correct link config data in tracing (Íñigo Huguet) [2136123] - wifi: mac80211: make ieee80211_he_cap_ie_to_sta_he_cap() MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: make some SMPS code MLD-aware (Íñigo Huguet) [2136123] - wifi: mac80211: HT: make ieee80211_ht_cap_ie_to_sta_ht_cap() MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: add link_id to eht.c code for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add link_id to vht.c code for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some link setup code (Íñigo Huguet) [2136123] - wifi: mac80211: validate some driver features for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: use IEEE80211_MLD_MAX_NUM_LINKS (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some sta_info link handling (Íñigo Huguet) [2136123] - wifi: mac80211: remove sta_info_tx_streams() (Íñigo Huguet) [2136123] - wifi: mac80211: make channel context code MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: pass link ID where already present (Íñigo Huguet) [2136123] - wifi: mac80211: add per-link configuration pointer (Íñigo Huguet) [2136123] - wifi: mac80211: split bss_info_changed method (Íñigo Huguet) [2136123] - mac80211: fix maybe-unused warning (Íñigo Huguet) [2136123] - wifi: mac80211: reorg some iface data structs for MLD (Íñigo Huguet) [2136123] - wifi: mac80211: move interface config to new struct (Íñigo Huguet) [2136123] - wifi: mac80211: move some future per-link data to bss_conf (Íñigo Huguet) [2136123] - wifi: cfg80211: do some rework towards MLO link APIs (Íñigo Huguet) [2136123] - wifi: mac80211: reject WEP or pairwise keys with key ID > 3 (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Directly use ida_alloc()/free() (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some key code (Íñigo Huguet) [2136123] - wifi: mac80211: remove cipher scheme support (Íñigo Huguet) [2136123] - wifi: nl80211: fix typo in comment (Íñigo Huguet) [2136123] - treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_391.RULE (Íñigo Huguet) [2136123] - rtw88: 8821c: fix access const table of channel parameters (Íñigo Huguet) [2136123] - rtw89: add new state to CFO state machine for UL-OFDMA (Íñigo Huguet) [2136123] - rtw89: 8852c: add trigger frame counter (Íñigo Huguet) [2136123] - ieee80211: add trigger frame definition (Íñigo Huguet) [2136123] - ath10k: fix recently introduced checkpatch warning (Íñigo Huguet) [2136123] - wifi: rtw89: support MULTI_BSSID and correct BSSID mask of H2C (Íñigo Huguet) [2136123] - wifi: ray_cs: Drop useless status variable in parse_addr() (Íñigo Huguet) [2136123] - wifi: ray_cs: Utilize strnlen() in parse_addr() (Íñigo Huguet) [2136123] - wifi: rtw88: use *ph to print small buffer (Íñigo Huguet) [2136123] - ath11k: Fix warnings reported by checkpatch (Íñigo Huguet) [2136123] - ath11k: Fix LDPC config in set_bitrate_mask hook (Íñigo Huguet) [2136123] - wifi: mac80211: fix use-after-free in chanctx code (Íñigo Huguet) [2136123] - ath10k: fix regdomain info of iw reg set/get (Íñigo Huguet) [2136123] - ath11k: support avg signal in station dump (Íñigo Huguet) [2136123] - wifi: rtlwifi: fix error codes in rtl_debugfs_set_write_h2c() (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8821c_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8723d_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8822c_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix sparse warning for rtw8822b_hw_spec (Íñigo Huguet) [2136123] - rtw88: fix null vif pointer when hw_scan fails (Íñigo Huguet) [2136123] - rtw89: sar: adjust and support SAR on 6GHz band (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: re-calibrate RX DCK once thermal changes a lot (Íñigo Huguet) [2136123] - rtw89: pci: handle hardware watchdog timeout interrupt status (Íñigo Huguet) [2136123] - rtw89: fix null vif pointer when hw_scan fails (Íñigo Huguet) [2136123] - rtw89: fix channel inconsistency during hw_scan (Íñigo Huguet) [2136123] - wifi: rtw88: add a work to correct atomic scheduling warning of ::set_tim (Íñigo Huguet) [2136123] - wifi: iwlwifi: pcie: rename CAUSE macro (Íñigo Huguet) [2136123] - wifi: brcmfmac: work around a GCC 12 -Warray-bounds warning (Íñigo Huguet) [2136123] - wifi: iwlwifi: use unsigned to silence a GCC 12 warning (Íñigo Huguet) [2136123] - wifi: rtlwifi: remove always-true condition pointed out by GCC 12 (Íñigo Huguet) [2136123] - wifi: ath9k: silence array-bounds warning on GCC 12 (Íñigo Huguet) [2136123] - ath9k: replace ternary operator with max() (Íñigo Huguet) [2136123] - ath11k: Init hw_params before setting up AHB resources (Íñigo Huguet) [2136123] - ath11k: Fix warning on variable 'sar' dereference before check (Íñigo Huguet) [2136123] - ath10k: fix misreported tx bandwidth for 160Mhz (Íñigo Huguet) [2136123] - ath10k: add encapsulation offloading support (Íñigo Huguet) [2136123] - ath10k: turn rawmode into frame_mode (Íñigo Huguet) [2136123] - ath10k: improve tx status reporting (Íñigo Huguet) [2136123] - ath10k: do not enforce interrupt trigger type (Íñigo Huguet) [2136123] - iwlwifi: mei: fix potential NULL-ptr deref (Íñigo Huguet) [2136123] - iwlwifi: mei: clear the sap data header before sending (Íñigo Huguet) [2136123] - iwlwifi: mvm: remove vif_count (Íñigo Huguet) [2136123] - iwlwifi: mvm: always tell the firmware to accept MCAST frames in BSS (Íñigo Huguet) [2136123] - iwlwifi: mvm: add OTP info in case of init failure (Íñigo Huguet) [2136123] - iwlwifi: mvm: fix assert 1F04 upon reconfig (Íñigo Huguet) [2136123] - iwlwifi: mvm: clean up authorized condition (Íñigo Huguet) [2136123] - iwlwifi: mvm: use NULL instead of ERR_PTR when parsing wowlan status (Íñigo Huguet) [2136123] - iwlwifi: pcie: simplify MSI-X cause mapping (Íñigo Huguet) [2136123] - ath11k: update missing MU-MIMO and OFDMA stats (Íñigo Huguet) [2136123] - rtw89: pci: only mask out INT indicator register for disable interrupt v1 (Íñigo Huguet) [2136123] - rtw89: convert rtw89_band to nl80211_band precisely (Íñigo Huguet) [2136123] - rtw89: 8852c: update txpwr tables to HALRF_027_00_052 (Íñigo Huguet) [2136123] - rtw89: cfo: check mac_id to avoid out-of-bounds (Íñigo Huguet) [2136123] - rtw89: 8852c: set TX antenna path (Íñigo Huguet) [2136123] - rtw89: add ieee80211::sta_rc_update ops (Íñigo Huguet) [2136123] - wireless: Fix Makefile to be in alphabetical order (Íñigo Huguet) [2136123] - mac80211: refactor freeing the next_beacon (Íñigo Huguet) [2136123] - cfg80211: fix kernel-doc for cfg80211_beacon_data (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: support ieee80211_rate_status (Íñigo Huguet) [2136123] - mac80211: extend current rate control tx status API (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: fill all requested rates (Íñigo Huguet) [2136123] - mac80211: disable BSS color collision detection in case of no free colors (Íñigo Huguet) [2136123] - nl80211: Parse NL80211_ATTR_HE_BSS_COLOR as a part of nl80211_parse_beacon (Íñigo Huguet) [2136123] - mac80211: mlme: track assoc_bss/associated separately (Íñigo Huguet) [2136123] - mac80211: remove useless bssid copy (Íñigo Huguet) [2136123] - mac80211: remove unused argument to ieee80211_sta_connection_lost() (Íñigo Huguet) [2136123] - mac80211: mlme: use local SSID copy (Íñigo Huguet) [2136123] - mac80211: use ifmgd->bssid instead of ifmgd->associated->bssid (Íñigo Huguet) [2136123] - mac80211: mlme: move in RSSI reporting code (Íñigo Huguet) [2136123] - mac80211: remove stray multi_sta_back_32bit docs (Íñigo Huguet) [2136123] - mac80211: fix typo in documentation (Íñigo Huguet) [2136123] - mac80211: unify CCMP/GCMP AAD construction (Íñigo Huguet) [2136123] - mt76: mt7921: add ipv6 NS offload support (Íñigo Huguet) [2136123] - mt76: add gfp to mt76_mcu_msg_alloc signature (Íñigo Huguet) [2136123] - mt76: mt7915: add more statistics from fw_util debugfs knobs (Íñigo Huguet) [2136123] - mt76: mt7915: improve error handling for fw_debug knobs (Íñigo Huguet) [2136123] - mt76: mt7615/mt7915: do reset_work with mt76's work queue (Íñigo Huguet) [2136123] - mt76: mt7915: add support for 6G in-band discovery (Íñigo Huguet) [2136123] - mt76: mt7915: add Wireless Ethernet Dispatch support (Íñigo Huguet) [2136123] - net: ethernet: mtk_eth_soc: add support for Wireless Ethernet Dispatch (WED) (Íñigo Huguet) [2136123] - mt76: make number of tokens configurable dynamically (Íñigo Huguet) [2136123] - mt76: add support for overriding the device used for DMA mapping (Íñigo Huguet) [2136123] - mt76: dma: add wrapper macro for accessing queue registers (Íñigo Huguet) [2136123] - mt76: mt7915: move MT_INT_MASK_CSR to init.c (Íñigo Huguet) [2136123] - mt76: mt7915: introduce mt7915_mac_severe_check() (Íñigo Huguet) [2136123] - mt76: mt7915: rework SER debugfs knob (Íñigo Huguet) [2136123] - mt76: mt7915: limit minimum twt duration (Íñigo Huguet) [2136123] - mt76: mt7915: reject duplicated twt flows (Íñigo Huguet) [2136123] - mt76: mt7915: update mt7986 patch in mt7986_wmac_adie_patch_7976() (Íñigo Huguet) [2136123] - mt76: connac: use skb_put_data instead of open coding (Íñigo Huguet) [2136123] - mt76: mt7915: configure soc clocks in mt7986_wmac_init (Íñigo Huguet) [2136123] - mt76: fix encap offload ethernet type check (Íñigo Huguet) [2136123] - mt76: mt7915: disable RX_HDR_TRANS_SHORT (Íñigo Huguet) [2136123] - mt76: mt7603: move spin_lock_bh() to spin_lock() (Íñigo Huguet) [2136123] - mt76: mt7915: add debugfs knob for RF registers read/write (Íñigo Huguet) [2136123] - mt76: mt7921: make read-only array ppet16_ppet8_ru3_ru0 static const (Íñigo Huguet) [2136123] - mt76: mt7915: make read-only array ppet16_ppet8_ru3_ru0 static const (Íñigo Huguet) [2136123] - mt76: mt7915: remove SCS feature (Íñigo Huguet) [2136123] - mt76: fix rx reordering with non explicit / psmp ack policy (Íñigo Huguet) [2136123] - mt76: mt7921: Add AP mode support (Íñigo Huguet) [2136123] - mt76: mt7915: use 0xff to initialize bitrate_mask in mt7915_init_bitrate_mask (Íñigo Huguet) [2136123] - mt76: mt7915: always call mt7915_wfsys_reset() during init (Íñigo Huguet) [2136123] - mt76: mt7921: rely on mt76_dev rxfilter in mt7921_configure_filter (Íñigo Huguet) [2136123] - mt76: mt7921u: add suspend/resume support (Íñigo Huguet) [2136123] - mt76: fix MBSS index condition in DBDC mode (Íñigo Huguet) [2136123] - mt76: fix use-after-free by removing a non-RCU wcid pointer (Íñigo Huguet) [2136123] - mt76: mt7921: accept rx frames with non-standard VHT MCS10-11 (Íñigo Huguet) [2136123] - mt76: mt7915: accept rx frames with non-standard VHT MCS10-11 (Íñigo Huguet) [2136123] - mt76: dma: use kzalloc instead of devm_kzalloc for txwi (Íñigo Huguet) [2136123] - mt76: reduce tx queue lock hold time (Íñigo Huguet) [2136123] - mt76: mt7915: rework hardware/phy initialization (Íñigo Huguet) [2136123] - rtlwifi: Use pr_warn instead of WARN_ONCE (Íñigo Huguet) [2136123] - rtw89: add debug entry to dump BSSID CAM (Íñigo Huguet) [2136123] - rtw89: add debug select to dump MAC pages 0x30 to 0x33 (Íñigo Huguet) [2136123] - rtw89: correct CCA control (Íñigo Huguet) [2136123] - rtw89: correct setting of RX MPDU length (Íñigo Huguet) [2136123] - rtw89: 8852c: add settings to decrease the effect of DC (Íñigo Huguet) [2136123] - brcmfmac: allow setting wlan MAC address using device tree (Íñigo Huguet) [2136123] - ath11k: remove redundant assignment to variables vht_mcs and he_mcs (Íñigo Huguet) [2136123] - ath11k: Reuse the available memory after firmware reload (Íñigo Huguet) [2136123] - ath11k: Designating channel frequency when sending management frames (Íñigo Huguet) [2136123] - ath11k: Implement remain-on-channel support (Íñigo Huguet) [2136123] - ath11k: Handle keepalive during WoWLAN suspend and resume (Íñigo Huguet) [2136123] - bus: mhi: host: Add support for Foxconn T99W373 and T99W368 (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: add Telit FN990 (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: add Telit FN980 v1 hardware revision (Íñigo Huguet) [2136123] - bus: mhi: replace snprintf with sysfs_emit (Íñigo Huguet) [2136123] - rtw88: adjust adaptivity option to 1 (Íñigo Huguet) [2136123] - ath11k: Fix RX de-fragmentation issue on WCN6750 (Íñigo Huguet) [2136123] - ath10k: support bus and device specific API 1 BDF selection (Íñigo Huguet) [2136123] - ath10k: mac: fix too long lines (Íñigo Huguet) [2136123] - ath11k: mac: fix too long line (Íñigo Huguet) [2136123] - mac80211: support disabling EHT mode (Íñigo Huguet) [2136123] - cfg80211: support disabling EHT mode (Íñigo Huguet) [2136123] - mac80211: upgrade passive scan to active scan on DFS channels after beacon rx (Íñigo Huguet) [2136123] - mac80211: tx: delete a redundant if statement in ieee80211_check_fast_xmit() (Íñigo Huguet) [2136123] - mac80211: consider Order bit to fill CCMP AAD (Íñigo Huguet) [2136123] - cfg80211: declare MODULE_FIRMWARE for regulatory.db (Íñigo Huguet) [2136123] - nl80211: rework internal_flags usage (Íñigo Huguet) [2136123] - nl80211: don't hold RTNL in color change request (Íñigo Huguet) [2136123] - cfg80211: remove cfg80211_get_chan_state() (Íñigo Huguet) [2136123] - ath11k: Add support for targets without trustzone (Íñigo Huguet) [2136123] - rtw89: 8852c: add 8852ce to Makefile and Kconfig (Íñigo Huguet) [2136123] - rtw89: 8852c: fix warning of FIELD_PREP() mask type (Íñigo Huguet) [2136123] - rtw89: 8852c: correct register definitions used by 8852c (Íñigo Huguet) [2136123] - rtw89: correct AID settings of beamformee (Íñigo Huguet) [2136123] - rtw89: ps: fine tune polling interval while changing low power mode (Íñigo Huguet) [2136123] - rtw89: 8852c: add basic and remaining chip_info (Íñigo Huguet) [2136123] - rtw89: 8852c: add chip_ops::bb_ctrl_btc_preagc (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: get calibrated channels to notify firmware (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add DPK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add IQK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RX DCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add TSSI (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add LCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add DACK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RFK tables (Íñigo Huguet) [2136123] - rtw88: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2136123] - ath10k: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2136123] - ath11k: Add support for WCN6750 device (Íñigo Huguet) [2136123] - ath11k: Datapath changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: HAL changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add QMI changes for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Fetch device information via QMI for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add register access logic for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add HW params for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Move parameters in bus_params to hw_params (Íñigo Huguet) [2136123] - ath11k: change management tx queue to avoid connection timed out (Íñigo Huguet) [2136123] - ath11k: fix warning of not found station for bssid in message (Íñigo Huguet) [2136123] - rtw88: fix hw scan may cause disconnect issue (Íñigo Huguet) [2136123] - rtw88: fix not disabling beacon filter after disconnection (Íñigo Huguet) [2136123] - rtw88: add HT MPDU density value for each chip (Íñigo Huguet) [2136123] - ath11k: Don't use GFP_KERNEL in atomic context (Íñigo Huguet) [2136123] - ath10k: skip ath10k_halt during suspend for driver state RESTARTING (Íñigo Huguet) [2136123] - rtw89: remove unneeded semicolon (Íñigo Huguet) [2136123] - ath10k: simplify if-if to if-else (Íñigo Huguet) [2136123] - ath11k: read country code from SMBIOS for WCN6855/QCA6390 (Íñigo Huguet) [2136123] - ath11k: disable spectral scan during spectral deinit (Íñigo Huguet) [2136123] - ath11k: Update WBM idle ring HP after FW mode on (Íñigo Huguet) [2136123] - ath11k: WMI changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Do not put HW in DBS mode for WCN6750 (Íñigo Huguet) [2136123] - rtlwifi: btcoex: fix if == else warning (Íñigo Huguet) [2136123] - rtw88: use the correct bit in the REG_HCI_OPT_CTRL register (Íñigo Huguet) [2136123] - mwifiex: Add SD8997 SDIO-UART firmware (Íñigo Huguet) [2136123] - mwifiex: Select firmware based on strapping (Íñigo Huguet) [2136123] - rtw89: 8852c: add chip_ops related to BTC (Íñigo Huguet) [2136123] - rtw89: 8852c: fill freq and band of RX status by PPDU report (Íñigo Huguet) [2136123] - rtw89: 8852c: implement chip_ops::get_thermal (Íñigo Huguet) [2136123] - rtw89: 8852c: implement chip_ops related to TX power (Íñigo Huguet) [2136123] - rtw89: 8852c: configure default BB TX/RX path (Íñigo Huguet) [2136123] - rtw89: add RF H2C to notify firmware (Íñigo Huguet) [2136123] - rtw89: don't flush hci queues and send h2c if power is off (Íñigo Huguet) [2136123] - rtw89: pci: allow to process RPP prior to TX BD (Íñigo Huguet) [2136123] - rtw89: ps: access TX/RX rings via another registers in low power mode (Íñigo Huguet) [2136123] - rtw89: ser: re-enable interrupt in threadfn if under_recovery (Íñigo Huguet) [2136123] - rtw89: pci: add a separate interrupt handler for low power mode (Íñigo Huguet) [2136123] - rtw89: pci: reclaim TX BD only if it really need (Íñigo Huguet) [2136123] - rtw89: pci: add variant RPWM/CPWM to enter low power mode (Íñigo Huguet) [2136123] - rtw89: pci: add variant IMR/ISR and configure functions (Íñigo Huguet) [2136123] - bus: mhi: host: Add support for Cinterion MV32-WA/MV32-WB (Íñigo Huguet) [2136123] - bus: mhi: host: Optimize and update MMIO register write method (Íñigo Huguet) [2136123] - bus: mhi: host: Bail on writing register fields if read fails (Íñigo Huguet) [2136123] - bus: mhi: host: Wait for ready state after reset (Íñigo Huguet) [2136123] - bus: mhi: host: Add soc_reset sysfs (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Sort mhi_pci_id_table based on the PID (Íñigo Huguet) [2136123] - bus: mhi: host: Use cached values for calculating the shared write pointer (Íñigo Huguet) [2136123] - rtw88: pci: 8821c: Disable 21ce completion timeout (Íñigo Huguet) [2136123] - rtw88: fix uninitialized 'tim_offset' warning (Íñigo Huguet) [2136123] - rtw89: 8852c: add help function of set channel (Íñigo Huguet) [2136123] - rtw89: 8852c: add set channel of BB part (Íñigo Huguet) [2136123] - rtw89: 8852c: set channel of MAC part (Íñigo Huguet) [2136123] - rtw89: 8852c: add set channel function of RF part (Íñigo Huguet) [2136123] - rtw89: 8852c: add HFC parameters (Íñigo Huguet) [2136123] - rtw89: 8852c: add efuse gain offset parser (Íñigo Huguet) [2136123] - rtw89: 8852c: support bb gain info (Íñigo Huguet) [2136123] - rtw89: 8852c: add BB initial and reset functions (Íñigo Huguet) [2136123] - rtw89: 8852c: phy: configure TSSI bandedge (Íñigo Huguet) [2136123] - rtw89: 8852c: add TX power track tables (Íñigo Huguet) [2136123] - rtw89: 8852c: add TX power by rate and limit tables (Íñigo Huguet) [2136123] - rtw89: 8852c: add BB and RF parameters tables (Íñigo Huguet) [2136123] - ath9k: fix QCA9561 PA bias level (Íñigo Huguet) [2136123] - ath9k_htc: fix potential out of bounds access with invalid rxstatus->rs_keyix (Íñigo Huguet) [2136123] - ath11k: Fix build warning without CONFIG_IPV6 (Íñigo Huguet) [2136123] - ath11k: fix missing unlock on error in ath11k_wow_op_resume() (Íñigo Huguet) [2136123] - ath11k: Add support for SAR (Íñigo Huguet) [2136123] - ath11k: add support for extended wmi service bit (Íñigo Huguet) [2136123] - rtw89: pci: correct return value handling of rtw89_write16_mdio_mask() (Íñigo Huguet) [2136123] - rtw89: configure security CAM for V1 chip (Íñigo Huguet) [2136123] - rtw89: add new H2C to configure security CAM via DCTL for V1 chip (Íñigo Huguet) [2136123] - rtw89: extend H2C of CMAC control info (Íñigo Huguet) [2136123] - rtlwifi: rtl8192cu: Fix spelling mistake "writting" -> "writing" (Íñigo Huguet) [2136123] - rtlwifi: Fix spelling mistake "cacluated" -> "calculated" (Íñigo Huguet) [2136123] - rtw88: 8821ce: Disable PCIe ASPM L1 for 8821CE using chip ID (Íñigo Huguet) [2136123] - rtw88: 8821ce: add support for device ID 0xb821 (Íñigo Huguet) [2136123] - rtw88: 8821c: fix debugfs rssi value (Íñigo Huguet) [2136123] - rtw88: do PHY calibration while starting AP (Íñigo Huguet) [2136123] - rtw88: 8821c: Enable TX report for management frames (Íñigo Huguet) [2136123] - rtw88: Add update beacon flow for AP mode (Íñigo Huguet) [2136123] - rtw88: fix incorrect frequency reported (Íñigo Huguet) [2136123] - rtw88: add ieee80211:sta_rc_update ops (Íñigo Huguet) [2136123] - rtw89: rtw89_ser: add const to struct state_ent and event_ent (Íñigo Huguet) [2136123] - rtw89: 8852c: add 8852c specific BT-coexistence initial function (Íñigo Huguet) [2136123] - rtw89: Skip useless dig gain and igi related settings for 8852C (Íñigo Huguet) [2136123] - rtw89: 8852c: disable firmware watchdog if CPU disabled (Íñigo Huguet) [2136123] - rtw89: reset BA CAM (Íñigo Huguet) [2136123] - rtw89: change station scheduler setting for hardware TX mode (Íñigo Huguet) [2136123] - rtw89: ser: configure top ERR IMR for firmware to recover (Íñigo Huguet) [2136123] - rtw89: ser: configure C-MAC interrupt mask (Íñigo Huguet) [2136123] - rtw89: ser: configure D-MAC interrupt mask (Íñigo Huguet) [2136123] - rtw89: ser: fix unannotated fall-through (Íñigo Huguet) [2136123] - ath9k: Remove unnecessary print function dev_err() (Íñigo Huguet) [2136123] - ath11k: Fix spelling mistake "reseting" -> "resetting" (Íñigo Huguet) [2136123] - ath9k: fix ath_get_rate_txpower() to respect the rate list end tag (Íñigo Huguet) [2136123] - mac80211: prepare sta handling for MLO support (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: fix where rate stats are stored (fixes debugfs output) (Íñigo Huguet) [2136123] - nl80211: show SSID for P2P_GO interfaces (Íñigo Huguet) [2136123] - mac80211: introduce BSS color collision detection (Íñigo Huguet) [2136123] - mac80211: Improve confusing comment around tx_info clearing (Íñigo Huguet) [2136123] - mac80211: protect ieee80211_assign_beacon with next_beacon check (Íñigo Huguet) [2136123] - rtl8xxxu: fill up txrate info for gen1 chips (Íñigo Huguet) [2136123] - rtl8xxxu: feed antenna information for cfg80211 (Íñigo Huguet) [2136123] - rtlwifi: replace usage of found with dedicated list iterator variable (Íñigo Huguet) [2136123] - brcmfmac: Avoid keeping power to SDIO card unless WOWL is used (Íñigo Huguet) [2136123] - mwifiex: add mutex lock for call in mwifiex_dfs_chan_sw_work_queue (Íñigo Huguet) [2136123] - rtw89: fix misconfiguration on hw_scan channel time (Íñigo Huguet) [2136123] - rtw89: coex: Add case for scan offload (Íñigo Huguet) [2136123] - rtw89: packet offload handler to avoid warning (Íñigo Huguet) [2136123] - rtw89: change idle mode condition during hw_scan (Íñigo Huguet) [2136123] - rtw89: update ptcl_init (Íñigo Huguet) [2136123] - rtw89: update TMAC parameters (Íñigo Huguet) [2136123] - rtw89: initialize NAV control (Íñigo Huguet) [2136123] - rtw89: update scheduler setting (Íñigo Huguet) [2136123] - rtw89: 8852c: update security engine setting (Íñigo Huguet) [2136123] - rtw89: Turn on CR protection of CMAC (Íñigo Huguet) [2136123] - rtw89: add chip_ops::{enable,disable}_bb_rf to support v1 chip (Íñigo Huguet) [2136123] - rtw89: update STA scheduler parameters for v1 chip (Íñigo Huguet) [2136123] - rtw89: extend dmac_pre_init to support 8852C (Íñigo Huguet) [2136123] - rtw89: pci: add L1 settings (Íñigo Huguet) [2136123] - rtw89: pci: add deglitch setting (Íñigo Huguet) [2136123] - rtw89: pci: set address info registers depends on chips (Íñigo Huguet) [2136123] - rtw89: pci: add LTR setting for v1 chip (Íñigo Huguet) [2136123] - rtw89: pci: refine pci pre_init function (Íñigo Huguet) [2136123] - rtw89: pci: add pci attributes to configure operating mode (Íñigo Huguet) [2136123] - rtw89: pci: add register definition to rtw89_pci_info to generalize pci code (Íñigo Huguet) [2136123] - ath11k: mhi: remove unnecessary goto from ath11k_mhi_start() (Íñigo Huguet) [2136123] - ath11k: mhi: add error handling for suspend and resume (Íñigo Huguet) [2136123] - ath11k: mhi: remove state machine (Íñigo Huguet) [2136123] - rtw89: handle potential uninitialized variable (Íñigo Huguet) [2136123] - rtw89: read RX bandwidth from v1 type RX descriptor (Íñigo Huguet) [2136123] - rtw89: support hardware generate security header (Íñigo Huguet) [2136123] - rtw89: support variant of fill_txdesc (Íñigo Huguet) [2136123] - rtw89: pci: support variant of fill_txaddr_info (Íñigo Huguet) [2136123] - rtw89: add chip_info::h2c_desc_size/fill_txdesc_fwcmd to support new chips (Íñigo Huguet) [2136123] - rtw89: disabled IGI configuration for unsupported hardware (Íñigo Huguet) [2136123] - rtw89: packed IGI configuration flow into function for DIG feature (Íñigo Huguet) [2136123] - rtw89: regd: update mapping table to R59-R32 (Íñigo Huguet) [2136123] - rtw89: regd: consider 6G band (Íñigo Huguet) [2136123] - rtw89: 8852a: update txpwr tables to HALRF_027_00_038 (Íñigo Huguet) [2136123] - rtw89: add UK to regulation type (Íñigo Huguet) [2136123] - rtw89: reduce export symbol number of mac size and quota (Íñigo Huguet) [2136123] - rtw89: support FW crash simulation (Íñigo Huguet) [2136123] - rtw89: reconstruct fw feature (Íñigo Huguet) [2136123] - rtw89: ser: dump fw backtrace while L2 reset (Íñigo Huguet) [2136123] - rtw89: ser: dump memory for fw payload engine while L2 reset (Íñigo Huguet) [2136123] - rtw89: ser: control hci interrupts on/off by state (Íñigo Huguet) [2136123] - rtw89: mac: correct decision on error status by scenario (Íñigo Huguet) [2136123] - rtw89: mac: move table of mem base addr to common (Íñigo Huguet) [2136123] - rtw89: ser: fix CAM leaks occurring in L2 reset (Íñigo Huguet) [2136123] - rtw88: change idle mode condition during hw_scan (Íñigo Huguet) [2136123] - iwlwifi: mei: Replace zero-length array with flexible-array member (Íñigo Huguet) [2136123] - iwlwifi: fw: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2136123] - ath11k: fix driver initialization failure with WoW unsupported hw (Íñigo Huguet) [2136123] - ath11k: Remove unnecessary delay in ath11k_core_suspend (Íñigo Huguet) [2136123] - ath11k: Change max no of active probe SSID and BSSID to fw capability (Íñigo Huguet) [2136123] - ath11k: Remove core PCI references from PCI common code (Íñigo Huguet) [2136123] - ath11k: Refactor MSI logic to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Choose MSI config based on HW revision (Íñigo Huguet) [2136123] - ath11k: Refactor PCI code to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: PCI changes to support WCN6750 (Íñigo Huguet) [2136123] - bus: mhi: ep: Add uevent support for module autoloading (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for suspending and resuming channels (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for queueing SKBs to the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing channel rings (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for reading from the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing command rings (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for handling SYS_ERR condition (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for handling MHI_RESET (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for powering down the MHI endpoint stack (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for powering up the MHI endpoint stack (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing MHI endpoint interrupts (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for managing MHI state machine (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for sending events to the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for ring management (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for managing MMIO registers (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for creating and destroying MHI EP devices (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for registering MHI endpoint client drivers (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for registering MHI endpoint controllers (Íñigo Huguet) [2136123] - ath9k: make is2ghz consistent in ar9003_eeprom (Íñigo Huguet) [2136123] - ath10k: add support for MSDU IDs for USB devices (Íñigo Huguet) [2136123] - ath11k: add support to search regdb data in board-2.bin for WCN6855 (Íñigo Huguet) [2136123] - ath11k: store and send country code to firmware after recovery (Íñigo Huguet) [2136123] - ath9k: add functions to get paprd rate mask (Íñigo Huguet) [2136123] - ath9k: refactor ar9003_hw_spur_mitigate_ofdm (Íñigo Huguet) [2136123] - ath9k: fix ar9003_get_eepmisc (Íñigo Huguet) [2136123] - ath9k: use AR9300_MAX_CHAINS when appropriate (Íñigo Huguet) [2136123] - ath9k: split set11nRateFlags and set11nChainSel (Íñigo Huguet) [2136123] - ath9k: make ATH_SREV macros more consistent (Íñigo Huguet) [2136123] - ath11k: Add peer rhash table support (Íñigo Huguet) [2136123] - ath11k: add read variant from SMBIOS for download board data (Íñigo Huguet) [2136123] - ath11k: add fallback board name without variant while searching board-2.bin (Íñigo Huguet) [2136123] - ath11k: enable PLATFORM_CAP_PCIE_GLOBAL_RESET QMI host capability (Íñigo Huguet) [2136123] - ath11k: Add hw-restart option to simulate_fw_crash (Íñigo Huguet) [2136123] - ath11k: add synchronization operation between reconfigure of mac80211 and ath11k_base (Íñigo Huguet) [2136123] - ath11k: add support for device recovery for QCA6390/WCN6855 (Íñigo Huguet) [2136123] - ath11k: disable regdb support for QCA6390 (Íñigo Huguet) [2136123] - ath11k: remove unused ATH11K_BD_IE_BOARD_EXT (Íñigo Huguet) [2136123] - ath11k: change fw build id format in driver init log (Íñigo Huguet) [2136123] - ath11k: Refactor the peer delete (Íñigo Huguet) [2136123] - ath10k: Use of_device_get_match_data() helper (Íñigo Huguet) [2136123] - ath10k: Trigger sta disconnect on hardware restart (Íñigo Huguet) [2136123] - ath9k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2136123] - ath11k: support GTK rekey offload (Íñigo Huguet) [2136123] - ath11k: support ARP and NS offload (Íñigo Huguet) [2136123] - ath11k: purge rx pktlog when entering WoW (Íñigo Huguet) [2136123] - ath11k: implement hardware data filter (Íñigo Huguet) [2136123] - ath11k: Add WoW net-detect functionality (Íñigo Huguet) [2136123] - ath11k: Add basic WoW functionalities (Íñigo Huguet) [2136123] - x86/cpu: Add several Intel server CPU model numbers (Prarit Bhargava) [2158037] - ice: Implement devlink port split operations (Petr Oros) [2009705] - ice: Add additional flags to ice_nvm_write_activate (Petr Oros) [2009705] - ice: Add port option admin queue commands (Petr Oros) [2009705] - hwmon: (coretemp) Check for null before removing sysfs attrs (Phil Auld) [2152429] - KVM: x86/mmu: fix NULL pointer dereference on guest INVPCID (Jon Maloy) [2099301] {CVE-2022-1789} - redhat/configs: enable HP_WATCHDOG for aarch64 (Mark Salter) [2113079] - watchdog/hpwdt: Enable HP_WATCHDOG for ARM64 systems. (Mark Salter) [2113079] - watchdog: Improve Kconfig entry ordering and dependencies (Mark Salter) [2113079] - watchdog/hpwdt: Include nmi.h only if CONFIG_HPWDT_NMI_DECODING (Mark Salter) [2113079] - uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix (Oleg Nesterov) [2133797] - platform/mellanox: Remove redundant 'NULL' check (Mark Langsdorf) [2122314] - platform/mellanox: Remove unnecessary code (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix locking issue (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix coverity warning (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix error flow and extend verbosity (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-io: Add locking for io operations (Mark Langsdorf) [2122314] - platform/mellanox: nvsw-sn2201: fix error code in nvsw_sn2201_create_static_devices() (Mark Langsdorf) [2122314] - platform/mellanox: Add static in struct declaration. (Mark Langsdorf) [2122314] - platform/mellanox: Spelling s/platfom/platform/ (Mark Langsdorf) [2122314] - redhat/configs: Enable Mellanox SN2201 management device (Mark Langsdorf) [2122314] - platform/mellanox: Add support for new SN2201 system (Mark Langsdorf) [2122314] - platform_data/mlxreg: Add field for notification callback (Mark Langsdorf) [2122314] - Bluetooth: btintel: Fix WBS setting for Intel legacy ROM products (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix broken LED quirk for legacy ROM devices (Gopal Tiwari) [2129295] - Bluetooth: Add support hdev to allocate private data (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the legacy bootloader returns tlv based version (Gopal Tiwari) [2129295] - Bluetooth: btintel: Clean the exported function to static (Gopal Tiwari) [2129295] - Bluetooth: btintel: Move hci quirks to setup routine (Gopal Tiwari) [2129295] - Bluetooth: btintel: Refactoring setup routine for bootloader devices (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add combined set_diag functions (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the LED is not turning off immediately (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the first HCI command not work with ROM device (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add btintel data struct (Gopal Tiwari) [2129295] - Bluetooth: btintel: Refactoring setup routine for legacy ROM sku (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add combined setup and shutdown functions (Gopal Tiwari) [2129295] - EDAC/mc_sysfs: Increase legacy channel support to 12 (Aristeu Rozanski) [2139861] - NFS: Trigger the "ls -l" readdir heuristic sooner (Benjamin Coddington) [2025991] - NFS: Cache all entries in the readdirplus reply (Benjamin Coddington) [2025991] - NFS: Optimise away the previous cookie field (Benjamin Coddington) [2025991] - NFS: Fix up forced readdirplus (Benjamin Coddington) [2025991] - NFS: Convert readdir page cache to use a cookie based index (Benjamin Coddington) [2025991] - NFS: Clean up page array initialisation/free (Benjamin Coddington) [2025991] - NFS: Trace effects of the readdirplus heuristic (Benjamin Coddington) [2025991] - NFS: Trace effects of readdirplus on the dcache (Benjamin Coddington) [2025991] - NFS: Add basic readdir tracing (Benjamin Coddington) [2025991] - NFS: Don't request readdirplus when revalidation was forced (Benjamin Coddington) [2025991] - NFSv4: Ask for a full XDR buffer of readdir goodness (Benjamin Coddington) [2025991] - NFS: Don't ask for readdirplus unless it can help nfs_getattr() (Benjamin Coddington) [2025991] - NFS: Improve heuristic for readdirplus (Benjamin Coddington) [2025991] - NFS: Reduce use of uncached readdir (Benjamin Coddington) [2025991] - NFS: Simplify nfs_readdir_xdr_to_array() (Benjamin Coddington) [2025991] - NFS: If the cookie verifier changes, we must invalidate the page cache (Benjamin Coddington) [2025991] - NFS: Adjust the amount of readahead performed by NFS readdir (Benjamin Coddington) [2025991] - NFS: Don't advance the page pointer unless the page is full (Benjamin Coddington) [2025991] - NFS: Don't re-read the entire page cache to find the next cookie (Benjamin Coddington) [2025991] - NFS: Store the change attribute in the directory page cache (Benjamin Coddington) [2025991] - NFS: Calculate page offsets algorithmically (Benjamin Coddington) [2025991] - NFS: Use kzalloc() to avoid initialising the nfs_open_dir_context (Benjamin Coddington) [2025991] - NFS: Initialise the readdir verifier as best we can in nfs_opendir() (Benjamin Coddington) [2025991] - NFS: Trace lookup revalidation failure (Benjamin Coddington) [2025991] - NFS: constify nfs_server_capable() and nfs_have_writebacks() (Benjamin Coddington) [2025991] - NFS: Return valid errors from nfs2/3_decode_dirent() (Benjamin Coddington) [2025991] - NFS: Avoid duplicate uncached readdir calls on eof (Benjamin Coddington) [2025991] - NFS: Don't skip directory entries when doing uncached readdir (Benjamin Coddington) [2025991] - NFS: Don't overfill uncached readdir pages (Benjamin Coddington) [2025991] - block: unhash blkdev part inode when the part is deleted (Ming Lei) [2148497]- x86/fpu: Drop fpregs lock before inheriting FPU permissions (Eder Zulian) [2153549] - cpufreq: amd-pstate: Add resume and suspend callbacks (Mark Langsdorf) [2122310] - cpufreq: CPPC: Enable dvfs_possible_from_any_cpu (Mark Langsdorf) [2122310] - cpufreq: check only freq_table in __resolve_freq() (Mark Langsdorf) [2122310] - cpufreq: ondemand: Use cpumask_var_t for on-stack cpu mask (Mark Langsdorf) [2122310] - cpufreq: Change order of online() CB and policy->cpus modification (Mark Langsdorf) [2122310] - cpufreq: Warn users while freeing active policy (Mark Langsdorf) [2122310] - cpufreq: Drop unnecessary cpus locking from store() (Mark Langsdorf) [2122310] - cpufreq: Optimize cpufreq_show_cpus() (Mark Langsdorf) [2122310] - cpufreq: make interface functions and lock holding state clear (Mark Langsdorf) [2122310] - cpufreq: Abort show()/store() for half-initialized policies (Mark Langsdorf) [2122310] - cpufreq: Rearrange locking in cpufreq_remove_dev() (Mark Langsdorf) [2122310] - cpufreq: Split cpufreq_offline() (Mark Langsdorf) [2122310] - cpufreq: Reorganize checks in cpufreq_offline() (Mark Langsdorf) [2122310] - cpufreq: Clear real_cpus mask from remove_cpu_dev_symlink() (Mark Langsdorf) [2122310] - cpufreq: Prepare cleanup of powerpc's asm/prom.h (Mark Langsdorf) [2122310] - cpufreq: governor: Use kobject release() method to free dbs_data (Mark Langsdorf) [2122310] - ipv6: fix panic when fib_lookup_arg->result is fib6_info (Jiri Benc) [2140599] - tipc: re-fetch skb cb after tipc_msg_validate (Xin Long) [2142732] - Documentation: bonding: correct xmit hash steps (Jonathan Toppins) [2150390] - Documentation: bonding: update miimon default to 100 (Jonathan Toppins) [2150390] - selftests: bonding: up/down delay w/ slave link flapping (Jonathan Toppins) [2150390] - bonding (gcc13): synchronize bond_{a,t}lb_xmit() types (Jonathan Toppins) [2150390] - selftests: net: Fix cross-tree inclusion of scripts (Jonathan Toppins) [2150390] - treewide: use get_random_u32() when possible (Jonathan Toppins) [2150390] - selftests/bonding: re-add lladdr target test (Jonathan Toppins) [2150390] - selftests: bonding: cause oops in bond_rr_gen_slave_id (Jonathan Toppins) [2150390] - selftests/bonding: add a test for bonding lladdr target (Jonathan Toppins) [2150390] - net: Add tests for bonding and team address list management (Jonathan Toppins) [2150390] - net: bonding: Unsync device addresses on ndo_stop (Jonathan Toppins) [2150390] - net: bonding: Share lacpdu_mcast_addr definition (Jonathan Toppins) [2150390] - Documentation: bonding: clarify supported modes for tlb_dynamic_lb (Jonathan Toppins) [2150390] - selftests: include bonding tests into the kselftest infra (Jonathan Toppins) [2150390] - bonding: fix reference count leak in balance-alb mode (Jonathan Toppins) [2150390] - net:bonding:support balance-alb interface with vlan to bridge (Jonathan Toppins) [2150390] - bonding: cleanup bond_create (Jonathan Toppins) [2150390] - bonding: netlink error message support for options (Jonathan Toppins) [2150390] - bonding: Update layer2 and layer2+3 hash formula documentation (Jonathan Toppins) [2150390] - net: bonding: Add support for IPV6 ns/na to balance-alb/balance-tlb mode (Jonathan Toppins) [2150390] - net: remove bond_slave_has_mac_rcu() (Jonathan Toppins) [2150390] - net: bonding: debug: avoid printing debug logs when bond is not notifying peers (Jonathan Toppins) [2150390] - net: bonding: constify and use dev_addr_set() (Jonathan Toppins) [2150390] - net: use dev_addr_set() (Jonathan Toppins) [2150390] - bonding: remove extraneous definitions from bonding.h (Jonathan Toppins) [2150390] - net: bonding: bond_alb: Fix some typos in bond_alb.c (Jonathan Toppins) [2150390] - net: bonding: use tabs instead of space for code indent (Jonathan Toppins) [2150390] - net: bonding: remove unnecessary braces (Jonathan Toppins) [2150390] - net: bonding: fix code indent for conditional statements (Jonathan Toppins) [2150390] - net: bonding: add some required blank lines (Jonathan Toppins) [2150390] - docs: networking: bonding.rst Fix a typo in bonding.rst (Jonathan Toppins) [2150390] - docs: networking: bonding.rst resources section cleanup (Jonathan Toppins) [2150390] - bonding: Replace zero-length array with flexible-array member (Jonathan Toppins) [2150390] - include/net/bond_3ad: Simplify the code by using the ARRAY_SIZE (Jonathan Toppins) [2150390] - vmxnet3: use correct intrConf reference when using extended queues (Izabela Bakollari) [2150917] - vmxnet3: correctly report encapsulated LRO packet (Izabela Bakollari) [2150917] - net: move from strlcpy with unused retval to strscpy (Izabela Bakollari) [2150917] - vmxnet3: Implement ethtool's get_channels command (Izabela Bakollari) [2150917] - vmxnet3: Record queue number to incoming packets (Izabela Bakollari) [2150917] - [rt] Revert "mm/memcg: disable threshold event handlers on PREEMPT_RT" (Chris White) [2152035] - s390/pci: allow zPCI zbus without a function zero (Tobias Huschle) [2043829] - PCI: Extend isolated function probing to s390 (Tobias Huschle) [2043829] - PCI: Move jailhouse's isolated function handling to pci_scan_slot() (Tobias Huschle) [2043829] - PCI: Split out next_ari_fn() from next_fn() (Tobias Huschle) [2043829] - PCI: Clean up pci_scan_slot() (Tobias Huschle) [2043829] - KVM: selftests: Build the memslot tests for arm64 (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Report optimal memory slots (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Consolidate memory (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Support variable guest page size (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Probe memory slots for once (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Consolidate loop conditions in prepare_vm() (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Use data->nslots in prepare_vm() (Gavin Shan) [2134650] - KVM: selftests: Make memslot_perf_test arch independent (Gavin Shan) [2134650] - selftests: netfilter: Fix and review rpath.sh (Phil Sutter) [1961152] - netfilter: Use l3mdev flow key when re-routing mangled packets (Phil Sutter) [1961152] - netfilter: Update ip6_route_me_harder to consider L3 domain (Phil Sutter) [1961152] - netfilter: Dissect flow after packet mangling (Phil Sutter) [1961152] - netfilter: rpfilter/fib: Populate flowic_l3mdev field (Phil Sutter) [1961152] - selftests: netfilter: Test reverse path filtering (Phil Sutter) [1961152] - netfilter: nft_fib: Fix for rpath check with VRF devices (Phil Sutter) [1961152] - net: seg6: fix seg6_lookup_any_nexthop() to handle VRFs using flowi_l3mdev (Phil Sutter) [1961152] - net: Handle l3mdev in ip_tunnel_init_flow (Phil Sutter) [1961152] - xfrm: Pass flowi_oif or l3mdev as oif to xfrm_dst_lookup (Phil Sutter) [1961152] - net: Add l3mdev index to flow struct and avoid oif reset for port devices (Phil Sutter) [1961152] - l3mdev: l3mdev_master_upper_ifindex_by_index_rcu should be using netdev_master_upper_dev_get_rcu (Phil Sutter) [1961152] - l3mdev: add function to retreive upper master (Phil Sutter) [1961152] - sfc: move deprecation message to sfc_siena (Íñigo Huguet) [2112205 2136107] - sfc/siena: add entries for new CONFIG_SFC_SIENA* configs (Íñigo Huguet) [2112205 2136107] - sfc: Fix an error handling path in efx_pci_probe() (Íñigo Huguet) [2112205] - sfc: support PTP over Ethernet (Íñigo Huguet) [2112205 2065017] - sfc: support PTP over IPv6/UDP (Íñigo Huguet) [2112205 2065017] - sfc: allow more flexible way of adding filters for PTP (Íñigo Huguet) [2112205 2065017] - sfc: correct filter_table_remove method for EF10 PFs (Íñigo Huguet) [2112205] - sfc/siena: fix null pointer dereference in efx_hard_start_xmit (Íñigo Huguet) [2112205] - sfc/siena: fix TX channel offset when using legacy interrupts (Íñigo Huguet) [2112205] - sfc: implement ethtool get/set RX ring size for EF100 reps (Íñigo Huguet) [2112205] - sfc: use a dynamic m-port for representor RX and set it promisc (Íñigo Huguet) [2112205] - sfc: move table locking into filter_table_{probe,remove} methods (Íñigo Huguet) [2112205] - sfc: insert default MAE rules to connect VFs to representors (Íñigo Huguet) [2112205] - sfc: receive packets from EF100 VFs into representors (Íñigo Huguet) [2112205] - sfc: check ef100 RX packets are from the wire (Íñigo Huguet) [2112205] - sfc: determine wire m-port at EF100 PF probe time (Íñigo Huguet) [2112205] - sfc: ef100 representor RX top half (Íñigo Huguet) [2112205] - sfc: ef100 representor RX NAPI poll (Íñigo Huguet) [2112205] - sfc: plumb ef100 representor stats (Íñigo Huguet) [2112205] - sfc: disable softirqs for ptp TX (Íñigo Huguet) [2112205] - sfc/siena: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc: attach/detach EF100 representors along with their owning PF (Íñigo Huguet) [2112205] - sfc: hook up ef100 representor TX (Íñigo Huguet) [2112205] - sfc: support passing a representor to the EF100 TX path (Íñigo Huguet) [2112205] - sfc: determine representee m-port for EF100 representors (Íñigo Huguet) [2112205] - sfc: phys port/switch identification for ef100 reps (Íñigo Huguet) [2112205] - sfc: add basic ethtool ops to ef100 reps (Íñigo Huguet) [2112205] - sfc: add skeleton ef100 VF representors (Íñigo Huguet) [2112205] - sfc: detect ef100 MAE admin privilege/capability at probe time (Íñigo Huguet) [2112205] - sfc: update EF100 register descriptions (Íñigo Huguet) [2112205] - sfc: update MCDI protocol headers (Íñigo Huguet) [2112205] - sfc/siena: Use the bitmap API to allocate bitmaps (Íñigo Huguet) [2112205] - sfc: Separate netdev probe/remove from PCI probe/remove (Íñigo Huguet) [2112205] - sfc: replace function name in string with __func__ (Íñigo Huguet) [2112205] - sfc: Unsplit literal string. (Íñigo Huguet) [2112205] - sfc: Move EF100 efx_nic_type structs to the end of the file (Íñigo Huguet) [2112205] - sfc: Separate efx_nic memory from net_device memory (Íñigo Huguet) [2112205] - sfc: Encapsulate access to netdev_priv() (Íñigo Huguet) [2112205] - sfc: Change BUG_ON to WARN_ON and recovery code. (Íñigo Huguet) [2112205] - sfc: Remove netdev init from efx_init_struct (Íñigo Huguet) [2112205] - sfc: Add a PROBED state for EF100 VDPA use. (Íñigo Huguet) [2112205] - sfc: Split STATE_READY in to STATE_NET_DOWN and STATE_NET_UP. (Íñigo Huguet) [2112205] - sfc: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc: siena: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc/siena: Fix typo in comment (Íñigo Huguet) [2112205] - sfc: Fix typo in comment (Íñigo Huguet) [2112205] - sfc/siena: fix wrong tx channel offset with efx_separate_tx_channels (Íñigo Huguet) [2112205] - sfc/siena: fix considering that all channels have TX queues (Íñigo Huguet) [2112205] - sfc/siena: Remove duplicate check on segments (Íñigo Huguet) [2112205 2136107] - sfc: siena: Have a unique wrapper ifndef for efx channels header (Íñigo Huguet) [2112205 2136107] - eth: sfc: remove remnants of the out-of-tree napi_weight module param (Íñigo Huguet) [2112205] - sfc: siena: Fix Kconfig dependencies (Íñigo Huguet) [2112205 2136107] - sfc/siena: Reinstate SRIOV init/fini function calls (Íñigo Huguet) [2112205 2136107] - sfc/siena: Make PTP and reset support specific for Siena (Íñigo Huguet) [2112205 2136107] - sfc/siena: Make MCDI logging support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make HWMON support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make SRIOV support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make MTD support specific for Siena (Íñigo Huguet) [2112205 2136107] - sfc: Add a basic Siena module (Íñigo Huguet) [2112205 2136107] - sfc/siena: Inline functions in sriov.h to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in nic_common.h to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in mcdi headers to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename peripheral functions to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename RX/TX functions to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in efx headers to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Remove build references to missing functionality (Íñigo Huguet) [2112205 2136107] - sfc: Copy shared files needed for Siena (part 2) (Íñigo Huguet) [2112205 2136107] - sfc: Copy shared files needed for Siena (part 1) (Íñigo Huguet) [2112205 2136107] - sfc: Move Siena specific files (Íñigo Huguet) [2112205 2136107] - sfc: Copy a subset of mcdi_pcol.h to siena (Íñigo Huguet) [2112205 2136107] - sfc: Disable Siena support (Íñigo Huguet) [2112205 2136107] - sfc: add EF100 VF support via a write to sriov_numvfs (Íñigo Huguet) [2112205] - sfc: Remove global definition of efx_reset_type_names (Íñigo Huguet) [2112205] - sfc: Remove duplicate definition of efx_xmit_done (Íñigo Huguet) [2112205] - sfc: efx_default_channel_type APIs can be static (Íñigo Huguet) [2112205] - sfc: Fix spelling mistake "writting" -> "writing" (Íñigo Huguet) [2112205] - sfc: ef10: Fix assigning negative value to unsigned variable (Íñigo Huguet) [2112205] - sfc: use hardware tx timestamps for more than PTP (Íñigo Huguet) [2112205 2065017] - net: ethernet: sfc: Make subdir logic consistent with other vendors (Íñigo Huguet) [2112205 2136107] - hugetlbfs: fix mount mode command line processing (Bill O'Donnell) [2148876] - igc: Correct the launchtime offset (Corinna Vinschen) [2103954] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Corinna Vinschen) [2103954] - igc: Remove IGC_MDIC_INT_EN definition (Corinna Vinschen) [2103954] - igc: Remove forced_speed_duplex value (Corinna Vinschen) [2103954] - igc: Remove MSI-X PBA Clear register (Corinna Vinschen) [2103954] - igc: Lift TAPRIO schedule restriction (Corinna Vinschen) [2103954] - wifi: brcmfmac: Fix potential buffer overflow in brcmf_fweh_event_worker() (Wander Lairson Costa) [2150964] {CVE-2022-3628} - net: ethernet: move from strlcpy with unused retval to strscpy (Corinna Vinschen) [2103949] - tipc: call tipc_lxc_xmit without holding node_read_lock (Xin Long) [2141640] - mptcp: fix sleep in atomic at close time (Davide Caratti) [2150361] - mptcp: don't orphan ssk in mptcp_close() (Davide Caratti) [2150361] - net: Avoid overwriting valid skb->napi_id (Antoine Tenart) [2142593] - x86/microcode/AMD: Apply the patch early on every logical thread (Waiman Long) [2139856] - x86/bugs: Enable STIBP for IBPB mitigated RETBleed (Waiman Long) [2139856] - x86/bugs: Add "unknown" reporting for MMIO Stale Data (Waiman Long) [2139856] - tracing: Use a copy of the va_list for __assign_vstr() (Íñigo Huguet) [2143356] - tracing/events: Add __vstring() and __assign_vstr() helper macros (Íñigo Huguet) [2143356] - rtnetlink: add IFLA_PARENT_[DEV|DEV_BUS]_NAME (Jose Ignacio Tornos Martinez) [2144853] - rtnetlink: add alloc() method to rtnl_link_ops (Jose Ignacio Tornos Martinez) [2144853] - ipv6: Fix data races around sk->sk_prot. (Guillaume Nault) [2144805] {CVE-2022-3567} - ipv6: annotate some data-races around sk->sk_prot (Guillaume Nault) [2144805] {CVE-2022-3567} - ipv6: use indirect call wrappers for {tcp, udpv6}_{recv, send}msg() (Guillaume Nault) [2144805] {CVE-2022-3567} - mm/mremap: hold the rmap lock in write mode when moving page table entries. (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: use pmd/pud_poplulate to update page table entries (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: don't enable optimized PUD move if page table levels is 2 (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: convert huge PUD move to separate helper (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: fix BUILD_BUG_ON() error in get_extent (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap.c: fix extent calculation (Waiman Long) [2140945] {CVE-2022-41222} - x86: mremap speedup - Enable HAVE_MOVE_PUD (Waiman Long) [2140945] {CVE-2022-41222} - mm: speedup mremap on 1GB or larger regions (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: start addresses are properly aligned (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: calculate extent in one place (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: it is sure to have enough space when extent meets requirement (Waiman Long) [2140945] {CVE-2022-41222}- irqchip/gic, gic-v3: Make SGIs use handle_percpu_devid_irq() (Charles Mirabile) [2133892] - irqchip/gic-common: Don't enable SGIs by default (Charles Mirabile) [2133892] - irqchip/gic: Configure SGIs as standard interrupts (Charles Mirabile) [2133892] - irqchip/gic: Refactor SMP configuration (Charles Mirabile) [2133892] - irqchip/gic-v3: Configure SGIs as standard interrupts (Charles Mirabile) [2133892] - irqchip/gic-v3: Describe the SGI range (Charles Mirabile) [2133892] - arm64: Allow IPIs to be handled as normal interrupts (Charles Mirabile) [2133892] - irqchip/gic, gic-v3: Prevent GSI to SGI translations (Charles Mirabile) [2133892] - Workaround to enable support for IPI (Charles Mirabile) [2133892] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2112182] - tg3: Disable tg3 device on system reboot to avoid triggering AER (Ken Cox) [2112182] - aquantia: Do not purge addresses when setting the number of rings (Izabela Bakollari) [2122571] - openvswitch: add nf_ct_is_confirmed check before assigning the helper (Antoine Tenart) [2135414] - net: openvswitch: allow conntrack in non-initial user namespace (Antoine Tenart) [2135414] - net: openvswitch: allow metering in non-initial user namespace (Antoine Tenart) [2135414] - openvswitch: Change the return type for vport_ops.send function hook to int (Antoine Tenart) [2135414] - net: openvswitch: fix repeated words in comments (Antoine Tenart) [2135414] - openvswitch: add OVS_DP_ATTR_PER_CPU_PIDS to get requests (Antoine Tenart) [2135414] - openvswitch: allow specifying ifindex of new interfaces (Antoine Tenart) [2135414] - openvswitch: move from strlcpy with unused retval to strscpy (Antoine Tenart) [2135414] - openvswitch: Fix overreporting of drops in dropwatch (Antoine Tenart) [2135414] - openvswitch: Fix double reporting of drops in dropwatch (Antoine Tenart) [2135414] - openvswitch: fix memory leak at failed datapath creation (Antoine Tenart) [2135414] - net: remove noblock parameter from skb_recv_datagram() (Íñigo Huguet) [2143359] - i40e: Fix error handling in i40e_init_module() (Stefan Assmann) [2103661] - i40e: Add appropriate error message logged for incorrect duplex setting (Stefan Assmann) [2103661] - i40e: Add i40e_napi_poll tracepoint (Stefan Assmann) [2103661] - i40e: Record number of RXes cleaned during NAPI (Stefan Assmann) [2103661] - i40e: Record number TXes cleaned during NAPI (Stefan Assmann) [2103661] - i40e: Store the irq number in i40e_q_vector (Stefan Assmann) [2103661] - ptp: introduce helpers to adjust by scaled parts per million (Stefan Assmann) [2103661] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Stefan Assmann) [2103661] - i40e: Fix flow-type by setting GL_HASH_INSET registers (Stefan Assmann) [2103661] - i40e: Fix ethtool rx-flow-hash setting for X722 (Stefan Assmann) [2103661] - i40e: Fix ADQ rate limiting for PF (Stefan Assmann) [2103661] - i40e: add description and modify interrupts configuration procedure (Stefan Assmann) [2103661] - i40e: Add basic support for I710 devices (Stefan Assmann) [2103661] - net: ethernet: move from strlcpy with unused retval to strscpy (Stefan Assmann) [2103661] - i40e: Fix incorrect address type for IPv6 flow rules (Stefan Assmann) [2103661] - i40e: Fix to stop tx_timeout recovery if GLOBR fails (Stefan Assmann) [2103661] - i40e: convert .adjfreq to .adjfine (Stefan Assmann) [2103661] - i40e: use mul_u64_u64_div_u64 for PTP frequency calculation (Stefan Assmann) [2103661] - i40e: Fix interface init with MSI interrupts (no MSI-X) (Stefan Assmann) [2103661] - i40e: Refactor tc mqprio checks (Stefan Assmann) [2103661] - i40e: Fix erroneous adapter reinitialization during recovery process (Stefan Assmann) [2103661] - i40e: Fix VF's MAC Address change on VM (Stefan Assmann) [2103661] - i40e: Fix dropped jumbo frames statistics (Stefan Assmann) [2103661] - intel/i40e:fix repeated words in comments (Stefan Assmann) [2103661] - intel: remove unused macros (Stefan Assmann) [2103661] - i40e: read the XDP program once per NAPI (Stefan Assmann) [2103661] - intel/i40e: delete if NULL check before dev_kfree_skb (Stefan Assmann) [2103661] - i40e: Remove unnecessary synchronize_irq() before free_irq() (Stefan Assmann) [2103661] - i40e: Add support for ethtool -s speed (Stefan Assmann) [2103661] - i40e: Add VF VLAN pruning (Stefan Assmann) [2103661] - xsk: Wipe out dead zero_copy_allocator declarations (Stefan Assmann) [2103661] - gpio: amdpt: add new device ID and 24-pin support (Prarit Bhargava) [2097868] - platform/x86/intel: pmc/core: Add Raptor Lake support to pmc core driver (Prarit Bhargava) [2076732] - HID: hyperv: fix possible memory leak in mousevsc_probe() (Mohammed Gamal) [2139468] - HID: hyperv: Correctly access fields declared as __le16 (Mohammed Gamal) [2139468] - Drivers: hv: vmbus: fix possible memory leak in vmbus_device_register() (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: fix double free in the error path of vmbus_add_channel_work() (Mohammed Gamal) [2139473] - Drivers: hv: fix repeated words in comments (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Split memcpy of flex-array (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Don't wait for the ACPI device upon initialization (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Use PCI_VENDOR_ID_MICROSOFT for better discoverability (Mohammed Gamal) [2139473] - PCI: Move PCI_VENDOR_ID_MICROSOFT/PCI_DEVICE_ID_HYPERV_VIDEO definitions to pci_ids.h (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Fix kernel-doc (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Optimize vmbus_on_event (Mohammed Gamal) [2139473] - Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region (Mohammed Gamal) [2139473] - Drivers: hv: Always reserve framebuffer region for Gen1 VMs (Mohammed Gamal) [2139473] - Drivers: hv: remove duplicate word in a comment (Mohammed Gamal) [2139473] - Drivers: hv: Create debugfs file with hyper-v balloon usage information (Mohammed Gamal) [2139473] - Drivers: hv: vm_bus: Handle vmbus rescind calls after vmbus is suspended (Mohammed Gamal) [2139473] - scsi: storvsc: remove an extraneous "to" in a comment (Cathy Avery) [2143320] - Drivers: hv: vmbus: Optimize vmbus_on_event (Cathy Avery) [2143320] - scsi: storvsc: Drop DID_TARGET_FAILURE use (Cathy Avery) [2143320] - scsi: storvsc: Remove WQ_MEM_RECLAIM from storvsc_error_wq (Cathy Avery) [2143320] - scsi: storvsc: Correct reporting of Hyper-V I/O size limits (Cathy Avery) [2143320] - scsi: storvsc: Removing Pre Win8 related logic (Cathy Avery) [2143320] - scsi: storvsc: Fix typo in comment (Cathy Avery) [2143320] - scsi: storvsc: Remove support for Hyper-V 2008 and 2008R2/Win7 (Cathy Avery) [2143320] - vdpa/mlx5: re-create forwarding rules after mac modified (Laurent Vivier) [2145136] - ipv6: Fix crash when IPv6 is administratively disabled (Guillaume Nault) [2140779] - raw: fix a typo in raw_icmp_error() (Guillaume Nault) [2140779] - raw: remove unused variables from raw6_icmp_error() (Guillaume Nault) [2140779] - raw: complete rcu conversion (Guillaume Nault) [2140779] - raw: Use helpers for the hlist_nulls variant. (Guillaume Nault) [2140779] - raw: Fix mixed declarations error in raw_icmp_error(). (Guillaume Nault) [2140779] - raw: convert raw sockets to RCU (Guillaume Nault) [2140779] - raw: use more conventional iterators (Guillaume Nault) [2140779] - raw: Add missing annotations to raw_seq_start() and raw_seq_stop() (Guillaume Nault) [2140779] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103941] - e1000e: convert .adjfreq to .adjfine (Ken Cox) [2103941] - e1000e: remove unnecessary range check in e1000e_phc_adjfreq (Ken Cox) [2103941] - Revert "e1000e: Fix possible HW unit hang after an s0ix exit" (Ken Cox) [2103941] - e1000e: Enable GPT clock before sending message to CSME (Ken Cox) [2103941] - intel/e1000e:fix repeated words in comments (Ken Cox) [2103941] - intel: remove unused macros (Ken Cox) [2103941] - net: move netif_set_gso_max helpers (Ivan Vecera) [2137564] - net: make drivers set the TSO limit not the GSO limit (Ivan Vecera) [2137564] - net: don't allow user space to lift the device limits (Ivan Vecera) [2137564] - net: add netif_inherit_tso_max() (Ivan Vecera) [2137564] - net: extract a few internals from netdevice.h (Ivan Vecera) [2137564] - net: unexport a handful of dev_* functions (Ivan Vecera) [2137564] - bpf: Fix extable address check. (Felix Maurer) [2138532] - bpf, x64: Factor out emission of REX byte in more cases (Felix Maurer) [2138532] - bpf: Support dual-stack sockets in bpf_tcp_check_syncookie (Felix Maurer) [2138532] - bpf: Fix extable fixup offset. (Felix Maurer) [2138532] - bpf: Fix the off-by-two error in range markings (Felix Maurer) [2138532] - bpf: Fix potential race in tail call compatibility check (Felix Maurer) [2138532] - bpf: Fix possible out of bound write in narrow load handling (Felix Maurer) [2138532] - bpf: Fix potential memleak and UAF in the verifier. (Felix Maurer) [2138532] - KVM: s390: vsie: Fix the initialization of the epoch extension (epdx) field (Thomas Huth) [2151854] - PM: core: Remove static qualifier in DEFINE_SIMPLE_DEV_PM_OPS macro (Íñigo Huguet) [2143354] - PM: core: Add new *_PM_OPS macros, deprecate old ones (Íñigo Huguet) [2143354] - PM: Make *_DEV_PM_OPS macros use __maybe_unused (Íñigo Huguet) [2143354] - PM: core: Redefine pm_ptr() macro (Íñigo Huguet) [2143354] - linux/kconfig.h: replace IF_ENABLED() with PTR_IF() in (Íñigo Huguet) [2143354] - net: Remove unused inline function sk_nulls_node_init() (Guillaume Nault) [2143239] - ping: convert to RCU lookups, get rid of rwlock (Guillaume Nault) [2143239] - mm/cgroup/reclaim: fix dirty pages throttling on cgroup v1 (Waiman Long) [2149544] - mm: vmscan: remove deadlock due to throttling failing to make progress (Waiman Long) [2149544] - mm: vmscan: reduce throttling due to a failure to make progress -fix (Waiman Long) [2149544] - mm: vmscan: Reduce throttling due to a failure to make progress (Waiman Long) [2149544] - mm/vmscan: delay waking of tasks throttled on NOPROGRESS (Waiman Long) [2149544] - mm/vmscan: increase the timeout if page reclaim is not making progress (Waiman Long) [2149544] - mm/vmscan: centralise timeout values for reclaim_throttle (Waiman Long) [2149544] - mm/page_alloc: remove the throttling logic from the page allocator (Waiman Long) [2149544] - mm/writeback: throttle based on page writeback instead of congestion (Waiman Long) [2149544] - mm/vmscan: throttle reclaim when no progress is being made (Waiman Long) [2149544] - mm/vmscan: throttle reclaim and compaction when too may pages are isolated (Waiman Long) [2149544] - mm/vmscan: throttle reclaim until some writeback completes if congested (Waiman Long) [2149544] - mm/vmscan.c: delete or fix duplicated words (Waiman Long) [2149544] - powerpc/pseries/vas: Add VAS IRQ primary handler (Mamatha Inamdar) [2131675] - powerpc: Ignore DSI error caused by the copy/paste instruction (Mamatha Inamdar) [2131675] - powerpc/pseries: Move vas_migration_handler early during migration (Mamatha Inamdar) [2131675] - vt: drop old FONT ioctls (Wander Lairson Costa) [2109164] {CVE-2021-33656}- x86/mce: Reduce number of machine checks taken during recovery (Prarit Bhargava) [2104388] - scsi: storvsc: Fix handling of srb_status and capacity change events (Mohammed Gamal) [2139728] - clocksource: hyper-v: unexport __init-annotated hv_init_clocksource() (Mohammed Gamal) [2139463] - hv_netvsc: Fix race between VF offering and VF association message from host (Mohammed Gamal) [2139475] - sbitmap: fix lockup while swapping (Ming Lei) [2140214] - sbitmap: fix batched wait_cnt accounting (Ming Lei) [2140214] - sbitmap: Avoid leaving waitqueue in invalid state in __sbq_wake_up() (Ming Lei) [2140214] - sbitmap: fix possible io hung due to lost wakeup (Ming Lei) [2140214] - sbitmap: add helper to clear a batch of tags (Ming Lei) [2140214] - x86/hyperv: Restore VP assist page after cpu offlining/onlining (Mohammed Gamal) [2139454] - clocksource/drivers/hyperv: add data structure for reference TSC MSR (Mohammed Gamal) [2139454] - x86/hyperv: fix root partition faults when writing to VP assist page MSR (Mohammed Gamal) [2139454] - x86/hyperv: fix invalid writes to MSRs during root partition kexec (Mohammed Gamal) [2139454] - x86/hyperv: Remove BUG_ON() for kmap_local_page() (Mohammed Gamal) [2139454] - x86/hyperv: Disable hardlockup detector by default in Hyper-V guests (Mohammed Gamal) [2139454] - x86/hyperv: Update 'struct hv_enlightened_vmcs' definition (Mohammed Gamal) [2139454] - x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition (Mohammed Gamal) [2139454] - x86/hyperv: Replace kmap() with kmap_local_page() (Mohammed Gamal) [2139454] - hyperv: simplify and rename generate_guest_id (Mohammed Gamal) [2139454] - x86/Hyper-V: Add SEV negotiate protocol support in Isolation VM (Mohammed Gamal) [2139454] - x86/sev: Define the Linux-specific guest termination reasons (Mohammed Gamal) [2139454] - x86/sev: Shorten GHCB terminate macro names (Mohammed Gamal) [2139454] - x86/sev: Save the negotiated GHCB version (Mohammed Gamal) [2139454] - locking: Add __sched to semaphore functions (Waiman Long) [2141429] - locking/rwsem: Disable preemption while trying for rwsem lock (Waiman Long) [2141429] - locking/percpu-rwsem: Add percpu_is_write_locked() and percpu_is_read_locked() (Waiman Long) [2141429] - locking/rwsem: Conditionally wake waiters in reader/writer slowpaths (Waiman Long) [2141429] - locking: Mark racy reads of owner->on_cpu (Waiman Long) [2141429] - locking: Make owner_on_cpu() into (Waiman Long) [2141429] - locking/rwsem: Optimize down_read_trylock() under highly contended case (Waiman Long) [2141429] - locking/rwsem: Fix comments about reader optimistic lock stealing conditions (Waiman Long) [2141429] - locking/rwsem: Disable preemption for spinning region (Waiman Long) [2141429] - locking: Remove rcu_read_{,un}lock() for preempt_{dis,en}able() (Waiman Long) [2141429] - NFSD: Mark exports of NFS as unsupported (Benjamin Coddington) [2150902] - fuse: lock inode unconditionally in fuse_fallocate() (Miklos Szeredi) [2110883] - fuse: add file_modified() to fallocate (Miklos Szeredi) [2110883] - mei: me: add adler lake point S DID (Prarit Bhargava) [2141602] - ocfs2/dlm: move BITS_TO_BYTES() to bitops.h for wider use (Izabela Bakollari) [2144858] - libnvdimm/namespace: Fix visibility of namespace resource attribute (Jeff Moyer) [2016347] - PCI: hv: Only reuse existing IRTE allocation for Multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Fix the definition of vector in hv_compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Take a const cpumask in hv_compose_msi_req_get_cpu() (Mohammed Gamal) [2139458] - PCI: hv: Fix synchronization between channel callback and hv_pci_bus_exit() (Mohammed Gamal) [2139458] - PCI: hv: Add validation for untrusted Hyper-V values (Mohammed Gamal) [2139458] - PCI: hv: Fix interrupt mapping for multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Reuse existing IRTE allocation in compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Fix hv_arch_irq_unmask() for multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Fix synchronization between channel callback and hv_compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Use vmbus_requestor to generate transaction IDs for VMbus hardening (Mohammed Gamal) [2139458] - PCI: hv: Fix multi-MSI to allow more than one MSI vector (Mohammed Gamal) [2139458] - net: mana: Add rmb after checking owner bits (Mohammed Gamal) [2139462] - net: mana: Add support of XDP_REDIRECT action (Mohammed Gamal) [2139462] - net: mana: Add the Linux MANA PF driver (Mohammed Gamal) [2139462] - NFSD: Protect against send buffer overflow in NFSv3 READ (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv2 READ (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv3 READDIR (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv2 READDIR (Scott Mayhew) [2141774] {CVE-2022-43945} - SUNRPC: Fix svcxdr_init_encode's buflen calculation (Scott Mayhew) [2141774] {CVE-2022-43945} - SUNRPC: Fix svcxdr_init_decode's end-of-buffer calculation (Scott Mayhew) [2141774] {CVE-2022-43945} - KVM: VMX: fully disable SGX if SECONDARY_EXEC_ENCLS_EXITING unavailable (Emanuele Giuseppe Esposito) [2127128] - cgroup/cpuset: Reduce cpuset_rwsem writer latency (Waiman Long) [2149031] - rcu/exp: Mark current CPU as exp-QS in IPI loop second pass (Waiman Long) [2149031] - rcu: Always inline rcu_dynticks_task*_{enter,exit}() (Waiman Long) [2149031] - rcu: Fix existing exp request check in sync_sched_exp_online_cleanup() (Waiman Long) [2149031] - rcu: Fix macro name CONFIG_TASKS_RCU_TRACE (Waiman Long) [2149031] - rcu: Fix stall-warning deadlock due to non-release of rcu_node ->lock (Waiman Long) [2149031] - rcu: Fix to include first blocked task in stall warning (Waiman Long) [2149031] - cgroup: Use cgroup_attach_{lock,unlock}() from cgroup_attach_task_all() (Waiman Long) [2149031] - cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all() (Waiman Long) [2149031] - cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlock (Waiman Long) [2149031] - cgroup: Elide write-locking threadgroup_rwsem when updating csses on an empty subtree (Waiman Long) [2149031] - cgroup/cpuset: Fix a race between cpuset_attach() and cpu hotplug (Waiman Long) [2149031] - cgroup: reduce dependency on cgroup_mutex (Waiman Long) [2149031]- drm/i915: fix TLB invalidation for Gen12 video and compute engines (Wander Lairson Costa) [2148150] {CVE-2022-4139} - redhat/configs: Set CONFIG_X86_AMD_PSTATE to 'm' (Prarit Bhargava) [2145246] - bonding: uninitialized variable in bond_miimon_inspect() (Jonathan Toppins) [1973124] - bonding: fix link recovery in mode 2 when updelay is nonzero (Jonathan Toppins) [1973124] - RHEL: ALSA: update configuration (Jaroslav Kysela) [2125544] - RHEL: ALSA: fix compilation issues (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-mtl: fix firmware name (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Correct pin configs for ASUS G533Z (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: remove ALC289_FIXUP_DUAL_SPK for Dell 5530 (Jaroslav Kysela) [2125544] - ALSA: ac97: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: ca0106: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: control: add snd_ctl_rename() (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Use only dynamic PCM device allocation (Jaroslav Kysela) [2125544] - regmap: add reg_sequence helpers (Jaroslav Kysela) [2125544] - regmap: fix the kerneldoc for regmap_test_bits() (Jaroslav Kysela) [2125544] - regmap: provide helpers for simple bit operations (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Free the ida when IPC fails in sof_ipc4_widget_setup() (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Handle BCLK set as PLL input configuration (Jaroslav Kysela) [2125544] - ASoC: test-component: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Add support for pll_r coefficient (Jaroslav Kysela) [2125544] - ASoC: ssm4567: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: rk3328: fix disabling mclk on pclk probe failure (Jaroslav Kysela) [2125544] - ASoC: pcm3060: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: cs42l42: remove redundant test (Jaroslav Kysela) [2125544] - ALSA: ppc: beep: fix clang -Wimplicit-fallthrough (Jaroslav Kysela) [2125544] - ASoC: soc-component: Add comment for the endianness flag (Jaroslav Kysela) [2125544] - ASoC: codecs: wsa881x: handle timeouts in resume path (Jaroslav Kysela) [2125544] - ASoC: wsa881x: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: codecs: wsa881x: add runtime pm support (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Fix event generation for wm_adsp_fw_put() (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Minor clean and redundant code removal (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Compressed stream DSP memory structs should be __packed (Jaroslav Kysela) [2125544] - ASoC: wm8998: Fix event generation for input mux (Jaroslav Kysela) [2125544] - ASoC: arizona: Fix a wrong free in wm8997_probe (Jaroslav Kysela) [2125544] - ASoC: wm8962: Allow switching between analog and digital inputs (Jaroslav Kysela) [2125544] - ASoC: wm8960: Fix clock configuration on slave mode (Jaroslav Kysela) [2125544] - ASoC: wm8962: Fix suspend while playing music (Jaroslav Kysela) [2125544] - ASoC: codecs: wm8962: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Jaroslav Kysela) [2125544] - ASoC: wm8960: Add ACPI support (Jaroslav Kysela) [2125544] - ASoC: wm8958: Fix change notifications for DSP controls (Jaroslav Kysela) [2125544] - ASoC: wm8940: add devicetree support (Jaroslav Kysela) [2125544] - ASoC: wm*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: wm8903: Fix the error handling of wm8903_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: wm8731: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: arizona: Make the wm5102, wm5110, wm8997 and wm8998 drivers use the new jack library (Jaroslav Kysela) [2125544] - ASoC: wm5102: Fix event generation for output compensation (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Use int array instead of bitmask for TX mixers (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Use DT bindings instead of local DAI definitions (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Fix spurious event generation (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Remove RX channel from old list before adding it to a new one (Jaroslav Kysela) [2125544] - ASoC: codecs: wcd9335: move gains from SX_TLV to S8_TLV (Jaroslav Kysela) [2125544] - ASoC: wcd9335: remove redundant tests (Jaroslav Kysela) [2125544] - ASoC: uda1380: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: uda1334: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: twl4030: Drop legacy, non DT boot support (Jaroslav Kysela) [2125544] - ASoC: tscs*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: ts3a227e: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tpa6130: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: tlv320dac3x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic33: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: codec: tlv320aic32x4: fix mono playback via I2S (Jaroslav Kysela) [2125544] - ASoC: tlv320aic32x4: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Fix typo in BCLK clock name (Jaroslav Kysela) [2125544] - ASoC: tlv320*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: Rename tlv320aic31xx-micbias.h as tlv320aic31xx.h (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic26: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic23: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas6424: Return zero in remove callback (Jaroslav Kysela) [2125544] - ASoC: tda7419: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas6424: Fix the error handling of tas6424_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: tas6424: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas5720: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas571x: Fix the error handling of tas571x_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: tas5086: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas2552: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: tas2770: Reinit regcache on reset (Jaroslav Kysela) [2125544] - ASoC: tas2562: Propagate the error in tas2562_dac_event() (Jaroslav Kysela) [2125544] - ASoC: tas2562: Fix mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2764: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2125544] - ASoC: tas2764: Allow mono streams (Jaroslav Kysela) [2125544] - ASoC: tas2770: Fix handling of mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2770: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2125544] - ASoC: tas2770: Allow mono streams (Jaroslav Kysela) [2125544] - ASoC: tas2770: Set correct FSYNC polarity (Jaroslav Kysela) [2125544] - ASoC: tas2770: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: tas2552: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sti-sas: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta350: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta350: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: sta*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: sta32x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta32x: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: ssm2602: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: ssm2518: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sgtl5000: Fix noise on shutdown/remove (Jaroslav Kysela) [2125544] - ASoC: rt9120: Fix 3byte read, valule offset typo (Jaroslav Kysela) [2125544] - ASoC: rt9120: Use pm_runtime and regcache to optimize 'pwdnn' logic (Jaroslav Kysela) [2125544] - ASoC: codecs: rt715-sdca: remove useless assignment of ops (Jaroslav Kysela) [2125544] - ASoC: rt5682s: Separate the regulator consumer controls (Jaroslav Kysela) [2125544] - ASoC: rt5645: Fix the error handling of rt5645_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the issue of the abnormal JD2 status (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the JD voltage dropping issue (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the wrong state of JD1 and JD2 (Jaroslav Kysela) [2125544] - ASoC: rt5640: Add the MICBIAS1 to the dapm routing (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Fix jack detection (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Fix NULL jack in interrupt (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt286: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt274: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt274: Always init jack_detect_work (Jaroslav Kysela) [2125544] - ASoC: rt1308-sdw: add the default value of register 0xc320 (Jaroslav Kysela) [2125544] - ASoC: rk3328: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: pcm1789: Make pcm1789_common_exit() return void (Jaroslav Kysela) [2125544] - ASoC: pcm186x: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: pcm186x: simplify the return expression of pcm186x_power_off() (Jaroslav Kysela) [2125544] - ASoC: pcm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: nau8825: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8825: Declare 2 channels for DAI of capture stream (Jaroslav Kysela) [2125544] - ASoC: nau8824: Fix semaphore is released unexpectedly (Jaroslav Kysela) [2125544] - ASoC: nau8824: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8824: Fix semaphore unbalance at error paths (Jaroslav Kysela) [2125544] - ASoC: nau8822: Don't reconfigure PLL to the same values (Jaroslav Kysela) [2125544] - ASoC: nau8822: Disable internal PLL if freq_out is zero (Jaroslav Kysela) [2125544] - ASoC: nau8821: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8821: Don't unconditionally free interrupt (Jaroslav Kysela) [2125544] - ASoC: nau8821: add new widget to control system clock (Jaroslav Kysela) [2125544] - ASoC: nau8821: Add headset button detection (Jaroslav Kysela) [2125544] - ASoC: codecs: mt6359-accdet: remove useless initialization (Jaroslav Kysela) [2125544] - ASoC: mediatek: mt6366: support for mt6366 codec (Jaroslav Kysela) [2125544] - ASoC: msm8916-wcd-digital: Check failure for devm_snd_soc_register_component (Jaroslav Kysela) [2125544] - ASoC: nau8540: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: mt6660: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: mt6359: Fix refcount leak bug (Jaroslav Kysela) [2125544] - ASoC: mediatek: mt6358: add missing EXPORT_SYMBOLs (Jaroslav Kysela) [2125544] - ASoC: msm8916-wcd-digital: Fix missing clk_disable_unprepare() in msm8916_wcd_digital_probe (Jaroslav Kysela) [2125544] - ASoC: codecs: msm8916-wcd-digital: move gains from SX_TLV to S8_TLV (Jaroslav Kysela) [2125544] - ASoC: ml26124: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: max9860: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: max98390: use linux/gpio/consumer.h to fix build (Jaroslav Kysela) [2125544] - ASoC: max98390: Add reset gpio control (Jaroslav Kysela) [2125544] - ASoC: codecs: soundwire: call pm_runtime_resume() in component probe (Jaroslav Kysela) [2125544] - ASoC: max98373: Removing 0x203E from the volatile reg (Jaroslav Kysela) [2125544] - ASoC: max98090: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: max98090: Fix event generation for custom controls (Jaroslav Kysela) [2125544] - ASoC: codecs: max98088: Clean up some inconsistent indenting (Jaroslav Kysela) [2125544] - ASoC: max980*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: lm4857: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: da732x: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: da7219: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: max9*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: lm49xxx: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: es83*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: codes: Add support for ES8316 producer mode (Jaroslav Kysela) [2125544] - ASoC: dmic: Add support for DSD data format (Jaroslav Kysela) [2125544] - ASoC: da[79]*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: da7219: cancel AAD related work earlier for jack removal (Jaroslav Kysela) [2125544] - ASoC: da7219: Fix pole orientation detection on certain headsets (Jaroslav Kysela) [2125544] - ASoC: da7218: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: cx2072x: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: cx2072x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: cs4349: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs42l56: Fix the error handling of cs42l56_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: cs42l51: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs42l42: Only report button state if there was a button interrupt (Jaroslav Kysela) [2125544] - ASoC: cs4270: update kernel-doc (Jaroslav Kysela) [2125544] - ASoC: cs4270: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add support for CLSA3541 ACPI device ID (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Enable Internal Boost in shared lib (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Do not print error when waking from hibernation (Jaroslav Kysela) [2125544] - ASoC: cs35l36: Fix the error handling of cs35l36_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: cs*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: arizona: Update arizona_aif_cfg_changed to use RX_BCLK_RATE (Jaroslav Kysela) [2125544] - ASoC: alc56*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: ak4613: cares Simple-Audio-Card case for TDM (Jaroslav Kysela) [2125544] - ASoC: ak4613: add TDM256 support (Jaroslav Kysela) [2125544] - ASoC: ak4613: rename constraint to constraint_rates (Jaroslav Kysela) [2125544] - ASoC: ak4613: priv has ctrl1 instead of iface (Jaroslav Kysela) [2125544] - ASoC: ak4613: return error if it was setup as clock provider (Jaroslav Kysela) [2125544] - ASoC: ak4613: tidyup ak4613_interface (Jaroslav Kysela) [2125544] - ASoC: ak4613: add missing mutex_lock() (Jaroslav Kysela) [2125544] - ASoC: ak4642: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: ak*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: ak4*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: adau1761: Add ADAU1761-as-ADAU1361 compatibility mode (Jaroslav Kysela) [2125544] - ASoC: ada*, ssm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: ab8500: Remove some leftover from the "Replace GPLv2 boilerplate/reference with SPDX" rules (Jaroslav Kysela) [2125544] - ASoC: ad1*, ada*, ssm*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: test-component: Rename set_fmt_new back to set_fmt (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: rename asoc_simple_init_dai_link_params() to asoc_simple_init_for_codec2codec() (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils.c: care Codec2Codec vs DPCM:BE (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils.c: ignore Codec2Codec setting if it already have (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: Make asoc_simple_clean_reference() return void (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2: indicate "Experimental stage" warning only when successed (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2: Add of_node_put() in fail path (Jaroslav Kysela) [2125544] - ASoc: audio-graph-card2: Fix refcount leak bug in __graph_get_type() (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: remove pre-alloced Codec2Codec space (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: make Codec2Codec settings optional (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: use of_property_read_u32() for rate (Jaroslav Kysela) [2125544] - ASoC: audio_graph_card2: Fix port numbers in example (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2-custom-sample.dtsi: add verbose explanation (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card: Add of_node_put() in fail path (Jaroslav Kysela) [2125544] - ASoC: test-component: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: use software node API in Atom boards (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_ssp_amp: remove 'set-but-not-used' warning (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: avoid oops in error handling (Jaroslav Kysela) [2125544] - ASoC: Intel: use software node API in SoundWire machines (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: sof_sdw: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: Drop redundant enum constant (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_ssp_amp: enable capture stream from cs35l41 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: allow HDaudio/HDMI disable (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add quirk for HP Omen 16-k0005TX (Jaroslav Kysela) [2125544] - ASoC: intel: sof_sdw: add RT711 SDCA card for MTL platform (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_pcm512x: remove unnecessary init (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_nau8825: Move quirk check to the front in late probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add support for Dell SKU 0AFF (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add support for Dell SKU 0AF0 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Perform quirk check first in card late probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Add support for mtl_mx98357_rt5682 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: fix out-of-bounds array access (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: rename RTL1019 compatible driver to rt1019p (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_nau8825: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_da7219_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ALSA: x86: intel_hdmi_audio: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ALSA: x86: intel_hdmi_audio: enable pm_runtime and set autosuspend delay (Jaroslav Kysela) [2125544] - ASoC: xtensa: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: xtensa: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: uniphier: make arrays mul and div static const, makes object smaller (Jaroslav Kysela) [2125544] - ASoC: uniphier: simplify the return expression of uniphier_aio_compr_set_params() (Jaroslav Kysela) [2125544] - ASoC: spear: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-topology: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-stream: test DMA buffer first in hw_params (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-stream: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-ipc: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dsp: report error on power-up/down (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: Drop misleading comment regarding dma_data (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: fix sof_es8336 probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: remove hard-coded SSP selection (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: reset the num_links during probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: add support for HDMI_In capture (Jaroslav Kysela) [2125544] - ASoC: Intel: common: fix typo for tplg naming (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Add support for adl_rt1019_rt5682s (Jaroslav Kysela) [2125544] - ASoC: Intel: soc-acpi: add table for HP Omen 16-k0005TX (Jaroslav Kysela) [2125544] - ASoC: Intel: soc-acpi: Add entry for sof_es8336 in ADL match table (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: ignore GpioInt when looking for speaker/headset GPIO lines (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: Fix GPIO quirks set via module option (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_da7219_max98373: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: add adl_mx98360a_cs4242 board config (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: support BT offload audio (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: skl_nau88l25_ssm4567: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: skl_nau88l25_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_rt5663_rt5514_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_rt5663_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_da7219_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: hda: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: glk_rt5682_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: cml_rt1011_rt5682: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: Use temporary variable for struct device (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: reset acpi_chan_package (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Reorganize jack detect handling (Jaroslav Kysela) [2125544] - ASoC: Intel: bxt_da7219_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Improve hw_params() debug-ability (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Improve probe() function quality (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Update file comments (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Update code indentation (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Reword driver name (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Reword prefixes of all driver members (Jaroslav Kysela) [2125544] - ASoC: Intel: Rename haswell source file to hsw_rt5640 (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst_ipc: remove redundant test (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Remove FE DAI ops (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve codec_init() quality (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve hw_params() debug-ability (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve probe() function quality (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Update file comments (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Update code indentation (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Reword driver name (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Reword prefixes of all driver members (Jaroslav Kysela) [2125544] - ASoC: Intel: Rename broadwell source file to bdw_rt286 (Jaroslav Kysela) [2125544] - ASoC: codecs: rt286: Reorganize jack detect handling (Jaroslav Kysela) [2125544] - ASoC: Intel: broadwell: Make broadwell_disable_jack() return void (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt5677: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt5650: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst_ipc: remove useless initializations (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst: remove useless initialization (Jaroslav Kysela) [2125544] - ASoC: intel: atom: Remove superfluous flush_scheduled_work() (Jaroslav Kysela) [2125544] - ASoC: Intel: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: controls: remove useless initializations (Jaroslav Kysela) [2125544] - ASoC: Intel: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: Intel: skylake: skl-pcm: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: Skylake: remove redundant re-assignments to pointer array (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: bdw: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: byt: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: cnl: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: Do snd_hdac_ext_stream_decouple() only once (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Fix potential buffer overflow by snprintf() (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: add sanity check on SSP index reported by NHLT (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: only fixup topology name if not set already (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: don't set fw_filename (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: enable dmic handling with 2 or fewer SoundWire links (Jaroslav Kysela) [2125544] - ASoC: soc-core: accept zero format at snd_soc_runtime_set_dai_fmt() (Jaroslav Kysela) [2125544] - ASoC: SOF: compress: Prevent current kernel running with older FW (Jaroslav Kysela) [2125544] - ASoC: SOF: Copy compress parameters into extended data (Jaroslav Kysela) [2125544] - ASoC: SOF: compress: Dynamically allocate pcm params struct (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: atom: don't keep a temporary string in fixup_tplg_name (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add trigger callback into sdw_callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Correct the ROM/FW state reporting code (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: MTL: remove redundant snd_sof_dsp_read() call (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: mtl: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: mtl: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Introduce skip_imr_boot flag (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: disable IMR boot when resuming from ACPI S4 and S5 states (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: IPC4: enable IMR boot (Jaroslav Kysela) [2125544] - ASoC: SOC: Intel: introduce cl_init callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Do not (wrongly) assume positive return value in IMR path (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Revisit IMR boot sequence (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: Print out the non matching ext_man magic number (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-topology: Fix clang -Wformat warning (Jaroslav Kysela) [2125544] - ASoC: SOF: remove warning on ABI checks (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Fix error code in sof_ipc4_volume_put() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-pcm: set pcm rate to dai setting (Jaroslav Kysela) [2125544] - ASoC: SOF: reduce default verbosity of IPC logs (Jaroslav Kysela) [2125544] - Revert "RedHat: ASoC: SOF: Intel: do not enable IMR boot when resuming by default" (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: fix alh_group_ida max value (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: fix wrong use of sizeof in sof_ipc4_widget_setup_comp_src() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: set domain bit based on dp domain type (Jaroslav Kysela) [2125544] - ASoC: SOF: add ipc4 SRC module support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: move ida allocate/free to widget_setup/free (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: free memories allocated in sof_ipc4_get_audio_fmt (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: check dai->private in ipc_free() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: add SoundWire/ALH aggregation support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Compile and runtime IPC version selection (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Align mt8186 clock names with dt-bindings (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Fix error code in probe (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Revise mt8195 boot flow (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: fix mt8195 StatvectorSel wrong setting (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: use pm_resume_and_get() on component probe (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: fix copy in sof_msg_inject_ipc4_dfs_write() (Jaroslav Kysela) [2125544] - ASoC: sof: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-probes: Only load the driver if IPC3 is used (Jaroslav Kysela) [2125544] - ASoC: SOF: probes: rename assign/free callbacks as startup/shutdown (Jaroslav Kysela) [2125544] - ASoC: SOF: Add cont_update_posn to platform parameters (Jaroslav Kysela) [2125544] - ASoC: SOF: pm: add definitions for S4 and S5 states (Jaroslav Kysela) [2125544] - ASoC: SOF: pm: add explicit behavior for ACPI S1 and S2 (Jaroslav Kysela) [2125544] - ASoC: SOF: debug: Clarify the IPC timeout handling path (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: remove unused variable (Jaroslav Kysela) [2125544] - ASoC: SOF: Switch to IPC generic firmware tracing (Jaroslav Kysela) [2125544] - ALSA: sc6000: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2125544] - ALSA: gus: Fix memory leaks at memory allocator error paths (Jaroslav Kysela) [2125544] - ALSA: sound/isa/gus: check the return value of kstrdup() (Jaroslav Kysela) [2125544] - ALSA: gus: Fix erroneous memory allocation (Jaroslav Kysela) [2125544] - ALSA: galaxy: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2125544] - ALSA: cs4236: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2125544] - ALSA: aloop: Fix random zeros in capture data when using jiffies timer (Jaroslav Kysela) [2125544] - ALSA: Add generic serial MIDI driver using serial bus API (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix potential buffer overflow by snprintf() (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Use lookup table to create modules (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Update AVS_FW_INIT_TIMEOUT_US declaration (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Lower UNLOAD_MULTIPLE_MODULES IPC timeout (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Replace hardcodes with SD_CTL_STREAM_RESET (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Recognize FW_CFG_RESERVED (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Use helper function to set up DMA (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Set max DMA segment size (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Block IPC channel on suspend (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Shield LARGE_CONFIG_GETs against zero payload_size (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Copy only as many RX bytes as necessary (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Relax DSP core transition timings (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Assign I2S gateway when parsing topology (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix i2s_test card name initialization (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: correct config reference for I2S test board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix parsing UUIDs in topology (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add da7219 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add max98373 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add max98357a machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add ssm4567 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add nau8825 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt5682 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt298 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt286 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt274 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add I2S-test machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add DMIC machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix build error on arc, m68k and sparc (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: APL-based platforms support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: SKL-based platforms support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Power management (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Machine board registration (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Replace link_mask usage with i2s_link_mask (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Event tracing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: D0ix power state support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Prepare for firmware tracing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Register HDAudio ext-bus operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add HDAudio machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: PCI driver implementation (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Coredump and recovery flow (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Drop direct ACPI dependency (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Depend on SND_INTEL_DSP_CONFIG (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Enable AVS driver only on x86 platforms (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: HDA PCM BE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: non-HDA PCM BE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Generic PCM FE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Generic soc component driver (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Account for libraries when booting basefw (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Configure modules according to their type (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Prepare modules before bindings them (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Arm paths after creating them (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Path state management (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Path creation and freeing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Declare path and its components (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Support link_mask formatted string (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add topology loading operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse path and path templates tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse pipeline and module tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse pplcfg and binding tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse module-extension tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add topology parsing infrastructure (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add MeteorLake machines (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Declare vendor tokens (Jaroslav Kysela) [2125544] - ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK_AON bit (Jaroslav Kysela) [2125544] - uapi: sof: abi: Bump SOF ABI for ext_data_length (Jaroslav Kysela) [2125544] - ASoC: SOF: Add two new structures for topology manifest data (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: introduce cont_update_posn in sof_ipc_stream_params struct (Jaroslav Kysela) [2125544] - ASoC: SOF: bump SOF_ABI_MINOR (Jaroslav Kysela) [2125544] - ASoC: SOF: Add header for IPC4 manifest (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: add code to parse config params for ACPDMIC dai (Jaroslav Kysela) [2125544] - ASoC: SOF: Add topology tokens for IPC4 (Jaroslav Kysela) [2125544] - ASoC: hdac_hda: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: max98504: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: adau1372: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: cx2072x: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6351: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6358: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6359: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6660: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: pcm3060: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt9120: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt700: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt715: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt715-sdca: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt1308-sdw: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt1316-sdw: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: wsa881x: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: sdw-mockup: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: lochnagar: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: lochnagar: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: tfa*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tfa9879: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cs*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wm9090: Remove redundant endianness flag (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor out the I2C and SPI bus code into separate modules (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor our MCLK and mutex initialisation (Jaroslav Kysela) [2125544] - ASoC: wm8731: Move regulator request into wm8731_init() (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor component init out of bus code (Jaroslav Kysela) [2125544] - ASoC: wm8731: Update to modern DAI terminology (Jaroslav Kysela) [2125544] - ASoC: wm2000: fix missing clk_disable_unprepare() on error in wm2000_anc_transition() (Jaroslav Kysela) [2125544] - ASoC: wm2000: Remove redundant endianness flag (Jaroslav Kysela) [2125544] - ASoC: wm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix amp gain register offset & default (Jaroslav Kysela) [2125544] - ASoC: tas2764: Correct playback volume range (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix and extend FSYNC polarity handling (Jaroslav Kysela) [2125544] - ASoC: tas2764: Add post reset delays (Jaroslav Kysela) [2125544] - ASoC: tas*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tas*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas2764: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [2125544] - ASoC: tas*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [2125544] - ASoC: tas2764: Add the driver for the TAS2764 (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix TDM mode BSEL settings (Jaroslav Kysela) [2125544] - ASoC: max*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: max98396: Implement DSP speaker monitor (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix register access for PCM format settings (Jaroslav Kysela) [2125544] - ASoC: max98396: Improve some error prints (Jaroslav Kysela) [2125544] - ASoC: max98396: add voltage regulators (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix build error for implicit function declaration (Jaroslav Kysela) [2125544] - ASoC: max98396: add amplifier driver (Jaroslav Kysela) [2125544] - ASoC: rt*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: rt1019: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: fsl: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: pistachio: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: samsung: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sunxi: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tegra: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: test-component: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: uniphier: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ad*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ak*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: alc*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: da*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: es*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: msm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: nau*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: pcm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: spdif: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ssm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sta*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: twl*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: uda*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: 88pm860x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ab8500: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ac97: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ads117x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: bd28623: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: bt-sco: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cpcap: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cq93vc: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cx20442: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: dmic: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: gtm601: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: hdac_hdmi: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ics43432: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: inno_rk3036: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: isabelle: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: jz4740: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: lm49453: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: mc13783: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ml26124: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sgtl5000: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: si476x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: stac9766: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sti-sas: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tscs42xx: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wl1273: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: zl38060: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: fsl_micfil: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: fsl_asrc_dma: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: soc-component: Remove non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: Move snd_soc_component_is_codec to be local (Jaroslav Kysela) [2125544] - ASoC: soc-component: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: core: Add new SOC_DOUBLE_SX_TLV macro (Jaroslav Kysela) [2125544] - ASoC: Remove unused hw_write_t type (Jaroslav Kysela) [2125544] - ASoC: soc.h: Add SOC_SINGLE_S_EXT_TLV macro (Jaroslav Kysela) [2125544] - ASoC: soc.h: Introduce SOC_DOUBLE_R_S_EXT_TLV() macro (Jaroslav Kysela) [2125544] - ASoC: soc.h: Add SOC_SINGLE_S_TLV() macro (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Update to modern DAI terminology (Jaroslav Kysela) [2125544] - ALSA: hda: Skip event processing for unregistered codecs (Jaroslav Kysela) [2125544] - ASoC: codecs: Add HD-Audio codec driver (Jaroslav Kysela) [2125544] - ASoC: cs42l42: Move CS42L42 register descriptions to general include (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Read System Name from ACPI _SUB to identify firmware (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add common cs35l41 enter hibernate function (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41 exit hibernate function into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs_dsp config struct into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41 fs errata into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41_set_cspl_mbox_cmd to shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Support external boost (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Add support for MeteorLake (MTL) (Jaroslav Kysela) [2125544] - treewide: Replace zero-length arrays with flexible-array members (Jaroslav Kysela) [2125544] - ASoC: SOF: add definitions for different IPC types (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: enhance debug messages (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: add sdw blob (Jaroslav Kysela) [2125544] - AsoC: SOF: ipc4-topology: Add dai_get_clk op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for SSP/DMIC DAI's (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a new IPC op for parsing topology manifest (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: init NHLT for IPC4 (Jaroslav Kysela) [2125544] - ASoC: SOF: Add ops_free (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: set the BE DAI ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-pcm: Expose sof_ipc4_set_pipeline_state() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add the dai_config op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add route_setup/route_free ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add widget_setup/widget_free ops (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Add pcm ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add control IO ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add control_setup op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing mixer widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing and preparing pga widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add prepare op for DAI type widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add prepare op for AIF type widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing DAI_IN/DAI_OUT widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing AIF_IN/AIF_OUT widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Introduce topology ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Return from dtrace_read if there is no new data available (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Add helper function to update the sdev->host_offset (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Introduce SOF_DTRACE_INITIALIZING state (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: implement pm ctx_save callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Switch to use the generic pm_ops.set_core_state (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: Add set_core_state pm_ops implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: Add initial header file for ipc4 (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Add set_core_state pm_ops implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: sof_ipc_pm_ops: Add support for DSP core power management (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 suspend check dsp idle (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 modify dram type as non-cache (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add shared_size for mediatek common chip information (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: revise mt8195 clock sequence (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Add SOF pm ops callback for Renoir (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Fix reversed if statement (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Propagate write errors correctly (Jaroslav Kysela) [2125544] - ASoC: SOF: Fix potential NULL pointer dereference (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-ipc-flood-test: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: remove duplicate include in mt8195.c (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8195 debug dump (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mediatek common debug dump (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Move dtrace related variables local from sof_dev (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce opaque storage of private data for firmware tracing (Jaroslav Kysela) [2125544] - ASoC: SOF: Modify the host trace_init parameter list to include dmab (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Move host ops wrappers from generic header to private (Jaroslav Kysela) [2125544] - ASoC: SOF: Clone the trace code to ipc3-dtrace as fw_tracing implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: Rename dtrace_is_supported flag to fw_trace_is_supported (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce IPC independent ops for firmware tracing support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Cap the rmaining to count in IPC4 mode (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 ipc support (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add ipc support for mt8195 (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: HDA: Set up sof_ipc4_fw_data for IPC4 (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Add FW loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add IPC4 private header (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: HDA: Set IPC4-specific DSP ops for CaVS platforms (Jaroslav Kysela) [2125544] - ASoC: SOF: trace: The dtrace is only available with SOF_IPC (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: IPC flood test can only work with SOF_IPC (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Add support for IPC4 messages (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Separate the message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add support IPC4 message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add API to get the ipc_type (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-probes: Query the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Query the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add API to get the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: Add support for mandatory message handling functionality (Jaroslav Kysela) [2125544] - ASoC: SOF: Add rx_data pointer to snd_sof_ipc_msg struct (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Remove the ipc3-ops.h header file (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: fix missing pci_release_regions() on error in sof_pci_probe() (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Call optional query_fw_configuration on first boot (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Remove snd_sof_parse_module_memcpy() as it is not used (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: bdw/byt/pci-tng: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: imx: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: renoir: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Switch to use the fw_loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add check for fw_loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: Implement firmware parsing and loading (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce IPC dependent ops for firmware handling, loading (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a prepare op to IPC topology widget ops (Jaroslav Kysela) [2125544] - ASoC: SOF: clarify use of widget complete flag (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Skip parsing DAI link tokens if not needed (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: remove unnecessary function declaration (Jaroslav Kysela) [2125544] - ASoC: SOF: Add two new fields to struct snd_sof_widget (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a route_free op in struct sof_ipc_tplg_ops (Jaroslav Kysela) [2125544] - ASoC: SOF: expose a couple of functions (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: Move the call to snd_sof_pcm_platform_hw_params() (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: Set up widgets from source to sink (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: reset route status before freeing widget (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a new op to set up volume table (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Fix allyesconfig build error (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 change ipc timeout as 1 second (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-ipc-msg-injector: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: debug: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: control: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add DSP system PM callback for mt8186 (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 dsp clock support (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 sof fw loader and dsp ops (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 hardware support (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Remove the old fw_ready related code (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: imx: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Do not check for the fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Add local implementation for handling fw_ready message (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: protect hw_params against successive calls (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add helper for link DMA cleanups (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: reset dma_data and release stream (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: improve suspend case (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: move code to deal with hda dai/dailink suspend (Jaroslav Kysela) [2125544] - ASOC: SOF: Intel: hda-dai: add hda_dai_hw_free_ipc() helper (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: flag errors on pipeline teardown (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: regroup dai and link DMA operations (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: split link DMA and dai operations (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: use snd_soc_dai_get_widget() helper (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: simplify hda_dai_widget_update() prototype (Jaroslav Kysela) [2125544] - ASOC: SOF: Intel: hda-dai: consistent naming for HDA DAI and HDA link DMA (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Add IPC-specific dai ops for IPC3 (Jaroslav Kysela) [2125544] - ASoC: SOF: remove incorrect clearing of prepared flag (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: simplify NHLT handling (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Check w->sname validity once in sof_connect_dai_widget() (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: remove useless assignment (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-tgl: add RPL-P support (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-tgl: add ADL-PS support (Jaroslav Kysela) [2125544] - ASOC: SOF: pci: add ipc_type override for Intel IPC4 tests (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: don't use the community key on APL Chromebooks (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Use dedicated MBOX for ACP and PSP communication (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Add psp_mbox_ready() and psp_send_cmd() callback (Jaroslav Kysela) [2125544] - ASoC: SOF: using pm_runtime_resume_and_get to simplify the code (Jaroslav Kysela) [2125544] - ASoC: SOF: Kconfig: Make SND_SOC_SOF_HDA_PROBES tristate (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add IP identifier (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: expose some codeloader functions (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Define rom_status_reg in sof_intel_dsp_desc (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: define check_ipc_irq op (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: use BIT() macros for consistency (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: move HDA_CL_STREAM_FORMAT definition to header (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: use common ops across platforms (Jaroslav Kysela) [2125544] - ASoC: SOF: remove const qualifier for 'struct snd_sof_dsp_ops' (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: preserve topology filename override in nocodec mode (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: add parameter to override topology filename (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: add parameter to override firmware filename (Jaroslav Kysela) [2125544] - ASoC: SOF: add IPC-dependent file names (Jaroslav Kysela) [2125544] - ASoC: SOF: add default IPC capability and file paths (Jaroslav Kysela) [2125544] - ASoC: SOF: add path indirection to each IPC type (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Check the bar size before remapping (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Move the ipc_set_get_comp_data() local to ipc3-control (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: Use the widget_kcontrol_setup ops for kcontrol set up (Jaroslav Kysela) [2125544] - ASoC: SOF: Add widget_kcontrol_setup control ops for IPC3 (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Switch over to use the rx_msg ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Switch over to use the tx_msg and set_get_data ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use the get_reply ops in snd_sof_ipc_get_reply() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add check for mandatory IPC message handling ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Separate the ops checks by functions/topics (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement rx_msg IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the get_reply IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the set_get_data IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Use sof_ipc3_tx_msg() internally for message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the tx_msg IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add high level IPC IO callback definitions to ipc_ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add helper function to prepare and send an IPC message (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 add shutdown callback (Jaroslav Kysela) [2125544] - ASoC: SOF: OF: Add shutdown callback for SOF OF device (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Avoid open coded arithmetic in memory allocation (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: use new sound control LED layer (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove redundant return statements (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove header from struct snd_sof_ipc_msg (Jaroslav Kysela) [2125544] - ASoC: SOF: Drop 'header' parameter from tx_message() API (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use msg->reply_data directly in snd_sof_ipc_get_reply() (Jaroslav Kysela) [2125544] - ASoC: SOF: disable dma trace in s0ix (Jaroslav Kysela) [2125544] - ASoC: SOF: extend the interface to stop DMA trace (Jaroslav Kysela) [2125544] - ASoC: SOF: Drop support for mapped control data (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use ipc->max_payload_size for message/reply size checking (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add max_payload_size field in struct snd_sof_ipc (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove dmab and dmab_bdl from snd_sof_dev struct (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-loader: Use local snd_dma_buffer (Jaroslav Kysela) [2125544] - ASoC: amd: acp: add missing platform_device_unregister() in acp_pci_probe() (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Fix initialization of ext_intr_stat1 in i2s_irq_handler() (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Use non-legacy DAI naming for cs35l41 (Jaroslav Kysela) [2125544] - ASoC: amd: enable RPL Platform acp drivers build (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform pci driver pm-ops (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform init/de-init functions (Jaroslav Kysela) [2125544] - ASoC: amd: add ACP PCI driver for RPL platform (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform acp header file (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add error handling cases (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Modify const resource struct variable to generic (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Drop superfluous mmap callback (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Modify local variables name to generic (Jaroslav Kysela) [2125544] - ASoC: amd: yc: Decrease level of error message (Jaroslav Kysela) [2125544] - ASoC: amd: yc: add new YC platform varaint support (Jaroslav Kysela) [2125544] - ASoC: amd: fix Jadeite kconfig warning and build errors (Jaroslav Kysela) [2125544] - ASoC: amd: Fix error pointer dereference (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add legacy audio driver support for Rembrandt platform (Jaroslav Kysela) [2125544] - ASoC: amd: acp: ACP code generic to support newer platforms (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Remove rt1019_1 codec conf from machine driver (Jaroslav Kysela) [2125544] - ASoC: amd: Remove duplicated include in acp-es8336.c (Jaroslav Kysela) [2125544] - ASoC: amd: fix for variable set but not used warning (Jaroslav Kysela) [2125544] - ASoC: amd: drop machine driver remove function (Jaroslav Kysela) [2125544] - ASoC: amd: remove unused header file inclusion (Jaroslav Kysela) [2125544] - ASoC: amd: acp-es8336: use static variables (Jaroslav Kysela) [2125544] - ASoC: amd: fix ACPI dependency compile errors and warnings (Jaroslav Kysela) [2125544] - ASoC: amd: enable machine driver build for Jadeite platform (Jaroslav Kysela) [2125544] - ASoC: amd: add Machine driver for Jadeite platform (Jaroslav Kysela) [2125544] - ASoC: amd: add I2S MICSP instance support (Jaroslav Kysela) [2125544] - ASoC: amd: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Fix error handling in .remove() (Jaroslav Kysela) [2125544] - ASoC: amd: acp: fix typo in comment (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add support for rt5682s and rt1019 card with hs instance (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add support for nau8825 and max98360 card (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Rename set_fmt_new back to set_fmt (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Set Speaker enable/disable pin through rt1019 codec driver. (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Set Speaker enable/disable pin through rt1019 codec driver (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Remove duplicate include files (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add pm ops callback in machine driver (Jaroslav Kysela) [2125544] - ASoC: soc-utils: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: topology: Drop superfluous check of CONFIG_SND_CTL_VALIDATION (Jaroslav Kysela) [2125544] - ASoC: topology: Rename soc_tplg_init_kcontrol() function (Jaroslav Kysela) [2125544] - ASoC: topology: Correct error message (Jaroslav Kysela) [2125544] - ASoC: topology: Rename SOC_TPLG_PASS_MIXER to _CONTROL (Jaroslav Kysela) [2125544] - ASoC: topology: Return bool instead of int (Jaroslav Kysela) [2125544] - ASoC: topology: Remove unnecessary looping (Jaroslav Kysela) [2125544] - ASoC: topology: Use for loop instead of while (Jaroslav Kysela) [2125544] - ASoC: topology: KUnit: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: topology: KUnit: Followup prototype change of snd_soc_unregister_card() (Jaroslav Kysela) [2125544] - ASoC: DPCM: Don't pick up BE without substream (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: demote warnings on non-atomic BE connection (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: fix BE transition for TRIGGER_START (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: improve BE transition for TRIGGER_START (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: improve BE transition for PAUSE_RELEASE (Jaroslav Kysela) [2125544] - ASoC: ops: Fix integer detection for when max possible values > 1 (Jaroslav Kysela) [2125544] - ASoC: ops: Fix boolean/integer detection for simple controls (Jaroslav Kysela) [2125544] - ASoC: ops: Don't modify the driver's plaform_max when reading state (Jaroslav Kysela) [2125544] - ASoC: ops: Remove unneeded delay.h inclusion (Jaroslav Kysela) [2125544] - ASoC: ops: Clarify snd_soc_info_volsw_sx() (Jaroslav Kysela) [2125544] - ASoC: soc-generic-dmaengine-pcm: Use default config when none is given (Jaroslav Kysela) [2125544] - ASoC: dapm: Move stereo autodisable check (Jaroslav Kysela) [2125544] - ASoC: soc-dai: Remove set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: soc-core.c: share code for snd_soc_of_get_dai_link_cpus/codecs() (Jaroslav Kysela) [2125544] - ASoC: soc-core.c: fixup snd_soc_of_get_dai_link_cpus() (Jaroslav Kysela) [2125544] - ASoC: core: Switch core to new DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: core: Make snd_soc_unregister_card() return void (Jaroslav Kysela) [2125544] - ASoC: core: Always send the CPU DAI a direct clock specifier (Jaroslav Kysela) [2125544] - ASoC: core: Add set_fmt_new callback that directly specifies provider (Jaroslav Kysela) [2125544] - ASoC: core: Pass legacy_dai_naming flag directly (Jaroslav Kysela) [2125544] - ASoC: core: Correct spelling fliped -> flipped (Jaroslav Kysela) [2125544] - ASoC: soc-core: remove always-false path (Jaroslav Kysela) [2125544] - ASoC: Introduce snd_soc_of_get_dai_link_cpus (Jaroslav Kysela) [2125544] - ASoC: soc-component: Update handling to component delays (Jaroslav Kysela) [2125544] - ASoC: Introduce 'fixup_controls' card method (Jaroslav Kysela) [2125544] - ASoC: soc-card: Create jack kcontrol without pins (Jaroslav Kysela) [2125544] - ALSA: Replace acpi_bus_get_device() (Jaroslav Kysela) [2125544] - Revert "ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations" (Jaroslav Kysela) [2125544] - ALSA: hda: beep: Simplify keep-power-at-enable behavior (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Don't skip notification handling during PM operation (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Limit the maximal count of PCM devices to 8 (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: ELD procfs - print the codec NIDs (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Simplify the pcm_idx condition in hdmi_pcm_setup_pin() (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Fix the converter allocation for the silent stream (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: change type for the 'assigned' variable (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: Move structs out of #define block (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add a quirk for HP OMEN 16 (8902) mute LED (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Fix the converter reuse for the silent stream (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for ASUS GA503R laptop (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Re-arrange quirk table entries (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop (Jaroslav Kysela) [2125544] - ALSA: hda: Fix Nvidia dp infoframe (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Huawei WRT-WX9 (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: set depop delay for tegra (Jaroslav Kysela) [2125544] - ALSA: hda: add Intel 5 Series / 3400 PCI DID (Jaroslav Kysela) [2125544] - ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Fix out of bounds access in snd_emu10k1_pcm_channel_alloc() (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: Align BDL entry to 4KB boundary (Jaroslav Kysela) [2125544] - ALSA: hda/sigmatel: Fix unused variable warning for beep power change (Jaroslav Kysela) [2125544] - ALSA: hda/sigmatel: Keep power up while beep is enabled (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add speaker AMP init for Samsung laptops with ALC298 (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Clevo NS50PU, NS70PU (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support new Dolphin Variants (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Lenovo Yoga7 14IAL7 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Clarify support for CSC3551 without _DSD Properties (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirks for ASUS Zenbooks using CS35L41 (Jaroslav Kysela) [2125544] - ALSA: hda: Fix crash due to jack poll in suspend (Jaroslav Kysela) [2125544] - ALSA: hda/cirrus - support for iMac 12,1 model (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add a quirk for HP OMEN 15 (8786) mute LED (Jaroslav Kysela) [2125544] - ALSA: hda/conexant: Add quirk for LENOVO 20149 Notebook model (Jaroslav Kysela) [2125544] - ALSA: ice1712: remove redundant assignment to new (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for another Asus K42JZ model (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for HP Spectre x360 15-eb0xxx (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Clevo NV45PZ (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Lenovo Yoga9 14IAP7 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support CLSA0101 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Use the CS35L41 HDA internal define (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable speaker and mute LEDs for HP laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix build error unused-function (Jaroslav Kysela) [2125544] - ALSA: asihpi: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: asihpi: Fix typo in comments (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Fix typo in comments (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add module parameter to control firmware load (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Firmware switching and reloading (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add defaulted values into dsp bypass config sequence (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add fw id strings (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Read Speaker Calibration data from UEFI variables (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Hibernation during Suspend (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Speaker ID for laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support multiple load paths for firmware (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support reading subsystem id from ACPI (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Save Subsystem ID inside CS35L41 Driver (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add initial DSP support and firmware loading (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Save codec object inside component struct (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add apis to write the controls directly (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add Library to support CS_DSP ALSA controls (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Consolidate selections under SND_HDA_SCODEC_CS35L41 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Drop wrong use of ACPI_PTR() (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Don't dereference fwnode handle (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Improve dev_err_probe() messaging (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix comments wrt serial-multi-instantiate reference (Jaroslav Kysela) [2125544] - ALSA: hda: Fix put_device() inconsistency in error path (Jaroslav Kysela) [2125544] - ALSA: hda: Make device usage_count consistent across subsequent probing (Jaroslav Kysela) [2125544] - ALSA: hda: Fix null-ptr-deref when i915 fails and hdmi is denylisted (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: change cs8409_fixups v.pins initializers to static (Jaroslav Kysela) [2125544] - ASoC: doc: Update dead links (Jaroslav Kysela) [2125544] - ALSA: hda/via: Delete does not require return (Jaroslav Kysela) [2125544] - ALSA: ctxfi: fix typo in comment (Jaroslav Kysela) [2125544] - ALSA: cs5535audio: fix typo in comment (Jaroslav Kysela) [2125544] - ALSA: lola: Bounds check loop iterator against streams array size (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Amp Name based on channel and index (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Enable GPIO2 Interrupt for CLSA0100 laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Support for Interrupts (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Remove Set Channel Map api from binding (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Set Speaker Position for CLSA0100 Laptop (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix error in spi cs35l41 hda driver name (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Add Speaker Playback Switch for Warlock (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Add Speaker Playback Switch for Cyborg (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support new Odin Variants (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support manual mode detection for CS42L42 (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Use general cs42l42 include in cs8409 hda driver (Jaroslav Kysela) [2125544] - ALSA: hdsp: remove redundant assignment to pointer kctl (Jaroslav Kysela) [2125544] - ALSA: hda/conexant: add a new hda codec SN6140 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Move external boost handling to lib for ASoC use (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Handle all external boost setups the same way (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Reorganize log for playback actions (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Remove cs35l41_hda_reg_sequence struct (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Move boost config to initialization code (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Mute the device before shutdown (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Put the device into safe mode for external boost (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Boost type flag (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Always configure the DAI (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix I2S params comments (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Move cs35l41_gpio_config to shared lib (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Check hw_config before using it (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Unify hardware configuration (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: Enable Jack poll for tegra (Jaroslav Kysela) [2125544] - ALSA: hda: Jack detection poll in suspend state (Jaroslav Kysela) [2125544] - ALSA: echoaudio: remove redundant assignment to variable i (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Stop using iommu_present() (Jaroslav Kysela) [2125544] - ALSA: hda: intel-dsp-config: add missing RaptorLake PCI IDs (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: Correct the handling of fmt_config flexible array (Jaroslav Kysela) [2125544] - ALSA: hda: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: hda: Remove unused macro definition (Jaroslav Kysela) [2125544] - ALSA: hda: Reset all SIE bits in INTCTL (Jaroslav Kysela) [2125544] - tracing: ALSA: hda: Remove string manipulation out of the fast path (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ALSA: hda: intel-dspcfg: use SOF for UpExtreme and UpExtreme11 boards (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Properly refcounting clock rate (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Clear fixed clock rate at closing EP (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Fix an out-of-bounds bug in __snd_usb_parse_audio_interface() (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Register card again for iface over delayed_register option (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Inform the delayed registration more properly (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add quirk for LH Labs Geek Out HD Audio 1V5 (Jaroslav Kysela) [2125544] - ALSA: usb-audio: make read-only array marker static const (Jaroslav Kysela) [2125544] - ALSA: usb-audio: More comprehensive mixer map for ASUS ROG Zenith II (Jaroslav Kysela) [2125544] - ALSA: scarlett2: Add Focusrite Clarett+ 8Pre support (Jaroslav Kysela) [2125544] - ALSA: line6: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: hiface: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: usb/6fire: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add quirk for Behringer UMC202HD (Jaroslav Kysela) [2125544] - ALSA: bcd2000: Fix a UAF bug on the error path of probing (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Use atomic_try_cmpxchg in ep_state_update (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add endianness annotations (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Turn off 'manual mode' on Dell dock (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Support jack detection on Dell dock (Jaroslav Kysela) [2125544] - ALSA: usb-audio: US16x08: Move overflow check before array access (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Cancel pending work at closing a MIDI substream (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add mixer mapping for Gigabyte B450/550 Mobos (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Fix wrong kfree issue in snd_usb_endpoint_free_all (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Refcount multiple accesses on the single clock (Jaroslav Kysela) [2125544] - mfd: arizona-spi: Add Android board ACPI table handling (Jaroslav Kysela) [2125544] - mfd: arizona-spi: Split Windows ACPI init code into its own function (Jaroslav Kysela) [2125544] - mfd: arizona: Add missing statics to the of_match_tables (Jaroslav Kysela) [2125544] - firmware: cs_dsp: Add memory chunk helpers (Jaroslav Kysela) [2125544] - firmware: cs_dsp: Add pre_stop callback (Jaroslav Kysela) [2125544] - regmap: sdw: add required header files (Jaroslav Kysela) [2125544] - regmap: soundwire: remove unused header mod_devicetable.h (Jaroslav Kysela) [2125544] - regmap: Constify static regmap_bus structs (Jaroslav Kysela) [2125544] - soundwire: peripheral: remove useless ops pointer (Jaroslav Kysela) [2125544] - soundwire: intel: use pm_runtime_resume() on component probe (Jaroslav Kysela) [2125544] - soundwire: qcom: fix device status array range (Jaroslav Kysela) [2125544] - soundwire: qcom: remove duplicate reset control get (Jaroslav Kysela) [2125544] - soundwire: Intel: add trigger callback (Jaroslav Kysela) [2125544] - soundwire: qcom: Enable software clock gating requirement flag (Jaroslav Kysela) [2125544] - soundwire: qcom: Check device status before reading devid (Jaroslav Kysela) [2125544] - soundwire: qcom: Add flag for software clock gating check (Jaroslav Kysela) [2125544] - soundwire: revisit driver bind/unbind and callbacks (Jaroslav Kysela) [2125544] - soundwire: bus_type: fix remove and shutdown support (Jaroslav Kysela) [2125544] - soundwire: intel: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: qcom: soundwire: Add support for controlling audio CGCR from HLOS (Jaroslav Kysela) [2125544] - soundwire: qcom: adjust autoenumeration timeout (Jaroslav Kysela) [2125544] - soundwire: qcom: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: intel: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: cadence: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: bus: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: qcom: return error when pm_runtime_get_sync fails (Jaroslav Kysela) [2125544] - soundwire: bus: pm_runtime_request_resume on peripheral attachment (Jaroslav Kysela) [2125544] - soundwire: intel: disable WAKEEN in pm_runtime resume (Jaroslav Kysela) [2125544] - soundwire: cadence: recheck device0 attachment after status change (Jaroslav Kysela) [2125544] - soundwire: qcom: Add compatible name for v1.6.0 (Jaroslav Kysela) [2125544] - soundwire: stream: Fix error return code in do_bank_switch() (Jaroslav Kysela) [2125544] - soundwire: qcom: fix an error message in swrm_wait_for_frame_gen_enabled() (Jaroslav Kysela) [2125544] - soundwire: qcom: use __maybe_unused for swrm_runtime_resume() (Jaroslav Kysela) [2125544] - soundwire: qcom: constify static struct qcom_swrm_data global variables (Jaroslav Kysela) [2125544] - soundwire: qcom: add in-band wake up interrupt support (Jaroslav Kysela) [2125544] - soundwire: qcom: add runtime pm support (Jaroslav Kysela) [2125544] - soundwire: Replace acpi_bus_get_device() (Jaroslav Kysela) [2125544] - ALSA: Add snd_pcm_direction_name() helper (Jaroslav Kysela) [2125544] - ALSA: core: Fix double-free at snd_card_new() (Jaroslav Kysela) [2125544] - ALSA: hda: Once again fix regression of page allocations with IOMMU (Jaroslav Kysela) [2125544] - ALSA: pcm: oss: Fix race at SNDCTL_DSP_SYNC (Jaroslav Kysela) [2125544] - ALSA: control: Re-order bounds checking in get_ctl_id_hash() (Jaroslav Kysela) [2125544] - ALSA: control: Fix an out-of-bounds bug in get_ctl_id_hash() (Jaroslav Kysela) [2125544] - ALSA: seq: Fix data-race at module auto-loading (Jaroslav Kysela) [2125544] - ALSA: seq: oss: Fix data-race for max_midi_devs access (Jaroslav Kysela) [2125544] - ALSA: memalloc: Revive x86-specific WC page allocations again (Jaroslav Kysela) [2125544] - ALSA: info: Fix llseek return value when using callback (Jaroslav Kysela) [2125544] - ALSA: pcm: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: core: Replace scnprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: control-led: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: control: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: pcm: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: timer: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: core: Add async signal helpers (Jaroslav Kysela) [2125544] - ALSA: core: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: memalloc: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: control: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: compress: Fix kernel doc warnings (Jaroslav Kysela) [2125544] - ALSA: dmaengine: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: pcm: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: compress: Enable kernel doc markers for some functions (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Take buffer refcount while draining output (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Check stream state at exported functions (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Take open_mutex around parameter changes (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Move lock to snd_rawmidi_substream (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Make internal functions local static (Jaroslav Kysela) [2125544] - ALSA: control: Add input validation (Jaroslav Kysela) [2125544] - ALSA: control: Drop superfluous ifdef CONFIG_SND_CTL_DEBUG (Jaroslav Kysela) [2125544] - ALSA: control: Rename CONFIG_SND_CTL_VALIDATION to CONFIG_SND_CTL_DEBUG (Jaroslav Kysela) [2125544] - ALSA: control: Use xarray for faster lookups (Jaroslav Kysela) [2125544] - ALSA: seq: replace ternary operator with max() (Jaroslav Kysela) [2125544] - ALSA: pcm: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2125544] - pinctrl: amd: Don't save/restore interrupt status and wake status bits (Prarit Bhargava) [2130059] - x86/paravirt: Add a dummy __x86_paravirt_patch_template() function (Waiman Long) [2144161] - x86/paravirt: Fix kABI breakage in struct pv_mmu_ops (Waiman Long) [2144161]- can: af_can: fix NULL pointer dereference in can_rx_register() (Ivan Vecera) [2136823] - net: disable preemption in dev_core_stats_XXX_inc() helpers (Ivan Vecera) [2136823] - net: introduce CAN specific pointer in the struct net_device (Ivan Vecera) [2136823] - can: af_can: can_pernet_exit(): no need to iterate over and cleanup registered CAN devices (Ivan Vecera) [2136823] - net: add per-cpu storage and net->core_stats (Ivan Vecera) [2136823] - tun: switch to net core provided statistics counters (Ivan Vecera) [2136823] - tun: switch to u64_stats_t (Ivan Vecera) [2136823] - ceph: avoid putting the realm twice when decoding snaps fails (Xiubo Li) [2139881] - powerpc/64/kdump: Limit kdump base to 512MB (Mamatha Inamdar) [2132921] - ice: virtchnl rss hena support (Petr Oros) [2136516] - Documentation/admin-guide: Document nomodeset kernel parameter (Jocelyn Falempe) [2143952] - drm: Move nomodeset kernel parameter to the DRM subsystem (Jocelyn Falempe) [2143952] - usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - sound: usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - net: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - media: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - Input: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - HID: usbhid: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - usb: deprecate the third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - scsi: smartpqi: Change version to 2.1.20-035 (Don Brace) [2116976] - scsi: smartpqi: Initialize feature section info (Don Brace) [2116976] - scsi: smartpqi: Add controller cache flush during rmmod (Don Brace) [2116976] - scsi: smartpqi: Correct device removal for multi-actuator devices (Don Brace) [2116976] - scsi: smartpqi: Change sysfs raid_level attribute to N/A for controllers (Don Brace) [2116976] - scsi: smartpqi: Correct max LUN number (Don Brace) [2116976] - scsi: smartpqi: Add new controller PCI IDs (Don Brace) [2116976] - scsi: smartpqi: Convert to host_tagset (Don Brace) [2116976] - scsi: smartpqi: Stop using the SCSI pointer (Don Brace) [2116976] - smartpqi: Change request pointer to scsi_cmd_to_rq (Don Brace) [2116976] - scsi: smartpqi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Don Brace) [2116976] - EDAC/skx_common: Make output format similar (Aristeu Rozanski) [2124915] - EDAC/skx_common: Use driver decoder first (Aristeu Rozanski) [2124915] - ptp: introduce helpers to adjust by scaled parts per million (Izabela Bakollari) [2141639] - ptp: add missing documentation for parameters (Izabela Bakollari) [2141639] - mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context. (Nico Pache) [2144559] - scsi: target: loop: Fix handling of aborted TMRs (Maurizio Lombardi) [2141713] - ceph: fix NULL pointer dereference for req->r_session (Xiubo Li) [2137955] - ceph: Use kcalloc for allocating multiple elements (Xiubo Li) [2137955] - net/mlx5e: TC, Reject forwarding from internal port to internal port (Mohammad Kabat) [2131345] - md/raid1: stop mdx_raid1 thread when raid1 array run failed (Nigel Croxon) [2143270] - md: fix a crash in mempool_free (Nigel Croxon) [2143257] - md/raid0, raid10: Don't set discard sectors for request queue (Nigel Croxon) [2143250] - sgx: use ->f_mapping... (Vladis Dronov) [2130210] - x86/sgx: Improve comments for sgx_encl_lookup/alloc_backing() (Vladis Dronov) [2130210] - x86/sgx: Handle VA page allocation failure for EAUG on PF. (Vladis Dronov) [2130210] - x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd (Vladis Dronov) [2130210] - selftests/sgx: Ignore OpenSSL 3.0 deprecated functions warning (Vladis Dronov) [2130210] - x86/sgx: Set active memcg prior to shmem allocation (Vladis Dronov) [2130210] - x86/sgx: Drop 'page_index' from sgx_backing (Vladis Dronov) [2130210] - selftests/sgx: Page removal stress test (Vladis Dronov) [2130210] - selftests/sgx: Test reclaiming of untouched page (Vladis Dronov) [2130210] - selftests/sgx: Test invalid access to removed enclave page (Vladis Dronov) [2130210] - selftests/sgx: Test faulty enclave behavior (Vladis Dronov) [2130210] - selftests/sgx: Test complete changing of page type flow (Vladis Dronov) [2130210] - selftests/sgx: Introduce TCS initialization enclave operation (Vladis Dronov) [2130210] - selftests/sgx: Introduce dynamic entry point (Vladis Dronov) [2130210] - selftests/sgx: Test two different SGX2 EAUG flows (Vladis Dronov) [2130210] - selftests/sgx: Add test for TCS page permission changes (Vladis Dronov) [2130210] - selftests/sgx: Add test for EPCM permission changes (Vladis Dronov) [2130210] - Documentation/x86: Introduce enclave runtime management section (Vladis Dronov) [2130210] - x86/sgx: Free up EPC pages directly to support large page ranges (Vladis Dronov) [2130210] - x86/sgx: Support complete page removal (Vladis Dronov) [2130210] - x86/sgx: Support modifying SGX page type (Vladis Dronov) [2130210] - x86/sgx: Tighten accessible memory range after enclave initialization (Vladis Dronov) [2130210] - x86/sgx: Support adding of pages to an initialized enclave (Vladis Dronov) [2130210] - x86/sgx: Support restricting of enclave page permissions (Vladis Dronov) [2130210] - x86/sgx: Support VA page allocation without reclaiming (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_page_alloc() (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_{grow,shrink}() (Vladis Dronov) [2130210] - x86/sgx: Keep record of SGX page type (Vladis Dronov) [2130210] - x86/sgx: Create utility to validate user provided offset and length (Vladis Dronov) [2130210] - x86/sgx: Make sgx_ipi_cb() available internally (Vladis Dronov) [2130210] - x86/sgx: Move PTE zap code to new sgx_zap_enclave_ptes() (Vladis Dronov) [2130210] - x86/sgx: Rename sgx_encl_ewb_cpumask() as sgx_encl_cpumask() (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_ewb_cpumask() (Vladis Dronov) [2130210] - x86/sgx: Support loading enclave page without VMA permissions check (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EAUG function (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EMODT function (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EMODPR function (Vladis Dronov) [2130210] - x86/sgx: Add short descriptions to ENCLS wrappers (Vladis Dronov) [2130210] - x86/sgx: Ensure no data in PCMD page after truncate (Vladis Dronov) [2130210] - x86/sgx: Fix race between reclaimer and page fault handler (Vladis Dronov) [2130210] - x86/sgx: Obtain backing storage page with enclave mutex held (Vladis Dronov) [2130210] - x86/sgx: Mark PCMD page as dirty when modifying contents (Vladis Dronov) [2130210] - x86/sgx: Disconnect backing page references from dirty status (Vladis Dronov) [2130210] - HID: intel-ish-hid: ipc: Add Meteor Lake PCI device ID (Tony Camuso) [2132441] - hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message (Tony Camuso) [2132441] - HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo (Tony Camuso) [2132441] - ID: intel-ish-hid: hid-client: drop unexpected word "the" in the comments (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: use time_before to replace "jiffies < a" (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: add ADL and RPL device id (Tony Camuso) [2132441] - HID: intel-ish-hid: Use dma_alloc_coherent for firmware update (Tony Camuso) [2132441] - HID: intel-ish-hid: ishtp-fw-loader: Fix a kernel-doc formatting issue (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: Specify no cache snooping on TGL and ADL (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: only enable IRQ wakeup when requested (Tony Camuso) [2132441] - HID: intel-ish-hid: fix module device-id handling (Tony Camuso) [2132441] - HID: intel-ish-hid: hid-client: only load for matching devices (Tony Camuso) [2132441] - HID: intel-ish-hid: fw-loader: only load for matching devices (Tony Camuso) [2132441] - HID: intel-ish-hid: use constants for modaliases (Tony Camuso) [2132441] - s390/pci: add missing EX_TABLE entries to __pcistg_mio_inuser()/__pcilg_mio_inuser() (Tobias Huschle) [2141963] - s390/futex: add missing EX_TABLE entry to __futex_atomic_op() (Tobias Huschle) [2141963] - s390/uaccess: add missing EX_TABLE entries to __clear_user() (Tobias Huschle) [2141963] - net: usb: ax88179_178a: Fix packet receiving (Jose Ignacio Tornos Martinez) [2142725] {CVE-2022-2964} - net: usb: ax88179_178a: Fix out-of-bounds accesses in RX fixup (Jose Ignacio Tornos Martinez) [2142725] {CVE-2022-2964} - drm/i915/rpl-p: Add PCI IDs (Jocelyn Falempe) [2115880] - Revert "dma-buf: remove useless FMODE_LSEEK flag" (Jocelyn Falempe) [2115880] - drm/amd/display: Increase stack frame size limit for a few files. (Jocelyn Falempe) [2115880] - drm_crtc.h is missing include/linux/slab.h (Jocelyn Falempe) [2115880] - drm/amd/display: remove a duplicated declaration (Jocelyn Falempe) [2115880] - Revert "mm: shrinkers: provide shrinkers with names" (Jocelyn Falempe) [2115880] - Revert "drm/amdkfd: add SPM support for SVM" (Jocelyn Falempe) [2115880] - Merge DRM changes from upstream v5.19..v6.0 (Jocelyn Falempe) [2115880] - drm/i915/gvt: IMPORT_MODULE_NS workaround (Jocelyn Falempe) [2115880] - Replace EXPORT_SYMBOL_NS_GPL with EXPORT_SYMBOL_GPL (Jocelyn Falempe) [2115880] - Revert "vfio/gvt: Fix open/close when multiple device FDs are open" (Michel Dänzer) [2115880] - Revert "vfio/mdev: Pass in a struct vfio_device * to vfio_dma_rw()" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: convert to use vfio_register_emulated_iommu_dev" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: merge gvt.c into kvmgvt.c" (Jocelyn Falempe) [2115880] - Revert "vfio/mdev: Remove mdev_parent_ops" (Jocelyn Falempe) [2115880] - Revert "vfio: Make vfio_(un)register_notifier accept a vfio_device" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: Change from vfio_group_(un)pin_pages to vfio_(un)pin_pages" (Jocelyn Falempe) [2115880] - Revert "vfio: remove VFIO_GROUP_NOTIFY_SET_KVM" (Jocelyn Falempe) [2115880] - Revert "i915: Call aops write_begin() and write_end() directly" (Jocelyn Falempe) [2115880] - Merge DRM changes from upstream v5.18..v5.19 (Jocelyn Falempe) [2115880] - crypto: testmgr - disallow plain cbcmac(aes) and ghash in FIPS mode (Vladis Dronov) [2107595] - crypto: set the required FIPS_INTERNAL flag for gcm and ccm (Vladis Dronov) [2107595] - crypto: seqiv - flag instantiations as FIPS compliant (Vladis Dronov) [2107595] - crypto: xts - restrict key lengths to approved values in FIPS mode (Vladis Dronov) [2107595] - crypto: api - allow algs only in specific constructions in FIPS mode (Vladis Dronov) [2107595] - crypto: api - check for ERR pointers in crypto_destroy_tfm() (Vladis Dronov) [2107595] - crypto: api - Fix use-after-free and race in crypto_spawn_alg (Vladis Dronov) [2107595] - crypto: algapi - Avoid spurious modprobe on LOADED (Vladis Dronov) [2107595] - crypto: api - Retain alg refcount in crypto_grab_spawn (Vladis Dronov) [2107595] - crypto: api - Do not zap spawn->alg (Vladis Dronov) [2107595] - crypto: api - Fix race condition in crypto_spawn_alg (Vladis Dronov) [2107595] - crypto: api - Check spawn->alg under lock in crypto_drop_spawn (Vladis Dronov) [2107595] - crypto: algapi - reject NULL crypto_spawn::inst (Vladis Dronov) [2107595] - iavf: remove INITIAL_MAC_SET to allow gARP to work properly (Stefan Assmann) [1938635] - mm, slab: remove duplicate kernel-doc comment for ksize() (Michal Schmidt) [2143367] - slab: Introduce kmalloc_size_roundup() (Michal Schmidt) [2143367] - thermal: int340x: Mode setting with new OS handshake (Prarit Bhargava) [2072652] - thermal: int340x: Update OS policy capability handshake (Prarit Bhargava) [2072652] - hugetlb: remove unnecessary set_page_count in prep_compound_gigantic_page (Chris von Recklinghausen) [2143631] - mm/hugetlb: clear compound_nr before freeing gigantic pages (Chris von Recklinghausen) [2143631] - uprobes: __replace_page() avoid BUG in munlock_vma_page() (Chris von Recklinghausen) [2143631] - s390/boot: add secure boot trailer (Tobias Huschle) [2141967] - ice: Fix configuring VIRTCHNL_OP_CONFIG_VSI_QUEUES with unbalanced queues (Michal Schmidt) [2137378] - nvme: wait until quiesce is done (Ming Lei) [2144258] - scsi: make sure that request queue queiesce and unquiesce balanced (Ming Lei) [2144258] - scsi: avoid to quiesce sdev->request_queue two times (Ming Lei) [2144258] - dm: don't stop request queue after the dm device is suspended (Ming Lei) [2144258]- ata: libata-core: Print timeout value when internal command times (Ewan D. Milne) [1823688] - ata: libata-core: fix sloppy parameter type in ata_exec_internal[_sg]() (Ewan D. Milne) [1823688] - ata: libata-core: make ata_exec_internal_sg() *static* (Ewan D. Milne) [1823688] - perf/x86/intel: Fix unchecked MSR access error for Alder Lake N (Michael Petlan) [2104807] - perf/x86/intel: Fix PEBS data source encoding for ADL (Michael Petlan) [2104807] - perf/x86/intel: Fix PEBS memory access info encoding for ADL (Michael Petlan) [2104807] - i40e: Fix DMA mappings leak (Ivan Vecera) [2077847] - fbcon: Fix delayed takeover locking (Jocelyn Falempe) [2134795] - fbcon: use min() to make code cleaner (Jocelyn Falempe) [2134795] - fbcon: Use array3_size() helper in scr_memcpyw() (Jocelyn Falempe) [2134795] - fbcon: Maintain a private array of fb_info (Jocelyn Falempe) [2134795] - fbcon: untangle fbcon_exit (Jocelyn Falempe) [2134795] - fbcon: Move more code into fbcon_release (Jocelyn Falempe) [2134795] - fbcon: Move console_lock for register/unlink/unregister (Jocelyn Falempe) [2134795] - fbcon: Consistently protect deferred_takeover with console_lock() (Jocelyn Falempe) [2134795] - fbcon: use lock_fb_info in fbcon_open/release (Jocelyn Falempe) [2134795] - fbcon: move more common code into fb_open() (Jocelyn Falempe) [2134795] - fbcon: Ditch error handling for con2fb_release_oldinfo (Jocelyn Falempe) [2134795] - fbcon: Extract fbcon_open/release helpers (Jocelyn Falempe) [2134795] - fb: Delete fb_info->queue (Jocelyn Falempe) [2134795] - fbcon: Replace FBCON_FLAGS_INIT with a boolean (Jocelyn Falempe) [2134795] - fbcon: Use delayed work for cursor (Jocelyn Falempe) [2134795] - fbdev/sysfs: Fix locking (Jocelyn Falempe) [2134795] - fbcon: delete delayed loading code (Jocelyn Falempe) [2134795] - fbcon: Introduce wrapper for console->fb_info lookup (Jocelyn Falempe) [2134795] - fbcon: Move fbcon_bmove(_rec) functions (Jocelyn Falempe) [2134795] - fbcon: delete a few unneeded forward decl (Jocelyn Falempe) [2134795] - fbcon: Avoid 'cap' set but not used warning (Jocelyn Falempe) [2134795] - video: fbcon: Fix warnings by using pr_debug() in fbcon (Jocelyn Falempe) [2134795] - fbcon: Fix user font detection test at fbcon_resize(). (Jocelyn Falempe) [2134795] - fbcon: remove now unusued 'softback_lines' cursor() argument (Jocelyn Falempe) [2134795] - fbcon: remove soft scrollback code (Jocelyn Falempe) [2134795] - fbcon: prevent user font height or width change from causing potential out-of-bounds access (Jocelyn Falempe) [2134795] - fbmem: pull fbcon_update_vcs() out of fb_set_var() (Jocelyn Falempe) [2134795] - fbcon: fix null-ptr-deref in fbcon_switch (Jocelyn Falempe) [2134795] - fbcon: Adjust indentation in set_con2fb_map (Jocelyn Falempe) [2134795] - fbdev: Unexport unlink_framebuffer() (Jocelyn Falempe) [2134795] - backlight: drop EARLY_EVENT_BLANK support (Jocelyn Falempe) [2134795] - fbcon: Export fbcon_update_vcs (Jocelyn Falempe) [2134795] - backlight: simplify lcd notifier (Jocelyn Falempe) [2134795] - fbcon: Document what I learned about fbcon locking (Jocelyn Falempe) [2134795] - fbcon: Call con2fb_map functions directly (Jocelyn Falempe) [2134795] - fbcon: replace FB_EVENT_MODE_CHANGE/_ALL with direct calls (Jocelyn Falempe) [2134795] - fb: Flatten control flow in fb_set_var (Jocelyn Falempe) [2134795] - fbdev: remove FBINFO_MISC_USEREVENT around fb_blank (Jocelyn Falempe) [2134795] - fbmem: pull fbcon_fb_blanked out of fb_blank (Jocelyn Falempe) [2134795] - Revert "backlight/fbcon: Add FB_EVENT_CONBLANK" (Jocelyn Falempe) [2134795] - fbdev: Call fbcon_get_requirement directly (Jocelyn Falempe) [2134795] - fbcon: Call fbcon_mode_deleted/new_modelist directly (Jocelyn Falempe) [2134795] - fbdev: directly call fbcon_suspended/resumed (Jocelyn Falempe) [2134795] - fbdev: unify unlink_framebuffer paths (Jocelyn Falempe) [2134795] - fbdev: make unregister/unlink functions not fail (Jocelyn Falempe) [2134795] - fbcon: call fbcon_fb_bind directly (Jocelyn Falempe) [2134795] - fbcon: call fbcon_fb_(un)registered directly (Jocelyn Falempe) [2134795] - fbdev: fbmem: fix memory access if logo is bigger than the screen (Jocelyn Falempe) [2134795] - fbdev: add kerneldoc do remove_conflicting_framebuffers() (Jocelyn Falempe) [2134795] - fbdev: allow apertures == NULL in remove_conflicting_framebuffers() (Jocelyn Falempe) [2134795] - fbdev: show fbdev number for debugging (Jocelyn Falempe) [2134795] - fbcon: use kvmalloc() for scrollback buffer (Jocelyn Falempe) [2134795] - fbdev: fbcon: Fix unregister crash when more than one framebuffer (Jocelyn Falempe) [2134795] - fb: fix lost console when the user unplugs a USB adapter (Jocelyn Falempe) [2134795] - fbcon: introduce for_each_registered_fb() helper (Jocelyn Falempe) [2134795] - timers/nohz: Last resort update jiffies on nohz_full IRQ entry (Waiman Long) [2108387] - irq: Call tick_irq_enter() inside HARDIRQ_OFFSET (Waiman Long) [2108387] - irqtime: Move irqtime entry accounting after irq offset incrementation (Waiman Long) [2108387] - sched/vtime: Consolidate IRQ time accounting (Waiman Long) [2108387] - s390/vtime: Use the generic IRQ entry accounting (Waiman Long) [2108387] - sched/cputime: Remove symbol exports from IRQ time accounting (Waiman Long) [2108387] - genirq/irqdomain: Don't try to free an interrupt that has no mapping (Waiman Long) [2108387] - genirq: Provide __irq_enter/exit_raw() (Waiman Long) [2108387] - powerpc/time: Only set CONFIG_ARCH_HAS_SCALED_CPUTIME on PPC64 (Waiman Long) [2108387] - powerpc/time: isolate scaled cputime accounting in dedicated functions. (Waiman Long) [2108387] - perf: Fix list corruption in perf_cgroup_switch() (Aaron Tomlin) [2136548] - gen_compile_commands: fix issues in RHEL-8 (Íñigo Huguet) [2136840] - .gitignore: Add compilation database file (Íñigo Huguet) [2136840] - gen_compile_commands: fix missing 'sys' package (Íñigo Huguet) [2136840] - gen_compile_commands: extract compiler command from a series of commands (Íñigo Huguet) [2136840] - gen_compile_commands: prune some directories (Íñigo Huguet) [2136840] - scripts/clang-tools: switch explicitly to Python 3 (Íñigo Huguet) [2136840] - Makefile: Add clang-tidy and static analyzer support to makefile (Íñigo Huguet) [2136840] - kbuild: wire up the build rule of compile_commands.json to Makefile (Íñigo Huguet) [2136840] - gen_compile_commands: remove the warning about too few .cmd files (Íñigo Huguet) [2136840] - gen_compile_commands: support *.o, *.a, modules.order in positional argument (Íñigo Huguet) [2136840] - gen_compile_commands: move directory walk to a generator function (Íñigo Huguet) [2136840] - gen_compile_commands: make -o option independent of -d option (Íñigo Huguet) [2136840] - gen_compile_commands: reword the help message of -d option (Íñigo Huguet) [2136840] - gen_compile_commands: do not support .cmd files under tools/ directory (Íñigo Huguet) [2136840] - gen_compile_commands: use choices for --log_levels option (Íñigo Huguet) [2136840] - gen_compile_commands: parse only the first line of .*.cmd files (Íñigo Huguet) [2136840] - gen_compile_commands: lower the entry count threshold (Íñigo Huguet) [2136840] - scripts: add a tool to produce a compile_commands.json file (Íñigo Huguet) [2136840] - iavf: Do not restart Tx queues after reset task failure (Petr Oros) [2134005] - iavf: Fix a crash during reset task (Petr Oros) [2134005] - spec: add bpf_testmod.ko to kselftests/bpf (Yauheni Kaliuta) [2140082] - fuse: fix readdir cache race (Miklos Szeredi) [2131391] - ice: config netdev tc before setting queues number (Petr Oros) [2103946] - ice: Fix ice_xdp_xmit() when XDP TX queue number is not sufficient (Petr Oros) [2103946] - ice: Don't double unplug aux on peer initiated reset (Petr Oros) [2103946] - ice: use bitmap_free instead of devm_kfree (Petr Oros) [2103946] - ice: Fix DMA mappings leak (Petr Oros) [2103946] - ice: Fix call trace with null VSI during VF reset (Petr Oros) [2103946] - ice: Fix VSI rebuild WARN_ON check for VF (Petr Oros) [2103946] - net/ice: fix initializing the bitmap in the switch code (Petr Oros) [2103946] - net: ice: fix error NETIF_F_HW_VLAN_CTAG_FILTER check in ice_vsi_sync_fltr() (Petr Oros) [2103946] - ice: allow toggling loopback mode via ndo_set_features callback (Petr Oros) [2103946] - ice: compress branches in ice_set_features() (Petr Oros) [2103946] - ice: Add support for PPPoE hardware offload (Petr Oros) [2103946] - ice: add i2c write command (Petr Oros) [2103946] - ice: Remove pci_aer_clear_nonfatal_status() call (Petr Oros) [2103946] - ice: Remove unnecessary NULL check before dev_put (Petr Oros) [2103946] - ice: use eth_broadcast_addr() to set broadcast address (Petr Oros) [2103946] - ice: switch: dynamically add VLAN headers to dummy packets (Petr Oros) [2103946] - ice: Add support for VLAN TPID filters in switchdev (Petr Oros) [2103946] - ice: Add support for double VLAN in switchdev (Petr Oros) [2103946] - intel/ice:fix repeated words in comments (Petr Oros) [2103946] - drivers/net/ethernet/intel: fix typos in comments (Petr Oros) [2103946] - ice: Use correct order for the parameters of devm_kcalloc() (Petr Oros) [2103946] - ice: remove u16 arithmetic in ice_gnss (Petr Oros) [2103946] - ice: remove VLAN representor specific ops (Petr Oros) [2103946] - ice: don't set VF VLAN caps in switchdev (Petr Oros) [2103946] - kernel-doc: fix undefined args variable (Jan Stancek) [2134954]- sunrpc: Set sk_allocation to GFP_NOFS to avoid using current->task_frag. (Guillaume Nault) [2089660] - selftests/vm: enable running select groups of tests (Joel Savitz) [2089502] - selftests: make use of GUP_TEST_FILE macro (Nico Pache) [2089502] - selftests: clarify common error when running gup_test (Nico Pache) [2089502] - tools/testing/selftests/vm/gup_test.c: clarify error statement (Nico Pache) [2089502] - mm: remove the extra ZONE_DEVICE struct page refcount (Chris von Recklinghausen) [2082247] - mm: simplify freeing of devmap managed pages (Chris von Recklinghausen) [2082247] - mm: move free_devmap_managed_page to memremap.c (Chris von Recklinghausen) [2082247] - mm/memremap: add ZONE_DEVICE support for compound pages (Chris von Recklinghausen) [2082247] - mm/page_alloc: refactor memmap_init_zone_device() page init (Chris von Recklinghausen) [2082247] - mm/page_alloc: split prep_compound_page into head and tail subparts (Chris von Recklinghausen) [2082247] - mm/debug: sync up MR_CONTIG_RANGE and MR_LONGTERM_PIN (Chris von Recklinghausen) [2082247] - mm: gup: use helper PAGE_ALIGNED in populate_vma_page_range() (Chris von Recklinghausen) [2082247] - mm: gup: remove useless BUG_ON in __get_user_pages() (Chris von Recklinghausen) [2082247] - mm: gup: remove unneed local variable orig_refs (Chris von Recklinghausen) [2082247] - mm: gup: remove set but unused local variable major (Chris von Recklinghausen) [2082247] - writeback: make the laptop_mode prototypes available unconditionally (Chris von Recklinghausen) [2082247] - mm: hide laptop_mode_wb_timer entirely behind the BDI API (Chris von Recklinghausen) [2082247] - mm: remove special swap entry functions (Chris von Recklinghausen) [2082247] - hugetlb: address ref count racing in prep_compound_gigantic_page (Chris von Recklinghausen) [2082247] - hugetlb: remove prep_compound_huge_page cleanup (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): get vma_address_end() earlier (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use goto instead of while (1) (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): add a level of indentation (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): crossing page table boundary (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use pmde for *pvmw->pmd (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): settle PageHuge on entry (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use page for pvmw->page (Chris von Recklinghausen) [2082247] - mm/gup: longterm pin migration cleanup (Chris von Recklinghausen) [2082247] - mm/gup: change index type to long as it counts pages (Chris von Recklinghausen) [2082247] - mm/gup: migrate pinned pages out of movable zone (Chris von Recklinghausen) [2082247] - mm: honor PF_MEMALLOC_PIN for all movable pages (Chris von Recklinghausen) [2082247] - mm cma: rename PF_MEMALLOC_NOCMA to PF_MEMALLOC_PIN (Chris von Recklinghausen) [2082247] - mm/huge_memory.c: use helper function migration_entry_to_page() (Chris von Recklinghausen) [2082247] - block: add queue_to_disk() to get gendisk from request_queue (Chris von Recklinghausen) [2082247] - mm/hugetlb: remove redundant check in preparing and destroying gigantic page (Chris von Recklinghausen) [2082247] - mm/hugetlb: use helper huge_page_order and pages_per_huge_page (Chris von Recklinghausen) [2082247] - mm: handle zone device pages in release_pages() (Chris von Recklinghausen) [2082247] - mm/gup: remove the vma allocation from gup_longterm_locked() (Chris von Recklinghausen) [2082247] - mm/mremap_pages: fix static key devmap_managed_key updates (Chris von Recklinghausen) [2082247] - mm/memremap.c: convert devmap static branch to {inc,dec} (Chris von Recklinghausen) [2082247] - mm/page_alloc: handle a missing case for memalloc_nocma_{save/restore} APIs (Chris von Recklinghausen) [2082247] - mm: store compound_nr as well as compound_order (Chris von Recklinghausen) [2082247] - mm: clean up the last pieces of page fault accountings (Chris von Recklinghausen) [2082247] - mm/x86: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/s390: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/powerpc: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/arm64: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm: do page fault accounting in handle_mm_fault (Chris von Recklinghausen) [2082247] - include/linux/sched/mm.h: optimize current_gfp_context() (Chris von Recklinghausen) [2082247] - mm/page_alloc: fix memalloc_nocma_{save/restore} APIs (Chris von Recklinghausen) [2082247] - mm: remove redundant check non_swap_entry() (Chris von Recklinghausen) [2082247] - mm: rename gfpflags_to_migratetype to gfp_migratetype for same convention (Chris von Recklinghausen) [2082247] - mm,page_alloc,cma: conditionally prefer cma pageblocks for movable allocations (Chris von Recklinghausen) [2082247] - mm/vma: introduce VM_ACCESS_FLAGS (Chris von Recklinghausen) [2082247] - mm/vma: make vma_is_accessible() available for general use (Chris von Recklinghausen) [2082247] - kernel/events/uprobes.c: only do FOLL_SPLIT_PMD for uprobe register (Chris von Recklinghausen) [2082247] - uprobe: collapse THP pmd after removing all uprobes (Chris von Recklinghausen) [2082247] - uprobe: use FOLL_SPLIT_PMD instead of FOLL_SPLIT (Chris von Recklinghausen) [2082247] - mm, thp: introduce FOLL_SPLIT_PMD (Chris von Recklinghausen) [2082247] - mm: clean up is_device_*_page() definitions (Chris von Recklinghausen) [2082247] - driver core: Add helper device_find_child_by_name() (Chris von Recklinghausen) [2082247] - mm/page_alloc.c: remove unnecessary parameter in rmqueue_pcplist (Chris von Recklinghausen) [2082247] - sctp: handle the error returned from sctp_auth_asoc_init_active_key (Xin Long) [2134892] - sctp: leave the err path free in sctp_stream_init to sctp_stream_free (Xin Long) [2134892] - sctp: fix sleep in atomic context bug in timer handlers (Xin Long) [2134892] - stcp: Use memset_after() to zero sctp_stream_out_ext (Xin Long) [2134892] - sctp: read sk->sk_bound_dev_if once in sctp_rcv() (Xin Long) [2134892] - ethtool: add header/data split indication (Ivan Vecera) [2135624] - xfrm: store and rely on direction to construct offload flags (Sabrina Dubroca) [2137562] - platform/x86/intel: pmc: Support Intel Raptorlake P (Prarit Bhargava) [2076736]- KVM: selftests: Build the memslot tests for arm64 (Gavin Shan) [2132161] - KVM: selftests: Fix number of pages for memory slot in memslot_modification_stress_test (Gavin Shan) [2132161] - tools/include: Add _RET_IP_ and math definitions to kernel.h (Gavin Shan) [2132161] - tcp: fix early ETIMEDOUT after spurious non-SACK RTO (Davide Caratti) [2136409] - tcp: add a missing nf_reset_ct() in 3WHS handling (Davide Caratti) [2136409] - sock: redo the psock vs ULP protection check (Davide Caratti) [2136409] - tcp: tcp_rtx_synack() can be called from process context (Davide Caratti) [2136409] - tcp: fix tcp_mtup_probe_success vs wrong snd_cwnd (Davide Caratti) [2136409] - tcp: fix F-RTO may not work correctly when receiving DSACK (Davide Caratti) [2136409] - selftests: xsk: do not send zero-length packets (Ivan Vecera) [2135634] - selftests/xsk: Introduce XDP prog load based on existing AF_XDP socket (Ivan Vecera) [2135634] - selftests, xsk: Fix rx_full stats test (Ivan Vecera) [2135634] - selftests/bpf: Fix xdpxceiver failures for no hugepages (Ivan Vecera) [2135634] - selftests/xsk: Add missing close() on netns fd (Ivan Vecera) [2135634] - selftests, xsk: Fix bpf_res cleanup test (Ivan Vecera) [2135634] - selftests: xsk: Add frame_headroom test (Ivan Vecera) [2135634] - selftests: xsk: Change interleaving of packets in unaligned mode (Ivan Vecera) [2135634] - selftests: xsk: Add single packet test (Ivan Vecera) [2135634] - selftests: xsk: Introduce pacing of traffic (Ivan Vecera) [2135634] - selftests: xsk: Fix socket creation retry (Ivan Vecera) [2135634] - selftests: xsk: Put the same buffer only once in the fill ring (Ivan Vecera) [2135634] - selftests: xsk: Fix missing initialization (Ivan Vecera) [2135634] - selftests: xsk: Add tests for 2K frame size (Ivan Vecera) [2135634] - selftests: xsk: Add tests for invalid xsk descriptors (Ivan Vecera) [2135634] - selftests: xsk: Eliminate test specific if-statement in test runner (Ivan Vecera) [2135634] - selftests: xsk: Add test for unaligned mode (Ivan Vecera) [2135634] - selftests: xsk: Introduce replacing the default packet stream (Ivan Vecera) [2135634] - selftests: xsk: Allow for invalid packets (Ivan Vecera) [2135634] - selftests: xsk: Eliminate MAX_SOCKS define (Ivan Vecera) [2135634] - selftests: xsx: Make pthreads local scope (Ivan Vecera) [2135634] - selftests: xsk: Make xdp_flags and bind_flags local (Ivan Vecera) [2135634] - selftests: xsk: Specify number of sockets to create (Ivan Vecera) [2135634] - selftests: xsk: Replace second_step global variable (Ivan Vecera) [2135634] - selftests: xsk: Introduce rx_on and tx_on in ifobject (Ivan Vecera) [2135634] - selftests: xsk: Add use_poll to ifobject (Ivan Vecera) [2135634] - selftests: xsx: Introduce test name in test spec (Ivan Vecera) [2135634] - selftests: xsk: Make frame_size configurable (Ivan Vecera) [2135634] - selftests: xsk: Move rxqsize into xsk_socket_info (Ivan Vecera) [2135634] - selftests: xsk: Move num_frames and frame_headroom to xsk_umem_info (Ivan Vecera) [2135634] - selftests: xsk: Introduce test specifications (Ivan Vecera) [2135634] - selftests: xsk: Introduce type for thread function (Ivan Vecera) [2135634] - selftests: xsk: Simplify xsk and umem arrays (Ivan Vecera) [2135634] - selftests: xsk: Preface options with opt (Ivan Vecera) [2135634] - selftests: xsk: Make enums lower case (Ivan Vecera) [2135634] - selftests: xsk: Generate packets from specification (Ivan Vecera) [2135634] - selftests: xsk: Generate packet directly in umem (Ivan Vecera) [2135634] - selftests: xsk: Simplify cleanup of ifobjects (Ivan Vecera) [2135634] - selftests: xsk: Decrease sending speed (Ivan Vecera) [2135634] - selftests: xsk: Validate tx stats on tx thread (Ivan Vecera) [2135634] - selftests: xsk: Simplify packet validation in xsk tests (Ivan Vecera) [2135634] - selftests: xsk: Rename worker_* functions that are not thread entry points (Ivan Vecera) [2135634] - selftests: xsk: Disassociate umem size with packets sent (Ivan Vecera) [2135634] - selftests: xsk: Remove end-of-test packet (Ivan Vecera) [2135634] - selftests: xsk: Simplify the retry code (Ivan Vecera) [2135634] - selftests: xsk: Return correct error codes (Ivan Vecera) [2135634] - selftests: xsk: Remove unused variables (Ivan Vecera) [2135634] - selftests: xsk: Remove the num_tx_packets option (Ivan Vecera) [2135634] - selftests: xsk: Remove color mode (Ivan Vecera) [2135634] - xsk: Fix possible crash when multiple sockets are created (Ivan Vecera) [2135634] - i40e: xsk: Move tmp desc array from driver to pool (Ivan Vecera) [2135634] - xsk: Initialise xskb free_list_node (Ivan Vecera) [2135634] - xsk: Fix corrupted packets for XDP_SHARED_UMEM (Ivan Vecera) [2135634] - xsk: Fix clang build error in __xp_alloc (Ivan Vecera) [2135634] - xsk: Do not write NULL in SW ring at allocation failure (Ivan Vecera) [2135634] - xsk: Fix crash on double free in buffer pool (Ivan Vecera) [2135634] - xsk: Optimize for aligned case (Ivan Vecera) [2135634] - xsk: Batched buffer allocation for the pool (Ivan Vecera) [2135634] - xsk: Get rid of unused entry in struct xdp_buff_xsk (Ivan Vecera) [2135634] - redhat/configs: Move config files under common/generic/x86 to generic/x86_64 (Waiman Long) [2139172] - fbmem: Check virtual screen sizes in fb_set_var() (Wander Lairson Costa) [2109116] {CVE-2021-33655} - fbcon: Prevent that screen size is smaller than font size (Wander Lairson Costa) [2109116] {CVE-2021-33655} - fbcon: Disallow setting font bigger than screen size (Wander Lairson Costa) [2109116] {CVE-2021-33655} - video: of_display_timing.h: include errno.h (Wander Lairson Costa) [2109116] {CVE-2021-33655} - MAINTAINERS: pick up all vfio_ap docs for VFIO AP maintainers (Cédric Le Goater) [1660908] - s390/docs: fix warnings for vfio_ap driver doc (Cédric Le Goater) [1660908] - s390/docs: fix warnings for vfio_ap driver lock usage doc (Cédric Le Goater) [1660908] - s390/Docs: new doc describing lock usage by the vfio_ap device driver (Cédric Le Goater) [1660908] - s390/vfio-ap: bypass unnecessary processing of AP resources (Cédric Le Goater) [1660908] - s390/vfio-ap: update docs to include dynamic config support (Cédric Le Goater) [1660908] - s390/vfio-ap: handle config changed and scan complete notification (Cédric Le Goater) [1660908] - s390/vfio-ap: sysfs attribute to display the guest's matrix (Cédric Le Goater) [1660908] - s390/vfio-ap: implement in-use callback for vfio_ap driver (Cédric Le Goater) [1660908] - s390/vfio-ap: reset queues after adapter/domain unassignment (Cédric Le Goater) [1660908] - s390/vfio-ap: hot plug/unplug of AP devices when probed/removed (Cédric Le Goater) [1660908] - s390/vfio-ap: allow hot plug/unplug of AP devices when assigned/unassigned (Cédric Le Goater) [1660908] - s390/vfio-ap: prepare for dynamic update of guest's APCB on queue probe/remove (Cédric Le Goater) [1660908] - s390/vfio-ap: prepare for dynamic update of guest's APCB on assign/unassign (Cédric Le Goater) [1660908] - s390/vfio-ap: use proper locking order when setting/clearing KVM pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: introduce new mutex to control access to the KVM pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: rename matrix_dev->lock mutex to matrix_dev->mdevs_lock (Cédric Le Goater) [1660908] - s390/vfio-ap: allow assignment of unavailable AP queues to mdev device (Cédric Le Goater) [1660908] - s390/vfio-ap: refresh guest's APCB by filtering AP resources assigned to mdev (Cédric Le Goater) [1660908] - s390/vfio-ap: introduce shadow APCB (Cédric Le Goater) [1660908] - s390/vfio-ap: manage link between queue struct and matrix mdev (Cédric Le Goater) [1660908] - s390/vfio-ap: move probe and remove callbacks to vfio_ap_ops.c (Cédric Le Goater) [1660908] - s390/vfio-ap: use new AP bus interface to search for queue devices (Cédric Le Goater) [1660908] - s390/ap: fix error handling in __verify_queue_reservations() (Cédric Le Goater) [1660908] - s390/zcrypt: code cleanup (Cédric Le Goater) [1660908] - s390/zcrypt: fix wrong offset index for APKA master key valid state (Cédric Le Goater) [1660908] - s390/ap: uevent on apmask/aqpmask change (Cédric Le Goater) [1660908] - s390/vfio-ap: fix kernel doc and signature of group notifier functions (Cédric Le Goater) [1660908] - s390/ap: enable sysfs attribute scans to force AP bus rescan (Cédric Le Goater) [1660908] - s390/ap: fix crash on older machines based on QCI info missing (Cédric Le Goater) [1660908] - s390/ap: notify drivers on config changed and scan complete callbacks (Cédric Le Goater) [1660908] - s390/ap: driver callback to indicate resource in use (Cédric Le Goater) [1660908] - MAINTAINERS: update file path for S390 VFIO AP DRIVER (Cédric Le Goater) [1660908] - s390/vfio-ap: add status attribute to AP queue device's sysfs dir (Cédric Le Goater) [1660908] - s390/ap: function rework based on compiler warning (Cédric Le Goater) [1660908] - s390/vfio-ap: s390/crypto: fix all kernel-doc warnings (Cédric Le Goater) [1660908] - s390/ap: new module option ap.useirq (Cédric Le Goater) [1660908] - s390/ap: fix state machine hang after failure to enable irq (Cédric Le Goater) [1660908] - s390/crypto: fix all kernel-doc warnings in vfio_ap_ops.c (Cédric Le Goater) [1660908] - s390/ap: use the common device_driver pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: replace open coded locks for VFIO_GROUP_NOTIFY_SET_KVM notification (Cédric Le Goater) [1660908] - s390/vfio-ap: r/w lock for PQAP interception handler function pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up mdev resources when remove callback invoked (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up vfio_ap_drv's definition (Cédric Le Goater) [1660908] - s390/vfio-ap: fix circular lockdep when setting/clearing crypto masks (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up vfio_ap resources when KVM pointer invalidated (Cédric Le Goater) [1660908] - s390/vfio-ap: No need to disable IRQ after queue reset (Cédric Le Goater) [1660908] - Documentation: s390/vfio-ap: eliminate duplicated word (Cédric Le Goater) [1660908] - docs: s390: Fix wrong label Guest2 instead of Guest3 (Cédric Le Goater) [1660908] - s390: vfio-ap: make local functions and data static (Cédric Le Goater) [1660908] - i40e: Fix set max_tx_rate when it is lower than 1 Mbps (Petr Oros) [2106964] - i40e: Fix VF set max MTU size (Petr Oros) [2106964] - iavf: Fix set max MTU size with port VLAN and jumbo frames (Petr Oros) [2106964] - iavf: Fix bad page state (Petr Oros) [2106964] - i40e: Fix VF hang when reset is triggered on another VF (Ivan Vecera) [2103801] - mpi3mr: a minor change (Tomas Henzl) [2115748] - scsi: mpi3mr: Select CONFIG_SCSI_SAS_ATTRS (Tomas Henzl) [2115748] - scsi: mpi3mr: Remove unnecessary cast (Tomas Henzl) [2115748] - scsi: mpi3mr: Update driver version to 8.2.0.3.0 (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix scheduling while atomic type bug (Tomas Henzl) [2115748] - scsi: mpi3mr: Scan the devices during resume time (Tomas Henzl) [2115748] - scsi: mpi3mr: Free enclosure objects during driver unload (Tomas Henzl) [2115748] - scsi: mpi3mr: Handle 0xF003 Fault Code (Tomas Henzl) [2115748] - scsi: mpi3mr: Graceful handling of surprise removal of PCIe HBA (Tomas Henzl) [2115748] - scsi: mpi3mr: Support new power management framework (Tomas Henzl) [2115748] - scsi: mpi3mr: Update mpi3 header files (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix error code in mpi3mr_transport_smp_handler() (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix error codes in mpi3mr_report_manufacture() (Tomas Henzl) [2115748] - scsi: mpi3mr: Block I/Os while refreshing target dev objects (Tomas Henzl) [2115748] - scsi: mpi3mr: Refresh SAS ports during soft reset (Tomas Henzl) [2115748] - scsi: mpi3mr: Support SAS transport class callbacks (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to issue MPT transport cmds (Tomas Henzl) [2115748] - scsi: mpi3mr: Add SAS SATA end devices to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Get target object based on rphy (Tomas Henzl) [2115748] - scsi: mpi3mr: Add expander devices to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable STL on HBAs where multipath is disabled (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to manage device's port (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to retrieve device objects (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to add phys to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable Enclosure device add event (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to retrieve config pages (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to issue config requests (Tomas Henzl) [2115748] - scsi: mpi3mr: Add config and transport related debug flags (Tomas Henzl) [2115748] - scsi: mpi3mr: Delete a stray tab (Tomas Henzl) [2115748] - scsi: mpi3mr: Unlock on error path (Tomas Henzl) [2115748] - scsi: mpi3mr: Reduce VD queue depth on detecting throttling (Tomas Henzl) [2115748] - scsi: mpi3mr: Resource Based Metering (Tomas Henzl) [2115748] - scsi: mpi3mr: Increase cmd_per_lun to 128 (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable shared host tagset (Tomas Henzl) [2115748] - lpfc version to 14.0.0.18. (Dick Kennedy) [2114050] - scsi: lpfc: Create a sysfs entry called lpfc_xcvr_data for transceiver info (Dick Kennedy) [2114050] - scsi: lpfc: Log when congestion management limits are in effect (Dick Kennedy) [2114050] - scsi: lpfc: Fix hard lockup when reading the rx_monitor from debugfs (Dick Kennedy) [2114050] - scsi: lpfc: Set sli4_param's cmf option to zero when CMF is turned off (Dick Kennedy) [2114050] - scsi: lpfc: Fix various issues reported by tools (Dick Kennedy) [2114050] - scsi: lpfc: Add reporting capability for Link Degrade Signaling (Dick Kennedy) [2114050] - scsi: lpfc: Rework FDMI attribute registration for unintential padding (Dick Kennedy) [2114050] - scsi: lpfc: Rework lpfc_fdmi_cmd() routine for cleanup and consistency (Dick Kennedy) [2114050] - scsi: lpfc: Update congestion mode logging for Emulex SAN Manager application (Dick Kennedy) [2114050] - scsi: lpfc: Fix multiple NVMe remoteport registration calls for the same NPort ID (Dick Kennedy) [2114050] - scsi: lpfc: Add missing free iocb and nlp kref put for early return VMID cases (Dick Kennedy) [2114050] - scsi: lpfc: Fix mbuf pool resource detected as busy at driver unload (Dick Kennedy) [2114050] - scsi: lpfc: Fix FLOGI ACC with wrong SID in PT2PT topology (Dick Kennedy) [2114050] - scsi: lpfc: Fix prli_fc4_req checks in PRLI handling (Dick Kennedy) [2114050] - scsi: lpfc: Remove unneeded result variable (Dick Kennedy) [2114050] - scsi: lpfc: Remove the unneeded result variable (Dick Kennedy) [2114050] - scsi: lpfc: Copyright updates for 14.2.0.6 patches (Dick Kennedy) [2114050] - scsi: lpfc: Add warning notification period to CMF_SYNC_WQE (Dick Kennedy) [2114050] - scsi: lpfc: Rework MIB Rx Monitor debug info logic (Dick Kennedy) [2114050] - scsi: lpfc: Fix null ndlp ptr dereference in abnormal exit path for GFT_ID (Dick Kennedy) [2114050] - scsi: lpfc: Fix unsolicited FLOGI receive handling during PT2PT discovery (Dick Kennedy) [2114050] - scsi: lpfc: Check the return value of alloc_workqueue() (Dick Kennedy) [2114050] - scsi: lpfc: Rework FDMI initialization after link up (Dick Kennedy) [2114050] - scsi: mpt3sas: Revert "scsi: mpt3sas: Fix ioc->base_readl() use" (Tomas Henzl) [2115763] - scsi: mpt3sas: Revert "scsi: mpt3sas: Fix writel() use" (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix return value check of dma_get_required_mask() (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix use-after-free warning (Tomas Henzl) [2115763] - scsi: mpt3sas: Update driver version to 43.100.00.00 (Tomas Henzl) [2115763] - scsi: mpt3sas: Increase cmd_per_lun to 128 (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix trace buffer registration failed (Tomas Henzl) [2115763] - scsi: mpt3sas: Don't change DMA mask while reallocating pools (Tomas Henzl) [2115763] - scsi: mpt3sas: Prevent error handler escalation when device removed (Tomas Henzl) [2115763] - scsi: mpt3sas: Disable MPI2_FUNCTION_FW_DOWNLOAD for ATTO devices (Tomas Henzl) [2115763] - scsi: mpt3sas: Add support for ATTO ExpressSAS H12xx GT devices (Tomas Henzl) [2115763] - scsi: mpt3sas: Remove flush_scheduled_work() call (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix whitespace and spelling mistake (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix typo in comment (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix out-of-bounds compiler warning (Tomas Henzl) [2115763] - media: em28xx: initialize refcount before kref_get (Dean Nelson) [2128003] {CVE-2022-3239} - gfs2: Register fs after creating workqueues (Bob Peterson) [2121201] - sysctl: returns -EINVAL when a negative value is passed to proc_doulongvec_minmax (Vratislav Bendel) [2139096] - mm/rmap: Fix anon_vma->degree ambiguity leading to double-reuse (Waiman Long) [2137585] {CVE-2022-42703} - mm: rmap: explicitly reset vma->anon_vma in unlink_anon_vmas() (Waiman Long) [2137585] {CVE-2022-42703} - mm/rmap: Fix typos in comments (Waiman Long) [2137585] {CVE-2022-42703} - iavf: Fix set max MTU size with port VLAN and jumbo frames (Stefan Assmann) [2103944] - iavf: Fix bad page state (Stefan Assmann) [2103944] - iavf: Fix cached head and tail value for iavf_get_tx_pending (Stefan Assmann) [2103944] - iavf: Fix change VF's mac address (Stefan Assmann) [2103944] - iavf: Fix race between iavf_close and iavf_reset_task (Stefan Assmann) [2103944] - net: ethernet: move from strlcpy with unused retval to strscpy (Stefan Assmann) [2103944] - iavf: Fix 'tc qdisc show' listing too many queues (Stefan Assmann) [2103944] - iavf: Fix max_rate limiting (Stefan Assmann) [2103944] - iavf: Check for duplicate TC flower filter before parsing (Stefan Assmann) [2103944] - iavf: Fix handling of dummy receive descriptors (Stefan Assmann) [2103944] - iavf: Disallow changing rx/tx-frames and rx/tx-frames-irq (Stefan Assmann) [2103944] - intel/iavf:fix repeated words in comments (Stefan Assmann) [2103944] - intel: remove unused macros (Stefan Assmann) [2103944] - iavf: Add waiting for response from PF in set mac (Stefan Assmann) [2103944] - iavf: Use irq_update_affinity_hint() (Stefan Assmann) [2103944] - net: Fix return value of qdisc ingress handling on success (Ivan Vecera) [2131361]- PCI: hv: Do not set PCI_COMMAND_MEMORY to reduce VM boot time (Emanuele Giuseppe Esposito) [2082836] - megaraid_sas: add #ifdef CONFIG_RHEL_DIFFERENCES (Tomas Henzl) [2119096] - mpt3sas: add #ifdef CONFIG_RHEL_DIFFERENCES (Tomas Henzl) [2119096] - mptcp: fix unreleased socket in accept queue (Paolo Abeni) [2135884] - mptcp: factor out __mptcp_close() without socket lock (Paolo Abeni) [2135884] - mptcp: do not queue data on closed subflows (Paolo Abeni) [2135884] - mptcp: move subflow cleanup in mptcp_destroy_common() (Paolo Abeni) [2135884] - mptcp: fix msk traversal in mptcp_nl_cmd_set_flags() (Paolo Abeni) [2135884] - xfs: fix perag reference leak on iteration race with growfs (Brian Foster) [2081105] - xfs: terminate perag iteration reliably on agcount (Brian Foster) [2081105] - xfs: rename the next_agno perag iteration variable (Brian Foster) [2081105] - xfs: fold perag loop iteration logic into helper function (Brian Foster) [2081105] - xfs: prevent spoofing of rtbitmap blocks when recovering buffers (Brian Foster) [2081105] - xfs: Enforce attr3 buffer recovery order (Brian Foster) [2081105] - xfs: avoid unnecessary waits in xfs_log_force_lsn() (Brian Foster) [2081105] - xfs: factor out forced iclog flushes (Brian Foster) [2081105] - xfs: detect misaligned rtinherit directory extent size hints (Brian Foster) [2081105] - xfs: fix an integer overflow error in xfs_growfs_rt (Brian Foster) [2081105] - xfs: improve FSGROWFSRT precondition checking (Brian Foster) [2081105] - xfs: reset child dir '..' entry when unlinking child (Brian Foster) [2081105] - xfs: check for sparse inode clusters that cross new EOAG when shrinking (Brian Foster) [2081105] - xfs: Fix multiple fall-through warnings for Clang (Brian Foster) [2081105] - xfs: remove callback dequeue loop from xlog_state_do_iclog_callbacks (Brian Foster) [2081105] - xfs: don't nest icloglock inside ic_callback_lock (Brian Foster) [2081105] - xfs: Initialize error in xfs_attr_remove_iter (Brian Foster) [2081105] - xfs: remove dead stale buf unpin handling code (Brian Foster) [2081105] - xfs: hold buffer across unpin and potential shutdown processing (Brian Foster) [2081105] - xfs: force the log offline when log intent item recovery fails (Brian Foster) [2081105] - xfs: shorten the shutdown messages to a single line (Brian Foster) [2081105] - xfs: print name of function causing fs shutdown instead of hex pointer (Brian Foster) [2081105] - xfs: fix type mismatches in the inode reclaim functions (Brian Foster) [2081105] - xfs: separate primary inode selection criteria in xfs_iget_cache_hit (Brian Foster) [2081105] - xfs: refactor the inode recycling code (Brian Foster) [2081105] - xfs: add iclog state trace events (Brian Foster) [2081105] - xfs: xfs_log_force_lsn isn't passed a LSN (Brian Foster) [2081105] - xfs: remove need_start_rec parameter from xlog_write() (Brian Foster) [2081105] - xfs: remove xfs_blkdev_issue_flush (Brian Foster) [2081105] - xfs: Fix 64-bit division on 32-bit in xlog_state_switch_iclogs() (Brian Foster) [2081105] - xfs: log stripe roundoff is a property of the log (Brian Foster) [2081105] - xfs: remove redundant initialization of variable error (Brian Foster) [2081105] - xfs: perag may be null in xfs_imap() (Brian Foster) [2081105] - xfs: Make attr name schemes consistent (Brian Foster) [2081105] - xfs: Fix default ASSERT in xfs_attr_set_iter (Brian Foster) [2081105] - xfs: rename struct xfs_eofblocks to xfs_icwalk (Brian Foster) [2081105] - xfs: change the prefix of XFS_EOF_FLAGS_* to XFS_ICWALK_FLAG_ (Brian Foster) [2081105] - xfs: selectively keep sick inodes in memory (Brian Foster) [2081105] - xfs: drop IDONTCACHE on inodes when we mark them sick (Brian Foster) [2081105] - xfs: drop the AGI being passed to xfs_check_agi_freecount (Brian Foster) [2081105] - xfs: cleanup error handling in xfs_buf_get_map (Brian Foster) [2081105] - xfs: remove ->b_offset handling for page backed buffers (Brian Foster) [2081105] - xfs: refactor per-AG inode tagging functions (Brian Foster) [2081105] - xfs: merge xfs_reclaim_inodes_ag into xfs_inode_walk_ag (Brian Foster) [2081105] - xfs: pass struct xfs_eofblocks to the inode scan callback (Brian Foster) [2081105] - xfs: make the icwalk processing functions clean up the grab state (Brian Foster) [2081105] - xfs: clean up inode state flag tests in xfs_blockgc_igrab (Brian Foster) [2081105] - xfs: remove indirect calls from xfs_inode_walk{,_ag} (Brian Foster) [2081105] - xfs: remove iter_flags parameter from xfs_inode_walk_* (Brian Foster) [2081105] - xfs: move xfs_inew_wait call into xfs_dqrele_inode (Brian Foster) [2081105] - xfs: separate the dqrele_all inode grab logic from xfs_inode_walk_ag_grab (Brian Foster) [2081105] - xfs: pass the goal of the incore inode walk to xfs_inode_walk() (Brian Foster) [2081105] - xfs: rename xfs_inode_walk functions to xfs_icwalk (Brian Foster) [2081105] - xfs: move the inode walk functions further down (Brian Foster) [2081105] - xfs: detach inode dquots at the end of inactivation (Brian Foster) [2081105] - xfs: move the quotaoff dqrele inode walk into xfs_icache.c (Brian Foster) [2081105] - xfs: don't take a spinlock unconditionally in the DIO fastpath (Brian Foster) [2081105] - xfs: mark xfs_bmap_set_attrforkoff static (Brian Foster) [2081105] - xfs: Remove redundant assignment to busy (Brian Foster) [2081105] - xfs: sort variable alphabetically to avoid repeated declaration (Brian Foster) [2081105] - xfs: remove xfs_perag_t (Brian Foster) [2081105] - xfs: use perag through unlink processing (Brian Foster) [2081105] - xfs: clean up and simplify xfs_dialloc() (Brian Foster) [2081105] - xfs: inode allocation can use a single perag instance (Brian Foster) [2081105] - xfs: get rid of xfs_dir_ialloc() (Brian Foster) [2081105] - xfs: collapse AG selection for inode allocation (Brian Foster) [2081105] - xfs: simplify xfs_dialloc_select_ag() return values (Brian Foster) [2081105] - xfs: remove agno from btree cursor (Brian Foster) [2081105] - xfs: use perag for ialloc btree cursors (Brian Foster) [2081105] - xfs: convert allocbt cursors to use perags (Brian Foster) [2081105] - xfs: convert refcount btree cursor to use perags (Brian Foster) [2081105] - xfs: convert rmap btree cursor to using a perag (Brian Foster) [2081105] - xfs: add a perag to the btree cursor (Brian Foster) [2081105] - xfs: pass perags around in fsmap data dev functions (Brian Foster) [2081105] - xfs: push perags through the ag reservation callouts (Brian Foster) [2081105] - xfs: pass perags through to the busy extent code (Brian Foster) [2081105] - xfs: convert secondary superblock walk to use perags (Brian Foster) [2081105] - xfs: convert xfs_iwalk to use perag references (Brian Foster) [2081105] - xfs: convert raw ag walks to use for_each_perag (Brian Foster) [2081105] - xfs: make for_each_perag... a first class citizen (Brian Foster) [2081105] - xfs: move perag structure and setup to libxfs/xfs_ag.[ch] (Brian Foster) [2081105] - xfs: prepare for moving perag definitions and support to libxfs (Brian Foster) [2081105] - xfs: move xfs_perag_get/put to xfs_ag.[ch] (Brian Foster) [2081105] - xfs: remove unnecessary shifts (Brian Foster) [2081105] - xfs: clean up open-coded fs block unit conversions (Brian Foster) [2081105] - xfs: Clean up xfs_attr_node_addname_clear_incomplete (Brian Foster) [2081105] - xfs: Remove xfs_attr_rmtval_set (Brian Foster) [2081105] - xfs: Add delay ready attr set routines (Brian Foster) [2081105] - xfs: Add delay ready attr remove routines (Brian Foster) [2081105] - xfs: Hoist node transaction handling (Brian Foster) [2081105] - xfs: Hoist xfs_attr_leaf_addname (Brian Foster) [2081105] - xfs: Hoist xfs_attr_node_addname (Brian Foster) [2081105] - xfs: Add helper xfs_attr_node_addname_find_attr (Brian Foster) [2081105] - xfs: Separate xfs_attr_node_addname and xfs_attr_node_addname_clear_incomplete (Brian Foster) [2081105] - xfs: Refactor xfs_attr_set_shortform (Brian Foster) [2081105] - xfs: Add xfs_attr_node_remove_name (Brian Foster) [2081105] - xfs: Reverse apply 72b97ea40d (Brian Foster) [2081105] - xfs: use xfs_buf_alloc_pages for uncached buffers (Brian Foster) [2081105] - xfs: split up xfs_buf_allocate_memory (Brian Foster) [2081105] - xfs: Fix fall-through warnings for Clang (Brian Foster) [2081105] - scsi: qla2xxx: Use transport-defined speed mask for supported_speeds (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix serialization of DCBX TLV data request (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused declarations for qla2xxx (Nilesh Javali) [2109830] - scsi: qla2xxx: Drop DID_TARGET_FAILURE use (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.900-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Add NVMe parameters support in Auxiliary Image Status (Nilesh Javali) [2109830] - scsi: qla2xxx: Add debugfs create/delete helpers (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix response queue handler reading stale packets (Nilesh Javali) [2109830] - scsi: qla2xxx: Revert "scsi: qla2xxx: Fix response queue handler reading stale packets" (Nilesh Javali) [2109830] - scsi: qla2xxx: Log message "skipping scsi_scan_host()" as informational (Nilesh Javali) [2109830] - scsi: qla2xxx: Avoid flush_scheduled_work() usage (Nilesh Javali) [2109830] - scsi: qla2xxx: Always wait for qlt_sess_work_fn() from qlt_stop_phase1() (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused del_sess_list field (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused qlt_tmr_work() (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.800-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Update manufacturer details (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix discovery issues in FC-AL topology (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix dropped IKE message (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix response queue handler reading stale packets (Nilesh Javali) [2109830] - scsi: qla2xxx: Zero undefined mailbox IN registers (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix incorrect display of max frame size (Nilesh Javali) [2109830] - scsi: qla2xxx: Check correct variable in qla24xx_async_gffid() (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.700-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing FCP-2 targets on long port disable with I/Os (Nilesh Javali) [2109830] - scsi: qla2xxx: Add debug prints in the device remove path (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing target when it reappears during delete (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing FCP-2 targets during port perturbation tests (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix crash due to stale SRB access around I/O timeouts (Nilesh Javali) [2109830] - scsi: qla2xxx: Turn off multi-queue for 8G adapters (Nilesh Javali) [2109830] - scsi: qla2xxx: Wind down adapter after PCIe error (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.600-k (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix slow session teardown (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce N2N thrashing at app_start time (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix no logout on delete for N2N (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix session thrash (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Tear down session if keys have been removed (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix no login after app start (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce disruption due to multiple app start (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Send LOGO for unexpected IKE message (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix I/O timeout due to over-subscription (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.500-k (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix n2n login retry for secure device (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix n2n discovery issue with secure target (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Remove old doorbell interface (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Add retry for ELS passthrough (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Synchronize NPIV deletion with authentication application (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix potential stuck session in sa update (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Add bsg interface to read doorbell events (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Wait for app to ack on sess down (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: bsg refactor (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce Initiator-Initiator thrashing (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused 'ql_dm_tgt_ex_pct' parameter (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove setting of 'req' and 'rsp' parameters (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix missed DMA unmap for aborted commands (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Remove unneeded variable (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unneeded flush_workqueue() (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove free_sg command flag (Nilesh Javali) [2109830] - scsi: megaraid_sas: Clean up some inconsistent indenting (Tomas Henzl) [2120070] - scsi: megaraid_sas: Move megasas_dbg_lvl init to megasas_init() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Remove unnecessary memset() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Simplify megasas_update_device_list (Tomas Henzl) [2120070] - scsi: megaraid_sas: Correct an error message (Tomas Henzl) [2120070] - scsi: megaraid_sas: Correct value passed to scsi_device_lookup() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Use struct_size() in code related to struct MR_PD_CFG_SEQ_NUM_SYNC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Use struct_size() in code related to struct MR_FW_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_PD_CFG_SEQ_NUM_SYNC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_DRV_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_FW_RAID_MAP_DYNAMIC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_FW_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid: Remove redundant assignment to variable mfiStatus (Tomas Henzl) [2120070] - scsi: megaraid_sas: Remove redundant variable cmd_type (Tomas Henzl) [2120070] - platform/x86/intel/vsec: Fix wrong type for local status variables (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Add PCI error recovery support to Intel PMT (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Add support for Raptor Lake (Prarit Bhargava) [2076744] - platform/x86/intel/pmt: telemetry: Fix fixed region handling (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Rework early hardware code (Prarit Bhargava) [2076744] - platform/x86/intel: Fix pmt_crashlog array reference (Prarit Bhargava) [2076744] - powerpc/kexec_file: Use current CPU info while setting up FDT (Mamatha Inamdar) [2126520] - mm/kmemleak: prevent soft lockup in kmemleak_scan()'s object iteration loops (Waiman Long) [2095075] - mm/kmemleak: prevent soft lockup in first object iteration loop of kmemleak_scan() (Waiman Long) [2095075] - mm/kmemleak: skip unlikely objects in kmemleak_scan() without taking lock (Waiman Long) [2095075] - mm/kmemleak: use _irq lock/unlock variants in kmemleak_scan/_clear() (Waiman Long) [2095075] - mm/kmemleak: avoid scanning potential huge holes (Waiman Long) [2095075] - KVM: s390: pci: fix GAIT physical vs virtual pointers usage (Thomas Huth) [1664379] - KVM: s390: pci: fix plain integer as NULL pointer warnings (Thomas Huth) [1664379] - KVM: s390/pci: fix include duplicates (Thomas Huth) [1664379] - redhat: Use group notifier to get the KVM pointer in the vfio_pci_zdev code (Thomas Huth) [1664379] - KVM: s390: pci: register pci hooks without interpretation (Thomas Huth) [1664379] - KVM: s390: pci: Hook to access KVM lowlevel from VFIO (Thomas Huth) [1664379] - Documentation: kvm: extend KVM_S390_ZPCI_OP subheading underline (Thomas Huth) [1664379] - KVM: s390: add KVM_S390_ZPCI_OP to manage guest zPCI devices (Thomas Huth) [1664379] - vfio-pci/zdev: different maxstbl for interpreted devices (Thomas Huth) [1664379] - vfio-pci/zdev: add function handle to clp base capability (Thomas Huth) [1664379] - vfio-pci/zdev: add open/close device hooks (Thomas Huth) [1664379] - KVM: s390: pci: add routines to start/stop interpretive execution (Thomas Huth) [1664379] - KVM: s390: pci: provide routines for enabling/disabling interrupt forwarding (Thomas Huth) [1664379] - KVM: s390: mechanism to enable guest zPCI Interpretation (Thomas Huth) [1664379] - KVM: s390: pci: enable host forwarding of Adapter Event Notifications (Thomas Huth) [1664379] - KVM: s390: pci: do initial setup for AEN interpretation (Thomas Huth) [1664379] - KVM: s390: pci: add basic kvm_zdev structure (Thomas Huth) [1664379] - redhat: Enable the new CONFIG_VFIO_PCI_ZDEV_KVM switch (Thomas Huth) [1664379] - vfio/pci: introduce CONFIG_VFIO_PCI_ZDEV_KVM (Thomas Huth) [1664379] - vfio/pci: remove CONFIG_VFIO_PCI_ZDEV from Kconfig (Thomas Huth) [1664379] - vfio-pci/zdev: fix possible segmentation fault issue (Thomas Huth) [1664379] - s390/pci: stash dtsm and maxstbl (Thomas Huth) [1664379] - s390/pci: stash associated GISA designation (Thomas Huth) [1664379] - s390/pci: externalize the SIC operation controls and routine (Thomas Huth) [1664379] - s390/airq: allow for airq structure that uses an input vector (Thomas Huth) [1664379] - s390/airq: pass more TPI info to airq handlers (Thomas Huth) [1664379] - s390/cio: add tpi.h header file (Thomas Huth) [1664379] - s390/ap: fix kernel doc comments (Thomas Huth) [1664379] - s390/sclp: detect the AISI facility (Thomas Huth) [1664379] - s390/sclp: detect the AENI facility (Thomas Huth) [1664379] - s390/sclp: detect the AISII facility (Thomas Huth) [1664379] - s390/sclp: detect the zPCI load/store interpretation facility (Thomas Huth) [1664379] - s390/sclp: add detection of IPL-complete-control facility (Thomas Huth) [1664379] - s390/pci: add error record for CC 2 retries (Thomas Huth) [2134399] - s390/pci: add PCI access type and length to error records (Thomas Huth) [2134399] - s390/pci: don't log availability events as errors (Thomas Huth) [2134399] - s390/pci: make better use of zpci_dbg() levels (Thomas Huth) [2134399] - s390/pci: rename get_zdev_by_bus() to zdev_from_bus() (Thomas Huth) [2134399] - redhat: Restore clp_rescan_pci_devices_simple() function (Thomas Huth) [2134399] - s390/pci: improve zpci_dev reference counting (Thomas Huth) [2134399] - s390/pci: make zpci_set_irq()/zpci_clear_irq() static (Thomas Huth) [2134399] - s390/pci: simplify __pciwb_mio() inline asm (Thomas Huth) [2134399] - s390/pci: use physical addresses in DMA tables (Thomas Huth) [2134399] - s390/pci: use phys_to_virt() for AIBVs/DIBVs (Thomas Huth) [2134399] - s390/pci: implement minimal PCI error recovery (Thomas Huth) [2134399] - PCI: Export pci_dev_lock() (Thomas Huth) [2134399] - PCI: Export pci_dev_trylock() and pci_dev_unlock() (Thomas Huth) [2134399] - s390/pci: implement reset_slot for hotplug slot (Thomas Huth) [2134399] - s390/pci: refresh function handle in iomap (Thomas Huth) [2134399] - s390/pci: add simpler s390dbf traces for events (Thomas Huth) [2134399] - s390/pci: tolerate inconsistent handle in recover (Thomas Huth) [2134399] - s390/pci_mmio: fully validate the VMA before calling follow_pte() (Thomas Huth) [2134399] - s390/pci: read clp_list_pci_req only once (Thomas Huth) [2134399] - s390/pci: fix clp_get_state() handling of -ENODEV (Thomas Huth) [2134399] - s390/pci: improve DMA translation init and exit (Thomas Huth) [2134399] - s390/pci: simplify CLP List PCI handling (Thomas Huth) [2134399] - s390/pci: handle FH state mismatch only on disable (Thomas Huth) [2134399] - s390/pci: fix misleading rc in clp_set_pci_fn() (Thomas Huth) [2134399] - s390/pci: reset zdev->zbus on registration failure (Thomas Huth) [2134399] - s390/pci: cleanup resources only if necessary (Thomas Huth) [2134399] - s390/pci: add zpci_set_irq()/zpci_clear_irq() (Thomas Huth) [2134399] - s390/pci: use register pair instead of register asm (Thomas Huth) [2134399] - s390: introduce register pair union (Thomas Huth) [2134399] - s390/pci: handle stale deconfiguration events (Thomas Huth) [2134399] - s390/pci: rename zpci_configure_device() (Thomas Huth) [2134399] - s390/pci: narrow scope of zpci_configure_device() (Thomas Huth) [2134399] - s390/pci: separate zbus registration from scanning (Thomas Huth) [2134399] - s390/pci: use mutex not spinlock for zbus list (Thomas Huth) [2134399] - s390/pci: separate zbus creation from scanning (Thomas Huth) [2134399] - s390/pci: do more bus setup in zpci_bus_scan() (Thomas Huth) [2134399] - s390/pci: introduce zpci_bus_scan_device() (Thomas Huth) [2134399] - s390/pci: fix DMA cleanup on hard deconfigure (Thomas Huth) [2134399] - s390/pci: move zpci_remove_device() to bus code (Thomas Huth) [2134399] - s390/pci: unify de-/configure for slots and events (Thomas Huth) [2134399] - s390/pci: add zpci_event_hard_deconfigured() (Thomas Huth) [2134399] - s390/pci: deconfigure device on release (Thomas Huth) [2134399] - s390/pci: refactor zpci function states (Thomas Huth) [2134399] - s390/pci: inform when missing required facilities (Thomas Huth) [2134399] - s390/pci: remove races against pte updates (Thomas Huth) [2134399] - s390: remove orphaned function declarations (Thomas Huth) [2134399] - s390/pci: add missing pci_iov.h include (Thomas Huth) [2134399] - s390/pci: remove clp_rescan_pci_devices_simple() (Thomas Huth) [2134399] - s390/pci: remove clp_rescan_pci_devices() (Thomas Huth) [2134399] - s390/pci: consolidate SR-IOV specific code (Thomas Huth) [2134399] - s390/pci: Implement ioremap_wc/prot() with MIO (Thomas Huth) [2134399] - s390/mm: properly clear _PAGE_NOEXEC bit when it is not supported (Thomas Huth) [2134399] - s390/pci: clarify comment in s390_mmio_read/write (Thomas Huth) [2134399] - s390/pci: remove unused functions (Thomas Huth) [2134399] - s390/pci: Log new handle in clp_disable_fh() (Thomas Huth) [2134399] - s390/pci: ioremap() align with generic code (Thomas Huth) [2134399] - s390: enforce CONFIG_SMP (Thomas Huth) [2134399] - s390/pci: mark function(s) __always_inline (Thomas Huth) [2134399] - s390/pci: avoid using strncmp with hardcoded length (Thomas Huth) [2134399] - s390/pci: PCI_IOV_RESOURCES loop refactoring in zpci_map_resources (Thomas Huth) [2134399] - s390: pci: no need to check return value of debugfs_create functions (Thomas Huth) [2134399] - s390/pci: fix sleeping in atomic during hotplug (Thomas Huth) [2134399] - s390/pci: remove fmb address from debug output (Thomas Huth) [2134399] - s390/pci: add fmt3 fmb (Thomas Huth) [2134399] - tools headers kvm s390: Sync headers with the kernel sources (Thomas Huth) [2111063] - KVM: s390: resetting the Topology-Change-Report (Thomas Huth) [2111063] - KVM: s390: guest support for topology function (Thomas Huth) [2111063] - KVM: s390: Cleanup ipte lock access and SIIF facility checks (Thomas Huth) [2111063] - KVM: s390: drop unexpected word 'and' in the comments (Thomas Huth) [2111063] - Documentation: KVM: update s390-diag.rst reference (Thomas Huth) [2043872] - Documentation: KVM: update msr.rst reference (Thomas Huth) [2043872] - Documentation: KVM: update amd-memory-encryption.rst references (Thomas Huth) [2043872] - Documentation: KVM: update s390-pv.rst reference (Thomas Huth) [2043872] - Documentation/virt/kvm/api.rst: Explain rc/rrc delivery (Thomas Huth) [2043872] - Documentation/virt/kvm/api.rst: Add protvirt dump/info api descriptions (Thomas Huth) [2043872] - Documentation: KVM: add API issues section (Thomas Huth) [2043872] - Documentation: virt: Protected virtual machine dumps (Thomas Huth) [2043872] - Documentation: KVM: add separate directories for architecture-specific documentation (Thomas Huth) [2043872] - KVM: s390: Add KVM_CAP_S390_PROTECTED_DUMP (Thomas Huth) [2043872] - KVM: s390: Add CPU dump functionality (Thomas Huth) [2043872] - KVM: s390: Add configuration dump functionality (Thomas Huth) [2043872] - KVM: s390: pv: Add query dump information (Thomas Huth) [2043872] - KVM: s390: pv: Add dump support definitions (Thomas Huth) [2043872] - KVM: s390: pv: Add query interface (Thomas Huth) [2043872] - s390/uv: Add dump fields to query (Thomas Huth) [2043872] - s390/uv: Add SE hdr query information (Thomas Huth) [2043872] - kvm: Move KVM_GET_XSAVE2 IOCTL definition at the end of kvm.h (Thomas Huth) [2043872] - docs: kvm: fix WARNINGs from api.rst (Thomas Huth) [2043872] - s390/mm: use non-quiescing sske for KVM switch to keyed guest (Thomas Huth) [2043872] - s390/gmap: voluntarily schedule during key setting (Thomas Huth) [2043872] - KVM: s390: Don't indicate suppression on dirtying, failing memop (Thomas Huth) [2043872] - s390: uv: Add offset comments to UV query struct and fix naming (Thomas Huth) [2043872] - KVM: s390: Use Makefile.kvm for common files (Thomas Huth) [2043872] - KVM: s390: Skip gfn/size sanity checks on memslot DELETE or FLAGS_ONLY (Thomas Huth) [2043872] - fs: dlm: fix invalid derefence of sb_lvbptr (Alexander Aring) [2121790] - fs: dlm: handle -EBUSY first in unlock validation (Alexander Aring) [2121790] - fs: dlm: handle -EBUSY first in lock arg validation (Alexander Aring) [2121790] - fs: dlm: fix race between test_bit() and queue_work() (Alexander Aring) [2121790] - scsi: core: Fix a use-after-free (Ming Lei) [1961010] - net/mlx5e: Fix wrong use of skb_tcp_all_headers() with encapsulation (Petr Oros) [2135685] - net: add skb_[inner_]tcp_all_headers helpers (Petr Oros) [2135685] - net: marvell: clean up trigraph warning on ??! string (Petr Oros) [2135685] - powerpc/pseries: Use lparcfg to reconfig VAS windows for DLPAR CPU (Steve Best) [2133103] - flow_dissector: Do not count vlan tags inside tunnel payload (Ivan Vecera) [2136875] - flow_offload: Introduce flow_match_pppoe (Ivan Vecera) [2136875] - net/sched: flower: Add PPPoE filter (Ivan Vecera) [2136875] - flow_dissector: Add PPPoE dissectors (Ivan Vecera) [2136875] - net/sched: flower: Consider the number of tags for vlan filters (Ivan Vecera) [2136875] - net/sched: flower: Add number of vlan tags filter (Ivan Vecera) [2136875] - flow_dissector: Add number of vlan tags dissector (Ivan Vecera) [2136875] - net/sched: flower: Reduce identation after is_key_vlan refactoring (Ivan Vecera) [2136875] - net/sched: flower: Helper function for vlan ethtype checks (Ivan Vecera) [2136875] - dissector: do not set invalid PPP protocol (Ivan Vecera) [2136875] - dm bufio: use the acquire memory barrier when testing for B_READING (Benjamin Marzinski) [2139161] - provide arch_test_bit_acquire for architectures that define test_bit (Benjamin Marzinski) [2139161] - wait_on_bit: add an acquire memory barrier (Benjamin Marzinski) [2139161] - add barriers to buffer_uptodate and set_buffer_uptodate (Benjamin Marzinski) [2139161] - dm verity: Add documentation for try_verify_in_tasklet option (Benjamin Marzinski) [2139161] - dm cache: delete the redundant word 'each' in comment (Benjamin Marzinski) [2139161] - dm raid: fix typo in analyse_superblocks code comment (Benjamin Marzinski) [2139161] - dm verity: enable WQ_HIGHPRI on verify_wq (Benjamin Marzinski) [2139161] - dm raid: delete the redundant word 'that' in comment (Benjamin Marzinski) [2139161] - dm: change from DMWARN to DMERR or DMCRIT for fatal errors (Benjamin Marzinski) [2139161] - dm bufio: fix some cases where the code sleeps with spinlock held (Benjamin Marzinski) [2139161] - dm writecache: fix smatch warning about invalid return from writecache_map (Benjamin Marzinski) [2139161] - dm verity: fix verity_parse_opt_args parsing (Benjamin Marzinski) [2139161] - dm verity: fix DM_VERITY_OPTS_MAX value yet again (Benjamin Marzinski) [2139161] - dm bufio: simplify DM_BUFIO_CLIENT_NO_SLEEP locking (Benjamin Marzinski) [2139161] - dm verity: have verify_wq use WQ_HIGHPRI if "try_verify_in_tasklet" (Benjamin Marzinski) [2139161] - dm verity: remove WQ_CPU_INTENSIVE flag since using WQ_UNBOUND (Benjamin Marzinski) [2139161] - dm verity: only copy bvec_iter in verity_verify_io if in_tasklet (Benjamin Marzinski) [2139161] - dm verity: optimize verity_verify_io if FEC not configured (Benjamin Marzinski) [2139161] - dm verity: conditionally enable branching for "try_verify_in_tasklet" (Benjamin Marzinski) [2139161] - dm bufio: conditionally enable branching for DM_BUFIO_CLIENT_NO_SLEEP (Benjamin Marzinski) [2139161] - dm verity: allow optional args to alter primary args handling (Benjamin Marzinski) [2139161] - dm verity: Add optional "try_verify_in_tasklet" feature (Benjamin Marzinski) [2139161] - dm bufio: Add DM_BUFIO_CLIENT_NO_SLEEP flag (Benjamin Marzinski) [2139161] - dm bufio: Add flags argument to dm_bufio_client_create (Benjamin Marzinski) [2139161] - dm: Start pr_preempt from the same starting path (Benjamin Marzinski) [2139161] - dm: Fix PR release handling for non All Registrants (Benjamin Marzinski) [2139161] - dm: Start pr_reserve from the same starting path (Benjamin Marzinski) [2139161] - dm: Allow dm_call_pr to be used for path searches (Benjamin Marzinski) [2139161] - Documentation: dm writecache: Render status list as list (Benjamin Marzinski) [2139161] - Documentation: dm writecache: add blank line before optional parameters (Benjamin Marzinski) [2139161] - dm snapshot: fix typo in snapshot_map() comment (Benjamin Marzinski) [2139161] - dm raid: remove redundant "the" in parse_raid_params() comment (Benjamin Marzinski) [2139161] - dm cache: fix typo in 2 comment blocks (Benjamin Marzinski) [2139161] - dm verity: fix checkpatch close brace error (Benjamin Marzinski) [2139161] - dm table: rename dm_target variable in dm_table_add_target() (Benjamin Marzinski) [2139161] - dm table: audit all dm_table_get_target() callers (Benjamin Marzinski) [2139161] - dm table: remove dm_table_get_num_targets() wrapper (Benjamin Marzinski) [2139161] - writeback: Avoid skipping inode writeback (Waiman Long) [2138886] - writeback: fix obtain a reference to a freeing memcg css (Waiman Long) [2138886] - mm/memcg: disable threshold event handlers on PREEMPT_RT (Waiman Long) [2138886] - memcg: increase MEMCG_CHARGE_BATCH to 64 (Waiman Long) [2138886] - mm: page_counter: rearrange struct page_counter fields (Waiman Long) [2138886] - mm: page_counter: remove unneeded atomic ops for low/min (Waiman Long) [2138886] - memcg: reduce size of memcg vmstats structures (Waiman Long) [2138886] - memcg: rearrange code (Waiman Long) [2138886] - memcg: extract memcg_vmstats from struct mem_cgroup (Waiman Long) [2138886] - mm: memcontrol: fix potential oom_lock recursion deadlock (Waiman Long) [2138886] - mm: memcontrol: add {pgscan,pgsteal}_{kswapd,direct} items in memory.stat of cgroup v2 (Waiman Long) [2138886] - mm/memcg: protect per-CPU counter by disabling preemption on PREEMPT_RT where needed. (Waiman Long) [2138886] - writeback: memcg: simplify cgroup_writeback_by_id (Waiman Long) [2138886] - writeback, cgroup: do not reparent dax inodes (Waiman Long) [2138886] - writeback, cgroup: remove wb from offline list before releasing refcnt (Waiman Long) [2138886] - writeback, cgroup: release dying cgwbs by switching attached inodes (Waiman Long) [2138886] - writeback, cgroup: support switching multiple inodes at once (Waiman Long) [2138886] - writeback, cgroup: split out the functional part of inode_switch_wbs_work_fn() (Waiman Long) [2138886] - writeback, cgroup: keep list of inodes attached to bdi_writeback (Waiman Long) [2138886] - writeback, cgroup: switch to rcu_work API in inode_switch_wbs() (Waiman Long) [2138886] - writeback, cgroup: increment isw_nr_in_flight before grabbing an inode (Waiman Long) [2138886] - writeback, cgroup: add smp_mb() to cgroup_writeback_umount() (Waiman Long) [2138886] - writeback, cgroup: do not switch inodes with I_WILL_FREE flag (Waiman Long) [2138886] - docs/admin-guide: cgroup-v2: typos and spaces (Waiman Long) [2138886] - fs: improve comments for writeback_single_inode() (Waiman Long) [2138886] - writeback: remove struct bdi_writeback_congested (Waiman Long) [2138886] - writeback: remove {set,clear}_wb_congested (Waiman Long) [2138886] - fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount (Waiman Long) [2138886] - blkcg: remove unused __blkg_release_rcu() (Waiman Long) [2138886] - writeback: Add a bdi_writeback_rh extension to struct bdi_writeback (Waiman Long) [2138886] - RDMA/irdma: Report the correct link speed (Kamal Heib) [2125102] - blk-mq: avoid double ->queue_rq() because of early timeout (Ming Lei) [2132438] - blk-mq: add one API for waiting until quiesce is done (Ming Lei) [2132438] - blk-mq: support concurrent queue quiesce/unquiesce (Ming Lei) [2132438] - bridge: Do not send empty IFLA_AF_SPEC attribute (Ivan Vecera) [2139133] - net: bridge: Clear offload_fwd_mark when passing frame up bridge interface. (Ivan Vecera) [2139133] - net: bridge: vlan: fix memory leak in __allowed_ingress (Ivan Vecera) [2139133]- ice: Add additional CSR registers to ETHTOOL_GREGS (Petr Oros) [2131024] - udp: Update reuse->has_conns under reuseport_lock. (Xin Long) [2135937] - udp: Remove redundant __udp_sysctl_init() call from udp_init(). (Xin Long) [2135937] - udp: Fix a data-race around sysctl_udp_l3mdev_accept. (Xin Long) [2135937] - Documentation: fix udp_wmem_min in ip-sysctl.rst (Xin Long) [2135937] - be2net: Fix buffer overflow in be_get_module_eeprom (Josef Oskera) [2126917] - iommu/vt-d: Clean up si_domain in the init_dmars() error path (Jerry Snitselaar) [2133331]- md: Fix spelling mistake in comments of r5l_log (Nigel Croxon) [2112935] - md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d (Nigel Croxon) [2112935] - md/raid10: convert resync_lock to use seqlock (Nigel Croxon) [2112935] - md/raid10: fix improper BUG_ON() in raise_barrier() (Nigel Croxon) [2112935] - md/raid10: prevent unnecessary calls to wake_up() in fast path (Nigel Croxon) [2112935] - md/raid10: don't modify 'nr_waitng' in wait_barrier() for the case nowait (Nigel Croxon) [2112935] - md/raid10: factor out code from wait_barrier() to stop_waiting_barrier() (Nigel Croxon) [2112935] - md: Remove extra mddev_get() in md_seq_start() (Nigel Croxon) [2112935] - md/raid5: Remove unnecessary bio_put() in raid5_read_one_chunk() (Nigel Croxon) [2112935 2111563] - md/raid5: Ensure stripe_fill happens on non-read IO with journal (Nigel Croxon) [2112935] - md/raid5: Don't read ->active_stripes if it's not needed (Nigel Croxon) [2112935] - md/raid5: Cleanup prototype of raid5_get_active_stripe() (Nigel Croxon) [2112935] - md/raid5: Drop extern on function declarations in raid5.h (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_get_active_stripe() (Nigel Croxon) [2112935] - md: Replace snprintf with scnprintf (Nigel Croxon) [2112935] - md/raid10: fix compile warning (Nigel Croxon) [2112935] - md/raid5: Fix spelling mistakes in comments (Nigel Croxon) [2112935] - md: call __md_stop_writes in md_stop (Nigel Croxon) [2112935] - md: Flush workqueue md_rdev_misc_wq in md_alloc() (Nigel Croxon) [2112935] - drivers:md:fix a potential use-after-free bug (Nigel Croxon) [2112935] - md/raid5: Ensure batch_last is released before sleeping for quiesce (Nigel Croxon) [2112935] - md/raid5: Move stripe_request_ctx up (Nigel Croxon) [2112935] - md/raid5: Drop unnecessary call to r5c_check_stripe_cache_usage() (Nigel Croxon) [2112935] - md/raid5: Make is_inactive_blocked() helper (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_get_active_stripe() (Nigel Croxon) [2112935] - md-raid10: fix KASAN warning (Nigel Croxon) [2112935] - md: fix build failure for !MODULE (Nigel Croxon) [2112935] - raid5: fix duplicate checks for rdev->saved_raid_disk (Nigel Croxon) [2112935] - md/raid5: Convert prepare_to_wait() to wait_woken() api (Nigel Croxon) [2112935] - md/raid5: Fix sectors_to_do bitmap overflow in raid5_make_request() (Nigel Croxon) [2112935] - md: Fix spelling mistake in comments (Nigel Croxon) [2112935] - md/raid5: Increase restriction on max segments per request (Nigel Croxon) [2112935] - md/raid5: Improve debug prints (Nigel Croxon) [2112935] - md/raid5: Pivot raid5_make_request() (Nigel Croxon) [2112935] - md/raid5: Check all disks in a stripe_head for reshape progress (Nigel Croxon) [2112935] - md/raid5: Refactor add_stripe_bio() (Nigel Croxon) [2112935] - md/raid5: Keep a reference to last stripe_head for batch (Nigel Croxon) [2112935] - md/raid5: Refactor for loop in raid5_make_request() into while loop (Nigel Croxon) [2112935] - md/raid5: Move read_seqcount_begin() into make_stripe_request() (Nigel Croxon) [2112935] - md/raid5: Drop the do_prepare flag in raid5_make_request() (Nigel Croxon) [2112935] - md/raid5: Factor out helper from raid5_make_request() loop (Nigel Croxon) [2112935] - md/raid5: Move common stripe get code into new find_get_stripe() helper (Nigel Croxon) [2112935] - md/raid5: Move stripe_add_to_batch_list() call out of add_stripe_bio() (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_make_request loop (Nigel Croxon) [2112935] - md/raid5: Factor out ahead_of_reshape() function (Nigel Croxon) [2112935] - md/raid5: Make logic blocking check consistent with logic that blocks (Nigel Croxon) [2112935] - md: unlock mddev before reap sync_thread in action_store (Nigel Croxon) [2112935] - md: Explicitly create command-line configured devices (Nigel Croxon) [2112935] - md: Notify sysfs sync_completed in md_reap_sync_thread() (Nigel Croxon) [2112935] - md: Ensure resync is reported after it starts (Nigel Croxon) [2112935] - md: Use enum for overloaded magic numbers used by mddev->curr_resync (Nigel Croxon) [2112935] - md/raid5-cache: Annotate pslot with __rcu notation (Nigel Croxon) [2112935] - md/raid5-cache: Clear conf->log after finishing work (Nigel Croxon) [2112935] - md/raid5-cache: Drop RCU usage of conf->log (Nigel Croxon) [2112935] - md/raid5-cache: Take mddev_lock in r5c_journal_mode_show() (Nigel Croxon) [2112935] - md/raid5: suspend the array for calls to log_exit() (Nigel Croxon) [2112935] - md/raid5-ppl: Drop unused argument from ppl_handle_flush_request() (Nigel Croxon) [2112935] - md/raid5-log: Drop extern decorators for function prototypes (Nigel Croxon) [2112935] - md/raid5: missing error code in setup_conf() (Nigel Croxon) [2112935] - Revert "md: don't unregister sync_thread with reconfig_mutex held" (Nigel Croxon) [2112935] - qed: fix typos in comments (Manish Chopra) [2111885] - net: qede: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - RDMA/qedr: Fix potential memory leak in __qedr_alloc_mr() (Manish Chopra) [2111885] - qlogic: qed: fix clang -Wformat warnings (Manish Chopra) [2111885] - qed: Use bitmap_empty() (Manish Chopra) [2111885] - qed: Use the bitmap API to allocate bitmaps (Manish Chopra) [2111885] - qlogic/qed: fix repeated words in comments (Manish Chopra) [2111885] - net: qed: fix typos in comments (Manish Chopra) [2111885] - RDMA/qedr: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - qed: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - qed: replace bitmap_weight with bitmap_empty in qed_roce_stop() (Manish Chopra) [2111885] - qed: rework qed_rdma_bmap_free() (Manish Chopra) [2111885] - qed: Remove IP services API. (Manish Chopra) [2111885] - qed: remove an unneed NULL check on list iterator (Manish Chopra) [2111885] - RDMA/irdma: Report RNR NAK generation in device caps (Kamal Heib) [2120676 2103957] - RDMA/irdma: Use s/g array in post send only when its valid (Kamal Heib) [2120676 2103957] - RDMA/irdma: Return correct WC error for bind operation failure (Kamal Heib) [2120676 2103957] - RDMA/irdma: Return error on MR deregister CQP failure (Kamal Heib) [2120676 2103957] - RDMA/irdma: Report the correct max cqes from query device (Kamal Heib) [2120676 2103957] - RDMA/siw: Pass a pointer to virt_to_page() (Kamal Heib) [2120676] - RDMA/cma: Fix arguments order in net device validation (Kamal Heib) [2120676] - RDMA/irdma: Fix drain SQ hang with no completion (Kamal Heib) [2120676 2103957 2033244 2053376] - IB/iser: Fix login with authentication (Kamal Heib) [2120676] - RDMA/ib_srpt: Unify checking rdma_cm_id condition in srpt_cm_req_recv() (Kamal Heib) [2120676] - RDMA/rxe: Fix error unwind in rxe_create_qp() (Kamal Heib) [2120676] - RDMA/rxe: Split qp state for requester and completer (Kamal Heib) [2120676] - RDMA/rxe: Generate error completion for error requester QP state (Kamal Heib) [2120676] - RDMA/rxe: Update wqe_index for each wqe error completion (Kamal Heib) [2120676] - RDMA/srpt: Fix a use-after-free (Kamal Heib) [2120676] - RDMA/srpt: Introduce a reference count in struct srpt_device (Kamal Heib) [2120676] - RDMA/srpt: Duplicate port name members (Kamal Heib) [2120676] - Revert "RDMA/rxe: Create duplicate mapping tables for FMRs" (Kamal Heib) [2120676] - RDMA/rxe: Replace __rxe_do_task by rxe_run_task (Kamal Heib) [2120676] - RDMA/rxe: Limit the number of calls to each tasklet (Kamal Heib) [2120676] - RDMA/rxe: Make the tasklet exits the same (Kamal Heib) [2120676] - RDMA/rxe: Fix rnr retry behavior (Kamal Heib) [2120676] - RDMA/rxe: Add rxe_is_fenced() subroutine (Kamal Heib) [2120676] - RDMA/rxe: For invalidate compare according to set keys in mr (Kamal Heib) [2120676] - RDMA: Fix comment typo (Kamal Heib) [2120676] - IB: Fix repeated words 'the the' comments (Kamal Heib) [2120676] - RDMA/rxe: Fix mw bind to allow any consumer key portion (Kamal Heib) [2120676] - RDMA/rxe: Fix spelling mistake in error print (Kamal Heib) [2120676] - RDMA/rxe: Remove unused qp parameter (Kamal Heib) [2120676] - RDMA/hfi1: fix potential memory leak in setup_base_ctxt() (Kamal Heib) [2120676] - RDMA/rxe: Remove unused mask parameter (Kamal Heib) [2120676] - RDMA/rxe: Rename rxe_atomic_reply to atomic_reply (Kamal Heib) [2120676] - RDMA/rxe: Add common rxe_prepare_res() (Kamal Heib) [2120676] - RDMA/rxe: Fix BUG: KASAN: null-ptr-deref in rxe_qp_do_cleanup (Kamal Heib) [2120676] - RDMA/siw: Fix duplicated reported IW_CM_EVENT_CONNECT_REPLY event (Kamal Heib) [2120676] - RDMA/hfi1: Depend on !UML (Kamal Heib) [2120676] - RDMA/irdma: Use the bitmap API to allocate bitmaps (Kamal Heib) [2120676 2103957] - RDMA: remove useless condition in siw_create_cq() (Kamal Heib) [2120676] - RDMA/irdma: Fix setting of QP context err_rq_idx_valid field (Kamal Heib) [2120676 2103957] - RDMA/irdma: Fix VLAN connection with wildcard address (Kamal Heib) [2120676 2103957] - RDMA/irdma: Fix a window for use-after-free (Kamal Heib) [2120676 2103957] - RDMA/irdma: Make resource distribution algorithm more QP oriented (Kamal Heib) [2120676 2103957] - RDMA/irdma: Make CQP invalid state error non-critical (Kamal Heib) [2120676 2103957] - RDMA/irdma: Add AE source to error log (Kamal Heib) [2120676 2103957] - RDMA/irdma: Add 2 level PBLE support for FMR (Kamal Heib) [2120676 2103957] - IB: Fix spelling of 'writable' (Kamal Heib) [2120676] - RDMA/rxe: Remove unnecessary include statement (Kamal Heib) [2120676] - RDMA/rxe: Replace include statement (Kamal Heib) [2120676] - RDMA/rxe: Convert pr_warn/err to pr_debug in pyverbs (Kamal Heib) [2120676] - RDMA/rxe: Fix deadlock in rxe_do_local_ops() (Kamal Heib) [2120676] - RDMA/rxe: Merge normal and retry atomic flows (Kamal Heib) [2120676] - RDMA/rxe: Move atomic original value to res (Kamal Heib) [2120676] - RDMA/rxe: Move atomic responder res to atomic_reply (Kamal Heib) [2120676] - RDMA/rxe: Add a responder state for atomic reply (Kamal Heib) [2120676] - RDMA/rxe: Move code to rxe_prepare_atomic_res() (Kamal Heib) [2120676] - RDMA/rxe: Convert read side locking to rcu (Kamal Heib) [2120676] - RDMA/rxe: Stop lookup of partially built objects (Kamal Heib) [2120676] - RDMA/rxe: Remove useless pkt parameters (Kamal Heib) [2120676] - RDMA: Correct duplicated words in comments (Kamal Heib) [2120676] - IB/iser: Drain the entire QP during destruction flow (Kamal Heib) [2120676] - RDMA/rxe: fix xa_alloc_cycle() error return value check again (Kamal Heib) [2120676] - RDMA/core: Add a netevent notifier to cma (Kamal Heib) [2120676 2117912] - RDMA/core: Add an rb_tree that stores cm_ids sorted by ifindex and remote IP (Kamal Heib) [2120676 2117912] - RDMA/hfi1: Fix typo in comment (Kamal Heib) [2120676] - RDMA: Split kernel-only global device caps from uverbs device caps (Kamal Heib) [2120675] - RDMA/hfi1: Remove all traces of diagpkt support (Kamal Heib) [2120675] - RDMA/hfi1: Consolidate software versions (Kamal Heib) [2120675] - RDMA/hfi1: Remove pointless driver version (Kamal Heib) [2120675] - RDMA/hfi1: Prevent panic when SDMA is disabled (Kamal Heib) [2120675] - RDMA/core: Fix typo in comment (Kamal Heib) [2120675] - IB/hf1: Fix typo in comment (Kamal Heib) [2120675] - IB/iser: Fix typo in comment (Kamal Heib) [2120675] - IB/isert: Avoid flush_scheduled_work() usage (Kamal Heib) [2120675] - RDMA/siw: Enable siw on tunnel devices (Kamal Heib) [2120675] - RDMA/rxe: Enforce IBA C11-17 (Kamal Heib) [2120675] - RDMA/rxe: Move mw cleanup code to rxe_mw_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Move mr cleanup code to rxe_mr_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Move qp cleanup code to rxe_qp_do_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Check rxe_get() return value (Kamal Heib) [2120675] - RDMA/rxe: Add rxe_srq_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Remove IB_SRQ_INIT_MASK (Kamal Heib) [2120675] - RDMA/rxe: Skip adjusting remote addr for write in retry operation (Kamal Heib) [2120675] - RDMA/rxe: Optimize the mr pool struct (Kamal Heib) [2120675] - RDMA/rxe: Replace paylen by payload (Kamal Heib) [2120675] - RDMA/core: Avoid flush_workqueue(system_unbound_wq) usage (Kamal Heib) [2120675] - RDMA/rxe: Remove useless parameters for update_state() (Kamal Heib) [2120675] - RDMA/rxe: Remove reliable datagram support (Kamal Heib) [2120675] - RDMA/rxe: Remove support for SMI QPs from rdma_rxe (Kamal Heib) [2120675] - RDMA/rxe: Remove mc_grp_pool from struct rxe_dev (Kamal Heib) [2120675] - RDMA/rxe: Remove type 2A memory window capability (Kamal Heib) [2120675] - RDMA/usnic: Refactor usnic_uiom_alloc_pd() (Kamal Heib) [2120675] - RDMA/usnic: Stop using iommu_present() (Kamal Heib) [2120675] - IB/SA: Replace usage of found with dedicated list iterator variable (Kamal Heib) [2120675] - IB/rdmavt: add missing locks in rvt_ruc_loopback (Kamal Heib) [2120675] - IB/uverbs: Move part of enum ib_device_cap_flags to uapi (Kamal Heib) [2120675] - IB/uverbs: Move enum ib_raw_packet_caps to uapi (Kamal Heib) [2120675] - RDMA/pvrdma: Remove useless DMA-32 fallback configuration (Kamal Heib) [2120675] - RDMA: switch from 'pci_' to 'dma_' API (Kamal Heib) [2120675] - scsi: RDMA/srp: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Kamal Heib) [2120675] - scsi: RDMA/iser: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Kamal Heib) [2120675] - x86/fpu: Prevent FPU state corruption (Oleksandr Natalenko) [2130890] - net: team: Unsync device addresses on ndo_stop (Hangbin Liu) [2135240] - mmu_gather: fix the CONFIG_MMU_GATHER_NO_RANGE case (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Force tlb-flush VM_PFNMAP vmas (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Let there be one tlb_{start,end}_vma() implementation (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Remove per arch tlb_{start,end}_vma() (Waiman Long) [2130166] {CVE-2022-39188} - x86/ldt: Use tlb_gather_mmu_fullmm() when freeing LDT page-tables (Waiman Long) [2130166] {CVE-2022-39188} - tlb: arch: Remove empty __tlb_remove_tlb_entry() stubs (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Remove start/end arguments from tlb_gather_mmu() (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Introduce tlb_gather_mmu_fullmm() (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Remove unused start/end arguments from tlb_finish_mmu() (Waiman Long) [2130166] {CVE-2022-39188} - mm: proc: Invalidate TLB after clearing soft-dirty page state (Waiman Long) [2130166] {CVE-2022-39188} - mm: fix clear_refs_write locking (Waiman Long) [2130166] {CVE-2022-39188} - s390/Kconfig: sort config S390 select list once again (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: provide MMU_GATHER_TABLE_FREE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_MMU_GATHER_NO_GATHER (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_MMU_GATHER_PAGE_SIZE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_RCU_TABLE_FREE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: avoid potential double flush (Waiman Long) [2130166] {CVE-2022-39188} - powerpc/mm/book3s64/radix: Flush the full mm even when need_flush_all is set (Waiman Long) [2130166] {CVE-2022-39188} - powerpc/mm/book3s64/radix: Use freed_tables instead of need_flush_all (Waiman Long) [2130166] {CVE-2022-39188} - mm/tlb: Remove CONFIG_HAVE_RCU_TABLE_INVALIDATE (Waiman Long) [2130166] {CVE-2022-39188} - Add skb drop reasons to IPv6 UDP receive path (Antoine Tenart) [2059158] - net: skb: export skb drop reaons to user by TRACE_DEFINE_ENUM (Antoine Tenart) [2059158] - net: skb: prevent the split of kfree_skb_reason() by gcc (Antoine Tenart) [2059158] - tcp: md5: fix IPv4-mapped support (Antoine Tenart) [2059158] - net: dropreason: reformat the comment fo skb drop reasons (Antoine Tenart) [2059158] - net: skb: use auto-generation to convert skb drop reason to string (Antoine Tenart) [2059158] - net: skb: move enum skb_drop_reason to standalone header file (Antoine Tenart) [2059158] - tcp_ipv6: set the drop_reason in the right place (Antoine Tenart) [2059158] - net: tcp: reset 'drop_reason' to NOT_SPCIFIED in tcp_v{4,6}_rcv() (Antoine Tenart) [2059158] - net: skb: change the definition SKB_DR_SET() (Antoine Tenart) [2059158] - net: skb: check the boundrary of drop reason in kfree_skb_reason() (Antoine Tenart) [2059158] - net: dm: check the boundary of skb drop reasons (Antoine Tenart) [2059158] - tcp: fix signed/unsigned comparison (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_ofo_queue() (Antoine Tenart) [2059158] - tcp: add drop reasons to tcp_rcv_synsent_state_process() (Antoine Tenart) [2059158] - tcp: make tcp_rcv_synsent_state_process() drop monitor friend (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_prune_ofo_queue() (Antoine Tenart) [2059158] - tcp: add two drop reasons for tcp_ack() (Antoine Tenart) [2059158] - tcp: add drop reasons to tcp_rcv_state_process() (Antoine Tenart) [2059158] - tcp: make tcp_rcv_state_process() drop monitor friendly (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_validate_incoming() (Antoine Tenart) [2059158] - tcp: get rid of rst_seq_match (Antoine Tenart) [2059158] - tcp: consume incoming skb leading to a reset (Antoine Tenart) [2059158] - tcp: tcp_send_challenge_ack delete useless param `skb` (Antoine Tenart) [2059158] - ipv6: fix NULL deref in ip6_rcv_core() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_protocol_deliver_rcu() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_rcv_core() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to TLV parse (Antoine Tenart) [2059158] - net: ipv6: remove redundant statistics in ipv6_hop_jumbo() (Antoine Tenart) [2059158] - net: icmp: introduce function icmpv6_param_prob_reason() (Antoine Tenart) [2059158] - net: ip: add skb drop reasons to ip forwarding (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_pkt_drop() (Antoine Tenart) [2059158] - net: ipv4: add skb drop reasons to ip_error() (Antoine Tenart) [2059158] - skb: add some helpers for skb drop reasons (Antoine Tenart) [2059158] - net: icmp: add skb drop reasons to icmp protocol (Antoine Tenart) [2059158] - ping: Check return value of function 'ping_queue_rcv_skb' (Antoine Tenart) [2059158] - net: icmp: introduce __ping_queue_rcv_skb() to report drop reasons (Antoine Tenart) [2059158] - net: skb: rename SKB_DROP_REASON_PTYPE_ABSENT (Antoine Tenart) [2059158] - net: sock: introduce sock_queue_rcv_skb_reason() (Antoine Tenart) [2059158] - net: tcp: fix shim definition of tcp_inbound_md5_hash (Antoine Tenart) [2059158] - skb: make drop reason booleanable (Antoine Tenart) [2059158] - net/tcp: Merge TCP-MD5 inbound callbacks (Antoine Tenart) [2059158] - tcp: md5: add tcp_md5_needed jump label (Antoine Tenart) [2059158] - net: tun: track dropped skb via kfree_skb_reason() (Antoine Tenart) [2059158] - net: tun: split run_ebpf_filter() and pskb_trim() into different "if statement" (Antoine Tenart) [2059158] - net: tap: track dropped skb via kfree_skb_reason() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for __netif_receive_skb_core() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for sch_handle_ingress() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for do_xdp_generic() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for enqueue_to_backlog() (Antoine Tenart) [2059158] - net: dev: add skb drop reasons to __dev_xmit_skb() (Antoine Tenart) [2059158] - net: skb: introduce the function kfree_skb_list_reason() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for sch_handle_egress() (Antoine Tenart) [2059158] - net: neigh: add skb drop reasons to arp_error_report() (Antoine Tenart) [2059158] - net: neigh: use kfree_skb_reason() for __neigh_event_send() (Antoine Tenart) [2059158] - net: ip: add skb drop reasons for ip egress path (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_data_queue_ofo() (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_data_queue() (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_rcv_established() (Antoine Tenart) [2059158] - net: tcp: use kfree_skb_reason() for tcp_v{4,6}_do_rcv() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_add_backlog() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_v{4,6}_inbound_md5_hash() (Antoine Tenart) [2059158] - ipv4/tcp: Pass dif and sdif to tcp_v4_inbound_md5_hash (Antoine Tenart) [2059158] - ipv6/tcp: Pass dif and sdif to tcp_v6_inbound_md5_hash (Antoine Tenart) [2059158] - ipv4/tcp: Use local variable for tcp_md5_addr (Antoine Tenart) [2059158] - net: tcp: use kfree_skb_reason() for tcp_v6_rcv() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_v4_rcv() (Antoine Tenart) [2059158] - net: tcp: introduce tcp_drop_reason() (Antoine Tenart) [2059158] - ipv6: Add reasons for skb drops to __udp6_lib_rcv (Antoine Tenart) [2059158] - net: drop_monitor: support drop reason (Antoine Tenart) [2059158] - net: udp: use kfree_skb_reason() in __udp_queue_rcv_skb() (Antoine Tenart) [2059158] - net: udp: use kfree_skb_reason() in udp_queue_rcv_one_skb() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_protocol_deliver_rcu() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_rcv_finish_core() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_rcv_core() (Antoine Tenart) [2059158] - net: netfilter: use kfree_drop_reason() for NF_DROP (Antoine Tenart) [2059158] - net: skb_drop_reason: add document for drop reasons (Antoine Tenart) [2059158] - net: socket: rename SKB_DROP_REASON_SOCKET_FILTER (Antoine Tenart) [2059158] - net: skb: use kfree_skb_reason() in __udp4_lib_rcv() (Antoine Tenart) [2059158] - net: skb: use kfree_skb_reason() in tcp_v4_rcv() (Antoine Tenart) [2059158] - net: skb: introduce kfree_skb_reason() (Antoine Tenart) [2059158] - bnx2x: Fix comment typo (Manish Chopra) [2111882] - bnx2x: Fix spelling mistake "regiser" -> "register" (Manish Chopra) [2111882] - bnx2x: Fix undefined behavior due to shift overflowing the constant (Manish Chopra) [2111882] - net: sched: act_ct: fix possible refcount leak in tcf_ct_init() (Davide Caratti) [2133741] - net: sched: fix possible refcount leak in tc_new_tfilter() (Davide Caratti) [2133741] - sch_sfb: Also store skb len before calling child enqueue (Davide Caratti) [2133741] - sch_sfb: Don't assume the skb is still around after enqueueing to child (Davide Caratti) [2133741] - net/sched: fix netdevice reference leaks in attach_default_qdiscs() (Davide Caratti) [2133741] - net: sched: tbf: don't call qdisc_put() while holding tree lock (Davide Caratti) [2133741] - net: Fix data-races around weight_p and dev_weight_[rt]x_bias. (Davide Caratti) [2133741] - net/sched: act_api: Notify user space if any actions were flushed before error (Davide Caratti) [2133741] - tipc: fix an information leak in tipc_topsrv_kern_subscr (Xin Long) [2134962] - tipc: Fix recognition of trial period (Xin Long) [2134962] - tipc: fix shift wrapping bug in map_get() (Xin Long) [2134962] - PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited (Myron Stowe) [2072656] - x86/pci/xen: Use msi_msg shadow structs (Jerry Snitselaar) [2133518] - iommu/intel: Use msi_msg shadow structs (Jerry Snitselaar) [2133518] - PCI: MSI: Fix Kconfig dependencies for PCI_MSI_ARCH_FALLBACKS (Jerry Snitselaar) [2133518] - x86/apic/msi: Unbreak DMAR and HPET MSI (Jerry Snitselaar) [2133518] - iommu/amd: Remove domain search for PCI/MSI (Jerry Snitselaar) [2133518] - iommu/vt-d: Remove domain search for PCI/MSI[X] (Jerry Snitselaar) [2133518] - x86/irq: Make most MSI ops XEN private (Jerry Snitselaar) [2133518] - x86/irq: Cleanup the arch_*_msi_irqs() leftovers (Jerry Snitselaar) [2133518] - PCI/MSI: Make arch_.*_msi_irq[s] fallbacks selectable (Jerry Snitselaar) [2133518] - x86/xen: Wrap XEN MSI management into irqdomain (Jerry Snitselaar) [2133518] - x86/xen: Consolidate XEN-MSI init (Jerry Snitselaar) [2133518] - x86/xen: Rework MSI teardown (Jerry Snitselaar) [2133518] - x86/xen: Make xen_msi_init() static and rename it to xen_hvm_msi_init() (Jerry Snitselaar) [2133518] - x86/irq: Move apic_post_init() invocation to one place (Jerry Snitselaar) [2133518] - x86/msi: Use generic MSI domain ops (Jerry Snitselaar) [2133518] - x86/msi: Remove pointless vcpu_affinity callback (Jerry Snitselaar) [2133518] - netfilter: nf_conntrack_irc: Tighten matching on DCC message (Wander Lairson Costa) [2124092] {CVE-2022-2663} - netfilter: nf_conntrack_irc: Fix forged IP logic (Wander Lairson Costa) [2124092] {CVE-2022-2663} - ice: Add support Flex RXD (Michal Schmidt) [2131310] - asm-generic: sections: refactor memory_intersects (Jerry Snitselaar) [2112119] - swiotlb: fix passing local variable to debugfs_create_ulong() (Jerry Snitselaar) [2112119] - swiotlb: move struct io_tlb_slot to swiotlb.c (Jerry Snitselaar) [2112119] - swiotlb: ensure a segment doesn't cross the area boundary (Jerry Snitselaar) [2112119] - swiotlb: consolidate rounding up default_nslabs (Jerry Snitselaar) [2112119] - swiotlb: remove unused fields in io_tlb_mem (Jerry Snitselaar) [2112119] - swiotlb: fix use after free on error handling path (Jerry Snitselaar) [2112119] - swiotlb: split up the global swiotlb lock (Jerry Snitselaar) [2112119] - swiotlb: fail map correctly with failed io_tlb_default_mem (Jerry Snitselaar) [2112119] - swiotlb: remove a useless return in swiotlb_init (Jerry Snitselaar) [2112119] - swiotlb: remove the unused swiotlb_force declaration (Jerry Snitselaar) [2112119] - iommu/dma: Fix race condition during iova_domain initialization (Jerry Snitselaar) [2112119] - iommu/amd: Fix compile warning in init code (Jerry Snitselaar) [2106599] - iommu/amd: Simplify and Consolidate Virtual APIC (AVIC) Enablement (Jerry Snitselaar) [2106599] - iommu/vt-d: Check correct capability for sagaw determination (Jerry Snitselaar) [2112119] - iommu/vt-d: Correctly calculate sagaw value of IOMMU (Jerry Snitselaar) [2112119] - iommu/vt-d: Fix kdump kernels boot failure with scalable mode (Jerry Snitselaar) [2080413] - iommu/amd: use full 64-bit value in build_completion_wait() (Jerry Snitselaar) [2112119] - swiotlb: avoid potential left shift overflow (Jerry Snitselaar) [2112119] - dma-debug: improve search for partial syncs (Jerry Snitselaar) [2112119] - iommu/iova: Improve 32-bit free space estimate (Jerry Snitselaar) [2112119] - iommu/amd: Handle return of iommu_device_sysfs_add (Jerry Snitselaar) [2112119] - swiotlb: fix setting ->force_bounce (Jerry Snitselaar) [2112119] - swiotlb: use the right nslabs-derived sizes in swiotlb_init_late (Jerry Snitselaar) [2112119] - swiotlb: use the right nslabs value in swiotlb_init_remap (Jerry Snitselaar) [2112119] - swiotlb: don't panic when the swiotlb buffer can't be allocated (Jerry Snitselaar) [2112119] - x86: remove cruft from (Jerry Snitselaar) [2112119] - swiotlb: remove swiotlb_init_with_tbl and swiotlb_init_late_with_tbl (Jerry Snitselaar) [2112119] - swiotlb: provide swiotlb_init variants that remap the buffer (Jerry Snitselaar) [2112119] - swiotlb: pass a gfp_mask argument to swiotlb_init_late (Jerry Snitselaar) [2112119] - swiotlb: add a SWIOTLB_ANY flag to lift the low memory restriction (Jerry Snitselaar) [2112119] - swiotlb: make the swiotlb_init interface more useful (Jerry Snitselaar) [2112119] - x86: centralize setting SWIOTLB_FORCE when guest memory encryption is enabled (Jerry Snitselaar) [2112119] - x86: remove the IOMMU table infrastructure (Jerry Snitselaar) [2112119] - swiotlb: rename swiotlb_late_init_with_default_size (Jerry Snitselaar) [2112119] - swiotlb: simplify swiotlb_max_segment (Jerry Snitselaar) [2112119] - iommu/vt-d: avoid invalid memory access via node_online(NUMA_NO_NODE) (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: check return value after calling platform_get_resource() (Jerry Snitselaar) [2112119] - iommu/arm-smmu: fix possible null-ptr-deref in arm_smmu_device_probe() (Jerry Snitselaar) [2112119] - iommu/amd: Increase timeout waiting for GA log enablement (Jerry Snitselaar) [2112119] - iommu/amd: Do not call sleep while holding spinlock (Jerry Snitselaar) [2112119] - iommu/amd: Remove redundant check (Jerry Snitselaar) [2112119] - swiotlb: simplify array allocation (Jerry Snitselaar) [2112119] - swiotlb: tidy up includes (Jerry Snitselaar) [2112119] - treewide: Replace the use of mem_encrypt_active() with cc_platform_has() (Jerry Snitselaar) [2112119] - swiotlb: simplify debugfs setup (Jerry Snitselaar) [2112119] - iommu: Log iova range in map/unmap trace events (Jerry Snitselaar) [2112119] - iommu/amd: Improve amd_iommu_v2_exit() (Jerry Snitselaar) [2112119] - iommu/amd: Remove unused struct fault.devid (Jerry Snitselaar) [2112119] - iommu/amd: Clean up function declarations (Jerry Snitselaar) [2112119] - iommu/amd: Improve error handling for amd_iommu_init_pci (Jerry Snitselaar) [2112119] - iommu/iova: Separate out rcache init (Jerry Snitselaar) [2112119] - iommu/iova: Temporarily include dma-mapping.h from iova.h (Jerry Snitselaar) [2112119] - iommu: Move flush queue data into iommu_dma_cookie (Jerry Snitselaar) [2112119] - iommu/iova: Move flush queue code to iommu-dma (Jerry Snitselaar) [2112119] - iommu/iova: Consolidate flush queue code (Jerry Snitselaar) [2112119] - iommu/vt-d: Use put_pages_list (Jerry Snitselaar) [2112119] - iommu/amd: Use put_pages_list (Jerry Snitselaar) [2112119] - iommu/amd: Simplify pagetable freeing (Jerry Snitselaar) [2112119] - iommu/iova: Squash flush_cb abstraction (Jerry Snitselaar) [2112119] - iommu/iova: Squash entry_dtor abstraction (Jerry Snitselaar) [2112119] - iommu/iova: Move fast alloc size roundup into alloc_iova_fast() (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: fix event handling soft lockup (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: Avoid open coded arithmetic in memory allocation (Jerry Snitselaar) [2112119] - iommu/amd: Fix loop timeout issue in iommu_ga_log_enable() (Jerry Snitselaar) [2112119] - iommu/intel: Use msi_msg shadow structs (Jerry Snitselaar) [2112119] - dma-mapping: use 'bitmap_zalloc()' when applicable (Jerry Snitselaar) [2112119] - iommu/dma: Use kvcalloc() instead of kvzalloc() (Jerry Snitselaar) [2112119] - iommu/vt-d: Convert the return type of first_pte_in_page to bool (Jerry Snitselaar) [2112119] - iommu/vt-d: Use second level for GPA->HPA translation (Jerry Snitselaar) [2112119] - iommu/vt-d: Remove duplicate identity domain flag (Jerry Snitselaar) [2112119] - iommu/vt-d: Do not falsely log intel_iommu is unsupported kernel option (Jerry Snitselaar) [2112119] - iommu/dma: Unexport IOVA cookie management (Jerry Snitselaar) [2112119] - iommu/amd: Use struct_group() for memcpy() region (Jerry Snitselaar) [2112119] - dma-mapping: remove bogus test for pfn_valid from dma_map_resource (Jerry Snitselaar) [2112119] - iommu/vt-d: Use pci_dev_id() helper (Jerry Snitselaar) [2112119] - swiotlb-xen: this is PV-only on x86 (Jerry Snitselaar) [2112119] - xen/pci-swiotlb: reduce visibility of symbols (Jerry Snitselaar) [2112119] - iova: Export alloc_iova_fast() and free_iova_fast() (Jerry Snitselaar) [2112119] - iommu: Clarify default domain Kconfig (Jerry Snitselaar) [2112119] - iommu/io-pgtable: Abstract iommu_iotlb_gather access (Jerry Snitselaar) [2112119] - iommu/vt-d: Refactor Kconfig a bit (Jerry Snitselaar) [2112119] - iommu: Allow enabling non-strict mode dynamically (Jerry Snitselaar) [2112119] - iommu: Merge strictness and domain type configs (Jerry Snitselaar) [2112119] - iommu: Only log strictness for DMA domains (Jerry Snitselaar) [2112119] - iommu: Expose DMA domain strictness via sysfs (Jerry Snitselaar) [2112119] - iommu: Express DMA strictness via the domain type (Jerry Snitselaar) [2112119] - iommu/vt-d: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu/arm-smmu: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu/amd: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu: Introduce explicit type for non-strict DMA domains (Jerry Snitselaar) [2112119] - iommu/io-pgtable: Remove non-strict quirk (Jerry Snitselaar) [2112119] - iommu: Indicate queued flushes via gather data (Jerry Snitselaar) [2112119] - iommu/amd: Remove stale amd_iommu_unmap_flush usage (Jerry Snitselaar) [2112119] - iommu: Remove mode argument from iommu_set_dma_strict() (Jerry Snitselaar) [2112119] - iommu/amd: Add support for IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu/vt-d: Add support for IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu: Enhance IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu: Print strict or lazy mode at init time (Jerry Snitselaar) [2112119] - iommu: Deprecate Intel and AMD cmdline methods to enable strict mode (Jerry Snitselaar) [2112119] - dma-debug: use memory_intersects() directly (Jerry Snitselaar) [2112119] - dma-debug: fix return value of __setup handlers (Jerry Snitselaar) [2112119] - arm-smmu-qcom: Ensure the qcom_scm driver has finished probing (Jerry Snitselaar) [2112119] - iommu/io-pgtable-arm: Clean up faulty sanity check (Jerry Snitselaar) [2112119] - iommu/vt-d: Fix RCU list debugging warnings (Jerry Snitselaar) [2112119] - iommu/dma: add a new dma_map_ops of get_merge_boundary() (Jerry Snitselaar) [2112119] - swiotlb: do not zero buffer in set_memory_decrypted() (Jerry Snitselaar) [2112119] - iommu: iommu_ops RH_KABI cleanup (Jerry Snitselaar) [2112119] - device: Fix RH_KABI work around (Jerry Snitselaar) [2112357] - iommu/vt-d: Drop stop marker messages (Jerry Snitselaar) [2112119] - iommu/vt-d: Remove unused function intel_svm_capable() (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: Fix size calculation in arm_smmu_mm_invalidate_range() (Jerry Snitselaar) [2112119] - iommu/vt-d: Delete dev_has_feat callback (Jerry Snitselaar) [2112119] - iommu/amd: Remove useless irq affinity notifier (Jerry Snitselaar) [2112119]- scsi: qedi: Fix ABBA deadlock in qedi_process_tmf_resp() and qedi_process_cmd_cleanup_resp() (Nilesh Javali) [2109890] - scsi: qedi: Remove set but unused 'page' variable (Nilesh Javali) [2109890] - x86/elf: Disable automatic READ_IMPLIES_EXEC on 64-bit (Wander Lairson Costa) [2070700] {CVE-2022-25265} - x86/elf: Split READ_IMPLIES_EXEC from executable PT_GNU_STACK (Wander Lairson Costa) [2070700] {CVE-2022-25265} - x86/elf: Add table to document READ_IMPLIES_EXEC (Wander Lairson Costa) [2070700] {CVE-2022-25265} - RHEL-only: KVM: selftests: Enable rseq_test on aarch64 (Gavin Shan) [2128974] - KVM: selftests: Use getcpu() instead of sched_getcpu() in rseq_test (Gavin Shan) [2128974] - selftests: kvm: Fix a compile error in selftests/kvm/rseq_test.c (Gavin Shan) [2128974] - KVM: selftests: Fix target thread to be migrated in rseq_test (Gavin Shan) [2128974] - selftests: KVM: Handle compiler optimizations in ucall (Gavin Shan) [2128974] - selftests: kvm: replace ternary operator with min() (Gavin Shan) [2128974] - KVM: selftests: Fix typo in vgic_init test (Gavin Shan) [2128974] - KVM: selftests: Fix buggy-but-benign check in test_v3_new_redist_regions() (Gavin Shan) [2128974] - KVM: arm64: vgic: Fix exit condition in scan_its_table() (Gavin Shan) [2128974] - KVM: arm64: selftests: Add support for GICv2 on v3 (Gavin Shan) [2128974] - KVM: arm64: Fix comment typo in nvhe/switch.c (Gavin Shan) [2128974] - KVM: arm64: vgic: Remove duplicate check in update_affinity_collection() (Gavin Shan) [2128974] - KVM: arm64: Don't return from void function (Gavin Shan) [2128974] - KVM: arm64: Drop stale comment (Gavin Shan) [2128974] - KVM: arm64: Warn if accessing timer pending state outside of vcpu context (Gavin Shan) [2128974] - KVM: arm64: Replace vgic_v3_uaccess_read_pending with vgic_uaccess_read_pending (Gavin Shan) [2128974] - KVM: arm64: vgic: Undo work in failed ITS restores (Gavin Shan) [2128974] - KVM: arm64: vgic: Do not ignore vgic_its_restore_cte failures (Gavin Shan) [2128974] - KVM: arm64: vgic: Add more checks when restoring ITS tables (Gavin Shan) [2128974] - KVM: arm64: vgic: Check that new ITEs could be saved in guest memory (Gavin Shan) [2128974] - KVM: arm64: nvhe: Eliminate kernel-doc warnings (Gavin Shan) [2128974] - KVM: arm64: Print emulated register table name when it is unsorted (Gavin Shan) [2128974] - KVM: arm64: Don't BUG_ON() if emulated register table is unsorted (Gavin Shan) [2128974] - KVM: arm64: Inject exception on out-of-IPA-range translation fault (Gavin Shan) [2128974] - KVM: arm64: vgic: Remove unnecessary type castings (Gavin Shan) [2128974] - KVM: arm64: Drop unused param from kvm_psci_version() (Gavin Shan) [2128974] - KVM: arm64: vgic: Add memcg accounting to vgic allocations (Gavin Shan) [2128974] - x86/split_lock: Enable the split lock feature on Raptor Lake (Prarit Bhargava) [2076738] - mm: prevent page_frag_alloc() from corrupting the memory (Izabela Bakollari) [2132265] - RDMA/mlx5: Set local port to one when accessing counters (Mohammad Kabat) [2077119] - scsi: ch: Do not initialise statics to 0 (Ewan D. Milne) [2132458] - scsi: core: Fix warning in scsi_alloc_sgtables() (Ewan D. Milne) [2132458] - scsi: core: Move the definition of SCSI_QUEUE_DELAY (Ewan D. Milne) [2132458] - scsi: scsi_debug: Fix zone transition to full condition (Ewan D. Milne) [2132458] - scsi: sd_zbc: Prevent zone information memory leak (Ewan D. Milne) [2132458] - scsi: sd: Fix potential NULL pointer dereference (Ewan D. Milne) [2132458] - scsi: sr: Add memory allocation failure handling for get_capabilities() (Ewan D. Milne) [2132458] - scsi: sd: Use cached ATA Information VPD page (Ewan D. Milne) [2132458] - scsi: core: Do not truncate INQUIRY data on modern devices (Ewan D. Milne) [2132458] - scsi: core: Pick suitable allocation length in scsi_report_opcode() (Ewan D. Milne) [2132458] - scsi: core: Query VPD size before getting full page (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add gap zone support (Ewan D. Milne) [2132458] - scsi: scsi_debug: Rename zone type constants (Ewan D. Milne) [2132458] - scsi: scsi_debug: Fix a typo (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Hide gap zones (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Return early in sd_zbc_check_zoned_characteristics() (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Introduce struct zoned_disk_info (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Use logical blocks as unit when querying zones (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Verify that the zone size is a power of two (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Improve source code documentation (Ewan D. Milne) [2132458] - scsi: sr: Do not leak information in ioctl (Ewan D. Milne) [2132458] - scsi: core: Remove unreachable code warning (Ewan D. Milne) [2132458] - scsi: libfc: Fix use after free in fc_exch_abts_resp() (Ewan D. Milne) [2132458] - scsi: scsi_debug: Silence unexpected unlock warnings (Ewan D. Milne) [2132458] - scsi: Remove unused member cmd_pool for structure scsi_host_template (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add environmental reporting log subpage (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add no_rwlock parameter (Ewan D. Milne) [2132458] - scsi: scsi_debug: Divide power on reset UNIT ATTENTION (Ewan D. Milne) [2132458] - scsi: scsi_debug: Use TASK SET FULL more (Ewan D. Milne) [2132458] - scsi: scsi_debug: Strengthen defer_t accesses (Ewan D. Milne) [2132458] - scsi: ch: Don't use GFP_DMA (Ewan D. Milne) [2132458] - scsi: scsi_transport_sas: Add 22.5 Gbps link rate definitions (Ewan D. Milne) [2132458] - scsi: sd: Free scsi_disk device via put_device() (Ewan D. Milne) [2132458] - scsi: scsi_debug: Adjust num_parts to create equally sized partitions (Ewan D. Milne) [2132458] - scsi: ch: remove ch_mutex() (Ewan D. Milne) [2132458] - scsi: ch: synchronize ch_probe() and ch_open() (Ewan D. Milne) [2132458] - scsi: ch: fixup refcounting imbalance for SCSI devices (Ewan D. Milne) [2132458] - scsi: mpi3mr: Schedule IRQ kthreads only on non-RT kernels (Tomas Henzl) [2134535] - netfilter: flowtable: fix stuck flows on cleanup due to pending work (Phil Sutter) [2131370] - netfilter: flowtable: add function to invoke garbage collection immediately (Phil Sutter) [2131370] - netfilter: flowtable: pass flowtable to nf_flow_table_iterate() (Phil Sutter) [2131370] - netfilter: flowtable: separate replace, destroy and stats to different workqueues (Phil Sutter) [2131370] - drm/mgag200: Fix PLL setup for G200_SE_A rev >=4 (Jocelyn Falempe) [2130159] - af_key: Do not call xfrm_probe_algs in parallel (Sabrina Dubroca) [2122369] {CVE-2022-3028} - xfrm: Update ipcomp_scratches with NULL when freed (Sabrina Dubroca) [2136193] - esp: choose the correct inner protocol for GSO on inter address family tunnels (Sabrina Dubroca) [2136193] - xfrm: fix refcount leak in __xfrm_policy_check() (Sabrina Dubroca) [2136193] - xfrm: xfrm_policy: fix a possible double xfrm_pols_put() in xfrm_bundle_lookup() (Sabrina Dubroca) [2136193] - net: Fix esp GSO on inter address family tunnels. (Sabrina Dubroca) [2136193] - esp: Fix BEET mode inter address family tunneling on GSO (Sabrina Dubroca) [2136193] - cifs: fix check of dfs interlinks (Ronnie Sahlberg) [2132414] - powerpc/pseries: Fix numa FORM2 parsing fallback code (Nico Pache) [2089496] - powerpc/pseries: rename numa_dist_table to form2_distances (Nico Pache) [2089496] - x86/pkey: Fix undefined behaviour with PKRU_WD_BIT (Nico Pache) [2089496] - hugetlb: add lockdep check for i_mmap_rwsem held in huge_pmd_share (Nico Pache) [2089496] - mm: page_io: fix psi memory pressure error on cold swapins (Nico Pache) [2089496] - mm/memcg: Remove 'page' parameter to mem_cgroup_charge_statistics() (Nico Pache) [2089496] - mm: workingset: replace IRQ-off check with a lockdep assert. (Nico Pache) [2089496] - mm/madvise: fix potential pte_unmap_unlock pte error (Nico Pache) [2089496] - mm/mmu_notifier.c: fix race in mmu_interval_notifier_remove() (Nico Pache) [2089496] - mm/sparse.c: remove NULL check in clear_hwpoisoned_pages() (Nico Pache) [2089496] - node: fix device cleanups in error handling code (Nico Pache) [2089496] - x86/setup: Fix static memory detection (Nico Pache) [2089496] - x86/fault: Don't send SIGSEGV twice on SEGV_PKUERR (Nico Pache) [2089496] - s390/startup: round down "mem" option to page boundary (Nico Pache) [2089496] - powerpc/64s: Remove 'dummy_copy_buffer' (Nico Pache) [2089496] - page_alloc: fix invalid watermark check on a negative value (Nico Pache) [2089496] - lib/radix-tree: remove unused argument of insert_entries (Nico Pache) [2089496] - drm/radeon: fix incorrrect SPDX-License-Identifiers (Nico Pache) [2089496] - mm/swap: fix the obsolete comment for SWP_TYPE_SHIFT (Nico Pache) [2089496] - irq_work: use kasan_record_aux_stack_noalloc() record callstack (Nico Pache) [2089496] - kdb: Fix the putarea helper function (Nico Pache) [2089496] - mm: slab: Delete unused SLAB_DEACTIVATED flag (Nico Pache) [2089496] - mm, kasan: use compare-exchange operation to set KASAN page tag (Nico Pache) [2089496] - rcu: Avoid alloc_pages() when recording stack (Nico Pache) [2089496] - workqueue, kasan: avoid alloc_pages() when recording stack (Nico Pache) [2089496] - kasan: generic: introduce kasan_record_aux_stack_noalloc() (Nico Pache) [2089496] - kasan: common: provide can_alloc in kasan_save_stack() (Nico Pache) [2089496] - lib/stackdepot: remove unused function argument (Nico Pache) [2089496] - lib/stackdepot: include gfp.h (Nico Pache) [2089496] - blk-cgroup: blk_cgroup_bio_start() should use irq-safe operations on blkg->iostat_cpu (Nico Pache) [2089496] - libnvdimm/pmem: Fix crash triggered when I/O in-flight during unbind (Nico Pache) [2089496] - include/trace/events/vmscan.h: remove mm_vmscan_inactive_list_is_low (Nico Pache) [2089496] - khugepaged: selftests: remove debug_cow (Nico Pache) [2089496] - mm/mmzone.h: simplify is_highmem_idx() (Nico Pache) [2089496] - mm/page-writeback: use __this_cpu_inc() in account_page_dirtied() (Nico Pache) [2089496] - mm/page-writeback: update the comment of Dirty position control (Nico Pache) [2089496] - mm/page-writeback: Fix performance when BDI's share of ratio is 0. (Nico Pache) [2089496] - fuse: ignore PG_workingset after stealing (Nico Pache) [2089496] - mm/slub: actually fix freelist pointer vs redzoning (Nico Pache) [2089496] - mm/slub: clarify verification reporting (Nico Pache) [2089496] - irq_work: Make irq_work_queue() NMI-safe again (Nico Pache) [2089496] - mm/huge_memory.c: remove unused macro TRANSPARENT_HUGEPAGE_DEBUG_COW_FLAG (Nico Pache) [2089496] - irq_work: record irq_work_queue() call stack (Nico Pache) [2089496] - arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL (Nico Pache) [2089496] - mm/arm64: Correct obsolete comment in do_page_fault() (Nico Pache) [2089496] - kernel: kexec: remove the lock operation of system_transition_mutex (Nico Pache) [2089496] - libnvdimm/pmem: Remove unused header (Nico Pache) [2089496] - workqueue: kasan: record workqueue stack (Nico Pache) [2089496] - lib/test_kasan.c: add workqueue test case (Nico Pache) [2089496] - page_frag: Recover from memory pressure (Nico Pache) [2089496] - mm: use helper function put_write_access() (Nico Pache) [2089496] - mm/swapfile.c: remove unnecessary goto out in _swap_info_get() (Nico Pache) [2089496] - mm/swap.c: fix incomplete comment in lru_cache_add_inactive_or_unevictable() (Nico Pache) [2089496] - mm/page_io.c: remove useless out label in __swap_writepage() (Nico Pache) [2089496] - mm/swap_slots.c: remove always zero and unused return value of enable_swap_slots_cache() (Nico Pache) [2089496] - mm/swap.c: fix confusing comment in release_pages() (Nico Pache) [2089496] - mm: annotate a data race in page_zonenum() (Nico Pache) [2089496] - mm/swap.c: annotate data races for lru_rotate_pvecs (Nico Pache) [2089496] - mm/rmap: annotate a data race at tlb_flush_batched (Nico Pache) [2089496] - mm/mempool: fix a data race in mempool_free() (Nico Pache) [2089496] - mm/list_lru: fix a data race in list_lru_count_one (Nico Pache) [2089496] - mm/memcontrol: fix a data race in scan count (Nico Pache) [2089496] - mm/swapfile: fix and annotate various data races (Nico Pache) [2089496] - mm: thp: remove debug_cow switch (Nico Pache) [2089496] - page_alloc: consider highatomic reserve in watermark fast (Nico Pache) [2089496] - mm: remove unnecessary wrapper function do_mmap_pgoff() (Nico Pache) [2089496] - doc: don't use deprecated "---help---" markers in target docs (Nico Pache) [2089496] - doc: cgroup: update note about conditions when oom killer is invoked (Nico Pache) [2089496] - mm: add kvfree_sensitive() for freeing sensitive data objects (Nico Pache) [2089496] - f2fs: fix retry logic in f2fs_write_cache_pages() (Nico Pache) [2089496] - mm/hugetlb: avoid unnecessary check on pud and pmd entry in huge_pte_offset (Nico Pache) [2089496] - mm/page-writeback.c: remove unused variable (Nico Pache) [2089496] - zswap: docs/vm: Fix typo accept_threshold_percent in zswap.rst (Nico Pache) [2089496] - tracing: Add a vmalloc_sync_mappings() for safe measure (Nico Pache) [2089496] - mm/hugetlb: fix a addressing exception caused by huge_pte_offset (Nico Pache) [2089496] - mm/page-writeback.c: write_cache_pages(): deduplicate identical checks (Nico Pache) [2089496] - revert "topology: add support for node_to_mem_node() to determine the fallback node" (Nico Pache) [2089496] - net: memcg: fix lockdep splat in inet_csk_accept() (Nico Pache) [2089496] - net: memcg: late association of sock to memcg (Nico Pache) [2089496] - tmpfs: deny and force are not huge mount options (Nico Pache) [2089496] - mm/zswap.c: add allocation hysteresis if pool limit is hit (Nico Pache) [2089496] - mm/swapfile.c: swap_next should increase position index (Nico Pache) [2089496] - fat: use prandom_u32() for i_generation (Nico Pache) [2089496] - mm/mmap.c: rb_parent is not necessary in __vma_link_list() (Nico Pache) [2089496] - mm/mmap.c: __vma_unlink_prev() is not necessary now (Nico Pache) [2089496] - docs: kmemleak: DEBUG_KMEMLEAK_EARLY_LOG_SIZE changed names (Nico Pache) [2089496] - mm/mmap.c: prev could be retrieved from vma->vm_prev (Nico Pache) [2089496] - mm/zsmalloc.c: fix a -Wunused-function warning (Nico Pache) [2089496] - mm/rmap.c: remove set but not used variable 'cstart' (Nico Pache) [2089496] - tools headers UAPI: Update tools's copy of mman.h headers (Nico Pache) [2089496] - mm/mmap: move common defines to mman-common.h (Nico Pache) [2089496] - mm: fix the MAP_UNINITIALIZED flag (Nico Pache) [2089496] - mm: vmalloc: show number of vmalloc pages in /proc/meminfo (Nico Pache) [2089496] - slab: remove /proc/slab_allocators (Nico Pache) [2089496] - mm/huge_memory.c: fix "orig_pud" set but not used (Nico Pache) [2089496] - mm: hwpoison: use do_send_sig_info() instead of force_sig() (Nico Pache) [2089496] - mm, page_alloc: drop should_suppress_show_mem (Nico Pache) [2089496] - mm,page_alloc: PF_WQ_WORKER threads must sleep at should_reclaim_retry() (Nico Pache) [2089496] - powerpc/8xx: Use patch_site for perf counters setup (Nico Pache) [2089496] - powerpc/8xx: Use patch_site for memory setup patching (Nico Pache) [2089496] - Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED for CONFIG_SWAP" (Nico Pache) [2089496] - mm/swapfile.c: put_swap_page: share more between huge/normal code path (Nico Pache) [2089496] - mm, swap, get_swap_pages: use entry_size instead of cluster in parameter (Nico Pache) [2089496] - mm/swapfile.c: add __swap_entry_free_locked() (Nico Pache) [2089496] - mm/swapfile.c: unify normal/huge code path in put_swap_page() (Nico Pache) [2089496] - mm/swapfile.c: unify normal/huge code path in swap_page_trans_huge_swapped() (Nico Pache) [2089496] - mm/swapfile.c: replace some #ifdef with IS_ENABLED() (Nico Pache) [2089496] - mm: swap: add comments to lock_cluster_or_swap_info() (Nico Pache) [2089496] - mm/swapfile.c: use swap_count() in swap_page_trans_huge_swapped() (Nico Pache) [2089496] - mm, oom: remove sleep from under oom_lock (Nico Pache) [2089496] - mm/hugetlb: remove gigantic page support for HIGHMEM (Nico Pache) [2089496] - mm/page-writeback.c: update stale account_page_redirty() comment (Nico Pache) [2089496] - shmem: use monotonic time for i_generation (Nico Pache) [2089496] - mptcp: increase default max additional subflows to 2 (Paolo Abeni) [2127136] - ipv6/addrconf: fix a null-ptr-deref bug for ip6_ptr (Davide Caratti) [2103990] - ipv6: Refactor fib6_ignore_linkdown (Davide Caratti) [2103990] - Revert "net: af_key: add check for pfkey_broadcast in function pfkey_process" (Davide Caratti) [2103990] - net: af_key: add check for pfkey_broadcast in function pfkey_process (Davide Caratti) [2103990] - certs: Add FIPS selftests (Vladis Dronov) [2134828] - certs: Move load_certificate_list() to be with the asymmetric keys code (Vladis Dronov) [2134828]- selftests/bpf: Limit unroll_count for pyperf600 test (Viktor Malik) [2139128]- perf affinity: Fix out of bound access to "sched_cpus" mask (Michael Petlan) [2125952] - net: skb: introduce and use a single page frag cache (Paolo Abeni) [2063335] - powerpc/pseries/vas: Pass hw_cpu_id to node associativity HCALL (Steve Best) [2131651] - agp/intel: Rename intel-gtt symbols (Jocelyn Falempe) [2115871] - drm/i915/gt: Split intel-gtt functions by arch (Jocelyn Falempe) [2115871] - drm: Implement DRM aperture helpers under video/ (Jocelyn Falempe) [2115871] - efi: Fix build error due to enum collision between efi.h and ima.h (Jocelyn Falempe) [2115871] - Revert "workqueue: remove unused cancel_work()" (Jocelyn Falempe) [2115871] - dma-buf: fix use of DMA_BUF_SET_NAME_{A,B} in userspace (Jocelyn Falempe) [2115871] - drm/i915/gsc: add gsc as a mei auxiliary device (Jocelyn Falempe) [2115871] - drm/i915: Prepare for multiple GTs (Jocelyn Falempe) [2115871] - drm/i915/gt: add gt_is_root() helper (Jocelyn Falempe) [2115871] - drm/i915: Rename INTEL_REGION_LMEM with INTEL_REGION_LMEM_0 (Jocelyn Falempe) [2115871] - drm/i915: fixup the initial fb base on DGFX (Jocelyn Falempe) [2115871] - drm/i915: add i915_gem_object_create_region_at() (Jocelyn Falempe) [2115871] - drm/i915: Report steering details in debugfs (Jocelyn Falempe) [2115871] - x86/gpu: include drm/i915_pciids.h directly in early quirks (Jocelyn Falempe) [2115871] - staging: fbtft: core: set smem_len before fb_deferred_io_init call (Jocelyn Falempe) [2115871] - fbdev: Put mmap for deferred I/O into drivers (Jocelyn Falempe) [2115871] - fbdev: Track deferred-I/O pages in pageref struct (Jocelyn Falempe) [2115871] - fbdev: defio: fix the pagelist corruption (Jocelyn Falempe) [2115871] - fbdev: Don't sort deferred-I/O pages by default (Jocelyn Falempe) [2115871] - staging: fbtft: Add spaces around / - Style (Jocelyn Falempe) [2115871] - fbdev/defio: Early-out if page is already enlisted (Jocelyn Falempe) [2115871] - panic, kexec: make __crash_kexec() NMI safe (Valentin Schneider) [2134126] - kexec: turn all kexec_mutex acquisitions into trylocks (Valentin Schneider) [2134126] - kexec: move locking into do_kexec_load (Valentin Schneider) [2134126] - ice: Fix interface being down after reset with link-down-on-close flag on (Petr Oros) [2024110] - ice: Add low latency Tx timestamp read (Petr Oros) [2092425] - ice: introduce ice_ptp_reset_cached_phctime function (Petr Oros) [2092425] - ice: re-arrange some static functions in ice_ptp.c (Petr Oros) [2092425] - ice: track and warn when PHC update is late (Petr Oros) [2092425] - ice: track Tx timestamp stats similar to other Intel drivers (Petr Oros) [2092425] - ice: implement adjfine with mul_u64_u64_div_u64 (Petr Oros) [2092425] - ice: Add EXTTS feature to the feature bitmap (Petr Oros) [2092425] - math: Export mul_u64_u64_div_u64 (Petr Oros) [2092425] - neighbour: allow NUD_NOARP entries to be forced GCed (Xin Long) [2076534] - neighbour: Prevent Race condition in neighbour subsytem (Xin Long) [2076534] - neighbour: Prevent a dead entry from updating gc_list (Xin Long) [2076534] - net: Exempt multicast addresses from five-second neighbor lifetime (Xin Long) [2076534] - neighbor: Reset gc_entries counter if new entry is released before insert (Xin Long) [2076534] - neighbor: Remove externally learned entries from gc_list (Xin Long) [2076534] - neighbor: Move neigh_update_ext_learned to core file (Xin Long) [2076534] - neighbor: Remove state and flags arguments to neigh_del (Xin Long) [2076534] - neighbor: Fix state check in neigh_forced_gc (Xin Long) [2076534] - neighbor: Fix locking order for gc_list changes (Xin Long) [2076534] - neighbor: gc_list changes should be protected by table lock (Xin Long) [2076534] - neighbor: Improve garbage collection (Xin Long) [2076534] - neighbour: send netlink notification if NTF_ROUTER changes (Xin Long) [2076534] - neighbour: allow admin to set NTF_ROUTER (Xin Long) [2076534] - s390/dasd: add device ping attribute (Tobias Huschle) [2043877] - s390/dasd: suppress generic error messages for PPRC secondary devices (Tobias Huschle) [2043877] - s390/dasd: add ioctl to perform a swap of the drivers copy pair (Tobias Huschle) [2043877] - s390/dasd: add copy pair swap capability (Tobias Huschle) [2043877] - s390/dasd: add copy pair setup (Tobias Huschle) [2043877] - s390/dasd: add query PPRC function (Tobias Huschle) [2043877] - s390/dasd: put block allocation in separate function (Tobias Huschle) [2043877] - s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup (Tobias Huschle) [2043877] - s390/qeth: Split memcpy() of struct qeth_ipacmd_addr_change flexible array (Tobias Huschle) [2110426] - s390/qeth: Fix typo 'the the' in comment (Tobias Huschle) [2110426] - s390/qdio: Fix spelling mistake (Tobias Huschle) [2110426] - qeth: remove a copy of the NAPI_POLL_WEIGHT define (Tobias Huschle) [2110426] - scsi: bnx2fc: Avoid using get_cpu() in bnx2fc_cmd_alloc() (Nilesh Javali) [2109895] - scsi: bnx2fc: Fix spelling mistake "mis-match" -> "mismatch" (Nilesh Javali) [2109895] - scsi: bnx2fc: Make use of the helper macro kthread_run() (Nilesh Javali) [2109895] - scsi: bnx2fc: Fix typo in comments (Nilesh Javali) [2109895] - scsi: qedf: Populate sysfs attributes for vport (Nilesh Javali) [2120219] - scsi: qedf: Fix typo in comment (Nilesh Javali) [2109893] - scsi: qedf: Remove redundant variable op (Nilesh Javali) [2109893] - scsi: qedf: Remove an unneeded NULL check on list iterator (Nilesh Javali) [2109893] - scsi: qedf: Remove unnecessary code (Nilesh Javali) [2109893] - s390/sclp: reserve memory occupied by sclp early buffer (Mete Durlu) [2060830] - s390: make command line configurable (Mete Durlu) [2060830] - s390: support command lines longer than 896 bytes (Mete Durlu) [2060830] - s390/kexec_file: move kernel image size check (Mete Durlu) [2060830] - s390/boot: move sclp early buffer from fixed address in asm to C (Mete Durlu) [2060830] - drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES (Phil Auld) [2115518] - sched/core: Do not requeue task on CPU excluded from cpus_mask (Phil Auld) [2115518] - workqueue: Avoid a false warning in unbind_workers() (Phil Auld) [2115518] - sched/core: Always flush pending blk_plug (Phil Auld) [2115518] - sched/fair: fix case with reduced capacity CPU (Phil Auld) [2115518] - sched: Remove unused function group_first_cpu() (Phil Auld) [2115518] - sched/fair: Remove redundant word " *" (Phil Auld) [2115518] - sched: only perform capability check on privileged operation (Phil Auld) [2115518] - sched: Allow newidle balancing to bail out of load_balance (Phil Auld) [2115518] - sched: Remove the limitation of WF_ON_CPU on wakelist if wakee cpu is idle (Phil Auld) [2115518] - sched: Fix the check of nr_running at queue wakelist (Phil Auld) [2115518] - sched: Fix balance_push() vs __sched_setscheduler() (Phil Auld) [2115518] - sched/fair: Optimize and simplify rq leaf_cfs_rq_list (Phil Auld) [2115518] - topology: Remove unused cpu_cluster_mask() (Phil Auld) [2115518] - sched: Update task_tick_numa to ignore tasks without an mm (Phil Auld) [2115518] - sched/deadline: Remove superfluous rq clock update in push_dl_task() (Phil Auld) [2115518] - time/sched_clock: Fix formatting of frequency reporting code (Phil Auld) [2115518] - time/sched_clock: Use Hz as the unit for clock rate reporting below 4kHz (Phil Auld) [2115518] - time/sched_clock: Round the frequency reported to nearest rather than down (Phil Auld) [2115518] - sched/fair: Delete useless condition in tg_unthrottle_up() (Phil Auld) [2115518] - sched/fair: Fix cfs_rq_clock_pelt() for throttled cfs_rq (Phil Auld) [2115518] - workqueue: Restrict kworker in the offline CPU pool running on housekeeping CPUs (Phil Auld) [2115518] - kernel/sched: Remove dl_boosted flag comment (Phil Auld) [2115518] - workqueue: Remove schedule() in unbind_workers() (Phil Auld) [2115518] - workqueue: Remove outdated comment about exceptional workers in unbind_workers() (Phil Auld) [2115518] - workqueue: Remove the advanced kicking of the idle workers in rebind_workers() (Phil Auld) [2115518] - workqueue: Fix unbind_workers() VS wq_worker_running() race (Phil Auld) [2115518] - sched/membarrier: fix missing local execution of ipi_sync_rq_state() (Phil Auld) [2115518] - kthread: Move prio/affinite change into the newly created thread (Phil Auld) [2115518]- dmaengine: idxd: Correct IAX operation code names (Jerry Snitselaar) [2112121] - dmaengine: dmatest: use strscpy to replace strlcpy (Jerry Snitselaar) [2112121] - dmaengine: remove DMA_MEMCPY_SG once again (Jerry Snitselaar) [2112121] - MAINTAINERS: idxd driver maintainer update (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Replace symbolic permissions by octal permissions (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Remove spaces before tabs (Jerry Snitselaar) [2112121] - dma:dw: remove reference to AVR32 architecture in core.c (Jerry Snitselaar) [2112121] - dmaengine: idxd: Only call idxd_enable_system_pasid() if succeeded in enabling SVA feature (Jerry Snitselaar) [2112121] - dmaengine: idxd: force wq context cleanup on device disable path (Jerry Snitselaar) [2112121] - dmaengine: Revert "dmaengine: add verification of DMA_INTERRUPT capability for dmatest" (Jerry Snitselaar) [2112121] - dmaengine: idxd: Separate user and kernel pasid enabling (Jerry Snitselaar) [2112121] - dmaengine: ptdma: statify pt_tx_status (Jerry Snitselaar) [2112121] - dmaengine: hidma: In hidma_prep_dma_memset treat value as a single byte (Jerry Snitselaar) [2112121] - dmaengine: Document dmaengine_prep_dma_memset (Jerry Snitselaar) [2112121] - dmaengine: PTDMA: support polled mode (Jerry Snitselaar) [2112121] - dmaengine: Remove a useless mutex (Jerry Snitselaar) [2112121] - dmaengine: idxd: update IAA definitions for user header (Jerry Snitselaar) [2112121] - dmaengine: Clarify cyclic transfer residue documentation (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2112121] - dmaengine: iot: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2112121] - dmaengine: ioatdma: use default_groups in kobj_type (Jerry Snitselaar) [2112121] - Documentation: dmaengine: Correctly describe dmatest with channel unset (Jerry Snitselaar) [2112121] - Documentation: dmaengine: Add a description of what dmatest does (Jerry Snitselaar) [2112121] - dmaengine: Add core function and capability check for DMA_MEMCPY_SG (Jerry Snitselaar) [2112121] - dmaengine: Add documentation for new memcpy scatter-gather function (Jerry Snitselaar) [2112121] - dmaengine: remove slave_id config field (Jerry Snitselaar) [2112121] - dmaengine: ioat: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: hsu: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: dw: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: remove debugfs #ifdef (Jerry Snitselaar) [2112121] - dmaengine: dmaengine_desc_callback_valid(): Check for `callback_result` (Jerry Snitselaar) [2112121] - dmaengine: Remove redundant initialization of variable err (Jerry Snitselaar) [2112121] - dmaengine: Extend the dma_slave_width for 128 bytes (Jerry Snitselaar) [2112121] - dmaengine: ioat: depends on !UML (Jerry Snitselaar) [2112121] - dmaengine: dw: Simplify DT property parser (Jerry Snitselaar) [2112121] - dmaengine: dw: Convert members to u32 in platform data (Jerry Snitselaar) [2112121] - dmaengine: dw: Remove error message from DT parsing code (Jerry Snitselaar) [2112121] - dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is not yet available (Jerry Snitselaar) [2112121] - dmaengine: hsu: Account transferred bytes (Jerry Snitselaar) [2112121] - dmaengine: Move kdoc description of struct dma_chan_percpu closer to it (Jerry Snitselaar) [2112121] - dmaengine: QCOM_HIDMA_MGMT depends on HAS_IOMEM (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: comment platform_driver_register call (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: remove unused code (Jerry Snitselaar) [2112121] - dmaengine: Fix a double free in dma_async_device_register (Jerry Snitselaar) [2112121] - dmaengine: hsu: disable spurious interrupt (Jerry Snitselaar) [2112121] - dmaengine: Extend the dmaengine_alignment for 128 and 256 bytes (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Use dmaengine_get_dma_device (Jerry Snitselaar) [2112121] - dmaengine: doc: client: Update for dmaengine_get_dma_device() usage (Jerry Snitselaar) [2112121] - dmaengine: Add support for per channel coherency handling (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Add support for optional router configuration callback (Jerry Snitselaar) [2112121] - dmaengine: add peripheral configuration (Jerry Snitselaar) [2112121] - dmaengine: idma64: Switch to use __maybe_unused instead of ifdeffery (Jerry Snitselaar) [2112121] - dmaengine: ioatdma: remove unused function missed during dma_v2 removal (Jerry Snitselaar) [2112121] - dmaengine: Save few bytes and increase readability of dma_request_chan() (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling (Jerry Snitselaar) [2112121] - dmaengine: dw: Don't include unneeded header to platform data header (Jerry Snitselaar) [2112121] - dmaengine: linux/dmaengine.h: drop duplicated word in a comment (Jerry Snitselaar) [2112121] - dmaengine: ioat: Fix some parameter misspelling and provide description for phys_complete (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Fix misspellings/formatting issues in some function headers (Jerry Snitselaar) [2112121] - Documentation/driver-api: dmaengine/provider: drop doubled word (Jerry Snitselaar) [2112121] - dmaengine: Add support for repeating transactions (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: use true,false for bool variable (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Simplify error handling path in hidma_probe (Jerry Snitselaar) [2112121] - dmaengine: Fix misspelling of "Analog Devices" (Jerry Snitselaar) [2112121] - docs: dmaengine: provider.rst: get rid of some warnings (Jerry Snitselaar) [2112121] - dmaengine: doc: fix warnings/issues of client.rst (Jerry Snitselaar) [2112121] - dmaengine: doc: Properly indent metadata title (Jerry Snitselaar) [2112121] - dmaengine: doc: Add sections for per descriptor metadata support (Jerry Snitselaar) [2112121] - dmaengine: Fix Kconfig indentation (Jerry Snitselaar) [2112121] - dmaengine: qcom: hidma_mgmt: Add of_node_put() before goto (Jerry Snitselaar) [2112121] - dmaengine: Remove dev_err() usage after platform_get_irq() (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Remove call to memset after dmam_alloc_coherent (Jerry Snitselaar) [2112121] - Documentation: dmaengine: clean up description of dmatest usage (Jerry Snitselaar) [2112121] - dmaengine: hsu: Revert "set HSU_CH_MTSR to memory width" (Jerry Snitselaar) [2112121] - dmaengine: qcom: hidma: no need to check return value of debugfs_create functions (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: assign channel cookie correctly (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: convert to DEFINE_SHOW_ATTRIBUTE (Jerry Snitselaar) [2112121] - dmaengine: Documentation: Add documentation for multi chan testing (Jerry Snitselaar) [2112121] - dmaengine: hsu: remove dma_slave_config direction usage (Jerry Snitselaar) [2112121] - dmaengine: hsu: Support dmaengine_terminate_sync() (Jerry Snitselaar) [2112121] - scsi: core: Allow the ALUA transitioning state enough time (Tomas Henzl) [2084250] - scsi: core: Return BLK_STS_TRANSPORT for ALUA transitioning (Tomas Henzl) [2084250] - macvlan: enforce a consistent minimal mtu (Davide Caratti) [2134032] - ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header (Davide Caratti) [2134032] - net: ipvtap - add __init/__exit annotations to module init/exit funcs (Davide Caratti) [2134032] - tunnels: do not assume mac header is set in skb_tunnel_check_pmtu() (Guillaume Nault) [2134099] - erspan: do not assume transport header is always set (Guillaume Nault) [2134099] - net: ip_gre: do not report erspan_ver for gre or gretap (Guillaume Nault) [2134099] - selftests: Fix the if conditions of in test_extra_filter() (Hangbin Liu) [2135232] - selftests: forwarding: add shebang for sch_red.sh (Hangbin Liu) [2135232] - selftests: forwarding: fix error message in learning_test (Hangbin Liu) [2135232] - selftests/net: pass ipv6_args to udpgso_bench's IPv6 TCP test (Hangbin Liu) [2135232] - ping: remove pr_err from ping_lookup (Guillaume Nault) [2135424] - ping: fix the dif and sdif check in ping_lookup (Guillaume Nault) [2135424] - ping: fix the sk_bound_dev_if match in ping_lookup (Guillaume Nault) [2135424] - tcp/udp: Call inet6_destroy_sock() in IPv6 sk->sk_destruct(). (Hangbin Liu) [2135259] - udp: Call inet6_destroy_sock() in setsockopt(IPV6_ADDRFORM). (Hangbin Liu) [2135259] - tcp/udp: Fix memory leak in ipv6_renew_options(). (Hangbin Liu) [2135259] - ipv6: sr: fix out-of-bounds read when setting HMAC data. (Hangbin Liu) [2135259] - ipv6: do not use RT_TOS for IPv6 flowlabel (Hangbin Liu) [2135259] - ipv6/sit: fix ipip6_tunnel_get_prl return value (Hangbin Liu) [2135259] - sit: use min (Hangbin Liu) [2135259] - net: ipv6: unexport __init-annotated seg6_hmac_init() (Hangbin Liu) [2135259] - sit: do not call ipip6_dev_free() from sit_init_net() (Hangbin Liu) [2135259] - block: avoid sign extend problem with default queue flags mask (Nico Pache) [2131929] - mm/hwpoison: do not lock page again when me_huge_page() successfully recovers (Aristeu Rozanski) [2110292] - crypto: ccp - Remove the unneeded result variable (Vladis Dronov) [2130195] - crypto: ccp - Release dma channels before dmaengine unrgister (Vladis Dronov) [2130195] - crypto: ccp - Fail the PSP initialization when writing psp data file failed (Vladis Dronov) [2130195] - crypto: ccp - Initialize PSP when reading psp data file failed (Vladis Dronov) [2130195] - crypto: ccp - Add a quirk to firmware update (Vladis Dronov) [2130195] - crypto: ccp - Add support for new CCP/PSP device ID (Vladis Dronov) [2130195] - crypto: ccp - During shutdown, check SEV data pointer before using (Vladis Dronov) [2130195] - crypto: ccp - Fix device IRQ counting by using platform_irq_count() (Vladis Dronov) [2130195] - crypto: ccp - fix typo in comment (Vladis Dronov) [2130195] - crypto: ccp - Use kzalloc for sev ioctl interfaces to prevent kernel memory leak (Vladis Dronov) [2130195] - crypto: ccp - Fix the INIT_EX data file open failure (Vladis Dronov) [2130195] - crypto: ccp - Log when resetting PSP SEV state (Vladis Dronov) [2130195] - crypto: ccp - When TSME and SME both detected notify user (Vladis Dronov) [2130195] - crypto: ccp - Allow PSP driver to load without SEV/TEE support (Vladis Dronov) [2130195] - crypto: ccp - Export PSP security bits to userspace (Vladis Dronov) [2130195] - crypto: ccp - cache capability into psp device (Vladis Dronov) [2130195] - PCI: Add support for dev_groups to struct pci_driver (Vladis Dronov) [2130195] - ACPI: processor idle: Practically limit "Dummy wait" workaround to old Intel systems (Wei Huang) [2130653] - blk-mq: fix io hung due to missing commit_rqs (Ming Lei) [2130028] - block: schedule queue restart after BLK_STS_ZONE_RESOURCE (Ming Lei) [2130028] - blk-mq: call commit_rqs while list empty but error happen (Ming Lei) [2130028] - null_blk: fix ida error handling in null_add_dev() (Ming Lei) [2130028] - blktrace: Trace remapped requests correctly (Ming Lei) [2130028] - virtio_blk: fix the discard_granularity and discard_alignment queue limits (Ming Lei) [2130028] - block: fix bio_clone_blkg_association() to associate with proper blkcg_gq (Ming Lei) [2130028] - blk-mq: do not update io_ticks with passthrough requests (Ming Lei) [2130028] - blk-mq: don't touch ->tagset in blk_mq_get_sq_hctx (Ming Lei) [2130028] - ipmi:ipmb: Fix refcount leak in ipmi_ipmb_probe (Tony Camuso) [2130238] - ipmi: remove unnecessary type castings (Tony Camuso) [2130238] - ipmi: Make two logs unique (Tony Camuso) [2130238] - ipmi:si: Convert pr_debug() to dev_dbg() (Tony Camuso) [2130238] - ipmi: Convert pr_debug() to dev_dbg() (Tony Camuso) [2130238] - ipmi: Fix pr_fmt to avoid compilation issues (Tony Camuso) [2130238] - ipmi: Add an intializer for ipmi_recv_msg struct (Tony Camuso) [2130238] - ipmi: Add an intializer for ipmi_smi_msg struct (Tony Camuso) [2130238] - ipmi:ssif: Check for NULL msg when handling events and messages (Tony Camuso) [2130238] - ipmi: use simple i2c probe function (Tony Camuso) [2130238] - ipmi: Add a sysfs count of total outstanding messages for an interface (Tony Camuso) [2130238] - ipmi: Add a sysfs interface to view the number of users (Tony Camuso) [2130238] - ipmi: Limit the number of message a user may have outstanding (Tony Camuso) [2130238] - ipmi: Add a limit on the number of users that may use IPMI (Tony Camuso) [2130238] - ipmi:ipmi_ipmb: Fix null-ptr-deref in ipmi_unregister_smi() (Tony Camuso) [2130238] - ipmi: When handling send message responses, don't process the message (Tony Camuso) [2130238] - ipmi: fix IPMI_SMI_MSG_TYPE_IPMB_DIRECT response length checking (Tony Camuso) [2130238] - ipmi: fix oob access due to uninit smi_msg type (Tony Camuso) [2130238] - ipmi: Make kABI adjustments (Tony Camuso) [2130238] - ipmi: Add support for IPMB direct messages (Tony Camuso) [2130238] - ice: Fix crash by keep old cfg when update TCs more than queues (Petr Oros) [2129902] - ice: Fix tunnel checksum offload with fragmented traffic (Petr Oros) [2129902] - ice: handle E822 generic device ID in PLDM header (Petr Oros) [2129902] - ice: ethtool: Prohibit improper channel config for DCB (Petr Oros) [2129902] - ice: ethtool: advertise 1000M speeds properly (Petr Oros) [2129902] - ice: Fix switchdev rules book keeping (Petr Oros) [2129902] - ice: fix access-beyond-end in the switch code (Petr Oros) [2129902] - eth: ice: silence the GCC 12 array-bounds warning (Petr Oros) [2129902] - ice: Expose RSS indirection tables for queue groups via ethtool (Petr Oros) [2129902] - Revert "ice: Hide bus-info in ethtool for PRs in switchdev mode" (Petr Oros) [2129902] - ice: remove period on argument description in ice_for_each_vf (Petr Oros) [2129902] - ice: add a function comment for ice_cfg_mac_antispoof (Petr Oros) [2129902] - ice: fix wording in comment for ice_reset_vf (Petr Oros) [2129902] - ice: remove return value comment for ice_reset_all_vfs (Petr Oros) [2129902] - ice: always check VF VSI pointer values (Petr Oros) [2129902] - ice: add newline to dev_dbg in ice_vf_fdir_dump_info (Petr Oros) [2129902] - ice: get switch id on switchdev devices (Petr Oros) [2129902] - ice: return ENOSPC when exceeding ICE_MAX_CHAIN_WORDS (Petr Oros) [2129902] - ice: introduce common helper for retrieving VSI by vsi_num (Petr Oros) [2129902] - ice: use min_t() to make code cleaner in ice_gnss (Petr Oros) [2129902] - ice: Add mpls+tso support (Petr Oros) [2129902] - ice: switch: convert packet template match code to rodata (Petr Oros) [2129902] - ice: switch: use convenience macros to declare dummy pkt templates (Petr Oros) [2129902] - ice: switch: use a struct to pass packet template params (Petr Oros) [2129902] - ice: switch: unobscurify bitops loop in ice_fill_adv_dummy_packet() (Petr Oros) [2129902] - ice: switch: add and use u16[] aliases to ice_adv_lkup_elem::{h, m}_u (Petr Oros) [2129902] - ice: Support GTP-U and GTP-C offload in switchdev (Petr Oros) [2129902] - ice: Remove useless DMA-32 fallback configuration (Petr Oros) [2129902] - ice: switch to napi_build_skb() (Petr Oros) [2129902] - nbd: fix race between nbd_alloc_config() and module removal (Ming Lei) [2127601] - nbd: call genl_unregister_family() first in nbd_cleanup() (Ming Lei) [2127601] - kselftests: memcg: speed up the memory.high test (Waiman Long) [1839057] - tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null pointer dereference (Waiman Long) [1839057] - kselftest/cgroup: fix incorrect test_core skip (Waiman Long) [1839057] - kselftest/cgroup: fix unexpected testing failure on test_core (Waiman Long) [1839057] - selftests: cgroup: fix cleanup path in test_memcg_subtree_control() (Waiman Long) [1839057] - cgroup: fix an error handling path in alloc_pagecache_max_30M() (Waiman Long) [1839057] - selftests: memcg: expect no low events in unprotected sibling (Waiman Long) [1839057] - selftests: memcg: fix compilation (Waiman Long) [1839057] - kseltest/cgroup: Make test_stress.sh work if run interactively (Waiman Long) [1839057] - cgroup: fix racy check in alloc_pagecache_max_30M() helper function (Waiman Long) [1839057] - cgroup: remove racy check in test_memcg_sock() (Waiman Long) [1839057] - cgroup: account for memory_localevents in test_memcg_oom_group_leaf_events() (Waiman Long) [1839057] - cgroup: account for memory_recursiveprot in test_memcg_low() (Waiman Long) [1839057] - cgroups: refactor children cgroups in memcg tests (Waiman Long) [1839057] - kselftest/cgroup: fix test_stress.sh to use OUTPUT dir (Waiman Long) [1839057] - selftests: cgroup: add a selftest for memory.reclaim (Waiman Long) [1839057] - selftests: cgroup: fix alloc_anon_noexit() instantly freeing memory (Waiman Long) [1839057] - selftests: cgroup: return -errno from cg_read()/cg_write() on failure (Waiman Long) [1839057] - memcg: introduce per-memcg reclaim interface (Waiman Long) [1839057] - kselftests: memcg: update the oom group leaf events test (Waiman Long) [1839057] - mm/memcontrol: return 1 from cgroup.memory __setup() handler (Waiman Long) [1839057] - memcg: synchronously enforce memory.high for large overcharges (Waiman Long) [1839057] - selftests: memcg: test high limit for single entry allocation (Waiman Long) [1839057] - memcg: unify force charging conditions (Waiman Long) [1839057] - memcg: refactor mem_cgroup_oom (Waiman Long) [1839057] - memcg: prohibit unconditional exceeding the limit of dying tasks (Waiman Long) [1839057] - mm, oom: do not trigger out_of_memory from the #PF (Waiman Long) [1839057] - mm, oom: pagefault_out_of_memory: don't force global OOM for dying tasks (Waiman Long) [1839057] - mm: memcontrol: fix root_mem_cgroup charging (Waiman Long) [1839057] - tests/cgroup: move cg_wait_for(), cg_prepare_for_wait() (Waiman Long) [1839057] - mm: memcontrol: don't count limit-setting reclaim as memory pressure (Waiman Long) [1839057] - selftests: Uninitialized variable in test_cgcore_proc_migration() (Waiman Long) [1839057] - kselftests: cgroup: Avoid the reuse of fd after it is deallocated (Waiman Long) [1839057] - selftests: cgroup: Run test_core under interfering stress (Waiman Long) [1839057] - selftests: cgroup: Add task migration tests (Waiman Long) [1839057] - selftests: cgroup: Simplify task self migration (Waiman Long) [1839057] - cgroup: kselftest: relax fs_spec checks (Waiman Long) [1839057] - kselftests: cgroup: remove duplicated include from test_freezer.c (Waiman Long) [1839057] - kselftest/cgroup: fix unexpected testing failure on test_memcontrol (Waiman Long) [1839057] - kselftests: cgroup: add freezer controller self-tests (Waiman Long) [1839057] - Add tests for memory.oom.group (Waiman Long) [1839057] - Fix cg_read_strcmp() (Waiman Long) [1839057] - cgroup: kselftests: add test_core to .gitignore (Waiman Long) [1839057] - selftests: cgroup: add gitignore file (Waiman Long) [1839057] - Add cgroup core selftests (Waiman Long) [1839057] - devdax: Fix soft-reservation memory description (Mark Langsdorf) [2122316] - arm64: cacheinfo: Fix incorrect assignment of signed error value to unsigned fw_level (Mark Langsdorf) [2122316] - ACPI: property: Remove default association from integer maximum values (Mark Langsdorf) [2122316] - ACPI: property: Ignore already existing data node tags (Mark Langsdorf) [2122316] - ACPI: property: Fix type detection of unified integer reading functions (Mark Langsdorf) [2122316] - ACPI: processor: Remove freq Qos request for all CPUs (Mark Langsdorf) [2122316] - ACPI: property: Fix error handling in acpi_init_properties() (Mark Langsdorf) [2122316] - ACPI/IORT: Fix build error implicit-function-declaration (Mark Langsdorf) [2122316] - ACPI/PCI: Remove useless NULL pointer checks (Mark Langsdorf) [2122316] - ACPI: property: Read buffer properties as integers (Mark Langsdorf) [2122316] - ACPI: property: Add support for parsing buffer property UUID (Mark Langsdorf) [2122316] - ACPI: property: Unify integer value reading functions (Mark Langsdorf) [2122316] - ACPI: property: Switch node property referencing from ifs to a switch (Mark Langsdorf) [2122316] - ACPI: property: Move property ref argument parsing into a new function (Mark Langsdorf) [2122316] - ACPI: property: Use acpi_object_type consistently in property ref parsing (Mark Langsdorf) [2122316] - ACPI: property: Tie data nodes to acpi handles (Mark Langsdorf) [2122316] - ACPI: property: Return type of acpi_add_nondev_subnodes() should be bool (Mark Langsdorf) [2122316] - ACPI: CPPC: Do not prevent CPPC from working in the future (Mark Langsdorf) [2122316] - ACPI: PM: x86: Print messages regarding LPS0 idle support (Mark Langsdorf) [2122316] - ACPI: PPTT: Leave the table mapped for the runtime usage (Mark Langsdorf) [2122316] - ACPI: resource: skip IRQ override on AMD Zen platforms (Mark Langsdorf) [2122316] - ACPI: irq: Allow acpi_gsi_to_irq() to have an arch-specific fallback (Mark Langsdorf) [2122316] - APCI: irq: Add support for multiple GSI domains (Mark Langsdorf) [2122316] - irqchip/gic: Drop support for secondary GIC in non-DT systems (Mark Langsdorf) [2122316] - ACPI: video: Use native backlight on Dell Inspiron N4010 (Mark Langsdorf) [2122316] - ACPI: PM: s2idle: Use LPS0 idle if ACPI_FADT_LOW_POWER_S0 is unset (Mark Langsdorf) [2122316] - Revert "[acpi] ACPI / PM: LPIT: Register sysfs attributes based on FADT" (Mark Langsdorf) [2122316] - ACPI: utils: Add api to read _SUB from ACPI (Mark Langsdorf) [2122316] - ACPI: video: Shortening quirk list by identifying Clevo by board_name only (Mark Langsdorf) [2122316] - ACPI: video: Force backlight native for some TongFang devices (Mark Langsdorf) [2122316] - PCI/ACPI: Guard ARM64-specific mcfg_quirks (Mark Langsdorf) [2122316] - ACPI/IORT: Add a helper to retrieve RMR info directly (Mark Langsdorf) [2122316] - ACPI/IORT: Add support to retrieve IORT RMR reserved regions (Mark Langsdorf) [2122316] - ACPI/IORT: Provide a generic helper to retrieve reserve regions (Mark Langsdorf) [2122316] - ACPI/IORT: Make iort_iommu_msi_get_resv_regions() return void (Mark Langsdorf) [2122316] - iommu: Introduce a callback to struct iommu_resv_region (Mark Langsdorf) [2122316] - ACPI: PM: s2idle: Add support for upcoming AMD uPEP HID AMDI008 (Mark Langsdorf) [2122316] - ACPI: PPTT: Use table offset as fw_token instead of virtual address (Mark Langsdorf) [2122316] - ACPI: Move PRM config option under the main ACPI config (Mark Langsdorf) [2122316] - ACPI: Enable Platform Runtime Mechanism(PRM) support on ARM64 (Mark Langsdorf) [2122316] - efi: Simplify arch_efi_call_virt() macro (Mark Langsdorf) [2122316] - efi/x86: Avoid redundant cast of EFI firmware service pointer (Mark Langsdorf) [2122316] - efi/libstub: Annotate firmware routines as __efiapi (Mark Langsdorf) [2122316] - ACPI: PRM: Change handler_addr type to void pointer (Mark Langsdorf) [2122316] - ACPI: bus: Drop driver member of struct acpi_device (Mark Langsdorf) [2122316] - ACPI: bus: Drop redundant check in acpi_device_remove() (Mark Langsdorf) [2122316] - ACPI: APEI: Fix _EINJ vs EFI_MEMORY_SP (Mark Langsdorf) [2122316] - ACPI: LPSS: Fix missing check in register_device_clock() (Mark Langsdorf) [2122316] - ACPI: APEI: Better fix to avoid spamming the console with old error logs (Mark Langsdorf) [2122316] - ACPI: PM: save NVS memory for Lenovo G40-45 (Mark Langsdorf) [2122316] - ACPI: EC: Drop unused ident initializers from dmi_system_id tables (Mark Langsdorf) [2122316] - ACPI: EC: Re-use boot_ec when possible even when EC_FLAGS_TRUST_DSDT_GPE is set (Mark Langsdorf) [2122316] - ACPI: EC: Drop the EC_FLAGS_IGNORE_DSDT_GPE quirk (Mark Langsdorf) [2122316] - ACPI: EC: Remove duplicate ThinkPad X1 Carbon 6th entry from DMI quirks (Mark Langsdorf) [2122316] - ACPI: processor: Drop leftover acpi_processor_get_limit_info() declaration (Mark Langsdorf) [2122316] - ACPI: processor: Split out thermal initialization from ACPI PSS (Mark Langsdorf) [2122316] - redhat/configs: move CONFIG_ACPI_VIDEO to common/generic (Mark Langsdorf) [2122316] - ACPI: video: Drop X86 dependency from Kconfig (Mark Langsdorf) [2122316] - ACPI: video: Fix acpi_video_handles_brightness_key_presses() (Mark Langsdorf) [2122316] - ACPI: video: Change how we determine if brightness key-presses are handled (Mark Langsdorf) [2122316] - ACPI / MMC: PM: Unify fixing up device power (Mark Langsdorf) [2122316] - mmc: sdhci-acpi: Use the new soc_intel_is_byt() helper (Mark Langsdorf) [2122316] - mmc: sdhci-acpi: Remove special handling for GPD win/pocket devices (Mark Langsdorf) [2122316] - ACPI: scan: Walk ACPI device's children using driver core (Mark Langsdorf) [2122316] - ACPI: bus: Introduce acpi_dev_for_each_child_reverse() (Mark Langsdorf) [2122316] - ACPI: video: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: property: Use acpi_dev_for_each_child() for child lookup (Mark Langsdorf) [2122316] - ACPI: container: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: bus: Export acpi_dev_for_each_child() to modules (Mark Langsdorf) [2122316] - ACPI: glue: Introduce acpi_find_child_by_adr() (Mark Langsdorf) [2122316] - ACPI: glue: Introduce acpi_dev_has_children() (Mark Langsdorf) [2122316] - ACPI: glue: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: APEI: Fix double word in a comment (Mark Langsdorf) [2122316] - ACPI: processor/idle: Annotate more functions to live in cpuidle section (Mark Langsdorf) [2122316] - ACPI: DPTF: Support Meteor Lake (Mark Langsdorf) [2122316] - ACPI: CPPC: fix typo in comment (Mark Langsdorf) [2122316] - ACPI: video: improve PM notifer callback (Mark Langsdorf) [2122316] - ACPI: utils: include UUID in _DSM evaluation warning (Mark Langsdorf) [2122316] - cpufreq: CPPC: Enable fast_switch (Mark Langsdorf) [2122316] - acpi/nfit: rely on mce->misc to determine poison granularity (Mark Langsdorf) [2122316] - ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default (Mark Langsdorf) [2122316] - ACPI: clean up white space in a few places for consistency (Mark Langsdorf) [2122316] - ACPI: glue: Rearrange find_child_checks() (Mark Langsdorf) [2122316] - ACPI: DPTF: Add support for high frequency impedance notification (Mark Langsdorf) [2122316] - ACPI: processor: idle: Expose max_cstate/nocst/bm_check_disable read-only in sysfs (Mark Langsdorf) [2122316] - ACPI: battery: Make "not-charging" the default on no charging or full info (Mark Langsdorf) [2122316] - PCI/ACPI: negotiate CXL _OSC (Mark Langsdorf) [2122316] - PCI/ACPI: Prefer CXL _OSC instead of PCIe _OSC for CXL host bridges (Mark Langsdorf) [2122316] - PCI/ACPI: add a helper for retrieving _OSC Control DWORDs (Mark Langsdorf) [2122316] - ACPI: bus: Avoid non-ACPI device objects in walks over children (Mark Langsdorf) [2122316] - ACPI: DPTF: Correct description of INT3407 / INT3532 attributes (Mark Langsdorf) [2122316] - ACPI: BGRT: use static for BGRT_SHOW kobj_attribute defines (Mark Langsdorf) [2122316] - ACPI, APEI, EINJ: Refuse to inject into the zero page (Mark Langsdorf) [2122316] - ACPI: PM: Always print final debug message in acpi_device_set_power() (Mark Langsdorf) [2122316] - ACPI: SPCR: Add support for NVIDIA 16550-compatible port subtype (Mark Langsdorf) [2122316] - ACPI: APEI: Fix missing ERST record id (Mark Langsdorf) [2122316] - ACPICA: Update version to 20220331 (Mark Langsdorf) [2122316] - ACPICA: IORT: Updates for revision E.d (Mark Langsdorf) [2122316] - ACPICA: iASL/MADT: Add OEM-defined subtable (Mark Langsdorf) [2122316] - ACPICA: Add support for ARM Performance Monitoring Unit Table. (Mark Langsdorf) [2122316] - ACPICA: Headers: Replace zero-length array with flexible-array member (Mark Langsdorf) [2122316] - ACPICA: Removed some tabs and // comments (Mark Langsdorf) [2122316] - ACPICA: Update copyright notices to the year 2022 (Mark Langsdorf) [2122316] - ACPICA: Clean up double word in comment (Mark Langsdorf) [2122316] - ACPICA: Add new ACPI 6.4 semantics for LoadTable() operator (Mark Langsdorf) [2122316] - ACPICA: Add new ACPI 6.4 semantics to the Load() operator (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Rename linux specific strucures to device_info (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Fix parsing undocumented bytes at the end of Endpoint Descriptor (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Treat Terminator as specific_config (Mark Langsdorf) [2122316] - ACPICA: Add the subtable CFMWS to the CEDT table (Mark Langsdorf) [2122316] - ACPICA: Add support for the Windows 11 _OSI string (Mark Langsdorf) [2122316] - ACPI: sysfs: Fix BERT error region memory mapping (Mark Langsdorf) [2122316] - ACPI: property: Release subnode properties with data nodes (Mark Langsdorf) [2122316] - PCI: ACPI: PM: Power up devices in D3cold before scanning them (Mark Langsdorf) [2122316] - ACPI: PM: Introduce acpi_dev_power_up_children_with_adr() (Mark Langsdorf) [2122316] - ACPI: bus: Introduce acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: PM: Unify debug messages in acpi_device_set_power() (Mark Langsdorf) [2122316] - ACPI: PM: Convert debug message in acpi_device_get_power() (Mark Langsdorf) [2122316] - device property: Add irq_get to fwnode operation (Mark Langsdorf) [2122316] - device property: Add iomap to fwnode operations (Mark Langsdorf) [2122316] - ACPI: property: Move acpi_fwnode_device_get_match_data() up (Mark Langsdorf) [2122316] - device property: Convert device_{dma_supported,get_dma_attr} to fwnode (Mark Langsdorf) [2122316] - ACPI: Add perf low power callback (Mark Langsdorf) [2122316] - s390: fix double free of GS and RI CBs on fork() failure (Brian Foster) [1944540] - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue (other cases) (Jose Ignacio Tornos Martinez) [2086480] - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue (Jose Ignacio Tornos Martinez) [2086480]- crypto: ecdh - disallow plain "ecdh" usage in FIPS mode (Vladis Dronov) [2129392] - crypto: dh - disallow plain "dh" usage in FIPS mode (Vladis Dronov) [2129392] - x86/cpu: Add new Raptor Lake CPU model number (Prarit Bhargava) [2120361] - mm, oom: fix missing tlb_finish_mmu() in __oom_reap_task_mm(). (Waiman Long) [2130954] - net: atlantic: remove aq_nic_deinit() when resume (Íñigo Huguet) [2130839] - net: atlantic: remove deep parameter on suspend/resume functions (Íñigo Huguet) [2130839] - efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared (Lenny Szubowicz) [2128172] - bonding: 3ad: make ad_ticks_per_sec a const (Jonathan Toppins) [2020773] - bonding: 802.3ad: fix no transmission of LACPDUs (Jonathan Toppins) [2020773] - redhat: workaround CKI cross compilation for scripts (Jan Stancek) [2123399] - nohz/full, sched/rt: Fix missed tick-reenabling bug in dequeue_task_rt() (Phil Auld) [2107238] - gfs2: Make sure FITRIM minlen is rounded up to fs block size (Andrew Price) [2118256] - ceph: don't truncate file in atomic_open (Xiubo Li) [2120924] - of: address: Work around missing device_type property in pcie nodes (Jerry Snitselaar) [2118732] - dma-mapping: introduce DMA range map, supplanting dma_pfn_offset (Jerry Snitselaar) [2118732] - of/address: check for invalid range.cpu_addr (Jerry Snitselaar) [2118732] - of: address: Fix parser address/size cells initialization (Jerry Snitselaar) [2118732] - of_address: Guard of_bus_pci_get_flags with CONFIG_PCI (Jerry Snitselaar) [2118732] - of_address: Add bus type match for pci ranges parser (Jerry Snitselaar) [2118732] - of/address: Support multiple 'dma-ranges' entries (Jerry Snitselaar) [2118732] - of/address: use range parser for of_dma_get_range (Jerry Snitselaar) [2118732] - of/address: Rework of_pci_range parsing for non-PCI buses (Jerry Snitselaar) [2118732] - of: Drop struct of_pci_range.pci_space field (Jerry Snitselaar) [2118732] - of/address: Move range parser code out of CONFIG_PCI (Jerry Snitselaar) [2118732] - of: Make of_dma_get_range() work on bus nodes (Jerry Snitselaar) [2118732] - Revert "arm64: dts: juno: add dma-ranges property" (Jerry Snitselaar) [2118732] - of/address: Fix of_pci_range_parser_one translation of DMA addresses (Jerry Snitselaar) [2118732] - of/address: Translate 'dma-ranges' for parent nodes missing 'dma-ranges' (Jerry Snitselaar) [2118732] - of: address: Follow DMA parent for "dma-coherent" (Jerry Snitselaar) [2118732] - of: Factor out #{addr,size}-cells parsing (Jerry Snitselaar) [2118732] - of/address: Introduce of_get_next_dma_parent() helper (Jerry Snitselaar) [2118732] - of: address: Report of_dma_get_range() errors meaningfully (Jerry Snitselaar) [2118732] - of: address: Add support for the parent DMA bus (Jerry Snitselaar) [2118732] - of: address: Retrieve a parent through a callback in __of_translate_address (Jerry Snitselaar) [2118732] - of: reserved_mem: fix reserve memory leak (Jerry Snitselaar) [2118732] - of: Use device_type helpers to access the node type (Jerry Snitselaar) [2118732] - of: make PowerMac cache node search conditional on CONFIG_PPC_PMAC (Jerry Snitselaar) [2118732]- crypto: qat - add limit to linked list parsing (Vladis Dronov) [2129897] - crypto: qat - use reference to structure in dma_map_single() (Vladis Dronov) [2129897] - Revert "crypto: qat - reduce size of mapped region" (Vladis Dronov) [2129897] - crypto: qat - fix DMA transfer direction (Vladis Dronov) [2129897] - crypto: qat - fix default value of WDT timer (Vladis Dronov) [2129897] - crypto: drivers - move from strlcpy with unused retval to strscpy (Vladis Dronov) [2129897] - crypto: qat - add check to validate firmware images (Vladis Dronov) [2129897] - Documentation: qat: rewrite description (Vladis Dronov) [2129897] - Documentation: qat: Use code block for qat sysfs example (Vladis Dronov) [2129897] - KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled (Dr. David Alan Gilbert) [2079311] - KVM: x86: Always enable legacy FP/SSE in allowed user XFEATURES (Dr. David Alan Gilbert) [2079311] - KVM: x86: Reinstate kvm_vcpu_arch.guest_supported_xcr0 (Dr. David Alan Gilbert) [2079311] - bonding: fix NULL deref in bond_rr_gen_slave_id (Jonathan Toppins) [2051778] - tty: use new tty_insert_flip_string_and_push_buffer() in pty_write() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: extract tty_flip_buffer_commit() from tty_flip_buffer_push() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: drop tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: the rest, stop using tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: drivers/tty/, stop using tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - vt: keyboard, use tty_insert_flip_string in puts_queue (Rafael Aquini) [2078869] {CVE-2022-1462} - vt: use tty_insert_flip_string in respond_string (Rafael Aquini) [2078869] {CVE-2022-1462}- intel_th: pci: Add Raptor Lake-S CPU support (Michael Petlan) [2040035] - intel_th: pci: Add Raptor Lake-S PCH support (Michael Petlan) [2040035] - virtio-net: support XDP when not more queues (Eugenio Pérez) [2122225] - virtio_net: Don't process redirected XDP frames when XDP is disabled (Eugenio Pérez) [2122225] - virtio_net: Fix not restoring real_num_rx_queues (Eugenio Pérez) [2122225] - x86,config: Enable straight-line-speculation fix (Wander Lairson Costa) [2062175] {CVE-2021-26341} - x86/alternative: Relax text_poke_bp() constraint (Wander Lairson Costa) [2062175] {CVE-2021-26341} - perf/x86: Add support for perf text poke event for text_poke_bp_batch() callers (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Add straight-line-speculation validation (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Support conditional retpolines (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Refactor sibling call detection logic (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Change dead_end_function() to return boolean (Wander Lairson Costa) [2062175] {CVE-2021-26341} - x86/lib/atomic64_386_32: Rename things (Wander Lairson Costa) [2062175] {CVE-2021-26341} - KVM: arm64: Fix debug architecture version (Gavin Shan) [2123587] - thunderbolt: Add support for Intel Raptor Lake (Torez Smith) [2040037] - iommu/vt-d: Fix compile error with CONFIG_PCI_ATS not set (Myron Stowe) [2118428 2122515 2127028] - iommu/vt-d: Cure VF irqdomain hickup (Myron Stowe) [2118428 2122515 2127028] - x86/pci: Set default irq domain in pcibios_add_device() (Myron Stowe) [2118428 2122515 2127028] - iommm/amd: Store irq domain in struct device (Myron Stowe) [2118428 2122515 2127028] - iommm/vt-d: Store irq domain in struct device (Myron Stowe) [2118428 2122515 2127028] - PCI/MSI: Provide pci_dev_has_special_msi_domain() helper (Myron Stowe) [2118428 2122515 2127028] - x86/msi: Consolidate MSI allocation (Myron Stowe) [2118428 2122515 2127028] - PCI/MSI: Rework pci_msi_domain_calc_hwirq() (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Consolidate UV domain allocation (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Consolidate DMAR irq allocation (Myron Stowe) [2118428 2122515 2127028] - x86_ioapic_Consolidate_IOAPIC_allocation (Myron Stowe) [2118428 2122515 2127028] - x86/msi: Consolidate HPET allocation (Myron Stowe) [2118428 2122515 2127028] - iommu/irq_remapping: Consolidate irq domain lookup (Myron Stowe) [2118428 2122515 2127028] - iommu/amd: Consolidate irq domain getter (Myron Stowe) [2118428 2122515 2127028] - iommu/vt-d: Consolidate irq domain getter (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Add allocation type for parent domain retrieval (Myron Stowe) [2118428 2122515 2127028] - irqdomain: Export irq_domain_update_bus_token (Myron Stowe) [2118428 2122515 2127028] - perf/x86/intel: Update the FRONTEND MSR mask on Sapphire Rapids (Michael Petlan) [2125349] - perf/x86/intel/uncore: Fix invalid unit check (Michael Petlan) [2125349]- KVM: s390: pv: don't present the ecall interrupt twice (Tobias Huschle) [2125236] - s390/mm: do not trigger write fault when vma does not allow VM_WRITE (Tobias Huschle) [2125218] - PCI: Print a debug message on PCI device release (Tobias Huschle) [2125216] - s390/pci: fix leak of PCI device structure (Tobias Huschle) [2125216] - s390/pci: refactor zpci_create_device() (Tobias Huschle) [2125216] - s390/pci: remove superfluous zdev->zbus check (Tobias Huschle) [2125216] - x86/boot/64: Add missing fixup_pointer() for next_early_pgt access (Rafael Aquini) [2082806] - x86/boot/64: Fix crash if kernel image crosses page table boundary (Rafael Aquini) [2082806] - mm/slab_common: fix possible double free of kmem_cache (Waiman Long) [2093781] - mm/slab_common: Deleting kobject in kmem_cache_destroy() without holding slab_mutex/cpu_hotplug_lock (Waiman Long) [2093781] - mm/slab_common: use WARN() if cache still has objects on destroy (Waiman Long) [2093781] - slab: use __func__ to trace function name (Waiman Long) [2093781] - s390/hugetlb: fix prepare_hugepage_range() check for 2 GB hugepages (Tobias Huschle) [2125215] - platform/x86: intel/pmc: Add Alder Lake N support to PMC core driver (Prarit Bhargava) [2072654] - crash_core: Increase crashkernel=auto size for x86_64, s390 and arm64 (Lichen Liu) [2122874] - virtio-net: fix use-after-free in skb_gro_receive (Cindy Lu) [2069047] - virtio-net: fix use-after-free in page_to_skb() (Cindy Lu) [2069047] - virtio-net: restrict build_skb() use to some arches (Cindy Lu) [2069047] - virtio-net: page_to_skb() use build_skb when there's sufficient tailroom (Cindy Lu) [2069047] - sched/fair: Consider CPU affinity when allowing NUMA imbalance in find_idlest_group() (Phil Auld) [2110020] - sched/numa: Adjust imb_numa_nr to a better approximation of memory channels (Phil Auld) [2110020] - sched/numa: Apply imbalance limitations consistently (Phil Auld) [2110020] - sched/numa: Do not swap tasks between nodes when spare capacity is available (Phil Auld) [2110020] - sched/numa: Initialise numa_migrate_retry (Phil Auld) [2110020] - cpufreq: intel_pstate: Handle no_turbo in frequency invariance (Phil Auld) [2100594] - sched/fair: Introduce SIS_UTIL to search idle CPU based on sum of util_avg (Phil Auld) [2100594] - i2c: piix4: Fix a memory leak in the EFCH MMIO support (Sudheesh Mavila) [2105160] - assoc_array: Fix BUG_ON during garbage collect (Dave Wysochanski) [1920523] - wait: Fix __wait_event_hrtimeout for RT/DL tasks (Derek Barbosa) [2125233]- raid1: ensure write behind bio has less than BIO_MAX_VECS sectors (Nigel Croxon) [2116209] - ceph: fix statfs for subdir mounts (Xiubo Li) [2120943] - ceph: try to queue a writeback if revoking fails (Xiubo Li) [2120940] - ceph: update the auth cap when the async create req is forwarded (Xiubo Li) [2120932] - ceph: make change_auth_cap_ses a global symbol (Xiubo Li) [2120932] - fs/dcache: export d_same_name() helper (Xiubo Li) [2120932] - ceph: wait for the first reply of inflight async unlink (Xiubo Li) [2120932] - redhat: Enable KASAN_VMALLOC (Nico Pache) [2108620] - arm64: select KASAN_VMALLOC for SW/HW_TAGS modes (Nico Pache) [2108620] - x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access (Nico Pache) [2108620] - mm: defer kmemleak object creation of module_alloc() (Nico Pache) [2108620] - arm64: kaslr: keep modules inside module region when KASAN is enabled (Nico Pache) [2108620] - kasan: arm64: fix pcpu_page_first_chunk crash with KASAN_VMALLOC (Nico Pache) [2108620] - arm64: Kconfig: select KASAN_VMALLOC if KANSAN_GENERIC is enabled (Nico Pache) [2108620] - arm64: kaslr: support randomized module area with KASAN_VMALLOC (Nico Pache) [2108620] - arm64: Kconfig: support CONFIG_KASAN_VMALLOC (Nico Pache) [2108620] - arm64: kasan: abstract _text and _end to KERNEL_START/END (Nico Pache) [2108620] - arm64: kasan: don't populate vmalloc area for CONFIG_KASAN_VMALLOC (Nico Pache) [2108620] - x86/kasan: support KASAN_VMALLOC (Nico Pache) [2108620] - ath9k: htc: clean up statistics macros (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - ath9k: hif_usb: simplify if-if to if-else (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - ath9k: fix use-after-free in ath9k_hif_usb_rx_cb (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - igmp: Add ip_mc_list lock in ip_check_mc_rcu (Hangbin Liu) [2114946] {CVE-2022-20141} - scsi: zfcp: Fix missing auto port scan and thus missing target ports (Tobias Huschle) [2121089] - vfio/type1: Unpin zero pages (Alex Williamson) [2123015]- iommu/vt-d: Make DMAR_UNITS_SUPPORTED default 1024 (Jerry Snitselaar) [2120412] - Revert "iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting" (Jerry Snitselaar) [2120412] - ptrace: Check PTRACE_O_SUSPEND_SECCOMP permission on PTRACE_SEIZE (Oleg Nesterov) [2121269] {CVE-2022-30594} - redhat: remove unused STAMP variable from genspec.sh (Herton R. Krzesinski) - internal: Update RHEL_MINOR for the start of RHEL-8.8 development (Lucas Zampieri)- EDAC/amd64: Add new register offset support and related changes (Aristeu Rozanski) [2048792] - EDAC/amd64: Set memory type per DIMM (Aristeu Rozanski) [2048792] - Revert "ixgbevf: Mailbox improvements" (Ken Cox) [2120545] - Revert "ixgbevf: Add support for new mailbox communication between PF and VF" (Ken Cox) [2120545] - drm/amdgpu: Only disable prefer_shadow on hawaii (Lyude Paul) [2118755]- redhat: configs: add CONFIG_SERIAL_MULTI_INSTANTIATE=m for x86_64 (Jaroslav Kysela) [2005073] - ACPI: scan: Add CLSA0101 Laptop Support (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Add CLSA0101 Laptop (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Sort ACPI IDs by HID (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Get rid of redundant 'else' (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Use while (i--) pattern to clean up (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Improve dev_err_probe() messaging (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Drop duplicate check (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Improve autodetection (Jaroslav Kysela) [2005073] - ACPI / scan: Create platform device for CS35L41 (Jaroslav Kysela) [2005073] - ACPI: scan: Create platform device for BCM4752 and LNV4752 ACPI nodes (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Add SPI support (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Reorganize I2C functions (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Rename it for a generic serial driver name (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use the new i2c_acpi_client_count() helper (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use device_get_match_data() to get driver data (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Simplify with dev_err_probe() (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Drop redundant ACPI_PTR() (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Fail the probe if no IRQ provided (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Derive the device name from parent (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use struct_size() helper (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Allow to have same slaves (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Introduce IOAPIC IRQ support (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Distinguish IRQ resource type (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Count I2cSerialBus() resources (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Get rid of obsolete conditional (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Defer probe when no adapter found (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Accept errors of i2c_acpi_new_device() (Jaroslav Kysela) [2005073] - serdev: Fix detection of UART devices on Apple machines. (Jaroslav Kysela) [2005073] - serdev: Add ACPI devices by ResourceSource field (Jaroslav Kysela) [2005073] - spi: Return deferred probe error when controller isn't yet available (Jaroslav Kysela) [2005073] - spi/acpi: avoid spurious matches during slave enumeration (Jaroslav Kysela) [2005073] - spi: Add API to count spi acpi resources (Jaroslav Kysela) [2005073] - spi: Support selection of the index of the ACPI Spi Resource before alloc (Jaroslav Kysela) [2005073] - ACPI: Test for ACPI_SUCCESS rather than !ACPI_FAILURE (Jaroslav Kysela) [2005073] - spi/acpi: fix incorrect ACPI parent check (Jaroslav Kysela) [2005073] - spi: Create helper API to lookup ACPI info for spi device (Jaroslav Kysela) [2005073] - spi/acpi: enumerate all SPI slaves in the namespace (Jaroslav Kysela) [2005073] - spi: kill useless initializer in spi_register_controller() (Jaroslav Kysela) [2005073] - spi: fix ctrl->num_chipselect constraint (Jaroslav Kysela) [2005073] - spi: Don't call spi_get_gpio_descs() before device name is set (Jaroslav Kysela) [2005073] - spi: Avoid undefined behaviour when counting unused native CSs (Jaroslav Kysela) [2005073] - spi: Allow to have all native CSs in use along with GPIOs (Jaroslav Kysela) [2005073] - spi: Add missing error handling for CS GPIOs (Jaroslav Kysela) [2005073] - spi: export tracepoint symbols to modules (Jaroslav Kysela) [2005073] - spi: Fix zero length xfer bug (Jaroslav Kysela) [2005073] - spi: Add generic support for unused native cs with cs-gpios (Jaroslav Kysela) [2005073] - spi: Reduce kthread priority (Jaroslav Kysela) [2005073] - spi: core: Use DEVICE_ATTR_RW() for SPI slave control sysfs attribute (Jaroslav Kysela) [2005073] - i2c: acpi: Add an i2c_acpi_client_count() helper function (Jaroslav Kysela) [2005073] - s390/qeth: cache link_info for ethtool (Michal Schmidt) [2117098] - nfp: amend removal of MODULE_VERSION (Stefan Assmann) [1955769] - x86/speculation: Add LFENCE to RSB fill sequence (Waiman Long) [2115080] {CVE-2022-26373} - x86/speculation: Add RSB VM Exit protections (Waiman Long) [2115080] {CVE-2022-26373} - tools headers cpufeatures: Sync with the kernel sources (Waiman Long) [2115080] - tools headers cpufeatures: Sync with the kernel sources (Waiman Long) [2115080] - x86/speculation: Fix RSB filling with CONFIG_RETPOLINE=n (Waiman Long) [2115080] - x86/bugs: Do not enable IBPB at firmware entry when IBPB is not available (Waiman Long) [2115080] - x86/amd: Use IBPB for firmware calls (Waiman Long) [2115080] - x86/bugs: Warn when "ibrs" mitigation is selected on Enhanced IBRS parts (Waiman Long) [2115080] - iavf: Fix reset error handling (Petr Oros) [2119759] - iavf: Fix NULL pointer dereference in iavf_get_link_ksettings (Petr Oros) [2119759] - iavf: Fix adminq error handling (Petr Oros) [2119759] - iavf: Fix missing state logs (Petr Oros) [2119759] - ixgbe: Add locking to prevent panic when setting sriov_numvfs to zero (Ken Cox) [1978613]- netfilter: ipset: fix suspicious RCU usage in find_set_and_id (Florian Westphal) [2118526] - net/mlx5e: Update netdev features after changing XDP state (Amir Tzin) [2049440] - net/mlx5e: CT: Use own workqueue instead of mlx5e priv (Amir Tzin) [2049440] - net/mlx5e: CT: Add ct driver counters (Amir Tzin) [2049440] - net/mlx5e: CT: Fix cleanup of CT before cleanup of TC ct rules (Amir Tzin) [2049440] - net/mlx5e: Align mlx5e_cleanup_uplink_rep_tx() with upstream code. (Amir Tzin) [2049440] - net/mlx5e: Correct the calculation of max channels for rep (Amir Tzin) [2049440] - Documentation: devlink: mlx5.rst: Fix htmldoc build warning (Amir Tzin) [2049440] - net/mlx5: fs, fail conflicting actions (Amir Tzin) [2049440] - net/mlx5: Rearm the FW tracer after each tracer event (Amir Tzin) [2049440] - net/mlx5: correct ECE offset in query qp output (Amir Tzin) [2049440] - net/mlx5e: Disable softirq in mlx5e_activate_rq to avoid race condition (Amir Tzin) [2049440] - net/mlx5e: TC NIC mode, fix tc chains miss table (Amir Tzin) [2049440] - net/mlx5: Don't use already freed action pointer (Amir Tzin) [2049440] - net/mlx5: fix typo in comment (Amir Tzin) [2049440] - IB/mlx5: Fix undefined behavior due to shift overflowing the constant (Amir Tzin) [2049440] - net/mlx5e: Force ethertype usage in mlx5_ct_fs_smfs_fill_mask() (Amir Tzin) [2049440] - net/mlx5: Drain fw_reset when removing device (Amir Tzin) [2049440] - net/mlx5e: CT: Fix setting flow_source for smfs ct tuples (Amir Tzin) [2049440] - net/mlx5e: CT: Fix support for GRE tuples (Amir Tzin) [2049440] - net/mlx5e: Remove HW-GRO from reported features (Amir Tzin) [2049440] - net/mlx5e: Properly block HW GRO when XDP is enabled (Amir Tzin) [2049440] - net/mlx5e: Properly block LRO when XDP is enabled (Amir Tzin) [2049440] - net/mlx5e: Block rx-gro-hw feature in switchdev mode (Amir Tzin) [2049440] - net/mlx5e: Wrap mlx5e_trap_napi_poll into rcu_read_lock (Amir Tzin) [2049440] - net/mlx5: Initialize flow steering during driver probe (Amir Tzin) [2049440] - net/mlx5: Fix matching on inner TTC (Amir Tzin) [2049440] - net/mlx5: Avoid double clear or set of sync reset requested (Amir Tzin) [2049440] - net/mlx5: Fix deadlock in sync reset flow (Amir Tzin) [2049440] - net/mlx5e: Fix trust state reset in reload (Amir Tzin) [2049440] - net/mlx5e: Avoid checking offload capability in post_parse action (Amir Tzin) [2049440] - net/mlx5e: CT: Fix queued up restore put() executing after relevant ft release (Amir Tzin) [2049440] - net/mlx5e: TC, Fix ct_clear overwriting ct action metadata (Amir Tzin) [2049440] - net/mlx5e: Lag, Don't skip fib events on current dst (Amir Tzin) [2049440] - net/mlx5e: Lag, Fix fib_info pointer assignment (Amir Tzin) [2049440] - net/mlx5e: Lag, Fix use-after-free in fib event handler (Amir Tzin) [2049440] - net/mlx5e: Fix the calling of update_buffer_lossy() API (Amir Tzin) [2049440] - net/mlx5e: Don't match double-vlan packets if cvlan is not set (Amir Tzin) [2049440] - net/mlx5: Fix slab-out-of-bounds while reading resource dump menu (Amir Tzin) [2049440] - RDMA/mlx5: Add a missing update of cache->last_add (Amir Tzin) [2049440] - RDMA/mlx5: Don't remove cache MRs when a delay is needed (Amir Tzin) [2049440] - net/mlx5e: HTB, remove unused function declaration (Amir Tzin) [2049440] - net/mlx5e: Statify function mlx5_cmd_trigger_completions (Amir Tzin) [2049440] - net/mlx5: Remove unused fill page array API function (Amir Tzin) [2049440] - net/mlx5: Remove unused exported contiguous coherent buffer allocation API (Amir Tzin) [2049440] - net/mlx5: CT: Remove extra rhashtable remove on tuple entries (Amir Tzin) [2049440] - net/mlx5: DR, Remove hw_ste from mlx5dr_ste to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove 4 members from mlx5dr_ste_htbl to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove num_of_entries byte_size from struct mlx5_dr_icm_chunk (Amir Tzin) [2049440] - net/mlx5: DR, Remove icm_addr from mlx5dr_icm_chunk to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove mr_addr rkey from struct mlx5dr_icm_chunk (Amir Tzin) [2049440] - net/mlx5: DR, Adjust structure member to reduce memory hole (Amir Tzin) [2049440] - net/mlx5e: Drop cqe_bcnt32 from mlx5e_skb_from_cqe_mpwrq_linear (Amir Tzin) [2049440] - net/mlx5e: Drop the len output parameter from mlx5e_xdp_handle (Amir Tzin) [2049440] - net/mlx5e: RX, Test the XDP program existence out of the handler (Amir Tzin) [2049440] - net/mlx5e: Build SKB in place over the first fragment in non-linear legacy RQ (Amir Tzin) [2049440] - net/mlx5e: Add headroom only to the first fragment in legacy RQ (Amir Tzin) [2049440] - net/mlx5e: Validate MTU when building non-linear legacy RQ fragments info (Amir Tzin) [2049440] - net/mlx5e: MPLSoUDP encap, support action vlan pop_eth explicitly (Amir Tzin) [2049440] - net/mlx5e: MPLSoUDP decap, use vlan push_eth instead of pedit (Amir Tzin) [2049440] - RDMA/mlx5: Fix memory leak in error flow for subscribe event routine (Amir Tzin) [2049440] - net/mlx5e: Fix use-after-free in mlx5e_stats_grp_sw_update_stats (Amir Tzin) [2049440] - net/mlx5e: Remove overzealous validations in netlink EEPROM query (Amir Tzin) [2049440] - net/mlx5: Parse module mapping using mlx5_ifc (Amir Tzin) [2049440] - net/mlx5: Query the maximum MCIA register read size from firmware (Amir Tzin) [2049440] - net/mlx5: CT: Create smfs dr matchers dynamically (Amir Tzin) [2049440] - net/mlx5: CT: Add software steering ct flow steering provider (Amir Tzin) [2049440] - net/mlx5: Add smfs lib to export direct steering API to CT (Amir Tzin) [2049440] - net/mlx5: DR, Add helper to get backing dr table from a mlx5 flow table (Amir Tzin) [2049440] - net/mlx5: CT: Introduce a platform for multiple flow steering providers (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the doorbell pgdir (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for UAR (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the EQs (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the EQ table (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the IRQ table (Amir Tzin) [2049440] - net/mlx5: Delete useless module.h include (Amir Tzin) [2049440] - net/mlx5: DR, Add support for ConnectX-7 steering (Amir Tzin) [2049440] - net/mlx5: DR, Refactor ste_ctx handling for STE v0/1 (Amir Tzin) [2049440] - net/mlx5: DR, Rename action modify fields to reflect naming in HW spec (Amir Tzin) [2049440] - net/mlx5: DR, Fix handling of different actions on the same STE in STEv1 (Amir Tzin) [2049440] - net/mlx5: DR, Remove unneeded comments (Amir Tzin) [2049440] - net/mlx5: DR, Add support for matching on Internet Header Length (IHL) (Amir Tzin) [2049440] - net/mlx5: DR, Align mlx5dv_dr API vport action with FW behavior (Amir Tzin) [2049440] - net/mlx5: Add debugfs counters for page commands failures (Amir Tzin) [2049440] - net/mlx5: Add pages debugfs (Amir Tzin) [2049440] - net/mlx5: Move debugfs entries to separate struct (Amir Tzin) [2049440] - net/mlx5: Change release_all_pages cap bit location (Amir Tzin) [2049440] - net/mlx5: Remove redundant error on reclaim pages (Amir Tzin) [2049440] - net/mlx5: Remove redundant error on give pages (Amir Tzin) [2049440] - net/mlx5: Remove redundant notify fail on give pages (Amir Tzin) [2049440] - net/mlx5: Add command failures data to debugfs (Amir Tzin) [2049440] - net/mlx5e: TC, Fix use after free in mlx5e_clone_flow_attr_for_post_act() (Amir Tzin) [2049440] - net/mlx5: Support GRE conntrack offload (Amir Tzin) [2049440] - mlx5: add support for page_pool_get_stats (Amir Tzin) [2049440] - net/mlx5: Add migration commands definitions (Amir Tzin) [2049440] - net/mlx5: Introduce migration bits and structures (Amir Tzin) [2049440] - net/mlx5: Expose APIs to get/put the mlx5 core device (Amir Tzin) [2049440] - net/mlx5: Disable SRIOV before PF removal (Amir Tzin) [2049440] - net/mlx5: Reuse exported virtfn index function call (Amir Tzin) [2049440] - net/mlx5: Add clarification on sync reset failure (Amir Tzin) [2049440] - net/mlx5: Add reset_state field to MFRL register (Amir Tzin) [2049440] - RDMA/mlx5: Use new command interface API (Amir Tzin) [2049440] - net/mlx5: cmdif, Refactor error handling and reporting of async commands (Amir Tzin) [2049440] - net/mlx5: Use mlx5_cmd_do() in core create_{cq,dct} (Amir Tzin) [2049440] - net/mlx5: cmdif, Add new api for command execution (Amir Tzin) [2049440] - net/mlx5: cmdif, cmd_check refactoring (Amir Tzin) [2049440] - net/mlx5: cmdif, Return value improvements (Amir Tzin) [2049440] - net/mlx5: Lag, offload active-backup drops to hardware (Amir Tzin) [2049440] - net/mlx5: Lag, record inactive state of bond device (Amir Tzin) [2049440] - net/mlx5: Lag, don't use magic numbers for ports (Amir Tzin) [2049440] - net/mlx5: Lag, use local variable already defined to access E-Switch (Amir Tzin) [2049440] - net/mlx5: E-switch, add drop rule support to ingress ACL (Amir Tzin) [2049440] - net/mlx5: E-switch, remove special uplink ingress ACL handling (Amir Tzin) [2049440 2049580] - net/mlx5: E-Switch, reserve and use same uplink metadata across ports (Amir Tzin) [2049440 2049580] - net/mlx5: Add ability to insert to specific flow group (Amir Tzin) [2049440] - mlx5: remove unused static inlines (Amir Tzin) [2049440] - RDMA/mlx5: Reorder calls to pcie_relaxed_ordering_enabled() (Amir Tzin) [2049440] - RDMA/mlx5: Store ndescs instead of the translation table size (Amir Tzin) [2049440] - RDMA/mlx5: Merge similar flows of allocating MR from the cache (Amir Tzin) [2049440] - RDMA/mlx5: Fix the flow of a miss in the allocation of a cache ODP MR (Amir Tzin) [2049440] - RDMA/mlx5: Remove redundant work in struct mlx5_cache_ent (Amir Tzin) [2049440] - net/mlx5e: TC, Allow sample action with CT (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Make post_act parse CT and sample actions (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Clean redundant counter flag from tc action parsers (Amir Tzin) [2049440 2049659] - net/mlx5e: Use multi table support for CT and sample actions (Amir Tzin) [2049440 2049659] - net/mlx5e: Create new flow attr for multi table actions (Amir Tzin) [2049440 2049659] - net/mlx5e: Add post act offload/unoffload API (Amir Tzin) [2049440 2049659] - net/mlx5e: Pass actions param to actions_match_supported() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Move flow hashtable to be per rep (Amir Tzin) [2049440] - net/mlx5e: E-Switch, Add support for tx_port_ts in switchdev mode (Amir Tzin) [2049440] - net/mlx5e: E-Switch, Add PTP counters for uplink representor (Amir Tzin) [2049440] - net/mlx5e: RX, Restrict bulk size for small Striding RQs (Amir Tzin) [2049440] - net/mlx5e: Default to Striding RQ when not conflicting with CQE compression (Amir Tzin) [2049440] - net/mlx5e: Generalize packet merge error message (Amir Tzin) [2049440] - net/mlx5e: Add support for using xdp->data_meta (Amir Tzin) [2049440] - net/mlx5e: Fix spelling mistake "supoported" -> "supported" (Amir Tzin) [2049440] - net/mlx5e: Optimize the common case condition in mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Optimize modulo in mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Optimize mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Use READ_ONCE/WRITE_ONCE for DCBX trust state (Amir Tzin) [2049440] - net/mlx5e: Move repeating code that gets TC prio into a function (Amir Tzin) [2049440] - net/mlx5e: Use select queue parameters to sync with control flow (Amir Tzin) [2049440] - net/mlx5e: Move mlx5e_select_queue to en/selq.c (Amir Tzin) [2049440] - net/mlx5e: Introduce select queue parameters (Amir Tzin) [2049440] - net/mlx5e: Sync txq2sq updates with mlx5e_xmit for HTB queues (Amir Tzin) [2049440] - net/mlx5e: Use a barrier after updating txq2sq (Amir Tzin) [2049440] - net/mlx5e: Disable TX queues before registering the netdev (Amir Tzin) [2049440] - net/mlx5e: Cleanup of start/stop all queues (Amir Tzin) [2049440] - net/mlx5e: Use FW limitation for max MPW WQEBBs (Amir Tzin) [2049440] - net/mlx5e: Read max WQEBBs on the SQ from firmware (Amir Tzin) [2049440] - net/mlx5e: Remove unused tstamp SQ field (Amir Tzin) [2049440] - RDMA/mlx5: Delete useless module.h include (Amir Tzin) [2049440] - RDMA/mlx5: Delete get_num_static_uars function (Amir Tzin) [2049440] - net/mlx5: VLAN push on RX, pop on TX (Amir Tzin) [2049440 2049616] - net/mlx5: Introduce software defined steering capabilities (Amir Tzin) [2049440 2049616] - net/mlx5: Remove unused TIR modify bitmask enums (Amir Tzin) [2049440] - net/mlx5e: CT, Remove redundant flow args from tc ct calls (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Store mapped tunnel id on flow attr (Amir Tzin) [2049440 2049659] - net/mlx5e: Test CT and SAMPLE on flow attr (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: Refactor eswitch attr flags to just attr flags (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: CT, Don't set flow flag CT for ct clear flow (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Hold sample_attr on stack instead of pointer (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: TC, Reject rules with multiple CT actions (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Refactor mlx5e_tc_add_flow_mod_hdr() to get flow attr (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Pass attr to tc_act can_offload() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Split pedit offloads verify from alloc_tc_pedit_action() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Move pedit_headers_action to parse_attr (Amir Tzin) [2049440 2049659] - net/mlx5e: Move counter creation call to alloc_flow_attr_counter() (Amir Tzin) [2049440 2049659] - net/mlx5e: Pass attr arg for attaching/detaching encaps (Amir Tzin) [2049440 2049659] - net/mlx5e: Move code chunk setting encap dests into its own function (Amir Tzin) [2049440 2049659] - net_sched: cls_route: remove from list when handle is 0 (Felix Maurer) [2116328] {CVE-2022-2588} - netfilter: nf_tables: do not allow RULE_ID to refer to another chain (Florian Westphal) [2116356] {CVE-2022-2586} - netfilter: nf_tables: do not allow SET_ID to refer to another table (Florian Westphal) [2116356] {CVE-2022-2586} - netfilter: nf_queue: do not allow packet truncation below transport header offset (Florian Westphal) [2116159] {CVE-2022-36946} - net: let flow have same hash in two directions (Ivan Vecera) [2111094] - ipv4: Fix data-races around sysctl_fib_multipath_hash_fields. (Ivan Vecera) [2111094] - net: Add notifications when multipath hash field change (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash with IPv6 GRE (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash with IPv4 GRE (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash (Ivan Vecera) [2111094] - ipv6: Add custom multipath hash policy (Ivan Vecera) [2111094] - ipv6: Add a sysctl to control multipath hash fields (Ivan Vecera) [2111094] - ipv6: Calculate multipath hash inside switch statement (Ivan Vecera) [2111094] - ipv6: Use a more suitable label name (Ivan Vecera) [2111094] - ipv4: Add custom multipath hash policy (Ivan Vecera) [2111094] - ipv4: Add a sysctl to control multipath hash fields (Ivan Vecera) [2111094] - ipv4: Calculate multipath hash inside switch statement (Ivan Vecera) [2111094] - ipv6: Use math to point per net sysctls into the appropriate struct net (Ivan Vecera) [2111094] - selftest/net/forwarding: declare NETIFS p9 p10 (Ivan Vecera) [2111094] - ipv6: Fix sysctl max for fib_multipath_hash_policy (Ivan Vecera) [2111094] - selftests: forwarding: Test multipath hashing on inner IP pkts for GRE tunnel (Ivan Vecera) [2111094] - ipv6: Support multipath hashing on inner IP pkts (Ivan Vecera) [2111094] - ipv4: Multipath hashing on inner L3 needs to consider inner IPv6 pkts (Ivan Vecera) [2111094] - ipv4: Support multipath hashing on inner IP pkts for GRE tunnel (Ivan Vecera) [2111094] - ipv4: Initialize flowi4_multipath_hash in data path (Ivan Vecera) [2111094] - net: ipv4: Fix NULL pointer dereference in route lookup (Ivan Vecera) [2111094] - route: Add multipath_hash in flowi_common to make user-define hash (Ivan Vecera) [2111094]- drm/nouveau/kms/nv140-: Disable interlacing (Lyude Paul) [2097647] - rpm: convert gcc and libelf to Recommends (Jarod Wilson) [2114900] - redhat: add ca7 to redhat/git/files (Jarod Wilson)- net/mlx5e: TC, Remove redundant error logging (Amir Tzin) [2049436] - net/mlx5e: SHAMPO, reduce TIR indication (Amir Tzin) [2049436] - net/mlx5e: Lag, Only handle events from highest priority multipath entry (Amir Tzin) [2049436] - net/mlx5: Fix offloading with ESWITCH_IPV4_TTL_MODIFY_ENABLE (Amir Tzin) [2049436] - net/mlx5: Fix a race on command flush flow (Amir Tzin) [2049436] - net/mlx5: Fix size field in bufferx_reg struct (Amir Tzin) [2049436] - net/mlx5e: Fix VF min/max rate parameters interchange mistake (Amir Tzin) [2049436] - net/mlx5e: Add missing increment of count (Amir Tzin) [2049436] - net/mlx5e: MPLSoUDP decap, fix check for unsupported matches (Amir Tzin) [2049436] - net/mlx5e: Fix MPLSoUDP encap to use MPLS action information (Amir Tzin) [2049436] - net/mlx5e: Add feature check for set fec counters (Amir Tzin) [2049436 2049711] - net/mlx5e: TC, Skip redundant ct clear actions (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with forward and drop actions (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with drop and modify hdr action (Amir Tzin) [2049436] - net/mlx5e: kTLS, Use CHECKSUM_UNNECESSARY for device-offloaded packets (Amir Tzin) [2049436] - net/mlx5e: Use dma device access helper (add dropped hunk) (Amir Tzin) [2049436] - net/mlx5e: Fix wrong return value on ioctl EEPROM query failure (Amir Tzin) [2049436] - net/mlx5: Fix possible deadlock on rule deletion (Amir Tzin) [2049436] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [2049436] - net/mlx5: Update log_max_qp value to be 17 at most (Amir Tzin) [2049436] - net/mlx5: DR, Don't allow match on IP w/o matching on full ethertype/ip_version (Amir Tzin) [2049436] - net/mlx5e: Avoid field-overflowing memcpy() (Amir Tzin) [2049436] - net/mlx5e: Use struct_group() for memcpy() region (Amir Tzin) [2049436] - net/mlx5e: IPsec: Fix tunnel mode crypto offload for non TCP/UDP traffic (Amir Tzin) [2049436 2052871] - net/mlx5e: IPsec: Fix crypto offload for non TCP/UDP encapsulated traffic (Amir Tzin) [2049436 2052871] - net/mlx5e: Don't treat small ceil values as unlimited in HTB offload (Amir Tzin) [2049436] - net/mlx5: E-Switch, Fix uninitialized variable modact (Amir Tzin) [2049436] - net/mlx5e: Fix handling of wrong devices during bond netevent (Amir Tzin) [2049436] - net/mlx5e: Fix broken SKB allocation in HW-GRO (Amir Tzin) [2049436] - net/mlx5e: Fix wrong calculation of header index in HW_GRO (Amir Tzin) [2049436] - net/mlx5: Fix offloading with ESWITCH_IPV4_TTL_MODIFY_ENABLE (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with forward and drop actions (Amir Tzin) [2049436] - net/mlx5: Use del_timer_sync in fw reset flow of halting poll (Amir Tzin) [2049436] - net/mlx5e: Fix module EEPROM query (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with drop and modify hdr action (Amir Tzin) [2049436] - net/mlx5: Bridge, ensure dev_name is null-terminated (Amir Tzin) [2049436] - net/mlx5: Bridge, take rtnl lock in init error handler (Amir Tzin) [2049436] - mlx5: Don't accidentally set RTO_ONLINK before mlx5e_route_lookup_ipv4_get() (Amir Tzin) [2049436] - net/mlx5e: Fix build error in fec_set_block_stats() (Amir Tzin) [2049436] - Revert "net/mlx5: Add retry mechanism to the command entry index allocation" (Amir Tzin) [2049436] - net/mlx5: Set command entry semaphore up once got index free (Amir Tzin) [2049436] - net/mlx5e: Sync VXLAN udp ports during uplink representor profile change (Amir Tzin) [2049436] - net/mlx5: Fix access to sf_dev_table on allocation failure (Amir Tzin) [2049436] - net/mlx5e: Fix matching on modified inner ip_ecn bits (Amir Tzin) [2049436] - Revert "net/mlx5e: Block offload of outer header csum for GRE tunnel" (Amir Tzin) [2049436] - Revert "net/mlx5e: Block offload of outer header csum for UDP tunnels" (Amir Tzin) [2049436] - net/mlx5e: Fix nullptr on deleting mirroring rule (Amir Tzin) [2049436] - net/mlx5e: Fix page DMA map/unmap attributes (Amir Tzin) [2049436] - net/mlx5: Use dma device access helper (add dropped hunk) (Amir Tzin) [2049436] - net/mlx5e: Add recovery flow in case of error CQE (Amir Tzin) [2049436] - net/mlx5e: Refactor set_pflag_cqe_based_moder (Amir Tzin) [2049436] - net/mlx5e: Move HW-GRO and CQE compression check to fix features flow (Amir Tzin) [2049436] - net/mlx5e: Fix feature check per profile (Amir Tzin) [2049436] - net/mlx5e: Unblock setting vid 0 for VF in case PF isn't eswitch manager (Amir Tzin) [2049436] - net/mlx5e: Expose FEC counters via ethtool (Amir Tzin) [2049436 2049711] - net/mlx5: Update log_max_qp value to FW max capability (Amir Tzin) [2049436] - net/mlx5: Use irq_set_affinity_and_hint() (Amir Tzin) [2049436] - net/mlx5: SF, Use all available cpu for setting cpu affinity (Amir Tzin) [2049436] - net/mlx5: Introduce API for bulk request and release of IRQs (Amir Tzin) [2049436] - net/mlx5: Split irq_pool_affinity logic to new file (Amir Tzin) [2049436] - net/mlx5: Move affinity assignment into irq_request (Amir Tzin) [2049436] - net/mlx5: Introduce control IRQ request API (Amir Tzin) [2049436] - net/mlx5: mlx5e_hv_vhca_stats_create return type to void (Amir Tzin) [2049436] - RDMA/mlx5: Print wc status on CQE error and dump needed (Amir Tzin) [2049436] - net: fixup build after bpf header changes (Amir Tzin) [2049436] - net/mlx5: CT: Set flow source hint from provided tuple device (Amir Tzin) [2049436] - net/mlx5: Set SMFS as a default steering mode if device supports it (Amir Tzin) [2049436] - net/mlx5: DR, Improve steering for empty or RX/TX-only matchers (Amir Tzin) [2049436] - net/mlx5: DR, Add support for matching on geneve_tlv_option_0_exist field (Amir Tzin) [2049436] - net/mlx5: DR, Support matching on tunnel headers 0 and 1 (Amir Tzin) [2049436] - net/mlx5: DR, Add misc5 to match_param structs (Amir Tzin) [2049436] - net/mlx5: Add misc5 flow table match parameters (Amir Tzin) [2049436] - net/mlx5: DR, Add support for UPLINK destination type (Amir Tzin) [2049436] - net/mlx5e: Use auxiliary_device driver data helpers (Amir Tzin) [2049436] - net/mlx5e: Take packet_merge params directly from the RX res struct (Amir Tzin) [2049436] - net/mlx5e: Allocate per-channel stats dynamically at first usage (Amir Tzin) [2049436] - net/mlx5e: Use dynamic per-channel allocations in stats (Amir Tzin) [2049436] - net/mlx5e: Allow profile-specific limitation on max num of channels (Amir Tzin) [2049436] - net/mlx5e: Save memory by using dynamic allocation in netdev priv (Amir Tzin) [2049436] - net/mlx5e: Add profile indications for PTP and QOS HTB features (Amir Tzin) [2049436] - net/mlx5e: Use bitmap field for profile features (Amir Tzin) [2049436] - net/mlx5: Remove the repeated declaration (Amir Tzin) [2049436] - net/mlx5: Let user configure max_macs generic param (Amir Tzin) [2049436] - net/mlx5: Let user configure event_eq_size param (Amir Tzin) [2049436] - net/mlx5: Let user configure io_eq_size param (Amir Tzin) [2049436] - net/mlx5: Introduce log_max_current_uc_list_wr_supported bit (Amir Tzin) [2049436] - net/mlx5e: Move goto action checks into tc_action goto post parse op (Amir Tzin) [2049436] - net/mlx5e: Move vlan action chunk into tc action vlan post parse op (Amir Tzin) [2049436] - net/mlx5e: Add post_parse() op to tc action infrastructure (Amir Tzin) [2049436] - net/mlx5e: Move sample attr allocation to tc_action sample parse op (Amir Tzin) [2049436] - net/mlx5e: TC action parsing loop (Amir Tzin) [2049436] - net/mlx5e: Add redirect ingress to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add sample and ptype to tc_action infra (Amir Tzin) [2049436] - net/mlx5e: Add ct to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add mirred/redirect to tc action infra (Amir Tzin) [2049436] - Revert "net/mlx5e: TC, Remove redundant error logging" (Amir Tzin) [2049436] - net/mlx5e: Add mpls push/pop to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add vlan push/pop/mangle to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add pedit to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add csum to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add tunnel encap/decap to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add goto to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add tc action infrastructure (Amir Tzin) [2049436] - RDMA/mlx5: Use memset_after() to zero struct mlx5_ib_mr (Amir Tzin) [2049436] - RDMA/mlx5: Add support to multiple priorities for FDB rules (Amir Tzin) [2049436] - net/mlx5: Create more priorities for FDB bypass namespace (Amir Tzin) [2049436] - net/mlx5: Refactor mlx5_get_flow_namespace (Amir Tzin) [2049436] - net/mlx5: Separate FDB namespace (Amir Tzin) [2049436] - net/mlx5: Dynamically resize flow counters query buffer (Amir Tzin) [2049436] - net/mlx5e: TC, Set flow attr ip_version earlier (Amir Tzin) [2049436] - net/mlx5e: TC, Move common flow_action checks into function (Amir Tzin) [2049436] - net/mlx5e: Remove redundant actions arg from vlan push/pop funcs (Amir Tzin) [2049436] - net/mlx5e: Remove redundant actions arg from validate_goto_chain() (Amir Tzin) [2049436] - net/mlx5e: TC, Remove redundant action stack var (Amir Tzin) [2049436] - net/mlx5e: Hide function mlx5e_num_channels_changed (Amir Tzin) [2049436] - net/mlx5e: SHAMPO, clean MLX5E_MAX_KLM_PER_WQE macro (Amir Tzin) [2049436] - net/mlx5: Print more info on pci error handlers (Amir Tzin) [2049436] - net/mlx5: SF, silence an uninitialized variable warning (Amir Tzin) [2049436] - net/mlx5: Fix error return code in esw_qos_create() (Amir Tzin) [2049436] - net/mlx5: E-switch, Create QoS on demand (Amir Tzin) [2049436] - net/mlx5: E-switch, Enable vport QoS on demand (Amir Tzin) [2049436] - net/mlx5: E-switch, move offloads mode callbacks to offloads file (Amir Tzin) [2049436] - net/mlx5: E-switch, Reuse mlx5_eswitch_set_vport_mac (Amir Tzin) [2049436] - net/mlx5: E-switch, Remove vport enabled check (Amir Tzin) [2049436] - net/mlx5e: Specify out ifindex when looking up decap route (Amir Tzin) [2049436] - net/mlx5e: TC, Move comment about mod header flag to correct place (Amir Tzin) [2049436] - net/mlx5e: TC, Move kfree() calls after destroying all resources (Amir Tzin) [2049436] - net/mlx5e: TC, Destroy nic flow counter if exists (Amir Tzin) [2049436] - net/mlx5: TC, using swap() instead of tmp variable (Amir Tzin) [2049436] - net/mlx5: CT: Allow static allocation of mod headers (Amir Tzin) [2049436] - net/mlx5e: Refactor mod header management API (Amir Tzin) [2049436] - net/mlx5: Avoid printing health buffer when firmware is unavailable (Amir Tzin) [2049436 2049717] - net/mlx5e: Support ethtool cq mode (Amir Tzin) [2049436 2049840] - Revert "RDMA/mlx5: Fix releasing unallocated memory in dereg MR flow" (Amir Tzin) [2049435] - net/mlx5: Use first online CPU instead of hard coded CPU (Amir Tzin) [2049435] - net/mlx5e: SHAMPO, Fix constant expression result (Amir Tzin) [2049435] - net/mlx5: Fix access to a non-supported register (Amir Tzin) [2049435 2049717] - net/mlx5: Fix too early queueing of log timestamp work (Amir Tzin) [2049435 2049717] - net/mlx5: Fix use after free in mlx5_health_wait_pci_up (Amir Tzin) [2049435] - net/mlx5: Lag, Fix recreation of VF LAG (Amir Tzin) [2049435] - net/mlx5e: Sync TIR params updates against concurrent create/modify (Amir Tzin) [2049435] - RDMA/mlx5: Fix releasing unallocated memory in dereg MR flow (Amir Tzin) [2049435] - net/mlx5: Fix flow counters SF bulk query len (Amir Tzin) [2049435] - net/mlx5: Lag, fix a potential Oops with mlx5_lag_create_definer() (Amir Tzin) [2049435] - net/mlx5e: Prevent HW-GRO and CQE-COMPRESS features operate together (Amir Tzin) [2049435] - net/mlx5e: Add HW-GRO offload (Amir Tzin) [2049435] - net/mlx5e: Add HW_GRO statistics (Amir Tzin) [2049435] - net/mlx5e: HW_GRO cqe handler implementation (Amir Tzin) [2049435] - net/mlx5e: Add data path for SHAMPO feature (Amir Tzin) [2049435] - net/mlx5e: Add handle SHAMPO cqe support (Amir Tzin) [2049435] - net/mlx5e: Add control path for SHAMPO feature (Amir Tzin) [2049435] - net/mlx5e: Add support to klm_umr_wqe (Amir Tzin) [2049435] - net/mlx5e: Rename TIR lro functions to TIR packet merge functions (Amir Tzin) [2049435] - net/mlx5e: Align mlx5e_resources with upstream code. (Amir Tzin) [2049435] - net/mlx5: Add SHAMPO caps, HW bits and enumerations (Amir Tzin) [2049435] - net/mlx5e: Rename lro_timeout to packet_merge_timeout (Amir Tzin) [2049435] - net/mlx5: SF_DEV Add SF device trace points (Amir Tzin) [2049435] - net/mlx5: SF, Add SF trace points (Amir Tzin) [2049435] - net/mlx5: Bridge, support replacing existing FDB entry (Amir Tzin) [2049435] - net/mlx5: Bridge, extract code to lookup and del/notify entry (Amir Tzin) [2049435] - net/mlx5: Add periodic update of host time to firmware (Amir Tzin) [2049435 2049717] - net/mlx5: Print health buffer by log level (Amir Tzin) [2049435 2049717] - net/mlx5: Extend health buffer dump (Amir Tzin) [2049435 2049717] - net/mlx5: Reduce flow counters bulk query buffer size for SFs (Amir Tzin) [2049435] - net/mlx5: Fix unused function warning of mlx5i_flow_type_mask (Amir Tzin) [2049435] - net/mlx5: Remove unnecessary checks for slow path flag (Amir Tzin) [2049435] - net/mlx5e: don't write directly to netdev->dev_addr (Amir Tzin) [2049435] - RDMA/mlx5: Use dev_addr_mod() (Amir Tzin) [2049435] - RDMA/mlx5: fix build error with INFINIBAND_USER_ACCESS=n (Amir Tzin) [2049435] - RDMA/mlx5: Attach ndescs to mlx5_ib_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Move struct mlx5_core_mkey to mlx5_ib (Amir Tzin) [2049435] - RDMA/mlx5: Replace struct mlx5_core_mkey by u32 key (Amir Tzin) [2049435] - RDMA/mlx5: Align mlx5e_resources with upstream code. (Amir Tzin) [2049435] - RDMA/mlx5: Remove pd from struct mlx5_core_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Remove size from struct mlx5_core_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Remove iova from struct mlx5_core_mkey (Amir Tzin) [2049435] - net/mlx5: E-Switch, Increase supported number of forward destinations to 32 (Amir Tzin) [2049435] - net/mlx5: E-Switch, Use dynamic alloc for dest array (Amir Tzin) [2049435] - net/mlx5: Lag, use steering to select the affinity port in LAG (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create/destroy/modify port selection (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create TTC tables for LAG port selection (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create definers for LAG (Amir Tzin) [2049435] - net/mlx5: Lag, set match mask according to the traffic type bitmap (Amir Tzin) [2049435] - net/mlx5: Lag, set LAG traffic type mapping (Amir Tzin) [2049435] - net/mlx5: Lag, move lag files into directory (Amir Tzin) [2049435] - net/mlx5: Introduce new uplink destination type (Amir Tzin) [2049435] - net/mlx5: Add support to create match definer (Amir Tzin) [2049435] - net/mlx5: Introduce port selection namespace (Amir Tzin) [2049435] - net/mlx5: Support partial TTC rules (Amir Tzin) [2049435] - mlx5: prevent 64bit divide (Amir Tzin) [2049435] - net/mlx5: Use system_image_guid to determine bonding (Amir Tzin) [2049435] - net/mlx5: Use native_port_num as 1st option of device index (Amir Tzin) [2049435] - net/mlx5: Introduce new device index wrapper (Amir Tzin) [2049435] - net/mlx5: Check return status first when querying system_image_guid (Amir Tzin) [2049435] - net/mlx5: DR, Prefer kcalloc over open coded arithmetic (Amir Tzin) [2049435] - net/mlx5e: Add extack msgs related to TC for better debug (Amir Tzin) [2049435] - net/mlx5: CT: Fix missing cleanup of ct nat table on init failure (Amir Tzin) [2049435] - Revert "net/mlx5e: TC, Skip redundant ct clear actions" (Amir Tzin) [2049435] - net/mlx5: Disable roce at HCA level (Amir Tzin) [2049435] - net/mlx5i: Enable Rx steering for IPoIB via ethtool (Amir Tzin) [2049435] - net/mlx5: Bridge, provide flow source hints (Amir Tzin) [2049435] - net/mlx5: Read timeout values from DTOR (Amir Tzin) [2049435] - net/mlx5: Read timeout values from init segment (Amir Tzin) [2049435] - net/mlx5: Add layout to support default timeouts register (Amir Tzin) [2049435] - net/mlx5: Set devlink reload feature bit for supported devices only (Amir Tzin) [2049435] - RDMA/mlx5: Add optional counter support in get_hw_stats callback (Amir Tzin) [2049435] - RDMA/mlx5: Add modify_op_stat() support (Amir Tzin) [2049435] - RDMA/mlx5: Add steering support in optional flow counters (Amir Tzin) [2049435] - RDMA/mlx5: Support optional counters in hw_stats initialization (Amir Tzin) [2049435] - net/mlx5: Add priorities for counters in RDMA namespaces (Amir Tzin) [2049435] - net/mlx5: Add ifc bits to support optional counters (Amir Tzin) [2049435] - net/mlx5: Enable single IRQ for PCI Function (Amir Tzin) [2049435] - net/mlx5: Shift control IRQ to the last index (Amir Tzin) [2049435] - net/mlx5: Bridge, pop VLAN on egress table miss (Amir Tzin) [2049435] - net/mlx5: Bridge, mark reg_c1 when pushing VLAN (Amir Tzin) [2049435] - net/mlx5: Bridge, extract VLAN pop code to dedicated functions (Amir Tzin) [2049435] - net/mlx5: Bridge, refactor eswitch instance usage (Amir Tzin) [2049435] - net/mlx5e: Support accept action (Amir Tzin) [2049435] - net/mlx5e: Specify out ifindex when looking up encap route (Amir Tzin) [2049435] - net/mlx5e: Reserve a value from TC tunnel options mapping (Amir Tzin) [2049435] - net/mlx5e: Move parse fdb check into actions_match_supported_fdb() (Amir Tzin) [2049435] - net/mlx5e: Split actions_match_supported() into a sub function (Amir Tzin) [2049435] - net/mlx5e: Move mod hdr allocation to a single place (Amir Tzin) [2049435] - net/mlx5e: TC, Refactor sample offload error flow (Amir Tzin) [2049435] - RDMA/mlx5: Avoid taking MRs from larger MR cache pools when a pool is empty (Amir Tzin) [2049435] - IB/mlx5: Flow through a more detailed return code from get_prefetchable_mr() (Amir Tzin) [2049435] - net/mlx5e: Use array_size() helper (Amir Tzin) [2049435] - net/mlx5: Use struct_size() helper in kvzalloc() (Amir Tzin) [2049435] - net/mlx5: Use kvcalloc() instead of kvzalloc() (Amir Tzin) [2049435] - net/mlx5: Tolerate failures in debug features while driver load (Amir Tzin) [2049435] - IB/mlx5: Enable UAR to have DevX UID (Amir Tzin) [2049435] - net/mlx5: Add uid field to UAR allocation structures (Amir Tzin) [2049435] - net/mlx5e: check return value of rhashtable_init (Amir Tzin) [2049435] - net/mlx5e: Enable TC offload for ingress MACVLAN (Amir Tzin) [2049435] - net/mlx5e: Enable TC offload for egress MACVLAN (Amir Tzin) [2049435] - net/mlx5e: loopback test is not supported in switchdev mode (Amir Tzin) [2049435] - net/mlx5e: Use NL_SET_ERR_MSG_MOD() for errors parsing tunnel attributes (Amir Tzin) [2049435] - net/mlx5e: Use tc sample stubs instead of ifdefs in source file (Amir Tzin) [2049435] - net/mlx5e: Remove redundant priv arg from parse_pedit_to_reformat() (Amir Tzin) [2049435] - net/mlx5e: Check action fwd/drop flag exists also for nic flows (Amir Tzin) [2049435] - net/mlx5e: Set action fwd flag when parsing tc action goto (Amir Tzin) [2049435] - net/mlx5e: Remove incorrect addition of action fwd flag (Amir Tzin) [2049435] - Revert "net/mlx5e: TC, Fix ct_clear overwriting ct action metadata" (Amir Tzin) [2049435] - net/mlx5e: Use correct return type (Amir Tzin) [2049435] - net/mlx5e: Add error flow for ethtool -X command (Amir Tzin) [2049435] - net/mlx5: Fix rdma aux device on devlink reload (Amir Tzin) [2049434] - RDMA/mlx5: Relax DCS QP creation checks (Amir Tzin) [2049434] - net/mellanox: switch from 'pci_' to 'dma_' API (Amir Tzin) [2049434] - net/mlx5e: Make use of netdev_warn() (Amir Tzin) [2049434] - net/mlx5: Initialize numa node for all core devices (Amir Tzin) [2049434] - net/mlx5: Allocate individual capability (Amir Tzin) [2049434] - net/mlx5: Reorganize current and maximal capabilities to be per-type (Amir Tzin) [2049434] - net/mlx5: SF, use recent sysfs api (Amir Tzin) [2049434] - net/mlx5: Refcount mlx5_irq with integer (Amir Tzin) [2049434] - net/mlx5: Change SF missing dedicated MSI-X err message to dbg (Amir Tzin) [2049434] - net/mlx5: Align mlx5_irq structure (Amir Tzin) [2049434] - net/mlx5: Delete impossible dev->state checks (Amir Tzin) [2049434] - net/mlx5: Support enable_vnet devlink dev param (Amir Tzin) [2049434] - net/mlx5: Support enable_rdma devlink dev param (Amir Tzin) [2049434] - net/mlx5: Support enable_eth devlink dev param (Amir Tzin) [2049434] - RDMA/mlx5: Drop in-driver verbs object creations (Amir Tzin) [2049434] - RDMA/mlx5: Delete device resource mutex that didn't protect anything (Amir Tzin) [2049434] - RDMA/mlx5: Cancel pkey work before destroying device resources (Amir Tzin) [2049434] - net/mlx5e: Return -EOPNOTSUPP if more relevant when parsing tc actions (Amir Tzin) [2049434] - net/mlx5e: Remove redundant assignment of counter to null (Amir Tzin) [2049434] - net/mlx5e: Remove redundant parse_attr arg (Amir Tzin) [2049434] - net/mlx5e: Remove redundant cap check for flow counter (Amir Tzin) [2049434] - net/mlx5e: Remove redundant filter_dev arg from parse_tc_fdb_actions() (Amir Tzin) [2049434] - net/mlx5e: Remove redundant tc act includes (Amir Tzin) [2049434] - IB/mlx5: Rename is_apu_thread_cq function to is_apu_cq (Amir Tzin) [2049434] - RDMA/mlx5: Add DCS offload support (Amir Tzin) [2049434] - RDMA/mlx5: Separate DCI QP creation logic (Amir Tzin) [2049434] - net/mlx5: Add DCS caps & fields support (Amir Tzin) [2049434] - KVM: nVMX: Inject #UD if VMXON is attempted with incompatible CR0/CR4 (Vitaly Kuznetsov) [2119233] - mm: Fix PASID use-after-free issue (Jerry Snitselaar) [2113046] - scsi: csiostor: Uninitialized data in csio_ln_vnp_read_cbfn() (Rahul Lakkireddy) [2105815] - scsi: csiostor: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix a typo (Rahul Lakkireddy) [2105815] - scsi: csiostor: Assign boolean values to a bool variable (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix fall-through warnings for Clang (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix spelling mistake "couldnt" -> "couldn't" (Rahul Lakkireddy) [2105815] - scsi: csiostor: Add missing description for csio_rnode_fwevt_handler()'s 'fwevt' param (Rahul Lakkireddy) [2105815] - scsi: csiostor: Remove 2 unused variables {mc,edc}_bist_status_rdata_reg (Rahul Lakkireddy) [2105815] - scsi: csiostor: Demote kerneldoc that fails to meet the criteria (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix misnamed function parameter (Rahul Lakkireddy) [2105815] - scsi: csiostor: Adjust indentation in csio_device_reset (Rahul Lakkireddy) [2105815] - mediatek: mt76: eeprom: fix missing of_node_put() in mt76_find_power_limits_node() (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211: consider EHT element size in assoc request (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211: switch airtime fairness back to deficit round-robin scheduling (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7615: fix throughput regression on DFS channels (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix incorrect testmode ipg on band 1 caused by wmm_idx (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: enlarge maximum VHT MPDU length to 11454 (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: fix aggregation subframes setting to HE max (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211_hwsim: set virtio device ready in probe() (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921s: fix possible sdio deadlock in command fail (Jose Ignacio Tornos Martinez) [2103625] - wifi: rtw89: 8852a: rfk: fix div 0 exception (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: do not update pm states in case of error (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7615: do not update pm stats in case of error (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Avoid REO CMD failed prints during firmware recovery (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Fix incorrect debug_mask mappings (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix missing skb drop on htc_tx_completion error (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921s: fix firmware download random fail (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix IRQ affinity warning on shutdown (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix netdev open race (Jose Ignacio Tornos Martinez) [2103625] - iwlwifi: fw: init SAR GEO table only if data is present (Jose Ignacio Tornos Martinez) [2103625] - ath10k: htt_tx: do not interpret Eth frames as WiFi (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Don't check arvif->is_started before sending management frames (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix twt table_mask to u16 in mt7915_dev (Jose Ignacio Tornos Martinez) [2103625] - ath11k: reset 11d state in process of recovery (Jose Ignacio Tornos Martinez) [2103625] - brcmfmac: use ISO3166 country code and 0 rev as fallback on brcmfmac43602 chips (Jose Ignacio Tornos Martinez) [2103625] - mt76: fix tx status related use-after-free race on station removal (Jose Ignacio Tornos Martinez) [2103625] - mt76: do not attempt to reorder received 802.3 packets without agg session (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: fix kernel crash at mt7921_pci_remove (Jose Ignacio Tornos Martinez) [2103625] - mt76: fix antenna config missing in 6G cap (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: report rx mode value in mt7915_mac_fill_rx_rate (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: do not pass data pointer to mt7915_mcu_muru_debug_set (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix possible NULL pointer dereference in mt7915_mac_fill_rx_vector (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix possible uninitialized pointer dereference in mt7986_wmac_gpio_setup (Jose Ignacio Tornos Martinez) [2103625] - ath10k: enable napi on RX path for usb (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix the warning of dev_wake in mhi_pm_disable_transition() (Jose Ignacio Tornos Martinez) [2103625] - ath11k: acquire ab->base_lock in unassign when finding the peer by addr (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix unbounded shift in mt7915_mcu_beacon_mbss (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix DBDC default band selection on MT7915D (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: honor pm user configuration in mt7921_sniffer_interface_iter (Jose Ignacio Tornos Martinez) [2103625] - i40e: Fix tunnel checksum offload with fragmented traffic (Ivan Vecera) [2107977] - net/mlx5e: Fix matchall police parameters validation (Ivan Vecera) [2106271] - net/sched: act_police: allow 'continue' action offload (Ivan Vecera) [2106271] - net: Print hashed skb addresses for all net and qdisc events (Ivan Vecera) [2106271] - net: sched: fixed barrier to prevent skbuff sticking in qdisc backlog (Ivan Vecera) [2106271] - net/sched: act_pedit: sanitize shift argument before usage (Ivan Vecera) [2106271] - net/sched: act_pedit: really ensure the skb is writable (Ivan Vecera) [2106271] - net/sched: taprio: Check if socket flags are valid (Ivan Vecera) [2106271] - net/sched: flower: Avoid overwriting error messages (Ivan Vecera) [2106271] - net/sched: matchall: Avoid overwriting error messages (Ivan Vecera) [2106271] - net/sched: cls_api: Add extack message for unsupported action offload (Ivan Vecera) [2106271] - net/sched: act_vlan: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_tunnel_key: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_skbedit: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_police: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_pedit: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_mpls: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_mirred: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_gact: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_api: Add extack to offload_act_setup() callback (Ivan Vecera) [2106271] - net/sched: flower: Take verbose flag into account when logging error messages (Ivan Vecera) [2106271] - net/sched: matchall: Take verbose flag into account when logging error messages (Ivan Vecera) [2106271] - net/sched: fix incorrect vlan_push_eth dest field (Ivan Vecera) [2106271] - net/sched: add vlan push_eth and pop_eth action to the hardware IR (Ivan Vecera) [2106271] - selftests: tc-testing: Increase timeout in tdc config file (Ivan Vecera) [2106271] - flow_offload: improve extack msg for user when adding invalid filter (Ivan Vecera) [2106271] - flow_offload: reject offload for all drivers with invalid police parameters (Ivan Vecera) [2106271] - net: flow_offload: add tc police action parameters (Ivan Vecera) [2106271] - net: sched: avoid newline at end of message in NL_SET_ERR_MSG_MOD (Ivan Vecera) [2106271] - net_sched: add __rcu annotation to netdev->qdisc (Ivan Vecera) [2106271] - net/sched: act_police: more accurate MTU policing (Ivan Vecera) [2106271] - net/sched: Enable tc skb ext allocation on chain miss only when needed (Ivan Vecera) [2106271] - net: sched: remove qdisc_qlen_cpu() (Ivan Vecera) [2106271] - net: sched: remove psched_tdiff_bounded() (Ivan Vecera) [2106271] - net: sched: Clarify error message when qdisc kind is unknown (Ivan Vecera) [2106271] - sch_cake: revise Diffserv docs (Ivan Vecera) [2106271] - flow_offload: fix suspicious RCU usage when offloading tc action (Ivan Vecera) [2106271] - net/sched: use min() macro instead of doing it manually (Ivan Vecera) [2106271] - selftests: tc-testing: add action offload selftest for action and filter (Ivan Vecera) [2106271] - flow_offload: validate flags of filter and actions (Ivan Vecera) [2106271] - flow_offload: add reoffload process to update hw_count (Ivan Vecera) [2106271] - net: sched: save full flags for tc action (Ivan Vecera) [2106271] - flow_offload: add process to update action stats from hardware (Ivan Vecera) [2106271] - flow_offload: rename exts stats update functions with hw (Ivan Vecera) [2106271] - flow_offload: add skip_hw and skip_sw to control if offload the action (Ivan Vecera) [2106271] - flow_offload: allow user to offload tc action to net device (Ivan Vecera) [2106271] - flow_offload: add ops to tc_action_ops for flow action setup (Ivan Vecera) [2106271] - flow_offload: rename offload functions with offload instead of flow (Ivan Vecera) [2106271] - flow_offload: add index to flow_action_entry structure (Ivan Vecera) [2106271] - flow_offload: reject to offload tc actions in offload drivers (Ivan Vecera) [2106271] - flow_offload: fill flags to action structure (Ivan Vecera) [2106271] - sch_cake: do not call cake_destroy() from cake_init() (Ivan Vecera) [2106271] - net/sched: fq_pie: prevent dismantle issue (Ivan Vecera) [2106271] - selftests/tc-testing: Fix cannot create /sys/bus/netdevsim/new_device: Directory nonexistent (Ivan Vecera) [2106271] - selftests/tc-testing: add missing config (Ivan Vecera) [2106271] - selftests/tc-testing: add exit code (Ivan Vecera) [2106271] - net/sched: act_ct: Offload only ASSURED connections (Ivan Vecera) [2106271] - selftests/tc-testings: Be compatible with newer tc output (Ivan Vecera) [2106271] - selftests: forwarding: Fix packet matching in mirroring selftests (Ivan Vecera) [2106271] - net/sched: sch_taprio: fix undefined behavior in ktime_mono_to_any (Ivan Vecera) [2106271] - cls_flower: Fix inability to match GRE/IPIP packets (Ivan Vecera) [2106271] - sch_htb: Add extack messages for EOPNOTSUPP errors (Ivan Vecera) [2106271] - net: sch: simplify condtion for selecting mini_Qdisc_pair buffer (Ivan Vecera) [2106271] - net: sch: eliminate unnecessary RCU waits in mini_qdisc_pair_swap() (Ivan Vecera) [2106271] - net: sched: gred: dynamically allocate tc_gred_qopt_offload (Ivan Vecera) [2106271] - net: stats: Read the statistics in ___gnet_stats_copy_basic() instead of adding. (Ivan Vecera) [2106271] - net: sched: Allow statistics reads from softirq. (Ivan Vecera) [2106271] - net: sched: remove one pair of atomic operations (Ivan Vecera) [2106271] - net: sched: fix logic error in qdisc_run_begin() (Ivan Vecera) [2106271] - net: sch_tbf: Add a graft command (Ivan Vecera) [2106271] - net: sched: Remove Qdisc::running sequence counter (Ivan Vecera) [2106271] - net: sched: Merge Qdisc::bstats and Qdisc::cpu_bstats data types (Ivan Vecera) [2106271] - net: sched: Use _bstats_update/set() instead of raw writes (Ivan Vecera) [2106271] - net: sched: Protect Qdisc::bstats with u64_stats (Ivan Vecera) [2106271] - u64_stats: Introduce u64_stats_set() (Ivan Vecera) [2106271] - gen_stats: Move remaining users to gnet_stats_add_queue(). (Ivan Vecera) [2106271] - mq, mqprio: Use gnet_stats_add_queue(). (Ivan Vecera) [2106271] - gen_stats: Add gnet_stats_add_queue(). (Ivan Vecera) [2106271] - gen_stats: Add instead Set the value in __gnet_stats_copy_basic(). (Ivan Vecera) [2106271] - testing: selftests: tc_common: Add tc_check_at_least_x_packets() (Ivan Vecera) [2106271] - testing: selftests: forwarding.config.sample: Add tc flag (Ivan Vecera) [2106271] - net/sched: sch_taprio: properly cancel timer from taprio_destroy() (Ivan Vecera) [2106271] - net: sched: Use struct_size() helper in kvmalloc() (Ivan Vecera) [2106271] - net_sched: Use struct_size() and flex_array_size() helpers (Ivan Vecera) [2106271] - net: prevent user from passing illegal stab size (Ivan Vecera) [2106271] - net: sched: move and reuse mq_change_real_num_tx() (Ivan Vecera) [2106271] - selftests: net: test ethtool -L vs mq (Ivan Vecera) [2106271] - netdevsim: add ability to change channel count (Ivan Vecera) [2106271] - net: add netif_set_real_num_queues() for device reconfig (Ivan Vecera) [2106271] - net: sched: update default qdisc visibility after Tx queue cnt changes (Ivan Vecera) [2106271] - fix array-index-out-of-bounds in taprio_change (Ivan Vecera) [2106271] - Revert "flow_offload: action should not be NULL when it is referenced" (Ivan Vecera) [2106271] - sch_cake: fix srchost/dsthost hashing mode (Ivan Vecera) [2106271] - net/sched: cls_api, reset flags on replay (Ivan Vecera) [2106271] - net: sched: provide missing kdoc for tcf_pkt_info and tcf_ematch_ops (Ivan Vecera) [2106271] - net: flow_offload: correct comments mismatch with code (Ivan Vecera) [2106271] - net/sched: taprio: Fix init procedure (Ivan Vecera) [2106271] - net_sched: refactor TC action init API (Ivan Vecera) [2106271] - tc-testing: Add control-plane selftest for skbmod SKBMOD_F_ECN option (Ivan Vecera) [2106271] - net/sched: act_skbmod: Add SKBMOD_F_ECN option support (Ivan Vecera) [2106271] - qdisc: add new field for qdisc_enqueue tracepoint (Ivan Vecera) [2106271] - net/sched: act_skbmod: Skip non-Ethernet packets (Ivan Vecera) [2106271] - net/sched: Remove unnecessary if statement (Ivan Vecera) [2106271] - net_sched: introduce tracepoint trace_qdisc_enqueue() (Ivan Vecera) [2106271] - net_sched: use px to print skb address in trace_qdisc_dequeue() (Ivan Vecera) [2106271] - net: use px to print skb address in trace_netif_receive_skb (Ivan Vecera) [2106271] - net/sched: sch_taprio: fix typo in comment (Ivan Vecera) [2106271] - flow_offload: action should not be NULL when it is referenced (Ivan Vecera) [2106271] - net: sched: remove qdisc->empty for lockless qdisc (Ivan Vecera) [2106271] - net: sched: implement TCQ_F_CAN_BYPASS for lockless qdisc (Ivan Vecera) [2106271] - net: sched: avoid unnecessary seqcount operation for lockless qdisc (Ivan Vecera) [2106271] - Revert "net/sched: cls_flower: Remove match on n_proto" (Ivan Vecera) [2106271] - net: sched: add barrier to ensure correct ordering for lockless qdisc (Ivan Vecera) [2106271] - net: sched: fix error return code in tcf_del_walker() (Ivan Vecera) [2106271] - net/sched: cls_flower: Remove match on n_proto (Ivan Vecera) [2106271] - sch_cake: revise docs for RFC 8622 LE PHB support (Ivan Vecera) [2106271] - sch_cake: Fix out of bounds when parsing TCP options and header (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_lookup_leaf() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_do_events() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_charge_class() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_deactivate() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_activate() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_change_class_mode() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_class_mode() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_deactivate_prios() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_activate_prios() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_remove_class_from_row() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_class_to_row() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_next_rb_node() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_to_wait_tree() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_to_id_tree() (Ivan Vecera) [2106271] - net/sched: act_vlan: Test priority 0 modification (Ivan Vecera) [2106271] - net/sched: act_vlan: No dump for unset priority (Ivan Vecera) [2106271] - net: sched: Fix spelling mistakes (Ivan Vecera) [2106271] - net/sched: fq_pie: fix OOB access in the traffic path (Ivan Vecera) [2106271] - net/sched: fq_pie: re-factor fix for fq_pie endless loop (Ivan Vecera) [2106271] - net: taprio offload: enforce qdisc to netdev queue mapping (Ivan Vecera) [2106271] - net/sched: taprio: Drop unnecessary NULL check after container_of (Ivan Vecera) [2106271] - net: flow_offload: add FLOW_ACTION_PPPOE_PUSH (Ivan Vecera) [2106271] - gve: Recording rx queue before sending to napi (Jordan Kimbrough) [2018609] - gve: fix the wrong AdminQ buffer queue index check (Jordan Kimbrough) [2018609] - gve: Fix GFP flags when allocing pages (Jordan Kimbrough) [2018609] - gve: Add tx|rx-coalesce-usec for DQO (Jordan Kimbrough) [2018609] - gve: Add consumed counts to ethtool stats (Jordan Kimbrough) [2018609] - gve: Implement suspend/resume/shutdown (Jordan Kimbrough) [2018609] - gve: Add optional metadata descriptor type GVE_TXD_MTD (Jordan Kimbrough) [2018609] - gve: remove memory barrier around seqno (Jordan Kimbrough) [2018609] - gve: Update gve_free_queue_page_list signature (Jordan Kimbrough) [2018609] - gve: Move the irq db indexes out of the ntfy block struct (Jordan Kimbrough) [2018609] - gve: Correct order of processing device options (Jordan Kimbrough) [2018609] - gve: fix for null pointer dereference. (Jordan Kimbrough) [2018609] - gve: fix unmatched u64_stats_update_end() (Jordan Kimbrough) [2018609] - gve: Fix off by one in gve_tx_timeout() (Jordan Kimbrough) [2018609] - gve: Add a jumbo-frame device option. (Jordan Kimbrough) [2018609] - gve: Implement packet continuation for RX. (Jordan Kimbrough) [2018609] - gve: Add RX context. (Jordan Kimbrough) [2018609] - gve: Track RX buffer allocation failures (Jordan Kimbrough) [2018609] - gve: Allow pageflips on larger pages (Jordan Kimbrough) [2018609] - gve: Add netif_set_xps_queue call (Jordan Kimbrough) [2018609] - gve: Recover from queue stall due to missed IRQ (Jordan Kimbrough) [2018609] - gve: Do lazy cleanup in TX path (Jordan Kimbrough) [2018609] - gve: Add rx buffer pagecnt bias (Jordan Kimbrough) [2018609] - gve: Switch to use napi_complete_done (Jordan Kimbrough) [2018609] - gve: report 64bit tx_bytes counter from gve_handle_report_stats() (Jordan Kimbrough) [2018609] - gve: fix gve_get_stats() (Jordan Kimbrough) [2018609] - gve: Properly handle errors in gve_assign_qpl (Jordan Kimbrough) [2018609] - gve: Avoid freeing NULL pointer (Jordan Kimbrough) [2018609] - gve: Correct available tx qpl check (Jordan Kimbrough) [2018609] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Jordan Kimbrough) [2018609] - gve: Use kvcalloc() instead of kvzalloc() (Jordan Kimbrough) [2018609] - gve: DQO: avoid unused variable warnings (Jordan Kimbrough) [2018609] - gve: fix the wrong AdminQ buffer overflow check (Jordan Kimbrough) [2018609] - gve: DQO: Remove incorrect prefetch (Jordan Kimbrough) [2018609] - gve: Simplify code and axe the use of a deprecated API (Jordan Kimbrough) [2018609] - gve: Propagate error codes to caller (Jordan Kimbrough) [2018609] - gve: Fix an error handling path in 'gve_probe()' (Jordan Kimbrough) [2018609] - gve: DQO: Fix off by one in gve_rx_dqo() (Jordan Kimbrough) [2018609] - gve: Fix swapped vars when fetching max queues (Jordan Kimbrough) [2018609] - gve: Fix warnings reported for DQO patchset (Jordan Kimbrough) [2018609] - gve: DQO: Add RX path (Jordan Kimbrough) [2018609] - gve: DQO: Add TX path (Jordan Kimbrough) [2018609] - gve: DQO: Configure interrupts on device up (Jordan Kimbrough) [2018609] - gve: DQO: Add ring allocation and initialization (Jordan Kimbrough) [2018609] - gve: DQO: Add core netdev features (Jordan Kimbrough) [2018609] - gve: Update adminq commands to support DQO queues (Jordan Kimbrough) [2018609] - gve: Add DQO fields for core data structures (Jordan Kimbrough) [2018609] - gve: Add dqo descriptors (Jordan Kimbrough) [2018609] - gve: Add support for DQO RX PTYPE map (Jordan Kimbrough) [2018609] - gve: adminq: DQO specific device descriptor logic (Jordan Kimbrough) [2018609] - gve: Introduce per netdev `enum gve_queue_format` (Jordan Kimbrough) [2018609] - gve: Introduce a new model for device options (Jordan Kimbrough) [2018609] - gve: Make gve_rx_slot_page_info.page_offset an absolute offset (Jordan Kimbrough) [2018609] - gve: gve_rx_copy: Move padding to an argument (Jordan Kimbrough) [2018609] - gve: Move some static functions to a common file (Jordan Kimbrough) [2018609] - gve: Correct SKB queue index validation. (Jordan Kimbrough) [2018609] - gve: Upgrade memory barrier in poll routine (Jordan Kimbrough) [2018609] - gve: Add NULL pointer checks when freeing irqs. (Jordan Kimbrough) [2018609] - gve: Update mgmt_msix_idx if num_ntfy changes (Jordan Kimbrough) [2018609] - gve: Check TX QPL was actually assigned (Jordan Kimbrough) [2018609] - net: gve: remove duplicated allowed (Jordan Kimbrough) [2018609] - net: gve: convert strlcpy to strscpy (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing in the tx path (Jordan Kimbrough) [2018609] - gve: Rx Buffer Recycling (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing to the rx path (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing device option (Jordan Kimbrough) [2018609] - net: don't include ethtool.h from netdevice.h (Jordan Kimbrough) [2018609] - gve: Replace zero-length array with flexible-array member (Jordan Kimbrough) [2018609] - gve: Enable Link Speed Reporting in the driver. (Jordan Kimbrough) [2018609] - gve: Use link status register to report link status (Jordan Kimbrough) [2018609] - gve: Batch AQ commands for creating and destroying queues. (Jordan Kimbrough) [2018609] - gve: NIC stats for report-stats and for ethtool (Jordan Kimbrough) [2018609] - gve: Add Gvnic stats AQ command and ethtool show/set-priv-flags. (Jordan Kimbrough) [2018609] - gve: Use dev_info/err instead of netif_info/err. (Jordan Kimbrough) [2018609] - gve: Add stats for gve. (Jordan Kimbrough) [2018609] - gve: Get and set Rx copybreak via ethtool (Jordan Kimbrough) [2018609] - redhat: update ppc64le secureboot signing key (Jarod Wilson) [2109215] - tools: add cpupower daemon reload when installed/upgraded (Jarod Wilson) [2042424] - sfc: fix use after free when disabling sriov (Íñigo Huguet) [2105999] - drm/nouveau: recognise GA103 (Karol Herbst) [1923125] - drm/aperture: Run fbdev removal before internal helpers (Michel Dänzer) [2088410] - drm/i915/ttm: fix 32b build (Michel Dänzer) [2088410] - drm/amd/display: Ensure valid event timestamp for cursor-only commits (Michel Dänzer) [2088410] - drm/amd/pm: Prevent divide by zero (Michel Dänzer) [2088410] - drm/amd/display: Only use depth 36 bpp linebuffers on DCN display engines. (Michel Dänzer) [2088410] - drm/amdkfd: correct the MEC atomic support firmware checking for GC 10.3.7 (Michel Dänzer) [2088410] - drm/i915/selftests: fix subtraction overflow bug (Michel Dänzer) [2088410] - drm/i915/gt: Serialize TLB invalidates with GT resets (Michel Dänzer) [2088410] - drm/i915/gt: Serialize GRDOM access between multiple engine resets (Michel Dänzer) [2088410] - drm/i915/ttm: fix sg_table construction (Michel Dänzer) [2088410] - drm/i915/selftests: fix a couple IS_ERR() vs NULL tests (Michel Dänzer) [2088410] - drm/i915/gvt: IS_ERR() vs NULL bug in intel_gvt_update_reg_whitelist() (Michel Dänzer) [2088410] - drm/i915/guc: ADL-N should use the same GuC FW as ADL-S (Michel Dänzer) [2088410] - drm/i915: fix a possible refcount leak in intel_dp_add_mst_connector() (Michel Dänzer) [2088410] - drm/amdgpu/display: disable prefer_shadow for generic fb helpers (Michel Dänzer) [2088410] - drm/amdgpu: keep fbdev buffers pinned during suspend (Michel Dänzer) [2088410] - drm/fourcc: fix integer type usage in uapi header (Michel Dänzer) [2088410] - drm/i915/dgfx: Disable d3cold at gfx root port (Michel Dänzer) [2088410] - drm/i915/gem: add missing else (Michel Dänzer) [2088410] - drm/amdgpu: To flush tlb for MMHUB of RAVEN series (Michel Dänzer) [2088410] - Revert "drm/amdgpu/display: set vblank_disable_immediate for DC" (Michel Dänzer) [2088410] - drm/amdgpu: fix adev variable used in amdgpu_device_gpu_recover() (Michel Dänzer) [2088410] - drm/amd: Revert "drm/amd/display: keep eDP Vdd on when eDP stream is already enabled" (Michel Dänzer) [2088410] - udmabuf: add back sanity check (Michel Dänzer) [2088410] - drm/amd/display: Fix typo in override_lane_settings (Michel Dänzer) [2088410] - amd/display/dc: Fix COLOR_ENCODING and COLOR_RANGE doing nothing for DCN20+ (Michel Dänzer) [2088410] - drm/i915: Implement w/a 22010492432 for adl-s (Michel Dänzer) [2088410] - drm/i915/uc: remove accidental static from a local variable (Michel Dänzer) [2088410] - drm/amd/display: Cap OLED brightness per max frame-average luminance (Michel Dänzer) [2088410] - drm/amdgpu: Fix GTT size reporting in amdgpu_ioctl (Michel Dänzer) [2088410] - drm/i915/reset: Fix error_state_read ptr + offset use (Michel Dänzer) [2088410] - drm/amdkfd: add pinned BOs to kfd_bo_list (Michel Dänzer) [2088410] - drm/amdkfd: Use mmget_not_zero in MMU notifier (Michel Dänzer) [2088410] - drm/amdgpu: Resolve RAS GFX error count issue after cold boot on Arcturus (Michel Dänzer) [2088410] - drm/amd/display: Read Golden Settings Table from VBIOS (Michel Dänzer) [2088410] - Revert "drm/amd/display: Fix DCN3 B0 DP Alt Mapping" (Michel Dänzer) [2088410] - drm/amdgpu: update VCN codec support for Yellow Carp (Michel Dänzer) [2088410] - drm/amd/display: remove stale config guards (Michel Dänzer) [2088410] - drm/amdgpu/jpeg2: Add jpeg vmid update under IB submit (Michel Dänzer) [2088410] - drm/atomic: Force bridge self-refresh-exit on CRTC switch (Michel Dänzer) [2088410] - drm/bridge: analogix_dp: Support PSR-exit to disable transition (Michel Dänzer) [2088410] - drm/amdkfd:Fix fw version for 10.3.6 (Michel Dänzer) [2088410] - drm/amd/pm: use bitmap_{from,to}_arr32 where appropriate (Michel Dänzer) [2088410] - drm/amd/pm: correct the metrics version for SMU 11.0.11/12/13 (Michel Dänzer) [2088410] - drm/amd/pm: Fix missing thermal throttler status (Michel Dänzer) [2088410] - drm/amd/pm: fix a potential gpu_metrics_table memory leak (Michel Dänzer) [2088410] - drm/radeon: fix a possible null pointer dereference (Michel Dänzer) [2088410] - drm/amd/display: Check zero planes for OTG disable W/A on clock change (Michel Dänzer) [2088410] - drm/amd/display: Check if modulo is 0 before dividing. (Michel Dänzer) [2088410] - drm/amdgpu: fix limiting AV1 to the first instance on VCN3 (Michel Dänzer) [2088410] - drm/bridge: ti-sn65dsi83: Handle dsi_lanes == 0 as invalid (Michel Dänzer) [2088410] - drm/amdgpu: Off by one in dm_dmub_outbox1_low_irq() (Michel Dänzer) [2088410] - gma500: fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/i915/dsi: fix VBT send packet port selection for ICL+ (Michel Dänzer) [2088410] - drm/bridge: analogix_dp: Grab runtime PM reference for DP-AUX (Michel Dänzer) [2088410] - drm/nouveau/kms/nv50-: atom: fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/nouveau/clk: Fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/nouveau/subdev/bus: Ratelimit logging for fault errors (Michel Dänzer) [2088410] - drm/amdgpu/cs: make commands with 0 chunks illegal behaviour. (Michel Dänzer) [2088410] - drm/amdgpu: add beige goby PCI ID (Michel Dänzer) [2088410] - drm/i915: Fix CFI violation with show_dynamic_id() (Michel Dänzer) [2088410] - drm/bridge: it6505: Send DPCD SET_POWER to downstream (Michel Dänzer) [2088410] - drm/panel: panel-simple: Fix proper bpc for AM-1280800N3TZQW-T00H (Michel Dänzer) [2088410] - drm/panel: simple: Add missing bus flags for Innolux G070Y2-L01 (Michel Dänzer) [2088410] - drm/bridge: Fix it6505 Kconfig DRM_DP_AUX_BUS dependency (Michel Dänzer) [2088410] - drm/bridge: Fix error handling in analogix_dp_probe (Michel Dänzer) [2088410] - drm/bridge: anx7625: Use uint8 for lane-swing arrays (Michel Dänzer) [2088410] - drm/amd/amdgpu: Remove static from variable in RLCG Reg RW (Michel Dänzer) [2088410] - drm/amd/amdgpu: Fix asm/hypervisor.h build error. (Michel Dänzer) [2088410] - drm/amd/amdgpu: Only reserve vram for firmware with vega9 MS_HYPERV host. (Michel Dänzer) [2088410] - drm: bridge: icn6211: Fix HFP_HSW_HBP_HI and HFP_MIN handling (Michel Dänzer) [2088410] - drm: bridge: icn6211: Fix register layout (Michel Dänzer) [2088410] - drm/bridge: adv7511: clean up CEC adapter when probe fails (Michel Dänzer) [2088410] - drm/bridge: anx7625: add missing destroy_workqueue() in anx7625_i2c_probe() (Michel Dänzer) [2088410] - drm/edid: fix invalid EDID extension block filtering (Michel Dänzer) [2088410] - drm/bridge: it6505: Fix build error (Michel Dänzer) [2088410] - drm: bridge: it66121: Fix the register page length (Michel Dänzer) [2088410] - drm/vmwgfx: Fix an invalid read (Michel Dänzer) [2088410] - drm/ssd130x: Reduce temporary buffer sizes (Michel Dänzer) [2088410] - drm/ssd130x: Fix rectangle updates (Michel Dänzer) [2088410] - drm/format-helper: Fix XRGB888 to monochrome conversion (Michel Dänzer) [2088410] - drm/format-helper: Rename drm_fb_xrgb8888_to_mono_reversed() (Michel Dänzer) [2088410] - drm/solomon: Make DRM_SSD130X depends on MMU (Michel Dänzer) [2088410] - drm: ssd130x: Always apply segment remap setting (Michel Dänzer) [2088410] - drm: ssd130x: Fix COM scan direction register mask (Michel Dänzer) [2088410] - drm/bridge: anx7625: check the return on anx7625_aux_trans (Michel Dänzer) [2088410] - drm/selftests: missing error code in igt_buddy_alloc_smoke() (Michel Dänzer) [2088410] - drm/bridge_connector: enable HPD by default if supported (Michel Dänzer) [2088410] - drm: fix EDID struct for old ARM OABI format (Michel Dänzer) [2088410] - drm/amdgpu: Move mutex_init(&smu->message_lock) to smu_early_init() (Michel Dänzer) [2088410] - drm/amd/pm: update smartshift powerboost calc for smu13 (Michel Dänzer) [2088410] - drm/amd/pm: update smartshift powerboost calc for smu12 (Michel Dänzer) [2088410] - drm/amdgpu/ucode: Remove firmware load type check in amdgpu_ucode_free_bo (Michel Dänzer) [2088410] - drm/amdgpu/psp: move PSP memory alloc from hw_init to sw_init (Michel Dänzer) [2088410] - drm/amd/pm: fix the compile warning (Michel Dänzer) [2088410] - drm/amdkfd: Fix circular lock dependency warning (Michel Dänzer) [2088410] - drm/plane: Move range check for format_count earlier (Michel Dänzer) [2088410] - drm/amdgpu/sdma: Fix incorrect calculations of the wptr of the doorbells (Michel Dänzer) [2088410] - drm/amd/pm: fix double free in si_parse_power_table() (Michel Dänzer) [2088410] - drm/amdgpu/pm: fix the null pointer while the smu is disabled (Michel Dänzer) [2088410] - drm/amd/display: Disabling Z10 on DCN31 (Michel Dänzer) [2088410] - drm/virtio: fix NULL pointer dereference in virtio_gpu_conn_get_modes (Michel Dänzer) [2088410] - drm/vmwgfx: validate the screen formats (Michel Dänzer) [2088410] - drm/selftests: fix a shift-out-of-bounds bug (Michel Dänzer) [2088410] - drm/i915: Fix -Wstringop-overflow warning in call to intel_read_wm_latency() (Michel Dänzer) [2088410] - selftests/xsk: Disable hanging BPF RES tests (Felix Maurer) [2116940] - NLM: Defend against file_lock changes after vfs_test_lock() (Benjamin Coddington) [2094884] - ice: Fix VF not able to send tagged traffic with no VLAN filters (Petr Oros) [2055446] - ice: Ignore error message when setting same promiscuous mode (Petr Oros) [2100683] - ice: Fix clearing of promisc mode with bridge over bond (Petr Oros) [2100683] - ice: Ignore EEXIST when setting promisc mode (Petr Oros) [2100683] - ice: Fix double VLAN error when entering promisc mode (Petr Oros) [2100683]- fs: dlm: fix build with CONFIG_IPV6 disabled (Alexander Aring) [2036988] - fs: dlm: don't call kernel_getpeername() in error_report() (Alexander Aring) [2036988] - fs: dlm: use sk->sk_socket instead of con->sock (Alexander Aring) [2036988] - x86: intel_epb: Allow model specific normal EPB value (Prarit Bhargava) [2101488] - x86: intel_epb: Do not build when CONFIG_PM is unset (Prarit Bhargava) [2101488] - x86: intel_epb: Take CONFIG_PM into account (Prarit Bhargava) [2101488] - PM / arch: x86: MSR_IA32_ENERGY_PERF_BIAS sysfs interface (Prarit Bhargava) [2101488] - PM / arch: x86: Rework the MSR_IA32_ENERGY_PERF_BIAS handling (Prarit Bhargava) [2101488] - thermal: int340x: Add Raptor Lake PCI device id (Prarit Bhargava) [2064828] - thermal: int340x: Support Raptor Lake (Prarit Bhargava) [2064828] - nvme-fc: restart admin queue if the caller needs to restart queue (Ewan D. Milne) [2095693] - netfilter: nf_tables: replace BUG_ON by element length check (Florian Westphal) [2104497] - netfilter: nf_log: incorrect offset to network header (Florian Westphal) [2104497] - netfilter: nft_set_pipapo: release elements in clone from abort path (Florian Westphal) [2104497] - netfilter: nf_tables: stricter validation of element data (Florian Westphal) [2104497] - netfilter: nft_dynset: restore set element counter when failing to update (Florian Westphal) [2104497] - netfilter: use get_random_u32 instead of prandom (Florian Westphal) [2104497] - netfilter: nf_tables: memleak flow rule from commit path (Florian Westphal) [2104497] - netfilter: nf_tables: hold mutex on netns pre_exit path (Florian Westphal) [2104497] - netfilter: conntrack: re-fetch conntrack after insertion (Florian Westphal) [2104497] - netfilter: flowtable: fix excessive hw offload attempts after failure (Florian Westphal) [2104497] - netfilter: flowtable: avoid possible false sharing (Florian Westphal) [2104497] - netfilter: nf_nat_h323: eliminate anonymous module_init & module_exit (Florian Westphal) [2104497] - netfilter: ip6t_rt: fix rt0_hdr parsing in rt_mt6 (Florian Westphal) [2104497] - netfilter: socket: icmp6: fix use-after-scope (Florian Westphal) [2104497] - netfilter: nft_fib_ipv6: skip ipv6 packets from any to link-local (Florian Westphal) [2104497] - net/mlx5: Remove ConnectX-7 device from the unsupported devices (Kamal Heib) [1899567] - fs: dlm: change posix lock sigint handling (Alexander Aring) [2088499] - fs: dlm: use dlm_plock_info for do_unlock_close (Alexander Aring) [2088499] - fs: dlm: change plock interrupted message to debug again (Alexander Aring) [2088499] - fs: dlm: add pid to debug log (Alexander Aring) [2088499] - fs: dlm: plock use list_first_entry (Alexander Aring) [2088499] - dlm: replace usage of found with dedicated list iterator variable (Alexander Aring) [2088499] - dlm: move global to static inits (Alexander Aring) [2088499] - dlm: remove unnecessary INIT_LIST_HEAD() (Alexander Aring) [2088499] - dlm: improve plock logging if interrupted (Alexander Aring) [2088499] - dlm: rearrange async condition return (Alexander Aring) [2088499] - dlm: cleanup plock_op vs plock_xop (Alexander Aring) [2088499] - dlm: replace sanity checks with WARN_ON (Alexander Aring) [2088499]- selftests: mptcp: make sendfile selftest work (Florian Westphal) [2109046] - selftests: mptcp: more stable simult_flows tests (Florian Westphal) [2109046] - be2net: Remove useless DMA-32 fallback configuration (Petr Oros) [2051324] - ethernet: constify references to netdev->dev_addr in drivers (Petr Oros) [2051324] - ethernet: Remove redundant 'flush_workqueue()' calls (Petr Oros) [2051324] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Petr Oros) [2051324] - ethernet: use eth_hw_addr_set() (Petr Oros) [2051324] - be2net: Use irq_update_affinity_hint() (Petr Oros) [2051324] - RedHat: ASoC: SOF: Intel: do not enable IMR boot when resuming by default (Jaroslav Kysela) [2114931] - ASoC: SOF: make ctx_store and ctx_restore as optional (Jaroslav Kysela) [2114931] - ASoC: SOF: ipc3-topology: Prevent double freeing of ipc_control_data via load_bytes (Jaroslav Kysela) [2114931] - ASoC: amd: yc: Update DMI table entries for AMD platforms (Jaroslav Kysela) [2114931] - ASoC: amd: yc: Update DMI table entries (Jaroslav Kysela) [2114931] - thunderbolt: Add DP OUT resource when DP tunnel is discovered (Torez Smith) [2107601] - iavf: Fix VLAN_V2 addition/rejection (Petr Oros) [2115618] - iavf: Fix deadlock in initialization (Petr Oros) [2054656] - qede: Reduce verbosity of ptp tx timestamp (Manish Chopra) [2080655] - dmaengine: idxd: Fixup merge conflict resolution from upstream (Jerry Snitselaar) [2100927] - dmaengine: idxd: skip clearing device context when device is read-only (Jerry Snitselaar) [2100927] - dmaengine: idxd: add RO check for wq max_transfer_size write (Jerry Snitselaar) [2100927] - dmaengine: idxd: add RO check for wq max_batch_size write (Jerry Snitselaar) [2100927] - dmaengine: idxd: fix device cleanup on disable (Jerry Snitselaar) [2100927] - Revert "dmaengine: idxd: Separate user and kernel pasid enabling" (Jerry Snitselaar) [2100927] - net: atlantic: always deep reset on pm op, fixing up my null deref regression (Foggy Liu) [2039680] - net: atlantic: invert deep par in pm functions, preventing null derefs (Foggy Liu) [2039680] - s390/ap: extend AP change bindings-complete uevent with counter (Mete Durlu) [2114907] - powerpc/memhotplug: Make lmb size 64bit (Diego Domingos) [2116517] - powerpc/drmem: Make lmb_size 64 bit (Diego Domingos) [2116517] - RHEL-only: tools: arm64: Use alternative.h header in sysreg.h (Eric Auger) [2118527]- vmxnet3: do not reschedule napi for rx processing (Kamal Heib) [2117263] - lockdown: also lock down previous kgdb use (Lenny Szubowicz) [2104748] {CVE-2022-21499} - sfc: fix kernel panic when creating VF (Íñigo Huguet) [2114738] - net/mlx4_en: use kzalloc (Amir Tzin) [2049433] - net/mlx4: Delete useless moduleparam include (Amir Tzin) [2049433] - RDMA/mlx4: remove redundant assignment to variable nreq (Amir Tzin) [2049433] - RDMA/mlx4: Delete useless module.h include (Amir Tzin) [2049433] - RDMA/mlx4: Don't continue event handler after memory allocation failure (Amir Tzin) [2049433] - net/mlx4: Use irq_update_affinity_hint() (Amir Tzin) [2049433] - RDMA/mlx4: Use bitmap_alloc() when applicable (Amir Tzin) [2049433] - net/mlx4_en: Update reported link modes for 1/10G (Amir Tzin) [2049433] - ethernet: Remove redundant 'flush_workqueue()' calls (Amir Tzin) [2049433] - mlx4: constify args for const dev_addr (Amir Tzin) [2049433] - mlx4: remove custom dev_addr clearing (Amir Tzin) [2049433] - mlx4: replace mlx4_u64_to_mac() with u64_to_ether_addr() (Amir Tzin) [2049433] - mlx4: replace mlx4_mac_to_u64() with ether_addr_to_u64() (Amir Tzin) [2049433] - net/mlx4_en: avoid one cache line miss to ring doorbell (Amir Tzin) [2049433] - net/mlx4_en: Add XDP_REDIRECT statistics (Amir Tzin) [2049433] - net/mlx4: Use array_size() helper in copy_to_user() (Amir Tzin) [2049433] - net: mlx4: Add support for XDP_REDIRECT (Amir Tzin) [2049433] - net/mellanox: switch from 'pci_' to 'dma_' API (Amir Tzin) [2049433] - net/mlx4: Use ARRAY_SIZE to get an array's size (Amir Tzin) [2049433] - net/mlx4: make the array states static const, makes object smaller (Amir Tzin) [2049433] - dma-direct: use the correct size for dma_set_encrypted() (Jerry Snitselaar) [2105608] - dma-debug: make things less spammy under memory pressure (Jerry Snitselaar) [2105608] - dma-iommu: Check that swiotlb is active before trying to use it (Jerry Snitselaar) [2105608] - cpufreq: powernow-k8: Re-order the init checks (Mark Langsdorf) [2072974] - cpufreq: unify show() and store() naming and use __ATTR_XX (Mark Langsdorf) [2072974] - cpufreq: amd-pstate: Add more tracepoint for AMD P-State module (Mark Langsdorf) [2072974] - cpufreq: CPPC: Fix performance/frequency conversion (Mark Langsdorf) [2072974] - cpufreq: Move to_gov_attr_set() to cpufreq.h (Mark Langsdorf) [2072974] - cpufreq: use default_groups in kobj_type (Mark Langsdorf) [2072974] - cpufreq: Fix initialization of min and max frequency QoS requests (Mark Langsdorf) [2072974] - cpufreq: Fix a comment in cpufreq_policy_free (Mark Langsdorf) [2072974] - cpufreq: Fix get_cpu_device() failure in add_cpu_dev_symlink() (Mark Langsdorf) [2072974] - cpufreq: schedutil: Destroy mutex before kobject_put() frees the memory (Mark Langsdorf) [2072974] - cpufreq: sh: Remove sh_cpufreq_cpu_ready() (Mark Langsdorf) [2072974] - cpufreq: acpi: Remove acpi_cpufreq_cpu_ready() (Mark Langsdorf) [2072974] - cpufreq: Fix fall-through warning for Clang (Mark Langsdorf) [2072974] - cpufreq: Remove ->resolve_freq() (Mark Langsdorf) [2072974] - cpufreq: Reuse cpufreq_driver_resolve_freq() in __cpufreq_driver_target() (Mark Langsdorf) [2072974] - cpufreq: Remove the ->stop_cpu() driver callback (Mark Langsdorf) [2072974] - cpufreq: powernv: Migrate to ->exit() callback instead of ->stop_cpu() (Mark Langsdorf) [2072974] - cpufreq: Make cpufreq_online() call driver->offline() on errors (Mark Langsdorf) [2072974] - cpufreq: sh: Remove unused linux/sched.h headers (Mark Langsdorf) [2072974] - cpufreq: stats: Clean up local variable in cpufreq_stats_create_table() (Mark Langsdorf) [2072974] - cpufreq: Remove unused for_each_policy macro (Mark Langsdorf) [2072974] - cpufreq: Rudimentary typos fix in the file s5pv210-cpufreq.c (Mark Langsdorf) [2072974] - ACPI: CPPC: Fix enabling CPPC on AMD systems with shared memory (Mark Langsdorf) [2067296] - ACPI: CPPC: Don't require flexible address space if X86_FEATURE_CPPC is supported (Mark Langsdorf) [2067296] - ACPI: CPPC: Don't require _OSC if X86_FEATURE_CPPC is supported (Mark Langsdorf) [2067296] - x86/ACPI: CPPC: Rename cppc_msr.c to cppc.c (Mark Langsdorf) [2067296] - ACPI: CPPC: Only probe for _CPC if CPPC v2 is acked (Mark Langsdorf) [2067296] - ACPI: CPPC: Assume no transition latency if no PCCT (Mark Langsdorf) [2067296] - ACPI: bus: Set CPPC _OSC bits for all and when CPPC_LIB is supported (Mark Langsdorf) [2067296] - ACPI: CPPC: Check _OSC for flexible address space (Mark Langsdorf) [2067296] - ACPI: processor: idle: Avoid falling back to C3 type C-states (Mark Langsdorf) [2067296] - Revert "ACPI: processor: idle: Only flush cache on entering C3" (Mark Langsdorf) [2067296] - ACPI: CPPC: Change default error code and clean up debug messages in probe (Mark Langsdorf) [2067296] - ACPI: CPPC: Avoid out of bounds access when parsing _CPC data (Mark Langsdorf) [2067296] - ACPI: tables: Make LAPIC_ADDR_OVR address readable in message (Mark Langsdorf) [2067296] - ACPI: IPMI: replace usage of found with dedicated list iterator variable (Mark Langsdorf) [2067296] - ACPI, APEI: Use the correct variable for sizeof() (Mark Langsdorf) [2067296] - clocksource: acpi_pm: fix return value of __setup handler (Mark Langsdorf) [2067296] - ACPI / x86: Add support for LPS0 callback handler (Mark Langsdorf) [2067296] - ACPI: bus: Avoid using CPPC if not supported by firmware (Mark Langsdorf) [2067296] - Revert "ACPI: Pass the same capabilities to the _OSC regardless of the query flag" (Mark Langsdorf) [2067296] - ACPI: video: Force backlight native for Clevo NL5xRU and NL5xNU (Mark Langsdorf) [2067296] - PM: hibernate: Honour ACPI hardware signature by default for virtual guests (Mark Langsdorf) [2067296] - ACPI: NFIT: Remove block aperture support (Mark Langsdorf) [2067296] - x86, ACPI: rename init_freq_invariance_cppc() to arch_init_invariance_cppc() (Mark Langsdorf) [2067296] - ACPI/APEI: Limit printable size of BERT table data (Mark Langsdorf) [2067296] - ACPI: APEI: fix return value of __setup handlers (Mark Langsdorf) [2067296] - ACPI / x86: Add skip i2c clients quirk for Lenovo Yoga Tablet 1050F/L (Mark Langsdorf) [2067296] - ACPI / x86: Add skip i2c clients quirk for Nextbook Ares 8 (Mark Langsdorf) [2067296] - ACPICA: Avoid walking the ACPI Namespace if it is not there (Mark Langsdorf) [2067296] - ACPI: processor idle: Check for architectural support for LPI (Mark Langsdorf) [2067296] - ACPI: battery: Add device HID and quirk for Microsoft Surface Go 3 (Mark Langsdorf) [2067296] - ACPI: fan: Add additional attributes for fine grain control (Mark Langsdorf) [2067296] - ACPI: fan: Properly handle fine grain control (Mark Langsdorf) [2067296] - ACPI: fan: Optimize struct acpi_fan_fif (Mark Langsdorf) [2067296] - ACPI: fan: Separate file for attributes creation (Mark Langsdorf) [2067296] - ACPI: fan: Fix error reporting to user space (Mark Langsdorf) [2067296] - ACPI: clean up double words in two comments (Mark Langsdorf) [2067296] - ACPI: property: Get rid of redundant 'else' (Mark Langsdorf) [2067296] - ACPI: EC: Rearrange code in acpi_ec_submit_event() (Mark Langsdorf) [2067296] - ACPI: EC: Reduce indentation level in acpi_ec_submit_event() (Mark Langsdorf) [2067296] - ACPI: EC: Do not return result from advance_transaction() (Mark Langsdorf) [2067296] - ACPI: EC / PM: Print additional debug message in acpi_ec_dispatch_gpe() (Mark Langsdorf) [2067296] - ACPI: PM: Print additional debug message in acpi_s2idle_wake() (Mark Langsdorf) [2067296] - ACPI: tables: Add CEDT signature to the list of known tables (Mark Langsdorf) [2067296] - ACPI: properties: Consistently return -ENOENT if there are no more references (Mark Langsdorf) [2067296] - ACPI: OSL: Fix and clean up acpi_os_read/write_port() (Mark Langsdorf) [2067296] - ACPICA: Use uintptr_t and offsetof() in Linux kernel builds (Mark Langsdorf) [2067296] - ACPI: processor: idle: Only flush cache on entering C3 (Mark Langsdorf) [2067296] - intel_idle: Add AlderLake support (Lenny Szubowicz) [2075709] - intel_idle: Fix SPR C6 optimization (Lenny Szubowicz) [2075709] - intel_idle: Fix the 'preferred_cstates' module parameter (Lenny Szubowicz) [2075709] - cpuidle: intel_idle: Update intel_idle() kerneldoc comment (Lenny Szubowicz) [2075709] - ice: Fix promiscuous mode not turning off (Petr Oros) [2088787] - ice: Introduce enabling promiscuous mode on multiple VF's (Petr Oros) [2088787] - PCI/IOV: Add pci_iov_get_pf_drvdata() to allow VF reaching the drvdata of a PF (Myron Stowe) [2106259] - PCI/IOV: Add pci_iov_vf_id() to get VF index (Myron Stowe) [2106259] - redhat: enable CONFIG_MAXLINEAR_GPHY as module (Petr Oros) [2071856] - net: phy: enhance GPY115 loopback disable function (Petr Oros) [2071856] - net: phy: add Maxlinear GPY115/21x/24x driver (Petr Oros) [2071856] - cgroup: Use css_tryget() instead of css_tryget_online() in task_get_css() (Vratislav Bendel) [2111491] - ASoC: mediatek: Fix error handling in mt8173_max98090_dev_probe (Jaroslav Kysela) [2065580] - ASoC: amd: Add support for enabling DMIC on acp6x via _DSD (Jaroslav Kysela) [2065580] - soundwire: intel: prevent pm_runtime resume prior to system suspend (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk for Fiero SC-01 (fw v1.0.0) (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk for Fiero SC-01 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirks for MacroSilicon MS2100/MS2106 devices (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Add ASP TX3/4 source to register patch (Jaroslav Kysela) [2065580] - ASoC: dapm: Initialise kcontrol data for mux/demux controls (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca: fix kernel NULL pointer dereference when IO error (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Correct some control names (Jaroslav Kysela) [2065580] - ASoC: wm5110: Fix DRE control (Jaroslav Kysela) [2065580] - ASoC: wm_adsp: Fix event for preloader (Jaroslav Kysela) [2065580] - ASoC: Intel: bytcr_wm5102: Fix GPIO related probe-ordering problem (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-loader: Clarify the cl_dsp_init() flow (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-loader: Make sure that the fw load sequence is followed (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-dsp: Expose hda_dsp_core_power_up() (Jaroslav Kysela) [2065580] - ASoC: codecs: rt700/rt711/rt711-sdca: initialize workqueues in probe (Jaroslav Kysela) [2065580] - ASoC: rt7*-sdw: harden jack_detect_handler (Jaroslav Kysela) [2065580] - ASoC: rt711: fix calibrate mutex initialization (Jaroslav Kysela) [2065580] - ASoC: Intel: sof_sdw: handle errors on card registration (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca-sdw: fix calibrate mutex initialization (Jaroslav Kysela) [2065580] - ASoC: Realtek/Maxim SoundWire codecs: disable pm_runtime on remove (Jaroslav Kysela) [2065580] - ASoC: ops: Fix off by one in range control validation (Jaroslav Kysela) [2065580] - ASoC: Intel: Skylake: Correct the handling of fmt_config flexible array (Jaroslav Kysela) [2065580] - ASoC: Intel: Skylake: Correct the ssp rate discovery in skl_get_ssp_clks() (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc221 (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: fix mute/micmute LEDs for HP machines (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671 (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Fix headset mic for Acer SF313-51 (Jaroslav Kysela) [2065580] - ALSA: hda/conexant: Apply quirk for another HP ProDesk 600 G3 model (Jaroslav Kysela) [2065580] - ALSA: hda - Add fixup for Dell Latitidue E5430 (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda: Fix compressed stream position tracking (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Move and correct size checks in sof_ipc3_control_load_bytes() (Jaroslav Kysela) [2065580] - ASoC: codecs: rt700/rt711/rt711-sdca: resume bus/codec in .set_jack_detect (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ASoC: rt711: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ALSA: cs46xx: Fix missing snd_card_free() call at probe error (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo L140PU (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Workarounds for Behringer UMC 204/404 HD (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo NS50PU (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo PD70PNT (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Apply fixup for Lenovo Yoga Duet 7 properly (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - ALC897 headset MIC no sound (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add mute LED quirk for HP Omen laptop (Jaroslav Kysela) [2065580] - ALSA: hda/conexant: Fix missing beep setup (Jaroslav Kysela) [2065580] - ALSA: hda: Fix discovery of i915 graphics PCI device (Jaroslav Kysela) [2065580] - ALSA: hda/via: Fix missing beep setup (Jaroslav Kysela) [2065580] - ALSA: memalloc: Drop x86-specific hack for WC allocations (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Add HW8326 support (Jaroslav Kysela) [2065580] - ALSA: hda: MTL: add HD Audio PCI ID and HDMI codec vendor ID (Jaroslav Kysela) [2065580] - ASoC: es8328: Fix event generation for deemphasis control (Jaroslav Kysela) [2065580] - ASoC: cs42l51: Correct minimum value for SX volume control (Jaroslav Kysela) [2065580] - ASoC: cs42l56: Correct typo in minimum level for SX volume controls (Jaroslav Kysela) [2065580] - ASoC: cs42l52: Correct TLV for Bypass Volume (Jaroslav Kysela) [2065580] - ASoC: cs53l30: Correct number of volume levels on SX controls (Jaroslav Kysela) [2065580] - ASoC: cs35l36: Update digital volume TLV (Jaroslav Kysela) [2065580] - ASoC: cs42l52: Fix TLV scales for mixer controls (Jaroslav Kysela) [2065580] - ASoC: Intel: cirrus-common: fix incorrect channel mapping (Jaroslav Kysela) [2065580] - ASoC: nau8822: Add operation for internal PLL off and on (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for HP Dev One (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo Yoga DuetITL 2021 (Jaroslav Kysela) [2065580] - ALSA: hda/conexant - Fix loopback issue with CX20632 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Set up (implicit) sync for Saffire 6 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Skip generic sync EP parse for secondary EP (Jaroslav Kysela) [2065580] - ASoC: rt5640: Do not manipulate pin "Platform Clock" if the "Platform Clock" is not in the DAPM (Jaroslav Kysela) [2065580] - ASoC: SOF: amd: Fixed Build error (Jaroslav Kysela) [2065580] - ASoC: rt5514: Fix event generation for "DSP Voice Wake Up" control (Jaroslav Kysela) [2065580] - ASoC: max98090: Move check for invalid values before casting in max98090_put_enab_tlv() (Jaroslav Kysela) [2065580] - ALSA: pcm: Check for null pointer of pointer substream before dereferencing it (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Set scontrol->priv to NULL after freeing it (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Fix an out-of-bounds access in otp_packed_element_t (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Move generic implicit fb quirk entries into quirks.c (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk bits for enabling/disabling generic implicit fb (Jaroslav Kysela) [2065580] - ASoC: amd: Add driver data to acp6x machine driver (Jaroslav Kysela) [2065580] - ASoC: rt1015p: remove dependency on GPIOLIB (Jaroslav Kysela) [2065580] - ASoC: max98357a: remove dependency on GPIOLIB (Jaroslav Kysela) [2065580] - ASoC: rt5645: Fix errorenous cleanup order (Jaroslav Kysela) [2065580] - ASoC: SOF: amd: add missing platform_device_unregister in acp_pci_rn_probe (Jaroslav Kysela) [2065580] - ASoC: Intel: sof_ssp_amp: fix no DMIC BE Link on Chromebooks (Jaroslav Kysela) [2065580] - ASoC: tscs454: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Correct get_control_data for non bytes payload (Jaroslav Kysela) [2065580] - ASoC: dapm: Don't fold register value changes into notifications (Jaroslav Kysela) [2065580] - ASoC: Intel: bytcr_rt5640: Add quirk for the HP Pro Tablet 408 (Jaroslav Kysela) [2065580] - ALSA: jack: Access input_dev under mutex (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix microphone noise on ASUS TUF B550M-PLUS (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9520 laptop (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Add new type for ALC245 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Optimize TEAC clock quirk (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Configure sync endpoints before data (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add missing ep_idx in fixed EP quirks (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Workaround for clock setup on TEAC devices (Jaroslav Kysela) [2065580] - ALSA: ctxfi: Add SB046x PCI ID (Jaroslav Kysela) [2065580] - NFS: Fix initialisation of nfs_client cl_flags field (Scott Mayhew) [2114577] - Documentation: Add an explanation of NFSv4 client identifiers (Dave Wysochanski) [1801326]- crypto: chelsio/chcr - Remove useless MODULE_VERSION (Rahul Lakkireddy) [2105817] - crypto: chelsio - remove unused function (Rahul Lakkireddy) [2105817] - crypto: chelsio - Read rxchannel-id from firmware (Rahul Lakkireddy) [2105817] - crypto: chelsio - Fix some kernel-doc issues (Rahul Lakkireddy) [2105817] - crypto: chelsio - remove set but not used variable 'adap' (Rahul Lakkireddy) [2105817] - dm raid: fix address sanitizer warning in raid_resume (Benjamin Marzinski) [2115118] - dm raid: fix address sanitizer warning in raid_status (Benjamin Marzinski) [2115118] - dm: return early from dm_pr_call() if DM device is suspended (Benjamin Marzinski) [2115118] - dm thin: fix use-after-free crash in dm_sm_register_threshold_callback (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks discarded, not number of discard bios (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks written, not number of write bios (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks read, not number of read bios (Benjamin Marzinski) [2115118] - dm writecache: return void from functions (Benjamin Marzinski) [2115118] - dm kcopyd: use __GFP_HIGHMEM when allocating pages (Benjamin Marzinski) [2115118] - dm writecache: set a default MAX_WRITEBACK_JOBS (Benjamin Marzinski) [2115118] - dm raid: fix KASAN warning in raid5_add_disks (Benjamin Marzinski) [2115118] - dm raid: fix KASAN warning in raid5_remove_disk (Benjamin Marzinski) [2115118] - KVM: x86: do not report preemption if the steal time cache is stale (Vitaly Kuznetsov) [2115240] - KVM: x86: revalidate steal time cache if MSR value changes (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Always enable TSC scaling for L2 when it was enabled for L1 (Vitaly Kuznetsov) [2115240] - KVM: x86: Fully initialize 'struct kvm_lapic_irq' in kvm_pv_kick_cpu_op() (Vitaly Kuznetsov) [2115240] - KVM: SEV: Init target VMCBs in sev_migrate_from (Vitaly Kuznetsov) [2115240] - KVM: SVM: fix tsc scaling cache logic (Vitaly Kuznetsov) [2115240] - KVM: x86/mmu: Check every prev_roots in __kvm_mmu_free_obsolete_roots() (Vitaly Kuznetsov) [2115240] - KVM: LAPIC: Drop pending LAPIC timer injection when canceling the timer (Vitaly Kuznetsov) [2115240] - KVM: x86: avoid calling x86 emulator without a decoded instruction (Vitaly Kuznetsov) [2115240] - KVM: SVM: Use kzalloc for sev ioctl interfaces to prevent kernel data leak (Vitaly Kuznetsov) [2115240] - KVM: x86: avoid loading a vCPU after .vm_destroy was called (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Clear IDT vectoring on nested VM-Exit for double/triple fault (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Leave most VM-Exit info fields unmodified on failed VM-Entry (Vitaly Kuznetsov) [2115240] - KVM: x86: Drop WARNs that assert a triple fault never "escapes" from L2 (Vitaly Kuznetsov) [2115240] - sched/deadline: Fix BUG_ON condition for deboosted tasks (Phil Auld) [2111860] - scsi: qla2xxx: Fix excessive I/O error messages by default (Nilesh Javali) [2100728] - scsi: qla2xxx: Fix erroneous mailbox timeout after PCI error injection (Nilesh Javali) [2044160] - drm/radeon: fix build rules of *_reg_safe.h (Michel Dänzer) [2006451] - RDMA/irdma: Fix sleep from invalid context BUG (Kamal Heib) [2097318] - RDMA/irdma: Do not advertise 1GB page size for x722 (Kamal Heib) [2097318] - RDMA/cm: Fix memory leak in ib_cm_insert_listen (Kamal Heib) [2097318] - RDMA/hfi1: Fix potential integer multiplication overflow errors (Kamal Heib) [2097318] - RDMA/hfi1: Prevent use of lock before it is initialized (Kamal Heib) [2097318] - RDMA/rxe: Fix an error handling path in rxe_get_mcg() (Kamal Heib) [2097318] - RDMA/rxe: Generate a completion for unsupported/invalid opcode (Kamal Heib) [2097318] - scsi: target: cxgbit: Enable Delayed ACK (Rahul Lakkireddy) [2105813] - scsi: target: cxgbit: Increase max DataSegmentLength (Rahul Lakkireddy) [2105813] - cxgb4: Use the bitmap API to allocate bitmaps (Rahul Lakkireddy) [2105806] - cxgb4: Fix typo in string (Rahul Lakkireddy) [2105806] - cxgb4/cxgb4vf: Fix typo in comments (Rahul Lakkireddy) [2105806] - cxgb4vf: remove unexpected word "the" (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: Avoid potential negative array offset (Rahul Lakkireddy) [2105806] - libcxgb: Don't accidentally set RTO_ONLINK in cxgb_find_route() (Rahul Lakkireddy) [2105806] - cxgb4vf: Remove useless DMA-32 fallback configuration (Rahul Lakkireddy) [2105806] - cxgb4: Remove useless DMA-32 fallback configuration (Rahul Lakkireddy) [2105806] - cxgb4: allow reading unrecognized port module eeprom (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Fix an error code in cxgb4vf_pci_probe() (Rahul Lakkireddy) [2105806] - cxgb4: Use struct_group() for memcpy() region (Rahul Lakkireddy) [2105806] - cxgb4: fix eeprom len when diagnostics not implemented (Rahul Lakkireddy) [2105806] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Rahul Lakkireddy) [2105806] - ethernet: chelsio: use eth_hw_addr_set() (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Make use of the helper function dev_err_probe() (Rahul Lakkireddy) [2105806] - cxgb4: improve printing NIC information (Rahul Lakkireddy) [2105806] - net: chelsio: switch from 'pci_' to 'dma_' API (Rahul Lakkireddy) [2105806] - cxgb4: make the array match_all_mac static, makes object smaller (Rahul Lakkireddy) [2105806] - cxgb4: fix IRQ free race during driver unload (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: use eth_zero_addr() to assign zero address (Rahul Lakkireddy) [2105806] - cxgb4: Fix -Wunused-const-variable warning (Rahul Lakkireddy) [2105806] - cxgb4: clip_tbl: use list_del_init instead of list_del/INIT_LIST_HEAD (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Fix wrong function name in comments (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: Fix wrong function name in comments (Rahul Lakkireddy) [2105806] - cxgb4: Remove redundant NULL check (Rahul Lakkireddy) [2105806] - net: ethernet: chelsiofix: spelling typo of 'rewriteing' (Rahul Lakkireddy) [2105806] - net: don't include ethtool.h from netdevice.h (Rahul Lakkireddy) [2105806] - cxgb4vf: convert to use DEFINE_SEQ_ATTRIBUTE macro (Rahul Lakkireddy) [2105806] - cxgb4vf: fix t4vf_eth_xmit()'s return type (Rahul Lakkireddy) [2105806] - cxgb4vf: update kernel-doc line comments (Rahul Lakkireddy) [2105806] - cxgb4: remove duplicate headers (Rahul Lakkireddy) [2105806] - cxgb4/cxgb4vf: Remove superfluous void * cast in debugfs_create_file() call (Rahul Lakkireddy) [2105806] - cxgb4: Add missing annotation for service_ofldq() (Rahul Lakkireddy) [2105806] - net: cxgb4vf: reject unsupported coalescing params (Rahul Lakkireddy) [2105806] - scsi: mpt3sas: Stop fw fault watchdog work item during system shutdown (Tomas Henzl) [2106413] - drm/amd/display: Fix new dmub notification enabling in DM (Mika Penttilä) [2107632] - Revert "crypto: chelsio - Inline single pdu only" (Rahul Lakkireddy) [2105818] - crypto/chcr: Moving chelsio's inline ipsec functionality to /drivers/net (Rahul Lakkireddy) [2105818] - net/xfrm: IPsec tunnel mode fix inner_ipproto setting in sec_path (Sabrina Dubroca) [2107200] - scsi: ch: Make it possible to open a ch device multiple times again (Ewan D. Milne) [2108649] - lpfc updates for rh8.7 14.0.0.15 (Paul Ely) [2107726] - scsi: lpfc: Copyright updates for 14.2.0.5 patches (Paul Ely) [2107726] - scsi: lpfc: Fix lost NVMe paths during LIF bounce stress test (Paul Ely) [2107726] - scsi: lpfc: Fix attempted FA-PWWN usage after feature disable (Paul Ely) [2107726] - scsi: lpfc: Fix possible memory leak when failing to issue CMF WQE (Paul Ely) [2107726] - scsi: lpfc: Remove extra atomic_inc on cmd_pending in queuecommand after VMID (Paul Ely) [2107726] - scsi: lpfc: Prevent buffer overflow crashes in debugfs with malformed user input (Paul Ely) [2107726] - scsi: lpfc: Fix uninitialized cqe field in lpfc_nvme_cancel_iocb() (Paul Ely) [2107726] - scsi: lpfc: Allow reduced polling rate for nvme_admin_async_event cmd completion (Paul Ely) [2107726] - scsi: lpfc: Fix port stuck in bypassed state after LIP in PT2PT topology (Paul Ely) [2107726] - scsi: lpfc: Resolve NULL ptr dereference after an ELS LOGO is aborted (Paul Ely) [2107726] - scsi: lpfc: Correct BDE type for XMIT_SEQ64_WQE in lpfc_ct_reject_event() (Paul Ely) [2107726] - scsi: qla2xxx: Fix imbalance vha->vref_count (Nilesh Javali) [2108964] - scsi: smartpqi: Update version to 2.1.18-045 (Don Brace) [2101548] - scsi: smartpqi: Update copyright to current year (Don Brace) [2101548] - scsi: smartpqi: Add ctrl ready timeout module parameter (Don Brace) [2101548] - scsi: smartpqi: Update deleting a LUN via sysfs (Don Brace) [2101548] - scsi: smartpqi: Add module param to disable managed ints (Don Brace) [2101548] - scsi: smartpqi: Fix RAID map race condition (Don Brace) [2101548] - scsi: smartpqi: Fix DMA direction for RAID requests (Don Brace) [2101548] - scsi: smartpqi: Stop logging spurious PQI reset failures (Don Brace) [2101548] - scsi: smartpqi: Add PCI IDs for Lenovo controllers (Don Brace) [2101548] - scsi: smartpqi: Add PCI ID for Adaptec SmartHBA 2100-8i (Don Brace) [2101548] - scsi: smartpqi: Fix PCI control linkdown system hang (Don Brace) [2101548] - scsi: smartpqi: Add driver support for multi-LUN devices (Don Brace) [2101548] - scsi: smartpqi: Close write read holes (Don Brace) [2101548] - scsi: smartpqi: Add PCI IDs for ramaxel controllers (Don Brace) [2101548] - scsi: smartpqi: Add controller fw version to console log (Don Brace) [2101548] - scsi: smartpqi: Shorten drive visibility after removal (Don Brace) [2101548] - scsi: smartpqi: Fix typo in comment (Don Brace) [2101548] - docs: kdump: Update the crashkernel description for arm64 (Pingfan Liu) [2093920] - of: Support more than one crash kernel regions for kexec -s (Pingfan Liu) [2093920] - of: kexec: Remove FDT_PROP_* definitions (Pingfan Liu) [2093920] - arm64: kexec: Fix missing error code 'ret' warning in load_other_segments() (Pingfan Liu) [2093920] - arm64: Use common of_kexec_alloc_and_setup_fdt() (Pingfan Liu) [2093920] - of: Add a common kexec FDT setup function (Pingfan Liu) [2093920] - arm64: Use ELF fields defined in 'struct kimage' (Pingfan Liu) [2093920] - kexec: Move ELF fields to struct kimage (Pingfan Liu) [2093920] - of: fdt: Add memory for devices by DT property "linux,usable-memory-range" (Pingfan Liu) [2093920] - efi: apply memblock cap after memblock_add() (Pingfan Liu) [2093920] - of: fdt: Aggregate the processing of "linux,usable-memory-range" (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_memory() to call directly (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_root() to call directly (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_chosen() to call directly (Pingfan Liu) [2093920] - of: fdt: Rename reserve_elfcorehdr() to fdt_reserve_elfcorehdr() (Pingfan Liu) [2093920] - of: fdt: Add generic support for handling elf core headers property (Pingfan Liu) [2093920] - arm64: kdump: Reimplement crashkernel=X (Pingfan Liu) [2093920] - arm64: Use insert_resource() to simplify code (Pingfan Liu) [2093920] - kdump: return -ENOENT if required cmdline option does not exist (Pingfan Liu) [2093920]- sched: Add WARN_ONCE_SAFE for use during critical scheduler code. (Phil Auld) [2095898] - printk: remove NMI tracking [partial] (Phil Auld) [2095898] - ext4: make sure ext4_append() always allocates new block (Lukas Czerner) [2070216] - ext4: check if directory block is within i_size (Lukas Czerner) [2070216] - redhat: nvme/tcp mistakenly uses blk_mq_tag_to_rq(nvme_tcp_tagset(queue)) (John Meneghini) [2112036] - RDMA/cxgb4: Set queue pair state when being queried (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use non-atomic bitmap functions when possible (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use bitmap_set() when applicable (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use bitmap_zalloc() when applicable (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use helper function to set GUIDs (Rahul Lakkireddy) [2105809] - RDMA/iw_cxgb4: Fix refcount underflow while destroying cqs. (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use refcount_t instead of atomic_t for reference counting (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Fix missing error code in create_qp() (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Remove useless assignments (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: add missing qpid increment (Rahul Lakkireddy) [2105809] - RDMA/iw_cxgb4: Use DEFINE_SPINLOCK() for spinlock (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use sizeof() notation (Rahul Lakkireddy) [2105809] - drm/amd/display: Ignore First MST Sideband Message Return Error (Michel Dänzer) [2089853] - sched, cpuset: Fix dl_cpu_busy() panic due to empty cs->cpus_allowed (Waiman Long) [2115165] - sched/deadline: Merge dl_task_can_attach() and dl_cpu_busy() (Waiman Long) [2115165] - ibmvnic: Properly dispose of all skbs during a failover. (Steve Best) [2107560] - redhat/configs: Enable CONFIG_AMD_HSMP for x86_64 (John Allen) [2072233] - platform/x86: Add AMD system management interface (John Allen) [2072233] - ice: do not setup vlan for loopback VSI (Petr Oros) [2103845] - ice: check (DD | EOF) bits on Rx descriptor rather than (EOP | RS) (Petr Oros) [2103845] - ice: Fix VSIs unable to share unicast MAC (Petr Oros) [2080033] - ice: Fix max VLANs available for VF (Petr Oros) [2112298] - ice: change devlink code to read NVM in blocks (Petr Oros) [2093904] - ALSA: Enable more Intel and AMD x86 chipset drivers (Jaroslav Kysela) [2065575] - ALSA: Remove module symbols namespace (Jaroslav Kysela) [2065575] - ASoC: SOF: tokens: add token for Mediatek AFE (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Expand firmware loading search options (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add trace caps to speaker protection FW (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Make compressed buffers optional (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Correct control read size when parsing compressed buffer (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add support for "toggle" preloaders (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Fix overrun of unterminated control name string (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Clear core reset for cache (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Move lockdep asserts to avoid potential null pointer (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Allow creation of event controls (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add offset to cs_dsp read/write (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Clarify some kernel doc comments (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Perform NULL check in cs_dsp_coeff_write/read_ctrl (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add support for rev 2 coefficient files (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Print messages from bin files (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add pre_run callback (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add version checks on coefficient loading (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add lockdep asserts to interface functions (Jaroslav Kysela) [2065575] - firmware: cs_dsp: tidy includes in cs_dsp.c and cs_dsp.h (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove the wmfw_add_ctl helper function (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: wm_adsp_control_add() error: uninitialized symbol 'ret' (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: remove a repeated including (Jaroslav Kysela) [2065575] - firmware: cs_dsp: add driver to support firmware loading on Cirrus Logic DSPs (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate wm_adsp specifics in cs_dsp_client_ops (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Split out struct cs_dsp from struct wm_adsp (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: move firmware loading to client (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Pass firmware names as parameters when starting DSP core (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move check of dsp->running to better place (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate generic cs_dsp_coeff_ctl handling (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move sys_config_size to wm_adsp (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Split DSP power operations into helper functions (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate some ASoC and generic functions (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Introduce cs_dsp logging macros (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Rename generic DSP support (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Cancel ongoing work when removing controls (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Switch to using wm_coeff_read_ctrl for compressed buffers (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move check for control existence (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove use of snd_ctl_elem_type_t (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Put debugfs_remove_recursive back in (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Let soc_cleanup_component_debugfs remove debugfs (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove pointless string comparison (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add CCM_CORE_RESET to Halo start core (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Correct wm_coeff_tlv_get handling (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Fix control name parsing for multi-fw (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Fix uninitialized variable warnings (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Use snd_ctl_elem_type_t for control types (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Only use __be32 for big-endian data (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Improve handling of raw byte streams (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control() (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: fix error return code in wm_adsp_load() (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add the binding include file for the HDA header support (Jaroslav Kysela) [2065575] - ALSA: uapi: use C90 comment style instead of C99 style (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: Add RaptorLake PCI IDs (Jaroslav Kysela) [2065575] - ALSA: hda/i915: Fix one too many pci_dev_put() (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: update AlderLake PCI IDs (Jaroslav Kysela) [2065575] - ALSA: hda/i915 - skip acomp init if no matching display (Jaroslav Kysela) [2065575] - ALSA: hda/i915 - avoid hung task timeout in i915 wait (Jaroslav Kysela) [2065575] - ALSA: intel-dspconfig: add ES8336 support for CNL (Jaroslav Kysela) [2065575] - ALSA: intel-dsp-config: add more ACPI HIDs for ES83x6 devices (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: reorder the config table (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: add JasperLake support (Jaroslav Kysela) [2065575] - ALSA: hda: Simplify DMIC-in-NHLT check (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: x86: Use standard mmap helper for Intel HDMI LPE audio (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Fix reference to PCM buffer address (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Check for error num after setting mask (Jaroslav Kysela) [2065575] - tools include uapi: Update asound.h copy (Jaroslav Kysela) [2065575] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2065575] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2065575] - ALSA: hda: Add helper macros for DSP capable devices (Jaroslav Kysela) [2065575] - ALSA: intel-nhlt: add helper to detect SSP link mask (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: add information on I2S/TDM link mask (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: fix kernel-doc descriptor (Jaroslav Kysela) [2065575] - ASoC: SOF: fix 32 signed bit overflow (Jaroslav Kysela) [2065575] - ALSA: hda: Add snd_hdac_ext_bus_link_at() helper (Jaroslav Kysela) [2065575] - ALSA: cleanup double word in comment (Jaroslav Kysela) [2065575] - ASoC: SOF: add _D3_PERSISTENT flag to fw_ready message (Jaroslav Kysela) [2065575] - ALSA: HDA: hdac_ext_stream: use consistent prefixes for variables (Jaroslav Kysela) [2065575] - ipc: debug: Add shared memory heap to memory scan (Jaroslav Kysela) [2065575] - ALSA: pcm: comment about relation between msbits hw parameter and [S|U]32 formats (Jaroslav Kysela) [2065575] - ALSA: hda: Fill gaps in NHLT endpoint-interface (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: Add new IPC command to free trace DMA (Jaroslav Kysela) [2065575] - soundwire: stream: make enable/disable/deprepare idempotent (Jaroslav Kysela) [2065575] - soundwire: stream: sdw_stream_add_ functions can be called multiple times (Jaroslav Kysela) [2065575] - soundwire: stream: introduce sdw_slave_rt_find() helper (Jaroslav Kysela) [2065575] - soundwire: stream: separate alloc and config within sdw_stream_add_xxx() (Jaroslav Kysela) [2065575] - soundwire: stream: move list addition to sdw_slave_alloc_rt() (Jaroslav Kysela) [2065575] - soundwire: stream: rename and move master/slave_rt_free routines (Jaroslav Kysela) [2065575] - soundwire: stream: group sdw_stream_ functions (Jaroslav Kysela) [2065575] - soundwire: stream: split sdw_alloc_slave_rt() in alloc and config (Jaroslav Kysela) [2065575] - soundwire: stream: move sdw_alloc_slave_rt() before 'master' helpers (Jaroslav Kysela) [2065575] - soundwire: stream: split sdw_alloc_master_rt() in alloc and config (Jaroslav Kysela) [2065575] - soundwire: stream: simplify sdw_alloc_master_rt() (Jaroslav Kysela) [2065575] - soundwire: stream: group sdw_port and sdw_master/slave_port functions (Jaroslav Kysela) [2065575] - soundwire: stream: add 'slave' prefix for port range checks (Jaroslav Kysela) [2065575] - soundwire: stream: split alloc and config in two functions (Jaroslav Kysela) [2065575] - soundwire: stream: split port allocation and configuration loops (Jaroslav Kysela) [2065575] - soundwire: stream: add alloc/config/free helpers for ports (Jaroslav Kysela) [2065575] - soundwire: stream: simplify check on port range (Jaroslav Kysela) [2065575] - soundwire: stream: add slave runtime to list earlier (Jaroslav Kysela) [2065575] - soundwire: stream: remove unused parameter in sdw_stream_add_slave (Jaroslav Kysela) [2065575] - soundwire: intel: fix wrong register name in intel_shim_wake (Jaroslav Kysela) [2065575] - soundwire: bus: add dev_warn() messages to track UNATTACHED devices (Jaroslav Kysela) [2065575] - soundwire: intel: remove PDM support (Jaroslav Kysela) [2065575] - soundwire: intel: remove unnecessary init (Jaroslav Kysela) [2065575] - ASoC/SoundWire: dai: expand 'stream' concept beyond SoundWire (Jaroslav Kysela) [2065575] - soundwire: intel: improve suspend flows (Jaroslav Kysela) [2065575] - soundwire: intel: Use auxiliary_device driver data helpers (Jaroslav Kysela) [2065575] - soundwire: qcom: remove redundant version number read (Jaroslav Kysela) [2065575] - ASoC: SOF: Fix NULL pointer exception in sof_pci_probe callback (Jaroslav Kysela) [2065575] - ASoC: ops: Validate input values in snd_soc_put_volsw_range() (Jaroslav Kysela) [2065575] - ASoC: dmaengine: Restore NULL prepare_slave_config() callback (Jaroslav Kysela) [2065575] - ASoC: max98090: Generate notifications on changes for custom control (Jaroslav Kysela) [2065575] - ASoC: max98090: Reject invalid values in custom control put() (Jaroslav Kysela) [2065575] - ASoC: rt9120: Correct the reg 0x09 size to one byte (Jaroslav Kysela) [2065575] - ASoC: soc-ops: fix error handling (Jaroslav Kysela) [2065575] - ASoC: da7219: Fix change notifications for tone generator frequency (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: fix sysclk shutdown (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: Add a quirk for Huawei Matebook D15 (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add a quirk for headset at mic1 port (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: support a separate gpio to control headphone (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: simplify speaker gpio naming (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: correct device endpoints for max98373 (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: do not switch off SIDO Buck when codec is in use (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Fix memory leak in sof_control_load() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: cleanup dailinks on widget unload (Jaroslav Kysela) [2065575] - ASoC: rt711/5682: check if bus is active before deferred jack detection (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp on SSP2 (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Avoid NULL deref in asoc_simple_set_tdm() (Jaroslav Kysela) [2065575] - ASoC: soc-core: add debugfs_prefix member to snd_soc_component_driver (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix a shift-out-of-bounds warning found by UBSAN (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add one more variable in the debug log (Jaroslav Kysela) [2065575] - ASoC: rt5682: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2065575] - ASoC: soc-dapm: fix two incorrect uses of list iterator (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: use GFP_KERNEL when the code is sleepable (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Fix memory leak of scontrol->name (Jaroslav Kysela) [2065575] - codecs: rt5682s: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2065575] - ASoC: topology: Correct error handling in soc_tplg_dapm_widget_create() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Fix build error without SND_SOC_SOF_PCI_DEV (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a new dai_get_clk topology IPC op (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add ops for setting up and tearing down pipelines (Jaroslav Kysela) [2065575] - ASoC: SOF: expose sof_route_setup() (Jaroslav Kysela) [2065575] - ASoC: SOF: Add dai_link_fixup PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add trigger PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Define hw_params PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC3 PCM hw_free op (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: expose the sof_pcm_setup_connected_widgets() function (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC-specific PCM ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add bytes_ext control IPC ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add bytes_get/put control IPC ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add enum_get/put control ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add switch get/put IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add volume_get/put IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add IPC3 topology control ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC ops for kcontrol IO (Jaroslav Kysela) [2065575] - ASoC: SOF: Make sof_suspend/resume IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Make sof_widget_setup/free IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: set up scheduler widget before all other widgets in the pipeline (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Use kmemdup() to replace kzalloc + memcpy (Jaroslav Kysela) [2065575] - ASoC: ak4642: Use of_device_get_match_data() (Jaroslav Kysela) [2065575] - ASoC: sti: Fix deadlock via snd_pcm_stop_xrun() call (Jaroslav Kysela) [2065575] - ASoC: amd: Fix reference to PCM buffer address (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: Add missing of_node_put() in wcd934x_codec_parse_data (Jaroslav Kysela) [2065575] - ASoC: rt1308-sdw: get calibration params after power on (Jaroslav Kysela) [2065575] - ASoC: msm8916-wcd-analog: Fix error handling in pm8916_wcd_analog_spmi_probe (Jaroslav Kysela) [2065575] - ASoC: ti: Fix spelling mistake "cant" -> "can't" (Jaroslav Kysela) [2065575] - ASoC: samsung: i2s: check the return value of kstrdup() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove snd_sof_complete_pipeline() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make widget binding IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make control parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make DAI widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make route setup IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make effect widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make siggen widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make asrc widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make src widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make mux/demux widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make mixer widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make pga widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make buffer widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make scheduler widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add helper function for processing tuple arrays (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: Introduce IPC ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce struct snd_sof_dai_link (Jaroslav Kysela) [2065575] - ASoC: soc-compress: Change the check for codec_dai (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Code loading over HDA (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Code loading over CLDMA (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Implement CLDMA transfer (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: General code loading flow (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Dynamic firmware resources management (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Declare module configuration types (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Firmware resources management utilities (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add basefw runtime-parameter requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add ROM requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add power management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add module management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add pipeline management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add code loading requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Inter process communication (Jaroslav Kysela) [2065575] - ASoC: Intel: Introduce AVS driver (Jaroslav Kysela) [2065575] - ASoC: Export DAI register and widget ctor and dctor functions (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Don't reset clock of active DAI (Jaroslav Kysela) [2065575] - ASoC: SOF: Remove ipc_pcm_params() ops (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Convert to use the generic set_stream_data_offset ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Convert to use the generic set_stream_data_offset ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-ipc: Add hda_set_stream_data_offset() (Jaroslav Kysela) [2065575] - ASoC: SOF: stream-ipc: Add sof_set_stream_data_offset() (Jaroslav Kysela) [2065575] - ASoC: SOF: Mark snd_sof_dsp_ops.ipc_pcm_params() callback optional (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce optional callback to configure stream data offset (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: Remove sof_pcm_dsp_params() wrapper (Jaroslav Kysela) [2065575] - ASoC: SOF: Make pcm_hw_params snd_sof_dsp_ops callback IPC neutral (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-priv: Remove stale snd_sof_ipc_stream_pcm_params() declaration (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw in ADL match table (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add topology overwrite for Taniks (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: Use proper DMA direction for the trace data buffer (Jaroslav Kysela) [2065575] - ASoC: SOF: compress: fix null check after dereference (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: enable DMI L1 for playback streams (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc-msg-injector: Use devm_kzalloc() for the rx_buffer (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Remove unneeded semicolon (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Remove unneeded semicolon (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: fix randconfig issue (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcht_es8316: move comment to the right place (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add cfg-dmics component for UCM support (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: extend machine driver to support ES8326 codec (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add support for JD inverted quirk (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: move comment to the right place (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: log all quirks (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: use NHLT information to set dmic and SSP (Jaroslav Kysela) [2065575] - ASoC: Intel: Revert "ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021" (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: get codec device with ACPI instead of bus search (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: make gpio optional (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add ESSX8336 support on Cannon Lake machines (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add more ACPI HIDs for ES83x6 devices (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: quirk topology filename dynamically (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: report SSP link mask to machine driver (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: retrieve DMIC number for I2S boards (Jaroslav Kysela) [2065575] - ASoC: SOF: move definition of snd_sof_ipc to header file (Jaroslav Kysela) [2065575] - ASoC: SOF: make struct snd_sof_dai IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Rename arguments in sof_parse_tokens() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Rename arguments in sof_parse_token_sets() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Modify signature for token parsing functions (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a tuples array to struct snd_sof_widget (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: make sof_route_load() IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: make struct snd_sof_widget IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: mxs: Fix error handling in mxs_sgtl5000_probe (Jaroslav Kysela) [2065575] - ASoC: dmaengine: do not use a NULL prepare_slave_config() callback (Jaroslav Kysela) [2065575] - ASoC: SOF: Add missing of_node_put() in imx8m_probe (Jaroslav Kysela) [2065575] - ASoC: rockchip: i2s: Fix missing clk_disable_unprepare() in rockchip_i2s_probe (Jaroslav Kysela) [2065575] - ASoC: amd: acp3x: Fix signedness bug in acp3x (Jaroslav Kysela) [2065575] - ASoC: amd: acp5x-pcm-dma: Fix signedness bug (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: use asoc_substream_to_rtd() (Jaroslav Kysela) [2065575] - ASoC: SOF: change comp_dai to a pointer in struct snd_sof_dai (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: expose some get_token ops (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Modify the get_token op for string tokens (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Drop the size parameter from struct sof_topology_token (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove redundant code in sof_link_afe_load() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove redundant code (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-audio: removed unused function (Jaroslav Kysela) [2065575] - ASoC: SOF: set swidget's core for scheduler widget (Jaroslav Kysela) [2065575] - ASoC: SOF: simplify snd_sof_device_remove() (Jaroslav Kysela) [2065575] - ASoC: SOF: remove snd_sof_pipeline_find() (Jaroslav Kysela) [2065575] - ASoC: amd: vg: fix signedness bug in acp5x_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Remove unnecessary param (Jaroslav Kysela) [2065575] - ASoC: rt5682s: Stabilize the combo jack detection (Jaroslav Kysela) [2065575] - ASoC: wm8350: Handle error for wm8350_register_irq (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Fix signedness bug in acp3x_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Fix signedness bug in acp_pdm_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Fix signedness bug in renoir_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_sdw: fix quirks for 2022 HP Spectre x360 13" (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add GPIOLIB dependency where missed (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: remove explicit dependency on GPIOLIB when DMIC is used" (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: store full version instead of major/minor (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: simplify register poking in fsl_sai_set_bclk (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: simplify irq return value (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: Drop unnecessary defines (Jaroslav Kysela) [2065575] - ASoC: codecs: Add Awinic AW8738 audio amplifier driver (Jaroslav Kysela) [2065575] - ASoC: audio_graph_card2: Add support for variable slot widths (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: clarify operator precedence (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: clarify operator precedence (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Increase ACP_HW_SEM_RETRY_COUNT value (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Move group register configuration to acp-loader (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Use semaphore register to synchronize ipc's irq (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Flush cache after ATU_BASE_ADDR_GRP register update (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Do not set ipc_pcm_params ops as it is optional (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: acp-pcm: Take buffer information directly from runtime (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: pci-tgl: add RPL-S support (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix DSP mbox start command and global enable order (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix max number of TX channels (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix GPIO2 configuration (Jaroslav Kysela) [2065575] - ASoC: bt-sco: fix bt-sco-pcm-wb dai widget don't connect to the endpoint (Jaroslav Kysela) [2065575] - ASoC: hdac_hda: Avoid unexpected match when pcm_name is "Analog" (Jaroslav Kysela) [2065575] - ASoC: soc-compress: prevent the potentially use of null pointer (Jaroslav Kysela) [2065575] - ASoC: soc-generic-dmaengine-pcm: set period_bytes_min based on maxburst (Jaroslav Kysela) [2065575] - ASoC: dwc-i2s: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: amd: use asoc_substream_to_rtd() (Jaroslav Kysela) [2065575] - ASoC: atmel_ssc_dai: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: mxs-saif: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add entries in ADL match table (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_ssp_amp: rename driver and support cs35l41 amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: cirrus-common: support cs35l41 amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt1308: move rt1308 code to common module (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: create sof-realtek-common module (Jaroslav Kysela) [2065575] - ASoC: Intel: add RT1308 I2S machine driver and HDMI-in capture via I2S support. (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: fix spelling in comments (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: remove sof_fw_filename (Jaroslav Kysela) [2065575] - ASoC: es7241: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98927: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98926: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98925: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9867: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9860: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9850: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98390: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98371: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98095: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98088: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda134x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: ml26124: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm512x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm186x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm1681: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm3060: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: ti: davinci-i2s: Add check for clk_enable() (Jaroslav Kysela) [2065575] - ASoC: mc13783: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: isabelle: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: amd: vangogh: fix uninitialized symbol warning in machine driver (Jaroslav Kysela) [2065575] - ASoC: amd: vg: remove warnings and errors pointed out by checkpatch pl (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update DAI link name (Jaroslav Kysela) [2065575] - ASoC: amd: vg: fix for pm resume callback sequence (Jaroslav Kysela) [2065575] - ASoC: es8328: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: inno_rk3036: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: es8316: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: wl1273: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: es7134: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: twl4030: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda1334: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda1380: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: si476x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: sti-sas: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: tscs454: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: tscs42xx: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: lm49453: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: qcom: lpass-platform: Update warning print to control excess logging (Jaroslav Kysela) [2065575] - ASoC: acp: check the return value of devm_kzalloc() in acp_legacy_dai_links_create() (Jaroslav Kysela) [2065575] - ASoC: rt5663: check the return value of devm_kzalloc() in rt5663_parse_dp() (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-priv: Drop duplicate sof_compressed_ops declaration (Jaroslav Kysela) [2065575] - ASoC: amd: Use platform_get_irq_byname() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: SOF: Declare sof_compress_ops in sof-priv.h (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Fix NULL ptr dereference when ENOMEM (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add DMIC machine driver ops (Jaroslav Kysela) [2065575] - ASoC: amd: acp-legacy: Add legacy card support for new machines (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Change card name for Guybrush Machine (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: Add compress_ops for SOF platform component driver (Jaroslav Kysela) [2065575] - ASoC: rt5682s: Fix the wrong jack type detected (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi-byt: Add new WM5102 ACPI HID (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update acp init and deinit sequence (Jaroslav Kysela) [2065575] - ASoC: amd: vg: apply sample bits pcm constraint (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update platform clock control sequence (Jaroslav Kysela) [2065575] - ASoC: nau8821: enable no_capture_mute flag (Jaroslav Kysela) [2065575] - ASoC: amd: vangogh: refactor i2s master mode clock sequence code (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Add topology overwrite for Felwinter (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021 (Jaroslav Kysela) [2065575] - ASoC: intel: skylake: Set max DMA segment size (Jaroslav Kysela) [2065575] - ASoC: SOF: hda: Set max DMA segment size (Jaroslav Kysela) [2065575] - ASoC: SOF: core: unregister clients and machine drivers in .shutdown (Jaroslav Kysela) [2065575] - ASoC: cs4265: Fix the duplicated control name (Jaroslav Kysela) [2065575] - ASoC: ops: Shift tested values in snd_soc_put_volsw() by +min (Jaroslav Kysela) [2065575] - ASoC: soc-core: skip zero num_dai component in searching dai name (Jaroslav Kysela) [2065575] - ASoC: SOF: Makefile: Fix randconfig sof-client build when SND_SOC_SOF=y (Jaroslav Kysela) [2065575] - ASoC: codec: wm8960: complete discharge on BIAS OFF->STANDBY (Jaroslav Kysela) [2065575] - ASoC: wm8731: Delete empty remove() function (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: remove numeric PCM3168A_NUM_SUPPLIES (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: refactor format handling (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: refactor hw_params routine (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: cleanup unintuitive mask usage (Jaroslav Kysela) [2065575] - ASoC: SOF: compr: Mark snd_compress_ops static (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_wm5102: use GFP_KERNEL (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic probe support to SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic IPC message injector into SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic IPC flood test into SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-client: Add support for clients not managed by pm framework (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC SOF client support (Jaroslav Kysela) [2065575] - ASoC: SOF: Split up utils.c into sof-utils and iomem-utils (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Read and pass the whole message to handlers for IPC events (Jaroslav Kysela) [2065575] - ASoC: SOF: Move the definition of enum sof_dsp_power_states to global header (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop unused DSP power states: D3_HOT and D3_COLD (Jaroslav Kysela) [2065575] - ASoC: rt5640: Remove the sysclk and sysclk_src checking (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hdac_ext_stream: consistent prefixes for variables/members (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: Enable combine mode soft (Jaroslav Kysela) [2065575] - ASoC: SOF: compr: Add compress ops implementation (Jaroslav Kysela) [2065575] - ASoC: SOF: dma-trace: Pass pointer to params_ext struct in trace_init() (Jaroslav Kysela) [2065575] - ASoC: SOF: intel: hda-trace: Pass the dma buffer pointer to hda_dsp_trace_prepare (Jaroslav Kysela) [2065575] - ASoC: zl38060: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: max9759: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: simple-amplifier: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: rt9120: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: dmic: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: rt5682: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: rt5668: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: rt5682s: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: tas2770: Insert post reset delay (Jaroslav Kysela) [2065575] - ASoC: samsung: Explicitly include gpiolib header (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Set gpio_spkr_en to None for max speaker amplifer in machine driver (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_xr_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_range() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw() (Jaroslav Kysela) [2065575] - ASoC: max98927: add missing header file (Jaroslav Kysela) [2065575] - ASoC: ops: Check for negative values before reading them (Jaroslav Kysela) [2065575] - ASoC: cs42l51: Improve error handling in cs42l51_remove() (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Do not allocate buffer for msg_data (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Drop header parameter from sof_ipc_tx_message_unlocked() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: cnl: Use pm_gate->hdr.cmd in cnl_compact_ipc_compress() (Jaroslav Kysela) [2065575] - ASoC: amd: renoir: Add check for acp configuration flags (Jaroslav Kysela) [2065575] - ASoC: amd: acp: acp-legacy: Add DMIC dai link support for Renoir (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add ACP init()/deinit() callback for Renoir. (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add generic PCI driver module for ACP device (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add PDM controller based dmic dai for Renoir (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add generic support for PDM controller on ACP (Jaroslav Kysela) [2065575] - ASoC: rk3399_gru_sound: Wire up DP jack detection (Jaroslav Kysela) [2065575] - ASoC: rt5682: Fix deadlock on resume (Jaroslav Kysela) [2065575] - ASoC: hdmi-codec: Fix OOB memory accesses (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Move debugfs removal out of spinlock (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: Simplify count adjustment in trace_read (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Remove link assignment limitation (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_xr_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw() (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Add new system-clock-fixed flag (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Set sysclk on all components (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: add 512FS MCLK clock configuration (Jaroslav Kysela) [2065575] - ASoC: amd: sof-mach: Add support for RT5682S and RT1019 card (Jaroslav Kysela) [2065575] - ASoC: soc-generic-dmaengine-pcm: separate max_buffer_size assignment (Jaroslav Kysela) [2065575] - ASoC: samsung: remove unneeded ret variable (Jaroslav Kysela) [2065575] - ASoC: codecs: remove redundant ret variable (Jaroslav Kysela) [2065575] - ASoC: fsl-asoc-card: Add optional dt property for setting mclk-id (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Add support for platform without amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: add support for systems without i915 audio (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Compare sdw adr directly (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: match sdw version on link_slaves_found (Jaroslav Kysela) [2065575] - ASoC: add support for TAS5805M digital amplifier (Jaroslav Kysela) [2065575] - ASoC: topology: Optimize soc_tplg_dapm_graph_elems_load behavior (Jaroslav Kysela) [2065575] - ASoC: topology: Allow TLV control to be either read or write (Jaroslav Kysela) [2065575] - ASoC: topology: Remove superfluous error prints (Jaroslav Kysela) [2065575] - ASoC: SOF: add flag to disable IMR restore to sof_debug (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: add IMR restore support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: add SSP helper (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: use inclusive language for SSP clocks (Jaroslav Kysela) [2065575] - ASoC: amd: acp-mach: Fix Left and Right rt1019 amp devices (Jaroslav Kysela) [2065575] - ASoC: max9759: fix underflow in speaker_gain_control_put() (Jaroslav Kysela) [2065575] - ASoC: cpcap: Check for NULL pointer after calling of_get_child_by_name (Jaroslav Kysela) [2065575] - ASoC: simple-card: fix probe failure on platform component (Jaroslav Kysela) [2065575] - ASoC: xilinx: xlnx_formatter_pcm: Make buffer bytes multiple of period bytes (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add support for hibernate memory retention mode (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Update handling of test key registers (Jaroslav Kysela) [2065575] - ASoC: wcd9335: Keep a RX port value for each SLIM RX mux (Jaroslav Kysela) [2065575] - ASoC: amd: acp: acp-mach: Change default RT1019 amp dev id (Jaroslav Kysela) [2065575] - ASoC: topology: Fix typo (Jaroslav Kysela) [2065575] - ASoC: fsl_asrc: refine the check of available clock divider (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_rt5640: Add support for external GPIO jack-detect (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_rt5640: Support retrieving the codec IRQ from the AMCR0F28 ACPI dev (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add support for boards with an external jack-detect GPIO (Jaroslav Kysela) [2065575] - ASoC: rt5640: Allow snd_soc_component_set_jack() to override the codec IRQ (Jaroslav Kysela) [2065575] - ASoC: rt5640: Change jack_work to a delayed_work (Jaroslav Kysela) [2065575] - ASoC: rt5640: Fix possible NULL pointer deref on resume (Jaroslav Kysela) [2065575] - ASoC: ak4375: Fix unused function error (Jaroslav Kysela) [2065575] - ASoC: cs4265: Add a remove() function (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Correct handling of some registers in the cache (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Correct DSP power down (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Remove incorrect comment (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add cs35l51/53 IDs (Jaroslav Kysela) [2065575] - ASoC: fsl_mqs: fix MODULE_ALIAS (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for boost configuration (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for setting channels (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for errata patches (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Move power initializations to reg_sequence (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Move cs35l41_otp_unpack to shared code (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Convert tables to shared source code (Jaroslav Kysela) [2065575] - ASoC: samsung: idma: Check of ioremap return value (Jaroslav Kysela) [2065575] - ASoC: cs4265: Fix part number ID error message (Jaroslav Kysela) [2065575] - ALSA/ASoC: hda: move/rename snd_hdac_ext_stop_streams to hdac_stream.c (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Power on/off the speaker enable gpio pin based on DAPM callback. (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8173: reduce log verbosity in probe() (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8183: fix device_node leak (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8173: fix device_node leak (Jaroslav Kysela) [2065575] - ASoC: Intel/SOF: use set_stream() instead of set_tdm_slots() for HDAudio (Jaroslav Kysela) [2065575] - ASoC/soundwire: intel: simplify callbacks for params/hw_free (Jaroslav Kysela) [2065575] - ASOC: SOF: Intel: use snd_soc_dai_get_widget() (Jaroslav Kysela) [2065575] - ASoC: msm8916-wcd-analog: Use separate outputs for HPH_L/HPH_R (Jaroslav Kysela) [2065575] - ASoC: qcom: common: Parse "pin-switches" and "widgets" from DT (Jaroslav Kysela) [2065575] - ASoC: core: Add snd_soc_of_parse_pin_switches() from simple-card-utils (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Use DEBUG log level for optional prints (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: Use DEBUG log level for optional prints (Jaroslav Kysela) [2065575] - ASoC: SOF: Add clarifying comments for sof_core_debug and DSP dump flags (Jaroslav Kysela) [2065575] - ASoC: SOF: Rename snd_sof_get_status() and add kernel log level parameter (Jaroslav Kysela) [2065575] - ASoC: SOF: dsp_arch_ops: add kernel log level parameter for oops and stack (Jaroslav Kysela) [2065575] - ASoC: SOF: ops: Always print DSP Panic message but use different message (Jaroslav Kysela) [2065575] - ASoc: SOF: core: Update the FW boot state transition diagram (Jaroslav Kysela) [2065575] - ASoC: SOF: pm: Force DSP off on suspend in BOOT_FAILED state also (Jaroslav Kysela) [2065575] - ASoC: SOF: Set SOF_FW_BOOT_FAILED in case we have failure during boot (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Only allow sending of an IPC in SOF_FW_BOOT_COMPLETE state (Jaroslav Kysela) [2065575] - ASoC: SOF: Rename 'enum snd_sof_fw_state' to 'enum sof_fw_state' (Jaroslav Kysela) [2065575] - ASoC: SOF: Move the definition of enum snd_sof_fw_state to global header (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce new firmware state: SOF_FW_BOOT_READY_OK (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce new firmware state: SOF_FW_CRASHED (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a 'message' parameter to snd_sof_dsp_dbg_dump() (Jaroslav Kysela) [2065575] - ASoC: SOF: Add 'non_recoverable' parameter to snd_sof_dsp_panic() (Jaroslav Kysela) [2065575] - ASoC: SOF: Use sof_debug_check_flag() instead of sof_core_debug directly (Jaroslav Kysela) [2065575] - ASoC: SOF: core: Add simple wrapper to check flags in sof_core_debug (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: Avoid re-defining the HDA_FW_BOOT_ATTEMPTS (Jaroslav Kysela) [2065575] - ASoC: SOF: ops: Use dev_warn() if the panic offsets differ (Jaroslav Kysela) [2065575] - ASoC: codecs: ak4375: Change invert controls to a stereo switch (Jaroslav Kysela) [2065575] - ASoC: Add AK4375 support (Jaroslav Kysela) [2065575] - ASoC: bcm: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: xlnx: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Remove duplicate dependency in Kconfig (Jaroslav Kysela) [2065575] - ASoC: SOF: AMD: simplify return status handling (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Update sof_tplg_filename for SOF machines (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Enable SOF audio for Google chrome boards. (Jaroslav Kysela) [2065575] - ASoC: sunxi: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: samsung: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: rockchip: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: qcom: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: mxs: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: img: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: generic: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: ti: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: ateml: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: tlv320aic31xx: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: ssm2305: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: simple-amplifier: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: sgtl5000: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: pcm3168a: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: max9860: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: max9759: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: es7241: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: ak4118: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: Streamline locals declaration for PCM-functions (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: Reduce size of catpt_component_open() (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Improve driver's code (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Support device-tree (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Set FIFO trigger level (Jaroslav Kysela) [2065575] - ASoC: SOF: Kconfig: Make the SOF_DEVELOPER_SUPPORT depend on SND_SOC_SOF (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Add null pointer check for substream->runtime (Jaroslav Kysela) [2065575] - ASoC: SOF: avoid casting "const" attribute away (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: remove support for RESUME in platform trigger (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: remove support for RESUME trigger (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: remove support for RESUME trigger (Jaroslav Kysela) [2065575] - ASoC: tegra20-spdif: stop setting slave_id (Jaroslav Kysela) [2065575] - ASoC: AMD: fix depend/select mistake on SND_AMD_ACP_CONFIG (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: read back control data from DSP (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ctrl_type parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: control: Do not handle control notification with component type (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-audio: Drop the `cmd` member from struct snd_sof_control (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ctrl_cmd parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Set control_data->cmd alongside scontrol->cmd (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ipc_cmd parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Rename send parameter in snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: rt5663: Handle device_property_read_u32_array error codes (Jaroslav Kysela) [2065575] - ASoC: SOF: OF: Avoid reverse module dependency (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-probes: Constify sof_probe_compr_ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Remove pm_runtime_put_autosuspend() for SOF OF device (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add comment on JasperLake support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-dai: remove unused fields (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: add quirks for HDAudio DMA position information (Jaroslav Kysela) [2065575] - ASoC: SOF: hda-stream: only enable DPIB if needed (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-ctrl: apply symmetry for DPIB (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-stream: limit PROCEN workaround (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: ICL: move ICL-specific ops to icl.c (Jaroslav Kysela) [2065575] - ASoC: test-component: fix null pointer dereference. (Jaroslav Kysela) [2065575] - ASoC: amd: Convert to new style DAI format definitions (Jaroslav Kysela) [2065575] - ASoC: AMD: acp-config: fix missing dependency on SND_SOC_ACPI (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Move rt1015 speaker amp to common file (Jaroslav Kysela) [2065575] - ASoC: rt5682s: add delay time to fix pop sound issue (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add 'static' qualifiers for max98390 routes (Jaroslav Kysela) [2065575] - ASoC: amd: acp6x-pdm-dma: Constify static snd_soc_dai_ops (Jaroslav Kysela) [2065575] - ASoC: ti: davinci-mcasp: Get rid of duplicate of_node assignment (Jaroslav Kysela) [2065575] - ASoC: zl38060: Setup parent device and get rid of unnecessary of_node assignment (Jaroslav Kysela) [2065575] - ASoC: test-component: fix null pointer dereference. (Jaroslav Kysela) [2065575] - sound/soc: remove useless bool conversion to bool variable (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix undefined reference to core functions (Jaroslav Kysela) [2065575] - ASoC: rt5640: Fix the wrong state of the JD in the HDA header (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: remove redundant ret variable (Jaroslav Kysela) [2065575] - ASoC: tegra: Add master volume/mute control support (Jaroslav Kysela) [2065575] - ASoC: Intel: Skylake: Use NHLT API to search for blob (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add max98390 2/4 speakers support (Jaroslav Kysela) [2065575] - ASoC: intel: boards: bytcht*: Constify static snd_soc_ops (Jaroslav Kysela) [2065575] - ASoC: Intel: hda_dsp_common: don't multiline PCM topology warning (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: tidyup soc_pcm_pointer()'s delay update method (Jaroslav Kysela) [2065575] - ASoC: intel: sst-mfld-platform-pcm: add .delay support (Jaroslav Kysela) [2065575] - ASoC: amd: acp-pcm-dma: add .delay support (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Use pR/pa to print resources/physical addresses (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix link problem (Jaroslav Kysela) [2065575] - ASoC: codecs/jz4770: Add missing gain control after DAC/ADC mixer (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: send DAI_CONFIG IPC during pause (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: dai: Expand DAI_CONFIG IPC flags (Jaroslav Kysela) [2065575] - ASoC: SOF: align the hw_free sequence with stop (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: move the check for prepared flag (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a helper for freeing PCM stream (Jaroslav Kysela) [2065575] - ASoC: SOF: call platform hw_free for paused streams during suspend (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: invoke platform hw_free for STOP/SUSPEND triggers (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: reset stream before coupling host and link DMA's (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Add a helper function for stream reset (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: clear stream before freeing the DAI widget (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add the HDA header support (Jaroslav Kysela) [2065575] - ASoC: uniphier: drop selecting non-existing SND_SOC_UNIPHIER_AIO_DMA (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add missing of_node_put() in platform_parse_resource() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: don't use list_for_each_entry_reverse() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add .ack support for HDaudio platforms (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: add .ack callback support (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-pci-dev: use community key on all Up boards (Jaroslav Kysela) [2065575] - ASoC: stm32: spdifrx: add pm_runtime support (Jaroslav Kysela) [2065575] - ASoC: stm32: dfsdm: add pm_runtime support for audio (Jaroslav Kysela) [2065575] - ASoC: stm32: i2s: add pm_runtime support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: free DAI widget during stop and suspend (Jaroslav Kysela) [2065575] - ASoC: SOF: add support for dynamic pipelines with multi-core (Jaroslav Kysela) [2065575] - ASoC: SOF: hda: don't use the core op for power up/power down (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove sof_load_pipeline_ipc() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: CNL/ICL/APL: set core_get/core_put ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: TGL: set core_get/put ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add ops for core_get and core_put (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce num_cores and ref count per core (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: expose get_chip_info() (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Implement reset callback (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Implement DSP start (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Add runtime PM / System PM support (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8: Add runtime PM / System PM support (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Add code to manage DSP related clocks (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add DSP system PM callback for mt8195 (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add mt8195 dsp clock support (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add dai driver dsp ops callback for mt8195 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add mt8195 device descriptor (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add fw loader and mt8195 dsp ops to load firmware (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add support for Mediatek AFE DAI (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add mt8195 hardware support (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add support for SOF firmware authentication (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add trace logger support (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add support for AMD ACP DAIs (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Remove legacy acpi based machine struct (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add Renoir PCI driver interface (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add machine driver dsp ops for Renoir platform (Jaroslav Kysela) [2065575] - ASoC: amd: Add module to determine ACP configuration (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add PCM stream callback for Renoir dai's (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add dai driver dsp ops callback for Renoir (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add IPC support for ACP IP block (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add fw loader and renoir dsp ops to load firmware (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add helper callbacks for ACP's DMA configuration (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add Renoir ACP HW support (Jaroslav Kysela) [2065575] - ASoC: stm32: sai: increase channels_max limit (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: Add support for IPC message injection (Jaroslav Kysela) [2065575] - ASoC: SOF: intel: Use the generic helper to get the reply (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Use the generic helper to get the reply (Jaroslav Kysela) [2065575] - ASoC: SOF: utils: Add generic function to get the reply for a tx message (Jaroslav Kysela) [2065575] - ASoC: SOF: i.MX: simplify Kconfig (Jaroslav Kysela) [2065575] - ASoC: SOF: core: Unregister machine driver before IPC and debugfs (Jaroslav Kysela) [2065575] - ASoC: adau1701: Replace legacy gpio interface for gpiod (Jaroslav Kysela) [2065575] - ASoC: Intel: add sof-nau8825 machine driver (Jaroslav Kysela) [2065575] - ASoC: cs35l41: DSP Support (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: add link adr order check (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove get_next_be_id (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove sof_sdw_mic_codec_mockup_init (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove SOF_RT715_DAI_ID_FIX quirk (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: move DMIC link id overwrite to create_sdw_dailink (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: Use a fixed DAI link id for AMP (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: rename be_index/link_id to link_index (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_sdw: add SKU for Dell Latitude 9520 (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: return the original error number (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: send DMA_TRACE_FREE IPC during release (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: update ipc_log_header() (Jaroslav Kysela) [2065575] - ALSA: mtpav: Don't call card private_free at probe error path (Jaroslav Kysela) [2065575] - ALSA: virmidi: Remove duplicated code (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machine (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for TongFang devices with pop noise (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for the Framework Laptop (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Dell Latitude 7520 (Jaroslav Kysela) [2065575] - ALSA: hda - fix unused Realtek function when PM is not enabled (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Yoga Duet 7 13ITL6 speakers (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable mute/micmute LEDs support for HP Laptops (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix mute led issue on thinkpad with cs35l41 s-codec (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP70PNP (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook 845/865 G9 (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: add HDMI codec VID for Raptorlake-P (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: fix warning about PCM count when used with SOF (Jaroslav Kysela) [2065575] - ALSA: nm256: Don't call card private_free at probe error path (Jaroslav Kysela) [2065575] - ALSA: rme9652: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hdspm: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hdsp: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: oxygen: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: lx6464es: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cmipci: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: aw2: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: als300: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: lola: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: bt87x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: sis7019: Fix the missing error handling (Jaroslav Kysela) [2065575] - ALSA: via82xx: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: sonicvibes: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: rme96: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: rme32: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: riptide: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: maestro3: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: korg1212: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: intel8x0: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ice1724: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: fm801: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: es1968: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: es1938: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ens137x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: emu10k1x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cs5535audio: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cs4281: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ca0106: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: azt3328: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: au88x0: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: atiixp: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: als4000: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ali5451: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ad1889: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: echoaudio: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: add quirk for Lenovo Thinkpad X12 speakers (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo PD50PNT (Jaroslav Kysela) [2065575] - ALSA: hda: Avoid unsol event during RPM suspending (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix audio regression on Mi Notebook Pro 2020 (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Add new Dolphin HW variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Disable HSBIAS_SENSE_EN for Cyborg (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Support new Warlock MLK Variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Fix Full Scale Volume setting for all variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Re-order quirk table into ascending order (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Fix Warlock to use mono mic configuration (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable headset mic on Lenovo P360 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add mute and micmut LED support for Zbook Fury 17 G9 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add alc256-samsung-headphone fixup (Jaroslav Kysela) [2065575] - ALSA: pci: fix reading of swapped values from pcmreg in AC97 codec (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix LED on Zbook Studio G9 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines (Jaroslav Kysela) [2065575] - ALSA: cmipci: Restore aux vol on suspend/resume (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for ASUS GA402 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671 (Jaroslav Kysela) [2065575] - ALSA: hda: Add AlderLake-PS variant PCI ID (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP50PNJ (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP70PNJ (Jaroslav Kysela) [2065575] - ALSA: lola: add a check for the return of vmalloc() (Jaroslav Kysela) [2065575] - ALSA: echoaudio: remove redundant assignment to variable bytes (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Make use of the helper component_compare_dev_name (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Update scratch reg. communication (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Hardcode GCAP ISS value on T234 (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Add Tegra234 hda driver support (Jaroslav Kysela) [2065575] - ALSA: hda: Expose codec cleanup and power-save functions (Jaroslav Kysela) [2065575] - ALSA: hda: Update and expose codec register procedures (Jaroslav Kysela) [2065575] - ALSA: hda: Update and expose snd_hda_codec_device_init() (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: add keep-alive support for ADL-P and DG2 (Jaroslav Kysela) [2065575] - ALSA: hda: Set max DMA segment size (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix deadlock by COEF mutex (Jaroslav Kysela) [2065575] - ALSA: hda: Fix missing codec probe on Shenker Dock 15 (Jaroslav Kysela) [2065575] - ALSA: hda: Fix regression on forced probe mask option (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Legion Y9000X 2019 (Jaroslav Kysela) [2065575] - ALSA: hda: Add PCI and HDMI IDs for Intel Raptor Lake (Jaroslav Kysela) [2065575] - ALSA: ca0106: Rename register macro names (Jaroslav Kysela) [2065575] - ALSA: hda: Fix driver index handling at re-binding (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add support for HP Laptops (Jaroslav Kysela) [2065575] - ALSA: hda: Skip codec shutdown in case the codec is not registered (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for ASUS GU603 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix silent output on Gigabyte X570 Aorus Xtreme after reboot from Windows (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix silent output on Gigabyte X570S Aorus Master (newer chipset) (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add missing fixup-model entry for Gigabyte X570 ALC1220 quirks (Jaroslav Kysela) [2065575] - ALSA: hda: realtek: Fix race at concurrent COEF updates (Jaroslav Kysela) [2065575] - ALSA: hda: Fix signedness of sscanf() arguments (Jaroslav Kysela) [2065575] - ALSA: hda: Fix UAF of leds class devs at unbinding (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Add new Warlock SKUs to patch_cs8409 (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Make cs35l41_hda_remove() return void (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Tidyup code (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Make use of the helper function dev_err_probe() (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add missing default cases (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Move cs35l41* calls to its own symbol namespace (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add calls to newly added test key function (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Avoid overwriting register patch (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix speakers and micmute on HP 855 G8 (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: fix double free on error in probe() (Jaroslav Kysela) [2065575] - ALSA: hda: Fix dependencies of CS35L41 on SPI/I2C buses (Jaroslav Kysela) [2065575] - ALSA: hda: Fix dependency on ASoC cs35l41 codec (Jaroslav Kysela) [2065575] - ALSA: hda: ALC287: Add Lenovo IdeaPad Slim 9i 14ITL5 speaker quirk (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add CS35L41 support for Thinkpad laptops (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add support for Legion 7 16ACHg6 laptop (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add support for CS35L41 in HDA systems (Jaroslav Kysela) [2065575] - MAINTAINERS: Update Cirrus Logic codec driver maintainers (Jaroslav Kysela) [2065575] - ASoC: dt-bindings: cs42l42: Convert binding to yaml (Jaroslav Kysela) [2065575] - dt-bindings: remove 'interrupt-parent' from bindings (Jaroslav Kysela) [2065575] - ASoC: dt-bindings: cs42l42: Correct description of ts-inv (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Add warnings about DETECT_MODE and PLL_START (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Handle system suspend (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Change jack_detect_mutex to a lock of all IRQ handling (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Report full jack status when plug is detected (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant pll_divout member (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Simplify reporting of jack unplug (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant writes to RS_PLUG/RS_UNPLUG masks (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant writes to DETECT_MODE (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Add control for audio slow-start switch (Jaroslav Kysela) [2065575] - ALSA: mixart: Add sanity check for timer notify streams (Jaroslav Kysela) [2065575] - ALSA: mixart: Reduce size of mixart_timer_notify (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Restore Rane SL-1 quirk (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Don't get sample rate for MCT Trigger 5 USB-to-HDMI (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Clear MIDI port active flag after draining (Jaroslav Kysela) [2065575] - ALSA: usb-audio: add mapping for MSI MAG X570S Torpedo MAX. (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Limit max buffer and period sizes per time (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Increase max buffer size (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Cap upper limits of buffer/period bytes for implicit fb (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Fix undefined behavior due to shift overflowing the constant (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Add mute TLV for playback volumes on RODE NT-USB (Jaroslav Kysela) [2065575] - ALSA: scarlett2: Add support for the internal "standalone" switch (Jaroslav Kysela) [2065575] - ALSA: scarlett2: Split scarlett2_config_items[] into 3 sections (Jaroslav Kysela) [2065575] - ALSA: usb-audio: add mapping for new Corsair Virtuoso SE (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Don't abort resume upon errors (Jaroslav Kysela) [2065575] - ALSA: usb-audio: revert to IMPLICIT_FB_FIXED_DEV for M-Audio FastTrack Ultra (Jaroslav Kysela) [2065575] - ALSA: usb-audio: remove redundant assignment to variable c (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Correct quirk for VF0770 (Jaroslav Kysela) [2065575] - ALSA: usb-audio: initialize variables that could ignore errors (Jaroslav Kysela) [2065575] - ALSA: usb-audio: scarlett2: Use struct_size() helper in scarlett2_usb() (Jaroslav Kysela) [2065575] - ALSA: fireworks: fix wrong return count shorter than expected by 4 bytes (Jaroslav Kysela) [2065575] - ALSA: firewire-lib: fix uninitialized flag for AV/C deferred transaction (Jaroslav Kysela) [2065575] - ALSA: memalloc: Add fallback SG-buffer allocations for x86 (Jaroslav Kysela) [2065575] - ALSA: core: Add snd_card_free_on_error() helper (Jaroslav Kysela) [2065575] - ALSA: pcm: Test for "silence" field in struct "pcm_format_data" (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix potential AB/BA lock with buffer_mutex and mmap_lock (Jaroslav Kysela) [2065575] - ALSA: pcm: Add stream lock during PCM reset ioctl operations (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent prealloc proc writes (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent prepare and hw_params/hw_free calls (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent read/write and buffer changes (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent hw_params and hw_free calls (Jaroslav Kysela) [2065575] - ALSA: oss: Release temporary buffers upon errors (Jaroslav Kysela) [2065575] - ALSA: oss: Fix PCM OSS buffer allocation overflow (Jaroslav Kysela) [2065575] - ALSA: core: Fix typo in 'PCM Timer Interface' help (Jaroslav Kysela) [2065575] - ALSA: seq: oss: fix typo (Jaroslav Kysela) [2065575] - ALSA: seq: oss: use kzalloc (Jaroslav Kysela) [2065575] - ALSA: memalloc: invalidate SG pages before sync (Jaroslav Kysela) [2065575] - ALSA: memalloc: Fix dma_need_sync() checks (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Fix DPCM lockdep warning due to nested stream locks (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: fix BE handling of PAUSE_RELEASE (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: test refcount before triggering (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: serialize BE triggers (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Fix and cleanup DPCM locking (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: align BE 'atomicity' with that of the FE (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: use GFP_ATOMIC for dpcm structure (Jaroslav Kysela) [2065575] - ASoC: soc-component: add snd_soc_pcm_component_delay() (Jaroslav Kysela) [2065575] - ASoC: soc-dai: update snd_soc_dai_delay() to snd_soc_pcm_dai_delay() (Jaroslav Kysela) [2065575] - ALSA: core: Simplify snd_power_ref_and_wait() with the standard macro (Jaroslav Kysela) [2065575] - ALSA: seq: virmidi: Add a drain operation (Jaroslav Kysela) [2065575] - ASoC: dai_dma: remove slave_id field (Jaroslav Kysela) [2065575] - ALSA: seq: Set upper limit of processed events (Jaroslav Kysela) [2065575] - ALSA: oss: remove useless NULL check before kfree (Jaroslav Kysela) [2065575] - ALSA: pcm: introduce INFO_NO_REWINDS flag (Jaroslav Kysela) [2065575] - ALSA: pcm: unconditionally check if appl_ptr is in 0..boundary range (Jaroslav Kysela) [2065575] - Revert "ASoC: Intel: soc-acpi: add entries in ADL match table" (Jaroslav Kysela) [2065575] - devlink: hold the instance lock during eswitch_mode callbacks (Petr Oros) [2101715] - netdevsim: replace vfs_lock with devlink instance lock (Petr Oros) [2101715] - netdevsim: replace port_list_lock with devlink instance lock (Petr Oros) [2101715] - devlink: add explicitly locked flavor of the rate node APIs (Petr Oros) [2101715] - bnxt: use the devlink instance lock to protect sriov (Petr Oros) [2101715] - devlink: pass devlink_port to port_split / port_unsplit callbacks (Petr Oros) [2101715] - devlink: hold the instance lock in port_split / port_unsplit callbacks (Petr Oros) [2101715] - eth: mlxsw: switch to explicit locking for port registration (Petr Oros) [2101715] - eth: nfp: replace driver's "pf" lock with devlink instance lock (Petr Oros) [2101715] - eth: nfp: wrap locking assertions in helpers (Petr Oros) [2101715] - devlink: expose instance locking and add locked port registering (Petr Oros) [2101715] - ethtool: don't drop the rtnl_lock half way thru the ioctl (Petr Oros) [2101715] - ethtool: handle info/flash data copying outside rtnl_lock (Petr Oros) [2101715] - ethtool: push the rtnl_lock into dev_ethtool() (Petr Oros) [2101715] - mlxsw: reg: Remove PMTM register (Ivan Vecera) [2101715] - mlxsw: spectrum: Use PMTDB register to obtain split info (Ivan Vecera) [2101715] - mlxsw: reg: Add Port Module To local DataBase Register (Ivan Vecera) [2101715] - mlxsw: spectrum: Use PLLP to get front panel number and split number (Ivan Vecera) [2101715] - mlxsw: reg: Add Port Local port to Label Port mapping Register (Ivan Vecera) [2101715] - mlxsw: spectrum: Move port SWID set before core port init (Ivan Vecera) [2101715] - mlxsw: spectrum: Move port module mapping before core port init (Ivan Vecera) [2101715] - mlxsw: spectrum: Bump minimum FW version to xx.2008.3326 (Ivan Vecera) [2101715] - bpf: fix build error due to missing bpf_perf_event.h header (Desnes A. Nunes do Rosario) [1908140] - powerpc/bpf: Fix use of user_pt_regs in uapi (Desnes A. Nunes do Rosario) [1908140] - net: ena: Do not waste napi skb cache (Michal Schmidt) [2097644] - net: ena: Extract recurring driver reset code into a function (Michal Schmidt) [2097644] - net: ena: Change the name of bad_csum variable (Michal Schmidt) [2097644] - net: ena: Add debug prints for invalid req_id resets (Michal Schmidt) [2097644] - net: ena: Remove ena_calc_queue_size_ctx struct (Michal Schmidt) [2097644] - net: ena: Move reset completion print to the reset function (Michal Schmidt) [2097644] - net: ena: Remove redundant return code check (Michal Schmidt) [2097644] - net: ena: Change ENI stats support check to use capabilities field (Michal Schmidt) [2097644] - net: ena: Add capabilities field with support for ENI stats capability (Michal Schmidt) [2097644] - net: ena: Change return value of ena_calc_io_queue_size() to void (Michal Schmidt) [2097644] - powerpc/ptrace: replace ptrace_report_syscall() with a tracehook call (Desnes A. Nunes do Rosario) [1992947] - powerpc/ptrace: Add support for PTRACE_SYSEMU (Desnes A. Nunes do Rosario) [1992947] - selftests/powerpc: New PTRACE_SYSEMU test (Desnes A. Nunes do Rosario) [1992947] - powerpc: Redefine TIF_32BITS thread flag (Desnes A. Nunes do Rosario) [1992947] - redhat: fix libnl3-devel BuildRequires for intel-speed-select (Jarod Wilson)- redhat: enable mtty module for internal testing (Jarod Wilson) [2071992] - tools/power/x86/intel-speed-select: v1.12 release (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: HFI support (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: OOB daemon mode (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: v1.11 release (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: Update max frequency (Martin McConnell) [2072658] - Spec fixes for intel-speed-select (Martin McConnell) [2072658] - Add BuildRequires libnl3-devel for intel-speed-select (Martin McConnell) [2072658] - xfs: fix soft lockup via spinning in filestream ag selection loop (Brian Foster) [2033293] - net: ping6: Fix memleak in ipv6_renew_options(). (Ivan Vecera) [2112339] - Input: i8042 - Add quirk for Fujitsu Lifebook T725 (Benjamin Tissoires) [2019942] - HID: amd_sfh: Modify the hid name (Benjamin Tissoires) [2090040] - HID: amd_sfh: Modify the bus name (Benjamin Tissoires) [2090040] - HID: amd_sfh: Add support for sensor discovery (Benjamin Tissoires) [2090040] - igc: Reinstate IGC_REMOVED logic and implement it properly (Corinna Vinschen) [2037969] - intel/igc:fix repeated words in comments (Corinna Vinschen) [2037969] - intel: remove unused macros (Corinna Vinschen) [2037969] - igc: Change type of the 'igc_check_downshift' method (Corinna Vinschen) [2037969] - igc: Remove unused phy_type enum (Corinna Vinschen) [2037969] - igc: Remove igc_set_spd_dplx method (Corinna Vinschen) [2037969] - igc: Fix suspending when PTM is active (Corinna Vinschen) [2037969] - igc: Fix BUG: scheduling while atomic (Corinna Vinschen) [2037969 2014971] - igc: Fix infinite loop in release_swfw_sync (Corinna Vinschen) [2037969] - igc: igc_write_phy_reg_gpy: drop premature return (Corinna Vinschen) [2037969] - igc: igc_read_phy_reg_gpy: drop premature return (Corinna Vinschen) [2037969] - igc: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Corinna Vinschen) [2037969] - igc: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037969] - igc: Fix TX timestamp support for non-MSI-X platforms (Corinna Vinschen) [2037969] - igc: Do not enable crosstimestamping for i225-V models (Corinna Vinschen) [2037969] - igc: switch to napi_build_skb() (Corinna Vinschen) [2037969] - igc: Remove obsolete define (Corinna Vinschen) [2037969] - igc: Remove obsolete mask (Corinna Vinschen) [2037969] - igc: Remove obsolete nvm type (Corinna Vinschen) [2037969] - igc: Remove unused phy type (Corinna Vinschen) [2037969] - igc: Remove unused _I_PHY_ID define (Corinna Vinschen) [2037969] - igc: enable XDP metadata in driver (Corinna Vinschen) [2037969] - intel_idle: Fix false positive RCU splats due to incorrect hardirqs state (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/spec_ctrl: Enable RHEL only ibrs_always & retpoline,ibrs_user spectre_v2 options (Waiman Long) [2090229] - KVM: emulate: do not adjust size of fastop and setcc subroutines (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm: fix FASTOP_SIZE when return thunks are enabled (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - efi/x86: use naked RET on mixed mode call wrapper (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Remove apostrophe typo (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Use DECLARE_PER_CPU for x86_spec_ctrl_current (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Remove UNTRAIN_RET from native_irq_return_ldt (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Mark retbleed_strings static (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/asm/32: Fix ANNOTATE_UNRET_SAFE use on 32-bit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Disable RRSBA behavior (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kexec: Disable RET on kexec (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Do not enable IBPB-on-entry when IBPB is not supported (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add Cannon lake to RETBleed affected CPU list (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - redhat/configs: Add new mitigation configs for RetBleed CVEs (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retbleed: Add fine grained Kconfig knobs (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpu/amd: Enumerate BTC_NO (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/common: Stamp out the stepping madness (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Prevent RSB underflow before vmenter (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fill RSB on vmexit for IBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Fix IBRS handling after vmexit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Prevent guest RSB poisoning attacks with eIBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Convert launched argument to flags (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Flatten __vmx_vcpu_run() (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Remove x86_spec_ctrl_mask (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Use cached host SPEC_CTRL value for guest entry/exit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fix SPEC_CTRL write on SMT state change (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fix firmware entry SPEC_CTRL handling (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpu/amd: Add Spectral Chicken (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Do IBPB fallback check only once (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add retbleed=ibpb (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - objtool: Update Retpoline validation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - intel_idle: Disable IBRS during long idle (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Report Intel retbleed vulnerability (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Split spectre_v2_select_mitigation() and spectre_v2_user_select_mitigation() (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Add spectre_v2=ibrs option to support Kernel IBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Optimize SPEC_CTRL MSR writes (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Add kernel IBRS implementation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Keep a per-CPU IA32_SPEC_CTRL value (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Enable STIBP for JMP2RET (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add AMD retbleed= boot parameter (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Report AMD retbleed vulnerability (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Add magic AMD return-thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Use return-thunk in asm code (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/sev: Avoid using __x86_return_thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/vsyscall_emu/64: Don't use RET in vsyscall emulation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm: Fix SETcc emulation for return thunks (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bpf: Use alternative RET encoding (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/ftrace: Use alternative RET encoding (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86,objtool: Create .return_sites (Josh Poimboeuf) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Undo return-thunk damage (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Use -mfunction-return (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Swizzle retpoline thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Cleanup some #ifdefery (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpufeatures: Move RETPOLINE flags to word 11 (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm/vmx: Make noinstr clean (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - arch/x86/boot/compressed: Add -D__DISABLE_EXPORTS to kbuild flags (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: (Ab)use __DISABLE_EXPORTS to disable RETHUNK in real mode (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Remove skip_r11rcx (Waiman Long) [2090229] - cpuidle,intel_idle: Fix CPUIDLE_FLAG_IRQ_ENABLE (Waiman Long) [2090229] - x86/speculation/srbds: Do not try to turn mitigation off when not supported (Waiman Long) [2090229] - x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch() (Waiman Long) [2090229] - x86/text-patching: Make text_gen_insn() play nice with ANNOTATE_NOENDBR (Waiman Long) [2090229] - x86/module: Fix the paravirt vs alternative order (Waiman Long) [2090229] - x86: Add straight-line-speculation mitigation (Waiman Long) [2090229] - x86: Prepare inline-asm for straight-line-speculation (Waiman Long) [2090229] - x86: Prepare asm files for straight-line-speculation (Waiman Long) [2090229] - x86: Use -mindirect-branch-cs-prefix for RETPOLINE builds (Waiman Long) [2090229] - x86: Move RETPOLINE*_CFLAGS to arch Makefile (Waiman Long) [2090229] - x86/entry: Add a fence for kernel entry SWAPGS in paranoid_entry() (Waiman Long) [2090229] - Makefile: remove stale cc-option checks (Waiman Long) [2090229] - tools headers: Remove broken definition of __LITTLE_ENDIAN (Waiman Long) [2090229] - tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf bench mem memcpy' (Waiman Long) [2090229] - x86: Add insn_decode_kernel() (Waiman Long) [2090229] - tools/insn: Restore the relative include paths for cross building (Waiman Long) [2090229] - x86/alternative: Use insn_decode() (Waiman Long) [2090229] - x86/insn: Add an insn_decode() API (Waiman Long) [2090229] - x86/insn: Rename insn_decode() to insn_decode_from_regs() (Waiman Long) [2090229] - x86/paravirt: Add new features for paravirt patching (Waiman Long) [2090229] - x86/alternative: Support not-feature (Waiman Long) [2090229] - x86/alternative: Merge include files (Waiman Long) [2090229] - objtool: Fix error handling for STD/CLD warnings (Waiman Long) [2090229] - x86/alternatives: Teach text_poke_bp() to emulate RET (Waiman Long) [2090229] - x86/ftrace: Have ftrace trampolines turn read-only at the end of system boot up (Waiman Long) [2090229] - x86/speculation: Change FILL_RETURN_BUFFER to work with objtool (Waiman Long) [2090229] - objtool: Add support for intra-function calls (Waiman Long) [2090229] - objtool: Rework allocating stack_ops on decode (Waiman Long) [2090229] - objtool: Better handle IRET (Waiman Long) [2090229] - objtool: Support multiple stack_op per instruction (Waiman Long) [2090229] - objtool: Make BP scratch register warning more robust (Waiman Long) [2090229] - x86/kexec: Make relocate_kernel_64.S objtool clean (Waiman Long) [2090229] - objtool: Introduce validate_return() (Waiman Long) [2090229] - Makefile: disallow data races on gcc-10 as well (Waiman Long) [2090229] - objtool: Improve call destination function detection (Waiman Long) [2090229] - x86/alternatives: Implement a better poke_int3_handler() completion scheme (Waiman Long) [2090229] - lib/: fix Kconfig indentation (Waiman Long) [2090229] - x86/alternatives: Use INT3_INSN_SIZE (Waiman Long) [2090229] - x86/kprobes: Fix ordering while text-patching (Waiman Long) [2090229] - x86/kprobes: Convert to text-patching.h (Waiman Long) [2090229] - x86/alternative: Shrink text_poke_loc (Waiman Long) [2090229] - x86/alternative: Remove text_poke_loc::len (Waiman Long) [2090229] - x86/ftrace: Use text_gen_insn() (Waiman Long) [2090229] - x86/alternative: Add text_opcode_size() (Waiman Long) [2090229] - x86/ftrace: Use text_poke() (Waiman Long) [2090229] - x86/ftrace: Use vmalloc special flag (Waiman Long) [2090229] - x86/ftrace: Explicitly include vmalloc.h for set_vm_flush_reset_perms() (Waiman Long) [2090229] - x86/alternatives: Add and use text_gen_insn() helper (Waiman Long) [2090229] - x86/alternatives, jump_label: Provide better text_poke() batching interface (Waiman Long) [2090229] - x86/asm: Annotate relocate_kernel_{32,64}.c (Waiman Long) [2090229] - x86: kprobes: Prohibit probing on instruction which has emulate prefix (Waiman Long) [2090229] - x86: Correct misc typos (Waiman Long) [2090229] - x86/speculation/mds: Apply more accurate check on hypervisor platform (Waiman Long) [2090229] - objtool: Convert insn type to enum (Waiman Long) [2090229] - objtool: Track original function across branches (Waiman Long) [2090229] - objtool: Rename elf_open() to prevent conflict with libelf from elftoolchain (Waiman Long) [2090229] - x86/ftrace: Make enable parameter bool where applicable (Waiman Long) [2090229] - x86/CPU/AMD: Don't force the CPB cap when running under a hypervisor (Waiman Long) [2090229] - objtool: Fix function fallthrough detection (Waiman Long) [2090229] - x86/paravirt: Detect over-sized patching bugs in paravirt_patch_call() (Waiman Long) [2090229] - x86/cpu/amd: Exclude 32bit only assembler from 64bit build (Waiman Long) [2090229] - x86/asm: Mark all top level asm statements as .text (Waiman Long) [2090229] - x86/cpu/bugs: Use __initconst for 'const' init data (Waiman Long) [2090229] - objtool: Add Direction Flag validation (Waiman Long) [2090229] - objtool: Rewrite add_ignores() (Waiman Long) [2090229] - x86/nospec, objtool: Introduce ANNOTATE_IGNORE_ALTERNATIVE (Waiman Long) [2090229] - x86/ftrace: Fix warning and considate ftrace_jmp_replace() and ftrace_call_replace() (Waiman Long) [2090229] - kbuild: Disable extra debugging info in .s output (Waiman Long) [2090229] - x86/CPU/AMD: Set the CPB bit unconditionally on F17h (Waiman Long) [2090229] - x86/alternatives: Print containing function (Waiman Long) [2090229] - x86/ftrace: Do not call function graph from dynamic trampolines (Waiman Long) [2090229] - ftrace: Create new ftrace_internal.h header (Waiman Long) [2090229] - kprobes/x86: Fix instruction patching corruption when copying more than one RIP-relative instruction (Waiman Long) [2090229] - tracing/Makefile: Fix handling redefinition of CC_FLAGS_FTRACE (Waiman Long) [2090229] - x86/paravirt: Remove unused paravirt bits (Waiman Long) [2090229] - x86/paravirt: Remove clobbers parameter from paravirt patch functions (Waiman Long) [2090229] - x86/paravirt: Make paravirt_patch_call() and paravirt_patch_jmp() static (Waiman Long) [2090229] - x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled (Waiman Long) [2090229] - ftrace: Remove unused pointer ftrace_swapper_pid (Waiman Long) [2090229] - x86/spec_ctrl: Temporarily remove RHEL specific IBRS code (Waiman Long) [2090229] - net: bonding: fix use-after-free after 802.3ad slave unbind (Jonathan Toppins) [2109327] - net: bonding: fix possible NULL deref in rlb code (Jonathan Toppins) [2109327] - bonding: ARP monitor spams NETDEV_NOTIFY_PEERS notifiers (Jonathan Toppins) [2109327] - bonding: do not discard lowest hash bit for non layer3+4 hashing (Jonathan Toppins) [2109327] - bonding: helper macro __ATTR_RO to make code more clear (Jonathan Toppins) [2109327] - bonding: force carrier update when releasing slave (Jonathan Toppins) [2109327] - bonding: fix data-races around agg_select_timer (Jonathan Toppins) [2109327] - bonding: switch bond_net_exit() to batch mode (Jonathan Toppins) [2109327] - bonding: pair enable_port with slave_arr_updates (Jonathan Toppins) [2109327] - net: bonding: fix bond_xmit_broadcast return value error bug (Jonathan Toppins) [2109327] - tracing: Show size of requested perf buffer (Michael Petlan) [2103836] - tracing: Increase PERF_MAX_TRACE_SIZE to handle Sentinel1 and docker together (Michael Petlan) [2103836] - drivers/base/memory: determine and store zone for single-zone memory blocks (David Hildenbrand) [1997803] - drivers/base/node: rename link_mem_sections() to register_memory_block_under_node() (David Hildenbrand) [1997803] - drivers/base/node: consolidate node device subsystem initialization in node_dev_init() (David Hildenbrand) [1997803] - drivers/base/memory: introduce memory_block_{online,offline} (David Hildenbrand) [1997803] - mm/memory_hotplug: remove stale function declarations (David Hildenbrand) [1997803] - mm/memory_hotplug: remove HIGHMEM leftovers (David Hildenbrand) [1997803] - redhat/configs: remove CONFIG_MEMORY_HOTPLUG_SPARSE (David Hildenbrand) [1997803] - mm/memory_hotplug: restrict CONFIG_MEMORY_HOTPLUG to 64 bit (David Hildenbrand) [1997803] - mm/memory_hotplug: remove CONFIG_MEMORY_HOTPLUG_SPARSE (David Hildenbrand) [1997803] - mm/memory_hotplug: remove CONFIG_X86_64_ACPI_NUMA dependency from CONFIG_MEMORY_HOTPLUG (David Hildenbrand) [1997803] - memory: remove unused CONFIG_MEM_BLOCK_SIZE (David Hildenbrand) [1997803] - mm/memory_hotplug: disable the functionality for 32b (David Hildenbrand) [1997803] - include/linux/memory.h: drop fields 'hw' and 'phys_callback' from struct memory_block (David Hildenbrand) [1997803] - iommu/vt-d: Fix PCI bus rescan device hot add (Jerry Snitselaar) [2101591] - iommu/vt-d: Fix RID2PASID setup/teardown failure (Jerry Snitselaar) [2101591]- cifs: support share failover when remounting (Ronnie Sahlberg) [2095258] - cifs: avoid starvation when refreshing dfs cache (Ronnie Sahlberg) [2095258] - cifs: fix path comparison and hash calc (Ronnie Sahlberg) [2095258] - cifs: handle different charsets in dfs cache (Ronnie Sahlberg) [2095258] - spi: amd: Limit max transfer and message size (Sudheesh Mavila) [2047996] - redhat/configs: enable CONFIG_SPI_AMD for x86_64 (Sudheesh Mavila) [2047996] - spi: amd: Fix building without ACPI enabled (Sudheesh Mavila) [2047996] - spi: amd: Add support for version AMDI0062 (Sudheesh Mavila) [2047996] - spi: amd: Remove needless rom_addr variable (Sudheesh Mavila) [2047996] - spi: amd: Use iopoll for busy waiting (Sudheesh Mavila) [2047996] - spi: amd: Don't wait for a write-only transfer to finish (Sudheesh Mavila) [2047996] - spi: amd: Remove unneeded variable (Sudheesh Mavila) [2047996] - spi: amd: Refactor amd_spi_busy_wait (Sudheesh Mavila) [2047996] - spi: amd: Refactor code to use less spi_master_get_devdata (Sudheesh Mavila) [2047996] - spi: amd: Use devm_platform_ioremap_resource() in amd_spi_probe (Sudheesh Mavila) [2047996] - spi: spi-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Sudheesh Mavila) [2047996] - spi: amd: Drop superfluous member from struct amd_spi (Sudheesh Mavila) [2047996] - spi: amd: Fix refcount underflow on remove (Sudheesh Mavila) [2047996] - spi: amd: Drop duplicate driver data assignments (Sudheesh Mavila) [2047996] - spi: amd: Pass probe errors back to driver core (Sudheesh Mavila) [2047996] - spi: amd: Fix duplicate iounmap in error path (Sudheesh Mavila) [2047996] - spi: spi-amd: Fix a NULL vs IS_ERR() check in amd_spi_probe() (Sudheesh Mavila) [2047996] - spi: spi-amd: fix warning (Sudheesh Mavila) [2047996] - spi: spi-amd: Add AMD SPI controller driver support (Sudheesh Mavila) [2047996] - selftests/tc-testings: Be compatible with newer tc output (Hangbin Liu) [2100322] - selftests/net: enable lo.accept_local in psock_snd test (Hangbin Liu) [2100322] - selftests/net: Use kselftest skip code for skipped tests (Hangbin Liu) [2100322] - Bluetooth: SCO: Fix sco_send_frame returning skb->len (Gopal Tiwari) [1984641] - Bluetooth: Add bt_skb_sendmsg helper (Gopal Tiwari) [1984641] - Bluetooth: SCO: Replace use of memcpy_from_msg with bt_skb_sendmsg (Gopal Tiwari) [1984641] - Bluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg() (Gopal Tiwari) [1984641] - platform/mellanox: mlxbf-pmc: Fix an IS_ERR() vs NULL bug in mlxbf_pmc_map_counters (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-lc: fix error code in mlxreg_lc_create_static_devices() (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-lc: Add initial support for Nvidia line card devices (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-io: Extend number of hwmon attributes (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-hotplug: Extend logic for hotplug devices operations (Mark Langsdorf) [2068297] - platform_data/mlxreg: Add new type to support modular systems (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-io: Fix read access of n-bytes size attributes (Mark Langsdorf) [2068297] - platform/mellanox: mlxbf-pmc: fix kernel-doc notation (Mark Langsdorf) [2068297] - platform/mellanox: Typo fix in the file mlxbf-bootctl.c (Mark Langsdorf) [2068297] - redhat/configs: Support QAT devices for x86 only (Vladis Dronov) [2040724] - crypto: qat - expose device config through sysfs for 4xxx (Vladis Dronov) [2040724] - crypto: qat - relocate and rename adf_sriov_prepare_restart() (Vladis Dronov) [2040724] - crypto: qat - change behaviour of adf_cfg_add_key_value_param() (Vladis Dronov) [2040724] - crypto: qat - expose device state through sysfs for 4xxx (Vladis Dronov) [2040724] - crypto: qat - Removes the x86 dependency on the QAT drivers (Vladis Dronov) [2040724] - crypto: qat - replace get_current_node() with numa_node_id() (Vladis Dronov) [2040724] - crypto: qat - add support for 401xx devices (Vladis Dronov) [2040724] - crypto: qat - re-enable registration of algorithms (Vladis Dronov) [2040724] - crypto: qat - honor CRYPTO_TFM_REQ_MAY_SLEEP flag (Vladis Dronov) [2040724] - crypto: qat - add param check for DH (Vladis Dronov) [2040724] - crypto: qat - add param check for RSA (Vladis Dronov) [2040724] - crypto: qat - remove dma_free_coherent() for DH (Vladis Dronov) [2040724] - crypto: qat - remove dma_free_coherent() for RSA (Vladis Dronov) [2040724] - crypto: qat - fix memory leak in RSA (Vladis Dronov) [2040724] - crypto: qat - add backlog mechanism (Vladis Dronov) [2040724] - crypto: qat - refactor submission logic (Vladis Dronov) [2040724] - crypto: qat - use pre-allocated buffers in datapath (Vladis Dronov) [2040724] - crypto: qat - set to zero DH parameters before free (Vladis Dronov) [2040724] - crypto: qat - Fix unsigned function returning negative constant (Vladis Dronov) [2040724] - crypto: qat - remove line wrapping for pfvf_ops functions (Vladis Dronov) [2040724] - crypto: qat - use u32 variables in all GEN4 pfvf_ops (Vladis Dronov) [2040724] - crypto: qat - replace disable_vf2pf_interrupts() (Vladis Dronov) [2040724] - crypto: qat - leverage the GEN2 VF mask definiton (Vladis Dronov) [2040724] - crypto: qat - rework the VF2PF interrupt handling logic (Vladis Dronov) [2040724] - crypto: qat - fix off-by-one error in PFVF debug print (Vladis Dronov) [2040724] - crypto: qat - fix wording and formatting in code comment (Vladis Dronov) [2040724] - crypto: qat - test PFVF registers for spurious interrupts on GEN4 (Vladis Dronov) [2040724] - crypto: qat - add check for invalid PFVF protocol version 0 (Vladis Dronov) [2040724] - crypto: qat - add missing restarting event notification in VFs (Vladis Dronov) [2040724] - crypto: qat - remove unnecessary tests to detect PFVF support (Vladis Dronov) [2040724] - crypto: qat - remove unused PFVF stubs (Vladis Dronov) [2040724] - crypto: qat - remove unneeded braces (Vladis Dronov) [2040724] - crypto: qat - fix ETR sources enabled by default on GEN2 devices (Vladis Dronov) [2040724] - crypto: qat - set COMPRESSION capability for DH895XCC (Vladis Dronov) [2040724] - crypto: qat - set CIPHER capability for DH895XCC (Vladis Dronov) [2040724] - crypto: qat - stop using iommu_present() (Vladis Dronov) [2040724] - crypto: qat - fix initialization of pfvf rts_map_msg structures (Vladis Dronov) [2040724] - crypto: qat - fix initialization of pfvf cap_msg structures (Vladis Dronov) [2040724] - crypto: qat - remove unneeded assignment (Vladis Dronov) [2040724] - crypto: qat - disable registration of algorithms (Vladis Dronov) [2040724] - crypto: qat - enable power management for QAT GEN4 (Vladis Dronov) [2040724] - crypto: qat - move and rename GEN4 error register definitions (Vladis Dronov) [2040724] - crypto: qat - add misc workqueue (Vladis Dronov) [2040724] - crypto: qat - don't cast parameter in bit operations (Vladis Dronov) [2040724] - crypto: qat - fix access to PFVF interrupt registers for GEN4 (Vladis Dronov) [2040724] - crypto: qat - fix a signedness bug in get_service_enabled() (Vladis Dronov) [2040724] - dlm: fix missing lkb refcount handling (Alexander Aring) [2084606] - scsi: storvsc: Fix unsigned comparison to zero (Mohammed Gamal) [2020774] - scsi: storvsc: Fix validation for unsolicited incoming packets (Mohammed Gamal) [2020774] - scsi: storvsc: Fix storvsc_queuecommand() memory leak (Mohammed Gamal) [2020774] - x86/kvm: Add kexec support for SEV Live Migration. (Mohammed Gamal) [2018614] - x86/kvm: Add guest support for detecting and enabling SEV Live Migration feature. (Mohammed Gamal) [2018614] - mm: x86: Invoke hypercall when page encryption status is changed (Mohammed Gamal) [2018614] - hv_netvsc: Fix potential dereference of NULL pointer (Mohammed Gamal) [2086611] - hv_netvsc: Add support for XDP_REDIRECT (Mohammed Gamal) [2086611] - hv_netvsc: Print value of invalid ID in netvsc_send_{completion,tx_complete}() (Mohammed Gamal) [2086611] - net: hyperv: remove use of bpf_op_t (Mohammed Gamal) [2086611] - hv_netvsc: Add check for kvmalloc_array (Mohammed Gamal) [2086611] - net: netvsc: remove break after return (Mohammed Gamal) [2086611] - hv_netvsc: Use bitmap_zalloc() when applicable (Mohammed Gamal) [2086611] - SMB3: EBADF/EIO errors in rename/open caused by race condition in smb2_compound_op (Ronnie Sahlberg) [2108871] - vsock/virtio: enable VQs early on probe (Stefano Garzarella) [2107594] - vsock/virtio: initialize vdev->priv before using VQs (Stefano Garzarella) [2107594] - vsock: each transport cycles only on its own sockets (Stefano Garzarella) [2107594] - vhost/vsock: don't check owner in vhost_vsock_stop() while releasing (Stefano Garzarella) [2107594] - vsock: remove vsock from connected table when connect is interrupted by a signal (Stefano Garzarella) [2107594] - ipv6: take care of disable_policy when restoring routes (Andrea Claudi) [2103894] - tools/testing/nvdimm: Fix security_init() symbol collision (Jeff Moyer) [2096791] - redhat: make kernel-devel pkgs Requires elfutils and gcc (Jarod Wilson) [1701282] - xhci: Fix null pointer dereference in resume if xhci has only one roothub (Dean Nelson) [2061791] - usb: dwc3: gadget: Move null pinter check to proper place (Dean Nelson) [2061791] - xhci: Don't defer primary roothub registration if there is only one roothub (Dean Nelson) [2061791] - USB: serial: pl2303: fix type detection for odd device (Dean Nelson) [2061791] - media: pvrusb2: fix array-index-out-of-bounds in pvr2_i2c_core_init (Dean Nelson) [2061791] - usb: xhci-mtk: remove bandwidth budget table (Dean Nelson) [2061791] - usb: xhci-mtk: fix fs isoc's transfer error (Dean Nelson) [2061791] - xhci: Allow host runtime PM as default for Intel Alder Lake N xHCI (Dean Nelson) [2061791] - xhci: prevent U2 link power state if Intel tier policy prevented U1 (Dean Nelson) [2061791] - xhci: use generic command timer for stop endpoint commands. (Dean Nelson) [2061791] - usb: host: xhci-plat: omit shared hcd if either root hub has no ports (Dean Nelson) [2061791] - usb: host: xhci-plat: prepare operation w/o shared hcd (Dean Nelson) [2061791] - usb: host: xhci-plat: create shared hcd after having added main hcd (Dean Nelson) [2061791] - xhci: prepare for operation w/o shared hcd (Dean Nelson) [2061791] - xhci: factor out parts of xhci_gen_setup() (Dean Nelson) [2061791] - xhci: Set HCD flag to defer primary roothub registration (Dean Nelson) [2061791] - usb: core: hcd: Add support for deferring roothub registration (Dean Nelson) [2061791] - thunderbolt: Fix buffer allocation of devices with no DisplayPort adapters (Dean Nelson) [2061791] - media: uvcvideo: Fix bit overflow in uvc_probe_video (Dean Nelson) [2061791] - media: uvcvideo: Fix missing check to determine if element is found in list (Dean Nelson) [2061791] - usb: typec: tcpci: Don't skip cleanup in .remove() on error (Dean Nelson) [2061791] - usb: cdc-wdm: fix reading stuck on device close (Dean Nelson) [2061791] - thunderbolt: Ignore port locked error in tb_port_wait_for_link_width() (Dean Nelson) [2061791] - thunderbolt: Add debug logging when lane is enabled/disabled (Dean Nelson) [2061791] - usb: dwc3: gadget: Return proper request status (Dean Nelson) [2061791] - usb: typec: mux: Check dev_set_name() return value (Dean Nelson) [2061791] - usb: dwc3: pci: Fix pm_runtime_get_sync() error checking (Dean Nelson) [2061791] - usb: dwc3: gadget: Replace list_for_each_entry_safe() if using giveback (Dean Nelson) [2061791] - usb: dwc3: core: Only handle soft-reset in DCTL (Dean Nelson) [2061791] - usb: dwc3: Try usb-role-switch first in dwc3_drd_init (Dean Nelson) [2061791] - usb: dwc3: core: Fix tx/rx threshold settings (Dean Nelson) [2061791] - USB: storage: karma: fix rio_karma_init return (Dean Nelson) [2061791] - xhci: Enable runtime PM on second Alderlake controller (Dean Nelson) [2061791] - usb: misc: fix improper handling of refcount in uss720_probe() (Dean Nelson) [2061791] - usb: typec: ucsi: Fix role swapping (Dean Nelson) [2061791] - usb: typec: ucsi: Fix reuse of completion structure (Dean Nelson) [2061791] - thunderbolt: Use different lane for second DisplayPort tunnel (Dean Nelson) [2061791] - thunderbolt: Dump path config space entries during discovery (Dean Nelson) [2061791] - thunderbolt: Use decimal number with port numbers (Dean Nelson) [2061791] - xhci: increase usb U3 -> U0 link resume timeout from 100ms to 500ms (Dean Nelson) [2061791] - xhci: stop polling roothubs after shutdown (Dean Nelson) [2061791] - USB: Fix xhci event ring dequeue pointer ERDP update issue (Dean Nelson) [2061791] - USB: storage: ums-realtek: fix error code in rts51x_read_mem() (Dean Nelson) [2061791] - usb: early: xhci-dbc: Fix xdbc number parsing (Dean Nelson) [2061791] - usb: early: xhci-dbc: Remove duplicate keep parsing (Dean Nelson) [2061791] - USB: serial: pl2303: fix GS type detection (Dean Nelson) [2061791] - usb: host: xhci: Remove some unnecessary return value initializations (Dean Nelson) [2061791] - usb: host: xhci: add blank line in xhci_halt() (Dean Nelson) [2061791] - usb: host: xhci: update hci_version operation in xhci_gen_setup() (Dean Nelson) [2061791] - usb: host: xhci: fix a comment typo in xhci_mem_init() (Dean Nelson) [2061791] - usb: host: xhci: use ffs() in xhci_mem_init() (Dean Nelson) [2061791] - xhci: fix runtime PM imbalance in USB2 resume (Dean Nelson) [2061791] - xhci: fix uninitialized string returned by xhci_decode_ctrl_ctx() (Dean Nelson) [2061791] - xhci: fix garbage USBSTS being logged in some cases (Dean Nelson) [2061791] - xhci: make xhci_handshake timeout for xhci_reset() adjustable (Dean Nelson) [2061791] - xhci: omit mem read just after allocation of trb (Dean Nelson) [2061791] - Revert "USB: serial: ch341: add new Product ID for CH341A" (Dean Nelson) [2061791] - usb: xhci: fix minmax.cocci warnings (Dean Nelson) [2061791] - usb: host: xhci: drop redundant checks (Dean Nelson) [2061791] - xhci: Allocate separate command structures for each LPM command (Dean Nelson) [2061791] - xhci: dbgtty: use IDR to support several dbc instances. (Dean Nelson) [2061791] - xhci: dbc: Don't call dbc_tty_init() on every dbc tty probe (Dean Nelson) [2061791] - xhci: dbc: Rename xhci_dbc_init and xhci_dbc_exit (Dean Nelson) [2061791] - xhci: dbc: create and remove dbc structure in dbgtty driver. (Dean Nelson) [2061791] - xhci: dbc: refactor xhci_dbc_init() (Dean Nelson) [2061791] - usb: dwc3: pci: Fix Bay Trail phy GPIO mappings (Dean Nelson) [2061791] - xhci: Prevent futile URB re-submissions due to incorrect return value. (Dean Nelson) [2061791] - xhci: re-initialize the HC during resume if HCE was set (Dean Nelson) [2061791] - usb: dwc3: pci: Add "snps,dis_u2_susphy_quirk" for Intel Bay Trail (Dean Nelson) [2061791] - usb: dwc3: pci: add support for the Intel Raptor Lake-S (Dean Nelson) [2061791] - usb: xhci-mtk: add support ip-sleep wakeup for mt8195 (Dean Nelson) [2061791] - usb: dwc3: gadget: Prevent core from processing stale TRBs (Dean Nelson) [2061791] - thunderbolt: Replace acpi_bus_get_device() (Dean Nelson) [2061791] - thunderbolt: Add internal xHCI connect flows for Thunderbolt 3 devices (Dean Nelson) [2061791] - thunderbolt: Add missing device ID to tb_switch_is_alpine_ridge() (Dean Nelson) [2061791] - thunderbolt: Disable LTTPR on Intel Titan Ridge (Dean Nelson) [2061791] - usb: ulpi: Call of_node_put correctly (Dean Nelson) [2061791] - usb: ulpi: Move of_node_put to ulpi_dev_release (Dean Nelson) [2061791] - usb: xhci-mtk: Use struct_size() helper in create_sch_ep() (Dean Nelson) [2061791] - usb: common: ulpi: Fix crash in ulpi_match() (Dean Nelson) [2061791] - usb: typec: tcpm: Do not disconnect when receiving VSAFE0V (Dean Nelson) [2061791] - usb: typec: tcpm: Do not disconnect while receiving VBUS off (Dean Nelson) [2061791] - xhci: Fresco FL1100 controller should not have BROKEN_MSI quirk set. (Dean Nelson) [2061791] - usb: typec: tcpci: don't touch CC line if it's Vconn source (Dean Nelson) [2061791] - thunderbolt: Remove useless DMA-32 fallback configuration (Dean Nelson) [2061791] - media: uvcvideo: Support devices that report an OT as an entity source (Dean Nelson) [2061791] - Revert "media: uvcvideo: Support devices that report an OT as an entity source" (Dean Nelson) [2061791] - thunderbolt: Add module parameter for CLx disabling (Dean Nelson) [2061791] - thunderbolt: Enable CL0s for Intel Titan Ridge (Dean Nelson) [2061791] - thunderbolt: Rename Intel TB_VSE_CAP_IECS capability (Dean Nelson) [2061791] - thunderbolt: Implement TMU time disruption for Intel Titan Ridge (Dean Nelson) [2061791] - thunderbolt: Move usb4_switch_wait_for_bit() to switch.c (Dean Nelson) [2061791] - thunderbolt: Add CL0s support for USB4 routers (Dean Nelson) [2061791] - thunderbolt: Add TMU uni-directional mode (Dean Nelson) [2061791] - xhci: use max() to make code cleaner (Dean Nelson) [2061791] - usb: ftdi-elan: fix memory leak on device disconnect (Dean Nelson) [2061791] - Revert "usb: early: convert to readl_poll_timeout_atomic()" (Dean Nelson) [2061791] - usb: typec: tcpm: fix tcpm unregister port but leave a pending timer (Dean Nelson) [2061791] - thunderbolt: Check return value of kmemdup() in icm_handle_event() (Dean Nelson) [2061791] - media: dw2102: Fix use after free (Dean Nelson) [2061791] - USB: serial: cp210x: fix CP2105 GPIO registration (Dean Nelson) [2061791] - usb: xhci-mtk: fix list_del warning when enable list debug (Dean Nelson) [2061791] - usb: core: config: fix validation of wMaxPacketValue entries (Dean Nelson) [2061791] - xhci: avoid race between disable slot command and host runtime suspend (Dean Nelson) [2061791] - xhci: Remove CONFIG_USB_DEFAULT_PERSIST to prevent xHCI from runtime suspending (Dean Nelson) [2061791] - thunderbolt: Do not dereference fwnode in struct device (Dean Nelson) [2061791] - thunderbolt: Add debug logging of DisplayPort resource allocation (Dean Nelson) [2061791] - thunderbolt: Do not program path HopIDs for USB4 routers (Dean Nelson) [2061791] - thunderbolt: Do not allow subtracting more NFC credits than configured (Dean Nelson) [2061791] - thunderbolt: Runtime resume USB4 port when retimers are scanned (Dean Nelson) [2061791] - thunderbolt: Tear down existing tunnels when resuming from hibernate (Dean Nelson) [2061791] - thunderbolt: Runtime PM activate both ends of the device link (Dean Nelson) [2061791] - thunderbolt: xdomain: Avoid potential stack OOB read (Dean Nelson) [2061791] - media: uvcvideo: fix division by zero at stream start (Dean Nelson) [2061791] - usb: typec: tcpm: Wait in SNK_DEBOUNCED until disconnect (Dean Nelson) [2061791] - xhci: Fix commad ring abort, write all 64 bits to CRCR register. (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip reading GEVNTSIZn (Dean Nelson) [2061791] - usb: dwc3: gadget: Ignore Update Transfer cmd params (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip checking Update Transfer status (Dean Nelson) [2061791] - usb: hub: Fix locking issues with address0_mutex (Dean Nelson) [2061791] - media: dib0700: Only touch one bit when start/stop an adapter (Dean Nelson) [2061791] - media: dib0700: cleanup start/stop streaming logic (Dean Nelson) [2061791] - media: dib0700: fix undefined behavior in tuner shutdown (Dean Nelson) [2061791] - media: s2255: fix control-message timeouts (Dean Nelson) [2061791] - media: pvrusb2: fix control-message timeouts (Dean Nelson) [2061791] - media: flexcop-usb: fix control-message timeouts (Dean Nelson) [2061791] - usb: hub: Fix usb enumeration issue due to address0 race (Dean Nelson) [2061791] - usb: typec: fusb302: Fix masking of comparator and bc_lvl interrupts (Dean Nelson) [2061791] - usb: dwc3: gadget: Fix null pointer exception (Dean Nelson) [2061791] - usb: dwc3: gadget: Check for L1/L2/U3 for Start Transfer (Dean Nelson) [2061791] - usb: dwc3: gadget: Ignore NoStream after End Transfer (Dean Nelson) [2061791] - usb: xhci-mtk: fix random remote wakeup (Dean Nelson) [2061791] - usb: xhci-mtk: remove unnecessary error check (Dean Nelson) [2061791] - USB: serial: keyspan: fix memleak on probe errors (Dean Nelson) [2061791] - USB: iowarrior: fix control-message timeouts (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip resizing EP's TX FIFO if already resized (Dean Nelson) [2061791] - usb: dwc3: gadget: Change to dev_dbg() when queuing to inactive gadget/ep (Dean Nelson) [2061791] - xhci: Enable trust tx length quirk for Fresco FL11 USB controller (Dean Nelson) [2061791] - xhci: Fix command ring pointer corruption while aborting a command (Dean Nelson) [2061791] - USB: xhci: dbc: fix tty registration race (Dean Nelson) [2061791] - xhci: add quirk for host controllers that don't update endpoint DCS (Dean Nelson) [2061791] - xhci: guard accesses to ep_state in xhci_endpoint_reset() (Dean Nelson) [2061791] - media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte() (Dean Nelson) [2061791] - USB: cdc-acm: fix break reporting (Dean Nelson) [2061791] - USB: cdc-acm: fix racy tty buffer accesses (Dean Nelson) [2061791] - usb: typec: tcpm: handle SRC_STARTUP state if cc changes (Dean Nelson) [2061791] - usb: typec: tcpci: don't handle vSafe0V event if it's not enabled (Dean Nelson) [2061791] - usb: xhci-mtk: use xhci_dbg() to print log (Dean Nelson) [2061791] - media: mxl111sf: change mutex_init() location (Dean Nelson) [2061791] - media: tm6000: Avoid card name truncation (Dean Nelson) [2061791] - media: gspca: Limit frame size to sizeimage. (Dean Nelson) [2061791] - media: uvcvideo: Don't spam the log in uvc_ctrl_restore_values() (Dean Nelson) [2061791] - media: uvcvideo: Increase the size of UVC_METADATA_BUF_SIZE (Dean Nelson) [2061791] - media: uvcvideo: Return -EIO for control errors (Dean Nelson) [2061791] - media: uvcvideo: Remove unused including (Dean Nelson) [2061791] - media: m5602_ov7660: remove the repeated declaration (Dean Nelson) [2061791] - media: dvb-usb: fix ununit-value in az6027_rc_query (Dean Nelson) [2061791] - thunderbolt: Fix -Wrestrict warning (Dean Nelson) [2061791] - USB: serial: cp210x: fix dropped characters with CP2102 (Dean Nelson) [2061791] - usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind (Dean Nelson) [2061791] - USB: serial: option: remove duplicate USB device ID (Dean Nelson) [2061791] - USB: serial: mos7840: remove duplicated 0xac24 device ID (Dean Nelson) [2061791] - USB: cdc-acm: fix minor-number release (Dean Nelson) [2061791] - usb: dwc3: reference clock period configuration (Dean Nelson) [2061791] - usb: xhci-mtk: allow bandwidth table rollover (Dean Nelson) [2061791] - usb: xhci-mtk: modify the SOF/ITP interval for mt8195 (Dean Nelson) [2061791] - usb: xhci-mtk: add a member of num_esit (Dean Nelson) [2061791] - usb: xhci-mtk: check boundary before check tt (Dean Nelson) [2061791] - usb: xhci-mtk: update fs bus bandwidth by bw_budget_table (Dean Nelson) [2061791] - usb: xhci-mtk: support option to disable usb2 ports (Dean Nelson) [2061791] - usb: xhci-mtk: fix use-after-free of mtk->hcd (Dean Nelson) [2061791] - usb: dwc3: pci: add support for AMD's newer generation platform. (Dean Nelson) [2061791] - xhci: Add bus number to some debug messages (Dean Nelson) [2061791] - xhci: Add additional dynamic debug to follow URBs in cancel and error cases. (Dean Nelson) [2061791] - Revert "USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set" (Dean Nelson) [2061791] - xhci: Fix failure to give back some cached cancelled URBs. (Dean Nelson) [2061791] - xhci: fix even more unsafe memory usage in xhci tracing (Dean Nelson) [2061791] - xhci: fix unsafe memory usage in xhci tracing (Dean Nelson) [2061791] - usb: typec: tcpm: Support non-PD mode (Dean Nelson) [2061791] - USB: serial: cp210x: determine fw version for CP2105 and CP2108 (Dean Nelson) [2061791] - USB: serial: cp210x: clean up type detection (Dean Nelson) [2061791] - USB: serial: cp210x: clean up set-chars request (Dean Nelson) [2061791] - USB: serial: cp210x: clean up control-request timeout (Dean Nelson) [2061791] - USB: serial: cp210x: fix flow-control error handling (Dean Nelson) [2061791] - USB: serial: cp210x: fix control-characters error handling (Dean Nelson) [2061791] - tty: drop put_tty_driver (Dean Nelson) [2061791] - media: dvb-usb: fix uninit-value in vp702x_read_mac_addr (Dean Nelson) [2061791] - media: dvb-usb: fix uninit-value in dvb_usb_adapter_dvb_init (Dean Nelson) [2061791] - usb: renesas-xhci: Remove renesas_xhci_pci_exit() (Dean Nelson) [2061791] - usb: dwc3: Resize TX FIFOs to meet EP bursting requirements (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: fix UAF (Dean Nelson) [2061791] - usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable (Dean Nelson) [2061791] - usb: dwc3: gadget: Set gadget_max_speed when set ssp_rate (Dean Nelson) [2061791] - usb: dwc3: gadget: Prevent EP queuing while stopping transfers (Dean Nelson) [2061791] - media: lmedm04: Fix misuse of comma (Dean Nelson) [2061791] - media: tm6000: Fix memleak in tm6000_start_stream (Dean Nelson) [2061791] - usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup (Dean Nelson) [2061791] - memstick: Skip allocating card when removing host (Dean Nelson) [2061791] - USB: Replace zero-length array with flexible-array member (Dean Nelson) [2061791] - USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd (Dean Nelson) [2061791] - Revert "[usb] USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd" (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Support runtime power management (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Use ms_dev() helper (Dean Nelson) [2061791] - memstick: Prevent memstick host from getting runtime suspended during card detection (Dean Nelson) [2061791] - misc: rtsx_usb: Use USB remote wakeup signaling for card insertion detection (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe function (Dean Nelson) [2061791]- RDMA/qedr: Fix reporting QP timeout attribute (Kamal Heib) [2083620] - NFSD: Handle COPYer - Not suppored in RHEL8 (Benjamin Coddington) [2108628] - NFSD add ca_source_server<> to COPY (Benjamin Coddington) [2108628] - NFS NFSD: defining nl4_servers structure needed by both (Benjamin Coddington) [2108628] - fix backport powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user() (Diego Domingos) [2106984] - bpf: Enable bpf_ktime_get_coarse_ns helper (Viktor Malik) [2105133] - kernel/resource: Introduce request_mem_region_muxed() (Sudheesh Mavila) [2047999] - i2c: piix4: Enable EFCH MMIO for Family 17h+ (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support for SMBus port select (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support to SMBus base address detect (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support to region request and release (Sudheesh Mavila) [2047999] - i2c: piix4: Move SMBus port selection into function (Sudheesh Mavila) [2047999] - i2c: piix4: Move SMBus controller base address detect into function (Sudheesh Mavila) [2047999] - i2c: piix4: Move port I/O region request/release code into functions (Sudheesh Mavila) [2047999] - i2c: piix4: Replace hardcoded memory map size with a #define (Sudheesh Mavila) [2047999] - i2c: piix4: Detect secondary SMBus controller on AMD AM4 chipsets (Sudheesh Mavila) [2047999] - i2c: piix4: Add ACPI support (Sudheesh Mavila) [2047999] - i2c: piix4: Fix probing of reserved ports on AMD Family 16h Model 30h (Sudheesh Mavila) [2047999] - i2c: piix4: Fix port selection for AMD Family 16h Model 30h (Sudheesh Mavila) [2047999] - i2c-piix4: Add Hygon Dhyana SMBus support (Sudheesh Mavila) [2047999] - tracing: Remove WARN_ON in start_thread() (Jerome Marchand) [2090967] - net: usb: Fix spelling mistakes (José Ignacio Tornos Martínez) [1984353] - net: usb: cdc_ether: record speed in status method (José Ignacio Tornos Martínez) [1984353] - net: usb: usbnet: add method for reporting speed without MII (José Ignacio Tornos Martínez) [1984353] - e1000e: Fix possible overflow in LTR decoding (Ken Cox) [2037965] - e1000e: Print PHY register address when MDI read/write fails (Ken Cox) [2037965] - e1000e: Correct NVM checksum verification flow (Ken Cox) [2037965] - e1000e: Fix possible HW unit hang after an s0ix exit (Ken Cox) [2037965 2049952] - e1000e: Handshake with CSME starts from ADL platforms (Ken Cox) [2037965 2049952] - e1000e: Separate ADP board type from TGP (Ken Cox) [2037965 2049952] - e1000e: Remove useless DMA-32 fallback configuration (Ken Cox) [2037965] - e1000e: Remove redundant statement (Ken Cox) [2037965] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2037965] - net: e1000e: solve insmod 'Unknown symbol mutex_lock' error (Ken Cox) [2037965] - RDMA/irdma: Add SW mechanism to generate completions on error (Kamal Heib) [2100316] - RDMA/irdma: Remove the redundant variable (Kamal Heib) [2100316] - RDMA/irdma: Add support for DSCP (Kamal Heib) [2100316] - RDMA/irdma: Use irq_update_affinity_hint() (Kamal Heib) [2100316] - RDMA/irdma: Set protocol based on PF rdma_mode flag (Kamal Heib) [2100316 2096481] - virtio-ring: fix DMA metadata flags (Cindy Lu) [1969742] - virtio_ring: fix typos in vring_desc_extra (Jason Wang) [1969742] - virtio-ring: store DMA metadata in desc_extra for split virtqueue (Jason Wang) [1969742] - virtio: use err label in __vring_new_virtqueue() (Jason Wang) [1969742] - virtio_ring: introduce virtqueue_desc_add_split() (Jason Wang) [1969742] - virtio_ring: secure handling of mapping errors (Jason Wang) [1969742] - virtio-ring: factor out desc_extra allocation (Jason Wang) [1969742] - virtio_ring: rename vring_desc_extra_packed (Jason Wang) [1969742] - virtio-ring: maintain next in extra state for packed virtqueue (Jason Wang) [1969742] - drivers/base: fix userspace break from using bin_attributes for cpumap and cpulist (Phil Auld) [2089715] - rpminspect: disable abidiff scanning (Jarod Wilson)- Netvsc: Call hv_unmap_memory() in the netvsc_device_remove() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Release cpu lock in error case (Mohammed Gamal) [2086613] - Drivers: hv: Fix syntax errors in comments (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Don't assign VMbus channel interrupts to isolated CPUs (Mohammed Gamal) [2086613] - hv_balloon: Fix balloon_probe() and balloon_remove() error handling (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: fix typo in comment (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Remove support for Hyper-V 2008 and Hyper-V 2008R2/Win7 (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Refactor the ring-buffer iterator functions (Mohammed Gamal) [2086613] - hv_sock: Copy packets sent by Hyper-V out of the ring buffer (Mohammed Gamal) [2086613] - hv_sock: Check hv_pkt_iter_first_raw()'s return value (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Accept hv_sock offers in isolated guests (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce {lock,unlock}_requestor() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce vmbus_request_addr_match() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce vmbus_sendpacket_getid() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix handling of messages with transaction ID of zero (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Add VMbus IMC device to unsupported list (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Replace smp_store_mb() with virt_store_mb() (Mohammed Gamal) [2086613] - Drivers: hv: balloon: Disable balloon and hot-add accordingly (Mohammed Gamal) [2086613] - Drivers: hv: balloon: Support status report for larger page sizes (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Prevent load re-ordering when reading ring buffer (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix potential crash on module unload (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix initialization of device object in vmbus_device_register() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Deactivate sysctl_record_panic_msg by default in isolated guests (Mohammed Gamal) [2086613] - drivers: hv: log when enabling crash_kexec_post_notifiers (Mohammed Gamal) [2086613] - Drivers: hv: utils: Make use of the helper macro LIST_HEAD() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Rework use of DMA_BIT_MASK(64) (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix memory leak in vmbus_add_channel_kobj (Mohammed Gamal) [2086613] - Drivers: hv: Compare cpumasks and not their weights in init_vp_index() (Mohammed Gamal) [2086613] - Drivers: hv: Rename 'alloced' to 'allocated' (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Use struct_size() helper in kmalloc() (Mohammed Gamal) [2086613] - Drivers: hv: balloon: account for vmbus packet header in max_pkt_size (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Initialize request offers message for Isolation VM (Mohammed Gamal) [2086613] - Drivers: hv: Fix definition of hypercall input & output arg variables (Mohammed Gamal) [2086613] - net: netvsc: Add Isolation VM support for netvsc driver (Mohammed Gamal) [2086613] - scsi: storvsc: Add Isolation VM support for storvsc driver (Mohammed Gamal) [2086613] - Drivers: hv : vmbus: Adding NULL pointer check (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Remove unused code to check for subchannels (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Initialize VMbus ring buffer for Isolation VM (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Add SNP support for VMbus channel initiate message (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Mark vmbus ring buffer visible to host in Isolation VM (Mohammed Gamal) [2086613] - SUNRPC: Don't leak sockets in xs_local_connect() (Jeffrey Layton) [2089429] - SUNRPC: clean up some inconsistent indenting (Jeffrey Layton) [2089429] - SUNRPC: Ensure we flush any closed sockets before xs_xprt_free() (Jeffrey Layton) [2089429] - SUNRPC: Don't call connect() more than once on a TCP socket (Jeffrey Layton) [2089429] - net: openvswitch: fix misuse of the cached connection on tuple changes (Timothy Redaelli) [2099213] - sfc: fix considering that all channels have TX queues (Íñigo Huguet) [1851823] - sfc: fix wrong tx channel offset with efx_separate_tx_channels (Íñigo Huguet) [1851823] - intel/igb:fix repeated words in comments (Corinna Vinschen) [2037959] - igb: remove unexpected word "the" (Corinna Vinschen) [2037959] - igb: Make DMA faster when CPU is active on the PCIe link (Corinna Vinschen) [2037959] - igb: fix a use-after-free issue in igb_clean_tx_ring (Corinna Vinschen) [2037959] - igb: Remove duplicate defines (Corinna Vinschen) [2037959] - igb: skip phy status check where unavailable (Corinna Vinschen) [2037959] - igb: Convert kmap() to kmap_local_page() (Corinna Vinschen) [2037959] - igb: zero hwtstamp by default (Corinna Vinschen) [2037959] - igb: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037959] - PCI: Work around Intel I210 ROM BAR overlap defect (Corinna Vinschen) [2037959] - igb: support EXTTS on 82580/i354/i350 (Corinna Vinschen) [2037959] - igb: support PEROUT on 82580/i354/i350 (Corinna Vinschen) [2037959] - igb: move PEROUT and EXTTS isr logic to separate functions (Corinna Vinschen) [2037959] - igb: move SDP config initialization to separate function (Corinna Vinschen) [2037959] - igb: switch to napi_build_skb() (Corinna Vinschen) [2037959] - igb: remove never changed variable `ret_val' (Corinna Vinschen) [2037959] - NFSv4: Add an fattr allocation to _nfs4_discover_trunking() (Scott Mayhew) [2096393] - sunrpc: set cl_max_connect when cloning an rpc_clnt (Scott Mayhew) [2096393] - NFSv4.1 mark qualified async operations as MOVEABLE tasks (Scott Mayhew) [2096393] - powerpc/rtas: Allow ibm,platform-dump RTAS call with null buffer address (Desnes A. Nunes do Rosario) [2095041] - audit: free module name (Richard Guy Briggs) [2100259] - bfq: fix blkio cgroup leakage v4 (Ming Lei) [2093206] - scsi: scsi_dh_alua: Properly handle the ALUA transitioning state (Ewan D. Milne) [1992870] - mm: sparse: remove __section_nr() function (Mark Langsdorf) [2067280] - mm: sparse: pass section_nr to find_memory_block (Mark Langsdorf) [2067280] - mm: sparse: pass section_nr to section_mark_present (Mark Langsdorf) [2067280] - headers/uninline: Uninline single-use function: kobject_has_children() (Mark Langsdorf) [2067280] - arch_topology: Do not set llc_sibling if llc_id is invalid (Mark Langsdorf) [2067280] - topology: make core_mask include at least cluster_siblings (Mark Langsdorf) [2067280] - regmap: allow a defined reg_base to be added to every address (Mark Langsdorf) [2067280] - regmap: add configurable downshift for addresses (Mark Langsdorf) [2067280] - drivers/base/dd.c : Remove the initial value of the global variable (Mark Langsdorf) [2067280] - devres: fix typos in comments (Mark Langsdorf) [2067280] - base: soc: Make soc_device_match() simpler and easier to read (Mark Langsdorf) [2067280] - driver core: Refactor sysfs and drv/bus remove hooks (Mark Langsdorf) [2067280] - driver core: Refactor multiple copies of device cleanup (Mark Langsdorf) [2067280] - arch_topology: obtain cpu capacity using information from CPPC (Mark Langsdorf) [2067280] - PM: core: keep irq flags in device_pm_check_callbacks() (Mark Langsdorf) [2067280] - PM: sleep: Add device name to suspend_report_result() (Mark Langsdorf) [2067280] - PM: runtime: Have devm_pm_runtime_enable() handle pm_runtime_dont_use_autosuspend() (Mark Langsdorf) [2067280] - PM: sleep: wakeup: Fix typos in comments (Mark Langsdorf) [2067280] - PM: domains: Fix sleep-in-atomic bug caused by genpd_debug_remove() (Mark Langsdorf) [2067280] - PM: domains: use dev_err_probe() to simplify error handling (Mark Langsdorf) [2067280] - PM: domains: Prevent power off for parent unless child is in deepest state (Mark Langsdorf) [2067280] - driver core: cleanup double words comments (Mark Langsdorf) [2067280] - device property: Don't split fwnode_get_irq*() APIs in the code (Mark Langsdorf) [2067280] - regmap: irq: cleanup comments (Mark Langsdorf) [2067280] - platform: use dev_err_probe() in platform_get_irq_byname() (Mark Langsdorf) [2067280] - devtmpfs: drop redundant fs parameters from internal fs (Mark Langsdorf) [2067280] - component: Replace most references to 'master' with 'aggregate device' (Mark Langsdorf) [2067280] - device property: Add fwnode_irq_get_byname (Mark Langsdorf) [2067280] - regmap-irq: Fix typo in comment (Mark Langsdorf) [2067280] - driver core: Free DMA range map when device is released (Mark Langsdorf) [2067280] - regmap-irq: Update interrupt clear register for proper reset (Mark Langsdorf) [2067280] - PM: s2idle: ACPI: Fix wakeup interrupts handling (Mark Langsdorf) [2067280] - devtmpfs regression fix: reconfigure on each mount (Mark Langsdorf) [2067280] - regmap: debugfs: Fix indentation (Mark Langsdorf) [2067280] - regmap: Call regmap_debugfs_exit() prior to _init() (Mark Langsdorf) [2067280] - driver core: Make bus notifiers in right order in really_probe() (Mark Langsdorf) [2067280] - driver core: Move driver_sysfs_remove() after driver_sysfs_add() (Mark Langsdorf) [2067280] - driver core: Simplify async probe test code by using ktime_ms_delta() (Mark Langsdorf) [2067280] - PM: runtime: Simplify locking in pm_runtime_put_suppliers() (Mark Langsdorf) [2067280] - software node: fix wrong node passed to find nargs_prop (Mark Langsdorf) [2067280] - driver core: platform: document registration-failure requirement (Mark Langsdorf) [2067280] - device property: Add fwnode_iomap() (Mark Langsdorf) [2067280] - device property: Use fwnode_graph_for_each_endpoint() macro (Mark Langsdorf) [2067280] - device property: Implement fwnode_graph_get_endpoint_count() (Mark Langsdorf) [2067280] - device property: Fix documentation for FWNODE_GRAPH_DEVICE_DISABLED (Mark Langsdorf) [2067280] - rtc: Check return value from mc146818_get_time() (Mark Langsdorf) [2067280] - device property: Check fwnode->secondary when finding properties (Mark Langsdorf) [2067280] - topology/sysfs: rework book and drawer topology ifdefery (Mark Langsdorf) [2067280] - topology/sysfs: export cluster attributes only if an architectures has support (Mark Langsdorf) [2067280] - topology/sysfs: export die attributes only if an architectures has support (Mark Langsdorf) [2067280] - driver core: Don't call device_remove_properties() from device_del() (Mark Langsdorf) [2067280] - regmap: allow to define reg_update_bits for no bus configuration (Mark Langsdorf) [2067280] - platform/x86: amd-pmc: Set QOS during suspend on CZN w/ timer wakeup (Mark Langsdorf) [2067250] - PM: sleep: Fix error handling in dpm_prepare() (Mark Langsdorf) [2067250] - PM: sleep: Avoid calling put_device() under dpm_list_mtx (Mark Langsdorf) [2067250] - PM: sleep: Fix runtime PM based cpuidle support (Mark Langsdorf) [2067250] - PM / wakeirq: support enabling wake-up irq after runtime_suspend called (Mark Langsdorf) [2067250] - device property: Drop redundant NULL checks (Mark Langsdorf) [2067250] - PM: sleep: Pause cpuidle later and resume it earlier during system transitions (Mark Langsdorf) [2067250] - PM: suspend: Do not pause cpuidle in the suspend-to-idle path (Mark Langsdorf) [2067250] - regmap: spi: Set regmap max raw r/w from max_transfer_size (Mark Langsdorf) [2067250] - PM: sleep: Do not let "syscore" devices runtime-suspend during system transitions (Mark Langsdorf) [2067250] - component: do not leave master devres group open after bind (Mark Langsdorf) [2067250] - driver core: Provide device_match_acpi_handle() helper (Mark Langsdorf) [2067250] - regmap: Fix possible double-free in regcache_rbtree_exit() (Mark Langsdorf) [2067250] - device property: build kunit tests without structleak plugin (Mark Langsdorf) [2067250] - driver core: Reject pointless SYNC_STATE_ONLY device links (Mark Langsdorf) [2067250] - firmware_loader: add a sanity check for firmware_request_builtin() (Mark Langsdorf) [2067250] - firmware_loader: split built-in firmware call (Mark Langsdorf) [2067250] - firmware_loader: fix pre-allocated buf built-in firmware use (Mark Langsdorf) [2067250] - drivers/base/component.c: remove superfluous header files from component.c (Mark Langsdorf) [2067250] - drivers/base/arch_topology.c: remove superfluous header (Mark Langsdorf) [2067250] - driver core: use NUMA_NO_NODE during device_initialize (Mark Langsdorf) [2067250] - driver core: Fix possible memory leak in device_link_add() (Mark Langsdorf) [2067250] - driver core: Add debug logs when fwnode links are added/deleted (Mark Langsdorf) [2067250] - driver core: Create __fwnode_link_del() helper function (Mark Langsdorf) [2067250] - driver core: Set deferred probe reason when deferred by driver core (Mark Langsdorf) [2067250] - driver core: fw_devlink: Add support for FWNODE_FLAG_NEEDS_CHILD_BOUND_ON_ADD (Mark Langsdorf) [2067250] - driver core: Clarify that dev_err_probe() is OK even w/out -EPROBE_DEFER (Mark Langsdorf) [2067250] - driver core: fw_devlink: Improve handling of cyclic dependencies (Mark Langsdorf) [2067250] - software node: balance refcount for managed software nodes (Mark Langsdorf) [2067250] - driver core: platform: Make use of the helper macro SET_RUNTIME_PM_OPS() (Mark Langsdorf) [2067250] - PM: base: power: don't try to use non-existing RTC for storing data (Mark Langsdorf) [2067250] - PM: sleep: core: Avoid setting power.must_resume to false (Mark Langsdorf) [2067250] - PM: sleep: wakeirq: drop useless parameter from dev_pm_attach_wake_irq() (Mark Langsdorf) [2067250] - PM: domains: Fix domain attach for CONFIG_PM_OPP=n (Mark Langsdorf) [2067250] - PM: runtime: add devm_pm_clk_create helper (Mark Langsdorf) [2067250] - PM: runtime: add devm_pm_runtime_enable helper (Mark Langsdorf) [2067250] - regmap: teach regmap to use raw spinlocks if requested in the config (Mark Langsdorf) [2067250] - PM: domains: Add support for 'required-opps' to set default perf state (Mark Langsdorf) [2067250] - Revert "media: device property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary" (Mark Langsdorf) [2067250] - driver: base: Prefer unsigned int to bare use of unsigned (Mark Langsdorf) [2067250] - cacheinfo: clear cache_leaves(cpu) in free_cache_attributes() (Mark Langsdorf) [2067250] - driver core: Fix error return code in really_probe() (Mark Langsdorf) [2067250] - driver: base: Replace symbolic permissions with octal permissions (Mark Langsdorf) [2067250] - regmap: Prefer unsigned int to bare use of unsigned (Mark Langsdorf) [2067250] - regmap: fix the offset of register error log (Mark Langsdorf) [2067250] - bpf: Fix request_sock leak in sk lookup helpers (Antoine Tenart) [2085313] - crypto: fips - make proc files report fips module name and version (Vladis Dronov) [2103966] - net: tipc: fix possible refcount leak in tipc_sk_create() (Xin Long) [2106048] - tipc: move bc link creation back to tipc_node_create (Xin Long) [2106048] - tipc: fix use-after-free Read in tipc_named_reinit (Xin Long) [2106048] - tipc: check attribute length for bearer name (Xin Long) [2106048] - ice: Fix memory corruption in VF driver (Petr Oros) [2037937] - ice: Fix queue config fail handling (Petr Oros) [2037937] - ice: Sync VLAN filtering features for DVM (Petr Oros) [2037937] - ice: Fix PTP TX timestamp offset calculation (Petr Oros) [2037937] - ice: Fix interrupt moderation settings getting cleared (Petr Oros) [2037937] - ice: fix possible under reporting of ethtool Tx and Rx statistics (Petr Oros) [2037937] - ice: allow creating VFs for !CONFIG_NET_SWITCHDEV (Petr Oros) [2037937] - ice: add trace events for tx timestamps (Petr Oros) [2037937] - ice: fix return value check in ice_gnss.c (Petr Oros) [2037937] - ice: remove PF pointer from ice_check_vf_init (Petr Oros) [2037937] - ice: introduce ice_virtchnl.c and ice_virtchnl.h (Petr Oros) [2037937] - ice: cleanup long lines in ice_sriov.c (Petr Oros) [2037937] - ice: introduce ICE_VF_RESET_LOCK flag (Petr Oros) [2037937] - ice: introduce ICE_VF_RESET_NOTIFY flag (Petr Oros) [2037937] - ice: convert ice_reset_vf to take flags (Petr Oros) [2037937] - ice: convert ice_reset_vf to standard error codes (Petr Oros) [2037937] - ice: make ice_reset_all_vfs void (Petr Oros) [2037937] - ice: drop is_vflr parameter from ice_reset_all_vfs (Petr Oros) [2037937] - ice: move reset functionality into ice_vf_lib.c (Petr Oros) [2037937] - ice: fix a long line warning in ice_reset_vf (Petr Oros) [2037937] - ice: introduce VF operations structure for reset flows (Petr Oros) [2037937] - ice: fix incorrect dev_dbg print mistaking 'i' for vf->vf_id (Petr Oros) [2037937] - ice: introduce ice_vf_lib.c, ice_vf_lib.h, and ice_vf_lib_private.h (Petr Oros) [2037937] - ice: use ice_is_vf_trusted helper function (Petr Oros) [2037937] - ice: log an error message when eswitch fails to configure (Petr Oros) [2037937] - ice: cleanup error logging for ice_ena_vfs (Petr Oros) [2037937] - ice: move ice_set_vf_port_vlan near other .ndo ops (Petr Oros) [2037937] - ice: refactor spoofchk control code in ice_sriov.c (Petr Oros) [2037937] - ice: rename ICE_MAX_VF_COUNT to avoid confusion (Petr Oros) [2037937] - ice: remove unused definitions from ice_sriov.h (Petr Oros) [2037937] - ice: convert vf->vc_ops to a const pointer (Petr Oros) [2037937] - ice: remove circular header dependencies on ice.h (Petr Oros) [2037937] - ice: rename ice_virtchnl_pf.c to ice_sriov.c (Petr Oros) [2037937] - ice: rename ice_sriov.c to ice_vf_mbx.c (Petr Oros) [2037937] - ice: Fix FV offset searching (Petr Oros) [2037937] - ice: Add support for outer dest MAC for ADQ tunnels (Petr Oros) [2037937] - ice: avoid XDP checks in ice_clean_tx_irq() (Petr Oros) [2037937] - ice: change "can't set link" message to dbg level (Petr Oros) [2037937] - ice: Add slow path offload stats on port representor in switchdev (Petr Oros) [2037937] - ice: Add support for inner etype in switchdev (Petr Oros) [2037937] - ice: convert VF storage to hash table with krefs and RCU (Petr Oros) [2037937] - ice: introduce VF accessor functions (Petr Oros) [2037937] - ice: factor VF variables to separate structure (Petr Oros) [2037937] - ice: convert ice_for_each_vf to include VF entry iterator (Petr Oros) [2037937] - ice: use ice_for_each_vf for iteration during removal (Petr Oros) [2037937] - ice: remove checks in ice_vc_send_msg_to_vf (Petr Oros) [2037937] - ice: move VFLR acknowledge during ice_free_vfs (Petr Oros) [2037937] - ice: move clear_malvf call in ice_free_vfs (Petr Oros) [2037937] - ice: pass num_vfs to ice_set_per_vf_res() (Petr Oros) [2037937] - ice: store VF pointer instead of VF ID (Petr Oros) [2037937] - ice: refactor unwind cleanup in eswitch mode (Petr Oros) [2037937] - ice: add TTY for GNSS module for E810T device (Petr Oros) [2037937] - ice: Simplify tracking status of RDMA support (Petr Oros) [2037937] - ice: Add ability for PF admin to enable VF VLAN pruning (Petr Oros) [2037937] - ice: Add support for 802.1ad port VLANs VF (Petr Oros) [2037937] - ice: Advertise 802.1ad VLAN filtering and offloads for PF netdev (Petr Oros) [2037937] - ice: Support configuring the device to Double VLAN Mode (Petr Oros) [2037937] - ice: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 (Petr Oros) [2037937] - ice: Add hot path support for 802.1Q and 802.1ad VLAN offloads (Petr Oros) [2037937] - ice: Add outer_vlan_ops and VSI specific VLAN ops implementations (Petr Oros) [2037937] - ice: Adjust naming for inner VLAN operations (Petr Oros) [2037937] - ice: Use the proto argument for VLAN ops (Petr Oros) [2037937] - ice: Refactor vf->port_vlan_info to use ice_vlan (Petr Oros) [2037937] - ice: Introduce ice_vlan struct (Petr Oros) [2037937] - ice: Add new VSI VLAN ops (Petr Oros) [2037937] - ice: Add helper function for adding VLAN 0 (Petr Oros) [2037937] - ice: Refactor spoofcheck configuration functions (Petr Oros) [2037937] - Revert "ice: Allow to pass VLAN tagged packets to VF when port VLAN is configured" (Petr Oros) [2037937] - Revert "ice: Do not enable VLAN pruning when spoofchk is enabled" (Petr Oros) [2037937] - ice: Remove likely for napi_complete_done (Petr Oros) [2037937] - ice: add support for DSCP QoS for IDC (Petr Oros) [2037937] - ice: respect metadata on XSK Rx to skb (Petr Oros) [2037937] - ice: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Petr Oros) [2037937] - ice: respect metadata in legacy-rx/ice_construct_skb() (Petr Oros) [2037937] - ice: Fix broken IFF_ALLMULTI handling (Petr Oros) [2037937]- i40e: Fix call trace in setup_tx_descriptors (Ivan Vecera) [2037943] - i40e: Fix calculating the number of queue pairs (Ivan Vecera) [2037943] - i40e: Fix adding ADQ filter to TC0 (Ivan Vecera) [2037943] - i40e: i40e_main: fix a missing check on list iterator (Ivan Vecera) [2037943] - i40e, xsk: Get rid of redundant 'fallthrough' (Ivan Vecera) [2037943] - i40e, xsk: Diversify return values from xsk_wakeup call paths (Ivan Vecera) [2037943] - i40e, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Ivan Vecera) [2037943] - i40e: Add Ethernet Connection X722 for 10GbE SFP+ support (Ivan Vecera) [2037943] - i40e: Add vsi.tx_restart to i40e ethtool stats (Ivan Vecera) [2037943] - i40e: Add tx_stopped stat (Ivan Vecera) [2037943] - i40e: Add support for MPLS + TSO (Ivan Vecera) [2037943] - i40e: little endian only valid checksums (Ivan Vecera) [2037943] - i40e: stop disabling VFs due to PF error responses (Ivan Vecera) [2037943] - i40e: remove dead stores on XSK hotpath (Ivan Vecera) [2037943] - i40e: Add a stat for tracking busy rx pages (Ivan Vecera) [2037943] - i40e: Add a stat for tracking pages waived (Ivan Vecera) [2037943] - i40e: Add a stat tracking new RX page allocations (Ivan Vecera) [2037943] - i40e: Aggregate and export RX page reuse stat (Ivan Vecera) [2037943] - i40e: Remove rx page reuse double count (Ivan Vecera) [2037943] - i40e: Fix race condition while adding/deleting MAC/VLAN filters (Ivan Vecera) [2037943] - i40e: Add new version of i40e_aq_add_macvlan function (Ivan Vecera) [2037943] - i40e: Add new versions of send ASQ command functions (Ivan Vecera) [2037943] - i40e: Add sending commands in atomic context (Ivan Vecera) [2037943] - i40e: Remove unused RX realloc stat (Ivan Vecera) [2037943] - i40e: Disable hw-tc-offload feature on driver load (Ivan Vecera) [2037943] - i40e: Fix reset path while removing the driver (Ivan Vecera) [2037943] - i40e: respect metadata on XSK Rx to skb (Ivan Vecera) [2037943] - i40e: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Ivan Vecera) [2037943] - i40e: Remove useless DMA-32 fallback configuration (Ivan Vecera) [2037943] - i40e: fix unsigned stat widths (Ivan Vecera) [2037943] - i40e: Fix for failed to init adminq while VF reset (Ivan Vecera) [2037943] - i40e: Fix queues reservation for XDP (Ivan Vecera) [2037943] - i40e: Fix issue when maximum queues is exceeded (Ivan Vecera) [2037943] - i40e: Increase delay to 1 s after global EMP reset (Ivan Vecera) [2037943] - i40e: remove variables set but not used (Ivan Vecera) [2037943] - i40e: Remove non-inclusive language (Ivan Vecera) [2037943] - i40e: Update FW API version (Ivan Vecera) [2037943] - i40e: Minimize amount of busy-waiting during AQ send (Ivan Vecera) [2037943] - i40e: Add ensurance of MacVlan resources for every trusted VF (Ivan Vecera) [2037943] - i40e: Fix incorrect netdev's real number of RX/TX queues (Ivan Vecera) [2037943] - i40e: Fix for displaying message regarding NVM version (Ivan Vecera) [2037943] - i40e: fix use-after-free in i40e_sync_filters_subtask() (Ivan Vecera) [2037943] - i40e: Fix to not show opcode msg on unsuccessful VF MAC change (Ivan Vecera) [2037943] - i40e: switch to napi_build_skb() (Ivan Vecera) [2037943] - i40e: Use irq_update_affinity_hint() (Ivan Vecera) [2037943] - mptcp: fix race on unaccepted mptcp sockets (Davide Caratti) [2076971] - mptcp: fix local endpoint accounting (Davide Caratti) [2076971] - mptcp: fix race in overlapping signal events (Davide Caratti) [2076971] - mptcp: fix subflow accounting on close (Davide Caratti) [2076971] - mptcp: introduce implicit endpoints (Davide Caratti) [2076971] - mptcp: constify a bunch of of helpers (Davide Caratti) [2076971] - mptcp: drop port parameter of mptcp_pm_add_addr_signal (Davide Caratti) [2076971] - mptcp: fix removing ids bitmap setting (Davide Caratti) [2076971] - selftests: mptcp: be more conservative with cookie MPJ limits (Davide Caratti) [2076971] - selftests: mptcp: more robust signal race test (Davide Caratti) [2076971] - mptcp: cleanup MPJ subflow list handling (Davide Caratti) [2076971] - mptcp: do not block subflows creation on errors (Davide Caratti) [2076971] - mptcp: keep track of local endpoint still available for each msk (Davide Caratti) [2076971] - mptcp: clean up harmless false expressions (Davide Caratti) [2076971] - mptcp: fix per socket endpoint accounting (Davide Caratti) [2076971] - selftests: mptcp: add fullmesh testcases (Davide Caratti) [2076971] - selftests: mptcp: set and print the fullmesh flag (Davide Caratti) [2076971] - mptcp: local addresses fullmesh (Davide Caratti) [2076971] - mptcp: remote addresses fullmesh (Davide Caratti) [2076971] - mptcp: remove MPTCP_ADD_ADDR_IPV6 and MPTCP_ADD_ADDR_PORT (Davide Caratti) [2076971] - mptcp: build ADD_ADDR/echo-ADD_ADDR option according pm.add_signal (Davide Caratti) [2076971] - mptcp: fix ADD_ADDR and RM_ADDR maybe flush addr_signal each other (Davide Caratti) [2076971] - mptcp: make MPTCP_ADD_ADDR_SIGNAL and MPTCP_ADD_ADDR_ECHO separate (Davide Caratti) [2076971] - mptcp: move drop_other_suboptions check under pm lock (Davide Caratti) [2076971] - mptcp: drop flags and ifindex arguments (Davide Caratti) [2076971] - mptcp: allow to use port and non-signal in set_flags (Davide Caratti) [2076971] - NFSv4.1 support for NFS4_RESULT_PRESERVER_UNLINKED (Scott Mayhew) [2066369] - KVM: selftests: get-reg-list: Add KVM_REG_ARM_FW_REG(3) (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: proton-pack: Include unprivileged eBPF status in Spectre v2 miti (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Use the clearbhb instruction in mitigations (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: add ID_AA64ISAR2_EL1 sys register (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Mitigate spectre style branch history side channels (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - KVM: arm64: Add templates for BHB mitigation sequences (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: proton-pack: Report Spectre-BHB vulnerabilities as part of Spect (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add percpu vectors for EL1 (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add macro for reading symbol addresses from the trampolin (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add vectors that have the bhb mitigation sequences (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add non-kpti __bp_harden_el1_vectors for mitigations (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Allow the trampoline text to occupy multiple pages (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Make the kpti trampoline's kpti sequence optional (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Move trampoline macros out of ifdef'd section (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Don't assume tramp_vectors is the start of the vectors (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Allow tramp_alias to access symbols after the 4K boundary (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Move the trampoline data page before the text page (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Free up another register on kpti's tramp_exit path (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Make the trampoline cleanup optional (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry.S: Add ventry overflow sanity checks (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add Cortex-X2 CPU part definition (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add Neoverse-N2, Cortex-A710 CPU part definition (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: syscall: exit userspace before unmasking exceptions (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: ptrace: Consistently use pseudo-singlestep exceptions (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - ethtool: Fix get module eeprom fallback (Ivan Vecera) [2091772] - xfs: use setattr_copy to set vfs inode attributes (Andrey Albershteyn) [2085622] - xfs: ensure log flush at the end of a synchronous fallocate call (Andrey Albershteyn) [2085622] - xfs: set prealloc flag in xfs_alloc_file_space() (Andrey Albershteyn) [2085622] - xfs: fallocate() should call file_modified() (Andrey Albershteyn) [2085622] - xfs: remove XFS_PREALLOC_SYNC (Andrey Albershteyn) [2085622] - drm/ast: Fix black screen when getting out of suspend (Jocelyn Falempe) [2097492] - drm/ast: Create the driver for ASPEED proprietory Display-Port (Jocelyn Falempe) [2097492] - x86: change default to spec_store_bypass_disable=prctl spectre_v2_user=prctl (Waiman Long) [2101938] - x86/speculation/mmio: Print SMT warning (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - KVM: x86/speculation: Disable Fill buffer clear within guests (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Reuse SRBDS mitigation for SBDS (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/srbds: Update SRBDS mitigation selection (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Enable CPU Fill buffer clearing on idle (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation: Add a common function for MD_CLEAR mitigation update (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - Documentation: Add documentation for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/tsx: Disable TSX development mode at boot (Waiman Long) [2090252] - x86/tsx: Use MSR_TSX_CTRL to clear CPUID bits (Waiman Long) [2090252] - x86/tsx: Clear CPUID bits when TSX always force aborts (Waiman Long) [2090252] - cpu/speculation: Add prototype for cpu_show_srbds() (Waiman Long) [2090252] - x86/cpu: Move arch_smt_update() to a neutral place (Waiman Long) [2090252] - serial: 8250_pci: rewrite pericom_do_set_divisor() (Myron Stowe) [2096364] - serial: 8250_pci: Fix ACCES entries in pci_serial_quirks array (Myron Stowe) [2096364] - serial: 8250_pci: Merge 8250_moxa to 8250_pci (Myron Stowe) [2096364] - serial: 8250: Use dev_get_drvdata where possible (Myron Stowe) [2096364] - serial: 8250: pericom_do_set_divisor can be static (Myron Stowe) [2096364] - serial: 8250: Add support for higher baud rates to Pericom chips (Myron Stowe) [2096364] - serial: 8250_pci: Have ACCES cards that use the four port Pericom PI7C9X7954 chip use the pci_pericom_setup() (Myron Stowe) [2096364] - serial: 8250_pci: Fix number of ports for ACCES serial cards (Myron Stowe) [2096364] - serial: 8250_pci: Replace custom code with pci_match_id() (Myron Stowe) [2096364] - net/sched: act_police: more accurate MTU policing (Davide Caratti) [2100893] - selinux: initialize proto variable in selinux_ip_postroute_compat() (Ondrej Mosnacek) [2005892] - selinux: fix a sock regression in selinux_ip_postroute_compat() (Ondrej Mosnacek) [2005892] - LSM: Avoid warnings about potentially unused hook variables (Ondrej Mosnacek) [2005892] - selinux: fix all of the W=1 build warnings (Ondrej Mosnacek) [2005892] - selinux: make better use of the nf_hook_state passed to the NF hooks (Ondrej Mosnacek) [2005892] - selinux: fix race condition when computing ocontext SIDs (Ondrej Mosnacek) [2005892 1969344] - selinux: remove unneeded ipv6 hook wrappers (Ondrej Mosnacek) [2005892] - lsm_audit: avoid overloading the "key" audit field (Ondrej Mosnacek) [2005892] - security: remove unneeded subdir-$(CONFIG_...) (Ondrej Mosnacek) [2005892] - selinux: return early for possible NULL audit buffers (Ondrej Mosnacek) [2005892] - selinux: correct the return value when loads initial sids (Ondrej Mosnacek) [2005892] - audit: remove unnecessary 'ret' initialization (Ondrej Mosnacek) [2005892] - selinux: kill 'flags' argument in avc_has_perm_flags() and avc_audit() (Ondrej Mosnacek) [2005892] - selinux: slow_avc_audit has become non-blocking (Ondrej Mosnacek) [2005892] - selinux: Fix kernel-doc (Ondrej Mosnacek) [2005892] - selinux: use __GFP_NOWARN with GFP_NOWAIT in the AVC (Ondrej Mosnacek) [2005892] - lsm_audit,selinux: pass IB device name by reference (Ondrej Mosnacek) [2005892] - selinux: Remove redundant assignment to rc (Ondrej Mosnacek) [2005892] - selinux: Corrected comment to match kernel-doc comment (Ondrej Mosnacek) [2005892] - selinux: delete selinux_xfrm_policy_lookup() useless argument (Ondrej Mosnacek) [2005892] - selinux: constify some avtab function arguments (Ondrej Mosnacek) [2005892] - selinux: simplify duplicate_policydb_cond_list() by using kmemdup() (Ondrej Mosnacek) [2005892] - selinux: add proper NULL termination to the secclass_map permissions (Ondrej Mosnacek) [2005892] - security: commoncap: clean up kernel-doc comments (Ondrej Mosnacek) [2005892] - security: commoncap: fix -Wstringop-overread warning (Ondrej Mosnacek) [2005892] - selinux: fix misspellings using codespell tool (Ondrej Mosnacek) [2005892] - selinux: fix misspellings using codespell tool (Ondrej Mosnacek) [2005892] - ext4: mballoc: Use this_cpu_read instead of this_cpu_ptr (Lukas Czerner) [2102619] - ext4: add reserved GDT blocks check (Lukas Czerner) [2099702] - ext4: make variable "count" signed (Lukas Czerner) [2099702] - ext4: fix bug_on ext4_mb_use_inode_pa (Lukas Czerner) [2099702] - ext4: fix super block checksum incorrect after mount (Lukas Czerner) [2099702] - ext4: fix bug_on in __es_tree_search (Lukas Czerner) [2099702] - ext4: avoid cycles in directory h-tree (Lukas Czerner) [2099702] - ext4: verify dir block before splitting it (Lukas Czerner) [2099702] - ext4: fix bug_on in ext4_writepages (Lukas Czerner) [2099702] - ext4: reject the 'commit' option on ext2 filesystems (Lukas Czerner) [2099702] - ext4: fix use-after-free in ext4_rename_dir_prepare (Lukas Czerner) [2099702] - ext4: fix warning in ext4_handle_inode_extension (Lukas Czerner) [2099702]- i915: Explicitly #include (Michel Dänzer) [2041811] - i915: Use mdev_type_kobj_to_group_id instead of mtype_get_type_group_id (Michel Dänzer) [2041811] - drm/i915: #include for k(un)map APIs (Michel Dänzer) [2041811] - Revert "mm: remove the extra ZONE_DEVICE struct page refcount" (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.17..v5.18 (Michel Dänzer) [2041811] - iosys-map: Add a few more helpers (Michel Dänzer) [2041811] - iosys-map: Add offset to iosys_map_memcpy_to() (Michel Dänzer) [2041811] - dma-buf-map: Rename to iosys-map (Michel Dänzer) [2041811] - Revert "drm/amdgpu/display: set vblank_disable_immediate for DC" (Michel Dänzer) [2041811] - Revert "drm: import DMA_BUF module namespace" (Michel Dänzer) [2041811] - drm/virtio: Do not use virtio_reset_device (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.16..v5.17 (Michel Dänzer) [2041811] - agp/intel-gtt: reduce intel-gtt dependencies more (Michel Dänzer) [2041811] - agp/intel-gtt: Replace kernel.h with the necessary inclusions (Michel Dänzer) [2041811] - x86/gpu: Reserve stolen memory for first integrated Intel GPU (Michel Dänzer) [2041811] - drm/i915/rpl-s: Add PCI IDS for Raptor Lake S (Michel Dänzer) [2041811] - drm/amdgpu: Use MCE_PRIO_FIRST instead of MCE_PRIO_UC (Michel Dänzer) [2041811] - Revert "drm/amdgpu: disable runpm if we are the primary adapter" (Michel Dänzer) [2041811] - Revert "treewide: Replace the use of mem_encrypt_active() with cc_platform_has()" (Michel Dänzer) [2041811] - Revert "dma-buf: move dma-buf symbols into the DMA_BUF module namespace" (Michel Dänzer) [2041811] - Revert "fix for "dma-buf: move dma-buf symbols into the DMA_BUF module namespace"" (Michel Dänzer) [2041811] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.15..v5.16 (Michel Dänzer) [2041811] - drm/bochs: Explicitly #include (Michel Dänzer) [2041811] - Revert "gpu: Bulk conversion to generic_handle_domain_irq()" (Michel Dänzer) [2041811] - Revert "vfio/gvt: Fix open/close when multiple device FDs are open" (Michel Dänzer) [2041811] - drm: Drop linux/ prefix from stdarg.h include (Michel Dänzer) [2041811] - drm/i915: Convert to older tasklet API (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.14.21..v5.15 (Michel Dänzer) [2041811] - dma-buf: Fix kerneldoc comment for struct dma_fence_array (Michel Dänzer) [2041811] - Makefile: Add RHEL_DRM_EXTRAVERSION (Michel Dänzer) [2041811] - mei: me: add Alder Lake N device id. (Prarit Bhargava) [2072660] - pinctrl: alderlake: Fix register offsets for ADL-N variant (Prarit Bhargava) [2049965] - pinctrl: alderlake: Add Intel Alder Lake-N pin controller support (Prarit Bhargava) [2049965] - pinctrl: tigerlake: Revert "Add Alder Lake-M ACPI ID" (Prarit Bhargava) [2049965] - spi: pxa2xx: Add support for Intel Alder Lake PCH-M (Prarit Bhargava) [2089507] - RHEL-only: KVM: selftests: Compile rseq_test out on aarch64 (Eric Auger) [2078919] - KVM: arm64: Don't read a HW interrupt pending state in user context (Eric Auger) [2078919] - KVM: arm64: selftests: Add init ITS device test (Eric Auger) [2078919] - KVM: arm64: selftests: Add test for legacy GICv3 REDIST base partially above IPA range (Eric Auger) [2078919] - KVM: arm64: selftests: Add tests for GIC redist/cpuif partially above IPA range (Eric Auger) [2078919] - KVM: arm64: selftests: Add some tests for GICv2 in vgic_init (Eric Auger) [2078919] - KVM: arm64: selftests: Make vgic_init/vm_gic_create version agnostic (Eric Auger) [2078919] - KVM: arm64: selftests: Make vgic_init gic version agnostic (Eric Auger) [2078919] - KVM: arm64: vgic: Drop vgic_check_ioaddr() (Eric Auger) [2078919] - KVM: arm64: vgic-v3: Check ITS region is not above the VM IPA size (Eric Auger) [2078919] - KVM: arm64: vgic-v2: Check cpu interface region is not above the VM IPA size (Eric Auger) [2078919] - KVM: arm64: vgic-v3: Check redist region is not above the VM IPA size (Eric Auger) [2078919] - kvm: arm64: vgic: Introduce vgic_check_iorange (Eric Auger) [2078919] - Revert "RHEL-only: KVM: selftests: Fix AArch64 compilation" (Eric Auger) [2078919] - selftests: KVM: Free the GIC FD when cleaning up in arch_timer (Eric Auger) [2078919] - selftests: KVM: Don't leak GIC FD across dirty log test iterations (Eric Auger) [2078919] - KVM: arm64: selftests: Introduce vcpu_width_config (Eric Auger) [2078919] - KVM: arm64: mixed-width check should be skipped for uninitialized vCPUs (Eric Auger) [2078919] - KVM: arm64: Generalise VM features into a set of flags (Eric Auger) [2078919] - KVM: selftests: aarch64: Skip tests if we can't create a vgic-v3 (Eric Auger) [2078919] - kvm: selftests: aarch64: use a tighter assert in vgic_poke_irq() (Eric Auger) [2078919] - kvm: selftests: aarch64: fix some vgic related comments (Eric Auger) [2078919] - kvm: selftests: aarch64: fix the failure check in kvm_set_gsi_routing_irqchip_check (Eric Auger) [2078919] - kvm: selftests: aarch64: pass vgic_irq guest args as a pointer (Eric Auger) [2078919] - kvm: selftests: aarch64: fix assert in gicv3_access_reg (Eric Auger) [2078919] - KVM: selftests: Add vgic initialization for dirty log perf test for ARM (Eric Auger) [2078919] - KVM: arm64: vgic: Read HW interrupt pending state from the HW (Eric Auger) [2078919] - KVM: arm64: Emulate the OS Lock (Eric Auger) [2078919] - KVM: arm64: Allow guest to set the OSLK bit (Eric Auger) [2078919] - KVM: arm64: Stash OSLSR_EL1 in the cpu context (Eric Auger) [2078919] - KVM: arm64: Correctly treat writes to OSLSR_EL1 as undefined (Eric Auger) [2078919] - KVM: arm64: vgic: Replace kernel.h with the necessary inclusions (Eric Auger) [2078919] - KVM: arm64: Fix comment typo in kvm_vcpu_finalize_sve() (Eric Auger) [2078919] - KVM: arm64: selftests: get-reg-list: Add pauth configuration (Eric Auger) [2078919] - KVM: selftests: aarch64: Add test for restoring active IRQs (Eric Auger) [2078919] - KVM: selftests: aarch64: Add ISPENDR write tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add tests for IRQFD in vgic_irq (Eric Auger) [2078919] - KVM: selftests: Add IRQ GSI routing library functions (Eric Auger) [2078919] - KVM: selftests: aarch64: Add test_inject_fail to vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add tests for LEVEL_INFO in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Level-sensitive interrupts tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add preemption tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Cmdline arg to set EOI mode in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Cmdline arg to set number of IRQs in vgic_irq test (Eric Auger) [2078919] - KVM: selftests: aarch64: Abstract the injection functions in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add vgic_irq to test userspace IRQ injection (Eric Auger) [2078919] - KVM: selftests: aarch64: Add vGIC library functions to deal with vIRQ state (Eric Auger) [2078919] - KVM: selftests: Add kvm_irq_line library function (Eric Auger) [2078919] - KVM: selftests: aarch64: Add GICv3 register accessor library functions (Eric Auger) [2078919] - KVM: selftests: aarch64: Add function for accessing GICv3 dist and redist registers (Eric Auger) [2078919] - KVM: selftests: aarch64: Move gic_v3.h to shared headers (Eric Auger) [2078919] - KVM: selftests: arm64: Add support for various modes with 16kB page size (Eric Auger) [2078919] - KVM: selftests: arm64: Add support for VM_MODE_P36V48_{4K,64K} (Eric Auger) [2078919] - KVM: arm64: Fix comment on barrier in kvm_psci_vcpu_on() (Eric Auger) [2078919] - KVM: arm64: Fix comment for kvm_reset_vcpu() (Eric Auger) [2078919] - KVM: arm64: Use defined value for SCTLR_ELx_EE (Eric Auger) [2078919] - KVM: arm64: vgic: Demote userspace-triggered console prints to kvm_debug() (Eric Auger) [2078919] - KVM: arm64: Consolidate dist->ready setting into kvm_vgic_map_resources() (Eric Auger) [2078919] - arm64/kvm: Fix bitrotted comment for SVE handling in handle_exit.c (Eric Auger) [2078919] - KVM: arm64: Drop vcpu->arch.has_run_once for vcpu->pid (Eric Auger) [2078919] - KVM: arm64: Merge kvm_arch_vcpu_run_pid_change() and kvm_vcpu_first_run_init() (Eric Auger) [2078919] - KVM: arm64: Restructure the point where has_run_once is advertised (Eric Auger) [2078919] - KVM: arm64: Move kvm_arch_vcpu_run_pid_change() out of line (Eric Auger) [2078919] - KVM: arm64: Move SVE state mapping at HYP to finalize-time (Eric Auger) [2078919] - KVM: arm64: Move double-checked lock to kvm_vgic_map_resources() (Eric Auger) [2078919] - KVM: arm64: Constify kvm_io_gic_ops (Eric Auger) [2078919] - KVM: arm64: Avoid setting the upper 32 bits of TCR_EL2 and CPTR_EL2 to 1 (Eric Auger) [2078919] - selftests: KVM: Fix kvm device helper ioctl assertions (Eric Auger) [2078919] - ACPI: tables: Quiet ACPI table not found warning (Mark Langsdorf) [2067290] - ACPI/IORT: Check node revision for PMCG resources (Mark Langsdorf) [2067290] - PM: s2idle: ACPI: Fix wakeup interrupts handling (Mark Langsdorf) [2067290] - ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE (Mark Langsdorf) [2067290] - ACPI: PM: Revert "Only mark EC GPE for wakeup on Intel systems" (Mark Langsdorf) [2067290] - ACPI: require CRC32 to build (Mark Langsdorf) [2067290] - ACPI: DPTF: Support Raptor Lake (Mark Langsdorf) [2067290] - ACPI: scan: Rename label in acpi_scan_init() (Mark Langsdorf) [2067290] - ACPI: scan: Simplify initialization of power and sleep buttons (Mark Langsdorf) [2067290] - ACPI: scan: Change acpi_scan_init() return value type to void (Mark Langsdorf) [2067290] - ACPI: SPCR: check if table->serial_port.access_width is too wide (Mark Langsdorf) [2067290] - ACPI: APD: Check for NULL pointer after calling devm_ioremap() (Mark Langsdorf) [2067290] - ACPI: pfr_telemetry: Fix info leak in pfrt_log_ioctl() (Mark Langsdorf) [2067290] - ACPI: APD: Add a fmw property clk-name (Mark Langsdorf) [2067290] - ACPI: pfr_update: Fix return value check in pfru_write() (Mark Langsdorf) [2067290] - ACPI: processor: thermal: avoid cpufreq_get_policy() (Mark Langsdorf) [2067290] - ACPI / x86: Add acpi_quirk_skip_[i2c_client|serdev]_enumeration() helpers (Mark Langsdorf) [2067290] - ACPI: battery: Add the ThinkPad "Not Charging" quirk (Mark Langsdorf) [2067290] - acpi: Store CRC-32 hash of the _PLD in struct acpi_device (Mark Langsdorf) [2067290] - acpi: Export acpi_bus_type (Mark Langsdorf) [2067290] - ACPI: sysfs: use default_groups in kobj_type (Mark Langsdorf) [2067290] - ACPI: Introduce Platform Firmware Runtime Telemetry driver (Mark Langsdorf) [2067290] - ACPI: Introduce Platform Firmware Runtime Update device driver (Mark Langsdorf) [2067290] - efi: Introduce EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER and corresponding structures (Mark Langsdorf) [2067290] - ACPICA: Update version to 20211217 (Mark Langsdorf) [2067290] - ACPICA: iASL/NHLT table: "Specific Data" field support (Mark Langsdorf) [2067290] - ACPICA: iASL: Add suppport for AGDI table (Mark Langsdorf) [2067290] - ACPICA: iASL: Add TDEL table to both compiler/disassembler (Mark Langsdorf) [2067290] - ACPICA: Fixed a couple of warnings under MSVC (Mark Langsdorf) [2067290] - ACPICA: Change a return_ACPI_STATUS (AE_BAD_PARAMETER) (Mark Langsdorf) [2067290] - ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 (Mark Langsdorf) [2067290] - ACPICA: Add support for PCC Opregion special context data (Mark Langsdorf) [2067290] - ACPICA: Fix wrong interpretation of PCC address (Mark Langsdorf) [2067290] - ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() (Mark Langsdorf) [2067290] - ACPICA: Utilities: Avoid deleting the same object twice in a row (Mark Langsdorf) [2067290] - ACPICA: Fix AEST Processor generic resource substructure data field byte length (Mark Langsdorf) [2067290] - ACPICA: iASL/Disassembler: Additional support for NHLT table (Mark Langsdorf) [2067290] - ACPICA: Avoid subobject buffer overflow when validating RSDP signature (Mark Langsdorf) [2067290] - ACPICA: Macros: Remove ACPI_PHYSADDR_TO_PTR (Mark Langsdorf) [2067290] - ACPICA: Use original pointer for virtual origin tables (Mark Langsdorf) [2067290] - ACPICA: Use original data_table_region pointer for accesses (Mark Langsdorf) [2067290] - ACPICA: actypes.h: Expand the ACPI_ACCESS_ definitions (Mark Langsdorf) [2067290] - ACPI: CPPC: Amend documentation in the comments (Mark Langsdorf) [2067290] - ACPI: NFIT: Import GUID before use (Mark Langsdorf) [2067290] - ACPI: PM: Remove redundant cache flushing (Mark Langsdorf) [2067290] - ACPI: Use acpi_fetch_acpi_dev() instead of acpi_bus_get_device() (Mark Langsdorf) [2067290] - ACPI: tables: Add AEST to the list of known table signatures (Mark Langsdorf) [2067290] - ACPI: PM: Avoid CPU cache flush when entering S4 (Mark Langsdorf) [2067290] - PM: hibernate: Allow ACPI hardware signature to be honoured (Mark Langsdorf) [2067290] - ACPI: PMIC: xpower: Fix _TMP ACPI errors (Mark Langsdorf) [2067290] - ACPI: PMIC: allow drivers to provide a custom lpat_raw_to_temp() function (Mark Langsdorf) [2067290] - ACPI: PMIC: constify all struct intel_pmic_opregion_data declarations (Mark Langsdorf) [2067290] - ACPI: EC: Mark the ec_sys write_support param as module_param_hw() (Mark Langsdorf) [2067290] - ACPI: EC: Relocate acpi_ec_create_query() and drop acpi_ec_delete_query() (Mark Langsdorf) [2067290] - ACPI: EC: Make the event work state machine visible (Mark Langsdorf) [2067290] - ACPI: EC: Avoid queuing unnecessary work in acpi_ec_submit_event() (Mark Langsdorf) [2067290] - ACPI: EC: Rename three functions (Mark Langsdorf) [2067290] - ACPI: EC: Simplify locking in acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Rearrange the loop in acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Fold acpi_ec_check_event() into acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Pass one argument to acpi_ec_query() (Mark Langsdorf) [2067290] - ACPI: EC: Call advance_transaction() from acpi_ec_dispatch_gpe() (Mark Langsdorf) [2067290] - ACPI: EC: Rework flushing of EC work while suspended to idle (Mark Langsdorf) [2067290] - ACPI / x86: Add PWM2 on the Xiaomi Mi Pad 2 to the always_present list (Mark Langsdorf) [2067290] - ACPI / x86: Add not-present quirk for the PCI0.SDHB.BRC1 device on the GPD win (Mark Langsdorf) [2067290] - ACPI / x86: Allow specifying acpi_device_override_status() quirks by path (Mark Langsdorf) [2067290] - ACPI: Change acpi_device_always_present() into acpi_device_override_status() (Mark Langsdorf) [2067290] - ACPI / x86: Drop PWM2 device on Lenovo Yoga Book from always present table (Mark Langsdorf) [2067290] - ACPI: processor idle: Use swap() instead of open coding it (Mark Langsdorf) [2067290] - ACPI: processor: Replace kernel.h with the necessary inclusions (Mark Langsdorf) [2067290] - ACPI: DPTF: Update device ID in a comment (Mark Langsdorf) [2067290] - ACPI: PM: Emit debug messages when enabling/disabling wakeup power (Mark Langsdorf) [2067290] - ACPI: thermal: drop an always true check (Mark Langsdorf) [2067290] - ACPI: Add a context argument for table parsing handlers (Mark Langsdorf) [2067290] - ACPI: Teach ACPI table parsing about the CEDT header format (Mark Langsdorf) [2067290] - ACPI: Keep sub-table parsing infrastructure available for modules (Mark Langsdorf) [2067290] - cxgb4: fix wrong shift. (Raju Rangoju) [1977437] - cxgb4: fix wrong ethtool n-tuple rule lookup (Raju Rangoju) [1977437] - cxgb4: halt chip before flashing PHY firmware image (Raju Rangoju) [1977437] - cxgb4: fix sleep in atomic when flashing PHY firmware (Raju Rangoju) [1977437] - cxgb4: fix endianness when flashing boot image (Raju Rangoju) [1977437] - cxgb4: avoid link re-train during TC-MQPRIO configuration (Raju Rangoju) [1977437] - cxgb4: fix regression with HASH tc prio value update (Raju Rangoju) [1977437] - cxgb4: avoid accessing registers when clearing filters (Raju Rangoju) [1977437] - net:CXGB4: fix leak if sk_buff is not used (Raju Rangoju) [1977437] - cxgb4: Fix unintentional sign extension issues (Raju Rangoju) [1977437] - cxgb4: remove unneeded if-null-free check (Raju Rangoju) [1977437] - PCI: vmd: Assign VMD IRQ domain before enumeration (Myron Stowe) [2050850] - PCI: vmd: Prevent recursive locking on interrupt allocation (Myron Stowe) [2050850] - PCI: vmd: Add DID 8086:A77F for all Intel Raptor Lake SKU's (Myron Stowe) [2050850] - PCI: vmd: Honor ACPI _OSC on PCIe features (Myron Stowe) [2050850] - PCI: vmd: Clean up domain before enumeration (Myron Stowe) [2050850] - PCI: vmd: Use PCI_POSSIBLE_ERROR() to check config reads (Myron Stowe) [2050850] - PCI: Add PCI_ERROR_RESPONSE and related definitions (Myron Stowe) [2050850] - PCI: vmd: Drop redundant includes of , (Myron Stowe) [2050850] - PCI: vmd: Assign a number to each VMD controller (Myron Stowe) [2050850] - PCI: vmd: Disable MSI-X remapping when possible (Myron Stowe) [2050850] - PCI: vmd: Offset Client VMD MSI-X vectors (Myron Stowe) [2050850] - PCI: vmd: Use msi_msg shadow structs (Myron Stowe) [2050850] - Merge tag 'pci-v5.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/g (Myron Stowe) [2050850] - PCI: vmd: Update VMD PM to correctly use generic PCI PM (Myron Stowe) [2050850] - PCI: vmd: Create IRQ allocation helper (Myron Stowe) [2050850] - PCI: vmd: Create IRQ Domain configuration helper (Myron Stowe) [2050850] - PCI: vmd: Create bus offset configuration helper (Myron Stowe) [2050850] - PCI: vmd: Create physical offset helper (Myron Stowe) [2050850] - PCI_vmd_Mark_VMD_irqdomain_with_DOMAIN_BUS_VMD_MSI (Myron Stowe) [2050850] - irqdomain/msi: Provide DOMAIN_BUS_VMD_MSI (Myron Stowe) [2050850] - PCI: vmd: Dont abuse vector irqomain as parent (Myron Stowe) [2050850] - PCI: designware-ep: Fix the Header Type check (Myron Stowe) [2050850] - PCI: vmd: Use Shadow MEMBAR registers for QEMU/KVM guests (Myron Stowe) [2050850] - PCI: vmd: Filter resource type bits from shadow register (Myron Stowe) [2050850] - PCI: Fix indentation (Myron Stowe) [2050850] - scsi: iscsi: Fix session removal on shutdown (Chris Leech) [2101760] - scsi: qedi: Use QEDI_MODE_NORMAL for error handling (Chris Leech) [2101760] - scsi: iscsi: Add helper to remove a session from the kernel (Chris Leech) [2101760] - scsi: iscsi: Clean up bound endpoints during shutdown (Chris Leech) [2101760] - scsi: iscsi: Allow iscsi_if_stop_conn() to be called from kernel (Chris Leech) [2101760] - scsi: iscsi: Fix HW conn removal use after free (Chris Leech) [2101760] - scsi: iscsi: Make iscsi_unregister_transport() return void (Chris Leech) [2101760] - scsi: core: iscsi: Directly use ida_alloc()/ida_free() (Chris Leech) [2101760] - scsi: iscsi: Exclude zero from the endpoint ID range (Chris Leech) [2101760] - scsi: iscsi: Fix harmless double shift bug (Chris Leech) [2101760] - scsi: libiscsi: Remove unnecessary memset() in iscsi_conn_setup() (Chris Leech) [2101760] - scsi: libiscsi: Teardown iscsi_cls_conn gracefully (Chris Leech) [2101760] - scsi: libiscsi: Add iscsi_cls_conn to sysfs after initialization (Chris Leech) [2101760] - scsi: iscsi: Add helper functions to manage iscsi_cls_conn (Chris Leech) [2101760] - scsi: iscsi: Drop temp workq_name (Chris Leech) [2101760] - scsi: iscsi: Use the session workqueue for recovery (Chris Leech) [2101760] - scsi: iscsi: ql4xxx: Use per-session workqueue for unbinding (Chris Leech) [2101760] - scsi: iscsi: Remove iscsi_scan_finished() (Chris Leech) [2101760] - scsi: libiscsi: Fix UAF in iscsi_conn_get_param()/iscsi_conn_teardown() (Chris Leech) [2101760] - scsi: libiscsi: Move ehwait initialization to iscsi_session_setup() (Chris Leech) [2101760] - x86/sme: Explicitly map new EFI memmap table as encrypted (Chris von Recklinghausen) [2091831] - x86/sme: Use #define USE_EARLY_PGTABLE_L5 in mem_encrypt_identity.c (Chris von Recklinghausen) [2091831] - efi/x86: Fix boot regression on systems with invalid memmap entries (Chris von Recklinghausen) [2091831] - efi: Add tracking for dynamically allocated memmaps (Chris von Recklinghausen) [2091831] - efi: Add a flags parameter to efi_memory_map (Chris von Recklinghausen) [2091831] - x86/kexec: fix memory leak of elf header buffer (Tao Liu) [2014945] - net: sched: add barrier to fix packet stuck problem for lockless qdisc (Davide Caratti) [2103025] - powercap: intel_rapl: add support for ALDERLAKE_N (David Arcari) [2096964] - clk: fix invalid usage of list cursor in unregister (David Arcari) [2105258] - clk: fix invalid usage of list cursor in register (David Arcari) [2105258] - powercap: intel_rapl: add support for RaptorLake (David Arcari) [2076724] - lib/math: move int_pow() from pwm_bl.c for wider use (Ivan Vecera) [2101700] - x86/fpu: KVM: Set the base guest FPU uABI size to sizeof(struct kvm_xsave) (Paul Lai) [2092066]- net/sched: cls_u32: fix possible leak in u32_init_knode() (Davide Caratti) [2081283] - net/sched: cls_u32: fix netns refcount changes in u32_change() (Davide Caratti) [2081283] - net/sched: flower: fix parsing of ethertype following VLAN header (Davide Caratti) [2081283] - net: sched: limit TC_ACT_REPEAT loops (Davide Caratti) [2081283] - net_sched: add __rcu annotation to netdev->qdisc (Davide Caratti) [2081283] - sch_htb: Fail on unsupported parameters when offload is requested (Davide Caratti) [2081283] - net_sched: restore "mpu xxx" handling (Davide Caratti) [2081283] - net: sched: sch_netem: Refactor code in 4-state loss generator (Davide Caratti) [2081283] - net/mlx5e: TC, Fix ct_clear overwriting ct action metadata (Amir Tzin) [2100474] - bpftool: man: Add missing top level docs (Yauheni Kaliuta) [2097615] - net/mlx5: CT: Fix header-rewrite re-use for tupels (Amir Tzin) [2101162] - cpuidle: haltpoll: Call cpuidle_poll_state_init() later (Mark Langsdorf) [2067313] - cpuidle: use default_groups in kobj_type (Mark Langsdorf) [2067313] - cpuidle: Fix cpuidle_remove_state_sysfs() kerneldoc comment (Mark Langsdorf) [2067313] - cpuidle: menu: Fix typo in a comment (Mark Langsdorf) [2067313] - cpuidle: Fix kobject memory leaks in error paths (Mark Langsdorf) [2067313] - cpuidle: menu: Take negative "sleep length" values into account (Mark Langsdorf) [2067313] - HID: elo: Revert USB reference counting (Benjamin Tissoires) [2073833] - HID: elo: fix memory leak in elo_probe (Benjamin Tissoires) [2073833] - fs: dlm: filter user dlm messages for kernel locks (Alexander Aring) [2026116] - psample: Add a fwd declaration for skbuff (Ivan Vecera) [2101706] - platform/x86/intel/sdsi: Fix bug in multi packet reads (Prarit Bhargava) [2100948] - platform/x86/intel/sdsi: Poll on ready bit for writes (Prarit Bhargava) [2100948] - platform/x86/intel/sdsi: Handle leaky bucket (Prarit Bhargava) [2100948] - indirect_call_wrapper: extend indirect wrapper to support up to 4 calls (Petr Oros) [2101705] - block: Fix handling of offline queues in blk_mq_alloc_request_hctx() (Ming Lei) [2081913] - netfilter: br_netfilter: do not skip all hooks with 0 priority (Florian Westphal) [2099732] - net: openvswitch: fix parsing of nw_proto for IPv6 fragments (Eelco Chaudron) [2101537] - s390/smp,vdso: fix ASCE handling (Tobias Huschle) [2103887] - [s390] s390/pci: fix zpci_zdev_put() on reserve (Claudio Imbrenda) [2102305] - intel/igbvf:fix repeated words in comments (Corinna Vinschen) [2037962] - igbvf: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037962] - SUNRPC: avoid race between mod_timer() and del_timer_sync() (Benjamin Coddington) [2104507] - iavf: Fix issue with MAC address of VF shown as zero (Petr Oros) [2037938] - iavf: switch to napi_build_skb() (Petr Oros) [2037938] - iavf: Remove non-inclusive language (Petr Oros) [2037938] - iavf: Fix incorrect use of assigning iavf_status to int (Petr Oros) [2037938] - iavf: stop leaking iavf_status as "errno" values (Petr Oros) [2037938] - iavf: Add usage of new virtchnl format to set default MAC (Petr Oros) [2037938] - iavf: refactor processing of VLAN V2 capability message (Petr Oros) [2037938] - iavf: Add support for 50G/100G in AIM algorithm (Petr Oros) [2037938] - iavf: remove redundant ret variable (Petr Oros) [2037938] - iavf: Remove useless DMA-32 fallback configuration (Petr Oros) [2037938] - cifs: fix potential double free during failed mount (Ronnie Sahlberg) [2088799] - cifs: escape spaces in share names (Dave Wysochanski) [2100367] - Documentation: add documentation for force_cgroup_v2_swappiness control (Nico Pache) [2084242] - Introduce force_cgroup_v2_swappiness tuneable to deprecate cgv1 per-cgroup swappiness (Nico Pache) [2084242] - redhat: trim rpminspect config file (Jarod Wilson)- powerpc/smp: Set numa node before updating mask (Diego Domingos) [2103833] - iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping() (Mohammed Gamal) [2088366] - irqdomain/treewide: Free firmware node after domain removal (Mohammed Gamal) [2088366] - x86/kvmclock: Fix Hyper-V Isolated VM's boot issue when vCPUs > 64 (Mohammed Gamal) [2088366] - x86/kvm: Don't waste memory if kvmclock is disabled (Mohammed Gamal) [2088366] - x86/pci: Create PCI/MSI irqdomain after x86_init.pci.arch_init() (Mohammed Gamal) [2088366] - x86/pci: Reducde #ifdeffery in PCI init code (Mohammed Gamal) [2088366] - hv_utils: Add comment about max VMbus packet size in VSS driver (Mohammed Gamal) [2088366] - x86/coco: Explicitly declare type of confidential computing platform (Mohammed Gamal) [2088366] - x86/hyper-v: Add hyperv Isolation VM check in the cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Use CC_ATTR attribute to generalize string I/O unroll (Mohammed Gamal) [2088366] - random: remove unused irq_flags argument from add_interrupt_randomness() (Mohammed Gamal) [2088366] - x86/hyperv: Fix definition of hv_ghcb_pg variable (Mohammed Gamal) [2088366] - swiotlb: Add CONFIG_HAS_IOMEM check around swiotlb_mem_remap() (Mohammed Gamal) [2088366] - hyper-v: Enable swiotlb bounce buffer for Isolation VM (Mohammed Gamal) [2088366] - swiotlb: Add swiotlb bounce buffer remap function for HV IVM (Mohammed Gamal) [2088366] - x86/hyperv: Refactor hv_msi_domain_free_irqs() (Mohammed Gamal) [2088366] - x86/hyperv: Move required MSRs check to initial platform probing (Mohammed Gamal) [2088366] - x86/hyperv: Fix NULL deref in set_hv_tscchange_cb() if Hyper-V setup fails (Mohammed Gamal) [2088366] - x86/hyperv: Protect set_hv_tscchange_cb() against getting preempted (Mohammed Gamal) [2088366] - x86/hyperv: Remove duplicate include (Mohammed Gamal) [2088366] - x86/hyperv: Remove duplicated include in hv_init (Mohammed Gamal) [2088366] - x86/hyperv: Add ghcb hvcall support for SNP VM (Mohammed Gamal) [2088366] - x86/hyperv: Add Write/Read MSR registers via ghcb page (Mohammed Gamal) [2088366] - x86/hyperv: Add new hvcall guest address host visibility support (Mohammed Gamal) [2088366] - x86/hyperv: Initialize shared memory boundary in the Isolation VM. (Mohammed Gamal) [2088366] - x86/hyperv: Initialize GHCB page in Isolation VM (Mohammed Gamal) [2088366] - x86/sev: Replace occurrences of sev_es_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Replace occurrences of sev_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev-es: Do not unroll string I/O for SEV-ES guests (Mohammed Gamal) [2088366] - efi/x86: Avoid RWX mappings for all of DRAM (Mohammed Gamal) [2088366] - x86/sme: Replace occurrences of sme_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Add an x86 version of cc_platform_has() (Mohammed Gamal) [2088366] - vmalloc: fix the owner argument for the new __vmalloc_node_range callers (Mohammed Gamal) [2088366] - mm: remove vmalloc_exec (Mohammed Gamal) [2088366] - arm64: use PAGE_KERNEL_ROX directly in alloc_insn_page (Mohammed Gamal) [2088366] - arm64/kprobes: set VM_FLUSH_RESET_PERMS on kprobe instruction pages (Mohammed Gamal) [2088366] - x86/hyperv: allocate the hypercall page with only read and execute bits (Mohammed Gamal) [2088366] - x86/hyperv: use vmalloc_exec for the hypercall page (Mohammed Gamal) [2088366] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [2088366] - x86/irq: Initialize PCI/MSI domain at PCI init time (Mohammed Gamal) [2088366] - x86/hyperv: implement an MSI domain for root partition (Mohammed Gamal) [2088366] - irqdomain/treewide: Keep firmware node unconditionally allocated (Mohammed Gamal) [2088366] - irqdomain/msi: Allow to override msi_domain_alloc/free_irqs() (Mohammed Gamal) [2088366] - x86/sev: Expose sev_es_ghcb_hv_call() for use by HyperV (Mohammed Gamal) [2088366] - x86/sev: Carve out HV call's return value verification (Mohammed Gamal) [2088366] - x86/sev: Fix noinstr for vc_ghcb_invalidate() (Mohammed Gamal) [2088366] - arch/cc: Introduce a function to check for confidential computing features (Mohammed Gamal) [2088366] - Revert "drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status" (Mohammed Gamal) [2088366] - Revert "drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status" (Mohammed Gamal) [2088366] - libperf tests: Fix typo in perf_evlist__open() failure error messages (Michael Petlan) [1878555] - libperf: Fix 32-bit build for tests uint64_t printf (Michael Petlan) [1878555] - libperf: Add arm64 support to perf_mmap__read_self() (Michael Petlan) [1878555] - libperf tests: Add test_stat_multiplexing test (Michael Petlan) [1878555] - libperf: Remove scaling process from perf_mmap__read_self() (Michael Petlan) [1878555] - libperf: Adopt perf_counts_values__scale() from tools/perf/util (Michael Petlan) [1878555] - arm64: perf: Don't register user access sysctl handler multiple times (Michael Petlan) [1878555] - Documentation: arm64: Document PMU counters access from userspace (Michael Petlan) [1878555] - arm64: perf: Enable PMU counter userspace access for perf event (Michael Petlan) [1878555] - arm64: perf: Add support for ARMv8.5-PMU 64-bit counters (Michael Petlan) [1878555] - arm64: perf: Clean up enable/disable calls (Michael Petlan) [1878555] - arm64: perf: Only advertise cap_user_time for arch_timer (Michael Petlan) [1878555] - arm64: perf: Implement correct cap_user_time (Michael Petlan) [1878555] - arm64: perf: Add userspace counter access disable switch (Michael Petlan) [1878555] - perf: Add a counter for number of user access events in context (Michael Petlan) [1878555] - x86: perf: Move RDPMC event flag to a common definition (Michael Petlan) [1878555] - Fix null ptr dereference crash due to premature release of ndlp. Upstream Status: RHEL-Only Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2034425 (Dick Kennedy) - lpfc updates for rh8.7 14.0.0.13 (Dick Kennedy) [2034425] - scsi: lpfc: Use sg_dma_address() and sg_dma_len() macros for NVMe I/O (Dick Kennedy) [2034425] - scsi: lpfc: Alter FPIN stat accounting logic (Dick Kennedy) [2034425] - scsi: lpfc: Decrement outstanding gidft_inp counter if lpfc_err_lost_link() (Dick Kennedy) [2034425] - scsi: lpfc: Use list_for_each_entry_safe() in rscn_recovery_check() (Dick Kennedy) [2034425] - scsi: lpfc: Fix ndlp put following a LOGO completion (Dick Kennedy) [2034425] - scsi: lpfc: Fix additional reference counting in lpfc_bsg_rport_els() (Dick Kennedy) [2034425] - scsi: lpfc: Fix resource leak in lpfc_sli4_send_seq_to_ulp() (Dick Kennedy) [2034425] - scsi: lpfc: Remove unneeded variable (Dick Kennedy) [2034425] - scsi: lpfc: Copyright updates for 14.2.0.2 patches (Dick Kennedy) [2034425] - scsi: lpfc: Expand setting ELS_ID field in ELS_REQUEST64_WQE (Dick Kennedy) [2034425] - scsi: lpfc: Update stat accounting for READ_STATUS mbox command (Dick Kennedy) [2034425] - scsi: lpfc: Change FA-PWWN detection methodology (Dick Kennedy) [2034425] - scsi: lpfc: Register for Application Services FC-4 type in Fabric topology (Dick Kennedy) [2034425] - scsi: lpfc: Remove false FDMI NVMe FC-4 support for NPIV ports (Dick Kennedy) [2034425] - scsi: lpfc: Revise FDMI reporting of supported port speed for trunk groups (Dick Kennedy) [2034425] - scsi: lpfc: Fix call trace observed during I/O with CMF enabled (Dick Kennedy) [2034425] - scsi: lpfc: Correct CRC32 calculation for congestion stats (Dick Kennedy) [2034425] - scsi: lpfc: Move MI module parameter check to handle dynamic disable (Dick Kennedy) [2034425] - scsi: lpfc: Remove unnecessary NULL pointer assignment for ELS_RDF path (Dick Kennedy) [2034425] - scsi: lpfc: Transition to NPR state upon LOGO cmpl if link down or aborted (Dick Kennedy) [2034425] - scsi: lpfc: Update fc_prli_sent outstanding only after guaranteed IOCB submit (Dick Kennedy) [2034425] - scsi: lpfc: Protect memory leak for NPIV ports sending PLOGI_RJT (Dick Kennedy) [2034425] - scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI (Dick Kennedy) [2034425] - scsi: lpfc: Clear fabric topology flag before initiating a new FLOGI (Dick Kennedy) [2034425] - scsi: lpfc: Fix SCSI I/O completion and abort handler deadlock (Dick Kennedy) [2034425] - scsi: lpfc: Requeue SCSI I/O to upper layer when fw reports link down (Dick Kennedy) [2034425] - scsi: lpfc: Zero SLI4 fcp_cmnd buffer's fcpCntl0 field (Dick Kennedy) [2034425] - scsi: lpfc: Fix diagnostic fw logging after a function reset (Dick Kennedy) [2034425] - scsi: lpfc: Move cfg_log_verbose check before calling lpfc_dmp_dbg() (Dick Kennedy) [2034425] - scsi: lpfc: Tweak message log categories for ELS/FDMI/NVMe rescan (Dick Kennedy) [2034425] - scsi: lpfc: Fix queue failures when recovering from PCI parity error (Dick Kennedy) [2034425] - scsi: lpfc: Fix unload hang after back to back PCI EEH faults (Dick Kennedy) [2034425] - scsi: lpfc: Improve PCI EEH Error and Recovery Handling (Dick Kennedy) [2034425] - scsi: lpfc: Use kcalloc() (Dick Kennedy) [2034425] - scsi: lpfc: Fix typos in comments (Dick Kennedy) [2034425] - scsi: lpfc: Remove failing soft_wwn support (Dick Kennedy) [2034425] - scsi: lpfc: Reduce log messages seen after firmware download (Dick Kennedy) [2034425] - scsi: lpfc: Remove NVMe support if kernel has NVME_FC disabled (Dick Kennedy) [2034425] - scsi: lpfc: Remove redundant flush_workqueue() call (Dick Kennedy) [2034425] - scsi: lpfc: Terminate string in lpfc_debugfs_nvmeio_trc_write() (Dick Kennedy) [2034425] - scsi: lpfc: Use irq_set_affinity() (Dick Kennedy) [2034425] - time: Handle negative seconds correctly in timespec64_to_ns() (Íñigo Huguet) [2098634] - time: Prevent undefined behaviour in timespec64_to_ns() (Íñigo Huguet) [2098634] - mm,hwpoison: return -EBUSY when migration fails (Rafael Aquini) [2092671 2099510] - mm,hwpoison: remove drain_all_pages from shake_page (Rafael Aquini) [2092671] - mm,hwpoison: disable pcplists before grabbing a refcount (Rafael Aquini) [2092671] - mm,hwpoison: fix printing of page flags (Rafael Aquini) [2092671] - mm,hwpoison: refactor get_any_page (Rafael Aquini) [2092671] - mm,hwpoison: drop unneeded pcplist draining (Rafael Aquini) [2092671] - mm,hwpoison: drain pcplists before bailing out for non-buddy zero-refcount page (Rafael Aquini) [2092671] - redhat: Exclude cpufreq.h from kernel-headers (Patrick Talbert)- dm raid: fix accesses beyond end of raid member array (Benjamin Marzinski) [2012340] - dm mirror log: clear log bits up to BITS_PER_LONG boundary (Benjamin Marzinski) [2012340] - dm: fix BLK_STS_DM_REQUEUE handling when dm_io represents split bio (Benjamin Marzinski) [2012340] - dm mirror log: round up region bitmap size to BITS_PER_LONG (Benjamin Marzinski) [2012340] - dm: improve abnormal bio processing (Benjamin Marzinski) [2012340] - dm: simplify bio-based IO accounting further (Benjamin Marzinski) [2012340] - dm: don't grab target io reference in dm_zone_map_bio (Benjamin Marzinski) [2012340] - dm: improve bio splitting and associated IO accounting (Benjamin Marzinski) [2012340] - dm era: commit metadata in postsuspend after worker stops (Benjamin Marzinski) [2012340] - dm: fix race in dm_start_io_acct (Benjamin Marzinski) [2012340] - block: remove bioset_init_from_src (Benjamin Marzinski) [2012340] - dm: fix bio_set allocation (Benjamin Marzinski) [2012340] - dm verity: set DM_TARGET_IMMUTABLE feature flag (Benjamin Marzinski) [2012340] - dm cache metadata: remove unnecessary variable in __dump_mapping (Benjamin Marzinski) [2012340] - dm mpath: provide high-resolution timer to HST for bio-based (Benjamin Marzinski) [2012340] - dm crypt: make printing of the key constant-time (Benjamin Marzinski) [2012340] - dm integrity: fix error code in dm_integrity_ctr() (Benjamin Marzinski) [2012340] - dm stats: add cond_resched when looping over entries (Benjamin Marzinski) [2012340] - dm: improve dm_io reference counting (Benjamin Marzinski) [2012340] - dm: switch to bdev based IO accounting interfaces (Benjamin Marzinski) [2012340] - block: add sectors parameter to bio_start_io_acct_time() (Benjamin Marzinski) [2012340] - dm: pass dm_io instance to dm_io_acct directly (Benjamin Marzinski) [2012340] - dm: don't pass bio to __dm_start_io_acct and dm_end_io_acct (Benjamin Marzinski) [2012340] - dm: use bio_sectors in dm_aceept_partial_bio (Benjamin Marzinski) [2012340] - dm: simplify basic targets (Benjamin Marzinski) [2012340] - dm: conditionally enable branching for less used features (Benjamin Marzinski) [2012340] - dm: move hot dm_io members to same cacheline as dm_target_io (Benjamin Marzinski) [2012340] - dm: add local variables to clone_endio and __map_bio (Benjamin Marzinski) [2012340] - dm: mark various branches unlikely (Benjamin Marzinski) [2012340] - dm: simplify dm_start_io_acct (Benjamin Marzinski) [2012340] - dm: simplify dm_io access in dm_split_and_process_bio (Benjamin Marzinski) [2012340] - dm: factor out dm_io_set_error and __dm_io_dec_pending (Benjamin Marzinski) [2012340] - block: fix offset/size check in bio_trim() (Benjamin Marzinski) [2012340] - block: fix argument type of bio_trim() (Benjamin Marzinski) [2012340] - dm: allow dm_accept_partial_bio() for dm_io without duplicate bios (Benjamin Marzinski) [2012340] - dm mpath: only use ktime_get_ns() in historical selector (Benjamin Marzinski) [2012340] - dm: fix dm_io and dm_target_io flags race condition on Alpha (Benjamin Marzinski) [2012340] - dm integrity: set journal entry unused when shrinking device (Benjamin Marzinski) [2012340] - dm ioctl: log an error if the ioctl structure is corrupted (Benjamin Marzinski) [2012340] - dm: consolidate spinlocks in dm_io struct (Benjamin Marzinski) [2012340] - dm: reduce size of dm_io and dm_target_io structs (Benjamin Marzinski) [2012340] - dm: switch dm_target_io booleans over to proper flags (Benjamin Marzinski) [2012340] - dm: switch dm_io booleans over to proper flags (Benjamin Marzinski) [2012340] - dm: return void from __send_empty_flush (Benjamin Marzinski) [2012340] - dm: factor out dm_io_complete (Benjamin Marzinski) [2012340] - dm cache: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: simplify dm_sumbit_bio_remap interface (Benjamin Marzinski) [2012340] - dm thin: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: add WARN_ON_ONCE to dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: requeue IO if mapping table not yet available (Benjamin Marzinski) [2012340] - dm thin metadata: remove unused dm_thin_remove_block and __remove (Benjamin Marzinski) [2012340] - dm thin: use time_is_before_jiffies instead of open coding it (Benjamin Marzinski) [2012340] - dm crypt: fix get_key_size compiler warning if !CONFIG_KEYS (Benjamin Marzinski) [2012340] - dm ioctl: prevent potential spectre v1 gadget (Benjamin Marzinski) [2012340] - dm cache policy smq: make static read-only array table const (Benjamin Marzinski) [2012340] - dm delay: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm crypt: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: add dm_submit_bio_remap interface (Benjamin Marzinski) [2012340] - dm: flag clones created by __send_duplicate_bios (Benjamin Marzinski) [2012340] - dm: reduce dm_io and dm_target_io struct sizes (Benjamin Marzinski) [2012340] - dm: move duplicate code from callers of alloc_tio into alloc_tio (Benjamin Marzinski) [2012340] - dm: record old_sector in dm_target_io before calling map function (Benjamin Marzinski) [2012340] - dm: remove legacy code only needed before submit_bio recursion (Benjamin Marzinski) [2012340] - dm: remove unused mapped_device argument from free_tio (Benjamin Marzinski) [2012340] - dm: remove impossible BUG_ON in __send_empty_flush (Benjamin Marzinski) [2012340] - dm: reduce code duplication in __map_bio (Benjamin Marzinski) [2012340] - dm: refactor dm_split_and_process_bio a bit (Benjamin Marzinski) [2012340] - dm: fold __clone_and_map_data_bio into __split_and_process_bio (Benjamin Marzinski) [2012340] - dm: rename split functions (Benjamin Marzinski) [2012340] - dm: eliminate copying of dm_io fields in dm_io_dec_pending (Benjamin Marzinski) [2012340] - dm ioctl: return UUID in DM_LIST_DEVICES_CMD result (Benjamin Marzinski) [2012340] - dm crypt: support using trusted keys (Benjamin Marzinski) [2012340] - dm crypt: replaced #if defined with IS_ENABLED (Benjamin Marzinski) [2012340] - ext4: add check to prevent attempting to resize an fs with sparse_super2 (Lukas Czerner) [2077760] - fscache: Avoid ASSERTCMP if two threads race into fscache_disable_cookie (Dave Wysochanski) [2073260] - lib: bitmap: Introduce node-aware alloc API (Ivan Vecera) [2101701] - exec: Force single empty string when argv is empty (Rafael Aquini) [2100955] - powerpc: Enable execve syscall exit tracepoint (Steve Best) [2095521] - cgroup: disable controllers at parse time (Waiman Long) [2098264] - init: initialize jump labels before command line option parsing (Waiman Long) [2098264] - smp: Make softirq handling RT safe in flush_smp_call_function_queue() (Phil Auld) [2097364] - smp: Rename flush_smp_call_function_from_idle() (Phil Auld) [2097364] - cpupower: Add "perf" option to print AMD P-State information (Steve Best) [2059365] - cpupower: Add function to print AMD P-State performance capabilities (Steve Best) [2059365] - cpupower: Move print_speed function into misc helper (Steve Best) [2059365] - cpupower: Enable boost state support for AMD P-State module (Steve Best) [2059365] - cpupower: Add AMD P-State sysfs definition and access helper (Steve Best) [2059365] - cpupower: Introduce ACPI CPPC library (Steve Best) [2059365] - cpupower: Add the function to get the sysfs value from specific table (Steve Best) [2059365] - cpupower: Initial AMD P-State capability (Steve Best) [2059365] - cpupower: Add the function to check AMD P-State enabled (Steve Best) [2059365] - cpupower: Add AMD P-State capability flag (Steve Best) [2059365] - tools/power/cpupower/{ToDo => TODO}: Rename the todo file (Steve Best) [2059365] - tools: cpupower: fix typo in cpupower-idle-set(1) manpage (Steve Best) [2059365] - ntb: intel: fix port config status offset for SPR (John W. Linville) [2048750] - NTB/msi: Use struct_size() helper in devm_kzalloc() (John W. Linville) [2048750] - ntb_hw_switchtec: Fix a minor issue in config_req_id_table() (John W. Linville) [2048750] - ntb_hw_switchtec: Remove code for disabling ID protection (John W. Linville) [2048750] - ntb_hw_switchtec: Update the way of getting VEP instance ID (John W. Linville) [2048750] - ntb_hw_switchtec: AND with the part_map for a valid tpart_vec (John W. Linville) [2048750] - ntb_hw_switchtec: Fix bug with more than 32 partitions (John W. Linville) [2048750] - ntb_hw_switchtec: Fix pff ioread to read into mmio_part_cfg_all (John W. Linville) [2048750] - ntb_hw_switchtec: fix the spelling of "its" (John W. Linville) [2048750] - NTB/msi: Fix ntbm_msi_request_threaded_irq() kernel-doc comment (John W. Linville) [2048750] - NTB: switch from 'pci_' to 'dma_' API (John W. Linville) [2048750] - ntb: ntb_pingpong: remove redundant initialization of variables msg_data and spad_data (John W. Linville) [2048750] - NTB: perf: Fix an error code in perf_setup_inbuf() (John W. Linville) [2048750] - NTB: Fix an error code in ntb_msit_probe() (John W. Linville) [2048750] - ntb: intel: remove invalid email address in header comment (John W. Linville) [2048750] - NTB: Add support for EPF PCI Non-Transparent Bridge (John W. Linville) [2048750] - ntb: intel: add Intel NTB LTR vendor support for gen4 NTB (John W. Linville) [2048750] - ntb: idt: fix error check in ntb_hw_idt.c (John W. Linville) [2048750]- KVM: x86: Fix the intel_pt PMI handling wrongly considered from guest (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't rebuild page when the page is synced and no tlb flushing is required (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Verify the pmu event filter matches the correct event (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Add the helper function create_pmu_event_filter (Vitaly Kuznetsov) [2074835] - kvm: x86/pmu: Fix the compare function used by the pmu event filter (Vitaly Kuznetsov) [2074835] - KVM: Free new dirty bitmap if creating a new memslot fails (Vitaly Kuznetsov) [2074835] - KVM: Initialize debugfs_dentry when a VM is created to avoid NULL deref (Vitaly Kuznetsov) [2074835] - tools arch x86: Sync asm/cpufeatures.h with the with the kernel (Vitaly Kuznetsov) [2074835] - KVM: PPC: Book3S HV: Fix kvm_unmap_gfn_range_hv() for Hash MMU (Vitaly Kuznetsov) [2074835] - KVM: PPC: Book3S HV: Fix conversion to gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: arm64: Fix boolreturn.cocci warnings (Vitaly Kuznetsov) [2074835] - KVM: VMX: Exit to userspace if vCPU has injected exception and invalid state (Vitaly Kuznetsov) [2074835] - KVM: SEV: Mark nested locking of vcpu->lock (Vitaly Kuznetsov) [2074835] - kvm: x86/cpuid: Only provide CPUID leaf 0xA if host has architectural PMU (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Account for family 17h event renumberings in amd_pmc_perf_hw_id (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use atomic XCHG to write TDP MMU SPTEs with volatile bits (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move shadow-present check out of spte_has_volatile_bits() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't treat fully writable SPTEs as volatile (modulo A/D) (Vitaly Kuznetsov) [2074835] - selftests: kvm: add amx_test to .gitignore (Vitaly Kuznetsov) [2074835] - Revert "x86/mm: Introduce lookup_address_in_mm()" (Vitaly Kuznetsov) [2074835] - KVM: x86: work around QEMU issue with synthetic CPUID leaves (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: fix potential races when walking host page table (Vitaly Kuznetsov) [2074835] - Documentation: KVM: Update documentation to indicate KVM is arm64-only (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Do not create SPTEs for GFNs that exceed host.MAXPHYADDR (Vitaly Kuznetsov) [2074835] - kvm: selftests: introduce and use more page size-related constants (Vitaly Kuznetsov) [2074835] - kvm: selftests: do not use bitfields larger than 32-bits for PTEs (Vitaly Kuznetsov) [2074835] - KVM: SEV: add cache flush to solve SEV cache incoherency issues (Vitaly Kuznetsov) [2074835] - KVM: SVM: Flush when freeing encrypted pages even on SME_COHERENT CPUs (Vitaly Kuznetsov) [2074835] - KVM: SVM: Simplify and harden helper to flush SEV guest page(s) (Vitaly Kuznetsov) [2074835] - KVM: selftests: Silence compiler warning in the kvm_page_table_test (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Update AMD PMC sample period to fix guest NMI-watchdog (Vitaly Kuznetsov) [2074835] - x86/kvm: Preserve BSP MSR_KVM_POLL_CONTROL across suspend/resume (Vitaly Kuznetsov) [2074835] - KVM: x86: Skip KVM_GUESTDBG_BLOCKIRQ APICv update if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: x86: Pend KVM_REQ_APICV_UPDATE during vCPU creation to fix a race (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Defer APICv updates while L2 is active until L1 is active (Vitaly Kuznetsov) [2074835] - KVM: x86: Tag APICv DISABLE inhibit, not ABSENT, if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: Add helpers to wrap vcpu->srcu_idx and yell if it's abused (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't re-acquire SRCU lock in complete_emulated_io() (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Check for supported page sizes (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Initialise default guest mode at test startup time (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Introduce a variable default IPA size (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Rework TCR_EL1 configuration (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Avoid writing to TSC page without an active vCPU (Vitaly Kuznetsov) [2074835] - KVM: SVM: Do not activate AVIC for SEV-enabled guest (Vitaly Kuznetsov) [2074835] - selftests: kvm: add tsc_scaling_sync to .gitignore (Vitaly Kuznetsov) [2074835] - KVM: Don't create VM debugfs files outside of the VM directory (Vitaly Kuznetsov) [2074835] - KVM: avoid NULL pointer dereference in kvm_dirty_ring_push (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: remove unnecessary flush_workqueue() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Resolve nx_huge_pages when kvm.ko is loaded (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add cond_resched() to loop in sev_clflush_pages() (Vitaly Kuznetsov) [2074835] - KVM: x86: fix sending PV IPI (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do compare-and-exchange of gPTE via the user address (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove redundant vm_entry_controls_clearbit() call (Vitaly Kuznetsov) [2074835] - KVM: x86: cleanup enter_rmode() (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: fix tsc scaling when the host doesn't support it (Vitaly Kuznetsov) [2074835] - kvm: x86: SVM: remove unused defines (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: move tsc ratio definitions to svm.h (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: fix avic spec based definitions again (Vitaly Kuznetsov) [2074835] - KVM: x86: Only do MSR filtering when access MSR by rdmsr/wrmsr (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Emulate RDPID only if it is enabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix and isolate TSX-specific performance event logic (Vitaly Kuznetsov) [2074835] - KVM: x86: mmu: trace kvm_mmu_set_spte after the new SPTE was set (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Clear reserved bits written to PerfEvtSeln MSRs (Vitaly Kuznetsov) [2074835] - KVM: x86: Trace all APICv inhibit changes and capture overall status (Vitaly Kuznetsov) [2074835] - KVM: x86: Add wrappers for setting/clearing APICv inhibits (Vitaly Kuznetsov) [2074835] - KVM: x86: Make APICv inhibit reasons an enum and cleanup naming (Vitaly Kuznetsov) [2074835] - KVM: X86: Handle implicit supervisor access with SMAP (Vitaly Kuznetsov) [2074835] - KVM: X86: Rename variable smap to not_smap in permission_fault() (Vitaly Kuznetsov) [2074835] - KVM: X86: Fix comments in update_permission_bitmask (Vitaly Kuznetsov) [2074835] - KVM: X86: Change the type of access u32 to u64 (Vitaly Kuznetsov) [2074835] - KVM: Remove dirty handling from gfn_to_pfn_cache completely (Vitaly Kuznetsov) [2074835] - KVM: Use enum to track if cached PFN will be used in guest and/or host (Vitaly Kuznetsov) [2074835] - KVM: SVM: Fix kvm_cache_regs.h inclusions for is_guest_mode() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use different raw event masks for AMD and Intel (Vitaly Kuznetsov) [2074835] - KVM: Don't actually set a request when evicting vCPUs for GFN cache invd (Vitaly Kuznetsov) [2074835] - KVM: avoid double put_page with gfn-to-pfn cache (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only TDP MMU leafs in zap range and mmu_notifier unmap (Vitaly Kuznetsov) [2074835] - KVM: SVM: fix panic on out-of-bounds guest IRQ (Vitaly Kuznetsov) [2074835] - KVM: MMU: propagate alloc_workqueue failure (Vitaly Kuznetsov) [2074835] - KVM: x86: Forbid VMM to set SYNIC/STIMER MSRs when SynIC wasn't activated (Vitaly Kuznetsov) [2074835] - KVM: x86: Avoid theoretical NULL pointer dereference in kvm_irq_delivery_to_apic_fast() (Vitaly Kuznetsov) [2074835] - KVM: x86: Check lapic_in_kernel() before attempting to set a SynIC irq (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix clang -Wimplicit-fallthrough in do_host_cpuid() (Vitaly Kuznetsov) [2074835] - Revert "KVM: set owner of cpu and vm file operations" (Vitaly Kuznetsov) [2074835] - KVM: Prevent module exit until all VMs are freed (Vitaly Kuznetsov) [2074835] - KVM: use kvcalloc for array allocations (Vitaly Kuznetsov) [2074835] - KVM: x86: Introduce KVM_CAP_DISABLE_QUIRKS2 (Vitaly Kuznetsov) [2074835] - kvm: x86: Require const tsc for RT (Vitaly Kuznetsov) [2074835] - KVM: x86: synthesize CPUID leaf 0x80000021h if useful (Vitaly Kuznetsov) [2074835] - KVM: x86: add support for CPUID leaf 0x80000021 (Vitaly Kuznetsov) [2074835] - Revert "KVM: x86/mmu: Zap only TDP MMU leafs in kvm_zap_gfn_range()" (Vitaly Kuznetsov) [2074835] - kvm: x86/mmu: Flush TLB before zap_gfn_range releases RCU (Vitaly Kuznetsov) [2074835] - kvm/emulate: Fix SETcc emulation function offsets with SLS (Vitaly Kuznetsov) [2074835] - KVM: compat: riscv: Prevent KVM_COMPAT from being selected (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to populate a VM with the max possible guest mem (Vitaly Kuznetsov) [2074835] - KVM: selftests: Define cpu_relax() helpers for s390 and x86 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Split out helper to allocate guest mem via memfd (Vitaly Kuznetsov) [2074835] - KVM: selftests: add shared hugetlbfs backing source type (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move raw KVM_SET_USER_MEMORY_REGION helper to utils (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: WARN on any attempt to atomically update REMOVED SPTE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for a REMOVED leaf SPTE before making the SPTE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap defunct roots via asynchronous worker (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap roots in two passes to avoid inducing RCU stalls (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow yielding when zapping GFNs for defunct TDP MMU root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap invalidated roots via asynchronous worker (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Defer TLB flush to caller when freeing TDP MMU shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Do remote TLB flush before dropping RCU in TDP MMU resched (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only TDP MMU leafs in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Require mmu_lock be held for write to zap TDP MMU range (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add dedicated helper to zap TDP MMU root shadow page (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip remote TLB flush when zapping all of TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only the target TDP MMU shadow page in NX recovery (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Refactor low-level TDP MMU set SPTE helper to take raw values (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: WARN if old _or_ new SPTE is REMOVED in non-atomic path (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add helpers to read/write TDP MMU SPTEs and document RCU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop RCU after processing each root in MMU notifier hooks (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Batch TLB flushes from TDP MMU for MMU notifier change_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for !leaf=>leaf, not PFN change, in TDP MMU SP removal (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not allow readers to acquire references to invalid roots (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: only perform eager page splitting on valid roots (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Require mmu_lock be held for write in unyielding root iter (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Document that zapping invalidated roots doesn't need to flush (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Formalize TDP MMU's (unintended?) deferred TLB flush logic (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix wrong/misleading comments in TDP MMU fast zap (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for present SPTE when clearing dirty bit in TDP MMU (Vitaly Kuznetsov) [2074835] - selftests: kvm: add generated file to the .gitignore (Vitaly Kuznetsov) [2074835] - KVM: x86: pull kvm->srcu read-side to kvm_arch_vcpu_ioctl_run (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Passing up the error state of mmu_alloc_shadow_roots() (Vitaly Kuznetsov) [2074835] - KVM: SVM: Disable preemption across AVIC load/put during APICv refresh (Vitaly Kuznetsov) [2074835] - KVM: SVM: Exit to userspace on ENOMEM/EFAULT GHCB errors (Vitaly Kuznetsov) [2074835] - KVM: WARN if is_unsync_root() is called on a root without a shadow page (Vitaly Kuznetsov) [2074835] - KVM: Drop KVM_REQ_MMU_RELOAD and update vcpu-requests.rst documentation (Vitaly Kuznetsov) [2074835] - KVM: s390: Replace KVM_REQ_MMU_RELOAD usage with arch specific request (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only obsolete roots if a root shadow page is zapped (Vitaly Kuznetsov) [2074835] - KVM: Drop kvm_reload_remote_mmus(), open code request in x86 users (Vitaly Kuznetsov) [2074835] - KVM: x86: Invoke kvm_mmu_unload() directly on CR4.PCIDE change (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Move the unhandled outer privilege level logic of far return into __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Fix wrong privilege check for code segment in __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Defer not-present segment check in __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to verify KVM handling of ICR (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_lapic_set_reg() a "private" xAPIC helper (Vitaly Kuznetsov) [2074835] - KVM: x86: Treat x2APIC's ICR as a 64-bit register, not two 32-bit regs (Vitaly Kuznetsov) [2074835] - KVM: x86: Add helpers to handle 64-bit APIC MSR read/writes (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_lapic_reg_{read,write}() static (Vitaly Kuznetsov) [2074835] - KVM: x86: WARN if KVM emulates an IPI without clearing the BUSY flag (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't rewrite guest ICR on AVIC IPI virtualization failure (Vitaly Kuznetsov) [2074835] - KVM: SVM: Use common kvm_apic_write_nodecode() for AVIC write traps (Vitaly Kuznetsov) [2074835] - KVM: x86: Use "raw" APIC register read for handling APIC-write VM-Exit (Vitaly Kuznetsov) [2074835] - KVM: VMX: Handle APIC-write offset wrangling in VMX code (Vitaly Kuznetsov) [2074835] - KVM: x86: Do not change ICR on write to APIC_SELF_IPI (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix emulation in writing cr8 (Vitaly Kuznetsov) [2074835] - KVM: x86: flush TLB separately from MMU reset (Vitaly Kuznetsov) [2074835] - KVM: x86: Yield to IPI target vCPU only if it is busy (Vitaly Kuznetsov) [2074835] - x86/kvmclock: Fix Hyper-V Isolated VM's boot issue when vCPUs > 64 (Vitaly Kuznetsov) [2074835] - x86/kvm: Don't waste memory if kvmclock is disabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: clear MMIO cache when unloading the MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Always use current mmu's role when loading new PGD (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: load new PGD after the shadow MMU is initialized (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: look for a cached PGD when going from 32-bit to 64-bit (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not pass vcpu to root freeing functions (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not consult levels when freeing roots (Vitaly Kuznetsov) [2074835] - KVM: x86: use struct kvm_mmu_root_info for mmu->root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: avoid NULL-pointer dereference on page freeing bugs (Vitaly Kuznetsov) [2074835] - KVM: x86: do not deliver asynchronous page faults if CR0.PG=0 (Vitaly Kuznetsov) [2074835] - KVM: x86: Reinitialize context if host userspace toggles EFER.LME (Vitaly Kuznetsov) [2074835] - KVM: selftests: Verify disabling PMU virtualization via KVM_CAP_CONFIG_PMU (Vitaly Kuznetsov) [2074835] - KVM: selftests: Carve out helper to create "default" VM without vCPUs (Vitaly Kuznetsov) [2074835] - KVM: x86: Provide per VM capability for disabling PMU virtualization (Vitaly Kuznetsov) [2074835] - KVM: Move VM's worker kthreads back to the original cgroup before exiting. (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove scratch 'cpu' variable that shadows an identical scratch var (Vitaly Kuznetsov) [2074835] - kvm: vmx: Fix typos comment in __loaded_vmcs_clear() (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Make setup/unsetup under the same conditions (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: HVCALL_SEND_IPI_EX is an XMM fast hypercall (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Fix the maximum number of sparse banks for XMM fast TLB flush hypercalls (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Drop redundant 'ex' parameter from kvm_hv_flush_tlb() (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Drop redundant 'ex' parameter from kvm_hv_send_ipi() (Vitaly Kuznetsov) [2074835] - Revert "KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest()" (Vitaly Kuznetsov) [2074835] - Revert "KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs()" (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: disallow userspace setting of MSR_AMD64_TSC_RATIO to non default value when tsc scaling disabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: make apf token non-zero to fix bug (Vitaly Kuznetsov) [2074835] - selftests: kvm: Add the uapi headers include variable (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add EXTRA_CFLAGS in top-level Makefile (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove MMU auditing (Vitaly Kuznetsov) [2074835] - KVM: x86: make several APIC virtualization callbacks optional (Vitaly Kuznetsov) [2074835] - KVM: x86: warn on incorrectly NULL members of kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: remove KVM_X86_OP_NULL and mark optional kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: use static_call_cond for optional callbacks (Vitaly Kuznetsov) [2074835] - KVM: x86: return 1 unconditionally for availability of KVM_CAP_VAPIC (Vitaly Kuznetsov) [2074835] - selftests: KVM: allow sev_migrate_tests on machines without SEV-ES (Vitaly Kuznetsov) [2074835] - KVM: SEV: Allow SEV intra-host migration of VM with mirrors (Vitaly Kuznetsov) [2074835] - x86/kvm: Fix compilation warning in non-x86_64 builds (Vitaly Kuznetsov) [2074835] - kvm: x86: Disable KVM_HC_CLOCK_PAIRING if tsc is in always catchup mode (Vitaly Kuznetsov) [2074835] - KVM: Fix lockdep false negative during host resume (Vitaly Kuznetsov) [2074835] - KVM: x86: Add KVM_CAP_ENABLE_CAP to x86 (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename AVIC helpers to use "avic" prefix instead of "svm" (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use AMD64_RAW_EVENT_MASK for PERF_TYPE_RAW (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Don't truncate the PerfEvtSeln MSR when creating a perf event (Vitaly Kuznetsov) [2074835] - KVM: x86: Replace memset() "optimization" with normal per-field writes (Vitaly Kuznetsov) [2074835] - KVM: SVM: fix race between interrupt delivery and AVIC inhibition (Vitaly Kuznetsov) [2074835] - KVM: SVM: set IRR in svm_deliver_interrupt (Vitaly Kuznetsov) [2074835] - KVM: SVM: extract avic_ring_doorbell (Vitaly Kuznetsov) [2074835] - selftests: kvm: Remove absent target file (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use local pointer to vcpu_vmx in vmx_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Add enlightened MSR-Bitmap selftest (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Update 'struct vmcb_control_area' definition (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Set up MSR-Bitmap for SVM guests (Vitaly Kuznetsov) [2074835] - KVM: selftests: nVMX: Add enlightened MSR-Bitmap selftest (Vitaly Kuznetsov) [2074835] - KVM: selftests: nVMX: Properly deal with 'hv_clean_fields' (Vitaly Kuznetsov) [2074835] - KVM: selftests: Adapt hyperv_cpuid test to the newly introduced Enlightened MSR-Bitmap (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Implement Enlightened MSR-Bitmap feature (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Split off common definitions for Hyper-V on KVM and KVM on Hyper-V (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_hv_hypercall_enabled() static inline (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Track whether changes in L0 require MSR bitmap for L2 to be rebuilt (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add an option to disable MANUAL_PROTECT_ENABLE and INITIALLY_SET (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add tracepoint for splitting huge pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Split huge pages mapped by the TDP MMU during KVM_CLEAR_DIRTY_LOG (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Split huge pages mapped by the TDP MMU when dirty logging is enabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Separate TDP MMU shadow page allocation and initialization (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Derive page role for TDP MMU shadow pages from parent (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove redundant role overrides for TDP MMU shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Refactor TDP MMU iterators to take kvm_mmu_page root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move restore_acc_track_spte() to spte.h (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop new_spte local variable from restore_acc_track_spte() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unnecessary warnings from restore_acc_track_spte() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Consolidate logic to atomically install a new TDP MMU page table (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename handle_removed_tdp_mmu_page() to handle_removed_pt() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename TDP MMU functions that handle shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Change tdp_mmu_{set,zap}_spte_atomic() to return 0/-EBUSY (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Automatically update iter->old_spte if cmpxchg fails (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename __rmap_write_protect() to rmap_write_protect() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename rmap_write_protect() to kvm_vcpu_write_protect_gfn() (Vitaly Kuznetsov) [2074835] - KVM: x86: Add checks for reserved-to-zero Hyper-V hypercall fields (Vitaly Kuznetsov) [2074835] - KVM: x86: Reject fixeds-size Hyper-V hypercalls with non-zero "var_cnt" (Vitaly Kuznetsov) [2074835] - KVM: x86: Shove vp_bitmap handling down into sparse_set_to_vcpu_mask() (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't bother reading sparse banks that end up being ignored (Vitaly Kuznetsov) [2074835] - KVM: x86: Add a helper to get the sparse VP_SET for IPIs and TLB flushes (Vitaly Kuznetsov) [2074835] - KVM: x86: Refactor kvm_hv_flush_tlb() to reduce indentation (Vitaly Kuznetsov) [2074835] - KVM: x86: Get the number of Hyper-V sparse banks from the VARHEAD field (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Consolidate comments about {Host,MMU}-writable (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename DEFAULT_SPTE_MMU_WRITEABLE to DEFAULT_SPTE_MMU_WRITABLE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move is_writable_pte() to spte.h (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check SPTE writable invariants when setting leaf SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move SPTE writable invariant checks to a helper function (Vitaly Kuznetsov) [2074835] - KVM: LAPIC: Enable timer posted-interrupt only when mwait/hlt is advertised (Vitaly Kuznetsov) [2074835] - KVM: VMX: Dont' send posted IRQ if vCPU == this vCPU and vCPU is IN_GUEST_MODE (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename hook implementations to conform to kvm_x86_ops' names (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename SEV implemenations to conform to kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Use more verbose names for mem encrypt kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove unused MAX_INST_SIZE #define (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename svm_flush_tlb() to svm_flush_tlb_current() (Vitaly Kuznetsov) [2074835] - KVM: x86: Move get_cs_db_l_bits() helper to SVM (Vitaly Kuznetsov) [2074835] - KVM: VMX: Rename VMX functions to conform to kvm_x86_ops names (Vitaly Kuznetsov) [2074835] - KVM: x86: Use static_call() for copy/move encryption context ioctls() (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: Uninline and export hv_track_root_tdp() (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Refactor PMU refresh to avoid referencing kvm_x86_ops.pmu_ops (Vitaly Kuznetsov) [2074835] - KVM: xen: Use static_call() for invoking kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Use static_call() for .vcpu_deliver_sipi_vector() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Call vmx_get_cpl() directly in handle_dr() (Vitaly Kuznetsov) [2074835] - KVM: x86: Rename kvm_x86_ops pointers to align w/ preferred vendor names (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop export for .tlb_flush_current() static_call key (Vitaly Kuznetsov) [2074835] - KVM: x86: skip host CPUID call for hypervisor leaves (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove unused "flags" of kvm_pv_kick_cpu_op() (Vitaly Kuznetsov) [2074835] - KVM: Remove unused "kvm" of kvm_make_vcpu_request() (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove unused "vcpu" of kvm_scale_tsc() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulate: Remove unused "tss_selector" of task_switch_{16, 32}() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulate: Remove unused "ctxt" of setup_syscalls_segments() (Vitaly Kuznetsov) [2074835] - KVM: x86/ioapic: Remove unused "addr" and "length" of ioapic_read_indirect() (Vitaly Kuznetsov) [2074835] - KVM: x86/i8259: Remove unused "addr" of elcr_ioport_{read,write}() (Vitaly Kuznetsov) [2074835] - KVM: SVM: improve split between svm_prepare_guest_switch and sev_es_prepare_guest_switch (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Remove unused "vcpu" of svm_check_exit_valid() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu_audit: Remove unused "level" of audit_spte_after_sync() (Vitaly Kuznetsov) [2074835] - KVM: x86/tdp_mmu: Remove unused "kvm" of kvm_tdp_mmu_get_root() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "vcpu" of reset_{tdp,ept}_shadow_zero_bits_mask() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "kvm" of __rmap_write_protect() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "kvm" of kvm_mmu_unlink_parents() (Vitaly Kuznetsov) [2074835] - KVM: x86: Skip APICv update if APICv is disable at the module level (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop NULL check on kvm_x86_ops.check_apicv_inhibit_reasons (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport __kvm_request_apicv_update() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap _all_ roots when unmapping gfn range in TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move "invalid" check out of kvm_tdp_mmu_get_root() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use common TDP MMU zap helper for MMU notifier unmap hook (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Fix runstate updates to be atomic when preempting vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: move avic definitions from AMD's spec to svm.h (Vitaly Kuznetsov) [2074835] - KVM: x86: lapic: don't touch irr_pending in kvm_apic_update_apicv when inhibiting it (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: deal with L1 hypervisor that intercepts interrupts but lets L2 control them (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: expose clean bit support to the guest (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM/nVMX: set nested_run_pending on VM entry which is a result of RSM (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: mark vmcb01 as dirty when restoring SMM saved state (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: fix potential NULL derefernce on nested migration (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: don't passthrough SMAP/SMEP/PKE bits in !NPT && !gCR0.PG case (Vitaly Kuznetsov) [2074835] - Revert "svm: Add warning message for AVIC IPI invalid target" (Vitaly Kuznetsov) [2074835] - selftests: KVM: Test OS lock behavior (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add OSLSR_EL1 to the list of blessed regs (Vitaly Kuznetsov) [2074835] - KVM: x86: Report deprecated x87 features in supported CPUID (Vitaly Kuznetsov) [2074835] - x86/cpufeatures: Add FDP_EXCPTN_ONLY and ZERO_FCS_FDS (Vitaly Kuznetsov) [2074835] - KVM: x86: use the KVM side max supported fixed counter (Vitaly Kuznetsov) [2074835] - x86: Share definition of __is_canonical_address() (Vitaly Kuznetsov) [2074835] - perf/x86/intel/pt: Relax address filter validation (Vitaly Kuznetsov) [2074835] - KVM: x86: Move delivery of non-APICv interrupt into vendor code (Vitaly Kuznetsov) [2074835] - KVM: eventfd: Fix false positive RCU usage warning (Vitaly Kuznetsov) [2074835] - selftests: kvm: check dynamic bits against KVM_X86_XCOMP_GUEST_SUPP (Vitaly Kuznetsov) [2074835] - KVM: x86: Sync the states size with the XCR0/IA32_XSS at, any time (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vCPU's runtime CPUID on write to MSR_IA32_XSS (Vitaly Kuznetsov) [2074835] - KVM: x86: Keep MSR_IA32_XSS unchanged for INIT (Vitaly Kuznetsov) [2074835] - KVM: x86: Free kvm_cpuid_entry2 array on post-KVM_RUN KVM_SET_CPUID{,2} (Vitaly Kuznetsov) [2074835] - KVM: nVMX: WARN on any attempt to allocate shadow VMCS for vmcs02 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Don't skip L2's VMCALL in SMM test for SVM guest (Vitaly Kuznetsov) [2074835] - KVM: x86: Check .flags in kvm_cpuid_check_equal() too (Vitaly Kuznetsov) [2074835] - KVM: x86: Forcibly leave nested virt when SMM state is toggled (Vitaly Kuznetsov) [2074835] - KVM: SVM: drop unnecessary code in svm_hv_vmcb_dirty_nested_enlightenments() (Vitaly Kuznetsov) [2074835] - KVM: SVM: hyper-v: Enable Enlightened MSR-Bitmap support for real (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't kill SEV guest if SMAP erratum triggers in usermode (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't apply SEV+SMAP workaround on code fetch or PT access (Vitaly Kuznetsov) [2074835] - KVM: SVM: Inject #UD on attempted emulation for SEV guest w/o insn buffer (Vitaly Kuznetsov) [2074835] - KVM: SVM: WARN if KVM attempts emulation on #UD or #GP for SEV guests (Vitaly Kuznetsov) [2074835] - KVM: x86: Pass emulation type to can_emulate_instruction() (Vitaly Kuznetsov) [2074835] - KVM: SVM: Explicitly require DECODEASSISTS to enable SEV support (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't intercept #GP for SEV guests (Vitaly Kuznetsov) [2074835] - Revert "KVM: SVM: avoid infinite loop on NPF from bad address" (Vitaly Kuznetsov) [2074835] - KVM: SVM: Never reject emulation due to SMAP errata for !SEV guests (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: skip eax alignment check for non-SVM instructions (Vitaly Kuznetsov) [2074835] - KVM: LAPIC: Also cancel preemption timer during SET_LAPIC (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove vmcs_config.order (Vitaly Kuznetsov) [2074835] - KVM/X86: Make kvm_vcpu_reload_apic_access_page() static (Vitaly Kuznetsov) [2074835] - KVM: selftests: Re-enable access_tracking_perf_test (Vitaly Kuznetsov) [2074835] - KVM: VMX: Set vmcs.PENDING_DBG.BS on #DB in STI/MOVSS blocking shadow (Vitaly Kuznetsov) [2074835] - KVM: remove async parameter of hva_to_pfn_remapped() (Vitaly Kuznetsov) [2074835] - x86,kvm/xen: Remove superfluous .fixup usage (Vitaly Kuznetsov) [2074835] - KVM: VMX: Zero host's SYSENTER_ESP iff SYSENTER is NOT used (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Fix the warning in lib/x86_64/processor.c (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Fix the warning in pmu_event_filter_test.c (Vitaly Kuznetsov) [2074835] - kvm: selftests: Do not indent with spaces (Vitaly Kuznetsov) [2074835] - KVM: SVM: Nullify vcpu_(un)blocking() hooks if AVIC is disabled (Vitaly Kuznetsov) [2074835] - KVM: SVM: Move svm_hardware_setup() and its helpers below svm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: SVM: Drop AVIC's intermediate avic_set_running() helper (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't do full kick when handling posted interrupt wakeup (Vitaly Kuznetsov) [2074835] - KVM: VMX: Fold fallback path into triggering posted IRQ helper (Vitaly Kuznetsov) [2074835] - KVM: VMX: Pass desired vector instead of bool for triggering posted IRQ (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't do full kick when triggering posted interrupt "fails" (Vitaly Kuznetsov) [2074835] - KVM: SVM: Skip AVIC and IRTE updates when loading blocking vCPU (Vitaly Kuznetsov) [2074835] - KVM: SVM: Use kvm_vcpu_is_blocking() in AVIC load to handle preemption (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove unnecessary APICv/AVIC update in vCPU unblocking path (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't bother checking for "running" AVIC when kicking for IPIs (Vitaly Kuznetsov) [2074835] - KVM: SVM: Signal AVIC doorbell iff vCPU is in guest mode (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct pre_block/post_block kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport LAPIC's switch_to_{hv,sw}_timer() helpers (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move preemption timer <=> hrtimer dance to common x86 (Vitaly Kuznetsov) [2074835] - KVM: Move x86 VMX's posted interrupt list_head to vcpu_vmx (Vitaly Kuznetsov) [2074835] - KVM: Drop unused kvm_vcpu.pre_pcpu field (Vitaly Kuznetsov) [2074835] - KVM: VMX: Handle PI descriptor updates during vcpu_put/load (Vitaly Kuznetsov) [2074835] - KVM: avoid warning on s390 in mark_page_dirty (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add a test to force emulation with a pending exception (Vitaly Kuznetsov) [2074835] - KVM: VMX: Reject KVM_RUN if emulation is required with pending exception (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Add test for KVM_SET_PMU_EVENT_FILTER (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Introduce x86_model() (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Export x86_family() for use outside of processor.c (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Introduce is_amd_cpu() (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Parameterize the CPUID vendor string check (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use binary search to check filtered events (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Improve TLB flush comment in kvm_mmu_slot_remove_write_access() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Document and enforce MMU-writable and Host-writable invariants (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Clear MMU-writable during changed_pte notifier (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix write-protection of PTs mapped by the TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86: Making the module parameter of vPMU more common (Vitaly Kuznetsov) [2074835] - KVM: selftests: Test KVM_SET_CPUID2 after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: selftests: Rename 'get_cpuid_test' to 'cpuid_test' (Vitaly Kuznetsov) [2074835] - KVM: x86: Partially allow KVM_SET_CPUID{,2} after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix available_event_types check for REF_CPU_CYCLES event (Vitaly Kuznetsov) [2074835] - KVM: x86: Check for rmaps allocation (Vitaly Kuznetsov) [2074835] - KVM: SEV: Mark nested locking of kvm->lock (Vitaly Kuznetsov) [2074835] - KVM: SVM: include CR3 in initial VMSA state for SEV-ES guests (Vitaly Kuznetsov) [2074835] - KVM: VMX: Provide vmread version using asm-goto-with-outputs (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix wall clock writes in Xen shared_info not to mark page dirty (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Add KVM_IRQ_ROUTING_XEN_EVTCHN and event channel delivery (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Maintain valid mapping of Xen shared_info page (Vitaly Kuznetsov) [2074835] - KVM: Reinstate gfn_to_pfn_cache with invalidation support (Vitaly Kuznetsov) [2074835] - KVM: Warn if mark_page_dirty() is called without an active vCPU (Vitaly Kuznetsov) [2074835] - x86/kvm: Silence per-cpu pr_info noise about KVM clocks and steal time (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vPMCs when retiring branch instructions (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vPMCs when retiring instructions (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Add pmc->intr to refactor kvm_perf_overflow{_intr}() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Reuse pmc_perf_hw_id() and drop find_fixed_event() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Refactoring find_arch_event() to pmc_perf_hw_id() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Setup pmc->eventsel for fixed PMCs (Vitaly Kuznetsov) [2074835] - KVM: x86: avoid out of bounds indices for fixed performance counters (Vitaly Kuznetsov) [2074835] - KVM: VMX: Mark VCPU_EXREG_CR3 dirty when !CR0_PG -> CR0_PG if EPT + !URG (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Reconstruct shadow page root if the guest PDPTEs is changed (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs() (Vitaly Kuznetsov) [2074835] - Revert "KVM: X86: Update mmu->pdptrs only when it is changed" (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Add mirror command tests (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Fix sev_ioctl() (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Fix test_sev_mirror() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Wake vCPU when delivering posted IRQ even if vCPU == this vCPU (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to verify TRIPLE_FAULT on invalid L2 guest state (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Synthesize TRIPLE_FAULT for L2 if emulation is required (Vitaly Kuznetsov) [2074835] - KVM: VMX: Always clear vmx->fail on emulation_required (Vitaly Kuznetsov) [2074835] - selftests: KVM: Fix non-x86 compiling (Vitaly Kuznetsov) [2074835] - KVM: x86: Always set kvm_run->if_flag (Vitaly Kuznetsov) [2074835] - KVM: x86: remove PMU FIXED_CTR3 from msrs_to_save_all (Vitaly Kuznetsov) [2074835] - KVM: x86: Retry page fault if MMU reload is pending and root has no sp (Vitaly Kuznetsov) [2074835] - KVM: selftests: vmx_pmu_msrs_test: Drop tests mangling guest visible CPUIDs (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop guest CPUID check for host initiated writes to MSR_IA32_PERF_CAPABILITIES (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add test to verify KVM doesn't explode on "bad" I/O (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't WARN if userspace mucks with RCX during string I/O exit (Vitaly Kuznetsov) [2074835] - KVM: X86: Raise #GP when clearing CR0_PG in 64 bit mode (Vitaly Kuznetsov) [2074835] - selftests: KVM: avoid failures due to reserved HyperTransport region (Vitaly Kuznetsov) [2074835] - KVM: x86: Ignore sparse banks size for an "all CPUs", non-sparse IPI req (Vitaly Kuznetsov) [2074835] - KVM: Add Makefile.kvm for common files, use it for x86 (Vitaly Kuznetsov) [2074835] - KVM: Introduce CONFIG_HAVE_KVM_DIRTY_RING (Vitaly Kuznetsov) [2074835] - KVM: x86: selftests: svm_int_ctl_test: fix intercept calculation (Vitaly Kuznetsov) [2074835] - KVM: VMX: Clean up PI pre/post-block WARNs (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Ensure vCPU honors event request if posting nested IRQ fails (Vitaly Kuznetsov) [2074835] - KVM: x86: add a tracepoint for APICv/AVIC interrupt delivery (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Implement Enlightened MSR Bitmap feature (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Track whether changes in L0 require MSR bitmap for L2 to be rebuilt (Vitaly Kuznetsov) [2074835] - KVM: VMX: Introduce vmx_msr_bitmap_l01_changed() helper (Vitaly Kuznetsov) [2074835] - KVM: x86: Exit to userspace if emulation prepared a completion callback (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Don't use Enlightened MSR Bitmap for L3 (Vitaly Kuznetsov) [2074835] - KVM: x86: Use different callback if msr access comes from the emulator (Vitaly Kuznetsov) [2074835] - KVM: x86: Add an emulation type to handle completion of user exits (Vitaly Kuznetsov) [2074835] - KVM: x86: Handle 32-bit wrap of EIP for EMULTYPE_SKIP with flat code seg (Vitaly Kuznetsov) [2074835] - KVM: Clear pv eoi pending bit only when it is set (Vitaly Kuznetsov) [2074835] - KVM: x86: don't print when fail to read/write pv eoi memory (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove mmu parameter from load_pdptrs() (Vitaly Kuznetsov) [2074835] - KVM: X86: Rename gpte_is_8_bytes to has_4_byte_gpte and invert the direction (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use ept_caps_to_lpage_level() in hardware_setup() (Vitaly Kuznetsov) [2074835] - KVM: X86: Add parameter huge_page_level to kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [2074835] - KVM: X86: Add huge_page_level to __reset_rsvds_bits_mask_ept() (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove mmu->translate_gpa (Vitaly Kuznetsov) [2074835] - KVM: X86: Add parameter struct kvm_mmu *mmu into mmu->gva_to_gpa() (Vitaly Kuznetsov) [2074835] - KVM: X86: Calculate quadrant when !role.gpte_is_8_bytes (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove useless code to set role.gpte_is_8_bytes when role.direct (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove unused declaration of __kvm_mmu_free_some_pages() (Vitaly Kuznetsov) [2074835] - KVM: X86: Fix comment in __kvm_mmu_create() (Vitaly Kuznetsov) [2074835] - KVM: X86: Skip allocating pae_root for vcpu->arch.guest_mmu when !tdp_enabled (Vitaly Kuznetsov) [2074835] - KVM: SVM: Allocate sd->save_area with __GFP_ZERO (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename get_max_npt_level() to get_npt_level() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Change comments about vmx_get_msr() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use kvm_set_msr_common() for MSR_IA32_TSC_ADJUST in the default way (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Update msr value after kvm_set_user_return_msr() succeeds (Vitaly Kuznetsov) [2074835] - KVM: VMX: Avoid to rdmsrl(MSR_IA32_SYSENTER_ESP) (Vitaly Kuznetsov) [2074835] - KVM: X86: Update mmu->pdptrs only when it is changed (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove kvm_register_clear_available() (Vitaly Kuznetsov) [2074835] - KVM: vmx, svm: clean up mass updates to regs_avail/regs_dirty bits (Vitaly Kuznetsov) [2074835] - KVM: VMX: Update vmcs.GUEST_CR3 only when the guest CR3 is dirty (Vitaly Kuznetsov) [2074835] - KVM: X86: Mark CR3 dirty when vcpu->arch.cr3 is changed (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove references to VCPU_EXREG_CR3 (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove outdated comment in svm_load_mmu_pgd() (Vitaly Kuznetsov) [2074835] - KVM: X86: Move CR0 pdptr_bits into header file as X86_CR0_PDPTR_BITS (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add and use X86_CR4_PDPTR_BITS when !enable_ept (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add and use X86_CR4_TLBFLUSH_BITS when !enable_ept (Vitaly Kuznetsov) [2074835] - KVM: SVM: Track dirtiness of PDPTRs even if NPT is disabled (Vitaly Kuznetsov) [2074835] - KVM: VMX: Mark VCPU_EXREG_PDPTR available in ept_save_pdptrs() (Vitaly Kuznetsov) [2074835] - KVM: X86: Ensure that dirty PDPTRs are loaded (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Add module param to control PMU virtualization (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove vCPU from PI wakeup list before updating PID.NV (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move Posted Interrupt ndst computation out of write loop (Vitaly Kuznetsov) [2074835] - KVM: VMX: Read Posted Interrupt "control" exactly once per loop iteration (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save/restore IRQs (instead of CLI/STI) during PI pre/post block (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop pointless PI.NDST update when blocking (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use boolean returns for Posted Interrupt "test" helpers (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop unnecessary PI logic to handle impossible conditions (Vitaly Kuznetsov) [2074835] - KVM: VMX: Skip Posted Interrupt updates if APICv is hard disabled (Vitaly Kuznetsov) [2074835] - KVM: Add helpers to wake/query blocking vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86: Invoke kvm_vcpu_block() directly for non-HALTED wait states (Vitaly Kuznetsov) [2074835] - KVM: x86: Directly block (instead of "halting") UNINITIALIZED vCPUs (Vitaly Kuznetsov) [2074835] - KVM: Don't redo ktime_get() when calculating halt-polling stop/deadline (Vitaly Kuznetsov) [2074835] - KVM: stats: Add stat to detect if vcpu is currently blocking (Vitaly Kuznetsov) [2074835] - KVM: Split out a kvm_vcpu_block() helper from kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Rename kvm_vcpu_block() => kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Drop obsolete kvm_arch_vcpu_block_finish() (Vitaly Kuznetsov) [2074835] - KVM: x86: Tweak halt emulation helper names to free up kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Don't block+unblock when halt-polling is successful (Vitaly Kuznetsov) [2074835] - KVM: Reconcile discrepancies in halt-polling stats (Vitaly Kuznetsov) [2074835] - KVM: Refactor and document halt-polling stats update helper (Vitaly Kuznetsov) [2074835] - KVM: Update halt-polling stats if and only if halt-polling was attempted (Vitaly Kuznetsov) [2074835] - KVM: Force PPC to define its own rcuwait object (Vitaly Kuznetsov) [2074835] - KVM: SVM: Ensure target pCPU is read once when signalling AVIC doorbell (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't unblock vCPU w/ Posted IRQ if IRQs are disabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86: change TLB flush indicator to bool (Vitaly Kuznetsov) [2074835] - KVM: Avoid atomic operations when kicking the running vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86/MMU: Simplify flow of vmx_get_mt_mask (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Propagate memslot const qualifier (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove need for a vcpu from mmu_try_to_unsync_pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove need for a vcpu from kvm_slot_page_track_is_active (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use shadow page role to detect PML-unfriendly pages for L2 (Vitaly Kuznetsov) [2074835] - KVM: nSVM: introduce struct vmcb_ctrl_area_cached (Vitaly Kuznetsov) [2074835] - KVM: nSVM: split out __nested_vmcb_check_controls (Vitaly Kuznetsov) [2074835] - KVM: nSVM: use svm->nested.save to load vmcb12 registers and avoid TOC/TOU races (Vitaly Kuznetsov) [2074835] - KVM: nSVM: use vmcb_save_area_cached in nested_vmcb_valid_sregs() (Vitaly Kuznetsov) [2074835] - KVM: nSVM: rename nested_load_control_from_vmcb12 in nested_copy_vmcb_control_to_cache (Vitaly Kuznetsov) [2074835] - KVM: nSVM: introduce svm->nested.save to cache save area before checks (Vitaly Kuznetsov) [2074835] - KVM: nSVM: move nested_vmcb_check_cr3_cr4 logic in nested_vmcb_valid_sregs (Vitaly Kuznetsov) [2074835] - KVM: Dynamically allocate "new" memslots from the get-go (Vitaly Kuznetsov) [2074835] - KVM: Wait 'til the bitter end to initialize the "new" memslot (Vitaly Kuznetsov) [2074835] - KVM: Optimize overlapping memslots check (Vitaly Kuznetsov) [2074835] - KVM: Optimize gfn lookup in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: Call kvm_arch_flush_shadow_memslot() on the old slot in kvm_invalidate_memslot() (Vitaly Kuznetsov) [2074835] - KVM: Keep memslots in tree-based structures instead of array-based ones (Vitaly Kuznetsov) [2074835] - KVM: Use interval tree to do fast hva lookup in memslots (Vitaly Kuznetsov) [2074835] - KVM: Resolve memslot ID via a hash table instead of via a static array (Vitaly Kuznetsov) [2074835] - KVM: Move WARN on invalid memslot index to update_memslots() (Vitaly Kuznetsov) [2074835] - KVM: x86: Use nr_memslot_pages to avoid traversing the memslots array (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't call kvm_mmu_change_mmu_pages() if the count hasn't changed (Vitaly Kuznetsov) [2074835] - KVM: Don't make a full copy of the old memslot in __kvm_set_memory_region() (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't assume old/new memslots are non-NULL at memslot commit (Vitaly Kuznetsov) [2074835] - KVM: Use prepare/commit hooks to handle generic memslot metadata updates (Vitaly Kuznetsov) [2074835] - KVM: Stop passing kvm_userspace_memory_region to arch memslot hooks (Vitaly Kuznetsov) [2074835] - KVM: PPC: Avoid referencing userspace memory region in memslot updates (Vitaly Kuznetsov) [2074835] - KVM: x86: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: s390: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: arm64: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: Let/force architectures to deal with arch specific memslot data (Vitaly Kuznetsov) [2074835] - KVM: Use "new" memslot's address space ID instead of dedicated param (Vitaly Kuznetsov) [2074835] - KVM: Resync only arch fields when slots_arch_lock gets reacquired (Vitaly Kuznetsov) [2074835] - KVM: Open code kvm_delete_memslot() into its only caller (Vitaly Kuznetsov) [2074835] - KVM: Require total number of memslot pages to fit in an unsigned long (Vitaly Kuznetsov) [2074835] - KVM: Convert kvm_for_each_vcpu() to using xa_for_each_range() (Vitaly Kuznetsov) [2074835] - KVM: arm64: vgic-v3: Fix vcpu index comparison (Vitaly Kuznetsov) [2074835] - KVM: Use 'unsigned long' as kvm_for_each_vcpu()'s index (Vitaly Kuznetsov) [2074835] - KVM: Convert the kvm->vcpus array to a xarray (Vitaly Kuznetsov) [2074835] - KVM: Move wiping of the kvm->vcpus array to common code (Vitaly Kuznetsov) [2074835] - KVM: MMU: update comment on the number of page role combinations (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Retry page fault if root is invalidated by memslot update (Vitaly Kuznetsov) [2074835] - KVM: VMX: Set failure code in prepare_vmcs02() (Vitaly Kuznetsov) [2074835] - KVM: ensure APICv is considered inactive if there is no APIC (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix reserved bits for AMD PerfEvtSeln register (Vitaly Kuznetsov) [2074835] - x86: Snapshot thread flags (Vitaly Kuznetsov) [2074835] - thread_info: Add helpers to snapshot thread flags (Vitaly Kuznetsov) [2074835] - KVM: fix avic_set_running for preemptable kernels (Vitaly Kuznetsov) [2074835] - KVM: VMX: clear vmx_x86_ops.sync_pir_to_irr if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: SEV: accept signals in sev_lock_two_vms (Vitaly Kuznetsov) [2074835] - KVM: SEV: do not take kvm->lock when destroying (Vitaly Kuznetsov) [2074835] - KVM: SEV: Prohibit migration of a VM that has mirrors (Vitaly Kuznetsov) [2074835] - KVM: SEV: Do COPY_ENC_CONTEXT_FROM with both VMs locked (Vitaly Kuznetsov) [2074835] - selftests: sev_migrate_tests: add tests for KVM_CAP_VM_COPY_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: move mirror status to destination of KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: initialize regions_list of a mirror VM (Vitaly Kuznetsov) [2074835] - KVM: SEV: cleanup locking for KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: do not use list_replace_init on an empty list (Vitaly Kuznetsov) [2074835] - KVM: x86: Use a stable condition around all VT-d PI paths (Vitaly Kuznetsov) [2074835] - KVM: x86: check PIR even for vCPUs with disabled APICv (Vitaly Kuznetsov) [2074835] - KVM: VMX: prepare sync_pir_to_irr for running with APICv disabled (Vitaly Kuznetsov) [2074835] - KVM: selftests: page_table_test: fix calculation of guest_test_phys_mem (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Handle "default" period when selectively waking kthread (Vitaly Kuznetsov) [2074835] - KVM: MMU: shadow nested paging does not have PKU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove spurious TLB flushes in TDP MMU zap collapsible path (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use yield-safe TDP MMU root iter in MMU notifier unmapping (Vitaly Kuznetsov) [2074835] - KVM: X86: Use vcpu->arch.walk_mmu for kvm_mmu_invlpg() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Make sure kvm_create_max_vcpus test won't hit RLIMIT_NOFILE (Vitaly Kuznetsov) [2074835] - KVM: x86: Forbid KVM_SET_CPUID{,2} after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: selftests: Avoid KVM_SET_CPUID2 after KVM_RUN in hyperv_features test (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Emulate guest TLB flush on nested VM-Enter with new vpid12 (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Abide to KVM_REQ_TLB_FLUSH_GUEST request on nested vmentry/vmexit (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Flush current VPID (L1 vs. L2) for KVM_REQ_TLB_FLUSH_GUEST (Vitaly Kuznetsov) [2074835] - KVM: SEV: expose KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM capability (Vitaly Kuznetsov) [2074835] - selftests: sev_migrate_tests: free all VMs (Vitaly Kuznetsov) [2074835] - selftests: fix check for circular KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: x86: ignore APICv if LAPIC is not enabled (Vitaly Kuznetsov) [2074835] - KVM: downgrade two BUG_ONs to WARN_ON_ONCE (Vitaly Kuznetsov) [2074835] - KVM: VMX: do not use uninitialized gfn_to_hva_cache (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Pass parameter flush as false in kvm_tdp_mmu_zap_collapsible_sptes() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip tlb flush if it has been done in zap_gfn_range() (Vitaly Kuznetsov) [2074835] - x86/kvm: remove unused ack_notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: Disallow user memslot with size that exceeds "unsigned long" (Vitaly Kuznetsov) [2074835] - KVM: Ensure local memslot copies operate on up-to-date arch-specific data (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix TLB flush range when handling disconnected pt (Vitaly Kuznetsov) [2074835] - KVM: x86: Assume a 64-bit hypercall for guests with protected state (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add /x86_64/sev_migrate_tests to .gitignore (Vitaly Kuznetsov) [2074835] - KVM: SEV: Fix typo in and tweak name of cmd_allowed_from_miror() (Vitaly Kuznetsov) [2074835] - KVM: SEV: Drop a redundant setting of sev->asid during initialization (Vitaly Kuznetsov) [2074835] - KVM: SEV: WARN if SEV-ES is marked active but SEV is not (Vitaly Kuznetsov) [2074835] - KVM: SEV: Set sev_info.active after initial checks in sev_guest_init() (Vitaly Kuznetsov) [2074835] - KVM: SEV: Disallow COPY_ENC_CONTEXT_FROM if target has created vCPUs (Vitaly Kuznetsov) [2074835] - KVM: Kill kvm_map_gfn() / kvm_unmap_gfn() and gfn_to_pfn_cache (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use a gfn_to_hva_cache for vmptrld (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use kvm_read_guest_offset_cached() for nested VMCS check (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Use sizeof_field() instead of open-coding it (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use kvm_{read,write}_guest_cached() for shadow_vmcs12 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: include EFER.LMA in extended mmu role (Vitaly Kuznetsov) [2074835] - KVM: nVMX: don't use vcpu->arch.efer when checking host state on nested state load (Vitaly Kuznetsov) [2074835] - KVM: Fix steal time asm constraints (Vitaly Kuznetsov) [2074835] - KVM: x86: Move Intel Processor Trace interrupt handler to vmx.c (Vitaly Kuznetsov) [2074835] - KVM: Move x86's perf guest info callbacks to generic KVM (Vitaly Kuznetsov) [2074835] - KVM: x86: More precisely identify NMI from guest when handling PMI (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop current_vcpu for kvm_running_vcpu + kvm_arch_vcpu variable (Vitaly Kuznetsov) [2074835] - perf/core: Rework guest callbacks to prepare for static_call support (Vitaly Kuznetsov) [2074835] - perf: Protect perf_guest_cbs with RCU (Vitaly Kuznetsov) [2074835] - KVM: x86: Register Processor Trace interrupt hook iff PT enabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86: Register perf callbacks after calling vendor's hardware_setup() (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix uninitialized eoi_exit_bitmap usage in vcpu_load_eoi_exitmap() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use perf_test_destroy_vm in memslot_modification_stress_test (Vitaly Kuznetsov) [2074835] - KVM: selftests: Wait for all vCPU to be created before entering guest mode (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move vCPU thread creation and joining to common helpers (Vitaly Kuznetsov) [2074835] - KVM: selftests: Sync perf_test_args to guest during VM creation (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fill per-vCPU struct during "perf_test" VM creation (Vitaly Kuznetsov) [2074835] - KVM: selftests: Start at iteration 0 instead of -1 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Create VM with adjusted number of guest pages for perf tests (Vitaly Kuznetsov) [2074835] - KVM: selftests: Remove perf_test_args.host_page_size (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move per-VM GPA into perf_test_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use perf util's per-vCPU GPA/pages in demand paging test (Vitaly Kuznetsov) [2074835] - KVM: selftests: Capture per-vCPU GPA in perf_test_vcpu_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use shorthand local var to access struct perf_tests_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Require GPA to be aligned when backed by hugepages (Vitaly Kuznetsov) [2074835] - KVM: selftests: Assert mmap HVA is aligned when using HugeTLB (Vitaly Kuznetsov) [2074835] - KVM: selftests: Expose align() helpers to tests (Vitaly Kuznetsov) [2074835] - KVM: selftests: Explicitly state indicies for vm_guest_mode_params array (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add event channel upcall support to xen_shinfo_test (Vitaly Kuznetsov) [2074835] - KVM: SEV: unify cgroup cleanup code for svm_vm_migrate_from (Vitaly Kuznetsov) [2074835] - KVM: x86: move guest_pv_has out of user_access section (Vitaly Kuznetsov) [2074835] - KVM: Move INVPCID type check from vmx and svm to the common kvm_handle_invpcid() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add a helper function to retrieve the GPR index for INVPCID, INVVPID, and INVEPT (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Clean up x2APIC MSR handling for L2 (Vitaly Kuznetsov) [2074835] - KVM: VMX: Macrofy the MSR bitmap getters and setters (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Handle dynamic MSR intercept toggling (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Query current VMCS when determining if MSR bitmaps are in use (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't update vcpu->arch.pv_eoi.msr_val when a bogus value was written to MSR_KVM_PV_EOI_EN (Vitaly Kuznetsov) [2074835] - KVM: x86: Rename kvm_lapic_enable_pv_eoi() (Vitaly Kuznetsov) [2074835] - kvm: mmu: Use fast PF path for access tracking of huge pages when possible (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Properly dereference rcu-protected TDP MMU sptep iterator (Vitaly Kuznetsov) [2074835] - kvm: x86: Convert return type of *is_valid_rdpmc_ecx() to bool (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix recording of guest steal time / preempted status (Vitaly Kuznetsov) [2074835] - selftest: KVM: Add intra host migration tests (Vitaly Kuznetsov) [2074835] - selftest: KVM: Add open sev dev helper (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add support for SEV-ES intra host migration (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add support for SEV intra host migration (Vitaly Kuznetsov) [2074835] - KVM: SEV: provide helpers to charge/uncharge misc_cg (Vitaly Kuznetsov) [2074835] - KVM: generalize "bugged" VM to "dead" VM (Vitaly Kuznetsov) [2074835] - EFI: Introduce the new AMD Memory Encryption GUID. (Vitaly Kuznetsov) [2074835] - x86/kvm: Add AMD SEV specific Hypercall3 (Vitaly Kuznetsov) [2074835] - KVM: x86: SGX must obey the KVM_INTERNAL_ERROR_EMULATION protocol (Vitaly Kuznetsov) [2074835] - KVM: x86: On emulation failure, convey the exit reason, etc. to userspace (Vitaly Kuznetsov) [2074835] - KVM: x86: Get exit_reason as part of kvm_x86_ops.get_exit_info (Vitaly Kuznetsov) [2074835] - KVM: x86: Clarify the kvm_run.emulation_failure structure layout (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fix nested SVM tests when built with clang (Vitaly Kuznetsov) [2074835] - kvm: x86: Remove stale declaration of kvm_no_apic_vcpu (Vitaly Kuznetsov) [2074835] - KVM: x86: Move SVM's APICv sanity check to common x86 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Extract zapping of rmaps for gfn range to separate helper (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop a redundant remote TLB flush in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop a redundant, broken remote TLB flush (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't unload MMU in kvm_vcpu_flush_tlb_guest() (Vitaly Kuznetsov) [2074835] - KVM: X86: pair smp_wmb() of mmu_try_to_unsync_pages() with smp_rmb() (Vitaly Kuznetsov) [2074835] - KVM: emulate: Comment on difference between RDPMC implementation and manual (Vitaly Kuznetsov) [2074835] - KVM: x86: Add vendor name to kvm_x86_ops, use it for error messages (Vitaly Kuznetsov) [2074835] - kvm: x86: mmu: Make NX huge page recovery period configurable (Vitaly Kuznetsov) [2074835] - KVM: vPMU: Fill get_msr MSR_CORE_PERF_GLOBAL_OVF_CTRL w/ 0 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename slot_handle_leaf to slot_handle_level_4k (Vitaly Kuznetsov) [2074835] - KVM: VMX: RTIT_CTL_BRANCH_EN has no dependency on other CPUID bit (Vitaly Kuznetsov) [2074835] - KVM: VMX: Rename pt_desc.addr_range to pt_desc.num_address_ranges (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use precomputed vmx->pt_desc.addr_range (Vitaly Kuznetsov) [2074835] - KVM: VMX: Restore host's MSR_IA32_RTIT_CTL when it's not zero (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: clean up prefetch/prefault/speculative naming (Vitaly Kuznetsov) [2074835] - KVM: cleanup allocation of rmaps and page tracking data (Vitaly Kuznetsov) [2074835] - selftests: KVM: Introduce system counter offset test (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add helpers for vCPU device attributes (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add test for KVM_{GET,SET}_CLOCK (Vitaly Kuznetsov) [2074835] - kvm: x86: protect masterclock with a seqcount (Vitaly Kuznetsov) [2074835] - KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK (Vitaly Kuznetsov) [2074835] - KVM: x86: avoid warning with -Wbitwise-instead-of-logical (Vitaly Kuznetsov) [2074835] - KVM: x86: only allocate gfn_track when necessary (Vitaly Kuznetsov) [2074835] - KVM: x86: add config for non-kvm users of page tracking (Vitaly Kuznetsov) [2074835] - nSVM: Check for reserved encodings of TLB_CONTROL in nested VMCB (Vitaly Kuznetsov) [2074835] - kvm: use kvfree() in kvm_arch_free_vm() (Vitaly Kuznetsov) [2074835] - KVM: x86: Expose Predictive Store Forwarding Disable (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in make_spte and mmu_try_to_unsync_pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in rmap_add (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass struct kvm_page_fault to mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass kvm_mmu_page struct to make_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: set ad_disabled in TDP MMU role (Vitaly Kuznetsov) [2074835] - KVM: MMU: remove unnecessary argument to mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: clean up make_spte return value (Vitaly Kuznetsov) [2074835] - KVM: MMU: inline set_spte in FNAME(sync_page) (Vitaly Kuznetsov) [2074835] - KVM: MMU: inline set_spte in mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in page_fault_handle_page_track (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Pass the memslot around via struct kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: unify tdp_mmu_map_set_spte_atomic and tdp_mmu_set_spte_atomic_no_dirty_log (Vitaly Kuznetsov) [2074835] - KVM: MMU: mark page dirty in make_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fold rmap_recycle into rmap_add (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Verify shadow walk doesn't terminate early in page faults (Vitaly Kuznetsov) [2074835] - KVM: MMU: change tracepoints arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change disallowed_hugepage_adjust() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_mmu_hugepage_adjust() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change fast_page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change tdp_mmu_map_handle_target_level() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_tdp_mmu_map() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change FNAME(fetch)() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change __direct_map() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change handle_abnormal_pfn() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_faultin_pfn() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change page_fault_handle_page_track() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change direct_page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change mmu->page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: Introduce struct kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass unadulterated gpa to direct_page_fault (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix potential race in KVM_GET_CLOCK (Vitaly Kuznetsov) [2074835] - KVM: x86: extract KVM_GET_CLOCK/KVM_SET_CLOCK to separate functions (Vitaly Kuznetsov) [2074835] - kvm: x86: abstract locking around pvclock_update_vm_gtod_copy (Vitaly Kuznetsov) [2074835] - KVM: X86: Move PTE present check from loop body to __shadow_walk_next() (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: implement nested TSC scaling (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: add module param to control TSC scaling (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: add module param to control LBR virtualization (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: don't copy pause related settings (Vitaly Kuznetsov) [2074835] - kvm: irqfd: avoid update unmodified entries of the routing (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't check unsync if the original spte is writible (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't unsync pagetables when speculative (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove FNAME(update_pte) (Vitaly Kuznetsov) [2074835] - KVM: X86: Zap the invalid list after remote tlb flushing (Vitaly Kuznetsov) [2074835] - KVM: X86: Change kvm_sync_page() to return true when remote flush is needed (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove kvm_mmu_flush_or_zap() (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't flush current tlb on shadow page modification (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fix kvm_vm_free() in cr4_cpuid_sync and vmx_tsc_adjust tests (Vitaly Kuznetsov) [2074835] - kvm: selftests: Fix spelling mistake "missmatch" -> "mismatch" (Vitaly Kuznetsov) [2074835] - KVM: x86: Manually retrieve CPUID.0x1 when getting FMS for RESET/INIT (Vitaly Kuznetsov) [2074835] - KVM: x86: WARN on non-zero CRs at RESET to detect improper initalization (Vitaly Kuznetsov) [2074835] - KVM: SVM: Move RESET emulation to svm_vcpu_reset() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move RESET emulation to vmx_vcpu_reset() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop explicit zeroing of MSR guest values at vCPU creation (Vitaly Kuznetsov) [2074835] - KVM: x86: Fold fx_init() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct setting of XCR0 for guest during vCPU create (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct setting of CR0.ET for guests during vCPU create (Vitaly Kuznetsov) [2074835] - KVM: x86: Simplify retrieving the page offset when loading PDTPRs (Vitaly Kuznetsov) [2074835] - KVM: x86: Subsume nested GPA read helper into load_pdptrs() (Vitaly Kuznetsov) [2074835] - kvm: rename KVM_MAX_VCPU_ID to KVM_MAX_VCPU_IDS (Vitaly Kuznetsov) [2074835] - KVM: Make kvm_make_vcpus_request_mask() use pre-allocated cpu_kick_mask (Vitaly Kuznetsov) [2074835] - KVM: Pre-allocate cpumasks for kvm_make_all_cpus_request_except() (Vitaly Kuznetsov) [2074835] - KVM: Drop 'except' parameter from kvm_make_vcpus_request_mask() (Vitaly Kuznetsov) [2074835] - KVM: Optimize kvm_make_vcpus_request_mask() a bit (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Avoid calling kvm_make_vcpus_request_mask() with vcpu_mask==NULL (Vitaly Kuznetsov) [2074835] - KVM: use vma_pages() helper (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Reset vmxon_ptr upon VMXOFF emulation. (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline to_svm() (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline vmload() / vmsave() (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline sev_*guest() (Vitaly Kuznetsov) [2074835] - KVM: Remove tlbs_dirty (Vitaly Kuznetsov) [2074835] - KVM: X86: fix lazy allocation of rmaps (Vitaly Kuznetsov) [2074835] - KVM: Remove unnecessary export of kvm_{inc,dec}_notifier_count() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop 'shared' param from tdp_mmu_link_page() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add detailed page size stats (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: bump mmu notifier count in kvm_zap_gfn_range (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: fix parameters to kvm_flush_remote_tlbs_with_address (Vitaly Kuznetsov) [2074835] - Revert "KVM: x86/mmu: Allow zap gfn range to operate under the mmu read lock" (Vitaly Kuznetsov) [2074835] - KVM: X86: Introduce mmu_rmaps_stat per-vm debugfs file (Vitaly Kuznetsov) [2074835] - KVM: X86: Introduce kvm_mmu_slot_lpages() helpers (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Protect marking SPs unsync when using TDP MMU with spinlock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't step down in the TDP iterator when zapping all SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't leak non-leaf SPTEs when zapping all SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename __gfn_to_rmap to gfn_to_rmap (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Leverage vcpu->last_used_slot in tdp_mmu_map_handle_target_level (Vitaly Kuznetsov) [2074835] - KVM: const-ify all relevant uses of struct kvm_memory_slot (Vitaly Kuznetsov) [2074835] - KVM: Don't take mmu_lock for range invalidation unless necessary (Vitaly Kuznetsov) [2074835] - KVM: Block memslot updates across range_start() and range_end() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Lazily allocate memslot rmaps (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip rmap operations if rmaps not allocated (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Tear down roots before kvm_mmu_zap_all_fast returns (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fast invalidation for TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow enabling/disabling dirty logging under MMU read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow zapping collapsible SPTEs to use MMU read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow zap gfn range to operate under the mmu read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow yielding during MMU notifier unmap/zap, if possible (Vitaly Kuznetsov) [2074835] - KVM: Take mmu_lock when handling MMU notifier iff the hva hits a memslot (Vitaly Kuznetsov) [2074835] - KVM: Move MMU notifier's mmu_lock acquisition into common helper (Vitaly Kuznetsov) [2074835] - KVM: Kill off the old hva-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: PPC: Convert to the gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: arm64: Convert to the gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: Move x86's MMU notifier memslot walkers to generic code (Vitaly Kuznetsov) [2074835] - KVM: Assert that notifier count is elevated in .change_pte() (Vitaly Kuznetsov) [2074835] - KVM: Move arm64's MMU notifier trace events to generic code (Vitaly Kuznetsov) [2074835] - KVM: Switch to new MMU notifiers API (Vitaly Kuznetsov) [2074835] - scsi: qedi: Remove redundant flush_workqueue() calls (Nilesh Javali) [2044837] - scsi: qedi: Fix SYSFS_FLAG_FW_SEL_BOOT formatting (Nilesh Javali) [2044837] - xfs: reserve quota for dir expansion when linking/unlinking files (Carlos Maiolino) [2082833] - iwlwifi: fix use-after-free (Jose Ignacio Tornos Martinez) [2091539] - nfs: fix broken handling of the softreval mount option (Benjamin Coddington) [2083224] - ethtool: extend ringparam setting/getting API with rx_buf_len (Ivan Vecera) [2091857] - ethtool: add support to set/get rx buf len via ethtool (Ivan Vecera) [2091857] - ethtool: add support to set/get tx copybreak buf size via ethtool (Ivan Vecera) [2091857]- x86/apic: Make TSC deadline timer detection message visible (David Arcari) [2098086] - x86/apic: Move TSC deadline timer debug printk (David Arcari) [2098086] - [s390] KVM: s390: selftests: Add error memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add more copy memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add named stages for memop test (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add macro as abstraction for MEM_OP (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Split memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Fix lockdep issue in vm memop (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add missing vm MEM_OP size check (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Clarify key argument for MEM_OP in api docs (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Update api documentation for memop ioctl (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add capability for storage key extension of MEM_OP IOCTL (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Rename existing vcpu memop functions (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add vm IOCTL for key checked guest absolute memory access (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add optional storage key checking to MEMOP IOCTL (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Test TEST PROTECTION emulation (Claudio Imbrenda) [1984917] - [s390] KVM: s390: handle_tprot: Honor storage keys (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Honor storage keys when accessing guest memory (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: Add copy_from/to_user_key functions (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: fix compile error (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: introduce bit field for OAC specifier (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Cleanup access to guest pages (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Refactor access address range check (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Refactor gpa and length calculation (Claudio Imbrenda) [1984917] - xfs: reorder iunlink remove operation in xfs_ifree (Brian Foster) [2081146] - tcp: fix TCP socket rehash stats mis-accounting (Antoine Tenart) [2073082] - tcp: export count for rehash attempts (Antoine Tenart) [2073082] - tcp: add SRTT to SCM_TIMESTAMPING_OPT_STATS (Antoine Tenart) [2073082] - tcp: add new SNMP counter for drops when try to queue in rcv queue (Antoine Tenart) [2073082] - tcp: add SNMP counter for zero-window drops (Antoine Tenart) [2073082] - net: udp: introduce UDP_MIB_MEMERRORS for udp_mem (Antoine Tenart) [2073082] - context_tracking: Sync up lockdep and cpu irqs state to prevent false warnings (Waiman Long) [2098074] - platform/x86: ISST: Fix possible circular locking dependency detected (Prarit Bhargava) [2072659] - platform/x86: ISST: use semi-colons instead of commas (Prarit Bhargava) [2072659] - platform/x86: intel_speed_select_if: Move to intel sub-directory (Prarit Bhargava) [2072659] - x86/sgx: Free backing memory after faulting the enclave page (Vladis Dronov) [2081351] - x86/sgx: Fix missing poison handling in reclaimer (Vladis Dronov) [2081351] - x86/sgx: Silence softlockup detection when releasing large enclaves (Vladis Dronov) [2081351] - selftests/sgx: Treat CC as one argument (Vladis Dronov) [2081351] - selftests/x86: Add validity check and allow field splitting (Vladis Dronov) [2081351] - selftests/sgx: Remove extra newlines in test output (Vladis Dronov) [2081351] - selftests/sgx: Ensure enclave data available during debug print (Vladis Dronov) [2081351] - selftests/sgx: Do not attempt enclave build without valid enclave (Vladis Dronov) [2081351] - selftests/sgx: Fix NULL-pointer-dereference upon early test failure (Vladis Dronov) [2081351] - x86/sgx: Remove .fixup usage (Vladis Dronov) [2081351] - x86/sgx: Fix NULL pointer dereference on non-SGX systems (Vladis Dronov) [2081351] - x86/sgx: Add an attribute for the amount of SGX memory in a NUMA node (Vladis Dronov) [2081351] - vmxnet3: disable overlay offloads if UPT device does not support (Kamal Heib) [2100226] - vmxnet3: update to version 7 (Kamal Heib) [2100226] - vmxnet3: use ext1 field to indicate encapsulated packet (Kamal Heib) [2100226] - vmxnet3: limit number of TXDs used for TSO packet (Kamal Heib) [2100226] - vmxnet3: add command to set ring buffer sizes (Kamal Heib) [2100226] - vmxnet3: add support for out of order rx completion (Kamal Heib) [2100226] - vmxnet3: add support for large passthrough BAR register (Kamal Heib) [2100226] - vmxnet3: add support for capability registers (Kamal Heib) [2100226] - vmxnet3: prepare for version 7 changes (Kamal Heib) [2100226] - net: vmxnet3: fix possible NULL pointer dereference in vmxnet3_rq_cleanup() (Kamal Heib) [2100226] - net: vmxnet3: fix possible use-after-free bugs in vmxnet3_rq_alloc_rx_buf() (Kamal Heib) [2100226]- iommu/amd: Enable swiotlb in all cases (Jerry Snitselaar) [2072179] - iommu/arm-smmu-v3-sva: Fix mm use-after-free (Jerry Snitselaar) [2072179] - dma-direct: don't over-decrypt memory (Jerry Snitselaar) [2072179] - dma-direct: always leak memory that can't be re-encrypted (Jerry Snitselaar) [2072179] - dma-direct: clean up the remapping checks in dma_direct_alloc (Jerry Snitselaar) [2072179] - dma-direct: don't call dma_set_decrypted for remapped allocations (Jerry Snitselaar) [2072179] - dma-direct: factor out dma_set_{de,en}crypted helpers (Jerry Snitselaar) [2072179] - swiotlb: max mapping size takes min align mask into account (Jerry Snitselaar) [2072179] - dma-debug: change allocation mode from GFP_NOWAIT to GFP_ATIOMIC (Jerry Snitselaar) [2072179] - dma-direct: don't fail on highmem CMA pages in dma_direct_alloc_pages (Jerry Snitselaar) [2072179] - dma-direct: factor out a helper for DMA_ATTR_NO_KERNEL_MAPPING allocations (Jerry Snitselaar) [2072179] - swiotlb: make swiotlb_exit a no-op if SWIOTLB_FORCE is set (Jerry Snitselaar) [2072179] - dma-direct: use is_swiotlb_active in dma_direct_map_page (Jerry Snitselaar) [2072179] - iommu/vt-d: Calculate mask for non-aligned flushes (Jerry Snitselaar) [2072179] - iommu/amd: Call memunmap in error path (Jerry Snitselaar) [2072179] - iommu/vt-d: Drop duplicate check in dma_pte_free_pagetable() (Jerry Snitselaar) [2072179] - iommu/vt-d: Use correctly sized arguments for bit field (Jerry Snitselaar) [2072179] - Revert "iommu/arm-smmu-v3: Decrease the queue size of evtq and priq" (Jerry Snitselaar) [2072179] - iommu: Fix potential use-after-free during probe (Jerry Snitselaar) [2072179] - dma-direct: avoid redundant memory sync for swiotlb (Jerry Snitselaar) [2072179] - iommu/iova: Fix race between FQ timeout and teardown (Jerry Snitselaar) [2072179] - iommu/io-pgtable-arm: Fix table descriptor paddr formatting (Jerry Snitselaar) [2072179] - iommu: Extend mutex lock scope in iommu_probe_device() (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: mask/unmask interrupts on suspend/resume (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: setup the INTX registers on mask/unmask (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: re-enable after resume (Jerry Snitselaar) [2072179] - iommu/amd: Restore GA log/tail pointer on host resume (Jerry Snitselaar) [2072179] - iommu/amd: Clarify AMD IOMMUv2 initialization messages (Jerry Snitselaar) [2072179] - iommu/vt-d: Avoid duplicate removing in __domain_mapping() (Jerry Snitselaar) [2072179] - iommu/vt-d: Fix an unbalanced rcu_read_lock/rcu_read_unlock() (Jerry Snitselaar) [2072179] - iommu/vt-d: Check FL and SL capability sanity in scalable mode (Jerry Snitselaar) [2072179] - iommu/vt-d: Add present bit check in pasid entry setup helpers (Jerry Snitselaar) [2072179] - iommu/vt-d: Preset A/D bits for user space DMA usage (Jerry Snitselaar) [2072179] - iommu/vt-d: Remove unnecessary oom message (Jerry Snitselaar) [2072179] - iommu/vt-d: Enable ATS for the devices in SATC table (Jerry Snitselaar) [1893460] - iommu/vt-d: Parse SATC reporting structure (Jerry Snitselaar) [1893460] - iommu/vt-d: Dump DMAR translation structure when DMA fault occurs (Jerry Snitselaar) [1868826] - nvme: fix typos in nvme status code values (Gopal Tiwari) [2091824] - Adding CONFIG_NVME_VERBOSE_ERRORS to RHEL-8. (Gopal Tiwari) [2091824] - nvme: add missing status values to verbose logging (Gopal Tiwari) [2091824] - nvme: don't print verbose errors for internal passthrough requests (Gopal Tiwari) [2091824] - nvme: add verbose error logging (Gopal Tiwari) [2091824] - perf/x86/msr: Add Raptor Lake CPU support (Michael Petlan) [2094572] - perf/x86: Add Intel Raptor Lake support (Michael Petlan) [2094572] - perf/x86/cstate: Add SAPPHIRERAPIDS_X CPU support (Michael Petlan) [2094572] - perf/x86/cstate: Add Raptor Lake support (Michael Petlan) [2094572] - [s390] s390/lcs: fix variable dereferenced before check (Mete Durlu) [2043835] - [s390] s390/ctcm: fix potential memory leak (Mete Durlu) [2043835] - [s390] s390/ctcm: fix variable dereferenced before check (Mete Durlu) [2043835] - [s390] s390/net: sort out physical vs virtual pointers usage (Mete Durlu) [2043835] - [s390] s390/qeth: remove check for packing mode in qeth_check_outbound_queue() (Mete Durlu) [2043835] - [s390] s390/qeth: fine-tune .ndo_select_queue() (Mete Durlu) [2043835] - [s390] s390/qeth: don't offer .ndo_bridge_* ops for OSA devices (Mete Durlu) [2043835] - [s390] s390/qeth: split up L2 netdev_ops (Mete Durlu) [2043835] - [s390] s390/qeth: simplify qeth_receive_skb() (Mete Durlu) [2043835] - [s390] s390/lcs: add braces around empty function body (Mete Durlu) [2043835] - [s390] s390/ctcm: add __printf format attribute to ctcm_dbf_longtext (Mete Durlu) [2043835] - [s390] s390/ctcm: fix format string (Mete Durlu) [2043835] - [s390] s390/qeth: allocate RX queue at probe time (Mete Durlu) [2043835] - [s390] s390/qeth: update kerneldoc for qeth_add_hw_header() (Mete Durlu) [2043835] - [s390] s390/qeth: fix kernel doc comments (Mete Durlu) [2043835] - [s390] s390/qeth: add __printf format attribute to qeth_dbf_longtext (Mete Durlu) [2043835] - [s390] s390/qeth: fix various format strings (Mete Durlu) [2043835] - [s390] s390/qeth: don't keep track of Input Queue count (Mete Durlu) [2043835] - [s390] s390/qeth: clarify remaining dev_kfree_skb_any() users (Mete Durlu) [2043835] - [s390] s390/qeth: move qdio's QAOB cache into qeth (Mete Durlu) [2043835] - [s390] s390/qeth: improve trace entries for MAC address (un)registration (Mete Durlu) [2043835] - [s390] s390/netiucv: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/lcs: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/ctcm: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/qeth: clean up device_type management (Mete Durlu) [2043835] - [s390] s390/qeth: clean up QETH_PROT_* naming (Mete Durlu) [2043835] - mm/memcg: Free percpu stats memory of dying memcg's (Waiman Long) [2004037] - netfilter: flowtable: fix TCP flow teardown (Florian Westphal) [2088234] - netfilter: conntrack: annotate data-races around ct->timeout (Florian Westphal) [2088234] - netfilter: conntrack: initialize ct->timeout (Florian Westphal) [2088234] - NFSv4: Fix free of uninitialized nfs4_label on referral lookup. (Scott Mayhew) [2090994] - md: fix double free of io_acct_set bioset (Nigel Croxon) [2094076] - md: Don't set mddev private to NULL in raid0 pers->free (Nigel Croxon) [2094076] - md: protect md_unregister_thread from reentrancy (Nigel Croxon) [2094076] - md: don't unregister sync_thread with reconfig_mutex held (Nigel Croxon) [2094076] - raid5: don't set the discard_alignment queue limit (Nigel Croxon) [2094076] - md: Replace role magic numbers with defined constants (Nigel Croxon) [2094076] - md/raid0: Ignore RAID0 layout if the second zone has only one device (Nigel Croxon) [2094076] - md/raid5: Annotate functions that hold device_lock with __must_hold (Nigel Croxon) [2094076] - md/raid5-ppl: Annotate with rcu_dereference_protected() (Nigel Croxon) [2094076] - md/raid5: Annotate rdev/replacement access when mddev_lock is held (Nigel Croxon) [2094076] - md/raid5: Annotate rdev/replacement accesses when nr_pending is elevated (Nigel Croxon) [2094076] - md/raid5: Add __rcu annotation to struct disk_info (Nigel Croxon) [2094076] - md/raid5: Un-nest struct raid5_percpu definition (Nigel Croxon) [2094076] - md/raid5: Cleanup setup_conf() error returns (Nigel Croxon) [2094076] - md: replace deprecated strlcpy & remove duplicated line (Nigel Croxon) [2094076] - md/bitmap: don't set sb values if can't pass sanity check (Nigel Croxon) [2094076] - md: fix an incorrect NULL check in md_reload_sb (Nigel Croxon) [2094076] - md: fix an incorrect NULL check in does_sb_need_changing (Nigel Croxon) [2094076] - md: use msleep() in md_notify_reboot() (Nigel Croxon) [2094076] - ext4: force overhead calculation if the s_overhead_cluster makes no sense (Lukas Czerner) [2079886] - ext4: fix overhead calculation to account for the reserved gdt blocks (Lukas Czerner) [2079886] - ext4: limit length to bitmap_maxbytes - blocksize in punch_hole (Lukas Czerner) [2079886] - ext4: fix use-after-free in ext4_search_dir (Lukas Czerner) [2079886] - ext4: fix symlink file size not match to file content (Lukas Czerner) [2079886] - ext4: fix fallocate to use file_modified to update permissions consistently (Lukas Czerner) [2085623] - ext4: remove unused macro MPAGE_DA_EXTENT_TAIL (Lukas Czerner) [2079886] - ext4: add missing braces in ext4_ext_drop_refs() (Lukas Czerner) [2079886] - ext4: remove obsolete comment from ext4_can_extents_be_merged() (Lukas Czerner) [2079886] - ext4: make some functions static in extents.c (Lukas Czerner) [2079886] - ext4: remove redundant S_ISREG() checks from ext4_fallocate() (Lukas Czerner) [2079886] - ext4: clean up len and offset checks in ext4_fallocate() (Lukas Czerner) [2079886] - ext4: remove ext4_{ind,ext}_calc_metadata_amount() (Lukas Czerner) [2079886] - ext4: fix fs corruption when tring to remove a non-empty directory with IO error (Lukas Czerner) [2079886] - ext4: fix error handling in ext4_restore_inline_data() (Lukas Czerner) [2079886] - jbd2: export jbd2_journal_[grab|put]_journal_head (Lukas Czerner) [2079886] - ext4: don't use the orphan list when migrating an inode (Lukas Czerner) [2079886] - ext4: set csum seed in tmp inode while migrating to extents (Lukas Czerner) [2079886] - ext4: fix an use-after-free issue about data=journal writeback mode (Lukas Czerner) [2079886] - ext4: fix bh ref count on error paths (Lukas Czerner) [2079886] - ext4: fix a possible ABBA deadlock due to busy PA (Lukas Czerner) [2079886] - ext4: discard preallocations before releasing group lock (Lukas Czerner) [2079886] - ext4: make ext_debug() implementation to use pr_debug() (Lukas Czerner) [2079886] - ext4: mballoc: make mb_debug() implementation to use pr_debug() (Lukas Czerner) [2079886] - ext4: improve ext_debug() msg in case of block allocation failure (Lukas Czerner) [2079886] - ext4: use BIT() macro for BH_** state bits (Lukas Czerner) [2079886] - ext4: balloc: use task_pid_nr() helper (Lukas Czerner) [2079886] - ext4: mballoc: fix possible NULL ptr & remove BUG_ONs from DOUBLE_CHECK (Lukas Czerner) [2079886] - ext4: mballoc: refactor code inside DOUBLE_CHECK into separate function (Lukas Czerner) [2079886] - ext4: mballoc: make ext4_mb_use_preallocated() return type as bool (Lukas Czerner) [2079886] - ext4: mballoc: simplify error handling in ext4_init_mballoc() (Lukas Czerner) [2079886] - ext4: mballoc: fix few other format specifier in mb_debug() (Lukas Czerner) [2079886] - ext4: mballoc: correct the mb_debug() format specifier for pa_len var (Lukas Czerner) [2079886] - ext4: mballoc: add more mb_debug() msgs (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_show_ac() (Lukas Czerner) [2079886] - ext4: mballoc: print bb_free info even when it is 0 (Lukas Czerner) [2079886] - ext4: fix dead loop in ext4_mb_new_blocks (Lukas Czerner) [2079886] - ext4: mballoc: use lock for checking free blocks while retrying (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_good_group() (Lukas Czerner) [2079886] - ext4: mballoc: introduce pcpu seqcnt for freeing PA to improve ENOSPC handling (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_discard_preallocations() (Lukas Czerner) [2079886] - ext4: mballoc: add blocks to PA list under same spinlock after allocating blocks (Lukas Czerner) [2079886] - ext4: fix lazy initialization next schedule time computation in more granular unit (Lukas Czerner) [2079886] - ext4: fix avefreec in find_group_orlov (Lukas Czerner) [2079886] - ext4: allow the dax flag to be set and cleared on inline directories (Lukas Czerner) [2079886] - ext4: annotate data race in jbd2_journal_dirty_metadata() (Lukas Czerner) [2079886] - ext4: annotate data race in start_this_handle() (Lukas Czerner) [2079886] - ext4: fix superblock checksum failure when setting password salt (Lukas Czerner) [2079886] - ext4: correctly report "not supported" for {usr,grp}jquota when !CONFIG_QUOTA (Lukas Czerner) [2079886] - jbd2: fix ocfs2 corrupt when clearing block group bits (Lukas Czerner) [2079886] - ext4: fix ext4_empty_dir() for directories with holes (Lukas Czerner) [2079886] - ext4: allow directory holes (Lukas Czerner) [2079886] - net/af_packet: make sure to pull mac header (Hangbin Liu) [2066976] - rcu/nocb: Make rcu_core() callbacks acceleration preempt-safe (Waiman Long) [2097549] - redhat: drop expired testing secureboot signing key (Jarod Wilson) [2095199]- atlantic: Fix issue in the pm resume flow. (Igor Russkikh) [2002395] - atlantic: Fix driver resume flow. (Igor Russkikh) [2002395] - Build intel_sdsi with {tools_make} (Prarit Bhargava) [1971951] - redhat/kernel.spec.template: Add intel_sdsi tool (Prarit Bhargava) [1971951] - redhat/configs: Add CONFIG_INTEL_SDSI (Prarit Bhargava) [1971951] - selftests: sdsi: test sysfs setup (Prarit Bhargava) [1971951] - tools arch x86: Add Intel SDSi provisiong tool (Prarit Bhargava) [1971951] - platform/x86: Add Intel Software Defined Silicon driver (Prarit Bhargava) [1971951] - platform/x86/intel: Fix 'rmmod pmt_telemetry' panic (Prarit Bhargava) [2080426] - x86/cpu: Add new Alderlake and Raptorlake CPU model numbers (Prarit Bhargava) [2040019 2040059] - netfilter: nf_tables: sanitize nft_set_desc_concat_parse() (Florian Westphal) [2096403] {CVE-2022-2078} - mt76: mt7921: Fix the error handling path of mt7921_pci_probe() (Íñigo Huguet) [2096758] - Watchdog: sp5100_tco: Enable Family 17h+ CPUs (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Add initialization using EFCH MMIO (Sudheesh Mavila) [2031643] - kernel/resource: Introduce request_mem_region_muxed() (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Refactor MMIO base address initialization (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Move timer initialization into function (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: Add support for get_timeleft (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: Enable watchdog on Family 17h devices if disabled (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: drop warning after registering device (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: drop warning after calling watchdog_init_timeout (Sudheesh Mavila) [2031643] - Reinstate some of "swiotlb: rework "fix info leak with DMA_FROM_DEVICE"" (Chris von Recklinghausen) [2059701] {CVE-2022-0854} - swiotlb: fix info leak with DMA_FROM_DEVICE (Chris von Recklinghausen) [2059701] {CVE-2022-0854} - redhat/configs: Add CONFIG_S390_UV_UAPI (Claudio Imbrenda) [1984905] - [s390] s390/uv_uapi: depend on CONFIG_S390 (Claudio Imbrenda) [1984905] - [s390] drivers/s390/char: Add Ultravisor io device (Claudio Imbrenda) [1984905] - cpufreq: Specify default governor on command line (Prarit Bhargava) [2083766] - cpufreq: Fix locking issues with governors (Prarit Bhargava) [2083766] - cpufreq: Register governors at core_initcall (Prarit Bhargava) [2083766] - nvme: fix RCU hole that allowed for endless looping in multipath round robin (Gopal Tiwari) [2078806] - nvme-multipath: fix hang when disk goes live over reconnect (Gopal Tiwari) [2078806] - nvme-tcp: send H2CData PDUs based on MAXH2CDATA (Gopal Tiwari) [2078806] - nvme: also mark passthrough-only namespaces ready in nvme_update_ns_info (Gopal Tiwari) [2078806] - nvme: don't return an error from nvme_configure_metadata (Gopal Tiwari) [2078806] - nvme-tcp: fix bogus request completion when failing to send AER (Gopal Tiwari) [2078806] - nvme-fabrics: remove the unneeded ret variable in nvmf_dev_show (Gopal Tiwari) [2078806] - nvme-pci: add the IGNORE_DEV_SUBNQN quirk for Intel P4500/P4600 SSDs (Gopal Tiwari) [2078806] - nvme-fabrics: print out valid arguments when reading from /dev/nvme-fabrics (Gopal Tiwari) [2078806] - nvmet-tcp: fix possible list corruption for unexpected command failure (Gopal Tiwari) [2078806] - nvme: fix use after free when disconnecting a reconnecting ctrl (Gopal Tiwari) [2078806] - nvme-multipath: set ana_log_size to 0 after free ana_log_buf (Gopal Tiwari) [2078806] - nvme: disable namespace access for unsupported metadata (Gopal Tiwari) [2078806] - nvme: report write pointer for a full zone as zone start + zone len (Gopal Tiwari) [2078806] - nvme: show subsys nqn for duplicate cntlids (Gopal Tiwari) [2078806] - nvme-pci: add NO APST quirk for Kioxia device (Gopal Tiwari) [2078806] - nvme: fix write zeroes pi (Gopal Tiwari) [2078806] - nvmet: use flex_array_size and struct_size (Gopal Tiwari) [2078806] - nvme: drop scan_lock and always kick requeue list when removing namespaces (Gopal Tiwari) [2078806] - nvmet: use struct_size over open coded arithmetic (Gopal Tiwari) [2078806] - nvme-pci: clear shadow doorbell memory on resets (Gopal Tiwari) [2078806] - nvmet: use macro definitions for setting cmic value (Gopal Tiwari) [2078806] - nvme-rdma: fix error code in nvme_rdma_setup_ctrl (Gopal Tiwari) [2078806] - nvmet: use macro definition for setting nmic value (Gopal Tiwari) [2078806] - nvmet-rdma: implement get_max_queue_size controller op (Gopal Tiwari) [2078806] - nvmet: add get_max_queue_size op for controllers (Gopal Tiwari) [2078806] - nvme-rdma: limit the maximal queue size for RDMA controllers (Gopal Tiwari) [2078806] - nvme: paring quiesce/unquiesce (Gopal Tiwari) [2078806] - nvme: add APIs for stopping/starting admin queue (Gopal Tiwari) [2078806] - nvme: prepare for pairing quiescing and unquiescing (Gopal Tiwari) [2078806] - nvme: apply nvme API to quiesce/unquiesce admin queue (Gopal Tiwari) [2078806] - nvme: loop: clear NVME_CTRL_ADMIN_Q_STOPPED after admin queue is reallocated (Gopal Tiwari) [2078806] - nvme: remove the call to nvme_update_disk_info in nvme_ns_remove (Gopal Tiwari) [2078806] - nvme: remove the GENHD_FL_UP check in nvme_ns_remove (Gopal Tiwari) [2078806] - nvme-rdma: destroy cm id before destroy qp to avoid use after free (Gopal Tiwari) [2078806] - nvme: only call synchronize_srcu when clearing current path (Gopal Tiwari) [2078806] - nvme-multipath: revalidate paths during rescan (Gopal Tiwari) [2078806] - nvme: remove the unused NVME_NS_* enum (Gopal Tiwari) [2078806] - nvme: Have NVME_FABRICS select NVME_CORE instead of transport drivers (Gopal Tiwari) [2078806] - nvme-pci: disable hmb on idle suspend (Gopal Tiwari) [2078806] - nvme: allow user toggling hmb usage (Gopal Tiwari) [2078806] - nvme-fabrics: remove superfluous nvmf_host_put in nvmf_parse_options (Gopal Tiwari) [2078806] - nvme: add set feature tracing support (Gopal Tiwari) [2078806] - nvmet: add set feature tracing support (Gopal Tiwari) [2078806] - nvme-pci: cmb sysfs: one file, one value (Gopal Tiwari) [2078806] - nvme-pci: use attribute group for cmb sysfs (Gopal Tiwari) [2078806] - compiler.h: Introduce absolute_pointer macro (Gopal Tiwari) [2078806] - vdpa: Fix vdpa-vhost driver (Laurent Vivier) [2093851] - nl80211: fix locking in nl80211_set_tx_bitrate_mask() (Íñigo Huguet) [2059994] - mac80211_hwsim: call ieee80211_tx_prepare_skb under RCU protection (Íñigo Huguet) [2059994] - mac80211_hwsim: fix RCU protected chanctx access (Íñigo Huguet) [2059994] - mac80211: Reset MBSSID parameters upon connection (Íñigo Huguet) [2059994] - cfg80211: retrieve S1G operating channel number (Íñigo Huguet) [2059994] - nl80211: validate S1G channel width (Íñigo Huguet) [2059994] - mac80211: fix rx reordering with non explicit / psmp ack policy (Íñigo Huguet) [2059994] - ath11k: reduce the wait time of 11d scan and hw scan while add interface (Íñigo Huguet) [2059994] - iwlwifi: iwl-dbg: Use del_timer_sync() before freeing (Íñigo Huguet) [2059994] - bus: mhi: host: pci_generic: Flush recovery worker during freeze (Íñigo Huguet) [2059994] - bus: mhi: host: pci_generic: Add missing poweroff() PM callback (Íñigo Huguet) [2059994] - mac80211: fix ht_capa printout in debugfs (Íñigo Huguet) [2059994] - cfg80211: hold bss_lock while updating nontrans_list (Íñigo Huguet) [2059994] - nl80211: correctly check NL80211_ATTR_REG_ALPHA2 size (Íñigo Huguet) [2059994] - ath9k: Fix usage of driver-private space in tx_info (Íñigo Huguet) [2059994] - brcmfmac: sdio: Fix undefined behavior due to shift overflowing the constant (Íñigo Huguet) [2059994] - mt76: Fix undefined behavior due to shift overflowing the constant (Íñigo Huguet) [2059994] - Revert "ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax" (Íñigo Huguet) [2059994] - ath9k: Properly clear TX status area before reporting to mac80211 (Íñigo Huguet) [2059994] - iwlwifi: mvm: Don't fail if PPAG isn't supported (Íñigo Huguet) [2059994] - bus: mhi: Make mhi_state_str[] array static inline and move to common.h (Íñigo Huguet) [2059994] - bus: mhi: Move common MHI definitions out of host directory (Íñigo Huguet) [2059994] - bus: mhi: host: Rename "struct mhi_tre" to "struct mhi_ring_element" (Íñigo Huguet) [2059994] - bus: mhi: Cleanup the register definitions used in headers (Íñigo Huguet) [2059994] - bus: mhi: Use bitfield operations for handling DWORDs of ring elements (Íñigo Huguet) [2059994] - bus: mhi: Use bitfield operations for register read and write (Íñigo Huguet) [2059994] - bus: mhi: Move host MHI code to "host" directory (Íñigo Huguet) [2059994] - bus: mhi: Fix MHI DMA structure endianness (Íñigo Huguet) [2059994] - bus: mhi: Fix pm_state conversion to string (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Quectel EM1xx series (Íñigo Huguet) [2059994] - rfkill: make new event layout opt-in (Íñigo Huguet) [2059994] - rtw89: implement stop and resume channels transmission v1 (Íñigo Huguet) [2059994] - rtw89: extend mac tx_en bits from 16 to 32 (Íñigo Huguet) [2059994] - rtw89: change value assignment style of rtw89_mac_cfg_gnt() (Íñigo Huguet) [2059994] - rtw89: 8852c: add mac_ctrl_path and mac_cfg_gnt APIs (Íñigo Huguet) [2059994] - rtw89: disable FW and H2C function if CPU disabled (Íñigo Huguet) [2059994] - rtw89: initialize preload window of D-MAC (Íñigo Huguet) [2059994] - rtw89: modify MAC enable functions (Íñigo Huguet) [2059994] - rtw89: add config_rf_reg_v1 to configure RF parameter tables (Íñigo Huguet) [2059994] - rtw89: 8852c: add read/write rf register function (Íñigo Huguet) [2059994] - rtw89: 8852c: add setting of TB UL TX power offset (Íñigo Huguet) [2059994] - rtw89: 8852c: add write/read crystal function in CFO tracking (Íñigo Huguet) [2059994] - rtw89: modify dcfo_comp to share with chips (Íñigo Huguet) [2059994] - rtw89: Fix spelling mistake "Mis-Match" -> "Mismatch" (Íñigo Huguet) [2059994] - brcmfmac: p2p: Fix spelling mistake "Comback" -> "Comeback" (Íñigo Huguet) [2059994] - iwlwifi: mei: fix building iwlmei (Íñigo Huguet) [2059994] - mt76: fix monitor rx FCS error in DFS channel (Íñigo Huguet) [2059994] - mt76: mt7921: don't enable beacon filter when IEEE80211_CONF_CHANGE_MONITOR is set (Íñigo Huguet) [2059994] - mt76: fix wrong HE data rate in sniffer tool (Íñigo Huguet) [2059994] - mt76: mt7915: introduce 802.11ax multi-bss support (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_init_hw in a dedicated work (Íñigo Huguet) [2059994] - mt76: mt7921: add mt7921u driver (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_status_data in mac common code. (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_complete_skb in common mac code. (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_prepare_skb in common mac code (Íñigo Huguet) [2059994] - mt76: mt7921: update mt7921_skb_add_usb_sdio_hdr to support usb (Íñigo Huguet) [2059994] - mt76: mt7921: disable runtime pm for usb (Íñigo Huguet) [2059994] - mt76: usb: introduce __mt76u_init utility routine (Íñigo Huguet) [2059994] - mt76: usb: add req_type to ___mt76u_wr signature (Íñigo Huguet) [2059994] - mt76: usb: add req_type to ___mt76u_rr signature (Íñigo Huguet) [2059994] - mt76: mt7915: fix typos in comments (Íñigo Huguet) [2059994] - mt76: mt7915: fix phy cap in mt7915_set_stream_he_txbf_caps() (Íñigo Huguet) [2059994] - mt76: mt7915: fix beamforming mib stats (Íñigo Huguet) [2059994] - mt76: mt7915: set band1 TGID field in tx descriptor (Íñigo Huguet) [2059994] - mt76: fix invalid rssi report (Íñigo Huguet) [2059994] - mt76: use le32/16_get_bits() whenever possible (Íñigo Huguet) [2059994] - mt76: connac: make read-only array ba_range static const (Íñigo Huguet) [2059994] - mt76: mt7915: check for devm_pinctrl_get() failure (Íñigo Huguet) [2059994] - mt76: mt7921: get rid of mt7921_wait_for_mcu_init declaration (Íñigo Huguet) [2059994] - mt76: mt7915: add txpower init for 6GHz (Íñigo Huguet) [2059994] - mt76: mt7915: fix eeprom fields of txpower init values (Íñigo Huguet) [2059994] - mt76: mt7915: add 6 GHz support (Íñigo Huguet) [2059994] - mt76: connac: add 6 GHz support for wtbl and starec configuration (Íñigo Huguet) [2059994] - mt76: mt7915: allow beaconing on all chains (Íñigo Huguet) [2059994] - mt76: fix monitor mode crash with sdio driver (Íñigo Huguet) [2059994] - mt76: mt7921: fix mt7921_queues_acq implementation (Íñigo Huguet) [2059994] - mt76: mt7921: fix xmit-queue dump for usb and sdio (Íñigo Huguet) [2059994] - mt76: mt7921: make mt7921_init_tx_queues static (Íñigo Huguet) [2059994] - mt76: split single ldpc cap bit into bits (Íñigo Huguet) [2059994] - mt76: mt7915: fix DFS no radar detection event (Íñigo Huguet) [2059994] - mt76: mt7921: use mt76_hw instead of open coding it (Íñigo Huguet) [2059994] - mt76: mt7921: fix up the monitor mode (Íñigo Huguet) [2059994] - mt76: mt7663u: introduce mt7663u_mcu_power_on routine (Íñigo Huguet) [2059994] - mt76: mt7615: honor ret from mt7615_mcu_restart in mt7663u_mcu_init (Íñigo Huguet) [2059994] - rtw89: fix uninitialized variable of rtw89_append_probe_req_ie() (Íñigo Huguet) [2059994] - rtlwifi: rtl8821ae: fix typos in comments (Íñigo Huguet) [2059994] - rtlwifi: rtl8192cu: Add On Networks N150 (Íñigo Huguet) [2059994] - mwifiex: make read-only array wmm_oui static const (Íñigo Huguet) [2059994] - mac80211: update bssid_indicator in ieee80211_assign_beacon (Íñigo Huguet) [2059994] - mac80211: MBSSID channel switch (Íñigo Huguet) [2059994] - mac80211: MBSSID beacon handling in AP mode (Íñigo Huguet) [2059994] - mac80211: always have ieee80211_sta_restart() (Íñigo Huguet) [2059994] - mac80211: Add support to trigger sta disconnect on hardware restart (Íñigo Huguet) [2059994] - mac80211: fix potential double free on mesh join (Íñigo Huguet) [2059994] - mac80211: correct legacy rates check in ieee80211_calc_rx_airtime (Íñigo Huguet) [2059994] - nl80211: fix typo of NL80211_IF_TYPE_OCB in documentation (Íñigo Huguet) [2059994] - mac80211: Use GFP_KERNEL instead of GFP_ATOMIC when possible (Íñigo Huguet) [2059994] - mac80211: replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE (Íñigo Huguet) [2059994] - rtw89: 8852c: process logic efuse map (Íñigo Huguet) [2059994] - rtw89: 8852c: process efuse of phycap (Íñigo Huguet) [2059994] - rtw89: support DAV efuse reading operation (Íñigo Huguet) [2059994] - rtw89: 8852c: add chip::dle_mem (Íñigo Huguet) [2059994] - rtw89: add page_regs to handle v1 chips (Íñigo Huguet) [2059994] - rtw89: add chip_info::{h2c,c2h}_reg to support more chips (Íñigo Huguet) [2059994] - rtw89: add hci_func_en_addr to support variant generation (Íñigo Huguet) [2059994] - rtw89: add power_{on/off}_func (Íñigo Huguet) [2059994] - rtw89: read chip version depends on chip ID (Íñigo Huguet) [2059994] - rtw89: pci: use a struct to describe all registers address related to DMA channel (Íñigo Huguet) [2059994] - rtw89: pci: add V1 of PCI channel address (Íñigo Huguet) [2059994] - rtw89: pci: add struct rtw89_pci_info (Íñigo Huguet) [2059994] - rtw89: 8852c: add 8852c empty files (Íñigo Huguet) [2059994] - brcmfmac: make the read-only array pktflags static const (Íñigo Huguet) [2059994] - rtlwifi: rtl8192ce: remove duplicated function '_rtl92ce_phy_set_rf_sleep' (Íñigo Huguet) [2059994] - ath10k: Fix error handling in ath10k_setup_msa_resources (Íñigo Huguet) [2059994] - ath11k: remove unneeded flush_workqueue (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 72 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: acpi: move ppag code from mvm to fw/acpi (Íñigo Huguet) [2059994] - iwlwifi: dbg: check trigger data before access (Íñigo Huguet) [2059994] - iwlwifi: dbg: in sync mode don't call schedule (Íñigo Huguet) [2059994] - iwlwifi: use 4k queue size for Bz A-step (Íñigo Huguet) [2059994] - iwlwifi: pcie: fix SW error MSI-X mapping (Íñigo Huguet) [2059994] - iwlwifi: yoyo: dump IMR DRAM only for HW and FW error (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for IMR based on platform (Íñigo Huguet) [2059994] - iwlwifi: yoyo: disable IMR DRAM region if IMR is disabled (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove cipher scheme support (Íñigo Huguet) [2059994] - iwlwifi: Configure FW debug preset via module param. (Íñigo Huguet) [2059994] - iwlwifi: mvm: add a flag to reduce power command. (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 71 for AX devices (Íñigo Huguet) [2059994] - ath9k: make array voice_priority static const (Íñigo Huguet) [2059994] - rtw89: declare HE capabilities in 6G band (Íñigo Huguet) [2059994] - rtw89: fix HE PHY bandwidth capability (Íñigo Huguet) [2059994] - rtw89: add tx_wake notify for low ps mode (Íñigo Huguet) [2059994] - rtw89: 8852a: add ieee80211_ops::hw_scan (Íñigo Huguet) [2059994] - Revert "ath: add support for special 0x0 regulatory domain" (Íñigo Huguet) [2059994] - rtw89: get channel parameters of 160MHz bandwidth (Íñigo Huguet) [2059994] - mt76: fix dfs state issue with 160 MHz channels (Íñigo Huguet) [2059994] - mt76: mt7915: simplify conditional (Íñigo Huguet) [2059994] - mt76: mt7921: fix injected MPDU transmission to not use HW A-MSDU (Íñigo Huguet) [2059994] - mt76: mt7915e: Enable thermal management by default (Íñigo Huguet) [2059994] - mt76: mt7915e: Add a hwmon attribute to get the actual throttle state. (Íñigo Huguet) [2059994] - mt76: mt7915e: Fix degraded performance after temporary overheat (Íñigo Huguet) [2059994] - mt76: improve signal strength reporting (Íñigo Huguet) [2059994] - mt76: mt7915: use min_t() to make code cleaner (Íñigo Huguet) [2059994] - mt76: mt7915: fix the muru tlv issue (Íñigo Huguet) [2059994] - mt76: mt7915: check band idx for bcc event (Íñigo Huguet) [2059994] - mt76: mt7615: Fix assigning negative values to unsigned variable (Íñigo Huguet) [2059994] - mt76: connac: adjust wlan_idx size from u8 to u16 (Íñigo Huguet) [2059994] - mt76: mt7915: fix endianness warnings in mt7915_mac_tx_free() (Íñigo Huguet) [2059994] - mt76: mt7915: fix endianness warnings in mt7915_debugfs_rx_fw_monitor (Íñigo Huguet) [2059994] - mt76: mt7615: fix compiler warning on frame size (Íñigo Huguet) [2059994] - mt76: mt7915: initialize smps mode in mt7915_mcu_sta_rate_ctrl_tlv() (Íñigo Huguet) [2059994] - mt76: mt7915: introduce band_idx in mt7915_phy (Íñigo Huguet) [2059994] - mt76: mt7915: add support for MT7986 (Íñigo Huguet) [2059994] - ath10k: fix pointer arithmetic error in trace call (Íñigo Huguet) [2059994] - ath11k: add dbring debug support (Íñigo Huguet) [2059994] - ath11k: translate HE status to radiotap format (Íñigo Huguet) [2059994] - ath11k: decode HE status tlv (Íñigo Huguet) [2059994] - ath11k: switch to using ieee80211_tx_status_ext() (Íñigo Huguet) [2059994] - mt76: mt7921s: fix missing fc type/sub-type for 802.11 pkts (Íñigo Huguet) [2059994] - mt76: mt7915: fix potential memory leak of fw monitor packets (Íñigo Huguet) [2059994] - mt76: mt7915: Fix channel state update error issue (Íñigo Huguet) [2059994] - mt76: fix endianness errors in reverse_frag0_hdr_trans (Íñigo Huguet) [2059994] - mt76: mt7615: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7915: fix injected MPDU transmission to not use HW A-MSDU (Íñigo Huguet) [2059994] - rtw88: change rtw_info() to proper message level (Íñigo Huguet) [2059994] - rtw89: Limit the CFO boundaries of x'tal value (Íñigo Huguet) [2059994] - rtw89: phy: handle txpwr lmt/lmt_ru of 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: phy: handle txpwr lmt/lmt_ru of 6G band (Íñigo Huguet) [2059994] - ath11k: Fix frames flush failure caused by deadlock (Íñigo Huguet) [2059994] - ath11k: Handle failure in qmi firmware ready (Íñigo Huguet) [2059994] - ath11k: Invalidate cached reo ring entry before accessing it (Íñigo Huguet) [2059994] - ath: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - ath11k: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - ath10k: Replace zero-length array with flexible-array member (Íñigo Huguet) [2059994] - ath9k: use hw_random API instead of directly dumping into random.c (Íñigo Huguet) [2059994] - ath11k: configure RDDM size to mhi for recovery by firmware (Íñigo Huguet) [2059994] - ath11k: fix invalid m3 buffer address (Íñigo Huguet) [2059994] - ath11k: add ath11k_qmi_free_resource() for recovery (Íñigo Huguet) [2059994] - rtw89: core.h: Replace zero-length array with flexible-array member (Íñigo Huguet) [2059994] - brcmfmac: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - rtw89: fix RCU usage in rtw89_core_txq_push() (Íñigo Huguet) [2059994] - rtw88: coex: Update rtl8822c COEX version to 22020720 (Íñigo Huguet) [2059994] - rtw88: coex: Add C2H/H2C handshake with BT mailbox for asking HID Info (Íñigo Huguet) [2059994] - rtw88: coex: Add WLAN MIMO power saving for Bluetooth gaming controller (Íñigo Huguet) [2059994] - rtw88: coex: update BT PTA counter regularly (Íñigo Huguet) [2059994] - rtw88: coex: Improve WLAN throughput when HFP COEX (Íñigo Huguet) [2059994] - rtw88: 8822ce: add support for TX/RX 1ss mode (Íñigo Huguet) [2059994] - iwlwifi: dbg_ini: Split memcpy() to avoid multi-field write (Íñigo Huguet) [2059994] - iwlwifi: mvm: Fix an error code in iwl_mvm_up() (Íñigo Huguet) [2059994] - iwlwifi: Fix -EIO error code that is never returned (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: use kmemdup() to replace kzalloc + memcpy (Íñigo Huguet) [2059994] - iwlwifi: Fix syntax errors in comments (Íñigo Huguet) [2059994] - iwlwifi: dvm: use struct_size over open coded arithmetic (Íñigo Huguet) [2059994] - iwlwifi/fw: use struct_size over open coded arithmetic (Íñigo Huguet) [2059994] - iwlwifi: Make use of the helper macro LIST_HEAD() (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix off by one in iwl_mvm_stat_iterator_all_macs() (Íñigo Huguet) [2059994] - iwlwifi: yoyo: send hcmd to fw after dump collection completes. (Íñigo Huguet) [2059994] - iwlwifi: mvm: move only to an enabled channel (Íñigo Huguet) [2059994] - iwlwifi: mvm: update BAID allocation command again (Íñigo Huguet) [2059994] - iwlwifi: api: remove ttl field from TX command (Íñigo Huguet) [2059994] - iwlwifi: support new queue allocation command (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support dump policy for the dump size (Íñigo Huguet) [2059994] - iwlwifi: pcie: iwlwifi: fix device id 7F70 struct (Íñigo Huguet) [2059994] - iwlwifi: tlc: Add logs in rs_fw_rate_init func to print TLC configuration (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove iwl_mvm_disable_txq() flags argument (Íñigo Huguet) [2059994] - iwlwifi: remove command ID argument from queue allocation (Íñigo Huguet) [2059994] - iwlwifi: make iwl_txq_dyn_alloc_dma() return the txq (Íñigo Huguet) [2059994] - iwlwifi: fix small doc mistake for iwl_fw_ini_addr_val (Íñigo Huguet) [2059994] - iwlwifi: mvm: add additional info for boot info failures (Íñigo Huguet) [2059994] - iwlwifi: mvm: always remove the session protection after association (Íñigo Huguet) [2059994] - iwlwifi: mvm: make iwl_mvm_reconfig_scd() static (Íñigo Huguet) [2059994] - iwlwifi: mvm: refactor setting PPE thresholds in STA_HE_CTXT_CMD (Íñigo Huguet) [2059994] - iwlwifi: mvm: Disable WiFi bands selectively with BIOS (Íñigo Huguet) [2059994] - iwlwifi: mvm: add additional info for boot info failures (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't send BAID removal to the FW during hw_restart (Íñigo Huguet) [2059994] - iwlwifi: don't dump_stack() when we get an unexpected interrupt (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: handle deactivation notification (Íñigo Huguet) [2059994] - iwlwifi: mvm: Consider P2P GO operation during scan (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 70 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: Unify the scan iteration functions (Íñigo Huguet) [2059994] - iwlwifi: mei: use C99 initializer for device IDs (Íñigo Huguet) [2059994] - iwlwifi: debugfs: remove useless double condition (Íñigo Huguet) [2059994] - iwlwifi: remove unused macros (Íñigo Huguet) [2059994] - iwlwifi: eeprom: clean up macros (Íñigo Huguet) [2059994] - iwlwifi: drv: load tlv debug data earlier (Íñigo Huguet) [2059994] - iwlwifi: pcie: Adapt rx queue write pointer for Bz family (Íñigo Huguet) [2059994] - iwlwifi: pcie: adjust to Bz completion descriptor (Íñigo Huguet) [2059994] - iwlwifi: mvm: Passively scan non PSC channels only when requested so (Íñigo Huguet) [2059994] - iwlwifi: scan: Modify return value of a function (Íñigo Huguet) [2059994] - iwlwifi: yoyo: Avoid using dram data if allocation failed (Íñigo Huguet) [2059994] - iwlwifi: mvm: Correctly set fragmented EBS (Íñigo Huguet) [2059994] - iwlwifi: nvm: Correct HE capability (Íñigo Huguet) [2059994] - iwlwifi: mei: avoid -Wpointer-arith and -Wcast-qual warnings (Íñigo Huguet) [2059994] - iwlwifi: make some functions friendly to sparse (Íñigo Huguet) [2059994] - iwlwifi: avoid variable shadowing (Íñigo Huguet) [2059994] - iwlwifi: remove unused DC2DC_CONFIG_CMD definitions (Íñigo Huguet) [2059994] - iwlwifi: dbg-tlv: clean up iwl_dbg_tlv_update_drams() (Íñigo Huguet) [2059994] - iwlwifi: fw: make dump_start callback void (Íñigo Huguet) [2059994] - iwlwifi: pcie: make sure iwl_rx_packet_payload_len() will not underflow (Íñigo Huguet) [2059994] - iwlwifi: mvm: use debug print instead of WARN_ON() (Íñigo Huguet) [2059994] - iwlwifi: read and print OTP minor version (Íñigo Huguet) [2059994] - iwlwifi: add support for BZ-U and BZ-L HW (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for CT-KILL notification version 2 (Íñigo Huguet) [2059994] - iwlwifi: yoyo: remove DBGI_SRAM address reset writing (Íñigo Huguet) [2059994] - iwlwifi: mvm: support v3 of station HE context command (Íñigo Huguet) [2059994] - iwlwifi: yoyo: add IMR DRAM dump support (Íñigo Huguet) [2059994] - iwlwifi: yoyo: fix DBGC allocation flow (Íñigo Huguet) [2059994] - iwlwifi: pcie: add support for MS devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: align locking in D3 test debugfs (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't iterate unadded vifs when handling FW SMPS req (Íñigo Huguet) [2059994] - iwlwifi: advertise support for HE - DCM BPSK RX/TX (Íñigo Huguet) [2059994] - iwlwifi: mvm: only enable HE DCM if we also support TX (Íñigo Huguet) [2059994] - iwlwifi: yoyo: fix DBGI_SRAM ini dump header. (Íñigo Huguet) [2059994] - iwlwifi: dbg: add infra for tracking free buffer size (Íñigo Huguet) [2059994] - iwlwifi: mvm: starting from 22000 we have 32 Rx AMPDU sessions (Íñigo Huguet) [2059994] - iwlwifi: mvm: support new BAID allocation command (Íñigo Huguet) [2059994] - iwlwifi: mvm: refactor iwl_mvm_sta_rx_agg() (Íñigo Huguet) [2059994] - iwlwifi: cfg: add support for 1K BA queue (Íñigo Huguet) [2059994] - iwlwifi: avoid void pointer arithmetic (Íñigo Huguet) [2059994] - iwlwifi: fix various more -Wcast-qual warnings (Íñigo Huguet) [2059994] - iwlwifi: propagate (const) type qualifier (Íñigo Huguet) [2059994] - iwlwifi: de-const properly where needed (Íñigo Huguet) [2059994] - iwlwifi: make iwl_fw_lookup_cmd_ver() take a cmd_id (Íñigo Huguet) [2059994] - iwlwifi: mvm: fw: clean up hcmd struct creation (Íñigo Huguet) [2059994] - iwlwifi: prefer WIDE_ID() over iwl_cmd_id() (Íñigo Huguet) [2059994] - iwlwifi: mvm: allow enabling UHB TAS in the USA via ACPI setting (Íñigo Huguet) [2059994] - iwlwifi: mvm: offload channel switch timing to FW (Íñigo Huguet) [2059994] - iwlwifi: mvm: Don't call iwl_mvm_sta_from_mac80211() with NULL sta (Íñigo Huguet) [2059994] - mac80211_hwsim: Advertise support for EHT capabilities (Íñigo Huguet) [2059994] - mac80211: parse AddBA request with extended AddBA element (Íñigo Huguet) [2059994] - mac80211: calculate max RX NSS for EHT mode (Íñigo Huguet) [2059994] - mac80211: Add support for storing station EHT capabilities (Íñigo Huguet) [2059994] - mac80211: Handle station association response with EHT (Íñigo Huguet) [2059994] - mac80211: Add EHT capabilities to association/probe request (Íñigo Huguet) [2059994] - mac80211: Add initial support for EHT and 320 MHz channels (Íñigo Huguet) [2059994] - mac80211: Support parsing EHT elements (Íñigo Huguet) [2059994] - cfg80211: Support configuration of station EHT capabilities (Íñigo Huguet) [2059994] - nl80211: fix NL80211_HE_MAX_CAPABILITY_LEN (Íñigo Huguet) [2059994] - cfg80211: add NO-EHT flag to regulatory (Íñigo Huguet) [2059994] - nl80211: add support for 320MHz channel limitation (Íñigo Huguet) [2059994] - nl80211: add EHT MCS support (Íñigo Huguet) [2059994] - cfg80211: Add support for EHT 320 MHz channel width (Íñigo Huguet) [2059994] - cfg80211: Add data structures to capture EHT capabilities (Íñigo Huguet) [2059994] - ieee80211: add EHT 1K aggregation definitions (Íñigo Huguet) [2059994] - ieee80211: Add EHT (802.11be) definitions (Íñigo Huguet) [2059994] - mac80211_hwsim: Add custom regulatory for 6GHz (Íñigo Huguet) [2059994] - mac80211_hwsim: don't shadow a global variable (Íñigo Huguet) [2059994] - mac80211_hwsim: check TX and STA bandwidth (Íñigo Huguet) [2059994] - nl80211: accept only HE capability elements with valid size (Íñigo Huguet) [2059994] - mac80211: parse only HE capability elements with valid size (Íñigo Huguet) [2059994] - ieee80211: add helper to check HE capability element size (Íñigo Huguet) [2059994] - nl80211: use RCU to read regdom in reg get/dump (Íñigo Huguet) [2059994] - mac80211_hwsim: Add debugfs to control rx status RSSI (Íñigo Huguet) [2059994] - ieee80211: use tab to indent struct ieee80211_neighbor_ap_info (Íñigo Huguet) [2059994] - rtw89: handle TX/RX 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: declare if chip support 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: add 6G support to rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw89: extend subband for 6G band (Íñigo Huguet) [2059994] - rtw89: refine naming of rfk helpers with prefix (Íñigo Huguet) [2059994] - rtw89: make rfk helpers common across chips (Íñigo Huguet) [2059994] - brcmfmac: Add BCM43454/6 support (Íñigo Huguet) [2059994] - ath11k: fix destination monitor ring out of sync (Íñigo Huguet) [2059994] - ath11k: fix radar detection in 160 Mhz (Íñigo Huguet) [2059994] - ath11k: fix WARN_ON during ath11k_mac_update_vif_chan (Íñigo Huguet) [2059994] - ath11k: fix uninitialized rate_idx in ath11k_dp_tx_update_txcompl() (Íñigo Huguet) [2059994] - brcmfmac: of: remove redundant variable len (Íñigo Huguet) [2059994] - brcmfmac: p2p: Replace one-element arrays with flexible-array members (Íñigo Huguet) [2059994] - rtw89: coex: set EN bit to PLT register (Íñigo Huguet) [2059994] - rtw89: recover rates of rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw88: recover rates of rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw89: declare AP mode support (Íñigo Huguet) [2059994] - rtw89: debug: add stations entry to show ID assignment (Íñigo Huguet) [2059994] - rtw89: implement ieee80211_ops::start_ap and stop_ap (Íñigo Huguet) [2059994] - rtw89: maintain assoc/disassoc STA states of firmware and hardware (Íñigo Huguet) [2059994] - rtw89: only STA mode change vif_type mapping dynamically (Íñigo Huguet) [2059994] - rtw89: add addr_cam field to sta to support AP mode (Íñigo Huguet) [2059994] - rtw89: extend role_maintain to support AP mode (Íñigo Huguet) [2059994] - rtw88: fix use after free in rtw_hw_scan_update_probe_req() (Íñigo Huguet) [2059994] - mac80211: Remove redundent assignment channel_type (Íñigo Huguet) [2059994] - mac80211: remove useless ieee80211_vif_is_mesh() check (Íñigo Huguet) [2059994] - mac80211: fix struct ieee80211_tx_info size (Íñigo Huguet) [2059994] - mac80211: mlme: validate peer HE supported rates (Íñigo Huguet) [2059994] - mac80211: remove unused macros (Íñigo Huguet) [2059994] - cfg80211: pmsr: remove useless ifdef guards (Íñigo Huguet) [2059994] - mac80211: airtime: avoid variable shadowing (Íñigo Huguet) [2059994] - mac80211: mlme: add documentation from spec to code (Íñigo Huguet) [2059994] - mac80211: vht: use HE macros for parsing HE capabilities (Íñigo Huguet) [2059994] - ieee80211: radiotap: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - cfg80211: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - ieee80211: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - cfg80211: don't add non transmitted BSS to 6GHz scanned channels (Íñigo Huguet) [2059994] - ieee80211: fix HE SPR size calculation (Íñigo Huguet) [2059994] - cfg80211/mac80211: assume CHECKSUM_COMPLETE includes SNAP (Íñigo Huguet) [2059994] - mac80211: consider RX NSS in UHB connection (Íñigo Huguet) [2059994] - mac80211: limit bandwidth in HE capabilities (Íñigo Huguet) [2059994] - mt76: redefine mt76_for_each_q_rx to adapt mt7986 changes (Íñigo Huguet) [2059994] - mt76: dma: initialize skip_unmap in mt76_dma_rx_fill (Íñigo Huguet) [2059994] - mt76: do not always copy ethhdr in reverse_frag0_hdr_trans (Íñigo Huguet) [2059994] - mt76: mt76x02: use mt76_phy_dfs_state to determine radar detector state (Íñigo Huguet) [2059994] - mt76: mt7615: fix/rewrite the dfs state handling logic (Íñigo Huguet) [2059994] - mt76: mt7915: fix/rewrite the dfs state handling logic (Íñigo Huguet) [2059994] - mt76: mt76x02: improve tx hang detection (Íñigo Huguet) [2059994] - mt76x02: improve mac error check/reset reliability (Íñigo Huguet) [2059994] - mt76: mt7921s: run sleep mode by default (Íñigo Huguet) [2059994] - mt76: sdio: honor the largest Tx buffer the hardware can support (Íñigo Huguet) [2059994] - mt76: mt7915: fix the nss setting in bitrates (Íñigo Huguet) [2059994] - mt76: mt7915: update max_mpdu_size in mt7915_mcu_sta_amsdu_tlv() (Íñigo Huguet) [2059994] - mt76: mt7915: fix mcs_map in mt7915_mcu_set_sta_he_mcs() (Íñigo Huguet) [2059994] - mt76: mt7921s: fix a possible memory leak in mt7921_load_patch (Íñigo Huguet) [2059994] - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_sta (Íñigo Huguet) [2059994] - mt76: stop the radar detector after leaving dfs channel (Íñigo Huguet) [2059994] - mt76: mt7615: check sta_rates pointer in mt7615_sta_rate_tbl_update (Íñigo Huguet) [2059994] - mt76: mt7603: check sta_rates pointer in mt7603_sta_rate_tbl_update (Íñigo Huguet) [2059994] - mt76: mt7663s: flush runtime-pm queue after waking up the device (Íñigo Huguet) [2059994] - mt76: mt7615: add support for LG LGSBWAC02 (MT7663BUN) (Íñigo Huguet) [2059994] - mt76: mt7921: remove duplicated code in mt7921_mac_decode_he_radiotap (Íñigo Huguet) [2059994] - mt76: mt7915: add missing DATA4_TB_SPTL_REUSE1 to mt7915_mac_decode_he_radiotap (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_lmac_mapping in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: enable radar background detection (Íñigo Huguet) [2059994] - mt76: mt7915: report radar pattern if detected by rdd2 (Íñigo Huguet) [2059994] - mt76: mt7915: introduce rdd_monitor debugfs node (Íñigo Huguet) [2059994] - mt76: mt7915: enable radar trigger on rdd2 (Íñigo Huguet) [2059994] - mt76: mt7915: introduce mt7915_set_radar_background routine (Íñigo Huguet) [2059994] - mt76: mt7915: set bssinfo/starec command when adding interface (Íñigo Huguet) [2059994] - mt76: mt7921: toggle runtime-pm adding a monitor vif (Íñigo Huguet) [2059994] - mt76: mt7921: fix endianness issues in mt7921_mcu_set_tx() (Íñigo Huguet) [2059994] - mt76: sdio: disable interrupt in mt76s_sdio_irq (Íñigo Huguet) [2059994] - mt76: mt7921: fix crash when startup fails. (Íñigo Huguet) [2059994] - mt76: mt7921s: fix mt7921s_mcu_[fw|drv]_pmctrl (Íñigo Huguet) [2059994] - mt76: mt7921: fix ht mcs in mt7921_mac_add_txs_skb() (Íñigo Huguet) [2059994] - mt76: mt7915: fix ht mcs in mt7915_mac_add_txs_skb() (Íñigo Huguet) [2059994] - mt76: mt7615: fix a leftover race in runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: fix a leftover race in runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: do not always disable fw runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7915: add support for passing chip/firmware debug data to user space (Íñigo Huguet) [2059994] - mt76: mt7615e: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: mt7915: update bss_info with cipher after setting the group key (Íñigo Huguet) [2059994] - mt76: mt7615: update bss_info with cipher after setting the group key (Íñigo Huguet) [2059994] - mt76: connac: add support for passing the cipher field in bss_info (Íñigo Huguet) [2059994] - mt76: mt7921e: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: mt7615: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: set EDCA parameters with the MCU CE command (Íñigo Huguet) [2059994] - mt76: mt76_connac: fix MCU_CE_CMD_SET_ROC definition error (Íñigo Huguet) [2059994] - mt76: mt7921: forbid the doze mode when coredump is in progress (Íñigo Huguet) [2059994] - mt76: mt7921e: make dev->fw_assert usage consistent (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_rdd_cmd in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_set_rts_thresh (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_gen_dl_mode in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_init_download (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_patch_sem_ctrl/mt76_connac_mcu_start_patch (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_restart in common module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_start_firmware (Íñigo Huguet) [2059994] - mt76: mt7921: get rid of mt7921_mcu_get_eeprom (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_set_pm in connac module (Íñigo Huguet) [2059994] - mt76: connac: introduce is_connac_v1 utility routine (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_wtbl_update_hdr_trans in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_hdr_trans_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_ht_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_smps_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_uapsd (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_basic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_generic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_ba (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_ba_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_ba_tlv (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_basic_tlv in connac module (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_ext_tlv in connac module (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_omac_tlv in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: remove duplicated defs in mcu.h (Íñigo Huguet) [2059994] - mt76: mt7915: move pci specific code back to pci.c (Íñigo Huguet) [2059994] - mt76: mt7921s: update mt7921s_wfsys_reset sequence (Íñigo Huguet) [2059994] - mt76: mt7921s: clear MT76_STATE_MCU_RUNNING immediately after reset (Íñigo Huguet) [2059994] - mt76: sdio: lock sdio when it is needed (Íñigo Huguet) [2059994] - mt76: mt7915: use proper aid value in mt7915_mcu_sta_basic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: use proper aid value in mt7915_mcu_wtbl_generic_tlv in sta mode (Íñigo Huguet) [2059994] - mt76: make mt76_sar_capa static (Íñigo Huguet) [2059994] - mt76: mt7915: add device id for mt7916 (Íñigo Huguet) [2059994] - mt76: set wlan_idx_hi on mt7916 (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_add_key in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_get_phy utilities (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_chan_bw in common code (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_get_cipher in common code (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_add_tlv routine (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_alloc_wtbl_req (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_alloc_sta_req (Íñigo Huguet) [2059994] - mt76: connac: fix sta_rec_wtbl tag len (Íñigo Huguet) [2059994] - mt76: mt7915: add mt7916 calibrated data support (Íñigo Huguet) [2059994] - mt76: mt7915: update mt7915_chan_mib_offs for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: update rx rate reporting for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: add txfree event v3 (Íñigo Huguet) [2059994] - mt76: mt7915: enlarge wcid size to 544 (Íñigo Huguet) [2059994] - mt76: mt7915: rework eeprom.c to adapt mt7916 changes (Íñigo Huguet) [2059994] - mt76: mt7915: add firmware support for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: rework dma.c to adapt mt7916 changes (Íñigo Huguet) [2059994] - mt76: add MT_RXQ_MAIN_WA for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: refine register definition (Íñigo Huguet) [2059994] - mt76: mt7915: add mt7915_mmio_probe() as a common probing function (Íñigo Huguet) [2059994] - mt76: mt7915: fix polling firmware-own status (Íñigo Huguet) [2059994] - brcmfmac: pcie: Read the console on init and shutdown (Íñigo Huguet) [2059994] - brcmfmac: fwil: Constify iovar name arguments (Íñigo Huguet) [2059994] - brcmfmac: of: Use devm_kstrdup for board_type & check for errors (Íñigo Huguet) [2059994] - brcmfmac: pcie: Fix crashes due to early IRQs (Íñigo Huguet) [2059994] - brcmfmac: pcie: Replace brcmf_pcie_copy_mem_todev with memcpy_toio (Íñigo Huguet) [2059994] - brcmfmac: pcie: Declare missing firmware files in pcie.c (Íñigo Huguet) [2059994] - brcmfmac: firmware: Allocate space for default boardrev in nvram (Íñigo Huguet) [2059994] - brcmfmac: pcie: Release firmwares in the brcmf_pcie_setup error path (Íñigo Huguet) [2059994] - rtlwifi: remove redundant initialization of variable ul_encalgo (Íñigo Huguet) [2059994] - ray_cs: Check ioremap return value (Íñigo Huguet) [2059994] - ath11k: add debugfs for TWT debug calls (Íñigo Huguet) [2059994] - ath11k: add WMI calls to manually add/del/pause/resume TWT dialogs (Íñigo Huguet) [2059994] - ath11k: Add debugfs interface to configure firmware debug log level (Íñigo Huguet) [2059994] - rtw88: rtw8821c: enable rfe 6 devices (Íñigo Huguet) [2059994] - rtw88: fix memory overrun and memory leak during hw_scan (Íñigo Huguet) [2059994] - rtw88: fix idle mode flow for hw scan (Íñigo Huguet) [2059994] - rtw88: check for validity before using a pointer (Íñigo Huguet) [2059994] - ath11k: mhi: use mhi_sync_power_up() (Íñigo Huguet) [2059994] - ath11k: pci: fix crash on suspend if board file is not found (Íñigo Huguet) [2059994] - ath11k: Fix missing rx_desc_get_ldpc_support in wcn6855_ops (Íñigo Huguet) [2059994] - ath11k: Fix uninitialized symbol 'rx_buf_sz' (Íñigo Huguet) [2059994] - ath11k: fix kernel panic during unload/load ath11k modules (Íñigo Huguet) [2059994] - ath11k: Rename ath11k_ahb_ext_irq_config (Íñigo Huguet) [2059994] - brcmfmac: add CYW43570 PCIE device (Íñigo Huguet) [2059994] - brcmfmac: use ISO3166 country code and 0 rev as fallback on some devices (Íñigo Huguet) [2059994] - rtw89: use pci_read/write_config instead of dbi read/write (Íñigo Huguet) [2059994] - rtw89: refine DIG feature to support 160M and CCK PD (Íñigo Huguet) [2059994] - rtw89: include subband type in channel params (Íñigo Huguet) [2059994] - rtw89: handle 6G band if supported by a chipset (Íñigo Huguet) [2059994] - rtw89: separate {init,deinit}_addr_cam functions (Íñigo Huguet) [2059994] - rtw89: set mac_id and port ID to TXWD (Íñigo Huguet) [2059994] - rtw89: send broadcast/multicast packets via HIQ if STAs are in sleep mode (Íñigo Huguet) [2059994] - rtw89: configure mac port HIQ registers (Íñigo Huguet) [2059994] - rtw89: rename vif_maintain to role_maintain (Íñigo Huguet) [2059994] - rtw89: extend firmware commands on states of sta_assoc and sta_disconnect (Íñigo Huguet) [2059994] - rtw89: allocate mac_id for each station in AP mode (Íñigo Huguet) [2059994] - rtw89: implement mac80211_ops::set_tim to indicate STA to receive packets (Íñigo Huguet) [2059994] - rtw89: add C2H handle of BCN_CNT (Íñigo Huguet) [2059994] - rtw89: download beacon content to firmware (Íñigo Huguet) [2059994] - rtw89: use hardware SSN to TX management frame (Íñigo Huguet) [2059994] - rtw89: configure rx_filter according to FIF_PROBE_REQ (Íñigo Huguet) [2059994] - rtw89: correct use of BA CAM (Íñigo Huguet) [2059994] - rtw89: encapsulate RX handlers to single function (Íñigo Huguet) [2059994] - rtw89: Add RX counters of VHT MCS-10/11 to debugfs (Íñigo Huguet) [2059994] - rtw89: remove duplicate definition of hardware port number (Íñigo Huguet) [2059994] - rtw89: extract modules by chipset (Íñigo Huguet) [2059994] - ath11k: avoid firmware crash when reg set for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - ath11k: set WMI_PEER_40MHZ while peer assoc for 6 GHz (Íñigo Huguet) [2059994] - ath9k_htc: fix uninit value bugs (Íñigo Huguet) [2059994] - ath10k: abstract htt_rx_desc structure (Íñigo Huguet) [2059994] - ath9k: remove redundant status variable (Íñigo Huguet) [2059994] - ath11k: Reconfigure hardware rate for WCN6855 after vdev is started (Íñigo Huguet) [2059994] - ath: dfs_pattern_detector: Avoid open coded arithmetic in memory allocation (Íñigo Huguet) [2059994] - ath10k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2059994] - ath11k: fix error code in ath11k_qmi_assign_target_mem_chunk() (Íñigo Huguet) [2059994] - ath11k: move function ath11k_dp_rx_process_mon_status (Íñigo Huguet) [2059994] - ath11k: enable RX PPDU stats in monitor co-exist mode (Íñigo Huguet) [2059994] - ath11k: free peer for station when disconnect from AP for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - ath11k: add LDPC FEC type in 802.11 radiotap header (Íñigo Huguet) [2059994] - ath11k: Refactor the fallback routine when peer create fails (Íñigo Huguet) [2059994] - ath11k: fix workqueue not getting destroyed after rmmod (Íñigo Huguet) [2059994] - ath10k: fix memory overwrite of the WoWLAN wakeup packet pattern (Íñigo Huguet) [2059994] - ath11k: add missing of_node_put() to avoid leak (Íñigo Huguet) [2059994] - rfkill: define rfill_soft_blocked() if !RFKILL (Íñigo Huguet) [2059994] - Revert "ath10k: drop beacon and probe response which leak from other channel" (Íñigo Huguet) [2059994] - iwlwifi: mvm: return value for request_ownership (Íñigo Huguet) [2059994] - nl80211: Update bss channel on channel switch for P2P_CLIENT (Íñigo Huguet) [2059994] - iwlwifi: fix build error for IWLMEI (Íñigo Huguet) [2059994] - mac80211: treat some SAE auth steps as final (Íñigo Huguet) [2059994] - nl80211: Handle nla_memdup failures in handle_nan_filter (Íñigo Huguet) [2059994] - iwlwifi: mvm: check debugfs_dir ptr before use (Íñigo Huguet) [2059994] - iwlwifi: don't advertise TWT support (Íñigo Huguet) [2059994] - mac80211: fix forwarded mesh frames AC & queue selection (Íñigo Huguet) [2059994] - mac80211: refuse aggregations sessions before authorized (Íñigo Huguet) [2059994] - mac80211: fix EAPoL rekey fail in 802.3 rx path (Íñigo Huguet) [2059994] - iwlwifi: fix use-after-free (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Cinterion MV31-W (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Foxconn SDX55 (Íñigo Huguet) [2059994] - cfg80211: fix race in netlink owner interface destruction (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't send SAR GEO command for 3160 devices (Íñigo Huguet) [2059994] - iwlwifi: remove deprecated broadcast filtering feature (Íñigo Huguet) [2059994] - iwlwifi: mei: report RFKILL upon register when needed (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't feed the hardware RFKILL into iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mei: retry mapping the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: fix the pskb_may_pull check in ipv4 (Íñigo Huguet) [2059994] - iwlwifi: pcie: gen2: fix locking when "HW not ready" (Íñigo Huguet) [2059994] - iwlwifi: pcie: fix locking when "HW not ready" (Íñigo Huguet) [2059994] - iwlwifi: fix iwl_legacy_rate_to_fw_idx (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix condition which checks the version of rate_n_flags (Íñigo Huguet) [2059994] - mac80211_hwsim: initialize ieee80211_tx_info at hw_scan_work (Íñigo Huguet) [2059994] - mac80211_hwsim: report NOACK frames in tx_status (Íñigo Huguet) [2059994] - mac80211: mlme: check for null after calling kmemdup (Íñigo Huguet) [2059994] - brcmfmac: firmware: Fix crash in brcm_alt_fw_path (Íñigo Huguet) [2059994] - mac80211: use ieee80211_bss_get_elem() (Íñigo Huguet) [2059994] - nl80211: clarify comment for mesh PLINK_BLOCKED state (Íñigo Huguet) [2059994] - mac80211: Add stations iterator where the iterator function may sleep (Íñigo Huguet) [2059994] - mac80211: allow non-standard VHT MCS-10/11 (Íñigo Huguet) [2059994] - codel: remove unnecessary pkt_sched.h include (Íñigo Huguet) [2059994] - codel: remove unnecessary sock.h include (Íñigo Huguet) [2059994] - rtw88: don't consider deep PS mode when transmitting packet (Íñigo Huguet) [2059994] - ath11k: add support of firmware logging for WCN6855 (Íñigo Huguet) [2059994] - ath10k: replace strlcpy with strscpy (Íñigo Huguet) [2059994] - rtw88: support SAR via kernel common API (Íñigo Huguet) [2059994] - rtw88: 8822c: add ieee80211_ops::hw_scan (Íñigo Huguet) [2059994] - iwlwifi: mei: wait before mapping the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: clear the ownership when the driver goes down (Íñigo Huguet) [2059994] - iwlwifi: fw: fix some scan kernel-doc (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove card state notification code (Íñigo Huguet) [2059994] - iwlwifi: mvm: drop too short packets silently (Íñigo Huguet) [2059994] - iwlwifi: return op_mode only in case the failure is from MEI (Íñigo Huguet) [2059994] - iwlwifi: mvm: support Bz TX checksum offload (Íñigo Huguet) [2059994] - iwlwifi: mvm: add US/CA to TAS block list if OEM isn't allowed (Íñigo Huguet) [2059994] - iwlwifi: mvm: correctly set schedule scan profiles (Íñigo Huguet) [2059994] - iwlwifi: mvm: correctly set channel flags (Íñigo Huguet) [2059994] - iwlwifi: mvm: always store the PPAG table as the latest version. (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 69 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support TLV-based firmware reset (Íñigo Huguet) [2059994] - iwlwifi: mvm: change old-SN drop threshold (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't trust hardware queue number (Íñigo Huguet) [2059994] - iwlwifi: mvm: handle RX checksum on Bz devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: use a define for checksum flags mask (Íñigo Huguet) [2059994] - iwlwifi: remove module loading failure message (Íñigo Huguet) [2059994] - iwlwifi: mvm: isolate offload assist (checksum) calculation (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for OCE scan (Íñigo Huguet) [2059994] - iwlwifi: dump RCM error tables (Íñigo Huguet) [2059994] - iwlwifi: dump both TCM error tables if present (Íñigo Huguet) [2059994] - iwlwifi: dump CSR scratch from outer function (Íñigo Huguet) [2059994] - iwlwifi: parse error tables from debug TLVs (Íñigo Huguet) [2059994] - iwlwifi: recognize missing PNVM data and then log filename (Íñigo Huguet) [2059994] - iwlwifi: rs: add support for TLC config command ver 4 (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: update rfi table (Íñigo Huguet) [2059994] - iwlwifi: mvm: Add list of OEMs allowed to use TAS (Íñigo Huguet) [2059994] - iwlwifi: mvm: support revision 1 of WTAS table (Íñigo Huguet) [2059994] - iwlwifi: fw: remove dead error log code (Íñigo Huguet) [2059994] - iwlwifi: do not use __unused as variable name (Íñigo Huguet) [2059994] - iwlwifi: iwl-eeprom-parse: mostly dvm only (Íñigo Huguet) [2059994] - iwlwifi: mvm: clean up indenting in iwl_mvm_tlc_update_notif() (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix a stray tab (Íñigo Huguet) [2059994] - ath11k: add regdb.bin download for regdb offload (Íñigo Huguet) [2059994] - rtl8xxxu: Improve the A-MPDU retransmission rate with RTS/CTS protection (Íñigo Huguet) [2059994] - rtw88: don't check CRC of VHT-SIG-B in 802.11ac signal (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix imbalanced locking in iwl_mvm_start_get_nvm() (Íñigo Huguet) [2059994] - iwlwifi: mvm: add dbg_time_point to debugfs (Íñigo Huguet) [2059994] - iwlwifi: mvm: add missing min_size to kernel-doc (Íñigo Huguet) [2059994] - iwlwifi: mei: fix W=1 warnings (Íñigo Huguet) [2059994] - ath11k: add support for hardware rfkill for QCA6390 (Íñigo Huguet) [2059994] - ath11k: report tx bitrate for iw wlan station dump (Íñigo Huguet) [2059994] - ath11k: fix warning of RCU usage for ath11k_mac_get_arvif_by_vdev_id() (Íñigo Huguet) [2059994] - ath11k: add signal report to mac80211 for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: report rssi of each chain to mac80211 for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - cfg80211: Enable regulatory enforcement checks for drivers supporting mesh iface (Íñigo Huguet) [2059994] - rfkill: allow to get the software rfkill state (Íñigo Huguet) [2059994] - cfg80211: refactor cfg80211_get_ies_channel_number() (Íñigo Huguet) [2059994] - nl82011: clarify interface combinations wrt. channels (Íñigo Huguet) [2059994] - nl80211: Add support to offload SA Query procedures for AP SME device (Íñigo Huguet) [2059994] - nl80211: Add support to set AP settings flags with single attribute (Íñigo Huguet) [2059994] - mac80211: add more HT/VHT/HE state logging (Íñigo Huguet) [2059994] - cfg80211: Use the HE operation IE to determine a 6GHz BSS channel (Íñigo Huguet) [2059994] - cfg80211: rename offchannel_chain structs to background_chain to avoid confusion with ETSI standard (Íñigo Huguet) [2059994] - mac80211: Notify cfg80211 about association comeback (Íñigo Huguet) [2059994] - cfg80211: Add support for notifying association comeback (Íñigo Huguet) [2059994] - mac80211: introduce channel switch disconnect function (Íñigo Huguet) [2059994] - cfg80211: Fix order of enum nl80211_band_iftype_attr documentation (Íñigo Huguet) [2059994] - cfg80211: simplify cfg80211_chandef_valid() (Íñigo Huguet) [2059994] - mac80211: Remove a couple of obsolete TODO (Íñigo Huguet) [2059994] - mac80211: use coarse boottime for airtime fairness code (Íñigo Huguet) [2059994] - mt76: mt7921s: fix cmd timeout in throughput test (Íñigo Huguet) [2059994] - mt76: mt7921s: fix suspend error with enlarging mcu timeout value (Íñigo Huguet) [2059994] - mt76: mt7921s: make pm->suspended usage consistent (Íñigo Huguet) [2059994] - mt76: mt7921: clear pm->suspended in mt7921_mac_reset_work (Íñigo Huguet) [2059994] - mt76: connac: rely on le16_add_cpu in mt76_connac_mcu_add_nested_tlv (Íñigo Huguet) [2059994] - mt76: mt7921: remove dead definitions (Íñigo Huguet) [2059994] - mt76: mt7915: add mu-mimo and ofdma debugfs knobs (Íñigo Huguet) [2059994] - mt76: mt7915: introduce mt76_vif in mt7915_vif (Íñigo Huguet) [2059994] - mt76: mt7921: reduce log severity levels for informative messages (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac definitions (Íñigo Huguet) [2059994] - mt76: connac: rely on MCU_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_CE_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_UNI_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: remove MCU_FW_PREFIX bit (Íñigo Huguet) [2059994] - mt76: connac: align MCU_EXT definitions with 7915 driver (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_EXT macros (Íñigo Huguet) [2059994] - mt76: mt7615: in debugfs queue stats, skip wmm index 3 on mt7663 (Íñigo Huguet) [2059994] - mt76: mt7915: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: allow drivers to drop rx packets early (Íñigo Huguet) [2059994] - mt76: mt7663: disable 4addr capability (Íñigo Huguet) [2059994] - mt76: only access ieee80211_hdr after mt76_insert_ccmp_hdr (Íñigo Huguet) [2059994] - mt76: move sar_capa configuration in common code (Íñigo Huguet) [2059994] - mt76: mt7921s: fix possible kernel crash due to invalid Rx count (Íñigo Huguet) [2059994] - mt76: mt7921s: fix bus hang with wrong privilege (Íñigo Huguet) [2059994] - mt76: eeprom: tolerate corrected bit-flips (Íñigo Huguet) [2059994] - mt76: mt7603: improve reliability of tx powersave filtering (Íñigo Huguet) [2059994] - mt76: clear sta powersave flag after notifying driver (Íñigo Huguet) [2059994] - mt76: mt7915: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7603: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7915: improve wmm index allocation (Íñigo Huguet) [2059994] - mt76: mt7615: improve wmm index allocation (Íñigo Huguet) [2059994] - mt76: mt7921s: fix the device cannot sleep deeply in suspend (Íñigo Huguet) [2059994] - mt76: mt7615: fix decap offload corner case with 4-addr VLAN frames (Íñigo Huguet) [2059994] - mt76: mt7915: fix decap offload corner case with 4-addr VLAN frames (Íñigo Huguet) [2059994] - mt76: mt76x02: introduce SAR support (Íñigo Huguet) [2059994] - mt76: move sar utilities to mt76-core module (Íñigo Huguet) [2059994] - mt76: mt7921: honor mt76_connac_mcu_set_rate_txpower return value in mt7921_config (Íñigo Huguet) [2059994] - mt76: do not pass the received frame with decryption error (Íñigo Huguet) [2059994] - mt76: connac: remove PHY_MODE_AX_6G configuration in mt76_connac_get_phy_mode (Íñigo Huguet) [2059994] - mt76: mt7615: remove dead code in get_omac_idx (Íñigo Huguet) [2059994] - mt76: mt7921: introduce 160 MHz channel bandwidth support (Íñigo Huguet) [2059994] - mt76: mt7921: add support for PCIe ID 0x0608/0x0616 (Íñigo Huguet) [2059994] - mt76: testmode: add support to set MAC (Íñigo Huguet) [2059994] - mt76: mt7915: add default calibrated data support (Íñigo Huguet) [2059994] - mt76: only set rx radiotap flag from within decoder functions (Íñigo Huguet) [2059994] - mt76: reverse the first fragmented frame to 802.11 (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Introduce Sierra EM919X support (Íñigo Huguet) [2059994] - bus: mhi: core: Add an API for auto queueing buffers for DL channel (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Simplify code and axe the use of a deprecated API (Íñigo Huguet) [2059994] - bus: mhi: core: Use macros for execution environment features (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add new device ID support for T99W175 (Íñigo Huguet) [2059994] - ath11k: Use reserved host DDR addresses from DT for PCI devices (Íñigo Huguet) [2059994] - ath11k: Change qcn9074 fw to operate in mode-2 (Íñigo Huguet) [2059994] - ath11k: add ab to TARGET_NUM_VDEVS & co (Íñigo Huguet) [2059994] - brcmfmac: Fix incorrect type assignments for keep-alive (Íñigo Huguet) [2059994] - ath11k: Avoid false DEADLOCK warning reported by lockdep (Íñigo Huguet) [2059994] - ath11k: set DTIM policy to stick mode for station interface (Íñigo Huguet) [2059994] - ath11k: support MAC address randomization in scan (Íñigo Huguet) [2059994] - ath10k: wmi: remove array of flexible structures (Íñigo Huguet) [2059994] - ath10k: htt: remove array of flexible structures (Íñigo Huguet) [2059994] - ath10k: drop beacon and probe response which leak from other channel (Íñigo Huguet) [2059994] - ath11k: Process full monitor mode rx support (Íñigo Huguet) [2059994] - ath11k: add software monitor ring descriptor for full monitor (Íñigo Huguet) [2059994] - ath11k: Add htt cmd to enable full monitor mode (Íñigo Huguet) [2059994] - ath11k: enable IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS for WCN6855 (Íñigo Huguet) [2059994] - rtw88: refine tx_pwr_tbl debugfs to show channel and bandwidth (Íñigo Huguet) [2059994] - rtw88: add debugfs to fix tx rate (Íñigo Huguet) [2059994] - ath: regdom: extend South Korea regulatory domain support (Íñigo Huguet) [2059994] - ath11k: add wait operation for tx management packets for flush from mac80211 (Íñigo Huguet) [2059994] - ath11k: add 11d scan offload support (Íñigo Huguet) [2059994] - ath11k: add configure country code for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: avoid deadlock by change ieee80211_queue_work for regd_update_work (Íñigo Huguet) [2059994] - iwlwifi: work around reverse dependency on MEI (Íñigo Huguet) [2059994] - iwlwifi: mvm: optionally suppress assert log (Íñigo Huguet) [2059994] - iwlwifi: fw: correctly detect HW-SMEM region subtype (Íñigo Huguet) [2059994] - iwlwifi: implement reset flow for Bz devices (Íñigo Huguet) [2059994] - iwlwifi: dbg: disable ini debug in 8000 family and below (Íñigo Huguet) [2059994] - iwlwifi: support SAR GEO Offset Mapping override via BIOS (Íñigo Huguet) [2059994] - iwlwifi: pcie: retake ownership after reset (Íñigo Huguet) [2059994] - iwlwifi: mvm: always use 4K RB size by default (Íñigo Huguet) [2059994] - iwlwifi: mvm/api: define system control command (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 68 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: add some missing command strings (Íñigo Huguet) [2059994] - iwlwifi: fw: add support for splitting region type bits (Íñigo Huguet) [2059994] - iwlwifi: swap 1650i and 1650s killer struct names (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support for DBGC4 for dram (Íñigo Huguet) [2059994] - iwlwifi: mvm: update rate scale in moving back to assoc state (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for statistics update version 15 (Íñigo Huguet) [2059994] - iwlwifi: mvm: Add support for a new version of scan request command (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove session protection upon station removal (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for PHY context command v4 (Íñigo Huguet) [2059994] - iwlwifi: fw: api: add link to PHY context command struct v1 (Íñigo Huguet) [2059994] - iwlwifi: mvm: support RLC configuration command (Íñigo Huguet) [2059994] - iwlwifi: mvm: d3: support v12 wowlan status (Íñigo Huguet) [2059994] - iwlwifi: mvm: parse firmware alive message version 6 (Íñigo Huguet) [2059994] - iwlwifi: pcie: support Bz suspend/resume trigger (Íñigo Huguet) [2059994] - iwlwifi: mvm: d3: move GTK rekeys condition (Íñigo Huguet) [2059994] - ath11k: change to use dynamic memory for channel list of scan (Íñigo Huguet) [2059994] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2059994] - ath9k: switch to rate table based lookup (Íñigo Huguet) [2059994] - iwlwifi: mvm: demote non-compliant kernel-doc header (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix a possible NULL pointer deference (Íñigo Huguet) [2059994] - iwlwifi: mei: Fix spelling mistake "req_ownserhip" -> "req_ownership" (Íñigo Huguet) [2059994] - iwlwifi: mei: don't rely on the size from the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: fix linking when tracing is not enabled (Íñigo Huguet) [2059994] - ath11k: Avoid NULL ptr access during mgmt tx cleanup (Íñigo Huguet) [2059994] - rtlwifi: rtl8192de: Style clean-ups (Íñigo Huguet) [2059994] - brcmfmac: Configure keep-alive packet on suspend (Íñigo Huguet) [2059994] - ieee80211: change HE nominal packet padding value defines (Íñigo Huguet) [2059994] - cfg80211: use ieee80211_bss_get_elem() instead of _get_ie() (Íñigo Huguet) [2059994] - iwlwifi: mvm: read the rfkill state and feed it to iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mvm: add vendor commands needed for iwlmei (Íñigo Huguet) [2059994] - iwlwifi: integrate with iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mei: add debugfs hooks (Íñigo Huguet) [2059994] - iwlwifi: mei: add the driver to allow cooperation with CSME (Íñigo Huguet) [2059994] - mwifiex: Ensure the version string from the firmware is 0-terminated (Íñigo Huguet) [2059994] - mwifiex: Add quirk to disable deep sleep with certain hardware revision (Íñigo Huguet) [2059994] - mwifiex: Use a define for firmware version string length (Íñigo Huguet) [2059994] - rtw88: add debugfs to force lowest basic rate (Íñigo Huguet) [2059994] - rtw88: follow the AP basic rates for tx mgmt frame (Íñigo Huguet) [2059994] - mac80211: Use memset_after() to clear tx status (Íñigo Huguet) [2059994] - mac80211: notify non-transmitting BSS of color changes (Íñigo Huguet) [2059994] - mac80211: minstrel_ht: remove unused SAMPLE_SWITCH_THR define (Íñigo Huguet) [2059994] - cfg80211: allow continuous radar monitoring on offchannel chain (Íñigo Huguet) [2059994] - cfg80211: schedule offchan_cac_abort_wk in cfg80211_radar_event (Íñigo Huguet) [2059994] - cfg80211: delete redundant free code (Íñigo Huguet) [2059994] - mac80211: Remove unused assignment statements (Íñigo Huguet) [2059994] - cfg80211: fix possible NULL pointer dereference in cfg80211_stop_offchan_radar_detection (Íñigo Huguet) [2059994] - ath11k: Use memset_startat() for clearing queue descriptors (Íñigo Huguet) [2059994] - ath11k: Fix spelling mistake "detetction" -> "detection" (Íñigo Huguet) [2059994] - Revert "ath11k: add read variant from SMBIOS for download board data" (Íñigo Huguet) [2059994] - ath11k: add read variant from SMBIOS for download board data (Íñigo Huguet) [2059994] - ath11k: calculate the correct NSS of peer for HE capabilities (Íñigo Huguet) [2059994] - ath11k: change to treat alpha code na as world wide regdomain (Íñigo Huguet) [2059994] - cfg80211: move offchan_cac_event to a dedicated work (Íñigo Huguet) [2059994] - mac80211_hwsim: Fix spelling mistake "Droping" -> "Dropping" (Íñigo Huguet) [2059994] - mac80211: introduce set_radar_offchan callback (Íñigo Huguet) [2059994] - cfg80211: implement APIs for dedicated radar detection HW (Íñigo Huguet) [2059994] - ath11k: add support for BSS color change (Íñigo Huguet) [2059994] - ath11k: add trace log support (Íñigo Huguet) [2059994] - ath11k: Add missing qmi_txn_cancel() (Íñigo Huguet) [2059994] - ath11k: Disabling credit flow for WMI path (Íñigo Huguet) [2059994] - ath11k: Increment pending_mgmt_tx count before tx send invoke (Íñigo Huguet) [2059994] - ath11k: send proper txpower and maxregpower values to firmware (Íñigo Huguet) [2059994] - ath11k: move peer delete after vdev stop of station for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: remove return for empty tx bitrate in mac_op_sta_statistics (Íñigo Huguet) [2059994] - ath11k: enable IEEE80211_VHT_EXT_NSS_BW_CAPABLE if NSS ratio enabled (Íñigo Huguet) [2059994] - ath11k: avoid unnecessary lock contention in tx_completion path (Íñigo Huguet) [2059994] - ath11k: add branch predictors in dp_tx path (Íñigo Huguet) [2059994] - ath11k: avoid while loop in ring selection of tx completion interrupt (Íñigo Huguet) [2059994] - ath11k: remove mod operator in dst ring processing (Íñigo Huguet) [2059994] - ath11k: allocate HAL_WBM2SW_RELEASE ring from cacheable memory (Íñigo Huguet) [2059994] - ath11k: add branch predictors in process_rx (Íñigo Huguet) [2059994] - ath11k: remove usage quota while processing rx packets (Íñigo Huguet) [2059994] - ath11k: avoid active pdev check for each msdu (Íñigo Huguet) [2059994] - ath11k: avoid additional access to ath11k_hal_srng_dst_num_free (Íñigo Huguet) [2059994] - ath11k: modify dp_rx desc access wrapper calls inline (Íñigo Huguet) [2059994] - ath11k: allocate dst ring descriptors from cacheable memory (Íñigo Huguet) [2059994] - ath11k: disable unused CE8 interrupts for ipq8074 (Íñigo Huguet) [2059994] - ath11k: avoid unnecessary BH disable lock in STA kickout event (Íñigo Huguet) [2059994] - ath11k: enable 802.11 power save mode in station mode (Íñigo Huguet) [2059994] - ath11k: convert ath11k_wmi_pdev_set_ps_mode() to use enum wmi_sta_ps_mode (Íñigo Huguet) [2059994] - ath9k: use swap() to make code cleaner (Íñigo Huguet) [2059994] - ath10k: fetch (pre-)calibration data via nvmem subsystem (Íñigo Huguet) [2059994] - Revert "ath11k: add support for WCN6855 hw2.1" (Íñigo Huguet) [2059994] - iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting (Jerry Snitselaar) [2095498] - scsi: mpi3mr: Fix kernel-doc (Tomas Henzl) [2091878] - scsi: mpi3mr: Rework mrioc->bsg_device model to fix warnings (Tomas Henzl) [2091878] - scsi: mpi3mr: Add target device related sysfs attributes (Tomas Henzl) [2091878] - scsi: mpi3mr: Add shost related sysfs attributes (Tomas Henzl) [2091878] - scsi: mpi3mr: Return error if dma_alloc_coherent() fails (Tomas Henzl) [2091878] - scsi: mpi3mr: Fix a NULL vs IS_ERR() bug in mpi3mr_bsg_init() (Tomas Henzl) [2091878] - scsi: mpi3mr: Return I/Os to an unrecoverable HBA with DID_ERROR (Tomas Henzl) [2091878] - scsi: mpi3mr: Hidden drives not removed during soft reset (Tomas Henzl) [2091878] - scsi: mpi3mr: Increase I/O timeout value to 60s (Tomas Henzl) [2091878] - scsi: mpi3mr: Update driver version to 8.0.0.69.0 (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for NVMe passthrough (Tomas Henzl) [2091878] - scsi: mpi3mr: Expose adapter state to sysfs (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for PEL commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for MPT commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Move data structures/definitions from MPI headers to uapi header (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for driver commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Add bsg device support (Tomas Henzl) [2091878] - selftests/powerpc: Add PPC_FEATURE2_ARCH_3_1 and PPC_FEATURE2_EBB bits (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc: Add helper to exit on failure (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add interface test for mmcra register fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr3_src fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr2_fcs_fch fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr2_l2l3 field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr1_comb field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmc56 using pmc5 (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_fc56 field using pmc1 (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmcjce field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmccext bit (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_cc56run field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0 exception bits (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macro to extract mmcr3 and mmcra fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macro to extract mmcr0/mmcr1 fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macros to extract mmcr fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add event_init_sampling function (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add utility functions to post process the mmap buffer (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macros to parse event codes (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add support for perf sampling tests (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc: Add a test of counting larx/stcx (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Include mmap_buffer field as part of struct event (Desnes A. Nunes do Rosario) [2071113] - [s390] net/smc: Fix af_ops of child socket pointing to released memory (Tobias Huschle) [2043832] - [s390] net/smc: Fix NULL pointer dereference in smc_pnet_find_ib() (Tobias Huschle) [2043832] - [s390] net/smc: use memcpy instead of snprintf to avoid out of bounds read (Tobias Huschle) [2043832] - [s390] net/smc: Call trace_smc_tx_sendmsg when data corked (Tobias Huschle) [2043832] - [s390] net/smc: Fix cleanup when register ULP fails (Tobias Huschle) [2043832] - [s390] net/smc: fix connection leak (Tobias Huschle) [2043832] - [s390] net/smc: Use a mutex for locking "struct smc_pnettable" (Tobias Huschle) [2043832] - [s390] net/smc: unlock on error paths in __smc_setsockopt() (Tobias Huschle) [2043832] - [s390] net/smc: return ETIMEDOUT when smc_connect_clc() timeout (Tobias Huschle) [2043832] - [s390] net/smc: Add comment for smc_tx_pending (Tobias Huschle) [2043832] - [s390] net/smc: Add global configure for handshake limitation by netlink (Tobias Huschle) [2043832] - [s390] net/smc: Dynamic control handshake limitation by socket options (Tobias Huschle) [2043832] - [s390] net/smc: Limit SMC visits when handshake workqueue congested (Tobias Huschle) [2043832] - [s390] net/smc: Limit backlog connections (Tobias Huschle) [2043832] - [s390] net/smc: Make smc_tcp_listen_work() independent (Tobias Huschle) [2043832] - [s390] net/smc: Avoid overwriting the copies of clcsock callback functions (Tobias Huschle) [2043832] - [s390] Partially revert "net/smc: Add netlink net namespace support" (Tobias Huschle) [2043832] - [s390] net/smc: Cork when sendpage with MSG_SENDPAGE_NOTLAST flag (Tobias Huschle) [2043832] - [s390] net/smc: Remove corked dealyed work (Tobias Huschle) [2043832] - [s390] net/smc: Send directly when TCP_CORK is cleared (Tobias Huschle) [2043832] - [s390] net/smc: Forward wakeup to smc socket waitqueue after fallback (Tobias Huschle) [2043832] - [s390] net/smc: Transitional solution for clcsock race issue (Tobias Huschle) [2043832] - [s390] net/smc: Fix hung_task when removing SMC-R devices (Tobias Huschle) [2043832] - [s390] net/smc: Remove unused function declaration (Tobias Huschle) [2043832] - [s390] net/smc: Resolve the race between SMC-R link access and clear (Tobias Huschle) [2043832] - [s390] net/smc: Introduce a new conn->lgr validity check helper (Tobias Huschle) [2043832] - [s390] net/smc: Resolve the race between link group access and termination (Tobias Huschle) [2043832] - [s390] net/smc: Reset conn->lgr when link group registration fails (Tobias Huschle) [2043832] - [s390] net/smc: add comments for smc_link_{usable|sendable} (Tobias Huschle) [2043832] - [s390] net/smc: remove redundant re-assignment of pointer link (Tobias Huschle) [2043832] - [s390] net/smc: Introduce TCP ULP support (Tobias Huschle) [2043832] - [s390] net/smc: Add net namespace for tracepoints (Tobias Huschle) [2043832] - [s390] net/smc: Print net namespace in log (Tobias Huschle) [2043832] - [s390] net/smc: Add netlink net namespace support (Tobias Huschle) [2043832] - [s390] net/smc: Introduce net namespace support for linkgroup (Tobias Huschle) [2043832] - [s390] net/smc: Use the bitmap API when applicable (Tobias Huschle) [2043832] - [s390] net/smc: fix kernel panic caused by race of smc_sock (Tobias Huschle) [2043832] - [s390] net/smc: don't send CDC/LLC message if link not ready (Tobias Huschle) [2043832] - [s390] net/smc: fix using of uninitialized completions (Tobias Huschle) [2043832] - [s390] net/smc: Prevent smc_release() from long blocking (Tobias Huschle) [2043832] - [s390] net/smc: Clear memory when release and reuse buffer (Tobias Huschle) [2043832] - [s390] net/smc: Keep smc_close_final rc during active close (Tobias Huschle) [2043832] - [s390] net/smc: fix wrong list_del in smc_lgr_cleanup_early (Tobias Huschle) [2043832] - [s390] net/smc: Don't call clcsock shutdown twice when smc shutdown (Tobias Huschle) [2043832] - [s390] net/smc: Fix loop in smc_listen (Tobias Huschle) [2043832] - [s390] net/smc: Fix NULL pointer dereferencing in smc_vlan_by_tcpsk() (Tobias Huschle) [2043832] - [s390] net/smc: Ensure the active closing peer first closes clcsock (Tobias Huschle) [2043832] - [s390] net/smc: Clean up local struct sock variables (Tobias Huschle) [2043832] - [s390] net/smc: Avoid warning of possible recursive locking (Tobias Huschle) [2043832] - [s390] net/smc: Make sure the link_id is unique (Tobias Huschle) [2043832] - [s390] net/smc: Transfer remaining wait queue entries during fallback (Tobias Huschle) [2043832] - [s390] net/smc: fix sk_refcnt underflow on linkdown and fallback (Tobias Huschle) [2043832] - [s390] net/smc: Print function name in smcr_link_down tracepoint (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoint for smcr link down (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoints for tx and rx msg (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoint for fallback (Tobias Huschle) [2043832] - [s390] net/smc: Correct spelling mistake to TCPF_SYN_RECV (Tobias Huschle) [2043832] - [s390] net/smc: Fix smc_link->llc_testlink_time overflow (Tobias Huschle) [2043832] - [s390] net/smc: stop links when their GID is removed (Tobias Huschle) [2043832] - [s390] net/smc: add netlink support for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: extend LLC layer for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: add v2 support to the work request layer (Tobias Huschle) [2043832] - [s390] net/smc: retrieve v2 gid from IB device (Tobias Huschle) [2043832] - [s390] net/smc: add v2 format of CLC decline message (Tobias Huschle) [2043832] - [s390] net/smc: add listen processing for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: add SMC-Rv2 connection establishment (Tobias Huschle) [2043832] - [s390] net/smc: prepare for SMC-Rv2 connection (Tobias Huschle) [2043832] - [s390] net/smc: save stack space and allocate smc_init_info (Tobias Huschle) [2043832] - [s390] net/smc: add generic netlink support for system EID (Tobias Huschle) [2043832] - [s390] net/smc: keep static copy of system EID (Tobias Huschle) [2043832] - [s390] net/smc: add support for user defined EIDs (Tobias Huschle) [2043832] - [s390] net/smc: Allow SMC-D 1MB DMB allocations (Tobias Huschle) [2043832] - [s390] net/smc: no need to flush smcd_dev's event_wq before destroying it (Tobias Huschle) [2043832] - [s390] net/smc: avoid possible duplicate dmb unregistration (Tobias Huschle) [2043832] - [s390] net/smc: remove device from smcd_dev_list after failed device_add() (Tobias Huschle) [2043832]- bnxt_en: parse and report result field when NVRAM package install fails (Ken Cox) [2043782] - bnxt_en: Fix unnecessary dropping of RX packets (Ken Cox) [2043782] - bnxt_en: Initiallize bp->ptp_lock first before using it (Ken Cox) [2043782] - bnxt_en: Fix possible bnxt_open() failure caused by wrong RFS flag (Ken Cox) [2043782] - bnxt_en: Prevent XDP redirect from running when stopping TX queue (Ken Cox) [2043782 1944997] - bnxt_en: reserve space inside receive page for skb_shared_info (Ken Cox) [2043782 1944997] - bnxt_en: Synchronize tx when xdp redirects happen on same ring (Ken Cox) [2043782 1944997] - net: bnxt_ptp: fix compilation error (Ken Cox) [2043782] - bnxt: revert hastily merged uAPI aberrations (Ken Cox) [2043782] - bnxt_en: add an nvm test for hw diagnose (Ken Cox) [2043782] - bnxt_en: implement hw health reporter (Ken Cox) [2043782] - bnxt_en: Do not destroy health reporters during reset (Ken Cox) [2043782] - bnxt_en: Eliminate unintended link toggle during FW reset (Ken Cox) [2043782] - bnxt_en: Properly report no pause support on some cards (Ken Cox) [2043782] - bnxt_en: introduce initial link state of unknown (Ken Cox) [2043782] - bnxt_en: parse result field when NVRAM package install fails (Ken Cox) [2043782] - bnxt_en: add more error checks to HWRM_NVM_INSTALL_UPDATE (Ken Cox) [2043782] - bnxt_en: refactor error handling of HWRM_NVM_INSTALL_UPDATE (Ken Cox) [2043782] - bnxt_en: Increase firmware message response DMA wait time (Ken Cox) [2043782] - bnxt_en: Fix incorrect multicast rx mask setting when not requested (Ken Cox) [2043782] - bnxt_en: Fix occasional ethtool -t loopback test failures (Ken Cox) [2043782] - bnxt_en: Fix offline ethtool selftest with RDMA enabled (Ken Cox) [2043782] - bnxt_en: Fix active FEC reporting to ethtool (Ken Cox) [2043782] - bnxt_en: Fix devlink fw_activate (Ken Cox) [2043782] - bnxt_en: Restore the resets_reliable flag in bnxt_open() (Ken Cox) [2043782] - bnxt_en: Handle async event when the PHC is updated in RTC mode (Ken Cox) [2043782] - bnxt_en: Implement .adjtime() for PTP RTC mode (Ken Cox) [2043782] - bnxt_en: Add driver support to use Real Time Counter for PTP (Ken Cox) [2043782] - bnxt_en: PTP: Refactor PTP initialization functions (Ken Cox) [2043782] - bnxt_en: Update firmware interface to 1.10.2.73 (Ken Cox) [2043782] - bnxt_en: improve firmware timeout messaging (Ken Cox) [2043782] - bnxt_en: use firmware provided max timeout for messages (Ken Cox) [2043782] - bnxt_en: improve VF error messages when PF is unavailable (Ken Cox) [2043782] - bnxt_en: add dynamic debug support for HWRM messages (Ken Cox) [2043782] - bnxt_en: Use page frag RX buffers for better software GRO performance (Ken Cox) [2043782] - bnxt_en: convert to xdp_do_flush (Ken Cox) [2043782] - bnxt_en: Support CQE coalescing mode in ethtool (Ken Cox) [2043782] - bnxt_en: Support configurable CQE coalescing mode (Ken Cox) [2043782] - bnxt_en: enable interrupt sampling on 5750X for DIM (Ken Cox) [2043782] - bnxt_en: Log error report for dropped doorbell (Ken Cox) [2043782] - bnxt_en: Add event handler for PAUSE Storm event (Ken Cox) [2043782] - flow_offload: reject to offload tc actions in offload drivers (Ken Cox) [2043782] - bnxt_en: Fix compile error regression when CONFIG_BNXT_SRIOV is not set (Ken Cox) [2043782] - bnxt_en: fix format specifier in live patch error message (Ken Cox) [2043782] - bnxt_en: extend RTNL to VF check in devlink driver_reinit (Ken Cox) [2043782] - bnxt_en: avoid newline at end of message in NL_SET_ERR_MSG_MOD (Ken Cox) [2043782] - bnxt_en: Remove not used other ULP define (Ken Cox) [2043782] - bnxt_en: Provide stored devlink "fw" version on older firmware (Ken Cox) [2043782] - bnxt_en: implement firmware live patching (Ken Cox) [2043782] - bnxt_en: Update firmware interface to 1.10.2.63 (Ken Cox) [2043782] - bnxt_en: implement dump callback for fw health reporter (Ken Cox) [2043782] - bnxt_en: extract coredump command line from current task (Ken Cox) [2043782] - bnxt_en: Retrieve coredump and crashdump size via FW command (Ken Cox) [2043782] - bnxt_en: Add compression flags information in coredump segment header (Ken Cox) [2043782] - bnxt_en: move coredump functions into dedicated file (Ken Cox) [2043782] - bnxt_en: Refactor coredump functions (Ken Cox) [2043782] - bnxt_en: improve fw diagnose devlink health messages (Ken Cox) [2043782] - bnxt_en: consolidate fw devlink health reporters (Ken Cox) [2043782] - bnxt_en: remove fw_reset devlink health reporter (Ken Cox) [2043782] - bnxt_en: improve error recovery information messages (Ken Cox) [2043782] - bnxt_en: add enable_remote_dev_reset devlink parameter (Ken Cox) [2043782] - bnxt_en: implement devlink dev reload fw_activate (Ken Cox) [2043782] - bnxt_en: implement devlink dev reload driver_reinit (Ken Cox) [2043782] - bnxt_en: refactor cancellation of resource reservations (Ken Cox) [2043782] - bnxt_en: refactor printing of device info (Ken Cox) [2043782] - bnxt: use netif_is_rxfh_configured instead of open code (Ken Cox) [2043782] - ethernet: use eth_hw_addr_set() (Ken Cox) [2043782] - bnxt_en: Fix TX timeout when TX ring size is set to the smallest (Ken Cox) [2043782] - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert (Ken Cox) [2043782] - bnxt_en: make bnxt_free_skbs() safe to call after bnxt_free_mem() (Ken Cox) [2043782] - netfilter: nat: really support inet nat without l3 address (Phil Sutter) [2092424] - netfilter: nf_tables: use kfree_rcu(ptr, rcu) to release hooks in clean_net path (Phil Sutter) [2094236] - netfilter: nf_tables: double hook unregistration in netns path (Phil Sutter) [2094236] - video: fbdev: hyperv_fb: Allow resolutions with size > 64 MB for Gen1 (Mohammed Gamal) [1948442] - cpufreq: intel_pstate: Use firmware default EPP (Steve Best) [2072671] - cpufreq: intel_pstate: Update cpuinfo.max_freq on HWP_CAP changes (Steve Best) [2072671] - cpufreq: intel_pstate: Update EPP for AlderLake mobile (Steve Best) [2072671] - cpufreq: intel_pstate: Drop redundant intel_pstate_get_hwp_cap() call (Steve Best) [2072671] - cpufreq: intel_pstate: ITMT support for overclocked system (Steve Best) [2072671] - cpufreq: intel_pstate: Fix active mode offline/online EPP handling (Steve Best) [2072671] - cpufreq: intel_pstate: Clear HWP Status during HWP Interrupt enable (Steve Best) [2072671] - cpufreq: intel_pstate: Fix unchecked MSR 0x773 access (Steve Best) [2072671] - cpufreq: intel_pstate: Clear HWP desired on suspend/shutdown and offline (Steve Best) [2072671] - cpufreq: intel_pstate: Process HWP Guaranteed change notification (Steve Best) [2072671] - cpufreq: intel_pstate: Override parameters if HWP forced by BIOS (Steve Best) [2072671] - Revert "cpufreq: intel_pstate: Process HWP Guaranteed change notification" (Steve Best) [2072671] - cpufreq: intel_pstate: Process HWP Guaranteed change notification (Steve Best) [2072671] - cpuidle: intel_idle: Drop redundant backslash at line end (Steve Best) [2072893] - intel_idle: add core C6 optimization for SPR (Steve Best) [2072893] - intel_idle: add 'preferred_cstates' module argument (Steve Best) [2072893] - intel_idle: add SPR support (Steve Best) [2072893] - intel_idle: enable interrupts before C1 on Xeons (Steve Best) [2072893]- [s390] s390/airq: use DMA memory for summary indicators (Tobias Huschle) [2043905] - [s390] s390/zcrypt: Provide target domain for EP11 cprbs to scheduling function (Tobias Huschle) [2043905] - [s390] s390/zcrypt: change reply buffer size offering (Tobias Huschle) [2043905] - [s390] s390/zcrypt: Support CPRB minor version T7 (Tobias Huschle) [2043905] - [s390] s390/zcrypt: handle checkstopped cards with new state (Tobias Huschle) [2043905] - [s390] s390/zcrypt: CEX8S exploitation support (Tobias Huschle) [2043905] - [s390] s390/ap/zcrypt: debug feature improvements (Tobias Huschle) [2043905] - [s390] s390/zcrypt: rework of debug feature messages (Tobias Huschle) [2043905] - powerpc/perf: Fix the threshold compare group constraint for power10 (Steve Best) [2090058] - arch/x86: Disable system wide bus lock rate limiting (Prarit Bhargava) [2028252] - rtnetlink: return ENODEV when IFLA_ALT_IFNAME is used in dellink (Xin Long) [2062780] - rtnetlink: enable alt_ifname for setlink/newlink (Xin Long) [2062780] - rtnetlink: return ENODEV when ifname does not exist and group is given (Xin Long) [2062780] - rtnetlink: Return correct error on changing device netns (Xin Long) [2062780] - net: remove the new_ifindex argument from dev_change_net_namespace (Xin Long) [2062780] - net: Allow to specify ifindex when device is moved to another namespace (Xin Long) [2062780] - net: rtnetlink: add possibility to use alternative names as message handle (Xin Long) [2062780] - net: rtnetlink: introduce helper to get net_device instance by ifname (Xin Long) [2062780] - net: rtnetlink: unify the code in __rtnl_newlink get dev with the rest (Xin Long) [2062780] - net: rtnetlink: put alternative names to getlink message (Xin Long) [2062780] - block-map: add __GFP_ZERO flag for alloc_page in function bio_copy_kern (Ewan D. Milne) [2049198] {CVE-2022-0494} - [s390] s390/dasd: prevent double format of tracks for ESE devices (Mete Durlu) [2094296] - [s390] s390/dasd: fix data corruption for ESE devices (Mete Durlu) [2094296] - [s390] s390/dasd: Fix read inconsistency for ESE DASD devices (Mete Durlu) [2094294] - [s390] s390/dasd: Fix read for ESE with blksize < 4k (Mete Durlu) [2094294] - xfs: validate inode fork size against fork format (Andrey Albershteyn) [2089447] - selftests/tc-testing: match any qdisc type (Petr Oros) [2021843] - tc-testing: Add control-plane selftests for sch_mq (Petr Oros) [2021843] - netdevsim: Zero-initialize memory for new map's value in function nsim_bpf_map_alloc (Petr Oros) [2021843] - netdevsim: don't overwrite read only ethtool parms (Petr Oros) [2021843] - netdevsim: fix uninit value in nsim_drv_configure_vfs() (Petr Oros) [2021843] - netdevsim: rename 'driver' entry points (Petr Oros) [2021843] - netdevsim: move max vf config to dev (Petr Oros) [2021843] - netdevsim: move details of vf config to dev (Petr Oros) [2021843] - netdevsim: move vfconfig to nsim_dev (Petr Oros) [2021843] - netdevsim: take rtnl_lock when assigning num_vfs (Petr Oros) [2021843] - netdevsim: Protect both reload_down and reload_up paths (Petr Oros) [2021843] - netdevsim: make array res_ids static const, makes object smaller (Petr Oros) [2021843] - netdevsim: Add multi-queue support (Petr Oros) [2021843] - net: netdevsim: use xso.real_dev instead of xso.dev in callback functions of struct xfrmdev_ops (Petr Oros) [2021843] - netdevsim: delete unnecessary debugfs checking (Petr Oros) [2021843] - netdevsim: switch to memdup_user_nul() (Petr Oros) [2021843] - netdevsim: init u64 stats for 32bit hardware (Petr Oros) [2021843] - dm: fix bio length of empty flush (Ming Lei) [2090940] - block: initialize the target bio in __bio_clone_fast (Ming Lei) [2090940] - dm: use bio_clone_fast in alloc_io/alloc_tio (Ming Lei) [2090940] - block: clone crypto and integrity data in __bio_clone_fast (Ming Lei) [2090940] - dm-cache: remove __remap_to_origin_clear_discard (Ming Lei) [2090940] - dm: simplify the single bio fast path in __send_duplicate_bios (Ming Lei) [2090940] - dm: retun the clone bio from alloc_tio (Ming Lei) [2090940] - dm: pass the bio instead of tio to __map_bio (Ming Lei) [2090940] - dm: move cloning the bio into alloc_tio (Ming Lei) [2090940] - dm: fold __send_duplicate_bios into __clone_and_map_simple_bio (Ming Lei) [2090940] - dm: fold clone_bio into __clone_and_map_data_bio (Ming Lei) [2090940] - dm: add a clone_to_tio helper (Ming Lei) [2090940] - block: make bio_crypt_clone() able to fail (Ming Lei) [2090940] - perf/x86/uncore: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/uncore: Clean up uncore_pci_ids[] (Michael Petlan) [2088831] - perf/x86/uncore: Add Raptor Lake uncore support (Michael Petlan) [2088831] - perf/x86/cstate: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/cstate: Add Raptor Lake support (Michael Petlan) [2088831] - perf/x86/msr: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/msr: Add Raptor Lake CPU support (Michael Petlan) [2088831] - perf/x86: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86: Add Intel Raptor Lake support (Michael Petlan) [2088831] - x86/cpu: Add new Alderlake and Raptorlake CPU model numbers (Michael Petlan) [2088831] - x86/intel: Add common OPTDIFFs (Michael Petlan) [2088831] - x86/cpu: Explain Intel model naming convention (Michael Petlan) [2088831] - KVM: s390: vsie/gmap: reduce gmap_rmap overhead (Thomas Huth) [2072387] - KVM: s390x: fix SCK locking (Thomas Huth) [2072387] - s390/kvm: use union tod_clock (Thomas Huth) [2072387] - s390/time: introduce new store_tod_clock_ext() (Thomas Huth) [2072387] - s390/time: introduce union tod_clock (Thomas Huth) [2072387] - KVM: s390: Clarify SIGP orders versus STOP/RESTART (Thomas Huth) [2043868] - KVM: s390: Clear valid_wakeup in kvm_s390_handle_wait(), not in arch hook (Thomas Huth) [2072387] - KVM: s390: Ensure kvm_arch_no_poll() is read once when blocking vCPU (Thomas Huth) [2072387] - KVM: s390: Introduce kvm_s390_get_gfn_end() (Thomas Huth) [2072387] - KVM: Integrate gfn_to_memslot_approx() into search_memslots() (Thomas Huth) [2072387] - KVM: s390: Use kvm_get_vcpu() instead of open-coded access (Thomas Huth) [2072387] - KVM: s390: add debug statement for diag 318 CPNC data (Thomas Huth) [2072387] - KVM: s390: pv: properly handle page flags for protected guests (Thomas Huth) [2072387] - KVM: s390: Add a routine for setting userspace CPU state (Thomas Huth) [2072387] - net: sfc: ef10: fix memory leak in efx_ef10_mtd_probe() (Íñigo Huguet) [2042840] - net: sfc: fix memory leak due to ptp channel (Íñigo Huguet) [2042840] - net: sfc: fix using uninitialized xdp tx_queue (Íñigo Huguet) [2042840] - sfc: Do not free an empty page_ring (Íñigo Huguet) [2042840] - net: sfc: add missing xdp queue reinitialization (Íñigo Huguet) [2042840] - sfc: Avoid NULL pointer dereference on systems without numa awareness (Íñigo Huguet) [2042840] - sfc: extend the locking on mcdi->seqno (Íñigo Huguet) [2042840] - sfc: set affinity hints in local NUMA node only (Íñigo Huguet) [2042840] - sfc: default config to 1 channel/core in local NUMA node only (Íñigo Huguet) [2042840] - sfc: The size of the RX recycle ring should be more flexible (Íñigo Huguet) [2042840] - sfc: Use swap() instead of open coding it (Íñigo Huguet) [2042840] - ethernet/sfc: remove redundant rc variable (Íñigo Huguet) [2042840] - PCI/ACPI: Allow D3 only if Root Port can signal and wake from D3 (Myron Stowe) [2015785] - thunderbolt: Do not make DROM read success compulsory (Myron Stowe) [2015785] - thunderbolt: Do not resume routers if UID is not set (Myron Stowe) [2015785] - thunderbolt: Retry DROM reads for more failure scenarios (Myron Stowe) [2015785] - PCI/ACPI: Replace acpi_bus_get_device() with acpi_fetch_acpi_dev() (Myron Stowe) [2015785] - ACPI: scan: Introduce acpi_fetch_acpi_dev() (Myron Stowe) [2015785] - PCI: PM: Fix ordering of operations in pci_back_from_sleep() (Myron Stowe) [2015785] - PCI: PM: Do not call platform_pci_power_manageable() unnecessarily (Myron Stowe) [2015785] - PCI: PM: Make pci_choose_state() call pci_target_state() (Myron Stowe) [2015785] - PCI: PM: Rearrange pci_target_state() (Myron Stowe) [2015785] - PCI: PM: Simplify acpi_pci_power_manageable() (Myron Stowe) [2015785] - PCI: PM: Drop struct pci_platform_pm_ops (Myron Stowe) [2015785] - PCI: ACPI: PM: Do not use pci_platform_pm_ops for ACPI (Myron Stowe) [2015785] - PCI: PM: Do not use pci_platform_pm_ops for Intel MID PM (Myron Stowe) [2015785] - ACPI: glue: Look for ACPI bus type only if ACPI companion is not known (Myron Stowe) [2015785] - ACPI: glue: Drop cleanup callback from struct acpi_bus_type (Myron Stowe) [2015785] - PCI: ACPI: Drop acpi_pci_bus (Myron Stowe) [2015785] - PCI: ACPI: Check parent pointer in acpi_pci_find_companion() (Myron Stowe) [2015785] - PCI/ACPI: Don't reset a fwnode set by OF (Myron Stowe) [2015785] - PCI: VMD: ACPI: Make ACPI companion lookup work for VMD bus (Myron Stowe) [2015785] - PCI: Change the type of probe argument in reset functions (Myron Stowe) [2015785] - PCI: Add support for ACPI _RST reset method (Myron Stowe) [2015785] - PCI: Setup ACPI fwnode early and at the same time with OF (Myron Stowe) [2015785] - PCI: Use acpi_pci_power_manageable() (Myron Stowe) [2015785] - PCI: Add pci_set_acpi_fwnode() to set ACPI_COMPANION (Myron Stowe) [2015785] - PCI: Allow userspace to query and set device reset mechanism (Myron Stowe) [2015785] - PCI: Remove reset_fn field from pci_dev (Myron Stowe) [2015785] - PCI: Add array to track reset method ordering (Myron Stowe) [2015785] - PCI: Add pcie_reset_flr() with 'probe' argument (Myron Stowe) [2015785] - PCI: Cache PCIe Device Capabilities register (Myron Stowe) [2015785] - driver core: Split device_platform_notify() (Myron Stowe) [2015785] - software nodes: Split software_node_notify() (Myron Stowe) [2015785] - PCI: PM: Enable PME if it can be signaled from D3cold (Myron Stowe) [2015785] - PCI: PM: Avoid forcing PCI_D0 for wakeup reasons inconsistently (Myron Stowe) [2015785] - PCI: Use pci_update_current_state() in pci_enable_device_flags() (Myron Stowe) [2015785] - PCI: Add pci_reset_bus_function() Secondary Bus Reset interface (Myron Stowe) [2015785] - ACPI: scan: Rearrange code related to acpi_get_device_data() (Myron Stowe) [2015785] - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI (Myron Stowe) [2015785] - crypto: cavium/nitrox - use pcie_flr instead of duplicating it (Myron Stowe) [2015785] - NFSv4 only print the label when its queried (Scott Mayhew) [2030827] - NFSv4.1 provide mount option to toggle trunking discovery (Scott Mayhew) [2030827] - NFSv4.1 test and add 4.1 trunking transport (Scott Mayhew) [2030827] - SUNRPC allow for unspecified transport time in rpc_clnt_add_xprt (Scott Mayhew) [2030827] - NFSv4 handle port presence in fs_location server string (Scott Mayhew) [2030827] - NFSv4 expose nfs_parse_server_name function (Scott Mayhew) [2030827] - NFSv4.1 query for fs_location attr on a new file system (Scott Mayhew) [2030827] - NFSv4 store server support for fs_location attribute (Scott Mayhew) [2030827] - NFSv4 remove zero number of fs_locations entries error check (Scott Mayhew) [2030827] - NFSv4.1 add network transport when session trunking is detected (Scott Mayhew) [2030827] - SUNRPC enforce creation of no more than max_connect xprts (Scott Mayhew) [2030827] - NFSv4 introduce max_connect mount options (Scott Mayhew) [2030827] - SUNRPC add xps_nunique_destaddr_xprts to xprt_switch_info in sysfs (Scott Mayhew) [2030827] - SUNRPC keep track of number of transports to unique addresses (Scott Mayhew) [2030827] - powerpc/papr_scm: Make 'perf_stats' invisible if perf-stats unavailable (Diego Domingos) [1986188] - powerpc/papr_scm: Fix warnings about undeclared variable (Diego Domingos) [1986188] - VMCI: Add support for ARM64 (Cathy Avery) [2080095] - VMCI: Release notification_bitmap in error path (Cathy Avery) [2080095] - VMCI: Check exclusive_vectors when freeing interrupt 1 (Cathy Avery) [2080095] - VMCI: Fix some error handling paths in vmci_guest_probe_device() (Cathy Avery) [2080095] - VMCI: No need to clear memory after a dma_alloc_coherent() call (Cathy Avery) [2080095] - VMCI: Fix the description of vmci_check_host_caps() (Cathy Avery) [2080095] - VMCI: dma dg: add support for DMA datagrams receive (Cathy Avery) [2080095] - VMCI: dma dg: add support for DMA datagrams sends (Cathy Avery) [2080095] - VMCI: dma dg: allocate send and receive buffers for DMA datagrams (Cathy Avery) [2080095] - VMCI: dma dg: register dummy IRQ handlers for DMA datagrams (Cathy Avery) [2080095] - VMCI: dma dg: set OS page size (Cathy Avery) [2080095] - VMCI: dma dg: whitespace formatting change for vmci register defines (Cathy Avery) [2080095] - VMCI: dma dg: detect DMA datagram capability (Cathy Avery) [2080095] - VMCI: Use BIT() macro for bit definitions (Cathy Avery) [2080095] - VMCI: dma dg: add MMIO access to registers (Cathy Avery) [2080095] - misc: vmw_vmci: Switch to kvfree_rcu() API (Cathy Avery) [2080095] - VMCI: fix NULL pointer dereference when unmapping queue pair (Cathy Avery) [2080095] - misc: vmci: remove redundant variable is_local (Cathy Avery) [2080095] - misc: vmw_vmci: return the correct errno code (Cathy Avery) [2080095] - misc: vmw_vmci: explicitly initialize vmci_datagram payload (Cathy Avery) [2080095] - misc: vmw_vmci: explicitly initialize vmci_notify_bm_set_msg struct (Cathy Avery) [2080095] - vmci_host: print unexpanded names of ioctl requests in debug messages (Cathy Avery) [2080095] - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue (Cathy Avery) [2080095] - VMCI: Enforce queuepair max size for IOCTL_VMCI_QUEUEPAIR_ALLOC (Cathy Avery) [2080095] - VMCI: Use set_page_dirty_lock() when unregistering guest memory (Cathy Avery) [2080095] - misc/vmw_vmci: fix typo (Cathy Avery) [2080095] - misc: vmw_vmci: fix kernel info-leak by initializing dbells in vmci_ctx_get_chkpt_doorbells() (Cathy Avery) [2080095] - VMCI: check return value of get_user_pages_fast() for errors (Cathy Avery) [2080095] - vmci_host: get rid of pointless access_ok() (Cathy Avery) [2080095] - treewide: Add SPDX license identifier - Makefile/Kconfig (Cathy Avery) [2080095] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Cathy Avery) [2080095] - VMCI: Use memdup_user() rather than duplicating its implementation (Cathy Avery) [2080095] - VMCI: remove set but not used variable 'cid' (Cathy Avery) [2080095] - vmci: type promotion bug in qp_host_get_user_memory() (Cathy Avery) [2080095]- misc: pvpanic: introduce device capability (Emanuele Giuseppe Esposito) [2088457] - misc: pvpanic: add crash loaded event (Emanuele Giuseppe Esposito) [2088457] - misc: pvpanic: move bit definition to uapi header file (Emanuele Giuseppe Esposito) [2088457] - rfkill: make new event layout opt-in (Jose Ignacio Tornos Martinez) [2023175] - lib/sbitmap: fix sb->map leak (Ming Lei) [2093549] - openvswitch: fix OOB access in reserve_sfa_size() (Antoine Tenart) [2082023] - net: openvswitch: don't send internal clone attribute to the userspace. (Antoine Tenart) [2082023 2085509] - openvswitch: Add recirc_id to recirc warning (Antoine Tenart) [2082023] - openvswitch: Fixed nd target mask field in the flow dump. (Antoine Tenart) [2082023] - net: openvswitch: Remove redundant if statements (Antoine Tenart) [2082023] - netfilter: nf_tables: disallow non-stateful expression in sets earlier (Phil Sutter) [2092987] {CVE-2022-1966} - cachefiles: Drop superfluous readpages aops NULL check (Dave Wysochanski) [2083136] - audit: fix AUDIT_DISABLED undeclared error when AUDITSYSCALL unconfigured (Richard Guy Briggs) [2035123] - audit: log AUDIT_TIME_* records only from rules (Richard Guy Briggs) [2035123] - audit: improve audit queue handling when "audit=1" on cmdline (Richard Guy Briggs) [2035123] - audit: replace zero-length array with flexible-array member (Richard Guy Briggs) [2035123] - audit: use struct_size() helper in audit_[send|make]_reply() (Richard Guy Briggs) [2035123] - audit: ensure userspace is penalized the same as the kernel when under pressure (Richard Guy Briggs) [2035123] - audit: use struct_size() helper in kmalloc() (Richard Guy Briggs) [2035123] - audit: improve robustness of the audit queue handling (Richard Guy Briggs) [2035123] - audit: return early if the filter rule has a lower priority (Richard Guy Briggs) [2035123] - lsm_audit: avoid overloading the "key" audit field (Richard Guy Briggs) [2035123] - audit: Convert to SPDX identifier (Richard Guy Briggs) [2035123] - audit: rename struct node to struct audit_node to prevent future name collisions (Richard Guy Briggs) [2035123] - audit: prepare audit_context for use in calling contexts beyond syscalls (Richard Guy Briggs) [2035123] - audit: fix possible null-pointer dereference in audit_filter_rules (Richard Guy Briggs) [2035123] - audit: add header protection to kernel/audit.h (Richard Guy Briggs) [2035123] - audit: remove unnecessary 'ret' initialization (Richard Guy Briggs) [2035123] - audit: remove trailing spaces and tabs (Richard Guy Briggs) [2035123] - audit: Use list_move instead of list_del/list_add (Richard Guy Briggs) [2035123] - audit: Rename enum audit_state constants to avoid AUDIT_DISABLED redefinition (Richard Guy Briggs) [2035123] - selftests/bpf: Fix btf_dump test under new clang (Yauheni Kaliuta) [2087050] - perf: Fix sys_perf_event_open() race against self (Michael Petlan) [2087949] - scsi: fnic: Finish scsi_cmnd before dropping the spinlock (John Meneghini) [2062905] - [s390] s390/setup: Fix secure ipl message (Mete Durlu) [2058619] - perf evlist: Fix failed to use cpu list for uncore events (Michael Petlan) [2088835] - perf tools: Enable on a list of CPUs for hybrid (Michael Petlan) [2088835] - perf tools: Create hybrid flag in target (Michael Petlan) [2088835] - libperf: Add perf_cpu_map__default_new() (Michael Petlan) [2088835] - drm/i915: Stop force enabling pipe bottom color gammma/csc (Foggy Liu) [2054487] - blk-mq: fix blk_mq_flush_plug_list (Ming Lei) [2088397] - kernel/resource: move and rename IORESOURCE_MEM_DRIVER_MANAGED (Nico Pache) [2028988] - powerpc/numa: Handle partially initialized numa nodes (Nico Pache) [2028988] - mm: make free_area_init_node aware of memory less nodes (Nico Pache) [2028988] - mm, memory_hotplug: reorganize new pgdat initialization (Nico Pache) [2028988] - mm, memory_hotplug: drop arch_free_nodedata (Nico Pache) [2028988] - mm: handle uninitialized numa nodes gracefully (Nico Pache) [2028988] - mm, memory_hotplug: make arch_alloc_nodedata independent on CONFIG_MEMORY_HOTPLUG (Nico Pache) [2028988] - kexec_file: don't place kexec images on IORESOURCE_MEM_DRIVER_MANAGED (Nico Pache) [2028988] - mm/memory_hotplug: handle memblock_add_node() failures in add_memory_resource() (Nico Pache) [2028988] - mm/memory_hotplug: introduce add_memory_driver_managed() (Nico Pache) [2028988] - mm/memory_hotplug: handle memblocks only with CONFIG_ARCH_KEEP_MEMBLOCK (Nico Pache) [2028988] - mm/memory_hotplug: set node_start_pfn of hotadded pgdat to 0 (Nico Pache) [2028988] - mm/hotplug: reorder memblock_[free|remove]() calls in try_remove_memory() (Nico Pache) [2028988] - mm: memblock: make keeping memblock memory opt-in rather than opt-out (Nico Pache) [2028988] - [s390] s390/cpumf: add new extended counter set for IBM z16 (Mete Durlu) [2047728]- [s390] s390/qdio: clarify logical vs absolute in QIB's kerneldoc (Mete Durlu) [2043836] - [s390] s390/qdio: remove unneeded sanity check in qdio_do_sqbs() (Mete Durlu) [2043836] - [s390] s390/qdio: split do_QDIO() (Mete Durlu) [2043836] - [s390] s390/qdio: split qdio_inspect_queue() (Mete Durlu) [2043836] - [s390] s390/qdio: clarify handler logic for qdio_handle_activate_check() (Mete Durlu) [2043836] - [s390] s390/qdio: clean up access to queue in qdio_handle_activate_check() (Mete Durlu) [2043836] - [s390] s390/qdio: avoid allocating the qdio_irq with GFP_DMA (Mete Durlu) [2043836] - [s390] s390/qdio: improve handling of CIWs (Mete Durlu) [2043836] - [s390] s390/qdio: remove QDIO_SBAL_SIZE macro (Mete Durlu) [2043836] - [s390] scsi: zfcp: fix kernel doc comments (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused support for SLIB parameters (Mete Durlu) [2043836] - [s390] s390/qdio: consolidate QIB code (Mete Durlu) [2043836] - [s390] s390/qdio: use dev_info() in qdio_print_subchannel_info() (Mete Durlu) [2043836] - [s390] s390/qdio: fine-tune the queue sync (Mete Durlu) [2043836] - [s390] s390/qdio: clean up SIGA capability tracking (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused sync-after-IRQ infrastructure (Mete Durlu) [2043836] - [s390] s390/qdio: use absolute data address in ESTABLISH ccw (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused macros (Mete Durlu) [2043836] - [s390] s390/qdio: clarify reporting of errors to the drivers (Mete Durlu) [2043836] - [s390] s390/qdio: remove unneeded siga-sync for Output Queue (Mete Durlu) [2043836] - [s390] s390/qdio: remove remaining tasklet & timer code (Mete Durlu) [2043836] - ice: clear stale Tx queue settings before configuring (Petr Oros) [2079926] - ice: fix crash when writing timestamp on RX rings (Petr Oros) [2079926] - ice: Fix race during aux device (un)plugging (Petr Oros) [2079926] - ice: fix PTP stale Tx timestamps cleanup (Petr Oros) [2079926] - ice: ice_sched: fix an incorrect NULL check on list iterator (Petr Oros) [2079926] - ice: fix use-after-free when deinitializing mailbox snapshot (Petr Oros) [2079926] - ice: wait 5 s for EMP reset after firmware flash (Petr Oros) [2079926] - ice: Protect vf_state check by cfg_lock in ice_vc_process_vf_msg() (Petr Oros) [2079926] - ice: Fix incorrect locking in ice_vc_process_vf_msg() (Petr Oros) [2079926] - ice: Fix memory leak in ice_get_orom_civd_data() (Petr Oros) [2079926] - ice: fix crash in switchdev mode (Petr Oros) [2079926] - Revert "iavf: Fix deadlock occurrence during resetting VF interface" (Petr Oros) [2079926] - ice: arfs: fix use-after-free when freeing @rx_cpu_rmap (Petr Oros) [2079926] - ice: clear cmd_type_offset_bsz for TX rings (Petr Oros) [2079926] - ice: xsk: fix VSI state check in ice_xsk_wakeup() (Petr Oros) [2079926] - ice: synchronize_rcu() when terminating rings (Petr Oros) [2079926] - ice: Do not skip not enabled queues in ice_vc_dis_qs_msg (Petr Oros) [2079926] - ice: Set txq_teid to ICE_INVAL_TEID on ring creation (Petr Oros) [2079926] - ice: Fix broken IFF_ALLMULTI handling (Petr Oros) [2079926] - ice: Fix MAC address setting (Petr Oros) [2079926] - redhat/configs: Remove CONFIG_MFD_INTEL_PMT (Prarit Bhargava) [2058805] - redhat/configs: Add CONFIG_INTEL_VSEC (Prarit Bhargava) [2058805] - platform/x86/intel: Move intel_pmt from MFD to Auxiliary Bus (Prarit Bhargava) [2058805] - PCI: Add #defines for accessing PCIe DVSEC fields (Prarit Bhargava) [2058805] - platform/x86: intel_pmt_telemetry: Ignore zero sized entries (Prarit Bhargava) [2058805] - platform/x86/intel: pmt: Use y instead of objs in Makefile (Prarit Bhargava) [2058805] - platform/x86/intel: Move Intel PMT drivers to new subfolder (Prarit Bhargava) [2058805] - dlm: fix plock invalid read (Alexander Aring) [2053095] - NFS: LOOKUP_DIRECTORY is also ok with symlinks (Scott Mayhew) [2059727] - NFSv4: nfs_atomic_open() can race when looking up a non-regular file (Scott Mayhew) [2059727] - NFSv4: Handle case where the lookup of a directory fails (Scott Mayhew) [2059727] - redhat: always tag non-maintainer builds with .gXXXX (Jarod Wilson) - mm, compaction: fast_find_migrateblock() should return pfn in the target zone (Rafael Aquini) [2067130] - [s390] s390/pci: expose a PCI device's UID as its index (Mete Durlu) [1939916] - [s390] s390/pci: expose UID uniqueness guarantee (Mete Durlu) [1939916] - [s390] s390/pci: Documentation for zPCI (Mete Durlu) [1939916] - powerpc/fadump: print start of preserved area (Diego Domingos) [2075092] - powerpc/fadump: align destination address to pagesize (Diego Domingos) [2075092] - powerpc/fadump: fix PT_LOAD segment for boot memory area (Diego Domingos) [2075092] - dmaengine: idxd: make idxd_wq_enable() return 0 if wq is already enabled (Jerry Snitselaar) [2083414] - dmaengine: idxd: Remove unnecessary synchronize_irq() before free_irq() (Jerry Snitselaar) [2083414] - dmaengine: idxd: add missing callback function to support DMA_INTERRUPT (Jerry Snitselaar) [2083414] - dmaengine: idxd: skip irq free when wq type is not kernel (Jerry Snitselaar) [2083414] - dmaengine: idxd: make idxd_register/unregister_dma_channel() static (Jerry Snitselaar) [2083414] - dmaengine: idxd: remove redudant idxd_wq_disable_cleanup() call (Jerry Snitselaar) [2083414] - dmaengine: idxd: free irq before wq type is reset (Jerry Snitselaar) [2083414] - dmaengine: idxd: fix lockdep warning on device driver removal (Jerry Snitselaar) [2083414] - dmaengine: idxd: Separate user and kernel pasid enabling (Jerry Snitselaar) [2083414] - dmaengine: idxd: refactor wq driver enable/disable operations (Jerry Snitselaar) [2083414] - dmaengine: idxd: move wq irq enabling to after device enable (Jerry Snitselaar) [2083414] - dmaengine: idxd: set max_xfer and max_batch for RO device (Jerry Snitselaar) [2083414] - dmaengine: idxd: Fix the error handling path in idxd_cdev_register() (Jerry Snitselaar) [2083414] - dmaengine: idxd: set DMA_INTERRUPT cap bit (Jerry Snitselaar) [2083414] - dmaengine: add verification of DMA_INTERRUPT capability for dmatest (Jerry Snitselaar) [2083414] - dmaengine: idxd: remove trailing white space on input str for wq name (Jerry Snitselaar) [2083414] - dmaengine: idxd: don't load pasid config until needed (Jerry Snitselaar) [2083414] - dmaengine: idxd: fix retry value to be constant for duration of function call (Jerry Snitselaar) [2075705] - dmaengine: idxd: match type for retries var in idxd_enqcmds() (Jerry Snitselaar) [2075705] - net: mana: Reuse XDP dropped page (Mohammed Gamal) [2086556] - net: mana: Add counter for XDP_TX (Mohammed Gamal) [2086556] - net: mana: Add counter for packet dropped by XDP (Mohammed Gamal) [2086556] - net: mana: Use struct_size() helper in mana_gd_create_dma_region() (Mohammed Gamal) [2086556] - SUNRPC release the transport of a relocated task with an assigned transport (Scott Mayhew) [2023840] - SUNRPC: Do not dereference non-socket transports in sysfs (Scott Mayhew) [2023840] - SUNRPC don't resend a task on an offlined transport (Scott Mayhew) [2023840] - SUNRPC: lock against ->sock changing during sysfs read (Scott Mayhew) [2023840] - SUNRPC: Check if the xprt is connected before handling sysfs reads (Scott Mayhew) [2023840] - SUNRPC: Add dst_port to the sysfs xprt info file (Scott Mayhew) [2023840] - SUNRPC: Add srcaddr as a file in sysfs (Scott Mayhew) [2023840] - sunrpc: Fix return value of get_srcport() (Scott Mayhew) [2023840] - sunrpc: remove an offlined xprt using sysfs (Scott Mayhew) [2023840] - sunrpc: display xprt's queuelen of assigned tasks via sysfs (Scott Mayhew) [2023840] - SUNRPC: take a xprt offline using sysfs (Scott Mayhew) [2023840] - SUNRPC for TCP display xprt's source port in sysfs xprt_info (Scott Mayhew) [2023840] - SUNRPC query transport's source port (Scott Mayhew) [2023840] - SUNRPC display xprt's main value in sysfs's xprt_info (Scott Mayhew) [2023840] - SUNRPC mark the first transport (Scott Mayhew) [2023840] - NFSv4.1 identify and mark RPC tasks that can move between transports (Scott Mayhew) [2023840] - sunrpc: provide showing transport's state info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: provide multipath info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: provide transport info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: add dst_attr attributes to the sysfs xprt directory (Scott Mayhew) [2023840] - sunrpc: add add sysfs directory per xprt under each xprt_switch (Scott Mayhew) [2023840] - sunrpc: add a symlink from rpc-client directory to the xprt_switch (Scott Mayhew) [2023840] - sunrpc: add xprt_switch direcotry to sunrpc's sysfs (Scott Mayhew) [2023840] - sunrpc: keep track of the xprt_class in rpc_xprt structure (Scott Mayhew) [2023840] - sunrpc: add IDs to multipath (Scott Mayhew) [2023840] - sunrpc: add xprt id (Scott Mayhew) [2023840] - sunrpc: Create per-rpc_clnt sysfs kobjects (Scott Mayhew) [2023840] - sunrpc: Create a client/ subdirectory in the sunrpc sysfs (Scott Mayhew) [2023840] - sunrpc: Create a sunrpc directory under /sys/kernel/ (Scott Mayhew) [2023840] - vfs: check fd has read access in kernel_read_file_from_fd() (Ian Kent) [2040615] - SUNRPC: Fix NFSD's request deferral on RDMA transports (Benjamin Coddington) [2090525] - vdpa/mlx5: Use consistent RQT size (Cindy Lu) [2063108] - vdpa/mlx5: add validation for VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET command (Cindy Lu) [2063108] - vdpa/mlx5: should verify CTRL_VQ feature exists for MQ (Cindy Lu) [2063108] - gfs2: Stop using glock holder auto-demotion for now (Andreas Gruenbacher) [2054855] - gfs2: buffered write prefaulting (Andreas Gruenbacher) [2054855] - gfs2: Align read and write chunks to the page cache (Andreas Gruenbacher) [2054855] - gfs2: Pull return value test out of should_fault_in_pages (Andreas Gruenbacher) [2054855] - gfs2: Clean up use of fault_in_iov_iter_{read,write}able (Andreas Gruenbacher) [2054855] - gfs2: Variable rename (Andreas Gruenbacher) [2054855] - gfs2: Fix filesystem block deallocation for short writes (Andreas Gruenbacher) [2054855] - iomap: iomap_write_end cleanup (Andreas Gruenbacher) [2054855] - iomap: iomap_write_failed fix (Andreas Gruenbacher) [2054855] - gfs2: Don't re-check for write past EOF unnecessarily (Andreas Gruenbacher) [2054855] - gfs2: No short reads or writes upon glock contention (Andreas Gruenbacher) [2054855] - fs/iomap: Fix buffered write page prefaulting (Andreas Gruenbacher) [2054855] - generic_perform_write()/iomap_write_actor(): saner logics for short copy (Andreas Gruenbacher) [2054855] - iomap: Convert iomap_write_end types (Andreas Gruenbacher) [2054855] - gfs2: Make sure not to return short direct writes (Andreas Gruenbacher) [2054855] - gfs2: Remove dead code in gfs2_file_read_iter (Andreas Gruenbacher) [2054855] - gfs2: Fix gfs2_file_buffered_write endless loop workaround (Andreas Gruenbacher) [2054855] - gfs2: Minor retry logic cleanup (Andreas Gruenbacher) [2054855] - gfs2: Disable page faults during lockless buffered reads (Andreas Gruenbacher) [2054855] - gfs2: Fix should_fault_in_pages() logic (Andreas Gruenbacher) [2054855] - mm: gup: make fault_in_safe_writeable() use fixup_user_fault() (Andreas Gruenbacher) [2054855] - gfs2: Initialize gh_error in gfs2_glock_nq (Andreas Gruenbacher) [2054855] - gfs2: Switch lock order of inode and iopen glock (Andreas Gruenbacher) [2054855] - gfs2: cancel timed-out glock requests (Andreas Gruenbacher) [2054855] - gfs2: Expect -EBUSY after canceling dlm locking requests (Andreas Gruenbacher) [2054855] - gfs2: gfs2_setattr_size error path fix (Andreas Gruenbacher) [2054855] - gfs2: assign rgrp glock before compute_bitstructs (Bob Peterson) [2054855] - gfs2: Fix gfs2_release for non-writers regression (Bob Peterson) [1955591] - gfs2: gfs2_create_inode rework (Andreas Gruenbacher) [1955591] - gfs2: gfs2_inode_lookup rework (Andreas Gruenbacher) [1955591] - gfs2: gfs2_inode_lookup cleanup (Andreas Gruenbacher) [1955591] - gfs2: Fix remote demote of weak glock holders (Andreas Gruenbacher) [1955591] - gfs2: Fix glock_hash_walk bugs (Andreas Gruenbacher) [1955591] - gfs2: Cancel remote delete work asynchronously (Bob Peterson) [1955591] - gfs2: set glock object after nq (Bob Peterson) [1955591] - gfs2: remove RDF_UPTODATE flag (Bob Peterson) [1955591] - gfs2: Eliminate GIF_INVALID flag (Bob Peterson) [1955591] - gfs2: Fix atomic bug in gfs2_instantiate (Andreas Gruenbacher) [1955591] - gfs2: fix GL_SKIP node_scope problems (Bob Peterson) [1955591] - gfs2: Add some flags missing from glock output (Bob Peterson) [1955591] - gfs2: split glock instantiation off from do_promote (Bob Peterson) [1955591] - gfs2: further simplify do_promote (Bob Peterson) [1955591] - gfs2: re-factor function do_promote (Bob Peterson) [1955591] - gfs2: Remove 'first' trace_gfs2_promote argument (Andreas Gruenbacher) [1955591] - gfs2: change go_lock to go_instantiate (Bob Peterson) [1955591] - gfs2: Switch some BUG_ON to GLOCK_BUG_ON for debug (Bob Peterson) [1955591] - gfs2: move GL_SKIP check from glops to do_promote (Bob Peterson) [1955591] - gfs2: Add GL_SKIP holder flag to dump_holder (Bob Peterson) [1955591] - gfs2: remove redundant check in gfs2_rgrp_go_lock (Bob Peterson) [1955591] - gfs2: Fix mmap + page fault deadlocks for direct I/O (Andreas Gruenbacher) [1955591] - iov_iter: Introduce ITER_IOVEC_FLAG_NOFAULT flag to disable page faults (Andreas Gruenbacher) [1955591] - gup: Introduce FOLL_NOFAULT flag to disable page faults (Andreas Gruenbacher) [1955591] - iomap: Add done_before argument to iomap_dio_rw (Andreas Gruenbacher) [1955591] - iomap: Support partial direct I/O on user copy failures (Andreas Gruenbacher) [1955591] - iomap: Fix iomap_dio_rw return value for user copies (Andreas Gruenbacher) [1955591] - iomap: support reading inline data from non-zero pos (Andreas Gruenbacher) [1955591] - gfs2: Only dereference i->iov when iter_is_iovec(i) (Andreas Gruenbacher) [1955591] - gfs2: Prevent endless loops in gfs2_file_buffered_write (Andreas Gruenbacher) [1955591] - gfs2: Fix mmap + page fault deadlocks for buffered I/O (Andreas Gruenbacher) [1955591] - gfs2: Eliminate ip->i_gh (Andreas Gruenbacher) [1955591] - gfs2: Move the inode glock locking to gfs2_file_buffered_write (Andreas Gruenbacher) [1955591] - gfs2: Fix "Introduce flag for glock holder auto-demotion" (Andreas Gruenbacher) [1955591] - gfs2: Introduce flag for glock holder auto-demotion (Bob Peterson) [1955591] - gfs2: fix scheduling while atomic bug in glocks (Bob Peterson) [1955591] - gfs2: Clean up function may_grant (Andreas Gruenbacher) [1955591] - gfs2: Add wrapper for iomap_file_buffered_write (Andreas Gruenbacher) [1955591] - iov_iter: Introduce fault_in_iov_iter_writeable (Andreas Gruenbacher) [1955591] - iov_iter: Turn iov_iter_fault_in_readable into fault_in_iov_iter_readable (Andreas Gruenbacher) [1955591] - gup: Turn fault_in_pages_{readable,writeable} into fault_in_{readable,writeable} (Andreas Gruenbacher) [1955591] - powerpc/signal64: Don't opencode page prefaulting (Andreas Gruenbacher) [1955591] - sanitize iov_iter_fault_in_readable() (Andreas Gruenbacher) [1955591] - [xarray] iov_iter_fault_in_readable() should do nothing in xarray case (Andreas Gruenbacher) [1955591] - powerpc/kvm: Fix kvm_use_magic_page (Andreas Gruenbacher) [1955591] - iov_iter: Fix iov_iter_get_pages{,_alloc} page fault return value (Andreas Gruenbacher) [1955591] - gfs2: Fix length of holes reported at end-of-file (Andreas Gruenbacher) [1955591] - gfs2: Remove redundant check from gfs2_glock_dq (Bob Peterson) [1955591] - gfs2: release iopen glock early in evict (Bob Peterson) [1955591] - mm: change fault_in_pages_* to have an unsigned size parameter (Andreas Gruenbacher) [1955591] - gfs2: Eliminate vestigial HIF_FIRST (Bob Peterson) [1955591] - iomap: remove the iomap arguments to ->page_{prepare,done} (Andreas Gruenbacher) [1955591] - net: sched: fix use-after-free in tc_new_tfilter() (Ivan Vecera) [2071704]- Bluetooth: virtio_bt: fix memory leak in virtbt_rx_handle() (Gopal Tiwari) [2076180] - powerpc/papr_scm: Fix buffer overflow issue with CONFIG_FORTIFY_SOURCE (Gustavo Walbon) [2069468] - powerpc/papr_scm: Fix build failure when (Gustavo Walbon) [2069468] - drivers/nvdimm: Fix build failure when CONFIG_PERF_EVENTS is not set (Gustavo Walbon) [2069468] - powerpc/papr_scm: Add perf interface support (Gustavo Walbon) [2069468] - drivers/nvdimm: Add perf interface to expose nvdimm performance stats (Gustavo Walbon) [2069468] - drivers/nvdimm: Add nvdimm pmu structure (Gustavo Walbon) [2069468] - mptcp: Fix crash due to tcp_tsorted_anchor was initialized before release skb (Davide Caratti) [2084048] - mptcp: Correctly set DATA_FIN timeout when number of retransmits is large (Davide Caratti) [2084048] - mptcp: add mibs counter for ignored incoming options (Davide Caratti) [2084048] - mptcp: fix race in incoming ADD_ADDR option processing (Davide Caratti) [2084048] - mptcp: netlink: process IPv6 addrs in creating listening sockets (Davide Caratti) [2084048] - mptcp: use delegate action to schedule 3rd ack retrans (Davide Caratti) [2084048] - mptcp: fix delack timer (Davide Caratti) [2084048] - powerpc/module_64: use module_init_section instead of patching names (Jan Stancek) [1985851] - module: check for exit sections in layout_sections() instead of module_init_section() (Jan Stancek) [1985851] - module: treat exit sections the same as init sections when !CONFIG_MODULE_UNLOAD (Jan Stancek) [1985851] - module: allow arch overrides for .exit section names (Jan Stancek) [1985851] - ARM: 8976/1: module: allow arch overrides for .init section names (Jan Stancek) [1985851] - KVM: s390: pv: make use of ultravisor AIV support (Thomas Huth) [2043870] - redhat: Enable VM kselftests (Nico Pache) [1978539] - selftests: vm: Makefile: rename TARGETS to VMTARGETS (Nico Pache) [1978539] - redhat: enable CONFIG_TEST_VMALLOC for vm selftests (Nico Pache) [1978539] - redhat: enable GUP TEST for kselftests (Nico Pache) [1978539] - redhat: Enable HMM test to be used by the kselftest test suite (Nico Pache) [1978539] - selftests/vm/pkeys: fix alloc_random_pkey() to make it really, really random (Nico Pache) [1978539] - selftests/vm: fix display of page size in map_hugetlb (Nico Pache) [1978539] - selftests/vm: fix building protection keys test (Nico Pache) [1978539] - lib/test_vmalloc.c: do not create cpumask_t variable on stack (Nico Pache) [1978539] - vmalloc: add test driver to analyse vmalloc allocator (Nico Pache) [1978539] - vmalloc: export __vmalloc_node_range for CONFIG_TEST_VMALLOC_MODULE (Nico Pache) [1978539] - selftests/vm: add protection_keys_32 / protection_keys_64 to gitignore (Nico Pache) [1978539] - selftests/vm: rename file run_vmtests to run_vmtests.sh (Nico Pache) [1978539] - mm/gup_benchmark: support threading (Nico Pache) [1978539] - selftests/vm: gup_test: test faulting in kernel, and verify pinnable pages (Nico Pache) [1978539] - selftests/vm: gup_test: fix test flag (Nico Pache) [1978539] - selftests/vm: fix out-of-tree build (Nico Pache) [1978539] - selftests/vm: 2x speedup for run_vmtests.sh (Nico Pache) [1978539] - selftests/vm: hmm-tests: remove the libhugetlbfs dependency (Nico Pache) [1978539] - selftests/vm: run_vmtests.sh: update and clean up gup_test invocation (Nico Pache) [1978539] - selftests/vm: gup_test: introduce the dump_pages() sub-test (Nico Pache) [1978539] - selftests/vm: only some gup_test items are really benchmarks (Nico Pache) [1978539] - selftests/vm: minor cleanup: Makefile and gup_test.c (Nico Pache) [1978539] - selftests/vm: rename run_vmtests --> run_vmtests.sh (Nico Pache) [1978539] - selftests/vm: use a common gup_test.h (Nico Pache) [1978539] - mm/gup_benchmark: rename to mm/gup_test (Nico Pache) [1978539] - tools/testing/selftests/vm: fix build error (Nico Pache) [1978539] - selftests: vm: add fragment CONFIG_GUP_BENCHMARK (Nico Pache) [1978539] - selftests/vm: 8x compaction_test speedup (Nico Pache) [1978539] - selftests/vm: fix incorrect gcc invocation in some cases (Nico Pache) [1978539] - selftests/vm: fix false build success on the second and later attempts (Nico Pache) [1978539] - mm/gup: don't permit users to call get_user_pages with FOLL_LONGTERM (Nico Pache) [1978539] - mm/gup_benchmark: use pin_user_pages for FOLL_LONGTERM flag (Nico Pache) [1978539] - mm/gup_benchmark: update the documentation in Kconfig (Nico Pache) [1978539] - khugepaged: selftests: fix timeout condition in wait_for_scan() (Nico Pache) [1978539] - selftests: vm: pkeys: fix multilib builds for x86 (Nico Pache) [1978539] - selftests: vm: pkeys: use the correct page size on powerpc (Nico Pache) [1978539] - selftests/vm/pkeys: override access right definitions on powerpc (Nico Pache) [1978539] - selftests/vm/pkeys: test correct behaviour of pkey-0 (Nico Pache) [1978539] - selftests/vm/pkeys: introduce a sub-page allocator (Nico Pache) [1978539] - selftests/vm/pkeys: detect write violation on a mapped access-denied-key page (Nico Pache) [1978539] - selftests/vm/pkeys: associate key on a mapped page and detect write violation (Nico Pache) [1978539] - selftests/vm/pkeys: associate key on a mapped page and detect access violation (Nico Pache) [1978539] - selftests/vm/pkeys: improve checks to determine pkey support (Nico Pache) [1978539] - selftests/vm/pkeys: fix assertion in test_pkey_alloc_exhaust() (Nico Pache) [1978539] - selftests/vm/pkeys: fix number of reserved powerpc pkeys (Nico Pache) [1978539] - selftests/vm/pkeys: introduce powerpc support (Nico Pache) [1978539] - selftests/vm/pkeys: introduce generic pkey abstractions (Nico Pache) [1978539] - selftests: vm: pkeys: use the correct huge page size (Nico Pache) [1978539] - selftests/vm/pkeys: fix alloc_random_pkey() to make it really random (Nico Pache) [1978539] - selftests/vm/pkeys: fix assertion in pkey_disable_set/clear() (Nico Pache) [1978539] - selftests/vm/pkeys: fix pkey_disable_clear() (Nico Pache) [1978539] - selftests: vm: pkeys: add helpers for pkey bits (Nico Pache) [1978539] - selftests: vm: pkeys: Use sane types for pkey register (Nico Pache) [1978539] - selftests/vm/pkeys: make gcc check arguments of sigsafe_printf() (Nico Pache) [1978539] - selftests/vm/pkeys: move some definitions to arch-specific header (Nico Pache) [1978539] - selftests/vm/pkeys: move generic definitions to header file (Nico Pache) [1978539] - selftests/vm/pkeys: rename all references to pkru to a generic name (Nico Pache) [1978539] - selftests/x86/pkeys: move selftests to arch-neutral directory (Nico Pache) [1978539] - selftests/vm: 10x speedup for hmm-tests (Nico Pache) [1978539] - mm/migrate: add migrate-shared test for migrate_vma_*() (Nico Pache) [1978539] - mm/migrate: optimize migrate_vma_setup() for holes (Nico Pache) [1978539] - lib/test_hmm: use vma_lookup() in dmirror_migrate() (Nico Pache) [1978539] - lib/test_hmm.c: fix an error code in dmirror_allocate_chunk() (Nico Pache) [1978539] - lib/test_hmm.c: remove unused dmirror_zero_page (Nico Pache) [1978539] - mm/memremap_pages: support multiple ranges per invocation (Nico Pache) [1978539] - mm/memremap_pages: convert to 'struct range' (Nico Pache) [1978539] - tools/testing/selftests/vm/hmm-tests.c: use the new SKIP() macro (Nico Pache) [1978539] - mm/hmm/test: use the new migration invalidation (Nico Pache) [1978539] - lib/test_hmm.c: add a flag parameter to migrate_vma (Nico Pache) [1978539] - mm/hmm: add tests for hmm_pfn_to_map_order() (Nico Pache) [1978539] - lib: fix test_hmm.c reference after free (Nico Pache) [1978539] - mm/hmm/test: add selftests for HMM (Nico Pache) [1978539] - mm/hmm/test: add selftest driver for HMM (Nico Pache) [1978539] - mm: convert insert_pfn() to vm_fault_t (Nico Pache) [1978539] - selftests/vm/.gitignore: add mremap_dontunmap (Nico Pache) [1978539] - selftests: vm: Fix 64-bit test builds for powerpc64le (Nico Pache) [1978539] - selftests: vm: Do not override definition of ARCH (Nico Pache) [1978539] - selftests/vm: fix map_hugetlb length used for testing read and write (Nico Pache) [1978539] - selftests/vm: add missed tests in run_vmtests (Nico Pache) [1978539] - selftests: vm: add fragment CONFIG_TEST_VMALLOC (Nico Pache) [1978539] - selftests: vm: Build/Run 64bit tests only on 64bit arch (Nico Pache) [1978539] - selftests: vm: Fix test build failure when built by itself (Nico Pache) [1978539] - selftests: vm: install test_vmalloc.sh for run_vmtests (Nico Pache) [1978539] - tools: mark 'test_vmalloc.sh' executable (Nico Pache) [1978539] - tools/selftest/vm: allow choosing mem size and page size in map_hugetlb (Nico Pache) [1978539] - selftests/vm: add script helper for CONFIG_TEST_VMALLOC_MODULE (Nico Pache) [1978539] - tools/testing/selftests/vm/map_fixed_noreplace.c: add test for MAP_FIXED_NOREPLACE (Nico Pache) [1978539] - tools/testing/selftests/vm/: add MAP_POPULATE test (Nico Pache) [1978539] - xfs: return errors in xfs_fs_sync_fs (Andrey Albershteyn) [2087991] - vfs: make sync_filesystem return errors from ->sync_fs (Andrey Albershteyn) [2087991] - PCI: hv: Remove unused hv_set_msi_entry_from_desc() (Mohammed Gamal) [2086560] - PCI: hv: Avoid the retarget interrupt hypercall in irq_unmask() on ARM64 (Mohammed Gamal) [2086560] - PCI: hv: Fix NUMA node assignment when kernel boots with custom NUMA topology (Mohammed Gamal) [2086560] - PCI: hv: Use PCI_ERROR_RESPONSE to identify config read errors (Mohammed Gamal) [2086560] - vdpa: clean up get_config_size ret value handling (Cindy Lu) [2059841] - vdpa: mlx5: synchronize driver status with CVQ (Jason Wang) [2048009] - vdpa: mlx5: prevent cvq work from hogging CPU (Jason Wang) [2048009] - vdpa/mlx5: Avoid processing works if workqueue was destroyed (Cindy Lu) [2048009] - cpufreq: Cancel policy update work scheduled before freeing (Prarit Bhargava) [2083728] - tcp: fix potential xmit stalls caused by TCP_NOTSENT_LOWAT (Paolo Abeni) [2081411] - tcp: ensure to use the most recently sent skb when filling the rate sample (Paolo Abeni) [2081411] - tcp: make sure treq->af_specific is initialized (Paolo Abeni) [2081411] - tcp: md5: incorrect tcp_header_len for incoming connections (Paolo Abeni) [2081411] - tcp: ensure PMTU updates are processed during fastopen (Paolo Abeni) [2081411] - tcp: add missing tcp_skb_can_collapse() test in tcp_shift_skb_data() (Paolo Abeni) [2081411] - inet: fully convert sk->sk_rx_dst to RCU rules (Paolo Abeni) [2081411] - tcp_cubic: fix spurious Hystart ACK train detections for not-cwnd-limited flows (Paolo Abeni) [2081411]- selftests/bpf/test_xdp_redirect_multi: use temp netns for testing (Felix Maurer) [2017875] - selftests/bpf/xdp_redirect_multi: Limit the tests in netns (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Give tcpdump a chance to terminate cleanly (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Use arping to accurate the arp number (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Put the logs to tmp folder (Jiri Benc) [2017875] - bpf, sockmap: Zap ingress queues after stopping strparser (Jiri Benc) [2017875] - xdp, net: Fix use-after-free in bpf_xdp_link_release (Jiri Benc) [2017875] - doc, af_xdp: Fix bind flags option typo (Jiri Benc) [2017875] - bpf, devmap: Convert remaining READ_ONCE() to rcu_dereference_check() (Jiri Benc) [2017875] - xdp: Move the rxq_info.mem clearing to unreg_mem_model() (Jiri Benc) [2017875] - bpf, sched: Remove unneeded rcu_read_lock() around BPF program invocation (Jiri Benc) [2017875] - xdp: Add proper __rcu annotations to redirect map entries (Jiri Benc) [2017875] - doc: Give XDP as example of non-obvious RCU reader/updater pairing (Jiri Benc) [2017875] - doc: Clarify and expand RCU updaters and corresponding readers (Jiri Benc) [2017875] - bpfilter: Specify the log level for the kmsg message (Jiri Benc) [2017875] - docs, af_xdp: Consistent indentation in examples (Jiri Benc) [2017875] - xsk: Fix missing validation for skb and unaligned mode (Jiri Benc) [2017875] - bpf: Support all gso types in bpf_skb_change_proto() (Jiri Benc) [2017875] - bpf: Do not change gso_size during bpf_skb_change_proto() (Jiri Benc) [2017875] - Revert "bpf: Check for BPF_F_ADJ_ROOM_FIXED_GSO when bpf_skb_change_proto" (Jiri Benc) [2017875] - selftests/bpf: Add xdp_redirect_multi into .gitignore (Jiri Benc) [2017875] - bpf, devmap: Remove drops variable from bq_xmit_all() (Jiri Benc) [2017875] - locking/atomic: net: use linux/atomic.h for xchg & cmpxchg (Jiri Benc) [2017875] - xsk: Use kvcalloc to support large umems (Jiri Benc) [2017875] - selftests/bpf: Add xdp_redirect_multi test (Jiri Benc) [2017875] - sample/bpf: Add xdp_redirect_map_multi for redirect_map broadcast test (Jiri Benc) [2017875] - xdp: Extend xdp_redirect_map with broadcast support (Jiri Benc) [2017875] - bpf: Let bpf_warn_invalid_xdp_action() report more info (Felix Maurer) [2017875] - bpf: Run devmap xdp_prog on flush instead of bulk enqueue (Jiri Benc) [2017875] - skmsg: Remove unused parameters of sk_msg_wait_data() (Jiri Benc) [2017875] - bpf: Use struct_size() in kzalloc() (Jiri Benc) [2017875] - bpf: Check for BPF_F_ADJ_ROOM_FIXED_GSO when bpf_skb_change_proto (Jiri Benc) [2017875] - treewide: Replace zero-length arrays with flexible-array members (Tomas Henzl) [2049660] - scsi: mpi3mr: Bump driver version to 8.0.0.68.0 (Tomas Henzl) [2049660] - scsi: mpi3mr: Update the copyright year (Tomas Henzl) [2049660] - scsi: mpi3mr: Update MPI3 headers (Tomas Henzl) [2049660] - scsi: mpi3mr: Fix formatting problems in some kernel-doc comments (Tomas Henzl) [2049660] - scsi: mpi3mr: Fix some spelling mistakes (Tomas Henzl) [2049660] - scsi: mpi3mr: Bump driver version to 8.0.0.61.0 (Tomas Henzl) [2049660] - scsi: mpi3mr: Add io_uring interface support in I/O-polled mode (Tomas Henzl) [2049660] - scsi: mpi3mr: Print cable mngnt and temp threshold events (Tomas Henzl) [2049660] - scsi: mpi3mr: Support Prepare for Reset event (Tomas Henzl) [2049660] - scsi: mpi3mr: Add Event acknowledgment logic (Tomas Henzl) [2049660] - scsi: mpi3mr: Gracefully handle online FW update operation (Tomas Henzl) [2049660] - scsi: mpi3mr: Detect async reset that occurred in firmware (Tomas Henzl) [2049660] - scsi: mpi3mr: Add IOC reinit function (Tomas Henzl) [2049660] - scsi: mpi3mr: Handle offline FW activation in graceful manner (Tomas Henzl) [2049660] - scsi: mpi3mr: Code refactor of IOC init - part2 (Tomas Henzl) [2049660] - scsi: mpi3mr: Code refactor of IOC init - part1 (Tomas Henzl) [2049660] - scsi: mpi3mr: Fault IOC when internal command gets timeout (Tomas Henzl) [2049660] - scsi: mpi3mr: Display IOC firmware package version (Tomas Henzl) [2049660] - scsi: mpi3mr: Handle unaligned PLL in unmap cmnds (Tomas Henzl) [2049660] - scsi: mpi3mr: Add support for PCIe Managed Switch SES device (Tomas Henzl) [2049660] - [s390] s390/cio: verify the driver availability for path_event call (Mete Durlu) [2058620] - selinux: fix bad cleanup on error in hashtab_duplicate() (Ondrej Mosnacek) [2005890] - selinux: fix race between old and new sidtab (Ondrej Mosnacek) [2005890] - selinux: fix cond_list corruption when changing booleans (Ondrej Mosnacek) [2005890] - selinux: make nslot handling in avtab more robust (Ondrej Mosnacek) [2005890] - selinuxfs: unify policy load error reporting (Ondrej Mosnacek) [2005890] - selinux: fix variable scope issue in live sidtab conversion (Ondrej Mosnacek) [2005890] - selinux: don't log MAC_POLICY_LOAD record on failed policy load (Ondrej Mosnacek) [2005890] - selinux: simplify away security_policydb_len() (Ondrej Mosnacek) [2005890] - selinux: move policy mutex to selinux_state, use in lockdep checks (Ondrej Mosnacek) [2005890] - selinux: fix error handling bugs in security_load_policy() (Ondrej Mosnacek) [2005890] - selinux: convert policy read-write lock to RCU (Ondrej Mosnacek) [2005890] - selinux: Create new booleans and class dirs out of tree (Ondrej Mosnacek) [2005890] - selinux: Standardize string literal usage for selinuxfs directory names (Ondrej Mosnacek) [2005890] - selinux: Refactor selinuxfs directory populating functions (Ondrej Mosnacek) [2005890] - selinux: Create function for selinuxfs directory cleanup (Ondrej Mosnacek) [2005890] - selinux: fix memdup.cocci warnings (Ondrej Mosnacek) [2005890] - selinux: avoid dereferencing the policy prior to initialization (Ondrej Mosnacek) [2005890] - selinux: fix allocation failure check on newpolicy->sidtab (Ondrej Mosnacek) [2005890] - selinux: refactor changing booleans (Ondrej Mosnacek) [2005890] - selinux: move policy commit after updating selinuxfs (Ondrej Mosnacek) [2005890] - selinux: encapsulate policy state, refactor policy load (Ondrej Mosnacek) [2005890] - Revert "selinux: fix deadlock in security_set_bools()" (Ondrej Mosnacek) [2005890] - thunderx nic: mark device as deprecated (Íñigo Huguet) [2060286] - cpufreq: intel_pstate: Add Ice Lake server to out-of-band IDs (Vitaly Kuznetsov) [2091523] - [s390] s390/hypfs: include z/VM guests with access control group set (Mete Durlu) [2058621] - scsi: mpt3sas: Fix a few kernel-doc issues (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix a typo (Tomas Henzl) [2049623] - scsi: mpt3sas: Update driver version to 42.100.00.00 (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix junk chars displayed while printing ChipName (Tomas Henzl) [2049623] - scsi: mpt3sas: Use cached ATA Information VPD page (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix adapter replyPostRegisterIndex declaration (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix event callback log_code value handling (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix ioc->base_readl() use (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix writel() use (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix _ctl_set_task_mid() TaskMID check (Tomas Henzl) [2049623] - scsi: mpt3sas: Fail reset operation if config request timed out (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix use after free in _scsih_expander_node_remove() (Tomas Henzl) [2049623] - scsi: mpt3sas: Page fault in reply q processing (Tomas Henzl) [2049623] - scsi: mpt3sas: Convert to flexible arrays (Tomas Henzl) [2049623] - scsi: mpt3sas: Update persistent trigger pages from sysfs interface (Tomas Henzl) [2049623] - Revert "netfilter: conntrack: tag conntracks picked up in local out hook" (Florian Westphal) [2062870] - Revert "netfilter: nat: force port remap to prevent shadowing well-known ports" (Florian Westphal) [2062870] - drm/amdgpu: vi: disable ASPM on Intel Alder Lake based systems (Michel Dänzer) [2066918] - drm/amd: Use amdgpu_device_should_use_aspm on navi umd pstate switching (Michel Dänzer) [2066918] - drm/amd: Refactor `amdgpu_aspm` to be evaluated per device (Michel Dänzer) [2066918] - drm/amd: Check if ASPM is enabled from PCIe subsystem (Michel Dänzer) [2066918] - [s390] s390/tape: fix timer initialization in tape_std_assign() (Mete Durlu) [2085420] - powerpc/pseries/vas: Use QoS credits from the userspace (Steve Best) [2075174] - thermal: don't make THERMAL_NETLINK 'default y' (Prarit Bhargava) [2040062] - redhat/configs: Add CONFIG_INTEL_HFI_THERMAL (Prarit Bhargava) [2040062] - thermal/drivers/core: Remove module unload code (Prarit Bhargava) [2040062] - thermal: core: Fix TZ_GET_TRIP NULL pointer dereference (Prarit Bhargava) [2040062] - thermal: intel: hfi: INTEL_HFI_THERMAL depends on NET (Prarit Bhargava) [2040062] - thermal: netlink: Fix parameter type of thermal_genl_cpu_capability_event() stub (Prarit Bhargava) [2040062] - thermal: intel: hfi: Notify user space for HFI events (Prarit Bhargava) [2040062] - thermal: netlink: Add a new event to notify CPU capabilities change (Prarit Bhargava) [2040062] - thermal: intel: hfi: Enable notification interrupt (Prarit Bhargava) [2040062] - thermal: intel: hfi: Handle CPU hotplug events (Prarit Bhargava) [2040062] - thermal: intel: hfi: Minimally initialize the Hardware Feedback Interface (Prarit Bhargava) [2040062] - x86/cpu: Add definitions for the Intel Hardware Feedback Interface (Prarit Bhargava) [2040062] - x86/Documentation: Describe the Intel Hardware Feedback Interface (Prarit Bhargava) [2040062] - thermal: intel: Allow processing of HWP interrupt (Prarit Bhargava) [2040062] - x86/thermal: Fix LVT thermal setup for SMI delivery mode (Prarit Bhargava) [2040062] - thermal: Move therm_throt there from x86/mce (Prarit Bhargava) [2040062] - thermal: core: Adding missing nlmsg_free() in thermal_genl_sampling_temp() (Prarit Bhargava) [2040062] - thermal: move to smaller ops wherever possible (Prarit Bhargava) [2040062] - thermal: add small version of ops (Prarit Bhargava) [2040062] - thermal: netlink: Improve the initcall ordering (Prarit Bhargava) [2040062] - thermal: core: remove redundant initialization of variable ret (Prarit Bhargava) [2040062] - thermal: netlink: Fix compilation error when CONFIG_NET=n (Prarit Bhargava) [2040062] - thermal: core: Fix thermal zone lookup by ID (Prarit Bhargava) [2040062] - thermal: core: Get thermal zone by id (Prarit Bhargava) [2040062] - thermal: core: Add helpers to browse the cdev, tz and governor list (Prarit Bhargava) [2040062] - thermal: Remove netlink support (Prarit Bhargava) [2040062] - thermal: core: genetlink support for events/cmd/sampling (Prarit Bhargava) [2040062]- mailbox: pcc: Handle all PCC subtypes correctly in pcc_mbox_irq (Mark Langsdorf) [1997698] - i2c: xgene-slimpro: Fix wrong pointer passed to PTR_ERR() (Mark Langsdorf) [1997698] - ACPI: Make acpi_node_get_parent() local (Mark Langsdorf) [1997698] - ACPI: Get acpi_device's parent from the parent field (Mark Langsdorf) [1997698] - ACPI: PM: Fix device wakeup power reference counting error (Mark Langsdorf) [1997698] - ACPI: video: use platform backlight driver on Xiaomi Mi Pad 2 (Mark Langsdorf) [1997698] - ACPI: video: Drop dmi_system_id.ident settings from video_detect_dmi_table[] (Mark Langsdorf) [1997698] - ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses (Mark Langsdorf) [1997698] - ACPI: EC: Use ec_no_wakeup on HP ZHAN 66 Pro (Mark Langsdorf) [1997698] - ACPI: Add a convenience function to tell a device is in D0 state (Mark Langsdorf) [1997698] - ACPI: scan: Obtain device's desired enumeration power state (Mark Langsdorf) [1997698] - perf: qcom_l2_pmu: ACPI: Use ACPI_COMPANION() directly (Mark Langsdorf) [1997698] - ACPI/PCC: Add maintainer for PCC mailbox driver (Mark Langsdorf) [1997698] - mailbox: pcc: Add support for PCCT extended PCC subspaces(type 3/4) (Mark Langsdorf) [1997698] - mailbox: pcc: Drop handling invalid bit-width in {read,write}_register (Mark Langsdorf) [1997698] - mailbox: pcc: Avoid accessing PCCT table in pcc_send_data and pcc_mbox_irq (Mark Langsdorf) [1997698] - mailbox: pcc: Add PCC register bundle and associated accessor functions (Mark Langsdorf) [1997698] - mailbox: pcc: Rename doorbell ack to platform interrupt ack register (Mark Langsdorf) [1997698] - mailbox: pcc: Use PCC mailbox channel pointer instead of standard (Mark Langsdorf) [1997698] - mailbox: pcc: Add pcc_mbox_chan structure to hold shared memory region info (Mark Langsdorf) [1997698] - mailbox: pcc: Consolidate subspace doorbell register parsing (Mark Langsdorf) [1997698] - mailbox: pcc: Consolidate subspace interrupt information parsing (Mark Langsdorf) [1997698] - mailbox: pcc: Refactor all PCC channel information into a structure (Mark Langsdorf) [1997698] - mailbox: pcc: Fix kernel doc warnings (Mark Langsdorf) [1997698] - ACPI: glue: Use acpi_device_adr() in acpi_find_child_device() (Mark Langsdorf) [1997698] - ACPI: APEI: mark apei_hest_parse() static (Mark Langsdorf) [1997698] - ACPI: APEI: EINJ: Relax platform response timeout to 1 second (Mark Langsdorf) [1997698] - ACPI: resources: Add one more Medion model in IRQ override quirk (Mark Langsdorf) [1997698] - ACPI: AC: Quirk GK45 to skip reading _PSR (Mark Langsdorf) [1997698] - ACPI: PM: sleep: Do not set suspend_ops unnecessarily (Mark Langsdorf) [1997698] - ACPI: PRM: Handle memory allocation and memory remap failure (Mark Langsdorf) [1997698] - ACPI: PRM: Remove unnecessary blank lines (Mark Langsdorf) [1997698] - ACPI: PM: Turn off wakeup power resources on _DSW/_PSW errors (Mark Langsdorf) [1997698] - ACPI: PM: Fix sharing of wakeup power resources (Mark Langsdorf) [1997698] - ACPI: PM: Turn off unused wakeup power resources (Mark Langsdorf) [1997698] - ACPI: PM: Check states of power resources during initialization (Mark Langsdorf) [1997698] - hwmon: (acpi_power_meter) Use acpi_bus_get_acpi_device() (Mark Langsdorf) [1997698] - ACPI: replace snprintf() in "show" functions with sysfs_emit() (Mark Langsdorf) [1997698] - ACPI: LPSS: Use ACPI_COMPANION() directly (Mark Langsdorf) [1997698] - ACPI: battery: Accept charges over the design capacity as full (Mark Langsdorf) [1997698] - ACPICA: Update version to 20210930 (Mark Langsdorf) [1997698] - ACPICA: iASL table disassembler: Added disassembly support for the NHLT ACPI table (Mark Langsdorf) [1997698] - ACPICA: ACPI 6.4 SRAT: add Generic Port Affinity type (Mark Langsdorf) [1997698] - ACPICA: Add support for Windows 2020 _OSI string (Mark Langsdorf) [1997698] - ACPICA: Avoid evaluating methods too early during system resume (Mark Langsdorf) [1997698] - ACPI: processor: idle: fix lockup regression on 32-bit ThinkPad T40 (Mark Langsdorf) [1997698] - ACPI: processor idle: Allow playing dead in C3 state (Mark Langsdorf) [1997698] - ACPI: Kconfig: Fix a typo in Kconfig (Mark Langsdorf) [1997698] - ACPI: PNP: remove duplicated BRI0A49 and BDP3336 entries (Mark Langsdorf) [1997698] - ACPI: resources: Add DMI-based legacy IRQ override quirk (Mark Langsdorf) [1997698] - ACPICA: Add support for MADT online enabled bit (Mark Langsdorf) [1997698] - acpi/arm64: fix next_platform_timer() section mismatch error (Mark Langsdorf) [1997697] - ACPI: PM: Include alternate AMDI0005 id in special behaviour (Mark Langsdorf) [1997697] - MAINTAINERS: Change Rafael's e-mail address (Mark Langsdorf) [1997697] - ACPI: scan: Remove unneeded header linux/nls.h (Mark Langsdorf) [1997697] - ACPI: PM: s2idle: Run both AMD and Microsoft methods if both are supported (Mark Langsdorf) [1997697] - ACPI: power: Drop name from struct acpi_power_resource (Mark Langsdorf) [1997697] - ACPI: power: Use acpi_handle_debug() to print debug messages (Mark Langsdorf) [1997697] - ACPI: button: Add DMI quirk for Lenovo Yoga 9 (14INTL5) (Mark Langsdorf) [1997697] - ACPI: SPCR: Add support for the new 16550-compatible Serial Port Subtype (Mark Langsdorf) [1997697] - ACPI: platform-profile: call sysfs_notify() from platform_profile_store() (Mark Langsdorf) [1997697] - ACPICA: Update version to 20210730 (Mark Langsdorf) [1997697] - ACPICA: Add method name "_DIS" For use with aslmethod.c (Mark Langsdorf) [1997697] - ACPICA: iASL: Fix for WPBT table with no command-line arguments (Mark Langsdorf) [1997697] - ACPICA: Headers: Add new DBG2 Serial Port Subtypes (Mark Langsdorf) [1997697] - ACPICA: Macros should not use a trailing semicolon (Mark Langsdorf) [1997697] - ACPICA: Fix an if statement (add parens) (Mark Langsdorf) [1997697] - ACPICA: iASL: Add support for the AEST table (data compiler) (Mark Langsdorf) [1997697] - clk: fractional-divider: Introduce POWER_OF_TWO_PS flag (Mark Langsdorf) [1997697] - clk: fractional-divider: add explicit big endian support (Mark Langsdorf) [1997697] - clk: gate: add explicit big endian support (Mark Langsdorf) [1997697] - clk: fractional-divider: add CLK_FRAC_DIVIDER_ZERO_BASED flag support (Mark Langsdorf) [1997697] - ACPI: processor: Replace deprecated CPU-hotplug functions (Mark Langsdorf) [1997697] - ABI: sysfs-platform-dptf: Add tables markup to a table (Mark Langsdorf) [1997697] - ACPI: DPTF: Add new PCH FIVR methods (Mark Langsdorf) [1997697] - clk: x86: Rename clk-lpt to more specific clk-lpss-atom (Mark Langsdorf) [1997697] - ACPI: configfs: Make get_header() to return error pointer (Mark Langsdorf) [1997697] - ACPI: configfs: Use sysfs_emit() in "show" functions (Mark Langsdorf) [1997697] - ACPI: glue: Eliminate acpi_platform_notify() (Mark Langsdorf) [1997697] - ACPI: bus: Rename functions to avoid name collision (Mark Langsdorf) [1997697] - ACPI: glue: Change return type of two functions to void (Mark Langsdorf) [1997697] - ACPI: glue: Rearrange acpi_device_notify() (Mark Langsdorf) [1997697] - ACPI: Add LoongArch support for ACPI_PROCESSOR/ACPI_NUMA (Mark Langsdorf) [1997697] - ACPI / PMIC: XPower: optimize MIPI PMIQ sequence I2C-bus accesses (Mark Langsdorf) [1997697] - ACPI / PMIC: XPower: optimize I2C-bus accesses (Mark Langsdorf) [1997697] - stddef: Introduce DECLARE_FLEX_ARRAY() helper (Josef Oskera) [2062594] - Revert "iavf: Fix deadlock occurrence during resetting VF interface" (Ivan Vecera) [2066693] - scsi: core: Fix sbitmap depth in scsi_realloc_sdev_budget_map() (Ewan D. Milne) [2071831] - lib/sbitmap: allocate sb->map via kvzalloc_node (Ewan D. Milne) [2071831] - mm: move kvmalloc-related functions to slab.h (Ewan D. Milne) [2071831] - scsi: core: sd: Add silence_suspend flag to suppress some PM messages (Ewan D. Milne) [2071831] - scsi: scsi_transport_fc: Fix FPIN Link Integrity statistics counters (Ewan D. Milne) [2071831] - sd: call sd_zbc_release_disk before releasing the scsi_device reference (Ewan D. Milne) [2071831] - scsi: core: Reallocate device's budget map on queue depth change (Ewan D. Milne) [2071831] - scsi: sr: Don't use GFP_DMA (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_device_max_queue_depth() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix buffer size of REPORT ZONES command (Ewan D. Milne) [2071831] - scsi: sd_zbc: Clean up sd_zbc_parse_report() setting of wp (Ewan D. Milne) [2071831] - scsi: sd_zbc: Simplify zone full condition check (Ewan D. Milne) [2071831] - scsi: core: Show SCMD_LAST in text form (Ewan D. Milne) [2071831] - scsi: scsi_debug: Zero clear zones at reset write pointer (Ewan D. Milne) [2071831] - scsi: core: sysfs: Fix setting device state to SDEV_RUNNING (Ewan D. Milne) [2071831] - scsi: scsi_debug: Sanity check block descriptor length in resp_mode_select() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix type in min_t to avoid stack OOB (Ewan D. Milne) [2071831] - scsi: core: Simplify control flow in scmd_eh_abort_handler() (Ewan D. Milne) [2071831] - scsi: core: sysfs: Fix hang when device state is set via sysfs (Ewan D. Milne) [2071831] - scsi: scsi_debug: Don't call kcalloc() if size arg is zero (Ewan D. Milne) [2071831] - scsi: sr: Remove duplicate assignment (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix out-of-bound read in resp_report_tgtpgs() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix out-of-bound read in resp_readcap16() (Ewan D. Milne) [2071831] - scsi: sd: Print write through due to no caching mode page as warning (Ewan D. Milne) [2071831] - scsi: sd: Fix crashes in sd_resume_runtime() (Ewan D. Milne) [2071831] - scsi: core: Fix shost->cmd_per_lun calculation in scsi_add_host_with_dma() (Ewan D. Milne) [2071831] - scsi: core: Fix spelling in a source code comment (Ewan D. Milne) [2071831] - scsi: sd: Fix sd_do_mode_sense() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_mode_select() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_mode_sense() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Remove include from scsi_cmnd.h (Ewan D. Milne) [2071831] - scsi: sd_zbc: Support disks with more than 2**32 logical blocks (Ewan D. Milne) [2071831] - scsi: sd: Make sd_spinup_disk() less noisy (Ewan D. Milne) [2071831] - scsi: sr: Fix spelling mistake "does'nt" -> "doesn't" (Ewan D. Milne) [2071831] - scsi: sd_zbc: Ensure buffer size is aligned to SECTOR_SIZE (Ewan D. Milne) [2071831] - scsi: sd: Do not exit sd_spinup_disk() quietly (Ewan D. Milne) [2071831] - scsi: core: Add helper to return number of logical blocks in a request (Ewan D. Milne) [2071831] - scsi: scsi_debug: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: scsi_transport_spi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: scsi_transport_fc: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: sr: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: sd: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: core: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: core: Introduce the scsi_cmd_to_rq() function (Ewan D. Milne) [2071831] - scsi: core: Add BLIST_IGN_MEDIA_CHANGE for Ultra HS-SD/MMC USB card readers (Ewan D. Milne) [2071831] - scsi: sd: REQUEST SENSE for BLIST_IGN_MEDIA_CHANGE devices in runtime_resume() (Ewan D. Milne) [2071831] - scsi: core: Add new flag BLIST_IGN_MEDIA_CHANGE (Ewan D. Milne) [2071831] - scsi: scsi_debug: Improve RDPROTECT/WRPROTECT handling (Ewan D. Milne) [2071831] - scsi: scsi_debug: Remove dump_sector() (Ewan D. Milne) [2071831] - scsi: core: Add scsi_prot_ref_tag() helper (Ewan D. Milne) [2071831] - scsi: core: Add scsi_msg_to_host_byte() (Ewan D. Milne) [2071831] - scsi: core: Add get_{status,host}_byte() accessor functions (Ewan D. Milne) [2071831] - scsi: core: Cap scsi_host cmd_per_lun at can_queue (Ewan D. Milne) [2071831] - scsi: Fix spelling mistakes in header files (Ewan D. Milne) [2071831] - scsi: core: Treat device offline as a failure (Ewan D. Milne) [2071831] - sched/topology: Skip updating masks for non-online nodes (Diego Domingos) [1946251] - powerpc/numa: Update cpu_cpu_map on CPU online/offline (Diego Domingos) [1946251] - powerpc/numa: Print debug statements only when required (Diego Domingos) [1946251] - powerpc/numa: convert printk to pr_xxx (Diego Domingos) [1946251] - powerpc/numa: Drop dbg in favour of pr_debug (Diego Domingos) [1946251] - livepatch: Fix missing unlock on error in klp_enable_patch() (Julia Denham) [2069340] - livepatch: Fix kobject refcount bug on klp_init_patch_early failure path (Julia Denham) [2069340] - Documentation: livepatch: Add livepatch API page (Julia Denham) [2069340] - scsi: megaraid_sas: Remove unnecessary memset (Tomas Henzl) [2049686] - scsi: megaraid_sas: Target with invalid LUN ID is deleted during scan (Tomas Henzl) [2049686] - scsi: megasas: Clean up some inconsistent indenting (Tomas Henzl) [2049686] - scsi: megasas: Stop using the SCSI pointer (Tomas Henzl) [2049686] - aarch64: enable memory hotplug (Baoquan He) [1818517] - mm/memory_hotplug: introduce default dummy memory_add_physaddr_to_nid() (Baoquan He) [1818517] - arm64/mm: Add one hunk back missed in earlier back porting (Baoquan He) [1818517] - arm64/mm: Hold memory hotplug lock while walking for kernel page table dump (Baoquan He) [1818517] - ARM64: dump: Convert to use DEFINE_SHOW_ATTRIBUTE macro (Baoquan He) [1818517] - net/mlx5: DR, Ignore modify TTL on RX if device doesn't support it (Amir Tzin) [2072934] - net: bridge: switchdev: check br_vlan_group() return value (Ivan Vecera) [2080332] - net: bridge: mst: Restrict info size queries to bridge ports (Ivan Vecera) [2080332] - net: bridge: mst: prevent NULL deref in br_mst_info_size() (Ivan Vecera) [2080332] - selftests: forwarding: Use same VRF for port and VLAN upper (Ivan Vecera) [2080332] - selftests: forwarding: Disable learning before link up (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to query a port's MST state (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to check if MST is enabled (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to map an MSTI to a VID set (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of MST state changes (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of VLAN MSTI migrations (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of MST mode changes (Ivan Vecera) [2080332] - net: bridge: mst: Support setting and reporting MST port states (Ivan Vecera) [2080332] - net: bridge: mst: Allow changing a VLAN's MSTI (Ivan Vecera) [2080332] - net: bridge: mst: Multiple Spanning Tree (MST) mode (Ivan Vecera) [2080332] - net: switchdev: remove lag_mod_cb from switchdev_handle_fdb_event_to_device (Ivan Vecera) [2080332] - selftests: forwarding: tests of locked port feature (Ivan Vecera) [2080332] - net: bridge: Add support for offloading of locked port flag (Ivan Vecera) [2080332] - net: bridge: Add support for bridge port in locked mode (Ivan Vecera) [2080332] - net: switchdev: avoid infinite recursion from LAG to bridge with port object handler (Ivan Vecera) [2080332] - bridge: switch br_net_exit to batch mode (Ivan Vecera) [2080332] - net: bridge: multicast: notify switchdev driver whenever MC processing gets disabled (Ivan Vecera) [2080332] - net: switchdev: introduce switchdev_handle_port_obj_{add,del} for foreign interfaces (Ivan Vecera) [2080332] - net: switchdev: rename switchdev_lower_dev_find to switchdev_lower_dev_find_rcu (Ivan Vecera) [2080332] - net: bridge: switchdev: replay all VLAN groups (Ivan Vecera) [2080332] - net: bridge: make nbp_switchdev_unsync_objs() follow reverse order of sync() (Ivan Vecera) [2080332] - net: bridge: switchdev: differentiate new VLANs from changed ones (Ivan Vecera) [2080332] - net: bridge: vlan: notify switchdev only when something changed (Ivan Vecera) [2080332] - net: bridge: vlan: make __vlan_add_flags react only to PVID and UNTAGGED (Ivan Vecera) [2080332] - net: bridge: vlan: don't notify to switchdev master VLANs without BRENTRY flag (Ivan Vecera) [2080332] - net: bridge: vlan: check early for lack of BRENTRY flag in br_vlan_add_existing (Ivan Vecera) [2080332] - net: bridge: vlan: check for errors from __vlan_del in __vlan_flush (Ivan Vecera) [2080332] - net/switchdev: use struct_size over open coded arithmetic (Ivan Vecera) [2080332] - net: bridge: vlan: fix single net device option dumping (Ivan Vecera) [2080332] - net: bridge: mcast: fix br_multicast_ctx_vlan_global_disabled helper (Ivan Vecera) [2080332] - net: bridge: mcast: add and enforce startup query interval minimum (Ivan Vecera) [2080332] - net: bridge: mcast: add and enforce query interval minimum (Ivan Vecera) [2080332] - netfilter: bridge: add support for pppoe filtering (Ivan Vecera) [2080332] - bridge: use __set_bit in __br_vlan_set_default_pvid (Ivan Vecera) [2080332] - net: bridge: Allow base 16 inputs in sysfs (Ivan Vecera) [2080332] - net/bridge: replace simple_strtoul to kstrtol (Ivan Vecera) [2080332] - net: bridge: Slightly optimize 'find_portno()' (Ivan Vecera) [2080332] - net: bridge: switchdev: fix shim definition for br_switchdev_mdb_notify (Ivan Vecera) [2080332] - net: bridge: switchdev: consistent function naming (Ivan Vecera) [2080332] - net: bridge: mdb: move all switchdev logic to br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: split out the switchdev portion of br_mdb_notify (Ivan Vecera) [2080332] - net: bridge: move br_vlan_replay to br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: provide shim definition for br_vlan_flags (Ivan Vecera) [2080332] - net: switchdev: merge switchdev_handle_fdb_{add,del}_to_device (Ivan Vecera) [2080332] - net: bridge: create a common function for populating switchdev FDB entries (Ivan Vecera) [2080332] - net: bridge: move br_fdb_replay inside br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: reduce indentation level in fdb_create (Ivan Vecera) [2080332] - net: bridge: rename br_fdb_insert to br_fdb_add_local (Ivan Vecera) [2080332] - net: bridge: rename fdb_insert to fdb_add_local (Ivan Vecera) [2080332] - net: bridge: remove fdb_insert forward declaration (Ivan Vecera) [2080332] - net: bridge: remove fdb_notify forward declaration (Ivan Vecera) [2080332] - net: make use of helper netif_is_bridge_master() (Ivan Vecera) [2080332] - net: use eth_hw_addr_set() (Ivan Vecera) [2080332] - net: bridge: Use array_size() helper in copy_to_user() (Ivan Vecera) [2080332] - net/mlx5: DR, Fix missing flow_source when creating multi-destination FW table (Amir Tzin) [2072920] - net/mlx5: DR, Fix slab-out-of-bounds in mlx5_cmd_dr_create_fte (Amir Tzin) [2072920] - ixgbevf: Require large buffers for build_skb on 82599VF (Ken Cox) [2037956] - ixgbevf: Remove useless DMA-32 fallback configuration (Ken Cox) [2037956] - ixgbevf: switch to napi_build_skb() (Ken Cox) [2037956] - ixgbevf: Add support for new mailbox communication between PF and VF (Ken Cox) [2037956] - ixgbevf: Mailbox improvements (Ken Cox) [2037956] - ixgbevf: Add legacy suffix to old API mailbox functions (Ken Cox) [2037956] - ixgbevf: Improve error handling in mailbox (Ken Cox) [2037956] - ixgbevf: Rename MSGTYPE to SUCCESS and FAILURE (Ken Cox) [2037956] - net: ixgbevf: Remove redundant initialization of variable ret_val (Ken Cox) [2037956] - selftests: mptcp: fix diag instability (Hangbin Liu) [2077358] - selftests: mptcp: fix ipv6 routing setup (Hangbin Liu) [2077358] - selftests: mptcp: clean tmp files in simult_flows (Hangbin Liu) [2077358] - selftests: netfilter: fix exit value for nft_concat_range (Hangbin Liu) [2077358] - selftests: netfilter: remove stray bash debug line (Hangbin Liu) [2077358] - selftests: Fix IPv6 address bind tests (Hangbin Liu) [2077358] - selftests: Fix raw socket bind tests with VRF (Hangbin Liu) [2077358] - selftests: net: Correct case name (Hangbin Liu) [2077358] - selftests: pmtu.sh: Kill nettest processes launched in subshell. (Hangbin Liu) [2077358] - selftests: pmtu.sh: Kill tcpdump processes launched by subshell. (Hangbin Liu) [2077358] - selftests: net: Fix a typo in udpgro_fwd.sh (Hangbin Liu) [2077358] - selftests/net: udpgso_bench_tx: fix dst ip argument (Hangbin Liu) [2077358] - selftests/net: udpgso_bench_rx: fix port argument (Hangbin Liu) [2077358] - selftests: net: tls: remove unused variable and code (Hangbin Liu) [2077358] - selftest: net: fix typo in altname test (Hangbin Liu) [2077358]- net/mlx5: DR, Fix the threshold that defines when pool sync is initiated (Amir Tzin) [2062715] - net/mlx5: DR, Cache STE shadow memory (Amir Tzin) [2062715] - perf/x86/intel/lbr: Add static_branch for LBR INFO flags (Michael Petlan) [2039998] - perf/x86/intel/lbr: Support LBR format V7 (Michael Petlan) [2039998] - net/mlx5e: TC, fix decap fallback to uplink when int port not supported (Amir Tzin) [2077048] - net/mlx5e: Fix wrong source vport matching on tunnel rule (Amir Tzin) [2064589] - hv_balloon: rate-limit "Unhandled message" warning (Vitaly Kuznetsov) [2087270] - tcp: drop the hash_32() part from the index calculation (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: increase source port perturb table to 2^16 (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: dynamically allocate the perturb table used by source ports (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: add small random increments to the source port (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: resalt the secret every 10 seconds (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: use different parts of the port_offset for index and offset (Guillaume Nault) [2064876] {CVE-2022-1012} - secure_seq: use the 64 bits of the siphash for port offset calculation (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: add some entropy in __inet_hash_connect() (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: change source port randomizarion at connect() time (Guillaume Nault) [2064876] {CVE-2022-1012} - net/mlx5e: TC, Skip redundant ct clear actions (Amir Tzin) [2055590] - spi: pxa2xx: Add support for Intel Raptor Lake PCH-S (Prarit Bhargava) [2040031] - mfd: intel-lpss: Add Intel Raptor Lake PCH-S PCI IDs (Prarit Bhargava) [2040031] - pinctrl: alderlake: Add Raptor Lake-S ACPI ID (Prarit Bhargava) [2040033] - i2c: i801: Add support for Intel Raptor Lake PCH-S (Prarit Bhargava) [2040027 2040029] - redhat/configs: Add CONFIG_INTEL_IDXD_PERFMON (Jerry Snitselaar) [1921296] - x86/fpu/xstate: Consolidate size calculations (Jerry Snitselaar) [2071461] - x86/fpu/xstate: Handle supervisor states in XSTATE permissions (Jerry Snitselaar) [2071461] - x86/fpu/xsave: Handle compacted offsets correctly with supervisor states (Jerry Snitselaar) [2071461] - x86/fpu: Cache xfeature flags from CPUID (Jerry Snitselaar) [2071461] - x86/fpu/xsave: Initialize offset/size cache early (Jerry Snitselaar) [2071461] - x86/fpu: Remove unused supervisor only offsets (Jerry Snitselaar) [2071461] - dmaengine: idxd: Change license on idxd.h to LGPL (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix delta_rec and crc size field for completion record (Jerry Snitselaar) [1971892] - dmaengine: idxd: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2072156] - dmaengine: idxd: restore traffic class defaults after wq reset (Jerry Snitselaar) [2046469] - dmaengine: idxd: deprecate token sysfs attributes for read buffers (Jerry Snitselaar) [2040042] - dmaengine: idxd: change bandwidth token to read buffers (Jerry Snitselaar) [2040042] - dmaengine: idxd: fix wq settings post wq disable (Jerry Snitselaar) [2040045] - dmaengine: idxd: change MSIX allocation based on per wq activation (Jerry Snitselaar) [2040495] - edmaengine: idxd: fix descriptor flushing locking (Jerry Snitselaar) [2040495] - dmaengine: idxd: embed irq_entry in idxd_wq struct (Jerry Snitselaar) [2040495] - dmaengine: idxd: fix calling wq quiesce inside spinlock (Jerry Snitselaar) [2040040] - dmaengine: idxd: add knob for enqcmds retries (Jerry Snitselaar) [2040047] - dmaengine: idxd: set defaults for wq configs (Jerry Snitselaar) [2040047] - dmaengine: idxd: handle interrupt handle revoked event (Jerry Snitselaar) [2040051] - dmaengine: idxd: handle invalid interrupt handle descriptors (Jerry Snitselaar) [2040051] - dmaengine: idxd: create locked version of idxd_quiesce() call (Jerry Snitselaar) [2040051] - dmaengine: idxd: add helper for per interrupt handle drain (Jerry Snitselaar) [2040051] - dmaengine: idxd: move interrupt handle assignment (Jerry Snitselaar) [2040051] - dmaengine: idxd: int handle management refactoring (Jerry Snitselaar) [2040051] - dmaengine: idxd: rework descriptor free path on failure (Jerry Snitselaar) [2040051] - dmaengine: idxd: fix missed completion on abort path (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix resource leak on dmaengine driver disable (Jerry Snitselaar) [2040040] - dmaengine: idxd: cleanup completion record allocation (Jerry Snitselaar) [2040040] - dmaengine: idxd: reconfig device after device reset command (Jerry Snitselaar) [2072156] - dmaengine: idxd: add halt interrupt support (Jerry Snitselaar) [2040047] - dmaengine: idxd: Use list_move_tail instead of list_del/list_add_tail (Jerry Snitselaar) [2072156] - dmanegine: idxd: fix resource free ordering on driver removal (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove kernel wq type set when load configuration (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove gen cap field per spec 1.2 update (Jerry Snitselaar) [2040040] - dmaengine: idxd: check GENCAP config support for gencfg register (Jerry Snitselaar) [2040040] - dmaengine: idxd: move out percpu_ref_exit() to ensure it's outside submission (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt disable for dev_lock (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt disable for cmd_lock (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix setting up priv mode for dwq (Jerry Snitselaar) [2040040] - dmaengine: idxd: set descriptor allocation size to threshold for swq (Jerry Snitselaar) [2040040] - dmaengine: idxd: make submit failure path consistent on desc freeing (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt flag for completion list spinlock (Jerry Snitselaar) [2040040] - dmaengine: idxd: make I/O interrupt handler one shot (Jerry Snitselaar) [2040040] - dmaengine: idxd: clear block on fault flag when clear wq (Jerry Snitselaar) [2040040] - dmaengine: idxd: add capability check for 'block on fault' attribute (Jerry Snitselaar) [2040040] - dmaengine: idxd: Remove unused status variable in irq_process_work_list() (Jerry Snitselaar) [2072156] - dmaengine: idxd: Fix a possible NULL pointer dereference (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix abort status check (Jerry Snitselaar) [2040040] - dmanegine: idxd: add software command status (Jerry Snitselaar) [2040047] - dmaengine: idxd: rotate portal address for better performance (Jerry Snitselaar) [2040047] - dmaengine: idxd: fix wq slot allocation index check (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix uninit var for alt_drv (Jerry Snitselaar) [2072156] - dmaengine: idxd: Set defaults for GRPCFG traffic class (Jerry Snitselaar) [2040047] - dmaengine: idxd: remove fault processing code (Jerry Snitselaar) [2040040] - dmaengine: idxd: move dsa_drv support to compatible mode (Jerry Snitselaar) [1971961] - dmaengine: dsa: move dsa_bus_type out of idxd driver to standalone (Jerry Snitselaar) [1971961] - dmaengine: idxd: create user driver for wq 'device' (Jerry Snitselaar) [1971961] - dmaengine: idxd: create dmaengine driver for wq 'device' (Jerry Snitselaar) [1971961] - dmaengine: idxd: create idxd_device sub-driver (Jerry Snitselaar) [1971961] - dmaengine: idxd: add type to driver in order to allow device matching (Jerry Snitselaar) [1971961] - dmanegine: idxd: open code the dsa_drv registration (Jerry Snitselaar) [1971961] - dmaengine: idxd: idxd: move remove() bits for idxd 'struct device' to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: move probe() bits for idxd 'struct device' to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: fix bus_probe() and bus_remove() for dsa_bus (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove iax_bus_type prototype (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove bus shutdown (Jerry Snitselaar) [1971961] - dmaengine: idxd: move wq_disable() to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: move wq_enable() to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove IDXD_DEV_CONF_READY (Jerry Snitselaar) [1971961] - dmaengine: idxd: add 'struct idxd_dev' as wrapper for conf_dev (Jerry Snitselaar) [1971961] - dmaengine: idxd: add driver name (Jerry Snitselaar) [1971961] - dmaengine: idxd: add driver register helper (Jerry Snitselaar) [1971961] - dmaengine: idxd: depends on !UML (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix PCI_MSI build errors (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix submission race window (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix sequence for pci driver remove() and shutdown() (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix setup sequence for MSIXPERM table (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix array index when int_handles are being used (Jerry Snitselaar) [2040040] - dmaengine: idxd: assign MSIX vectors to each WQ rather than roundrobin (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix desc->vector that isn't being updated (Jerry Snitselaar) [2040040] - dmaengine: idxd: add missing percpu ref put on failure (Jerry Snitselaar) [2072156] - dmaengine: idxd: have command status always set (Jerry Snitselaar) [1973882] - dmanegine: idxd: cleanup all device related bits after disabling device (Jerry Snitselaar) [2072156] - dmaengine: idxd: Simplify code and axe the use of a deprecated API (Jerry Snitselaar) [2072156] - dmaengine: idxd: remove devm allocation for idxd->int_handles (Jerry Snitselaar) [2072156] - dmaengine: idxd: Remove redundant variable cdev_ctx (Jerry Snitselaar) [2072156] - dmaengine: idxd: Add missing cleanup for early error out in probe call (Jerry Snitselaar) [1971892] - dmaengine: idxd: Enable IDXD performance monitor support (Jerry Snitselaar) [1921296] - dmaengine: idxd: Add IDXD performance monitor support (Jerry Snitselaar) [1921296] - dmaengine: idxd: device cmd should use dedicated lock (Jerry Snitselaar) [1971892] - dmaengine: idxd: support reporting of halt interrupt (Jerry Snitselaar) [1971890] - dmaengine: idxd: convert sprintf() to sysfs_emit() for all usages (Jerry Snitselaar) [1971890] - dmaengine: idxd: add interrupt handle request and release support (Jerry Snitselaar) [1971890] - dmaengine: idxd: add support for readonly config mode (Jerry Snitselaar) [1971890] - dmaengine: idxd: add percpu_ref to descriptor submission path (Jerry Snitselaar) [1971949] - dmaengine: idxd: remove detection of device type (Jerry Snitselaar) [1971963] - Documentation/x86: Update documentation for SVA (Shared Virtual Addressing) (Jerry Snitselaar) [2071461] - tools/objtool: Check for use of the ENQCMD instruction in the kernel (Jerry Snitselaar) [2071461] - x86/cpufeatures: Re-enable ENQCMD (Jerry Snitselaar) [2071461] - x86/traps: Demand-populate PASID MSR via #GP (Jerry Snitselaar) [2071461] - sched: Define and initialize a flag to identify valid PASID in the task (Jerry Snitselaar) [2071461] - x86/fpu: Clear PASID when copying fpstate (Jerry Snitselaar) [2071461] - iommu/sva: Assign a PASID to mm on PASID allocation and free it on mm exit (Jerry Snitselaar) [2071461] - iommu/ioasid: Introduce a helper to check for valid PASIDs (Jerry Snitselaar) [2071461] - kernel/fork: Initialize mm's PASID (Jerry Snitselaar) [2071461] - mm: Change CONFIG option for mm->pasid field (Jerry Snitselaar) [2071461] - mm/fork: clear PASID for new mm (Jerry Snitselaar) [2071461] - iommu/sva: Rename CONFIG_IOMMU_SVA_LIB to CONFIG_IOMMU_SVA (Jerry Snitselaar) [2071461] - turbostat: fix PC6 displaying on some systems (Steve Best) [2040078]- quota: make dquot_quota_sync return errors from ->sync_fs (Lukas Czerner) [2083057] - redhat: disable more noisy rpminspect tests (Jarod Wilson) - mm: thp: replace the page lock with the seqlock for the THP mapcount (Andrea Arcangeli) [1958020] - mm: do_wp_page: deduplicate smart_lock_page (Andrea Arcangeli) [1958020] - mm: hugetlbfs: gup_must_unshare() cleanup (Andrea Arcangeli) [1958020] - mm: GUP: cleanup FOLL_UNSHARE (Andrea Arcangeli) [1958020] - mm: COW: skip the page lock in the COW copy path (Andrea Arcangeli) [1958020] - mm: gup: gup_must_unshare() use can_read_pin_swap_page() (Andrea Arcangeli) [1958020] - mm: hugetlbfs: gup: gup_must_unshare(): enable hugetlbfs (Andrea Arcangeli) [1958020] - mm: hugetlbfs: FOLL_FAULT_UNSHARE (Andrea Arcangeli) [1958020] - mm: hugetlbfs: COR: copy-on-read fault (Andrea Arcangeli) [1958020] - mm: gup: FOLL_UNSHARE RHEL (Andrea Arcangeli) [1958020] - mm: gup: FOLL_NOUNSHARE: optimize follow_page (Andrea Arcangeli) [1958020] - mm: gup: FOLL_UNSHARE (Andrea Arcangeli) [1958020] - mm: gup: gup_must_unshare() (Andrea Arcangeli) [1958020] - mm: gup: COR: copy-on-read fault (Andrea Arcangeli) [1958020] - mm: thp: introduce page_trans_huge_anon_shared (Andrea Arcangeli) [1958020] - mm: thp: stabilize the THP mapcount in page_remove_anon_compound_rmap (Andrea Arcangeli) [1958020] - mm: thp: make the THP mapcount atomic with a seqlock (Andrea Arcangeli) [1958020] - mm: thp: consolidate mapcount logic on THP split (David Hildenbrand) [1958020] - vmxnet3: Remove useless DMA-32 fallback configuration (Kamal Heib) [2083561] - vmxnet3: fix minimum vectors alloc issue (Kamal Heib) [2083561] - net: vmxnet3: remove multiple false checks in vmxnet3_ethtool.c (Kamal Heib) [2083561] - vmxnet3: do not stop tx queues after netif_device_detach() (Kamal Heib) [2083561] - block: limit request dispatch loop duration (Ming Lei) [2005082] - esp: limit skb_page_frag_refill use to a single page (Sabrina Dubroca) [2062115] {CVE-2022-27666} - esp: Fix possible buffer overflow in ESP transformation (Sabrina Dubroca) [2062115] {CVE-2022-27666} - can: ems_usb: ems_usb_start_xmit(): fix double dev_kfree_skb() in error path (Chris von Recklinghausen) [2080376] {CVE-2022-28390} - NFSD: Deprecate NFS_OFFSET_MAX (Scott Mayhew) [2064216] - NFSD: Fix offset type in I/O trace points (Scott Mayhew) [2064216] - NFSD: COMMIT operations must not return NFS?ERR_INVAL (Scott Mayhew) [2064216] - NFSD: Clamp WRITE offsets (Scott Mayhew) [2064216] - NFSD: Fix NFSv3 SETATTR/CREATE's handling of large file sizes (Scott Mayhew) [2064216] - NFSD: Fix ia_size underflow (Scott Mayhew) [2064216] - NFSD: Fix the behavior of READ near OFFSET_MAX (Scott Mayhew) [2064216] - NFSD: Fix READDIR buffer overflow (Scott Mayhew) [2064216] - nfsd: Fix nsfd startup race (again) (Scott Mayhew) [2064216] - NFS: Add a tracepoint to show the results of nfs_set_cache_invalid() (Scott Mayhew) [2064216] - NFSv42: Don't fail clone() unless the OP_CLONE operation failed (Scott Mayhew) [2064216] - NFSD: Fix exposure in nfsd4_decode_bitmap() (Scott Mayhew) [2064216] - NFSv4: Sanity check the parameters in nfs41_update_target_slotid() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from decode_getattr_*() functions (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_setsecurity (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_fhget() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_add_or_obtain() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_instantiate() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs_setattrres (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_getattr_res (Scott Mayhew) [2064216] - NFS: Remove the f_label from the nfs4_opendata and nfs_openres (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_lookupp_res struct (Scott Mayhew) [2064216] - NFS: Remove the label from the nfs4_lookup_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_link_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_create_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs_entry struct (Scott Mayhew) [2064216] - NFS: Create a new nfs_alloc_fattr_with_label() function (Scott Mayhew) [2064216] - NFS: Always initialise fattr->label in nfs_fattr_alloc() (Scott Mayhew) [2064216] - NFSv4: Remove unnecessary 'minor version' check (Scott Mayhew) [2064216] - NFSv4: Fix potential Oops in decode_op_map() (Scott Mayhew) [2064216] - NFSv4: Ensure decode_compound_hdr() sanity checks the tag (Scott Mayhew) [2064216] - NFS: Don't trace an uninitialised value (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to OFFLOAD_CANCEL (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to CB_OFFLOAD (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to CLONE (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to COPY (Scott Mayhew) [2064216] - NFSv4.2 add tracepoints to FALLOCATE and DEALLOCATE (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to SEEK (Scott Mayhew) [2064216] - nfs4: take a reference on the nfs_client when running FREE_STATEID (Scott Mayhew) [2064216] - NFS: Move NFS protocol display macros to global header (Scott Mayhew) [2064216] - NFS: Move generic FS show macros to global header (Scott Mayhew) [2064216] - SUNRPC: Clean up xs_tcp_setup_sock() (Scott Mayhew) [2064216] - NFSv4: Fix a regression in nfs_set_open_stateid_locked() (Scott Mayhew) [2064216] - NFS: Remove redundant call to __set_page_dirty_nobuffers (Scott Mayhew) [2064216] - NFS: Unexport nfs_probe_fsinfo() (Scott Mayhew) [2064216] - NFS: Call nfs_probe_server() during a fscontext-reconfigure event (Scott Mayhew) [2064216] - NFS: Replace calls to nfs_probe_fsinfo() with nfs_probe_server() (Scott Mayhew) [2064216] - NFS: Move nfs_probe_destination() into the generic client (Scott Mayhew) [2064216] - NFS: Create an nfs4_server_set_init_caps() function (Scott Mayhew) [2064216] - NFS: Remove --> and <-- dprintk call sites (Scott Mayhew) [2064216] - SUNRPC: Trace calls to .rpc_call_done (Scott Mayhew) [2064216] - NFS: Replace dprintk callsites in nfs_readpage(s) (Scott Mayhew) [2064216] - SUNRPC: Use BIT() macro in rpc_show_xprt_state() (Scott Mayhew) [2064216] - SUNRPC: Tracepoints should display tk_pid and cl_clid as a fixed-size field (Scott Mayhew) [2064216] - xprtrdma: Remove rpcrdma_ep::re_implicit_roundup (Scott Mayhew) [2064216] - xprtrdma: Provide a buffer to pad Write chunks of unaligned length (Scott Mayhew) [2064216] - Fix user namespace leak (Scott Mayhew) [2064216] - NFS: Save some space in the inode (Scott Mayhew) [2064216] - NFS: Fix WARN_ON due to unionization of nfs_inode.nrequests (Scott Mayhew) [2064216] - NFSv4: Fixes for nfs4_inode_return_delegation() (Scott Mayhew) [2064216] - NFS: Fix an Oops in pnfs_mark_request_commit() (Scott Mayhew) [2064216] - NFS: Fix up commit deadlocks (Scott Mayhew) [2064216] - NFSD:fix boolreturn.cocci warning (Scott Mayhew) [2064216] - nfsd: update create verifier comment (Scott Mayhew) [2064216] - SUNRPC: Change return value type of .pc_encode (Scott Mayhew) [2064216] - SUNRPC: Replace the "__be32 *p" parameter to .pc_encode (Scott Mayhew) [2064216] - NFSD: Save location of NFSv4 COMPOUND status (Scott Mayhew) [2064216] - SUNRPC: Change return value type of .pc_decode (Scott Mayhew) [2064216] - SUNRPC: Replace the "__be32 *p" parameter to .pc_decode (Scott Mayhew) [2064216] - SUNRPC: De-duplicate .pc_release() call sites (Scott Mayhew) [2064216] - SUNRPC: Simplify the SVC dispatch code path (Scott Mayhew) [2064216] - NFS: Fix deadlocks in nfs_scan_commit_list() (Scott Mayhew) [2064216] - NFS: Instrument i_size_write() (Scott Mayhew) [2064216] - SUNRPC: Per-rpc_clnt task PIDs (Scott Mayhew) [2064216] - NFS: Remove unnecessary TRACE_DEFINE_ENUM()s (Scott Mayhew) [2064216] - SUNRPC: Capture value of xdr_buf::page_base (Scott Mayhew) [2064216] - svcrdma: Split svcrmda_wc_{read,write} tracepoints (Scott Mayhew) [2064216] - svcrdma: Split the svcrdma_wc_send() tracepoint (Scott Mayhew) [2064216] - svcrdma: Split the svcrdma_wc_receive() tracepoint (Scott Mayhew) [2064216] - pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds (Scott Mayhew) [2064216] - NFS: Remove unnecessary page cache invalidations (Scott Mayhew) [2064216] - NFS: Fix dentry verifier races (Scott Mayhew) [2064216] - NFS: Further optimisations for 'ls -l' (Scott Mayhew) [2064216] - NFS: Fix up nfs_readdir_inode_mapping_valid() (Scott Mayhew) [2064216] - NFS: Ignore the directory size when marking for revalidation (Scott Mayhew) [2064216] - NFS: Don't set NFS_INO_DATA_INVAL_DEFER and NFS_INO_INVALID_DATA (Scott Mayhew) [2064216] - NFS: Default change_attr_type to NFS4_CHANGE_TYPE_IS_UNDEFINED (Scott Mayhew) [2064216] - NFSv4: Retrieve ACCESS on open if we're not using NFS4_CREATE_EXCLUSIVE (Scott Mayhew) [2064216] - NFS: Fix a few more clear_bit() instances that need release semantics (Scott Mayhew) [2064216] - SUNRPC: xprt_clear_locked() only needs release memory semantics (Scott Mayhew) [2064216] - SUNRPC: Remove unnecessary memory barriers (Scott Mayhew) [2064216] - SUNRPC: Remove WQ_HIGHPRI from xprtiod (Scott Mayhew) [2064216] - SUNRPC: Add cond_resched() at the appropriate point in __rpc_execute() (Scott Mayhew) [2064216] - SUNRPC: Partial revert of commit 6f9f17287e78 (Scott Mayhew) [2064216] - NFS: Fix up nfs_ctx_key_to_expire() (Scott Mayhew) [2064216] - NFS: Label the dentry with a verifier in nfs_rmdir() and nfs_unlink() (Scott Mayhew) [2064216] - NFS: Label the dentry with a verifier in nfs_link(), nfs_symlink() (Scott Mayhew) [2064216] - NFSD: Have legacy NFSD WRITE decoders use xdr_stream_subsegment() (Scott Mayhew) [2064216] - SUNRPC: xdr_stream_subsegment() must handle non-zero page_bases (Scott Mayhew) [2064216] - NFSD: simplify struct nfsfh (Scott Mayhew) [2064216] - NFSD: drop support for ancient filehandles (Scott Mayhew) [2064216] - NFSD: move filehandle format declarations out of "uapi". (Scott Mayhew) [2064216] - UNRPC: Return specific error code on kmalloc failure (Scott Mayhew) [2064216] - NFSD: Optimize DRC bucket pruning (Scott Mayhew) [2064216] - nfsd: don't alloc under spinlock in rpc_parse_scope_id (Scott Mayhew) [2064216] - NFSD: Keep existing listeners on portlist error (Scott Mayhew) [2064216] - nfs: Fix kerneldoc warning shown up by W=1 (Scott Mayhew) [2064216] - nfsd: back channel stuck in SEQ4_STATUS_CB_PATH_DOWN (Scott Mayhew) [2064216] - NLM: Fix svcxdr_encode_owner() (Scott Mayhew) [2064216] - SUNRPC: improve error response to over-size gss credential (Scott Mayhew) [2064216] - NFS: Always provide aligned buffers to the RPC read layers (Scott Mayhew) [2064216] - NFSv3: Delete duplicate judgement in nfs3_async_handle_jukebox (Scott Mayhew) [2064216] - SUNRPC: Tweak TCP socket shutdown in the RPC client (Scott Mayhew) [2064216] - svcrdma: xpt_bc_xprt is already clear in __svc_rdma_free() (Scott Mayhew) [2064216] - rpc: fix gss_svc_init cleanup on failure (Scott Mayhew) [2064216] - SUNRPC: Add RPC_AUTH_TLS protocol numbers (Scott Mayhew) [2064216] - NFSD: remove vanity comments (Scott Mayhew) [2064216] - svcrdma: Convert rdma->sc_rw_ctxts to llist (Scott Mayhew) [2064216] - svcrdma: Relieve contention on sc_send_lock. (Scott Mayhew) [2064216] - svcrdma: Fewer calls to wake_up() in Send completion handler (Scott Mayhew) [2064216] - NFSD: Use new __string_len C macros for nfsd_clid_class (Scott Mayhew) [2064216] - NFSD: Use new __string_len C macros for the nfs_dirent tracepoint (Scott Mayhew) [2064216] - tracing: Add trace_event helper macros __string_len() and __assign_str_len() (Scott Mayhew) [2064216] - NFSD: Clean up splice actor (Scott Mayhew) [2064216] - NFS: Clean up the synopsis of callback process_op() (Scott Mayhew) [2064216] - NFS: Extract the xdr_init_encode/decode() calls from decode_compound (Scott Mayhew) [2064216] - NFS: Remove unused callback void decoder (Scott Mayhew) [2064216] - NFS: Add a private local dispatcher for NFSv4 callback operations (Scott Mayhew) [2064216] - SUNRPC: Eliminate the RQ_AUTHERR flag (Scott Mayhew) [2064216] - SUNRPC: Set rq_auth_stat in the pg_authenticate() callout (Scott Mayhew) [2064216] - SUNRPC: Add svc_rqst::rq_auth_stat (Scott Mayhew) [2064216] - NFSv4/pNFS: Remove dead code (Scott Mayhew) [2064216] - SUNRPC: Convert rpc_client refcount to use refcount_t (Scott Mayhew) [2064216] - xprtrdma: Eliminate rpcrdma_post_sends() (Scott Mayhew) [2064216] - xprtrdma: Add an xprtrdma_post_send_err tracepoint (Scott Mayhew) [2064216] - xprtrdma: Add xprtrdma_post_recvs_err() tracepoint (Scott Mayhew) [2064216] - xprtrdma: Add an rpcrdma_mr_completion_class (Scott Mayhew) [2064216] - xprtrdma: Don't display r_xprt memory addresses in tracepoints (Scott Mayhew) [2064216] - xprtrdma: Disconnect after an ib_post_send() immediate error (Scott Mayhew) [2064216] - SUNRPC: Record timeout value in xprt_retransmit tracepoint (Scott Mayhew) [2064216] - SUNRPC: xprt_retransmit() displays the the NULL procedure incorrectly (Scott Mayhew) [2064216] - treewide: Add missing semicolons to __assign_str uses (Scott Mayhew) [2064216] - SUNRPC: Remove unneeded TRACE_DEFINE_ENUMs (Scott Mayhew) [2064216] - SUNRPC: Unset RPC_TASK_NO_RETRANS_TIMEOUT for NULL RPCs (Scott Mayhew) [2064216] - SUNRPC: Refactor rpc_ping() (Scott Mayhew) [2064216] - nfsd: fix NULL dereference in nfs3svc_encode_getaclres (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SHARE results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 nlm_res results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 TEST results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 void results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 FREE_ALL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SHARE arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SM_NOTIFY arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 nlm_res arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 UNLOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 CANCEL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 LOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 TEST arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 void arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SHARE results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 nlm_res results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 TEST results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 void results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 FREE_ALL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SHARE arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SM_NOTIFY arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 nlm_res arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 UNLOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 CANCEL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 LOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 TEST arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 void argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Common NLM XDR helpers (Scott Mayhew) [2064216] - lockd: Create a simplified .vs_dispatch method for NLM requests (Scott Mayhew) [2064216] - lockd: Remove stale comments (Scott Mayhew) [2064216] - nfsd: rpc_peeraddr2str needs rcu lock (Scott Mayhew) [2064216] - rpc: remove redundant initialization of variable status (Scott Mayhew) [2064216] - NFSv4: setlease should return EAGAIN if locks are not available (Scott Mayhew) [2064216] - NFS: Avoid duplicate resets of attribute cache timeouts (Scott Mayhew) [2064216] - NFSv4: Fix handling of non-atomic change attrbute updates (Scott Mayhew) [2064216] - NFS: Fix up inode attribute revalidation timeouts (Scott Mayhew) [2064216] - NFSv4: Add support for application leases underpinned by a delegation (Scott Mayhew) [2064216] - NFSv4: Add lease breakpoints in case of a delegation recall or return (Scott Mayhew) [2064216] - NFSv4: Fix delegation return in cases where we have to retry (Scott Mayhew) [2064216] - nfsd: move some commit_metadata()s outside the inode lock (Scott Mayhew) [2064216] - NFSD: Update nfsd_cb_args tracepoint (Scott Mayhew) [2064216] - NFSD: Remove the nfsd_cb_work and nfsd_cb_done tracepoints (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_probe tracepoint (Scott Mayhew) [2064216] - NFSD: Replace the nfsd_deleg_break tracepoint (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_offload tracepoint (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_lm_notify tracepoint (Scott Mayhew) [2064216] - NFSD: Enhance the nfsd_cb_setup tracepoint (Scott Mayhew) [2064216] - NFSD: Remove spurious cb_setup_err tracepoint (Scott Mayhew) [2064216] - NFSD: Adjust cb_shutdown tracepoint (Scott Mayhew) [2064216] - NFSD: Add cb_lost tracepoint (Scott Mayhew) [2064216] - NFSD: Drop TRACE_DEFINE_ENUM for NFSD4_CB_ macros (Scott Mayhew) [2064216] - NFSD: Capture every CB state transition (Scott Mayhew) [2064216] - NFSD: Constify @fh argument of knfsd_fh_hash() (Scott Mayhew) [2064216] - NFSD: Add tracepoints for EXCHANGEID edge cases (Scott Mayhew) [2064216] - NFSD: Add tracepoints for SETCLIENTID edge cases (Scott Mayhew) [2064216] - NFSD: Add a couple more nfsd_clid_expired call sites (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_destroyed tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_reclaim_complete tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_confirmed tracepoint (Scott Mayhew) [2064216] - NFSD: Remove trace_nfsd_clid_inuse_err (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_verf_mismatch tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_cred_mismatch tracepoint (Scott Mayhew) [2064216] - NFSD: Add an RPC authflavor tracepoint display helper (Scott Mayhew) [2064216] - NFS: Ensure the NFS_CAP_SECURITY_LABEL capability is set when appropriate (Scott Mayhew) [2064216] - NFS: Split attribute support out from the server capabilities (Scott Mayhew) [2064216] - NFS: Don't store NFS_INO_REVAL_FORCED (Scott Mayhew) [2064216] - NFSv4: link must update the inode nlink. (Scott Mayhew) [2064216] - NFSv4: nfs4_inc/dec_nlink_locked should also invalidate ctime (Scott Mayhew) [2064216] - NFS: Another inode revalidation improvement (Scott Mayhew) [2064216] - NFS: Use information about the change attribute to optimise updates (Scott Mayhew) [2064216] - NFSv4: Add support for the NFSv4.2 "change_attr_type" attribute (Scott Mayhew) [2064216] - NFS: Simplify cache consistency in nfs_check_inode_attributes() (Scott Mayhew) [2064216] - NFS: Remove a line of code that has no effect in nfs_update_inode() (Scott Mayhew) [2064216] - NFS: Fix up handling of outstanding layoutcommit in nfs_update_inode() (Scott Mayhew) [2064216] - NFS: Separate tracking of file mode cache validity from the uid/gid (Scott Mayhew) [2064216] - NFS: Separate tracking of file nlinks cache validity from the mode/uid/gid (Scott Mayhew) [2064216] - NFSv4: Fix nfs4_bitmap_copy_adjust() (Scott Mayhew) [2064216] - NFS: Don't set NFS_INO_REVAL_PAGECACHE in the inode cache validity (Scott Mayhew) [2064216] - NFS: Replace use of NFS_INO_REVAL_PAGECACHE when checking cache validity (Scott Mayhew) [2064216] - NFS: Add a cache validity flag argument to nfs_revalidate_inode() (Scott Mayhew) [2064216] - NFS: nfs_setattr_update_inode() should clear the suid/sgid bits (Scott Mayhew) [2064216] - NFS: Fix up statx() results (Scott Mayhew) [2064216] - NFS: Don't revalidate attributes that are not being asked for (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv3 ACL encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 SETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 GETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv2 ACL encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL ACCESS result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL GETATTR result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add an xdr_stream-based encoder for NFSv2/3 ACLs (Scott Mayhew) [2064216] - NFSD: Remove unused NFSv2 directory entry encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR entry encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Count bytes instead of pages in the NFSv2 READDIR encoder (Scott Mayhew) [2064216] - NFSD: Add a helper that encodes NFSv3 directory offset cookies (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 STATFS result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READ result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READLINK result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 diropres encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 attrstat encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 stat encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Reduce svc_rqst::rq_pages churn during READDIR operations (Scott Mayhew) [2064216] - NFSD: Remove unused NFSv3 directory entry encoders (Scott Mayhew) [2064216] - NFSD: Update NFSv3 READDIR entry encoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READDIR3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Count bytes instead of pages in the NFSv3 READDIR encoder (Scott Mayhew) [2064216] - NFSD: Add a helper that encodes NFSv3 directory offset cookies (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 COMMIT3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 PATHCONF3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 FSINFO3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 FSSTAT3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 LINK3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 RENAMEv3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 CREATE family of encoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 WRITE3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READ3res encode to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READLINK3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 wccstat result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 LOOKUP3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 ACCESS3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the GETATTR3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Extract the svcxdr_init_encode() helper (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv3 ACL decoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 GETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv2 ACL decoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL ACCESS argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL GETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add an xdr_stream-based decoder for NFSv2/3 ACLs (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Remove argument length checking in nfsd_dispatch() (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SYMLINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 CREATE argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 LINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 RENAME argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update NFSv2 diropargs decoding to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add helper to set up the pages where the dirlist is encoded (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READLINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 WRITE argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READ argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the MKNOD3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the SYMLINK3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the MKDIR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the CREATE3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the SETATTR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the LINK3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the RENAME3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 DIROPargs decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update COMMIT3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update READDIR3args decoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add helper to set up the pages where the dirlist is encoded (Scott Mayhew) [2064216] - NFSD: Fix returned READDIR offset cookie (Scott Mayhew) [2064216] - NFSD: Update READLINK3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update WRITE3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update READ3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update ACCESS3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update GETATTR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - SUNRPC: Move definition of XDR_UNIT (Scott Mayhew) [2064216] - rpcrdma: Capture bytes received in Receive completion tracepoints (Scott Mayhew) [2064216] - NFSD: Restore NFSv4 decoding's SAVEMEM functionality (Scott Mayhew) [2064216] - NFSD: Remove macros that are no longer used (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_compound() (Scott Mayhew) [2064216] - NFSD: Make nfsd4_ops::opnum a u32 (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_listxattrs() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setxattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_xattr_name() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_clone() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_seek() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_offload_status() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_copy() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_fallocate() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_reclaim_complete() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_destroy_clientid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_test_stateid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_sequence() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_secinfo_no_name() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutreturn() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutget() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutcommit() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_getdeviceinfo() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_free_stateid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_destroy_session() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_create_session() (Scott Mayhew) [2064216] - NFSD: Add a helper to decode channel_attrs4 (Scott Mayhew) [2064216] - NFSD: Add a helper to decode nfs_impl_id4 (Scott Mayhew) [2064216] - NFSD: Add a helper to decode state_protect4_a (Scott Mayhew) [2064216] - NFSD: Add a separate decoder for ssv_sp_parms (Scott Mayhew) [2064216] - NFSD: Add a separate decoder to handle state_protect_ops (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_bind_conn_to_session() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_backchannel_ctl() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_cb_sec() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_release_lockowner() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_write() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_verify() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setclientid_confirm() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setclientid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_secinfo() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_renew() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_rename() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_remove() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_readdir() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_read() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_putfh() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open_downgrade() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open_confirm() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open() (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's open_claim4 argument (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_share_deny() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_share_access() (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's openflag4 argument (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's createhow4 argument (Scott Mayhew) [2064216] - NFSD: Add helper to decode NFSv4 verifiers (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lookup() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_locku() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lockt() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lock() (Scott Mayhew) [2064216] - NFSD: Add helper for decoding locker4 (Scott Mayhew) [2064216] - NFSD: Add helpers to decode a clientid4 and an NFSv4 state owner (Scott Mayhew) [2064216] - NFSD: Relocate nfsd4_decode_opaque() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_link() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_getattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_delegreturn() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_create() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_fattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 umask attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 security label attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 time_set attributes (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 owner_group attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 owner attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 mode attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 acl attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 size attribute (Scott Mayhew) [2064216] - NFSD: Change the way the expected length of a fattr4 is checked (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_commit() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_close() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_access() (Scott Mayhew) [2064216] - NFSD: Replace the internals of the READ_BUF() macro (Scott Mayhew) [2064216] - nfsd/nfs3: remove unused macro nfsd3_fhandleres (Scott Mayhew) [2064216] - vt: vt_ioctl: fix race in VT_RESIZEX (Čestmír Kalina) [2068338] - net/mlx5: Bridge, Fix devlink deadlock on net namespace deletion (Amir Tzin) [2055580] - openvswitch: Fix setting ipv6 fields causing hw csum failure (Eelco Chaudron) [1974356]- Fix up versioning for maintainer builds (Jarod Wilson) - powerpc/iommu: Enable remaining IOMMU Pagesizes present in LoPAR (Gustavo Walbon) [1987109] - sizes.h: add SZ_8G/SZ_16G/SZ_32G macros (Gustavo Walbon) [1987109] - x86/cpu: Add Xeon Icelake-D to list of CPUs that support PPIN (Puneet Sethi) [2040336] - dm integrity: fix memory corruption when tag_size is less than digest size (Benjamin Marzinski) [2081775] - sctp: check asoc strreset_chunk in sctp_generate_reconf_event (Xin Long) [2079980] - sctp: Initialize daddr on peeled off socket (Xin Long) [2079980] - sctp: fix kernel-infoleak for SCTP sockets (Xin Long) [2079980] - sctp: do not update transport pathmtu if SPP_PMTUD_ENABLE is not set (Xin Long) [2079980] - dm crypt: fix copy and paste bug in crypt_alloc_req_aead (Benjamin Marzinski) [2073431] - dm crypt: defer decryption to a tasklet if interrupts disabled (Benjamin Marzinski) [2073431] - dm crypt: do not call bio_endio() from the dm-crypt tasklet (Benjamin Marzinski) [2073431] - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq (Benjamin Marzinski) [2073431] - dm crypt: do not wait for backlogged crypto request completion in softirq (Benjamin Marzinski) [2073431] - dm crypt: document new no_workqueue flags (Benjamin Marzinski) [2073431] - dm crypt: add flags to optionally bypass kcryptd workqueues (Benjamin Marzinski) [2073431] - tracing/osnoise: Force quiescent states while tracing (Jerome Marchand) [2069710] - tracing/osnoise: Do not unregister events twice (Jerome Marchand) [2069710] - tracing/osnoise: Make osnoise_main to sleep for microseconds (Jerome Marchand) [2069710] - tracing/osnoise: Properly unhook events if start_per_cpu_kthreads() fails (Jerome Marchand) [2069710] - tracing/osnoise: Make osnoise_instances static (Jerome Marchand) [2069710] - tracing/osnoise: Remove PREEMPT_RT ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Remove STACKTRACE ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Allow multiple instances of the same tracer (Jerome Marchand) [2069710] - tracing/osnoise: Remove TIMERLAT ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Support a list of trace_array *tr (Jerome Marchand) [2069710] - tracing/osnoise: Use start/stop_per_cpu_kthreads() on osnoise_cpus_write() (Jerome Marchand) [2069710] - tracing/osnoise: Split workload start from the tracer start (Jerome Marchand) [2069710] - tracing/osnoise: Improve comments about barrier need for NMI callbacks (Jerome Marchand) [2069710] - tracing/osnoise: Do not follow tracing_cpumask (Jerome Marchand) [2069710] - trace/timerlat: Add migrate-disabled field to the timerlat header (Jerome Marchand) [2069710] - trace/osnoise: Add migrate-disabled field to the osnoise header (Jerome Marchand) [2069710] - tracing/doc: Fix typos on the timerlat tracer documentation (Jerome Marchand) [2069710] - trace/osnoise: Fix an ifdef comment (Jerome Marchand) [2069710] - redhat: indicate HEAD state in tarball/rpm name (Jarod Wilson) - selftest: net: Test IPv4 PMTU exceptions with DSCP and ECN (Guillaume Nault) [2081453] - ipv4: Fix route lookups when handling ICMP redirects and PMTU updates (Guillaume Nault) [2081453] - ipv4: tcp: send zero IPID in SYNACK messages (Guillaume Nault) [2081453] - ipv4: raw: lock the socket in raw_bind() (Guillaume Nault) [2081453] - net/af_packet: add VLAN support for AF_PACKET SOCK_RAW GSO (Hangbin Liu) [2066976] - net/packet: fix packet_sock xmit return value checking (Hangbin Liu) [2066976] - doc/ip-sysctl: add bc_forwarding (Xin Long) [2080486] - net/packet: fix packet_sock xmit return value checking (Xin Long) [2080486] - net: handle ARPHRD_PIMREG in dev_is_mac_header_xmit() (Xin Long) [2080486] - net/packet: fix slab-out-of-bounds access in packet_recvmsg() (Xin Long) [2080486] - veth: fix races around rq->rx_notify_masked (Xin Long) [2080486] - af_packet: fix data-race in packet_setsockopt / packet_setsockopt (Xin Long) [2080486] - ipv4: remove sparse error in ip_neigh_gw4() (Xin Long) [2080486] - af_unix: annote lockless accesses to unix_tot_inflight & gc_in_progress (Xin Long) [2080486] - veth: Do not record rx queue hint in veth_xmit (Xin Long) [2080486] - veth: ensure skb entering GRO are not cloned. (Xin Long) [2080486] - ethtool: Fix link extended state for big endian (Xin Long) [2080486] - ethtool: do not perform operations on net devices being unregistered (Xin Long) [2080486] - ethtool: Add transceiver module extended state (Xin Long) [2080486] - ethtool: runtime-resume netdev parent in ethnl_ops_begin (Xin Long) [2080486] - ethtool: move netif_device_present check from ethnl_parse_header_dev_get to ethnl_ops_begin (Xin Long) [2080486] - ethtool: move implementation of ethnl_ops_begin/complete to netlink.c (Xin Long) [2080486] - net: validate lwtstate->data before returning from skb_tunnel_info() (Xin Long) [2080486]- bnx2x: fix napi API usage sequence (Manish Chopra) [2080659] - netfilter: fix use-after-free in __nf_register_net_hook() (Florian Westphal) [2080272] - netfilter: nf_tables: unregister flowtable hooks on netns exit (Florian Westphal) [2080272] - netfilter: nftables: add helper function to release hooks of one single table (Florian Westphal) [2080272] - netfilter: nft_socket: only do sk lookups when indev is available (Florian Westphal) [2080272] - netfilter: nf_conntrack_tcp: re-init for syn packets only (Florian Westphal) [2080272] - netfilter: nft_set_rbtree: overlap detection with element re-addition after deletion (Florian Westphal) [2080272] - netfilter: nf_tables: fix memory leak during stateful obj update (Florian Westphal) [2080272] - netfilter: nf_conntrack_tcp: preserve liberal flag in tcp options (Florian Westphal) [2080272] - netfilter: ctnetlink: disable helper autoassign (Florian Westphal) [2080272] - netfilter: nft_payload: don't allow th access for fragments (Florian Westphal) [2080272] - netfilter: nft_payload: simplify vlan header handling (Florian Westphal) [2080272] - RDMA/rxe: Change mcg_lock to a _bh lock (Kamal Heib) [2056500] - RDMA/rxe: Do not call dev_mc_add/del() under a spinlock (Kamal Heib) [2056500] - RDMA/rxe: Recheck the MR in when generating a READ reply (Kamal Heib) [2056500] - RDMA/rxe: Fix "Replace mr by rkey in responder resources" (Kamal Heib) [2056500] - RDMA/siw: Fix a condition race issue in MPA request processing (Kamal Heib) [2056500] - RDMA/irdma: Fix possible crash due to NULL netdev in notifier (Kamal Heib) [2056500] - RDMA/irdma: Reduce iWARP QP destroy time (Kamal Heib) [2056500] - RDMA/irdma: Flush iWARP QP if modified to ERR from RTR state (Kamal Heib) [2056500] - RDMA/irdma: Fix deadlock in irdma_cleanup_cm_core() (Kamal Heib) [2056500] - RDMA/hfi1: Fix use-after-free bug for mm struct (Kamal Heib) [2056500] - IB/rdmavt: add lock to call to rvt_error_qp to prevent a race condition (Kamal Heib) [2056500] - IB/cm: Cancel mad on the DREQ event when the state is MRA_REP_RCVD (Kamal Heib) [2056500] - RDMA/nldev: Prevent underflow in nldev_stat_set_counter_dynamic_doit() (Kamal Heib) [2056500] - IB/iser: Fix error flow in case of registration failure (Kamal Heib) [2056500] - IB/iser: Generalize map/unmap dma tasks (Kamal Heib) [2056500] - IB/iser: Use iser_fr_desc as registration context (Kamal Heib) [2056500] - IB/iser: Remove iser_reg_data_sg helper function (Kamal Heib) [2056500] - RDMA/rxe: Use standard names for ref counting (Kamal Heib) [2056500] - RDMA/rxe: Replace red-black trees by xarrays (Kamal Heib) [2056500] - RDMA/rxe: Shorten pool names in rxe_pool.c (Kamal Heib) [2056500] - RDMA/rxe: Move max_elem into rxe_type_info (Kamal Heib) [2056500] - RDMA/rxe: Replace obj by elem in declaration (Kamal Heib) [2056500] - RDMA/rxe: Delete _locked() APIs for pool objects (Kamal Heib) [2056500] - RDMA/rxe: Reverse the sense of RXE_POOL_NO_ALLOC (Kamal Heib) [2056500] - RDMA/rxe: Replace mr by rkey in responder resources (Kamal Heib) [2056500] - RDMA/rxe: Fix ref error in rxe_av.c (Kamal Heib) [2056500] - RDMA/irdma: Add support for address handle re-use (Kamal Heib) [2056500] - Revert "RDMA/core: Fix ib_qp_usecnt_dec() called when error" (Kamal Heib) [2056500] - RDMA/rxe: Remove useless argument for update_state() (Kamal Heib) [2056500] - RDMA/rxe: Change variable and function argument to proper type (Kamal Heib) [2056500] - RDMA/irdma: Prevent some integer underflows (Kamal Heib) [2056500] - RDMA/core: Fix ib_qp_usecnt_dec() called when error (Kamal Heib) [2056500] - IB/hfi1: Allow larger MTU without AIP (Kamal Heib) [2056500] - RDMA/core: Remove unnecessary statements (Kamal Heib) [2056500] - RDMA/irdma: Remove incorrect masking of PD (Kamal Heib) [2056500] - RDMA/irdma: Fix Passthrough mode in VM (Kamal Heib) [2056500] - RDMA/irdma: Fix netdev notifications for vlan's (Kamal Heib) [2056500] - RDMA/irdma: Make irdma_create_mg_ctx return a void (Kamal Heib) [2056500] - RDMA/irdma: Move union irdma_sockaddr to header file (Kamal Heib) [2056500] - RDMA/irdma: Remove the unnecessary variable saddr (Kamal Heib) [2056500] - RDMA/irdma: Use net_type to check network type (Kamal Heib) [2056500] - RDMA/rxe: Cleanup rxe_mcast.c (Kamal Heib) [2056500] - RDMA/rxe: Collect cleanup mca code in a subroutine (Kamal Heib) [2056500] - RDMA/rxe: Collect mca init code in a subroutine (Kamal Heib) [2056500] - RDMA/rxe: Warn if mcast memory is not freed (Kamal Heib) [2056500] - RDMA/irdma: Remove excess error variables (Kamal Heib) [2056500] - RDMA/irdma: Propagate error codes (Kamal Heib) [2056500] - RDMA/irdma: Remove enum irdma_status_code (Kamal Heib) [2056500] - RDMA/ib_srp: Add more documentation (Kamal Heib) [2056500] - IB/cma: Allow XRC INI QPs to set their local ACK timeout (Kamal Heib) [2056500] - RDMA/rxe: Remove mcg from rxe pools (Kamal Heib) [2056500] - RDMA/rxe: Remove key'ed object support (Kamal Heib) [2056500] - RDMA/rxe: Replace pool key by rxe->mcg_tree (Kamal Heib) [2056500] - RDMA/rxe: Replace int num_qp by atomic_t qp_num (Kamal Heib) [2056500] - RDMA/rxe: Replace grp by mcg, mce by mca (Kamal Heib) [2056500] - RDMA/rxe: Use kzmalloc/kfree for mca (Kamal Heib) [2056500] - RDMA/rxe: Move mcg_lock to rxe (Kamal Heib) [2056500] - RDMA/hfi: Replace cpumask_weight with cpumask_empty where appropriate (Kamal Heib) [2056500] - RDMA/irdma: Refactor DCB bits in prep for DSCP support (Kamal Heib) [2056500] - RDMA/opa: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/iser: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/ipoib: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/rxe: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/usnic: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/hfi1: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/core: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/core: Set MR type in ib_reg_user_mr (Kamal Heib) [2056500] - md: Set MD_BROKEN for RAID1 and RAID10 (Nigel Croxon) [2042729] - raid5: introduce MD_BROKEN (Nigel Croxon) [2042729] - RHEL only Changes to support block changes not picked up (Nigel Croxon) [2042729] - md: fix NULL pointer deref with nowait but no mddev->queue (Nigel Croxon) [2042729] - md: use default_groups in kobj_type (Nigel Croxon) [2042729] - md: Move alloc/free acct bioset in to personality (Nigel Croxon) [2042729] - md: fix spelling of "its" (Nigel Croxon) [2042729] - md: raid456 add nowait support (Nigel Croxon) [2042729] - md: raid10 add nowait support (Nigel Croxon) [2042729] - md: raid1 add nowait support (Nigel Croxon) [2042729] - md: add support for REQ_NOWAIT (Nigel Croxon) [2042729] - md/raid5: play nice with PREEMPT_RT (Nigel Croxon) [2042729] - md/raid1: fix missing bitmap update w/o WriteMostly devices (Nigel Croxon) [2042729] - md: fix double free of mddev->private in autorun_array() (Nigel Croxon) [2042729] - md: fix update super 1.0 on rdev size change (Nigel Croxon) [2042729] - raid5-ppl: use swap() to make code cleaner (Nigel Croxon) [2042729] - md/bitmap: don't set max_write_behind if there is no write mostly device (Nigel Croxon) [2042729] - md: update superblock after changing rdev flags in state_store (Nigel Croxon) [2042729] - md: remove unused argument from md_new_event (Nigel Croxon) [2042729] - md/raid5: call roundup_pow_of_two in raid5_run (Nigel Croxon) [2042729] - md/raid1: use rdev in raid1_write_request directly (Nigel Croxon) [2042729] - md/raid1: only allocate write behind bio for WriteMostly device (Nigel Croxon) [2042729] - md: properly unwind when failing to add the kobject in md_alloc (Nigel Croxon) [2042729] - md: extend disks_mutex coverage (Nigel Croxon) [2042729] - md: add the bitmap group to the default groups for the md kobject (Nigel Croxon) [2042729] - md: add error handling support for add_disk() (Nigel Croxon) [2042729] - md: fix a lock order reversal in md_alloc (Nigel Croxon) [2042729] - scsi: qedf: Stop using the SCSI pointer (Nilesh Javali) [2044843] - scsi: qedf: Change context reset messages to ratelimited (Nilesh Javali) [2044843] - scsi: qedf: Fix refcount issue when LOGO is received during TMF (Nilesh Javali) [2044843] - scsi: qedf: Add stag_work to all the vports (Nilesh Javali) [2044843] - scsi: qedf: Fix potential dereference of NULL pointer (Nilesh Javali) [2044843] - eth: fwnode: remove the addr len from mac helpers (Íñigo Huguet) [2069565] - eth: fwnode: change the return type of mac address helpers (Íñigo Huguet) [2069565] - device property: move mac addr helpers to eth.c (Íñigo Huguet) [2069565] - net: thunderx: Use fwnode_get_mac_address() (Íñigo Huguet) [2069565] - qede: confirm skb is allocated before using (Manish Chopra) [2040267] - qed: fix ethtool register dump (Manish Chopra) [2040267] - qed: remove unnecessary memset in qed_init_fw_funcs (Manish Chopra) [2040267] - qed: return status of qed_iov_get_link (Manish Chopra) [2040267] - net: qlogic: check the return value of dma_alloc_coherent() in qed_vf_hw_prepare() (Manish Chopra) [2040267] - qed: validate and restrict untrusted VFs vlan promisc mode (Manish Chopra) [2040267] - qed: display VF trust config (Manish Chopra) [2040267] - qed: prevent a fw assert during device shutdown (Manish Chopra) [2040267] - qed: use msleep() in qed_mcp_cmd() and add qed_mcp_cmd_nosleep() for udelay. (Manish Chopra) [2040267] - qed: Use dma_set_mask_and_coherent() and simplify code (Manish Chopra) [2040267] - qed*: esl priv flag support through ethtool (Manish Chopra) [2040267] - qed*: enhance tx timeout debug info (Manish Chopra) [2040267] - qede: validate non LSO skb length (Manish Chopra) [2040267] - qed: Enhance rammod debug prints to provide pretty details (Manish Chopra) [2040267] - net: qed: fix the array may be out of bound (Manish Chopra) [2040267] - qed: Use the bitmap API to simplify some functions (Manish Chopra) [2040267] - RDMA/qed: Use helper function to set GUIDs (Manish Chopra) [2040267] - net: qed_dev: fix check of true !rc expression (Manish Chopra) [2040267] - net: qed_ptp: fix check of true !rc expression (Manish Chopra) [2040267] - RDMA/qedr: Remove unsupported qedr_resize_cq callback (Manish Chopra) [2040267] - qed: Change the TCP common variable - "iscsi_ooo" (Manish Chopra) [2040267] - qed: Optimize the ll2 ooo flow (Manish Chopra) [2040267] - net: qed_debug: fix check of false (grc_param < 0) expression (Manish Chopra) [2040267] - qed: Fix missing error code in qed_slowpath_start() (Manish Chopra) [2040267] - qed: Fix compilation for CONFIG_QED_SRIOV undefined scenario (Manish Chopra) [2040267] - qed: Initialize debug string array (Manish Chopra) [2040267] - qed: Fix spelling mistake "ctx_bsaed" -> "ctx_based" (Manish Chopra) [2040267] - qed: fix ll2 establishment during load of RDMA driver (Manish Chopra) [2040267] - qed: Update the TCP active termination 2 MSL timer ("TIME_WAIT") (Manish Chopra) [2040267] - qed: Update TCP silly-window-syndrome timeout for iwarp, scsi (Manish Chopra) [2040267] - qed: Update debug related changes (Manish Chopra) [2040267] - qed: Add '_GTT' suffix to the IRO RAM macros (Manish Chopra) [2040267] - qed: Update FW init functions to support FW 8.59.1.0 (Manish Chopra) [2040267] - qed: Use enum as per FW 8.59.1.0 in qed_iro_hsi.h (Manish Chopra) [2040267] - qed: Update qed_hsi.h for fw 8.59.1.0 (Manish Chopra) [2040267] - qed: Update qed_mfw_hsi.h for FW ver 8.59.1.0 (Manish Chopra) [2040267] - qed: Update common_hsi for FW ver 8.59.1.0 (Manish Chopra) [2040267] - qed: Split huge qed_hsi.h header file (Manish Chopra) [2040267] - qed: Remove e4_ and _e4 from FW HSI (Manish Chopra) [2040267] - qed: Fix kernel-doc warnings (Manish Chopra) [2040267] - qed: Don't ignore devlink allocation failures (Manish Chopra) [2040267] - qed: Improve the stack space of filter_config() (Manish Chopra) [2040267] - RDMA/qedr: Move variables reset to qedr_set_common_qp_params() (Manish Chopra) [2040267] - ip_gre, ip6_gre: Fix race condition on o_seqno in collect_md mode (Guillaume Nault) [2081030] - ip6_gre: Make o_seqno start from 0 in native mode (Guillaume Nault) [2081030] - ip_gre: Make o_seqno start from 0 in native mode (Guillaume Nault) [2081030] - ip6_gre: Fix skb_under_panic in __gre6_xmit() (Guillaume Nault) [2081030] - ip6_gre: Avoid updating tunnel->tun_hlen in __gre6_xmit() (Guillaume Nault) [2081030] - ipv6_tunnel: Rate limit warning messages (Guillaume Nault) [2081030] - net: fix up skbs delta_truesize in UDP GRO frag_list (Hangbin Liu) [2082388] - drop_monitor: fix data-race in dropmon_net_event / trace_napi_poll_hit (Hangbin Liu) [2082388] - rtnetlink: make sure to refresh master_dev/m_ops in __rtnl_newlink() (Hangbin Liu) [2082388] - netns: add schedule point in ops_exit_list() (Hangbin Liu) [2082388] - lwtunnel: Validate RTA_ENCAP_TYPE attribute length (Hangbin Liu) [2082388] - net, neigh: clear whole pneigh_entry at alloc time (Hangbin Liu) [2082388] - net: annotate data-races on txq->xmit_lock_owner (Hangbin Liu) [2082388] - sock: fix /proc/net/sockstat underflow in sk_clone_lock() (Hangbin Liu) [2082388] - net: stream: don't purge sk_error_queue in sk_stream_kill_queues() (Hangbin Liu) [2082388] - rtnetlink: fix if_nlmsg_stats_size() under estimation (Hangbin Liu) [2082388] - net: watchdog: hold device global xmit lock during tx disable (Hangbin Liu) [2082388] - torture: Fix incorrectly redirected "exit" in kvm-remote.sh (Waiman Long) [2065993] - rcu: Allow rcu_irq_enter_check_tick() from NMI (Waiman Long) [2065993] - srcu: Early test SRCU polling start (Waiman Long) [2065993] - rcu/nocb: Unify timers (Waiman Long) [2065993] - rcu/nocb: Prepare for fine-grained deferred wakeup (Waiman Long) [2065993] - rcu/nocb: Only cancel nocb timer if not polling (Waiman Long) [2065993] - rcu/nocb: Delete bypass_timer upon nocb_gp wakeup (Waiman Long) [2065993] - rcu/nocb: Cancel nocb_timer upon nocb_gp wakeup (Waiman Long) [2065993] - rcu/nocb: Allow de-offloading rdp leader (Waiman Long) [2065993] - rcu/nocb: Directly call __wake_nocb_gp() from bypass timer (Waiman Long) [2065993] - refscale: Avoid false-positive warnings in ref_scale_reader() (Waiman Long) [2065993] - scftorture: Avoid false-positive warnings in scftorture_invoker() (Waiman Long) [2065993] - rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader() (Waiman Long) [2065993] - rcu-tasks: Don't delete holdouts within trc_inspect_reader() (Waiman Long) [2065993] - rcutorture: Move mem_dump_obj() tests into separate function (Waiman Long) [2065993] - rcu: Remove obsolete rcu_read_unlock() deadlock commentary (Waiman Long) [2065993] - rcu: Improve comments describing RCU read-side critical sections (Waiman Long) [2065993] - rcu: Add missing __releases() annotation (Waiman Long) [2065993] - kvfree_rcu: Fix comments according to current code (Waiman Long) [2065993] - torture: Don't cap remote runs by build-system number of CPUs (Waiman Long) [2065993] - torture: Make kvm-remote.sh account for network failure in pathname checks (Waiman Long) [2065993] - rcu: Create an unrcu_pointer() to remove __rcu from a pointer (Waiman Long) [2065993] - kvfree_rcu: Refactor kfree_rcu_monitor() (Waiman Long) [2065993] - srcu: Fix broken node geometry after early ssp init (Waiman Long) [2065993] - rcu: Point to documentation of ordering guarantees (Waiman Long) [2065993] - rcu: Don't penalize priority boosting when there is nothing to boost (Waiman Long) [2065993] - kvfree_rcu: Use kfree_rcu_monitor() instead of open-coded variant (Waiman Long) [2065993] - kvfree_rcu: Update "monitor_todo" once a batch is started (Waiman Long) [2065993] - kvfree_rcu: Add a bulk-list check when a scheduler is run (Waiman Long) [2065993] - kvfree_rcu: Use [READ/WRITE]_ONCE() macros to access to nr_bkv_objs (Waiman Long) [2065993] - kvfree_rcu: Release a page cache under memory pressure (Waiman Long) [2065993] - rcu: Shrink each possible cpu krcp (Waiman Long) [2065993] - rcu/segcblist: Prevent useless GP start if no CBs to accelerate (Waiman Long) [2065993] - rcutorture: Don't count CPU-stalled time against priority boosting (Waiman Long) [2065993] - rcu: Make rcu_gp_cleanup() be noinline for tracing (Waiman Long) [2065993] - rcutorture: Add BUSTED-BOOST to test RCU priority boosting tests (Waiman Long) [2065993] - srcu: Initialize SRCU after timers (Waiman Long) [2065993] - srcu: Unconditionally embed struct lockdep_map (Waiman Long) [2065993] - rcutorture: Forgive RCU boost failures when CPUs don't pass through QS (Waiman Long) [2065993] - rcutorture: Test start_poll_synchronize_rcu() and poll_state_synchronize_rcu() (Waiman Long) [2065993] - rcu: Provide polling interfaces for Tree RCU grace periods (Waiman Long) [2065993] - rcutorture: Make rcu_torture_boost_failed() check for GP end (Waiman Long) [2065993] - rcutorture: Consolidate rcu_torture_boost() timing and statistics (Waiman Long) [2065993] - rcutorture: Delay-based false positives for RCU priority boosting tests (Waiman Long) [2065993] - rcu: Restrict RCU_STRICT_GRACE_PERIOD to at most four CPUs (Waiman Long) [2065993] - rcu: Make show_rcu_gp_kthreads() dump rcu_node structures blocking GP (Waiman Long) [2065993] - rcu: Add quiescent states and boost states to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - rcu: Make RCU priority boosting work on single-CPU rcu_node structures (Waiman Long) [2065993] - rcu: Reject RCU_LOCKDEP_WARN() false positives (Waiman Long) [2065993] - lockdep: Explicitly flag likely false-positive report (Waiman Long) [2065993] - rcu: Add ->gp_max to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - rcu: Add ->rt_priority and ->gp_start to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - srcu: Remove superfluous sdp->srcu_lock_count zero filling (Waiman Long) [2065993] - srcu: Remove superfluous ssp initialization for early callbacks (Waiman Long) [2065993] - torture: Set kvm.sh language to English (Waiman Long) [2065993] - torture: Correctly fetch number of CPUs for non-English languages (Waiman Long) [2065993] - rcu: Invoke rcu_spawn_core_kthreads() from rcu_spawn_gp_kthread() (Waiman Long) [2065993] - rcutorture: Judge RCU priority boosting on grace periods, not callbacks (Waiman Long) [2065993] - sched,rcutorture: Convert to sched_set_fifo_low() (Waiman Long) [2065993] - rcu: Improve tree.c comments and add code cleanups (Waiman Long) [2065993] - rcu: Abstract out rcu_irq_enter_check_tick() from rcu_nmi_enter() (Waiman Long) [2065993] - rcu: Remove the unused rcu_irq_exit_preempt() function (Waiman Long) [2065993] - torture: Make kvm-find-errors.sh account for kvm-remote.sh (Waiman Long) [2065993] - torture: Make the build machine control N in "make -jN" (Waiman Long) [2065993] - torture: Make kvm.sh use abstracted kvm-end-run-stats.sh (Waiman Long) [2065993] - torture: Abstract end-of-run summary (Waiman Long) [2065993] - rcu: Fix typo in comment: kthead -> kthread (Waiman Long) [2065993] - rcutorture: Abstract read-lock-held checks (Waiman Long) [2065993] - refscale: Add acqrel, lock, and lock-irq (Waiman Long) [2065993] - torture: Add kvm-remote.sh script for distributed rcutorture test runs (Waiman Long) [2065993] - refscale: Allow CPU hotplug to be enabled (Waiman Long) [2065993] - torture: Make kvm-again.sh use "scenarios" rather than "batches" file (Waiman Long) [2065993] - torture: Add "scenarios" option to kvm.sh --dryrun parameter (Waiman Long) [2065993] - rcu-tasks: Add block comment laying out RCU Rude design (Waiman Long) [2065993] - torture: Fix remaining erroneous torture.sh instance of $* (Waiman Long) [2065993] - rcu/tree: Add a trace event for RCU CPU stall warnings (Waiman Long) [2065993] - torture: Fix kvm.sh --datestamp regex check (Waiman Long) [2065993] - rcu: Add explicit barrier() to __rcu_read_unlock() (Waiman Long) [2065993] - rcu-tasks: Add block comment laying out RCU Tasks Trace design (Waiman Long) [2065993] - rcu: Make nocb_nobypass_lim_per_jiffy static (Waiman Long) [2065993] - torture: Consolidate qemu-cmd duration editing into kvm-transform.sh (Waiman Long) [2065993] - torture: Print proper vmlinux path for kvm-again.sh runs (Waiman Long) [2065993] - torture: Make TORTURE_TRUST_MAKE available in kvm-again.sh environment (Waiman Long) [2065993] - docs: Correctly spell Stephen Hemminger's name (Waiman Long) [2065993] - rcu/nocb: Use the rcuog CPU's ->nocb_timer (Waiman Long) [2065993] - rcu/nocb: Move trace_rcu_nocb_wake() calls outside nocb_lock when possible (Waiman Long) [2065993] - rcu/nocb: Remove stale comment above rcu_segcblist_offload() (Waiman Long) [2065993] - rcu/nocb: Disable bypass when CPU isn't completely offloaded (Waiman Long) [2065993] - rcu/nocb: Fix missed nocb_timer requeue (Waiman Long) [2065993] - rcu/nocb: Trigger self-IPI on late deferred wake up before user resume (Waiman Long) [2065993] - torture: Make kvm-transform.sh update jitter commands (Waiman Long) [2065993] - torture: Add --duration argument to kvm-again.sh (Waiman Long) [2065993] - rcu: deprecate "all" option to rcu_nocbs= (Waiman Long) [2065993] - torture: Rename SRCU-t and SRCU-u to avoid lowercase characters (Waiman Long) [2065993] - torture: Add kvm-again.sh to rerun a previous torture-test (Waiman Long) [2065993] - torture: Create a "batches" file for build reuse (Waiman Long) [2065993] - torture: De-capitalize TORTURE_SUITE (Waiman Long) [2065993] - rcuscale: Add kfree_rcu() single-argument scale test (Waiman Long) [2065993] - torture: Make upper-case-only no-dot no-slash scenario names official (Waiman Long) [2065993] - torture: Remove no-mpstat error message (Waiman Long) [2065993] - torture: Record kvm-test-1-run.sh and kvm-test-1-run-qemu.sh PIDs (Waiman Long) [2065993] - torture: Record jitter start/stop commands (Waiman Long) [2065993] - softirq: Don't try waking ksoftirqd before it has been spawned (Waiman Long) [2065993] - torture: Extract kvm-test-1-run-qemu.sh from kvm-test-1-run.sh (Waiman Long) [2065993] - torture: Record TORTURE_KCONFIG_GDB_ARG in qemu-cmd (Waiman Long) [2065993] - torture: Abstract jitter.sh start/stop into scripts (Waiman Long) [2065993] - torture: Reverse jittering and duration parameters for jitter.sh (Waiman Long) [2065993] - torture: Eliminate jitter_pids file (Waiman Long) [2065993] - torture: Use "jittering" file to control jitter.sh execution (Waiman Long) [2065993] - torture: Use file-based protocol to mark batch's runs complete (Waiman Long) [2065993] - torture: Move build/run synchronization files into scenario directories (Waiman Long) [2065993] - torture: Make jitter.sh handle large systems (Waiman Long) [2065993] - torture: Improve readability of the testid.txt file (Waiman Long) [2065993] - torture: Provide bare-metal modprobe-based advice (Waiman Long) [2065993] - kvfree_rcu: Use same set of GFP flags as does single-argument (Waiman Long) [2065993] - kvfree_rcu: Replace __GFP_RETRY_MAYFAIL by __GFP_NORETRY (Waiman Long) [2065993] - torture: Allow 1G of memory for torture.sh kvfree testing (Waiman Long) [2065993] - torture: Do Kconfig analysis only once per scenario (Waiman Long) [2065993] - torture: Compress KASAN vmlinux files (Waiman Long) [2065993] - torture: Add --kcsan-kmake-arg to torture.sh for KCSAN (Waiman Long) [2065993] - torture: Add command and results directory to torture.sh log (Waiman Long) [2065993] - torture: Allow scenarios to be specified to torture.sh (Waiman Long) [2065993] - torture: Drop log.long generation from torture.sh (Waiman Long) [2065993] - torture: Make torture.sh refuse to do zero-length runs (Waiman Long) [2065993] - torture: Make torture.sh throttle VERBOSE_TOROUT_*() for refscale (Waiman Long) [2065993] - torture: Make torture.sh allmodconfig retain and label output (Waiman Long) [2065993] - torture: Create doyesno helper function for torture.sh (Waiman Long) [2065993] - torture: Make torture.sh refscale runs use verbose_batched module parameter (Waiman Long) [2065993] - torture: Make torture.sh rcuscale and refscale deal with allmodconfig (Waiman Long) [2065993] - torture: Enable torture.sh argument checking (Waiman Long) [2065993] - torture: Auto-size SCF and scaling runs based on number of CPUs (Waiman Long) [2065993] - torture: Add "make allmodconfig" to torture.sh (Waiman Long) [2065993] - torture: Remove use of "eval" in torture.sh (Waiman Long) [2065993] - torture: Make torture.sh use common time-duration bash functions (Waiman Long) [2065993] - torture: Add torture.sh torture-everything script (Waiman Long) [2065993] - refscale: Disable verbose torture-test output (Waiman Long) [2065993] - rcuscale: Disable verbose torture-test output (Waiman Long) [2065993] - rcu/nocb: Rename nocb_gp_update_state to nocb_gp_update_state_deoffloading (Waiman Long) [2065993] - rcu/nocb: Avoid confusing double write of rdp->nocb_cb_sleep (Waiman Long) [2065993] - rcu/nocb: Only (re-)initialize segcblist when needed on CPU up (Waiman Long) [2065993] - rcu/nocb: Forbid NOCB toggling on offline CPUs (Waiman Long) [2065993] - rcu/nocb: Comment the reason behind BH disablement on batch processing (Waiman Long) [2065993] - rcu: Make rcu_read_unlock_special() expedite strict grace periods (Waiman Long) [2065993] - rcu-tasks: Rectify kernel-doc for struct rcu_tasks (Waiman Long) [2065993] - rcutorture: Replace rcu_torture_stall string with s (Waiman Long) [2065993] - torture: Replace torture_init_begin string with s (Waiman Long) [2065993] - rcutorture: Use "all" and "N" in "nohz_full" and "rcu_nocbs" (Waiman Long) [2065993] - kvfree_rcu: Make krc_this_cpu_unlock() use raw_spin_unlock_irqrestore() (Waiman Long) [2065993] - kvfree_rcu: Use __GFP_NOMEMALLOC for single-argument kvfree_rcu() (Waiman Long) [2065993] - kvfree_rcu: Directly allocate page for single-argument case (Waiman Long) [2065993] - rcutorture: Fix testing of RCU priority boosting (Waiman Long) [2065993] - rculist: Replace reference to atomic_ops.rst (Waiman Long) [2065993] - rcutorture: Make TREE03 use real-time tree.use_softirq setting (Waiman Long) [2065993] - rcu: Expedite deboost in case of deferred quiescent state (Waiman Long) [2065993] - rcu: Fix CPU-offline trace in rcutree_dying_cpu (Waiman Long) [2065993] - rcu: Remove superfluous rdp fetch (Waiman Long) [2065993] - torturescript: Don't rerun failed rcutorture builds (Waiman Long) [2065993] - rcutorture: Add crude tests for mem_dump_obj() (Waiman Long) [2065993] - mm: Don't build mm_dump_obj() on CONFIG_PRINTK=n kernels (Waiman Long) [2065993] - rcu/nocb: Detect unsafe checks for offloaded rdp (Waiman Long) [2065993] - sched/pelt: Fix attach_entity_load_avg() corner case (Phil Auld) [2056383] - devlink: Clarifies max_macs generic devlink param (Petr Oros) [2076586] - devlink: Add new "event_eq_size" generic device param (Petr Oros) [2076586] - devlink: Add new "io_eq_size" generic device param (Petr Oros) [2076586] - devlink: fix netns refcount leak in devlink_nl_cmd_reload() (Petr Oros) [2076586] - devlink: Simplify devlink resources unregister call (Petr Oros) [2076586] - devlink: Remove misleading internal_flags from health reporter dump (Petr Oros) [2076586] - devlink: Don't throw an error if flash notification sent before devlink visible (Petr Oros) [2076586] - devlink: fix flexible_array.cocci warning (Petr Oros) [2076586] - devlink: expose get/put functions (Petr Oros) [2076586] - devlink: make all symbols GPL-only (Petr Oros) [2076586] - devlink: Simplify internal devlink params implementation (Petr Oros) [2076586] - devlink: Clean not-executed param notifications (Petr Oros) [2076586] - devlink: Delete obsolete parameters publish API (Petr Oros) [2076586] - devlink: Remove extra device_lock assert checks (Petr Oros) [2076586] - devlink: Delete reload enable/disable interface (Petr Oros) [2076586] - devlink: Allow control devlink ops behavior through feature mask (Petr Oros) [2076586] - devlink: Annotate devlink API calls (Petr Oros) [2076586] - devlink: Move netdev_to_devlink helpers to devlink.c (Petr Oros) [2076586] - devlink: Reduce struct devlink exposure (Petr Oros) [2076586] - devlink: report maximum number of snapshots with regions (Petr Oros) [2076586] - devlink: Add missed notifications iterators (Petr Oros) [2076586] - netdevsim: Move devlink registration to be last devlink command (Petr Oros) [2076586] - qed: Move devlink registration to be last devlink command (Petr Oros) [2076586] - ionic: Move devlink registration to be last devlink command (Petr Oros) [2076586] - nfp: Move delink_register to be last command (Petr Oros) [2076586] - mlxsw: core: Register devlink instance last (Petr Oros) [2076586] - net/mlx5: Accept devlink user input after driver initialization complete (Petr Oros) [2076586] - net/mlx4: Move devlink_register to be the last initialization command (Petr Oros) [2076586] - ice: Open devlink when device is ready (Petr Oros) [2076586] - liquidio: Overcome missing device lock protection in init/remove flows (Petr Oros) [2076586] - bnxt_en: Register devlink instance at the end devlink configuration (Petr Oros) [2076586] - devlink: Notify users when objects are accessible (Petr Oros) [2076586] - devlink: Remove single line function obfuscations (Petr Oros) [2076586] - devlink: Delete not used port parameters APIs (Petr Oros) [2076586] - bnxt_en: Properly remove port parameter support (Petr Oros) [2076586] - bnxt_en: Check devlink allocation and registration status (Petr Oros) [2076586] - devlink: Make devlink_register to be void (Petr Oros) [2076586] - devlink: Delete not-used devlink APIs (Petr Oros) [2076586] - devlink: Delete not-used single parameter notification APIs (Petr Oros) [2076586] - devlink: Use xarray to store devlink instances (Petr Oros) [2076586] - devlink: Count struct devlink consumers (Petr Oros) [2076586] - devlink: Remove check of always valid devlink pointer (Petr Oros) [2076586] - devlink: Simplify devlink_pernet_pre_exit call (Petr Oros) [2076586] - devlink: Add APIs to publish, unpublish individual parameter (Petr Oros) [2076586] - devlink: Add API to register and unregister single parameter (Petr Oros) [2076586] - devlink: Create a helper function for one parameter registration (Petr Oros) [2076586] - devlink: Fix port_type_set function pointer check (Petr Oros) [2076586] - devlink: Set device as early as possible (Petr Oros) [2076586] - devlink: Simplify devlink port API calls (Petr Oros) [2076586] - devlink: Allocate devlink directly in requested net namespace (Petr Oros) [2076586] - devlink: Break parameter notification sequence to be before/after unload/load driver (Petr Oros) [2076586] - devlink: Remove duplicated registration check (Petr Oros) [2076586] - net/mlx5: Don't rely on always true registered field (Petr Oros) [2076586] - devlink: Unlock on error in dumpit() (Petr Oros) [2076586] - devlink: Fix some error codes (Petr Oros) [2076586] - net: devlink: Add support for port regions (Petr Oros) [2076586] - netdevsim: Forbid devlink reload when adding or deleting ports (Petr Oros) [2076586] - netdevsim: dev: Initialize FIB module after debugfs (Petr Oros) [2076586] - pidfd: fix a poll race when setting exit_state (Oleg Nesterov) [2044587] - fork: fix pidfd_poll()'s return type (Oleg Nesterov) [2044587] - pidfd: add polling support (Oleg Nesterov) [2044587] - kabi: introduce the kabi_aux_*() helpers (Oleg Nesterov) [2044587] - tg3: Remove redundant assignments (Ken Cox) [2043792] - ethernet: Remove redundant statement (Ken Cox) [2043792] - ethernet: tg3: remove direct netdev->dev_addr writes (Ken Cox) [2043792] - net: tg3: fix redundant check of true expression (Ken Cox) [2043792] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2043792] - net: ethernet: Use existing define with polynomial (Ken Cox) [2043792]- scsi: mpt3sas: Fix mpt3sas_check_same_4gb_region() kdoc comment (Tomas Henzl) [2068045] - scsi: mpt3sas: Fix incorrect 4GB boundary check (Tomas Henzl) [2068045] - genirq/affinity: Consider that CPUs on nodes can be unbalanced (Ming Lei) [2074317] - scsi: target: pscsi: Set SCF_TREAT_READ_AS_NORMAL flag only if there is valid data (Maurizio Lombardi) [2074246] - audit: don't deref the syscall args when checking the openat2 open_how::flags (Carlos Maiolino) [2026590] - audit: add OPENAT2 record to list "how" info (Carlos Maiolino) [2026590] - audit: add support for the openat2 syscall (Carlos Maiolino) [2026590] - audit: replace magic audit syscall class numbers with macros (Carlos Maiolino) [2026590] - tools include UAPI: Sync x86's syscalls_64.tbl, generic unistd.h and fcntl.h to pick up openat2 and pidfd_getfd (Carlos Maiolino) [2026590] - open: don't silently ignore unknown O-flags in openat2() (Carlos Maiolino) [2026590] - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT (Carlos Maiolino) [2026590] - open: introduce openat2(2) syscall (Carlos Maiolino) [2026590] - namei: LOOKUP_{IN_ROOT,BENEATH}: permit limited ".." resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_IN_ROOT: chroot-like scoped resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_BENEATH: O_BENEATH-like scoped resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_XDEV: block mountpoint crossing (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_MAGICLINKS: block magic-link resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_SYMLINKS: block symlink resolution (Carlos Maiolino) [2026590] - namei: allow set_root() to produce errors (Carlos Maiolino) [2026590] - namei: allow nd_jump_link() to produce errors (Carlos Maiolino) [2026590] - nsfs: clean-up ns_get_path() signature to return int (Carlos Maiolino) [2026590] - namei: only return -ECHILD from follow_dotdot_rcu() (Carlos Maiolino) [2026590] - make path_init() unconditionally paired with terminate_walk() (Carlos Maiolino) [2026590] - nsfs: unobfuscate (Carlos Maiolino) [2026590] - ASoC: Intel: soc-acpi: add entries in ADL match table (Jaroslav Kysela) [2052011] - nvme-fc: add support for ->map_queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix typos in comments (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.400-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Increase max limit of ql2xnvme_queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Use correct feature type field during RFF_ID processing (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix stuck session of PRLI reject (Nilesh Javali) [2044833] - scsi: qla2xxx: Reduce false trigger to login (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix laggy FC remote port session recovery (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix hang due to session stuck (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix N2N inconsistent PLOGI (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix crash during module load unload test (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix missed DMA unmap for NVMe ls requests (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix loss of NVMe namespaces after driver reload test (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix incorrect reporting of task management failure (Nilesh Javali) [2044833] - scsi: qla2xxx: Use named initializers for q_dev_state (Nilesh Javali) [2044833] - scsi: qla2xxx: Use named initializers for port_[d]state_str (Nilesh Javali) [2044833] - scsi: qla2xxx: Stop using the SCSI pointer (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove unused qla_sess_op_cmd_list from scsi_qla_host_t (Nilesh Javali) [2044833] - scsi: qla2xxx: Add qla2x00_async_done() for async routines (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.300-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Check for firmware dump already collected (Nilesh Javali) [2044833] - scsi: qla2xxx: Add devids and conditionals for 28xx (Nilesh Javali) [2044833] - scsi: qla2xxx: Suppress a kernel complaint in qla_create_qpair() (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix T10 PI tag escape and IP guard options for 28XX adapters (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix clang warning (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix warning for missing error code (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix device reconnect in loop topology (Nilesh Javali) [2044833] - scsi: qla2xxx: Add ql2xnvme_queues module param to configure number of NVMe queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix wrong FDMI data for 64G adapter (Nilesh Javali) [2044833] - scsi: qla2xxx: Add retry for exec firmware (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix scheduling while atomic (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix premature hw access after PCI error (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix warning message due to adisc being flushed (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix stuck session in gpdb (Nilesh Javali) [2044833] - scsi: qla2xxx: Implement ref count for SRB (Nilesh Javali) [2044833] - scsi: qla2xxx: Refactor asynchronous command initialization (Nilesh Javali) [2044833] - scsi: qla2xxx: Synchronize rport dev_loss_tmo setting (Nilesh Javali) [2044833] - scsi: qla2xxx: Format log strings only if needed (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix off by one bug in qla_edif_app_getfcinfo() (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix mailbox direction flags in qla2xxx_get_adapter_id() (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.200-k (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix EDIF bsg (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix inconsistent check of db_flags (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Increase ELS payload (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Reduce connection thrash (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Tweak trace message (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Replace list_for_each_safe with list_for_each_entry_safe (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Flush stale events and msgs on session down (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix app start delay (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix app start fail (Nilesh Javali) [2044833] - scsi: qla2xxx: Turn off target reset during issue_lip (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix gnl list corruption (Nilesh Javali) [2044833] - scsi: qla2xxx: Relogin during fabric disturbance (Nilesh Javali) [2044833] - qla2xxx: add ->map_queues support for nvme (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix unmap of already freed sgl (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix a memory leak in an error path of qla2x00_process_els() (Nilesh Javali) [2044833] - scsi: qla2xxx: Return -ENOMEM if kzalloc() fails (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove a declaration (Nilesh Javali) [2044833] - scsi: target: qla2xxx: Replace enable attr with ops.enable (Nilesh Javali) [2044833] - scsi: qla2xxx: Restore initiator in dual mode (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove redundant initialization of pointer req (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.100-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix use after free in eh_abort path (Nilesh Javali) [2044833] - scsi: qla2xxx: Move heartbeat handling from DPC thread to workqueue (Nilesh Javali) [2044833] - scsi: qla2xxx: Call process_response_queue() in Tx path (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Use link event to wake up app (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix crash in NVMe abort path (Nilesh Javali) [2044833] - scsi: qla2xxx: Check for firmware capability before creating QPair (Nilesh Javali) [2044833] - scsi: qla2xxx: Display 16G only as supported speeds for 3830c card (Nilesh Javali) [2044833] - scsi: qla2xxx: Indicate correct supported speeds for Mezz card (Nilesh Javali) [2044833] - scsi: qla2xxx: Add support for mailbox passthru (Nilesh Javali) [2044833] - scsi: qla2xxx: Open-code qla2xxx_eh_device_reset() (Nilesh Javali) [2044833] - scsi: qla2xxx: Open-code qla2xxx_eh_target_reset() (Nilesh Javali) [2044833] - scsi: qla2xxx: Do not call fc_block_scsi_eh() during bus reset (Nilesh Javali) [2044833] - sctp: count singleton chunks in assoc user stats (Jamie Bainbridge) [2073913] - hrtimer: Unbreak hrtimer_force_reprogram() (Fernando Pacheco) [2071776] - hrtimer: Use raw_cpu_ptr() in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Avoid more SMP function calls in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Avoid unnecessary SMP function calls in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Add bases argument to clock_was_set() (Fernando Pacheco) [2071776] - time/timekeeping: Avoid invoking clock_was_set() twice (Fernando Pacheco) [2071776] - timekeeping: Distangle resume and clock-was-set events (Fernando Pacheco) [2071776] - timerfd: Provide timerfd_resume() (Fernando Pacheco) [2071776] - hrtimer: Force clock_was_set() handling for the HIGHRES=n, NOHZ=y case (Fernando Pacheco) [2071776] - hrtimer: Ensure timerfd notification for HIGHRES=n (Fernando Pacheco) [2071776] - hrtimer: Consolidate reprogramming code (Fernando Pacheco) [2071776] - hrtimer: Avoid double reprogramming in __hrtimer_start_range_ns() (Fernando Pacheco) [2071776] - hrtimer: Update softirq_expires_next correctly after __hrtimer_get_next_event() (Fernando Pacheco) [2071776] - hrtimer: Annotate lockless access to timer->state (Fernando Pacheco) [2071776] - drm/i915/display: Remove check for low voltage sku for max dp source rate (Jocelyn Falempe) [2063931] - s390/kexec: handle R_390_PLT32DBL rela in arch_kexec_apply_relocations_add() (Philipp Rudo) [2039278] - s390/kexec_file: fix error handling when applying relocations (Philipp Rudo) [2039278] - s390/kexec_file: print some more error messages (Philipp Rudo) [2039278] - ixgbe: respect metadata on XSK Rx to skb (Ken Cox) [2037952] - ixgbe: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Ken Cox) [2037952] - ixgbe: pass bi->xdp to ixgbe_construct_skb_zc() directly (Ken Cox) [2037952] - ixgbe: Remove useless DMA-32 fallback configuration (Ken Cox) [2037952] - ixgbe: switch to napi_build_skb() (Ken Cox) [2037952] - ixgbe: set X550 MDIO speed before talking to PHY (Ken Cox) [2037952] - ixgbe: Document how to enable NBASE-T support (Ken Cox) [2037952] - xsk: Wipe out dead zero_copy_allocator declarations (Ken Cox) [2037952] - ixgbe: let the xdpdrv work with more than 64 cpus (Ken Cox) [2037952] - scsi: fcoe: Fix I/O path allocation (Ken Cox) [2037952] - ixgbe: extend PTP gettime function to read system clock (Ken Cox) [2037952] - ixgbe: Replace GFP_ATOMIC with GFP_KERNEL (Ken Cox) [2037952] - net: mpls: Fix notifications when deleting a device (Guillaume Nault) [2081757]- sched/cputime, proc/stat: Fix incorrect guest nice cpustat value (Waiman Long) [2017382] - procfs: Use all-in-one vtime aware kcpustat accessor (Waiman Long) [2017382] - procfs: Use vtime aware kcpustat accessor to fetch CPUTIME_SYSTEM (Waiman Long) [2017382] - proc: read kernel cpu stat pointer once (Waiman Long) [2017382] - proc: use "unsigned int" in /proc/stat hook (Waiman Long) [2017382] - sched/cputime: Support other fields on kcpustat_field() (Waiman Long) [2017382] - sched/cputime: Add vtime guest task state (Waiman Long) [2017382] - sched/cputime: Add vtime idle task state (Waiman Long) [2017382] - sched/cputime: Spare a seqcount lock/unlock cycle on context switch (Waiman Long) [2017382] - sched/vtime: Move task_struct_rh->vtime_cpu back to vtime structure (Waiman Long) [2017382] - usb: xhci-plat: fix crash when suspend if remote wake enable (Mark Langsdorf) [2065730] - PM: domains: Improve runtime PM performance state handling (Mark Langsdorf) [2065730] - firmware_loader: fix use-after-free in firmware_fallback_sysfs (Mark Langsdorf) [2065730] - firmware_loader: use -ETIMEDOUT instead of -EAGAIN in fw_load_sysfs_fallback (Mark Langsdorf) [2065730] - driver core: Prevent warning when removing a device link from unregistered consumer (Mark Langsdorf) [2065730] - PM: domains: Shrink locking area of the gpd_list_lock (Mark Langsdorf) [2065730] - PM: sleep: Use ktime_us_delta() in initcall_debug_report() (Mark Langsdorf) [2065730] - driver core: Export device_driver_attach() (Mark Langsdorf) [2065730] - driver core: Don't return EPROBE_DEFER to userspace during sysfs bind (Mark Langsdorf) [2065730] - driver core: Flow the return code from ->probe() through to sysfs bind (Mark Langsdorf) [2065730] - driver core: Better distinguish probe errors in really_probe (Mark Langsdorf) [2065730] - driver core: Pull required checks into driver_probe_device() (Mark Langsdorf) [2065730] - driver core: add a helper to setup both the of_node and fwnode of a device (Mark Langsdorf) [2065730] - devres: Enable trace events (Mark Langsdorf) [2065730] - devres: No need to call remove_nodes() when there none present (Mark Langsdorf) [2065730] - devres: Use list_for_each_safe_from() in remove_nodes() (Mark Langsdorf) [2065730] - devres: Make locking straight forward in release_nodes() (Mark Langsdorf) [2065730] - regmap: mdio: Reject invalid addresses (Mark Langsdorf) [2065730] - regmap: mdio: Fix regmap_bus pointer constness (Mark Langsdorf) [2065730] - PM: runtime: Allow unassigned ->runtime_suspend|resume callbacks (Mark Langsdorf) [2065730] - PM: runtime: Improve path in rpm_idle() when no callback (Mark Langsdorf) [2065730] - PM: domains: Drop/restore performance state votes for devices at runtime PM (Mark Langsdorf) [2065730] - PM: domains: Return early if perf state is already set for the device (Mark Langsdorf) [2065730] - PM: domains: Split code in dev_pm_genpd_set_performance_state() (Mark Langsdorf) [2065730] - PM: domains: fix some kernel-doc issues (Mark Langsdorf) [2065730] - regmap: mdio: Add clause-45 support (Mark Langsdorf) [2065730] - regmap: mdio: Clean up invalid clause-22 addresses (Mark Langsdorf) [2065730] - regmap-irq: Introduce inverted status registers support (Mark Langsdorf) [2065730] - ACPI: property: Constify stubs for CONFIG_ACPI=n case (Mark Langsdorf) [2065730] - device property: Unify access to of_node (Mark Langsdorf) [2065730] - drivers/base: Constify static attribute_group structs (Mark Langsdorf) [2065730] - devcoredump: remove contact information (Mark Langsdorf) [2065730] - component: Rename 'dev' to 'parent' (Mark Langsdorf) [2065730] - component: Drop 'dev' argument to component_match_realloc() (Mark Langsdorf) [2065730] - device property: Don't check for NULL twice in the loops (Mark Langsdorf) [2065730] - regmap: add support for 7/17 register formating (Mark Langsdorf) [2065730] - PM: wakeirq: Set IRQF_NO_AUTOEN when requesting the IRQ (Mark Langsdorf) [2065730] - drivers/base/node.c: make CACHE_ATTR define static DEVICE_ATTR_RO (Mark Langsdorf) [2065730] - regmap: mdio: Don't modify output if error happened (Mark Langsdorf) [2065730] - regmap: Add MDIO bus support (Mark Langsdorf) [2065730] - regmap-i2c: Set regmap max raw r/w from quirks (Mark Langsdorf) [2065730] - driver core: attribute_container: fix W=1 warnings (Mark Langsdorf) [2065730] - driver core: replace open-coded device_lock_assert() (Mark Langsdorf) [2065730] - device property: Retrieve fwnode from of_node via accessor (Mark Langsdorf) [2065730] - cpufreq: Kconfig: fix documentation links (Mark Langsdorf) [2065730] - PM: wakeup: remove redundant assignment to variable retval (Mark Langsdorf) [2065730] - PM / wakeup: use dev_set_name() directly (Mark Langsdorf) [2065730] - PM: clk: remove kernel-doc warning (Mark Langsdorf) [2065730] - PM: wakeup: fix kernel-doc warnings and fix typos (Mark Langsdorf) [2065730] - PM: runtime: remove kernel-doc warnings (Mark Langsdorf) [2065730] - software node: Introduce SOFTWARE_NODE_REFERENCE() helper macro (Mark Langsdorf) [2065730] - software node: Imply kobj_to_swnode() to be no-op (Mark Langsdorf) [2065730] - software node: Deduplicate code in fwnode_create_software_node() (Mark Langsdorf) [2065730] - software node: Introduce software_node_alloc()/software_node_free() (Mark Langsdorf) [2065730] - software node: Free resources explicitly when swnode_register() fails (Mark Langsdorf) [2065730] - driver core: add helper for deferred probe reason setting (Mark Langsdorf) [2065730] - driver core: Improve fw_devlink & deferred_probe_timeout interaction (Mark Langsdorf) [2065730] - driver core: Replace printf() specifier and drop unneeded casting (Mark Langsdorf) [2065730] - driver core: Cast to (void *) with __force for __percpu pointer (Mark Langsdorf) [2065730] - devcoredump: fix kernel-doc warning (Mark Langsdorf) [2065730] - platform-msi: fix kernel-doc warnings (Mark Langsdorf) [2065730] - driver core: attribute_container: remove kernel-doc warnings (Mark Langsdorf) [2065730] - driver core: remove kernel-doc warnings (Mark Langsdorf) [2065730] - base: dd: fix error return code of driver_sysfs_add() (Mark Langsdorf) [2065730] - driver core: Use unbound workqueue for deferred probes (Mark Langsdorf) [2065730] - devcoredump: avoid -Wempty-body warnings (Mark Langsdorf) [2065730] - device property: Add test cases for fwnode_property_count_*() APIs (Mark Langsdorf) [2065730] - device property: Sync descriptions of swnode array and group APIs (Mark Langsdorf) [2065730] - driver core: Update device link status properly for device_bind_driver() (Mark Langsdorf) [2065730] - driver core: Avoid pointless deferred probe attempts (Mark Langsdorf) [2065730] - drivers/base/cpu: remove redundant assignment of variable retval (Mark Langsdorf) [2065730] - driver core: dd: remove deferred_devices variable (Mark Langsdorf) [2065730] - driver core: component: remove dentry pointer in "struct master" (Mark Langsdorf) [2065730] - driver core: auxiliary bus: Remove unneeded module bits (Mark Langsdorf) [2065730] - PM: domains: Don't runtime resume devices at genpd_prepare() (Mark Langsdorf) [2065730] - redhat/configs: Add CONFIG_X86_AMD_PSTATE (Prarit Bhargava) - ACPI: CPPC: Drop redundant local variable from cpc_read() (Prarit Bhargava) [1961726] - ACPI: CPPC: Fix up I/O port access in cpc_read() (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Fix Kconfig dependencies for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Fix struct amd_cpudata kernel-doc comment (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add AMD P-State performance attributes (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add AMD P-State frequencies attributes (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add boost mode support for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add trace for AMD P-State module (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Introduce the support for the processors with shared memory solution (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add fast switch function for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Introduce a new AMD P-State driver to support future processors (Prarit Bhargava) [1961726] - ACPI: CPPC: Add CPPC enable register function (Prarit Bhargava) [1961726] - ACPI: CPPC: Check present CPUs for determining _CPC is valid (Prarit Bhargava) [1961726] - ACPI: CPPC: Implement support for SystemIO registers (Prarit Bhargava) [1961726] - x86/msr: Add AMD CPPC MSR definitions (Prarit Bhargava) [1961726] - x86/cpufeatures: Add AMD Collaborative Processor Performance Control feature flag (Prarit Bhargava) [1961726] - cpufreq: remove useless INIT_LIST_HEAD() (Prarit Bhargava) [1961726] - cpufreq: CPPC: Pass structure instance by reference (Prarit Bhargava) [1961726] - cpufreq: CPPC: Fix potential memleak in cppc_cpufreq_cpu_init (Prarit Bhargava) [1961726] - cpufreq: CPPC: Migrate to ->exit() callback instead of ->stop_cpu() (Prarit Bhargava) [1961726] - cpufreq: cppc: simplify default delay_us setting (Prarit Bhargava) [1961726] - cppc_cpufreq: replace per-cpu data array with a list (Prarit Bhargava) [1961726] - cppc_cpufreq: expose information on frequency domains (Prarit Bhargava) [1961726] - cppc_cpufreq: clarify support for coordination types (Prarit Bhargava) [1961726] - cppc_cpufreq: use policy->cpu as driver of frequency setting (Prarit Bhargava) [1961726] - cppc_cpufreq: simplify use of performance capabilities (Prarit Bhargava) [1961726] - cppc_cpufreq: clean up cpu, cpu_num and cpunum variable use (Prarit Bhargava) [1961726] - cppc_cpufreq: fix misspelling, code style and readability issues (Prarit Bhargava) [1961726] - cpufreq: CPPC: Reuse caps variable in few routines (Prarit Bhargava) [1961726] - cpufreq: cppc: Reorder code and remove apply_hisi_workaround variable (Prarit Bhargava) [1961726] - cpufreq: CPPC: add SW BOOST support (Prarit Bhargava) [1961726] - net/sched: act_ct: fix ref leak when switching zones (Marcelo Ricardo Leitner) [2014027] - net/sched: act_ct: Fix flow table lookup after ct clear or switching zones (Marcelo Ricardo Leitner) [2014027] - genirq: Provide new interfaces for affinity hints (Ivan Vecera) [2070044] - af_key: add __GFP_ZERO flag for compose_sadb_supported in function pfkey_register (Xin Long) [2075181] - ipv6: make ip6_rt_gc_expire an atomic_t (Hangbin Liu) [2077365] - ipv6: fix panic when forwarding a pkt with no in6 dev (Hangbin Liu) [2077365] - net: ipv6: ensure we call ipv6_mc_down() at most once (Hangbin Liu) [2077365] - ipv6/addrconf: use a boolean to choose between UNREGISTER/DOWN (Hangbin Liu) [2077365] - ipv6/addrconf: call addrconf_ifdown with consistent values (Hangbin Liu) [2077365] - ipmr,ip6mr: acquire RTNL before calling ip[6]mr_free_table() on failure path (Hangbin Liu) [2077365] - ipv6: annotate accesses to fn->fn_sernum (Hangbin Liu) [2077365] - ipv6: correct comments about fib6_node sernum (Hangbin Liu) [2077365] - ipv6: fix typos in __ip6_finish_output() (Hangbin Liu) [2077365] - oom_kill.c: futex: delay the OOM reaper to allow time for proper futex cleanup (Nico Pache) [1778048] - KVM: PPC: Fix TCE handling for VFIO (Daniel Henrique Barboza) [2062687] - udf: Restore i_lenAlloc when inode expansion fails (Carlos Maiolino) [2054653] {CVE-2022-0617} - udf: Fix NULL ptr deref when converting from inline format (Carlos Maiolino) [2054653] {CVE-2022-0617} - net/tls: fix slab-out-of-bounds bug in decrypt_internal (Sabrina Dubroca) [2080344] - tls: fix replacing proto_ops (Sabrina Dubroca) [2080344] - net/tls: use semicolons rather than commas to separate statements (Sabrina Dubroca) [2080344] - redhat: further rpminspect tuning (Jarod Wilson)- tun: annotate access to queue->trans_start (Ivan Vecera) [2069673] - net: annotate accesses to queue->trans_start (Ivan Vecera) [2069673] - ntb_hw_amd: Add NTB PCI ID for new gen CPU (Sudheesh Mavila) [2037287] - ipmi: initialize len variable (Tony Camuso) [2069839] - ipmi: kcs: aspeed: Remove old bindings support (Tony Camuso) [2069839] - ipmi:ipmb: Add the ability to have a separate slave and master device (Tony Camuso) [2069839] - ipmi:ipmi_ipmb: Unregister the SMI on remove (Tony Camuso) [2069839] - ipmi: kcs: aspeed: Add AST2600 compatible string (Tony Camuso) [2069839] - ipmi: ssif: replace strlcpy with strscpy (Tony Camuso) [2069839] - ipmi/watchdog: Constify ident (Tony Camuso) [2069839] - ipmi: Fix UAF when uninstall ipmi_si and ipmi_msghandler module (Tony Camuso) [2069839] - ipmi: fix initialization when workqueue allocation fails (Tony Camuso) [2069839] - ipmi: bail out if init_srcu_struct fails (Tony Camuso) [2069839] - ipmi: ssif: initialize ssif_info->client early (Tony Camuso) [2069839] - ipmi: msghandler: Make symbol 'remove_work_wq' static (Tony Camuso) [2069839] - ipmi: Move remove_work to dedicated workqueue (Tony Camuso) [2069839] - ipmi: kcs_bmc: Fix a memory leak in the error handling path of 'kcs_bmc_serio_add_device()' (Tony Camuso) [2069839] - char: ipmi: replace snprintf in show functions with sysfs_emit (Tony Camuso) [2069839] - ipmi: ipmb: fix dependencies to eliminate build error (Tony Camuso) [2069839] - ipmi:ipmb: Add OF support (Tony Camuso) [2069839] - ipmi: bt: Add ast2600 compatible string (Tony Camuso) [2069839] - ipmi: bt-bmc: Use registers directly (Tony Camuso) [2069839] - ipmi: ipmb: Fix off-by-one size check on rcvlen (Tony Camuso) [2069839] - ipmi:ssif: Use depends on, not select, for I2C (Tony Camuso) [2069839] - ipmi:ipmb: Add initial support for IPMI over IPMB (Tony Camuso) [2069839] - ipmi: Export ipmb_checksum() (Tony Camuso) [2069839] - ipmi: Check error code before processing BMC response (Tony Camuso) [2069839] - ipmi:devintf: Return a proper error when recv buffer too small (Tony Camuso) [2069839] - ipmi: Disable some operations during a panic (Tony Camuso) [2069839] - ipmi:watchdog: Set panic count to proper value on a panic (Tony Camuso) [2069839] - char: ipmi: use DEVICE_ATTR helper macro (Tony Camuso) [2069839] - ipmi: rate limit ipmi smi_event failure message (Tony Camuso) [2069839] - cifs: fix NULL ptr dereference in smb2_ioctl_query_info() (Ronnie Sahlberg) [2074316] - cifs: prevent bad output lengths in smb2_ioctl_query_info() (Ronnie Sahlberg) [2074316] - net: tcp better handling of reordering then loss cases (Marcelo Ricardo Leitner) [2074566] - tcp: tcp_mark_head_lost is only valid for sack-tcp (Marcelo Ricardo Leitner) [2074566] - udp6: allow SO_MARK ctrl msg to affect routing (Xin Long) [2066598] - ip: Fix SO_MARK in RST, ACK and ICMP packets (Xin Long) [2066598] - ip: support SO_MARK cmsg (Xin Long) [2066598] - ip: unconditionally set cork gso_size (Xin Long) [2066598] - ip: remove tx_flags from ipcm_cookie and use same logic for v4 and v6 (Xin Long) [2066598] - ipv6: fold sockcm_cookie into ipcm6_cookie (Xin Long) [2066598] - sock: sockc cookie initializer (Xin Long) [2066598] - ipv6: ipcm6_cookie initializer (Xin Long) [2066598] - ipv4: ipcm_cookie initializers (Xin Long) [2066598] - s390/kexec: fix memory leak of ipl report buffer (Lichen Liu) [2001758] - s390/kexec: fix return code handling (Lichen Liu) [2001758] - block: don't try to throttle split bio if iops limit isn't set (Ming Lei) [2027241] - block: throttle split bio in case of iops limit (Ming Lei) [2027241] - block: don't check bio in blk_throtl_dispatch_work_fn (Ming Lei) [2027241] - x86/apic/vector: Fix ordering in vector assignment (Frank Ramsay) [2076607] - mt76: mt7921e: fix possible probe failure after reboot (Íñigo Huguet) [2078877] - veth: Ensure eth header is in skb's linear part (Guillaume Nault) [1966887] - net: annotate accesses to dev->gso_max_segs (Ivan Vecera) [2080317] - net: annotate accesses to dev->gso_max_size (Ivan Vecera) [2080317] - NFS: Don't loop forever in nfs_do_recoalesce() (Scott Mayhew) [2080467] - tipc: fix the timer expires after interval 100ms (Xin Long) [2080369] - tipc: Fix end of loop tests for list_for_each_entry() (Xin Long) [2080369] - tipc: fix a bit overflow in tipc_crypto_key_rcv() (Xin Long) [2080369] - tipc: rate limit warning for received illegal binding update (Xin Long) [2080369] - net: tipc: remove unused static inlines (Xin Long) [2080369] - tipc: fix unique bearer names sanity check (Xin Long) [2080369] - net/tipc: fix missing destroy_workqueue() on error in tipc_crypto_start() (Xin Long) [2080369] - tipc: add extack messages for bearer/media failure (Xin Long) [2080369] - scsi: smartpqi: Fix unused variable pqi_pm_ops for clang (Don Brace) [2012227] - scsi: smartpqi: Update version to 2.1.14-035 (Don Brace) [2012227] - scsi: smartpqi: Fix lsscsi -t SAS addresses (Don Brace) [2012227] - scsi: smartpqi: Fix hibernate and suspend (Don Brace) [2012227] - scsi: smartpqi: Fix BUILD_BUG_ON() statements (Don Brace) [2012227] - scsi: smartpqi: Fix NUMA node not updated during init (Don Brace) [2012227] - scsi: smartpqi: Expose SAS address for SATA drives (Don Brace) [2012227] - scsi: smartpqi: Speed up RAID 10 sequential reads (Don Brace) [2012227] - scsi: smartpqi: Fix kdump issue when controller is locked up (Don Brace) [2012227] - scsi: smartpqi: Update volume size after expansion (Don Brace) [2012227] - scsi: smartpqi: Avoid drive spin-down during suspend (Don Brace) [2012227] - scsi: smartpqi: Resolve delay issue with PQI_HZ value (Don Brace) [2012227] - scsi: smartpqi: Fix a typo in func pqi_aio_submit_io() (Don Brace) [2012227] - scsi: smartpqi: Fix a name typo and cleanup code (Don Brace) [2012227] - scsi: smartpqi: Quickly propagate path failures to SCSI midlayer (Don Brace) [2012227] - scsi: smartpqi: Eliminate drive spin down on warm boot (Don Brace) [2012227] - scsi: smartpqi: Enable SATA NCQ priority in sysfs (Don Brace) [2012227] - scsi: smartpqi: Add PCI IDs (Don Brace) [2012227] - scsi: smartpqi: Fix rmmod stack trace (Don Brace) [2012227] - ibmvnic: fix race between xmit and reset (Diego Domingos) [2051354] - ibmvnic: Allow queueing resets during probe (Diego Domingos) [2051354] - ibmvnic: clear fop when retrying probe (Diego Domingos) [2051354] - ibmvnic: init init_done_rc earlier (Diego Domingos) [2051354] - ibmvnic: register netdev after init of adapter (Diego Domingos) [2051354] - ibmvnic: complete init_done on transport events (Diego Domingos) [2051354] - ibmvnic: define flush_reset_queue helper (Diego Domingos) [2051354] - ibmvnic: initialize rc before completing wait (Diego Domingos) [2051354] - ibmvnic: free reset-work-item when flushing (Diego Domingos) [2051354] - ibmvnic: schedule failover only if vioctl fails (Diego Domingos) [2051354] - net/ibmvnic: Cleanup workaround doing an EOI after partition migration (Diego Domingos) [2051354]- xfs: don't expose misaligned extszinherit hints to userspace (Brian Foster) [2072552] - xfs: correct the narrative around misaligned rtinherit/extszinherit dirs (Brian Foster) [2072552] - xfs: fix endianness issue in xfs_ag_shrink_space (Brian Foster) [2072552] - xfs: bunmapi has unnecessary AG lock ordering issues (Brian Foster) [2072552] - xfs: btree format inode forks can have zero extents (Brian Foster) [2072552] - xfs: validate extsz hints against rt extent size when rtinherit is set (Brian Foster) [2072552] - xfs: standardize extent size hint validation (Brian Foster) [2072552] - xfs: check free AG space when making per-AG reservations (Brian Foster) [2072552] - xfs: retry allocations when locality-based search fails (Brian Foster) [2072552] - xfs: adjust rt allocation minlen when extszhint > rtextsize (Brian Foster) [2072552] - iomap: remove unused private field from ioend (Brian Foster) [2072552] - xfs: don't allow log writes if the data device is readonly (Brian Foster) [2072552] - xfs: count free space btree blocks when scrubbing pre-lazysbcount fses (Brian Foster) [2072552] - xfs: update superblock counters correctly for !lazysbcount (Brian Foster) [2072552] - xfs: don't check agf_btreeblks on pre-lazysbcount filesystems (Brian Foster) [2072552] - xfs: rename struct xfs_legacy_ictimestamp (Brian Foster) [2072552] - xfs: rename xfs_ictimestamp_t (Brian Foster) [2072552] - xfs: remove xfs_quiesce_attr declaration (Brian Foster) [2072552] - xfs: remove XFS_IFEXTENTS (Brian Foster) [2072552] - xfs: remove XFS_IFINLINE (Brian Foster) [2072552] - xfs: remove XFS_IFBROOT (Brian Foster) [2072552] - xfs: only look at the fork format in xfs_idestroy_fork (Brian Foster) [2072552] - xfs: simplify xfs_attr_remove_args (Brian Foster) [2072552] - xfs: rename and simplify xfs_bmap_one_block (Brian Foster) [2072552] - xfs: move the XFS_IFEXTENTS check into xfs_iread_extents (Brian Foster) [2072552] - xfs: get rid of the ip parameter to xchk_setup_* (Brian Foster) [2072552] - xfs: move the check for post-EOF mappings into xfs_can_free_eofblocks (Brian Foster) [2072552] - xfs: move the xfs_can_free_eofblocks call under the IOLOCK (Brian Foster) [2072552] - xfs: precalculate default inode attribute offset (Brian Foster) [2072552] - xfs: default attr fork size does not handle device inodes (Brian Foster) [2072552] - xfs: inode fork allocation depends on XFS_IFEXTENT flag (Brian Foster) [2072552] - xfs: eager inode attr fork init needs attr feature awareness (Brian Foster) [2072552] - xfs: scrub: Disable check for unoptimized data fork bmbt node (Brian Foster) [2072552] - xfs: Use struct xfs_bmdr_block instead of struct xfs_btree_block to calculate root node size (Brian Foster) [2072552] - xfs: merge _xfs_dic2xflags into xfs_ip2xflags (Brian Foster) [2072552] - xfs: move the di_crtime field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_flags2 field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_flags field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_forkoff field to struct xfs_inode (Brian Foster) [2072552] - xfs: use a union for i_cowextsize and i_flushiter (Brian Foster) [2072552] - xfs: use XFS_B_TO_FSB in xfs_ioctl_setattr (Brian Foster) [2072552] - xfs: cleanup xfs_fill_fsxattr (Brian Foster) [2072552] - xfs: move the di_flushiter field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_cowextsize field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_extsize field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_nblocks field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_size field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_projid field to struct xfs_inode (Brian Foster) [2072552] - xfs: don't clear the "dinode core" in xfs_inode_alloc (Brian Foster) [2072552] - xfs: remove the di_dmevmask and di_dmstate fields from struct xfs_icdinode (Brian Foster) [2072552] - xfs: remove the unused xfs_icdinode_has_bigtime helper (Brian Foster) [2072552] - xfs: handle crtime more carefully in xfs_bulkstat_one_int (Brian Foster) [2072552] - xfs: consistently initialize di_flags2 (Brian Foster) [2072552] - xfs: split xfs_imap_to_bp (Brian Foster) [2072552] - xfs: scrub: Remove incorrect check executed on block format directories (Brian Foster) [2072552] - xfs: add error injection for per-AG resv failure (Brian Foster) [2072552] - xfs: support shrinking unused space in the last AG (Brian Foster) [2072552] - xfs: introduce xfs_ag_shrink_space() (Brian Foster) [2072552] - xfs: hoist out xfs_resizefs_init_new_ags() (Brian Foster) [2072552] - xfs: update lazy sb counters immediately for resizefs (Brian Foster) [2072552] - xfs: __percpu_counter_compare() inode count debug too expensive (Brian Foster) [2072552] - xfs: reduce debug overhead of dir leaf/node checks (Brian Foster) [2072552] - xfs: No need for inode number error injection in __xfs_dir3_data_check (Brian Foster) [2072552] - xfs: type verification is expensive (Brian Foster) [2072552] - xfs: optimise xfs_buf_item_size/format for contiguous regions (Brian Foster) [2072552] - xfs: xfs_buf_item_size_segment() needs to pass segment offset (Brian Foster) [2072552] - xfs: reduce buffer log item shadow allocations (Brian Foster) [2072552] - xfs: initialise attr fork on inode create (Brian Foster) [2072552] - xfs: ensure xfs_errortag_random_default matches XFS_ERRTAG_MAX (Brian Foster) [2072552] - xfs: rename variable mp to parsing_mp (Brian Foster) [2072552] - xfs: rename the blockgc workqueue (Brian Foster) [2072552] - xfs: validate ag btree levels using the precomputed values (Brian Foster) [2072552] - xfs: remove return value from xchk_ag_btcur_init (Brian Foster) [2072552] - xfs: set the scrub AG number in xchk_ag_read_headers (Brian Foster) [2072552] - xfs: bail out of scrub immediately if scan incomplete (Brian Foster) [2072552] - xfs: drop freeze protection when running GETFSMAP (Brian Foster) [2072552] - selftest/powerpc: Add PAPR sysfs attributes sniff test (Steve Best) [1986183] - powerpc/pseries: Interface to represent PAPR firmware attributes (Steve Best) [1986183] - net: mana: Remove unnecessary check of cqe_type in mana_process_rx_cqe() (Mohammed Gamal) [2051719] - net: mana: Add handling of CQE_RX_TRUNCATED (Mohammed Gamal) [2051719] - RDMA/rxe: Revert changes from irqsave to bh locks (Kamal Heib) [2056499] - RDMA/rxe: Check the last packet by RXE_END_MASK (Kamal Heib) [2056499] - RDMA/rxe: Remove qp->grp_lock and qp->grp_list (Kamal Heib) [2056499] - RDMA/rxe: Remove rxe_drop_all_macst_groups (Kamal Heib) [2056499] - RDMA/rxe: Enforce IBA o10-2.2.3 (Kamal Heib) [2056499] - RDMA/rxe: Rename rxe_mc_grp and rxe_mc_elem (Kamal Heib) [2056499] - RDMA/rxe: Move rxe_mcast_attach/detach to rxe_mcast.c (Kamal Heib) [2056499] - RDMA/rxe: Move rxe_mcast_add/delete to rxe_mcast.c (Kamal Heib) [2056499] - RDMA/cma: Do not change route.addr.src_addr outside state checks (Kamal Heib) [2056499] - RDMA/ib_srp: Fix a deadlock (Kamal Heib) [2056499] - RDMA/siw: Fix broken RDMA Read Fence/Resume logic. (Kamal Heib) [2056499] - IB/cm: Release previously acquired reference counter in the cm_id_priv (Kamal Heib) [2056499] - RDMA/siw: Fix refcounting leak in siw_create_qp() (Kamal Heib) [2056499] - RDMA/ucma: Protect mc during concurrent multicast leaves (Kamal Heib) [2056499] - RDMA/cma: Use correct address when leaving multicast group (Kamal Heib) [2056499] - IB/hfi1: Fix tstats alloc and dealloc (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix AIP early init panic (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix alloc failure with larger txqueuelen (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix panic with larger ipoib send_queue_size (Kamal Heib) [2056499 2049845] - all: replace find_next{,_zero}_bit with find_first{,_zero}_bit where appropriate (Kamal Heib) [2056499] - RDMA/irdma: Remove the redundant return (Kamal Heib) [2056499 2037972] - RDMA/rxe: Use the standard method to produce udp source port (Kamal Heib) [2056499] - RDMA/irdma: Make the source udp port vary (Kamal Heib) [2056499 2037972] - RDMA/core: Calculate UDP source port based on flow label or lqpn/rqpn (Kamal Heib) [2056499] - IB/iser: Align coding style across driver (Kamal Heib) [2056499] - IB/iser: Remove un-needed casting to/from void pointer (Kamal Heib) [2056499] - IB/iser: Don't suppress send completions (Kamal Heib) [2056499] - IB/iser: Rename ib_ret local variable (Kamal Heib) [2056499] - IB/iser: Fix RNR errors (Kamal Heib) [2056499] - IB/iser: Remove deprecated pi_guard module param (Kamal Heib) [2056499] - IB/mlx5: Expose NDR speed through MAD (Kamal Heib) [2056499] - RDMA/rxe: Delete deprecated module parameters interface (Kamal Heib) [2056499] - RDMA/mad: Delete duplicated init_query_mad functions (Kamal Heib) [2056499] - RDMA/rxe: Fix indentations and operators sytle (Kamal Heib) [2056499] - RDMA: Use default_groups in kobj_type (Kamal Heib) [2056499] - RDMA/rxe: Fix a typo in opcode name (Kamal Heib) [2056499] - RDMA/rxe: Remove the unused xmit_errors member (Kamal Heib) [2056499] - RDMA/rxe: Remove redundant err variable (Kamal Heib) [2056499] - RDMA/irdma: Use auxiliary_device driver data helpers (Kamal Heib) [2056499 2037972] - driver core: auxiliary bus: Add driver data helpers (Kamal Heib) [2056499] - RDMA/cma: Let cma_resolve_ib_dev() continue search even after empty entry (Kamal Heib) [2056499] - RDMA/core: Let ib_find_gid() continue search even after empty entry (Kamal Heib) [2056499] - RDMA/core: Modify rdma_query_gid() to return accurate error codes (Kamal Heib) [2056499] - RDMA/rxe: Remove the unnecessary variable (Kamal Heib) [2056499] - RDMA/irdma: Fix the type used to declare a bitmap (Kamal Heib) [2056499 2037972] - RDMA/uverbs: Remove the unnecessary assignment (Kamal Heib) [2056499] - RDMA/siw: Use max() instead of doing it manually (Kamal Heib) [2056499] - RDMA/pvrdma: Use non-atomic bitmap functions when possible (Kamal Heib) [2056499] - RDMA/pvrdma: Use bitmap_zalloc() when applicable (Kamal Heib) [2056499] - IB/hfi1: Use bitmap_zalloc() when applicable (Kamal Heib) [2056499 2049845] - RDMA/siw: Use helper function to set sys_image_guid (Kamal Heib) [2056499] - RDMA/cma: Remove open coding of overflow checking for private_data_len (Kamal Heib) [2056499] - RDMA/rxe: Remove some #defines from rxe_pool.h (Kamal Heib) [2056499] - RDMA/rxe: Remove #include "rxe_loc.h" from rxe_pool.c (Kamal Heib) [2056499] - RDMA/rxe: Save object pointer in pool element (Kamal Heib) [2056499] - RDMA/rxe: Copy setup parameters into rxe_pool (Kamal Heib) [2056499] - RDMA/rxe: Cleanup rxe_pool_entry (Kamal Heib) [2056499] - RDMA/rxe: Replace irqsave locks with bh locks (Kamal Heib) [2056499] - RDMA/usnic: Clean up usnic_ib_alloc_pd() (Kamal Heib) [2056499] - RDMA/irdma: Use helper function to set GUIDs (Kamal Heib) [2056499 2037972] - RDMA/rxe: Prevent double freeing rxe_map_set() (Kamal Heib) [2056498] - IB/hfi1: Fix leak of rcvhdrtail_dummy_kvaddr (Kamal Heib) [2056498 2049845] - IB/hfi1: Fix early init panic (Kamal Heib) [2056498 2049845] - IB/hfi1: Insure use of smp_processor_id() is preempt disabled (Kamal Heib) [2056498 2049845] - IB/hfi1: Correct guard on eager buffer deallocation (Kamal Heib) [2056498 2049845] - RDMA: Fix use-after-free in rxe_queue_cleanup (Kamal Heib) [2056498] - RDMA/nldev: Check stat attribute before accessing it (Kamal Heib) [2056498] - IB/hfi1: Properly allocate rdma counter desc memory (Kamal Heib) [2056498 2049845] - RDMA/core: Set send and receive CQ before forwarding to the driver (Kamal Heib) [2056498] - RDMA/netlink: Add __maybe_unused to static inline in C file (Kamal Heib) [2056498] - RDMA/core: Require the driver to set the IOVA correctly during rereg_mr (Kamal Heib) [2056498] - RDMA/irdma: optimize rx path by removing unnecessary copy (Kamal Heib) [2056498 2037972] - IB/opa_vnic: Rebranding of OPA VNIC driver to Cornelis Networks (Kamal Heib) [2056498] - IB/hfi1: Rebranding of hfi1 driver to Cornelis Networks (Kamal Heib) [2056498 2049845] - RDMA/rxe: Make rxe_type_info static const (Kamal Heib) [2056498] - RDMA/rxe: Use 'bitmap_zalloc()' when applicable (Kamal Heib) [2056498] - RDMA/rxe: Save a few bytes from struct rxe_pool (Kamal Heib) [2056498] - RDMA/irdma: Remove the unused variable local_qp (Kamal Heib) [2056498 2037972] - RDMA/core: Fix missed initialization of rdma_hw_stats::lock (Kamal Heib) [2056498] - RDMA/irdma: Remove the unused spin lock in struct irdma_qp_uk (Kamal Heib) [2056498 2037972] - RDMA: Constify netdev->dev_addr accesses (Kamal Heib) [2056498] - RDMA/ipoib: Use dev_addr_mod() (Kamal Heib) [2056498] - RDMA/core: Use kvzalloc when allocating the struct ib_port (Kamal Heib) [2056498] - RDMA/irdma: Make irdma_uk_cq_init() return a void (Kamal Heib) [2056498 2037972] - RDMA/rxe: Convert kernel UD post send to use ah_num (Kamal Heib) [2056498] - RDMA/rxe: Lookup kernel AH from ah index in UD WQEs (Kamal Heib) [2056498] - RDMA/rxe: Replace ah->pd by ah->ibah.pd (Kamal Heib) [2056498] - RDMA/rxe: Create AH index and return to user space (Kamal Heib) [2056498] - RDMA/rxe: Change AH objects to indexed (Kamal Heib) [2056498] - RDMA/rxe: Move AV from rxe_send_wqe to rxe_send_wr (Kamal Heib) [2056498] - RDMA/irdma: Remove irdma_cqp_up_map_cmd() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_get_hw_addr() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_sc_send_lsmm_nostag() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_uk_mw_bind() (Kamal Heib) [2056498 2037972] - RDMA: Remove redundant 'flush_workqueue()' calls (Kamal Heib) [2056498] - RDMA/iwpm: Remove redundant initialization of pointer err_str (Kamal Heib) [2056498] - RDMA/nldev: Allow optional-counter status configuration through RDMA netlink (Kamal Heib) [2056498] - RDMA/nldev: Split nldev_stat_set_mode_doit out of nldev_stat_set_doit (Kamal Heib) [2056498] - RDMA/nldev: Add support to get status of all counters (Kamal Heib) [2056498] - RDMA/counter: Add optional counter support (Kamal Heib) [2056498] - RDMA/counter: Add an is_disabled field in struct rdma_hw_stats (Kamal Heib) [2056498] - RDMA/core: Add a helper API rdma_free_hw_stats_struct (Kamal Heib) [2056498] - RDMA/bnxt_re: Fix kernel panic when trying to access bnxt_re_stat_descs (Kamal Heib) [2056499] - RDMA/counter: Add a descriptor in struct rdma_hw_stats (Kamal Heib) [2056498] - RDMA/bnxt_re: Update statistics counter name (Kamal Heib) [2056498] - RDMA/bnxt_re: Add extended statistics counters (Kamal Heib) [2056498] - RDMA/efa: CQ notifications (Kamal Heib) [2056498] - RDMA/rxe: Remove duplicate settings (Kamal Heib) [2056498] - RDMA/rxe: Set partial attributes when completion status != IBV_WC_SUCCESS (Kamal Heib) [2056498] - RDMA/rxe: Change the is_user member of struct rxe_cq to bool (Kamal Heib) [2056498] - RDMA/rxe: Remove the is_user members of struct rxe_sq/rxe_rq/rxe_srq (Kamal Heib) [2056498] - RDMA/irdma: Delete unused struct irdma_bth (Kamal Heib) [2056498 2037972] - IB/hf1: Use string_upper() instead of an open coded variant (Kamal Heib) [2056498] - RDMA/cma: Split apart the multiple uses of the same list heads (Kamal Heib) [2056498] - RDMA/rxe: Remove unused WR_READ_WRITE_OR_SEND_MASK (Kamal Heib) [2056498] - RDMA/rxe: Add MASK suffix for RXE_READ_OR_ATOMIC and RXE_WRITE_OR_SEND (Kamal Heib) [2056498] - RDMA/rxe: Add new RXE_READ_OR_WRITE_MASK (Kamal Heib) [2056498] - RDMA/hfi1: Use struct_size() and flex_array_size() helpers (Kamal Heib) [2056498 2049845] - IB/hfi1: Add ring consumer and producers traces (Kamal Heib) [2056498 2049845] - IB/hfi1: Remove atomic completion count (Kamal Heib) [2056498 2049845] - IB/hfi1: Tune netdev xmit cachelines (Kamal Heib) [2056498 2049845] - IB/hfi1: Get rid of tx priv backpointer (Kamal Heib) [2056498 2049845] - IB/hfi1: Get rid of hot path divide (Kamal Heib) [2056498 2049845] - IB/hfi1: Remove cache and embed txreq in ring (Kamal Heib) [2056498 2049845] - RDMA/rxe: Only allow invalidate for appropriate MRs (Kamal Heib) [2056498] - RDMA/rxe: Create duplicate mapping tables for FMRs (Kamal Heib) [2056498] - RDMA/rxe: Separate HW and SW l/rkeys (Kamal Heib) [2056498] - RDMA/rxe: Cleanup MR status and type enums (Kamal Heib) [2056498] - RDMA/rxe: Add memory barriers to kernel queues (Kamal Heib) [2056498] - RDMA/rxe: remove the unnecessary variable (Kamal Heib) [2056498] - RDMA/rxe: remove the redundant variable (Kamal Heib) [2056498] - RDMA/rxe: Fix wrong port_cap_flags (Kamal Heib) [2056498] - RDMA/rdmavt: Fix error code in rvt_create_qp() (Kamal Heib) [2056497 2049845] - IB/hfi1: Fix abba locking issue with sc_disable() (Kamal Heib) [2056497 2049845] - RDMA/hfi1: Fix kernel pointer leak (Kamal Heib) [2056497 2049845] - RDMA/usnic: Lock VF with mutex instead of spinlock (Kamal Heib) [2056497] - RDMA/cma: Do not change route.addr.src_addr.ss_family (Kamal Heib) [2056497] - IB/hfi1: make hist static (Kamal Heib) [2056497 2049845] - RDMA/hfi1: Convert to SPDX identifier (Kamal Heib) [2056497 2049845] - IB/rdmavt: Convert to SPDX identifier (Kamal Heib) [2056497 2049845] - RDMA/core/sa_query: Retry SA queries (Kamal Heib) [2056497] - IB/core: Remove deprecated current_seq comments (Kamal Heib) [2056497] - RDMA/efa: Rename vector field in efa_irq struct to irqn (Kamal Heib) [2056497] - RDMA/efa: Remove unused cpu field from irq struct (Kamal Heib) [2056497] - RDMA/core/sa_query: Remove unused function (Kamal Heib) [2056497] - RDMA/hfi1: Stop using seq_get_buf in _driver_stats_seq_show (Kamal Heib) [2056497 2049845] - RDMA/core: Create clean QP creations interface for uverbs (Kamal Heib) [2056497] - RDMA/core: Properly increment and decrement QP usecnts (Kamal Heib) [2056497] - RDMA/core: Configure selinux QP during creation (Kamal Heib) [2056497] - RDMA/core: Reorganize create QP low-level functions (Kamal Heib) [2056497] - RDMA/core: Remove protection from wrong in-kernel API usage (Kamal Heib) [2056497] - RDMA/core: Delete duplicated and unreachable code (Kamal Heib) [2056497] - rdma/qedr: Fix crash due to redundant release of device's qp memory (Kamal Heib) [2056497] - RDMA: Globally allocate and release QP memory (Kamal Heib) [2056497] - RDMA/mlx5: Rework custom driver QP type creation (Kamal Heib) [2056497] - RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp (Kamal Heib) [2056497] - RDMA/rdmavt: Decouple QP and SGE lists allocations (Kamal Heib) [2056497 2049845] - RDMA/efa: Remove double QP type assignment (Kamal Heib) [2056497] - RDMA/hfi1: Fix typo in comments (Kamal Heib) [2056497 2049845] - RDMA/iwpm: Rely on the rdma_nl_[un]register() to ensure that requests are valid (Kamal Heib) [2056497] - RDMA/iwpm: Remove not-needed reference counting (Kamal Heib) [2056497] - RDMA/hfi1: Convert from atomic_t to refcount_t on hfi1_devdata->user_refcount (Kamal Heib) [2056497 2049845] - IB/hfi1: Adjust pkey entry in index 0 (Kamal Heib) [2056497 2049845] - IB/hfi1: Indicate DMA wait when txq is queued for wakeup (Kamal Heib) [2056497 2049845] - RDMA/rxe: Fix types in rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Add kernel-doc comments to rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Move crc32 init code to rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Fixup rxe_icrc_hdr (Kamal Heib) [2056497] - RDMA/rxe: Move rxe_crc32 to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Move ICRC generation to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Fixup rxe_send and rxe_loopback (Kamal Heib) [2056497] - RDMA/rxe: Move rxe_xmit_packet to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Move ICRC checking to a subroutine (Kamal Heib) [2056497] - IB/core: Read subnet_prefix in ib_query_port via cache. (Kamal Heib) [2056497] - IB/core: Shifting initialization of device->cache_lock (Kamal Heib) [2056497] - IB/core: Updating cache for subnet_prefix in config_non_roce_gid_cache() (Kamal Heib) [2056497] - RDMA/efa: Split hardware stats to device and port stats (Kamal Heib) [2056497] - RDMA/rxe: Remove the repeated 'mr->umem = umem' (Kamal Heib) [2056497] - RDMA/siw: Convert siw_tx_hdt() to kmap_local_page() (Kamal Heib) [2056497] - RDMA/siw: Remove kmap() (Kamal Heib) [2056497] - treewide: Add missing semicolons to __assign_str uses (Kamal Heib) [2056497] - RDMA/hfi1: Remove use of kmap() (Kamal Heib) [2056497 2049845] - RDMA: Delete not-used static inline functions (Kamal Heib) [2056497] - mm/page_owner.c: record tgid (Waiman Long) [2069294] - mm/page_owner: record task command name (Waiman Long) [2069294] - mm/page_owner: print memcg information (Waiman Long) [2069294] - mm/page_owner: use scnprintf() to avoid excessive buffer overrun check (Waiman Long) [2069294] - lib/vsprintf: avoid redundant work with 0 size (Waiman Long) [2069294] - lib, stackdepot: add helper to print stack entries into buffer (Waiman Long) [2069294] - lib, stackdepot: add helper to print stack entries (Waiman Long) [2069294] - lib, stackdepot: check stackdepot handle before accessing slabs (Waiman Long) [2069294] - stacktrace: move filter_irq_stacks() to kernel/stacktrace.c (Waiman Long) [2069294] - lib/stackdepot: introduce __stack_depot_save() (Waiman Long) [2069294] - mm: introduce PAGEFLAGS_MASK to replace ((1UL << NR_PAGEFLAGS) - 1) (Waiman Long) [2069294] - mm/page_owner: constify dump_page_owner (Waiman Long) [2069294] - mm: page_owner: detect page_owner recursion via task_struct (Waiman Long) [2069294] - mm: page_owner: use kstrtobool() to parse bool option (Waiman Long) [2069294] - mm: page_owner: fetch backtrace only for tracked pages (Waiman Long) [2069294] - mm, page_owner: remove unused parameter in __set_page_owner_handle (Waiman Long) [2069294] - mm/page_owner: record the timestamp of all pages during free (Waiman Long) [2069294] - mm/page_owner: use helper function zone_end_pfn() to get end_pfn (Waiman Long) [2069294] - mm/page_owner: record timestamp and pid (Waiman Long) [2069294] - x86/platform/uv: Log gap hole end size (Frank Ramsay) [2074098] - x86/platform/uv: Update TSC sync state for UV5 (Frank Ramsay) [2074098] - x86/platform/uv: Update NMI Handler for UV5 (Frank Ramsay) [2074098] - x86/platform/uv: Remove unused variable in UV5 NMI handler (Frank Ramsay) [2074098] - timekeeping: Boot should be boottime for coarse ns accessor (Ivan Vecera) [2076879]- net_tstamp: define new flag HWTSTAMP_FLAG_BONDED_PHC_INDEX (Petr Oros) [2070041] - net_tstamp: add new flag HWTSTAMP_FLAG_BONDED_PHC_INDEX (Petr Oros) [2070041] - net: fix NULL pointer reference in cipso_v4_doi_free (Guillaume Nault) [2074597] - partitions/efi: Fix partition name parsing in GUID partition entry (Ming Lei) [2075085] - psi: Fix uaf issue when psi trigger is destroyed while being polled (Waiman Long) [2046396] - cgroup/cpuset: Make child cpusets restrict parents on v1 hierarchy (Waiman Long) [2046396] - cgroup/cpuset: Don't let child cpusets restrict parent in default hierarchy (Waiman Long) [2046396] - mm/page_alloc: detect allocation forbidden by cpuset and bail out early (Waiman Long) [2046396] - cgroup: Fix rootcg cpu.stat guest double counting (Waiman Long) [2046396] - cgroup: no need for cgroup_mutex for /proc/cgroups (Waiman Long) [2046396] - cgroup: remove cgroup_mutex from cgroupstats_build (Waiman Long) [2046396] - cgroup: Fix memory leak caused by missing cgroup_bpf_offline (Waiman Long) [2046396] - cgroup: cgroup-v1: do not exclude cgrp_dfl_root (Waiman Long) [2046396] - bpf, test, cgroup: Use sk_{alloc,free} for test cases (Waiman Long) [2046396] - bpf, cgroup: Assign cgroup in cgroup_sk_alloc when called from interrupt (Waiman Long) [2046396] - bpf, cgroups: Fix cgroup v2 fallback on v1/v2 mixed mode (Waiman Long) [2046396] - cgroup/cpuset: Change references of cpuset_mutex to cpuset_rwsem (Waiman Long) [2046396] - cgroup: Replace deprecated CPU-hotplug functions. (Waiman Long) [2046396] - cgroup/cpuset: Fix a partition bug with hotplug (Waiman Long) [2046396] - cgroup/cpuset: Miscellaneous code cleanup (Waiman Long) [2046396] - cgroup/cpuset: fix typos in comments (Waiman Long) [2046396] - enable DAMON configs (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/reclaim: document statistics parameters (Chris von Recklinghausen) [2004233] - mm/damon: hide kernel pointer from tracepoint event (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: hide kernel pointer from damon_va_three_regions() failure log (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: use pr_debug() for damon_va_three_regions() failure logging (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove an unnecessary variable (Chris von Recklinghausen) [2004233] - mm/damon: move the implementation of damon_insert_region to damon.h (Chris von Recklinghausen) [2004233] - mm/damon: add access checking for hugetlb pages (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for schemes statistics (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support all DAMOS stats (Chris von Recklinghausen) [2004233] - mm/damon/reclaim: provide reclamation statistics (Chris von Recklinghausen) [2004233] - mm/damon/schemes: account how many times quota limit has exceeded (Chris von Recklinghausen) [2004233] - mm/damon/schemes: account scheme actions that successfully applied (Chris von Recklinghausen) [2004233] - mm/damon: remove a mistakenly added comment for a future feature (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for kdamond_pid and (mk|rm)_contexts (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: mention tracepoint at the beginning (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: remove redundant information (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for scheme quotas and watermarks (Chris von Recklinghausen) [2004233] - mm/damon: convert macro functions to static inline functions (Chris von Recklinghausen) [2004233] - mm/damon: modify damon_rand() macro to static inline function (Chris von Recklinghausen) [2004233] - mm/damon: move damon_rand() definition into damon.h (Chris von Recklinghausen) [2004233] - mm/damon/schemes: add the validity judgment of thresholds (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: remove swap_ranges() and replace it with swap() (Chris von Recklinghausen) [2004233] - mm/damon: remove some unneeded function definitions in damon.h (Chris von Recklinghausen) [2004233] - mm/damon/core: use abs() instead of diff_of() (Chris von Recklinghausen) [2004233] - mm/damon: unified access_check function naming rules (Chris von Recklinghausen) [2004233] - mm/damon: add 'age' of region tracepoint support (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: fix 'struct pid' leaks in 'dbgfs_target_ids_write()' (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: protect targets destructions with kdamond_lock (Chris von Recklinghausen) [2004233] - selftests/damon: split test cases (Chris von Recklinghausen) [2004233] - selftests/damon: test debugfs file reads/writes with huge count (Chris von Recklinghausen) [2004233] - selftests/damon: test wrong DAMOS condition ranges input (Chris von Recklinghausen) [2004233] - selftests/damon: test DAMON enabling with empty target_ids case (Chris von Recklinghausen) [2004233] - selftests/damon: skip test if DAMON is running (Chris von Recklinghausen) [2004233] - mm/damon/vaddr-test: remove unnecessary variables (Chris von Recklinghausen) [2004233] - mm/damon/vaddr-test: split a test function having >1024 bytes frame size (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: remove an unnecessary warning message (Chris von Recklinghausen) [2004233] - mm/damon/core: remove unnecessary error messages (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove an unnecessary error message (Chris von Recklinghausen) [2004233] - mm/damon/core: use better timer mechanisms selection threshold (Chris von Recklinghausen) [2004233] - mm/damon/core: fix fake load reports due to uninterruptible sleeps (Chris von Recklinghausen) [2004233] - timers: implement usleep_idle_range() (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: fix missed use of damon_dbgfs_lock (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: use '__GFP_NOWARN' for user-specified size buffer allocation (Chris von Recklinghausen) [2004233] - mm/damon: remove return value from before_terminate callback (Chris von Recklinghausen) [2004233] - mm/damon: fix a few spelling mistakes in comments and a pr_debug message (Chris von Recklinghausen) [2004233] - mm/damon: simplify stop mechanism (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: simplify the content (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: fix a wrong link (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: fix wrong example commands (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: add adaptive_targets list check before enable monitor_on (Chris von Recklinghausen) [2004233] - mm/damon: remove unnecessary variable initialization (Chris von Recklinghausen) [2004233] - Documentation/admin-guide/mm/damon: add a document for DAMON_RECLAIM (Chris von Recklinghausen) [2004233] - mm/damon: introduce DAMON-based Reclamation (DAMON_RECLAIM) (Chris von Recklinghausen) [2004233] - selftests/damon: support watermarks (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support watermarks (Chris von Recklinghausen) [2004233] - mm/damon/schemes: activate schemes based on a watermarks mechanism (Chris von Recklinghausen) [2004233] - tools/selftests/damon: update for regions prioritization of schemes (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support prioritization weights (Chris von Recklinghausen) [2004233] - mm/damon/vaddr,paddr: support pageout prioritization (Chris von Recklinghausen) [2004233] - mm/damon/schemes: prioritize regions within the quotas (Chris von Recklinghausen) [2004233] - mm/damon/selftests: support schemes quotas (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support quotas of schemes (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement time quota (Chris von Recklinghausen) [2004233] - mm/damon/schemes: skip already charged targets and regions (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement size quota for schemes application speed control (Chris von Recklinghausen) [2004233] - mm/damon/paddr: support the pageout scheme (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove unnecessary variables (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: constify static mm_walk_ops (Chris von Recklinghausen) [2004233] - Docs/DAMON: document physical memory monitoring support (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support physical memory monitoring (Chris von Recklinghausen) [2004233] - mm/damon: implement primitives for physical address space monitoring (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: separate commonly usable functions (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs-test: add a unit test case for 'init_regions' (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon: document 'init_regions' feature (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon: document DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - docs/vm/damon: remove broken reference (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: allow users to set initial monitoring target regions (Chris von Recklinghausen) [2004233] - selftests/damon: add 'schemes' debugfs tests (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement statistics feature (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: support DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - mm/damon/core: implement DAMON-based Operation Schemes (DAMOS) (Chris von Recklinghausen) [2004233] - mm/damon/core: account age of target regions (Chris von Recklinghausen) [2004233] - mm/damon/core: nullify pointer ctx->kdamond with a NULL (Chris von Recklinghausen) [2004233] - mm/damon: needn't hold kdamond_lock to print pid of kdamond (Chris von Recklinghausen) [2004233] - mm/damon: remove unnecessary do_exit() from kdamond (Chris von Recklinghausen) [2004233] - mm/damon/core: print kdamond start log in debug mode only (Chris von Recklinghausen) [2004233] - mm/damon: grammar s/works/work/ (Chris von Recklinghausen) [2004233] - mm/damon/core-test: fix wrong expectations for 'damon_split_regions_of()' (Chris von Recklinghausen) [2004233] - mm/damon: don't use strnlen() with known-bogus source length (Chris von Recklinghausen) [2004233] - mm/damon: add kunit tests (Chris von Recklinghausen) [2004233] - Documentation: add documents for DAMON (Chris von Recklinghausen) [2004233] - mm/damon: add user space selftests (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support multiple contexts (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: export kdamond pid to the user space (Chris von Recklinghausen) [2004233] - mm/damon: implement a debugfs-based user space interface (Chris von Recklinghausen) [2004233] - mm/damon: add a tracepoint (Chris von Recklinghausen) [2004233] - mm/damon: implement primitives for the virtual memory address spaces (Chris von Recklinghausen) [2004233] - mm/damon: adaptively adjust regions (Chris von Recklinghausen) [2004233] - mm/damon/core: implement region-based sampling (Chris von Recklinghausen) [2004233] - mm: introduce Data Access MONitor (DAMON) (Chris von Recklinghausen) [2004233] - khugepaged: use helper khugepaged_test_exit() in __khugepaged_enter() (Chris von Recklinghausen) [2004233] - mm/madvise: pass mm to do_madvise (Chris von Recklinghausen) [2004233] - ceph: fix possible NULL pointer dereference for req->r_session (Xiubo Li) [2076165] - thermal: int340x: Fix VCoRefLow MMIO bit offset for TGL (Prarit Bhargava) [2039994] - MAINTAINERS: sort field names for all entries (Joel Savitz) [2064843] - parse-maintainers: Do not sort section content by default (Joel Savitz) [2064843] - parse-maintainers: Mark as executable (Joel Savitz) [2064843] - KVM: x86: Use ERR_PTR_USR() to return -EFAULT as a __user pointer (Paul Lai) [2074679] - KVM: x86: add system attribute to retrieve full set of supported xsave states (Paul Lai) [2074679] - KVM: x86: Add a helper to retrieve userspace address from kvm_device_attr (Paul Lai) [2074679] - tools: arch: x86: pull in pvclock headers (Paul Lai) [2074679] - KVM: x86: Expose TSC offset controls to userspace (Paul Lai) [2074679] - KVM: x86: Refactor tsc synchronization code (Paul Lai) [2074679] - selftests: kvm: move vm_xsave_req_perm call to amx_test (Paul Lai) [2074679] - powerpc/pseries/vas: Add VAS migration handler (Steve Best) [2028678] - powerpc/pseries/vas: Modify reconfig open/close functions for migration (Steve Best) [2028678] - powerpc/pseries/vas: Define global hv_cop_caps struct (Steve Best) [2028678] - powerpc/pseries/vas: Add 'update_total_credits' entry for QoS capabilities (Steve Best) [2028678] - powerpc/pseries/vas: sysfs interface to export capabilities (Steve Best) [2028678] - powerpc/pseries/vas: Reopen windows with DLPAR core add (Steve Best) [2028678] - powerpc/pseries/vas: Close windows with DLPAR core removal (Steve Best) [2028678] - powerpc/vas: Map paste address only if window is active (Steve Best) [2028678] - powerpc/vas: Return paste instruction failure if no active window (Steve Best) [2028678] - powerpc/vas: Add paste address mmap fault handler (Steve Best) [2028678] - powerpc/pseries/vas: Save PID in pseries_vas_window struct (Steve Best) [2028678] - powerpc/pseries/vas: Use common names in VAS capability structure (Steve Best) [2028678] - perf powerpc: Update global/local variants for p_stage_cyc (Desnes A. Nunes do Rosario) [2051358] - perf sort: Include global and local variants for p_stage_cyc sort key (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'p_stage_cyc' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'ins_lat' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'weight' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - block: loop:use kstatfs.f_bsize of backing file to set discard granularity (Ming Lei) [2069472] - blk-cgroup: set blkg iostat after percpu stat aggregation (Ming Lei) [2069472] - block: update io_ticks when io hang (Ming Lei) [2069472] - block: don't delete queue kobject before its children (Ming Lei) [2069472] - block/wbt: fix negative inflight counter when remove scsi device (Ming Lei) [2069472] - block: bio-integrity: Advance seed correctly for larger interval sizes (Ming Lei) [2069472] - block: fix async_depth sysfs interface for mq-deadline (Ming Lei) [2069472] - bfq: Do not let waker requests skip proper accounting (Ming Lei) [2069472] - block: Fix fsync always failed if once failed (Ming Lei) [2069472] - blktrace: fix use after free for struct blk_trace (Ming Lei) [2069472] - block: Check ADMIN before NICE for IOPRIO_CLASS_RT (Ming Lei) [2069472] - blk-cgroup: fix missing put device in error path from blkg_conf_pref() (Ming Lei) [2069472] - blkcg: Remove extra blkcg_bio_issue_init (Ming Lei) [2069472] - nbd: Fix use-after-free in pid_show (Ming Lei) [2069472] - block/mq-deadline: Improve request accounting further (Ming Lei) [2069472] - block, bfq: fix UAF problem in bfqg_stats_init() (Ming Lei) [2069472] - blk-cgroup: synchronize blkg creation against policy deactivation (Ming Lei) [2069472] - block, bfq: reset last_bfqq_created on group change (Ming Lei) [2069472] - block: bfq: fix bfq_set_next_ioprio_data() (Ming Lei) [2069472] - sched/topology: Remove redundant variable and fix incorrect type in build_sched_domains (Phil Auld) [2065200] - sched/fair: Adjust the allowed NUMA imbalance when SD_NUMA spans multiple LLCs (Phil Auld) [2065200] - sched/fair: Improve consistency of allowed NUMA balance calculations (Phil Auld) [2065200] - Revert: sched: Disable allowing small imbalance to preserve RHEL performance (Phil Auld) [2065200] - NFSv4.1: handle NFS4ERR_NOSPC by CREATE_SESSION (Steve Dickson) [2023844] - SUNRPC: use different lock keys for INET6 and LOCAL (Guillaume Nault) [2061651] - arm64: Restore forced disabling of KPTI on ThunderX (Mark Salter) [1999157] - arm64: mte: initialize RGSR_EL1.SEED in __cpu_setup (Mark Salter) [1999157] - arm64: Remove exporting cpu_logical_map symbol (Mark Salter) [1999157] - arm64: tlb: fix the TTL value of tlb_get_level (Mark Salter) [1999157] - arm64: Validate tagged addresses in access_ok() called from kernel threads (Mark Salter) [1999157] - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) (Mark Salter) [1999157] - arm64: ptrace: Use NO_SYSCALL instead of -1 in syscall_trace_enter() (Mark Salter) [1999157] - arm64: mm: Fix TLBI vs ASID rollover (Mark Salter) [1999157] - arm64: errata: Fix exec handling in erratum 1418040 workaround (Mark Salter) [1999157] - arm64: Generate cpucaps.h (Mark Salter) [1999157] - arm64/sve: Skip flushing Z registers with 128 bit vectors (Mark Salter) [1999157] - arm64/sve: Rework SVE access trap to convert state in registers (Mark Salter) [1999157] - arm64/sve: Use the sve_flush macros in sve_load_from_fpsimd_state() (Mark Salter) [1999157] - arm64/sve: Split _sve_flush macro into separate Z and predicate flushes (Mark Salter) [1999157] - arm64: fix inline asm in load_unaligned_zeropad() (Mark Salter) [1999157] - arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55 (Mark Salter) [1999157] - arm64/fpsimd: add to to fix fpsimd build (Mark Salter) [1999157] - arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver (Mark Salter) [1999157] - arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist (Mark Salter) [1999157] - arm64: Add MIDR value for KRYO2XX gold/silver CPU cores (Mark Salter) [1999157] - arm64: errata: Fix handling of 1418040 with late CPU onlining (Mark Salter) [1999157] - arm64: cpufeature: upgrade hyp caps to final (Mark Salter) [1999157] - arm64: cpufeature: reorder cpus_have_{const, final}_cap() (Mark Salter) [1999157] - arm64: Add workaround for Arm Cortex-A77 erratum 1508412 (Mark Salter) [1999157] - arm64: Add part number for Arm Cortex-A77 (Mark Salter) [1999157] - arm64: reject prctl(PR_PAC_RESET_KEYS) on compat tasks (Mark Salter) [1999157] - arm64: Treat SSBS as a non-strict system feature (Mark Salter) [1999157] - arm64: Group start_thread() functions together (Mark Salter) [1999157] - arm64: Remove Spectre-related CONFIG_* options (Mark Salter) [1999157] - arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs (Mark Salter) [1999157] - arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs (Mark Salter) [1999157] - arm64: mte: CPU feature detection and initial sysreg configuration (Mark Salter) [1999157] - arm64: cpufeature: Export symbol read_sanitised_ftr_reg() (Mark Salter) [1999157] - arm64/fpsimd: Fix missing-prototypes in fpsimd.c (Mark Salter) [1999157] - arm64: traps: Add str of description to panic() in die() (Mark Salter) [1999157] - arm64/sve: Implement a helper to load SVE registers from FPSIMD state (Mark Salter) [1999157] - arm64/sve: Implement a helper to flush SVE registers (Mark Salter) [1999157] - arm64/fpsimdmacros: Allow the macro "for" to be used in more cases (Mark Salter) [1999157] - arm64/fpsimdmacros: Introduce a macro to update ZCR_EL1.LEN (Mark Salter) [1999157] - arm64/signal: Update the comment in preserve_sve_context (Mark Salter) [1999157] - arm64/fpsimd: Update documentation of do_sve_acc (Mark Salter) [1999157] - arm64: cpufeature: Modify address authentication cpufeature to exact (Mark Salter) [1999157] - arm64: ptrauth: Introduce Armv8.3 pointer authentication enhancements (Mark Salter) [1999157] - arm64: traps: Allow force_signal_inject to pass esr error code (Mark Salter) [1999157] - arm64/cpuinfo: Define HWCAP name arrays per their actual bit definitions (Mark Salter) [1999157] - arm64: Reserve HWCAP2_MTE as (1 << 18) (Mark Salter) [1999157] - arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late (Mark Salter) [1999157] - arm64: Allow booting of late CPUs affected by erratum 1418040 (Mark Salter) [1999157] - arm64: Drop unnecessary include from asm/smp.h (Mark Salter) [1999157] - arm64: Move handling of erratum 1418040 into C code (Mark Salter) [1999157] - arm64: Fix __cpu_logical_map undefined issue (Mark Salter) [1999157] - arm64: tlb: don't set the ttl value in flush_tlb_page_nosync (Mark Salter) [1999157] - arm64: Shift the __tlbi_level() indentation left (Mark Salter) [1999157] - arm64: tlb: Set the TTL field in flush_*_tlb_range (Mark Salter) [1999157] - arm64: tlb: Set the TTL field in flush_tlb_range (Mark Salter) [1999157] - arm64: Add tlbi_user_level TLB invalidation helper (Mark Salter) [1999157] - arm64: Add level-hinted TLB invalidation helper (Mark Salter) [1999157] - arm64: Document SW reserved PTE/PMD bits in Stage-2 descriptors (Mark Salter) [1999157] - arm64/cpufeature: Validate feature bits spacing in arm64_ftr_regs[] (Mark Salter) [1999157] - arm64/cpufeature: Replace all open bits shift encodings with macros (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR2 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR1 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR0 register (Mark Salter) [1999157] - arm64: csum: Fix handling of bad packets (Mark Salter) [1999157] - arm64: Add missing sentinel to erratum_1463225 (Mark Salter) [1999157] - arm64: Documentation: Fix broken table in generated HTML (Mark Salter) [1999157] - arm64: kgdb: Fix single-step exception handling oops (Mark Salter) [1999157] - arm64: entry: Tidy up block comments and label numbers (Mark Salter) [1999157] - arm64: Rework ARM_ERRATUM_1414080 handling (Mark Salter) [1999157] - arm64: entry: Fix the typo in the comment of el1_dbg() (Mark Salter) [1999157] - arm64: Add KRYO4XX silver CPU cores to erratum list 1530923 and 1024718 (Mark Salter) [1999157] - arm64: Add KRYO4XX gold CPU cores to erratum list 1463225 and 1418040 (Mark Salter) [1999157] - arm64: Add MIDR value for KRYO4XX gold CPU cores (Mark Salter) [1999157] - arm64: Add KRYO{3,4}XX silver CPU cores to SSB safelist (Mark Salter) [1999157] - arm64: kpti: Add KRYO{3, 4}XX silver CPU cores to kpti safelist (Mark Salter) [1999157] - arm64: sve: Fix build failure when ARM64_SVE=y and SYSCTL=n (Mark Salter) [1999157] - arm64: mm: reset address tag set by kasan sw tagging (Mark Salter) [1999157] - arm64: traps: Dump registers prior to panic() in bad_mode() (Mark Salter) [1999157] - arm64/sve: Eliminate data races on sve_default_vl (Mark Salter) [1999157] - arm64: csum: Disable KASAN for do_csum() (Mark Salter) [1999157] - arm64/cpufeature: Add get_arm64_ftr_reg_nowarn() (Mark Salter) [1999157] - arm64/cpuinfo: Add ID_MMFR4_EL1 into the cpuinfo_arm64 context (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64PFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_MMFR4 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_PFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_MMFR5 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_DFR1 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_PFR2 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Make doublelock a signed feature in ID_AA64DFR0 (Mark Salter) [1999157] - arm64/cpufeature: Drop TraceFilt feature exposure from ID_DFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Add explicit ftr_id_isar0[] for ID_ISAR0 register (Mark Salter) [1999157] - arm64: cpufeature: Group indexed system register definitions by name (Mark Salter) [1999157] - arm64: cpufeature: Extend comment to describe absence of field info (Mark Salter) [1999157] - arm64: drop duplicate definitions of ID_AA64MMFR0_TGRAN constants (Mark Salter) [1999157] - arm64: cpufeature: Add an overview comment for the cpufeature framework (Mark Salter) [1999157] - arm64: cpufeature: Relax checks for AArch32 support at EL[0-2] (Mark Salter) [1999157] - arm64: cpufeature: Relax AArch32 system checks if EL1 is 64-bit only (Mark Salter) [1999157] - arm64: cpufeature: Factor out checking of AArch32 features (Mark Salter) [1999157] - arm64: cpufeature: Remove redundant call to id_aa64pfr0_32bit_el0() (Mark Salter) [1999157] - arm64: cpufeature: Spell out register fields for ID_ISAR4 and ID_PFR1 (Mark Salter) [1999157] - arm64: cpufeature: Relax check for IESB support (Mark Salter) [1999157] - arm64: mm: Add asid_gen_match() helper (Mark Salter) [1999157] - arm64: Call debug_traps_init() from trap_init() to help early kgdb (Mark Salter) [1999157] - arm64: cacheflush: Fix KGDB trap detection (Mark Salter) [1999157] - arm64/cpuinfo: Move device_initcall() near cpuinfo_regs_init() (Mark Salter) [1999157] - arm64: kexec_file: print appropriate variable (Mark Salter) [1999157] - arm: mm: use __pfn_to_section() to get mem_section (Mark Salter) [1999157] - arm64: Reorder the macro arguments in the copy routines (Mark Salter) [1999157] - KVM: arm64: Drop PTE_S2_MEMATTR_MASK (Mark Salter) [1999157] - arm64/kernel: Fix range on invalidating dcache for boot page tables (Mark Salter) [1999157] - arm64: set TEXT_OFFSET to 0x0 in preparation for removing it entirely (Mark Salter) [1999157] - arm64/mm: Use phys_to_page() to access pgtable memory (Mark Salter) [1999157] - arm64: smp: Make cpus_stuck_in_kernel static (Mark Salter) [1999157] - arm64: entry: remove unneeded semicolon in el1_sync_handler() (Mark Salter) [1999157] - arm64: cpufeature: Add "or" to mitigations for multiple errata (Mark Salter) [1999157] - arm64: Sort vendor-specific errata (Mark Salter) [1999157] - arm64: simplify ptrauth initialization (Mark Salter) [1999157] - arm64: remove ptrauth_keys_install_kernel sync arg (Mark Salter) [1999157] - arm64: insn: Provide a better name for aarch64_insn_is_nop() (Mark Salter) [1999157] - arm64: kernel: Convert to modern annotations for assembly functions (Mark Salter) [1999157] - arm64: entry: Refactor and modernise annotation for ret_to_user (Mark Salter) [1999157] - arm64: BTI: Reset BTYPE when skipping emulated instructions (Mark Salter) [1999157] - arm64: traps: Shuffle code to eliminate forward declarations (Mark Salter) [1999157] - arm64: unify native/compat instruction skipping (Mark Salter) [1999157] - arm64: BTI: Decode BYTPE bits when printing PSTATE (Mark Salter) [1999157] - arm64: Basic Branch Target Identification support (Mark Salter) [1999157] - arm64/kernel: Fix return value when cpu_online() fails in __cpu_up() (Mark Salter) [1999157] - arm64: Add get_user() type annotation on the !access_ok() path (Mark Salter) [1999157] - arm64: Fix PTRACE_SYSEMU semantics (Mark Salter) [1999157] - arm64: fix the flush_icache_range arguments in machine_kexec (Mark Salter) [1999157] - Documentation: arm64: fix amu.rst doc warnings (Mark Salter) [1999157] - arm64: sync kernel APIAKey when installing (Mark Salter) [1999157] - arm64: Delete the space separator in __emit_inst (Mark Salter) [1999157] - arm64: remove CONFIG_DEBUG_ALIGN_RODATA feature (Mark Salter) [1999157] - arm64: head: Convert install_el2_stub to SYM_INNER_LABEL (Mark Salter) [1999157] - arm64: Introduce get_cpu_ops() helper function (Mark Salter) [1999157] - arm64: Rename cpu_read_ops() to init_cpu_ops() (Mark Salter) [1999157] - arm64: Declare ACPI parking protocol CPU operation if needed (Mark Salter) [1999157] - arm64: move kimage_vaddr to .rodata (Mark Salter) [1999157] - arm64: sdei: Annotate SDEI entry points using new style annotations (Mark Salter) [1999157] - arm64: kernel: Convert to modern annotations for assembly data (Mark Salter) [1999157] - arm64: head: Annotate stext and preserve_boot_args as code (Mark Salter) [1999157] - arm64: head.S: Convert to modern annotations for assembly functions (Mark Salter) [1999157] - arm64: entry: Additional annotation conversions for entry.S (Mark Salter) [1999157] - arm64: entry: Annotate ret_from_fork as code (Mark Salter) [1999157] - arm64: entry: Annotate vector table and handlers as code (Mark Salter) [1999157] - kconfig: Add support for 'as-option' (Mark Salter) [1999157] - arm64: suspend: restore the kernel ptrauth keys (Mark Salter) [1999157] - arm64: __show_regs: strip PAC from lr in printk (Mark Salter) [1999157] - arm64: unwind: strip PAC from kernel addresses (Mark Salter) [1999157] - arm64/crash_core: Export KERNELPACMASK in vmcoreinfo (Mark Salter) [1999157] - arm64: mask PAC bits of __builtin_return_address (Mark Salter) [1999157] - compiler.h: Allow arch-specific asm/compiler.h (Mark Salter) [1999157] - arm64: initialize ptrauth keys for kernel booting task (Mark Salter) [1999157] - arm64: initialize and switch ptrauth kernel keys (Mark Salter) [1999157] - arm64: enable ptrauth earlier (Mark Salter) [1999157] - arm64: cpufeature: handle conflicts based on capability (Mark Salter) [1999157] - arm64: cpufeature: Move cpu capability helpers inside C file (Mark Salter) [1999157] - arm64: ptrauth: Add bootup/runtime flags for __cpu_setup (Mark Salter) [1999157] - arm64: install user ptrauth keys at kernel exit time (Mark Salter) [1999157] - arm64: rename ptrauth key structures to be user-specific (Mark Salter) [1999157] - arm64: cpufeature: add pointer auth meta-capabilities (Mark Salter) [1999157] - arm64: cpufeature: Fix meta-capability cpufeature check (Mark Salter) [1999157] - arm64: define __alloc_zeroed_user_highpage (Mark Salter) [1999157] - arm64/kernel: Simplify __cpu_up() by bailing out early (Mark Salter) [1999157] - arm64: smp: Mark expected switch fall-through (Mark Salter) [1999157] - arm64: remove redundant blank for '=' operator (Mark Salter) [1999157] - arm64: kexec_file: Fixed code style. (Mark Salter) [1999157] - arm64: add blank after 'if' (Mark Salter) [1999157] - arm64: fix spelling mistake "ca not" -> "cannot" (Mark Salter) [1999157] - arm64: entry: unmask IRQ in el0_sp() (Mark Salter) [1999157] - arm64: efi: add efi-entry.o to targets instead of extra-$(CONFIG_EFI) (Mark Salter) [1999157] - arm64: csum: Optimise IPv6 header checksum (Mark Salter) [1999157] - arch/arm64: fix typo in a comment (Mark Salter) [1999157] - arm64: remove gratuitious/stray .ltorg stanzas (Mark Salter) [1999157] - arm64: Update comment for ASID() macro (Mark Salter) [1999157] - arm64: mm: convert cpu_do_switch_mm() to C (Mark Salter) [1999157] - Documentation: arm64: document support for the AMU extension (Mark Salter) [1999157] - arm64: trap to EL1 accesses to AMU counters from EL0 (Mark Salter) [1999157] - arm64: add support for the AMU extension v1 (Mark Salter) [1999157] - arm64: smp: fix crash_smp_send_stop() behaviour (Mark Salter) [1999157] - arm64: smp: fix smp_send_stop() behaviour (Mark Salter) [1999157] - arm64: context: Fix ASID limit in boot messages (Mark Salter) [1999157] - docs: arm64: fix trivial spelling enought to enough in memory.rst (Mark Salter) [1999157] - arm64: time: Replace by (Mark Salter) [1999157] - arm64: ssbs: Fix context-switch when SSBS is present on all CPUs (Mark Salter) [1999157] - arm64: use shared sysctl constants (Mark Salter) [1999157] - arm64: Drop do_el0_ia_bp_hardening() & do_sp_pc_abort() declarations (Mark Salter) [1999157] - arm64: entry: Avoid empty alternatives entries (Mark Salter) [1999157] - arm64: Kconfig: select HAVE_FUTEX_CMPXCHG (Mark Salter) [1999157] - arm64: Use macros instead of hard-coded constants for MAIR_EL1 (Mark Salter) [1999157] - arm64: Add KRYO{3,4}XX CPU cores to spectre-v2 safe list (Mark Salter) [1999157] - arm64: context: Free up kernel ASIDs if KPTI is not in use (Mark Salter) [1999157] - arm64: Remove __exception_text_start and __exception_text_end from asm/section.h (Mark Salter) [1999157] - arm64: armv8_deprecated: update the comments of armv8_deprecated_init() (Mark Salter) [1999157] - arm64: kpti: Add Broadcom Brahma-B53 core to the KPTI whitelist (Mark Salter) [1999157] - arm64: csum: Fix pathological zero-length calls (Mark Salter) [1999157] - arm64: Implement optimised checksum routine (Mark Salter) [1999157] - arm64: entry: cleanup sp_el0 manipulation (Mark Salter) [1999157] - arm64: entry: cleanup el0 svc handler naming (Mark Salter) [1999157] - arm64: entry: mark all entry code as notrace (Mark Salter) [1999157] - arm64: assembler: remove smp_dmb macro (Mark Salter) [1999157] - arm64: assembler: remove inherit_daif macro (Mark Salter) [1999157] - arm64: signal: nofpsimd: Handle fp/simd context for signal frames (Mark Salter) [1999157] - arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations (Mark Salter) [1999157] - arm64: cpufeature: Set the FP/SIMD compat HWCAP bits properly (Mark Salter) [1999157] - arm64: cpufeature: Fix the type of no FP/SIMD capability (Mark Salter) [1999157] - arm64: fpsimd: Make sure SVE setup is complete before SIMD is used (Mark Salter) [1999157] - arm64: kernel: Correct annotation of end of el0_sync (Mark Salter) [1999157] - arm64: asm: Remove ENDPIPROC() (Mark Salter) [1999157] - arm64: mm: Use modern annotations for assembly functions (Mark Salter) [1999157] - arm64: lib: Use modern annotations for assembly functions (Mark Salter) [1999157] - arm64: asm: Add new-style position independent function annotations (Mark Salter) [1999157] - arm64: kernel: avoid x18 in __cpu_soft_restart (Mark Salter) [1999157] - arm64/lib: copy_page: avoid x18 register in assembler code (Mark Salter) [1999157] - arm64: mm: avoid x18 in idmap_kpti_install_ng_mappings (Mark Salter) [1999157] - arm64: cpu_errata: Add Hisilicon TSV110 to spectre-v2 safe list (Mark Salter) [1999157] - arm64: entry: refine comment of stack overflow check (Mark Salter) [1999157] - arm64: kpti: Add NVIDIA's Carmel core to the KPTI whitelist (Mark Salter) [1999157] - arm64: mm: simplify the page end calculation in __create_pgd_mapping() (Mark Salter) [1999157] - arm64: print additional fault message when executing non-exec memory (Mark Salter) [1999157] - arm64: pgtable: Correct typo in comment (Mark Salter) [1999157] - arm64: cpufeature: Fix typos in comment (Mark Salter) [1999157] - arm64: entry-common: don't touch daif before bp-hardening (Mark Salter) [1999157] - arm64: Remove asmlinkage from updated functions (Mark Salter) [1999157] - arm64: entry: convert el0_sync to C (Mark Salter) [1999157] - arm64: entry: convert el1_sync to C (Mark Salter) [1999157] - arm64: Add prototypes for functions called by entry.S (Mark Salter) [1999157] - arm64: remove __exception annotations (Mark Salter) [1999157] - arm64: kprobes: Move exception_text check in blacklist (Mark Salter) [1999157] - arm64: kprobes: Remove unneeded RODATA check (Mark Salter) [1999157] - arm64: kprobes: Move extable address check into arch_prepare_kprobe() (Mark Salter) [1999157] - arm64: cpufeature: introduce helper cpu_has_hw_af() (Mark Salter) [1999157] - arm64: Document ICC_CTLR_EL3.PMHE setting requirements (Mark Salter) [1999157] - firmware: arm_sdei: use common SMCCC_CONDUIT_* (Mark Salter) [1999157] - arm64: uaccess: Remove uaccess_*_not_uao asm macros (Mark Salter) [1999157] - arm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault (Mark Salter) [1999157] - arm64: Do not mask out PTE_RDONLY in pte_same() (Mark Salter) [1999157] - arm64: apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core (Mark Salter) [1999157] - arm64: Brahma-B53 is SSB and spectre v2 safe (Mark Salter) [1999157] - arm64: apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core (Mark Salter) [1999157] - arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo (Mark Salter) [1999157] - arm64: cpufeature: Enable Qualcomm Falkor/Kryo errata 1003 (Mark Salter) [1999157] - arm64: Ensure VM_WRITE|VM_SHARED ptes are clean by default (Mark Salter) [1999157] - arm64: mm: fix inverted PAR_EL1.F check (Mark Salter) [1999157] - arm64: hibernate: check pgd table allocation (Mark Salter) [1999157] - arm64: armv8_deprecated: Checking return value for memory allocation (Mark Salter) [1999157] - arm64: mm: fix spurious fault detection (Mark Salter) [1999157] - arm64: ftrace: Ensure synchronisation in PLT setup for Neoverse-N1 #1542419 (Mark Salter) [1999157] - arm64: mm: avoid virt_to_phys(init_mm.pgd) (Mark Salter) [1999157] - docs: arm64: Fix indentation and doc formatting (Mark Salter) [1999157] - arm64: errata: Update stale comment (Mark Salter) [1999157] - arm64: consider stack randomization for mmap base only when necessary (Mark Salter) [1999157] - arm64: make use of is_compat_task instead of hardcoding this test (Mark Salter) [1999157] - arm64: kpti: ensure patched kernel text is fetched from PoU (Mark Salter) [1999157] - arm64: Clarify when cpu_enable() is called (Mark Salter) [1999157] - arm64: constify sys64_hook instances (Mark Salter) [1999157] - arm64: constify aarch64_insn_encoding_class[] (Mark Salter) [1999157] - arm64: constify icache_policy_str[] (Mark Salter) [1999157] - arm64: prefer __section from compiler_attributes.h (Mark Salter) [1999157] - arm64/ptrace: Fix typoes in sve_set() comment (Mark Salter) [1999157] - arm64: mm: print hexadecimal EC value in mem_abort_decode() (Mark Salter) [1999157] - ahci: thunderx2: Fix workaround to use new inline function (Mark Salter) [1999157] - arm64/prefetch: fix a -Wtype-limits warning (Mark Salter) [1999157] - arm64: Move TIF_* documentation to individual definitions (Mark Salter) [1999157] - arm64: mm: free the initrd reserved memblock in a aligned manner (Mark Salter) [1999157] - arm64: io: Relax implicit barriers in default I/O accessors (Mark Salter) [1999157] - arm64: Remove unused cpucap_multi_entry_cap_cpu_enable() (Mark Salter) [1999157] - arm64: sysreg: Remove unused and rotting SCTLR_ELx field definitions (Mark Salter) [1999157] - arm64: esr: Add ESR exception class encoding for trapped ERET (Mark Salter) [1999157] - arm64/kexec: Use consistent convention of initializing 'kxec_buf.mem' with KEXEC_BUF_MEM_UNKNOWN (Mark Salter) [1999157] - arm64: remove pointless __KERNEL__ guards (Mark Salter) [1999157] - arm64: Remove unused assembly macro (Mark Salter) [1999157] - arm64: memory: Cosmetic cleanups (Mark Salter) [1999157] - arm64: memory: Add comments to end of non-trivial #ifdef blocks (Mark Salter) [1999157] - arm64: memory: Simplify virt_to_page() implementation (Mark Salter) [1999157] - arm64: memory: Rewrite default page_to_virt()/virt_to_page() (Mark Salter) [1999157] - arm64: mm: Ignore spurious translation faults taken from the kernel (Mark Salter) [1999157] - arm64: mm: Add ISB instruction to set_pgd() (Mark Salter) [1999157] - arm64: tlb: Ensure we execute an ISB following walk cache invalidation (Mark Salter) [1999157] - Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}" (Mark Salter) [1999157] - arm64: pgtable: Implement p[mu]d_valid() and check in set_p[mu]d() (Mark Salter) [1999157] - arm64: Change the tagged_addr sysctl control semantics to only prevent the opt-in (Mark Salter) [1999157] - redhat/configs: Add CONFIG_ARM64_TAGGED_ADDR_ABI (Mark Salter) [1999157] - arm64: Introduce prctl() options to control the tagged user addresses ABI (Mark Salter) [1999157] - arm64: smp: Treat unknown boot failures as being 'stuck in kernel' (Mark Salter) [1999157] - arm64: smp: Don't enter kernel with NULL stack pointer or task struct (Mark Salter) [1999157] - arm64: map FDT as RW for early_init_dt_scan() (Mark Salter) [1999157] - arm64: ftrace: Ensure module ftrace trampoline is coherent with I-side (Mark Salter) [1999157] - arch: replace _BITUL() in kernel-space headers with BIT() (Mark Salter) [1999157] - arm64: move jump_label_init() before parse_early_param() (Mark Salter) [1999157] - arm64: don't use asm-generic/ptrace.h (Mark Salter) [1999157] - arm64: rename dump_instr as dump_kernel_instr (Mark Salter) [1999157] - arm64/mm: Drop [PTE|PMD]_TYPE_FAULT (Mark Salter) [1999157] - arm64: module: create module allocations without exec permissions (Mark Salter) [1999157] - acpi/arm64: ignore 5.1 FADTs that are reported as 5.0 (Mark Salter) [1999157] - arm64: remove redundant 'default n' from Kconfig (Mark Salter) [1999157] - arm64: mm: avoid redundant READ_ONCE(*ptep) (Mark Salter) [1999157] - arm64/mm: Document write abort detection from ESR (Mark Salter) [1999157] - arm64: Fix comment after #endif (Mark Salter) [1999157] - arm64: ptrace: add support for syscall emulation (Mark Salter) [1999157] - arm64: add PTRACE_SYSEMU{,SINGLESTEP} definations to uapi headers (Mark Salter) [1999157] - arm64/mm: Identify user instruction aborts (Mark Salter) [1999157] - arm64/mm: Change BUG_ON() to VM_BUG_ON() in [pmd|pud]_set_huge() (Mark Salter) [1999157] - arm64: kernel: use aff3 instead of aff2 in comment (Mark Salter) [1999157] - arm64/mm: Simplify protection flag creation for kernel huge mappings (Mark Salter) [1999157] - arm64/mm: Move PTE_VALID from SW defined to HW page table entry definitions (Mark Salter) [1999157] - arm64/sve: should not depend on (Mark Salter) [1999157] - arm64: ssbd: explicitly depend on (Mark Salter) [1999157] - ARM64: trivial: s/TIF_SECOMP/TIF_SECCOMP/ comment typo fix (Mark Salter) [1999157] - arm64: smp: Moved cpu_logical_map[] to smp.h (Mark Salter) [1999157] - arm64: use the correct function type for __arm64_sys_ni_syscall (Mark Salter) [1999157] - arm64: use the correct function type in SYSCALL_DEFINE0 (Mark Salter) [1999157] - arm64: fix syscall_fn_t type (Mark Salter) [1999157] - signal/arm64: Use force_sig not force_sig_fault for SIGKILL (Mark Salter) [1999157] - arm64: Fix the arm64_personality() syscall wrapper redirection (Mark Salter) [1999157] - arm64: Remove useless message during oops (Mark Salter) [1999157] - arm64: don't trash config with compat symbol if COMPAT is disabled (Mark Salter) [1999157] - arm64: assembler: Update comment above cond_yield_neon() macro (Mark Salter) [1999157] - arm64: Fix size of __early_cpu_boot_status (Mark Salter) [1999157] - arm64: mm: Remove pte_unmap_nested() (Mark Salter) [1999157] - arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable (Mark Salter) [1999157] - arm64: compat: Reduce address limit for 64K pages (Mark Salter) [1999157] - arm64: mmap: Ensure file offset is treated as unsigned (Mark Salter) [1999157] - arm64: instrument smp_{load_acquire,store_release} (Mark Salter) [1999157] - arm64: mm: check virtual addr in virt_to_page() if CONFIG_DEBUG_VIRTUAL=y (Mark Salter) [1999157] - arm64: ptrace: Add function argument access API (Mark Salter) [1999157] - arm64: compat: Reduce address limit (Mark Salter) [1999157] - arm64: Save and restore OSDLR_EL1 across suspend/resume (Mark Salter) [1999157] - arm64: Clear OSDLR_EL1 on CPU boot (Mark Salter) [1999157] - arm64: debug: Separate debug hooks based on target exception level (Mark Salter) [1999157] - arm64: debug: Remove meaningless comment (Mark Salter) [1999157] - arm64: debug: Rename addr parameter for non-watchpoint exception hooks (Mark Salter) [1999157] - arm64: Use defines instead of magic numbers (Mark Salter) [1999157] - arm64: cpu_ops: fix a leaked reference by adding missing of_node_put (Mark Salter) [1999157] - arm64: mm: Make show_pte() a static function (Mark Salter) [1999157] - arm64: setup min_low_pfn (Mark Salter) [1999157] - arm64: mm: fix incorrect assignment of 'max_mapnr' (Mark Salter) [1999157] - arm64: perf_event: Remove wrongfully used inline (Mark Salter) [1999157] - arm64: backtrace: Don't bother trying to unwind the userspace stack (Mark Salter) [1999157] - arm64: replace memblock_alloc_low with memblock_alloc (Mark Salter) [1999157] - arm64: kdump: no need to mark crashkernel pages manually PG_reserved (Mark Salter) [1999157] - arm64: kexec: no need to ClearPageReserved() (Mark Salter) [1999157] - arm64: mmu: drop paging_init comments (Mark Salter) [1999157] - arm64: debug: Ensure debug handlers check triggering exception level (Mark Salter) [1999157] - arm64: io: Hook up __io_par() for inX() ordering (Mark Salter) [1999157] - arm64: Rename get_thread_info() (Mark Salter) [1999157] - arm64: Remove documentation about TIF_USEDFPU (Mark Salter) [1999157] - arm64: uaccess: Cleanup get/put_user() (Mark Salter) [1999157] - arm64: Remove asm/memblock.h (Mark Salter) [1999157] - arm64: default NR_CPUS to 256 (Mark Salter) [1999157] - arm64: perf: remove misleading comment (Mark Salter) [1999157] - arm64: Relax GIC version check during early boot (Mark Salter) [1999157] - arm64, mm, efi: Account for GICv3 LPI tables in static memblock reserve table (Mark Salter) [1999157] - arm64: hibernate: Clean the __hyp_text to PoC after resume (Mark Salter) [1999157] - arm64: hyp-stub: Forbid kprobing of the hyp-stub (Mark Salter) [1999157] - arm64: kprobe: Always blacklist the KVM world-switch code (Mark Salter) [1999157] - kasan, arm64: remove redundant ARCH_SLAB_MINALIGN define (Mark Salter) [1999157] - arm64: asm-prototypes: Fix fat-fingered typo in comment (Mark Salter) [1999157] - arm64: compat: Hook up io_pgetevents() for 32-bit tasks (Mark Salter) [1999157] - arm64: compat: Don't pull syscall number from regs in arm_compat_syscall (Mark Salter) [1999157] - arm64: compat: Avoid sending SIGILL for unallocated syscall numbers (Mark Salter) [1999157] - arm64: kaslr: Reserve size of ARM64_MEMSTART_ALIGN in linear region (Mark Salter) [1999157] - arm64: smp: Fix compilation error (Mark Salter) [1999157] - arm64: select ACPI PCI code only when both features are enabled (Mark Salter) [1999157] - arm64: kaslr: print PHYS_OFFSET in dump_kernel_offset() (Mark Salter) [1999157] - arm64: sysreg: Use _BITUL() when defining register bits (Mark Salter) [1999157] - arm64: perf: Treat EXCLUDE_EL* bit definitions as unsigned (Mark Salter) [1999157] - arm64: percpu: Fix LSE implementation of value-returning pcpu atomics (Mark Salter) [1999157] - arm64: smp: Handle errors reported by the firmware (Mark Salter) [1999157] - arm64: smp: Rework early feature mismatched detection (Mark Salter) [1999157] - arm64: percpu: Rewrite per-cpu ops to allow use of LSE atomics (Mark Salter) [1999157] - arm64: crypto: add NEON accelerated XOR implementation (Mark Salter) [1999157] - arm64/neon: add workaround for ambiguous C99 stdint.h types (Mark Salter) [1999157] - arm64: ftrace: always pass instrumented pc in x0 (Mark Salter) [1999157] - arm64: ftrace: use GLOBAL() (Mark Salter) [1999157] - arm64: io: Ensure value passed to __iormb() is held in a 64-bit register (Mark Salter) [1999157] - arm64: acpi: Prepare for longer MADTs (Mark Salter) [1999157] - arm64: io: Ensure calls to delay routines are ordered against prior readX() (Mark Salter) [1999157] - arm64: perf: Fix typos in comment (Mark Salter) [1999157] - arm64: function_graph: Simplify with function_graph_enter() (Mark Salter) [1999157] - arm64: sysreg: fix sparse warnings (Mark Salter) [1999157] - arm64: mm: define NET_IP_ALIGN to 0 (Mark Salter) [1999157] - arm64: kprobe: make page to RO mode when allocate it (Mark Salter) [1999157] - arm64: kdump: fix small typo (Mark Salter) [1999157] - arm64: mm: Use #ifdef for the __PAGETABLE_P?D_FOLDED defines (Mark Salter) [1999157] - arm64: Trap WFI executed in userspace (Mark Salter) [1999157] - arm64/mm: Use ESR_ELx_FSC macro while decoding fault exception (Mark Salter) [1999157] - arm64: compat: Add CNTFRQ trap handler (Mark Salter) [1999157] - arm64: compat: Add CNTVCT trap handler (Mark Salter) [1999157] - arm64: compat: Add cp15_32 and cp15_64 handler arrays (Mark Salter) [1999157] - arm64: compat: Add condition code checks and IT advance (Mark Salter) [1999157] - arm64: Add decoding macros for CP15_32 and CP15_64 traps (Mark Salter) [1999157] - arm64: Remove unused VGA console support (Mark Salter) [1999157] - arm64: Kconfig: Remove ARCH_HAS_HOLES_MEMORYMODEL (Mark Salter) [1999157] - arm64/cpufeatures: Emulate MRS instructions by parsing ESR_ELx.ISS (Mark Salter) [1999157] - arm64/cpufeatures: Factorize emulate_mrs() (Mark Salter) [1999157] - arm64: fix for bad_mode() handler to always result in panic (Mark Salter) [1999157] - arm64: force_signal_inject: WARN if called from kernel context (Mark Salter) [1999157] - arm64: tlb: Adjust stride and type of TLBI according to mmu_gather (Mark Salter) [1999157] - arm64: percpu: Initialize ret in the default case (Mark Salter) [1999157] - arm64: mm: always enable CONFIG_HOLES_IN_ZONE (Mark Salter) [1999157] - arm64: Avoid calling stop_machine() when patching jump labels (Mark Salter) [1999157] - arm64: Drop asmlinkage qualifier from syscall_trace_{enter,exit} (Mark Salter) [1999157] - arm64: zero GPRs upon entry from EL0 (Mark Salter) [1999157] - arm64: don't reload GPRs after apply_ssbd (Mark Salter) [1999157] - arm64: consistently use unsigned long for thread flags (Mark Salter) [1999157] - arm64: insn: Don't fallback on nosync path for general insn patching (Mark Salter) [1999157] - arm64: remove unused COMPAT_PSR definitions (Mark Salter) [1999157] - kvm/arm: use PSR_AA32 definitions (Mark Salter) [1999157] - arm64: use PSR_AA32 definitions (Mark Salter) [1999157] - arm64: compat: map SPSR_ELx<->PSR for signals (Mark Salter) [1999157]- RDMA/qedr: Fix reporting max_{send/recv}_wr attrs (Kamal Heib) [2051524] - thermal/drivers/int340x: Fix RFIM mailbox write commands (Prarit Bhargava) [2040065] - thermal: int340x: Limit Kconfig to 64-bit (Prarit Bhargava) [2040065] - thermal: int340x: fix build on 32-bit targets (Prarit Bhargava) [2040065] - thermal/drivers/int340x: processor_thermal: Suppot 64 bit RFIM responses (Prarit Bhargava) [2040065] - PCI/MSI: Clear PCI_MSIX_FLAGS_MASKALL on error (Myron Stowe) [1911591] - PCI/MSI: Skip masking MSI-X on Xen PV (Myron Stowe) [1911591] - PCI/MSI: Mask all unused MSI-X entries (Myron Stowe) [1911591] - PCI/MSI: Enable and mask MSI-X early (Myron Stowe) [1911591] - genirq: Use rcu in kstat_irqs_usr() (Waiman Long) [2068445] - scsi: target: Allow changing dbroot if there are no registered devices (Maurizio Lombardi) [2073435] - powerpc/pseries: Fix use after free in remove_phb_dynamic() (Steve Best) [2073707] - sctp: use the correct skb for security_sctp_assoc_request (Xin Long) [2070915] - s390/mm: check 2KB-fragment page on release (Rafael Aquini) [2026578] - s390/mm: better annotate 2KB pagetable fragments handling (Rafael Aquini) [2026578] - s390/mm: fix 2KB pgtable release race (Rafael Aquini) [2026578] - s390/mm: fix phys vs virt confusion in pgtable allocation routines (Rafael Aquini) [2026578] - net: openvswitch: fix leak of nested actions (Eelco Chaudron) [2073538] - bpf: Let bpf_warn_invalid_xdp_action() report more info (Petr Oros) [2069671] - bpf: Do not WARN in bpf_warn_invalid_xdp_action() (Petr Oros) [2069671]- scsi: qedi: Fix failed disconnect handling (Chris Leech) [2071519] - scsi: iscsi: Fix unbound endpoint error handling (Chris Leech) [2071519] - scsi: iscsi: Fix conn cleanup and stop race during iscsid restart (Chris Leech) [2071519] - scsi: iscsi: Fix endpoint reuse regression (Chris Leech) [2071519] - scsi: iscsi: Release endpoint ID when its freed (Chris Leech) [2071519] - scsi: iscsi: Fix offload conn cleanup when iscsid restarts (Chris Leech) [2071519] - Revert "scsi: iscsi: Fix offload conn cleanup when iscsid restarts" (Chris Leech) [2071519] - scsi: iscsi: Speed up session unblocking and removal (Chris Leech) [2071519] - scsi: iscsi: Fix recovery and unblocking race (Chris Leech) [2071519] - scsi: iscsi: Unblock session then wake up error handler (Chris Leech) [2071519] - bnxt_en: make hw-tc-offload default to off (Ken Cox) [2005101] - bnxt_en: reject indirect blk offload when hw-tc-offload is off (Ken Cox) [2005101]- bpf, test_offload.py: Skip base maps without names (Yauheni Kaliuta) [2025787] - bnx2x: truncate value to original sizing (Manish Chopra) [2040271] - bnx2x: use correct format characters (Manish Chopra) [2040271] - bnx2x: fix built-in kernel driver load failure (Manish Chopra) [2040271] - bnx2x: fix driver load from initrd (Manish Chopra) [2040271] - bnx2x: Replace one-element array with flexible-array member (Manish Chopra) [2040271] - bnx2x: Remove useless DMA-32 fallback configuration (Manish Chopra) [2040271] - bnx2x: Invalidate fastpath HSI version for VFs (Manish Chopra) [2040271] - bnx2x: Utilize firmware 7.13.21.0 (Manish Chopra) [2040271] - bnx2x: constify static inline stub for dev_addr (Manish Chopra) [2040271] - net: bnx2x: fix variable dereferenced before check (Manish Chopra) [2040271] - ethernet: bnx2x: use eth_hw_addr_set() (Manish Chopra) [2040271] - bnx2x: Fix enabling network interfaces without VFs (Manish Chopra) [2040271] - bnx2x: fix an error code in bnx2x_nic_load() (Manish Chopra) [2040271] - bnx2x: remove unused variable 'cur_data_offset' (Manish Chopra) [2040271] - bnx2x: Remove the repeated declaration (Manish Chopra) [2040271] - bnx2x: Fix missing error code in bnx2x_iov_init_one() (Manish Chopra) [2040271] - net: broadcom: bnx2x: Fix wrong function name in comments (Manish Chopra) [2040271] - bnx2x: Remove redundant assignment to err (Manish Chopra) [2040271] - bnx2x: Use fallthrough pseudo-keyword (Manish Chopra) [2040271] - bnx2x: use true,false for bool variables (Manish Chopra) [2040271] - bnx2x: Fix some kernel-doc warnings (Manish Chopra) [2040271] - bnx2x: convert to new udp_tunnel_nic infra (Manish Chopra) [2040271] - bnx2x: Remove hw_reset_t function casts (Manish Chopra) [2040271] - bnx2x: Remove format_fw_ver_t function casts (Manish Chopra) [2040271] - bnx2x: Remove config_init_t function casts (Manish Chopra) [2040271] - bnx2x: Remove read_status_t function casts (Manish Chopra) [2040271] - bnx2x: Drop redundant callback function casts (Manish Chopra) [2040271] - bnx2x: Use napi_alloc_frag() (Manish Chopra) [2040271] - HID: intel-ish-hid: fix module device-id handling (Tony Camuso) [1921300] - mod_devicetable: fix kdocs for ishtp_device_id (Tony Camuso) [1921300] - HID: intel-ish-hid: add support for MODULE_DEVICE_TABLE() (Tony Camuso) [1921300] - platform/x86: isthp_eclite: only load for matching devices (Tony Camuso) [1921300] - platform/x86: Add Intel ishtp eclite driver (Tony Camuso) [1921300] - platform/x86: Add config file for Intel ishtp eclite driver (Tony Camuso) [1921300] - modpost: add guid_t type definition (Tony Camuso) [1921300] - squashfs: provide backing_dev_info in order to disable read-ahead (Brian Foster) [2025351] - mm: fix readahead_page_batch for retry entries (Brian Foster) [2025351] - iomap: convert from readpages to readahead (Brian Foster) [2025351] - fs: convert mpage_readpages to mpage_readahead (Brian Foster) [2025351] - mm: use memalloc_nofs_save in readahead path (Brian Foster) [2025351] - mm: document why we don't set PageReadahead (Brian Foster) [2025351] - mm: add page_cache_readahead_unbounded (Brian Foster) [2025351] - mm: move end_index check out of readahead loop (Brian Foster) [2025351] - mm: add readahead address space operation (Brian Foster) [2025351] - mm: put readahead pages in cache earlier (Brian Foster) [2025351] - mm: remove 'page_offset' from readahead loop (Brian Foster) [2025351] - mm: rename readahead loop variable to 'i' (Brian Foster) [2025351] - mm: rename various 'offset' parameters to 'index' (Brian Foster) [2025351] - mm: use readahead_control to pass arguments (Brian Foster) [2025351] - mm: add new readahead_control API (Brian Foster) [2025351] - mm: move readahead nr_pages check into read_pages (Brian Foster) [2025351] - mm: ignore return value of ->readpages (Brian Foster) [2025351] - mm: return void from various readahead functions (Brian Foster) [2025351] - mm: move readahead prototypes from mm.h (Brian Foster) [2025351] - mpage: mpage_readpages() should submit IO as read-ahead (Brian Foster) [2025351] - mpage: add argument structure for do_mpage_readpage() (Brian Foster) [2025351] - redhat/configs: enable CONFIG_AMD_PTDMA for x86_64 (Sudheesh Mavila) [2027231] - dmaengine: ptdma: handle the cases based on DMA is complete (Sudheesh Mavila) [2027231] - dmaengine: ptdma: fix concurrency issue with multiple dma transfer (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Fix the error handling path in pt_core_init() (Sudheesh Mavila) [2027231] - MAINTAINERS: Fix AMD PTDMA DRIVER entry (Sudheesh Mavila) [2027231] - dmaengine: ptdma: remove PT_OFFSET to avoid redefnition (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Add debugfs entries for PTDMA (Sudheesh Mavila) [2027231] - dmaengine: ptdma: register PTDMA controller as a DMA resource (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Initial driver for the AMD PTDMA (Sudheesh Mavila) [2027231] - isert: support for unsolicited NOPIN with no response (Maurizio Lombardi) [2035915] - iscsit: increment max_cmd_sn for isert on command release (Maurizio Lombardi) [2035915] - sched/debug: Remove mpol_get/put and task_lock/unlock from sched_show_numa (Phil Auld) [2062841] - sched/numa: initialize numa statistics when forking new task (Phil Auld) [2062841] - cgroup: Fix suspicious rcu_dereference_check() usage warning (Phil Auld) [2062841] - sched/cpuacct: Remove redundant RCU read lock (Phil Auld) [2062841] - sched/cpuacct: Optimize away RCU read lock (Phil Auld) [2062841] - sched/cpuacct: Fix charge percpu cpuusage (Phil Auld) [2062841] - sched: replace cpumask_weight with cpumask_empty where appropriate (Phil Auld) [2062841] - sched/rt: Plug rt_mutex_setprio() vs push_rt_task() race (Phil Auld) [2062841] - psi: fix possible trigger missing in the window (Phil Auld) [2062841] - sched: Avoid double preemption in __cond_resched_*lock*() (Phil Auld) [2062841] - sched/fair: Fix all kernel-doc warnings (Phil Auld) [2062841] - sched/rt: Try to restart rt period timer when rt runtime exceeded (Phil Auld) [2062841] - sched/fair: Fix detection of per-CPU kthreads waking a task (Phil Auld) [2062841] - locking: Remove rt_rwlock_is_contended(). (Phil Auld) [2062841] - sched: Trigger warning if ->migration_disabled counter underflows. (Phil Auld) [2062841] - sched/cpuacct: Make user/system times in cpuacct.stat more precise (Phil Auld) [2062841] - sched/cpuacct: Fix user/system in shown cpuacct.usage* (Phil Auld) [2062841] - cpuacct: Convert BUG_ON() to WARN_ON_ONCE() (Phil Auld) [2062841] - cputime, cpuacct: Include guest time in user time in cpuacct.stat (Phil Auld) [2062841] - sched/fair: Document the slow path and fast path in select_task_rq_fair (Phil Auld) [2062841] - drm/i915/ehl: Remove require_force_probe protection (Michel Dänzer) [2048674] - net/sched: fix initialization order when updating chain 0 head (Marcelo Ricardo Leitner) [2044711] - smp: Process pending softirqs in flush_smp_call_function_from_idle() (Waiman Long) [2066087] - irq_work: Optimize irq_work_single() (Waiman Long) [2066087] - irq_work: Cleanup (Waiman Long) [2066087] - smp, irq_work: Continue smp_call_function*() and irq_work*() integration (Waiman Long) [2066087] - irq_work: Define irq_work_single() on !CONFIG_IRQ_WORK too (Waiman Long) [2066087] - sched/headers: Split out open-coded prototypes into kernel/sched/smp.h (Waiman Long) [2066087] - sched: Replace rq::wake_list (Waiman Long) [2066087] - sched: Add rq::ttwu_pending (Waiman Long) [2066087] - irq_work, smp: Allow irq_work on call_single_queue (Waiman Long) [2066087] - smp: Optimize send_call_function_single_ipi() (Waiman Long) [2066087] - smp: Move irq_work_run() out of flush_smp_call_function_queue() (Waiman Long) [2066087] - smp: Optimize flush_smp_call_function_queue() (Waiman Long) [2066087] - sched: Fix smp_call_function_single_async() usage for ILB (Waiman Long) [2066087] - sched: Make scheduler_ipi inline (Waiman Long) [2066087] - sched: Clean up scheduler_ipi() (Waiman Long) [2066087] - sched/core: Remove rq.hrtick_csd_pending (Waiman Long) [2066087] - sched/fair: Clean up comment in nohz_idle_balance() (Waiman Long) [2066087] - context_tracking: Rename context_tracking_is_enabled() => context_tracking_enabled() (Waiman Long) [2066087] - context_tracking: Remove context_tracking_active() (Waiman Long) [2066087] - redhat: configs: Disable CONFIG_MPLS for s390x/zfcpdump (Guillaume Nault) [2051659] - KVM: PPC: Book3S HV: Add infrastructure to support 2nd DAWR (Laurent Vivier) [2059318] - KVM: PPC: Book3S HV: Rename current DAWR macros and variables (Laurent Vivier) [2059318] - uapi/linux/stddef.h: Add include guards (Michel Dänzer) [2072125] - stddef: Introduce struct_group() helper macro (Michel Dänzer) [2072125] - component: Add common helper for compare/release functions (Michel Dänzer) [2072125] - PCI/VGA: Move vgaarb to drivers/pci (Michel Dänzer) [2072125] - vgaarb: don't pass a cookie to vga_client_register (Michel Dänzer) [2072125] - vgaarb: remove the unused irq_set_state argument to vga_client_register (Michel Dänzer) [2072125] - vgaarb: provide a vga_client_unregister wrapper (Michel Dänzer) [2072125] - vgaarb: cleanup vgaarb.h (Michel Dänzer) [2072125] - vgaarb: move the kerneldoc for vga_set_legacy_decoding to vgaarb.c (Michel Dänzer) [2072125] - vgaarb: remove vga_conflicts (Michel Dänzer) [2072125] - vgaarb: remove VGA_DEFAULT_DEVICE (Michel Dänzer) [2072125] - lib/string_helpers: Consolidate string helpers implementation (Michel Dänzer) [2072125] - include/linux/string_helpers.h: add linux/string.h for strlen() (Michel Dänzer) [2072125] - kernel.h: split out container_of() and typeof_member() macros (Michel Dänzer) [2072125] - mm/vmscan: add sync_shrinkers function v3 (Michel Dänzer) [2072125] - lib: devres: Add managed arch_io_reserve_memtype_wc() (Michel Dänzer) [2072125] - lib: devres: Add managed arch_phys_wc_add() (Michel Dänzer) [2072125] - kernel/locking: Use a pointer in ww_mutex_trylock(). (Michel Dänzer) [2072125] - locking/ww-mutex: Fix uninitialized use of ret in test_aa() (Michel Dänzer) [2072125] - kernel/locking: Add context to ww_mutex_trylock() (Michel Dänzer) [2072125] - locking/lockdep: Provide lockdep_assert{,_once}() helpers (Michel Dänzer) [2072125] - mm: gup: pack has_pinned in MMF_HAS_PINNED (Chris von Recklinghausen) [2073217] - mm: gup: allow FOLL_PIN to scale in SMP (Chris von Recklinghausen) [2073217] - CI: Drop baseline runs (Veronika Kabatova)- powerpc/xive: Export XIVE IPI information for online-only processors. (Steve Best) [2038448] - netfilter: conntrack: fix reading nf_conntrack_buckets (Phil Sutter) [2053628] - netfilter: nf_tables: initialize registers in nft_do_chain() (Florian Westphal) [2067966] {CVE-2022-1016} - x86/sev-es: Use __put_user()/__get_user() for data accesses (Vitaly Kuznetsov) [2063719] - x86/sev-es: Handle string port IO to kernel memory properly (Vitaly Kuznetsov) [2063719] - x86/sev: Return an error on a returned non-zero SW_EXITINFO1[31:0] (Vitaly Kuznetsov) [2063719] - x86/sev-es: Use __copy_from_user_inatomic() (Vitaly Kuznetsov) [2063719] - x86/sev-es: Check regs->sp is trusted before adjusting #VC IST stack (Vitaly Kuznetsov) [2063719] - x86/sev-es: Introduce ip_within_syscall_gap() helper (Vitaly Kuznetsov) [2063719] - x86/sev-es: Forward page-faults which happen during emulation (Vitaly Kuznetsov) [2063719] - x86/sev-es: Don't return NULL from sev_es_get_ghcb() (Vitaly Kuznetsov) [2063719] - x86/sev-es: Invalidate the GHCB after completing VMGEXIT (Vitaly Kuznetsov) [2063719] - x86/sev-es: Move sev_es_put_ghcb() in prep for follow on patch (Vitaly Kuznetsov) [2063719] - x86/sev: Fix stack type check in vc_switch_off_ist() (Vitaly Kuznetsov) [2063719] - x86/sev: Allow #VC exceptions on the VC2 stack (Vitaly Kuznetsov) [2063719] - x86/sev-es: Enable #VC specific entry point for real (Vitaly Kuznetsov) [2063719] - x86/cpu: Use pinning mask for CR4 bits needing to be 0 (Vitaly Kuznetsov) [2063719] - x86/asm: Move native_write_cr0/4() out of line (Vitaly Kuznetsov) [2063719] - x86/asm: Pin sensitive CR4 bits (Vitaly Kuznetsov) [2063719] - x86/asm: Pin sensitive CR0 bits (Vitaly Kuznetsov) [2063719] - powerpc/mce: Modify the real address error logging messages (Desnes A. Nunes do Rosario) [2068761] - selftests/powerpc: Add test for real address error handling (Desnes A. Nunes do Rosario) [2068761] - powerpc/pseries: Parse control memory access error (Desnes A. Nunes do Rosario) [2068761] - powerpc/pseries/mce: Fix a typo in error type assignment (Desnes A. Nunes do Rosario) [2068761] - netfilter: nf_tables: validate registers coming from userspace. (Florian Westphal) [2065357] {CVE-2022-1015} - PCI: hv: Propagate coherence from VMbus device to PCI device (Vitaly Kuznetsov) [2068429] - Drivers: hv: vmbus: Propagate VMbus coherence to each VMbus device (Vitaly Kuznetsov) [2068429] - Revert "xfs: actually bump warning counts when we send warnings" (Carlos Maiolino) [2059262] - perf/x86/intel: Add a quirk for the calculation of the number of counters on Alder Lake (Michael Petlan) [2039996] - perf stat: Support --cputype option for hybrid events (Michael Petlan) [1971941] - perf/x86/intel/uncore: Add IMC uncore support for ADL (Michael Petlan) [2042217] - tipc: fix kernel panic when enabling bearer (Xin Long) [2061233] - media: v4l: ioctl: Fix memory leak in video_usercopy (Jarod Wilson) [1954604] {CVE-2021-30002}- esp6: fix check on ipv6_skip_exthdr's return value (Sabrina Dubroca) [2054075] - scsi: iscsi: Fix nop handling during conn recovery (Chris Leech) [2069969] - scsi: iscsi: Merge suspend fields (Chris Leech) [2069969] - scsi: iscsi: Fix offload conn cleanup when iscsid restarts (Chris Leech) [2069969] - scsi: iscsi: Move iscsi_ep_disconnect (Chris Leech) [2069969] - CI: Remove deprecated option (Veronika Kabatova)- redhat: add new KUNIT tests to mod-internal.list (Nico Pache) [2065444] - kasan: test: prevent cache merging in kmem_cache_double_destroy (Nico Pache) [2065444] - kasan: test: fix compatibility with FORTIFY_SOURCE (Nico Pache) [2065444] - kasan: test: add test case for double-kmem_cache_destroy() (Nico Pache) [2065444] - kasan: add ability to detect double-kmem_cache_destroy() (Nico Pache) [2065444] - kasan: test: add globals left-out-of-bounds test (Nico Pache) [2065444] - kasan: test: silence intentional read overflow warnings (Nico Pache) [2065444] - kasan: test: bypass __alloc_size checks (Nico Pache) [2065444] - kasan: test: add memcpy test that avoids out-of-bounds write (Nico Pache) [2065444] - kasan: test: clean up ksize_uaf (Nico Pache) [2065444] - kasan: test: disable kmalloc_memmove_invalid_size for HW_TAGS (Nico Pache) [2065444] - kasan: test: only do kmalloc_uaf_memset for generic mode (Nico Pache) [2065444] - kasan: test: avoid corrupting memory via memset (Nico Pache) [2065444] - kasan: test: avoid writing invalid memory (Nico Pache) [2065444] - kasan: test: rework kmalloc_oob_right (Nico Pache) [2065444] - Documentation: kunit: remove claims that kunit is a mocking framework (Nico Pache) [2065444] - kunit: Reset suite count after running tests (Nico Pache) [2065444] - kunit: drop assumption in kunit-log-test about current suite (Nico Pache) [2065444] - string.h: Introduce memset_startat() for wiping trailing members and padding (Nico Pache) [2065444] - string.h: Introduce memset_after() for wiping trailing members/padding (Nico Pache) [2065444] - lib: Introduce CONFIG_MEMCPY_KUNIT_TEST (Nico Pache) [2065444] - kunit: fix kernel-doc warnings due to mismatched arg names (Nico Pache) [2065444] - kunit: fix reference count leak in kfree_at_end (Nico Pache) [2065444] - kunit: Print test statistics on failure (Nico Pache) [2065444] - fat: Add KUnit tests for checksums and timestamps (Nico Pache) [2065444] - kunit: add unit test for filtering suites by names (Nico Pache) [2065444] - kunit: test: Add example tests which are always skipped (Nico Pache) [2065444] - kunit: Support skipped tests (Nico Pache) [2065444] - redhat: remove TEST_LIST_SORT config definitions (Nico Pache) [2065444] - lib/test: convert test_sort.c to use KUnit (Nico Pache) [2065444] - lib/test: convert lib/test_list_sort.c to use KUnit (Nico Pache) [2065444] - kunit: introduce kunit_kmalloc_array/kunit_kcalloc() helpers (Nico Pache) [2065444] - kunit: Add gnu_printf specifiers (Nico Pache) [2065444] - lib/cmdline_kunit: Remove a cast which are no-longer required (Nico Pache) [2065444] - kernel/sysctl-test: Remove some casts which are no-longer required (Nico Pache) [2065444] - device property: Remove some casts in property-entry-test (Nico Pache) [2065444] - Documentation: kunit: Clean up some string casts in examples (Nico Pache) [2065444] - kunit: Assign strings to 'const char*' in STREQ assertions (Nico Pache) [2065444] - kunit: Do not typecheck binary assertions (Nico Pache) [2065444] - Documentation: kunit: document support for QEMU in kunit_tool (Nico Pache) [2065444] - kunit: Add 'kunit_shutdown' option (Nico Pache) [2065444] - Documentation: kunit: Update kunit_tool page (Nico Pache) [2065444] - Documentation: kunit: add tips for running KUnit (Nico Pache) [2065444] - slub: remove resiliency_test() function (Nico Pache) [2065444] - mm/slub, kunit: add a KUnit test for SLUB debugging functionality (Nico Pache) [2065444] - kunit: make test->lock irq safe (Nico Pache) [2065444] - docs: dev-tools: kunit: avoid using ReST :doc:`foo` markup (Nico Pache) [2065444] - docs: dev-tools: kunit: don't use a table for docs name (Nico Pache) [2065444] - kunit: make KUNIT_EXPECT_STREQ() quote values, don't print literals (Nico Pache) [2065444] - kunit: Match parenthesis alignment to improve code readability (Nico Pache) [2065444] - openvswitch: always update flow key after nat (Aaron Conole) [2066885] - md: initialize percpu refcounters using PERCU_REF_ALLOW_REINIT (Nigel Croxon) [2032272] - net: fix a memleak when uncloning an skb dst and its metadata (Hangbin Liu) [2068355] - net: do not keep the dst cache when uncloning an skb dst and its metadata (Hangbin Liu) [2068355] - net: phy: at803x: move page selection fix to config_init (Petr Oros) [2021822] - net: phylink: rejig SFP interface selection in ksettings_set() (Petr Oros) [2021822] - ptp: dp83640: don't define PAGE0 (Petr Oros) [2021822] - net: phylink: Update SFP selected interface on advertising changes (Petr Oros) [2021822] - net: phy: marvell10g: fix broken PHY interrupts for anyone after us in the driver probe list (Petr Oros) [2021822] - net: phy: marvell: Add WAKE_PHY support to WOL event (Petr Oros) [2021822] - net: phy: micrel: Fix link detection on ksz87xx switch" (Petr Oros) [2021822] - net: phy: micrel: Fix detection of ksz87xx switch (Petr Oros) [2021822] - net: phy: broadcom: re-add check for PHY_BRCM_DIS_TXCRXC_NOENRGY on the BCM54811 PHY (Petr Oros) [2021822] - net: phy: at803x: simplify custom phy id matching (Petr Oros) [2021822] - net: phy: intel-xway: Add RGMII internal delay configuration (Petr Oros) [2021822] - net: phylink: cleanup ksettings_set (Petr Oros) [2021822] - net: phylink: add phy change pause mode debug (Petr Oros) [2021822] - net: phy: add API to read 802.3-c45 IDs (Petr Oros) [2021822] - net: phy: Fix data type in DP83822 dp8382x_disable_wol() (Petr Oros) [2021822] - net: phy: marvell10g: enable WoL for 88X3310 and 88E2110 (Petr Oros) [2021822] - net: phy: marvell10g: fix differentiation of 88X3310 from 88X3340 (Petr Oros) [2021822] - net: phy: replace if-else statements with switch (Petr Oros) [2021822] - net: phy: remove unnecessary line continuation (Petr Oros) [2021822] - net: phy: print the function name by __func__ instead of an fixed string (Petr Oros) [2021822] - net: phy: fix formatting issues with braces (Petr Oros) [2021822] - net: phy: fix space alignment issues (Petr Oros) [2021822] - net: phy: delete repeated words of comments (Petr Oros) [2021822] - net: phy: correct format of block comments (Petr Oros) [2021822] - net: phy: change format of some declarations (Petr Oros) [2021822] - net: phy: micrel: remove redundant assignment to pointer of_node (Petr Oros) [2021822] - net: phy: dp83867: perform soft reset and retain established link (Petr Oros) [2021822] - net: phy: do not print dump stack if device was removed (Petr Oros) [2021822] - net: phy: probe for C45 PHYs that return PHY ID of zero in C22 space (Petr Oros) [2021822] - net: phy: marvell: use phy_modify_changed() for marvell_set_polarity() (Petr Oros) [2021822] - net: phy: Fix inconsistent indenting (Petr Oros) [2021822] - net: mdiobus: get rid of a BUG_ON() (Petr Oros) [2021822] - net: phy: marvell: enable downshift by default (Petr Oros) [2021822] - net: phy: marvell: add downshift support for M88E1240 (Petr Oros) [2021822] - net: phy: marvell: fix m88e1111_set_downshift (Petr Oros) [2021822] - net: phy: marvell: fix m88e1011_set_downshift (Petr Oros) [2021822] - net: phy: marvell: don't use empty switch default case (Petr Oros) [2021822] - net: phy: intel-xway: enable integrated led functions (Petr Oros) [2021822] - net: phy: at803x: fix probe error if copper page is selected (Petr Oros) [2021822] - net: phy: marvell: add support for Amethyst internal PHY (Petr Oros) [2021822] - net: dsa: mv88e6xxx: simulate Amethyst PHY model number (Petr Oros) [2021822] - net: phy: marvell: use assignment by bitwise AND operator (Petr Oros) [2021822] - net: phy: marvell: fix HWMON enable register for 6390 (Petr Oros) [2021822] - net: phy: marvell: refactor HWMON OOP style (Petr Oros) [2021822] - net: phy: at803x: select correct page on config init (Petr Oros) [2021822] - net: phy: marvell: fix detection of PHY on Topaz switches (Petr Oros) [2021822] - net: phy: marvell10g: change module description (Petr Oros) [2021822] - net: phy: marvell10g: differentiate 88E2110 vs 88E2111 (Petr Oros) [2021822] - net: phy: add constants for 2.5G and 5G speed in PCS speed register (Petr Oros) [2021822] - net: phy: marvell10g: fix driver name for mv88e2110 (Petr Oros) [2021822] - net: phy: marvell10g: add separate structure for 88X3340 (Petr Oros) [2021822] - net: phy: marvell10g: support other MACTYPEs (Petr Oros) [2021822] - net: phy: marvell10g: store temperature read method in chip strucutre (Petr Oros) [2021822] - net: phy: marvell10g: check for correct supported interface mode (Petr Oros) [2021822] - net: phy: marvell10g: support all rate matching modes (Petr Oros) [2021822] - net: phy: marvell10g: add MACTYPE definitions for 88E21xx (Petr Oros) [2021822] - net: phy: marvell10g: add all MACTYPE definitions for 88X33x0 (Petr Oros) [2021822] - net: phy: marvell10g: indicate 88X33x0 only port control registers (Petr Oros) [2021822] - net: phy: marvell10g: allow 5gbase-r and usxgmii (Petr Oros) [2021822] - net: phy: marvell10g: fix typo (Petr Oros) [2021822] - net: phy: marvell10g: rename register (Petr Oros) [2021822] - net: fec: use mac-managed PHY PM (Petr Oros) [2021822] - net: phy: broadcom: Add statistics for all Gigabit PHYs (Petr Oros) [2021822] - net: phy: broadcom: Only advertise EEE for supported modes (Petr Oros) [2021822] - net: phy: remove repeated word (Petr Oros) [2021822] - net: phy: Correct function name mdiobus_register_board_info() in comment (Petr Oros) [2021822] - net: phy: lan87xx: fix access to wrong register of LAN87xx (Petr Oros) [2021822] - net: phy: at803x: remove at803x_aneg_done() (Petr Oros) [2021822] - net: phy: broadcom: Fix RGMII delays for BCM50160 and BCM50610M (Petr Oros) [2021822] - docs: networking: phy: Improve placement of parenthesis (Petr Oros) [2021822] - net: phy: broadcom: Add power down exit reset state delay (Petr Oros) [2021822] - net: phy: make mdio_bus_phy_suspend/resume as __maybe_unused (Petr Oros) [2021822] - net: mdio: Remove of_phy_attach() (Petr Oros) [2021822] - net: phy: broadcom: Do not modify LED configuration for SFP module PHYs (Petr Oros) [2021822] - net: phy: Add is_on_sfp_module flag and phy_on_sfp helper (Petr Oros) [2021822] - net: phy: broadcom: Set proper 1000BaseX/SGMII interface mode for BCM54616S (Petr Oros) [2021822] - net: phy: marvell: Ensure SGMII auto-negotiation is enabled for 88E1111 (Petr Oros) [2021822] - net: phylink: Add 5gbase-r support (Petr Oros) [2021822] - net: phy: Add 5GBASER interface mode (Petr Oros) [2021822] - net: phy: rename PHY_IGNORE_INTERRUPT to PHY_MAC_INTERRUPT (Petr Oros) [2021822] - net: phy: at803x: add MDIX support to AR8031/33 (Petr Oros) [2021822] - net: phy: broadcom: Allow BCM54210E to configure APD (Petr Oros) [2021822] - net: phy: broadcom: Remove unused flags (Petr Oros) [2021822] - net: phy: broadcom: Avoid forward for bcm54xx_config_clock_delay() (Petr Oros) [2021822] - net: phy: consider that suspend2ram may cut off PHY power (Petr Oros) [2021822] - net: phy: bcm7xxx: Add an entry for BCM72116 (Petr Oros) [2021822] - net: mdiobus: Remove WARN_ON_ONCE(in_interrupt()) (Petr Oros) [2021822] - net: Use kobj_to_dev() API (Petr Oros) [2021822] - net: phy: Fixup kernel doc (Petr Oros) [2021822] - net: phy: bcm7xxx: Add an entry for BCM72113 (Petr Oros) [2021822] - net: phy: mchp: Add support for LAN8814 QUAD PHY (Petr Oros) [2021822] - net: dp83867: Fix WoL SecureOn password (Petr Oros) [2021822] - net: phy: at803x: constify static regulator_ops (Petr Oros) [2021822] - net: phy: marvell10g: support XFI rate matching mode (Petr Oros) [2021822] - net: switch to using PHY_INTERFACE_MODE_10GBASER rather than 10GKR (Petr Oros) [2021822] - netfilter: conntrack: Add and use nf_ct_set_auto_assign_helper_warned() (Phil Sutter) [1896241] - net: do not reuse skbuff allocated from skbuff_fclone_cache in the skb cache (Ivan Vecera) [2069781] - skbuff: queue NAPI_MERGED_FREE skbs into NAPI cache instead of freeing (Ivan Vecera) [2069781] - skbuff: allow to use NAPI cache from __napi_alloc_skb() (Ivan Vecera) [2069781] - skbuff: allow to optionally use NAPI cache from __alloc_skb() (Ivan Vecera) [2069781] - skbuff: introduce {,__}napi_build_skb() which reuses NAPI cache heads (Ivan Vecera) [2069781] - skbuff: move NAPI cache declarations upper in the file (Ivan Vecera) [2069781] - skbuff: remove __kfree_skb_flush() (Ivan Vecera) [2069781] - skbuff: use __build_skb_around() in __alloc_skb() (Ivan Vecera) [2069781] - skbuff: simplify __alloc_skb() a bit (Ivan Vecera) [2069781] - skbuff: make __build_skb_around() return void (Ivan Vecera) [2069781] - skbuff: simplify kmalloc_reserve() (Ivan Vecera) [2069781] - skbuff: move __alloc_skb() next to the other skb allocation functions (Ivan Vecera) [2069781] - net: Introduce {netdev,napi}_alloc_frag_align() (Ivan Vecera) [2069781] - mm: page_frag: Introduce page_frag_alloc_align() (Ivan Vecera) [2069781] - perf tests attr: Add missing topdown metrics events (Michael Petlan) [1986275] - cifs: Return correct error code from smb2_get_enc_key (Ronnie Sahlberg) [2058369] - ipv4: avoid using shared IP generator for connected sockets (Paolo Abeni) [2062427] {CVE-2020-36516} - crypto: cryptd - Fix skcipher instance memory leak (Vladis Dronov) [2004344] - EVM: fix the evm= __setup handler return value (Bruno Meneguele) [2063900] - integrity: include keyring name for unknown key request (Bruno Meneguele) [2063900] - ima: limit secure boot feedback scope for appraise (Bruno Meneguele) [2063900] - integrity: invalid kernel parameters feedback (Bruno Meneguele) [2063900] - ima: add check for enforced appraise option (Bruno Meneguele) [2063900] - ima: Allow template selection with ima_template[_fmt]= after ima_hash= (Bruno Meneguele) [2063900] - ima: Remove ima_policy file before directory (Bruno Meneguele) [2063900] - integrity: check the return value of audit_log_start() (Bruno Meneguele) [2063900] - ima: fix deadlock when traversing "ima_default_rules". (Bruno Meneguele) [2063900] - evm: Introduce evm_revalidate_status() (Bruno Meneguele) [2063900] - evm: Refuse EVM_ALLOW_METADATA_WRITES only if an HMAC key is loaded (Bruno Meneguele) [2063900] - evm: Load EVM key in ima_load_x509() to avoid appraisal (Bruno Meneguele) [2063900] - evm: Execute evm_inode_init_security() only when an HMAC key is loaded (Bruno Meneguele) [2063900] - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum (Bruno Meneguele) [2063900] - RHEL-only: KVM: selftests: Fix AArch64 compilation (Andrew Jones) [2071997] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Andrew Jones) [2071997] - RHEL-only: KVM: selftests: Remove unused modes (Andrew Jones) [2071997]- netfilter: nf_tables_offload: incorrect flow offload action array size (Florian Westphal) [2056728] {CVE-2022-25636} - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in nft_flow_rule_create (Florian Westphal) [2056728] - KVM: SVM: Allow AVIC support on system w/ physical APIC ID > 255 (Bandan Das) [2033068] - PCI/ACPI: Fix acpi_pci_osc_control_set() kernel-doc comment (Mark Langsdorf) [2049209] - PCI/ACPI: Check for _OSC support in acpi_pci_osc_control_set() (Mark Langsdorf) [2049209] - PCI/ACPI: Move _OSC query checks to separate function (Mark Langsdorf) [2049209] - PCI/ACPI: Move supported and control calculations to separate functions (Mark Langsdorf) [2049209] - PCI/ACPI: Remove OSC_PCI_SUPPORT_MASKS and OSC_PCI_CONTROL_MASKS (Mark Langsdorf) [2049209] - kabi: Adding symbol blkdev_get_by_dev (fs/block_dev.c) (Čestmír Kalina) [2010296] - kabi: Adding symbol thaw_bdev (fs/block_dev.c) (Čestmír Kalina) [2010296] - kabi: Adding symbol freeze_bdev (fs/block_dev.c) (Čestmír Kalina) [2010296] - s390/cio: make ccw_device_dma_* more robust (Thomas Huth) [2066709] - perf/x86/intel/uncore: Make uncore_discovery clean for 64 bit addresses (Michael Petlan) [2069237] - redhat: switch secureboot kernel image signing to release keys (Augusto Caringi) - ice: xsk: Stop Rx processing when ntc catches ntu (Ivan Vecera) [2069082] - ice: xsk: Fix indexing in ice_tx_xsk_pool() (Ivan Vecera) [2069082] - ice: Fix kernel crash in XDP scenario (Ivan Vecera) [2069082]- do_wait: make PIDTYPE_PID case O(1) instead of O(n) (Nico Pache) [2055973] - n_tty: wake up poll(POLLRDNORM) on receiving data (Rafael Aquini) [2033338] - powerpc/papr_scm: Implement initial support for injecting smart errors (Steve Best) [1987103] - mm: memcg: synchronize objcg lists with a dedicated spinlock (Rafael Aquini) [2064847] - kasan: fix quarantine conflicting with init_on_free (Rafael Aquini) [2064847] - mm/hwpoison: clear MF_COUNT_INCREASED before retrying get_any_page() (Rafael Aquini) [2064847] - mm/memcg: relocate mod_objcg_mlstate(), get_obj_stock() and put_obj_stock() (Rafael Aquini) [2064847] - mm: move node_reclaim_distance to fix NUMA without SMP (Rafael Aquini) [2064847] - vmalloc: choose a better start address in vm_area_register_early() (Rafael Aquini) [2064847] - mm/vmalloc: check various alignments when debugging (Rafael Aquini) [2064847] - mm/vmalloc: don't allow VM_NO_GUARD on vmap() (Rafael Aquini) [2064847] - mm, thp: bail out early in collapse_file for writeback page (Rafael Aquini) [2064847] - mm/sparse: set SECTION_NID_SHIFT to 6 (Rafael Aquini) [2064847] - mm/memory_hotplug: fix kerneldoc comment for __remove_memory (Rafael Aquini) [2064847] - mm: fix memory_failure() handling of dax-namespace metadata (Rafael Aquini) [2064847] - mm: teach pfn_to_online_page() about ZONE_DEVICE section collisions (Rafael Aquini) [2064847] - mm: teach pfn_to_online_page() to consider subsection validity (Rafael Aquini) [2064847] - mm: move pfn_to_online_page() out of line (Rafael Aquini) [2064847] - Revert "mm: use early_pfn_to_nid in page_ext_init" (Rafael Aquini) [2064847] - x86/mm: Fix kern_addr_valid() to cope with existing but not present entries (Rafael Aquini) [2064847] - powerpc/book3s64: Fix error handling in mm_iommu_do_alloc() (Rafael Aquini) [2064847] - powerpc/pkeys: remove unused pkey_allows_readwrite (Rafael Aquini) [2064847] - x86/hyperv: Output host build info as normal Windows version number (Vitaly Kuznetsov) [2060700] - powerpc/smp: Update cpu_core_map on all PowerPc systems (Diego Domingos) [2064104] - crypto: ccp - ccp_dmaengine_unregister release dma channels (Vladis Dronov) [2015374] - crypto: ccp - remove redundant ret variable (Vladis Dronov) [2015374] - crypto: ccp - Ensure psp_ret is always init'd in __sev_platform_init_locked() (Vladis Dronov) [2015374] - crypto: ccp - remove unneeded semicolon (Vladis Dronov) [2015374] - crypto: ccp - Add SEV_INIT_EX support (Vladis Dronov) [2015374] - crypto: ccp - Add psp_init_on_probe module parameter (Vladis Dronov) [2015374] - crypto: ccp - Refactor out sev_fw_alloc() (Vladis Dronov) [2015374] - crypto: ccp - Move SEV_INIT retry for corrupted data (Vladis Dronov) [2015374] - crypto: ccp - Add SEV_INIT rc error logging on init (Vladis Dronov) [2015374] - crypto: ccp - no need to initialise statics to 0 (Vladis Dronov) [2015374] - ccp: ccp - add support for Green Sardine (Vladis Dronov) [2015374] - crypto: ccp - fix command queuing to TEE ring buffer (Vladis Dronov) [2015374] - crypto: ccp - reduce tee command status polling interval from 5ms to 1ms (Vladis Dronov) [2015374] - crypto: ccp - provide in-kernel API to submit TEE commands (Vladis Dronov) [2015374] - crypto: ccp - add TEE support for Raven Ridge (Vladis Dronov) [2015374] - crypto: ccp - check whether PSP supports SEV or TEE before initialization (Vladis Dronov) [2015374] - ice: Allow to pass VLAN tagged packets to VF when port VLAN is configured (Ivan Vecera) [2071027] - tools headers UAPI: Sync linux/perf_event.h with the kernel sources (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix power_pmu_disable to call clear_pmi_irq_pending only if PMI is pending (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Only define power_pmu_wants_prompt_pmi() for CONFIG_PPC64 (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Add data source encodings for power10 platform (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Add encodings to represent data based on newer composite PERF_MEM_LVLNUM* fields (Desnes A. Nunes do Rosario) [1992813] - perf: Add new macros for mem_hops field (Desnes A. Nunes do Rosario) [1992813] - tools headers UAPI: Add new macros for mem_hops field to perf_event.h (Desnes A. Nunes do Rosario) [1992813] - bpf: Remove config check to enable bpf support for branch records (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Update global/local variants for p_stage_cyc (Desnes A. Nunes do Rosario) [1992813] - perf sort: Include global and local variants for p_stage_cyc sort key (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'p_stage_cyc' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'ins_lat' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'weight' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf vendor events power10: Add metric events JSON file for power10 platform (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Add support to expose instruction and data address registers as part of extended regs (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Refactor the code definition of perf reg extended mask in tools side header file (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Expose instruction and data address registers as part of extended regs (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Refactor the code definition of perf reg extended mask (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix data source encodings for L2.1 and L3.1 accesses (Desnes A. Nunes do Rosario) [1992813] - tools/perf: Add mem_hops field in perf_mem_data_src structure (Desnes A. Nunes do Rosario) [1992813] - perf: Add mem_hops field in perf_mem_data_src structure (Desnes A. Nunes do Rosario) [1992813] - perf: Add comment about current state of PERF_MEM_LVL_* namespace and remove an extra line (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix the check for SIAR value (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Drop the case of returning 0 as instruction pointer (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Use stack siar instead of mfspr (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf/hv-gpci: Fix counter value parsing (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix PMU callbacks to clear pending PMI before resetting an overflown PMC (Desnes A. Nunes do Rosario) [1992813] - CI: Remove deprecated option (Veronika Kabatova)- bareudp: use ipv6_mod_enabled to check if IPv6 enabled (Hangbin Liu) [2063813] - powerpc/mm/numa: skip NUMA_NO_NODE onlining in parse_numa_properties() (Diego Domingos) [2048218] - redhat: copy rpminspect to dist-git repo (Jarod Wilson) - configs: enable CONFIG_RMI4_F3A (Benjamin Tissoires) [2067219] - Input: synaptics-rmi4 - add support for F3A (Benjamin Tissoires) [2067219] - RDMA/cma: Do not change route.addr.src_addr.ss_family (Kamal Heib) [2032074] {CVE-2021-4028} - drm/i915/adl_s: Remove require_force_probe protection (Michel Dänzer) [2025896] - drm/i915/adl_s: Update ADL-S PCI IDs (Michel Dänzer) [2025896] - drm/i915: Limit Wa_22010178259 to affected platforms (Michel Dänzer) [2025896] - drm/i915/adl_s: Fix dma_mask_size to 39 bit (Michel Dänzer) [2025896] - drm/i915/dmc: Update DMC to v2.14 on ADL-P (Michel Dänzer) [2060051] - drm/i915: Update memory bandwidth formulae (Michel Dänzer) [2060051] - drm/i915/fb: Fold modifier CCS type/tiling attribute to plane caps (Michel Dänzer) [2060051] - drm/i915/fb: Don't store bitmasks in the intel_plane_caps enum (Michel Dänzer) [2060051] - drm/i915/adl_p: Add ddc pin mapping (Michel Dänzer) [2060051] - iommu/amd: Fix I/O page table memory leak (Jerry Snitselaar) [2053210] - iommu/amd: Recover from event log overflow (Jerry Snitselaar) [2053210]- redhat: tune rpminspect w/additions from rhel9 branch (Jarod Wilson) - powerpc/pseries/ddw: Revert "Extend upper limit for huge DMA window for persistent memory" (Steve Best) [2056080] - x86/tsc: Disable clocksource watchdog for TSC on qualified platorms (Prarit Bhargava) [1971939] - x86/tsc: Add a timer to make sure TSC_adjust is always checked (Prarit Bhargava) [1971939] - x86/hpet: Use another crystalball to evaluate HPET usability (Prarit Bhargava) [1971939] - x86/tsc: Respect tsc command line paraemeter for clocksource_tsc_early (Prarit Bhargava) [1971939] - [s390] s390/pci: fix zpci_zdev_put() on reserve (Claudio Imbrenda) [2039185] - [s390] s390/pci: fix use after free of zpci_dev (Claudio Imbrenda) [2039185] - [s390] s390/cio: make ccw_device_dma_* more robust (Claudio Imbrenda) [2039186] - [s390] s390/pci: add s390_iommu_aperture kernel parameter (Claudio Imbrenda) [2039181] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Paul Lai) [1918929] - kvm: selftests: sync uapi/linux/kvm.h with Linux header (Paul Lai) [1918929] - kvm: selftests: conditionally build vm_xsave_req_perm() (Paul Lai) [1918929] - x86/kvm/fpu: Remove kvm_vcpu_arch.guest_supported_xcr0 (Paul Lai) [1918929] - x86/kvm/fpu: Limit guest user_xfeatures to supported bits of XCR0 (Paul Lai) [1918929] - KVM: x86/cpuid: Exclude unpermitted xfeatures sizes at KVM_GET_SUPPORTED_CPUID (Paul Lai) [1918929] - KVM: x86: Move CPUID.(EAX=0x12,ECX=1) mangling to __kvm_update_cpuid_runtime() (Paul Lai) [1918929] - KVM: x86/cpuid: Clear XFD for component i if the base feature is missing (Paul Lai) [1918929] - KVM: x86: Do runtime CPUID update before updating vcpu->arch.cpuid_entries (Paul Lai) [1918929] - x86/fpu: Fix inline prefix warnings (Paul Lai) [1918929] - selftest: kvm: Add amx selftest (Paul Lai) [1918929] - selftest: kvm: Move struct kvm_x86_state to header (Paul Lai) [1918929] - selftest: kvm: Reorder vcpu_load_state steps for AMX (Paul Lai) [1918929] - kvm: x86: Disable interception for IA32_XFD on demand (Paul Lai) [1918929] - x86/fpu: Provide fpu_sync_guest_vmexit_xfd_state() (Paul Lai) [1918929] - kvm: selftests: Add support for KVM_CAP_XSAVE2 (Paul Lai) [1918929] - kvm: x86: Add support for getting/setting expanded xstate buffer (Paul Lai) [1918929] - x86/fpu: Add uabi_size to guest_fpu (Paul Lai) [1918929] - kvm: x86: Add CPUID support for Intel AMX (Paul Lai) [1918929] - kvm: x86: Add XCR0 support for Intel AMX (Paul Lai) [1918929] - kvm: x86: Disable RDMSR interception of IA32_XFD_ERR (Paul Lai) [1918929] - kvm: x86: Emulate IA32_XFD_ERR for guest (Paul Lai) [1918929] - kvm: x86: Intercept #NM for saving IA32_XFD_ERR (Paul Lai) [1918929] - x86/fpu: Prepare xfd_err in struct fpu_guest (Paul Lai) [1918929] - kvm: x86: Add emulation for IA32_XFD (Paul Lai) [1918929] - x86/fpu: Provide fpu_update_guest_xfd() for IA32_XFD emulation (Paul Lai) [1918929] - kvm: x86: Enable dynamic xfeatures at KVM_SET_CPUID2 (Paul Lai) [1918929] - x86/fpu: Provide fpu_enable_guest_xfd_features() for KVM (Paul Lai) [1918929] - x86/fpu: Add guest support to xfd_enable_feature() (Paul Lai) [1918929] - x86/fpu: Make XFD initialization in __fpstate_reset() a function argument (Paul Lai) [1918929] - kvm: x86: Exclude unpermitted xfeatures at KVM_GET_SUPPORTED_CPUID (Paul Lai) [1918929] - kvm: x86: Fix xstate_required_size() to follow XSTATE alignment rule (Paul Lai) [1918929] - x86/fpu: Prepare guest FPU for dynamically enabled FPU features (Paul Lai) [1918929] - x86/fpu: Extend fpu_xstate_prctl() with guest permissions (Paul Lai) [1918929] - kvm: selftests: move ucall declarations into ucall_common.h (Paul Lai) [1918929] - kvm: selftests: move base kvm_util.h declarations to kvm_util_base.h (Paul Lai) [1918929] - cpuid: kvm_find_kvm_cpuid_features() should be declared 'static' (Paul Lai) [1918929] - KVM: x86: Make sure KVM_CPUID_FEATURES really are KVM_CPUID_FEATURES (Paul Lai) [1918929] - KVM: x86: Add helper to consolidate core logic of SET_CPUID{2} flows (Paul Lai) [1918929]- scsi: mpi3mr: Fix flushing !WQ_MEM_RECLAIM events warning (Tomas Henzl) [2052278] - scsi: mpi3mr: Fix memory leaks (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix reporting of actual data transfer size (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix cmnd getting marked as in use forever (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix hibernation issue (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix printing of pending I/O count (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix deadlock while canceling the fw event (Tomas Henzl) [2054814] - scsi: mpi3mr: Fixes around reply request queues (Tomas Henzl) [2054814] - scsi: mpi3mr: Enhanced Task Management Support Reply handling (Tomas Henzl) [2054814] - scsi: mpi3mr: Use TM response codes from MPI3 headers (Tomas Henzl) [2054814] - scsi: mpi3mr: Increase internal cmnds timeout to 60s (Tomas Henzl) [2054814] - scsi: mpi3mr: Do access status validation before adding devices (Tomas Henzl) [2054814] - scsi: mpi3mr: Update MPI3 headers - part2 (Tomas Henzl) [2054814] - scsi: mpi3mr: Update MPI3 headers - part1 (Tomas Henzl) [2054814] - scsi: mpi3mr: Don't reset IOC if cmnds flush with reset status (Tomas Henzl) [2054814] - scsi: mpi3mr: Replace spin_lock() with spin_lock_irqsave() (Tomas Henzl) [2054814] - scsi: mpi3mr: Add debug APIs based on logging_level bits (Tomas Henzl) [2054814] - scsi: mpt3sas: Remove scsi_dma_map() error messages (Tomas Henzl) [2057021] - net/mlx5: Fix wrong limitation of metadata match on ecpf (Amir Tzin) [2049094] - nfsd: fix use-after-free due to delegation race (Thiago Becker) [2053262] - dma-buf: cma_heap: Fix mutex locking section (Michel Dänzer) [2044440] - drm/amdkfd: Check for null pointer after calling kmemdup (Michel Dänzer) [2044440] - drm/atomic: Check new_crtc_state->active to determine if CRTC needs disable in self refresh mode (Michel Dänzer) [2044440] - drm/amd: avoid suspend on dGPUs w/ s2idle support when runtime PM enabled (Michel Dänzer) [2044440] - drm/i915/overlay: Prevent divide by zero bugs in scaling (Michel Dänzer) [2044440] - dma-buf: heaps: Fix potential spectre v1 gadget (Michel Dänzer) [2044440] - drm/amd/display: Force link_rate as LINK_RATE_RBR2 for 2018 15" Apple Retina panels (Michel Dänzer) [2044440] - drm/amd/display: watermark latencies is not enough on DCN31 (Michel Dänzer) [2044440] - drm/amd/pm: correct the MGpuFanBoost support for Beige Goby (Michel Dänzer) [2044440] - drm/i915/adlp: Fix TypeC PHY-ready status readout (Michel Dänzer) [2044440] - drm/nouveau: fix off by one in BIOS boundary checking (Michel Dänzer) [2044440] - drm/i915: Disable DSB usage for now (Michel Dänzer) [2044440] - Revert "drm/ast: Support 1600x900 with 108MHz PCLK" (Michel Dänzer) [2044440] - drm/amd/display: Fix FP start/end for dcn30_internal_validate_bw. (Michel Dänzer) [2044440] - drm/atomic: Add the crtc to affected crtc only if uapi.enable = true (Michel Dänzer) [2044440] - drm/amdgpu: Use correct VIEWPORT_DIMENSION for DCN2 (Michel Dänzer) [2044440] - drm/amd/display: reset dcn31 SMU mailbox on failures (Michel Dänzer) [2044440] - drm/vmwgfx: Remove explicit transparent hugepages support (Michel Dänzer) [2044440] - drm/radeon: fix error handling in radeon_driver_open_kms (Michel Dänzer) [2044440] - drm/i915/display/ehl: Update voltage swing table (Michel Dänzer) [2044440] - drm/nouveau/kms/nv04: use vzalloc for nv04_display (Michel Dänzer) [2044440] - drm/amd/display: Fix the uninitialized variable in enable_stream_features() (Michel Dänzer) [2044440] - amdgpu/pm: Make sysfs pm attributes as read-only for VFs (Michel Dänzer) [2044440] - drm/amdgpu: fixup bad vram size on gmc v8 (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix gmc bo pin count leak in SRIOV (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix psp tmr bo pin count leak in SRIOV (Michel Dänzer) [2044440] - drm/amdkfd: Fix error handling in svm_range_add (Michel Dänzer) [2044440] - drm/vmwgfx: Introduce a new placement for MOB page tables (Michel Dänzer) [2044440] - drm/vmwgfx: Release ttm memory if probe fails (Michel Dänzer) [2044440] - drm/amd/display: add else to avoid double destroy clk_mgr (Michel Dänzer) [2044440] - drm/amdgpu/display: set vblank_disable_immediate for DC (Michel Dänzer) [2044440] - drm/amd/display: check top_pipe_to_program pointer (Michel Dänzer) [2044440] - drm: panel-orientation-quirks: Add quirk for the Lenovo Yoga Book X91F/L (Michel Dänzer) [2044440] - drm/amd/display: Fix out of bounds access on DNC31 stream encoder regs (Michel Dänzer) [2044440] - drm/amd/display: Fix bug in debugfs crc_win_update entry (Michel Dänzer) [2044440] - drm/radeon/radeon_kms: Fix a NULL pointer dereference in radeon_driver_open_kms() (Michel Dänzer) [2044440] - drm/amdgpu: Fix a NULL pointer dereference in amdgpu_connector_lcd_native_mode() (Michel Dänzer) [2044440] - drm/vmwgfx: Fail to initialize on broken configs (Michel Dänzer) [2044440] - drm/vmwgfx: Remove the deprecated lower mem limit (Michel Dänzer) [2044440] - drm/vboxvideo: fix a NULL vs IS_ERR() check (Michel Dänzer) [2044440] - drm: fix null-ptr-deref in drm_dev_init_release() (Michel Dänzer) [2044440] - drm/ttm: Put BO in its memory manager's lru list (Michel Dänzer) [2044440] - dma_fence_array: Fix PENDING_ERROR leak in dma_fence_array_signaled() (Michel Dänzer) [2044440] - drm/amd/display: explicitly set is_dsc_supported to false before use (Michel Dänzer) [2044440] - drm/i915: Avoid bitwise vs logical OR warning in snb_wm_latency_quirk() (Michel Dänzer) [2044440] - drm/amd/pm: keep the BACO feature enabled for suspend (Michel Dänzer) [2044440] - Revert "drm/amdgpu: stop scheduler when calling hw_fini (v2)" (Michel Dänzer) [2044440] - drm/amd/display: Added power down for DCN10 (Michel Dänzer) [2044440] - drm/amd/display: fix B0 TMDS deepcolor no dislay issue (Michel Dänzer) [2044440] - drm/amdgpu: put SMU into proper state on runpm suspending for BOCO capable platform (Michel Dänzer) [2044440] - drm/amd/pm: skip setting gfx cgpg in the s0ix suspend-resume (Michel Dänzer) [2044440] - drm/amd/pm: Fix xgmi link control on aldebaran (Michel Dänzer) [2044440] - drm/amdgpu: fix dropped backing store handling in amdgpu_dma_buf_move_notify (Michel Dänzer) [2044440] - drm/amd/display: Changed pipe split policy to allow for multi-display pipe split (Michel Dänzer) [2044440] - drm/amdgpu: add support for IP discovery gc_info table v2 (Michel Dänzer) [2044440] - drm/amdgpu: When the VCN(1.0) block is suspended, powergating is explicitly enabled (Michel Dänzer) [2044440] - drm/nouveau: wait for the exclusive fence after the shared ones v2 (Michel Dänzer) [2044440] - drm/nouveau: always wait for the exclusive fence (Michel Dänzer) [2044440] - drm/amd/display: Set optimize_pwr_state for DCN31 (Michel Dänzer) [2044440] - drm/amd/display: Send s0i2_rdy in stream_count == 0 optimization (Michel Dänzer) [2044440] - drm/amd/pm: fix reading SMU FW version from amdgpu_firmware_info on YC (Michel Dänzer) [2044440] - drm/amdgpu: don't override default ECO_BITs setting (Michel Dänzer) [2044440] - drm/amdgpu: correct register access for RLC_JUMP_TABLE_RESTORE (Michel Dänzer) [2044440] - drm/amd/pm: fix a potential gpu_metrics_table memory leak (Michel Dänzer) [2044440] - drm/amd/display: Set exit_optimized_pwr_state for DCN31 (Michel Dänzer) [2044440] - drm/i915/display: Fix an unsigned subtraction which can never be negative. (Michel Dänzer) [2044440] - drm/ast: potential dereference of null pointer (Michel Dänzer) [2044440] - drm: simpledrm: fix wrong unit with pixel clock (Michel Dänzer) [2044440] - Revert "drm/fb-helper: improve DRM fbdev emulation device names" (Michel Dänzer) [2044440] - drm/i915/hdmi: Turn DP++ TMDS output buffers back on in encoder->shutdown() (Michel Dänzer) [2044440] - drm/i915/hdmi: convert intel_hdmi_to_dev to intel_hdmi_to_i915 (Michel Dänzer) [2044440] - drm/amdkfd: process_info lock not needed for svm (Michel Dänzer) [2044440] - drm/amd/display: add connector type check for CRC source set (Michel Dänzer) [2044440] - drm/amdkfd: fix double free mem structure (Michel Dänzer) [2044440] - drm/amd/display: Fix for the no Audio bug with Tiled Displays (Michel Dänzer) [2044440] - drm/amdgpu: check atomic flag to differeniate with legacy path (Michel Dänzer) [2044440] - drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset (Michel Dänzer) [2044440] - drm/syncobj: Deal with signalled fences in drm_syncobj_find_fence. (Michel Dänzer) [2044440] - drm/i915/dp: Perform 30ms delay after source OUI write (Michel Dänzer) [2044440] - drm/amd/display: Allow DSC on supported MST branch devices (Michel Dänzer) [2044440] - dma-buf: system_heap: Use 'for_each_sgtable_sg' in pages free flow (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix potential memleak (Michel Dänzer) [2044440] - drm/amd/amdkfd: Fix kernel panic when reset failed and been triggered again (Michel Dänzer) [2044440] - drm/amd/pm: Remove artificial freq level on Navi1x (Michel Dänzer) [2044440] - drm/amdgpu/gfx9: switch to golden tsc registers for renoir+ (Michel Dänzer) [2044440] - drm/amd/display: Set plane update flags for all planes in reset (Michel Dänzer) [2044440] - drm/amd/display: Fix DPIA outbox timeout after GPU reset (Michel Dänzer) [2044440] - drm/aspeed: Fix vga_pw sysfs output (Michel Dänzer) [2044440] - drm/nouveau/acr: fix a couple NULL vs IS_ERR() checks (Michel Dänzer) [2044440] - drm/amd/display: Fix OLED brightness control on eDP (Michel Dänzer) [2044440] - drm/amdgpu: IH process reset count when restart (Michel Dänzer) [2044440] - drm/amd/pm: avoid duplicate powergate/ungate setting (Michel Dänzer) [2044440] - drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga and dvi connectors (Michel Dänzer) [2044440] - drm/i915: Fix type1 DVI DP dual mode adapter heuristic for modern platforms (Michel Dänzer) [2044440] - drm/i915/dp: Ensure max link params are always valid (Michel Dänzer) [2044440] - drm/i915/dp: Ensure sink rate values are always valid (Michel Dänzer) [2044440] - drm/prime: Fix use after free in mmap with drm_gem_ttm_mmap (Michel Dänzer) [2044440] - drm/udl: fix control-message timeout (Michel Dänzer) [2044440] - drm/amd/display: Limit max DSC target bpp for specific monitors (Michel Dänzer) [2044440] - drm/amd/display: Update swizzle mode enums (Michel Dänzer) [2044440] - drm/cma-helper: Release non-coherent memory with dma_free_noncoherent() (Michel Dänzer) [2044440] - Revert "drm/i915/tgl/dsi: Gate the ddi clocks after pll mapping" (Michel Dänzer) [2044440] - drm/nouveau: hdmigv100.c: fix corrupted HDMI Vendor InfoFrame (Michel Dänzer) [2044440] - x86/speculation: Check CPU capability before applying IBRS spectre v2 mitigation (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Warn about eIBRS + LFENCE + Unprivileged eBPF + SMT (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Warn about Spectre v2 LFENCE mitigation (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Update link to AMD speculation whitepaper (Waiman Long) [2062166] {CVE-2021-26401} - x86/speculation: Use generic retpoline by default on AMD (Waiman Long) [2062166] {CVE-2021-26401} - x86/speculation: Include unprivileged eBPF status in Spectre v2 mitigation reporting (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - Documentation/hw-vuln: Update spectre doc (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86/speculation: Add eIBRS + Retpoline options (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86/speculation: Rename RETPOLINE_AMD to RETPOLINE_LFENCE (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86,bugs: Unconditionally allow spectre_v2=retpoline,amd (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86: deduplicate the spectre_v2_user documentation (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - fuse: fix pipe buffer lifetime for direct_io (Miklos Szeredi) [2064863] {CVE-2022-1011} - ice: Do not enable VLAN pruning when spoofchk is enabled (Ivan Vecera) [2062343] - ice: don't allow to run ice_send_event_to_aux() in atomic ctx (Ivan Vecera) [2062343] - ice: fix 'scheduling while atomic' on aux critical err interrupt (Ivan Vecera) [2062343] - ice: Fix MAC address setting (Ivan Vecera) [2062343] - ice: Clear default forwarding VSI during release (Ivan Vecera) [2062343] - ice: Fix broken IFF_ALLMULTI handling (Ivan Vecera) [2062343] - iavf: Fix hang during reboot/shutdown (Ivan Vecera) [2062343] - iavf: Fix double free in iavf_reset_task (Ivan Vecera) [2062343] - ice: destroy flow director filter mutex after releasing VSIs (Ivan Vecera) [2062343] - ice: fix NULL pointer dereference in ice_update_vsi_tx_ring_stats() (Ivan Vecera) [2062343] - iavf: Fix adopting new combined setting (Ivan Vecera) [2062343] - iavf: Fix handling of vlan strip virtual channel messages (Ivan Vecera) [2062343] - iavf: Fix __IAVF_RESETTING state usage (Ivan Vecera) [2062343] - iavf: Fix missing check for running netdev (Ivan Vecera) [2062343] - iavf: Fix deadlock in iavf_reset_task (Ivan Vecera) [2062343] - iavf: Fix race in init state (Ivan Vecera) [2062343] - iavf: Fix locking for VIRTCHNL_OP_GET_OFFLOAD_VLAN_V2_CAPS (Ivan Vecera) [2062343] - iavf: Fix init state closure on remove (Ivan Vecera) [2062343] - iavf: Add waiting so the port is initialized in remove (Ivan Vecera) [2062343] - iavf: Rework mutexes for better synchronisation (Ivan Vecera) [2062343] - iavf: remove an unneeded variable (Ivan Vecera) [2062343] - iavf: Fix limit of total number of queues to active queues of VF (Ivan Vecera) [2062343] - iavf: Restrict maximum VLAN filters for VIRTCHNL_VF_OFFLOAD_VLAN_V2 (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 offload enable/disable (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 hotpath (Ivan Vecera) [2062343] - iavf: Add support VIRTCHNL_VF_OFFLOAD_VLAN_V2 during netdev config (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 negotiation (Ivan Vecera) [2062343] - virtchnl: Add support for new VLAN capabilities (Ivan Vecera) [2062343] - virtchnl: Use the BIT() macro for capability/offload flags (Ivan Vecera) [2062343] - virtchnl: Remove unused VIRTCHNL_VF_OFFLOAD_RSVD define (Ivan Vecera) [2062343] - virtchnl: Add missing padding to virtchnl_proto_hdrs (Ivan Vecera) [2062343] - ice: Fix race condition during interface enslave (Ivan Vecera) [2062343] - ice: Fix curr_link_speed advertised speed (Ivan Vecera) [2062343] - ice: Don't use GFP_KERNEL in atomic context (Ivan Vecera) [2062343] - ice: Fix error with handling of bonding MTU (Ivan Vecera) [2062343] - ice: stop disabling VFs due to PF error responses (Ivan Vecera) [2062343] - ice: initialize local variable 'tlv' (Ivan Vecera) [2062343] - ice: check the return of ice_ptp_gettimex64 (Ivan Vecera) [2062343] - ice: fix concurrent reset and removal of VFs (Ivan Vecera) [2062343] - ice: fix setting l4 port flag when adding filter (Ivan Vecera) [2062343] - ice: Match on all profiles in slow-path (Ivan Vecera) [2062343] - ice: enable parsing IPSEC SPI headers for RSS (Ivan Vecera) [2062343] - ice: Avoid RTNL lock when re-creating auxiliary device (Ivan Vecera) [2062343] - ice: Fix KASAN error in LAG NETDEV_UNREGISTER handler (Ivan Vecera) [2062343] - ice: fix IPIP and SIT TSO offload (Ivan Vecera) [2062343] - ice: fix an error code in ice_cfg_phy_fec() (Ivan Vecera) [2062343] - ice: Use bitmap_free() to free bitmap (Ivan Vecera) [2062343] - ice: Optimize a few bitmap operations (Ivan Vecera) [2062343] - ice: Slightly simply ice_find_free_recp_res_idx (Ivan Vecera) [2062343] - ice: improve switchdev's slow-path (Ivan Vecera) [2062343] - ice: replay advanced rules after reset (Ivan Vecera) [2062343] - ice: Add flow director support for channel mode (Ivan Vecera) [2062343] - ice: trivial: fix odd indenting (Ivan Vecera) [2062343] - ice: support crosstimestamping on E822 devices if supported (Ivan Vecera) [2062343] - ice: exit bypass mode once hardware finishes timestamp calibration (Ivan Vecera) [2062343] - ice: ensure the hardware Clock Generation Unit is configured (Ivan Vecera) [2062343] - ice: implement basic E822 PTP support (Ivan Vecera) [2062343] - ice: convert clk_freq capability into time_ref (Ivan Vecera) [2062343] - ice: introduce ice_ptp_init_phc function (Ivan Vecera) [2062343] - ice: use 'int err' instead of 'int status' in ice_ptp_hw.c (Ivan Vecera) [2062343] - ice: PTP: move setting of tstamp_config (Ivan Vecera) [2062343] - ice: introduce ice_base_incval function (Ivan Vecera) [2062343] - ice: xsk: fix cleaned_count setting (Ivan Vecera) [2062343] - ice: xsk: allow empty Rx descriptors on XSK ZC data path (Ivan Vecera) [2062343] - ice: xsk: allocate separate memory for XDP SW ring (Ivan Vecera) [2062343] - ice: xsk: return xsk buffers back to pool when cleaning the ring (Ivan Vecera) [2062343] - ice: use modern kernel API for kick (Ivan Vecera) [2062343] - ice: tighter control over VSI_DOWN state (Ivan Vecera) [2062343] - ice: use prefetch methods (Ivan Vecera) [2062343] - ice: update to newer kernel API (Ivan Vecera) [2062343] - ice: support immediate firmware activation via devlink reload (Ivan Vecera) [2062343] - ice: reduce time to read Option ROM CIVD data (Ivan Vecera) [2062343] - ice: move ice_devlink_flash_update and merge with ice_flash_pldm_image (Ivan Vecera) [2062343] - ice: move and rename ice_check_for_pending_update (Ivan Vecera) [2062343] - ice: devlink: add shadow-ram region to snapshot Shadow RAM (Ivan Vecera) [2062343] - ice: Remove unused ICE_FLOW_SEG_HDRS_L2_MASK (Ivan Vecera) [2062343] - ice: Remove unnecessary casts (Ivan Vecera) [2062343] - ice: Propagate error codes (Ivan Vecera) [2062343] - ice: Remove excess error variables (Ivan Vecera) [2062343] - ice: Cleanup after ice_status removal (Ivan Vecera) [2062343] - ice: Remove enum ice_status (Ivan Vecera) [2062343] - ice: Use int for ice_status (Ivan Vecera) [2062343] - ice: Remove string printing for ice_status (Ivan Vecera) [2062343] - ice: Refactor status flow for DDP load (Ivan Vecera) [2062343] - ice: Refactor promiscuous functions (Ivan Vecera) [2062343] - ice: refactor PTYPE validating (Ivan Vecera) [2062343] - ice: Add package PTYPE enable information (Ivan Vecera) [2062343] - ice: safer stats processing (Ivan Vecera) [2062343] - ice: fix adding different tunnels (Ivan Vecera) [2062343] - ice: fix choosing UDP header type (Ivan Vecera) [2062343] - ice: ignore dropped packets during init (Ivan Vecera) [2062343] - ice: rearm other interrupt cause register after enabling VFs (Ivan Vecera) [2062343] - net/ice: Remove unused enum (Ivan Vecera) [2062343] - net/ice: Fix boolean assignment (Ivan Vecera) [2062343] - net/ice: Add support for enable_iwarp and enable_roce devlink param (Ivan Vecera) [2062343] - ice: avoid bpf_prog refcount underflow (Ivan Vecera) [2062343] - ice: fix vsi->txq_map sizing (Ivan Vecera) [2062343] - ice: Hide bus-info in ethtool for PRs in switchdev mode (Ivan Vecera) [2062343] - ice: Clear synchronized addrs when adding VFs in switchdev mode (Ivan Vecera) [2062343] - ice: fix error return code in ice_get_recp_frm_fw() (Ivan Vecera) [2062343] - ice: Fix clang -Wimplicit-fallthrough in ice_pull_qvec_from_rc() (Ivan Vecera) [2062343] - ice: Add support to print error on PHY FW load failure (Ivan Vecera) [2062343] - ice: Add support for changing MTU on PR in switchdev mode (Ivan Vecera) [2062343] - ice: send correct vc status in switchdev (Ivan Vecera) [2062343] - ice: support for GRE in eswitch (Ivan Vecera) [2062343] - ice: low level support for tunnels (Ivan Vecera) [2062343] - ice: VXLAN and Geneve TC support (Ivan Vecera) [2062343] - ice: support for indirect notification (Ivan Vecera) [2062343] - ice: Add tc-flower filter support for channel (Ivan Vecera) [2062343] - ice: enable ndo_setup_tc support for mqprio_qdisc (Ivan Vecera) [2062343] - ice: Add infrastructure for mqprio support via ndo_setup_tc (Ivan Vecera) [2062343] - ice: fix an error code in ice_ena_vfs() (Ivan Vecera) [2062343] - ice: use devm_kcalloc() instead of devm_kzalloc() (Ivan Vecera) [2062343] - ice: Make use of the helper function devm_add_action_or_reset() (Ivan Vecera) [2062343] - ice: Refactor PR ethtool ops (Ivan Vecera) [2062343] - ice: Forbid trusted VFs in switchdev mode (Ivan Vecera) [2062343] - ice: Manage act flags for switchdev offloads (Ivan Vecera) [2062343] - ice: introduce XDP_TX fallback path (Ivan Vecera) [2062343] - ice: optimize XDP_TX workloads (Ivan Vecera) [2062343] - ice: propagate xdp_ring onto rx_ring (Ivan Vecera) [2062343] - ice: do not create xdp_frame on XDP_TX (Ivan Vecera) [2062343] - ice: unify xdp_rings accesses (Ivan Vecera) [2062343] - ice: ndo_setup_tc implementation for PR (Ivan Vecera) [2062343] - ice: ndo_setup_tc implementation for PF (Ivan Vecera) [2062343] - ice: Allow changing lan_en and lb_en on all kinds of filters (Ivan Vecera) [2062343] - ice: cleanup rules info (Ivan Vecera) [2062343] - ice: allow deleting advanced rules (Ivan Vecera) [2062343] - ice: allow adding advanced rules (Ivan Vecera) [2062343] - ice: create advanced switch recipe (Ivan Vecera) [2062343] - ice: manage profiles and field vectors (Ivan Vecera) [2062343] - ice: implement low level recipes functions (Ivan Vecera) [2062343] - ice: add port representor ethtool ops and stats (Ivan Vecera) [2062343] - ice: switchdev slow path (Ivan Vecera) [2062343] - ice: rebuild switchdev when resetting all VFs (Ivan Vecera) [2062343] - ice: enable/disable switchdev when managing VFs (Ivan Vecera) [2062343] - ice: introduce new type of VSI for switchdev (Ivan Vecera) [2062343] - ice: set and release switchdev environment (Ivan Vecera) [2062343] - net: export metadata_dst_free() (Ivan Vecera) [2062343] - ice: allow changing lan_en and lb_en on dflt rules (Ivan Vecera) [2062343] - ice: manage VSI antispoof and destination override (Ivan Vecera) [2062343] - ice: allow process VF opcodes in different ways (Ivan Vecera) [2062343] - ice: introduce VF port representor (Ivan Vecera) [2062343] - ice: Move devlink port to PF/VF struct (Ivan Vecera) [2062343] - ice: support basic E-Switch mode control (Ivan Vecera) [2062343] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ivan Vecera) [2062343] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ivan Vecera) [2062343] - ice: Use xdp_buf instead of rx_buf for xsk zero-copy (Ivan Vecera) [2062343] - ice: fix FDIR init missing when reset VF (Ivan Vecera) [2062343] - intel: Remove rcu_read_lock() around XDP program invocation (Ivan Vecera) [2062343] - intel: Update drivers to use ethtool_sprintf (Ivan Vecera) [2062343] - ice: fix conversion to new udp_tunnel infrastructure (Ivan Vecera) [2062343] - intel-ethernet: clean up W=1 warnings in kdoc (Ivan Vecera) [2062343] - PCI: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Ivan Vecera) [2062343] - treewide: Use sizeof_field() macro (Ivan Vecera) [2062343] - devlink: Add 'enable_iwarp' generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_vnet" generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_rdma" generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_eth" generic device param (Ivan Vecera) [2062343] - gfs2: dequeue iopen holder in gfs2_inode_lookup error (Bob Peterson) [2061665] - redhat/configs: Increase CONFIG_LOCKDEP_CHAINS_BITS from 16 to 17 (Waiman Long) [2057339] - redhat: spec: trigger dracut when modules are installed separately (Jan Stancek) [2060237 2016948]- makefile: Add dist-* targets (Prarit Bhargava) - Fonts: Replace discarded const qualifier (Nico Pache) [1904374] - Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts (Nico Pache) [1904374] - fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h (Nico Pache) [1904374] - x86/cpu: Drop spurious underscore from RAPTOR_LAKE #define (Prarit Bhargava) [2040021] - x86/cpu: Add Raptor Lake to Intel family (Prarit Bhargava) [2040021] - powerpc/64: Move paca allocation later in boot (Desnes A. Nunes do Rosario) [2016335] - powerpc/prom: fix early DEBUG messages (Desnes A. Nunes do Rosario) [2016335] - powerpc: Set crashkernel offset to mid of RMA region (Desnes A. Nunes do Rosario) [2016335] - KVM: x86/mmu: Don't advance iterator after restart due to yielding (Nico Pache) [2058907] - igb: refactor XDP registration (Corinna Vinschen) [2040171] - igc: avoid kernel warning when changing RX ring parameters (Corinna Vinschen) [2040171] - scsi: qedi: Fix cmd_cleanup_cmpl counter mismatch issue (Nilesh Javali) [2054565] - EDAC/amd64: Save max number of controllers for F19 M70 (Aristeu Rozanski) [2064285] - CI: Use 8.6-rt branch for rhel8 realtime_check (Chris White) - blk-mq: avoid extending delays of active hctx from blk_mq_delay_run_hw_queues (Ming Lei) [2046525] - tipc: fix incorrect order of state message data sanity check (Xin Long) [2048971] - tipc: improve size validations for received domain records (Xin Long) [2048971] {CVE-2022-0435} - efi/x86: Call efi_parse_options() from efi_main() (Lenny Szubowicz) [2049233]- net/mlx5e: TC, Remove redundant error logging (Amir Tzin) [2023907] - net/mlx5: DR, Warn on failure to destroy objects due to refcount (Amir Tzin) [2022325] - net/mlx5: DR, Add support for dumping steering info (Amir Tzin) [2022325] - net/mlx5: DR, Add missing reserved fields to dr_match_param (Amir Tzin) [2022325] - net/mlx5: DR, Add check for flex parser ID value (Amir Tzin) [2022325] - net/mlx5: DR, Rename list field in matcher struct to list_node (Amir Tzin) [2022325] - net/mlx5: DR, Remove unused struct member in matcher (Amir Tzin) [2022325] - net/mlx5: DR, Fix error flow in creating matcher (Amir Tzin) [2022325] - net/mlx5e: Avoid implicit modify hdr for decap drop rule (Amir Tzin) [2015434] - net/mlx5e: TC, Fix memory leak with rules with internal port (Amir Tzin) [2015434] - net/mlx5e: Fix skb memory leak when TC classifier action offloads are disabled (Amir Tzin) [2015434] - net/mlx5: Fix some error handling paths in 'mlx5e_tc_add_fdb_flow()' (Amir Tzin) [2015434] - net/mlx5: E-Switch, Check group pointer before reading bw_share value (Amir Tzin) [2015434] - net/mlx5: E-Switch, fix single FDB creation on BlueField (Amir Tzin) [2015434] - net/mlx5: E-switch, Respect BW share of the new group (Amir Tzin) [2015434] - net/mlx5: DR, Fix check for unsupported fields in match param (Amir Tzin) [2015434] - net/mlx5: E-Switch, rebuild lag only when needed (Amir Tzin) [2015434] - net/mlx5e: Delete forward rule for ct or sample action (Amir Tzin) [2015434] - net/mlx5: E-Switch, Use indirect table only if all destinations support it (Amir Tzin) [2015434] - net/mlx5: Support internal port as decap route device (Amir Tzin) [2015434] - net/mlx5e: Term table handling of internal port rules (Amir Tzin) [2015434] - net/mlx5e: Add indirect tc offload of ovs internal port (Amir Tzin) [2015434] - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert (Amir Tzin) [2015434] - net/mlx5e: Offload internal port as encap route device (Amir Tzin) [2015434] - net/mlx5e: Offload tc rules that redirect to ovs internal port (Amir Tzin) [2015434] - net/mlx5e: Accept action skbedit in the tc actions list (Amir Tzin) [2015434] - net/mlx5: E-Switch, Add ovs internal port mapping to metadata support (Amir Tzin) [2015434] - net/mlx5e: Use generic name for the forwarding dev pointer (Amir Tzin) [2015434] - net/mlx5e: Refactor rx handler of represetor device (Amir Tzin) [2015434] - net/mlx5: DR, Add check for unsupported fields in match param (Amir Tzin) [2015434] - net/mlx5: Allow skipping counter refresh on creation (Amir Tzin) [2015434] - net/mlx5e: IPsec: Refactor checksum code in tx data path (Amir Tzin) [2015434] - net/mlx5: CT: Remove warning of ignore_flow_level support for VFs (Amir Tzin) [2015434] - net/mlx5: Add esw assignment back in mlx5e_tc_sample_unoffload() (Amir Tzin) [2015434] - net/mlx5: Bridge, fix uninitialized variable usage (Amir Tzin) [2015434] - net/mlx5: Lag, don't update lag if lag isn't supported (Amir Tzin) [2015434] - net/mlx5: E-switch, Return correct error code on group creation failure (Amir Tzin) [2015434] - net/mlx5: Bridge, support LAG (Amir Tzin) [2015434] - net/mlx5: Bridge, allow merged eswitch connectivity (Amir Tzin) [2015434] - net/mlx5: Bridge, extract FDB delete notification to function (Amir Tzin) [2015434] - net/mlx5: Bridge, identify port by vport_num+esw_owner_vhca_id pair (Amir Tzin) [2015434] - net/mlx5: Bridge, obtain core device from eswitch instead of priv (Amir Tzin) [2015434] - net/mlx5: Bridge, release bridge in same function where it is taken (Amir Tzin) [2015434] - net/mlx5: Lag, Create shared FDB when in switchdev mode (Amir Tzin) [2015434] - net/mlx5: E-Switch, add logic to enable shared FDB (Amir Tzin) [2015434] - net/mlx5: Lag, properly lock eswitch if needed (Amir Tzin) [2015434] - net/mlx5: Add send to vport rules on paired device (Amir Tzin) [2015434] - net/mlx5: E-Switch, Add event callback for representors (Amir Tzin) [2015434] - net/mlx5e: Use shared mappings for restoring from metadata (Amir Tzin) [2015434] - net/mlx5e: Add an option to create a shared mapping (Amir Tzin) [2015434] - net/mlx5: E-Switch, set flow source for send to uplink rule (Amir Tzin) [2015434] - RDMA/mlx5: Add shared FDB support (Amir Tzin) [2015434] - {net, RDMA}/mlx5: Extend send to vport rules (Amir Tzin) [2015434] - RDMA/mlx5: Fill port info based on the relevant eswitch (Amir Tzin) [2015434] - net/mlx5: Lag, add initial logic for shared FDB (Amir Tzin) [2015434] - net/mlx5: Return mdev from eswitch (Amir Tzin) [2015434] - net/mlx5: E-switch, Add QoS tracepoints (Amir Tzin) [2015434] - net/mlx5: E-switch, Allow to add vports to rate groups (Amir Tzin) [2015434] - net/mlx5: E-switch, Allow setting share/max tx rate limits of rate groups (Amir Tzin) [2015434] - net/mlx5: E-switch, Introduce rate limiting groups API (Amir Tzin) [2015434] - net/mlx5: E-switch, Enable devlink port tx_{share|max} rate control (Amir Tzin) [2015434] - net/mlx5: E-switch, Move QoS related code to dedicated file (Amir Tzin) [2015434] - net/mlx5e: TC, Support sample offload action for tunneled traffic (Amir Tzin) [2015434] - net/mlx5e: TC, Restore tunnel info for sample offload (Amir Tzin) [2015434] - net/mlx5e: TC, Remove CONFIG_NET_TC_SKB_EXT dependency when restoring tunnel (Amir Tzin) [2015434] - net/mlx5e: Refactor ct to use post action infrastructure (Amir Tzin) [2015434] - net/mlx5e: Introduce post action infrastructure (Amir Tzin) [2015434] - net/mlx5e: CT, Use xarray to manage fte ids (Amir Tzin) [2015434] - net/mlx5e: Move sample attribute to flow attribute (Amir Tzin) [2015434] - net/mlx5e: Move esw/sample to en/tc/sample (Amir Tzin) [2015434] - net/mlx5e: Remove mlx5e dependency from E-Switch sample (Amir Tzin) [2015434] - net/mlx5: DR, Fix querying eswitch manager vport for ECPF (Amir Tzin) [2018097] - net/mlx5: DR, Handle eswitch manager and uplink vports separately (Amir Tzin) [2018097] - net/mlx5: DR, Add missing string for action type SAMPLER (Amir Tzin) [2018097] - net/mlx5: DR, init_next_match only if needed (Amir Tzin) [2018097] - net/mlx5: DR, Increase supported num of actions to 32 (Amir Tzin) [2018097] - net/mlx5: DR, Add support for SF vports (Amir Tzin) [2018097] - net/mlx5: DR, Support csum recalculation flow table on SFs (Amir Tzin) [2018097] - net/mlx5: DR, Align error messages for failure to obtain vport caps (Amir Tzin) [2018097] - net/mlx5: DR, Add missing query for vport 0 (Amir Tzin) [2018097] - net/mlx5: DR, Replace local WIRE_PORT macro with the existing MLX5_VPORT_UPLINK (Amir Tzin) [2018097] - scsi: lpfc: Fix pt2pt NVMe PRLI reject LOGO loop (Dick Kennedy) [1943202] - nvme-tcp: change target from tech-preview to unmaintained (John Meneghini) [2061577] - drm/amd/display: Don't reinitialize DMCUB on s0ix resume (Karol Herbst) [2059680] - tcp: Add snd_wnd to TCP_INFO (Davide Caratti) [2056608] - tcp: Add TCP_INFO counter for packets received out-of-order (Davide Caratti) [2056608] - net/mlx5: Move MODIFY_RQT command to ignore list in internal error state (Amir Tzin) [1982236] - net/mlx5e: Add TX max rate support for MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Specify SQ stats struct for mlx5e_open_txqsq() (Amir Tzin) [1982236] - net/mlx5e: Allow only complete TXQs partition in MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Mutually exclude setting of TX-port-TS and MQPRIO in channel mode (Amir Tzin) [1982236] - net/mlx5e: Fix condition when retrieving PTP-rqn (Amir Tzin) [1982236] - net/mlx5: Fix inner TTC table creation (Amir Tzin) [1982236] - net/mlx5e: Fix division by 0 in mlx5e_select_queue for representors (Amir Tzin) [1982236] - net/mlx5e: Improve MQPRIO resiliency (Amir Tzin) [1982236] - net/mlx5e: Support MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Handle errors of netdev_set_num_tc() (Amir Tzin) [1982236] - net/mlx5e: Maintain MQPRIO mode parameter (Amir Tzin) [1982236] - net/mlx5e: Abstract MQPRIO params (Amir Tzin) [1982236] - net/mlx5e: Support flow classification into RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Support multiple RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Dynamically allocate TIRs in RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Convert RSS to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Introduce abstraction of RSS context (Amir Tzin) [1982236] - net/mlx5e: Introduce TIR create/destroy API in rx_res (Amir Tzin) [1982236] - net/mlx5e: Do not try enable RSS when resetting indir table (Amir Tzin) [1982236] - net/mlx5: Embed mlx5_ttc_table (Amir Tzin) [1982236] - net/mlx5: Move TTC logic to fs_ttc (Amir Tzin) [1982236] - net/mlx5e: Decouple TTC logic from mlx5e (Amir Tzin) [1982236] - net/mlx5e: Rename some related TTC args and functions (Amir Tzin) [1982236] - net/mlx5e: Rename traffic type enums (Amir Tzin) [1982236] - net/mlx5e: Allocate the array of channels according to the real max_nch (Amir Tzin) [1982236] - net/mlx5e: Hide all implementation details of mlx5e_rx_res (Amir Tzin) [1982236] - net/mlx5e: Introduce mlx5e_channels API to get RQNs (Amir Tzin) [1982236] - net/mlx5e: Use a new initializer to build uniform indir table (Amir Tzin) [1982236] - net/mlx5e: Use the new TIR API for kTLS (Amir Tzin) [1982236] - net/mlx5e: Move management of indir traffic types to rx_res (Amir Tzin) [1982236] - net/mlx5e: Convert TIR to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Create struct mlx5e_rss_params_hash (Amir Tzin) [1982236] - net/mlx5e: Remove mdev from mlx5e_build_indir_tir_ctx_common() (Amir Tzin) [1982236] - net/mlx5e: Remove lro_param from mlx5e_build_indir_tir_ctx_common() (Amir Tzin) [1982236] - net/mlx5e: Remove mlx5e_priv usage from mlx5e_build_*tir_ctx*() (Amir Tzin) [1982236] - net/mlx5e: Use mlx5e_rqt_get_rqtn to access RQT hardware id (Amir Tzin) [1982236] - net/mlx5e: Take RQT out of TIR and group RX resources (Amir Tzin) [1982236] - net/mlx5e: Move RX resources to a separate struct (Amir Tzin) [1982236] - net/mlx5e: Move mlx5e_build_rss_params() call to init_rx (Amir Tzin) [1982236] - net/mlx5e: Convert RQT to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Check if inner FT is supported outside of create/destroy functions (Amir Tzin) [1982236] - net/mlx5: Take TIR destruction out of the TIR list lock (Amir Tzin) [1982236] - PCI: pciehp: Ignore Link Down/Up caused by error-induced Hot Reset (Myron Stowe) [2060122] - PCI/portdrv: Rename pm_iter() to pcie_port_device_iter() (Myron Stowe) [2060122] - iommu/vt-d: Fix double list_add when enabling VMD in scalable mode (Jerry Snitselaar) [2062094] - redhat/configs: Disable CONFIG_SENSORS_NCT6683 in RHEL for arm/aarch64 (Dean Nelson) [2059695] - redhat: drop the -sha512 suffix from default rhpkg invocation (Jarod Wilson) - sysctl: return -EINVAL if val violates minmax (Rafael Aquini) [2062571] - kernel/sysctl.c: switch to bitmap_zalloc() (Rafael Aquini) [2062571] - netlabel: remove unused parameter in netlbl_netlink_auditinfo() (William Zhao) [1985319] - netlabel: Fix memory leak in netlbl_mgmt_add_common (William Zhao) [1985319] - bpftool: Fix indent in option lists in the documentation (Yauheni Kaliuta) [2014861] - libbpf: Fix memleak in libbpf_netlink_recv() (Yauheni Kaliuta) [2014861] - libbpf: Use dynamically allocated buffer when receiving netlink messages (Yauheni Kaliuta) [2014861] - libbpf: Clean gen_loader's attach kind. (Yauheni Kaliuta) [2014861] - powerpc/bpf: Use bctrl for making function calls (Jiri Olsa) [2014861] - powerpc/signal: Use PPC_RAW_xx() macros (Jiri Olsa) [2014861] - powerpc/ebpf64: Use PPC_RAW_MFLR() (Jiri Olsa) [2014861] - powerpc/opcodes: Add shorter macros for registers for use with PPC_RAW_xx() (Jiri Olsa) [2014861] - lib/test: fix spelling mistakes (Jiri Olsa) [2014861] - tracepoint: Add tracepoint_probe_register_may_exist() for BPF tracing (Jiri Olsa) [2014861] - bpf: Allow bpf_get_current_ancestor_cgroup_id for tracing (Jiri Olsa) [2014861] - docs: bpf: bpf_lsm.rst: avoid using ReST :doc:`foo` markup (Jiri Olsa) [2014861] - bpf, docs: Add llvm_reloc.rst to explain llvm bpf relocations (Jiri Olsa) [2014861] - bpf, arm64: Remove redundant switch case about BPF_DIV and BPF_MOD (Jiri Olsa) [2014861] - bpf, arm64: Replace STACK_ALIGN() with round_up() to align stack size (Jiri Olsa) [2014861] - selftests, bpf: Test that dead ldx_w insns are accepted (Jiri Olsa) [2014861] - bpf, selftests: Add test cases for pointer alu from multiple paths (Jiri Olsa) [2014861] - bpf: Selftest to verify mixing bpf2bpf calls and tailcalls with insn patch (Jiri Olsa) [2014861] - selftests/bpf: Fix ringbuf test fetching map FD (Jiri Olsa) [2014861] - selftests/bpf: Whitelist test_progs.h from .gitignore (Jiri Olsa) [2014861] - selftests, bpf: Make docs tests fail more reliably (Jiri Olsa) [2014861] - selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks (Jiri Olsa) [2014861] - selftests/bpf: Add bpf_lookup_and_delete_elem tests (Jiri Olsa) [2014861] - selftests/bpf: Convert test trace_printk to lskel. (Jiri Olsa) [2014861] - selftests/bpf: Convert test printk to use rodata. (Jiri Olsa) [2014861] - selftests/bpf: Convert atomics test to light skeleton. (Yauheni Kaliuta) [2014861] - selftests/bpf: Convert few tests to light skeleton. (Jiri Olsa) [2014861] - selftests/bpf: Test for btf_load command. (Jiri Olsa) [2014861] - selftests/bpf: Test for syscall program type (Jiri Olsa) [2014861] - libbpf: Add selftests for TC-BPF management API (Jiri Olsa) [2014861] - selftests/bpf: Validate skeleton gen handles skipped fields (Jiri Olsa) [2014861] - selftests/bpf: Stop using static variables for passing data to/from user-space (Jiri Olsa) [2014861] - tools: bpftool: Document and add bash completion for -L, -B options (Jiri Olsa) [2014861] - tools: bpftool: Update and synchronise option list in doc and help msg (Jiri Olsa) [2014861] - bpftool: Remove unused includes to (Jiri Olsa) [2014861] - powerpc/bpf: Fix write protecting JIT code (Jiri Olsa) [2014861] - libbpf: Fix lookup_and_delete_elem_flags error reporting (Jiri Olsa) [2014861] - bpftool: Check malloc return value in mount_bpffs_for_pin (Jiri Olsa) [2014861] - tools: bpf: Fix error in 'make -C tools/ bpf_install' (Jiri Olsa) [2014861] - bpftool: Properly close va_list 'ap' by va_end() on error (Jiri Olsa) [2014861] - bpf: Fix libelf endian handling in resolv_btfids (Jiri Olsa) [2014861] - tools/bpftool: Fix error return code in do_batch() (Jiri Olsa) [2014861] - tools/bpftool: Fix cross-build (Jiri Olsa) [2014861] - bpftool: Set errno on skeleton failures and propagate errors (Jiri Olsa) [2014861] - bpftool: Use syscall/loader program in "prog load" and "gen skeleton" command. (Jiri Olsa) [2014861] - bpftool: Stop emitting static variables in BPF skeleton (Jiri Olsa) [2014861] - bpftool: Strip const/volatile/restrict modifiers from .bss and .data vars (Jiri Olsa) [2014861] - bpf: Add missing bpf_read_[un]lock_trace() for syscall program (Jiri Olsa) [2014861] - libbpf: Fix skel_internal.h to set errno on loader retval < 0 (Jiri Olsa) [2014861] - libbpf: Fix segfault in light skeleton for objects without BTF (Jiri Olsa) [2014861] - libbpf: Return non-null error on failures in libbpf_find_prog_btf_id() (Jiri Olsa) [2014861] - libbpf, doc: Eliminate warnings in libbpf_naming_convention (Jiri Olsa) [2014861] - net, core: Allow netdev_lower_get_next_private_rcu in bh context (Jiri Olsa) [2014861] - samples/bpf: Fix the error return code of xdp_redirect's main() (Jiri Olsa) [2014861] - samples/bpf: Fix Segmentation fault for xdp_redirect command (Jiri Olsa) [2014861] - samples/bpf: Add missing option to xdp_sample_pkts usage (Jiri Olsa) [2014861] - samples/bpf: Add missing option to xdp_fwd usage (Jiri Olsa) [2014861] - samples, bpf: Suppress compiler warning (Jiri Olsa) [2014861] - file: Rename __close_fd to close_fd and remove the files parameter (Jiri Olsa) [2014861] - bpf: Fix ringbuf helper function compatibility (Jiri Olsa) [2014861] - bpf: Clear zext_dst of dead insns (Jiri Olsa) [2014861] - bpf: Add rcu_read_lock in bpf_get_current_[ancestor_]cgroup_id() helpers (Jiri Olsa) [2014861] - bpf, core: Fix kernel-doc notation (Jiri Olsa) [2014861] - libbpf: Do not close un-owned FD 0 on errors (Jiri Olsa) [2014861] - libbpf: Fix probe for BPF_PROG_TYPE_CGROUP_SOCKOPT (Jiri Olsa) [2014861] - s390/bpf: Perform r1 range checking before accessing jit->seen_reg[r1] (Jiri Olsa) [2014861] - libbpf: Restore errno return for functions that were already returning it (Jiri Olsa) [2014861] - powerpc/bpf: Write protect JIT code (Jiri Olsa) [2014861] - powerpc/bpf: Remove bpf_jit_free() (Jiri Olsa) [2014861] - bpf: Fix integer overflow in argument calculation for bpf_map_area_alloc (Jiri Olsa) [2014861] - bpf: Fix false positive kmemleak report in bpf_ringbuf_area_alloc() (Jiri Olsa) [2014861] - bpf: Allow RCU-protected lookups to happen from bh context (Jiri Olsa) [2014861] - bpf, x86: Remove unused cnt increase from EMIT macro (Jiri Olsa) [2014861] - libbpf: Switch to void * casting in netlink helpers (Jiri Olsa) [2014861] - libbpf: Add request buffer type for netlink messages (Jiri Olsa) [2014861] - libbpf: Add extra BPF_PROG_TYPE check to bpf_object__probe_loading (Jiri Olsa) [2014861] - bpf: Add documentation for libbpf including API autogen (Jiri Olsa) [2014861] - bpf: Fix up register-based shifts in interpreter to silence KUBSAN (Jiri Olsa) [2014861] - libbpf: Fail compilation if target arch is missing (Jiri Olsa) [2014861] - bpf: Fix typo in kernel/bpf/bpf_lsm.c (Jiri Olsa) [2014861] - bpf: Support BPF_FUNC_get_socket_cookie() for BPF_PROG_TYPE_SK_REUSEPORT. (Jiri Olsa) [2014861] - libbpf: Set NLM_F_EXCL when creating qdisc (Jiri Olsa) [2014861] - libbpf: Remove unneeded check for flags during tc detach (Jiri Olsa) [2014861] - libbpf: Simplify the return expression of bpf_object__init_maps function (Jiri Olsa) [2014861] - libbpf: Fix pr_warn type warnings on 32bit (Jiri Olsa) [2014861] - libbpf: Install skel_internal.h header used from light skeletons (Jiri Olsa) [2014861] - libbpf: Refactor header installation portions of Makefile (Jiri Olsa) [2014861] - libbpf: Move few APIs from 0.4 to 0.5 version (Jiri Olsa) [2014861] - bpf, tnums: Provably sound, faster, and more precise algorithm for tnum_mul (Jiri Olsa) [2014861] - libbpf: Move BPF_SEQ_PRINTF and BPF_SNPRINTF to bpf_helpers.h (Jiri Olsa) [2014861] - libbpf: Streamline error reporting for high-level APIs (Jiri Olsa) [2014861] - libbpf: Streamline error reporting for low-level APIs (Jiri Olsa) [2014861] - libbpf: Add libbpf_set_strict_mode() API to turn on libbpf 1.0 behaviors (Jiri Olsa) [2014861] - bpf: Fix spelling mistakes (Jiri Olsa) [2014861] - bpf: Extend libbpf with bpf_map_lookup_and_delete_elem_flags (Jiri Olsa) [2014861] - bpf: Add lookup_and_delete_elem support to hashtab (Jiri Olsa) [2014861] - libbpf: Skip bpf_object__probe_loading for light skeleton (Jiri Olsa) [2014861] - bpf: Make some symbols static (Jiri Olsa) [2014861] - bpf: Add cmd alias BPF_PROG_RUN (Jiri Olsa) [2014861] - libbpf: Introduce bpf_map__initial_value(). (Jiri Olsa) [2014861] - libbpf: Cleanup temp FDs when intermediate sys_bpf fails. (Jiri Olsa) [2014861] - libbpf: Generate loader program out of BPF ELF file. (Jiri Olsa) [2014861] - libbpf: Preliminary support for fd_idx (Jiri Olsa) [2014861] - libbpf: Add bpf_object pointer to kernel_supports(). (Jiri Olsa) [2014861] - libbpf: Change the order of data and text relocations. (Jiri Olsa) [2014861] - bpf: Add bpf_sys_close() helper. (Jiri Olsa) [2014861] - bpf: Add bpf_btf_find_by_name_kind() helper. (Jiri Olsa) [2014861] - bpf: Introduce fd_idx (Jiri Olsa) [2014861] - bpf: Make btf_load command to be bpfptr_t compatible. (Jiri Olsa) [2014861] - libbpf: Support for syscall program type (Jiri Olsa) [2014861] - bpf: Prepare bpf syscall to be used from kernel and user space. (Jiri Olsa) [2014861] - bpf: Introduce bpfptr_t user/kernel pointer. (Jiri Olsa) [2014861] - bpf: Introduce bpf_sys_bpf() helper and program type. (Jiri Olsa) [2014861] - libbpf: Add low level TC-BPF management API (Jiri Olsa) [2014861] - libbpf: Add various netlink helpers (Jiri Olsa) [2014861] - libbpf: Reject static entry-point BPF programs (Jiri Olsa) [2014861] - libbpf: Reject static maps (Jiri Olsa) [2014861] - libbpf: Treat STV_INTERNAL same as STV_HIDDEN for functions (Jiri Olsa) [2014861] - libbpf: Add per-file linker opts (Jiri Olsa) [2014861] - bpf: verifier: Use copy_array for jmp_history (Jiri Olsa) [2014861] - bpf: verifier: Improve function state reallocation (Jiri Olsa) [2014861]- ice: fix getting UDP tunnel entry (Jonathan Toppins) [2015409] - ice: convert to new udp_tunnel infrastructure (Jonathan Toppins) [2015409] - selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050807] - KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050807] {CVE-2022-0516} - lib/iov_iter: initialize "flags" in new pipe_buffer (Jan Stancek) [2060875] {CVE-2022-0847} - fget: clarify and improve __fget_files() implementation (Patrick Talbert) [2032303] - fget: check that the fd still exists after getting a ref to it (Patrick Talbert) [2032303] {CVE-2021-4083} - drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2053358] - cgroup-v1: Correct privileges check in release_agent writes (Waiman Long) [2052167] - cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052167] {CVE-2022-0492} - spec: Fix separate tools build (Yauheni Kaliuta) [2056301] - net/mlx5: DR, Add support for update FTE (Amir Tzin) [2047231] - net/mlx5: DR, Improve rule tracking memory consumption (Amir Tzin) [2047231] - net/mlx5: DR, Remove rehash ctrl struct from dr_htbl (Amir Tzin) [2047231] - net/mlx5: DR, Remove HW specific STE type from nic domain (Amir Tzin) [2047231] - net/mlx5: DR, Merge DR_STE_SIZE enums (Amir Tzin) [2047231] - net/mlx5: DR, Skip source port matching on FDB RX domain (Amir Tzin) [2047231] - net/mlx5: DR, Add ignore_flow_level support for multi-dest flow tables (Amir Tzin) [2047231] - net/mlx5: DR, replace uintN_t with kernel-style types (Amir Tzin) [2047231] - net/mlx5: DR, Support IPv6 matching on flow label for STEv0 (Amir Tzin) [2047231] - net/mlx5: DR, Reduce print level for FT chaining level check (Amir Tzin) [2047231] - net/mlx5: DR, Warn and ignore SW steering rule insertion on QP err (Amir Tzin) [2047231] - net/mlx5: DR, Improve error flow in actions_build_ste_arr (Amir Tzin) [2047231] - net/mlx5: DR, Enable QP retransmission (Amir Tzin) [2047231] - net/mlx5: DR, Enable VLAN pop on TX and VLAN push on RX (Amir Tzin) [2047231] - net/mlx5: DR, Split modify VLAN state to separate pop/push states (Amir Tzin) [2047231] - net/mlx5: DR, Added support for REMOVE_HEADER packet reformat (Amir Tzin) [2047231] - net/mlx4_en: Resolve bad operstate value (Amir Tzin) [1982190] - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources() (Amir Tzin) [1982190] - RDMA/mlx4: Do not fail the registration on port stats (Amir Tzin) [1982190] - RDMA/mlx4: Return missed an error if device doesn't support steering (Amir Tzin) [1982190] - net/mlx4_en: Don't allow aRFS for encapsulated packets (Amir Tzin) [1982190] - mlx4: Fix missing error code in mlx4_load_one() (Amir Tzin) [1982190] - net/mlx4: Fix fall-through warning for Clang (Amir Tzin) [1982190] - mlx4: Remove rcu_read_lock() around XDP program invocation (Amir Tzin) [1982190] - IB/mlx4: Avoid field-overflowing memcpy() (Amir Tzin) [1982190] - RDMA/mlx4: Do not map the core_clock page to user space unless enabled (Amir Tzin) [1982190] - net/mlx4: Treat VFs fair when handling comm_channel_events (Amir Tzin) [1982190] - RDMA/mlx4: Remove an unused variable (Amir Tzin) [1982190] - megaraid_sas: Add new messaging - a fix (Tomas Henzl) [2055248] - HID: amd_sfh: Add interrupt handler to process interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add functionality to clear interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Disable the interrupt for all command (Benjamin Tissoires) [2054929] - HID: amd_sfh: Correct the structure field name (Benjamin Tissoires) [2054929] - HID: amd_sfh: Handle amd_sfh work buffer in PM ops (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add illuminance mask to limit ALS max value (Benjamin Tissoires) [2054929] - HID: amd_sfh: Increase sensor command timeout (Benjamin Tissoires) [2054929] - HID: amd_sfh: Update Copyright details (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dev_' API (Benjamin Tissoires) [2054929] - HID: amd_sfh: Use dma_set_mask_and_coherent() (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dma_' API (Benjamin Tissoires) [2054929] - dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2057166] - dm: fix double accounting of flush with data (Benjamin Marzinski) [2057166] - dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2057166] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [2050410 2048786 2050412] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Handle three rank interleaving mode (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Set proper family type for Family 19h Models 20h-2Fh (Aristeu Rozanski) [2050410 2048786 2050412] - netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2009786] - netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2009786] - selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2009786] - netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2009786] - Enable HSA_AMD_SVM config (Donald Dutile) [2025123] - mm/memremap_pages: support multiple ranges per invocation (Donald Dutile) [2025123] - mm/memremap_pages: convert to 'struct range' (Donald Dutile) [2025123] - device-dax: add an allocation interface for device-dax instances (Donald Dutile) [2025123] - device-dax: make pgmap optional for instance creation (Donald Dutile) [2025123] - device-dax: move instance creation parameters to 'struct dev_dax_data' (Donald Dutile) [2025123] - device-dax: drop the dax_region.pfn_flags attribute (Donald Dutile) [2025123] - memremap: rename MEMORY_DEVICE_DEVDAX to MEMORY_DEVICE_GENERIC (Donald Dutile) [2025123] - PCI/P2PDMA: Introduce private pagemap structure (Donald Dutile) [2025123] - security: implement sctp_assoc_established hook in selinux (Ondrej Mosnacek) [2015525 2048251] - security: add sctp_assoc_established hook (Ondrej Mosnacek) [2015525 2048251] - security: call security_sctp_assoc_request in sctp_sf_do_5_1D_ce (Ondrej Mosnacek) [2015525 2048251] - security: pass asoc to sctp_assoc_request and sctp_sk_clone (Ondrej Mosnacek) [2015525 2048251] - net: sctp: Fix some typos (Ondrej Mosnacek) [2015525 2048251] - iwlwifi: mvm: read 6E enablement flags from DSM and pass to FW (Íñigo Huguet) [1923170 1936001] - net/mlx5: Lag, Make mlx5_lag_is_multipath() be static inline (Amir Tzin) [1982193] - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (Amir Tzin) [1982193] - net/mlx5: DR, Ignore modify TTL if device doesn't support it (Amir Tzin) [1982193 2028504] - net/mlx5: Warn for devlink reload when there are VFs alive (Amir Tzin) [1982193] - net/mlx5: DR, Fix lower case macro prefix "mlx5_" to "MLX5_" (Amir Tzin) [1982193] - net/mlx5e: Fix wrong features assignment in case of error (Amir Tzin) [1982193] - net/mlx5e: Fix ICOSQ recovery flow for XSK (Amir Tzin) [1982193] - net/mlx5e: Fix interoperability between XSK and ICOSQ recovery flow (Amir Tzin) [1982193] - net/mlx5e: Wrap the tx reporter dump callback to extract the sq (Amir Tzin) [1982193] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [1982193] - net/mlx5: Fix SF health recovery flow (Amir Tzin) [1982193] - net/mlx5: Fix error print in case of IRQ request failed (Amir Tzin) [1982193] - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources (Amir Tzin) [1982193] - mlx5: fix mlx5i_grp_sw_update_stats() stack usage (Amir Tzin) [1982193] - mlx5: fix psample_sample_packet link error (Amir Tzin) [1982193] - net/mlx5: Fix format-security build warnings (Amir Tzin) [1982193] - net/mlx5e: Fix missing IPsec statistics on uplink representor (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix Software parser inner l3 type setting in case of encapsulation (Amir Tzin) [1982193] - net/mlx5: E-Switch, return error if encap isn't supported (Amir Tzin) [1982193] - net/mlx5: Lag, update tracker when state change event received (Amir Tzin) [1982193] - net/mlx5e: CT, Fix multiple allocations and memleak of mod acts (Amir Tzin) [1982193 2017675] - net/mlx5: Update error handler for UCTX and UMEM (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev (Amir Tzin) [1982193] - net/mlx5e: Wait for concurrent flow deletion during neigh/fib events (Amir Tzin) [1982193] - net/mlx5e: kTLS, Fix crash in RX resync flow (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix work queue entry ethernet segment checksum flags (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix a misuse of the software parser's fields (Amir Tzin) [1982193] - net/mlx5e: Fix vlan data lost during suspend flow (Amir Tzin) [1982193] - net/mlx5: Lag, change multipath and bonding to be mutually exclusive (Amir Tzin) [1982193] - net/mlx5: Lag, move lag destruction to a workqueue (Amir Tzin) [1982193] - RDMA/mlx5: Initialize the ODP xarray when creating an ODP MR (Amir Tzin) [1982193] - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [1982193] - net/mlx5e: Switchdev representors are not vlan challenged (Amir Tzin) [1982193] - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path (Amir Tzin) [1982193] - net/mlx5: Fix cleanup of bridge delayed work (Amir Tzin) [1982193] - RDMA/mlx5: Set user priority for DCT (Amir Tzin) [1982193] - net/mlx5: DR, Fix typo 'offeset' to 'offset' (Amir Tzin) [1982193] - net/mlx5: DR, Fix vport number data type to u16 (Amir Tzin) [1982193] - net/mlx5e: Fix the presented RQ index in PTP stats (Amir Tzin) [1982193] - net/mlx5: Fix setting number of EQs of SFs (Amir Tzin) [1982193] - net/mlx5: Fix length of irq_index in chars (Amir Tzin) [1982193] - net/mlx5: Avoid generating event after PPS out in Real time mode (Amir Tzin) [1982193] - net/mlx5: Force round second at 1PPS out start time (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix double allocation of acl flow counter (Amir Tzin) [1982193] - net/mlx5e: Keep the value for maximum number of channels in-sync (Amir Tzin) [1982193] - net/mlx5e: IPSEC RX, enable checksum complete (Amir Tzin) [1982193] - net/mlx5: DR, Fix code indentation in dr_ste_v1 (Amir Tzin) [1982193] - RDMA/mlx5: Fix xlt_chunk_align calculation (Amir Tzin) [1982193] - RDMA/mlx5: Fix number of allocated XLT entries (Amir Tzin) [1982193] - net/mlx5e: Fix mutual exclusion between CQE compression and HW TS (Amir Tzin) [1982193] - net/mlx5: Fix potential sleeping in atomic context (Amir Tzin) [1982193] - net/mlx5: FWTrace, cancel work on alloc pd error flow (Amir Tzin) [1982193] - net/mlx5: DR, fix a potential use-after-free bug (Amir Tzin) [1982193] - net/mlx5e: Use correct eswitch for stack devices with lag (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set vhca id valid flag when creating indir fwd group (Amir Tzin) [1982193] - net/mlx5: Remove all auxiliary devices at the unregister event (Amir Tzin) [1982193] - net/mlx5: Lag, fix multipath lag activation (Amir Tzin) [1982193] - net/mlx5: Fix variable type to match 64bit (Amir Tzin) [1982193] - net/mlx5: Fix typo in comments (Amir Tzin) [1982193] - net/mlx5e: Remove Duplicated hunk in function __parse_cls_flower() (Amir Tzin) [1982193] - net/mlx5: Fix unpublish devlink parameters (Amir Tzin) [1982193] - RDMA/mlx5: Delete not-available udata check (Amir Tzin) [1982193] - net/mlx5: Fix missing return value in mlx5_devlink_eswitch_inline_mode_set() (Amir Tzin) [1982193] - net/mlx5e: Block LRO if firmware asks for tunneled LRO (Amir Tzin) [1982193] - net/mlx5e: Prohibit inner indir TIRs in IPoIB (Amir Tzin) [1982193] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Amir Tzin) [1982193] - net/mlx5: Fix return value from tracer initialization (Amir Tzin) [1982193] - net/mlx5: Synchronize correct IRQ when destroying CQ (Amir Tzin) [1982193 1982219] - net/mlx5e: TC, Fix error handling memory leak (Amir Tzin) [1982193] - net/mlx5: Destroy pool->mutex (Amir Tzin) [1982193] - net/mlx5: Set all field of mlx5_irq before inserting it to the xarray (Amir Tzin) [1982193] - net/mlx5: Fix order of functions in mlx5_irq_detach_nb() (Amir Tzin) [1982193] - net/mlx5: Block switchdev mode while devlink traps are active (Amir Tzin) [1982193] - net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free (Amir Tzin) [1982193] - net/mlx5: Bridge, fix ageing time (Amir Tzin) [1982193] - net/mlx5e: Avoid creating tunnel headers for local route (Amir Tzin) [1982193] - net/mlx5: DR, Add fail on error check on decap (Amir Tzin) [1982193] - net/mlx5: Don't skip subfunction cleanup in case of error in module init (Amir Tzin) [1982193] - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it recently (Amir Tzin) [1982193] - net/mlx5: Fix mlx5_vport_tbl_attr chain from u16 to u32 (Amir Tzin) [1982193] - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (Amir Tzin) [1982193] - net/mlx5: Unload device upon firmware fatal error (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for ptp-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for trap-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Consider PTP-RQ when setting RX VLAN stripping (Amir Tzin) [1982193] - net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available (Amir Tzin) [1982193] - net/mlx5e: RX, Avoid possible data corruption when relaxed ordering and LRO combined (Amir Tzin) [1982193] - net/mlx5: E-Switch, handle devcom events only for ports on the same device (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set destination vport vhca id only when merged eswitch is supported (Amir Tzin) [1982193] - net/mlx5e: Disable Rx ntuple offload for uplink representor (Amir Tzin) [1982193] - net/mlx5e: kTLS, Add stats for number of deleted kTLS TX offloaded connections (Amir Tzin) [1982193] - net/mlx5: SF, Improve performance in SF allocation (Amir Tzin) [1982193] - net/mlx5: Increase hairpin buffer size (Amir Tzin) [1982193] - net/mlx5: DR, Add support for flow sampler offload (Amir Tzin) [1982193] - net/mlx5: Compare sampler flow destination ID in fs_core (Amir Tzin) [1982193] - net/mlx5: remove "default n" from Kconfig (Amir Tzin) [1982193] - net/mlx5: Fix spelling mistake "enught" -> "enough" (Amir Tzin) [1982193] - net/mlx5: Use cpumask_available() in mlx5_eq_create_generic() (Amir Tzin) [1982193] - net/mlx5: Fix missing error code in mlx5_init_fs() (Amir Tzin) [1982193] - RDMA/mlx5: Support real-time timestamp directly from the device (Amir Tzin) [1982193] - RDMA/mlx5: Refactor get_ts_format functions to simplify code (Amir Tzin) [1982193] - RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs (Amir Tzin) [1982193] - net/mlx5: Round-Robin EQs over IRQs (Amir Tzin) [1982193] - net/mlx5: Separate between public and private API of sf.h (Amir Tzin) [1982193] - net/mlx5: Enlarge interrupt field in CREATE_EQ (Amir Tzin) [1982193] - net/mlx5: Allocating a pool of MSI-X vectors for SFs (Amir Tzin) [1982193] - net/mlx5: Change IRQ storage logic from static to dynamic (Amir Tzin) [1982193] - net/mlx5: Moving rmap logic to EQs (Amir Tzin) [1982193] - net/mlx5: Extend mlx5_irq_request to request IRQ from the kernel (Amir Tzin) [1982193] - net/mlx5: Removing rmap per IRQ (Amir Tzin) [1982193] - net/mlx5: Clean license text in eq.[c|h] files (Amir Tzin) [1982193] - net/mlx5: Provide cpumask at EQ creation phase (Amir Tzin) [1982193] - net/mlx5: Introduce API for request and release IRQs (Amir Tzin) [1982193] - net/mlx5: Delay IRQ destruction till all users are gone (Amir Tzin) [1982193] - net/mlx5: Change ownership model for lag (Amir Tzin) [1982193] - net/mlx5: Lag, Don't rescan if the device is going down (Amir Tzin) [1982193] - net/mlx5: Lag, refactor disable flow (Amir Tzin) [1982193] - net/mlx5: Bridge, add tracepoints (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, filter tagged packets that didn't match tagged fg (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, support pvid and untagged vlan configurations (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, match FDB entry vlan tag (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, implement infrastructure for vlans (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, dynamic entry ageing (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, handle FDB events (Amir Tzin) [1982193 1982234] - docs: networking: Add missing mlx5 documentation (Amir Tzin) [1982193] - net/mlx5: Bridge, add offload infrastructure (Amir Tzin) [1982193 1982234] - net/mlx5e: Refactor mlx5e_eswitch_{*}rep() helpers (Amir Tzin) [1982193 1982234] - net/mlx5: Create TC-miss priority and table (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Support EMD tag in modify header for STEv1 (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Added support for INSERT_HEADER reformat type (Amir Tzin) [1982193 1982234] - net/mlx5: Added new parameters to reformat context (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Allow encap action for RX for supporting devices (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Split reformat state to Encap and Decap (Amir Tzin) [1982193 1982234] - net/mlx5: mlx5_ifc support for header insert/remove (Amir Tzin) [1982193 1982234] - net/mlx5e: Remove unreachable code in mlx5e_xmit() (Amir Tzin) [1982193] - net/mlx5e: RX, Re-place page pool numa node change logic (Amir Tzin) [1982193] - net/mlx5e: Zero-init DIM structures (Amir Tzin) [1982193] - net/mlx5e: IPoIB, Add support for NDR speed (Amir Tzin) [1982193] - net/mlx5e: Remove the repeated declaration (Amir Tzin) [1982193] - net/mlx5: check for allocation failure in mlx5_ft_pool_init() (Amir Tzin) [1982193] - mlx5: count all link events (Amir Tzin) [1982193] - net/mlx5: Expose FW version over defined keyword (Amir Tzin) [1982193] - net/mlx5: Use boolean arithmetic to evaluate roce_lag (Amir Tzin) [1982193] - net/mlx5: Remove unnecessary spin lock protection (Amir Tzin) [1982193] - net/mlx5: Cap the maximum flow group size to 16M entries (Amir Tzin) [1982193] - net/mlx5: DR, Set max table size to 2G entries (Amir Tzin) [1982193] - net/mlx5: Move chains ft pool to be used by all firmware steering (Amir Tzin) [1982193] - net/mlx5: Move table size calculation to steering cmd layer (Amir Tzin) [1982193] - net/mlx5: Add case for FS_FT_NIC_TX FT in MLX5_CAP_FLOWTABLE_TYPE (Amir Tzin) [1982193] - net/mlx5: DR, Remove unused field of send_ring struct (Amir Tzin) [1982193] - net/mlx5e: RX, Remove unnecessary check in RX CQE compression handling (Amir Tzin) [1982193] - net/mlx5: CT: Avoid reusing modify header context for natted entries (Amir Tzin) [1982193] - net/mlx5e: CT, Remove newline from ct_dbg call (Amir Tzin) [1982193] - RDMA/mlx5: Take qp type from mlx5_ib_qp (Amir Tzin) [1982193] - RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response (Amir Tzin) [1982193] - RDMA/mlx5: Support SQD2RTS for modify QP (Amir Tzin) [1982193] - RDMA/mlx5: Remove redundant assignment to ret (Amir Tzin) [1982193] - firewire: fix support status (Tomas Henzl) [2055319] - dlci: fix support status (Tomas Henzl) [2055319] - dlink: fix support status (Tomas Henzl) [2055319] - rxe: fix support status (Tomas Henzl) [2055319] - qic: fix support status (Tomas Henzl) [2055319] - Revert "ceph: enable async dirops by default" (Jeffrey Layton) [2052542] - libceph: optionally use bounce buffer on recv path in crc mode (Jeffrey Layton) [2024725] - libceph: make recv path in secure mode work the same as send path (Jeffrey Layton) [2024725] - mm: use kmap_local_page in memzero_page (Jeffrey Layton) [2024725] - mm: call flush_dcache_page() in memcpy_to_page() and memzero_page() (Jeffrey Layton) [2024725] - iov_iter: lift memzero_page() to highmem.h (Jeffrey Layton) [2024725] - mm/highmem: Convert memcpy_[to|from]_page() to kmap_local_page() (Jeffrey Layton) [2024725] - mm/highmem: Lift memcpy_[to|from]_page to core (Jeffrey Layton) [2024725] - ceph: set pool_ns in new inode layout for async creates (Jeffrey Layton) [2046021] - ceph: properly put ceph_string reference after async create attempt (Jeffrey Layton) [2046021] - ceph: put the requests/sessions when it fails to alloc memory (Jeffrey Layton) [2046021] - ceph: remove redundant Lsx caps check (Jeffrey Layton) [2046021] - ceph: don't check for quotas on MDS stray dirs (Jeffrey Layton) [2046021] - ceph: drop send metrics debug message (Jeffrey Layton) [2046021] - ceph: Fix incorrect statfs report for small quota (Jeffrey Layton) [2011104] - scsi: qla2xxx: stop timer in shutdown path (Nilesh Javali) [2056055] - Revert "PCI: Add support for dev_groups to struct pci_driver" (Michel Dänzer) [2054595] - drm/amdgpu: Assign amdgpu_sysfs_groups to struct device_driver directly (Michel Dänzer) [2054595] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1998359] - redhat: enable zstream release numbering for rhel 8.6 (Augusto Caringi) - redhat: generate distgit changelog in genspec.sh as well (Jan Stancek) - redhat: always upload kabi tarballs (Jan Stancek) - redhat: make genspec prefer metadata from git notes (Jan Stancek) - internal: update RHEL_MINOR for the start of RHEL-8.7 development (Jarod Wilson)- ice: fix getting UDP tunnel entry (Jonathan Toppins) [2015409] - ice: convert to new udp_tunnel infrastructure (Jonathan Toppins) [2015409] - selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050807] - KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050807] {CVE-2022-0516} - lib/iov_iter: initialize "flags" in new pipe_buffer (Jan Stancek) [2060875] {CVE-2022-0847} - fget: clarify and improve __fget_files() implementation (Patrick Talbert) [2032303] - fget: check that the fd still exists after getting a ref to it (Patrick Talbert) [2032303] {CVE-2021-4083} - drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2053358] - cgroup-v1: Correct privileges check in release_agent writes (Waiman Long) [2052167] - cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052167] {CVE-2022-0492} - spec: Fix separate tools build (Yauheni Kaliuta) [2056301] - net/mlx5: DR, Add support for update FTE (Amir Tzin) [2047231] - net/mlx5: DR, Improve rule tracking memory consumption (Amir Tzin) [2047231] - net/mlx5: DR, Remove rehash ctrl struct from dr_htbl (Amir Tzin) [2047231] - net/mlx5: DR, Remove HW specific STE type from nic domain (Amir Tzin) [2047231] - net/mlx5: DR, Merge DR_STE_SIZE enums (Amir Tzin) [2047231] - net/mlx5: DR, Skip source port matching on FDB RX domain (Amir Tzin) [2047231] - net/mlx5: DR, Add ignore_flow_level support for multi-dest flow tables (Amir Tzin) [2047231] - net/mlx5: DR, replace uintN_t with kernel-style types (Amir Tzin) [2047231] - net/mlx5: DR, Support IPv6 matching on flow label for STEv0 (Amir Tzin) [2047231] - net/mlx5: DR, Reduce print level for FT chaining level check (Amir Tzin) [2047231] - net/mlx5: DR, Warn and ignore SW steering rule insertion on QP err (Amir Tzin) [2047231] - net/mlx5: DR, Improve error flow in actions_build_ste_arr (Amir Tzin) [2047231] - net/mlx5: DR, Enable QP retransmission (Amir Tzin) [2047231] - net/mlx5: DR, Enable VLAN pop on TX and VLAN push on RX (Amir Tzin) [2047231] - net/mlx5: DR, Split modify VLAN state to separate pop/push states (Amir Tzin) [2047231] - net/mlx5: DR, Added support for REMOVE_HEADER packet reformat (Amir Tzin) [2047231] - net/mlx4_en: Resolve bad operstate value (Amir Tzin) [1982190] - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources() (Amir Tzin) [1982190] - RDMA/mlx4: Do not fail the registration on port stats (Amir Tzin) [1982190] - RDMA/mlx4: Return missed an error if device doesn't support steering (Amir Tzin) [1982190] - net/mlx4_en: Don't allow aRFS for encapsulated packets (Amir Tzin) [1982190] - mlx4: Fix missing error code in mlx4_load_one() (Amir Tzin) [1982190] - net/mlx4: Fix fall-through warning for Clang (Amir Tzin) [1982190] - mlx4: Remove rcu_read_lock() around XDP program invocation (Amir Tzin) [1982190] - IB/mlx4: Avoid field-overflowing memcpy() (Amir Tzin) [1982190] - RDMA/mlx4: Do not map the core_clock page to user space unless enabled (Amir Tzin) [1982190] - net/mlx4: Treat VFs fair when handling comm_channel_events (Amir Tzin) [1982190] - RDMA/mlx4: Remove an unused variable (Amir Tzin) [1982190]- megaraid_sas: Add new messaging - a fix (Tomas Henzl) [2055248] - HID: amd_sfh: Add interrupt handler to process interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add functionality to clear interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Disable the interrupt for all command (Benjamin Tissoires) [2054929] - HID: amd_sfh: Correct the structure field name (Benjamin Tissoires) [2054929] - HID: amd_sfh: Handle amd_sfh work buffer in PM ops (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add illuminance mask to limit ALS max value (Benjamin Tissoires) [2054929] - HID: amd_sfh: Increase sensor command timeout (Benjamin Tissoires) [2054929] - HID: amd_sfh: Update Copyright details (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dev_' API (Benjamin Tissoires) [2054929] - HID: amd_sfh: Use dma_set_mask_and_coherent() (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dma_' API (Benjamin Tissoires) [2054929] - dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2057166] - dm: fix double accounting of flush with data (Benjamin Marzinski) [2057166] - dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2057166] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [2050410 2048786 2050412] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Handle three rank interleaving mode (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Set proper family type for Family 19h Models 20h-2Fh (Aristeu Rozanski) [2050410 2048786 2050412] - netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2009786] - netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2009786] - selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2009786] - netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2009786] - Enable HSA_AMD_SVM config (Donald Dutile) [2025123] - mm/memremap_pages: support multiple ranges per invocation (Donald Dutile) [2025123] - mm/memremap_pages: convert to 'struct range' (Donald Dutile) [2025123] - device-dax: add an allocation interface for device-dax instances (Donald Dutile) [2025123] - device-dax: make pgmap optional for instance creation (Donald Dutile) [2025123] - device-dax: move instance creation parameters to 'struct dev_dax_data' (Donald Dutile) [2025123] - device-dax: drop the dax_region.pfn_flags attribute (Donald Dutile) [2025123] - memremap: rename MEMORY_DEVICE_DEVDAX to MEMORY_DEVICE_GENERIC (Donald Dutile) [2025123] - PCI/P2PDMA: Introduce private pagemap structure (Donald Dutile) [2025123] - security: implement sctp_assoc_established hook in selinux (Ondrej Mosnacek) [2015525 2048251] - security: add sctp_assoc_established hook (Ondrej Mosnacek) [2015525 2048251] - security: call security_sctp_assoc_request in sctp_sf_do_5_1D_ce (Ondrej Mosnacek) [2015525 2048251] - security: pass asoc to sctp_assoc_request and sctp_sk_clone (Ondrej Mosnacek) [2015525 2048251] - net: sctp: Fix some typos (Ondrej Mosnacek) [2015525 2048251] - iwlwifi: mvm: read 6E enablement flags from DSM and pass to FW (Íñigo Huguet) [1923170 1936001] - net/mlx5: Lag, Make mlx5_lag_is_multipath() be static inline (Amir Tzin) [1982193] - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (Amir Tzin) [1982193] - net/mlx5: DR, Ignore modify TTL if device doesn't support it (Amir Tzin) [1982193 2028504] - net/mlx5: Warn for devlink reload when there are VFs alive (Amir Tzin) [1982193] - net/mlx5: DR, Fix lower case macro prefix "mlx5_" to "MLX5_" (Amir Tzin) [1982193] - net/mlx5e: Fix wrong features assignment in case of error (Amir Tzin) [1982193] - net/mlx5e: Fix ICOSQ recovery flow for XSK (Amir Tzin) [1982193] - net/mlx5e: Fix interoperability between XSK and ICOSQ recovery flow (Amir Tzin) [1982193] - net/mlx5e: Wrap the tx reporter dump callback to extract the sq (Amir Tzin) [1982193] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [1982193] - net/mlx5: Fix SF health recovery flow (Amir Tzin) [1982193] - net/mlx5: Fix error print in case of IRQ request failed (Amir Tzin) [1982193] - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources (Amir Tzin) [1982193] - mlx5: fix mlx5i_grp_sw_update_stats() stack usage (Amir Tzin) [1982193] - mlx5: fix psample_sample_packet link error (Amir Tzin) [1982193] - net/mlx5: Fix format-security build warnings (Amir Tzin) [1982193] - net/mlx5e: Fix missing IPsec statistics on uplink representor (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix Software parser inner l3 type setting in case of encapsulation (Amir Tzin) [1982193] - net/mlx5: E-Switch, return error if encap isn't supported (Amir Tzin) [1982193] - net/mlx5: Lag, update tracker when state change event received (Amir Tzin) [1982193] - net/mlx5e: CT, Fix multiple allocations and memleak of mod acts (Amir Tzin) [1982193 2017675] - net/mlx5: Update error handler for UCTX and UMEM (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev (Amir Tzin) [1982193] - net/mlx5e: Wait for concurrent flow deletion during neigh/fib events (Amir Tzin) [1982193] - net/mlx5e: kTLS, Fix crash in RX resync flow (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix work queue entry ethernet segment checksum flags (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix a misuse of the software parser's fields (Amir Tzin) [1982193] - net/mlx5e: Fix vlan data lost during suspend flow (Amir Tzin) [1982193] - net/mlx5: Lag, change multipath and bonding to be mutually exclusive (Amir Tzin) [1982193] - net/mlx5: Lag, move lag destruction to a workqueue (Amir Tzin) [1982193] - RDMA/mlx5: Initialize the ODP xarray when creating an ODP MR (Amir Tzin) [1982193] - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [1982193] - net/mlx5e: Switchdev representors are not vlan challenged (Amir Tzin) [1982193] - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path (Amir Tzin) [1982193] - net/mlx5: Fix cleanup of bridge delayed work (Amir Tzin) [1982193] - RDMA/mlx5: Set user priority for DCT (Amir Tzin) [1982193] - net/mlx5: DR, Fix typo 'offeset' to 'offset' (Amir Tzin) [1982193] - net/mlx5: DR, Fix vport number data type to u16 (Amir Tzin) [1982193] - net/mlx5e: Fix the presented RQ index in PTP stats (Amir Tzin) [1982193] - net/mlx5: Fix setting number of EQs of SFs (Amir Tzin) [1982193] - net/mlx5: Fix length of irq_index in chars (Amir Tzin) [1982193] - net/mlx5: Avoid generating event after PPS out in Real time mode (Amir Tzin) [1982193] - net/mlx5: Force round second at 1PPS out start time (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix double allocation of acl flow counter (Amir Tzin) [1982193] - net/mlx5e: Keep the value for maximum number of channels in-sync (Amir Tzin) [1982193] - net/mlx5e: IPSEC RX, enable checksum complete (Amir Tzin) [1982193] - net/mlx5: DR, Fix code indentation in dr_ste_v1 (Amir Tzin) [1982193] - RDMA/mlx5: Fix xlt_chunk_align calculation (Amir Tzin) [1982193] - RDMA/mlx5: Fix number of allocated XLT entries (Amir Tzin) [1982193] - net/mlx5e: Fix mutual exclusion between CQE compression and HW TS (Amir Tzin) [1982193] - net/mlx5: Fix potential sleeping in atomic context (Amir Tzin) [1982193] - net/mlx5: FWTrace, cancel work on alloc pd error flow (Amir Tzin) [1982193] - net/mlx5: DR, fix a potential use-after-free bug (Amir Tzin) [1982193] - net/mlx5e: Use correct eswitch for stack devices with lag (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set vhca id valid flag when creating indir fwd group (Amir Tzin) [1982193] - net/mlx5: Remove all auxiliary devices at the unregister event (Amir Tzin) [1982193] - net/mlx5: Lag, fix multipath lag activation (Amir Tzin) [1982193] - net/mlx5: Fix variable type to match 64bit (Amir Tzin) [1982193] - net/mlx5: Fix typo in comments (Amir Tzin) [1982193] - net/mlx5e: Remove Duplicated hunk in function __parse_cls_flower() (Amir Tzin) [1982193] - net/mlx5: Fix unpublish devlink parameters (Amir Tzin) [1982193] - RDMA/mlx5: Delete not-available udata check (Amir Tzin) [1982193] - net/mlx5: Fix missing return value in mlx5_devlink_eswitch_inline_mode_set() (Amir Tzin) [1982193] - net/mlx5e: Block LRO if firmware asks for tunneled LRO (Amir Tzin) [1982193] - net/mlx5e: Prohibit inner indir TIRs in IPoIB (Amir Tzin) [1982193] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Amir Tzin) [1982193] - net/mlx5: Fix return value from tracer initialization (Amir Tzin) [1982193] - net/mlx5: Synchronize correct IRQ when destroying CQ (Amir Tzin) [1982193 1982219] - net/mlx5e: TC, Fix error handling memory leak (Amir Tzin) [1982193] - net/mlx5: Destroy pool->mutex (Amir Tzin) [1982193] - net/mlx5: Set all field of mlx5_irq before inserting it to the xarray (Amir Tzin) [1982193] - net/mlx5: Fix order of functions in mlx5_irq_detach_nb() (Amir Tzin) [1982193] - net/mlx5: Block switchdev mode while devlink traps are active (Amir Tzin) [1982193] - net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free (Amir Tzin) [1982193] - net/mlx5: Bridge, fix ageing time (Amir Tzin) [1982193] - net/mlx5e: Avoid creating tunnel headers for local route (Amir Tzin) [1982193] - net/mlx5: DR, Add fail on error check on decap (Amir Tzin) [1982193] - net/mlx5: Don't skip subfunction cleanup in case of error in module init (Amir Tzin) [1982193] - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it recently (Amir Tzin) [1982193] - net/mlx5: Fix mlx5_vport_tbl_attr chain from u16 to u32 (Amir Tzin) [1982193] - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (Amir Tzin) [1982193] - net/mlx5: Unload device upon firmware fatal error (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for ptp-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for trap-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Consider PTP-RQ when setting RX VLAN stripping (Amir Tzin) [1982193] - net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available (Amir Tzin) [1982193] - net/mlx5e: RX, Avoid possible data corruption when relaxed ordering and LRO combined (Amir Tzin) [1982193] - net/mlx5: E-Switch, handle devcom events only for ports on the same device (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set destination vport vhca id only when merged eswitch is supported (Amir Tzin) [1982193] - net/mlx5e: Disable Rx ntuple offload for uplink representor (Amir Tzin) [1982193] - net/mlx5e: kTLS, Add stats for number of deleted kTLS TX offloaded connections (Amir Tzin) [1982193] - net/mlx5: SF, Improve performance in SF allocation (Amir Tzin) [1982193] - net/mlx5: Increase hairpin buffer size (Amir Tzin) [1982193] - net/mlx5: DR, Add support for flow sampler offload (Amir Tzin) [1982193] - net/mlx5: Compare sampler flow destination ID in fs_core (Amir Tzin) [1982193] - net/mlx5: remove "default n" from Kconfig (Amir Tzin) [1982193] - net/mlx5: Fix spelling mistake "enught" -> "enough" (Amir Tzin) [1982193] - net/mlx5: Use cpumask_available() in mlx5_eq_create_generic() (Amir Tzin) [1982193] - net/mlx5: Fix missing error code in mlx5_init_fs() (Amir Tzin) [1982193] - RDMA/mlx5: Support real-time timestamp directly from the device (Amir Tzin) [1982193] - RDMA/mlx5: Refactor get_ts_format functions to simplify code (Amir Tzin) [1982193] - RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs (Amir Tzin) [1982193] - net/mlx5: Round-Robin EQs over IRQs (Amir Tzin) [1982193] - net/mlx5: Separate between public and private API of sf.h (Amir Tzin) [1982193] - net/mlx5: Enlarge interrupt field in CREATE_EQ (Amir Tzin) [1982193] - net/mlx5: Allocating a pool of MSI-X vectors for SFs (Amir Tzin) [1982193] - net/mlx5: Change IRQ storage logic from static to dynamic (Amir Tzin) [1982193] - net/mlx5: Moving rmap logic to EQs (Amir Tzin) [1982193] - net/mlx5: Extend mlx5_irq_request to request IRQ from the kernel (Amir Tzin) [1982193] - net/mlx5: Removing rmap per IRQ (Amir Tzin) [1982193] - net/mlx5: Clean license text in eq.[c|h] files (Amir Tzin) [1982193] - net/mlx5: Provide cpumask at EQ creation phase (Amir Tzin) [1982193] - net/mlx5: Introduce API for request and release IRQs (Amir Tzin) [1982193] - net/mlx5: Delay IRQ destruction till all users are gone (Amir Tzin) [1982193] - net/mlx5: Change ownership model for lag (Amir Tzin) [1982193] - net/mlx5: Lag, Don't rescan if the device is going down (Amir Tzin) [1982193] - net/mlx5: Lag, refactor disable flow (Amir Tzin) [1982193] - net/mlx5: Bridge, add tracepoints (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, filter tagged packets that didn't match tagged fg (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, support pvid and untagged vlan configurations (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, match FDB entry vlan tag (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, implement infrastructure for vlans (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, dynamic entry ageing (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, handle FDB events (Amir Tzin) [1982193 1982234] - docs: networking: Add missing mlx5 documentation (Amir Tzin) [1982193] - net/mlx5: Bridge, add offload infrastructure (Amir Tzin) [1982193 1982234] - net/mlx5e: Refactor mlx5e_eswitch_{*}rep() helpers (Amir Tzin) [1982193 1982234] - net/mlx5: Create TC-miss priority and table (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Support EMD tag in modify header for STEv1 (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Added support for INSERT_HEADER reformat type (Amir Tzin) [1982193 1982234] - net/mlx5: Added new parameters to reformat context (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Allow encap action for RX for supporting devices (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Split reformat state to Encap and Decap (Amir Tzin) [1982193 1982234] - net/mlx5: mlx5_ifc support for header insert/remove (Amir Tzin) [1982193 1982234] - net/mlx5e: Remove unreachable code in mlx5e_xmit() (Amir Tzin) [1982193] - net/mlx5e: RX, Re-place page pool numa node change logic (Amir Tzin) [1982193] - net/mlx5e: Zero-init DIM structures (Amir Tzin) [1982193] - net/mlx5e: IPoIB, Add support for NDR speed (Amir Tzin) [1982193] - net/mlx5e: Remove the repeated declaration (Amir Tzin) [1982193] - net/mlx5: check for allocation failure in mlx5_ft_pool_init() (Amir Tzin) [1982193] - mlx5: count all link events (Amir Tzin) [1982193] - net/mlx5: Expose FW version over defined keyword (Amir Tzin) [1982193] - net/mlx5: Use boolean arithmetic to evaluate roce_lag (Amir Tzin) [1982193] - net/mlx5: Remove unnecessary spin lock protection (Amir Tzin) [1982193] - net/mlx5: Cap the maximum flow group size to 16M entries (Amir Tzin) [1982193] - net/mlx5: DR, Set max table size to 2G entries (Amir Tzin) [1982193] - net/mlx5: Move chains ft pool to be used by all firmware steering (Amir Tzin) [1982193] - net/mlx5: Move table size calculation to steering cmd layer (Amir Tzin) [1982193] - net/mlx5: Add case for FS_FT_NIC_TX FT in MLX5_CAP_FLOWTABLE_TYPE (Amir Tzin) [1982193] - net/mlx5: DR, Remove unused field of send_ring struct (Amir Tzin) [1982193] - net/mlx5e: RX, Remove unnecessary check in RX CQE compression handling (Amir Tzin) [1982193] - net/mlx5: CT: Avoid reusing modify header context for natted entries (Amir Tzin) [1982193] - net/mlx5e: CT, Remove newline from ct_dbg call (Amir Tzin) [1982193] - RDMA/mlx5: Take qp type from mlx5_ib_qp (Amir Tzin) [1982193] - RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response (Amir Tzin) [1982193] - RDMA/mlx5: Support SQD2RTS for modify QP (Amir Tzin) [1982193] - RDMA/mlx5: Remove redundant assignment to ret (Amir Tzin) [1982193] - firewire: fix support status (Tomas Henzl) [2055319] - dlci: fix support status (Tomas Henzl) [2055319] - dlink: fix support status (Tomas Henzl) [2055319] - rxe: fix support status (Tomas Henzl) [2055319] - qic: fix support status (Tomas Henzl) [2055319] - Revert "ceph: enable async dirops by default" (Jeffrey Layton) [2052542] - libceph: optionally use bounce buffer on recv path in crc mode (Jeffrey Layton) [2024725] - libceph: make recv path in secure mode work the same as send path (Jeffrey Layton) [2024725] - mm: use kmap_local_page in memzero_page (Jeffrey Layton) [2024725] - mm: call flush_dcache_page() in memcpy_to_page() and memzero_page() (Jeffrey Layton) [2024725] - iov_iter: lift memzero_page() to highmem.h (Jeffrey Layton) [2024725] - mm/highmem: Convert memcpy_[to|from]_page() to kmap_local_page() (Jeffrey Layton) [2024725] - mm/highmem: Lift memcpy_[to|from]_page to core (Jeffrey Layton) [2024725] - ceph: set pool_ns in new inode layout for async creates (Jeffrey Layton) [2046021] - ceph: properly put ceph_string reference after async create attempt (Jeffrey Layton) [2046021] - ceph: put the requests/sessions when it fails to alloc memory (Jeffrey Layton) [2046021] - ceph: remove redundant Lsx caps check (Jeffrey Layton) [2046021] - ceph: don't check for quotas on MDS stray dirs (Jeffrey Layton) [2046021] - ceph: drop send metrics debug message (Jeffrey Layton) [2046021] - ceph: Fix incorrect statfs report for small quota (Jeffrey Layton) [2011104] - scsi: qla2xxx: stop timer in shutdown path (Nilesh Javali) [2056055] - Revert "PCI: Add support for dev_groups to struct pci_driver" (Michel Dänzer) [2054595] - drm/amdgpu: Assign amdgpu_sysfs_groups to struct device_driver directly (Michel Dänzer) [2054595] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1998359] - redhat: enable zstream release numbering for rhel 8.6 (Augusto Caringi) - redhat: generate distgit changelog in genspec.sh as well (Jan Stancek) - redhat: always upload kabi tarballs (Jan Stancek) - redhat: make genspec prefer metadata from git notes (Jan Stancek)- xfs: don't generate selinux audit messages for capability testing (Brian Foster) [2059835]- ice: Implement support for SMA and U.FL on E810-T (Jonathan Toppins) [1975007] - ice: Add support for SMA control multiplexer (Jonathan Toppins) [1975007] - ice: Implement functions for reading and setting GPIO pins (Jonathan Toppins) [1975007] - ice: Refactor ice_aqc_link_topo_addr (Jonathan Toppins) [1975007] - xfs: restore speculative_cow_prealloc_lifetime sysctl (Bill O'Donnell) [2015621] - xfs: Fix the free logic of state in xfs_attr_node_hasname (Bill O'Donnell) [2015621 2037498] - xfs: punch out data fork delalloc blocks on COW writeback failure (Bill O'Donnell) [2015621 2012872] - xfs: use kmem_cache_free() for kmem_cache objects (Bill O'Donnell) [2015621] - xfs: logging the on disk inode LSN can make it go backwards (Bill O'Donnell) [2015621] - xfs: only reset incore inode health state flags when reclaiming an inode (Bill O'Donnell) [2015621] - xfs: remove obsolete AGF counter debugging (Bill O'Donnell) [2015621] - xfs: Initialize xfs_alloc_arg->total correctly when allocating minlen extents (Bill O'Donnell) [2015621] - xfs: Fix dax inode extent calculation when direct write is performed on an unwritten extent (Bill O'Donnell) [2015621] - xfs: mark a data structure sick if there are cross-referencing errors (Bill O'Donnell) [2015621] - xfs: fix maxlevels comparisons in the btree staging code (Bill O'Donnell) [2015621] - xfs: fix incorrect unit conversion in scrub tracepoint (Bill O'Donnell) [2015621] - xfs: fix log intent recovery ENOSPC shutdowns when inactivating inodes (Bill O'Donnell) [2015621] - xfs: fix radix tree tag signs (Bill O'Donnell) [2015621] - xfs: force log and push AIL to clear pinned inodes when aborting mount (Bill O'Donnell) [2015621] - xfs: use current->journal_info for detecting transaction recursion (Bill O'Donnell) [2015621] - xfs: don't nest transactions when scanning for eofblocks (Bill O'Donnell) [2015621] - xfs: fix boolreturn.cocci warnings (Bill O'Donnell) [2015621] - xfs: get rid of xfs_growfs_{data,log}_t (Bill O'Donnell) [2015621] - xfs: rename `new' to `delta' in xfs_growfs_data_private() (Bill O'Donnell) [2015621] - xfs: don't bounce the iolock between free_{eof,cow}blocks (Bill O'Donnell) [2015621] - xfs: expose the blockgc workqueue knobs publicly (Bill O'Donnell) [2015621] - xfs: parallelize block preallocation garbage collection (Bill O'Donnell) [2015621] - xfs: rename block gc start and stop functions (Bill O'Donnell) [2015621] - xfs: only walk the incore inode tree once per blockgc scan (Bill O'Donnell) [2015621] - xfs: consolidate the eofblocks and cowblocks workers (Bill O'Donnell) [2015621] - xfs: consolidate incore inode radix tree posteof/cowblocks tags (Bill O'Donnell) [2015621] - xfs: remove trivial eof/cowblocks functions (Bill O'Donnell) [2015621] - xfs: hide xfs_icache_free_cowblocks (Bill O'Donnell) [2015621] - xfs: hide xfs_icache_free_eofblocks (Bill O'Donnell) [2015621] - xfs: relocate the eofb/cowb workqueue functions (Bill O'Donnell) [2015621] - xfs: set WQ_SYSFS on all workqueues in debug mode (Bill O'Donnell) [2015621] - xfs: increase the default parallelism levels of pwork clients (Bill O'Donnell) [2015621] - xfs: flush speculative space allocations when we run out of space (Bill O'Donnell) [2015621] - xfs: refactor xfs_icache_free_{eof,cow}blocks call sites (Bill O'Donnell) [2015621] - xfs: add a tracepoint for blockgc scans (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for chown (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for inode creation (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for file blocks (Bill O'Donnell) [2015621] - xfs: try worst case space reservation upfront in xfs_reflink_remap_extent (Bill O'Donnell) [2015621] - xfs: pass flags and return gc errors from xfs_blockgc_free_quota (Bill O'Donnell) [2015621] - xfs: move and rename xfs_inode_free_quota_blocks to avoid conflicts (Bill O'Donnell) [2015621] - xfs: xfs_inode_free_quota_blocks should scan project quota (Bill O'Donnell) [2015621] - xfs: don't stall cowblocks scan if we can't take locks (Bill O'Donnell) [2015621] - xfs: trigger all block gc scans when low on quota space (Bill O'Donnell) [2015621] - xfs: shut down the filesystem if we screw up quota reservation (Bill O'Donnell) [2015621] - xfs: rename code to error in xfs_ioctl_setattr (Bill O'Donnell) [2015621] - xfs: remove xfs_qm_vop_chown_reserve (Bill O'Donnell) [2015621] - xfs: refactor inode ownership change transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: refactor inode creation transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: refactor reflink functions to use xfs_trans_alloc_inode (Bill O'Donnell) [2015621] - xfs: allow reservation of rtblocks with xfs_trans_alloc_inode (Bill O'Donnell) [2015621] - xfs: refactor common transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: reserve data and rt quota at the same time (Bill O'Donnell) [2015621] - xfs: clean up icreate quota reservation calls (Bill O'Donnell) [2015621] - xfs: remove xfs_trans_unreserve_quota_nblks completely (Bill O'Donnell) [2015621] - xfs: create convenience wrappers for incore quota block reservations (Bill O'Donnell) [2015621] - xfs: clean up quota reservation callsites (Bill O'Donnell) [2015621] - xfs: reduce quota reservation when doing a dax unwritten extent conversion (Bill O'Donnell) [2015621] - xfs: reduce exclusive locking on unaligned dio (Bill O'Donnell) [2015621] - xfs: split the unaligned DIO write code out (Bill O'Donnell) [2015621] - xfs: improve the reflink_bounce_dio_write tracepoint (Bill O'Donnell) [2015621] - xfs: simplify the read/write tracepoints (Bill O'Donnell) [2015621] - xfs: remove the buffered I/O fallback assert (Bill O'Donnell) [2015621] - xfs: cleanup the read/write helper naming (Bill O'Donnell) [2015621] - xfs: make xfs_file_aio_write_checks IOCB_NOWAIT-aware (Bill O'Donnell) [2015621] - xfs: factor out a xfs_ilock_iocb helper (Bill O'Donnell) [2015621] - xfs: Fix 'set but not used' warning in xfs_bmap_compute_alignments() (Bill O'Donnell) [2015621] - xfs: fix unused log variable in xfs_log_cover() (Bill O'Donnell) [2015621] - iomap: add a IOMAP_DIO_OVERWRITE_ONLY flag (Bill O'Donnell) [2015621] - iomap: pass a flags argument to iomap_dio_rw (Bill O'Donnell) [2015621] - iomap: rename the flags variable in __iomap_dio_rw (Bill O'Donnell) [2015621] - iomap: Allow filesystem to call iomap_dio_complete without i_rwsem (Bill O'Donnell) [2015621] - xfs: reduce ilock acquisitions in xfs_file_fsync (Bill O'Donnell) [2015621] - xfs: refactor xfs_file_fsync (Bill O'Donnell) [2015621] - xfs: cover the log on freeze instead of cleaning it (Bill O'Donnell) [2015621] - xfs: remove xfs_quiesce_attr() (Bill O'Donnell) [2015621] - xfs: remove duplicate wq cancel and log force from attr quiesce (Bill O'Donnell) [2015621] - xfs: fold sbcount quiesce logging into log covering (Bill O'Donnell) [2015621] - xfs: don't reset log idle state on covering checkpoints (Bill O'Donnell) [2015621] - xfs: cover the log during log quiesce (Bill O'Donnell) [2015621] - xfs: separate log cleaning from log quiesce (Bill O'Donnell) [2015621] - xfs: lift writable fs check up into log worker task (Bill O'Donnell) [2015621] - xfs: set inode size after creating symlink (Bill O'Donnell) [2015621] - xfs: remove a stale comment from xfs_file_aio_write_checks() (Bill O'Donnell) [2015621] - xfs: Introduce error injection to allocate only minlen size extents for files (Bill O'Donnell) [2015621] - xfs: Process allocated extent in a separate function (Bill O'Donnell) [2015621] - xfs: Compute bmap extent alignments in a separate function (Bill O'Donnell) [2015621] - xfs: Remove duplicate assert statement in xfs_bmap_btalloc() (Bill O'Donnell) [2015621] - xfs: Introduce error injection to reduce maximum inode fork extent count (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when swapping extents (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when remapping an extent (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when moving extent from cow to data fork (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when writing to unwritten extent (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when adding/removing xattrs (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when renaming dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when removing dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when adding dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when punching a hole (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when trivally adding a new extent (Bill O'Donnell) [2015621] - xfs: Add helper for checking per-inode extent count overflow (Bill O'Donnell) [2015621] - iwlwifi: pcie: add killer devices to the driver (Íñigo Huguet) [2043453] - iwlwifi: add support for BNJ HW (Íñigo Huguet) [2043453] - iwlwifi: Fix FW name for gl (Íñigo Huguet) [2043453] - iwlwifi: Read the correct addresses when getting the crf id (Íñigo Huguet) [2043453] - iwlwifi: pcie: add jacket bit to device configuration parsing (Íñigo Huguet) [2043453] - iwlwifi: add new ax1650 killer device (Íñigo Huguet) [2043453] - iwlwifi: add new Qu-Hr device (Íñigo Huguet) [2043453] - iwlwifi: add missing entries for Gf4 with So and SoF (Íñigo Huguet) [2043453] - iwlwifi: remove unused iwlax210_2ax_cfg_so_hr_a0 structure (Íñigo Huguet) [2043453] - iwlwifi: add support for Bz-Z HW (Íñigo Huguet) [2043453] - iwlwifi: support 4-bits in MAC step value (Íñigo Huguet) [2043453] - iwlwifi: mvm: Increase the scan timeout guard to 30 seconds (Íñigo Huguet) [2043453] - iwlwifi: mvm: Use div_s64 instead of do_div in iwl_mvm_ftm_rtt_smoothing() (Íñigo Huguet) [2043453] - mt76: mt7921: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2043453] - ath11k: Fix unexpected return buffer manager error for QCA6390 (Íñigo Huguet) [2043453] - ath11k: Fix napi related hang (Íñigo Huguet) [2043453] - iwlwifi: yoyo: fix issue with new DBGI_SRAM region read. (Íñigo Huguet) [2043453] - iwlwifi: pcie: make sure prph_info is set when treating wakeup IRQ (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix AUX ROC removal (Íñigo Huguet) [2043453] - iwlwifi: mvm: set protected flag only for NDP ranging (Íñigo Huguet) [2043453] - iwlwifi: mvm: perform 6GHz passive scan after suspend (Íñigo Huguet) [2043453] - iwlwifi: mvm: Fix calculation of frame length (Íñigo Huguet) [2043453] - iwlwifi: mvm: test roc running status bits before removing the sta (Íñigo Huguet) [2043453] - iwlwifi: don't pass actual WGDS revision number in table_revision (Íñigo Huguet) [2043453] - iwlwifi: fix leaks/bad data after failed firmware load (Íñigo Huguet) [2043453] - iwlwifi: fix debug TLV parsing (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix 32-bit build in FTM (Íñigo Huguet) [2043453] - iwlwifi: fix Bz NMI behaviour (Íñigo Huguet) [2043453] - rtlwifi: rtl8192cu: Fix WARNING when calling local_irq_restore() with interrupts enabled (Íñigo Huguet) [2043453] - rtw88: 8822c: update rx settings to prevent potential hw deadlock (Íñigo Huguet) [2043453] - rtw88: Disable PCIe ASPM while doing NAPI poll on 8821CE (Íñigo Huguet) [2043453] - ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream (Íñigo Huguet) [2043453] - ath9k_htc: fix NULL pointer dereference at ath9k_htc_tx_get_packet() (Íñigo Huguet) [2043453] - ath9k_htc: fix NULL pointer dereference at ath9k_htc_rxep() (Íñigo Huguet) [2043453] - mac80211: fix FEC flag in radio tap header (Íñigo Huguet) [2043453] - mt76: mt7921: fix possible resume failure (Íñigo Huguet) [2043453] - mt76: mt7921: move mt76_connac_mcu_set_hif_suspend to bus-related files (Íñigo Huguet) [2043453] - mt76: mt7921: fix network buffer leak by txs missing (Íñigo Huguet) [2043453] - mt76: mt7615: clear mcu error interrupt status on mt7663 (Íñigo Huguet) [2043453] - mt76: connac: fix last_chan configuration in mt76_connac_mcu_rate_txpower_band (Íñigo Huguet) [2043453] - mt76: mt7921: use correct iftype data on 6GHz cap init (Íñigo Huguet) [2043453] - mt76: mt7921: fix boolreturn.cocci warning (Íñigo Huguet) [2043453] - mt76: mt7615: fix unused tx antenna mask in testmode (Íñigo Huguet) [2043453] - mt76: fix the wiphy's available antennas to the correct value (Íñigo Huguet) [2043453] - mt76: connac: fix a theoretical NULL pointer dereference in mt76_connac_get_phy_mode (Íñigo Huguet) [2043453] - mt76: mt7921: fix possible NULL pointer dereference in mt7921_mac_write_txwi (Íñigo Huguet) [2043453] - mt76: fix possible OOB issue in mt76_calculate_default_rate (Íñigo Huguet) [2043453] - mt76: debugfs: fix queue reporting for mt76-usb (Íñigo Huguet) [2043453] - mt76: mt7915: fix SMPS operation fail (Íñigo Huguet) [2043453] - mt76: mt7915: fix return condition in mt7915_tm_reg_backup_restore() (Íñigo Huguet) [2043453] - mt76: mt7921: fix MT7921E reset failure (Íñigo Huguet) [2043453] - mt76: mt7615: fix possible deadlock while mt7615_register_ext_phy() (Íñigo Huguet) [2043453] - mt76: mt7921: drop offload_flags overwritten (Íñigo Huguet) [2043453] - mt76: mt7915: get rid of mt7915_mcu_set_fixed_rate routine (Íñigo Huguet) [2043453] - bus: mhi: core: Use correctly sized arguments for bit field (Íñigo Huguet) [2043453] - bus: mhi: core: Fix race while handling SYS_ERR at power up (Íñigo Huguet) [2043453] - bus: mhi: core: Fix reading wake_capable channel configuration (Íñigo Huguet) [2043453] - bus: mhi: core: Minor style and comment fixes (Íñigo Huguet) [2043453] - bus: mhi: pci_generic: Graceful shutdown on freeze (Íñigo Huguet) [2043453] - ath11k: Fix a NULL pointer dereference in ath11k_mac_op_hw_scan() (Íñigo Huguet) [2043453] - mt76: remove variable set but not used (Íñigo Huguet) [2043453] - ath11k: Fix deleting uninitialized kernel timer during fragment cache flush (Íñigo Huguet) [2043453] - ath11k: add spectral/CFR buffer validation support (Íñigo Huguet) [2043453] - ath11k: Fix buffer overflow when scanning with extraie (Íñigo Huguet) [2043453] - mwifiex: Fix possible ABBA deadlock (Íñigo Huguet) [2043453] - ath10k: fix scan abort when duration is set for hw scan (Íñigo Huguet) [2043453] - ath10k: Fix tx hanging (Íñigo Huguet) [2043453] - iwlwifi: acpi: fix wgds rev 3 size (Íñigo Huguet) [2043453] - iwlwifi: mvm: avoid clearing a just saved session protection id (Íñigo Huguet) [2043453] - iwlwifi: mvm: Fix wrong documentation for scan request command (Íñigo Huguet) [2043453] - iwlwifi: mvm: synchronize with FW after multicast commands (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix delBA vs. NSSN queue sync race (Íñigo Huguet) [2043453] - ath11k: Fix QMI file type enum value (Íñigo Huguet) [2043453] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2043453] - ath10k: Fix the MTU size on QCA9377 SDIO (Íñigo Huguet) [2043453] - wireless: iwlwifi: Fix a double free in iwl_txq_dyn_alloc_dma (Íñigo Huguet) [2043453] - mwifiex: Ignore BTCOEX events from the 88W8897 firmware (Íñigo Huguet) [2043453] - mwifiex: Fix skb_over_panic in mwifiex_usb_recv() (Íñigo Huguet) [2043453] - ath11k: Use host CE parameters for CE interrupts configuration (Íñigo Huguet) [2043453] - ath11k: Fix mon status ring rx tlv processing (Íñigo Huguet) [2043453] - ath11k: skip sending vdev down for channel switch (Íñigo Huguet) [2043453] - ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev (Íñigo Huguet) [2043453] - ath11k: Set IRQ affinity to CPU0 in case of one MSI vector (Íñigo Huguet) [2043453] - ath11k: do not restore ASPM in case of single MSI vector (Íñigo Huguet) [2043453] - ath11k: add support one MSI vector (Íñigo Huguet) [2043453] - ath11k: refactor multiple MSI vector implementation (Íñigo Huguet) [2043453] - ath11k: use ATH11K_PCI_IRQ_DP_OFFSET for DP IRQ (Íñigo Huguet) [2043453] - ath11k: add CE and ext IRQ flag to indicate irq_handler (Íñigo Huguet) [2043453] - ath11k: get msi_data again after request_irq is called (Íñigo Huguet) [2043453] - ath9k: fix intr_txqs setting (Íñigo Huguet) [2043453] - ath11k: add hw_param for wakeup_mhi (Íñigo Huguet) [2043453] - ath11k: reset RSN/WPA present state for open BSS (Íñigo Huguet) [2043453] - ath11k: clear the keys properly via DISABLE_KEY (Íñigo Huguet) [2043453] - ath11k: Fix crash caused by uninitialized TX ring (Íñigo Huguet) [2043453] - ath11k: use cache line aligned buffers for dbring (Íñigo Huguet) [2043453] - ath11k: Fix ETSI regd with weather radar overlap (Íñigo Huguet) [2043453] - ath11k: fix FCS_ERR flag in radio tap header (Íñigo Huguet) [2043453] - ath11k: fix the value of msecs_to_jiffies in ath11k_debugfs_fw_stats_request (Íñigo Huguet) [2043453] - ath11k: fix firmware crash during channel switch (Íñigo Huguet) [2043453] - ath11k: Fix 'unused-but-set-parameter' error (Íñigo Huguet) [2043453] - ath11k: fix DMA memory free in CE pipe cleanup (Íñigo Huguet) [2043453] - ath11k: fix error routine when fallback of add interface fails (Íñigo Huguet) [2043453] - ath11k: fix fw crash due to peer get authorized before key install (Íñigo Huguet) [2043453] - ath11k: Clear auth flag only for actual association in security mode (Íñigo Huguet) [2043453] - ath11k: Send PPDU_STATS_CFG with proper pdev mask to firmware (Íñigo Huguet) [2043453] - ath11k: set correct NL80211_FEATURE_DYNAMIC_SMPS for WCN6855 (Íñigo Huguet) [2043453] - mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh (Íñigo Huguet) [2043453] - mac80211: initialize variable have_higher_than_11mbit (Íñigo Huguet) [2043453] - mac80211: fix locking in ieee80211_start_ap error path (Íñigo Huguet) [2043453] - mac80211: do drv_reconfig_complete() before restarting all (Íñigo Huguet) [2043453] - mac80211: mark TX-during-stop for TX in in_reconfig (Íñigo Huguet) [2043453] - mac80211: update channel context before station state (Íñigo Huguet) [2043453] - mac80211: Fix the size used for building probe request (Íñigo Huguet) [2043453] - mac80211: fix lookup when adding AddBA extension element (Íñigo Huguet) [2043453] - mac80211: validate extended element ID is present (Íñigo Huguet) [2043453] - cfg80211: Acquire wiphy mutex on regulatory work (Íñigo Huguet) [2043453] - mac80211: agg-tx: don't schedule_and_wake_txq() under sta->lock (Íñigo Huguet) [2043453] - nl80211: remove reload flag from regulatory_request (Íñigo Huguet) [2043453] - mac80211: send ADDBA requests using the tid/queue of the aggregation session (Íñigo Huguet) [2043453] - bus: mhi: core: Add support for forced PM resume (Íñigo Huguet) [2043453] - mt76: mt7921: fix build regression (Íñigo Huguet) [2043453] - brcmsmac: rework LED dependencies (Íñigo Huguet) [2043453] - iwlwifi: fix LED dependencies (Íñigo Huguet) [2043453] - iwlwifi: mvm: don't crash on invalid rate w/o STA (Íñigo Huguet) [2043453] - bus: mhi: pci_generic: Fix device recovery failed issue (Íñigo Huguet) [2043453] - mt76: fix key pointer overwrite in mt7921s_write_txwi/mt7663_usb_sdio_write_txwi (Íñigo Huguet) [2043453] - rt2x00: do not mark device gone on EPROTO errors during start (Íñigo Huguet) [2043453] - nl80211: reset regdom when reloading regdb (Íñigo Huguet) [2043453] - mac80211: add docs for ssn in struct tid_ampdu_tx (Íñigo Huguet) [2043453] - mac80211: fix a memory leak where sta_info is not freed (Íñigo Huguet) [2043453] - mac80211: set up the fwd_skb->dev for mesh forwarding (Íñigo Huguet) [2043453] - mac80211: fix regression in SSN handling of addba tx (Íñigo Huguet) [2043453] - mac80211: fix rate control for retransmitted frames (Íñigo Huguet) [2043453] - mac80211: track only QoS data frames for admission control (Íñigo Huguet) [2043453] - mac80211: fix TCP performance on mesh interface (Íñigo Huguet) [2043453] - mt76: fix possible pktid leak (Íñigo Huguet) [2043453] - mt76: fix timestamp check in tx_status (Íñigo Huguet) [2043453] - mt76: mt7915: fix NULL pointer dereference in mt7915_get_phy_mode (Íñigo Huguet) [2043453] - iwlwifi: Fix memory leaks in error handling path (Íñigo Huguet) [2043453] - iwlwifi: fix warnings produced by kernel debug options (Íñigo Huguet) [2043453] - iwlwifi: mvm: retry init flow if failed (Íñigo Huguet) [2043453] - iwlwifi: Fix missing error code in iwl_pci_probe() (Íñigo Huguet) [2043453] - iwlwifi: pcie: fix constant-conversion warning (Íñigo Huguet) [2043453] - mac80211: fix throughput LED trigger (Íñigo Huguet) [2043453] - mac80211: fix monitor_sdata RCU/locking assertions (Íñigo Huguet) [2043453] - mac80211: drop check for DONT_REORDER in __ieee80211_select_queue (Íñigo Huguet) [2043453] - mac80211: fix radiotap header generation (Íñigo Huguet) [2043453] - mac80211: do not access the IV when it was stripped (Íñigo Huguet) [2043453] - nl80211: fix radio statistics in survey dump (Íñigo Huguet) [2043453] - cfg80211: call cfg80211_stop_ap when switch from P2P_GO type (Íñigo Huguet) [2043453] - mwifiex: fix division by zero in fw download path (Íñigo Huguet) [2043453] - iwlwifi: bump FW API to 67 for AX devices (Íñigo Huguet) [2043453] - iwlwifi: mvm: extend session protection on association (Íñigo Huguet) [2043453] - iwlwifi: rename CHANNEL_SWITCH_NOA_NOTIF to CHANNEL_SWITCH_START_NOTIF (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove session protection on disassoc (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix WGDS table print in iwl_mvm_chub_update_mcc() (Íñigo Huguet) [2043453] - iwlwifi: rename GEO_TX_POWER_LIMIT to PER_CHAIN_LIMIT_OFFSET_CMD (Íñigo Huguet) [2043453] - iwlwifi: mvm: d3: use internal data representation (Íñigo Huguet) [2043453] - iwlwifi: mvm: update RFI TLV (Íñigo Huguet) [2043453] - iwlwifi: mvm: don't get address of mvm->fwrt just to dereference as a pointer (Íñigo Huguet) [2043453] - iwlwifi: yoyo: support for ROM usniffer (Íñigo Huguet) [2043453] - iwlwifi: fw: uefi: add missing include guards (Íñigo Huguet) [2043453] - iwlwifi: dump host monitor data when NIC doesn't init (Íñigo Huguet) [2043453] - iwlwifi: pcie: simplify iwl_pci_find_dev_info() (Íñigo Huguet) [2043453] - iwlwifi: ACPI: support revision 3 WGDS tables (Íñigo Huguet) [2043453] - iwlwifi: pcie: update sw error interrupt for BZ family (Íñigo Huguet) [2043453] - iwlwifi: add new pci SoF with JF (Íñigo Huguet) [2043453] - iwlwifi: mvm: Use all Rx chains for roaming scan (Íñigo Huguet) [2043453] - iwlwifi: pcie: remove two duplicate PNJ device entries (Íñigo Huguet) [2043453] - iwlwifi: pcie: refactor dev_info lookup (Íñigo Huguet) [2043453] - iwlwifi: pcie: remove duplicate entry (Íñigo Huguet) [2043453] - iwlwifi: pcie: fix killer name matching for AX200 (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix some kerneldoc issues (Íñigo Huguet) [2043453] - ath10k: fix division by zero in send path (Íñigo Huguet) [2043453] - ath10k: fix control-message timeout (Íñigo Huguet) [2043453] - ath10k: fix module load regression with iram-recovery feature (Íñigo Huguet) [2043453] - ath10k: fix invalid dma_addr_t token assignment (Íñigo Huguet) [2043453] - ath11k: change return buffer manager for QCA6390 (Íñigo Huguet) [2043453] - mt76: connac: fix unresolved symbols when CONFIG_PM is unset (Íñigo Huguet) [2043453] - mt76: Make use of the helper macro kthread_run() (Íñigo Huguet) [2043453] - mt76: Print error message when reading EEPROM from mtd failed (Íñigo Huguet) [2043453] - mt76: mt7921: disable 4addr capability (Íñigo Huguet) [2043453] - mt76: mt7915: add debugfs knobs for MCU utilization (Íñigo Huguet) [2043453] - mt76: mt7915: add WA firmware log support (Íñigo Huguet) [2043453] - mt76: mt7915: fix endiannes warning mt7915_mcu_beacon_check_caps (Íñigo Huguet) [2043453] - mt76: mt7915: rework debugfs fixed-rate knob (Íñigo Huguet) [2043453] - mt76: mt7915: rework .set_bitrate_mask() to support more options (Íñigo Huguet) [2043453] - mt76: mt7915: remove mt7915_mcu_add_he() (Íñigo Huguet) [2043453] - mt76: mt7615: apply cached RF data for DBDC (Íñigo Huguet) [2043453] - mt76: mt7615: mt7622: fix ibss and meshpoint (Íñigo Huguet) [2043453] - mt76: mt7921: fix Wformat build warning (Íñigo Huguet) [2043453] - mt76: mt7921: fix mt7921s Kconfig (Íñigo Huguet) [2043453] - iwlwifi: pnvm: print out the version properly (Íñigo Huguet) [2043453] - iwlwifi: dbg: treat non active regions as unsupported regions (Íñigo Huguet) [2043453] - iwlwifi: mvm: Read acpi dsm to get channel activation bitmap (Íñigo Huguet) [2043453] - iwlwifi: add new device id 7F70 (Íñigo Huguet) [2043453] - iwlwifi: mvm: improve log when processing CSA (Íñigo Huguet) [2043453] - iwlwifi: mvm: set BT-coex high priority for 802.1X/4-way-HS (Íñigo Huguet) [2043453] - iwlwifi: dbg: treat dbgc allocation failure when tlv is missing (Íñigo Huguet) [2043453] - iwlwifi: add new killer devices to the driver (Íñigo Huguet) [2043453] - iwlwifi: mvm: set inactivity timeouts also for PS-poll (Íñigo Huguet) [2043453] - iwlwifi: pcie: try to grab NIC access early (Íñigo Huguet) [2043453] - iwlwifi: mvm: reduce WARN_ON() in TX status path (Íñigo Huguet) [2043453] - iwlwifi: allow rate-limited error messages (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove session protection after auth/assoc (Íñigo Huguet) [2043453] - iwlwifi: remove redundant iwl_finish_nic_init() argument (Íñigo Huguet) [2043453] - iwlwifi: mvm: Add RTS and CTS flags to iwl_tx_cmd_flags. (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove csi from iwl_mvm_pass_packet_to_mac80211() (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new rate_n_flags for REPLY_RX_MPDU_CMD and RX_NO_DATA_NOTIF (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new TX_RSP and COMPRESSED_BA_RES versions (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new version of BEACON_TEMPLATE_CMD. (Íñigo Huguet) [2043453] - iwlwifi: mvm: Add support for new rate_n_flags in tx_cmd. (Íñigo Huguet) [2043453] - iwlwifi: BZ Family SW reset support (Íñigo Huguet) [2043453] - iwlwifi: BZ Family BUS_MASTER_DISABLE_REQ code duplication (Íñigo Huguet) [2043453] - iwlwifi: yoyo: fw debug config from context info and preset (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new version of ranging response notification (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support version 3 of tlc_update_notif. (Íñigo Huguet) [2043453] - iwlwifi: mvm: convert old rate & flags to the new format. (Íñigo Huguet) [2043453] - iwlwifi: mvm: add definitions for new rate & flags (Íñigo Huguet) [2043453] - iwlwifi: mvm: update definitions due to new rate & flags (Íñigo Huguet) [2043453] - iwlwifi: mvm: scrub key material in firmware dumps (Íñigo Huguet) [2043453] - iwlwifi: parse debug exclude data from firmware file (Íñigo Huguet) [2043453] - iwlwifi: fw dump: add infrastructure for dump scrubbing (Íñigo Huguet) [2043453] - iwlwifi: mvm: correct sta-state logic for TDLS (Íñigo Huguet) [2043453] - iwlwifi: api: fix struct iwl_wowlan_status_v7 kernel-doc (Íñigo Huguet) [2043453] - iwlwifi: fix fw/img.c license statement (Íñigo Huguet) [2043453] - iwlwifi: remove contact information (Íñigo Huguet) [2043453] - iwlwifi: remove MODULE_AUTHOR() statements (Íñigo Huguet) [2043453] - iwlwifi: api: remove unused RX status bits (Íñigo Huguet) [2043453] - iwlwifi: add some missing kernel-doc in struct iwl_fw (Íñigo Huguet) [2043453] - iwlwifi: mvm: Remove antenna c references (Íñigo Huguet) [2043453] - iwlwifi: mvm: add support for 160Mhz in ranging measurements (Íñigo Huguet) [2043453] - iwlwifi: add vendor specific capabilities for some RFs (Íñigo Huguet) [2043453] - iwlwifi: mvm: add lmac/umac PC info in case of error (Íñigo Huguet) [2043453] - iwlwifi: mvm: disable RX-diversity in powersave (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix ieee80211_get_he_iftype_cap() iftype (Íñigo Huguet) [2043453] - iwlwifi: Start scratch debug register for Bz family (Íñigo Huguet) [2043453] - iwlwifi: Add support for more BZ HWs (Íñigo Huguet) [2043453] - iwlwifi: Add support for getting rf id with blank otp (Íñigo Huguet) [2043453] - cfg80211: fix kernel-doc for MBSSID EMA (Íñigo Huguet) [2043453] - mac80211: Prevent AP probing during suspend (Íñigo Huguet) [2043453] - nl80211: Add LC placeholder band definition to nl80211_band (Íñigo Huguet) [2043453] - mac80211: split beacon retrieval functions (Íñigo Huguet) [2043453] - cfg80211: separate get channel number from ies (Íñigo Huguet) [2043453] - mac80211: use ieee80211_bss_get_elem() in most places (Íñigo Huguet) [2043453] - cfg80211: scan: use element finding functions in easy cases (Íñigo Huguet) [2043453] - nl80211: use element finding functions (Íñigo Huguet) [2043453] - mac80211: fils: use cfg80211_find_ext_elem() (Íñigo Huguet) [2043453] - mac80211: fix memory leaks with element parsing (Íñigo Huguet) [2043453] - cfg80211: prepare for const netdev->dev_addr (Íñigo Huguet) [2043453] - mac80211: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - wireless: mac80211_hwsim: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - mac80211: debugfs: calculate free buffer size correctly (Íñigo Huguet) [2043453] - fq_codel: generalise ce_threshold marking for subset of traffic (Íñigo Huguet) [2043453] - wl3501_cs: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - ray_cs: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - brcmfmac: prepare for const netdev->dev_addr (Íñigo Huguet) [2043453] - wireless: use eth_hw_addr_set() instead of ether_addr_copy() (Íñigo Huguet) [2043453] - wireless: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - iwlwifi: cfg: set low-latency-xtal for some integrated So devices (Íñigo Huguet) [2043453] - iwlwifi: pnvm: read EFI data only if long enough (Íñigo Huguet) [2043453] - iwlwifi: pnvm: don't kmemdup() more than we have (Íñigo Huguet) [2043453] - iwlwifi: change all JnP to NO-160 configuration (Íñigo Huguet) [2043453] - iwlwifi: mvm: reset PM state on unsuccessful resume (Íñigo Huguet) [2043453] - mwifiex: Deactive host sleep using HSCFG after it was activated manually (Íñigo Huguet) [2043453] - mwifiex: Send DELBA requests according to spec (Íñigo Huguet) [2043453] - mwifiex: Fix an incorrect comment (Íñigo Huguet) [2043453] - mwifiex: Log an error on command failure during key-material upload (Íñigo Huguet) [2043453] - mwifiex: Don't log error on suspend if wake-on-wlan is disabled (Íñigo Huguet) [2043453] - mt76: mt7915: change max rx len limit of hw modules (Íñigo Huguet) [2043453] - mt76: mt7915: fix missing HE phy cap (Íñigo Huguet) [2043453] - mt76: mt7915: rework mt7915_mcu_sta_muru_tlv() (Íñigo Huguet) [2043453] - mt76: mt7915: enable HE UL MU-MIMO (Íñigo Huguet) [2043453] - mt76: mt7921: add per-vif counters in ethtool (Íñigo Huguet) [2043453] - mt76: mt7921: move tx amsdu stats in mib_stats (Íñigo Huguet) [2043453] - mt76: mt7921: add sta stats accounting in mt7921_mac_add_txs_skb (Íñigo Huguet) [2043453] - mt76: mt7921: introduce stats reporting through ethtool (Íñigo Huguet) [2043453] - mt76: mt7921: add some more MIB counters (Íñigo Huguet) [2043453] - mt76: do not reset MIB counters in get_stats callback (Íñigo Huguet) [2043453] - mt76: mt7915: move tx amsdu stats in mib_stats (Íñigo Huguet) [2043453] - mt76: mt7915: run mt7915_get_et_stats holding mt76 mutex (Íñigo Huguet) [2043453] - mt76: move mt76_ethtool_worker_info in mt76 module (Íñigo Huguet) [2043453] - mt76: move mt76_sta_stats in mt76.h (Íñigo Huguet) [2043453] - mt76: mt76x0: correct VHT MCS 8/9 tx power eeprom offset (Íñigo Huguet) [2043453] - mt76: mt7921s: add reset support (Íñigo Huguet) [2043453] - mt76: mt7921: introduce mt7921s support (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mt7921_mcu_send_message (Íñigo Huguet) [2043453] - mt76: mt7921: rely on mcu_get_nic_capability (Íñigo Huguet) [2043453] - mt76: connac: extend mcu_get_nic_capability (Íñigo Huguet) [2043453] - mt76: sdio: extend sdio module to support CONNAC2 (Íñigo Huguet) [2043453] - mt76: sdio: introduce parse_irq callback (Íñigo Huguet) [2043453] - mt76: sdio: move common code in mt76_sdio module (Íñigo Huguet) [2043453] - mt76: mt7921: use physical addr to unify register access (Íñigo Huguet) [2043453] - mt76: mt7921: make all event parser reusable between mt7921s and mt7921e (Íñigo Huguet) [2043453] - mt76: mt7663s: rely on mcu reg access utility (Íñigo Huguet) [2043453] - mt76: connac: move mcu reg access utility routines in mt76_connac_lib module (Íñigo Huguet) [2043453] - mt76: mt7921: add MT7921_COMMON module (Íñigo Huguet) [2043453] - mt76: mt7921: refactor init.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mcu.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: refactor dma.c to be pcie specific (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mac.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: add MU EDCA cmd support (Íñigo Huguet) [2043453] - mt76: mt7915: remove dead code in debugfs code (Íñigo Huguet) [2043453] - mt76: sdio: export mt76s_alloc_rx_queue and mt76s_alloc_tx routines (Íñigo Huguet) [2043453] - mt76: mt7915: improve code readability for xmit-queue handler (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt76 debugfs sub-dir for ext-phy (Íñigo Huguet) [2043453] - mt76: rely on phy pointer in mt76_register_debugfs_fops routine signature (Íñigo Huguet) [2043453] - mt76: mt7915: set muru platform type (Íñigo Huguet) [2043453] - mt76: mt7915: set VTA bit in tx descriptor (Íñigo Huguet) [2043453] - mt76: mt7915: fix muar_idx in mt7915_mcu_alloc_sta_req() (Íñigo Huguet) [2043453] - mt76: mt7915: rework starec TLV tags (Íñigo Huguet) [2043453] - mt76: mt7915: fix sta_rec_wtbl tag len (Íñigo Huguet) [2043453] - mt76: mt7915: improve starec readability of txbf (Íñigo Huguet) [2043453] - mt76: mt7915: fix txbf starec TLV issues (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mcu_beacon_check_caps() (Íñigo Huguet) [2043453] - mt76: connac: fix possible NULL pointer dereference in mt76_connac_get_phy_mode_v2 (Íñigo Huguet) [2043453] - mt76: do not access 802.11 header in ccmp check for 802.3 rx skbs (Íñigo Huguet) [2043453] - mt76: use a separate CCMP PN receive counter for management frames (Íñigo Huguet) [2043453] - mt76: mt7921: add delay config for sched scan (Íñigo Huguet) [2043453] - mt76: mt7615: fix monitor mode tear down crash (Íñigo Huguet) [2043453] - mt76: debugfs: improve queue node readability (Íñigo Huguet) [2043453] - mt76: mt7915: add twt_stats knob in debugfs (Íñigo Huguet) [2043453] - mt76: mt7915: enable twt responder capability (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mac_add_twt_setup routine (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mcu_twt_agrt_update mcu command (Íñigo Huguet) [2043453] - mt76: mt7915: introduce __mt7915_get_tsf routine (Íñigo Huguet) [2043453] - mt76: drop MCU header size from buffer size in __mt76_mcu_send_firmware (Íñigo Huguet) [2043453] - mt76: introduce __mt76_mcu_send_firmware routine (Íñigo Huguet) [2043453] - mt76: support reading EEPROM data embedded in fdt (Íñigo Huguet) [2043453] - mt76: schedule status timeout at dma completion (Íñigo Huguet) [2043453] - mt76: substitute sk_buff_head status_list with spinlock_t status_lock (Íñigo Huguet) [2043453] - mt76: remove mt76_wcid pointer from mt76_tx_status_check signature (Íñigo Huguet) [2043453] - mt76: introduce packet_id idr (Íñigo Huguet) [2043453] - mt76: mt7921: add 6GHz support (Íñigo Huguet) [2043453] - mt76: add 6GHz support (Íñigo Huguet) [2043453] - mt76: connac: enable hw amsdu @ 6GHz (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_uni_add_bss (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_sta_tlv (Íñigo Huguet) [2043453] - mt76: connac: set 6G phymode in single-sku support (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_set_channel_domain (Íñigo Huguet) [2043453] - mt76: connac: enable 6GHz band for hw scan (Íñigo Huguet) [2043453] - mt76: connac: set 6G phymode in mt76_connac_get_phy_mode{,v2} (Íñigo Huguet) [2043453] - mt76: mt7915: add mib counters to ethtool stats (Íñigo Huguet) [2043453] - mt76: mt7915: add more MIB registers (Íñigo Huguet) [2043453] - mt76: mt7915: add tx mu/su counters to mib (Íñigo Huguet) [2043453] - mt76: mt7915: add some per-station tx stats to ethtool (Íñigo Huguet) [2043453] - mt76: mt7915: add tx stats gathered from tx-status callbacks (Íñigo Huguet) [2043453] - mt76: mt7915: add ethtool stats support (Íñigo Huguet) [2043453] - mt76: mt7921: fix retrying release semaphore without end (Íñigo Huguet) [2043453] - mt76: mt7921: robustify hardware initialization flow (Íñigo Huguet) [2043453] - mt76: mt7915: fix possible infinite loop release semaphore (Íñigo Huguet) [2043453] - mt76: mt7915: honor all possible error conditions in mt7915_mcu_init() (Íñigo Huguet) [2043453] - mt76: move spin_lock_bh to spin_lock in tasklet (Íñigo Huguet) [2043453] - mt76: mt7921: remove mt7921_sta_stats (Íñigo Huguet) [2043453] - mt76: mt7921: remove mcu rate reporting code (Íñigo Huguet) [2043453] - mt76: mt7921: report tx rate directly from tx status (Íñigo Huguet) [2043453] - mt76: mt7921: add support for tx status reporting (Íñigo Huguet) [2043453] - mt76: mt7921: start reworking tx rate reporting (Íñigo Huguet) [2043453] - mt76: mt7615: fix hwmon temp sensor mem use-after-free (Íñigo Huguet) [2043453] - mt76: mt7915: fix hwmon temp sensor mem use-after-free (Íñigo Huguet) [2043453] - mt76: mt7915: enable configured beacon tx rate (Íñigo Huguet) [2043453] - mt76: disable BH around napi_schedule() calls (Íñigo Huguet) [2043453] - mt76: fill boottime_ns in Rx path (Íñigo Huguet) [2043453] - mt76: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2043453] - mt76: fix boolreturn.cocci warnings (Íñigo Huguet) [2043453] - mt76: mt7921: update mib counters dumping phy stats (Íñigo Huguet) [2043453] - mt76: mt7921: always wake device if necessary in debugfs (Íñigo Huguet) [2043453] - mt76: mt7915: rename debugfs tx-queues (Íñigo Huguet) [2043453] - mt76: mt7915: rework debugfs queue info (Íñigo Huguet) [2043453] - mt76: mt7921: move mt7921_queue_rx_skb to mac.c (Íñigo Huguet) [2043453] - mt76: mt7915: fix WMM index on DBDC cards (Íñigo Huguet) [2043453] - mt76: mt7915: improve code readability in mt7915_mcu_sta_bfer_ht (Íñigo Huguet) [2043453] - mt76: mt7915: introduce bss coloring support (Íñigo Huguet) [2043453] - mt76: mt7915: add LED support (Íñigo Huguet) [2043453] - mt76: mt7915: fix potential NPE in TXS processing (Íñigo Huguet) [2043453] - mt76: mt7915: fix he_mcs capabilities for 160mhz (Íñigo Huguet) [2043453] - mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD (Íñigo Huguet) [2043453] - mt76: mt7915: update mac timing settings (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness warnings in mt7921_mac_decode_he_mu_radiotap (Íñigo Huguet) [2043453] - mt76: mt7921: fix kernel warning from cfg80211_calculate_bitrate (Íñigo Huguet) [2043453] - mt76: mt7921: fix firmware usage of RA info using legacy rates (Íñigo Huguet) [2043453] - mt76: mt7915: add HE-LTF into fixed rate command (Íñigo Huguet) [2043453] - mt76: mt7921: report HE MU radiotap (Íñigo Huguet) [2043453] - mt76: mt7615: move mt7615_mcu_set_p2p_oppps in mt76_connac module (Íñigo Huguet) [2043453] - mt76: overwrite default reg_ops if necessary (Íñigo Huguet) [2043453] - mt76: mt7921: introduce mt7921_mcu_set_beacon_filter utility routine (Íñigo Huguet) [2043453] - mt76: mt7921: get rid of mt7921_mac_set_beacon_filter (Íñigo Huguet) [2043453] - mt76: mt7921: get rid of monitor_vif (Íñigo Huguet) [2043453] - mt76: connac: add support for limiting to maximum regulatory Tx power (Íñigo Huguet) [2043453] - mt76: connac: fix GTK rekey offload failure on WPA mixed mode (Íñigo Huguet) [2043453] - mt76: mt7921: fix dma hang in rmmod (Íñigo Huguet) [2043453] - mt76: add support for setting mcast rate (Íñigo Huguet) [2043453] - mt76: mt7915: fix bit fields for HT rate idx (Íñigo Huguet) [2043453] - mt76: mt7915: switch proper tx arbiter mode in testmode (Íñigo Huguet) [2043453] - mt76: mt7915: fix potential overflow of eeprom page index (Íñigo Huguet) [2043453] - mt76: mt7921: send EAPOL frames at lowest rate (Íñigo Huguet) [2043453] - mt76: mt7915: send EAPOL frames at lowest rate (Íñigo Huguet) [2043453] - mt76: mt7915: add control knobs for thermal throttling (Íñigo Huguet) [2043453] - mt76: mt7921: Add mt7922 support (Íñigo Huguet) [2043453] - mt76: mt7615: fix skb use-after-free on mac reset (Íñigo Huguet) [2043453] - mt76: mt7921: Fix out of order process by invalid event pkt (Íñigo Huguet) [2043453] - mt76: mt7915: fix mgmt frame using unexpected bitrate (Íñigo Huguet) [2043453] - mt76: mt7921: fix mgmt frame using unexpected bitrate (Íñigo Huguet) [2043453] - mt76: add mt76_default_basic_rate more devices can rely on (Íñigo Huguet) [2043453] - mt76: mt7921: introduce testmode support (Íñigo Huguet) [2043453] - mt76: mt7915: remove mt7915_sta_stats (Íñigo Huguet) [2043453] - mt76: mt7915: report tx rate directly from tx status (Íñigo Huguet) [2043453] - mt76: mt7915: cleanup -Wunused-but-set-variable (Íñigo Huguet) [2043453] - mt76: mt7915: take RCU read lock when calling ieee80211_bss_get_elem() (Íñigo Huguet) [2043453] - mt76: mt7915: fix an off-by-one bound check (Íñigo Huguet) [2043453] - mt76: mt7921: add .set_sar_specs support (Íñigo Huguet) [2043453] - mt76: mt7915: adapt new firmware to update BA winsize for Rx session (Íñigo Huguet) [2043453] - mt76: mt7915: report HE MU radiotap (Íñigo Huguet) [2043453] - mt76: mt76x02: fix endianness warnings in mt76x02_mac.c (Íñigo Huguet) [2043453] - mt76: mt7921: fix survey-dump reporting (Íñigo Huguet) [2043453] - mt76: fix build error implicit enumeration conversion (Íñigo Huguet) [2043453] - mt76: mt7921: enable aspm by default (Íñigo Huguet) [2043453] - mt76: connac: fix mt76_connac_gtk_rekey_tlv usage (Íñigo Huguet) [2043453] - mt76: mt7915: fix calling mt76_wcid_alloc with incorrect parameter (Íñigo Huguet) [2043453] - mt76: mt7915: fix info leak in mt7915_mcu_set_pre_cal() (Íñigo Huguet) [2043453] - mt76: mt7615: fix endianness warning in mt7615_mac_write_txwi (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness warning in mt7921_update_txs (Íñigo Huguet) [2043453] - mt76: mt7915: fix endianness warning in mt7915_mac_add_txs_skb (Íñigo Huguet) [2043453] - mt76: mt7921: avoid unnecessary spin_lock/spin_unlock in mt7921_mcu_tx_done_event (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness in mt7921_mcu_tx_done_event (Íñigo Huguet) [2043453] - mwifiex: Try waking the firmware until we get an interrupt (Íñigo Huguet) [2043453] - mwifiex: Read a PCI register after writing the TX ring write pointer (Íñigo Huguet) [2043453] - fq_codel: implement L4S style ce_threshold_ect1 marking (Íñigo Huguet) [2043453] - net: add skb_get_dsfield() helper (Íñigo Huguet) [2043453] - wireless: Remove redundant 'flush_workqueue()' calls (Íñigo Huguet) [2043453] - mt7601u: Remove redundant initialization of variable ret (Íñigo Huguet) [2043453] - rtlwifi: rtl8192ee: Remove redundant initialization of variable version (Íñigo Huguet) [2043453] - ath10k: fix max antenna gain unit (Íñigo Huguet) [2043453] - ath9k: fix an IS_ERR() vs NULL check (Íñigo Huguet) [2043453] - ath11k: Identify DFS channel when sending scan channel list command (Íñigo Huguet) [2043453] - ath9k: support DT ieee80211-freq-limit property to limit channels (Íñigo Huguet) [2043453] - ath11k: Change number of TCL rings to one for QCA6390 (Íñigo Huguet) [2043453] - ath11k: Handle MSI enablement during rmmod and SSR (Íñigo Huguet) [2043453] - ath: dfs_pattern_detector: Fix possible null-pointer dereference in channel_detector_create() (Íñigo Huguet) [2043453] - ath11k: Use kcalloc() instead of kzalloc() (Íñigo Huguet) [2043453] - ath11k: Remove redundant assignment to variable fw_size (Íñigo Huguet) [2043453] - ath11k: fix m68k and xtensa build failure in ath11k_peer_assoc_h_smps() (Íñigo Huguet) [2043453] - ath11k: Fix spelling mistake "incompaitiblity" -> "incompatibility" (Íñigo Huguet) [2043453] - ath11k: Remove unused variable in ath11k_dp_rx_mon_merg_msdus() (Íñigo Huguet) [2043453] - ath9k: Fix potential interrupt storm on queue reset (Íñigo Huguet) [2043453] - ath9k: add option to reset the wifi chip via debugfs (Íñigo Huguet) [2043453] - ath10k: Don't always treat modem stop events as crashes (Íñigo Huguet) [2043453] - rtl8xxxu: Use lower tx rates for the ack packet (Íñigo Huguet) [2043453] - brcmfmac: Add DMI nvram filename quirk for Cyberbook T116 tablet (Íñigo Huguet) [2043453] - rtw88: refine fw_crash debugfs to show non-zero while triggering (Íñigo Huguet) [2043453] - rtw88: fix RX clock gate setting while fifo dump (Íñigo Huguet) [2043453] - net: qrtr: combine nameservice into main module (Íñigo Huguet) [2043453] - ath10k: sdio: Add missing BH locking around napi_schdule() (Íñigo Huguet) [2043453] - ath10k: Fix missing frame timestamp for beacon/probe-resp (Íñigo Huguet) [2043453] - ath10k: high latency fixes for beacon buffer (Íñigo Huguet) [2043453] - ath11k: Change DMA_FROM_DEVICE to DMA_TO_DEVICE when map reinjected packets (Íñigo Huguet) [2043453] - ath11k: support SMPS configuration for 6 GHz (Íñigo Huguet) [2043453] - ath11k: add 6 GHz params in peer assoc command (Íñigo Huguet) [2043453] - ieee80211: Add new A-MPDU factor macro for HE 6 GHz peer caps (Íñigo Huguet) [2043453] - ath11k: indicate to mac80211 scan complete with aborted flag for ATH11K_SCAN_STARTING state (Íñigo Huguet) [2043453] - ath11k: indicate scan complete for scan canceled when scan running (Íñigo Huguet) [2043453] - ath11k: add handler for scan event WMI_SCAN_EVENT_DEQUEUED (Íñigo Huguet) [2043453] - ath11k: add HTT stats support for new stats (Íñigo Huguet) [2043453] - ath11k: Change masking and shifting in htt stats (Íñigo Huguet) [2043453] - ath11k: Remove htt stats fixed size array usage (Íñigo Huguet) [2043453] - ath11k: Replace HTT_DBG_OUT with scnprintf (Íñigo Huguet) [2043453] - ath11k: Rename macro ARRAY_TO_STRING to PRINT_ARRAY_TO_BUF (Íñigo Huguet) [2043453] - ath11k: Fix memory leak in ath11k_qmi_driver_event_work (Íñigo Huguet) [2043453] - ath11k: Fix inaccessible debug registers (Íñigo Huguet) [2043453] - ath11k: Drop MSDU with length error in DP rx path (Íñigo Huguet) [2043453] - ath11k: copy cap info of 6G band under WMI_HOST_WLAN_5G_CAP for WCN6855 (Íñigo Huguet) [2043453] - ath11k: enable 6G channels for WCN6855 (Íñigo Huguet) [2043453] - ath11k: re-enable ht_cap/vht_cap for 5G band for WCN6855 (Íñigo Huguet) [2043453] - ath11k: fix survey dump collection in 6 GHz (Íñigo Huguet) [2043453] - ath11k: fix packet drops due to incorrect 6 GHz freq value in rx status (Íñigo Huguet) [2043453] - ath11k: add channel 2 into 6 GHz channel list (Íñigo Huguet) [2043453] - mac80211: MBSSID support in interface handling (Íñigo Huguet) [2043453] - ath11k: Add wmi peer create conf event in wmi_tlv_event_id (Íñigo Huguet) [2043453] - ath11k: Avoid "No VIF found" warning message (Íñigo Huguet) [2043453] - ath11k: Fix crash during firmware recovery on reo cmd ring access (Íñigo Huguet) [2043453] - ath11k: Assign free_vdev_map value before ieee80211_register_hw (Íñigo Huguet) [2043453] - ath11k: Add vdev start flag to disable hardware encryption (Íñigo Huguet) [2043453] - ath11k: Avoid race during regd updates (Íñigo Huguet) [2043453] - ath11k: Avoid reg rules update during firmware recovery (Íñigo Huguet) [2043453] - ath11k: Update pdev tx and rx firmware stats (Íñigo Huguet) [2043453] - ath11k: Fix pktlog lite rx events (Íñigo Huguet) [2043453] - ath11k: Add support for RX decapsulation offload (Íñigo Huguet) [2043453] - ath11k: fix some sleeping in atomic bugs (Íñigo Huguet) [2043453] - ath11k: qmi: avoid error messages when dma allocation fails (Íñigo Huguet) [2043453] - ath11k: Replace one-element array with flexible-array member (Íñigo Huguet) [2043453] - ath11k: add caldata download support from EEPROM (Íñigo Huguet) [2043453] - ath11k: add caldata file for multiple radios (Íñigo Huguet) [2043453] - ath11k: clean up BDF download functions (Íñigo Huguet) [2043453] - ath11k: use hw_params to access board_size and cal_offset (Íñigo Huguet) [2043453] - ath11k: Wstringop-overread warning (Íñigo Huguet) [2043453] - ath11k: Add spectral scan support for QCN9074 (Íñigo Huguet) [2043453] - ath11k: Fix the spectral minimum FFT bin count (Íñigo Huguet) [2043453] - ath11k: Introduce spectral hw configurable param (Íñigo Huguet) [2043453] - ath11k: Refactor spectral FFT bin size (Íñigo Huguet) [2043453] - ath11k: add support for 80P80 and 160 MHz bandwidth (Íñigo Huguet) [2043453] - ath11k: add support for setting fixed HE rate/gi/ltf (Íñigo Huguet) [2043453] - nl80211: MBSSID and EMA support in AP mode (Íñigo Huguet) [2043453] - nl80211: don't kfree() ERR_PTR() value (Íñigo Huguet) [2043453] - cfg80211: always free wiphy specific regdomain (Íñigo Huguet) [2043453] - mac80211: save transmit power envelope element and power constraint (Íñigo Huguet) [2043453] - mac80211: add parse regulatory info in 6 GHz operation information (Íñigo Huguet) [2043453] - ieee80211: add power type definition for 6 GHz (Íñigo Huguet) [2043453] - mac80211: twt: don't use potentially unaligned pointer (Íñigo Huguet) [2043453] - cfg80211: AP mode driver offload for FILS association crypto (Íñigo Huguet) [2043453] - ath11k: monitor mode clean up to use separate APIs (Íñigo Huguet) [2043453] - ath11k: add separate APIs for monitor mode (Íñigo Huguet) [2043453] - ath11k: move static function ath11k_mac_vdev_setup_sync to top (Íñigo Huguet) [2043453] - rtw88: 8821c: correct 2.4G tx power for type 2/4 NIC (Íñigo Huguet) [2043453] - rtw88: 8821c: support RFE type4 wifi NIC (Íñigo Huguet) [2043453] - brcmfmac: Replace zero-length array with flexible array member (Íñigo Huguet) [2043453] - mac80211_hwsim: enable 6GHz channels (Íñigo Huguet) [2043453] - mac80211: use ieee802_11_parse_elems() in ieee80211_prep_channel() (Íñigo Huguet) [2043453] - nl80211: don't put struct cfg80211_ap_settings on stack (Íñigo Huguet) [2043453] - mac80211: always allocate struct ieee802_11_elems (Íñigo Huguet) [2043453] - mac80211: mlme: find auth challenge directly (Íñigo Huguet) [2043453] - mac80211: move CRC into struct ieee802_11_elems (Íñigo Huguet) [2043453] - mac80211: mesh: clean up rx_bcn_presp API (Íñigo Huguet) [2043453] - mac80211: reduce stack usage in debugfs (Íñigo Huguet) [2043453] - nl80211: prefer struct_size over open coded arithmetic (Íñigo Huguet) [2043453] - mac80211: check hostapd configuration parsing twt requests (Íñigo Huguet) [2043453] - cfg80211: honour V=1 in certificate code generation (Íñigo Huguet) [2043453] - rt2x00: remove duplicate USB device ID (Íñigo Huguet) [2043453] - mwifiex: Fix copy-paste mistake when creating virtual interface (Íñigo Huguet) [2043453] - mwifiex: Properly initialize private structure on interface type changes (Íñigo Huguet) [2043453] - mwifiex: Handle interface type changes from AP to STATION (Íñigo Huguet) [2043453] - mwifiex: Allow switching interface type from P2P_CLIENT to P2P_GO (Íñigo Huguet) [2043453] - mwifiex: Update virtual interface counters right after setting bss_type (Íñigo Huguet) [2043453] - mwifiex: Use helper function for counting interface types (Íñigo Huguet) [2043453] - mwifiex: Run SET_BSS_MODE when changing from P2P to STATION vif-type (Íñigo Huguet) [2043453] - mwifiex: Use function to check whether interface type change is allowed (Íñigo Huguet) [2043453] - mwifiex: Small cleanup for handling virtual interface type changes (Íñigo Huguet) [2043453] - rtw88: move adaptivity mechanism to firmware (Íñigo Huguet) [2043453] - rtw88: support adaptivity for ETSI/JP DFS region (Íñigo Huguet) [2043453] - rtw88: add regulatory strategy by chip type (Íñigo Huguet) [2043453] - rtw88: upgrade rtw_regulatory mechanism and mapping (Íñigo Huguet) [2043453] - brcmfmac: fix incorrect error prints (Íñigo Huguet) [2043453] - ath11k: Align bss_chan_info structure with firmware (Íñigo Huguet) [2043453] - ath11k: add support in survey dump with bss_chan_info (Íñigo Huguet) [2043453] - ath11k: Rename atf_config to flag1 in target_resource_config (Íñigo Huguet) [2043453] - ath11k: fix 4addr multicast packet tx (Íñigo Huguet) [2043453] - ath11k: fix 4-addr tx failure for AP and STA modes (Íñigo Huguet) [2043453] - ath9k: owl-loader: fetch pci init values through nvmem (Íñigo Huguet) [2043453] - ath9k: fetch calibration data via nvmem subsystem (Íñigo Huguet) [2043453] - ath9k: Use tasklet_disable_in_atomic() (Íñigo Huguet) [2043453] - mt76: fix wrong conflict resolution in previous backport (Íñigo Huguet) [2043453] - mac80211: Allow HE operation to be longer than expected. (Íñigo Huguet) [2043453] - revert ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2043453] - RDMA/mlx5: Delete right entry from MR signature database (Amir Tzin) [1982191] - net/mlx5e: Fix select queue to consider SKBTX_HW_TSTAMP (Amir Tzin) [1982191] - net/mlx5e: Don't update netdev RQs with PTP-RQ (Amir Tzin) [1982191] - net/mlx5e: Fix an error code in mlx5e_arfs_create_tables() (Amir Tzin) [1982191] - net/mlx5e: Fix conflict with HW TS and CQE compression (Amir Tzin) [1982191] - net/mlx5e: Fix HW TS with CQE compression according to profile (Amir Tzin) [1982191] - mlx5e: add add missing BH locking around napi_schdule() (Amir Tzin) [1982191] - net/mlx5: Don't overwrite HCA capabilities when setting MSI-X count (Amir Tzin) [1982191] - net/mlx5: Fix err prints and return when creating termination table (Amir Tzin) [1982191] - RDMA/mlx5: Verify that DM operation is reasonable (Amir Tzin) [1982191] - RDMA/mlx5: Expose private query port (Amir Tzin) [1982191] - RDMA/mlx5: Fix type assignment for ICM DM (Amir Tzin) [1982191] - net/mlx5: DR, Add support for isolate_vl_tc QP (Amir Tzin) [1982191] - net/mlx5: DR, Add support for force-loopback QP (Amir Tzin) [1982191] - net/mlx5: DR, Add support for matching tunnel GTP-U (Amir Tzin) [1982191] - net/mlx5: DR, Set flex parser for TNL_MPLS dynamically (Amir Tzin) [1982191] - net/mlx5: DR, Add support for matching on geneve TLV option (Amir Tzin) [1982191] - net/mlx5: DR, Set STEv0 ICMP flex parser dynamically (Amir Tzin) [1982191] - net/mlx5: DR, Add support for dynamic flex parser (Amir Tzin) [1982191] - net/mlx5: DR, Remove protocol-specific flex_parser_3 definitions (Amir Tzin) [1982191] - net/mlx5: mlx5_ifc updates for flex parser (Amir Tzin) [1982191] - net/mlx5: E-Switch, Improve error messages in term table creation (Amir Tzin) [1982191] - net/mlx5: DR, Rename an argument in dr_rdma_segments (Amir Tzin) [1982191] - net/mlx5e: RX, Add checks for calculated Striding RQ attributes (Amir Tzin) [1982191] - net/mlx5e: Fix possible non-initialized struct usage (Amir Tzin) [1982191] - mlx5: implement ethtool standard stats (Amir Tzin) [1982191] - net/mlx5: Enhance diagnostics info for TX/RX reporters (Amir Tzin) [1982191] - net/mlx5: Add helper to initialize 1PPS (Amir Tzin) [1982191] - net/mlx5e: Add ethtool extended link state (Amir Tzin) [1982191 1982232] - net/mlx5: Add register layout to support extended link state (Amir Tzin) [1982191 1982232] - net/mlx5: Allocate FC bulk structs with kvzalloc() instead of kzalloc() (Amir Tzin) [1982191] - net/mlx5e: Cleanup safe switch channels API by passing params (Amir Tzin) [1982191] - net/mlx5e: Refactor on-the-fly configuration changes (Amir Tzin) [1982191] - net/mlx5e: Use mlx5e_safe_switch_channels when channels are closed (Amir Tzin) [1982191] - net/mlx5e: Allow mlx5e_safe_switch_channels to work with channels closed (Amir Tzin) [1982191] - mlx5: implement ethtool::get_fec_stats (Amir Tzin) [1982191] - net/mlx5e: Fix RQ creation flow for queues which doesn't support XDP (Amir Tzin) [1982191] - net/mlx5: Remove return statement exist at the end of void function (Amir Tzin) [1982191] - net/mlx5: Add a blank line after declarations (Amir Tzin) [1982191] - net/mlx5: DR, Alloc cmd buffer with kvzalloc() instead of kzalloc() (Amir Tzin) [1982191] - net/mlx5: DR, Use variably sized data structures for different actions (Amir Tzin) [1982191] - RDMA/mlx5: Expose UAPI to query DM (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Add support in MEMIC operations (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Add support to MODIFY_MEMIC command (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Re-organize the DM code (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Move all DM logic to separate file (Amir Tzin) [1982191 1926606 1926603] - net/mlx5: Add MEMIC operations related bits (Amir Tzin) [1982191 1926606 1926603] - net/mlx5: Add support for DSFP module EEPROM dumps (Amir Tzin) [1982191 1982233] - net/mlx5: Implement get_module_eeprom_by_page() (Amir Tzin) [1982191 1982233] - net/mlx5: Refactor module EEPROM query (Amir Tzin) [1982191 1982233] - IB/mlx5: Reduce max order of memory allocated for xlt update (Amir Tzin) [1982191] - net/mlx5: Implement sriov_get_vf_total_msix/count() callbacks (Amir Tzin) [1982191 1982230] - net/mlx5: Dynamically assign MSI-X vectors count (Amir Tzin) [1982191 1982230] - net/mlx5: Add dynamic MSI-X capabilities bits (Amir Tzin) [1982191 1982230] - net/mlx5e: Dynamic alloc vlan table for netdev when needed (Amir Tzin) [1982191] - net/mlx5e: Dynamic alloc arfs table for netdev when needed (Amir Tzin) [1982191] - net/mlx5: Use ida_alloc_range() instead of ida_simple_alloc() (Amir Tzin) [1982191] - net/mlx5e: Update ethtool setting of CQE compression (Amir Tzin) [1982191] - net/mlx5e: Allow coexistence of CQE compression and HW TS PTP (Amir Tzin) [1982191] - net/mlx5e: Add PTP Flow Steering support (Amir Tzin) [1982191] - net/mlx5e: Introduce Flow Steering ANY API (Amir Tzin) [1982191] - net/mlx5e: Introduce Flow Steering UDP API (Amir Tzin) [1982191] - net/mlx5e: Cleanup Flow Steering level (Amir Tzin) [1982191] - net/mlx5e: Add PTP RQ to RX reporter (Amir Tzin) [1982191] - net/mlx5e: Refactor RX reporter diagnostics (Amir Tzin) [1982191] - net:mlx5e: Add PTP-TIR and PTP-RQT (Amir Tzin) [1982191] - net/mlx5e: Add PTP-RX statistics (Amir Tzin) [1982191] - net/mlx5e: Add RQ to PTP channel (Amir Tzin) [1982191] - net/mlx5e: Add states to PTP channel (Amir Tzin) [1982191] - RDMA/mlx5: Set ODP caps only if device profile support ODP (Amir Tzin) [1982191] - net/mlx5e: Cleanup PTP (Amir Tzin) [1982191] - net/mlx5e: Generalize PTP implementation (Amir Tzin) [1982191] - net/mlx5e: Generalize direct-TIRs and direct-RQTs API (Amir Tzin) [1982191] - net/mlx5e: Generalize close RQ (Amir Tzin) [1982191] - net/mlx5e: Generalize RQ activation (Amir Tzin) [1982191] - net/mlx5e: Generalize open RQ (Amir Tzin) [1982191] - net/mlx5: Add helper to set time-stamp translator on a queue (Amir Tzin) [1982191] - net/mlx5e: Allow creating mpwqe info without channel (Amir Tzin) [1982191] - net/mlx5e: alloc the correct size for indirection_rqt (Amir Tzin) [1982191] - net: ethernet: indir_table.h is included twice (Amir Tzin) [1982191 1982195] - RDMA/mlx5: Create ODP EQ only when ODP MR is created (Amir Tzin) [1982191] - RDMA/mlx5: Add missing returned error check of mlx5_ib_dereg_mr (Amir Tzin) [1982191] - net/mlx5: Move devlink port from mlx5e priv to mlx5e resources (Amir Tzin) [1982191] - net/mlx5e: Allow to match on ICMP parameters (Amir Tzin) [1982191] - net/mlx5: Display the command index in command mailbox dump (Amir Tzin) [1982191] - net/mlx5e: allocate 'indirection_rqt' buffer dynamically (Amir Tzin) [1982191] - net/mlx5e: Dump ICOSQ WQE descriptor on CQE with error events (Amir Tzin) [1982191] - net/mlx5e: Use net_prefetchw instead of prefetchw in MPWQE TX datapath (Amir Tzin) [1982191] - net/mlx5e: Remove redundant newline in NL_SET_ERR_MSG_MOD (Amir Tzin) [1982191] - net/mlx5: Read congestion counters from all ports when lag is active (Amir Tzin) [1982191] - net/mlx5: remove unneeded semicolon (Amir Tzin) [1982191] - net/mlx5: DR, Remove unneeded rx_decap_l3 function for STEv1 (Amir Tzin) [1982191] - net/mlx5: Use order-0 allocations for EQs (Amir Tzin) [1982191] - net/mlx5: Add IFC bits needed for single FDB mode (Amir Tzin) [1982191] - net/mlx5: E-Switch, Refactor send to vport to be more generic (Amir Tzin) [1982191 1982195] - RDMA/mlx5: Use representor E-Switch when getting netdev and metadata (Amir Tzin) [1982191] - net/mlx5: E-Switch, Add eswitch pointer to each representor (Amir Tzin) [1982191 1982195] - net/mlx5: E-Switch, Add match on vhca id to default send rules (Amir Tzin) [1982191 1982195] - net/mlx5: Remove unused mlx5_core_health member recover_work (Amir Tzin) [1982191] - net/mlx5: simplify the return expression of mlx5_esw_offloads_pair() (Amir Tzin) [1982191 1982195] - net/mlx5: Cleanup prototype warning (Amir Tzin) [1982191] - RDMA/mlx5: Allow larger pages in DevX umem (Amir Tzin) [1982191] - RDMA/mlx5: Rename mlx5_mr_cache_invalidate() to revoke_mr() (Amir Tzin) [1982191] - RDMA/mlx5: Consolidate MR destruction to mlx5_ib_dereg_mr() (Amir Tzin) [1982191] - RDMA/mlx5: Use a union inside mlx5_ib_mr (Amir Tzin) [1982191] - platform/mellanox: mlxbf-tmfifo: Fix a memory barrier issue (Amir Tzin) [2018145] - mmc: dw_mmc-bluefield: : Fix the license information (Amir Tzin) [2018145] - mmc: dw_mmc-bluefield: simplify the probe() function (Amir Tzin) [2018145] - benet: mark device 0xe220 (Lancer) as deprecated (Michal Schmidt) [2054409] - myri10ge: mark as deprecated (Michal Schmidt) [2054409] - liquidio: mark as deprecated, not unmaintained (Michal Schmidt) [2054409] - netxen_nic: remove unmaintained mark, keep deprecated (Michal Schmidt) [2054409] - bnx2: mark as deprecated, not unmaintained (Michal Schmidt) [2054409] - SUNRPC: Don't dereference xprt->snd_task if it's a cookie (Dave Wysochanski) [2046545] - SUNRPC: Add source address/port to rpc_socket* traces (Dave Wysochanski) [2046545] - netfilter: conntrack: re-init state for retransmitted syn-ack (Florian Westphal) [2043093] - netfilter: conntrack: move synack init code to helper (Florian Westphal) [2043093]- ibmvnic: remove unused defines (Diego Domingos) [2047920] - ibmvnic: Update driver return codes (Diego Domingos) [2047920] - ARM: iop32x: disable N2100 PCI parity reporting (Josef Oskera) [2031880] - r8169: fix incorrect mac address assignment (Josef Oskera) [2031880] - r8169: Add device 10ec:8162 to driver r8169 (Josef Oskera) [2031880] - ethernet: r8169: use eth_hw_addr_set() (Josef Oskera) [2031880] - net: phy: realtek: add support for RTL8365MB-VC internal PHYs (Josef Oskera) [2031880] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Josef Oskera) [2031880] - r8169: enable ASPM L0s state (Josef Oskera) [2031880] - r8169: rename rtl_csi_access_enable to rtl_set_aspm_entry_latency (Josef Oskera) [2031880] - r8169: change the L0/L1 entrance latencies for RTL8106e (Josef Oskera) [2031880] - Revert "r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM" (Josef Oskera) [2031880] - r8169: Avoid duplicate sysfs entry creation error (Josef Oskera) [2031880] - r8169: Avoid memcpy() over-reading of ETH_SS_STATS (Josef Oskera) [2031880] - r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM (Josef Oskera) [2031880] - net: phy: realtek: net: Fix less than zero comparison of a u16 (Josef Oskera) [2031880] - net: phy: realtek: add delay to fix RXC generation issue (Josef Oskera) [2031880] - net: phy: realtek: add dt property to enable ALDPS mode (Josef Oskera) [2031880] - net: phy: realtek: add dt property to disable CLKOUT clock (Josef Oskera) [2031880] - r8169: Fix fall-through warning for Clang (Josef Oskera) [2031880] - r8169: use KBUILD_MODNAME instead of own module name definition (Josef Oskera) [2031880] - r8169: keep pause settings on interface down/up cycle (Josef Oskera) [2031880] - r8169: add support for pause ethtool ops (Josef Oskera) [2031880] - r8169: use mac-managed PHY PM (Josef Oskera) [2031880] - r8169: remove rtl_hw_start_8168c_3 (Josef Oskera) [2031880] - r8169: add support for ethtool get_ringparam (Josef Oskera) [2031880] - r8169: use lower_32_bits/upper_32_bits macros (Josef Oskera) [2031880] - net: phy: make PHY PM ops a no-op if MAC driver manages PHY PM (Josef Oskera) [2031880] - mm/gup: remove unused get_user_pages_locked() (Chris von Recklinghausen) [2048650] - mm: change lookup_node() to use get_user_pages_fast() (Chris von Recklinghausen) [2048650] - mm/gup: remove unused pin_user_pages_locked() (Chris von Recklinghausen) [2048650] - mm/gup: follow_pfn_pte(): -EEXIST cleanup (Chris von Recklinghausen) [2048650] - mm: fix invalid page pointer returned with FOLL_PIN gups (Chris von Recklinghausen) [2048650] - mm: fix typos in comments (Chris von Recklinghausen) [2048650] - vfio/iommu_type1: replace kfree with kvfree (Alex Williamson) [2046547] - vfio/pci: Fix error return code in vfio_ecap_init() (Alex Williamson) [2046547] - vfio/pci: Add missing range check in vfio_pci_mmap (Alex Williamson) [2046547] - vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer (Alex Williamson) [2046547] - vfio/mdev: Make to_mdev_device() into a static inline (Alex Williamson) [2046547] - vfio/iommu_type1: Mantain a counter for non_pinned_groups (Alex Williamson) [2046547] - vfio/iommu_type1: Fix some sanity checks in detach group (Alex Williamson) [2046547] - vfio/iommu_type1: Populate full dirty when detach non-pinned group (Alex Williamson) [2046547] - vfio/pci: Move dummy_resources_list init in vfio_pci_probe() (Alex Williamson) [2046547] - vfio/virqfd: Drain events from eventfd in virqfd_wakeup() (Alex Williamson) [2046547] - ext4: fix direct I/O read error (Lukas Czerner) [1868258] - usb: xhci: Extend support for runtime power management for AMD's Yellow carp. (Renjith Pananchikkal) [2015775] - usb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform (Renjith Pananchikkal) [2015775] - thunderbolt: Enable retry logic for intra-domain control packets (David Arcari) [2028287] - nvme-fabrics: fix state check in nvmf_ctlr_matches_baseopts() (Gopal Tiwari) [2043755] - smb3: do not error on fsync when readonly (Ronnie Sahlberg) [2037811] - cifs: serialize all mount attempts (Ronnie Sahlberg) [2008434] - ALSA: memalloc: Unify x86 SG-buffer handling (take#3) (Jaroslav Kysela) [2049437] - ALSA: usb-audio: add mapping for MSI MPG X570S Carbon Max Wifi. (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Drop CONFIG_PM ifdefs (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Fix dB level of Bose Revolve+ SoundLink (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Add minimal-mute notion in dB mapping table (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Use int for dB map values (Jaroslav Kysela) [2049437] - ALSA: hda/tegra: Fix Tegra194 HDA reset failure (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Use ALC285_FIXUP_HP_GPIO_LED on another HP laptop (Jaroslav Kysela) [2049437] - ALSA: hda: Add new AlderLake-P variant PCI ID (Jaroslav Kysela) [2049437] - ALSA: hda: Add AlderLake-N PCI ID (Jaroslav Kysela) [2049437] - ALSA: hda: use swap() to make code cleaner (Jaroslav Kysela) [2049437] - ALSA: Fix some typo (Jaroslav Kysela) [2049437] - ALSA: hda/hdmi: Consider ELD is invalid when no SAD is present (Jaroslav Kysela) [2049437] - ALSA: hda: Remove redundant runtime PM calls (Jaroslav Kysela) [2049437] - ALSA: hda: Do disconnect jacks at codec unbind (Jaroslav Kysela) [2049437] - ALSA: hda: intel: More comprehensive PM runtime setup for controller driver (Jaroslav Kysela) [2049437] - ASoC: SOF: Intel: fix build issue related to CODEC_PROBE_ENTRIES (Jaroslav Kysela) [2049437] - ASoC: cs42l42: Report initial jack state (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Re-order quirk entries for Lenovo (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Add quirk for Legion Y9000X 2020 (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Add speaker fixup for some Yoga 15ITL5 devices (Jaroslav Kysela) [2049437] - tools headers UAPI: Sync sound/asound.h with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - ASoC: SOF: handle paused streams during system suspend (Jaroslav Kysela) [2049437] - ASoC: SOF: sof-audio: setup sched widgets during pipeline complete step (Jaroslav Kysela) [2049437] - ASoC: SOF: free widgets in sof_tear_down_pipelines() for static pipelines (Jaroslav Kysela) [2049437] - ALSA: hda/cs8409: Fix Jack detection after resume (Jaroslav Kysela) [2049437] - ALSA: hda/cs8409: Increase delay during jack detection (Jaroslav Kysela) [2049437] - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master after reboot from Windows (Jaroslav Kysela) [2049437] - ASoC: Intel: catpt: Test dmaengine_submit() result before moving on (Jaroslav Kysela) [2049437] - ASoC: amd: Fix dependency for SPI master (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Drop superfluous '0' in Presonus Studio 1810c's ID (Jaroslav Kysela) [2049437] - ALSA: oss: fix compile error when OSS_DEBUG is enabled (Jaroslav Kysela) [2049437] - ALSA: hda: Make proper use of timecounter (Jaroslav Kysela) [2049437] - ALSA: led: Use restricted type for iface assignment (Jaroslav Kysela) [2049437] - ALSA: hda: Fix potential deadlock at codec unbinding (Jaroslav Kysela) [2049437] - ALSA: hda: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ALSA: PCM: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ALSA: jack: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ASoC: Intel: sof_sdw: fix jack detection on HP Spectre x360 convertible (Jaroslav Kysela) [2049437] - kernel: fork: properly initialize mm->mm_rh in dup_mm() and mm_alloc() (Rafael Aquini) [2047242] - vdpa/mlx5: Fix tracking of current number of VQs (Cindy Lu) [2052849] - vdpa/mlx5: Fix is_index_valid() to refer to features (Cindy Lu) [2052849] - vdpa: Protect vdpa reset with cf_mutex (Cindy Lu) [2052849] - vdpa: Avoid taking cf_mutex lock on get status (Cindy Lu) [2052849] - vdpa/vdpa_sim_net: Report max device capabilities (Cindy Lu) [2052849] - vdpa: Use BIT_ULL for bit operations (Cindy Lu) [2052849] - vdpa/vdpa_sim: Configure max supported virtqueues (Cindy Lu) [2052849] - vdpa/mlx5: Report max device capabilities (Cindy Lu) [2052849] - vdpa: Support reporting max device capabilities (Cindy Lu) [2052849] - vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps() (Cindy Lu) [2052849] - vdpa: Add support for returning device configuration information (Cindy Lu) [2052849] - vdpa/mlx5: Support configuring max data virtqueue (Cindy Lu) [2052849] - vdpa/mlx5: Fix config_attr_mask assignment (Cindy Lu) [2052849] - vdpa: Allow to configure max data virtqueues (Cindy Lu) [2052849] - vdpa: Read device configuration only if FEATURES_OK (Cindy Lu) [2052849] - vdpa: Sync calls set/get config/status with cf_mutex (Cindy Lu) [2052849] - vdpa/mlx5: Distribute RX virtqueues in RQT object (Cindy Lu) [2052849] - vdpa: Provide interface to read driver features (Cindy Lu) [2052849] - vdpa/mlx5: Fix wrong configuration of virtio_version_1_0 (Cindy Lu) [2052849] - vdpa: Mark vdpa_config_ops.get_vq_notification as optional (Cindy Lu) [2052849] - vdpa: Avoid duplicate call to vp_vdpa get_status (Cindy Lu) [2052849] - net/mlx5_vdpa: Offer VIRTIO_NET_F_MTU when setting MTU (Cindy Lu) [2052849] - vdpa: add driver_override support (Cindy Lu) [2052849] - docs: document sysfs ABI for vDPA bus (Cindy Lu) [2052849] - ifcvf/vDPA: fix misuse virtio-net device config size for blk dev (Cindy Lu) [2052849] - Revert "efi/libstub: arm64: Double check image alignment at entry" (Vitaly Kuznetsov) [2046303] - ethtool: ioctl: fix potential NULL deref in ethtool_set_coalesce() (William Zhao) [2046342] - cifs: Do not leak EDEADLK to dgetents64 for STATUS_USER_SESSION_DELETED (Ronnie Sahlberg) [1994393] - cifs: constify pathname arguments in a bunch of helpers (Ronnie Sahlberg) [1994393] - cgroup: Use open-time cgroup namespace for process migration perm checks (Chris von Recklinghausen) [2035766] - cgroup: Allocate cgroup_file_ctx for kernfs_open_file->priv (Chris von Recklinghausen) [2035766] - cgroup: Use open-time credentials for process migraton perm checks (Chris von Recklinghausen) [2035766] - cgroup: make per-cgroup pressure stall tracking configurable (Chris von Recklinghausen) [2035766] - powerpc/idle: Don't corrupt back chain when going idle (Laurent Vivier) [2052793] - powerpc64/idle: Fix SP offsets when saving GPRs (Laurent Vivier) [2052793] - sfc: ef10: implement ethtool::get_fec_stats (Íñigo Huguet) [2042798] - sfc: The RX page_ring is optional (Íñigo Huguet) [2042798] - sfc: Check null pointer of rx_queue->page_ring (Íñigo Huguet) [2042798] - sfc_ef100: potential dereference of null pointer (Íñigo Huguet) [2042798] - sfc: Don't use netif_info before net_device setup (Íñigo Huguet) [2042798] - sfc: Export fibre-specific supported link modes (Íñigo Huguet) [2042798] - sfc: Fix reading non-legacy supported link modes (Íñigo Huguet) [2042798] - ethernet: constify references to netdev->dev_addr in drivers (Íñigo Huguet) [2042798] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Íñigo Huguet) [2042798] - ethernet: use eth_hw_addr_set() (Íñigo Huguet) [2042798] - sfc: last resort fallback for lack of xdp tx queues (Íñigo Huguet) [2042798 1995444] - sfc: fallback for lack of xdp tx queues (Íñigo Huguet) [2042798 1995444] - ext4: fix potential uninitialized access to retval in kmmpd (Lukas Czerner) [2046355] - ext4: fix possible UAF when remounting r/o a mmp-protected file system (Lukas Czerner) [2046355] - ext4: fix memory leak in ext4_fill_super (Lukas Czerner) [2046355] - quota: check block number when reading the block in quota file (Lukas Czerner) [2046999] - quota: correct error number in free_dqentry() (Lukas Czerner) [2046999] - quota: Fix memory leak when handling corrupted quota file (Lukas Czerner) [2046999] - quota: Sanity-check quota file headers on load (Lukas Czerner) [2046999] - quota: clear padding in v2r1_mem2diskdqb() (Lukas Czerner) [2046999] - quota: Check that quota is not dirty before release (Lukas Czerner) [2046999] - quota: fix livelock in dquot_writeback_dquots (Lukas Czerner) [2046999] - ext4: fix e2fsprogs checksum failure for mounted filesystem (Lukas Czerner) [1937180] - ext4: prevent partial update of the extent blocks (Lukas Czerner) [2035877] - ext4: check for inconsistent extents between index and leaf block (Lukas Czerner) [2035877] - ext4: check for out-of-order index extents in ext4_valid_extent_entries() (Lukas Czerner) [2035877] - ext4: avoid trim error on fs with small groups (Lukas Czerner) [2046355] - ext4: fix null-ptr-deref in '__ext4_journal_ensure_credits' (Lukas Czerner) [2046355] - ext4: make sure to reset inode lockdep class when quota enabling fails (Lukas Czerner) [2046355] - ext4: make sure quota gets properly shutdown on error (Lukas Czerner) [2046355] - ext4: Fix BUG_ON in ext4_bread when write quota data (Lukas Czerner) [2046355] - ext4: refresh the ext4_ext_path struct after dropping i_data_sem. (Lukas Czerner) [2046355] - ext4: ensure enough credits in ext4_ext_shift_path_extents (Lukas Czerner) [2046355] - ext4: fix potential infinite loop in ext4_dx_readdir() (Lukas Czerner) [2046355] - ext4: fix loff_t overflow in ext4_max_bitmap_size() (Lukas Czerner) [2046355] - ext4: fix reserved space counter leakage (Lukas Czerner) [2046355] - ext4: fix race writing to an inline_data file while its xattrs are changing (Lukas Czerner) [2046355] - ext4: fix potential htree corruption when growing large_dir directories (Lukas Czerner) [2046355] - ext4: use ext4_grp_locked_error in mb_find_extent (Lukas Czerner) [2046355] - ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit (Lukas Czerner) [2046355] - ext4: remove check for zero nr_to_scan in ext4_es_scan() (Lukas Czerner) [2046355] - ext4: return error code when ext4_fill_flex_info() fails (Lukas Czerner) [2046355] - ext4: cleanup in-core orphan list if ext4_truncate() failed to get a transaction handle (Lukas Czerner) [2046355] - ext4: fix kernel infoleak via ext4_extent_header (Lukas Czerner) [2046355] - ext4: fix memory leak in ext4_fill_super (Lukas Czerner) [2046355] - ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed (Lukas Czerner) [2046355] - ext4: fix error code in ext4_commit_super (Lukas Czerner) [2046355] - crash_core, vmcoreinfo: append 'SECTION_SIZE_BITS' to vmcoreinfo (Pingfan Liu) [2046631] - arm64/crash_core: Export TCR_EL1.T1SZ in vmcoreinfo (Pingfan Liu) [2046631] - arm64: kernel: arch_crash_save_vmcoreinfo() should depend on CONFIG_CRASH_CORE (Mark Salter) [2046631] - Revert "[arm64] arm64, vmcoreinfo : Append 'MAX_PHYSMEM_BITS' to vmcoreinfo" (Pingfan Liu) [2046631] - crash_core, vmcoreinfo: Append 'MAX_PHYSMEM_BITS' to vmcoreinfo (Pingfan Liu) [2046631] - ibmvnic: don't release napi in __ibmvnic_open() (Gustavo Walbon) [2051793]- EDAC/igen6: Add Intel Alder Lake SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/igen6: Add Intel Tiger Lake SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/igen6: Add Intel ICL-NNPI SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/i10nm: Add support for high bandwidth memory (Aristeu Rozanski) [1971965 1783145] - EDAC/i10nm: Add detection of memory levels for ICX/SPR servers (Aristeu Rozanski) [1971965 1783145] - EDAC/skx_common: Add new ADXL components for 2-level memory (Aristeu Rozanski) [1971965 1783145] - EDAC, skx: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1971965 1783145] - EDAC, skx_common: Refactor so that we initialize "dev" in result of adxl decode. (Aristeu Rozanski) [1971965 1783145] - selinux: parse contexts for mount options early (Scott Mayhew) [1984355] - selinux: try to use preparsed sid before calling parse_sid() (Scott Mayhew) [1984355] - selinux: Fix selinux_sb_mnt_opts_compat() (Scott Mayhew) [1984355] - selinux: access superblock_security_struct in LSM blob way (Scott Mayhew) [1984355] - selinux: minor tweaks to selinux_add_opt() (Scott Mayhew) [1984355] - selinux: fix potential memleak in selinux_add_opt() (Scott Mayhew) [1984355] - selinux: fix sleeping function called from invalid context (Scott Mayhew) [1984355] - LSM: Infrastructure management of the superblock (Scott Mayhew) [1984355] - selinux: drop super_block backpointer from superblock_security_struct (Scott Mayhew) [1984355] - selinux: remove redundant allocation and helper functions (Scott Mayhew) [1984355] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [1970036 1988269] - ath11k: add string type to search board data in board-2.bin for WCN6855 (Íñigo Huguet) [1970036 1988269] - firmware: smccc: Fix check for ARCH_SOC_ID not implemented (Vitaly Kuznetsov) [2053450] - bpf, arm64: Use emit_addr_mov_i64() for BPF_PSEUDO_FUNC (Yauheni Kaliuta) [2051789] - bpf/selftests: disable a verifier test for powerpc (Viktor Malik) [2046032] - bpf/selftests: allow disabling verifier tests (Viktor Malik) [2046032] - vfs: check dentry is still valid in get_link() (Ian Kent) [2014846] - xfs: don't expose internal symlink metadata buffers to the vfs (Brian Foster) [2014846] - scsi: vmw_pvscsi: Set residual data length conditionally (Cathy Avery) [2052345] - scsi: mpt3sas: Fix incorrect system timestamp (Tomas Henzl) [2026212] - scsi: mpt3sas: Fix system going into read-only mode (Tomas Henzl) [2026212] - scsi: mpt3sas: Fix kernel panic during drive powercycle test (Tomas Henzl) [2026212] - scsi: mpt3sas: Clean up some inconsistent indenting (Tomas Henzl) [2026212] - scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state (Ewan D. Milne) [2028290] - blktrace: switch trace spinlock to a raw spinlock (Wander Lairson Costa) [1905749] - blktrace: Fix uaf in blk_trace access after removing by sysfs (Wander Lairson Costa) [1905749] - blk-wbt: export internal state via debugfs (Ming Lei) [2047313] - platform/x86: ISST: Fix optimization with use of numa (Prarit Bhargava) [2023820] - platform/x86: ISST: Use numa node id for cpu pci dev mapping (Prarit Bhargava) [2023818] - platform/x86: ISST: Optimize CPU to PCI device mapping (Prarit Bhargava) [2023818] - efi/x86: drop task_lock() from efi_switch_mm() (Fernando Pacheco) [2035415] - configs: enable LOGITECH_FF (Benjamin Tissoires) [1945987] - Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl (Benjamin Tissoires) [1974089] - Input: joydev - prevent potential read overflow in ioctl (Benjamin Tissoires) [1974089] - xfs: Fix CIL throttle hang when CIL space used going backwards (Thiago Becker) [2040371] - netfilter: nf_conntrack_netbios_ns: fix helper module alias (Florian Westphal) [2038015] - selftests: nft_concat_range: add test for reload with no element add/del (Florian Westphal) [2046309] - netfilter: fix regression in looped (broad|multi)cast's MAC handling (Florian Westphal) [2046309] - selftests: netfilter: Add correctness test for mac,net set type (Florian Westphal) [2046309] - netfilter: flowtable: fix IPv6 tunnel addr match (Florian Westphal) [2046309] - netfilter: conntrack: don't increment invalid counter on NF_REPEAT (Florian Westphal) [2046309] - netfilter: nft_set_pipapo: allocate pcpu scratch maps on clone (Florian Westphal) [2046309] - netfilter: nft_payload: do not update layer 4 checksum when mangling fragments (Florian Westphal) [2046309] - netfilter: ipvs: Fix reuse connection if RS weight is 0 (Florian Westphal) [2046309] - netfilter: ctnetlink: do not erase error code with EINVAL (Florian Westphal) [2046309] - netfilter: ctnetlink: fix filtering with CTA_TUPLE_REPLY (Florian Westphal) [2046309] - netfilter: nfnetlink_queue: fix OOB when mac header was cleared (Florian Westphal) [2046309] - netfilter: nft_dynset: relax superfluous check on set updates (Florian Westphal) [2046309] - netfilter: use kvmalloc_array to allocate memory for hashtable (Phil Sutter) [2001762] - netfilter: nf_tables: skip netdev events generated on netns removal (Phil Sutter) [2053436] - xfrm: add state hashtable keyed by seq (Sabrina Dubroca) [1926538]- cgroup/cpuset: Fix "suspicious RCU usage" lockdep warning (Waiman Long) [2050418] - cpuset: Fix the bug that subpart_cpus updated wrongly in update_cpumask() (Waiman Long) [2050418] - IB/rdmavt: Validate remote_addr during loopback atomic tests (Kamal Heib) [2033480] - in wb_init, use gfp instead of GFP_KERNEL when allocating bw_dwork (Chris von Recklinghausen) [2046179] - scsi: bnx2fc: Make bnx2fc_recv_frame() mp safe (John Meneghini) [2051691] - scsi: bnx2fc: Flush destroy_work queue before calling bnx2fc_interface_put() (John Meneghini) [1973208] - nvme: drop unused variable ctrl in nvme_setup_cmd (John Meneghini) [2033384] - nvme: increment request genctr on completion (John Meneghini) [2033384] - nvme-pci: Fix abort command id (John Meneghini) [2033384] - nvme: add command id quirk for apple controllers (John Meneghini) [2033384] - nvme: move nvme_multi_css into nvme.h (John Meneghini) [2033384] - nvme: code command_id with a genctr for use-after-free validation (John Meneghini) [2033384] - nvme-pci: limit maximum queue depth to 4095 (John Meneghini) [2033384] - params: lift param_set_uint_minmax to common code (John Meneghini) [2033384] - CI: Enable baseline realtime checks (Veronika Kabatova) - CI: Rename pipelines to include release names (Veronika Kabatova) - sched/pelt: Relax the sync of load_sum with load_avg (Phil Auld) [2037123] - sched/pelt: Relax the sync of runnable_sum with runnable_avg (Phil Auld) [2037123] - sched/pelt: Continue to relax the sync of util_sum with util_avg (Phil Auld) [2037123] - sched/pelt: Relax the sync of util_sum with util_avg (Phil Auld) [2037123] - cifs: fix memory leak of smb3_fs_context_dup::server_hostname (Ronnie Sahlberg) [2044670] - cifs: To match file servers, make sure the server hostname matches (Ronnie Sahlberg) [2044670] - perf/x86/intel/uncore: Fix Intel SPR M3UPI event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR M2PCIE event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR IIO event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR CHA event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Support IMC free-running counters on Sapphire Rapids server (Michael Petlan) [1837402] - perf/x86/intel/uncore: Support IIO free-running counters on Sapphire Rapids server (Michael Petlan) [1837402] - perf/x86/intel/uncore: Factor out snr_uncore_mmio_map() (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add alias PMU name (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server MDF support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M3UPI support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server UPI support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M2M support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IMC support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server PCU support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M2PCIe support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IRP support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IIO support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server CHA support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server framework (Michael Petlan) [1837402] - ovl: fix deadlock in splice write (Miklos Szeredi) [2028998] - selinux: fix NULL-pointer dereference when hashtab allocation fails (Ondrej Mosnacek) [2021467] - selinux: fix double free of cond_list on error paths (Ondrej Mosnacek) [2043605] - ibmvnic: remove unused ->wait_capability (Diego Domingos) [2049368] - ibmvnic: don't spin in tasklet (Diego Domingos) [2049368] - ibmvnic: init ->running_cap_crqs early (Diego Domingos) [2049368] - ibmvnic: Allow extra failures before disabling (Diego Domingos) [2049368] - hpsa: add new messaging (Tomas Henzl) [1801777] - aacraid: add new messaging (Tomas Henzl) [2044365] - Revert "[scsi] Revert "[scsi] aacraid: add removed id table"" (Tomas Henzl) [2044365] - mpt3sas: Add new messaging (Tomas Henzl) [2044366] - Revert "[scsi] mpt*: remove certain deprecated pci-ids" (Tomas Henzl) [2044366] - mptsas: add new messaging (Tomas Henzl) [2044366] - sctp: hold endpoint before calling cb in sctp_transport_lookup_process (Xin Long) [2043822] - sctp: use call_rcu to free endpoint (Xin Long) [2043822] - sctp: move hlist_node and hashent out of sctp_ep_common (Xin Long) [2043822] - net: Use nlmsg_unicast() instead of netlink_unicast() (Xin Long) [2043822] - video: hyperv_fb: Fix validation of screen resolution (Mohammed Gamal) [1952821] - powerpc/pseries: extract host bridge from pci_bus prior to bus removal (Diego Domingos) [2051509] - dm: properly fix redundant bio-based IO accounting (Mike Snitzer) [2051803] - dm: revert partial fix for redundant bio-based IO accounting (Mike Snitzer) [2051803] - block: add bio_start_io_acct_time() to control start_time (Mike Snitzer) [2051803] - block: document iostat changes for disk busy time accounting (Mike Snitzer) [2051803]- tee: optee: Fix incorrect page free bug (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: handle lookup of shm with reference count 0 (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: smc_abi.c: add missing #include (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: isolate smc abi (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: refactor driver with internal callbacks (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: simplify optee_release() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix missing devices unregister during optee_remove (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee/optee/shm_pool: fix application of sizeof to pointer (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: Correct inappropriate usage of TEE_SHM_DMA_BUF flag (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add tee_shm_alloc_kernel_buf() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Clear stale cache entries during initialization (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: fix tee out of memory failure seen during kexec reboot (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Refuse to load the driver under the kdump kernel (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Fix memory leak when failing to register shm pages (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: use export_uuid() to copy client UUID (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: do not check memref size on return from Secure World (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: fix build error caused by recent optee tracepoints feature (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add invoke_fn tracepoints (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: simplify i2c access (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: remove need_resched() before cond_resched() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: sync OP-TEE headers (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: replace might_sleep with cond_resched (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - drivers: optee: fix i2c build issue (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: convert get_user_pages() --> pin_user_pages() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - drivers: optee: allow op-tee to access devices on the i2c bus (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - driver: tee: Handle NULL pointer indication from client (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: enable support for multi-stage bus enumeration (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: use uuid for sysfs driver entry (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Add support for session login client UUID generation (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: enable support to register kernel memory (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove unnecessary NULL check in tee_shm_alloc() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: don't assign shm id for private shms (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove unused tee_shm_priv_alloc() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: tee_shm_op_mmap(): use TEE_SHM_USER_MAPPED (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove redundant teedev in struct tee_shm (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove linked list of struct tee_shm (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Fix multi page dynamic shm pool alloc (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: model OP-TEE as a platform device/driver (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: fix device enumeration error handling (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix dynamic shm pool allocations (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee/shm: untag user pointers in tee_shm_register (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add might_sleep for RPC requests (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: allow to work without static shared memory (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: update optee_msg.h and optee_smc.h to dual license (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add missing of_node_put after of_device_is_available (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix unsigned comparison with less than zero (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: fix possible error pointer ctx dereferencing (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Initialize some structs using memset instead of braces (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add TEE bus device enumeration support (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add supp_nowait flag in tee_context struct (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: log message if dynamic shm is enabled (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add kernel internal client interface (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: take DT status property into account (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: making OPTEE_SHM_NUM_PRIV_PAGES configurable via Kconfig (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - x86/mce: Add Xeon Sapphire Rapids to list of CPUs that support PPIN (David Arcari) [2035286] - regset: kill ->get() (Prarit Bhargava) [2032854] - arm64: switch to ->regset_get() (Prarit Bhargava) [2032854] - arm64: take fetching compat reg out of pt_regs into a new helper (Prarit Bhargava) [2032854] - powerpc: switch to ->regset_get() (Prarit Bhargava) [2032854] - s390: switch to ->regset_get() (Prarit Bhargava) [2032854] - introduction of regset ->get() wrappers, switching ELF coredumps to those (Prarit Bhargava) [2032854] - mm/page_alloc.c: do not warn allocation failure on zone DMA if no managed pages (Baoquan He) [2024011] - dma/pool: create dma atomic pool only if dma zone has managed pages (Baoquan He) [2024011] - mm_zone: add function to check if managed dma zone exists (Baoquan He) [2024011] - tipc: discard MSG_CRYPTO msgs when key_exchange_enabled is not set (Xin Long) [2043825] - tipc: delete the unlikely branch in tipc_aead_encrypt (Xin Long) [2043825] - tipc: check for null after calling kmemdup (Xin Long) [2043825] - tipc: only accept encrypted MSG_CRYPTO msgs (Xin Long) [2043825] - powerpc/pseries: use slab context cpumask allocation in CPU hotplug init (Waiman Long) [2048220] - powerpc/pseries: Fix build error when NUMA=n (Waiman Long) [2048220] - lpfc: Add new messaging (Ewan D. Milne) [1841323] - cpu/hotplug: Cure the cpusets trainwreck (Phil Auld) [1904593] - scsi: ses: Fix unsigned comparison with less than zero (Tomas Henzl) [1995086] - scsi: ses: Retry failed Send/Receive Diagnostic commands (Tomas Henzl) [1995086] - serial: exar: Fix GPIO configuration for Sealevel cards based on XR17V35X (John W. Linville) [2022906] - PCI: vmd: Add indirection layer to vmd irq lists (Scott Wood) [2048202] - redhat/configs: Enable CONFIG_PCI_HYPERV on Aarch64 (Vitaly Kuznetsov) [2024853] - PCI: hv: Add arm64 Hyper-V vPCI support (Vitaly Kuznetsov) [2024853] - PCI: hv: Make the code arch neutral by adding arch specific interfaces (Vitaly Kuznetsov) [2024853] - PCI: hv: Remove unnecessary use of hx (Vitaly Kuznetsov) [2024853] - nvme-rdma: fix possible use-after-free in transport error_recovery work (Chris Leech) [1988361] - nvme-tcp: fix possible use-after-free in transport error_recovery work (Chris Leech) [1988361] - nvme: fix a possible use-after-free in controller reset during load (Chris Leech) [1988361] - ipv6: check return value of ipv6_skip_exthdr (Sabrina Dubroca) [2046234] - selftests: Calculate udpgso segment count without header adjustment (Xin Long) [2044133] - udp: using datalen to cap ipv6 udp max gso segments (Xin Long) [2044133] - inet_diag: fix kernel-infoleak for UDP sockets (Xin Long) [2044133] - udp: using datalen to cap max gso segments (Xin Long) [2044133] - [s390] s390/cpumf: Support for CPU Measurement Facility CSVN 7 (Mete Durlu) [2048980] - [s390] s390/cpumf: Support for CPU Measurement Sampling Facility LS bit (Mete Durlu) [2048980] - tools/power/x86/intel-speed-select: v1.10 release (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Fix uncore memory frequency display (Prarit Bhargava) [2023909] - platform/x86: ISST: Account for increased timeout in some cases (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Add options to force online (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Drop __DATE__ and __TIME__ macros (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: v1.9 release (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Process mailbox read error for core-power (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Increase string size (Prarit Bhargava) [2023909] - qla2xxx: Add new messaging (Ewan D. Milne) [1900072]- platform/x86: amd-pmc: only use callbacks for suspend (David Arcari) [2016039] - platform/x86: amd-pmc: Add support for AMD Smart Trace Buffer (David Arcari) [2016039] - platform/x86: amd-pmc: Simplify error handling and store the pci_dev in amd_pmc_dev structure (David Arcari) [2016039] - platform/x86: amd-pmc: Fix s2idle failures on certain AMD laptops (David Arcari) [2016039] - platform/x86: amd-pmc: Make CONFIG_AMD_PMC depend on RTC_CLASS (David Arcari) [2016039] - platform/x86: amd-pmc: Drop check for valid alarm time (David Arcari) [2016039] - platform/x86: amd-pmc: Downgrade dev_info message to dev_dbg (David Arcari) [2016039] - platform/x86: amd-pmc: fix compilation without CONFIG_RTC_SYSTOHC_DEVICE (David Arcari) [2016039] - platform/x86: amd-pmc: Add special handling for timer based S0i3 wakeup (David Arcari) [2016039] - platform/x86: amd-pmc: adjust arguments for `amd_pmc_send_cmd` (David Arcari) [2016039] - platform/x86: amd-pmc: Add alternative acpi id for PMC controller (David Arcari) [2016039] - platform/x86: amd-pmc: Add a message to print resume time info (David Arcari) [2016039] - platform/x86: amd-pmc: Send command to dump data after clearing OS_HINT (David Arcari) [2016039] - platform/x86: amd-pmc: Fix compilation when CONFIG_DEBUGFS is disabled (David Arcari) [2016039] - platform/x86: amd-pmc: Export Idlemask values based on the APU (David Arcari) [2016039] - platform/x86: amd-pmc: Check s0i3 cycle status (David Arcari) [2016039] - scsi: lpfc: Fix non-recovery of remote ports following an unsolicited LOGO (Dick Kennedy) [2027558] - sch_api: Don't skip qdisc attach on ingress (Davide Caratti) [2044806] - sch_qfq: prevent shift-out-of-bounds in qfq_init_qdisc (Davide Caratti) [2044806] - flow_offload: return EOPNOTSUPP for the unsupported mpls action type (Davide Caratti) [2044806] - selftests: bpf: Less strict size check in sockopt_sk (Felix Maurer) [2025809] - net-zerocopy: Fast return if inq < PAGE_SIZE (Felix Maurer) [2025809] - tcp: Fix sign comparison bug in getsockopt(TCP_ZEROCOPY_RECEIVE) (Felix Maurer) [2025809] - tcp-zerocopy: Ensure excess getsockopt buffer is zeroed (Felix Maurer) [2025809] - tcp-zerocopy: Update returned getsockopt() optlen. (Felix Maurer) [2025809] - tcp-zerocopy: Fix getsockopt buffer size check (Felix Maurer) [2025809] - gre: Don't accidentally set RTO_ONLINK in gre_fill_metadata_dst() (Guillaume Nault) [2046339] - net: fix use-after-free in tw_timer_handler (Guillaume Nault) [2046339] - ALSA: core: Fix SSID quirk lookup for subvendor=0 (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Restore hardware state on runtime PM resume (Jaroslav Kysela) [2003613] - ALSA: RHEL - update kernel configs for RHEL 8.6 (Jaroslav Kysela) [2003613] - ASoC: remove module namespaces (Jaroslav Kysela) [2003613] - ASoC: codecs: rt5682(s): use the older clock API calls, but keep some modern (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Cleanup logging (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Use snd_soc_jack to report jack events (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: convert into a helper library for codec drivers (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Use arizona->dev for runtime-pm (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Move jack-detect variables to struct arizona_priv (Jaroslav Kysela) [2003613] - ASoC/extcon: arizona: Move arizona jack code to sound/soc/codecs/arizona-jack.c (Jaroslav Kysela) [2003613] - extcon: arizona: Always use pm_runtime_get_sync() when we need the device to be awake (Jaroslav Kysela) [2003613] - extcon: arizona: Fix flags parameter to the gpiod_get("wlf,micd-pol") call (Jaroslav Kysela) [2003613] - extcon: arizona: Fix various races on driver unbind (Jaroslav Kysela) [2003613] - extcon: arizona: Fix some issues when HPDET IRQ fires after the jack has been unplugged (Jaroslav Kysela) [2003613] - extcon: arizona: Fix runtime PM imbalance on error (Jaroslav Kysela) [2003613] - extcon: arizona: Factor out microphone and button detection (Jaroslav Kysela) [2003613] - extcon: arizona: Factor out microphone impedance into a function (Jaroslav Kysela) [2003613] - extcon: arizona: Invert logic of check in arizona_hpdet_do_id (Jaroslav Kysela) [2003613] - extcon: arizona: Remove excessive WARN_ON (Jaroslav Kysela) [2003613] - extcon: arizona: Remove unnecessary sets of ACCDET_MODE (Jaroslav Kysela) [2003613] - extcon: arizona: Tidy up transition from mic to headphone detect (Jaroslav Kysela) [2003613] - extcon: arizona: Clear jack status regardless of detection type (Jaroslav Kysela) [2003613] - extcon: arizona: Move pdata extraction to probe (Jaroslav Kysela) [2003613] - extcon: arizona: Make rev A register sequences atomic (Jaroslav Kysela) [2003613] - extcon: arizona: Correct clean up if arizona_identify_headphone fails (Jaroslav Kysela) [2003613] - extcon: arizona: Switch to use device_property_count_u32() (Jaroslav Kysela) [2003613] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Jaroslav Kysela) [2003613] - extcon: arizona: Correct error handling on regmap_update_bits_check (Jaroslav Kysela) [2003613] - extcon: arizona: Disable mic detect if running when driver is removed (Jaroslav Kysela) [2003613] - mfd: arizona: Fix rumtime PM imbalance on error (Jaroslav Kysela) [2003613] - mfd: arizona: Split of_match table into I2C and SPI versions (Jaroslav Kysela) [2003613] - mfd: arizona: Make some symbols static (Jaroslav Kysela) [2003613] - mfd: arizona: Add support for ACPI enumeration of WM5102 connected over SPI (Jaroslav Kysela) [2003613] - mfd: arizona: Add MODULE_SOFTDEP("pre: arizona_ldo1") (Jaroslav Kysela) [2003613] - mfd: arizona: Drop arizona-extcon cells (Jaroslav Kysela) [2003613] - mfd: arizona: Replace arizona_of_get_type() with device_get_match_data() (Jaroslav Kysela) [2003613] - mfd: arizona: Ensure 32k clock is put on driver unbind and error (Jaroslav Kysela) [2003613] - mfd: arizona: Remove BUG_ON usage (Jaroslav Kysela) [2003613] - mfd: arizona: Switch to using devm_gpiod_get() (Jaroslav Kysela) [2003613] - mfd: arizona: Fix undefined behavior (Jaroslav Kysela) [2003613] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jaroslav Kysela) [2003613] - mfd: arizona: Correct calling of runtime_put_sync (Jaroslav Kysela) [2003613] - mfd: arizona: Don't use regmap_read_poll_timeout (Jaroslav Kysela) [2003613] - clkdev: Hold clocks_mutex while iterating clocks list (Jaroslav Kysela) [2003613] - clkdev: add managed clkdev lookup registration (Jaroslav Kysela) [2003613] - genirq: Add IRQF_NO_AUTOEN for request_irq/nmi() (Jaroslav Kysela) [2003613] - ALSA: es1688: Avoid devres management for es1688 object creation (Jaroslav Kysela) [2003613] - ALSA: gus: Fix repeated probes of snd_gus_create() (Jaroslav Kysela) [2003613] - ALSA: x86: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: x86: simplify with sync_stop PCM ops (Jaroslav Kysela) [2003613] - ALSA: x86: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: virtio: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2003613] - ALSA: emux: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: synth: missing check for possible NULL after the call to kstrdup (Jaroslav Kysela) [2003613] - ALSA: synth: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sparc: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ASoC: tegra: Set driver name explicitly (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Use devm_clk_get() (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Correct driver removal order (Jaroslav Kysela) [2003613] - ASoC: tegra20: spdif: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Use devm_clk_get() (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Add system level suspend-resume callbacks (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Add reset control (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Correct driver removal order (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra20_das: align function prototypes (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra20_das: clarify expression (Jaroslav Kysela) [2003613] - ASoC: tegra: remove unneeded semicolon (Jaroslav Kysela) [2003613] - ASoC: tegra: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [2003613] - ASoC: tegra20: ac97: Add reset control (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add support for SoundWire of TGL-H-RVP (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add mutual exclusion between PCH DMIC and RT715 (Jaroslav Kysela) [2003613] - ASoC: codecs: wsa881x: fix return values from kcontrol put (Jaroslav Kysela) [2003613] - ASoc: wm8731: Drop empty spi_driver remove callback (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: channel -> channels rename (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505/TAS2521 channel count (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Disable irq on slave ports in the remove function (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Fix a double irq free in the remove function (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Fix a memory leak in the error handling path of the probe function (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: make array clocks static, makes object smaller (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505/TAS2521 processing block selection (Jaroslav Kysela) [2003613] - ASoC: da7218: Drop CONFIG_OF ifdef (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505 volume controls (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Make aic32x4_remove() return void (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: add support for TAS2505 (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: add type to device private data struct (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: fix reversed bclk/wclk master bits (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: Fix jack detection after suspend (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: Make regmap cache only on probe() (Jaroslav Kysela) [2003613] - ASoC: sigmadsp: Remove the repeated declaration (Jaroslav Kysela) [2003613] - ASoC: rt286: Remove redundant assignment to d_len_code (Jaroslav Kysela) [2003613] - ASoC: codecs: rt1019: clarify expression (Jaroslav Kysela) [2003613] - ASoC: rt1019: Add non_legacy_dai_naming config (Jaroslav Kysela) [2003613] - ASoC: rk3328: fix missing clk_disable_unprepare() on error in rk3328_platform_probe() (Jaroslav Kysela) [2003613] - ASoC: mediatek: mt6359: Fix unexpected error in bind/unbind flow (Jaroslav Kysela) [2003613] - ASoc: codecs: mt6359: remove useless initializations (Jaroslav Kysela) [2003613] - ASoC: mediatek: mt6359: convert to use module_platform_driver (Jaroslav Kysela) [2003613] - ASoC: ics43432: add CMM-4030D-261 support (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Fix return value in hdmi_codec_set_jack() (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Get ELD in before reporting plugged event (Jaroslav Kysela) [2003613] - ASoC: cs53l30: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs43130: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs42l52: Minor tidy up of error paths (Jaroslav Kysela) [2003613] - ASoC: cs42l73: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs4265: Minor tidy up of error paths (Jaroslav Kysela) [2003613] - ASoC: cs35l36: Remove unneeded variable initialisation (Jaroslav Kysela) [2003613] - ASoC: cs35l35: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs35l35: Correct errata handling (Jaroslav Kysela) [2003613] - ASoC: cs35l34: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs35l33: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cirrus: Add helper function for reading the device ID (Jaroslav Kysela) [2003613] - ASoC: cs35l32: Add missing regmap use_single config (Jaroslav Kysela) [2003613] - ASoC: cs35l32: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: adav80x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - ASoC: codecs: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ASoC: ab8500: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: fix spelling mistake in Kconfig "comunicate" -> "communicate" (Jaroslav Kysela) [2003613] - ASoC: 88pm860x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: amd: renoir: Remove redundant assignment to pdm_ctrl and pdm_enable and pdm_dma_enable (Jaroslav Kysela) [2003613] - ASoC: amd: add missing break (Jaroslav Kysela) [2003613] - ALSA: sh: Fix compile warning wrt const (Jaroslav Kysela) [2003613] - ALSA: sh: Fix unused variable warnings (Jaroslav Kysela) [2003613] - ALSA: sh: Constify snd_device_ops definitions (Jaroslav Kysela) [2003613] - ALSA: sh: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [2003613] - ALSA: sh: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ALSA: aica: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ALSA: sh: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [2003613] - ALSA: ps3: fix spelling typo of values (Jaroslav Kysela) [2003613] - ALSA: ppc: drop if block with always false condition (Jaroslav Kysela) [2003613] - ALSA: ppc: remove redundant checks in PS3 driver probe (Jaroslav Kysela) [2003613] - ALSA: ppc: fix error return code in snd_pmac_probe() (Jaroslav Kysela) [2003613] - ALSA: ppc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [2003613] - ALSA: ppc: Constify snd_device_ops definitions (Jaroslav Kysela) [2003613] - ALSA: ppc: keywest: remove outdated comment (Jaroslav Kysela) [2003613] - ALSA: poewrmac: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pcmcia: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pci: vx222: fix kernel-doc warning (Jaroslav Kysela) [2003613] - ALSA: Remove trailing semicolon in macros (Jaroslav Kysela) [2003613] - ALSA: hda: generic: Remove redundant assignment to dac (Jaroslav Kysela) [2003613] - ALSA: hda: Allow model option to specify PCI SSID alias (Jaroslav Kysela) [2003613] - ALSA: asihpi: fix comment syntax in file headers (Jaroslav Kysela) [2003613] - ALSA: harmony: Drop superfluous address setup (Jaroslav Kysela) [2003613] - ALSA: parisc: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx: fix kernel-doc warning (Jaroslav Kysela) [2003613] - ALSA: aloop: Constify ops structs (Jaroslav Kysela) [2003613] - ASoC: SOF: Drop resindex_dma_base, dma_engine, dma_size from sof_dev_desc (Jaroslav Kysela) [2003613] - ALSA: wavefront: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: wavefront: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sscape: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sc6000: Use explicit cast for __iomem pointer (Jaroslav Kysela) [2003613] - ALSA: sc6000: Assign vport directly on card's private_data (Jaroslav Kysela) [2003613] - ALSA: sc6000: Fix incorrect sizeof operator (Jaroslav Kysela) [2003613] - ALSA: sc6000: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sb: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - Revert "ALSA: sb: fix a missing check of snd_ctl_add" (Jaroslav Kysela) [2003613] - ALSA: sb: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sb8: Add a comment note regarding an unused pointer (Jaroslav Kysela) [2003613] - ALSA: sb: Fix potential ABBA deadlock in CSP driver (Jaroslav Kysela) [2003613] - ALSA: sb: Fix potential double-free of CSP mixer elements (Jaroslav Kysela) [2003613] - ALSA: sb: Minor coding style fixes (Jaroslav Kysela) [2003613] - ALSA: sb: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sb: Fix two use after free in snd_sb_qsound_build (Jaroslav Kysela) [2003613] - ALSA: emu8000: Fix a use after free in snd_emu8000_create_mixer (Jaroslav Kysela) [2003613] - ALSA: opti9xx: fix missing { } around an if block (Jaroslav Kysela) [2003613] - ALSA: opti9xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: opti9xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: opl3sa2: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: opl3sa2: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: msnd: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: msnd: Use proper mmap method (Jaroslav Kysela) [2003613] - ALSA: gus: Fix repeated probe for ISA interwave card (Jaroslav Kysela) [2003613] - Revert "ALSA: gus: add a check of the status of snd_ctl_add" (Jaroslav Kysela) [2003613] - ALSA: gus: fix null pointer dereference on pointer block (Jaroslav Kysela) [2003613] - ALSA: gus: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: gus: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: gus: Replace unsafe strcpy() with strscpy() (Jaroslav Kysela) [2003613] - ALSA: galaxy: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: Replace with fallthrough pseudo keyword in the remaining places (Jaroslav Kysela) [2003613] - ALSA: es18xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es18xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: isa: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1688: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: wss: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs423x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs423x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - sound/oss/dmasound: Remove superfluous "break" (Jaroslav Kysela) [2003613] - sound/oss/dmasound: Remove superfluous "break" (Jaroslav Kysela) [2003613] - ALSA: cmi8330: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: isa: Fix error return code in snd_cmi8330_probe() (Jaroslav Kysela) [2003613] - ALSA: cmi8330: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cmi8328: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt2320: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt2320: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als100: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als100: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: adlib: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1848: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1816a: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1816a: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: i2c: tea6330t: Remove redundant initialization of variable err (Jaroslav Kysela) [2003613] - ALSA: i2c: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: add missing include files (Jaroslav Kysela) [2003613] - ALSA: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ALSA: aoa: remove unnecessary oom message (Jaroslav Kysela) [2003613] - ALSA: arm: Remove unnecessary variables (Jaroslav Kysela) [2003613] - ALSA: ac97: fix PM reference leak in ac97_bus_remove() (Jaroslav Kysela) [2003613] - ALSA: ac97: Constify static struct attribute_group (Jaroslav Kysela) [2003613] - ALSA: virtio: fix kernel-doc (Jaroslav Kysela) [2003613] - ALSA: virtio: use module_virtio_driver() to simplify the code (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce device suspend/resume support (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce PCM channel map support (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce jack support (Jaroslav Kysela) [2003613] - ALSA: virtio: PCM substream operators (Jaroslav Kysela) [2003613] - ALSA: virtio: handling control and I/O messages for the PCM device (Jaroslav Kysela) [2003613] - ALSA: virtio: build PCM devices and substream hardware descriptors (Jaroslav Kysela) [2003613] - ALSA: virtio: handling control messages (Jaroslav Kysela) [2003613] - ALSA: virtio: add virtio sound driver (Jaroslav Kysela) [2003613] - uapi: virtio_ids: add a sound device type ID from OASIS spec (Jaroslav Kysela) [2003613] - ALSA: firewire: Fix C++ style comments in uapi header (Jaroslav Kysela) [2003613] - ALSA: uapi: Fix a C++ style comment in asound.h (Jaroslav Kysela) [2003613] - ASoC: topology: Fix stub for snd_soc_tplg_component_remove() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: indicate dai_fmt if exist (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: indicate missing CPU/Codec numbers for debug (Jaroslav Kysela) [2003613] - ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK/BCLK_ES bits (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup dev_dbg() to use 1 line (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup debug info for clock (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Increase maximum DAI links limit to 512 (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Use set_jack ops to set jack (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Multi) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Single) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Multi) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Single) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Nulti) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Single) (Jaroslav Kysela) [2003613] - ASoC: add Audio Graph Card2 Custom Sample (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add Codec2Codec support (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add DPCM support (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add Multi CPU/Codec support (Jaroslav Kysela) [2003613] - ASoC: add Audio Graph Card2 driver (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add codec2codec support (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add asoc_graph_is_ports0() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Fixup CPU endpoint hw_params in a BE<->BE link (Jaroslav Kysela) [2003613] - ASoC: audio-graph: respawn Platform Support (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Avoid over-allocating DLCs (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_dai_link_of_dpcm() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_link_init() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_parse_node() (Jaroslav Kysela) [2003613] - ASoC: simple-card: Fix breakage on kontron-sl28-var3-ads2 (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_dai_link_of_dpcm() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_link_init() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: add graph_link_init() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: add graph_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove Platform support (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove unused "node" from graph_parse_mclk_fs() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove "audio-graph-card, " preix support (Jaroslav Kysela) [2003613] - ASoC: audio-graph: check ports if exists (Jaroslav Kysela) [2003613] - ASoC: audio-graph: move audio_graph_remove() to simple-card-utils.c (Jaroslav Kysela) [2003613] - ASoC: tegra: Add driver remove() callback (Jaroslav Kysela) [2003613] - ASoC: audio-graph: move audio_graph_card_probe() to simple-card-utils.c (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Allocate link info structure on heap (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Increase maximum number of links to 128 (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Propagate errors on too many links (Jaroslav Kysela) [2003613] - ASoC: audio-graph: use simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: audio-graph: use asoc_link_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: use simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: use asoc_link_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: remove unused variable from simple_parse_of() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup asoc_simple_parse_convert() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: multi support at asoc_simple_canonicalize_cpu/platform() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: care multi DAI at asoc_simple_clean_reference() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: remove asoc_simple_parse_xxx() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: use for_each_prop_xxx() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: remove li->dais/li->conf (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: setup dai_props cpu_dai/codec_dai at initial timing (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: share dummy DAI and reduce memory (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: enable flexible CPU/Codec/Platform (Jaroslav Kysela) [2003613] - ASoC: simple-card: fix possible uninitialized single_cpu local variable (Jaroslav Kysela) [2003613] - ASoC: simple-card: cleanup graph_for_each_link() (Jaroslav Kysela) [2003613] - ASoC: simple-card: count DAI / link numbers as in order (Jaroslav Kysela) [2003613] - ASoC: audio-graph: cleanup graph_for_each_link() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: count DAI / link numbers as in order (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: alloc dai_link information for CPU/Codec/Platform (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils.c: remove old comment (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Do not handle device clock (Jaroslav Kysela) [2003613] - ASoC: generic: simple-card-utils: remove useless assignment (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Fix device module clock (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Rename functions needed for export (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Expose helpers from audio graph (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Expose new members for asoc_simple_priv (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Support empty Codec endpoint (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Identify 'no_pcm' DAI links for DPCM (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Use of_node and DAI for DPCM DAI link names (Jaroslav Kysela) [2003613] - ALSA: memalloc: Drop superfluous snd_dma_buffer_sync() declaration (Jaroslav Kysela) [2003613] - ASoC: SOF: dai: include new flags for DAI_CONFIG (Jaroslav Kysela) [2003613] - ASoC: SOF: dai: mirror group_id definition added in firmware (Jaroslav Kysela) [2003613] - ALSA: core: Use READ_ONCE() / WRITE_ONCE() for power state change (Jaroslav Kysela) [2003613] - ALSA: hda_audio_ext: fix kernel-doc (Jaroslav Kysela) [2003613] - ALSA: make snd_kcontrol_new name a normal string (Jaroslav Kysela) [2003613] - ASoC: constify of_phandle_args in snd_soc_get_dai_name() (Jaroslav Kysela) [2003613] - ASoC: tas2770: Fix setting of high sample rates (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix the wrong jack type detected (Jaroslav Kysela) [2003613] - ASoC: tegra: Restore headphones jack name on Nyan Big (Jaroslav Kysela) [2003613] - ASoC: tegra: Add DAPM switches for headphones and mic jack (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add new ADL-P variant (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add ADL-N support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Retry codec probing if it fails (Jaroslav Kysela) [2003613] - ASoC: amd: fix uninitialized variable in snd_acp6x_probe() (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix crash due to out of scope stack vars (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix crash due to out of scope stack vars (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for ADX (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for AMX (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for Mixer (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Balance runtime PM count (Jaroslav Kysela) [2003613] - ASoC: SOF: hda: reset DAI widget before reconfiguring it (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Set the max SPI speed for the whole device (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entry for ESSX8336 on CML (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: Set mach->id field on comp_ids matches (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in Mixer (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in ADX (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in AMX (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in AHUB (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in DSPK (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in DMIC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in I2S (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in ADMAIF (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in DSPK (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in DMIC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in I2S (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in ADMAIF (Jaroslav Kysela) [2003613] - ASoC: topology: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2003613] - ASoC: SOF: build compression interface into snd_sof.ko (Jaroslav Kysela) [2003613] - ASoC: rt5682: Re-detect the combo jack after resuming (Jaroslav Kysela) [2003613] - ASoC: rt5682: Avoid the unexpected IRQ event during going to suspend (Jaroslav Kysela) [2003613] - ASoC: rt1011: revert 'I2S Reference' to SOC_ENUM_EXT (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add the compatibility with rt9120s (Jaroslav Kysela) [2003613] - ASoC: rt9120: Fix clock auto sync issue when fs is the multiple of 48 (Jaroslav Kysela) [2003613] - ASoC: rt9120: Update internal ocp level to the correct value (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B12 product (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0B29 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B29 product (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0B13 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B13 product (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B11 product (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B00 and 0B01 products (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0AF3 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0AF3 product (Jaroslav Kysela) [2003613] - ASoC: DAPM: Cover regression by kctl change notification fix (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: fix hotplug when only codec is suspended (Jaroslav Kysela) [2003613] - ASoC: SOF:control: Fix variable type in snd_sof_refresh_control() (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Change monitor widgets to siggens (Jaroslav Kysela) [2003613] - ASoC: tlv320aic3x: Make aic3x_remove() return void (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: use const for all uses of snd_soc_acpi_codecs (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi-cht: shrink tables using compatible IDs (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi-byt: shrink tables using compatible IDs (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: use comp_ids to enumerate rt5682s (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: detect codec variant in probe function (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: add comp_ids field for machine driver matching (Jaroslav Kysela) [2003613] - ASoC: Stop dummy from overriding hwparams (Jaroslav Kysela) [2003613] - ASoC: topology: Change topology device to card device (Jaroslav Kysela) [2003613] - ASoC: topology: Use correct device for prints (Jaroslav Kysela) [2003613] - ASoC: topology: Check for dapm widget completeness (Jaroslav Kysela) [2003613] - ASoC: topology: Add header payload_size verification (Jaroslav Kysela) [2003613] - ASoC: core: Remove invalid snd_soc_component_set_jack call (Jaroslav Kysela) [2003613] - ASoC: amd: acp: select CONFIG_SND_SOC_ACPI (Jaroslav Kysela) [2003613] - ASoC: Intel: glk_rt5682_max98357a: support ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: es8316: add support for ESSX8336 ACPI _HID (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct configuring of switch inversion from ts-inv (Jaroslav Kysela) [2003613] - ASoC: fix unmet dependencies on GPIOLIB for SND_SOC_DMIC (Jaroslav Kysela) [2003613] - ASoC: amd: acp: fix Kconfig dependencies (Jaroslav Kysela) [2003613] - ASoC: rt5682-i2c: Use devm_clk_get_optional for optional clock (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entry for ESSX8336 on JSL (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Fix return value check in acp_machine_select() (Jaroslav Kysela) [2003613] - ASoC: max98520: add max98520 audio amplifier driver (Jaroslav Kysela) [2003613] - ASoC: nau8821: clarify out-of-bounds check (Jaroslav Kysela) [2003613] - ASoC: nau8821: fix kernel-doc (Jaroslav Kysela) [2003613] - ASoC: rt5682s: use 'static' qualifier (Jaroslav Kysela) [2003613] - ASoC: topology: handle endianness warning (Jaroslav Kysela) [2003613] - ASoC: amd: acp: SND_SOC_AMD_ACP_COMMON should depend on X86 && PCI (Jaroslav Kysela) [2003613] - ASoC: amd: acp: SND_SOC_AMD_{LEGACY_MACH,SOF_MACH} should depend on X86 && PCI && I2C (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Wrap AMD Audio ACP components in SND_SOC_AMD_ACP_COMMON (Jaroslav Kysela) [2003613] - ASoC: cs42l42: free_irq() before powering-down on probe() fail (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Reset and power-down on remove() and failed probe() (Jaroslav Kysela) [2003613] - ASoC: nau8825: add clock management for power saving (Jaroslav Kysela) [2003613] - ASoC: nau8825: add set_jack coponment support (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Prevent NULL pointer deref in interrupt handler (Jaroslav Kysela) [2003613] - ASoC: wm8962: Convert to devm_clk_get_optional() (Jaroslav Kysela) [2003613] - ASoC: fix unmet dependency on GPIOLIB for SND_SOC_MAX98357A (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Make cs35l41_remove() return void (Jaroslav Kysela) [2003613] - ASoC: tegra: Set default card name for Trimslice (Jaroslav Kysela) [2003613] - ASoC: tegra: Restore AC97 support (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add acp_machine struct for renoir platform. (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Downsizing the DAC volume scale (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Remove unused runtime_suspend/runtime_resume callbacks (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for ACPI table match entry (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use device_property API instead of of_property (Jaroslav Kysela) [2003613] - ASoC: Intel: Move soc_intel_is_foo() helpers to a generic header (Jaroslav Kysela) [2003613] - ASoC: amd: enable Yellow Carp platform machine driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add YC machine driver using dmic (Jaroslav Kysela) [2003613] - ASoC: amd: create platform device for acp6x machine driver (Jaroslav Kysela) [2003613] - ASoC: amd: enable Yellow carp acp6x drivers build (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pci driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm driver dma ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x irq handler (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm platform driver (Jaroslav Kysela) [2003613] - ASoC: amd: add platform devices for acp6x pdm driver and dmic driver (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x init/de-init functions (Jaroslav Kysela) [2003613] - ASoC: amd: add Yellow Carp ACP PCI driver (Jaroslav Kysela) [2003613] - ASoC: amd: add Yellow Carp ACP6x IP register header (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add support for RT5682-VS codec (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add support for Maxim amplifier codec (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add SOF audio support on Chrome board (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add legacy sound card support for Chrome audio (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add generic machine driver support for ACP cards (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add callback for machine driver on ACP (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add I2S support on Renoir platform (Jaroslav Kysela) [2003613] - ASoC: amd: Add common framework to support I2S on ACP SOC (Jaroslav Kysela) [2003613] - ASoC: soc-core: tidyup empty function (Jaroslav Kysela) [2003613] - ASoC: soc-component: add snd_soc_component_is_codec() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step2 (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step1 (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Always enable TS_PLUG and TS_UNPLUG interrupts (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix WARN in remove() if running without an interrupt (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Mark OSC_SWITCH_STATUS register volatile (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Set correct SRC MCLK (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Allow time for HP/ADC to power-up after enable (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use PLL for SCLK > 12.288MHz (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't claim to support 192k (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Defer probe if request_threaded_irq() returns EPROBE_DEFER (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't set defaults for volatile registers (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct some register default values (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Always configure both ASP TX channels (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't reconfigure the PLL while it is running (Jaroslav Kysela) [2003613] - ASoC: soc-component: improve error reporting for register access (Jaroslav Kysela) [2003613] - ASoC: amd: enable vangogh platform machine driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh machine driver (Jaroslav Kysela) [2003613] - ASoc: amd: create platform device for VG machine driver (Jaroslav Kysela) [2003613] - ASoC: test-component: add Test Component for Sound debug/test (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix a little pop while playback (Jaroslav Kysela) [2003613] - ASoC: rt1011: Fix 'I2S Reference' enum control (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: amd: vangogh: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [2003613] - ASoC: rt9120: Drop rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: rt1011: Fix 'I2S Reference' enum control caused error (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Ensure 0dB full scale volume is used for headsets (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: use devm_clk_get_optional() for mclk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: switch to using devm_fwnode_gpiod_get() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: use devm_clk_get_optional() for mclk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: amd: Kconfig: Select fch clock support with machine driver (Jaroslav Kysela) [2003613] - ASoC: soc-core: fix null-ptr-deref in snd_soc_del_component_unlocked() (Jaroslav Kysela) [2003613] - ASoC: SOF: prepare code to allocate IPC messages in fw_ready (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: restore mixer functionality (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix hp pop produced immediately after resuming (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce fragment elapsed notification API (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Use newly introduced generic IPC stream ops (Jaroslav Kysela) [2003613] - ASoC: SOF: Make Intel IPC stream ops generic (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce snd_sof_mailbox_read / snd_sof_mailbox_write callbacks (Jaroslav Kysela) [2003613] - ASoC: SOF: pipelines: Harmonize all functions to use struct snd_sof_dev (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: do not power down primary core during topology removal (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Dump registers and stack when SOF_DBG_DUMP_REGS is set (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-loader: Drop SOF_DBG_DUMP_REGS flag from dbg_dump calls (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Drop SOF_DBG_DUMP_REGS flag when firmware start fails (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Clean up snd_sof_get_status() prints (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda: Drop 'error' prefix from error dump functions (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce macro to set the firmware state (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: Force DSP panic dumps to be printed (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Re-enable dumps after successful IPC tx (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Print out the fw_state along with the DSP dump (Jaroslav Kysela) [2003613] - ASoC: SOF: Drop SOF_DBG_DUMP_FORCE_ERR_LEVEL and sof_dev_dbg_or_err (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda-loader: Use snd_sof_dsp_dbg_dump() for DSP dump (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Add SOF_DBG_DUMP_OPTIONAL flag for DSP dumping (Jaroslav Kysela) [2003613] - ASoC: SOF: debug/ops: Move the IPC and DSP dump functions out from the header (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: atom: No need to do a DSP dump in atom_run() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Print the DSP dump if boot fails (Jaroslav Kysela) [2003613] - ASoC: SOF: Print the dbg_dump and ipc_dump once to reduce kernel log noise (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc and dsp dump: Add markers for better visibility (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Swap the dsp_dump and ipc_dump sequence for fw_exception (Jaroslav Kysela) [2003613] - ASoC: SOF: core: debug: force all processing on primary core (Jaroslav Kysela) [2003613] - ASoC: max98927: Handle reset gpio when probing i2c (Jaroslav Kysela) [2003613] - ASoC: DAPM: Fix missing kctl change notifications (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Switch to use gpiod_get_optional() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: SOF: OF: Add fw_path and tplg_path parameters (Jaroslav Kysela) [2003613] - ASoC: amd: acp-rt5645: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: return error if sof_connect_dai_widget() fails (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: allow for dynamic pipelines override for debug (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: show clks_control value in dynamic debug (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dai: improve SSP DAI handling for dynamic pipelines (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: add new flags for DAI_CONFIG (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add missing quirk for Dell SKU 0A45 (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add missing quirk for TGL SDCA single amp (Jaroslav Kysela) [2003613] - ASoC: Intel: add machine driver for SOF+ES8336 (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: apl/glk/tgl: add entry for devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ASoC: Intel: cht_bsw_nau8824: Set card.components string (Jaroslav Kysela) [2003613] - ASoC: nau8824: Add a nau8824_components() helper (Jaroslav Kysela) [2003613] - ASoC: nau8824: Add DMI quirk mechanism for active-high jack-detect (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix NAU8824_JACK_LOGIC define (Jaroslav Kysela) [2003613] - ASoC: rt5651: Use IRQF_NO_AUTOEN when requesting the IRQ (Jaroslav Kysela) [2003613] - ASoC: es8316: Use IRQF_NO_AUTOEN when requesting the IRQ (Jaroslav Kysela) [2003613] - ASoC: nau8821: new driver (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: Add kernel parameter for topology verification (Jaroslav Kysela) [2003613] - ASoC: SOF: Add support for dynamic pipelines (Jaroslav Kysela) [2003613] - treewide: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: make sure DAI widget is set up before IPC (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce widget use_count (Jaroslav Kysela) [2003613] - ASoC: SOF: Don't set up widgets during topology parsing (Jaroslav Kysela) [2003613] - ASoC: SOF: restore kcontrols for widget during set up (Jaroslav Kysela) [2003613] - ASoC: SOF: Add new fields to snd_sof_route (Jaroslav Kysela) [2003613] - AsoC: dapm: export a couple of functions (Jaroslav Kysela) [2003613] - ASoC: SOF: sof-audio: add helpers for widgets, kcontrols and dai config set up (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: Add new token for dynamic pipeline (Jaroslav Kysela) [2003613] - ASoC: SOF: control: Add access field in struct snd_sof_control (Jaroslav Kysela) [2003613] - ASoC: topology: change the complete op in snd_soc_tplg_ops to return int (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix HP noise caused by SAR mode switch when the system resumes (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Enable ASRC auto-disable to fix pop during jack plug-in while playback (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp (Jaroslav Kysela) [2003613] - ASoC: tegra: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: rt5682: move clk related code to rt5682_i2c_probe (Jaroslav Kysela) [2003613] - ASoC: rt5682: Use clk_hw based APIs for registration (Jaroslav Kysela) [2003613] - ASoC: rt5682: Drop usage of __clk_get_name() (Jaroslav Kysela) [2003613] - ASoC: SOF: Change SND_SOC_SOF_TOPLEVEL from config to menuconfig (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Revise the macro RT5682S_PLLB_SRC_MASK (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Use dev_dbg instead of pr_debug (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Remove the volatile SW reset register from reg_default (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix headphone vs headset, button-press detection no longer working (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: update platform device name for Maxim amplifier (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Make the error prints consistent in tx_wait_done() (Jaroslav Kysela) [2003613] - ASoC: SOF: prefix some terse and cryptic dev_dbg() with __func__ (Jaroslav Kysela) [2003613] - ASoC: SOF: add error handling to snd_sof_ipc_msg_data() (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: add header file for ops (Jaroslav Kysela) [2003613] - ASoC: SOF: pm: fix a stale comment (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-stream: Print stream name on STREAM_SD_OFFSET timeout (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dai: fix potential locking issue (Jaroslav Kysela) [2003613] - ASoC: ak4458: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: ak5558: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: dwc-i2s: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ak4671: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: alc5623: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: bcm: Convert to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cpcap: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: Fix spelling mistake "Unsupport" -> "Unsupported" (Jaroslav Kysela) [2003613] - ASoC: ad193x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: tegra: Constify static snd_soc_dai_ops structs (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use two thresholds and increased wait time for manual type detection (Jaroslav Kysela) [2003613] - ASoC: adau1977: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau17x1: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1701: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1373: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1372: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ad1836: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ep93xx: Convert to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: samsung: add missing "fallthrough;" (Jaroslav Kysela) [2003613] - ASoC: ak4642: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Use correct version to initialize Class H (Jaroslav Kysela) [2003613] - ASoC: alc5632: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: ak4104: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ak4118: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: zl38060: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cs4341: Add SPI device ID table (Jaroslav Kysela) [2003613] - ASoC: pcm179x: Add missing entries SPI to device ID table (Jaroslav Kysela) [2003613] - ASoC: pl1022_rdk: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: pl1022_ds: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: mpc8610_hpcd: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-sgtl5000: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-es8328: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-audmix: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl_sai: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-mqs: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-esai: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-audmix: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: eureka-tlv320: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cros_ec_codec: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: pcm512x: Mend accesses to the I2S_1 and I2S_2 registers (Jaroslav Kysela) [2003613] - ASoC: codecs: max98390: simplify getting the adapter of a client (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: SOF: Remove struct sof_ops_table and sof_get_ops() macro (Jaroslav Kysela) [2003613] - ASoC: rt5682s: make rt5682s_aif2_dai_ops and rt5682s_soc_component_dev (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based Mixer driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based ADX driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based AMX driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based SFC driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based MVC driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add routes for few AHUB modules (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: Don't reconnect an already active BE (Jaroslav Kysela) [2003613] - ASoC: compress/component: Use module_get_when_open/put_when_close for cstream (Jaroslav Kysela) [2003613] - ASoC: soc-component: Convert the mark_module to void* (Jaroslav Kysela) [2003613] - ASoC: SOF: Rename sof_arch_ops to dsp_arch_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Remove redundant error check from sof_ipc_tx_message_unlocked (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Print 0x prefix for errors in ipc_trace/stream_message() (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Clarify the parameter name for ipc_trace_message() (Jaroslav Kysela) [2003613] - ASoC: SOF: trace: Omit error print when waking up trace sleepers (Jaroslav Kysela) [2003613] - misc: cs35l41: Remove unused pdn variable (Jaroslav Kysela) [2003613] - ASoC: SOF: imx8m: add SAI1 info (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Minor fix all errors reported by checkpatch.pl script (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Move probe work related code under a single if () branch (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Implement Manual Type detection as fallback (Jaroslav Kysela) [2003613] - ASoC: SOF: sof-probes: Correct the function names used for snd_soc_cdai_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Rename hda-compress.c to hda-probes.c (Jaroslav Kysela) [2003613] - ASoC: SOF: probe: Merge and clean up the probe and compress files (Jaroslav Kysela) [2003613] - ASoC: SOF: compress: move and export sof_probe_compr_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: pcm: Remove non existent CONFIG_SND_SOC_SOF_COMPRESS reference (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Add probe message logging to ipc_log_header() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Re-phrase the missing firmware error to avoid duplication (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: release_firmware() on load failure to avoid batching (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: No need to export the snd_sof_debugfs_io_item() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Use the generic ops for region debugfs handling (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Add generic API and ops for DSP regions (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Do not use 'bar' as parameter for block_read/write (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: No need to export snd_sof_fw_parse_ext_data() (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Do not initialize the snd_sof_dsp_ops.read64 (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Remove snd_sof_dsp_mailbox_init() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: bdw: Set the mailbox offset directly in bdw_probe (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: imx8m: Bar index is only valid for IRAM and SRAM types (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: imx8: Bar index is only valid for IRAM and SRAM types (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fix a bunch of trivial code formating/style issues (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fixup the error messages (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Don't overwrite returned error code (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Combine adjacent register writes (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Use regmap_read_poll_timeout to wait for OTP boot (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fix use of an uninitialised variable (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: load_firmware callback is mandatory, treat it like that (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Relocate inline definitions from hda.h to hda.c for sdw (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Remove boot_firmware skl and iccmax_icl declarations (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dsp: Declare locally used functions as static (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: Do no initialize resindex_dma_base (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_mx98360a board (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015 board (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015p board (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: support ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: SOF: Fix DSP oops stack dump output contents (Jaroslav Kysela) [2003613] - ASoC: pcm5102a: increase rate from 192k to 384k (Jaroslav Kysela) [2003613] - ASoC: rt1011: add i2s reference control for rt1011 (Jaroslav Kysela) [2003613] - ASoC: SOF: Handle control change notification from firmware (Jaroslav Kysela) [2003613] - ASoC: SOF: control: fix a typo in put operations for kcontrol (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Add driver for ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: SOF: core: allow module parameter to override dma trace Kconfig (Jaroslav Kysela) [2003613] - ASoC: soc-topology: Move template info print soc_tplg_dapm_widget_create() (Jaroslav Kysela) [2003613] - ASoC: amd: acp: declare and add prefix to 'bt_uart_enable' symbol (Jaroslav Kysela) [2003613] - ASoC: cs35l41: CS35L41 Boosted Smart Amplifier (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: tag SoundWire BEs as non-atomic (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: Fix CONFIG_SND_SOC_SDW_MOCKUP select (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix headset background noise when S3 state (Jaroslav Kysela) [2003613] - ASoC: Revert PCM trigger changes (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: test refcount before triggering (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: protect BE dailink state changes in trigger (Jaroslav Kysela) [2003613] - ASoC: dwc: Get IRQ optionally (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix the vol+ button detection issue (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Make rt5640_jack_gpio/rt5640_jack2_gpio static (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: remove duplicate include (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: move common ATOM stuff to module (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: byt: prepare split between Baytrail and Merrifield (Jaroslav Kysela) [2003613] - ASoC: rt1015: remove possible unused variable `bclk_ms' (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Mark hp_elitepad_1000g2_jack?_check functions static (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Select first entry for singular pipe config arrays (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Properly configure modules with generic extension (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Support modules with generic extension (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Support multiple format configs (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Simplify m_state for loadable modules (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix passing loadable flag for module (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix module configuration for KPB and MIXER (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix module resource and format selection (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Select proper format for NHLT blob (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Leave data as is when invoking TLV IPCs (Jaroslav Kysela) [2003613] - ASoC: Intel: kbl_da7219_max98927: Fix format selection for max98373 (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Revert PCM buffer address setup workaround again (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for HP Elite Pad 1000G2 jack-detect (Jaroslav Kysela) [2003613] - ASoC: Intel: bytct_rt5640: Add a separate "Headset Mic 2" DAPM pin for the mic on the 2nd jack (Jaroslav Kysela) [2003613] - ASoC: rt5640: Add rt5640_set_ovcd_params() helper (Jaroslav Kysela) [2003613] - ASoC: rt5640: Add optional hp_det_gpio parameter to rt5640_detect_headset() (Jaroslav Kysela) [2003613] - ASoC: rt5640: Delay requesting IRQ until the machine-drv calls set_jack (Jaroslav Kysela) [2003613] - ASoC: rt5640: Move rt5640_disable_jack_detect() up in the rt5640.c file (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Fix breakage for PCM buffer address setup (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Use cfg-lineout:2 in the components string (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Fix incorrect usage of of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Fix incorrect usage of of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Use of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Use of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: soc-ac97: cleanup cppcheck warning (Jaroslav Kysela) [2003613] - ASoC: soc-component: cleanup cppcheck warning at snd_soc_pcm_component_pm_runtime_get() (Jaroslav Kysela) [2003613] - ASoC: soc-jack: cleanup cppcheck warning for CONFIG_GPIOLIB (Jaroslav Kysela) [2003613] - ASoC: soc-jack: cleanup cppcheck warning at snd_soc_jack_report() (Jaroslav Kysela) [2003613] - ASoC: soc-dai: cleanup cppcheck warning at snd_soc_pcm_dai_new() (Jaroslav Kysela) [2003613] - ASoC: soc-dai: cleanup cppcheck warning at snd_soc_dai_link_set_capabilities() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_copy_user() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_pcm_new() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_pcm_hw_params() (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw_rt711*: keep codec device reference until remove (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: pass card information to init/exit functions (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: get codec device with ACPI instead of bus search (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: handle errors with acpi_dev_get_first_match_dev() (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: harden codec property handling (Jaroslav Kysela) [2003613] - ASoC: rt5682: Remove unused variable in rt5682_i2c_remove() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: make DMI L1 selection more robust (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: simplify logic for DMI_L1 handling (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-stream: remove always true condition (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Kconfig: clarify DMI L1 option description (Jaroslav Kysela) [2003613] - ASoC: rt5682: Properly turn off regulators if wrong device ID (Jaroslav Kysela) [2003613] - ASoC: rt5682: Implement remove callback (Jaroslav Kysela) [2003613] - ASoC: rt5682: Disable irq on shutdown (Jaroslav Kysela) [2003613] - ASoC: rt5682: Adjust headset volume button threshold again (Jaroslav Kysela) [2003613] - ASoC: Intel: Fix platform ID matching (Jaroslav Kysela) [2003613] - ASoC: rt1015p: add new acpi id and comapatible id (Jaroslav Kysela) [2003613] - ASoC: max98390: Add support change dsm param name (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Update module authors (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Assume 24-bit samples are in 32-bit slots (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Validate dai_set_sysclk() frequency (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add PLL configuration for 44.1kHz/16-bit (Jaroslav Kysela) [2003613] - ASoC: rt5640: Silence warning message about missing interrupt (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix mono playback (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Constrain sample rate to prevent illegal SCLK (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix LRCLK frame start edge (Jaroslav Kysela) [2003613] - ASoC: cs42l42: PLL must be running when changing MCLK_SRC_SEL (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for set_jack calls (Jaroslav Kysela) [2003613] - ASoC: mt6359-accdet.c: remove useless assignments (Jaroslav Kysela) [2003613] - ASoC: max98090: remove duplicate status reads and useless assignmment (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at soc_dapm_dai_stream_event() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_new_controls() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_weak_routes() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_add_routes() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_del_route() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_seq_run() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_seq_check_event() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_new_dai_link() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_new_pga() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_set_mixer_path_status() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_connect_mux() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_wcache_lookup() (Jaroslav Kysela) [2003613] - ASoC: amd: vangogh: Drop superfluous mmap callback (Jaroslav Kysela) [2003613] - ASoC: sprd: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: qcom: qdsp6: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: mpc5200: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl_dma: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl_asrc_dma: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: tegra: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl: imx-pcm-fiq: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: bcm: Use managed PCM buffer allocation (Jaroslav Kysela) [2003613] - ALSA: pxa2xx: Use managed PCM buffer allocation (Jaroslav Kysela) [2003613] - ASoC: rt5514: make array div static const, makes object smaller (Jaroslav Kysela) [2003613] - ASoC: codecs: ad193x: add support for 96kHz and 192kHz playback rates (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_xr_sx() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_get_xr_sx() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_limit_volume() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_volsw_sx() (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw_max98373: remove useless inits (Jaroslav Kysela) [2003613] - ASoC: Intel: update sof_pcm512x quirks (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Use DMI string to search for adl_mx98373_rt5682 variant (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add quirk for Dell XPS 9710 (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Remove duplicate control for WNF filter frequency (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix inversion of ADC Notch Switch control (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-ipc: fix reply size checking (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Kconfig: fix SoundWire dependencies (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Fix HP ElitePad 1000 G2 quirk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for a second headset mic input (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for a second headphones output (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add a byt_rt5640_get_codec_dai() helper (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add line-out support (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Move "Platform Clock" routes to the maps for the matching in-/output (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: add snd_sof_dsp_check_sdw_irq ops (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: move sof_intel_dsp_desc() forward (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda: remove HDA_DSP_REG_SNDW_WAKE_STS definition (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: add sdw_shim/alh_base to sof_intel_dsp_desc (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at snd_soc_find_dai_link() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_kcontrol_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_dapm_widget_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_dai_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_process_headers() (Jaroslav Kysela) [2003613] - ASoC: amd: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - soundwire: add flag to ignore all command/control for mockup devices (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix open coded prefix handling (Jaroslav Kysela) [2003613] - ASoC: uniphier: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: xilinx: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: intel: skylake: Drop superfluous mmap callback (Jaroslav Kysela) [2003613] - ASoC: amd: Drop superfluous mmap callbacks (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix bclk calculation for mono (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't allow SND_SOC_DAIFMT_LEFT_J (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct definition of ADC Volume control (Jaroslav Kysela) [2003613] - ASoC: v253_init: eliminate pointer to string (Jaroslav Kysela) [2003613] - ASoC: samsung: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_of_parse_audio_routing() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_of_parse_audio_simple_widgets() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_add_controls() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_unregister_component() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_daifmt_parse_format() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_get_dai_name() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_set_dmi_name() (Jaroslav Kysela) [2003613] - ASoC: Intel: Fix spelling contraction "cant" -> "can't" (Jaroslav Kysela) [2003613] - ASoC: component: Remove misplaced prefix handling in pin control functions (Jaroslav Kysela) [2003613] - ASoC: amd: fix an IS_ERR() vs NULL bug in probe (Jaroslav Kysela) [2003613] - ASoC: rt5682: enable SAR ADC power saving mode during suspend (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at dpcm_runtime_setup_be_chan() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at dpcm_be_is_active() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_get_playback_capture() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_pcm_components_close() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_pcm_apply_msb() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: enforce exclusion between HDaudio and SoundWire (Jaroslav Kysela) [2003613] - ASoC: topology: Select SND_DYNAMIC_MINORS (Jaroslav Kysela) [2003613] - ASoC: rt1015: Remove unnecessary flush work on rt1015 driver (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_da7219_mx98360a: fail to initialize soundcard (Jaroslav Kysela) [2003613] - ASoC: amd: Use dev_probe_err helper (Jaroslav Kysela) [2003613] - ASoC: amd: Don't show messages about deferred probing by default (Jaroslav Kysela) [2003613] - ASoC: amd: enable stop_dma_first flag for cz_dai_7219_98357 dai link (Jaroslav Kysela) [2003613] - ASoC: amd: enable vangogh acp5x driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s dma driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh pci driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s dai driver ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s controller driver (Jaroslav Kysela) [2003613] - ASoC: amd: add ACP5x pcm dma driver ops (Jaroslav Kysela) [2003613] - ASoC: amd: irq handler changes for ACP5x PCM dma driver (Jaroslav Kysela) [2003613] - ASoC: amd: add ACP5x PCM platform driver (Jaroslav Kysela) [2003613] - ASoC: amd: create acp5x platform devices (Jaroslav Kysela) [2003613] - ASoc: amd: add acp5x init/de-init functions (Jaroslav Kysela) [2003613] - ASoC: amd: add Vangogh ACP PCI driver (Jaroslav Kysela) [2003613] - ASoC: amd: add Vangogh ACP5x IP register header (Jaroslav Kysela) [2003613] - ASoC: amd: renoir: Run hibernation callbacks (Jaroslav Kysela) [2003613] - ASoC: rt5682: Adjust headset volume button threshold (Jaroslav Kysela) [2003613] - ASOC: Intel: sof_sdw: add quirk for Intel 'Bishop County' NUC M15 (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix the issue of garbled recording after powerd_dbus_suspend (Jaroslav Kysela) [2003613] - ASoC: amd: reverse stop sequence for stoneyridge platform (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: add a flag to reverse the stop sequence (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: sof_sdw: add SoundWire mockup codecs for tests (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: tgl: add table for SoundWire mockup devices (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: cnl: add table for SoundWire mockup devices (Jaroslav Kysela) [2003613] - ASoC: codecs: add SoundWire mockup device support (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: update quirk for jack detection in ADL RVP (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: include rt711.h for RT711 JD mode (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: extends SOF_RT711_JDSRC to 4 bits (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: code refactor for max98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: code refactor for max98357a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: Enable Bluetooth offload on tgl and adl (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: add support for jsl_cs4242_mx98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: maxim-common: support max98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: maxim-common: support max98357a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: support arbitrary DAI link sequence (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Update ADL descriptor to use ACPI power states (Jaroslav Kysela) [2003613] - ASoC: rt5631: Fix regcache sync errors on resume (Jaroslav Kysela) [2003613] - ASoC: amd: fix spelling mistakes (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: use helper function to get bclk frequency (Jaroslav Kysela) [2003613] - ASoC: SOF: add a helper to get topology configured bclk (Jaroslav Kysela) [2003613] - ASoC: tegra: Use ADMAIF component for DMA allocations (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: fix xrun issue on platform with max98373 (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra: mark runtime-pm functions as __maybe_unused (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Correct suspend-resume callbacks (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Reset global variable (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Switch to use reset-bulk API (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Reset hardware properly (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Use clk_bulk helpers (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Add missing resets (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra210_admaif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra20: spdif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: simple-card: Fill in driver name (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Add missing of_node_put() in imx8_probe() (Jaroslav Kysela) [2003613] - ASoC: Intel: skl_hda_dsp_generic: Update Kconfig documentation (Jaroslav Kysela) [2003613] - ASoC: Intel: use MODULE_DEVICE_TABLE with platform_device_id tables (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add ull suffix for SoundWire _ADR values (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: fix signed/unsigned warning (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_da7219_max98373: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: kbl_da7219_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: glk_rt5682_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: shrink platform_id names below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: remove hdac-hdmi support (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: use mach data for ADL RVP DMIC count (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix a NULL vs IS_ERR() check (Jaroslav Kysela) [2003613] - ASoC: rt711: add two jack detection modes (Jaroslav Kysela) [2003613] - ASoC: samsung: s3c24xx-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: s3c2412-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: pcm: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: soc-core: remove snd_soc_of_parse_daifmt() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: switch to use snd_soc_daifmt_parse_format/clock_provider() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_parse_format/clock_provider() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_clock_provider_fliped() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_clock_provider_from_bitmap() (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt711-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt700-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: fsi: fix spelling mistake (Jaroslav Kysela) [2003613] - ASoC: Intel: bdw-rt5677: remove unnecessary oom message (Jaroslav Kysela) [2003613] - ASoC: spear: spdif_out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: sprd: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: soc-core: Fix the error return code in snd_soc_of_parse_audio_routing() (Jaroslav Kysela) [2003613] - ASoC: sti: sti_uniperif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: spdifrx: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: sai: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: make hdmi_codec_controls static (Jaroslav Kysela) [2003613] - ASoC: rockchip: spdif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: rockchip: pdm: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: rockchip: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct definition of CS42L42_ADC_PDN_MASK (Jaroslav Kysela) [2003613] - ASoC: hisilicon: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: jz4740-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-spdif-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-spdif-in: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-parallel-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-i2s-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-i2s-in: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: dwc: dwc-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra: Squash utils into common machine driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Specify components string for each card (Jaroslav Kysela) [2003613] - ASoC: tegra: Unify ASoC machine drivers (Jaroslav Kysela) [2003613] - ASoC: tegra: SND_SOC_TEGRA_AUDIO_GRAPH_CARD should depend on SND_SOC_TEGRA (Jaroslav Kysela) [2003613] - ASoC: tegra20-spdif: remove "default m" (Jaroslav Kysela) [2003613] - ASoC: tegra: Add audio graph based card driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Set driver_name=tegra for all machine drivers (Jaroslav Kysela) [2003613] - ASoC: rt5640: Make codec selectable (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Add a prepare hook (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Add iec958 controls (Jaroslav Kysela) [2003613] - ASoC: rt5645: Avoid upgrading static warnings to errors (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Rework to support more controls (Jaroslav Kysela) [2003613] - ASoC: soc-core: don't use discriminatory terms on snd_soc_runtime_get_dai_fmt() (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca: handle mbq_regmap in rt711_sdca_io_init (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: add readable for SDW_SDCA_CTL() registers (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: set regcache_cache_only false before reading RT5682_DEVICE_ID (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix a problem with error handling in the io init function of the soundwire (Jaroslav Kysela) [2003613] - ASoC: rt715-sdca: fix clock stop prepare timeout issue (Jaroslav Kysela) [2003613] - ASoC: rt715-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt715-sdca-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt711-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt700-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt1316-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt1308-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: max98373-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: max98373-sdw: add missing memory allocation check (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: fsi: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: pcm3168a: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: ak4613: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_runtime_get_dai_fmt() (Jaroslav Kysela) [2003613] - ASoC: soc-core: move snd_soc_runtime_set_dai_fmt() to upside (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - mfd: arizona: Allow building arizona MFD-core as module (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add ADL-M support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: don't print ROM status if cl_dsp_init() fails (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: clean up hda_dsp_dump() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Constify sof_probe_compressed_ops (Jaroslav Kysela) [2003613] - ASoC: wm5110: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: wm5102: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: cs47125: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: cs42l52: use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: cs35l3x: Use neutral language in amp drivers (Jaroslav Kysela) [2003613] - ASoC: cs43130: Use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - ASoC: wm8962: Use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: cs42l56: use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: tlv320aic26: use DEVICE_ATTR_RW macro (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Check jack status before reporting button events (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for 2400000 Bit clock (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for 2304000 Bit clock (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix 1536000 Bit Clock instability (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add quirk support for Brya and BT-offload (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add SOF_RT715_DAI_ID_FIX for AlderLake (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: remove .nonatomic for BE dailinks (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add support for Bluetooth offload (Jaroslav Kysela) [2003613] - ASoC: Intel: common: Add entries for sdw codecs in ADL match table (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entries for i2s machines in ADL match table (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Remove conditions against CONFIG_PCI (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: don't return void value (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: fix assignment to use le32_to_cpu (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Use snd_sof_dsp_block_read() instead sof_block_read() (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: print out the polling register (Jaroslav Kysela) [2003613] - ASoC: SOF: pci: No need to cast second time to save the desc (Jaroslav Kysela) [2003613] - ASoC: SOF: Check desc->ops directly in acpi/pci/of probe functions (Jaroslav Kysela) [2003613] - ASoC: topology: Fix using uninitialized pointer (Jaroslav Kysela) [2003613] - ASoC: soc-dai: fix up hw params only if it is needed (Jaroslav Kysela) [2003613] - ASoC: soc-core: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - ASoC: topology: Add support for multiple kcontrol types to a widget (Jaroslav Kysela) [2003613] - ASoC: intel/boards: add missing MODULE_DEVICE_TABLE (Jaroslav Kysela) [2003613] - ASoC: cs43130: handle errors in cs43130_probe() properly (Jaroslav Kysela) [2003613] - Revert "ASoC: cs43130: fix a NULL pointer dereference" (Jaroslav Kysela) [2003613] - ASoC: cs42l42: make HSBIAS_SENSE_EN optional (Jaroslav Kysela) [2003613] - ASoC: wm2200: remove include of wmfw.h (Jaroslav Kysela) [2003613] - ASoC: wm_adsp: mark more data structures with the const qualifier (Jaroslav Kysela) [2003613] - ASoC: Intel: bxt_da7219_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: shrink platform id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: add sof-cs42l42 machine driver (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: create sof-maxim-common module (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: handle hda-dsp-common as a module (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: add support for adl boards in sof-rt5682 (Jaroslav Kysela) [2003613] - ASoC: Intel: Boards: tgl_max98373: Add BT offload support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: fix index used in inner loop (Jaroslav Kysela) [2003613] - ALSA: fireworks: add support for Loud Onyx 1200f quirk (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU Track 16 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU Traveler mk3 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: remove TODO for interaction with userspace about control message (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix functional regression for Mackie Onyx 1640i in v5.14 or later (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: export meter information to userspace as float value (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: refine parser for meter information in register DSP models (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix null pointer dereference when polling hwdep character device (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: notify event for parameter change in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: queue event for parameter change in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add ioctl command to read cached parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for input parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for line input parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for output parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for mixer output parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for mixer source parameters in register-DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add ioctl command to read cached hardware meter (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add message parser for meter information in command DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add message parser to gather meter information in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix truncated bytes in message tracepoints (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix transmission method for Loud models based on OXFW971 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 896HD (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix functioal regression for silence in Apogee Duet FireWire (Jaroslav Kysela) [2003613] - ALSA: bebob: correct duplicated entries with TerraTec OUI (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: Fix 'amdtp_domain_start()' when no AMDTP_OUT_STREAM stream is found (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix register handling for 896 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix register handling for 828 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro instead of magic number for clock source in v3 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for source detection of sampling clock in v3 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for packet format detection in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro instead of magic number for clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for AES/EBU clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for detection of clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix detection for S/PDIF source on optical interface in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: bebob: add support for ToneWeal FW66 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix rx packet format at higher rate for MOTU 828 mk3 Hybrid (Jaroslav Kysela) [2003613] - ALSA: bebob: fix rx packet format for Yamaha GO44/GO46, Terratec Phase 24/x24 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix stream format for MOTU 8pre FireWire (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 896 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 828 (Jaroslav Kysela) [2003613] - ALSA: bebob: Fix bit flag quirk constants (Jaroslav Kysela) [2003613] - ALSA: firewire: fill Kconfig with entries for devices based on DICE ASICs (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entries for Phonic Helix Board and FireFly series (Jaroslav Kysela) [2003613] - ALSA: bebob: code refactoring for M-Audio models (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entry for Acoustic Reality eAR Master One, Eroica, Figaro, and Ciaccona (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entry for Mackie D.2 FireWire option card (Jaroslav Kysela) [2003613] - ALSA: fireworks: fulfil device entries (Jaroslav Kysela) [2003613] - ALSA: bebob: fulfil device entries (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: replace in_interrupt() with in_softirq() (Jaroslav Kysela) [2003613] - ALSA: bebob: code refactoring for model-dependent quirks (Jaroslav Kysela) [2003613] - ALSA: bebob: delete workaround for protocol version 3 (Jaroslav Kysela) [2003613] - ALSA: bebob: dismiss sleep after breaking connections (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: obsolete workqueue for period update (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: operate for period elapse event in process context (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: delete unused kernel API (Jaroslav Kysela) [2003613] - ALSA: fireface: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-tascam: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-digi00x: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: dice: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: oxfw: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: fireworks: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: bebob: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for hybrid model of MOTU Ultralite mk3 (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: remove useless operations for kernel preemption (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: fix error codes for allocation failure (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix error return code in snd_motu_stream_reserve_duplex() (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: sequence replay for source packet header (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: cache event ticks in source packet header per data block (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro for magic numbers relevant to IEC 61883-1 (Jaroslav Kysela) [2003613] - ALSA: bebob: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: dice: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: dice: wait just for NOTIFY_CLOCK_ACCEPTED after GLOBAL_CLOCK_SELECT operation (Jaroslav Kysela) [2003613] - ALSA: fireface: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: firewire-tascam: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: firewire-digi00x: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: oxfw: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: fireworks: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: fireworks: delete SYTMATCH clock source (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: support NO_PERIOD_WAKEUP in ALSA PCM runtime (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: transfer rx packets on-the-fly when replaying (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: replay sequence of incoming packets for outgoing packets (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: add replay target to cache sequence of packet (Jaroslav Kysela) [2003613] - ALSA: bebob: distinguish M-Audio ProFire Lightbridge quirk (Jaroslav Kysela) [2003613] - ALSA: bebob: cancel switching connection order (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: obsolete callbacked member (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: drop initial NODATA or empty packet (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for transfer delay (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of data block sequence (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of syt sequence (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of packet descriptors (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: pool sequence of packet in IT context independently (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: add flag to unaware of syt in CIP header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: Fix uninitialized variable err issue (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: change waking up timing to process packets (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: start processing content of packet at the same cycle in several IT contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring to start several IT/IR contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: skip initial packets instead of scheduling IR context (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: start processing content of packet at the same cycle in several IR contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for selection of IT context header length (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for calculation of context payload (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for size of CIP header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: insert descriptor for skipped cycle (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: check cycle continuity (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for check of CIP header about payload size (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for parser of IR context header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for helper function to compute OHCI 1394 cycle (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for sequence descriptor' (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: handle the case that empty isochronous packet payload for CIP (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring to refer the same frame count per period in domain structure (Jaroslav Kysela) [2003613] - ALSA: oxfw: add quirk flag for blocking transmission method (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for wrong_dbs quirk (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for jumbo payload quirk (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for jumbo-payload quirk in OXFW970 (Jaroslav Kysela) [2003613] - ALSA: oxfw: add comment for the type of ASICs (Jaroslav Kysela) [2003613] - ALSA: oxfw: add explicit device entry for Loud Technologies Mackie Onyx Sattelite (Jaroslav Kysela) [2003613] - ALSA: oxfw: add explicit device entry for Loud Technologies Tapco Link.FireWire 4x6 (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring to detect mackie models (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for existent device entry with specifier_id and version (Jaroslav Kysela) [2003613] - ALSA: firewire-lib/motu: use int type for the value of bitwise OR with enumerator-constant (Jaroslav Kysela) [2003613] - Revert "ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro" (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix quirk for Clevo NJ51CU (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Disable silent stream on GLK (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add new alc285-hp-amp-init model (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Amp init fixup for HP ZBook 15 G6 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add headset Mic support for Lenovo ALC897 platform (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix quirk for TongFang PHxTxX1 (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: fix HDA codec entry table order for ADL-P (Jaroslav Kysela) [2003613] - ALSA: hda: Add Intel DG2 PCI ID and HDMI codec vid (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Set PMSG_ON earlier inside cs8409 driver (Jaroslav Kysela) [2003613] - ALSA: ctxfi: Fix out-of-range access (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix LED on HP ProBook 435 G7 (Jaroslav Kysela) [2003613] - ALSA: cmipci: Drop stale variable assignment (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for ASRock NUC Box 1100 (Jaroslav Kysela) [2003613] - ALSA: hda: fix general protection fault in azx_runtime_idle (Jaroslav Kysela) [2003613] - ALSA: hda: Free card instance properly at probe errors (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for HP EliteBook 840 G7 mute LED (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for ASUS UX550VE (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add a quirk for Acer Spin SP513-54N (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Headset fixup for Clevo NH77HJQ (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo PC70HS (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add a quirk for HP OMEN 15 mute LED (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix mic mute LED for the HP Spectre x360 14 (Jaroslav Kysela) [2003613] - ALSA: ISA: not for M68K (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fixes HP Spectre x360 15-eb1xxx speakers (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo PC50HS (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo 13s Gen2 (Jaroslav Kysela) [2003613] - ALSA: hda: intel: Allow repeatedly probing on codec configuration errors (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for TongFang PHxTxX1 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - ALC236 headset MIC recording issue (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo X170KM-G (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Complete partial device name to avoid ambiguity (Jaroslav Kysela) [2003613] - ALSA: hda - Enable headphone mic on Dell Latitude laptops with ALC3254 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Enable 4-speaker output for Dell Precision 5560 laptop (Jaroslav Kysela) [2003613] - ALSA: hda: Use position buffer for SKL+ again (Jaroslav Kysela) [2003613] - ALSA: hda: Reduce udelay() at SKL+ position reporting (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Setup Dolphin Headset Mic as Phantom Jack (Jaroslav Kysela) [2003613] - ALSA: pcxhr: "fix" PCXHR_REG_TO_PORT definition (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Quirks to enable speaker output for Lenovo Legion 7i 15IMHG05, Yoga 7i 14ITL5/15ITL5, and 13s Gen2 laptops. (Jaroslav Kysela) [2003613] - Revert "ALSA: hda: Drop workaround for a hang at shutdown again" (Jaroslav Kysela) [2003613] - ALSA: vx222: fix null-ptr-deref (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Initialize Codec only in init fixup. (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Ensure Type Detection is only run on startup when necessary (Jaroslav Kysela) [2003613] - ALSA: hda: Disable runtime resume at shutdown (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup (Jaroslav Kysela) [2003613] - ALSA: hda: Code refactoring snd_hda_pick_fixup() (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Workaround for conflicting SSID on ASUS ROG Strix G17 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Limit mic boost on HP ProBook 445 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/analog - Sink ad198x_shutup() and shuffle CONFIG_PM guards (Jaroslav Kysela) [2003613] - ALSA: hda/sigmatel - Sink stac_shutup() into stac_suspend() (Jaroslav Kysela) [2003613] - ALSA: hda: Drop workaround for a hang at shutdown again (Jaroslav Kysela) [2003613] - ALSA: hda/via: Apply runtime PM workaround for ASUS B23E (Jaroslav Kysela) [2003613] - ALSA: hda: Fix hang during shutdown due to link reset (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9510 laptop (Jaroslav Kysela) [2003613] - ALSA: hda: Nuke unused reboot_notify callback (Jaroslav Kysela) [2003613] - ALSA: hda: Suspend codec at shutdown (Jaroslav Kysela) [2003613] - ALSA: hda: conexant: Turn off EAPD at suspend, too (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Prevent pops and clicks during suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Unmute/Mute codec when stream starts/stops (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Follow correct CS42L42 power down sequence for suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Remove unnecessary delays (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Use timeout rather than retries for I2C transaction waits (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Set fixed sample rate of 48kHz for CS42L42 (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Enable Full Scale Volume for Line Out Codec on Dolphin (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Add support for dolphin (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Add Support to disable jack type detection for CS42L42 (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Support multiple sub_codecs for Suspend/Resume/Unsol events (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Move codec properties to its own struct (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Separate CS8409, CS42L42 and project functions (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Support i2c bulk read/write functions (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Avoid re-setting the same page as the last access (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Avoid setting the same I2C address for every access (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Dont disable I2C clock between consecutive accesses (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Generalize volume controls (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Prevent I2C access during suspend time (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Simplify CS42L42 jack detect. (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Mask CS42L42 wake events (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unsolicited response for the first boot (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unsolicited responses during suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unnecessary Ring Sense for Cyborg/Warlock/Bullseye (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Reduce HS pops/clicks for Cyborg (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Mask all CS42L42 interrupts on initialization (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Use enums for register names and coefficients (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Move arrays of configuration to a new file (Jaroslav Kysela) [2003613] - ALSA: hda/cirrus: Move CS8409 HDA bridge to separate module (Jaroslav Kysela) [2003613] - ALSA: hda - fix the 'Capture Switch' value change notifications (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 650 G8 Notebook PC (Jaroslav Kysela) [2003613] - ALSA: pci: cs46xx: Fix set up buffer type properly (Jaroslav Kysela) [2003613] - ALSA: hda: Add quirk for ASUS Flow x13 (Jaroslav Kysela) [2003613] - ALSA: pci/korg1212: completely remove 'set but not used' warnings (Jaroslav Kysela) [2003613] - ALSA: pcxhr: use __func__ to get funcion's name in an output message (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: add mic quirk for Acer SF314-42 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix headset mic for Acer SWIFT SF314-56 (ALC256) (Jaroslav Kysela) [2003613] - ALSA: korg1212: Fix wrongly shuffled firmware loader code (Jaroslav Kysela) [2003613] - ALSA: als300: Fix missing chip initialization (Jaroslav Kysela) [2003613] - ALSA: cs4281: Fix missing chip initialization (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Add quirk to force pin connectivity on NUC10 (Jaroslav Kysela) [2003613] - ALSA: nm256: Fix error return code in snd_nm256_create() (Jaroslav Kysela) [2003613] - ALSA: ymfpci: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: vx222: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: trident: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: pci: rme: Fix unaligned buffer addresses (Jaroslav Kysela) [2003613] - ALSA: pci: rme: Set up buffer type properly (Jaroslav Kysela) [2003613] - ALSA: rme9652: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme9652: don't disable if not enabled (Jaroslav Kysela) [2003613] - ALSA: hdspm: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hdspm: don't disable if not enabled (Jaroslav Kysela) [2003613] - ALSA: hdspm: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - ALSA: hdsp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: riptide: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: riptide: Replace tasklet with threaded irq (Jaroslav Kysela) [2003613] - ALSA: riptide: convert tasklets to use new tasklet_setup() API (Jaroslav Kysela) [2003613] - ALSA: oxygen: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: nm256: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: lx6464es: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: lola: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: korg1212: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1724: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ali5451: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1724: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1712: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: emu10k1x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: emu10k1: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: echoaudio: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs5535audio: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs46xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ca0106: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: aw2: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: au88x0: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ali5451: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: via82xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sonicvibes: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sis7019: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme96: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme32: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: maestro3: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: fm801: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es1968: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es1938: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ens137x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs5530: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs4281: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cmipci: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: bt87x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt3328: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als4000: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als300: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1889: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hda: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: atiixp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix pop noise and 2 Front Mic issues on a machine (Jaroslav Kysela) [2003613] - ALSA: hdmi: Expose all pins on MSI MS-7C94 board (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Skip ac97 clock measurement on VM (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Add option to enable all pins forcibly (Jaroslav Kysela) [2003613] - ALSA: ice1724: Remove superfluous loop over model table (Jaroslav Kysela) [2003613] - ALSA: hda/ca0132: remove redundant initialization of variable status (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Fix breakage at ac97 clock measurement (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute led of the HP Pavilion 15-eh1xxx series (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 630 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 450 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add ALC285 HP init procedure (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add type for ALC287 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 830 G8 Notebook PC (Jaroslav Kysela) [2003613] - ALSA: hda: Release codec display power during shutdown/reboot (Jaroslav Kysela) [2003613] - ALSA: hda: Release controller display power during shutdown/reboot (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Apply LED fixup for HP Dragonfly G1, too (Jaroslav Kysela) [2003613] - ALSA: hdsp: fix a test for copy_to_user() failure (Jaroslav Kysela) [2003613] - ALSA: hda: Add IRQ check for platform_get_irq() (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix bass speaker DAC mapping for Asus UM431D (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Improve fixup for HP Spectre x360 15-df0xxx (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add another ALC236 variant support (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook x360 830 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/tegra: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ALSA: trident: Fix build error (Jaroslav Kysela) [2003613] - ALSA: trident: Drop shadow TLB pointer table (Jaroslav Kysela) [2003613] - ALSA: ymfpci: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx222: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: trident: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme9652: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hdsp: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: riptide: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pcxhr: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: nm256: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: mixart: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: korg1212: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ice1712: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: emu10k1x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: emu10k1: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: echoaudio: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs5535audio: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs46xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ca0106: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: au88x0: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ac97: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: via82xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sonicvibes: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme96: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme32: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: maestro3: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: fm801: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1968: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1938: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ens137x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs4281: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cmipci: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: bt87x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: azt3328: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: atiixp: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als4000: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als300: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ak4531: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ad1889: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Change device names for quirks to barebone names (Jaroslav Kysela) [2003613] - ALSA: hda/ca0132: Make a const array static, makes object smaller (Jaroslav Kysela) [2003613] - ALSA: pci: lx6464es: remove useless self-comparison (Jaroslav Kysela) [2003613] - ALSA: drivers: opl3: Fix incorrect use of vp->state (Jaroslav Kysela) [2003613] - ALSA: pcsp: Make hrtimer forwarding more robust (Jaroslav Kysela) [2003613] - ALSA: pcsp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: dummy: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: aloop: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: mpu401: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: serial-u16550: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: mtpav: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: virmidi: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: vx: Manage vx_core object with devres (Jaroslav Kysela) [2003613] - ALSA: aloop: Fix spelling mistake "synchronization" -> "synchronization" (Jaroslav Kysela) [2003613] - ALSA: serial: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: opl3: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: mpu401: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: drivers: opl3: fix useless self-comparison (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: go through HDAS ACPI at max depth of 2 (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: harden detection of controller (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for CML devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for JSL devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: hda: avoid write to STATESTS if controller is in reset (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for APL/GLK/TGL devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: hda: hdac_ext_stream: fix potential locking issues (Jaroslav Kysela) [2003613] - ALSA: hda: hdac_stream: fix potential locking issue in snd_hdac_stream_assign() (Jaroslav Kysela) [2003613] - ALSA: hda: intel-dsp-cfg: add missing ElkhartLake PCI ID (Jaroslav Kysela) [2003613] - ALSA: usb-audio: usx2y - use GFP_NOIO flag (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Reorder snd_djm_devices[] entries (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Don't start stream for capture at prepare (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Switch back to non-latency mode at a later point (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk for Audient iD14 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Line6 HX-Stomp XL USB_ID for 48k-fixed quirk (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 400 (Jaroslav Kysela) [2003613] - ALSA: ua101: fix division by zero at probe (Jaroslav Kysela) [2003613] - ALSA: line6: fix control and interrupt message timeouts (Jaroslav Kysela) [2003613] - ALSA: 6fire: fix control and bulk message timeouts (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix null pointer dereference on pointer cs_desc (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix microphone sound on Jieli webcam. (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Provide quirk for Sennheiser GSP670 Headset (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Initialize every feature unit once at probe time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Drop superfluous error message after disconnection (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Downgrade error message in get_ctl_value_v2() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: add Schiit Hel device to quirk table (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk for VF0770 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Less restriction for low-latency playback mode (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add support for the Pioneer DJM 750MK2 Mixer/Soundcard (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Pass JOINT_DUPLEX info flag for implicit fb streams (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Enable rate validation for Scarlett devices (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix packet size calculation regression (Jaroslav Kysela) [2003613] - ALSA: usb-audio: disable implicit feedback sync for Behringer UFX1204 and UFX1604 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Avoid killing in-flight URBs during draining (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Improved lowlatency playback support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add spinlock to stop_urbs() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Check available frames for the next packet size (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Disable low-latency mode for implicit feedback sync (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Disable low-latency playback for free-wheel mode (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix possible race at sync of urb completions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Restrict rates for the shared clocks (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix a missing error check in scarlett gen2 mixer (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix comment reference in __uac_clock_find_source (Jaroslav Kysela) [2003613] - ALSA: usx2y: Prefer struct_size over open coded arithmetic (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Unify mixer resume and reset_resume procedure (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 800 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add lowlatency module option (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Work around for XRUN with low latency playback (Jaroslav Kysela) [2003613] - ASoC: dmaengine: Introduce module option prealloc_buffer_size_kbytes (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move set-interface-first workaround into common quirk (Jaroslav Kysela) [2003613] - ALSA: doc: Fix indentation warning (Jaroslav Kysela) [2003613] - ALSA: hda: Update documentation for aliasing via the model option (Jaroslav Kysela) [2003613] - ALSA: doc: Add the description of quirk_flags option for snd-usb-audio (Jaroslav Kysela) [2003613] - ALSA: doc: Fix reference to mixart.rst (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Update the documentation for the new delayed_register option (Jaroslav Kysela) [2003613] - ALSA: hda - Update descriptions about new position_fix values (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix regression on Sony WALKMAN NW-A45 DAC (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Input source control - digidesign mbox (Jaroslav Kysela) [2003613] - ALSA: usb-audio: make array static const, makes object smaller (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk_flags module option (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move generic DSD raw detection into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move ignore_ctl_error check into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move autosuspend quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move rate validation quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move interface setup delay into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move control message delay quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move ITF-USB DSD quirk handling into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move clock setup quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move playback_first flag into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move tx_length quirk handling to quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move txfr_quirk handling to quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move media-controller API quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Introduce quirk_flags field (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Avoid unnecessary or invalid connector selection at resume (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 600 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix superfluous autosuspend recovery (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix incorrect clock source setting (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix line out/speaker switching notifications (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Correct channel mute status after mute button pressed (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix Direct Monitor control name for 2i2 (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix Mute/Dim/MSD Mode control names (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum headsets (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add missing proc text entry for BESPOKEN type (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Reduce latency at playback start, take#2 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: usx2y: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix for loop increment in scarlett2_usb_get_config (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix scarlett2_*_ctl_put() return values again (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix pad count for 18i8 Gen 3 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for the talkback feature (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update get_config to do endian conversion (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add speaker switching support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update mux controls to allow updates (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add sw_hw_ctls and mux_ctls (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Split up sw_hw_enum_ctl_put() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Label 18i8 Gen 3 line outputs correctly (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add direct monitor support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add phantom power switch support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add "air" switch support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for Solo and 2i2 Gen 3 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Allow bit-level access to config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Move get config above set config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add Gen 3 MSD mode switch (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for "input-other" notify (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add Gen 3 mixer support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix wrong resume call (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix Level Meter control (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Split struct scarlett2_ports (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Allow arbitrary ordering of mux entries (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add mute support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add scarlett2_vol_ctl_write() helper (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove repeated device info comments (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Move info lookup out of init function (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Improve device info lookup (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Reformat scarlett2_config_items[] (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Merge common line in capture strings (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add "Sync Status" control (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Always enable interrupt polling (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix 6i6 Gen 2 line out descriptions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update initialisation sequence (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add usb_tx/rx functions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix OOB access at proc output (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove hard-coded USB #defines (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Don't copy struct scarlett2_config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix union usage in mixer control callbacks (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix data_mutex lock (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add temp variable for consistency (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Rename struct scarlett2_mixer_data (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Rename buttons/interrupts/vol (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove redundant info->button_count (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove interrupt debug message (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove unused/useless code (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Coding style improvements (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix 18i8 Gen 2 PCM Input count (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove incorrect S/PDIF comment (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix rate on Ozone Z90 USB headset (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add support for Denon DN-X1600 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Read mux at init time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Read mixer volumes at init time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Factor out DSD bitrev copy function (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Refactoring delay account code (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Pre-calculate buffer byte size (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Make snd_usb_pcm_delay() static (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Remove the repeated declaration (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix uninitialized variable at __uac_clock_find_source() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Handle error for the current selector gracefully (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Refactoring UAC2/3 clock setup code (Jaroslav Kysela) [2003613] - ALSA: usx2y: Nuke pcm_list (Jaroslav Kysela) [2003613] - ALSA: usx2y: Cleanup probe and disconnect callbacks (Jaroslav Kysela) [2003613] - ALSA: usx2y: Don't call free_pages_exact() with NULL address (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix shmem initialization (Jaroslav Kysela) [2003613] - ALSA: usxy2: Fix potential doubly allocations (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix potential memory leaks (Jaroslav Kysela) [2003613] - ALSA: usx2y: Avoid self-killing (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix potential leaks of uninitialized memory (Jaroslav Kysela) [2003613] - ALSA: usx2y: Coding style fixes (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix spaces (Jaroslav Kysela) [2003613] - ALSA: usx2y: Avoid camelCase (Jaroslav Kysela) [2003613] - module: remove never implemented MODULE_SUPPORTED_DEVICE (Jaroslav Kysela) [2003613] - ALSA: pcm: Allow exact buffer preallocation (Jaroslav Kysela) [2003613] - ALSA: core: Add device-managed request_dma() (Jaroslav Kysela) [2003613] - ALSA: core: use DEVICE_ATTR_*() macro (Jaroslav Kysela) [2003613] - ALSA: core: Fix double calls of snd_card_free() via devres (Jaroslav Kysela) [2003613] - ALSA: core: Add managed card creation (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap without buffer preallocation (Jaroslav Kysela) [2003613] - ALSA: pcm: Call substream ack() method upon compat mmap commit (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap breakage without explicit buffer setup (Jaroslav Kysela) [2003613] - ALSA: pcm - fix mmap capability check for the snd-dummy driver (Jaroslav Kysela) [2003613] - ALSA: pcm: fix divide error in snd_pcm_lib_ioctl (Jaroslav Kysela) [2003613] - ALSA: memalloc: Catch call with NULL snd_dma_buffer pointer (Jaroslav Kysela) [2003613] - ALSA: memalloc: Remove a stale comment (Jaroslav Kysela) [2003613] - ALSA: memalloc: Use proper SG helpers for noncontig allocations (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix a typo in snd_dma_buffer_sync() description (Jaroslav Kysela) [2003613] - ALSA: PCM: Fix NULL dereference at mmap checks (Jaroslav Kysela) [2003613] - ALSA: pcm: Check mmap capability of runtime dma buffer at first (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap capability check (Jaroslav Kysela) [2003613] - ALSA: pcm: use krealloc_array() (Jaroslav Kysela) [2003613] - ALSA: pcm: Add SNDRV_PCM_INFO_EXPLICIT_SYNC flag (Jaroslav Kysela) [2003613] - ALSA: pcm: Add more disconnection checks at file ops (Jaroslav Kysela) [2003613] - mm: don't include asm/pgtable.h if linux/mm.h is already included (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix mmap of SG-buffer with WC pages (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support for non-coherent page allocation (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support for non-contiguous page allocation (Jaroslav Kysela) [2003613] - ALSA: pcm: Unify snd_pcm_delay() and snd_pcm_hwsync() (Jaroslav Kysela) [2003613] - ALSA: core: Fix build error due to missing PAGE_SIZE (Jaroslav Kysela) [2003613] - ALSA: pcm: Workaround for a wrong offset in SYNC_PTR compat ioctl (Jaroslav Kysela) [2003613] - ALSA: memalloc: Count continuous pages in vmalloc buffer handler (Jaroslav Kysela) [2003613] - ALSA: memalloc: Store snd_dma_buffer.addr for continuous pages, too (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix pgprot for WC mmap on x86 (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support WC allocation on all architectures (Jaroslav Kysela) [2003613] - ALSA: memalloc: Correctly name as WC (Jaroslav Kysela) [2003613] - ALSA: memalloc: Minor refactoring (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix regression with SNDRV_DMA_TYPE_CONTINUOUS (Jaroslav Kysela) [2003613] - ALSA: core: Add device-managed page allocator helper (Jaroslav Kysela) [2003613] - ALSA: core: Add continuous and vmalloc mmap ops (Jaroslav Kysela) [2003613] - ALSA: core: Move mmap handler into memalloc ops (Jaroslav Kysela) [2003613] - ALSA: core: Abstract memory alloc helpers (Jaroslav Kysela) [2003613] - ALSA: pcm: add snd_pcm_period_elapsed() variant without acquiring lock of PCM substream (Jaroslav Kysela) [2003613] - ALSA: pcm: Block the release until the system resume finishes (Jaroslav Kysela) [2003613] - ALSA: Drop superfluous argument from snd_power_wait() (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: Drop snd_sgbuf_get_ptr() (Jaroslav Kysela) [2003613] - ALSA: jack: Check the return value of kstrdup() (Jaroslav Kysela) [2003613] - ALSA: seq: oss: Fix error check at system port creation (Jaroslav Kysela) [2003613] - ALSA: seq: Fix comments of wrong client number for MIDI Passthrough (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Handle missing errors in snd_pcm_oss_change_params*() (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Limit the period size to 16MB (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Fix negative period/buffer sizes (Jaroslav Kysela) [2003613] - ALSA: iec958: Split status creation and fill (Jaroslav Kysela) [2003613] - ALSA: rawmidi - fix the uninitalized user_pversion (Jaroslav Kysela) [2003613] - ALSA: rawmidi: introduce SNDRV_RAWMIDI_IOCTL_USER_PVERSION (Jaroslav Kysela) [2003613] - ALSA: rawmidi: fix incorrect array bounds check on clock_names (Jaroslav Kysela) [2003613] - ALSA: rawmidi: Add framing mode (Jaroslav Kysela) [2003613] - ALSA: seq: Fix racy deletion of subscriber (Jaroslav Kysela) [2003613] - ALSA: seq: Fix a potential UAF by wrong private_free call order (Jaroslav Kysela) [2003613] - ALSA: seq: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: timer: Unconditionally unlink slave instances, too (Jaroslav Kysela) [2003613] - ALSA: timer: Fix use-after-free problem (Jaroslav Kysela) [2003613] - ALSA: mixer: fix deadlock in snd_mixer_oss_set_volume (Jaroslav Kysela) [2003613] - ALSA: mixer: oss: Fix racy access to slots (Jaroslav Kysela) [2003613] - ALSA: oss: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: control_led: use strscpy instead of strlcpy (Jaroslav Kysela) [2003613] - ALSA: control_led - use DEVICE_ATTR_*() macro (Jaroslav Kysela) [2003613] - ALSA: ctl: Fix copy of updated id with element read/write (Jaroslav Kysela) [2003613] - ALSA: compress: Initialize mutex in snd_compress_new() (Jaroslav Kysela) [2003613] - ALSA: control: Minor optimization for SNDRV_CTL_IOCTL_POWER_STATE (Jaroslav Kysela) [2003613] - ALSA: control: Drop superfluous snd_power_wait() calls (Jaroslav Kysela) [2003613] - ALSA: control: Track in-flight control read/write/tlv accesses (Jaroslav Kysela) [2003613] - ALSA: compress: Drop unused functions (Jaroslav Kysela) [2003613] - regmap: sdw-mbq: use MODULE_LICENSE("GPL") (Jaroslav Kysela) [2003613] - regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ (Jaroslav Kysela) [2003613] - regmap: sdw: use _no_pm functions in regmap_read/write (Jaroslav Kysela) [2003613] - soundwire: stream: Fix test for DP prepare complete (Jaroslav Kysela) [2003613] - soundwire/ASoC: add leading zeroes in peripheral device name (Jaroslav Kysela) [2003613] - soundwire: bandwidth allocation: improve error messages (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: remove duplicate initialization (Jaroslav Kysela) [2003613] - soundwire: cadence: remove the repeated declaration (Jaroslav Kysela) [2003613] - soundwire: bus: stop dereferencing invalid slave pointer (Jaroslav Kysela) [2003613] - soundwire: bus: add missing \n in dynamic debug (Jaroslav Kysela) [2003613] - soundwire: bus: handle -ENODATA errors in clock stop/start sequences (Jaroslav Kysela) [2003613] - soundwire: qcom: add debugfs entry for soundwire register dump (Jaroslav Kysela) [2003613] - soundwire: debugfs: use controller id and link_id for debugfs (Jaroslav Kysela) [2003613] - soundwire: cadence: do not extend reset delay (Jaroslav Kysela) [2003613] - soundwire: intel: conditionally exit clock stop mode on system suspend (Jaroslav Kysela) [2003613] - soundwire: intel: skip suspend/resume/wake when link was not started (Jaroslav Kysela) [2003613] - soundwire: intel: fix potential race condition during power down (Jaroslav Kysela) [2003613] - soundwire: intel: introduce shim and alh base (Jaroslav Kysela) [2003613] - soundwire: move intel sdw register definitions to sdw_intel.h (Jaroslav Kysela) [2003613] - soundwire: cadence: override PDI configurations to create loopback (Jaroslav Kysela) [2003613] - soundwire: cadence: add debugfs interface for PDI loopbacks (Jaroslav Kysela) [2003613] - soundwire: stream: don't program mockup device ports (Jaroslav Kysela) [2003613] - soundwire: bus: squelch error returned by mockup devices (Jaroslav Kysela) [2003613] - soundwire: stream: don't abort bank switch on Command_Ignored/-ENODATA (Jaroslav Kysela) [2003613] - soundwire: cadence: add paranoid check on self-clearing bits (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: add quirk for Intel 'Bishop County' NUC M15 (Jaroslav Kysela) [2003613] - soundwire: bus: update Slave status in sdw_clear_slave_status (Jaroslav Kysela) [2003613] - soundwire: cadence: Remove ret variable from sdw_cdns_irq() (Jaroslav Kysela) [2003613] - soundwire: bus: filter out more -EDATA errors on clock stop (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: add ull suffix for SoundWire _ADR values (Jaroslav Kysela) [2003613] - soundwire: export sdw_update() and sdw_update_no_pm() (Jaroslav Kysela) [2003613] - soundwire: bus: Make sdw_nwrite() data pointer argument const (Jaroslav Kysela) [2003613] - soundwire: intel: move to auxiliary bus (Jaroslav Kysela) [2003613] - soundwire: add missing kernel-doc description (Jaroslav Kysela) [2003613] - soundwire: cadence_master: always set CMD_ACCEPT (Jaroslav Kysela) [2003613] - soundwire: bus: only use CLOCK_STOP_MODE0 and fix confusions (Jaroslav Kysela) [2003613] - software node: Handle software node injection to an existing device properly (Mark Langsdorf) [2032600] - software node: Allow node addition to already existing device (Mark Langsdorf) [2032600] - driver core: clear deferred probe reason on probe retry (Mark Langsdorf) [2032600] - driver core: add deferring probe reason to devices_deferred property (Mark Langsdorf) [2032600] - driver core: Fix locking bug in deferred_probe_timeout_work_func() (Mark Langsdorf) [2032600] - PM: runtime: Fix race getting/putting suppliers at probe (Mark Langsdorf) [2032600] - PM: runtime: Fix ordering in pm_runtime_get_suppliers() (Mark Langsdorf) [2032600] - PM: runtime: Defer suspending suppliers (Mark Langsdorf) [2032600] - software node: Fix device_add_software_node() (Mark Langsdorf) [2032600] - software node: Fix node registration (Mark Langsdorf) [2032600] - drivers/base/memory: don't store phys_device in memory blocks (Mark Langsdorf) [2032600] - arch_numa: fix common code printing of phys_addr_t (Mark Langsdorf) [2032600] - driver core: platform: Drop of_device_node_put() wrapper (Mark Langsdorf) [2032600] - regmap: sdw-mbq: use MODULE_LICENSE("GPL") (Mark Langsdorf) [2032600] - regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ (Mark Langsdorf) [2032600] - regmap: sdw: use _no_pm functions in regmap_read/write (Mark Langsdorf) [2032600] - PM: domains: Mark fwnodes when their powerdomain is added/removed (Mark Langsdorf) [2032600] - driver core: fw_devlink: Handle suppliers that don't use driver core (Mark Langsdorf) [2032600] - driver core: Add fw_devlink.strict kernel param (Mark Langsdorf) [2032600] - driver core: platform: Emit a warning if a remove callback returned non-zero (Mark Langsdorf) [2032600] - PM: domains: Simplify the calculation of variables (Mark Langsdorf) [2032600] - PM: sleep: Use dev_printk() when possible (Mark Langsdorf) [2032600] - media: software_node: Add support for fwnode_graph*() family of functions (Mark Langsdorf) [2032600] - media: software_node: unregister software_nodes in reverse order (Mark Langsdorf) [2032600] - media: software_node: Enforce parent before child ordering of nodes arrays (Mark Langsdorf) [2032600] - media: device property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary (Mark Langsdorf) [2032600] - media: device property: Return true in fwnode_device_is_available for NULL ops (Mark Langsdorf) [2032600] - media: software_node: Fix refcounts in software_node_get_next_child() (Mark Langsdorf) [2032600] - PM: domains: Add "performance" column to debug summary (Mark Langsdorf) [2032600] - PM: domains: Make of_genpd_add_subdomain() return -EPROBE_DEFER (Mark Langsdorf) [2032600] - PM: domains: Make set_performance_state() callback optional (Mark Langsdorf) [2032600] - PM: domains: use device's next wakeup to determine domain idle state (Mark Langsdorf) [2032600] - PM: domains: inform PM domain of a device's next wakeup (Mark Langsdorf) [2032600] - PM: runtime: Fix resposible -> responsible in runtime.c (Mark Langsdorf) [2032600] - PM: domains: Restore comment indentation for generic_pm_domain.child_links (Mark Langsdorf) [2032600] - PM: domains: Fix up terminology with parent/child (Mark Langsdorf) [2032600] - regmap: Assign boolean values to a bool variable (Mark Langsdorf) [2032600] - software node: Introduce device_add_software_node() (Mark Langsdorf) [2032600] - numa: Move numa implementation to common code (Mark Langsdorf) [2032600] - arm64, numa: Change the numa init functions name to be generic (Mark Langsdorf) [2032600] - driver core: fw_devlink_relax_cycle() can be static (Mark Langsdorf) [2032600] - driver core: Handle cycles in device links created by fw_devlink (Mark Langsdorf) [2032600] - driver core: Have fw_devlink use DL_FLAG_INFERRED (Mark Langsdorf) [2032600] - driver core: Add device link support for INFERRED flag (Mark Langsdorf) [2032600] - drivers: base: Kconfig: fix spelling mistake "heterogenous" -> "heterogeneous" (Mark Langsdorf) [2032600] - driver core: Add debug logs for device link related probe deferrals (Mark Langsdorf) [2032600] - drivers: base: remove unused function find_bus() (Mark Langsdorf) [2032600] - PM: runtime: Drop runtime PM references to supplier on link removal (Mark Langsdorf) [2032600] - dmaengine: idxd: Add wq occupancy information to sysfs attribute (Julia Denham) [1971887] - vdpa/mlx5: Forward only packets with allowed MAC address (Cindy Lu) [2031595] - vdpa/mlx5: Support configuration of MAC (Cindy Lu) [2031595] - vdpa/mlx5: Fix clearing of VIRTIO_NET_F_MAC feature bit (Cindy Lu) [2031595] - vdpa_sim_net: Enable user to set mac address and mtu (Cindy Lu) [2031595] - vdpa: Enable user to set mac and mtu of vdpa device (Cindy Lu) [2031595] - vdpa: Use kernel coding style for structure comments (Cindy Lu) [2031595] - vdpa: Introduce query of device config layout (Cindy Lu) [2031595] - vdpa: Introduce and use vdpa device get, set config helpers (Cindy Lu) [2031595] - vdpa/mlx5: Propagate link status from device to vdpa driver (Cindy Lu) [2031595] - vdpa/mlx5: Rename control VQ workqueue to vdpa wq (Cindy Lu) [2031595] - vdpa/mlx5: Remove mtu field from vdpa net device (Cindy Lu) [2031595] - eni_vdpa: add vDPA driver for Alibaba ENI (Cindy Lu) [2031595] - vdpa: add new attribute VDPA_ATTR_DEV_MIN_VQ_SIZE (Cindy Lu) [2031595] - virtio_vdpa: setup correct vq size with callbacks get_vq_num_{max,min} (Cindy Lu) [2031595] - vdpa: min vq num of vdpa device cannot be greater than max vq num (Cindy Lu) [2031595] - vdpa: add new callback get_vq_num_min in vdpa_config_ops (Cindy Lu) [2031595] - vp_vdpa: add vq irq offloading support (Cindy Lu) [2031595] - vdpa: fix typo (Cindy Lu) [2031595] - vhost-vdpa: Fix the wrong input in config_cb (Cindy Lu) [2031595] - vhost_vdpa: unset vq irq before freeing irq (Cindy Lu) [2031595] - vdpa: potential uninitialized return in vhost_vdpa_va_map() (Cindy Lu) [2031595] - vdpa/mlx5: Avoid executing set_vq_ready() if device is reset (Cindy Lu) [2031595] - vdpa/mlx5: Clear ready indication for control VQ (Cindy Lu) [2031595] - vdpa: Support transferring virtual addressing during DMA mapping (Cindy Lu) [2031595] - vdpa: factor out vhost_vdpa_pa_map() and vhost_vdpa_pa_unmap() (Cindy Lu) [2031595] - vdpa: Add an opaque pointer for vdpa_config_ops.dma_map() (Cindy Lu) [2031595] - vhost-iotlb: Add an opaque pointer for vhost IOTLB (Cindy Lu) [2031595] - vhost-vdpa: Handle the failure of vdpa_reset() (Cindy Lu) [2031595] - vdpa: Add reset callback in vdpa_config_ops (Cindy Lu) [2031595] - vdpa: Fix some coding style issues (Cindy Lu) [2031595] - vdpa: Make use of PFN_PHYS/PFN_UP/PFN_DOWN helper macro (Cindy Lu) [2031595] - vdpa_sim: Use iova_shift() for the size passed to alloc_iova() (Cindy Lu) [2031595] - vdpa/mlx5: Add multiqueue support (Cindy Lu) [2031595] - vdpa/mlx5: Add support for control VQ and MAC setting (Cindy Lu) [2031595] - vdpa/mlx5: Ensure valid indices are provided (Cindy Lu) [2031595] - vdpa/mlx5: Decouple virtqueue callback from struct mlx5_vdpa_virtqueue (Cindy Lu) [2031595] - vdpa/mlx5: function prototype modifications in preparation to control VQ (Cindy Lu) [2031595] - vdpa/mlx5: Remove redundant header file inclusion (Cindy Lu) [2031595] - vDPA/ifcvf: enable multiqueue and control vq (Cindy Lu) [2031595] - vDPA/ifcvf: detect and use the onboard number of queues directly (Cindy Lu) [2031595] - vDPA/ifcvf: implement management netlink framework for ifcvf (Cindy Lu) [2031595] - vDPA/ifcvf: introduce get_dev_type() which returns virtio dev id (Cindy Lu) [2031595] - vdpa/mlx5: Fix queue type selection logic (Cindy Lu) [2031595] - vdpa/mlx5: Avoid destroying MR on empty iotlb (Cindy Lu) [2031595] - virtio_vdpa: reject invalid vq indices (Cindy Lu) [2031595] - vdpa: Add documentation for vdpa_alloc_device() macro (Cindy Lu) [2031595] - vDPA/ifcvf: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vp_vdpa: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vdpa_sim: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vhost: Fix the calculation in vhost_overflow() (Cindy Lu) [2031595] - vhost-vdpa: Fix integer overflow in vhost_vdpa_process_iotlb_update() (Cindy Lu) [2031595] - iommu/vt-d: Fix unmap_pages support (Jerry Snitselaar) [2027765] - dm sysfs: use default_groups in kobj_type (Benjamin Marzinski) [2047358] - dm space map common: add bounds check to sm_ll_lookup_bitmap() (Benjamin Marzinski) [2047358] - dm btree: add a defensive bounds check to insert_at() (Benjamin Marzinski) [2047358] - dm btree remove: change a bunch of BUG_ON() calls to proper errors (Benjamin Marzinski) [2047358] - dm btree spine: eliminate duplicate le32_to_cpu() in node_check() (Benjamin Marzinski) [2047358] - dm btree spine: remove extra node_check function declaration (Benjamin Marzinski) [2047358] - selftests/bpf: Adding delay in socketmap_listen to reduce flakyness (Felix Maurer) [2026433] - net: openvswitch: Fix ct_state nat flags for conns arriving from tc (Marcelo Ricardo Leitner) [2040334] - net: openvswitch: Fix matching zone id for invalid conns arriving from tc (Marcelo Ricardo Leitner) [2040452] - net/sched: flow_dissector: Fix matching on zone id for invalid conns (Marcelo Ricardo Leitner) [2040452] - net/sched: Extend qdisc control block with tc control block (Marcelo Ricardo Leitner) [2040452] - mm: Fix an use-after-free error in mm_struct (Waiman Long) [2046161] - rh_flags: Rename rh_features to rh_flags (Prarit Bhargava) [2021700] - redhat: add initial rpminspect configuration (Augusto Caringi)- can: raw: raw_setsockopt(): fix raw_rcv panic for sock UAF (Balazs Nemeth) [2026692] - drm/vmwgfx: Fix stale file descriptors on failed usercopy (Dave Airlie) [2047602] {CVE-2022-22942} - drm/i915: Flush TLBs before releasing backing store (Dave Airlie) [2044329] {CVE-2022-0330} - [s390] s390/pci: move pseudo-MMIO to prevent MIO overlap (Mete Durlu) [2047757] - [s390] scsi: zfcp: Fix failed recovery on gone remote port with non-NPIV FCP devices (Mete Durlu) [2048919] - tun: fix bonding active backup with arp monitoring (Jonathan Toppins) [2024964] - x86/hyperv: Properly deal with empty cpumasks in hyperv_flush_tlb_multi() (Vitaly Kuznetsov) [2044237] - xfs: check sb_meta_uuid for dabuf buffer recovery (Bill O'Donnell) [2020764] - vfs: fs_context: fix up param length parsing in legacy_parse_param (Carlos Maiolino) [2040586] {CVE-2022-0185} - KVM: nVMX: Allow VMREAD when Enlightened VMCS is in use (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Implement evmcs_field_offset() suitable for handle_vmread() (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Rename vmcs_to_field_offset{,_table} (Vitaly Kuznetsov) [2012105] - KVM: nVMX: eVMCS: Filter out VM_EXIT_SAVE_VMX_PREEMPTION_TIMER (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Also filter MSR_IA32_VMX_TRUE_PINBASED_CTLS when eVMCS (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Use INVALID_GPA for pointers used in nVMX. (Vitaly Kuznetsov) [2012105] - x86/kvm: Always inline evmcs_write64() (Vitaly Kuznetsov) [2012105] - powerpc/powernv: Remove POWER9 PVR version check for entry and uaccess flushes (Diego Domingos) [2030954] - powerpc/pesries: Get STF barrier requirement from H_GET_CPU_CHARACTERISTICS (Diego Domingos) [2030954] - powerpc/security: Add a security feature for STF barrier (Diego Domingos) [2030954] - powerpc/pseries: Get entry and uaccess flush required bits from H_GET_CPU_CHARACTERISTICS (Diego Domingos) [2030954] - drm/nouveau/disp/dp: add support for eDP link rates (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for hbr3 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for lttprs (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: fixup cr/eq delays for 1.4 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for tps4 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: generate supported link rates table at detect time (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: explicitly control scrambling when setting pattern (Ben Skeggs) [2043523] - drm/nouveau/disp: remove some remnant of a rework (Ben Skeggs) [2043523] - drm/nouveau: recognise GA106 (Ben Skeggs) [2043523] - redhat/scripts: Update merge-subtrees.sh (Prarit Bhargava)- pinctrl: amd: Fix wakeups when IRQ is shared with SCI (Renjith Pananchikkal) [2039124] - bonding: fix ad_actor_system option setting to default (Jonathan Toppins) [2042564 1931881] - bonding: make tx_rebalance_counter an atomic (Jonathan Toppins) [2042564] - bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed (Jonathan Toppins) [2042564] - bonding: 3ad: pass parameter bond_params by reference (Jonathan Toppins) [2042564] - bonding: complain about missing route only once for A/B ARP probes (Jonathan Toppins) [2042564] - bonding: improve nl error msg when device can't be enslaved because of IFF_MASTER (Jonathan Toppins) [2042564] - bonding: combine netlink and console error messages (Jonathan Toppins) [2042564] - bonding: add new option lacp_active (Jonathan Toppins) [2042564] - bonding: 3ad: fix the concurrency between __bond_release_one() and bond_3ad_state_machine_handler() (Jonathan Toppins) [2042564] - bonding: fix build issue (Jonathan Toppins) [2042564] - bonding: fix incorrect return value of bond_ipsec_offload_ok() (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_offload_ok() (Jonathan Toppins) [2042564] - bonding: Add struct bond_ipesc to manage SA (Jonathan Toppins) [2042564] - bonding: disallow setting nested bonding + ipsec offload (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_del_sa() (Jonathan Toppins) [2042564] - bonding: fix null dereference in bond_ipsec_add_sa() (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_add_sa() (Jonathan Toppins) [2042564] - net: bonding: Use per-cpu rr_tx_counter (Jonathan Toppins) [2042564] - bonding: remove redundant initialization of variable ret (Jonathan Toppins) [2042564] - net: bonding: Use strscpy_pad() instead of manually-truncated strncpy() (Jonathan Toppins) [2042564] - bonding: init notify_work earlier to avoid uninitialized use (Jonathan Toppins) [2042564] - bonding: 3ad: Fix the conflict between bond_update_slave_arr and the state machine (Jonathan Toppins) [2042564] - scsi: lpfc: Update lpfc version to 14.0.0.4 (Dick Kennedy) [2034276] - scsi: lpfc: Add additional debugfs support for CMF (Dick Kennedy) [2034276] - scsi: lpfc: Cap CMF read bytes to MBPI (Dick Kennedy) [2034276] - scsi: lpfc: Adjust CMF total bytes and rxmonitor (Dick Kennedy) [2034276] - scsi: lpfc: Trigger SLI4 firmware dump before doing driver cleanup (Dick Kennedy) [2034276] - scsi: lpfc: Fix NPIV port deletion crash (Dick Kennedy) [2034276] - scsi: lpfc: Fix lpfc_force_rscn ndlp kref imbalance (Dick Kennedy) [2034276] - scsi: lpfc: Change return code on I/Os received during link bounce (Dick Kennedy) [2034276] - scsi: lpfc: Fix leaked lpfc_dmabuf mbox allocations with NPIV (Dick Kennedy) [2034276] - ppp: ensure minimum packet size in ppp_write() (Guillaume Nault) [2042937] - KVM: VMX: switch blocked_vcpu_on_cpu_lock to raw spinlock (Marcelo Tosatti) [2034126] - configs: Enable CONFIG_THINKPAD_LMI on x86_64 (Mark Pearson) [2030772] - platform/x86: think-lmi: Abort probe on analyze failure (Mark Pearson) [2030772] - platform/x86: think-lmi: add debug_cmd (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix possible mem-leaks on tlmi_analyze() error-exit (Mark Pearson) [2030772] - platform/x86: think-lmi: Split kobject_init() and kobject_add() calls (Mark Pearson) [2030772] - platform/x86: think-lmi: Move pending_reboot_attr to the attributes sysfs dir (Mark Pearson) [2030772] - platform/x86: think-lmi: Add pending_reboot support (Mark Pearson) [2030772] - platform/x86: think-lmi: Move kfree(setting->possible_values) to tlmi_attr_setting_release() (Mark Pearson) [2030772] - platform/x86: think-lmi: Split current_value to reflect only the value (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix issues with duplicate attributes (Mark Pearson) [2030772] - platform/x86: think-lmi: Return EINVAL when kbdlang gets set to a 0 length string (Mark Pearson) [2030772] - platform/x86: think-lmi: Add missing MODULE_DEVICE_TABLE (Mark Pearson) [2030772] - platform/x86: think-lmi: Avoid potential read before start of the buffer (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix check for admin password being set (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman/think-lmi: Make fw_attr_class global static (Mark Pearson) [2030772] - platform/x86: thinkpad-lmi: Remove unused display_name member from struct tlmi_pwd_setting (Mark Pearson) [2030772] - platform/x86: think-lmi: Add WMI interface support on Lenovo platforms (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman: fw_attr_inuse can be static (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman: Use firmware_attributes_class helper (Mark Pearson) [2030772] - platform/x86: firmware_attributes_class: Create helper file for handling firmware-attributes class registration events (Mark Pearson) [2030772] - x86/apic: Handle missing global clockevent gracefully (Lenny Szubowicz) [2033197] - RDMA/core: Don't infoleak GRH fields (Kamal Heib) [2036597] - RDMA/uverbs: Check for null return of kmalloc_array (Kamal Heib) [2036597] - RDMA/sa_query: Use strscpy_pad instead of memcpy to copy a string (Kamal Heib) [2036597] - RDMA/rw: switch to dma_map_sgtable() (Kamal Heib) [2036597] - RDMA/cma: Ensure rdma_addr_cancel() happens before issuing more requests (Kamal Heib) [2036597] - RDMA/cma: Fix listener leak in rdma_cma_listen_on_all() failure (Kamal Heib) [2036597] - RDMA/iwcm: Release resources if iw_cm module initialization fails (Kamal Heib) [2036597] - net: Set true network header for ECN decapsulation (Antoine Tenart) [2045059] - powerpc/bpf: Update ldimm64 instructions during extra pass (Yauheni Kaliuta) [2035973] - selftests: bpf: Fix bind on used port (Felix Maurer) [2025795] - bpf/selftests: Fix namespace mount setup in tc_redirect (Jiri Olsa) [2036016] - selftests/bpf: Fix possible/online index mismatch in perf_buffer test (Yauheni Kaliuta) [2039602] - selftests/bpf: Fix perf_buffer test on system with offline cpus (Yauheni Kaliuta) [2039602] - tracing: Tag trace_percpu_buffer as a percpu pointer (Jerome Marchand) [2031604] - tracing: Fix check for trace_percpu_buffer validity in get_trace_buf() (Jerome Marchand) [2031604] - hwmon: (k10temp) Support up to 12 CCDs on AMD Family of processors (David Arcari) [2022539] - hwmon: (k10temp) Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (David Arcari) [2022539] - hwmon: (k10temp) Remove unused definitions (David Arcari) [2022539] - x86/amd_nb: Add AMD Family 19h Models (10h-1Fh) and (A0h-AFh) PCI IDs (David Arcari) [2022539] - hwmon: (k10temp) Remove residues of current and voltage (David Arcari) [2022539] - hwmon: (k10temp) Update driver documentation (David Arcari) [2022539] - hwmon: (k10temp) Update documentation and add temp2_input info (David Arcari) [2022539] - docs: hwmon: k10temp: convert to ReST format (David Arcari) [2022539] - mptcp: fix deadlock in __mptcp_push_pending() (Davide Caratti) [2043598] - mptcp: clear 'kern' flag from fallback sockets (Davide Caratti) [2043598] - mptcp: remove tcp ulp setsockopt support (Davide Caratti) [2043598] - mptcp: never allow the PM to close a listener subflow (Davide Caratti) [2043598]- redhat: set LC_ALL=C before sorting config content (Frantisek Hrbata) - net: mana: Add RX fencing (Mohammed Gamal) [2030132] - net: mana: Add XDP support (Mohammed Gamal) [2030132] - net: mana: Fix memory leak in mana_hwc_create_wq (Mohammed Gamal) [2030132] - net: mana: Fix spelling mistake "calledd" -> "called" (Mohammed Gamal) [2030132] - net: mana: Support hibernation and kexec (Mohammed Gamal) [2030132] - net: mana: Improve the HWC error handling (Mohammed Gamal) [2030132] - net: mana: Report OS info to the PF driver (Mohammed Gamal) [2030132] - net: mana: Fix the netdev_err()'s vPort argument in mana_init_port() (Mohammed Gamal) [2030132] - net: mana: Allow setting the number of queues while the NIC is down (Mohammed Gamal) [2030132] - net: stmmac: Add GFP_DMA32 for rx buffers if no 64 capability (Mark Salter) [1989540] - net: stmmac: Fix potential integer overflow (Mark Salter) [1989540] - net: stmmac: fix issue where clk is being unprepared twice (Mark Salter) [1989540] - net: stmmac: fix kernel panic due to NULL pointer dereference of mdio_bus_data (Mark Salter) [1989540] - net: stmmac: fix system hang if change mac address after interface ifdown (Mark Salter) [1989540] - net: stmmac: correct clocks enabled in stmmac_vlan_rx_kill_vid() (Mark Salter) [1989540] - net: remove the mutex_acquire from __lock_sock_fast (Xin Long) [2026612] - net: core: Correct the sock::sk_lock.owned lockdep annotations (Xin Long) [2026612] - inet: use bigger hash table for IP ID generation (Xin Long) [2039969] {CVE-2021-45486} - net: revert "net: get rid of an signed integer overflow in ip_idents_reserve()" (Xin Long) [2039969] - net/mlx5: DR, Use FW API when updating FW-owned flow table (Michal Schmidt) [2042651] - ipv6: Continue processing multipath route even if gateway attribute is invalid (Hangbin Liu) [2041375] - ipv6: Check attribute length for RTA_GATEWAY when deleting multipath route (Hangbin Liu) [2041375] - ipv6: Do cleanup if attribute validation fails in multipath route (Hangbin Liu) [2041375] - ipv6: Check attribute length for RTA_GATEWAY in multipath route (Hangbin Liu) [2041375] - rtw89: fix maybe-uninitialized error (Íñigo Huguet) [2033291] - rtw89: enable driver and device RTL8852AE (Íñigo Huguet) [2033291] - rtw89: fix maybe-uninitialized error (RHEL only) (Íñigo Huguet) [2033291] - rtw89: 8852a: correct bit definition of dfs_en (Íñigo Huguet) [2033291] - rtw89: coex: Update COEX to 5.5.8 (Íñigo Huguet) [2033291] - rtw89: coex: Cancel PS leaving while C2H comes (Íñigo Huguet) [2033291] - rtw89: coex: Update BT counters while receiving report (Íñigo Huguet) [2033291] - rtw89: coex: Define LPS state for BTC using (Íñigo Huguet) [2033291] - rtw89: coex: Add MAC API to get BT polluted counter (Íñigo Huguet) [2033291] - rtw89: coex: Not to send H2C when WL not ready and count H2C (Íñigo Huguet) [2033291] - rtw89: coex: correct C2H header length (Íñigo Huguet) [2033291] - rtw89: don't kick off TX DMA if failed to write skb (Íñigo Huguet) [2033291] - rtw89: remove cch_by_bw which is not used (Íñigo Huguet) [2033291] - rtw89: fix sending wrong rtwsta->mac_id to firmware to fill address CAM (Íñigo Huguet) [2033291] - rtw89: fix incorrect channel info during scan (Íñigo Huguet) [2033291] - rtw89: update scan_mac_addr during scanning period (Íñigo Huguet) [2033291] - rtw89: use inline function instead macro to set H2C and CAM (Íñigo Huguet) [2033291] - rtw89: add const in the cast of le32_get_bits() (Íñigo Huguet) [2033291] - rtw89: add AXIDMA and TX FIFO dump in mac_mem_dump (Íñigo Huguet) [2033291] - rtw89: fix potentially access out of range of RF register array (Íñigo Huguet) [2033291] - rtw89: remove unneeded variable (Íñigo Huguet) [2033291] - rtw89: remove unnecessary conditional operators (Íñigo Huguet) [2033291] - rtw89: update rtw89_regulatory map to R58-R31 (Íñigo Huguet) [2033291] - rtw89: update tx power limit/limit_ru tables to R54 (Íñigo Huguet) [2033291] - rtw89: update rtw89 regulation definition to R58-R31 (Íñigo Huguet) [2033291] - rtw89: fill regd field of limit/limit_ru tables by enum (Íñigo Huguet) [2033291] - rtw89: update partition size of firmware header on skb->data (Íñigo Huguet) [2033291] - rtw89: Fix variable dereferenced before check 'sta' (Íñigo Huguet) [2033291] - rtw89: fix return value in hfc_pub_cfg_chk (Íñigo Huguet) [2033291] - rtw89: remove duplicate register definitions (Íñigo Huguet) [2033291] - rtw89: fix error function parameter (Íñigo Huguet) [2033291] - rtw89: remove unneeded semicolon (Íñigo Huguet) [2033291] - rtw89: fix return value check in rtw89_cam_send_sec_key_cmd() (Íñigo Huguet) [2033291] - rtw89: Remove redundant check of ret after call to rtw89_mac_enable_bb_rf (Íñigo Huguet) [2033291] - rtw89: Fix two spelling mistakes in debug messages (Íñigo Huguet) [2033291] - rtw89: add Realtek 802.11ax driver (Íñigo Huguet) [2033291] - powerpc/doc: Fix htmldocs errors (Diego Domingos) [2004798] - pseries/drmem: update LMBs after LPM (Diego Domingos) [2004798] - powerpc/pseries: Add support for FORM2 associativity (Diego Domingos) [2004798] - powerpc/pseries: Add a helper for form1 cpu distance (Diego Domingos) [2004798] - powerpc/pseries: Consolidate different NUMA distance update code paths (Diego Domingos) [2004798] - powerpc/pseries: Rename TYPE1_AFFINITY to FORM1_AFFINITY (Diego Domingos) [2004798] - powerpc/pseries: rename min_common_depth to primary_domain_index (Diego Domingos) [2004798] - powerpc/numa: Fix build when CONFIG_NUMA=n (Diego Domingos) [2004798] - pseries/hotplug-memory: hot-add: skip redundant LMB lookup (Diego Domingos) [2004798] - selftests: icmp_redirect: pass xfail=0 to log_test() (Hangbin Liu) [2041308] - selftests: net: Correct ping6 expected rc from 2 to 1 (Hangbin Liu) [2041308] - mt76: enable new device MT7921E (Íñigo Huguet) [2024056 1972045] - vrf: Reset IPCB/IP6CB when processing outbound pkts in vrf dev xmit (Antoine Tenart) [2044254] - SUNRPC: prevent port reuse on transports which don't request it. (Benjamin Coddington) [2016646] - SUNRPC: Fix races when closing the socket (Benjamin Coddington) [2016646] - SUNRPC: Prevent immediate close+reconnect (Benjamin Coddington) [2016646] - SUNRPC: Clean up scheduling of autoclose (Benjamin Coddington) [2016646] - SUNRPC: Fix potential memory corruption (Benjamin Coddington) [2016646] - sunrpc: remove unnecessary test in rpc_task_set_client() (Benjamin Coddington) [2016646] - SUNRPC: Replace use of socket sk_callback_lock with sock_lock (Benjamin Coddington) [2016646] - arm64: numa: simplify dummy_numa_init() (Vitaly Kuznetsov) [2029774] - ACPI: NUMA: Process hotpluggable memblocks when !CONFIG_MEMORY_HOTPLUG (Vitaly Kuznetsov) [2029774] - s390/sclp: fix Secure-IPL facility detection (Stefan Schulze Frielinghaus) [2039182] - powerpc/pseries/mobility: ignore ibm, platform-facilities updates (Diego Domingos) [2031827] - of: Fix property name in of_node_get_device_type (Diego Domingos) [2031827] - of: Add device_type access helper functions (Diego Domingos) [2031827] - powerpc/watchdog: help remote CPUs to flush NMI printk output (Diego Domingos) [2030259] - powerpc/watchdog: Fix wd_smp_last_reset_tb reporting (Diego Domingos) [2030259] - powerpc/watchdog: read TB close to where it is used (Diego Domingos) [2030259] - powerpc/watchdog: Avoid holding wd_smp_lock over printk and smp_send_nmi_ipi (Diego Domingos) [2030259] - powerpc/watchdog: tighten non-atomic read-modify-write access (Diego Domingos) [2030259] - powerpc/watchdog: Fix missed watchdog reset due to memory ordering race (Diego Domingos) [2030259] - selftests/sgx: Fix corrupted cpuid macro invocation (Vladis Dronov) [1920030] - x86/sgx: Fix minor documentation issues (Vladis Dronov) [1920030] - selftests/sgx: Add test for multiple TCS entry (Vladis Dronov) [1920030] - selftests/sgx: Enable multiple thread support (Vladis Dronov) [1920030] - selftests/sgx: Add page permission and exception test (Vladis Dronov) [1920030] - selftests/sgx: Rename test properties in preparation for more enclave tests (Vladis Dronov) [1920030] - selftests/sgx: Provide per-op parameter structs for the test enclave (Vladis Dronov) [1920030] - selftests/sgx: Add a new kselftest: Unclobbered_vdso_oversubscribed (Vladis Dronov) [1920030] - selftests/sgx: Move setup_test_encl() to each TEST_F() (Vladis Dronov) [1920030] - selftests/sgx: Encpsulate the test enclave creation (Vladis Dronov) [1920030] - selftests/sgx: Dump segments and /proc/self/maps only on failure (Vladis Dronov) [1920030] - selftests/sgx: Create a heap for the test enclave (Vladis Dronov) [1920030] - selftests/sgx: Make data measurement for an enclave segment optional (Vladis Dronov) [1920030] - selftests/sgx: Assign source for each segment (Vladis Dronov) [1920030] - selftests/sgx: Fix a benign linker warning (Vladis Dronov) [1920030] - x86/sgx: Fix free page accounting (Vladis Dronov) [1920030] - x86/sgx: Add check for SGX pages to ghes_do_memory_failure() (Vladis Dronov) [1920030] - x86/sgx: Add hook to error injection address validation (Vladis Dronov) [1920030] - x86/sgx: Hook arch_memory_failure() into mainline code (Vladis Dronov) [1920030] - x86/sgx: Add SGX infrastructure to recover from poison (Vladis Dronov) [1920030] - x86/sgx: Initial poison handling for dirty and free pages (Vladis Dronov) [1920030] - x86/sgx: Add infrastructure to identify SGX EPC pages (Vladis Dronov) [1920030] - x86/sgx: Add new sgx_epc_page flag bit to mark free pages (Vladis Dronov) [1920030] - selftests/sgx: Fix Q1 and Q2 calculation in sigstruct.c (Vladis Dronov) [1920030] - selftests/sgx: remove checks for file execute permissions (Vladis Dronov) [1920030] - selftests/sgx: Refine the test enclave to have storage (Vladis Dronov) [1920030] - selftests/sgx: Add EXPECT_EEXIT() macro (Vladis Dronov) [1920030] - selftests/sgx: Dump enclave memory map (Vladis Dronov) [1920030] - selftests/sgx: Migrate to kselftest harness (Vladis Dronov) [1920030] - selftests/sgx: Rename 'eenter' and 'sgx_call_vdso' (Vladis Dronov) [1920030] - x86/sgx: Add missing xa_destroy() when virtual EPC is destroyed (Vladis Dronov) [1920030] - x86/sgx: Correct kernel-doc's arg name in sgx_encl_release() (Vladis Dronov) [1920030] - x86: Fix leftover comment typos (Vladis Dronov) [1920030] - mm,hwpoison: return -EHWPOISON to denote that the page has already been poisoned (Vladis Dronov) [1920030] - mm/memory-failure: use a mutex to avoid memory_failure() races (Vladis Dronov) [1920030] - mm,hwpoison: take free pages off the buddy freelists (Vladis Dronov) [1920030] - sched/fair: Consider SMT in ASYM_PACKING load balance (Prarit Bhargava) [1971924] - sched/fair: Carve out logic to mark a group for asymmetric packing (Prarit Bhargava) [1971924] - sched/fair: Provide update_sg_lb_stats() with sched domain statistics (Prarit Bhargava) [1971924] - sched/fair: Optimize checking for group_asym_packing (Prarit Bhargava) [1971924] - sched/topology: Introduce sched_group::flags (Prarit Bhargava) [1971924] - x86/sched: Decrease further the priorities of SMT siblings (Prarit Bhargava) [1971924]- nvme-fc: remove freeze/unfreeze around update_nr_hw_queues (Ewan D. Milne) [1996109] - nvme-fc: avoid race between time out and tear down (Ewan D. Milne) [1996109] - nvme-fc: update hardware queues before using them (Ewan D. Milne) [1996109] - igbvf: Refactor trace (Corinna Vinschen) [2039886] - igbvf: fix double free in `igbvf_probe` (Corinna Vinschen) [2039886] - mm/memory_hotplug: remove is_mem_section_removable() (David Hildenbrand) [2008072] - powerpc/pseries/hotplug-memory: stop checking is_mem_section_removable() (David Hildenbrand) [2008072] - drivers/base/memory.c: indicate all memory blocks as removable (David Hildenbrand) [2008072] - drivers/base/memory.c: fixup documentation of removable/phys_index/block_size_bytes (David Hildenbrand) [2008072] - Revert "mpi3mr: mark as tech preview" (Tomas Henzl) [1989634] - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO (Tomas Henzl) [1977833] - scsi: mpi3mr: Use scnprintf() instead of snprintf() (Tomas Henzl) [1998599] - scsi: mpi3mr: Fix duplicate device entries when scanning through sysfs (Tomas Henzl) [1998599] - scsi: mpi3mr: Clean up mpi3mr_print_ioc_info() (Tomas Henzl) [1989634] - scsi: mpi3mr: Set up IRQs in resume path (Tomas Henzl) [1991577] - Revert "scsi: lpfc: ls_rjt erroneus FLOGIs" (Dick Kennedy) [2032488] - pseries/eeh: Fix the kdump kernel crash during eeh_pseries_init (Steve Best) [2028253] - arm64: smp: Add missing prototype for some smp.c functions (Mark Salter) [1996738] - irqchip/gic-v3-its: Remove unnecessary oom message (Mark Salter) [1996738] - irqchip/gic-v2m: Remove unnecessary oom message (Mark Salter) [1996738] - irqchip/gic: Split vGIC probing information from the GIC code (Mark Salter) [1996738] - irqchip/gic-v3: Workaround inconsistent PMR setting on NMI entry (Mark Salter) [1996738] - irqchip/gic-v3: Do not enable irqs when handling spurious interrups (Mark Salter) [1996738] - irqchip/gic-v4.1: Disable vSGI upon (GIC CPUIF < v4.1) detection (Mark Salter) [1996738] - irqchip/gic-v3: Fix OF_BAD_ADDR error handling (Mark Salter) [1996738] - arm64: Move ICH_ sysreg bits from arm-gic-v3.h to sysreg.h (Mark Salter) [1996738] - irqchip/gic-v3-its: Drop the setting of PTZ altogether (Mark Salter) [1996738] - irqchip/gic-v3-its: Add a cache invalidation right after vPE unmapping (Mark Salter) [1996738] - irqchip/gic-v3: Fix typos in PMR/RPR SCR_EL3.FIQ handling explanation (Mark Salter) [1996738] - genirq/msi: Initialize msi_alloc_info before calling msi_domain_prepare_irqs() (Mark Salter) [1996738] - irqchip/gic: Spelling s/REturn/Return/ (Mark Salter) [1996738] - irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend (Mark Salter) [1996738] - irq-chip/gic-v3-its: Fix crash if ITS is in a proximity domain without processor or memory (Mark Salter) [1996738] - irqchip/gic: Cleanup Franken-GIC handling (Mark Salter) [1996738] - arm64: Implement panic_smp_self_stop() (Mark Salter) [1996738] - arm64: Improve parking of stopped CPUs (Mark Salter) [1996738] - genirq: Allow interrupts to be excluded from /proc/interrupts (Mark Salter) [1996738] - irqchip/gic-v3: Support pseudo-NMIs when SCR_EL3.FIQ == 0 (Mark Salter) [1996738] - irqchip/gic-v3: Spell out when pseudo-NMIs are enabled (Mark Salter) [1996738] - irqchip/gic-v2, v3: Prevent SW resends entirely (Mark Salter) [1996738] - irqchip/git-v3-its: Implement irq_retrigger callback for device-triggered LPIs (Mark Salter) [1996738] - irqchip/gic-v2, v3: Implement irq_chip->irq_retrigger() (Mark Salter) [1996738] - irqchip/gic-v4.1: Use GFP_ATOMIC flag in allocate_vpe_l1_table() (Mark Salter) [1996738] - irqchip/gic-v4.1: Ensure accessing the correct RD when writing INVALLR (Mark Salter) [1996738] - irqchip/gic-v3: Remove unused register definition (Mark Salter) [1996738] - drivers/irqchip: Use new macro ACPI_DECLARE_SUBTABLE_PROBE_ENTRY (Mark Salter) [1996738] - drivers/acpi: Add new macro ACPI_DECLARE_SUBTABLE_PROBE_ENTRY (Mark Salter) [1996738] - KVM: arm64: vgic-v4: Plug race between non-residency and v4.1 doorbell (Mark Salter) [1996738] - irqchip/gic: Atomically update affinity (Mark Salter) [1996738] - irqchip/gic-v4.1: Use readx_poll_timeout_atomic() to fix sleep in atomic (Mark Salter) [1996738] - irqchip/gic-v2, v3: Drop extra IRQ_NOAUTOEN setting for (E)PPIs (Mark Salter) [1996738] - irqchip/gic-v3-its: Balance initial LPI affinity across CPUs (Mark Salter) [1996738] - irqchip/gic-v3-its: Track LPI distribution on a per CPU basis (Mark Salter) [1996738] - irqchip/gic-v3: Fix missing "__init" for gic_smp_init() (Mark Salter) [1996738] - selftests/bpf: Enlarge select() timeout for test_maps (Jiri Benc) [1869444] - PCI: Do not enable AtomicOps on VFs (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Fix stats counters (Selvin Xavier) [1987081 1984339 2001893] - RDMA/bnxt_re: Prefer kcalloc over open coded arithmetic (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Remove unpaired rtnl unlock in bnxt_re_dev_init() (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Add missing spin lock initialization (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Fix uninitialized struct bit field rsvd1 (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Update ABI to pass wqe-mode to user space (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Enable global atomic ops if platform supports (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Drop unnecessary NULL checks after container_of (Selvin Xavier) [1987081 1984339] - dm btree remove: fix use after free in rebalance_children() (Benjamin Marzinski) [2034424] - dm table: log table creation error code (Benjamin Marzinski) [2034424] - dm: make workqueue names device-specific (Benjamin Marzinski) [2034424] - dm writecache: Make use of the helper macro kthread_run() (Benjamin Marzinski) [2034424] - dm crypt: Make use of the helper macro kthread_run() (Benjamin Marzinski) [2034424] - dm: fix mempool NULL pointer race when completing IO (Benjamin Marzinski) [2034424] - dm rq: don't queue request to blk-mq during DM suspend (Benjamin Marzinski) [1891486] - dm verity: skip redundant verity_handle_err() on I/O errors (Benjamin Marzinski) [2034424] - dm writecache: add event counters (Benjamin Marzinski) [2034424] - dm writecache: report invalid return from writecache_map helpers (Benjamin Marzinski) [2034424] - dm writecache: further writecache_map() cleanup (Benjamin Marzinski) [2034424] - dm writecache: factor out writecache_map_remap_origin() (Benjamin Marzinski) [2034424] - dm writecache: split up writecache_map() to improve code readability (Benjamin Marzinski) [2034424] - dm btree remove: assign new_root only when removal succeeds (Benjamin Marzinski) [2034424] - dm ps io affinity: remove redundant continue statement (Benjamin Marzinski) [2034424] - dm: rearrange core declarations for extended use from dm-zone.c (Benjamin Marzinski) [2034424] - dm space map disk: cache a small number of index entries (Benjamin Marzinski) [2034424] - dm space maps: improve performance with inc/dec on ranges of blocks (Benjamin Marzinski) [2034424] - dm space maps: don't reset space map allocation cursor when committing (Benjamin Marzinski) [2034424] - dm btree: improve btree residency (Benjamin Marzinski) [2034424] - dm integrity: fix sparse warnings (Benjamin Marzinski) [2034424] - dm: replace dm_vcalloc() (Benjamin Marzinski) [2034424] - dm integrity: add the "reset_recalculate" feature flag (Benjamin Marzinski) [2034424] - dm cache: remove needless request_queue NULL pointer checks (Benjamin Marzinski) [2034424] - dm thin: remove needless request_queue NULL pointer check (Benjamin Marzinski) [2034424] - dm ioctl: replace device hash with red-black tree (Benjamin Marzinski) [2034424] - recordmcount.pl: fix typo in s390 mcount regex (Jerome Marchand) [2025890] - recordmcount.pl: look for jgnop instruction as well as bcrl on s390 (Jerome Marchand) [2025890] - KVM: x86: Wait for IPIs to be delivered when handling Hyper-V TLB flush hypercall (Vitaly Kuznetsov) [1868572] - HID: magicmouse: prevent division by 0 on scroll (Benjamin Tissoires) [2022814] - HID: input: set usage type to key on keycode remap (Benjamin Tissoires) [2022814] - HID: input: Fix parsing of HID_CP_CONSUMER_CONTROL fields (Benjamin Tissoires) [2022814] - HID: u2fzero: properly handle timeouts in usb_submit_urb (Benjamin Tissoires) [2022814] - HID: u2fzero: clarify error check and length calculations (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix potential NULL pointer dereference (Benjamin Tissoires) [2022814] - HID: u2fzero: ignore incomplete packets without data (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix potential NULL pointer dereference (Benjamin Tissoires) [2022814] - HID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs (Benjamin Tissoires) [2022814] - HID: apple: Fix logical maximum and usage maximum of Magic Keyboard JIS (Benjamin Tissoires) [2022814] - HID: betop: fix slab-out-of-bounds Write in betop_probe (Benjamin Tissoires) [2022814] - HID: usbhid: Simplify code in hid_submit_ctrl() (Benjamin Tissoires) [2022814] - HID: usbhid: Fix warning caused by 0-length input reports (Benjamin Tissoires) [2022814] - HID: usbhid: Fix flood of "control queue full" messages (Benjamin Tissoires) [2022814] - HID: sony: Fix more ShanWan clone gamepads to not rumble when plugged in. (Benjamin Tissoires) [2022814] - HID: sony: support for the ghlive ps4 dongles (Benjamin Tissoires) [2022814] - HID: thrustmaster: clean up Makefile and adapt quirks (Benjamin Tissoires) [2022814] - HID: i2c-hid: Fix Elan touchpad regression (Benjamin Tissoires) [2022814] - HID: asus: Prevent Claymore sending suspend event (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add dyndbg prints for debugging (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add support for PM suspend and resume (Benjamin Tissoires) [2022814] - HID: amd_sfh: Move hid probe after sensor is enabled (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add command response to check command status (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix period data field to enable sensor (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: battery: provide CAPACITY property for newer devices (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leak in thrustmaster_interrupts() (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leak in remove (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leaks in probe (Benjamin Tissoires) [2022814] - HID: elo: update the reference count of the usb device structure (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Use 'atomic_inc_return' instead of hand-writing it (Benjamin Tissoires) [2022814] - HID: ft260: fix device removal due to USB disconnect (Benjamin Tissoires) [2022814] - HID: apple: Add missing scan code event for keys handled by hid-apple (Benjamin Tissoires) [2022814] - HID: cmedia: add support for HS-100B mute button (Benjamin Tissoires) [2022814] - HID: i2c-hid: goodix: Use the devm variant of regulator_register_notifier() (Benjamin Tissoires) [2022814] - HID: wacom: Refactor touch input mute checks into a common function (Benjamin Tissoires) [2022814] - HID: wacom: Avoid sending empty sync events (Benjamin Tissoires) [2022814] - HID: wacom: Short-circuit processing of touch when it is disabled (Benjamin Tissoires) [2022814] - HID: wacom: set initial hardware touch switch state to 'off' (Benjamin Tissoires) [2022814] - HID: wacom: Skip processing of touches with negative slot values (Benjamin Tissoires) [2022814] - HID: wacom: Re-enable touch by default for Cintiq 24HDT / 27QHDT (Benjamin Tissoires) [2022814] - HID: Kconfig: Fix spelling mistake "Uninterruptable" -> "Uninterruptible" (Benjamin Tissoires) [2022814] - HID: apple: Add support for Keychron K1 wireless keyboard (Benjamin Tissoires) [2022814] - HID: usbhid: free raw_report buffers in usbhid_stop (Benjamin Tissoires) [2022814] - HID: fix typo in Kconfig (Benjamin Tissoires) [2022814] - HID: ft260: fix format type warning in ft260_word_show() (Benjamin Tissoires) [2022814] - HID: i2c-hid: goodix: Tie the reset line to true state of the regulator (Benjamin Tissoires) [2022814] - HID: amd_sfh: Use correct MMIO register for DMA address (Benjamin Tissoires) [2022814] - HID: magicmouse: high-resolution scroll threshold (Benjamin Tissoires) [2022814] - HID: magicmouse: enable high-resolution scroll (Benjamin Tissoires) [2022814] - HID: asus: Remove check for same LED brightness on set (Benjamin Tissoires) [2022814] - HID: input: do not report stylus battery state as "full" (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: use async resume function (Benjamin Tissoires) [2022814] - HID: thrustmaster: Switch to kmemdup() when allocate change_request (Benjamin Tissoires) [2022814] - HID: multitouch: Disable event reporting on suspend when the device is not a wakeup-source (Benjamin Tissoires) [2022814] - HID: logitech-dj: Implement may_wakeup ll-driver callback (Benjamin Tissoires) [2022814] - HID: usbhid: Implement may_wakeup ll-driver callback (Benjamin Tissoires) [2022814] - HID: core: Add hid_hw_may_wakeup() function (Benjamin Tissoires) [2022814] - HID: input: Add support for Programmable Buttons (Benjamin Tissoires) [2022814] - HID: wacom: Correct base usage for capacitive ExpressKey status bits (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add initial support for HPD sensor (Benjamin Tissoires) [2022814 1961759] - HID: amd_sfh: Extend ALS support for newer AMD platform (Benjamin Tissoires) [2022814 1961759] - HID: amd_sfh: Extend driver capabilities for multi-generation support (Benjamin Tissoires) [2022814 1961759] - HID: surface-hid: Fix get-report request (Benjamin Tissoires) [2022814] - HID: sony: fix freeze when inserting ghlive ps3/wii dongles (Benjamin Tissoires) [2022814] - HID: usbkbd: Avoid GFP_ATOMIC when GFP_KERNEL is possible (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Specify that EHL no cache snooping (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ishtp: Add dma_no_cache_snooping() callback (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Set ISH driver depends on x86 (Benjamin Tissoires) [2022814] - HID: hid-input: add Surface Go battery quirk (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix minor typos in comments (Benjamin Tissoires) [2022814] - HID: magicmouse: fix NULL-deref on disconnect (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Add Alder Lake device IDs (Benjamin Tissoires) [2022814] - HID: i2c-hid: fix format string mismatch (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix memory leak in amd_sfh_work (Benjamin Tissoires) [2022814] - HID: amd_sfh: Use devm_kzalloc() instead of kzalloc() (Benjamin Tissoires) [2022814] - HID: ft260: improve error handling of ft260_hid_feature_report_get() (Benjamin Tissoires) [2022814] - HID: asus: Cleanup Asus T101HA keyboard-dock handling (Benjamin Tissoires) [2022814] - HID: magicmouse: fix crash when disconnecting Magic Trackpad 2 (Benjamin Tissoires) [2022814] - HID: gt683r: add missing MODULE_DEVICE_TABLE (Benjamin Tissoires) [2022814] - HID: pidff: fix error return code in hid_pidff_init() (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: initialize level variable (Benjamin Tissoires) [2022814] - HID: multitouch: Disable event reporting on suspend on the Asus T101HA touchpad (Benjamin Tissoires) [2022814] - HID: core: Remove extraneous empty line before EXPORT_SYMBOL_GPL(hid_check_keys_pressed) (Benjamin Tissoires) [2022814] - HID: usbmouse: Avoid GFP_ATOMIC when GFP_KERNEL is possible (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Process failure of sensor_hub_set_feature() (Benjamin Tissoires) [2022814] - HID: i2c-hid: Skip ELAN power-on command after reset (Benjamin Tissoires) [2022814] - HID: usbhid: fix info leak in hid_submit_ctrl (Benjamin Tissoires) [2022814] - HID: Add BUS_VIRTUAL to hid_connect logging (Benjamin Tissoires) [2022814] - HID: input: replace outdated HID numbers+comments with macros (Benjamin Tissoires) [2022814] - HID: multitouch: set Stylus suffix for Stylus-application devices, too (Benjamin Tissoires) [2022814] - HID: multitouch: require Finger field to mark Win8 reports as MT (Benjamin Tissoires) [2022814] - HID: remove the unnecessary redefinition of a macro (Benjamin Tissoires) [2022814] - HID: quirks: Add quirk for Lenovo optical mouse (Benjamin Tissoires) [2022814] - HID: asus: filter G713/G733 key event to prevent shutdown (Benjamin Tissoires) [2022814] - HID: lg-g15 + ite: Add MODULE_AUTHOR (Benjamin Tissoires) [2022814] - HID: lg-g15: Add support for the Logitech Z-10 speakers (Benjamin Tissoires) [2022814] - HID: lg-g15: Make the LED-name used by lg_g15_register_led() a parameter (Benjamin Tissoires) [2022814] - HID: lg-g15: Add a lg_g15_init_input_dev() helper function (Benjamin Tissoires) [2022814] - HID: lg-g15: Add a lg_g15_handle_lcd_menu_keys() helper function (Benjamin Tissoires) [2022814] - HID: lg-g15: Remove unused size argument from lg_*_event() functions (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Return error for hid_set_field() failure (Benjamin Tissoires) [2022814] - HID: ft260: check data size in ft260_smbus_write() (Benjamin Tissoires) [2022814] - HID: surface-hid: Fix integer endian conversion (Benjamin Tissoires) [2022814] - HID: hid-debug: recognize KEY_ASSISTANT and KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [2022814] - HID: hid-input: add mapping for emoji picker key (Benjamin Tissoires) [2022814] - HID: a4tech: use A4_2WHEEL_MOUSE_HACK_B8 for A4TECH NB-95 (Benjamin Tissoires) [2022814] - HID: logitech-dj/hidpp: Add info/warn/err messages about 27 MHz keyboard encryption (Benjamin Tissoires) [2022814] - HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K15A keyboard-dock (Benjamin Tissoires) [2022814] - HID: thrustmaster: fix return value check in thrustmaster_probe() (Benjamin Tissoires) [2022814] - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for Saitek X65 (Benjamin Tissoires) [2022814] - HID: do not use down_interruptible() when unbinding devices (Benjamin Tissoires) [2022814] - HID: asus: Filter keyboard EC for old ROG keyboard (Benjamin Tissoires) [2022814] - HID: semitek: new driver for GK6X series keyboards (Benjamin Tissoires) [2022814] - HID: wacom: Setup pen input capabilities to the targeted tools (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Move 'hsdev' description to correct struct definition (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Remove unused struct member 'quirks' (Benjamin Tissoires) [2022814] - HID: wacom_sys: Demote kernel-doc abuse (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: hid-uclogic-params: Ensure function names are present and correct in kernel-doc headers (Benjamin Tissoires) [2022814] - HID: hid-uclogic-rdesc: Kernel-doc is for functions and structs (Benjamin Tissoires) [2022814] - HID: hid-logitech-hidpp: Fix conformant kernel-doc header and demote abuses (Benjamin Tissoires) [2022814] - HID: hid-picolcd_core: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: hid-kye: Fix incorrect function name for kye_tablet_enable() (Benjamin Tissoires) [2022814] - HID: hid-core: Fix incorrect function name in header (Benjamin Tissoires) [2022814] - HID: hid-alps: Correct struct misnaming (Benjamin Tissoires) [2022814] - HID: usbhid: hid-pidff: Demote a couple kernel-doc abuses (Benjamin Tissoires) [2022814] - HID: usbhid: Repair a formatting issue in a struct description (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Fix 'suggest-attribute=format' compiler warning (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ishtp-fw-loader: Fix a bunch of formatting issues (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Fix incorrect function name report_bad_packet() (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Correct fw_reset_work_fn() function name in header (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix potential copy/paste error (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix a little doc-rot (Benjamin Tissoires) [2022814] - HID: intel-ish: Fix a naming disparity and a formatting error (Benjamin Tissoires) [2022814] - HID: intel-ish: Supply some missing param descriptions (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: pci-ish: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Move variable to where it's actually used (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Remove unused variable 'err' (Benjamin Tissoires) [2022814] - HID: hid-thrustmaster: Demote a bunch of kernel-doc abuses (Benjamin Tissoires) [2022814] - HID: input: map battery capacity (00850065) (Benjamin Tissoires) [2022814] - HID: magicmouse: fix reconnection of Magic Mouse 2 (Benjamin Tissoires) [2022814] - HID: magicmouse: fix 3 button emulation of Mouse 2 (Benjamin Tissoires) [2022814] - HID: magicmouse: add Apple Magic Mouse 2 support (Benjamin Tissoires) [2022814] - HID: lenovo: Add support for Thinkpad X1 Tablet Thin keyboard (Benjamin Tissoires) [2022814] - HID: lenovo: Rework how the tp10ubkbd code decides which USB interface to use (Benjamin Tissoires) [2022814] - HID: lenovo: Set default_triggers for the mute and micmute LEDs (Benjamin Tissoires) [2022814] - HID: lenovo: Map mic-mute button to KEY_F20 instead of KEY_MICMUTE (Benjamin Tissoires) [2022814] - HID: lenovo: Set LEDs max_brightness value (Benjamin Tissoires) [2022814] - HID: lenovo: Remove lenovo_led_brightness_get() (Benjamin Tissoires) [2022814] - HID: lenovo: Check hid_get_drvdata() returns non NULL in lenovo_event() (Benjamin Tissoires) [2022814] - HID: lenovo: Fix lenovo_led_set_tp10ubkbd() error handling (Benjamin Tissoires) [2022814] - HID: lenovo: Use brightness_set_blocking callback for setting LEDs brightness (Benjamin Tissoires) [2022814] - HID: elan: Remove elan_mute_led_get_brigtness() (Benjamin Tissoires) [2022814] - HID: elan: Set default_trigger for the mute LED (Benjamin Tissoires) [2022814] - HID: elan: Silence mute LED errors being logged when the device is unplugged (Benjamin Tissoires) [2022814] - HID: fix memdup.cocci warnings (Benjamin Tissoires) [2022814] - HID: surface-hid: Add support for legacy keyboard interface (Benjamin Tissoires) [2022814] - HID: Add support for Surface Aggregator Module HID transport (Benjamin Tissoires) [2022814] - HID: thrustmaster: introduce proper USB dependency (Benjamin Tissoires) [2022814] - HID: intel_ish-hid: HBM: Use connected standby state bit during suspend/resume (Benjamin Tissoires) [2022814] - HID: ft260: fix an error message in ft260_i2c_write_read() (Benjamin Tissoires) [2022814] - HID: support for initialization of some Thrustmaster wheels (Benjamin Tissoires) [2022814] - HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices (Benjamin Tissoires) [2022814] - HID: ft260: add usb hid to i2c host bridge driver (Benjamin Tissoires) [2022814] - iio: Add relative sensitivity support (Benjamin Tissoires) [2022814] - iio: hid-sensors: Move get sensitivity attribute to hid-sensor-common (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Make remove callback return void (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Simplify logic in ishtp_cl_device_remove() (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Drop if block with an always false condition (Benjamin Tissoires) [2022814] - AMD_SFH: Add DMI quirk table for BIOS-es which don't set the activestatus bits (Benjamin Tissoires) [2022814] - AMD_SFH: Add sensor_mask module parameter (Benjamin Tissoires) [2022814] - AMD_SFH: Removed unused activecontrolstatus member from the amd_mp2_dev struct (Benjamin Tissoires) [2022814] - HID: wacom: Assign boolean values to a bool variable (Benjamin Tissoires) [2022814] - HID cp2112: fix support for multiple gpiochips (Benjamin Tissoires) [2022814] - HID: alps: fix error return code in alps_input_configured() (Benjamin Tissoires) [2022814] - HID: asus: Add support for 2021 ASUS N-Key keyboard (Benjamin Tissoires) [2022814] - HID: hiddev: Return specific error codes on connect failure (Benjamin Tissoires) [2022814] - HID: plantronics: Workaround for double volume key presses (Benjamin Tissoires) [2022814] - HID: logitech-dj: Handle newer quad/bt2.0 receivers in HID proxy mode (Benjamin Tissoires) [2022814] - HID: logitech-dj: Use hid-ids.h defines for USB device-ids for all supported devices (Benjamin Tissoires) [2022814] - HID: google: add don USB id (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Drop redundant ACPI_PTR() (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Move GUID out of function and described it (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Switch to new style i2c-driver probe function (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Get ACPI companion only once and reuse it (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense player LED support. (Benjamin Tissoires) [2022814] - HID: playstation: add microphone mute support for DualSense. (Benjamin Tissoires) [2022814] - HID: playstation: add initial DualSense lightbar support. (Benjamin Tissoires) [2022814] - HID: wacom: Ignore attempts to overwrite the touch_max value from HID (Benjamin Tissoires) [2022814] - HID: playstation: fix array size comparison (off-by-one) (Benjamin Tissoires) [2022814] - HID: playstation: fix unused variable in ps_battery_get_property. (Benjamin Tissoires) [2022814] - HID: playstation: report DualSense hardware and firmware version. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense classic rumble support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense Bluetooth support. (Benjamin Tissoires) [2022814] - HID: playstation: track devices in list. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense accelerometer and gyroscope support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense touchpad support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense battery support. (Benjamin Tissoires) [2022814] - HID: playstation: use DualSense MAC address as unique identifier. (Benjamin Tissoires) [2022814] - HID: playstation: initial DualSense USB support. (Benjamin Tissoires) [2022814] - HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch 10E (Benjamin Tissoires) [2022814] - HID: Ignore battery for Elan touchscreen on HP Spectre X360 15-df0xxx (Benjamin Tissoires) [2022814] - HID: logitech-dj: add support for the new lightspeed connection iteration (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID (Benjamin Tissoires) [2022814] - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming (Benjamin Tissoires) [2022814] - HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15 (Benjamin Tissoires) [2022814] - HID: displays: convert sysfs sprintf/snprintf family to sysfs_emit (Benjamin Tissoires) [2022814] - HID: wacom: convert sysfs sprintf/snprintf family to sysfs_emit (Benjamin Tissoires) [2022814] - HID: lg-g15: make a const array static, makes object smaller (Benjamin Tissoires) [2022814] - HID: google: Get HID report on probe to confirm tablet switch state (Benjamin Tissoires) [2022814] - HID: hid-input: avoid splitting keyboard, system and consumer controls (Benjamin Tissoires) [2022814] - HID: correct kernel-doc notation in hid-quirks.c (Benjamin Tissoires) [2022814] - HID: correct kernel-doc notation in (Benjamin Tissoires) [2022814] - HID: wacom: Correct NULL dereference on AES pen proximity (Benjamin Tissoires) [2022814] - HID: multitouch: Set to high latency mode on suspend. (Benjamin Tissoires) [2022814] - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Add custom sensor iio support (Benjamin Tissoires) [2022814] - HID: i2c-hid: Introduce goodix-i2c-hid using i2c-hid core (Benjamin Tissoires) [2022814] - redhat: HID: enable I2C_HID_ACPI (Benjamin Tissoires) [2022814] - HID: i2c-hid: Reorganize so ACPI and OF are separate modules (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: add support for Unified Battery (1004) feature (Benjamin Tissoires) [2022814] - HID: sony: Add support for tilt on guitar hero guitars (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode (Benjamin Tissoires) [2022814] - HID: chicony: Add Wireless Radio Control feature for Chicony devices (Benjamin Tissoires) [2022814] - HID: Ignore battery for Elan touchscreen on ASUS UX550 (Benjamin Tissoires) [2022814] - HID: logitech-dj: add the G602 receiver (Benjamin Tissoires) [2022814] - HID: core: detect and skip invalid inputs to snto32() (Benjamin Tissoires) [2022814] - HID: uclogic: Improve support for Trust Panora (Benjamin Tissoires) [2022814] - HID: wiimote: remove h from printk format specifier (Benjamin Tissoires) [2022814] - HID: uclogic: remove h from printk format specifier (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Address EHL Sx resume issues (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: finish power flow for EHL OOB (Benjamin Tissoires) [2022814] - HID: sony: select CONFIG_CRC32 (Benjamin Tissoires) [2022814] - HID: sfh: fix address space confusion (Benjamin Tissoires) [2022814] - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device (Benjamin Tissoires) [2022814] - HID: wacom: Fix memory leakage caused by kfifo_alloc (Benjamin Tissoires) [2022814] - HID: i2c-hid: add Vero K147 to descriptor override (Benjamin Tissoires) [2022814] - HID: ite: Add support for Acer S1002 keyboard-dock (Benjamin Tissoires) [2022814] - HID: sony: support for ghlive ps3/wii u dongles (Benjamin Tissoires) [2022814] - HID: hidraw: Add additional hidraw input/output report ioctls. (Benjamin Tissoires) [2022814] - HID: Increase HID maximum report size to 16KB (Benjamin Tissoires) [2022814] - HID: elecom: drop stray comment (Benjamin Tissoires) [2022814] - HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter (Benjamin Tissoires) [2022814] - HID: elecom: add support for EX-G M-XGL20DLBK wireless mouse (Benjamin Tissoires) [2022814] - HID: elecom: rewrite report based on model specific parameters (Benjamin Tissoires) [2022814] - HID: wacom: Constify attribute_groups (Benjamin Tissoires) [2022814] - HID: input: Fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - HID: usbhid: Fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add hid_device_id for V470 bluetooth mouse (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Remove unnecessary assignment to variable rv (Benjamin Tissoires) [2022814] - HID: sony: Workaround for DS4 dongle hotplug kernel crash. (Benjamin Tissoires) [2022814] - HID: sony: Don't use fw_version/hw_version for sysfs cleanup. (Benjamin Tissoires) [2022814] - HID: sony: Report more accurate DS4 power status. (Benjamin Tissoires) [2022814] - SFH: fix error return check for -ERESTARTSYS (Benjamin Tissoires) [2022814] - HID: Add Logitech Dinovo Edge battery quirk (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo Edge (Benjamin Tissoires) [2022814] - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices (Benjamin Tissoires) [2022814] - HID: mcp2221: Fix GPIO output handling (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Fix issue with devices with no report ID (Benjamin Tissoires) [2022814] - HID: hid-input: occasionally report stylus battery even if not changed (Benjamin Tissoires) [2022814] - timekeeping: Add missing _ns functions for coarse accessors (Benjamin Tissoires) [2022814] - HID: i2c-hid: show the error when failing to fetch the HID descriptor (Benjamin Tissoires) [2022814] - AMD_SFH: Fix for incorrect Sensor index (Benjamin Tissoires) [2022814] - HID: asus: Add support for ASUS N-Key keyboard (Benjamin Tissoires) [2022814] - HID: i2c-hid: Put ACPI enumerated devices in D3 on shutdown (Benjamin Tissoires) [2022814] - HID: add support for Sega Saturn (Benjamin Tissoires) [2022814] - HID: cypress: Support Varmilo Keyboards' media hotkeys (Benjamin Tissoires) [2022814] - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses (Benjamin Tissoires) [2022814] - SFH: Create HID report to Enable support of AMD sensor fusion Hub (SFH) (Benjamin Tissoires) [2022814] - SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH) (Benjamin Tissoires) [2022814] - redhat: HID: enable AMD_SFH_HUB (Benjamin Tissoires) [1965674] - SFH: PCIe driver to add support of AMD sensor fusion hub (Benjamin Tissoires) [2022814] - HID: uclogic: Add ID for Trust Flex Design Tablet (Benjamin Tissoires) [2022814] - HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle (Benjamin Tissoires) [2022814] - HID: add vivaldi HID driver (Benjamin Tissoires) [2022814] - HID: i2c-hid: fix kerneldoc warnings in i2c-hid-core.c (Benjamin Tissoires) [2022814] - HID: core: fix kerneldoc warnings in hid-core.c (Benjamin Tissoires) [2022814] - HID: multitouch: Lenovo X1 Tablet Gen2 trackpoint and buttons (Benjamin Tissoires) [2022814] - HID: alps: clean up indentation issue (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: simplify the return expression of ishtp_bus_remove_device() (Benjamin Tissoires) [2022814] - HID: hid-debug: fix nonblocking read semantics wrt EIO/ERESTARTSYS (Benjamin Tissoires) [2022814] - HID: i2c-hid: Prefer asynchronous probe (Benjamin Tissoires) [2022814] - HID: wiimote: narrow spinlock range in wiimote_hid_event() (Benjamin Tissoires) [2022814] - HID: wiimote: make handlers[] const (Benjamin Tissoires) [2022814] - HID: logitech-dj: Fix spelling in comment (Benjamin Tissoires) [2022814] - HID: apple: Add support for Matias wireless keyboard (Benjamin Tissoires) [2022814] - Input: elan_i2c - reduce the resume time for controller in Whitebox (Benjamin Tissoires) [2022814] - Input: parkbd - switch to use module_parport_driver() (Benjamin Tissoires) [2022814] - Input: i8042 - fix typos in comments (Benjamin Tissoires) [2022814] - Input: elantech - Prepare a complete software node for the device (Benjamin Tissoires) [2022814] - Input: apbps2 - remove useless variable (Benjamin Tissoires) [2022814] - Input: elan_i2c - fix a typo in parameter name (Benjamin Tissoires) [2022814] - Input: i8042 - fix Pegatron C15B ID entry (Benjamin Tissoires) [2022814] - Input: elan_i2c - reduce the resume time for new devices (Benjamin Tissoires) [2022814] - Input: i8042 - add ASUS Zenbook Flip to noselftest list (Benjamin Tissoires) [2022814] - Input: add missing dependencies on CONFIG_HAS_IOMEM (Benjamin Tissoires) [2022814] - ARM: 9048/1: sa1111: make sa1111 bus's remove callback return void (Benjamin Tissoires) [2022814] - Input: synaptics - replace NOOP with suitable commentary (Benjamin Tissoires) [2022814] - Input: i8042 - unbreak Pegatron C15B (Benjamin Tissoires) [2022814] - Input: parkbd - convert comma to semicolon (Benjamin Tissoires) [2022814] - Input: elantech - fix protocol errors for some trackpoints in SMBus mode (Benjamin Tissoires) [2022814] - Input: elan_i2c - add new trackpoint report type 0x5F (Benjamin Tissoires) [2022814] - Input: i8042 - add Acer laptops to the i8042 reset list (Benjamin Tissoires) [2022814] - Input: i8042 - add ByteSpeed touchpad to noloop table (Benjamin Tissoires) [2022814] - Input: i8042 - fix error return code in i8042_setup_aux() (Benjamin Tissoires) [2022814] - Input: libps2 - fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - Input: synaptics - demote non-conformant kernel-doc header (Benjamin Tissoires) [2022814] - Input: elan_i2c_core - move header inclusion inside (Benjamin Tissoires) [2022814] - Input: elan_i2c - fix firmware update on newer ICs (Benjamin Tissoires) [2022814] - Input: elantech - demote obvious abuse of kernel-doc header (Benjamin Tissoires) [2022814] - Input: i8042 - allow insmod to succeed on devices without an i8042 controller (Benjamin Tissoires) [2022814] - Input: synaptics - enable InterTouch for ThinkPad T14 Gen 1 (Benjamin Tissoires) [2022814] - Input: synaptics - enable InterTouch for ThinkPad P1/X1E gen 2 (Benjamin Tissoires) [2022814] - Input: synaptics-rmi4 - rename f30_data to gpio_data (Benjamin Tissoires) [2022814] - Input: sun4i-ps2 - fix handling of platform_get_irq() error (Benjamin Tissoires) [2022814] - Input: allocate keycode for Fn + right shift (Benjamin Tissoires) [2022814] - Input: allocate keycodes for notification-center, pickup-phone and hangup-phone (Benjamin Tissoires) [2022814] - HID: cp2112: Use irqchip template (Benjamin Tissoires) [2022814] - HID: mcp2221: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [2022814] - treewide: replace '---help---' in Kconfig files with 'help' (Benjamin Tissoires) [2022814] - HID: asus: Add depends on USB_HID to HID_ASUS Kconfig option (Benjamin Tissoires) [2022814] - HID: asus: Fix mute and touchpad-toggle keys on Medion Akoya E1239T (Benjamin Tissoires) [2022814] - HID: asus: Add support for multi-touch touchpad on Medion Akoya E1239T (Benjamin Tissoires) [2022814] - HID: asus: Add report_size to struct asus_touchpad_info (Benjamin Tissoires) [2022814] - HID: asus: Add hid_is_using_ll_driver(usb_hid_driver) check (Benjamin Tissoires) [2022814] - HID: asus: Simplify skipping of mappings for Asus T100CHI keyboard-dock (Benjamin Tissoires) [2022814] - HID: asus: Only set EV_REP if we are adding a mapping (Benjamin Tissoires) [2022814] - HID: mcp2221: add gpiolib dependency (Benjamin Tissoires) [2022814] - HID: mcp2221: add GPIO functionality support (Benjamin Tissoires) [2022814] - HID: mcp2221: add usb to i2c-smbus host bridge (Benjamin Tissoires) [2022814] - HID: asus: Ignore Asus vendor-page usage-code 0xff events (Benjamin Tissoires) [2022814] - HID: sb0540: add support for Creative SB0540 IR receivers (Benjamin Tissoires) [2022814] - gpio: pass lookup and descriptor flags to request_own (Benjamin Tissoires) [2022814] - HID: hid-asus: select CONFIG_POWER_SUPPLY (Benjamin Tissoires) [2022814] - HID: hid-asus: Add BT keyboard dock battery monitoring support (Benjamin Tissoires) [2022814] - HID: hid-asus: Add Transbook T90CHI support (Benjamin Tissoires) [2022814] - HID: asus: Add support for the ASUS T101HA keyboard dock (Benjamin Tissoires) [2022814] - HID: asus: Add support for the ASUS FX503VD laptop (Benjamin Tissoires) [2022814] - HID: asus: Add event handler to catch unmapped Asus Vendor UsagePage codes (Benjamin Tissoires) [2022814] - af_unix: fix garbage collect vs MSG_PEEK (Patrick Talbert) [2031975] {CVE-2021-0920} - net: add kerneldoc comment for sk_peer_lock (Guillaume Nault) [2037782] - af_unix: fix races in sk_peer_pid and sk_peer_cred accesses (Guillaume Nault) [2037782] {CVE-2021-4203} - netfilter: nat: force port remap to prevent shadowing well-known ports (Florian Westphal) [2006167] {CVE-2021-3773} - netfilter: conntrack: tag conntracks picked up in local out hook (Florian Westphal) [2006167] - selftests: nft_nat: switch port shadow test cases to socat (Florian Westphal) [2006167] - selftests: nft_nat: Simplify port shadow notrack test (Florian Westphal) [2006167] - selftests: nft_nat: Improve port shadow test stability (Florian Westphal) [2006167] - selftests: nft_nat: add udp hole punch test case (Florian Westphal) [2006167] - ipv6: use prandom_u32() for ID generation (Hangbin Liu) [2040158] {CVE-2021-45485} - igc: fix tunnel offloading (Corinna Vinschen) [1910885] - virtio/vsock: fix the transport to work with VMADDR_CID_ANY (Stefano Garzarella) [2026442] - vhost/vsock: cleanup removing `len` variable (Stefano Garzarella) [2026442] - vhost/vsock: fix incorrect used length reported to the guest (Stefano Garzarella) [2026442] - vsock: prevent unnecessary refcnt inc for nonblocking connect (Stefano Garzarella) [2026442] - vsock/virtio: avoid potential deadlock when vsock device remove (Stefano Garzarella) [2026442] - VSOCK: handle VIRTIO_VSOCK_OP_CREDIT_REQUEST (Stefano Garzarella) [2026442] - vsock: notify server to shutdown when client has pending signal (Stefano Garzarella) [2026442] - virtio/vsock: simplify credit update function API (Stefano Garzarella) [2026442] - virtio/vsock: set packet's type in virtio_transport_send_pkt_info() (Stefano Garzarella) [2026442] - net: vlan: fix underflow for the real_dev refcnt (Balazs Nemeth) [2026375] - net: vlan: fix a UAF in vlan_dev_real_dev() (Balazs Nemeth) [2026375]- xfs: map unwritten blocks in XFS_IOC_{ALLOC,FREE}SP just like fallocate (Carlos Maiolino) [2034865] {CVE-2021-4155} - isdn: cpai: check ctr->cnr to avoid array index out of bound (Chris von Recklinghausen) [2016491] {CVE-2021-43389} - vt: keyboard: avoid signed integer overflow in k_ascii (Chris von Recklinghausen) [2017044] {CVE-2020-13974} - USB: serial: pl2303: fix GC type detection (Torez Smith) [1975985] - usb: dwc3: leave default DMA for PCI devices (Torez Smith) [1975985] - usb: xhci: tegra: Check padctrl interrupt presence in device tree (Torez Smith) [1975985] - usb: dwc3: core: Revise GHWPARAMS9 offset (Torez Smith) [1975985] - xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delay (Torez Smith) [1975985] - usb: typec: tipd: Remove dependency on "connector" child fwnode (Torez Smith) [1975985] - usb: xhci: tegra: mark PM functions as __maybe_unused (Torez Smith) [1975985] - media: ttusb-dec: avoid release of non-acquired mutex (Torez Smith) [1975985] - ABI: sysfs-devices-removable: make a table valid as ReST markup (Torez Smith) [1975985] - usb: dwc3: core: balance phy init and exit (Torez Smith) [1975985] - USB: serial: pl2303: fix GL type detection (Torez Smith) [1975985] - usb: xhci-mtk: Do not use xhci's virt_dev in drop_endpoint (Torez Smith) [1975985] - usb: xhci-mtk: fix issue of out-of-bounds array access (Torez Smith) [1975985] - usb: dwc3: Decouple USB 2.0 L1 & L2 events (Torez Smith) [1975985] - media: em28xx-input: fix refcount bug in em28xx_usb_disconnect (Torez Smith) [1975985] - media: dvb-usb: Fix error handling in dvb_usb_i2c_init (Torez Smith) [1975985] - power: supply: Fix build error when CONFIG_POWER_SUPPLY is not enabled. (Torez Smith) [1975985] - thunderbolt: test: split up test cases in tb_test_credit_alloc_all (Torez Smith) [1975985] - thunderbolt: Handle ring interrupt by reading interrupt status register (Torez Smith) [1975985] - thunderbolt: Add vendor specific NHI quirk for auto-clearing interrupt status (Torez Smith) [1975985] - thunderbolt: Fix port linking by checking all adapters (Torez Smith) [1975985] - thunderbolt: Do not read control adapter config space (Torez Smith) [1975985] - thunderbolt: Add authorized value to the KOBJ_CHANGE uevent (Torez Smith) [1975985] - usb: typec: tcpm: Raise vdm_sm_running flag only when VDM SM is running (Torez Smith) [1975985] - usb: dwc3: gadget: Stop EP0 transfers during pullup disable (Torez Smith) [1975985] - usb: dwc3: gadget: Fix dwc3_calc_trbs_left() (Torez Smith) [1975985] - Revert "USB: serial: ch341: fix character loss at high transfer rates" (Torez Smith) [1975985] - USB: serial: option: add new VID/PID to support Fibocom FG150 (Torez Smith) [1975985] - usb: typec: tcpm: Fix VDMs sometimes not being forwarded to alt-mode drivers (Torez Smith) [1975985] - Revert "usb: dwc3: gadget: Use list_replace_init() before traversing lists" (Torez Smith) [1975985] - usb: typec: tcpm: Keep other events when receiving FRS and Sourcing_vbus events (Torez Smith) [1975985] - usb: dwc3: gadget: Avoid runtime resume if disabling pullup (Torez Smith) [1975985] - usb: dwc3: gadget: Use list_replace_init() before traversing lists (Torez Smith) [1975985] - USB: serial: ftdi_sio: add device ID for Auto-M3 OP-COM v2 (Torez Smith) [1975985] - USB: serial: pl2303: fix GT type detection (Torez Smith) [1975985] - USB: serial: option: add Telit FD980 composition 0x1056 (Torez Smith) [1975985] - USB: serial: pl2303: fix HX type detection (Torez Smith) [1975985] - media: rtl28xxu: fix zero-length control request (Torez Smith) [1975985] - media: Revert "media: rtl28xxu: fix zero-length control request" (Torez Smith) [1975985] - USB: serial: ch341: fix character loss at high transfer rates (Torez Smith) [1975985] - usb: otg-fsm: Fix hrtimer list corruption (Torez Smith) [1975985] - USB: usbtmc: Fix RCU stall warning (Torez Smith) [1975985] - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick (Torez Smith) [1975985] - Revert "USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem" (Torez Smith) [1975985] - usb: dwc2: gadget: Fix sending zero length packet in DDMA mode. (Torez Smith) [1975985] - usb: dwc2: Skip clock gating on Samsung SoCs (Torez Smith) [1975985] - usb: dwc2: gadget: Fix GOUTNAK flow for Slave mode. (Torez Smith) [1975985] - usb: xhci: avoid renesas_usb_fw.mem when it's unusable (Torez Smith) [1975985] - usb: dwc3: avoid NULL access of usb_gadget_driver (Torez Smith) [1975985] - usb: typec: stusb160x: Don't block probing of consumer of "connector" nodes (Torez Smith) [1975985] - usb: typec: stusb160x: register role switch before interrupt registration (Torez Smith) [1975985] - USB: usb-storage: Add LaCie Rugged USB3-FW to IGNORE_UAS (Torez Smith) [1975985] - usb: hub: Disable USB 3 device initiated lpm if exit latency is too high (Torez Smith) [1975985] - usb: hub: Fix link power management max exit latency (MEL) calculations (Torez Smith) [1975985] - usb: typec: tipd: Don't block probing of consumer of "connector" nodes (Torez Smith) [1975985] - xhci: Fix lost USB 2 remote wake (Torez Smith) [1975985] - USB: serial: cp210x: fix comments for GE CS1000 (Torez Smith) [1975985] - USB: core: Fix incorrect pipe calculation in do_proc_control() (Torez Smith) [1975985] - USB: serial: option: add support for u-blox LARA-R6 family (Torez Smith) [1975985] - thunderbolt: test: Reinstate a few casts of bitfields (Torez Smith) [1975985] - USB: cdc-acm: blacklist Heimann USB Appset device (Torez Smith) [1975985] - usb: xhci-mtk: allow multiple Start-Split in a microframe (Torez Smith) [1975985] - usb: ftdi-elan: remove redundant continue statement in a while-loop (Torez Smith) [1975985] - thunderbolt: test: Remove some casts which are no longer required (Torez Smith) [1975985] - xhci: remove redundant continue statement (Torez Smith) [1975985] - usb: dwc3: Fix debugfs creation flow (Torez Smith) [1975985] - docs: driver-api: usb: avoid using ReST :doc:`foo` markup (Torez Smith) [1975985] - xhci: solve a double free problem while doing s4 (Torez Smith) [1975985] - xhci: handle failed buffer copy to URB sg list and fix a W=1 copiler warning (Torez Smith) [1975985] - xhci: Add adaptive interrupt rate for isoch TRBs with XHCI_AVOID_BEI quirk (Torez Smith) [1975985] - xhci: Remove unused defines for ERST_SIZE and ERST_ENTRIES (Torez Smith) [1975985] - usb: typec: Add the missed altmode_id_remove() in typec_register_altmode() (Torez Smith) [1975985] - usb: typec: tcpm: Relax disconnect threshold during power negotiation (Torez Smith) [1975985] - usb: typec: tcpm: Ignore Vsafe0v in PR_SWAP_SNK_SRC_SOURCE_ON state (Torez Smith) [1975985] - usb: typec: tcpci: Fix up sink disconnect thresholds for PD (Torez Smith) [1975985] - usb: core: hub: Disable autosuspend for Cypress CY7C65632 (Torez Smith) [1975985] - usb: host: xhci-tegra: Use devm_platform_get_and_ioremap_resource() (Torez Smith) [1975985] - usb: host: xhci-tegra: Add missing of_node_put() in tegra_xusb_probe() (Torez Smith) [1975985] - usb: host: xhci-tegra: add missing put_device() in tegra_xusb_probe() (Torez Smith) [1975985] - media: usb: cpia2: Fixed Coding Style issues (Torez Smith) [1975985] - media: ttusb-dec: cleanup an error handling logic (Torez Smith) [1975985] - cypress_m8: switch data_bits to real character bits (Torez Smith) [1975985] - thunderbolt: Fix DROM handling for USB4 DROM (Torez Smith) [1975985] - usb: xhci: tegra: Enable ELPG for runtime/system PM (Torez Smith) [1975985] - usb: xhci: tegra: Unlink power domain devices (Torez Smith) [1975985] - thunderbolt: Bond lanes only when dual_link_port != NULL in alloc_dev_default() (Torez Smith) [1975985] - thunderbolt: No need to include in usb4_port.c (Torez Smith) [1975985] - thunderbolt: Poll 10ms for REG_FW_STS_NVM_AUTH_DONE to be set (Torez Smith) [1975985] - thunderbolt: Add device links only when software connection manager is used (Torez Smith) [1975985] - thunderbolt: Add support for Intel Alder Lake (Torez Smith) [1975985] - usb: typec: mux: Fix copy-paste mistake in typec_mux_match (Torez Smith) [1975985] - usb: typec: ucsi: Clear PPM capability data in ucsi_init() error path (Torez Smith) [1975985] - usb: typec: wcove: Use LE to CPU conversion when accessing msg->header (Torez Smith) [1975985] - usb: typec: ucsi: Fix a comment in ucsi_init() (Torez Smith) [1975985] - USB: dwc3: remove debugfs root dentry storage (Torez Smith) [1975985] - USB: serial: cp210x: fix CP2102N-A01 modem control (Torez Smith) [1975985] - USB: serial: cp210x: fix alternate function for CP2102N QFN20 (Torez Smith) [1975985] - usb: dwc2: Don't reset the core after setting turnaround time (Torez Smith) [1975985] - usb: dwc3: support 64 bit DMA in platform driver (Torez Smith) [1975985] - USB: core: Avoid WARNings for 0-length descriptor requests (Torez Smith) [1975985] - usb: dwc3: core: fix kernel panic when do reboot (Torez Smith) [1975985] - usb: dwc3: ep0: fix NULL pointer exception (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Put ACPI device using acpi_dev_put() (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Add missed error check for devm_ioremap_resource() (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Put fwnode in error case during ->probe() (Torez Smith) [1975985] - usb: typec: tcpm: Do not finish VDM AMS for retrying Responses (Torez Smith) [1975985] - media: cinergyt2: make properties const (Torez Smith) [1975985] - media: dvd_usb: memory leak in cinergyt2_fe_attach (Torez Smith) [1975985] - USB: serial: ftdi_sio: add NovaTech OrionMX product ID (Torez Smith) [1975985] - usb: typec: tcpm: cancel send discover hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: cancel frs hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: cancel vdm and state machine hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: Properly handle Alert and Status Messages (Torez Smith) [1975985] - usb: dwc3: meson-g12a: Disable the regulator in the error handling path of the probe (Torez Smith) [1975985] - usb: typec: tcpm: Fix misuses of AMS invocation (Torez Smith) [1975985] - usb: typec: tcpm: Introduce snk_vdo_v1 for SVDM version 1.0 (Torez Smith) [1975985] - dt-bindings: connector: Add PD rev 2.0 VDO definition (Torez Smith) [1975985] - usb: typec: tcpm: Correct the responses in SVDM Version 2.0 DFP (Torez Smith) [1975985] - Revert "usb: dwc3: core: Add shutdown callback for dwc3" (Torez Smith) [1975985] - dt-bindings: connector: Replace BIT macro with generic bit ops (Torez Smith) [1975985] - media: gspca: ov519: replace RIGHT SINGLE QUOTATION MARK (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Update IOM port status offset for AlderLake (Torez Smith) [1975985] - usb: pd: Set PD_T_SINK_WAIT_CAP to 310ms (Torez Smith) [1975985] - usb: dwc3: gadget: Bail from dwc3_gadget_exit() if dwc->gadget is NULL (Torez Smith) [1975985] - usb: dwc3: gadget: Disable gadget IRQ during pullup disable (Torez Smith) [1975985] - usb: dwc3: debugfs: Add and remove endpoint dirs dynamically (Torez Smith) [1975985] - Revert "usb: typec: mux: Remove requirement for the "orientation-switch" device property" (Torez Smith) [1975985] - media: rtl28xxu: fix zero-length control request (Torez Smith) [1975985] - media: gspca/sunplus: fix zero-length control requests (Torez Smith) [1975985] - media: gspca/gl860: fix zero-length control requests (Torez Smith) [1975985] - media: gspca/sq905: fix control-request direction (Torez Smith) [1975985] - media: dtv5100: fix control-request directions (Torez Smith) [1975985] - media: drivers/media/usb/gspca/cpia1.c : fix spelling typo (Torez Smith) [1975985] - media: drivers/media/usb/em28xx/em28xx-cards.c : fix typo issues (Torez Smith) [1975985] - media: zr364xx: fix memory leak in zr364xx_start_readpipe (Torez Smith) [1975985] - media: em28xx: Fix possible memory leak of em28xx struct (Torez Smith) [1975985] - thunderbolt: Check for NVM authentication status after the operation started (Torez Smith) [1975985] - thunderbolt: Add WRITE_ONLY and AUTHENTICATE_ONLY NVM operations for retimers (Torez Smith) [1975985] - thunderbolt: Allow router NVM authenticate separately (Torez Smith) [1975985] - thunderbolt: Move nvm_write_ops to tb.h (Torez Smith) [1975985] - thunderbolt: Log the link as TBT instead of TBT3 (Torez Smith) [1975985] - thunderbolt: Add support for retimer NVM upgrade when there is no link (Torez Smith) [1975985] - thunderbolt: Add additional USB4 port operations for retimer access (Torez Smith) [1975985] - thunderbolt: Add support for ACPI _DSM to power on/off retimers (Torez Smith) [1975985] - thunderbolt: Add USB4 port devices (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for credit allocation (Torez Smith) [1975985] - thunderbolt: Allocate credits according to router preferences (Torez Smith) [1975985] - USB: core: Check buffer length matches wLength for control transfers (Torez Smith) [1975985] - usb: typec: ucsi: Fix copy/paste issue for 'ucsi_set_drvdata()' (Torez Smith) [1975985] - usb: dwc2: gadget: Repair 'dwc2_hsotg_core_init_disconnected()'s documentation (Torez Smith) [1975985] - usb: dwc2: pci: Fix possible copy/paste issue (Torez Smith) [1975985] - usb: dwc2: hcd_queue: Fix typeo in function name 'dwc2_hs_pmap_unschedule()' (Torez Smith) [1975985] - usb: dwc2: params: Fix naming of 'dwc2_get_hwparams()' in the docs (Torez Smith) [1975985] - usb: common: ulpi: Add leading underscores for function name '__ulpi_register_driver()' (Torez Smith) [1975985] - usb: dwc2: platform: Provide function name for 'dwc2_check_core_version()' (Torez Smith) [1975985] - driver core: Move the "removable" attribute from USB to core (Torez Smith) [1975985] - usb: dwc3: trace: Remove unused fields in dwc3_log_trb (Torez Smith) [1975985] - usb: typec: mux: Remove requirement for the "orientation-switch" device property (Torez Smith) [1975985] - usb: typec: mux: Use device type instead of device name for matching (Torez Smith) [1975985] - usb: common: usb-conn-gpio: use usb_role_string() to print role status (Torez Smith) [1975985] - usb: roles: add helper usb_role_string() (Torez Smith) [1975985] - USB: serial: omninet: update driver description (Torez Smith) [1975985] - USB: serial: omninet: add device id for Zyxel Omni 56K Plus (Torez Smith) [1975985] - USB: serial: quatech2: fix control-request directions (Torez Smith) [1975985] - usb: typec: tcpci: Make symbol 'tcpci_apply_rc' static (Torez Smith) [1975985] - USB: usbfs: remove double evaluation of usb_sndctrlpipe() (Torez Smith) [1975985] - usb: typec: tcpm: Respond Not_Supported if no snk_vdo (Torez Smith) [1975985] - usb: typec: tcpm: Properly interrupt VDM AMS (Torez Smith) [1975985] - media: lmedm04: delete lme2510_get_adapter_count() (Torez Smith) [1975985] - media: dvb-usb: fix wrong definition (Torez Smith) [1975985] - USB: core: WARN if pipe direction != setup packet direction (Torez Smith) [1975985] - USB: trancevibrator: fix control-request direction (Torez Smith) [1975985] - USB: dwc2: drop irq-flags initialisations (Torez Smith) [1975985] - usb: typec: tcpci: Implement callback for apply_rc (Torez Smith) [1975985] - usb: typec: tcpm: Move TCPC to APPLY_RC state during PR_SWAP (Torez Smith) [1975985] - usb: typec: tcpm: Refactor logic to enable/disable auto vbus dicharge (Torez Smith) [1975985] - usb: typec: tcpm: Fix up PR_SWAP when vsafe0v is signalled (Torez Smith) [1975985] - usb: atm: cxacru: Fix typo in comment (Torez Smith) [1975985] - usb: isp1760: remove platform data struct and code (Torez Smith) [1975985] - usb: fix spelling mistakes in header files (Torez Smith) [1975985] - USB: serial: digi_acceleport: add chars_in_buffer locking (Torez Smith) [1975985] - USB: serial: digi_acceleport: reduce chars_in_buffer over-reporting (Torez Smith) [1975985] - usb: Restore the usb_header label (Torez Smith) [1975985] - usb: typec: tcpm: Use LE to CPU conversion when accessing msg->header (Torez Smith) [1975985] - usb: typec: mux: Fix matching with typec_altmode_desc (Torez Smith) [1975985] - misc/uss720: fix memory leak in uss720_probe (Torez Smith) [1975985] - usb: dwc3: gadget: Properly track pending and queued SG (Torez Smith) [1975985] - USB: usbfs: Don't WARN about excessively large memory allocations (Torez Smith) [1975985] - usb: common: usb-conn-gpio: use dev_err_probe() to print log (Torez Smith) [1975985] - usb: common: usb-conn-gpio: fix NULL pointer dereference of charger (Torez Smith) [1975985] - Revert "USB: Add reset-resume quirk for WD19's Realtek Hub" (Torez Smith) [1975985] - USB: Verify the port status when timeout happens during port suspend (Torez Smith) [1975985] - usb: typec: wcove: Fx wrong kernel doc format (Torez Smith) [1975985] - media: pvrusb2: fix warning in pvr2_i2c_core_done (Torez Smith) [1975985] - media: rtl2832_sdr/vivid/airspy/hackrf/msi2500: drop memset of fmt.sdr.reserved (Torez Smith) [1975985] - media: cpia2: fix memory leak in cpia2_usb_probe (Torez Smith) [1975985] - media: s2255drv: remove redundant assignment to variable field (Torez Smith) [1975985] - media: gspca: properly check for errors in po1030_probe() (Torez Smith) [1975985] - Revert "media: gspca: Check the return value of write_bridge for timeout" (Torez Smith) [1975985] - media: gspca: mt9m111: Check write_bridge for timeout (Torez Smith) [1975985] - Revert "media: gspca: mt9m111: Check write_bridge for timeout" (Torez Smith) [1975985] - Revert "media: usb: gspca: add a missed check for goto_low_power" (Torez Smith) [1975985] - usb: core: hcd: use map_urb_for_dma for single step set feature urb (Torez Smith) [1975985] - usb: dwc3: pci: Fix DEFINE for Intel Elkhart Lake (Torez Smith) [1975985] - usb: core: hub: fix race condition about TRSMRCY of resume (Torez Smith) [1975985] - usb: typec: tcpm: Fix SINK_DISCOVERY current limit for Rp-default (Torez Smith) [1975985] - xhci: Add reset resume quirk for AMD xhci controller. (Torez Smith) [1975985] - usb: xhci: Increase timeout for HC halt (Torez Smith) [1975985] - xhci: Do not use GFP_KERNEL in (potentially) atomic context (Torez Smith) [1975985] - xhci: Fix giving back cancelled URBs even if halted endpoint can't reset (Torez Smith) [1975985] - xhci-pci: Allow host runtime PM as default for Intel Alder Lake xHCI (Torez Smith) [1975985] - usb: typec: tcpm: Don't block probing of consumers of "connector" nodes (Torez Smith) [1975985] - usb: xhci-mtk: use first-fit for LS/FS (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary assignments in periodic TT scheduler (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary setting of has_ippc (Torez Smith) [1975985] - usb: xhci-mtk: use bitfield instead of bool (Torez Smith) [1975985] - usb: typec: tcpm: Fix wrong handling for Not_Supported in VDM AMS (Torez Smith) [1975985] - usb: typec: tcpm: Send DISCOVER_IDENTITY from dedicated work (Torez Smith) [1975985] - usb: typec: ucsi: Retrieve all the PDOs instead of just the first 4 (Torez Smith) [1975985] - usb: dwc3: omap: improve extcon initialization (Torez Smith) [1975985] - usb: typec: ucsi: Put fwnode in any case during ->probe() (Torez Smith) [1975985] - usb: dwc2: Remove obsolete MODULE_ constants from platform.c (Torez Smith) [1975985] - usb: dwc3: imx8mp: fix error return code in dwc3_imx8mp_probe() (Torez Smith) [1975985] - usb: dwc3: imx8mp: detect dwc3 core node via compatible string (Torez Smith) [1975985] - usb: dwc3: gadget: Return success always for kick transfer in ep queue (Torez Smith) [1975985] - usb: dwc3: gadget: Free gadget structure only after freeing endpoints (Torez Smith) [1975985] - usb: dwc2: Fix gadget DMA unmap direction (Torez Smith) [1975985] - usb: dwc3: gadget: Rename EOPF event macros to Suspend (Torez Smith) [1975985] - usb: dwc3: gadget: Enable suspend events (Torez Smith) [1975985] - usb: Restore the reference to ch9.h (Torez Smith) [1975985] - usb: dwc3: core: Add missing GHWPARAMS9 doc (Torez Smith) [1975985] - usb: dwc3: pci: Enable usb2-gadget-lpm-disable for Intel Merrifield (Torez Smith) [1975985] - cdc-wdm: untangle a circular dependency between callback and softint (Torez Smith) [1975985] - usb: dwc3: remove repeated setting of current_dr_role (Torez Smith) [1975985] - USB: serial: pl2303: add device id for ADLINK ND-6530 GC (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: add startech.com device id (Torez Smith) [1975985] - USB: serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011 (Torez Smith) [1975985] - USB: serial: ftdi_sio: add IDs for IDS GmbH Products (Torez Smith) [1975985] - usb: Fix up movement of USB core kerneldoc location (Torez Smith) [1975985] - usb: dwc3: gadget: Handle DEV_TXF_FLUSH_BYPASS capability (Torez Smith) [1975985] - usb: dwc3: Capture new capability register GHWPARAMS9 (Torez Smith) [1975985] - usb: dwc3: core: Do core softreset when switch mode (Torez Smith) [1975985] - usb: dwc2: Get rid of useless error checks in suspend interrupt (Torez Smith) [1975985] - usb: dwc2: Update dwc2_handle_usb_suspend_intr function. (Torez Smith) [1975985] - usb: dwc2: Add exit hibernation mode before removing drive (Torez Smith) [1975985] - usb: dwc2: Add hibernation exiting flow by system resume (Torez Smith) [1975985] - usb: dwc2: Add hibernation entering flow by system suspend (Torez Smith) [1975985] - usb: dwc2: Allow exit hibernation in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Move exit hibernation to dwc2_port_resume() function (Torez Smith) [1975985] - usb: dwc2: Move enter hibernation to dwc2_port_suspend() function (Torez Smith) [1975985] - usb: dwc2: Clear GINTSTS_RESTOREDONE bit after restore is generated. (Torez Smith) [1975985] - usb: dwc2: Clear fifo_map when resetting core. (Torez Smith) [1975985] - usb: dwc2: Allow exiting hibernation from gpwrdn rst detect (Torez Smith) [1975985] - usb: dwc2: Fix hibernation between host and device modes. (Torez Smith) [1975985] - usb: dwc2: Fix host mode hibernation exit with remote wakeup flow. (Torez Smith) [1975985] - usb: dwc2: Reset DEVADDR after exiting gadget hibernation. (Torez Smith) [1975985] - usb: dwc2: Update exit hibernation when port reset is asserted (Torez Smith) [1975985] - usb: dwc3: gadget: Remove FS bInterval_m1 limitation (Torez Smith) [1975985] - usb: xhci-mtk: remove bus status check (Torez Smith) [1975985] - usb: dwc2: Enable RPi in ACPI mode (Torez Smith) [1975985] - USB: Add reset-resume quirk for WD19's Realtek Hub (Torez Smith) [1975985] - usb: storage: datafab: remove redundant assignment of variable result (Torez Smith) [1975985] - usb: misc: adutux: fix whitespace coding style issue (Torez Smith) [1975985] - usb: dwc3: gadget: Fix START_TRANSFER link state check (Torez Smith) [1975985] - usb: typec: tcpm: Fix error while calculating PPS out values (Torez Smith) [1975985] - usb: xhci-mtk: remove unused members (Torez Smith) [1975985] - usb: xhci-mtk: use clock bulk to get clocks (Torez Smith) [1975985] - usb: xhci-mtk: add support runtime PM (Torez Smith) [1975985] - usb: xhci-mtk: check return value in suspend/resume hooks (Torez Smith) [1975985] - usb: typec: tcpm: Allow slow charging loops to comply to pSnkStby (Torez Smith) [1975985] - usb: typec: tcpm: Honour pSnkStdby requirement during negotiation (Torez Smith) [1975985] - usb: dwc3: gadget: Check for disabled LPM quirk (Torez Smith) [1975985] - usb: dwc3: core: Add shutdown callback for dwc3 (Torez Smith) [1975985] - usb: dwc3: gadget: Ignore Packet Pending bit (Torez Smith) [1975985] - USB: Add LPM quirk for Lenovo ThinkPad USB-C Dock Gen2 Ethernet (Torez Smith) [1975985] - usb: typec: silence a static checker warning (Torez Smith) [1975985] - USB: cdc-acm: add more Maxlinear/Exar models to ignore list (Torez Smith) [1975985] - USB: serial: xr: add copyright notice (Torez Smith) [1975985] - USB: serial: xr: reset FIFOs on open (Torez Smith) [1975985] - USB: serial: xr: add support for XR22801, XR22802, XR22804 (Torez Smith) [1975985] - USB: serial: xr: add support for XR21B1411 (Torez Smith) [1975985] - USB: serial: xr: add support for XR21B1421, XR21B1422 and XR21B1424 (Torez Smith) [1975985] - USB: serial: xr: add type abstraction (Torez Smith) [1975985] - USB: serial: xr: drop type prefix from shared defines (Torez Smith) [1975985] - USB: serial: xr: move pin configuration to probe (Torez Smith) [1975985] - USB: serial: xr: rename GPIO-pin defines (Torez Smith) [1975985] - USB: serial: xr: rename GPIO-mode defines (Torez Smith) [1975985] - USB: serial: xr: add support for XR21V1412 and XR21V1414 (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: clean up termios CSIZE handling (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: use kernel types consistently (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: add port-command helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: clean up vendor-request helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop unnecessary packed attributes (Torez Smith) [1975985] - USB: serial: io_ti: drop unnecessary packed attributes (Torez Smith) [1975985] - USB: serial: io_ti: use kernel types consistently (Torez Smith) [1975985] - USB: serial: io_ti: add read-port-command helper (Torez Smith) [1975985] - USB: serial: io_ti: add send-port-command helper (Torez Smith) [1975985] - USB: serial: io_ti: clean up vendor-request helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop drain delay for 3410 (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: reduce drain delay to one char (Torez Smith) [1975985] - USB: serial: io_ti: document reason for drain delay (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating before removing driver (Torez Smith) [1975985] - usb: dwc2: Add clock gating exiting flow by system resume (Torez Smith) [1975985] - usb: dwc2: Add clock gating entering flow by system suspend (Torez Smith) [1975985] - usb: dwc2: Allow exit clock gating in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Update exit clock gating when port is resumed (Torez Smith) [1975985] - usb: dwc2: Update enter clock gating when port is suspended (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating when port reset is asserted (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating from session request interrupt (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating from wakeup interrupt (Torez Smith) [1975985] - usb: dwc2: Allow entering clock gating from USB_SUSPEND interrupt (Torez Smith) [1975985] - usb: dwc2: Add host clock gating support functions (Torez Smith) [1975985] - usb: dwc2: Add device clock gating support functions (Torez Smith) [1975985] - Revert "usb: Link the ports to the connectors they are attached to" (Torez Smith) [1975985] - USB: serial: cp210x: add gpio-configuration debug printk (Torez Smith) [1975985] - USB: serial: cp210x: provide gpio valid mask (Torez Smith) [1975985] - usb: dwc3: qcom: Detect DWC3 DT-nodes using compatible string (Torez Smith) [1975985] - usb: dwc3: qcom: Remove redundant dev_err call in dwc3_qcom_probe() (Torez Smith) [1975985] - usb: core: reduce power-on-good delay time of root hub (Torez Smith) [1975985] - USB:ehci:fix Kunpeng920 ehci hardware problem (Torez Smith) [1975985] - USB: serial: do not use tty class device for debugging (Torez Smith) [1975985] - USB: cdc-acm: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: cdc-acm: fix unprivileged TIOCCSERIAL (Torez Smith) [1975985] - Revert "USB: cdc-acm: fix rounding error in TIOCSSERIAL" (Torez Smith) [1975985] - usb: typec: tcpm: Add support for altmodes (Torez Smith) [1975985] - usb: typec: Add typec_port_register_altmodes() (Torez Smith) [1975985] - usb: roles: Call try_module_get() from usb_role_switch_find_by_fwnode() (Torez Smith) [1975985] - usb: dwc3: xilinx: Remove the extra freeing of clocks (Torez Smith) [1975985] - usb: dwc3: Resolve kernel-doc warning for Xilinx DWC3 driver (Torez Smith) [1975985] - usb: core: hub: Fix PM reference leak in usb_port_resume() (Torez Smith) [1975985] - usb: dwc3: pci: add support for the Intel Alder Lake-M (Torez Smith) [1975985] - usb: typec: Link all ports during connector registration (Torez Smith) [1975985] - usb: Iterator for ports (Torez Smith) [1975985] - usb: Link the ports to the connectors they are attached to (Torez Smith) [1975985] - usb: typec: Port mapping utility (Torez Smith) [1975985] - usb: typec: tcpm: update power supply once partner accepts (Torez Smith) [1975985] - usb: typec: tcpm: Address incorrect values of tcpm psy for pps supply (Torez Smith) [1975985] - usb: typec: tcpm: Address incorrect values of tcpm psy for fixed supply (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down before removing driver (Torez Smith) [1975985] - usb: dwc2: Fix partial power down exiting by system resume (Torez Smith) [1975985] - usb: dwc2: Update partial power down entering by system suspend (Torez Smith) [1975985] - usb: dwc2: Fix session request interrupt handler (Torez Smith) [1975985] - usb: dwc2: Allow exit partial power down in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Add part. power down exit from dwc2_conn_id_status_change(). (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down when port reset is asserted (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down when port is resumed (Torez Smith) [1975985] - usb: dwc2: Add enter partial power down when port is suspended (Torez Smith) [1975985] - usb: dwc2: Update port suspend/resume function definitions. (Torez Smith) [1975985] - usb: dwc2: Add partial power down exit flow in wakeup intr. (Torez Smith) [1975985] - usb: dwc2: Update enter and exit partial power down functions (Torez Smith) [1975985] - usb: dwc2: Add host partial power down functions (Torez Smith) [1975985] - usb: dwc2: Add device partial power down functions (Torez Smith) [1975985] - media: gscpa/stv06xx: fix memory leak (Torez Smith) [1975985] - media: gspca: Fix memory leak in probe (Torez Smith) [1975985] - media: dvb-usb: avoid -Wempty-body warnings (Torez Smith) [1975985] - media: flexcop: avoid -Wempty-body warning (Torez Smith) [1975985] - media: dvb-usb: fix memory leak in dvb_usb_adapter_init (Torez Smith) [1975985] - media: dvb-usb-remote: fix dvb_usb_nec_rc_key_to_event type mismatch (Torez Smith) [1975985] - thunderbolt: Add details to router uevent (Torez Smith) [1975985] - USB: serial: io_edgeport: drop unused definitions (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: switch to 30-second closing wait (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop closing_wait module parameter (Torez Smith) [1975985] - USB: serial: io_ti: switch to 30-second closing wait (Torez Smith) [1975985] - USB: serial: io_ti: drop closing_wait module parameter (Torez Smith) [1975985] - USB: serial: ftdi_sio: clean up TIOCSSERIAL (Torez Smith) [1975985] - USB: serial: ftdi_sio: simplify TIOCGSERIAL permission check (Torez Smith) [1975985] - USB: serial: ftdi_sio: ignore baud_base changes (Torez Smith) [1975985] - USB: serial: stop reporting legacy UART types (Torez Smith) [1975985] - USB: serial: add generic support for TIOCSSERIAL (Torez Smith) [1975985] - USB: serial: fix return value for unsupported ioctls (Torez Smith) [1975985] - USB: serial: whiteheat: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: usb_wwan: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: usb_wwan: fix unprivileged TIOCCSERIAL (Torez Smith) [1975985] - USB: serial: usb_wwan: fix TIOCSSERIAL jiffies conversions (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: fix TIOCSSERIAL permission check (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ssu100: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: quatech2: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: pl2303: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: opticon: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: mos7840: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: mos7720: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: io_ti: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: io_edgeport: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ftdi_sio: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ark3116: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - media: em28xx/em28xx.h: Remove duplicate struct declaration (Torez Smith) [1975985] - media: cx231xx/cx231xx.h: Remove repeated struct declaration (Torez Smith) [1975985] - xhci: prevent double-fetch of transfer and transfer event TRBs (Torez Smith) [1975985] - xhci: fix potential array out of bounds with several interrupters (Torez Smith) [1975985] - xhci: check control context is valid before dereferencing it. (Torez Smith) [1975985] - xhci: check port array allocation was successful before dereferencing it (Torez Smith) [1975985] - media: em28xx: fix memory leak (Torez Smith) [1975985] - usb: typec: Declare the typec_class static (Torez Smith) [1975985] - usb: typec: Organize the private headers properly (Torez Smith) [1975985] - usb: xhci-mtk: support quirk to disable usb2 lpm (Torez Smith) [1975985] - usb: xhci-mtk: fix oops when unbind driver (Torez Smith) [1975985] - usb: xhci-mtk: fix wrong remainder of bandwidth budget (Torez Smith) [1975985] - usb: dwc2: delete duplicate word in the comment (Torez Smith) [1975985] - usb: dwc2: add parenthess and space around * (Torez Smith) [1975985] - usb: dwc3: add cancelled reasons for dwc3 requests (Torez Smith) [1975985] - usb: dwc3: fix incorrect kernel-doc comment syntax in files (Torez Smith) [1975985] - usb: dwc3: st: fix incorrect kernel-doc comment syntax in file (Torez Smith) [1975985] - usb: dwc3: imx8mp: fix incorrect kernel-doc comment syntax (Torez Smith) [1975985] - USB: serial: xr: claim both interfaces (Torez Smith) [1975985] - USB: serial: add support for multi-interface functions (Torez Smith) [1975985] - USB: serial: refactor endpoint classification (Torez Smith) [1975985] - USB: serial: drop unused suspending flag (Torez Smith) [1975985] - USB: serial: xr: fix CSIZE handling (Torez Smith) [1975985] - USB: serial: iuu_phoenix: remove redundant variable 'error' (Torez Smith) [1975985] - usb: dwc3: Create helper function getting MDWIDTH (Torez Smith) [1975985] - usb: xhci-mtk: remove MODULE_ALIAS (Torez Smith) [1975985] - usb: xhci-mtk: drop CONFIG_OF (Torez Smith) [1975985] - usb: misc: usbsevseg: update to use usb_control_msg_send() (Torez Smith) [1975985] - usb: misc: ezusb: update to use usb_control_msg_send() (Torez Smith) [1975985] - usb: dwc3: gadget: modify the scale in vbus_draw callback (Torez Smith) [1975985] - usb: xhci-mtk: add support ip-sleep wakeup for mT8192 (Torez Smith) [1975985] - usb: xhci-mtk: support ip-sleep wakeup for MT8183 (Torez Smith) [1975985] - usb: dwc3: trace: Print register read and write offset (Torez Smith) [1975985] - usb: typec: tcpci_maxim: Make symbol 'max_tcpci_tcpci_write_table' static (Torez Smith) [1975985] - usbip: tools: add usage of device mode in usbip_list.c (Torez Smith) [1975985] - usbip: tools: add options and examples in man page related to device mode (Torez Smith) [1975985] - tools: usbip: list.h: fix kernel-doc for list_del() (Torez Smith) [1975985] - xhci: Fix uninitialized errors (Torez Smith) [1975985] - usb: typec: Fix a typo (Torez Smith) [1975985] - usb: xhci: Remove unused function (Torez Smith) [1975985] - usb: xhci: Rewrite xhci_create_usb3_bos_desc() (Torez Smith) [1975985] - usb: xhci: Fix port minor revision (Torez Smith) [1975985] - usb: xhci: Init root hub SSP rate (Torez Smith) [1975985] - thunderbolt: Unlock on error path in tb_domain_add() (Torez Smith) [1975985] - usb: core: sysfs: Check for SSP rate in speed attr (Torez Smith) [1975985] - usb: core: hub: Print speed name based on ssp rate (Torez Smith) [1975985] - usb: core: hub: Remove port_speed_is_ssp() (Torez Smith) [1975985] - usb: core: Track SuperSpeed Plus GenXxY (Torez Smith) [1975985] - usb: dwc3: gadget: Avoid continuing preparing TRBs during teardown (Torez Smith) [1975985] - USB: xhci: drop workaround for forced irq threading (Torez Smith) [1975985] - usb: dwc3: Add driver for Xilinx platforms (Torez Smith) [1975985] - USB: core: rename usb_driver_claim_interface() data parameter (Torez Smith) [1975985] - USB: core: drop outdated interface-binding comment (Torez Smith) [1975985] - media: media/usb: fix kernel-doc header issues (Torez Smith) [1975985] - media: gspca/sq905.c: fix uninitialized variable (Torez Smith) [1975985] - media: media/usb/gspca/w996Xcf.c: /** -> /* (Torez Smith) [1975985] - media: flexcop-usb: delete unneeded return (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for DMA tunnels (Torez Smith) [1975985] - thunderbolt: Add support for USB4 DROM (Torez Smith) [1975985] - thunderbolt: Check quirks in tb_switch_add() (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for XDomain properties (Torez Smith) [1975985] - thunderbolt: Drop unused tb_port_set_initial_credits() (Torez Smith) [1975985] - thunderbolt: Use dedicated flow control for DMA tunnels (Torez Smith) [1975985] - thunderbolt: Allow multiple DMA tunnels over a single XDomain connection (Torez Smith) [1975985] - thunderbolt: Add support for maxhopid XDomain property (Torez Smith) [1975985] - thunderbolt: Add tb_property_copy_dir() (Torez Smith) [1975985] - thunderbolt: Align XDomain protocol timeouts with the spec (Torez Smith) [1975985] - thunderbolt: Use pseudo-random number as initial property block generation (Torez Smith) [1975985] - thunderbolt: Do not re-establish XDomain DMA paths automatically (Torez Smith) [1975985] - thunderbolt: Decrease control channel timeout for software connection manager (Torez Smith) [1975985] - thunderbolt: Disable retry logic for intra-domain control packets (Torez Smith) [1975985] - thunderbolt: Do not pass timeout for tb_cfg_reset() (Torez Smith) [1975985] - thunderbolt: Add more logging to XDomain connections (Torez Smith) [1975985] - usb: typec: tcpm: PD3.0 sinks can send Discover Identity even in device mode (Torez Smith) [1975985] - drivers: usb: Fix a typo in dwc3-qcom.c (Torez Smith) [1975985] - usb: webcam: Invalid size of Processing Unit Descriptor (Torez Smith) [1975985] - usb: typec: tcpci: Added few missing TCPCI register definitions (Torez Smith) [1975985] - USB: serial: pl2303: TA & TB alternate divider with non-standard baud rates (Torez Smith) [1975985] - USB: serial: pl2303: add device-type names (Torez Smith) [1975985] - USB: serial: pl2303: tighten type HXN (G) detection (Torez Smith) [1975985] - USB: serial: pl2303: rename legacy PL2303H type (Torez Smith) [1975985] - USB: serial: pl2303: amend and tighten type detection (Torez Smith) [1975985] - USB: serial: pl2303: clean up type detection (Torez Smith) [1975985] - USB: serial: io_edgeport: drop unneeded forward declarations (Torez Smith) [1975985] - USB: serial: keyspan: drop unneeded forward declarations (Torez Smith) [1975985] - usb: typec: tipd: Separate file for tracepoint creation (Torez Smith) [1975985] - usb: typec: tps6598x: Move the driver under its own subdirectory (Torez Smith) [1975985] - usb: typec: tps6598x: Fix tracepoint header file (Torez Smith) [1975985] - usb: typec: tcpci: Refactor tcpc_presenting_cc1_rd macro (Torez Smith) [1975985] - thunderbolt: debugfs: Show all accessible dwords (Torez Smith) [1975985] - media: fix incorrect kernel doc usages (Torez Smith) [1975985] - media: drivers/media/usb: fix memory leak in zr364xx_probe (Torez Smith) [1975985] - media: anysee: simplify the return expression of anysee_ci_* function (Torez Smith) [1975985] - media: media/usb:Remove superfluous "breaks" in the ttusb_dec.c (Torez Smith) [1975985] - media: media/usb:Remove superfluous "breaks" (Torez Smith) [1975985] - media: usbtv: constify static structs (Torez Smith) [1975985] - media: em28xx: Add pid for bulk revision of Hauppauge 461eV2 (Torez Smith) [1975985] - media: em28xx: Add pid for bulk revision of Hauppauge 461e (Torez Smith) [1975985] - media: dvb-usb: Fix use-after-free access (Torez Smith) [1975985] - media: dvb-usb: Fix memory leak at error in dvb_usb_device_init() (Torez Smith) [1975985] - media: dvb-usb: make dvb_usb_device_properties const (Torez Smith) [1975985] - usb: typec: tps6598x: Fix return value check in tps6598x_probe() (Torez Smith) [1975985] - usb: typec: stusb160x: fix return value check in stusb160x_probe() (Torez Smith) [1975985] - usb: typec: tcpm: turn tcpm_ams_finish into void function (Torez Smith) [1975985] - usb: typec: tcpci: Check ROLE_CONTROL while interpreting CC_STATUS (Torez Smith) [1975985] - usb: common: move function's kerneldoc next to its definition (Torez Smith) [1975985] - usb: xhci-mtk: print debug info of endpoint interval (Torez Smith) [1975985] - usb: common: add function to get interval expressed in us unit (Torez Smith) [1975985] - usb: xhci-mtk: support to build xhci-mtk-hcd.ko (Torez Smith) [1975985] - usb: xhci-mtk: remove declaration of xhci_mtk_setup() (Torez Smith) [1975985] - usb: xhci-mtk: add some schedule error number (Torez Smith) [1975985] - usb: xhci-mtk: rebuild the way to get bandwidth domain (Torez Smith) [1975985] - usb: xhci-mtk: use @tt_info to check the FS/LS device is under a HS hub (Torez Smith) [1975985] - usb: xhci-mtk: add a member @speed in mu3h_sch_ep_info struct (Torez Smith) [1975985] - usb: xhci-mtk: use clear type instead of void (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary members of mu3h_sch_tt struct (Torez Smith) [1975985] - usb: xhci-mtk: add a function to get bandwidth boundary (Torez Smith) [1975985] - usb: xhci-mtk: add a function to (un)load bandwidth info (Torez Smith) [1975985] - usb: xhci-mtk: use @sch_tt to check whether need do TT schedule (Torez Smith) [1975985] - usb: xhci-mtk: add only one extra CS for FS/LS INTR (Torez Smith) [1975985] - usb: xhci-mtk: get the microframe boundary for ESIT (Torez Smith) [1975985] - usb: dwc3: Fix dereferencing of null dwc->usb_psy (Torez Smith) [1975985] - media: uvc: don't do DMA on stack (Torez Smith) [1975985] - usb: dwc3: document usb_psy in struct dwc3 (Torez Smith) [1975985] - media: uvcvideo: Fix pixel format change for Elgato Cam Link 4K (Torez Smith) [1975985] - USB: typec: tcpm: create debugfs subdir for the driver (Torez Smith) [1975985] - usb: dwc2: Add STM32 related debugfs entries (Torez Smith) [1975985] - media: uvcvideo: Support devices that report an OT as an entity source (Torez Smith) [1975985] - media: uvcvideo: Fix XU id print in forward scan (Torez Smith) [1975985] - USB: typec: fusb302: create debugfs subdir for the driver (Torez Smith) [1975985] - media: uvcvideo: Use dma_alloc_noncontiguous API (Torez Smith) [1975985] - USB: host: uhci: remove dentry pointer for debugfs (Torez Smith) [1975985] - media: uvc: strncpy -> strscpy (Torez Smith) [1975985] - media: uvcvideo: Rename debug functions (Torez Smith) [1975985] - media: uvcvideo: use dev_printk() for uvc_trace() (Torez Smith) [1975985] - media: uvcvideo: New macro uvc_trace_cont (Torez Smith) [1975985] - USB: core: no need to save usb_devices_root (Torez Smith) [1975985] - media: uvcvideo: Use dev_ printk aliases (Torez Smith) [1975985] - usb: dwc3: add an alternate path in vbus_draw callback (Torez Smith) [1975985] - media: uvcvideo: Add Privacy control based on EXT_GPIO (Torez Smith) [1975985] - usb: dwc3: add a power supply for current control (Torez Smith) [1975985] - media: uvcvideo: Implement UVC_EXT_GPIO_UNIT (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for data status (Torez Smith) [1975985] - media: uvcvideo: Allow entity-defined get_info and get_cur (Torez Smith) [1975985] - media: uvcvideo: Provide sync and async uvc_ctrl_status_event (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for power status register (Torez Smith) [1975985] - media: uvcvideo: Allow entities with no pads (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for status register (Torez Smith) [1975985] - media: uvcvideo: Allow extra entities (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for IRQ events (Torez Smith) [1975985] - tty: make everyone's write_room return >= 0 (Torez Smith) [1975985] - media: uvcvideo: Move guid to entity (Torez Smith) [1975985] - USB: serial: xr: fix NULL-deref on disconnect (Torez Smith) [1975985] - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values (Torez Smith) [1975985] - thunderbolt: Drop unused functions tb_switch_is_[ice|tiger]_lake() (Torez Smith) [1975985] - media: uvcvideo: Force UVC version to 1.0a for 1bcf:0b40 (Torez Smith) [1975985] - thunderbolt: debugfs: Handle fail reading block (Torez Smith) [1975985] - media: uvcvideo: Use DIV_ROUND_CLOSEST directly to make it readable (Torez Smith) [1975985] - media: usb: uvc: no need to check return value of debugfs_create functions (Torez Smith) [1975985] - media: uvcvideo: Convey full colorspace information to V4L2 (Torez Smith) [1975985] - driver core: fw_devlink: Detect supplier devices that will never be added (Torez Smith) [1975985] - media: uvcvideo: Ensure all probed info is returned to v4l2 (Torez Smith) [1975985] - media: uvcvideo: Silence shift-out-of-bounds warning (Torez Smith) [1975985] - media: uvcvideo: Fix dereference of out-of-bound list iterator (Torez Smith) [1975985] - media: zr364xx: fix memory leaks in probe() (Torez Smith) [1975985] - media: uvcvideo: Cleanup uvc_ctrl_add_info() error handling (Torez Smith) [1975985] - USB: serial: xr: fix B0 handling (Torez Smith) [1975985] - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect (Torez Smith) [1975985] - USB: serial: xr: fix pin configuration (Torez Smith) [1975985] - media: uvcvideo: Replace HTTP links with HTTPS ones (Torez Smith) [1975985] - USB: serial: xr: fix gpio-mode handling (Torez Smith) [1975985] - media: uvcvideo: Set media controller entity functions (Torez Smith) [1975985] - USB: serial: xr: simplify line-speed logic (Torez Smith) [1975985] - media: uvcvideo: Add mapping for HEVC payloads (Torez Smith) [1975985] - USB: serial: xr: clean up line-settings handling (Torez Smith) [1975985] - media: uvcvideo: Fix annotation for uvc_video_clock_update() (Torez Smith) [1975985] - USB: serial: xr: document vendor-request recipient (Torez Smith) [1975985] - USB: serial: xr: use termios flag helpers (Torez Smith) [1975985] - USB: serial: xr: use subsystem usb_device at probe (Torez Smith) [1975985] - media: media/usb: rename VFL_TYPE_GRABBER to _VIDEO (Torez Smith) [1975985] - USB: serial: xr: fix interface leak at disconnect (Torez Smith) [1975985] - media: rename VFL_TYPE_GRABBER to _VIDEO (Torez Smith) [1975985] - USB: serial: xr: fix NULL-deref at probe (Torez Smith) [1975985] - USB: cdc-acm: ignore Exar XR21V141X when serial driver is built (Torez Smith) [1975985] - media: uvcvideo: drop error check of debugfs_create_dir() (Torez Smith) [1975985] - USB: serial: add MaxLinear/Exar USB to Serial driver (Torez Smith) [1975985] - media: uvcvideo: Fix a typo in UVC_METATADA_BUF_SIZE (Torez Smith) [1975985] - media: uvcvideo: Fix error path in control parsing failure (Torez Smith) [1975985] - media: drivers/media: don't set pix->priv = 0 (Torez Smith) [1975985] - media: Bulk remove BUG_ON(in_interrupt()) (Torez Smith) [1975985] - media: zr364xx: propagate errors from zr364xx_start_readpipe() (Torez Smith) [1975985] - media: uvcvideo: Add a D4M camera description (Torez Smith) [1975985] - media: em28xx: Enable Hauppauge 461e rev2 (Torez Smith) [1975985] - crypto: qat - fix definition of ring reset results (Vladis Dronov) [1960307] - crypto: qat - add support for compression for 4xxx (Vladis Dronov) [1960307] - crypto: qat - allow detection of dc capabilities for 4xxx (Vladis Dronov) [1960307] - crypto: qat - add PFVF support to enable the reset of ring pairs (Vladis Dronov) [1960307] - crypto: qat - add PFVF support to the GEN4 host driver (Vladis Dronov) [1960307] - crypto: qat - config VFs based on ring-to-svc mapping (Vladis Dronov) [1960307] - crypto: qat - exchange ring-to-service mappings over PFVF (Vladis Dronov) [1960307] - crypto: qat - support fast ACKs in the PFVF protocol (Vladis Dronov) [1960307] - crypto: qat - exchange device capabilities over PFVF (Vladis Dronov) [1960307] - crypto: qat - introduce support for PFVF block messages (Vladis Dronov) [1960307] - crypto: qat - store the ring-to-service mapping (Vladis Dronov) [1960307] - crypto: qat - store the PFVF protocol version of the endpoints (Vladis Dronov) [1960307] - crypto: qat - improve the ACK timings in PFVF send (Vladis Dronov) [1960307] - crypto: qat - leverage read_poll_timeout in PFVF send (Vladis Dronov) [1960307] - crypto: qat - leverage bitfield.h utils for PFVF messages (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF messages with struct pfvf_message (Vladis Dronov) [1960307] - crypto: qat - set PFVF_MSGORIGIN just before sending (Vladis Dronov) [1960307] - crypto: qat - make PFVF send and receive direction agnostic (Vladis Dronov) [1960307] - crypto: qat - make PFVF message construction direction agnostic (Vladis Dronov) [1960307] - crypto: qat - add the adf_get_pmisc_base() helper function (Vladis Dronov) [1960307] - crypto: qat - support the reset of ring pairs on PF (Vladis Dronov) [1960307] - crypto: qat - extend crypto capability detection for 4xxx (Vladis Dronov) [1960307] - crypto: qat - set COMPRESSION capability for QAT GEN2 (Vladis Dronov) [1960307] - crypto: qat - set CIPHER capability for QAT GEN2 (Vladis Dronov) [1960307] - crypto: qat - get compression extended capabilities (Vladis Dronov) [1960307] - crypto: qat - improve logging of PFVF messages (Vladis Dronov) [1960307] - crypto: qat - fix VF IDs in PFVF log messages (Vladis Dronov) [1960307] - crypto: qat - do not rely on min version (Vladis Dronov) [1960307] - crypto: qat - refactor pfvf version request messages (Vladis Dronov) [1960307] - crypto: qat - pass the PF2VF responses back to the callers (Vladis Dronov) [1960307] - crypto: qat - use enums for PFVF protocol codes (Vladis Dronov) [1960307] - crypto: qat - reorganize PFVF protocol definitions (Vladis Dronov) [1960307] - crypto: qat - reorganize PFVF code (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF receive logic (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF send function (Vladis Dronov) [1960307] - crypto: qat - differentiate between pf2vf and vf2pf offset (Vladis Dronov) [1960307] - crypto: qat - add pfvf_ops (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF disabled function (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF VF related logic (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF PF related logic (Vladis Dronov) [1960307] - crypto: qat - handle retries due to collisions in adf_iov_putmsg() (Vladis Dronov) [1960307] - crypto: qat - split PFVF message decoding from handling (Vladis Dronov) [1960307] - crypto: qat - re-enable interrupts for legacy PFVF messages (Vladis Dronov) [1960307] - crypto: qat - change PFVF ACK behaviour (Vladis Dronov) [1960307] - crypto: qat - move interrupt code out of the PFVF handler (Vladis Dronov) [1960307] - crypto: qat - move VF message handler to adf_vf2pf_msg.c (Vladis Dronov) [1960307] - crypto: qat - move vf2pf interrupt helpers (Vladis Dronov) [1960307] - crypto: qat - refactor PF top half for PFVF (Vladis Dronov) [1960307] - crypto: qat - fix undetected PFVF timeout in ACK loop (Vladis Dronov) [1960307] - crypto: qat - do not handle PFVF sources for qat_4xxx (Vladis Dronov) [1960307] - crypto: qat - simplify adf_enable_aer() (Vladis Dronov) [1960307] - crypto: qat - share adf_enable_pf2vf_comms() from adf_pf2vf_msg.c (Vladis Dronov) [1960307] - crypto: qat - extract send and wait from adf_vf2pf_request_version() (Vladis Dronov) [1960307] - crypto: qat - add VF and PF wrappers to common send function (Vladis Dronov) [1960307] - crypto: qat - rename pfvf collision constants (Vladis Dronov) [1960307] - crypto: qat - move pfvf collision detection values (Vladis Dronov) [1960307] - crypto: qat - make pfvf send message direction agnostic (Vladis Dronov) [1960307] - crypto: qat - use hweight for bit counting (Vladis Dronov) [1960307] - crypto: qat - remove duplicated logic across GEN2 drivers (Vladis Dronov) [1960307] - crypto: qat - fix handling of VF to PF interrupts (Vladis Dronov) [1960307] - crypto: qat - remove unnecessary collision prevention step in PFVF (Vladis Dronov) [1960307] - crypto: qat - disregard spurious PFVF interrupts (Vladis Dronov) [1960307] - crypto: qat - detect PFVF collision after ACK (Vladis Dronov) [1960307] - crypto: qat - power up 4xxx device (Vladis Dronov) [1960307] - crypto: qat - remove unneeded packed attribute (Vladis Dronov) [1960307] - crypto: qat - free irq in case of failure (Vladis Dronov) [1960307] - crypto: qat - free irqs only if allocated (Vladis Dronov) [1960307] - crypto: qat - remove unmatched CPU affinity to cluster IRQ (Vladis Dronov) [1960307] - crypto: qat - replace deprecated MSI API (Vladis Dronov) [1960307] - crypto: qat - store vf.compatible flag (Vladis Dronov) [1960307] - crypto: qat - do not export adf_iov_putmsg() (Vladis Dronov) [1960307] - crypto: qat - flush vf workqueue at driver removal (Vladis Dronov) [1960307] - crypto: qat - remove the unnecessary get_vintmsk_offset() (Vladis Dronov) [1960307] - crypto: qat - fix naming of PF/VF enable functions (Vladis Dronov) [1960307] - crypto: qat - complete all the init steps before service notification (Vladis Dronov) [1960307] - crypto: qat - move IO virtualization functions (Vladis Dronov) [1960307] - crypto: qat - fix naming for init/shutdown VF to PF notifications (Vladis Dronov) [1960307] - crypto: qat - protect interrupt mask CSRs with a spinlock (Vladis Dronov) [1960307] - crypto: qat - move pf2vf interrupt [en|dis]able to adf_vf_isr.c (Vladis Dronov) [1960307] - crypto: qat - fix reuse of completion variable (Vladis Dronov) [1960307] - crypto: qat - remove intermediate tasklet for vf2pf (Vladis Dronov) [1960307] - crypto: qat - rename compatibility version definition (Vladis Dronov) [1960307] - crypto: qat - prevent spurious MSI interrupt in PF (Vladis Dronov) [1960307] - crypto: qat - prevent spurious MSI interrupt in VF (Vladis Dronov) [1960307] - crypto: qat - handle both source of interrupt in VF ISR (Vladis Dronov) [1960307] - crypto: qat - do not ignore errors from enable_vf2pf_comms() (Vladis Dronov) [1960307] - crypto: qat - enable interrupts only after ISR allocation (Vladis Dronov) [1960307] - crypto: qat - remove empty sriov_configure() (Vladis Dronov) [1960307] - crypto: qat - use proper type for vf_mask (Vladis Dronov) [1960307] - crypto: qat - fix a typo in a comment (Vladis Dronov) [1960307] - crypto: qat - disable AER if an error occurs in probe functions (Vladis Dronov) [1960307] - crypto: qat - set DMA mask to 48 bits for Gen2 (Vladis Dronov) [1960307] - crypto: qat - simplify code and axe the use of a deprecated API (Vladis Dronov) [1960307] - crypto: qat - ratelimit invalid ioctl message and print the invalid cmd (Vladis Dronov) [1960307] - lib: crc8: pointer to data block should be const (Vladis Dronov) [1960307] - redhat/configs: disable CONFIG_HYPERV_BALLOON on Aarch64 (Vitaly Kuznetsov) [2035292] - net/mlx5e: Fix possible use-after-free deleting fdb rule (Amir Tzin) [2000003] - e1000e: Fix packet loss on Tiger Lake and later (Ken Cox) [1952803] - e1000e: Separate TGP board type from SPT (Ken Cox) [1952803] - e1000e: Add support for the next LOM generation (Ken Cox) [1952803] - e1000e: Add support for Lunar Lake (Ken Cox) [1952803] - ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved (Mark Langsdorf) [1999906] - powerpc/xmon: Dump XIVE information for online-only processors. (Steve Best) [2037639] - of: net: pass the dst buffer to of_get_mac_address() (Petr Oros) [2026468] - net: ethernet: improve eth_platform_get_mac_address (Petr Oros) [2026468] - net: ethernet: fix similar warning reported by kbuild test robot (Petr Oros) [2026468] - net: ethernet: support of_get_mac_address new ERR_PTR error (Petr Oros) [2026468] - [s390] s390: add HWCAP_S390_PCI_MIO to ELF hwcaps (Mete Durlu) [2030641] - [s390] s390: make PCI mio support a machine flag (Mete Durlu) [2030641] - Allocate bw_dwork as a pointer and introduce a backpointer in the work struct (Nico Pache) [1990580] - writeback: use READ_ONCE for unlocked reads of writeback stats (Nico Pache) [1990580] - writeback: rename domain_update_bandwidth() (Nico Pache) [1990580] - writeback: fix bandwidth estimate for spiky workload (Nico Pache) [1990580] - writeback: reliably update bandwidth estimation (Nico Pache) [1990580] - writeback: track number of inodes under writeback (Nico Pache) [1990580] - bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag (Nico Pache) [1990580] - bdi: invert BDI_CAP_NO_ACCT_WB (Nico Pache) [1990580] - bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flag (Nico Pache) [1990580] - mm: use SWP_SYNCHRONOUS_IO more intelligently (Nico Pache) [1990580] - bdi: remove BDI_CAP_SYNCHRONOUS_IO (Nico Pache) [1990580] - bcache: inherit the optimal I/O size (Nico Pache) [1990580] - fs: remove the unused SB_I_MULTIROOT flag (Nico Pache) [1990580] - Revert "bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag" (Nico Pache) [1990580] - mm/page_io.c: annotate refault stalls from swap_readpage (Nico Pache) [1990580] - mmc: mmc_spi: Enable stable writes (Nico Pache) [1990580] - virtio-blk: modernize sysfs attribute creation (Nico Pache) [1990580] - aoe: register default groups with device_add_disk() (Nico Pache) [1990580] - block: make QUEUE_SYSFS_BIT_FNS more useful (Nico Pache) [1990580] - block: add helper macros for queue sysfs entries (Nico Pache) [1990580] - cifs: sanitize multiple delimiters in prepath (Thiago Becker) [2031200] - igc: Fix typo in i225 LTR functions (Corinna Vinschen) [1970667] - igc: AF_XDP zero-copy metadata adjust breaks SKBs on XDP_PASS (Corinna Vinschen) [1970667] - igc: Change Device Reset to Port Reset (Corinna Vinschen) [1970667] - igc: Add new device ID (Corinna Vinschen) [1970667] - igc: Remove media type checking on the PHY initialization (Corinna Vinschen) [1970667] - igc: Update I226_K device ID (Corinna Vinschen) [1970667] - net: intel: igc_ptp: fix build for UML (Corinna Vinschen) [1970667] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970667] - igc: Add support for CBS offloading (Corinna Vinschen) [1970667] - igc: Simplify TSN flags handling (Corinna Vinschen) [1970667] - igc: Use default cycle 'start' and 'end' values for queues (Corinna Vinschen) [1970667] - igc: Add support for PTP getcrosststamp() (Corinna Vinschen) [1970667] - igc: Enable PCIe PTM (Corinna Vinschen) [1970667] - igc: Use num_tx_queues when iterating over tx_ring queue (Corinna Vinschen) [1970667] - igc: fix page fault when thunderbolt is unplugged (Corinna Vinschen) [1970667] - igc: Increase timeout value for Speed 100/1000/2500 (Corinna Vinschen) [1970667] - igc: Set QBVCYCLET_S to 0 for TSN Basic Scheduling (Corinna Vinschen) [1970667] - igc: Remove phy->type checking (Corinna Vinschen) [1970667] - igc: Remove _I_PHY_ID checking (Corinna Vinschen) [1970667] - igc: Check if num of q_vectors is smaller than max before array access (Corinna Vinschen) [1970667] - Revert "igc: Export LEDs" (Corinna Vinschen) [1970667] - igc: Export LEDs (Corinna Vinschen) [1970667] - igc: Make flex filter more flexible (Corinna Vinschen) [1970667] - igc: Allow for Flex Filters to be installed (Corinna Vinschen) [1970667] - igc: Integrate flex filter into ethtool ops (Corinna Vinschen) [1970667] - igc: Add possibility to add flex filter (Corinna Vinschen) [1970667] - igc: Fix an error handling path in 'igc_probe()' (Corinna Vinschen) [1970667] - igc: change default return of igc_read_phy_reg() (Corinna Vinschen) [1970667] - igc: Fix use-after-free error during reset (Corinna Vinschen) [1970667] - intel: Remove rcu_read_lock() around XDP program invocation (Corinna Vinschen) [1970667] - igc: Enable HW VLAN Insertion and HW VLAN Stripping (Corinna Vinschen) [1970667] - igc: Indentation fixes (Corinna Vinschen) [1970667] - igc: Remove unused MDICNFG register (Corinna Vinschen) [1970667] - igc: Remove unused asymmetric pause bit from igc defines (Corinna Vinschen) [1970667] - igc: Update driver to use ethtool_sprintf (Corinna Vinschen) [1970667] - igc: add correct exception tracing for XDP (Corinna Vinschen) [1970667] - igb/igc: use strongly typed pointer (Corinna Vinschen) [1970667] - intel: remove checker warning (Corinna Vinschen) [1970667] - igc: Enable TX via AF_XDP zero-copy (Corinna Vinschen) [1970667] - igc: Enable RX via AF_XDP zero-copy (Corinna Vinschen) [1970667] - igc: Replace IGC_TX_FLAGS_XDP flag by an enum (Corinna Vinschen) [1970667] - igc: Introduce igc_unmap_tx_buffer() helper (Corinna Vinschen) [1970667] - igc: Introduce TX/RX stats helpers (Corinna Vinschen) [1970667] - igc: Refactor XDP rxq info registration (Corinna Vinschen) [1970667] - igc: Refactor igc_clean_rx_ring() (Corinna Vinschen) [1970667] - igc: Refactor __igc_xdp_run_prog() (Corinna Vinschen) [1970667] - igc: Move igc_xdp_is_enabled() (Corinna Vinschen) [1970667] - igc: use XDP helpers (Corinna Vinschen) [1970667] - igc: Expose LPI counters (Corinna Vinschen) [1970667] - igc: enable auxiliary PHC functions for the i225 (Corinna Vinschen) [1970667] - igc: Enable internal i225 PPS (Corinna Vinschen) [1970667] - igc: Add support for XDP_REDIRECT action (Corinna Vinschen) [1970667] - igc: Add support for XDP_TX action (Corinna Vinschen) [1970667] - igc: Add initial XDP support (Corinna Vinschen) [1970667] - drivers: net: mhi: fix error path in mhi_net_newlink (Íñigo Huguet) [2004141] - cfg80211: correct bridge/4addr mode check (Íñigo Huguet) [2004141] - cfg80211: fix management registrations locking (Íñigo Huguet) [2004141] - cfg80211: scan: fix RCU in cfg80211_add_nontrans_list() (Íñigo Huguet) [2004141] - mac80211: mesh: fix HE operation element length check (Íñigo Huguet) [2004141] - mwifiex: avoid null-pointer-subtraction warning (Íñigo Huguet) [2004141] - Revert "brcmfmac: use ISO3166 country code and 0 rev as fallback" (Íñigo Huguet) [2004141] - iwlwifi: pcie: add configuration of a Wi-Fi adapter on Dell XPS 15 (Íñigo Huguet) [2004141] - mac80211: Fix Ptk0 rekey documentation (Íñigo Huguet) [2004141] - mac80211: check return value of rhashtable_init (Íñigo Huguet) [2004141] - mac80211: fix use-after-free in CCMP/GCMP RX (Íñigo Huguet) [2004141] - mac80211-hwsim: fix late beacon hrtimer handling (Íñigo Huguet) [2004141] - mac80211: mesh: fix potentially unaligned access (Íñigo Huguet) [2004141] - mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap (Íñigo Huguet) [2004141] - mac80211: Drop frames from invalid MAC address in ad-hoc mode (Íñigo Huguet) [2004141] - mac80211: Fix ieee80211_amsdu_aggregate frag_tail bug (Íñigo Huguet) [2004141] - Revert "mac80211: do not use low data rates for data frames with no ack flag" (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: missing unlock in iwl_mvm_wowlan_program_keys() (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: Fix off by ones in iwl_mvm_wowlan_get_rsc_v5_data() (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix possible NULL dereference (Íñigo Huguet) [2004141] - iwlwifi: fix printk format warnings in uefi.c (Íñigo Huguet) [2004141] - iwlwifi: pnvm: Fix a memory leak in 'iwl_pnvm_get_from_fs()' (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 66 for AX devices (Íñigo Huguet) [2004141] - iwlwifi Add support for ax201 in Samsung Galaxy Book Flex2 Alpha (Íñigo Huguet) [2004141] - iwlwifi: mvm: add rtnl_lock() in iwl_mvm_start_get_nvm() (Íñigo Huguet) [2004141] - net: qrtr: revert check in qrtr_endpoint_post() (Íñigo Huguet) [2004141] - net: qrtr: make checks in qrtr_endpoint_post() stricter (Íñigo Huguet) [2004141] - intel: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2004141] - mwifiex: pcie: add reset_d3cold quirk for Surface gen4+ devices (Íñigo Huguet) [2004141] - mwifiex: pcie: add DMI-based quirk implementation for Surface devices (Íñigo Huguet) [2004141] - brcmfmac: pcie: fix oops on failure to resume and reprobe (Íñigo Huguet) [2004141] - brcmfmac: Add WPA3 Personal with FT to supported cipher suites (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Fix initialization of place in _rtl92c_phy_get_rightchnlplace() (Íñigo Huguet) [2004141] - rtw88: add quirk to disable pci caps on HP Pavilion 14-ce0xxx (Íñigo Huguet) [2004141] - ath9k: fix sleeping in atomic context (Íñigo Huguet) [2004141] - ath9k: fix OOB read ar9300_eeprom_restore_internal (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't use FW key ID in beacon protection (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix scan channel flags settings (Íñigo Huguet) [2004141] - iwlwifi: mvm: support broadcast TWT alone (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_stored_beacon_notif_v3 (Íñigo Huguet) [2004141] - iwlwifi: move get pnvm file name to a separate function (Íñigo Huguet) [2004141] - iwlwifi: mvm: add support for responder config command version 9 (Íñigo Huguet) [2004141] - iwlwifi: mvm: add support for range request command version 13 (Íñigo Huguet) [2004141] - iwlwifi: allow debug init in RF-kill (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't schedule the roc_done_wk if it is already running (Íñigo Huguet) [2004141] - iwlwifi: yoyo: support for new DBGI_SRAM region (Íñigo Huguet) [2004141] - iwlwifi: add 'Rx control frame to MBSSID' HE capability (Íñigo Huguet) [2004141] - iwlwifi: fw: fix debug dump data declarations (Íñigo Huguet) [2004141] - iwlwifi: api: remove datamember from struct (Íñigo Huguet) [2004141] - iwlwifi: fix __percpu annotation (Íñigo Huguet) [2004141] - iwlwifi: pcie: avoid dma unmap/remap in crash dump (Íñigo Huguet) [2004141] - iwlwifi: acpi: fill in SAR tables with defaults (Íñigo Huguet) [2004141] - iwlwifi: acpi: fill in WGDS table with defaults (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 65 for AX devices (Íñigo Huguet) [2004141] - iwlwifi: acpi: support reading and storing WGDS revision 2 (Íñigo Huguet) [2004141] - iwlwifi: mvm: load regdomain at INIT stage (Íñigo Huguet) [2004141] - iwlwifi: mvm: Read the PPAG and SAR tables at INIT stage (Íñigo Huguet) [2004141] - iwlwifi: mvm: trigger WRT when no beacon heard (Íñigo Huguet) [2004141] - iwlwifi: fw: correctly limit to monitor dump (Íñigo Huguet) [2004141] - iwlwifi: skip first element in the WTAS ACPI table (Íñigo Huguet) [2004141] - iwlwifi: mvm: support version 11 of wowlan statuses notification (Íñigo Huguet) [2004141] - iwlwifi: convert flat GEO profile table to a struct version (Íñigo Huguet) [2004141] - iwlwifi: remove unused ACPI_WGDS_TABLE_SIZE definition (Íñigo Huguet) [2004141] - iwlwifi: support reading and storing EWRD revisions 1 and 2 (Íñigo Huguet) [2004141] - iwlwifi: acpi: support reading and storing WRDS revision 1 and 2 (Íñigo Huguet) [2004141] - iwlwifi: pass number of chains and sub-bands to iwl_sar_set_profile() (Íñigo Huguet) [2004141] - iwlwifi: remove ACPI_SAR_NUM_TABLES definition (Íñigo Huguet) [2004141] - iwlwifi: convert flat SAR profile table to a struct version (Íñigo Huguet) [2004141] - iwlwifi: rename ACPI_SAR_NUM_CHAIN_LIMITS to ACPI_SAR_NUM_CHAINS (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix access to BSS elements (Íñigo Huguet) [2004141] - iwlwifi: mvm: Refactor setting of SSIDs for 6GHz scan (Íñigo Huguet) [2004141] - iwlwifi: mvm: silently drop encrypted frames for unknown station (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: implement RSC command version 5 (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: make key reprogramming iteration optional (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: add separate key iteration for GTK type (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: refactor TSC/RSC configuration (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: remove fixed cmd_flags argument (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: separate TKIP data from key iteration (Íñigo Huguet) [2004141] - iwlwifi: mvm: simplify __iwl_mvm_set_sta_key() (Íñigo Huguet) [2004141] - iwlwifi: mvm: support new station key API (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix umac scan request probe parameters (Íñigo Huguet) [2004141] - iwlwifi: pcie: implement Bz reset flow (Íñigo Huguet) [2004141] - iwlwifi: implement Bz NMI behaviour (Íñigo Huguet) [2004141] - iwlwifi: pcie: implement Bz device startup (Íñigo Huguet) [2004141] - iwlwifi: read MAC address from correct place on Bz (Íñigo Huguet) [2004141] - iwlwifi: give Bz devices their own name (Íñigo Huguet) [2004141] - iwlwifi: split off Bz devices into their own family (Íñigo Huguet) [2004141] - iwlwifi: yoyo: cleanup internal buffer allocation in D3 (Íñigo Huguet) [2004141] - iwlwifi: mvm: treat MMPDUs in iwl_mvm_mac_tx() as bcast (Íñigo Huguet) [2004141] - iwlwifi: mvm: clean up number of HW queues (Íñigo Huguet) [2004141] - iwlwifi: mvm: avoid static queue number aliasing (Íñigo Huguet) [2004141] - iwlwifi: use DEFINE_MUTEX() for mutex lock (Íñigo Huguet) [2004141] - iwlwifi: remove trailing semicolon in macro definition (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix a memory leak in iwl_mvm_mac_ctxt_beacon_changed (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix old-style static const declaration (Íñigo Huguet) [2004141] - iwlwifi: mvm: remove check for vif in iwl_mvm_vif_from_mac80211() (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove spaces from queue names (Íñigo Huguet) [2004141] - iwlwifi: mvm: restrict FW SMPS request (Íñigo Huguet) [2004141] - iwlwifi: mvm: set replay counter on key install (Íñigo Huguet) [2004141] - iwlwifi: mvm: remove trigger EAPOL time event (Íñigo Huguet) [2004141] - iwlwifi: iwl-dbg-tlv: add info about loading external dbg bin (Íñigo Huguet) [2004141] - iwlwifi: mvm: Add support for hidden network scan on 6GHz band (Íñigo Huguet) [2004141] - iwlwifi: mvm: Do not use full SSIDs in 6GHz scan (Íñigo Huguet) [2004141] - iwlwifi: print PNVM complete notification status in hexadecimal (Íñigo Huguet) [2004141] - iwlwifi: pcie: dump error on FW reset handshake failures (Íñigo Huguet) [2004141] - iwlwifi: prepare for synchronous error dumps (Íñigo Huguet) [2004141] - iwlwifi: pcie: free RBs during configure (Íñigo Huguet) [2004141] - iwlwifi: pcie: optimise struct iwl_rx_mem_buffer layout (Íñigo Huguet) [2004141] - iwlwifi: mvm: avoid FW restart while shutting down (Íñigo Huguet) [2004141] - iwlwifi: nvm: enable IEEE80211_HE_PHY_CAP10_HE_MU_M1RU_MAX_LTF (Íñigo Huguet) [2004141] - iwlwifi: mvm: set BROADCAST_TWT_SUPPORTED in MAC policy (Íñigo Huguet) [2004141] - iwlwifi: iwl-nvm-parse: set STBC flags for HE phy capabilities (Íñigo Huguet) [2004141] - cfg80211: use wiphy DFS domain if it is self-managed (Íñigo Huguet) [2004141] - mac80211: parse transmit power envelope element (Íñigo Huguet) [2004141] - ieee80211: add definition for transmit power envelope element (Íñigo Huguet) [2004141] - ieee80211: add definition of regulatory info in 6 GHz operation information (Íñigo Huguet) [2004141] - mac80211: introduce individual TWT support in AP mode (Íñigo Huguet) [2004141] - ieee80211: add TWT element definitions (Íñigo Huguet) [2004141] - brcmsmac: make array addr static const, makes object smaller (Íñigo Huguet) [2004141] - rtw88: Remove unnecessary check code (Íñigo Huguet) [2004141] - rtw88: wow: fix size access error of probe request (Íñigo Huguet) [2004141] - rtw88: wow: report wow reason through mac80211 api (Íñigo Huguet) [2004141] - rtw88: wow: build wow function only if CONFIG_PM is on (Íñigo Huguet) [2004141] - rtw88: refine the setting of rsvd pages for different firmware (Íñigo Huguet) [2004141] - rtw88: use read_poll_timeout instead of fixed sleep (Íñigo Huguet) [2004141] - rtw88: 8822ce: set CLKREQ# signal to low during suspend (Íñigo Huguet) [2004141] - rtw88: change beacon filter default mode (Íñigo Huguet) [2004141] - rtw88: 8822c: add tx stbc support under HT mode (Íñigo Huguet) [2004141] - rtw88: adjust the log level for failure of tx report (Íñigo Huguet) [2004141] - rtl8xxxu: Fix the handling of TX A-MPDU aggregation (Íñigo Huguet) [2004141] - rtl8xxxu: disable interrupt_in transfer for 8188cu and 8192cu (Íñigo Huguet) [2004141] - mwifiex: make arrays static const, makes object smaller (Íñigo Huguet) [2004141] - mwifiex: usb: Replace one-element array with flexible-array member (Íñigo Huguet) [2004141] - mwifiex: drop redundant null-pointer check in mwifiex_dnld_cmd_to_fw() (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: make arrays static const, makes object smaller (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Remove redundant variable initializations (Íñigo Huguet) [2004141] - ray_cs: Split memcpy() to avoid bounds check warning (Íñigo Huguet) [2004141] - ray_cs: use *ph to print small buffer (Íñigo Huguet) [2004141] - brcmfmac: add 43752 SDIO ids and initialization (Íñigo Huguet) [2004141] - brcmfmac: Set SDIO workqueue as WQ_HIGHPRI (Íñigo Huguet) [2004141] - brcmfmac: use separate firmware for 43430 revision 2 (Íñigo Huguet) [2004141] - brcmfmac: support chipsets with different core enumeration space (Íñigo Huguet) [2004141] - brcmfmac: add xtlv support to firmware interface layer (Íñigo Huguet) [2004141] - brcmfmac: increase core revision column aligning core list (Íñigo Huguet) [2004141] - brcmfmac: use different error value for invalid ram base address (Íñigo Huguet) [2004141] - brcmfmac: firmware: Fix firmware loading (Íñigo Huguet) [2004141] - net: qrtr: fix another OOB Read in qrtr_endpoint_post (Íñigo Huguet) [2004141] - cfg80211: fix BSS color notify trace enum confusion (Íñigo Huguet) [2004141] - mac80211: fix locking in ieee80211_restart_work() (Íñigo Huguet) [2004141] - mac80211: Fix insufficient headroom issue for AMSDU (Íñigo Huguet) [2004141] - mac80211: add support for BSS color change (Íñigo Huguet) [2004141] - nl80211: add support for BSS coloring (Íñigo Huguet) [2004141] - mac80211: Use flex-array for radiotap header bitmap (Íñigo Huguet) [2004141] - mac80211: radiotap: Use BIT() instead of shifts (Íñigo Huguet) [2004141] - mac80211: Remove unnecessary variable and label (Íñigo Huguet) [2004141] - mac80211: include (Íñigo Huguet) [2004141] - mac80211: Fix monitor MTU limit so that A-MSDUs get through (Íñigo Huguet) [2004141] - mac80211: remove unnecessary NULL check in ieee80211_register_hw() (Íñigo Huguet) [2004141] - mac80211: Reject zero MAC address in sta_info_insert_check() (Íñigo Huguet) [2004141] - mt76: fix enum type mismatch (Íñigo Huguet) [2004141] - bus: mhi: core: Improve debug messages for power up (Íñigo Huguet) [2004141] - bus: mhi: core: Replace DMA allocation wrappers with original APIs (Íñigo Huguet) [2004141] - bus: mhi: core: Add range checks for BHI and BHIe (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Set register access length for MHI driver (Íñigo Huguet) [2004141] - ath11k: set register access length for MHI driver (Íñigo Huguet) [2004141] - bus: mhi: Add MMIO region length to controller structure (Íñigo Huguet) [2004141] - bus: mhi: core: Set BHI and BHIe pointers to NULL in clean-up (Íñigo Huguet) [2004141] - bus: mhi: core: Set BHI/BHIe offsets on power up preparation (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add Cinterion MV31-W PCIe to MHI (Íñigo Huguet) [2004141] - Revert "mhi: Fix networking tree build." (Íñigo Huguet) [2004141] - mhi: Fix networking tree build. (Íñigo Huguet) [2004141] - brcmfmac: firmware: Allow per-board firmware binaries (Íñigo Huguet) [2004141] - iwlwifi: add new so-jf devices (Íñigo Huguet) [2004141] - iwlwifi: add new SoF with JF devices (Íñigo Huguet) [2004141] - iwlwifi: pnvm: accept multiple HW-type TLVs (Íñigo Huguet) [2004141] - cfg80211: Fix possible memory leak in function cfg80211_bss_update (Íñigo Huguet) [2004141] - nl80211: limit band information in non-split data (Íñigo Huguet) [2004141] - mac80211: fix enabling 4-address mode on a sta vif after assoc (Íñigo Huguet) [2004141] - mac80211: fix starting aggregation sessions on mesh interfaces (Íñigo Huguet) [2004141] - mac80211: Do not strip skb headroom on monitor frames (Íñigo Huguet) [2004141] - net: mhi: Remove MBIM protocol (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Fix inbound IPCR channel (Íñigo Huguet) [2004141] - bus: mhi: core: Validate channel ID when processing command completions (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Apply no-op for wake using sideband wake boolean (Íñigo Huguet) [2004141] - net: mhi: Improve MBIM packet counting (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: configurable network interface MRU (Íñigo Huguet) [2004141] - mt76: mt7921: Fix fall-through warning for Clang (Íñigo Huguet) [2004141] - mt76: mt7921: continue to probe driver when fw already downloaded (Íñigo Huguet) [2004141] - ath11k: Remove some duplicate code (Íñigo Huguet) [2004141] - ath: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2004141] - iwlwifi: acpi: remove unused function iwl_acpi_eval_dsm_func() (Íñigo Huguet) [2004141] - rtw88: fix c2h memory leak (Íñigo Huguet) [2004141] - brcmfmac: support parse country code map from DT (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: Add missing 'pci_disable_pcie_error_reporting()' calls (Íñigo Huguet) [2004141] - bus: mhi: Wait for M2 state during system resume (Íñigo Huguet) [2004141] - bus: mhi: core: Fix power down latency (Íñigo Huguet) [2004141] - brcmfmac: Silence error messages about unsupported firmware features (Íñigo Huguet) [2004141] - cfg80211: Add wiphy_info_once() (Íñigo Huguet) [2004141] - mac80211: Switch to a virtual time-based airtime scheduler (Íñigo Huguet) [2004141] - Revert "mac80211: HE STA disassoc due to QOS NULL not sent" (Íñigo Huguet) [2004141] - mac80211: remove iwlwifi specific workaround NDPs of null_response (Íñigo Huguet) [2004141] - mac80211: fix NULL ptr dereference during mesh peer connection for non HE devices (Íñigo Huguet) [2004141] - mac80211: Enable power save after receiving NULL packet ACK (Íñigo Huguet) [2004141] - mac80211: add HE 6 GHz capability only if supported (Íñigo Huguet) [2004141] - mac80211: notify driver on mgd TX completion (Íñigo Huguet) [2004141] - mac80211: always include HE 6GHz capability in probe request (Íñigo Huguet) [2004141] - mac80211: add vendor-specific capabilities to assoc request (Íñigo Huguet) [2004141] - cfg80211: allow advertising vendor-specific capabilities (Íñigo Huguet) [2004141] - cfg80211: set custom regdomain after wiphy registration (Íñigo Huguet) [2004141] - cfg80211: Support hidden AP discovery over 6GHz band (Íñigo Huguet) [2004141] - mac80211: conditionally advertise HE in probe requests (Íñigo Huguet) [2004141] - cfg80211: add cfg80211_any_usable_channels() (Íñigo Huguet) [2004141] - cfg80211: reg: improve bad regulatory warning (Íñigo Huguet) [2004141] - nl80211: Fix typo pmsr->pmsr (Íñigo Huguet) [2004141] - mac80211: fix some spelling mistakes (Íñigo Huguet) [2004141] - cfg80211: remove ieee80211_get_he_sta_cap() (Íñigo Huguet) [2004141] - mac80211: remove use of ieee80211_get_he_sta_cap() (Íñigo Huguet) [2004141] - cfg80211: trace more information in assoc trace event (Íñigo Huguet) [2004141] - mac80211: improve AP disconnect message (Íñigo Huguet) [2004141] - mac80211: rearrange struct txq_info for fewer holes (Íñigo Huguet) [2004141] - ieee80211: add defines for HE PHY cap byte 10 (Íñigo Huguet) [2004141] - mac80211: Properly WARN on HW scan before restart (Íñigo Huguet) [2004141] - nl80211/cfg80211: add BSS color to NDP ranging parameters (Íñigo Huguet) [2004141] - mac80211: add to bss_conf if broadcast TWT is supported (Íñigo Huguet) [2004141] - mac80211: move SMPS mode setting after ieee80211_prep_connection (Íñigo Huguet) [2004141] - mac80211: free skb in WEP error case (Íñigo Huguet) [2004141] - mac80211: handle rate control (RC) racing with chanctx definition (Íñigo Huguet) [2004141] - ieee80211: define timing measurement in extended capabilities IE (Íñigo Huguet) [2004141] - mac80211_hwsim: record stats in non-netlink path (Íñigo Huguet) [2004141] - ieee80211: add the value for Category '6' in "rtw_ieee80211_category" (Íñigo Huguet) [2004141] - mac80211: remove iwlwifi specific workaround that broke sta NDP tx (Íñigo Huguet) [2004141] - mac80211: allow SMPS requests only in client mode (Íñigo Huguet) [2004141] - mac80211: check per vif offload_flags in Tx path (Íñigo Huguet) [2004141] - mac80211: add rate control support for encap offload (Íñigo Huguet) [2004141] - mac80211: call ieee80211_tx_h_rate_ctrl() when dequeue (Íñigo Huguet) [2004141] - mac80211: move A-MPDU session check from minstrel_ht to mac80211 (Íñigo Huguet) [2004141] - cfg80211: expose the rfkill device to the low level driver (Íñigo Huguet) [2004141] - wireless: add check of field VHT Extended NSS BW Capable for 160/80+80 MHz setting (Íñigo Huguet) [2004141] - mac80211_hwsim: add concurrent channels scanning support over virtio (Íñigo Huguet) [2004141] - mac80211: don't open-code LED manipulations (Íñigo Huguet) [2004141] - mac80211: consider per-CPU statistics if present (Íñigo Huguet) [2004141] - cfg80211: fix default HE tx bitrate mask in 2G band (Íñigo Huguet) [2004141] - mac80211: remove the repeated declaration (Íñigo Huguet) [2004141] - mac80211: refactor rc_no_data_or_no_ack_use_min function (Íñigo Huguet) [2004141] - mac80211: do not use low data rates for data frames with no ack flag (Íñigo Huguet) [2004141] - mac80211: add ieee80211_is_tx_data helper function (Íñigo Huguet) [2004141] - mac80211: simplify ieee80211_add_station() (Íñigo Huguet) [2004141] - mac80211: use sdata->skb_queue for TDLS (Íñigo Huguet) [2004141] - mac80211: refactor SKB queue processing a bit (Íñigo Huguet) [2004141] - mac80211: unify queueing SKB to iface (Íñigo Huguet) [2004141] - mac80211: minstrel_ht: ignore frame that was sent with noAck flag (Íñigo Huguet) [2004141] - cfg80211: clean up variable use in cfg80211_parse_colocated_ap() (Íñigo Huguet) [2004141] - cfg80211: remove CFG80211_MAX_NUM_DIFFERENT_CHANNELS (Íñigo Huguet) [2004141] - mac80211: Remove redundant assignment to ret (Íñigo Huguet) [2004141] - net: wireless: wext_compat.c: Remove redundant assignment to ps (Íñigo Huguet) [2004141] - wireless: wext-spy: Fix out-of-bounds warning (Íñigo Huguet) [2004141] - ath11k: Avoid memcpy() over-reading of he_cap (Íñigo Huguet) [2004141] - mt7601u: add USB device ID for some versions of XiaoDu WiFi Dongle. (Íñigo Huguet) [2004141] - mwifiex: Avoid memset() over-write of WEP key_material (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Fully initialize curvecount_val (Íñigo Huguet) [2004141] - rtw88: coex: remove unnecessary variable and label (Íñigo Huguet) [2004141] - rtw88: add quirks to disable pci capabilities (Íñigo Huguet) [2004141] - rtw88: refine unwanted h2c command (Íñigo Huguet) [2004141] - rtw88: dump FW crash via devcoredump (Íñigo Huguet) [2004141] - rtw88: notify fw when driver in scan-period to avoid potential problem (Íñigo Huguet) [2004141] - rtw88: add rtw_fw_feature_check api (Íñigo Huguet) [2004141] - rtw88: 8822c: update RF parameter tables to v62 (Íñigo Huguet) [2004141] - rtw88: Remove duplicate include of coex.h (Íñigo Huguet) [2004141] - rtw88: 8822c: fix lc calibration timing (Íñigo Huguet) [2004141] - rtw88: add path diversity (Íñigo Huguet) [2004141] - rtw88: add beacon filter support (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 64 for AX devices (Íñigo Huguet) [2004141] - iwlwifi: fw: dump TCM error table if present (Íñigo Huguet) [2004141] - iwlwifi: add 9560 killer device (Íñigo Huguet) [2004141] - iwlwifi: move error dump to fw utils (Íñigo Huguet) [2004141] - iwlwifi: support loading the reduced power table from UEFI (Íñigo Huguet) [2004141] - iwlwifi: move UEFI code to a separate file (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_wowlan_get_status_cmd (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_wowlan_kek_kck_material_cmd_v4 (Íñigo Huguet) [2004141] - iwlwifi: mvm: update iwl_wowlan_patterns_cmd (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_proto_offload_cmd_v4 (Íñigo Huguet) [2004141] - iwlwifi: fix NUM_IWL_UCODE_TLV_* definitions to avoid sparse errors (Íñigo Huguet) [2004141] - iwlwifi: pcie: free some DMA memory earlier (Íñigo Huguet) [2004141] - iwlwifi: mvm: fill phy_data.d1 for no-data RX (Íñigo Huguet) [2004141] - iwlwifi: pcie: fix context info freeing (Íñigo Huguet) [2004141] - iwlwifi: pcie: free IML DMA memory allocation (Íñigo Huguet) [2004141] - iwlwifi: mvm: support LONG_GROUP for WOWLAN_GET_STATUSES version (Íñigo Huguet) [2004141] - iwlwifi: support ver 6 of WOWLAN_CONFIGURATION and ver 10 of WOWLAN_GET_STATUSES (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't request mac80211 to disable/enable sta's queues (Íñigo Huguet) [2004141] - iwlwifi: mvm: Explicitly stop session protection before unbinding (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove TR/CR tail allocations (Íñigo Huguet) [2004141] - iwlwifi: mvm: Read acpi dsm to get unii4 enable/disable bitmap. (Íñigo Huguet) [2004141] - iwlwifi: pcie: fix some kernel-doc comments (Íñigo Huguet) [2004141] - iwlwifi: advertise broadcast TWT support (Íñigo Huguet) [2004141] - iwlwifi: mvm: support LMR feedback (Íñigo Huguet) [2004141] - iwlwifi: correct HE capabilities (Íñigo Huguet) [2004141] - iwlwifi: mvm: Call NMI instead of REPLY_ERROR (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix error print when session protection ends (Íñigo Huguet) [2004141] - iwlwifi: mvm: honour firmware SMPS requests (Íñigo Huguet) [2004141] - iwlwifi: mvm: apply RX diversity per PHY context (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't request SMPS in AP mode (Íñigo Huguet) [2004141] - iwlwifi: pcie: identify the RF module (Íñigo Huguet) [2004141] - iwlwifi: yoyo: support region TLV version 2 (Íñigo Huguet) [2004141] - iwlwifi: remove duplicate iwl_ax201_cfg_qu_hr declaration (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove CSR_HW_RF_ID_TYPE_CHIP_ID (Íñigo Huguet) [2004141] - iwlwifi: pcie: print interrupt number, not index (Íñigo Huguet) [2004141] - iwlwifi: pcie: Add support for AX231 radio module with Ma devices (Íñigo Huguet) [2004141] - iwlwifi: increase PNVM load timeout (Íñigo Huguet) [2004141] - iwlwifi: pcie: handle pcim_iomap_table() failures better (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't change band on bound PHY contexts (Íñigo Huguet) [2004141] - iwlwifi: remove unused REMOTE_WAKE_CONFIG_CMD definitions (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix indentation in some scan functions (Íñigo Huguet) [2004141] - iwlwifi: mvm: pass the clock type to iwl_mvm_get_sync_time() (Íñigo Huguet) [2004141] - iwlwifi: mvm: support BIOS enable/disable for 11ax in Russia (Íñigo Huguet) [2004141] - ath11k: Enable QCN9074 device (Íñigo Huguet) [2004141] - ath10k: demote chan info without scan request warning (Íñigo Huguet) [2004141] - rtl8xxxu: avoid parsing short RX packet (Íñigo Huguet) [2004141] - rtl8xxxu: Fix device info for RTL8192EU devices (Íñigo Huguet) [2004141] - mt76: mt7921: allow chip reset during device restart (Íñigo Huguet) [2004141] - mt76: mt7615: set macwork timeout according to runtime-pm (Íñigo Huguet) [2004141] - mt76: mt7663s: enable runtime-pm (Íñigo Huguet) [2004141] - mt76: mt7663s: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Íñigo Huguet) [2004141] - mt76: mt7663s: rely on pm reference counting (Íñigo Huguet) [2004141] - mt76: sdio: do not run mt76_txq_schedule directly (Íñigo Huguet) [2004141] - mt76: mt7921: enable HE BFee capability (Íñigo Huguet) [2004141] - mt76: disable TWT capabilities for the moment (Íñigo Huguet) [2004141] - mt76: fix iv and CCMP header insertion (Íñigo Huguet) [2004141] - mt76: mt7921: fix the coredump is being truncated (Íñigo Huguet) [2004141] - mt76: mt7921: fix kernel warning when reset on vif is not sta (Íñigo Huguet) [2004141] - mt76: mt7921: introduce dedicated control for deep_sleep (Íñigo Huguet) [2004141] - mt76: mt7921: limit txpower according to userlevel power (Íñigo Huguet) [2004141] - mt76: mt7921: improve code readability for mt7921_update_txs (Íñigo Huguet) [2004141] - mt76: mt7915: fix IEEE80211_HE_PHY_CAP7_MAX_NC for station mode (Íñigo Huguet) [2004141] - mt76: use SPDX header file comment style (Íñigo Huguet) [2004141] - mt76: add a space between comment char and SPDX tag (Íñigo Huguet) [2004141] - mt76: mt7915: improve MU stability (Íñigo Huguet) [2004141] - mt76: mt7921: add deep sleep control to runtime-pm knob (Íñigo Huguet) [2004141] - mt76: mt7921: enable deep sleep at runtime (Íñigo Huguet) [2004141] - mt76: mt7915: introduce mt7915_mcu_set_txbf() (Íñigo Huguet) [2004141] - mt76: make mt76_update_survey() per phy (Íñigo Huguet) [2004141] - mt76: move mt76_get_next_pkt_id in mt76.h (Íñigo Huguet) [2004141] - mt76: reduce rx buffer size to 2048 (Íñigo Huguet) [2004141] - mt76: connac: fix the maximum interval schedule scan can support (Íñigo Huguet) [2004141] - mt76: mt7915: fix rx fcs error count in testmode (Íñigo Huguet) [2004141] - mt76: testmode: move chip-specific stats dump before common stats (Íñigo Huguet) [2004141] - mt76: connac: add mt76_connac_mcu_get_nic_capability utility routine (Íñigo Huguet) [2004141] - mt76: connac: check band caps in mt76_connac_mcu_set_rate_txpower (Íñigo Huguet) [2004141] - mt76: mt7915: drop the use of repeater entries for station interfaces (Íñigo Huguet) [2004141] - mt76: mt7921: enable VHT BFee capability (Íñigo Huguet) [2004141] - mt76: mt7921: make mt7921_set_channel static (Íñigo Huguet) [2004141] - mt76: mt7921: wake the device before dumping power table (Íñigo Huguet) [2004141] - mt76: connac: add mt76_connac_power_save_sched in mt76_connac_pm_unref (Íñigo Huguet) [2004141] - mt76: connac: fix UC entry is being overwritten (Íñigo Huguet) [2004141] - mt76: mt7615: update radar parameters (Íñigo Huguet) [2004141] - mt76: mt7915: setup drr group for peers (Íñigo Huguet) [2004141] - mt76: mt7921: enable random mac address during sched_scan (Íñigo Huguet) [2004141] - mt76: mt7921: remove mt7921_get_wtbl_info routine (Íñigo Huguet) [2004141] - mt76: mt7915: fix MT_EE_CAL_GROUP_SIZE (Íñigo Huguet) [2004141] - mt76: mt7915: improve error recovery reliability (Íñigo Huguet) [2004141] - mt76: mt7921: enable hw offloading for wep keys (Íñigo Huguet) [2004141] - mt76: mt7915: read all eeprom fields from fw in efuse mode (Íñigo Huguet) [2004141] - mt76: mt7921: set MT76_RESET during mac reset (Íñigo Huguet) [2004141] - mt76: mt7921: introduce mac tx done handling (Íñigo Huguet) [2004141] - mt76: allow hw driver code to overwrite wiphy interface_modes (Íñigo Huguet) [2004141] - mt76: mt7921: update statistic in active mode only (Íñigo Huguet) [2004141] - mt76: mt7915: use mt7915_mcu_get_mib_info() to get survey data (Íñigo Huguet) [2004141] - mt76: mt7615: fix potential overflow on large shift (Íñigo Huguet) [2004141] - mt76: testmode: remove undefined behaviour in mt76_testmode_alloc_skb (Íñigo Huguet) [2004141] - mt76: testmode: remove unnecessary function calls in mt76_testmode_free_skb (Íñigo Huguet) [2004141] - mt76: testmode: fix memory leak in mt76_testmode_alloc_skb (Íñigo Huguet) [2004141] - mt76: mt7615: remove useless if condition in mt7615_add_interface() (Íñigo Huguet) [2004141] - mt76: mt7915: use mt7915_mcu_get_txpower_sku() to get per-rate txpower (Íñigo Huguet) [2004141] - mt76: mt7615: add .offset_tsf callback (Íñigo Huguet) [2004141] - mt76: mt7915: add .offset_tsf callback (Íñigo Huguet) [2004141] - mt76: mt7921: reset wfsys during hw probe (Íñigo Huguet) [2004141] - mt76: mt7921: do not schedule hw reset if the device is not running (Íñigo Huguet) [2004141] - mt76: mt7921: return proper error value in mt7921_mac_init (Íñigo Huguet) [2004141] - mt76: mt7921: enable runtime pm by default (Íñigo Huguet) [2004141] - mt76: mt7921: fix OMAC idx usage (Íñigo Huguet) [2004141] - mt76: mt7921: fix invalid register access in wake_work (Íñigo Huguet) [2004141] - mt76: mt7921: avoid unnecessary consecutive WiFi resets (Íñigo Huguet) [2004141] - mt76: connac: update BA win size in Rx direction (Íñigo Huguet) [2004141] - mt76: connac: add bss color support for sta mode (Íñigo Huguet) [2004141] - mt76: mt7615: add thermal sensor device support (Íñigo Huguet) [2004141] - mt76: mt7915: add thermal cooling device support (Íñigo Huguet) [2004141] - mt76: mt7915: add thermal sensor device support (Íñigo Huguet) [2004141] - mt76: mt7921: fix reset under the deep sleep is enabled (Íñigo Huguet) [2004141] - mt76: mt7921: add back connection monitor support (Íñigo Huguet) [2004141] - mt76: mt7921: consider the invalid value for to_rssi (Íñigo Huguet) [2004141] - mt76: connac: fix WoW with disconnetion and bitmap pattern (Íñigo Huguet) [2004141] - mt76: connac: fw_own rely on all packet memory all being free (Íñigo Huguet) [2004141] - mt76: mt7921: Don't alter Rx path classifier (Íñigo Huguet) [2004141] - mt76: mt7921: fix mt7921_wfsys_reset sequence (Íñigo Huguet) [2004141] - mt76: mt7663: enable hw rx header translation (Íñigo Huguet) [2004141] - mt76: mt7615: free irq if mt7615_mmio_probe fails (Íñigo Huguet) [2004141] - mt76: mt76x0: use dev_debug instead of dev_err for hw_rf_ctrl (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx csum offload (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx header traslation offload (Íñigo Huguet) [2004141] - mt76: connac: add missing configuration in mt76_connac_mcu_wtbl_hdr_trans_tlv (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx hw de-amsdu (Íñigo Huguet) [2004141] - mt76: mt7915: fix a signedness bug in mt7915_mcu_apply_tx_dpd() (Íñigo Huguet) [2004141] - mt76: mt7615: fix NULL pointer dereference in tx_prepare_skb() (Íñigo Huguet) [2004141] - mt76: fix possible NULL pointer dereference in mt76_tx (Íñigo Huguet) [2004141] - mt76: mt7915: add .set_bitrate_mask() callback (Íñigo Huguet) [2004141] - mt76: mt7915: cleanup mt7915_mcu_sta_rate_ctrl_tlv() (Íñigo Huguet) [2004141] - mt76: mt7915: fix tssi indication field of DBDC NICs (Íñigo Huguet) [2004141] - mt76: move mt76_rates in mt76 module (Íñigo Huguet) [2004141] - mac80211: reset profile_periodicity/ema_ap (Íñigo Huguet) [2004141] - mac80211: handle various extensible elements correctly (Íñigo Huguet) [2004141] - cfg80211: avoid double free of PMSR request (Íñigo Huguet) [2004141] - cfg80211: make certificate generation more robust (Íñigo Huguet) [2004141] - mac80211: minstrel_ht: fix sample time check (Íñigo Huguet) [2004141] - mt76: mt7915: add support for tx status reporting (Íñigo Huguet) [2004141] - mt76: mt7915: rework tx rate reporting (Íñigo Huguet) [2004141] - mt76: dma: use ieee80211_tx_status_ext to free packets when tx fails (Íñigo Huguet) [2004141] - mt76: improve tx status codepath (Íñigo Huguet) [2004141] - mt76: intialize tx queue entry wcid to 0xffff by default (Íñigo Huguet) [2004141] - mt76: mt7603: avoid use of ieee80211_tx_info_clear_status (Íñigo Huguet) [2004141] - mt76: mt7615: avoid use of ieee80211_tx_info_clear_status (Íñigo Huguet) [2004141] - mt76: mt7615: fix fixed-rate tx status reporting (Íñigo Huguet) [2004141] - mt76: mt7915: move mt7915_queue_rx_skb to mac.c (Íñigo Huguet) [2004141] - mt76: mt7915: disable ASPM (Íñigo Huguet) [2004141] - mt76: mt7915: add MSI support (Íñigo Huguet) [2004141] - ath11k: send beacon template after vdev_start/restart during csa (Íñigo Huguet) [2004141] - ath10k: Use devm_platform_get_and_ioremap_resource() (Íñigo Huguet) [2004141] - ath10k: remove the repeated declaration (Íñigo Huguet) [2004141] - ath10k: Fix an error code in ath10k_add_interface() (Íñigo Huguet) [2004141] - ath11k: Fix an error handling path in ath11k_core_fetch_board_data_api_n() (Íñigo Huguet) [2004141] - ath: Fix wrong function name in comments (Íñigo Huguet) [2004141] - rtlwifi: Fix spelling of 'download' (Íñigo Huguet) [2004141] - rtlwifi: Remove redundant assignments to ul_enc_algo (Íñigo Huguet) [2004141] - rtlwifi: rtl8723ae: remove redundant initialization of variable rtstatus (Íñigo Huguet) [2004141] - rtlwifi: btcoex: 21a 2ant: Delete several duplicate condition branch codes (Íñigo Huguet) [2004141] - rtlwifi: 8821a: btcoexist: add comments to explain why if-else branches are identical (Íñigo Huguet) [2004141] - rt2x00: do not set timestamp for injected frames (Íñigo Huguet) [2004141] - rndis_wlan: simplify is_associated() (Íñigo Huguet) [2004141] - rt2x00: remove leading spaces before tabs (Íñigo Huguet) [2004141] - rtlwifi: Fix wrong function name in comments (Íñigo Huguet) [2004141] - brcmsmac: Remove the repeated declaration (Íñigo Huguet) [2004141] - brcmsmac: mac80211_if: Fix a resource leak in an error handling path (Íñigo Huguet) [2004141] - brcmsmac: Drop unnecessary NULL check after container_of (Íñigo Huguet) [2004141] - brcmsmac: improve readability on addresses copy (Íñigo Huguet) [2004141] - brcmfmac: Add clm_blob firmware files to modinfo (Íñigo Huguet) [2004141] - brcmfmac: Delete second brcm folder hierarchy (Íñigo Huguet) [2004141] - brcmfmac: Fix a double-free in brcmf_sdio_bus_reset (Íñigo Huguet) [2004141] - brcmfmac: Demote non-compliant kernel-doc headers (Íñigo Huguet) [2004141] - brcmfmac: correctly report average RSSI in station info (Íñigo Huguet) [2004141] - brcmfmac: fix setting of station info chains bitmask (Íñigo Huguet) [2004141] - brcmfmac: use ISO3166 country code and 0 rev as fallback (Íñigo Huguet) [2004141] - ath10k: remove unused more_frags variable (Íñigo Huguet) [2004141] - ath10k: add missing error return code in ath10k_pci_probe() (Íñigo Huguet) [2004141] - ath10k: go to path err_unsupported when chip id is not supported (Íñigo Huguet) [2004141] - ath11k: don't call ath11k_pci_set_l1ss for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add support for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add support to get peer id for WCN6855 (Íñigo Huguet) [2004141] - ath11k: setup WBM_IDLE_LINK ring once again (Íñigo Huguet) [2004141] - ath11k: setup REO for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add dp support for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add hw reg support for WCN6855 (Íñigo Huguet) [2004141] - ath9k: Fix kernel NULL pointer dereference during ath_reset_internal() (Íñigo Huguet) [2004141] - mwifiex: bring down link before deleting interface (Íñigo Huguet) [2004141] - mt76: mt7615: Use devm_platform_get_and_ioremap_resource() (Íñigo Huguet) [2004141] - wwan: core: add WWAN common private data for netdev (Íñigo Huguet) [2004141] - wwan: core: support default netdev creation (Íñigo Huguet) [2004141] - wwan: core: no more hold netdev ops owning module (Íñigo Huguet) [2004141] - net: mhi_net: Update the transmit handler prototype (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: Fix hibernation (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Fix possible use-after-free in mhi_pci_remove() (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: T99W175: update channel name from AT to DUN (Íñigo Huguet) [2004141] - mac80211: drop multicast fragments (Íñigo Huguet) [2004141] - mac80211: move interface shutdown out of wiphy lock (Íñigo Huguet) [2004141] - cfg80211: shut down interfaces on failed resume (Íñigo Huguet) [2004141] - cfg80211: fix phy80211 symlink creation (Íñigo Huguet) [2004141] - mac80211: fix 'reset' debugfs locking (Íñigo Huguet) [2004141] - mac80211: fix deadlock in AP/VLAN handling (Íñigo Huguet) [2004141] - mac80211: Fix NULL ptr deref for injected rate info (Íñigo Huguet) [2004141] - mac80211: fix skb length check in ieee80211_scan_rx() (Íñigo Huguet) [2004141] - mac80211: correct ieee80211_iterate_active_interfaces_mtx() locking comments (Íñigo Huguet) [2004141] - cfg80211: call cfg80211_leave_ocb when switching away from OCB (Íñigo Huguet) [2004141] - mac80211_hwsim: drop pending frames on stop (Íñigo Huguet) [2004141] - mac80211: remove warning in ieee80211_get_sband() (Íñigo Huguet) [2004141] - mt76: mt7921: remove leftover 80+80 HE capability (Íñigo Huguet) [2004141] - mt76: mt7615: do not set MT76_STATE_PM at bootstrap (Íñigo Huguet) [2004141] - ath9k: ar9003_mac: read STBC indicator from rx descriptor (Íñigo Huguet) [2004141] - ath10k/ath11k: fix spelling mistake "requed" -> "requeued" (Íñigo Huguet) [2004141] - mwifiex: re-fix for unaligned accesses (Íñigo Huguet) [2004141] - mt76: mt76x0e: fix device hang during suspend/resume (Íñigo Huguet) [2004141] - mt76: mt7921: fix max aggregation subframes setting (Íñigo Huguet) [2004141] - mt76: connac: fix HT A-MPDU setting field in STA_REC_PHY (Íñigo Huguet) [2004141] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [2004141] - mt76: mt7921: fix possible AOOB issue in mt7921_mcu_tx_rate_report (Íñigo Huguet) [2004141] - brcmfmac: properly check for bus register errors (Íñigo Huguet) [2004141] - Revert "brcmfmac: add a check for the status of usb_register" (Íñigo Huguet) [2004141] - net: rtlwifi: properly check for alloc_workqueue() failure (Íñigo Huguet) [2004141] - Revert "rtlwifi: fix a potential NULL pointer dereference" (Íñigo Huguet) [2004141] - wl3501_cs: Fix out-of-bounds warnings in wl3501_mgmt_join (Íñigo Huguet) [2004141] - wl3501_cs: Fix out-of-bounds warnings in wl3501_send_pkt (Íñigo Huguet) [2004141] - iwlwifi: mvm: tt: Replace thermal_notify_framework (Íñigo Huguet) [2004141] - mt76: debugfs: introduce napi_threaded node (Íñigo Huguet) [2004141] - wl3501: fix typo of 'Networks' in comment (Íñigo Huguet) [2004141] - mt76: use threaded NAPI (Íñigo Huguet) [2004141] - net: mhi_net: make mhi_wwan_ops static (Íñigo Huguet) [2004141] - net: mhi_net: Register wwan_ops for link creation (Íñigo Huguet) [2004141] - net: mhi: remove pointless conditional before kfree_skb() (Íñigo Huguet) [2004141] - net: mhi: Allow decoupled MTU/MRU (Íñigo Huguet) [2004141] - net: mhi: Add support for non-linear MBIM skb processing (Íñigo Huguet) [2004141] - bus: mhi: fix typo in comments for struct mhi_channel_config (Íñigo Huguet) [2004141] - bus: mhi: core: Fix shadow declarations (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Constify mhi_controller_config struct definitions (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Introduce Foxconn T99W175 support (Íñigo Huguet) [2004141] - bus: mhi: core: Sanity check values from remote device before use (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add FIREHOSE channels (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Implement PCI shutdown callback (Íñigo Huguet) [2004141] - bus: mhi: Improve documentation on channel transfer setup APIs (Íñigo Huguet) [2004141] - bus: mhi: core: Remove __ prefix for MHI channel unprepare function (Íñigo Huguet) [2004141] - bus: mhi: core: Check channel execution environment before issuing reset (Íñigo Huguet) [2004141] - bus: mhi: core: Clear configuration from channel context during reset (Íñigo Huguet) [2004141] - bus: mhi: core: Hold device wake for channel update commands (Íñigo Huguet) [2004141] - bus: mhi: core: Update debug messages to use client device (Íñigo Huguet) [2004141] - bus: mhi: core: Improvements to the channel handling state machine (Íñigo Huguet) [2004141] - bus: mhi: core: Clear context for stopped channels from remove() (Íñigo Huguet) [2004141] - bus: mhi: core: Allow sending the STOP channel command (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add SDX65 based modem support (Íñigo Huguet) [2004141] - bus: mhi: core: Remove pre_init flag used for power purposes (Íñigo Huguet) [2004141] - bus: mhi: pm: reduce PM state change verbosity (Íñigo Huguet) [2004141] - bus: mhi: core: Fix MHI runtime_pm behavior (Íñigo Huguet) [2004141] - bus: mhi: core: Move to polling method to wait for MHI ready (Íñigo Huguet) [2004141] - bus: mhi: core: Introduce internal register poll helper function (Íñigo Huguet) [2004141] - bus: mhi: core: Improve state strings for debug messages (Íñigo Huguet) [2004141] - bus: mhi: core: Wait for MHI READY state in most scenarios (Íñigo Huguet) [2004141] - bus: mhi: core: Identify Flash Programmer as a mission mode use case (Íñigo Huguet) [2004141] - bus: mhi: core: Add support for Flash Programmer execution environment (Íñigo Huguet) [2004141] - bus: mhi: core: Handle EDL mode entry appropriately (Íñigo Huguet) [2004141] - bus: mhi: core: Wait for ready after an EDL firmware download (Íñigo Huguet) [2004141] - bus: mhi: core: Rely on accurate method to determine EDL mode (Íñigo Huguet) [2004141] - bus: mhi: core: Check state before processing power_down (Íñigo Huguet) [2004141] - bus: mhi: core: Return EAGAIN if MHI ring is full (Íñigo Huguet) [2004141] - net: export dev_set_threaded symbol (Íñigo Huguet) [2004141] - bus: mhi: core: remove redundant initialization of variables state and ee (Íñigo Huguet) [2004141] - bus: mhi: Make firmware image optional for controller (Íñigo Huguet) [2004141] - bus: mhi: core: Add missing checks for MMIO register entries (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add support for runtime PM (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Use generic PCI power management (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: No-Op for device_wake operations (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add SDX24 based modem support (Íñigo Huguet) [2004141] - bus: mhi: Early MHI resume failure in non M3 state (Íñigo Huguet) [2004141] - bus: mhi: core: Update debug prints to include local device state (Íñigo Huguet) [2004141] - bus: mhi: core: Process execution environment changes serially (Íñigo Huguet) [2004141] - bus: mhi: core: Download AMSS image from appropriate function (Íñigo Huguet) [2004141] - bus: mhi: core: Destroy SBL devices when moving to mission mode (Íñigo Huguet) [2004141] - bus: mhi: core: Rename debugfs directory name (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Introduce quectel EM1XXGR-L support (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Parametrable element count for events (Íñigo Huguet) [2004141] - ath10k: Detect conf_mutex held ath10k_drain_tx() calls (Íñigo Huguet) [2004141] - net: mhi: Add mbim proto (Íñigo Huguet) [2004141] - net: mhi: Add rx_length_errors stat (Íñigo Huguet) [2004141] - net: mhi: Create mhi.h (Íñigo Huguet) [2004141] - net: mhi: Add dedicated folder (Íñigo Huguet) [2004141] - net: mhi: Add protocol support (Íñigo Huguet) [2004141] - net: mhi-net: Add re-aggregation of fragmented packets (Íñigo Huguet) [2004141] - net: mhi: Get rid of local rx queue count (Íñigo Huguet) [2004141] - net: mhi: Get RX queue size from MHI core (Íñigo Huguet) [2004141] - net: mhi: Set wwan device type (Íñigo Huguet) [2004141] - net: mhi: Add raw IP mode support (Íñigo Huguet) [2004141] - net: mhi: Fix unexpected queue wake (Íñigo Huguet) [2004141] - net: Add mhi-net driver (Íñigo Huguet) [2004141] - ipv4: make exception cache less predictible (Antoine Tenart) [2015111] {CVE-2021-20322} - ipv4: use siphash instead of Jenkins in fnhe_hashfun() (Antoine Tenart) [2015111] {CVE-2021-20322} - iommu/dma: Account for min_align_mask w/swiotlb (Jerry Snitselaar) [2018601] - swiotlb: Support aligned swiotlb buffers (Jerry Snitselaar) [2018601] - iommu/dma: Check CONFIG_SWIOTLB more broadly (Jerry Snitselaar) [2018601] - iommu/dma: Fold _swiotlb helpers into callers (Jerry Snitselaar) [2018601] - iommu/dma: Skip extra sync during unmap w/swiotlb (Jerry Snitselaar) [2018601] - iommu/dma: Fix arch_sync_dma for map (Jerry Snitselaar) [2018601] - iommu/dma: Fix sync_sg with swiotlb (Jerry Snitselaar) [2018601] - redhat/configs: Add CONFIG_DMA_RESTRICTED_POOL (Jerry Snitselaar) [2018601] - swiotlb: use depends on for DMA_RESTRICTED_POOL (Jerry Snitselaar) [2018601] - powerpc/svm: Don't issue ultracalls if !mem_encrypt_active() (Jerry Snitselaar) [2018601] - s390/pv: fix the forcing of the swiotlb (Jerry Snitselaar) [2018601] - swiotlb: Free tbl memory in swiotlb_exit() (Jerry Snitselaar) [2018601] - swiotlb: Emit diagnostic in swiotlb_exit() (Jerry Snitselaar) [2018601] - swiotlb: Convert io_default_tlb_mem to static allocation (Jerry Snitselaar) [2018601] - swiotlb: fix implicit debugfs declarations (Jerry Snitselaar) [2018601] - swiotlb: Add restricted DMA pool initialization (Jerry Snitselaar) [2018601] - swiotlb: Add restricted DMA alloc/free support (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb_tbl_unmap_single (Jerry Snitselaar) [2018601] - swiotlb: Move alloc_size to swiotlb_find_slots (Jerry Snitselaar) [2018601] - swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing (Jerry Snitselaar) [2018601] - swiotlb: Update is_swiotlb_active to add a struct device argument (Jerry Snitselaar) [2018601] - swiotlb: Update is_swiotlb_buffer to add a struct device argument (Jerry Snitselaar) [2018601] - swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb_create_debugfs (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb init functions (Jerry Snitselaar) [2018601] - of: Drop superfluous ULL suffix for ~0 (Jerry Snitselaar) [2018601] - dma-mapping: fix 32-bit overflow with CONFIG_ARM_LPAE=n (Jerry Snitselaar) [2018601] - of/device: Update dma_range_map only when dev has valid dma-ranges (Jerry Snitselaar) [2018601] - drivers core: Fix oops when driver probe fails (Jerry Snitselaar) [2018601] - drivers core: Free dma_range_map when driver probe failed (Jerry Snitselaar) [2018601] - driver core: Postpone DMA tear-down until after devres release for probe failure (Jerry Snitselaar) [2018601] - powerpc/pseries/iommu: Fix window size for direct mapping with pmem (Jerry Snitselaar) [2018601] - dma-mapping: add a dma_init_global_coherent helper (Jerry Snitselaar) [2018601] - dma-mapping: simplify dma_init_coherent_memory (Jerry Snitselaar) [2018601] - dma-debug: fix debugfs initialization order (Jerry Snitselaar) [2018601] - dma-debug: teach add_dma_entry() about DMA_ATTR_SKIP_CPU_SYNC (Jerry Snitselaar) [2018601] - dma-debug: fix sg checks in debug_dma_map_sg() (Jerry Snitselaar) [2018601] - swiotlb-xen: ensure to issue well-formed XENMEM_exchange requests (Jerry Snitselaar) [2018601] - dma-debug: prevent an error message from causing runtime problems (Jerry Snitselaar) [2018601] - swiotlb-xen: drop DEFAULT_NSLABS (Jerry Snitselaar) [2018601] - swiotlb-xen: arrange to have buffer info logged (Jerry Snitselaar) [2018601] - swiotlb-xen: drop leftover __ref (Jerry Snitselaar) [2018601] - swiotlb-xen: limit init retries (Jerry Snitselaar) [2018601] - swiotlb-xen: suppress certain init retries (Jerry Snitselaar) [2018601] - swiotlb-xen: maintain slab count properly (Jerry Snitselaar) [2018601] - swiotlb-xen: fix late init retry (Jerry Snitselaar) [2018601] - swiotlb-xen: avoid double free (Jerry Snitselaar) [2018601] - dma-mapping: handle vmalloc addresses in dma_common_{mmap,get_sgtable} (Jerry Snitselaar) [2018601] - dma-debug: report -EEXIST errors in add_dma_entry (Jerry Snitselaar) [2018601] - dma-mapping: remove a trailing space (Jerry Snitselaar) [2018601] - dma-mapping: add unlikely hint to error path in dma_mapping_error (Jerry Snitselaar) [2018601] - dma-mapping: remove a pointless empty line in dma_alloc_coherent (Jerry Snitselaar) [2018601] - swiotlb: Make SWIOTLB_NO_FORCE perform no allocation (Jerry Snitselaar) [2018601] - swiotlb: remove swiotlb_nr_tbl (Jerry Snitselaar) [2018601] - xen/swiotlb: check if the swiotlb has already been initialized (Jerry Snitselaar) [2018601] - swiotlb: add overflow checks to swiotlb_bounce (Jerry Snitselaar) [2002023] - swiotlb: don't override user specified size in swiotlb_adjust_size (Jerry Snitselaar) [2002023] - swiotlb: dynamically allocate io_tlb_default_mem (Jerry Snitselaar) [2002023] - swiotlb: move global variables into a new io_tlb_mem structure (Jerry Snitselaar) [2002023] - xen-swiotlb: remove the unused size argument from xen_swiotlb_fixup (Jerry Snitselaar) [2018601] - xen-swiotlb: split xen_swiotlb_init (Jerry Snitselaar) [2018601] - swiotlb: lift the double initialization protection from xen-swiotlb (Jerry Snitselaar) [2002023] - xen-swiotlb: remove xen_io_tlb_start and xen_io_tlb_nslabs (Jerry Snitselaar) [2018601] - xen-swiotlb: remove xen_set_nslabs (Jerry Snitselaar) [2018601] - xen-swiotlb: use io_tlb_end in xen_swiotlb_dma_supported (Jerry Snitselaar) [2018601] - xen-swiotlb: use is_swiotlb_buffer in is_xen_swiotlb_buffer (Jerry Snitselaar) [2018601] - swiotlb: split swiotlb_tbl_sync_single (Jerry Snitselaar) [2002023] - swiotlb: manipulate orig_addr when tlb_addr has offset (Jerry Snitselaar) [2002023] - swiotlb: move orig addr and size validation into swiotlb_bounce (Jerry Snitselaar) [2002023] - swiotlb: remove the alloc_size parameter to swiotlb_tbl_unmap_single (Jerry Snitselaar) [2002023] - swiotlb: Fix the type of index (Jerry Snitselaar) [2018601] - swiotlb: Validate bounce size in the sync/unmap path (Jerry Snitselaar) [2002023] - powerpc/svm: stop using io_tlb_start (Jerry Snitselaar) [2002023] - nvme-pci: set min_align_mask (Jerry Snitselaar) [2002023] - swiotlb: respect min_align_mask (Jerry Snitselaar) [2002023] - swiotlb: don't modify orig_addr in swiotlb_tbl_sync_single (Jerry Snitselaar) [2002023] - swiotlb: refactor swiotlb_tbl_map_single (Jerry Snitselaar) [2002023] - swiotlb: clean up swiotlb_tbl_unmap_single (Jerry Snitselaar) [2002023] - swiotlb: factor out a nr_slots helper (Jerry Snitselaar) [2002023] - swiotlb: factor out an io_tlb_offset helper (Jerry Snitselaar) [2002023] - swiotlb: add a IO_TLB_SIZE define (Jerry Snitselaar) [2002023] - driver core: add a min_align_mask field to struct device_dma_parameters (Jerry Snitselaar) [2002023] - sdhci: stop poking into swiotlb internals (Jerry Snitselaar) [2018601] - driver core: lift dma_default_coherent into common code (Jerry Snitselaar) [2018601] - dma-pool: no need to check return value of debugfs_create functions (Jerry Snitselaar) [2018601] - powerpc/dma: Fallback to dma_ops when persistent memory present (Jerry Snitselaar) [2018601] - dma-mapping: Allow mixing bypass and mapped DMA operation (Jerry Snitselaar) [2018601] - dma-mapping: remove the dma_direct_set_offset export (Jerry Snitselaar) [2018601] - dma-mapping: move more functions to dma-map-ops.h (Jerry Snitselaar) [2018601] - dma-mapping: merge into (Jerry Snitselaar) [2018601] - dma-mapping: move large parts of to kernel/dma (Jerry Snitselaar) [2018601] - dma-mapping: add (back) arch_dma_mark_clean for ia64 (Jerry Snitselaar) [2018601] - dma-mapping: move dma-debug.h to kernel/dma/ (Jerry Snitselaar) [2018601] - dma-mapping: split (Jerry Snitselaar) [2018601] - dma-mapping: introduce DMA range map, supplanting dma_pfn_offset (Jerry Snitselaar) [2018601] - of: Make of_dma_get_range() private (Jerry Snitselaar) [2018601] - swiotlb: fix comment on swiotlb_bounce() (Jerry Snitselaar) [2018601] - xen/arm: introduce phys/dma translations in xen_dma_sync_for_* (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_dma_sync_for_device (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_dma_sync_for_cpu (Jerry Snitselaar) [2018601] - swiotlb-xen: introduce phys_to_dma/dma_to_phys translations (Jerry Snitselaar) [2018601] - swiotlb-xen: remove XEN_PFN_PHYS (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to is_xen_swiotlb_buffer (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_bus_to_phys (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_phys_to_bus (Jerry Snitselaar) [2018601] - swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses (Jerry Snitselaar) [2018601] - swiotlb-xen: Convert to use macro (Jerry Snitselaar) [2018601] - swiotlb-xen: merge xen_unmap_single into xen_swiotlb_unmap_page (Jerry Snitselaar) [2018601] - swiotlb-xen: remove xen_swiotlb_dma_mmap and xen_swiotlb_dma_get_sgtable (Jerry Snitselaar) [2018601] - xen/swiotlb: remember having called xen_create_contiguous_region() (Jerry Snitselaar) [2018601] - xen/swiotlb: simplify range_straddles_page_boundary() (Jerry Snitselaar) [2018601] - xen/swiotlb: fix condition for calling xen_destroy_contiguous_region() (Jerry Snitselaar) [2018601] - xen/swiotlb: don't initialize swiotlb twice on arm64 (Jerry Snitselaar) [2018601] - xen-swiotlb: use actually allocated size on check physical continuous (Jerry Snitselaar) [2018601] - igb: fix deadlock caused by taking RTNL in RPM resume path (Corinna Vinschen) [2039882] - igb: Fix removal of unicast MAC filters of VFs (Corinna Vinschen) [2039882] - net: ena: Fix error handling when calculating max IO queues number (Petr Oros) [2038158] - net: ena: Fix wrong rx request id by resetting device (Petr Oros) [2038158] - net: ena: Fix undefined state when tx request id is out of bounds (Petr Oros) [2038158] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Petr Oros) [2038158] - ena: Remove rcu_read_lock() around XDP program invocation (Petr Oros) [2038158] - net: ena: make symbol 'ena_alloc_map_page' static (Petr Oros) [2038158] - net: ena: fix DMA mapping function issues in XDP (Petr Oros) [2038158] - net: ena: re-organize code to improve readability (Petr Oros) [2038158] - net: ena: Use dev_alloc() in RX buffer allocation (Petr Oros) [2038158] - net: ena: aggregate doorbell common operations into a function (Petr Oros) [2038158] - net: ena: fix RST format in ENA documentation file (Petr Oros) [2038158] - net: ena: Remove module param and change message severity (Petr Oros) [2038158] - net: ena: add jiffies of last napi call to stats (Petr Oros) [2038158] - net: ena: use build_skb() in RX path (Petr Oros) [2038158] - net: ena: Improve error logging in driver (Petr Oros) [2038158] - net: ena: Remove unused code (Petr Oros) [2038158] - net: ena: optimize data access in fast-path code (Petr Oros) [2038158] - kasan, slub: reset tag when printing address (Nico Pache) [1954335] - kasan: fix Kconfig check of CC_HAS_WORKING_NOSANITIZE_ADDRESS (Nico Pache) [1954335] - Documentation: kunit: add tips for using current->kunit_test (Nico Pache) [1954335] - kunit: fix -Wunused-function warning for __kunit_fail_current_test (Nico Pache) [1954335] - kunit: support failure from dynamic analysis tools (Nico Pache) [1954335] - Add KASAN KUNIT Tests to Redhat kernel-modules-internal (Nico Pache) [1954335] - kasan, mm: fix resetting page_alloc tags for HW_TAGS (Nico Pache) [1954335] - kasan, mm: fix conflicts with init_on_alloc/free (Nico Pache) [1954335] - powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user() (Nico Pache) [1954335] - kasan: remove redundant config option (Nico Pache) [1954335] - kasan: fix hwasan build for gcc (Nico Pache) [1954335] - lib/test_kasan_module.c: suppress unused var warning (Nico Pache) [1954335] - kasan: fix conflict with page poisoning (Nico Pache) [1954335] - kasan: fix per-page tags for non-page_alloc pages (Nico Pache) [1954335] - kasan: fix KASAN_STACK dependency for HW_TAGS (Nico Pache) [1954335] - kasan: clarify that only first bug is reported in HW_TAGS (Nico Pache) [1954335] - kasan: inline HW_TAGS helper functions (Nico Pache) [1954335] - kasan: ensure poisoning size alignment (Nico Pache) [1954335] - kasan, mm: optimize krealloc poisoning (Nico Pache) [1954335] - kasan, mm: fail krealloc on freed objects (Nico Pache) [1954335] - kasan: rework krealloc tests (Nico Pache) [1954335] - kasan: unify large kfree checks (Nico Pache) [1954335] - kasan: clean up setting free info in kasan_slab_free (Nico Pache) [1954335] - kasan: optimize large kmalloc poisoning (Nico Pache) [1954335] - kasan, mm: optimize kmalloc poisoning (Nico Pache) [1954335] - kasan, mm: don't save alloc stacks twice (Nico Pache) [1954335] - kasan: don't run tests when KASAN is not enabled (Nico Pache) [1954335] - kasan: add a test for kmem_cache_alloc/free_bulk (Nico Pache) [1954335] - kasan: add proper page allocator tests (Nico Pache) [1954335] - kasan: fix bug detection via ksize for HW_TAGS mode (Nico Pache) [1954335] - kasan: move _RET_IP_ to inline wrappers (Nico Pache) [1954335] - kasan: fix memory corruption in kasan_bitops_tags test (Nico Pache) [1954335] - kasan: rename CONFIG_TEST_KASAN_MODULE (Nico Pache) [1954335] - kasan: add match-all tag tests (Nico Pache) [1954335] - kasan: add macros to simplify checking test constraints (Nico Pache) [1954335] - kasan: clean up comments in tests (Nico Pache) [1954335] - kasan: clarify HW_TAGS impact on TBI (Nico Pache) [1954335] - kasan: prefix global functions with kasan_ (Nico Pache) [1954335] - kasan: fix stack traces dependency for HW_TAGS (Nico Pache) [1954335] - kasan: make addr_has_metadata() return true for valid addresses (Nico Pache) [1954335] - kasan: add explicit preconditions to kasan_report() (Nico Pache) [1954335] - kasan: fix HW_TAGS boot parameters (Nico Pache) [1954335] - kasan: fix null pointer dereference in kasan_record_aux_stack (Nico Pache) [1954335] - kasan: update documentation (Nico Pache) [1954335] - kasan, mm: allow cache merging with no metadata (Nico Pache) [1954335] - kasan: sanitize objects when metadata doesn't fit (Nico Pache) [1954335] - kasan: clarify comment in __kasan_kfree_large (Nico Pache) [1954335] - kasan: simplify assign_tag and set_tag calls (Nico Pache) [1954335] - kasan: don't round_up too much (Nico Pache) [1954335] - kasan, mm: rename kasan_poison_kfree (Nico Pache) [1954335] - kasan, mm: check kasan_enabled in annotations (Nico Pache) [1954335] - kasan: add and integrate kasan boot parameters (Nico Pache) [1954335] - kasan: inline (un)poison_range and check_invalid_free (Nico Pache) [1954335] - kasan: open-code kasan_unpoison_slab (Nico Pache) [1954335] - kasan: inline random_tag for HW_TAGS (Nico Pache) [1954335] - kasan: inline kasan_reset_tag for tag-based modes (Nico Pache) [1954335] - kasan: remove __kasan_unpoison_stack (Nico Pache) [1954335] - kasan: allow VMAP_STACK for HW_TAGS mode (Nico Pache) [1954335] - kasan, arm64: unpoison stack only with CONFIG_KASAN_STACK (Nico Pache) [1954335] - kasan: introduce set_alloc_info (Nico Pache) [1954335] - kasan: rename get_alloc/free_info (Nico Pache) [1954335] - kasan: simplify quarantine_put call site (Nico Pache) [1954335] - kasan: add documentation for hardware tag-based mode (Nico Pache) [1954335] - kasan, mm: reset tags when accessing metadata (Nico Pache) [1954335] - kasan, arm64: print report from tag fault handler (Nico Pache) [1954335] - kasan, arm64: implement HW_TAGS runtime (Nico Pache) [1954335] - kasan, arm64: expand CONFIG_KASAN checks (Nico Pache) [1954335] - string.h: fix incompatibility between FORTIFY_SOURCE and KASAN (Nico Pache) [1954335] - kasan, x86, s390: update undef CONFIG_KASAN (Nico Pache) [1954335] - kasan: define KASAN_GRANULE_SIZE for HW_TAGS (Nico Pache) [1954335] - arm64: kasan: add arch layer for memory tagging helpers (Nico Pache) [1954335] - kasan, mm: untag page address in free_reserved_area (Nico Pache) [1954335] - mm: Allow non-direct-map arguments to free_reserved_area() (Nico Pache) [1954335] - kasan: introduce CONFIG_KASAN_HW_TAGS (Nico Pache) [1954335] - kasan: separate metadata_fetch_row for each mode (Nico Pache) [1954335] - kasan: rename SHADOW layout macros to META (Nico Pache) [1954335] - kasan: rename print_shadow_for_address to print_memory_metadata (Nico Pache) [1954335] - kasan: rename addr_has_shadow to addr_has_metadata (Nico Pache) [1954335] - kasan, arm64: rename kasan_init_tags and mark as __init (Nico Pache) [1954335] - kasan, arm64: move initialization message (Nico Pache) [1954335] - kasan, arm64: only use kasan_depth for software modes (Nico Pache) [1954335] - kasan, arm64: only init shadow for software modes (Nico Pache) [1954335] - kasan: decode stack frame only with KASAN_STACK_ENABLE (Nico Pache) [1954335] - kasan: hide invalid free check implementation (Nico Pache) [1954335] - kasan: don't duplicate config dependencies (Nico Pache) [1954335] - kasan: rename report and tags files (Nico Pache) [1954335] - kasan: define KASAN_MEMORY_PER_SHADOW_PAGE (Nico Pache) [1954335] - kasan: split out shadow.c from common.c (Nico Pache) [1954335] - kasan: only build init.c for software modes (Nico Pache) [1954335] - kasan: rename KASAN_SHADOW_* to KASAN_GRANULE_* (Nico Pache) [1954335] - kasan: rename (un)poison_shadow to (un)poison_range (Nico Pache) [1954335] - fork: support VMAP_STACK with KASAN_VMALLOC (Nico Pache) [1954335] - kasan: shadow declarations only for software modes (Nico Pache) [1954335] - kasan: group vmalloc code (Nico Pache) [1954335] - kasan: KASAN_VMALLOC depends on KASAN_GENERIC (Nico Pache) [1954335] - kasan: drop unnecessary GPL text from comment headers (Nico Pache) [1954335] - kasan: update documentation for generic kasan (Nico Pache) [1954335] - kasan: print workqueue stack (Nico Pache) [1954335] - kasan: fix object remaining in offline per-cpu quarantine (Nico Pache) [1954335] - kasan: adopt KUNIT tests to SW_TAGS mode (Nico Pache) [1954335] - docs: kasan.rst: add two missing blank lines (Nico Pache) [1954335] - mm: kasan: do not panic if both panic_on_warn and kasan_multishot set (Nico Pache) [1954335] - KASAN: Testing Documentation (Nico Pache) [1954335] - KASAN: port KASAN Tests to KUnit (Nico Pache) [1954335] - KUnit: KASAN Integration (Nico Pache) [1954335] - kasan/kunit: add KUnit Struct to Current Task (Nico Pache) [1954335] - kasan: remove mentions of unsupported Clang versions (Nico Pache) [1954335] - kbuild: move CFLAGS_{KASAN,UBSAN,KCSAN} exports to relevant Makefiles (Nico Pache) [1954335] - s390/kasan: make shadow memory noexec (Nico Pache) [1954335] - kasan: adjust kasan_stack_oob for tag-based mode (Nico Pache) [1954335] - kasan: allow enabling stack tagging for tag-based mode (Nico Pache) [1954335] - kasan: don't tag stacks allocated with pagealloc (Nico Pache) [1954335] - lib/test_kasan.c: fix KASAN unit tests for tag-based KASAN (Nico Pache) [1954335] - kasan: remove kasan_unpoison_stack_above_sp_to() (Nico Pache) [1954335] - kasan: add tests for call_rcu stack recording (Nico Pache) [1954335] - kprobes: Remove show_registers() function prototype (Nico Pache) [1954335] - kasan: stop tests being eliminated as dead code with FORTIFY_SOURCE (Nico Pache) [1954335] - kasan: move kasan_report() into report.c (Nico Pache) [1954335] - kasan: stackdepot: move filter_irq_stacks() to stackdepot.c (Nico Pache) [1954335] - lib/stackdepot.c: check depot_index before accessing the stack slab (Nico Pache) [1954335] - lib/stackdepot: Remove obsolete functions (Nico Pache) [1954335] - kasan: add test for invalid size in memmove (Nico Pache) [1954335] - mm/memory-failure.c: use page_shift() in add_to_kill() (Nico Pache) [1954335] - x86: get rid of small constant size cases in raw_copy_{to,from}_user() (Nico Pache) [1954335] - s390/kasan: add KASAN_VMALLOC support (Nico Pache) [1954335] - s390: move vmalloc option parsing to startup code (Nico Pache) [1954335] - kasan: add test for vmalloc (Nico Pache) [1954335] - ehea: replace with page_shift() in ehea_is_hugepage() (Nico Pache) [1954335] - mm: introduce page_shift() (Nico Pache) [1954335] - lib/test_kasan.c: add roundtrip tests (Nico Pache) [1954335] - lib/test_kasan: Add test for double-kzfree detection (Nico Pache) [1954335] - lib/test_kasan: add bitops tests (Nico Pache) [1954335] - asm-generic, x86: add bitops instrumentation for KASAN (Nico Pache) [1954335] - x86: use static_cpu_has in uaccess region to avoid instrumentation (Nico Pache) [1954335] - x86/asm: Use stricter assembly constraints in bitops (Nico Pache) [1954335] - x86/asm: Remove dead __GNUC__ conditionals (Nico Pache) [1954335] - s390/kasan: adapt disabled_wait usage to avoid build error (Nico Pache) [1954335] - s390: simplify disabled_wait (Nico Pache) [1954335] - lib/test_kasan.c: add tests for several string/memory API functions (Nico Pache) [1954335] - arm64: Fix typo in a comment in arch/arm64/mm/kasan_init.c (Nico Pache) [1954335] - kprobes: Remove jprobe stub API (Nico Pache) [1954335] - Documentation/kprobes: Add how to change the execution path (Nico Pache) [1954335] - kprobes/x86: Do not disable preempt on int3 path (Nico Pache) [1954335] - bpf/error-inject/kprobes: Clear current_kprobe and enable preempt in kprobe (Nico Pache) [1954335] - s390/kprobes: Don't call the ->break_handler() in s390 kprobes code (Nico Pache) [1954335] - powerpc/kprobes: Don't call the ->break_handler() in powerpc kprobes code (Nico Pache) [1954335] - arm64/kprobes: Don't call the ->break_handler() in arm64 kprobes code (Nico Pache) [1954335] - kprobes/x86: Don't call the ->break_handler() in x86 kprobes (Nico Pache) [1954335] - kprobes: Don't check the ->break_handler() in generic kprobes code (Nico Pache) [1954335] - kprobes/x86: Remove jprobe implementation (Nico Pache) [1954335] - s390/kprobes: Remove jprobe implementation (Nico Pache) [1954335] - powerpc/kprobes: Remove jprobe powerpc implementation (Nico Pache) [1954335] - arm64/kprobes: Remove jprobe implementation (Nico Pache) [1954335] - kprobes: Remove jprobe API implementation (Nico Pache) [1954335] - Documentation/kprobes: Remove jprobes related leftover (Nico Pache) [1954335] - redhat: config: explicitly set CONFIG_ARM64_VA_BITS_48 for ARM64 (Nico Pache) [1954335] - arm64: mm: use a 48-bit ID map when possible on 52-bit VA builds (Nico Pache) [1954335] - arm64: mm: limit linear region to 51 bits for KVM in nVHE mode (Nico Pache) [1954335] - Documentation/arm64: fix RST layout of memory.rst (Nico Pache) [1954335] - arm64: mm: Remove MAX_USER_VA_BITS definition (Nico Pache) [1954335] - arm64: Use simpler arithmetics for the linear map macros (Nico Pache) [1954335] - arm64: mm: use single quantity to represent the PA to VA translation (Nico Pache) [1954335] - kasan/arm64: fix CONFIG_KASAN_SW_TAGS && KASAN_INLINE (Nico Pache) [1954335] - arm64: Do not pass tagged addresses to __is_lm_address() (Nico Pache) [1954335] - arm64: Fix kernel address detection of __is_lm_address() (Nico Pache) [1954335] - arm64: mm: extend linear region for 52-bit VA configurations (Nico Pache) [1954335] - arm64: Fix kcore macros after 52-bit virtual addressing fallout (Nico Pache) [1954335] - arm64: fix fixmap copy for 16K pages and 48-bit VA (Nico Pache) [1954335] - arm64: memory: rename VA_START to PAGE_END (Nico Pache) [1954335] - arm64: memory: Simplify _VA_START and _PAGE_OFFSET definitions (Nico Pache) [1954335] - arm64: memory: fix flipped VA space fallout (Nico Pache) [1954335] - arm64: memory: Fix virt_addr_valid() using __is_lm_address() (Nico Pache) [1954335] - arm64: memory: Ensure address tag is masked in conversion macros (Nico Pache) [1954335] - arm64: mm: Simplify definition of virt_addr_valid() (Nico Pache) [1954335] - docs: arm64: Add layout and 52-bit info to memory document (Nico Pache) [1954335] - arm64: mm: Remove vabits_user (Nico Pache) [1954335] - arm64: mm: Introduce 52-bit Kernel VAs (Nico Pache) [1954335] - arm64: mm: Modify calculation of VMEMMAP_SIZE (Nico Pache) [1954335] - arm64: mm: Separate out vmemmap (Nico Pache) [1954335] - arm64: mm: Logic to make offset_ttbr1 conditional (Nico Pache) [1954335] - arm64: mm: Introduce vabits_actual (Nico Pache) [1954335] - arm64: Print physical address of page table base in show_pte() (Nico Pache) [1954335] - arm64: mm: Introduce VA_BITS_MIN (Nico Pache) [1954335] - arm64: dump: De-constify VA_START and KASAN_SHADOW_START (Nico Pache) [1954335] - arm64: kasan: Switch to using KASAN_SHADOW_OFFSET (Nico Pache) [1954335] - arm64: mm: Flip kernel VA space (Nico Pache) [1954335] - arm64: mm: Remove bit-masking optimisations for PAGE_OFFSET and VMEMMAP_START (Nico Pache) [1954335] - arm64: dump: Use consistent capitalisation for page-table dumps (Nico Pache) [1954335] - kernel/rwsem: Use proper directories for rwsem_init.c (Scott Wood) [2040087] - redhat: Cleanup use of mark_hardware_removed (Prarit Bhargava) [2019378] - redhat: Cleanup use of mark_hardware_unsupported (Prarit Bhargava) [2019378] - redhat: clean up mark_hardware_deprecated() (Prarit Bhargava) [2019378] - nvme: Mark NVMe over FC Target support unmaintained (Prarit Bhargava) [2019378] - hdlc_fr: Mark driver unmaintained (Prarit Bhargava) [2019378] - sfc: Mark siena driver deprecated (Prarit Bhargava) [2019378] - qla3xxx: Mark driver unmaintained (Prarit Bhargava) [2019378] - netxen: Mark nic driver unmaintained (Prarit Bhargava) [2019378] - ethoc: Mark driver unmaintained (Prarit Bhargava) [2019378] - dnet: Mark driver unmaintained (Prarit Bhargava) [2019378] - drivers/pci/pci-driver.c: Fix if/ifdef typo (Prarit Bhargava) [2019378] - kernel/rh_taint.c: Update to new messaging (Prarit Bhargava) [2019378] - drm/i915/dmc: Change max DMC FW size on ADL-P (Michel Dänzer) [1988103] - drm/i915: Add workaround numbers to GEN7_COMMON_SLICE_CHICKEN1 whitelisting (Michel Dänzer) [1988103] - drm/i915: Fix Memory BW formulae for ADL-P (Michel Dänzer) [1988103] - drm/i915: Restore memory mapping for DPT FBs across system suspend/resume (Michel Dänzer) [1988103] - drm/i915: Factor out i915_ggtt_suspend_vm/i915_ggtt_resume_vm() (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Remove restriction on CCS AUX plane strides (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Remove restriction on semiplanar UV plane offset (Michel Dänzer) [1988103] - drm/i915/fb: Rename i915_color_plane_view::stride to mapping_stride (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Fix remapping of linear CCS AUX surfaces (Michel Dänzer) [1988103] - drm/i915/fb: Factor out functions to remap contiguous FB obj pages (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Prevent the mapping of redundant trailing padding NULL pages (Michel Dänzer) [1988103] - drm/i915: Add functions to check for RC CCS CC and MC CCS modifiers (Michel Dänzer) [1988103] - drm/i915: Move is_ccs_modifier() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Add a platform independent way to check for CCS AUX planes (Michel Dänzer) [1988103] - drm/i915: Handle CCS CC planes separately from CCS AUX planes (Michel Dänzer) [1988103] - drm/i915: Add a platform independent way to get the RC CCS CC plane (Michel Dänzer) [1988103] - drm/i915: Move intel_format_info_is_yuv_semiplanar() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Unexport is_semiplanar_uv_plane() (Michel Dänzer) [1988103] - drm/i915: Simplify the modifier check for interlaced scanout support (Michel Dänzer) [1988103] - drm/i915: Add tiling attribute to the modifier descriptor (Michel Dänzer) [1988103] - drm/i915: Move intel_get_format_info() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Add a table with a descriptor for all i915 modifiers (Michel Dänzer) [1988103] - drm/i915/adlp: Implement workaround 16013190616 (Michel Dänzer) [1988103] - drm/i915/adlp: Extend PSR2 support in transcoder B (Michel Dänzer) [1988103] - drm/i915/display: Wait PSR2 get out of deep sleep to update pipe (Michel Dänzer) [1988103] - drm/i915/display/adlp: Allow PSR2 to be enabled (Michel Dänzer) [1988103] - drm/i915/display/adlp: Optimize PSR2 power-savings in corner cases (Michel Dänzer) [1988103] - drm/i915/display: Fix glitches when moving cursor with PSR2 selective fetch enabled (Michel Dänzer) [1988103] - drm/i915/display: Handle frontbuffer rendering when PSR2 selective fetch is enabled (Michel Dänzer) [1988103] - drm/i915/display: Drop unnecessary frontbuffer flushes (Michel Dänzer) [1988103] - drm/i915/display/psr: Do full fetch when handling multi-planar formats (Michel Dänzer) [1988103] - drm/i915/display/psr: Handle plane and pipe restrictions at every page flip (Michel Dänzer) [1988103] - drm/i915/display: Only keep PSR enabled if there is active planes (Michel Dänzer) [1988103] - drm/i915/display: Match PSR2 selective fetch sequences with specification (Michel Dänzer) [1988103] - drm/i915/display/dmc: Set DC_STATE_DEBUG_MASK_CORES after firmware load (Michel Dänzer) [1988103] - drm/i915: Nuke intel_prepare_shared_dpll() (Michel Dänzer) [1988103] - drm/i915: Fold ibx_pch_dpll_prepare() into ibx_pch_dpll_enable() (Michel Dänzer) [1988103] - drm/i915: Fold i9xx_set_pll_dividers() into i9xx_enable_pll() (Michel Dänzer) [1988103] - drm/i915: Reuse ilk_needs_fb_cb_tune() for the reduced clock as well (Michel Dänzer) [1988103] - drm/i915: Call {vlv,chv}_prepare_pll() from {vlv,chv}_enable_pll() (Michel Dänzer) [1988103] - drm/i915: Program DPLL P1 dividers consistently (Michel Dänzer) [1988103] - drm/i915: Remove the 'reg' local variable (Michel Dänzer) [1988103] - drm/i915: Clean up variable names in old dpll functions (Michel Dänzer) [1988103] - drm/i915: Clean dpll calling convention (Michel Dänzer) [1988103] - drm/i915: Constify struct dpll all over (Michel Dänzer) [1988103] - drm/i915: Extract ilk_update_pll_dividers() (Michel Dänzer) [1988103] - drm/i915: Clean up gen2 DPLL readout (Michel Dänzer) [1988103] - drm/i915: Set output_types to EDP for vlv/chv DPLL forcing (Michel Dänzer) [1988103] - drm/i915: Silence __iomem sparse warn (Michel Dänzer) [1988103] - drm/i915: split fdi link training from display vtable. (Michel Dänzer) [1988103] - drm/i915: split irq hotplug function from display vtable (Michel Dänzer) [1988103] - drm/i915: split cdclk functions from display vtable. (Michel Dänzer) [1988103] - drm/i915: split audio functions from display vtable (Michel Dänzer) [1988103] - drm/i915: split color functions from display vtable (Michel Dänzer) [1988103] - drm/i915: split watermark vfuncs from display vtable. (Michel Dänzer) [1988103] - drm/i915: split clock gating init from display vtable (Michel Dänzer) [1988103] - drm/i915/display: add intel_fdi_link_train wrapper. (Michel Dänzer) [1988103] - drm/i915: add wrappers around cdclk vtable funcs. (Michel Dänzer) [1988103] - drm/i915/wm: provide wrappers around watermark vfuncs calls (v3) (Michel Dänzer) [1988103] - drm/i915: make update_wm take a dev_priv. (Michel Dänzer) [1988103] - drm/i915/pm: drop get_fifo_size vfunc. (Michel Dänzer) [1988103] - drm/i915: Clean up pre-skl wm calling convention (Michel Dänzer) [1988103] - drm/i915/dmc: Update to DMC v2.12 (Michel Dänzer) [1988103] - drm/i915: Implement PSF GV point support (Michel Dänzer) [1988103] - drm/i915: Extend QGV point restrict mask to 0x3 (Michel Dänzer) [1988103] - drm/i915/display: Disable audio, DRRS and PSR before planes (Michel Dänzer) [1988103] - drm/i915: Make display workaround upper bounds exclusive (Michel Dänzer) [1988103] - drm/i915: Program DFR enable/disable as a GT workaround (Michel Dänzer) [1988103] - drm/i915/step: s/_revid_tbl/_revids (Michel Dänzer) [1988103] - drm/i915/display: Settle on "adl-x" in WA comments (Michel Dänzer) [1988103] - drm/i915: Settle on "adl-x" in WA comments (Michel Dänzer) [1988103] - drm/i915/display/adlp: Disable underrun recovery (Michel Dänzer) [1988103] - drm/i915/tc: Fix system hang on ADL-P during TypeC PHY disconnect (Michel Dänzer) [1988103] - drm/i915/tc: Drop extra TC cold blocking from intel_tc_port_connected() (Michel Dänzer) [1988103] - drm/i915/tc: Fix TypeC PHY connect/disconnect logic on ADL-P (Michel Dänzer) [1988103] - drm/i915/icl/tc: Remove the ICL special casing during TC-cold blocking (Michel Dänzer) [1988103] - drm/i915/tc: Avoid using legacy AUX PW in TBT mode (Michel Dänzer) [1988103] - drm/i915/tc: Refactor TC-cold block/unblock helpers (Michel Dänzer) [1988103] - drm/i915/tc: Add a mode for the TypeC PHY's disconnected state (Michel Dänzer) [1988103] - drm/i915/tc: Don't keep legacy TypeC ports in connected state w/o a sink (Michel Dänzer) [1988103] - drm/i915/tc: Add/use helpers to retrieve TypeC port properties (Michel Dänzer) [1988103] - drm/i915/tc: Check for DP-alt, legacy sinks before taking PHY ownership (Michel Dänzer) [1988103] - drm/i915/tc: Remove waiting for PHY complete during releasing ownership (Michel Dänzer) [1988103] - drm/i915/adlp/tc: Fix PHY connected check for Thunderbolt mode (Michel Dänzer) [1988103] - drm/i915: Force a TypeC PHY disconnect during suspend/shutdown (Michel Dänzer) [1988103] - drm/i915/adlp: Add support for remapping CCS FBs (Michel Dänzer) [1988103] - drm/i915: Follow a new->old platform check order in intel_fb_stride_alignment (Michel Dänzer) [1988103] - drm/i915/adlp: Assert that VMAs in DPT start at 0 (Michel Dänzer) [1988103] - drm/i915/adlp: Require always a power-of-two sized CCS surface stride (Michel Dänzer) [1988103] - drm/i915: Use tile block based dimensions for CCS origin x, y check (Michel Dänzer) [1988103] - drm/i915/fb: move user framebuffer stuff to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/display: split out dpt out of intel_display.c (Michel Dänzer) [1988103] - drm/i915/fb: move intel_surf_alignment() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: add HAS_ASYNC_FLIPS feature macro (Michel Dänzer) [1988103] - drm/i915/fb: move intel_fb_align_height() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/fb: move intel_tile_width_bytes() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/display/adlp: Add new PSR2 workarounds (Michel Dänzer) [1988103] - drm/i915: Program chicken bit during DP MST sequence on TGL+ (Michel Dänzer) [1988103] - drm/i915/display: Workaround cursor left overs with PSR2 selective fetch enabled (Michel Dänzer) [1988103] - drm/i915/display/adlp: Fix PSR2_MAN_TRK_CTL_SU_REGION_END_ADDR calculation (Michel Dänzer) [1988103] - drm/i915: Update memory bandwidth parameters (Michel Dänzer) [1988103] - drm/i915/dp: fix for ADL_P/S dp/edp max source rates (Michel Dänzer) [1988103] - drm/i915/dp: fix DG1 and RKL max source rates (Michel Dänzer) [1988103] - drm/i915/dp: fix EHL/JSL max source rates calculation (Michel Dänzer) [1988103] - drm/i915/dp: fix TGL and ICL max source rates (Michel Dänzer) [1988103] - drm/i915/dp: Fix eDP max rate for display 11+ (Michel Dänzer) [1988103] - drm/i915/dp: fix DG2 max source rate check (Michel Dänzer) [1988103] - drm/i915/dg2: add DG2 UHBR source rates (Michel Dänzer) [1988103] - drm/i915/display: remove explicit CNL handling from intel_dp.c (Michel Dänzer) [1988103] - drm/i915/dsi/xelpd: Enable mipi dsi support. (Michel Dänzer) [1988103] - drm/i915/dsi/xelpd: Add WA to program LP to HS wakeup guardband (Michel Dänzer) [1988103] - drm/i915/display: Update small joiner ram size (Michel Dänzer) [1988103] - drm/i915/adl_p: Also disable underrun recovery with MSO (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Correctly program MBUS DBOX A credits (Michel Dänzer) [1988103] - drm/i915: Apply CMTG clock disabling WA while DPLL0 is enabled (Michel Dänzer) [1988103] - drm/i915/adl_p: Add ddi buf translation tables for combo PHY (Michel Dänzer) [1988103] - drm/i915/adl_s: Update ddi buf translation tables (Michel Dänzer) [1988103] - drm/i915: Add the missing adls vswing tables (Michel Dänzer) [1988103] - drm/i915/adlp: Add workaround to disable CMTG clock gating (Michel Dänzer) [1988103] - drm/i915/adl_p: Allow underrun recovery when possible (Michel Dänzer) [1988103] - drm/i915: Add dummy IS_DG2 definition (Michel Dänzer) [1988103] - drm/i915: Extend Wa_1406941453 to adl-p (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement PSR changes (Michel Dänzer) [1988103] - drm/i915/debugfs: DISPLAY_VER 13 lpsp capability (Michel Dänzer) [1988103] - drm/i915/adlp: Add ADL-P GuC/HuC firmware files (Michel Dänzer) [1988103] - drm/i915/huc: Update TGL and friends to HuC 7.9.3 (Michel Dänzer) [1988103] - drm/i915/guc: Update firmware to v62.0.0 (Michel Dänzer) [1988103] - drm/i915/guc: Introduce unified HXG messages (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_16011303918 (Michel Dänzer) [1988103] - drm/i915/xelpd: Handle PSR2 SDP indication in the prior scanline (Michel Dänzer) [1988103] - drm/i915/display/psr: Handle SU Y granularity (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_16011168373 (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_22012278275 (Michel Dänzer) [1988103] - drm/i915: Nuke buf_trans hdmi functions (Michel Dänzer) [1988103] - drm/i915: Clean up jsl/ehl buf trans functions (Michel Dänzer) [1988103] - drm/i915: Fix ehl edp hbr2 vswing table (Michel Dänzer) [1988103] - drm/i915: Deduplicate icl DP HBR2 vs. eDP HBR3 table (Michel Dänzer) [1988103] - drm/i915: Fix dg1 buf trans tables (Michel Dänzer) [1988103] - drm/i915: Introduce rkl_get_combo_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Clean up hsw/bdw/skl/kbl buf trans funcs (Michel Dänzer) [1988103] - drm/i915: Introduce encoder->get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Store the HDMI default entry in the bug trans struct (Michel Dänzer) [1988103] - drm/i915; Return the whole buf_trans struct from get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Introduce intel_get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Wrap the buf trans tables into a struct (Michel Dänzer) [1988103] - drm/i915: Rename dkl phy buf trans tables (Michel Dänzer) [1988103] - drm/i915: Wrap the platform specific buf trans structs into a union (Michel Dänzer) [1988103] - drm/i915: Introduce hsw_get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: s/intel/hsw/ for hsw/bdw/skl buf trans (Michel Dänzer) [1988103] - drm/i915/adl_p: Load DMC (Michel Dänzer) [1988103] - drm/i915/adl_p: Pipe B DMC Support (Michel Dänzer) [1988103] - drm/i915/xelpd: Pipe A DMC plugging (Michel Dänzer) [1988103] - drm/i915/dmc: Introduce DMC_FW_MAIN (Michel Dänzer) [1988103] - drm/i915/adl_p: Add initial ADL_P Workarounds (Michel Dänzer) [1988103] - drm/i915/xelpd: break feature inheritance (Michel Dänzer) [1988103] - backlight: backlight: Make of_find_backlight static (Jérôme Glisse) [1988103] - backlight: backlight: Drop backlight_put() (Jérôme Glisse) [1988103] - backlight: backlight: Introduce backlight_get_brightness() (Jérôme Glisse) [1988103] - backlight: backlight: Drop extern from prototypes (Jérôme Glisse) [1988103] - backlight: generic_bl: Remove this driver as it is unused (Michel Dänzer) [1988103] - backlight: backlight: Document enums in backlight.h (Jérôme Glisse) [1988103] - backlight: backlight: Document inline functions in backlight.h (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_device documentation (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_properties documentation (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_ops documentation (Jérôme Glisse) [1988103] - backlight: backlight: Add backlight_is_blank() (Jérôme Glisse) [1988103] - backlight: Add backlight_device_get_by_name() (Jérôme Glisse) [1988103] - backlight: Expose brightness curve type through sysfs (Michel Dänzer) [1988103] - backlight: Remove obsolete comment for ->state (Jérôme Glisse) [1988103] - x86/gpu: add JasperLake to gen11 early quirks (Michel Dänzer) [1988103] - drm/i915/adl_p: ADL_P device info enabling (Michel Dänzer) [1988103] - redhat/configs: Disable CONFIG_DRM_VMWGFX on aarch64 (Michel Dänzer) [1988103] - drm/amd/display: Reduce stack size for dml31 UseMinimumDCFCLK (Michel Dänzer) [1988103] - drm/amd/display: Reduce stack size for dml31_ModeSupportAndSystemConfigurationFull (Michel Dänzer) [1988103] - drm/amdgpu: Initialize max/min_dpm_level (Michel Dänzer) [1988103] - redhat/configs: Disable CONFIG_HSA_AMD_SVM for now (Michel Dänzer) [1988103] - i915: Convert to older tasklet API (Michel Dänzer) [1988103] - drm/ttm: Include asm/pgtable.h (Michel Dänzer) [1988103] - Merge DRM changes from upstream v5.13..v5.14.21 (Michel Dänzer) [1988103] - PCI: Add support for dev_groups to struct pci_driver (Jérôme Glisse) [1988103] - drm: Initialize some local variables to avoid compiler warnings (Jérôme Glisse) [1988103] - drm: Use swiotlb_nr_tbl instead of is_swiotlb_active (Jérôme Glisse) [1988103] - i915: Use mdev_type_kobj_to_group_id instead of mtype_get_type_group_id (Jérôme Glisse) [1988103] - i915: Convert to older tasklet API (Jérôme Glisse) [1988103] - drm: Drop const from list_sort compare function prototypes (Jérôme Glisse) [1988103] - Merge DRM changes from upstream v5.12.14..v5.13 (Michel Dänzer) [1988103] - vfio/mdev: add helper to get index of mdev_type sysfs file (Jérôme Glisse) [1988103] - drm/syncobj: make lockdep complain on WAIT_FOR_SUBMIT v3 (Jérôme Glisse) [1988103] - Revert "drm/i915: Implement Wa_1508744258" (Michel Dänzer) [1988103] - Revert "drm/i915: Add the missing adls vswing tables" (Michel Dänzer) [1988103] - x86/gpu: Add Alderlake-S stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add RKL stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add TGL stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add ElkhartLake to gen11 early quirks (Michel Dänzer) [1988103] - x86/gpu: reserve ICL's graphics stolen memory (Michel Dänzer) [1988103] - selftest/x86/signal: Include test cases for validating sigaltstack (Prarit Bhargava) [1837321] - x86/signal: Detect and prevent an alternate signal stack overflow (Prarit Bhargava) [1837321] - selftest/sigaltstack: Use the AT_MINSIGSTKSZ aux vector if available (Prarit Bhargava) [1837321] - x86/fpu: Additional cleanups (Prarit Bhargava) [1837321] - binfmt_elf: Respect error return from `regset->active' (Prarit Bhargava) [1837321] - x86/fpu: Optimize out sigframe xfeatures when in init state (Prarit Bhargava) [1837321] - Documentation/x86: Add documentation for using dynamic XSTATE features (Prarit Bhargava) [1837321] - selftests/x86/amx: Add context switch test (Prarit Bhargava) [1837321] - selftests/x86/amx: Add test cases for AMX state management (Prarit Bhargava) [1837321] - x86/fpu: Include vmalloc.h for vzalloc() (Prarit Bhargava) [1837321] - x86/fpu/amx: Enable the AMX feature in 64-bit mode (Prarit Bhargava) [1837321] - x86/fpu: Add XFD handling for dynamic states (Prarit Bhargava) [1837321] - x86/fpu: Calculate the default sizes independently (Prarit Bhargava) [1837321] - x86/fpu/amx: Define AMX state components and have it used for boot-time checks (Prarit Bhargava) [1837321] - x86/fpu/xstate: Prepare XSAVE feature table for gaps in state component numbers (Prarit Bhargava) [1837321] - x86/fpu/xstate: Add fpstate_realloc()/free() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Add XFD #NM handler (Prarit Bhargava) [1837321] - x86/fpu: Update XFD state where required (Prarit Bhargava) [1837321] - x86/fpu: Add sanity checks for XFD (Prarit Bhargava) [1837321] - x86/fpu: Add XFD state to fpstate (Prarit Bhargava) [1837321] - x86/msr-index: Add MSRs for XFD (Prarit Bhargava) [1837321] - x86/cpufeatures: Add eXtended Feature Disabling (XFD) feature bit (Prarit Bhargava) [1837321] - x86/fpu: Reset permission and fpstate on exec() (Prarit Bhargava) [1837321] - x86/fpu: Prepare fpu_clone() for dynamically enabled features (Prarit Bhargava) [1837321] - x86/fpu/signal: Prepare for variable sigframe length (Prarit Bhargava) [1837321] - x86/signal: Use fpu::__state_user_size for sigalt stack validation (Prarit Bhargava) [1837321] - x86/fpu: Add basic helpers for dynamically enabled features (Prarit Bhargava) [1837321] - x86/arch_prctl: Add controls for dynamic XSTATE components (Prarit Bhargava) [1837321] - x86/fpu: Add fpu_state_config::legacy_features (Prarit Bhargava) [1837321] - x86/fpu: Add members to struct fpu to cache permission information (Prarit Bhargava) [1837321] - x86/fpu/xstate: Provide xstate_calculate_size() (Prarit Bhargava) [1837321] - x86/signal: Implement sigaltstack size validation (Prarit Bhargava) [1837321] - signal: Add an optional check for altstack size (Prarit Bhargava) [1837321] - x86/fpu: Remove old KVM FPU interface (Prarit Bhargava) [1837321] - x86/kvm: Convert FPU handling to a single swap buffer (Prarit Bhargava) [1837321] - x86/fpu: Provide infrastructure for KVM FPU cleanup (Prarit Bhargava) [1837321] - x86/fpu: Prepare for sanitizing KVM FPU code (Prarit Bhargava) [1837321] - x86/fpu/xstate: Move remaining xfeature helpers to core (Prarit Bhargava) [1837321] - x86/fpu: Rework restore_regs_from_fpstate() (Prarit Bhargava) [1837321] - x86/fpu: Mop up xfeatures_mask_uabi() (Prarit Bhargava) [1837321] - x86/fpu: Move xstate feature masks to fpu_*_cfg (Prarit Bhargava) [1837321] - x86/fpu: Move xstate size to fpu_*_cfg (Prarit Bhargava) [1837321] - x86/fpu/xstate: Cleanup size calculations (Prarit Bhargava) [1837321] - x86/fpu: Cleanup fpu__init_system_xstate_size_legacy() (Prarit Bhargava) [1837321] - x86/fpu: Provide struct fpu_config (Prarit Bhargava) [1837321] - x86/fpu/signal: Use fpstate for size and features (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for copy_uabi_to_xstate() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate in __copy_xstate_to_uabi_buf() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate in fpu_copy_kvm_uabi_to_fpstate() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for xsave_to_user_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for os_xsave() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate::size (Prarit Bhargava) [1837321] - x86/fpu: Add size and mask information to fpstate (Prarit Bhargava) [1837321] - x86/process: Move arch_thread_struct_whitelist() out of line (Prarit Bhargava) [1837321] - x86/fpu: Do not leak fpstate pointer on fork (Prarit Bhargava) [1837321] - x86/fpu: Remove fpu::state (Prarit Bhargava) [1837321] - x86/math-emu: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/core: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/signal: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/regset: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu: Convert tracing to fpstate (Prarit Bhargava) [1837321] - x86/KVM: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs xstate component clearing (Prarit Bhargava) [1837321] - x86/fpu: Convert restore_fpregs_from_fpstate() to struct fpstate (Prarit Bhargava) [1837321] - x86/fpu: Convert fpstate_init() to struct fpstate (Prarit Bhargava) [1837321] - fpu/types.h: KABI fix Part I (Prarit Bhargava) [1837321] - x86/fpu: Provide struct fpstate (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs home brewed FPU copy to user (Prarit Bhargava) [1837321] - x86/fpu: Provide a proper function for ex_handler_fprestore() (Prarit Bhargava) [1837321] - x86/fpu: Replace the includes of fpu/internal.h (Prarit Bhargava) [1837321] - x86/fpu: Mop up the internal.h leftovers (Prarit Bhargava) [1837321] - x86/sev: Include fpu/xcr.h (Prarit Bhargava) [1837321] - x86/fpu: Remove internal.h dependency from fpu/signal.h (Prarit Bhargava) [1837321] - x86/fpu: Move fpstate functions to api.h (Prarit Bhargava) [1837321] - x86/fpu: Move mxcsr related code to core (Prarit Bhargava) [1837321] - x86/fpu: Move fpregs_restore_userregs() to core (Prarit Bhargava) [1837321] - x86/fpu: Make WARN_ON_FPU() private (Prarit Bhargava) [1837321] - x86/fpu: Move legacy ASM wrappers to core (Prarit Bhargava) [1837321] - x86/fpu: Move os_xsave() and os_xrstor() to core (Prarit Bhargava) [1837321] - x86/fpu: Make os_xrstor_booting() private (Prarit Bhargava) [1837321] - x86/fpu: Clean up CPU feature tests (Prarit Bhargava) [1837321] - x86/fpu: Move context switch and exit to user inlines into sched.h (Prarit Bhargava) [1837321] - x86/fpu: Mark fpu__init_prepare_fx_sw_frame() as __init (Prarit Bhargava) [1837321] - x86/fpu: Rework copy_xstate_to_uabi_buf() (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs home brewed FPU copy from user (Prarit Bhargava) [1837321] - x86/fpu: Move KVMs FPU swapping to FPU core (Prarit Bhargava) [1837321] - x86/fpu/xstate: Mark all init only functions __init (Prarit Bhargava) [1837321] - x86/fpu/xstate: Provide and use for_each_xfeature() (Prarit Bhargava) [1837321] - x86/fpu: Cleanup xstate xcomp_bv initialization (Prarit Bhargava) [1837321] - x86/fpu: Do not inherit FPU context for kernel and IO worker threads (Prarit Bhargava) [1837321] - x86/process: Clone FPU in copy_thread() (Prarit Bhargava) [1837321] - x86/fpu: Remove pointless memset in fpu_clone() (Prarit Bhargava) [1837321] - x86/fpu: Cleanup the on_boot_cpu clutter (Prarit Bhargava) [1837321] - x86/fpu: Restrict xsaves()/xrstors() to independent states (Prarit Bhargava) [1837321] - x86/pkru: Remove useless include (Prarit Bhargava) [1837321] - x86/fpu: Update stale comments (Prarit Bhargava) [1837321] - x86/fpu: Remove pointless argument from switch_fpu_finish() (Prarit Bhargava) [1837321] - x86/fpu: Mask out the invalid MXCSR bits properly (Prarit Bhargava) [1837321] - x86/fpu: Restore the masking out of reserved MXCSR bits (Prarit Bhargava) [1837321] - x86/fpu/signal: Fix missed conversion to correct boolean retval in save_xstate_epilog() (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return code of restore_fpregs_from_user() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return code of check_xstate_in_sigframe() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of __fpu_restore_sig() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of fpu__restore_sig() to boolean (Prarit Bhargava) [1837321] - x86/signal: Change return type of restore_sigcontext() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of copy_fpregs_to_sigframe() helpers to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of copy_fpstate_to_sigframe() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Move xstate clearing out of copy_fpregs_to_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/signal: Move header zeroing out of xsave_to_user_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/signal: Clarify exception handling in restore_fpregs_from_user() (Prarit Bhargava) [1837321] - x86/elf: Support a new ELF aux vector AT_MINSIGSTKSZ (Prarit Bhargava) [1837321] - uapi/auxvec: Define the aux vector AT_MINSIGSTKSZ (Prarit Bhargava) [1837321] - x86: get rid of get_user_ex() in restore_sigcontext() (Prarit Bhargava) [1837321] - x86: get rid of get_user_ex() in ia32_restore_sigcontext() (Prarit Bhargava) [1837321] - x86: Remove force_iret() (Prarit Bhargava) [1837321] - x86/uaccess, signal: Fix AC=1 bloat (Prarit Bhargava) [1837321] - x86/ia32: Fix ia32_restore_sigcontext() AC leak (Prarit Bhargava) [1837321] - x86/tsc: Add tsc_early_khz command line parameter (Prarit Bhargava) [1957375] - x86/debug: Support negative polarity DR6 bits (Prarit Bhargava) [2017958]- KVM: SVM: Do not terminate SEV-ES guests on GHCB validation failure (Vitaly Kuznetsov) [2032931] - KVM: SEV: Fall back to vmalloc for SEV-ES scratch area if necessary (Vitaly Kuznetsov) [2032931] - KVM: SEV: Return appropriate error codes if SEV-ES scratch setup fails (Vitaly Kuznetsov) [2032931] - KVM: SEV: Refactor out sev_es_state struct (Vitaly Kuznetsov) [2032931] - s390: mm: Fix secure storage access exception handling (Thomas Huth) [1984910] - KVM: PPC: Book3S HV: Make idle_kvm_start_guest() return 0 if it went to guest (Jon Maloy) [2018960] {CVE-2021-43056} - KVM: PPC: Book3S HV: Fix stack handling in idle_kvm_start_guest() (Jon Maloy) [2018960] {CVE-2021-43056} - KVM: arm64: selftests: arch_timer: Support vCPU migration (Gavin Shan) [2024808] - KVM: arm64: selftests: Add arch_timer test (Gavin Shan) [2024808] - KVM: arm64: selftests: Add host support for vGIC (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic GICv3 support (Gavin Shan) [2024808] - KVM: arm64: selftests: Add light-weight spinlock support (Gavin Shan) [2024808] - KVM: arm64: selftests: Add guest support to get the vcpuid (Gavin Shan) [2024808] - KVM: arm64: selftests: Maintain consistency for vcpuid type (Gavin Shan) [2024808] - KVM: arm64: selftests: Add support to disable and enable local IRQs (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic support to generate delays (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic support for arch_timers (Gavin Shan) [2024808] - KVM: arm64: selftests: Add support for cpu_relax (Gavin Shan) [2024808] - KVM: arm64: selftests: Introduce ARM64_SYS_KVM_REG (Gavin Shan) [2024808] - tools: arm64: Import sysreg.h (Gavin Shan) [2024808] - KVM: arm64: selftests: Add MMIO readl/writel support (Gavin Shan) [2024808] - selftests: KVM: Introduce psci_cpu_on_test (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: actually enable pmu regs in pmu sublist (Gavin Shan) [2024808] - KVM: arm64: Update MAINTAINERS to include selftests (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Split base and pmu registers (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Remove get-reg-list-sve (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Provide config selection option (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Prepare to run multiple configs at once (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Introduce vcpu configs (Gavin Shan) [2024808] - sctp: make the raise timer more simple and accurate (Xin Long) [2020474] - Enable flowtable ipv4/ipv6 support (Phil Sutter) [1850324] - ip6_vti: initialize __ip6_tnl_parm struct in vti6_siocdevprivate (William Zhao) [1941928] - svcrdma: Fix a crash in svcrdma_counter_handler (Benjamin Coddington) [2037213] - fbcon: Fix global-out-of-bounds read in fbcon_get_font() (Lyude Paul) [1904374] - bnxt_en: Clean up completion ring page arrays completely (Ken Cox) [1987074] - bnxt_en: Fix error recovery regression (Ken Cox) [1987074] - bnxt_en: Fix possible unintended driver initiated error recovery (Ken Cox) [1987074] - bnxt_en: Fix UDP tunnel logic (Ken Cox) [1987074] - bnxt_en: Fix asic.rev in devlink dev info command (Ken Cox) [1987074] - bnxt_en: fix read of stored FW_PSID version on P5 devices (Ken Cox) [1987074] - bnxt_en: fix stored FW_PSID version masks (Ken Cox) [1987074] - bnxt_en: fix kernel doc warnings in bnxt_hwrm.c (Ken Cox) [1987074] - bnxt_en: Fix 64-bit doorbell operation on 32-bit kernels (Ken Cox) [1987074] - bnxt_en: support multiple HWRM commands in flight (Ken Cox) [1987074] - bnxt_en: remove legacy HWRM interface (Ken Cox) [1987074] - bnxt_en: update all firmware calls to use the new APIs (Ken Cox) [1987074] - bnxt_en: use link_lock instead of hwrm_cmd_lock to protect link_info (Ken Cox) [1987074] - bnxt_en: add support for HWRM request slices (Ken Cox) [1987074] - bnxt_en: add HWRM request assignment API (Ken Cox) [1987074] - bnxt_en: discard out of sequence HWRM responses (Ken Cox) [1987074] - bnxt_en: introduce new firmware message API based on DMA pools (Ken Cox) [1987074] - bnxt_en: move HWRM API implementation into separate file (Ken Cox) [1987074] - bnxt_en: Refactor the HWRM_VER_GET firmware calls (Ken Cox) [1987074] - bnxt_en: remove DMA mapping for KONG response (Ken Cox) [1987074] - bnxt: count discards due to memory allocation errors (Ken Cox) [1987074] - bnxt: count packets discarded because of netpoll (Ken Cox) [1987074] - net: broadcom: switch from 'pci_' to 'dma_' API (Ken Cox) [1987074] - bnxt_en: Add missing DMA memory barriers (Ken Cox) [1987074] - bnxt_en: Disable aRFS if running on 212 firmware (Ken Cox) [1987074] - bnxt: count Tx drops (Ken Cox) [1987074] - bnxt: make sure xmit_more + errors does not miss doorbells (Ken Cox) [1987074] - bnxt: disable napi before canceling DIM (Ken Cox) [1987074] - bnxt: don't lock the tx queue from napi poll (Ken Cox) [1987074] - bnxt_en: Use register window 6 instead of 5 to read the PHC (Ken Cox) [1987074] - bnxt_en: Update firmware call to retrieve TX PTP timestamp (Ken Cox) [1987074] - bnxt_en: Update firmware interface to 1.10.2.52 (Ken Cox) [1987074] - bnxt_en: Increase maximum RX ring size if jumbo ring is not used (Ken Cox) [1987074] - bnxt_en: Don't use static arrays for completion ring pages (Ken Cox) [1987074] - bnxt_en: Add missing periodic PHC overflow check (Ken Cox) [1987074] - bnxt_en: Log if an invalid signal detected on TSIO pin (Ken Cox) [1987074] - bnxt_en: Event handler for PPS events (Ken Cox) [1987074 1990156] - bnxt_en: 1PPS functions to configure TSIO pins (Ken Cox) [1987074 1990156] - bnxt_en: 1PPS support for 5750X family chips (Ken Cox) [1987074 1990156] - bnxt_en: Do not read the PTP PHC during chip reset (Ken Cox) [1987074 1990156] - bnxt_en: Move bnxt_ptp_init() from bnxt_open() back to bnxt_init_one() (Ken Cox) [1987074 1990156] - bnxt_en: Fix PTP capability discovery (Ken Cox) [1987074] - bnxt_en: Move bnxt_ptp_init() to bnxt_open() (Ken Cox) [1987074] - bnxt: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [1987074] - bnxt_en: Enable hardware PTP support (Ken Cox) [1987074] - bnxt_en: Transmit and retrieve packet timestamps (Ken Cox) [1987074] - bnxt_en: Get the RX packet timestamp (Ken Cox) [1987074] - bnxt_en: Get the full 48-bit hardware timestamp periodically (Ken Cox) [1987074] - bnxt_en: Add PTP clock APIs, ioctls, and ethtool methods (Ken Cox) [1987074] - bnxt_en: Get PTP hardware capability from firmware (Ken Cox) [1987074] - bnxt_en: Update firmware interface to 1.10.2.47 (Ken Cox) [1987074] - bnxt_en: Fix fall-through warnings for Clang (Ken Cox) [1987074] - bnxt_en: Fix and improve .ndo_features_check(). (Ken Cox) [1987074] - bnxt_en: Implement .ndo_features_check(). (Ken Cox) [1987074] - bnxt_en: Support IFF_SUPP_NOFCS feature to transmit without ethernet FCS. (Ken Cox) [1987074] - bnxt_en: Call bnxt_approve_mac() after the PF gives up control of the VF MAC. (Ken Cox) [1987074] - bnxt_en: Move bnxt_approve_mac(). (Ken Cox) [1987074] - bnxt_en: allow VF config ops when PF is closed (Ken Cox) [1987074] - bnxt_en: Add support for fw managed link down feature. (Ken Cox) [1987074] - bnxt_en: Add a new phy_flags field to the main driver structure. (Ken Cox) [1987074] - bnxt_en: report signal mode in link up messages (Ken Cox) [1987074] - bnxt: add more ethtool standard stats (Ken Cox) [1987074] - bnxt: implement ethtool standard stats (Ken Cox) [1987074] - bnxt: implement ethtool::get_fec_stats (Ken Cox) [1987074] - bnxt_en: Free and allocate VF-Reps during error recovery. (Ken Cox) [1987074] - bnxt_en: Refactor __bnxt_vf_reps_destroy(). (Ken Cox) [1987074] - bnxt_en: Refactor bnxt_vf_reps_create(). (Ken Cox) [1987074] - bnxt_en: Invalidate health register mapping at the end of probe. (Ken Cox) [1987074] - bnxt_en: Treat health register value 0 as valid in bnxt_try_reover_fw(). (Ken Cox) [1987074] - bnxt_en: Enhance retry of the first message to the firmware. (Ken Cox) [1987074] - bnxt_en: Set BNXT_STATE_FW_RESET_DET flag earlier for the RDMA driver. (Ken Cox) [1987074] - bnxt_en: check return value of bnxt_hwrm_func_resc_qcaps (Ken Cox) [1987074] - bnxt_en: don't fake firmware response success when PCI is disabled (Ken Cox) [1987074] - bnxt_en: Improve wait for firmware commands completion (Ken Cox) [1987074] - bnxt_en: Improve the status_reliable flag in bp->fw_health. (Ken Cox) [1987074] - Bluetooth: fix use-after-free error in lock_sock_nested() (Gopal Tiwari) [2005689] - rpmspec: add release string to kernel doc directory name (Jan Stancek) [1824836] - cpufreq: intel_pstate: Fix cpu->pstate.turbo_freq initialization (Mark Langsdorf) [2031830] - ACPI: CPPC: Add NULL pointer check to cppc_get_perf() (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Rework HWP calibration (Mark Langsdorf) [2031830] - ACPI: CPPC: Introduce cppc_get_nominal_perf() (Mark Langsdorf) [2031830] - cpufreq: Replace deprecated CPU-hotplug functions (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Fix build with CONFIG_ACPI unset (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: CPU-specific scaling factor (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Avoid exposing two global attributes (Mark Langsdorf) [2031830] - ASoC: amd: renoir: Run hibernation callbacks (Renjith Pananchikkal) [1987617] - hugetlb: fix hugetlb cgroup refcounting during vma split (Waiman Long) [2032811] - hugetlb_cgroup: fix imbalanced css_get and css_put pair for shared mappings (Waiman Long) [2032811] - mm/hugetlb: change hugetlb_reserve_pages() to type bool (Waiman Long) [2032811] - hugetlb: fix an error code in hugetlb_reserve_pages() (Waiman Long) [2032811] - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations (Waiman Long) [2032811] - hugetlb_cgroup: fix reservation accounting (Waiman Long) [2032811] - mm/hugetlb: narrow the hugetlb_lock protection area during preparing huge page (Waiman Long) [2032811] - mm/hugetlb: a page from buddy is not on any list (Waiman Long) [2032811] - mm/hugetlb: not necessary to coalesce regions recursively (Waiman Long) [2032811] - selftests/vm/write_to_hugetlbfs.c: fix unused variable warning (Waiman Long) [2032811] - hugetlb_cgroup: add hugetlb_cgroup reservation tests (Waiman Long) [2032811] - hugetlb: support file_region coalescing again (Waiman Long) [2032811] - hugetlb_cgroup: support noreserve mappings (Waiman Long) [2032811] - hugetlb_cgroup: add accounting for shared mappings (Waiman Long) [2032811] - hugetlb: disable region_add file_region coalescing (Waiman Long) [2032811] - hugetlb_cgroup: add reservation accounting for private mappings (Waiman Long) [2032811] - mm/hugetlb_cgroup: fix hugetlb_cgroup migration (Waiman Long) [2032811] - hugetlb_cgroup: add interface for charge/uncharge hugetlb reservations (Waiman Long) [2032811] - hugetlb_cgroup: add hugetlb_cgroup reservation counter (Waiman Long) [2032811] - mm/vma: move VM_NO_KHUGEPAGED into generic header (Waiman Long) [2032811] - mm/cma.c: switch to bitmap_zalloc() for cma bitmap allocation (Waiman Long) [2032811] - hugetlb: remove duplicated code (Waiman Long) [2032811] - hugetlb: region_chg provides only cache entry (Waiman Long) [2032811] - arm64/mm: Refactor __do_page_fault() (Waiman Long) [2032811] - arm64/mm: Drop task_struct argument from __do_page_fault() (Waiman Long) [2032811] - hugetlbfs: always use address space in inode for resv_map pointer (Waiman Long) [2032811] - mm: remove redundant 'default n' from Kconfig-s (Waiman Long) [2032811] - hugetlbfs: fix potential over/underflow setting node specific nr_hugepages (Waiman Long) [2032811] - hugetlb: allow to free gigantic pages regardless of the configuration (Waiman Long) [2032811] - mm/cma.c: fix crash on CMA allocation if bitmap allocation fails (Waiman Long) [2032811] - mm/cma.c: fix the bitmap status to show failed allocation reason (Waiman Long) [2032811] - mm/cma_debug.c: fix the break condition in cma_maxchunk_get() (Waiman Long) [2032811] - mm: no need to check return value of debugfs_create functions (Waiman Long) [2032811] - x86/mm: Break out user address space handling (Waiman Long) [2032811] - fs: add vfs_parse_fs_param_source() helper (Waiman Long) [2034609] - cgroup: verify that source is a string (Waiman Long) [2034609] - ice: Fix E810 PTP reset flow (Jonathan Toppins) [2013478] - ice: Use div64_u64 instead of div_u64 in adjfine (Jonathan Toppins) [2013478] - ice: Don't put stale timestamps in the skb (Jonathan Toppins) [2013478] - ice: Fix problems with DSCP QoS implementation (Jonathan Toppins) [2030400] - ice: fix software generating extra interrupts (Jonathan Toppins) [2030400] - ice: fix rate limit update after coalesce change (Jonathan Toppins) [2030400] - ice: update dim usage and moderation (Jonathan Toppins) [2030400] - ice: make use of ice_for_each_* macros (Jonathan Toppins) [2030400] - ice: Remove boolean vlan_promisc flag from function (Jonathan Toppins) [2030400] - ice: check whether PTP is initialized in ice_ptp_release() (Jonathan Toppins) [2030400] - ice: devlink: Make devlink_register to be void (Jonathan Toppins) [2030400] - ice: split ice_ring onto Tx/Rx separate structs (Jonathan Toppins) [2030400] - ice: Prefer kcalloc over open coded arithmetic (Jonathan Toppins) [2030400] - ice: Fix macro name for IPv4 fragment flag (Jonathan Toppins) [2030400] - ice: refactor devlink getter/fallback functions to void (Jonathan Toppins) [2030400] - ice: Fix link mode handling (Jonathan Toppins) [2030400] - ice: Add feature bitmap, helpers and a check for DSCP (Jonathan Toppins) [2030400] - ice: Add DSCP support (Jonathan Toppins) [2030400]- fanotify: Make waits for fanotify events only killable (Miklos Szeredi) [1897416] - fanotify: Use interruptible wait when waiting for permission events (Miklos Szeredi) [1897416] - fanotify: Track permission event state (Miklos Szeredi) [1897416] - fanotify: Simplify cleaning of access_list (Miklos Szeredi) [1897416] - fsnotify: Create function to remove event from notification list (Miklos Szeredi) [1897416] - fanotify: Move locking inside get_one_event() (Miklos Szeredi) [1897416] - fanotify: Fold dequeue_event() into process_access_response() (Miklos Szeredi) [1897416] - fanotify: rename struct fanotify_{,perm_}event_info (Miklos Szeredi) [1897416] - RDMA/mlx5: Fix crash when unbind multiport slave (Amir Tzin) [1997386] - redhat: Fix mock.cfg cleanup in redhat/Makefile (Benjamin Coddington) - timekeeping: Use proper clock specifier names in functions (Josef Oskera) [2026471] - leds: ledtrig-activity: use ktime_get_boot_ns() (Josef Oskera) [2026471] - iio: use timespec64 based interfaces for iio_get_time_ns() (Josef Oskera) [2026471] - drivers: net: netdevsim: fix devlink_trap selftests failing (Petr Oros) [2021837] - netdevsim: remove max_vfs dentry (Petr Oros) [2021837] - netdevsim: Fix unsigned being compared to less than zero (Petr Oros) [2021837] - devlink: Protect rate list with lock while switching modes (Petr Oros) [2021837] - devlink: Remove eswitch mode check for mode set call (Petr Oros) [2021837] - devlink: Decrease refcnt of parent rate object on leaf destroy (Petr Oros) [2021837] - docs: networking: devlink: avoid using ReST :doc:`foo` markup (Petr Oros) [2021837] - testing: selftests: drivers: net: netdevsim: devlink: add test case for hard drop statistics (Petr Oros) [2021837] - drivers: net: netdevsim: add devlink trap_drop_counter_get implementation (Petr Oros) [2021837] - testing: selftests: net: forwarding: add devlink-required functionality to test (hard) dropped stats field (Petr Oros) [2021837] - net: core: devlink: add dropped stats traps field (Petr Oros) [2021837] - devlink: Fix error message in devlink_rate_set_ops_supported() (Petr Oros) [2021837] - Documentation: devlink rate objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate grouping test (Petr Oros) [2021837] - netdevsim: Allow setting parent node of rate objects (Petr Oros) [2021837] - devlink: Allow setting parent node of rate objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate nodes test (Petr Oros) [2021837] - netdevsim: Implement support for devlink rate nodes (Petr Oros) [2021837] - devlink: Introduce rate nodes (Petr Oros) [2021837] - selftest: netdevsim: Add devlink port shared/max tx rate test (Petr Oros) [2021837] - netdevsim: Implement devlink rate leafs tx rate support (Petr Oros) [2021837] - devlink: Allow setting tx rate for devlink rate leaf objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate test (Petr Oros) [2021837] - netdevsim: Register devlink rate leaf objects per VF (Petr Oros) [2021837] - devlink: Introduce rate object (Petr Oros) [2021837] - netdevsim: Implement legacy/switchdev mode for VFs (Petr Oros) [2021837] - netdevsim: Implement VFs (Petr Oros) [2021837] - netdevsim: Implement port types and indexing (Petr Oros) [2021837] - netdevsim: Disable VFs on nsim_dev_reload_destroy() call (Petr Oros) [2021837] - netdevsim: Add max_vfs to bus_dev (Petr Oros) [2021837] - devlink: append split port number to the port name (Petr Oros) [2021837] - devlink: Correct VIRTUAL port to not have phys_port attributes (Petr Oros) [2021837] - docs: net: add missing devlink health cmd - trigger (Petr Oros) [2021837] - docs: net: tweak devlink health documentation (Petr Oros) [2021837] - devlink: fix typo in documentation (Petr Oros) [2021837] - devlink: Extend devlink port documentation for subfunctions (Petr Oros) [2021837] - udp: Validate checksum in udp_read_sock() (Jiri Benc) [1947007] - bpf, sockmap: sk_skb data_end access incorrect when src_reg = dst_reg (Jiri Benc) [1947007] - bpf: sockmap, strparser, and tls are reusing qdisc_skb_cb and colliding (Jiri Benc) [1947007] - selftests, bpf: Add one test for sockmap with strparser (Jiri Benc) [1947007] - selftests, bpf: Fix test_txmsg_ingress_parser error (Jiri Benc) [1947007] - skmsg: Lose offset info in sk_psock_skb_ingress (Jiri Benc) [1947007] - bpf, sockmap: Fix potential memory leak on unlikely error case (Jiri Benc) [1947007] - tcp_bpf: Fix one concurrency problem in the tcp_bpf_send_verdict function (Jiri Benc) [1947007] - bpf, sockmap, tcp: sk_prot needs inuse_idx set for proc stats (Jiri Benc) [1947007] - bpf, sockmap: Fix memleak on ingress msg enqueue (Jiri Benc) [1947007] - bpf, sockmap: On cleanup we additionally need to remove cached skb (Jiri Benc) [1947007] - skmsg: Increase sk->sk_drops when dropping packets (Jiri Benc) [1947007] - skmsg: Pass source psock to sk_psock_skb_redirect() (Jiri Benc) [1947007] - skmsg: Teach sk_psock_verdict_apply() to return errors (Jiri Benc) [1947007] - skmsg: Fix a memory leak in sk_psock_verdict_apply() (Jiri Benc) [1947007] - skmsg: Clear skb redirect pointer before dropping it (Jiri Benc) [1947007] - udp: Fix a memory leak in udp_read_sock() (Jiri Benc) [1947007] - selftests/bpf: Retry for EAGAIN in udp_redir_to_connected() (Jiri Benc) [1947007] - skmsg: Improve udp_bpf_recvmsg() accuracy (Jiri Benc) [1947007] - bpf: Limit static tcp-cc functions in the .BTF_ids list to x86 (Jiri Benc) [1947007] - flow_dissector: Fix out-of-bounds warning in __skb_flow_bpf_to_target() (Jiri Benc) [1947007] - sock_map: Fix a potential use-after-free in sock_map_close() (Jiri Benc) [1947007] - skmsg: Pass psock pointer to ->psock_update_sk_prot() (Jiri Benc) [1947007] - bpf, udp: Remove some pointless comments (Jiri Benc) [1947007] - selftests/bpf: Add a test case for loading BPF_SK_SKB_VERDICT (Jiri Benc) [1947007] - selftests/bpf: Add a test case for udp sockmap (Jiri Benc) [1947007] - sock_map: Update sock type checks for UDP (Jiri Benc) [1947007] - udp: Implement udp_bpf_recvmsg() for sockmap (Jiri Benc) [1947007] - skmsg: Extract __tcp_bpf_recvmsg() and tcp_bpf_wait_data() (Jiri Benc) [1947007] - udp: Implement ->read_sock() for sockmap (Jiri Benc) [1947007] - sock: Introduce sk->sk_prot->psock_update_sk_prot() (Jiri Benc) [1947007] - sock_map: Introduce BPF_SK_SKB_VERDICT (Jiri Benc) [1947007] - sock_map: Kill sock_map_link_no_progs() (Jiri Benc) [1947007] - sock_map: Simplify sock_map_link() a bit (Jiri Benc) [1947007] - skmsg: Use GFP_KERNEL in sk_psock_create_ingress_msg() (Jiri Benc) [1947007] - skmsg: Use rcu work for destroying psock (Jiri Benc) [1947007] - skmsg: Avoid lock_sock() in sk_psock_backlog() (Jiri Benc) [1947007] - net: Introduce skb_send_sock() for sock_map (Jiri Benc) [1947007] - skmsg: Introduce a spinlock to protect ingress_msg (Jiri Benc) [1947007] - skmsg: Lock ingress_skb when purging (Jiri Benc) [1947007] - bpf: tcp: Limit calling some tcp cc functions to CONFIG_DYNAMIC_FTRACE (Jiri Benc) [1947007] - bpf: tcp: Fix an error in the bpf_tcp_ca_kfunc_ids list (Jiri Benc) [1947007] - bpf: tcp: Remove comma which is causing build error (Jiri Benc) [1947007] - bpf: tcp: Put some tcp cong functions in allowlist for bpf-tcp-cc (Jiri Benc) [1947007] - tcp: Rename bictcp function prefix to cubictcp (Jiri Benc) [1947007] - bpf: Add getter and setter for SO_REUSEPORT through bpf_{g,s}etsockopt (Jiri Benc) [1947007] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Jiri Benc) [1947007] - xsk: Update rings for load-acquire/store-release barriers (Jiri Benc) [1947007] - skmsg: Add function doc for skb->_sk_redir (Jiri Benc) [1947007] - skmsg: Remove unused sk_psock_stop() declaration (Jiri Benc) [1947007] - skmsg: Get rid of sk_psock_bpf_run() (Jiri Benc) [1947007] - skmsg: Make __sk_psock_purge_ingress_msg() static (Jiri Benc) [1947007] - sock_map: Make sock_map_prog_update() static (Jiri Benc) [1947007] - sock_map: Rename skb_parser and skb_verdict (Jiri Benc) [1947007] - skmsg: Move sk_redir from TCP_SKB_CB to skb (Jiri Benc) [1947007] - bpf: Compute data_end dynamically with JIT code (Jiri Benc) [1947007] - skmsg: Get rid of struct sk_psock_parser (Jiri Benc) [1947007] - bpf: Clean up sockmap related Kconfigs (Jiri Benc) [1947007] - xsk: Build skb by page (aka generic zerocopy xmit) (Jiri Benc) [1947007] - xsk: Respect device's headroom and tailroom on generic xmit path (Jiri Benc) [1947007] - virtio-net: Support IFF_TX_SKB_NO_LINEAR flag (Jiri Benc) [1947007] - net: Add priv_flags for allow tx skb without linear (Jiri Benc) [1947007] - netdevice: Add missing IFF_PHONY_HEADROOM self-definition (Jiri Benc) [1947007] - skmsg: Make sk_psock_destroy() static (Jiri Benc) [1947007] - skmsg: Use fallthrough pseudo-keyword (Jiri Benc) [1947007] - net: dev_is_mac_header_xmit() true for ARPHRD_RAWIP (Jiri Benc) [1947007] - virtio_net: Account for tx bytes and packets on sending xdp_frames (Jiri Benc) [1947007] - inet: udp{4|6}_lib_lookup_skb() skb argument is const (Jiri Benc) [1947007] - inet: constify inet_sdif() argument (Jiri Benc) [1947007] - udp: move gro declarations to net/udp.h (Jiri Benc) [1947007] - net: move tcp gro declarations to net/tcp.h (Jiri Benc) [1947007] - tcp: add declarations to avoid warnings (Jiri Benc) [1947007] - tcp: remove indirect calls for icsk->icsk_af_ops->send_check (Jiri Benc) [1947007] - tcp: remove indirect calls for icsk->icsk_af_ops->queue_xmit (Jiri Benc) [1947007] - net: remove unused skb_send_sock() (Jiri Benc) [1947007] - net: Use skb_frag_off accessors (Jiri Benc) [1947007] - net: Use skb accessors in network core (Jiri Benc) [1947007] - skbuff: fix compilation warnings in skb_dump() (Jiri Benc) [1947007] - skbuff: increase verbosity when dumping skb data (Jiri Benc) [1947007] - net: dump more useful information in netdev_rx_csum_fault() (Jiri Benc) [1947007] - net: avoid indirect calls in L4 checksum calculation (Jiri Benc) [1947007] - net/core: Allow the compiler to verify declaration and definition consistency (Jiri Benc) [1947007] - efi/arm64: Drop erroneous '__pure' attribute from set_nokaslr() (Vitaly Kuznetsov) [2026995] - drm/nouveau: clean up all clients on device removal (Karol Herbst) [1901903] {CVE-2020-27820} - drm/nouveau: Add a dedicated mutex for the clients list (Karol Herbst) [1901903] {CVE-2020-27820} - drm/nouveau: use drm_dev_unplug() during device removal (Karol Herbst) [1901903] {CVE-2020-27820} - block: avoid to quiesce queue in elevator_init_mq (Ming Lei) [2025759] - blk-mq: cancel blk-mq dispatch work in both blk_cleanup_queue and disk_release() (Ming Lei) [2021399] - PCI/portdrv: Enable Bandwidth Notification only if port supports it (Myron Stowe) [1981738] - cifs: keep referral server sessions alive (Ronnie Sahlberg) [2030880] - cifs: check pointer before freeing (Ronnie Sahlberg) [2030880] - cifs: constify path argument of ->make_node() (Ronnie Sahlberg) [2030880] - cifs: constify get_normalized_path() properly (Ronnie Sahlberg) [2030880] - cifs: don't cargo-cult strndup() (Ronnie Sahlberg) [2030880] - cifs: cleanup misc.c (Ronnie Sahlberg) [2030880] - cifs: get rid of @noreq param in __dfs_cache_find() (Ronnie Sahlberg) [2030880] - cifs: do not send tree disconnect to ipc shares (Ronnie Sahlberg) [2030880] - cifs: fix doc warnings in cifs_dfs_ref.c (Ronnie Sahlberg) [2030880] - cifs: introduce helper for finding referral server to improve DFS target resolution (Ronnie Sahlberg) [2030880] - cifs: check all path components in resolved dfs target (Ronnie Sahlberg) [2030880] - cifs: fix DFS failover (Ronnie Sahlberg) [2030880] - Enable CONFIG_SCHED_CLUSTER (Phil Auld) [1920645] - sched,x86: Don't use cluster topology for x86 hybrid CPUs (Phil Auld) [1920645] - arch_topology: Fix missing clear cluster_cpumask in remove_cpu_topology() (Phil Auld) [1920645] - x86/smp: Factor out parts of native_smp_prepare_cpus() (Phil Auld) [1920645] - sched,x86: Fix L2 cache mask (Phil Auld) [1920645] - sched: Add cluster scheduler level for x86 (Phil Auld) [1920645] - sched: Add cluster scheduler level in core and related Kconfig for ARM64 (Phil Auld) [1920645] - topology: Represent clusters of CPUs within a die (Phil Auld) [1920645] - cpumask: Omit terminating null byte in cpumap_print_{list,bitmask}_to_buf (Phil Auld) [1920645] - drivers/base/node.c: use bin_attribute to break the size limitation of cpumap ABI (Phil Auld) [1920645] - topology: use bin_attribute to break the size limitation of cpumap ABI (Phil Auld) [1920645] - cpumask: introduce cpumap_print_list/bitmask_to_buf to support large bitmask and list (Phil Auld) [1920645] - x86/cpu: Add get_llc_id() helper function (Phil Auld) [1920645] - x86/smp: Add a per-cpu view of SMT state (Phil Auld) [1920645] - ARM: 8943/1: Fix topology setup in case of CPU hotplug for CONFIG_SCHED_MC (Phil Auld) [1920645] - arm: Use common cpu_topology structure and functions. (Phil Auld) [1920645] - cpu-topology: Move cpu topology code to common code. (Phil Auld) [1920645] - netfilter: ctnetlink: allow to filter dump by status bits (Florian Westphal) [1991526] - netfilter: ctnetlink: add and use a helper for mark parsing (Florian Westphal) [1991526] - netfilter: ctnetlink: suspicious RCU usage in ctnetlink_dump_helpinfo (Florian Westphal) [1991526] - netfilter: ctnetlink: add timeout and protoinfo to destroy events (Florian Westphal) [1991526] - netfilter: ctnetlink: fix mark based dump filtering regression (Florian Westphal) [1991526] - netfilter: ctnetlink: memleak in filter initialization error path (Florian Westphal) [1991526] - netfilter: ctnetlink: add kernel side filtering for dump (Florian Westphal) [1991526] - netfilter: ctnetlink: don't dump ct extensions of unconfirmed conntracks (Florian Westphal) [1991526] - netfilter: ctnetlink: be more strict when NF_CONNTRACK_MARK is not set (Florian Westphal) [1991526] - netfilter: ctnetlink: Fix regression in conntrack entry deletion (Florian Westphal) [1991526] - netfilter: ctnetlink: Resolve conntrack L3-protocol flush regression (Florian Westphal) [1991526] - netfilter: ctnetlink: always honor CTA_MARK_MASK (Florian Westphal) [1991526] - netfilter: ctnetlink: must check mark attributes vs NULL (Florian Westphal) [1991526] - netfilter: ctnetlink: Support L3 protocol-filter on flush (Florian Westphal) [1991526] - netfilter: nftables: fix incorrect increment of loop counter (Phil Sutter) [1983635] - netfilter: nf_tables: initialize set before expression setup (Phil Sutter) [1983635] - netfilter: nftables: add set expression flags (Phil Sutter) [1983635] - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature (Phil Sutter) [1983635] - netfilter: nft_dynset: dump expressions when set definition contains no expressions (Phil Sutter) [1983635] - netfilter: nft_dynset: honor stateful expressions in set definition (Phil Sutter) [1983635] - netfilter: nf_tables: do not leave dangling pointer in nf_tables_set_alloc_name (Phil Sutter) [1983635] - netfilter: nftables: clone set element expression template (Phil Sutter) [1983635] - netfilter: nftables: relax check for stateful expressions in set definition (Phil Sutter) [1983635] - netfilter: nftables: netlink support for several set element expressions (Phil Sutter) [1983635] - netfilter: nf_tables: skip set types that do not support for expressions (Phil Sutter) [1983635] - netfilter: nft_dynset: allow dynamic updates of non-anonymous set (Phil Sutter) [1983635] - netfilter: nftables: generalize set extension to support for several expressions (Phil Sutter) [1983635] - netfilter: nf_tables: do not update stateful expressions if lookup is inverted (Phil Sutter) [1983635] - netfilter: nftables: move nft_expr before nft_set (Phil Sutter) [1983635] - netfilter: nf_tables: Align nft_expr private data to 64-bit (Phil Sutter) [1983635] - netfilter: nftables: generalize set expressions support (Phil Sutter) [1983635] - netfilter: nft_dynset: validate set expression definition (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_expr_destroy() and use it (Phil Sutter) [1983635] - netfilter: nf_tables: fix double-free on set expression from the error path (Phil Sutter) [1983635] - netfilter: nf_tables: allow to specify stateful expression in set definition (Phil Sutter) [1983635] - netfilter: nf_tables: bogus EBUSY when deleting set after flush (Phil Sutter) [1983635] - netfilter: nf_tables: pass context to nft_set_destroy() (Phil Sutter) [1983635] - netfilter: nf_tables: move nft_expr_clone() to nf_tables_api.c (Phil Sutter) [1983635] - netfilter: nf_tables: relocate header content to consumer (Phil Sutter) [1983635] - netfilter: nft_lookup: update element stateful expression (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_update_expr() helper function (Phil Sutter) [1983635] - netfilter: nf_tables: add elements with stateful expressions (Phil Sutter) [1983635] - netfilter: nf_tables: statify nft_expr_init() (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_expr_alloc() (Phil Sutter) [1983635] - netfilter: nf_tables: enable set expiration time for set elements (Phil Sutter) [1983635] - hugetlbfs: flush TLBs correctly after huge_pmd_unshare (Rafael Aquini) [2026376] {CVE-2021-4002} - tlb: mmu_gather: add tlb_flush_*_range APIs (Rafael Aquini) [2026376] {CVE-2021-4002} - ACPI: PM: Do not turn off power resources in unknown state (Mark Langsdorf) [1997696] - ACPI: PRM: Find PRMT table before parsing it (Mark Langsdorf) [1997696] - ACPI: NFIT: Fix support for virtual SPA ranges (Mark Langsdorf) [1997696] - ACPI: DPTF: Fix reading of attributes (Mark Langsdorf) [1997696] - ACPI: PM: Add support for upcoming AMD uPEP HID AMDI007 (Mark Langsdorf) [1997696] - ACPI: Kconfig: Fix table override from built-in initrd (Mark Langsdorf) [1997696] - ACPI: video: Add quirk for the Dell Vostro 3350 (Mark Langsdorf) [1997696] - ACPI: AMBA: Fix resource name in /proc/iomem (Mark Langsdorf) [1997696] - ACPI: PM: postpone bringing devices to D0 unless we need them (Mark Langsdorf) [1997696] - ACPI: tables: Add custom DSDT file as makefile prerequisite (Mark Langsdorf) [1997696] - ACPI: bgrt: Use sysfs_emit (Mark Langsdorf) [1997696] - ACPI: bgrt: Fix CFI violation (Mark Langsdorf) [1997696] - ACPI: EC: trust DSDT GPE for certain HP laptop (Mark Langsdorf) [1997696] - ACPI: scan: Simplify acpi_table_events_fn() (Mark Langsdorf) [1997696] - ACPI: sysfs: Remove tailing return statement in void function (Mark Langsdorf) [1997696] - ACPI: sysfs: Use __ATTR_RO() and __ATTR_RW() macros (Mark Langsdorf) [1997696] - ACPI: sysfs: Sort headers alphabetically (Mark Langsdorf) [1997696] - ACPI: sysfs: Refactor param_get_trace_state() to drop dead code (Mark Langsdorf) [1997696] - ACPI: sysfs: Unify pattern of memory allocations (Mark Langsdorf) [1997696] - ACPI: sysfs: Allow bitmap list to be supplied to acpi_mask_gpe (Mark Langsdorf) [1997696] - ACPI: sysfs: Make sparse happy about address space in use (Mark Langsdorf) [1997696] - ACPI: scan: Fix race related to dropping dependencies (Mark Langsdorf) [1997696] - ACPI: scan: Reorganize acpi_device_add() (Mark Langsdorf) [1997696] - ACPI: scan: Fix device object rescan in acpi_scan_clear_dep() (Mark Langsdorf) [1997696] - ACPI: scan: Make acpi_walk_dep_device_list() (Mark Langsdorf) [1997696] - ACPI: scan: Rearrange acpi_dev_get_first_consumer_dev_cb() (Mark Langsdorf) [1997696] - ACPI: scan: Define acpi_bus_put_acpi_device() as static inline (Mark Langsdorf) [1997696] - ACPI: NVS: fix doc warnings in nvs.c (Mark Langsdorf) [1997696] - ACPI: sysfs: fix doc warnings in device_sysfs.c (Mark Langsdorf) [1997696] - ACPI: APEI: fix synchronous external aborts in user-mode (Mark Langsdorf) [1997696] - mfd: tps68470: Remove tps68470 MFD driver (Mark Langsdorf) [1997696] - ACPI: power: Use dev_dbg() to print some messages (Mark Langsdorf) [1997696] - ACPI: Add quirks for AMD Renoir/Lucienne CPUs to force the D3 hint (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Fix several coding style issues (Mark Langsdorf) [1997696] - ACPI: sysfs: Drop four redundant return statements (Mark Langsdorf) [1997696] - ACPI: video: Drop three redundant return statements (Mark Langsdorf) [1997696] - ACPI: sleep: Fix acpi_pm_pre_suspend() kernel-doc (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Remove redundant initialization of 'obj' (Mark Langsdorf) [1997696] - ACPI: utils: Introduce acpi_get_local_address() (Mark Langsdorf) [1997696] - ACPI: scan: initialize local variable to avoid garbage being returned (Mark Langsdorf) [1997696] - ACPI: Remove redundant clearing of context->ret.pointer from acpi_run_osc() (Mark Langsdorf) [1997696] - redhat/configs: Add Enable CONFIG_ACPI_PRMT (Mark Langsdorf) [1997696] - ACPI: PRM: Deal with table not present or no module found (Mark Langsdorf) [1997696] - ACPI: Do not singal PRM support if not enabled (Mark Langsdorf) [1997696] - ACPI: Kconfig: Provide help text for the ACPI_PRMT option (Mark Langsdorf) [1997696] - ACPI: PRM: make symbol 'prm_module_list' static (Mark Langsdorf) [1997696] - ACPI: Correct \_SB._OSC bit definition for PRM (Mark Langsdorf) [1997696] - ACPI: Add \_SB._OSC bit for PRM (Mark Langsdorf) [1997696] - ACPI: PRM: implement OperationRegion handler for the PlatformRtMechanism subtype (Mark Langsdorf) [1997696] - ACPICA: Add PRMT module header to facilitate parsing (Mark Langsdorf) [1997696] - ACPI: scan: Add function to fetch dependent of ACPI device (Mark Langsdorf) [1997696] - ACPI: scan: Extend acpi_walk_dep_device_list() (Mark Langsdorf) [1997696] - i2c: core: Restore acpi_walk_dep_device_list() getting called after registering the ACPI i2c devs (Mark Langsdorf) [1997696] - ACPI: NUMA: fix typo in a comment (Mark Langsdorf) [1997696] - ACPI: sysfs: Fix a buffer overrun problem with description_show() (Mark Langsdorf) [1997696] - ACPI: LPSS: Use kstrtol() instead of simple_strtol() (Mark Langsdorf) [1997696] - ACPI: tables: FPDT: Add missing acpi_put_table() in acpi_init_fpdt() (Mark Langsdorf) [1997696] - ACPI: tables: PPTT: Populate cache-id if provided by firmware (Mark Langsdorf) [1997696] - ACPI: OSL: Use DEFINE_RES_IO_NAMED() to simplify code (Mark Langsdorf) [1997696] - ACPI: bus: Call kobject_put() in acpi_init() error path (Mark Langsdorf) [1997696] - ACPI: bus: Remove unneeded assignment (Mark Langsdorf) [1997696] - ACPI: sleep: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: sbs: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: scan: Unify the log message printing (Mark Langsdorf) [1997696] - ACPI: sbshc: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: sysfs: Cleanup message printing (Mark Langsdorf) [1997696] - ACPI: reboot: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Cleanup the printing messages (Mark Langsdorf) [1997696] - ACPI: processor_perflib: Cleanup print messages (Mark Langsdorf) [1997696] - ACPI: processor_thermal: Remove unused PREFIX for printing (Mark Langsdorf) [1997696] - ACPI: pci_root: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: osl: Remove the duplicated PREFIX for message printing (Mark Langsdorf) [1997696] - ACPI: nvs: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: glue: Clean up the printing messages (Mark Langsdorf) [1997696] - ACPI: event: Use pr_*() macros to replace printk() (Mark Langsdorf) [1997696] - ACPI: bus: Use pr_*() macros to replace printk() (Mark Langsdorf) [1997696] - ACPI: blacklist: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: cmos_rtc: Using pr_fmt() and remove PREFIX (Mark Langsdorf) [1997696] - ACPI: scan: Constify acpi_dma_supported() helper function (Mark Langsdorf) [1997696] - ACPICA: Update version to 20210604 (Mark Langsdorf) [1997696] - ACPICA: Add support for PlatformRtMechanism OperationRegion handler (Mark Langsdorf) [1997696] - ACPICA: iASL: add disassembler support for PRMT (Mark Langsdorf) [1997696] - ACPICA: Add the CFMWS structure definition to the CEDT table (Mark Langsdorf) [1997696] - ACPICA: Add defines for the CXL Host Bridge Structure (CHBS) (Mark Langsdorf) [1997696] - ACPICA: iASL: Add support for the BDAT ACPI table (Mark Langsdorf) [1997696] - ACPICA: Add _PLD panel positions (Mark Langsdorf) [1997696] - ACPICA: Use ACPI_FALLTHROUGH (Mark Langsdorf) [1997696] - ACPICA: iASL Table Compiler: Add full support for RGRT ACPI table (Mark Langsdorf) [1997696] - ACPICA: iASL: Add support for the SVKL table (Mark Langsdorf) [1997696] - ACPICA: iASL: Finish support for the IVRS ACPI table (Mark Langsdorf) [1997696] - ACPICA: Add SVKL table headers (Mark Langsdorf) [1997696] - ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Mailbox Structure (Mark Langsdorf) [1997696] - ACPI: power: Rework turning off unused power resources (Mark Langsdorf) [1997696] - ACPI: power: Save the last known state of each power resource (Mark Langsdorf) [1997696] - ACPI: power: Use u8 as the power resource state data type (Mark Langsdorf) [1997696] - ACPI: configfs: Replace ACPI_INFO() with pr_debug() (Mark Langsdorf) [1997696] - ACPI: ipmi: Remove address space handler in error path (Mark Langsdorf) [1997696] - ACPI: EC: Make more Asus laptops use ECDT _GPE (Mark Langsdorf) [1997696] - ACPI: event: Remove redundant initialization of local variable (Mark Langsdorf) [1997696] - ACPI: sbshc: Fix fall-through warning for Clang (Mark Langsdorf) [1997696] - ACPI: PM / fan: Put fan device IDs into separate header file (Mark Langsdorf) [1997696] - ACPI: APEI: Don't warn if ACPI is disabled (Mark Langsdorf) [1997696] - ACPI: processor idle: Fix up C-state latency if not ordered (Mark Langsdorf) [1997696] - ACPI: scan: Rearrange dep_unmet initialization (Mark Langsdorf) [1997696] - ACPI: DPTF: Add battery participant for Intel SoCs (Mark Langsdorf) [1997696] - md/raid5: avoid device_lock in read_one_chunk() (Nigel Croxon) [1985919] - md: add comments in md_integrity_register (Nigel Croxon) [1985919] - md: check level before create and exit io_acct_set (Nigel Croxon) [1985919] - md/raid10: enable io accounting (Nigel Croxon) [1985919] - md/raid1: enable io accounting (Nigel Croxon) [1985919] - md/raid5: avoid redundant bio clone in raid5_read_one_chunk (Nigel Croxon) [1985919] - md/raid5: move checking badblock before clone bio in raid5_read_one_chunk (Nigel Croxon) [1985919] - md: add io accounting for raid0 and raid5 (Nigel Croxon) [1985919] - md: revert io stats accounting (Nigel Croxon) [1985919] - md/raid5: remove an incorrect assert in in_chunk_boundary (Nigel Croxon) [1985919] - md: use rdev_read_only in restart_array (Nigel Croxon) [1985919] - md/raid6: refactor raid5_read_one_chunk (Nigel Croxon) [1985919] - md: remove md_bio_alloc_sync (Nigel Croxon) [1985919] - md: simplify sync_page_io (Nigel Croxon) [1985919] - md: remove bio_alloc_mddev (Nigel Croxon) [1985919] - md: use part_[begin|end]_io_acct instead of disk_[begin|end]_io_acct (Nigel Croxon) [1985919] - md: improve io stats accounting (Nigel Croxon) [1985919]- ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970663] - igbvf: convert to strongly typed descriptors (Corinna Vinschen) [1970663] - intel: call csum functions with well formatted arguments (Corinna Vinschen) [1970663] - igb: handle vlan types with checker enabled (Corinna Vinschen) [1970663] - igb: fix netpoll exit with traffic (Corinna Vinschen) [1970662] - igb: unbreak I2C bit-banging on i350 (Corinna Vinschen) [1970662] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970662] - igb: Avoid memcpy() over-reading of ETH_SS_STATS (Corinna Vinschen) [1970662] - igb: Add counter to i21x doublecheck (Corinna Vinschen) [1970662] - igb: Fix position of assignment to *ring (Corinna Vinschen) [1970662] - igb: Check if num of q_vectors is smaller than max before array access (Corinna Vinschen) [1970662] - igb: Fix an error handling path in 'igb_probe()' (Corinna Vinschen) [1970662] - igb: Fix use-after-free error during reset (Corinna Vinschen) [1970662] - intel: Remove rcu_read_lock() around XDP program invocation (Corinna Vinschen) [1970662] - igb: add correct exception tracing for XDP (Corinna Vinschen) [1970662] - igb: Fix XDP with PTP enabled (Corinna Vinschen) [1970662] - igb: Fix -Wunused-const-variable warning (Corinna Vinschen) [1970662] - igb: override two checker warnings (Corinna Vinschen) [1970662] - igb: fix assignment on big endian machines (Corinna Vinschen) [1970662] - igb: handle vlan types with checker enabled (Corinna Vinschen) [1970662] - igb/igc: use strongly typed pointer (Corinna Vinschen) [1970662] - intel: remove checker warning (Corinna Vinschen) [1970662] - i40e: Fix NULL pointer dereference in i40e_dbg_dump_desc (Stefan Assmann) [1970651] - i40e: Fix pre-set max number of queues for VF (Stefan Assmann) [1970651] - i40e: Fix failed opcode appearing if handling messages from VF (Stefan Assmann) [1970651] - i40e: Fix display error code in dmesg (Stefan Assmann) [1970651] - i40e: Fix creation of first queue by omitting it if is not power of two (Stefan Assmann) [1970651] - i40e: Fix warning message and call stack during rmmod i40e driver (Stefan Assmann) [1970651] - i40e: Fix ping is lost after configuring ADq on VF (Stefan Assmann) [1970651] - i40e: Fix changing previously set num_queue_pairs for PFs (Stefan Assmann) [1970651] - i40e: Fix NULL ptr dereference on VSI filter sync (Stefan Assmann) [1970651] - i40e: Fix correct max_pkt_size on VF RX queue (Stefan Assmann) [1970651] - ethernet: constify references to netdev->dev_addr in drivers (Stefan Assmann) [1970651] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Stefan Assmann) [1970651] - i40e: Fix ATR queue selection (Stefan Assmann) [1970651] - i40e: Fix spelling mistake "dissable" -> "disable" (Stefan Assmann) [1970651] - iavf: do not override the adapter state in the watchdog task (again) (Stefan Assmann) [1970650] - iavf: missing unlocks in iavf_watchdog_task() (Stefan Assmann) [1970650] - iavf: Fix reporting when setting descriptor count (Stefan Assmann) [1970650] - iavf: restore MSI state on reset (Stefan Assmann) [1970650] - iavf: Fix displaying queue statistics shown by ethtool (Stefan Assmann) [1970650] - iavf: Refactor string format to avoid static analysis warnings (Stefan Assmann) [1970650] - iavf: Refactor text of informational message (Stefan Assmann) [1970650] - iavf: Fix static code analysis warning (Stefan Assmann) [1970650] - iavf: Refactor iavf_mac_filter struct memory usage (Stefan Assmann) [1970650] - iavf: Enable setting RSS hash key (Stefan Assmann) [1970650] - iavf: Add trace while removing device (Stefan Assmann) [1970650] - iavf: return errno code instead of status code (Stefan Assmann) [1970650] - iavf: Log info when VF is entering and leaving Allmulti mode (Stefan Assmann) [1970650] - iavf: Add change MTU message (Stefan Assmann) [1970650] - iavf: Fix VLAN feature flags after VFR (Stefan Assmann) [1970650] - iavf: Fix refreshing iavf adapter stats on ethtool request (Stefan Assmann) [1970650] - iavf: Fix deadlock occurrence during resetting VF interface (Stefan Assmann) [1970650] - iavf: Prevent changing static ITR values if adaptive moderation is on (Stefan Assmann) [1970650] - iavf: Restore VLAN filters after link down (Stefan Assmann) [1970650] - iavf: Fix for setting queues to 0 (Stefan Assmann) [1970650] - iavf: Fix for the false positive ASQ/ARQ errors while issuing VF reset (Stefan Assmann) [1970650] - iavf: validate pointers (Stefan Assmann) [1970650] - iavf: prevent accidental free of filter structure (Stefan Assmann) [1970650] - iavf: Fix failure to exit out from last all-multicast mode (Stefan Assmann) [1970650] - iavf: don't clear a lock we don't hold (Stefan Assmann) [1970650] - iavf: free q_vectors before queues in iavf_disable_vf (Stefan Assmann) [1970650] - iavf: check for null in iavf_fix_features (Stefan Assmann) [1970650] - iavf: Fix return of set the new channel count (Stefan Assmann) [1970650] - iavf: Fix kernel BUG in free_msi_irqs (Stefan Assmann) [1970650] - iavf: Add helper function to go from pci_dev to adapter (Stefan Assmann) [1970650] - iavf: Combine init and watchdog state machines (Stefan Assmann) [1970650] - iavf: Add __IAVF_INIT_FAILED state (Stefan Assmann) [1970650] - iavf: Refactor iavf state machine tracking (Stefan Assmann) [1970650] - iavf: fix double unlock of crit_lock (Stefan Assmann) [1970650] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Stefan Assmann) [1970650] - iavf: Fix ping is lost after untrusted VF had tried to change MAC (Stefan Assmann) [1970650] - iavf: use mutexes for locking of critical sections (Stefan Assmann) [1970650] - qed: rdma - don't wait for resources under hw error recovery flow (Manish Chopra) [1998195] - qed: Handle management FW error (Manish Chopra) [1998195] - qede: Fix memset corruption (Manish Chopra) [1998195] - qed: Enable automatic recovery on error condition. (Manish Chopra) [1998195] - qed: Fix the VF msix vectors flow (Manish Chopra) [1998195] - qed: Fix null-pointer dereference in qed_rdma_create_qp() (Manish Chopra) [1998195] - qed: qed ll2 race condition fixes (Manish Chopra) [1998195] - qed: Remove duplicated include of kernel.h (Manish Chopra) [1998195] - qed: Remove redundant prints from the iWARP SYN handling (Manish Chopra) [1998195] - qed: Skip DORQ attention handling during recovery (Manish Chopra) [1998195] - qed: Avoid db_recovery during recovery (Manish Chopra) [1998195] - qede: fix crash in rmmod qede while automatic debug collection (Manish Chopra) [1998195] - RDMA/qedr: Improve error logs for rdma_alloc_tid error return (Manish Chopra) [1998195] - RDMA/qed: Use accurate error num in qed_cxt_dynamic_ilt_alloc (Manish Chopra) [1998195] - net: qed: remove unneeded return variables (Manish Chopra) [1998195] - net: qede: Fix end of loop tests for list_for_each_entry (Manish Chopra) [1998195] - qede: Remove rcu_read_lock() around XDP program invocation (Manish Chopra) [1998195] - net: qed: Fix memcpy() overflow of qed_dcbx_params() (Manish Chopra) [1998195] - net: qede: Use list_for_each_entry() to simplify code (Manish Chopra) [1998195] - qed: Fix duplicate included linux/kernel.h (Manish Chopra) [1998195] - qed: Add IP services APIs support (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload IO Level FW Initializations (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload IO Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add support of HW filter block (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload Connection Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload PF Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add TCP_ULP FW resource layout (Manish Chopra) [1998195] - net: qed: remove redundant initialization of variable rc (Manish Chopra) [1998195] - net: qed: remove unused including (Manish Chopra) [1998195] - qede: remove unused including (Manish Chopra) [1998195] - linux/qed: Mundane spelling fixes throughout the file (Manish Chopra) [1998195] - qed: Fix fall-through warnings for Clang (Manish Chopra) [1998195] - RDMA/qedr: Use true and false for bool variable (Manish Chopra) [1998195] - qede: preserve per queue stats across up/down of interface (Manish Chopra) [1998195] - qede: add per queue coalesce support for qede driver (Manish Chopra) [1998195] - qede: add netpoll support for qede driver (Manish Chopra) [1998195] - RDMA/qedr: Remove in_irq() usage from debug output (Manish Chopra) [1998195] - linux/qed: fix spelling typo in qed_chain.h (Manish Chopra) [1998195] - qed: select CONFIG_CRC32 (Manish Chopra) [1998195] - IB/qedr: Fix fall-through warnings for Clang (Manish Chopra) [1998195] - RDMA/qedr: Endianness warnings cleanup (Manish Chopra) [1998195] - qed/qed_ll2: Replace one-element array with flexible-array member (Manish Chopra) [1998195] - net: qed: use true,false for bool variables (Manish Chopra) [1998195] - RDMA/qedr: Fix reported max_pkeys (Manish Chopra) [1998195] - qed: align adjacent indent (Manish Chopra) [1998195] - qed: fix kconfig help entries (Manish Chopra) [1998195] - sched/cputime: Fix getrusage(RUSAGE_THREAD) with nohz_full (Phil Auld) [1992387] - net: tg3: fix obsolete check of !err (Ken Cox) [1987082] - net: broadcom: switch from 'pci_' to 'dma_' API (Ken Cox) [1987082] - tg3: Remove unused PHY_BRCM flags (Ken Cox) [1987082] - net: check skb sec_path when re-initializing slow_gro in gro_list_prepare (Xin Long) [2030476] - e1000e: Fix the max snoop/no-snoop latency for 10M (Ken Cox) [1970665] - net/e1000e: Fix spelling mistake "The" -> "This" (Ken Cox) [1970665] - e1000e: Add space to the debug print (Ken Cox) [1970665] - e1000e: Additional PHY power saving in S0ix (Ken Cox) [1970665] - e1000e: Add polling mechanism to indicate CSME DPG exit (Ken Cox) [1970665] - e1000e: Add handshake with the CSME to support S0ix (Ken Cox) [1970665] - e1000e: Fix an error handling path in 'e1000_probe()' (Ken Cox) [1970665] - e1000e: Check the PCIm state (Ken Cox) [1970665] - net: e1000e: fix misspell word "retreived" (Ken Cox) [1970665] - net: e1000e: remove repeated word "slot" for netdev.c (Ken Cox) [1970665] - net: e1000e: remove repeated word "the" for ich8lan.c (Ken Cox) [1970665] - ppc64: Fix incorrect qrwlock use in debug kernel (Waiman Long) [2027200] - locking: Remove spin_lock_flags() etc (Waiman Long) [2027200] - Bluetooth: btusb: Add one more Bluetooth part for WCN6855 (Gopal Tiwari) [2007903] - Bluetooth: btusb: Add the new support IDs for WCN6855 (Gopal Tiwari) [2007903] - Bluetooth: btusb: re-definition for board_id in struct qca_version (Gopal Tiwari) [2007903] - Bluetooth: btusb: Add support using different nvm for variant WCN6855 controller (Gopal Tiwari) [2007903] - bpf/selftests: enable atomic_bounds test (Viktor Malik) [2030572] - Revert "bpf: Remove atomics tests from test_progs" (Viktor Malik) [2030572] - bpf/selftests: disable tests failing on RHEL 8.6 (Viktor Malik) [2025797 2025801 2025810 2025812 2025813] - bpf/selftests: allow disabling prog_tests (Viktor Malik) [2030572] - xfs: drop experimental warnings for bigtime and inobtcount (Bill O'Donnell) [2022903] - libxfs: expose inobtcount in xfs geometry (Bill O'Donnell) [2022903] - xfs: enable new inode btree counters feature (Bill O'Donnell) [2022903] - xfs: enable big timestamps (Bill O'Donnell) [2022903] - selftests: net: bridge: fix typo in vlan_filtering dependency test (Ivan Vecera) [2019055] - selftests: net: bridge: add test for vlan_filtering dependency (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_router tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast query and query response interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_querier_interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_membership_interval test (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_startup_query_count/interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_last_member_count/interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast igmp/mld version tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast querier test (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast snooping control test (Ivan Vecera) [2019055] - selftests: net: bridge: update IGMP/MLD membership interval value (Ivan Vecera) [2019055] - net: bridge: mcast: use multicast_membership_interval for IGMPv3 (Ivan Vecera) [2019055] - net: bridge: fix under estimation in br_get_linkxstats_size() (Ivan Vecera) [2019055] - net: bridge: use nla_total_size_64bit() in br_get_linkxstats_size() (Ivan Vecera) [2019055] - net: bridge: mcast: Associate the seqcount with its protecting lock. (Ivan Vecera) [2019055] - net: bridge: mcast: fix vlan port router deadlock (Ivan Vecera) [2019055] - net: bridge: use mld2r_ngrec instead of icmpv6_dataun (Ivan Vecera) [2019055] - net: bridge: change return type of br_handle_ingress_vlan_tunnel (Ivan Vecera) [2019055] - net: bridge: vlan: convert mcast router global option to per-vlan entry (Ivan Vecera) [2019055] - net: bridge: mcast: br_multicast_set_port_router takes multicast context as argument (Ivan Vecera) [2019055] - net: bridge: mcast: toggle also host vlan state in br_multicast_toggle_vlan (Ivan Vecera) [2019055] - net: bridge: mcast: use the correct vlan group helper (Ivan Vecera) [2019055] - net: bridge: vlan: account for router port lists when notifying (Ivan Vecera) [2019055] - net: bridge: vlan: enable mcast snooping for existing master vlans (Ivan Vecera) [2019055] - net: bridge: mcast: account for ipv6 size when dumping querier state (Ivan Vecera) [2019055] - net: bridge: mcast: drop sizeof for nest attribute's zero size (Ivan Vecera) [2019055] - net: bridge: mcast: don't dump querier state if snooping is disabled (Ivan Vecera) [2019055] - net: bridge: vlan: dump mcast ctx querier state (Ivan Vecera) [2019055] - net: bridge: mcast: dump ipv6 querier state (Ivan Vecera) [2019055] - net: bridge: mcast: dump ipv4 querier state (Ivan Vecera) [2019055] - net: bridge: mcast: consolidate querier selection for ipv4 and ipv6 (Ivan Vecera) [2019055] - net: bridge: mcast: make sure querier port/address updates are consistent (Ivan Vecera) [2019055] - net: bridge: mcast: record querier port device ifindex instead of pointer (Ivan Vecera) [2019055] - net: bridge: vlan: use br_rports_fill_info() to export mcast router ports (Ivan Vecera) [2019055] - net: bridge: mcast: use the proper multicast context when dumping router ports (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast router global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast querier global option (Ivan Vecera) [2019055] - net: bridge: mcast: querier and query state affect only current context type (Ivan Vecera) [2019055] - net: bridge: mcast: move querier state to the multicast context (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast startup query interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast query response interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast query interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast querier interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast membership interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast last member interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast startup query count global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast last member count global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast igmp/mld version global options (Ivan Vecera) [2019055] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Ivan Vecera) [2019055] - net: bridge: fix flags interpretation for extern learn fdb entries (Ivan Vecera) [2019055] - net: bridge: vlan: fix global vlan option range dumping (Ivan Vecera) [2019055] - net: bridge: fix memleak in br_add_if() (Ivan Vecera) [2019055] - net: make switchdev_bridge_port_{,unoffload} loosely coupled with the bridge (Ivan Vecera) [2019055] - net: bridge: switchdev: fix incorrect use of FDB flags when picking the dst device (Ivan Vecera) [2019055] - net: bridge: validate the NUD_PERMANENT bit when adding an extern_learn FDB entry (Ivan Vecera) [2019055] - net: bridge: switchdev: treat local FDBs the same as entries towards the bridge (Ivan Vecera) [2019055] - net: bridge: switchdev: replay the entire FDB for each port (Ivan Vecera) [2019055] - net: bridge: add a helper for retrieving port VLANs from the data path (Ivan Vecera) [2019055] - net: bridge: update BROPT_VLAN_ENABLED before notifying switchdev in br_vlan_filter_toggle (Ivan Vecera) [2019055] - net: bridge: fix build when setting skb->offload_fwd_mark with CONFIG_NET_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: switchdev: allow the TX data plane forwarding to be offloaded (Ivan Vecera) [2019055] - net: switchdev: fix FDB entries towards foreign ports not getting propagated to us (Ivan Vecera) [2019055] - net: bridge: move the switchdev object replay helpers to "push" mode (Ivan Vecera) [2019055] - net: bridge: guard the switchdev replay helpers against a NULL notifier block (Ivan Vecera) [2019055] - net: bridge: switchdev: let drivers inform which bridge ports are offloaded (Ivan Vecera) [2019055] - net: bridge: switchdev: recycle unused hwdoms (Ivan Vecera) [2019055] - net: bridge: disambiguate offload_fwd_mark (Ivan Vecera) [2019055] - net: bridge: multicast: add context support for host-joined groups (Ivan Vecera) [2019055] - net: bridge: multicast: add mdb context support (Ivan Vecera) [2019055] - net: bridge: multicast: fix igmp/mld port context null pointer dereferences (Ivan Vecera) [2019055] - net: switchdev: recurse into __switchdev_handle_fdb_del_to_device (Ivan Vecera) [2019055] - net: switchdev: remove stray semicolon in switchdev_handle_fdb_del_to_device shim (Ivan Vecera) [2019055] - net: bridge: vlan: add mcast snooping control (Ivan Vecera) [2019055] - net: bridge: vlan: notify when global options change (Ivan Vecera) [2019055] - net: bridge: vlan: add support for dumping global vlan options (Ivan Vecera) [2019055] - net: bridge: vlan: add support for global options (Ivan Vecera) [2019055] - net: bridge: multicast: include router port vlan id in notifications (Ivan Vecera) [2019055] - net: bridge: multicast: add vlan querier and query support (Ivan Vecera) [2019055] - net: bridge: multicast: check if should use vlan mcast ctx (Ivan Vecera) [2019055] - net: bridge: multicast: use the port group to port context helper (Ivan Vecera) [2019055] - net: bridge: multicast: add helper to get port mcast context from port group (Ivan Vecera) [2019055] - net: bridge: add vlan mcast snooping knob (Ivan Vecera) [2019055] - net: bridge: multicast: add vlan state initialization and control (Ivan Vecera) [2019055] - net: bridge: vlan: add global and per-port multicast context (Ivan Vecera) [2019055] - net: bridge: multicast: use multicast contexts instead of bridge or port (Ivan Vecera) [2019055] - net: bridge: multicast: factor out bridge multicast context (Ivan Vecera) [2019055] - net: bridge: multicast: factor out port multicast context (Ivan Vecera) [2019055] - net: switchdev: introduce a fanout helper for SWITCHDEV_FDB_{ADD,DEL}_TO_DEVICE (Ivan Vecera) [2019055] - net: switchdev: introduce helper for checking dynamically learned FDB entries (Ivan Vecera) [2019055] - net: bridge: do not replay fdb entries pointing towards the bridge twice (Ivan Vecera) [2019055] - net: bridge: multicast: fix MRD advertisement router port marking race (Ivan Vecera) [2019055] - net: bridge: multicast: fix PIM hello router port marking race (Ivan Vecera) [2019055] - net: bridge: sync fdb to new unicast-filtering ports (Ivan Vecera) [2019055] - net: bridge: allow br_fdb_replay to be called for the bridge device (Ivan Vecera) [2019055] - net: bridge: switchdev: send FDB notifications for host addresses (Ivan Vecera) [2019055] - net: bridge: use READ_ONCE() and WRITE_ONCE() compiler barriers for fdb->dst (Ivan Vecera) [2019055] - net: bridge: allow the switchdev replay functions to be called for deletion (Ivan Vecera) [2019055] - net: bridge: constify variables in the replay helpers (Ivan Vecera) [2019055] - net: bridge: ignore switchdev events for LAG ports which didn't request replay (Ivan Vecera) [2019055] - net: switchdev: add a context void pointer to struct switchdev_notifier_info (Ivan Vecera) [2019055] - net: bridge: include the is_local bit in br_fdb_replay (Ivan Vecera) [2019055] - net: bridge: mrp: Update the Test frames for MRA (Ivan Vecera) [2019055] - bridge: cfm: remove redundant return (Ivan Vecera) [2019055] - net: bridge: remove redundant continue statement (Ivan Vecera) [2019055] - net: bridge: fix vlan tunnel dst refcnt when egressing (Ivan Vecera) [2019055] - net: bridge: fix vlan tunnel dst null pointer dereference (Ivan Vecera) [2019055] - net: bridge: mrp: Update ring transitions. (Ivan Vecera) [2019055] - net: bridge: remove redundant assignment (Ivan Vecera) [2019055] - net: bridge: fix br_multicast_is_router stub when igmp is disabled (Ivan Vecera) [2019055] - net: bridge: fix build when IPv6 is disabled (Ivan Vecera) [2019055] - net: bridge: mcast: export multicast router presence adjacent to a port (Ivan Vecera) [2019055] - net: bridge: mcast: add ip4+ip6 mcast router timers to mdb netlink (Ivan Vecera) [2019055] - net: bridge: mcast: split multicast router state for IPv4 and IPv6 (Ivan Vecera) [2019055] - net: bridge: mcast: split router port del+notify for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare add-router function for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare expiry functions for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare is-router function for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare query reception for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare mdb netlink for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: add wrappers for router node retrieval (Ivan Vecera) [2019055] - net: bridge: mcast: rename multicast router lists and timers (Ivan Vecera) [2019055] - bridge: Fix possible races between assigning rx_handler_data and setting IFF_BRIDGE_PORT bit (Ivan Vecera) [2019055] - net: bridge: mcast: fix broken length + header check for MRDv6 Adv. (Ivan Vecera) [2019055] - net: bridge: fix error in br_multicast_add_port when CONFIG_NET_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: propagate error code and extack from br_mc_disabled_update (Ivan Vecera) [2019055] - net: bridge: Fix missing return assignment from br_vlan_replay_one call (Ivan Vecera) [2019055] - bridge: mrp: Disable roles before deleting the MRP instance (Ivan Vecera) [2019055] - net: bridge: add helper to replay VLANs installed on port (Ivan Vecera) [2019055] - net: bridge: add helper to replay port and local fdb entries (Ivan Vecera) [2019055] - net: bridge: add helper to replay port and host-joined mdb entries (Ivan Vecera) [2019055] - net: bridge: add helper to retrieve the current ageing time (Ivan Vecera) [2019055] - net: bridge: add helper for retrieving the current bridge port STP state (Ivan Vecera) [2019055] - net: bridge: when suppression is enabled exclude RARP packets (Ivan Vecera) [2019055] - net: bridge: declare br_vlan_tunnel_lookup argument tunnel_id as __be64 (Ivan Vecera) [2019055] - Documentation: networking: switchdev: add missing "and" word (Ivan Vecera) [2019055] - Documentation: networking: switchdev: separate bulleted items with new line (Ivan Vecera) [2019055] - Documentation: networking: switchdev: fix command for static FDB entries (Ivan Vecera) [2019055] - Documentation: networking: switchdev: clarify device driver behavior (Ivan Vecera) [2019055] - net: bridge: mcast: factor out common allow/block EHT handling (Ivan Vecera) [2019055] - net: bridge: mcast: remove unreachable EHT code (Ivan Vecera) [2019055] - net: bridge: Fix fall-through warnings for Clang (Ivan Vecera) [2019055] - bridge: mrp: Update br_mrp to use new return values of br_mrp_switchdev (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp_switchdev to detect better the errors (Ivan Vecera) [2019055] - bridge: mrp: Add 'enum br_mrp_hw_support' (Ivan Vecera) [2019055] - switchdev: mrp: Extend ring_role_mrp and in_role_mrp (Ivan Vecera) [2019055] - switchdev: mrp: Remove CONFIG_BRIDGE_MRP (Ivan Vecera) [2019055] - net: bridge: fix br_vlan_filter_toggle stub when CONFIG_BRIDGE_VLAN_FILTERING=n (Ivan Vecera) [2019055] - net: bridge: fix switchdev_port_attr_set stub when CONFIG_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: propagate extack through switchdev_port_attr_set (Ivan Vecera) [2019055] - net: bridge: propagate extack through store_bridge_parm (Ivan Vecera) [2019055] - net: bridge: remove __br_vlan_filter_toggle (Ivan Vecera) [2019055] - net: switchdev: pass flags and mask to both {PRE_,}BRIDGE_FLAGS attributes (Ivan Vecera) [2019055] - net: bridge: don't print in br_switchdev_set_port_flag (Ivan Vecera) [2019055] - net: bridge: offload all port flags at once in br_setport (Ivan Vecera) [2019055] - net: switchdev: propagate extack to port attributes (Ivan Vecera) [2019055] - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT (Ivan Vecera) [2019055] - bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state (Ivan Vecera) [2019055] - net: bridge: mcast: Use ERR_CAST instead of ERR_PTR(PTR_ERR()) (Ivan Vecera) [2019055] - net: bridge: add warning comments to avoid extending sysfs (Ivan Vecera) [2019055] - net: bridge: mcast: drop hosts limit sysfs support (Ivan Vecera) [2019055] - net: bridge: multicast: make tracked EHT hosts limit configurable (Ivan Vecera) [2019055] - net: bridge: multicast: add per-port EHT hosts limit (Ivan Vecera) [2019055] - net: switchdev: use obj-$(CONFIG_NET_SWITCHDEV) form in net/Makefile (Ivan Vecera) [2019055] - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP (Ivan Vecera) [2019055] - net: bridge: multicast: fix br_multicast_eht_set_entry_lookup indentation (Ivan Vecera) [2019055] - bridge: Use PTR_ERR_OR_ZERO instead if(IS_ERR(...)) + PTR_ERR (Ivan Vecera) [2019055] - net: mrp: move struct definitions out of uapi (Ivan Vecera) [2019055] - net: mrp: fix definitions of MRP test packets (Ivan Vecera) [2019055] - net: bridge: multicast: mark IGMPv3/MLDv2 fast-leave deletes (Ivan Vecera) [2019055] - net: bridge: multicast: handle block pg delete for all cases (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host filter_mode handling (Ivan Vecera) [2019055] - net: bridge: multicast: optimize TO_INCLUDE EHT timeouts (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT include and exclude handling (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT allow/block handling (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host delete function (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT source set handling functions (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host handling functions (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT structures and definitions (Ivan Vecera) [2019055] - net: bridge: multicast: calculate idx position without changing ptr (Ivan Vecera) [2019055] - net: bridge: multicast: __grp_src_block_incl can modify pg (Ivan Vecera) [2019055] - net: bridge: multicast: pass host src address to IGMPv3/MLDv2 functions (Ivan Vecera) [2019055] - net: bridge: multicast: rename src_size to addr_size (Ivan Vecera) [2019055] - net: bridge: check vlan with eth_type_vlan() method (Ivan Vecera) [2019055] - net: switchdev: delete the transaction object (Ivan Vecera) [2019055] - mlxsw: spectrum_switchdev: remove transactional logic for VLAN objects (Ivan Vecera) [2019055] - net: switchdev: remove the transaction structure from port attributes (Ivan Vecera) [2019055] - net: switchdev: delete switchdev_port_obj_add_now (Ivan Vecera) [2019055] - net: switchdev: remove the transaction structure from port object notifiers (Ivan Vecera) [2019055] - net: switchdev: remove vid_begin -> vid_end range from VLAN objects (Ivan Vecera) [2019055] - net: bridge: fix misspellings using codespell tool (Ivan Vecera) [2019055] - net: bridge: notify switchdev of disappearance of old FDB entry upon migration (Ivan Vecera) [2019055] - bridge: Fix a deadlock when enabling multicast snooping (Ivan Vecera) [2019055] - bridge: mrp: Implement LC mode for MRP (Ivan Vecera) [2019055] - net: bridge: switch to net core statistics counters handling (Ivan Vecera) [2019055] - net: bridge: replace struct br_vlan_stats with pcpu_sw_netstats (Ivan Vecera) [2019055] - bridge: mrp: Use hlist_head instead of list_head for mrp (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 *,g auto-add (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exclude timeout (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add initial MLDv2 include test (Ivan Vecera) [2019055] - selftests: net: bridge: factor out and rename sg state functions (Ivan Vecera) [2019055] - selftests: net: lib: add support for IPv6 mcast packet test (Ivan Vecera) [2019055] - selftests: net: bridge: factor out mcast_packet_test (Ivan Vecera) [2019055] - net: bridge: mcast: fix stub definition of br_multicast_querier_exists (Ivan Vecera) [2019055] - net: bridge: explicitly convert between mdb entry state and port group flags (Ivan Vecera) [2019055] - net: bridge: mcast: add support for raw L2 multicast groups (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 *,g auto-add (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exclude timeout (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add tests for igmpv3 is_include and inc -> allow reports (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: add IGMPv3 entries' state helpers (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: check for specific udp ip protocol (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: add support for packet source address (Ivan Vecera) [2019055] - selftests: net: bridge: rename current igmp tests to igmpv2 (Ivan Vecera) [2019055] - net: bridge: fix uninitialized variables when BRIDGE_CFM is disabled (Ivan Vecera) [2019055] - bridge: cfm: Netlink Notifications. (Ivan Vecera) [2019055] - bridge: cfm: Netlink GET status Interface. (Ivan Vecera) [2019055] - bridge: cfm: Netlink GET configuration Interface. (Ivan Vecera) [2019055] - bridge: cfm: Netlink SET configuration Interface. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. CCM frame RX added. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. CCM frame TX added. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. MEP create/delete. (Ivan Vecera) [2019055] - bridge: uapi: cfm: Added EtherType used by the CFM protocol. (Ivan Vecera) [2019055] - bridge: cfm: Add BRIDGE_CFM to Kconfig. (Ivan Vecera) [2019055] - net: bridge: extend the process of special frames (Ivan Vecera) [2019055] - bridge: Netlink interface fix. (Ivan Vecera) [2019055] - net: bridge: mcast: remove only S,G port groups from sg_port hash (Ivan Vecera) [2019055] - net: switchdev: Fixed kerneldoc warning (Ivan Vecera) [2019055] - net: bridge: mcast: when forwarding handle filter mode and blocked flag (Ivan Vecera) [2019055] - net: bridge: mcast: handle host state (Ivan Vecera) [2019055] - net: bridge: mcast: add support for blocked port groups (Ivan Vecera) [2019055] - net: bridge: mcast: handle port group filter modes (Ivan Vecera) [2019055] - net: bridge: mcast: install S,G entries automatically based on reports (Ivan Vecera) [2019055] - net: bridge: mcast: add sg_port rhashtable (Ivan Vecera) [2019055] - net: bridge: mcast: add rt_protocol field to the port group struct (Ivan Vecera) [2019055] - net: bridge: mcast: when igmpv3/mldv2 are enabled lookup (S,G) first, then (*,G) (Ivan Vecera) [2019055] - net: bridge: mdb: add support for add/del/dump of entries with source (Ivan Vecera) [2019055] - net: bridge: mdb: add support to extend add/del commands (Ivan Vecera) [2019055] - net: bridge: mcast: rename br_ip's u member to dst (Ivan Vecera) [2019055] - net: bridge: mcast: use br_ip's src for src groups and querier address (Ivan Vecera) [2019055] - net: bridge: add src field to br_ip (Ivan Vecera) [2019055] - net: bridge: mdb: use extack in br_mdb_add() and br_mdb_add_group() (Ivan Vecera) [2019055] - net: bridge: mdb: move all port and bridge checks to br_mdb_add (Ivan Vecera) [2019055] - net: bridge: mdb: use extack in br_mdb_parse() (Ivan Vecera) [2019055] - net: bridge: delete duplicated words (Ivan Vecera) [2019055] - net: bridge: mcast: don't ignore return value of __grp_src_toex_excl (Ivan Vecera) [2019055] - __netif_receive_skb_core: don't untag vlan from skb on DSA master (Ivan Vecera) [2019055] - bridge: mcast: Fix incomplete MDB dump (Ivan Vecera) [2019055] - net: bridge: mcast: fix unused br var when lockdep isn't defined (Ivan Vecera) [2019055] - net: bridge: mcast: destroy all entries via gc (Ivan Vecera) [2019055] - net: bridge: mcast: improve IGMPv3/MLDv2 query processing (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 BLOCK_OLD_SOURCES report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 CHANGE_TO_INCLUDE/EXCLUDE report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 MODE_IS_INCLUDE/EXCLUDE report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPv3/MLDv2 ALLOW_NEW_SOURCES report (Ivan Vecera) [2019055] - net: bridge: mcast: delete expired port groups without srcs (Ivan Vecera) [2019055] - net: bridge: mdb: use mdb and port entries in notifications (Ivan Vecera) [2019055] - net: bridge: mdb: push notifications in __br_mdb_add/del (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group query retransmit (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group-and-source specific queries (Ivan Vecera) [2019055] - net: bridge: mcast: add support for src list and filter mode dumping (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group source list (Ivan Vecera) [2019055] - net: bridge: mcast: factor out port group del (Ivan Vecera) [2019055] - net: bridge: mdb: arrange internal structs so fast-path fields are close (Ivan Vecera) [2019055] - netlink: consistently use NLA_POLICY_EXACT_LEN() (Ivan Vecera) [2019055] - net: bridge: Add port attribute IFLA_BRPORT_MRP_IN_OPEN (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp_fill_info (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP_INFO attributes for interconnect status (Ivan Vecera) [2019055] - bridge: mrp: Extend MRP netlink interface for configuring MRP interconnect (Ivan Vecera) [2019055] - bridge: mrp: Implement the MRP Interconnect API (Ivan Vecera) [2019055] - bridge: switchdev: mrp: Extend MRP API for switchdev for MRP Interconnect (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_in_port_open function (Ivan Vecera) [2019055] - bridge: mrp: Rename br_mrp_port_open to br_mrp_ring_port_open (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp for MRP interconnect (Ivan Vecera) [2019055] - bridge: mrp: Extend bridge interface (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP attributes for MRP interconnect (Ivan Vecera) [2019055] - switchdev: mrp: Extend switchdev API for MRP Interconnect (Ivan Vecera) [2019055] - net: bridge: fix undefined br_vlan_can_enter_range in tunnel code (Ivan Vecera) [2019055] - net: switchdev: kerneldoc fixes (Ivan Vecera) [2019055] - net: bridge: notify on vlan tunnel changes done via the old api (Ivan Vecera) [2019055] - bridge: Extend br_fill_ifinfo to return MPR status (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_fill_info (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP attributes to get the status (Ivan Vecera) [2019055] - bridge: mrp: Fix endian conversion and some other warnings (Ivan Vecera) [2019055] - net: bridge: add a flag to avoid refreshing fdb when changing/adding (Ivan Vecera) [2019055] - net: bridge: add option to allow activity notifications for any fdb entries (Ivan Vecera) [2019055] - net: neighbor: add fdb extended attribute (Ivan Vecera) [2019055] - net: bridge: fdb_add_entry takes ndm as argument (Ivan Vecera) [2019055] - bridge: mrp: Validate when setting the port role (Ivan Vecera) [2019055] - bridge: uapi: mrp: Fix MRP_PORT_ROLE (Ivan Vecera) [2019055] - bridge: mrp: Add support for role MRA (Ivan Vecera) [2019055] - bridge: mrp: Set the priority of MRP instance (Ivan Vecera) [2019055] - bridge: mrp: Update MRP frame type (Ivan Vecera) [2019055] - bridge: multicast: work around clang bug (Ivan Vecera) [2019055] - bridge: mrp: Rework the MRP netlink interface (Ivan Vecera) [2019055] - bridge: mrp: Fix out-of-bounds read in br_mrp_parse (Ivan Vecera) [2019055] - bridge: mrp: Restore port state when deleting MRP instance (Ivan Vecera) [2019055] - switchdev: mrp: Remove the variable mrp_ring_state (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_unique_ifindex function (Ivan Vecera) [2019055] - net: bridge: allow enslaving some DSA master network devices (Ivan Vecera) [2019055] - net: remove newlines in NL_SET_ERR_MSG_MOD (Ivan Vecera) [2019055] - net: bridge: return false in br_mrp_enabled() (Ivan Vecera) [2019055] - docs: networking: convert switchdev.txt to ReST (Ivan Vecera) [2019055] - net: bridge: Add checks for enabling the STP. (Ivan Vecera) [2019055] - bridge: mrp: Integrate MRP into the bridge (Ivan Vecera) [2019055] - bridge: mrp: Implement netlink interface to configure MRP (Ivan Vecera) [2019055] - bridge: mrp: Connect MRP API with the switchdev API (Ivan Vecera) [2019055] - bridge: switchdev: mrp: Implement MRP API for switchdev (Ivan Vecera) [2019055] - switchdev: mrp: Extend switchdev API to offload MRP (Ivan Vecera) [2019055] - bridge: mrp: Add MRP interface. (Ivan Vecera) [2019055] - net: bridge: Add port attribute IFLA_BRPORT_MRP_RING_OPEN (Ivan Vecera) [2019055] - bridge: mrp: Extend bridge interface (Ivan Vecera) [2019055] - bridge: mrp: Update Kconfig (Ivan Vecera) [2019055] - bridge: uapi: mrp: Add mrp attributes. (Ivan Vecera) [2019055] - net: bridge: vlan options: move the tunnel command to the nested attribute (Ivan Vecera) [2019055] - net: bridge: vlan options: nest the tunnel id into a tunnel info attribute (Ivan Vecera) [2019055] - net: bridge: vlan: include stats in dumps if requested (Ivan Vecera) [2019055] - net: bridge: vlan options: add support for tunnel mapping set/del (Ivan Vecera) [2019055] - net: bridge: vlan options: add support for tunnel id dumping (Ivan Vecera) [2019055] - net: bridge: vlan tunnel: constify bridge and port arguments (Ivan Vecera) [2019055] - net: bridge: vlan options: rename br_vlan_opts_eq to br_vlan_opts_eq_range (Ivan Vecera) [2019055] - net: switchdev: do not propagate bridge updates across bridges (Ivan Vecera) [2019055] - bridge: br_stp: Use built-in RCU list checking (Ivan Vecera) [2019055] - net: switchdev: Replace zero-length array with flexible-array member (Ivan Vecera) [2019055] - net: bridge: vlan: add per-vlan state (Ivan Vecera) [2019055] - net: bridge: vlan: add basic option setting support (Ivan Vecera) [2019055] - net: bridge: vlan: add basic option dumping support (Ivan Vecera) [2019055] - net: bridge: check port state before br_allowed_egress (Ivan Vecera) [2019055] - net: bridge: vlan: notify on vlan add/delete/change flags (Ivan Vecera) [2019055] - net: bridge: vlan: add rtnetlink group and notify support (Ivan Vecera) [2019055] - net: bridge: vlan: add rtm range support (Ivan Vecera) [2019055] - net: bridge: vlan: add del rtm message support (Ivan Vecera) [2019055] - net: bridge: vlan: add new rtm message support (Ivan Vecera) [2019055] - net: bridge: vlan: add rtm definitions and dump support (Ivan Vecera) [2019055] - net: bridge: netlink: add extack error messages when processing vlans (Ivan Vecera) [2019055] - net: bridge: vlan: add helpers to check for vlan id/range validity (Ivan Vecera) [2019055] - net: bridge: add STP xstats (Ivan Vecera) [2019055] - treewide: Use sizeof_field() macro (Ivan Vecera) [2019055] - bridge: implement get_link_ksettings ethtool method (Ivan Vecera) [2019055] - net: bridge: fdb: eliminate extra port state tests from fast-path (Ivan Vecera) [2019055] - net: bridge: fdb: restore unlikely() when taking over externally added entries (Ivan Vecera) [2019055] - net: bridge: fdb: avoid two atomic bitops in br_fdb_external_learn_add() (Ivan Vecera) [2019055] - net: bridge: fdb: br_fdb_update can take flags directly (Ivan Vecera) [2019055] - net: bridge: Populate the pvid flag in br_vlan_get_info (Ivan Vecera) [2019055] - net: fix __ip_mc_inc_group usage (Ivan Vecera) [2019055] - net: bridge: mdb: allow add/delete for host-joined groups (Ivan Vecera) [2019055] - net: bridge: mdb: dump host-joined entries as well (Ivan Vecera) [2019055] - net: bridge: mdb: factor out mdb filling (Ivan Vecera) [2019055] - net: bridge: mdb: move vlan comments (Ivan Vecera) [2019055] - net: bridge: mcast: add delete due to fast-leave mdb flag (Ivan Vecera) [2019055] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Ivan Vecera) [2019055] - treewide: Add SPDX license identifier for missed files (Ivan Vecera) [2019055] - treewide: Add SPDX license identifier - Makefile/Kconfig (Ivan Vecera) [2019055] - bridge: Fix error path for kobject_init_and_add() (Ivan Vecera) [2019055] - bridge: only include nf_queue.h if needed (Ivan Vecera) [2019055] - bridge: broute: make broute a real ebtables table (Ivan Vecera) [2019055] - bridge: netfilter: unroll NF_HOOK helper in bridge input path (Ivan Vecera) [2019055] - bridge: reduce size of input cb to 16 bytes (Ivan Vecera) [2019055] - net: bridge: update multicast stats from maybe_deliver() (Ivan Vecera) [2019055] - net: bridge: mcast: remove unused br_ip_equal function (Ivan Vecera) [2019055] - net: bridge: optimize backup_port fdb convergence (Ivan Vecera) [2019055] - net: bridge: use netif_is_bridge_port() (Ivan Vecera) [2019055] - net: bridge: use eth_broadcast_addr() to assign broadcast address (Ivan Vecera) [2019055] - tools headers uapi: Update linux/in.h copy (Ivan Vecera) [2019055] - switchdev: Remove unused transaction item queue (Ivan Vecera) [2019055] - bridge: remove redundant check on err in br_multicast_ipv4_rcv (Ivan Vecera) [2019055] - net: Fix ip_mc_{dec,inc}_group allocation context (Ivan Vecera) [2019055] - bridge: remove duplicated include from br_multicast.c (Ivan Vecera) [2019055] - bridge: Snoop Multicast Router Advertisements (Ivan Vecera) [2019055] - bridge: join all-snoopers multicast address (Ivan Vecera) [2019055] - bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() internals (Ivan Vecera) [2019055] - tools include uapi: Sync linux/if_link.h copy with the kernel sources (Ivan Vecera) [2019055] - net: bridge: fix a bug on using a neighbour cache entry without checking its state (Ivan Vecera) [2019055] - net: bridge: remove unneeded variable 'err' (Ivan Vecera) [2019055] - net: bridge: remove redundant checks for null p->dev and p->br (Ivan Vecera) [2019055] - net: bridge: export supported boolopts (Ivan Vecera) [2019055] - net: bridge: add no_linklocal_learn bool option (Ivan Vecera) [2019055] - net: bridge: add support for user-controlled bool options (Ivan Vecera) [2019055] - bridge: use __vlan_hwaccel helpers (Ivan Vecera) [2019055] - netfilter: bridge: define INT_MIN & INT_MAX in userspace (Ivan Vecera) [2019055] - docs: fix some broken documentation references (Ivan Vecera) [2019055] - bridge: Switch to bitmap_zalloc() (Ivan Vecera) [2019055] - netfilter: bridge: Expose nf_tables bridge hook priorities through uapi (Ivan Vecera) [2019055] - net: bridge: add support for backup port (Ivan Vecera) [2019055] - net: bridge: add support for raw sysfs port options (Ivan Vecera) [2019055] - docs: networking: Convert bridge.txt to rst (Ivan Vecera) [2019055] - net: switchdev: consolidate RH_KABI macros usage (Ivan Vecera) [2019055] - kcov: Remove kcov include from sched.h and move it to its users. (Josef Oskera) [2026467] - tasklets: Provide tasklet_disable_in_atomic() (Ivan Vecera) [2026475] - tasklets: Use static inlines for stub implementations (Ivan Vecera) [2026475] - net: sock: introduce sk_error_report (Ivan Vecera) [2026469] - redhat: Add CONFIG_RHEL_DIFFERENCES (Prarit Bhargava) [2021571]- serial: 8520_port: Fix function param documentation (Waiman Long) [1970241] - serial: 8250: Optimize irq enable after console write (Waiman Long) [1970241] - serial: 8250: Fix rs485 delay after console write (Waiman Long) [1970241] - serial: 8250: Support console on software emulated rs485 ports (Waiman Long) [1970241] - serial: 8250: Generalize rs485 software emulation (Waiman Long) [1970241] - serial: 8250: Deduplicate rs485 active_timer assignment (Waiman Long) [1970241] - serial: 8250: Sanitize rs485 config harder (Waiman Long) [1970241] - serial: 8250: Deduplicate ->rs485_config() callback (Waiman Long) [1970241] - serial: 8250: Support rs485 devicetree properties (Waiman Long) [1970241] - serial: 8250_port: Don't use power management for kernel console (Waiman Long) [1970241] - console: Introduce ->exit() callback (Waiman Long) [1970241] - console: Don't notify user space when unregister non-listed console (Waiman Long) [1970241] - tty: 8250_of: Use software emulated RS485 direction control (Waiman Long) [1970241] - serial: 8250: Add MSR/MCR TIOCM conversion wrapper functions (Waiman Long) [1970241] - serial: 8250_of: Use of_device_get_match_data() (Waiman Long) [1970241] - serial: 8250_of: Fix for lack of interrupt support (Waiman Long) [1970241] - serial: 8250: of: Defer probe on missing IRQ (Waiman Long) [1970241] - serial: 8250: of: Correct of_platform_serial_setup() error handling (Waiman Long) [1970241] - mm/vmstat: protect per cpu variables with preempt disable on RT (Scott Wood) [2011667] - mm, slub: convert kmem_cpu_slab protection to local_lock (Scott Wood) [2011667] - mm, slub: use migrate_disable() on PREEMPT_RT (Scott Wood) [2011667] - mm, slub: protect put_cpu_partial() with disabled irqs instead of cmpxchg (Scott Wood) [2011667] - mm, slub: make slab_lock() disable irqs with PREEMPT_RT (Scott Wood) [2011667] - mm: slub: make object_map_lock a raw_spinlock_t (Scott Wood) [2011667] - mm: slub: move flush_cpu_slab() invocations __free_slab() invocations out of IRQ context (Scott Wood) [2011667] - mm, slab: split out the cpu offline variant of flush_slab() (Scott Wood) [2011667] - mm, slub: don't disable irqs in slub_cpu_dead() (Scott Wood) [2011667] - mm, slub: only disable irq with spin_lock in __unfreeze_partials() (Scott Wood) [2011667] - mm, slub: separate detaching of partial list in unfreeze_partials() from unfreezing (Scott Wood) [2011667] - mm, slub: detach whole partial list at once in unfreeze_partials() (Scott Wood) [2011667] - mm, slub: discard slabs in unfreeze_partials() without irqs disabled (Scott Wood) [2011667] - mm, slub: move irq control into unfreeze_partials() (Scott Wood) [2011667] - mm, slub: call deactivate_slab() without disabling irqs (Scott Wood) [2011667] - mm, slub: make locking in deactivate_slab() irq-safe (Scott Wood) [2011667] - mm, slub: move reset of c->page and freelist out of deactivate_slab() (Scott Wood) [2011667] - mm, slub: stop disabling irqs around get_partial() (Scott Wood) [2011667] - mm, slub: check new pages with restored irqs (Scott Wood) [2011667] - mm, slub: validate slab from partial list or page allocator before making it cpu slab (Scott Wood) [2011667] - mm, slub: restore irqs around calling new_slab() (Scott Wood) [2011667] - mm, slub: move disabling irqs closer to get_partial() in ___slab_alloc() (Scott Wood) [2011667] - mm, slub: do initial checks in ___slab_alloc() with irqs enabled (Scott Wood) [2011667] - mm, slub: move disabling/enabling irqs to ___slab_alloc() (Scott Wood) [2011667] - mm, slub: simplify kmem_cache_cpu and tid setup (Scott Wood) [2011667] - mm, slub: restructure new page checks in ___slab_alloc() (Scott Wood) [2011667] - mm, slub: return slab page from get_partial() and set c->page afterwards (Scott Wood) [2011667] - mm, slub: dissolve new_slab_objects() into ___slab_alloc() (Scott Wood) [2011667] - mm, slub: extract get_partial() from new_slab_objects() (Scott Wood) [2011667] - mm, slub: remove redundant unfreeze_partials() from put_cpu_partial() (Scott Wood) [2011667] - mm, slub: don't disable irq for debug_check_no_locks_freed() (Scott Wood) [2011667] - mm, slub: allocate private object map for validate_slab_cache() (Scott Wood) [2011667] - mm, slub: allocate private object map for debugfs listings (Scott Wood) [2011667] - mm, slub: don't call flush_all() from slab_debug_trace_open() (Scott Wood) [2011667] - mm/slub.c: drop lockdep_assert_held() from put_map() (Scott Wood) [2011667] - mm/slub.c: replace cpu_slab->partial with wrapped APIs (Scott Wood) [2011667] - mm/slub.c: replace kmem_cache->cpu_partial with wrapped APIs (Scott Wood) [2011667] - sched/rt, mm: Use CONFIG_PREEMPTION (Scott Wood) [2011667] - tcp: fix page frag corruption on page fault (Paolo Abeni) [1996074] - net: fix sk_page_frag() recursion from memory reclaim (Paolo Abeni) [1996074] - net: udp6: replace __UDP_INC_STATS() with __UDP6_INC_STATS() (Xin Long) [2020407] - net: udp: annotate data race around udp_sk(sk)->corkflag (Xin Long) [2020407] - net/ipv4/udp_tunnel_core.c: remove superfluous header files from udp_tunnel_core.c (Xin Long) [2020407] - udp_tunnel: Fix udp_tunnel_nic work-queue type (Xin Long) [2020407] - net, gro: Set inner transport header offset in tcp/udp GRO hook (Xin Long) [2020407] - bareudp: Add extack support to bareudp_configure() (Guillaume Nault) [1946040] - bareudp: Move definition of struct bareudp_conf to bareudp.c (Guillaume Nault) [1946040] - bareudp: Remove bareudp_dev_create() (Guillaume Nault) [1946040] - net: bareudp: simplify error paths calling dellink (Guillaume Nault) [1946040] - mptcp: re-arm retransmit timer if data is pending (Paolo Abeni) [2019493] - mptcp: remove tx_pending_data (Paolo Abeni) [2019493] - mptcp: do not shrink snd_nxt when recovering (Paolo Abeni) [2019493] - mptcp: drop unused sk in mptcp_push_release (Paolo Abeni) [2019493] - selftests: mptcp: fix proto type in link_failure tests (Paolo Abeni) [2019493] - selftests: mptcp: add testcase for active-back (Paolo Abeni) [2019493] - mptcp: backup flag from incoming MPJ ack option (Paolo Abeni) [2019493] - mptcp: add mibs for stale subflows processing (Paolo Abeni) [2019493] - mptcp: faster active backup recovery (Paolo Abeni) [2019493] - mptcp: cleanup sysctl data and helpers (Paolo Abeni) [2019493] - mptcp: handle pending data on closed subflow (Paolo Abeni) [2019493] - mptcp: less aggressive retransmission strategy (Paolo Abeni) [2019493] - mptcp: more accurate timeout (Paolo Abeni) [2019493] - mptcp: stop relying on tcp_tx_skb_cache (Paolo Abeni) [2019493] - tcp: expose the tcp_mark_push() and tcp_skb_entail() helpers (Paolo Abeni) [2019493] - selftests: KVM: avoid failures due to reserved HyperTransport region (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix when shadow_root_level=5 && guest root_level<4 (Vitaly Kuznetsov) [2009340] - KVM: x86: inhibit APICv when KVM_GUESTDBG_BLOCKIRQ active (Vitaly Kuznetsov) [2009340] - KVM: x86/xen: Fix get_attr of KVM_XEN_ATTR_TYPE_SHARED_INFO (Vitaly Kuznetsov) [2009340] - KVM: x86: Use rw_semaphore for APICv lock to allow vCPU parallelism (Vitaly Kuznetsov) [2009340] - KVM: selftests: test KVM_GUESTDBG_BLOCKIRQ (Vitaly Kuznetsov) [2009340] - x86/sgx/virt: implement SGX_IOC_VEPC_REMOVE ioctl (Vitaly Kuznetsov) [2009340] - x86/sgx/virt: extract sgx_vepc_remove_page (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Complete prefetch for trailing SPTEs for direct, legacy MMU (Vitaly Kuznetsov) [2009340] - KVM: x86: Do not mark all registers as avail/dirty during RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: SVM: don't set VMLOAD/VMSAVE intercepts on vCPU reset (Vitaly Kuznetsov) [2009340] - KVM: VMX: Unregister posted interrupt wakeup handler on hardware unsetup (Vitaly Kuznetsov) [2009340] - Revert "x86/kvm: fix vcpu-id indexed array sizes" (Vitaly Kuznetsov) [2009340] - KVM: X86: Cache CR3 in prev_roots when PCID is disabled (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix tlb flush for tdp in kvm_invalidate_pcid() (Vitaly Kuznetsov) [2009340] - KVM: X86: Don't reset mmu context when toggling X86_CR4_PGE (Vitaly Kuznetsov) [2009340] - KVM: X86: Don't reset mmu context when X86_CR4_PCIDE 1->0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: kvm_faultin_pfn has to return false if pfh is returned (Vitaly Kuznetsov) [2009340] - KVM: x86: Take srcu lock in post_kvm_run_save() (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: fix another issue with string I/O VMGEXITs (Vitaly Kuznetsov) [2009340] - KVM: x86/xen: Fix kvm_xen_has_interrupt() sleeping in kvm_vcpu_block() (Vitaly Kuznetsov) [2009340] - KVM: x86: switch pvclock_gtod_sync_lock to a raw spinlock (Vitaly Kuznetsov) [2009340] - KVM: selftests: Refactor help message for -s backing_src (Vitaly Kuznetsov) [2009340] - KVM: selftests: Change backing_src flag to -s in demand_paging_test (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: go over the sev_pio_data buffer in multiple passes if needed (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: keep INS functions together (Vitaly Kuznetsov) [2009340] - KVM: x86: remove unnecessary arguments from complete_emulator_pio_in (Vitaly Kuznetsov) [2009340] - KVM: x86: split the two parts of emulator_pio_in (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: clean up kvm_sev_es_ins/outs (Vitaly Kuznetsov) [2009340] - KVM: x86: leave vcpu->arch.pio.count alone in emulator_pio_in_out (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: rename guest_ins_data to sev_pio_data (Vitaly Kuznetsov) [2009340] - KVM: SEV: Flush cache on non-coherent systems before RECEIVE_UPDATE_DATA (Vitaly Kuznetsov) [2009340] - KVM: MMU: Reset mmu->pkru_mask to avoid stale data (Vitaly Kuznetsov) [2009340] - KVM: nVMX: promptly process interrupts delivered while in guest mode (Vitaly Kuznetsov) [2009340] - KVM: x86: check for interrupts before deciding whether to exit the fast path (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: reduce ghcb_sa_len to 32 bits (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove redundant handling of bus lock vmexit (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN if APIC HW/SW disable static keys are non-zero on unload (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: fix length of string I/O (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: Set guest_state_protected after VMSA update (Vitaly Kuznetsov) [2009340] - KVM: kvm_stat: do not show halt_wait_ns (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: Open code necessary bits of kvm_lapic_set_base() at vCPU RESET" (Vitaly Kuznetsov) [2009340] - KVM: s390: restore old debugfs names (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Synch KVM's svm.h header with the kernel (Vitaly Kuznetsov) [2009340] - KVM: selftests: introduce P44V64 for z196 and EC12 (Vitaly Kuznetsov) [2009340] - KVM: selftests: introduce P47V64 for s390x (Vitaly Kuznetsov) [2009340] - x86/sev: Use "SEV: " prefix for messages from sev.c (Vitaly Kuznetsov) [2009340] - KVM: stats: remove dead stores (Vitaly Kuznetsov) [2009340] - kvm: x86: Add AMD PMU MSRs to msrs_to_save_all[] (Vitaly Kuznetsov) [2009340] - kvm: fix objtool relocation warning (Vitaly Kuznetsov) [2009340] - KVM: selftests: Ensure all migrations are performed when test is affined (Vitaly Kuznetsov) [2009340] - KVM: x86: Swap order of CPUID entry "index" vs. "significant flag" checks (Vitaly Kuznetsov) [2009340] - x86/kvmclock: Move this_cpu_pvti into kvmclock.h (Vitaly Kuznetsov) [2009340] - selftests: KVM: Don't clobber XMM register when read (Vitaly Kuznetsov) [2009340] - KVM: VMX: Fix a TSX_CTRL_CPUID_CLEAR field mask issue (Vitaly Kuznetsov) [2009340] - selftests: KVM: Explicitly use movq to read xmm registers (Vitaly Kuznetsov) [2009340] - selftests: KVM: Call ucall_init when setting up in rseq_test (Vitaly Kuznetsov) [2009340] - KVM: X86: Synchronize the shadow pagetable before link it (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix missed remote tlb flush in rmap_write_protect() (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: don't copy virt_ext from vmcb12 (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: test eax for 4K alignment for GP errata workaround (Vitaly Kuznetsov) [2009340] - KVM: x86: selftests: test simultaneous uses of V_IRQ from L1 and L0 (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: restore int_vector in svm_clear_vintr (Vitaly Kuznetsov) [2009340] - KVM: x86: nVMX: re-evaluate emulation_required on nested VM exit (Vitaly Kuznetsov) [2009340] - KVM: x86: nVMX: don't fail nested VM entry on invalid guest state if !from_vmentry (Vitaly Kuznetsov) [2009340] - KVM: x86: VMX: synthesize invalid VM exit when emulating invalid guest state (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: refactor svm_leave_smm and smm_enter_smm (Vitaly Kuznetsov) [2009340] - KVM: x86: SVM: call KVM_REQ_GET_NESTED_STATE_PAGES on exit from SMM mode (Vitaly Kuznetsov) [2009340] - KVM: x86: reset pdptrs_from_userspace when exiting smm (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: restore the L1 host state prior to resuming nested guest on SMM exit (Vitaly Kuznetsov) [2009340] - KVM: KVM: Use cpumask_available() to check for NULL cpumask when kicking vCPUs (Vitaly Kuznetsov) [2009340] - KVM: Clean up benign vcpu->cpu data races when kicking vCPUs (Vitaly Kuznetsov) [2009340] - KVM: x86: Fix stack-out-of-bounds memory access from ioapic_write_indirect() (Vitaly Kuznetsov) [2009340] - KVM: selftests: Create a separate dirty bitmap per slot (Vitaly Kuznetsov) [2009340] - KVM: SEV: Allow some commands for mirror VM (Vitaly Kuznetsov) [2009340] - KVM: SEV: Update svm_vm_copy_asid_from for SEV-ES (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Fix nested bus lock VM exit (Vitaly Kuznetsov) [2009340] - KVM: x86: Identify vCPU0 by its vcpu_idx instead of its vCPUs array entry (Vitaly Kuznetsov) [2009340] - KVM: x86: Query vcpu->vcpu_idx directly and drop its accessor (Vitaly Kuznetsov) [2009340] - kvm: fix wrong exception emulation in check_rdtsc (Vitaly Kuznetsov) [2009340] - KVM: SEV: Pin guest memory for write for RECEIVE_UPDATE_DATA (Vitaly Kuznetsov) [2009340] - KVM: SVM: fix missing sev_decommission in sev_receive_start (Vitaly Kuznetsov) [2009340] - KVM: SEV: Acquire vcpu mutex when updating VMSA (Vitaly Kuznetsov) [2009340] - KVM: do not shrink halt_poll_ns below grow_start (Vitaly Kuznetsov) [2009340] - KVM: nVMX: fix comments of handle_vmon() (Vitaly Kuznetsov) [2009340] - KVM: x86: Handle SRCU initialization failure during page track init (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove defunct "nr_active_uret_msrs" field (Vitaly Kuznetsov) [2009340] - selftests: KVM: Align SMCCC call with the spec in steal_time (Vitaly Kuznetsov) [2009340] - selftests: KVM: Fix check for !POLLIN in demand_paging_test (Vitaly Kuznetsov) [2009340] - KVM: x86: Clear KVM's cached guest CR3 at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Mark all registers as avail/dirty at vCPU creation (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add a test for KVM_RUN+rseq to detect task migration bugs (Vitaly Kuznetsov) [2009340] - tools: Move x86 syscall number fallbacks to .../uapi/ (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix get_run_delay() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - selftests: kvm: move get_run_delay() into lib/test_util (Vitaly Kuznetsov) [2009340] - selftests:kvm: fix get_trans_hugepagesz() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - selftests:kvm: fix get_warnings_count() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - tools: rename bitmap_alloc() to bitmap_zalloc() (Vitaly Kuznetsov) [2009340] - KVM: Drop unused kvm_dirty_gfn_invalid() (Vitaly Kuznetsov) [2009340] - KVM: MMU: mark role_regs and role accessors as maybe unused (Vitaly Kuznetsov) [2009340] - x86/kvm: Don't enable IRQ when IRQ enabled in kvm_wait (Vitaly Kuznetsov) [2009340] - KVM: stats: Add VM stat for remote tlb flush requests (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Move lpage_disallowed_link further "down" in kvm_mmu_page (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Relocate kvm_mmu_page.tdp_mmu_page for better cache locality (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: mmu: Add guest physical address check in translate_gpa()" (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove unused field mmio_cached in struct kvm_mmu_page (Vitaly Kuznetsov) [2009340] - KVM: VMX: avoid running vmx_handle_exit_irqoff in case of emulation (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't freak out if pml5_root is NULL on 4-level host (Vitaly Kuznetsov) [2009340] - KVM: SVM: Add 5-level page table support for SVM (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Support shadowing NPT when 5-level paging is enabled in host (Vitaly Kuznetsov) [2009340] - KVM: x86: Allow CPU to force vendor-specific TDP level (Vitaly Kuznetsov) [2009340] - KVM: x86: clamp host mapping level to max_level in kvm_mmu_max_mapping_level (Vitaly Kuznetsov) [2009340] - KVM: x86: implement KVM_GUESTDBG_BLOCKIRQ (Vitaly Kuznetsov) [2009340] - KVM: SVM: split svm_handle_invalid_exit (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Avoid collision with !PRESENT SPTEs in TDP MMU lpage stats (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant spte present check in mmu_set_spte (Vitaly Kuznetsov) [2009340] - KVM: stats: Add halt polling related histogram stats (Vitaly Kuznetsov) [2009340] - KVM: stats: Add halt_wait_ns stats for all architectures (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add checks for histogram stats bucket_size field (Vitaly Kuznetsov) [2009340] - KVM: stats: Update doc for histogram statistics (Vitaly Kuznetsov) [2009340] - KVM: stats: Support linear and logarithmic histogram statistics (Vitaly Kuznetsov) [2009340] - KVM: SVM: AVIC: drop unsupported AVIC base relocation code (Vitaly Kuznetsov) [2009340] - KVM: SVM: call avic_vcpu_load/avic_vcpu_put when enabling/disabling AVIC (Vitaly Kuznetsov) [2009340] - KVM: SVM: move check for kvm_vcpu_apicv_active outside of avic_vcpu_{put|load} (Vitaly Kuznetsov) [2009340] - KVM: SVM: avoid refreshing avic if its state didn't change (Vitaly Kuznetsov) [2009340] - KVM: SVM: remove svm_toggle_avic_for_irq_window (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Deactivate APICv only when AutoEOI feature is in use (Vitaly Kuznetsov) [2009340] - KVM: SVM: add warning for mistmatch between AVIC vcpu state and AVIC inhibition (Vitaly Kuznetsov) [2009340] - KVM: x86: APICv: fix race in kvm_request_apicv_update on SVM (Vitaly Kuznetsov) [2009340] - KVM: x86: don't disable APICv memslot when inhibited (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: allow APICv memslot to be enabled but invisible (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: allow kvm_faultin_pfn to return page fault handling code (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: rename try_async_pf to kvm_faultin_pfn (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: add comment explaining arguments to kvm_zap_gfn_range (Vitaly Kuznetsov) [2009340] - KVM: Allow to have arch-specific per-vm debugfs files (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Unconditionally clear nested.pi_pending on nested VM-Enter (Vitaly Kuznetsov) [2009340] - KVM: x86: Clean up redundant ROL16(val, n) macro definition (Vitaly Kuznetsov) [2009340] - KVM: x86: Move declaration of kvm_spurious_fault() to x86.h (Vitaly Kuznetsov) [2009340] - KVM: x86: Kill off __ex() and __kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Hide VMCS control calculators in vmx.c (Vitaly Kuznetsov) [2009340] - KVM: VMX: Drop caching of KVM's desired sec exec controls for vmcs01 (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Pull KVM L0's desired controls directly from vmcs01 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Reset DR6 only when KVM_DEBUGREG_WONT_EXIT (Vitaly Kuznetsov) [2009340] - KVM: X86: Set host DR6 only on VMX and for KVM_DEBUGREG_WONT_EXIT (Vitaly Kuznetsov) [2009340] - KVM: X86: Remove unneeded KVM_DEBUGREG_RELOAD (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Use vmx_need_pf_intercept() when deciding if L0 wants a #PF (Vitaly Kuznetsov) [2009340] - kvm: vmx: Sync all matching EPTPs when injecting nested EPT fault (Vitaly Kuznetsov) [2009340] - KVM: x86: remove dead initialization (Vitaly Kuznetsov) [2009340] - KVM: x86: Allow guest to set EFER.NX=1 on non-PAE 32-bit kernels (Vitaly Kuznetsov) [2009340] - x86: Fix typo s/ECLR/ELCR/ for the PIC register (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use current VMCS to query WAITPKG support for MSR emulation (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move vcpu_args_set into perf_test_util (Vitaly Kuznetsov) [2009340] - KVM: selftests: Support multiple slots in dirty_log_perf_test (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Leverage vcpu->last_used_slot for rmap_add and rmap_recycle (Vitaly Kuznetsov) [2009340] - KVM: Cache the last used slot index per vCPU (Vitaly Kuznetsov) [2009340] - KVM: Move last_used_slot logic out of search_memslots (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix per-cpu counter corruption on 32-bit builds (Vitaly Kuznetsov) [2009340] - KVM: xen: do not use struct gfn_to_hva_cache (Vitaly Kuznetsov) [2009340] - KVM: selftests: fix hyperv_clock test (Vitaly Kuznetsov) [2009340] - KVM: SVM: improve the code readability for ASID management (Vitaly Kuznetsov) [2009340] - KVM: SVM: Fix off-by-one indexing when nullifying last used SEV VMCB (Vitaly Kuznetsov) [2009340] - KVM: Do not leak memory for duplicate debugfs directories (Vitaly Kuznetsov) [2009340] - KVM: x86/pmu: Introduce pmc->is_paused to reduce the call time of perf interfaces (Vitaly Kuznetsov) [2009340] - KVM: X86: Optimize zapping rmap (Vitaly Kuznetsov) [2009340] - KVM: X86: Optimize pte_list_desc with per-array counter (Vitaly Kuznetsov) [2009340] - KVM: X86: MMU: Tune PTE_LIST_EXT to be bigger (Vitaly Kuznetsov) [2009340] - KVM: selftests: Test access to XMM fast hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check if guest is allowed to use XMM registers for hypercall input (Vitaly Kuznetsov) [2009340] - KVM: x86: Introduce trace_kvm_hv_hypercall_done() (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check access to hypercall before reading XMM registers (Vitaly Kuznetsov) [2009340] - KVM: nSVM: remove useless kvm_clear_*_queue (Vitaly Kuznetsov) [2009340] - KVM: x86: Preserve guest's CR0.CD/NW on INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop redundant clearing of vcpu->arch.hflags at INIT/RESET (Vitaly Kuznetsov) [2009340] - KVM: SVM: Emulate #INIT in response to triple fault shutdown (Vitaly Kuznetsov) [2009340] - KVM: VMX: Move RESET-only VMWRITE sequences to init_vmcs() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove redundant write to set vCPU as active at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Smush x2APIC MSR bitmap adjustments into single function (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove unnecessary initialization of msr_bitmap_mode (Vitaly Kuznetsov) [2009340] - KVM: VMX: Don't redo x2APIC MSR bitmaps when userspace filter is changed (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Remove obsolete MSR bitmap refresh at nested transitions (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove obsolete MSR bitmap refresh at vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Move setting of sregs during vCPU RESET/INIT to common x86 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Don't _explicitly_ reconfigure user return MSRs on vCPU INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Refresh list of user return MSRs after setting guest CPUID (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip pointless MSR bitmap update when setting EFER (Vitaly Kuznetsov) [2009340] - KVM: SVM: Stuff save->dr6 at during VMSA sync, not at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop redundant writes to vmcb->save.cr4 at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Tweak order of cr0/cr4/efer writes at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Don't evaluate "emulation required" on nested VM-Exit (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip emulation required checks during pmode/rmode transitions (Vitaly Kuznetsov) [2009340] - KVM: VMX: Process CR0.PG side effects after setting CR0 assets (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Skip the permission_fault() check on MMIO if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Pull GUEST_CR3 from the VMCS iff CR3 load exiting is disabled (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Do not clear CR3 load/store exiting bits if L1 wants 'em (Vitaly Kuznetsov) [2009340] - KVM: VMX: Fold ept_update_paging_mode_cr0() back into vmx_set_cr0() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove direct write to vcpu->arch.cr0 during vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Invert handling of CR0.WP for EPT without unrestricted guest (Vitaly Kuznetsov) [2009340] - KVM: SVM: Don't bother writing vmcb->save.rip at vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Move EDX initialization at vCPU RESET to common code (Vitaly Kuznetsov) [2009340] - KVM: x86: Consolidate APIC base RESET initialization code (Vitaly Kuznetsov) [2009340] - KVM: x86: Open code necessary bits of kvm_lapic_set_base() at vCPU RESET (Vitaly Kuznetsov) [2009340] - KVM: VMX: Stuff vcpu->arch.apic_base directly at vCPU RESET (Vitaly Kuznetsov) [2009340] - KVM: x86: Set BSP bit in reset BSP vCPU's APIC base by default (Vitaly Kuznetsov) [2009340] - KVM: x86: Don't force set BSP bit when local APIC is managed by userspace (Vitaly Kuznetsov) [2009340] - KVM: x86: Migrate the PIT only if vcpu0 is migrated, not any BSP (Vitaly Kuznetsov) [2009340] - KVM: x86: Remove defunct BSP "update" in local APIC reset (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN if the APIC map is dirty without an in-kernel local APIC (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop explicit MMU reset at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove explicit MMU reset in enter_rmode() (Vitaly Kuznetsov) [2009340] - KVM: SVM: Fall back to KVM's hardcoded value for EDX at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Require exact CPUID.0x1 match when stuffing EDX at INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Set EDX at INIT with CPUID.0x1, Family-Model-Stepping (Vitaly Kuznetsov) [2009340] - KVM: SVM: Zero out GDTR.base and IDTR.base on INIT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Set LDTR to its architecturally defined value on nested VM-Exit (Vitaly Kuznetsov) [2009340] - KVM: x86: Flush the guest's TLB on INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: APICv: drop immediate APICv disablement on current vCPU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: fast_page_fault support for the TDP MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Make walk_shadow_page_lockless_{begin,end} interoperate with the TDP MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix use of enums in trace_fast_page_fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename cr2_or_gpa to gpa in fast_page_fault (Vitaly Kuznetsov) [2009340] - KVM: Introduce kvm_get_kvm_safe() (Vitaly Kuznetsov) [2009340] - x86/kvm: remove non-x86 stuff from arch/x86/kvm/ioapic.h (Vitaly Kuznetsov) [2009340] - KVM: X86: Add per-vm stat for max rmap list size (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Return old SPTE from mmu_spte_clear_track_bits() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Refactor shadow walk in __direct_map() to reduce indentation (Vitaly Kuznetsov) [2009340] - KVM: x86: Hoist kvm_dirty_regs check out of sync_regs() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Mark VM as bugged if page fault returns RET_PF_INVALID (Vitaly Kuznetsov) [2009340] - KVM: x86: Use KVM_BUG/KVM_BUG_ON to handle bugs that are fatal to the VM (Vitaly Kuznetsov) [2009340] - KVM: Export kvm_make_all_cpus_request() for use in marking VMs as bugged (Vitaly Kuznetsov) [2009340] - KVM: Add infrastructure and macro to mark VM as bugged (Vitaly Kuznetsov) [2009340] - KVM: Get rid of kvm_get_pfn() (Vitaly Kuznetsov) [2009340] - KVM: arm64: Use get_page() instead of kvm_get_pfn() (Vitaly Kuznetsov) [2009340] - KVM: x86: accept userspace interrupt only if no event is injected (Vitaly Kuznetsov) [2009340] - KVM: add missing compat KVM_CLEAR_DIRTY_LOG (Vitaly Kuznetsov) [2009340] - KVM: use cpu_relax when halt polling (Vitaly Kuznetsov) [2009340] - KVM: SVM: use vmcb01 in svm_refresh_apicv_exec_ctrl (Vitaly Kuznetsov) [2009340] - KVM: SVM: tweak warning about enabled AVIC on nested entry (Vitaly Kuznetsov) [2009340] - KVM: SVM: svm_set_vintr don't warn if AVIC is active but is about to be deactivated (Vitaly Kuznetsov) [2009340] - KVM: SVM: delay svm_vcpu_init_msrpm after svm->vmcb is initialized (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce access_tracking_perf_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix missing break in dirty_log_perf_test arg parsing (Vitaly Kuznetsov) [2009340] - x86/kvm: fix vcpu-id indexed array sizes (Vitaly Kuznetsov) [2009340] - KVM: x86: Check the right feature bit for MSR_KVM_ASYNC_PF_ACK access (Vitaly Kuznetsov) [2009340] - KVM: Documentation: Fix KVM_CAP_ENFORCE_PV_FEATURE_CPUID name (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Swap the parameter order for svm_copy_vmrun_state()/svm_copy_vmloadsave_state() (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Rename nested_svm_vmloadsave() to svm_copy_vmloadsave_state() (Vitaly Kuznetsov) [2009340] - docs: virt: kvm: api.rst: replace some characters (Vitaly Kuznetsov) [2009340] - docs: kvm: properly format code blocks and lists (Vitaly Kuznetsov) [2009340] - docs: kvm: fix build warnings (Vitaly Kuznetsov) [2009340] - KVM: selftests: Address extra memslot parameters in vm_vaddr_alloc (Vitaly Kuznetsov) [2009340] - kvm: debugfs: fix memory leak in kvm_create_vm_debugfs (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: WARN and reject loading KVM if NX is supported but not enabled" (Vitaly Kuznetsov) [2009340] - KVM: selftests: x86: Address missing vm_install_exception_handler conversions (Vitaly Kuznetsov) [2009340] - KVM: selftests: change pthread_yield to sched_yield (Vitaly Kuznetsov) [2009340] - KVM: x86: rename apic_access_page_done to apic_access_memslot_enabled (Vitaly Kuznetsov) [2009340] - kvm: x86: disable the narrow guest module parameter on unload (Vitaly Kuznetsov) [2009340] - selftests: kvm: Allows userspace to handle emulation errors. (Vitaly Kuznetsov) [2009340] - kvm: x86: Allow userspace to handle emulation errors (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Let guest use GBPAGES if supported in hardware and TDP is on (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get CR4.SMEP from MMU, not vCPU, in shadow page fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get CR0.WP from MMU, not vCPU, in shadow page fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop redundant rsvd bits reset for nested NPT (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Optimize and clean up so called "last nonleaf level" logic (Vitaly Kuznetsov) [2009340] - KVM: x86: Enhance comments for MMU roles and nested transition trickiness (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: WARN on any reserved SPTE value when making a valid SPTE (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add helpers to do full reserved SPTE checks w/ generic MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to determine PTTYPE (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Collapse 32-bit PAE and 64-bit statements for helpers (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add a helper to calculate root from role_regs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add helper to update paging metadata (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't update nested guest's paging bitmasks if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Consolidate reset_rsvds_bits_mask() calls (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU role_regs to get LA57, and drop vCPU LA57 helper (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get nested MMU's root level from the MMU's role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop "nx" from MMU context now that there are no readers (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to get EFER.NX during MMU configuration (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role/role_regs to compute context's metadata (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to detect EFER.NX in guest page walk (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's roles to compute last non-leaf level (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to compute PKRU bitmask (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to compute permission bitmask (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop vCPU param from reserved bits calculator (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to get CR4.PSE for computing rsvd bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't grab CR4.PSE for calculating shadow reserved bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Always set new mmu_role immediately after checking old role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Set CR4.PKE/LA57 in MMU role iff long mode is active (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Do not set paging-related bits in MMU role if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add accessors to query mmu_role bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename "nxe" role bit to "efer_nx" for macro shenanigans (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role_regs, not vCPU state, to compute mmu_role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Ignore CR0 and CR4 bits in nested EPT MMU role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Consolidate misc updates into shadow_mmu_init_context() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add struct and helpers to retrieve MMU role bits from regs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Grab shadow root level from mmu_role for shadow MMUs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Move nested NPT reserved bit calculation into MMU proper (Vitaly Kuznetsov) [2009340] - KVM: x86: Read and pass all CR0/CR4 role bits to shadow MMU helper (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop smep_andnot_wp check from "uses NX" for shadow MMUs (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Add a comment to document why nNPT uses vmcb01, not vCPU state (Vitaly Kuznetsov) [2009340] - KVM: x86: Fix sizes used to pass around CR0, CR4, and EFER (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename unsync helper and update related comments (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop the intermediate "transient" __kvm_sync_page() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: comment on kvm_mmu_get_page's syncing of pages (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: WARN and zap SP when sync'ing if MMU role mismatches (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU role to check for matching guest page sizes (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Unconditionally zap unsync SPs when creating >4k SP at GFN (Vitaly Kuznetsov) [2009340] - Revert "KVM: MMU: record maximum physical address width in kvm_mmu_extended_role" (Vitaly Kuznetsov) [2009340] - KVM: x86: Alert userspace that KVM_SET_CPUID{,2} after KVM_RUN is broken (Vitaly Kuznetsov) [2009340] - KVM: debugfs: Reuse binary stats descriptors (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add selftest for KVM statistics data binary interface (Vitaly Kuznetsov) [2009340] - KVM: stats: Add documentation for binary statistics interface (Vitaly Kuznetsov) [2009340] - KVM: stats: Support binary stats retrieval for a VCPU (Vitaly Kuznetsov) [2009340] - KVM: stats: Support binary stats retrieval for a VM (Vitaly Kuznetsov) [2009340] - KVM: stats: Add fd-based API to read binary stats data (Vitaly Kuznetsov) [2009340] - KVM: stats: Separate generic stats from architecture specific ones (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't WARN on a NULL shadow page in TDP MMU check (Vitaly Kuznetsov) [2009340] - KVM: sefltests: Add x86-64 test to verify MMU reacts to CPUID updates (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add hugepage support for x86-64 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Genericize upper level page table entry struct (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add PTE helper for x86-64 in preparation for hugepages (Vitaly Kuznetsov) [2009340] - KVM: selftests: Rename x86's page table "address" to "pfn" (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add wrapper to allocate page table page (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally allocate EPT tables in memslot 0 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot '0' for page table allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 for vaddr allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use "standard" min virtual address for CPUID test alloc (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use alloc page helper for xAPIC IPI test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use alloc_page helper for x86-64's GDT/IDT/TSS allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Lower the min virtual address for misc page allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add helpers to allocate N pages of virtual memory (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use "standard" min virtual address for Hyper-V pages (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 for x86's GDT/TSS setup (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 when loading elf binary (Vitaly Kuznetsov) [2009340] - KVM: selftests: Zero out the correct page in the Hyper-V features test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Remove errant asm/barrier.h include to fix arm64 build (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix uninitialized boolean variable flush (Vitaly Kuznetsov) [2009340] - KVM: selftests: fix triple fault if ept=0 in dirty_log_test (Vitaly Kuznetsov) [2009340] - KVM: x86: Print CPU of last attempted VM-entry when dumping VMCS/VMCB (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Dynamically compute max VMCS index for vmcs12 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip #PF(RSVD) intercepts when emulating smaller maxphyaddr (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant root_hpa checks (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Refactor is_tdp_mmu_root into is_tdp_mmu (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant is_tdp_mmu_enabled check (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant is_tdp_mmu_root check (Vitaly Kuznetsov) [2009340] - KVM: x86: Stub out is_tdp_mmu_root on 32-bit hosts (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN and reject loading KVM if NX is supported but not enabled (Vitaly Kuznetsov) [2009340] - KVM: SVM: Refuse to load kvm_amd if NX support is not available (Vitaly Kuznetsov) [2009340] - KVM: VMX: Refuse to load kvm_intel if EPT and NX are disabled (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix TDP MMU page table level (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix pf_fixed count in tdp_mmu_map_handle_target_level() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix return value in tdp_mmu_map_handle_target_level() (Vitaly Kuznetsov) [2009340] - KVM: LAPIC: Keep stored TMCCT register value 0 after KVM_SET_LAPIC (Vitaly Kuznetsov) [2009340] - KVM: X86: Introduce KVM_HC_MAP_GPA_RANGE hypercall (Vitaly Kuznetsov) [2009340] - KVM: switch per-VM stats to u64 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Grab nx_lpage_splits as an unsigned long before division (Vitaly Kuznetsov) [2009340] - KVM: x86: Check for pending interrupts when APICv is getting disabled (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Drop redundant checks on vmcs12 in EPTP switching emulation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: WARN if subtly-impossible VMFUNC conditions occur (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop pointless @reset_roots from kvm_init_mmu() (Vitaly Kuznetsov) [2009340] - KVM: x86: Defer MMU sync on PCID invalidation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Use fast PGD switch when emulating VMFUNC[EPTP_SWITCH] (Vitaly Kuznetsov) [2009340] - KVM: x86: Use KVM_REQ_TLB_FLUSH_GUEST to handle INVPCID(ALL) emulation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Free only guest_mode (L2) roots on INVVPID w/o EPT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Consolidate VM-Enter/VM-Exit TLB flush and MMU sync logic (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop skip MMU sync and TLB flush params from "new PGD" helpers (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Move TLB flushing logic (or lack thereof) to dedicated helper (Vitaly Kuznetsov) [2009340] - KVM: x86: Uncondtionally skip MMU sync/TLB flush in MOV CR3's PGD switch (Vitaly Kuznetsov) [2009340] - KVM: x86: Invalidate all PGDs for the current PCID on MOV CR3 w/ flush (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Don't clobber nested MMU's A/D status on EPTP switch (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Ensure 64-bit shift when checking VMFUNC bitmap (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Sync all PGDs on nested transition with shadow paging (Vitaly Kuznetsov) [2009340] - KVM: x86: avoid loading PDPTRs after migration when possible (Vitaly Kuznetsov) [2009340] - KVM: x86: Introduce KVM_GET_SREGS2 / KVM_SET_SREGS2 (Vitaly Kuznetsov) [2009340] - KVM: x86: introduce kvm_register_clear_available (Vitaly Kuznetsov) [2009340] - KVM: nVMX: delay loading of PDPTRs to KVM_REQ_GET_NESTED_STATE_PAGES (Vitaly Kuznetsov) [2009340] - KVM: nSVM: refactor the CR3 reload on migration (Vitaly Kuznetsov) [2009340] - KVM: x86: Always load PDPTRs on CR3 load for SVM w/o NPT and a PAE guest (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Drop pointless pdptrs_changed() check on nested transition (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Drop obsolete (and pointless) pdptrs_changed() check (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce hyperv_features test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move evmcs.h to x86_64/ (Vitaly Kuznetsov) [2009340] - KVM: selftests: move Hyper-V MSR definitions to hyperv.h (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_CLUSTER_IPI_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_REMOTE_TLB_FLUSH_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_DEBUGGING privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_SIGNAL_EVENTS privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_POST_MESSAGES privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check access to HVCALL_NOTIFY_LONG_SPIN_WAIT hypercall (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Prepare to check access to Hyper-V hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_STIMER_DIRECT_MODE_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Inverse the default in hv_check_msr_access() (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_FEATURE_DEBUG_MSRS_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_ACCESS_REENLIGHTENMENT privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_ACCESS_FREQUENCY_MSRS privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_APIC_ACCESS_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_SYNTIMER_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_SYNIC_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_REFERENCE_TSC_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_RESET_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_VP_INDEX_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_TIME_REF_COUNT_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_VP_RUNTIME_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_HYPERCALL_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Prepare to check access to Hyper-V MSRs (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Cache guest CPUID leaves determining features availability (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Introduce KVM_CAP_HYPERV_ENFORCE_CPUID (Vitaly Kuznetsov) [2009340] - asm-generic/hyperv: add HV_STATUS_ACCESS_DENIED definition (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Direct Virtual Flush support (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Enlightened MSR-Bitmap support (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Remote TLB flush for SVM (Vitaly Kuznetsov) [2009340] - KVM: SVM: Software reserved fields (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Move the remote TLB flush logic out of vmx (Vitaly Kuznetsov) [2009340] - KVM: nVMX: nSVM: Add a new VCPU statistic to show if VCPU is in guest mode (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop "pre_" from enter/leave_smm() helpers (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop .post_leave_smm(), i.e. the manual post-RSM MMU reset (Vitaly Kuznetsov) [2009340] - KVM: x86: Rename SMM tracepoint to make it reflect reality (Vitaly Kuznetsov) [2009340] - KVM: x86: Move "entering SMM" tracepoint into kvm_smm_changed() (Vitaly Kuznetsov) [2009340] - KVM: x86: Move (most) SMM hflags modifications into kvm_smm_changed() (Vitaly Kuznetsov) [2009340] - KVM: x86: Invoke kvm_smm_changed() immediately after clearing SMM flag (Vitaly Kuznetsov) [2009340] - KVM: x86: Replace .set_hflags() with dedicated .exiting_smm() helper (Vitaly Kuznetsov) [2009340] - KVM: x86: Emulate triple fault shutdown if RSM emulation fails (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop vendor specific functions for APICv/AVIC enablement (Vitaly Kuznetsov) [2009340] - KVM: x86: Use common 'enable_apicv' variable for both APICv and AVIC (Vitaly Kuznetsov) [2009340] - kvm: x86: implement KVM PM-notifier (Vitaly Kuznetsov) [2009340] - kvm: add PM-notifier (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce x2APIC register manipulation functions (Vitaly Kuznetsov) [2009340] - KVM: selftests: Hoist APIC functions out of individual tests (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move APIC definitions into a separate file (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Disable vmcs02 posted interrupts if vmcs12 PID isn't mappable (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Fail on MMIO completion for nested posted interrupts (Vitaly Kuznetsov) [2009340] - KVM: x86: Add a return code to kvm_apic_accept_events (Vitaly Kuznetsov) [2009340] - KVM: x86: Add a return code to inject_pending_event (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Add a return code to vmx_complete_nested_posted_interrupt (Vitaly Kuznetsov) [2009340] - KVM: x86: Remove guest mode check from kvm_check_nested_events (Vitaly Kuznetsov) [2009340] - KVM: selftests: x86: Add vmx_nested_tsc_scaling_test (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Enable nested TSC scaling (Vitaly Kuznetsov) [2009340] - KVM: X86: Add vendor callbacks for writing the TSC multiplier (Vitaly Kuznetsov) [2009340] - KVM: X86: Move write_l1_tsc_offset() logic to common code and rename it (Vitaly Kuznetsov) [2009340] - KVM: X86: Add functions that calculate the nested TSC fields (Vitaly Kuznetsov) [2009340] - KVM: X86: Add functions for retrieving L2 TSC fields from common code (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Add a TSC multiplier field in VMCS12 (Vitaly Kuznetsov) [2009340] - KVM: X86: Add a ratio parameter to kvm_scale_tsc() (Vitaly Kuznetsov) [2009340] - KVM: X86: Rename kvm_compute_tsc_offset() to kvm_compute_l1_tsc_offset() (Vitaly Kuznetsov) [2009340] - KVM: X86: Store L1's TSC scaling ratio in 'struct kvm_vcpu_arch' (Vitaly Kuznetsov) [2009340] - math64.h: Add mul_s64_u64_shr() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add a field to control memslot rmap allocation (Vitaly Kuznetsov) [2009340] - KVM: mmu: Add slots_arch_lock for memslot arch fields (Vitaly Kuznetsov) [2009340] - KVM: mmu: Refactor memslot copy (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Factor out allocating memslot rmap (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Deduplicate rmap freeing (Vitaly Kuznetsov) [2009340] - KVM: x86: Do not write protect huge page in initially-all-set mode (Vitaly Kuznetsov) [2009340] - KVM: x86: Support write protecting only large pages (Vitaly Kuznetsov) [2009340] - KVM: hyper-v: Advertise support for fast XMM hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: kvm_hv_flush_tlb use inputs from XMM registers (Vitaly Kuznetsov) [2009340] - KVM: hyper-v: Collect hypercall params into struct (Vitaly Kuznetsov) [2009340] - KVM: x86: Move FPU register accessors into fpu.h (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Make is_nx_huge_page_enabled an inline function (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix kvm_check_cap() assertion (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add aarch64/debug-exceptions test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add exception handling support for aarch64 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move GUEST_ASSERT_EQ to utils header (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce UCALL_UNHANDLED for unhandled vector reporting (Vitaly Kuznetsov) [2009340] - KVM: selftests: Complete x86_64/sync_regs_test ucall (Vitaly Kuznetsov) [2009340] - KVM: selftests: Rename vm_handle_exception (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix compiling errors when initializing the static structure (Vitaly Kuznetsov) [2009340] - selftests: kvm: Add support for customized slot0 memory size (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix overlapping addresses in memslot_perf_test (Vitaly Kuznetsov) [2009340] - selftests: kvm: do only 1 memslot_perf_test run by default (Vitaly Kuznetsov) [2009340] - KVM: X86: Use _BITUL() macro in UAPI headers (Vitaly Kuznetsov) [2009340] - KVM: selftests: create alias mappings when using shared memory (Vitaly Kuznetsov) [2009340] - KVM: selftests: add shmem backing source type (Vitaly Kuznetsov) [2009340] - KVM: selftests: refactor vm_mem_backing_src_type flags (Vitaly Kuznetsov) [2009340] - KVM: selftests: allow different backing source types (Vitaly Kuznetsov) [2009340] - KVM: selftests: compute correct demand paging size (Vitaly Kuznetsov) [2009340] - KVM: selftests: simplify setup_demand_paging error handling (Vitaly Kuznetsov) [2009340] - KVM: selftests: Print a message if /dev/kvm is missing (Vitaly Kuznetsov) [2009340] - KVM: selftests: trivial comment/logging fixes (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix hang in hardware_disable_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Ignore CPUID.0DH.1H in get_cpuid_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix 32-bit truncation of vm_get_max_gfn() (Vitaly Kuznetsov) [2009340] - KVM: selftests: add a memslot-related performance benchmark (Vitaly Kuznetsov) [2009340] - KVM: selftests: Keep track of memslots more efficiently (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix potential issue with ELF loading (Vitaly Kuznetsov) [2009340] - selftests: kvm: make allocation of extra memory take effect (Vitaly Kuznetsov) [2009340] - docs: virt: api.rst: fix a pointer to SGX documentation (Vitaly Kuznetsov) [2009340] - docs: vcpu-requests.rst: fix reference for atomic ops (Vitaly Kuznetsov) [2009340] - x86/msr: Rename MSR_K8_SYSCFG to MSR_AMD64_SYSCFG (Vitaly Kuznetsov) [2009340] - x86/sev: Move GHCB MSR protocol and NAE definitions in a common header (Vitaly Kuznetsov) [2009340] - x86/sev-es: Rename sev-es.{ch} to sev.{ch} (Vitaly Kuznetsov) [2009340] - x86/sev-es: Replace open-coded hlt-loops with sev_es_terminate() (Vitaly Kuznetsov) [2009340] - tools/kvm_stat: Fix documentation typo (Vitaly Kuznetsov) [2009340] - KVM: x86: Hide RDTSCP and RDPID if MSR_TSC_AUX probing failed (Vitaly Kuznetsov) [2009340] - KVM: x86: Tie Intel and AMD behavior for MSR_TSC_AUX to guest CPU model (Vitaly Kuznetsov) [2009340] - KVM: x86: Move uret MSR slot management to common x86 (Vitaly Kuznetsov) [2009340] - KVM: x86: Export the number of uret MSRs to vendor modules (Vitaly Kuznetsov) [2009340] - KVM: VMX: Disable loading of TSX_CTRL MSR the more conventional way (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use common x86's uret MSR list as the one true list (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use flag to indicate "active" uret MSRs instead of sorting list (Vitaly Kuznetsov) [2009340] - KVM: VMX: Configure list of user return MSRs at module init (Vitaly Kuznetsov) [2009340] - KVM: x86: Add support for RDPID without RDTSCP (Vitaly Kuznetsov) [2009340] - selftests: kvm: remove reassignment of non-absolute variables (Vitaly Kuznetsov) [2009340] - doc/kvm: Fix wrong entry for KVM_CAP_X86_MSR_FILTER (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix kdoc of __handle_changed_spte (Vitaly Kuznetsov) [2009340] - KVM: documentation: fix sphinx warnings (Vitaly Kuznetsov) [2009340] - KVM: x86: document behavior of measurement ioctls with len==0 (Vitaly Kuznetsov) [2009340] - documentation/kvm: additional explanations on KVM_SET_BOOT_CPU_ID (Vitaly Kuznetsov) [2009340] - docs: kvm: Fix a typo ("althought") (Vitaly Kuznetsov) [2009340] - KVM: move EXIT_FASTPATH_REENTER_GUEST to common code (Vitaly Kuznetsov) [2009340] - mm, kvm: account kvm_vcpu_mmap to kmemcg (Vitaly Kuznetsov) [2009340] - x86/kvm: Use msi_msg shadow structs (Vitaly Kuznetsov) [2009340] - ceph: fix up non-directory creation in SGID directories (Jeffrey Layton) [2017796] - ceph: initialize pathlen variable in reconnect_caps_cb (Jeffrey Layton) [2017796] - ceph: initialize i_size variable in ceph_sync_read (Jeffrey Layton) [2017796] - ceph: fix duplicate increment of opened_inodes metric (Jeffrey Layton) [2017796] - ceph: add a new metric to keep track of remote object copies (Jeffrey Layton) [2017796] - libceph, ceph: move ceph_osdc_copy_from() into cephfs code (Jeffrey Layton) [2017796] - ceph: clean-up metrics data structures to reduce code duplication (Jeffrey Layton) [2017796] - ceph: split 'metric' debugfs file into several files (Jeffrey Layton) [2017796] - ceph: return the real size read when it hits EOF (Jeffrey Layton) [2017796] - ceph: properly handle statfs on multifs setups (Jeffrey Layton) [2017796] - ceph: shut down mount on bad mdsmap or fsmap decode (Jeffrey Layton) [2017796] - ceph: fix mdsmap decode when there are MDS's beyond max_mds (Jeffrey Layton) [2017796] - ceph: ignore the truncate when size won't change with Fx caps issued (Jeffrey Layton) [2017796] - ceph: don't rely on error_string to validate blocklisted session. (Jeffrey Layton) [2017796] - ceph: just use ci->i_version for fscache aux info (Jeffrey Layton) [2017796] - ceph: shut down access to inode when async create fails (Jeffrey Layton) [2017796] - ceph: refactor remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: fix auth cap handling logic in remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: drop private list from remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: don't use -ESTALE as special return code in try_get_cap_refs (Jeffrey Layton) [2017796] - ceph: print inode numbers instead of pointer values (Jeffrey Layton) [2017796] - ceph: enable async dirops by default (Jeffrey Layton) [2017796] - libceph: drop ->monmap and err initialization (Jeffrey Layton) [2017796] - ceph: convert to noop_direct_IO (Jeffrey Layton) [2017796] - ceph: fix off by one bugs in unsafe_request_wait() (Jeffrey Layton) [2017796] - ceph: fix handling of "meta" errors (Jeffrey Layton) [2017796] - ceph: drop the mdsc_get_session/put_session dout messages (Jeffrey Layton) [2017796] - ceph: lockdep annotations for try_nonblocking_invalidate (Jeffrey Layton) [2017796] - ceph: don't WARN if we're forcibly removing the session caps (Jeffrey Layton) [2017796] - ceph: don't WARN if we're force umounting (Jeffrey Layton) [2017796] - ceph: remove the capsnaps when removing caps (Jeffrey Layton) [2017796] - ceph: request Fw caps before updating the mtime in ceph_write_iter (Jeffrey Layton) [2017796] - ceph: reconnect to the export targets on new mdsmaps (Jeffrey Layton) [2017796] - ceph: print more information when we can't find snaprealm (Jeffrey Layton) [2017796] - ceph: add ceph_change_snap_realm() helper (Jeffrey Layton) [2017796] - ceph: remove redundant initializations from mdsc and session (Jeffrey Layton) [2017796] - ceph: cancel delayed work instead of flushing on mdsc teardown (Jeffrey Layton) [2017796] - ceph: add a new vxattr to return auth mds for an inode (Jeffrey Layton) [2017796] - ceph: flush the mdlog before waiting on unsafe reqs (Jeffrey Layton) [2017796] - ceph: flush mdlog before umounting (Jeffrey Layton) [2017796] - ceph: make iterate_sessions a global symbol (Jeffrey Layton) [2017796] - ceph: make ceph_create_session_msg a global symbol (Jeffrey Layton) [2017796] - ceph: fix comment about short copies in ceph_write_end (Jeffrey Layton) [2017796] - ceph: fix memory leak on decode error in ceph_handle_caps (Jeffrey Layton) [2017796] - RDMA/irdma: Fix a potential memory allocation issue in 'irdma_prm_add_pble_mem()' (Kamal Heib) [1970672] - RDMA/irdma: Don't arm the CQ more than two times if no CE for this CQ (Kamal Heib) [1970672] - RDMA/irdma: Fix a user-after-free in add_pble_prm (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC errors (Kamal Heib) [1970672] - RDMA/irdma: Do not hold qos mutex twice on QP resume (Kamal Heib) [1970672] - RDMA/irdma: Set VLAN in UD work completion correctly (Kamal Heib) [1970672] - RDMA/irdma: Process extended CQ entries correctly (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC error when there are MW bind errors (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC error when transport retry counter is exceeded (Kamal Heib) [1970672] - RDMA/irdma: Validate number of CQ entries on create CQ (Kamal Heib) [1970672] - RDMA/irdma: Skip CQP ring during a reset (Kamal Heib) [1970672] - RDMA/irdma: Remove the repeated declaration (Kamal Heib) [1970672] - RDMA/irdma: Use correct kconfig symbol for AUXILIARY_BUS (Kamal Heib) [1970672] - RDMA/irdma: Change returned type of irdma_setup_virt_qp to void (Kamal Heib) [1970672] - RDMA/irdma: Change the returned type of irdma_set_hw_rsrc to void (Kamal Heib) [1970672] - RDMA/irdma: change the returned type of irdma_sc_repost_aeq_entries to void (Kamal Heib) [1970672] - RDMA/irdma: Check vsi pointer before using it (Kamal Heib) [1970672] - RDMA/irdma: Change the returned type to void (Kamal Heib) [1970672] - RDMA/irdma: Make spdxcheck.py happy (Kamal Heib) [1970672] - RDMA/irdma: Fix unused variable total_size warning (Kamal Heib) [1970672] - RDMA/irdma: Fix potential overflow expression in irdma_prm_get_pbles (Kamal Heib) [1970672] - RDMA/irdma: Check contents of user-space irdma_mem_reg_req object (Kamal Heib) [1970672] - RDMA/irdma: Remove use of kmap() (Kamal Heib) [1970672] - RDMA/irdma: Use the queried port attributes (Kamal Heib) [1970672] - RDMA/irdma: Check return value from ib_umem_find_best_pgsz (Kamal Heib) [1970672] - RDMA: Split the alloc_hw_stats() ops to port and device variants (Kamal Heib) [1970672] - RDMA/irdma: Store PBL info address a pointer type (Kamal Heib) [1970672] - RDMA/irdma: Use list_last_entry/list_first_entry (Kamal Heib) [1970672] - RDMA/irdma: Use list_move instead of list_del/list_add (Kamal Heib) [1970672] - RDMA/irdma: Fix return error sign from irdma_modify_qp (Kamal Heib) [1970672] - RDMA/irdma: Fix spelling mistake "Allocal" -> "Allocate" (Kamal Heib) [1970672] - RDMA/irdma: remove redundant initialization of variable val (Kamal Heib) [1970672] - RDMA/irdma: remove extraneous indentation on a statement (Kamal Heib) [1970672] - RDMA/irdma: Fix issues with u8 left shift operation (Kamal Heib) [1970672] - RDMA/irdma: Add irdma Kconfig/Makefile and remove i40iw (Kamal Heib) [1970672] - RDMA/irdma: Add ABI definitions (Kamal Heib) [1970672] - RDMA/irdma: Add dynamic tracing for CM (Kamal Heib) [1970672] - RDMA/irdma: Add miscellaneous utility definitions (Kamal Heib) [1970672] - RDMA/irdma: Add user/kernel shared libraries (Kamal Heib) [1970672] - RDMA/irdma: Add RoCEv2 UD OP support (Kamal Heib) [1970672] - RDMA/irdma: Implement device supported verb APIs (Kamal Heib) [1970672] - RDMA/irdma: Add PBLE resource manager (Kamal Heib) [1970672] - RDMA/irdma: Add connection manager (Kamal Heib) [1970672] - RDMA/irdma: Add QoS definitions (Kamal Heib) [1970672] - RDMA/irdma: Add privileged UDA queue implementation (Kamal Heib) [1970672] - RDMA/irdma: Add HMC backing store setup functions (Kamal Heib) [1970672] - RDMA/irdma: Implement HW Admin Queue OPs (Kamal Heib) [1970672] - RDMA/irdma: Implement device initialization definitions (Kamal Heib) [1970672] - RDMA/irdma: Register auxiliary driver and implement private channel OPs (Kamal Heib) [1970672] - i40e: Register auxiliary devices to provide RDMA (Kamal Heib) [1970672] - i40e: Prep i40e header for aux bus conversion (Kamal Heib) [1970672] - i40e: Replace one-element array with flexible-array member (Kamal Heib) [1970672] - ibmvnic: drop bad optimization in reuse_tx_pools() (Gustavo Walbon) [2028722] - ibmvnic: drop bad optimization in reuse_rx_pools() (Gustavo Walbon) [2028722] - /proc//cmdline: add back the setproctitle() special case (Ian Kent) [1979446] - /proc//cmdline: remove all the special cases (Ian Kent) [1979446] - perf tests vmlinux-kallsyms: Ignore hidden symbols (Michael Petlan) [1903157] - net/sched: sch_ets: don't remove idle classes from the round-robin list (Davide Caratti) [2013073] - net/sched: sch_ets: don't peek at classes beyond 'nbands' (Davide Caratti) [2013073] - net/sched: sch_ets: properly init all active DRR list handles (Davide Caratti) [2013073] - serial: 8250: fix racy uartclk update (Puneet Sethi) [1784121] - serial: 8250: Skip uninitialized TTY port baud rate update (Puneet Sethi) [1784121] - serial: 8250: Discard RTS/DTS setting from clock update method (Puneet Sethi) [1784121] - serial: 8250: Add 8250 port clock update method (Puneet Sethi) [1784121] - serial: 8250_dw: drop bogus uartclk optimisation (Puneet Sethi) [1784121] - serial: 8250_lpss: Enable PSE UART Auto Flow Control (Puneet Sethi) [1784121] - serial: 8250_lpss: Extract dw8250_do_set_termios() for common use (Puneet Sethi) [1784121] - serial: 8250_dw: Fix the trivial typo in the comment (Puneet Sethi) [1784121] - serial: 8250_dw: Re-use temporary variable for of_node (Puneet Sethi) [1784121] - serial: 8250_dw: Drop wrong use of ACPI_PTR() (Puneet Sethi) [1784121] - serial: 8250_lpss: Enable DMA on Intel Elkhart Lake (Puneet Sethi) [1784121] - serial: 8250_dw: Add device HID for new AMD UART controller (Puneet Sethi) [1784121] - serial: 8250_dw: Fix clk-notifier/port suspend deadlock (Puneet Sethi) [1784121] - serial: 8250_dw: Fix common clocks usage race condition (Puneet Sethi) [1784121] - serial: 8250_dw: Pass the same rate to the clk round and set rate methods (Puneet Sethi) [1784121] - serial: 8250_dw: Simplify the ref clock rate setting procedure (Puneet Sethi) [1784121] - serial: 8250_dw: Use devm_clk_get_optional() to get the input clock (Puneet Sethi) [1784121] - serial: 8250_dw: Avoid double error messaging when IRQ absent (Puneet Sethi) [1784121] - serial: 8250_dw: switch to use 8250_dwlib library (Puneet Sethi) [1784121] - serial: 8250_dw: use pointer to uart local variable (Puneet Sethi) [1784121] - serial: 8250_dw: Use a unified new dev variable in remove (Puneet Sethi) [1784121] - serial: 8250_dw: always set baud rate in dw8250_set_termios (Puneet Sethi) [1784121] - serial: 8250_dw: add fractional divisor support (Puneet Sethi) [1784121] - serial: 8250_dw: Introduce IO accessors to extended registers (Puneet Sethi) [1784121] - dmaengine: dw: Program xBAR hardware for Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: Make it dependent to HAS_IOMEM (Puneet Sethi) [1784121] - dmaengine dw: Revert "dmaengine: dw: Enable runtime PM" (Puneet Sethi) [1784121] - dmaengine: dw: Enable runtime PM (Puneet Sethi) [1784121] - dmaengine: dw: Add DMA-channels mask cell support (Puneet Sethi) [1784121] - dmaengine: dw: Ignore burst setting for memory peripherals (Puneet Sethi) [1784121] - dmaengine: dw: Discard dlen from the dev-to-mem xfer width calculation (Puneet Sethi) [1784121] - dmaengine: dw: Activate FIFO-mode for memory peripherals only (Puneet Sethi) [1784121] - dmaengine: dw: Initialize max_sg_burst capability (Puneet Sethi) [1784121] - dmaengine: dw: Introduce max burst length hw config (Puneet Sethi) [1784121] - dmaengine: dw: Initialize min and max burst DMA device capability (Puneet Sethi) [1784121] - dmaengine: dw: Set DMA device max segment size parameter (Puneet Sethi) [1784121] - dmaengine: dw: Take HC_LLP flag into account for noLLP auto-config (Puneet Sethi) [1784121] - dmaengine: Introduce DMA-device device_caps callback (Puneet Sethi) [1784121] - dmaengine: Introduce max SG burst capability (Puneet Sethi) [1784121] - dmaengine: Introduce min burst length capability (Puneet Sethi) [1784121] - dmaengine: dw: Initialize channel before each transfer (Puneet Sethi) [1784121] - dmaengine: dw: Replace 'objs' by 'y' (Puneet Sethi) [1784121] - dmaengine: dw: Register ACPI DMA controller for PCI that has companion (Puneet Sethi) [1784121] - dmaengine: dw: platform: Mark 'hclk' clock optional (Puneet Sethi) [1784121] - dmaengine: dw: platform: Split OF helpers to separate module (Puneet Sethi) [1784121] - dmaengine: dw: platform: Split ACPI helpers to separate module (Puneet Sethi) [1784121] - dmaengine: dw: platform: Move handle check to dw_dma_acpi_controller_register() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Switch to acpi_dma_controller_register() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Use devm_platform_ioremap_resource() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Enable iDMA 32-bit on Intel Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: platform: Use struct dw_dma_chip_pdata (Puneet Sethi) [1784121] - dmaengine: dw: Export struct dw_dma_chip_pdata for wider use (Puneet Sethi) [1784121] - dmaengine: dw: Update Intel Elkhart Lake Service Engine acronym (Puneet Sethi) [1784121] - dmaengine: dw: Enable iDMA 32-bit on Intel Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: Distinguish ->remove() between DW and iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: convert to SPDX identifiers (Puneet Sethi) [1784121] - dmaengine: dw: Don't pollute CTL_LO on iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: Reset DRAIN bit when resume the channel (Puneet Sethi) [1784121] - dmaengine: dw: Split DW and iDMA 32-bit operations (Puneet Sethi) [1784121] - dmaengine: dw: Remove unused internal property (Puneet Sethi) [1784121] - dmaengine: dw: Add missed multi-block support for iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: drop useless LIST_HEAD (Puneet Sethi) [1784121] - dmaengine: dw: Fix FIFO size for Intel Merrifield (Puneet Sethi) [1784121] - dmaengine: dw-dmac: implement dma protection control setting (Puneet Sethi) [1784121] - dmaengine: dw: remove dma_slave_config direction usage (Puneet Sethi) [1784121] - dmaengine: dw: Add alternative ACPI HIDs for Cherry Trail DMA controllers (Puneet Sethi) [1784121] - perf/arm-cmn: Fix invalid pointer when access dtc object sharing the same IRQ number (Mark Langsdorf) [1997732] - drivers/perf: Simplify EVENT ATTR macro in SMMU PMU driver (Mark Langsdorf) [1997732] - perf/smmuv3: Don't trample existing events with global filter (Mark Langsdorf) [1997732] - perf: qcom: Remove redundant dev_err call in qcom_l3_cache_pmu_probe() (Mark Langsdorf) [1997732] - perf: arm_spe: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: xgene_pmu: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: qcom: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: arm_pmu: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - drivers/perf: arm-cci: Fix checkpatch spacing error (Mark Langsdorf) [1997732] - drivers/perf: arm-cmn: Add space after ',' (Mark Langsdorf) [1997732] - drivers/perf: arm_pmu: Fix some coding style issues (Mark Langsdorf) [1997732] - drivers/perf: arm_spe_pmu: Fix some coding style issues (Mark Langsdorf) [1997732] - drivers/perf: Remove redundant dev_err call in tx2_uncore_pmu_init_dev() (Mark Langsdorf) [1997732] - perf/arm-smmuv3: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-dsu: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-dmc620: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-cmn: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-ccn: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-ccn: Clean up CPU hotplug handling (Mark Langsdorf) [1997732] - perf/arm-cci: Remove broken race mitigation (Mark Langsdorf) [1997732] - genirq: Export affinity setter for modules (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Clean up with dev_printk (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Fix error handling (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Use dev_err_probe() for IRQ errors (Mark Langsdorf) [1997732] - drivers/perf: Simplify the SMMUv3 PMU event attributes (Mark Langsdorf) [1997732] - perf: Constify static struct attribute_group (Mark Langsdorf) [1997732] - perf: qcom: Constify static struct attribute_group (Mark Langsdorf) [1997732] - drivers/perf: Add support for ARMv8.3-SPE (Mark Langsdorf) [1997732] - driver/perf: Remove ARM_SMMU_V3_PMU dependency on ARM_SMMU_V3 (Mark Langsdorf) [1997732] - perf/smmuv3: Support sysfs identifier file (Mark Langsdorf) [1997732] - perf: remove duplicate check on fwnode (Mark Langsdorf) [1997732] - redhat/configs: enable ARM_DMC620_PMU memory controller perf counters (Mark Langsdorf) [1997732] - perf/arm_dmc620_pmu: Fix error return code in dmc620_pmu_device_probe() (Mark Langsdorf) [1997732] - drivers/perf: Prevent forced unbinding of ARM_DMC620_PMU drivers (Mark Langsdorf) [1997732] - driver/perf: Add PMU driver for the ARM DMC-620 memory controller (Mark Langsdorf) [1997732] - drivers/perf: thunderx2_pmu: Fix memory resource error handling (Mark Langsdorf) [1997732] - drivers/perf: xgene_pmu: Fix uninitialized resource struct (Mark Langsdorf) [1997732] - perf: arm_dsu: Support DSU ACPI devices (Mark Langsdorf) [1997732] - perf/smmuv3: To simplify code for ioremap page in pmcg (Mark Langsdorf) [1997732] - drivers/perf: Prevent forced unbinding of PMU drivers (Mark Langsdorf) [1997732] - drivers/perf: Fix kernel panic when rmmod PMU modules during perf sampling (Mark Langsdorf) [1997732] - pmu/smmuv3: Clear IRQ affinity hint on device removal (Mark Langsdorf) [1997732] - drivers/perf: arm_spe_pmu: Avoid duplicate printouts (Mark Langsdorf) [1997732] - drivers/perf: arm_dsu_pmu: Avoid duplicate printouts (Mark Langsdorf) [1997732] - drivers/perf: Open access for CAP_PERFMON privileged process (Mark Langsdorf) [1997732] - perf/smmuv3: Remove the leftover put_cpu() in error path (Mark Langsdorf) [1997732] - perf: arm-ccn: Enable stats for CCN-512 interconnect (Mark Langsdorf) [1997732] - perf/smmuv3: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/arm-cci: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/arm-ccn: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf: xgene: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/smmuv3: Validate groups for global filtering (Mark Langsdorf) [1997732] - perf/smmuv3: Validate group size (Mark Langsdorf) [1997732] - perf/smmuv3: Enable HiSilicon Erratum 162001800 quirk (Mark Langsdorf) [1997732] - perf/smmuv3: Add MSI irq support (Mark Langsdorf) [1997732] - perf/smmuv3: Add arm64 smmuv3 pmu driver (Mark Langsdorf) [1997732] - perf: xgene: Remove set but not used variable 'config' (Mark Langsdorf) [1997732] - perf/drivers: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE (Mark Langsdorf) [1997732] - For drivers that do not support context exclusion let's advertise the PERF_PMU_CAP_NO_EXCLUDE capability. This ensures that perf will prevent us from handling events where any exclusion flags are set. Let's also remove the now unnecessary check for exclusion flags. (Mark Langsdorf) [1997732] - perf/core, arch/arm: Use PERF_PMU_CAP_NO_EXCLUDE conditionally (Mark Langsdorf) [1997732] - drivers/perf: arm-ccn: Use devm_ioremap_resource() to map memory (Mark Langsdorf) [1997732] - drivers/perf: Initialise return value in armpmu_request_irqs() (Mark Langsdorf) [1997732] - perf/arm-cci: Remove VLA usage (Mark Langsdorf) [1997732] - tools/power turbostat: version 2021.05.04 (Prarit Bhargava) [2030472] - tools/power turbostat: Support "turbostat --hide idle" (Prarit Bhargava) [2030472] - tools/power turbostat: elevate priority of interval mode (Prarit Bhargava) [2030472] - tools/power turbostat: formatting (Prarit Bhargava) [2030472] - tools/power turbostat: rename tcc variables (Prarit Bhargava) [2030472] - tools/power turbostat: save original CPU model (Prarit Bhargava) [2030472] - tools/power turbostat: add TCC Offset support (Prarit Bhargava) [2030472] - tools/power turbostat: Fix Core C6 residency on Atom CPUs (Prarit Bhargava) [2030472] - tools/power turbostat: Print the C-state Pre-wake settings (Prarit Bhargava) [2030472] - tools/power turbostat: unmark non-kernel-doc comment (Prarit Bhargava) [2030472] - tools/power/turbostat: Remove Package C6 Retention on Ice Lake Server (Prarit Bhargava) [2030472] - tools/power turbostat: Fix offset overflow issue in index converting (Prarit Bhargava) [2030472] - tools/power/turbostat: Fix turbostat for AMD Zen CPUs (Prarit Bhargava) [2030472] - Revert "tools/power turbostat: adjust for temperature offset" (Prarit Bhargava) [2030472] - tools/power turbostat: Fix DRAM Energy Unit on SKX (Prarit Bhargava) [2030472] - tools/power turbostat: print microcode patch level (Prarit Bhargava) [2030472] - tools/power turbostat: add built-in-counter for IPC -- Instructions per Cycle (Prarit Bhargava) [2030472]- [s390] virtio: write back F_VERSION_1 before validate (Claudio Imbrenda) [2026234] - cpufreq: powernv: Fix init_chip_info initialization in numa=off (Steve Best) [2017665] - tcp: don't free a FIN sk_buff in tcp_remove_empty_skb() (Guillaume Nault) [2016210] - tipc: fix size validations for the MSG_CRYPTO type (Xin Long) [2020507] {CVE-2021-43267} - tipc: increase timeout in tipc_sk_enqueue() (Xin Long) [2020401] - Revert "tipc: Return the correct errno code" (Xin Long) [2020401] - tipc: fix an use-after-free issue in tipc_recvmsg (Xin Long) [2020401] - tipc: keep the skb in rcv queue until the whole data is read (Xin Long) [2020401] - powerpc/perf: Fix cycles/instructions as PM_CYC/PM_INST_CMPL in power10 (Steve Best) [2025400] - PCI: Increase D3 delay for AMD Renoir/Cezanne XHCI (Myron Stowe) [2028298] - media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors (Dean Nelson) [1921871] {CVE-2020-0404} - sctp: fix transport encap_port update in sctp_vtag_verify (Xin Long) [2020393] - sctp: account stream padding length for reconf chunk (Xin Long) [2020393] - sctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb (Xin Long) [2020393] - net: cipso: fix warnings in netlbl_cipsov4_add_std (Balazs Nemeth) [2026691] - net/sched: act_ct: fix err check for nf_conntrack_confirm (Davide Caratti) [2018109] - net/sched: act_ct: Fix byte count on fragmented packets (Davide Caratti) [2018109] - mqprio: Correct stats in mqprio_dump_class_stats(). (Davide Caratti) [2018109] - net_sched: fix NULL deref in fifo_set_limit() (Davide Caratti) [2018109] - net: sched: flower: protect fl_walk() with rcu (Davide Caratti) [2018109] - fq_codel: reject silly quantum parameters (Davide Caratti) [2018109] - net: sched: Fix qdisc_rate_table refcount leak when get tcf_block failed (Davide Caratti) [2018109] - sch_htb: Fix inconsistency when leaf qdisc creation fails (Davide Caratti) [2018109] - net: sched: fix lockdep_set_class() typo error for sch->seqlock (Davide Caratti) [2018109] - net: sched: cls_api: Fix the the wrong parameter (Davide Caratti) [2018109] - net/sched: act_vlan: Fix modify to allow 0 (Davide Caratti) [2018109] - net-sysfs: initialize uid and gid before calling net_ns_get_ownership (Xin Long) [1979820] - net: fix sysfs permssions when device changes network namespace (Xin Long) [1979820] - net-sysfs: add queue_change_owner() (Xin Long) [1979820] - net-sysfs: add netdev_change_owner() (Xin Long) [1979820] - drivers/base/power: add dpm_sysfs_change_owner() (Xin Long) [1979820] - device: add device_change_owner() (Xin Long) [1979820] - sysfs: Fix regression when adding a file to an existing group (Xin Long) [1979820] - bridge: make sure objects belong to container's owner (Xin Long) [1979820] - net: create reusable function for getting ownership info of sysfs inodes (Xin Long) [1979820] - net-sysfs: make sure objects belong to container's owner (Xin Long) [1979820] - net-sysfs: require net admin in the init ns for setting tx_maxrate (Xin Long) [1979820] - driver core: set up ownership of class devices in sysfs (Xin Long) [1979820] - kobject: kset_create_and_add() - fetch ownership info from parent (Xin Long) [1979820] - sysfs, kobject: allow creating kobject belonging to arbitrary users (Xin Long) [1979820] - NFSv42: Fix pagecache invalidation after COPY/CLONE (Benjamin Coddington) [2017166] - SUNRPC: fix sign error causing rpcsec_gss drops (Benjamin Coddington) [2017166] - nfsd4: Handle the NFSv4 READDIR 'dircount' hint being zero (Benjamin Coddington) [2017166] - nfsd: fix error handling of register_pernet_subsys() in init_nfsd() (Benjamin Coddington) [2017166] - SUNRPC: Simplify socket shutdown when not reusing TCP ports (Benjamin Coddington) [2017166] - nfsd4: Fix forced-expiry locking (Benjamin Coddington) [2017166] - SUNRPC/xprtrdma: Fix reconnection locking (Benjamin Coddington) [2017166] - NFSv4/pnfs: The layout barrier indicate a minimal value for the seqid (Benjamin Coddington) [2017166] - NFSv4/pNFS: Always allow update of a zero valued layout barrier (Benjamin Coddington) [2017166] - NFSv4/pNFS: Fix a layoutget livelock loop (Benjamin Coddington) [2017166] - xprtrdma: Put rpcrdma_reps before waking the tear-down completion (Benjamin Coddington) [2017166] - NFSD: Fix TP_printk() format specifier in nfsd_clid_class (Benjamin Coddington) [2017166] - NFSv42: Copy offload should update the file size when appropriate (Benjamin Coddington) [2017166] - SUNRPC: Fix XPT_BUSY flag leakage in svc_handle_xprt()... (Benjamin Coddington) [2017166] - NFSv4/pNFS: Return an error if _nfs4_pnfs_v3_ds_connect can't load NFSv3 (Benjamin Coddington) [2017166] - NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times (Benjamin Coddington) [2017166] - NFSv4/pnfs: Clean up layout get on open (Benjamin Coddington) [2017166] - NFSv4/pnfs: Fix layoutget behaviour after invalidation (Benjamin Coddington) [2017166] - NFSv4/pnfs: Fix the layout barrier update (Benjamin Coddington) [2017166] - NFSD: Prevent a possible oops in the nfs_dirent() tracepoint (Benjamin Coddington) [2017166] - nfsd: remove redundant assignment to pointer 'this' (Benjamin Coddington) [2017166] - nfs_common: fix doc warning (Benjamin Coddington) [2017166] - nfsd4: Expose the callback address and state of each NFS4 client (Benjamin Coddington) [2017166] - xprtrdma: Fix spelling mistakes (Benjamin Coddington) [2017166] - NFS: nfs_find_open_context() may only select open files (Benjamin Coddington) [2017166] - SUNRPC: Should wake up the privileged task firstly. (Benjamin Coddington) [2017166] - SUNRPC: Fix the batch tasks count wraparound. (Benjamin Coddington) [2017166] - nfs: update has_sec_mnt_opts after cloning lsm options from parent (Benjamin Coddington) [2017166] - nfs: fix acl memory leak of posix_acl_create() (Benjamin Coddington) [2017166] - rpc: remove redundant initialization of variable status (Benjamin Coddington) [2017166] - NFSv4: Initialise connection to the server in nfs4_alloc_client() (Benjamin Coddington) [2017166] - nfsd: Prevent truncation of an unlinked inode from blocking access to its directory (Benjamin Coddington) [2017166] - xprtrdma: Fix a maybe-uninitialized compiler warning (Benjamin Coddington) [2017166] - NFSv4: Fix second deadlock in nfs4_evict_inode() (Benjamin Coddington) [2017166] - NFSv4: Fix deadlock between nfs4_evict_inode() and nfs4_opendata_get_inode() (Benjamin Coddington) [2017166] - NFS: FMODE_READ and friends are C macros, not enum types (Benjamin Coddington) [2017166] - NFS: Fix a potential NULL dereference in nfs_get_client() (Benjamin Coddington) [2017166] - NFS: Fix use-after-free in nfs4_init_client() (Benjamin Coddington) [2017166] - NFSv4: nfs4_proc_set_acl needs to restore NFS_CAP_UIDGID_NOMAP on error. (Benjamin Coddington) [2017166] - nfs: Remove trailing semicolon in macros (Benjamin Coddington) [2017166] - NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config (Benjamin Coddington) [2017166] - NFS: Clean up reset of the mirror accounting variables (Benjamin Coddington) [2017166] - NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce() (Benjamin Coddington) [2017166] - NFS: Fix an Oopsable condition in __nfs_pageio_add_request() (Benjamin Coddington) [2017166] - SUNRPC: More fixes for backlog congestion (Benjamin Coddington) [2017166] - SUNRPC: Fix Oops in xs_tcp_send_request() when transport is disconnected (Benjamin Coddington) [2017166] - NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return() (Benjamin Coddington) [2017166] - SUNRPC in case of backlog, hand free slots directly to waiting task (Benjamin Coddington) [2017166] - pNFS/NFSv4: Remove redundant initialization of 'rd_size' (Benjamin Coddington) [2017166] - NFS: fix an incorrect limit in filelayout_decode_layout() (Benjamin Coddington) [2017166] - fs/nfs: Use fatal_signal_pending instead of signal_pending (Benjamin Coddington) [2017166] - xprtrdma: Fix a NULL dereference in frwr_unmap_sync() (Benjamin Coddington) [2017166] - sunrpc: Fix misplaced barrier in call_decode (Benjamin Coddington) [2017166] - SUNRPC: set rq_page_end differently (Benjamin Coddington) [2017166] - xprtrdma: Move fr_mr field to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move the Work Request union to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move fr_linv_done field to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move cqe to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move fr_cid to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Remove the RPC/RDMA QP event handler (Benjamin Coddington) [2017166] - xprtrdma: Add tracepoints showing FastReg WRs and remote invalidation (Benjamin Coddington) [2017166] - xprtrdma: Avoid Send Queue wrapping (Benjamin Coddington) [2017166] - xprtrdma: Do not wake RPC consumer on a failed LocalInv (Benjamin Coddington) [2017166] - xprtrdma: Do not recycle MR after FastReg/LocalInv flushes (Benjamin Coddington) [2017166] - xprtrdma: Clarify use of barrier in frwr_wc_localinv_done() (Benjamin Coddington) [2017166] - xprtrdma: Rename frwr_release_mr() (Benjamin Coddington) [2017166] - xprtrdma: rpcrdma_mr_pop() already does list_del_init() (Benjamin Coddington) [2017166] - xprtrdma: Delete rpcrdma_recv_buffer_put() (Benjamin Coddington) [2017166] - xprtrdma: Fix cwnd update ordering (Benjamin Coddington) [2017166] - xprtrdma: Improve locking around rpcrdma_rep creation (Benjamin Coddington) [2017166] - xprtrdma: Improve commentary around rpcrdma_reps_unmap() (Benjamin Coddington) [2017166] - xprtrdma: Improve locking around rpcrdma_rep destruction (Benjamin Coddington) [2017166] - xprtrdma: Put flushed Receives on free list instead of destroying them (Benjamin Coddington) [2017166] - xprtrdma: Do not refresh Receive Queue while it is draining (Benjamin Coddington) [2017166] - xprtrdma: Avoid Receive Queue wrapping (Benjamin Coddington) [2017166] - SUNRPC: fix ternary sign expansion bug in tracing (Benjamin Coddington) [2017166] - nfsd: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - nfsd: reshuffle some code (Benjamin Coddington) [2017166] - nfsd: track filehandle aliasing in nfs4_files (Benjamin Coddington) [2017166] - nfsd: hash nfs4_files by inode number (Benjamin Coddington) [2017166] - NFSv4.1: Simplify layout return in pnfs_layout_process() (Benjamin Coddington) [2017166] - NFSv4: Don't discard segments marked for return in _pnfs_return_layout() (Benjamin Coddington) [2017166] - nfsd: ensure new clients break delegations (Benjamin Coddington) [2017166] - NFS: Don't discard pNFS layout segments that are marked for return (Benjamin Coddington) [2017166] - NFSv4.x: Don't return NFS4ERR_NOMATCHING_LAYOUT if we're unmounting (Benjamin Coddington) [2017166] - nfsd: remove unused function (Benjamin Coddington) [2017166] - svcrdma: Pass a useful error code to the send_err tracepoint (Benjamin Coddington) [2017166] - svcrdma: Rename goto labels in svc_rdma_sendto() (Benjamin Coddington) [2017166] - svcrdma: Don't leak send_ctxt on Send errors (Benjamin Coddington) [2017166] - SUNRPC: Remove trace_xprt_transmit_queued (Benjamin Coddington) [2017166] - SUNRPC: Add tracepoint that fires when an RPC is retransmitted (Benjamin Coddington) [2017166] - SUNRPC: Move fault injection call sites (Benjamin Coddington) [2017166] - pNFS/flexfiles: fix incorrect size check in decode_nfs_fh() (Benjamin Coddington) [2017166] - NFSv4: Catch and trace server filehandle encoding errors (Benjamin Coddington) [2017166] - NFSv4: Convert nfs_xdr_status tracepoint to an event class (Benjamin Coddington) [2017166] - NFSv4: Add tracing for COMPOUND errors (Benjamin Coddington) [2017166] - NFSv4: Don't modify the change attribute cached in the inode (Benjamin Coddington) [2017166] - NFSv4: Fix value of decode_fsinfo_maxsz (Benjamin Coddington) [2017166] - NFS: Fix up revalidation of space used (Benjamin Coddington) [2017166] - NFS: NFS_INO_REVAL_PAGECACHE should mark the change attribute invalid (Benjamin Coddington) [2017166] - NFS: Mask out unsupported attributes in nfs_getattr() (Benjamin Coddington) [2017166] - NFS: Fix up inode cache tracing (Benjamin Coddington) [2017166] - NFS: Deal correctly with attribute generation counter overflow (Benjamin Coddington) [2017166] - NFSv4.2: Always flush out writes in nfs42_proc_fallocate() (Benjamin Coddington) [2017166] - NFS: Fix attribute bitmask in _nfs42_proc_fallocate() (Benjamin Coddington) [2017166] - NFS: nfs4_bitmask_adjust() must not change the server global bitmasks (Benjamin Coddington) [2017166] - NFSD: Use DEFINE_SPINLOCK() for spinlock (Benjamin Coddington) [2017166] - sunrpc: Remove unused function ip_map_lookup (Benjamin Coddington) [2017166] - NFS: Fix fscache invalidation in nfs_set_cache_invalid() (Benjamin Coddington) [2017166] - SUNRPC: Ensure the transport backchannel association (Benjamin Coddington) [2017166] - nfs: hornor timeo and retrans option when mounting NFSv3 (Benjamin Coddington) [2017166] - sunrpc: honor rpc_task's timeout value in rpcb_create() (Benjamin Coddington) [2017166] - nfs: Fix a typo in the file nfs42xattr.c (Benjamin Coddington) [2017166] - NFS: fs_context: validate UDP retrans to prevent shift out-of-bounds (Benjamin Coddington) [2017166] - NFS: Fix up incorrect documentation (Benjamin Coddington) [2017166] - NFSv4: Simplify nfs4_retry_setlk() (Benjamin Coddington) [2017166] - UAPI: nfsfh.h: Replace one-element array with flexible-array member (Benjamin Coddington) [2017166] - svcrdma: Clean up dto_q critical section in svc_rdma_recvfrom() (Benjamin Coddington) [2017166] - svcrdma: Remove svc_rdma_recv_ctxt::rc_pages and ::rc_arg (Benjamin Coddington) [2017166] - svcrdma: Remove sc_read_complete_q (Benjamin Coddington) [2017166] - svcrdma: Single-stage RDMA Read (Benjamin Coddington) [2017166] - SUNRPC: Move svc_xprt_received() call sites (Benjamin Coddington) [2017166] - SUNRPC: Export svc_xprt_received() (Benjamin Coddington) [2017166] - svcrdma: Retain the page backing rq_res.head[0].iov_base (Benjamin Coddington) [2017166] - svcrdma: Remove unused sc_pages field (Benjamin Coddington) [2017166] - svcrdma: Normalize Send page handling (Benjamin Coddington) [2017166] - svcrdma: Add a "deferred close" helper (Benjamin Coddington) [2017166] - svcrdma: Maintain a Receive water mark (Benjamin Coddington) [2017166] - svcrdma: Use svc_rdma_refresh_recvs() in wc_receive (Benjamin Coddington) [2017166] - svcrdma: Add a batch Receive posting mechanism (Benjamin Coddington) [2017166] - svcrdma: Remove stale comment for svc_rdma_wc_receive() (Benjamin Coddington) [2017166] - svcrdma: Provide an explanatory comment in CMA event handler (Benjamin Coddington) [2017166] - svcrdma: RPCDBG_FACILITY is no longer used (Benjamin Coddington) [2017166] - nfsd: don't ignore high bits of copy count (Benjamin Coddington) [2017166] - nfsd: COPY with length 0 should copy to end of file (Benjamin Coddington) [2017166] - nfsd: Fix typo "accesible" (Benjamin Coddington) [2017166] - nfsd: Ensure knfsd shuts down when the "nfsd" pseudofs is unmounted (Benjamin Coddington) [2017166] - nfsd: Log client tracking type log message as info instead of warning (Benjamin Coddington) [2017166] - nfsd: helper for laundromat expiry calculations (Benjamin Coddington) [2017166] - NFSD: Clean up NFSDDBG_FACILITY macro (Benjamin Coddington) [2017166] - NFSD: Add a tracepoint to record directory entry encoding (Benjamin Coddington) [2017166] - rpc: fix NULL dereference on kmalloc failure (Benjamin Coddington) [2017166] - sunrpc: fix refcount leak for rpc auth modules (Benjamin Coddington) [2017166] - NFSD: Repair misuse of sv_lock in 5.10.16-rt30. (Benjamin Coddington) [2017166] - svcrdma: disable timeouts on rdma backchannel (Benjamin Coddington) [2017166] - svcrdma: Hold private mutex while invoking rdma_accept() (Benjamin Coddington) [2017166] - NFS: Don't set NFS_INO_INVALID_XATTR if there is no xattr cache (Benjamin Coddington) [2017166] - NFS: Always clear an invalid mapping when attempting a buffered write (Benjamin Coddington) [2017166] - NFS: Optimise sparse writes past the end of file (Benjamin Coddington) [2017166] - NFS: Fix documenting comment for nfs_revalidate_file_size() (Benjamin Coddington) [2017166] - rpcrdma: Fix comments about reverse-direction operation (Benjamin Coddington) [2017166] - xprtrdma: Refactor invocations of offset_in_page() (Benjamin Coddington) [2017166] - xprtrdma: Simplify rpcrdma_convert_kvec() and frwr_map() (Benjamin Coddington) [2017166] - xprtrdma: Remove FMR support in rpcrdma_convert_iovs() (Benjamin Coddington) [2017166] - NFS: Fix fscache read from NFS after cache error (Benjamin Coddington) [2017166] - NFS: Ensure nfs_readpage returns promptly when internal error occurs (Benjamin Coddington) [2017166] - NFS: Remove unnecessary inode parameter from nfs_pageio_complete_read() (Benjamin Coddington) [2017166] - NFS: Add nfs_pageio_complete_read() and remove nfs_readpage_async() (Benjamin Coddington) [2017166] - NFS: Call readpage_async_filler() from nfs_readpage_async() (Benjamin Coddington) [2017166] - NFS: Refactor nfs_readpage() and nfs_readpage_async() to use nfs_readdesc (Benjamin Coddington) [2017166] - NFS: In nfs_readpage() only increment NFSIOS_READPAGES when read succeeds (Benjamin Coddington) [2017166] - NFS: Clean up nfs_readpage() and nfs_readpages() (Benjamin Coddington) [2017166] - nfs: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - SUNRPC: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - net: sunrpc: xprtsock.c: Corrected few spellings ,in comments (Benjamin Coddington) [2017166] - SUNRPC: correct error code comment in xs_tcp_setup_socket() (Benjamin Coddington) [2017166] - nfsd: cstate->session->se_client -> cstate->clp (Benjamin Coddington) [2017166] - nfsd: simplify nfsd4_check_open_reclaim (Benjamin Coddington) [2017166] - nfsd: remove unused set_client argument (Benjamin Coddington) [2017166] - nfs/blocklayout: remove cruft in bl_alloc_init_bio (Benjamin Coddington) [2017166] - nfsd: refactor set_client (Benjamin Coddington) [2017166] - nfsd: rename lookup_clientid->set_client (Benjamin Coddington) [2017166] - nfsd: simplify nfsd_renew (Benjamin Coddington) [2017166] - nfsd: simplify process_lock (Benjamin Coddington) [2017166] - nfsd4: simplify process_lookup1 (Benjamin Coddington) [2017166] - SUNRPC: Correct a comment (Benjamin Coddington) [2017166] - svcrdma: DMA-sync the receive buffer in svc_rdma_recvfrom() (Benjamin Coddington) [2017166] - svcrdma: Restore read and write stats (Benjamin Coddington) [2017166] - svcrdma: Convert rdma_stat_sq_starve to a per-CPU counter (Benjamin Coddington) [2017166] - svcrdma: Convert rdma_stat_recv to a per-CPU counter (Benjamin Coddington) [2017166] - svcrdma: Refactor svc_rdma_init() and svc_rdma_clean_up() (Benjamin Coddington) [2017166] - nfsd: remove fault injection code (Benjamin Coddington) [2017166] - SUNRPC: Fix a NULL pointer deref in trace_svc_stats_latency() (Benjamin Coddington) [2017166] - SUNRPC: Display RPC procedure names instead of proc numbers (Benjamin Coddington) [2017166] - SUNRPC: Make trace_svc_process() display the RPC procedure symbolically (Benjamin Coddington) [2017166] - EDAC/mce_amd: Do not load edac_mce_amd module on guests (Aristeu Rozanski) [2000776] - tracing: Map all PIDs to command lines (Jerome Marchand) [1913211] - mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and zs_unregister_migration() (Rafael Aquini) [2016441] - mm: mark the OOM reaper thread as freezable (Rafael Aquini) [2016441] - mm/page_isolation: guard against possible putback unisolated page (Rafael Aquini) [2016441] - mm/page_isolation: fix potential missing call to unset_migratetype_isolate() (Rafael Aquini) [2016441] - mm/page_alloc: use accumulated load when building node fallback list (Rafael Aquini) [2016441] - mm/vmalloc: do not adjust the search size for alignment overhead (Rafael Aquini) [2016441] - mm/vmalloc: make sure to dump unpurged areas in /proc/vmallocinfo (Rafael Aquini) [2016441] - Revert "mm, slub: consider rest of partial list if acquire_slab() fails" (Rafael Aquini) [2016441] - mm, slub: consider rest of partial list if acquire_slab() fails (Rafael Aquini) [2016441] - mm, slub: fix incorrect memcg slab count for bulk free (Rafael Aquini) [2016441] - mm, slub: fix mismatch between reconstructed freelist depth and cnt (Rafael Aquini) [2016441] - slub: add back check for free nonslab objects (Rafael Aquini) [2016441] - slub: fix kmalloc_pagealloc_invalid_free unit test (Rafael Aquini) [2016441] - slub: fix unreclaimable slab stat for bulk free (Rafael Aquini) [2016441] - mm/slub: add taint after the errors are printed (Rafael Aquini) [2016441] - mm/slab.c: remove useless lines in enable_cpucache() (Rafael Aquini) [2016441] - kasan: fix tag for large allocations when using CONFIG_SLAB (Rafael Aquini) [2016441] - mm/hmm: bypass devmap pte when all pfn requested flags are fulfilled (Rafael Aquini) [2016441] - mm: memcontrol: set the correct memcg swappiness restriction (Rafael Aquini) [2016441] - memcg: replace in_interrupt() by !in_task() in active_memcg() (Rafael Aquini) [2016441] - huge tmpfs: fix split_huge_page() after FALLOC_FL_KEEP_SIZE (Rafael Aquini) [2016441] - huge tmpfs: fix fallocate(vanilla) advance over huge pages (Rafael Aquini) [2016441] - huge tmpfs: revert shmem's use of transhuge_vma_enabled() (Rafael Aquini) [2016441] - mm/huge_memory.c: remove unnecessary tlb_remove_page_size() for huge zero pmd (Rafael Aquini) [2016441] - mm/huge_memory.c: add missing read-only THP checking in transparent_hugepage_enabled() (Rafael Aquini) [2016441] - mm/huge_memory.c: use page->deferred_list (Rafael Aquini) [2016441] - mm/huge_memory.c: remove dedicated macro HPAGE_CACHE_INDEX_MASK (Rafael Aquini) [2016441] - mm/thp: decrease nr_thps in file's mapping on THP split (Rafael Aquini) [2016441] - mm/thp: fix page_address_in_vma() on file THP tails (Rafael Aquini) [2016441] - mm/thp: try_to_unmap() use TTU_SYNC for safe splitting (Rafael Aquini) [2016441] - mm/thp: make is_huge_zero_pmd() safe and quicker (Rafael Aquini) [2016441] - mm/thp: fix __split_huge_pmd_locked() on shmem migration entry (Rafael Aquini) [2016441] - mm/truncate: fix truncation for pages of arbitrary size (Rafael Aquini) [2016441] - mm/rmap: fix potential pte_unmap on an not mapped pte (Rafael Aquini) [2016441] - mm/rmap: correct obsolete comment of page_get_anon_vma() (Rafael Aquini) [2016441] - mm/rmap: use page_not_mapped in try_to_unmap() (Rafael Aquini) [2016441] - mm/rmap: fix obsolete comment in __page_check_anon_rmap() (Rafael Aquini) [2016441] - mm/rmap: remove unneeded semicolon in page_not_mapped() (Rafael Aquini) [2016441] - mm/rmap: correct some obsolete comments of anon_vma (Rafael Aquini) [2016441] - mm/pgtable-generic.c: optimize the VM_BUG_ON condition in pmdp_huge_clear_flush() (Rafael Aquini) [2016441] - mm/pgtable-generic.c: simplify the VM_BUG_ON condition in pmdp_huge_clear_flush() (Rafael Aquini) [2016441] - mm: prevent a warning when casting void* -> enum (Rafael Aquini) [2016441] - mm/hugeltb: simplify the return code of __vma_reservation_common() (Rafael Aquini) [2016441] - mm,thp,shmem: make khugepaged obey tmpfs mount flags (Rafael Aquini) [2016441] - mm/vma: make is_vma_temporary_stack() available for general use (Rafael Aquini) [2016441] - mm/vma: make vma_is_foreign() available for general use (Rafael Aquini) [2016441] - hugetlb: fix copy_huge_page_from_user contig page struct assumption (Rafael Aquini) [2016441] - mm/sparsemem: pfn_to_page is not valid yet on SPARSEMEM (Rafael Aquini) [2016441] - mm/sparse.c: use __nr_to_section(section_nr) to get mem_section (Rafael Aquini) [2016441] - mm/huge_memory.c: thp: fix conflict of above-47bit hint address and PMD alignment (Rafael Aquini) [2016441] - mm/huge_memory.c: make __thp_get_unmapped_area static (Rafael Aquini) [2016441] - mm/mempolicy.c: fix checking unmapped holes for mbind (Rafael Aquini) [2016441] - s390/mm: fix VMA and page table handling code in storage key handling functions (Rafael Aquini) [2016441] - s390/mm: validate VMA in PGSTE manipulation functions (Rafael Aquini) [2016441] - s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap() (Rafael Aquini) [2016441] - s390/gmap: validate VMA in __gmap_zap() (Rafael Aquini) [2016441] - s390: mm: Fix secure storage access exception handling (Rafael Aquini) [2016441] - powerpc/numa: Consider the max NUMA node for migratable LPAR (Rafael Aquini) [2016441] - powerpc/64s: Fix pte update for kernel memory on radix (Rafael Aquini) [2016441] - powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S (Rafael Aquini) [2016441] - powerpc/book3s64/pkeys: Use PVR check instead of cpu feature (Rafael Aquini) [2016441] - powerpc/mm: Fix reporting of kernel execute faults on the 8xx (Rafael Aquini) [2016441] - powerpc/mm/hash: Handle user access of kernel address gracefully (Rafael Aquini) [2016441] - powerpc/mm: Add missing tracepoint for tlbie (Rafael Aquini) [2016441] - arm64: hugetlb: avoid potential NULL dereference (Rafael Aquini) [2016441] - arm64/numa: Report correct memblock range for the dummy node (Rafael Aquini) [2016441] - x86/pat: Pass valid address to sanitize_phys() (Rafael Aquini) [2016441] - x86/mm: Check for pfn instead of page in vmalloc_sync_one() (Rafael Aquini) [2016441] - x86/mm/tlb: Revert "x86/mm: Align TLB invalidation info" (Rafael Aquini) [2016441] - x86/mm: Report which part of kernel image is freed (Rafael Aquini) [2016441] - mm: make free_reserved_area() return "const char *" (Rafael Aquini) [2016441] - x86/mm/init: Remove freed kernel image areas from alias mapping (Rafael Aquini) [2016441] - x86/mm/init: Add helper for freeing kernel image pages (Rafael Aquini) [2016441] - x86/mm/init: Pass unconverted symbol addresses to free_init_pages() (Rafael Aquini) [2016441] - x86/mm: Add TLB purge to free pmd/pte page interfaces (Rafael Aquini) [2016441] - mm/mmu_notifier: Make drm-backport/linux/mmu_notifier.h use RH_MMU_NOTIFIER_V2 (Waiman Long) [1946746] - mm/migrate: fix migrate_pgmap_owner w/o CONFIG_MMU_NOTIFIER (Waiman Long) [1946746] - mm/notifier: add migration invalidation type (Waiman Long) [1946746] - mm/migrate: add a flags parameter to migrate_vma (Waiman Long) [1946746] - mm/mmu_notifiers: ensure range_end() is paired with range_start() (Waiman Long) [1946746] - mm: track mmu notifiers in fs_reclaim_acquire/release (Waiman Long) [1946746] - mm: mmu_notifier: fix and extend kerneldoc (Waiman Long) [1946746] - mm/mmu_notifier: silence PROVE_RCU_LIST warnings (Waiman Long) [1946746] - mm/mmu_notifiers: Use 'interval_sub' as the variable for mmu_interval_notifier (Waiman Long) [1946746] - mm/mmu_notifiers: Use 'subscription' as the variable name for mmu_notifier (Waiman Long) [1946746] - mm/mmu_notifier: Rename struct mmu_notifier_mm to mmu_notifier_subscriptions (Waiman Long) [1946746] - mm, notifier: Catch sleeping/blocking for !blockable (Waiman Long) [1946746] - mm/mmu_notifiers: use the right return code for WARN_ON (Waiman Long) [1946746] - mm/mmu_notifiers: check if mmu notifier callbacks are allowed to fail (Waiman Long) [1946746] - mm/mmu_notifier: mmu_notifier_range_update_to_read_only() helper (Waiman Long) [1946746] - mm/mmu_notifier: pass down vma and reasons why mmu notifier is happening (Waiman Long) [1946746] - mm/mmu_notifier: use structure for invalidate_range_start/end callback (Waiman Long) [1946746] - Revert "mm, mmu_notifier: annotate mmu notifiers with blockable invalidate callbacks" (Waiman Long) [1946746] - mm, mmu_notifier: be explicit about range invalition non-blocking mode (Waiman Long) [1946746] - mm/oom_kill.c: clean up oom_reap_task_mm() (Waiman Long) [1946746] - mm, oom: distinguish blockable mode for mmu notifiers (Waiman Long) [1946746] - mm/mmu_notifier: helper to test if a range invalidation is blockable (Waiman Long) [1946746] - mm/mmu_notifier: Relocate mmu_notifier_put() (Waiman Long) [1946746] - mm/mmu_notifier: Add mmu_notifier versioning mechanism (Waiman Long) [1946746] - af_unix: Return errno instead of NULL in unix_create1(). (Balazs Nemeth) [2026690] - netfilter: nf_tables: fix audit memory leak in nf_tables_commit (Phil Sutter) [2028926] - ethtool: Validate module EEPROM offset as part of policy (Ivan Vecera) [2019090] - ethtool: Validate module EEPROM length as part of policy (Ivan Vecera) [2019090] - ethtool: Use kernel data types for internal EEPROM struct (Ivan Vecera) [2019090] - ethtool: Document behavior when module EEPROM bank attribute is omitted (Ivan Vecera) [2019090] - ethtool: Decrease size of module EEPROM get policy array (Ivan Vecera) [2019090] - ethtool: Document correct attribute type (Ivan Vecera) [2019090] - ethtool: Use correct command name in title (Ivan Vecera) [2019090] - net: fix mistake path for netdev_features_strings (Ivan Vecera) [2019089 2019090 2019092] - ethtool: add a stricter length check (Ivan Vecera) [2019089 2019090 2019092] - ethtool: Fix a typo (Ivan Vecera) [2019089 2019090 2019092] - net: ethtool: clear heap allocations for ethtool function (Ivan Vecera) [2019090] - ethtool: Fix NULL pointer dereference during module EEPROM dump (Ivan Vecera) [2019090] - ethtool: stats: Fix a copy-paste error (Ivan Vecera) [2019092] - ethtool: add missing EEPROM to list of messages (Ivan Vecera) [2019090] - ethtool: stats: clarify the initialization to ETHTOOL_STAT_NOT_SET (Ivan Vecera) [2019092] - ethtool: ioctl: Fix out-of-bounds warning in store_link_ksettings_for_user() (Ivan Vecera) [2019092] - ethtool: add interface to read RMON stats (Ivan Vecera) [2019092] - ethtool: add interface to read standard MAC Ctrl stats (Ivan Vecera) [2019092] - ethtool: add interface to read standard MAC stats (Ivan Vecera) [2019092] - ethtool: add a new command for reading standard stats (Ivan Vecera) [2019092] - docs: ethtool: document standard statistics (Ivan Vecera) [2019092] - docs: networking: extend the statistics documentation (Ivan Vecera) [2019092] - ethtool: add FEC statistics (Ivan Vecera) [2019089] - docs: net: statistics.rst: remove a duplicated kernel-doc (Ivan Vecera) [2019089] - ethtool: fec_prepare_data() - jump to error handling (Ivan Vecera) [2019089] - ethtool: move ethtool_stats_init (Ivan Vecera) [2019089] - ethtool: wire in generic SFP module access (Ivan Vecera) [2019090] - phy: sfp: add netlink SFP support to generic SFP code (Ivan Vecera) [2019090] - ethtool: Add fallback to get_module_eeprom from netlink command (Ivan Vecera) [2019090] - net: ethtool: Export helpers for getting EEPROM info (Ivan Vecera) [2019090] - ethtool: Allow network drivers to dump arbitrary EEPROM data (Ivan Vecera) [2019090] - docs: ethtool: correct quotes (Ivan Vecera) [2019090] - selftests: ethtool: add a netdevsim FEC test (Ivan Vecera) [2019089] - netdevsim: add FEC settings support (Ivan Vecera) [2019089] - ethtool: support FEC settings over netlink (Ivan Vecera) [2019089] - ethtool: document the enum values not defines (Ivan Vecera) [2019089] - ethtool: fec: fix FEC_NONE check (Ivan Vecera) [2019089] - ethtool: fec: add note about reuse of reserved (Ivan Vecera) [2019089] - ethtool: clarify the ethtool FEC interface (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->fec (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->active_fec (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->reserved (Ivan Vecera) [2019089] - ethtool: fec: remove long structure description (Ivan Vecera) [2019089] - ethtool: fec: fix typo in kdoc (Ivan Vecera) [2019089] - net: Remove redundant if statements (Petr Oros) [2026472] - netdevice: add the case if dev is NULL (Petr Oros) [2026472] - nvmet: use IOCB_NOWAIT only if the filesystem supports it (Chris Leech) [2015563] - nvmet-tcp: fix incomplete data digest send (Chris Leech) [2015563] - nvmet-tcp: fix memory leak when performing a controller reset (Chris Leech) [2015563] - nvmet-tcp: add an helper to free the cmd buffers (Chris Leech) [2015563] - nvmet-tcp: fix a race condition between release_queue and io_work (Chris Leech) [2015563] - nvmet-tcp: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet-rdma: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet-tcp: fix header digest verification (Chris Leech) [2015563] - nvmet-tcp: fix data digest pointer calculation (Chris Leech) [2015563] - nvmet-tcp: fix a memory leak when releasing a queue (Chris Leech) [2015563] - nvmet: fix a width vs precision bug in nvmet_subsys_attr_serial_show() (Chris Leech) [2015563] - nvmet: fixup buffer overrun in nvmet_subsys_attr_serial() (Chris Leech) [2015563] - nvmet: return bool from nvmet_passthru_ctrl and nvmet_is_passthru_req (Chris Leech) [2015563] - nvmet: looks at the passthrough controller when initializing CAP (Chris Leech) [2015563] - nvmet: check that host sqsize does not exceed ctrl MQES (Chris Leech) [2015563] - nvmet: avoid duplicate qid in connect cmd (Chris Leech) [2015563] - nvmet: pass back cntlid on successful completion (Chris Leech) [2015563] - nvmet: remove redundant assignments of variable status (Chris Leech) [2015563] - nvme-fabrics: ignore invalid fast_io_fail_tmo values (Chris Leech) [2015563] - nvme-tcp: fix memory leak when freeing a queue (Chris Leech) [2015563] - nvme-tcp: validate R2T PDU in nvme_tcp_handle_r2t() (Chris Leech) [2015563] - nvme-tcp: fix data digest pointer calculation (Chris Leech) [2015563] - nvme-tcp: fix possible req->offset corruption (Chris Leech) [2015563] - nvme-tcp: fix H2CData PDU send accounting (again) (Chris Leech) [2015563] - nvme: keep ctrl->namespaces ordered (Chris Leech) [2015563] - nvme-tcp: fix incorrect h2cdata pdu offset accounting (Chris Leech) [2015563] - nvme-tcp: fix io_work priority inversion (Chris Leech) [2015563] - nvme-multipath: fix ANA state updates when a namespace is not present (Chris Leech) [2015563] - nvme: avoid race in shutdown namespace removal (Chris Leech) [2015563] - nvme: update keep alive interval when kato is modified (Chris Leech) [2015563] - nvme: use return value from blk_execute_rq() (Chris Leech) [2015563] - nvme-tcp: Do not reset transport on data digest errors (Chris Leech) [2015563] - nvme-rdma: don't update queue count when failing to set io queues (Chris Leech) [2015563] - nvme-tcp: don't update queue count when failing to set io queues (Chris Leech) [2015563] - nvme-tcp: pair send_mutex init with destroy (Chris Leech) [2015563] - nvme-tcp: don't check blk_mq_tag_to_rq when receiving pdu data (Chris Leech) [2015563] - RDMA/rxe: Bump up default maximum values used via uverbs (Kamal Heib) [2029675]- scsi: qedi: Fix error codes in qedi_alloc_global_queues() (Nilesh Javali) [1983905] - scsi: qedi: Add support for fastpath doorbell recovery (Nilesh Javali) [1983905] - scsi: qedi: Use DEVICE_ATTR_RO() macro (Nilesh Javali) [1983905] - scsi: qedi: Fix host removal with running sessions (Nilesh Javali) [1983905] - scsi: qedi: Wake up if cmd_cleanup_req is set (Nilesh Javali) [1983905] - scsi: qedi: Complete TMF works before disconnect (Nilesh Javali) [1983905] - scsi: qedi: Pass send_iscsi_tmf task to abort (Nilesh Javali) [1983905] - scsi: qedi: Fix cleanup session block/unblock use (Nilesh Javali) [1983905] - scsi: qedi: Fix TMF session block/unblock use (Nilesh Javali) [1983905] - scsi: qedi: Use GFP_NOIO for TMF allocation (Nilesh Javali) [1983905] - scsi: qedi: Fix TMF tid allocation (Nilesh Javali) [1983905] - scsi: qedi: Fix use after free during abort cleanup (Nilesh Javali) [1983905] - scsi: qedi: Fix race during abort timeouts (Nilesh Javali) [1983905] - scsi: qedi: Fix null ref during abort handling (Nilesh Javali) [1983905] - vrf: Fix fast path output packet handling with async Netfilter rules (Antoine Tenart) [2019333] - ipv6: do not drop vrf udp multicast packets (Antoine Tenart) [2019333] - ipv6: handling of multicast packets received in VRF (Antoine Tenart) [2019333] - vrf: Do not attempt to create IPv6 mcast rule if IPv6 is disabled (Antoine Tenart) [2019333] - ipv6: add vrf table handling code for ipv6 mcast (Antoine Tenart) [2019333] - ipv4: Allow sending multicast packets on specific i/f using VRF socket (Antoine Tenart) [2019333] - xfs: fix I_DONTCACHE (Carlos Maiolino) [2024969] - kernfs: don't create a negative dentry if inactive node exists (Ian Kent) [2001597] - kernfs: also call kernfs_set_rev() for positive dentry (Ian Kent) [2001597] - ixgbevf: use xso.real_dev instead of xso.dev in callback functions of struct xfrmdev_ops (Ken Cox) [1970656] - ixgbe: Fix NULL pointer dereference in ixgbe_xdp_setup (Ken Cox) [1970653] - ixgbe, xsk: clean up the resources in ixgbe_xsk_pool_enable error path (Ken Cox) [1970653] - powerpc/perf: Fix missing is_sier_aviable() during build (Gustavo Walbon) [2011687] - perf script: Fix PERF_SAMPLE_WEIGHT_STRUCT support (Michael Petlan) [2026390] - RDMA/core: Set sgtable nents when using ib_dma_virt_map_sg() (Kamal Heib) [2025496] - RDMA: Use the sg_table directly and remove the opencoded version from umem (Kamal Heib) [2025496] - ovs: clear skb->tstamp in forwarding path (Antoine Tenart) [2020160] - net: openvswitch: fix kernel-doc warnings in flow.c (Antoine Tenart) [2020160] - openvswitch: Optimize operation for key comparison (Antoine Tenart) [2020160] - net: openvswitch: Remove unnecessary skb_nfct() (Antoine Tenart) [2020160] - openvswitch: meter: fix race when getting now_ms. (Antoine Tenart) [2020160] - net: openvswitch: Use 'skb_push_rcsum()' instead of hand coding it (Antoine Tenart) [2020160] - openvswitch: Fix a typo (Antoine Tenart) [2020160] - openvswitch: Warn over-mtu packets only if iface is UP. (Antoine Tenart) [2020160] - openvswitch: meter: remove rate from the bucket size calculation (Antoine Tenart) [2020160] - net: openvswitch: use core API to update/provide stats (Antoine Tenart) [2020160] - net: openvswitch: use new function dev_fetch_sw_netstats (Antoine Tenart) [2020160] - net: openvswitch: use dev_sw_netstats_rx_add() (Antoine Tenart) [2020160] - net: openvswitch: Constify static struct genl_small_ops (Antoine Tenart) [2020160] - selftests: add a test case for mirred egress to ingress (Xin Long) [1983894] - net: sched: act_mirred: drop dst for the direction from egress to ingress (Xin Long) [1983894] - usb: hso: fix error handling code of hso_create_net_device (José Ignacio Tornos Martínez) [1986489] {CVE-2021-37159} - i40e: Fix freeing of uninitialized misc IRQ vector (Stefan Assmann) [1990683] - x86/topology: Make __max_die_per_package available unconditionally (Aristeu Rozanski) [1949284] - x86/cpu/amd: Set __max_die_per_package on AMD (Aristeu Rozanski) [1949284] - x86/topology: Set cpu_die_id only if DIE_TYPE found (Aristeu Rozanski) [1949284] - x86/mce: Drop AMD-specific "DEFERRED" case from Intel severity rule list (Aristeu Rozanski) [1949284] - EDAC/mce_amd: Add new error descriptions for existing types (Aristeu Rozanski) [1949284] - x86/mce/amd, edac: Remove report_gart_errors (Aristeu Rozanski) [1949284] - x86/mce/amd: Make threshold bank setting hotplug robust (Aristeu Rozanski) [1949284] - x86/mce/amd: Cleanup threshold device remove path (Aristeu Rozanski) [1949284] - x86/mce/amd: Straighten CPU hotplug path (Aristeu Rozanski) [1949284] - x86/mce/amd: Sanitize thresholding device creation hotplug path (Aristeu Rozanski) [1949284] - x86/mce/amd: Protect a not-fully initialized bank from the thresholding interrupt (Aristeu Rozanski) [1949284] - x86/mce/amd: Init thresholding machinery only on relevant vendors (Aristeu Rozanski) [1949284] - x86/mce/amd: Do proper cleanup on error paths (Aristeu Rozanski) [1949284] - x86/mce/amd: Fix kobject lifetime (Aristeu Rozanski) [1949284] - x86/mce/amd: Publish the bank pointer only after setup has succeeded (Aristeu Rozanski) [1949284] - x86/mce/amd: Make disable_err_thresholding() static (Aristeu Rozanski) [1949284] - x86/MCE: Determine MCA banks' init state properly (Aristeu Rozanski) [1949284] - x86/MCE: Group AMD function prototypes in (Aristeu Rozanski) [1949284] - x86/MCE: Switch to use the new generic UUID API (Aristeu Rozanski) [1949284] - ipv4: fix endianness issue in inet_rtm_getroute_build_skb() (Guillaume Nault) [2022057] - net: igmp: fix data-race in igmp_ifc_timer_expire() (Guillaume Nault) [2022057] - net/ipv4: swap flow ports when validating source (Guillaume Nault) [2022057] - tools headers UAPI: Sync linux/in.h copy with the kernel sources (Guillaume Nault) [2022057] - icmp: don't send out ICMP messages with a source address of 0.0.0.0 (Guillaume Nault) [2022057] - cipso: correct comments of cipso_v4_cache_invalidate() (Guillaume Nault) [2022057] - crypto: ccp - Make use of the helper macro kthread_run() (Vladis Dronov) [1997593] - crypto: ccp - Fix whitespace in sev_cmd_buffer_len() (Vladis Dronov) [1997593] - crypto: ccp - fix resource leaks in ccp_run_aes_gcm_cmd() (Vladis Dronov) [1997593] - crypto: jitter - consider 32 LSB for APT (Herbert Xu) [1994390] - rcu: Tighten rcu_advance_cbs_nowake() checks (Daniel Vacek) [2013408] - cxgb3: Remove seeprom_write and use VPD API (Myron Stowe) [2019086] - cxgb3: Use VPD API in t3_seeprom_wp() (Myron Stowe) [2019086] - cxgb3: Remove t3_seeprom_read and use VPD API (Myron Stowe) [2019086] - PCI/VPD: Use pci_read_vpd_any() in pci_vpd_size() (Myron Stowe) [2019086] - PCI/VPD: Add pci_read/write_vpd_any() (Myron Stowe) [2019086] - PCI/VPD: Defer VPD sizing until first access (Myron Stowe) [2019086] - PCI/VPD: Use unaligned access helpers (Myron Stowe) [2019086] - PCI/VPD: Clean up public VPD defines and inline functions (Myron Stowe) [2019086] - cxgb4: Use pci_vpd_find_id_string() to find VPD ID string (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_find_id_string() (Myron Stowe) [2019086] - PCI/VPD: Include post-processing in pci_vpd_find_tag() (Myron Stowe) [2019086] - PCI/VPD: Stop exporting pci_vpd_find_info_keyword() (Myron Stowe) [2019086] - PCI/VPD: Stop exporting pci_vpd_find_tag() (Myron Stowe) [2019086] - scsi: cxlflash: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - cxgb4: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - cxgb4: Remove unused vpd_param member ec (Myron Stowe) [2019086] - cxgb4: Validate VPD checksum with pci_vpd_check_csum() (Myron Stowe) [2019086] - bnxt: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - bnxt: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - bnx2x: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - bnx2x: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - bnx2: Replace open-coded byte swapping with swab32s() (Myron Stowe) [2019086] - bnx2: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: falcon: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: falcon: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - tg3: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - tg3: Validate VPD checksum with pci_vpd_check_csum() (Myron Stowe) [2019086] - tg3: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - sfc: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_check_csum() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_alloc() (Myron Stowe) [2019086] - PCI/VPD: Treat invalid VPD like missing VPD capability (Myron Stowe) [2019086] - PCI/VPD: Determine VPD size in pci_vpd_init() (Myron Stowe) [2019086] - PCI/VPD: Embed struct pci_vpd in struct pci_dev (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd.valid member (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd_ops (Myron Stowe) [2019086] - PCI/VPD: Reorder pci_read_vpd(), pci_write_vpd() (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd.flag (Myron Stowe) [2019086] - PCI/VPD: Make pci_vpd_wait() uninterruptible (Myron Stowe) [2019086] - PCI/VPD: Remove pci_vpd_size() old_size argument (Myron Stowe) [2019086] - PCI/VPD: Allow access to valid parts of VPD if some is invalid (Myron Stowe) [2019086] - PCI/VPD: Don't check Large Resource Item Names for validity (Myron Stowe) [2019086] - PCI/VPD: Reject resource tags with invalid size (Myron Stowe) [2019086] - PCI/VPD: Treat initial 0xff as missing EEPROM (Myron Stowe) [2019086] - PCI/VPD: Check Resource Item Names against those valid for type (Myron Stowe) [2019086] - PCI/VPD: Correct diagnostic for VPD read failure (Myron Stowe) [2019086] - net: create netdev->dev_addr assignment helpers (Josef Oskera) [2016478] - scsi: ibmvfc: Fix up duplicate response detection (Steve Best) [2015732] - scsi: core: Avoid leaving shost->last_reset with stale value if EH does not run (Ewan D. Milne) [2011330] - libbpf: Add support for new llvm bpf relocations (Yauheni Kaliuta) [1944799] - libbpf: Fix memory leak in strset (Yauheni Kaliuta) [1944799] - selftests: bpf: skip test_doc_build.sh (Yauheni Kaliuta) [1944799] - bpf: Stop caching subprog index in the bpf_pseudo_func insn (Yauheni Kaliuta) [1944799] - redhat/configs: enable CONFIG_BPF_UNPRIV_DEFAULT_OFF (Yauheni Kaliuta) [1944799] - kbuild: Quote OBJCOPY var to avoid a pahole call break the build (Yauheni Kaliuta) [1944799] - bpf: Fix BPF_JIT kconfig symbol dependency (Yauheni Kaliuta) [1944799] - bpf: Add kconfig knob for disabling unpriv bpf by default (Yauheni Kaliuta) [1944799] - bpf, kconfig: Add consolidated menu entry for bpf with core options (Yauheni Kaliuta) [1944799] - tools/resolve_btfids: Fix warnings (Yauheni Kaliuta) [1944799] - tools/runqslower: Allow substituting custom vmlinux.h for the build (Yauheni Kaliuta) [1944799] - lib/string.c: allow searching for NUL with strnchr (Yauheni Kaliuta) [1944799] - rpmspec: update manpages installation after 5.13 rebase (bpf-helpers, bpf-syscall) (Yauheni Kaliuta) [1944799] - libbpf: Fix segfault in static linker for objects without BTF (Yauheni Kaliuta) [1944799] - bpf: Avoid using ARRAY_SIZE on an uninitialized pointer (Yauheni Kaliuta) [1944799] - bpf: Remove superfluous aux sanitation on subprog rejection (Yauheni Kaliuta) [1944799] - bpf: Clarify a bpf_bprintf_prepare macro (Yauheni Kaliuta) [1944799] - bpf: Fix nested bpf_bprintf_prepare with more per-cpu buffers (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix the snprintf test (Yauheni Kaliuta) [1944799] - bpf: Implement formatted output helpers with bstr_printf (Yauheni Kaliuta) [1944799] - seq_file: Add a seq_bprintf function (Yauheni Kaliuta) [1944799] - bpf: Notify user if we ever hit a bpf_snprintf verifier bug (Yauheni Kaliuta) [1944799] - selftests/bpf: Add a series of tests for bpf_snprintf (Yauheni Kaliuta) [1944799] - bpf: Lock bpf_trace_printk's tmp buf before it is written to (Yauheni Kaliuta) [1944799] - bpf: Add a bpf_snprintf helper (Yauheni Kaliuta) [1944799] - bpf: Factorize bpf_trace_printk and bpf_seq_printf (Yauheni Kaliuta) [1944799] - Stop the ad-hoc games with -Wno-maybe-initialized (Yauheni Kaliuta) [1944799] - kbuild: compute false-positive -Wmaybe-uninitialized cases in Kconfig (Yauheni Kaliuta) [1944799] - bpf: Fix potentially incorrect results with bpf_get_local_storage() (Yauheni Kaliuta) [1944799] - bpf, samples: Fix xdpsock with '-M' parameter missing unload process (Yauheni Kaliuta) [1944799] - libbpf: Don't crash on object files with no symbol tables (Yauheni Kaliuta) [1944799] - libbpf: Fix ELF symbol visibility update logic (Yauheni Kaliuta) [1944799] - bpf, selftests: Adjust few selftest outcomes wrt unreachable code (Yauheni Kaliuta) [1944799] - bpf: Do not mark insn as seen under speculative path verification (Yauheni Kaliuta) [1944799] - bpf: Inherit expanded/patched seen count from old aux data (Yauheni Kaliuta) [1944799] - bpf, selftests: Adjust few selftest result_unpriv outcomes (Yauheni Kaliuta) [1944799] - bpf: Fix BPF_LSM kconfig symbol dependency (Yauheni Kaliuta) [1944799] - selftests/bpf: Add test for l3 use of bpf_redirect_peer (Yauheni Kaliuta) [1944799] - bpftool: Add sock_release help info for cgroup attach/prog load command (Yauheni Kaliuta) [1944799] - bpf, offload: Reorder offload callback 'prepare' in verifier (Yauheni Kaliuta) [1944799] - selftests/bpf: Test ringbuf mmap read-only and read-write restrictions (Yauheni Kaliuta) [1944799] - selftests/bpf: Convert static to global in tc_redirect progs (Yauheni Kaliuta) [1944799] - selftests/bpf: Rewrite test_tc_redirect.sh as prog_tests/tc_redirect.c (Yauheni Kaliuta) [1944799] - libbpf: Provide GELF_ST_VISIBILITY() define for older libelf (Yauheni Kaliuta) [1944799] - bpf: Add deny list of btf ids check for tracing programs (Yauheni Kaliuta) [1944799] - bpf: Forbid trampoline attach for functions with variable arguments (Yauheni Kaliuta) [1944799] - samples/bpf: Consider frame size in tx_only of xdpsock sample (Yauheni Kaliuta) [1944799] - libbpf: Add NULL check to add_dummy_ksym_var (Yauheni Kaliuta) [1944799] - libbpf: Fix signed overflow in ringbuf_process_ring (Yauheni Kaliuta) [1944799] - bpf, selftests: Update array map tests for per-cpu batched ops (Yauheni Kaliuta) [1944799] - bpf: Add batched ops support for percpu array (Yauheni Kaliuta) [1944799] - bpf, docs: Fix literal block for example code (Yauheni Kaliuta) [1944799] - bpf, cpumap: Bulk skb using netif_receive_skb_list (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix field existence CO-RE reloc tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix BPF_CORE_READ_BITFIELD() macro (Yauheni Kaliuta) [1944799] - selftests/bpf: Use ASSERT macros in lsm test (Yauheni Kaliuta) [1944799] - selftests/bpf: Test that module can't be unloaded with attached trampoline (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to lsm test (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to fexit_test (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to fentry_test (Yauheni Kaliuta) [1944799] - bpf: Allow trampoline re-attach for tracing and lsm programs (Yauheni Kaliuta) [1944799] - bpf: Document the pahole release info related to libbpf in bpf_devel_QA.rst (Yauheni Kaliuta) [1944799] - selftests/bpf: Document latest Clang fix expectations for linking tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Add map linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Add global variables linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Add function linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Omit skeleton generation for multi-linked BPF object files (Yauheni Kaliuta) [1944799] - selftests/bpf: Use -O0 instead of -Og in selftests builds (Yauheni Kaliuta) [1944799] - libbpf: Support extern resolution for BTF-defined maps in .maps section (Yauheni Kaliuta) [1944799] - libbpf: Add linker extern resolution support for functions and global variables (Yauheni Kaliuta) [1944799] - libbpf: Tighten BTF type ID rewriting with error checking (Yauheni Kaliuta) [1944799] - libbpf: Extend sanity checking ELF symbols with externs validation (Yauheni Kaliuta) [1944799] - libbpf: Make few internal helpers available outside of libbpf.c (Yauheni Kaliuta) [1944799] - libbpf: Factor out symtab and relos sanity checks (Yauheni Kaliuta) [1944799] - libbpf: Refactor BTF map definition parsing (Yauheni Kaliuta) [1944799] - libbpf: Allow gaps in BPF program sections to support overriden weak functions (Yauheni Kaliuta) [1944799] - libbpf: Mark BPF subprogs with hidden visibility as static for BPF verifier (Yauheni Kaliuta) [1944799] - libbpf: Suppress compiler warning when using SEC() macro with externs (Yauheni Kaliuta) [1944799] - bpftool: Dump more info about DATASEC members (Yauheni Kaliuta) [1944799] - bpftool: Support dumping BTF VAR's "extern" linkage (Yauheni Kaliuta) [1944799] - bpf: Remove unnecessary map checks for ARG_PTR_TO_CONST_STR (Yauheni Kaliuta) [1944799] - xsk: Align XDP socket batch size with DPDK (Yauheni Kaliuta) [1944799] - bpf, doc: Fix some invalid links in bpf_devel_QA.rst (Yauheni Kaliuta) [1944799] - net, xdp: Update pkt_type if generic XDP changes unicast MAC (Yauheni Kaliuta) [1944799] - powerpc/ebpf32: Use standard function call for functions within 32M distance (Yauheni Kaliuta) [1944799] - selftests/bpf: Add docs target as all dependency (Yauheni Kaliuta) [1944799] - bpf/selftests: Add bpf_get_task_stack retval bounds test_prog (Yauheni Kaliuta) [1944799] - bpf/selftests: Add bpf_get_task_stack retval bounds verifier test (Yauheni Kaliuta) [1944799] - bpf: Refine retval for bpf_get_task_stack helper (Yauheni Kaliuta) [1944799] - samples/bpf: Fix broken tracex1 due to kprobe argument change (Yauheni Kaliuta) [1944799] - libbpf: Introduce a BPF_SNPRINTF helper macro (Yauheni Kaliuta) [1944799] - libbpf: Initialize the bpf_seq_printf parameters array field by field (Yauheni Kaliuta) [1944799] - bpf: Add a ARG_PTR_TO_CONST_STR argument type (Yauheni Kaliuta) [1944799] - bpftool: Fix a clang compilation warning (Yauheni Kaliuta) [1944799] - selftests/bpf: Silence clang compilation warnings (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix test_cpp compilation failure with clang (Yauheni Kaliuta) [1944799] - selftests: Set CC to clang in lib.mk if LLVM is set (Yauheni Kaliuta) [1944799] - libbpf: Remove unused field. (Yauheni Kaliuta) [1944799] - tools/testing: Remove unused variable (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix the ASSERT_ERR_PTR macro (Yauheni Kaliuta) [1944799] - selftests/bpf: Add tests for target information in bpf_link info queries (Yauheni Kaliuta) [1944799] - bpf: Return target info when a tracing bpf_link is queried (Yauheni Kaliuta) [1944799] - libbpf: Clarify flags in ringbuf helpers (Yauheni Kaliuta) [1944799] - bpf: Sync bpf headers in tooling infrastucture (Yauheni Kaliuta) [1944799] - bpf: Document PROG_TEST_RUN limitations (Yauheni Kaliuta) [1944799] - bpf, inode: Remove second initialization of the bpf_preload_lock (Yauheni Kaliuta) [1944799] - libbpf: Fix KERNEL_VERSION macro (Yauheni Kaliuta) [1944799] - bpf: selftests: Specify CONFIG_DYNAMIC_FTRACE in the testing config (Yauheni Kaliuta) [1944799] - powerpc/bpf: Reallocate BPF registers to volatile registers when possible on PPC32 (Yauheni Kaliuta) [1944799] - powerpc/bpf: Change values of SEEN_ flags (Yauheni Kaliuta) [1944799] - powerpc/bpf: Move common functions into bpf_jit_comp.c (Yauheni Kaliuta) [1944799] - powerpc/bpf: Remove classical BPF support for PPC32 (Yauheni Kaliuta) [1944799] - powerpc/bpf: Move common helpers into bpf_jit.h (Yauheni Kaliuta) [1944799] - powerpc/bpf: Change register numbering for bpf_set/is_seen_register() (Yauheni Kaliuta) [1944799] - libbpf: Remove redundant semi-colon (Yauheni Kaliuta) [1944799] - bpf: Remove repeated struct btf_type declaration (Yauheni Kaliuta) [1944799] - bpf, cgroup: Delete repeated struct bpf_prog declaration (Yauheni Kaliuta) [1944799] - bpf: Remove unused parameter from ___bpf_prog_run (Yauheni Kaliuta) [1944799] - bpf, selftests: test_maps generating unrecognized data section (Yauheni Kaliuta) [1944799] - selftests/bpf: Add an option for a debug shell in vmtest.sh (Yauheni Kaliuta) [1944799] - bpf: Remove redundant assignment of variable id (Yauheni Kaliuta) [1944799] - bpf: Remove unused bpf_load_pointer (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove unused defines (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove mutex and condition variable (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove thread attribute (Yauheni Kaliuta) [1944799] - selftests: xsk: Implement bpf_link test (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove sync_mutex_tx and atomic var (Yauheni Kaliuta) [1944799] - selftests: xsk: Refactor teardown/bidi test cases and testapp_validate (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove Tx synchronization resources (Yauheni Kaliuta) [1944799] - selftests: xsk: Split worker thread (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove thread for netns switch (Yauheni Kaliuta) [1944799] - samples: bpf: Do not unload prog within xdpsock (Yauheni Kaliuta) [1944799] - libbpf: xsk: Use bpf_link (Yauheni Kaliuta) [1944799] - selftests: xsk: Simplify frame traversal in dumping thread (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove inline keyword from source file (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove unused function (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove struct ifaceconfigobj (Yauheni Kaliuta) [1944799] - selftests: xsk: Don't call worker_pkt_dump() for stats test (Yauheni Kaliuta) [1944799] - libbpf: Fix memory leak when emitting final btf_ext (Yauheni Kaliuta) [1944799] - bpf: selftests: Update clang requirement in README.rst for testing kfunc call (Yauheni Kaliuta) [1944799] - bpf: Update bpf_design_QA.rst to clarify the kfunc call is not ABI (Yauheni Kaliuta) [1944799] - bpf: selftests: Add kfunc_call test (Yauheni Kaliuta) [1944799] - bpf: selftests: Bpf_cubic and bpf_dctcp calling kernel functions (Yauheni Kaliuta) [1944799] - bpf: selftests: Rename bictcp to bpf_cubic (Yauheni Kaliuta) [1944799] - libbpf: Support extern kernel function (Yauheni Kaliuta) [1944799] - libbpf: Record extern sym relocation first (Yauheni Kaliuta) [1944799] - libbpf: Rename RELO_EXTERN to RELO_EXTERN_VAR (Yauheni Kaliuta) [1944799] - libbpf: Refactor codes for finding btf id of a kernel symbol (Yauheni Kaliuta) [1944799] - libbpf: Refactor bpf_object__resolve_ksyms_btf_id (Yauheni Kaliuta) [1944799] - bpf: Support bpf program calling kernel function (Yauheni Kaliuta) [1944799] - bpf: Refactor btf_check_func_arg_match (Yauheni Kaliuta) [1944799] - bpf: Simplify freeing logic in linfo and jited_linfo (Yauheni Kaliuta) [1944799] - libbpf: Preserve empty DATASEC BTFs during static linking (Yauheni Kaliuta) [1944799] - bpf: struct sock is declared twice in bpf_sk_storage header (Yauheni Kaliuta) [1944799] - bpf: Remove unused headers (Yauheni Kaliuta) [1944799] - libbpf: Add bpf object kern_version attribute setter (Yauheni Kaliuta) [1944799] - bpf: selftests: Add tests for batched ops in LPM trie maps (Yauheni Kaliuta) [1944799] - bpf: Add support for batched ops in LPM trie maps (Yauheni Kaliuta) [1944799] - selftests/bpf: Better error messages for ima_setup.sh failures (Yauheni Kaliuta) [1944799] - bpf: Fix NULL pointer dereference in bpf_get_local_storage() helper (Yauheni Kaliuta) [1944799] - libbpf: Constify few bpf_program getters (Yauheni Kaliuta) [1944799] - bpf: Fix typo 'accesible' into 'accessible' (Yauheni Kaliuta) [1944799] - tracing: Fix various typos in comments (Yauheni Kaliuta) [1944799] - libbpf: Skip BTF fixup if object file has no BTF (Yauheni Kaliuta) [1944799] - bpf: Remove insn_buf[] declaration in inner block (Yauheni Kaliuta) [1944799] - selftests/bpf: Add multi-file statically linked BPF object file test (Yauheni Kaliuta) [1944799] - selftests/bpf: Pass all BPF .o's through BPF static linker (Yauheni Kaliuta) [1944799] - selftests/bpf: Re-generate vmlinux.h and BPF skeletons if bpftool changed (Yauheni Kaliuta) [1944799] - bpftool: Add `gen object` command to perform BPF static linking (Yauheni Kaliuta) [1944799] - bpftool: Add ability to specify custom skeleton object name (Yauheni Kaliuta) [1944799] - libbpf: Add BPF static linker BTF and BTF.ext support (Yauheni Kaliuta) [1944799] - libbpf: Add BPF static linker APIs (Yauheni Kaliuta) [1944799] - libbpf: Add generic BTF type shallow copy API (Yauheni Kaliuta) [1944799] - libbpf: Extract internal set-of-strings datastructure APIs (Yauheni Kaliuta) [1944799] - libbpf: Rename internal memory-management helpers (Yauheni Kaliuta) [1944799] - libbpf: Generalize BTF and BTF.ext type ID and strings iteration (Yauheni Kaliuta) [1944799] - libbpf: Expose btf_type_by_id() internally (Yauheni Kaliuta) [1944799] - x86: Fix various typos in comments (Yauheni Kaliuta) [1944799] - selftests/bpf: drop custom NULL #define in skb_pkt_end selftest (Yauheni Kaliuta) [1944799] - libbpf: provide NULL and KERNEL_VERSION macros in bpf_helpers.h (Yauheni Kaliuta) [1944799] - bpf: net: Emit anonymous enum with BPF_TCP_CLOSE value explicitly (Yauheni Kaliuta) [1944799] - selftests/bpf: Use nanosleep() syscall instead of sleep() in get_cgroup_id (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - selftests/bpf: Build everything in debug mode (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix maybe-uninitialized warning in xdpxceiver test (Yauheni Kaliuta) [1944799] - bpftool: Fix maybe-uninitialized warnings (Yauheni Kaliuta) [1944799] - libbpf: Add explicit padding to bpf_xdp_set_link_opts (Yauheni Kaliuta) [1944799] - kernel/bpf/: Fix misspellings using codespell tool (Yauheni Kaliuta) [1944799] - s390/bpf: Implement new atomic ops (Yauheni Kaliuta) [1944799] - bpf: selftests: Remove unused 'nospace_err' in tests for batched ops in array maps (Yauheni Kaliuta) [1944799] - samples: bpf: Fix a spelling typo in do_hbm_test.sh (Yauheni Kaliuta) [1944799] - libbpf: Avoid inline hint definition from 'linux/stddef.h' (Yauheni Kaliuta) [1944799] - libbpf: xsk: Move barriers from libbpf_util.h to xsk.h (Yauheni Kaliuta) [1944799] - libbpf: xsk: Remove linux/compiler.h header (Yauheni Kaliuta) [1944799] - bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - bpf, xdp: Restructure redirect actions (Yauheni Kaliuta) [1944799] - bpf, xdp: Make bpf_redirect_map() a map operation (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix compiler warning in BPF_KPROBE definition in loop6.c (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix typo in Makefile (Yauheni Kaliuta) [1944799] - libbpf: Fix arm64 build (Yauheni Kaliuta) [1944799] - libbpf, xsk: Add libbpf_smp_store_release libbpf_smp_load_acquire (Yauheni Kaliuta) [1944799] - selftests, bpf: Extend test_tc_tunnel test with vxlan (Yauheni Kaliuta) [1944799] - bpf: Add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_ENCAP_L2_ETH (Yauheni Kaliuta) [1944799] - selftests/bpf: Simplify the calculation of variables (Yauheni Kaliuta) [1944799] - bpf: Simplify the calculation of variables (Yauheni Kaliuta) [1944799] - selftests: bpf: Don't run sk_lookup in verifier tests (Yauheni Kaliuta) [1944799] - selftests: bpf: Check that PROG_TEST_RUN repeats as requested (Yauheni Kaliuta) [1944799] - selftests: bpf: Convert sk_lookup ctx access tests to PROG_TEST_RUN (Yauheni Kaliuta) [1944799] - bpf: Add PROG_TEST_RUN support for sk_lookup programs (Yauheni Kaliuta) [1944799] - bpf: Consolidate shared test timing code (Yauheni Kaliuta) [1944799] - docs/bpf: Add bpf() syscall command reference (Yauheni Kaliuta) [1944799] - selftests/bpf: Test syscall command parsing (Yauheni Kaliuta) [1944799] - selftests/bpf: Templatize man page generation (Yauheni Kaliuta) [1944799] - tools/bpf: Remove bpf-helpers from bpftool docs (Yauheni Kaliuta) [1944799] - scripts/bpf: Add syscall commands printer (Yauheni Kaliuta) [1944799] - tools: Sync uapi bpf.h header with latest changes (Yauheni Kaliuta) [1944799] - scripts/bpf: Abstract eBPF API target parameter (Yauheni Kaliuta) [1944799] - bpf: Document BPF_MAP_*_BATCH syscall commands (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_QUERY syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_TEST_RUN syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_ATTACH syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_PIN syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_F_LOCK in syscall commands (Yauheni Kaliuta) [1944799] - bpf: Add minimal bpf() command documentation (Yauheni Kaliuta) [1944799] - bpf: Import syscall arg documentation (Yauheni Kaliuta) [1944799] - libbpf: Fix whitespace in btf_add_composite() comment (Yauheni Kaliuta) [1944799] - selftests/bpf: Add a verifier scale test with unknown bounded loop (Yauheni Kaliuta) [1944799] - tools, bpf_asm: Exit non-zero on errors (Yauheni Kaliuta) [1944799] - tools, bpf_asm: Hard error on out of range jumps (Yauheni Kaliuta) [1944799] - selftests/bpf: Add arraymap test for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - selftests/bpf: Add hashmap test for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpftool: Print subprog address properly (Yauheni Kaliuta) [1944799] - libbpf: Support subprog address relocation (Yauheni Kaliuta) [1944799] - libbpf: Move function is_ldimm64() earlier in libbpf.c (Yauheni Kaliuta) [1944799] - bpf: Add arraymap support for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Add hashtab support for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Add bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Change return value of verifier function add_subprog() (Yauheni Kaliuta) [1944799] - bpf: Refactor check_func_call() to allow callback function (Yauheni Kaliuta) [1944799] - bpf: Factor out verbose_invalid_scalar() (Yauheni Kaliuta) [1944799] - bpf: Factor out visit_func_call_insn() in check_cfg() (Yauheni Kaliuta) [1944799] - selftests/bpf: Copy extras in out-of-srctree builds (Yauheni Kaliuta) [1944799] - selftests/bpf: Propagate error code of the command to vmtest.sh (Yauheni Kaliuta) [1944799] - selftests/bpf: Introduce xsk statistics tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Restructure xsk selftests (Yauheni Kaliuta) [1944799] - selftests/bpf: Expose and rename debug argument (Yauheni Kaliuta) [1944799] - selftest/bpf: Make xsk tests less verbose (Yauheni Kaliuta) [1944799] - bpf: Rename fixup_bpf_calls and add some comments (Yauheni Kaliuta) [1944799] - bpf: Use MAX_BPF_FUNC_REG_ARGS macro (Yauheni Kaliuta) [1944799] - bpf: runqslower: Prefer using local vmlimux to generate vmlinux.h (Yauheni Kaliuta) [1944799] - bpf: Add kernel/modules BTF presence checks to bpftool feature command (Yauheni Kaliuta) [1944799]- netfilter: log: work around missing softdep backend module (Florian Westphal) [2017794] - netfilter: nft_ct: protect nft_ct_pcpu_template_refcnt with mutex (Florian Westphal) [2017794] - netfilter: Fix fall-through warnings for Clang (Florian Westphal) [2017794] - netfilter: nft_nat: allow to specify layer 4 protocol NAT only (Florian Westphal) [2017794] - netfilter: conntrack: adjust stop timestamp to real expiry value (Florian Westphal) [2017794] - netfilter: ipvs: make global sysctl readonly in non-init netns (Florian Westphal) [2017794] - ipvs: fix possible memory leak in ip_vs_control_net_init (Florian Westphal) [2017794] - ipvs: fix the connection sync failed in some cases (Florian Westphal) [2017794] - net: Fix offloading indirect devices dependency on qdisc order creation (Davide Caratti) [1997381] - net/core: Remove unused field from struct flow_indr_dev (Davide Caratti) [1997381] - Drivers: hv: balloon: Use VMBUS_RING_SIZE() wrapper for dm_ring_size (Vitaly Kuznetsov) [2019101] - hv_balloon: Remove redundant assignment to region_start (Vitaly Kuznetsov) [2019101] - hv_balloon: disable warning when floor reached (Vitaly Kuznetsov) [2019101] - net/tls: Fix flipped sign in async_wait.err assignment (Sabrina Dubroca) [2019176] - net/tls: Fix flipped sign in tls_err_abort() calls (Sabrina Dubroca) [2019176] - tls: prevent oversized sendfile() hangs by ignoring MSG_MORE (Sabrina Dubroca) [2019176] - tls splice: remove inappropriate flags checking for MSG_PEEK (Sabrina Dubroca) [2019176] - net/tls: Fix use-after-free after the TLS device goes down and up (Sabrina Dubroca) [2019176] - net/tls: Replace TLS_RX_SYNC_RUNNING with RCU (Sabrina Dubroca) [2019176] - tls splice: check SPLICE_F_NONBLOCK instead of MSG_DONTWAIT (Sabrina Dubroca) [2019176] - net/tls: Remove redundant initialization of record (Sabrina Dubroca) [2019176] - ibmvnic: don't stop queue in xmit (Diego Domingos) [2011995] - selftests: net: switch to socat in the GSO GRE test (Hangbin Liu) [2018059] - selftests: net: properly support IPv6 in GSO GRE test (Hangbin Liu) [2018059] - kselftests/net: add missed setup_loopback.sh/setup_veth.sh to Makefile (Hangbin Liu) [2018059] - selftests: add simple GSO GRE test (Hangbin Liu) [2018059] - selftests/net: allow GRO coalesce test on veth (Hangbin Liu) [2018059] - selftests/net: GRO coalesce test (Hangbin Liu) [2018059] - perf/x86: Reset destroy callback on event init failure (Michael Petlan) [2003982] - x86/msr: Define new bits in TSX_FORCE_ABORT MSR (Michael Petlan) [2003982] - perf script: Fix --list-dlfilters documentation (Michael Petlan) [2003982] - perf/x86/intel/uncore: Fix IIO cleanup mapping procedure for SNR/ICX (Michael Petlan) [2003982] - Revert "perf map: Fix dso->nsinfo refcounting" (Michael Petlan) [2003982] - perf pmu: Fix alias matching (Michael Petlan) [2003982] - perf cs-etm: Split --dump-raw-trace by AUX records (Michael Petlan) [2003982] - perf sched: Fix record failure when CONFIG_SCHEDSTATS is not set (Michael Petlan) [2003982] - perf probe: Fix add event failure when running 32-bit perf in a 64-bit kernel (Michael Petlan) [2003982] - perf data: Close all files in close_dir() (Michael Petlan) [2003982] - perf probe-file: Delete namelist in del_events() on the error path (Michael Petlan) [2003982] - perf test bpf: Free obj_buf (Michael Petlan) [2003982] - perf trace: Free strings in trace__parse_events_option() (Michael Petlan) [2003982] - perf trace: Free syscall tp fields in evsel->priv (Michael Petlan) [2003982] - perf trace: Free syscall->arg_fmt (Michael Petlan) [2003982] - perf trace: Free malloc'd trace fields on exit (Michael Petlan) [2003982] - perf lzma: Close lzma stream on exit (Michael Petlan) [2003982] - perf script: Fix memory 'threads' and 'cpus' leaks on exit (Michael Petlan) [2003982] - perf script: Release zstd data (Michael Petlan) [2003982] - perf session: Cleanup trace_event (Michael Petlan) [2003982] - perf inject: Close inject.output on exit (Michael Petlan) [2003982] - perf report: Free generated help strings for sort option (Michael Petlan) [2003982] - perf env: Fix memory leak of cpu_pmu_caps (Michael Petlan) [2003982] - perf test maps__merge_in: Fix memory leak of maps (Michael Petlan) [2003982] - perf dso: Fix memory leak in dso__new_map() (Michael Petlan) [2003982] - perf test event_update: Fix memory leak of unit (Michael Petlan) [2003982] - perf test event_update: Fix memory leak of evlist (Michael Petlan) [2003982] - perf test session_topology: Delete session->evlist (Michael Petlan) [2003982] - perf env: Fix sibling_dies memory leak (Michael Petlan) [2003982] - perf probe: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf map: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf inject: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf cs-etm: Split Coresight decode by aux records (Michael Petlan) [2003982] - perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE) (Michael Petlan) [2003982] - libperf: Fix build error with LIBPFM4=1 (Michael Petlan) [2003982] - perf stat: Merge uncore events by default for hybrid platform (Michael Petlan) [2003982] - perf tests: Fix 'Convert perf time to TSC' on core-only system (Michael Petlan) [2003982] - perf tests: Fix 'Roundtrip evsel->name' on core-only system (Michael Petlan) [2003982] - perf tests: Fix 'Parse event definition strings' on core-only system (Michael Petlan) [2003982] - perf pmu: Skip invalid hybrid pmu (Michael Petlan) [2003982] - perf test: Add free() calls for scandir() returned dirent entries (Michael Petlan) [2003982] - libperf: Add tests for perf_evlist__set_leader() (Michael Petlan) [2003982] - libperf: Remove BUG_ON() from library code in get_group_fd() (Michael Petlan) [2003982] - libperf: Add group support to perf_evsel__open() (Michael Petlan) [2003982] - perf tools: Fix pattern matching for same substring in different PMU type (Michael Petlan) [2003982] - perf record: Add a dummy event on hybrid systems to collect metadata records (Michael Petlan) [2003982] - perf stat: Add Topdown metrics L2 events as default events (Michael Petlan) [2003982] - libperf: Adopt evlist__set_leader() from tools/perf as perf_evlist__set_leader() (Michael Petlan) [2003982] - libperf: Move 'nr_groups' from tools/perf to evlist::nr_groups (Michael Petlan) [2003982] - libperf: Move 'leader' from tools/perf to perf_evsel::leader (Michael Petlan) [2003982] - libperf: Move 'idx' from tools/perf to perf_evsel::idx (Michael Petlan) [2003982] - libperf: Change tests to single static and shared binaries (Michael Petlan) [2003982] - perf intel-pt: Add a config for max loops without consuming a packet (Michael Petlan) [2003982] - perf stat: Disable the NMI watchdog message on hybrid (Michael Petlan) [2003982] - perf trace: Fix the perf trace link location (Michael Petlan) [2003982] - perf top: Fix overflow in elf_sec__is_text() (Michael Petlan) [2003982] - perf annotate: Fix 's' on source line when disasm is empty (Michael Petlan) [2003982] - perf probe: Do not show @plt function by default (Michael Petlan) [2003982] - perf symbol-elf: Decode dynsym even if symtab exists (Michael Petlan) [2003982] - perf probe: Fix debuginfo__new() to enable build-id based debuginfo (Michael Petlan) [2003982] - perf stat: Enable BPF counter with --for-each-cgroup (Michael Petlan) [2003982] - perf report: Fix --task and --stat with pipe input (Michael Petlan) [2003982] - perf session: Add missing evlist__delete when deleting a session (Michael Petlan) [2003982] - perf annotate: Allow 's' on source code lines (Michael Petlan) [2003982] - perf dlfilter: Add object_code() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add attr() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add srcline() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add insn() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add resolve_address() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf build: Install perf_dlfilter.h (Michael Petlan) [2003982] - perf script: Add option to pass arguments to dlfilters (Michael Petlan) [2003982] - perf script: Add option to list dlfilters (Michael Petlan) [2003982] - perf script: Add dlfilter__filter_event_early() (Michael Petlan) [2003982] - perf script: Add API for filtering via dynamically loaded shared object (Michael Petlan) [2003982] - perf llvm: Return -ENOMEM when asprintf() fails (Michael Petlan) [2003982] - perf cs-etm: Delay decode of non-timeless data until cs_etm__flush_events() (Michael Petlan) [2003982] - perf arm-spe: Don't wait for PERF_RECORD_EXIT event (Michael Petlan) [2003982] - perf arm-spe: Bail out if the trace is later than perf event (Michael Petlan) [2003982] - perf arm-spe: Assign kernel time to synthesized event (Michael Petlan) [2003982] - perf arm-spe: Convert event kernel time to counter value (Michael Petlan) [2003982] - perf arm-spe: Save clock parameters from TIME_CONV event (Michael Petlan) [2003982] - perf cs-etm: Remove callback cs_etm_find_snapshot() (Michael Petlan) [2003982] - perf bpf_counter: Move common functions to bpf_counter.h (Michael Petlan) [2003982] - perf tools: Add cgroup_is_v2() helper (Michael Petlan) [2003982] - perf tools: Add read_cgroup_id() function (Michael Petlan) [2003982] - tools lib: Adopt bitmap_intersects() operation from the kernel sources (Michael Petlan) [2003982] - perf top: Add cgroup support for perf top (-G) (Michael Petlan) [2003982] - perf script: Share addr_al between functions (Michael Petlan) [2003982] - perf script: Move filtering before scripting (Michael Petlan) [2003982] - perf script: Move filter_cpu() earlier (Michael Petlan) [2003982] - perf test: Pass the verbose option to shell tests (Michael Petlan) [2003982] - perf probe: Add --bootconfig to output definition in bootconfig format (Michael Petlan) [2003982] - perf probe: Cleanup synthesize_probe_trace_command() (Michael Petlan) [2003982] - perf probe: Support probes on init functions for offline kernel (Michael Petlan) [2003982] - perf test: Make stat bpf counters test more robust (Michael Petlan) [2003982] - perf test: Add verbose skip output for bpf counters (Michael Petlan) [2003982] - perf annotate: Add itrace options support (Michael Petlan) [2003982] - perf mem-events: Remove duplicate #undef (Michael Petlan) [2003982] - perf evsel: Adjust hybrid event and global event mixed group (Michael Petlan) [2003982] - perf probe: Provide clearer message permission error for tracefs access (Michael Petlan) [2003982] - perf auxtrace: Change to use SMP memory barriers (Michael Petlan) [2003982] - perf srccode: Use list_move() instead of equivalent list_del() + list_add() sequence (Michael Petlan) [2003982] - perf probe: Report possible permission error for map__load() failure (Michael Petlan) [2003982] - perf probe: Add permission and sysctl notice to man page (Michael Petlan) [2003982] - perf c2c: Support record for hybrid platform (Michael Petlan) [2003982] - perf mem: Disable 'mem-loads-aux' group before reporting (Michael Petlan) [2003982] - perf mem: Fix wrong verbose output for recording events (Michael Petlan) [2003982] - perf mem: Support record for hybrid platform (Michael Petlan) [2003982] - perf tools: Check if mem_events is supported for hybrid platform (Michael Petlan) [2003982] - perf tools: Support pmu prefix for mem-store event (Michael Petlan) [2003982] - perf tools: Support pmu prefix for mem-load event (Michael Petlan) [2003982] - perf tools: Check mem-loads auxiliary event (Michael Petlan) [2003982] - perf scripting python: intel-pt-events.py: Add --insn-trace and --src-trace (Michael Petlan) [2003982] - perf scripting python: exported-sql-viewer.py: Factor out libxed.py (Michael Petlan) [2003982] - perf scripting python: Update documentation for srcline etc (Michael Petlan) [2003982] - perf scripting python: Add perf_sample_srcline() and perf_sample_srccode() (Michael Petlan) [2003982] - perf scripting python: Add perf_set_itrace_options() (Michael Petlan) [2003982] - perf auxtrace: Factor out itrace_do_parse_synth_opts() (Michael Petlan) [2003982] - perf scripting python: Add perf_sample_insn() (Michael Petlan) [2003982] - perf script: Factor out script_fetch_insn() (Michael Petlan) [2003982] - perf scripting python: Assign perf_script_context (Michael Petlan) [2003982] - perf scripting: Add perf_session to scripting_context (Michael Petlan) [2003982] - perf scripting: Add scripting_context__update() (Michael Petlan) [2003982] - perf scripting python: Simplify perf-trace-context module functions (Michael Petlan) [2003982] - perf scripting python: Remove unnecessary 'static' (Michael Petlan) [2003982] - perf test: Test 2 libpfm4 error cases (Michael Petlan) [2003982] - perf test: Iterate over shell tests in alphabetical order (Michael Petlan) [2003982] - perf probe: Provide more detail with relocation warning (Michael Petlan) [2003982] - perf parse-events: Add bison --file-prefix-map option (Michael Petlan) [2003982] - perf inject: Do not inject BUILD_ID record if MMAP2 has it (Michael Petlan) [2003982] - perf inject: Call dso__put() even if dso->hit is set (Michael Petlan) [2003982] - perf scripts python: intel-pt-events.py: Add branches to script (Michael Petlan) [2003982] - perf scripting python: Add auxtrace error (Michael Petlan) [2003982] - perf scripting python: Add context switch (Michael Petlan) [2003982] - perf scripting python: Add cpumode (Michael Petlan) [2003982] - perf scripting python: Add IPC (Michael Petlan) [2003982] - perf scripting python: Add sample flags (Michael Petlan) [2003982] - perf script: Factor out perf_sample__sprintf_flags() (Michael Petlan) [2003982] - perf scripting python: Add 'addr_location' for 'addr' (Michael Petlan) [2003982] - perf scripting python: Factor out set_sym_in_dict() (Michael Petlan) [2003982] - perf scripting python: Fix tuple_set_u64() (Michael Petlan) [2003982] - perf auxtrace: Make perf_event__process_auxtrace*() callable (Michael Petlan) [2003982] - perf script: Find script file relative to exec path (Michael Petlan) [2003982] - perf arm-spe: Remove redundant checking for "full_auxtrace" (Michael Petlan) [2003982] - perf arm-spe: Enable timestamp for per-cpu mode (Michael Petlan) [2003982] - perf arm-spe: Correct sample flags for dummy event (Michael Petlan) [2003982] - perf arm-spe: Correct sample flags for SPE event (Michael Petlan) [2003982] - perf vendor events intel: Update event list for Icelake Client (Michael Petlan) [2003982] - perf vendor events intel: Add uncore event list for Icelake Server (Michael Petlan) [2003982] - perf vendor events intel: Add core event list for Icelake Server (Michael Petlan) [2003982] - perf tests: Drop __maybe_unused on x86 test declarations (Michael Petlan) [2003982] - perf tests: Consolidate test__arch_unwind_sample declaration (Michael Petlan) [2003982] - perf build: Improve error message for old/missing clang (Michael Petlan) [2003982] - perf tools: Test build with libbpf/LIBBPF_DYNAMIC=1 (Michael Petlan) [2003982] - perf tools: Test build with libopencsd/CORESIGHT=1 (Michael Petlan) [2003982] - perf cs-etm: Prevent and warn on underflows during timestamp calculation. (Michael Petlan) [2003982] - perf cs-etm: Start reading 'Z' --itrace option (Michael Petlan) [2003982] - perf cs-etm: Move synth_opts initialisation (Michael Petlan) [2003982] - perf header: Support HYBRID_CPU_PMU_CAPS feature (Michael Petlan) [2003982] - perf header: Support HYBRID_TOPOLOGY feature (Michael Petlan) [2003982] - perf cs-etm: Set time on synthesised samples to preserve ordering (Michael Petlan) [2003982] - perf cs-etm: Refactor timestamp variable names (Michael Petlan) [2003982] - perf x86 kvm-stat: Support to analyze kvm MSR (Michael Petlan) [2003982] - perf stat: Use aggregated counts directly (Michael Petlan) [2003982] - perf record: Set timestamp boundary for AUX area events (Michael Petlan) [2003982] - perf intel-pt: Parse VM Time Correlation options and set up decoding (Michael Petlan) [2003982] - perf intel-pt: Add VM Time Correlation to decoder (Michael Petlan) [2003982] - perf intel-pt: Better 7-byte timestamp wraparound logic (Michael Petlan) [2003982] - perf intel-pt: Pass the first timestamp to the decoder (Michael Petlan) [2003982] - perf intel-pt: Add a tree for VMCS information (Michael Petlan) [2003982] - perf intel-pt: Let overlap detection handle VM timestamps (Michael Petlan) [2003982] - perf auxtrace: Allow buffers to be mapped read / write (Michael Petlan) [2003982] - perf inject: Add --vm-time-correlation option (Michael Petlan) [2003982] - perf inject: Add facility to do in place update (Michael Petlan) [2003982] - perf intel-pt: Support Z itrace option for timeless decoding (Michael Petlan) [2003982] - perf intel-pt: Move synth_opts initialization earlier (Michael Petlan) [2003982] - perf auxtrace: Add Z itrace option for timeless decoding (Michael Petlan) [2003982] - perf/x86/amd/power: Assign pmu.module (Michael Petlan) [2003982] - perf/x86/amd/ibs: Extend PERF_PMU_CAP_NO_EXCLUDE to IBS Op (Michael Petlan) [2003982] - perf/x86/amd/ibs: Work around erratum #1197 (Michael Petlan) [2003982] - perf/x86/intel/uncore: Fix integer overflow on 23 bit left shift of a u32 (Michael Petlan) [2003982] - perf/x86/intel/pt: Fix mask of num_address_ranges (Michael Petlan) [2003982] - perf/x86: Fix out of bound MSR access (Michael Petlan) [2003982] - perf/x86/cstate: Add ICELAKE_X and ICELAKE_D support (Michael Petlan) [2003982] - perf: MAP_EXECUTABLE does not indicate VM_MAYEXEC (Michael Petlan) [2003982] - arm64: perf: Simplify EVENT ATTR macro in perf_event.c (Michael Petlan) [2003982] - arm64: perf: Simplify the ARMv8 PMUv3 event attributes (Michael Petlan) [2003982] - arm64: perf: Remove unused macro (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in qcom_l2_pmu.c (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in qcom_l3_pmu.c (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in xgene_pmu.c (Michael Petlan) [2003982] - drivers/perf: convert sysfs sprintf family to sysfs_emit (Michael Petlan) [2003982] - drivers/perf: convert sysfs scnprintf family to sysfs_emit_at() and sysfs_emit() (Michael Petlan) [2003982] - perf: arm-ccn: Use scnprintf() for robustness (Michael Petlan) [2003982] - drivers/perf: convert sysfs snprintf family to sysfs_emit (Michael Petlan) [2003982] - perf: Add EVENT_ATTR_ID to simplify event attributes (Michael Petlan) [2003982] - perf/x86/intel: Fix instructions:ppp support in Sapphire Rapids (Michael Petlan) [2003982] - perf/x86/intel: Add more events requires FRONTEND MSR on Sapphire Rapids (Michael Petlan) [2003982] - perf/x86: Reset the dirty counter to prevent the leak for an RDPMC task (Michael Petlan) [2003982] - uprobes: Update uprobe_write_opcode() kernel-doc comment (Michael Petlan) [2003982] - perf/hw_breakpoint: Fix DocBook warnings in perf hw_breakpoint (Michael Petlan) [2003982] - perf/core: Fix DocBook warnings (Michael Petlan) [2003982] - perf/core: Make local function perf_pmu_snapshot_aux() static (Michael Petlan) [2003982] - perf/x86/intel/uncore: Enable I/O stacks to IIO PMON mapping on ICX (Michael Petlan) [2003982] - perf/x86/intel/uncore: Enable I/O stacks to IIO PMON mapping on SNR (Michael Petlan) [2003982] - perf/x86/intel/uncore: Generalize I/O stacks to PMON mapping procedure (Michael Petlan) [2003982] - perf/x86/intel/uncore: Drop unnecessary NULL checks after container_of() (Michael Petlan) [2003982] - x86/events/intel: Do not deploy TSX force abort workaround when TSX is deprecated (Michael Petlan) [2003982] - netpoll: don't require irqs disabled in rt kernels (Wander Lairson Costa) [1905440] - net/netif_receive_skb_core: Use migrate_disable() (Luis Claudio R. Goncalves) [2024168] - RDMA/qedr: Fix NULL deref for query_qp on the GSI QP (Kamal Heib) [2006260 1984280] - RDMA/core: Always release restrack object (Kamal Heib) [2006260] - RDMA/core: Fix incorrect print format specifier (Kamal Heib) [2006260] - RDMA: Remove rdma_set_device_sysfs_group() (Kamal Heib) [2006260] - RDMA/core: Allow port_groups to be used with namespaces (Kamal Heib) [2006260] - RDMA: Change ops->init_port to ops->port_groups (Kamal Heib) [2006260] - RDMA/hfi1: Use attributes for the port sysfs (Kamal Heib) [2006260 1989164] - RDMA/cm: Use an attribute_group on the ib_port_attribute intead of kobj's (Kamal Heib) [2006260] - RDMA/core: Expose the ib port sysfs attribute machinery (Kamal Heib) [2006260] - RDMA/core: Remove the kobject_uevent() NOP (Kamal Heib) [2006260] - RDMA/core: Create the device hw_counters through the normal groups mechanism (Kamal Heib) [2006260] - RDMA/core: Simplify how the port sysfs is created (Kamal Heib) [2006260] - RDMA/core: Simplify how the gid_attrs sysfs is created (Kamal Heib) [2006260] - RDMA/core: Split gid_attrs related sysfs from add_port() (Kamal Heib) [2006260] - RDMA/core: Split port and device counter sysfs attributes (Kamal Heib) [2006260] - RDMA/core: Replace the ib_port_data hw_stats pointers with a ib_port pointer (Kamal Heib) [2006260] - RDMA: Split the alloc_hw_stats() ops to port and device variants (Kamal Heib) [2006260] - RDMA/rxe: Zero out index member of struct rxe_queue (Kamal Heib) [2006260] - RDMA/efa: Free IRQ vectors on error flow (Kamal Heib) [2006260] - RDMA/rxe: Fix memory allocation while in a spin lock (Kamal Heib) [2006260] - IB/hfi1: Fix possible null-pointer dereference in _extend_sdma_tx_descs() (Kamal Heib) [2006260 1989164] - RDMA/rxe: Restore setting tot_len in the IPv4 header (Kamal Heib) [2006260] - RDMA/rxe: Use the correct size of wqe when processing SRQ (Kamal Heib) [2006260] - RDMA/cma: Revert INIT-INIT patch (Kamal Heib) [2006260] - RDMA/rxe: Fix memory leak in error path code (Kamal Heib) [2006260] - RDMA/rxe: Missing unlock on error in get_srq_wqe() (Kamal Heib) [2006260] - RDMA/cma: Fix rdma_resolve_route() memory leak (Kamal Heib) [2006260] - RDMA/core/sa_query: Remove unused argument (Kamal Heib) [2006260] - RDMA/cma: Fix incorrect Packet Lifetime calculation (Kamal Heib) [2006260] - RDMA/cma: Protect RMW with qp_mutex (Kamal Heib) [2006260] - RDMA/cma: Remove unnecessary INIT->INIT transition (Kamal Heib) [2006260] - RDMA/rxe: Fix redundant skb_put_zero (Kamal Heib) [2006260] - RDMA/rxe: Fix extra copy in prepare_ack_packet (Kamal Heib) [2006260] - RDMA/rxe: Fix over copying in get_srq_wqe (Kamal Heib) [2006260] - RDMA/rxe: Fix extra copies in build_rdma_network_hdr (Kamal Heib) [2006260] - RDMA/rxe: Fix redundant call to ip_send_check (Kamal Heib) [2006260] - RDMA/rxe: Fix useless copy in send_atomic_ack (Kamal Heib) [2006260] - RDMA/core: Use flexible array for mad data (Kamal Heib) [2006260] - RDMA/rxe: Don't overwrite errno from ib_umem_get() (Kamal Heib) [2006260] - IB/core: Shuffle locks in ib_port_data to save memory (Kamal Heib) [2006260] - IB/core: Removed port validity check from ib_get_cached_subnet_prefix (Kamal Heib) [2006260] - RDMA: Fix kernel-doc warnings about wrong comment (Kamal Heib) [2006260] - RDMA/rxe: Disallow MR dereg and invalidate when bound (Kamal Heib) [2006260] - RDMA/rxe: Implement memory access through MWs (Kamal Heib) [2006260] - RDMA/rxe: Implement invalidate MW operations (Kamal Heib) [2006260] - RDMA/rxe: Add support for bind MW work requests (Kamal Heib) [2006260] - RDMA/rxe: Move local ops to subroutine (Kamal Heib) [2006260] - RDMA/rxe: Replace WR_REG_MASK by WR_LOCAL_OP_MASK (Kamal Heib) [2006260] - RDMA/rxe: Add ib_alloc_mw and ib_dealloc_mw verbs (Kamal Heib) [2006260] - RDMA/rxe: Enable MW object pool (Kamal Heib) [2006260] - RDMA/rxe: Return errors for add index and key (Kamal Heib) [2006260] - RDMA/rxe: Add bind MW fields to rxe_send_wr (Kamal Heib) [2006260] - RDMA/rxe: Fix qp reference counting for atomic ops (Kamal Heib) [2006260] - IB/cm: Remove dgid from the cm_id_priv av (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of ib_uverbs_device (Kamal Heib) [2006260] - RDMA/ipoib: Use refcount_t instead of atomic_t for reference counting (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_port (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_member (Kamal Heib) [2006260] - RDMA/core: Remove refcount from struct ib_mad_snoop_private (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of iwpm_admin_data (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of iwcm_id_private (Kamal Heib) [2006260] - RDMA/rxe: Protext kernel index from user space (Kamal Heib) [2006260] - RDMA/rxe: Protect user space index loads/stores (Kamal Heib) [2006260] - RDMA/rxe: Add a type flag to rxe_queue structs (Kamal Heib) [2006260] - IB/cm: Protect cm_dev, cm_ports and mad_agent with kref and lock (Kamal Heib) [2006260] - IB/cm: Improve the calling of cm_init_av_for_lap and cm_init_av_by_path (Kamal Heib) [2006260] - IB/cm: Simplify ib_cancel_mad() and ib_modify_mad() calls (Kamal Heib) [2006260] - Revert "IB/cm: Mark stale CM id's whenever the mad agent was unregistered" (Kamal Heib) [2006260] - IB/cm: Tidy remaining cm_msg free paths (Kamal Heib) [2006260] - IB/cm: Call the correct message free functions in cm_send_handler() (Kamal Heib) [2006260] - IB/cm: Split cm_alloc_msg() (Kamal Heib) [2006260] - IB/cm: Pair cm_alloc_response_msg() with a cm_free_response_msg() (Kamal Heib) [2006260] - RDMA/core: Sanitize WQ state received from the userspace (Kamal Heib) [2006260] - RDMA/srp: Use DEVICE_ATTR_*() macros (Kamal Heib) [2006260] - RDMA/core: Use the DEVICE_ATTR_RO macro (Kamal Heib) [2006260] - IB/ipoib: Use DEVICE_ATTR_*() macros (Kamal Heib) [2006260] - IB/core: Only update PKEY and GID caches on respective events (Kamal Heib) [2006260] - RDMA/srp: Fix a recently introduced memory leak (Kamal Heib) [2006260] - RDMA/srp: Add more structure size checks (Kamal Heib) [2006260] - IB/hfi1: Move a function from a header file into a .c file (Kamal Heib) [2006260 1989164] - IB/hfi1: Remove the repeated declaration (Kamal Heib) [2006260 1989164] - IB/hfi1: Delete an unneeded bool conversion (Kamal Heib) [2006260 1989164] - RDMA: Remove unnecessary struct declaration (Kamal Heib) [2006260] - RDMA/core: Remove never used ib_modify_wq function call (Kamal Heib) [2006260] - IB/srpt: Remove redundant assignment to ret (Kamal Heib) [2006260] - RDMA/ucma: Cleanup to reduce duplicate code (Kamal Heib) [2006260] - RDMA/umem: batch page unpin in __ib_umem_release() (Kamal Heib) [2006259] - RDMA/rxe: Return CQE error if invalid lkey was supplied (Kamal Heib) [2006259] - RDMA/nldev: Add copy-on-fork attribute to get sys command (Kamal Heib) [2006259] - IB/hfi1: Remove redundant variable rcd (Kamal Heib) [2006259 1989164] - RDMA/nldev: Add QP numbers to SRQ information (Kamal Heib) [2006259] - RDMA/nldev: Return SRQ information (Kamal Heib) [2006259] - RDMA/restrack: Add support to get resource tracking for SRQ (Kamal Heib) [2006259] - RDMA/nldev: Return context information (Kamal Heib) [2006259] - RDMA/cma: Skip device which doesn't support CM (Kamal Heib) [2006259 1957239] - IB/ipoib: Remove unnecessary struct declaration (Kamal Heib) [2006259] - IB/ipoib: Improve latency in ipoib/cm connection formation (Kamal Heib) [2006259] - RDMA/ipoib: Print a message if only child interface is UP (Kamal Heib) [2006259] - RDMA/uverbs: Make UVERBS_OBJECT_METHODS to consider line number (Kamal Heib) [2006259] - IB/hfi1: Rework AIP and VNIC dummy netdev usage (Kamal Heib) [2006259 1989164] - IB/cma: Introduce rdma_set_min_rnr_timer() (Kamal Heib) [2006259] - RDMA/core: Correct format of block comments (Kamal Heib) [2006259] - RDMA/core: Correct format of braces (Kamal Heib) [2006259] - RDMA/core: Remove redundant spaces (Kamal Heib) [2006259] - RDMA/core: Add necessary spaces (Kamal Heib) [2006259] - RDMA/core: Remove the redundant return statements (Kamal Heib) [2006259] - RDMA/core: Print the function name by __func__ instead of an fixed string (Kamal Heib) [2006259] - RDMA/rxe: Fix missing acks from responder (Kamal Heib) [2006259] - RDMA/core: Make the wc status prompt message clearer (Kamal Heib) [2006259] - IB/hfi1: Remove indirect call to hfi1_ipoib_send_dma() (Kamal Heib) [2006259 1989164] - IB/hfi1: Use napi_schedule_irqoff() for tx napi (Kamal Heib) [2006259 1989164] - IB/hfi1: Correct oversized ring allocation (Kamal Heib) [2006259 1989164] - IB/{ipoib,hfi1}: Add a timeout handler for rdma_netdev (Kamal Heib) [2006259 1989164] - IB/hfi1: Add AIP tx traces (Kamal Heib) [2006259 1989164] - RDMA/uverbs: Fix -Wunused-function warning (Kamal Heib) [2006259] - RDMA/iser: struct iscsi_iser_task is declared twice (Kamal Heib) [2006259] - RDMA/rxe: Split MEM into MR and MW (Kamal Heib) [2006259] - RDMA/efa: Use strscpy instead of strlcpy (Kamal Heib) [2006259] - RDMA: Fix a typo (Kamal Heib) [2006259] - IB/hfi1: Fix a typo (Kamal Heib) [2006259 1989164] - RDMA/core: Correct misspellings of two words in comments (Kamal Heib) [2006259] - RDMA/uverbs: Refactor rdma_counter_set_auto_mode and __counter_set_mode (Kamal Heib) [2006259] - RDMA: Support more than 255 rdma ports (Kamal Heib) [2006259 1957239] - RDMA/include: Mundane typo fixes throughout the file (Kamal Heib) [2006259] - RDMA/cma: Remove unused leftovers in cma code (Kamal Heib) [2006259] - RDMA: Fix kernel-doc compilation warnings (Kamal Heib) [2006259] - RDMA/hw/i40iw/i40iw_virtchnl: Fix a bunch of kernel-doc issues (Kamal Heib) [2006259] - RDMA/hw/i40iw/i40iw_utils: Fix some misspellings and missing param descriptions (Kamal Heib) [2006259] - IB/core: Split uverbs_get_const/default to consider target type (Kamal Heib) [2006259] - IB/core: Drop WARN_ON() from ib_umem_find_best_pgsz() (Kamal Heib) [2006259] - RDMA/core: Remove unused req_ncomp_notif device operation (Kamal Heib) [2006259] - RDMA/iwcm: Allow AFONLY binding for IPv6 addresses (Kamal Heib) [2006259] - IB/hfi1: switch to core handling of rx/tx byte/packet counters (Kamal Heib) [2006259 1989164] - RDMA: Convert various random sprintf sysfs _show uses to sysfs_emit (Kamal Heib) [2006259] - RDMA: Manual changes for sysfs_emit and neatening (Kamal Heib) [2006259] - RDMA: Convert sysfs device * show functions to use sysfs_emit() (Kamal Heib) [2006259] - IB/hfi1: use new function dev_fetch_sw_netstats (Kamal Heib) [2006259 1989164] - RDMA/ipoib: Convert to use DEFINE_SEQ_ATTRIBUTE macro (Kamal Heib) [2006259] - include/linux/seq_file.h: introduce DEFINE_SEQ_ATTRIBUTE() helper macro (Kamal Heib) [2006259] - ibmvnic: delay complete() (Diego Domingos) [2019210] - ibmvnic: Process crqs after enabling interrupts (Diego Domingos) [2019210] - Documentation: sysrq: update description about sysrq crash (Chris von Recklinghausen) [2019943] - sysrq: Use panic() to force a crash (Chris von Recklinghausen) [2019943] - ethtool: extend coalesce setting uAPI with CQE mode (Ivan Vecera) [2006829] - ethtool: add two coalesce attributes for CQE mode (Ivan Vecera) [2006829] - ice: Add support for VF rate limiting (Jonathan Toppins) [1973187] - net: Prevent infinite while loop in skb_tx_hash() (Paolo Abeni) [2018437] - napi: fix race inside napi_enable (Paolo Abeni) [2018437] - net/af_unix: fix a data-race in unix_dgram_poll (Paolo Abeni) [2018437] - devlink: Clear whole devlink_flash_notify struct (Paolo Abeni) [2018437] - net: linkwatch: fix failure to restore device state across suspend/resume (Paolo Abeni) [2018437] - gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check (Paolo Abeni) [2018437] - gro: ensure frag0 meets IP header alignment (Paolo Abeni) [2018437] - net: core: allow fast GRO for skbs with Ethernet header in head (Paolo Abeni) [2018437] - udp: fix skb_copy_and_csum_datagram with odd segment sizes (Paolo Abeni) [2018437] - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too (Paolo Abeni) [2018437] - selftests/net: remove min gso test in packet_snd (Paolo Abeni) [2018437] - net: be more gentle about silly gso requests coming from user (Paolo Abeni) [2018437] - virtio_net: Do not pull payload in skb->head (Paolo Abeni) [2018437] - net: check untrusted gso_size at kernel entry (Paolo Abeni) [2018437] - net: stricter validation of untrusted gso packets$ (Paolo Abeni) [2018437] - net: avoid 32 x truesize under-estimation for tiny skbs (Paolo Abeni) [2018437] - ionic: no devlink_unregister if not registered (Jonathan Toppins) [2016705] - ionic: tame the filter no space message (Jonathan Toppins) [2016705 1959512 2002943] - ionic: allow adminq requests to override default error message (Jonathan Toppins) [2016705 1959512 2002943] - ionic: handle vlan id overflow (Jonathan Toppins) [2016705 1959512 2002943] - ionic: generic filter delete (Jonathan Toppins) [2016705 1959512 2002943] - ionic: generic filter add (Jonathan Toppins) [2016705 1959512 2002943] - ionic: add generic filter search (Jonathan Toppins) [2016705 1959512 2002943] - ionic: remove mac overflow flags (Jonathan Toppins) [2016705 1959512 2002943] - ionic: move lif mac address functions (Jonathan Toppins) [2016705 1959512 2002943] - ionic: add filterlist to debugfs (Jonathan Toppins) [2016705 1959512 2002943] - ionic: don't remove netdev->dev_addr when syncing uc list (Jonathan Toppins) [2016705 2012030] - ionic: move filter sync_needed bit set (Jonathan Toppins) [2016705] - ionic: add lif param to ionic_qcq_disable (Jonathan Toppins) [2016705] - ionic: have ionic_qcq_disable decide on sending to hardware (Jonathan Toppins) [2016705] - ionic: add polling to adminq wait (Jonathan Toppins) [2016705] - ionic: widen queue_lock use around lif init and deinit (Jonathan Toppins) [2016705] - ionic: move lif mutex setup and delete (Jonathan Toppins) [2016705] - ionic: check for binary values in FW ver string (Jonathan Toppins) [2016705] - ionic: remove debug stats (Jonathan Toppins) [2016705] - ionic: fix gathering of debug stats (Jonathan Toppins) [2016705] - ionic: fix a sleeping in atomic bug (Jonathan Toppins) [2016705] - ionic: fix double use of queue-lock (Jonathan Toppins) [2016705] - ionic: recreate hwstamp queues on ifup (Jonathan Toppins) [2016705 1981590] - ionic: pull hwstamp queue_lock up a level (Jonathan Toppins) [2016705 1981590] - ionic: add queue lock around open and stop (Jonathan Toppins) [2016705 1981590] - ionic: fill mac addr earlier in add_addr (Jonathan Toppins) [2016705 1981590] - ionic: squelch unnecessary fw halted message (Jonathan Toppins) [2016705 1981590] - ionic: fire watchdog again after fw_down (Jonathan Toppins) [2016705 1981590] - ionic: handle mac filter overflow (Jonathan Toppins) [2016705 1981590] - ionic: refactor ionic_lif_addr to remove a layer (Jonathan Toppins) [2016705 1981590] - ionic: sync the filters in the work task (Jonathan Toppins) [2016705 1981590] - ionic: flatten calls to set-rx-mode (Jonathan Toppins) [2016705 1981590] - ionic: remove old work task types (Jonathan Toppins) [2016705 1981590] - ionic: add function tag to debug string (Jonathan Toppins) [2016705] - ionic: enable rxhash only with multiple queues (Jonathan Toppins) [2016705] - ionic: block some ethtool operations when fw in reset (Jonathan Toppins) [2016705] - ionic: remove unneeded comp union fields (Jonathan Toppins) [2016705] - ionic: increment num-vfs before configure (Jonathan Toppins) [2016705] - ionic: use fewer inits on the buf_info struct (Jonathan Toppins) [2016705] - ionic: init reconfig err to 0 (Jonathan Toppins) [2016705] - ionic: print firmware version on identify (Jonathan Toppins) [2016705] - ionic: monitor fw status generation (Jonathan Toppins) [2016705] - ionic: minimize resources when under kdump (Jonathan Toppins) [2016705] - ionic: cleanly release devlink instance (Jonathan Toppins) [2016705] - ionic: drop useless check of PCI driver data validity (Jonathan Toppins) [2016705] - ionic: Remove unused function pointer typedef ionic_reset_cb (Jonathan Toppins) [2016705] - ACPI: Use fwnode_init() to set up fwnode (Mark Langsdorf) [1982374] - device property: Add missed header in fwnode.h (Mark Langsdorf) [1982374] - regmap: set debugfs_name to NULL after it is freed (Mark Langsdorf) [1982374] - mfd: cpcap: Fix interrupt regression with regmap clear_ack (Mark Langsdorf) [1982374] - driver core: Fix device link device name collision (Mark Langsdorf) [1982374] - driver core: Extend device_is_dependent() (Mark Langsdorf) [1982374] - device property: add description of fwnode cases (Mark Langsdorf) [1982374] - Revert "device property: Keep secondary firmware node secondary by type" (Mark Langsdorf) [1982374] - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() (Mark Langsdorf) [1982374] - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev (Mark Langsdorf) [1982374] - driver core: platform: Add extra error check in devm_platform_get_irqs_affinity() (Mark Langsdorf) [1982374] - driver core: platform: don't oops in platform_shutdown() on unbound devices (Mark Langsdorf) [1982374] - PM: domains: create debugfs nodes when adding power domains (Mark Langsdorf) [1982374] - driver core: platform: Add devm_platform_get_irqs_affinity() (Mark Langsdorf) [1982374] - platform-msi: Track shared domain allocation (Mark Langsdorf) [1982374] - driver core: platform: Introduce platform_get_mem_or_io() (Mark Langsdorf) [1982374] - soc: fix comment for freeing soc_dev_attr (Mark Langsdorf) [1982374] - driver core: platform: use bus_type functions (Mark Langsdorf) [1982374] - driver core: platform: change logic implementing platform_driver_probe (Mark Langsdorf) [1982374] - driver core: platform: reorder functions (Mark Langsdorf) [1982374] - driver core: make driver_probe_device() static (Mark Langsdorf) [1982374] - driver core: Fix a couple of typos (Mark Langsdorf) [1982374] - driver core: Refactor fw_devlink feature (Mark Langsdorf) [1982374] - efi: Update implementation of add_links() to create fwnode links (Mark Langsdorf) [1982374] - of: property: Update implementation of add_links() to create fwnode links (Mark Langsdorf) [1982374] - driver core: Use device's fwnode to check if it is waiting for suppliers (Mark Langsdorf) [1982374] - driver core: Add fw_devlink_parse_fwtree() (Mark Langsdorf) [1982374] - driver core: Redefine the meaning of fwnode_operations.add_links() (Mark Langsdorf) [1982374] - device property: Add fwnode_is_ancestor_of() and fwnode_get_next_parent_dev() (Mark Langsdorf) [1982374] - driver core: Allow only unprobed consumers for SYNC_STATE_ONLY device links (Mark Langsdorf) [1982374] - driver core: Add fwnode link support (Mark Langsdorf) [1982374] - driver core: Add fwnode_init() (Mark Langsdorf) [1982374] - Revert "[base] driver core: fw_devlink: Add support for batching fwnode parsing" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Remove check in driver_deferred_probe_force_trigger()" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Don't do deferred probe in parallel with kernel_init thread" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Rename dev_links_info.defer_sync to defer_hook" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Avoid deferred probe due to fw_devlink_pause/resume()" (Mark Langsdorf) [1982374] - regmap: Remove duplicate `type` field from regmap `regcache_sync` trace event (Mark Langsdorf) [1982374] - PM: sleep: Add dev_wakeup_path() helper (Mark Langsdorf) [1982374] - regmap: Fix order of regmap write log (Mark Langsdorf) [1982374] - regmap: use less #ifdef for LOG_DEVICE (Mark Langsdorf) [1982374] - PM: domains: Enable dev_pm_genpd_suspend|resume() for suspend-to-idle (Mark Langsdorf) [1982374] - PM: domains: Rename pm_genpd_syscore_poweroff|poweron() (Mark Langsdorf) [1982374] - PM: sleep: Print driver flags for all devices during suspend/resume (Mark Langsdorf) [1982374] - driver core: Fix lockdep warning on wfs_lock (Mark Langsdorf) [1982374] - regmap: irq: Convert to use irq_domain_create_legacy() (Mark Langsdorf) [1982374] - irqdomain: Introduce irq_domain_create_legacy() API (Mark Langsdorf) [1982374] - irqdomain: Replace open coded of_node_to_fwnode() (Mark Langsdorf) [1982374] - irqdomain: Add forward declaration of fwnode_handle (Mark Langsdorf) [1982374] - irqdomain: Remove unused of_device_id forward declaration (Mark Langsdorf) [1982374] - regmap-irq: use fwnode instead of device node in add_irq_chip() (Mark Langsdorf) [1982374] - regmap: mmio: add config option to allow relaxed MMIO accesses (Mark Langsdorf) [1982374] - PM: sleep: remove unreachable break (Mark Langsdorf) [1982374] - PM: domains: enable domain idle state accounting (Mark Langsdorf) [1982374] - PM: domains: Add curly braces to delimit comment + statement block (Mark Langsdorf) [1982374] - PM: domains: Add support for PM domain on/off notifiers for genpd (Mark Langsdorf) [1982374] - PM / Domains: Simplify genpd_lookup_dev() (Mark Langsdorf) [1982374] - regmap: irq: Add support to clear ack registers (Mark Langsdorf) [1982374] - PM: domains: Allow to abort power off when no ->power_off() callback (Mark Langsdorf) [1982374] - PM: domains: Rename power state enums for genpd (Mark Langsdorf) [1982374] - regmap: debugfs: use semicolons rather than commas to separate statements (Mark Langsdorf) [1982374] - drivers core: node: Use a more typical macro definition style for ACCESS_ATTR (Mark Langsdorf) [1982374] - drivers core: Use sysfs_emit for shared_cpu_map_show and shared_cpu_list_show (Mark Langsdorf) [1982374] - efi: Rename arm-init to efi-init common for all arch (Mark Langsdorf) [1982374] - efi/arm: Defer probe of PCIe backed efifb on DT systems (Mark Langsdorf) [1982374] - net/smc: improved fix wait on already cleared link (Sumanth Korikkar) [1984991] - net/smc: fix 'workqueue leaked lock' in smc_conn_abort_work (Sumanth Korikkar) [1984991] - net/smc: add missing error check in smc_clc_prfx_set() (Sumanth Korikkar) [1984991] - net/smc: Correct smc link connection counter in case of smc client (Sumanth Korikkar) [1984991] - net/smc: fix wait on already cleared link (Sumanth Korikkar) [1984991] - KVM: s390: Fix handle_sske page fault handling (Thomas Huth) [2022731] - KVM: s390: Simplify SIGP Set Arch handling (Thomas Huth) [2022731] - KVM: s390: pv: avoid stalls when making pages secure (Thomas Huth) [2022731] - KVM: s390: pv: avoid stalls for kvm_s390_pv_init_vm (Thomas Huth) [2022731] - KVM: s390: pv: avoid double free of sida page (Thomas Huth) [2022731] - KVM: s390: pv: add macros for UVC CC values (Thomas Huth) [2022731] - s390/uv: fully validate the VMA before calling follow_page() (Thomas Huth) [2022731] - s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap() (Thomas Huth) [2022731] - s390/gmap: validate VMA in __gmap_zap() (Thomas Huth) [2022731] - KVM: s390: preserve deliverable_mask in __airqs_kick_single_vcpu (Thomas Huth) [2022731] - KVM: s390: clear kicked_mask before sleeping again (Thomas Huth) [2022731] - KVM: s390: Function documentation fixes (Thomas Huth) [2022731] - s390/mm: fix kernel doc comments (Thomas Huth) [2022731] - KVM: s390: index kvm->arch.idle_mask by vcpu_idx (Thomas Huth) [2022731] - KVM: s390: generate kvm hypercall functions (Thomas Huth) [2022731] - KVM: Rename lru_slot to last_used_slot (Thomas Huth) [2022731] - s390: mm: Fix secure storage access exception handling (Thomas Huth) [2022731] - virtio/s390: get rid of open-coded kvm hypercall (Thomas Huth) [2022731] - KVM: s390: get rid of register asm usage (Thomas Huth) [2022731] - powerpc/vas: Fix potential NULL pointer dereference (Steve Best) [1907522] - powerpc/pseries/vas: Declare pseries_vas_fault_thread_fn() as static (Steve Best) [1907522] - crypto/nx: Register and unregister VAS interface on PowerVM (Steve Best) [1907522] - crypto/nx: Add sysfs interface to export NX capabilities (Steve Best) [1907522] - crypto/nx: Get NX capabilities for GZIP coprocessor type (Steve Best) [1907522] - crypto/nx: Rename nx-842-pseries file name to nx-common-pseries (Steve Best) [1907522] - powerpc/pseries/vas: Setup IRQ and fault handling (Steve Best) [1907522] - powerpc/pseries/vas: Integrate API with open/close windows (Steve Best) [1907522] - powerpc/pseries/vas: Implement getting capabilities from hypervisor (Steve Best) [1907522] - powerpc/pseries/vas: Add hcall wrappers for VAS handling (Steve Best) [1907522] - powerpc/vas: Define QoS credit flag to allocate window (Steve Best) [1907522] - powerpc/pseries/vas: Define VAS/NXGZIP hcalls and structs (Steve Best) [1907522] - powerpc/vas: Define and use common vas_window struct (Steve Best) [1907522] - powerpc/powernv: no need to check return value of debugfs_create functions (Steve Best) [1907522] - powerpc/vas: Move update_csb/dump_crb to common book3s platform (Steve Best) [1907522] - powerpc/vas: Create take/drop pid and mm reference functions (Steve Best) [1907522] - powerpc/vas: Add platform specific user window operations (Steve Best) [1907522] - powerpc/powernv/vas: Rename register/unregister functions (Steve Best) [1907522] - powerpc/vas: Move VAS API to book3s common platform (Steve Best) [1907522] - powerpc/powernv/vas: Release reference to tgid during window close (Steve Best) [1907522] - powerpc/pseries: Prevent free CPU ids being reused on another node (Desnes A. Nunes do Rosario) [2004808] - powerpc/numa: Consider the max NUMA node for migratable LPAR (Desnes A. Nunes do Rosario) [2004808]- zram: replace fsync_bdev with sync_blockdev (Ming Lei) [2015755] - zram: avoid race between zram_remove and disksize_store (Ming Lei) [2015755] - zram: don't fail to remove zram during unloading module (Ming Lei) [2015755] - zram: fix race between zram_reset_device() and disksize_store() (Ming Lei) [2015755] - zram: register default groups with device_add_disk() (Ming Lei) [2015755] - hyperv/vmbus: include linux/bitops.h (Mohammed Gamal) [2008565] - hv: vmbus: Avoid -Werror=maybe-uninitialized error (Mohammed Gamal) [2008565] - Drivers: hv: vmbus: Fix kernel crash upon unbinding a device from uio_hv_generic driver (Mohammed Gamal) [2008565] - Drivers: hv: vmbus: Fix duplicate CPU assignments within a device (Mohammed Gamal) [2008565] - drivers: hv: Fix missing error code in vmbus_connect() (Mohammed Gamal) [2008565] - hv_utils: Fix passing zero to 'PTR_ERR' warning (Mohammed Gamal) [2008565] - ice: Fix VF true promiscuous mode (Jonathan Toppins) [1970643] - ice: Remove toggling of antispoof for VF trusted promiscuous mode (Jonathan Toppins) [1970643] - ice: Fix replacing VF hardware MAC to existing MAC filter (Jonathan Toppins) [1970643] - ice: Fix not stopping Tx queues for VFs (Jonathan Toppins) [1970643] - ice: Fix race conditions between virtchnl handling and VF ndo ops (Jonathan Toppins) [1970643] - ice: move ice_container_type onto ice_ring_container (Jonathan Toppins) [1970643] - ice: remove ring_active from ice_ring (Jonathan Toppins) [1970643] - ice: Print the api_patch as part of the fw.mgmt.api (Jonathan Toppins) [1970643] - ice: Avoid crash from unnecessary IDA free (Jonathan Toppins) [1970643] - ice: Fix failure to re-add LAN/RDMA Tx queues (Jonathan Toppins) [1970643] - ice: Add missing E810 device ids (Jonathan Toppins) [1970643] - ice: fix locking for Tx timestamp tracking flush (Jonathan Toppins) [1970643] - ice: Delete always true check of PF pointer (Jonathan Toppins) [1970643] - ice: Correctly deal with PFs that do not support RDMA (Jonathan Toppins) [1970643] - ice: add lock around Tx timestamp tracker flush (Jonathan Toppins) [1970643] - ice: remove dead code for allocating pin_config (Jonathan Toppins) [1970643] - ice: do not abort devlink info if board identifier can't be found (Jonathan Toppins) [1970643] - ice: Fix a memory leak in an error handling path in 'ice_pf_dcb_cfg()' (Jonathan Toppins) [1970643] - ice: remove unnecessary VSI assignment (Jonathan Toppins) [1970643] - ice: remove the VSI info from previous agg (Jonathan Toppins) [1970643] - ice: add tracepoints (Jonathan Toppins) [1970643] - ice: report hash type such as L2/L3/L4 (Jonathan Toppins) [1970643] - ice: remove redundant continue statement in a for-loop (Jonathan Toppins) [1970643] - net: ice: ptp: fix compilation warning if PTP_1588_CLOCK is disabled (Jonathan Toppins) [1970643] - ice: remove unnecessary NULL checks before ptp_read_system_* (Jonathan Toppins) [1970643] - ice: Remove the repeated declaration (Jonathan Toppins) [1970643] - ice: remove local variable (Jonathan Toppins) [1970643] - ice: reduce scope of variables (Jonathan Toppins) [1970643] - ice: mark PTYPE 2 as reserved (Jonathan Toppins) [1970643] - ice: fix incorrect payload indicator on PTYPE (Jonathan Toppins) [1970643] - ice: parameterize functions responsible for Tx ring management (Jonathan Toppins) [1970643] - ice: add ndo_bpf callback for safe mode netdev ops (Jonathan Toppins) [1970643] - ice: fix clang warning regarding deadcode.DeadStores (Jonathan Toppins) [1970643] - ice: downgrade error print to debug print (Jonathan Toppins) [1970643] - ice: Detect and report unsupported module power levels (Jonathan Toppins) [1970643] - ice: (re)initialize NVM fields when rebuilding (Jonathan Toppins) [1970643] - ice: wait for reset before reporting devlink info (Jonathan Toppins) [1970643] - ice: add error message when pldmfw_flash_image fails (Jonathan Toppins) [1970643] - ice: add extack when unable to read device caps (Jonathan Toppins) [1970643] - ice: use static inline for dummy functions (Jonathan Toppins) [1970643] - ice: Re-organizes reqstd/avail {R, T}XQ check/code for efficiency (Jonathan Toppins) [1970643] - ice: set the value of global config lock timeout longer (Jonathan Toppins) [1970643] - ice: Refactor VIRTCHNL_OP_CONFIG_VSI_QUEUES handling (Jonathan Toppins) [1970643] - ice: Refactor ice_setup_rx_ctx (Jonathan Toppins) [1970643] - ice: Save VF's MAC across reboot (Jonathan Toppins) [1970643] - ice: Manage VF's MAC address for both legacy and new cases (Jonathan Toppins) [1970643] - ice: Register auxiliary device to provide RDMA (Jonathan Toppins) [1970643] - ice: Implement iidc operations (Jonathan Toppins) [1970643] - virtchnl: Use pad byte in virtchnl_ether_addr to specify MAC type (Jonathan Toppins) [1970643] - iidc: Introduce iidc.h (Jonathan Toppins) [1970643] - ice: Initialize RDMA support (Jonathan Toppins) [1970643] - ice: Respond to a NETDEV_UNREGISTER event for LAG (Jonathan Toppins) [1970643] - Revert "Revert "ice: Add initial support framework for LAG"" (Jonathan Toppins) [1970643] - ice: reduce scope of variable (Jonathan Toppins) [1970643] - ice: remove return variable (Jonathan Toppins) [1970643] - ice: suppress false cppcheck issues (Jonathan Toppins) [1970643] - ice: Set vsi->vf_id as ICE_INVAL_VFID for non VF VSI types (Jonathan Toppins) [1970643] - ice: remove unused struct member (Jonathan Toppins) [1970643] - ice: use local for consistency (Jonathan Toppins) [1970643] - ice: print name in /proc/iomem (Jonathan Toppins) [1970643] - ice: Reimplement module reads used by ethtool (Jonathan Toppins) [1970643] - ice: refactor ITR data structures (Jonathan Toppins) [1970643] - ice: manage interrupts during poll exit (Jonathan Toppins) [1970643] - ice: replace custom AIM algorithm with kernel's DIM library (Jonathan Toppins) [1970643] - ice: refactor interrupt moderation writes (Jonathan Toppins) [1970643] - ice: Add new VSI states to track netdev alloc/registration (Jonathan Toppins) [1970643] - ice: Drop leading underscores in enum ice_pf_state (Jonathan Toppins) [1970643] - ice: use kernel definitions for IANA protocol ports and ether-types (Jonathan Toppins) [1970643] - ice: Remove unnecessary blank line (Jonathan Toppins) [1970643] - ice: Remove unnecessary checks in add/kill_vid ndo ops (Jonathan Toppins) [1970643] - ice: Remove rx_gro_dropped stat (Jonathan Toppins) [1970643] - ice: Use local variable instead of pointer derefs (Jonathan Toppins) [1970643] - ice: Remove unnecessary variable (Jonathan Toppins) [1970643] - ice: Limit forced overrides based on FW version (Jonathan Toppins) [1970643] - ice: Use default configuration mode for PHY configuration (Jonathan Toppins) [1970643] - ice: Replace some memsets and memcpys with assignment (Jonathan Toppins) [1970643] - ice: Fix error return codes in ice_set_link_ksettings (Jonathan Toppins) [1970643] - ice: Rename a couple of variables (Jonathan Toppins) [1970643] - ice: Remove unnecessary checker loop (Jonathan Toppins) [1970643] - ice: Ignore EMODE return for opcode 0x0605 (Jonathan Toppins) [1970643] - ice: Align macro names to the specification (Jonathan Toppins) [1970643] - ice: Modify recursive way of adding nodes (Jonathan Toppins) [1970643] - ice: Re-send some AQ commands, as result of EBUSY AQ error (Jonathan Toppins) [1970643] - ice: Correct comment block style (Jonathan Toppins) [1970643] - ice: cleanup style issues (Jonathan Toppins) [1970643] - ice: rename ptype bitmap (Jonathan Toppins) [1970643] - ice: correct memory allocation call (Jonathan Toppins) [1970643] - ice: Check for bail out condition early (Jonathan Toppins) [1970643] - ice: remove unnecessary duplicated AQ command flag setting (Jonathan Toppins) [1970643] - ice: change link misconfiguration message (Jonathan Toppins) [1970643] - ice: Update to use package info from ice segment (Jonathan Toppins) [1970643] - ice: Delay netdev registration (Jonathan Toppins) [1970643] - ice: Add Support for XPS (Jonathan Toppins) [1970643] - ice: Fix fall-through warnings for Clang (Jonathan Toppins) [1970643] - ice: Fix prototype warnings (Jonathan Toppins) [1970643] - ice: move headroom initialization to ice_setup_rx_ctx (Jonathan Toppins) [1970643] - ice: store the result of ice_rx_offset() onto ice_ring (Jonathan Toppins) [1970643] - sched/core: Mitigate race cpus_share_cache()/update_top_cache_domain() (Phil Auld) [2011436] - sched/fair: Prevent dead task groups from regaining cfs_rq's (Phil Auld) [2011436] - sched/fair: Removed useless update of p->recent_used_cpu (Phil Auld) [2011436] - sched: Always inline is_percpu_thread() (Phil Auld) [2011436] - sched/fair: Add ancestors of unthrottled undecayed cfs_rq (Phil Auld) [2011436] - sched: Remove unused inline function __rq_clock_broken() (Phil Auld) [2011436] - sched: Prevent balance_push() on remote runqueues (Phil Auld) [2011436] - cpumask/hotplug: Fix cpu_dying() state tracking (Phil Auld) [2011436] - sched: Use cpu_dying() to fix balance_push vs hotplug-rollback (Phil Auld) [2011436] - cpumask: Introduce DYING mask (Phil Auld) [2011436] - cpumask: Make cpu_{online,possible,present,active}() inline (Phil Auld) [2011436] - cpu/hotplug: Cache number of online CPUs (Phil Auld) [2011436] - sched: Switch wait_task_inactive to HRTIMER_MODE_REL_HARD (Phil Auld) [2011436] - psi: Fix race between psi_trigger_create/destroy (Phil Auld) [2011436] - sctp: add vtag check in sctp_sf_ootb (Xin Long) [2001767] - sctp: add vtag check in sctp_sf_do_8_5_1_E_sa (Xin Long) [2001767] - sctp: add vtag check in sctp_sf_violation (Xin Long) [2001767] - sctp: fix the processing for COOKIE_ECHO chunk (Xin Long) [2001767] - sctp: fix the processing for INIT_ACK chunk (Xin Long) [2001767] - sctp: fix the processing for INIT chunk (Xin Long) [2001767] - sctp: use init_tag from inithdr for ABORT chunk (Xin Long) [2001767]- KVM: arm64: Extract ESR_ELx.EC only (Gavin Shan) [2008070] - KVM: arm64: vgic-v3: Align emulated cpuif LPI state machine with the pseudocode (Gavin Shan) [2008070] - KVM: arm64: vgic-v3: Don't advertise ICC_CTLR_EL1.SEIS (Gavin Shan) [2008070] - KVM: arm64: Fix reporting of endianess when the access originates at EL0 (Gavin Shan) [2008070] - KVM: arm64: Trim guest debug exception handling (Gavin Shan) [2008070] - KVM: arm64: Upgrade VMID accesses to {READ,WRITE}_ONCE (Gavin Shan) [2008070] - KVM: arm64: vgic: Drop WARN from vgic_get_irq (Gavin Shan) [2008070] - KVM: arm64: Enforce reserved bits for PSCI target affinities (Gavin Shan) [2008070] - KVM: arm64: Handle PSCI resets before userspace touches vCPU state (Gavin Shan) [2008070] - KVM: arm64: Fix read-side race on updates to vcpu reset state (Gavin Shan) [2008070] - KVM: arm64: Restore PMU configuration on first run (Gavin Shan) [2008070] - KVM: arm64: Don't zero the cycle count register when PMCR_EL0.P is set (Gavin Shan) [2008070] - KVM: arm64: Prevent mixed-width VM creation (Gavin Shan) [2008070] - KVM: arm64: Fix debug register indexing (Gavin Shan) [2008070] - KVM: arm64: Reject VM creation when the default IPA size is unsupported (Gavin Shan) [2008070] - KVM: arm64: Limit the debug architecture to ARMv8.0 (Gavin Shan) [2008070] - KVM: arm64: Handle SCXTNUM_ELx traps (Gavin Shan) [2008070] - arm64: kvm: mte: Hide the MTE CPUID information from the guests (Gavin Shan) [2008070] - arm64: mte: Fix typo in macro definition (Gavin Shan) [2008070] - arm64/cpufeature: Add remaining feature bits in ID_AA64PFR1 register (Gavin Shan) [2008070] - arm64: mte: system register definitions (Gavin Shan) [2008070] - arm64: sysreg: Clean up instructions for modifying PSTATE fields (Gavin Shan) [2008070] - KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set (Gavin Shan) [2008070] - arm64: kvm: Fix IDMAP overlap with HYP VA (Gavin Shan) [2008070] - packet: rework packet_pick_tx_queue() to use common code selection (Petr Oros) [2016477] - net: dev: rename queue selection helpers. (Petr Oros) [2016477] - Revert "cpuset: Make cpuset hotplug synchronous" (Waiman Long) [2023783] - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN (Paolo Abeni) [2018546] - net: Only allow init netns to set default tcp cong to a restricted algo (Paolo Abeni) [2018546] - ipv6: tcp: drop silly ICMPv6 packet too big messages (Paolo Abeni) [2018546] - tcp: annotate data races around tp->mtu_info (Paolo Abeni) [2018546] - net: send SYNACK packet with accepted fwmark (Paolo Abeni) [2018546] - tcp: call sk_wmem_schedule before sk_mem_charge in zerocopy path (Paolo Abeni) [2018546] - net/tcp_fastopen: fix data races around tfo_active_disable_stamp (Paolo Abeni) [2018546] - net/tcp_fastopen: remove obsolete extern (Paolo Abeni) [2018546] - net, gro: Set inner transport header offset in tcp/udp GRO hook (Paolo Abeni) [2018546] - tcp_bbr: fix u32 wrap bug in round logic if bbr_init() called after 2B packets (Paolo Abeni) [2018546] - tcp: seq_file: Avoid skipping sk during tcp_seek_last_pos (Paolo Abeni) [2018546] - tcp: fix tp->undo_retrans accounting in tcp_sacktag_one() (Paolo Abeni) [2018546] - evm: mark evm_fixmode as __ro_after_init (Bruno Meneguele) [2017155] - IMA: remove -Wmissing-prototypes warning (Bruno Meneguele) [2017155] - ima: Set correct casting types (Bruno Meneguele) [2017155] - evm: Don't return an error in evm_write_xattrs() if audit is not enabled (Bruno Meneguele) [2017155] - evm: fix writing /evm overflow (Bruno Meneguele) [2017155] - ima: Fix function name error in comment. (Bruno Meneguele) [2017155] - ima: Fix the error code for restoring the PCR value (Bruno Meneguele) [2017155] - integrity: double check iint_cache was initialized (Bruno Meneguele) [2017155] - certs: Fix blacklist flag type confusion (Bruno Meneguele) [2017155] - integrity: Make function integrity_add_key() static (Bruno Meneguele) [2017155] - ima: Free IMA measurement buffer after kexec syscall (Bruno Meneguele) [2017155] - ima: Free IMA measurement buffer on error (Bruno Meneguele) [2017155] - evm: Fix memleak in init_desc (Bruno Meneguele) [2017155] - crypto: shash - remove shash_desc::flags (Bruno Meneguele) [2017155] - ima: Don't modify file descriptor mode on the fly (Bruno Meneguele) [2017155] - evm: Check size of security.evm before using it (Bruno Meneguele) [2017155] - ima: Remove semicolon at the end of ima_get_binary_runtime_size() (Bruno Meneguele) [2017155] - ima: Don't ignore errors from crypto_shash_update() (Bruno Meneguele) [2017155] - integrity: remove redundant initialization of variable ret (Bruno Meneguele) [2017155] - ima: Fail rule parsing when appraise_flag=blacklist is unsupportable (Bruno Meneguele) [2017155] - ima: Fail rule parsing when the KEXEC_CMDLINE hook is combined with an invalid cond (Bruno Meneguele) [2017155] - ima: Fail rule parsing when buffer hook functions have an invalid action (Bruno Meneguele) [2017155] - ima: Free the entire rule if it fails to parse (Bruno Meneguele) [2017155] - ima: Free the entire rule when deleting a list of rules (Bruno Meneguele) [2017155] - evm: Fix possible memory leak in evm_calc_hmac_or_hash() (Bruno Meneguele) [2017155] - ima: Fix ima digest hash table key calculation (Bruno Meneguele) [2017155] - ima: Fix return value of ima_write_policy() (Bruno Meneguele) [2017155] - evm: Fix a small race in init_desc() (Bruno Meneguele) [2017155] - crypto: drop mask=CRYPTO_ALG_ASYNC from 'shash' tfm allocations (Bruno Meneguele) [2017155] - evm: Don't deadlock if a crypto algorithm is unavailable (Bruno Meneguele) [2017155] - evm: Check also if *tfm is an error pointer in init_desc() (Bruno Meneguele) [2017155] - ima: avoid appraise error for hash calc interrupt (Bruno Meneguele) [2017155] - integrity: remove pointless subdir-$(CONFIG_...) (Bruno Meneguele) [2017155] - integrity: remove unneeded, broken attempt to add -fshort-wchar (Bruno Meneguele) [2017155] - x86/cpu: Fix migration safety with X86_BUG_NULL_SEL (Vitaly Kuznetsov) [2016961] - fs/xfs: convert comma to semicolon (Bill O'Donnell) [2009521] - xfs: remove xfs_buf_t typedef (Bill O'Donnell) [2009521] - xfs: open code updating i_mode in xfs_set_acl (Bill O'Donnell) [2009521] - xfs: remove xfs_vn_setattr_nonsize (Bill O'Donnell) [2009521] - xfs: remove unneeded return value check for *init_cursor() (Bill O'Donnell) [2009521] - xfs: introduce xfs_validate_stripe_geometry() (Bill O'Donnell) [2009521] - xfs: show the proper user quota options (Bill O'Donnell) [2009521] - xfs: remove the unused XFS_B_FSB_OFFSET macro (Bill O'Donnell) [2009521] - xfs: remove unnecessary null check in xfs_generic_create (Bill O'Donnell) [2009521] - xfs: directly return if the delta equal to zero (Bill O'Donnell) [2009521] - xfs: delete duplicated tp->t_dqinfo null check and allocation (Bill O'Donnell) [2009521] - xfs: rename xfs_fc_* back to xfs_fs_* (Bill O'Donnell) [2009521] - xfs: refactor file range validation (Bill O'Donnell) [2009521] - xfs: refactor realtime volume extent validation (Bill O'Donnell) [2009521] - xfs: refactor data device extent validation (Bill O'Donnell) [2009521] - xfs: scrub should mark a directory corrupt if any entries cannot be iget'd (Bill O'Donnell) [2009521] - xfs: detect overflows in bmbt records (Bill O'Donnell) [2009521] - xfs: trace log intent item recovery failures (Bill O'Donnell) [2009521] - xfs: validate feature support when recovering rmap/refcount intents (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered extent-free intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered extent-free intent checks out of xfs_efi_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered refcount intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered refcount intent checks out of xfs_cui_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered rmap intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered rmap intent checks out of xfs_rui_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered bmap intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered bmap intent checks out of xfs_bui_item_recover (Bill O'Donnell) [2009521] - xfs: move kernel-specific superblock validation out of libxfs (Bill O'Donnell) [2009521] - platform/x86: amd-pmc: Increase the response register timeout (David Arcari) [2005064] - ARM: 9093/1: drivers: firmwapsci: Register with kernel restart handler (Mark Salter) [1996748] - arm64/kernel: Remove needless Call Frame Information annotations (Mark Salter) [1996748] - arm64: smccc: Add support for SMCCCv1.2 extended input/output registers (Mark Salter) [1996748] - psci: Remove unneeded semicolon (Mark Salter) [1996748] - firmware: smccc: Add SMCCC TRNG function call IDs (Mark Salter) [1996748] - arm64: Add support for SMCCC TRNG entropy source (Mark Salter) [1996748] - firmware: smccc: Introduce SMCCC TRNG framework (Mark Salter) [1996748] - arm64: random: Remove no longer needed prototypes (Mark Salter) [1996748] - arm64: kaslr: Use standard early random function (Mark Salter) [1996748] - random: random.h should include archrandom.h, not the other way around (Mark Salter) [1996748] - arm64: add credited/trusted RNG support (Mark Salter) [1996748] - arm64: Use v8.5-RNG entropy for KASLR seed (Mark Salter) [1996748] - arm64: kaslr: Check command line before looking for a seed (Mark Salter) [1996748] - arm64: kaslr: Announce KASLR status on boot (Mark Salter) [1996748] - psci: Add accessor for psci_0_1_function_ids (Mark Salter) [1996748] - psci: Replace psci_function_id array with a struct (Mark Salter) [1996748] - psci: Split functions to v0.1 and v0.2+ variants (Mark Salter) [1996748] - psci: Support psci_ops.get_version for v0.1 (Mark Salter) [1996748] - arm64: psci: Avoid printing in cpu_psci_cpu_die() (Mark Salter) [1996748] - firmware: psci: Extend psci_set_osi_mode() to allow reset to PC mode (Mark Salter) [1996748] - smccc: Use separate variables for args and results (Mark Salter) [1996748] - smccc: Define vendor hyp owned service call region (Mark Salter) [1996748] - firmware: smccc: Export both smccc functions (Mark Salter) [1996748] - sched,psci: Convert to sched_set_fifo*() (Mark Salter) [1996748] - firmware: smccc: Add ARCH_SOC_ID support (Mark Salter) [1996748] - base: soc: Add serial_number attribute to soc (Mark Salter) [1996748] - drivers/firmware/psci: Assign @err directly in hotplug_tests() (Mark Salter) [1996748] - drivers/firmware/psci: Fix memory leakage in alloc_init_cpu_groups() (Mark Salter) [1996748] - firmware: smccc: Fix missing prototype warning for arm_smccc_version_init (Mark Salter) [1996748] - firmware: smccc: Add function to fetch SMCCC version (Mark Salter) [1996748] - firmware: smccc: Refactor SMCCC specific bits into separate file (Mark Salter) [1996748] - firmware: smccc: Drop smccc_version enum and use ARM_SMCCC_VERSION_1_x instead (Mark Salter) [1996748] - firmware: smccc: Add HAVE_ARM_SMCCC_DISCOVERY to identify SMCCC v1.1 and above (Mark Salter) [1996748] - firmware: psci: Replace cpu_up/down() with add/remove_cpu() (Mark Salter) [1996748] - firmware: psci: Export functions to manage the OSI mode (Mark Salter) [1996748] - arm64: psci: Reduce the waiting time for cpu_psci_cpu_kill() (Mark Salter) [1996748] - firmware/psci: use common SMCCC_CONDUIT_* (Mark Salter) [1996748] - arm64: smp: disable hotplug on trusted OS resident CPU (Mark Salter) [1996748] - PSCI: cpuidle: Refactor CPU suspend power_state parameter handling (Mark Salter) [1996748] - ARM: psci: cpuidle: Enable PSCI CPUidle driver (Mark Salter) [1996748] - drivers: firmware: psci: Decouple checker from generic ARM CPUidle (Mark Salter) [1996748] - firmware/psci: psci_checker: Park kthreads before stopping them (Mark Salter) [1996748] - firmware/psci: add support for SYSTEM_RESET2 (Mark Salter) [1996748] - drivers: firmware: psci: Announce support for OS initiated suspend mode (Mark Salter) [1996748] - drivers: firmware: psci: Simplify error path of psci_dt_init() (Mark Salter) [1996748] - drivers: firmware: psci: Split psci_dt_cpu_init_idle() (Mark Salter) [1996748] - drivers: firmware: psci: Move psci to separate directory (Mark Salter) [1996748] - arm64: remove unused asm/compiler.h header file (Mark Salter) [1996748] - ppc64: Adding read_lock definition to nvme (Gopal Tiwari) [1990475] - nvme: fix per-namespace chardev deletion (Gopal Tiwari) [1990475] - nvme: set the PRACT bit when using Write Zeroes with T10 PI (Gopal Tiwari) [1990475] - nvme: fix nvme_setup_command metadata trace event (Gopal Tiwari) [1990475] - nvme-pci: don't WARN_ON in nvme_reset_work if ctrl.state is not RESETTING (Gopal Tiwari) [1990475] - nvme: fix refcounting imbalance when all paths are down (Gopal Tiwari) [1990475] - nvme-pci: do not call nvme_dev_remove_admin from nvme_remove (Gopal Tiwari) [1990475] - nvme-pci: fix multiple races in nvme_setup_io_queues (Gopal Tiwari) [1990475] - nvme-tcp: use __dev_get_by_name instead dev_get_by_name for OPT_HOST_IFACE (Gopal Tiwari) [1990475] - nvme-tcp: can't set sk_user_data without write_lock (Gopal Tiwari) [1990475] - nvme: use blk_execute_rq() for passthrough commands (Gopal Tiwari) [1990475] - nvmet: use NVMET_MAX_NAMESPACES to set nn value (Gopal Tiwari) [1990475] - nvme-pci: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvme: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvmet: add ZBD over ZNS backend support (Gopal Tiwari) [1990475] - nvmet: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvmet: use req->cmd directly in file-ns fast path (Gopal Tiwari) [1990475] - nvmet: add Command Set Identifier support (Gopal Tiwari) [1990475] - nvmet: add nvmet_req_bio put helper for backends (Gopal Tiwari) [1990475] - nvmet: use nvme status value directly (Gopal Tiwari) [1990475] - nvmet: use u32 for nvmet_subsys max_nsid (Gopal Tiwari) [1990475] - nvmet: remove local variable (Gopal Tiwari) [1990475] - nvmet: add req cns error complete helper (Gopal Tiwari) [1990475] - nvmet: use req->cmd directly in bdev-ns fast path (Gopal Tiwari) [1990475] - nvmet: use u32 type for the local variable nsid (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in connect io q (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in nvmf_reg_write32() (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in connect admin q (Gopal Tiwari) [1990475] - nvmet: make ver stable once connection established (Gopal Tiwari) [1990475] - nvmet: make sn stable once connection was established (Gopal Tiwari) [1990475] - nvmet: change sn size and check validity (Gopal Tiwari) [1990475] - nvme-tcp: use ctrl sgl check helper (Gopal Tiwari) [1990475] - nvmet-fc: do not check for invalid target port in nvmet_fc_handle_fcp_rqst() (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in nvmf_reg_read64() (Gopal Tiwari) [1990475] - nvmet: allow mn change if subsys not discovered (Gopal Tiwari) [1990475] - nvme-fc: use ctrl sgl check helper (Gopal Tiwari) [1990475] - nvme-pci: fix var. type for increasing cq_head (Gopal Tiwari) [1990475] - nvme: add a helper to check ctrl sgl support (Gopal Tiwari) [1990475] - nvme: factor out a nvme_validate_passthru_nsid helper (Gopal Tiwari) [1990475] - nvme-tcp: fix error codes in nvme_tcp_setup_ctrl() (Gopal Tiwari) [1990475] - nvme: fix grammar in the CONFIG_NVME_MULTIPATH kconfig help text (Gopal Tiwari) [1990475] - nvme: verify MNAN value if ANA is enabled (Gopal Tiwari) [1990475] - ACPI: Check StorageD3Enable _DSD property in ACPI code (Gopal Tiwari) [1990475] - nvmet: move ka_work initialization to nvmet_alloc_ctrl (Gopal Tiwari) [1990475] - nvme: remove nvme_{get,put}_ns_from_disk (Gopal Tiwari) [1990475] - nvme: split nvme_report_zones (Gopal Tiwari) [1990475] - nvmet: remove a superfluous variable (Gopal Tiwari) [1990475] - nvme: open code nvme_put_ns_from_disk in nvme_ns_head_chr_ioctl (Gopal Tiwari) [1990475] - nvme: move the CSI sanity check into nvme_ns_report_zones (Gopal Tiwari) [1990475] - nvme-fabrics: remove extra braces (Gopal Tiwari) [1990475] - nvme: open code nvme_{get,put}_ns_from_disk in nvme_ns_head_ioctl (Gopal Tiwari) [1990475] - nvme: add a sparse annotation to nvme_ns_head_ctrl_ioctl (Gopal Tiwari) [1990475] - nvme-fabrics: remove an extra comment (Gopal Tiwari) [1990475] - nvme-fabrics: remove extra new lines in the switch (Gopal Tiwari) [1990475] - nvme: open code nvme_put_ns_from_disk in nvme_ns_head_ctrl_ioctl (Gopal Tiwari) [1990475] - nvme: extend and modify the APST configuration algorithm (Gopal Tiwari) [1990475] - nvme-tcp: allow selecting the network interface for connections (Gopal Tiwari) [1990475] - nvme-fabrics: fix the kerneldco comment for nvmf_log_connect_error() (Gopal Tiwari) [1990475] - nvme: remove redundant initialization of variable ret (Gopal Tiwari) [1990475] - nvmet: fix freeing unallocated p2pmem (Gopal Tiwari) [1990475] - nvme-loop: reset queue count to 1 in nvme_loop_destroy_io_queues() (Gopal Tiwari) [1990475] - nvme-loop: do not warn for deleted controllers during reset (Gopal Tiwari) [1990475] - nvme-loop: check for NVME_LOOP_Q_LIVE in nvme_loop_destroy_admin_queue() (Gopal Tiwari) [1990475] - nvme-loop: clear NVME_LOOP_Q_LIVE when nvme_loop_configure_admin_queue() fails (Gopal Tiwari) [1990475] - nvme-rdma: fix in-casule data send for chained sgls (Gopal Tiwari) [1990475] - nvmet: fix false keep-alive timeout when a controller is torn down (Gopal Tiwari) [1990475] - nvmet-tcp: fix inline data size comparison in nvmet_tcp_queue_response (Gopal Tiwari) [1990475] - nvme-tcp: remove incorrect Kconfig dep in BLK_DEV_NVME (Gopal Tiwari) [1990475] - nvme-fabrics: decode host pathing error for connect (Gopal Tiwari) [1990475] - nvme-fc: short-circuit reconnect retries (Gopal Tiwari) [1990475] - nvme: fix potential memory leaks in nvme_cdev_add (Gopal Tiwari) [1990475] - nvme-fc: clear q_live at beginning of association teardown (Gopal Tiwari) [1990475] - nvme-tcp: rerun io_work if req_list is not empty (Gopal Tiwari) [1990475] - nvme-tcp: fix possible use-after-completion (Gopal Tiwari) [1990475] - nvme-loop: fix memory leak in nvme_loop_create_ctrl() (Gopal Tiwari) [1990475] - nvmet: fix memory leak in nvmet_alloc_ctrl() (Gopal Tiwari) [1990475] - nvmet: seset ns->file when open fails (Gopal Tiwari) [1990475] - nvmet: demote fabrics cmd parse err msg to debug (Gopal Tiwari) [1990475] - nvmet: fix inline bio check for passthru (Gopal Tiwari) [1990475] - nvmet: fix inline bio check for bdev-ns (Gopal Tiwari) [1990475] - nvmet: use helper to remove the duplicate code (Gopal Tiwari) [1990475] - nvmet: demote discovery cmd parse err msg to debug (Gopal Tiwari) [1990475] - nvmet: remove unsupported command noise (Gopal Tiwari) [1990475] - nvme-pci: fix controller reset hang when racing with nvme_timeout (Gopal Tiwari) [1990475] - nvme: move the fabrics queue ready check routines to core (Gopal Tiwari) [1990475] - nvme: avoid memset for passthrough requests (Gopal Tiwari) [1990475] - nvme: add nvme_get_ns helper (Gopal Tiwari) [1990475] - nvme: fix controller ioctl through ns_head (Gopal Tiwari) [1990475] - nvme: introduce generic per-namespace chardev (Gopal Tiwari) [1990475] - nvme: cleanup nvme_configure_apst (Gopal Tiwari) [1990475] - nvme: do not try to reconfigure APST when the controller is not live (Gopal Tiwari) [1990475] - nvme: sanitize KATO setting (Gopal Tiwari) [1990475] - nvmet: avoid queuing keep-alive timer if it is disabled (Gopal Tiwari) [1990475] - nvme: fix NULL derefence in nvme_ctrl_fast_io_fail_tmo_show/store (Gopal Tiwari) [1990475] - nvme: let namespace probing continue for unsupported features (Gopal Tiwari) [1990475] - nvme: factor out nvme_ns_open and nvme_ns_release helpers (Gopal Tiwari) [1990475] - nvme: move nvme_ns_head_ops to multipath.c (Gopal Tiwari) [1990475] - nvme: factor out a nvme_tryget_ns_head helper (Gopal Tiwari) [1990475] - nvme: move the ioctl code to a separate file (Gopal Tiwari) [1990475] - nvme: don't bother to look up a namespace for controller ioctls (Gopal Tiwari) [1990475] - nvme: simplify block device ioctl handling for the !multipath case (Gopal Tiwari) [1990475] - nvme: simplify the compat ioctl handling (Gopal Tiwari) [1990475] - nvme-multipath: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme: pass a user pointer to nvme_nvm_ioctl (Gopal Tiwari) [1990475] - nvme: factor out a nvme_ns_ioctl helper (Gopal Tiwari) [1990475] - nvme: cleanup setting the disk name (Gopal Tiwari) [1990475] - nvme: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme-pci: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme: add a nvme_ns_head_multipath helper (Gopal Tiwari) [1990475] - nvmet: fix a spelling mistake "nubmer" -> "number" (Gopal Tiwari) [1990475] - nvmet-fc: simplify nvmet_fc_alloc_hostport (Gopal Tiwari) [1990475] - nvmet-tcp: fix a segmentation fault during io parsing error (Gopal Tiwari) [1990475] - lightnvm: use kobj_to_dev() (Gopal Tiwari) [1990475] - nvme: fix handling of large MDTS values (Gopal Tiwari) [1990475] - nvme: implement non-mdts command limits (Gopal Tiwari) [1990475] - nvme: disallow passthru cmd from targeting a nsid != nsid of the block dev (Gopal Tiwari) [1990475] - nvme: use sysfs_emit instead of sprintf (Gopal Tiwari) [1990475] - nvme-fc: check sgl supported by target (Gopal Tiwari) [1990475] - nvme: remove superfluous else in nvme_ctrl_loss_tmo_store (Gopal Tiwari) [1990475] - nvme: warn of unhandled effects only once (Gopal Tiwari) [1990475] - nvmet-tcp: enable optional queue idle period tracking (Gopal Tiwari) [1990475] - nvmet-tcp: fix incorrect locking in state_change sk callback (Gopal Tiwari) [1990475] - nvme-tcp: block BH in sk state_change sk callback (Gopal Tiwari) [1990475] - nvmet: return proper error code from discovery ctrl (Gopal Tiwari) [1990475] - nvme-tcp: check sgl supported by target (Gopal Tiwari) [1990475] - nvme: use driver pdu command for passthrough (Gopal Tiwari) [1990475] - nvmet: remove unnecessary ctrl parameter (Gopal Tiwari) [1990475] - nvmet-fc: update function documentation (Gopal Tiwari) [1990475] - nvme-pci: allocate nvme_command within driver pdu (Gopal Tiwari) [1990475] - nvmet: do not allow model_number exceed 40 bytes (Gopal Tiwari) [1990475] - nvme-fc: fix the function documentation comment (Gopal Tiwari) [1990475] - nvme: add new line after variable declatation (Gopal Tiwari) [1990475] - nvme: don't check nvme_req flags for new req (Gopal Tiwari) [1990475] - nvme: mark nvme_setup_passsthru() inline (Gopal Tiwari) [1990475] - nvme: split init identify into helper (Gopal Tiwari) [1990475] - nvme: rename nvme_init_identify() (Gopal Tiwari) [1990475] - nvme: reduce checks for zero command effects (Gopal Tiwari) [1990475] - nvmet: update error log page in nvmet_alloc_ctrl() (Gopal Tiwari) [1990475] - nvmet: remove an unnecessary function parameter to nvmet_check_ctrl_status (Gopal Tiwari) [1990475] - nvmet: remove a duplicate status assignment in nvmet_alloc_ctrl (Gopal Tiwari) [1990475] - nvmet: replace white spaces with tabs (Gopal Tiwari) [1990475] - nvme: use NVME_CTRL_CMIC_ANA macro (Gopal Tiwari) [1990475] - nvme-pci: cleanup nvme_irq() (Gopal Tiwari) [1990475] - nvme-pci: remove the barriers in nvme_irq() (Gopal Tiwari) [1990475] - nvmet-tcp: fix kmap leak when data digest in use (Gopal Tiwari) [1990475] - nvmet: don't check iosqes,iocqes for discovery controllers (Gopal Tiwari) [1990475] - nvme-tcp: fix a NULL deref when receiving a 0-length r2t PDU (Gopal Tiwari) [1990475] - nvme-rdma: fix possible hang when failing to set io queues (Gopal Tiwari) [1990475] - nvme-tcp: fix possible hang when failing to set io queues (Gopal Tiwari) [1990475] - nvme-fabrics: only reserve a single tag (Gopal Tiwari) [1990475] - nvme: allocate the keep alive request using BLK_MQ_REQ_NOWAIT (Gopal Tiwari) [1990475] - nvme: merge nvme_keep_alive into nvme_keep_alive_work (Gopal Tiwari) [1990475] - nvme-hwmon: Return error code when registration fails (Gopal Tiwari) [1990475] - nvme: update enumerations for status codes (Gopal Tiwari) [1990475]- scsi: mpt3sas: Fix incorrectly assigned error return and check (Tomas Henzl) [1990535] - scsi: mpt3sas: Introduce sas_ncq_prio_supported sysfs sttribute (Tomas Henzl) [1990535] - scsi: mpt3sas: Update driver version to 39.100.00.00 (Tomas Henzl) [1990535] - scsi: mpt3sas: Use firmware recommended queue depth (Tomas Henzl) [1990535] - scsi: mpt3sas: Bump driver version to 38.100.00.00 (Tomas Henzl) [1990535] - scsi: mpt3sas: Transition IOC to Ready state during shutdown (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix error return value in _scsih_expander_add() (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix Coverity reported issue (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix fall-through warnings for Clang (Tomas Henzl) [1990535] - scsi: mpt3sas: Handle firmware faults during second half of IOC init (Tomas Henzl) [1990535] - scsi: mpt3sas: Handle firmware faults during first half of IOC init (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix deadlock while cancelling the running firmware event (Tomas Henzl) [1990535] - scsi: mpt3sas: Documentation cleanup (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix two kernel-doc headers (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix out-of-bounds warnings in _ctl_addnl_diag_query (Tomas Henzl) [1990535] - scsi: megaraid_sas: Driver version update to 07.719.03.00-rc1 (Tomas Henzl) [1989643] - scsi: megaraid_sas: Add helper functions for irq_context (Tomas Henzl) [1989643] - scsi: megaraid: Clean up some inconsistent indenting (Tomas Henzl) [1989643] - scsi: megaraid: Fix Coccinelle warning (Tomas Henzl) [1989643] - IB/cma: Do not send IGMP leaves for sendonly Multicast groups (Kamal Heib) [2007269] - hv_netvsc: Add comment of netvsc_xdp_xmit() (Mohammed Gamal) [2008560] - hv_netvsc: use netif_is_bond_master() instead of open code (Mohammed Gamal) [2008560] - hv_netvsc: Avoid field-overflowing memcpy() (Mohammed Gamal) [2008560] - hv_netvsc: Set needed_headroom according to VF (Mohammed Gamal) [2008560] - netfilter: conntrack: fix error path in nf_conntrack_pernet_init() (Florian Westphal) [1922568] - netfilter: nf_conntrack: provide modparam to always register conntrack hooks (Florian Westphal) [1922568] - sctp: return true only for pathmtu update in sctp_transport_pl_toobig (Xin Long) [1890383] - sctp: subtract sctphdr len in sctp_transport_pl_hlen (Xin Long) [1890383] - sctp: reset probe_timer in sctp_transport_pl_update (Xin Long) [1890383] - sctp: allow IP fragmentation when PLPMTUD enters Error state (Xin Long) [1890383] - sctp: send pmtu probe only if packet loss in Search Complete state (Xin Long) [1890383] - sctp: improve the code for pmtu probe send and recv update (Xin Long) [1890383] - sctp: prevent info leak in sctp_make_heartbeat() (Xin Long) [1890383] - sctp: check pl.raise_count separately from its increment (Xin Long) [1890383] - sctp: send the next probe immediately once the last one is acked (Xin Long) [1890383] - sctp: do black hole detection in search complete state (Xin Long) [1890383] - sctp: process sctp over udp icmp err on sctp side (Xin Long) [1890383] - sctp: extract sctp_v4_err_handle function from sctp_v4_err (Xin Long) [1890383] - sctp: extract sctp_v6_err_handle function from sctp_v6_err (Xin Long) [1890383] - sctp: remove the unessessary hold for idev in sctp_v6_err (Xin Long) [1890383] - sctp: enable PLPMTUD when the transport is ready (Xin Long) [1890383] - sctp: do state transition when receiving an icmp TOOBIG packet (Xin Long) [1890383] - sctp: do state transition when a probe succeeds on HB ACK recv path (Xin Long) [1890383] - sctp: do state transition when PROBE_COUNT == MAX_PROBES on HB send path (Xin Long) [1890383] - sctp: do the basic send and recv for PLPMTUD probe (Xin Long) [1890383] - sctp: add the probe timer in transport for PLPMTUD (Xin Long) [1890383] - sctp: add the constants/variables and states and some APIs for transport (Xin Long) [1890383] - sctp: add SCTP_PLPMTUD_PROBE_INTERVAL sockopt for sock/asoc/transport (Xin Long) [1890383] - sctp: add probe_interval in sysctl and sock/asoc/transport (Xin Long) [1890383] - sctp: add pad chunk and its make function and event table (Xin Long) [1890383] - blk-mq: still set q->make_request_fn for blk-mq (Ming Lei) [1999728] - PCI: Add AMD RS690 quirk to enable 64-bit DMA (Myron Stowe) [1993279] - PCI: Add ACS quirk for Broadcom BCM57414 NIC (Myron Stowe) [1993279] - PCI: Mark some NVIDIA GPUs to avoid bus reset (Myron Stowe) [1993279] - PCI: of: Clear 64-bit flag for non-prefetchable memory below 4GB (Myron Stowe) [1993279] - x86/PCI: Remove unused alloc_pci_root_info() return value (Myron Stowe) [1993279] - PCI: Delay after FLR of Intel DC P4510 NVMe (Myron Stowe) [1993279] - PCI: Delay after FLR of Intel DC P3700 NVMe (Myron Stowe) [1993279] - PCI: Disable Samsung SM961/PM961 NVMe before FLR (Myron Stowe) [1993279] - PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions (Myron Stowe) [1993279] - PCI/sysfs: Rearrange smbios_attr_group and acpi_attr_group (Myron Stowe) [1993279] - PCI/sysfs: Tidy SMBIOS & ACPI label attributes (Myron Stowe) [1993279] - PCI/sysfs: Convert "index", "acpi_index", "label" to static attributes (Myron Stowe) [1993279] - PCI/sysfs: Define SMBIOS label attributes with DEVICE_ATTR*() (Myron Stowe) [1993279] - PCI/sysfs: Define ACPI label attributes with DEVICE_ATTR*() (Myron Stowe) [1993279] - PCI/sysfs: Rename device_has_dsm() to device_has_acpi_name() (Myron Stowe) [1993279] - PCI/sysfs: Convert "vpd" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Rename "vpd" attribute accessors (Myron Stowe) [1993279] - PCI/sysfs: Convert "reset" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Convert "rom" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Convert "config" to static attribute (Myron Stowe) [1993279] - PCI: Allow VPD access for QLogic ISP2722 (Myron Stowe) [1993279] - PCI/VPD: Add helper pci_get_func0_dev() (Myron Stowe) [1993279] - PCI/VPD: Remove pci_vpd_find_tag() SRDT handling (Myron Stowe) [1993279] - PCI/VPD: Remove pci_vpd_find_tag() 'offset' argument (Myron Stowe) [1993279] - PCI/VPD: Change pci_vpd_init() return type to void (Myron Stowe) [1993279] - PCI/VPD: Make missing VPD message less alarming (Myron Stowe) [1993279] - PCI/VPD: Remove pci_set_vpd_size() (Myron Stowe) [1993279] - PCI/VPD: Remove sysfs accessor size checking dead code (Myron Stowe) [1993279] - PCI/VPD: Remove obsolete Broadcom NIC quirk (Myron Stowe) [1993279] - PCI/ACPI: Fix acpi_pci_set_power_state() debug message (Myron Stowe) [1993279] - PCI: acpiphp: Fix whitespace issue (Myron Stowe) [1993279] - PCI: shpchp: Remove unused shpc_writeb() (Myron Stowe) [1993279] - PCI: cpqphp: Use DEFINE_SPINLOCK() for int15_lock (Myron Stowe) [1993279] - ACPI / hotplug / PCI: Fix reference count leak in enable_slot() (Myron Stowe) [1993279] - PCI: Add pci_disable_parity() (Myron Stowe) [1993279] - PCI: Release OF node in pci_scan_device()'s error path (Myron Stowe) [1993279] - fs: dlm: fix check for multi-homed hosts (Alexander Aring) [1889887] - iommu: remove iommu_domain_{get,set}_attr (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: enable the liodn when attaching a device (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: replace DOMAIN_ATTR_FSL_PAMU_STASH with a direct call (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove ->domain_window_enable (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove support for multiple windows (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove fsl_pamu_get_domain_attr (Jerry Snitselaar) [2004349] - iommu: remove the unused domain_window_disable method (Jerry Snitselaar) [2004349] - iommu: Remove .domain_{get,set}_windows (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Decrease the queue size of evtq and priq (Jerry Snitselaar) [2004349] - iommu/vt-d: Use pasid_pte_is_present() helper function (Jerry Snitselaar) [2004349] - iommu/vt-d: Update the virtual command related registers (Jerry Snitselaar) [2004349] - ACPI: IORT: Handle device properties with software node API (Jerry Snitselaar) [2004349] - iommu: Update "iommu.strict" documentation (Jerry Snitselaar) [2004349] - iommu/dma: Remove redundant "!dev" checks (Jerry Snitselaar) [2004349] - iommu/virtio: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/vt-d: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/amd: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu: Pull IOVA cookie management into the core (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Stop pre-zeroing batch commands (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Extract reusable function __arm_smmu_cmdq_skip_err() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add and use static helper function arm_smmu_get_cmdq() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Remove some unneeded init in arm_smmu_cmdq_issue_cmdlist() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add and use static helper function arm_smmu_cmdq_issue_cmd_with_sync() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Use command queue batching helpers to improve performance (Jerry Snitselaar) [2004349] - iommu/amd: Use only natural aligned flushes in a VM (Jerry Snitselaar) [2004349] - iommu/amd: Sync once for scatter-gather operations (Jerry Snitselaar) [2004349] - iommu/amd: Tailored gather logic for AMD (Jerry Snitselaar) [2004349] - iommu: Factor iommu_iotlb_gather_is_disjoint() out (Jerry Snitselaar) [2004349] - iommu: Improve iommu_iotlb_gather helpers (Jerry Snitselaar) [2004349] - iommu/amd: Do not use flush-queue when NpCache is on (Jerry Snitselaar) [2004349] - iommu/amd: Selective flush on unmap (Jerry Snitselaar) [2004349] - iommu/amd: Convert from atomic_t to refcount_t on pasid_state->count (Jerry Snitselaar) [2004349] - iommu: Streamline iommu_iova_to_phys() (Jerry Snitselaar) [2004349] - iommu/vt-d: Allow devices to have more than 32 outstanding PRs (Jerry Snitselaar) [1920744] - iommu/vt-d: Drop "0x" prefix from PCI bus & device addresses (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix a deadlock in intel_svm_drain_prq() (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix PASID leak in intel_svm_unbind_mm() (Jerry Snitselaar) [2004349] - iommu/amd: Fix printing of IOMMU events when rate limiting kicks in (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix missing unlock on error in arm_smmu_device_group() (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix race condition during iommu_group creation (Jerry Snitselaar) [2004349] - iommu: Fix race condition during default domain allocation (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Implement the map_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/arm-smmu-v3: Implement the unmap_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/vt-d: Move clflush'es from iotlb_sync_map() to map_pages() (Jerry Snitselaar) [1971977] - iommu/vt-d: Implement map/unmap_pages() iommu_ops callback (Jerry Snitselaar) [1971977] - iommu/vt-d: Report real pgsize bitmap to iommu core (Jerry Snitselaar) [1971977] - iommu/arm-smmu: Implement the map_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/arm-smmu: Implement the unmap_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Implement arm_lpae_map_pages() (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Implement arm_lpae_unmap_pages() (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Prepare PTE methods for handling multiple entries (Jerry Snitselaar) [1971977] - iommu: Add support for the map_pages() callback (Jerry Snitselaar) [1971977] - iommu: Hook up '->unmap_pages' driver callback (Jerry Snitselaar) [1971977] - iommu: Split 'addr_merge' argument to iommu_pgsize() into separate parts (Jerry Snitselaar) [1971977] - iommu: Use bitmap to calculate page size in iommu_pgsize() (Jerry Snitselaar) [1971977] - iommu: Add a map_pages() op for IOMMU drivers (Jerry Snitselaar) [1971977] - iommu/io-pgtable: Introduce map_pages() as a page table op (Jerry Snitselaar) [1971977] - iommu: Add an unmap_pages() op for IOMMU drivers (Jerry Snitselaar) [1971977] - iommu/io-pgtable: Introduce unmap_pages() as a page table op (Jerry Snitselaar) [1971977] - iommu/vt-d: Fix incomplete cache flush in intel_pasid_tear_down_entry() (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix PASID reference leak (Jerry Snitselaar) [2004349] - iommu: Check if group is NULL before remove device (Jerry Snitselaar) [2004349] - iommu/dma: Fix leak in non-contiguous API (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Fix fall-through warning for Clang (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix clearing real DMA device's scalable-mode context entries (Jerry Snitselaar) [2004349] - iommu/vt-d: Global devTLB flush when present context entry changed (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Use Tegra implementation on Tegra186 (Jerry Snitselaar) [2004349] - iommu: Delete a duplicate check in iommu_change_dev_def_domain() (Jerry Snitselaar) [2004349] - iommu/dma: Fix compile warning in 32-bit builds (Jerry Snitselaar) [2004349] - iommu: Drop unnecessary of_iommu.h includes (Jerry Snitselaar) [2004349] - iommu: Remove unused of_get_dma_window() (Jerry Snitselaar) [2004349] - iommu/iova: Put free_iova_mem() outside of spinlock iova_rbtree_lock (Jerry Snitselaar) [2004349] - iommu/dma: Fix IOVA reserve dma ranges (Jerry Snitselaar) [2004349] - iommu/virtio: Enable x86 support (Jerry Snitselaar) [2004349] - iommu/dma: Pass address limit rather than size to iommu_setup_dma_ops() (Jerry Snitselaar) [2004349] - iommu/amd: Fix section mismatch warning for detect_ivrs() (Jerry Snitselaar) [2004349] - iommu/amd: Add amd_iommu=force_enable option (Jerry Snitselaar) [2004349] - iommu/amd: Fix extended features logging (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix dereference of pointer info before it is null checked (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix linker error on 32-bit (Jerry Snitselaar) [2004349] - iommu/vt-d: No need to typecast (Jerry Snitselaar) [2004349] - iommu/vt-d: Define counter explicitly as unsigned int (Jerry Snitselaar) [2004349] - iommu/vt-d: Remove unnecessary braces (Jerry Snitselaar) [2004349] - iommu/vt-d: Removed unused iommu_count in dmar domain (Jerry Snitselaar) [2004349] - iommu/vt-d: Use bitfields for DMAR capabilities (Jerry Snitselaar) [2004349] - iommu/vt-d: Use DEVICE_ATTR_RO macro (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix out-bounds-warning in intel/svm.c (Jerry Snitselaar) [2004349] - iommu/vt-d: Add PRQ handling latency sampling (Jerry Snitselaar) [1971935] - iommu/vt-d: Add cache invalidation latency sampling (Jerry Snitselaar) [1971935] - iommu/vt-d: Expose latency monitor data through debugfs (Jerry Snitselaar) [1971935] - iommu/vt-d: Add common code for dmar latency performance monitors (Jerry Snitselaar) [1971935] - iommu/vt-d: Add prq_report trace event (Jerry Snitselaar) [1971973] - iommu/vt-d: Report prq to io-pgfault framework (Jerry Snitselaar) [1971971] - iommu/vt-d: Allocate/register iopf queue for sva devices (Jerry Snitselaar) [1971971] - iommu/vt-d: Refactor prq_event_thread() (Jerry Snitselaar) [1971971] - iommu/vt-d: Use common helper to lookup svm devices (Jerry Snitselaar) [1971971] - iommu/vt-d: Use iommu_sva_alloc(free)_pasid() helpers (Jerry Snitselaar) [1971971] - iommu/vt-d: Add pasid private data helpers (Jerry Snitselaar) [1971971] - iommu/vt-d: Support asynchronous IOMMU nested capabilities (Jerry Snitselaar) [2004349] - iommu/vt-d: Select PCI_ATS explicitly (Jerry Snitselaar) [2004349] - iommu/vt-d: Tweak the description of a DMA fault (Jerry Snitselaar) [1971975] - iommu/vt-d: Fix kernel-doc syntax in file header (Jerry Snitselaar) [2004349] - iommu/vt-d: Remove redundant assignment to variable agaw (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Check smmu->impl pointer before dereferencing (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Implement ->probe_finalize() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Remove unnecessary oom message (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix arm_smmu_device refcount leak in address translation (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix arm_smmu_device refcount leak when arm_smmu_rpm_get fails (Jerry Snitselaar) [2004349] - PM: runtime: Add documentation for pm_runtime_resume_and_get() (Jerry Snitselaar) [2004349] - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter (Jerry Snitselaar) [2004349] - iommu/arm: Cleanup resources in case of probe error path (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Ratelimit event dump (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add stall support for platform devices (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Change *array into *const array (Jerry Snitselaar) [2004349] - iommu/amd: Remove redundant assignment of err (Jerry Snitselaar) [2004349] - iommu/amd: Tidy up DMA ops init (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Add support for driver IOMMU fault handlers (Jerry Snitselaar) [2004349] - iommu/virtio: Add missing MODULE_DEVICE_TABLE (Jerry Snitselaar) [2004349] - iommu/amd: Fix wrong parentheses on page-specific invalidations (Jerry Snitselaar) [2004349] - iommu: Streamline registration interface (Jerry Snitselaar) [2004349] - iommu: Statically set module owner (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_IO_PGTABLE_CFG (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_DMA_USE_FLUSH_QUEUE (Jerry Snitselaar) [2004349] - iommu: remove iommu_set_cmd_line_dma_api and iommu_cmd_line_dma_api (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_NESTING (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_GEOMETRY (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_PAGING (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Maintain a SID->device structure (Jerry Snitselaar) [2004349] - iommu: Add a page fault handler (Jerry Snitselaar) [2004349] - iommu/vt-d: Support IOMMU_DEV_FEAT_IOPF (Jerry Snitselaar) [2004349] - iommu: Separate IOMMU_DEV_FEAT_IOPF from IOMMU_DEV_FEAT_SVA (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Use device properties for pasid-num-bits (Jerry Snitselaar) [2004349] - of/device: Add input id to of_dma_configure() (Jerry Snitselaar) [2004349] - of/iommu: Make of_map_rid() PCI agnostic (Jerry Snitselaar) [2004349] - iommu: Fix comment for struct iommu_fwspec (Jerry Snitselaar) [2004349] - iommu/amd: Remove duplicate check of devid (Jerry Snitselaar) [2004349] - iommu/amd: Page-specific invalidations for more than one page (Jerry Snitselaar) [2004349] - iommu/amd: Move a few prototypes to include/linux/amd-iommu.h (Jerry Snitselaar) [2004349] - iommu/amd: Remove a few unused exports (Jerry Snitselaar) [2004349] - iommu/amd: Remove the unused amd_iommu_get_v2_domain function (Jerry Snitselaar) [2004349] - iommu/amd: Remove the unused device errata code (Jerry Snitselaar) [2004349] - iommu/amd: Remove duplicate check of pasids (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix lockdep splat in intel_pasid_get_entry() (Jerry Snitselaar) [2004349] - iommu/amd: Remove iommu_init_ga() (Jerry Snitselaar) [1998265] - iommu/amd: Relocate GAMSup check to early_enable_iommus (Jerry Snitselaar) [1998265] - x86/Kconfig: Do not enable AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT automatically (Prarit Bhargava) [2021219] - hyper-v: Replace uuid.h with types.h (Mohammed Gamal) [2008563] - x86/hyperv: Avoid erroneously sending IPI to 'self' (Mohammed Gamal) [2008563] - asm-generic/hyperv: provide cpumask_to_vpset_noself (Mohammed Gamal) [2008563] - asm-generic/hyperv: Add missing function prototypes per -W1 warnings (Mohammed Gamal) [2008563] - hv: hyperv.h: Remove unused inline functions (Mohammed Gamal) [2008563] - hv: hyperv.h: a few mundane typo fixes (Mohammed Gamal) [2008563] - hv: hyperv.h: Replace one-element array with flexible-array in struct icmsg_negotiate (Mohammed Gamal) [2008563] - x86/hyperv: add comment describing TSC_INVARIANT_CONTROL MSR setting bit 0 (Mohammed Gamal) [2008563] - x86/hyperv: fix for unwanted manipulation of sched_clock when TSC marked unstable (Mohammed Gamal) [2008563] - hyperv: Detect Nested virtualization support for SVM (Mohammed Gamal) [2008563] - hyperv: SVM enlightened TLB flush support flag (Mohammed Gamal) [2008563] - x86/hyperv: remove on-stack cpumask from hv_send_ipi_mask_allbutself (Mohammed Gamal) [2008563] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [2008563] - x86/hyperv: remove unused linux/version.h header (Mohammed Gamal) [2008563] - x86/hyperv: Fix unused variable 'hi' warning in hv_apic_read (Mohammed Gamal) [2008563] - x86/hyperv: Fix unused variable 'msr_val' warning in hv_qlock_wait (Mohammed Gamal) [2008563] - PCI: hv: Fix sleep while in non-sleep context when removing child devices from the bus (Mohammed Gamal) [2008562] - PCI: hv: Add check for hyperv_initialized in init_hv_pci_drv() (Mohammed Gamal) [2008562] - PCI: hv: Drop msi_controller structure (Mohammed Gamal) [2008562] - PCI/IOV: Add sysfs MSI-X vector assignment interface (Myron Stowe) [2019087] - x86: ACPI: cstate: Optimize C3 entry on AMD CPUs (David Arcari) [1998529] - Bluetooth: Move shutdown callback before flushing tx and rx queue (Gopal Tiwari) [1990477] - Bluetooth: btusb: check conditions before enabling USB ALT 3 for WBS (Gopal Tiwari) [1990477] - Bluetooth: Fix VIRTIO_ID_BT assigned number (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix wrong opcode in the response for add_adv cmd (Gopal Tiwari) [1990477] - Bluetooth: defer cleanup of resources in hci_unregister_dev() (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Fix handling of HCI_LE_Advertising_Set_Terminated event (Gopal Tiwari) [1990477] - Bluetooth: Fix Set Extended (Scan Response) Data (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language when filtering devices (Gopal Tiwari) [1990477] - Bluetooth: smp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in HCI role comments (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language when tracking connections (Gopal Tiwari) [1990477] - Bluetooth: sco: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: a2mp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: amp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: cmtp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: bnep: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: hidp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in comments (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in SMP (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in HCI LE features (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language to describe CPB (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix slab-out-of-bounds in tlv_data_is_valid (Gopal Tiwari) [1990477] - Bluetooth: disable filter dup when scan for adv monitor (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix the command returns garbage parameter value (Gopal Tiwari) [1990477] - Bluetooth: RFCOMM: Use DEVICE_ATTR_RO macro (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type during le_conn_comp (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix invalid access on ECRED Connection response (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix invalid access if ECRED Reconfigure fails (Gopal Tiwari) [1990477] - Bluetooth: Remove spurious error message (Gopal Tiwari) [1990477] - Bluetooth: Shutdown controller after workqueues are flushed or cancelled (Gopal Tiwari) [1990477] - Bluetooth: Add ncmd=0 recovery handling (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: remove unused function (Gopal Tiwari) [1990477] - Bluetooth: Fix alt settings for incoming SCO with transparent coding format (Gopal Tiwari) [1990477] - Bluetooth: Fix the HCI to MGMT status conversion table (Gopal Tiwari) [1990477] - Bluetooth: cmtp: fix file refcount when cmtp_attach_device fails (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: delete unneeded variable initialization (Gopal Tiwari) [1990477] - Bluetooth: Return whether a connection is outbound (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fix crash when receiving new connection when debug is enabled (Gopal Tiwari) [1990477] - Bluetooth: Fix spelling mistakes (Gopal Tiwari) [1990477] - Bluetooth: Set defaults for le_scan_{int,window}_adv_monitor (Gopal Tiwari) [1990477] - Bluetooth: Allow Microsoft extension to indicate curve validation (Gopal Tiwari) [1990477] - Bluetooth: Add support for reading AOSP vendor capabilities (Gopal Tiwari) [1990477] - Bluetooth: LL privacy allow RPA (Gopal Tiwari) [1990477] - Bluetooth: Handle own address type change with HCI_ENABLE_LL_PRIVACY (Gopal Tiwari) [1990477] - Bluetooth: Do not set cur_adv_instance in adv param MGMT request (Gopal Tiwari) [1990477] - Bluetooth: Use ext adv handle from requests in CCs (Gopal Tiwari) [1990477] - Bluetooth: use the correct print format for L2CAP debug statements (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fix variable dereferenced before check 'conn' (Gopal Tiwari) [1990477] - Bluetooth: Check inquiry status before sending one (Gopal Tiwari) [1990477] - Bluetooth: Coding style fix (Gopal Tiwari) [1990477] - Bluetooth: Remove 'return' in void function (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Move the advertisement monitor events to correct list (Gopal Tiwari) [1990477] - Bluetooth: Add missing entries for PHY configuration commands (Gopal Tiwari) [1990477] - Bluetooth: Fix mgmt status for LL Privacy experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Fix wrong opcode error for read advertising features (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Rudimentary typo fixes (Gopal Tiwari) [1990477] - Bluetooth: Remove trailing semicolon in macros (Gopal Tiwari) [1990477] - Bluetooth: check for zapped sk before connecting (Gopal Tiwari) [1990477] - Bluetooth: fix set_ecdh_privkey() prototype (Gopal Tiwari) [1990477] - Bluetooth: initialize skb_queue_head at l2cap_chan_create() (Gopal Tiwari) [1990477] - Bluetooth: Set CONF_NOT_COMPLETE as l2cap_chan default (Gopal Tiwari) [1990477] - Bluetooth: Fix incorrect status handling in LE PHY UPDATE event (Gopal Tiwari) [1990477] - Bluetooth: avoid deadlock between hci_dev->lock and socket lock (Gopal Tiwari) [1990477] - Bluetooth: SMP: Convert BT_ERR/BT_DBG to bt_dev_err/bt_dev_dbg (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix not checking for maximum number of DCID (Gopal Tiwari) [1990477] - Bluetooth: Cancel le_scan_restart work when stopping discovery (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fail if remote and local public keys are identical (Gopal Tiwari) [1990477] - Bluetooth: Allow scannable adv with extended MGMT APIs (Gopal Tiwari) [1990477] - Bluetooth: Remove unneeded commands for suspend (Gopal Tiwari) [1990477] - Bluetooth: Notify suspend on le conn failed (Gopal Tiwari) [1990477] - Bluetooth: hci_uart: Remove redundant assignment to fw_ptr (Gopal Tiwari) [1990477] - Bluetooth: btmrvl: remove redundant continue statement (Gopal Tiwari) [1990477] - Bluetooth: btusb: use default nvm if boardID is 0 for wcn6855. (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc. (Gopal Tiwari) [1990477] - Bluetooth: btmtkuart: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Gopal Tiwari) [1990477] - Bluetooth: btrtl: rename USB fw for RTL8761 (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add 0x0b05:0x190e Realtek 8761BU (ASUS BT500) device. (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Add RTL8822CS capabilities (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support USB ALT 3 for WBS (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add a new QCA_ROME device (0cf3:e500) (Gopal Tiwari) [1990477] - Bluetooth: btqca: Don't modify firmware contents in-place (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Add entry for BCM43430B0 UART Bluetooth (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: fix potential GPF (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix memory leak (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fixed too many in-token issue for Mediatek Chip. (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support for Lite-On Mediatek Chip (Gopal Tiwari) [1990477] - Bluetooth: virtio_bt: add missing null pointer check on alloc_skb call return (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix failing to init controllers with operation firmware (Gopal Tiwari) [1990477] - Bluetooth: Add a new USB ID for RTL8822CE (Gopal Tiwari) [1990477] - Bluetooth: btusb: Revert Fix the autosuspend enable and disable (Gopal Tiwari) [1990477] - Bluetooth: Add support for virtio transport driver (Gopal Tiwari) [1990477] - Bluetooth: btusb: Enable quirk boolean flag for Mediatek Chip. (Gopal Tiwari) [1990477] - Bluetooth: btintel: Skip reading firmware file version while in bootloader mode (Gopal Tiwari) [1990477] - Bluetooth: btintel: Collect tlv based active firmware build info in FW mode (Gopal Tiwari) [1990477] - Bluetooth: btintel: Reorganized bootloader mode tlv checks in intel_version_tlv parsing (Gopal Tiwari) [1990477] - Bluetooth: btusb: Consolidate code for waiting firmware to boot (Gopal Tiwari) [1990477] - Bluetooth: btusb: Consolidate code for waiting firmware download (Gopal Tiwari) [1990477] - Bluetooth: btintel: Consolidate intel_version parsing (Gopal Tiwari) [1990477] - Bluetooth: btintel: Consolidate intel_version_tlv parsing (Gopal Tiwari) [1990477] - Bluetooth: btintel: Move operational checks after version check (Gopal Tiwari) [1990477] - Bluetooth: btintel: Check firmware version before download (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Mundane typo fix (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Add BCM4330 and BCM4334 compatibles (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Add device_may_wakeup support (Gopal Tiwari) [1990477] - Bluetooth: btintel: Fix offset calculation boot address parameter (Gopal Tiwari) [1990477] - Bluetooth: btusb: print firmware file name on error loading firmware (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Obtain and handle reset GPIO (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix incorrect type in assignment and uninitialized symbol (Gopal Tiwari) [1990477] - Bluetooth: btusb: support 0cb5:c547 Realtek 8822CE device (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Fixed issue during suspend (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix excessive stack usage (Gopal Tiwari) [1990477] - Bluetooth: btusb: remove set but not used variable in btusb_mtk_setup_firmware_79xx (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix typo and correct the log print (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add protocol support for MediaTek MT7921U USB devices (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fine-tune mt7663 mechanism. (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: check for SSR triggered flag while suspend (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Enable WBS for the specific Realtek devices (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Wait for SSR completion during suspend (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Add support for binding RTL8723DS with device tree (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support for GarfieldPeak controller (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Add null check in setup (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Enable central-peripheral role (Gopal Tiwari) [1990477] - Bluetooth: btusb: Remove duplicate newlines from logging (Gopal Tiwari) [1990477] - Bluetooth: btmtksdio: Fixed switch and case should be at the same indent (Gopal Tiwari) [1990477] - Revert "Bluetooth: btintel: Fix endianness issue for TLV version information" (Gopal Tiwari) [1990477] - Bluetooth: hci_bcm: Add support for ISO packets (Gopal Tiwari) [1990477] - Bluetooth: btusb: add shutdown function for wcn6855 (Gopal Tiwari) [1990477] - Bluetooth: hci_uart: Fix a race for write_work scheduling (Gopal Tiwari) [1990477] - Bluetooth: btqca: Add support to read FW build version for WCN3991 BTSoC (Gopal Tiwari) [1990477] - Bluetooth: btusb: Always fallback to alt 1 for WBS (Gopal Tiwari) [1990477] - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function (Gopal Tiwari) [1990477] - Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (Gopal Tiwari) [1990477] - Bluetooth: Skip eSCO 2M params when not supported (Gopal Tiwari) [1990477] - Bluetooth: fix indentation and alignment reported by checkpatch (Gopal Tiwari) [1990477] - Bluetooth: fix coccicheck warnings debugfs (Gopal Tiwari) [1990477] - Bluetooth: Add new HCI_QUIRK_NO_SUSPEND_NOTIFIER quirk (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Try harder to accept device not knowing options (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix handling fragmented length (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix memory leak on suspend and resume (Gopal Tiwari) [1990477] - Bluetooth: Put HCI device if inquiry procedure interrupts (Gopal Tiwari) [1990477] - Bluetooth: drop HCI device reference before return (Gopal Tiwari) [1990477] - Bluetooth: avoid u128_xor() on potentially misaligned inputs (Gopal Tiwari) [1990477] - Bluetooth: Fix initializing response id after clearing struct (Gopal Tiwari) [1990477] - Bluetooth: Cancel Inquiry before Create Connection (Gopal Tiwari) [1990477] - Bluetooth: Pause service discovery for suspend (Gopal Tiwari) [1990477] - Bluetooth: Remove hci_req_le_suspend_config (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Set missing suspend task bits (Gopal Tiwari) [1990477] - Bluetooth: Change MGMT security info CMD to be more generic (Gopal Tiwari) [1990477] - Bluetooth: Query LE tx power on startup (Gopal Tiwari) [1990477] - Bluetooth: Use intervals and tx power from mgmt cmds (Gopal Tiwari) [1990477] - Bluetooth: Break add adv into two mgmt commands (Gopal Tiwari) [1990477] - Bluetooth: Add helper to set adv data (Gopal Tiwari) [1990477] - Bluetooth: Add toggle to switch off interleave scan (Gopal Tiwari) [1990477] - Bluetooth: Refactor read default sys config for various types (Gopal Tiwari) [1990477] - Bluetooth: Handle active scan case (Gopal Tiwari) [1990477] - Bluetooth: Handle system suspend resume case (Gopal Tiwari) [1990477] - Bluetooth: Interleave with allowlist scan (Gopal Tiwari) [1990477] - Bluetooth: Fix attempting to set RPA timeout when unsupported (Gopal Tiwari) [1990477] - Bluetooth: Rename get_adv_instance_scan_rsp (Gopal Tiwari) [1990477] - Bluetooth: Fix not sending Set Extended Scan Response (Gopal Tiwari) [1990477] - Bluetooth: Fix for Bluetooth SIG test L2CAP/COS/CFD/BV-14-C (Gopal Tiwari) [1990477] - Bluetooth: sco: Fix crash when using BT_SNDMTU/BT_RCVMTU option (Gopal Tiwari) [1990477] - Bluetooth: Replace BT_DBG with bt_dev_dbg in HCI request (Gopal Tiwari) [1990477] - Bluetooth: consolidate error paths in hci_phy_link_complete_evt() (Gopal Tiwari) [1990477] - Bluetooth: Enforce key size of 16 bytes on FIPS level (Gopal Tiwari) [1990477] - Bluetooth: hidp: use correct wait queue when removing ctrl_wait (Gopal Tiwari) [1990477] - Bluetooth: Move force_bredr_smp debugfs into hci_debugfs_create_bredr (Gopal Tiwari) [1990477] - Bluetooth: Fix: LL PRivacy BLE device fails to connect (Gopal Tiwari) [1990477] - Bluetooth: Resume advertising after LE connection (Gopal Tiwari) [1990477] - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() (Gopal Tiwari) [1990477] - Bluetooth: Replace zero-length array with flexible-array member (Gopal Tiwari) [1990477] - Bluetooth: MGMT: Fix not checking if BT_HS is enabled (Gopal Tiwari) [1990477] - Bluetooth: Disable High Speed by default (Gopal Tiwari) [1990477] - Bluetooth: Fix update of own_addr_type if ll_privacy supported (Gopal Tiwari) [1990477] - Bluetooth: Fix auto-creation of hci_conn at Conn Complete event (Gopal Tiwari) [1990477] - Bluetooth: Set scan parameters for ADV Monitor (Gopal Tiwari) [1990477] - Bluetooth: Update Adv monitor count upon removal (Gopal Tiwari) [1990477] - net: bluetooth: delete duplicated words (Gopal Tiwari) [1990477] - Bluetooth: pause/resume advertising around suspend (Gopal Tiwari) [1990477] - Bluetooth: Emit controller suspend and resume events (Gopal Tiwari) [1990477] - Bluetooth: Add suspend reason for device disconnect (Gopal Tiwari) [1990477] - Bluetooth: Add mgmt suspend and resume events (Gopal Tiwari) [1990477] - Bluetooth: Set ext scan response only when it exists (Gopal Tiwari) [1990477] - Bluetooth: Only mark socket zapped after unlocking (Gopal Tiwari) [1990477] - Bluetooth: Add MGMT capability flags for tx power and ext advertising (Gopal Tiwari) [1990477] - Bluetooth: Report num supported adv instances for hw offloading (Gopal Tiwari) [1990477] - Bluetooth: sco: new getsockopt options BT_SNDMTU/BT_RCVMTU (Gopal Tiwari) [1990477] - Bluetooth: Re-order clearing suspend tasks (Gopal Tiwari) [1990477] - Bluetooth: Fix memory leak in read_adv_mon_features() (Gopal Tiwari) [1990477] - Bluetooth: Clear suspend tasks on unregister (Gopal Tiwari) [1990477] - Bluetooth: Remove CRYPTO_ALG_INTERNAL flag (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: use the proper scan params when conn is pending (Gopal Tiwari) [1990477] - Bluetooth: Enable controller RPA resolution using Experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Let controller creates RPA during le create conn (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type during le_conn (Gopal Tiwari) [1990477] - Bluetooth: Enable RPA Timeout (Gopal Tiwari) [1990477] - Bluetooth: Enable/Disable address resolution during le create conn (Gopal Tiwari) [1990477] - Bluetooth: Configure controller address resolution if available (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type correctly (Gopal Tiwari) [1990477] - Bluetooth: Update resolving list when updating whitelist (Gopal Tiwari) [1990477] - Bluetooth: Fix suspend notifier race (Gopal Tiwari) [1990477] - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier (Gopal Tiwari) [1990477] - Bluetooth: Add per-instance adv disable/remove (Gopal Tiwari) [1990477] - Replace HTTP links with HTTPS ones: BLUETOOTH SUBSYSTEM (Gopal Tiwari) [1990477] - Bluetooth: RFCOMM: Use fallthrough pseudo-keyword (Gopal Tiwari) [1990477] - Bluetooth: core: Use fallthrough pseudo-keyword (Gopal Tiwari) [1990477] - Bluetooth: Use whitelist for scan policy when suspending (Gopal Tiwari) [1990477] - Bluetooth: le_simult_central_peripheral experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Fix kernel oops triggered by hci_adv_monitors_clear() (Gopal Tiwari) [1990477] - Bluetooth: use configured default params for active scans (Gopal Tiwari) [1990477] - Bluetooth: Adding a configurable autoconnect timeout (Gopal Tiwari) [1990477] - Bluetooth: Don't restart scanning if paused (Gopal Tiwari) [1990477] - Bluetooth: add a mutex lock to avoid UAF in do_enale_set (Gopal Tiwari) [1990477] - Bluetooth: use configured params for ext adv (Gopal Tiwari) [1990477] - Bluetooth: Add hci_dev_lock to get/set device flags (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Use command complete on success for set system config (Gopal Tiwari) [1990477] - Bluetooth: Terminate the link if pairing is cancelled (Gopal Tiwari) [1990477] - Bluetooth: Update background scan and report device based on advertisement monitors (Gopal Tiwari) [1990477] - Bluetooth: Notify adv monitor removed event (Gopal Tiwari) [1990477] - Bluetooth: Notify adv monitor added event (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_REMOVE_ADV_MONITOR (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_ADD_ADV_PATTERNS_MONITOR (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_READ_ADV_MONITOR_FEATURES (Gopal Tiwari) [1990477] - Bluetooth: Add definitions for advertisement monitor features (Gopal Tiwari) [1990477] - Bluetooth: Add get/set device flags mgmt op (Gopal Tiwari) [1990477] - Bluetooth: Replace wakeable in hci_conn_params (Gopal Tiwari) [1990477] - Bluetooth: Replace wakeable list with flag (Gopal Tiwari) [1990477] - Bluetooth: Add bdaddr_list_with_flags for classic whitelist (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Add commands for runtime configuration (Gopal Tiwari) [1990477] - Bluetooth: implement read/set default system parameters mgmt (Gopal Tiwari) [1990477] - Bluetooth: mgmt: read/set system parameter definitions (Gopal Tiwari) [1990477] - Bluetooth: centralize default value initialization. (Gopal Tiwari) [1990477] - Bluetooth: Use only 8 bits for the HCI CMSG state flags (Gopal Tiwari) [1990477] - Bluetooth: Add support for BT_PKT_STATUS CMSG data for SCO connections (Gopal Tiwari) [1990477] - Bluetooth: Removing noisy dbg message (Gopal Tiwari) [1990477] - Bluetooth: Fix update of connection state in `hci_encrypt_cfm` (Gopal Tiwari) [1990477] - Bluetooth: Fix assuming EIR flags can result in SSP authentication (Gopal Tiwari) [1990477] - Bluetooth: Consolidate encryption handling in hci_encrypt_cfm (Gopal Tiwari) [1990477] - Bluetooth: Add SCO fallback for invalid LMP parameters error (Gopal Tiwari) [1990477] - Bluetooth: Fix for GAP/SEC/SEM/BI-10-C (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: add support for waiting disconnection resp (Gopal Tiwari) [1990477] - Bluetooth: Handle Inquiry Cancel error after Inquiry Complete (Gopal Tiwari) [1990477] - Bluetooth: Rename BT_SUSPEND_COMPLETE (Gopal Tiwari) [1990477] - Bluetooth: Introduce debug feature when dynamic debug is disabled (Gopal Tiwari) [1990477] - Bluetooth: Fix advertising handle is set to 0 (Gopal Tiwari) [1990477] - Bluetooth: Introduce HCI_MGMT_HDEV_OPTIONAL option (Gopal Tiwari) [1990477] - Bluetooth: Add support for experimental features configuration (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix errors during L2CAP_CREDIT_BASED_CONNECTION_REQ (0x17) (Gopal Tiwari) [1990477] - Bluetooth: Add MGMT_EV_PHY_CONFIGURATION_CHANGED to supported list (Gopal Tiwari) [1990477] - Bluetooth: use crypto_shash_tfm_digest() (Gopal Tiwari) [1990477] - Bluetooth: allow scatternet connections if supported. (Gopal Tiwari) [1990477] - Bluetooth: Enhanced Connection Complete event belongs to LL Privacy (Gopal Tiwari) [1990477] - Bluetooth: Enable LE Enhanced Connection Complete event. (Gopal Tiwari) [1990477] - Bluetooth: Use extra variable to make code more readable (Gopal Tiwari) [1990477] - Bluetooth: log advertisement packet length if it gets corrected (Gopal Tiwari) [1990477] - Bluetooth: Always request for user confirmation for Just Works (LE SC) (Gopal Tiwari) [1990477] - Bluetooth: Simplify / fix return values from tk_request (Gopal Tiwari) [1990477] - Bluetooth: debugfs option to unset MITM flag (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: replace zero-length array with flexible-array member (Gopal Tiwari) [1990477] - Bluetooth: Add support for reading security information (Gopal Tiwari) [1990477] - Bluetooth: Add support for Read Local Simple Pairing Options (Gopal Tiwari) [1990477] - Bluetooth: Add framework for Microsoft vendor extension (Gopal Tiwari) [1990477] - Bluetooth: Move debugfs configuration above the selftests (Gopal Tiwari) [1990477] - Bluetooth: fixing minor typo in comment (Gopal Tiwari) [1990477] - Bluetooth: Prioritize SCO traffic (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix handling LE modes by L2CAP_OPTIONS (Gopal Tiwari) [1990477] - Bluetooth: Always request for user confirmation for Just Works (Gopal Tiwari) [1990477] - Bluetooth: Add BT_MODE socket option (Gopal Tiwari) [1990477] - crypto: shash - remove shash_desc::flags (Gopal Tiwari) [1990477] - cifs: On cifs_reconnect, resolve the hostname again. (Ronnie Sahlberg) [2018046] - cifs: Handle witness client move notification (Ronnie Sahlberg) [2018046] - cifs: Send witness register messages to userspace daemon in echo task (Ronnie Sahlberg) [2018046] - cifs: Add witness information to debug data dump (Ronnie Sahlberg) [2018046] - cifs: Set witness notification handler for messages from userspace daemon (Ronnie Sahlberg) [2018046] - cifs: Send witness register and unregister commands to userspace daemon (Ronnie Sahlberg) [2018046] - cifs: Register generic netlink family (Ronnie Sahlberg) [2018046] - cifs: add witness mount option and data structs (Ronnie Sahlberg) [2018046] - cifs: Simplify reconnect code when dfs upcall is enabled (Ronnie Sahlberg) [2018046] - file: fix close_range() for unshare+cloexec (Pavel Reichl) [1950248] - scsi: lpfc: Update lpfc version to 14.0.0.3 (Dick Kennedy) [1989265] - scsi: lpfc: Allow fabric node recovery if recovery is in progress before devloss (Dick Kennedy) [1989265] - scsi: lpfc: Fix link down processing to address NULL pointer dereference (Dick Kennedy) [1989265] - scsi: lpfc: Allow PLOGI retry if previous PLOGI was aborted (Dick Kennedy) [1989265] - scsi: lpfc: Fix use-after-free in lpfc_unreg_rpi() routine (Dick Kennedy) [1989265] - scsi: lpfc: Correct sysfs reporting of loop support after SFP status change (Dick Kennedy) [1989265] - scsi: lpfc: Wait for successful restart of SLI3 adapter during host sg_reset (Dick Kennedy) [1989265] - scsi: lpfc: Revert LOG_TRACE_EVENT back to LOG_INIT prior to driver_resource_setup() (Dick Kennedy) [1989265] - scsi: lpfc: Fix memory overwrite during FC-GS I/O abort handling (Dick Kennedy) [1989265] - scsi: lpfc: Add support for optional PLDV handling (Dick Kennedy) [1989265] - scsi: lpfc: Return NULL rather than a plain 0 integer (Dick Kennedy) [1989265] - scsi: lpfc: Fix a function name in comments (Dick Kennedy) [1989265] - scsi: lpfc: Fix mailbox command failure during driver initialization (Dick Kennedy) [1989265] - scsi: lpfc: Fix gcc -Wstringop-overread warning, again (Dick Kennedy) [1989265] - scsi: lpfc: Use correct scnprintf() limit (Dick Kennedy) [1989265] - scsi: lpfc: Fix sprintf() overflow in lpfc_display_fpin_wwpn() (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.2 (Dick Kennedy) [1989265] - scsi: lpfc: Improve PBDE checks during SGL processing (Dick Kennedy) [1989265] - scsi: lpfc: Zero CGN stats only during initial driver load and stat reset (Dick Kennedy) [1989265] - scsi: lpfc: Fix I/O block after enabling managed congestion mode (Dick Kennedy) [1989265] - scsi: lpfc: Adjust bytes received vales during cmf timer interval (Dick Kennedy) [1989265] - scsi: fc: Add EDC ELS definition (Dick Kennedy) [1989265] - scsi: lpfc: Fix EEH support for NVMe I/O (Dick Kennedy) [1989265] - scsi: lpfc: Fix FCP I/O flush functionality for TMF routines (Dick Kennedy) [1989265] - scsi: lpfc: Fix NVMe I/O failover to non-optimized path (Dick Kennedy) [1989265] - scsi: lpfc: Don't remove ndlp on PRLI errors in P2P mode (Dick Kennedy) [1989265] - scsi: lpfc: Fix rediscovery of tape device after LIP (Dick Kennedy) [1989265] - scsi: lpfc: Fix hang on unload due to stuck fport node (Dick Kennedy) [1989265] - scsi: lpfc: Fix premature rpi release for unsolicited TPLS and LS_RJT (Dick Kennedy) [1989265] - scsi: lpfc: Don't release final kref on Fport node while ABTS outstanding (Dick Kennedy) [1989265] - scsi: lpfc: Fix list_add() corruption in lpfc_drain_txq() (Dick Kennedy) [1989265] - scsi: lpfc: Remove unneeded variable (Dick Kennedy) [1989265] - scsi: lpfc: Fix compilation errors on kernels with no CONFIG_DEBUG_FS (Dick Kennedy) [1989265] - scsi: lpfc: Fix CPU to/from endian warnings introduced by ELS processing (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 14.0.0.1 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.1 (Dick Kennedy) [1989265] - scsi: lpfc: Add bsg support for retrieving adapter cmf data (Dick Kennedy) [1989265] - scsi: lpfc: Add cmf_info sysfs entry (Dick Kennedy) [1989265] - scsi: lpfc: Add debugfs support for cm framework buffers (Dick Kennedy) [1989265] - scsi: lpfc: Add support for maintaining the cm statistics buffer (Dick Kennedy) [1989265] - scsi: lpfc: Add rx monitoring statistics (Dick Kennedy) [1989265] - scsi: lpfc: Add support for the CM framework (Dick Kennedy) [1989265] - scsi: lpfc: Add cmfsync WQE support (Dick Kennedy) [1989265] - scsi: lpfc: Add support for cm enablement buffer (Dick Kennedy) [1989265] - scsi: lpfc: Add cm statistics buffer support (Dick Kennedy) [1989265] - scsi: lpfc: Add EDC ELS support (Dick Kennedy) [1989265] - scsi: lpfc: Expand FPIN and RDF receive logging (Dick Kennedy) [1989265] - scsi: lpfc: Add MIB feature enablement support (Dick Kennedy) [1989265] - scsi: lpfc: Add SET_HOST_DATA mbox cmd to pass date/time info to firmware (Dick Kennedy) [1989265] - scsi: lpfc: Fix possible ABBA deadlock in nvmet_xri_aborted() (Dick Kennedy) [1989265] - scsi: lpfc: Remove redundant assignment to pointer pcmd (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 14.0.0.0 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.0 (Dick Kennedy) [1989265] - scsi: lpfc: Add 256 Gb link speed support (Dick Kennedy) [1989265] - scsi: lpfc: Revise Topology and RAS support checks for new adapters (Dick Kennedy) [1989265] - scsi: lpfc: Fix cq_id truncation in rq create (Dick Kennedy) [1989265] - scsi: lpfc: Add PCI ID support for LPe37000/LPe38000 series adapters (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 12.8.0.11 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 12.8.0.11 (Dick Kennedy) [1989265] - scsi: lpfc: Skip issuing ADISC when node is in NPR state (Dick Kennedy) [1989265] - scsi: lpfc: Skip reg_vpi when link is down for SLI3 in ADISC cmpl path (Dick Kennedy) [1989265] - scsi: lpfc: Call discovery state machine when handling PLOGI/ADISC completions (Dick Kennedy) [1989265] - scsi: lpfc: Delay unregistering from transport until GIDFT or ADISC completes (Dick Kennedy) [1989265] - scsi: lpfc: Enable adisc discovery after RSCN by default (Dick Kennedy) [1989265] - scsi: lpfc: Use PBDE feature enabled bit to determine PBDE support (Dick Kennedy) [1989265] - scsi: lpfc: Clear outstanding active mailbox during PCI function reset (Dick Kennedy) [1989265] - scsi: lpfc: Fix KASAN slab-out-of-bounds in lpfc_unreg_rpi() routine (Dick Kennedy) [1989265] - scsi: lpfc: Remove REG_LOGIN check requirement to issue an ELS RDF (Dick Kennedy) [1989265] - scsi: lpfc: Fix NULL ptr dereference with NPIV ports for RDF handling (Dick Kennedy) [1989265] - scsi: lpfc: Fix target reset handler from falsely returning FAILURE (Dick Kennedy) [1989265] - scsi: lpfc: Discovery state machine fixes for LOGO handling (Dick Kennedy) [1989265] - scsi: lpfc: Fix function description comments for vmid routines (Dick Kennedy) [1989265] - scsi: lpfc: Improve firmware download logging (Dick Kennedy) [1989265] - scsi: lpfc: Remove use of kmalloc() in trace event logging (Dick Kennedy) [1989265] - scsi: lpfc: Fix NVMe support reporting in log message (Dick Kennedy) [1989265] - scsi: lpfc: Fix build error in lpfc_scsi.c (Dick Kennedy) [1989265] - scsi: lpfc: Use list_move_tail() instead of list_del()/list_add_tail() (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Introduce VMID in I/O path (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add QFPA and VMID timeout check in worker thread (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Timeout implementation for VMID (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Append the VMID to the wqe before sending (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Implement CT commands for appid (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Functions to manage VMIDs (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Implement ELS commands for appid (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add support for VMID in mailbox command (Dick Kennedy) [1989265] - scsi: lpfc: vmid: VMID parameter initialization (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add datastructure for supporting VMID in lpfc (Dick Kennedy) [1989265] - redhat/config: Rename CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE to CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE (Waiman Long) [2018425] - kasan, kmemleak: reset tags when scanning block (Waiman Long) [2018425] - mm/kmemleak: rely on rcu for task stack scanning (Waiman Long) [2018425] - mm/kmemleak: silence KCSAN splats in checksum (Waiman Long) [2018425] - mm/kmemleak: turn kmemleak_lock and object->lock to raw_spinlock_t (Waiman Long) [2018425] - kmemleak: Do not corrupt the object_list during clean-up (Waiman Long) [2018425] - mm: kmemleak: use the memory pool for early allocations (Waiman Long) [2018425] - mm: kmemleak: simple memory allocation pool for kmemleak objects (Waiman Long) [2018425] - mm: kmemleak: make the tool tolerant to struct scan_area allocation failures (Waiman Long) [2018425] - kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K (Waiman Long) [2018425] - mm: kmemleak: disable early logging in case of error (Waiman Long) [2018425] - mm/kmemleak.c: fix unused-function warning (Waiman Long) [2018425] - kmemleak: powerpc: skip scanning holes in the .bss section (Waiman Long) [2018425] - mm: kmemleak: no need to check return value of debugfs_create functions (Waiman Long) [2018425]- powerpc/smp: Use existing L2 cache_map cpumask to find L3 cache siblings (Desnes A. Nunes do Rosario) [2013537] - powerpc/cacheinfo: Remove the redundant get_shared_cpu_map() (Desnes A. Nunes do Rosario) [2013537] - powerpc/cacheinfo: Lookup cache by dt node and thread-group id (Desnes A. Nunes do Rosario) [2013537] - Revert "thunderbolt: Hide authorized attribute if router does not support PCIe tunnels" (Torez Smith) [1969444] - thunderbolt: Add quirk for Intel Goshen Ridge DP credits (Torez Smith) [1969444] - thunderbolt: Update port credits after bonding is enabled/disabled (Torez Smith) [1969444] - thunderbolt: Wait for the lanes to actually bond (Torez Smith) [1969444] - thunderbolt: Read router preferred credit allocation information (Torez Smith) [1969444] - thunderbolt: Make tb_port_type() take const parameter (Torez Smith) [1969444] - thunderbolt: Move nfc_credits field to struct tb_path_hop (Torez Smith) [1969444] - thunderbolt: Align USB4 router wakes configuration with the CM guide (Torez Smith) [1969444] - thunderbolt: Add wake from DisplayPort (Torez Smith) [1969444] - thunderbolt: Use generic tb_nvm_[read|write]_data() for Thunderbolt 2/3 devices (Torez Smith) [1969444] - thunderbolt: Split NVM read/write generic functions out from usb4.c (Torez Smith) [1969444] - thunderbolt: Add self-authenticate support for new dock (Torez Smith) [1969444] - thunderbolt: usb4: Fix NVM read buffer bounds and offset issue (Torez Smith) [1969444] - thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue (Torez Smith) [1969444] - thunderbolt: Hide authorized attribute if router does not support PCIe tunnels (Torez Smith) [1969444] - x86/mce: Avoid infinite loop for copy from user recovery (Prarit Bhargava) [1999550] - x86/mce: Rename kill_it to kill_current_task (Prarit Bhargava) [1999550] - x86/mce: Recover from poison found while copying from user space (Prarit Bhargava) [1999550] - x86/mce: Delay clearing IA32_MCG_STATUS to the end of do_machine_check() (Prarit Bhargava) [1999550] - x86/mce: Send #MC singal from task work (Prarit Bhargava) [1999550] - redhat/config: Enable Nitro Enclaves on aarch64 (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Add fixes for checkpatch match open parenthesis reports (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Update copyright statement to include 2021 (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Add fix for the kernel-doc report (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Enable Arm64 support (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Set Bus Master for the NE PCI device (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Fixup type and simplify logic of the poll mask setup (Vitaly Kuznetsov) [2001581] - mptcp: Make mptcp_pm_nl_mp_prio_send_ack() static (Davide Caratti) [2020198] - mptcp: fix possible stall on recvmsg() (Davide Caratti) [2020198] - mptcp: don't clear MPTCP_DATA_READY in sk_wait_event() (Davide Caratti) [2020198] - net: introduce and use lock_sock_fast_nested() (Davide Caratti) [2020198] - net: add annotation for sock_{lock,unlock}_fast (Davide Caratti) [2020198] - mptcp: allow changing the 'backup' bit when no sockets are open (Davide Caratti) [2020198] - mptcp: don't return sockets in foreign netns (Davide Caratti) [2020198] - mptcp: ensure tx skbs always have the MPTCP ext (Davide Caratti) [2020198] - mptcp: full fully established support after ADD_ADDR (Davide Caratti) [2020198] - redhat/configs: Move Hyper-V configs to 'generic' (Vitaly Kuznetsov) [1949614] - redhat/configs: enable CONFIG_INPUT_KEYBOARD on Aarch64 (Vitaly Kuznetsov) [1949614] - efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN (Vitaly Kuznetsov) [1949614] - efi/libstub: arm64: Double check image alignment at entry (Vitaly Kuznetsov) [1949614] - efi/arm64: Update debug prints to reflect other entropy sources (Vitaly Kuznetsov) [1949614] - efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL failure (Vitaly Kuznetsov) [1949614] - Drivers: hv: Enable Hyper-V code to be built on ARM64 (Vitaly Kuznetsov) [1949614] - x86/Kconfig: Add new X86_HV_CALLBACK_VECTOR config symbol (Vitaly Kuznetsov) [1949614] - arm64: efi: Export screen_info (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Initialize hypervisor on boot (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Add panic handler (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Add Hyper-V hypercall and register access utilities (Vitaly Kuznetsov) [1949614] - arm64: add arch/arm64/Kbuild (Vitaly Kuznetsov) [1949614] - PCI: hv: Turn on the host bridge probing on ARM64 (Vitaly Kuznetsov) [1949614] - PCI: hv: Set up MSI domain at bridge probing time (Vitaly Kuznetsov) [1949614] - PCI: hv: Set ->domain_nr of pci_host_bridge at probing time (Vitaly Kuznetsov) [1949614] - PCI: hv: Generify PCI probing (Vitaly Kuznetsov) [1949614] - arm64: PCI: Support root bridge preparation for Hyper-V (Vitaly Kuznetsov) [1949614] - arm64: PCI: Restructure pcibios_root_bridge_prepare() (Vitaly Kuznetsov) [1949614] - PCI: Support populating MSI domains of root buses via bridges (Vitaly Kuznetsov) [1949614] - PCI: Introduce domain_nr in pci_host_bridge (Vitaly Kuznetsov) [1949614] - drivers: hv: Decouple Hyper-V clock/timer code from VMbus drivers (Vitaly Kuznetsov) [1949614] - Drivers: hv: Move Hyper-V misc functionality to arch-neutral code (Vitaly Kuznetsov) [1949614] - x86/hyperv: handling hypercall page setup for root (Vitaly Kuznetsov) [1949614] - Drivers: hv: Add arch independent default functions for some Hyper-V handlers (Vitaly Kuznetsov) [1949614] - Drivers: hv: Make portions of Hyper-V init code be arch neutral (Vitaly Kuznetsov) [1949614] - asm-generic/hyperv: Add missing #include of nmi.h (Vitaly Kuznetsov) [1949614] - PCI: hv: Support for create interrupt v3 (Vitaly Kuznetsov) [1949614] - Drivers: hv: Move Hyper-V extended capability check to arch neutral code (Vitaly Kuznetsov) [1949614] - clocksource/drivers/hyper-v: Re-enable VDSO_CLOCKMODE_HVCLOCK on X86 (Vitaly Kuznetsov) [1949614] - clocksource/drivers/hyper-v: Handle vDSO differences inline (Vitaly Kuznetsov) [1949614] - arm64: smccc: Add support for SMCCCv1.2 extended input/output registers (Vitaly Kuznetsov) [1949614] - smccc: Define vendor hyp owned service call region (Vitaly Kuznetsov) [1949614] - scsi: smartpqi: Update version to 2.1.12-055 (Don Brace) [2018317] - scsi: smartpqi: Add 3252-8i PCI id (Don Brace) [2018317] - scsi: smartpqi: Fix duplicate device nodes for tape changers (Don Brace) [2018317] - scsi: smartpqi: Fix boot failure during LUN rebuild (Don Brace) [2018317] - scsi: smartpqi: Add extended report physical LUNs (Don Brace) [2018317] - scsi: smartpqi: Avoid failing I/Os for offline devices (Don Brace) [2018317] - scsi: smartpqi: Add TEST UNIT READY check for SANITIZE operation (Don Brace) [2018317] - scsi: smartpqi: Update LUN reset handler (Don Brace) [2018317] - scsi: smartpqi: Capture controller reason codes (Don Brace) [2018317] - scsi: smartpqi: Add controller handshake during kdump (Don Brace) [2018317] - scsi: smartpqi: Update device removal management (Don Brace) [2018317] - KVM: PPC: Tick accounting should defer vtime accounting 'til after IRQ handling (Laurent Vivier) [2009312] - vhost_net: fix OoB on sendmsg() failure. (Paolo Abeni) [1922828] - scsi: qla2xxx: Update version to 10.02.06.200-k (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix returnvar.cocci warnings (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe session down detection (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe retry (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix hang on NVMe command timeouts (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe | FCP personality change (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Do secure PLOGI when auth app is present (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add N2N support for EDIF (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix hang during NVMe session tear down (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix EDIF enable flag (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Reject AUTH ELS on session down (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix stale session (Nilesh Javali) [1983874] - scsi: qla2xxx: Update version to 10.02.06.100-k (Nilesh Javali) [1983874] - scsi: qla2xxx: Sync queue idx with queue_pair_map idx (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support kdump kernel for NVMe BFS (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support kdump kernel (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NPIV create erroneous error (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix unsafe removal from linked list (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix port type info (Nilesh Javali) [1983874] - scsi: qla2xxx: Add debug print of 64G link speed (Nilesh Javali) [1983874] - scsi: qla2xxx: Show OS name and version in FDMI-1 (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support FCP2 Target (Nilesh Javali) [1983874] - scsi: qla2xxx: Adjust request/response queue size for 28xx (Nilesh Javali) [1983874] - scsi: qla2xxx: Add host attribute to trigger MPI hang (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant initialization of variable num_cnt (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix use after free in debug code (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix spelling mistakes "allloc" -> "alloc" (Nilesh Javali) [1983874] - scsi: qla2xxx: Update version to 10.02.00.107-k (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Increment command and completion counts (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add encryption to I/O path (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add doorbell notification for app (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add detection of secure device (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add authentication pass + fail bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add key update (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add extraction of auth_els from the wire (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add send, receive, and accept for auth_els (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add getfcinfo and statistic bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add start + stop bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove unused variable 'status' (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant continue statement in a for-loop (Nilesh Javali) [1983874] - scsi: qla2xxx: Add heartbeat check (Nilesh Javali) [1983874] - scsi: qla2xxx: Use list_move_tail() instead of list_del()/list_add_tail() (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove duplicate declarations (Nilesh Javali) [1983874] - scsi: qla2xxx: Log PCI address in qla_nvme_unregister_remote_port() (Nilesh Javali) [1983874] - scsi: target: qla2xxx: Wait for stop_phase1 at WWN removal (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant assignment to rval (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix error return code in qla82xx_write_flash_dword() (Nilesh Javali) [1983874] - scsi: qla2xxx: Prevent PRLI in target mode (Nilesh Javali) [1983874] - scsi: qla2xxx: Reuse existing error handling path (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove unneeded if-null-free check (Nilesh Javali) [1983874] - thermal/drivers/int340x: Do not set a wrong tcc offset on resume (David Arcari) [1997757] - thermal: core: Add new event for sending keep alive notifications (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Fix tcc setting (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Fix warning for return value (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Add PCI MMIO based thermal driver (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Split enumeration and processing part (David Arcari) [1997757] - thermal/drivers/int340x: processor_thermal: Export additional attributes (David Arcari) [1997757] - thermal/drivers/int340x: processor_thermal: Export mailbox interface (David Arcari) [1997757] - thermal/drivers/intel: Initialize RW trip to THERMAL_TEMP_INVALID (David Arcari) [1997757] - thermal: int340x: Fix unexpected shutdown at critical temperature (David Arcari) [1997757] - thermal: int340x: Support Alder Lake (David Arcari) [1997757] - thermal: int340x: processor_thermal: Correct workload type name (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add mailbox driver (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add RFIM driver (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add AlderLake PCI device id (David Arcari) [1997757] - thermal: int340x: processor_thermal: Refactor MMIO interface (David Arcari) [1997757] - thermal: int340x: Add keep alive response method (David Arcari) [1997757] - thermal: int340x: Provide notification for OEM variable change (David Arcari) [1997757] - treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1997757] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (David Arcari) [1997757] - intel_idle: Adjust the SKX C6 parameters if PC6 is disabled (David Arcari) [2003731] - intel_idle: update ICX C6 data (David Arcari) [2003731] - nbd: provide a way for userspace processes to identify device backends (Ming Lei) [1997338] - Revert "block, bfq: honor already-setup queue merges" (Ming Lei) [1997338] - blk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd (Ming Lei) [1997338] - blkcg: fix memory leak in blk_iolatency_init (Ming Lei) [1997338] - blk-mq: avoid to iterate over stale request (Ming Lei) [1997338] - blk-mq: allow 4x BLK_MAX_REQUEST_COUNT at blk_plug for multiple_queues (Ming Lei) [1997338] - block, bfq: honor already-setup queue merges (Ming Lei) [1997338] - block/mq-deadline: Move dd_queued() to fix defined but not used warning (Ming Lei) [1997338] - cryptoloop: add a deprecation warning (Ming Lei) [1997338] - Revert "block/mq-deadline: Prioritize high-priority requests" (Ming Lei) [1997338] - mq-deadline: Fix request accounting (Ming Lei) [1997338] - nbd: Aovid double completion of a request (Ming Lei) [1997338] - blk-mq: clear active_queues before clearing BLK_MQ_F_TAG_QUEUE_SHARED (Ming Lei) [1997338] - Revert "block/mq-deadline: Add cgroup support" (Ming Lei) [1997338] - kyber: make trace_block_rq call consistent with documentation (Ming Lei) [1997338] - blk-iolatency: error out if blk_get_queue() failed in iolatency_set_limit() (Ming Lei) [1997338] - blk-mq-sched: Fix blk_mq_sched_alloc_tags() error handling (Ming Lei) [1997338] - loop: reintroduce global lock for safe loop_validate_file() traversal (Ming Lei) [1997338] - blk-cgroup: prevent rcu_sched detected stalls warnings while iterating blkgs (Ming Lei) [1997338] - block: fix the problem of io_ticks becoming smaller (Ming Lei) [1997338] - block: return errors from blk_execute_rq() (Ming Lei) [1997338] - block: support polling through blk_execute_rq (Ming Lei) [1997338] - loop: rewrite loop_exit using idr_for_each_entry (Ming Lei) [1997338] - loop: split loop_lookup (Ming Lei) [1997338] - loop: don't allow deleting an unspecified loop device (Ming Lei) [1997338] - loop: move loop_ctl_mutex locking into loop_add (Ming Lei) [1997338] - loop: split loop_control_ioctl (Ming Lei) [1997338] - loop: don't call loop_lookup before adding a loop device (Ming Lei) [1997338] - loop: remove the l argument to loop_add (Ming Lei) [1997338] - loop: reduce loop_ctl_mutex coverage in loop_exit (Ming Lei) [1997338] - loop: reorder loop_exit (Ming Lei) [1997338] - loop: Fix missing discard support when using LOOP_CONFIGURE (Ming Lei) [1997338] - block: export blk_next_bio() (Ming Lei) [1997338] - rsxx: Use struct_size() in vmalloc() (Ming Lei) [1997338] - block/mq-deadline: Remove a WARN_ON_ONCE() call (Ming Lei) [1997338] - blk: Fix lock inversion between ioc lock and bfqd lock (Ming Lei) [1997338] - bfq: Remove merged request already in bfq_requests_merged() (Ming Lei) [1997338] - block: fix trace completion for chained bio (Ming Lei) [1997338] - block/partitions/msdos: Fix typo inidicator -> indicator (Ming Lei) [1997338] - block, bfq: reset waker pointer with shared queues (Ming Lei) [1997338] - block, bfq: check waker only for queues with no in-flight I/O (Ming Lei) [1997338] - block, bfq: avoid delayed merge of async queues (Ming Lei) [1997338] - block, bfq: boost throughput by extending queue-merging times (Ming Lei) [1997338] - block, bfq: consider also creation time in delayed stable merge (Ming Lei) [1997338] - block, bfq: fix delayed stable merge check (Ming Lei) [1997338] - block, bfq: let also stably merged queues enjoy weight raising (Ming Lei) [1997338] - blk-wbt: make sure throttle is enabled properly (Ming Lei) [1997338] - blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled() (Ming Lei) [1997338] - block/mq-deadline: Prioritize high-priority requests (Ming Lei) [1997338] - block/mq-deadline: Add cgroup support (Ming Lei) [1997338] - block/mq-deadline: Track I/O statistics (Ming Lei) [1997338] - block/mq-deadline: Add I/O priority support (Ming Lei) [1997338] - block/mq-deadline: Micro-optimize the batching algorithm (Ming Lei) [1997338] - block/mq-deadline: Reserve 25 of scheduler tags for synchronous requests (Ming Lei) [1997338] - block/mq-deadline: Improve the sysfs show and store macros (Ming Lei) [1997338] - block/mq-deadline: Improve compile-time argument checking (Ming Lei) [1997338] - block: mq-deadline: Fix queue restart handling (Ming Lei) [1997338] - block/mq-deadline: Rename dd_init_queue() and dd_exit_queue() (Ming Lei) [1997338] - block/mq-deadline: Remove two local variables (Ming Lei) [1997338] - block/mq-deadline: Add two lockdep_assert_held() statements (Ming Lei) [1997338] - block/mq-deadline: Add several comments (Ming Lei) [1997338] - block: Introduce the ioprio rq-qos policy (Ming Lei) [1997338] - block/blk-rq-qos: Move a function from a header file into a C file (Ming Lei) [1997338] - block/blk-cgroup: Swap the blk_throtl_init() and blk_iolatency_init() calls (Ming Lei) [1997338] - blkcg: fix memleak for iolatency (Ming Lei) [1997338] - blk-wbt: remove outdated comment (Ming Lei) [1997338] - block: Remove unnecessary elevator operation checks (Ming Lei) [1997338] - blk-mq: factor out a blk_mq_alloc_sq_tag_set helper (Ming Lei) [1997338] - block: Update blk_update_request() documentation (Ming Lei) [1997338] - blkcg: drop CLONE_IO check in blkcg_can_attach() (Ming Lei) [1997338] - aoe: remove unnecessary mutex_init() (Ming Lei) [1997338] - block: loop: fix deadlock between open and remove (Ming Lei) [1997338] - loop: scale loop device by introducing per device lock (Ming Lei) [1997338] - block/partitions/efi.c: Fix the efi_partition() kernel-doc header (Ming Lei) [1997338] - nbd: share nbd_put and return by goto put_nbd (Ming Lei) [1997338] - nbd: Fix NULL pointer in flush_workqueue (Ming Lei) [1997338] - blkdev.h: remove unused codes blk_account_rq (Ming Lei) [1997338] - block, bfq: avoid circular stable merges (Ming Lei) [1997338] - block: uapi: fix comment about block device ioctl (Ming Lei) [1997338] - block: reexpand iov_iter after read/write (Ming Lei) [1997338] - bfq/mq-deadline: remove redundant check for passthrough request (Ming Lei) [1997338] - blk-mq: bypass IO scheduler's limit_depth for passthrough request (Ming Lei) [1997338] - block: Fix sys_ioprio_set(.which=IOPRIO_WHO_PGRP) task iteration (Ming Lei) [1997338] - blk-mq: Always use blk_mq_is_sbitmap_shared (Ming Lei) [1997338] - block: add sysfs entry for virt boundary mask (Ming Lei) [1997338] - block, bfq: merge bursts of newly-created queues (Ming Lei) [1997338] - block, bfq: keep shared queues out of the waker mechanism (Ming Lei) [1997338] - block, bfq: fix weight-raising resume with !low_latency (Ming Lei) [1997338] - block, bfq: make shared queues inherit wakers (Ming Lei) [1997338] - block, bfq: put reqs of waker and woken in dispatch list (Ming Lei) [1997338] - block, bfq: always inject I/O of queues blocked by wakers (Ming Lei) [1997338] - blk-mq: Sentence reconstruct for better readability (Ming Lei) [1997338] - block: update a few comments in uapi/linux/blkpg.h (Ming Lei) [1997338] - block: don't ignore REQ_NOWAIT for direct IO (Ming Lei) [1997338] - block: clear GD_NEED_PART_SCAN later in bdev_disk_changed (Ming Lei) [1997338] - block: Discard page cache of zone reset target range (Ming Lei) [1997338] - block: Suppress uevent for hidden device when removed (Ming Lei) [1997338] - block: rsxx: fix error return code of rsxx_pci_probe() (Ming Lei) [1997338] - block: Fix REQ_OP_ZONE_RESET_ALL handling (Ming Lei) [1997338] - blk-cgroup: Fix the recursive blkg rwstat (Ming Lei) [1997338] - rsxx: Return -EFAULT if copy_to_user() fails (Ming Lei) [1997338] - block/bfq: update comments and default value in docs for fifo_expire (Ming Lei) [1997338] - block: Drop leftover references to RQF_SORTED (Ming Lei) [1997338] - blktrace: fix documentation for blk_fill_rw() (Ming Lei) [1997338] - blktrace: remove debugfs file dentries from struct blk_trace (Ming Lei) [1997338] - block: get rid of the trace rq insert wrapper (Ming Lei) [1997338] - blktrace: fix blk_rq_merge documentation (Ming Lei) [1997338] - blktrace: fix blk_rq_issue documentation (Ming Lei) [1997338] - blktrace: add blk_fill_rwbs documentation comment (Ming Lei) [1997338] - block: remove superfluous param in blk_fill_rwbs() (Ming Lei) [1997338] - block: Remove unused blk_pm_*() function definitions (Ming Lei) [1997338] - blk-mq: Use llist_head for blk_cpu_done (Ming Lei) [1997338] - blk-mq: Always complete remote completions requests in softirq (Ming Lei) [1997338] - block: use bi_max_vecs to find the bvec pool (Ming Lei) [1997338] - md/raid10: remove dead code in reshape_request (Ming Lei) [1997338] - block: remove the 1 and 4 vec bvec_slabs entries (Ming Lei) [1997338] - block: streamline bvec_alloc (Ming Lei) [1997338] - block: factor out a bvec_alloc_gfp helper (Ming Lei) [1997338] - block: move struct biovec_slab to bio.c (Ming Lei) [1997338] - block: reuse BIO_INLINE_VECS for integrity bvecs (Ming Lei) [1997338] - block: move three bvec helpers declaration into private helper (Ming Lei) [1997338] - blk-cgroup: Remove obsolete macro (Ming Lei) [1997338] - block: use an on-stack bio in blkdev_issue_flush (Ming Lei) [1997338] - blkcg: delete redundant get/put operations for queue (Ming Lei) [1997338] - block: unexport truncate_bdev_range (Ming Lei) [1997338] - blk: wbt: remove unused parameter from wbt_should_throttle (Ming Lei) [1997338] - bdev: Do not return EBUSY if bdev discard races with write (Ming Lei) [1997338] - bfq: don't duplicate code for different paths (Ming Lei) [1997338] - block: remove the request_queue to argument request based tracepoints (Ming Lei) [1997338] - virtio_net: disable cb aggressively (Stefan Hajnoczi) [1965914] - virtio: fix up virtio_disable_cb (Stefan Hajnoczi) [1965914] - virtio_net: move txq wakeups under tx q lock (Stefan Hajnoczi) [1965914] - virtio_net: move tx vq operation under tx queue lock (Stefan Hajnoczi) [1965914] - virtio_net: bulk free tx skbs (Stefan Hajnoczi) [1965914] - [s390] s390/qdio: propagate error when cancelling a ccw fails (Mete Durlu) [1984989] - [s390] s390/qdio: improve roll-back after error on ESTABLISH ccw (Mete Durlu) [1984989] - [s390] s390/qdio: cancel the ESTABLISH ccw after timeout (Mete Durlu) [1984989] - [s390] scsi: zfcp: Lift Request Queue tasklet & timer from qdio (Mete Durlu) [1984989] - [s390] scsi: zfcp: Move the position of put_device() (Mete Durlu) [1984989] - [s390] scsi: zfcp: Clean up sysfs code for SFP diagnostics (Mete Durlu) [1984989] - [s390] scsi: zfcp: Fix sysfs roll-back on error in zfcp_adapter_enqueue() (Mete Durlu) [1984989] - [s390] scsi: zfcp: Fix indentation coding style issue (Mete Durlu) [1984989] - [s390] scsi: zfcp: Remove unneeded INIT_LIST_HEAD() for FSF requests (Mete Durlu) [1984989] - x86/fpu/xstate: Clear xstate header in copy_xstate_to_uabi_buf() again (Prarit Bhargava) [1981448] - x86/fpu/signal: Let xrstor handle the features to init (Prarit Bhargava) [1981448] - x86/fpu/signal: Handle #PF in the direct restore path (Prarit Bhargava) [1981448] - x86/fpu: Return proper error codes from user access functions (Prarit Bhargava) [1981448] - x86/fpu/signal: Split out the direct restore code (Prarit Bhargava) [1981448] - x86/fpu/signal: Sanitize copy_user_to_fpregs_zeroing() (Prarit Bhargava) [1981448] - x86/fpu/signal: Sanitize the xstate check on sigframe (Prarit Bhargava) [1981448] - x86/fpu/signal: Remove the legacy alignment check (Prarit Bhargava) [1981448] - x86/fpu/signal: Move initial checks into fpu__restore_sig() (Prarit Bhargava) [1981448] - x86/fpu: Mark init_fpstate __ro_after_init (Prarit Bhargava) [1981448] - x86/pkru: Remove xstate fiddling from write_pkru() (Prarit Bhargava) [1981448] - x86/fpu: Don't store PKRU in xstate in fpu_reset_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Remove PKRU handling from switch_fpu_finish() (Prarit Bhargava) [1981448] - x86/fpu: Mask PKRU from kernel XRSTOR[S] operations (Prarit Bhargava) [1981448] - x86/fpu: Hook up PKRU into ptrace() (Prarit Bhargava) [1981448] - x86/fpu: Add PKRU storage outside of task XSAVE buffer (Prarit Bhargava) [1981448] - x86/fpu: Dont restore PKRU in fpregs_restore_userspace() (Prarit Bhargava) [1981448] - x86/fpu: Rename xfeatures_mask_user() to xfeatures_mask_uabi() (Prarit Bhargava) [1981448] - x86/fpu: Move FXSAVE_LEAK quirk info __copy_kernel_to_fpregs() (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_kernel_to_fpregs() to restore_fpregs_from_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Rename __fpregs_load_activate() to fpregs_restore_userregs() (Prarit Bhargava) [1981448] - x86/fpu: Clean up the fpu__clear() variants (Prarit Bhargava) [1981448] - x86/fpu: Rename fpu__clear_all() to fpu_flush_thread() (Prarit Bhargava) [1981448] - x86/fpu: Use pkru_write_default() in copy_init_fpstate_to_fpregs() (Prarit Bhargava) [1981448] - x86/cpu: Write the default PKRU value when enabling PKE (Prarit Bhargava) [1981448] - x86/pkru: Provide pkru_write_default() (Prarit Bhargava) [1981448] - x86/pkru: Provide pkru_get_init_value() (Prarit Bhargava) [1981448] - x86/cpu: Sanitize X86_FEATURE_OSPKE (Prarit Bhargava) [1981448] - x86/pkeys: Move read_pkru() and write_pkru() (Prarit Bhargava) [1981448] - x86/fpu: Rename and sanitize fpu__save/copy() (Prarit Bhargava) [1981448] - x86/fpu/xstate: Sanitize handling of independent features (Prarit Bhargava) [1981448] - x86/fpu: Rename "dynamic" XSTATEs to "independent" (Prarit Bhargava) [1981448] - x86/fpu: Rename initstate copy functions (Prarit Bhargava) [1981448] - x86/fpu: Get rid of the FNSAVE optimization (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_fpregs_to_fpstate() to save_fpregs_to_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Deduplicate copy_uabi_from_user/kernel_to_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Rename xstate copy functions which are related to UABI (Prarit Bhargava) [1981448] - x86/fpu: Rename fregs-related copy functions (Prarit Bhargava) [1981448] - x86/math-emu: Rename frstor() (Prarit Bhargava) [1981448] - x86/fpu: Rename fxregs-related copy functions (Prarit Bhargava) [1981448] - x86/fpu: Get rid of CONFIG_AS_FXSAVEQ (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_user_to_xregs() and copy_xregs_to_user() (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_xregs_to_kernel() and copy_kernel_to_xregs() (Prarit Bhargava) [1981448] - x86/fpu: Get rid of copy_supervisor_to_kernel() (Prarit Bhargava) [1981448] - x86/fpu: Cleanup arch_set_user_pkey_access() (Prarit Bhargava) [1981448] - x86/kvm: Avoid looking up PKRU in XSAVE buffer (Prarit Bhargava) [1981448] - x86/fpu: Get rid of using_compacted_format() (Prarit Bhargava) [1981448] - x86/fpu: Move fpu__write_begin() to regset (Prarit Bhargava) [1981448] - x86/fpu/regset: Move fpu__read_begin() into regset (Prarit Bhargava) [1981448] - x86/fpu: Remove fpstate_sanitize_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Use copy_xstate_to_uabi_buf() in fpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Use copy_xstate_to_uabi_buf() in xfpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Make copy_xstate_to_kernel() usable for [x]fpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Clean up fpregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Fail ptrace() requests that try to set invalid MXCSR values (Prarit Bhargava) [1981448] - x86/fpu: Rewrite xfpregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Simplify PTRACE_GETREGS code (Prarit Bhargava) [1981448] - x86/fpu: Reject invalid MXCSR values in copy_kernel_to_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Sanitize xstateregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Move inlines where they belong (Prarit Bhargava) [1981448] - x86/fpu: Get rid of fpu__get_supported_xfeatures_mask() (Prarit Bhargava) [1981448] - x86/fpu: Make xfeatures_mask_all __ro_after_init (Prarit Bhargava) [1981448] - x86/fpu: Mark various FPU state variables __ro_after_init (Prarit Bhargava) [1981448] - x86/pkeys: Revert a5eff7259790 ("x86/pkeys: Add PKRU value to init_fpstate") (Prarit Bhargava) [1981448] - x86/fpu: Fix copy_xstate_to_kernel() gap handling (Prarit Bhargava) [1981448] - x86/fpu: Limit xstate copy size in xstateregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Make init_fpstate correct with optimized XSAVE (Prarit Bhargava) [1981448] - x86/fpu: Preserve supervisor states in sanitize_restored_user_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Reset state for all signal restore failures (Prarit Bhargava) [1981448] - x86/signal: Introduce helpers to get the maximum signal frame size (Prarit Bhargava) [1981448] - x86/fpu: Fix various typos in comments (Prarit Bhargava) [1981448] - x86/fpu/xstate: Use sizeof() instead of a constant (Prarit Bhargava) [1981448] - x86/fpu: Handle FPU-related and clearcpuid command line arguments earlier (Prarit Bhargava) [1981448] - x86/fpu: Allow multiple bits in clearcpuid= parameter (Prarit Bhargava) [1981448] - x86: switch to ->regset_get() (Prarit Bhargava) [1981448] - regset: new method and helpers for it (Prarit Bhargava) [1981448] - copy_regset_to_user(): do all copyout at once. (Prarit Bhargava) [1981448] - introduction of regset ->get() wrappers, switching ELF coredumps to those (Prarit Bhargava) [1981448] - user_regset_copyout_zero(): use clear_user() (Prarit Bhargava) [1981448] - x86: kill dump_fpu() (Prarit Bhargava) [1981448] - x86: copy_fpstate_to_sigframe(): have fpregs_soft_get() use kernel buffer (Prarit Bhargava) [1981448] - x86/pkeys: Add check for pkey "overflow" (Prarit Bhargava) [1981448] - x86/fpu: Deactivate FPU state after failure during state load (Prarit Bhargava) [1981448] - x86/fpu: Use sizeof_field() macro (Prarit Bhargava) [1981448] - x86/fpu: Inline fpu__xstate_clear_all_cpu_caps() (Prarit Bhargava) [1981448] - x86/fpu: Make 'no387' and 'nofxsr' command line options useful (Prarit Bhargava) [1981448] - x86/fpu: Remove the fpu__save() export (Prarit Bhargava) [1981448] - x86/process: Add AVX-512 usage elapsed time to /proc/pid/arch_status (Prarit Bhargava) [1981448] - x86/fpu: Add SPDX license identifier - Makefile/Kconfig (Prarit Bhargava) [1981448] - x86/fpu: Add SPDX license identifier for missed files (Prarit Bhargava) [1981448] - x86/fpu: Fix __user annotations (Prarit Bhargava) [1981448] - x86/fpu: Move init_xstate_size() to __init section (Prarit Bhargava) [1981448] - x86/fpu: Update comment for __raw_xsave_addr() (Prarit Bhargava) [1981448] - scsi: qla2xxx: Fix kernel crash when accessing port_speed sysfs file (Nilesh Javali) [1981433] - scsi: core: Put LLD module refcnt after SCSI device is released (Ming Lei) [1996509] - scsi: iscsi: Fix set_param() handling (Chris Leech) [2011470] - scsi: iscsi: Fix iscsi_task use after free (Chris Leech) [2011470] - scsi: iscsi: Adjust iface sysfs attr detection (Chris Leech) [2011470] - scsi: iscsi: Fix iface sysfs attr detection (Chris Leech) [2011470] - scsi: iscsi: Move pool freeing (Chris Leech) [2011470] - scsi: iscsi: Hold task ref during TMF timeout handling (Chris Leech) [2011470] - scsi: iscsi: Flush block work before unblock (Chris Leech) [2011470] - scsi: iscsi: Fix completion check during abort races (Chris Leech) [2011470] - scsi: iscsi: Fix shost->max_id use (Chris Leech) [2011470] - scsi: iscsi: Fix conn use after free during resets (Chris Leech) [2011470] - scsi: iscsi: Get ref to conn during reset handling (Chris Leech) [2011470] - scsi: iscsi: Have abort handler get ref to conn (Chris Leech) [2011470] - scsi: iscsi: Add iscsi_cls_conn refcount helpers (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Start socket shutdown during conn stop (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Set no linger (Chris Leech) [2011470] - scsi: iscsi: Fix in-kernel conn failure handling (Chris Leech) [2011470] - scsi: iscsi: Rel ref after iscsi_lookup_endpoint() (Chris Leech) [2011470] - scsi: iscsi: Use system_unbound_wq for destroy_work (Chris Leech) [2011470] - scsi: iscsi: Force immediate failure during shutdown (Chris Leech) [2011470] - scsi: iscsi: Drop suspend calls from ep_disconnect (Chris Leech) [2011470] - scsi: iscsi: Stop queueing during ep_disconnect (Chris Leech) [2011470] - scsi: iscsi: Add task completion helper (Chris Leech) [2011470] - scsi: iscsi: Fix iSCSI cls conn state (Chris Leech) [2011470] - scsi: iscsi: Fix race condition between login and sync thread (Chris Leech) [2011470] - scsi: iscsi: Drop session lock in iscsi_session_chkready() (Chris Leech) [2011470] - scsi: libiscsi: Reset max/exp cmdsn during recovery (Chris Leech) [2011470] - scsi: iscsi_tcp: Fix shost can_queue initialization (Chris Leech) [2011470] - scsi: libiscsi: Add helper to calculate max SCSI cmds per session (Chris Leech) [2011470] - scsi: libiscsi: Fix iSCSI host workq destruction (Chris Leech) [2011470] - scsi: libiscsi: Fix iscsi_task use after free() (Chris Leech) [2011470] - scsi: libiscsi: Drop taskqueuelock (Chris Leech) [2011470] - scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling (Chris Leech) [2011470] - scsi: iscsi: Fix inappropriate use of put_device() (Chris Leech) [2011470] - scsi: iscsi: Fail session and connection on transport registration failure (Chris Leech) [2011470] - scsi: drivers: base: Propagate errors through the transport component (Chris Leech) [2011470] - scsi: drivers: base: Support atomic version of attribute_container_device_trigger (Chris Leech) [2011470] - scsi: libiscsi: Fix NOP race condition (Chris Leech) [2011470] - scsi: libiscsi: use sendpage_ok() in iscsi_tcp_segment_map() (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling getpeername() (Chris Leech) [2011470] - scsi: iscsi: Do not put host in iscsi_set_flashnode_param() (Chris Leech) [2011470] - scsi: iscsi: Register sysfs for workqueue iscsi_destroy (Chris Leech) [2011470] - scsi: iscsi: Remove sessdestroylist (Chris Leech) [2011470] - scsi: iscsi: Optimize work queue flush use (Chris Leech) [2011470] - scsi: iscsi: Delay freeing target_id (Chris Leech) [2011470] - scsi: iscsi: Change iSCSI workqueue max_active back to 1 (Chris Leech) [2011470] - scsi: iscsi: Fix reference count leak in iscsi_boot_create_kobj (Chris Leech) [2011470]- scsi: qedf: Fix error codes in qedf_alloc_global_queues() (Nilesh Javali) [1983908] - scsi: qedf: Add check to synchronize abort and flush (Nilesh Javali) [1983908] - scsi: qedf: Use DEVICE_ATTR_RO() macro (Nilesh Javali) [1983908] - scsi: qedf: Use vzalloc() instead of vmalloc()/memset(0) (Nilesh Javali) [1983908] - scsi: qedf: Drop unnecessary NULL checks after container_of() (Nilesh Javali) [1983908] - scsi: qedf: Use devlink to report errors and recovery (Nilesh Javali) [1983908] - scsi: qedf: Enable devlink support (Nilesh Javali) [1983908] - scsi: qedf: Remove unused include of linux/version.h (Nilesh Javali) [1983908] - qed: implement devlink dump (Nilesh Javali) [1983908] - qed*: make use of devlink recovery infrastructure (Nilesh Javali) [1983908] - qed: use devlink logic to report errors (Nilesh Javali) [1983908] - qed: health reporter init deinit seq (Nilesh Javali) [1983908] - qed: implement devlink info request (Nilesh Javali) [1983908] - qed/qede: make devlink survive recovery (Nilesh Javali) [1983908] - qed: move out devlink logic into a new file (Nilesh Javali) [1983908] - i40e: fix endless loop under rtnl (Stefan Assmann) [1903921] - ovl: fix missing negative dentry check in ovl_rename() (Miklos Szeredi) [2010887] {CVE-2021-20321} - [RHEL8.6 BZ 1849234] cifs: report error instead of invalid when revalidating a dentry fails (Ronnie Sahlberg) [1849234] - mei: me: emmitsburg workstation DID (David Arcari) [2014195] - redhat/configs: Add CONFIG_INTEL_QEP (Prarit Bhargava) [1783559] - redhat/configs: Add CONFIG_COUNTER (Prarit Bhargava) [1783559] - counter: Rename counter_count_function to counter_function (Prarit Bhargava) [1783559] - counter: Rename counter_signal_value to counter_signal_level (Prarit Bhargava) [1783559] - counter: Standardize to ERANGE for limit exceeded errors (Prarit Bhargava) [1783559] - counter: intel-qep: Remove linux/bitops.h include (Prarit Bhargava) [1783559] - counter: intel-qep: Use to_pci_dev() helper (Prarit Bhargava) [1783559] - counter: intel-qep: Mark PM callbacks with __maybe_unused (Prarit Bhargava) [1783559] - counter: Add support for Intel Quadrature Encoder Peripheral (Prarit Bhargava) [1783559] - counter: Simplify the count_read and count_write callbacks (Prarit Bhargava) [1783559] - drivers/counter: Add SPDX license identifier - Makefile/Kconfig (Prarit Bhargava) [1783559] - counter: Introduce the Generic Counter interface (Prarit Bhargava) [1783559] - bpf: Fix integer overflow in prealloc_elems_and_freelist() (Yauheni Kaliuta) [2010492] {CVE-2021-41864} - audit: move put_tree() to avoid trim_trees refcount underflow and UAF (Richard Guy Briggs) [1978123] - tpm: ibmvtpm: Avoid error message when process gets signal while waiting (Štěpán Horáček) [1981473] - efi/tpm: Differentiate missing and invalid final event log table. (Štěpán Horáček) [1981473] - tpm: Replace WARN_ONCE() with dev_err_once() in tpm_tis_status() (Štěpán Horáček) [1981473] - tpm_tis: Use DEFINE_RES_MEM() to simplify code (Štěpán Horáček) [1981473] - tpm: fix some doc warnings in tpm1-cmd.c (Štěpán Horáček) [1981473] - tpm_tis_spi: add missing SPI device ID entries (Štěpán Horáček) [1981473] - tpm: add longer timeout for TPM2_CC_VERIFY_SIGNATURE (Štěpán Horáček) [1981473] - tpm_tis_spi: set default probe function if device id not match (Štěpán Horáček) [1981473] - tpm_crb: Use IOMEM_ERR_PTR when function returns iomem (Štěpán Horáček) [1981473] - tools/testing/scatterlist: Fix overflow of max segment size (Rafael Aquini) [2016426] - drm: Remove SCATTERLIST_MAX_SEGMENT (Rafael Aquini) [2016426] - lib/scatterlist: Fix wrong update of orig_nents (Rafael Aquini) [2016426] - lib/scatterlist: Provide a dedicated function to support table append (Rafael Aquini) [2016426] - tools/testing/scatterlist: Test dynamic __sg_alloc_table_from_pages (Rafael Aquini) [2016426] - tools/testing/scatterlist: Fix test to compile and run (Rafael Aquini) [2016426] - tools/testing/scatterlist: Show errors in human readable form (Rafael Aquini) [2016426] - tools/testing/scatterlist: Rejuvenate bit-rotten test (Rafael Aquini) [2016426] - Kconfig.debug: drop selecting non-existing HARDLOCKUP_DETECTOR_ARCH (Rafael Aquini) [2016426] - buildid: only consider GNU notes for build ID parsing (Rafael Aquini) [2016426] - lib/decompressors: remove set but not used variabled 'level' (Rafael Aquini) [2016426] - lib/math/rational.c: fix divide by zero (Rafael Aquini) [2016426] - lockdep/selftests: Fix selftests vs PROVE_RAW_LOCK_NESTING (Rafael Aquini) [2016426] - kunit: Fix result propagation for parameterised tests (Rafael Aquini) [2016426] - bug: Remove redundant condition check in report_bug (Rafael Aquini) [2016426] - zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of dfltcc_syms.c (Rafael Aquini) [2016426] - zlib: export S390 symbols for zlib modules (Rafael Aquini) [2016426] - lib/crc32test: remove extra local_irq_disable/enable (Rafael Aquini) [2016426] - random32: add a selftest for the prandom32 code (Rafael Aquini) [2016426] - random32: add noise from network and scheduling activity (Rafael Aquini) [2016426] - random32: make prandom_u32() output unpredictable (Rafael Aquini) [2016426] - lib: Correct comment of prandom_seed (Rafael Aquini) [2016426] - lib/crc32.c: fix trivial typo in preprocessor condition (Rafael Aquini) [2016426] - lib/crc: Use consistent naming for CRC-32 polynomials (Rafael Aquini) [2016426] - lib/crc: Move polynomial definition to separate header (Rafael Aquini) [2016426] - kstrto*: do not describe simple_strto*() as obsolete/replaced (Rafael Aquini) [2016426] - kstrto*: correct documentation references to simple_strto*() (Rafael Aquini) [2016426] - kernel.h: update comment about simple_strto() functions (Rafael Aquini) [2016426] - lib/bitmap.c: fix bitmap_cut() for partial overlapping case (Rafael Aquini) [2016426] - devres: keep both device name and resource name in pretty name (Rafael Aquini) [2016426] - crc-t10dif: Fix potential crypto notify dead-lock (Rafael Aquini) [2016426] - vsprintf: don't obfuscate NULL and error pointers (Rafael Aquini) [2016426] - lib/stackdepot.c: fix global out-of-bounds in stack_slabs (Rafael Aquini) [2016426] - lib/scatterlist.c: adjust indentation in __sg_alloc_table (Rafael Aquini) [2016426] - lib/stackdepot: Fix outdated comments (Rafael Aquini) [2016426] - lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more() (Rafael Aquini) [2016426] - lib: Remove select of inexistant GENERIC_IO (Rafael Aquini) [2016426] - lib: test_user_copy: style cleanup (Rafael Aquini) [2016426] - usercopy: Add parentheses around assignment in test_copy_struct_from_user (Rafael Aquini) [2016426] - lib: textsearch: fix escapes in example code (Rafael Aquini) [2016426] - Partially revert "kfifo: fix kfifo_alloc() and kfifo_init()" (Rafael Aquini) [2016426] - lib: logic_pio: Fix RCU usage (Rafael Aquini) [2016426] - lib/test_overflow.c: avoid tainting the kernel and fix wrap size (Rafael Aquini) [2016426] - lib/test_string.c: avoid masking memset16/32/64 failures (Rafael Aquini) [2016426] - lib/scatterlist: Fix mapping iterator when sg->offset is greater than PAGE_SIZE (Rafael Aquini) [2016426] - lib/mpi: Fix karactx leak in mpi_powm (Rafael Aquini) [2016426] - sbitmap: fix improper use of smp_mb__before_atomic() (Rafael Aquini) [2016426] - kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice. (Rafael Aquini) [2016426] - lib/div64.c: off by one in shift (Rafael Aquini) [2016426] - assoc_array: Fix shortcut creation (Rafael Aquini) [2016426] - lib/test_kmod.c: potential double free in error handling (Rafael Aquini) [2016426] - devres: always use dev_name() in devm_ioremap_resource() (Rafael Aquini) [2016426] - lib: fix build failure in CONFIG_DEBUG_VIRTUAL test (Rafael Aquini) [2016426] - test_firmware: fix error return getting clobbered (Rafael Aquini) [2016426] - lib: Fix ia64 bootloader linkage (Rafael Aquini) [2016426] - lib/test_hexdump.c: fix failure on big endian cpu (Rafael Aquini) [2016426] - hv_utils: Set the maximum packet size for VSS driver to the length of the receive buffer (Cathy Avery) [2012842] - scsi: storvsc: Log TEST_UNIT_READY errors as warnings (Cathy Avery) [2012842] - scsi: storvsc: Correctly handle multiple flags in srb_status (Cathy Avery) [2012842] - scsi: storvsc: Update error logging (Cathy Avery) [2012842] - scsi: storvsc: Miscellaneous code cleanups (Cathy Avery) [2012842] - scsi: storvsc: Use blk_mq_unique_tag() to generate requestIDs (Cathy Avery) [2012842] - Drivers: hv: vmbus: Copy packets sent by Hyper-V out of the ring buffer (Cathy Avery) [2012842] - scsi: core: Fix hang of freezing queue between blocking and running device (Ewan D. Milne) [2012323] - scsi: core: Fix capacity set to zero after offlinining device (Ewan D. Milne) [2012323] - scsi: sr: Return correct event when media event code is 3 (Ewan D. Milne) [2012323] - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO (Ewan D. Milne) [2012323] - scsi: scsi_dh_rdac: Avoid crash during rdac_bus_attach() (Ewan D. Milne) [2012323] - scsi: core: Fix bad pointer dereference when ehandler kthread is invalid (Ewan D. Milne) [2012323] - scsi: core: Fix the documentation of the scsi_execute() time parameter (Ewan D. Milne) [2012323] - scsi: core: Retry I/O for Notify (Enable Spinup) Required error (Ewan D. Milne) [2012323] - scsi: sd: Call sd_revalidate_disk() for ioctl(BLKRRPART) (Ewan D. Milne) [2012323] - scsi: core: Inline scsi_mq_alloc_queue() (Ewan D. Milne) [2012323] - scsi: sr: Return appropriate error code when disk is ejected (Ewan D. Milne) [2012323] - scsi: core: Only put parent device if host state differs from SHOST_CREATED (Ewan D. Milne) [2012323] - scsi: core: Put .shost_dev in failure path if host state changes to RUNNING (Ewan D. Milne) [2012323] - scsi: core: Fix failure handling of scsi_add_host_with_dma() (Ewan D. Milne) [2012323] - scsi: core: Fix error handling of scsi_host_alloc() (Ewan D. Milne) [2012323] - scsi: st: Return error code in st_scsi_execute() (Ewan D. Milne) [2012323] - scsi: scsi_dh_alua: Retry RTPG on a different path after failure (Ewan D. Milne) [2012323] - scsi: scsi_transport_fc: Remove double FC_FPORT_DELETED in mask creation (Ewan D. Milne) [2012323] - scsi: core: Fix a comment in function scsi_host_dev_release() (Ewan D. Milne) [2012323] - scsi: scsi_debug: Drop if with an always false condition (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix cmd_per_lun, set to max_queue (Ewan D. Milne) [2012323] - scsi: sd: Introduce a new local variable in sd_check_events() (Ewan D. Milne) [2012323] - scsi: core: Modify the scsi_send_eh_cmnd() return value for the SDEV_BLOCK case (Ewan D. Milne) [2012323] - scsi: core: Rename scsi_softirq_done() into scsi_complete() (Ewan D. Milne) [2012323] - scsi: core: Remove an incorrect comment (Ewan D. Milne) [2012323] - scsi: core: Make the scsi_alloc_sgtables() documentation more accurate (Ewan D. Milne) [2012323] - scsi: scsi_dh_alua: Prevent duplicate pg info print in alua_rtpg() (Ewan D. Milne) [2012323] - scsi: core: scsi_host_cmd_pool is declared twice (Ewan D. Milne) [2012323] - scsi: core: Remove duplicate declarations (Ewan D. Milne) [2012323] - scsi: core: Fix comment typo (Ewan D. Milne) [2012323] - scsi: scsi_dh: Fix a typo (Ewan D. Milne) [2012323] - scsi: sd: Fix function name in header (Ewan D. Milne) [2012323] - scsi: sd_zbc: Place function name into header (Ewan D. Milne) [2012323] - scsi: sd_zbc: Update write pointer offset cache (Ewan D. Milne) [2012323] - scsi: st: Fix a use after free in st_open() (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix cmd duration calculation (Ewan D. Milne) [2012323] - scsi: core: Set shost as hctx driver_data (Ewan D. Milne) [2012323] - scsi: scsi_debug: Add new defer type for mq_poll (Ewan D. Milne) [2012323] - scsi: scsi_debug: mq_poll support (Ewan D. Milne) [2012323] - scsi: core: Add mq_poll support to SCSI layer (Ewan D. Milne) [2012323] - scsi: sd: Remove obsolete variable in sd_remove() (Ewan D. Milne) [2012323] - scsi: handle zone resources errors (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix scp is NULL errors (Ewan D. Milne) [2012323] - scsi: scsi_debug: Improve command duration calculation (Ewan D. Milne) [2012323] - x86/platform: Increase maximum GPIO number for X86_64 (David Arcari) [2016796] - pinctrl: pinconf-generic: Add function parameter description 'pctldev' (David Arcari) [2016796] - pinctrl: core: Remove duplicated word from devm_pinctrl_unregister() (David Arcari) [2016796] - pinctrl: tigerlake: Fix GPIO mapping for newer version of software (David Arcari) [2016796] - pinctrl: tigerlake: Add Alder Lake-M ACPI ID (David Arcari) [2016796] - docs: update pin-control.rst references (David Arcari) [2016796] - pinctrl: Keep enum pin_config_param ordered by name (part 2) (David Arcari) [2016796] - pinctrl: core: Show pin numbers for the controllers with base = 0 (David Arcari) [2016796] - pinctrl: Add PIN_CONFIG_MODE_PWM to enum pin_config_param (David Arcari) [2016796] - pinctrl: Introduce MODE group in enum pin_config_param (David Arcari) [2016796] - pinctrl: Keep enum pin_config_param ordered by name (David Arcari) [2016796] - pinctrl: core: Fix kernel doc string for pin_get_name() (David Arcari) [2016796] - pinctrl: intel: check REVID register value for device presence (David Arcari) [2016796] - pinctrl: intel: No need to disable IRQs in the handler (David Arcari) [2016796] - pinctrl: core: Set ret to 0 when group is skipped (David Arcari) [2016796] - pinctrl: core: Handling pinmux and pinconf separately (David Arcari) [2016796] - Documentation: rename pinctl to pin-control (David Arcari) [2016796] - pinctrl: pinmux: Add pinmux-select debugfs file (David Arcari) [2016796] - pinctrl: use to octal permissions for debugfs files (David Arcari) [2016796] - pinctrl: intel: Show the GPIO base calculation explicitly (David Arcari) [2016796] - pinctrl: pinmux: add function selector to pinmux-functions (David Arcari) [2016796] - pinctrl: intel: Convert capability list to features (David Arcari) [2016796] - pinctrl: intel: Drop unnecessary check for predefined features (David Arcari) [2016796] - pinctrl: intel: Split intel_pinctrl_add_padgroups() for better maintenance (David Arcari) [2016796] - pinctrl: remove empty lines in pinctrl subsystem (David Arcari) [2016796] - pinctrl: intel: Actually disable Tx and Rx buffers on GPIO request (David Arcari) [2016796] - pinctrl: Remove hole in pinctrl_gpio_range (David Arcari) [2016796] - pinctrl: core: Add missing #ifdef CONFIG_GPIOLIB (David Arcari) [2016796] - pinctrl: intel: Set default bias in case no particular value given (David Arcari) [2016796] - pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm (David Arcari) [2016796] - pinctrl: core: print gpio in pins debugfs file (David Arcari) [2016796] - pinctrl: pinmux: Add some missing parameter descriptions (David Arcari) [2016796] - pinctrl: core: Fix a bunch of kerneldoc issues (David Arcari) [2016796] - pinctrl: Define of_pinctrl_get() dummy for !PINCTRL (David Arcari) [2016796] - pinctrl: core: Remove extra kref_get which blocks hogs being freed (David Arcari) [2016796] - pinctrl: Export some needed symbols at module load time (David Arcari) [2016796] - pinctrl: core: Add pinctrl_select_default_state() and export it (David Arcari) [2016796] - pinctrl: make pinconf.h self-contained (David Arcari) [2016796] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (David Arcari) [2016796] - pinctrl: remove pinctrl/machine.h inclusion from pinctrl/pinconf.h (David Arcari) [2016796] - pinctrl: Document pin_config_group_get() return codes like pin_config_get() (David Arcari) [2016796] - pinctrl: intel: Convert to use SPDX identifier (David Arcari) [2016796] - mm/swapfile: fix an integer overflow in swap_show() (Rafael Aquini) [2008812] - mm: swapfile: fix /proc/swaps heading and Size/Used/Priority alignment (Rafael Aquini) [2008812] - Makefile: update early devel phase flag (Augusto Caringi) [2000679] - KVM: s390: Enable specification exception interpretation (Thomas Huth) [1984894] - KVM: x86: Update vCPU's hv_clock before back to guest when tsc_offset is adjusted (Marcelo Tosatti) [2007928] - ibmvnic: Remove the proper scrq flush (Desnes A. Nunes do Rosario) [2014097] - selftests/net/ipsec: Add test for xfrm_spdattr_type_t (Hangbin Liu) [2018056] - selftest/net/ipsec.c: Remove unneeded semicolon (Hangbin Liu) [2018056] - selftest/net/xfrm: Add test for ipsec tunnel (Hangbin Liu) [2018056] - ipv6: add ip6_sock_set_v6only (Josef Oskera) [2008908] - ipv6: When forwarding count rx stats on the orig netdev (Hangbin Liu) [2017704] - ipv6: make exception cache less predictible (Hangbin Liu) [2017704] - ipv6: use siphash in rt6_exception_hash() (Hangbin Liu) [2017704] - ipv6: use jhash2() in rt6_exception_hash() (Hangbin Liu) [2017704] - net/l2tp: Fix reference count leak in l2tp_udp_recv_core (Guillaume Nault) [2020380] - netfilter: nft_flow_offload: fix underflow in flowtable reference counter (Phil Sutter) [2008551] - net: xfrm: Fix end of loop tests for list_for_each_entry (Sabrina Dubroca) [2019168] - xfrm: Fix error reporting in xfrm_state_construct. (Sabrina Dubroca) [2019168]- nvme-mpath: replace direct_make_request with generic_make_request (Gopal Tiwari) [2013505] - net-sysfs: try not to restart the syscall if it will fail eventually (Antoine Tenart) [2016005] - net: mana: Fix error handling in mana_create_rxq() (Mohammed Gamal) [2011886] - net: mana: Prefer struct_size over open coded arithmetic (Mohammed Gamal) [2011886] - net: mana: Add WARN_ON_ONCE in case of CQE read overflow (Mohammed Gamal) [2011886] - net: mana: Add support for EQ sharing (Mohammed Gamal) [2011886] - net: mana: Move NAPI from EQ to CQ (Mohammed Gamal) [2011886] - net: mana: Fix a memory leak in an error handling path in 'mana_create_txq()' (Mohammed Gamal) [2011886] - net: mana: Use struct_size() in kzalloc() (Mohammed Gamal) [2011886] - vmxnet3: switch from 'pci_' to 'dma_' API (Kamal Heib) [2013202] - vmxnet3: update to version 6 (Kamal Heib) [2013202] - vmxnet3: increase maximum configurable mtu to 9190 (Kamal Heib) [2013202] - vmxnet3: set correct hash type based on rss information (Kamal Heib) [2013202] - vmxnet3: add support for ESP IPv6 RSS (Kamal Heib) [2013202] - vmxnet3: remove power of 2 limitation on the queues (Kamal Heib) [2013202] - vmxnet3: add support for 32 Tx/Rx queues (Kamal Heib) [2013202] - vmxnet3: prepare for version 6 changes (Kamal Heib) [2013202] - vmxnet3: fix cksum offload issues for tunnels with non-default udp ports (Kamal Heib) [2013202] - treewide: Use fallthrough pseudo-keyword (Kamal Heib) [2013202] - net: Use skb_frag_off accessors (Kamal Heib) [2013202] - net: Use skb accessors in network drivers (Kamal Heib) [2013202] - vmxnet3: Remove call to memset after dma_alloc_coherent (Kamal Heib) [2013202] - cgroup/debug: Fix lockdep splat with "pK" format specifier (Waiman Long) [2007919] - configs: Enable FC_APPID (Ewan D. Milne) [1643346] - configs: Enable BLK_CGROUP_FC_APPID (Ewan D. Milne) [1643346] - scsi: nvme: Added a new sysfs attribute appid_store (Ewan D. Milne) [1643346] - scsi: blkcg: Add app identifier support for blkcg (Ewan D. Milne) [1643346] - scsi: cgroup: Add cgroup_get_from_id() (Ewan D. Milne) [1643346] - perf iostat: Fix Segmentation fault from NULL 'struct perf_counts_values *' (Michael Petlan) [2003981] - perf iostat: Use system-wide mode if the target cpu_list is unspecified (Michael Petlan) [2003981] - perf beauty: Update copy of linux/socket.h with the kernel sources (Michael Petlan) [2003981] - perf test: Fix non-bash issue with stat bpf counters (Michael Petlan) [2003981] - perf machine: Fix refcount usage when processing PERF_RECORD_KSYMBOL (Michael Petlan) [2003981] - perf metricgroup: Return error code from metricgroup__add_metric_sys_event_iter() (Michael Petlan) [2003981] - perf metricgroup: Fix find_evsel_group() event selector (Michael Petlan) [2003981] - perf session: Correct buffer copying when peeking events (Michael Petlan) [2003981] - perf env: Fix memory leak of bpf_prog_info_linear member (Michael Petlan) [2003981] - perf symbol-elf: Fix memory leak by freeing sdt_note.args (Michael Petlan) [2003981] - perf stat: Honor event config name on --no-merge (Michael Petlan) [2003981] - perf test: Test 17 fails with make LIBPFM4=1 on s390 z/VM (Michael Petlan) [2003981] - perf stat: Fix error return code in bperf__load() (Michael Petlan) [2003981] - perf record: Move probing cgroup sampling support (Michael Petlan) [2003981] - perf probe: Fix NULL pointer dereference in convert_variable_location() (Michael Petlan) [2003981] - perf tools: Copy uapi/asm/perf_regs.h from the kernel for MIPS (Michael Petlan) [2003981] - perf stat: Fix error check for bpf_program__attach (Michael Petlan) [2003981] - perf jevents: Fix getting maximum number of fds (Michael Petlan) [2003981] - perf stat: Skip evlist__[enable|disable] when all events uses BPF (Michael Petlan) [2003981] - perf script: Add missing PERF_IP_FLAG_CHARS for VM-Entry and VM-Exit (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix warning display (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix Array TypeError (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix copy to clipboard from Top Calls by elapsed Time report (Michael Petlan) [2003981] - perf parse-events: Check if the software events array slots are populated (Michael Petlan) [2003981] - perf tools: Add 'cgroup-switches' software event (Michael Petlan) [2003981] - perf intel-pt: Remove redundant setting of ptq->insn_len (Michael Petlan) [2003981] - perf intel-pt: Fix sample instruction bytes (Michael Petlan) [2003981] - perf intel-pt: Fix transaction abort handling (Michael Petlan) [2003981] - perf test: Fix libpfm4 support (63) test error for nested event groups (Michael Petlan) [2003981] - perf buildid-list: Initialize zstd_data (Michael Petlan) [2003981] - tools build: Fix quiet cmd indentation (Michael Petlan) [2003981] - perf tools: Fix a build error on arm64 with clang (Michael Petlan) [2003981] - perf tools: Fix dynamic libbpf link (Michael Petlan) [2003981] - perf session: Fix swapping of cpu_map and stat_config records (Michael Petlan) [2003981] - perf jevents: Silence warning for ArchStd files (Michael Petlan) [2003981] - perf build: Defer printing detected features to the end of all feature checks (Michael Petlan) [2003981] - tools build: Allow deferring printing the results of feature detection (Michael Petlan) [2003981] - perf build: Regenerate the FEATURE_DUMP file after extra feature checks (Michael Petlan) [2003981] - perf session: Dump PERF_RECORD_TIME_CONV event (Michael Petlan) [2003981] - perf session: Add swap operation for event TIME_CONV (Michael Petlan) [2003981] - perf jit: Let convert_timestamp() to be backwards-compatible (Michael Petlan) [2003981] - perf tools: Change fields type in perf_record_time_conv (Michael Petlan) [2003981] - perf tools: Enable libtraceevent dynamic linking (Michael Petlan) [2003981] - perf report: Print percentage of each event statistics (Michael Petlan) [2003981] - perf report: Make --skip-empty as default (Michael Petlan) [2003981] - perf report: Add --skip-empty option to suppress 0 event stat (Michael Petlan) [2003981] - perf report: Show event sample counts in --stat output (Michael Petlan) [2003981] - perf hists: Split hists_stats from events_stats (Michael Petlan) [2003981] - perf top: Use evlist->events_stat to count events (Michael Petlan) [2003981] - perf data: Add JSON export (Michael Petlan) [2003981] - perf stat: Introduce bpf_counter_ops->disable() (Michael Petlan) [2003981] - perf stat: Introduce ':b' modifier (Michael Petlan) [2003981] - perf stat: Introduce config stat.bpf-counter-events (Michael Petlan) [2003981] - perf bpf: check perf_attr_map is compatible with the perf binary (Michael Petlan) [2003981] - perf util: Move bpf_perf definitions to a libperf header (Michael Petlan) [2003981] - perf tools: Update topdown documentation to permit rdpmc calls (Michael Petlan) [2003981] - perf tools: Add a build-test variant to use in builds from a tarball (Michael Petlan) [2003981] - perf arm64: Fix off-by-one directory paths. (Michael Petlan) [2003981] - perf: Update .gitignore file (Michael Petlan) [2003981] - perf stat: Enable iostat mode for x86 platforms (Michael Petlan) [2003981] - perf stat: Helper functions for PCIe root ports list in iostat mode (Michael Petlan) [2003981] - perf stat: Basic support for iostat in perf (Michael Petlan) [2003981] - libperf xyarray: Add bounds checks to xyarray__entry() (Michael Petlan) [2003981] - libperf: Add support for user space counter access (Michael Petlan) [2003981] - libperf tests: Add support for verbose printing (Michael Petlan) [2003981] - libperf: Add evsel mmap support (Michael Petlan) [2003981] - tools include: Add an initial math64.h (Michael Petlan) [2003981] - perf beauty: Fix fsconfig generator (Michael Petlan) [2003981] - perf record: Improve 'Workload failed' message printing events + what was exec'ed (Michael Petlan) [2003981] - perf evlist: Add a method to return the list of evsels as a string (Michael Petlan) [2003981] - perf annotate: Fix sample events lost in stdio mode (Michael Petlan) [2003981] - perf vendor events amd: Add Zen3 events (Michael Petlan) [2003981] - perf vendor events amd: Use 0x02x format for event code and umask (Michael Petlan) [2003981] - perf vendor events amd: Use lowercases for all the eventcodes and umasks (Michael Petlan) [2003981] - perf vendor events amd: Fix broken L2 Cache Hits from L2 HWPF metric (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L3 metrics (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L2 metrics (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L1 metrics (Michael Petlan) [2003981] - perf pmu: Add pmu_events_map__find() function to find the common PMU map for the system (Michael Petlan) [2003981] - perf test: Handle metric reuse in pmu-events parsing test (Michael Petlan) [2003981] - perf metricgroup: Make find_metric() public with name change (Michael Petlan) [2003981] - perf mem-events: Remove unnecessary 'struct mem_info' forward declaration (Michael Petlan) [2003981] - perf evsel: Remove duplicate 'struct target' forward declaration (Michael Petlan) [2003981] - perf annotate: Add --demangle and --demangle-kernel (Michael Petlan) [2003981] - perf tools: Preserve identifier id in OCaml demangler (Michael Petlan) [2003981] - perf daemon: Remove duplicate includes (Michael Petlan) [2003981] - perf tools: Remove duplicate struct forward declarations (Michael Petlan) [2003981] - perf test: Add CSV summary test (Michael Petlan) [2003981] - perf stat: Align CSV output for summary mode (Michael Petlan) [2003981] - perf test: Add a shell test for 'perf stat --bpf-counters' new option (Michael Petlan) [2003981] - perf stat: Measure 't0' and 'ref_time' after enable_counters() (Michael Petlan) [2003981] - perf stat: Introduce 'bperf' to share hardware PMCs with BPF (Michael Petlan) [2003981] - perf tools: Fix various typos in comments (Michael Petlan) [2003981] - perf test: Add 30s timeout for wait for daemon start. (Michael Petlan) [2003981] - perf test: Cleanup daemon if test is interrupted. (Michael Petlan) [2003981] - perf test: Remove unused argument (Michael Petlan) [2003981] - perf stat: Improve readability of shadow stats (Michael Petlan) [2003981] - perf stat: Elaborate use cases for the -n/--null command line option (Michael Petlan) [2003981] - perf evlist: Change the COMM when preparing the workload (Michael Petlan) [2003981] - perf machine: Assign boolean values to a bool variable (Michael Petlan) [2003981] - perf tools: use ARRAY_SIZE (Michael Petlan) [2003981] - perf stat: Fixup __perf_stat_evsel__is() prefix (Michael Petlan) [2003981] - perf script: Fixup 'struct evsel_script' method prefix (Michael Petlan) [2003981] - perf symbols: Fix dso__fprintf_symbols_by_name() to return the number of printed chars (Michael Petlan) [2003981] - tools include: Add __sum16 and __wsum definitions. (Michael Petlan) [2003981] - perf annotate: Show full source location with 'l' hotkey (Michael Petlan) [2003981] - perf bench: Fix misspellings using codespell (Michael Petlan) [2003981] - perf config: Add annotate.demangle{,_kernel} (Michael Petlan) [2003981] - perf bpf: Minor whitespace cleanup. (Michael Petlan) [2003981] - perf tools: Enable warnings when compiling BPF programs (Michael Petlan) [2003981] - perf skel: Remove some unused variables. (Michael Petlan) [2003981] - perf report: Create option to disable raw event ordering (Michael Petlan) [2003981] - perf metric: Remove unneeded semicolon (Michael Petlan) [2003981] - perf cs-etm: Detect pid in VMID for kernel running at EL2 (Michael Petlan) [2003981] - perf cs-etm: Add helper cs_etm__get_pid_fmt() (Michael Petlan) [2003981] - perf cs-etm: Support PID tracing in config (Michael Petlan) [2003981] - perf cs-etm: Fix bitmap for option (Michael Petlan) [2003981] - perf cs-etm: Update ETM metadata format (Michael Petlan) [2003981] - perf vendor events power9: Remove unsupported metrics (Michael Petlan) [2003981] - perf buildid-cache: Add test for PE executable (Michael Petlan) [2003981] - perf docs: Add man pages to see also (Michael Petlan) [2003981] - perf tools: Generate mips syscalls_n64.c syscall table (Michael Petlan) [2003981] - perf s390: Move syscall.tbl check into check-headers.sh (Michael Petlan) [2003981] - perf tools: Support MIPS unwinding and dwarf-regs (Michael Petlan) [2003981] - tools: do not include scripts/Kbuild.include (Michael Petlan) [2003981] - tools: Allow proper CC/CXX/... override with LLVM=1 in Makefile.include (Michael Petlan) [2003981] - perf intel-pt: Use aux_watermark (Michael Petlan) [2003981] - perf/x86/intel/uncore: Fix M2M event umask for Ice Lake server (Michael Petlan) [2003981] - perf/x86/intel/uncore: Fix a kernel WARNING triggered by maxcpus=1 (Michael Petlan) [2003981] - perf: Fix data race between pin_count increment/decrement (Michael Petlan) [2003981] - perf/x86: Avoid touching LBR_TOS MSR for Arch LBR (Michael Petlan) [2003981] - perf/x86: Allow for 8running into P4 specific code (Michael Petlan) [2003981] - perf: Add support for event removal on exec (Michael Petlan) [2003981] - perf: Support only inheriting events if cloned with CLONE_THREAD (Michael Petlan) [2003981] - perf: Apply PERF_EVENT_IOC_MODIFY_ATTRIBUTES to children (Michael Petlan) [2003981] - perf: Rework perf_event_exit_event() (Michael Petlan) [2003981] - perf: Cap allocation order at aux_watermark (Michael Petlan) [2003981] - perf/x86/intel/uncore: Enable IIO stacks to PMON mapping for multi-segment SKX (Michael Petlan) [2003981] - perf core: Allocate perf_event in the target node memory (Michael Petlan) [2003981] - perf core: Add a kmem_cache for struct perf_event (Michael Petlan) [2003981] - perf core: Allocate perf_buffer in the target node memory (Michael Petlan) [2003981] - x86: Remove unusual Unicode characters from comments (Michael Petlan) [2003981] - redhat/configs: Add CONFIG_TIMERLAT_TRACER (Jerome Marchand) [1979382] - redhat/configs: Add CONFIG_OSNOISE_TRACER (Jerome Marchand) [1979382] - tracing/osnoise: Fix missed cpus_read_unlock() in start_per_cpu_kthreads() (Jerome Marchand) [1979382] - tracing: Replace deprecated CPU-hotplug functions. (Jerome Marchand) [1979382] - trace/osnoise: Print a stop tracing message (Jerome Marchand) [1979382] - trace/timerlat: Add a header with PREEMPT_RT additional fields (Jerome Marchand) [1979382] - trace/osnoise: Add a header with PREEMPT_RT additional fields (Jerome Marchand) [1979382] - tracing: Quiet smp_processor_id() use in preemptable warning in hwlat (Jerome Marchand) [1979382] - trace/timerlat: Fix indentation on timerlat_main() (Jerome Marchand) [1979382] - trace/osnoise: Make 'noise' variable s64 in run_osnoise() (Jerome Marchand) [1979382] - tracing: Fix spelling in osnoise tracer "interferences" -> "interference" (Jerome Marchand) [1979382] - Documentation: Fix a typo on trace/osnoise-tracer (Jerome Marchand) [1979382] - trace/osnoise: Fix return value on osnoise_init_hotplug_support (Jerome Marchand) [1979382] - trace/osnoise: Make interval u64 on osnoise_main (Jerome Marchand) [1979382] - trace/osnoise: Fix 'no previous prototype' warnings (Jerome Marchand) [1979382] - tracing: Have osnoise_main() add a quiescent state for task rcu (Jerome Marchand) [1979382] - trace/osnoise: Support hotplug operations (Jerome Marchand) [1979382] - trace/hwlat: Support hotplug operations (Jerome Marchand) [1979382] - trace/hwlat: Protect kdata->kthread with get/put_online_cpus (Jerome Marchand) [1979382] - trace: Add timerlat tracer (Jerome Marchand) [1979382] - trace: Add osnoise tracer (Jerome Marchand) [1979382] - trace: Add __print_ns_to_secs() and __print_ns_without_secs() helpers (Jerome Marchand) [1979382] - trace/hwlat: Remove printk from sampling loop (Jerome Marchand) [1979382] - trace/hwlat: Use trace_min_max_param for width and window params (Jerome Marchand) [1979382] - trace: Add a generic function to read/write u64 values from tracefs (Jerome Marchand) [1979382] - trace/hwlat: Implement the per-cpu mode (Jerome Marchand) [1979382] - trace/hwlat: Switch disable_migrate to mode none (Jerome Marchand) [1979382] - trace/hwlat: Implement the mode config option (Jerome Marchand) [1979382] - uio_hv_generic: Fix another memory leak in error handling paths (Mohammed Gamal) [2008561] - uio_hv_generic: Fix a memory leak in error handling paths (Mohammed Gamal) [2008561] - mfd: intel-lpss: Add Intel Alder Lake-M PCI IDs (David Arcari) [1929498] - xfs: fix up non-directory creation in SGID directories (Brian Foster) [2004810] - xfs: kill ialloced in xfs_dialloc() (Brian Foster) [2004810] - xfs: spilt xfs_dialloc() into 2 functions (Brian Foster) [2004810] - xfs: move xfs_dialloc_roll() into xfs_dialloc() (Brian Foster) [2004810] - xfs: move on-disk inode allocation out of xfs_ialloc() (Brian Foster) [2004810] - xfs: introduce xfs_dialloc_roll() (Brian Foster) [2004810] - xfs: convert noroom, okalloc in xfs_dialloc() to bool (Brian Foster) [2004810] - xfs: check tp->t_dqinfo value instead of the XFS_TRANS_DQ_DIRTY flag (Brian Foster) [2004810] - scsi: vmw_pvscsi: Set correct residual data length (Cathy Avery) [2012237] - scsi: vmw_pvscsi: MAINTAINERS: Update maintainer (Cathy Avery) [2012237] - treewide: Use fallthrough pseudo-keyword (Cathy Avery) [2012237] - scsi: be2iscsi: Fix use-after-free during IP updates (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix some missing space in some messages (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix an error handling path in beiscsi_dev_probe() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Remove redundant initialization (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Demote incomplete/non-conformant kernel-doc header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Ensure function follows directly after its header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix beiscsi_phys_port()'s name in header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Provide missing function name in header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix incorrect naming of beiscsi_iface_config_vlan() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Mark beiscsi_attrs with static keyword (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Correct misdocumentation of function param 'ep' (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Add missing function parameter description (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix misdocumentation of 'pcontext' (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix API/documentation slip (Maurizio Lombardi) [1984347] - powerpc/spinlock: Properly define pv_spinlocks_init() (Waiman Long) [2014363] - ACPI: Pass the same capabilities to the _OSC regardless of the query flag (Mark Langsdorf) [1982319] - Revert "[acpi] ACPI: sleep: Put the FACS table after using it" (Mark Langsdorf) [1982319] - ACPICA: Clean up context mutex during object deletion (Mark Langsdorf) [1982319] - ACPI: power: Refine turning off unused power resources (Mark Langsdorf) [1982319] - ACPI: NFIT: Fix support for variable 'SPA' structure size (Mark Langsdorf) [1982319] - ACPI: custom_method: fix a possible memory leak (Mark Langsdorf) [1982319] - ACPI: custom_method: fix potential use-after-free issue (Mark Langsdorf) [1982319] - ACPI: irq: Prevent unregistering of GIC SGIs (Mark Langsdorf) [1982319] - ACPI: GTDT: Don't corrupt interrupt mappings on watchdow probe failure (Mark Langsdorf) [1982319] - ACPI: video: use native backlight for GA401/GA502/GA503 (Mark Langsdorf) [1982319] - ACPI: APEI: remove redundant assignment to variable rc (Mark Langsdorf) [1982319] - ACPI: utils: Capitalize abbreviations in the comments (Mark Langsdorf) [1982319] - ACPI: utils: Document for_each_acpi_dev_match() macro (Mark Langsdorf) [1982319] - ACPI: bus: Introduce acpi_dev_get() and reuse it in ACPI code (Mark Langsdorf) [1982319] - ACPI: scan: Utilize match_string() API (Mark Langsdorf) [1982319] - ACPI: CPPC: Replace cppc_attr with kobj_attribute (Mark Langsdorf) [1982319] - ACPI: scan: Call acpi_get_object_info() from acpi_set_pnp_ids() (Mark Langsdorf) [1982319] - ACPI: scan: Drop sta argument from acpi_init_device_object() (Mark Langsdorf) [1982319] - ACPI: scan: Drop sta argument from acpi_add_single_object() (Mark Langsdorf) [1982319] - ACPI: scan: Rearrange checks in acpi_bus_check_add() (Mark Langsdorf) [1982319] - ACPI: scan: Fold acpi_bus_type_and_status() into its caller (Mark Langsdorf) [1982319] - ACPI: video: Check LCD flag on ACPI-reduced-hardware devices (Hans de Goede) [1982319] - ACPI: utils: Add acpi_reduced_hardware() helper (Mark Langsdorf) [1982319] - ACPI: dock: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: sysfs: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: PM: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: custom_method: fix a coding style issue (Mark Langsdorf) [1982319] - ACPI: CPPC: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: button: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: battery: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: acpi_pad: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: LPSS: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: ipmi: remove useless return statement for void function (Mark Langsdorf) [1982319] - ACPI: processor: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: APD: fix a block comment align issue (Mark Langsdorf) [1982319] - ACPI: AC: fix some coding style issues (Mark Langsdorf) [1982319] - ACPICA: Update version to 20210331 (Mark Langsdorf) [1982319] - ACPICA: IORT: Updates for revision E.b (Mark Langsdorf) [1982319] - ACPICA: iASL: Decode subtable type field for VIOT (Mark Langsdorf) [1982319] - ACPICA: iASL: Add support for CEDT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add support for PHAT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add CSI2Bus resource template (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PMTT: add new fields/structures (Mark Langsdorf) [1982319] - ACPICA: CXL 2.0: CEDT: Add new CEDT table (Mark Langsdorf) [1982319] - ACPICA: acpisrc: Add missing conversion for VIOT support (Mark Langsdorf) [1982319] - ACPICA: iASL: Add definitions for the VIOT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add SDEV secure access components (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: Add new flags in SRAT (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: HMAT: add new fields/flags (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: NFIT: add Location Cookie field (Mark Langsdorf) [1982319] - ACPICA: Tree-wide: fix various typos and spelling mistakes (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PPTT: add new version of subtable type 1 (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PCCT: add support for subtable type 5 (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Structure (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add CXL ACPI device ID and _CBR object (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add USB4 capabilities UUID (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: Add new predefined objects _BPC, _BPS, and _BPT (Mark Langsdorf) [1982319] - ACPICA: Add parsing for IVRS IVHD 40h and device entry F0h (Mark Langsdorf) [1982319] - ACPI: CPPC: Add emtpy stubs of functions for CONFIG_ACPI_CPPC_LIB unset (Mark Langsdorf) [1982319] - ACPI: scan: Turn off unused power resources during initialization (Mark Langsdorf) [1982319] - ACPI: power: Turn off unused power resources unconditionally (Mark Langsdorf) [1982319] - ACPI: fix various typos in comments (Mark Langsdorf) [1982319] - ACPI: utils: Introduce acpi_evaluation_failure_warn() (Mark Langsdorf) [1982319] - ACPI: processor: perflib: Eliminate redundant status check (Mark Langsdorf) [1982319] - ACPI: Drop unused ACPI_*_COMPONENT definitions and update documentation (Mark Langsdorf) [1982319] - ACPI: sysfs: Get rid of ACPICA message printing (Mark Langsdorf) [1982319] - ACPI: HED: Drop unused ACPI_MODULE_NAME() definition (Mark Langsdorf) [1982319] - ACPI: processor: Get rid of ACPICA message printing (Mark Langsdorf) [1982319] - ACPI: processor: idle: Drop extra prefix from pr_notice() (Mark Langsdorf) [1982319] - ACPI: processor: Remove initialization of static variable (Mark Langsdorf) [1982319] - ACPI: PCI: Replace direct printk() invocations in pci_link.c (Mark Langsdorf) [1982319] - ACPI: PCI: Drop ACPI_PCI_COMPONENT that is not used any more (Mark Langsdorf) [1982319] - ACPI: PCI: Replace ACPI_DEBUG_PRINT() and ACPI_EXCEPTION() (Mark Langsdorf) [1982319] - ACPI: PCI: IRQ: Consolidate printing diagnostic messages (Mark Langsdorf) [1982319] - arm64: compat: Poison the compat sigpage (C. Erastus Toe) [1983849] {CVE-2021-21781} - ARM: ensure the signal page contains defined contents (C. Erastus Toe) [1983849] {CVE-2021-21781} - powerpc/pseries: Fix update of LPAR security flavor after LPM (Steve Best) [1997294] - s390/qeth: Update MACs of LEARNING_SYNC device (Robin Dapp) [1919227] - s390/qeth: Switchdev event handler (Robin Dapp) [1919227] - s390/qeth: Register switchdev event handler (Robin Dapp) [1919227] - PCI: Add pcie_ptm_enabled() (Petr Oros) [2006834] - Revert "PCI: Make pci_enable_ptm() private" (Petr Oros) [2006834] - x86/cpufeatures: Force disable X86_FEATURE_ENQCMD and remove update_pasid() (Jerry Snitselaar) [2004577] - s390: report more CPU capabilities (Robin Dapp) [1984839] - s390/disassembler: add instructions (Robin Dapp) [1984839] - s390/opcodes: rename selhhhr to selfhr (Robin Dapp) [1984839] - s390/disassembler: update opcode table (Robin Dapp) [1984839] - s390/opcodes: add missing instructions to the disassembler (Robin Dapp) [1984839] - CI: Add template for baseline gcov build (Israel Santana Aleman) - futex: Remove unused variable 'vpid' in futex_proxy_trylock_atomic() (Waiman Long) [2000293] - futex: Prevent inconsistent state and exit race (Waiman Long) [2000293] - locking/ww_mutex: Initialize waiter.ww_ctx properly (Waiman Long) [2000293] - futex: Return error code instead of assigning it without effect (Waiman Long) [2000293] - Documentation: seqlock: s/LOCKTYPE/LOCKNAME/g (Waiman Long) [2000293] - lib/test_lockup.c: fix return value of test_lockup_init() (Waiman Long) [2000293] - locking/rwbase: Take care of ordering guarantee for fastpath reader (Waiman Long) [2000293] - locking/rwbase: Extract __rwbase_write_trylock() (Waiman Long) [2000293] - locking/rwbase: Properly match set_and_save_state() to restore_state() (Waiman Long) [2000293] - locking/rtmutex: Fix ww_mutex deadlock check (Waiman Long) [2000293] - locking/rwsem: Add missing __init_rwsem() for PREEMPT_RT (Waiman Long) [2000293] - locking/rtmutex: Return success on deadlock for ww_mutex waiters (Waiman Long) [2000293] - locking/rtmutex: Prevent spurious EDEADLK return caused by ww_mutexes (Waiman Long) [2000293] - locking/rtmutex: Dequeue waiter on ww_mutex deadlock (Waiman Long) [2000293] - locking/rtmutex: Dont dereference waiter lockless (Waiman Long) [2000293] - locking/local_lock: Add PREEMPT_RT support (Waiman Long) [2000293] - locking/spinlock/rt: Prepare for RT local_lock (Waiman Long) [2000293] - locking/rtmutex: Add adaptive spinwait mechanism (Waiman Long) [2000293] - locking/rtmutex: Implement equal priority lock stealing (Waiman Long) [2000293] - preempt: Adjust PREEMPT_LOCK_OFFSET for RT (Waiman Long) [2000293] - locking/rtmutex: Prevent lockdep false positive with PI futexes (Waiman Long) [2000293] - futex: Prevent requeue_pi() lock nesting issue on RT (Waiman Long) [2000293] - futex: Simplify handle_early_requeue_pi_wakeup() (Waiman Long) [2000293] - futex: Reorder sanity checks in futex_requeue() (Waiman Long) [2000293] - futex: Clarify comment in futex_requeue() (Waiman Long) [2000293] - futex: Restructure futex_requeue() (Waiman Long) [2000293] - futex: Correct the number of requeued waiters for PI (Waiman Long) [2000293] - futex: Remove bogus condition for requeue PI (Waiman Long) [2000293] - futex: Clarify futex_requeue() PI handling (Waiman Long) [2000293] - futex: Clean up stale comments (Waiman Long) [2000293] - futex: Validate waiter correctly in futex_proxy_trylock_atomic() (Waiman Long) [2000293] - lib/test_lockup: Adapt to changed variables (Waiman Long) [2000293] - locking/rtmutex: Add mutex variant for RT (Waiman Long) [2000293] - locking/ww_mutex: Implement rtmutex based ww_mutex API functions (Waiman Long) [2000293] - locking/rtmutex: Extend the rtmutex core to support ww_mutex (Waiman Long) [2000293] - locking/ww_mutex: Add rt_mutex based lock type and accessors (Waiman Long) [2000293] - locking/ww_mutex: Add RT priority to W/W order (Waiman Long) [2000293] - locking/ww_mutex: Implement rt_mutex accessors (Waiman Long) [2000293] - locking/ww_mutex: Abstract out internal lock accesses (Waiman Long) [2000293] - locking/ww_mutex: Abstract out mutex types (Waiman Long) [2000293] - locking/ww_mutex: Abstract out mutex accessors (Waiman Long) [2000293] - locking/ww_mutex: Abstract out waiter enqueueing (Waiman Long) [2000293] - locking/ww_mutex: Abstract out the waiter iteration (Waiman Long) [2000293] - locking/ww_mutex: Remove the __sched annotation from ww_mutex APIs (Waiman Long) [2000293] - locking/ww_mutex: Split out the W/W implementation logic into kernel/locking/ww_mutex.h (Waiman Long) [2000293] - locking/ww_mutex: Split up ww_mutex_unlock() (Waiman Long) [2000293] - locking/ww_mutex: Gather mutex_waiter initialization (Waiman Long) [2000293] - locking/ww_mutex: Simplify lockdep annotations (Waiman Long) [2000293] - locking/mutex: Make mutex::wait_lock raw (Waiman Long) [2000293] - locking/ww_mutex: Move the ww_mutex definitions from into (Waiman Long) [2000293] - locking/mutex: Move the 'struct mutex_waiter' definition from to the internal header (Waiman Long) [2000293] - locking/mutex: Consolidate core headers, remove kernel/locking/mutex-debug.h (Waiman Long) [2000293] - locking/rtmutex: Squash !RT tasks to DEFAULT_PRIO (Waiman Long) [2000293] - locking/rwlock: Provide RT variant (Waiman Long) [2000293] - locking/spinlock: Provide RT variant (Waiman Long) [2000293] - locking/rtmutex: Provide the spin/rwlock core lock function (Waiman Long) [2000293] - locking/spinlock: Provide RT variant header: (Waiman Long) [2000293] - locking/spinlock: Provide RT specific spinlock_t (Waiman Long) [2000293] - locking/rtmutex: Reduce header dependencies, only include (Waiman Long) [2000293] - rbtree: Split out the rbtree type definitions into (Waiman Long) [2000293] - locking/lockdep: Reduce header dependencies in (Waiman Long) [2000293] - locking/rtmutex: Prevent future include recursion hell (Waiman Long) [2000293] - locking/spinlock: Split the lock types header, and move the raw types into (Waiman Long) [2000293] - locking/rtmutex: Guard regular sleeping locks specific functions (Waiman Long) [2000293] - locking/rtmutex: Prepare RT rt_mutex_wake_q for RT locks (Waiman Long) [2000293] - locking/rtmutex: Use rt_mutex_wake_q_head (Waiman Long) [2000293] - locking/rtmutex: Provide rt_wake_q_head and helpers (Waiman Long) [2000293] - locking/rtmutex: Add wake_state to rt_mutex_waiter (Waiman Long) [2000293] - locking/rwsem: Add rtmutex based R/W semaphore implementation (Waiman Long) [2000293] - locking/rt: Add base code for RT rw_semaphore and rwlock (Waiman Long) [2000293] - locking/rtmutex: Provide rt_mutex_base_is_locked() (Waiman Long) [2000293] - locking/rtmutex: Provide rt_mutex_slowlock_locked() (Waiman Long) [2000293] - locking/rtmutex: Split out the inner parts of 'struct rtmutex' (Waiman Long) [2000293] - locking/rtmutex: Split API from implementation (Waiman Long) [2000293] - locking/rtmutex: Convert macros to inlines (Waiman Long) [2000293] - locking/rtmutex: Remove rt_mutex_is_locked() (Waiman Long) [2000293] - sched/wake_q: Provide WAKE_Q_HEAD_INITIALIZER() (Waiman Long) [2000293] - sched/core: Provide a scheduling point for RT locks (Waiman Long) [2000293] - sched/core: Rework the __schedule() preempt argument (Waiman Long) [2000293] - sched/wakeup: Prepare for RT sleeping spin/rwlocks (Waiman Long) [2000293] - sched/wakeup: Reorganize the current::__state helpers (Waiman Long) [2000293] - sched/wakeup: Introduce the TASK_RTLOCK_WAIT state bit (Waiman Long) [2000293] - sched/wakeup: Split out the wakeup ->__state check (Waiman Long) [2000293] - locking/rtmutex: Set proper wait context for lockdep (Waiman Long) [2000293] - locking/local_lock: Add missing owner initialization (Waiman Long) [2000293] - locking/rtmutex: Use the correct rtmutex debugging config option (Waiman Long) [2000293] - tools/runqslower: Use __state instead of state (Waiman Long) [2000293] - locking/rwsem: Remove an unused parameter of rwsem_wake() (Waiman Long) [2000293] - locking/mutex: Add MUTEX_WARN_ON (Waiman Long) [2000293] - locking/mutex: Introduce __mutex_trylock_or_handoff() (Waiman Long) [2000293] - locking/mutex: Fix HANDOFF condition (Waiman Long) [2000293] - locking/mutex: Use try_cmpxchg() (Waiman Long) [2000293] - sched: Change task_struct::state (Waiman Long) [2000293] - isdn/hisax: Use get_current_state() (Waiman Long) [2000293] - sched,timer: Use __set_current_state() (Waiman Long) [2000293] - sched: Add get_current_state() (Waiman Long) [2000293] - sched,perf,kvm: Fix preemption condition (Waiman Long) [2000293] - sched: Introduce task_is_running() (Waiman Long) [2000293] - sched: Unbreak wakeups (Waiman Long) [2000293] - seqlock: Remove trailing semicolon in macros (Waiman Long) [2000293] - locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal (Waiman Long) [2000293] - ptrace: make ptrace() fail if the tracee changed its pid unexpectedly (Waiman Long) [2000293] - sched: Rename sched_info_{queued,dequeued} (Waiman Long) [2000293] - locking/rwsem: Fix comment typo (Waiman Long) [2000293] - bpf: runqslower: Use task local storage (Waiman Long) [2000293] - lib/test_lockup.c: minimum fix to get it compiled on PREEMPT_RT (Waiman Long) [2000293] - seqlock: kernel-doc: Specify when preemption is automatically altered (Waiman Long) [2000293] - seqlock: Prefix internal seqcount_t-only macros with a "do_" (Waiman Long) [2000293] - rcu: Check and report missed fqs timer wakeup on RCU stall (Waiman Long) [2000293] - softirq: Move related code into one section (Waiman Long) [2000293] - seqlock: Rename __seqprop() users (Waiman Long) [2000293] - seqlock: avoid -Wshadow warnings (Waiman Long) [2000293] - locking/seqlocks: Fix kernel-doc warnings (Waiman Long) [2000293] - locking/seqlock: Tweak DEFINE_SEQLOCK() kernel doc (Waiman Long) [2000293] - seqlock: Unbreak lockdep (Waiman Long) [2000293] - seqlock: PREEMPT_RT: Do not starve seqlock_t writers (Waiman Long) [2000293] - seqlock: seqcount_LOCKNAME_t: Introduce PREEMPT_RT support (Waiman Long) [2000293] - seqlock: seqcount_t: Implement all read APIs as statement expressions (Waiman Long) [2000293] - seqlock: Use unique prefix for seqcount_t property accessors (Waiman Long) [2000293] - seqlock: seqcount_LOCKNAME_t: Standardize naming convention (Waiman Long) [2000293] - seqlock: seqcount latch APIs: Only allow seqcount_latch_t (Waiman Long) [2000293] - rbtree_latch: Use seqcount_latch_t (Waiman Long) [2000293] - x86/tsc: Use seqcount_latch_t (Waiman Long) [2000293] - timekeeping: Use seqcount_latch_t (Waiman Long) [2000293] - time/sched_clock: Mark sched_clock_read_begin/retry() as notrace (Waiman Long) [2000293] - time/sched_clock: Use raw_read_seqcount_latch() (Waiman Long) [2000293] - time/sched_clock: Use raw_read_seqcount_latch() during suspend (Waiman Long) [2000293] - time/sched_clock: Use seqcount_latch_t (Waiman Long) [2000293] - sched_clock: Expose struct clock_read_data (Waiman Long) [2000293] - timers/sched_clock: Include local timekeeping.h for missing declarations (Waiman Long) [2000293] - sched/clock: Move sched clock initialization and merge with generic clock (Waiman Long) [2000293] - userfaultfd: simplify fault handling (Waiman Long) [2000293] - rwsem: fix commas in initialisation (Waiman Long) [2000293] - lib/test_lockup.c: make test_inode static (Waiman Long) [2000293] - genirq: Provide irq_enter/exit_rcu() (Waiman Long) [2000293] - lib/test_lockup.c: add parameters for locking generic vfs locks (Waiman Long) [2000293] - lib/test_lockup.c: fix spelling mistake "iteraions" -> "iterations" (Waiman Long) [2000293] - lib/test_lockup: test module to generate lockups (Waiman Long) [2000293] - x86/tsc: Move inline keyword to the beginning of function declarations (Waiman Long) [2000293] - softirq: Don't skip softirq execution when softirq thread is parking (Waiman Long) [2000293] - sched/core: Convert task_struct.stack_refcount to refcount_t (Waiman Long) [2000293] - kernel/hung_task.c: break RCU locks based on jiffies (Waiman Long) [2000293] - x86/process: Avoid unnecessary NULL check in get_wchan() (Waiman Long) [2000293] - kernel/rwsem: Remove ifdef __init_rwsem code from rwsem.c (Waiman Long) [2000293] - misc: hpilo: map iLO shared memory by PCI revision id (Joseph Szczypek) [1985076] - misc: hpilo: MAINTAINERS: add entry for hpilo (Joseph Szczypek) [1985076] - misc: hpilo: avoid a useless memset (Joseph Szczypek) [1985076] - misc: hpilo: switch from 'pci_' to 'dma_' API (Joseph Szczypek) [1985076] - hpilo: Replace one-element array with flexible-array member (Joseph Szczypek) [1985076] - perf flamegraph: flamegraph.py script improvements (Michael Petlan) [2010269]- ceph: skip existing superblocks that are blocklisted or shut down when mounting (Jeffrey Layton) [2011462] - cpufreq: intel_pstate: Combine ->stop_cpu() and ->offline() (David Arcari) [2003695] - cpufreq: intel_pstate: Add Cometlake support in no-HWP mode (David Arcari) [2003695] - cpufreq: intel_pstate: Add Icelake servers support in no-HWP mode (David Arcari) [2003695] - i2c: i801: Add support for Intel Alder Lake PCH-M (David Arcari) [1929497] - i2c: i801: Add Block Write-Block Read Process Call support (David Arcari) [1929497] - pinctrl: tigerlake: Add Alder Lake-M ACPI ID (David Arcari) [1929501] - x86/microcode: Check for offline CPUs before requesting new microcode (Puneet Sethi) [1971878] - x86/resctrl: Fix a maybe-uninitialized build warning treated as error (Terry Bowman) [1994090] - x86/resctrl: Fix default monitoring groups reporting (Terry Bowman) [1994090] - PCI: Remove WARN_ON(in_interrupt()) (Myron Stowe) [1993262] - PCI: Apply CONFIG_PCI_DEBUG to entire drivers/pci hierarchy (Myron Stowe) [1993262] - PCI: Add Silicom Denmark vendor ID (Myron Stowe) [1993262] - PCI: Align checking of syscall user config accessors (Myron Stowe) [1993262] - PCI: Decline to resize resources if boot config must be preserved (Myron Stowe) [1993262] - PCI/LINK: Remove bandwidth notification (Myron Stowe) [1993262] - PCI: acpiphp: Remove unused acpiphp_callback typedef (Myron Stowe) [1993262] - PCI: Fix pci_register_io_range() memory leak (Myron Stowe) [1993262] - EDAC/amd64: Add AMD family 17h model 60h PCI IDs (Aristeu Rozanski) [1930489] - EDAC/amd64: Add PCI device IDs for family 17h, model 70h (Aristeu Rozanski) [1930489] - scsi: bnx2fc: Remove meaningless bnx2fc_abts_cleanup() return value assignment (Nilesh Javali) [1983956] - scsi: bnx2fc: Return failure if io_req is already in ABTS processing (Nilesh Javali) [1983956] - scsi: target: ibmvscsi_tgt: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: Fix sense key for invalid EXTENDED COPY request (Maurizio Lombardi) [2004470] - scsi: target: Allows backend drivers to fail with specific sense codes (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Fix possible null-pointer dereference in pscsi_complete_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Drop unnecessary se_cmd ASC/ASCQ members (Maurizio Lombardi) [2004470] - scsi: target: sbp: Drop incorrect ASC/ASCQ usage (Maurizio Lombardi) [2004470] - scsi: target: core: Avoid using lun_tg_pt_gp after unlock (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Add new feature KEEP_BUF (Maurizio Lombardi) [2004470] - scsi: target: Remove redundant assignment to variable ret (Maurizio Lombardi) [2004470] - scsi: target: Fix NULL dereference on XCOPY completion (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove redundant continue statement (Maurizio Lombardi) [2004470] - scsi: target: Use standard SAM status types (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Fix boolreturn.cocci warnings (Maurizio Lombardi) [2004470] - scsi: target: core: Add the VERSION DESCRIPTOR fields to the INQUIRY data (Maurizio Lombardi) [2004470] - scsi: target: core: Bump INQUIRY VERSION to SPC-4 (Maurizio Lombardi) [2004470] - scsi: target: core: Add configurable IEEE Company ID attribute (Maurizio Lombardi) [2004470] - scsi: target: core: Unify NAA identifier generation (Maurizio Lombardi) [2004470] - scsi: target: sbp_target: Remove redundant assignment to pg_size (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Rename TCM_DEV_BIT_PLUGGED to TCMU_DEV_BIT_PLUGGED (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Drop unnecessary container_of() (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Switch to kmemdup_nul() (Maurizio Lombardi) [2004470] - scsi: target: iblock: Fix smp_processor_id() BUG messages (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Fix xarray RCU warning (Maurizio Lombardi) [2004470] - scsi: target: core: Avoid smp_processor_id() in preemptible code (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not found (Maurizio Lombardi) [2004470] - scsi: target: tcm_fc: Fix a kernel-doc header (Maurizio Lombardi) [2004470] - scsi: target: Shorten ALUA error messages (Maurizio Lombardi) [2004470] - scsi: target: Fix two format specifiers (Maurizio Lombardi) [2004470] - scsi: target: Compare explicitly with SAM_STAT_GOOD (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Make data_pages_per_blk changeable via configfs (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace block size definitions with new udev members (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Remove function tcmu_get_block_page() (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Support DATA_BLOCK_SIZE = N * PAGE_SIZE (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Prepare for PAGE_SIZE != DATA_BLOCK_SIZE (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Adjust names of variables and definitions (Maurizio Lombardi) [2004470] - scsi: target: Make the virtual LUN 0 device (Maurizio Lombardi) [2004470] - scsi: target: Add the DUMMY flag to rd_mcp (Maurizio Lombardi) [2004470] - scsi: target: Fix htmldocs warning in target_submit_prep() (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Adjust parameter in call to tcmu_blocks_release() (Maurizio Lombardi) [2004470] - scsi: target: core: file: Don't duplicate memset(0xff) (Maurizio Lombardi) [2004470] - scsi: target: core: pr: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: configfs: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro PRINT_BUF (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro TEXT_LEN (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro ISCSI_INST_LAST_FAILURE_TYPE (Maurizio Lombardi) [2004470] - scsi: target: core: Remove unused macros NONE and ISPRINT (Maurizio Lombardi) [2004470] - scsi: target: core: Get rid of warning in compare_and_write_do_cmp() (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Remove unused macro ISPRINT (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Fix warning in pscsi_complete_cmd() (Maurizio Lombardi) [2004470] - scsi: target: iblock: Fix type of logs_per_phys (Maurizio Lombardi) [2004470] - scsi: target: iblock: Trim line longer than 80 characters (Maurizio Lombardi) [2004470] - scsi: target: iblock: Remove an extra argument (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Use GFP_NOIO while handling cmds or holding cmdr_lock (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace radix_tree with XArray (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace IDR by XArray (Maurizio Lombardi) [2004470] - scsi: target: core: Make completion affinity configurable (Maurizio Lombardi) [2004470] - scsi: target: core: Flush submission work during TMR processing (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Add backend plug/unplug callouts (Maurizio Lombardi) [2004470] - scsi: target: iblock: Add backend plug/unplug callouts (Maurizio Lombardi) [2004470] - scsi: target: core: Fix backend plugging (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Use LIO wq cmd submission helper (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Use block cmd allocator for se_cmds (Maurizio Lombardi) [2004470] - scsi: target: core: Add workqueue based cmd submission (Maurizio Lombardi) [2004470] - scsi: target: core: Add gfp_t arg to target_cmd_init_cdb() (Maurizio Lombardi) [2004470] - scsi: target: core: Remove target_submit_cmd_map_sgls() (Maurizio Lombardi) [2004470] - scsi: target: srpt: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: qla2xxx: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: tcm_qla2xxx: Remove BUG_ON(in_interrupt()) (Maurizio Lombardi) [2004470] - scsi: qla2xxx: Move sess cmd list/lock to driver (Maurizio Lombardi) [2004470] - scsi: qla2xxx: Drop TARGET_SCF_LOOKUP_LUN_FROM_TAG (Maurizio Lombardi) [2004470] - scsi: target: tcm_fc: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: sbp_target: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: core: Break up target_submit_cmd_map_sgls() (Maurizio Lombardi) [2004470] - scsi: target: core: Rename transport_init_se_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Drop kref_get_unless_zero() in target_get_sess_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Move t_task_cdb initialization (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Fix zero tag inside a trace event (Maurizio Lombardi) [2004470] - nfsd: move fsnotify on client creation outside spinlock (Steve Dickson) [1719330] - nfsd: report client confirmation status in "info" file (Steve Dickson) [1719330] - nfsd: fsnotify on rmdir under nfsd/clients/ (Steve Dickson) [1719330]- mm: gup: fix potential pgmap refcnt leak in __gup_device_huge() (Waiman Long) [2009258] - mm/gup: check for isolation errors (Waiman Long) [2009258] - mm/gup: return an error on migration failure (Waiman Long) [2009258] - mm/gup: check every subpage of a compound page during isolation (Waiman Long) [2009258] - mm/gup: don't pin migrated cma pages in movable zone (Waiman Long) [2009258] - mm/gup: add a range variant of unpin_user_pages_dirty_lock() (Waiman Long) [2009258] - mm/gup: decrement head page once for group of subpages (Waiman Long) [2009258] - mm/gup: add compound page list iterator (Waiman Long) [2009258] - mm/gup: protect unpin_user_pages() against npages==-ERRNO (Waiman Long) [2009258] - mm, memcg: remove unused functions (Waiman Long) [2008341] - mm,vmscan: fix divide by zero in get_scan_count (Waiman Long) [2008341] - mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim (Waiman Long) [2008341] - mm/memcg: fix incorrect flushing of lruvec data in obj_stock (Waiman Long) [2008341] - mm/memcg: fix NULL pointer dereference in memcg_slab_free_hook() (Waiman Long) [2008341] - mm: memcontrol: fix blocking rstat function called from atomic cgroup1 thresholding code (Waiman Long) [2008341] - cgroup: rstat: fix A-A deadlock on 32bit around u64_stats_sync (Waiman Long) [2008341] - percpu: flush tlb in pcpu_reclaim_populated() (Waiman Long) [2008341] - mm/memcontrol.c: fix kerneldoc comment for mem_cgroup_calculate_protection (Waiman Long) [2008341] - memcontrol: use flexible-array member (Waiman Long) [2008341] - mm: vmscan: remove noinline_for_stack (Waiman Long) [2008341] - mm: memcontrol: move obj_cgroup_uncharge_pages() out of css_set_lock (Waiman Long) [2008341] - mm: memcontrol: simplify the logic of objcg pinning memcg (Waiman Long) [2008341] - mm: memcontrol: rename lruvec_holds_page_lru_lock to page_matches_lruvec (Waiman Long) [2008341] - mm: memcontrol: simplify lruvec_holds_page_lru_lock (Waiman Long) [2008341] - mm: memcontrol: remove the pgdata parameter of mem_cgroup_page_lruvec (Waiman Long) [2008341] - mm: memcontrol: bail out early when !mm in get_mem_cgroup_from_mm (Waiman Long) [2008341] - mm: memcontrol: fix page charging in page replacement (Waiman Long) [2008341] - percpu: optimize locking in pcpu_balance_workfn() (Waiman Long) [2008341] - percpu: initialize best_upa variable (Waiman Long) [2008341] - percpu: rework memcg accounting (Waiman Long) [2008341] - mm, memcg: introduce mem_cgroup_kmem_disabled() (Waiman Long) [2008341] - mm, memcg: mark cgroup_memory_nosocket, nokmem and noswap as __ro_after_init (Waiman Long) [2008341] - mm: vmscan: shrink deferred objects proportional to priority (Waiman Long) [2008341] - mm: memcontrol: reparent nr_deferred when memcg offline (Waiman Long) [2008341] - mm: vmscan: don't need allocate shrinker->nr_deferred for memcg aware shrinkers (Waiman Long) [2008341] - mm: vmscan: use per memcg nr_deferred of shrinker (Waiman Long) [2008341] - mm: vmscan: add per memcg shrinker nr_deferred (Waiman Long) [2008341] - mm: vmscan: use a new flag to indicate shrinker is registered (Waiman Long) [2008341] - mm: vmscan: add shrinker_info_protected() helper (Waiman Long) [2008341] - mm: memcontrol: rename shrinker_map to shrinker_info (Waiman Long) [2008341] - mm: vmscan: use kvfree_rcu instead of call_rcu (Waiman Long) [2008341] - mm: vmscan: remove memcg_shrinker_map_size (Waiman Long) [2008341] - mm: vmscan: use shrinker_rwsem to protect shrinker_maps allocation (Waiman Long) [2008341] - mm: vmscan: consolidate shrinker_maps handling code (Waiman Long) [2008341] - mm: vmscan: use nid from shrink_control for tracepoint (Waiman Long) [2008341] - linux/memcontrol.h: remove duplicate struct declaration (Waiman Long) [2008341] - memcg: charge before adding to swapcache on swapin (Waiman Long) [2008341] - kselftests: cgroup: update kmem test for new vmstat implementation (Waiman Long) [2008341] - mm: memcontrol: consolidate lruvec stat flushing (Waiman Long) [2008341] - mm: memcontrol: switch to rstat (Waiman Long) [2008341] - cgroup: rstat: punt root-level optimization to individual controllers (Waiman Long) [2008341] - cgroup: rstat: support cgroup1 (Waiman Long) [2008341] - mm: memcontrol: privatize memcg_page_state query functions (Waiman Long) [2008341] - mm: memcontrol: kill mem_cgroup_nodeinfo() (Waiman Long) [2008341] - memcg: enable memcg oom-kill for __GFP_NOFAIL (Waiman Long) [2008341] - memcg: cleanup root memcg checks (Waiman Long) [2008341] - mm: memcontrol: fix kernel stack account (Waiman Long) [2008341] - mm: page-writeback: simplify memcg handling in test_clear_page_writeback() (Waiman Long) [2008341] - percpu: implement partial chunk depopulation (Waiman Long) [2008341] - percpu: use pcpu_free_slot instead of pcpu_nr_slots - 1 (Waiman Long) [2008341] - percpu: factor out pcpu_check_block_hint() (Waiman Long) [2008341] - percpu: split __pcpu_balance_workfn() (Waiman Long) [2008341] - percpu: fix a comment about the chunks ordering (Waiman Long) [2008341] - mm/compaction: remove rcu_read_lock during page compaction (Waiman Long) [2008341] - mm/vmscan.c: make lruvec_lru_size() static (Waiman Long) [2008341] - include/linux/mm_inline.h: fold __update_lru_size() into its sole caller (Waiman Long) [2008341] - include/linux/mm_inline.h: fold page_lru_base_type() into its sole caller (Waiman Long) [2008341] - mm: VM_BUG_ON lru page flags (Waiman Long) [2008341] - mm: add __clear_page_lru_flags() to replace page_off_lru() (Waiman Long) [2008341] - mm/swap.c: don't pass "enum lru_list" to del_page_from_lru_list() (Waiman Long) [2008341] - mm/swap.c: don't pass "enum lru_list" to trace_mm_lru_insertion() (Waiman Long) [2008341] - mm: don't pass "enum lru_list" to lru list addition functions (Waiman Long) [2008341] - include/linux/mm_inline.h: shuffle lru list addition and deletion functions (Waiman Long) [2008341] - mm/vmscan.c: use add_page_to_lru_list() (Waiman Long) [2008341] - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback) (Waiman Long) [2008341] - mm: remove superfluous __ClearPageActive() (Waiman Long) [2008341] - mm, memcg: decouple e{low,min} state mutations from protection checks (Waiman Long) [2008341] - Revert "cgroup: Add memory barriers to plug cgroup_rstat_updated() race window" (Waiman Long) [2008341] - mm/memcontrol.c: allocate shrinker_map on appropriate NUMA node (Waiman Long) [2008341] - include/bitmap.h: add new functions to documentation (Waiman Long) [2008341] - include/bitmap.h: add missing parameter in docs (Waiman Long) [2008341] - bitmap: genericize percpu bitmap region iterators (Waiman Long) [2008341] - cgroup, rstat: Don't flush subtree root unless necessary (Waiman Long) [2008341] - mm/memcg: Move mem_cgroup kABI compatibility structure into rh_kabi_memcg.h (Waiman Long) [2008341] - mm/swap: consider max pages in iomap_swapfile_add_extent (Brian Foster) [1969326] - mm/slub: Fix backtrace of objects to handle redzone adjustment (Waiman Long) [2008340] - powerpc/powernv: Fix CPU idle to be called with IRQs disabled (Waiman Long) [2008340] - torture: Fix grace-period rate output (Waiman Long) [2008340] - rcu: Fix kfree_rcu() docbook errors (Waiman Long) [2008340] - rcu/nocb: Perform deferred wake up before last idle's need_resched() check (Waiman Long) [2008340] - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers (Waiman Long) [2008340] - idle: Prevent late-arriving interrupts from disrupting offline (Waiman Long) [2008340] - torture: Maintain torture-specific set of CPUs-online books (Waiman Long) [2008340] - torture: Clean up after torture-test CPU hotplugging (Waiman Long) [2008340] - rcutorture: Make object_debug also double call_rcu() heap object (Waiman Long) [2008340] - torture: Throttle VERBOSE_TOROUT_*() output (Waiman Long) [2008340] - torture: Make refscale throttle high-rate printk()s (Waiman Long) [2008340] - rcutorture: Use hrtimers for reader and writer delays (Waiman Long) [2008340] - torture: Make stutter use torture_hrtimeout_*() functions (Waiman Long) [2008340] - rcutorture: Use torture_hrtimeout_jiffies() to avoid busy-waits (Waiman Long) [2008340] - torture: Add fuzzed hrtimer-based sleep functions (Waiman Long) [2008340] - rcutorture: Make rcu_torture_fakewriter() use blocking wait primitives (Waiman Long) [2008340] - rcutorture: Make synctype[] and nsynctype be static global (Waiman Long) [2008340] - rcutorture: Require entire stutter period be post-boot (Waiman Long) [2008340] - refscale: Allow summarization of verbose output (Waiman Long) [2008340] - torture: Allow standalone kvm-recheck.sh run detect --trust-make (Waiman Long) [2008340] - torture: Simplify exit-code plumbing for kvm-recheck.sh and kvm-find-errors.sh (Waiman Long) [2008340] - torture: s/STOP/STOP.1/ to avoid scenario collision (Waiman Long) [2008340] - torture: Add --dryrun batches to help schedule a distributed run (Waiman Long) [2008340] - torture: Stop hanging on panic (Waiman Long) [2008340] - torture: Add kvm.sh test summary to end of log file (Waiman Long) [2008340] - torture: Make kvm.sh include --kconfig arguments in CPU calculation (Waiman Long) [2008340] - torture: Make kvm.sh return failure upon build failure (Waiman Long) [2008340] - torture: Print run duration at end of kvm.sh execution (Waiman Long) [2008340] - torture: Make kvm.sh arguments accumulate (Waiman Long) [2008340] - torture: Make kvm.sh "Test Summary" date be end of test (Waiman Long) [2008340] - tools/rcutorture: Make identify_qemu_vcpus() independent of local language (Waiman Long) [2008340] - torture: Add config2csv.sh script to compare torture scenarios (Waiman Long) [2008340] - torture: Prepare for splitting qemu execution from kvm-test-1-run.sh (Waiman Long) [2008340] - torture: Allow kvm.sh --datestamp to specify subdirectories (Waiman Long) [2008340] - torture: Make kvm.sh "--dryrun sched" summarize number of builds (Waiman Long) [2008340] - torture: Make kvm.sh "--dryrun sched" summarize number of batches (Waiman Long) [2008340] - torture: Make --kcsan specify lockdep (Waiman Long) [2008340] - rcu: Do not NMI offline CPUs (Waiman Long) [2008340] - rcu: For RCU grace-period kthread starvation, dump last CPU it ran on (Waiman Long) [2008340] - rcu: Mark obtuse portion of stall warning as internal debug (Waiman Long) [2008340] - scftorture: Add debug output for wrong-CPU warning (Waiman Long) [2008340] - rcutorture: Add testing for RCU's global memory ordering (Waiman Long) [2008340] - rcutorture: Add reader-side tests of polling grace-period API (Waiman Long) [2008340] - rcutorture: Add writer-side tests of polling grace-period API (Waiman Long) [2008340] - rcutorture: Prepare for ->start_gp_poll and ->poll_gp_state (Waiman Long) [2008340] - srcu: Add comment explaining cookie overflow/wrap (Waiman Long) [2008340] - srcu: Document polling interfaces for Tree SRCU grace periods (Waiman Long) [2008340] - srcu: Provide polling interfaces for Tree SRCU grace periods (Waiman Long) [2008340] - srcu: Provide polling interfaces for Tiny SRCU grace periods (Waiman Long) [2008340] - srcu: Provide internal interface to start a Tree SRCU grace period (Waiman Long) [2008340] - srcu: Provide internal interface to start a Tiny SRCU grace period (Waiman Long) [2008340] - srcu: Make Tiny SRCU use multi-bit grace-period counter (Waiman Long) [2008340] - rcu: Enable rcu_normal_after_boot unconditionally for RT (Waiman Long) [2008340] - rcu: Unconditionally use rcuc threads on PREEMPT_RT (Waiman Long) [2008340] - rcu: Make RCU_BOOST default on CONFIG_PREEMPT_RT (Waiman Long) [2008340] - rcu: Eliminate the __kvfree_rcu() macro (Waiman Long) [2008340] - rcu: Introduce kfree_rcu() single-argument macro (Waiman Long) [2008340] - rcu: Record kvfree_call_rcu() call stack for KASAN (Waiman Long) [2008340] - rcu: Do any deferred nocb wakeups at CPU offline time (Waiman Long) [2008340] - rcu/nocb: Code-style nits in callback-offloading toggling (Waiman Long) [2008340] - rcu/nocb: Add nocb CB kthread list to show_rcu_nocb_state() output (Waiman Long) [2008340] - rcu/nocb: Add grace period and task state to show_rcu_nocb_state() output (Waiman Long) [2008340] - tools/rcutorture: Support nocb toggle in TREE01 (Waiman Long) [2008340] - rcutorture: Test runtime toggling of CPUs' callback offloading (Waiman Long) [2008340] - cpu/hotplug: Add lockdep_is_cpus_held() (Waiman Long) [2008340] - rcu/nocb: Locally accelerate callbacks as long as offloading isn't complete (Waiman Long) [2008340] - rcu/nocb: Process batch locally as long as offloading isn't complete (Waiman Long) [2008340] - rcu/nocb: Only cond_resched() from actual offloaded batch processing (Waiman Long) [2008340] - rcu/nocb: Set SEGCBLIST_SOFTIRQ_ONLY at the very last stage of de-offloading (Waiman Long) [2008340] - rcu/nocb: Flush bypass before setting SEGCBLIST_SOFTIRQ_ONLY (Waiman Long) [2008340] - rcu/nocb: Shutdown nocb timer on de-offloading (Waiman Long) [2008340] - rcu/nocb: Re-offload support (Waiman Long) [2008340] - rcu/nocb: De-offloading GP kthread (Waiman Long) [2008340] - rcu/nocb: Don't deoffload an offline CPU with pending work (Waiman Long) [2008340] - rcu/nocb: De-offloading CB kthread (Waiman Long) [2008340] - rcu/nocb: Always init segcblist on CPU up (Waiman Long) [2008340] - rcu/nocb: Provide basic callback offloading state machine bits (Waiman Long) [2008340] - rcu/nocb: Turn enabled/offload states into a common flag (Waiman Long) [2008340] - rcu/segcblist: Add debug checks for segment lengths (Waiman Long) [2008340] - rcu/trace: Add tracing for how segcb list changes (Waiman Long) [2008340] - rcu/tree: segcblist: Remove redundant smp_mb()s (Waiman Long) [2008340] - rcu/segcblist: Add counters to segcblist datastructure (Waiman Long) [2008340] - rcu/segcblist: Add additional comments to explain smp_mb() (Waiman Long) [2008340] - rcu/tree: Make rcu_do_batch count how many callbacks were executed (Waiman Long) [2008340] - rcu: Make call_rcu() print mem_dump_obj() info for double-freed callback (Waiman Long) [2008340] - mm: Make mem_obj_dump() vmalloc() dumps include start and length (Waiman Long) [2008340] - mm: Make mem_dump_obj() handle vmalloc() memory (Waiman Long) [2008340] - mm: Make mem_dump_obj() handle NULL and zero-sized pointers (Waiman Long) [2008340] - mm: Add mem_dump_obj() to print source of memory block (Waiman Long) [2008340] - rcu: Make TASKS_TRACE_RCU select IRQ_WORK (Waiman Long) [2008340] - rcu-tasks: Add RCU-tasks self tests (Waiman Long) [2008340] - rcu-tasks: Move RCU-tasks initialization to before early_initcall() (Waiman Long) [2008340] - rcu: Add lockdep_assert_irqs_disabled() to raw_spin_unlock_rcu_node() macros (Waiman Long) [2008340] - rcu: Add lockdep_assert_irqs_disabled() to rcu_sched_clock_irq() and callees (Waiman Long) [2008340] - rcutorture: Don't do need_resched() testing if ->sync is NULL (Waiman Long) [2008340] - scftorture: Add full-test stutter capability (Waiman Long) [2008340] - torture: Allow alternative forms of kvm.sh command-line arguments (Waiman Long) [2008340] - rcutorture: Small code cleanups (Waiman Long) [2008340] - torture: Accept time units on kvm.sh --duration argument (Waiman Long) [2008340] - rcutorture: Make stutter_wait() caller restore priority (Waiman Long) [2008340] - torture: Force weak-hashed pointers on console log (Waiman Long) [2008340] - rcutorture: Prevent hangs for invalid arguments (Waiman Long) [2008340] - torture: Prevent jitter processes from delaying failed run (Waiman Long) [2008340] - rcutorture: Adjust scenarios SRCU-t and SRCU-u to make kconfig happy (Waiman Long) [2008340] - refscale: Prevent hangs for invalid arguments (Waiman Long) [2008340] - rcuscale: Prevent hangs for invalid arguments (Waiman Long) [2008340] - torture: Exclude "NOHZ tick-stop error" from fatal errors (Waiman Long) [2008340] - rcuscale: Avoid divide by zero (Waiman Long) [2008340] - rcuscale: Add RCU Tasks Trace (Waiman Long) [2008340] - scftorture: Add an alternative IPI vector (Waiman Long) [2008340] - torture: Make torture_stutter() use hrtimer (Waiman Long) [2008340] - torture: Periodically pause in stutter_wait() (Waiman Long) [2008340] - torture: Don't kill gdb sessions (Waiman Long) [2008340] - refscale: Bounds-check module parameters (Waiman Long) [2008340] - rcu-tasks: Make the units of ->init_fract be jiffies (Waiman Long) [2008340] - rcutorture: Make grace-period kthread report match RCU flavor being tested (Waiman Long) [2008340] - rcu-tasks: Convert rcu_tasks_wait_gp() for-loop to while-loop (Waiman Long) [2008340] - rcutorture: Make preemptible TRACE02 enable lockdep (Waiman Long) [2008340] - srcu: Use a more appropriate lockdep helper (Waiman Long) [2008340] - srcu: Take early exit on memory-allocation failure (Waiman Long) [2008340] - rcu: Fix a typo in rcu_blocking_is_gp() header comment (Waiman Long) [2008340] - rcu: Prevent lockdep-RCU splats on lock acquisition/release (Waiman Long) [2008340] - rcu/tree: nocb: Avoid raising softirq for offloaded ready-to-execute CBs (Waiman Long) [2008340] - rcu/tree: Make struct kernel_param_ops definitions const (Waiman Long) [2008340] - rcu/tree: Add a warning if CPU being onlined did not report QS already (Waiman Long) [2008340] - rcu: Clarify nocb kthreads naming in RCU_NOCB_CPU config (Waiman Long) [2008340] - rcu: Fix single-CPU check in rcu_blocking_is_gp() (Waiman Long) [2008340] - rcu: Implement rcu_segcblist_is_offloaded() config dependent (Waiman Long) [2008340] - list.h: Update comment to explicitly note circular lists (Waiman Long) [2008340] - rcu: Panic after fixed number of stalls (Waiman Long) [2008340] - x86/smpboot: Move rcu_cpu_starting() earlier (Waiman Long) [2008340] - torture: Replace cpu_up/down() with add/remove_cpu() (Waiman Long) [2008340] - PCI/PTM: Remove error message at boot (Myron Stowe) [1993252] - PCI: Mark AMD Navi14 GPU ATS as broken (Myron Stowe) [1993252] - PCI: vmd: Update type of the __iomem pointers (Myron Stowe) [1993252] - PCI: Unify ECAM constants in native PCI Express drivers (Myron Stowe) [1993252] - PCI: Add function 1 DMA alias quirk for Marvell 9215 SATA controller (Myron Stowe) [1993252] - PCI: Mark AMD Raven iGPU ATS as broken in some platforms (Myron Stowe) [1993252] - PCI: Disable PTM during suspend to save power (Myron Stowe) [1993252] - PCI/PTM: Save/restore Precision Time Measurement Capability for suspend/resume (Myron Stowe) [1993252] - PCI: Add sysfs attribute for device power state (Myron Stowe) [1993252] - PCI/MSI: Set device flag indicating only 32-bit MSI support (Myron Stowe) [1993252] - PCI/MSI: Move MSI/MSI-X flags updaters to msi.c (Myron Stowe) [1993252] - PCI/MSI: Move MSI/MSI-X init to msi.c (Myron Stowe) [1993252] - PCI: Use predefined Pericom Vendor ID (Myron Stowe) [1993252] - PCI: Disable MSI for Pericom PCIe-USB adapter (Myron Stowe) [1993252] - PCI: Reduce pci_set_cacheline_size() message to debug level (Myron Stowe) [1993252] - PCI: Remove unused HAVE_PCI_SET_MWI (Myron Stowe) [1993252] - PCI: Fix overflow in command-line resource alignment requests (Myron Stowe) [1993252] - PCI: Bounds-check command-line resource alignment requests (Myron Stowe) [1993252] - PCI: Fix kernel-doc markup (Myron Stowe) [1993252] - PCI: ibmphp: Remove unneeded break (Myron Stowe) [1993252] - PCI/ACPI: Fix companion lookup for device 0 on the root bus (Myron Stowe) [1993252] - PCI: Keep both device and resource name for config space remaps (Myron Stowe) [1993252] - PCI: Return u16 from pci_find_ext_capability() and similar (Myron Stowe) [1993252] - PCI: Return u8 from pci_find_capability() and similar (Myron Stowe) [1993252] - PCI: Avoid duplicate IDs in driver dynamic IDs list (Myron Stowe) [1993252] - PCI: Move pci_match_device() ahead of new_id_store() (Myron Stowe) [1993252] - PCI: Decode PCIe 64 GT/s link speed (Myron Stowe) [1993252] - PCI: host-generic: Support building as modules (Myron Stowe) [1993252] - ata: sata_nv: Fix retrieving of active qcs (Tomas Henzl) [1921465] - ata: pata_ns87415.c: Document support on parisc with superio chip (Tomas Henzl) [1921465] - ata: fix some kernel-doc markups (Tomas Henzl) [1921465] - sata, highbank: simplify the return expression of ahci_highbank_suspend (Tomas Henzl) [1921465] - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks (Tomas Henzl) [1921465] - ata: ahci: use ata_link_info() instead of ata_link_printk() (Tomas Henzl) [1921465] - libata: Use per port sync for detach (Tomas Henzl) [1921465] - ata/libata: Fix usage of page address by page_address in ata_scsi_mode_select_xlat function (Tomas Henzl) [1921465] - sata_rcar: handle pm_runtime_get_sync failure cases (Tomas Henzl) [1921465] - ata: sata_inic162x fix a spelling issue (Tomas Henzl) [1921465] - ata: libata-core: fix a doc warning (Tomas Henzl) [1921465] - ata: ahci: Add sysfs attribute to show remapped NVMe device count (Tomas Henzl) [1921465] - ata: ahci-imx: remove redundant assignment to ret (Tomas Henzl) [1921465] - libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set (Tomas Henzl) [1921465] - ata: move ata_eh_analyze_ncq_error() & co. to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-eh.c (Tomas Henzl) [1921465] - ata: move ata_sas_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-scsi.c (Tomas Henzl) [1921465] - ata: move sata_deb_timing_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: move ata_qc_complete_multiple() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_link_hardreset() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_link_{debounce,resume}() to libata-sata.c (Tomas Henzl) [1921465] - ata: move *sata_set_spd*() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_scr_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-core.c (Tomas Henzl) [1921465] - ata: fix CodingStyle issues in PATA timings code (Tomas Henzl) [1921465] - ata: remove EXPORT_SYMBOL_GPL()s not used by modules (Tomas Henzl) [1921465] - ata: move EXPORT_SYMBOL_GPL()s close to exported code (Tomas Henzl) [1921465] - ata: optimize ata_scsi_rbuf[] size (Tomas Henzl) [1921465] - ata: optimize struct ata_force_param size (Tomas Henzl) [1921465] - ata: use COMMAND_LINE_SIZE for ata_force_param_buf[] size (Tomas Henzl) [1921465] - ata: simplify ata_scsiop_inq_89() (Tomas Henzl) [1921465] - sata_promise: use ata_cable_sata() (Tomas Henzl) [1921465] - ata: make SATA_PMP option selectable only if any SATA host driver is enabled (Tomas Henzl) [1921465] - ata: expose ncq_enable_prio sysfs attribute only on NCQ capable hosts (Tomas Henzl) [1921465] - ata: remove stale maintainership information from core code (Tomas Henzl) [1921465] - libata: Assign OF node to the SCSI device (Tomas Henzl) [1921465] - libata: Remove extra scsi_host_put() in ata_scsi_add_hosts() (Tomas Henzl) [1921465] - libata: transport: Use scnprintf() for avoiding potential buffer overflow (Tomas Henzl) [1921465] - ata/acard_ahci: remove unused variable n_elem (Tomas Henzl) [1921465] - ata: ahci_brcm: BCM7216 reset is self de-asserting (Tomas Henzl) [1921465] - ata: ahci_brcm: Perform reset after obtaining resources (Tomas Henzl) [1921465] - ata: brcm: fix reset controller API usage (Tomas Henzl) [1921465] - ata: brcm: mark PM functions as __maybe_unused (Tomas Henzl) [1921465] - ata: ahci_brcm: Support BCM7216 reset controller name (Tomas Henzl) [1921465] - ata: ahci_brcm: Add a shutdown callback (Tomas Henzl) [1921465] - ata: ahci_brcm: Manage reset line during suspend/resume (Tomas Henzl) [1921465] - ata: ahci_brcm: Add missing clock management during recovery (Tomas Henzl) [1921465] - ata: ahci_brcm: BCM7425 AHCI requires AHCI_HFLAG_DELAY_ENGINE (Tomas Henzl) [1921465] - ata: ahci_brcm: Fix AHCI resources management (Tomas Henzl) [1921465] - ata: libahci_platform: Export again ahci_platform_able_phys() (Tomas Henzl) [1921465] - libata: Fix retrieving of active qcs (Tomas Henzl) [1921465] - ata: pata_artop: make arrays static const, makes object smaller (Tomas Henzl) [1921465] - ata_piix: remove open-coded dmi_match(DMI_OEM_STRING) (Tomas Henzl) [1921465] - ata: sata_mv, avoid trigerrable BUG_ON (Tomas Henzl) [1921465] - ata: make qc_prep return ata_completion_errors (Tomas Henzl) [1921465] - ata: define AC_ERR_OK (Tomas Henzl) [1921465] - libata: Ensure ata_port probe has completed before detach (Tomas Henzl) [1921465] - ahci: tegra: use regulator_bulk_set_supply_names() (Tomas Henzl) [1921465] - ahci: Add support for Amazon's Annapurna Labs SATA controller (Tomas Henzl) [1921465] - ata: libahci_platform: Fix regulator_get_optional() misuse (Tomas Henzl) [1921465] - ata: ahci-imx: Covert to use GPIO descriptor (Tomas Henzl) [1921465] - libata/ahci: Fix PCS quirk application (Tomas Henzl) [1921465] - libata/ahci: Drop PCS quirk for Denverton and beyond (Tomas Henzl) [1921465] - libata: switch remaining drivers to use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_sil24: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_qstor: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_nv: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_mv: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - pdc_adma: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - ahci: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - acard_ahci: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - libata: add SG safety checks in SFF pio transfers (Tomas Henzl) [1921465] - libata: have ata_scsi_rw_xlat() fail invalid passthrough requests (Tomas Henzl) [1921465] - ata: rb532_cf: Fix unused variable warning in rb532_pata_driver_probe (Tomas Henzl) [1921465] - ata: libahci: do not complain in case of deferred probe (Tomas Henzl) [1921465] - libata: zpodd: Fix small read overflow in zpodd_get_mech_type() (Tomas Henzl) [1921465] - ata: libahci_platform: remove redundant dev_err message (Tomas Henzl) [1921465] - drivers: ata: ahci_sunxi: Increased SATA/AHCI DMA TX/RX FIFOs (Tomas Henzl) [1921465] - libata: Drop firmware version check from the ST1000LM024 quirk (Tomas Henzl) [1921465] - ata: sata_sil24: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata:sata_qstor: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: sata_nv: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: pdc_adma: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: libahci: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: acard-ahci: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - libata: don't request sense data on !ZAC ATA devices (Tomas Henzl) [1921465] - libata: Extend quirks for the ST1000LM024 drives with NOLPM quirk (Tomas Henzl) [1921465] - sata_rcar: Remove ata_host_alloc() error printing (Tomas Henzl) [1921465] - libata: fix using DMA buffers on stack (Tomas Henzl) [1921465] - ata: libahci: Only warn for AHCI_HFLAG_MULTI_MSI set when genuine custom irq handler implemented (Tomas Henzl) [1921465] - libata: fix a typo in comment (Tomas Henzl) [1921465] - sata_rcar: fix deferred probing (Tomas Henzl) [1921465] - ata: sata_highbank: Convert to use GPIO descriptors (Tomas Henzl) [1921465] - sata_rcar: convert to SPDX identifiers (Tomas Henzl) [1921465] - ata: ep93xx: Use proper enums for directions (Tomas Henzl) [1921465] - ata: ahci_brcm: Allow using driver or DSL SoCs (Tomas Henzl) [1921465] - ata: ahci_brcm: Match BCM63138 compatible strings (Tomas Henzl) [1921465] - ata: ahci_brcm: Allow optional reset controller to be used (Tomas Henzl) [1921465] - libata: mask swap internal and hardware tag (Tomas Henzl) [1921465] - pata_atiixp: Remove unnecessary parentheses (Tomas Henzl) [1921465] - ata: ahci_sunxi: add support for r40 (Tomas Henzl) [1921465] - ata: ahci_platform: add support for PHY controller regulator (Tomas Henzl) [1921465] - ata: ahci_platform: add support for AHCI controller regulator (Tomas Henzl) [1921465] - libata: Use SMART LBAM/LBAH password defines (Tomas Henzl) [1921465] - ata: ahci: Convert to using pOFn instead of device_node.name (Tomas Henzl) [1921465] - ata: ftide010: Add a quirk for SQ201 (Tomas Henzl) [1921465] - ata: ahci_platform: enable to get and control reset (Tomas Henzl) [1921465] - ata: libahci_platform: add reset control support (Tomas Henzl) [1921465] - ata: add an extra argument to ahci_platform_get_resources() (Tomas Henzl) [1921465] - ata: sata_rcar: exclude setting of PHY registers in Gen3 (Tomas Henzl) [1921465] - ata: sata_rcar: really mask all interrupts on Gen2 and later (Tomas Henzl) [1921465] - ata: libahci: Allow reconfigure of DEVSLP register (Tomas Henzl) [1921465] - ata: libahci: Correct setting of DEVSLP register (Tomas Henzl) [1921465] - ata: ahci: Enable DEVSLP by default on x86 with SLP_S0 (Tomas Henzl) [1921465] - ata: ahci: Support state with min power but Partial low power state (Tomas Henzl) [1921465] - Revert "ata: ahci_platform: convert kcalloc to devm_kcalloc" (Tomas Henzl) [1921465] - ata: sata_rcar: Add rudimentary Runtime PM support (Tomas Henzl) [1921465] - ata: sata_rcar: Provide a short-hand for &pdev->dev (Tomas Henzl) [1921465] - ata: Only output sg element mapped number in verbose debug (Tomas Henzl) [1921465] - ata: Guard ata_scsi_dump_cdb() by ATA_VERBOSE_DEBUG (Tomas Henzl) [1921465] - ata: ahci_platform: convert kcalloc to devm_kcalloc (Tomas Henzl) [1921465] - ata: ahci_platform: convert kzallloc to kcalloc (Tomas Henzl) [1921465] - ata: ahci_platform: correct parameter documentation for ahci_platform_shutdown (Tomas Henzl) [1921465] - libata: remove ata_sff_data_xfer_noirq() (Tomas Henzl) [1921465] - scsi: target: Fix the pgr/alua_support_store functions (Maurizio Lombardi) [1995935] - sched/deadline: Fix missing clock update in migrate_task_rq_dl() (Phil Auld) [1992254] - sched/fair: Avoid a second scan of target in select_idle_cpu (Phil Auld) [1992254] - sched/fair: Use prev instead of new target as recent_used_cpu (Phil Auld) [1992254] - sched: Replace deprecated CPU-hotplug functions. (Phil Auld) [1992254] - sched/deadline: Fix reset_on_fork reporting of DL tasks (Phil Auld) [1992254] - sched/numa: Fix is_core_idle() (Phil Auld) [1992254] - sched/fair: Sync load_sum with load_avg after dequeue (Phil Auld) [1992254] - sched/fair: Fix CFS bandwidth hrtimer expiry type (Phil Auld) [1992254] - sched/fair: Ensure _sum and _avg values stay consistent (Phil Auld) [1992254] - sched/fair: Ensure that the CFS parent is added after unthrottling (Phil Auld) [1992254] - sched/rt: Fix Deadline utilization tracking during policy change (Phil Auld) [1992254] - sched/rt: Fix RT utilization tracking during policy change (Phil Auld) [1992254] - sched/fair: Age the average idle time (Phil Auld) [1992254] - wait: use LIST_HEAD_INIT() to initialize wait_queue_head (Phil Auld) [1992254] - sched: Optimize housekeeping_cpumask() in for_each_cpu_and() (Phil Auld) [1992254] - sched/fair: Fix util_est UTIL_AVG_UNCHANGED handling (Phil Auld) [1992254] - sched/pelt: Check that *_avg are null when *_sum are (Phil Auld) [1992254] - sched/fair: Correctly insert cfs_rq's to list on unthrottle (Phil Auld) [1992254] - sched/pelt: Ensure that *_sum is always synced with *_avg (Phil Auld) [1992254] - sched/fair: Return early from update_tg_cfs_load() if delta == 0 (Phil Auld) [1992254] - sched/fair: Make sure to update tg contrib for blocked load (Phil Auld) [1992254] - sched/fair: Keep load_avg and load_sum synced (Phil Auld) [1992254] - sched: Stop PF_NO_SETAFFINITY from being inherited by various init system threads (Phil Auld) [1992254] - sched: Fix a stale comment in pick_next_task() (Phil Auld) [1992254] - sched/fair: Fix ascii art by relpacing tabs (Phil Auld) [1992254] - tick/nohz: Call tick_nohz_task_switch() with interrupts disabled (Phil Auld) [1992254] - sched/fair: Fix clearing of has_idle_cores flag in select_idle_cpu() (Phil Auld) [1992254] - sched/core: Remove the pointless BUG_ON(!task) from wake_up_q() (Phil Auld) [1992254] - sched: Make the idle task quack like a per-CPU kthread (Phil Auld) [1992254] - sched/fair: Fix unfairness caused by missing load decay (Phil Auld) [1992254] - sched: Make nr_iowait_cpu() return 32-bit value (Phil Auld) [1992254] - sched: Make nr_iowait() return 32-bit value (Phil Auld) [1992254] - sched: Make nr_running() return 32-bit value (Phil Auld) [1992254] - sched/isolation: Reconcile rcu_nocbs= and nohz_full= (Phil Auld) [1992254] - sched/fair: Introduce a CPU capacity comparison helper (Phil Auld) [1992254] - sched/fair: Clean up active balance nr_balance_failed trickery (Phil Auld) [1992254] - sched/fair: Move update_nohz_stats() to the CONFIG_NO_HZ_COMMON block to simplify the code & fix an unused function warning (Phil Auld) [1992254] - sched/fair: Bring back select_idle_smt(), but differently (Phil Auld) [1992254] - sched,fair: Alternative sched_slice() (Phil Auld) [1992254] - sched/topology: Remove redundant cpumask_and() in init_overlap_sched_group() (Phil Auld) [1992254] - sched/numa: Allow runtime enabling/disabling of NUMA balance without SCHED_DEBUG (Phil Auld) [1992254] - sched/fair: Optimize test_idle_cores() for !SMT (Phil Auld) [1992254] - sched: Fix various typos (Phil Auld) [1992254] - sched: Remove unnecessary variable from schedule_tail() (Phil Auld) [1992254] - sched: Optimize __calc_delta() (Phil Auld) [1992254] - sched: Provide raw_spin_rq_*lock*() helpers (Phil Auld) [1992254] - sched/pelt: Fix task util_est update filtering (Phil Auld) [1992254] - sched/fair: use lsub_positive in cpu_util_next() (Phil Auld) [1992254] - sched/fair: Reduce the window for duplicated update (Phil Auld) [1992254] - sched/fair: Reorder newidle_balance pulled_task tests (Phil Auld) [1992254] - sched/fair: Remove unused parameter of update_nohz_stats (Phil Auld) [1992254] - sched/fair: Remove unused return of _nohz_idle_balance (Phil Auld) [1992254] - sched/fair: Remove update of blocked load from newidle_balance (Phil Auld) [1992254] - sched/topology: fix the issue groups don't span domain->span for NUMA diameter > 2 (Phil Auld) [1992254] - sched/fair: Merge select_idle_core/cpu() (Phil Auld) [1992254] - sched/fair: Remove select_idle_smt() (Phil Auld) [1992254] - sched/fair: Move avg_scan_cost calculations under SIS_PROP (Phil Auld) [1992254] - sched/fair: Remove SIS_AVG_CPU (Phil Auld) [1992254] - sched/eas: Don't update misfit status if the task is pinned (Phil Auld) [1992254] - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue (Phil Auld) [1992254] - sched/fair: Add a few assertions (Phil Auld) [1992254] - cpufreq: schedutil: Simplify sugov_update_next_freq() (Phil Auld) [1992254] - sched/topology: Warn when NUMA diameter > 2 (Phil Auld) [1992254] - sched: Use task_current() instead of 'rq->curr == p' (Phil Auld) [1992254] - sched/core: Allow try_invoke_on_locked_down_task() with irqs disabled (Phil Auld) [1992254] - sched/fair: Exclude the current CPU from find_new_ilb() (Phil Auld) [1992254] - rbtree, sched/deadline: Use rb_add_cached() (Phil Auld) [1992254] - rbtree, sched/fair: Use rb_add_cached() (Phil Auld) [1992254] - sched/isolation: Prefer housekeeping CPU in local node (Phil Auld) [1992254] - sched: Fix various typos in comments (Phil Auld) [1992254] - s390/qeth: fix deadlock during failing recovery (Sumanth Korikkar) [1984990] - s390/qeth: Fix deadlock in remove_discipline (Sumanth Korikkar) [1984990] - s390/qeth: fix NULL deref in qeth_clear_working_pool_list() (Sumanth Korikkar) [1984990] - s390/qdio: fix roll-back after timeout on ESTABLISH ccw (Sumanth Korikkar) [1984990] - s390/qdio: get rid of register asm (Sumanth Korikkar) [1984990] - s390/netiuvc: get rid of forward declarations (Sumanth Korikkar) [1984990] - s390/qeth: Consider dependency on SWITCHDEV module (Sumanth Korikkar) [1984990] - s390/qeth: shrink TX buffer struct (Sumanth Korikkar) [1984990] - s390/qeth: remove TX buffer's pointer to its queue (Sumanth Korikkar) [1984990] - s390/qeth: remove QAOB's pointer to its TX buffer (Sumanth Korikkar) [1984990] - s390/qeth: consolidate completion of pending TX buffers (Sumanth Korikkar) [1984990] - s390/qeth: use ethtool_sprintf() (Sumanth Korikkar) [1984990] - s390/qeth: unify the tracking of active cmds on ccw device (Sumanth Korikkar) [1984990] - s390/qeth: also use TX NAPI for non-IQD devices (Sumanth Korikkar) [1984990] - s390/qeth: count TX completion interrupts (Sumanth Korikkar) [1984990] - powerpc/stacktrace: Include linux/delay.h (Steve Best) [2010674] - powerpc/stacktrace: Fix spurious "stale" traces in raise_backtrace_ipi() (Steve Best) [2010674] - powerpc/xmon: Reset RCU and soft lockup watchdogs (Steve Best) [2010674] - bpf, sockmap: Fix sk->prot unhash op reset (Jiri Benc) [1947006] - xdp: fix xdp_return_frame() kernel BUG throw for page_pool memory model (Jiri Benc) [1947006] - selftests/bpf: Tests using bpf_check_mtu BPF-helper input mtu_len param (Jiri Benc) [1947006] - bpf: BPF-helper for MTU checking add length input (Jiri Benc) [1947006] - xsk: Remove dangling function declaration from header file (Jiri Benc) [1947006] - bpf: Remove blank line in bpf helper description comment (Jiri Benc) [1947006] - libbpf: Use AF_LOCAL instead of AF_INET in xsk.c (Jiri Benc) [1947006] - selftests/bpf: Tests using bpf_check_mtu BPF-helper (Jiri Benc) [1947006] - selftests/bpf: Use bpf_check_mtu in selftest test_cls_redirect (Jiri Benc) [1947006] - bpf: Drop MTU check when doing TC-BPF redirect to ingress (Jiri Benc) [1947006] - bpf: Add BPF-helper for MTU checking (Jiri Benc) [1947006] - bpf: bpf_fib_lookup return MTU value as output when looked up (Jiri Benc) [1947006] - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx (Jiri Benc) [1947006] - bpf: Remove MTU check in __bpf_skb_max_len (Jiri Benc) [1947006] - net, veth: Alloc skb in bulk for ndo_xdp_xmit (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_UDP{4,6}_RECVMSG (Jiri Benc) [1947006] - selftests/bpf: Rewrite recvmsg{4,6} asm progs to c in test_sock_addr (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_INET{4,6}_GET{PEER,SOCK}NAME (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_UDP{4,6}_SENDMSG (Jiri Benc) [1947006] - selftests/bpf: Verify that rebinding to port < 1024 from BPF works (Jiri Benc) [1947006] - bpf: Allow rewriting to ports under ip_unprivileged_port_start (Jiri Benc) [1947006] - net: port < inet_prot_sock(net) --> inet_port_requires_bind_service(net, port) (Jiri Benc) [1947006] - net: inet_is_local_reserved_port() should return bool not int (Jiri Benc) [1947006] - libbpf, xsk: Select AF_XDP BPF program based on kernel version (Jiri Benc) [1947006] - xsk: Fold xp_assign_dev and __xp_assign_dev (Jiri Benc) [1947006] - xsk: Remove explicit_free parameter from __xsk_rcv() (Jiri Benc) [1947006] - bpf: Split cgroup_bpf_enabled per attach type (Jiri Benc) [1947006] - bpf: Remove extra lock_sock for TCP_ZEROCOPY_RECEIVE (Jiri Benc) [1947006] - net, xdp: Introduce xdp_build_skb_from_frame utility routine (Jiri Benc) [1947006] - net, xdp: Introduce __xdp_build_skb_from_frame utility routine (Jiri Benc) [1947006] - bpf: Extend bind v4/v6 selftests for mark/prio/bindtoifindex (Jiri Benc) [1947006] - bpf: Allow to retrieve sol_socket opts from sock_addr progs (Jiri Benc) [1947006] - bpf: Replace fput with sockfd_put in sock map (Jiri Benc) [1947006] - tools: bpf: add SO_BINDTOIFINDEX to socket.h in tools (Jiri Benc) [1947006] - media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt() (Lucas Zampieri) [1956472] {CVE-2021-3542}- mm/hmm: make HMM_MIRROR an implicit option (Rafael Aquini) [1998534] - mm/hmm: allow HMM_MIRROR on all architectures with MMU (Rafael Aquini) [1998534] - mm: don't select MIGRATE_VMA_HELPER from HMM_MIRROR (Rafael Aquini) [1998534] - mm: sort out the DEVICE_PRIVATE Kconfig mess (Rafael Aquini) [1998534] - s390/ap/zcrypt: notify userspace with online, config and mode info (Stefan Schulze Frielinghaus) [1984895] - docs: livepatch: Fix a typo and remove the unnecessary gaps in a sentence (C. Erastus Toe) [1995447] - Documentation: livepatch: document reliable stacktrace (C. Erastus Toe) [1995447] - Documentation: livepatch: Convert to automatically generated contents (C. Erastus Toe) [1995447] - scsi: ibmvfc: Reinitialize sub-CRQs and perform channel enquiry after LPM (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Store return code of H_FREE_SUB_CRQ during cleanup (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Treat H_CLOSED as success during sub-CRQ registration (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Fix invalid sub-CRQ handles after hard reset (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Simplify handling of sub-CRQ initialization (Desnes A. Nunes do Rosario) [1932217] - exec: Transform exec_update_mutex into a rw_semaphore (Chris von Recklinghausen) [1993665] - perf: Break deadlock involving exec_update_mutex (Chris von Recklinghausen) [1993665] - pidfd: Add missing sock updates for pidfd_getfd() (Chris von Recklinghausen) [1993665] - exec: Move the call of prepare_binprm into search_binary_handler (Chris von Recklinghausen) [1993665] - exec: Allow load_misc_binary to call prepare_binprm unconditionally (Chris von Recklinghausen) [1993665] - exec: Convert security_bprm_set_creds into security_bprm_repopulate_creds (Chris von Recklinghausen) [1993665] - exec: Factor security_bprm_creds_for_exec out of security_bprm_set_creds (Chris von Recklinghausen) [1993665] - exec: Move would_dump into flush_old_exec (Chris von Recklinghausen) [1993665] - exec: Rename flush_old_exec begin_new_exec (Chris von Recklinghausen) [1993665] - exec: Move most of setup_new_exec into flush_old_exec (Chris von Recklinghausen) [1993665] - exec: In setup_new_exec cache current in the local variable me (Chris von Recklinghausen) [1993665] - exec: Merge install_exec_creds into setup_new_exec (Chris von Recklinghausen) [1993665] - exec: Rename the flag called_exec_mmap point_of_no_return (Chris von Recklinghausen) [1993665] - exec: Make unlocking exec_update_mutex explict (Chris von Recklinghausen) [1993665] - binfmt: Move install_exec_creds after setup_new_exec to match binfmt_elf (Chris von Recklinghausen) [1993665] - pidfd: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - perf: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - proc: io_accounting: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - proc: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - kernel/kcmp.c: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - kernel: doc: remove outdated comment cred.c (Chris von Recklinghausen) [1993665] - mm: docs: Fix a comment in process_vm_rw_core (Chris von Recklinghausen) [1993665] - selftests/ptrace: add test cases for dead-locks (Chris von Recklinghausen) [1993665] - exec: Fix a deadlock in strace (Chris von Recklinghausen) [1993665] - exec: Add exec_update_mutex to replace cred_guard_mutex (Chris von Recklinghausen) [1993665] - exec: Move exec_mmap right after de_thread in flush_old_exec (Chris von Recklinghausen) [1993665] - exec: Move cleanup of posix timers on exec out of de_thread (Chris von Recklinghausen) [1993665] - exec: Factor unshare_sighand out of de_thread and call it separately (Chris von Recklinghausen) [1993665] - exec: Only compute current once in flush_old_exec (Chris von Recklinghausen) [1993665] - pid: Implement pidfd_getfd syscall (Chris von Recklinghausen) [1993665] - pidfd: add P_PIDFD to waitid() (Chris von Recklinghausen) [1993665] - fork: return proper negative error code (Chris von Recklinghausen) [1993665] - copy_process(): don't use ksys_close() on cleanups (Chris von Recklinghausen) [1993665] - fork: don't check parent_tidptr with CLONE_PIDFD (Chris von Recklinghausen) [1993665] - fs/exec.c: move ->recursion_depth out of critical sections (Chris von Recklinghausen) [1993665] - clone: add CLONE_PIDFD (Chris von Recklinghausen) [1993665] - signal: support CLONE_PIDFD with pidfd_send_signal (Chris von Recklinghausen) [1993665] - arch: add pidfd and io_uring syscalls everywhere (Chris von Recklinghausen) [1993665] - signal: don't silently convert SI_USER signals to non-current pidfd (Chris von Recklinghausen) [1993665] - signal: add pidfd_send_signal() syscall (Chris von Recklinghausen) [1993665] - sched/core: Convert signal_struct.sigcnt to refcount_t (Chris von Recklinghausen) [1993665] - sched/core: Convert sighand_struct.count to refcount_t (Chris von Recklinghausen) [1993665] - exec: make prepare_bprm_creds static (Chris von Recklinghausen) [1993665] - fork: don't copy inconsistent signal handler state to child (Chris von Recklinghausen) [1993665] - Revert "perf: Break deadlock involving exec_update_mutex" (Chris von Recklinghausen) [1993665] - powerpc/mm/highmem: use __set_pte_at() for kmap_local() (Nico Pache) [2001854] - mm: extract might_alloc() debug check (Nico Pache) [2001854] - mm/mempolicy: use vma_lookup() in __access_remote_vm() (Nico Pache) [2001854] - mm/memory.c: use vma_lookup() in __access_remote_vm() (Nico Pache) [2001854] - mm/mremap: use vma_lookup() in vma_to_resize() (Nico Pache) [2001854] - mm/migrate: use vma_lookup() in do_pages_stat_array() (Nico Pache) [2001854] - mm/ksm: use vma_lookup() in find_mergeable_vma() (Nico Pache) [2001854] - kernel/events/uprobes: use vma_lookup() in find_active_uprobe() (Nico Pache) [2001854] - misc/sgi-gru/grufault: use vma_lookup() in gru_find_vma() (Nico Pache) [2001854] - media: videobuf2: use vma_lookup() in get_vaddr_frames() (Nico Pache) [2001854] - drm/amdgpu: use vma_lookup() in amdgpu_ttm_tt_get_user_pages() (Nico Pache) [2001854] - net/ipv5/tcp: use vma_lookup() in tcp_zerocopy_receive() (Nico Pache) [2001854] - vfio: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - virt/kvm: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - x86/sgx: use vma_lookup() in sgx_encl_find() (Nico Pache) [2001854] - arch/powerpc/kvm/book3s: use vma_lookup() in kvmppc_hv_setup_htab_rma() (Nico Pache) [2001854] - arch/powerpc/kvm/book3s_hv_uvmem: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - arch/arm64/kvm: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - drm/i915/selftests: use vma_lookup() in __igt_mmap() (Nico Pache) [2001854] - mm: add vma_lookup(), update find_vma_intersection() comments (Nico Pache) [2001854] - i915_vma: Rename vma_lookup to i915_vma_lookup (Nico Pache) [2001854] - media: videobuf2: Move frame_vector into media subsystem (Nico Pache) [2001854] - mm/frame-vector: Use FOLL_LONGTERM (Nico Pache) [2001854] - vhost: convert get_user_pages() --> pin_user_pages() (Nico Pache) [2001854] - docs: mm/gup: pin_user_pages.rst: add a "case 5" (Nico Pache) [2001854] - mm/gup: documentation fix for pin_user_pages*() APIs (Nico Pache) [2001854] - mm/gup: frame_vector: convert get_user_pages() --> pin_user_pages() (Nico Pache) [2001854] - mm/gup: update pin_user_pages.rst for "case 3" (mmu notifiers) (Nico Pache) [2001854] - mm: untag user pointers in get_vaddr_frames (Nico Pache) [2001854] - media: videobuf2-vmalloc: get_userptr: buffers are always writable (Nico Pache) [2001854] - net: expand textsearch ts_state to fit skb_seq_state (Nico Pache) [2001854] - esp: avoid unneeded kmap_atomic call (Nico Pache) [2001854] - net: compound page support in skb_seq_read (Nico Pache) [2001854] - net: support kmap_local forced debugging in skb_frag_foreach (Nico Pache) [2001854] - mm/highmem: fix CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP (Nico Pache) [2001854] - x86/crashdump/32: Simplify copy_oldmem_page() (Nico Pache) [2001854] - io-mapping: Provide iomap_local variant (Nico Pache) [2001854] - mm/highmem: Provide kmap_local* (Nico Pache) [2001854] - sched: highmem: Store local kmaps in task struct (Nico Pache) [2001854] - x86: Support kmap_local() forced debugging (Nico Pache) [2001854] - mm/highmem: Provide CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP (Nico Pache) [2001854] - mm/highmem: Provide and use CONFIG_DEBUG_KMAP_LOCAL (Nico Pache) [2001854] - mm/highmem: Take kmap_high_get() properly into account (Nico Pache) [2001854] - highmem: High implementation details and document API (Nico Pache) [2001854] - Documentation/io-mapping: Remove outdated blurb (Nico Pache) [2001854] - io-mapping: Cleanup atomic iomap (Nico Pache) [2001854] - mm/highmem: Remove the old kmap_atomic cruft (Nico Pache) [2001854] - highmem: Get rid of kmap_types.h (Nico Pache) [2001854] - powerpc/mm/highmem: Switch to generic kmap atomic (Nico Pache) [2001854] - x86/mm/highmem: Use generic kmap atomic implementation (Nico Pache) [2001854] - highmem: Make DEBUG_HIGHMEM functional (Nico Pache) [2001854] - highmem: Provide generic variant of kmap_atomic* (Nico Pache) [2001854] - asm-generic: Provide kmap_size.h (Nico Pache) [2001854] - fs: Remove asm/kmap_types.h includes (Nico Pache) [2001854] - highmem: Remove unused functions (Nico Pache) [2001854] - mm/highmem: Un-EXPORT __kmap_atomic_idx() (Nico Pache) [2001854] - kmap: consolidate kmap_prot definitions (Nico Pache) [2001854] - parisc/kmap: remove duplicate kmap code (Nico Pache) [2001854] - arch/kmap: define kmap_atomic_prot() for all arch's (Nico Pache) [2001854] - arch/kmap: ensure kmap_prot visibility (Nico Pache) [2001854] - arch/kunmap_atomic: consolidate duplicate code (Nico Pache) [2001854] - arch/kmap_atomic: consolidate duplicate code (Nico Pache) [2001854] - {x86,powerpc,microblaze}/kmap: move preempt disable (Nico Pache) [2001854] - arch/kunmap: remove duplicate kunmap implementations (Nico Pache) [2001854] - arch/kmap: remove redundant arch specific kmaps (Nico Pache) [2001854] - arch/kmap: remove BUG_ON() (Nico Pache) [2001854] - ipc: remove memcg accounting for sops objects in do_semtimedop() (Rafael Aquini) [1999705] {CVE-2021-3759} - memcg: enable accounting of ipc resources (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc: use kmalloc for msg_queue and shmid_kernel (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc sem: use kvmalloc for sem_undo allocation (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc/sem.c: replace kvmalloc/memset with kvzalloc and use struct_size (Rafael Aquini) [1999705] {CVE-2021-3759} - x86: sev-es: Restore SEV-ES-specific version of copy_from_kernel_nofault() (Vitaly Kuznetsov) [2010082] - perf machine: Initialize srcline string member in add_location struct (Michael Petlan) [1981880] - ipmi: kcs_bmc_aspeed: Fix less than zero comparison of a unsigned int (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Optionally apply status address (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Fix IBFIE typo from datasheet (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Implement KCS SerIRQ configuration (Tony Camuso) [2003186] - ipmi: kcs_bmc: Add serio adaptor (Tony Camuso) [2003186] - ipmi: kcs_bmc: Enable IBF on open (Tony Camuso) [2003186] - ipmi: kcs_bmc: Allow clients to control KCS IRQ state (Tony Camuso) [2003186] - ipmi: kcs_bmc: Decouple the IPMI chardev from the core (Tony Camuso) [2003186] - ipmi: kcs_bmc: Strip private client data from struct kcs_bmc (Tony Camuso) [2003186] - ipmi: kcs_bmc: Split headers into device and client (Tony Camuso) [2003186] - ipmi: kcs_bmc: Turn the driver data-structures inside-out (Tony Camuso) [2003186] - ipmi: kcs_bmc: Split out kcs_bmc_cdev_ipmi (Tony Camuso) [2003186] - ipmi: kcs_bmc: Rename {read,write}_{status,data}() functions (Tony Camuso) [2003186] - ipmi: kcs_bmc: Make status update atomic (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Use of match data to extract KCS properties (Tony Camuso) [2003186] - ipmi/watchdog: Stop watchdog timer when the current action is 'none' (Tony Camuso) [2003186] - ipmi: kcs: aspeed: Adapt to new LPC DTS layout (Tony Camuso) [2003186] - ipmi_si: Join string literals back (Tony Camuso) [2003186] - ipmi_si: Drop redundant check before calling put_device() (Tony Camuso) [2003186] - ipmi_si: Use strstrip() to remove surrounding spaces (Tony Camuso) [2003186] - ipmi_si: Get rid of ->addr_source_cleanup() (Tony Camuso) [2003186] - ipmi_si: Reuse si_to_str[] array in ipmi_hardcode_init_one() (Tony Camuso) [2003186] - ipmi_si: Introduce ipmi_panic_event_str[] array (Tony Camuso) [2003186] - ipmi_si: Use proper ACPI macros to check error code for failures (Tony Camuso) [2003186] - ipmi_si: Utilize temporary variable to hold device pointer (Tony Camuso) [2003186] - ipmi_si: Remove bogus err_free label (Tony Camuso) [2003186] - ipmi: Handle device properties with software node API (Tony Camuso) [2003186] - ipmi:ssif: make ssif_i2c_send() void (Tony Camuso) [2003186] - ipmi: Refine retry conditions for getting device id (Tony Camuso) [2003186] - redhat/configs: enable CONFIG_IMA_WRITE_POLICY (Bruno Meneguele) [2010530] - Disable CONFIG_CRYPTO_SM4 on aarch64 (Vladis Dronov) [2008943] - powerpc/iommu: Report the correct most efficient DMA mask for PCI devices (Steve Best) [2007425] - powerpc/dma: Fix dma_map_ops::get_required_mask (Steve Best) [2007425] - ibmvnic: Reuse tx pools when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Reuse rx pools when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Reuse LTB when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use bitmap for LTB map_ids (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: init_tx_pools move loop-invariant code (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use/rename local vars in init_tx_pools (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use/rename local vars in init_rx_pools (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Fix up some comments and messages (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Consolidate code in replenish_rx_pool() (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: check failover_pending in login response (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: retry reset if there are no other resets (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: parenthesize a check (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: free tx_pool if tso_pool alloc fails (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: set ltb->buff to NULL after freeing (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: account for bufs already saved in indir_buf (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: clean pending indirect buffs during reset (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use strscpy() instead of strncpy() (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix send_request_map incompatible argument (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warnings in build_hdr_descs_arr (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warning (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warning in strncpy (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Allow device probe if the device is not ready at boot (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use list_for_each_entry() to simplify code in ibmvnic.c (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: remove default label from to_string switch (Desnes A. Nunes do Rosario) [1998677] - intel_th: pci: Add Alder Lake-M support (Jiri Olsa) [1929502] - i2c: designware: Fix indentation in the header (David Arcari) [2004468] - i2c: designware: Use DIV_ROUND_CLOSEST() macro (David Arcari) [2004468] - math64: New DIV_S64_ROUND_CLOSEST helper (David Arcari) [2004468] - units: Add SI metric prefix definitions (David Arcari) [2004468] - i2c: busses: i2c-designware-master: Fix misnaming of 'i2c_dw_init_master()' (David Arcari) [2004468] - MAINTAINERS: adjust to removing i2c designware platform data (David Arcari) [2004468] - i2c: designware: Get rid of legacy platform data (David Arcari) [2004468] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (David Arcari) [2004468] - i2c: designware: Switch over to i2c_freq_mode_string() (David Arcari) [2004468] - i2c: core: add api to provide frequency mode strings (David Arcari) [2004468] - i2c: designware: Fix return value check in navi_amd_register_client() (David Arcari) [2004468] - i2c: drivers: Use generic definitions for bus frequencies (part 2) (David Arcari) [2004468] - i2c: designware: Add driver support for AMD NAVI GPU (David Arcari) [2004468] - i2c: designware: Adjust bus_freq_hz when refuse high speed mode set (David Arcari) [2004468] - i2c: designware: Get right data length (David Arcari) [2004468] - i2c: designware: Make register offsets all of the same width (David Arcari) [2004468] - i2c: designware: Switch header to use BIT() and GENMASK() (David Arcari) [2004468] - i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED (David Arcari) [2004468] - i2c: designware: call i2c_dw_read_clear_intrbits_slave() once (David Arcari) [2004468] - i2c: busses: Use fallthrough pseudo-keyword (David Arcari) [2004468] - i2c: designware: platdrv: Set class based on DMI (David Arcari) [2004468] - i2c: designware: Adjust bus speed independently of ACPI (David Arcari) [2004468] - i2c: designware: Add Baikal-T1 System I2C support (David Arcari) [2004468] - i2c: designware: Move reg-space remapping into a dedicated function (David Arcari) [2004468] - i2c: designware: Retrieve quirk flags as early as possible (David Arcari) [2004468] - i2c: designware: Convert driver to using regmap API (David Arcari) [2004468] - i2c: designware: Discard Cherry Trail model flag (David Arcari) [2004468] - i2c: designware: Drop hard coded FIFO depth assignment (David Arcari) [2004468] - i2c: designware: Read counters from ACPI for PCI driver (David Arcari) [2004468] - i2c: designware: Move ACPI parts into common module (David Arcari) [2004468] - i2c: designware: Drop unneeded condition in i2c_dw_validate_speed() (David Arcari) [2004468] - i2c: designware: Move i2c_dw_validate_speed() helper to a common code (David Arcari) [2004468] - i2c: designware: Include proper headers in i2c-desingware-core.h (David Arcari) [2004468] - i2c: designware: Get rid of PCI driver specifics in common code (David Arcari) [2004468] - i2c: designware: Allow slave mode for PCI enumerated devices (David Arcari) [2004468] - i2c: designware: Rename i2c_dw_probe() to i2c_dw_probe_master() (David Arcari) [2004468] - i2c: designware: Switch PCI driver to use i2c_dw_configure_master() (David Arcari) [2004468] - i2c: designware: Move configuration routines to respective modules (David Arcari) [2004468] - i2c: designware: Use devm_platform_ioremap_resource() to simplify code (David Arcari) [2004468] - i2c: designware: Calculate SCL timing parameter for High Speed Mode (David Arcari) [2004468] - i2c: designware: Calculate SCL timing parameter for Fast Mode Plus (David Arcari) [2004468] - i2c: designware: platdrv: Remove DPM_FLAG_SMART_SUSPEND flag on BYT and CHT (David Arcari) [2004468] - i2c: drivers: Use generic definitions for bus frequencies (David Arcari) [2004468] - i2c: core: Provide generic definitions for bus frequencies (David Arcari) [2004468] - i2c: designware: Fix spelling typos in the comments (David Arcari) [2004468] - i2c: designware: Discard i2c_dw_read_comp_param() function (David Arcari) [2004468] - i2c: designware: Detect the FIFO size in the common code (David Arcari) [2004468] - i2c: designware: Add ACPI HID for Hisilicon Hip08-Lite I2C controller (David Arcari) [2004468] - i2c: designware: Fix optional reset error handling (David Arcari) [2004468] - i2c: designware: assert reset when error happen at ->probe() (David Arcari) [2004468] - i2c: designware: Synchronize IRQs when unregistering slave client (David Arcari) [2004468] - i2c: designware: Fix unused variable warning (David Arcari) [2004468] - i2c: designware: make use of devm_gpiod_get_optional (David Arcari) [2004468] - i2c: busses: Use dev_get_drvdata where possible (David Arcari) [2004468] - i2c: designware: ratelimit 'transfer when suspended' errors (David Arcari) [2004468] - i2c: designware: Add support for an interface clock (David Arcari) [2004468] - i2c: i2c-designware-platdrv: Always use a dynamic adapter number (David Arcari) [2004468] - i2c: i2c-designware-platdrv: Cleanup setting of the adapter number (David Arcari) [2004468] - i2c: designware: Do not allow i2c_dw_xfer() calls while suspended (David Arcari) [2004468] - i2c: designware: Cleanup bus lock handling (David Arcari) [2004468] - i2c: designware: Set IRQF_NO_SUSPEND flag for all BYT and CHT controllers (David Arcari) [2004468] - i2c: designware: Call i2c_dw_clk_rate() only when calculating timings (David Arcari) [2004468] - i2c: designware: Remove Cherry Trail PMIC I2C bus pm_disabled workaround (David Arcari) [2004468] - i2c: designware: add MSCC Ocelot support (David Arcari) [2004468] - i2c: designware: allow IP specific sda_hold_time (David Arcari) [2004468] - i2c: designware: move #ifdef CONFIG_OF to the top (David Arcari) [2004468] - i2c: designware: use generic table matching (David Arcari) [2004468] - i2c: designware: Add SPDX license tag (David Arcari) [2004468] - i2c: designware: Convert to use struct i2c_timings (David Arcari) [2004468] - i2c: designware-pcidrv: Mark expected switch fall-through (David Arcari) [2004468] - i2c: designware-master: use core to detect 'no zero length' quirk (David Arcari) [2004468] - i2c: designware: Add debug print for bus speed (David Arcari) [2004468] - i2c: designware: Add debug print for SDA hold time value (David Arcari) [2004468] - i2c: designware: Separate timing parameter setting from HW initalization (David Arcari) [2004468] - i2c: designware: Move SDA hold time configuration to common code (David Arcari) [2004468] - i2c: designware: Call i2c_dw_clk_rate() only once in i2c_dw_init_master() (David Arcari) [2004468] - i2c: designware: Don't use internal ___constant_swab32 (David Arcari) [2004468] - i2c: designware: Move register access detection to common code (David Arcari) [2004468] - i2c: designware: Remove needless variable from i2c_dw_init_slave() (David Arcari) [2004468]- x86/amd_nb: Add AMD family 17h model 60h PCI IDs (David Arcari) [1987067] - x86/amd_nb: Check vendor in AMD-only functions (David Arcari) [1987067] - hwmon: (k10temp) Add support for yellow carp (David Arcari) [1987067] - x86/amd_nb: Add AMD family 19h model 50h PCI ids (David Arcari) [1987067] - x86: Fix various typos in comments, take #2 (David Arcari) [1987067] - x86/amd_nb, char/amd64-agp: Use amd_nb_num() accessor (David Arcari) [1987067] - x86/amd_nb: Add PCI device IDs for family 17h, model 70h (David Arcari) [1987067] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 477 (David Arcari) [1987067] - x86/amd_nb: Make hygon_nb_misc_ids static (David Arcari) [1987067] - x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge (David Arcari) [1987067] - x86/cpu: Create Hygon Dhyana architecture support file (David Arcari) [1987067] - hwmon: (k10temp) Rework the temperature offset calculation (David Arcari) [1987067] - hwmon: (k10temp) Don't show Tdie for all Zen/Zen2/Zen3 CPU/APU (David Arcari) [1987067] - hwmon: (k10temp) Add additional missing Zen2 and Zen3 APUs (David Arcari) [1987067] - hwmon: (k10temp) support Zen3 APUs (David Arcari) [1987067] - CI: Fix RT branch name (Veronika Kabatova) - platform/x86/intel: pmc/core: Add GBE Package C10 fix for Alder Lake PCH (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Alder Lake low power mode support for pmc core (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Latency Tolerance Reporting (LTR) support to Alder Lake (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Alderlake support to pmc core driver (David Arcari) [1962965] - redhat/configs: Add CONFIG_X86_PLATFORM_DRIVERS_INTEL (David Arcari) [1962965] - platform/x86: intel_pmc_core: Move to intel sub-directory (David Arcari) [1962965] - platform/x86: intel_skl_int3472: Move to intel/ subfolder (David Arcari) [1962965] - platform/x86: intel_pmc_core: Prevent possibile overflow (David Arcari) [1962965] - ipvs: check that ip_vs_conn_tab_bits is between 8 and 20 (Andrea Claudi) [1816769] - KVM: nVMX: Filter out all unsupported controls when eVMCS was activated (Vitaly Kuznetsov) [2001915] - pinctrl: amd: Handle wake-up interrupt (David Arcari) [2000228] - pinctrl: amd: Add irq field data (David Arcari) [2000228] - pinctrl: amd: Fix an issue with shutdown when system set to s0ix (David Arcari) [2000228] - pinctrl/amd: Add device HID for new AMD GPIO controller (David Arcari) [2000228] - pinctrl: amd: Implement irq_set_wake (David Arcari) [2000228] - genirq/PM: Introduce IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND flag (David Arcari) [2000228] - pinctrl: amd: remove debounce filter setting in IRQ type setting (David Arcari) [2000228] - pinctrl: amd: print debounce filter info in debugfs (David Arcari) [2000228] - pinctrl: amd: use higher precision for 512 RtcClk (David Arcari) [2000228] - pinctrl: amd: fix incorrect way to disable debounce filter (David Arcari) [2000228] - pinctrl: amd: Use irqchip template (David Arcari) [2000228] - pinctrl: pinctrl-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (David Arcari) [2000228] - pinctrl: amd: Honor IRQ trigger type requested by the caller (David Arcari) [2000228] - pinctrl: Use new GPIO_LINE_DIRECTION (David Arcari) [2000228] - remove ioremap_nocache and devm_ioremap_nocache (David Arcari) [2000228] - pinctrl: amd: fix __iomem annotation in amd_gpio_irq_handler() (David Arcari) [2000228] - pinctrl: amd: disable spurious-firing GPIO IRQs (David Arcari) [2000228] - pinctrl: Remove dev_err() usage after platform_get_irq() (David Arcari) [2000228] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (David Arcari) [2000228] - pinctrl/amd: fix typo (David Arcari) [2000228] - pinctrl: pinctrl-amd: simplify getting .driver_data (David Arcari) [2000228] - pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_type (David Arcari) [2000228] - pinctrl: Include nothing else (David Arcari) [2000228] - pinctrl/amd: only handle irq if it is pending and unmasked (David Arcari) [2000228] - pinctrl/amd: fix gpio irq level in debugfs (David Arcari) [2000228] - smartpqi: Update version to 2.1.10-025 (Don Brace) [1980106] - scsi: smartpqi: Replace one-element array with flexible-array member (Don Brace) [1980106] - scsi: smartpqi: Fix an error code in pqi_get_raid_map() (Don Brace) [1980106] - scsi: smartpqi: Update version to 2.1.10-020 (Don Brace) [1980106] - scsi: smartpqi: Fix ISR accessing uninitialized data (Don Brace) [1980106] - scsi: smartpqi: Add PCI IDs for new ZTE controllers (Don Brace) [1980106] - scsi: smartpqi: Add PCI ID for new ntcom controller (Don Brace) [1980106] - scsi: smartpqi: Add SCSI cmd info for resets (Don Brace) [1980106] - scsi: smartpqi: Change Kconfig menu entry to Microchip (Don Brace) [1980106] - scsi: smartpqi: Change driver module macros to Microchip (Don Brace) [1980106] - scsi: smartpqi: Update copyright notices (Don Brace) [1980106] - scsi: smartpqi: Add PCI IDs for H3C P4408 controllers (Don Brace) [1980106]- lib/linear_ranges: fix repeated words & one typo (Nico Pache) [2006475] - lib: linear_ranges: Add missing MODULE_LICENSE() (Nico Pache) [2006475] - bpf: Fix regression on BPF_OBJ_GET with non-O_RDWR flags (Jiri Olsa) [1944798] - bpf, x86: Fix extable offset calculation (Jiri Olsa) [1944798] - bpftool: Add Makefile target bootstrap (Jiri Olsa) [1944798] - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args (Jiri Olsa) [1944798] - docs, bpf: Add minimal markup to address doc warning (Jiri Olsa) [1944798] - test_bpf: Remove EXPECTED_FAIL flag from bpf_fill_maxinsns11 (Jiri Olsa) [1944798] - trace: bpf: Allow bpf to attach to bare tracepoints (Jiri Olsa) [1944798] - docs: bpf: Clarify -mcpu=v3 requirement for atomic ops (Jiri Olsa) [1944798] - tools, headers: Sync struct bpf_perf_event_data (Jiri Olsa) [1944798] - selftests/bpf: Add missing cleanup in atomic_bounds test (Jiri Olsa) [1944798] - docs: bpf: Clarify BPF_CMPXCHG wording (Jiri Olsa) [1944798] - docs: bpf: Fixup atomics markup (Jiri Olsa) [1944798] - bpf: Document new atomic instructions (Jiri Olsa) [1944798] - kbuild: Do not clean resolve_btfids if the output does not exist (Jiri Olsa) [1944798] - kbuild: Add resolve_btfids clean to root clean target (Jiri Olsa) [1944798] - bpf: Introduce task_vma bpf_iter (Jiri Olsa) [1944798] - bpf: Allow bpf_d_path in bpf_iter program (Jiri Olsa) [1944798] - selftests/bpf: Add test for bpf_iter_task_vma (Jiri Olsa) [1944798] - bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs (Jiri Olsa) [1944798] - libbpf: Use SOCK_CLOEXEC when opening the netlink socket (Jiri Olsa) [1944798] - bpf: Update selftests to reflect new error states (Jiri Olsa) [1944798] - bpf, x86: Validate computation of branch displacements for x86-32 (Jiri Olsa) [1944798] - bpf, x86: Validate computation of branch displacements for x86-64 (Jiri Olsa) [1944798] - bpf: program: Refuse non-O_RDWR flags in BPF_OBJ_GET (Jiri Olsa) [1944798] - bpf: Take module reference for trampoline in module (Jiri Olsa) [1944798] - bpf/selftests: Test that kernel rejects a TCP CC with an invalid license (Jiri Olsa) [1944798] - bpf: Enforce that struct_ops programs be GPL-only (Jiri Olsa) [1944798] - libbpf: Fix bail out from 'ringbuf_process_ring()' on error (Jiri Olsa) [1944798] - selftests/bpf: Add selftest for pointer-to-array-of-struct BTF dump (Jiri Olsa) [1944798] - libbpf: Fix BTF dump of pointer-to-array-of-struct (Jiri Olsa) [1944798] - bpf, selftests: Fix up some test_verifier cases for unprivileged (Jiri Olsa) [1944798] - bpf, x86: Use kvmalloc_array instead kmalloc_array in bpf_jit_comp (Jiri Olsa) [1944798] - libbpf: Fix INSTALL flag order (Jiri Olsa) [1944798] - libbpf: Clear map_info before each bpf_obj_get_info_by_fd (Jiri Olsa) [1944798] - samples, bpf: Add missing munmap in xdpsock (Jiri Olsa) [1944798] - tools/resolve_btfids: Fix build error with older host toolchains (Jiri Olsa) [1944798] - selftests/bpf: Fix a compiler warning in global func test (Jiri Olsa) [1944798] - bpf: Drop imprecise log message (Jiri Olsa) [1944798] - bpf: Clear percpu pointers in bpf_prog_clone_free() (Jiri Olsa) [1944798] - bpf: Fix a warning message in mark_ptr_not_null_reg() (Jiri Olsa) [1944798] - selftests/bpf: Add unit tests for pointers in global functions (Jiri Olsa) [1944798] - bpf: Support pointers in global func args (Jiri Olsa) [1944798] - bpf: Extract nullable reg type conversion into a helper function (Jiri Olsa) [1944798] - bpf: Rename bpf_reg_state variables (Jiri Olsa) [1944798] - tools/resolve_btfids: Add /libbpf to .gitignore (Jiri Olsa) [1944798] - bpf: selftests: Add non function pointer test to struct_ops (Jiri Olsa) [1944798] - libbpf: Ignore non function pointer member in struct_ops (Jiri Olsa) [1944798] - bpf: Clear per_cpu pointers during bpf_prog_realloc (Jiri Olsa) [1944798] - selftests/bpf: Add a selftest for the tracing bpf_get_socket_cookie (Jiri Olsa) [1944798] - selftests/bpf: Use vmlinux.h in socket_cookie_prog.c (Jiri Olsa) [1944798] - selftests/bpf: Integrate the socket_cookie test to test_progs (Jiri Olsa) [1944798] - bpf: Expose bpf_get_socket_cookie to tracing programs (Jiri Olsa) [1944798] - selftests/bpf: Convert test_xdp_redirect.sh to bash (Jiri Olsa) [1944798] - selftests/bpf: Add a test for map-in-map and per-cpu maps in sleepable progs (Jiri Olsa) [1944798] - bpf: Allows per-cpu maps and map-in-map in sleepable programs (Jiri Olsa) [1944798] - selftests/bpf: Improve recursion selftest (Jiri Olsa) [1944798] - selftest/bpf: Add a recursion test (Jiri Olsa) [1944798] - bpf: Count the number of times recursion was prevented (Jiri Olsa) [1944798] - bpf: Add per-program recursion prevention mechanism (Jiri Olsa) [1944798] - bpf: Compute program stats for sleepable programs (Jiri Olsa) [1944798] - bpf: Run sleepable programs with migration disabled (Jiri Olsa) [1944798] - bpf: Optimize program stats (Jiri Olsa) [1944798] - selftests/bpf: Simplify the calculation of variables (Jiri Olsa) [1944798] - selftest/bpf: Add test for var-offset stack access (Jiri Olsa) [1944798] - tools/resolve_btfids: Set srctree variable unconditionally (Jiri Olsa) [1944798] - tools/resolve_btfids: Check objects before removing (Jiri Olsa) [1944798] - tools/resolve_btfids: Build libbpf and libsubcmd in separate directories (Jiri Olsa) [1944798] - bpf: Simplify bool comparison (Jiri Olsa) [1944798] - selftests/bpf: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf/benchs/bench_ringbufs: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf: Refactor BPF_PSEUDO_CALL checking as a helper function (Jiri Olsa) [1944798] - bpf/selftests: Update the IMA test to use BPF ring buffer (Jiri Olsa) [1944798] - bpf: Allow usage of BPF ringbuffer in sleepable programs (Jiri Olsa) [1944798] - bpf/selftests: Add a short note about vmtest.sh in README.rst (Jiri Olsa) [1944798] - bpf: Helper script for running BPF presubmit tests (Jiri Olsa) [1944798] - bpf: Emit explicit NULL pointer checks for PROBE_LDX instructions. (Jiri Olsa) [1944798] - libbpf: Stop using feature-detection Makefiles (Jiri Olsa) [1944798] - selftest/bpf: Testing for multiple logs on REJECT (Jiri Olsa) [1944798] - samples: bpf: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf: Propagate stack bounds to registers in atomics w/ BPF_FETCH (Jiri Olsa) [1944798] - samples/bpf: Add include dir for MIPS Loongson64 to fix build errors (Jiri Olsa) [1944798] - bpf: Simplify cases in bpf_base_func_proto (Jiri Olsa) [1944798] - samples/bpf: Set flag __SANE_USERSPACE_TYPES__ for MIPS to fix build warnings (Jiri Olsa) [1944798] - selftests/bpf: Avoid useless void *-casts (Jiri Olsa) [1944798] - selftests/bpf: Consistent malloc/calloc usage (Jiri Olsa) [1944798] - selftests/bpf: Avoid heap allocation (Jiri Olsa) [1944798] - selftests/bpf: Define local variables at the beginning of a block (Jiri Olsa) [1944798] - selftests/bpf: Change type from void * to struct generic_data * (Jiri Olsa) [1944798] - selftests/bpf: Change type from void * to struct ifaceconfigobj * (Jiri Olsa) [1944798] - selftests/bpf: Remove casting by introduce local variable (Jiri Olsa) [1944798] - selftests/bpf: Improve readability of xdpxceiver/worker_pkt_validate() (Jiri Olsa) [1944798] - selftests/bpf: Remove memory leak (Jiri Olsa) [1944798] - selftests/bpf: Fix style warnings (Jiri Olsa) [1944798] - selftests/bpf: Remove unused enums (Jiri Olsa) [1944798] - selftests/bpf: Remove a lot of ifobject casting (Jiri Olsa) [1944798] - samples/bpf: Add xdp program on egress for xdp_redirect_map (Jiri Olsa) [1944798] - bpf: Fix typo in scalar{,32}_min_max_rsh comments (Jiri Olsa) [1944798] - bpf, docs: Update build procedure for manually compiling LLVM and Clang (Jiri Olsa) [1944798] - selftest/bpf: Fix typo (Jiri Olsa) [1944798] - libbpf: Use string table index from index table if needed (Jiri Olsa) [1944798] - bpf: Try to avoid kzalloc in cgroup/{s,g}etsockopt (Jiri Olsa) [1944798] - bpf: Permit size-0 datasec (Jiri Olsa) [1944798] - selftests: bpf: Add a new test for bare tracepoints (Jiri Olsa) [1944798] - selftests/bpf: Add verifier tests for x64 jit jump padding (Jiri Olsa) [1944798] - bpf,x64: Pad NOPs to make images converge more easily (Jiri Olsa) [1944798] - tools/bpftool: Add -Wall when building BPF programs (Jiri Olsa) [1944798] - bpf: Declare __bpf_free_used_maps() unconditionally (Jiri Olsa) [1944798] - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h (Jiri Olsa) [1944798] - kernel.spec: Add support to use vmlinux.h (Jiri Olsa) [1989087] - spec: Add vmlinux.h to kernel-devel package (Jiri Olsa) [1989087] - lib/test_scanf: Handle n_bits == 0 in random tests (Chris von Recklinghausen) [1985062] - printk/console: Check consistent sequence number when handling race in console_unlock() (Chris von Recklinghausen) [1985062] - printk: fix cpu lock ordering (Chris von Recklinghausen) [1985062] - lib/dump_stack: move cpu lock to printk.c (Chris von Recklinghausen) [1985062] - random32: Fix implicit truncation warning in prandom_seed_state() (Chris von Recklinghausen) [1985062] - lib: test_scanf: Remove pointless use of type_min() with unsigned types (Chris von Recklinghausen) [1985062] - selftests: lib: Add wrapper script for test_scanf (Chris von Recklinghausen) [1985062] - lib: test_scanf: Add tests for sscanf number conversion (Chris von Recklinghausen) [1985062] - lib: vsprintf: Fix handling of number field widths in vsscanf (Chris von Recklinghausen) [1985062] - lib: vsprintf: scanf: Negative number must have field width > 1 (Chris von Recklinghausen) [1985062] - usb: host: xhci-tegra: Switch to use ptTs (Chris von Recklinghausen) [1985062] - nilfs2: Switch to use ptTs (Chris von Recklinghausen) [1985062] - kdb: Switch to use ptTs (Chris von Recklinghausen) [1985062] - lib/vsprintf: Allow to override ISO 8601 date and time separator (Chris von Recklinghausen) [1985062] - printk: Remove trailing semicolon in macros (Chris von Recklinghausen) [1985062] - printk: Move EXPORT_SYMBOL() closer to vprintk definition (Chris von Recklinghausen) [1985062] - kernel/printk.c: Fixed mundane typos (Chris von Recklinghausen) [1985062] - printk: rename vprintk_func to vprintk (Chris von Recklinghausen) [1985062] - printk: console: remove unnecessary safe buffer usage (Chris von Recklinghausen) [1985062] - printk: kmsg_dump: remove _nolock() variants (Chris von Recklinghausen) [1985062] - printk: remove logbuf_lock (Chris von Recklinghausen) [1985062] - printk: introduce a kmsg_dump iterator (Chris von Recklinghausen) [1985062] - printk: kmsg_dumper: remove @active field (Chris von Recklinghausen) [1985062] - printk: add syslog_lock (Chris von Recklinghausen) [1985062] - printk: use atomic64_t for devkmsg_user.seq (Chris von Recklinghausen) [1985062] - printk: use seqcount_latch for clear_seq (Chris von Recklinghausen) [1985062] - printk: introduce CONSOLE_LOG_MAX (Chris von Recklinghausen) [1985062] - printk: consolidate kmsg_dump_get_buffer/syslog_print_all code (Chris von Recklinghausen) [1985062] - printk: refactor kmsg_dump_get_buffer() (Chris von Recklinghausen) [1985062] - printk: kmsg_dump: remove unused fields (Chris von Recklinghausen) [1985062] - printk: limit second loop of syslog_print_all (Chris von Recklinghausen) [1985062] - mtd: mtdoops: synchronize kmsg_dumper (Chris von Recklinghausen) [1985062] - vsprintf: dump full information of page flags in pGp (Chris von Recklinghausen) [1985062] - mm, slub: don't combine pr_err with INFO (Chris von Recklinghausen) [1985062] - mm, slub: use pGp to print page flags (Chris von Recklinghausen) [1985062] - lib/vsprintf.c: remove leftover 'f' and 'F' cases from bstr_printf() (Chris von Recklinghausen) [1985062] - printk: clarify the documentation for plain pointer printing (Chris von Recklinghausen) [1985062] - lib/vsprintf: do not show no_hash_pointers message multiple times (Chris von Recklinghausen) [1985062] - kdb: Refactor env variables get/set code (Chris von Recklinghausen) [1985062] - kernel: debug: Ordinary typo fixes in the file gdbstub.c (Chris von Recklinghausen) [1985062] - kdb: Simplify kdb commands registration (Chris von Recklinghausen) [1985062] - seqlock,lockdep: Fix seqcount_latch_init() (Chris von Recklinghausen) [1985062] - printk: avoid prb_first_valid_seq() where possible (Chris von Recklinghausen) [1985062] - printk: rectify kernel-doc for prb_rec_init_wr() (Chris von Recklinghausen) [1985062] - lib/vsprintf: no_hash_pointers prints all addresses as unhashed (Chris von Recklinghausen) [1985062] - kselftest: add support for skipped tests (Chris von Recklinghausen) [1985062] - lib: use KSTM_MODULE_GLOBALS macro in kselftest drivers (Chris von Recklinghausen) [1985062] - printk: fix deadlock when kernel panic (Chris von Recklinghausen) [1985062] - torture: Remove "Failed to add ttynull console" false positive (Chris von Recklinghausen) [1985062] - printk: fix string termination for record_print_text() (Chris von Recklinghausen) [1985062] - printk: fix buffer overflow potential for print_text() (Chris von Recklinghausen) [1985062] - printk: fix kmsg_dump_get_buffer length calulations (Chris von Recklinghausen) [1985062] - printk: ringbuffer: fix line counting (Chris von Recklinghausen) [1985062] - Revert "init/console: Use ttynull as a fallback when there is no console" (Chris von Recklinghausen) [1985062] - printk: remove obsolete dead assignment (Chris von Recklinghausen) [1985062] - printk: ringbuffer: Reference text_data_ring directly in callees. (Chris von Recklinghausen) [1985062] - printk/console: Allow to disable console output by using console="" or console=null (Chris von Recklinghausen) [1985062] - init/console: Use ttynull as a fallback when there is no console (Chris von Recklinghausen) [1985062] - printk: remove logbuf_lock writer-protection of ringbuffer (Chris von Recklinghausen) [1985062] - printk: inline log_output(),log_store() in vprintk_store() (Chris von Recklinghausen) [1985062] - printk: remove unneeded dead-store assignment (Chris von Recklinghausen) [1985062] - printk: finalize records with trailing newlines (Chris von Recklinghausen) [1985062] - printk: ringbuffer: Wrong data pointer when appending small string (Chris von Recklinghausen) [1985062] - printk: reduce setup_text_buf size to LOG_LINE_MAX (Chris von Recklinghausen) [1985062] - printk: avoid and/or handle record truncation (Chris von Recklinghausen) [1985062] - printk: remove dict ring (Chris von Recklinghausen) [1985062] - printk: move dictionary keys to dev_printk_info (Chris von Recklinghausen) [1985062] - printk: move printk_info into separate array (Chris von Recklinghausen) [1985062] - printk: reimplement log_cont using record extension (Chris von Recklinghausen) [1985062] - printk: ringbuffer: add finalization/extension support (Chris von Recklinghausen) [1985062] - printk: ringbuffer: change representation of states (Chris von Recklinghausen) [1985062] - printk: ringbuffer: clear initial reserved fields (Chris von Recklinghausen) [1985062] - printk: ringbuffer: add BLK_DATALESS() macro (Chris von Recklinghausen) [1985062] - printk: ringbuffer: relocate get_data() (Chris von Recklinghausen) [1985062] - printk: ringbuffer: avoid memcpy() on state_var (Chris von Recklinghausen) [1985062] - printk: ringbuffer: fix setting state in desc_read() (Chris von Recklinghausen) [1985062] - seqlock: Introduce seqcount_latch_t (Chris von Recklinghausen) [1985062] - scripts/gdb: update for lockless printk ringbuffer (Chris von Recklinghausen) [1985062] - scripts/gdb: add utils.read_ulong() (Chris von Recklinghausen) [1985062] - printk: reduce LOG_BUF_SHIFT range for H8300 (Chris von Recklinghausen) [1985062] - printk: ringbuffer: support dataless records (Chris von Recklinghausen) [1985062] - MAINTAIERS: Add John Ogness as printk reviewer (Chris von Recklinghausen) [1985062] - printk: use the lockless ringbuffer (Chris von Recklinghausen) [1985062] - Revert "printk: lock/unlock console only for new logbuf entries" (Chris von Recklinghausen) [1985062] - printk: add lockless ringbuffer (Chris von Recklinghausen) [1985062] - crash: add VMCOREINFO macro to define offset in a struct declared by typedef (Chris von Recklinghausen) [1985062] - printk: Use fallthrough pseudo-keyword (Chris von Recklinghausen) [1985062] - kernel.h: Move oops_in_progress to printk.h (Chris von Recklinghausen) [1985062] - serial: 8250: change lock order in serial8250_do_startup() (Chris von Recklinghausen) [1985062] - kernel: printk: delete repeated words in comments (Chris von Recklinghausen) [1985062] - random32: Restore __latent_entropy attribute on net_rand_state (Chris von Recklinghausen) [1985062] - random32: add a tracepoint for prandom_u32() (Chris von Recklinghausen) [1985062] - init: open code setting up stdin/stdout/stderr (Chris von Recklinghausen) [1985062] - hvc: unify console setup naming (Chris von Recklinghausen) [1985062] - console: Fix trivia typo 'change' -> 'chance' (Chris von Recklinghausen) [1985062] - console: Propagate error code from console ->setup() (Chris von Recklinghausen) [1985062] - tty: hvc: Return proper error code from console ->setup() hook (Chris von Recklinghausen) [1985062] - lib/vsprintf: Force type of flags value for gfp_t (Chris von Recklinghausen) [1985062] - lib/vsprintf: Replace custom spec to print decimals with generic one (Chris von Recklinghausen) [1985062] - lib/vsprintf: Replace hidden BUILD_BUG_ON() with static_assert() (Chris von Recklinghausen) [1985062] - printk: Make linux/printk.h self-contained (Chris von Recklinghausen) [1985062] - doc:kmsg: explicitly state the return value in case of SEEK_CUR (Chris von Recklinghausen) [1985062] - Replace HTTP links with HTTPS ones: vsprintf (Chris von Recklinghausen) [1985062] - Revert "kernel/printk: add kmsg SEEK_CUR handling" (Chris von Recklinghausen) [1985062] - random32: move the pseudo-random 32-bit definitions to prandom.h (Chris von Recklinghausen) [1985062] - printk/kdb: Redirect printk messages into kdb in any context (Chris von Recklinghausen) [1985062] - usb: pulse8-cec: Switch to use ptT (Chris von Recklinghausen) [1985062] - lib/vsprintf: Print time64_t in human readable format (Chris von Recklinghausen) [1985062] - printk: Remove pr_cont_once() (Chris von Recklinghausen) [1985062] - printk: handle blank console arguments passed in. (Chris von Recklinghausen) [1985062] - kernel/printk: add kmsg SEEK_CUR handling (Chris von Recklinghausen) [1985062] - printk: Fix a typo in comment "interator"->"iterator" (Chris von Recklinghausen) [1985062] - printk: Correctly set CON_CONSDEV even when preferred console was not registered (Chris von Recklinghausen) [1985062] - printk: Fix preferred console selection with multiple matches (Chris von Recklinghausen) [1985062] - printk: Move console matching logic into a separate function (Chris von Recklinghausen) [1985062] - lib/vsprintf: update comment about simple_strto() functions (Chris von Recklinghausen) [1985062] - printk: Convert a use of sprintf to snprintf in console_unlock (Chris von Recklinghausen) [1985062] - lib/dynamic_debug.c: use address-of operator on section symbols (Chris von Recklinghausen) [1985062] - printk: fix exclusive_console replaying (Chris von Recklinghausen) [1985062] - Revert "fs: remove ksys_dup()" (Chris von Recklinghausen) [1985062] - early init: fix error handling when opening /dev/console (Chris von Recklinghausen) [1985062] - device.h: move dev_printk()-like functions to dev_printk.h (Chris von Recklinghausen) [1985062] - docs: printk-formats: add ptrdiff_t type to printk-formats (Chris von Recklinghausen) [1985062] - fs: remove ksys_dup() (Chris von Recklinghausen) [1985062] - MAINTAINERS: Add VSPRINTF (Chris von Recklinghausen) [1985062] - tools lib api: Renaming pr_warning to pr_warn (Chris von Recklinghausen) [1985062] - lib: cpu_rmap: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - trace: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - vgacon: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - scsi: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: intel_oaktrail: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: asus-laptop: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: eeepc-laptop: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - oprofile: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - of: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - macintosh: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - idsn: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - ide: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - crypto: n2: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - clocksource: samsung_pwm_timer: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - gdrom: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - drbd: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - x86: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - arm64: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - dump_stack: avoid the livelock of the dump_lock (Chris von Recklinghausen) [1985062] - lib/vsprintf: Add pfw conversion specifier for printing fwnode names (Chris von Recklinghausen) [1985062] - lib/vsprintf: Make use of fwnode API to obtain node names and separators (Chris von Recklinghausen) [1985062] - ABI: Update dev-kmsg documentation to match current kernel behaviour (Chris von Recklinghausen) [1985062] - printk: Replace strncmp() with str_has_prefix() (Chris von Recklinghausen) [1985062] - lib/test_printf: Remove obvious comments from pd and pD tests (Chris von Recklinghausen) [1985062] - lib/test_printf: Add test of null/invalid pointer dereference for dentry (Chris von Recklinghausen) [1985062] - vsprintf: Prevent crash when dereferencing invalid pointers for pD (Chris von Recklinghausen) [1985062] - printk: Do not lose last line in kmsg buffer dump (Chris von Recklinghausen) [1985062] - scripts/gdb: fix lx-dmesg when CONFIG_PRINTK_CALLER is set (Chris von Recklinghausen) [1985062] - lib/vsprintf: Remove support for pF and pf in favour of pS and ps (Chris von Recklinghausen) [1985062] - tracing: kdb: Allow ftdump to skip all but the last few entries (Chris von Recklinghausen) [1985062] - tracing: kdb: The skip_lines parameter should have been skip_entries (Chris von Recklinghausen) [1985062] - tracing: Add trace_total_entries() / trace_total_entries_cpu() (Chris von Recklinghausen) [1985062] - tty: Add NULL TTY driver (Chris von Recklinghausen) [1985062] - treewide: Switch printk users from pf and pF to ps and pS, respectively (Chris von Recklinghausen) [1985062] - iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver (Chris von Recklinghausen) [1985062] - device.h: Add __cold to dev_ logging functions (Chris von Recklinghausen) [1985062] - dynamic_debug: move pr_err from module.c to ddebug_add_module (Chris von Recklinghausen) [1985062] - dynamic_debug: don't duplicate modname in ddebug_add_module (Chris von Recklinghausen) [1985062] - kdb: use bool for binary state indicators (Chris von Recklinghausen) [1985062] - panic: avoid deadlocks in re-entrant console drivers (Chris von Recklinghausen) [1985062] - x86/apic: Trivial coding style fixes (Chris von Recklinghausen) [1985062] - video/console/vgacon: Print big fat warning with nomodeset (Chris von Recklinghausen) [1985062] - device: Add #define dev_fmt similar to #define pr_fmt (Chris von Recklinghausen) [1985062] - bcache: replace 'pF' by 'pS' in seq_printf() (Chris von Recklinghausen) [1985062] - Revert "Merge: redhat: switch secureboot kernel image signing to release keys" (Augusto Caringi) - drm/nouveau/fifo/ga102: initialise chid on return from channel creation (Ben Skeggs) [1997878] - drm/nouveau/ga102-: support ttm buffer moves via copy engine (Ben Skeggs) [1997878] - drm/nouveau/kms/tu102-: delay enabling cursor until after assign_windows (Ben Skeggs) [1997878] - drm/nouveau/kms/nv50: workaround EFI GOP window channel format differences (Ben Skeggs) [1997878] - drm/nouveau/disp: power down unused DP links during init (Ben Skeggs) [1997878] - drm/nouveau: recognise GA107 (Ben Skeggs) [1997878] - PCI: Mark TI C667X to avoid bus reset (Alex Williamson) [1975768] - redhat: switch secureboot kernel image signing to release keys (Bruno Meneguele) - CI: handle RT branches in a single config (Veronika Kabatova) - CI: Fix RT check branch name (Veronika Kabatova) - CI: Drop private CI config (Veronika Kabatova) - CI: extend template use (Veronika Kabatova) - Revert "Merge: mt7921e: enable new Mediatek wireless hardware" (Bruno Meneguele) [2009501] - megaraid_sas: fix concurrent access to ISR between IRQ polling and real interrupt (Tomas Henzl) [2009022] - scsi: megaraid_sas: mq_poll support (Tomas Henzl) [2009022] - [PATCH v2] scsi: qla2xxx: Suppress unnecessary log messages during login (Nilesh Javali) [1982186] - scsi: qla2xxx: Fix excessive messages during device logout (Nilesh Javali) [1982186] - PCI: pciehp: Ignore Link Down/Up caused by DPC (Myron Stowe) [1981741] - arm64: kpti: Fix "kpti=off" when KASLR is enabled (Mark Salter) [1979731] - arm64: Fix CONFIG_ARCH_RANDOM=n build (Mark Salter) [1979731] - redhat/configs: aarch64: add CONFIG_ARCH_RANDOM (Mark Salter) [1979731] - arm64: Implement archrandom.h for ARMv8.5-RNG (Mark Salter) [1979731] - arm64: kconfig: Fix alignment of E0PD help text (Mark Salter) [1979731] - arm64: Use register field helper in kaslr_requires_kpti() (Mark Salter) [1979731] - arm64: Simplify early check for broken TX1 when KASLR is enabled (Mark Salter) [1979731] - arm64: Use a variable to store non-global mappings decision (Mark Salter) [1979731] - arm64: Don't use KPTI where we have E0PD (Mark Salter) [1979731] - arm64: Factor out checks for KASLR in KPTI code into separate function (Mark Salter) [1979731] - redhat/configs: Add CONFIG_ARM64_E0PD (Mark Salter) [1979731] - arm64: Add initial support for E0PD (Mark Salter) [1979731] - arm64: cpufeature: Export matrix and other features to userspace (Mark Salter) [1980098] - arm64: docs: cpu-feature-registers: Document ID_AA64PFR1_EL1 (Mark Salter) [1980098] - docs/arm64: cpu-feature-registers: Rewrite bitfields that don't follow [e, s] (Mark Salter) [1980098] - docs/arm64: cpu-feature-registers: Documents missing visible fields (Mark Salter) [1980098] - arm64: Introduce system_capabilities_finalized() marker (Mark Salter) [1980098] - arm64: entry.S: Do not preempt from IRQ before all cpufeatures are enabled (Mark Salter) [1980098] - docs/arm64: elf_hwcaps: Document HWCAP_SB (Mark Salter) [1980098] - docs/arm64: elf_hwcaps: sort the HWCAP{, 2} documentation by ascending value (Mark Salter) [1980098] - arm64: cpufeature: Treat ID_AA64ZFR0_EL1 as RAZ when SVE is not enabled (Mark Salter) [1980098] - arm64: cpufeature: Effectively expose FRINT capability to userspace (Mark Salter) [1980098] - arm64: cpufeature: Fix feature comparison for CTR_EL0.{CWG,ERG} (Mark Salter) [1980098] - arm64: Expose FRINT capabilities to userspace (Mark Salter) [1980098] - arm64: Expose ARMv8.5 CondM capability to userspace (Mark Salter) [1980098] - docs: arm64: convert perf.txt to ReST format (Mark Salter) [1980098] - docs: arm64: convert docs to ReST and rename to .rst (Mark Salter) [1980098] - Documentation/arm64: HugeTLB page implementation (Mark Salter) [1980098] - Documentation/arm64/sve: Couple of improvements and typos (Mark Salter) [1980098] - arm64: cpufeature: Fix missing ZFR0 in __read_sysreg_by_encoding() (Mark Salter) [1980098] - arm64: Expose SVE2 features for userspace (Mark Salter) [1980098] - arm64: Advertise ARM64_HAS_DCPODP cpu feature (Mark Salter) [1980098] - arm64: add CVADP support to the cache maintenance helper (Mark Salter) [1980098] - arm64: Fix minor issues with the dcache_by_line_op macro (Mark Salter) [1980098] - arm64: Expose DC CVADP to userspace (Mark Salter) [1980098] - arm64: Handle trapped DC CVADP (Mark Salter) [1980098] - arm64: HWCAP: encapsulate elf_hwcap (Mark Salter) [1980098] - arm64: HWCAP: add support for AT_HWCAP2 (Mark Salter) [1980098] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [1965331] - x86/MCE/AMD, EDAC/mce_amd: Remove struct smca_hwid.xec_bitmap (Aristeu Rozanski) [1965331] - EDAC, mce_amd: Print ExtErrorCode and description on a single line (Aristeu Rozanski) [1965331]- scsi: ibmvfc: Fix command state accounting and stale response detection (Steve Best) [1988157] - tasklist_lock, ppc64: Convert tasklist_lock to use qrwlock for ppc64 (Waiman Long) [1978377] - tasklist_lock, ppc64: Provide infrastructure to support specific use of qrwlock (Waiman Long) [1978377] - redhat/configs: Disable CONFIG_PPC_QUEUED_SPINLOCKS (Waiman Long) [1978377] - qspinlock: use signed temporaries for cmpxchg (Waiman Long) [1978377] - powerpc/qspinlock: Optimised atomic_try_cmpxchg_lock() that adds the lock hint (Waiman Long) [1978377] - powerpc/pseries: Implement paravirt qspinlocks for SPLPAR (Waiman Long) [1978377] - powerpc/64s: Implement queued spinlocks and rwlocks (Waiman Long) [1978377] - powerpc: Move spinlock implementation to simple_spinlock (Waiman Long) [1978377] - locking/spinlocks: Remove an instruction from spin and write locks (Waiman Long) [1978377] - net: Fix skb->csum update in inet_proto_csum_replace16(). (Balazs Nemeth) [1975193] - [s390] s390/dasd: fix use after free in dasd path handling (Claudio Imbrenda) [1996764] - powerpc/bpf: Fix detecting BPF atomic instructions (Viktor Malik) [1931483] - selftests/bpf: ringbuf_multi: Test bpf_map__set_inner_map_fd (Viktor Malik) [1931483] - selftests/bpf: ringbuf_multi: Use runtime page size (Viktor Malik) [1931483] - libbpf: Add bpf_map__inner_map API (Viktor Malik) [1931483] - selftests/bpf: ringbuf: Use runtime page size (Viktor Malik) [1931483] - selftests/bpf: mmap: Use runtime page size (Viktor Malik) [1931483] - selftests/bpf: Pass page size from userspace in map_ptr (Viktor Malik) [1931483] - selftests/bpf: Pass page size from userspace in sockopt_sk (Viktor Malik) [1931483] - selftests/bpf: test_progs/sockopt_sk: Convert to use BPF skeleton (Viktor Malik) [1931483] - selftests/bpf: test_progs/sockopt_sk: Remove version (Viktor Malik) [1931483] - powerpc/64s: Fix crashes when toggling entry flush barrier (Diego Domingos) [1894804] - powerpc/64s: flush L1D after user accesses (Diego Domingos) [1894804] - powerpc/uaccess: Evaluate macro arguments once, before user access is allowed (Diego Domingos) [1894804] - powerpc: Fix __clear_user() with KUAP enabled (Diego Domingos) [1894804] - powerpc: Implement user_access_begin and friends (Diego Domingos) [1894804] - powerpc: Add a framework for user access tracking (Diego Domingos) [1894804] - powerpc/64s: flush L1D on kernel entry (Diego Domingos) [1894804] - redhat: enable CONFIG_SLAB_FREELIST_HARDENED (Rafael Aquini) [1862283] - include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for swap (Rafael Aquini) [1862283] - uapi: rename ext2_swab() to swab() and share globally in swab.h (Rafael Aquini) [1862283] - lib/timerqueue: Rely on rbtree semantics for next timer (Phil Auld) [1984798] - e1000e: Do not take care about recovery NVM checksum (Ken Cox) [1984558] - qrtr: disable CONFIG_QRTR for non x86_64 archs (Íñigo Huguet) [1999642] - ceph: fix possible null-pointer dereference in ceph_mdsmap_decode() (Jeff Layton) [1989999] - ceph: fix dereference of null pointer cf (Jeff Layton) [1989999] - ceph: correctly handle releasing an embedded cap flush (Jeff Layton) [1989999] - ceph: take snap_empty_lock atomically with snaprealm refcount change (Jeff Layton) [1989999] - ceph: don't WARN if we're still opening a session to an MDS (Jeff Layton) [1989999] - rbd: don't hold lock_rwsem while running_list is being drained (Jeff Layton) [1989999] - rbd: always kick acquire on "acquired" and "released" notifications (Jeff Layton) [1989999] - ceph: take reference to req->r_parent at point of assignment (Jeff Layton) [1989999] - ceph: eliminate ceph_async_iput() (Jeff Layton) [1989999] - ceph: don't take s_mutex in ceph_flush_snaps (Jeff Layton) [1989999] - ceph: don't take s_mutex in try_flush_caps (Jeff Layton) [1989999] - ceph: don't take s_mutex or snap_rwsem in ceph_check_caps (Jeff Layton) [1989999] - ceph: eliminate session->s_gen_ttl_lock (Jeff Layton) [1989999] - ceph: allow ceph_put_mds_session to take NULL or ERR_PTR (Jeff Layton) [1989999] - ceph: clean up locking annotation for ceph_get_snap_realm and __lookup_snap_realm (Jeff Layton) [1989999] - ceph: add some lockdep assertions around snaprealm handling (Jeff Layton) [1989999] - ceph: decoding error in ceph_update_snap_realm should return -EIO (Jeff Layton) [1989999] - ceph: add IO size metrics support (Jeff Layton) [1989999] - ceph: update and rename __update_latency helper to __update_stdev (Jeff Layton) [1989999] - ceph: simplify the metrics struct (Jeff Layton) [1989999] - libceph: fix doc warnings in cls_lock_client.c (Jeff Layton) [1989999] - libceph: remove unnecessary ret variable in ceph_auth_init() (Jeff Layton) [1989999] - libceph: kill ceph_none_authorizer::reply_buf (Jeff Layton) [1989999] - ceph: make ceph_queue_cap_snap static (Jeff Layton) [1989999] - ceph: remove bogus checks and WARN_ONs from ceph_set_page_dirty (Jeff Layton) [1989999] - libceph: set global_id as soon as we get an auth ticket (Jeff Layton) [1989999] - libceph: don't pass result into ac->ops->handle_reply() (Jeff Layton) [1989999] - ceph: fix error handling in ceph_atomic_open and ceph_lookup (Jeff Layton) [1989999] - ceph: must hold snap_rwsem when filling inode for async create (Jeff Layton) [1989999] - libceph: Fix spelling mistakes (Jeff Layton) [1989999] - libceph: don't set global_id until we get an auth ticket (Jeff Layton) [1989999] - libceph: bump CephXAuthenticate encoding version (Jeff Layton) [1989999] - ceph: don't allow access to MDS-private inodes (Jeff Layton) [1989999] - ceph: fix up some bare fetches of i_size (Jeff Layton) [1989999] - ceph: support getting ceph.dir.rsnaps vxattr (Jeff Layton) [1989999] - ceph: drop pinned_page parameter from ceph_get_caps (Jeff Layton) [1989999] - ceph: fix inode leak on getattr error in __fh_to_dentry (Jeff Layton) [1989999] - ceph: only check pool permissions for regular files (Jeff Layton) [1989999] - ceph: send opened files/pinned caps/opened inodes metrics to MDS daemon (Jeff Layton) [1989999] - ceph: avoid counting the same request twice or more (Jeff Layton) [1989999] - ceph: rename the metric helpers (Jeff Layton) [1989999] - ceph: fix kerneldoc copypasta over ceph_start_io_direct (Jeff Layton) [1989999] - ceph: don't use d_add in ceph_handle_snapdir (Jeff Layton) [1989999] - ceph: don't clobber i_snap_caps on non-I_NEW inode (Jeff Layton) [1989999] - ceph: fix fall-through warnings for Clang (Jeff Layton) [1989999] - net: ceph: Fix a typo in osdmap.c (Jeff Layton) [1989999] - ceph: don't allow type or device number to change on non-I_NEW inodes (Jeff Layton) [1989999] - ceph: defer flushing the capsnap if the Fb is used (Jeff Layton) [1989999] - ceph: allow queueing cap/snap handling after putting cap references (Jeff Layton) [1989999] - ceph: clean up inode work queueing (Jeff Layton) [1989999] - ceph: fix flush_snap logic after putting caps (Jeff Layton) [1989999] - libceph: fix "Boolean result is used in bitwise operation" warning (Jeff Layton) [1989999] - new helper: inode_wrong_type() (Jeff Layton) [1989999] - kabi: Adding symbol single_release (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol single_open (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_read (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_printf (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_lseek (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol unregister_chrdev_region (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_init (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_del (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_alloc (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_add (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol alloc_chrdev_region (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol pcie_capability_read_word (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pcie_capability_read_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pcie_capability_clear_and_set_word (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_write_config_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_write_config_byte (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_set_power_state (drivers/pci/pci.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_read_config_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_read_config_byte (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_irq_vector (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_get_device (drivers/pci/search.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_free_irq_vectors (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_alloc_irq_vectors_affinity (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol kexec_crash_loaded (kernel/kexec_core.c) (Čestmír Kalina) [1945491] - perf/x86/intel: Fix PEBS-via-PT reload base value for Extended PEBS (Michael Petlan) [1998051] - perf/x86/intel/uncore: Fix Add BW copypasta (Michael Petlan) [1998051] - perf/x86/intel/uncore: Add BW counters for GT, IA and IO breakdown (Michael Petlan) [1998051] - Revert "ice: Add initial support framework for LAG" (Michal Schmidt) [1999016] - net: re-initialize slow_gro flag at gro_list_prepare time (Paolo Abeni) [2002367] - cxgb4: dont touch blocked freelist bitmap after free (Rahul Lakkireddy) [1998148] - cxgb4vf: configure ports accessible by the VF (Rahul Lakkireddy) [1961329] - scsi: lpfc: Fix memory leaks in error paths while issuing ELS RDF/SCR request (Dick Kennedy) [1976332] - scsi: lpfc: Keep NDLP reference until after freeing the IOCB after ELS handling (Dick Kennedy) [1976332] - scsi: lpfc: Move initialization of phba->poll_list earlier to avoid crash (Dick Kennedy) [1976332]- md/raid10: properly indicate failure when ending a failed write request (Nigel Croxon) [1983859] - md: Constify attribute_group structs (Nigel Croxon) [1983859] - md: mark some personalities as deprecated (Nigel Croxon) [1983859] - md/raid1: rename print_msg with r1bio_existed (Nigel Croxon) [1983859] - async_xor: check src_offs is not NULL before updating it (Nigel Croxon) [1983859] - async_xor: increase src_offs when dropping destination page (Nigel Croxon) [1983859] - md/raid5: reallocate page array after setting new stripe_size (Nigel Croxon) [1983859] - md/raid5: resize stripe_head when reshape array (Nigel Croxon) [1983859] - md/raid5: let multiple devices of stripe_head share page (Nigel Croxon) [1983859] - md/raid6: let async recovery function support different page offset (Nigel Croxon) [1983859] - md/raid6: let syndrome computor support different page offset (Nigel Croxon) [1983859] - md/raid5: convert to new xor compution interface (Nigel Croxon) [1983859] - md/raid5: add new xor function to support different page offset (Nigel Croxon) [1983859] - md/raid5: make async_copy_data() to support different page offset (Nigel Croxon) [1983859] - md/raid5: add a new member of offset into r5dev (Nigel Croxon) [1983859] - x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR (Jay Shin) [1994421] - crypto: ccp - Add support for new CCP/PSP device ID (Vladis Dronov) [1987094] - crypto: ccp - shutdown SEV firmware on kexec (Vladis Dronov) [1987094] - crypto: ccp - Use list_move_tail instead of list_del/list_add_tail in ccp-dmaengine.c (Vladis Dronov) [1987094] - crypto: ccp: ccp-dev: Fix a little doc-rot (Vladis Dronov) [1987094] - crypto: ccp - Fix a resource leak in an error handling path (Vladis Dronov) [1987094] - crypto: ccp - Annotate SEV Firmware file names (Vladis Dronov) [1987094] - crypto: ccp - Make ccp_dev_suspend and ccp_dev_resume void functions (Vladis Dronov) [1987094] - crypto: ccp - Use DEFINE_SPINLOCK() for spinlock (Vladis Dronov) [1987094] - crypto: ccp - A value assigned to a variable is never used (Vladis Dronov) [1987094] - crypto: ccp - Don't initialize SEV support without the SEV feature (Vladis Dronov) [1987094] - crypto: ccp - fix error handling (Vladis Dronov) [1987094] - crypto: ccp - use generic power management (Vladis Dronov) [1987094] - crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1987094] - crypto: ahash - remove useless setting of type flags (Vladis Dronov) [1987094] - crypto: ccp - Silence strncpy warning (Vladis Dronov) [1987094] - crypto: ccp - permit asynchronous skcipher as fallback (Vladis Dronov) [1987094] - crypto: ccp - Fix sparse warnings (Vladis Dronov) [1987094] - crypto: ccp - Update CCP driver maintainer information (Vladis Dronov) [1987094] - crypto: ccp - Fix use of merged scatterlists (Vladis Dronov) [1987094] - crypto: ccp - remove redundant assignment to variable ret (Vladis Dronov) [1987094] - crypto: ccp - use crypto_shash_tfm_digest() (Vladis Dronov) [1987094] - crypto: hash - introduce crypto_shash_tfm_digest() (Vladis Dronov) [1987094] - crypto: ccp -- don't "select" CONFIG_DMADEVICES (Vladis Dronov) [1987094] - crypto: ccp - Update MAINTAINERS for CCP driver (Vladis Dronov) [1987094] - crypto: ccp - switch from ablkcipher to skcipher (Vladis Dronov) [1987094] - ipc: replace costly bailout check in sysvipc_find_ipc() (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - ipc/util.c: sysvipc_find_ipc() incorrectly updates position index (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - ipc/util.c: sysvipc_find_ipc() should increase position index (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - psi: Fix psi state corruption when schedule() races with cgroup move (Waiman Long) [2002025] - psi: Optimize task switch inside shared cgroups (Waiman Long) [2002025] - kthread: Fix PF_KTHREAD vs to_kthread() race (Waiman Long) [2002025] - sched/fair: Ignore percpu threads for imbalance pulls (Waiman Long) [2002025] - sched: Fix get_push_task() vs migrate_disable() (Waiman Long) [2002025] - sched: Don't defer CPU pick to migration_cpu_stop() (Waiman Long) [2002025] - sched: Simplify migration_cpu_stop() (Waiman Long) [2002025] - sched: Simplify set_affinity_pending refcounts (Waiman Long) [2002025] - sched: Fix affine_move_task() self-concurrency (Waiman Long) [2002025] - sched: Optimize migration_cpu_stop() (Waiman Long) [2002025] - sched: Collate affine_move_task() stoppers (Waiman Long) [2002025] - sched: Simplify migration_cpu_stop() (Waiman Long) [2002025] - sched: Fix migration_cpu_stop() requeueing (Waiman Long) [2002025] - sched: Relax the set_cpus_allowed_ptr() semantics (Waiman Long) [2002025] - sched: Fix CPU hotplug / tighten is_per_cpu_kthread() (Waiman Long) [2002025] - sched: Prepare to use balance_push in ttwu() (Waiman Long) [2002025] - workqueue: Restrict affinity change to rescuer (Waiman Long) [2002025] - workqueue: Tag bound workers with KTHREAD_IS_PER_CPU (Waiman Long) [2002025] - kthread: Extract KTHREAD_IS_PER_CPU (Waiman Long) [2002025] - sched: Don't run cpu-online with balance_push() enabled (Waiman Long) [2002025] - workqueue: Use cpu_possible_mask instead of cpu_active_mask to break affinity (Waiman Long) [2002025] - sched/core: Print out straggler tasks in sched_cpu_dying() (Waiman Long) [2002025] - sched: Optimize finish_lock_switch() (Waiman Long) [2002025] - sched: Fix migration_cpu_stop() WARN (Waiman Long) [2002025] - sched/core: Add missing completion for affine_move_task() waiters (Waiman Long) [2002025] - stop_machine, rcu: Mark functions as notrace (Waiman Long) [2002025] - sched: Comment affine_move_task() (Waiman Long) [2002025] - sched: Deny self-issued __set_cpus_allowed_ptr() when migrate_disable() (Waiman Long) [2002025] - sched/proc: Print accurate cpumask vs migrate_disable() (Waiman Long) [2002025] - sched: Make migrate_disable/enable() independent of RT (Waiman Long) [2002025] - sched: Fix migrate_disable() vs rt/dl balancing (Waiman Long) [2002025] - sched, lockdep: Annotate ->pi_lock recursion (Waiman Long) [2002025] - sched,rt: Use the full cpumask for balancing (Waiman Long) [2002025] - sched,rt: Use cpumask_any*_distribute() (Waiman Long) [2002025] - sched/core: Make migrate disable and CPU hotplug cooperative (Waiman Long) [2002025] - sched: Fix migrate_disable() vs set_cpus_allowed_ptr() (Waiman Long) [2002025] - sched: Add migrate_disable() (Waiman Long) [2002025] - sched: Massage set_cpus_allowed() (Waiman Long) [2002025] - sched: Fix hotplug vs CPU bandwidth control (Waiman Long) [2002025] - sched/hotplug: Consolidate task migration on CPU unplug (Waiman Long) [2002025] - workqueue: Manually break affinity on hotplug (Waiman Long) [2002025] - sched/core: Wait for tasks being pushed away on hotplug (Waiman Long) [2002025] - sched/hotplug: Ensure only per-cpu kthreads run during hotplug (Waiman Long) [2002025] - sched: Fix balance_callback() (Waiman Long) [2002025] - maccess: rename probe_kernel_{read,write} to copy_{from,to}_kernel_nofault (Waiman Long) [2002025] - s390/ftrace: fix potential crashes when switching tracers (Waiman Long) [2002025] - psi: Move PF_MEMSTALL out of task->flags (Waiman Long) [2002025] - psi: Optimize switching tasks inside shared cgroups (Waiman Long) [2002025] - psi: Fix cpu.pressure for cpu.max and competing cgroups (Waiman Long) [2002025] - stop_machine: Make stop_cpus() static (Waiman Long) [2002025] - stop_machine: remove try_stop_cpus helper (Waiman Long) [2002025] - kernel.h: Add non_block_start/end() (Waiman Long) [2002025] - processor: get rid of cpu_relax_yield (Waiman Long) [2002025] - processor: remove spin_cpu_yield (Waiman Long) [2002025] - s390: improve wait logic of stop_machine (Waiman Long) [2002025] - sched/core: Fix typo in comment (Waiman Long) [2002025] - ia64/tlb: Eradicate tlb_migrate_finish() callback (Waiman Long) [2002025] - sched/core: Remove unnecessary unlikely() in push_*_task() (Waiman Long) [2002025] - sched/fair: Reduce long-tail newly idle balance cost (Phil Auld) [1971918] - hwmon: (acpi_power_meter) Fix lockdep splat (Waiman Long) [1997807] - redhat: open the RHEL-8.6 development (Augusto Caringi) [2000679] - rcu: Avoid unneeded function call in rcu_read_unlock() (Waiman Long) [1997500] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [1956419 1972045] - mt7921e: enable module in config (Íñigo Huguet) [1956419 1972045] - Revert tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1999926] - libnvdimm/namespace: Differentiate between probe mapping and runtime mapping (Jeff Moyer) [1795719] - libnvdimm/pfn_dev: Don't clear device memmap area during generic namespace probe (Jeff Moyer) [1795719] - perf/x86/intel/uncore: Clean up error handling path of iio mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix for iio mapping on Skylake Server (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MMIO type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the PCI type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Rename uncore_notifier to uncore_pci_sub_notifier (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MSR type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Parse uncore discovery tables (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Wrap the max dies calculation into an accessor (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Validate MMIO address before accessing (Michael Petlan) [1837330] - perf/x86/intel/uncore: Record the size of mapped area (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL (Michael Petlan) [1837330] - crypto: qat - remove unused macro in FW loader (Vladis Dronov) [1920086] - crypto: qat - check return code of qat_hal_rd_rel_reg() (Vladis Dronov) [1920086] - crypto: qat - report an error if MMP file size is too large (Vladis Dronov) [1920086] - crypto: qat - check MMP size before writing to the SRAM (Vladis Dronov) [1920086] - crypto: qat - return error when failing to map FW (Vladis Dronov) [1920086] - crypto: qat - enable detection of accelerators hang (Vladis Dronov) [1920086] - crypto: qat - Fix a double free in adf_create_ring (Vladis Dronov) [1920086] - crypto: qat - fix error path in adf_isr_resource_alloc() (Vladis Dronov) [1920086] - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (Vladis Dronov) [1920086] - crypto: qat - don't release uninitialized resources (Vladis Dronov) [1920086] - crypto: qat - fix use of 'dma_map_single' (Vladis Dronov) [1920086] - crypto: qat - fix unmap invalid dma address (Vladis Dronov) [1920086] - crypto: qat - fix spelling mistake: "messge" -> "message" (Vladis Dronov) [1920086] - crypto: qat - reduce size of mapped region (Vladis Dronov) [1920086] - crypto: qat - change format string and cast ring size (Vladis Dronov) [1920086] - crypto: qat - fix potential spectre issue (Vladis Dronov) [1920086] - crypto: qat - configure arbiter mapping based on engines enabled (Vladis Dronov) [1920086] - selftest: netfilter: add test case for unreplied tcp connections (Florian Westphal) [1991523] - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (Florian Westphal) [1991523] - net/sched: store the last executed chain also for clsact egress (Davide Caratti) [1980537] - ice: fix Tx queue iteration for Tx timestamp enablement (Ken Cox) [1999743] - perf evsel: Add missing cloning of evsel->use_config_name (Michael Petlan) [1838635] - perf Documentation: Document intel-hybrid support (Michael Petlan) [1838635] - perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Convert perf time to TSC' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Session topology' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Parse and process metrics' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Track with sched_switch' test for hybrid (Michael Petlan) [1838635] - perf tests: Skip 'Setup struct perf_event_attr' test for hybrid (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Roundtrip evsel->name' test (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Parse event definition strings' test (Michael Petlan) [1838635] - perf record: Uniquify hybrid event name (Michael Petlan) [1838635] - perf stat: Warn group events from different hybrid PMU (Michael Petlan) [1838635] - perf stat: Filter out unmatched aggregation for hybrid event (Michael Petlan) [1838635] - perf stat: Add default hybrid events (Michael Petlan) [1838635] - perf record: Create two hybrid 'cycles' events by default (Michael Petlan) [1838635] - perf parse-events: Support event inside hybrid pmu (Michael Petlan) [1838635] - perf parse-events: Compare with hybrid pmu name (Michael Petlan) [1838635] - perf parse-events: Create two hybrid raw events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid cache events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid hardware events (Michael Petlan) [1838635] - perf stat: Uniquify hybrid event name (Michael Petlan) [1838635] - perf pmu: Add hybrid helper functions (Michael Petlan) [1838635] - perf pmu: Save detected hybrid pmus to a global pmu list (Michael Petlan) [1838635] - perf pmu: Save pmu name (Michael Petlan) [1838635] - perf pmu: Simplify arguments of __perf_pmu__new_alias (Michael Petlan) [1838635] - perf jevents: Support unit value "cpu_core" and "cpu_atom" (Michael Petlan) [1838635] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1838635]- rcu: Avoid unneeded function call in rcu_read_unlock() (Waiman Long) [1997500] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [1956419 1972045] - mt7921e: enable module in config (Íñigo Huguet) [1956419 1972045] - Revert tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1999926] - libnvdimm/namespace: Differentiate between probe mapping and runtime mapping (Jeff Moyer) [1795719] - libnvdimm/pfn_dev: Don't clear device memmap area during generic namespace probe (Jeff Moyer) [1795719] - perf/x86/intel/uncore: Clean up error handling path of iio mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix for iio mapping on Skylake Server (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MMIO type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the PCI type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Rename uncore_notifier to uncore_pci_sub_notifier (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MSR type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Parse uncore discovery tables (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Wrap the max dies calculation into an accessor (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Validate MMIO address before accessing (Michael Petlan) [1837330] - perf/x86/intel/uncore: Record the size of mapped area (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL (Michael Petlan) [1837330] - crypto: qat - remove unused macro in FW loader (Vladis Dronov) [1920086] - crypto: qat - check return code of qat_hal_rd_rel_reg() (Vladis Dronov) [1920086] - crypto: qat - report an error if MMP file size is too large (Vladis Dronov) [1920086] - crypto: qat - check MMP size before writing to the SRAM (Vladis Dronov) [1920086] - crypto: qat - return error when failing to map FW (Vladis Dronov) [1920086] - crypto: qat - enable detection of accelerators hang (Vladis Dronov) [1920086] - crypto: qat - Fix a double free in adf_create_ring (Vladis Dronov) [1920086] - crypto: qat - fix error path in adf_isr_resource_alloc() (Vladis Dronov) [1920086] - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (Vladis Dronov) [1920086] - crypto: qat - don't release uninitialized resources (Vladis Dronov) [1920086] - crypto: qat - fix use of 'dma_map_single' (Vladis Dronov) [1920086] - crypto: qat - fix unmap invalid dma address (Vladis Dronov) [1920086] - crypto: qat - fix spelling mistake: "messge" -> "message" (Vladis Dronov) [1920086] - crypto: qat - reduce size of mapped region (Vladis Dronov) [1920086] - crypto: qat - change format string and cast ring size (Vladis Dronov) [1920086] - crypto: qat - fix potential spectre issue (Vladis Dronov) [1920086] - crypto: qat - configure arbiter mapping based on engines enabled (Vladis Dronov) [1920086]- selftest: netfilter: add test case for unreplied tcp connections (Florian Westphal) [1991523] - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (Florian Westphal) [1991523] - net/sched: store the last executed chain also for clsact egress (Davide Caratti) [1980537] - ice: fix Tx queue iteration for Tx timestamp enablement (Ken Cox) [1999743] - perf evsel: Add missing cloning of evsel->use_config_name (Michael Petlan) [1838635] - perf Documentation: Document intel-hybrid support (Michael Petlan) [1838635] - perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Convert perf time to TSC' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Session topology' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Parse and process metrics' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Track with sched_switch' test for hybrid (Michael Petlan) [1838635] - perf tests: Skip 'Setup struct perf_event_attr' test for hybrid (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Roundtrip evsel->name' test (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Parse event definition strings' test (Michael Petlan) [1838635] - perf record: Uniquify hybrid event name (Michael Petlan) [1838635] - perf stat: Warn group events from different hybrid PMU (Michael Petlan) [1838635] - perf stat: Filter out unmatched aggregation for hybrid event (Michael Petlan) [1838635] - perf stat: Add default hybrid events (Michael Petlan) [1838635] - perf record: Create two hybrid 'cycles' events by default (Michael Petlan) [1838635] - perf parse-events: Support event inside hybrid pmu (Michael Petlan) [1838635] - perf parse-events: Compare with hybrid pmu name (Michael Petlan) [1838635] - perf parse-events: Create two hybrid raw events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid cache events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid hardware events (Michael Petlan) [1838635] - perf stat: Uniquify hybrid event name (Michael Petlan) [1838635] - perf pmu: Add hybrid helper functions (Michael Petlan) [1838635] - perf pmu: Save detected hybrid pmus to a global pmu list (Michael Petlan) [1838635] - perf pmu: Save pmu name (Michael Petlan) [1838635] - perf pmu: Simplify arguments of __perf_pmu__new_alias (Michael Petlan) [1838635] - perf jevents: Support unit value "cpu_core" and "cpu_atom" (Michael Petlan) [1838635] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1838635]- mptcp: Only send extra TCP acks in eligible socket states (Paolo Abeni) [1997178] - mptcp: fix possible divide by zero (Paolo Abeni) [1997178] - mptcp: drop tx skb cache (Paolo Abeni) [1997178] - mptcp: fix memory leak on address flush (Paolo Abeni) [1997178] - ice: Only lock to update netdev dev_addr (Michal Schmidt) [1995868] - ice: restart periodic outputs around time changes (Ken Cox) [1992750] - ice: Fix perout start time rounding (Ken Cox) [1992750] - net/sched: ets: fix crash when flipping from 'strict' to 'quantum' (Davide Caratti) [1981184] - ovl: prevent private clone if bind mount is not allowed (Miklos Szeredi) [1993131] {CVE-2021-3732} - gfs2: Don't call dlm after protocol is unmounted (Bob Peterson) [1997193] - gfs2: don't stop reads while withdraw in progress (Bob Peterson) [1997193] - gfs2: Mark journal inodes as "don't cache" (Bob Peterson) [1997193] - bpf: bpftool: Add -fno-asynchronous-unwind-tables to BPF Clang invocation (Yauheni Kaliuta) [1997124] - perf/x86/intel: Apply mid ACK for small core (Michael Petlan) [1838573] - perf/x86/intel/lbr: Zero the xstate buffer on allocation (Michael Petlan) [1838573] - perf: Fix task context PMU for Hetero (Michael Petlan) [1838573] - perf/x86/intel: Fix fixed counter check warning for some Alder Lake (Michael Petlan) [1838573] - perf/x86/lbr: Remove cpuc->lbr_xsave allocation from atomic context (Michael Petlan) [1838573] - x86/fpu/xstate: Fix an xstate size check warning with architectural LBRs (Michael Petlan) [1838573] - perf/x86/rapl: Add support for Intel Alder Lake (Michael Petlan) [1838573] - perf/x86/cstate: Add Alder Lake CPU support (Michael Petlan) [1838573] - perf/x86/msr: Add Alder Lake CPU support (Michael Petlan) [1838573] - perf/x86/intel/uncore: Add Alder Lake support (Michael Petlan) [1838573] - perf: Extend PERF_TYPE_HARDWARE and PERF_TYPE_HW_CACHE (Michael Petlan) [1838573] - perf/x86/intel: Add Alder Lake Hybrid support (Michael Petlan) [1838573] - perf/x86: Support filter_match callback (Michael Petlan) [1838573] - perf/x86/intel: Add attr_update for Hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Add structures for the attributes of Hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Register hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Factor out x86_pmu_show_pmu_cap (Michael Petlan) [1838573] - perf/x86: Remove temporary pmu assignment in event_init (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_extra_regs (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_event_constraints (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_num_counters (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for extra_regs (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for event constraints (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for hardware cache event (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for unconstrained (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for counters (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for intel_ctrl (Michael Petlan) [1838573] - perf/x86/intel: Hybrid PMU support for perf capabilities (Michael Petlan) [1838573] - perf/x86: Track pmu in per-CPU cpu_hw_events (Michael Petlan) [1838573] - perf/x86/intel/lbr: Support XSAVES for arch LBR read (Michael Petlan) [1838573] - perf/x86/intel/lbr: Support XSAVES/XRSTORS for LBR context switch (Michael Petlan) [1838573] - x86/fpu/xstate: Add helpers for LBR dynamic supervisor feature (Michael Petlan) [1838573] - x86/fpu/xstate: Support dynamic supervisor feature for LBR (Michael Petlan) [1838573] - x86/fpu: Use proper mask to replace full instruction mask (Michael Petlan) [1838573] - x86/cpu: Add helper function to get the type of the current hybrid CPU (Michael Petlan) [1838573] - x86/cpufeatures: Enumerate Intel Hybrid Technology feature bit (Michael Petlan) [1838573] - HID: make arrays usage and value to be the same (Benjamin Tissoires) [1974942] - ACPI: PM: s2idle: Invert Microsoft UUID entry and exit (David Arcari) [1960440] - platform/x86: amd-pmc: Fix undefined reference to __udivdi3 (David Arcari) [1960440] - platform/x86: amd-pmc: Fix missing unlock on error in amd_pmc_send_cmd() (David Arcari) [1960440] - platform/x86: amd-pmc: Use return code on suspend (David Arcari) [1960440] - platform/x86: amd-pmc: Add new acpi id for future PMC controllers (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for ACPI ID AMDI0006 (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for logging s0ix counters (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for logging SMU metrics (David Arcari) [1960440] - platform/x86: amd-pmc: call dump registers only once (David Arcari) [1960440] - platform/x86: amd-pmc: Fix SMU firmware reporting mechanism (David Arcari) [1960440] - platform/x86: amd-pmc: Fix command completion code (David Arcari) [1960440] - usb: pci-quirks: disable D3cold on xhci suspend for s2idle on AMD Renoir (David Arcari) [1960440] - ACPI: PM: Only mark EC GPE for wakeup on Intel systems (David Arcari) [1960440] - ACPI: PM: Adjust behavior for field problems on AMD systems (David Arcari) [1960440] - ACPI: PM: s2idle: Add support for new Microsoft UUID (David Arcari) [1960440] - ACPI: PM: s2idle: Add support for multiple func mask (David Arcari) [1960440] - ACPI: PM: s2idle: Refactor common code (David Arcari) [1960440] - ACPI: PM: s2idle: Use correct revision id (David Arcari) [1960440] - ACPI: PM: s2idle: Add missing LPS0 functions for AMD (David Arcari) [1960440] - lockd: Fix invalid lockowner cast after vfs_test_lock (Benjamin Coddington) [1986138]- blk-mq: fix is_flush_rq (Ming Lei) [1992700] - blk-mq: fix kernel panic during iterating over flush request (Ming Lei) [1992700]- smb2: fix use-after-free in smb2_ioctl_query_info() (Ronnie Sahlberg) [1952781] - dm crypt: Avoid percpu_counter spinlock contention in crypt_page_alloc() (Mike Snitzer) [1996854] - md/raid10: Remove rcu_dereference when it doesn't need rcu lock to protect (Nigel Croxon) [1978115] - scsi: csiostor: Mark known unused variable as __always_unused (Raju Rangoju) [1961333] - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() (Raju Rangoju) [1961333] - scsi: csiostor: Remove set but not used variable 'rln' (Raju Rangoju) [1961333] - scsi: csiostor: Return value not required for csio_dfs_destroy (Raju Rangoju) [1961333] - scsi: csiostor: Fix NULL check before debugfs_remove_recursive (Raju Rangoju) [1961333] - scsi: csiostor: Don't enable IRQs too early (Raju Rangoju) [1961333] - scsi: csiostor: Fix spelling typos (Raju Rangoju) [1961333] - scsi: csiostor: Prefer pcie_capability_read_word() (Raju Rangoju) [1961333] - scsi: target: cxgbit: Unmap DMA buffer before calling target_execute_cmd() (Raju Rangoju) [1961394] - net: Use skb_frag_off accessors (Raju Rangoju) [1961394] - net: Use skb accessors in network drivers (Raju Rangoju) [1961394] - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 and ulds (Raju Rangoju) [1961394] - scsi: libcxgbi: Fix a use after free in cxgbi_conn_xmit_pdu() (Raju Rangoju) [1961394] - scsi: libcxgbi: Use kvzalloc instead of opencoded kzalloc/vzalloc (Raju Rangoju) [1961394] - scsi: libcxgbi: Remove unnecessary NULL checks for 'tdata' pointer (Raju Rangoju) [1961394] - scsi: cxgb4i: Remove an unnecessary NULL check for 'cconn' pointer (Raju Rangoju) [1961394] - scsi: cxgb4i: Clean up a debug printk (Raju Rangoju) [1961394] - scsi: cxgb4i: Fix dereference of pointer tdata before it is null checked (Raju Rangoju) [1961394] - scsi: libcxgbi: fix NULL pointer dereference in cxgbi_device_destroy() (Raju Rangoju) [1961394] - scsi: libcxgbi: remove unused function to stop warning (Raju Rangoju) [1961394] - scsi: libcxgbi: add a check for NULL pointer in cxgbi_check_route() (Raju Rangoju) [1961394] - net/chelsio: Delete drive and module versions (Raju Rangoju) [1961394] - chelsio: Replace zero-length array with flexible-array member (Raju Rangoju) [1961394] - [netdrv] treewide: prefix header search paths with $(srctree)/ (Raju Rangoju) [1961394] - libcxgb: fix incorrect ppmax calculation (Raju Rangoju) [1961394] - scsi: cxgb4i: Fix TLS dependency (Raju Rangoju) [1961394] - [target] treewide: Use fallthrough pseudo-keyword (Raju Rangoju) [1961394] - scsi: cxgb4i: Add support for iSCSI segmentation offload (Raju Rangoju) [1961394] - [target] treewide: Use sizeof_field() macro (Raju Rangoju) [1961394] - [target] treewide: replace '---help---' in Kconfig files with 'help' (Raju Rangoju) [1961394] - scsi: cxgb4i: Remove superfluous null check (Raju Rangoju) [1961394]- KVM: nSVM: avoid picking up unsupported bits from L2 in int_ctl (CVE-2021-3653) (Jon Maloy) [1985413] {CVE-2021-3653} - KVM: nSVM: always intercept VMLOAD/VMSAVE when nested (CVE-2021-3656) (Jon Maloy) [1985430] {CVE-2021-3656} - drm/i915/rkl: Remove require_force_probe protection (Lyude Paul) [1985159] - drm/i915/display: support ddr5 mem types (Lyude Paul) [1992233] - drm/i915/adl_s: Update ddi buf translation tables (Lyude Paul) [1992233] - drm/i915/adl_s: Wa_14011765242 is also needed on A1 display stepping (Lyude Paul) [1992233] - drm/i915/adl_s: Extend Wa_1406941453 (Lyude Paul) [1992233] - drm/i915: Implement Wa_1508744258 (Lyude Paul) [1992233] - drm/i915/adl_s: Fix dma_mask_size to 39 bit (Lyude Paul) [1992233] - drm/i915: Add the missing adls vswing tables (Lyude Paul) [1992233] - drm/i915: Add Wa_14011060649 (Lyude Paul) [1992233] - drm/i915/adl_s: Add Interrupt Support (Lyude Paul) [1992233] - drm/amdgpu: add another Renoir DID (Lyude Paul) [1980900]- net/mlx5: Fix flow table chaining (Amir Tzin) [1987139] - openvswitch: fix sparse warning incorrect type (Mark Gray) [1992773] - openvswitch: fix alignment issues (Mark Gray) [1992773] - openvswitch: update kdoc OVS_DP_ATTR_PER_CPU_PIDS (Mark Gray) [1992773] - openvswitch: Introduce per-cpu upcall dispatch (Mark Gray) [1992773] - KVM: X86: Expose bus lock debug exception to guest (Paul Lai) [1842322] - KVM: X86: Add support for the emulation of DR6_BUS_LOCK bit (Paul Lai) [1842322] - scsi: libfc: Fix array index out of bound exception (Chris Leech) [1972643] - scsi: libfc: FDMI enhancements (Chris Leech) [1972643] - scsi: libfc: Add FDMI-2 attributes (Chris Leech) [1972643] - scsi: qedf: Add vendor identifier attribute (Chris Leech) [1972643] - scsi: libfc: Initialisation of RHBA and RPA attributes (Chris Leech) [1972643] - scsi: libfc: Correct the condition check and invalid argument passed (Chris Leech) [1972643] - scsi: libfc: Work around -Warray-bounds warning (Chris Leech) [1972643] - scsi: fc: FDMI enhancement (Chris Leech) [1972643] - scsi: libfc: Move scsi/fc_encode.h to libfc (Chris Leech) [1972643] - scsi: fc: Correct RHBA attributes length (Chris Leech) [1972643] - block: return ELEVATOR_DISCARD_MERGE if possible (Ming Lei) [1991976] - x86/fpu: Prevent state corruption in __fpu__restore_sig() (Terry Bowman) [1970086] - x86/fpu: Invalidate FPU state after a failed XRSTOR from a user buffer (Terry Bowman) [1970086] - x86/pkru: Write hardware init value to PKRU when xstate is init (Terry Bowman) [1970086] - x86/process: Check PF_KTHREAD and not current->mm for kernel threads (Terry Bowman) [1970086] - x86/fpu: Add address range checks to copy_user_to_xstate() (Terry Bowman) [1970086] - selftests/x86: Test signal frame XSTATE header corruption handling (Terry Bowman) [1970086] - Bump DRM backport version to 5.12.14 (Lyude Paul) [1944405] - drm/i915: Use the correct max source link rate for MST (Lyude Paul) [1944405 1966599] - drm/dp_mst: Use Extended Base Receiver Capability DPCD space (Lyude Paul) [1944405 1966599] - drm/i915/display: Defeature PSR2 for RKL and ADL-S (Lyude Paul) [1944405] - drm/i915/adl_s: ADL-S platform Update PCI ids for Mobile BGA (Lyude Paul) [1944405] - drm/amdgpu: wait for moving fence after pinning (Lyude Paul) [1944405] - drm/radeon: wait for moving fence after pinning (Lyude Paul) [1944405] - drm/nouveau: wait for moving fence after pinning v2 (Lyude Paul) [1944405] - radeon: use memcpy_to/fromio for UVD fw upload (Lyude Paul) [1944405] - drm/amd/amdgpu:save psp ring wptr to avoid attack (Lyude Paul) [1944405] - drm/amd/display: Fix potential memory leak in DMUB hw_init (Lyude Paul) [1944405] - drm/amdgpu: refine amdgpu_fru_get_product_info (Lyude Paul) [1944405] - drm/amd/display: Allow bandwidth validation for 0 streams. (Lyude Paul) [1944405] - drm: Lock pointer access in drm_master_release() (Lyude Paul) [1944405] - drm: Fix use-after-free read in drm_getunique() (Lyude Paul) [1944405] - drm/amdgpu: make sure we unpin the UVD BO (Lyude Paul) [1944405] - drm/amdgpu: Don't query CE and UE errors (Lyude Paul) [1944405] - drm/amdgpu/jpeg3: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/jpeg2.5: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn3: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - amdgpu: fix GEM obj leak in amdgpu_display_user_framebuffer_create (Lyude Paul) [1944405] - drm/i915/selftests: Fix return value check in live_breadcrumbs_smoketest() (Lyude Paul) [1944405] - drm/amdgpu: stop touching sched.ready in the backend (Lyude Paul) [1944405] - drm/amd/amdgpu: fix a potential deadlock in gpu reset (Lyude Paul) [1944405] - drm/amdgpu: Fix a use-after-free (Lyude Paul) [1944405] - drm/amd/amdgpu: fix refcount leak (Lyude Paul) [1944405] - drm/amd/display: Disconnect non-DP with no EDID (Lyude Paul) [1944405] - drm/amdgpu/jpeg2.0: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn2.5: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn2.0: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdkfd: correct sienna_cichlid SDMA RLC register offset error (Lyude Paul) [1944405] - drm/amdgpu/vcn1: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amd/pm: correct MGpuFanBoost setting (Lyude Paul) [1944405] - drm/i915: Reenable LTTPR non-transparent LT mode for DPCD_REV<1.4 (Lyude Paul) [1944405] - drm/i915/gt: Disable HiZ Raw Stall Optimization on broken gen7 (Lyude Paul) [1944405] - dma-buf: fix unintended pin/unpin warnings (Lyude Paul) [1944405] - drm/amdgpu: update sdma golden setting for Navi12 (Lyude Paul) [1944405] - drm/amdgpu: update gc golden setting for Navi12 (Lyude Paul) [1944405] - drm/amdgpu: disable 3DCGCG on picasso/raven1 to avoid compute hang (Lyude Paul) [1944405] - drm/amdgpu: Fix GPU TLB update error when PAGE_SIZE > AMDGPU_PAGE_SIZE (Lyude Paul) [1944405] - drm/radeon: use the dummy page for GART if needed (Lyude Paul) [1944405] - drm/amd/display: Use the correct max downscaling value for DCN3.x family (Lyude Paul) [1944405] - drm/i915/gem: Pin the L-shape quirked object as unshrinkable (Lyude Paul) [1944405] - drm/ttm: Do not add non-system domain BO into swap list (Lyude Paul) [1944405] - drm/amd/display: Fix two cursor duplication when using overlay (Lyude Paul) [1944405] - amdgpu/pm: Prevent force of DCEFCLK on NAVI10 and SIENNA_CICHLID (Lyude Paul) [1944405] - drm/i915/display: fix compiler warning about array overrun (Lyude Paul) [1944405] - drm/i915: Fix crash in auto_retire (Lyude Paul) [1944405] - drm/i915/overlay: Fix active retire callback alignment (Lyude Paul) [1944405] - drm/i915: Read C0DRB3/C1DRB3 as 16 bits again (Lyude Paul) [1944405] - drm/i915/gt: Fix a double free in gen8_preallocate_top_level_pdp (Lyude Paul) [1944405] - drm/i915/dp: Use slow and wide link training for everything (Lyude Paul) [1944405] - drm/i915: Avoid div-by-zero on gen2 (Lyude Paul) [1944405] - drm/amd/display: Initialize attribute for hdcp_srm sysfs file (Lyude Paul) [1944405] - drm/radeon/dpm: Disable sclk switching on Oland when two 4K 60Hz monitors are connected (Lyude Paul) [1944405] - drm/radeon: Avoid power table parsing memory leaks (Lyude Paul) [1944405] - drm/radeon: Fix off-by-one power_state index heap overwrite (Lyude Paul) [1944405] - drm/amdgpu: Add mem sync flag for IB allocated by SA (Lyude Paul) [1944405] - drm/amd/display: add handling for hdcp2 rx id list validation (Lyude Paul) [1944405] - drm/amd/display: fixed divide by zero kernel crash during dsc enablement (Lyude Paul) [1944405] - drm/amd/display: Force vsync flip when reconfiguring MPCC (Lyude Paul) [1944405] - arm64: enable tlbi range instructions (Jeremy Linton) [1861872] - arm64: tlb: Use the TLBI RANGE feature in arm64 (Jeremy Linton) [1861872] - arm64: tlb: Detect the ARMv8.4 TLBI RANGE feature (Jeremy Linton) [1861872] - arm64/cpufeature: Add remaining feature bits in ID_AA64ISAR0 register (Jeremy Linton) [1861872] - arm64: tlbflush: Ensure start/end of address range are aligned to stride (Jeremy Linton) [1861872] - arm64: Detect the ARMv8.4 TTL feature (Jeremy Linton) [1861872] - arm64: tlbi: Set MAX_TLBI_OPS to PTRS_PER_PTE (Jeremy Linton) [1861872]- bpf: Fix integer overflow involving bucket_size (Jiri Olsa) [1992588] - bpf: Fix leakage due to insufficient speculative store bypass mitigation (Jiri Olsa) [1992588] - bpf: Introduce BPF nospec instruction for mitigating Spectre v4 (Jiri Olsa) [1992588] - bpf: Fix OOB read when printing XDP link fdinfo (Jiri Olsa) [1992588] - bpf, test: fix NULL pointer dereference on invalid expected_attach_type (Jiri Olsa) [1992588] - bpf: Fix tail_call_reachable rejection for interpreter when jit failed (Jiri Olsa) [1992588] - bpf: Track subprog poke descriptors correctly and fix use-after-free (Jiri Olsa) [1992588] - bpf: Fix null ptr deref with mixed tail calls and subprogs (Jiri Olsa) [1992588] - bpf: Fix leakage under speculation on mispredicted branches (Jiri Olsa) [1992588] - bpf: Set mac_len in bpf_skb_change_head (Jiri Olsa) [1992588] - bpf: Prevent writable memory-mapping of read-only ringbuf pages (Jiri Olsa) [1992588] - bpf: Fix alu32 const subreg bound tracking on bitwise operations (Jiri Olsa) [1992588] - xsk: Fix broken Tx ring validation (Jiri Olsa) [1992588] - xsk: Fix for xp_aligned_validate_desc() when len == chunk_size (Jiri Olsa) [1992588] - bpf: link: Refuse non-O_RDWR flags in BPF_OBJ_GET (Jiri Olsa) [1992588] - bpf: Refcount task stack in bpf_get_task_stack (Jiri Olsa) [1992588] - bpf: Use NOP_ATOMIC5 instead of emit_nops(&prog, 5) for BPF_TRAMP_F_CALL_ORIG (Jiri Olsa) [1992588] - selftest/bpf: Add a test to check trampoline freeing logic. (Jiri Olsa) [1992588] - bpf: Fix fexit trampoline. (Jiri Olsa) [1992588] - ftrace: Fix modify_ftrace_direct. (Jiri Olsa) [1992588] - ftrace: Add a helper function to modify_ftrace_direct() to allow arch optimization (Jiri Olsa) [1992588] - ftrace: Add helper find_direct_entry() to consolidate code (Jiri Olsa) [1992588] - bpf: Fix truncation handling for mod32 dst reg wrt zero (Jiri Olsa) [1992588] - bpf: Fix an unitialized value in bpf_iter (Jiri Olsa) [1992588] - bpf_lru_list: Read double-checked variable once without lock (Jiri Olsa) [1992588] - mt76: validate rx A-MSDU subframes (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - ath11k: Drop multicast fragments (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath11k: Clear the fragment cache during key install (Íñigo Huguet) [1991459] {CVE-2020-24587} - ath10k: Validate first subframe of A-MSDU before processing the list (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - ath10k: Fix TKIP Michael MIC verification for PCIe (Íñigo Huguet) [1991459] {CVE-2020-26141} - ath10k: drop MPDU which has discard flag set by firmware for SDIO (Íñigo Huguet) [1991459] {CVE-2020-24588} - ath10k: drop fragments with multicast DA for SDIO (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath10k: drop fragments with multicast DA for PCIe (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath10k: add CCMP PN replay protection for fragmented frames for PCIe (Íñigo Huguet) [1991459] - mac80211: extend protection against mixed key and fragment cache attacks (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: do not accept/forward invalid EAPOL frames (Íñigo Huguet) [1991459] {CVE-2020-26139} - mac80211: prevent attacks on TKIP/WEP as well (Íñigo Huguet) [1991459] {CVE-2020-26141} - mac80211: check defrag PN against current frame (Íñigo Huguet) [1991459] - mac80211: add fragment cache to sta_info (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: drop A-MSDUs on old ciphers (Íñigo Huguet) [1991459] {CVE-2020-24588} - cfg80211: mitigate A-MSDU aggregation attacks (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - mac80211: properly handle A-MSDUs that start with an RFC 1042 header (Íñigo Huguet) [1991459] - mac80211: prevent mixed key and fragment cache attacks (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: assure all fragments are encrypted (Íñigo Huguet) [1991459] {CVE-2020-26147} - tipc: call tipc_wait_for_connect only when dlen is not 0 (Xin Long) [1989361] - mptcp: remove tech preview warning (Florian Westphal) [1985120] - tcp: consistently disable header prediction for mptcp (Florian Westphal) [1985120] - selftests: mptcp: fix case multiple subflows limited by server (Florian Westphal) [1985120] - selftests: mptcp: turn rp_filter off on each NIC (Florian Westphal) [1985120] - selftests: mptcp: display proper reason to abort tests (Florian Westphal) [1985120] - mptcp: properly account bulk freed memory (Florian Westphal) [1985120] - mptcp: fix 'masking a bool' warning (Florian Westphal) [1985120] - mptcp: refine mptcp_cleanup_rbuf (Florian Westphal) [1985120] - mptcp: use fast lock for subflows when possible (Florian Westphal) [1985120] - mptcp: avoid processing packet if a subflow reset (Florian Westphal) [1985120] - mptcp: add sk parameter for mptcp_get_options (Florian Westphal) [1985120] - mptcp: fix syncookie process if mptcp can not_accept new subflow (Florian Westphal) [1985120] - mptcp: fix warning in __skb_flow_dissect() when do syn cookie for subflow join (Florian Westphal) [1985120] - mptcp: avoid race on msk state changes (Florian Westphal) [1985120] - mptcp: fix 32 bit DSN expansion (Florian Westphal) [1985120] - mptcp: fix bad handling of 32 bit ack wrap-around (Florian Westphal) [1985120] - tcp: parse mptcp options contained in reset packets (Florian Westphal) [1985120] - ionic: count csum_none when offload enabled (Jonathan Toppins) [1991646] - ionic: fix up dim accounting for tx and rx (Jonathan Toppins) [1991646] - ionic: remove intr coalesce update from napi (Jonathan Toppins) [1991646] - ionic: catch no ptp support earlier (Jonathan Toppins) [1991646] - ionic: make all rx_mode work threadsafe (Jonathan Toppins) [1991646] - dmaengine: idxd: Fix missing error code in idxd_cdev_open() (Jerry Snitselaar) [1990637] - dmaengine: idxd: add missing dsa driver unregister (Jerry Snitselaar) [1990637] - dmaengine: idxd: add engine 'struct device' missing bus type assignment (Jerry Snitselaar) [1990637] - dmaengine: idxd: remove MSIX masking for interrupt handlers (Jerry Snitselaar) [1990637] - dmaengine: idxd: Use cpu_feature_enabled() (Jerry Snitselaar) [1990637] - dmaengine: idxd: enable SVA feature for IOMMU (Jerry Snitselaar) [1990637] - dmagenine: idxd: Don't add portal offset in idxd_submit_desc (Jerry Snitselaar) [1990637] - ethtool: strset: fix message length calculation (Balazs Nemeth) [1989003] - net: add strict checks in netdev_name_node_alt_destroy() (Andrea Claudi) [1859038] - net: rtnetlink: fix bugs in rtnl_alt_ifname() (Andrea Claudi) [1859038] - net: rtnetlink: add linkprop commands to add and delete alternative ifnames (Andrea Claudi) [1859038] - net: check all name nodes in __dev_alloc_name (Andrea Claudi) [1859038] - net: fix a leak in register_netdevice() (Andrea Claudi) [1859038] - tun: fix memory leak in error path (Andrea Claudi) [1859038] - net: propagate errors correctly in register_netdevice() (Andrea Claudi) [1859038] - net: introduce name_node struct to be used in hashlist (Andrea Claudi) [1859038] - net: procfs: use index hashlist instead of name hashlist (Andrea Claudi) [1859038] - configs: Enable CONFIG_CHELSIO_INLINE_CRYPTO (Raju Rangoju) [1961368] - cxgb4/ch_ktls: Clear resources when pf4 device is removed (Raju Rangoju) [1961374] - ch_ktls: Remove redundant variable result (Raju Rangoju) [1961374] - ch_ktls: do not send snd_una update to TCB in middle (Raju Rangoju) [1961374] - ch_ktls: tcb close causes tls connection failure (Raju Rangoju) [1961374] - ch_ktls: fix device connection close (Raju Rangoju) [1961374] - ch_ktls: Fix kernel panic (Raju Rangoju) [1961374] - ch_ktls: fix enum-conversion warning (Raju Rangoju) [1961374] - net: ethernet: chelsio: inline_crypto: Mundane typos fixed throughout the file chcr_ktls.c (Raju Rangoju) [1961374] - ch_ipsec: Remove initialization of rxq related data (Raju Rangoju) [1961388] - ch_ktls: fix build warning for ipv4-only config (Raju Rangoju) [1961374] - ch_ktls: lock is not freed (Raju Rangoju) [1961374] - ch_ktls: stop the txq if reaches threshold (Raju Rangoju) [1961374] - ch_ktls: tcb update fails sometimes (Raju Rangoju) [1961374] - ch_ktls/cxgb4: handle partial tag alone SKBs (Raju Rangoju) [1961374] - ch_ktls: don't free skb before sending FIN (Raju Rangoju) [1961374] - ch_ktls: packet handling prior to start marker (Raju Rangoju) [1961374] - ch_ktls: Correction in middle record handling (Raju Rangoju) [1961374] - ch_ktls: missing handling of header alone (Raju Rangoju) [1961374] - ch_ktls: Correction in trimmed_len calculation (Raju Rangoju) [1961374] - cxgb4/ch_ktls: creating skbs causes panic (Raju Rangoju) [1961374] - ch_ktls: Update cheksum information (Raju Rangoju) [1961374] - ch_ktls: Correction in finding correct length (Raju Rangoju) [1961374] - cxgb4/ch_ktls: decrypted bit is not enough (Raju Rangoju) [1961374] - cxgb4/ch_ipsec: Replace the module name to ch_ipsec from chcr (Raju Rangoju) [1961388] - cxgb4/ch_ktls: ktls stats are added at port level (Raju Rangoju) [1961374] - ch_ktls: Issue if connection offload fails (Raju Rangoju) [1961374] - chelsio/chtls: Re-add dependencies on CHELSIO_T4 to fix modular CHELSIO_T4 (Raju Rangoju) [1961388] - chelsio/chtls: CHELSIO_INLINE_CRYPTO should depend on CHELSIO_T4 (Raju Rangoju) [1961388] - crypto: chelsio - fix minor indentation issue (Raju Rangoju) [1961368] - crypto/chcr: move nic TLS functionality to drivers/net (Raju Rangoju) [1961368] - cxgb4/ch_ipsec: Registering xfrmdev_ops with cxgb4 (Raju Rangoju) [1961388] - crypto/chcr: Moving chelsio's inline ipsec functionality to /drivers/net (Raju Rangoju) [1961368] - chelsio/chtls: separate chelsio tls driver from crypto driver (Raju Rangoju) [1961368] - crypto: chelsio - Fix some pr_xxx messages (Raju Rangoju) [1961368] - crypto: chelsio - Avoid some code duplication (Raju Rangoju) [1961368] - crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Raju Rangoju) [1961368] - crypto: aead - remove useless setting of type flags (Raju Rangoju) [1961368] - crypto: Replace zero-length array with flexible-array (Raju Rangoju) [1961368] - [Crypto] treewide: replace '---help---' in Kconfig files with 'help' (Raju Rangoju) [1961368] - Crypto/chcr: Checking cra_refcnt before unregistering the algorithms (Raju Rangoju) [1961368] - Crypto/chcr: Calculate src and dst sg lengths separately for dma map (Raju Rangoju) [1961368] - Crypto/chcr: Fixes a coccinile check error (Raju Rangoju) [1961368] - Crypto/chcr: Fixes compilations warnings (Raju Rangoju) [1961368] - crypto/chcr: IPV6 code needs to be in CONFIG_IPV6 (Raju Rangoju) [1961368] - crypto: lib/sha1 - remove unnecessary includes of linux/cryptohash.h (Raju Rangoju) [1961368] - Crypto/chcr: fix for hmac(sha) test fails (Raju Rangoju) [1961368] - Crypto/chcr: fix for ccm(aes) failed test (Raju Rangoju) [1961368] - Crypto/chcr: fix ctr, cbc, xts and rfc3686-ctr failed tests (Raju Rangoju) [1961368] - crypto: chelsio - remove redundant assignment to variable error (Raju Rangoju) [1961368] - chcr: Fix CPU hard lockup (Raju Rangoju) [1961368] - crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Raju Rangoju) [1961368] - crypto: chelsio - switch to skcipher API (Raju Rangoju) [1961368] - crypto: chelsio - Remove VLA usage of skcipher (Raju Rangoju) [1961368]- tracing: Fix bug in rb_per_cpu_empty() that might cause deadloop. (Chris von Recklinghausen) [1989485] {CVE-2021-3679} - vmlinux.lds.h: Keep .ctors.* with .ctors (Jan Stancek) [1993208] - spi: pxa2xx: Add support for Intel Alder Lake PCH-P (Steve Best) [1978463] - bnxt_en: allow promiscuous mode for trusted VFs (Jonathan Toppins) [1730616] - arm64: memory: Add missing brackets to untagged_addr() macro (Chris von Recklinghausen) [1955809] - arm64: tags: Preserve tags for addresses translated via TTBR1 (Chris von Recklinghausen) [1955809] - arm64: entry: Move ct_user_exit before any other exception (Chris von Recklinghausen) [1955809] - arm64: memory: Implement __tag_set() as common function (Chris von Recklinghausen) [1955809] - arm64: mm: Really fix sparse warning in untagged_addr() (Chris von Recklinghausen) [1955809] - arm64: untag user pointers in access_ok and __uaccess_mask_ptr (Chris von Recklinghausen) [1955809] - arm64/mm: fix variable 'tag' set but not used (Chris von Recklinghausen) [1955809] - arm64: entry: SP Alignment Fault doesn't write to FAR_EL1 (Chris von Recklinghausen) [1955809] - arm64: compat: Add separate CP15 trapping hook (Chris von Recklinghausen) [1955809] - arm64: don't restore GPRs when context tracking (Chris von Recklinghausen) [1955809]- bareudp: Fix invalid read beyond skb's linear data (Guillaume Nault) [1990938] - perf/x86/amd: Don't touch the AMD64_EVENTSEL_HOSTONLY bit inside the guest (Michael Petlan) [1990695] - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands (Balazs Nemeth) [1956825] - net: dcb: Validate netlink message in DCB handler (Balazs Nemeth) [1956825] - xfrm: Fix RCU vs hash_resize_mutex lock inversion (Sabrina Dubroca) [1988405] - Revert "xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype" (Sabrina Dubroca) [1988405] - xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype (Sabrina Dubroca) [1988405] - [s390] s390/AP: support new dynamic AP bus size limit (Claudio Imbrenda) [1974581] - net: sched: act_mirred: Reset ct info when mirror/redirect skb (Hangbin Liu) [1980532] - ucounts: Move max_time_namespace according to ucount_type (Alex Gladkov) [1982954] - perf vendor events power10: Adds 24x7 nest metric events for power10 platform (Diego Domingos) [1946650] - perf/core: fix backport of PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - perf/core: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Diego Domingos) [1946650] - perf vendor events powerpc: Fix eventcode of power10 JSON events (Diego Domingos) [1946650] - perf vendor events: Initial JSON/events list for power10 platform (Diego Domingos) [1946650] - powerpc/perf: Fix sampled instruction type for larx/stcx (Diego Domingos) [1946650] - powerpc/perf: Fix the threshold event selection for memory events in power10 (Diego Domingos) [1946650] - perf sort: Display sort dimension p_stage_cyc only on supported archs (Diego Domingos) [1946650] - perf tools: Support pipeline stage cycles for powerpc (Diego Domingos) [1946650] - perf powerpc: Add support for PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - perf sort: Add dynamic headers for perf report columns (Diego Domingos) [1946650] - powerpc/perf: Expose processor pipeline stage cycles using PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - Documentation/admin-guide: kernel-parameters: fix "disable_ddw" wording (Diego Domingos) [1946650] - powerpc/perf: Support PERF_SAMPLE_DATA_PAGE_SIZE (Diego Domingos) [1946650] - perf/core: Add PERF_SAMPLE_DATA_PAGE_SIZE (Diego Domingos) [1946650] - powerpc/perf: Infrastructure to support checking of attr.config* (Diego Domingos) [1946650] - powerpc/perf: Add platform specific check_attr_config (Diego Domingos) [1946650] - ice: add support for auxiliary input/output pins (Jonathan Toppins) [1956913] - ice: enable transmit timestamps for E810 devices (Jonathan Toppins) [1944818] - ice: enable receive hardware timestamping (Jonathan Toppins) [1944818] - ice: report the PTP clock index in ethtool .get_ts_info (Jonathan Toppins) [1944818] - ice: register 1588 PTP clock device object for E810 devices (Jonathan Toppins) [1944818] - ice: add low level PTP clock access functions (Jonathan Toppins) [1944818] - ice: add support for set/get of driver-stored firmware parameters (Jonathan Toppins) [1944818] - ice: process 1588 PTP capabilities during initialization (Jonathan Toppins) [1944818] - ice: add support for sideband messages (Jonathan Toppins) [1944818]- bnxt_en: Fix static checker warning in bnxt_fw_reset_task() (Jonathan Toppins) [1989274] - bnxt_en: Check abort error state in bnxt_half_open_nic() (Jonathan Toppins) [1989274] - bnxt_en: fix error path of FW reset (Jonathan Toppins) [1989274] - bnxt_en: Add missing check for BNXT_STATE_ABORT_ERR in bnxt_fw_rset_task() (Jonathan Toppins) [1989274] - bnxt_en: Refresh RoCE capabilities in bnxt_ulp_probe() (Jonathan Toppins) [1989274] - bnxt_en: reject ETS settings that will starve a TC (Jonathan Toppins) [1989274] - bnxt_en: don't disable an already disabled PCI device (Jonathan Toppins) [1989274] - bnxt_en: Remove the read of BNXT_FW_RESET_INPROG_REG after firmware reset. (Jonathan Toppins) [1989274] - i40e: Fix log TC creation failure when max num of queues is exceeded (Stefan Assmann) [1920274] - i40e: Fix queue-to-TC mapping on Tx (Stefan Assmann) [1920274] - i40e: Add additional info to PHY type error (Stefan Assmann) [1920274] - i40e: Fix firmware LLDP agent related warning (Stefan Assmann) [1920274] - i40e: Fix logic of disabling queues (Stefan Assmann) [1920274] - i40e: add support for PTP external synchronization clock (Stefan Assmann) [1920274] - i40e: improve locking of mac_filter_hash (Stefan Assmann) [1920274] - i40e: Fix missing rtnl locking when setting up pf switch (Stefan Assmann) [1920274] - i40e: fix PTP on 5Gb links (Stefan Assmann) [1920274] - i40e: Fix autoneg disabling for non-10GBaseT links (Stefan Assmann) [1920274] - i40e: Fix error handling in i40e_vsi_open (Stefan Assmann) [1920274] - intel: Remove rcu_read_lock() around XDP program invocation (Stefan Assmann) [1920274] - i40e: clean up packet type lookup table (Stefan Assmann) [1920274] - i40e: add correct exception tracing for XDP (Stefan Assmann) [1920274] - i40e: Remove LLDP frame filters (Stefan Assmann) [1920274] - i40e: Fix PHY type identifiers for 2.5G and 5G adapters (Stefan Assmann) [1920274] - i40e: Fix use-after-free in i40e_client_subtask() (Stefan Assmann) [1920274] - i40e: fix broken XDP support (Stefan Assmann) [1920274] - i40e: refactor repeated link state reporting code (Stefan Assmann) [1920274] - i40e: optimize for XDP_REDIRECT in xsk path (Stefan Assmann) [1920274] - i40e: fix the panic when running bpf in xdpdrv mode (Stefan Assmann) [1920274] - i40e: Fix sparse warning: missing error code 'err' (Stefan Assmann) [1920274] - i40e: Fix sparse error: 'vsi->netdev' could be null (Stefan Assmann) [1920274] - i40e: Fix sparse error: uninitialized symbol 'ring' (Stefan Assmann) [1920274] - i40e: Fix sparse errors in i40e_txrx.c (Stefan Assmann) [1920274] - i40e: Fix display statistics for veb_tc (Stefan Assmann) [1920274] - i40e: fix receiving of single packets in xsk zero-copy mode (Stefan Assmann) [1920274] - i40e: Fix inconsistent indenting (Stefan Assmann) [1920274] - i40e: Fix oops at i40e_rebuild() (Stefan Assmann) [1920274] - i40e: Fix kernel oops when i40e driver removes VF's (Stefan Assmann) [1920274] - i40e: Added Asym_Pause to supported link modes (Stefan Assmann) [1920274] - net: i40e: remove repeated words (Stefan Assmann) [1920274] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Stefan Assmann) [1920274] - intel: clean up mismatched header comments (Stefan Assmann) [1920274] - intel: Update drivers to use ethtool_sprintf (Stefan Assmann) [1920274] - i40e: move headroom initialization to i40e_configure_rx_ring (Stefan Assmann) [1920274] - i40e: Fix endianness conversions (Stefan Assmann) [1920274] - i40e: Fix add TC filter for IPv6 (Stefan Assmann) [1920274] - i40e: Fix addition of RX filters after enabling FW LLDP agent (Stefan Assmann) [1920274] - i40e: Fix overwriting flow control settings during driver loading (Stefan Assmann) [1920274] - i40e: Add zero-initialization of AQ command structures (Stefan Assmann) [1920274] - i40e: Fix memory leak in i40e_probe (Stefan Assmann) [1920274] - i40e: Fix flow for IPv6 next header (extension header) (Stefan Assmann) [1920274] - i40e: Fix incorrect argument in call to ipv6_addr_any() (Stefan Assmann) [1920274] - i40e: store the result of i40e_rx_offset() onto i40e_ring (Stefan Assmann) [1920274] - i40e: Simplify the do-while allocation loop (Stefan Assmann) [1920274] - i40e: adjust i40e_is_non_eop (Stefan Assmann) [1920274] - i40e: drop misleading function comments (Stefan Assmann) [1920274] - i40e: drop redundant check when setting xdp prog (Stefan Assmann) [1920274] - i40e: remove the useless value assignment in i40e_clean_adminq_subtask (Stefan Assmann) [1920274] - i40e: VLAN field for flow director (Stefan Assmann) [1920274] - i40e: Add flow director support for IPv6 (Stefan Assmann) [1920274] - i40e: Add EEE status getting & setting implementation (Stefan Assmann) [1920274] - i40e: Fix uninitialized variable mfs_max (Stefan Assmann) [1920274] - i40e: Add netlink callbacks support for software based DCB (Stefan Assmann) [1920274] - i40e: Add init and default config of software based DCB (Stefan Assmann) [1920274] - i40e: Add hardware configuration for software based DCB (Stefan Assmann) [1920274] - i40e: Log error for oversized MTU on device (Stefan Assmann) [1920274] - i40e: consolidate handling of XDP program actions (Stefan Assmann) [1920274] - i40e: remove the redundant buffer info updates (Stefan Assmann) [1920274] - i40e: remove unnecessary cleaned_count updates (Stefan Assmann) [1920274] - i40e: remove unnecessary memory writes of the next to clean pointer (Stefan Assmann) [1920274] - i40e: Use batched xsk Tx interfaces to increase performance (Stefan Assmann) [1920274] - i40e: convert to new udp_tunnel infrastructure (Stefan Assmann) [1920274] - netfilter: nf_tables: skip module reference count bump on object updates (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: fix unexpected EOPNOTSUPP error (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: Fix an Oops in nf_tables_updobj() error handling (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: fix possible null-pointer dereference in object update (Fernando Fernandez Mancera) [1944487] - netfilter: nft_quota: add quota object update support (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: Introduce stateful object update operation (Fernando Fernandez Mancera) [1944487] - cifs: retry lookup and readdir when EAGAIN is returned. (Ronnie Sahlberg) [1972411] - netfilter: nf_tables: Fix dereference of null pointer flow (Florian Westphal) [1985087] - netfilter: nf_tables: memleak in hw offload abort path (Florian Westphal) [1985087] - netfilter: nft_tproxy: restrict support to TCP and UDP transport protocols (Florian Westphal) [1985087] - netfilter: synproxy: Fix out of bounds when parsing TCP options (Florian Westphal) [1985087] - netfilter: nfnetlink_cthelper: hit EBUSY on updates if size mismatches (Florian Westphal) [1985087] - ipvs: ignore IP_VS_SVC_F_HASHED flag when adding service (Florian Westphal) [1985087] - netfilter: nftables: avoid overflows in nft_hash_buckets() (Florian Westphal) [1985087] - netfilter: nfnetlink_osf: Fix a missing skb_header_pointer() NULL check (Florian Westphal) [1985087] - netfilter: nf_tables_offload: check FLOW_DISSECTOR_KEY_BASIC in VLAN transfer logic (Florian Westphal) [1985087] - netfilter: nftables_offload: special ethertype handling for VLAN (Florian Westphal) [1985087] - netfilter: nftables_offload: VLAN id needs host byteorder in flow dissector (Florian Westphal) [1985087] - netfilter: nft_payload: fix C-VLAN offload support (Florian Westphal) [1985087] - ipvs: allow connection reuse for unconfirmed conntrack (Florian Westphal) [1985087] - net: fix GRO skb truesize update (Paolo Abeni) [1987391] - sk_buff: avoid potentially clearing 'slow_gro' field (Paolo Abeni) [1987391] - veth: use skb_prepare_for_gro() (Paolo Abeni) [1987391] - skbuff: allow 'slow_gro' for skb carring sock reference (Paolo Abeni) [1987391] - net: optimize GRO for the common case. (Paolo Abeni) [1987391] - sk_buff: track extension status in slow_gro (Paolo Abeni) [1987391] - sk_buff: track dst status in slow_gro (Paolo Abeni) [1987391] - sk_buff: introduce 'slow_gro' flags (Paolo Abeni) [1987391] - skbuff: Fix build with SKB extensions disabled (Paolo Abeni) [1987391] - skbuff: Release nfct refcount on napi stolen or re-used skbs (Paolo Abeni) [1987391] - selftests: net: veth: add tests for set_channel (Paolo Abeni) [1987391] - veth: create by default nr_possible_cpus queues (Paolo Abeni) [1987391] - veth: implement support for set_channel ethtool op (Paolo Abeni) [1987391] - veth: factor out initialization helper (Paolo Abeni) [1987391] - veth: always report zero combined channels (Paolo Abeni) [1987391] - veth: Implement ethtool's get_channelis() callback (Paolo Abeni) [1987391] - net: add GSO UDP L4 and GSO fraglists to the list of software-backed types (Paolo Abeni) [1987391] - ice: Support RSS configure removal for AVF (Jonathan Toppins) [1946726] - ice: Enable RSS configure for AVF (Jonathan Toppins) [1946726] - ice: Add helper function to get the VF's VSI (Jonathan Toppins) [1946726] - ice: remove redundant assignment to pointer vsi (Jonathan Toppins) [1946726] - ice: Advertise virtchnl UDP segmentation offload capability (Jonathan Toppins) [1946726] - ice: Allow ignoring opcodes on specific VF (Jonathan Toppins) [1946726] - ice: warn about potentially malicious VFs (Jonathan Toppins) [1946726] - ice: Consolidate VSI state and flags (Jonathan Toppins) [1946726] - ice: Refactor ice_set/get_rss into LUT and key specific functions (Jonathan Toppins) [1946726] - ice: Refactor get/set RSS LUT to use struct parameter (Jonathan Toppins) [1946726] - ice: Change ice_vsi_setup_q_map() to not depend on RSS (Jonathan Toppins) [1946726] - ice: Check FDIR program status for AVF (Jonathan Toppins) [1946726] - ice: Add more FDIR filter type for AVF (Jonathan Toppins) [1946726] - ice: Add GTPU FDIR filter for AVF (Jonathan Toppins) [1946726] - ice: Add non-IP Layer2 protocol FDIR filter for AVF (Jonathan Toppins) [1946726] - ice: Add new actions support for VF FDIR (Jonathan Toppins) [1946726] - ice: Add FDIR pattern action parser for VF (Jonathan Toppins) [1946726] - ice: Enable FDIR Configure for AVF (Jonathan Toppins) [1946726] - ice: Add support for per VF ctrl VSI enabling (Jonathan Toppins) [1946726] - ice: Enhanced IPv4 and IPv6 flow filter (Jonathan Toppins) [1946726] - ice: Support to separate GTP-U uplink and downlink (Jonathan Toppins) [1946726] - ice: Add more advanced protocol support in flow filter (Jonathan Toppins) [1946726] - ice: Support non word aligned input set field (Jonathan Toppins) [1946726] - ice: Add more basic protocol support for flow filter (Jonathan Toppins) [1946726] - sctp: move the active_key update after sh_keys is added (Xin Long) [1986966] - sctp: fix return value check in __sctp_rcv_asconf_lookup (Xin Long) [1986966] - sctp: delete addr based on sin6_scope_id (Xin Long) [1986966] - sctp: update active_key for asoc when old key is being replaced (Xin Long) [1986966] - sctp: move 198 addresses from unusable to private scope (Xin Long) [1986966] - sctp: add param size validation for SCTP_PARAM_SET_PRIMARY (Xin Long) [1986966] - sctp: validate chunk size in __rcv_asconf_lookup (Xin Long) [1986966] - sctp: add size validation when walking chunks (Xin Long) [1986966] - sctp: validate from_addr_param return (Xin Long) [1986966] - sctp: fix the proc_handler for sysctl encap_port (Xin Long) [1986966] - sctp: add the missing setting for asoc encap_port (Xin Long) [1986966] - sctp: fix a SCTP_MIB_CURRESTAB leak in sctp_sf_do_dupcook_b (Xin Long) [1986966] - sctp: Fix out-of-bounds warning in sctp_process_asconf_param() (Xin Long) [1986966] - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms (Xin Long) [1986966] - bonding: allow nesting of bonding device (Antoine Tenart) [1989099] - bonding: avoid adding slave device with IFF_MASTER flag (Antoine Tenart) [1989099] - ice: don't remove netdev->dev_addr from uc sync list (Ken Cox) [1873969 1961018] - ice: Stop processing VF messages during teardown (Ken Cox) [1986451] - ice: Prevent probing virtual functions (Ken Cox) [1952810] - ima: extend boot_aggregate with kernel measurements (Bruno Meneguele) [1977422] - selftest/bpf: Verifier tests for var-off access (Jiri Olsa) [1960944] {CVE-2021-29155} - selftest/bpf: Adjust expected verifier errors (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: No need to simulate speculative domain for immediates (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix mask direction swap upon off reg sign change (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Wrap aux data inside bpf_sanitize_info container (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix pointer arithmetic mask tightening under state pruning (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix leakage of uninitialized bpf stack under speculation (Jiri Olsa) [1960944 1958070] {CVE-2021-29155 CVE-2021-31829} - bpf: Fix masking negation logic upon negative dst register (Jiri Olsa) [1960944 1958070] {CVE-2021-29155 CVE-2021-31829} - bpf: verifier: Allocate idmap scratch in verifier env (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Tighten speculative pointer arithmetic mask (Jiri Olsa) [1960944 1972496] {CVE-2021-29155 CVE-2021-33200} - bpf: Move sanitize_val_alu out of op switch (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Refactor and streamline bounds check into helper (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Allow variable-offset stack access (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Improve verifier error messages for users (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Rework ptr_limit into alu_limit and add common error path (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Ensure off_reg has no mixed signed bounds for all types (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Move off_reg into sanitize_ptr_alu (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Use correct permission flag for mixed signed bounds arithmetic (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Add sanity check for upper ptr_limit (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Simplify alu_limit masking for pointer arithmetic (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix off-by-one for area size in creating mask to left (Jiri Olsa) [1960944] {CVE-2021-29155} - Documentation/x86: Add ratelimit in buslock.rst (Prarit Bhargava) [1948048] - Documentation/admin-guide: Add bus lock ratelimit (Prarit Bhargava) [1948048] - x86/bus_lock: Set rate limit for bus lock (Prarit Bhargava) [1948048] - Documentation/x86: Add buslock.rst (Prarit Bhargava) [1948048] - [s390] net/smc: Ensure correct state of the socket in send path (Claudio Imbrenda) [1731026] - [s390] net/smc: Fix ENODATA tests in smc_nl_get_fback_stats() (Claudio Imbrenda) [1731026] - [s390] net/smc: Make SMC statistics network namespace aware (Claudio Imbrenda) [1731026] - [s390] net/smc: Add netlink support for SMC fallback statistics (Claudio Imbrenda) [1731026] - [s390] net/smc: Add netlink support for SMC statistics (Claudio Imbrenda) [1731026] - [s390] net/smc: Add SMC statistics support (Claudio Imbrenda) [1731026] - [s390] s390/ap: Fix hanging ioctl caused by wrong msg counter (Claudio Imbrenda) [1984762] - KVM: PPC: Book3S: Fix H_RTAS rets buffer overflow (Jon Maloy) [1988226] {CVE-2021-37576} - NFSv4: Fix an Oops in pnfs_mark_request_commit() when doing O_DIRECT (Benjamin Coddington) [1983793] - selftests/powerpc: EBB selftest for MMCR0 control for PMU SPRs in ISA v3.1 (Desnes A. Nunes do Rosario) [1991753] - selftests/powerpc: Fix "no_handler" EBB selftest (Desnes A. Nunes do Rosario) [1991753] - powerpc/perf: Fix crash in perf_instruction_pointer() when ppmu is not set (Desnes A. Nunes do Rosario) [1991753] - powerpc/pmu: Make the generic compat PMU use the architected events (Desnes A. Nunes do Rosario) [1991753] - perf script python: Fix buffer size to report iregs in perf script (Desnes A. Nunes do Rosario) [1991753] - ceph: reduce contention in ceph_check_delayed_caps() (Jeff Layton) [1953430]- net: mac802154: Fix general protection fault (Chris von Recklinghausen) [1984571] {CVE-2021-3659} - Bluetooth: fix the erroneous flush_work() order (Chris von Recklinghausen) [1964559] {CVE-2021-3564} - Bluetooth: use correct lock to prevent UAF of hdev object (Chris von Recklinghausen) [1968214] {CVE-2021-3573} - usb: ehci: Prevent missed ehci interrupts with edge-triggered MSI (Torez Smith) [1972139] - usb: ehci: do not initialise static variables (Torez Smith) [1972139] - usb: host: move EH SINGLE_STEP_SET_FEATURE implementation to core (Torez Smith) [1972139] - USB: ehci: drop workaround for forced irq threading (Torez Smith) [1972139] - usb: ehci: add spurious flag to disable overcurrent checking (Torez Smith) [1972139] - perf test: Handle fd gaps in test__dso_data_reopen (Michael Petlan) [1871785] - tty: vt: always invoke vc->vc_sw->con_resize callback (Maxim Levitsky) [1957611] - iavf: fix locking of critical sections (Stefan Assmann) [1975245] - iavf: do not override the adapter state in the watchdog task (Stefan Assmann) [1975245] - ixgbe: Fix packet corruption due to missing DMA sync (Ken Cox) [1920269] - ixgbe: Fix an error handling path in 'ixgbe_probe()' (Ken Cox) [1920269] - intel: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [1920269] - ixgbe: add correct exception tracing for XDP (Ken Cox) [1920269] - ixgbe: Fix out-bounds warning in ixgbe_host_interface_command() (Ken Cox) [1920269] - ixgbe: reduce checker warnings (Ken Cox) [1920269] - ixgbe: use checker safe conversions (Ken Cox) [1920269] - ixgbe: fix large MTU request from VF (Ken Cox) [1920269] - net: ethernet: intel: Fix a typo in the file ixgbe_dcb_nl.c (Ken Cox) [1920269] - net: intel: Remove unused function pointer typedef ixgbe_mc_addr_itr (Ken Cox) [1920269] - ixgbe: Support external GBE SerDes PHY BCM54616s (Ken Cox) [1920269] - ixgbe: fix unbalanced device enable/disable in suspend/resume (Ken Cox) [1920269] - ixgbe: Fix NULL pointer dereference in ethtool loopback test (Ken Cox) [1920269] - ixgbe: Fix fall-through warnings for Clang (Ken Cox) [1920269] - intel: clean up mismatched header comments (Ken Cox) [1920269] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Ken Cox) [1920269] - intel: Update drivers to use ethtool_sprintf (Ken Cox) [1920269] - ixgbe: optimize for XDP_REDIRECT in xsk path (Ken Cox) [1920269] - ixgbe: move headroom initialization to ixgbe_configure_rx_ring (Ken Cox) [1920269] - ixgbe: Fix memleak in ixgbe_configure_clsu32 (Ken Cox) [1920269] - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (Ken Cox) [1920269] - ixgbe: store the result of ixgbe_rx_offset() onto ixgbe_ring (Ken Cox) [1920269] - net: ixgbe: use skb_csum_is_sctp instead of protocol check (Ken Cox) [1920269] - ixgbe: avoid premature Rx buffer reuse (Ken Cox) [1920269] - net: remove unneeded break (Ken Cox) [1920269] - ixgbe: add pause frame stats (Ken Cox) [1920269] - iavf: Set RSS LUT and key in reset handle path (Ken Cox) [1910853] - [netdrv] chelsio: Replace zero-length array with flexible-array member (Raju Rangoju) [1955208] - cxgb4: avoid collecting SGE_QBASE regs during traffic (Raju Rangoju) [1955208] - cxgb4: collect serial config version from register (Raju Rangoju) [1955208] - cxgb4: remove unused vpd_cap_addr (Raju Rangoju) [1955208] - cxgb4: remove bogus CHELSIO_VPD_UNIQUE_ID constant (Raju Rangoju) [1955208] - cxgb4: Assign boolean values to a bool variable (Raju Rangoju) [1955208] - cxgb4: enable interrupt based Tx completions for T5 (Raju Rangoju) [1955208] - cxgb4: fix the panic caused by non smac rewrite (Raju Rangoju) [1955208] - cxgb4: Fix the -Wmisleading-indentation warning (Raju Rangoju) [1955208] - cxgb4: set up filter action after rewrites (Raju Rangoju) [1955208] - cxgb4: handle 4-tuple PEDIT to NAT mode translation (Raju Rangoju) [1955208] - [netdrv] net: rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Raju Rangoju) [1955208] - net: cxbg4: Remove pointless in_interrupt() check (Raju Rangoju) [1955208] - cxgb4: Avoid log flood (Raju Rangoju) [1955208] - cxgb4: fix memory leak during module unload (Raju Rangoju) [1955208] - cxgb4: Fix offset when clearing filter byte counters (Raju Rangoju) [1955208] - cxgb4: add error handlers to LE intr_handler (Raju Rangoju) [1955208] - cxgb4: insert IPv6 filter rules in next free region (Raju Rangoju) [1955208] - cxgb4: Fix race between loopback and normal Tx path (Raju Rangoju) [1955208] - cxgb4: Fix work request size calculation for loopback test (Raju Rangoju) [1955208] - cxgb4: add TC-MATCHALL IPv6 support (Raju Rangoju) [1955208] - cxgb4: fix extracting IP addresses in TC-FLOWER rules (Raju Rangoju) [1955208] - cxgb4: fix check for running offline ethtool selftest (Raju Rangoju) [1955208] - cxgb4: add loopback ethtool self-test (Raju Rangoju) [1955208] - net: cxgb4: reject unsupported coalescing params (Raju Rangoju) [1955208] - cxgb4: use eth_zero_addr() to clear mac address (Raju Rangoju) [1955208] - cxgb4: add missing release on skb in uld_send() (Raju Rangoju) [1955208] - cxgb4: convert to new udp_tunnel_nic infra (Raju Rangoju) [1955208] - cxgb4: fix all-mask IP address comparison (Raju Rangoju) [1955208] - cxgb4: add main VI to mirror VI config replication (Raju Rangoju) [1955208] - cxgb4: add support for mirror Rxqs (Raju Rangoju) [1955208] - cxgb4: add mirror action to TC-MATCHALL offload (Raju Rangoju) [1955208] - net: cxgb4: fix return error value in t4_prep_fw (Raju Rangoju) [1955208] - cxgb4: move device dump arrays in header to C file (Raju Rangoju) [1955208] - cxgb4: always sync access when flashing PHY firmware (Raju Rangoju) [1955208] - cxgb4: update kernel-doc line comments (Raju Rangoju) [1955208] - cxgb4: fix set but unused variable when DCB is disabled (Raju Rangoju) [1955208] - cxgb4: move DCB version extern to header file (Raju Rangoju) [1955208] - cxgb4: remove cast when saving IPv4 partial checksum (Raju Rangoju) [1955208] - cxgb4: fix SGE queue dump destination buffer context (Raju Rangoju) [1955208] - cxgb4: use correct type for all-mask IP address comparison (Raju Rangoju) [1955208] - cxgb4: fix endian conversions for L4 ports in filters (Raju Rangoju) [1955208] - cxgb4: parse TC-U32 key values and masks natively (Raju Rangoju) [1955208] - cxgb4: use unaligned conversion for fetching timestamp (Raju Rangoju) [1955208] - cxgb4: move PTP lock and unlock to caller in Tx path (Raju Rangoju) [1955208] - cxgb4: move handling L2T ARP failures to caller (Raju Rangoju) [1955208] - cxgb4: Use struct_size() helper (Raju Rangoju) [1955208] - cxgb4: add action to steer flows to specific Rxq (Raju Rangoju) [1955208] - cxgb4: add support to fetch ethtool n-tuple filters (Raju Rangoju) [1955208] - cxgb4: add ethtool n-tuple filter deletion (Raju Rangoju) [1955208] - cxgb4: add ethtool n-tuple filter insertion (Raju Rangoju) [1955208] - [netdrv] flow_offload: check for basic action hw stats type (Raju Rangoju) [1955208] - cxgb4: add skeleton for ethtool n-tuple filters (Raju Rangoju) [1955208] - cxgb4: add support to read serial flash (Raju Rangoju) [1955208] - cxgb4: add support to flash boot cfg image (Raju Rangoju) [1955208] - cxgb4: add support to flash boot image (Raju Rangoju) [1955208] - cxgb4: add support to flash PHY image (Raju Rangoju) [1955208] - cxgb4: update set_flash to flash different images (Raju Rangoju) [1955208] - cxgb4: Use kfree() instead kvfree() where appropriate (Raju Rangoju) [1955208] - cxgb4: Use pM format specifier for MAC addresses (Raju Rangoju) [1955208] - net: sock: fix in-kernel mark setting (Alexander Aring) [1509204] - sock: Reset dst when changing sk_mark via setsockopt (Alexander Aring) [1509204] - fs: dlm: fix mark setting deadlock (Alexander Aring) [1509204] - fs: dlm: fix mark per nodeid setting (Alexander Aring) [1509204] - fs: dlm: remove lock dependency warning (Alexander Aring) [1509204] - fs: dlm: set skb mark per peer socket (Alexander Aring) [1509204] - fs: dlm: set skb mark for listen socket (Alexander Aring) [1509204] - net: sock: add sock_set_mark (Alexander Aring) [1509204] - Bluetooth: btusb: Add support for GarfieldPeak controller (Gopal Tiwari) [1959110] - can: gw: synchronize rcu operations before removing gw job entry (Balazs Nemeth) [1986334] - can: bcm: fix infoleak in struct bcm_msg_head (Balazs Nemeth) [1986334] - can: af_can: prevent potential access of uninitialized member in canfd_rcv() (Balazs Nemeth) [1956730] - can: af_can: prevent potential access of uninitialized member in can_rcv() (Balazs Nemeth) [1956730] - can: proc: can_remove_proc(): silence remove_proc_entry warning (Balazs Nemeth) [1956730] - cifs: add missing parsing of backupuid (Ronnie Sahlberg) [1987126] - cifs: use helpers when parsing uid/gid mount options and validate them (Ronnie Sahlberg) [1987126] - kernfs: dont call d_splice_alias() under kernfs node lock (Ian Kent) [1939133] - kernfs: use i_lock to protect concurrent inode updates (Ian Kent) [1939133] - kernfs: switch kernfs to use an rwsem (Ian Kent) [1939133] - kernfs: use VFS negative dentry caching (Ian Kent) [1939133] - kernfs: add a revision to identify directory node changes (Ian Kent) [1939133] - kernfs: move revalidate to be near lookup (Ian Kent) [1939133]- mlxsw: spectrum_mr: Update egress RIF list before route's action (Ivan Vecera) [1941938] - selftests: mlxsw: Fix mausezahn invocation in ERSPAN scale test (Ivan Vecera) [1941938] - selftests: mlxsw: Increase the tolerance of backlog buildup (Ivan Vecera) [1941938] - selftests: mlxsw: Return correct error code in resource scale tests (Ivan Vecera) [1941938] - selftests: mlxsw: Remove a redundant if statement in tc_flower_scale test (Ivan Vecera) [1941938] - selftests: mlxsw: Remove a redundant if statement in port_scale test (Ivan Vecera) [1941938] - selftests: mlxsw: sch_red_ets: Test proper counter cleaning in ETS (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Index future FIFOs by band number (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Allocate child qdiscs dynamically (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Guard all qdisc accesses with a lock (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Track children per qdisc (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Promote backlog reduction to mlxsw_sp_qdisc_destroy() (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Track tclass_num as int, not u8 (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Drop an always-true condition (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Simplify mlxsw_sp_qdisc_compare() (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Drop one argument from check_params callback (Ivan Vecera) [1941938] - mlxsw: core: Remove critical trip points from thermal zones (Ivan Vecera) [1941938] - selftests: mlxsw: Test vetoing of double sampling (Ivan Vecera) [1941938] - mlxsw: spectrum: Veto sampling if already enabled on port (Ivan Vecera) [1941938] - selftests: mlxsw: Test matchall failure with protocol match (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Perform priority checks earlier (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Convert if statements to a switch statement (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Perform protocol check earlier (Ivan Vecera) [1941938] - selftests: forwarding: vxlan_bridge_1d: Add more ECN decap test cases (Ivan Vecera) [1941938] - mlxsw: spectrum: Fix ECN marking in tunnel decapsulation (Ivan Vecera) [1941938] - selftests: net: forwarding: Fix a typo (Ivan Vecera) [1941938] - selftests: mlxsw: spectrum-2: Remove q_in_vni_veto test (Ivan Vecera) [1941938] - selftests: forwarding: Add test for dual VxLAN bridge (Ivan Vecera) [1941938] - mlxsw: Allow 802.1d and .1ad VxLAN bridges to coexist on Spectrum>=2 (Ivan Vecera) [1941938] - mlxsw: Add struct mlxsw_sp_switchdev_ops per ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum: Add mlxsw_sp_port_egress_ethtype_set() (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port Egress VLAN EtherType Register (Ivan Vecera) [1941938] - mlxsw: reg: Add egr_et_set field to SPVID (Ivan Vecera) [1941938] - selftests: mlxsw: Test egress sampling limitation on Spectrum-1 only (Ivan Vecera) [1941938] - selftests: mlxsw: Add tc sample tests for new triggers (Ivan Vecera) [1941938] - mlxsw: spectrum_acl: Offload FLOW_ACTION_SAMPLE (Ivan Vecera) [1941938] - mlxsw: core_acl_flex_actions: Add mirror sampler action (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Add support for egress sampling (Ivan Vecera) [1941938] - mlxsw: spectrum: Start using sampling triggers hash table (Ivan Vecera) [1941938] - mlxsw: spectrum: Track sampling triggers in a hash table (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Pass matchall entry to sampling operations (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Push sampling checks to per-ASIC operations (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Propagate extack further (Ivan Vecera) [1941938] - selftests: mlxsw: Add tc sample tests (Ivan Vecera) [1941938] - mlxsw: spectrum: Report extra metadata to psample module (Ivan Vecera) [1941938] - mlxsw: spectrum: Remove mlxsw_sp_sample_receive() (Ivan Vecera) [1941938] - mlxsw: spectrum: Remove unnecessary RCU read-side critical section (Ivan Vecera) [1941938] - mlxsw: pci: Set extra metadata in skb control block (Ivan Vecera) [1941938] - mlxsw: Create dedicated field for Rx metadata in skb control block (Ivan Vecera) [1941938] - mlxsw: pci: Add more metadata fields to CQEv2 (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Implement sampling using mirroring (Ivan Vecera) [1941938] - mlxsw: spectrum_trap: Split sampling traps between ASICs (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Split sampling support between ASICs (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Add SPAN probability rate support (Ivan Vecera) [1941938] - mlxsw: reg: Extend mirroring registers with probability rate field (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Add SPAN session identifier support (Ivan Vecera) [1941938] - mlxsw: Adjust some MFDE fields shift and size to fw implementation (Ivan Vecera) [1941938] - mlxsw: core: Expose MFDE.log_ip to devlink health (Ivan Vecera) [1941938] - mlxsw: reg: Extend MFDE register with new log_ip field (Ivan Vecera) [1941938] - mlxsw: spectrum: Bump minimum FW version to xx.2008.2406 (Ivan Vecera) [1941938] - mlxsw: reg: Fix comment about slot_index field in PMAOS register (Ivan Vecera) [1941938] - mlxsw: spectrum: Reword an error message for Q-in-Q veto (Ivan Vecera) [1941938] - mlxsw: spectrum_ethtool: Add an external speed to PTYS register (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Do not overwrite policer configuration (Ivan Vecera) [1941938] - selftests: forwarding: Specify interface when invoking mausezahn (Ivan Vecera) [1941938] - selftests: mlxsw: Add a scale test for physical ports (Ivan Vecera) [1941938] - mlxsw: Register physical ports as a devlink resource (Ivan Vecera) [1941938] - mlxsw: pci: switch from 'pci_' to 'dma_' API (Ivan Vecera) [1941938] - mlxsw: core: Increase critical threshold for ASIC thermal zone (Ivan Vecera) [1941938] - mlxsw: core: Add validation of transceiver temperature thresholds (Ivan Vecera) [1941938] - selftests: mlxsw: Set headroom size of correct port (Ivan Vecera) [1941938] - net/mlxfw: Use kzalloc for allocating only one thing (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use eXtended mezzanine to offload IPv4 router (Ivan Vecera) [1941938] - mlxsw: spectrum: Set KVH XLT cache mode for Spectrum2/3 (Ivan Vecera) [1941938] - mlxsw: spectrum_router_xm: Introduce basic XM cache flushing (Ivan Vecera) [1941938] - mlxsw: reg: Add Router LPM Cache Enable Register (Ivan Vecera) [1941938] - mlxsw: reg: Add Router LPM Cache ML Delete Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router_xm: Implement L-value tracking for M-index (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Router M Table Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce per-ASIC XM initialization (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Lookup Table Query Register (Ivan Vecera) [1941938] - mlxsw: reg: Add Router XLT M select Register (Ivan Vecera) [1941938] - mlxsw: Ignore ports that are connected to eXtended mezanine (Ivan Vecera) [1941938] - mlxsw: pci: Obtain info about ports used by eXtended mezanine (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce XM implementation of router low-level ops (Ivan Vecera) [1941938] - mlxsw: reg: Add Router XLT Enable Register (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Direct Register (Ivan Vecera) [1941938] - selftests: mlxsw: Add Q-in-VNI veto tests (Ivan Vecera) [1941938] - selftests: forwarding: Add Q-in-VNI test (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Allow joining VxLAN to 802.1ad bridge (Ivan Vecera) [1941938] - mlxsw: Veto Q-in-VNI for Spectrum-1 ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Use ops->vxlan_join() when adding VLAN to VxLAN device (Ivan Vecera) [1941938] - mlxsw: spectrum_nve_vxlan: Add support for Q-in-VNI for Spectrum-2 ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum: Publish mlxsw_sp_ethtype_to_sver_type() (Ivan Vecera) [1941938] - mlxsw: Save EtherType as part of mlxsw_sp_nve_config (Ivan Vecera) [1941938] - mlxsw: Save EtherType as part of mlxsw_sp_nve_params (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Create common function for joining VxLAN to VLAN-aware bridge (Ivan Vecera) [1941938] - mlxsw: reg: Add support for tunnel port in SPVID register (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port VLAN Stacking Register (Ivan Vecera) [1941938] - mlxsw: Use one enum for all registers that contain tunnel_port field (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Reduce mlxsw_sp_ipip_fib_entry_op_gre4() (Ivan Vecera) [1941938] - mlxsw: spectrum: Bump minimum FW version to xx.2008.2018 (Ivan Vecera) [1941938] - mlxsw: core_acl: Use an array instead of a struct with a zero-length array (Ivan Vecera) [1941938] - mlxsw: spectrum_mr: Use flexible-array member instead of zero-length array (Ivan Vecera) [1941938] - mlxsw: core: Trace EMAD events (Ivan Vecera) [1941938] - selftests: mlxsw: Test RIF's reference count when joining a LAG (Ivan Vecera) [1941938] - mlxsw: spectrum: Apply RIF configuration when joining a LAG (Ivan Vecera) [1941938] - selftests: forwarding: Add QinQ veto testing (Ivan Vecera) [1941938] - mlxsw: Add QinQ configuration vetoes (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Add support of QinQ traffic (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Create common functions for VLAN-aware bridge (Ivan Vecera) [1941938] - mlxsw: Make EtherType configurable when pushing VLAN at ingress (Ivan Vecera) [1941938] - mlxsw: spectrum: Only treat 802.1q packets as tagged packets (Ivan Vecera) [1941938] - mlxsw: reg: Add et_vlan field to SPVID register (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port VLAN Classification Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Update adjacency index more efficiently (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Track nexthop group virtual router membership (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Rollback virtual router adjacency pointer update (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass virtual router parameters directly instead of pointer (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Fix error handling issue (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Resolve RIF from nexthop struct instead of neighbour (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use loopback RIF for unresolved nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use different trap identifier for unresolved nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Create loopback RIF during initialization (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Allow returning errors from mlxsw_sp_nexthop_group_refresh() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Add an indication if a nexthop group can be destroyed (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Re-order mlxsw_sp_nexthop6_group_get() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set FIB entry's type based on nexthop group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set FIB entry's type after creating nexthop group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass ifindex to mlxsw_sp_ipip_entry_find_by_decap() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set ifindex for IPv4 nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Fix wrong kfree() in error path (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove outdated comment (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Consolidate mlxsw_sp_nexthop{4, 6}_type_fini() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Consolidate mlxsw_sp_nexthop{4, 6}_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove unused argument from mlxsw_sp_nexthop6_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass nexthop netdev to mlxsw_sp_nexthop4_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass nexthop netdev to mlxsw_sp_nexthop6_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_ipip: Remove overlay protocol from can_offload() callback (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Split nexthop group configuration to a different struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Move IPv4 FIB info into a union in nexthop group struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove unused field 'prio' from IPv4 FIB entry struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Store FIB info in route (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Associate neighbour table with nexthop instead of group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use nexthop group type in hash table key (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Add nexthop group type field (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Compare key with correct object type (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce FIB entry update op (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Track FIB entry committed state and skip uncommitted on delete (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce fib_entry priv for low-level ops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Have FIB entry op context allocated for the instance (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Prepare work context for possible bulking (Ivan Vecera) [1941938] - mlxsw: spectrum: Push RALUE packing and writing into low-level router ops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use RALUE pack helper from abort function (Ivan Vecera) [1941938] - mlxsw: reg: Allow to pass NULL pointer to mlxsw_reg_ralue_pack4/6() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass destination IP as a pointer to mlxsw_reg_ralue_pack4() (Ivan Vecera) [1941938] - mlxsw: spectrum: Export RALUE pack helper and use it from IPIP (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Push out RALUE pack into separate helper (Ivan Vecera) [1941938] - mlxsw: spectrum: Propagate context from work handler containing RALUE payload (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce FIB event queue instead of separate works (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use RALUE-independent op arg (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass non-register proto enum to __mlxsw_sp_router_set_abort_trap() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce low-level ops and implement them for RALXX regs (Ivan Vecera) [1941938] - mlxsw: reg: Add XRALXX Registers (Ivan Vecera) [1941938] - hwmon: (mlxreg-fan) Add support for fan drawers capability and present registers (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Add callback to notify mux creation completion (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Extend supported mux number (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Extend driver to support word address space devices (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Get rid of adapter numbers enforcement (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Prepare mux selection infrastructure for two-byte support (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Convert driver to platform driver (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Move header file out of x86 realm (Ivan Vecera) [1941938] - platform/x86: mlxcpld: Update module license (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Update module license (Ivan Vecera) [1941938] - i2c: mlxcpld: Add support for I2C bus frequency setting (Ivan Vecera) [1941938] - i2c: mlxcpld: Decrease polling time for performance improvement (Ivan Vecera) [1941938] - i2c: mlxcpld: Update module license (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix item counter assignment for MSN2700/ComEx system (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx systems (Ivan Vecera) [1941938] - platform/x86: mlx-platform: remove an unused variable (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM from default platform configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Add capability field to platform FAN description (Ivan Vecera) [1941938] - platform_data/mlxreg: Extend core platform structure (Ivan Vecera) [1941938] - platform_data/mlxreg: Update module license (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix extended topology configuration for power supply units (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Extend FAN platform data description (Ivan Vecera) [1941938] - platform_data/mlxreg: Add presence register field for FAN devices (Ivan Vecera) [1941938] - Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-io: Add support for complex attributes (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Add more definitions for system attributes (Ivan Vecera) [1941938] - platform_data/mlxreg: Add support for complex attributes (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Add environmental data to uevent (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Use capability register for attribute creation (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Modify module license (Ivan Vecera) [1941938] - lib/string_helpers: Introduce string_upper() and string_lower() helpers (Ivan Vecera) [1941938] - i2c: mlxcpld: check correct size of maximum RECV_LEN packet (Ivan Vecera) [1941938] - docs: watchdog: mlx-wdt: Add description of new watchdog type 3 (Ivan Vecera) [1941938] - watchdog: mlx-wdt: support new watchdog type with longer timeout period (Ivan Vecera) [1941938] - platform/x86: mlx-platform: support new watchdog type with longer timeout (Ivan Vecera) [1941938] - platform_data/mlxreg: support new watchdog type with longer timeout period (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: convert to use i2c_new_client_device() (Ivan Vecera) [1941938] - selftests: icmp_redirect: IPv6 PMTU info should be cleared after redirect (Hangbin Liu) [1986227] - selftests: icmp_redirect: remove from checking for IPv6 route get (Hangbin Liu) [1986227] - selftests: icmp_redirect: support expected failures (Hangbin Liu) [1986227] - selftests: disable rp_filter for icmp_redirect.sh (Hangbin Liu) [1986227] - selftests: icmp_redirect: Add support for routing via nexthop objects (Hangbin Liu) [1986227] - selftest: Fixes for icmp_redirect test (Hangbin Liu) [1986227] - selftests: Add redirect tests (Hangbin Liu) [1986227] - redhat: enable vdpa_sim_net vdpa_sim_block vp_vdpa (Cindy Lu) [1975173] - virtio/vdpa: clear the virtqueue state during probe (Cindy Lu) [1975173] - vp_vdpa: allow set vq state to initial state after reset (Cindy Lu) [1975173] - virtio-pci library: introduce vp_modern_get_driver_features() (Cindy Lu) [1975173] - vdpa: support packed virtqueue for set/get_vq_state() (Cindy Lu) [1975173] - vdpa/mlx5: Clear vq ready indication upon device reset (Cindy Lu) [1975173] - vdpa/mlx5: Add support for doorbell bypassing (Cindy Lu) [1975173] - vdpa/mlx5: Add support for running with virtio_vdpa (Cindy Lu) [1975173] - vdp/mlx5: Fix setting the correct dma_device (Cindy Lu) [1975173] - vdpa/mlx5: Support creating resources with uid == 0 (Cindy Lu) [1975173] - vdpa/mlx5: Fix possible failure in umem size calculation (Cindy Lu) [1975173] - vdpa/mlx5: Fix umem sizes assignments on VQ create (Cindy Lu) [1975173] - vp_vdpa: correct the return value when fail to map notification (Cindy Lu) [1975173] - virtio_net: Fix error handling in virtnet_restore() (Cindy Lu) [1975173] - virtio-blk: Fix memory leak among suspend/resume procedure (Cindy Lu) [1975173] - vDPA/ifcvf: reuse pre-defined macros for device ids and vendor ids (Cindy Lu) [1975173] - virtio: update virtio id table, add transitional ids (Cindy Lu) [1975173] - vDPA/ifcvf: implement doorbell mapping for ifcvf (Cindy Lu) [1975173] - vDPA/ifcvf: record virtio notify base (Cindy Lu) [1975173] - vdpa_sim_blk: remove duplicate include of linux/blkdev.h (Cindy Lu) [1975173] - {net,vdpa}/mlx5: Configure interface MAC into mpfs L2 table (Cindy Lu) [1975173] - virtio_pci_modern: correct sparse tags for notify (Cindy Lu) [1975173] - virtio_pci_modern: __force cast the notify mapping (Cindy Lu) [1975173] - vDPA/ifcvf: get_config_size should return dev specific config size (Cindy Lu) [1975173] - vDPA/ifcvf: enable Intel C5000X-PL virtio-block for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: deduce VIRTIO device ID when probe (Cindy Lu) [1975173] - vdpa_sim_blk: add support for vdpa management tool (Cindy Lu) [1975173] - vdpa_sim_blk: handle VIRTIO_BLK_T_GET_ID (Cindy Lu) [1975173] - vdpa_sim_blk: implement ramdisk behaviour (Cindy Lu) [1975173] - vdpa: add vdpa simulator for block device (Cindy Lu) [1975173] - vhost/vdpa: Remove the restriction that only supports virtio-net devices (Cindy Lu) [1975173] - vhost/vdpa: use get_config_size callback in vhost_vdpa_config_validate() (Cindy Lu) [1975173] - vdpa: add get_config_size callback in vdpa_config_ops (Cindy Lu) [1975173] - vdpa_sim: cleanup kiovs in vdpasim_free() (Cindy Lu) [1975173] - vringh: add vringh_kiov_length() helper (Cindy Lu) [1975173] - vringh: implement vringh_kiov_advance() (Cindy Lu) [1975173] - vringh: explain more about cleaning riov and wiov (Cindy Lu) [1975173] - vringh: reset kiov 'consumed' field in __vringh_iov() (Cindy Lu) [1975173] - vringh: add 'iotlb_lock' to synchronize iotlb accesses (Cindy Lu) [1975173] - vdpa_sim: use iova module to allocate IOVA addresses (Cindy Lu) [1975173] - vDPA/ifcvf: deduce VIRTIO device ID from pdev ids (Cindy Lu) [1975173] - vDPA/ifcvf: verify mandatory feature bits for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: fetch device feature bits when probe (Cindy Lu) [1975173] - vDPA/ifcvf: remove the version number string (Cindy Lu) [1975173] - vDPA/ifcvf: rename original IFCVF dev ids to N3000 ids (Cindy Lu) [1975173] - vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: get_vendor_id returns a device specific vendor id (Cindy Lu) [1975173] - vhost-vdpa: fix vm_flags for virtqueue doorbell mapping (Cindy Lu) [1975173] - vp_vdpa: report doorbell address (Cindy Lu) [1975173] - virtio-pci library: report resource address (Cindy Lu) [1975173] - virito_pci libray: hide vp_modern_map_capability() (Cindy Lu) [1975173] - virtio_pci_modern: hide vp_modern_get_queue_notify_off() (Cindy Lu) [1975173] - vp_vdpa: switch to use vp_modern_map_vq_notify() (Cindy Lu) [1975173] - virtio-pci library: switch to use vp_modern_map_vq_notify() (Cindy Lu) [1975173] - virtio_pci_modern: introduce helper to map vq notify area (Cindy Lu) [1975173] - virtio-net: don't allocate control_buf if not supported (Cindy Lu) [1975173] - vdpa: Follow kdoc comment style (Cindy Lu) [1975173] - vdpa: Follow kdoc comment style (Cindy Lu) [1975173] - vdpa/mlx5: Enable user to add/delete vdpa device (Cindy Lu) [1975173] - vdpa: introduce virtio pci driver (Cindy Lu) [1975173] - vdpa/mlx5: Set err = -ENOMEM in case dma_map_sg_attrs fails (Cindy Lu) [1975173] - vhost-vdpa: protect concurrent access to vhost device iotlb (Cindy Lu) [1975173] - vdpa/mlx5: Fix suspend/resume index restoration (Cindy Lu) [1975173] - vdpa/mlx5: Fix wrong use of bit numbers (Cindy Lu) [1975173] - vdpa/mlx5: should exclude header length and fcs from mtu (Cindy Lu) [1975173] - vhost-vdpa: set v->config_ctx to NULL if eventfd_ctx_fdget() fails (Cindy Lu) [1975173] - vhost-vdpa: fix use-after-free of v->config_ctx (Cindy Lu) [1975173] - vhost_vdpa: fix the missing irq_bypass_unregister_producer() invocation (Cindy Lu) [1975173] - vdpa_sim: Skip typecasting from void* (Cindy Lu) [1975173] - vdpa: set the virtqueue num during register (Cindy Lu) [1975173] - vdpa/mlx5: fix param validation in mlx5_vdpa_get_config() (Cindy Lu) [1975173] - virtio_vdpa: don't warn when fail to disable vq (Cindy Lu) [1975173] - virtio-pci: introduce modern device module (Cindy Lu) [1975173] - virito-pci-modern: rename map_capability() to vp_modern_map_capability() (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to get notification offset (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper for getting queue nums (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper for setting/geting queue size (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to set/get queue_enable (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_queue_address() (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_set_queue_vector() (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_generation() (Cindy Lu) [1975173] - virtio-pci-modern: introduce helpers for setting and getting features (Cindy Lu) [1975173] - virtio-pci-modern: introduce helpers for setting and getting status (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to set config vector (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_remove() (Cindy Lu) [1975173] - virtio-pci-modern: factor out modern device initialization logic (Cindy Lu) [1975173] - virtio-pci: split out modern device (Cindy Lu) [1975173] - virtio-pci: do not access iomem via struct virtio_pci_device directly (Cindy Lu) [1975173] - vdpa_sim_net: Add support for user supported devices (Cindy Lu) [1975173] - vdpa: Enable user to query vdpa device info (Cindy Lu) [1975173] - vdpa: Enable a user to add and delete a vdpa device (Cindy Lu) [1975173] - vdpa: Define vdpa mgmt device, ops and a netlink interface (Cindy Lu) [1975173] - vdpa: Extend routine to accept vdpa device name (Cindy Lu) [1975173] - vdpa_sim_net: Make mac address array static (Cindy Lu) [1975173] - vdpa/mlx5: Restore the hardware used index after change map (Cindy Lu) [1975173] - vdpa/mlx5: Fix memory key MTT population (Cindy Lu) [1975173] - vdpa: Use simpler version of ida allocation (Cindy Lu) [1975173] - vdpa: Add missing comment for virtqueue count (Cindy Lu) [1975173] - vdpa: split vdpasim to core and net modules (Cindy Lu) [1975173] - vdpa_sim: split vdpasim_virtqueue's iov field in out_iov and in_iov (Cindy Lu) [1975173] - vdpa_sim: make vdpasim->buffer size configurable (Cindy Lu) [1975173] - vdpa_sim: use kvmalloc to allocate vdpasim->buffer (Cindy Lu) [1975173] - vdpa_sim: set vringh notify callback (Cindy Lu) [1975173] - vdpa_sim: add set_config callback in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add get_config callback in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: make 'config' generic and usable for any device type (Cindy Lu) [1975173] - vdpa_sim: store parsed MAC address in a buffer (Cindy Lu) [1975173] - vdpa_sim: add work_fn in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add supported_features field in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add device id field in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add struct vdpasim_dev_attr for device attributes (Cindy Lu) [1975173] - vdpa_sim: rename vdpasim_config_ops variables (Cindy Lu) [1975173] - vdpa_sim: make IOTLB entries limit configurable (Cindy Lu) [1975173] - vdpa_sim: remove hard-coded virtq count (Cindy Lu) [1975173] - vdpa_sim: remove unnecessary headers inclusion (Cindy Lu) [1975173] - vdpa: remove unnecessary 'default n' in Kconfig entries (Cindy Lu) [1975173] - vdpa: ifcvf: Use dma_set_mask_and_coherent to simplify code (Cindy Lu) [1975173] - vhost_vdpa: switch to vmemdup_user() (Cindy Lu) [1975173] - vhost: vringh: use krealloc_array() (Cindy Lu) [1975173] - vringh: fix vringh_iov_push_*() documentation (Cindy Lu) [1975173] - vringh: fix __vringh_iov() when riov and wiov are different (Cindy Lu) [1975173] - net: sched: fix memory leak in tcindex_partial_destroy_work (Davide Caratti) [1987042] - net/sched: act_ct: remove and free nf_table callbacks (Davide Caratti) [1987042] - net: sched: fix warning in tcindex_alloc_perfect_hash (Davide Caratti) [1987042] - pkt_sched: sch_qfq: fix qfq_change_class() error path (Davide Caratti) [1987042] - sch_htb: fix refcount leak in htb_parent_to_leaf_offload (Davide Caratti) [1987042] - sch_dsmark: fix a NULL deref in qdisc_reset() (Davide Caratti) [1987042] - sch_red: fix off-by-one checks in red_check_params() (Davide Caratti) [1987042] - ipv6: fix 'disable_policy' for fwd packets (Hangbin Liu) [1985837] - net: ipv6: fix return value of ip6_skb_dst_mtu (Hangbin Liu) [1985837] - ipv6: fix out-of-bound access in ip6_parse_tlv() (Hangbin Liu) [1985837] - ipv6: exthdrs: do not blindly use init_net (Hangbin Liu) [1985837] - ipv6: record frag_max_size in atomic fragments in input path (Hangbin Liu) [1985837] - selftests: net: devlink_port_split.py: skip the test if no devlink device (Hangbin Liu) [1985836] - selftests/net: bump timeout to 5 minutes (Hangbin Liu) [1985836] - selftests: net: forwarding: Fix a typo (Hangbin Liu) [1985836] - selftests/net: so_txtime: remove unneeded semicolon (Hangbin Liu) [1985836] - tools: selftests: add test for changing routes with PTMU exceptions (Hangbin Liu) [1985836] - selftests: fix the return value for UDP GRO test (Hangbin Liu) [1985836] - selftests: pmtu.sh: improve the test result processing (Hangbin Liu) [1985836] - selftests: pmtu.sh: use $ksft_skip for skipped return code (Hangbin Liu) [1985836] - selftests/net: timestamping: add ptp v2 support (Hangbin Liu) [1985836] - ixgbevf: add correct exception tracing for XDP (Ken Cox) [1920268] - intel: call csum functions with well formatted arguments (Ken Cox) [1920268] - net: intel: Remove unused function pointer typedef ixgbe_mc_addr_itr (Ken Cox) [1920268] - ixgbevf: Fix fall-through warnings for Clang (Ken Cox) [1920268] - intel: clean up mismatched header comments (Ken Cox) [1920268] - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (Ken Cox) [1920268] - net: ixgbevf: use skb_csum_is_sctp instead of protocol check (Ken Cox) [1920268] - treewide: Use sizeof_field() macro (Ken Cox) [1920268] - selftests: net: add ESP-in-UDP PMTU test (Xin Long) [1986599] - udp: check encap socket in __udp_lib_err (Xin Long) [1986599] - udp: fix possible user after free in error handler (Xin Long) [1986599] - udpv6: fix possible user after free in error handler (Xin Long) [1986599] - udp: Support for error handlers of tunnels with arbitrary destination port (Xin Long) [1986599] - bpf, sockmap, udp: sk_prot needs inuse_idx set for proc stats (Xin Long) [1986599] - udp: properly flush normal packet at GRO time (Xin Long) [1986599] - udp: annotate data races around unix_sk(sk)->gso_size (Xin Long) [1986599] - udp: fix race between close() and udp_abort() (Xin Long) [1986599] - netfilter: conntrack: remove offload_pickup sysctl again (Florian Westphal) [1987101] - bpf, samples: Add -fno-asynchronous-unwind-tables to BPF Clang invocation (Yauheni Kaliuta) [1977162] - net/af_unix: fix a data-race in unix_dgram_sendmsg / unix_release_sock (Balazs Nemeth) [1986845] - netfilter: nf_tables: fix flowtable list del corruption (Jay Shin) [1977137] - net: qrtr: fix memory leaks (Íñigo Huguet) [1981236] - net: qrtr: fix OOB Read in qrtr_endpoint_post (Íñigo Huguet) [1981236] - net: qrtr: ns: Fix error return code in qrtr_ns_init() (Íñigo Huguet) [1981236] - net: qrtr: Avoid potential use after free in MHI send (Íñigo Huguet) [1981236] - qrtr: Convert qrtr_ports from IDR to XArray (Íñigo Huguet) [1981236] - net: qrtr: Fix memory leak on qrtr_tx_wait failure (Íñigo Huguet) [1981236] - net: qrtr: fix a kernel-infoleak in qrtr_recvmsg() (Íñigo Huguet) [1981236] - net: qrtr: fix error return code of qrtr_sendmsg() (Íñigo Huguet) [1981236] - net/qrtr: fix __netdev_alloc_skb call (Íñigo Huguet) [1981236] - net: qrtr: Fix memory leak in qrtr_tun_open (Íñigo Huguet) [1981236] - net/qrtr: restrict user-controlled length in qrtr_tun_write_iter() (Íñigo Huguet) [1981236] - net: qrtr: fix null-ptr-deref in qrtr_ns_remove (Íñigo Huguet) [1981236] - net: qrtr: Unprepare MHI channels during remove (Íñigo Huguet) [1981236] - net: qrtr: Start MHI channels during init (Íñigo Huguet) [1981236] - net: qrtr: Release distant nodes along the bridge node (Íñigo Huguet) [1981236] - net: qrtr: Add GFP flags parameter to qrtr_alloc_ctrl_packet (Íñigo Huguet) [1981236] - net: qrtr: Allow non-immediate node routing (Íñigo Huguet) [1981236] - net: qrtr: Allow forwarded services (Íñigo Huguet) [1981236] - net: qrtr: Fix port ID for control messages (Íñigo Huguet) [1981236] - net: qrtr: ns: Fix the incorrect usage of rcu_read_lock() (Íñigo Huguet) [1981236] - net: qrtr: ns: Protect radix_tree_deref_slot() using rcu read locks (Íñigo Huguet) [1981236] - net: qrtr: check skb_put_padto() return value (Íñigo Huguet) [1981236] - net: qrtr: fix usage of idr in port assignment to socket (Íñigo Huguet) [1981236] - qrtr: orphan socket in qrtr_release() (Íñigo Huguet) [1981236] - net: qrtr: Fix an out of bounds read qrtr_endpoint_post() (Íñigo Huguet) [1981236] - net: qrtr: free flow in __qrtr_node_release (Íñigo Huguet) [1981236] - treewide: replace '---help---' in Kconfig files with 'help' (Íñigo Huguet) [1981236] - net: qrtr: Allocate workqueue before kernel_bind (Íñigo Huguet) [1981236] - net: qrtr: Fix passing invalid reference to qrtr_local_enqueue() (Íñigo Huguet) [1981236] - net: qrtr: Add MHI transport layer (Íñigo Huguet) [1981236] - net: qrtr: Add tracepoint support (Íñigo Huguet) [1981236] - net: qrtr: send msgs from local of same id as broadcast (Íñigo Huguet) [1981236] - net: qrtr: Fix FIXME related to qrtr_ns_init() (Íñigo Huguet) [1981236] - net: qrtr: Respond to HELLO message (Íñigo Huguet) [1981236] - net: qrtr: Fix error pointer vs NULL bugs (Íñigo Huguet) [1981236] - net: qrtr: fix spelling mistake "serivce" -> "service" (Íñigo Huguet) [1981236] - net: qrtr: Fix the local node ID as 1 (Íñigo Huguet) [1981236] - net: qrtr: Migrate nameservice to kernel from userspace (Íñigo Huguet) [1981236] - net: qrtr: Remove receive worker (Íñigo Huguet) [1981236] - net: qrtr: Make qrtr_port_lookup() use RCU (Íñigo Huguet) [1981236] - net: qrtr: Migrate node lookup tree to spinlock (Íñigo Huguet) [1981236] - net: qrtr: Implement outgoing flow control (Íñigo Huguet) [1981236] - net: qrtr: Move resume-tx transmission to recvmsg (Íñigo Huguet) [1981236] - net: qrtr: fix len of skb_put_padto in qrtr_node_enqueue (Íñigo Huguet) [1981236] - net: qrtr: Simplify 'qrtr_tun_release()' (Íñigo Huguet) [1981236] - net: qrtr: Stop rx_worker before freeing node (Íñigo Huguet) [1981236] - net: qrtr: fix memort leak in qrtr_tun_write_iter (Íñigo Huguet) [1981236] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Íñigo Huguet) [1981236] - treewide: Add SPDX license identifier - Makefile/Kconfig (Íñigo Huguet) [1981236] - net: qrtr: Fix message type of outgoing packets (Íñigo Huguet) [1981236] - net: qrtr: use protocol endiannes variable (Íñigo Huguet) [1981236] - net: fix hangup on napi_disable for threaded napi (Paolo Abeni) [1949546] - net: fix race between napi kthread mode and busy poll (Paolo Abeni) [1949546] - net: add sysfs attribute to control napi threaded mode (Paolo Abeni) [1949546] - net: implement threaded-able napi poll loop support (Paolo Abeni) [1949546] - net: extract napi poll functionality to __napi_poll() (Paolo Abeni) [1949546] - mfd: intel-lpss: Use devm_ioremap_uc for MMIO (Steve Best) [1986715] - lib: devres: add a helper function for ioremap_uc (Steve Best) [1986715] - sched/rt: Fix double enqueue caused by rt_effective_prio (Juri Lelli) [1990566] - x86/crash: Remove crash_reserve_low_1M() (Lianbo Jiang) [1904318] - x86/setup: Remove CONFIG_X86_RESERVE_LOW and reservelow= options (Lianbo Jiang) [1904318] - x86/setup: Always reserve the first 1M of RAM (Lianbo Jiang) [1904318] - powerpc/kexec: blacklist functions called in real mode for kprobe (Desnes A. Nunes do Rosario) [1987281] - [s390] scsi: zfcp: Report port fc_security as unknown early during remote cable pull (Claudio Imbrenda) [1989910] - x86/boot: Use common BUILD_BUG_ON (Prarit Bhargava) [1979940] - net: phy: icplus: call phy_restore_page() when phy_select_page() fails (Petr Oros) [1955165] - net: phy: ti: take into account all possible interrupt sources (Petr Oros) [1955165] - net: phy: smsc: add missed clk_disable_unprepare in smsc_phy_probe() (Petr Oros) [1955165] - net: phy: Expose phydev::dev_flags through sysfs (Petr Oros) [1955165] - net: phy: fix save wrong speed and duplex problem if autoneg is on (Petr Oros) [1955165] - net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081 (Petr Oros) [1955165] - net: phy: icplus: add MDI/MDIX support for IP101A/G (Petr Oros) [1955165] - net: phy: icplus: add PHY counter for IP101G (Petr Oros) [1955165] - net: phy: icplus: fix paged register access (Petr Oros) [1955165] - net: phy: icplus: don't set APS_EN bit on IP101G (Petr Oros) [1955165] - net: phy: icplus: split IP101A/G driver (Petr Oros) [1955165] - net: phy: icplus: use the .soft_reset() of the phy-core (Petr Oros) [1955165] - net: phy: icplus: drop address operator for functions (Petr Oros) [1955165] - net: phy: icplus: use PHY_ID_MATCH_EXACT() for IP101A/G (Petr Oros) [1955165] - net: phy: icplus: use PHY_ID_MATCH_MODEL() macro (Petr Oros) [1955165] - net: phy: drop explicit genphy_read_status() op (Petr Oros) [1955165] - net: phy: broadcom: remove BCM5482 1000Base-BX support (Petr Oros) [1955165] - net: mdiobus: Prevent spike on MDIO bus reset signal (Petr Oros) [1955165] - net: phy: realtek: Add support for RTL9000AA/AN (Petr Oros) [1955165] - mdio, phy: fix -Wshadow warnings triggered by nested container_of() (Petr Oros) [1955165] - net: phy: national: remove definition of DEBUG (Petr Oros) [1955165] - net: phy: ar803x: disable extended next page bit (Petr Oros) [1955165] - net: phy: smsc: fix clk error handling (Petr Oros) [1955165] - net: phy: at803x: use phy_modify_mmd() (Petr Oros) [1955165] - net: phy: replace mutex_is_locked with lockdep_assert_held in phylib (Petr Oros) [1955165] - net: phy: micrel: Add KS8851 PHY support (Petr Oros) [1955165] - net: phy: marvell: replace phy_modify() (Petr Oros) [1955165] - net: phy: micrel: fix interrupt handling (Petr Oros) [1955165] - net: phy: remove the .did_interrupt() and .ack_interrupt() callback (Petr Oros) [1955165] - net: phy: qsemi: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: qsemi: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: ti: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: ti: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: national: remove the use of the .ack_interrupt() (Petr Oros) [1955165] - net: phy: national: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: micrel: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: micrel: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: icplus: remove the use .ack_interrupt() (Petr Oros) [1955165] - net: phy: icplus: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: intel-xway: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: intel-xway: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - mdio_bus: suppress err message for reset gpio EPROBE_DEFER (Petr Oros) [1955165] - net: phy: don't duplicate driver name in phy_attached_print (Petr Oros) [1955165] - net: phy: ste10Xp: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: ste10Xp: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: smsc: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: smsc: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: amd: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: amd: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: lxt: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: lxt: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: marvell: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: marvell: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: microchip: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: microchip: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: vitesse: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: vitesse: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: aquantia: do not return an error on clearing pending IRQs (Petr Oros) [1955165] - net: phy: microchip_t1: Don't set .config_aneg (Petr Oros) [1955165] - docs: networking: phy: s/2.5 times faster/2.5 times as fast/ (Petr Oros) [1955165] - net: phy: realtek: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: realtek: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: add genphy_handle_interrupt_no_ack() (Petr Oros) [1955165] - net: phy: davicom: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: davicom: implement generic .handle_interrupt() calback (Petr Oros) [1955165] - net: phy: cicada: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: cicada: implement the generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: broadcom: remove use of ack_interrupt() (Petr Oros) [1955165] - net: phy: broadcom: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: aquantia: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: aquantia: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: mscc: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: mscc: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: at803x: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: at803x: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: make .ack_interrupt() optional (Petr Oros) [1955165] - net: phy: add a shutdown procedure (Petr Oros) [1955165] - net: phy: export phy_error and phy_trigger_machine (Petr Oros) [1955165] - drivers: net: phy: Fix spelling in comment defalut to default (Petr Oros) [1955165] - net: phy: marvell: add special handling of Finisar modules with 88E1111 (Petr Oros) [1955165] - net: phylink: disable BMCR_ISOLATE in phylink_mii_c22_pcs_config (Petr Oros) [1955165] - gpiolib: Extract gpiod_not_found() helper (Petr Oros) [1955165] - net: phy: marvell: Use phy_read_paged() instead of open coding it (Petr Oros) [1955165] - net: phy: dp83869: fix unsigned comparisons against less than zero values (Petr Oros) [1955165] - net: phy: dp83869: Add speed optimization feature (Petr Oros) [1955165] - net: phy: dp83869: support Wake on LAN (Petr Oros) [1955165] - net: phy: dp83822: Update the fiber advertisement for speed (Petr Oros) [1955165] - net: dp83869: Add ability to advertise Fiber connection (Petr Oros) [1955165] - net: phy: Do not warn in phy_stop() on PHY_DOWN (Petr Oros) [1955165] - net: phy: Avoid NPD upon phy_detach() when driver is unbound (Petr Oros) [1955165] - net: phy: bcm7xxx: request and manage GPHY clock (Petr Oros) [1955165] - net: phy: smsc: LAN8710/20: add phy refclk in support (Petr Oros) [1955165] - net: phy: smsc: simplify config_init callback (Petr Oros) [1955165] - net: phy: smsc: skip ENERGYON interrupt if disabled (Petr Oros) [1955165] - net: phy: dp83867: Fix various styling and space issues (Petr Oros) [1955165] - net: mdiobus: add clause 45 mdiobus write accessor (Petr Oros) [1955165] - net: phylink: consider QSGMII interface mode in phylink_mii_c22_pcs_get_state (Petr Oros) [1955165] - net: phylink: add helper function to decode USXGMII word (Petr Oros) [1955165] - net: phy: DP83822: Add ability to advertise Fiber connection (Petr Oros) [1955165] - net: dp83869: Fix RGMII internal delay configuration (Petr Oros) [1955165] - net: mdio-mux-gpio: use devm_gpiod_get_array() (Petr Oros) [1955165] - net: phy: add USXGMII link partner ability constants (Petr Oros) [1955165] - net: phy: mdio-octeon: Cleanup module loading dependencies (Petr Oros) [1955165] - net: phy: cavium: Improve __iomem mess (Petr Oros) [1955165] - net: phy: Add a helper to return the index for of the internal delay (Petr Oros) [1955165] - dt-bindings: net: Add RGMII internal delay for DP83869 (Petr Oros) [1955165] - net: dp83869: Add RGMII internal delay configuration (Petr Oros) [1955165] - net: phy: DP83822: Add setting the fixed internal delay (Petr Oros) [1955165] - net: dp83869: Fix OF_MDIO config check (Petr Oros) [1955165] - net: dp83867: Fix OF_MDIO config check (Petr Oros) [1955165] - net: marvell: Fix OF_MDIO config check (Petr Oros) [1955165] - net: phy: mscc: use mdiobus_get_phy() (Petr Oros) [1955165] - net: phy: improve phy_driver callback handle_interrupt (Petr Oros) [1955165]- net/mlx5e: Add IPsec support to uplink representor (Alaa Hleihel) [1980171 1926098] - net/mlx5e: TC: Reserved bit 31 of REG_C1 for IPsec offload (Alaa Hleihel) [1980171 1926098] - net/mlx5e: TC: Use bit counts for register mapping (Alaa Hleihel) [1980171 1926098] - RDMA/mlx5: Don't access NULL-cleared mpi pointer (Alaa Hleihel) [1980171] - RDMA/mlx5: Split mlx5_ib_update_xlt() into ODP and non-ODP cases (Alaa Hleihel) [1980171] - ip6_tunnel: allow redirecting ip6gre and ipxip6 packets to eth devices (Guillaume Nault) [1921539] - gre: let mac_header point to outer header only when necessary (Guillaume Nault) [1921539] - sit: allow redirecting ip6ip, ipip and mplsip packets to eth devices (Guillaume Nault) [1921539] - ipip: allow redirecting ipip and mplsip packets to eth devices (Guillaume Nault) [1921539] - bareudp: allow redirecting bareudp packets to eth devices (Guillaume Nault) [1921539] - net: handle ARPHRD_IP6GRE in dev_is_mac_header_xmit() (Guillaume Nault) [1921539] - net: ipv4: fix memory leak in ip_mc_add1_src (Guillaume Nault) [1987605] - net: ipv4: fix memory leak in netlbl_cipsov4_add_std (Guillaume Nault) [1987605] - ixgbe: fix probing of multi-port devices with one MDIO (Ken Cox) [1968696] - [s390] s390/qdio: let driver manage the QAOB (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove RX VLAN filter stubs in L3 driver (Claudio Imbrenda) [1919250] - [s390] s390/qeth: enable napi_consume_skb() for pending TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: allocate initial TX Buffer structs with GFP_KERNEL (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix notification for pending buffers during teardown (Claudio Imbrenda) [1919250] - [s390] s390/qeth: schedule TX NAPI on QAOB completion (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve completion of pending TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix memory leak after failed TX Buffer allocation (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't fake a TX completion interrupt after TX error (Claudio Imbrenda) [1919250] - [s390] s390/qeth: make cast type selection for af_iucv skbs robust (Claudio Imbrenda) [1919250] - [s390] s390/qeth: pass proto to qeth_l3_get_cast_type() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove qeth_get_ip_version() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up load/remove code for disciplines (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix L2 header access in qeth_l3_osa_features_check() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix locking for discipline setup / removal (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix deadlock during recovery (Claudio Imbrenda) [1919250] - [s390] s390/qeth: make qeth_qdio_handle_aob() more robust (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove QETH_QDIO_BUF_HANDLED_DELAYED state (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't replace a fully completed async TX buffer (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use dev->groups for common sysfs attributes (Claudio Imbrenda) [1919250] - [s390] s390/ccwgroup: use bus->dev_groups for bus-based sysfs attributes (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't call INIT_LIST_HEAD() on iob's list entry (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix tear down of async TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix af_iucv notification race (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve selection of ethtool link modes (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use QUERY OAT for initial link info (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up default cases for ethtool link mode (Claudio Imbrenda) [1919250] - [s390] s390/qeth: set static link info during initialization (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve QUERY CARD INFO processing (Claudio Imbrenda) [1919250] - [s390] s390/qeth: tolerate error when querying card info (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove useless if/else (Claudio Imbrenda) [1919250] - [s390] s390/qeth: reduce rtnl locking for switchdev events (Claudio Imbrenda) [1919250] - [s390] s390/qeth: static checker cleanups (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use netdev_name() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: constify the disciplines (Claudio Imbrenda) [1919250] - [s390] s390/qeth: allow configuration of TX queues for OSA devices (Claudio Imbrenda) [1919250] - [s390] s390/qeth: de-magic the QIB parm area (Claudio Imbrenda) [1919250] - [s390] s390/qeth: keep track of wanted TX queues (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove forward declarations in L2 code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: consolidate teardown code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: consolidate online code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: cancel cmds earlier during teardown (Claudio Imbrenda) [1919250] - [s390] s390/qeth: tighten ucast IP locking (Claudio Imbrenda) [1919250] - [s390] s390/qeth: replace deprecated simple_stroul() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up string ops in qeth_l3_parse_ipatoe() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: relax locking for ipato config data (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't init refcount twice for mcast IPs (Claudio Imbrenda) [1919250] - mm, page_alloc: check for max order in hot path (Jay Shin) [1982466] - be2net: Fix an error handling path in 'be_probe()' (Petr Oros) [1980665] - net: emulex: benet: simplify the return expression of be_if_create() (Petr Oros) [1980665] - treewide: Use fallthrough pseudo-keyword (Petr Oros) [1980665] - be2net: convert to new udp_tunnel_nic infra (Petr Oros) [1980665] - benet: use generic power management (Petr Oros) [1980665] - treewide: replace '---help---' in Kconfig files with 'help' (Petr Oros) [1980665] - hwmon: (k10temp) Zen3 Ryzen Desktop CPUs support (David Arcari) [1980072] - hwmon: (k10temp) Remove support for displaying voltage and current on Zen CPUs (David Arcari) [1980072] - hwmon: (k10temp) Add support for Zen3 CPUs (David Arcari) [1980072] - hwmon: (k10temp) Take out debugfs code (David Arcari) [1980072] - hwmon: (k10temp) Define SVI telemetry and current factors for Zen2 CPUs (David Arcari) [1980072] - hwmon: (k10temp) Create common functions and macros for Zen CPU families (David Arcari) [1980072] - hwmon: (k10temp) Add AMD family 17h model 60h PCI match (David Arcari) [1980072] - hwmon: (k10temp) make some symbols static (David Arcari) [1980072] - hwmon: (k10temp) Reorganize and simplify temperature support detection (David Arcari) [1980072] - hwmon: (k10temp) Swap Tdie and Tctl on Family 17h CPUs (David Arcari) [1980072] - hwmon: (k10temp) Display up to eight sets of CCD temperatures (David Arcari) [1980072] - hwmon: (k10temp) Add debugfs support (David Arcari) [1980072] - hwmon: (k10temp) Don't show temperature limits on Ryzen (Zen) CPUs (David Arcari) [1980072] - hwmon: (k10temp) Show core and SoC current and voltages on Ryzen CPUs (David Arcari) [1980072] - hwmon: (k10temp) Report temperatures per CPU die (David Arcari) [1980072] - hmon: (k10temp) Convert to use devm_hwmon_device_register_with_info (David Arcari) [1980072] - hwmon: (k10temp) Use bitops (David Arcari) [1980072] - hwmon: (k10temp) Add support for AMD family 17h, model 70h CPUs (David Arcari) [1980072] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 56 (David Arcari) [1980072] - hwmon: (k10temp) Add Hygon Dhyana support (David Arcari) [1980072] - hwmon: (k10temp) Auto-convert to use SENSOR_DEVICE_ATTR_{RO, RW, WO} (David Arcari) [1980072] - hwmon: (k10temp) Support all Family 15h Model 6xh and Model 7xh processors (David Arcari) [1980072] - hwmon: k10temp: Support Threadripper 2920X, 2970WX; simplify offset table (David Arcari) [1980072] - hwmon: (k10temp) 27C Offset needed for Threadripper2 (David Arcari) [1980072] - x86/amd_nb: Add AMD family 17h model 60h PCI IDs (David Arcari) [1980072] - x86/amd_nb: Add PCI device IDs for family 17h, model 70h (David Arcari) [1980072] - x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge (David Arcari) [1980072] - Revert "[hwmon] hwmon: (k10temp) Add support for Zen3 CPUs" (David Arcari) [1980072] - serial: 8250: Process sysrq at port unlock time (Prarit Bhargava) [1982016] - serial: core: Include console.h from serial_core.h (Prarit Bhargava) [1982016] - serial: core: Allow processing sysrq at port unlock time (Prarit Bhargava) [1982016] - [s390] s390/dasd: add missing discipline function (Claudio Imbrenda) [1981804] - bnxt_en: Validate vlan protocol ID on RX packets (Jonathan Toppins) [1960961] - KVM: do not allow mapping valid but non-reference-counted pages (Jon Maloy) [1975515] - gfs2: Fix error handling in init_statfs (Andreas Gruenbacher) [1872440] - gfs2: Fix underflow in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Pass glock holder to gfs2_file_direct_{read,write} (Andreas Gruenbacher) [1872440] - gfs2: Prevent direct-I/O write fallback errors from getting lost (Andreas Gruenbacher) [1872440] - gfs2: Improve mmap write vs. truncate consistency (Andreas Gruenbacher) [1872440] - iomap: Permit pages without an iop to enter writeback (Andreas Gruenbacher) [1872440] - iomap: Don't create iomap_page objects for inline files (Andreas Gruenbacher) [1872440] - gfs2: Clean up gfs2_unstuff_dinode (Andreas Gruenbacher) [1872440] - gfs2: Unstuff before locking page in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Clean up the error handling in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Fix end-of-file handling in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Use resource group glock sharing (Andreas Gruenbacher) [1442151] - gfs2: Allow node-wide exclusive glock sharing (Andreas Gruenbacher) [1442151] - gfs2: Add local resource group locking (Andreas Gruenbacher) [1442151] - gfs2: Add per-reservation reserved block accounting (Andreas Gruenbacher) [1442151] - gfs2: Rename rs_{free -> requested} and rd_{reserved -> requested} (Andreas Gruenbacher) [1442151] - gfs2: Check for active reservation in gfs2_release (Andreas Gruenbacher) [1442151] - gfs2: Don't search for unreserved space twice (Andreas Gruenbacher) [1442151] - gfs2: Only pass reservation down to gfs2_rbm_find (Andreas Gruenbacher) [1442151] - gfs2: Also reflect single-block allocations in rgd->rd_extfail_pt (Andreas Gruenbacher) [1442151] - gfs2: Set GBF_FULL flags when reading resource group (Andreas Gruenbacher) [1442151] - gfs2: Don't clear GBF_FULL flags in rs_deltree (Andreas Gruenbacher) [1442151] - Revert "gfs2: Don't reject a supposedly full bitmap if we have blocks reserved" (Andreas Gruenbacher) [1442151] - gfs2: Minor gfs2_inplace_reserve cleanup (Andreas Gruenbacher) [1442151] - gfs2: Get rid of unnecessary variable in gfs2_alloc_blocks (Andreas Gruenbacher) [1442151] - gfs2: Only use struct gfs2_rbm for bitmap manipulations (Andreas Gruenbacher) [1442151] - gfs2: Turn gfs2_rbm_incr into gfs2_rbm_add (Andreas Gruenbacher) [1872440] - gfs2: Replace gfs2_lblk_to_dblk with gfs2_get_extent (Andreas Gruenbacher) [1872440] - gfs2: Turn gfs2_extent_map into gfs2_{get,alloc}_extent (Andreas Gruenbacher) [1872440] - gfs2: Add new gfs2_iomap_get helper (Andreas Gruenbacher) [1872440] - gfs2: Make inode operations static (Andreas Gruenbacher) [1872440] - gfs2: use iomap for buffered I/O in ordered and writeback mode (Andreas Gruenbacher) [1872440] - gfs2: Never call gfs2_block_zero_range with an open transaction (Andreas Gruenbacher) [1872440] - gfs2: Upgrade shared glocks for atime updates (Andreas Gruenbacher) [1872440] - gfs2: Rework read and page fault locking (Andreas Gruenbacher) [1872440] - fs: Add IOCB_NOIO flag for generic_file_read_iter (Andreas Gruenbacher) [1872440] - gfs2: Remove duplicate call from gfs2_create_inode (Andreas Gruenbacher) [1872440] - gfs2: Multi-block allocations in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: implement gfs2_block_zero_range using iomap_zero_range (Andreas Gruenbacher) [1872440] - gfs2: Add support for IOMAP_ZERO (Andreas Gruenbacher) [1872440] - gfs2: gfs2_iomap_begin cleanup (Andreas Gruenbacher) [1872440] - gfs2: Remove unused gfs2_iomap_alloc argument (Andreas Gruenbacher) [1872440] - gfs2: don't use buffer_heads in gfs2_allocate_page_backing (Andreas Gruenbacher) [1872440] - gfs2: use iomap_bmap instead of generic_block_bmap (Andreas Gruenbacher) [1872440] - gfs2: mark stuffed_readpage static (Andreas Gruenbacher) [1872440] - gfs2: merge gfs2_writepage_common into gfs2_writepage (Andreas Gruenbacher) [1872440] - gfs2: merge gfs2_writeback_aops and gfs2_ordered_aops (Andreas Gruenbacher) [1872440] - gfs2: remove the unused gfs2_stuffed_write_end function (Andreas Gruenbacher) [1872440] - gfs2: use page_offset in gfs2_page_mkwrite (Andreas Gruenbacher) [1442151] - gfs2: Add new sysfs file for gfs2 status (Andreas Gruenbacher) [1442151] - gfs2: Per-revoke accounting in transactions (Andreas Gruenbacher) [1442151] - gfs2: Rework the log space allocation logic (Andreas Gruenbacher) [1442151] - gfs2: Minor calc_reserved cleanup (Andreas Gruenbacher) [1442151] - gfs2: Move function gfs2_ail_empty_tr (Andreas Gruenbacher) [1442151] - gfs2: Get rid of current_tail() (Andreas Gruenbacher) [1442151] - gfs2: Use a tighter bound in gfs2_trans_begin (Andreas Gruenbacher) [1442151] - gfs2: Clean up gfs2_log_reserve (Andreas Gruenbacher) [1442151] - gfs2: Don't wait for journal flush in clean_journal (Andreas Gruenbacher) [1442151] - gfs2: Move lock flush locking to gfs2_trans_{begin,end} (Andreas Gruenbacher) [1442151] - gfs2: Get rid of sd_reserving_log (Andreas Gruenbacher) [1442151] - gfs2: Clean up on-stack transactions (Andreas Gruenbacher) [1442151] - gfs2: Use sb_start_intwrite in gfs2_ail_empty_gl (Andreas Gruenbacher) [1442151] - gfs2: Clean up ail2_empty (Andreas Gruenbacher) [1442151] - gfs2: Rename gfs2_{write => flush}_revokes (Andreas Gruenbacher) [1442151] - gfs2: Minor debugging improvement (Andreas Gruenbacher) [1442151] - gfs2: Some documentation updates (Andreas Gruenbacher) [1442151] - gfs2: Minor gfs2_write_revokes cleanups (Andreas Gruenbacher) [1442151] - gfs2: Simplify the buf_limit and databuf_limit definitions (Andreas Gruenbacher) [1442151] - gfs2: Un-obfuscate function jdesc_find_i (Andreas Gruenbacher) [1442151] - gfs2: Fix fall-through warnings for Clang (Andreas Gruenbacher) [1442151] - gfs2: Make gfs2_setattr_simple static (Andreas Gruenbacher) [1442151] - gfs2: Turn gfs2_meta_indirect_buffer into gfs2_meta_buffer (Andreas Gruenbacher) [1442151] - gfs2: Remove unused variable sb_format (Andreas Gruenbacher) [1442151] - gfs2: Fix dir.c function parameter descriptions (Andreas Gruenbacher) [1442151] - gfs2: Eliminate gh parameter from go_xmote_bh func (Andreas Gruenbacher) [1442151] - gfs2: don't create empty buffers for NO_CREATE (Andreas Gruenbacher) [1442151] - gfs2: Flag a withdraw if init_threads() fails (Andreas Gruenbacher) [1442151] - gfs2: bypass log flush if the journal is not live (Andreas Gruenbacher) [1442151] - gfs2: bypass signal_our_withdraw if no journal (Andreas Gruenbacher) [1442151] - gfs2: fix use-after-free in trans_drain (Andreas Gruenbacher) [1442151] - gfs2: make function gfs2_make_fs_ro() to void type (Andreas Gruenbacher) [1442151] - whack-a-mole: don't open-code iminor/imajor (Andreas Gruenbacher) [1442151] - gfs2: amend SLAB_RECLAIM_ACCOUNT on gfs2 related slab cache (Andreas Gruenbacher) [1442151] - gfs2: Remove sb_start_write from gfs2_statfs_sync (Andreas Gruenbacher) [1442151] - gfs2: check for empty rgrp tree in gfs2_ri_update (Andreas Gruenbacher) [1442151] - gfs2: set lockdep subclass for iopen glocks (Andreas Gruenbacher) [1442151] - gfs2: Fix deadlock dumping resource group glocks (Andreas Gruenbacher) [1442151] - gfs2: Wake up when sd_glock_disposal becomes zero (Andreas Gruenbacher) [1442151] - gfs2: Split up gfs2_meta_sync into inode and rgrp versions (Andreas Gruenbacher) [1442151] - gfs2: Don't ignore inode write errors during inode_go_sync (Andreas Gruenbacher) [1442151] - gfs2: Ignore subsequent errors after withdraw in rgrp_go_sync (Andreas Gruenbacher) [1442151] - gfs2: Eliminate gl_vm (Andreas Gruenbacher) [1442151] - gfs2: Fix comments to glock_hash_walk (Andreas Gruenbacher) [1442151] - gfs2: eliminate GLF_QUEUED flag in favor of list_empty(gl_holders) (Andreas Gruenbacher) [1442151] - gfs2: Fix invalid block size message (Andreas Gruenbacher) [1442151] - gfs2: add validation checks for size of superblock (Andreas Gruenbacher) [1442151] - gfs2: use-after-free in sysfs deregistration (Andreas Gruenbacher) [1442151] - Revert "GFS2: Prevent delete work from occurring on glocks used for create" (Andreas Gruenbacher) [1442151] - gfs2: Don't skip dlm unlock if glock has an lvb (Andreas Gruenbacher) [1442151] - gfs2: Lock imbalance on error path in gfs2_recover_one (Andreas Gruenbacher) [1442151] - gfs2: keep bios separate for each journal (Bob Peterson) [1442151] - gfs2: change from write to read lock for sd_log_flush_lock in journal replay (Bob Peterson) [1442151] - gfs2: don't lock sd_log_flush_lock in try_rgrp_unlink (Bob Peterson) [1442151] - gfs2: fix glock confusion in function signal_our_withdraw (Bob Peterson) [1442151] - gfs2: Don't write log headers after file system withdraw (Andreas Gruenbacher) [1442151] - gfs2: make gfs2_log_write_page static (Andreas Gruenbacher) [1442151] - gfs2: fix possible reference leak in gfs2_check_blk_type (Andreas Gruenbacher) [1442151] - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump (Andreas Gruenbacher) [1442151] - gfs2: remove unused LBIT macros (Andreas Gruenbacher) [1925121] - gfs2: add missing log_blocks trace points in gfs2_write_revokes (Andreas Gruenbacher) [1925121] - gfs2: print details on transactions that aren't properly ended (Andreas Gruenbacher) [1925121] - gfs2: fix use-after-free on transaction ail lists (Andreas Gruenbacher) [1925121] - gfs2: new slab for transactions (Andreas Gruenbacher) [1925121] - gfs2: initialize transaction tr_ailX_lists earlier (Andreas Gruenbacher) [1925121] - gfs2: eliminate ssize parameter from gfs2_struct2blk (Andreas Gruenbacher) [1925121] - gfs2: Fix error path kobject memory leak (Andreas Gruenbacher) [1925121] - gfs2: Rename gfs2_trans_{add_unrevoke => remove_revoke} (Andreas Gruenbacher) [1925121] - gfs2: Remove unnecessary extern declarations (Andreas Gruenbacher) [1925121] - gfs2: Fix sign extension bug in gfs2_update_stats (Andreas Gruenbacher) [1925121] - gfs2: Fix an incorrect gfs2_assert() (Bob Peterson) [1925121] - gfs2: Remove vestigial bd_ops (Andreas Gruenbacher) [1925121] - gfs2: Fix the gfs2_invalidatepage description (Andreas Gruenbacher) [1925121] - gfs2: Clean up gfs2_is_{ordered,writeback} (Andreas Gruenbacher) [1925121] - gfs2: Pass resource group to rgblk_free (Andreas Gruenbacher) [1925121] - gfs2: Remove unnecessary gfs2_rlist_alloc parameter (Andreas Gruenbacher) [1925121] - gfs2: Fix some minor typos (Andreas Gruenbacher) [1925121] - gfs2: Remove unused RGRP_RSRV_MINBYTES definition (Andreas Gruenbacher) [1925121] - gfs2: Move rs_{sizehint, rgd_gh} fields into the inode (Andreas Gruenbacher) [1925121] - gfs2: Clean up out-of-bounds check in gfs2_rbm_from_block (Andreas Gruenbacher) [1925121] - gfs2: Always check the result of gfs2_rbm_from_block (Andreas Gruenbacher) [1925121] - gfs: no need to check return value of debugfs_create functions (Andreas Gruenbacher) [1925121] - serial_core: switch to ->[sg]et_serial() (Artem Savkov) [1952415]- tipc: fix sleeping in tipc accept routine (Xin Long) [1986549] - tipc: fix implicit-connect for SYN+ (Xin Long) [1986549] - net: tipc: fix FB_MTU eat two pages (Xin Long) [1986549] - tipc: Return the correct errno code (Xin Long) [1986549] - net/mlx5: Fix checksum issue of VXLAN and IPsec crypto offload (Alaa Hleihel) [1979901] - net/mlx5: Optimize mlx5e_feature_checks for non IPsec packet (Alaa Hleihel) [1979901] - bpf, selftests: Fold test_current_pid_tgid_new_ns into test_progs. (Jiri Olsa) [1869447] - libbpf: Support BTF_KIND_FLOAT during type compatibility checks in CO-RE (Jiri Olsa) [1984486] - bpf: Generate BTF_KIND_FLOAT when linking vmlinux (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to btf_dump_test_case_syntax (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to test_core_reloc_size (Jiri Olsa) [1984486] - bpf: Document BTF_KIND_FLOAT in btf.rst (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to the existing deduplication tests (Jiri Olsa) [1984486] - selftest/bpf: Add BTF_KIND_FLOAT tests (Jiri Olsa) [1984486] - bpf: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - selftests/bpf: Use the 25th bit in the "invalid BTF_INFO" test (Jiri Olsa) [1984486] - tools/bpftool: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - libbpf: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - bpf: Add BTF_KIND_FLOAT to uapi (Jiri Olsa) [1984486] - libbpf: Add explicit padding to btf_dump_emit_type_decl_opts (Jiri Olsa) [1984486] - selftests/bpf: Fix test_attach_probe for powerpc uprobes (Jiri Olsa) [1931531] - selftests/bpf: Mask bpf_csum_diff() return value to 16 bits in test_verifier (Jiri Olsa) [1942513] - openvswitch: add trace points (Aaron Conole) [1979680] - vxlan: add missing rcu_read_lock() in neigh_reduce() (Guillaume Nault) [1987310] - net: ip6_tunnel: Unregister catch-all devices (Guillaume Nault) [1987310] - net: sit: Unregister catch-all devices (Guillaume Nault) [1987310] - cpuidle: pseries: Do not cap the CEDE0 latency in fixup_cede0_latency() (Diego Domingos) [1952809] - cpuidle: pseries: Fixup CEDE0 latency only for POWER10 onwards (Diego Domingos) [1952809] - mm/swap: fix for "mm: workingset: age nonresident information alongside anonymous pages" (Rafael Aquini) [1984173] - mm/thp: remap_page() is only needed on anonymous THP (Rafael Aquini) [1984173] - mm/compaction: fix 'limit' in fast_isolate_freepages (Rafael Aquini) [1984173] - mm/huge_memory.c: don't discard hugepage if other processes are mapping it (Rafael Aquini) [1984173] - slub: restore slub_debug=- behavior (Rafael Aquini) [1984173] - mm/gup: fix try_grab_compound_head() race with split_huge_page() (Rafael Aquini) [1984173] - mm, futex: fix shared futex pgoff on shmem huge page (Rafael Aquini) [1984173] - x86/mm: Avoid truncating memblocks for SGX memory (Rafael Aquini) [1984173] - mm/thp: fix vma_address() if virtual address below file offset (Rafael Aquini) [1984173] - mm, thp: use head page in __migration_entry_wait() (Rafael Aquini) [1984173] - mm/slub.c: include swab.h (Rafael Aquini) [1984173] - mm/memory-failure: make sure wait for page writeback in memory_failure (Rafael Aquini) [1984173] - mm/slub: fix redzoning for small allocations (Rafael Aquini) [1984173] - mm, hugetlb: fix simple resv_huge_pages underflow on UFFDIO_COPY (Rafael Aquini) [1984173] - mm/page_alloc: fix counting of free pages after take off from buddy (Rafael Aquini) [1984173] - userfaultfd: release page in error path to avoid BUG_ON (Rafael Aquini) [1984173] - ksm: fix potential missing rmap_item for stable_node (Rafael Aquini) [1984173] - mm/migrate.c: fix potential indeterminate pte entry in migrate_vma_insert_page() (Rafael Aquini) [1984173] - mm/hugeltb: handle the error case in hugetlb_fix_reserve_counts() (Rafael Aquini) [1984173] - khugepaged: fix wrong result value for trace_mm_collapse_huge_page_isolate() (Rafael Aquini) [1984173] - mm/memory-failure: unnecessary amount of unmapping (Rafael Aquini) [1984173] - mm: page_alloc: ignore init_on_free=1 for debug_pagealloc=1 (Rafael Aquini) [1984173] - mm/sparse: add the missing sparse_buffer_fini() in error branch (Rafael Aquini) [1984173] - mm: memcontrol: fix cpuhotplug statistics flushing (Rafael Aquini) [1984173] - x86/mem_encrypt: Correct physical address calculation in __set_clr_pte_enc() (Rafael Aquini) [1984173] - zsmalloc: account the number of compacted pages correctly (Rafael Aquini) [1984173] - mm/compaction: fix misbehaviors of fast_find_migrateblock() (Rafael Aquini) [1984173] - hugetlb: fix update_and_free_page contig page struct assumption (Rafael Aquini) [1984173] - mm/hugetlb: fix potential double free in hugetlb_register_node() error path (Rafael Aquini) [1984173] - mm/memory.c: fix potential pte_unmap_unlock pte error (Rafael Aquini) [1984173] - mm/memory.c: fix potential pte_unmap_unlock pte error (Rafael Aquini) [1984173] - mm/hugetlb: fix potential missing huge page size info (Rafael Aquini) [1984173] - x86/mm: Fix leak of pmd ptlock (Rafael Aquini) [1984173] - mm/zswap: fix passing zero to 'PTR_ERR' warning (Rafael Aquini) [1984173] - mm/page_isolation: do not isolate the max order page (Rafael Aquini) [1984173] - mm,memory_failure: always pin the page in madvise_inject_error (Rafael Aquini) [1984173] - mm/page_alloc: speed up the iteration of max_order (Rafael Aquini) [1984173] - x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP (Rafael Aquini) [1984173] - x86/mm/ident_map: Check for errors from ident_pud_init() (Rafael Aquini) [1984173] - mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary (Rafael Aquini) [1984173] - mm/page_alloc.c: fix freeing non-compound pages (Rafael Aquini) [1984173] - mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected by khugepaged (Rafael Aquini) [1984173] - percpu: fix first chunk size calculation for populated bitmap (Rafael Aquini) [1984173] - x86, fakenuma: Fix invalid starting node ID (Rafael Aquini) [1984173] - mm: include CMA pages in lowmem_reserve at boot (Rafael Aquini) [1984173] - mm/rodata_test.c: fix missing function declaration (Rafael Aquini) [1984173] - mm/page_counter: fix various data races at memsw (Rafael Aquini) [1984173] - khugepaged: retract_page_tables() remember to test exit (Rafael Aquini) [1984173] - mm/page_counter.c: fix protection usage propagation (Rafael Aquini) [1984173] - x86/mm/numa: Remove uninitialized_var() usage (Rafael Aquini) [1984173] - shmem: fix possible deadlocks on shmlock_user_lock (Rafael Aquini) [1984173] - mm: swap: use smp_mb__after_atomic() to order LRU bit set (Rafael Aquini) [1984173] - cgroup: memcg: net: do not associate sock with unrelated cgroup (Rafael Aquini) [1984173] - mm: fix gup_pud_range (Rafael Aquini) [1984173] - x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd (Rafael Aquini) [1984173] - mm/shmem.c: thp, shmem: fix conflict of above-47bit hint address and PMD alignment (Rafael Aquini) [1984173] - mm: Implement no-MMU variant of vmalloc_user_node_flags (Rafael Aquini) [1984173] - usercopy: Avoid HIGHMEM pfn warning (Rafael Aquini) [1984173] - x86/mm: Don't exceed the valid physical address space (Rafael Aquini) [1984173] - x86/mm/mem_encrypt: Fix erroneous sizeof() (Rafael Aquini) [1984173] - s390/mm: fix addressing exception after suspend/resume (Rafael Aquini) [1984173] - blk-mq: fix use-after-free in blk_mq_exit_sched (Ming Lei) [1969726] - nvmet: use new ana_log_size instead the old one (Maurizio Lombardi) [1949777] - nvme-multipath: fix double initialization of ANA state (Maurizio Lombardi) [1949777] - configs: enable CONFIG_LEDS_BRIGHTNESS_HW_CHANGED (Benjamin Tissoires) [1922973]- Revert "xfs: enable new inode btree counters feature" (Bill O'Donnell) [1976969] - Revert "xfs: enable big timestamps" (Bill O'Donnell) [1976969] - Revert "xfs: remove kmem_realloc()" (Bill O'Donnell) [1976969] - xfs: prevent metadata files from being inactivated (Bill O'Donnell) [1976969] - quota: widen timestamps for the fs_disk_quota structure (Bill O'Donnell) [1976969] - cifs: fix fallocate when trying to allocate a hole. (Ronnie Sahlberg) [1866684] - cifs: only write 64kb at a time when fallocating a small region of a file (Ronnie Sahlberg) [1866684] - cifs: improve fallocate emulation (Ronnie Sahlberg) [1866684] - cifs: Do not use the original cruid when following DFS links for multiuser mounts (Ronnie Sahlberg) [1812436] - cifs: ignore relatime in smb3_fs_context_parse_monolithic() (Ronnie Sahlberg) [1812436] - cifs: fix regression when mounting shares with prefix paths (Ronnie Sahlberg) [1812436] - cifs: fix leak in cifs_smb3_do_mount() ctx (Ronnie Sahlberg) [1812436] - cifs: add fs_context param to parsing helpers (Ronnie Sahlberg) [1812436] - cifs: make fs_context error logging wrapper (Ronnie Sahlberg) [1812436] - cifs: warn and fail if trying to use rootfs without the config option (Ronnie Sahlberg) [1812436] - cifs: fix nodfs mount option (Ronnie Sahlberg) [1812436] - cifs: fix handling of escaped ',' in the password mount argument (Ronnie Sahlberg) [1812436] - cifs: Add new parameter "acregmax" for distinct file and directory metadata timeout (Ronnie Sahlberg) [1812436] - cifs: convert revalidate of directories to using directory metadata cache timeout (Ronnie Sahlberg) [1812436] - cifs: Add new mount parameter "acdirmax" to allow caching directory metadata (Ronnie Sahlberg) [1812436] - cifs: fix trivial typo (Ronnie Sahlberg) [1812436] - cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath. (Ronnie Sahlberg) [1812436] - cifs: In the new mount api we get the full devname as source= (Ronnie Sahlberg) [1812436] - cifs: do not disable noperm if multiuser mount option is not provided (Ronnie Sahlberg) [1812436] - cifs: fix dfs-links (Ronnie Sahlberg) [1812436] - cifs: fix dfs domain referrals (Ronnie Sahlberg) [1812436] - cifs: returning mount parm processing errors correctly (Ronnie Sahlberg) [1812436] - cifs: fix mounts to subdirectories of target (Ronnie Sahlberg) [1812436] - cifs: ignore auto and noauto options if given (Ronnie Sahlberg) [1812436] - cifs: connect: style: Simplify bool comparison (Ronnie Sahlberg) [1812436] - fs: cifs: remove unneeded variable in smb3_fs_context_dup (Ronnie Sahlberg) [1812436] - cifs: Fix support for remount when not changing rsize/wsize (Ronnie Sahlberg) [1812436] - cifs: handle "guest" mount parameter (Ronnie Sahlberg) [1812436] - cifs: correct four aliased mount parms to allow use of previous names (Ronnie Sahlberg) [1812436] - cifs: fix use after free in cifs_smb3_do_mount() (Ronnie Sahlberg) [1812436] - cifs: fix rsize/wsize to be negotiated values (Ronnie Sahlberg) [1812436] - cifs: update super_operations to show_devname (Ronnie Sahlberg) [1812436] - cifs: fix uninitialized variable in smb3_fs_context_parse_param (Ronnie Sahlberg) [1812436] - cifs: update mnt_cifs_flags during reconfigure (Ronnie Sahlberg) [1812436] - cifs: move update of flags into a separate function (Ronnie Sahlberg) [1812436] - cifs: remove ctx argument from cifs_setup_cifs_sb (Ronnie Sahlberg) [1812436] - cifs: do not allow changing posix_paths during remount (Ronnie Sahlberg) [1812436] - cifs: uncomplicate printing the iocharset parameter (Ronnie Sahlberg) [1812436] - cifs: don't create a temp nls in cifs_setup_ipc (Ronnie Sahlberg) [1812436] - cifs: simplify handling of cifs_sb/ctx->local_nls (Ronnie Sahlberg) [1812436] - cifs: we do not allow changing username/password/unc/... during remount (Ronnie Sahlberg) [1812436] - cifs: add initial reconfigure support (Ronnie Sahlberg) [1812436] - cifs: move [brw]size from cifs_sb to cifs_sb->ctx (Ronnie Sahlberg) [1812436] - cifs: move cifs_cleanup_volume_info[_content] to fs_context.c (Ronnie Sahlberg) [1812436] - cifs: Add missing sentinel to smb3_fs_parameters (Ronnie Sahlberg) [1812436] - cifs: remove actimeo from cifs_sb (Ronnie Sahlberg) [1812436] - cifs: remove [gu]id/backup[gu]id/file_mode/dir_mode from cifs_sb (Ronnie Sahlberg) [1812436] - cifs: minor kernel style fixes for comments (Ronnie Sahlberg) [1812436] - linux/parser.h: add include guards (Ronnie Sahlberg) [1812436] - cifs: Make extract_sharename function public (Ronnie Sahlberg) [1812436] - cifs: Make extract_hostname function public (Ronnie Sahlberg) [1812436] - cifs: get rid of cifs_sb->mountdata (Ronnie Sahlberg) [1812436] - cifs: add an smb3_fs_context to cifs_sb (Ronnie Sahlberg) [1812436] - cifs: remove the devname argument to cifs_compose_mount_options (Ronnie Sahlberg) [1812436] - cifs: switch to new mount api (Ronnie Sahlberg) [1812436] - cifs: move cifs_parse_devname to fs_context.c (Ronnie Sahlberg) [1812436] - cifs: move the enum for cifs parameters into fs_context.h (Ronnie Sahlberg) [1812436] - cifs: rename dup_vol to smb3_fs_context_dup and move it into fs_context.c (Ronnie Sahlberg) [1812436] - cifs: rename smb_vol as smb3_fs_context and move it to fs_context.h (Ronnie Sahlberg) [1812436] - cifs: Fix fall-through warnings for Clang (Ronnie Sahlberg) [1812436] - cifs: refactor create_sd_buf() and and avoid corrupting the buffer (Ronnie Sahlberg) [1812436] - scsi: lpfc: Fix failure to transmit ABTS on FC link (Dick Kennedy) [1964670] - scsi: lpfc: Update lpfc version to 12.8.0.10 (Dick Kennedy) [1964670] - scsi: lpfc: Reregister FPIN types if ELS_RDF is received from fabric controller (Dick Kennedy) [1964670] - scsi: lpfc: Add a option to enable interlocked ABTS before job completion (Dick Kennedy) [1964670] - scsi: lpfc: Fix crash when lpfc_sli4_hba_setup() fails to initialize the SGLs (Dick Kennedy) [1964670] - scsi: lpfc: Ignore GID-FT response that may be received after a link flip (Dick Kennedy) [1964670] - scsi: lpfc: Fix node handling for Fabric Controller and Domain Controller (Dick Kennedy) [1964670] - scsi: lpfc: Fix Node recovery when driver is handling simultaneous PLOGIs (Dick Kennedy) [1964670] - scsi: lpfc: Add ndlp kref accounting for resume RPI path (Dick Kennedy) [1964670] - scsi: lpfc: Fix "Unexpected timeout" error in direct attach topology (Dick Kennedy) [1964670] - scsi: lpfc: Fix non-optimized ERSP handling (Dick Kennedy) [1964670] - scsi: lpfc: Fix unreleased RPIs when NPIV ports are created (Dick Kennedy) [1964670] - scsi: lpfc: Remove redundant assignment to pointer temp_hdr (Dick Kennedy) [1964670] - Documentation: add more details in tipc.rst (Xin Long) [1872308] - net/tipc: add TIPC chapter to networking Documentation (Xin Long) [1872308] - scsi: qla2xxx: Reserve extra IRQ vectors (Nilesh Javali) [1964834] - tracing/hwlat: Honor the tracing_cpumask (Jerome Marchand) [1920595] - tracing/hwlat: Drop the duplicate assignment in start_kthread() (Jerome Marchand) [1920595] - sfc: add logs explaining XDP_TX/REDIRECT is not available (Íñigo Huguet) [1976756] - sfc: ensure correct number of XDP queues (Íñigo Huguet) [1976756] - sfc: fix lack of XDP TX queues - error XDP TX failed (-22) (Íñigo Huguet) [1976756] - sfc: Remove rcu_read_lock() around XDP program invocation (Íñigo Huguet) [1976756] - sfc: use DEVICE_ATTR_*() macro (Íñigo Huguet) [1976756] - sfc: farch: fix compile warning in efx_farch_dimension_resources() (Íñigo Huguet) [1976756] - sfc: don't use netif_info et al before net_device is registered (Íñigo Huguet) [1976756] - net: stmmac: Do not enable RX FIFO overflow interrupts (Mark Salter) [1905243] - net: stmmac: Clear receive all(RA) bit when promiscuous mode is off (Mark Salter) [1905243] - net: stmmac: cleared __FPE_REMOVING bit in stmmac_fpe_start_wq() (Mark Salter) [1905243] - stmmac: intel: Enable HW descriptor prefetch by default (Mark Salter) [1905243] - net: stmmac: Add HW descriptor prefetch setting for DWMAC Core 5.20 onwards (Mark Salter) [1905243] - net: stmmac: fix TSO and TBS feature enabling during driver open (Mark Salter) [1905243] - stmmac: intel: set TSO/TBS TX Queues default settings (Mark Salter) [1905243] - stmmac: intel: unlock on error path in intel_crosststamp() (Mark Salter) [1905243] - net: stmmac: use __napi_schedule() for PREEMPT_RT (Mark Salter) [1905243] - stmmac: intel: Enable SERDES PHY rx clk for PSE (Mark Salter) [1905243] - stmmac: intel: Drop duplicate ID in the list of PCI device IDs (Mark Salter) [1905243] - stmmac: intel: add cross time-stamping freq difference adjustment (Mark Salter) [1905243] - net: stmmac: Add support for external trigger timestamping (Mark Salter) [1905243] - net: stmmac: fix dma physical address of descriptor when display ring (Mark Salter) [1905243] - net: stmmac: fix wrongly set buffer2 valid when sph unsupport (Mark Salter) [1905243] - net: stmmac: arrange Tx tail pointer update to stmmac_flush_tx_descriptors (Mark Salter) [1905243] - net: stmmac: make SPH enable/disable to be configurable (Mark Salter) [1905243] - net: stmmac: set IRQ affinity hint for multi MSI vectors (Mark Salter) [1905243] - net: stmmac: remove unnecessary pci_enable_msi() call (Mark Salter) [1905243] - stmmac: intel: use managed PCI function on probe and resume (Mark Salter) [1905243] - net: stmmac: enable MTL ECC Error Address Status Over-ride by default (Mark Salter) [1905243] - net: ethernet: stmicro: Remove duplicate struct declaration (Mark Salter) [1905243] - net: stmmac: fix missing unlock on error in stmmac_suspend() (Mark Salter) [1905243] - net: stmmac: Fix kernel panic due to NULL pointer dereference of fpe_cfg (Mark Salter) [1905243] - net: stmmac: use interrupt mode INTM=1 for multi-MSI (Mark Salter) [1905243] - stmmac: intel: add support for multi-vector msi and msi-x (Mark Salter) [1905243] - net: stmmac: introduce MSI Interrupt routines for mac, safety, RX & TX (Mark Salter) [1905243] - net: stmmac: make stmmac_interrupt() function more friendly to MSI (Mark Salter) [1905243] - net: stmmac: introduce DMA interrupt status masking per traffic direction (Mark Salter) [1905243] - net: phy: marvell10g: Add PHY loopback support (Mark Salter) [1905243] - net: phy: add genphy_c45_loopback (Mark Salter) [1905243] - net: phylink: Fix phylink_err() function name error in phylink_major_config (Mark Salter) [1905243] - net: stmmac: support FPE link partner hand-shaking procedure (Mark Salter) [1905243] - net: stmmac: Add hardware supported cross-timestamp (Mark Salter) [1905243] - net: stmmac: platform: fix build error with !CONFIG_PM_SLEEP (Mark Salter) [1905243] - stmmac: intel: Add PSE and PCH PTP clock source selection (Mark Salter) [1905243] - net: stmmac: Add EST errors into ethtool statistic (Mark Salter) [1905243] - net: stmmac: EST interrupts handling and error reporting (Mark Salter) [1905243] - net: stmmac: add RX frame steering based on VLAN priority in tc flower (Mark Salter) [1905243] - net: stmmac: restructure tc implementation for RX VLAN Priority steering (Mark Salter) [1905243] - net: stmmac: add per-queue TX & RX coalesce ethtool support (Mark Salter) [1905243] - net: stmmac: Use hrtimer for TX coalescing (Mark Salter) [1905243] - net: stmmac: add timestamp correction to rid CDC sync error (Mark Salter) [1905243] - net: stmmac: add platform level clocks management (Mark Salter) [1905243] - net: stmmac: add clocks management for gmac driver (Mark Salter) [1905243] - stmmac: intel: add pcs-xpcs for Intel mGbE controller (Mark Salter) [1905243] - net: stmmac: ensure phydev is attached to phylink for C37 AN (Mark Salter) [1905243] - net: stmmac: make in-band AN mode parsing is supported for non-DT (Mark Salter) [1905243] - net: phylink: make phylink_parse_mode() support non-DT platform (Mark Salter) [1905243] - net: pcs: add C37 SGMII AN support for intel mGbE controller (Mark Salter) [1905243] - net: pcs: rearrange C73 functions to prepare for C37 support later (Mark Salter) [1905243] - net: phy: leds: Deduplicate link LED trigger registration (Mark Salter) [1905243] - net: stmmac: Fix VLAN filter delete timeout issue in Intel mGBE SGMII (Mark Salter) [1905243] - net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10 (Mark Salter) [1905243] - net: stmmac: fix CBS idleslope and sendslope calculation (Mark Salter) [1905243] - net: stmmac: set TxQ mode back to DCB after disabling CBS (Mark Salter) [1905243] - net: stmmac: allow stmmac to probe for C45 PHY devices (Mark Salter) [1905243] - net: stmmac: Enable EEE HW LPI timer with auto SW/HW switching (Mark Salter) [1905243] - net: pcs-xpcs: depend on MDIO_BUS instead of selecting it (Mark Salter) [1905243] - net: pcs: Move XPCS into new PCS subdirectory (Mark Salter) [1905243] - net: stmmac: Add XLGMII support (Mark Salter) [1905243] - net: phy: xpcs: Add XLGMII support (Mark Salter) [1905243] - net: phy: xpcs: Restart AutoNeg if outcome was invalid (Mark Salter) [1905243] - net: phy: xpcs: Set Link down if AutoNeg is enabled and did not finish (Mark Salter) [1905243] - net: phy: xpcs: Reset XPCS upon probe (Mark Salter) [1905243] - net: phy: xpcs: Return error when 10GKR link errors are found (Mark Salter) [1905243] - stmmac/intel: mark driver as tech preview (Mark Salter) [1905243] - redhat/configs: Add CONFIG_DWMAC_INTEL (Mark Salter) [1905243] - stmmac: intel: Fixes clock registration error seen for multiple interfaces (Mark Salter) [1905243] - stmmac: intel: Fix mdio bus registration issue for TGL-H/ADL-S (Mark Salter) [1905243] - net: stmmac: Add PCI bus info to ethtool driver query output (Mark Salter) [1905243] - stmmac: intel: Add ADL-S 1Gbps PCI IDs (Mark Salter) [1905243] - stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing (Mark Salter) [1905243] - stmmac: intel: Add PCI IDs for TGL-H platform (Mark Salter) [1905243] - stmmac: intel: change all EHL/TGL to auto detect phy addr (Mark Salter) [1905243] - net: stmmac: overwrite the dma_cap.addr64 according to HW design (Mark Salter) [1905243] - stmmac: intel: Fix kernel panic on pci probe (Mark Salter) [1905243] - stmmac: intel: Adding ref clock 1us tic for LPI cntr (Mark Salter) [1905243] - net: stmmac: Add option for VLAN filter fail queue enable (Mark Salter) [1905243] - net: stmmac: Fix clock handling on remove path (Mark Salter) [1905243] - stmmac: intel: Place object in the Makefile according to the order (Mark Salter) [1905243] - stmmac: intel: Fix indentation to put on one line affected code (Mark Salter) [1905243] - stmmac: intel: Eliminate useless conditions and variables (Mark Salter) [1905243] - stmmac: intel: Convert to use pci_alloc_irq_vectors() API (Mark Salter) [1905243] - stmmac: intel: Remove unnecessary loop for PCI BARs (Mark Salter) [1905243] - stmmac: intel: Fix clock handling on error and remove paths (Mark Salter) [1905243] - net: stmmac: Enable SERDES power up/down sequence (Mark Salter) [1905243] - net: stmmac: add EHL 2.5Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add EHL PSE0 & PSE1 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: create dwmac-intel.c to contain all Intel platform (Mark Salter) [1905243] - net: stmmac: Get rid of custom STMMAC_DEVICE() macro (Mark Salter) [1905243] - net: stmmac: update pci platform data to use phy_interface (Mark Salter) [1905243] - net: stmmac: pci: Enable TBS on GMAC5 IPK PCI entry (Mark Salter) [1905243] - net: stmmac: pci: remove the duplicate code of set phy_mask (Mark Salter) [1905243] - PCI: Add PCI_STD_NUM_BARS for the number of standard BARs (Mark Salter) [1905243] - net: stmmac: pci: Add HAPS support using GMAC5 (Mark Salter) [1905243] - net: stmmac: setup higher frequency clk support for EHL & TGL (Mark Salter) [1905243] - net: stmmac: add EHL RGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add TGL SGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add EHL SGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: Make MDIO bus reset optional (Mark Salter) [1905243] - stmmac: pci: Use pci_dev_id() helper (Mark Salter) [1905243] - stmmac: pci: Fix typo in IOT2000 comment (Mark Salter) [1905243] - stmmac: pci: Adjust IOT2000 matching (Mark Salter) [1905243] - net: stmmac: Fix PCI module removal leak (Mark Salter) [1905243] - net: stmmac: mark PM functions as __maybe_unused (Mark Salter) [1905243] - ibmveth: Set CHECKSUM_PARTIAL if NULL TCP CSUM. (Diego Domingos) [1939996] - IB/core: Add missing pin_user_pages*() usage (Waiman Long) [1972078] - mm/gup/writeback: Fix incorrect inaccessible pages handling (Waiman Long) [1972078] - netfilter: nf_tables: bogus EBUSY when deleting flowtable after flush (Phil Sutter) [1983245] - ipv4: Fix device used for dst_alloc with local routes (Antoine Tenart) [1976789] - vrf: fix a comment about loopback device (Antoine Tenart) [1976789] - net: vrf: Fix operation not supported when set vrf mac (Antoine Tenart) [1976789] - vrf: prevent adding upper devices (Antoine Tenart) [1976789] - vrf: fix maximum MTU (Antoine Tenart) [1976789] - net: vrf: Fix ping failed when vrf mtu is set to 0 (Antoine Tenart) [1976789] - net: vrf: remove MTU limits for vrf device (Antoine Tenart) [1976789]- block: fix discard request merge (Ming Lei) [1970316] - blk-mq: update hctx->dispatch_busy in case of real scheduler (Ming Lei) [1976679] - block: Do not pull requests from the scheduler when we cannot dispatch them (Ming Lei) [1976679] - powerpc/pseries/mobility: handle premature return from H_JOIN (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use struct for shared state (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: refactor node lookup during DT update (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: remove rtas_ibm_suspend_me_unsafe() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: dispatch partition migration requests to pseries (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: retry partition suspend after error (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: signal suspend cancellation to platform (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use stop_machine for join/suspend (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: extract VASI session polling logic (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use rtas_activate_firmware() on resume (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: error message improvements (Desnes A. Nunes do Rosario) [1979798] - powerpc/hvcall: add token and codes for H_VASI_SIGNAL (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: add rtas_activate_firmware() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: add rtas_ibm_suspend_me() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: rtas_ibm_suspend_me -> rtas_ibm_suspend_me_unsafe (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: complete ibm,suspend-me status codes (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: Add pr_debug() for device tree changes (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: Set pr_fmt() (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove obsolete memory hotplug DT notifier code (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove dlpar_cpu_readd() (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove memory "re-add" implementation (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove prrn special case from DT update path (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove arch_update_cpu_topology (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove prrn_is_enabled() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtasd: simplify handle_rtas_event(), emit message on events (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove start/stop_topology_update() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove timed_topology_update() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: Handle extra hcall_vphn error cases (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: Suppress "VPHN is not supported" messages (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: stub out numa_update_cpu_topology() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove vphn_enabled and prrn_enabled internal flags (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology workqueue code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology timer code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: make vphn_enabled, prrn_enabled flags const (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology update code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove ability to enable topology updates (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: don't online CPUs for partition suspend (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: Unexport rtas_online_cpus_mask, rtas_offline_cpus_mask (Desnes A. Nunes do Rosario) [1979798] - mm/page_alloc: bail out on fatal signal during reclaim/compaction retry attempt (Aaron Tomlin) [1919765] - RHEL: Revert "powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled" (Paolo Bonzini) [1956950] - KVM: selftests: smm_test: Test SMM enter from L2 (Paolo Bonzini) [1956950] - KVM: nSVM: Restore nested control upon leaving SMM (Paolo Bonzini) [1956950] - KVM: nSVM: Fix L1 state corruption upon return from SMM (Paolo Bonzini) [1956950] - KVM: nSVM: Introduce svm_copy_vmrun_state() (Paolo Bonzini) [1956950] - KVM: nSVM: Check that VM_HSAVE_PA MSR was set before VMRUN (Paolo Bonzini) [1956950] - KVM: nVMX: nSVM: 'nested_run' should count guest-entry attempts that make it to guest code (Paolo Bonzini) [1956950] - KVM: nSVM: Check the value written to MSR_VM_HSAVE_PA (Paolo Bonzini) [1956950] - KVM: SVM: Fix sev_pin_memory() error checks in SEV migration utilities (Paolo Bonzini) [1956950] - KVM: SVM: Return -EFAULT if copy_to_user() for SEV mig packet header fails (Paolo Bonzini) [1956950] - KVM: SVM: add module param to control the #SMI interception (Paolo Bonzini) [1956950] - KVM: SVM: remove INIT intercept handler (Paolo Bonzini) [1956950] - KVM: SVM: #SMI interception must not skip the instruction (Paolo Bonzini) [1956950] - KVM: VMX: Remove vmx_msr_index from vmx.h (Paolo Bonzini) [1956950] - KVM: X86: Disable hardware breakpoints unconditionally before kvm_x86->run() (Paolo Bonzini) [1956950] - KVM: x86/pmu: Clear anythread deprecated bit when 0xa leaf is unsupported on the SVM (Paolo Bonzini) [1956950] - KVM: mmio: Fix use-after-free Read in kvm_vm_ioctl_unregister_coalesced_mmio (Paolo Bonzini) [1956950] - KVM: SVM: Revert clearing of C-bit on GPA in #NPF handler (Paolo Bonzini) [1956950] - KVM: x86/mmu: Do not apply HPA (memory encryption) mask to GPAs (Paolo Bonzini) [1956950] - KVM: x86: Use kernel's x86_phys_bits to handle reduced MAXPHYADDR (Paolo Bonzini) [1956950] - KVM: x86: Use guest MAXPHYADDR from CPUID.0x8000_0008 iff TDP is enabled (Paolo Bonzini) [1956950] - KVM: selftests: do not require 64GB in set_memory_region_test (Paolo Bonzini) [1956950] - KVM: selftests: Fix mapping length truncation in m{,un}map() (Paolo Bonzini) [1956950] - KVM: x86: Force all MMUs to reinitialize if guest CPUID is modified (Paolo Bonzini) [1956950] - Revert "KVM: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack" (Paolo Bonzini) [1956950] - KVM: x86/mmu: Use MMU's role to detect CR4.SMEP value in nested NPT walk (Paolo Bonzini) [1956950] - KVM: x86: Properly reset MMU context at vCPU RESET/INIT (Paolo Bonzini) [1956950] - KVM: x86/mmu: Treat NX as used (not reserved) for all !TDP shadow MMUs (Paolo Bonzini) [1956950] - KVM: x86/mmu: Remove broken WARN that fires on 32-bit KVM w/ nested EPT (Paolo Bonzini) [1956950] - KVM: nVMX: Handle split-lock #AC exceptions that happen in L2 (Paolo Bonzini) [1956950] - KVM: x86/mmu: Calculate and check "full" mmu_role for nested MMU (Paolo Bonzini) [1956950] - KVM: X86: Fix x86_emulator slab cache leak (Paolo Bonzini) [1956950] - KVM: SVM: Call SEV Guest Decommission if ASID binding fails (Paolo Bonzini) [1956950] - KVM: x86: Immediately reset the MMU context when the SMM flag is cleared (Paolo Bonzini) [1956950] - KVM: x86: Fix fall-through warnings for Clang (Paolo Bonzini) [1956950] - KVM: SVM: fix doc warnings (Paolo Bonzini) [1956950] - kvm: LAPIC: Restore guard to prevent illegal APIC register access (Paolo Bonzini) [1956950] - kvm: fix previous commit for 32-bit builds (Paolo Bonzini) [1956950] - kvm: avoid speculation-based attacks from out-of-range memslot accesses (Paolo Bonzini) [1956950] - KVM: x86: Ensure liveliness of nested VM-Enter fail tracepoint message (Paolo Bonzini) [1956950] - KVM: x86: Ensure PV TLB flush tracepoint reflects KVM behavior (Paolo Bonzini) [1956950] - KVM: X86: MMU: Use the correct inherited permissions to get shadow page (Paolo Bonzini) [1956950] - KVM: LAPIC: Write 0 to TMICT should also cancel vmx-preemption timer (Paolo Bonzini) [1956950] - KVM: SVM: Fix SEV SEND_START session length & SEND_UPDATE_DATA query length after commit 238eca821cee (Paolo Bonzini) [1956950] - KVM: X86: Kill off ctxt->ud (Paolo Bonzini) [1956950] - KVM: X86: Fix warning caused by stale emulation context (Paolo Bonzini) [1956950] - KVM: X86: Use kvm_get_linear_rip() in single-step and #DB/#BP interception (Paolo Bonzini) [1956950] - KVM: x86/mmu: Fix comment mentioning skip_4k (Paolo Bonzini) [1956950] - KVM: VMX: update vcpu posted-interrupt descriptor when assigning device (Paolo Bonzini) [1956950] - KVM: rename KVM_REQ_PENDING_TIMER to KVM_REQ_UNBLOCK (Paolo Bonzini) [1956950] - KVM: x86: add start_assignment hook to kvm_x86_ops (Paolo Bonzini) [1956950] - KVM: LAPIC: Narrow the timer latency between wait_lapic_expire and world switch (Paolo Bonzini) [1956950] - KVM: X86: Fix vCPU preempted state from guest's point of view (Paolo Bonzini) [1956950] - KVM: X86: Bail out of direct yield in case of under-committed scenarios (Paolo Bonzini) [1956950] - KVM: SVM: make the avic parameter a bool (Paolo Bonzini) [1956950] - KVM: VMX: Drop unneeded CONFIG_X86_LOCAL_APIC check (Paolo Bonzini) [1956950] - KVM: SVM: Drop unneeded CONFIG_X86_LOCAL_APIC check (Paolo Bonzini) [1956950] - KVM: SVM: Move GHCB unmapping to fix RCU warning (Paolo Bonzini) [1956950] - KVM: SVM: Invert user pointer casting in SEV {en,de}crypt helpers (Paolo Bonzini) [1956950] - kvm: Cap halt polling at kvm->max_halt_poll_ns (Paolo Bonzini) [1956950] - KVM: x86: Prevent deadlock against tk_core.seq (Paolo Bonzini) [1956950] - KVM: x86: Cancel pvclock_gtod_work on module removal (Paolo Bonzini) [1956950] - KVM: x86: Prevent KVM SVM from loading on kernels with 5-level paging (Paolo Bonzini) [1956950] - KVM: SVM: Probe and load MSR_TSC_AUX regardless of RDTSCP support in host (Paolo Bonzini) [1956950] - KVM: VMX: Disable preemption when probing user return MSRs (Paolo Bonzini) [1956950] - KVM: x86: Move RDPID emulation intercept to its own enum (Paolo Bonzini) [1956950] - KVM: SVM: Inject #UD on RDTSCP when it should be disabled in the guest (Paolo Bonzini) [1956950] - KVM: x86: Emulate RDPID only if RDTSCP is supported (Paolo Bonzini) [1956950] - KVM: VMX: Do not advertise RDPID if ENABLE_RDTSCP control is unsupported (Paolo Bonzini) [1956950] - KVM: nSVM: always restore the L1's GIF on migration (Paolo Bonzini) [1956950] - KVM: x86: Hoist input checks in kvm_add_msr_filter() (Paolo Bonzini) [1956950] - KVM: nVMX: Properly pad 'struct kvm_vmx_nested_state_hdr' (Paolo Bonzini) [1956950] - KVM/VMX: Invoke NMI non-IST entry instead of IST entry (Paolo Bonzini) [1956950] - KVM: x86: Fix potential fput on a null source_kvm_file (Paolo Bonzini) [1956950] - KVM: nSVM: leave the guest mode prior to loading a nested state (Paolo Bonzini) [1956950] - KVM: nSVM: fix few bugs in the vmcb02 caching logic (Paolo Bonzini) [1956950] - KVM: nSVM: fix a typo in svm_leave_nested (Paolo Bonzini) [1956950] - KVM: PPC: exit halt polling on need_resched() (Paolo Bonzini) [1956950] - kvm: exit halt polling on need_resched() as well (Paolo Bonzini) [1956950] - KVM: LAPIC: Accurately guarantee busy wait for timer to expire when using hv_timer (Paolo Bonzini) [1956950] - kvm/x86: Fix 'lpages' kvm stat for TDM MMU (Paolo Bonzini) [1956950] - KVM: x86/mmu: Avoid unnecessary page table allocation in kvm_tdp_mmu_map() (Paolo Bonzini) [1956950] - KVM: selftests: Speed up set_memory_region_test (Paolo Bonzini) [1956950] - selftests: kvm: Fix the check of return value (Paolo Bonzini) [1956950] - KVM: x86: Take advantage of kvm_arch_dy_has_pending_interrupt() (Paolo Bonzini) [1956950] - KVM: SVM: Skip SEV cache flush if no ASIDs have been used (Paolo Bonzini) [1956950] - KVM: SVM: Remove an unnecessary prototype declaration of sev_flush_asids() (Paolo Bonzini) [1956950] - KVM: SVM: Drop redundant svm_sev_enabled() helper (Paolo Bonzini) [1956950] - KVM: SVM: Move SEV VMCB tracking allocation to sev.c (Paolo Bonzini) [1956950] - KVM: SVM: Explicitly check max SEV ASID during sev_hardware_setup() (Paolo Bonzini) [1956950] - KVM: SVM: Unconditionally invoke sev_hardware_teardown() (Paolo Bonzini) [1956950] - KVM: SVM: Enable SEV/SEV-ES functionality by default (when supported) (Paolo Bonzini) [1956950] - KVM: SVM: Condition sev_enabled and sev_es_enabled on CONFIG_KVM_AMD_SEV=y (Paolo Bonzini) [1956950] - KVM: SVM: Append "_enabled" to module-scoped SEV/SEV-ES control variables (Paolo Bonzini) [1956950] - KVM: SEV: Mask CPUID[0x8000001F].eax according to supported features (Paolo Bonzini) [1956950] - KVM: SVM: Move SEV module params/variables to sev.c (Paolo Bonzini) [1956950] - svm/sev: Register SEV and SEV-ES ASIDs to the misc controller (Paolo Bonzini) [1956950] - KVM: SVM: Disable SEV/SEV-ES if NPT is disabled (Paolo Bonzini) [1956950] - KVM: SVM: Free sev_asid_bitmap during init if SEV setup fails (Paolo Bonzini) [1956950] - KVM: SVM: Zero out the VMCB array used to track SEV ASID association (Paolo Bonzini) [1956950] - KVM: x86: Move reverse CPUID helpers to separate header file (Paolo Bonzini) [1956950] - KVM: x86: Rename GPR accessors to make mode-aware variants the defaults (Paolo Bonzini) [1956950] - KVM: SVM: Use default rAX size for INVLPGA emulation (Paolo Bonzini) [1956950] - KVM: x86/xen: Drop RAX[63:32] when processing hypercall (Paolo Bonzini) [1956950] - KVM: nVMX: Truncate base/index GPR value on address calc in !64-bit (Paolo Bonzini) [1956950] - KVM: nVMX: Truncate bits 63:32 of VMCS field on nested check in !64-bit (Paolo Bonzini) [1956950] - KVM: VMX: Truncate GPR value for DR and CR reads in !64-bit mode (Paolo Bonzini) [1956950] - KVM: SVM: Truncate GPR value for DR and CR accesses in !64-bit mode (Paolo Bonzini) [1956950] - KVM: x86: Check CR3 GPA for validity regardless of vCPU mode (Paolo Bonzini) [1956950] - KVM: x86: Remove emulator's broken checks on CR0/CR3/CR4 loads (Paolo Bonzini) [1956950] - KVM: VMX: Intercept FS/GS_BASE MSR accesses for 32-bit KVM (Paolo Bonzini) [1956950] - KVM: SVM: Delay restoration of host MSR_TSC_AUX until return to userspace (Paolo Bonzini) [1956950] - KVM: SVM: Clear MSR_TSC_AUX[63:32] on write (Paolo Bonzini) [1956950] - KVM: SVM: Inject #GP on guest MSR_TSC_AUX accesses if RDTSCP unsupported (Paolo Bonzini) [1956950] - KVM: VMX: Invert the inlining of MSR interception helpers (Paolo Bonzini) [1956950] - KVM: X86: Fix failure to boost kernel lock holder candidate in SEV-ES guests (Paolo Bonzini) [1956950] - KVM: x86: Properly handle APF vs disabled LAPIC situation (Paolo Bonzini) [1956950] - KVM: VMX: use EPT_VIOLATION_GVA_TRANSLATED instead of 0x100 (Paolo Bonzini) [1956950] - KVM: x86: Support KVM VMs sharing SEV context (Paolo Bonzini) [1956950] - KVM: x86: Remove unused function declaration (Paolo Bonzini) [1956950] - KVM: x86/mmu: Drop trace_kvm_age_page() tracepoint (Paolo Bonzini) [1956950] - KVM: Move prototypes for MMU notifier callbacks to generic code (Paolo Bonzini) [1956950] - KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() (Paolo Bonzini) [1956950] - KVM: x86/mmu: preserve pending TLB flush across calls to kvm_tdp_mmu_zap_sp (Paolo Bonzini) [1956950] - KVM: x86: disable interrupts while pvclock_gtod_sync_lock is taken (Paolo Bonzini) [1956950] - KVM: x86: reduce pvclock_gtod_sync_lock critical sections (Paolo Bonzini) [1956950] - kvm: x86: annotate RCU pointers (Paolo Bonzini) [1956950] - KVM: x86: remove misplaced comment on active_mmu_pages (Paolo Bonzini) [1956950] - x86/sev: Drop redundant and potentially misleading 'sev_enabled' (Paolo Bonzini) [1956950] - x86/cpufeatures: Assign dedicated feature word for CPUID_0x8000001F[EAX] (Paolo Bonzini) [1956950] - cgroup: Add misc cgroup controller (Paolo Bonzini) [1956950] - x86: Remove duplicate TSC DEADLINE MSR definitions (Paolo Bonzini) [1956950] - KVM: s390: allow facility 192 (vector-packed-decimal-enhancement facility 2) (Thomas Huth) [1977289] - KVM: s390: gen_facilities: allow facilities 165, 193, 194 and 196 (Thomas Huth) [1977289] - mpi3mr: mark as tech preview (Tomas Henzl) [1858804] - add the mpi3mr config (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix W=1 compilation warnings (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix warnings reported by smatch (Tomas Henzl) [1858804] - scsi: mpi3mr: Make some symbols static (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix error return code in mpi3mr_init_ioc() (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix missing unlock on error (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix error handling in mpi3mr_setup_isr() (Tomas Henzl) [1858804] - scsi: mpi3mr: Delete unnecessary NULL check (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix a double free (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix fall-through warning for Clang (Tomas Henzl) [1858804] - scsi: mpi3mr: Add event handling debug prints (Tomas Henzl) [1858804] - scsi: mpi3mr: Add EEDP DIF DIX support (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for DSN secure firmware check (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for PM suspend and resume (Tomas Henzl) [1858804] - scsi: mpi3mr: Wait for pending I/O completions upon detection of VD I/O timeout (Tomas Henzl) [1858804] - scsi: mpi3mr: Print pending host I/Os for debugging (Tomas Henzl) [1858804] - scsi: mpi3mr: Complete support for soft reset (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for threaded ISR (Tomas Henzl) [1858804] - scsi: mpi3mr: Hardware workaround for UNMAP commands to NVMe drives (Tomas Henzl) [1858804] - scsi: mpi3mr: Allow certain commands during pci-remove hook (Tomas Henzl) [1858804] - scsi: mpi3mr: Add change queue depth support (Tomas Henzl) [1858804] - scsi: mpi3mr: Implement SCSI error handler hooks (Tomas Henzl) [1858804] - scsi: mpi3mr: Add bios_param SCSI host template hook (Tomas Henzl) [1858804] - scsi: mpi3mr: Print IOC info for debugging (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for timestamp sync with firmware (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for recovering controller (Tomas Henzl) [1858804] - scsi: mpi3mr: Additional event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for PCIe device event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for device add/remove event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for internal watchdog thread (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for queue command processing (Tomas Henzl) [1858804] - scsi: mpi3mr: Create operational request and reply queue pair (Tomas Henzl) [1858804] - scsi: mpi3mr: Base driver code (Tomas Henzl) [1858804] - scsi: mpi3mr: Add mpi30 Rev-R headers and Kconfig (Tomas Henzl) [1858804] - e1000e: Fix prototype warning (Ken Cox) [1920290] - e1000e: Mark e1000e_pm_prepare() as __maybe_unused (Ken Cox) [1920290] - e1000e: Fix duplicate include guard (Ken Cox) [1920290] - e1000e: Remove the runtime suspend restriction on CNP+ (Ken Cox) [1920290] - e1000e: Leverage direct_complete to speed up s2ram (Ken Cox) [1920290] - e1000e: Fix error handling in e1000_set_d0_lplu_state_82571 (Ken Cox) [1920290] - e1000e: add rtnl_lock() to e1000_reset_task (Ken Cox) [1920290] - e1000e: remove the redundant value assignment in e1000_update_nvm_checksum_spt (Ken Cox) [1920290] - e1000e: Export S0ix flags to ethtool (Ken Cox) [1920290] - e1000e: bump up timeout to wait when ME un-configures ULP mode (Ken Cox) [1920290] - e1000e: Only run S0ix flows if shutdown succeeded (Ken Cox) [1920290] - scsi: ipr: System crashes when seeing type 20 error (Desnes A. Nunes do Rosario) [1977532] - scsi: ipr: Use scnprintf() for avoiding potential buffer overflow (Desnes A. Nunes do Rosario) [1977532] - tipc: do not write skb_shinfo frags when doing decrytion (Xin Long) [1974627] - bnxt_en: Call bnxt_ethtool_free() in bnxt_init_one() error path (Jonathan Toppins) [1921449] - bnxt_en: Fix TQM fastpath ring backing store computation (Jonathan Toppins) [1921449] - bnxt_en: Rediscover PHY capabilities after firmware reset (Jonathan Toppins) [1921449] - bnxt_en: Fix context memory setup for 64K page size. (Jonathan Toppins) [1921449] - bnxt_en: Include new P5 HV definition in VF check. (Jonathan Toppins) [1921449] - bnxt_en: Add PCI IDs for Hyper-V VF devices. (Jonathan Toppins) [1921449] - bnxt_en: Fix RX consumer index logic in the error path. (Jonathan Toppins) [1921449] - bnxt_en: fix ternary sign extension bug in bnxt_show_temp() (Jonathan Toppins) [1921449] - bnxt_en: reliably allocate IRQ table on reset to avoid crash (Jonathan Toppins) [1921449] - bnxt_en: Fix race between firmware reset and driver remove. (Jonathan Toppins) [1921449] - bnxt_en: Improve logging of error recovery settings information. (Jonathan Toppins) [1921449] - bnxt_en: Reply to firmware's echo request async message. (Jonathan Toppins) [1921449] - bnxt_en: Initialize "context kind" field for context memory blocks. (Jonathan Toppins) [1921449] - bnxt_en: Add context memory initialization infrastructure. (Jonathan Toppins) [1921449] - bnxt_en: Implement faster recovery for firmware fatal error. (Jonathan Toppins) [1921449] - bnxt_en: selectively allocate context memories (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.2.16. (Jonathan Toppins) [1921449] - bnxt_en: Fix devlink info's stored fw.psid version format. (Jonathan Toppins) [1921449] - bnxt_en: reverse order of TX disable and carrier off (Jonathan Toppins) [1921449] - bnxt_en: Convert to use netif_level() helpers. (Jonathan Toppins) [1921449] - bnxt_en: Do not process completion entries after fatal condition detected. (Jonathan Toppins) [1921449] - bnxt_en: Consolidate firmware reset event logging. (Jonathan Toppins) [1921449] - bnxt_en: Improve firmware fatal error shutdown sequence. (Jonathan Toppins) [1921449] - bnxt_en: Modify bnxt_disable_int_sync() to be called more than once. (Jonathan Toppins) [1921449] - bnxt_en: Add a new BNXT_STATE_NAPI_DISABLED flag to keep track of NAPI state. (Jonathan Toppins) [1921449] - bnxt_en: Add bnxt_fw_reset_timeout() helper. (Jonathan Toppins) [1921449] - bnxt_en: Retry open if firmware is in reset. (Jonathan Toppins) [1921449] - bnxt_en: attempt to reinitialize after aborted reset (Jonathan Toppins) [1921449] - bnxt_en: log firmware debug notifications (Jonathan Toppins) [1921449] - bnxt_en: Add an upper bound for all firmware command timeouts. (Jonathan Toppins) [1921449] - bnxt_en: Move reading VPD info after successful handshake with fw. (Jonathan Toppins) [1921449] - bnxt_en: Retry sending the first message to firmware if it is under reset. (Jonathan Toppins) [1921449] - bnxt_en: handle CRASH_NO_MASTER during bnxt_open() (Jonathan Toppins) [1921449] - bnxt_en: Define macros for the various health register states. (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface to 1.10.2.11. (Jonathan Toppins) [1921449] - bnxt_en: Clear DEFRAG flag in firmware message when retry flashing. (Jonathan Toppins) [1921449] - bnxt_en: Improve stats context resource accounting with RDMA driver loaded. (Jonathan Toppins) [1921449] - bnxt_en: Use kzalloc for allocating only one thing (Jonathan Toppins) [1921449] - bnxt_en: Check TQM rings for maximum supported value. (Jonathan Toppins) [1921449] - bnxt_en: Fix AER recovery. (Jonathan Toppins) [1921449] - bnxt_en: Enable batch mode when using HWRM_NVM_MODIFY to flash packages. (Jonathan Toppins) [1921449] - bnxt_en: Retry installing FW package under NO_SPACE error condition. (Jonathan Toppins) [1921449] - bnxt_en: Restructure bnxt_flash_package_from_fw_obj() to execute in a loop. (Jonathan Toppins) [1921449] - bnxt_en: Rearrange the logic in bnxt_flash_package_from_fw_obj(). (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_flash_nvram. (Jonathan Toppins) [1921449] - bnxt_en: Release PCI regions when DMA mask setup fails during probe. (Jonathan Toppins) [1921449] - bnxt_en: fix error return code in bnxt_init_board() (Jonathan Toppins) [1921449] - bnxt_en: fix error return code in bnxt_init_one() (Jonathan Toppins) [1921449] - bnxt_en: Avoid unnecessary NVM_GET_DEV_INFO cmd error log on VFs. (Jonathan Toppins) [1921449] - bnxt_en: Fix counter overflow logic. (Jonathan Toppins) [1921449] - bnxt_en: Free port stats during firmware reset. (Jonathan Toppins) [1921449] - bnxt_en: read EEPROM A2h address using page 0 (Jonathan Toppins) [1921449] - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally. (Jonathan Toppins) [1921449] - bnxt_en: Check abort error state in bnxt_open_nic(). (Jonathan Toppins) [1921449] - bnxt_en: Re-write PCI BARs after PCI fatal error. (Jonathan Toppins) [1921449] - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also. (Jonathan Toppins) [1921449] - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one(). (Jonathan Toppins) [1921449] - bnxt_en: Add stored FW version info to devlink info_get cb. (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_dl_info_get(). (Jonathan Toppins) [1921449] - bnxt_en: Add bnxt_hwrm_nvm_get_dev_info() to query NVM info. (Jonathan Toppins) [1921449] - bnxt_en: Log unknown link speed appropriately. (Jonathan Toppins) [1921449] - bnxt_en: Log event_data1 and event_data2 when handling RESET_NOTIFY event. (Jonathan Toppins) [1921449] - bnxt_en: Simplify bnxt_async_event_process(). (Jonathan Toppins) [1921449] - bnxt_en: Set driver default message level. (Jonathan Toppins) [1921449] - bnxt_en: Enable online self tests for multi-host/NPAR mode. (Jonathan Toppins) [1921449] - bnxt_en: Return -EROFS to user space, if NVM writes are not permitted. (Jonathan Toppins) [1921449] - bnxt_en: Eliminate unnecessary RX resets. (Jonathan Toppins) [1921449] - bnxt_en: Reduce unnecessary message log during RX errors. (Jonathan Toppins) [1921449] - bnxt_en: Add a software counter for RX ring reset. (Jonathan Toppins) [1921449] - bnxt_en: Implement RX ring reset in response to buffer errors. (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_init_one_rx_ring(). (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_free_rx_skbs(). (Jonathan Toppins) [1921449] - bnxt_en: Log FW health status info, if reset is aborted. (Jonathan Toppins) [1921449] - bnxt_en: perform no master recovery during startup (Jonathan Toppins) [1921449] - bnxt_en: log firmware status on firmware init failure (Jonathan Toppins) [1921449] - bnxt_en: refactor bnxt_alloc_fw_health() (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.1.68. (Jonathan Toppins) [1921449] - bnxt_en: Improve preset max value for ethtool -l. (Jonathan Toppins) [1921449] - bnxt_en: Implement ethtool set_fec_param() method. (Jonathan Toppins) [1921449] - bnxt_en: Report Active FEC encoding during link up. (Jonathan Toppins) [1921449] - bnxt_en: Report FEC settings to ethtool. (Jonathan Toppins) [1921449] - bnxt_en: avoid link reset if speed is not changed (Jonathan Toppins) [1921449] - bnxt_en: Handle ethernet link being disabled by firmware. (Jonathan Toppins) [1921449] - bnxt_en: ethtool: support PAM4 link speeds up to 200G (Jonathan Toppins) [1921449] - bnxt_en: add basic infrastructure to support PAM4 link speeds (Jonathan Toppins) [1921449] - bnxt_en: refactor bnxt_get_fw_speed() (Jonathan Toppins) [1921449] - bnxt_en: refactor code to limit speed advertising (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.1.65. (Jonathan Toppins) [1921449] - bnxt: add pause frame stats (Jonathan Toppins) [1921449] - xfrm: Fix xfrm offload fallback fail case (Andrea Claudi) [1976424] - sctp: trim optlen when it's a huge value in sctp_setsockopt (Xin Long) [1983864] - netfilter: flowtable: Set offload timeouts according to proto values (Phil Sutter) [1979184] - netfilter: conntrack: Introduce udp offload timeout configuration (Phil Sutter) [1979184] - netfilter: conntrack: Introduce tcp offload timeout configuration (Phil Sutter) [1979184] - veth: check for NAPI instead of xdp_prog before xmit of XDP frame (Paolo Abeni) [1952835] - self-tests: add veth tests (Paolo Abeni) [1952835] - veth: refine napi usage (Paolo Abeni) [1952835] - veth: allow enabling NAPI even without XDP (Paolo Abeni) [1952835] - veth: use skb_orphan_partial instead of skb_orphan (Paolo Abeni) [1952835] - net: really orphan skbs tied to closing sk (Paolo Abeni) [1952835] - net: let skb_orphan_partial wake-up waiters. (Paolo Abeni) [1952835] - veth: Store queue_mapping independently of XDP prog presence (Paolo Abeni) [1952835] - net/xfrm: Add inner_ipproto into sec_path (Petr Oros) [1981429] - net, xdp: Introduce xdp_prepare_buff utility routine (Jiri Benc) [1983730] - net, xdp: Introduce xdp_init_buff utility routine (Jiri Benc) [1983730] - bridge: switchdev: Notify about VLAN protocol changes (Ivan Vecera) [1981461] - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under RCU (Ivan Vecera) [1981461] - bridge: add br_vlan_get_proto() (Ivan Vecera) [1981461] - bridge: add br_vlan_get_pvid_rcu() (Ivan Vecera) [1981461] - RDMA/bnxt_re: Fix a double free in bnxt_qplib_alloc_res (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Get rid of custom module reference counting (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Create direct symbol link between bnxt modules (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Depend on bnxt ethernet driver and not blindly select it (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix Kconfig indentation (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix error return code in bnxt_qplib_cq_process_terminal() (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Move device to error state upon device crash (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Allow bigger MR creation (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Code refactor while populating user MRs (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix max_qp_wrs reported (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix entry size during SRQ create (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix sizeof mismatch for allocation of pbl_tbl. (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Use rdma_umem_for_each_dma_block() (Selvin Xavier) [1921454 1923026] - [s390] tools/kvm_stat: Exempt time-based counters (Claudio Imbrenda) [1981802] - Documentation/admin-guide: intel_pstate: drop doubled word (David Arcari) [1973225] - Documentation: fix multiple typos found in the admin-guide subdirectory (David Arcari) [1973225] - cpufreq: intel_pstate: Fix active mode setting from command line (David Arcari) [1973225] - cpufreq: intel_pstate: Use passive mode by default without HWP (David Arcari) [1973225] - cpufreq: intel_pstate: Use HWP if enabled by platform firmware (David Arcari) [1973225] - cpufreq: intel_pstate: Simplify intel_pstate_update_perf_limits() (David Arcari) [1973225] - cpufreq: intel_pstate: Clean up frequency computations (David Arcari) [1973225] - cpufreq/intel_pstate: Fix wrong macro conversion (David Arcari) [1973225] - cpufreq: Convert to new X86 CPU match macros (David Arcari) [1973225] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (David Arcari) [1973225] - selftests/fpu: Fix debugfs_simple_attr.cocci warning (Vitaly Kuznetsov) [1919182] - selftest/fpu: avoid clang warning (Vitaly Kuznetsov) [1919182] - redhat/configs: Add Enable CONFIG_TEST_FPU (Vitaly Kuznetsov) [1919182] - selftests/fpu: Add an FPU selftest (Vitaly Kuznetsov) [1919182] - x86/fpu/64: Don't FNINIT in kernel_fpu_begin() (Vitaly Kuznetsov) [1919182] - x86/fpu: Make the EFI FPU calling convention explicit (Vitaly Kuznetsov) [1919182] - x86/mmx: Use KFPU_387 for MMX string operations (Vitaly Kuznetsov) [1919182] - x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state (Vitaly Kuznetsov) [1919182] - x86/fpu: Simplify kernel_fpu_begin() (Vitaly Kuznetsov) [1919182] - x86/fpu: Simplify kernel_fpu_end() (Vitaly Kuznetsov) [1919182] - x86/fpu: Don't use current->mm to check for a kthread (Vitaly Kuznetsov) [1919182] - x86/fpu: Don't export __kernel_fpu_{begin,end}() (Vitaly Kuznetsov) [1919182] - intel_th: pci: Add Alder Lake-P support (Tony Camuso) [1929493 1929494]- can: bcm: delay release of struct bcm_op after synchronize_rcu() (Hangbin Liu) [1975059] {CVE-2021-3609} - seq_file: Disallow extremely large seq buffer allocations (Ian Kent) [1975182] - nvme-pci: look for StorageD3Enable on companion ACPI device instead (Gopal Tiwari) [1965660] - prctl: exe link permission error changed from -EINVAL to -EPERM (Adrian Reber) [1960708] - prctl: Allow local CAP_CHECKPOINT_RESTORE to change /proc/self/exe (Adrian Reber) [1960708] - prctl_set_mm: refactor checks from validate_prctl_map (Adrian Reber) [1960708] - proc: allow access in init userns for map_files with CAP_CHECKPOINT_RESTORE (Adrian Reber) [1960708] - pid_namespace: use checkpoint_restore_ns_capable() for ns_last_pid (Adrian Reber) [1960708] - capabilities: Introduce CAP_CHECKPOINT_RESTORE (Adrian Reber) [1960708] - scripts: skip empty CAP_* strings (Adrian Reber) [1960708] - VMCI: Release resource if the work is already queued (Cathy Avery) [1978518] - perf vendor events arm64: Add Fujitsu A64FX pmu event (Michael Petlan) [1908109] - perf vendor events arm64: Add more common and uarch events (Michael Petlan) [1908109] - sunrpc: Avoid a KASAN slab-out-of-bounds bug in xdr_set_page_base() (Benjamin Coddington) [1969751] - xfs: sync lazy sb accounting on quiesce of read-only mounts (Bill O'Donnell) [1917220] - drm/dp_mst: Avoid to mess up payload table by ports in stale topology (Lyude Paul) [1944404] - drm/dp_mst: Do not set proposed vcpi directly (Lyude Paul) [1944404] - drm/qxl: add lock asserts to qxl_bo_vmap_locked + qxl_bo_vunmap_locked (Lyude Paul) [1944404 1907341] - drm/qxl: rework cursor plane (Lyude Paul) [1944404 1907341] - drm/qxl: move shadow handling to new qxl_prepare_shadow() (Lyude Paul) [1944404 1907341] - drm/qxl: fix monitors object vmap (Lyude Paul) [1944404 1907341] - drm/qxl: fix prime vmap (Lyude Paul) [1944404 1907341] - drm/qxl: add qxl_bo_vmap/qxl_bo_vunmap (Lyude Paul) [1944404 1907341] - drm/qxl: rename qxl_bo_kmap -> qxl_bo_vmap_locked (Lyude Paul) [1944404 1907341] - drm/qxl: more fence wait rework (Lyude Paul) [1944404 1907341] - drm/qxl: properly handle device init failures (Lyude Paul) [1944404 1907341] - drm/qxl: allocate dumb buffers in ram (Lyude Paul) [1944404 1907341] - drm/qxl: simplify qxl_fence_wait (Lyude Paul) [1944404 1907341] - drm/qxl: properly free qxl releases (Lyude Paul) [1944404 1907341] - drm/qxl: handle shadow in primary destroy (Lyude Paul) [1944404 1907341] - drm/qxl: properly pin/unpin shadow (Lyude Paul) [1944404 1907341] - drm/qxl: use drmm_mode_config_init (Lyude Paul) [1944404 1907341] - drm/i915/icp+: Use icp_hpd_irq_setup() instead of spt_hpd_irq_setup() (Lyude Paul) [1944404] - drm/i915/gen9_bc: Add W/A for missing STRAP config on TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915/gen9_bc: Introduce HPD pin mappings for TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915/gen9_bc: Introduce TGP PCH DDC pin mappings (Lyude Paul) [1944404] - drm/i915/gen9_bc: Recognize TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915: rename i915_rev_steppings->intel_step_info (Lyude Paul) [1944404] - drm/i915: rename disp_stepping->display_step and gt_stepping->gt_step (Lyude Paul) [1944404] - drm/i915: rename DISP_STEPPING->DISPLAY_STEP and GT_STEPPING->GT_STEP (Lyude Paul) [1944404] - drm/i915: switch TGL and ADL to the new stepping scheme (Lyude Paul) [1944404] - drm/i915: switch KBL to the new stepping scheme (Lyude Paul) [1944404] - drm/i915: add new helpers for accessing stepping info (Lyude Paul) [1944404] - drm/i915: split out stepping info to a new file (Lyude Paul) [1944404] - drm/i915: Add DISPLAY_VER() and related macros (Lyude Paul) [1944404] - drm/i915/display: Do not allow DC3CO if PSR SF is enabled (Lyude Paul) [1944404] - drm/i915: s/dev_priv/i915/ for the remainder of DDI clock routing (Lyude Paul) [1944404] - drm/i915: Relocate icl_sanitize_encoder_pll_mapping() (Lyude Paul) [1944404] - drm/i915: Use .disable_clock() for pll sanitation (Lyude Paul) [1944404] - drm/i915: Split adl-s/rkl from icl_ddi_combo_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract _cnl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Sprinkle WARN(!pll) into icl/dg1 .clock_enable() (Lyude Paul) [1944404] - drm/i915: Sprinkle a few missing locks around shared DDI clock registers (Lyude Paul) [1944404] - drm/i915: Use intel_de_rmw() for DDI clock routing (Lyude Paul) [1944404] - drm/i915: Extract icl+ .{enable,disable}_clock() vfuncs (Lyude Paul) [1944404] - drm/i915: Convert DG1 over to .{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i195: Extract cnl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract skl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract hsw_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Introduce .{enable,disable}_clock() encoder vfuncs (Lyude Paul) [1944404] - drm/i915: Use intel_ddi_clk_select() for FDI (Lyude Paul) [1944404] - drm/i915/adl_s: Add GT and CTX WAs for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Add display WAs for ADL-S (Lyude Paul) [1944404] - drm/i915/display: Add HAS_D12_PLANE_MINIMIZATION (Lyude Paul) [1944404] - drm/i915/adl_s: Re-use TGL GuC/HuC firmware (Lyude Paul) [1944404] - drm/i915/adl_s: Add power wells (Lyude Paul) [1944404] - drm/i915/adl_s: Update PHY_MISC programming (Lyude Paul) [1944404] - drm/i915/adl_s: Update combo PHY master/slave relationships (Lyude Paul) [1944404] - drm/i915/adl_s: Add vbt port and aux channel settings for adls (Lyude Paul) [1944404] - drm/i915/adl_s: Add adl-s ddc pin mapping (Lyude Paul) [1944404] - drm/i915/adl_s: Initialize display for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Configure Port clock registers for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Configure DPLL for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Add PHYs for Alderlake S (Lyude Paul) [1944404] - drm/i915/adl_s: Add PCH support (Lyude Paul) [1944404] - drm/i915/adl_s: Add ADL-S platform info and PCI ids (Lyude Paul) [1944404] - drm/i915/tgl: Use TGL stepping info for applying WAs (Lyude Paul) [1944404] - redhat/configs: Update CONFIG_HSA_AMD (Lyude Paul) - redhat/configs: Update CONFIG_DRM_AMDGPU_USERPTR (Lyude Paul) - DRM Backport v5.11 -> v5.12.4 (Lyude Paul) [1944404] - include/linux/kernel.h: add typeof_member() macro (Lyude Paul) [1944404] - drm: Use USB controller's DMA mask when importing dmabufs (Lyude Paul) [1944404] - PM: runtime: Add pm_runtime_get_if_active() (Lyude Paul) [1944404] - PCI: Add pci_rebar_bytes_to_size() (Lyude Paul) [1944404] - PCI: Export pci_rebar_get_possible_sizes() (Lyude Paul) [1944404] - DRM backport v5.10->v5.11 (Lyude Paul) [1944404] - dma-buf: Use struct dma_buf_map in dma_buf_vunmap() interfaces (Lyude Paul) [1944404] - dma-buf: Use struct dma_buf_map in dma_buf_vmap() interfaces (Lyude Paul) [1944404] - dma-buf: Add struct dma-buf-map for storing struct dma_buf.vaddr_ptr (Lyude Paul) [1944404] - PCI/PM: Do not generate wakeup event when runtime resuming device (Lyude Paul) [1944404] - PCI/PM: Rename pci_wakeup_bus() to pci_resume_bus() (Lyude Paul) [1944404] - blktrace: make relay callbacks const (Lyude Paul) [1944404] - drm/i915: make relay callbacks const (Lyude Paul) [1944404] - relay: allow the use of const callback structs (Lyude Paul) [1944404] - relay: make create_buf_file and remove_buf_file callbacks mandatory (Lyude Paul) [1944404] - relay: require non-NULL callbacks in relay_open() (Lyude Paul) [1944404] - relay: remove unused buf_mapped and buf_unmapped callbacks (Lyude Paul) [1944404] - drm/edid: fix objtool warning in drm_cvt_modes() (Lyude Paul) [1944404] - drm/edid: Fix uninitialized variable in drm_cvt_modes() (Lyude Paul) [1944404] - DRM backport v5.9.y -> v5.10 (Lyude Paul) [1944404] - time: Introduce jiffies64_to_msecs() (Lyude Paul) [1944404] - virtio: add dma-buf support for exported objects (Lyude Paul) [1944404] - objtool: Rename frame.h -> objtool.h (Lyude Paul) [1944404] - moduleparams: Add hexint type parameter (Lyude Paul) [1944404] - iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header (Lyude Paul) [1944404]- [s390] s390/zcrypt/pkey: introduce zcrypt_wait_api_operational() function (Claudio Imbrenda) [1881833] - [s390] s390/ap: ap bus userspace notifications for some bus conditions (Claudio Imbrenda) [1881833] - [s390] s390/pkey: fix paes selftest failure with paes and pkey static build (Claudio Imbrenda) [1881833] - KVM: nSVM: Avoid tainiting kernel by default (Vitaly Kuznetsov) [1982248] - KVM: s390x: implement KVM_CAP_SET_GUEST_DEBUG2 (Thomas Huth) [1945752] - KVM: s390: fix guarded storage control register handling (Thomas Huth) [1945752] - s390/protvirt: fix error return code in uv_info_init() (Thomas Huth) [1945752] - s390/uv: fix prot virt host indication compilation (Thomas Huth) [1945752] - KVM: s390: VSIE: fix MVPG handling for prefixing and MSO (Thomas Huth) [1945752] - KVM: s390: split kvm_s390_real_to_abs (Thomas Huth) [1945752] - KVM: s390: VSIE: correctly handle MVPG when in VSIE (Thomas Huth) [1945752] - KVM: s390: extend kvm_s390_shadow_fault to return entry pointer (Thomas Huth) [1945752] - s390/uv: add prot virt guest/host indication files (Thomas Huth) [1945752] - KVM: s390: split kvm_s390_logical_to_effective (Thomas Huth) [1945752] - KVM: s390: Fix comment spelling in kvm_s390_vcpu_start() (Thomas Huth) [1945752] - s390: uv: Fix sysfs max number of VCPUs reporting (Thomas Huth) [1945752] - KVM: s390: track synchronous pfault events in kvm_stat (Thomas Huth) [1945752] - s390/gmap: make gmap memcg aware (Thomas Huth) [1945752] - KVM: s390: Add memcg accounting to KVM allocations (Thomas Huth) [1945752] - s390/uv: handle destroy page legacy interface (Thomas Huth) [1945752] - KVM: s390: pv: Mark mm as protected after the set secure parameters and improve cleanup (Thomas Huth) [1945752] - virtio/s390: implement virtio-ccw revision 2 correctly (Thomas Huth) [1945752] - sfc: deprecate SFC9020 family (Siena) (Íñigo Huguet) [1926379] - NFS: Fix open coded versions of nfs_set_cache_invalid() in NFSv4 (Benjamin Coddington) [1936478] - NFS: Fix open coded versions of nfs_set_cache_invalid() (Benjamin Coddington) [1936478] - NFS: Clean up function nfs_mark_dir_for_revalidate() (Benjamin Coddington) [1936478] - NFSD: Mark exports of NFS as tech-preview (Benjamin Coddington) [1972229] - perf vendor events intel: Add missing skylake & icelake model numbers (Michael Petlan) [1971959] - tc-testing: add test for ct DNAT tuple collision (Marcelo Ricardo Leitner) [1964578] - tc-testing: add support for sending various scapy packets (Marcelo Ricardo Leitner) [1964578] - tc-testing: fix list handling (Marcelo Ricardo Leitner) [1964578] - net/sched: act_ct: handle DNAT tuple collision (Marcelo Ricardo Leitner) [1964578] - net/packet: remove data races in fanout operations (Balazs Nemeth) [1957270] - net/packet: remove locking from packet_rcv_has_room() (Balazs Nemeth) [1957270] - net: packetmmap: fix only tx timestamp on request (Balazs Nemeth) [1970404] - x86/sgx: Add TAINT_TECH_PREVIEW for virtual EPC (Bandan Das) [1977474] - cxgb4: fix thermal zone device registration (Raju Rangoju) [1954012] - powerpc/64s: Fix crashes when toggling stf barrier (Desnes A. Nunes do Rosario) [1964484] - iavf: Fix an error handling path in 'iavf_probe()' (Stefan Assmann) [1920276] - iavf: clean up packet type lookup table (Stefan Assmann) [1920276] - iavf: redefine the magic number for FDIR GTP-U header fields (Stefan Assmann) [1920276] - iavf: enhance the duplicated FDIR list scan handling (Stefan Assmann) [1920276] - iavf: change the flex-byte support number to macro definition (Stefan Assmann) [1920276] - iavf: remove duplicate free resources calls (Stefan Assmann) [1920276] - iavf: Support for modifying SCTP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Support for modifying UDP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Support for modifying TCP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Add framework to enable ethtool RSS config (Stefan Assmann) [1920276] - iavf: add support for UDP Segmentation Offload (Stefan Assmann) [1920276] - intel: clean up mismatched header comments (Stefan Assmann) [1920276] - iavf: Enable flex-bytes support (Stefan Assmann) [1920276] - iavf: Support Ethernet Type Flow Director filters (Stefan Assmann) [1920276] - iavf: Support IPv6 Flow Director filters (Stefan Assmann) [1920276] - iavf: Support IPv4 Flow Director filters (Stefan Assmann) [1920276] - iavf: Add framework to enable ethtool ntuple filters (Stefan Assmann) [1920276] - net: intel: iavf: fix error return code of iavf_init_get_resources() (Stefan Assmann) [1920276] - workqueue: Move the position of debug_work_activate() in __queue_work() (Waiman Long) [1977537] - workqueue: remove useless unlock() and lock() in series (Waiman Long) [1977537] - workqueue: Convert the pool::lock and wq_mayday_lock to raw_spinlock_t (Waiman Long) [1977537] - workqueue: Use rcuwait for wq_manager_wait (Waiman Long) [1977537] - workqueue: Remove unnecessary kfree() call in rcu_free_wq() (Waiman Long) [1977537] - workqueue: Fix an use after free in init_rescuer() (Waiman Long) [1977537] - workqueue: Use IS_ERR and PTR_ERR instead of PTR_ERR_OR_ZERO. (Waiman Long) [1977537] - workqueue: don't use wq_select_unbound_cpu() for bound works (Waiman Long) [1977537] - workqueue: Use pr_warn instead of pr_warning (Waiman Long) [1977537] - workqueue: more destroy_workqueue() fixes (Waiman Long) [1977537] - workqueue: Minor follow-ups to the rescuer destruction change (Waiman Long) [1977537] - kernel/workqueue: Document wq_worker_last_func() argument (Waiman Long) [1977537] - workqueue: Only unregister a registered lockdep key (Waiman Long) [1977537] - kernel: workqueue: clarify wq_worker_last_func() caller requirements (Waiman Long) [1977537] - workqueue: Fix spelling in source code comments (Waiman Long) [1977537] - workqueue: fix typo in comment (Waiman Long) [1977537] - ice: add correct exception tracing for XDP (Jonathan Toppins) [1920278] - ice: optimize for XDP_REDIRECT in xsk path (Jonathan Toppins) [1920278] - ice: Allow all LLDP packets from PF to Tx (Jonathan Toppins) [1920278] - ice: report supported and advertised autoneg using PHY capabilities (Jonathan Toppins) [1920278] - ice: handle the VF VSI rebuild failure (Jonathan Toppins) [1920278] - ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared (Jonathan Toppins) [1920278] - ice: Fix allowing VF to request more/less queues via virtchnl (Jonathan Toppins) [1920278] - ice: track AF_XDP ZC enabled queues in bitmap (Jonathan Toppins) [1920278] - ice: handle increasing Tx or Rx ring sizes (Jonathan Toppins) [1920278] - ice: Fix potential infinite loop when using u8 loop counter (Jonathan Toppins) [1920278] - ice: fix memory leak of aRFS after resuming from suspend (Jonathan Toppins) [1920278] - ice: Cleanup fltr list in case of allocation issues (Jonathan Toppins) [1920278] - ice: Use port number instead of PF ID for WoL (Jonathan Toppins) [1920278] - ice: Fix for dereference of NULL pointer (Jonathan Toppins) [1920278] - ice: remove DCBNL_DEVRESET bit from PF state (Jonathan Toppins) [1920278] - ice: fix memory allocation call (Jonathan Toppins) [1920278] - ice: prevent ice_open and ice_stop during reset (Jonathan Toppins) [1920278] - ice: Recognize 860 as iSCSI port in CEE mode (Jonathan Toppins) [1920278] - ice: Increase control queue timeout (Jonathan Toppins) [1920278] - ice: Continue probe on link/PHY errors (Jonathan Toppins) [1920278] - ice: fix napi work done reporting in xsk path (Jonathan Toppins) [1920278] - ice: update the number of available RSS queues (Jonathan Toppins) [1920278] - ice: Fix state bits on LLDP mode switch (Jonathan Toppins) [1920278] - ice: Account for port VLAN in VF max packet size calculation (Jonathan Toppins) [1920278] - ice: Set trusted VF as default VSI when setting allmulti on (Jonathan Toppins) [1920278] - ice: report correct max number of TCs (Jonathan Toppins) [1920278] - ice: skip NULL check against XDP prog in ZC path (Jonathan Toppins) [1920278] - ice: remove redundant checks in ice_change_mtu (Jonathan Toppins) [1920278] - ice: move skb pointer from rx_buf to rx_ring (Jonathan Toppins) [1920278] - ice: simplify ice_run_xdp (Jonathan Toppins) [1920278] - ice: Improve MSI-X fallback logic (Jonathan Toppins) [1920278] - ice: Fix trivial error message (Jonathan Toppins) [1920278] - ice: remove unnecessary casts (Jonathan Toppins) [1920278] - ice: Refactor DCB related variables out of the ice_port_info struct (Jonathan Toppins) [1920278] - ice: fix writeback enable logic (Jonathan Toppins) [1920278] - ice: Use PSM clock frequency to calculate RL profiles (Jonathan Toppins) [1920278] - ice: create scheduler aggregator node config and move VSIs (Jonathan Toppins) [1920278 1940527 1940535 1940542] {CVE-2020-24504 CVE-2020-24503 CVE-2020-24502} - ice: Add initial support framework for LAG (Jonathan Toppins) [1920278] - ice: Remove xsk_buff_pool from VSI structure (Jonathan Toppins) [1920278] - ice: implement new LLDP filter command (Jonathan Toppins) [1920278] - ice: log message when trusted VF goes in/out of promisc mode (Jonathan Toppins) [1920278] - ice: remove dead code (Jonathan Toppins) [1920278] - ice: use flex_array_size where possible (Jonathan Toppins) [1920278] - ice: Replace one-element array with flexible-array member (Jonathan Toppins) [1920278] - ice: display stored UNDI firmware version via devlink info (Jonathan Toppins) [1920278] - ice: display stored netlist versions via devlink info (Jonathan Toppins) [1920278] - ice: display some stored NVM versions via devlink info (Jonathan Toppins) [1920278] - ice: introduce function for reading from flash modules (Jonathan Toppins) [1920278] - ice: cache NVM module bank information (Jonathan Toppins) [1920278] - ice: introduce context struct for info report (Jonathan Toppins) [1920278] - ice: create flash_info structure and separate NVM version (Jonathan Toppins) [1920278] - ice: report timeout length for erasing during devlink flash (Jonathan Toppins) [1920278] - ice: Implement flow for IPv6 next header (extension header) (Jonathan Toppins) [1920278] - ice: fix FDir IPv6 flexbyte (Jonathan Toppins) [1920278] - ice: drop dead code in ice_receive_skb() (Jonathan Toppins) [1920278] - ice, xsk: Move Rx allocation out of while-loop (Jonathan Toppins) [1920278] - ice: avoid premature Rx buffer reuse (Jonathan Toppins) [1920278] - ice: Add space to unknown speed (Jonathan Toppins) [1920278] - ice: join format strings to same line as ice_debug (Jonathan Toppins) [1920278] - ice: silence static analysis warning (Jonathan Toppins) [1920278] - ice: cleanup misleading comment (Jonathan Toppins) [1920278] - ice: Remove vlan_ena from vsi structure (Jonathan Toppins) [1920278] - ice: Remove gate to OROM init (Jonathan Toppins) [1920278] - ice: Enable Support for FW Override (E82X) (Jonathan Toppins) [1920278] - ice: don't always return an error for Get PHY Abilities AQ command (Jonathan Toppins) [1920278] - ice: cleanup stack hog (Jonathan Toppins) [1920278] - mm: migrate: fix missing update page_private to hugetlb_page_subpool (Chris von Recklinghausen) [1981661] - mm,hugetlb: drop clearing of flag from prep_new_huge_page (Chris von Recklinghausen) [1981661] - hugetlb: fix uninitialized subpool pointer (Chris von Recklinghausen) [1981661] - include/linux/hugetlb.h: add synchronization information for new hugetlb specific flags (Chris von Recklinghausen) [1981661] - hugetlb: convert PageHugeFreed to HPageFreed flag (Chris von Recklinghausen) [1981661] - hugetlb: convert PageHugeTemporary() to HPageTemporary flag (Chris von Recklinghausen) [1981661] - mm: hugetlb: fix a race between freeing and dissolving the page (Chris von Recklinghausen) [1981661] - mm: don't let userspace spam allocations warnings (Xin Long) [1976699] - dm writecache: make writeback pause configurable (Mike Snitzer) [1978369] - dm writecache: pause writeback if cache full and origin being written directly (Mike Snitzer) [1978369] - dm io tracker: factor out IO tracker (Mike Snitzer) [1978369] - dm writecache: add optional "metadata_only" parameter (Mike Snitzer) [1978369] - dm writecache: add "cleaner" and "max_age" to Documentation (Mike Snitzer) [1978369] - dm writecache: write at least 4k when committing (Mike Snitzer) [1978369] - dm writecache: have ssd writeback wait if the kcopyd workqueue is busy (Mike Snitzer) [1978369] - dm writecache: use list_move instead of list_del_list_add in writecache_writeback() (Mike Snitzer) [1978369] - dm writecache: commit just one block, not a full page (Mike Snitzer) [1978369] - dm writecache: remove unused gfp_t argument from wc_add_block() (Mike Snitzer) [1978369] - dm writecache: interrupt writeback if suspended (Mike Snitzer) [1978369] - dm writecache: don't split bios when overwriting contiguous cache content (Mike Snitzer) [1978369] - dm kcopyd: avoid spin_lock_irqsave from process context (Mike Snitzer) [1978369] - dm kcopyd: avoid useless atomic operations (Mike Snitzer) [1978369] - x86/asm: Optimize memcpy_flushcache() (Mike Snitzer) [1978369] - IB/isert: Align target max I/O size to initiator size (Kamal Heib) [1930955] - IB/isert: set rdma cm afonly flag (Kamal Heib) [1930955]- xsk: Rollback reservation at NETDEV_TX_BUSY (Jiri Benc) [1882711] - xsk: Fix race in SKB mode transmit with shared cq (Jiri Benc) [1882711] - bpf: Only provide bpf_sock_from_file with CONFIG_NET (Jiri Benc) [1882711] - xsk: Validate socket state in xsk_recvmsg, prior touching socket members (Jiri Benc) [1882711] - samples/bpf: Fix spelling mistake "recieving" -> "receiving" (Jiri Benc) [1882711] - samples/bpf: Sample application for eBPF load and socket creation split (Jiri Benc) [1882711] - bpf: Adds support for setting window clamp (Jiri Benc) [1882711] - tcp: declare tcp_mmap() only when CONFIG_MMU is set (Jiri Benc) [1882711] - bpf: Remove trailing semicolon in macro definition (Jiri Benc) [1882711] - bpf: Allow bpf_{s,g}etsockopt from cgroup bind{4,6} hooks (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting infra for bpf maps (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting for xskmap maps (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting for sockmap and sockhash maps (Jiri Benc) [1882711] - bpf: Refine memcg-based memory accounting for xskmap maps (Jiri Benc) [1882711] - bpf: Refine memcg-based memory accounting for sockmap and sockhash maps (Jiri Benc) [1882711] - net, xdp, xsk: fix __sk_mark_napi_id_once napi_id error (Jiri Benc) [1882711] - samples/bpf: Add option to set the busy-poll budget (Jiri Benc) [1882711] - samples/bpf: Add busy-poll support to xdpsock (Jiri Benc) [1882711] - xsk: Propagate napi_id to XDP socket Rx path (Jiri Benc) [1882711] - xsk: Add busy-poll support for {recv,send}msg() (Jiri Benc) [1882711] - xsk: Check need wakeup flag in sendmsg() (Jiri Benc) [1882711] - xsk: Add support for recvmsg() (Jiri Benc) [1882711] - net: Add SO_BUSY_POLL_BUDGET socket option (Jiri Benc) [1882711] - net: Introduce preferred busy-polling (Jiri Benc) [1882711] - net: napi: use READ_ONCE()/WRITE_ONCE() (Jiri Benc) [1882711] - net: napi: add hard irqs deferral feature (Jiri Benc) [1882711] - fs/eventpoll.c: simply CONFIG_NET_RX_BUSY_POLL ifdefery (Jiri Benc) [1882711] - xdp: Remove the functions xsk_map_inc and xsk_map_put (Jiri Benc) [1882711] - xsk: Introduce batched Tx descriptor interfaces (Jiri Benc) [1882711] - xsk: Introduce padding between more ring pointers (Jiri Benc) [1882711] - net: page_pool: Add bulk support for ptr_ring (Jiri Benc) [1882711] - net: xdp: Introduce bulking for xdp tx return path (Jiri Benc) [1882711] - bpf: Rename some functions in bpf_sk_storage (Jiri Benc) [1882711] - bpf: Folding omem_charge() into sk_storage_charge() (Jiri Benc) [1882711] - net/smc: properly handle workqueue allocation failure (Andrea Claudi) [1955178] - Revert "net/smc: fix a NULL pointer dereference" (Andrea Claudi) [1955178] - KVM: selftests: evmcs_test: Test that KVM_STATE_NESTED_EVMCS is never lost (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Request to sync eVMCS from VMCS12 after migration (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Reset eVMCS clean fields data from prepare_vmcs02() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Force enlightened VMCS sync from nested_vmx_failValid() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Ignore 'hv_clean_fields' data when eVMCS data is copied in vmx_get_nested_state() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Release enlightened VMCS on VMCLEAR (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Introduce 'EVMPTR_MAP_PENDING' post-migration state (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Make copy_vmcs12_to_enlightened()/copy_enlightened_to_vmcs12() return 'void' (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Release eVMCS when enlightened VMENTRY was disabled (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Don't set 'dirty_vmcs12' flag on enlightened VMPTRLD (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Use '-1' in 'hv_evmcs_vmptr' to indicate that eVMCS is not in use (Vitaly Kuznetsov) [1940837] - KVM: selftests: evmcs_test: Check that VMCS12 is alway properly synced to eVMCS after restore (Vitaly Kuznetsov) [1940837] - KVM: selftests: evmcs_test: Check that VMLAUNCH with bogus EVMPTR is causing #UD (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Always make an attempt to map eVMCS after migration (Vitaly Kuznetsov) [1940837] - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working (Gopal Tiwari) [1973909] - KVM: x86: Unload MMU on guest TLB flush if TDP disabled to force MMU sync (Vitaly Kuznetsov) [1906634] - scsi: sbitmap: Silence a debug kernel warning triggered by sbitmap_put() (Ewan D. Milne) [1761937] - scsi: core: Replace sdev->device_busy with sbitmap (Ewan D. Milne) [1761937] - scsi: core: Make sure sdev->queue_depth is <= max(shost->can_queue, 1024) (Ewan D. Milne) [1761937] - scsi: core: Add scsi_device_busy() wrapper (Ewan D. Milne) [1761937] - scsi: blk-mq: Return budget token from .get_budget callback (Ewan D. Milne) [1761937] - scsi: blk-mq: Add callbacks for storing & retrieving budget token (Ewan D. Milne) [1761937] - scsi: sbitmap: Add sbitmap_calculate_shift() helper (Ewan D. Milne) [1761937] - scsi: sbitmap: Export sbitmap_weight (Ewan D. Milne) [1761937] - scsi: sbitmap: Move allocation hint into sbitmap (Ewan D. Milne) [1761937] - scsi: sbitmap: Add helpers for updating allocation hint (Ewan D. Milne) [1761937] - scsi: sbitmap: Maintain allocation round_robin in sbitmap (Ewan D. Milne) [1761937] - scsi: sbitmap: Remove sbitmap_clear_bit_unlock (Ewan D. Milne) [1761937] - blk-mq: pass request queue into get/put budget callback (Ewan D. Milne) [1761937] - dma-iommu: implement ->alloc_noncontiguous (Jerry Snitselaar) [1955767] - dma-iommu: refactor iommu_dma_alloc_remap (Jerry Snitselaar) [1955767] - dma-mapping: add a dma_alloc_noncontiguous API (Jerry Snitselaar) [1955767] - dma-mapping: refactor dma_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-mapping: add a dma_mmap_pages helper (Jerry Snitselaar) [1955767] - dma-mapping: remove the {alloc,free}_noncoherent methods (Jerry Snitselaar) [1955767] - iommu/vt-d: Make unnecessarily global functions static (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove unused function declarations (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove SVM_FLAG_PRIVATE_PASID (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove svm_dev_ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Use Real PCI DMA device for IRTE (Jerry Snitselaar) [1955767] - iommu/vt-d: Calculate and set flags for handle_mm_fault (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix build error of pasid_enable_wpe() with !X86 (Jerry Snitselaar) [1955767] - iommu/vt-d: Avoid unnecessary cache flush in pasid entry teardown (Jerry Snitselaar) [1955767] - iommu/vt-d: Enable write protect propagation from guest (Jerry Snitselaar) [1955767] - iommu/vt-d: Enable write protect for supervisor SVM (Jerry Snitselaar) [1955767] - iommu/vt-d: Report more information about invalidation errors (Jerry Snitselaar) [1955767] - iommu/vt-d: Disable SVM when ATS/PRI/PASID are not enabled in the device (Jerry Snitselaar) [1955767] - iommu: Stop exporting free_iova_fast() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_dma_free_cpu_cached_iovas() (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove IOVA domain rcache flushing for CPU offlining (Jerry Snitselaar) [1955767] - iova: Add CPU hotplug handler to flush rcaches (Jerry Snitselaar) [1955767] - iommu/iova: Improve restart logic (Jerry Snitselaar) [1955767] - iommu/iova: Add rbtree entry helper (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Remove the unused fields for PREFETCH_CONFIG command (Jerry Snitselaar) [1955767] - iommu/vt-d: Use user privilege for RID2PASID translation (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix sysfs leak in alloc_iommu() (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add a check to avoid invalid iotlb sync (Jerry Snitselaar) [1955767] - x86/events/amd/iommu: Fix invalid Perf result due to IOMMU PMC power-gating (Jerry Snitselaar) [1955767] - iommu: Fix a boundary issue to avoid performance drop (Jerry Snitselaar) [1955767] - iommu/vt-d: Check for allocation failure in aux_detach_device() (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove unused dma map/unmap trace events (Jerry Snitselaar) [1955767] - iommu/amd: Clear DMA ops when switching domain (Jerry Snitselaar) [1955767] - iommu/amd: Remove performance counter pre-initialization test (Jerry Snitselaar) [1955767] - Revert "iommu/amd: Fix performance counter initialization" (Jerry Snitselaar) [1955767] - iommu/dma: Resurrect the "forcedac" option (Jerry Snitselaar) [1955767] - iommu: Check dev->iommu in iommu_dev_xxx functions (Jerry Snitselaar) [1955767] - iommu/amd: Put newline after closing bracket in warning (Jerry Snitselaar) [1955767] - iommu/vt-d: Force to flush iotlb before creating superpage (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix an error handling path in 'intel_prepare_irq_remapping()' (Jerry Snitselaar) [1955767] - iommu/vt-d: Invalidate PASID cache when root/context entry changed (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove WO permissions on second-level paging entries (Jerry Snitselaar) [1955767] - iommu/vt-d: Report the right page fault address (Jerry Snitselaar) [1955767] - iommu/vt-d: Report right snoop capability when using FL for IOVA (Jerry Snitselaar) [1955767] - iommu/vt-d: Don't set then clear private data in prq_event_thread() (Jerry Snitselaar) [1955767] - iommu/vt-d: Reject unsupported page request modes (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: add bit field SFM into GERROR_ERR_MASK (Jerry Snitselaar) [1955767] - iommu/amd: Keep track of amd_iommu_irq_remap state (Jerry Snitselaar) [1955767] - iommu/amd: Don't call early_amd_iommu_init() when AMD IOMMU is disabled (Jerry Snitselaar) [1955767] - iommu/amd: Move Stoney Ridge check to detect_ivrs() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix status code for Allocate/Free PASID command (Jerry Snitselaar) [1955767] - iommu: Don't use lazy flush for untrusted device (Jerry Snitselaar) [1955767] - iommu/amd: Fix sleeping in atomic in increase_address_space() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_dev_has_feature() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_domain_window_disable() (Jerry Snitselaar) [1955767] - iommu: Stop exporting iommu_map_sg_atomic() (Jerry Snitselaar) [1955767] - iova: Stop exporting some more functions (Jerry Snitselaar) [1955767] - iova: Delete copy_reserved_iova() (Jerry Snitselaar) [1955767] - iova: Make has_iova_flush_queue() private (Jerry Snitselaar) [1955767] - iommu/vt-d: Add iotlb_sync_map callback (Jerry Snitselaar) [1955767] - iommu/vt-d: Move capability check code to cap_audit files (Jerry Snitselaar) [1921289] - iommu/vt-d: Audit IOMMU Capabilities and add helper functions (Jerry Snitselaar) [1921289] - iommu/vt-d: Fix 'physical' typos (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix compile error [-Werror=implicit-function-declaration] (Jerry Snitselaar) [1955767] - iommu/vt-d: Use INVALID response code instead of FAILURE (Jerry Snitselaar) [1920726] - iommu/vt-d: Clear PRQ overflow only when PRQ is empty (Jerry Snitselaar) [1955767] - iommu/vt-d: Preset Access/Dirty bits for IOVA over FL (Jerry Snitselaar) [1955767] - iommu/vt-d: Add qi_submit trace event (Jerry Snitselaar) [1955767] - iommu/vt-d: Consolidate duplicate cache invaliation code (Jerry Snitselaar) [1955767] - iommu/amd: Adopt IO page table framework for AMD IOMMU v1 page table (Jerry Snitselaar) [1955767] - iommu/amd: Introduce iommu_v1_map_page and iommu_v1_unmap_page (Jerry Snitselaar) [1955767] - iommu/amd: Introduce iommu_v1_iova_to_phys (Jerry Snitselaar) [1955767] - iommu/amd: Refactor fetch_pte to use struct amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Rename variables to be consistent with struct io_pgtable_ops (Jerry Snitselaar) [1955767] - iommu/amd: Remove amd_iommu_domain_get_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Restructure code for freeing page table (Jerry Snitselaar) [1955767] - iommu/amd: Move IO page table related functions (Jerry Snitselaar) [1955767] - iommu/amd: Declare functions as extern (Jerry Snitselaar) [1955767] - iommu/amd: Convert to using amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Move pt_root to struct amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Prepare for generic IO page table framework (Jerry Snitselaar) [1955767] - iommu/amd: Re-define amd_iommu_domain_encode_pgtable as inline (Jerry Snitselaar) [1955767] - iommu/amd: remove h from printk format specifier (Jerry Snitselaar) [1955767] - iommu/amd: Use DEFINE_SPINLOCK() for spinlock (Jerry Snitselaar) [1955767] - iommu/amd: Remove unnecessary assignment (Jerry Snitselaar) [1955767] - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Add cfg as a param in some macros (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Clarify LVL_SHIFT/BITS macro (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Use ias to check the valid iova in unmap (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Remove TLBI_ON_MAP quirk (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Allow io_pgtable_tlb ops optional (Jerry Snitselaar) [1955767] - iommu: Switch gather->end to the inclusive end (Jerry Snitselaar) [1955767] - iommu: Add iova and size as parameters in iotlb_sync_map (Jerry Snitselaar) [1955767] - iommu: Move iotlb_sync_map out from __iommu_map (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for VHE (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Make BTM optional for SVA (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Split arm_smmu_tlb_inv_range() (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Use DEFINE_RES_MEM() to simplify code (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Remove the page 1 fixup (Jerry Snitselaar) [1955767] - x86,swiotlb: Adjust SWIOTLB bounce buffer size for SEV guests (Jerry Snitselaar) [1955767] - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it (Jerry Snitselaar) [1955767] - iommu/vt-d: Do not use flush-queue when caching-mode is on (Jerry Snitselaar) [1955767] - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() (Jerry Snitselaar) [1955767] - iommu/amd: Use IVHD EFR for early initialization of IOMMU features (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix ineffective devTLB invalidation for subdevices (Jerry Snitselaar) [1920750 1920749] - iommu/vt-d: Fix general protection fault in aux_detach_device() (Jerry Snitselaar) [1920748] - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct intel_svm_dev (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix lockdep splat in sva bind()/unbind() (Jerry Snitselaar) [1955767] - Revert "iommu: Add quirk for Intel graphic devices in map_sg" (Jerry Snitselaar) [1955767] - iommu/intel: Fix memleak in intel_irq_remapping_alloc (Jerry Snitselaar) [1955767] - iommu/iova: fix 'domain' typos (Jerry Snitselaar) [1955767] - dma-iommu: remove __iommu_dma_mmap (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Remove tlb_flush_leaf (Jerry Snitselaar) [1955767] - iommu/vt-d: Avoid GFP_ATOMIC where it is not needed (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove set but not used variable (Jerry Snitselaar) [1955767] - iommu/vt-d: Cleanup after converting to dma-iommu ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Convert intel iommu driver to the iommu ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Don't clear GFP_DMA and GFP_DMA32 flags (Jerry Snitselaar) [1955767] - iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev (Jerry Snitselaar) [1955767] - iommu: Add quirk for Intel graphic devices in map_sg (Jerry Snitselaar) [1955767] - swiotlb: remove the tbl_dma_addr argument to swiotlb_tbl_map_single (Jerry Snitselaar) [1955767] - swiotlb-xen: remove start_dma_addr (Jerry Snitselaar) [1955767] - iommu: Allow the dma-iommu api to use bounce buffers (Jerry Snitselaar) [1955767] - iommu: Add iommu_dma_free_cpu_cached_iovas() (Jerry Snitselaar) [1955767] - iommu: Handle freelists when using deferred flushing in iommu drivers (Jerry Snitselaar) [1955767] - iommu/sva: Add PASID helpers (Jerry Snitselaar) [1955767] - iommu/ioasid: Add ioasid references (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Remove unused 'level' parameter from iopte_type() macro (Jerry Snitselaar) [1955767] - iommu: Defer the early return in arm_(v7s/lpae)_map (Jerry Snitselaar) [1955767] - iommu: Improve the performance for direct_mapping (Jerry Snitselaar) [1955767] - iommu: return error code when it can't get group (Jerry Snitselaar) [1955767] - iommu: Modify the description of iommu_sva_unbind_device (Jerry Snitselaar) [1955767] - iommu: Stop exporting free_iova_mem() (Jerry Snitselaar) [1955767] - iommu: Stop exporting alloc_iova_mem() (Jerry Snitselaar) [1955767] - iommu: Delete split_and_remove_iova() (Jerry Snitselaar) [1955767] - iommu: avoid taking iova_rbtree_lock twice (Jerry Snitselaar) [1955767] - iommu/iova: Free global iova rcache on iova alloc failure (Jerry Snitselaar) [1955767] - iommu/iova: Retry from last rb tree node if iova search fails (Jerry Snitselaar) [1955767] - iommu: Fix htmldocs warnings in sysfs-kernel-iommu_groups (Jerry Snitselaar) [1955767] - iommu: Document usage of "/sys/kernel/iommu_groups//type" file (Jerry Snitselaar) [1838589] - iommu: Take lock before reading iommu group default domain type (Jerry Snitselaar) [1838589] - iommu: Add support to change default domain of an iommu group (Jerry Snitselaar) [1838589] - iommu: Move def_domain type check for untrusted device into core (Jerry Snitselaar) [1838589] - iommu/arm-smmu-v3: Hook up ATC invalidation to mm ops (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Implement iommu_sva_bind/unbind() (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Move non-strict mode to use io_pgtable_domain_attr (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add support for pagetable config domain attribute (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Assign boolean values to a bool variable (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Add support to use system cache (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Add a domain attribute for pagetable configuration (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Support coherency for Mali LPAE (Jerry Snitselaar) [1955767] - dma-mapping: document dma_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-direct: simplify the DMA_ATTR_NO_KERNEL_MAPPING handling (Jerry Snitselaar) [1955767] - dma-direct: factor out a dma_direct_alloc_from_pool helper (Jerry Snitselaar) [1955767] - dma-direct check for highmem pages in dma_direct_alloc_pages (Jerry Snitselaar) [1955767] - firewire-ohci: use dma_alloc_pages (Jerry Snitselaar) [1955767] - dma-iommu: implement ->alloc_noncoherent (Jerry Snitselaar) [1955767] - dma-mapping: add new {alloc,free}_noncoherent dma_map_ops methods (Jerry Snitselaar) [1955767] - dma-mapping: add a new dma_alloc_pages API (Jerry Snitselaar) [1955767] - dma-mapping: add a new dma_alloc_noncoherent API (Jerry Snitselaar) [1955767] - drm/nouveau/gk20a: stop setting DMA_ATTR_NON_CONSISTENT (Jerry Snitselaar) [1955767] - mm: turn alloc_pages into an inline function (Jerry Snitselaar) [1955767] - dma-mapping: better document dma_addr_t and DMA_MAPPING_ERROR (Jerry Snitselaar) [1955767] - dma-mapping: move valid_dma_direction to dma-direction.h (Jerry Snitselaar) [1955767] - dma-debug: convert comma to semicolon (Jerry Snitselaar) [1955767] - dma-direct: Fix potential NULL pointer dereference (Jerry Snitselaar) [1955767] - dma-mapping: move the dma_declare_coherent_memory documentation (Jerry Snitselaar) [1955767] - dma-mapping: move dma_common_{mmap,get_sgtable} out of mapping.c (Jerry Snitselaar) [1955767] - dma-mapping: make support for dma ops optional (Jerry Snitselaar) [1955767] - dma-direct: rename and cleanup __phys_to_dma (Jerry Snitselaar) [1955767] - dma-direct: remove __dma_to_phys (Jerry Snitselaar) [1955767] - dma-direct: use phys_to_dma_direct in dma_direct_alloc (Jerry Snitselaar) [1955767] - dma-direct: lift gfp_t manipulation out of__dma_direct_alloc_pages (Jerry Snitselaar) [1955767] - dma-direct: remove dma_direct_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-debug: remove most exports (Jerry Snitselaar) [1955767] - dma-mapping: remove the dma_dummy_ops export (Jerry Snitselaar) [1955767] - dma-mapping: set default segment_boundary_mask to ULONG_MAX (Jerry Snitselaar) [1955767] - dma-mapping: introduce dma_get_seg_boundary_nr_pages() (Jerry Snitselaar) [1955767] - swiotlb: using SIZE_MAX needs limits.h included (Jerry Snitselaar) [1955767] - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb" (Jerry Snitselaar) [1955767] - swiotlb: Mark max_segment with static keyword (Jerry Snitselaar) [1955767] - swiotlb: Declare swiotlb_late_init_with_default_size() in header (Jerry Snitselaar) [1955767] - swiotlb: Use pa to print phys_addr_t variables (Jerry Snitselaar) [1955767] - dma-debug: remove debug_dma_assert_idle() function (Jerry Snitselaar) [1955767] - dma-mapping: move debug configuration options to kernel/dma (Jerry Snitselaar) [1955767] - dma-debug: fix debug_dma_assert_idle(), use rcu_read_lock() (Jerry Snitselaar) [1955767] - iommu: Check return of __iommu_attach_device() (Jerry Snitselaar) [1955767] - iommu/amd: Enforce 4k mapping for certain IOMMU data structures (Jerry Snitselaar) [1955767] - iommu: Fix a check in iommu_check_bind_data() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix a bug for PDP check in prq_event_thread (Jerry Snitselaar) [1955767] - iommu/vt-d: Check UAPI data processed by IOMMU core (Jerry Snitselaar) [1955767] - iommu/uapi: Handle data and argsz filled by users (Jerry Snitselaar) [1955767] - iommu/uapi: Rename uapi functions (Jerry Snitselaar) [1955767] - iommu/uapi: Use named union for user data (Jerry Snitselaar) [1955767] - iommu/uapi: Add argsz for user filled data (Jerry Snitselaar) [1955767] - docs: IOMMU user API (Jerry Snitselaar) [1955767] - iommu/dma: Handle init_iova_flush_queue() failure in dma-iommu path (Jerry Snitselaar) [1955767] - iommu/iova: Replace cmpxchg with xchg in queue_iova (Jerry Snitselaar) [1955767] - iommu/dma: Remove broken huge page handling (Jerry Snitselaar) [1955767] - iommu: Rename iommu_tlb_* functions to iommu_iotlb_* (Jerry Snitselaar) [1955767] - iommu/vt-d: Use device numa domain if RHSA is missing (Jerry Snitselaar) [1955767] - iommu/vt-d: Drop kerneldoc marker from regular comment (Jerry Snitselaar) [1955767] - iommu/amd: Re-purpose Exclusion range registers to support SNP CWWB (Jerry Snitselaar) [1955767] - iommu/amd: Add support for RMP_PAGE_FAULT and RMP_HW_ERR (Jerry Snitselaar) [1955767] - iommu/amd: Use 4K page for completion wait write-back semaphore (Jerry Snitselaar) [1955767] - iommu/amd: Add missing function prototypes to fix -Wmissing-prototypes (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add SVA device feature (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Check for SVA features (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Seize private ASID (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Share process page tables (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Move definitions to a header (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Move some definitions to a header (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Ensure queue is read after updating prod pointer (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Constify some helpers (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Prepare for the adreno-smmu implementation (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add support for split pagetables (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Pass io-pgtable config to implementation specific function (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix endianness annotations (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: permit users to disable msi polling (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: replace module_param_named by module_param for disable_bypass (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: replace symbolic permissions by octal permissions for module parameter (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix l1 stream table size in the error message (Jerry Snitselaar) [1955767] - ACPI: Do not create new NUMA domains from ACPI static tables that are not SRAT (Jerry Snitselaar) [1955767] - iommu/amd: Prevent NULL pointer dereference (Jerry Snitselaar) [1955767] - treewide: Use fallthrough pseudo-keyword (Jerry Snitselaar) [1955767] - virtio-iommu: convert to LE accessors (Jerry Snitselaar) [1955767] - virtio_iommu: correct tags for config space fields (Jerry Snitselaar) [1955767] - mmap locking API: use coccinelle to convert mmap_sem rwsem call sites (Jerry Snitselaar) [1955767] - iommu/iova: Unify format of the printed messages (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Move Arm SMMU drivers into their own subdirectory (Jerry Snitselaar) [1955767] - iommu/arm-smmu: move TLB timeout and spin count macros (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Call configuration impl hook before consuming features (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Manage ASIDs with xarray (Jerry Snitselaar) [1955767] - redhat/configs: Add CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Break insecure users by disabling bypass by default (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Workaround for Marvell Armada-AP806 SoC erratum #582743 (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Allow client devices to select direct mapping (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add global/context fault implementation hooks (Jerry Snitselaar) [1955767] - iommu/arm-smmu: add NVIDIA implementation for ARM MMU-500 usage (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix trivial typo (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Update impl quirks comment (Jerry Snitselaar) [1955767] - iommu: arm-smmu-impl: Convert to a generic reset implementation (Jerry Snitselaar) [1955767] - iommu: arm-smmu-impl: Add sdm845 implementation hook (Jerry Snitselaar) [1955767] - firmware/qcom_scm: Add scm call to handle smmu errata (Jerry Snitselaar) [1955767] - firmware: qcom_scm-64: Add atomic version of qcom_scm_call (Jerry Snitselaar) [1955767] - firmware: qcom: scm: Ensure 'a0' status code is treated as signed (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Batch context descriptor invalidation (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Write level-1 descriptors atomically (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for PCI PASID (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add second level of context descriptor table (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Prepare for handling arm_smmu_write_ctx_desc() failure (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Propagate ssid_bits (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for Substream IDs (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add context descriptor tables allocators (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Prepare arm_smmu_s1_cfg for SSID support (Jerry Snitselaar) [1955767] - dt-bindings: document PASID property for IOMMU masters (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Don't display an error when IRQ lines are missing (Jerry Snitselaar) [1955767] - selftests: net: add UDP GRO forwarding self-tests (Paolo Abeni) [1948493] - bareudp: allow UDP L4 GRO passthrou (Paolo Abeni) [1948493] - geneve: allow UDP L4 GRO passthrou (Paolo Abeni) [1948493] - vxlan: allow L4 GRO passthrough (Paolo Abeni) [1948493] - udp: never accept GSO_FRAGLIST packets (Paolo Abeni) [1948493] - udp: properly complete L4 GRO over UDP tunnel packet (Paolo Abeni) [1948493] - udp: skip L4 aggregation for UDP tunnel packets (Paolo Abeni) [1948493] - udp: fixup csum for GSO receive slow path (Paolo Abeni) [1948493] - udp: allow forwarding of plain (non-fraglisted) UDP GRO packets (Paolo Abeni) [1948493] - net: introduce a netdev feature for UDP GRO forwarding (Paolo Abeni) [1948493] - [s390] s390/pkey: support CCA and EP11 secure ECC private keys (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: Support for CCA APKA master keys (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: remove set_fs() invocation in zcrypt device driver (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: simplify cca_findcard2 loop code (Claudio Imbrenda) [1780669] - cxgb4: Add new T6 PCI device id 0x6092 (Rahul Lakkireddy) [1950186] - KVM: VMX: Don't use vcpu->run->internal.ndata as an array index (Jon Maloy) [1954219] {CVE-2021-3501} - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt() (Gopal Tiwari) [1978598] - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt() (Gopal Tiwari) [1978598] - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt() (Gopal Tiwari) [1978598] - x86/cpu: Avoid cpuinfo-induced IPIing of idle CPUs (Waiman Long) [1970499] - x86/cpu: Avoid cpuinfo-induced IPI pileups (Waiman Long) [1970499] - x86/cpu: Disable frequency requests via aperfmperf IPI for nohz_full CPUs (Waiman Long) [1970499] - x86: Convert some slow-path static_cpu_has() callers to boot_cpu_has() (Waiman Long) [1970499] - x86/ldt: Enable LDT user-mapping for PAE (Waiman Long) [1970499] - fanotify: fix merging marks masks with FAN_ONDIR (Miklos Szeredi) [1832099] - sfc: avoid duplicated code in ef10_sriov (Íñigo Huguet) [1931779] - sfc: explain that "attached" VFs only refer to Xen (Íñigo Huguet) [1931779] - sfc: error code if SRIOV cannot be disabled (Íñigo Huguet) [1931779] - sfc: avoid double pci_remove of VFs (Íñigo Huguet) [1931779] - tpm: fix error return code in tpm2_get_cc_attrs_tbl() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Reserve locality in tpm_tis_resume() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Extend locality handling to TPM2 in tpm_tis_gen_interrupt() (Jerry Snitselaar) [1920812] - tpm: vtpm_proxy: Avoid reading host log when using a virtual device (Jerry Snitselaar) [1920812] - tpm: acpi: Check eventlog signature before using it (Jerry Snitselaar) [1920812] - tpm: efi: Use local variable for calculating final log size (Jerry Snitselaar) [1920812] - tpm: Remove unintentional dump_stack() call (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Decorate tpm_tis_gen_interrupt() with request_locality() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Decorate tpm_get_timeouts() with request_locality() (Jerry Snitselaar) [1920812] - KEYS: trusted: Reserve TPM for seal and unseal operations (Jerry Snitselaar) [1920812] - tpm/ppi: Constify static struct attribute_group (Jerry Snitselaar) [1920812] - tpm: add sysfs exports for all banks of PCR registers (Jerry Snitselaar) [1920812] - tpm: Remove tpm_dev_wq_lock (Jerry Snitselaar) [1920812] - tpm: Fix fall-through warnings for Clang (Jerry Snitselaar) [1920812] - tpm_tis: Clean up locality release (Jerry Snitselaar) [1920812] - tpm_tis: Disable interrupts on ThinkPad T490s (Jerry Snitselaar) [1920812] - tpm_tis: Fix check_locality for correct locality acquisition (Jerry Snitselaar) [1920812] - fuse: invalidate attrs when page writeback completes (Vivek Goyal) [1966424] - net/sched: act_ct: remove rh_mark_used_feature mark (Marcelo Ricardo Leitner) [1973381] - selftests: netfilter: Pass family parameter "-f" to conntrack tool (Hangbin Liu) [1979203] - selftests: netfilter: remove unused cnt and simplify command testing (Hangbin Liu) [1979203] - selftests: netfilter: fix nft_meta.sh error reporting (Hangbin Liu) [1979203] - selftests: netfilter: add cpu counter check (Hangbin Liu) [1979203] - selftests: netfilter: add meta iif/oif match test (Hangbin Liu) [1979203] - NFS: Only change the cookie verifier if the directory page cache is empty (Benjamin Coddington) [1982825] - NFS: Fix handling of cookie verifier in uncached_readdir() (Benjamin Coddington) [1982825] - nfs: Subsequent READDIR calls should carry non-zero cookieverifier (Benjamin Coddington) [1982825] - Revert "[netdrv] net/mlx5e: Rx, Update page pool numa node when changed" (Alaa Hleihel) [1915308] - mlx5: net: zero-initialize tc skb extension on allocation (Alaa Hleihel) [1915308 1965418] - RDMA/mlx5: Don't add slave port to unaffiliated list (Alaa Hleihel) [1915308] - net/mlx5: Reset mkey index on creation (Alaa Hleihel) [1915308] - net/mlx5e: Don't create devices during unload flow (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix STEv1 incorrect L3 decapsulation padding (Alaa Hleihel) [1915308] - net/mlx5: SF_DEV, remove SF device on invalid state (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Allow setting GUID for host PF vport (Alaa Hleihel) [1915308 1967488] - net/mlx5: E-Switch, Read PF mac address (Alaa Hleihel) [1915308 1967488] - net/mlx5: Check that driver was probed prior attaching the device (Alaa Hleihel) [1915308] - net/mlx5: Fix error path for set HCA defaults (Alaa Hleihel) [1915308] - net/mlx5e: Disable TLS device offload in kdump mode (Alaa Hleihel) [1915308 1946647] - net/mlx5e: Disable TX MPWQE in kdump mode (Alaa Hleihel) [1915308 1946647] - net/mlx5e: kTLS, Add resiliency to RX resync failures (Alaa Hleihel) [1915308] - net/mlx5e: TX, Inline function mlx5e_tls_handle_tx_wqe() (Alaa Hleihel) [1915308] - net/mlx5e: TX, Inline TLS skb check (Alaa Hleihel) [1915308] - net/mlx5e: Cleanup unused function parameter (Alaa Hleihel) [1915308] - net/mlx5e: Remove non-essential TLS SQ state bit (Alaa Hleihel) [1915308] - net/mlx5e: Restrict usage of mlx5e_priv in params logic functions (Alaa Hleihel) [1915308] - net/mlx5e: Fix lost changes during code movements (Alaa Hleihel) [1915308] - net/mlx5e: Move params logic into its dedicated file (Alaa Hleihel) [1915308] - net/mlx5e: Pass q_counter indentifier as parameter to rq_param builders (Alaa Hleihel) [1915308] - net/mlx5e: Block offload of outer header csum for GRE tunnel (Alaa Hleihel) [1915308] - net/mlx5e: Block offload of outer header csum for UDP tunnels (Alaa Hleihel) [1915308] - Revert "net/mlx5: Arm only EQs with EQEs" (Alaa Hleihel) [1915308] - net/mlx5e: Verify dev is present in get devlink port ndo (Alaa Hleihel) [1915308] - net/mlx5: DR, Don't use SW steering when RoCE is not supported (Alaa Hleihel) [1915308] - net/mlx5: Consider RoCE cap before init RDMA resources (Alaa Hleihel) [1915308] - net/mlx5e: Fix page reclaim for dead peer hairpin (Alaa Hleihel) [1915308] - net/mlx5e: Remove dependency in IPsec initialization flows (Alaa Hleihel) [1915308] - net/mlx5e: Fix use-after-free of encap entry in neigh update handler (Alaa Hleihel) [1915308] - IB/mlx5: Fix initializing CQ fragments buffer (Alaa Hleihel) [1915308 1974263] - RDMA/mlx5: Block FDB rules when not in switchdev mode (Alaa Hleihel) [1915308] - RDMA/mlx5: Use different doorbell memory for different processes (Alaa Hleihel) [1915308] - net/mlx5: Fix duplicate included vhca_event.h (Alaa Hleihel) [1915308] - net/mlx5: Fix lag port remapping logic (Alaa Hleihel) [1915308] - net/mlx5e: IPsec/rep_tc: Fix rep_tc_update_skb drops IPsec packet (Alaa Hleihel) [1915308] - net/mlx5: DR, Create multi-destination flow table with level less than 64 (Alaa Hleihel) [1915308] - net/mlx5e: Fix adding encap rules to slow path (Alaa Hleihel) [1915308] - net/mlx5e: Check for needed capability for cvlan matching (Alaa Hleihel) [1915308] - net/mlx5: Check firmware sync reset requested is set before trying to abort it (Alaa Hleihel) [1915308] - net/mlx5e: Disable TLS offload for uplink representor (Alaa Hleihel) [1915308] - net/mlx5e: Fix incompatible casting (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix query DCT via DEVX (Alaa Hleihel) [1915308] - RDMA/mlx5: Recover from fatal event in dual port mode (Alaa Hleihel) [1915308] - net/mlx5: Set term table as an unmanaged flow table (Alaa Hleihel) [1915308] - net/mlx5e: Fix error path of updating netdev queues (Alaa Hleihel) [1915308] - net/mlx5e: Reject mirroring on source port change encap rules (Alaa Hleihel) [1915308] - net/mlx5e: Fix multipath lag activation (Alaa Hleihel) [1915308] - net/mlx5e: reset XPS on error flow if netdev isn't registered yet (Alaa Hleihel) [1915308] - net/mlx5e: Make sure fib dev exists in fib event (Alaa Hleihel) [1915308] - net/mlx5e: Fix null deref accessing lag dev (Alaa Hleihel) [1915308] - net/mlx5e: Fix nullptr in mlx5e_tc_add_fdb_flow() (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix show state inactive when its inactivated (Alaa Hleihel) [1915308] - net/mlx5: Set reformat action when needed for termination rules (Alaa Hleihel) [1915308] - net/mlx5e: Fix nullptr in add_vlan_push_action() (Alaa Hleihel) [1915308] - {net, RDMA}/mlx5: Fix override of log_max_qp by other device (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix SQ/RQ in doorbell bitmask (Alaa Hleihel) [1915308] - net/mlx5: Fix bit-wise and with zero (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix drop packet rule in egress table (Alaa Hleihel) [1915308] - net/mlx5: Fix spelling mistakes in mlx5_core_info message (Alaa Hleihel) [1915308] - net/mlx5: DR, Fixed typo in STE v0 (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix mlx5 rates to IB rates map (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix query RoCE port (Alaa Hleihel) [1915308] - RDMA/mlx5: Zero out ODP related items in the mlx5_ib_mr (Alaa Hleihel) [1915308] - net/mlx5e: Alloc flow spec using kvzalloc instead of kzalloc (Alaa Hleihel) [1915308] - net/mlx5: Avoid unnecessary operation (Alaa Hleihel) [1915308] - net/mlx5e: rep: Improve reg_cX conditions (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix return type (Alaa Hleihel) [1915308] - net/mlx5e: mlx5_tc_ct_init does not fail (Alaa Hleihel) [1915308] - net/mlx5: Fix indir stable stubs (Alaa Hleihel) [1915308] - net/mlx5e: Add missing include (Alaa Hleihel) [1915308] - net/mlx5e: fix mlx5e_tc_tun_update_header_ipv6 dummy definition (Alaa Hleihel) [1915308] - net/mlx5e: CT, Avoid false lock dependency warning (Alaa Hleihel) [1915308] - net/mlx5: Check returned value from health recover sequence (Alaa Hleihel) [1915308] - net/mlx5: Don't rely on interface state bit (Alaa Hleihel) [1915308] - net/mlx5: Remove second FW tracer check (Alaa Hleihel) [1915308] - net/mlx5: Separate probe vs. reload flows (Alaa Hleihel) [1915308] - net/mlx5: Remove impossible checks of interface state (Alaa Hleihel) [1915308] - net/mlx5: Don't skip vport check (Alaa Hleihel) [1915308] - net/mlx5e: Register nic devlink port for SF ports (Alaa Hleihel) [1915308] - vdpa/mlx5: Retrieve BAR address suitable any function (Alaa Hleihel) [1915308] - vdpa/mlx5: Use the correct dma device when registering memory (Alaa Hleihel) [1915308] - net/mlx5: SF, Extend SF table for additional SF id range (Alaa Hleihel) [1915308] - net/mlx5: SF, Split mlx5_sf_hw_table into two parts (Alaa Hleihel) [1915308] - net/mlx5: SF, Use helpers for allocation and free (Alaa Hleihel) [1915308] - net/mlx5: SF, Consider own vhca events of SF devices (Alaa Hleihel) [1915308] - net/mlx5: SF, Store and use start function id (Alaa Hleihel) [1915308] - net/mlx5: SF, Rely on hw table for SF devlink port allocation (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Consider SF ports of host PF (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Use xarray for vport number to vport and rep mapping (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Prepare to return total vports from eswitch struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Return eswitch max ports when eswitch is supported (Alaa Hleihel) [1915308] - net/mlx5: SF, Reuse stored hardware function id (Alaa Hleihel) [1915308] - net/mlx5: SF, Use device pointer directly (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Initialize eswitch acls ns when eswitch is enabled (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Move legacy code to a individual file (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Convert a macro to a helper routine (Alaa Hleihel) [1915308] - net/mlx5: E-Switch Make cleanup sequence mirror of init (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Make vport number u16 (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Skip querying SF enabled bits (Alaa Hleihel) [1915308] - IB/mlx5: Set right RoCE l3 type and roce version while deleting GID (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, move QoS specific fields to existing qos struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, cut down mlx5_vport_info structure size by 8 bytes (Alaa Hleihel) [1915308] - net/mlx5: Pair mutex_destory with mutex_init for rate limit table (Alaa Hleihel) [1915308] - net/mlx5: Allocate rate limit table when rate is configured (Alaa Hleihel) [1915308] - net/mlx5: Use helper to increment, decrement rate entry refcount (Alaa Hleihel) [1915308] - net/mlx5: Use helpers to allocate and free rl table entries (Alaa Hleihel) [1915308] - net/mlx5: Do not hold mutex while reading table constants (Alaa Hleihel) [1915308] - net/mlx5: Pack mlx5_rl_entry structure (Alaa Hleihel) [1915308] - net/mlx5: Use unsigned int for free_count (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, move QoS specific fields to existing qos struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, cut down mlx5_vport_info structure size by 8 bytes (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, let user to enable disable metadata (Alaa Hleihel) [1915308] - net/mlx5e: TC, Add support to offload sample action (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Handle sampled packets (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Refactor tc update skb function (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler restore handle API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler object API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler termination table API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Parse sample action (Alaa Hleihel) [1915308 1919649] - net/mlx5: Instantiate separate mapping objects for FDB and NIC tables (Alaa Hleihel) [1915308 1919649] - net/mlx5: Map register values to restore objects (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Set per vport table default group number (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Generalize per vport table API (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Rename functions to follow naming convention. (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Move vport table functions to a new file (Alaa Hleihel) [1915308 1919649] - net/mlx5: CT: Add support for mirroring (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Protect changing mode while adding rules (Alaa Hleihel) [1915308 1790457] - net/mlx5: E-Switch, Change mode lock from mutex to rw semaphore (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Do not reload ethernet ports when changing eswitch mode (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Unregister eth-reps devices first (Alaa Hleihel) [1915308 1790457] - net/mlx5: Move mlx5e hw resources into a sub object (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Register nic devlink port with switch id (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Verify dev is present in some ndos (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Use nic mode netdev ndos and ethtool ops for uplink representor (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Add offload stats ndos to nic netdev ops (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Distinguish nic and esw offload in tc setup block cb (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Allow legacy vf ndos only if in legacy mode (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Same max num channels for both nic and uplink profiles (Alaa Hleihel) [1915308 1790457] - net/mlx5e: fix ingress_ifindex check in mlx5e_flower_parse_meta (Alaa Hleihel) [1915308] - net/mlx5e: Fix setting of RS FEC mode (Alaa Hleihel) [1915308] - net/mlx5: Fix setting of devlink traps in switchdev mode (Alaa Hleihel) [1915308] - net/mlx5: DR, Add missing vhca_id consume from STEv1 (Alaa Hleihel) [1915308] - net/mlx5: fix kfree mismatch in indir_table.c (Alaa Hleihel) [1915308] - net/mlx5: Fix PBMC register mapping (Alaa Hleihel) [1915308] - net/mlx5: Fix PPLM register mapping (Alaa Hleihel) [1915308] - net/mlx5: Fix placement of log_max_flow_counter (Alaa Hleihel) [1915308] - net/mlx5: Fix HW spec violation configuring uplink (Alaa Hleihel) [1915308] - net/mlx5e: Guarantee room for XSK wakeup NOP on async ICOSQ (Alaa Hleihel) [1915308] - net/mlx5e: Consider geneve_opts for encap contexts (Alaa Hleihel) [1915308] - net/mlx5: Don't request more than supported EQs (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Fix RX counters atomicity (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Fix TX counters atomicity (Alaa Hleihel) [1915308] - net/mlx5: E-switch, Create vport miss group only if src rewrite is supported (Alaa Hleihel) [1915308 1915310] - net/mlx5e: Fix ethtool indication of connector type (Alaa Hleihel) [1915308] - net/mlx5: Delete auxiliary bus driver eth-rep first (Alaa Hleihel) [1915308] - net/mlx5e: Fix mapping of ct_label zero (Alaa Hleihel) [1915308] - net/mlx5: SF, do not use ecpu bit for vhca state processing (Alaa Hleihel) [1915308] - net/mlx5e: Fix division by 0 in mlx5e_select_queue (Alaa Hleihel) [1915308] - net/mlx5e: Fix error path for ethtool set-priv-flag (Alaa Hleihel) [1915308] - net/mlx5e: Offload tuple rewrite for non-CT flows (Alaa Hleihel) [1915308] - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP (Alaa Hleihel) [1915308] - net/mlx5: Add back multicast stats for uplink representor (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix typo in destroy_mkey inbox (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix potential shift wrapping of 32-bit value in STEv1 getter (Alaa Hleihel) [1915308] - net/mlx5: SF: Fix error flow of SFs allocation flow (Alaa Hleihel) [1915308] - net/mlx5: SF: Fix memory leak of work item (Alaa Hleihel) [1915308] - net/mlx5: SF, Correct vhca context size (Alaa Hleihel) [1915308] - net/mlx5e: E-switch, Fix rate calculation division (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix timestamp default mode (Alaa Hleihel) [1915308] - net/mlx5: Set QP timestamp mode to default (Alaa Hleihel) [1915308] - net/mlx5e: Fix error flow in change profile (Alaa Hleihel) [1915308] - net/mlx5: Disable VF tunnel TX offload if ignore_flow_level isn't supported (Alaa Hleihel) [1915308 1915310] - net/mlx5e: Check correct ip_version in decapsulation route resolution (Alaa Hleihel) [1915308] - net/mlx5: Fix turn-off PPS command (Alaa Hleihel) [1915308] - net/mlx5e: Don't match on Geneve options in case option masks are all zero (Alaa Hleihel) [1915308] - net/mlx5e: Revert parameters on errors when changing PTP state without reset (Alaa Hleihel) [1915308] - net/mlx5e: When changing XDP program without reset, take refs for XSK RQs (Alaa Hleihel) [1915308] - net/mlx5e: Set PTP channel pointer explicitly to NULL (Alaa Hleihel) [1915308] - net/mlx5e: Accumulate port PTP TX stats with other channels stats (Alaa Hleihel) [1915308] - net/mlx5e: RX, Mind the MPWQE gaps when calculating offsets (Alaa Hleihel) [1915308] - net/mlx5e: Enforce minimum value check for ICOSQ size (Alaa Hleihel) [1915308] - RDMA/mlx5: Set correct kernel-doc identifier (Alaa Hleihel) [1915308] - IB/mlx5: Add missing error code (Alaa Hleihel) [1915308] - configs: Enable mlx5 subfunction device support (Alaa Hleihel) [1915308 1851717] - net/mlx5: Add cyc2time HW translation mode support (Alaa Hleihel) [1915308 1919657] - net/mlx5: Move some PPS logic into helper functions (Alaa Hleihel) [1915308 1919657] - net/mlx5: Move all internal timer metadata into a dedicated struct (Alaa Hleihel) [1915308 1919657] - net/mlx5: Refactor init clock function (Alaa Hleihel) [1915308 1919657] - net/mlx5: Add register layout to support real-time time-stamp (Alaa Hleihel) [1915308 1919657] - RDMA/mlx5: Fail QP creation if the device can not support the CQE TS (Alaa Hleihel) [1915308] - RDMA/mlx5: Allow CQ creation without attached EQs (Alaa Hleihel) [1915308] - net/mlx5: Add new timestamp mode bits (Alaa Hleihel) [1915308 1919657] - net/mlx5: Remove TLS dependencies on XPS (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix error return code in mlx5_sf_dev_probe() (Alaa Hleihel) [1915308 1851717] - net/mlx5e: Fix error return code in mlx5e_tc_esw_init() (Alaa Hleihel) [1915308 1919647] - net/mlx5: Fix a NULL vs IS_ERR() check (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Fix tc_tun.h to verify MLX5_ESWITCH config (Alaa Hleihel) [1915308 1919647] - net/mlx5: Assign boolean values to a bool variable (Alaa Hleihel) [1915308] - net/mlx5e: Fix spelling mistake "Unknouwn" -> "Unknown" (Alaa Hleihel) [1915308] - net/mlx5e: Fix spelling mistake "channles" -> "channels" (Alaa Hleihel) [1915308] - net/mlx5: Delete device list leftover (Alaa Hleihel) [1915308] - net/mlx5_core: remove unused including (Alaa Hleihel) [1915308] - net/mlx5: fix spelling mistake in Kconfig "accelaration" -> "acceleration" (Alaa Hleihel) [1915308] - RDMA/mlx5: Support 400Gbps IB rate in mlx5 driver (Alaa Hleihel) [1915308] - RDMA/mlx5: Cleanup the synchronize_srcu() from the ODP flow (Alaa Hleihel) [1915308] - net/mlx5e: Handle FIB events to update tunnel endpoint device (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Rename some encap-specific API to generic names (Alaa Hleihel) [1915308 1919647] - net/mlx5e: TC preparation refactoring for routing update event (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Refactor neigh update infrastructure (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Create route entry infrastructure (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Extract tc tunnel encap/decap code to dedicated file (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Match recirculated packet miss in slow table using reg_c1 (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Refactor reg_c1 usage (Alaa Hleihel) [1915308 1919647] - net/mlx5e: VF tunnel RX traffic offloading (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Remove redundant match on tunnel destination mac (Alaa Hleihel) [1915308 1919647] - net/mlx5: E-Switch, Indirect table infrastructure (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Refactor tun routing helpers (Alaa Hleihel) [1915308 1919647] - net/mlx5e: VF tunnel TX traffic offloading (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5: E-Switch, Refactor rule offload forward action processing (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Always set attr mdev pointer (Alaa Hleihel) [1915308 1919647] - net/mlx5e: E-Switch, Maintain vhca_id to vport_num mapping (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5: E-Switch, Refactor setting source port (Alaa Hleihel) [1915308 1915310 1919647] - IB/mlx5: Use rdma_for_each_port for port iteration (Alaa Hleihel) [1915308] - RDMA/core: Introduce and use API to read port immutable data (Alaa Hleihel) [1915308] - IB/mlx5: Improve query port for representor port (Alaa Hleihel) [1915308] - IB/mlx5: Avoid calling query device for reading pkey table length (Alaa Hleihel) [1915308] - IB/mlx5: Move mlx5_port_caps from mlx5_core_dev to mlx5_ib_dev (Alaa Hleihel) [1915308] - IB/mlx5: Support default partition key for representor port (Alaa Hleihel) [1915308] - net/mlx5: DR, Avoid unnecessary csum recalculation on supporting devices (Alaa Hleihel) [1915308] - net/mlx5e: CT: remove useless conversion to PTR_ERR then ERR_PTR (Alaa Hleihel) [1915308] - net/mlx5e: accel, remove redundant space (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Improve TLS RX workqueue scope (Alaa Hleihel) [1915308] - net/mlx5e: remove h from printk format specifier (Alaa Hleihel) [1915308] - net/mlx5e: Increase indirection RQ table size to 256 (Alaa Hleihel) [1915308] - net/mlx5e: Enable napi in channel's activation stage (Alaa Hleihel) [1915308] - net/mlx5e: Move representor neigh init into profile enable (Alaa Hleihel) [1915308] - net/mlx5e: Avoid false lock depenency warning on tc_ht (Alaa Hleihel) [1915308] - net/mlx5e: Move set vxlan nic info to profile init (Alaa Hleihel) [1915308] - net/mlx5e: Move netif_carrier_off() out of mlx5e_priv_init() (Alaa Hleihel) [1915308] - net/mlx5e: Refactor mlx5e_netdev_init/cleanup to mlx5e_priv_init/cleanup (Alaa Hleihel) [1915308] - net/mxl5e: Add change profile method (Alaa Hleihel) [1915308] - net/mlx5e: Separate between netdev objects and mlx5e profiles initialization (Alaa Hleihel) [1915308] - net/mlx5: DR, Allow SW steering for sw_owner_v2 devices (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Copy all 64B whenever replacing STE in the head of miss-list (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Use HW specific logic API when writing STE (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Use the right size when writing partial STE into HW (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 modify header logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 action apply logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 setters and getters (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Allow native protocol support for HW STEv1 (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add HW STEv1 match logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add match STEv1 structs to ifc (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Fix potential shift wrapping of 32-bit value (Alaa Hleihel) [1915308 1851712] - net/mlx5e: Enable traps according to link state (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add listener to DMAC filter trap event (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add listener to trap event (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add trap entity to ETH driver (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Expose RX dma info helpers (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add flow steering DMAC trap rule (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add flow steering VLAN trap rule (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Optimize promiscuous mode (Alaa Hleihel) [1915308 1919652] - net/mlx5: Notify on trap action by blocking event (Alaa Hleihel) [1915308 1919652] - net/mlx5: Rename events notifier header (Alaa Hleihel) [1915308 1919652] - net/mlx5: Register to devlink DMAC filter trap (Alaa Hleihel) [1915308 1919652] - net/mlx5: Register to devlink ingress VLAN filter trap (Alaa Hleihel) [1915308 1919652] - net/mlx5: Add support for devlink traps in mlx5 core driver (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Support HTB offload (Alaa Hleihel) [1915308] - net/mlx5: SF, Port function state change support (Alaa Hleihel) [1915308 1851717] - net/mlx5: SF, Add port add delete functionality (Alaa Hleihel) [1915308 1851717] - net/mlx5: E-switch, Add eswitch helpers for SF vport (Alaa Hleihel) [1915308 1915310 1851717] - net/mlx5: E-switch, Prepare eswitch to handle SF vport (Alaa Hleihel) [1915308 1915310 1851717] - net/mlx5: SF, Add auxiliary device driver (Alaa Hleihel) [1915308 1851717] - net/mlx5: SF, Add auxiliary device support (Alaa Hleihel) [1915308 1851717] - net/mlx5: Introduce vhca state event notifier (Alaa Hleihel) [1915308 1851717] - RDMA/hw/mlx5/qp: Demote non-conformant kernel-doc header (Alaa Hleihel) [1915308] - RDMA/hw/mlx5/odp: Fix formatting and add missing descriptions in 'pagefault_data_segments()' (Alaa Hleihel) [1915308] - IB/mlx5: Make function static (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Remove unnecessary config flag usage (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Inline feature_check fast-path function (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Avoid unreachable return (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Enclose csum logic under ipsec config (Alaa Hleihel) [1915308] - net/mlx5e: CT: Remove redundant usage of zone mask (Alaa Hleihel) [1915308] - net/mlx5e: Remove redundant initialization to null (Alaa Hleihel) [1915308] - net/mlx5e: CT: Pass null instead of zero spec (Alaa Hleihel) [1915308] - net/mlx5e: E-Switch, Offload all chain 0 priorities when modify header and forward action is not supported (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, use new cap as condition for mpls over udp (Alaa Hleihel) [1915308] - net/mlx5e: Simplify condition on esw_vport_enable_qos() (Alaa Hleihel) [1915308] - net/mlx5: Add HW definition of reg_c_preserve (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 modify header logic (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE modify header actions per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 action apply logic (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE tx/rx actions per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 setters and getters (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE setters and getters per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move action apply logic to dr_ste (Alaa Hleihel) [1915308] - net/mlx5: DR, Refactor ICMP STE builder (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 look up types from mlx5_ifc_dr header (Alaa Hleihel) [1915308] - net/mlx5: DR, Merge similar DR STE SET macros (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix STEv0 source_eswitch_owner_vhca_id support (Alaa Hleihel) [1915308] - net/mlx5: DR, Remove unused macro definition from dr_ste (Alaa Hleihel) [1915308] - net/mlx5: DR, Move HW STEv0 match logic to a separate file (Alaa Hleihel) [1915308] - net/mlx5: DR, Use the new HW specific STE infrastructure (Alaa Hleihel) [1915308] - net/mlx5: DR, Move macros from dr_ste.c to header (Alaa Hleihel) [1915308] - net/mlx5: DR, Add infrastructure for supporting several steering formats (Alaa Hleihel) [1915308] - ext4: handle read only external journal device (Lukas Czerner) [1860929] - vfio/pci: Handle concurrent vma faults (Alex Williamson) [1976551] - vfio-pci: Use io_remap_pfn_range() for PCI IO memory (Alex Williamson) [1976551] - net: flow_dissector: Parse PTP L2 packet header (Ivan Vecera) [1971687] - net: vlan: Add parse protocol header ops (Ivan Vecera) [1971687] - PCI: hv: Remove bus device removal unused refcount/functions (Mohammed Gamal) [1982482] - PCI: hv: Fix a race condition when removing the device (Mohammed Gamal) [1982482] - RDMA/cxgb4: check for ipv6 address properly while destroying listener (Raju Rangoju) [1961313] - RDMA/cxgb4: Fix adapter LE hash errors while destroying ipv6 listening server (Raju Rangoju) [1961313] - RDMA: Convert sysfs device * show functions to use sysfs_emit() (Raju Rangoju) [1961313] - RDMA/iw_cxgb4: Disable delayed ack by default (Raju Rangoju) [1961313] - [infiniband] treewide: Remove uninitialized_var() usage (Raju Rangoju) [1961313] - RDMA/iw_cxgb4: cleanup device debugfs entries on ULD remove (Raju Rangoju) [1961313] - vfs: allow unprivileged whiteout creation (Miklos Szeredi) [1983608] - Documentation: kdump: update kdump guide (Baoquan He) [1938067] - docs: admin-guide: add kdump documentation into it (Baoquan He) [1938067] - docs: kdump: convert docs to ReST and rename to *.rst (Baoquan He) [1938067]- Revert "be2net: disable bh with spin_lock in be_process_mcc" (Petr Oros) [1973504] - nvmet-rdma: Fix NULL deref when SEND is completed with error (Gopal Tiwari) [1959856] - netfilter: nft_exthdr: Search chunks in SCTP packets only (Phil Sutter) [1868228] - netfilter: nft_exthdr: Fix for unsafe packet data read (Phil Sutter) [1868228] - netfilter: nft_exthdr: Support SCTP chunks (Phil Sutter) [1868228] - xfs: fix deadlock retry tracepoint arguments (Bill O'Donnell) [1937116] - xfs: fix xfs_reflink_unshare usage of filemap_write_and_wait_range (Bill O'Donnell) [1937116] - xfs: fix return of uninitialized value in variable error (Bill O'Donnell) [1937116] - xfs: fix scrub and remount-ro protection when running scrub (Bill O'Donnell) [1937116] - xfs: fix xfs_trans slab cache name (Bill O'Donnell) [1937116] - xfs: Fix a typo (Bill O'Donnell) [1937116] - xfs: Rudimentary spelling fix (Bill O'Donnell) [1937116] - xfs: Rudimentary typo fixes (Bill O'Donnell) [1937116] - xfs: fix dquot scrub loop cancellation (Bill O'Donnell) [1937116] - xfs: fix uninitialized variables in xrep_calc_ag_resblks (Bill O'Donnell) [1937116] - xfs: fix incorrect root dquot corruption error when switching group/project quota types (Bill O'Donnell) [1937116] - xfs: fix up build warnings when quotas are disabled (Bill O'Donnell) [1937116] - xfs: fix chown leaking delalloc quota blocks when fssetxattr fails (Bill O'Donnell) [1937116] - xfs: Fix assert failure in xfs_setattr_size() (Bill O'Donnell) [1937116] - xfs: fix an ABBA deadlock in xfs_rename (Bill O'Donnell) [1937116 1966609] - xfs: fix the forward progress assertion in xfs_iwalk_run_callbacks (Bill O'Donnell) [1937116] - xfs: fix parent pointer scrubber bailing out on unallocated inodes (Bill O'Donnell) [1937116] - xfs: revert "xfs: fix rmap key and record comparison functions" (Bill O'Donnell) [1937116] - xfs: don't allow NOWAIT DIO across extent boundaries (Bill O'Donnell) [1937116] - xfs: return corresponding errcode if xfs_initialize_perag() fail (Bill O'Donnell) [1937116] - xfs: ensure inobt record walks always make forward progress (Bill O'Donnell) [1937116] - xfs: fix forkoff miscalculation related to XFS_LITINO(mp) (Bill O'Donnell) [1937116] - xfs: directory scrub should check the null bestfree entries too (Bill O'Donnell) [1937116] - xfs: strengthen rmap record flags checking (Bill O'Donnell) [1937116] - xfs: fix the minrecs logic when dealing with inode root child blocks (Bill O'Donnell) [1937116] - xfs: fix a missing unlock on error in xfs_fs_map_blocks (Bill O'Donnell) [1937116] - xfs: fix brainos in the refcount scrubber's rmap fragment processor (Bill O'Donnell) [1937116] - xfs: fix rmap key and record comparison functions (Bill O'Donnell) [1937116] - xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents (Bill O'Donnell) [1937116] - xfs: fix flags argument to rmap lookup when converting shared file rmaps (Bill O'Donnell) [1937116] - xfs: only flush the unshared range in xfs_reflink_unshare (Bill O'Donnell) [1937116] - xfs: fix scrub flagging rtinherit even if there is no rt device (Bill O'Donnell) [1937116] - xfs: fix missing CoW blocks writeback conversion retry (Bill O'Donnell) [1937116] - xfs: set xefi_discard when creating a deferred agfl free log intent item (Bill O'Donnell) [1937116] - xfs: cancel intents immediately if process_intents fails (Bill O'Donnell) [1937116] - xfs: fix fallocate functions when rtextsize is larger than 1 (Bill O'Donnell) [1937116] - xfs: fix high key handling in the rt allocator's query_range function (Bill O'Donnell) [1937116] - xfs: annotate grabbing the realtime bitmap/summary locks in growfs (Bill O'Donnell) [1937116] - xfs: make xfs_growfs_rt update secondary superblocks (Bill O'Donnell) [1937116] - xfs: fix realtime bitmap/summary file truncation when growing rt volume (Bill O'Donnell) [1937116] - xfs: fix the indent in xfs_trans_mod_dquot (Bill O'Donnell) [1937116] - xfs: do the ASSERT for the arguments O_{u,g,p}dqpp (Bill O'Donnell) [1937116] - xfs: fix deadlock and streamline xfs_getfsmap performance (Bill O'Donnell) [1937116] - xfs: limit entries returned when counting fsmap records (Bill O'Donnell) [1937116] - xfs: only relog deferred intent items if free space in the log gets low (Bill O'Donnell) [1937116] - xfs: expose the log push threshold (Bill O'Donnell) [1937116] - xfs: periodically relog deferred intent items (Bill O'Donnell) [1937116] - xfs: change the order in which child and parent defer ops are finished (Bill O'Donnell) [1937116] - xfs: fix an incore inode UAF in xfs_bui_recover (Bill O'Donnell) [1937116] - xfs: clean up xfs_bui_item_recover iget/trans_alloc/ilock ordering (Bill O'Donnell) [1937116] - xfs: clean up bmap intent item recovery checking (Bill O'Donnell) [1937116] - xfs: xfs_defer_capture should absorb remaining transaction reservation (Bill O'Donnell) [1937116] - xfs: xfs_defer_capture should absorb remaining block reservations (Bill O'Donnell) [1937116] - xfs: proper replay of deferred ops queued during log recovery (Bill O'Donnell) [1937116] - xfs: remove XFS_LI_RECOVERED (Bill O'Donnell) [1937116] - xfs: remove xfs_defer_reset (Bill O'Donnell) [1937116] - xfs: fix finobt btree block recovery ordering (Bill O'Donnell) [1937116] - xfs: directly call xfs_generic_create() for ->create() and ->mkdir() (Bill O'Donnell) [1937116] - xfs: avoid shared rmap operations for attr fork extents (Bill O'Donnell) [1937116] - xfs: drop the obsolete comment on filestream locking (Bill O'Donnell) [1937116] - xfs: code cleanup in xfs_attr_leaf_entsize_{remote,local} (Bill O'Donnell) [1937116] - xfs: do the assert for all the log done items in xfs_trans_cancel (Bill O'Donnell) [1937116] - xfs: remove the unused parameter id from xfs_qm_dqattach_one (Bill O'Donnell) [1937116] - xfs: remove the redundant crc feature check in xfs_attr3_rmt_verify (Bill O'Donnell) [1937116] - xfs: fix some comments (Bill O'Donnell) [1937116] - xfs: remove the unnecessary xfs_dqid_t type cast (Bill O'Donnell) [1937116] - xfs: use the existing type definition for di_projid (Bill O'Donnell) [1937116] - xfs: remove the unused SYNCHRONIZE macro (Bill O'Donnell) [1937116] - xfs: clean up calculation of LR header blocks (Bill O'Donnell) [1937116] - xfs: avoid LR buffer overrun due to crafted h_len (Bill O'Donnell) [1937116] - xfs: don't release log intent items when recovery fails (Bill O'Donnell) [1937116] - xfs: attach inode to dquot in xfs_bui_item_recover (Bill O'Donnell) [1937116] - xfs: log new intent items created as part of finishing recovered intent items (Bill O'Donnell) [1937116] - xfs: check dabtree node hash values when loading child blocks (Bill O'Donnell) [1937116] - xfs: don't free rt blocks when we're doing a REMAP bunmapi call (Bill O'Donnell) [1937116] - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files (Bill O'Donnell) [1937116] - xfs: Set xfs_buf type flag when growing summary/bitmap files (Bill O'Donnell) [1937116] - xfs: drop extra transaction roll from inode extent truncate (Bill O'Donnell) [1937116] - xfs: don't propagate RTINHERIT -> REALTIME when there is no rtdev (Bill O'Donnell) [1937116] - xfs: ensure that fpunch, fcollapse, and finsert operations are aligned to rt extent size (Bill O'Donnell) [1937116] - xfs: refactor inode flags propagation code (Bill O'Donnell) [1937116] - xfs: make sure the rt allocator doesn't run off the end (Bill O'Donnell) [1937116] - xfs: Remove unneeded semicolon (Bill O'Donnell) [1937116] - xfs: force the log after remapping a synchronous-writes file (Bill O'Donnell) [1937116] - xfs: Convert xfs_attr_sf macros to inline functions (Bill O'Donnell) [1937116] - xfs: Use variable-size array for nameval in xfs_attr_sf_entry (Bill O'Donnell) [1937116] - xfs: Remove typedef xfs_attr_shortform_t (Bill O'Donnell) [1937116] - xfs: remove typedef xfs_attr_sf_entry_t (Bill O'Donnell) [1937116] - xfs: Remove kmem_zalloc_large() (Bill O'Donnell) [1937116] - xfs: enable big timestamps (Bill O'Donnell) [1937116] - xfs: trace timestamp limits (Bill O'Donnell) [1937116] - xfs: widen ondisk quota expiration timestamps to handle y2038+ (Bill O'Donnell) [1937116] - xfs: widen ondisk inode timestamps to deal with y2038+ (Bill O'Donnell) [1937116] - xfs: redefine xfs_ictimestamp_t (Bill O'Donnell) [1937116] - xfs: redefine xfs_timestamp_t (Bill O'Donnell) [1937116] - xfs: move xfs_log_dinode_to_disk to the log recovery code (Bill O'Donnell) [1937116] - xfs: refactor quota timestamp coding (Bill O'Donnell) [1937116] - xfs: refactor default quota grace period setting code (Bill O'Donnell) [1937116] - xfs: refactor quota expiration timer modification (Bill O'Donnell) [1937116] - xfs: explicitly define inode timestamp range (Bill O'Donnell) [1937116] - xfs: enable new inode btree counters feature (Bill O'Donnell) [1937116] - xfs: support inode btree blockcounts in online repair (Bill O'Donnell) [1937116] - xfs: support inode btree blockcounts in online scrub (Bill O'Donnell) [1937116] - xfs: use the finobt block counts to speed up mount times (Bill O'Donnell) [1937116] - xfs: store inode btree block counts in AGI header (Bill O'Donnell) [1937116] - xfs: reuse _xfs_buf_read for re-reading the superblock (Bill O'Donnell) [1937116] - xfs: remove xfs_getsb (Bill O'Donnell) [1937116] - xfs: simplify xfs_trans_getsb (Bill O'Donnell) [1937116] - xfs: remove xlog_recover_iodone (Bill O'Donnell) [1937116] - xfs: clear the read/write flags later in xfs_buf_ioend (Bill O'Donnell) [1937116] - xfs: use xfs_buf_item_relse in xfs_buf_item_done (Bill O'Donnell) [1937116] - xfs: simplify the xfs_buf_ioend_disposition calling convention (Bill O'Donnell) [1937116] - xfs: lift the XBF_IOEND_FAIL handling into xfs_buf_ioend_disposition (Bill O'Donnell) [1937116] - xfs: remove xfs_buf_ioerror_retry (Bill O'Donnell) [1937116] - xfs: refactor xfs_buf_ioerror_fail_without_retry (Bill O'Donnell) [1937116] - xfs: fold xfs_buf_ioend_finish into xfs_ioend (Bill O'Donnell) [1937116] - xfs: move the buffer retry logic to xfs_buf.c (Bill O'Donnell) [1937116] - xfs: refactor xfs_buf_ioend (Bill O'Donnell) [1937116] - xfs: mark xfs_buf_ioend static (Bill O'Donnell) [1937116] - xfs: refactor the buf ioend disposition code (Bill O'Donnell) [1937116] - xfs: xfs_iflock is no longer a completion (Bill O'Donnell) [1937116] - xfs: remove kmem_realloc() (Bill O'Donnell) [1937116] - xfs: don't update mtime on COW faults (Bill O'Donnell) [1937116] - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files (Bill O'Donnell) [1937116] - xfs: initialize the shortform attr header padding entry (Bill O'Donnell) [1937116] - xfs: fix off-by-one in inode alloc block reservation calculation (Bill O'Donnell) [1937116] - xfs: finish dfops on every insert range shift iteration (Bill O'Donnell) [1937116] - xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init (Bill O'Donnell) [1937116] - xfs: delete duplicated words + other fixes (Bill O'Donnell) [1937116] - xfs: Lift -ENOSPC handler from xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Simplify xfs_attr_node_addname (Bill O'Donnell) [1937116] - xfs: Simplify xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_removename_rmt (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_removename_setup (Bill O'Donnell) [1937116] - xfs: Add remote block helper functions (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_leaf_mark_incomplete (Bill O'Donnell) [1937116] - xfs: Add helpers xfs_attr_is_shortform and xfs_attr_set_shortform (Bill O'Donnell) [1937116] - xfs: Remove xfs_trans_roll in xfs_attr_node_removename (Bill O'Donnell) [1937116] - xfs: Remove unneeded xfs_trans_roll_inode calls (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_shrink (Bill O'Donnell) [1937116] - xfs: Pull up xfs_attr_rmtval_invalidate (Bill O'Donnell) [1937116] - xfs: Refactor xfs_attr_rmtval_remove (Bill O'Donnell) [1937116] - xfs: Pull up trans roll in xfs_attr3_leaf_clearflag (Bill O'Donnell) [1937116] - xfs: Factor out xfs_attr_rmtval_invalidate (Bill O'Donnell) [1937116] - xfs: Pull up trans roll from xfs_attr3_leaf_setflag (Bill O'Donnell) [1937116] - xfs: Refactor xfs_attr_try_sf_addname (Bill O'Donnell) [1937116] - xfs: Split apart xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Pull up trans handling in xfs_attr3_leaf_flipflags (Bill O'Donnell) [1937116] - xfs: Factor out new helper functions xfs_attr_rmtval_set (Bill O'Donnell) [1937116] - xfs: Check for -ENOATTR or -EEXIST (Bill O'Donnell) [1937116] - xfs: Add xfs_has_attr and subroutines (Bill O'Donnell) [1937116] - xfs: Refactor xfs_da_state_alloc() helper (Bill O'Donnell) [1937116] - xfs: remove xfs_zone_{alloc,zalloc} helpers (Bill O'Donnell) [1937116] - xfs: Modify xlog_ticket_alloc() to use kernel's MM API (Bill O'Donnell) [1937116] - xfs: Remove kmem_zone_zalloc() usage (Bill O'Donnell) [1937116] - xfs: Remove kmem_zone_alloc() usage (Bill O'Donnell) [1937116] - xfs: xfs_btree_staging.h: delete duplicated words (Bill O'Donnell) [1937116] - xfs: rename the ondisk dquot d_flags to d_type (Bill O'Donnell) [1937116] - xfs: improve ondisk dquot flags checking (Bill O'Donnell) [1937116] - xfs: create xfs_dqtype_t to represent quota types (Bill O'Donnell) [1937116] - xfs: replace a few open-coded XFS_DQTYPE_REC_MASK uses (Bill O'Donnell) [1937116] - xfs: remove unnecessary quota type masking (Bill O'Donnell) [1937116] - xfs: always use xfs_dquot_type when extracting type from a dquot (Bill O'Donnell) [1937116] - xfs: refactor quota type testing (Bill O'Donnell) [1937116] - xfs: remove the XFS_QM_IS[UGP]DQ macros (Bill O'Donnell) [1937116] - xfs: refactor testing if a particular dquot is being enforced (Bill O'Donnell) [1937116] - xfs: rename XFS_DQ_{USER,GROUP,PROJ} to XFS_DQTYPE_* (Bill O'Donnell) [1937116] - xfs: drop the type parameter from xfs_dquot_verify (Bill O'Donnell) [1937116] - xfs: add more dquot tracepoints (Bill O'Donnell) [1937116] - xfs: actually bump warning counts when we send warnings (Bill O'Donnell) [1937116] - xfs: assume the default quota limits are always set in xfs_qm_adjust_dqlimits (Bill O'Donnell) [1937116] - xfs: refactor xfs_trans_apply_dquot_deltas (Bill O'Donnell) [1937116] - xfs: refactor xfs_trans_dqresv (Bill O'Donnell) [1937116] - xfs: refactor xfs_qm_scall_setqlim (Bill O'Donnell) [1937116] - xfs: refactor quota exceeded test (Bill O'Donnell) [1937116] - xfs: remove unnecessary arguments from quota adjust functions (Bill O'Donnell) [1937116] - xfs: refactor default quota limits by resource (Bill O'Donnell) [1937116] - xfs: remove qcore from incore dquots (Bill O'Donnell) [1937116] - xfs: stop using q_core timers in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core warning counters in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core counters in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core limits in the quota code (Bill O'Donnell) [1937116] - xfs: use a per-resource struct for incore dquot data (Bill O'Donnell) [1937116] - xfs: stop using q_core.d_id in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core.d_flags in the quota code (Bill O'Donnell) [1937116] - xfs: make XFS_DQUOT_CLUSTER_SIZE_FSB part of the ondisk format (Bill O'Donnell) [1937116] - xfs: rename dquot incore state flags (Bill O'Donnell) [1937116] - xfs: refactor quotacheck flags usage (Bill O'Donnell) [1937116] - xfs: move the flags argument of xfs_qm_scall_trunc_qfiles to XFS_QMOPT_* (Bill O'Donnell) [1937116] - xfs: validate ondisk/incore dquot flags (Bill O'Donnell) [1937116] - xfs: fix inode quota reservation checks (Bill O'Donnell) [1937116] - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush (Bill O'Donnell) [1937116] - xfs: drain the buf delwri queue before xfsaild idles (Bill O'Donnell) [1937116] - xfs: remove duplicated include from xfs_buf_item.c (Bill O'Donnell) [1937116] - xfs: remove SYNC_WAIT and SYNC_TRYLOCK (Bill O'Donnell) [1937116] - xfs: get rid of unnecessary xfs_perag_{get,put} pairs (Bill O'Donnell) [1937116] - xfs: rtbitmap scrubber should check inode size (Bill O'Donnell) [1937116] - xfs: rtbitmap scrubber should verify written extents (Bill O'Donnell) [1937116] - xfs: remove xfs_inobp_check() (Bill O'Donnell) [1937116] - xfs: factor xfs_iflush_done (Bill O'Donnell) [1937116] - xfs: rework xfs_iflush_cluster() dirty inode iteration (Bill O'Donnell) [1937116] - xfs: rename xfs_iflush_int() (Bill O'Donnell) [1937116] - xfs: xfs_iflush() is no longer necessary (Bill O'Donnell) [1937116] - xfs: attach inodes to the cluster buffer when dirtied (Bill O'Donnell) [1937116] - xfs: rework stale inodes in xfs_ifree_cluster (Bill O'Donnell) [1937116] - xfs: clean up inode reclaim comments (Bill O'Donnell) [1937116] - xfs: remove SYNC_WAIT from xfs_reclaim_inodes() (Bill O'Donnell) [1937116] - xfs: remove SYNC_TRYLOCK from inode reclaim (Bill O'Donnell) [1937116] - xfs: don't block inode reclaim on the ILOCK (Bill O'Donnell) [1937116] - xfs: allow multiple reclaimers per AG (Bill O'Donnell) [1937116] - xfs: remove IO submission from xfs_reclaim_inode() (Bill O'Donnell) [1937116] - xfs: make inode reclaim almost non-blocking (Bill O'Donnell) [1937116] - xfs: pin inode backing buffer to the inode log item (Bill O'Donnell) [1937116] - xfs: move xfs_clear_li_failed out of xfs_ail_delete_one() (Bill O'Donnell) [1937116] - xfs: unwind log item error flagging (Bill O'Donnell) [1937116] - xfs: handle buffer log item IO errors directly (Bill O'Donnell) [1937116] - xfs: get rid of log item callbacks (Bill O'Donnell) [1937116] - xfs: clean up the buffer iodone callback functions (Bill O'Donnell) [1937116] - xfs: use direct calls for dquot IO completion (Bill O'Donnell) [1937116] - xfs: make inode IO completion buffer centric (Bill O'Donnell) [1937116] - xfs: clean up whacky buffer log item list reinit (Bill O'Donnell) [1937116] - xfs: call xfs_buf_iodone directly (Bill O'Donnell) [1937116] - xfs: mark log recovery buffers for completion (Bill O'Donnell) [1937116] - xfs: mark dquot buffers in cache (Bill O'Donnell) [1937116] - xfs: mark inode buffers in cache (Bill O'Donnell) [1937116] - xfs: add an inode item lock (Bill O'Donnell) [1937116] - xfs: remove logged flag from inode log item (Bill O'Donnell) [1937116] - xfs: Don't allow logging of XFS_ISTALE inodes (Bill O'Donnell) [1937116] - xfs: remove useless definitions in xfs_linux.h (Bill O'Donnell) [1937116] - xfs: use MMAPLOCK around filemap_map_pages() (Bill O'Donnell) [1937116] - xfs: move helpers that lock and unlock two inodes against userspace IO (Bill O'Donnell) [1937116] - xfs: refactor locking and unlocking two inodes against userspace IO (Bill O'Donnell) [1937116] - xfs: fix xfs_reflink_remap_prep calling conventions (Bill O'Donnell) [1937116] - xfs: reflink can skip remap existing mappings (Bill O'Donnell) [1937116] - xfs: only reserve quota blocks if we're mapping into a hole (Bill O'Donnell) [1937116] - xfs: only reserve quota blocks for bmbt changes if we're changing the data fork (Bill O'Donnell) [1937116] - xfs: redesign the reflink remap loop to fix blkres depletion crash (Bill O'Donnell) [1937116] - xfs: rename xfs_bmap_is_real_extent to is_written_extent (Bill O'Donnell) [1937116] - xfs: Couple of typo fixes in comments (Bill O'Donnell) [1937116] - xfs: fix use-after-free on CIL context on shutdown (Bill O'Donnell) [1937116] - xfs: flag files as supporting buffered async reads (Bill O'Donnell) [1937116] - fs: add FMODE_BUF_RASYNC (Bill O'Donnell) [1937116] - xfs: more lockdep whackamole with kmem_alloc* (Bill O'Donnell) [1937116 1965923] - xfs: rearrange xfs_inode_walk_ag parameters (Bill O'Donnell) [1937116] - xfs: straighten out all the naming around incore inode tree walks (Bill O'Donnell) [1937116] - xfs: move xfs_inode_ag_iterator to be closer to the perag walking code (Bill O'Donnell) [1937116] - xfs: use bool for done in xfs_inode_ag_walk (Bill O'Donnell) [1937116] - xfs: fix inode ag walk predicate function return values (Bill O'Donnell) [1937116] - xfs: refactor eofb matching into a single helper (Bill O'Donnell) [1937116] - xfs: remove __xfs_icache_free_eofblocks (Bill O'Donnell) [1937116] - xfs: remove flags argument from xfs_inode_ag_walk (Bill O'Donnell) [1937116] - xfs: remove xfs_inode_ag_iterator_flags (Bill O'Donnell) [1937116] - xfs: remove unused xfs_inode_ag_iterator function (Bill O'Donnell) [1937116] - xfs: replace open-coded XFS_ICI_NO_TAG (Bill O'Donnell) [1937116] - xfs: move eofblocks conversion function to xfs_ioctl.c (Bill O'Donnell) [1937116] - xfs: remove the m_active_trans counter (Bill O'Donnell) [1937116] - xfs: separate read-only variables in struct xfs_mount (Bill O'Donnell) [1937116] - xfs: reduce free inode accounting overhead (Bill O'Donnell) [1937116] - xfs: gut error handling in xfs_trans_unreserve_and_mod_sb() (Bill O'Donnell) [1937116] - xfs: cleanup xfs_idestroy_fork (Bill O'Donnell) [1937116] - xfs: move the fork format fields into struct xfs_ifork (Bill O'Donnell) [1937116] - xfs: move the per-fork nextents fields into struct xfs_ifork (Bill O'Donnell) [1937116] - xfs: remove xfs_ifree_local_data (Bill O'Donnell) [1937116] - xfs: remove the XFS_DFORK_Q macro (Bill O'Donnell) [1937116] - xfs: clean up xchk_bmap_check_rmaps usage of XFS_IFORK_Q (Bill O'Donnell) [1937116] - xfs: remove the NULL fork handling in xfs_bmapi_read (Bill O'Donnell) [1937116] - xfs: remove the special COW fork handling in xfs_bmapi_read (Bill O'Donnell) [1937116] - xfs: improve local fork verification (Bill O'Donnell) [1937116] - xfs: refactor xfs_inode_verify_forks (Bill O'Donnell) [1937116] - xfs: remove xfs_ifork_ops (Bill O'Donnell) [1937116] - xfs: remove xfs_iread (Bill O'Donnell) [1937116] - xfs: don't reset i_delayed_blks in xfs_iread (Bill O'Donnell) [1937116] - xfs: call xfs_dinode_verify from xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: handle unallocated inodes in xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: split xfs_iformat_fork (Bill O'Donnell) [1937116] - xfs: call xfs_iformat_fork from xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: xfs_bmapi_read doesn't take a fork id as the last argument (Bill O'Donnell) [1937116] - xfs: fix the warning message in xfs_validate_sb_common() (Bill O'Donnell) [1937116] - xfs: don't allow SWAPEXT if we'd screw up quota accounting (Bill O'Donnell) [1937116] - xfs: use ordered buffers to initialize dquot buffers during quotacheck (Bill O'Donnell) [1937116] - xfs: don't fail verifier on empty attr3 leaf block (Bill O'Donnell) [1937116] - xfs: Use the correct style for SPDX License Identifier (Bill O'Donnell) [1937116] - xfs: Replace zero-length array with flexible-array (Bill O'Donnell) [1937116] - xfs: ensure f_bfree returned by statfs() is non-negative (Bill O'Donnell) [1937116] - xfs: remove duplicate headers (Bill O'Donnell) [1937116] - xfs: fix unused variable warning in buffer completion on !DEBUG (Bill O'Donnell) [1937116] - xfs: remove unnecessary includes from xfs_log_recover.c (Bill O'Donnell) [1937116] - xfs: move log recovery buffer cancellation code to xfs_buf_item_recover.c (Bill O'Donnell) [1937116] - xfs: hoist setting of XFS_LI_RECOVERED to caller (Bill O'Donnell) [1937116] - xfs: refactor intent item iop_recover calls (Bill O'Donnell) [1937116] - xfs: refactor intent item RECOVERED flag into the log item (Bill O'Donnell) [1937116] - xfs: refactor adding recovered intent items to the log (Bill O'Donnell) [1937116] - xfs: refactor releasing finished intents during log recovery (Bill O'Donnell) [1937116] - xfs: refactor xlog_item_is_intent now that we're done converting (Bill O'Donnell) [1937116] - xfs: refactor recovered BUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered CUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered RUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered EFI log item playback (Bill O'Donnell) [1937116] - xfs: remove log recovery quotaoff item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery BUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery CUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery RUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery EFI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery icreate item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery dquot item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery inode item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery buffer item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item dispatch for pass1 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item dispatch for pass2 readhead functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item sorting into a generic dispatch structure (Bill O'Donnell) [1937116] - xfs: convert xfs_log_recover_item_t to struct xfs_log_recover_item (Bill O'Donnell) [1937116] - xfs: remove unused iget_flags param from xfs_imap_to_bp() (Bill O'Donnell) [1937116] - xfs: remove unused shutdown types (Bill O'Donnell) [1937116] - xfs: random buffer write failure errortag (Bill O'Donnell) [1937116] - xfs: remove unused iflush stale parameter (Bill O'Donnell) [1937116] - xfs: combine xfs_trans_ail_[remove|delete]() (Bill O'Donnell) [1937116] - xfs: drop unused shutdown parameter from xfs_trans_ail_remove() (Bill O'Donnell) [1937116] - xfs: use delete helper for items expected to be in AIL (Bill O'Donnell) [1937116] - xfs: acquire ->ail_lock from xfs_trans_ail_delete() (Bill O'Donnell) [1937116] - xfs: abort consistently on dquot flush failure (Bill O'Donnell) [1937116] - xfs: ratelimit unmount time per-buffer I/O error alert (Bill O'Donnell) [1937116] - xfs: refactor ratelimited buffer error messages into helper (Bill O'Donnell) [1937116] - xfs: reset buffer write failure state on successful completion (Bill O'Donnell) [1937116] - xfs: remove unnecessary shutdown check from xfs_iflush() (Bill O'Donnell) [1937116] - xfs: simplify inode flush error handling (Bill O'Donnell) [1937116] - xfs: factor out buffer I/O failure code (Bill O'Donnell) [1937116] - xfs: refactor failed buffer resubmission into xfsaild (Bill O'Donnell) [1937116] - xfs: spell out the parameter name for ->cancel_item (Bill O'Donnell) [1937116] - xfs: use a xfs_btree_cur for the ->finish_cleanup state (Bill O'Donnell) [1937116] - xfs: turn dfp_done into a xfs_log_item (Bill O'Donnell) [1937116] - xfs: refactor xfs_defer_finish_noroll (Bill O'Donnell) [1937116] - xfs: turn dfp_intent into a xfs_log_item (Bill O'Donnell) [1937116] - xfs: merge the ->diff_items defer op into ->create_intent (Bill O'Donnell) [1937116] - xfs: merge the ->log_item defer op into ->create_intent (Bill O'Donnell) [1937116] - xfs: factor out a xfs_defer_create_intent helper (Bill O'Donnell) [1937116] - xfs: remove the xfs_inode_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: remove the xfs_efd_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: remove the xfs_efi_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: refactor xlog_recover_buffer_pass1 (Bill O'Donnell) [1937116] - xfs: simplify xlog_recover_inode_ra_pass2 (Bill O'Donnell) [1937116] - xfs: factor out a xlog_buf_readahead helper (Bill O'Donnell) [1937116] - xfs: rename inode_list xlog_recover_reorder_trans (Bill O'Donnell) [1937116] - xfs: refactor the buffer cancellation table helpers (Bill O'Donnell) [1937116] - xfs: define printk_once variants for xfs messages (Bill O'Donnell) [1937116] - xfs: stop CONFIG_XFS_DEBUG from changing compiler flags (Bill O'Donnell) [1937116] - xfs: remove unnecessary check of the variable resblks in xfs_symlink (Bill O'Donnell) [1937116] - xfs: simplify the flags setting in xfs_qm_scall_quotaon (Bill O'Donnell) [1937116] - xfs: remove unnecessary assertion from xfs_qm_vop_create_dqattach (Bill O'Donnell) [1937116] - xfs: remove unnecessary variable udqp from xfs_ioctl_setattr (Bill O'Donnell) [1937116] - xfs: reserve quota inode transaction space only when needed (Bill O'Donnell) [1937116] - xfs: combine two if statements with same condition (Bill O'Donnell) [1937116] - xfs: trace quota allocations for all quota types (Bill O'Donnell) [1937116] - xfs: report unrecognized log item type codes during recovery (Bill O'Donnell) [1937116] - xfs: move inode flush to the sync workqueue (Bill O'Donnell) [1937116] - xfs: fix partially uninitialized structure in xfs_reflink_remap_extent (Bill O'Donnell) [1937116] - xfs: fix inode number overflow in ifree cluster helper (Bill O'Donnell) [1937116] - xfs: remove redundant variable assignment in xfs_symlink() (Bill O'Donnell) [1937116] - xfs: ratelimit inode flush on buffered write ENOSPC (Bill O'Donnell) [1937116] - xfs: return locked status of inode buffer on xfsaild push (Bill O'Donnell) [1937116] - xfs: trylock underlying buffer on dquot flush (Bill O'Donnell) [1937116] - xfs: remove unnecessary ternary from xfs_create (Bill O'Donnell) [1937116] - xfs: don't write a corrupt unmount record to force summary counter recalc (Bill O'Donnell) [1937116] - xfs: factor inode lookup from xfs_ifree_cluster (Bill O'Donnell) [1937116] - xfs: tail updates only need to occur when LSN changes (Bill O'Donnell) [1937116] - xfs: factor common AIL item deletion code (Bill O'Donnell) [1937116] - xfs: correctly acount for reclaimable slabs (Bill O'Donnell) [1937116] - xfs: Improve metadata buffer reclaim accountability (Bill O'Donnell) [1937116] - xfs: don't allow log IO to be throttled (Bill O'Donnell) [1937116] - xfs: Throttle commits on delayed background CIL push (Bill O'Donnell) [1937116] - xfs: Lower CIL flush limit for large logs (Bill O'Donnell) [1937116] - xfs: remove some stale comments from the log code (Bill O'Donnell) [1937116] - xfs: refactor unmount record writing (Bill O'Donnell) [1937116] - xfs: merge xlog_commit_record with xlog_write_done (Bill O'Donnell) [1937116] - xfs: split xlog_ticket_done (Bill O'Donnell) [1937116] - xfs: kill XLOG_TIC_INITED (Bill O'Donnell) [1937116] - xfs: refactor and split xfs_log_done() (Bill O'Donnell) [1937116] - xfs: re-order initial space accounting checks in xlog_write (Bill O'Donnell) [1937116] - xfs: don't try to write a start record into every iclog (Bill O'Donnell) [1937116] - xfs: validate the realtime geometry in xfs_validate_sb_common (Bill O'Donnell) [1937116] - xfs: shutdown on failure to add page to log bio (Bill O'Donnell) [1937116] - xfs: directory bestfree check should release buffers (Bill O'Donnell) [1937116] - xfs: drop all altpath buffers at the end of the sibling check (Bill O'Donnell) [1937116] - xfs: remove xlog_state_want_sync (Bill O'Donnell) [1937116] - xfs: move the ioerror check out of xlog_state_clean_iclog (Bill O'Donnell) [1937116] - xfs: refactor xlog_state_clean_iclog (Bill O'Donnell) [1937116] - xfs: remove the aborted parameter to xlog_state_done_syncing (Bill O'Donnell) [1937116] - xfs: simplify log shutdown checking in xfs_log_release_iclog (Bill O'Donnell) [1937116] - xfs: simplify the xfs_log_release_iclog calling convention (Bill O'Donnell) [1937116] - xfs: factor out a xlog_wait_on_iclog helper (Bill O'Donnell) [1937116] - xfs: merge xlog_cil_push into xlog_cil_push_work (Bill O'Donnell) [1937116] - xfs: remove the di_version field from struct icdinode (Bill O'Donnell) [1937116] - xfs: simplify a check in xfs_ioctl_setattr_check_cowextsize (Bill O'Donnell) [1937116] - xfs: simplify di_flags2 inheritance in xfs_ialloc (Bill O'Donnell) [1937116] - xfs: only check the superblock version for dinode size calculation (Bill O'Donnell) [1937116] - xfs: add a new xfs_sb_version_has_v3inode helper (Bill O'Donnell) [1937116] - xfs: add support for rmap btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for refcount btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for inode btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for free space btree staging cursors (Bill O'Donnell) [1937116] - xfs: support bulk loading of staged btrees (Bill O'Donnell) [1937116] - xfs: introduce fake roots for inode-rooted btrees (Bill O'Donnell) [1937116] - xfs: introduce fake roots for ag-rooted btrees (Bill O'Donnell) [1937116] - xfs: replace open-coded bitmap weight logic (Bill O'Donnell) [1937116] - xfs: rename xfs_bitmap to xbitmap (Bill O'Donnell) [1937116] - xfs: xrep_reap_extents should not destroy the bitmap (Bill O'Donnell) [1937116] - xfs: cleanup xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove dead code from xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove the unused return value from xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove the unused XLOG_UNMOUNT_REC_TYPE define (Bill O'Donnell) [1937116] - xfs: mark XLOG_FORCED_SHUTDOWN as unlikely (Bill O'Donnell) [1937116] - xfs: make the btree ag cursor private union anonymous (Bill O'Donnell) [1937116] - xfs: make the btree cursor union members named structure (Bill O'Donnell) [1937116] - xfs: make btree cursor private union anonymous (Bill O'Donnell) [1937116] - xfs: rename btree cursor private btree member flags (Bill O'Donnell) [1937116] - xfs: convert btree cursor inode-private member names (Bill O'Donnell) [1937116] - xfs: convert btree cursor ag-private member name (Bill O'Donnell) [1937116] - xfs: introduce new private btree cursor names (Bill O'Donnell) [1937116] - xfs: Use scnprintf() for avoiding potential buffer overflow (Bill O'Donnell) [1937116] - xfs: mark extended attr corrupt when lookup-by-hash fails (Bill O'Donnell) [1937116] - xfs: mark dir corrupt when lookup-by-hash fails (Bill O'Donnell) [1937116] - xfs: check owner of dir3 blocks (Bill O'Donnell) [1937116] - xfs: check owner of dir3 data blocks (Bill O'Donnell) [1937116] - xfs: check owner of dir3 free blocks (Bill O'Donnell) [1937116] - xfs: fix buffer corruption reporting when xfs_dir3_free_header_check fails (Bill O'Donnell) [1937116] - xfs: xfs_buf_corruption_error should take __this_address (Bill O'Donnell) [1937116] - xfs: add a function to deal with corrupt buffers post-verifiers (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_SBP (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_AGF (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_AGI (Bill O'Donnell) [1937116] - xfs: remove the xfs_agfl_t typedef (Bill O'Donnell) [1937116] - xfs: remove the agfl_bno member from struct xfs_agfl (Bill O'Donnell) [1937116] - xfs: switch xfs_attrmulti_attr_get to lazy attr buffer allocation (Bill O'Donnell) [1937116] - xfs: only allocate the buffer size actually needed in __xfs_set_acl (Bill O'Donnell) [1937116] - xfs: clean up bufsize alignment in xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: embedded the attrlist cursor into struct xfs_attr_list_context (Bill O'Donnell) [1937116] - xfs: remove XFS_DA_OP_INCOMPLETE (Bill O'Donnell) [1937116] - xfs: clean up the attr flag confusion (Bill O'Donnell) [1937116] - xfs: clean up the ATTR_REPLACE checks (Bill O'Donnell) [1937116] - xfs: improve xfs_forget_acl (Bill O'Donnell) [1937116] - xfs: lift cursor copy in/out into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: lift buffer allocation into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: lift common checks into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: rename xfs_attr_list_int to xfs_attr_list (Bill O'Donnell) [1937116] - xfs: move the legacy xfs_attr_list to xfs_ioctl.c (Bill O'Donnell) [1937116] - xfs: open code ATTR_ENTSIZE (Bill O'Donnell) [1937116] - xfs: remove the unused ATTR_ENTRY macro (Bill O'Donnell) [1937116] - xfs: cleanup struct xfs_attr_list_context (Bill O'Donnell) [1937116] - xfs: factor out a xfs_attr_match helper (Bill O'Donnell) [1937116] - xfs: replace ATTR_KERNOTIME with XFS_DA_OP_NOTIME (Bill O'Donnell) [1937116] - xfs: remove ATTR_ALLOC and XFS_DA_OP_ALLOCVAL (Bill O'Donnell) [1937116] - xfs: remove ATTR_KERNOVAL (Bill O'Donnell) [1937116] - xfs: remove the xfs_inode argument to xfs_attr_get_ilocked (Bill O'Donnell) [1937116] - xfs: pass an initialized xfs_da_args to xfs_attr_get (Bill O'Donnell) [1937116] - xfs: pass an initialized xfs_da_args structure to xfs_attr_set (Bill O'Donnell) [1937116] - xfs: turn xfs_da_args.value into a void pointer (Bill O'Donnell) [1937116] - xfs: remove the MAXNAMELEN check from xfs_attr_args_init (Bill O'Donnell) [1937116] - xfs: remove the name == NULL check from xfs_attr_args_init (Bill O'Donnell) [1937116] - xfs: factor out a helper for a single XFS_IOC_ATTRMULTI_BY_HANDLE op (Bill O'Donnell) [1937116] - xfs: use strndup_user in XFS_IOC_ATTRMULTI_BY_HANDLE (Bill O'Donnell) [1937116] - xfs: merge xfs_attrmulti_attr_remove into xfs_attrmulti_attr_set (Bill O'Donnell) [1937116] - xfs: merge xfs_attr_remove into xfs_attr_set (Bill O'Donnell) [1937116] - xfs: remove the ATTR_INCOMPLETE flag (Bill O'Donnell) [1937116] - xfs: reject invalid flags combinations in XFS_IOC_ATTRLIST_BY_HANDLE (Bill O'Donnell) [1937116] - xfs: rework collapse range into an atomic operation (Bill O'Donnell) [1937116] - xfs: rework insert range into an atomic operation (Bill O'Donnell) [1937116] - xfs: open code insert range extent split helper (Bill O'Donnell) [1937116] - xfs: Add missing annotation to xfs_ail_check() (Bill O'Donnell) [1937116] - xfs: fix an undefined behaviour in _da3_path_shift (Bill O'Donnell) [1937116] - xfs: ratelimit xfs_discard_page messages (Bill O'Donnell) [1937116] - xfs: ratelimit xfs_buf_ioerror_alert messages (Bill O'Donnell) [1937116] - xfs: remove the kuid/kgid conversion wrappers (Bill O'Donnell) [1937116] - xfs: remove the icdinode di_uid/di_gid members (Bill O'Donnell) [1937116] - xfs: ensure that the inode uid/gid match values match the icdinode ones (Bill O'Donnell) [1937116] - xfs: improve error message when we can't allocate memory for xfs_buf (Bill O'Donnell) [1937116] - ceph: fix test for whether we can skip read when writing beyond EOF (Jeff Layton) [1971101] - redhat/configs: Add CONFIG_X86_SGX_KVM (Bandan Das) [1494649] - KVM: x86: Fix implicit enum conversion goof in scattered reverse CPUID code (Bandan Das) [1494649] - KVM: x86: Add capability to grant VM access to privileged SGX attribute (Bandan Das) [1494649] - KVM: VMX: Enable SGX virtualization for SGX1, SGX2 and LC (Bandan Das) [1494649] - KVM: VMX: Add ENCLS[EINIT] handler to support SGX Launch Control (LC) (Bandan Das) [1494649] - KVM: VMX: Add emulation of SGX Launch Control LE hash MSRs (Bandan Das) [1494649] - KVM: VMX: Add SGX ENCLS[ECREATE] handler to enforce CPUID restrictions (Bandan Das) [1494649] - KVM: VMX: Frame in ENCLS handler for SGX virtualization (Bandan Das) [1494649] - KVM: VMX: Add basic handling of VM-Exit from SGX enclave (Bandan Das) [1494649] - KVM: x86: Add reverse-CPUID lookup support for scattered SGX features (Bandan Das) [1494649] - KVM: x86: Add support for reverse CPUID lookup of scattered features (Bandan Das) [1494649] - KVM: x86: Define new #PF SGX error code bit (Bandan Das) [1494649] - KVM: x86: Export kvm_mmu_gva_to_gpa_{read,write}() for SGX (VMX) (Bandan Das) [1494649] - x86/sgx: Mark sgx_vepc_vm_ops static (Bandan Das) [1494649] - x86/sgx: Do not update sgx_nr_free_pages in sgx_setup_epc_section() (Bandan Das) [1494649] - x86/sgx: Move provisioning device creation out of SGX driver (Bandan Das) [1494649] - x86/sgx: Add helpers to expose ECREATE and EINIT to KVM (Bandan Das) [1494649] - x86/sgx: Add helper to update SGX_LEPUBKEYHASHn MSRs (Bandan Das) [1494649] - x86/sgx: Add encls_faulted() helper (Bandan Das) [1494649] - x86/sgx: Add SGX2 ENCLS leaf definitions (EAUG, EMODPR and EMODT) (Bandan Das) [1494649] - x86/sgx: Move ENCLS leaf definitions to sgx.h (Bandan Das) [1494649] - x86/sgx: Expose SGX architectural definitions to the kernel (Bandan Das) [1494649] - x86/sgx: Initialize virtual EPC driver even when SGX driver is disabled (Bandan Das) [1494649] - x86/cpu/intel: Allow SGX virtualization without Launch Control support (Bandan Das) [1494649] - x86/sgx: Introduce virtual EPC for use by KVM guests (Bandan Das) [1494649] - x86/sgx: Add SGX_CHILD_PRESENT hardware error code (Bandan Das) [1494649] - x86/sgx: Wipe out EREMOVE from sgx_free_epc_page() (Bandan Das) [1494649] - x86/cpufeatures: Add SGX1 and SGX2 sub-features (Bandan Das) [1494649] - x86/cpufeatures: Make SGX_LC feature bit depend on SGX bit (Bandan Das) [1494649] - x86/sgx: Remove unnecessary kmap() from sgx_ioc_enclave_init() (Bandan Das) [1494649] - selftests/sgx: Use getauxval() to simplify test code (Bandan Das) [1494649] - selftests/sgx: Improve error detection and messages (Bandan Das) [1494649] - x86/sgx: Add a basic NUMA allocation scheme to sgx_alloc_epc_page() (Bandan Das) [1494649] - x86/sgx: Replace section->init_laundry_list with sgx_dirty_page_list (Bandan Das) [1494649] - x86/sgx: Maintain encl->refcount for each encl->mm_list entry (Bandan Das) [1494649] - MAINTAINERS: Add Dave Hansen as reviewer for INTEL SGX (Bandan Das) [1494649] - x86/NUMA: Provide a range-to-target_node lookup facility (Bandan Das) [1494649] - x86/mm: Introduce CONFIG_NUMA_KEEP_MEMINFO (Bandan Das) [1494649] - configs: Enable CONFIG_MLXBF_GIGE on aarch64 (Alaa Hleihel) [1803489] - Add Mellanox BlueField Gigabit Ethernet driver (Alaa Hleihel) [1803489] - integrity: Use current_uid() in integrity_audit_message() (Richard Guy Briggs) [1957052] - ima: AppArmor satisfies the audit rule requirements (Richard Guy Briggs) [1957052] - IMA: Add audit log for failure conditions (Richard Guy Briggs) [1957052] - integrity: Add errno field in audit message (Richard Guy Briggs) [1957052] - audit: add blank line after variable declarations (Richard Guy Briggs) [1957052] - audit: drop /proc/PID/loginuid documentation Format field (Richard Guy Briggs) [1957052] - audit: avoid -Wempty-body warning (Richard Guy Briggs) [1957052] - audit: document /proc/PID/sessionid (Richard Guy Briggs) [1957052] - audit: document /proc/PID/loginuid (Richard Guy Briggs) [1957052] - MAINTAINERS: update audit files (Richard Guy Briggs) [1957052] - audit: further cleanup of AUDIT_FILTER_ENTRY deprecation (Richard Guy Briggs) [1957052] - netfilter: nftables: fix a warning message in nf_tables_commit_audit_collect() (Richard Guy Briggs) [1957052] - audit: log nftables configuration change events once per table (Richard Guy Briggs) [1957052] - audit_alloc_mark(): don't open-code ERR_CAST() (Richard Guy Briggs) [1957052] - make dump_common_audit_data() safe to be called from RCU pathwalk (Richard Guy Briggs) [1957052] - new helper: d_find_alias_rcu() (Richard Guy Briggs) [1957052] - audit: Make audit_filter_syscall() return void (Richard Guy Briggs) [1957052] - audit: Remove leftover reference to the audit_tasklet (Richard Guy Briggs) [1957052] - kernel/audit: convert comma to semicolon (Richard Guy Briggs) [1957052] - dump_common_audit_data(): fix racy accesses to ->d_name (Richard Guy Briggs) [1957052] - audit: replace atomic_add_return() (Richard Guy Briggs) [1957052] - x86/audit: Fix a -Wmissing-prototypes warning for ia32_classify_syscall() (Richard Guy Briggs) [1957052] - ethtool: fix kdoc attr name (Ivan Vecera) [1967261] - ethtool: Remove link_mode param and derive link params from driver (Ivan Vecera) [1967261] - ethtool: Add lanes parameter for ETHTOOL_LINK_MODE_10000baseR_FEC_BIT (Ivan Vecera) [1967261] - ethtool: fix kdoc in headers (Ivan Vecera) [1967261] - ethtool: document reserved fields in the uAPI (Ivan Vecera) [1967261] - ethtool: un-kdocify extended link state (Ivan Vecera) [1967261] - ethtool: document PHY tunable callbacks (Ivan Vecera) [1967261] - docs: ethtool: fix some copy-paste errors (Ivan Vecera) [1967261] - ethtool: fix incorrect datatype in set_eee ops (Ivan Vecera) [1967261] - net: selftests: Add lanes setting test (Ivan Vecera) [1967261] - mlxsw: ethtool: Pass link mode in use to ethtool (Ivan Vecera) [1967261] - mlxsw: ethtool: Add support for setting lanes when autoneg is off (Ivan Vecera) [1967261] - mlxsw: ethtool: Remove max lanes filtering (Ivan Vecera) [1967261] - ethtool: Expose the number of lanes in use (Ivan Vecera) [1967261] - ethtool: Get link mode in use instead of speed and duplex parameters (Ivan Vecera) [1967261] - ethtool: prepare __ethtool_get_link_ksettings for subsequent changes (Ivan Vecera) [1967261] - ethtool: Extend link modes settings uAPI with lanes (Ivan Vecera) [1967261] - ethtool: Validate master slave configuration before rtnl_lock() (Ivan Vecera) [1967261] - ethtool: fix string set id check (Ivan Vecera) [1967261] - ethtool: fix stack overflow in ethnl_parse_bitset() (Ivan Vecera) [1967261] - selftests: add ring and coalesce selftests (Ivan Vecera) [1967261] - selftests: refactor get_netdev_name function (Ivan Vecera) [1967261] - selftests: extract common functions in ethtool-common.sh (Ivan Vecera) [1967261] - netdevsim: support ethtool ring and coalesce settings (Ivan Vecera) [1967261] - netdevsim: move ethtool pause params in separate struct (Ivan Vecera) [1967261] - ethtool: add ETHTOOL_COALESCE_ALL_PARAMS define (Ivan Vecera) [1967261] - ethtool: netlink: add missing netdev_features_change() call (Ivan Vecera) [1967261] - ethtool: remove unneeded semicolon (Ivan Vecera) [1967261] - ethtool: allow netdev driver to define phy tunables (Ivan Vecera) [1967261] - ethtool: mark netlink family as __ro_after_init (Ivan Vecera) [1967261] - ethtool: Add 100base-FX link mode entries (Ivan Vecera) [1967261] - ethtool: fix error handling in ethtool_phys_id (Ivan Vecera) [1967261] - ethtool: allow flow-type ether without IP protocol field (Ivan Vecera) [1967261] - net: phy: Uninline PHY ethtool statistics operations (Ivan Vecera) [1967261] - net: phy: Define PHY statistics ethtool_phy_ops (Ivan Vecera) [1967261] - net: ethtool: Remove PHYLIB direct dependency (Ivan Vecera) [1967261] - net: phy: Register ethtool PHY operations (Ivan Vecera) [1967261] - genksyms: Ignore module scoped _Static_assert() (Ivan Vecera) [1967261] - net: ethtool: Introduce ethtool_phy_ops (Ivan Vecera) [1967261] - Documentation: networking: fix ethtool-netlink table formats (Ivan Vecera) [1967261] - ethtool: ioctl: Use array_size() in copy_to_user() (Ivan Vecera) [1967261] - net: ethtool: cabletest: Make ethnl_act_cable_test_tdr_cfg static (Ivan Vecera) [1967261] - SUNRPC: Handle major timeout in xprt_adjust_timeout() (Scott Mayhew) [1979070] - gro_cells: reduce number of synchronize_net() calls (Ivan Vecera) [1959015] - net: make sure napi_list is safe for RCU traversal (Ivan Vecera) [1959015] - net: manage napi add/del idempotence explicitly (Ivan Vecera) [1959015] - net: remove napi_hash_del() from driver-facing API (Ivan Vecera) [1959015] - net: disable netpoll on fresh napis (Ivan Vecera) [1959015] - usb: dwc3-meson-g12a: fix usb2 PHY glue init when phy0 is disabled (Torez Smith) [1942772] - xhci: Fix 5.12 regression of missing xHC cache clearing command after a Stall (Torez Smith) [1942772] - xhci: fix giving back URB with incorrect status regression in 5.12 (Torez Smith) [1942772] - usb: typec: ucsi: Clear pending after acking connector change (Torez Smith) [1942772] - net: hso: check for allocation failure in hso_create_bulk_serial_device() (Torez Smith) [1942772] - usb: typec: tcpm: Fix wrong handling in GET_SINK_CAP (Torez Smith) [1942772] - net: hso: fix NULL-deref on disconnect regression (Torez Smith) [1942772] - USB: CDC-ACM: fix poison/unpoison imbalance (Torez Smith) [1942772] - usbip: vudc: fix missing unlock on error in usbip_sockfd_store() (Torez Smith) [1942772] - usb: xhci-mtk: improve bandwidth scheduling with TT (Torez Smith) [1942772] - usb: xhci-mtk: remove or operator for setting schedule parameters (Torez Smith) [1942772] - usb: typec: tcpm: Wait for vbus discharge to VSAFE0V before toggling (Torez Smith) [1942772] - software node: Provide replacement for device_add_properties() (Torez Smith) [1942772] - driver core: platform: Reimplement devm_platform_ioremap_resource (Torez Smith) [1942772] - USB: usblp: initialize newChannel (Torez Smith) [1942772] - net: hso: fix null-ptr-deref during tty device unregistration (Torez Smith) [1942772] - usbip: synchronize event handler with sysfs code paths (Torez Smith) [1942772] - usbip: vudc synchronize sysfs code paths (Torez Smith) [1942772] - usbip: stub-dev synchronize sysfs code paths (Torez Smith) [1942772] - usbip: add sysfs_lock to synchronize sysfs code paths (Torez Smith) [1942772] - drivers: net: fix memory leak in peak_usb_create_dev (Torez Smith) [1942772] - thunderbolt: Fix off by one in tb_port_find_retimer() (Torez Smith) [1942772] - thunderbolt: Fix a leak in tb_retimer_add() (Torez Smith) [1942772] - usb: dwc2: Prevent core suspend when port connection flag is 0 (Torez Smith) [1942772] - usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board. (Torez Smith) [1942772] - usb: xhci-mtk: fix broken streams issue on 0.96 xHCI (Torez Smith) [1942772] - usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control() (Torez Smith) [1942772] - USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem (Torez Smith) [1942772] - USB: cdc-acm: do not log successful probe on later errors (Torez Smith) [1942772] - USB: cdc-acm: always claim data interface (Torez Smith) [1942772] - USB: cdc-acm: use negation for NULL checks (Torez Smith) [1942772] - USB: cdc-acm: clean up probe error labels (Torez Smith) [1942772] - USB: cdc-acm: drop redundant driver-data reset (Torez Smith) [1942772] - USB: cdc-acm: drop redundant driver-data assignment (Torez Smith) [1942772] - USB: cdc-acm: fix use-after-free after probe failure (Torez Smith) [1942772] - USB: cdc-acm: fix double free on probe failure (Torez Smith) [1942772] - USB: cdc-acm: downgrade message to debug (Torez Smith) [1942772] - USB: cdc-acm: untangle a circular dependency between callback and softint (Torez Smith) [1942772] - cdc-acm: fix BREAK rx code path adding necessary calls (Torez Smith) [1942772] - usb: dwc3: pci: Enable dis_uX_susphy_quirk for Intel Merrifield (Torez Smith) [1942772] - usb: dwc3: qcom: skip interconnect init for ACPI probe (Torez Smith) [1942772] - can: peak_usb: Revert "can: peak_usb: add forgotten supported devices" (Torez Smith) [1942772] - r8152: limit the RX buffer size of RTL8153A for USB 2.0 (Torez Smith) [1942772] - net: cdc-phonet: fix data-interface release on probe failure (Torez Smith) [1942772] - usb: typec: tcpm: Skip sink_cap query only when VDM sm is busy (Torez Smith) [1942772] - usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy- (Torez Smith) [1942772] - usb: typec: Remove vdo[3] part of tps6598x_rx_identity_reg struct (Torez Smith) [1942772] - usb-storage: Add quirk to defeat Kindle's automatic unload (Torez Smith) [1942772] - usbip: Fix incorrect double assignment to udc->ud.tcp_rx (Torez Smith) [1942772] - can: kvaser_usb: Add support for USBcan Pro 4xHS (Torez Smith) [1942772] - can: peak_usb: add forgotten supported devices (Torez Smith) [1942772] - xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state (Torez Smith) [1942772] - usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing (Torez Smith) [1942772] - xhci: Improve detection of device initiated wake signal. (Torez Smith) [1942772] - usb: xhci: do not perform Soft Retry for some xHCI hosts (Torez Smith) [1942772] - usbip: fix vudc usbip_sockfd_store races leading to gpf (Torez Smith) [1942772] - usbip: fix vhci_hcd attach_store() races leading to gpf (Torez Smith) [1942772] - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf (Torez Smith) [1942772] - usbip: fix vudc to check for stream socket (Torez Smith) [1942772] - usbip: fix vhci_hcd to check for stream socket (Torez Smith) [1942772] - usbip: fix stub_dev to check for stream socket (Torez Smith) [1942772] - USB: usblp: fix a hang in poll() if disconnected (Torez Smith) [1942772] - usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement (Torez Smith) [1942772] - usb: dwc3: qcom: Honor wakeup enabled/disabled state (Torez Smith) [1942772] - usb: dwc3: qcom: add ACPI device id for sc8180x (Torez Smith) [1942772] - Goodix Fingerprint device is not a modem (Torez Smith) [1942772] - USB: serial: io_edgeport: fix memory leak in edge_startup (Torez Smith) [1942772] - USB: serial: ch341: add new Product ID (Torez Smith) [1942772] - USB: serial: cp210x: add some more GE USB IDs (Torez Smith) [1942772] - USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter (Torez Smith) [1942772] - net: usb: log errors to dmesg/syslog (Torez Smith) [1942772] - net: usb: cdc_ncm: emit dev_err on error paths (Torez Smith) [1942772] - thunderbolt: Increase runtime PM reference count on DP tunnel discovery (Torez Smith) [1942772] - thunderbolt: Initialize HopID IDAs in tb_switch_alloc() (Torez Smith) [1942772] - net: usb: qmi_wwan: allow qmimux add/del with master up (Torez Smith) [1942772] - Revert "r8152: adjust the settings about MAC clock speed down for RTL8153" (Torez Smith) [1942772] - net: usb: qmi_wwan: support ZTE P685M modem (Torez Smith) [1942772] - r8152: spilt rtl_set_eee_plus and r8153b_green_en (Torez Smith) [1942772] - r8152: replace netif_err with dev_err (Torez Smith) [1942772] - r8152: check if the pointer of the function exists (Torez Smith) [1942772] - r8152: enable U1/U2 for USB_SPEED_SUPER (Torez Smith) [1942772] - usb: misc: usb3503: Fix logic in usb3503_init() (Torez Smith) [1942772] - usb: Replace lkml.org links with lore (Torez Smith) [1942772] - usb: quirks: add quirk to start video capture on ELMO L-12F document camera reliable (Torez Smith) [1942772] - USB: quirks: sort quirk entries (Torez Smith) [1942772] - USB: serial: drop bogus to_usb_serial_port() checks (Torez Smith) [1942772] - USB: serial: drop if with an always false condition (Torez Smith) [1942772] - usb: typec: tcpm: Get Sink VDO from fwnode (Torez Smith) [1942772] - dt-bindings: connector: Add SVDM VDO properties (Torez Smith) [1942772] - usb: typec: displayport: Fill the negotiated SVDM Version in the header (Torez Smith) [1942772] - usb: typec: ucsi: Determine common SVDM Version (Torez Smith) [1942772] - usb: typec: tcpm: Determine common SVDM Version (Torez Smith) [1942772] - usb: pd: Make SVDM Version configurable in VDM header (Torez Smith) [1942772] - usb: typec: Manage SVDM version (Torez Smith) [1942772] - usb: dwc3: gadget: Fix dep->interval for fullspeed interrupt (Torez Smith) [1942772] - usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1 (Torez Smith) [1942772] - USB: serial: option: update interface mapping for ZTE P685M (Torez Smith) [1942772] - usb: dwc3: gadget: Track connected SSP rate and lane count (Torez Smith) [1942772] - usb: dwc3: gadget: Implement setting of SSP rate (Torez Smith) [1942772] - usb: dwc3: core: Check maximum_speed SSP genXxY (Torez Smith) [1942772] - usb: common: Parse for USB SSP genXxY (Torez Smith) [1942772] - usb: dwc2: Fix endpoint direction check in ep_from_windex (Torez Smith) [1942772] - usb: dwc3: fix clock issue during resume in OTG mode (Torez Smith) [1942772] - xhci: ext-caps: Use software node API with the properties (Torez Smith) [1942772] - usb: dwc3: host: Use software node API with the properties (Torez Smith) [1942772] - r8152: replace several functions about phy patch request (Torez Smith) [1942772] - usb: dwc3: qcom: Constify the software node (Torez Smith) [1942772] - usb: dwc3: haps: Constify the software node (Torez Smith) [1942772] - usb: dwc2: pci: Drop the empty quirk function (Torez Smith) [1942772] - thunderbolt: Add support for native USB4 _OSC (Torez Smith) [1942772] - thunderbolt: Allow disabling XDomain protocol (Torez Smith) [1942772] - thunderbolt: Add support for PCIe tunneling disabled (SL5) (Torez Smith) [1942772] - thunderbolt: dma_test: Drop unnecessary include (Torez Smith) [1942772] - thunderbolt: Add clarifying comments about USB4 terms router and adapter (Torez Smith) [1942772] - thunderbolt: switch: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: nhi: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: path: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: eeprom: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: ctl: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - usb: pd: Reland VDO definitions of PD2.0 (Torez Smith) [1942772] - NET: usb: qmi_wwan: Adding support for Cinterion MV31 (Torez Smith) [1942772] - usb: pd: Update VDO definitions (Torez Smith) [1942772] - xhci: fix bounce buffer usage for non-sg list case (Torez Smith) [1942772] - usb: xhci-mtk: break loop when find the endpoint to drop (Torez Smith) [1942772] - usb: typec: Return void in typec_partner_set_pd_revision (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable data path when partner is USB Comm capable (Torez Smith) [1942772] - usb: typec: tcpci: Add Callback to Usb Communication capable partner (Torez Smith) [1942772] - usb: typec: tcpm: Add Callback to Usb Communication capable partner (Torez Smith) [1942772] - usb: typec: tcpm: Set in_ams flag when Source caps have been received (Torez Smith) [1942772] - usb: typec: tcpm: Handle vbus shutoff when in source mode (Torez Smith) [1942772] - usb: typec: Add typec_partner_set_pd_revision (Torez Smith) [1942772] - usb: typec: Provide PD Specification Revision for cable and partner (Torez Smith) [1942772] - usb: typec: Standardize PD Revision format with Type-C Revision (Torez Smith) [1942772] - usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints (Torez Smith) [1942772] - USB: serial: ftdi_sio: restore divisor-encoding comments (Torez Smith) [1942772] - USB: serial: ftdi_sio: fix FTX sub-integer prescaler (Torez Smith) [1942772] - USB: serial: cp210x: clean up auto-RTS handling (Torez Smith) [1942772] - USB: serial: cp210x: fix RTS handling (Torez Smith) [1942772] - USB: serial: cp210x: clean up printk zero padding (Torez Smith) [1942772] - USB: serial: cp210x: clean up flow-control debug message (Torez Smith) [1942772] - USB: serial: cp210x: drop shift macros (Torez Smith) [1942772] - USB: serial: cp210x: fix modem-control handling (Torez Smith) [1942772] - USB: serial: cp210x: suppress modem-control errors (Torez Smith) [1942772] - xhci: handle halting transfer event properly after endpoint stop and halt raced. (Torez Smith) [1942772] - xhci: Check for pending reset endpoint command before queueing a new one. (Torez Smith) [1942772] - xhci: remove obsolete dequeue pointer moving code (Torez Smith) [1942772] - xhci: introduce a new move_dequeue_past_td() function to replace old code. (Torez Smith) [1942772] - xhci: handle stop endpoint command completion with endpoint in running state. (Torez Smith) [1942772] - xhci: Fix halted endpoint at stop endpoint command completion (Torez Smith) [1942772] - xhci: split handling halted endpoints into two steps (Torez Smith) [1942772] - xhci: move and rename xhci_cleanup_halted_endpoint() (Torez Smith) [1942772] - xhci: turn cancelled td cleanup to its own function (Torez Smith) [1942772] - xhci: store TD status in the td struct instead of passing it along (Torez Smith) [1942772] - xhci: use xhci_td_cleanup() helper when giving back cancelled URBs (Torez Smith) [1942772] - xhci: move xhci_td_cleanup so it can be called by more functions (Torez Smith) [1942772] - xhci: Add xhci_reset_halted_ep() helper function (Torez Smith) [1942772] - xhci: flush endpoint start to reduce race risk with stop endpoint command. (Torez Smith) [1942772] - xhci: Check link TRBs when updating ring enqueue and dequeue pointers. (Torez Smith) [1942772] - xhci: avoid DMA double fetch when reading event trb type. (Torez Smith) [1942772] - xhci: remove extra loop in interrupt context (Torez Smith) [1942772] - xhci: check slot_id is valid before gathering slot info (Torez Smith) [1942772] - xhci: prevent a theoretical endless loop while preparing rings. (Torez Smith) [1942772] - xhci: remove xhci_stream_id_to_ring() helper (Torez Smith) [1942772] - xhci: add xhci_virt_ep_to_ring() helper (Torez Smith) [1942772] - xhci: check virt_dev is valid before dereferencing it (Torez Smith) [1942772] - xhci: add xhci_get_virt_ep() helper (Torez Smith) [1942772] - xhci: remove unused event parameter from completion handlers (Torez Smith) [1942772] - xhci: adjust parameters passed to cleanup_halted_endpoint() (Torez Smith) [1942772] - xhci: get isochronous ring directly from endpoint structure (Torez Smith) [1942772] - xhci: Avoid parsing transfer events several times (Torez Smith) [1942772] - net: qmi_wwan: Add pass through mode (Torez Smith) [1942772] - net: usb: qmi_wwan: add qmap id sysfs file for qmimux interfaces (Torez Smith) [1942772] - net: usb: cdc_ether: added support for Thales Cinterion PLSx3 modem family. (Torez Smith) [1942772] - thunderbolt: Fix possible NULL pointer dereference in tb_acpi_add_link() (Torez Smith) [1942772] - thunderbolt: switch: Fix function name in the header (Torez Smith) [1942772] - thunderbolt: tunnel: Fix misspelling of 'receive_path' (Torez Smith) [1942772] - thunderbolt: icm: Fix a couple of formatting issues (Torez Smith) [1942772] - thunderbolt: switch: Demote a bunch of non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: tb: Kernel-doc function headers should document their parameters (Torez Smith) [1942772] - thunderbolt: nhi: Demote some non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: xdomain: Fix 'tb_unregister_service_driver()'s 'drv' param (Torez Smith) [1942772] - thunderbolt: eeprom: Demote non-conformant kernel-doc headers to standard comment blocks (Torez Smith) [1942772] - USB: serial: mos7720: fix error code in mos7720_write() (Torez Smith) [1942772] - thunderbolt: ctl: Demote non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: cap: Fix kernel-doc formatting issue (Torez Smith) [1942772] - thunderbolt: dma_port: Check 'dma_port_flash_write_block()'s return value (Torez Smith) [1942772] - USB: serial: option: Adding support for Cinterion MV31 (Torez Smith) [1942772] - can: mcba_usb: remove h from printk format specifier (Torez Smith) [1942772] - usbnet: fix the indentation of one code snippet (Torez Smith) [1942772] - usb: usb251xb: Use of_device_get_match_data() (Torez Smith) [1942772] - usb: dwc2: Make "trimming xfer length" a debug message (Torez Smith) [1942772] - usb: dwc2: Abort transaction after errors with unknown reason (Torez Smith) [1942772] - usb: dwc2: Do not update data length if it is 0 on inbound transfers (Torez Smith) [1942772] - usb: xhci-mtk: fix unreleased bandwidth data (Torez Smith) [1942772] - USB: serial: mos7840: fix error code in mos7840_write() (Torez Smith) [1942772] - USB: usblp: don't call usb_set_interface if there's a single alt (Torez Smith) [1942772] - USB: serial: cp210x: add pid/vid for WSDA-200-USB (Torez Smith) [1942772] - usb: typec: tcpci_maxim: add terminating newlines to logging (Torez Smith) [1942772] - usb: typec: tcpci_maxim: remove redundant assignment (Torez Smith) [1942772] - usb: typec: tcpm: Create legacy PDOs for PD2 connection (Torez Smith) [1942772] - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Drop GPIO includes (Torez Smith) [1942772] - usb: typec: tcpm: Respond Wait if VDM state machine is running (Torez Smith) [1942772] - usb: typec: tcpm: Protocol Error handling (Torez Smith) [1942772] - usb: typec: tcpm: AMS and Collision Avoidance (Torez Smith) [1942772] - net: usb: cdc_ncm: don't spew notifications (Torez Smith) [1942772] - usb: typec: ucsi: Add conditional dependency on USB role switch (Torez Smith) [1942772] - usb: ch9: Add USB 3.2 SSP attributes (Torez Smith) [1942772] - USB: serial: f81232: drop short control-transfer checks (Torez Smith) [1942772] - USB: serial: io_ti: fix a debug-message copy-paste error (Torez Smith) [1942772] - USB: serial: io_ti: drop short control-transfer check (Torez Smith) [1942772] - USB: serial: upd78f0730: drop short control-transfer check (Torez Smith) [1942772] - USB: serial: cp210x: add copyright notice (Torez Smith) [1942772] - USB: serial: cp210x: drop unused includes (Torez Smith) [1942772] - USB: serial: cp210x: drop short control-transfer checks (Torez Smith) [1942772] - USB: serial: cp210x: update control-characters on every change (Torez Smith) [1942772] - USB: serial: cp210x: set IXOFF thresholds (Torez Smith) [1942772] - USB: serial: cp210x: add support for software flow control (Torez Smith) [1942772] - USB: serial: pl2303: fix line-speed handling on newer chips (Torez Smith) [1942772] - xhci: tegra: Delay for disabling LFPS detector (Torez Smith) [1942772] - xhci: make sure TRB is fully written before giving it to the controller (Torez Smith) [1942772] - usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Alder Lake-P (Torez Smith) [1942772] - usb: dwc3: pci: ID for Tiger Lake CPU (Torez Smith) [1942772] - usb: dwc3: pci: Register a software node for the dwc3 platform device (Torez Smith) [1942772] - thunderbolt: Add support for de-authorizing devices (Torez Smith) [1942772] - nt: usb: USB_RTL8153_ECM should not default to y (Torez Smith) [1942772] - USB: dwc3: document gadget_max_speed (Torez Smith) [1942772] - usb: dwc3: gadget: Disable Vendor Test LMP Received event (Torez Smith) [1942772] - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 (Torez Smith) [1942772] - r8153_ecm: Add Lenovo Powered USB-C Hub as a fallback of r8152 (Torez Smith) [1942772] - r8152: Add Lenovo Powered USB-C Travel Hub (Torez Smith) [1942772] - USB: ehci: fix an interrupt calltrace error (Torez Smith) [1942772] - ehci: fix EHCI host controller initialization sequence (Torez Smith) [1942772] - usb: typec: ucsi: Add support for USB role switch (Torez Smith) [1942772] - usb: dwc2: disable Link Power Management on STM32MP15 HS OTG (Torez Smith) [1942772] - usb: dwc2: enable FS/LS PHY clock select on STM32MP15 FS OTG (Torez Smith) [1942772] - usb: dwc2: set ahbcfg parameter for STM32MP15 OTG HS and FS (Torez Smith) [1942772] - usb: dwc3: Simplify with dev_err_probe() (Torez Smith) [1942772] - usb: dwc3: keystone: Simplify with dev_err_probe() (Torez Smith) [1942772] - usb: dwc3: core: Replace devm_reset_control_array_get() (Torez Smith) [1942772] - USB: serial: mos7720: improve OOM-handling in read_mos_reg() (Torez Smith) [1942772] - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request (Torez Smith) [1942772] - thunderbolt: Start lane initialization after sleep (Torez Smith) [1942772] - thunderbolt: Constify static attribute_group structs (Torez Smith) [1942772] - qmi_wwan: Increase headroom for QMAP SKBs (Torez Smith) [1942772] - usb: usbip: Use DEFINE_SPINLOCK() for spinlock (Torez Smith) [1942772] - usb: dwc3: gadget: Clear wait flag on dequeue (Torez Smith) [1942772] - usb: typec: Send uevent for num_altmodes update (Torez Smith) [1942772] - usb: typec: Fix copy paste error for NVIDIA alt-mode description (Torez Smith) [1942772] - kcov, usb: hide in_serving_softirq checks in __usb_hcd_giveback_urb (Torez Smith) [1942772] - thunderbolt: Drop duplicated 0x prefix from format string (Torez Smith) [1942772] - net: cdc_ncm: correct overhead in delayed_ndp_size (Torez Smith) [1942772] - net: usb: Use DEFINE_SPINLOCK() for spinlock (Torez Smith) [1942772] - usb: uas: Add PNY USB Portable SSD to unusual_uas (Torez Smith) [1942772] - net: usb: qmi_wwan: add Quectel EM160R-GL (Torez Smith) [1942772] - usb: usbip: vhci_hcd: protect shift size (Torez Smith) [1942772] - USB: usblp: fix DMA to stack (Torez Smith) [1942772] - usb: dwc3: gadget: Preserve UDC max speed setting (Torez Smith) [1942772] - usb: dwc3: gadget: Allow runtime suspend if UDC unbinded (Torez Smith) [1942772] - usb: dwc3: gadget: Introduce a DWC3 VBUS draw callback (Torez Smith) [1942772] - usb: dwc3: add imx8mp dwc3 glue layer driver (Torez Smith) [1942772] - USB: serial: iuu_phoenix: fix DMA from stack (Torez Smith) [1942772] - USB: serial: option: add LongSung M5710 module support (Torez Smith) [1942772] - USB: serial: option: add Quectel EM160R-GL (Torez Smith) [1942772] - CDC-NCM: remove "connected" log message (Torez Smith) [1942772] - usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression (Torez Smith) [1942772] - usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one (Torez Smith) [1942772] - usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion (Torez Smith) [1942772] - usb: dwc3: drd: Improve dwc3_get_extcon() style (Torez Smith) [1942772] - usb: dwc3: drd: Avoid error when extcon is missing (Torez Smith) [1942772] - USB: usbtmc: Bump USBTMC_API_VERSION value (Torez Smith) [1942772] - USB: usbtmc: Add separate USBTMC_IOCTL_GET_SRQ_STB (Torez Smith) [1942772] - USB: usbtmc: Add USBTMC_IOCTL_GET_STB (Torez Smith) [1942772] - USB: usbtmc: Fix reading stale status byte (Torez Smith) [1942772] - kcov, usbip: collect coverage from vhci_rx_loop (Torez Smith) [1942772] - USB: yurex: fix control-URB timeout handling (Torez Smith) [1942772] - usb: dwc3: meson-g12a: disable clk on error handling path in probe (Torez Smith) [1942772] - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure HPD first for HPD+IRQ request (Torez Smith) [1942772] - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). (Torez Smith) [1942772] - USB: cdc-acm: blacklist another IR Droid device (Torez Smith) [1942772] - thunderbolt: Use kmemdup instead of kzalloc and memcpy (Torez Smith) [1942772] - usb: ucsi: convert comma to semicolon (Torez Smith) [1942772] - usb: typec: tcpm: convert comma to semicolon (Torez Smith) [1942772] - usb: typec: tcpm: Update vbus_vsafe0v on init (Torez Smith) [1942772] - usb: typec: tcpci: Enable bleed discharge when auto discharge is enabled (Torez Smith) [1942772] - usb: typec: Add class for plug alt mode device (Torez Smith) [1942772] - USB: typec: tcpci: Add Bleed discharge to POWER_CONTROL definition (Torez Smith) [1942772] - USB: typec: tcpm: Add a 30ms room for tPSSourceOn in PR_SWAP (Torez Smith) [1942772] - USB: typec: tcpm: Fix PR_SWAP error handling (Torez Smith) [1942772] - USB: typec: tcpm: Hard Reset after not receiving a Request (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure cable generation value for USB4 (Torez Smith) [1942772] - net: usb: convert comma to semicolon (Torez Smith) [1942772] - USB: UAS: introduce a quirk to set no_write_same (Torez Smith) [1942772] - USB: serial: ftdi_sio: log the CBUS GPIO validity (Torez Smith) [1942772] - USB: serial: ftdi_sio: drop GPIO line checking dead code (Torez Smith) [1942772] - USB: serial: ftdi_sio: report the valid GPIO lines to gpiolib (Torez Smith) [1942772] - drivers: usb: atm: use atm_info() instead of atm_printk(KERN_INFO ... (Torez Smith) [1942772] - drivers: usb: atm: reduce noise (Torez Smith) [1942772] - USB: serial: option: add interface-number sanity check to flag handling (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable VSAFE0V signalling (Torez Smith) [1942772] - usb: typec: tcpci: Add support to report vSafe0V (Torez Smith) [1942772] - usb: typec: tcpm: Introduce vsafe0v for vbus (Torez Smith) [1942772] - usb: typec: tcpm: Clear send_discover in tcpm_check_send_discover (Torez Smith) [1942772] - usb: typec: tcpm: Pass down negotiated rev to update retry count (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Use correct response message bits (Torez Smith) [1942772] - xhci: Give USB2 ports time to enter U3 in bus suspend (Torez Smith) [1942772] - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI (Torez Smith) [1942772] - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP (Torez Smith) [1942772] - usb: xhci: Use temporary buffer to consolidate SG (Torez Smith) [1942772] - usb: xhci: Set quirk for XHCI_SG_TRB_CACHE_SIZE_QUIRK (Torez Smith) [1942772] - USB: legotower: fix logical error in recent commit (Torez Smith) [1942772] - USB: legousbtower: use usb_control_msg_recv() (Torez Smith) [1942772] - USB: add RESET_RESUME quirk for Snapscan 1212 (Torez Smith) [1942772] - usb: typec: tps6598x: Export some power supply properties (Torez Smith) [1942772] - usb: typec: tps6598x: Select USB_ROLE_SWITCH and REGMAP_I2C (Torez Smith) [1942772] - USB: core: drop pipe-type check from new control-message helpers (Torez Smith) [1942772] - USB: core: return -EREMOTEIO on short usb_control_msg_recv() (Torez Smith) [1942772] - USB: core: drop short-transfer check from usb_control_msg_send() (Torez Smith) [1942772] - USB: apple-mfi-fastcharge: Fix use after free in probe (Torez Smith) [1942772] - Revert "usb-storage: fix sdev->host->dma_dev" (Torez Smith) [1942772] - Revert "uas: fix sdev->host->dma_dev" (Torez Smith) [1942772] - Revert "uas: bump hw_max_sectors to 2048 blocks for SS or faster drives" (Torez Smith) [1942772] - USB: serial: cp210x: clean up dtr_rts() (Torez Smith) [1942772] - USB: serial: cp210x: refactor flow-control handling (Torez Smith) [1942772] - USB: serial: cp210x: drop flow-control debugging (Torez Smith) [1942772] - USB: serial: cp210x: set terminal settings on open (Torez Smith) [1942772] - USB: serial: cp210x: clean up line-control handling (Torez Smith) [1942772] - USB: serial: cp210x: return early on unchanged termios (Torez Smith) [1942772] - USB: serial: kl5kusb105: fix memleak on open (Torez Smith) [1942772] - USB: serial: ch341: sort device-id entries (Torez Smith) [1942772] - USB: serial: ch341: add new Product ID for CH341A (Torez Smith) [1942772] - USB: serial: option: fix Quectel BG96 matching (Torez Smith) [1942772] - can: pcan_usb_core: fix fall-through warnings for Clang (Torez Smith) [1942772] - usb: typec: stusb160x: fix power-opmode property with typec-power-opmode (Torez Smith) [1942772] - USB: serial: option: add support for Thales Cinterion EXS82 (Torez Smith) [1942772] - usb: typec: Add type sysfs attribute file for partners (Torez Smith) [1942772] - usb: common: ulpi: Constify static attribute_group struct (Torez Smith) [1942772] - usb: typec: Constify static attribute_group structs (Torez Smith) [1942772] - USB: core: Constify static attribute_group structs (Torez Smith) [1942772] - usb: typec: tcpm: Stay in SNK_TRY_WAIT_DEBOUNCE_CHECK_VBUS till Rp is seen (Torez Smith) [1942772] - usb: typec: tcpm: Disregard vbus off while in PR_SWAP_SNK_SRC_SOURCE_ON (Torez Smith) [1942772] - usb: typec: Expose Product Type VDOs via sysfs (Torez Smith) [1942772] - usb: pd: DFP product types (Torez Smith) [1942772] - usb: Fix fall-through warnings for Clang (Torez Smith) [1942772] - usbnet: ipheth: fix connectivity with iOS 14 (Torez Smith) [1942772] - USB: core: Change pK for __user pointers to px (Torez Smith) [1942772] - USB: core: Fix regression in Hercules audio card (Torez Smith) [1942772] - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO built-in usb-audio card (Torez Smith) [1942772] - can: kvaser_usb: Add new Kvaser hydra devices (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_hydra: Add support for new device variant (Torez Smith) [1942772] - can: kvaser_usb: Add new Kvaser Leaf v2 devices (Torez Smith) [1942772] - can: kvaser_usb: Add USB_{LEAF,HYDRA}_PRODUCT_ID_END defines (Torez Smith) [1942772] - USB: serial: option: add Fibocom NL668 variants (Torez Smith) [1942772] - usb: typec: Fix num_altmodes kernel-doc error (Torez Smith) [1942772] - r8153_ecm: avoid to be prior to r8152 driver (Torez Smith) [1942772] - net: usb: qmi_wwan: Set DTR quirk for MR400 (Torez Smith) [1942772] - usb: typec: Add plug num_altmodes sysfs attr (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix the compatible string (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix uninitialized return variable (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable auto discharge disconnect (Torez Smith) [1942772] - usb: typec: tcpci: Implement Auto discharge disconnect callbacks (Torez Smith) [1942772] - usb: typec: tcpm: Implement enabling Auto Discharge disconnect support (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix vbus stuck on upon diconnecting sink (Torez Smith) [1942772] - usb: typec: tcpci: frs sourcing vbus callback (Torez Smith) [1942772] - usb: typec: tcpm: frs sourcing vbus callback (Torez Smith) [1942772] - usb: typec: tcpm: Refactor logic for new-source-frs-typec-current (Torez Smith) [1942772] - usb: typec: Add number of altmodes partner attr (Torez Smith) [1942772] - usb: pd: Add captive Type C cable type (Torez Smith) [1942772] - USB: apple-mfi-fastcharge: Fix kfree after failed kzalloc (Torez Smith) [1942772] - usb: typec: Remove one bit support for the Thunderbolt rounded/non-rounded cable (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure Thunderbolt cable generation bits (Torez Smith) [1942772] - usb: typec: Correct the bit values for the Thunderbolt rounded/non-rounded cable support (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits (Torez Smith) [1942772] - cx82310_eth: fix error return code in cx82310_bind() (Torez Smith) [1942772] - usb: typec: qcom-pmic-typec: fix builtin build errors (Torez Smith) [1942772] - can: peak_usb: fix potential integer overflow on shift of a int (Torez Smith) [1942772] - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to can_put_echo_skb() (Torez Smith) [1942772] - usb: hcd.h: Remove RUN_CONTEXT (Torez Smith) [1942772] - USB: storage: avoid use of uninitialized values in error path (Torez Smith) [1942772] - usb: fix a few cases of -Wfallthrough (Torez Smith) [1942772] - usbnet: switch to core handling of rx/tx byte/packet counters (Torez Smith) [1942772] - qmi_wwan: switch to core handling of rx/tx byte/packet counters (Torez Smith) [1942772] - net: usb: fix spelling typo in cdc_ncm.c (Torez Smith) [1942772] - usb: typec: ucsi: Work around PPM losing change information (Torez Smith) [1942772] - usb: typec: ucsi: acpi: Always decode connector change information (Torez Smith) [1942772] - net/usb/r8153_ecm: support ECM mode for RTL8153 (Torez Smith) [1942772] - USB: serial: mos7720: fix parallel-port state restore (Torez Smith) [1942772] - USB: serial: remove write wait queue (Torez Smith) [1942772] - USB: serial: digi_acceleport: fix write-wakeup deadlocks (Torez Smith) [1942772] - USB: serial: keyspan_pda: drop redundant usb-serial pointer (Torez Smith) [1942772] - USB: serial: keyspan_pda: use BIT() macro (Torez Smith) [1942772] - USB: serial: keyspan_pda: add write-fifo support (Torez Smith) [1942772] - USB: serial: keyspan_pda: increase transmitter threshold (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write implementation (Torez Smith) [1942772] - USB: serial: keyspan_pda: refactor write-room handling (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write unthrottling (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write-wakeup use-after-free (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix stalled writes (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write deadlock (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix dropped unthrottle interrupts (Torez Smith) [1942772] - net: usb: r8152: Fix a couple of spelling errors in fw_phy_nc's docs (Torez Smith) [1942772] - net: usb: lan78xx: Remove lots of set but unused 'ret' variables (Torez Smith) [1942772] - net: usb: r8152: Provide missing documentation for some struct members (Torez Smith) [1942772] - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping (Torez Smith) [1942772] - can: peak_usb: add range checking in decode operations (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition (Torez Smith) [1942772] - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq (Torez Smith) [1942772] - dt-bindings: connector: Add property to set initial current cap for FRS (Torez Smith) [1942772] - usb: xhci: Remove in_interrupt() checks (Torez Smith) [1942772] - usbip: Remove in_interrupt() check (Torez Smith) [1942772] - usb: core: Replace in_interrupt() in comments (Torez Smith) [1942772] - usb: atm: Replace in_interrupt() usage in comment (Torez Smith) [1942772] - USB: sisusbvga: Make console support depend on BROKEN (Torez Smith) [1942772] - usb: host: xhci-mem: remove unneeded break (Torez Smith) [1942772] - usb: storage: freecom: remove unneeded break (Torez Smith) [1942772] - usb: misc: iowarrior: remove unneeded break (Torez Smith) [1942772] - usb: host: ehci-sched: add comment about find_tt() not returning error (Torez Smith) [1942772] - usb: dwc3: ep0: Fix delay status handling (Torez Smith) [1942772] - USB: serial: iuu_phoenix: remove unneeded break (Torez Smith) [1942772] - USB: serial: digi_acceleport: remove in_interrupt() usage (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Alder Lake-S (Torez Smith) [1942772] - net: usb: rtl8150: don't incorrectly assign random MAC addresses (Torez Smith) [1942772] - net: usbnet: use new function dev_fetch_sw_netstats (Torez Smith) [1942772] - net: usb: qmi_wwan: use new function dev_fetch_sw_netstats (Torez Smith) [1942772] - cx82310_eth: use netdev_err instead of dev_err (Torez Smith) [1942772] - cx82310_eth: re-enable ethernet mode after router reboot (Torez Smith) [1942772] - net: usbnet: remove driver version (Torez Smith) [1942772] - net: usb: qmi_wwan: add Cellient MPL200 card (Torez Smith) [1942772] - usbip: vhci_hcd: fix calling usb_hcd_giveback_urb() with irqs enabled (Torez Smith) [1942772] - net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails (Torez Smith) [1942772] - usbnet: Use fallthrough pseudo-keyword (Torez Smith) [1942772] - net/smscx5xx: change to of_get_mac_address() eth_platform_get_mac_address() (Torez Smith) [1942772] - net: usb: pegasus: Proper error handing when setting pegasus' MAC address (Torez Smith) [1942772] - usb: dwc3: gadget: Support up to max stream id (Torez Smith) [1942772] - usb: dwc2: Fix INTR OUT transfers in DDMA mode. (Torez Smith) [1942772] - usb: dwc3: of-simple: Add compatible string for Intel Keem Bay platform (Torez Smith) [1942772] - net: rtl8150: Use the new usb control message API. (Torez Smith) [1942772] - net: pegasus: Use the new usb control message API. (Torez Smith) [1942772] - usb: dwc3: gadget: Return early if no TRB update (Torez Smith) [1942772] - usb: dwc3: gadget: Keep TRBs in request order (Torez Smith) [1942772] - usb: dwc3: gadget: Revise setting IOC when no TRB left (Torez Smith) [1942772] - usb: dwc3: gadget: Look ahead when setting IOC (Torez Smith) [1942772] - usb: dwc3: gadget: Allow restarting a transfer (Torez Smith) [1942772] - usb: dwc3: Stop active transfers before halting the controller (Torez Smith) [1942772] - usb: dwc3: gadget: Rename misleading function names (Torez Smith) [1942772] - usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor preparing last TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Set IOC if not enough for extra TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Check for number of TRBs prepared (Torez Smith) [1942772] - usb: dwc3: gadget: Return the number of prepared TRBs (Torez Smith) [1942772] - usb: dwc3: ep0: Fix ZLP for OUT ep0 requests (Torez Smith) [1942772] - usb: dwc3: gadget: Improve TRB ZLP setup (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor preparing extra TRB (Torez Smith) [1942772] - usb: dwc3: gadget: Reclaim extra TRBs after request completion (Torez Smith) [1942772] - usb: dwc3: gadget: Check MPS of the request length (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor ep command completion (Torez Smith) [1942772] - usb: dwc3: allocate gadget structure dynamically (Torez Smith) [1942772] - usb: dwc3: core: add phy cleanup for probe error handling (Torez Smith) [1942772] - usb: dwc3: core: don't trigger runtime pm when remove driver (Torez Smith) [1942772] - usb: dwc3: debugfs: do not queue work if try to change mode on non-drd (Torez Smith) [1942772] - usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM functionality (Torez Smith) [1942772] - usb: dwc2: add support for APM82181 USB OTG (Torez Smith) [1942772] - usb: dwc-meson-g12a: Add support for USB on AXG SoCs (Torez Smith) [1942772] - usb: dwc3: gadget: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG (Torez Smith) [1942772] - usb: dwc3: debugfs: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: qcom: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: ep0: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: core: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: debug: fix checkpatch warning (Torez Smith) [1942772] - usb: dwc3: trace: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: ulpi: fix checkpatch warning (Torez Smith) [1942772] - usb: dwc3: meson: fix checkpatch errors and warnings (Torez Smith) [1942772] - usb: dwc3: debug: fix sparse warning (Torez Smith) [1942772] - usb: dwc3: meson: fix coccinelle WARNING (Torez Smith) [1942772] - usb: dwc3: qcom: Add interconnect support in dwc3 driver (Torez Smith) [1942772] - net: usb: net1080: Remove in_interrupt() comment (Torez Smith) [1942772] - net: usb: kaweth: Remove last user of kaweth_control() (Torez Smith) [1942772] - net: usb: kaweth: Replace kaweth_control() with usb_control_msg() (Torez Smith) [1942772] - net: usb: ax88179_178a: add MCT usb 3.0 adapter (Torez Smith) [1942772] - net: usb: ax88179_178a: fix missing stop entry in driver_info (Torez Smith) [1942772] - net: usb: ax88179_178a: add Toshiba usb 3.0 adapter (Torez Smith) [1942772] - Revert "usbip: Implement a match function to fix usbip" (Torez Smith) [1942772] - usb: dwc2: Fix parameter type in function pointer prototype (Torez Smith) [1942772] - usb: dwc3: core: Print warning on unsupported speed (Torez Smith) [1942772] - usb: dwc3: core: Properly default unspecified speed (Torez Smith) [1942772] - usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails (Torez Smith) [1942772] - usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command (Torez Smith) [1942772] - usb: dwc3: gadget: Resume pending requests after CLEAR_STALL (Torez Smith) [1942772] - can: peak_usb: convert to use le32_add_cpu() (Torez Smith) [1942772] - can: pcan_usb: add support of rxerr/txerr counters (Torez Smith) [1942772] - can: pcan_usb: Document the commands sent to the device (Torez Smith) [1942772] - can: mcba_usb: remove redundant initialization of variable err (Torez Smith) [1942772] - usb: dwc2: Always disable regulators on driver teardown (Torez Smith) [1942772] - usbip: simplify the return expression of usbip_core_init() (Torez Smith) [1942772] - rndis_host: increase sleep time in the query-response loop (Torez Smith) [1942772] - Revert "usb: dwc3: meson-g12a: fix shared reset control use" (Torez Smith) [1942772] - net: usb: dm9601: Add USB ID of Keenetic Plus DSL (Torez Smith) [1942772] - smsc95xx: add phylib support (Torez Smith) [1942772] - smsc95xx: use usbnet->driver_priv (Torez Smith) [1942772] - smsc95xx: remove redundant function arguments (Torez Smith) [1942772] - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() (Torez Smith) [1942772] - net: cdc_ncm: Fix build error (Torez Smith) [1942772] - tools: usb: move to tools buildsystem (Torez Smith) [1942772] - usbip: Implement a match function to fix usbip (Torez Smith) [1942772] - usb: dwc3: gadget: Handle ZLP for sg requests (Torez Smith) [1942772] - usb: dwc3: gadget: Fix handling ZLP (Torez Smith) [1942772] - usb: dwc3: gadget: Don't setup more than requested (Torez Smith) [1942772] - r8152: Use MAC address from correct device tree node (Torez Smith) [1942772] - usb: hso: remove bogus check for EINPROGRESS (Torez Smith) [1942772] - usb: hso: no complaint about kmalloc failure (Torez Smith) [1942772] - hso: fix bailout in error case of probe (Torez Smith) [1942772] - usb: dwc3: convert to devm_platform_ioremap_resource_byname (Torez Smith) [1942772] - net: lan78xx: replace bogus endpoint lookup (Torez Smith) [1942772] - net: lan78xx: fix transfer-buffer memory leak (Torez Smith) [1942772] - net: lan78xx: add missing endpoint sanity check (Torez Smith) [1942772] - usb: hso: check for return value in hso_serial_common_create() (Torez Smith) [1942772] - Revert "usb: dwc2: override PHY input signals with usb role switch support" (Torez Smith) [1942772] - Revert "usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs" (Torez Smith) [1942772] - usb: dwc3: gadget: when the started list is empty stop the active xfer (Torez Smith) [1942772] - usb: dwc3: gadget: make starting isoc transfers more robust (Torez Smith) [1942772] - usb: dwc3: gadget: add frame number mask (Torez Smith) [1942772] - usb: dwc2: Fix error path in gadget registration (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix shared reset control use (Torez Smith) [1942772] - usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs (Torez Smith) [1942772] - usb: dwc2: override PHY input signals with usb role switch support (Torez Smith) [1942772] - net: cdc_ncm: hook into set_rx_mode to admit multicast traffic (Torez Smith) [1942772] - net: cdc_ncm: add .ndo_set_rx_mode to cdc_ncm_netdev_ops (Torez Smith) [1942772] - net: usbnet: export usbnet_set_rx_mode() (Torez Smith) [1942772] - net: cdc_ether: export usbnet_cdc_update_filter (Torez Smith) [1942772] - net: cdc_ether: use dev->intf to get interface information (Torez Smith) [1942772] - ax88172a: fix ax88172a_unbind() failures (Torez Smith) [1942772] - usb: dwc2: gadget: Avoid pointless read of EP control register (Torez Smith) [1942772] - usb: dwc2: gadget: Make use of GINTMSK2 (Torez Smith) [1942772] - usb: dwc3: Replace HTTP links with HTTPS ones (Torez Smith) [1942772] - tools: usb: usbip: Replace HTTP links with HTTPS ones (Torez Smith) [1942772] - usb: hso: Fix debug compile warning on sparc32 (Torez Smith) [1942772] - usbip: Use fallthrough pseudo-keyword (Torez Smith) [1942772] - Documentation/driver-api: usb/URB: drop doubled word (Torez Smith) [1942772] - usb: dwc3: dwc3-qcom: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Jasper Lake (Torez Smith) [1942772] - usb: dwc2: Fix shutdown callback in platform (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Tiger Lake PCH -H variant (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for Quectel EG95 LTE modem (Torez Smith) [1942772] - smsc95xx: avoid memory leak in smsc95xx_bind (Torez Smith) [1942772] - smsc95xx: check return value of smsc95xx_reset (Torez Smith) [1942772] - usb: dwc2: gadget: Remove assigned but never used 'maxsize' (Torez Smith) [1942772] - usb: dwc3: dwc3-of-simple: Function headers are not good candidates for kerneldoc (Torez Smith) [1942772] - usb: dwc3: dwc3-haps: Function headers are not suitable for kerneldoc (Torez Smith) [1942772] - usb: dwc3: dwc3-omap: Do not read DMA status (Torez Smith) [1942772] - usb: dwc3: ulpi: File headers are not doc headers (Torez Smith) [1942772] - usb: dwc3: drd: File headers are not doc headers (Torez Smith) [1942772] - usbnet: ipheth: fix ipheth_tx()'s return type (Torez Smith) [1942772] - usbip: tools: add in man page how to load the client's module (Torez Smith) [1942772] - usbip: tools: fix build error for multiple definition (Torez Smith) [1942772] - usbip: tools: fix module name in man page (Torez Smith) [1942772] - Revert "usb: dwc3: exynos: Add support for Exynos5422 suspend clk" (Torez Smith) [1942772] - usb: dwc3: pci: Fix reference count leak in dwc3_pci_resume_work (Torez Smith) [1942772] - media: USB: cdc-acm: blacklist IR Droid / IR Toy device (Torez Smith) [1942772] - usbnet: smsc95xx: Fix use-after-free after removal (Torez Smith) [1942772] - usb: dwc2: Postponed gadget registration to the udc class driver (Torez Smith) [1942772] - usb: dwc2: use well defined macros for power_down (Torez Smith) [1942772] - net: usb: ax88179_178a: fix packet alignment padding (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix USB2 PHY initialization on G12A and A1 SoCs (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix error path when fetching the reset line fails (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit LE910C1-EUX composition (Torez Smith) [1942772] - usb: dwc3: keystone: Turn on USB3 PHY before controller (Torez Smith) [1942772] - usb: dwc2: Update Core Reset programming flow. (Torez Smith) [1942772] - usb: dwc3: gadget: Check for prepared TRBs (Torez Smith) [1942772] - usb: dwc3: Increase timeout for CmdAct cleared by device controller (Torez Smith) [1942772] - usb: dwc3: gadget: Use SET_EP_PRIME for NoStream (Torez Smith) [1942772] - usb: dwc3: gadget: Handle stream transfers (Torez Smith) [1942772] - usb: dwc3: gadget: Don't prepare beyond a transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Wait for transfer completion (Torez Smith) [1942772] - usb: dwc3: gadget: Handle XferComplete for streams (Torez Smith) [1942772] - usb: dwc3: gadget: Enable XferComplete event (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor TRB completion handler (Torez Smith) [1942772] - usb: dwc3: gadget: Check for in-progress END_TRANSFER (Torez Smith) [1942772] - usb: dwc3: Get MDWIDTH for DWC_usb32 (Torez Smith) [1942772] - usb: dwc3: Add support for DWC_usb32 IP (Torez Smith) [1942772] - usb: dwc3: use true,false for dwc->otg_restart_host (Torez Smith) [1942772] - usb: dwc2: gadget: move gadget resume after the core is in L0 state (Torez Smith) [1942772] - usb: dwc3: meson-g12a: add support for GXL and GXM SoCs (Torez Smith) [1942772] - usb: dwc3: meson-g12a: support the GXL/GXM DWC3 host phy disconnect (Torez Smith) [1942772] - usb: dwc3: meson-g12a: refactor usb init (Torez Smith) [1942772] - usb: dwc3: gadget: Continue to process pending requests (Torez Smith) [1942772] - r8152: support additional Microsoft Surface Ethernet Adapter variant (Torez Smith) [1942772] - r8152: Use MAC address from device tree if available (Torez Smith) [1942772] - net: usb: qmi_wwan: remove redundant assignment to variable status (Torez Smith) [1942772] - net: huawei_cdc_ncm: remove redundant assignment to variable ret (Torez Smith) [1942772] - net: usb: ax88179_178a: remove redundant assignment to variable ret (Torez Smith) [1942772] - usb: dwc3: select USB_ROLE_SWITCH (Torez Smith) [1942772] - usb: dwc3: pci: Enable extcon driver for Intel Merrifield (Torez Smith) [1942772] - dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg() (Torez Smith) [1942772] - usb: hso: correct debug message (Torez Smith) [1942772] - net: sierra_net: Remove unused inline function (Torez Smith) [1942772] - usb: dwc3: gadget: WARN on no-resource status (Torez Smith) [1942772] - usb: dwc3: gadget: Issue END_TRANSFER to retry isoc transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Store resource index of start cmd (Torez Smith) [1942772] - usb: dwc3: core: Use role-switch default dr_mode (Torez Smith) [1942772] - usb: dwc3: drd: Don't free non-existing irq (Torez Smith) [1942772] - usb: dwc3: gadget: Properly handle failed kick_transfer (Torez Smith) [1942772] - usb: dwc3: meson-g12a: refactor usb2 phy init (Torez Smith) [1942772] - usb: dwc3: meson-g12a: check return of dwc3_meson_g12a_usb_init (Torez Smith) [1942772] - usb: dwc3: meson-g12a: get the reset as shared (Torez Smith) [1942772] - usb: dwc3: meson-g12a: handle the phy and glue registers separately (Torez Smith) [1942772] - usb: dwc3: meson-g12a: specify phy names in soc data (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor dwc3_gadget_ep_dequeue (Torez Smith) [1942772] - usb: dwc3: gadget: Remove unnecessary checks (Torez Smith) [1942772] - usb: dwc3: gadget: Give back staled requests (Torez Smith) [1942772] - usb: dwc3: gadget: Properly handle ClearFeature(halt) (Torez Smith) [1942772] - usb: dwc3: support continuous runtime PM with dual role (Torez Smith) [1942772] - USB: dwc3: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for DW5816e (Torez Smith) [1942772] - net: usb: ax88179_178a: Implement ethtool_ops set_eeprom (Torez Smith) [1942772] - usb: dwc3: gadget: Fix request completion check (Torez Smith) [1942772] - USB: dwc2: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - usb: dwc3: gadget: Do link recovery for SS and SSP (Torez Smith) [1942772] - usb: dwc3: gadget: Properly set maxpacket limit (Torez Smith) [1942772] - usb: dwc3: Fix GTXFIFOSIZ.TXFDEP macro name (Torez Smith) [1942772] - Documentation: driver-api/usb/writing_usb_driver.rst Updates documentation links (Torez Smith) [1942772] - pegasus: Remove pegasus' own workqueue (Torez Smith) [1942772] - usb: dwc2: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - usb: host: hisilicon: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - usb: host: xhci-plat: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - net: qmi_wwan: add support for ASKEY WWHC050 (Torez Smith) [1942772] - usb: dwc3: fix up for role switch API change (Torez Smith) [1942772] - usb: dwc2: Silence warning about supplies during deferred probe (Torez Smith) [1942772] - usb: dwc2: Implement set_selfpowered() (Torez Smith) [1942772] - usb: dwc3: core: don't do suspend for device mode if already suspended (Torez Smith) [1942772] - usb: dwc3: Rework resets initialization to be more flexible (Torez Smith) [1942772] - usb: dwc3: Rework clock initialization to be more flexible (Torez Smith) [1942772] - usb: dwc3: Add support for role-switch-default-mode binding (Torez Smith) [1942772] - usb: dwc3: Registering a role switch in the DRD code. (Torez Smith) [1942772] - usb: dwc3: core: add support for disabling SS instances in park mode (Torez Smith) [1942772] - usb: dwc3: gadget: Wrap around when skip TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Don't clear flags before transfer ended (Torez Smith) [1942772] - usb: dwc3: Remove kernel doc annotation where it's not needed (Torez Smith) [1942772] - usb: dwc3: Add ACPI support for xHCI ports (Torez Smith) [1942772] - usb: dwc3: exynos: Add support for Exynos5422 suspend clk (Torez Smith) [1942772] - usb: dwc3: meson-g12a: Don't use ret uninitialized in dwc3_meson_g12a_otg_init (Torez Smith) [1942772] - usb: dwc3: trace: print enqueue/dequeue pointers too (Torez Smith) [1942772] - usb: dwc2: add support for STM32MP15 SoCs USB OTG HS and FS (Torez Smith) [1942772] - usb: dwc3: Add Amlogic A1 DWC3 glue (Torez Smith) [1942772] - cdc_ncm: Fix the build warning (Torez Smith) [1942772] - cdc_ncm: Implement the 32-bit version of NCM Transfer Block (Torez Smith) [1942772] - r8152: reject unsupported coalescing params (Torez Smith) [1942772] - usb: dwc3: gadget: Update chain bit correctly when using sg list (Torez Smith) [1942772] - r8152: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - r8152: check disconnect status after long sleep (Torez Smith) [1942772] - net: usb: qmi_wwan: restore mtu min/max values after raw_ip switch (Torez Smith) [1942772] - USB: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - r8152: use new helper tcp_v6_gso_csum_prep (Torez Smith) [1942772] - net: usb: cdc-phonet: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - usb: dwc3: qcom: Replace by (Torez Smith) [1942772] - usb: dwc3: gadget: Check for IOC/LST bit in TRB->ctrl fields (Torez Smith) [1942772] - usb: dwc2: Fix in ISOC request length checking (Torez Smith) [1942772] - usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows (Torez Smith) [1942772] - usb: dwc3: debug: fix string position formatting mixup with ret and len (Torez Smith) [1942772] - qmi_wwan: unconditionally reject 2 ep interfaces (Torez Smith) [1942772] - qmi_wwan: re-add DW5821e pre-production variant (Torez Smith) [1942772] - r8152: Add MAC passthrough support to new device (Torez Smith) [1942772] - r8152: disable DelayPhyPwrChg (Torez Smith) [1942772] - r8152: avoid the MCU to clear the lanwake (Torez Smith) [1942772] - r8152: don't enable U1U2 with USB_SPEED_HIGH for RTL8153B (Torez Smith) [1942772] - r8152: disable test IO for RTL8153B (Torez Smith) [1942772] - r8152: Disable PLA MCU clock speed down (Torez Smith) [1942772] - r8152: disable U2P3 for RTL8153B (Torez Smith) [1942772] - r8152: get default setting of WOL before initializing (Torez Smith) [1942772] - r8152: reset flow control patch when linking on for RTL8153B (Torez Smith) [1942772] - r8152: fix runtime resume for linking change (Torez Smith) [1942772] - usb: dwc3: pci: add ID for the Intel Comet Lake -V variant (Torez Smith) [1942772] - net: usb: lan78xx: Add .ndo_features_check (Torez Smith) [1942772] - usb: dwc2: Drop unlock/lock upon queueing a work item (Torez Smith) [1942772] - usb: dwc3: gadget: Remove END_TRANSFER delay (Torez Smith) [1942772] - usb: dwc3: gadget: Delay starting transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Check END_TRANSFER completion (Torez Smith) [1942772] - usb: dwc3: turn off VBUS when leaving host mode (Torez Smith) [1942772] - usb: dwc2: fix debugfs FIFO count (Torez Smith) [1942772] - usb: dwc2: Fix IN FIFO allocation (Torez Smith) [1942772] - usb: dwc2: Fix Stalling a Non-Isochronous OUT EP (Torez Smith) [1942772] - usb: dwc3: gadget: Clear DCTL.ULSTCHNGREQ before set (Torez Smith) [1942772] - usb: dwc2: Fix NULL qh in dwc2_queue_transaction (Torez Smith) [1942772] - usb: dwc3: gadget: Set link state to RX_Detect on disconnect (Torez Smith) [1942772] - usb: dwc3: gadget: Don't send unintended link state change (Torez Smith) [1942772] - r8152: add missing endpoint sanity check (Torez Smith) [1942772] - net: usb: lan78xx: limit size of local TSO packets (Torez Smith) [1942772] - qmi_wwan: Add support for Quectel RM500Q (Torez Smith) [1942772] - usbip: Fix unsafe unaligned pointer usage (Torez Smith) [1942772] - usb: dwc3: use proper initializers for property entries (Torez Smith) [1942772] - net: r8152: use skb_list_walk_safe helper for gso segments (Torez Smith) [1942772] - net: usb: lan78xx: fix possible skb leak (Torez Smith) [1942772] - net: ch9200: remove unnecessary return (Torez Smith) [1942772] - net: ch9200: use __func__ in debug message (Torez Smith) [1942772] - tools: usb: usbip: Get rid of driver name printout in README (Torez Smith) [1942772] - can: gs_usb: gs_usb_probe(): use descriptors of current altsetting (Torez Smith) [1942772] - can: kvaser_usb: fix interface sanity check (Torez Smith) [1942772] - usb: dwc3: gadget: Fix request complete check (Torez Smith) [1942772] - thunderbolt: Update documentation with the USB4 information (Torez Smith) [1942772] - usbip: Fix error path of vhci_recv_ret_submit() (Torez Smith) [1942772] - usbip: Fix receive error in vhci-hcd when using scatter-gather (Torez Smith) [1942772] - net: usb: lan78xx: Fix error message format specifier (Torez Smith) [1942772] - net: usb: lan78xx: Fix suspend/resume PHY register access error (Torez Smith) [1942772] - usb: dwc3: pci: add ID for the Intel Comet Lake -H variant (Torez Smith) [1942772] - usb: dwc3: ep0: Clear started flag on completion (Torez Smith) [1942772] - usb: dwc3: gadget: Clear started flag for non-IOC (Torez Smith) [1942772] - usb: dwc3: gadget: Fix logical condition (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_leaf: Fix some info-leaks to USB devices (Torez Smith) [1942772] - can: ucan: fix non-atomic allocation in completion handler (Torez Smith) [1942772] - net: usb: aqc111: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - net: usbnet: Fix -Wcast-function-type (Torez Smith) [1942772] - net: hso: Fix -Wcast-function-type (Torez Smith) [1942772] - ax88179_178a: add ethtool_op_get_ts_info() (Torez Smith) [1942772] - r8152: avoid to call napi_disable twice (Torez Smith) [1942772] - r8152: Re-order napi_disable in rtl8152_close (Torez Smith) [1942772] - ax88172a: fix information leak on short answers (Torez Smith) [1942772] - usb: dwc2: create debugfs directory under usb root (Torez Smith) [1942772] - usb: dwc3: create debugfs directory under usb root (Torez Smith) [1942772] - net: cdc_ncm: Signedness bug in cdc_ncm_set_dgram_size() (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for Foxconn T77W968 LTE modules (Torez Smith) [1942772] - usbip: Fix uninitialized symbol 'nents' in stub_recv_cmd_submit() (Torez Smith) [1942772] - USBIP: add config dependency for SGL_ALLOC (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for DW5821e with eSIM support (Torez Smith) [1942772] - CDC-NCM: handle incomplete transfer of MTU (Torez Smith) [1942772] - usbip: tools: fix fd leakage in the function of read_attr_usbip_status (Torez Smith) [1942772] - can: peak_usb: fix a potential out-of-sync while decoding packets (Torez Smith) [1942772] - can: usb_8dev: fix use-after-free on disconnect (Torez Smith) [1942772] - can: mcba_usb: fix use-after-free on disconnect (Torez Smith) [1942772] - can: peak_usb: report bus recovery as well (Torez Smith) [1942772] - can: gs_usb: gs_can_open(): prevent memory leak (Torez Smith) [1942772] - usb: Spelling s/enpoint/endpoint/ (Torez Smith) [1942772] - usb: dwc3: gadget: fix race when disabling ep with cancelled xfers (Torez Smith) [1942772] - usb: dwc3: of-simple: add a shutdown (Torez Smith) [1942772] - usbip: Fix free of unallocated memory in vhci tx (Torez Smith) [1942772] - usbip: tools: Fix read_usb_vudc_device() error path handling (Torez Smith) [1942772] - usb: dwc3: pci: prevent memory leak in dwc3_pci_probe (Torez Smith) [1942772] - usb: dwc3: remove the call trace of USBx_GFLADJ (Torez Smith) [1942772] - usb: dwc3: select CONFIG_REGMAP_MMIO (Torez Smith) [1942772] - r8152: check the pointer rtl_fw->fw before using it (Torez Smith) [1942772] - net: lan78xx: remove set but not used variable 'event' (Torez Smith) [1942772] - usb: dwc3: debug: Remove newline printout (Torez Smith) [1942772] - r8152: support firmware of PHY NC for RTL8153A (Torez Smith) [1942772] - r8152: move r8153_patch_request forward (Torez Smith) [1942772] - r8152: add checking fw_offset field of struct fw_mac (Torez Smith) [1942772] - r8152: rename fw_type_1 with fw_mac (Torez Smith) [1942772] - usb: dwc2: use a longer core rest timeout in dwc2_core_reset() (Torez Smith) [1942772] - usb: dwc3: Disable phy suspend after power-on reset (Torez Smith) [1942772] - r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2 (Torez Smith) [1942772] - net: usb: lan78xx: Connect PHY before registering MAC (Torez Smith) [1942772] - usb: hso: obey DMA rules in tiocmget (Torez Smith) [1942772] - r8152: support request_firmware for RTL8153 (Torez Smith) [1942772] - net: usb: sr9800: fix uninitialized local variable (Torez Smith) [1942772] - net: usb: ax88179_178a: write mac to hardware in get_mac_addr (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit 0x1050 composition (Torez Smith) [1942772] - usb: dwc3: Remove dev_err() on platform_get_irq() failure (Torez Smith) [1942772] - usb: dwc3: Switch to platform_get_irq_byname_optional() (Torez Smith) [1942772] - r8152: Set macpassthru in reset_resume callback (Torez Smith) [1942772] - qmi_wwan: add support for Cinterion CLS8 devices (Torez Smith) [1942772] - usbip: clean up an indentation issue (Torez Smith) [1942772] - usbip: vhci_hcd indicate failed message (Torez Smith) [1942772] - r8152: Add identifier names for function pointers (Torez Smith) [1942772] - r8152: Use guard clause and fix comment typos (Torez Smith) [1942772] - hso: fix NULL-deref on tty open (Torez Smith) [1942772] - net: usb: ax88179_178a: allow optionally getting mac address from device tree (Torez Smith) [1942772] - r8152: Factor out OOB link list waits (Torez Smith) [1942772] - usbnet: ignore endpoints with invalid wMaxPacketSize (Torez Smith) [1942772] - cdc_ncm: fix divide-by-zero caused by invalid wMaxPacketSize (Torez Smith) [1942772] - usbnet: sanity checking of packet sizes and device mtu (Torez Smith) [1942772] - r8152: adjust the settings of ups flags (Torez Smith) [1942772] - r8152: modify rtl8152_set_speed function (Torez Smith) [1942772] - usb: dwc3: remove generic PHY calibrate() calls (Torez Smith) [1942772] - usb: gadget: net2280: Move all "ll" registers in one structure (Torez Smith) [1942772] - usb: dwc3: gadget: Workaround Mirosoft's BESL check (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix suspend resume regulator unbalanced disables (Torez Smith) [1942772] - usb: gadget: composite: Set recommended BESL values (Torez Smith) [1942772] - usb: dwc3: gadget: Set BESL config parameter (Torez Smith) [1942772] - usb: dwc3: Separate field holding multiple properties (Torez Smith) [1942772] - usb: dwc3: don't set gadget->is_otg flag (Torez Smith) [1942772] - usb: dwc3: st: Add of_dev_put() in probe function (Torez Smith) [1942772] - usb: dwc3: st: Add of_node_put() before return in probe function (Torez Smith) [1942772] - r8152: add a helper function about setting EEE (Torez Smith) [1942772] - r8152: saving the settings of EEE (Torez Smith) [1942772] - net: usb: Delete unnecessary checks before the macro call “dev_kfree_skb” (Torez Smith) [1942772] - r8152: divide the tx and rx bottom functions (Torez Smith) [1942772] - r8152: fix accessing skb after napi_gro_receive (Torez Smith) [1942772] - r8152: change rx_copybreak and rx_pending through ethtool (Torez Smith) [1942772] - r8152: support skb_add_rx_frag (Torez Smith) [1942772] - r8152: use alloc_pages for rx buffer (Torez Smith) [1942772] - r8152: replace array with linking list for rx information (Torez Smith) [1942772] - r8152: separate the rx buffer size (Torez Smith) [1942772] - usb: dwc3: Use clk_bulk_prepare_enable() (Torez Smith) [1942772] - usb: dwc3: Use devres to get clocks (Torez Smith) [1942772] - usb: dwc3: remove generic PHYs forwarding for XHCI device (Torez Smith) [1942772] - USB: usbip: convert to use dev_groups (Torez Smith) [1942772] - usb: dwc3: Update soft-reset wait polling rate (Torez Smith) [1942772] - usb: dwc2: gadget: Fix kill_all_requests race (Torez Smith) [1942772] - usb: dwc3: omap: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usb: dwc3: keystone: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usb: dwc3: omap: squash include/linux/platform_data/dwc3-omap.h (Torez Smith) [1942772] - usb: dwc3: meson-g12a: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usbip: tools: fix GCC8 warning for strncpy (Torez Smith) [1942772] - usb: dwc3: Switch to use device_property_count_u32() (Torez Smith) [1942772] - usb: dwc2: Switch to use device_property_count_u32() (Torez Smith) [1942772] - can: kvaser_usb: Use struct_size() in alloc_candev() (Torez Smith) [1942772] - net: usb: Merge cpu_to_le32s + memcpy to put_unaligned_le32 (Torez Smith) [1942772] - ax88179_178a: Merge memcpy + le32_to_cpus to get_unaligned_le32 (Torez Smith) [1942772] - usbnet: smsc75xx: Merge memcpy + le32_to_cpus to get_unaligned_le32 (Torez Smith) [1942772] - net: lan78xx: Merge memcpy + lexx_to_cpus to get_unaligned_lexx (Torez Smith) [1942772] - bluetooth: eliminate the potential race condition when removing the HCI controller (Gopal Tiwari) [1971488]- bareudp: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - vxlan: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - geneve: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - RDMA/siw: Release xarray entry (Kamal Heib) [1971483] - RDMA/siw: Properly check send and receive CQ pointers (Kamal Heib) [1971483] - RDMA/siw: Fix a use after free in siw_alloc_mr (Kamal Heib) [1971483] - RDMA/rxe: Clear all QP fields if creation failed (Kamal Heib) [1971483] - RDMA/rxe: Fix a bug in rxe_fill_ip_info() (Kamal Heib) [1971483] - RDMA/rxe: Remove rxe_dma_device declaration (Kamal Heib) [1971483] - IB/hfi1: Fix error return code in parse_platform_config() (Kamal Heib) [1971483] - IB/hfi1: Remove unused function (Kamal Heib) [1971483] - RDMA/srpt: Fix error return code in srpt_cm_req_recv() (Kamal Heib) [1971483] - IB/isert: Fix a use after free in isert_connect_request (Kamal Heib) [1971483] - RDMA: Verify port when creating flow rule (Kamal Heib) [1971483] - RDMA/uverbs: Fix a NULL vs IS_ERR() bug (Kamal Heib) [1971483] - RDMA/core: Don't access cm_id after its destruction (Kamal Heib) [1971483] - RDMA/core: Prevent divide-by-zero error triggered by the user (Kamal Heib) [1971483] - RDMA/core: Add CM to restrack after successful attachment to a device (Kamal Heib) [1971483] - RDMA/core: Unify RoCE check and re-factor code (Kamal Heib) [1971483] - RDMA/core: Fix corrupted SL on passive side (Kamal Heib) [1971483] - mm: vmalloc: add cond_resched() in __vunmap() (Rafael Aquini) [1978469] - /proc/PID/smaps: Add PMD migration entry parsing (Nico Pache) [1977066] - s390: add 3f program exception handler (Nico Pache) [1977066] - x86/ioremap: Fix CONFIG_EFI=n build (Nico Pache) [1977066] - mm, slub: move slub_debug static key enabling outside slab_mutex (Nico Pache) [1977066] - mm, slub: enable slub_debug static key when creating cache with explicit debug flags (Nico Pache) [1977066] - locking/mutex: Remove repeated declaration (Nico Pache) [1977066] - percpu: make pcpu_nr_empty_pop_pages per chunk type (Nico Pache) [1977066] - mm/swap: don't SetPageWorkingset unconditionally during swapin (Nico Pache) [1977066] - s390/tlb: make cleared_pXs flags consistent with generic code (Nico Pache) [1977066] - mm, compaction: make fast_isolate_freepages() stay within zone (Nico Pache) [1977066] - mm/vmscan: restore zone_reclaim_mode ABI (Nico Pache) [1977066] - mm, compaction: move high_pfn to the for loop scope (Nico Pache) [1977066] - memblock: do not start bottom-up allocations with kernel_end (Nico Pache) [1977066] - mm, page_alloc: disable pcplists during memory offline (Nico Pache) [1977066] - mm, page_alloc: move draining pcplists to page isolation users (Nico Pache) [1977066] - mm, page_alloc: cache pageset high and batch in struct zone (Nico Pache) [1977066] - mm, page_alloc: simplify pageset_update() (Nico Pache) [1977066] - mm, page_alloc: fix core hung in free_pcppages_bulk() (Nico Pache) [1977066] - mm, page_alloc: remove setup_pageset() (Nico Pache) [1977066] - mm, page_alloc: calculate pageset high and batch once per zone (Nico Pache) [1977066] - mm, pcp: share common code between memory hotplug and percpu sysctl handler (Nico Pache) [1977066] - mm, page_alloc: clean up pageset high and batch update (Nico Pache) [1977066] - s390/uv: handle destroy page legacy interface (Nico Pache) [1977066] - mm/filemap: fix filemap_map_pages for THP (Nico Pache) [1977066] - mm: filemap: add missing FGP_ flags in kerneldoc comment for pagecache_get_page (Nico Pache) [1977066] - mm/filemap.c: rewrite pagecache_get_page documentation (Nico Pache) [1977066] - mm: filemap: clear idle flag for writes (Nico Pache) [1977066] - mm: document semantics of ZONE_MOVABLE (Nico Pache) [1977066] - mm/page_isolation: cleanup set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_isolation: exit early when pageblock is isolated in set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_alloc: tweak comments in has_unmovable_pages() (Nico Pache) [1977066] - mm: reuse only-pte-mapped KSM page in do_wp_page() (Nico Pache) [1977066] - mm/memory.c: skip spurious TLB flush for retried page fault (Nico Pache) [1977066] - /proc/PID/smaps: consistent whitespace output format (Nico Pache) [1977066] - mm/memcontrol.c: prevent missed memory.low load tears (Nico Pache) [1977066] - mm, memcg: prevent mem_cgroup_protected store tearing (Nico Pache) [1977066] - mm, memcg: prevent memory.min load/store tearing (Nico Pache) [1977066] - mm, mempolicy: fix up gup usage in lookup_node (Nico Pache) [1977066] - mm/page_ext.c: drop pfn_present() check when onlining (Nico Pache) [1977066] - drivers/base/memory.c: drop pages_correctly_probed() (Nico Pache) [1977066] - drivers/base/memory.c: drop section_count (Nico Pache) [1977066] - include/linux/mm.h: remove dead code totalram_pages_set() (Nico Pache) [1977066] - tools headers uapi: Sync asm-generic/mman-common.h with the kernel (Nico Pache) [1977066] - mm/memcg: Relocate tcpmem to below memory in struct mem_cgroup (Waiman Long) [1959772] - mm/memcg: optimize user context object stock access (Waiman Long) [1959772] - mm/memcg: improve refill_obj_stock() performance (Waiman Long) [1959772] - mm/memcg: cache vmstat data in percpu memcg_stock_pcp (Waiman Long) [1959772] - mm/memcg: move mod_objcg_state() to memcontrol.c (Waiman Long) [1959772] - mm: memcontrol: move PageMemcgKmem to the scope of CONFIG_MEMCG_KMEM (Waiman Long) [1959772] - mm: memcontrol: inline __memcg_kmem_{un}charge() into obj_cgroup_{un}charge_pages() (Waiman Long) [1959772] - mm: memcontrol: use obj_cgroup APIs to charge kmem pages (Waiman Long) [1959772] - mm: memcontrol: change ug->dummy_page only if memcg changed (Waiman Long) [1959772] - mm: memcontrol: directly access page->memcg_data in mm/page_alloc.c (Waiman Long) [1959772] - mm: memcontrol: introduce obj_cgroup_{un}charge_pages (Waiman Long) [1959772] - mm: memcontrol: slab: fix obtain a reference to a freeing memcg (Waiman Long) [1959772] - mm: memmap defer init doesn't work as expected (Baoquan He) [1906271] - mm: check nr_initialised with PAGES_PER_SECTION directly in defer_init() (Baoquan He) [1906271] - mm/memory_hotplug: mark pageblocks MIGRATE_ISOLATE while onlining memory (Baoquan He) [1906271] - mm, memory_hotplug: update pcp lists everytime onlining a memory block (Baoquan He) [1906271] - mm: pass migratetype into memmap_init_zone() and move_pfn_range_to_zone() (Baoquan He) [1906271] - nfs: account for selinux security context when deciding to share superblock (Scott Mayhew) [1927027] - nfs: remove unneeded null check in nfs_fill_super() (Scott Mayhew) [1927027] - lsm,selinux: add new hook to compare new mount to an existing mount (Scott Mayhew) [1927027] - libceph: allow addrvecs with a single NONE/blank address (Jeff Layton) [1972278] - scsi: megaraid_sas: Update driver version to 07.717.02.00-rc1 (Tomas Henzl) [1968170] - scsi: megaraid_sas: Handle missing interrupts while re-enabling IRQs (Tomas Henzl) [1968170] - scsi: megaraid_sas: Early detection of VD deletion through RaidMap update (Tomas Henzl) [1968170] - scsi: megaraid_sas: Fix resource leak in case of probe failure (Tomas Henzl) [1968170] - scsi: megaraid_sas: Send all non-RW I/Os for TYPE_ENCLOSURE device through firmware (Tomas Henzl) [1968170] - scsi: megaraid_sas: Use DEFINE_SPINLOCK() for spinlock (Tomas Henzl) [1968170] - scsi: scsi_devinfo: Add blacklist entry for HPE OPEN-V (Ewan D. Milne) [1927508] - drivers: do not build devm_platform_get_and_ioremap_resource() for s390x (Jaroslav Kysela) [1917388] - redhat: update ALSA configs and add regmap-sdw-mbq to redhat/filter-modules.sh (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix the return value in dpcm_apply_symmetry() (Jaroslav Kysela) [1917388] - alsa: control_led - fix initialization in the mode show callback (Jaroslav Kysela) [1917388] - ALSA: seq: Fix race of snd_seq_timer_open() (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ZBook Power G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: headphone and mic don't work on an Acer laptop (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix the context to call snd_pcm_stop_xrun() (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 840 Aero G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP EliteBook x360 1040 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Elite Dragonfly G2 (Jaroslav Kysela) [1917388] - ASoC: rt5682: Fix the fast discharge for headset unplugging in soundwire mode (Jaroslav Kysela) [1917388] - ASoC: tas2562: Fix TDM_CFG0_SAMPRATE values (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir: Remove fix for DMI entry on Lenovo 2020 platforms (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo 2020 AMD platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: reset enabled_cores state at suspend (Jaroslav Kysela) [1917388] - ASoC: fsl-asoc-card: Set .owner attribute when registering card. (Jaroslav Kysela) [1917388] - ASoC: topology: Fix spelling mistake "vesion" -> "version" (Jaroslav Kysela) [1917388] - ASoC: rt5659: Fix the lost powers for the HDA header (Jaroslav Kysela) [1917388] - ASoC: core: Fix Null-point-dereference in fmt_single_name() (Jaroslav Kysela) [1917388] - spi: pxa2xx: Drop useless comment in the pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Switch to use BIT() and GENMASK() in pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Update header block in pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Add SSC2 and SSPSP2 SSP registers (Jaroslav Kysela) [1917388] - ASoC: pxa: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: pxa: pxa-ssp: Remove redundant null check before clk_prepare_enable/clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: mmp-sspa: drop unneeded snd_soc_dai_set_drvdata (Jaroslav Kysela) [1917388] - ASoC: mmp-sspa: set phase two word length register (Jaroslav Kysela) [1917388] - ASoC: pxa: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: Fix 7/8 spaces indentation in Kconfig (Jaroslav Kysela) [1917388] - ASoC: jz4740-i2s: Remove manual DMA peripheral ID assignment (Jaroslav Kysela) [1917388] - ASoC: jz4740-i2s: add missed checks for clk_get() (Jaroslav Kysela) [1917388] - ASoC: Intel: fix error code cnl_set_dsp_D0() (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Unassign ram_read and read_write ops (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove haswell solution (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove sst_dsp_get_thread_context (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove unused DSP interface fields (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: remove unneeded semicolon (Jaroslav Kysela) [1917388] - catpt: Switch to use list_entry_is_head() helper (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Optimize applying user settings (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Correct clock selection for dai trigger (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Skip position update for unprepared streams (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Relax clock selection conditions (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Fix compilation when CONFIG_MODULES is disabled (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Cleanup after power routines streamlining (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Replace open coded variant of resource_intersection() (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Streamline power routines across LPT and WPT (Jaroslav Kysela) [1917388] - ASoC: Intel: haswell: Add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Change SSP2-Codec DAI id to 0 (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Drop compress-cpu-dai bits (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5651: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-rt5677: add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: set card and driver name dynamically (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-rt5650: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove rt5640 support for baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove max98090 support for baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: use inclusive language for SSP bclk/fsync (Jaroslav Kysela) [1917388] - ASoC: Intel: Atom: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: select WANT_DEV_COREDUMP (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: intel: SND_SOC_INTEL_KEEMBAY should depend on ARCH_KEEMBAY (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Add explicit DMADEVICES kconfig dependency (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: Remove duplicate kconfigs (Jaroslav Kysela) [1917388] - ASoC: remove zte zx drivers (Jaroslav Kysela) [1917388] - ASoC: codecs: wsa881x: add missing stream rates and format (Jaroslav Kysela) [1917388] - ASoC: wm_adsp: Remove unused control callback structure (Jaroslav Kysela) [1917388] - ASoC: wm8994: Fix PM disable depth imbalance on error (Jaroslav Kysela) [1917388] - ASoC: wm8903: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: wm8523: Fix a typo in a comment (Jaroslav Kysela) [1917388] - ASoC: wm8350: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: wm5102: Use get_unaligned_be16() for dac_comp_coeff (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: Set digital gain range correctly (Jaroslav Kysela) [1917388] - ASoC: wcd9335: Remove unnecessary conversion to bool (Jaroslav Kysela) [1917388] - ASoC: rt715: remove unused parameter (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: add the calibration functions (Jaroslav Kysela) [1917388] - ASoC: rt5682: clock driver must use the clock provider API (Jaroslav Kysela) [1917388] - ASoC: rt1015: enable BCLK detection after calibration (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Add support for more data formats (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Move format check into `set_fmt()` (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Rearrange operations in `hw_params()` (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Fix not setting word length if DAIFMT_CBS_CFS (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: Fix regulator_dev_lookup() fails for id "LDO_VAUD18" (Jaroslav Kysela) [1917388] - ASoC: Remove mt6359_platform_driver_remove (Jaroslav Kysela) [1917388] - ASoC: Fix vaud18 power leakage of mt6359 (Jaroslav Kysela) [1917388] - ASoC: es8316: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix Bitclock polarity inversion (Jaroslav Kysela) [1917388] - ASoC: cs35l33: fix an error code in probe() (Jaroslav Kysela) [1917388] - ASoC: cs35l34: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: wm8998: Fix PM disable depth imbalance on error (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd9335: Set digital gain range correctly (Jaroslav Kysela) [1917388] - ASoC: TSCS454: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: TSCS42xx: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: ts3a227e: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: tlv320: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: tas571x: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: tas*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tas2562: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: remove remnants of sirf prima/atlas audio codec (Jaroslav Kysela) [1917388] - ASoC: rt5645: add error checking to rt5645_probe function (Jaroslav Kysela) [1917388] - Revert "ASoC: rt5645: fix a NULL pointer dereference" (Jaroslav Kysela) [1917388] - ASoC: rt1015: modify calibration sequence for better performance (Jaroslav Kysela) [1917388] - ASoC: rk3328: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: pcm179x: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: pcm1789: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: nau8315: revise the power event of EN_PIN dapm widget for symmetry (Jaroslav Kysela) [1917388] - ASoC: nau8315: add codec driver (Jaroslav Kysela) [1917388] - ASoC: gtm601: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: es8328: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: es7241: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: es7134: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: da9055: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: da7219: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Add DAPM widget to set HP out to cap-less mode (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Don't change cap-couple setting in HP PMU/PMD (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Adjust timeouts for cap-coupled outputs (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Reset interrupt flags in bias PREPARE (Jaroslav Kysela) [1917388] - ASoC: codecs/jz47xx: Use regmap_{set,clear}_bits (Jaroslav Kysela) [1917388] - treewide: Use fallthrough pseudo-keyword (Jaroslav Kysela) [1917388] - ASoC: inno_rk3036: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: remove cancel_work_sync in runtime suspend (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: Add RX support (Jaroslav Kysela) [1917388] - ALSA: cx46xx: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Convert from cpu to data format (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing topology with PCM to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing empty topology with variants to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: tegra: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: tegra: Don't warn on probe deferral (Jaroslav Kysela) [1917388] - ASoC: tegra: tegra_rt5640: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: tegra: tegra_wm8753: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: tegra: trimslice.c: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: ti: davinci-evm: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: ti: davinci: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: ti: j721e-evm: Fix compiler warning when CONFIG_OF=n (Jaroslav Kysela) [1917388] - ASoC: ti: omap-abe-twl6040: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: ti: omap-mcsp: remove duplicate test (Jaroslav Kysela) [1917388] - ASoC: uniphier: Simplify the return expression of uniphier_aio_startup (Jaroslav Kysela) [1917388] - ASoC: uniphier: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: ux500: mop500: rename shadowing variable (Jaroslav Kysela) [1917388] - ASoC: ux500: mop500: align function prototype (Jaroslav Kysela) [1917388] - ALSA: x86: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams (Jaroslav Kysela) [1917388] - ASoC: cs42l56: fix up error handling in probe (Jaroslav Kysela) [1917388] - ASoC: cs42l52: Minor tidy up of error paths (Jaroslav Kysela) [1917388] - ASoC: cs42l51: manage mclk shutdown delay (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Wait for PLL to lock before switching to it (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Only start PLL if it is needed (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Wait at least 150us after writing SCLK_PRESENT (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Use bclk from hw_params if set_sysclk was not called (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Report jack and button detection (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Add Capture Support (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix channel width support (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Always wait at least 3ms after reset (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Don't enable/disable regulator at Bias Level (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix mixer volume control (Jaroslav Kysela) [1917388] - ASoC: cs*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: bd28623: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: alc5632: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: ak4458: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: ak4118: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: alc5623: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: ak5558: Correct the dai name for ak5552 (Jaroslav Kysela) [1917388] - ASoC: ak5558: change function name to ak5558_reset (Jaroslav Kysela) [1917388] - ASoC: ak5558: Add support for ak5552 (Jaroslav Kysela) [1917388] - ASoC: ak5558: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: ak5558: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: adau1977: remove platform data and move micbias bindings include (Jaroslav Kysela) [1917388] - ASoC: adau17x1: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: adau*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: Add ADAU1372 audio CODEC support (Jaroslav Kysela) [1917388] - ASoC: amd: fix for pcm_read() error (Jaroslav Kysela) [1917388] - ASoC: amd: drop S24_LE format support (Jaroslav Kysela) [1917388] - ASoC: amd: Add support for ALC1015P codec in acp3x machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: acp3x-pdm-dma: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: amd: raven: acp3x-i2s: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: acp3x-pdm-dma: remove unnecessary assignments (Jaroslav Kysela) [1917388] - ASoC: amd: fix acpi dependency kernel warning (Jaroslav Kysela) [1917388] - ASoC: amd: update spdx license for acp machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: Add support for RT5682 codec in machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: Adding DAI LINK for rt1015 codec (Jaroslav Kysela) [1917388] - ASoC: amd: Adding support for ALC1015 codec in machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: AMD RV RT5682 should depends on CROS_EC (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: remove invalid kernel-doc comment (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - refine DMI entries for some Lenovo products (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395 (Jaroslav Kysela) [1917388] - ASoC: amd: Replacing MSI with Legacy IRQ model (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad E14 Gen 2 (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe (broken BIOS) (Jaroslav Kysela) [1917388] - ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision) (Jaroslav Kysela) [1917388] - ASoC: amd: change clk_get() to devm_clk_get() and add missed checks (Jaroslav Kysela) [1917388] - ASoC: amd: Return -ENODEV for non-existing ACPI call (Jaroslav Kysela) [1917388] - ASoC: amd: support other audio modes for raven (Jaroslav Kysela) [1917388] - ASoC: topology: adhere to KUNIT formatting standard (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing various arguments to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ALSA: trident: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: sonicvibes: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: sis7019: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: remove unneeded break (Jaroslav Kysela) [1917388] - ALSA: hdsp: don't disable if not enabled (Jaroslav Kysela) [1917388] - ALSA: hdsp: hardware output loopback (Jaroslav Kysela) [1917388] - ALSA: pci: mixart: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ALSA: maestro: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: lola: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: intel8x0: Fix missing check in snd_intel8x0m_create (Jaroslav Kysela) [1917388] - ALSA: intel8x0: Don't update period unless prepared (Jaroslav Kysela) [1917388] - ALSA: hda: Avoid spurious unsol event handling during S3/S4 (Jaroslav Kysela) [1917388] - ALSA: ens1370: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: emu10k1: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: emu10k1: Use dma_set_mask_and_coherent to simplify code (Jaroslav Kysela) [1917388] - ALSA: ctxfi: fix comment syntax in file headers (Jaroslav Kysela) [1917388] - ALSA: ctxfi: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: ctxfi: cthw20k2: fix mask on conf to allow 4 bits (Jaroslav Kysela) [1917388] - ALSA: bt87x: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: azt3328: Assign boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: asihpi: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: dice: fix stream format for TC Electronic Konnekt Live at high sampling transfer frequency (Jaroslav Kysela) [1917388] - ALSA: dice: disable double_pcm_frames mode for M-Audio Profire 610, 2626 and Avid M-Box 3 Pro (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix amdtp_packet tracepoints event for packet_index field (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix calculation for size of IR context payload (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix check for the size of isochronous packet payload (Jaroslav Kysela) [1917388] - ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro (Jaroslav Kysela) [1917388] - ALSA: dice: fix stream format at middle sampling rate for Alesis iO 26 (Jaroslav Kysela) [1917388] - ALSA: bebob: enable to deliver MIDI messages for multiple ports (Jaroslav Kysela) [1917388] - ALSA: bebob: detect the number of available MIDI ports (Jaroslav Kysela) [1917388] - ALSA: bebob: code refactoring for stream format detection (Jaroslav Kysela) [1917388] - ALSA: dice: fix null pointer dereference when node is disconnected (Jaroslav Kysela) [1917388] - ALSA: fireface: fix to parse sync status register of latter protocol (Jaroslav Kysela) [1917388] - ALSA: bebob: remove an unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: fireface: remove unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: oxfw: remove an unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: dice: add support for Lexicon I-ONIX FW810s (Jaroslav Kysela) [1917388] - ALSA: firewire-tascam: Fix integer overflow in midi_port_work() (Jaroslav Kysela) [1917388] - ALSA: fireface: Fix integer overflow in transmit_midi_msg() (Jaroslav Kysela) [1917388] - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() (Jaroslav Kysela) [1917388] - ALSA: firewire: fix comparison to bool warning (Jaroslav Kysela) [1917388] - ALSA: firewire: Replace tasklet with work (Jaroslav Kysela) [1917388] - ALSA: firewire: convert tasklets to use new tasklet_setup() API (Jaroslav Kysela) [1917388] - ALSA: vx: Use roundup() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: pcsp: Fix fall-through warnings for Clang (Jaroslav Kysela) [1917388] - ALSA: dummy: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: aloop: Fix initialization of controls (Jaroslav Kysela) [1917388] - ALSA: aloop: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: atmel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1917388] - ASoC: SOF: ext_manifest: use explicit number for elem_type (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: allow for partial match in parent name (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: add helper to identify parent driver. (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: add new fields for mach_params (Jaroslav Kysela) [1917388] - ASoC: rt5682: Add a new property for the DMIC clock driving (Jaroslav Kysela) [1917388] - ALSA: hda: Change AZX_MAX_BUF_SIZE from 1GB to 4MB (Jaroslav Kysela) [1917388] - soundwire: sysfs: Constify static struct attribute_group (Jaroslav Kysela) [1917388] - ALSA: remove trailing semicolon in macro definition (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: don't send DAI_CONFIG IPC for older firmware (Jaroslav Kysela) [1917388] - ASoC: SOF: use current DAI config during resume (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: Update ADL P to use its own descriptor (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: add missing use_acpi_target_states for TGL platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: topology: remove useless code (Jaroslav Kysela) [1917388] - ASoC: SOF: Kconfig: fix typo of SND_SOC_SOF_PCI (Jaroslav Kysela) [1917388] - ASOC: SOF: simplify nocodec mode (Jaroslav Kysela) [1917388] - ASoC: SOF: pcm: export snd_pcm_dai_link_fixup (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: update set_mach_params() (Jaroslav Kysela) [1917388] - ASoC: SOF: change signature of set_mach_params() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: add Kconfig option for probe workqueues (Jaroslav Kysela) [1917388] - ASoC: SOF: Simplify sof_probe_complete handling for acpi/pci/of (Jaroslav Kysela) [1917388] - ASoC: SOF: core: Add missing error prints to device probe operation (Jaroslav Kysela) [1917388] - ASoC: SOF: match SSP config with pcm hw params (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: add hw params callback for SSP DAIs (Jaroslav Kysela) [1917388] - ASoC: SOF: parse multiple SSP DAI and hw configs (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: drop display power on/off in D0i3 flows (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: move ELH chip info (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: APL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: CNL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: ICL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: TGL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: TGL: fix EHL ops (Jaroslav Kysela) [1917388] - ASoC: SOF: core: harden shutdown helper (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: fix core status verification (Jaroslav Kysela) [1917388] - ASoC: SOF: add a helper to get topology configured mclk (Jaroslav Kysela) [1917388] - ASoC: SOF: only allocate debugfs cache buffers for IPC flood entries (Jaroslav Kysela) [1917388] - ASoC: SOF: fix debugfs initialisation error handling (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: enable async suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: turn off display power in resume (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: fix wrong poll bits in dsp power down (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: unregister DMIC device on probe error (Jaroslav Kysela) [1917388] - ALSA: hda: move Intel SoundWire ACPI scan to dedicated module (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: SoundWire: simplify Kconfig (Jaroslav Kysela) [1917388] - ASoC: SOF: pci: move DSP_CONFIG use to platform-specific drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: pci: split PCI into different drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: add sof_icl_ops for ICL platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: ACPI: avoid reverse module dependency (Jaroslav Kysela) [1917388] - ASoC: SOF: relax ABI checks and avoid unnecessary warnings (Jaroslav Kysela) [1917388] - ASoC: SOF: fix runtime pm usage mismatch after probe errors (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: add dev_dbg() when DMIC number is overridden (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: don't keep a temporary variable (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: detect DMIC number in SoundWire mixed config (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: SoundWire: refine ACPI match (Jaroslav Kysela) [1917388] - ASoC: SOF: HDA: (cosmetic) simplify hda_dsp_d0i3_work() (Jaroslav Kysela) [1917388] - ASoC: SOF: remove unused functions (Jaroslav Kysela) [1917388] - ASoC: SOF: fix string format for errors (Jaroslav Kysela) [1917388] - ASoC: SOF: add missing pm debug (Jaroslav Kysela) [1917388] - ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: release display power at link_power (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use hdac_ext fine-grained link management (Jaroslav Kysela) [1917388] - ASoC: SOF: debug: Fix a potential issue on string buffer termination (Jaroslav Kysela) [1917388] - ASoC: SOF: add be_hw_params_fixup() for ALH (Jaroslav Kysela) [1917388] - ASoC: SOF: topology: Prevent NULL pointer dereference with no TLV (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: hda-loader: use snd_sof_dsp_core_power_down/up APIs (Jaroslav Kysela) [1917388] - ASoC: SOF: Filter out unneeded core power up/downs (Jaroslav Kysela) [1917388] - ASoC: SOF: update dsp core power status in common APIs (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda-loader: keep init cores alive (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use snd_sof_dsp_core_power_up/down API (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Enable DMI L1 for trace (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: enable DMI L1 for D0i3-compatible streams (Jaroslav Kysela) [1917388] - ASoC: SOF: add a pointer to download repo in case FW request fails (Jaroslav Kysela) [1917388] - ASoC: SOF: SND_INTEL_DSP_CONFIG dependency (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: soundwire: fix select/depend unmet dependencies (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: initial support to AlderLake-P (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: tgl: do thorough remove at .shutdown() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: sof-pci-dev: add .shutdown() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: add snd_sof_device_shutdown() helper for shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: add .shutdown() callback to snd_sof_dsp_ops (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Avoid checking jack on system suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Modify existing helper to disable WAKEEN (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Resume codec to do jack detection (Jaroslav Kysela) [1917388] - ASoC: SOF: add mutex to protect the dsp_power_state access (Jaroslav Kysela) [1917388] - ASoC: SOF: Fix spelling mistake in Kconfig "ond" -> "and" (Jaroslav Kysela) [1917388] - ASoC: SOF: imx: update kernel-doc description (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: add SoundWire support for ADL-S (Jaroslav Kysela) [1917388] - ASoC: SOF: control: fix cppcheck warning in snd_sof_volume_info() (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: allow for coexistence between SOF and catpt drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: allow for coexistence between SOF and Atom/SST drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: acpi: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: initial support for Alderlake-S (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: fix Kconfig dependency for SND_INTEL_DSP_CONFIG (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: fix Kconfig punctuation and wording (Jaroslav Kysela) [1917388] - ASoC: SOF: Kconfig: fix Kconfig punctuation and wording (Jaroslav Kysela) [1917388] - ASoC: SOF: imx: fix Kconfig punctuation (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix 3-830 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Glavey TM800A550L tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Fix random noise at the HDMI output (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add quirk for new ADL-P Rvp (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ADL jack-less SoundWire configurations (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ADL SoundWire base configurations (Jaroslav Kysela) [1917388] - ASoC: Intel: kbl_da7219_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoc: Intel: board: add BE DAI link for WoV (Jaroslav Kysela) [1917388] - ASoC: Intel: kbl: Add MST route change to kbl machine drivers (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_rt5672: Set card.components string (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_rt5672: Add support for Bay Trail CR / SSP0 (Jaroslav Kysela) [1917388] - ASoC: Intel: Baytrail: Add quirk for the Dell Venue 10 Pro 5055 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: Unify the thinkpad10 and aegex10 byt-match quirks (Jaroslav Kysela) [1917388] - ASoC: Intel: Boards: cml_da7219_max98390: add capture stream for echo reference (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Hi8 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: add max98390 echo reference support (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: Add jack detect support (Jaroslav Kysela) [1917388] - ASoC: intel: atom: Remove 44100 sample-rate from the media and deep-buffer DAI descriptions (Jaroslav Kysela) [1917388] - ASoC: intel: atom: Stop advertising non working S24LE support (Jaroslav Kysela) [1917388] - ASoC: intel: sof_rt5682: use the topology mclk (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_rt5682: Add ALC1015Q-VB speaker amp support (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: skl-topology: fix -frame-larger-than (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add used AIF to the components string (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Enable jack-detect support on Asus T100TAF (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: remove unused static variable (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: remove TGL RVP mixed SoundWire/TDM config (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: remove unused TGL table with rt5682 only (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Compile when any configuration is selected (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: sof-wm8804: add check for PLL setting (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 10-p0XX OVCD current threshold (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID 7316R tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ACPI matching table for HP Spectre x360 (Jaroslav Kysela) [1917388] - ASoC: intel: sof_sdw: add trace for dai links (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: detect DMIC number based on mach params (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add mic:dmic and cfg-mics component strings (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add quirk for HP Spectre x360 convertible (Jaroslav Kysela) [1917388] - ASoC: Intel: sof-sdw: indent and add quirks consistently (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: reorganize quirks by generation (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: max98373: get dapm from cpu_dai (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: Add machine driver for BYT/WM5102 (Jaroslav Kysela) [1917388] - ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr() (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Support IEC958 encoded PCM format (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A3E (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A32 (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E (Jaroslav Kysela) [1917388] - ASoC: Intel: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Wake up device before configuring SSP port (Jaroslav Kysela) [1917388] - ASoC: Intel: remove duplicate MODULE_LICENSE/DESCRIPTION tags (Jaroslav Kysela) [1917388] - ASoC: Intel: adl: remove sof_fw_filename setting in ADL snd_soc_acpi_mach (Jaroslav Kysela) [1917388] - ASoC: Intel: common: add ACPI matching tables for Alder Lake (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Zero snd_ctl_elem_value (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete (Jaroslav Kysela) [1917388] - ASoC: intel: skl: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Move snd_soc_dai_set_tdm_slot call to cht_codec_fixup (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Mele PCG03 Mini PC (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_INTERNAL_MIC_MAP input-mapping (Jaroslav Kysela) [1917388] - ASoC: Intel: byt/cht: set pm ops dynamically (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove sst_pdata structure (Jaroslav Kysela) [1917388] - ASoC: Intel: Make atom components independent of sst-dsp (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST-legacy specific constants (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove unused DSP operations (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST firmware components (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST ACPI component (Jaroslav Kysela) [1917388] - ASoC: Intel: Select catpt and deprecate haswell (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-5677: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-5650: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: haswell: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Simple sysfs attributes (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Event tracing (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Device driver lifecycle (Jaroslav Kysela) [1917388] - drivers: provide devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: PCM operations (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Firmware loading and context restore (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Define DSP operations (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Add IPC message handlers (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Implement IPC protocol (Jaroslav Kysela) [1917388] - ASoC: Intel: Add catpt base members (Jaroslav Kysela) [1917388] - resource: Introduce resource_intersection() for overlapping resources (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for ARCHOS Cesium 140 (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: byt/cht: set card and driver name at run time (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_SPEAKERS quirk-flag (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Enable DMA transfer mode (Jaroslav Kysela) [1917388] - ASoC: Intel: keembay: use inclusive language for bclk and fsync (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcht_es8316: Remove comment about SSP0 being untested (Jaroslav Kysela) [1917388] - ASoC: rt1015: remove bclk_ratio (Jaroslav Kysela) [1917388] - ASoC: cs42l73: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: cs53l30: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: sti-sas: add missing MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Regmap must use_single_read/write (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: fix the function number of SDCA control for feature unit 0x1E (Jaroslav Kysela) [1917388] - ASoC: da7219: do not request a new clock consummer reference (Jaroslav Kysela) [1917388] - ASoC: max98088: fix ni clock divider calculation (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: add the notification when volume changed (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: change capture switch controls (Jaroslav Kysela) [1917388] - ASoC: da7219: properly get clk from the provider (Jaroslav Kysela) [1917388] - ASoC: wcd934x: use the clock provider API (Jaroslav Kysela) [1917388] - ASoC: adau17x1: Avoid overwriting CHPF (Jaroslav Kysela) [1917388] - ASoC: ak4458: enable daisy chain (Jaroslav Kysela) [1917388] - ASoC: rt1015p: add support on format S32_LE (Jaroslav Kysela) [1917388] - ASoC: rt286: Generalize support for ALC3263 codec (Jaroslav Kysela) [1917388] - ASoC: rt298: Configure combo jack for headphones (Jaroslav Kysela) [1917388] - ASoC: rt286: Configure combo jack for headphones (Jaroslav Kysela) [1917388] - ASoC: sigmadsp: Disable cache mechanism for readbacks (Jaroslav Kysela) [1917388] - ASoC: rt286: Make RT286_SET_GPIO_* readable and writable (Jaroslav Kysela) [1917388] - ASoC: rt286: Fix upper byte in DMIC2 configuration (Jaroslav Kysela) [1917388] - ASoC: ak4458: check reset control status (Jaroslav Kysela) [1917388] - ASoC: codecs: rt5682: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt715: remove kcontrols which no longer be used (Jaroslav Kysela) [1917388] - ASoC: rt715: add main capture switch and main capture volume (Jaroslav Kysela) [1917388] - ASoC: rt715: modification for code simplicity (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: Fix missing IRQF_ONESHOT as only threaded handler (Jaroslav Kysela) [1917388] - ASoC: cs35l35: remove unused including (Jaroslav Kysela) [1917388] - ASoC: ak5558: correct reset polarity (Jaroslav Kysela) [1917388] - ASoC: cs35l36: Fix an error handling path in 'cs35l36_i2c_probe()' (Jaroslav Kysela) [1917388] - ASoC: cs35l35: Fix an error handling path in 'cs35l35_i2c_probe()' (Jaroslav Kysela) [1917388] - ASoC: wcd9335: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt1019: remove registers to sync with rt1019 datasheet (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: wcd934x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: tas2770: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: cx2072x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt1019: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: add AIC3106 (Jaroslav Kysela) [1917388] - ASoC: codecs: wsa881x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: codecs: Fix runtime PM imbalance in tas2552_probe (Jaroslav Kysela) [1917388] - ASoC: rt1011: remove pack_id check in rt1011 (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: add SPI support (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: move I2C to separated file (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: rename probe function (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: move model definitions (Jaroslav Kysela) [1917388] - ASoC: max98390: Add support for tx slot configuration. (Jaroslav Kysela) [1917388] - ASoC: ak5558: Fix s/show/slow/ typo (Jaroslav Kysela) [1917388] - ASoC: tlv320aic32x4: Register clocks before registering component (Jaroslav Kysela) [1917388] - ASoC: tlv320aic32x4: Increase maximum register in regmap (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add a rt5670_components() helper (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add a quirk for the Dell Venue 10 Pro 5055 (Jaroslav Kysela) [1917388] - ASoC: da732x: simplify code (Jaroslav Kysela) [1917388] - ASoC: lm49453: fix useless assignment before return (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: Fix spelling mistake "reate" -> "create" (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: add MT6359 accdet jack driver (Jaroslav Kysela) [1917388] - ASoC: max98373: Added 30ms turn on/off time delay (Jaroslav Kysela) [1917388] - ASoC: max98373: Changed amp shutdown register as volatile (Jaroslav Kysela) [1917388] - ASoC: wm8960: Remove bitclk relax condition in wm8960_configure_sysclk (Jaroslav Kysela) [1917388] - ASoC: max98373: Added controls for autorestart config (Jaroslav Kysela) [1917388] - ASoC: rt1015: Add bclk detection and dc detection (Jaroslav Kysela) [1917388] - ASoC: wm8960: Fix wrong bclk and lrclk with pll enabled for some chips (Jaroslav Kysela) [1917388] - ASoC: rt1019: make symbol 'rt1019_i2c_driver' static (Jaroslav Kysela) [1917388] - ASoC: rt1019: add rt1019 amplifier driver (Jaroslav Kysela) [1917388] - ASoC: tscs454: remove useless test on PLL disable (Jaroslav Kysela) [1917388] - ASoC: tlv320dac33: clarify expression (Jaroslav Kysela) [1917388] - ASoC: tas2770: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: tas2562: remove warning on return value (Jaroslav Kysela) [1917388] - ASoC: tas2562: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: sti-sas: remove unused struct members (Jaroslav Kysela) [1917388] - ASoC: sigmadsp: align function prototype (Jaroslav Kysela) [1917388] - ASoC: pcm1681: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: nau8825: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: mt6359: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: mt6358: remove useless initializations (Jaroslav Kysela) [1917388] - ASoC: max98090: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: remove unused spk_mask member (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: align function arguments (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: remove useless initializations (Jaroslav Kysela) [1917388] - ASoC: da7219-aad: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: cx2070x: remove duplicate else branch (Jaroslav Kysela) [1917388] - ASoC: cx2070x: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: adau1977: remove useless return (Jaroslav Kysela) [1917388] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Jaroslav Kysela) [1917388] - ASoC: ad1836: remove useless return (Jaroslav Kysela) [1917388] - ASoC: ab8500-codec: remove useless structure (Jaroslav Kysela) [1917388] - ASoC: rt711: add snd_soc_component remove callback (Jaroslav Kysela) [1917388] - ASoC: rt5659: Update MCLK rate in set_sysclk() (Jaroslav Kysela) [1917388] - ASoC: rt5640: Rename 'Mono DAC Playback Volume' to 'DAC2 Playback Volume' (Jaroslav Kysela) [1917388] - ASoC: rt1015p: add acpi device id for rt1015p (Jaroslav Kysela) [1917388] - ASoC: wm_hubs: align function prototype (Jaroslav Kysela) [1917388] - ASoC: wm_adsp: simplify return value (Jaroslav Kysela) [1917388] - ASoC: wm8996: clarify expression (Jaroslav Kysela) [1917388] - ASoC: wm8994: align function prototype (Jaroslav Kysela) [1917388] - ASoC: wm8978: clarify expression (Jaroslav Kysela) [1917388] - ASoC: wm8958-dsp2: rename local 'control' arrays (Jaroslav Kysela) [1917388] - ASoC: arizona: fix function argument (Jaroslav Kysela) [1917388] - ASoC: wm2200: remove unused structure (Jaroslav Kysela) [1917388] - ASoC: rt5682: add delay time of workqueue to control next IRQ event (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Remove unused including (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Fix return value check in rt715_sdca_sdw_probe() (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Set clock source for both ways of stream (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Provide finer control on playback path (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Disable regulators if probe fails (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Remove power if the driver is being removed (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: Add RT711 SDCA vendor-specific driver (Jaroslav Kysela) [1917388] - ASoC: rt5645: The ALC3270 variant does not have a headset-mic pin (Jaroslav Kysela) [1917388] - ASoC: rt5645: Move rt5645_platform_data to sound/soc/codecs/rt5645.c (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Remove superfluous error message (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Add RT715 sdca vendor-specific driver (Jaroslav Kysela) [1917388] - ASoC: wm8962: Relax bit clock divider searching (Jaroslav Kysela) [1917388] - ASoC: rt1316: Fix return value check in rt1316_sdw_probe() (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: Fix identation of .driver elements (Jaroslav Kysela) [1917388] - ASoC: codec: Omit superfluous error message in jz4760_codec_probe() (Jaroslav Kysela) [1917388] - ASoC: sigmadsp-regmap: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ASoC: rt5631: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ASoC: jz4760: fix set but not used warning (Jaroslav Kysela) [1917388] - ASoC: cs4270: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: rt5682: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5677: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: rt5677: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5670: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5668: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: rt5668: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5665: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5663: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5660: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5659: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5651: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: rt5651: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5645: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5645: use logical OR (Jaroslav Kysela) [1917388] - ASoC: rt5640: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1308: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1305: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1016: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1015: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1011: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1011: remove redundant test (Jaroslav Kysela) [1917388] - ASoC: rt1011: use logical OR (Jaroslav Kysela) [1917388] - ASoC: wm8524: Do not print probe defer error (Jaroslav Kysela) [1917388] - ASoC: codecs: nau8825: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: rt1316: Add RT1316 SDCA vendor-specific driver (Jaroslav Kysela) [1917388] - ASoc: rt5631: Constify static struct coeff_clk_div (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct acpi_device_id (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct sdw_slave_ops (Jaroslav Kysela) [1917388] - ASoC: wcd934x: remove useless return (Jaroslav Kysela) [1917388] - ASoC: wcd9335: clarify return value (Jaroslav Kysela) [1917388] - ASoC: wcd-clsh-v2: align function prototypes (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: add a sanity check in set channel map (Jaroslav Kysela) [1917388] - ASoC: es8316: Simplify adc_pga_gain_tlv table (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe (Jaroslav Kysela) [1917388] - ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1917388] - ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add emulated 'DAC1 Playback Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove ADC vol-ctrl mute bits poking from Sto1 ADC mixer settings (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove 'HP Playback Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove 'OUT Channel Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt1015: fix i2c communication error (Jaroslav Kysela) [1917388] - ASoC: codec: Add driver for JZ4760 internal codec (Jaroslav Kysela) [1917388] - ASoC: codec/ingenic: Depend on MACH_INGENIC (Jaroslav Kysela) [1917388] - ASoC: codec: hdmi-codec: Support IEC958 encoded PCM format (Jaroslav Kysela) [1917388] - ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during system shutdown (Jaroslav Kysela) [1917388] - ASoC: rt5682: do nothing in rt5682_suspend/resume in sdw mode (Jaroslav Kysela) [1917388] - ASoC: rt5682-sdw: cancel_work_sync() in .remove and .suspend (Jaroslav Kysela) [1917388] - ASoC: rt711-sdw: use cancel_work_sync() for .remove (Jaroslav Kysela) [1917388] - ASoC: rt700-sdw: use cancel_work_sync() in .remove as well as .suspend (Jaroslav Kysela) [1917388] - ASoC: mt6359: reduce log verbosity for optional DT properties (Jaroslav Kysela) [1917388] - ASoC: codecs: add missing max_register in regmap config (Jaroslav Kysela) [1917388] - ASoC: cpcap: fix microphone timeslot mask (Jaroslav Kysela) [1917388] - ASoC: rt5659: Add Kconfig prompt (Jaroslav Kysela) [1917388] - ASoC: max98373: Fixes a typo in max98373_feedback_get (Jaroslav Kysela) [1917388] - ASoC: ak4458: correct reset polarity (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove connection with LDO2 in DAPM graph (Jaroslav Kysela) [1917388] - ASoC: ml26124: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: lm49453: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: inno_rk3036: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: cx2072x: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: alc5632: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ab8500: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: lochnagar-sc: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: mt6660: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: mc13783: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ssm2602: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: zl38060: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: jz4740: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ak*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tscs*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: max*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: es*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: da*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: nau*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: rt*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tlv*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: wm*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: remove sirf prima/atlas drivers (Jaroslav Kysela) [1917388] - ASoC: codecs: soundwire: increase resume timeout (Jaroslav Kysela) [1917388] - ASoC: es8316: Fix possible NULL pointer deref in es8316_disable_jack_detect() (Jaroslav Kysela) [1917388] - ASoC: rt5682: enable fast discharge for headset unplugging (Jaroslav Kysela) [1917388] - ASoC: rt5682: fix getting the wrong device id when the suspend_stress_test (Jaroslav Kysela) [1917388] - ASoC: rt5645: Enable internal microphone and JD on ECS EF20 (Jaroslav Kysela) [1917388] - ASoC: rt5645: add inv_hp_det flag (Jaroslav Kysela) [1917388] - ASoC: rt5645: Add ACPI-defined GPIO for ECS EF20 series (Jaroslav Kysela) [1917388] - ASoC: rt5645: Introduce mapping for ACPI-defined GPIO (Jaroslav Kysela) [1917388] - ASoC: rt1015: re-calibrate again when resuming (Jaroslav Kysela) [1917388] - ASoC: rt5645: Remove the redundant delay time (Jaroslav Kysela) [1917388] - ASoC: rt1015: remove unneeded variables in rt1015_priv (Jaroslav Kysela) [1917388] - ASoC: rt1015: refactor retry loop and rt1015_priv allocation (Jaroslav Kysela) [1917388] - ASoC: rt1015: return error if any when setting bypass_boost (Jaroslav Kysela) [1917388] - ASoC: rt1015: save boost_mode only if valid (Jaroslav Kysela) [1917388] - ASoC: rt1015: sort header inclusions (Jaroslav Kysela) [1917388] - ASoC: Intel: common: Fix some typos (Jaroslav Kysela) [1917388] - ASoC: soc.h: remove for_each_rtd_dais_rollback() (Jaroslav Kysela) [1917388] - ASoC: soc.h: return error if multi platform at snd_soc_fixup_dai_links_platform_name() (Jaroslav Kysela) [1917388] - ASoC: soc.h: fixup return timing for snd_soc_fixup_dai_links_platform_name() (Jaroslav Kysela) [1917388] - ASoC: soc.h: add asoc_link_to_cpu/codec/platform() macro (Jaroslav Kysela) [1917388] - ASoC: add soc-jack.h (Jaroslav Kysela) [1917388] - ASoC: soc-dai.h: Align the word of comment for SND_SOC_DAIFMT_CBC_CFC (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix always-false condition (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix signed/unsigned issue (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: ignore dummy-DAI at soc_pcm_params_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-utils: add snd_soc_component_is_dummy() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate DAI name if soc_pcm_params_symmetry() failed (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't use "name" on __soc_pcm_params_symmetry() macro (Jaroslav Kysela) [1917388] - ASoC: core: Don't set platform name when of_node is set (Jaroslav Kysela) [1917388] - ASoC: soc-compress: lock pcm_mutex to resolve lockdep error (Jaroslav Kysela) [1917388] - ASoC: soc-core: use device_unregister() if rtd allocation failed (Jaroslav Kysela) [1917388] - ASoC: soc-core: add comment for rtd freeing (Jaroslav Kysela) [1917388] - ASoC: soc-component: Add snd_soc_pcm_component_ack (Jaroslav Kysela) [1917388] - ASoC: don't indicate error message for snd_soc_[pcm_]component_xxx() (Jaroslav Kysela) [1917388] - ASoC: don't indicate error message for snd_soc_[pcm_]dai_xxx() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't indicate error message for dpcm_be_dai_hw_free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't indicate error message for soc_pcm_hw_free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_prepare() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_hw_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_startup() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_run_update_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_be_dai_trigger() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_path_get() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_prepare() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_hw_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_open() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: share DPCM BE DAI stop operation (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove unneeded !rtd->dai_link check (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fixup dpcm_be_dai_startup() user count (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_hw_sanity_check() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_update_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: direct copy at snd_soc_set_runtime_hwparams() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_cpu/codec_dai_name() macro (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: check DAI activity under soc_pcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix DMI handling (Jaroslav Kysela) [1917388] - ASoC: soc-dai: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add error log (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove shadowing variable (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove redundant assignment (Jaroslav Kysela) [1917388] - ASoC: soc-ops: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: unpack dpcm_set_fe_runtime() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_runtime_setup() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_runtime_setup_fe() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: unpack dpcm_init_runtime_hw() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove strange format storing (Jaroslav Kysela) [1917388] - ASoC: soc-core: Prevent warning if no DMI table is present (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix hw param limits calculation for multi-DAI (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix hwparams min/max init for dpcm (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_format() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_chan() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_rate() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: change error message to debug message (Jaroslav Kysela) [1917388] - ASoC: dapm: use component prefix when checking widget names (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fixup snd_pcm_limit_hw_rates() timing (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: use snd_pcm_hardware at dpcm_runtime_merge_xxx() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_create_pcm() and simplify soc_new_pcm() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_get_playback_capture() and simplify soc_new_pcm() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: tidyup pcm setting (Jaroslav Kysela) [1917388] - ASoC: soc-component: fix undefined reference to __ffssi2 (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_read/write_field() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: cleanup soc_pcm_params_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: cleanup soc_pcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-dai.h: remove symmetric_rates/samplebits (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_set_dai_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_set_be_update_state() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: move dpcm_set_fe_update_state() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: Fix an uninitialized error code (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: return correct -ERRNO in failure path (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: disconnect BEs if the FE is not ready (Jaroslav Kysela) [1917388] - ASoC: dapm: remove widget from dirty list on free (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: care trigger rollback (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove dpcm_do_trigger() (Jaroslav Kysela) [1917388] - ASoC: pcm: send DAPM_STREAM_STOP event in dpcm_fe_dai_shutdown (Jaroslav Kysela) [1917388] - ASoC: soc-core: tidyup jack.h (Jaroslav Kysela) [1917388] - ASoC: soc-core: add soc_dapm_suspend_resume() (Jaroslav Kysela) [1917388] - ASoC: soc-core: add soc_playback_digital_mute() (Jaroslav Kysela) [1917388] - ASoC: soc-compress: add soc_compr_clean() and call it from soc_compr_open/free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_link_compr_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_component_compr_open/free() (Jaroslav Kysela) [1917388] - ASoC: soc-dai: add mark for snd_soc_dai_compr_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-compress: move soc_compr_free() next to soc_compr_open() (Jaroslav Kysela) [1917388] - ASoC: pcm: call snd_soc_dapm_stream_stop() in soc_pcm_hw_clean (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_metadata() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_set_metadata() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_copy() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_pointer() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_ack() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_codec_caps() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_caps() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_params() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_set_params() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_trigger() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_open() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: Get all BEs along DAPM path (Jaroslav Kysela) [1917388] - ASoC: soc-core: Fix component name_prefix parsing (Jaroslav Kysela) [1917388] - ASoC: soc-compress: assume SNDRV_PCM_STREAM_xxx and SND_COMPRESS_xxx are same (Jaroslav Kysela) [1917388] - ASoC: soc-compress: tidyup STREAM vs COMPRESS (Jaroslav Kysela) [1917388] - ASoC: soc-topology: clarify expression (Jaroslav Kysela) [1917388] - ASoC: sync parameter naming : rate / sample_bits (Jaroslav Kysela) [1917388] - ASoC: topology: Check if ops is set before dereference (Jaroslav Kysela) [1917388] - ASoC: topology: Ensure that needed parameters are set (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_clean() and call it from soc_pcm_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-dai: add mark for snd_soc_dai_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_pcm_component_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-link: add mark for snd_soc_link_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: move soc_pcm_hw_free() next to soc_pcm_hw_params() (Jaroslav Kysela) [1917388] - ASoC: dapm: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: dmaengine: Document support for TX only or RX only streams (Jaroslav Kysela) [1917388] - ASoC: soc-core: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ALSA: usb: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix control 'access overflow' errors from chmap (Jaroslav Kysela) [1917388] - ALSA: line6: Fix racy initialization of LINE6 MIDI (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Disable sample read check if firmware doesn't give back (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: snd_scarlett_gen2_controls_create() can be static (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: Improve driver startup messages (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: Fix device hang with ehci-pci (Jaroslav Kysela) [1917388] - ALSA: usb-audio: fix control-request direction (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix potential out-of-bounce access in MIDI EP parser (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Validate MS endpoint descriptors (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add dB range mapping for Sennheiser Communications Headset PC 8 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Remove redundant assignment to len (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix implicit sync clearance at stopping stream (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Generic application of implicit fb to Roland/BOSS devices (Jaroslav Kysela) [1917388] - Revert "ALSA: usb-audio: Add support for many Roland devices..." (Jaroslav Kysela) [1917388] - ALSA: usb: midi: don't return -ENOMEM when usb_urb_ep_type_check fails (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Re-apply implicit feedback mode to Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: DJM-750: ensure format is set (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for many Roland devices' implicit feedback quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply implicit feedback mode for BOSS devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Explicitly set up the clock selector (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add MIDI quirk for Vox ToneLab EX (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Skip probe of UA-101 devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop implicit fb quirk entries dubbed for capture (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feeback support for the BOSS GT-1 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add error checks for usb_driver_claim_interface() calls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply sample rate quirk to Logitech Connect (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check connector value on resume (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Carve out connector value checking into a helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix unintentional sign extension issue (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply the control quirk to Plantronics headsets (Jaroslav Kysela) [1917388] - ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar (Jaroslav Kysela) [1917388] - ALSA: usb-audio: fix Pioneer DJM-850 control label info (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Configure Pioneer DJM-850 samplerate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Declare Pioneer DJM-850 mixer controls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add Pioneer DJM-850 to quirks-table (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix Pioneer DJM devices URB_CONTROL request direction to set samplerate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: use Corsair Virtuoso mapping for Corsair Virtuoso SE (Jaroslav Kysela) [1917388] - ALSA: usb-audio: generate midi streaming substream names from jack names (Jaroslav Kysela) [1917388] - ALSA: usb-audio: use usb headers rather than define structs locally (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Allow modifying parameters with succeeding hw_params calls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop bogus dB range in too low level (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't abort even if the clock rate differs (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit fb quirk for BOSS GP-10 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for RC-505 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't avoid stopping the stream at disconnection (Jaroslav Kysela) [1917388] - ALSA: usb-audio: More strict state change in EP (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Handle invalid running state at releasing EP (Jaroslav Kysela) [1917388] - ALSA: usb-audio: add mixer quirks for Pioneer DJM-900NXS2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM750 to Pioneer mixer quirk (Jaroslav Kysela) [1917388] - ALSA: Convert strlcpy to strscpy when return value is unused (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Correct document for snd_usb_endpoint_free_all() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM-450 to the quirks table (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM450 to Pioneer format quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: workaround for iface reset issue (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix "RANGE setting not yet supported" errors (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Skip the clock selector inquiry for single connections (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix hw constraints dependencies (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for Pioneer DJM-750 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid implicit feedback on Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set sample rate for all sharing EPs on UAC1 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix UAC1 rate setup for secondary endpoints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Convert the last strlcpy() usage (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Convert remaining strlcpy() to strscpy() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Always apply the hw constraints for implicit fb sync (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix implicit feedback sync setup for Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Annotate the endpoint index in audioformat (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid unnecessary interface re-setup (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Choose audioformat of a counter-part substream (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix the missing endpoints creations for quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for BOSS AD-10 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add alias entry for ASUS PRIME TRX40 PRO-S (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix potential out-of-bounds shift (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit fb support for Steinberg UR22 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for Pioneer DJ DDJ-RR controller (Jaroslav Kysela) [1917388] - ALSA: usb-audio: US16x08: fix value count for level meters (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix MOTU M-Series quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix quirks for other BOSS devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit_fb module option (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add generic implicit fb parsing (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Factor out the implicit feedback quirk code (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Quirk for BOSS GT-001 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Show sync endpoint information in proc outputs (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use unsigned char for iface and altsettings fields (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Replace slave/master terms (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify rate_min/max and rates set up (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Unify the code for the next packet size calculation (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop unneeded snd_usb_substream fields (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Refactoring endpoint URB deactivation (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use atomic_t for endpoint use_count (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Constify audioformat pointer references (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix possible stall of implicit fb packet ring-buffer (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Refactor endpoint management (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix EP matching for continuous rates (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Always set up the parameters after resume (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for Pioneer DJ DDJ-SR2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set callbacks via snd_usb_endpoint_set_callback() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Stop both endpoints properly at error (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify snd_usb_init_pitch() arguments (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify snd_usb_init_sample_rate() arguments (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't set altsetting before initializing sample rate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Pass snd_usb_audio object to quirk functions (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add snd_usb_get_host_interface() helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop keep_interface flag again (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Create endpoint objects at parsing phase (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid doubly initialization for implicit fb (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop debug.h (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify hw_params rules (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add hw constraint for implicit fb sync (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Move snd_usb_autoresume() call out of setup_hw_info() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Track implicit fb sync endpoint in audioformat list (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Improve some debug prints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set and clear sync EP link properly (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add snd_usb_get_endpoint() helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check implicit feedback EP generically for UAC2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check valid altsetting at parsing rates for UAC2/3 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't call usb_set_interface() at trigger callback (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Handle discrete rates properly in hw constraints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add delay quirk for all Logitech USB devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use ALC1220-VB-DT mapping for ASUS ROG Strix TRX40 mobo (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for Qu-16 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for MODX (Jaroslav Kysela) [1917388] - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add mixer support for Pioneer DJ DJM-250MK2 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: reset eapd coeff to default value for alc287 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: Cancel pending works before suspend (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Fix compile warning without PCI (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Move unsol callback setups to parser (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: make some const arrays static, makes object smaller (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add ZxR surround DAC setup. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add 8051 PLL write helper functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Remove now unnecessary DSP setup functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Ensure DSP is properly setup post-firmware download. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add 8051 exram helper functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add stream port remapping function. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Reset codec upon initialization. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Change Input Source enum strings. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. (Jaroslav Kysela) [1917388] - ALSA: hda: Reinstate runtime_allow() for all hda controllers (Jaroslav Kysela) [1917388] - ACPI: Test for ACPI_SUCCESS rather than !ACPI_FAILURE (Jaroslav Kysela) [1917388] - ALSA: hda: Flush pending unsolicited events before suspend (Jaroslav Kysela) [1917388] - ALSA: hda: Re-add dropped snd_poewr_change_state() calls (Jaroslav Kysela) [1917388] - ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks (Jaroslav Kysela) [1917388] - ALSA: hda: Separate runtime and system suspend (Jaroslav Kysela) [1917388] - ALSA: hda: update the power_state during the direct-complete (Jaroslav Kysela) [1917388] - ALSA: hda: Balance runtime/system PM if direct-complete is disabled (Jaroslav Kysela) [1917388] - ALSA: hda: Refactor codec PM to use direct-complete optimization (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Set Initial DMIC volume to -26 dB (Jaroslav Kysela) [1917388] - ALSA: hda: Fix a regression in Capture Switch mixer read (Jaroslav Kysela) [1917388] - ALSA: hda: Add AlderLake-M PCI ID (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 17 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 15 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 855 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Chain in pop reduction fixup for ThinkStation P340 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: the bass speaker can't output sound on Yoga 9i (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Headphone volume is controlled by Front mixer (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add some CLOVE SSIDs of ALC293 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add fixup for HP Spectre x360 15-df0xxx (Jaroslav Kysela) [1917388] - ALSA: hda: fixup headset for ASUS GU502 laptop (Jaroslav Kysela) [1917388] - ALSA: hda: Fix for mute key LED for HP Pavilion 15-CK0xx (Jaroslav Kysela) [1917388] - ALSA: hda: generic: change the DAC ctl name for LO+SPK or LO+HP (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add fixup for HP OMEN laptop (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix speaker amp on HP Envy AiO 32 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix silent headphone output on ASUS UX430UA (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Re-order CX5066 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Remove redundant entry for ALC861 Haier/Uniwill devices (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC662 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order remaining ALC269 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Lenovo quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Sony quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 ASUS quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Dell quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Acer quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 HP quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Clevo quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Sony quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Acer quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Intel Clevo PCx0Dx (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Use CS8409 filter to fix abnormal sounds on Bullseye (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Set Initial DMIC volume for Bullseye to -26 dB (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook 845 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek - Headset Mic issue on HP platform (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: GA503 use same quirks as GA401 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: fix race in handling acomp ELD notification at resume (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G7 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Lenovo Ideapad S740 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mic boost on Intel NUC 8 (Jaroslav Kysela) [1917388] - ALSA: HDA: Add access description in __snd_hda_add_vmaster (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1 (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Apply quirk for another HP ZBook G5 model (Jaroslav Kysela) [1917388] - ALSA: HDA - remove the custom implementation for the audio LED trigger (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 640 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: fix max DP-MST dev_num for Intel TGL+ platforms (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Make CS8409 driver more generic by using fixups. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Fix CS42L42 Headset Mic volume control name (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Cleanup patch_cirrus.c code. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add error handling into CS8409 I2C functions (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: apply pin quirk for XiaomiNotebook Pro (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Apply headset-mic quirks for Xiaomi Redmibook Air (Jaroslav Kysela) [1917388] - ALSA: hda: generic: Fix the micmute led init state (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Add Sound BlasterX AE-5 Plus support (Jaroslav Kysela) [1917388] - ALSA: hda: Drop the BATCH workaround for AMD controllers (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add Headphone and Headset MIC Volume Control (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add jack detect interrupt support from CS42L42 companion codec. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add support for CS8409 HDA bridge and CS42L42 companion codec. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Increase AUTO_CFG_MAX_INS from 8 to 18 (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Add quirk for mute LED control on HP ZBook G5 (Jaroslav Kysela) [1917388] - ALSA: hda - bind headset buttons to the headphone jack (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Apply dual codec quirks for MSI Godlike X570 board (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Intel NUC 10 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable headset mic of Acer SWIFT with ALC256 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup (Jaroslav Kysela) [1917388] - ALSA: hda: Add another CometLake-H PCI ID (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: Drop bogus check at closing a stream (Jaroslav Kysela) [1917388] - ALSA: hda: Drop power save deny list entry for Clevo W65_67SB (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: modify EAPD in the ALC886 (Jaroslav Kysela) [1917388] - ALSA: hda/via: Apply the workaround generically for Clevo machines (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Remove unnecessary null-check from hda_tegra_runtime_resume() (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Reset hardware (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Use clk_bulk helpers (Jaroslav Kysela) [1917388] - ALSA: hda: Assign boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: hda: boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 (Jaroslav Kysela) [1917388] - ALSA: pci: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ALSA: hda/via: Add minimum mute flag (Jaroslav Kysela) [1917388] - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T (Jaroslav Kysela) [1917388] - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi - enable runtime pm for CI AMD display audio (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: fix tegra-hda on tegra30 soc (Jaroslav Kysela) [1917388] - ALSA: hda: Revert "ALSA: hda: Allow setting preallocation again for x86" (Jaroslav Kysela) [1917388] - ALSA: hda: Fix spelling mistakes (Jaroslav Kysela) [1917388] - ALSA: hda: ignore invalid NHLT table (Jaroslav Kysela) [1917388] - ALSA: hda: intel-nhlt: verify config type (Jaroslav Kysela) [1917388] - ALSA: hda: fix kernel-doc warnings (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add Alder Lake support (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: Add SND_INTEL_BYT_PREFER_SOF Kconfig option (Jaroslav Kysela) [1917388] - ALSA: hda: add link_power op to hdac_bus_ops (Jaroslav Kysela) [1917388] - ALSA: hda: Constify static attribute_group (Jaroslav Kysela) [1917388] - ALSA: hda: Use DIV_ROUND_UP()/roundup() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: ignore dsp_driver parameter for PCI legacy devices (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add Broadwell ACPI DSP driver selection (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add helper for ACPI DSP driver selection (Jaroslav Kysela) [1917388] - ALSA: pcm: Fix missing check of the new non-cached buffer type (Jaroslav Kysela) [1917388] - ALSA: pcm: use dma_can_mmap() to check if a device supports dma_mmap_* (Jaroslav Kysela) [1917388] - ALSA: timer: Fix master timer notification (Jaroslav Kysela) [1917388] - ALSA: control led: fix memory leak in snd_ctl_led_register (Jaroslav Kysela) [1917388] - ALSA: control: Fix racy management of user ctl memory size account (Jaroslav Kysela) [1917388] - ALSA: control_led - fix the stack usage (control element ops) (Jaroslav Kysela) [1917388] - ALSA: control - double free in snd_ctl_led_init() (Jaroslav Kysela) [1917388] - ALSA: control: Add memory consumption limit to user controls (Jaroslav Kysela) [1917388] - ALSA: control - off by one in store_mode() (Jaroslav Kysela) [1917388] - ALSA: control led - improve the set_led_id() parser (Jaroslav Kysela) [1917388] - ALSA: control - add the missing prev_lops2 initialization (Jaroslav Kysela) [1917388] - ALSA: led control - add sysfs kcontrol LED marking layer (Jaroslav Kysela) [1917388] - ALSA: control - add sysfs support to the LED trigger module (Jaroslav Kysela) [1917388] - ALSA: control - add generic LED trigger module as the new control layer (Jaroslav Kysela) [1917388] - ALSA: control - add layer registration routines (Jaroslav Kysela) [1917388] - ALSA: control - introduce snd_ctl_notify_one() helper (Jaroslav Kysela) [1917388] - ALSA: core: remove redundant spin_lock pair in snd_card_disconnect (Jaroslav Kysela) [1917388] - ALSA: pcm: Fix couple of typos (Jaroslav Kysela) [1917388] - ALSA: core: avoid -Wempty-body warnings (Jaroslav Kysela) [1917388] - ALSA: pcm: Add debug print on memory allocation failure (Jaroslav Kysela) [1917388] - ALSA: core - add missing compress device type to /proc/asound/devices (Jaroslav Kysela) [1917388] - ALSA: pcm: Use for_each_pcm_substream() macro (Jaroslav Kysela) [1917388] - ALSA: pcm: Don't call sync_stop if it hasn't been stopped (Jaroslav Kysela) [1917388] - ALSA: pcm: Assure sync with the pending stop operation at suspend (Jaroslav Kysela) [1917388] - ALSA: pcm: Call sync_stop at disconnection (Jaroslav Kysela) [1917388] - ASoC: dmaengine_pcm: add peripheral configuration (Jaroslav Kysela) [1917388] - ALSA: core: Fix the debugfs removal at snd_card_free() (Jaroslav Kysela) [1917388] - ALSA: jack: implement software jack injection via debugfs (Jaroslav Kysela) [1917388] - ALSA: pcm: One more dependency for hw constraints (Jaroslav Kysela) [1917388] - ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() (Jaroslav Kysela) [1917388] - ALSA: oss: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: core: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: core: Remove redundant comments (Jaroslav Kysela) [1917388] - ALSA: pcm: oss: Fix a few more UBSAN fixes (Jaroslav Kysela) [1917388] - ALSA: pcm: Clear the full allocated memory at hw_params (Jaroslav Kysela) [1917388] - ALSA: memalloc: Align buffer allocations in page size (Jaroslav Kysela) [1917388] - ALSA: pcm: Remove snd_pcm_lib_preallocate_dma_free() (Jaroslav Kysela) [1917388] - ALSA: core: memalloc: add page alignment for iram (Jaroslav Kysela) [1917388] - ALSA: pcm: oss: Fix potential out-of-bounds shift (Jaroslav Kysela) [1917388] - ALSA: rawmidi: Access runtime->avail always in spinlock (Jaroslav Kysela) [1917388] - ALSA: seq: Use bool for snd_seq_queue internal flags (Jaroslav Kysela) [1917388] - ALSA: compress: allow pause and resume during draining (Jaroslav Kysela) [1917388] - ALSA: ctl: fix error path at adding user-defined element set (Jaroslav Kysela) [1917388] - ALSA: seq: remove useless function (Jaroslav Kysela) [1917388] - ALSA: fix kernel-doc markups (Jaroslav Kysela) [1917388] - soundwire: SDCA: add helper macro to access controls (Jaroslav Kysela) [1917388] - soundwire: add static port mapping support (Jaroslav Kysela) [1917388] - soundwire: add definition for DPn BlockPackingMode (Jaroslav Kysela) [1917388] - soundwire: add master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: intel: don't return error when clock stop failed (Jaroslav Kysela) [1917388] - soundwire: intel: Use kzalloc for allocating only one thing (Jaroslav Kysela) [1917388] - soundwire: cadence: add status in dev_dbg 'State change' log (Jaroslav Kysela) [1917388] - soundwire: cadence: adjust verbosity in response handling (Jaroslav Kysela) [1917388] - soundwire: cadence: fix ACK/NAK handling (Jaroslav Kysela) [1917388] - soundwire: cadence: reduce timeout on transactions (Jaroslav Kysela) [1917388] - soundwire: bus: use consistent tests for return values (Jaroslav Kysela) [1917388] - soundwire: qcom: fix handling of qcom,ports-block-pack-mode (Jaroslav Kysela) [1917388] - soundwire: intel_init: test link->cdns (Jaroslav Kysela) [1917388] - soundwire: qcom: handle return correctly in qcom_swrm_transport_params (Jaroslav Kysela) [1917388] - soundwire: qcom: cleanup internal port config indexing (Jaroslav Kysela) [1917388] - soundwire: qcom: wait for fifo space to be available before read/write (Jaroslav Kysela) [1917388] - soundwire: qcom: add static port map support (Jaroslav Kysela) [1917388] - soundwire: qcom: update port map allocation bit mask (Jaroslav Kysela) [1917388] - soundwire: stream: fix memory leak in stream config error path (Jaroslav Kysela) [1917388] - soundwire: qcom: use signed variable for error return (Jaroslav Kysela) [1917388] - soundwire: qcom: wait for enumeration to be complete in probe (Jaroslav Kysela) [1917388] - soundwire: qcom: add auto enumeration support (Jaroslav Kysela) [1917388] - soundwire: export sdw_compare_devid, sdw_extract_slave_id and sdw_slave_add (Jaroslav Kysela) [1917388] - soundwire: qcom: add support to new interrupts (Jaroslav Kysela) [1917388] - soundwire: qcom: update register read/write routine (Jaroslav Kysela) [1917388] - soundwire: qcom: start the clock during initialization (Jaroslav Kysela) [1917388] - soundwire: qcom: set continue execution flag for ignored commands (Jaroslav Kysela) [1917388] - soundwire: qcom: add support to missing transport params (Jaroslav Kysela) [1917388] - soundwire: cadence: only prepare attached devices on clock stop (Jaroslav Kysela) [1917388] - soundwire: generic_allocation: fix confusion between group and packing (Jaroslav Kysela) [1917388] - soundwire: bus: Fix device found flag correctly (Jaroslav Kysela) [1917388] - soundwire: cadence_master: fix kernel-doc (Jaroslav Kysela) [1917388] - soundwire: stream: remove useless bus initializations (Jaroslav Kysela) [1917388] - soundwire: stream: remove useless initialization (Jaroslav Kysela) [1917388] - soundwire: qcom: check of_property_read status (Jaroslav Kysela) [1917388] - soundwire: intel: remove useless readl (Jaroslav Kysela) [1917388] - soundwire: generic_bandwidth_allocation: remove useless init (Jaroslav Kysela) [1917388] - soundwire: bus: remove useless initialization (Jaroslav Kysela) [1917388] - soundwire: bus: uniquify dev_err() for SCP_INT access (Jaroslav Kysela) [1917388] - soundwire: bus: demote clock stop prepare log to dev_dbg() (Jaroslav Kysela) [1917388] - soundwire: bus: clarify dev_err/dbg device references (Jaroslav Kysela) [1917388] - soundwire: bus: fix confusion on device used by pm_runtime (Jaroslav Kysela) [1917388] - soundwire: export sdw_write/read_no_pm functions (Jaroslav Kysela) [1917388] - soundwire: bus: use no_pm IO routines for all interrupt handling (Jaroslav Kysela) [1917388] - soundwire: bus: use sdw_write_no_pm when setting the bus scale registers (Jaroslav Kysela) [1917388] - soundwire: bus: use sdw_update_no_pm when initializing a device (Jaroslav Kysela) [1917388] - soundwire: return earlier if no slave is attached (Jaroslav Kysela) [1917388] - soundwire: bus: add better dev_dbg to track complete() calls (Jaroslav Kysela) [1917388] - soundwire: bus: add more details to track failed transfers (Jaroslav Kysela) [1917388] - soundwire: use consistent format for Slave devID logs (Jaroslav Kysela) [1917388] - soundwire: bus: test read status (Jaroslav Kysela) [1917388] - soundwire: bus: use correct driver name in error messages (Jaroslav Kysela) [1917388] - soundwire: qcom: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: stream: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: cadence: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: bandwidth_allocation: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: intel: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: intel: add master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: bus: handle master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: Intel: add DMI quirk for Dell SKU 0A3E (Jaroslav Kysela) [1917388] - soundwire: Intel: introduce DMI quirks for HP Spectre x360 Convertible (Jaroslav Kysela) [1917388] - soundwire: add override addr ops (Jaroslav Kysela) [1917388] - regmap/SoundWire: sdw: add support for SoundWire 1.2 MBQ (Jaroslav Kysela) [1917388] - tracing: Fix __print_hex_dump scope (Jaroslav Kysela) [1917388] - tracing: Use seq_buf_hex_dump() to dump buffers (Jaroslav Kysela) [1917388] - seq_buf: Add printing formatted hex dumps (Jaroslav Kysela) [1917388] - powerpc/64: Don't trace code that runs with the soft irq mask unreconciled (Desnes A. Nunes do Rosario) [1921631] - powerpc/64: Disable irq restore warning for now (Desnes A. Nunes do Rosario) [1921631] - powerpc/64s: make PACA_IRQ_HARD_DIS track MSR[EE] closely (Desnes A. Nunes do Rosario) [1921631]- watchdog/hpwdt: New PCI IDs (Joseph Szczypek) [1967765] - watchdog: hpwdt: Assign boolean values to a bool variable (Joseph Szczypek) [1967765] - scsi: libfc: Avoid invoking response handler twice if ep is already completed (Chris Leech) [1867301] - Bluetooth: SMP: Fail if remote and local public keys are identical (Gopal Tiwari) [1965083] - rq-qos: fix missed wake-ups in rq_qos_throttle try two (Ming Lei) [1972111] - mm: memcg/slab: disable cache merging for KMALLOC_NORMAL caches (Waiman Long) [1955561] - mm: memcg/slab: create a new set of kmalloc-cg- caches (Waiman Long) [1955561] - mm: memcg/slab: properly set up gfp flags for objcg pointer array (Waiman Long) [1955561] - mm/vmalloc.c:__vmalloc_area_node(): avoid 32-bit overflow (Rafael Aquini) [1970194] - mm: remove the filename in the top of file comment in vmalloc.c (Rafael Aquini) [1970194] - mm: cleanup the gfp_mask handling in __vmalloc_area_node (Rafael Aquini) [1970194] - mm/vmalloc.c: remove unnecessary highmem_mask from parameter of gfpflags_allow_blocking() (Rafael Aquini) [1970194] - mm/swap: fix pte_same_as_swp() not removing uffd-wp bit when compare (Chris von Recklinghausen) [1945442] - userfaultfd: hugetlbfs: fix new flag usage in error path (Chris von Recklinghausen) [1945442] - mm/hugetlb: fix cow where page writtable in child (Chris von Recklinghausen) [1945442] - ovl: fix reference counting in ovl_mmap error path (Chris von Recklinghausen) [1945442] - hugetlb: do early cow when page pinned on src mm (Chris von Recklinghausen) [1945442] - mm: introduce page_needs_cow_for_dma() for deciding whether cow (Chris von Recklinghausen) [1945442] - hugetlb: convert page_huge_active() HPageMigratable flag (Chris von Recklinghausen) [1945442] - hugetlb: use page.private for hugetlb specific page flags (Chris von Recklinghausen) [1945442] - x86/mm: Remove duplicate definition of _PAGE_PAT_LARGE (Chris von Recklinghausen) [1945442] - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page (Chris von Recklinghausen) [1945442] - mm: hugetlb: fix a race between isolating and freeing page (Chris von Recklinghausen) [1945442] - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active (Chris von Recklinghausen) [1945442] - mm: introduce vma_set_file function v5 (Chris von Recklinghausen) [1945442] - mm: mmap: fix fput in error path v2 (Chris von Recklinghausen) [1945442] - mm/gup: prevent gup_fast from racing with COW during fork (Chris von Recklinghausen) [1945442] - mm/gup: reorganize internal_get_user_pages_fast() (Chris von Recklinghausen) [1945442] - mm: remove src/dst mm parameter in copy_page_range() (Chris von Recklinghausen) [1945442] - mm: avoid early COW write protect games during fork() (Chris von Recklinghausen) [1945442] - mm/thp: Split huge pmds/puds if they're pinned when fork() (Chris von Recklinghausen) [1945442] - mm: Do early cow for pinned pages during fork() for ptes (Chris von Recklinghausen) [1945442] - mm/fork: Pass new vma pointer into copy_page_range() (Chris von Recklinghausen) [1945442] - mm: move the copy_one_pte() pte_present check into the caller (Chris von Recklinghausen) [1945442] - mm: split out the non-present case from copy_one_pte() (Chris von Recklinghausen) [1945442] - mm/gup: Remove enfornced COW mechanism (Chris von Recklinghausen) [1945442] - mm/hmm.c: delete duplicated word (Chris von Recklinghausen) [1945442] - mm/hmm: provide the page mapping order in hmm_range_fault() (Chris von Recklinghausen) [1945442] - mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked() (Chris von Recklinghausen) [1945442] - mm/gup: introduce pin_user_pages_locked() (Chris von Recklinghausen) [1945442] - mm/gup: introduce pin_user_pages_unlocked (Chris von Recklinghausen) [1945442] - mm: remove the prot argument from vm_map_ram (Chris von Recklinghausen) [1945442] - mm: remove unmap_vmap_area (Chris von Recklinghausen) [1945442] - mm: don't return the number of pages from map_kernel_range{,_noflush} (Chris von Recklinghausen) [1945442] - x86: fix vmap arguments in map_irq_stack (Chris von Recklinghausen) [1945442] - mm/memory: remove unnecessary pte_devmap case in copy_one_pte() (Chris von Recklinghausen) [1945442] - mm/hmm: remove the customizable pfn format from hmm_range_fault (Chris von Recklinghausen) [1945442] - mm/hmm: remove HMM_PFN_SPECIAL (Chris von Recklinghausen) [1945442] - mm/hmm: make hmm_range_fault return 0 or -1 (Chris von Recklinghausen) [1945442] - mm/hugetlb: fix build failure with HUGETLB_PAGE but not HUGEBTLBFS (Chris von Recklinghausen) [1945442] - mm/hmm: return error for non-vma snapshots (Chris von Recklinghausen) [1945442] - mm/hmm: do not set pfns when returning an error code (Chris von Recklinghausen) [1945442] - mm/hmm: do not unconditionally set pfns when returning EBUSY (Chris von Recklinghausen) [1945442] - mm/hmm: use device_private_entry_to_pfn() (Chris von Recklinghausen) [1945442] - mm/hmm: remove HMM_FAULT_SNAPSHOT (Chris von Recklinghausen) [1945442] - mm/hmm: remove unused code and tidy comments (Chris von Recklinghausen) [1945442] - mm/hmm: return the fault type from hmm_pte_need_fault() (Chris von Recklinghausen) [1945442] - mm/hmm: remove pgmap checking for devmap pages (Chris von Recklinghausen) [1945442] - mm/hmm: check the device private page owner in hmm_range_fault() (Chris von Recklinghausen) [1945442] - mm: simplify device private page handling in hmm_range_fault (Chris von Recklinghausen) [1945442] - mm: merge hmm_vma_do_fault into into hmm_vma_walk_hole_ (Chris von Recklinghausen) [1945442] - mm/hmm: don't handle the non-fault case in hmm_vma_walk_hole_() (Chris von Recklinghausen) [1945442] - mm/hmm: simplify hmm_vma_walk_hugetlb_entry() (Chris von Recklinghausen) [1945442] - mm/hmm: remove the unused HMM_FAULT_ALLOW_RETRY flag (Chris von Recklinghausen) [1945442] - mm/hmm: don't provide a stub for hmm_range_fault() (Chris von Recklinghausen) [1945442] - mm/hmm: do not check pmd_protnone twice in hmm_vma_handle_pmd() (Chris von Recklinghausen) [1945442] - mm/hmm: return -EFAULT when setting HMM_PFN_ERROR on requested valid pages (Chris von Recklinghausen) [1945442] - mm/hmm: reorganize how !pte_present is handled in hmm_vma_handle_pte() (Chris von Recklinghausen) [1945442] - mm/hmm: add missing call to hmm_range_need_fault() before returning EFAULT (Chris von Recklinghausen) [1945442] - mm/hmm: add missing pfns set to hmm_vma_walk_pmd() (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_range_dma_map and hmm_range_dma_unmap (Chris von Recklinghausen) [1945442] - mm/hmm: make full use of walk_page_range() (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_mirror and related (Chris von Recklinghausen) [1945442] - mm/hmm: define the pre-processor related parts of hmm.h even if disabled (Chris von Recklinghausen) [1945442] - mm/hmm: allow hmm_range to be used with a mmu_interval_notifier or hmm_mirror (Chris von Recklinghausen) [1945442] - mm/hmm: hmm_range_fault() infinite loop (Chris von Recklinghausen) [1945442] - mm/hmm: hmm_range_fault() NULL pointer bug (Chris von Recklinghausen) [1945442] - hmm: use mmu_notifier_get/put for 'struct hmm' (Chris von Recklinghausen) [1945442] - mm/hmm: cleanup the hmm_vma_handle_pmd stub (Chris von Recklinghausen) [1945442] - mm/hmm: only define hmm_vma_walk_pud if needed (Chris von Recklinghausen) [1945442] - mm/hmm: cleanup the hmm_vma_walk_hugetlb_entry stub (Chris von Recklinghausen) [1945442] - mm/hmm: don't abuse pte_index() in hmm_vma_handle_pmd (Chris von Recklinghausen) [1945442] - mm/hmm: comment on VM_FAULT_RETRY semantics in handle_mm_fault (Chris von Recklinghausen) [1945442] - mm/hmm: remove the legacy hmm_pfn_* APIs (Chris von Recklinghausen) [1945442] - mm/hmm: remove the mask variable in hmm_vma_walk_hugetlb_entry (Chris von Recklinghausen) [1945442] - mm/hmm: remove the page_shift member from struct hmm_range (Chris von Recklinghausen) [1945442] - mm/hmm: remove superfluous arguments from hmm_range_register (Chris von Recklinghausen) [1945442] - mm/hmm: remove the unused vma argument to hmm_range_dma_unmap (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_range vma (Chris von Recklinghausen) [1945442] - mm/hmm: remove hugetlbfs check in hmm_vma_walk_pmd (Chris von Recklinghausen) [1945442] - mm/hmm: merge hmm_range_snapshot into hmm_range_fault (Chris von Recklinghausen) [1945442] - mm/hmm: replace the block argument to hmm_range_fault with a flags value (Chris von Recklinghausen) [1945442] - mm/large system hash: use vmalloc for size > MAX_ORDER when !hashdist (Chris von Recklinghausen) [1945442] - mm/hmm: update HMM documentation (Chris von Recklinghausen) [1945442] - mm: remove the HMM config option (Chris von Recklinghausen) [1945442] - hugetlbfs: on restore reserve error path retain subpool reservation (Chris von Recklinghausen) [1945442] - mm/vmalloc.c: fix potential memory leak (Chris von Recklinghausen) [1945442] - mm/vmalloc: separate put pages and flush VM flags (Chris von Recklinghausen) [1945442] - zsmalloc: switch from alloc_vm_area to get_vm_area (Chris von Recklinghausen) [1945442] - mm: allow a NULL fn callback in apply_to_page_range (Chris von Recklinghausen) [1945442] - mm: add a vmap_pfn function (Chris von Recklinghausen) [1945442] - mm: add a VM_MAP_PUT_PAGES flag for vmap (Chris von Recklinghausen) [1945442] - mm: update the documentation for vfree (Chris von Recklinghausen) [1945442] - mm, slub: use kmem_cache_debug_flags() in deactivate_slab() (Chris von Recklinghausen) [1945442] - mm, slab, slub: clear the slab_cache field when freeing page (Chris von Recklinghausen) [1945442] - mm: slab: provide krealloc_array() (Chris von Recklinghausen) [1945442] - mm: slab: clarify krealloc()'s behavior with __GFP_ZERO (Chris von Recklinghausen) [1945442] - mm/slab_common.c: use list_for_each_entry in dump_unreclaimable_slab() (Chris von Recklinghausen) [1945442] - mm/slub: make add_full() condition more explicit (Chris von Recklinghausen) [1945442] - mm/slub: fix missing ALLOC_SLOWPATH stat when bulk alloc (Chris von Recklinghausen) [1945442] - mm/slub.c: branch optimization in free slowpath (Chris von Recklinghausen) [1945442] - include/linux/slab.h: fix a typo error in comment (Chris von Recklinghausen) [1945442] - mm/vmalloc.c: fix a warning while make xmldocs (Chris von Recklinghausen) [1945442] - mm/userfaultfd: fix memory corruption due to writeprotect (Chris von Recklinghausen) [1945442] - mm/migrate: fixup setting UFFD_WP flag (Chris von Recklinghausen) [1945442] - mm/rmap: fixup copying of soft dirty and uffd ptes (Chris von Recklinghausen) [1945442] - mm/userfaultfd: disable userfaultfd-wp on x86_32 (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: fix SIGSEGV if huge mmap fails (Chris von Recklinghausen) [1945442] - mm: do not rely on mm == current->mm in __get_user_pages_locked (Chris von Recklinghausen) [1945442] - mm: Introduce mm_struct.has_pinned (Chris von Recklinghausen) [1945442] - mm/gup: might_lock_read(mmap_sem) in get_user_pages_fast() (Chris von Recklinghausen) [1945442] - mm: enforce that vmap can't map pages executable (Chris von Recklinghausen) [1945442] - mm: remove map_vm_range (Chris von Recklinghausen) [1945442] - mm: rename vmap_page_range to map_kernel_range (Chris von Recklinghausen) [1945442] - mm: remove vmap_page_range_noflush and vunmap_page_range (Chris von Recklinghausen) [1945442] - mm: only allow page table mappings for built-in zsmalloc (Chris von Recklinghausen) [1945442] - mm: unexport unmap_kernel_range_noflush (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: add write-protect test (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: refactor statistics (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: fix compiler warning (Chris von Recklinghausen) [1945442] - hugetlbfs: call VM_BUG_ON_PAGE earlier in free_huge_page() (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: recycle lock threads first (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: generalize read and poll (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: cleanup help messages (Chris von Recklinghausen) [1945442] - userfaultfd: wp: declare _UFFDIO_WRITEPROTECT conditionally (Chris von Recklinghausen) [1945442] - userfaultfd: wp: UFFDIO_REGISTER_MODE_WP documentation update (Chris von Recklinghausen) [1945442] - userfaultfd: wp: don't wake up when doing write protect (Chris von Recklinghausen) [1945442] - userfaultfd: wp: enabled write protection in userfaultfd API (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add the writeprotect API to userfaultfd ioctl (Chris von Recklinghausen) [1945442] - userfaultfd: wp: support write protection for userfault vma range (Chris von Recklinghausen) [1945442] - khugepaged: skip collapse if uffd-wp detected (Chris von Recklinghausen) [1945442] - userfaultfd: wp: support swap and page migration (Chris von Recklinghausen) [1945442] - mm/mprotect.c: fix compilation warning because of unused 'mm' variable (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add pmd_swp_*uffd_wp() helpers (Chris von Recklinghausen) [1945442] - userfaultfd: wp: drop _PAGE_UFFD_WP properly when fork (Chris von Recklinghausen) [1945442] - userfaultfd: wp: apply _PAGE_UFFD_WP bit (Chris von Recklinghausen) [1945442] - mm: merge parameters for change_protection() (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add UFFDIO_COPY_MODE_WP (Chris von Recklinghausen) [1945442] - userfaultfd: wp: userfaultfd_pte/huge_pmd_wp() helpers (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add WP pagetable tracking to x86 (Chris von Recklinghausen) [1945442] - userfaultfd: wp: hook userfault handler to write protection fault (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add helper for writeprotect check (Chris von Recklinghausen) [1945442] - userfaultfd: untag user pointers (Chris von Recklinghausen) [1945442] - x86/mm/pat: Fix typo in the Kconfig help text (Chris von Recklinghausen) [1945442] - x86/mm/pat: Clean up externs (Chris von Recklinghausen) [1945442] - x86/mm/pat: Rename => (Chris von Recklinghausen) [1945442] - x86/mm/pat: Standardize on memtype_*() prefix for APIs (Chris von Recklinghausen) [1945442] - x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/ (Chris von Recklinghausen) [1945442] - x86/mm/pat: Clean up PAT initialization flags (Chris von Recklinghausen) [1945442] - x86/mm/pat: Harmonize 'struct memtype *' local variable and function parameter use (Chris von Recklinghausen) [1945442] - x86/mm/pat: Simplify the free_memtype() control flow (Chris von Recklinghausen) [1945442] - x86/mm/pat: Create fixed width output in /sys/kernel/debug/x86/pat_memtype_list, similar to the E820 debug printouts (Chris von Recklinghausen) [1945442] - x86/mm/pat: Disambiguate PAT-disabled boot messages (Chris von Recklinghausen) [1945442] - x86/mm/pat: Update the comments in pat.c and pat_interval.c and refresh the code a bit (Chris von Recklinghausen) [1945442] - x86/mm/pat: Fix off-by-one bugs in interval tree search (Chris von Recklinghausen) [1945442] - x86/mm/pat: Rename pat_rbtree.c to pat_interval.c (Chris von Recklinghausen) [1945442] - x86/mm/pat: Drop the rbt_ prefix from external memtype calls (Chris von Recklinghausen) [1945442] - x86/mm/pat: Do not pass 'rb_root' down the memtype tree helper functions (Chris von Recklinghausen) [1945442] - x86/mm/pat: Convert the PAT tree to a generic interval tree (Chris von Recklinghausen) [1945442] - x86/mm: Tabulate the page table encoding definitions (Chris von Recklinghausen) [1945442] - x86/mm: Remove the unused set_memory_wt() function (Chris von Recklinghausen) [1945442] - x86/mm: Remove set_pages_x() and set_pages_nx() (Chris von Recklinghausen) [1945442] - x86/mm: Remove the unused set_memory_array_*() functions (Chris von Recklinghausen) [1945442] - x86/mm: Unexport set_memory_x() and set_memory_nx() (Chris von Recklinghausen) [1945442] - x86/Kconfig: Fix spelling mistake "effectivness" -> "effectiveness" (Chris von Recklinghausen) [1945442] - x86/mm: Remove unused variable 'old_pte' (Chris von Recklinghausen) [1945442] - Revert "x86/mm/pat: Rename pat_rbtree.c to pat_interval.c" (Chris von Recklinghausen) [1945442] - Revert "x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/" (Chris von Recklinghausen) [1945442] - ipv6: Allow the l3mdev to be a loopback (Antoine Tenart) [1973229] - vrf: do not push non-ND strict packets with a source LLA through packet taps again (Antoine Tenart) [1965600] - vrf: packets with lladdr src needs dst at input with orig_iif when needs strict (Antoine Tenart) [1965600] - ipv6: Fix handling of LLA with VRF and sockets bound to VRF (Antoine Tenart) [1965600] - ipv6: allow ping to link-local address in VRF (Antoine Tenart) [1965600] - vrf: mark skb for multicast or link-local as enslaved to VRF (Antoine Tenart) [1965600] - net: allow traceroute with a specified interface in a vrf (Antoine Tenart) [1965600] - virtchnl: Enable RSS configure for AVF (Ivan Vecera) [1966954] - virtchnl: Advertise virtchnl UDP segmentation offload capability (Ivan Vecera) [1966954] - virtchnl: Allow ignoring opcodes on specific VF (Ivan Vecera) [1966954] - virtchnl: Fix layout of RSS structures (Ivan Vecera) [1966954] - virtchnl: Enable FDIR Configure for AVF (Ivan Vecera) [1966954] - virtchnl: Add missing explicit padding to structures (Ivan Vecera) [1966954] - virtchnl: use u8 type for a field in the virtchnl_filter struct (Ivan Vecera) [1966954] - tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1944685] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1944685] - bpf: Add size arg to build_id_parse function (Michael Petlan) [1944685] - bpf: Move stack_map_get_build_id into lib (Michael Petlan) [1944685] - perf map: Fix error return code in maps__clone() (Michael Petlan) [1944685] - perf ftrace: Fix access to pid in array when setting a pid filter (Michael Petlan) [1944685] - perf auxtrace: Fix potential NULL pointer dereference (Michael Petlan) [1944685] - perf data: Fix error return code in perf_data__create_dir() (Michael Petlan) [1944685] - perf arm-spe: Avoid potential buffer overrun (Michael Petlan) [1944685] - perf report: Fix wrong LBR block sorting (Michael Petlan) [1944685] - perf inject: Fix repipe usage (Michael Petlan) [1944685] - perf test: Change to use bash for daemon test (Michael Petlan) [1944685] - perf record: Fix memory leak in vDSO found using ASAN (Michael Petlan) [1944685] - perf test: Remove now useless failing sub test "BPF relocation checker" (Michael Petlan) [1944685] - perf daemon: Return from kill functions (Michael Petlan) [1944685] - perf daemon: Force waipid for all session on SIGCHLD delivery (Michael Petlan) [1944685] - perf top: Fix BPF support related crash with perf_event_paranoid=3 + kptr_restrict (Michael Petlan) [1944685] - perf pmu: Validate raw event with sysfs exported format bits (Michael Petlan) [1944685] - perf synthetic events: Avoid write of uninitialized memory when generating PERF_RECORD_MMAP* records (Michael Petlan) [1944685] - perf synthetic-events: Fix uninitialized 'kernel_thread' variable (Michael Petlan) [1944685] - perf auxtrace: Fix auxtrace queue conflict (Michael Petlan) [1944685] - perf cs-etm: Fix bitmap for option (Michael Petlan) [1944685] - perf map: Tighten snprintf() string precision to pass gcc check on some 32-bit arches (Michael Petlan) [1944685] - perf report: Fix -F for branch & mem modes (Michael Petlan) [1944685] - perf tests x86: Move insn.h include to make sure it finds stddef.h (Michael Petlan) [1944685] - perf test: Support the ins_lat check in the X86 specific test (Michael Petlan) [1944685] - perf test: Fix sample-parsing failure on non-x86 platforms (Michael Petlan) [1944685] - perf archive: Fix filtering of empty build-ids (Michael Petlan) [1944685] - perf daemon: Fix compile error with Asan (Michael Petlan) [1944685] - perf stat: Fix use-after-free when -r option is used (Michael Petlan) [1944685] - libperf: Add perf_evlist__reset_id_hash() (Michael Petlan) [1944685] - perf stat: Fix wrong skipping for per-die aggregation (Michael Petlan) [1944685] - tools headers UAPI: Update tools' copy of linux/coresight-pmu.h (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in perf_time_to_tsc test (Michael Petlan) [1944685] - perf test: Fix cpu map leaks in cpu_map_print test (Michael Petlan) [1944685] - perf test: Fix a memory leak in thread_map_remove test (Michael Petlan) [1944685] - perf test: Fix a thread map leak in thread_map_synthesize test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in switch_tracking test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in keep_tracking test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in code_reading test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in sw_clock_freq test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in task_exit test (Michael Petlan) [1944685] - perf test: Fix a memory leak in attr test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in basic mmap test (Michael Petlan) [1944685] - perf tools: Fix event's PMU name parsing (Michael Petlan) [1944685] - perf daemon: Fix running test for non root user (Michael Petlan) [1944685] - perf daemon: Fix control fifo permissions (Michael Petlan) [1944685] - perf build: Fix ccache usage in $(CC) when generating arch errno table (Michael Petlan) [1944685] - perf tools: Fix documentation of verbose options (Michael Petlan) [1944685] - perf traceevent: Ensure read cmdlines are null terminated. (Michael Petlan) [1944685] - perf diff: Don't crash on freeing errno-session on the error path (Michael Petlan) [1944685] - perf tools: Clean 'generated' directory used for creating the syscall table on x86 (Michael Petlan) [1944685] - perf build: Move feature cleanup under tools/build (Michael Petlan) [1944685] - perf tools: Cast (struct timeval).tv_sec when printing (Michael Petlan) [1944685] - perf buildid-cache: Don't skip 16-byte build-ids (Michael Petlan) [1944685] - perf buildid-cache: Add test for 16-byte build-id (Michael Petlan) [1944685] - perf symbol: Remove redundant libbfd checks (Michael Petlan) [1944685] - perf test: Output the sub testing result in cs-etm (Michael Petlan) [1944685] - perf test: Suppress logs in cs-etm testing (Michael Petlan) [1944685] - perf tools: Fix arm64 build error with gcc-11 (Michael Petlan) [1944685] - perf intel-pt: Add documentation for tracing virtual machines (Michael Petlan) [1944685] - perf intel-pt: Split VM-Entry and VM-Exit branches (Michael Petlan) [1944685] - perf intel-pt: Adjust sample flags for VM-Exit (Michael Petlan) [1944685] - perf intel-pt: Allow for a guest kernel address filter (Michael Petlan) [1944685] - perf intel-pt: Support decoding of guest kernel (Michael Petlan) [1944685] - perf machine: Factor out machine__idle_thread() (Michael Petlan) [1944685] - perf machine: Factor out machines__find_guest() (Michael Petlan) [1944685] - perf intel-pt: Amend decoder to track the NR flag (Michael Petlan) [1944685] - perf intel-pt: Retain the last PIP packet payload as is (Michael Petlan) [1944685] - perf intel_pt: Add vmlaunch and vmresume as branches (Michael Petlan) [1944685] - perf script: Add branch types for VM-Entry and VM-Exit (Michael Petlan) [1944685] - perf auxtrace: Automatically group aux-output events (Michael Petlan) [1944685] - perf test: Fix unaligned access in sample parsing test (Michael Petlan) [1944685] - perf tools: Support arch specific PERF_SAMPLE_WEIGHT_STRUCT processing (Michael Petlan) [1944685] - perf intel-pt: Add PSB events (Michael Petlan) [1944685] - perf intel-pt: Fix IPC with CYC threshold (Michael Petlan) [1944685] - perf intel-pt: Fix premature IPC (Michael Petlan) [1944685] - perf intel-pt: Fix missing CYC processing in PSB (Michael Petlan) [1944685] - perf record: Fix continue profiling after draining the buffer (Michael Petlan) [1944685] - perf tools: Simplify the calculation of variables (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mp DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mq DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mn DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Fix indentation of brackets in imx8mm metrics (Michael Petlan) [1944685] - perf annotate: Do not jump after 'k' is pressed (Michael Petlan) [1944685] - perf metricgroup: Remove unneeded semicolon (Michael Petlan) [1944685] - perf tools: Add OCaml demangling (Michael Petlan) [1944685] - tools api fs: Cache cgroupfs mount point (Michael Petlan) [1944685] - tools api fs: Diet cgroupfs_find_mountpoint() (Michael Petlan) [1944685] - tools api fs: Prefer cgroup v1 path in cgroupfs_find_mountpoint() (Michael Petlan) [1944685] - perf symbols: Resolve symbols against debug file first (Michael Petlan) [1944685] - perf probe: Fix kretprobe issue caused by GCC bug (Michael Petlan) [1944685] - perf symbols: Fix return value when loading PE DSO (Michael Petlan) [1944685] - perf symbols: Make dso__load_bfd_symbols() load PE files from debug cache only (Michael Petlan) [1944685] - perf symbols: Use (long) for iterator for bfd symbols (Michael Petlan) [1944685] - perf annotate: Fix jump parsing for C++ code. (Michael Petlan) [1944685] - perf arm-spe: Set sample's data source field (Michael Petlan) [1944685] - perf arm-spe: Synthesize memory event (Michael Petlan) [1944685] - perf arm-spe: Fill address info for samples (Michael Petlan) [1944685] - perf arm-spe: Store operation type in packet (Michael Petlan) [1944685] - perf arm-spe: Store memory address in packet (Michael Petlan) [1944685] - perf arm-spe: Enable sample type PERF_SAMPLE_DATA_SRC (Michael Petlan) [1944685] - perf env: Remove unneeded internal/cpumap inclusions (Michael Petlan) [1944685] - perf tools: Remove unused xyarray.c as it was moved to tools/lib/perf (Michael Petlan) [1944685] - perf tools: Replace lkml.org links with lore (Michael Petlan) [1944685] - perf tests: Add daemon 'lock' test (Michael Petlan) [1944685] - perf tests: Add daemon 'ping' command test (Michael Petlan) [1944685] - perf tests: Add daemon 'signal' command test (Michael Petlan) [1944685] - perf tests: Add daemon 'stop' command test (Michael Petlan) [1944685] - perf tests: Add daemon reconfig test (Michael Petlan) [1944685] - perf tests: Add daemon 'list' command test (Michael Petlan) [1944685] - perf daemon: Add examples to man page (Michael Petlan) [1944685] - perf daemon: Add up time for daemon/session list (Michael Petlan) [1944685] - perf daemon: Use control to stop session (Michael Petlan) [1944685] - perf daemon: Add 'ping' command (Michael Petlan) [1944685] - perf daemon: Set control fifo for session (Michael Petlan) [1944685] - perf daemon: Allow only one daemon over base directory (Michael Petlan) [1944685] - perf daemon: Add 'stop' command (Michael Petlan) [1944685] - perf daemon: Add 'signal' command (Michael Petlan) [1944685] - perf daemon: Add 'list' command (Michael Petlan) [1944685] - perf daemon: Add signalfd support (Michael Petlan) [1944685] - perf daemon: Add background support (Michael Petlan) [1944685] - perf daemon: Add config file change check (Michael Petlan) [1944685] - perf daemon: Add config file support (Michael Petlan) [1944685] - perf daemon: Add client socket support (Michael Petlan) [1944685] - perf daemon: Add server socket support (Michael Petlan) [1944685] - perf daemon: Add base option (Michael Petlan) [1944685] - perf daemon: Add config option (Michael Petlan) [1944685] - perf daemon: Add daemon command (Michael Petlan) [1944685] - perf script: Simplify bool conversion (Michael Petlan) [1944685] - perf arm64/s390: Fix printf conversion specifier for IP addresses (Michael Petlan) [1944685] - perf script: Support filtering by hex address (Michael Petlan) [1944685] - perf intlist: Change 'struct intlist' int member to 'unsigned long' (Michael Petlan) [1944685] - perf tools: Update topdown documentation for Sapphire Rapids (Michael Petlan) [1944685] - perf stat: Support L2 Topdown events (Michael Petlan) [1944685] - perf test: Support PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf report: Support instruction latency (Michael Petlan) [1944685] - perf tools: Support PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf c2c: Support data block and addr block (Michael Petlan) [1944685] - perf tools: Support data block and addr block (Michael Petlan) [1944685] - perf tools: Support the auxiliary event (Michael Petlan) [1944685] - perf probe: Add protection to avoid endless loop (Michael Petlan) [1944685] - perf trace-event-info: Rename for_each_event. (Michael Petlan) [1944685] - perf inject jit: Add namespaces support (Michael Petlan) [1944685] - perf namespaces: Add 'in_pidns' to nsinfo struct (Michael Petlan) [1944685] - perf tools: Use scandir() to iterate threads when synthesizing PERF_RECORD_ events (Michael Petlan) [1944685] - perf tools: Skip PERF_RECORD_MMAP event synthesis for kernel threads (Michael Petlan) [1944685] - perf tools: Use /proc//task//status for PERF_RECORD_ event synthesis (Michael Petlan) [1944685] - perf vendor events arm64: Reference common and uarch events for A76 (Michael Petlan) [1944685] - perf vendor events arm64: Reference common and uarch events for Ampere eMag (Michael Petlan) [1944685] - perf vendor events arm64: Add common and uarch event JSON (Michael Petlan) [1944685] - perf vendor events arm64: Fix Ampere eMag event typo (Michael Petlan) [1944685] - perf script: Support DSO filter like in other perf tools (Michael Petlan) [1944685] - perf tools: Fix DSO filtering when not finding a map for a sampled address (Michael Petlan) [1944685] - perf stat: Add Topdown metrics events as default events (Michael Petlan) [1944685] - perf test: Add parse-metric memory bandwidth testcase (Michael Petlan) [1944685] - perf tools: Add 'ping' control command (Michael Petlan) [1944685] - perf tools: Add 'stop' control command (Michael Petlan) [1944685] - perf config: Make perf_config_global() global (Michael Petlan) [1944685] - perf config: Make perf_config_system() global (Michael Petlan) [1944685] - perf config: Add perf_home_perfconfig function (Michael Petlan) [1944685] - perf debug: Add debug_set_display_time function (Michael Petlan) [1944685] - perf config: Add config set interface (Michael Petlan) [1944685] - perf config: Make perf_config_from_file() static (Michael Petlan) [1944685] - perf test: Add test case for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf report: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf script: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf record: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf mem: Support data page size (Michael Petlan) [1944685] - perf mem: Clean up output format (Michael Petlan) [1944685] - perf cs-etm: Update ARM's CoreSight hardware tracing OpenCSD library to v1.0.0 (Michael Petlan) [1944685] - perf c2c: Add local variables for output metrics (Michael Petlan) [1944685] - perf c2c: Refactor node display (Michael Petlan) [1944685] - perf c2c: Fix argument type for percent() (Michael Petlan) [1944685] - perf c2c: Refactor display filter (Michael Petlan) [1944685] - perf c2c: Refactor hist entry validation (Michael Petlan) [1944685] - perf c2c: Rename for shared cache line stats (Michael Petlan) [1944685] - perf stat: Enable counting events for BPF programs (Michael Petlan) [1944685] - perf build: Support build BPF skeletons with perf (Michael Petlan) [1944685] - perf record: Tweak "Lowering..." warning in record_opts__config_freq (Michael Petlan) [1944685] - perf buildid-list: Add support for mmap2's buildid events (Michael Petlan) [1944685] - perf buildid-cache: Add --debuginfod option to specify a server to fetch debug files (Michael Petlan) [1944685] - perf tools: Add support to display build ids when available in PERF_RECORD_MMAP2 events (Michael Petlan) [1944685] - perf record: Add --buildid-mmap option to enable PERF_RECORD_MMAP2's build id (Michael Petlan) [1944685] - perf tools: Allow synthesizing the build id for kernel/modules/tasks in PERF_RECORD_MMAP2 (Michael Petlan) [1944685] - perf tools: Allow using PERF_RECORD_MMAP2 to synthesize the kernel modules maps (Michael Petlan) [1944685] - perf tools: Allow using PERF_RECORD_MMAP2 to synthesize the kernel map (Michael Petlan) [1944685] - perf tools: Store build id when available in PERF_RECORD_MMAP2 metadata events (Michael Petlan) [1944685] - perf tools: Do not swap mmap2 fields in case it contains build id (Michael Petlan) [1944685] - perf arm64: Add argument support for SDT (Michael Petlan) [1944685] - perf probe: Fixup Arm64 SDT arguments (Michael Petlan) [1944685] - perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[] (Michael Petlan) [1944685] - perf/x86/intel: Fix unchecked MSR access error caused by VLBR_EVENT (Michael Petlan) [1944685] - perf/x86/intel: Fix a crash caused by zero PEBS status (Michael Petlan) [1944685] - perf/x86/intel: Set PERF_ATTACH_SCHED_CB for large PEBS and LBR (Michael Petlan) [1944685] - perf/core: Flush PMU internal buffers for per-CPU events (Michael Petlan) [1944685] - perf/x86/rapl: Fix psys-energy event on Intel SPR platform (Michael Petlan) [1944685] - perf/x86/rapl: Only check lower 32bits for RAPL energy counters (Michael Petlan) [1944685] - perf/x86/rapl: Add msr mask support (Michael Petlan) [1944685] - perf/x86/kvm: Add Cascade Lake Xeon steppings to isolation_ucodes[] (Michael Petlan) [1944685] - perf/x86/intel: Support CPUID 10.ECX to disable fixed counters (Michael Petlan) [1944685] - perf/x86/intel: Add perf core PMU support for Sapphire Rapids (Michael Petlan) [1944685] - perf/x86/intel: Filter unsupported Topdown metrics event (Michael Petlan) [1944685] - perf/x86/intel: Factor out intel_update_topdown_event() (Michael Petlan) [1944685] - perf/core: Add PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf/intel: Remove Perfmon-v4 counter_freezing support (Michael Petlan) [1944685] - perf: Add build id data in mmap2 event (Michael Petlan) [1944685] - bpf: Remove atomics tests from test_progs (Jiri Olsa) [1874007] - libbpf: Fixes incorrect rx_ring_setup_done (Jiri Olsa) [1874007] - error-injection: Consolidate override function definition (Jiri Olsa) [1874007] - selftests/bpf: Fix endianness issues in atomic tests (Jiri Olsa) [1874007] - bpf: Fix a spelling typo in bpf_atomic_alu_string disasm (Jiri Olsa) [1874007] - bpf, x86: Fix BPF_FETCH atomic and/or/xor with r0 as src (Jiri Olsa) [1874007] - bpf: Explicitly zero-extend R0 after 32-bit cmpxchg (Jiri Olsa) [1874007] - bpf: Account for BPF_FETCH in insn_has_def32() (Jiri Olsa) [1874007] - bpf: Fix subreg optimization for BPF_FETCH (Jiri Olsa) [1874007] - bpf: Fix the irq and nmi check in bpf_sk_storage for tracing usage (Jiri Olsa) [1874007] - selftests/bpf: Fix a compiler warning in local_storage test (Jiri Olsa) [1874007] - bpf: Change 'BPF_ADD' to 'BPF_AND' in print_bpf_insn() (Jiri Olsa) [1874007] - selftests/bpf: Don't exit on failed bpf_testmod unload (Jiri Olsa) [1874007] - bpf: Avoid old-style declaration warnings (Jiri Olsa) [1874007] - bpf: Dont allow vmlinux BTF to be used in map_create and prog_load. (Jiri Olsa) [1874007] - tools: Factor Clang, LLC and LLVM utils definitions (Jiri Olsa) [1874007] - tools/runqslower: Build bpftool using HOSTCC (Jiri Olsa) [1874007] - tools/runqslower: Enable out-of-tree build (Jiri Olsa) [1874007] - tools/runqslower: Use Makefile.include (Jiri Olsa) [1874007] - bpf: Expose bpf_sk_storage_* to iterator programs (Jiri Olsa) [1874007] - tools/resolve_btfids: Warn when having multiple IDs for single type (Jiri Olsa) [1874007] - tools/resolve_btfids: Fix some error messages (Jiri Olsa) [1874007] - samples/bpf: Add BPF_ATOMIC_OP macro for BPF samples (Jiri Olsa) [1874007] - samples/bpf: Fix possible hang in xdpsock with multiple threads (Jiri Olsa) [1874007] - bpf: samples: Do not touch RLIMIT_MEMLOCK (Jiri Olsa) [1874007] - samples/bpf: Use recvfrom() in xdpsock/l2fwd (Jiri Olsa) [1874007] - samples/bpf: Use recvfrom() in xdpsock/rxdrop (Jiri Olsa) [1874007] - samples: bpf: Remove bpf_load loader completely (Jiri Olsa) [1874007] - samples: bpf: Fix lwt_len_hist reusing previous BPF map (Jiri Olsa) [1874007] - samples: bpf: Refactor test_overhead program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor task_fd_query program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor test_cgrp2_sock2 program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor hbm program with libbpf (Jiri Olsa) [1874007] - samples/bpf: Increment Tx stats at sending (Jiri Olsa) [1874007] - samples/bpf: Remove unused test_ipip.sh (Jiri Olsa) [1874007] - samples/bpf: Remove duplicate include in hbm (Jiri Olsa) [1874007] - bpftool: Fix compilation failure for net.o with older glibc (Jiri Olsa) [1874007] - tools/bpftool: Auto-detect split BTFs in common cases (Jiri Olsa) [1874007] - tools/bpftool: Emit name for anonymous BTFs (Jiri Olsa) [1874007] - bpftool: Add {i,d}tlb_misses support for bpftool profile (Jiri Olsa) [1874007] - tools/bpf: Always run the *-clean recipes (Jiri Olsa) [1874007] - tools/bpf: Add bootstrap/ to .gitignore (Jiri Olsa) [1874007] - tools/bpftool: Fix cross-build (Jiri Olsa) [1874007] - tools/bpftool: Force clean of out-of-tree build (Jiri Olsa) [1874007] - tools/bpftool: Add support for in-kernel and named BTF in `btf show` (Jiri Olsa) [1874007] - bpftool: Add support for task local storage (Jiri Olsa) [1874007] - tools/bpftool: Add bpftool support for split BTF (Jiri Olsa) [1874007] - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3 (Jiri Olsa) [1874007] - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() (Jiri Olsa) [1874007] - bpf: Expose bpf_d_path helper to sleepable LSM hooks (Jiri Olsa) [1874007] - bpf: Allow using bpf_sk_storage in FENTRY/FEXIT/RAW_TP (Jiri Olsa) [1874007] - selftests/bpf: Add remaining ASSERT_xxx() variants (Jiri Olsa) [1874007] - libbpf: Fix potential NULL pointer dereference (Jiri Olsa) [1874007] - libbpf: Only create rx and tx XDP rings when necessary (Jiri Olsa) [1874007] - libbpf: Ensure umem pointer is non-NULL before dereferencing (Jiri Olsa) [1874007] - libbpf: Restore umem state after socket create failure (Jiri Olsa) [1874007] - selftests/bpf: Fix core_reloc test runner (Jiri Olsa) [1874007] - bpf: Fix umd memory leak in copy_process() (Jiri Olsa) [1874007] - libbpf: Fix error path in bpf_object__elf_init() (Jiri Olsa) [1874007] - bpf: Change inode_storage's lookup_elem return value from NULL to -EBADF (Jiri Olsa) [1874007] - bpf: Prohibit alu ops for pointer types not defining ptr_limit (Jiri Olsa) [1874007] - selftests/bpf: Use the last page in test_snprintf_btf on s390 (Jiri Olsa) [1874007] - bpf: Be less specific about socket cookies guarantees (Jiri Olsa) [1874007] - bpf: Fix 32 bit src register truncation on div/mod (Jiri Olsa) [1874007] - bpf: Fix verifier jmp32 pruning decision logic (Jiri Olsa) [1874007] - bpf: Fix verifier jsgt branch analysis on max bound (Jiri Olsa) [1874007] - bpf: Check for integer overflow when using roundup_pow_of_two() (Jiri Olsa) [1874007] - bpf, preload: Fix build when $(O) points to a relative path (Jiri Olsa) [1874007] - bpf: Drop disabled LSM hooks from the sleepable set (Jiri Olsa) [1874007] - bpf, cgroup: Fix problematic bounds check (Jiri Olsa) [1874007] - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou (Jiri Olsa) [1874007] - bpf: Fix signed_{sub,add32}_overflows type handling (Jiri Olsa) [1874007] - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback (Jiri Olsa) [1874007] - selftests/bpf: Add verifier test for PTR_TO_MEM spill (Jiri Olsa) [1874007] - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling (Jiri Olsa) [1874007] - libbpf: Allow loading empty BTFs (Jiri Olsa) [1874007] - bpf: Allow empty module BTFs (Jiri Olsa) [1874007] - bpf: Don't leak memory in bpf getsockopt when optlen == 0 (Jiri Olsa) [1874007] - bpf: Update local storage test to check handling of null ptrs (Jiri Olsa) [1874007] - bpf: Fix typo in bpf_inode_storage.c (Jiri Olsa) [1874007] - bpf: Add size arg to build_id_parse function (Jiri Olsa) [1874007] - bpf: Move stack_map_get_build_id into lib (Jiri Olsa) [1874007] - bpf: Add tests for new BPF atomic operations (Jiri Olsa) [1874007] - bpf: Add bitwise atomic instructions (Jiri Olsa) [1874007] - bpf: Pull out a macro for interpreting atomic ALU operations (Jiri Olsa) [1874007] - bpf: Add instructions for atomic_[cmp]xchg (Jiri Olsa) [1874007] - bpf: Add BPF_FETCH field / create atomic_fetch_add instruction (Jiri Olsa) [1874007] - bpf: Move BPF_STX reserved field check into BPF_STX verifier code (Jiri Olsa) [1874007] - bpf: Rename BPF_XADD and prepare to encode other atomics in .imm (Jiri Olsa) [1874007] - bpf: x86: Factor out a lookup table for some ALU opcodes (Jiri Olsa) [1874007] - bpf: x86: Factor out emission of REX byte (Jiri Olsa) [1874007] - bpf: x86: Factor out emission of ModR/M for *(reg + off) (Jiri Olsa) [1874007] - bpf, libbpf: Avoid unused function warning on bpf_tail_call_static (Jiri Olsa) [1874007] - selftests/bpf: Install btf_dump test cases (Jiri Olsa) [1874007] - selftests/bpf: Fix installation of urandom_read (Jiri Olsa) [1874007] - selftests/bpf: Move generated test files to $(TEST_GEN_FILES) (Jiri Olsa) [1874007] - selftests/bpf: Fix out-of-tree build (Jiri Olsa) [1874007] - selftests/bpf: Enable cross-building (Jiri Olsa) [1874007] - selftests/bpf: Test kernel module ksym externs (Jiri Olsa) [1874007] - libbpf: Support kernel module ksym externs (Jiri Olsa) [1874007] - bpf: Support BPF ksym variables in kernel modules (Jiri Olsa) [1874007] - selftests/bpf: Sync RCU before unloading bpf_testmod (Jiri Olsa) [1874007] - bpf: Fix a verifier message for alloc size helper arg (Jiri Olsa) [1874007] - bpf: Clarify return value of probe str helpers (Jiri Olsa) [1874007] - libbpf: Clarify kernel type use with USER variants of CORE reading macros (Jiri Olsa) [1874007] - selftests/bpf: Remove duplicate include in test_lsm (Jiri Olsa) [1874007] - bpf: Remove unnecessary include from preload/iterators (Jiri Olsa) [1874007] - selftests/bpf: Add tests for user- and non-CO-RE BPF_CORE_READ() variants (Jiri Olsa) [1874007] - libbpf: Add non-CO-RE variants of BPF_CORE_READ() macro family (Jiri Olsa) [1874007] - selftests/bpf: Fix a compile error for BPF_F_BPRM_SECUREEXEC (Jiri Olsa) [1874007] - bpf: Use thread_group_leader() (Jiri Olsa) [1874007] - bpf: Save correct stopping point in file seq iteration (Jiri Olsa) [1874007] - selftests/bpf: Work-around EBUSY errors from hashmap update/delete (Jiri Olsa) [1874007] - bpf: Add schedule point in htab_init_buckets() (Jiri Olsa) [1874007] - bpf: Remove unused including (Jiri Olsa) [1874007] - selftests/bpf: Fix spelling mistake "tranmission" -> "transmission" (Jiri Olsa) [1874007] - selftests/bpf: Clarify build error if no vmlinux (Jiri Olsa) [1874007] - tweewide: Fix most Shebang lines (Jiri Olsa) [1874007] - bpf: In bpf_task_fd_query use fget_task (Jiri Olsa) [1874007] - selftests/bpf: Add a test for ptr_to_map_value on stack for helper access (Jiri Olsa) [1874007] - bpf: Permits pointers on stack for helper calls (Jiri Olsa) [1874007] - libbpf: Expose libbpf ring_buffer epoll_fd (Jiri Olsa) [1874007] - selftests/bpf: Add set_attach_target() API selftest for module target (Jiri Olsa) [1874007] - libbpf: Support modules in bpf_program__set_attach_target() API (Jiri Olsa) [1874007] - selftests/bpf: Silence ima_setup.sh when not running in verbose mode. (Jiri Olsa) [1874007] - selftests/bpf: Drop the need for LLVM's llc (Jiri Olsa) [1874007] - selftests/bpf: fix bpf_testmod.ko recompilation logic (Jiri Olsa) [1874007] - selftests/bpf: Make selftest compilation work on clang 11 (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - adding xdpxceiver to .gitignore (Jiri Olsa) [1874007] - selftests/bpf: Drop tcp-{client,server}.py from Makefile (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - Bi-directional Sockets - SKB, DRV (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - Socket Teardown - SKB, DRV (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - DRV POLL, NOPOLL (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - SKB POLL, NOPOLL (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests framework (Jiri Olsa) [1874007] - bpf: Return -ENOTSUPP when attaching to non-kernel BTF (Jiri Olsa) [1874007] - bpf: Propagate __user annotations properly (Jiri Olsa) [1874007] - bpf: Avoid overflows involving hash elem_size (Jiri Olsa) [1874007] - selftests/bpf: Test bpf_sk_storage_get in tcp iterators (Jiri Olsa) [1874007] - selftests/bpf: Add an iterator selftest for bpf_sk_storage_get (Jiri Olsa) [1874007] - selftests/bpf: Add an iterator selftest for bpf_sk_storage_delete (Jiri Olsa) [1874007] - bpf: Add a bpf_sock_from_file helper (Jiri Olsa) [1874007] - selftests/bpf: Avoid errno clobbering (Jiri Olsa) [1874007] - selftests/bpf: Print reason when a tester could not run a program (Jiri Olsa) [1874007] - selftests/bpf: Fix invalid use of strncat in test_sockmap (Jiri Olsa) [1874007] - libbpf: Use memcpy instead of strncpy to please GCC (Jiri Olsa) [1874007] - selftests/bpf: Add fentry/fexit/fmod_ret selftest for kernel module (Jiri Olsa) [1874007] - selftests/bpf: Add tp_btf CO-RE reloc test for modules (Jiri Olsa) [1874007] - libbpf: Support attachment of BPF tracing programs to kernel modules (Jiri Olsa) [1874007] - libbpf: Factor out low-level BPF program loading helper (Jiri Olsa) [1874007] - bpf: Allow to specify kernel module BTFs when attaching BPF programs (Jiri Olsa) [1874007] - bpf: Remove hard-coded btf_vmlinux assumption from BPF verifier (Jiri Olsa) [1874007] - selftests/bpf: Add CO-RE relocs selftest relying on kernel module BTF (Jiri Olsa) [1874007] - selftests/bpf: Add support for marking sub-tests as skipped (Jiri Olsa) [1874007] - selftests/bpf: Add bpf_testmod kernel module for testing (Jiri Olsa) [1874007] - libbpf: Add kernel module BTF support for CO-RE relocations (Jiri Olsa) [1874007] - libbpf: Refactor CO-RE relocs to not assume a single BTF object (Jiri Olsa) [1874007] - libbpf: Add internal helper to load BTF data by FD (Jiri Olsa) [1874007] - selftests/bpf: Add Userspace tests for TCP_WINDOW_CLAMP (Jiri Olsa) [1874007] - bpf: Fix cold build of test_progs-no_alu32 (Jiri Olsa) [1874007] - libbpf: Cap retries in sys_bpf_prog_load (Jiri Olsa) [1874007] - libbpf: Sanitise map names before pinning (Jiri Olsa) [1874007] - libbpf: Fail early when loading programs with unspecified type (Jiri Olsa) [1874007] - selftests/bpf: Indent ima_setup.sh with tabs. (Jiri Olsa) [1874007] - selftests/bpf: Add config dependency on BLK_DEV_LOOP (Jiri Olsa) [1874007] - selftests/bpf: Ensure securityfs mount before writing ima policy (Jiri Olsa) [1874007] - selftests/bpf: Update ima_setup.sh for busybox (Jiri Olsa) [1874007] - libbpf: Separate XDP program load with xsk socket creation (Jiri Olsa) [1874007] - selftests/bpf: Copy file using read/write in local storage test (Jiri Olsa) [1874007] - libbpf: Add base BTF accessor (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf progs (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf local storage maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for stackmap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf ringbuffer (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for reuseport_array maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for queue_stack_maps maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for lpm_trie maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for hashtab maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for devmap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for cgroup storage maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for cpumap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf_struct_ops maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for arraymap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf local storage maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf ringbuffer (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for lpm_trie maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for hashtab maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for devmap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for cgroup storage maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for cpumap maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for arraymap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf maps (Jiri Olsa) [1874007] - bpf: Prepare for memcg-based memory accounting for bpf maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf progs (Jiri Olsa) [1874007] - selftests/bpf: Extend bind{4,6} programs with a call to bpf_setsockopt (Jiri Olsa) [1874007] - selftests/bpf: Rewrite test_sock_addr bind bpf into C (Jiri Olsa) [1874007] - selftests/bpf: Fix flavored variants of test_ima (Jiri Olsa) [1874007] - libbpf: Replace size_t with __u32 in xsk interfaces (Jiri Olsa) [1874007] - bpf: Add a selftest for bpf_ima_inode_hash (Jiri Olsa) [1874007] - bpf: Add a BPF helper for getting the IMA hash of an inode (Jiri Olsa) [1874007] - libbpf: Add support for canceling cached_cons advance (Jiri Olsa) [1874007] - bpf: Refactor check_cfg to use a structured loop. (Jiri Olsa) [1874007] - selftest/bpf: Fix rst formatting in readme (Jiri Olsa) [1874007] - selftest/bpf: Fix link in readme (Jiri Olsa) [1874007] - bpf: Simplify task_file_seq_get_next() (Jiri Olsa) [1874007] - selftests/bpf: Mark tests that require unaligned memory access (Jiri Olsa) [1874007] - selftests/bpf: Avoid running unprivileged tests with alignment requirements (Jiri Olsa) [1874007] - selftests/bpf: Fix broken riscv build (Jiri Olsa) [1874007] - bpf: Add bpf_ktime_get_coarse_ns helper (Jiri Olsa) [1874007] - bpf: Add tests for bpf_bprm_opts_set helper (Jiri Olsa) [1874007] - bpf: Add bpf_bprm_opts_set helper (Jiri Olsa) [1874007] - libbpf: bpf__find_by_name[_kind] should use btf__get_nr_types() (Jiri Olsa) [1874007] - selftest/bpf: Fix IPV6FR handling in flow dissector (Jiri Olsa) [1874007] - bpf: Augment the set of sleepable LSM hooks (Jiri Olsa) [1874007] - bpf: selftest: Use bpf_sk_storage in FENTRY/FEXIT/RAW_TP (Jiri Olsa) [1874007] - selftests/bpf: Add asm tests for pkt vs pkt_end comparison. (Jiri Olsa) [1874007] - selftests/bpf: Add skb_pkt_end test (Jiri Olsa) [1874007] - bpf: Support for pointers beyond pkt_end. (Jiri Olsa) [1874007] - bpf: Compile out btf_parse_module() if module BTF is not enabled (Jiri Olsa) [1874007] - selftest/bpf: Add missed ip6ip6 test back (Jiri Olsa) [1874007] - bpf: Keep module's btf_data_size intact after load (Jiri Olsa) [1874007] - bpf: Sanitize BTF data pointer after module is loaded (Jiri Olsa) [1874007] - bpf: Load and verify kernel module BTFs (Jiri Olsa) [1874007] - bpf: Assign ID to vmlinux BTF and return extra info for BTF in GET_OBJ_INFO (Jiri Olsa) [1874007] - bpf: Add in-kernel split BTF support (Jiri Olsa) [1874007] - bpf, btf: Remove the duplicate btf_ids.h include (Jiri Olsa) [1874007] - selftests/bpf: Fix selftest build with old libc (Jiri Olsa) [1874007] - bpf: Exercise syscall operations for inode and sk storage (Jiri Olsa) [1874007] - bpf: Add tests for task_local_storage (Jiri Olsa) [1874007] - bpf: Update selftests for local_storage to use vmlinux.h (Jiri Olsa) [1874007] - bpf: Implement get_current_task_btf and RET_PTR_TO_BTF_ID (Jiri Olsa) [1874007] - libbpf: Add support for task local storage (Jiri Olsa) [1874007] - bpf: Implement task local storage (Jiri Olsa) [1874007] - bpf: Allow LSM programs to use bpf spin locks (Jiri Olsa) [1874007] - bpf: Lift hashtab key_size limit (Jiri Olsa) [1874007] - selftests/bpf: Add split BTF dedup selftests (Jiri Olsa) [1874007] - libbpf: Accomodate DWARF/compiler bug with duplicated identical arrays (Jiri Olsa) [1874007] - libbpf: Support BTF dedup of split BTFs (Jiri Olsa) [1874007] - libbpf: Fix BTF data layout checks and allow empty BTF (Jiri Olsa) [1874007] - selftests/bpf: Add checking of raw type dump in BTF writer APIs selftests (Jiri Olsa) [1874007] - selftests/bpf: Add split BTF basic test (Jiri Olsa) [1874007] - libbpf: Implement basic split BTF support (Jiri Olsa) [1874007] - libbpf: Unify and speed up BTF string deduplication (Jiri Olsa) [1874007] - selftest/bpf: Relax btf_dedup test checks (Jiri Olsa) [1874007] - libbpf: Factor out common operations in BTF writing APIs (Jiri Olsa) [1874007] - selftest/bpf: Use global variables instead of maps for test_tcpbpf_kern (Jiri Olsa) [1874007] - selftests/bpf: Migrate tcpbpf_user.c to use BPF skeleton (Jiri Olsa) [1874007] - selftests/bpf: Replace EXPECT_EQ with ASSERT_EQ and refactor verify_results (Jiri Olsa) [1874007] - selftests/bpf: Drop python client/server in favor of threads (Jiri Olsa) [1874007] - selftests/bpf: Move test_tcppbf_user into test_progs (Jiri Olsa) [1874007] - bpf: Fix error path in htab_map_alloc() (Jiri Olsa) [1874007] - bpf: Avoid hashtab deadlock with map_locked (Jiri Olsa) [1874007] - bpf: Use separate lockdep class for each hashtab (Jiri Olsa) [1874007] - fault-injection: handle EI_ETYPE_TRUE (Jiri Olsa) [1874007] - vfs, fdtable: Add fget_task helper (Jiri Olsa) [1874007] - [s390] vfio-pci/zdev: Add zPCI capabilities to VFIO_DEVICE_GET_INFO (Claudio Imbrenda) [1858844] - [s390] vfio: Introduce capability definitions for VFIO_DEVICE_GET_INFO (Claudio Imbrenda) [1858844] - [s390] s390/pci: track whether util_str is valid in the zpci_dev (Claudio Imbrenda) [1858844] - [s390] s390/pci: stash version in the zpci_dev (Claudio Imbrenda) [1858844]- Enable CRYPTO_SHA512 and _SSSE3 so these are available in FIPS mode (Vladis Dronov) [1973106] - crypto: drbg - self test for HMAC(SHA-512) (Vladis Dronov) [1973106] - xfrm: xfrm_state_mtu should return at least 1280 for ipv6 (Sabrina Dubroca) [1919786] - xfrm: remove get_mtu indirection from xfrm_type (Sabrina Dubroca) [1919786] - netfilter: move endif to correct location (Florian Westphal) [1971991] - netfilter: nft_compat: remove flush counter optimization (Florian Westphal) [1974323] - mptcp: fix soft lookup in subflow_error_report() (Florian Westphal) [1936368] - selftests: mptcp: enable syncookie only in absence of reorders (Florian Westphal) [1936368] - mptcp: do not warn on bad input from the network (Florian Westphal) [1936368] - mptcp: wake-up readers only for in sequence data (Florian Westphal) [1936368] - mptcp: try harder to borrow memory from subflow under pressure (Florian Westphal) [1936368] - mptcp: Fix out of bounds when parsing TCP options (Florian Westphal) [1936368] - selftests: mptcp_connect: add SO_TIMESTAMPNS cmsg support (Florian Westphal) [1936368] - mptcp: receive path cmsg support (Florian Westphal) [1936368] - tcp: export timestamp helpers for mptcp (Florian Westphal) [1936368] - mptcp: setsockopt: handle SOL_SOCKET in one place only (Florian Westphal) [1936368] - mptcp: sockopt: propagate timestamp request to subflows (Florian Westphal) [1936368] - sock: expose so_timestamping options for mptcp (Florian Westphal) [1936368] - mptcp: restrict values of 'enabled' sysctl (Florian Westphal) [1936368] - mptcp: support SYSCTL only if enabled (Florian Westphal) [1936368] - mptcp: make sure flag signal is set when add addr with port (Florian Westphal) [1936368] - mptcp: remove redundant initialization in pm_nl_init_net() (Florian Westphal) [1936368] - mptcp: generate subflow hmac after mptcp_finish_join() (Florian Westphal) [1936368] - mptcp: using TOKEN_MAX_RETRIES instead of magic number (Florian Westphal) [1936368] - mptcp: fix pr_debug in mptcp_token_new_connect (Florian Westphal) [1936368] - mptcp: update selftest for fallback due to OoO (Florian Westphal) [1936368] - mptcp: do not reset MP_CAPABLE subflow on mapping errors (Florian Westphal) [1936368] - mptcp: always parse mptcp options for MPC reqsk (Florian Westphal) [1936368] - mptcp: fix sk_forward_memory corruption on retransmission (Florian Westphal) [1936368] - mptcp: validate 'id' when stopping the ADD_ADDR retransmit timer (Florian Westphal) [1936368] - mptcp: avoid error message on infinite mapping (Florian Westphal) [1936368] - mptcp: drop unconditional pr_warn on bad opt (Florian Westphal) [1936368] - mptcp: avoid OOB access in setsockopt() (Florian Westphal) [1936368] - mptcp: fix data stream corruption (Florian Westphal) [1936368] - mptcp: fix splat when closing unaccepted socket (Florian Westphal) [1936368] - selftests: mptcp: add a test case for MSG_PEEK (Florian Westphal) [1936368] - mptcp: add MSG_PEEK support (Florian Westphal) [1936368] - mptcp: ignore unsupported msg flags (Florian Westphal) [1936368] - mptcp: implement MSG_TRUNC support (Florian Westphal) [1936368] - mptcp: implement dummy MSG_ERRQUEUE support (Florian Westphal) [1936368] - mptcp: Retransmit DATA_FIN (Florian Westphal) [1936368] - selftests: mptcp: add packet mark test case (Florian Westphal) [1936368] - selftests: mptcp: add the net device name testcase (Florian Westphal) [1936368] - selftests: mptcp: dump more info on mpjoin errors (Florian Westphal) [1936368] - selftests: mptcp: init nstat history (Florian Westphal) [1936368] - selftests: mptcp: launch mptcp_connect with timeout (Florian Westphal) [1936368] - selftests: mptcp: remove id 0 address testcases (Florian Westphal) [1936368] - selftests: mptcp: add addr argument for del_addr (Florian Westphal) [1936368] - selftests: mptcp: avoid calling pm_nl_ctl with bad IDs (Florian Westphal) [1936368] - selftests: mptcp: signal addresses testcases (Florian Westphal) [1936368] - selftests: mptcp: timeout testcases for multi addresses (Florian Westphal) [1936368] - selftests: mptcp: add cfg_do_w for cfg_remove (Florian Westphal) [1936368] - selftests: mptcp: Restore packet capture option in join tests (Florian Westphal) [1936368] - selftests: mptcp: add testcases for removing addrs (Florian Westphal) [1936368] - selftests: mptcp: set addr id for removing testcases (Florian Westphal) [1936368] - selftests: mptcp: add invert argument for chk_rm_nr (Florian Westphal) [1936368] - selftests: mptcp: fail if not enough SYN/3rd ACK (Florian Westphal) [1936368] - selftests: mptcp: display warnings on one line (Florian Westphal) [1936368] - selftests: mptcp: fix ACKRX debug message (Florian Westphal) [1936368] - selftests: mptcp: dump more info on errors (Florian Westphal) [1936368] - selftests: mptcp: add command line arguments for mptcp_join.sh (Florian Westphal) [1936368] - selftests: mptcp: add testcases for ADD_ADDR with port (Florian Westphal) [1936368] - selftests: mptcp: add port argument for pm_nl_ctl (Florian Westphal) [1936368] - selftests: mptcp: add testcases for newly added addresses (Florian Westphal) [1936368] - selftests: mptcp: use minus values for removing address numbers (Florian Westphal) [1936368] - selftests: increase timeout to 10 min (Florian Westphal) [1936368] - selftests: mptcp: add IPv4-mapped IPv6 testcases (Florian Westphal) [1936368] - mptcp: use mptcp_for_each_subflow in mptcp_close (Florian Westphal) [1936368] - mptcp: add tracepoint in subflow_check_data_avail (Florian Westphal) [1936368] - mptcp: add tracepoint in ack_update_msk (Florian Westphal) [1936368] - mptcp: add tracepoint in get_mapping_status (Florian Westphal) [1936368] - mptcp: add tracepoint in mptcp_subflow_get_send (Florian Westphal) [1936368] - mptcp: export mptcp_subflow_active (Florian Westphal) [1936368] - mptcp: fix format specifiers for unsigned int (Florian Westphal) [1936368] - mptcp: sockopt: add TCP_CONGESTION and TCP_INFO (Florian Westphal) [1936368] - mptcp: setsockopt: SO_DEBUG and no-op options (Florian Westphal) [1936368] - mptcp: setsockopt: add SO_INCOMING_CPU (Florian Westphal) [1936368] - mptcp: setsockopt: add SO_MARK support (Florian Westphal) [1936368] - mptcp: setsockopt: support SO_LINGER (Florian Westphal) [1936368] - mptcp: setsockopt: handle receive/send buffer and device bind (Florian Westphal) [1936368] - mptcp: setsockopt: handle SO_KEEPALIVE and SO_PRIORITY (Florian Westphal) [1936368] - mptcp: tag sequence_seq with socket state (Florian Westphal) [1936368] - mptcp: add skeleton to sync msk socket options to subflows (Florian Westphal) [1936368] - mptcp: only admit explicitly supported sockopt (Florian Westphal) [1936368] - mptcp: move sockopt function into a new file (Florian Westphal) [1936368] - mptcp: drop all sub-options except ADD_ADDR when the echo bit is set (Florian Westphal) [1936368] - mptcp: unify add_addr(6)_generate_hmac (Florian Westphal) [1936368] - mptcp: drop MPTCP_ADDR_IPVERSION_4/6 (Florian Westphal) [1936368] - mptcp: use mptcp_addr_info in mptcp_options_received (Florian Westphal) [1936368] - mptcp: drop OPTION_MPTCP_ADD_ADDR6 (Florian Westphal) [1936368] - mptcp: use mptcp_addr_info in mptcp_out_options (Florian Westphal) [1936368] - mptcp: move flags and ifindex out of mptcp_addr_info (Florian Westphal) [1936368] - mptcp: add mptcp reset option support (Florian Westphal) [1936368] - mptcp: remove unneeded check on first subflow (Florian Westphal) [1936368] - mptcp: add active MPC mibs (Florian Westphal) [1936368] - mptcp: add mib for token creation fallback (Florian Westphal) [1936368] - mptcp: remove id 0 address (Florian Westphal) [1936368] - mptcp: unify RM_ADDR and RM_SUBFLOW receiving (Florian Westphal) [1936368] - mptcp: remove all subflows involving id 0 address (Florian Westphal) [1936368] - mptcp: subflow.c: Fix a typo (Florian Westphal) [1936368] - mptcp: rename mptcp_pm_nl_add_addr_send_ack (Florian Westphal) [1936368] - mptcp: send ack for rm_addr (Florian Westphal) [1936368] - mptcp: drop useless addr_signal clear (Florian Westphal) [1936368] - mptcp: move to next addr when subflow creation fail (Florian Westphal) [1936368] - mptcp: export lookup_anno_list_by_saddr (Florian Westphal) [1936368] - mptcp: move to next addr when timeout (Florian Westphal) [1936368] - mptcp: drop unused subflow in mptcp_pm_subflow_established (Florian Westphal) [1936368] - mptcp: skip connecting the connected address (Florian Westphal) [1936368] - mptcp: drop argument port from mptcp_pm_announce_addr (Florian Westphal) [1936368] - mptcp: clean-up the rtx path (Florian Westphal) [1936368] - mptcp: fix ADD_ADDR HMAC in case port is specified (Florian Westphal) [1936368] - mptcp: remove a list of addrs when flushing (Florian Westphal) [1936368] - mptcp: remove multi addresses and subflows in PM (Florian Westphal) [1936368] - mptcp: remove multi subflows in PM (Florian Westphal) [1936368] - mptcp: remove multi addresses in PM (Florian Westphal) [1936368] - mptcp: add rm_list_rx in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: add rm_list in mptcp_options_received (Florian Westphal) [1936368] - mptcp: add rm_list_tx in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: add rm_list in mptcp_out_options (Florian Westphal) [1936368] - mptcp: fix bit MPTCP_PUSH_PENDING tests (Florian Westphal) [1936368] - mptcp: fix length of ADD_ADDR with port sub-option (Florian Westphal) [1936368] - mptcp: free resources when the port number is mismatched (Florian Westphal) [1936368] - mptcp: fix missing wakeup (Florian Westphal) [1936368] - mptcp: fix race in release_cb (Florian Westphal) [1936368] - mptcp: factor out __mptcp_retrans helper() (Florian Westphal) [1936368] - mptcp: reset 'first' and ack_hint on subflow close (Florian Westphal) [1936368] - mptcp: dispose initial struct socket when its subflow is closed (Florian Westphal) [1936368] - mptcp: fix memory accounting on allocation error (Florian Westphal) [1936368] - mptcp: put subflow sock on connect error (Florian Westphal) [1936368] - mptcp: reset last_snd on subflow close (Florian Westphal) [1936368] - mptcp: do not wakeup listener for MPJ subflows (Florian Westphal) [1936368] - mptcp: fix DATA_FIN generation on early shutdown (Florian Westphal) [1936368] - mptcp: fix DATA_FIN processing for orphaned sockets (Florian Westphal) [1936368] - mptcp: add local addr info in mptcp_info (Florian Westphal) [1936368] - mptcp: add netlink event support (Florian Westphal) [1936368] - mptcp: avoid lock_fast usage in accept path (Florian Westphal) [1936368] - netlink: don't call ->netlink_bind with table lock held (Florian Westphal) [1936368] - genetlink: restrict upcoming mptcp netlink events to CAP_NET_ADMIN (Florian Westphal) [1936368] - mptcp: pass subflow socket to a few helpers (Florian Westphal) [1936368] - mptcp: move subflow close loop after sk close check (Florian Westphal) [1936368] - mptcp: schedule worker when subflow is closed (Florian Westphal) [1936368] - mptcp: split __mptcp_close_ssk helper (Florian Westphal) [1936368] - mptcp: move pm netlink work into pm_netlink (Florian Westphal) [1936368] - mptcp: add a missing retransmission timer scheduling (Florian Westphal) [1936368] - mptcp: better msk receive window updates (Florian Westphal) [1936368] - mptcp: init mptcp request socket earlier (Florian Westphal) [1936368] - mptcp: fix spurious retransmissions (Florian Westphal) [1936368] - mptcp: fix poll after shutdown (Florian Westphal) [1936368] - mptcp: deliver ssk errors to msk (Florian Westphal) [1936368] - mptcp: pm: add lockdep assertions (Florian Westphal) [1936368] - mptcp: add the mibs for ADD_ADDR with port (Florian Westphal) [1936368] - mptcp: deal with MPTCP_PM_ADDR_ATTR_PORT in PM netlink (Florian Westphal) [1936368] - mptcp: enable use_port when invoke addresses_equal (Florian Westphal) [1936368] - mptcp: add port number check for MP_JOIN (Florian Westphal) [1936368] - mptcp: add a new helper subflow_req_create_thmac (Florian Westphal) [1936368] - mptcp: drop unused skb in subflow_token_join_request (Florian Westphal) [1936368] - mptcp: create the listening socket for new port (Florian Westphal) [1936368] - mptcp: create subflow or signal addr for newly added address (Florian Westphal) [1936368] - mptcp: drop *_max fields in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: use WRITE_ONCE for the pernet *_max (Florian Westphal) [1936368] - mptcp: pm nl: reduce variable scope (Florian Westphal) [1936368] - mptcp: pm nl: support IPv4 mapped in v6 addresses (Florian Westphal) [1936368] - mptcp: support MPJoin with IPv4 mapped in v6 sk (Florian Westphal) [1936368] - mptcp: use sha256() instead of open coding (Florian Westphal) [1936368] - crypto: lib/sha256 - add sha256() function (Florian Westphal) [1936368] - mptcp: use SHA256_BLOCK_SIZE, not SHA_MESSAGE_BYTES (Florian Westphal) [1936368] - xprtrdma: Pad optimization, revisited (Steve Dickson) [1926957] - ibmvnic: remove set but not used variable 'netdev' (Diego Domingos) [1922193] - net/ibmvnic: Remove tests of member address (Diego Domingos) [1922193] - ibmvnic: remove duplicate napi_schedule call in do_reset function (Diego Domingos) [1922193] - ibmvnic: avoid calling napi_disable() twice (Diego Domingos) [1922193] - ibmvnic: queue reset work in system_long_wq (Diego Domingos) [1922193] - ibmvnic: correctly use dev_consume/free_skb_irq (Diego Domingos) [1922193] - ibmvnic: improve failover sysfs entry (Diego Domingos) [1922193] - ibmvnic: print adapter state as a string (Diego Domingos) [1922193] - ibmvnic: print reset reason as a string (Diego Domingos) [1922193] - ibmvnic: clean up the remaining debugfs data structures (Diego Domingos) [1922193] - ibmvnic: Use 'skb_frag_address()' instead of hand coding it (Diego Domingos) [1922193] - ibmvnic: remove excessive irqsave (Diego Domingos) [1922193] - ibmvnic: always store valid MAC address (Diego Domingos) [1922193] - ibmvnic: Fix possibly uninitialized old_num_tx_queues variable warning. (Diego Domingos) [1922193] - vio: make remove callback return void (Diego Domingos) [1922193] - tty: hvcs: Drop unnecessary if block (Diego Domingos) [1922193] - ibmvnic: serialize access to work queue on remove (Diego Domingos) [1922193] - ibmvnic: skip send_request_unmap for timeout reset (Diego Domingos) [1922193] - ibmvnic: add memory barrier to protect long term buffer (Diego Domingos) [1922193] - ibmvnic: substitute mb() with dma_wmb() for send_*crq* functions (Diego Domingos) [1922193] - ibmvnic: prefer strscpy over strlcpy (Diego Domingos) [1922193] - ibmvnic: remove unused spinlock_t stats_lock definition (Diego Domingos) [1922193] - ibmvnic: add comments for spinlock_t definitions (Diego Domingos) [1922193] - ibmvnic: fix miscellaneous checks (Diego Domingos) [1922193] - ibmvnic: avoid multiple line dereference (Diego Domingos) [1922193] - ibmvnic: fix braces (Diego Domingos) [1922193] - ibmvnic: fix block comments (Diego Domingos) [1922193] - ibmvnic: prefer 'unsigned long' over 'unsigned long int' (Diego Domingos) [1922193] - ibmvnic: remove unnecessary rmb() inside ibmvnic_poll (Diego Domingos) [1922193] - ibmvnic: rework to ensure SCRQ entry reads are properly ordered (Diego Domingos) [1922193] - ibmvnic: Ensure that CRQ entry read are correctly ordered (Diego Domingos) [1922193] - net: ethernet: ibm: ibmvnic: Fix some kernel-doc misdemeanours (Diego Domingos) [1922193] - powerpc/hmi: Fix kernel hang when TB is in error state. (Gustavo Walbon) [1924091] - powerpc/eeh: Fix EEH handling for hugepages in ioremap space. (Gustavo Walbon) [1924090] - powerpc/pseries: Only register vio drivers if vio bus exists (Gustavo Walbon) [1924090] - powerpc/pci: Remove unimplemented prototypes (Gustavo Walbon) [1924090] - powerpc/powernv/pci: Use kzalloc() for phb related allocations (Gustavo Walbon) [1924090] - powerpc/pasemi: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/mve5100: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/mpc7448: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/linkstation: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/holly: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/chrp: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/amigaone: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/83xx: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/82xx/*: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/mpc5200_simple: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/media5200: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/lite5200: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/efika: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/512x: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/pci: Move PHB discovery for PCI_DN using platforms (Gustavo Walbon) [1924090] - powerpc/maple: Fix declaration made after definition (Gustavo Walbon) [1924090] - powerpc/pci: Add ppc_md.discover_phbs() (Gustavo Walbon) [1924090] - powerpc/pci: Delete traverse_pci_dn() (Gustavo Walbon) [1924090] - powerpc/eeh: Rework pci_dev lookup in debugfs attributes (Gustavo Walbon) [1924090] - selftests/powerpc: Add VF recovery tests (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Make pseries_send_allow_unfreeze() static (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Make pseries_pcibios_bus_add_device() static (Gustavo Walbon) [1924090] - selftests/powerpc: Make the test check in eeh-basic.sh posix compliant (Gustavo Walbon) [1924090] - powernv/pci: Print an error when device enable is blocked (Gustavo Walbon) [1924090] - selftests/powerpc/eeh: disable kselftest timeout setting for eeh-basic (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Fix a possible debugfs deadlock (Gustavo Walbon) [1924090] - powerpc/eeh: Fix eeh_dev_check_failure() for PE#0 (Gustavo Walbon) [1924090] - selftests/powerpc: Fix eeh-basic.sh exit codes (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Fix use of uninitialised variable (Gustavo Walbon) [1924090] - powerpc/eeh: Delete eeh_pe->config_addr (Gustavo Walbon) [1924090] - powerpc/eeh: Clean up PE addressing (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Allow zero to be a valid PE configuration address (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Rework device EEH PE determination (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Clean up pe_config_addr lookups (Gustavo Walbon) [1924090] - powerpc/eeh: Move EEH initialisation to an arch initcall (Gustavo Walbon) [1924090] - powerpc/eeh: Delete eeh_ops->init (Gustavo Walbon) [1924090] - powerpc/pseries: Stop using eeh_ops->init() (Gustavo Walbon) [1924090] - powerpc/powernv: Stop using eeh_ops->init() (Gustavo Walbon) [1924090] - powerpc/eeh: Rework EEH initialisation (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Fix dumb linebreaks (Gustavo Walbon) [1924090] - selftests/powerpc: Squash spurious errors due to device removal (Gustavo Walbon) [1924090] - powerpc/eeh: Move PE tree setup into the platform (Gustavo Walbon) [1924090] - powerpc/eeh: Drop pdn use in eeh_pe_tree_insert() (Gustavo Walbon) [1924090] - powerpc/eeh: Rename eeh_{add_to|remove_from}_parent_pe() (Gustavo Walbon) [1924090] - powerpc/eeh: Remove class code field from edev (Gustavo Walbon) [1924090] - powerpc/eeh: Remove spurious use of pci_dn in eeh_dump_dev_log (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->{read|write}_config() (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->resume_notify() (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->restore_config() (Gustavo Walbon) [1924090] - powerpc/eeh: Remove VF config space restoration (Gustavo Walbon) [1924090] - powerpc/eeh: Kill off eeh_ops->get_pe_addr() (Gustavo Walbon) [1924090] - powerpc/pseries: Stop using pdn->pe_number (Gustavo Walbon) [1924090] - powerpc/eeh: Move vf_index out of pci_dn and into eeh_dev (Gustavo Walbon) [1924090] - powerpc/eeh: Remove eeh_dev.c (Gustavo Walbon) [1924090] - powerpc/eeh: Remove eeh_dev_phb_init_dynamic() (Gustavo Walbon) [1924090] - powerpc/powernv: Make pnv_pci_sriov_enable() and friends static (Gustavo Walbon) [1924090] - powerpc/pseries: Make vio and ibmebus initcalls pseries specific (Gustavo Walbon) [1924090] - powerpc/eeh: Release EEH device state synchronously (Gustavo Walbon) [1924090] - powerpc/eeh: Rework eeh_ops->probe() (Gustavo Walbon) [1924090] - powerpc/eeh: Make early EEH init pseries specific (Gustavo Walbon) [1924090] - powerpc/eeh: Remove PHB check in probe (Gustavo Walbon) [1924090] - powerpc/eeh: Do early EEH init only when required (Gustavo Walbon) [1924090] - powerpc/eeh: Only dump stack once if an MMIO loop is detected (Gustavo Walbon) [1924090] - powernv/pci: Add a debugfs entry to dump PHB's IODA PE state (Gustavo Walbon) [1924090] - powernv/pci: Allow any write trigger the diag dump (Gustavo Walbon) [1924090] - powernv/pci: Use pnv_phb as the private data for debugfs entries (Gustavo Walbon) [1924090] - powerpc/powernv/npu: Fix debugfs_simple_attr.cocci warnings (Gustavo Walbon) [1924090] - powerpc/pcidn: Warn when sriov pci_dn management is used incorrectly (Gustavo Walbon) [1924090] - powerpc/pcidn: Make VF pci_dn management CONFIG_PCI_IOV specific (Gustavo Walbon) [1924090] - powerpc/sriov: Remove VF eeh_dev state when disabling SR-IOV (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: Make clearing EEH_DEV_SYSFS saner (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: Remove double pci_dn lookup. (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: ifdef pseries sr-iov sysfs properties (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Don't use pci_dn when inserting new ranges (Gustavo Walbon) [1924090] - powerpc/eeh: differentiate duplicate detection message (Gustavo Walbon) [1924090] - powerpc/eeh: Handle hugepages in ioremap space (Gustavo Walbon) [1924090] - powerpc/powernv-eeh: Consisely desribe what this file does (Gustavo Walbon) [1924090] - powerpc/eeh_cache: fix a W=1 kernel-doc warning (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Add a way to dump the EEH address cache (Gustavo Walbon) [1924090] - powerpc/powernv: Escalate reset when IODA reset fails (Gustavo Walbon) [1924090] - powerpc/powernv/eeh/npu: Fix uninitialized variables in opal_pci_eeh_freeze_status (Gustavo Walbon) [1924090] - powerpc: eeh_event: convert semaphore to completion (Gustavo Walbon) [1924090] - powerpc/eeh: Declare pci_ers_result_name() as static (Gustavo Walbon) [1924090] - Bluetooth: verify AMP hci_chan before amp_destroy (Gopal Tiwari) [1962546] {CVE-2021-33034} - NFSv4.2 fix handling of sr_eof in SEEK's reply (Steve Dickson) [1948015] - SUNRPC: Fix null pointer dereference in svc_rqst_free() (Benjamin Coddington) [1952008] - NFSv4: Use sequence counter with associated spinlock (Benjamin Coddington) [1952008] - NFSv4.2: fix return value of _nfs4_get_security_label() (Benjamin Coddington) [1952008] - NFSD: fix error handling in NFSv4.0 callbacks (Benjamin Coddington) [1952008] - NFS: Don't gratuitously clear the inode cache when lookup failed (Benjamin Coddington) [1952008] - NFS: Don't revalidate the directory permissions on a lookup failure (Benjamin Coddington) [1952008] - nfsd: register pernet ops last, unregister first (Benjamin Coddington) [1952008] - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Benjamin Coddington) [1952008] - lockd: fix access beyond unterminated strings in prints (Benjamin Coddington) [1952008] - tty: Protect disc_data in n_tty_close and n_tty_flush_buffer (Rafael Aquini) [1879861] - hwmon: (amd_energy) Add AMD family 19h model 30h x86 match (Terry Bowman) [1949280]- redhat/configs: Re-enable dptf_power module (Prarit Bhargava) [1962349] - net/sched: act_ct: Offload connections with commit action (Marcelo Ricardo Leitner) [1965817] - netfilter: flowtable: Remove redundant hw refresh bit (Marcelo Ricardo Leitner) [1965817] - inet_diag: add support for tw_mark (Xin Long) [1972967] - mm: thp: fix MADV_REMOVE deadlock on shmem THP (Waiman Long) [1974659] {CVE-2020-29368} - mm: thp: make the THP mapcount atomic against __split_huge_pmd_locked() (Waiman Long) [1974659] {CVE-2020-29368} - mmap locking API: add mmap_lock_is_contended() (Waiman Long) [1970177] - mm: madvise: fix vma user-after-free (Waiman Long) [1970177] - khugepaged: collapse_pte_mapped_thp() protect the pmd lock (Waiman Long) [1970177] - khugepaged: collapse_pte_mapped_thp() flush the right range (Waiman Long) [1970177] - mm/mmap.c: close race between munmap() and expand_upwards()/downwards() (Waiman Long) [1970177] - mm: document warning in move_normal_pmd() and make it warn only once (Waiman Long) [1970177] - mmap locking API: convert mmap_sem comments (Waiman Long) [1970177] - mmap locking API: convert mmap_sem API comments (Waiman Long) [1970177] - mmap locking API: rename mmap_sem to mmap_lock (Waiman Long) [1970177] - mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked() (Waiman Long) [1970177] - mmap locking API: add MMAP_LOCK_INITIALIZER (Waiman Long) [1970177] - mmap locking API: convert nested write lock sites (Waiman Long) [1970177] - mmap locking API: convert mmap_sem call sites missed by coccinelle (Waiman Long) [1970177] - mmap locking API: use coccinelle to convert mmap_sem rwsem call sites (Waiman Long) [1970177] - MMU notifier: use the new mmap locking API (Waiman Long) [1970177] - mm/gup.c: further document vma_permits_fault() (Waiman Long) [1970177] - mm/gup.c: update the documentation (Waiman Long) [1970177] - mm/ksm: fix NULL pointer dereference when KSM zero page is enabled (Waiman Long) [1970177] - proc: inline vma_stop into m_stop (Waiman Long) [1970177] - mm: remove CONFIG_TRANSPARENT_HUGE_PAGECACHE (Waiman Long) [1970177] - fs/io_uring: set FOLL_PIN via pin_user_pages() (Waiman Long) [1970177] - shmem: pin the file in shmem_fault() if mmap_sem is dropped (Waiman Long) [1970177] - mm/gup.c: fix comments of __get_user_pages() and get_user_pages_remote() (Waiman Long) [1970177] - mm/init-mm.c: include for vm_committed_as_batch (Waiman Long) [1970177] - lib/generic-radix-tree.c: add kmemleak annotations (Waiman Long) [1970177] - mm: Remove BUG_ON mmap_sem not held from xxx_trans_huge_lock() (Waiman Long) [1970177] - lib/generic-radix-tree.c: make 2 functions static inline (Waiman Long) [1970177] - x86/mm: Clean up the pmd_read_atomic() comments (Waiman Long) [1970177] - x86/mm: Fix function name typo in pmd_read_atomic() comment (Waiman Long) [1970177] - khugepaged: enable collapse pmd for pte-mapped THP (Waiman Long) [1970177] - mm: Handle MADV_WILLNEED through vfs_fadvise() (Waiman Long) [1970177] - pagewalk: use lockdep_assert_held for locking validation (Waiman Long) [1970177] - mm: use down_read_killable for locking mmap_sem in access_remote_vm (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/map_files (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/clear_refs (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/pagemap (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/smaps_rollup (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/maps (Waiman Long) [1970177] - mm/filemap.c: correct the comment about VM_FAULT_RETRY (Waiman Long) [1970177] - mm: mmu_gather: remove __tlb_reset_range() for force flush (Waiman Long) [1970177] - arm64/mm: Drop mmap_sem before calling __do_kernel_fault() (Waiman Long) [1970177] - docs/vm: Minor editorial changes in the THP and hugetlbfs (Waiman Long) [1970177] - x86/mpx, mm/core: Fix recursive munmap() corruption (Waiman Long) [1970177] - doc: mm: migration doesn't use FOLL_SPLIT anymore (Waiman Long) [1970177] - filemap: add a comment about FAULT_FLAG_RETRY_NOWAIT behavior (Waiman Long) [1970177] - proc: commit to genradix (Waiman Long) [1970177] - generic radix trees (Waiman Long) [1970177] - mm: swap: add comment for swap_vma_readahead (Waiman Long) [1970177] - x86/mm: Make set_pmd_at() paravirt aware (Waiman Long) [1970177] - mm: select HAVE_MOVE_PMD on x86 for faster mremap (Waiman Long) [1970177] - mm: speed up mremap by 20x on large regions (Waiman Long) [1970177] - mm/mmap.c: remove verify_mm_writelocked() (Waiman Long) [1970177] - x86/fault: Check user_mode(regs) when avoiding an mmap_sem deadlock (Waiman Long) [1970177] - mm: brk: downgrade mmap_sem to read when shrinking (Waiman Long) [1970177] - mm: mremap: downgrade mmap_sem to read when shrinking (Waiman Long) [1970177] - mm: unmap VM_PFNMAP mappings with optimized path (Waiman Long) [1970177] - mm: unmap VM_HUGETLB mappings with optimized path (Waiman Long) [1970177] - mm: mmap: zap pages with read mmap_sem in munmap (Waiman Long) [1970177] - x86/mm: Fix exception table comments (Waiman Long) [1970177] - ACPI: x86: Call acpi_boot_table_init() after acpi_table_upgrade() (Mark Langsdorf) [1946282] - acpi/drivers/thermal: Remove TRIPS_NONE cooling device binding (Mark Langsdorf) [1946282] - thermal/drivers/acpi: Use hot and critical ops (Mark Langsdorf) [1946282] - thermal/core: Add critical and hot ops (Mark Langsdorf) [1946282] - thermal/core: Emit a warning if the thermal zone is updated without ops (Mark Langsdorf) [1946282] - ACPI: scan: Fix _STA getting called on devices with unmet dependencies (Mark Langsdorf) [1946282] - ACPI: tables: x86: Reserve memory occupied by ACPI tables (Mark Langsdorf) [1946282] - ACPICA: Always create namespace nodes using acpi_ns_create_node() (Mark Langsdorf) [1946282] - ACPI: platform: Add balanced-performance platform profile (Mark Langsdorf) [1946282] - ACPI: platform: Hide ACPI_PLATFORM_PROFILE option (Mark Langsdorf) [1946282] - ACPICA: Remove some code duplication from acpi_ev_address_space_dispatch (Mark Langsdorf) [1946282] - ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling (Mark Langsdorf) [1946282] - ACPI: property: Satisfy kernel doc validator (part 2) (Mark Langsdorf) [1946282] - ACPI: property: Satisfy kernel doc validator (part 1) (Mark Langsdorf) [1946282] - ACPI: property: Make acpi_node_prop_read() static (Mark Langsdorf) [1946282] - ACPI: property: Remove dead code (Mark Langsdorf) [1946282] - iommu/amd: Fix performance counter initialization (Mark Langsdorf) [1946282] - ACPI: property: Fix fwnode string properties matching (Mark Langsdorf) [1946282] - ACPI / NUMA: add a stub function for node_to_pxm() (Mark Langsdorf) [1946282] - ACPI: OSL: Rework acpi_check_resource_conflict() (Mark Langsdorf) [1946282] - ACPI: APEI: ERST: remove unneeded semicolon (Mark Langsdorf) [1946282] - iommu/vt-d: Add new enum value and structure for SATC (Mark Langsdorf) [1946282] - ACPI: Add support for native USB4 control _OSC (Mark Langsdorf) [1946282] - ACPI: Execute platform _OSC also with query bit clear (Mark Langsdorf) [1946282] - redhat/configs: Add CONFIG_ACPI_FPDT (Mark Langsdorf) [1946282] - ACPI: tables: introduce support for FPDT table (Mark Langsdorf) [1946282] - ACPI: APEI: Add is_generic_error() to identify GHES sources (Mark Langsdorf) [1946282] - ACPI: platform-profile: Fix possible deadlock in platform_profile_remove() (Mark Langsdorf) [1946282] - ACPI: platform-profile: Introduce object pointers to callbacks (Mark Langsdorf) [1946282] - PCI/ACPI: Clarify message about _OSC failure (Mark Langsdorf) [1946282] - PCI/ACPI: Remove unnecessary osc_lock (Mark Langsdorf) [1946282] - PCI/ACPI: Make acpi_pci_osc_control_set() static (Mark Langsdorf) [1946282] - media: ACPI / bus: Add acpi_dev_get_next_match_dev() and helper macro (Mark Langsdorf) [1946282] - ACPI: scan: Adjust white space in acpi_device_add() (Mark Langsdorf) [1946282] - ACPI: scan: Rearrange memory allocation in acpi_device_add() (Mark Langsdorf) [1946282] - ACPI: platform-profile: Drop const qualifier for cur_profile (Mark Langsdorf) [1946282] - ACPI: configfs: add missing check after configfs_register_default_group() (Mark Langsdorf) [1946282] - ACPI: CPPC: initialise vaddr pointers to NULL (Mark Langsdorf) [1946282] - ACPI: CPPC: add __iomem annotation to generic_comm_base pointer (Mark Langsdorf) [1946282] - ACPI: CPPC: remove __iomem annotation for cpc_reg's address (Mark Langsdorf) [1946282] - ACPI: Use DEVICE_ATTR_ macros (Mark Langsdorf) [1946282] - ACPICA: Update version to 20210105 (Mark Langsdorf) [1946282] - ACPICA: Updated all copyrights to 2021 (Mark Langsdorf) [1946282] - ACPICA: Remove the VRTC table (Mark Langsdorf) [1946282] - ACPICA: Remove the MTMR (Mid-Timer) table (Mark Langsdorf) [1946282] - ACPICA: Update version to 20201217 (Mark Langsdorf) [1946282] - ACPICA: add type casts for string functions (Mark Langsdorf) [1946282] - ACPICA: fix -Wfallthrough (Mark Langsdorf) [1946282] - ACPICA: Clean up exception code class checks (Mark Langsdorf) [1946282] - ACPICA: Fix exception code class checks (Mark Langsdorf) [1946282] - redhat/configs: Add CONFIG_ACPI_PLATFORM_PROFILE (Mark Langsdorf) [1946282] - ACPI: platform: Add platform profile support (Mark Langsdorf) [1946282] - NTB/msi: Use irq_has_action() (Myron Stowe) [1933153] - NTB: Use struct_size() helper in devm_kzalloc() (Myron Stowe) [1933153] - ntb: intel: Fix memleak in intel_ntb_pci_probe (Myron Stowe) [1933153] - NTB: hw: amd: fix an issue about leak system resources (Myron Stowe) [1933153] - ntb: hw: remove the code that sets the DMA mask (Myron Stowe) [1933153] - [s390] s390/qdio: remove 'merge_pending' mechanism (Claudio Imbrenda) [1919251] - [s390] s390/qdio: improve handling of PENDING buffers for QEBSM devices (Claudio Imbrenda) [1919251] - [s390] s390/qdio: rework q->qdio_error indication (Claudio Imbrenda) [1919251] - [s390] s390/qdio: inline qdio_kick_handler() (Claudio Imbrenda) [1919251] - [s390] s390/qdio: track time of last data IRQ for each device (Claudio Imbrenda) [1919251] - [s390] s390/qdio: make thinint registration symmetric (Claudio Imbrenda) [1919251] - [s390] s390/qdio: adopt new tasklet API (Claudio Imbrenda) [1919251] - [s390] s390/qdio: remove qdio_inbound_q_moved() wrapper (Claudio Imbrenda) [1919251] - [s390] s390/qdio: remove Input tasklet code (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Do not set COMMAND_COMPLETE (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Handle event-lost notification for Version Change events (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Process Version Change events (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Clarify & assert the stat_lock locking in zfcp_qdio_send() (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Remove orphaned function declarations (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Lift Input Queue tasklet from qdio (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Clarify access to erp_action in zfcp_fsf_req_complete() (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Use list_first_entry_or_null() in zfcp_erp_thread() (Claudio Imbrenda) [1919251] - [s390] s390/qdio: always use dev_name() for device name in QIB (Claudio Imbrenda) [1919251] - [s390] s390/qdio: clean up QDR setup (Claudio Imbrenda) [1919251] - [s390] s390/qdio: make qdio_handle_aobs() more robust (Claudio Imbrenda) [1919251] - [s390] s390/cpumf: disable preemption when accessing per-cpu variable (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: rename header file to hwctrset.h (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: remove 60 seconds read limit (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: Add support for complete counter set extraction (Claudio Imbrenda) [1925527]- KVM: X86: hyper-v: Task srcu lock when accessing kvm_memslots() (Vitaly Kuznetsov) [1904570] - KVM: nSVM: remove a warning about vmcb01 VM exit reason (Vitaly Kuznetsov) [1904570] - KVM: x86: Consolidate guest enter/exit logic to common helpers (Vitaly Kuznetsov) [1904570] - KVM: x86: Defer vtime accounting 'til after IRQ handling (Vitaly Kuznetsov) [1904570] - context_tracking: Move guest exit vtime accounting to separate helpers (Vitaly Kuznetsov) [1904570] - context_tracking: Move guest exit context tracking to separate helpers (Vitaly Kuznetsov) [1904570] - context_tracking: Make guest_enter/exit() .noinstr ready (Vitaly Kuznetsov) [1904570] - sched/cputime: Rename vtime_account_system() to vtime_account_kernel() (Vitaly Kuznetsov) [1904570] - x86/kvm/svm: Move guest enter/exit into .noinstr.text (Vitaly Kuznetsov) [1904570] - x86/kvm/vmx: Move guest enter/exit into .noinstr.text (Vitaly Kuznetsov) [1904570] - x86/kvm/svm: Add hardirq tracing on guest enter/exit (Vitaly Kuznetsov) [1904570] - x86/kvm/vmx: Add hardirq tracing to guest enter/exit (Vitaly Kuznetsov) [1904570] - x86/kvm: Move context tracking where it belongs (Vitaly Kuznetsov) [1904570] - Move some more variables to kernel job templates (Michael Hofmann) - Use a different branch name for realtime pipelines (Michael Hofmann) - block: mark queue init done at the end of blk_register_queue (Ming Lei) [1963766] - block: fix race between adding/removing rq qos and normal IO (Ming Lei) [1963766] - netfilter: x_tables: Use correct memory barriers. (Phil Sutter) [1949090] - Revert "netfilter: x_tables: Switch synchronization to RCU" (Phil Sutter) [1949090] - vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU (Gustavo Walbon) [1891589] - powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU (Gustavo Walbon) [1891589] - cpupower: Add cpuid cap flag for MSR_AMD_HWCR support (Steve Best) [1949161] - cpupower: Remove family arg to decode_pstates() (Steve Best) [1949161] - cpupower: Condense pstate enabled bit checks in decode_pstates() (Steve Best) [1949161] - cpupower: Update family checks when decoding HW pstates (Steve Best) [1949161] - cpupower: Remove unused pscur variable. (Steve Best) [1949161] - cpupower: Add CPUPOWER_CAP_AMD_HW_PSTATE cpuid caps flag (Steve Best) [1949161] - cpupower: Correct macro name for CPB caps flag (Steve Best) [1949161] - cpupower: Update msr_pstate union struct naming (Steve Best) [1949161] - cpupower: add Makefile dependencies for install targets (Steve Best) [1949161] - tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1949161] - tools: Avoid comma separated statements (Steve Best) [1949161] - cpupower: speed up generating git version string (Steve Best) [1949161] - cpupowerutils: fix spelling mistake "dependant" -> "dependent" (Steve Best) [1949161] - ext4: fix ext4_error_err save negative errno into superblock (Lukas Czerner) [1964928] - ext4: do not set SB_ACTIVE in ext4_orphan_cleanup() (Lukas Czerner) [1964928] - ext4: fix check to prevent false positive report of incorrect used inodes (Lukas Czerner) [1964928] - ext4: fix potential error in ext4_do_update_inode (Lukas Czerner) [1964928] - ext4: do not try to set xattr into ea_inode if value is empty (Lukas Czerner) [1964928] - ext4: fix potential htree index checksum corruption (Lukas Czerner) [1964928] - ext4: don't leak old mountpoint samples (Lukas Czerner) [1964928] - ext4: don't remount read-only with errors=continue on reboot (Lukas Czerner) [1964928] - ext4: fix deadlock with fs freezing and EA inodes (Lukas Czerner) [1964928] - ext4: fix a memory leak of ext4_free_data (Lukas Czerner) [1964928] - ext4: find old entry again if failed to rename whiteout (Lukas Czerner) [1945503] - ext4: fix bug for rename with RENAME_WHITEOUT (Lukas Czerner) [1945503] - mount: fix mounting of detached mounts onto targets that reside on shared mounts (Carlos Maiolino) [1959172] - fs: fix lazytime expiration handling in __writeback_single_inode() (Carlos Maiolino) [1936260] - tty: Don't hold ldisc lock in tty_reopen() if ldisc present (Waiman Long) [1968271] - tty/ldsem: Add lockdep asserts for ldisc_sem (Waiman Long) [1968271] - tty: Simplify tty->count math in tty_reopen() (Waiman Long) [1968271] - tty: Don't block on IO when ldisc change is pending (Waiman Long) [1968271] - tty: Hold tty_ldisc_lock() during tty_reopen() (Waiman Long) [1968271] - tty: Drop tty->count on tty_reopen() failure (Waiman Long) [1968271] - net: udp: Add support for getsockopt(..., ..., UDP_GRO, ..., ...); (Xin Long) [1951679] - net: Fix gro aggregation for udp encaps with zero csum (Xin Long) [1951679] - udp: ipv4: manipulate network header of NATed UDP GRO fraglist (Xin Long) [1951679] - udp: not remove the CRC flag from dev features when need_csum is false (Xin Long) [1951679] - udp: mask TOS bits in udp_v4_early_demux() (Xin Long) [1951679] - net: fix use-after-free when UDP GRO with shared fraglist (Xin Long) [1951679] - x86, sched: Treat Intel SNC topology as default, COD as exception (David Arcari) [1920040] - dmaengine: idxd: iax bus removal (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix cdev setup and free device lifetime issues (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix group conf_dev lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix engine conf_dev lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix wq conf_dev 'struct device' lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix idxd conf_dev 'struct device' lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: use ida for device instance enumeration (Jerry Snitselaar) [1955744] - dmaengine: idxd: removal of pcim managed mmio mapping (Jerry Snitselaar) [1955744] - dmaengine: idxd: cleanup pci interrupt vector allocation management (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix dma device lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: Fix potential null dereference on pointer status (Jerry Snitselaar) [1927070] - dmaengine: idxd: fix wq cleanup of WQCFG registers (Jerry Snitselaar) [1955744] - dmaengine: idxd: clear MSIX permission entry on shutdown (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix wq size store permission state (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix opcap sysfs attribute output (Jerry Snitselaar) [1955744] - dmaengine: idxd: Fix clobbering of SWERR overflow bit on writeback (Jerry Snitselaar) [1955744] - dmaengine: idxd: add module parameter to force disable of SVA (Jerry Snitselaar) [1920734] - dmaengine: idxd: set DMA channel to be private (Jerry Snitselaar) [1920759] - dma: idxd: use DEFINE_MUTEX() for mutex lock (Jerry Snitselaar) [1955744] - dmaengine: idxd: check device state before issue command (Jerry Snitselaar) [1927070] - dmaengine: move channel device_node deletion to driver (Jerry Snitselaar) [1920721] - dmaengine: idxd: fix misc interrupt completion (Jerry Snitselaar) [1920757] - dmaengine: idxd: Fix list corruption in description completion (Jerry Snitselaar) [1920746] - dmaengine: idxd: add IAX configuration support in the IDXD driver (Jerry Snitselaar) [1837233] - dmaengine: idxd: add ATS disable knob for work queues (Jerry Snitselaar) [1921291] - dmaengine: idxd: define table offset multiplier (Jerry Snitselaar) [1921290] - dmaengine: idxd: Update calculation of group offset to be more readable (Jerry Snitselaar) [1955744]- redhat/config: Double MAX_LOCKDEP_ENTRIES (Waiman Long) [1945937] - dm writecache: flush origin device when writing and cache is full (Mike Snitzer) [1970513] - dm snapshot: properly fix a crash when an origin has no snapshots (Mike Snitzer) [1970513] - dm verity: fix require_signatures module_param permissions (Mike Snitzer) [1970513] - dm snapshot: fix crash with transient storage and zero chunk size (Mike Snitzer) [1970513] - dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails (Mike Snitzer) [1970513] - dm integrity: increase RECALC_SECTORS to improve recalculate speed (Mike Snitzer) [1970513] - dm integrity: don't re-write metadata if discarding same blocks (Mike Snitzer) [1970513] - dm raid: fix inconclusive reshape layout on fast raid4/5/6 table reload sequences (Mike Snitzer) [1970513] - dm raid: fix fall-through warning in rs_check_takeover() for Clang (Mike Snitzer) [1970513] - dm integrity: fix missing goto in bitmap_flush_interval error handling (Mike Snitzer) [1970513] - dm space map common: fix division bug in sm_ll_find_free_block() (Mike Snitzer) [1970513] - dm persistent data: packed struct should have an aligned() attribute too (Mike Snitzer) [1970513] - dm btree spine: remove paranoid node_check call in node_prep_for_write() (Mike Snitzer) [1970513] - dm space map disk: remove redundant calls to sm_disk_get_nr_free() (Mike Snitzer) [1970513] - dm persistent data: remove unused return from exit_shadow_spine() (Mike Snitzer) [1970513] - dm verity: allow only one error handling mode (Mike Snitzer) [1970513] - dm: remove useless loop in __split_and_process_bio (Mike Snitzer) [1970513] - redhat/configs: Update CONFIG_PINCTRL_AMD (David Arcari) [1964588] - ionic: fix ptp support config breakage (Jonathan Toppins) [1951826] - ionic: return -EFAULT if copy_to_user() fails (Jonathan Toppins) [1951826] - ionic: git_ts_info bit shifters (Jonathan Toppins) [1951826] - ionic: extend ts_config set locking (Jonathan Toppins) [1951826] - ionic: add ts_config replay (Jonathan Toppins) [1951826] - ionic: ignore EBUSY on queue start (Jonathan Toppins) [1951826] - ionic: re-start ptp after queues up (Jonathan Toppins) [1951826] - ionic: add SKBTX_IN_PROGRESS (Jonathan Toppins) [1951826] - ionic: check for valid tx_mode on SKBTX_HW_TSTAMP xmit (Jonathan Toppins) [1951826] - ionic: remove unnecessary compat ifdef (Jonathan Toppins) [1951826] - ionic: fix up a couple of code style nits (Jonathan Toppins) [1951826] - ionic: advertise support for hardware timestamps (Jonathan Toppins) [1951826] - ionic: ethtool ptp stats (Jonathan Toppins) [1951826] - ionic: add ethtool support for PTP (Jonathan Toppins) [1951826] - ionic: add and enable tx and rx timestamp handling (Jonathan Toppins) [1951826] - ethtool: add timestamping related string sets (Jonathan Toppins) [1951826] - net: Introduce peer to peer one step PTP time stamping. (Jonathan Toppins) [1951826] - ionic: set up hw timestamp queues (Jonathan Toppins) [1951826] - ionic: add rx filtering for hw timestamp steering (Jonathan Toppins) [1951826] - ionic: link in the new hw timestamp code (Jonathan Toppins) [1951826] - ionic: add hw timestamp support files (Jonathan Toppins) [1951826] - ionic: split adminq post and wait calls (Jonathan Toppins) [1951826] - ionic: add hw timestamp structs to interface (Jonathan Toppins) [1951826] - ionic: add handling of larger descriptors (Jonathan Toppins) [1951826] - ionic: add new queue features to interface (Jonathan Toppins) [1951826] - ionic: pull per-q stats work out of queue loops (Jonathan Toppins) [1951826] - ionic: avoid races in ionic_heartbeat_check (Jonathan Toppins) [1951826] - ionic: fix sizeof usage (Jonathan Toppins) [1951826] - ionic: count dma errors (Jonathan Toppins) [1951826] - ionic: protect adminq from early destroy (Jonathan Toppins) [1951826] - ionic: stop watchdog when in broken state (Jonathan Toppins) [1951826] - ionic: block actions during fw reset (Jonathan Toppins) [1951826] - ionic: update ethtool support bits for BASET (Jonathan Toppins) [1951826] - ionic: fix unchecked reference (Jonathan Toppins) [1951826] - ionic: simplify the intr_index use in txq_init (Jonathan Toppins) [1951826] - ionic: code cleanup details (Jonathan Toppins) [1951826] - ionic: Update driver to use ethtool_sprintf (Jonathan Toppins) [1951826] - ionic: aggregate Tx byte counting calls (Jonathan Toppins) [1951826] - ionic: simplify tx clean (Jonathan Toppins) [1951826] - ionic: generic tx skb mapping (Jonathan Toppins) [1951826] - ionic: simplify TSO descriptor mapping (Jonathan Toppins) [1951826] - ionic: simplify use of completion types (Jonathan Toppins) [1951826] - ionic: rebuild debugfs on qcq swap (Jonathan Toppins) [1951826] - ionic: simplify rx skb alloc (Jonathan Toppins) [1951826] - ionic: optimize fastpath struct usage (Jonathan Toppins) [1951826] - ionic: implement Rx page reuse (Jonathan Toppins) [1951826] - ionic: move rx_page_alloc and free (Jonathan Toppins) [1951826] - drivers: net: ionic: simplify the return expression of ionic_set_rxfh() (Jonathan Toppins) [1951826] - ionic: change mtu after queues are stopped (Jonathan Toppins) [1951826] - ionic: remove some unnecessary oom messages (Jonathan Toppins) [1951826] - ionic: useful names for booleans (Jonathan Toppins) [1951826] - ionic: change set_rx_mode from_ndo to can_sleep (Jonathan Toppins) [1951826] - ionic: flatten calls to ionic_lif_rx_mode (Jonathan Toppins) [1951826] - ionic: batch rx buffer refilling (Jonathan Toppins) [1951826] - ionic: add lif quiesce (Jonathan Toppins) [1951826] - ionic: check for link after netdev registration (Jonathan Toppins) [1951826] - ionic: check port ptr before use (Jonathan Toppins) [1951826] - platform/x86: hp-wireless: add AMD's hardware id to the supported list (David Arcari) [1960472] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (David Arcari) [1960472] - net/bond: revert deletion of driver and module versions (Jarod Wilson) [1955702] - net:sfc: fix non-freed irq in legacy irq mode (Íñigo Huguet) [1906728] - devlink: Extend SF port attributes to have external attribute (Petr Oros) [1959002] - netfilter: xt_SECMARK: add new revision to fix structure layout (Phil Sutter) [1961714] - xfrm: ipcomp: remove unnecessary get_cpu() (Sabrina Dubroca) [1946885] - platform/x86: intel_pmc_core: Add support for Alder Lake PCH-P (David Arcari) [1838624] - scsi: qedf: Update the max_id value in host structure (Nilesh Javali) [1954876] - scsi: qedf: Add pointer checks in qedf_update_link_speed() (Nilesh Javali) [1871687] - [s390] s390/nvme: support firmware-assisted dump to NVMe disks (Claudio Imbrenda) [1847447] - [s390] s390: nvme dump support (Claudio Imbrenda) [1847447] - [s390] s390/boot: add build-id to decompressor (Philipp Rudo) [1897093] - genirq: Reduce irqdebug cacheline bouncing (Gustavo Walbon) [1957729]- CI: Merge MR, baseline and private configs (Michael Hofmann) - RDMA/rxe: Fix failure during driver load (Kamal Heib) [1930263] - xfrm: remove the fragment check for ipv6 beet mode (Xin Long) [1965185] - SUNRPC: Fix NFS READs that start at non-page-aligned offsets (Benjamin Coddington) [1950303] - pNFS/NFSv4: Improve rejection of out-of-order layouts (Benjamin Coddington) [1950303] - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn (Benjamin Coddington) [1950303] - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process() (Benjamin Coddington) [1950303] - SUNRPC: Move the svc_xdr_recvfrom tracepoint again (Benjamin Coddington) [1950303] - nfsd4: readdirplus shouldn't return parent of export (Benjamin Coddington) [1950303] - NFS: nfs_igrab_and_active must first reference the superblock (Benjamin Coddington) [1950303] - NFS: nfs_delegation_find_inode_server must first reference the superblock (Benjamin Coddington) [1950303] - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter (Benjamin Coddington) [1950303] - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit() (Benjamin Coddington) [1950303] - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request (Benjamin Coddington) [1950303] - pNFS: Stricter ordering of layoutget and layoutreturn (Benjamin Coddington) [1950303] - pNFS: Clean up pnfs_layoutreturn_free_lsegs() (Benjamin Coddington) [1950303] - pNFS: We want return-on-close to complete when evicting the inode (Benjamin Coddington) [1950303] - pNFS: Mark layout for return if return-on-close was not sent (Benjamin Coddington) [1950303] - net: sunrpc: interpret the return value of kstrtou32 correctly (Benjamin Coddington) [1950303] - SUNRPC: Handle TCP socket sends with kernel_sendpage() again (Benjamin Coddington) [1950303] - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() (Benjamin Coddington) [1950303] - pNFS/flexfiles: Avoid spurious layout returns in ff_layout_choose_ds_for_read (Benjamin Coddington) [1950303] - NFSv4/pnfs: Add tracing for the deviceid cache (Benjamin Coddington) [1950303] - fs/lockd: convert comma to semicolon (Benjamin Coddington) [1950303] - SUNRPC: When expanding the buffer, we may need grow the sparse pages (Benjamin Coddington) [1950303] - SUNRPC: Cleanup - constify a number of xdr_buf helpers (Benjamin Coddington) [1950303] - SUNRPC: Clean up open coded setting of the xdr_stream 'nwords' field (Benjamin Coddington) [1950303] - SUNRPC: _copy_to/from_pages() now check for zero length (Benjamin Coddington) [1950303] - SUNRPC: Cleanup xdr_shrink_bufhead() (Benjamin Coddington) [1950303] - SUNRPC: Fix xdr_expand_hole() (Benjamin Coddington) [1950303] - SUNRPC: Fixes for xdr_align_data() (Benjamin Coddington) [1950303] - SUNRPC: _shift_data_left/right_pages should check the shift length (Benjamin Coddington) [1950303] - NFSv4.1: use BITS_PER_LONG macro in nfs4session.h (Benjamin Coddington) [1950303] - xprtrdma: Fix XDRBUF_SPARSE_PAGES support (Benjamin Coddington) [1950303] - sunrpc: fix xs_read_xdr_buf for partial pages receive (Benjamin Coddington) [1950303] - Revert "nfsd4: support change_attr_type attribute" (Benjamin Coddington) [1950303] - nfsd4: don't query change attribute in v2/v3 case (Benjamin Coddington) [1950303] - nfsd: minor nfsd4_change_attribute cleanup (Benjamin Coddington) [1950303] - nfsd: simplify nfsd4_change_info (Benjamin Coddington) [1950303] - nfsd: only call inode_query_iversion in the I_VERSION case (Benjamin Coddington) [1950303] - nfs_common: need lock during iterate through the list (Benjamin Coddington) [1950303] - nfsd: Fix message level for normal termination (Benjamin Coddington) [1950303] - NFS: switch nfsiod to be an UNBOUND workqueue. (Benjamin Coddington) [1950303] - lockd: don't use interval-based rebinding over TCP (Benjamin Coddington) [1950303] - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' (Benjamin Coddington) [1950303] - NFSv4: Refactor to use user namespaces for nfs4idmap (Benjamin Coddington) [1950303] - NFS: NFSv2/NFSv3: Use cred from fs_context during mount (Benjamin Coddington) [1950303] - NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode (Benjamin Coddington) [1950303] - SUNRPC: Fix up xdr_set_page() (Benjamin Coddington) [1950303] - SUNRPC: Fix open coded xdr_stream_remaining() (Benjamin Coddington) [1950303] - pNFS: Clean up open coded xdr string decoding (Benjamin Coddington) [1950303] - SUNRPC: Fix up open coded kmemdup_nul() (Benjamin Coddington) [1950303] - pNFS/flexfiles: Fix up layoutstats reporting for non-TCP transports (Benjamin Coddington) [1950303] - NFSv4/pNFS: Store the transport type in struct nfs4_pnfs_ds_addr (Benjamin Coddington) [1950303] - pNFS: Add helpers for allocation/free of struct nfs4_pnfs_ds_addr (Benjamin Coddington) [1950303] - NFSv4/pNFS: Use connections to a DS that are all of the same protocol family (Benjamin Coddington) [1950303] - SUNRPC: Remove unused function xprt_load_transport() (Benjamin Coddington) [1950303] - NFS: Switch mount code to use xprt_find_transport_ident() (Benjamin Coddington) [1950303] - SUNRPC: Add a helper to return the transport identifier given a netid (Benjamin Coddington) [1950303] - SUNRPC: Close a race with transport setup and module put (Benjamin Coddington) [1950303] - SUNRPC: xprt_load_transport() needs to support the netid "rdma6" (Benjamin Coddington) [1950303] - SUNRPC: rpc_wake_up() should wake up tasks in the correct order (Benjamin Coddington) [1950303] - NFSv4: Observe the NFS_MOUNT_SOFTREVAL flag in _nfs4_proc_lookupp (Benjamin Coddington) [1950303] - NFSv3: Add emulation of the lookupp() operation (Benjamin Coddington) [1950303] - NFSv3: Refactor nfs3_proc_lookup() to split out the dentry (Benjamin Coddington) [1950303] - SUNRPC: Remove XDRBUF_SPARSE_PAGES flag in gss_proxy upcall (Benjamin Coddington) [1950303] - NFSD: Add tracepoints in nfsd4_decode/encode_compound() (Benjamin Coddington) [1950303] - NFSD: Add tracepoints in nfsd_dispatch() (Benjamin Coddington) [1950303] - NFSD: Add common helpers to decode void args and encode void results (Benjamin Coddington) [1950303] - SUNRPC: Prepare for xdr_stream-style decoding on the server-side (Benjamin Coddington) [1950303] - SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() (Benjamin Coddington) [1950303] - NFSD: Add SPDX header for fs/nfsd/trace.c (Benjamin Coddington) [1950303] - SUNRPC: Move the svc_xdr_recvfrom() tracepoint (Benjamin Coddington) [1950303] - NFSD: Add SPDX header for fs/nfsd/trace.c (Benjamin Coddington) [1950303] - NFSD: A semicolon is not needed after a switch statement. (Benjamin Coddington) [1950303] - svcrdma: support multiple Read chunks per RPC (Benjamin Coddington) [1950303] - svcrdma: Use the new parsed chunk list when pulling Read chunks (Benjamin Coddington) [1950303] - svcrdma: Rename info::ri_chunklen (Benjamin Coddington) [1950303] - svcrdma: Clean up chunk tracepoints (Benjamin Coddington) [1950303] - svcrdma: Remove chunk list pointers (Benjamin Coddington) [1950303] - svcrdma: Support multiple Write chunks in svc_rdma_send_reply_chunk (Benjamin Coddington) [1950303] - svcrdma: Support multiple Write chunks in svc_rdma_map_reply_msg() (Benjamin Coddington) [1950303] - svcrdma: Support multiple write chunks when pulling up (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to encode Reply transport headers (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to construct RDMA Writes (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to detect reverse direction replies (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to derive the inv_rkey (Benjamin Coddington) [1950303] - svcrdma: Add a "parsed chunk list" data structure (Benjamin Coddington) [1950303] - svcrdma: Clean up svc_rdma_encode_reply_chunk() (Benjamin Coddington) [1950303] - svcrdma: Post RDMA Writes while XDR encoding replies (Benjamin Coddington) [1950303] - NFSD: Invoke svc_encode_result_payload() in "read" NFSD encoders (Benjamin Coddington) [1950303] - SUNRPC: Rename svc_encode_read_payload() (Benjamin Coddington) [1950303] - svcrdma: Refactor the RDMA Write path (Benjamin Coddington) [1950303] - svcrdma: Const-ify the xdr_buf arguments (Benjamin Coddington) [1950303] - SUNRPC: Adjust synopsis of xdr_buf_subsegment() (Benjamin Coddington) [1950303] - svcrdma: Catch another Reply chunk overflow case (Benjamin Coddington) [1950303] - xprtrdma: Micro-optimize MR DMA-unmapping (Benjamin Coddington) [1950303] - xprtrdma: Move rpcrdma_mr_put() (Benjamin Coddington) [1950303] - xprtrdma: Trace unmap_sync calls (Benjamin Coddington) [1950303] - xprtrdma: Display the task ID when reporting MR events (Benjamin Coddington) [1950303] - xprtrdma: Clean up trace_xprtrdma_nomrs() (Benjamin Coddington) [1950303] - xprtrdma: Clean up xprtrdma callback tracepoints (Benjamin Coddington) [1950303] - xprtrdma: Clean up tracepoints in the reply path (Benjamin Coddington) [1950303] - xprtrdma: Clean up reply parsing error tracepoints (Benjamin Coddington) [1950303] - xprtrdma: Clean up trace_xprtrdma_post_linv (Benjamin Coddington) [1950303] - xprtrdma: Introduce FRWR completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Introduce Send completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Introduce Receive completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Replace dprintk call sites in ERR_CHUNK path (Benjamin Coddington) [1950303] - xprtrdma: Fix a BUG when tracing is enabled with NFSv4.1 on RDMA (Benjamin Coddington) [1950303] - drm: virtio: fix common struct sg_table related issues (Eric Auger) [1971821] - net/mlx5e: Release skb in case of failure in tc update skb (Alaa Hleihel) [1915307] - net/mlx5: Release devlink object if adev fails (Alaa Hleihel) [1915307] - net/mlx5: Fix compilation warning for 32-bit platform (Alaa Hleihel) [1915307] - net/mlx5: Use effective interrupt affinity (Alaa Hleihel) [1915307] - net/mlx5: Replace irq_to_desc() abuse (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove unneeded semicolon (Alaa Hleihel) [1915307] - net: mlx5: convert comma to semicolon (Alaa Hleihel) [1915307] - net/mlx5e: Fill mlx5e_create_cq_param in a function (Alaa Hleihel) [1915307] - net/mlx5e: Split between RX/TX tunnel FW support indication (Alaa Hleihel) [1915307] - net/mlx5: Arm only EQs with EQEs (Alaa Hleihel) [1915307] - net/mlx5e: Remove duplicated include (Alaa Hleihel) [1915307] - net/mlx5e: Add TX port timestamp support (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Add TX PTP port object support (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Move MLX5E_RX_ERR_CQE macro (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Split SW group counters update function (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Change skb fifo push/pop API to be used without SQ (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow SQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow RQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow CQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Free drop RQ in a dedicated function (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove IB representors dead code (Alaa Hleihel) [1915307] - net/mlx5: Simplify eswitch mode check (Alaa Hleihel) [1915307] - net/mlx5: Delete custom device management logic (Alaa Hleihel) [1915307] - RDMA/mlx5: Convert mlx5_ib to use auxiliary bus (Alaa Hleihel) [1915307] - net/mlx5e: Connect ethernet part to auxiliary bus (Alaa Hleihel) [1915307] - vdpa/mlx5: Connect mlx5_vdpa to auxiliary bus (Alaa Hleihel) [1915307] - net/mlx5: Register mlx5 devices to auxiliary virtual bus (Alaa Hleihel) [1915307] - vdpa/mlx5: Make hardware definitions visible to all mlx5 devices (Alaa Hleihel) [1915307] - net/mlx5_core: Clean driver version and name (Alaa Hleihel) [1915307] - net/mlx5: Treat host PF vport as other (non eswitch manager) vport (Alaa Hleihel) [1915307] - net/mlx5: Export steering related functions (Alaa Hleihel) [1915307] - net/mlx5: Expose other function ifc bits (Alaa Hleihel) [1915307] - net/mlx5: Expose IP-in-IP TX and RX capability bits (Alaa Hleihel) [1915307] - net/mlx5: Update the hardware interface definition for vhca state (Alaa Hleihel) [1915307] - net/mlx5: Avoid exposing driver internal command helpers (Alaa Hleihel) [1915307] - net/mlx5: Add ts_cqe_to_dest_cqn related bits (Alaa Hleihel) [1915307] - net/mlx5: Add misc4 to mlx5_ifc_fte_match_param_bits (Alaa Hleihel) [1915307] - net/mlx5: Check dr mask size against mlx5_match_param size (Alaa Hleihel) [1915307] - net/mlx5: Add sampler destination type (Alaa Hleihel) [1915307] - net/mlx5: Add sample offload hardware bits and structures (Alaa Hleihel) [1915307] - RDMA/mlx5: Use PCI device for dma mappings (Alaa Hleihel) [1915307] - RDMA/mlx5: Silence the overflow warning while building offset mask (Alaa Hleihel) [1915307] - RDMA/mlx5: Check for ERR_PTR from uverbs_zalloc() (Alaa Hleihel) [1915307] - RDMA/mlx5: Enable querying AH for XRC QP types (Alaa Hleihel) [1915307] - RDMA/mlx5: Lower setting the umem's PAS for SRQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use ib_umem_find_best_pgsz() for devx (Alaa Hleihel) [1915307] - RDMA/mlx5: mlx5_umem_find_best_quantized_pgoff() for CQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use mlx5_umem_find_best_quantized_pgoff() for QP (Alaa Hleihel) [1915307] - RDMA/mlx5: Directly compute the PAS list for raw QP RQ's (Alaa Hleihel) [1915307] - RDMA/mlx5: Use mlx5_umem_find_best_quantized_pgoff() for WQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use ib_umem_find_best_pgoff() for SRQ (Alaa Hleihel) [1915307] - net: mlx5: Replace in_irq() usage (Alaa Hleihel) [1915307] - net/mlx5: Cleanup kernel-doc warnings (Alaa Hleihel) [1915307] - net/mlx5e: Validate stop_room size upon user input (Alaa Hleihel) [1915307] - net/mlx5: DR, Free unused buddy ICM memory (Alaa Hleihel) [1915307] - net/mlx5: DR, ICM memory pools sync optimization (Alaa Hleihel) [1915307] - net/mlx5: DR, Sync chunks only during free (Alaa Hleihel) [1915307] - net/mlx5: DR, Handle ICM memory via buddy allocation instead of buckets (Alaa Hleihel) [1915307] - net/mlx5: DR, Add buddy allocator utilities (Alaa Hleihel) [1915307] - net/mlx5: DR, Rename matcher functions to be more HW agnostic (Alaa Hleihel) [1915307] - net/mlx5: DR, Rename builders HW specific names (Alaa Hleihel) [1915307] - net/mlx5: DR, Remove unused member of action struct (Alaa Hleihel) [1915307] - IB/mlx5: Add support for NDR link speed (Alaa Hleihel) [1915307 1926596] - RDMA/mlx5: Use ib_umem_find_best_pgsz() for mkc's (Alaa Hleihel) [1915307] - RDMA/mlx5: Split the WR setup out of mlx5_ib_update_xlt() (Alaa Hleihel) [1915307] - RDMA/mlx5: Move xlt_emergency_page_mutex into mr.c (Alaa Hleihel) [1915307] - RDMA/mlx5: Change mlx5_ib_populate_pas() to use rdma_for_each_block() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove npages from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove ncont from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove order from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Move mlx5_ib_cont_pages() to the creation of the mlx5_ib_mr (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove mlx5_ib_mr->order (Alaa Hleihel) [1915307] - net/mlx5: fix error return code in mlx5e_tc_nic_init() (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Fix IPsec packet drop by mlx5e_tc_update_skb (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Use spin_lock_bh for async_icosq_lock (Alaa Hleihel) [1915306 1915307] - net/mlx5: Replace zero-length array with flexible-array member (Alaa Hleihel) [1915306 1915307] - net/mlx5: Fix uininitialized pointer read on pointer attr (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for devlink reload limit no reset (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for fw live patch event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add devlink param enable_remote_dev_reset support (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for devlink reload action fw activate (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset abort event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset now event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset request event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Set cap for pci sync for fw update event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add functions to set/query MFRL register (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Fix potential null pointer dereference (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Fix dereference on pointer attr after null check (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Use dma device access helper (Alaa Hleihel) [1915306 1915307] - mlx5: cross-tree: phase out dma_zalloc_coherent() (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-Switch, Support flow source for local vport (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Move devlink eswitch ports closer to eswitch (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Use helper function to load unload representor (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Add helper to check egress ACL need (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Use PF num in metadata reg c0 (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Add support for rule creation with flow source hint (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Call ste_builder directly with tag pointer (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded local variable (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded vlan check from L2 builder (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded check from source port builder (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Replace the check for valid STE entry (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Delete not needed GSI QP signal QP type (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Change GSI QP to have same creation flow like other QPs (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Reuse existing fields in parent QP storage object (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Embed GSI QP into general mlx5_ib QP (Alaa Hleihel) [1915306 1915307] - net/mlx5: remove unreachable return (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Use kfree() to free fd->g in accel_fs_tcp_create_groups() (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Keep direct reference to mlx5_core_dev in tc ct (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Support CT offload for tc nic flows (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: rework ct offload init messages (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Add tc chains offload support for nic flows (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Refactor tc flow attributes structure (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Split nic tc flow allocation and creation (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Tc nic flows to use mlx5_chains flow tables (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Allow ft level ignore for nic rx tables (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Refactor multi chains and prios support (Alaa Hleihel) [1915306 1915307 1919642] - RDMA/mlx5: Don't call to restrack recursively (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Expose TIR and QP ICM address for sw_owner_v2 devices (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Allow DM allocation for sw_owner_v2 enabled devices (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Add sw_owner_v2 bit capability (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Delete duplicated mlx5_ptys_width enum (Alaa Hleihel) [1915306 1915307] - net/mlx5: IPsec: make spdxcheck.py happy (Alaa Hleihel) [1915306 1915307] - mlx5: add pause frame stats (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Add CQE compression support for multi-strides packets (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Add support for tc trap (Alaa Hleihel) [1915306 1915307 1919643] - net/mlx5: E-Switch, Use vport metadata matching by default (Alaa Hleihel) [1915306 1915307] - net/mlx5: remove erroneous fallthrough (Alaa Hleihel) [1915306 1915307] - IB/mlx5: Add DCT RoCE LAG support (Alaa Hleihel) [1915306 1915307] - IB/mlx5: Add tx_affinity support for DCI QP (Alaa Hleihel) [1915306 1915307] - net/mlx5e: RX, Add a prefetch command for small L1_CACHE_BYTES (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Enable sniffer when device is in switchdev mode (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Add new IB rates support (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Replace open-coded offsetofend() macro (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Simplify multiple else-if cases with switch keyword (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Link non uplink representors to PCI device (Alaa Hleihel) [1915306 1915307 1959367] - perf stat: Use nftw() instead of ftw() (Michael Petlan) [1944684] - perf unwind: Set userdata for all __report_module() paths (Michael Petlan) [1944684] - perf debug: Move debug initialization earlier (Michael Petlan) [1944684] - perf script: Fix overrun issue for dynamically-allocated PMU type number (Michael Petlan) [1944684] - perf metricgroup: Fix system PMU metrics (Michael Petlan) [1944684] - perf metricgroup: Fix for metrics containing duration_time (Michael Petlan) [1944684] - perf evlist: Fix id index for heterogeneous systems (Michael Petlan) [1944684] - perf inject: Correct event attribute sizes (Michael Petlan) [1944684] - perf intel-pt: Fix 'CPU too large' error (Michael Petlan) [1944684] - perf stat: Take cgroups into account for shadow stats (Michael Petlan) [1944684] - perf stat: Introduce struct runtime_stat_data (Michael Petlan) [1944684] - libperf tests: Fail when failing to get a tracepoint id (Michael Petlan) [1944684] - libperf tests: If a test fails return non-zero (Michael Petlan) [1944684] - libperf tests: Avoid uninitialized variable warning (Michael Petlan) [1944684] - perf test: Fix shadow stat test for non-bash shells (Michael Petlan) [1944684] - perf bpf examples: Fix bpf.h header include directive in 5sec.c example (Michael Petlan) [1944684] - perf probe: Fix memory leak when synthesizing SDT probes (Michael Petlan) [1944684] - perf stat aggregation: Add separate thread member (Michael Petlan) [1944684] - perf stat aggregation: Add separate core member (Michael Petlan) [1944684] - perf stat aggregation: Add separate die member (Michael Petlan) [1944684] - perf stat aggregation: Add separate socket member (Michael Petlan) [1944684] - perf stat aggregation: Add separate node member (Michael Petlan) [1944684] - perf stat aggregation: Start using cpu_aggr_id in map (Michael Petlan) [1944684] - perf cpumap: Drop in cpu_aggr_map struct (Michael Petlan) [1944684] - perf cpumap: Add new map type for aggregation (Michael Petlan) [1944684] - perf stat: Replace aggregation ID with a struct (Michael Petlan) [1944684] - perf cpumap: Add new struct for cpu aggregation (Michael Petlan) [1944684] - perf cpumap: Use existing allocator to avoid using malloc (Michael Petlan) [1944684] - perf tests: Improve topology test to check all aggregation types (Michael Petlan) [1944684] - perf powerpc: Move syscall.tbl check to check-headers.sh (Michael Petlan) [1944684] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Michael Petlan) [1944684] - perf mem: Factor out a function to generate sort order (Michael Petlan) [1944684] - perf sort: Add sort option for data page size (Michael Petlan) [1944684] - perf script: Support data page size (Michael Petlan) [1944684] - tools headers UAPI: Sync linux/stat.h with the kernel sources (Michael Petlan) [1944684] - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions (Michael Petlan) [1944684] - perf config: Fix example command in manpage to conform to syntax specified in the SYNOPSIS section. (Michael Petlan) [1944684] - perf test: Make sample-parsing test aware of PERF_SAMPLE_{CODE,DATA}_PAGE_SIZE (Michael Petlan) [1944684] - perf tools: Add support to read build id from compressed elf (Michael Petlan) [1944684] - perf debug: Add debug_set_file function (Michael Petlan) [1944684] - perf evlist: Support pipe mode display (Michael Petlan) [1944684] - perf report: Support --header-only for pipe mode (Michael Petlan) [1944684] - perf vendor events: Add JSON metrics for imx8mm DDR Perf (Michael Petlan) [1944684] - perf metricgroup: Support adding metrics for system PMUs (Michael Petlan) [1944684] - perf metricgroup: Support printing metric groups for system PMUs (Michael Petlan) [1944684] - perf metricgroup: Split up metricgroup__print() (Michael Petlan) [1944684] - perf metricgroup: Fix metrics using aliases covering multiple PMUs (Michael Petlan) [1944684] - perf evlist: Change evlist__splice_list_tail() ordering (Michael Petlan) [1944684] - perf pmu: Add pmu_add_sys_aliases() (Michael Petlan) [1944684] - perf pmu: Add pmu_id() (Michael Petlan) [1944684] - perf jevents: Add support for system events tables (Michael Petlan) [1944684] - perf jevents: Add support for an extra directory level (Michael Petlan) [1944684] - perf evsel: Emit warning about kernel not supporting the data page size sample_type bit (Michael Petlan) [1944684] - perf record: Support new sample type for data page size (Michael Petlan) [1944684] - perf unwind: Fix separate debug info files when using elfutils' libdw's unwinder (Michael Petlan) [1944684] - perf record: Fix memory leak when using '--user-regs=?' to list registers (Michael Petlan) [1944684] - tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1944684] - tools build: Add missing libcap to test-all.bin target (Michael Petlan) [1944684] - perf test: Fix metric parsing test (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' record methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' diff methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' nr_threads method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' deliver event method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' header methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' raw samples methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' mmap pages parsing method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event attribute config methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for alternative 'struct evlist' constructors (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event selection methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event group methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' create maps methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' print methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' evsel list methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' pause/resume methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' id_pos methods (Michael Petlan) [1944684] - perf tools: Add aarch64 registers to --user-regs (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' tracking event methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' browser methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sample id lookup methods (Michael Petlan) [1944684] - perf evlist: Ditch unused set/reset sample_bit methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sample parsing methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sideband thread methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' 'filter' methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' stats methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' 'workload' methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' methods: evlist__set_leader() (Michael Petlan) [1944684] - perf evsel: Convert last 'struct evsel' methods to the right evsel__ prefix (Michael Petlan) [1944684] - perf test: Add shadow stat test (Michael Petlan) [1944684] - perf build-id: Add build_id_cache__add function (Michael Petlan) [1944684] - perf build-id: Add __perf_session__cache_build_ids function (Michael Petlan) [1944684] - perf build-id: Use machine__for_each_dso in perf_session__cache_build_ids (Michael Petlan) [1944684] - perf data: Add is_perf_data function (Michael Petlan) [1944684] - perf symbols: Try to load vmlinux from buildid database (Michael Petlan) [1944684] - perf tools: Use struct extra_kernel_map in machine__process_kernel_mmap_event (Michael Petlan) [1944684] - perf build-id: Add check for existing link in buildid dir (Michael Petlan) [1944684] - perf tools: Add filename__decompress function (Michael Petlan) [1944684] - perf tools: Add build_id__is_defined function (Michael Petlan) [1944684] - tools lib: Adopt memchr_inv() from kernel (Michael Petlan) [1944684] - perf arm-spe: Add support for ARMv8.3-SPE (Michael Petlan) [1944684] - perf arm_spe: Decode memory tagging properties (Michael Petlan) [1944684] - perf arm-spe: Add more sub classes for operation packet (Michael Petlan) [1944684] - perf arm-spe: Refactor operation packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_op_type() (Michael Petlan) [1944684] - perf arm-spe: Remove size condition checking for events (Michael Petlan) [1944684] - perf arm-spe: Refactor event type handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_event() (Michael Petlan) [1944684] - perf arm-spe: Refactor counter packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_counter() (Michael Petlan) [1944684] - perf arm-spe: Refactor context packet handling (Michael Petlan) [1944684] - perf arm_spe: Fixup top byte for data virtual address (Michael Petlan) [1944684] - perf arm-spe: Refactor address packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_addr() (Michael Petlan) [1944684] - perf arm-spe: Refactor packet header parsing (Michael Petlan) [1944684] - perf arm-spe: Refactor printing string to buffer (Michael Petlan) [1944684] - perf expr: Force encapsulation on expr_id_data (Michael Petlan) [1944684] - perf vendor events: Update Skylake client events to v50 (Michael Petlan) [1944684] - perf data: Allow to use stdio functions for pipe mode (Michael Petlan) [1944684] - perf arm-spe: Fix packet length handling (Michael Petlan) [1944684] - perf arm-spe: Refactor arm_spe_get_events() (Michael Petlan) [1944684] - perf arm-spe: Refactor payload size calculation (Michael Petlan) [1944684] - perf arm-spe: Fix a typo in comment (Michael Petlan) [1944684] - perf arm-spe: Include bitops.h for BIT() macro (Michael Petlan) [1944684] - perf mem: Support ARM SPE events (Michael Petlan) [1944684] - perf c2c: Support AUX trace (Michael Petlan) [1944684] - perf mem: Support AUX trace (Michael Petlan) [1944684] - perf auxtrace: Add itrace option '-M' for memory events (Michael Petlan) [1944684] - perf mem: Only initialize memory event for recording (Michael Petlan) [1944684] - perf c2c: Support memory event PERF_MEM_EVENTS__LOAD_STORE (Michael Petlan) [1944684] - perf mem: Support new memory event PERF_MEM_EVENTS__LOAD_STORE (Michael Petlan) [1944684] - perf mem: Introduce weak function perf_mem_events__ptr() (Michael Petlan) [1944684] - perf mem: Search event name with more flexible path (Michael Petlan) [1944684] - perf jevents: Add test for arch std events (Michael Petlan) [1944684] - perf jevents: Tidy error handling (Michael Petlan) [1944684] - perf trace beauty: Allow header files in a different path (Michael Petlan) [1944684] - perf stat: Add --quiet option (Michael Petlan) [1944684] - perf stat: Support regex pattern in --for-each-cgroup (Michael Petlan) [1944684] - perf kvm: Add kvm-stat for arm64 (Michael Petlan) [1944684] - perf env: Conditionally compile BPF support code on having HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf annotate: Move bpf header inclusion to inside HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf tests: Skip the llvm and bpf tests if HAVE_LIBBPF_SUPPORT isn't defined (Michael Petlan) [1944684] - perf bpf: Enclose libbpf.h include within HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf test: Implement skip_reason callback for watchpoint tests (Michael Petlan) [1944684] - perf tests tsc: Add checking helper is_supported() (Michael Petlan) [1944684] - perf tests tsc: Make tsc testing as a common testing (Michael Petlan) [1944684] - perf mem2node: Improve warning if detected no memory nodes (Michael Petlan) [1944684] - perf version: Add a feature for libpfm4 (Michael Petlan) [1944684] - perf annotate mips: Add perf arch instructions annotate handlers (Michael Petlan) [1944684] - perf/x86/intel: Add Tremont Topdown support (Michael Petlan) [1944684] - perf/x86: Fix fall-through warnings for Clang (Michael Petlan) [1944684] - perf/x86/intel/lbr: Fix the return type of get_lbr_cycles() (Michael Petlan) [1944684] - perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake (Michael Petlan) [1944684] - perf: Break deadlock involving exec_update_mutex (Michael Petlan) [1944684] - perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY (Michael Petlan) [1944684] - perf/x86: Avoid TIF_IA32 when checking 64bit mode (Michael Petlan) [1944684] - bpf, ringbuf: Deny reserve of buffers larger than ringbuf (Wander Lairson Costa) [1968591] - bpf: Fix propagation of 32 bit unsigned bounds from 64 bit bounds (Wander Lairson Costa) [1965938] - tools/power turbostat: Support Alder Lake Mobile (Steve Best) [1962291] - ACPI: PM: Add ACPI ID of Alder Lake Fan (Steve Best) [1961617] - powercap/intel_rapl: add support for AlderLake Mobile (Steve Best) [1961816] - platform/x86: intel_pmc_core: Uninitialized data in pmc_core_lpm_latch_mode_write() (David Arcari) [1783557] - platform/x86: intel_pmc_core: add ACPI dependency (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix "unsigned 'ret' is never less than zero" smatch warning (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add LTR registers for Tiger Lake (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add option to set/clear LPM mode (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add requirements file to debugfs (David Arcari) [1783557] - platform/x86: intel_pmc_core: Get LPM requirements for Tiger Lake (David Arcari) [1783557] - platform/x86: intel_pmc_core: Show LPM residency in microseconds (David Arcari) [1783557] - platform/x86: intel_pmc_core: Handle sub-states generically (David Arcari) [1783557] - platform/x86: intel_pmc_core: Remove global struct pmc_dev (David Arcari) [1783557] - platform/x86: intel_pmc_core: Don't use global pmcdev in quirks (David Arcari) [1783557] - platform/x86: intel_pmc_core: export platform global reset bits via etr3 sysfs file (David Arcari) [1783557] - MAINTAINERS: Update maintainers for pmc_core driver (David Arcari) [1783557] - MAINTAINERS: intel_pmc_core: Update MAINTAINERS (David Arcari) [1783557] - platform/x86: intel_pmc_core: Ignore GBE LTR on Tiger Lake platforms (David Arcari) [1783557] - platform/x86: intel_pmc_core: Assign boolean values to a bool variable (David Arcari) [1783557] - platform/x86: intel_pmc_core: fix: Replace dev_dbg macro with dev_info() (David Arcari) [1783557] - platform/x86: intel_pmc_core: Clean up: Remove the duplicate comments and reorganize (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix TigerLake power gating status map (David Arcari) [1783557] - platform/x86: pmc_core: Use descriptive names for LPM registers (David Arcari) [1783557] - platform/x86: intel_pmc_core: Change Jasper Lake S0ix debug reg map back to ICL (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add Atom based Jasper Lake (JSL) platform support (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add Intel Elkhart Lake support (David Arcari) [1783557] - [s390] s390/ipl: support NVMe IPL kernel parameters (Claudio Imbrenda) [1963120] - [s390] net/smc: use memcpy instead of snprintf to avoid out of bounds read (Claudio Imbrenda) [1919249] - [s390] smc: fix out of bound access in smc_nl_get_sys_info() (Claudio Imbrenda) [1919249] - [s390] net/smc: fix access to parent of an ib device (Claudio Imbrenda) [1919249] - [s390] s390/vtime: fix increased steal time accounting (Claudio Imbrenda) [1963075] - [s390] tools/kvm_stat: Add restart delay (Claudio Imbrenda) [1963082] - [s390] s390/dasd: fix hanging IO request during DASD driver unbind (Claudio Imbrenda) [1963077] - [s390] s390/dasd: fix hanging DASD driver unbind (Claudio Imbrenda) [1963077]- Add New KUNIT Tests to Redhat kernel-modules-internal (Nico Pache) [1939309] - kunit: lib: adhear to KUNIT formatting standard (Nico Pache) [1939309] - kunit: mptcp: adhere to KUNIT formatting standard (Nico Pache) [1939309] - ASoC: topology: adhere to KUNIT formatting standard (Nico Pache) [1939309] - kunit: software node: adhear to KUNIT formatting standard (Nico Pache) [1939309] - resource: provide meaningful MODULE_LICENSE() in test suite (Nico Pache) [1939309] - resource: Add test cases for new resource API (Nico Pache) [1939309] - resource: Introduce resource_intersection() for overlapping resources (Nico Pache) [1939309] - resource: Introduce resource_union() for overlapping resources (Nico Pache) [1939309] - mm/resource: Use resource_overlaps() to simplify region_intersects() (Nico Pache) [1939309] - kernel.h: split out min()/max() et al. helpers (Nico Pache) [1939309] - lib/math/rational.c: fix possible incorrect result from rational fractions helper (Nico Pache) [1939309] - lib: Move mathematic helpers to separate folder (Nico Pache) [1939309] - lib/cmdline: remove an unneeded local variable in next_arg() (Nico Pache) [1939309] - lib/cmdline: Allow get_options() to take 0 to validate the input (Nico Pache) [1939309] - lib/cmdline: Update documentation to reflect behaviour (Nico Pache) [1939309] - lib/cmdline_kunit: add a new test case for get_options() (Nico Pache) [1939309] - ext4: add .kunitconfig fragment to enable ext4-specific tests (Nico Pache) [1939309] - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it (Nico Pache) [1939309] - kunit: tool: fix unintentional statefulness in run_kernel() (Nico Pache) [1939309] - kunit: tool: add support for filtering suites by glob (Nico Pache) [1939309] - kunit: add kunit.filter_glob cmdline option to filter suites (Nico Pache) [1939309] - kunit: don't show `1 == 1` in failed assertion messages (Nico Pache) [1939309] - kunit: make kunit_tool accept optional path to .kunitconfig fragment (Nico Pache) [1939309] - Documentation: kunit: add tips.rst for small examples (Nico Pache) [1939309] - KUnit: Docs: make start.rst example Kconfig follow style.rst (Nico Pache) [1939309] - kunit: tool: simplify kconfig is_subset_of() logic (Nico Pache) [1939309] - minor: kunit: tool: fix unit test so it can run from non-root dir (Nico Pache) [1939309] - kunit: tool: use `with open()` in unit test (Nico Pache) [1939309] - kunit: tool: stop using bare asserts in unit test (Nico Pache) [1939309] - kunit: tool: fix unit test cleanup handling (Nico Pache) [1939309] - ASoC: topology: KUnit: Convert from cpu to data format (Nico Pache) [1939309] - drivers/base: build kunit tests without structleak plugin (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing topology with PCM to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing empty topology with variants to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing various arguments to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: Check if ops is set before dereference (Nico Pache) [1939309] - ASoC: topology: Ensure that needed parameters are set (Nico Pache) [1939309] - kunit: tool: move kunitconfig parsing into __init__, make it optional (Nico Pache) [1939309] - kunit: tool: fix minor typing issue with None status (Nico Pache) [1939309] - kunit: tool: surface and address more typing issues (Nico Pache) [1939309] - Documentation: kunit: include example of a parameterized test (Nico Pache) [1939309] - kunit: tool: Fix spelling of "diagnostic" in kunit_parser (Nico Pache) [1939309] - kunit: tool: Force the use of the 'tty' console for UML (Nico Pache) [1939309] - lib/cmdline_kunit: add a new test suite for cmdline API (Nico Pache) [1939309] - lib/cmdline: allow NULL to be an output for get_option() (Nico Pache) [1939309] - lib/cmdline: fix get_option() for strings starting with hyphen (Nico Pache) [1939309] - lib/cmdline.c: mark expected switch fall-throughs (Nico Pache) [1939309] - lib/test_bits.c: add tests of GENMASK (Nico Pache) [1939309] - linux/bits.h: add compile time sanity check of GENMASK inputs (Nico Pache) [1939309] - linux/build_bug.h: change type to int (Nico Pache) [1939309] - fs: ext4: Modify inode-test.c to use KUnit parameterized testing feature (Nico Pache) [1939309] - kunit: Support for Parameterized Testing (Nico Pache) [1939309] - kunit: kunit_tool: Correctly parse diagnostic messages (Nico Pache) [1939309] - Documentation: kunit: provide guidance for testing many inputs (Nico Pache) [1939309] - kunit: Introduce get_file_path() helper (Nico Pache) [1939309] - kunit: fix display of failed expectations for strings (Nico Pache) [1939309] - kunit: tool: fix extra trailing \n in raw + parsed test output (Nico Pache) [1939309] - kunit: tool: print out stderr from make (like build warnings) (Nico Pache) [1939309] - KUnit: Docs: usage: wording fixes (Nico Pache) [1939309] - KUnit: Docs: style: fix some Kconfig example issues (Nico Pache) [1939309] - KUnit: Docs: fix a wording typo (Nico Pache) [1939309] - kunit: Do not pollute source directory with generated files (test.log) (Nico Pache) [1939309] - kunit: Do not pollute source directory with generated files (.kunitconfig) (Nico Pache) [1939309] - kunit: tool: fix pre-existing python type annotation errors (Nico Pache) [1939309] - kunit: Fix kunit.py parse subcommand (use null build_dir) (Nico Pache) [1939309] - kunit: test: fix remaining kernel-doc warnings (Nico Pache) [1939309] - lib: kunit: Fix compilation test when using TEST_BIT_FIELD_COMPILE (Nico Pache) [1939309] - kunit: test.h: fix a bad kernel-doc markup (Nico Pache) [1939309] - kunit: test.h: solve kernel-doc warnings (Nico Pache) [1939309] - lib: kunit: add bitfield test conversion to KUnit (Nico Pache) [1939309] - Documentation: kunit: add a brief blurb about kunit_test_suite (Nico Pache) [1939309] - kunit: test: add test plan to KUnit TAP format (Nico Pache) [1939309] - init: main: add KUnit to kernel init (Nico Pache) [1939309] - init: unify opening /dev/console as stdin/stdout/stderr (Nico Pache) [1939309] - kunit: test: create a single centralized executor for all tests (Nico Pache) [1939309] - Documentation: test.h - fix warnings (Nico Pache) [1939309] - vmlinux.lds.h: add linker section for KUnit test suites (Nico Pache) [1939309] - Documentation: kunit: Add naming guidelines (Nico Pache) [1939309] - kunit: tool: fix display of make errors (Nico Pache) [1939309] - kunit: tool: handle when .kunit exists but .kunitconfig does not (Nico Pache) [1939309] - kunit: tool: fix --alltests flag (Nico Pache) [1939309] - kunit: tool: allow generating test results in JSON (Nico Pache) [1939309] - kunit: tool: fix running kunit_tool from outside kernel tree (Nico Pache) [1939309] - lib: add linear ranges helpers (Nico Pache) [1939309] - PCI/RCEC: Fix RCiEP device to RCEC association (Myron Stowe) [1895942] - PCI/portdrv: Report reset for frozen channel (Myron Stowe) [1895942] - PCI/AER: Specify the type of Port that was reset (Myron Stowe) [1895942] - PCI/ERR: Retain status from error notification (Myron Stowe) [1895942] - PCI/AER: Clear AER status from Root Port when resetting Downstream Port (Myron Stowe) [1895942] - PCI/ERR: Clear status of the reporting device (Myron Stowe) [1895942] - PCI/AER: Add RCEC AER error injection support (Myron Stowe) [1895942] - PCI/PME: Add pcie_walk_rcec() to RCEC PME handling (Myron Stowe) [1895942] - PCI/AER: Add pcie_walk_rcec() to RCEC AER handling (Myron Stowe) [1895942] - PCI/ERR: Recover from RCiEP AER errors (Myron Stowe) [1895942] - PCI/ERR: Add pcie_link_rcec() to associate RCiEPs (Myron Stowe) [1895942] - PCI/ERR: Recover from RCEC AER errors (Myron Stowe) [1895942] - PCI/ERR: Clear AER status only when we control AER (Myron Stowe) [1895942] - PCI/ERR: Add pci_walk_bridge() to pcie_do_recovery() (Myron Stowe) [1895942] - PCI/ERR: Avoid negated conditional for clarity (Myron Stowe) [1895942] - PCI/ERR: Use "bridge" for clarity in pcie_do_recovery() (Myron Stowe) [1895942] - PCI/ERR: Simplify by computing pci_pcie_type() once (Myron Stowe) [1895942] - PCI/ERR: Simplify by using pci_upstream_bridge() (Myron Stowe) [1895942] - PCI/ERR: Rename reset_link() to reset_subordinates() (Myron Stowe) [1895942] - PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities() (Myron Stowe) [1895942] - PCI/ERR: Bind RCEC devices to the Root Port driver (Myron Stowe) [1895942] - PCI/AER: Write AER Capability only when we control it (Myron Stowe) [1895942] - PCI: Export pcie_has_flr() (Myron Stowe) [1895942] - xfs: don't reuse busy extents on extent trim (Brian Foster) [1960380] - nvme: add 'kato' sysfs attribute (Gopal Tiwari) [1970260] - scsi: qla2xxx: Update version to 10.02.00.106-k (Nilesh Javali) [1925465] - scsi: qla2xxx: Add marginal path handling support (Nilesh Javali) [1925465] - scsi: qla2xxx: Do logout even if fabric scan retries got exhausted (Nilesh Javali) [1925465] - scsi: qla2xxx: Update default AER debug mask (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix mailbox recovery during PCIe error (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix crash in PCIe error handling (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix RISC RESET completion polling (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix crash in qla2xxx_mqueuecommand() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix use after free in bsg (Nilesh Javali) [1925465] - scsi: qla2xxx: Consolidate zio threshold setting for both FCP & NVMe (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix stuck session (Nilesh Javali) [1925465] - scsi: qla2xxx: Add H:C:T info in the log message for fc ports (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix IOPS drop seen in some adapters (Nilesh Javali) [1925465] - scsi: qla2xxx: Check kzalloc() return value (Nilesh Javali) [1925465] - scsi: qla2xxx: Always check the return value of qla24xx_get_isp_stats() (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify qla8044_minidump_process_control() (Nilesh Javali) [1925465] - scsi: qla2xxx: Suppress Coverity complaints about dseg_r* (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix endianness annotations (Nilesh Javali) [1925465] - scsi: qla2xxx: Constify struct qla_tgt_func_tmpl (Nilesh Javali) [1925465] - scsi: qla2xxx: Use dma_pool_zalloc() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix a couple of misdocumented functions (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix incorrectly named function qla8044_check_temp() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix a couple of misnamed functions (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix some incorrect formatting/spelling issues (Nilesh Javali) [1925465] - scsi: qla2xxx: Replace __qla2x00_marker()'s missing underscores (Nilesh Javali) [1925465] - scsi: Revert "qla2xxx: Make sure that aborted commands are freed" (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix broken #endif placement (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify if statement (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify the calculation of variables (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix some memory corruption (Nilesh Javali) [1925465] - scsi: qla2xxx: Remove redundant NULL check (Nilesh Javali) [1925465] - scsi: qla2xxx: Remove unnecessary NULL check (Nilesh Javali) [1925465] - scsi: qla2xxx: Assign boolean values to a bool variable (Nilesh Javali) [1925465] - scsi: qla2xxx: fc_remote_port_chkready() returns a SCSI result value (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix description for parameter ql2xenforce_iocb_limit (Nilesh Javali) [1925465] - scsi: qla2xxx: Update version to 10.02.00.105-k (Nilesh Javali) [1925465] - scsi: qla2xxx: Enable NVMe CONF (BIT_7) when enabling SLER (Nilesh Javali) [1925465] - scsi: qla2xxx: Wait for ABTS response on I/O timeouts for NVMe (Nilesh Javali) [1925465] - scsi: qla2xxx: Move some messages from debug to normal log level (Nilesh Javali) [1925465] - scsi: qla2xxx: Add error counters to debugfs node (Nilesh Javali) [1925465] - scsi: qla2xxx: Implementation to get and manage host, target stats and initiator port (Nilesh Javali) [1925465] - scsi: ibmvfc: Reinit target retries (Steve Best) [1965010] - scsi: ibmvfc: Avoid move login if fast fail is enabled (Steve Best) [1965010] - scsi: ibmvfc: Handle move login failure (Steve Best) [1965010] - scsi: ibmvfc: Fix invalid state machine BUG_ON() (Steve Best) [1965010] - scsi: qedf: Do not put host in qedf_vport_create() unconditionally (Nilesh Javali) [1899384] - scsi: storvsc: Enable scatterlist entry lengths > 4Kbytes (Cathy Avery) [1941664] - scsi: storvsc: Parameterize number hardware queues (Cathy Avery) [1941664] - scsi: storvsc: Return DID_ERROR for invalid commands (Cathy Avery) [1941664] - scsi: storvsc: Validate length of incoming packet in storvsc_on_channel_callback() (Cathy Avery) [1941664] - scsi: storvsc: Resolve data race in storvsc_probe() (Cathy Avery) [1941664] - scsi: storvsc: Fix max_outstanding_req_per_channel for Win8 and newer (Cathy Avery) [1941664] - scsi: storvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening (Cathy Avery) [1941664] - RDMA/ipoib: Fix warning caused by destroying non-initial netns (Kamal Heib) [1961815] - can: dev: Move device back to init netns on owning netns delete (Kamal Heib) [1961815] - net: ena: remove extra words from comments (Petr Oros) [1955155] - net: ena: fix inaccurate print type (Petr Oros) [1955155] - ena: Update driver to use ethtool_sprintf (Petr Oros) [1955155] - docs: net: ena: Fix ena_start_xmit() function name typo (Petr Oros) [1955155] - ethernet: amazon: ena: A typo fix in the file ena_com.h (Petr Oros) [1955155] - net: ena: Update XDP verdict upon failure (Petr Oros) [1955155] - net: ena: introduce ndo_xdp_xmit() function for XDP_REDIRECT (Petr Oros) [1955155] - net: ena: use xdp_return_frame() to free xdp frames (Petr Oros) [1955155] - net: ena: introduce XDP redirect implementation (Petr Oros) [1955155] - net: ena: use xdp_frame in XDP TX flow (Petr Oros) [1955155] - net: ena: aggregate stats increase into a function (Petr Oros) [1955155] - net: ena: fix coding style nits (Petr Oros) [1955155] - net: ena: store values in their appropriate variables types (Petr Oros) [1955155] - net: ena: add device distinct log prefix to files (Petr Oros) [1955155] - net: ena: use constant value for net_device allocation (Petr Oros) [1955155] - net: ena: set initial DMA width to avoid intel iommu issue (Petr Oros) [1955155] - net: ena: update ena documentation (Petr Oros) [1955155] - net: ena: Fix all static chekers' warnings (Petr Oros) [1955155] - net: ena: Change RSS related macros and variables names (Petr Oros) [1955155] - net: ena: Remove redundant print of placement policy (Petr Oros) [1955155] - net: ena: Capitalize all log strings and improve code readability (Petr Oros) [1955155] - net: ena: Change log message to netif/dev function (Petr Oros) [1955155] - net: ena: Change license into format to SPDX in all files (Petr Oros) [1955155] - net: ena: xdp: add queue counters for xdp actions (Petr Oros) [1955155] - net: ena: ethtool: add stats printing to XDP queues (Petr Oros) [1955155] - net: ena: ethtool: Add new device statistics (Petr Oros) [1955155] - net: ena: ethtool: convert stat_offset to 64 bit resolution (Petr Oros) [1955155] - net: ena: Make missed_tx stat incremental (Petr Oros) [1955155] - net: ena: Prevent reset after device destruction (Petr Oros) [1955155] - treewide: replace '---help---' in Kconfig files with 'help' (Petr Oros) [1955155] - treewide: Add SPDX license identifier - Makefile/Kconfig (Petr Oros) [1955155] - cross-tree: phase out dma_zalloc_coherent() (Petr Oros) [1955155] - net: ena: fix compilation error in xtensa architecture (Petr Oros) [1955155] - docs: networking: reorganize driver documentation again (Petr Oros) [1955155] - docs: networking: device drivers: convert amazon/ena.txt to ReST (Petr Oros) [1955155] - net: ena: documentation: update ena.txt (Petr Oros) [1955155] - net: documentation: build a directory structure for drivers (Petr Oros) [1955155] - xfrm: interface: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - vti: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - vti6: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - net/sched: act_ct: Fix ct template allocation for zone 0 (Marcelo Ricardo Leitner) [1881824] - uio: Fix use-after-free in uio_unregister_device() (Myron Stowe) [1897285] - uio: free uio id after uio file node is freed (Myron Stowe) [1897285] - drivers: uio: remove redundant assignment to variable retval (Myron Stowe) [1897285] - driver: uio: fix possible use-after-free in __uio_register_device (Myron Stowe) [1897285] - driver: uio: fix possible memory leak in __uio_register_device (Myron Stowe) [1897285] - uio: remove redundant check (Myron Stowe) [1897285] - uio: fix potential memory leak in error case (Myron Stowe) [1897285] - uio: dismiss waiters on device unregistration (Myron Stowe) [1897285] - uio: Fix an Oops on load (Myron Stowe) [1897285] - uio: make symbol 'uio_class_registered' static (Myron Stowe) [1897285] - uio: convert to vm_fault_t (Myron Stowe) [1897285] - uio: ensure class is registered before devices (Myron Stowe) [1897285] - uio: potential double frees if __uio_register_device() fails (Myron Stowe) [1897285] - uio: fix possible circular locking dependency (Myron Stowe) [1897285] - uio: fix wrong return value from uio_mmap() (Myron Stowe) [1897285] - uio: add SPDX license tag (Myron Stowe) [1897285] - net: zero-initialize tc skb extension on allocation (Ivan Vecera) [1946986] - net: sched: fix tx action reschedule issue with stopped queue (Ivan Vecera) [1946986] - net: sched: fix tx action rescheduling issue during deactivation (Ivan Vecera) [1946986] - net: sched: fix packet stuck problem for lockless qdisc (Ivan Vecera) [1946986] - net/sched: act_ct: Remove redundant ct get and check (Ivan Vecera) [1946986] - net: sched: tapr: prevent cycle_time == 0 in parse_taprio_schedule (Ivan Vecera) [1946986] - tc-testing: add simple action test to verify batch change cleanup (Ivan Vecera) [1946986] - tc-testing: add simple action test to verify batch add cleanup (Ivan Vecera) [1946986] - tc-testing: add simple action change test (Ivan Vecera) [1946986] - selftests: forwarding: Add tc-police tests for packets per second (Ivan Vecera) [1946986] - selftests: tc-testing: add action police selftest for packets per second (Ivan Vecera) [1946986] - net: sched: Mundane typo fixes (Ivan Vecera) [1946986] - net/sched: cls_flower: use nla_get_be32 for TCA_FLOWER_KEY_FLAGS (Ivan Vecera) [1946986] - net/sched: cls_flower: use ntohs for struct flow_dissector_key_ports (Ivan Vecera) [1946986] - taprio: Handle short intervals and large packets (Ivan Vecera) [1946986] - net/sched: cls_flower: fix only mask bit check in the validate_ct_state (Ivan Vecera) [1946986] - treewide: Remove uninitialized_var() usage (Ivan Vecera) [1946986] - lockdep: Provide dummy forward declaration of *_is_held() helpers (Ivan Vecera) [1946986] - net: sched: Remove broken definitions and un-hide for !LOCKDEP (Ivan Vecera) [1946986] - net: sched: sch_teql: fix null-pointer dereference (Ivan Vecera) [1946986] - net: sched: fix err handler in tcf_action_init() (Ivan Vecera) [1946986] - net: sched: fix action overwrite reference counting (Ivan Vecera) [1946986] - Revert "net: sched: bump refcount for new action in ACT replace mode" (Ivan Vecera) [1946986] - net: cls_api: Fix uninitialised struct field bo->unlocked_driver_cb (Ivan Vecera) [1946986] - net: sched: bump refcount for new action in ACT replace mode (Ivan Vecera) [1946986] - net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct (Ivan Vecera) [1946986] - net/sched: act_police: add support for packet-per-second policing (Ivan Vecera) [1946986] - flow_offload: reject configuration of packet-per-second policing in offload drivers (Ivan Vecera) [1946986] - flow_offload: add support for packet-per-second policing (Ivan Vecera) [1946986] - net: sched: validate stab values (Ivan Vecera) [1946986] - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME (Ivan Vecera) [1946986] - sched: act_sample: Implement stats_update callback (Ivan Vecera) [1946986] - net: sched: avoid duplicates in classes dump (Ivan Vecera) [1946986] - net/sched: cls_flower: validate ct_state for invalid and reply flags (Ivan Vecera) [1946986] - net: sched: fix police ext initialization (Ivan Vecera) [1946986] - selftests: tc: Add generic mpls matching support for tc-flower (Ivan Vecera) [1946986] - selftests: tc: Add basic mpls_* matching support for tc-flower (Ivan Vecera) [1946986] - selftests: tc-testing: u32: Add tests covering sample option (Ivan Vecera) [1946986] - net: sched: Return the correct errno code (Ivan Vecera) [1946986] - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace (Ivan Vecera) [1946986] - selftests: forwarding: Fix spelling mistake "succeded" -> "succeeded" (Ivan Vecera) [1946986] - taprio: boolean values to a bool variable (Ivan Vecera) [1946986] - net_sched: fix RTNL deadlock again caused by request_module() (Ivan Vecera) [1946986] - cls_flower: call nla_ok() before nla_next() (Ivan Vecera) [1946986] - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs (Ivan Vecera) [1946986] - net/sched: sch_taprio: reset child qdiscs before freeing them (Ivan Vecera) [1946986] - net: sched: incorrect Kconfig dependencies on Netfilter modules (Ivan Vecera) [1946986] - treewide: replace '---help---' in Kconfig files with 'help' (Ivan Vecera) [1946986] - net/sched: cls_u32: simplify the return expression of u32_reoffload_knode() (Ivan Vecera) [1946986] - net: sched: fix spelling mistake in Kconfig "trys" -> "tries" (Ivan Vecera) [1946986] - net/sched: fq_pie: initialize timer earlier in fq_pie_init() (Ivan Vecera) [1946986] - net: sched: remove redundant 'rtnl_held' argument (Ivan Vecera) [1946986] - selftests: tc-testing: enable CONFIG_NET_SCH_RED as a module (Ivan Vecera) [1946986] - net: sched: alias action flags with TCA_ACT_ prefix (Ivan Vecera) [1946986] - treewide: rename nla_strlcpy to nla_strscpy. (Ivan Vecera) [1946986] - Modify return value of nla_strlcpy to match that of strscpy. (Ivan Vecera) [1946986] - Fix unefficient call to memset before memcpu in nla_strlcpy. (Ivan Vecera) [1946986] - net: sched: fix misspellings using misspell-fixer tool (Ivan Vecera) [1946986] - selftest: fix flower terse dump tests (Ivan Vecera) [1946986] - net: sched: implement action-specific terse dump (Ivan Vecera) [1946986] - net: cls_api: remove unneeded local variable in tc_dump_chain() (Ivan Vecera) [1946986] - openvswitch: fix send of uninitialized stack memory in ct limit reply (Antoine Tenart) [1950022] - net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct (Antoine Tenart) [1950022] - xsk: Clear pool even for inactive queues (Jiri Benc) [1882710] - xsk: Fix memory leak for failed bind (Jiri Benc) [1882710] - xsk: Return error code if force_zc is set (Jiri Benc) [1882710] - xsk: Change the tx writeable condition (Jiri Benc) [1882710] - xsk: Replace datagram_poll by sock_poll_wait (Jiri Benc) [1882710] - xdp: Handle MEM_TYPE_XSK_BUFF_POOL correctly in xdp_return_buff() (Jiri Benc) [1882710] - xsk: Fix incorrect netdev reference count (Jiri Benc) [1882710] - xsk: Fix umem cleanup bug at socket destruct (Jiri Benc) [1882710] - netdevsim: set .owner to THIS_MODULE (Jiri Benc) [1882710] - bpf: selftest: Use static globals in tcp_hdr_options and btf_skc_cls_ingress (Jiri Benc) [1882710] - xsk: Fix possible memory leak at socket close (Jiri Benc) [1882710] - samples/bpf: Set rlimit for memlock to infinity in all samples (Jiri Benc) [1882710] - bpf, selftests: Extend test_tc_redirect to use modified bpf_redirect_neigh() (Jiri Benc) [1882710] - bpf: Fix bpf_redirect_neigh helper api to support supplying nexthop (Jiri Benc) [1882710] - bpf, selftest: Fix flaky tcp_hdr_options test when adding addr to lo (Jiri Benc) [1882710] - bpf, selftests: Add redirect_peer selftest (Jiri Benc) [1882710] - bpf, selftests: Make redirect_neigh test more extensible (Jiri Benc) [1882710] - bpf: Add redirect_peer helper (Jiri Benc) [1882710] - bpf: Improve bpf_redirect_neigh helper description (Jiri Benc) [1882710] - bpf: Always return target ifindex in bpf_fib_lookup (Jiri Benc) [1882710] - xsk: Introduce padding between ring pointers (Jiri Benc) [1882710] - xsk: Remove internal DMA headers (Jiri Benc) [1882710] - bpf: selftest: Ensure the child sk inherited all bpf_sock_ops_cb_flags (Jiri Benc) [1882710] - bpf: tcp: Do not limit cb_flags when creating child sk from listen sk (Jiri Benc) [1882710] - bpf, selftests: Add redirect_neigh selftest (Jiri Benc) [1882710] - bpf: Add redirect_neigh helper as redirect drop-in (Jiri Benc) [1882710] - tools, bpf: Synchronise BPF UAPI header with tools (Jiri Benc) [1882710] - bpf: Fix formatting in documentation for BPF helpers (Jiri Benc) [1882710] - xsk: Fix a documentation mistake in xsk_queue.h (Jiri Benc) [1882710] - xsk: Fix possible crash in socket_release when out-of-memory (Jiri Benc) [1882710] - xsk: Fix refcount warning in xp_dma_map (Jiri Benc) [1882710] - tcp: Only init congestion control if not initialized already (Jiri Benc) [1882710] - xsk: Fix null check on error return path (Jiri Benc) [1882710] - xsk: Fix possible segfault at xskmap entry insertion (Jiri Benc) [1882710] - xsk: Fix possible segfault in xsk umem diagnostics (Jiri Benc) [1882710] - xsk: Fix use-after-free in failed shared_umem bind (Jiri Benc) [1882710] - xsk: Documentation for XDP_SHARED_UMEM between queues and netdevs (Jiri Benc) [1882710] - xsk: Add shared umem support between devices (Jiri Benc) [1882710] - xsk: Add shared umem support between queue ids (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Test for dma_need_sync earlier for better performance (Jiri Benc) [1882710] - xsk: Rearrange internal structs for better performance (Jiri Benc) [1882710] - xsk: Enable sharing of dma mappings (Jiri Benc) [1882710] - xsk: Move addrs from buffer pool to umem (Jiri Benc) [1882710] - xsk: Move xsk_tx_list and its lock to buffer pool (Jiri Benc) [1882710] - xsk: Move queue_id, dev and need_wakeup to buffer pool (Jiri Benc) [1882710] - xsk: Move fill and completion rings to buffer pool (Jiri Benc) [1882710] - xsk: Create and free buffer pool independently from umem (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Rename xsk zero-copy driver interfaces (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Pass buffer pool to driver instead of umem (Jiri Benc) [1882710] - tcp: bpf: Optionally store mac header in TCP_SAVE_SYN (Jiri Benc) [1882710] - bpf: selftests: Tcp header options (Jiri Benc) [1882710] - bpf: selftests: Add fastopen_connect to network_helpers (Jiri Benc) [1882710] - bpf: tcp: Allow bpf prog to write and parse TCP header option (Jiri Benc) [1882710] - bpf: sock_ops: Change some members of sock_ops_kern from u32 to u8 (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_hdr_opt_len() and bpf_skops_write_hdr_opt() (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_parse_hdr() (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_established() (Jiri Benc) [1882710] - tcp: Add saw_unknown to struct tcp_options_received (Jiri Benc) [1882710] - tcp: bpf: Add TCP_BPF_RTO_MIN for bpf_setsockopt (Jiri Benc) [1882710] - tcp: bpf: Add TCP_BPF_DELACK_MAX setsockopt (Jiri Benc) [1882710] - tcp: Use a struct to represent a saved_syn (Jiri Benc) [1882710] - tcp: tcp_init_buffer_space can be static (Jiri Benc) [1882710] - tcp: refactor setting the initial congestion window (Jiri Benc) [1882710] - tcp: fix code style in tcp_recvmsg() (Jiri Benc) [1882710] - tcp: duplicate clear of icsk_backoff (Jiri Benc) [1882710] - tcp: move rx_opt & syn_data_acked init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move tp->rack init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move app_limited init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move retrans_out, sacked_out, tlp_high_seq, last_oow_ack_time init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not clear urg_data in tcp_create_openreq_child (Jiri Benc) [1882710] - tcp: move snd_cwnd & snd_cwnd_cnt init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move mdev_us init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not clear srtt_us in tcp_create_openreq_child (Jiri Benc) [1882710] - tcp: do not clear packets_out in tcp_create_openreq_child() (Jiri Benc) [1882710] - tcp: move icsk_rto init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not set snd_ssthresh in tcp_create_openreq_child() (Jiri Benc) [1882710] - net-veth: Add type safety to veth_xdp_to_ptr() and veth_ptr_to_xdp() (Jiri Benc) [1882710] - net-tun: Eliminate two tun/xdp related function calls from vhost-net (Jiri Benc) [1882710] - net-tun: Add type safety to tun_xdp_to_ptr() and tun_ptr_to_xdp() (Jiri Benc) [1882710] - ipv4: Add helpers for neigh lookup for nexthop (Jiri Benc) [1882710] - net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Jiri Benc) [1882710] - tipc: better validate user input in tipc_nl_retrieve_key() (Xin Long) [1950093] - tipc: simplify the finalize work queue (Xin Long) [1958456] - tipc: wait and exit until all work queues are done (Xin Long) [1958456] - [s390] KVM: s390: diag9c (directed yield) forwarding (Claudio Imbrenda) [1874105] - kvm/svm: Reenable nesting (Dr. David Alan Gilbert) [1790949] - powerpc/papr_scm: Reduce error severity if nvdimm stats inaccessible (Steve Best) [1965193] - Revert "[redhat] redhat/configs: Update CONFIG_ARM64_CNP" (Mark Salter) [1949533] - arm64: kernel: disable CNP on Carmel (Mark Salter) [1949533]- redhat/configs: Enable CONFIG_MICROSOFT_MANA=m (Vitaly Kuznetsov) [1957820] - net: mana: Use int to check the return value of mana_gd_poll_cq() (Vitaly Kuznetsov) [1957820] - net: mana: fix PCI_HYPERV dependency (Vitaly Kuznetsov) [1957820] - net: mana: remove redundant initialization of variable err (Vitaly Kuznetsov) [1957820] - net: mana: Add a driver for Microsoft Azure Network Adapter (MANA) (Vitaly Kuznetsov) [1957820] - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (Vitaly Kuznetsov) [1957820] - net: evaluate net.ipvX.conf.all.ignore_routes_with_linkdown (Balazs Nemeth) [1957223] - net: evaluate net.ipv4.conf.all.proxy_arp_pvlan (Balazs Nemeth) [1957223] - netfilter: nf_log_syslog: Unset bridge logger in pernet exit (Phil Sutter) [1938214] - netfilter: nft_log: perform module load from nf_tables (Phil Sutter) [1938214] - netfilter: nft_dynset: fix timeouts later than 23 days (Phil Sutter) [1938214] - netfilter: nft_compat: make sure xtables destructors have run (Phil Sutter) [1938214] - netfilter: nftables: Add __printf() attribute (Phil Sutter) [1938214] - netfilter: nf_log: add module softdeps (Phil Sutter) [1938214] - netfilter: nf_log_common: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_bridge: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_netdev: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_ipv6: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: move inline nf_ip6_ext_hdr() function to a more appropriate header. (Phil Sutter) [1938214] - ipv6: Use ipv6_authlen for len (Phil Sutter) [1938214] - netfilter: nf_log_arp: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_ipv4: rename to nf_log_syslog (Phil Sutter) [1938214] - net/sched: cls_api: increase max_reclassify_loop (Davide Caratti) [1955136] - vsock/vmci: Remove redundant assignment to err (Stefano Garzarella) [1956861] - vsock/virtio: free queued packets when closing socket (Stefano Garzarella) [1956861] - net: vsock: Fix a typo (Stefano Garzarella) [1956861] - selinux: vsock: Set SID for socket returned by accept() (Stefano Garzarella) [1956861] - af_vsock: Assign the vsock transport considering the vsock address flags (Stefano Garzarella) [1956861] - af_vsock: Set VMADDR_FLAG_TO_HOST flag on the receive path (Stefano Garzarella) [1956861] - vsock_addr: Check for supported flag values (Stefano Garzarella) [1956861] - vm_sockets: Add VMADDR_FLAG_TO_HOST vsock flag (Stefano Garzarella) [1956861] - vm_sockets: Add flags field in the vsock address data structure (Stefano Garzarella) [1956861] - hv_sock: Remove the accept port restriction (Stefano Garzarella) [1956861] - hv_sock: use HV_HYP_PAGE_SIZE for Hyper-V communication (Stefano Garzarella) [1956861] - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME (Corinna Vinschen) [1958988] - net: ensure mac header is set in virtio_net_hdr_to_skb() (Balazs Nemeth) [1955441] - devlink: Fix dmac_filter trap name, align to its documentation (Petr Oros) [1935701] - devlink: Add DMAC filter generic packet trap (Petr Oros) [1935701] - devlink: Add blackhole_nexthop trap (Petr Oros) [1935701] - stm class: Fix module init return on allocation failure (Jiri Olsa) [1907791] - stm class: ftrace: Use different channel accroding to CPU (Jiri Olsa) [1907791] - stm class: ftrace: Enable supported trace export flag (Jiri Olsa) [1907791] - stm class: ftrace: Change dependency to TRACING (Jiri Olsa) [1907791] - stm class: Replace zero-length array with flexible-array (Jiri Olsa) [1907791] - stm class: sys-t: Fix the use of time_after() (Jiri Olsa) [1907791] - stm class: Lose the protocol driver when dropping its reference (Jiri Olsa) [1907791] - stm class: Fix a double free of stm_source_device (Jiri Olsa) [1907791] - stm class: Fix channel bitmap on 32-bit systems (Jiri Olsa) [1907791] - stm class: Fix channel free in stm output free path (Jiri Olsa) [1907791] - stm class: Prevent division by zero (Jiri Olsa) [1907791] - stm class: Fix an endless loop in channel allocation (Jiri Olsa) [1907791] - stm class: Fix a module refcount leak in policy creation error path (Jiri Olsa) [1907791] - stm class: Use memcat_p() (Jiri Olsa) [1907791] - stm class: heartbeat: Fix whitespace (Jiri Olsa) [1907791] - stm class: p_sys-t: Add support for CLOCKSYNC packets (Jiri Olsa) [1907791] - stm class: Add MIPI SyS-T protocol support (Jiri Olsa) [1907791] - stm class: Switch over to the protocol driver (Jiri Olsa) [1907791] - stm class: Factor out default framing protocol (Jiri Olsa) [1907791] - stm class: Add a helper for writing data packets (Jiri Olsa) [1907791] - stm class: Introduce framing protocol drivers (Jiri Olsa) [1907791] - stm class: Clean up stp_configfs_init (Jiri Olsa) [1907791] - stm class: Clarify configfs root type/operations names (Jiri Olsa) [1907791] - stm class: Rework policy node fallback (Jiri Olsa) [1907791] - lib: Add memcat_p(): paste 2 pointer arrays together (Jiri Olsa) [1907791] - tracing: Add trace_export support for trace_marker (Jiri Olsa) [1907791] - tracing: Add trace_export support for event trace (Jiri Olsa) [1907791] - tracing: Add flag to control different traces (Jiri Olsa) [1907791] - tracing: Make function ‘ftrace_exports’ static (Jiri Olsa) [1907791] - tipc: increment the tmp aead refcnt before attaching it (Xin Long) [1931312] - tipc: skb_linearize the head skb when reassembling msgs (Xin Long) [1912376] - scsi: target: core: Fix warning on realtime kernels (Maurizio Lombardi) [1956416] - scsi: bnx2fc: Fix a typo (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix misnaming of bnx2fc_free_session_resc() (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix typo in bnx2fc_indicate_kcqe() (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix comparison to bool warning (Nilesh Javali) [1921617] - scsi: bnx2fc: Remove unneeded semicolon (Nilesh Javali) [1921617] - scsi: bnx2fc: Make a bunch of symbols static in bnx2fc_fcoe.c (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix spelling mistake "couldnt" -> "couldn't" (Nilesh Javali) [1921617] - scsi: bnx2fc: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix a couple of bitrotted function documentation headers (Nilesh Javali) [1921617] - scsi: bnx2fc: Repair a range of kerneldoc issues (Nilesh Javali) [1921617] - scsi: bnx2fc: Removal of unused variables (Nilesh Javali) [1921617] - scsi: bnx2fc: Remove unneeded semicolon in bnx2fc_fcoe.c (Nilesh Javali) [1921617] - scsi: bnx2fc: Add missing annotation for bnx2fc_abts_cleanup() (Nilesh Javali) [1921617] - tools/power turbostat: Enable tsc_tweak for Elkhart Lake and Jasper Lake (Puneet Sethi) [1920704] - selinux: Allow context mounts for unpriviliged overlayfs (Miklos Szeredi) [1956486] - md-cluster: fix use-after-free issue when removing rdev (Nigel Croxon) [1956355] - md/bitmap: wait for external bitmap writes to complete during tear down (Nigel Croxon) [1956355] - md: do not return existing mddevs from mddev_find_or_alloc (Nigel Croxon) [1956355] - md: refactor mddev_find_or_alloc (Nigel Croxon) [1956355] - md: factor out a mddev_alloc_unit helper from mddev_find (Nigel Croxon) [1956355] - md: split mddev_find (Nigel Croxon) [1956355] - md: factor out a mddev_find_locked helper from mddev_find (Nigel Croxon) [1956355] - md: md_open returns -EBUSY when entering racing area (Nigel Croxon) [1956355] - md: Fix missing unused status line of /proc/mdstat (Nigel Croxon) [1956355] - md/raid10: improve discard request for far layout (Xiao Ni) [1956355] - md/raid10: improve raid10 discard request (Nigel Croxon) [1956355] - md/raid10: pull the code that wait for blocked dev into one function (Xiao Ni) [1956355] - md/raid10: extend r10bio devs to raid disks (Xiao Ni) [1956355] - md: add md_submit_discard_bio() for submitting discard bio (Nigel Croxon) [1956355] - leds: trigger: fix potential deadlock with libata (Waiman Long) [1963373] - x86/kvm: Unify kvm_pv_guest_cpu_reboot() with kvm_guest_cpu_offline() (Lenny Szubowicz) [1934273] - x86/kvm: Disable all PV features on crash (Lenny Szubowicz) [1934273] - x86/kvm: Disable kvmclock on all CPUs on shutdown (Lenny Szubowicz) [1934273] - x86/kvm: Teardown PV features on boot CPU as well (Lenny Szubowicz) [1934273] - x86/kvm: Fix pr_info() for async PF setup/teardown (Lenny Szubowicz) [1934273] - RDMA/qedr: Fix error return code in qedr_iw_connect() (Manish Chopra) [1914922] - qede: Use 'skb_add_rx_frag()' instead of hand coding it (Manish Chopra) [1914922] - qede: Remove a erroneous ++ in 'qede_rx_build_jumbo()' (Manish Chopra) [1914922] - qede: fix offload for IPIP tunnel packets (Manish Chopra) [1914922] - RDMA/qedr: iWARP invalid(zero) doorbell address fix (Manish Chopra) [1914922] - qed: fix ILT configuration of SRC block (Manish Chopra) [1914922] - qed: fix error return code in qed_iwarp_ll2_start() (Manish Chopra) [1914922] - RDMA/qedr: Fix resource leak in qedr_create_qp (Manish Chopra) [1914922] - qede: make driver reliable on unload after failures (Manish Chopra) [1914922] - net: qed: Remove unnecessary cast (Manish Chopra) [1914922] - nvme: fix NULL derefence in nvme_ctrl_fast_io_fail_tmo_show/store (Gopal Tiwari) [1935135] - nvme: export fast_io_fail_tmo to sysfs (Gopal Tiwari) [1935135] - EDAC: enable CONFIG_EDAC_IGEN6 (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: ecclog_llist can be static (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/i10nm: Add Intel Sapphire Rapids server support (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add DDR5 new memory type (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/i10nm: Use readl() to access MMIO registers (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: Add debugfs interface for Intel client SoC EDAC driver (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: Add EDAC driver for Intel client SoCs using IBECC (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add three new memory types (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC, {skx,i10nm}: Use CPU stepping macro to pass configurations (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/skx: Use the mcmtr register to retrieve close_pg/bank_xor_enable (Aristeu Rozanski) [1837389 1783539 1861479] - x86/cpu: Add a X86_MATCH_INTEL_FAM6_MODEL_STEPPINGS() macro (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[] (Aristeu Rozanski) [1837389 1783539 1861479] - x86: export x86_match_cpu_v2 (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/amd64: Fix PCI component registration (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId (Aristeu Rozanski) [1918583] - x86/CPU/AMD: Remove amd_get_nb_id() (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Make fam_ops static global (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Allow Reserved types to be overwritten in smca_banks[] (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Do not use rdmsr_safe_on_cpu() in smca_configure() (Aristeu Rozanski) [1918583] - EDAC/amd64: Get rid of the ECC disabled long message (Aristeu Rozanski) [1918583] - EDAC/amd64: Check for memory before fully initializing an instance (Aristeu Rozanski) [1918583] - EDAC/amd64: Use cached data when checking for ECC (Aristeu Rozanski) [1918583] - x86/MCE: Make the number of MCA banks a per-CPU variable (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Don't cache block addresses on SMCA systems (Aristeu Rozanski) [1918583] - x86/MCE: Make mce_banks a per-CPU array (Aristeu Rozanski) [1918583] - x86/MCE: Make struct mce_banks[] static (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Don't report L1 BTB MCA errors on some family 17h models (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Decode MCA_STATUS in bit definition order (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Decode MCA_STATUS[Scrub] bit (Aristeu Rozanski) [1918583] - EDAC, mce_amd: Match error descriptions to latest documentation (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Carve out the MC4_MISC thresholding quirk (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Turn off MC4_MISC thresholding on all family 0x15 models (Aristeu Rozanski) [1918583] - powerpc/64s: Fix unrelocated interrupt trampoline address test (Waiman Long) [1966462] - intel_th: pci: Add Alder Lake CPU support (Jiri Olsa) [1840246] - intel_th: pci: Add Alder Lake-S support (Jiri Olsa) [1840246] - mfd: intel_pmt: Add support for DG1 (David Arcari) [1783144] - mfd: intel_pmt: Fix nuisance messages and handling of disabled capabilities (David Arcari) [1783144] - redhat/configs: Add CONFIG_INTEL_PMT_CRASHLOG (David Arcari) [1783144] - redhat/configs: Add CONFIG_INTEL_PMT_TELEMETRY (David Arcari) [1783144] - redhat/configs: Add CONFIG_MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt_crashlog: Add dependency on MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt_telemetry: Add dependency on MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt: Make INTEL_PMT_CLASS non-user-selectable (David Arcari) [1783144] - platform/x86: intel_pmt_crashlog: Fix incorrect macros (David Arcari) [1783144] - platform/x86: intel_pmt_class: Initial resource to 0 (David Arcari) [1783144] - mfd: Standardise MFD_CELL_* helper names (David Arcari) [1783144] - platform/x86: pmt: Fix a potential Oops on error in probe (David Arcari) [1783144] - platform/x86: Intel PMT Crashlog capability driver (David Arcari) [1783144] - platform/x86: Intel PMT Telemetry capability driver (David Arcari) [1783144] - platform/x86: Intel PMT class driver (David Arcari) [1783144] - mfd: Intel Platform Monitoring Technology support (David Arcari) [1783144] - mfd: mfd-core: Ensure disabled devices are ignored without error (David Arcari) [1783144] - mfd: core: Fix double-free in mfd_remove_devices_fn() (David Arcari) [1783144] - mfd: mfd-core: Add mechanism for removal of a subset of children (David Arcari) [1783144] - mfd: core: Add OF_MFD_CELL_REG() helper (David Arcari) [1783144] - mfd: core: Fix formatting of MFD helpers (David Arcari) [1783144] - mfd: core: Make a best effort attempt to match devices with the correct of_nodes (David Arcari) [1783144] - mfd: mfd-core: Complete kerneldoc header for devm_mfd_add_devices() (David Arcari) [1783144] - mfd: Constify properties in mfd_cell (David Arcari) [1783144] - mfd: mfd-core: Honour Device Tree's request to disable a child-device (David Arcari) [1783144] - mfd: mfd-core: Move pdev->mfd_cell creation back into mfd_add_device() (David Arcari) [1783144] - mfd: mfd-core: Remove usage counting for .{en,dis}able() call-backs (David Arcari) [1783144] - mfd: mfd-core: Protect against NULL call-back function pointer (David Arcari) [1783144] - mfd: mfd-core: Remove mfd_clone_cell() (David Arcari) [1783144] - mfd: Provide MACRO to declare commonly defined MFD cell attributes (David Arcari) [1783144] - mfd: core: Set fwnode for created devices (David Arcari) [1783144] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (David Arcari) [1783144] - mfd: mfd-core: Document mfd_add_devices() (David Arcari) [1783144] - PCI: Add defines for Designated Vendor-Specific Extended Capability (David Arcari) [1783144] - tick/nohz: Update idle_exittime on actual idle exit (Phil Auld) [1962632] - tick/nohz: Remove superflous check for CONFIG_VIRT_CPU_ACCOUNTING_NATIVE (Phil Auld) [1962632] - tick/nohz: Conditionally restart tick on idle exit (Phil Auld) [1962632] - x86, sched: Fix the AMD CPPC maximum performance value on certain AMD Ryzen generations (Phil Auld) [1960687] - pinctrl: devicetree: Avoid taking direct reference to device name string (Aristeu Rozanski) [1922904] {CVE-2020-0427} - redhat: ppc64: enable CONFIG_PPC_RTAS_FILTER (Aristeu Rozanski) [1906444] {CVE-2020-27777} - powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter (Aristeu Rozanski) [1906444] {CVE-2020-27777} - powerpc/rtas: Restrict RTAS requests from userspace (Aristeu Rozanski) [1906444] {CVE-2020-27777}- docs: vxlan: add info about device features (Petr Oros) [1941739] - selftests: net: add a test for static UDP tunnel ports (Petr Oros) [1941739] - netdevsim: support the static IANA VXLAN port flag (Petr Oros) [1941739] - selftests: net: add a test for shared UDP tunnel info tables (Petr Oros) [1941739] - netdevsim: shared UDP tunnel port table support (Petr Oros) [1941739] - netdevsim: add warnings on unexpected UDP tunnel port errors (Petr Oros) [1941739] - udp_tunnel: add the ability to share port tables (Petr Oros) [1941739] - docs: networking: convert vxlan.txt to ReST (Petr Oros) [1941739] - net: Treat __napi_schedule_irqoff() as __napi_schedule() on PREEMPT_RT (Ivan Vecera) [1960528] - ethtool: fix incorrect datatype in set_eee ops (Balazs Nemeth) [1956698] - ethtool: fix missing NLM_F_MULTI flag when dumping (Antoine Tenart) [1953847] - y2038: remove CONFIG_64BIT_TIME (Waiman Long) [1965360] - net/mlx4: Fix EEPROM dump support (Alaa Hleihel) [1915305] - net/mlx4_en: update moderation when config reset (Alaa Hleihel) [1915305] - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() (Alaa Hleihel) [1915305] - IB/mlx4: Use port iterator and validation APIs (Alaa Hleihel) [1915305] - net/mlx4: Use effective interrupt affinity (Alaa Hleihel) [1915302 1915305] - net/mlx4: Replace irq_to_desc() abuse (Alaa Hleihel) [1915302 1915305] - net/mlx4: simplify the return expression of mlx4_init_srq_table() (Alaa Hleihel) [1915302 1915305] - RDMA/mlx4: Remove bogus dev_base_lock usage (Alaa Hleihel) [1915302 1915305] - net/mlx4: simplify the return expression of mlx4_init_cq_table() (Alaa Hleihel) [1915302 1915305] - net/mlx4: Remove unused #define MAX_MSIX_P_PORT (Alaa Hleihel) [1915302 1915305] - RDMA/mlx4: Enable querying AH for XRC QP types (Alaa Hleihel) [1915302 1915305] - IB/mlx4: Fix fall-through warnings for Clang (Alaa Hleihel) [1915302 1915305] - net/mlx4_en: Remove unused performance counters (Alaa Hleihel) [1915302 1915305] - net/mlx4: Assign boolean values to a bool variable (Alaa Hleihel) [1915302 1915305] - net/mlx4: Cleanup kernel-doc warnings (Alaa Hleihel) [1915302 1915305] - net/mlx4_core : remove unneeded semicolon (Alaa Hleihel) [1915302 1915305] - net/mlx4_core: Fix init_hca fields offset (Alaa Hleihel) [1915301 1915305] - mlx4: handle non-napi callers to napi_poll (Alaa Hleihel) [1915301 1915305] - mlx4: drivers/net/ethernet: clean up unused assignments (Alaa Hleihel) [1915301 1915305] - mlx4: add pause frame stats (Alaa Hleihel) [1915301 1915305] - mlx4: make sure to always set the port type (Alaa Hleihel) [1915301 1915305] - net/mlx4_en: RX, Add a prefetch command for small L1_CACHE_BYTES (Alaa Hleihel) [1915301 1915305] - cnic: remove redundant assignment to variable ret (Nilesh Javali) [1921619] - net: cnic: fix spelling mistake "reserverd" -> "reserved" (Nilesh Javali) [1921619] - cnic: Explicitly initialize all reference counts to 0. (Nilesh Javali) [1921619] - cfg80211: fix locking in netlink owner interface destruction (Jarod Wilson) [1937053] - brcmfmac: Avoid GFP_ATOMIC when GFP_KERNEL is enough (Jarod Wilson) [1937053] - ath11k: fix warning in ath11k_mhi_config (Jarod Wilson) [1937053] - ath11k: qmi: Fix spelling mistake "requeqst" -> "request" (Jarod Wilson) [1937053] - ath10k: Fix ath10k_wmi_tlv_op_pull_peer_stats_info() unlock without lock (Jarod Wilson) [1937053] - ath10k: Fix a use after free in ath10k_htc_send_bundle (Jarod Wilson) [1937053] - ath9k: Fix error check in ath9k_hw_read_revisions() for PCI devices (Jarod Wilson) [1937053] - mt76: mt7921: reinit wpdma during drv_own if necessary (Jarod Wilson) [1937053] - mt76: move mt76_token_init in mt76_alloc_device (Jarod Wilson) [1937053] - mt76: mt7921: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7915: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7615: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_mcu_sta_add routine (Jarod Wilson) [1937053] - mt76: mt7921: mt7921_stop should put device in fw_own state (Jarod Wilson) [1937053] - mt76: connac: unschedule mac_work before going to sleep (Jarod Wilson) [1937053] - mt76: mt7663: add awake and doze time accounting (Jarod Wilson) [1937053] - mt76: mt7921: improve doze opportunity (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mcu_reset function pointer (Jarod Wilson) [1937053] - mt76: mt7915: do not read rf value from efuse in flash mode (Jarod Wilson) [1937053] - mt76: move token utilities in mt76 common module (Jarod Wilson) [1937053] - mt76: move token_lock, token and token_count in mt76_dev (Jarod Wilson) [1937053] - mt76: mt7921: fix possible invalid register access (Jarod Wilson) [1937053] - mt76: mt7921: enable deep sleep when the device suspends (Jarod Wilson) [1937053] - mt76: connac: introduce mt76_connac_mcu_set_deep_sleep utility (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_wpdma_reinit_cond utility routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_dma_{enable,disable} utilities (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_wpdma_reset utility routine (Jarod Wilson) [1937053] - mt76: mt7921: move mt7921_dma_reset in dma.c (Jarod Wilson) [1937053] - mt76: mt7615: Fix a dereference of pointer sta before it is null checked (Jarod Wilson) [1937053] - mt76: mt7921: enable sw interrupts (Jarod Wilson) [1937053] - mt76: mt7921: add awake and doze time accounting (Jarod Wilson) [1937053] - mt76: remove MT76_STATE_PM in tx path (Jarod Wilson) [1937053] - mt76: connac: use waitqueue for runtime-pm (Jarod Wilson) [1937053] - mt76: connac: do not run mt76_txq_schedule_all directly (Jarod Wilson) [1937053] - mt76: mt7615: rely on pm refcounting in mt7615_led_set_config (Jarod Wilson) [1937053] - mt76: connac: alaways wake the device before scanning (Jarod Wilson) [1937053] - mt76: mt7921: get rid of useless MT76_STATE_PM in mt7921_mac_work (Jarod Wilson) [1937053] - mt76: connac: remove MT76_STATE_PM in mac_tx_free (Jarod Wilson) [1937053] - mt76: connac: check wake refcount in mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: connac: unschedule ps_work in mt76_connac_pm_wake (Jarod Wilson) [1937053] - mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi (Jarod Wilson) [1937053] - mt76: dma: add the capability to define a custom rx napi poll routine (Jarod Wilson) [1937053] - mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Jarod Wilson) [1937053] - mt76: connac: introduce wake counter for fw_pmctrl synchronization (Jarod Wilson) [1937053] - mt76: mt7663: fix a race between mt7615_mcu_drv_pmctrl and mt7615_mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: mt7921: fix a race between mt7921_mcu_drv_pmctrl and mt7921_mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: mt7921: remove leftover function declaration (Jarod Wilson) [1937053] - mt76: connac: move mcu_update_arp_filter in mt76_connac module (Jarod Wilson) [1937053] - mt76: mt7921: do not use 0 as NULL pointer (Jarod Wilson) [1937053] - mt76: mt7915: directly read per-rate tx power from registers (Jarod Wilson) [1937053] - mt76: mt7915: rework the flow of txpower setting (Jarod Wilson) [1937053] - mt76: mt7915: add support for DT rate power limits (Jarod Wilson) [1937053] - mt76: mt7921: abort uncompleted scan by wifi reset (Jarod Wilson) [1937053] - mt76: mt7921: add wifisys reset support in debugfs (Jarod Wilson) [1937053] - mt76: mt7921: run mt7921_mcu_fw_log_2_host holding mt76 mutex (Jarod Wilson) [1937053] - mt76: improve mcu error logging (Jarod Wilson) [1937053] - mt76: mt7921: move hw configuration in mt7921_register_device (Jarod Wilson) [1937053] - mt76: mt7915: add support for applying pre-calibration data (Jarod Wilson) [1937053] - mt76: mt7615: load ROM patch before checking patch semaphore status (Jarod Wilson) [1937053] - mt76: mt7615: fix entering driver-own state on mt7663 (Jarod Wilson) [1937053] - mt76: mt7615: fix hardware error recovery for mt7663 (Jarod Wilson) [1937053] - mt76: mt7921: add dumping Tx power table (Jarod Wilson) [1937053] - mt76: introduce single-sku support for mt7663/mt7921 (Jarod Wilson) [1937053] - mt76: mt7615: do not use mt7615 single-sku values for mt7663 (Jarod Wilson) [1937053] - mt76: mt7615: implement support for using DT rate power limits (Jarod Wilson) [1937053] - mt76: extend DT rate power limits to support 11ax devices (Jarod Wilson) [1937053] - mt76: add functions for parsing rate power limits from DT (Jarod Wilson) [1937053] - mt76: flush tx status queue on DMA reset (Jarod Wilson) [1937053] - mt76: mt7921: add mt7921_dma_cleanup in mt7921_unregister_device (Jarod Wilson) [1937053] - mt76: mt7615: use ieee80211_free_txskb() in mt7615_tx_token_put() (Jarod Wilson) [1937053] - mt76: mt7615: only free skbs after mt7615_dma_reset() when reset happens (Jarod Wilson) [1937053] - mt76: mt7915: only free skbs after mt7915_dma_reset() when reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix memleak when mt7915_unregister_device() (Jarod Wilson) [1937053] - mt76: mt7615: fix memleak when mt7615_unregister_device() (Jarod Wilson) [1937053] - mt76: mt7915: fix rate setting of tx descriptor in testmode (Jarod Wilson) [1937053] - mt76: mt7915: rework mt7915_tm_set_tx_len() (Jarod Wilson) [1937053] - mt76: testmode: add support to send larger packet (Jarod Wilson) [1937053] - rtlwifi: implement set_tim by update beacon content (Jarod Wilson) [1937053] - rtw88: refine napi deinit flow (Jarod Wilson) [1937053] - rtw88: Fix potential unrecoverable tx queue stop (Jarod Wilson) [1937053] - rtw88: 8821c: Don't set RX_FLAG_DECRYPTED if packet has no encryption (Jarod Wilson) [1937053] - rtw88: 8822c: debug: allow debugfs to enable/disable TXGAPK (Jarod Wilson) [1937053] - rtw88: 8822c: Add gap-k calibration to improve long range performance (Jarod Wilson) [1937053] - rtw88: 8822c: reorder macro position according to the register number (Jarod Wilson) [1937053] - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_gen2_enqueue_hcmd() (Jarod Wilson) [1937053] - cfg80211: scan: drop entry from hidden_list on overflow (Jarod Wilson) [1937053] - wireless: fix spelling of A-MSDU in HE capabilities (Jarod Wilson) [1937053] - wireless: align HE capabilities A-MPDU Length Exponent Extension (Jarod Wilson) [1937053] - wireless: align some HE capabilities with the spec (Jarod Wilson) [1937053] - mac80211: drop the connection if firmware crashed while in CSA (Jarod Wilson) [1937053] - nl80211: Add new RSNXE related nl80211 extended features (Jarod Wilson) [1937053] - mac80211: properly drop the connection in case of invalid CSA IE (Jarod Wilson) [1937053] - mac80211: make ieee80211_vif_to_wdev work when the vif isn't in the driver (Jarod Wilson) [1937053] - nl80211/cfg80211: add a flag to negotiate for LMR feedback in NDP ranging (Jarod Wilson) [1937053] - ieee80211: add the values of ranging parameters max LTF total field (Jarod Wilson) [1937053] - mac80211: aes_cmac: check crypto_shash_setkey() return value (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove extraneous indentation on if statement (Jarod Wilson) [1937053] - mac80211: properly process TXQ management frames (Jarod Wilson) [1937053] - cfg80211: constify ieee80211_get_response_rate return (Jarod Wilson) [1937053] - cfg80211: fix a few kernel-doc warnings (Jarod Wilson) [1937053] - cfg80211: fix an htmldoc warning (Jarod Wilson) [1937053] - rtw88: 8822c: add CFO tracking (Jarod Wilson) [1937053] - iwlwifi: pcie: don't enable BHs with IRQs disabled (Jarod Wilson) [1937053] - rtw88: Fix array overrun in rtw_get_tx_power_params() (Jarod Wilson) [1937053] - brcmfmac: Remove duplicate struct declaration (Jarod Wilson) [1937053] - rtw88: update statistics to fw for fine-tuning performance (Jarod Wilson) [1937053] - brcmfmac: A typo fix (Jarod Wilson) [1937053] - rtl8xxxu: Simplify locking of a skb list accesses (Jarod Wilson) [1937053] - mwifiex: Remove unneeded variable: "ret" (Jarod Wilson) [1937053] - rtl8xxxu: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mwifiex: don't print SSID to logs (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: Use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - rtlwifi: Simplify locking of a skb list accesses (Jarod Wilson) [1937053] - rtlwifi: remove rtl_get_tid_h (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: remove redundant assignment of variable rtlpriv->btcoexist.reg_bt_sco (Jarod Wilson) [1937053] - rtlwifi: remove redundant assignment to variable err (Jarod Wilson) [1937053] - rtlwifi: Few mundane typo fixes (Jarod Wilson) [1937053] - rtlwifi: 8821ae: upgrade PHY and RF parameters (Jarod Wilson) [1937053] - iwlwifi: dbg: disable ini debug in 9000 family and below (Jarod Wilson) [1937053] - iwlwifi: pcie: Change ma product string name (Jarod Wilson) [1937053] - iwlwifi: fw: print out trigger delay when collecting data (Jarod Wilson) [1937053] - iwlwifi: trans/pcie: defer transport initialisation (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 63 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: don't WARN if we can't remove a time event (Jarod Wilson) [1937053] - iwlwifi: mvm: don't disconnect immediately if we don't hear beacons after CSA (Jarod Wilson) [1937053] - iwlwifi: rs-fw: don't support stbc for HE 160 (Jarod Wilson) [1937053] - iwlwifi: warn on SKB free w/o op-mode (Jarod Wilson) [1937053] - iwlwifi: mvm: add support for version 3 of LARI_CONFIG_CHANGE command. (Jarod Wilson) [1937053] - iwlwifi: pcie: add ISR debug info for msix debug (Jarod Wilson) [1937053] - iwlwifi: pcie: merge napi_poll_msix functions (Jarod Wilson) [1937053] - iwlwifi: mvm: don't lock mutex in RCU critical section (Jarod Wilson) [1937053] - iwlwifi: mvm: remove PS from lower rates. (Jarod Wilson) [1937053] - iwlwifi: mvm: umac error table mismatch (Jarod Wilson) [1937053] - iwlwifi: queue: avoid memory leak in reset flow (Jarod Wilson) [1937053] - iwlwifi: don't warn if we can't wait for empty tx queues (Jarod Wilson) [1937053] - iwlwifi: remove remaining software checksum code (Jarod Wilson) [1937053] - iwlwifi: remove TCM events (Jarod Wilson) [1937053] - iwlwifi: mvm: Use IWL_INFO in fw_reset_handshake() (Jarod Wilson) [1937053] - iwlwifi: mvm: refactor ACPI DSM evaluation function (Jarod Wilson) [1937053] - iwlwifi: mvm: support BIOS enable/disable for 11ax in Ukraine (Jarod Wilson) [1937053] - iwlwifi: move iwl_configure_rxq to be used by other op_modes (Jarod Wilson) [1937053] - iwlwifi: add new so-gf device (Jarod Wilson) [1937053] - iwlwifi: mvm: enable PPAG in China (Jarod Wilson) [1937053] - iwlwifi: mvm: Add support for 6GHz passive scan (Jarod Wilson) [1937053] - iwlwifi: add ax201 killer device (Jarod Wilson) [1937053] - iwlwifi: mvm: when associated with PMF, use protected NDP ranging negotiation (Jarod Wilson) [1937053] - iwlwifi: mvm: clean up queue sync implementation (Jarod Wilson) [1937053] - iwlwifi: mvm: write queue_sync_state only for sync (Jarod Wilson) [1937053] - iwlwifi: mvm: responder: support responder config command version 8 (Jarod Wilson) [1937053] - iwlwifi: mvm: support range request command version 12 (Jarod Wilson) [1937053] - iwlwifi: pcie: make cfg vs. trans_cfg more robust (Jarod Wilson) [1937053] - iwlwifi: pcie: clear only FH bits handle in the interrupt (Jarod Wilson) [1937053] - iwlwifi: add 160Mhz to killer 1550 name (Jarod Wilson) [1937053] - iwlwifi: change name to AX 211 and 411 family (Jarod Wilson) [1937053] - iwlwifi: change step in so-gf struct (Jarod Wilson) [1937053] - iwlwifi: pcie: Add support for Bz Family (Jarod Wilson) [1937053] - iwlwifi: mvm: don't allow CSA if we haven't been fully associated (Jarod Wilson) [1937053] - iwlwifi: pcie: normally grab NIC access for inflight-hcmd (Jarod Wilson) [1937053] - iwlwifi: pcie: avoid unnecessarily taking spinlock (Jarod Wilson) [1937053] - iwlwifi: mvm: enable TX on new CSA channel before disconnecting (Jarod Wilson) [1937053] - mt76: mt7921: add rcu section in mt7921_mcu_tx_rate_report (Jarod Wilson) [1937053] - mt76: mt7921: introduce MCU_EVENT_LP_INFO event parsing (Jarod Wilson) [1937053] - mt76: mt7615: always add rx header translation tlv when adding stations (Jarod Wilson) [1937053] - mt76: mt7615: add missing SPDX tag in mmio.c (Jarod Wilson) [1937053] - mt76: mt7915: add mmio.c (Jarod Wilson) [1937053] - mt76: report Rx timestamp (Jarod Wilson) [1937053] - mt76: mt7921: remove 80+80 MHz support capabilities (Jarod Wilson) [1937053] - mt76: fix potential DMA mapping leak (Jarod Wilson) [1937053] - mt76: mt7921: reduce the data latency during hw scan (Jarod Wilson) [1937053] - mt76: mt7921: fix the insmod hangs (Jarod Wilson) [1937053] - mt76: mt7921: fix kernel crash when the firmware fails to download (Jarod Wilson) [1937053] - mt76: mt7921: fix the dwell time control (Jarod Wilson) [1937053] - mt76: mt7921: fix inappropriate WoW setup with the missing ARP informaiton (Jarod Wilson) [1937053] - mt76: mt7921: introduce MT_WFDMA_DUMMY_CR definition (Jarod Wilson) [1937053] - mt76: mt7915: add wifi subsystem reset (Jarod Wilson) [1937053] - mt76: mt7915: fix mt7915_mcu_add_beacon (Jarod Wilson) [1937053] - mt76: mt7615: fix .add_beacon_offload() (Jarod Wilson) [1937053] - mt76: mt7921: rework mt7921_mcu_debug_msg_event routine (Jarod Wilson) [1937053] - mt76: mt7921: always wake the device in mt7921_remove_interface (Jarod Wilson) [1937053] - mt76: mt7921: fix key set/delete issue (Jarod Wilson) [1937053] - mt76: mt7915: fix txpower init for TSSI off chips (Jarod Wilson) [1937053] - mt76: mt7915: limit firmware log message printk to buffer length (Jarod Wilson) [1937053] - mt76: mt7615: limit firmware log message printk to buffer length (Jarod Wilson) [1937053] - mt76: mt7615: fix chip reset on MT7622 and MT7663e (Jarod Wilson) [1937053] - mt76: mt7915: cleanup mcu tx queue in mt7915_dma_reset() (Jarod Wilson) [1937053] - mt76: mt7915: keep mcu_add_bss_info enabled till interface removal (Jarod Wilson) [1937053] - mt76: mt7615: keep mcu_add_bss_info enabled till interface removal (Jarod Wilson) [1937053] - mt76: mt7622: trigger hif interrupt for system reset (Jarod Wilson) [1937053] - mt76: mt7615: cleanup mcu tx queue in mt7615_dma_reset() (Jarod Wilson) [1937053] - mt76: mt7615: only enable DFS test knobs for mt7615 (Jarod Wilson) [1937053] - mt76: mt7921: properly configure rcpi adding a sta to the fw (Jarod Wilson) [1937053] - mt76: connac: introduce mt76_sta_cmd_info data structure (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mt7921_mac_wtbl_lmac_addr (Jarod Wilson) [1937053] - mt76: mt7915: refresh repeater entry MAC address when setting BSSID (Jarod Wilson) [1937053] - mt76: mt7915: fix key set/delete issue (Jarod Wilson) [1937053] - mt76: mt7921: remove duplicated macros in mcu.h (Jarod Wilson) [1937053] - mt76: mt7921: remove redundant check on type (Jarod Wilson) [1937053] - mt76: mt7921: remove leftovers from dbdc configuration (Jarod Wilson) [1937053] - mt76: mt7921: add wifi reset support (Jarod Wilson) [1937053] - mt76: dma: export mt76_dma_rx_cleanup routine (Jarod Wilson) [1937053] - mt76: dma: introduce mt76_dma_queue_reset routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce __mt7921_start utility routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_run_firmware utility routine. (Jarod Wilson) [1937053] - mt76: introduce mcu_reset function pointer in mt76_mcu_ops structure (Jarod Wilson) [1937053] - mt76: mt7921: reduce mcu timeouts for suspend, offload and hif_ctrl msg (Jarod Wilson) [1937053] - mt76: mt7915: fix possible deadlock while mt7915_register_ext_phy() (Jarod Wilson) [1937053] - mt76: mt7615: add missing capabilities for DBDC (Jarod Wilson) [1937053] - mt76: mt7663s: fix the possible device hang in high traffic (Jarod Wilson) [1937053] - mt76: mt7663s: make all of packets 4-bytes aligned in sdio tx aggregation (Jarod Wilson) [1937053] - mt76: mt7663: fix when beacon filter is being applied (Jarod Wilson) [1937053] - mt76: mt7615: check mcu returned values in mt7615_ops (Jarod Wilson) [1937053] - mt76: mt7915: check mcu returned values in mt7915_ops (Jarod Wilson) [1937053] - mt76: mt7915: fix txrate reporting (Jarod Wilson) [1937053] - mt76: mt7915: fix rxrate reporting (Jarod Wilson) [1937053] - mt76: mt76x0u: Add support for TP-Link T2UHP(UN) v1 (Jarod Wilson) [1937053] - mt76: mt7915: fix PHY mode for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: stop ext_phy queue when mac reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix CSA notification for DBDC (Jarod Wilson) [1937053] - mt76: mt7615: stop ext_phy queue when mac reset happens (Jarod Wilson) [1937053] - mt76: mt7615: fix CSA notification for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: add missing capabilities for DBDC (Jarod Wilson) [1937053] - mt76: mt7921: check mcu returned values in mt7921_start (Jarod Wilson) [1937053] - mt76: mt7921: fix the base of the dynamic remap (Jarod Wilson) [1937053] - mt76: mt7921: fix the base of PCIe interrupt (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mt7921_sta_rc_update routine (Jarod Wilson) [1937053] - mt76: check return value of mt76_txq_send_burst in mt76_txq_schedule_list (Jarod Wilson) [1937053] - mt76: connac: fix kernel warning adding monitor interface (Jarod Wilson) [1937053] - mt76: mt7915: fix mib stats counter reporting to mac80211 (Jarod Wilson) [1937053] - mt76: mt7615: fix mib stats counter reporting to mac80211 (Jarod Wilson) [1937053] - mt76: mt7615: remove hdr->fw_ver check (Jarod Wilson) [1937053] - mt76: mt7615: fix TSF configuration (Jarod Wilson) [1937053] - mt76: mt7921: fix stats register definitions (Jarod Wilson) [1937053] - mt76: mt7921: remove unneeded semicolon (Jarod Wilson) [1937053] - mt76: mt7915: fix aggr len debugfs node (Jarod Wilson) [1937053] - mt76: mt7921: fix aggr length histogram (Jarod Wilson) [1937053] - mt76: mt7615: fix memory leak in mt7615_coredump_work (Jarod Wilson) [1937053] - mt76: mt7615: add support for rx decapsulation offload (Jarod Wilson) [1937053] - mt76: mt7615: add rx checksum offload support (Jarod Wilson) [1937053] - mt76: mt7615: enable hw rx-amsdu de-aggregation (Jarod Wilson) [1937053] - mt76: connac: update sched_scan cmd usage (Jarod Wilson) [1937053] - mt76: mt7921: add flush operation (Jarod Wilson) [1937053] - mt76: mt7921: fixup rx bitrate statistics (Jarod Wilson) [1937053] - mt76: connac: fix up the setting for ht40 mode in mt76_connac_mcu_uni_add_bss (Jarod Wilson) [1937053] - mt76: mt7921: switch to new api for hardware beacon filter (Jarod Wilson) [1937053] - mt76: mt7921: fix memory leak in mt7921_coredump_work (Jarod Wilson) [1937053] - mt76: mt7921: fix suspend/resume sequence (Jarod Wilson) [1937053] - mt76: use PCI_VENDOR_ID_MEDIATEK to avoid open coded (Jarod Wilson) [1937053] - mt76: mt7915: always check return value from mt7915_mcu_alloc_wtbl_req (Jarod Wilson) [1937053] - mt76: connac: always check return value from mt76_connac_mcu_alloc_wtbl_req (Jarod Wilson) [1937053] - mt76: mt76x0: disable GTK offloading (Jarod Wilson) [1937053] - mt76: always use WTBL_MAX_SIZE for tlv allocation (Jarod Wilson) [1937053] - mt76: mt7921: removed unused definitions in mcu.h (Jarod Wilson) [1937053] - mt76: mt7921: remove unnecessary variable (Jarod Wilson) [1937053] - mt76: mt7921: enable random mac addr during scanning (Jarod Wilson) [1937053] - mt76: mt7615: support loading EEPROM for MT7613BE (Jarod Wilson) [1937053] - mt76: mt7915: fix tx skb dma unmap (Jarod Wilson) [1937053] - mt76: mt7615: fix tx skb dma unmap (Jarod Wilson) [1937053] - mt76: mt7615: fix key set/delete issues (Jarod Wilson) [1937053] - mt76: mt7915: add support for rx decapsulation offload (Jarod Wilson) [1937053] - mt76: mt7915: add rx checksum offload support (Jarod Wilson) [1937053] - mt76: mt7915: enable hw rx-amsdu de-aggregation (Jarod Wilson) [1937053] - mt76: add support for 802.3 rx frames (Jarod Wilson) [1937053] - cfg80211: Remove wrong RNR IE validation check (Jarod Wilson) [1937053] - mac80211: bail out if cipher schemes are invalid (Jarod Wilson) [1937053] - mac80211: clear the beacon's CRC after channel switch (Jarod Wilson) [1937053] - mac80211: Set priority and queue mapping for injected frames (Jarod Wilson) [1937053] - mac80211: Allow concurrent monitor iface and ethernet rx decap (Jarod Wilson) [1937053] - nl80211: Add interface to indicate TDLS peer's HE capability (Jarod Wilson) [1937053] - cfg80211: allow specifying a reason for hw_rfkill (Jarod Wilson) [1937053] - nl80211: better document CMD_ROAM behavior (Jarod Wilson) [1937053] - mac80211: set sk_pacing_shift for 802.3 txpath (Jarod Wilson) [1937053] - mac80211: don't apply flow control on management frames (Jarod Wilson) [1937053] - nl80211: Add missing line in nl80211_fils_discovery_policy (Jarod Wilson) [1937053] - mac80211: remove redundant assignment of variable result (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove unused variable 'mg' in minstrel_ht_next_jump_rate() (Jarod Wilson) [1937053] - cfg80211: regulatory: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - mac80211_hwsim: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - rfkill: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - mt7601u: enable TDLS support (Jarod Wilson) [1937053] - mt7601u: fix always true expression (Jarod Wilson) [1937053] - rtw88: Fix an error code in rtw_debugfs_set_rsvd_page() (Jarod Wilson) [1937053] - rtw88: coex: fix A2DP stutters while WL busy + WL scan (Jarod Wilson) [1937053] - rtw88: 8822c: add LC calibration for RTL8822C (Jarod Wilson) [1937053] - rtw88: 8822c: update tx power limit table to RF v40.1 (Jarod Wilson) [1937053] - rtw88: fix DIG min setting (Jarod Wilson) [1937053] - rtw88: add flush hci support (Jarod Wilson) [1937053] - rtw88: 8822c: support FW crash dump when FW crash (Jarod Wilson) [1937053] - rtw88: remove unnecessary variable (Jarod Wilson) [1937053] - rtw88: coex: add power off setting (Jarod Wilson) [1937053] - ath11k: Add support for STA to handle beacon miss (Jarod Wilson) [1937053] - ath11k: Update signal filled flag during sta_statistics drv op (Jarod Wilson) [1937053] - ath10k: skip the wait for completion to recovery in shutdown path (Jarod Wilson) [1937053] - ath11k: fix thermal temperature read (Jarod Wilson) [1937053] - ath11k: fix potential wmi_mgmt_tx_queue race condition (Jarod Wilson) [1937053] - ath11k: qmi: cosmetic changes to error messages (Jarod Wilson) [1937053] - ath11k: qmi: add more debug messages (Jarod Wilson) [1937053] - Revert "ath9k: fix ath_tx_process_buffer() potential null ptr dereference" (Jarod Wilson) [1937053] - ath11k: print hardware name and version during initialisation (Jarod Wilson) [1937053] - ath11k: Enable radar detection for 160MHz secondary segment (Jarod Wilson) [1937053] - ath11k: Fix sounding dimension config in HE cap (Jarod Wilson) [1937053] - ath11k: add qcn9074 pci device support (Jarod Wilson) [1937053] - ath11k: add extended interrupt support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add CE interrupt support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add data path support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add hal support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add static window support for register access (Jarod Wilson) [1937053] - ath11k: Add qcn9074 mhi controller config (Jarod Wilson) [1937053] - ath11k: Update memory segment count for qcn9074 (Jarod Wilson) [1937053] - ath11k: qmi: increase the number of fw segments (Jarod Wilson) [1937053] - ath11k: Move qmi service_ins_id to hw_params (Jarod Wilson) [1937053] - ath11k: Refactor ath11k_msi_config (Jarod Wilson) [1937053] - ath11k: debugfs: Fix spelling mistake "Opportunies" -> "Opportunities" (Jarod Wilson) [1937053] - ath9k: fix ath_tx_process_buffer() potential null ptr dereference (Jarod Wilson) [1937053] - nl80211: fix beacon head validation (Jarod Wilson) [1937053] - nl80211: fix potential leak of ACL params (Jarod Wilson) [1937053] - cfg80211: check S1G beacon compat element length (Jarod Wilson) [1937053] - cfg80211: remove WARN_ON() in cfg80211_sme_connect (Jarod Wilson) [1937053] - mac80211: fix time-is-after bug in mlme (Jarod Wilson) [1937053] - mac80211: fix TXQ AC confusion (Jarod Wilson) [1937053] - rfkill: revert back to old userspace API by default (Jarod Wilson) [1937053] - mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN (Jarod Wilson) [1937053] - iwlwifi: mvm: fix beacon protection checks (Jarod Wilson) [1937053] - iwlwifi: mvm: rfi: don't lock mvm->mutex when sending config command (Jarod Wilson) [1937053] - iwlwifi: pcie: add support for So-F devices (Jarod Wilson) [1937053] - iwlwifi: fw: fix notification wait locking (Jarod Wilson) [1937053] - iwlwifi: add support for Qu with AX201 device (Jarod Wilson) [1937053] - iwlwifi: pcie: properly set LTR workarounds on 22000 devices (Jarod Wilson) [1937053] - iwlwifi: fix 11ax disabled bit in the regulatory capability flags (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix recently introduced deadlock issue (Jarod Wilson) [1937053] - mt76: mt7921: fix airtime reporting (Jarod Wilson) [1937053] - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_enqueue_hcmd() (Jarod Wilson) [1937053] - mt76: mt7615: remove redundant dev_err call in mt7622_wmac_probe() (Jarod Wilson) [1937053] - mt76: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - reg.c: Fix a spello (Jarod Wilson) [1937053] - mac80211: cfg.c: A typo fix (Jarod Wilson) [1937053] - wireless: remove never implemented MODULE_SUPPORTED_DEVICE (Jarod Wilson) [1937053] - wireless/nl80211: fix wdev_id may be used uninitialized (Jarod Wilson) [1937053] - nl80211: fix locking for wireless device netns change (Jarod Wilson) [1937053] - iwlwifi: don't call netif_napi_add() with rxq->lock held (was Re: Lockdep warning in iwl_pcie_rx_handle()) (Jarod Wilson) [1937053] - iwlwifi: fix ARCH=i386 compilation warnings (Jarod Wilson) [1937053] - iwlwifi: mvm: add terminate entry for dmi_system_id tables (Jarod Wilson) [1937053] - mt76: mt7915: fix unused 'mode' variable (Jarod Wilson) [1937053] - mt76: dma: do not report truncated frames to mac80211 (Jarod Wilson) [1937053] - mt76: mt7921: remove incorrect error handling (Jarod Wilson) [1937053] - iwlwifi: pcie: fix iwl_so_trans_cfg link error when CONFIG_IWLMVM is disabled (Jarod Wilson) [1937053] - ath11k: fix AP mode for QCA6390 (Jarod Wilson) [1937053] - ath11k: qmi: use pad to format dma_addr_t (Jarod Wilson) [1937053] - iwlwifi: avoid crash on unsupported debug collection (Jarod Wilson) [1937053] - mt76: mt7915: only modify tx buffer list after allocating tx token id (Jarod Wilson) [1937053] - mt76: fix tx skb error handling in mt76_dma_tx_queue_skb (Jarod Wilson) [1937053] - ath9k: fix transmitting to stations in dynamic SMPS mode (Jarod Wilson) [1937053] - redhat: Enable ath11k PCI device support (Jarod Wilson) [1937053] - soc: qcom: Do not depend on ARCH_QCOM for QMI helpers (Jarod Wilson) [1937053] - net: qrtr: Do not depend on ARCH_QCOM (Jarod Wilson) [1937053] - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case (Jarod Wilson) [1937053] - nl80211: add documentation for HT/VHT/HE disable attributes (Jarod Wilson) [1937053] - cfg80211/mac80211: Support disabling HE mode (Jarod Wilson) [1937053] - mac80211: add STBC encoding to ieee80211_parse_tx_radiotap (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove sample rate switching code for constrained devices (Jarod Wilson) [1937053] - mac80211: minstrel_ht: show sampling rates in debugfs (Jarod Wilson) [1937053] - mac80211: minstrel_ht: significantly redesign the rate probing strategy (Jarod Wilson) [1937053] - mac80211: minstrel_ht: reduce the need to sample slower rates (Jarod Wilson) [1937053] - mac80211: minstrel_ht: update total packets counter in tx status path (Jarod Wilson) [1937053] - mac80211: minstrel_ht: use bitfields to encode rate indexes (Jarod Wilson) [1937053] - cfg80211: initialize reg_rule in __freq_reg_info() (Jarod Wilson) [1937053] - mac80211: fix potential overflow when multiplying to u32 integers (Jarod Wilson) [1937053] - mac80211: enable QoS support for nl80211 ctrl port (Jarod Wilson) [1937053] - cfg80211: remove unused callback (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_B (2/2) parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_B (1/2) parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_A parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update MAC/BB parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: replace tx tasklet with work queue (Jarod Wilson) [1937053] - rtw88: add napi support (Jarod Wilson) [1937053] - rtw88: add rts condition (Jarod Wilson) [1937053] - rtw88: add dynamic rrsr configuration (Jarod Wilson) [1937053] - iwlwifi: remove incorrect comment in pnvm (Jarod Wilson) [1937053] - ath11k: qmi: add debug message for allocated memory segment addresses and sizes (Jarod Wilson) [1937053] - ath11k: pci: remove experimental warning (Jarod Wilson) [1937053] - ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr() (Jarod Wilson) [1937053] - ath10k: change ath10k_offchan_tx_work() peer present msg to a warn (Jarod Wilson) [1937053] - ath9k: fix data bus crash when setting nf_override via debugfs (Jarod Wilson) [1937053] - ath11k: add support to configure spatial reuse parameter set (Jarod Wilson) [1937053] - ath10k: restore tx sk_buff of htt header for SDIO (Jarod Wilson) [1937053] - brcmsmac: Fix the spelling configation to configuration in the file d11.h (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 62 for AX devices (Jarod Wilson) [1937053] - iwlwifi: pnvm: implement reading PNVM from UEFI (Jarod Wilson) [1937053] - iwlwifi: pnvm: move file loading code to a separate function (Jarod Wilson) [1937053] - iwlwifi: pnvm: increment the pointer before checking the TLV (Jarod Wilson) [1937053] - iwlwifi: pcie: define FW_RESET_TIMEOUT for clarity (Jarod Wilson) [1937053] - iwlwifi: pnvm: set the PNVM again if it was already loaded (Jarod Wilson) [1937053] - iwlwifi: mvm: global PM mode does not reset after FW crash (Jarod Wilson) [1937053] - iwlwifi: mvm: reduce the print severity of failing getting NIC temp (Jarod Wilson) [1937053] - iwlwifi: mvm: get NVM later in the mvm_start flow (Jarod Wilson) [1937053] - iwlmvm: set properly NIC_NOT_ACK_ENABLED flag (Jarod Wilson) [1937053] - iwlwifi: remove max_ht_ampdu_exponent config parameter (Jarod Wilson) [1937053] - iwlwifi: remove max_vht_ampdu_exponent config parameter (Jarod Wilson) [1937053] - iwlwifi: mvm: Check ret code for iwl_mvm_load_nvm_to_nic (Jarod Wilson) [1937053] - iwlwifi: mvm: don't check if CSA event is running before removing (Jarod Wilson) [1937053] - iwlwifi: mvm: Support SCAN_CFG_CMD version 5 (Jarod Wilson) [1937053] - iwlwifi: mvm: isolate the get nvm flow (Jarod Wilson) [1937053] - iwlwifi: mvm: simplify iwl_mvm_dbgfs_register (Jarod Wilson) [1937053] - iwlwifi: mvm: register to mac80211 last (Jarod Wilson) [1937053] - iwlwifi: acpi: add support for DSM RFI (Jarod Wilson) [1937053] - iwlwifi: mvm: add RFI-M support (Jarod Wilson) [1937053] - iwlwifi:mvm: Add support for version 2 of the LARI_CONFIG_CHANGE command. (Jarod Wilson) [1937053] - iwlwifi: pcie: don't crash when rx queues aren't allocated in interrupt (Jarod Wilson) [1937053] - iwlwifi: correction of group-id once sending REPLY_ERROR (Jarod Wilson) [1937053] - iwlwifi: pcie: add AX201 and AX211 radio modules for Ma devices (Jarod Wilson) [1937053] - iwlwifi: pcie: add CDB bit to the device configuration parsing (Jarod Wilson) [1937053] - iwlwifi: acpi: don't return valid pointer as an ERR_PTR (Jarod Wilson) [1937053] - iwlwifi: queue: add fake tx time point (Jarod Wilson) [1937053] - iwlwifi: remove flags argument for nic_access (Jarod Wilson) [1937053] - iwlwifi: declare support for triggered SU/MU beamforming feedback (Jarod Wilson) [1937053] - iwlwifi: dbg: add op_mode callback for collecting debug data. (Jarod Wilson) [1937053] - iwlwifi: api: clean up some documentation/bits (Jarod Wilson) [1937053] - iwlwifi: dbg: remove unsupported regions (Jarod Wilson) [1937053] - iwlwifi: pcie: Change Ma device ID (Jarod Wilson) [1937053] - iwlwifi: when HW has rate offload don't look at control field (Jarod Wilson) [1937053] - iwlwifi: pcie: NULLify pointers after free (Jarod Wilson) [1937053] - iwlwifi: mvm: assign SAR table revision to the command later (Jarod Wilson) [1937053] - iwlwifi: mvm: remove useless iwl_mvm_resume_d3() function (Jarod Wilson) [1937053] - iwlwifi: mvm: enhance a print in CSA flows (Jarod Wilson) [1937053] - iwlwifi: mvm: send stored PPAG command instead of local (Jarod Wilson) [1937053] - iwlwifi: mvm: store PPAG enabled/disabled flag properly (Jarod Wilson) [1937053] - iwlwifi: mvm: fix the type we use in the PPAG table validity checks (Jarod Wilson) [1937053] - iwlwifi: acpi: fix PPAG table sizes (Jarod Wilson) [1937053] - iwlwifi: pcie: don't disable interrupts for reg_lock (Jarod Wilson) [1937053] - iwlwifi: pcie: add a few missing entries for So with Hr (Jarod Wilson) [1937053] - iwlwifi: dbg: Mark ucode tlv data as const (Jarod Wilson) [1937053] - iwlwifi: add new cards for So and Qu family (Jarod Wilson) [1937053] - ath11k: fix a locking bug in ath11k_mac_op_start() (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: phy: Simplify bool comparison (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: Simplify bool comparison (Jarod Wilson) [1937053] - brcmfmac: add support for CQM RSSI notifications (Jarod Wilson) [1937053] - ath10k: Add new debug level for sta related logs (Jarod Wilson) [1937053] - ath11k: Update tx descriptor search index properly (Jarod Wilson) [1937053] - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics (Jarod Wilson) [1937053] - ath10k: Fix suspicious RCU usage warning in ath10k_wmi_tlv_parse_peer_stats_info() (Jarod Wilson) [1937053] - wl3501: fix alignment constraints (Jarod Wilson) [1937053] - rt2800usb: add Sweex LW163V2 id's (Jarod Wilson) [1937053] - rt2x00: remove duplicate word and fix typo in comment (Jarod Wilson) [1937053] - mwifiex: Report connected BSS with cfg80211_connect_bss() (Jarod Wilson) [1937053] - rtl8xxxu: remove unused assignment value (Jarod Wilson) [1937053] - atmel: at76c50x: use DEFINE_MUTEX() for mutex lock (Jarod Wilson) [1937053] - brcmsmac: fix alignment constraints (Jarod Wilson) [1937053] - brcmfmac: Add DMI nvram filename quirk for Voyo winpad A15 tablet (Jarod Wilson) [1937053] - brcmfmac: Add DMI nvram filename quirk for Predia Basic tablet (Jarod Wilson) [1937053] - rtw88: 8821c: support RFE type2 wifi NIC (Jarod Wilson) [1937053] - rtw88: 8821c: Correct CCK RSSI (Jarod Wilson) [1937053] - rtw88: coex: 8821c: correct antenna switch function (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: remove redundant initialization of variable rtstatus (Jarod Wilson) [1937053] - iwlwifi: pcie: Disable softirqs during Rx queue init (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 61 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: add Asus to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add Microsoft to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add Samsung to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add HP to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: implement approved list for the PPAG feature (Jarod Wilson) [1937053] - iwlwifi: mvm: set enabled in the PPAG command properly (Jarod Wilson) [1937053] - iwlwifi: mvm: add debugfs entry to trigger a dump as any time-point (Jarod Wilson) [1937053] - iwlwifi: mvm: add tx fail time point (Jarod Wilson) [1937053] - iwlwifi: fwrt: add suspend/resume time point (Jarod Wilson) [1937053] - iwlwifi: mvm: add triggers for MLME events (Jarod Wilson) [1937053] - iwlwifi: mvm: add IML/ROM information for other HW families (Jarod Wilson) [1937053] - iwlwifi: mvm: fix CSA AP side (Jarod Wilson) [1937053] - iwlwifi: mvm: make iwl_mvm_tt_temp_changed() static (Jarod Wilson) [1937053] - iwlwifi: mvm: cancel the scan delayed work when scan is aborted (Jarod Wilson) [1937053] - iwlwifi: pcie: add support for SnJ with Hr1 (Jarod Wilson) [1937053] - iwlwifi: mvm: move early time-point before nvm_init in non-unified (Jarod Wilson) [1937053] - iwlwifi: add support for SnJ with Jf devices (Jarod Wilson) [1937053] - iwlwifi: move SnJ and So rules to the new tables (Jarod Wilson) [1937053] - iwlwifi: mvm: slightly clean up rs_fw_set_supp_rates() (Jarod Wilson) [1937053] - iwlwifi: fw api: make hdr a zero-size array again (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 60 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: advertise BIGTK client support if available (Jarod Wilson) [1937053] - iwlwifi: always allow maximum A-MSDU on newer devices (Jarod Wilson) [1937053] - iwlwifi: mvm: debugfs: check length precisely in inject_packet (Jarod Wilson) [1937053] - iwlwifi: mvm: simplify TX power setting (Jarod Wilson) [1937053] - iwlwifi: tx: move handing sync/async host command to trans (Jarod Wilson) [1937053] - iwlwifi: mvm: add explicit check for non-data frames in get Tx rate (Jarod Wilson) [1937053] - iwlwifi: mvm: debugfs for phy-integration-ver (Jarod Wilson) [1937053] - iwlwifi: parse phy integration string from FW TLV (Jarod Wilson) [1937053] - iwlwifi: mvm: csa: do not abort CSA before disconnect (Jarod Wilson) [1937053] - iwlwifi: mvm: don't send commands during suspend\resume transition (Jarod Wilson) [1937053] - iwlwifi: mvm: don't check system_pm_mode without mutex held (Jarod Wilson) [1937053] - iwlwifi: remove TRANS_PM_OPS (Jarod Wilson) [1937053] - iwlwifi: dbg: dump paged memory from index 1 (Jarod Wilson) [1937053] - iwl-trans: iwlwifi: move sync NMI logic to trans (Jarod Wilson) [1937053] - iwlwifi: pcie: properly implement NAPI (Jarod Wilson) [1937053] - iwlwifi: mvm: add support for new flush queue response (Jarod Wilson) [1937053] - iwlwifi: mvm: handle CCA-EXT delay firmware notification (Jarod Wilson) [1937053] - iwlwifi: mvm: scan: fix scheduled scan restart handling (Jarod Wilson) [1937053] - iwlwifi: mvm: remove debugfs injection limitations (Jarod Wilson) [1937053] - iwlwifi: mvm: check more notification sizes (Jarod Wilson) [1937053] - iwlwifi: mvm: add notification size checks (Jarod Wilson) [1937053] - ath11k: remove h from printk format specifier (Jarod Wilson) [1937053] - ath10k: remove h from printk format specifier (Jarod Wilson) [1937053] - cfg80211: fix netdev registration deadlock (Jarod Wilson) [1937053] - mac80211: fix station rate table updates on assoc (Jarod Wilson) [1937053] - mt76: mt7663: introduce coredump support (Jarod Wilson) [1937053] - mt76: mt7921: add coredump support (Jarod Wilson) [1937053] - mt76: mt7921: enable MSI interrupts (Jarod Wilson) [1937053] - mt76: mt7921: introduce regdomain notifier support (Jarod Wilson) [1937053] - mt76: mt7921: introduce Runtime PM support (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu module for suspend and WoW support (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu module for sched_scan and hw_scan (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu common library (Jarod Wilson) [1937053] - mt76: mt7921: introduce PM support (Jarod Wilson) [1937053] - mt76: mt7921: introduce beacon_loss mcu event (Jarod Wilson) [1937053] - mt76: mt7921: introduce support for hardware beacon filter (Jarod Wilson) [1937053] - mt76: mt7921: introduce 802.11 PS support in sta mode (Jarod Wilson) [1937053] - mt76: mt7921: introduce schedule scan support (Jarod Wilson) [1937053] - mt76: mt7921: add debugfs support (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921e support (Jarod Wilson) [1937053] - mt76: mt7921: add ieee80211_ops (Jarod Wilson) [1937053] - mt76: mt7921: add EEPROM support (Jarod Wilson) [1937053] - mt76: mt7921: add DMA support (Jarod Wilson) [1937053] - mt76: mt7921: add MCU support (Jarod Wilson) [1937053] - mt76: mt7921: add MAC support (Jarod Wilson) [1937053] - wireless: Fix "ordering" comment typos (Jarod Wilson) [1937053] - mt76: mt76_connac: move pm utility routines in mt76_connac_lib module (Jarod Wilson) [1937053] - mt76: mt76_connac: move pm data struct in mt76_connac.h (Jarod Wilson) [1937053] - mt76: mt76_connac: move WoW and suspend code in mt76_connac_mcu module (Jarod Wilson) [1937053] - mt76: mt76_connac: move hw_scan and sched_scan routine in mt76_connac_mcu module (Jarod Wilson) [1937053] - mt76: mt76_connac: create mcu library (Jarod Wilson) [1937053] - mt76: introduce mt76_vif data structure (Jarod Wilson) [1937053] - cfg80211: call cfg80211_destroy_ifaces() with wiphy lock held (Jarod Wilson) [1937053] - wext: call cfg80211_set_encryption() with wiphy lock held (Jarod Wilson) [1937053] - wext: call cfg80211_change_iface() with wiphy lock held (Jarod Wilson) [1937053] - nl80211: call cfg80211_dev_rename() under RTNL (Jarod Wilson) [1937053] - mt76: dma: fix a possible memory leak in mt76_add_fragment() (Jarod Wilson) [1937053] - ath9k: fix build error with LEDS_CLASS=m (Jarod Wilson) [1937053] - ath10k: fix wmi mgmt tx queue full due to race condition (Jarod Wilson) [1937053] - ath10k: pass the ssid info to get the correct bss entity (Jarod Wilson) [1937053] - ath10k: allow dynamic SAR power limits via common API (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix regression in the max_prob_rate fix (Jarod Wilson) [1937053] - mt76: mt7615: reduce VHT maximum MPDU length (Jarod Wilson) [1937053] - mt76: reduce q->lock hold time (Jarod Wilson) [1937053] - mt76: usb: process URBs with status EPROTO properly (Jarod Wilson) [1937053] - mt76: move vif_mask back from mt76_phy to mt76_dev (Jarod Wilson) [1937053] - mt76: mt7915: make vif index per adapter instead of per band (Jarod Wilson) [1937053] - mt76: mt7915: add support for using a secondary PCIe link for gen1 (Jarod Wilson) [1937053] - mt76: fix crash on tearing down ext phy (Jarod Wilson) [1937053] - mt76: mt7915: bring up the WA event rx queue for band1 (Jarod Wilson) [1937053] - mt76: mt7615: unify init work (Jarod Wilson) [1937053] - mt76: mt7915: support TxBF for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: Remove unneeded semicolon (Jarod Wilson) [1937053] - mt76: mt7615: set mcu country code in mt7615_mcu_set_channel_domain() (Jarod Wilson) [1937053] - mt76: mt7915: fix eeprom DBDC band selection (Jarod Wilson) [1937053] - mt76: mt7915: fix eeprom parsing for DBDC (Jarod Wilson) [1937053] - iwlwifi: provide gso_type to GSO packets (Jarod Wilson) [1937053] - mt76: mt7915: disable RED support in the WA firmware (Jarod Wilson) [1937053] - mt76: mt7915: rework mcu API (Jarod Wilson) [1937053] - mt76: mt7915: do not set DRR group for stations (Jarod Wilson) [1937053] - mt76: mt7915: ensure that init work completes before starting the device (Jarod Wilson) [1937053] - mt76: mt7603: fix ED/CCA monitoring with single-stream devices (Jarod Wilson) [1937053] - mt76: mt7915: add implicit Tx beamforming support (Jarod Wilson) [1937053] - mt76: mt7915: simplify peer's TxBF capability check (Jarod Wilson) [1937053] - mt76: mt7615: mt7915: disable txpower sku when testmode enabled (Jarod Wilson) [1937053] - mt76: mt7915: add support for continuous tx in testmode (Jarod Wilson) [1937053] - mt76: mt7915: rework set state part in testmode (Jarod Wilson) [1937053] - mt76: testmode: add a new state for continuous tx (Jarod Wilson) [1937053] - mt76: mt7915: clean hw queue before starting new testmode tx (Jarod Wilson) [1937053] - mt76: mt7915: calculate new packet length when tx_time is set in testmode (Jarod Wilson) [1937053] - mt76: mt7915: add support for ipg in testmode (Jarod Wilson) [1937053] - mt76: mt7915: split edca update function (Jarod Wilson) [1937053] - mt76: testmode: make tx queued limit adjustable (Jarod Wilson) [1937053] - mt76: testmode: add attributes for ipg related parameters (Jarod Wilson) [1937053] - mt76: testmode: add support to set user-defined spe index (Jarod Wilson) [1937053] - mt76: mt7915: force ldpc for bw larger than 20MHz in testmode (Jarod Wilson) [1937053] - mt76: move chainmask in mt76_phy (Jarod Wilson) [1937053] - mt76: move mac_work in mt76_core module (Jarod Wilson) [1937053] - mt76: mt7615: move testmode data from dev to phy (Jarod Wilson) [1937053] - mt76: mt7915: move testmode data from dev to phy (Jarod Wilson) [1937053] - mt76: testmode: move mtd part to mt76_dev (Jarod Wilson) [1937053] - mt76: testmode: introduce dbdc support (Jarod Wilson) [1937053] - mt76: mt7915: add partial add_bss_info command on testmode init (Jarod Wilson) [1937053] - mt76: mt7915: drop zero-length packet to avoid Tx hang (Jarod Wilson) [1937053] - mt76: mt7915: simplify mt7915_mcu_send_message routine (Jarod Wilson) [1937053] - mt76: mt7915: fix endianness warning in mt7915_mcu_set_radar_th (Jarod Wilson) [1937053] - mt76: mt7915: add support for flash mode (Jarod Wilson) [1937053] - mt76: mt7915: run mt7915_configure_filter holding mt76 mutex (Jarod Wilson) [1937053] - mt76: mt7915: convert comma to semicolon (Jarod Wilson) [1937053] - mt76: mt7615: convert comma to semicolon (Jarod Wilson) [1937053] - mt76: mt7615: reset token when mac_reset happens (Jarod Wilson) [1937053] - mt76: mt7915: reset token when mac_reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix MT_CIPHER_BIP_CMAC_128 setkey (Jarod Wilson) [1937053] - mt76: mt7615: add vif check in mt7615_update_vif_beacon() (Jarod Wilson) [1937053] - mt76: mt7915: add vif check in mt7915_update_vif_beacon() (Jarod Wilson) [1937053] - ath11k: add ieee80211_unregister_hw to avoid kernel crash caused by NULL pointer (Jarod Wilson) [1937053] - mac80211: pause TX while changing interface type (Jarod Wilson) [1937053] - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() (Jarod Wilson) [1937053] - cfg80211: avoid holding the RTNL when calling the driver (Jarod Wilson) [1937053] - iwl4965: do not process non-QOS frames on txq->sched_retry path (Jarod Wilson) [1937053] - mt7601u: process tx URBs with status EPROTO properly (Jarod Wilson) [1937053] - mt7601u: use ieee80211_rx_list to pass frames to the network stack as a batch (Jarod Wilson) [1937053] - rtw88: 8723de: adjust the LTR setting (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8192c-common: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl_pci: fix bool comparison in expressions (Jarod Wilson) [1937053] - mt7601u: fix kernel crash unplugging the device (Jarod Wilson) [1937053] - iwlwifi: queue: bail out on invalid freeing (Jarod Wilson) [1937053] - iwlwifi: mvm: guard against device removal in reprobe (Jarod Wilson) [1937053] - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit. (Jarod Wilson) [1937053] - iwlwifi: mvm: clear IN_D3 after wowlan status cmd (Jarod Wilson) [1937053] - iwlwifi: pcie: add rules to match Qu with Hr2 (Jarod Wilson) [1937053] - iwlwifi: mvm: invalidate IDs of internal stations at mvm start (Jarod Wilson) [1937053] - iwlwifi: mvm: fix the return type for DSM functions 1 and 2 (Jarod Wilson) [1937053] - iwlwifi: pcie: reschedule in long-running memory reads (Jarod Wilson) [1937053] - iwlwifi: pcie: use jiffies for memory read spin time limit (Jarod Wilson) [1937053] - iwlwifi: pcie: fix context info memory leak (Jarod Wilson) [1937053] - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap (Jarod Wilson) [1937053] - iwlwifi: pcie: set LTR on more devices (Jarod Wilson) [1937053] - iwlwifi: queue: don't crash if txq->entries is NULL (Jarod Wilson) [1937053] - iwlwifi: fix the NMI flow for old devices (Jarod Wilson) [1937053] - iwlwifi: pnvm: don't try to load after failures (Jarod Wilson) [1937053] - iwlwifi: pnvm: don't skip everything when not reloading (Jarod Wilson) [1937053] - iwlwifi: pcie: avoid potential PNVM leaks (Jarod Wilson) [1937053] - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() (Jarod Wilson) [1937053] - iwlwifi: mvm: skip power command when unbinding vif during CSA (Jarod Wilson) [1937053] - cfg80211: change netdev registration/unregistration semantics (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix rounding error in throughput calculation (Jarod Wilson) [1937053] - mac80211: minstrel_ht: increase stats update interval (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix max probability rate selection (Jarod Wilson) [1937053] - mac80211: minstrel_ht: improve sample rate selection (Jarod Wilson) [1937053] - mac80211: minstrel_ht: improve ampdu length estimation (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove old ewma based rate average code (Jarod Wilson) [1937053] - mac80211: remove legacy minstrel rate control (Jarod Wilson) [1937053] - mac80211: minstrel_ht: add support for OFDM rates on non-HT clients (Jarod Wilson) [1937053] - mac80211: minstrel_ht: clean up CCK code (Jarod Wilson) [1937053] - mac80211: introduce aql_enable node in debugfs (Jarod Wilson) [1937053] - cfg80211: Add phyrate conversion support for extended MCS in 60GHz band (Jarod Wilson) [1937053] - cfg80211: add VHT rate entries for MCS-10 and MCS-11 (Jarod Wilson) [1937053] - mac80211: reduce peer HE MCS/NSS to own capabilities (Jarod Wilson) [1937053] - mac80211: remove NSS number of 160MHz if not support 160MHz for HE (Jarod Wilson) [1937053] - mac80211: 160MHz with extended NSS BW in CSA (Jarod Wilson) [1937053] - mac80211: add LDPC encoding to ieee80211_parse_tx_radiotap (Jarod Wilson) [1937053] - mac80211: add rx decapsulation offload support (Jarod Wilson) [1937053] - ath10k: remove unused struct ath10k::dev_type (Jarod Wilson) [1937053] - ath11k: remove duplicate function declaration (Jarod Wilson) [1937053] - ath10k: increase rx buffer size to 2048 (Jarod Wilson) [1937053] - ath10k: sanitity check for ep connectivity (Jarod Wilson) [1937053] - mt76: mt7663s: fix rx buffer refcounting (Jarod Wilson) [1937053] - mt7601u: fix rx buffer refcounting (Jarod Wilson) [1937053] - mac80211: check if atf has been disabled in __ieee80211_schedule_txq (Jarod Wilson) [1937053] - mac80211: do not drop tx nulldata packets on encrypted links (Jarod Wilson) [1937053] - mac80211: fix encryption key selection for 802.3 xmit (Jarod Wilson) [1937053] - mac80211: fix fast-rx encryption check (Jarod Wilson) [1937053] - mac80211: fix incorrect strlen of .write in debugfs (Jarod Wilson) [1937053] - cfg80211: fix a kerneldoc markup (Jarod Wilson) [1937053] - brcmfmac: clear EAP/association status bits on linkdown events (Jarod Wilson) [1937053] - brcmfmac: Delete useless kfree code (Jarod Wilson) [1937053] - mt7601u: check the status of device in calibration (Jarod Wilson) [1937053] - mt7601u: process URBs in status EPROTO properly (Jarod Wilson) [1937053] - brcmfmac: support BCM4365E with 43666 ChipCommon chip ID (Jarod Wilson) [1937053] - mwifiex: pcie: Drop bogus __refdata annotation (Jarod Wilson) [1937053] - rtw88: Simplify bool comparison (Jarod Wilson) [1937053] - rtw88: coex: set 4 slot TDMA for BT link and WL busy (Jarod Wilson) [1937053] - rtw88: 8821c: apply CCK PD level which calculates from dynamic mechanism (Jarod Wilson) [1937053] - rtw88: reduce the log level for failure of tx report (Jarod Wilson) [1937053] - rtw88: Delete useless kfree code (Jarod Wilson) [1937053] - iwlwifi: dbg: Don't touch the tlv data (Jarod Wilson) [1937053] - mt76: Fix queue ID variable types after mcu queue split (Jarod Wilson) [1937053] - cfg80211: Save the regulatory domain with a lock (Jarod Wilson) [1937053] - cfg80211/mac80211: fix kernel-doc for SAR APIs (Jarod Wilson) [1937053] - mt76: mt7915: fix MESH ifdef block (Jarod Wilson) [1937053] - mt76: mt76s: fix NULL pointer dereference in mt76s_process_tx_queue (Jarod Wilson) [1937053] - mt76: sdio: remove wake logic in mt76s_process_tx_queue (Jarod Wilson) [1937053] - mt76: usb: remove wake logic in mt76u_status_worker (Jarod Wilson) [1937053] - ath11k: dp: clean up a variable name (Jarod Wilson) [1937053] - ath11k: pci: remove unnecessary mask in ath11k_pci_enable_ltssm() (Jarod Wilson) [1937053] - ath11k: pci: disable ASPM L0sLs before downloading firmware (Jarod Wilson) [1937053] - ath11k: qmi: try to allocate a big block of DMA memory first (Jarod Wilson) [1937053] - rtlwifi: rise completion at the last step of firmware callback (Jarod Wilson) [1937053] - mt76: mt76u: fix NULL pointer dereference in mt76u_status_worker (Jarod Wilson) [1937053] - ath10k: prevent deinitializing NAPI twice (Jarod Wilson) [1937053] - ath9k: Postpone key cache entry deletion for TXQ frames reference it (Jarod Wilson) [1937053] - ath: Modify ath_key_delete() to not need full key entry (Jarod Wilson) [1937053] - ath: Export ath_hw_keysetmac() (Jarod Wilson) [1937053] - ath9k: Clear key cache explicitly on disabling hardware (Jarod Wilson) [1937053] - ath: Use safer key clearing with key cache entries (Jarod Wilson) [1937053] - ath10k: Remove voltage regulator votes during wifi disable (Jarod Wilson) [1937053] - ath10k: Fix error handling in case of CE pipe init failure (Jarod Wilson) [1937053] - ath11k: Fix ath11k_pci_fix_l1ss() (Jarod Wilson) [1937053] - ath11k: Fix error code in ath11k_core_suspend() (Jarod Wilson) [1937053] - ath11k: start vdev if a bss peer is already created (Jarod Wilson) [1937053] - ath11k: fix crash caused by NULL rx_channel (Jarod Wilson) [1937053] - ath11k: add missing null check on allocated skb (Jarod Wilson) [1937053] - ath9k: make relay callbacks const (Jarod Wilson) [1937053] - ath11k: make relay callbacks const (Jarod Wilson) [1937053] - ath10k: make relay callbacks const (Jarod Wilson) [1937053] - ath11k: implement suspend for QCA6390 PCI devices (Jarod Wilson) [1937053] - ath11k: hif: add ce irq enable and disable functions (Jarod Wilson) [1937053] - ath11k: implement WoW enable and wakeup commands (Jarod Wilson) [1937053] - ath11k: set credit_update flag for flow controlled ep only (Jarod Wilson) [1937053] - ath11k: dp: stop rx pktlog before suspend (Jarod Wilson) [1937053] - ath11k: htc: implement suspend handling (Jarod Wilson) [1937053] - ath11k: htc: remove unused struct ath11k_htc_ops (Jarod Wilson) [1937053] - ath11k: pci: read select_window register to ensure write is finished (Jarod Wilson) [1937053] - ath11k: hif: implement suspend and resume functions (Jarod Wilson) [1937053] - ath11k: mhi: hook suspend and resume (Jarod Wilson) [1937053] - ath11k: Fix incorrect tlvs in scan start command (Jarod Wilson) [1937053] - ath11k: pci: disable VDD4BLOW (Jarod Wilson) [1937053] - ath11k: pci: fix L1ss clock unstable problem (Jarod Wilson) [1937053] - ath11k: pci: fix hot reset stability issues (Jarod Wilson) [1937053] - ath11k: put hw to DBS using WMI_PDEV_SET_HW_MODE_CMDID (Jarod Wilson) [1937053] - ath11k: mhi: print a warning if firmware crashed (Jarod Wilson) [1937053] - ath11k: use MHI provided APIs to allocate and free MHI controller (Jarod Wilson) [1937053] - ath10k: add atomic protection for device recovery (Jarod Wilson) [1937053] - ath10k: add option for chip-id based BDF selection (Jarod Wilson) [1937053] - mt76: remove unused variable q (Jarod Wilson) [1937053] - mac80211: add ieee80211_set_sar_specs (Jarod Wilson) [1937053] - nl80211: add common API to configure SAR power limitations (Jarod Wilson) [1937053] - mac80211: fix a mistake check for rx_stats update (Jarod Wilson) [1937053] - mac80211: mlme: save ssid info to ieee80211_bss_conf while assoc (Jarod Wilson) [1937053] - mac80211: Update rate control on channel change (Jarod Wilson) [1937053] - mac80211: don't filter out beacons once we start CSA (Jarod Wilson) [1937053] - mac80211: Fix calculation of minimal channel width (Jarod Wilson) [1937053] - mac80211: ignore country element TX power on 6 GHz (Jarod Wilson) [1937053] - mac80211: use bitfield helpers for BA session action frames (Jarod Wilson) [1937053] - mac80211: support Rx timestamp calculation for all preamble types (Jarod Wilson) [1937053] - mac80211: don't set set TDLS STA bandwidth wider than possible (Jarod Wilson) [1937053] - mac80211: support driver-based disconnect with reconnect hint (Jarod Wilson) [1937053] - cfg80211: support immediate reconnect request hint (Jarod Wilson) [1937053] - mac80211: use struct assignment for he_obss_pd (Jarod Wilson) [1937053] - cfg80211: remove struct ieee80211_he_bss_color (Jarod Wilson) [1937053] - nl80211: validate key indexes for cfg80211_registered_device (Jarod Wilson) [1937053] - cfg80211: include block-tx flag in channel switch started event (Jarod Wilson) [1937053] - mac80211: disallow band-switch during CSA (Jarod Wilson) [1937053] - ieee80211: update reduced neighbor report TBTT info length (Jarod Wilson) [1937053] - cfg80211: Save the regulatory domain when setting custom regulatory (Jarod Wilson) [1937053] - nl80211: always accept scan request with the duration set (Jarod Wilson) [1937053] - cfg80211: Update TSF and TSF BSSID for multi BSS (Jarod Wilson) [1937053] - cfg80211: scan PSC channels in case of scan with wildcard SSID (Jarod Wilson) [1937053] - mac80211: Skip entries with SAE H2E only membership selector (Jarod Wilson) [1937053] - cfg80211: Parse SAE H2E only membership selector (Jarod Wilson) [1937053] - mac80211: support MIC error/replay detected counters driver update (Jarod Wilson) [1937053] - mac80211: he: remove non-bss-conf fields from bss_conf (Jarod Wilson) [1937053] - mac80211: remove trailing semicolon in macro definitions (Jarod Wilson) [1937053] - nl80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mac80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - cfg80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - cfg80211: fix callback type mismatches in wext-compat (Jarod Wilson) [1937053] - net: wireless: make a const array static, makes object smaller (Jarod Wilson) [1937053] - net: mac80211: use core API for updating TX/RX stats (Jarod Wilson) [1937053] - rfkill: add a reason to the HW rfkill state (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: fix ofdm power compensation (Jarod Wilson) [1937053] - ath9k_htc: adhere to the DONT_REORDER transmit flag (Jarod Wilson) [1937053] - ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax (Jarod Wilson) [1937053] - ath11k: support TXOP duration based RTS threshold (Jarod Wilson) [1937053] - ath11k: fix incorrect wmi param for configuring HE operation (Jarod Wilson) [1937053] - ath11k: unlock on error path in ath11k_mac_op_add_interface() (Jarod Wilson) [1937053] - ath11k: fix rmmod failure if qmi sequence fails (Jarod Wilson) [1937053] - rtw88: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - rt2x00: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - ath11k: pci: add MODULE_FIRMWARE macros (Jarod Wilson) [1937053] - rtw88: reduce polling time of IQ calibration (Jarod Wilson) [1937053] - rtw88: fix multiple definition of rtw_pm_ops (Jarod Wilson) [1937053] - brcmfmac: remove redundant assignment to pointer 'entry' (Jarod Wilson) [1937053] - rtw88: declare hw supports ch 144 (Jarod Wilson) [1937053] - rtw88: coex: fix missing unitialization of variable 'interval' (Jarod Wilson) [1937053] - mwifiex: change license text of Makefile and README from MARVELL to NXP (Jarod Wilson) [1937053] - rtw88: pci: Add prototypes for .probe, .remove and .shutdown (Jarod Wilson) [1937053] - ath9k: remove trailing semicolon in macro definition (Jarod Wilson) [1937053] - ath11k: Ignore resetting peer auth flag in peer assoc cmd (Jarod Wilson) [1937053] - ath11k: add 64bit check before reading msi high addr (Jarod Wilson) [1937053] - ath10k: fix a check patch warning returnNonBoolInBooleanFunction of sdio.c (Jarod Wilson) [1937053] - mac80211: mesh: fix mesh_pathtbl_init() error path (Jarod Wilson) [1937053] - mt76: mt7615: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mt76: mt7915: fix ht mcs in mt7915_mcu_get_rx_rate() (Jarod Wilson) [1937053] - mt76: attempt to free up more room when filling the tx queue (Jarod Wilson) [1937053] - mt76: mt7915: stop queues when running out of tx tokens (Jarod Wilson) [1937053] - mt76: improve tx queue stop/wake (Jarod Wilson) [1937053] - mt76: mt7915: fix memory leak in mt7915_mcu_get_rx_rate() (Jarod Wilson) [1937053] - mt76: mt7615: fix rdd mcu cmd endianness (Jarod Wilson) [1937053] - mt76: mt7915: fix endian issues (Jarod Wilson) [1937053] - mt76: mt7915: get rid of dbdc debugfs knob (Jarod Wilson) [1937053] - mt76: mt7915: introduce dbdc support (Jarod Wilson) [1937053] - mt76: move hw mac_addr in mt76_phy (Jarod Wilson) [1937053] - mt76: move band allocation in mt76_register_phy (Jarod Wilson) [1937053] - mt76: rely on mt76_phy in mt76_init_sband_2g and mt76_init_sband_5g (Jarod Wilson) [1937053] - mt76: move band capabilities in mt76_phy (Jarod Wilson) [1937053] - mt76: move tx hw data queues in mt76_phy (Jarod Wilson) [1937053] - mt76: move mcu queues to mt76_dev q_mcu array (Jarod Wilson) [1937053] - mt76: rely on mt76_queue in tx_queue_skb_raw signature (Jarod Wilson) [1937053] - mt76: introduce mt76_init_mcu_queue utility routine (Jarod Wilson) [1937053] - mt76: rely on mt76_queue in tx_queue_skb signature (Jarod Wilson) [1937053] - mt76: dma: rely on mt76_queue in mt76_dma_tx_cleanup signature (Jarod Wilson) [1937053] - mt76: mt7663s: rely on mt76_queue in mt7663s_tx_run_queue signature (Jarod Wilson) [1937053] - mt76: sdio: rely on mt76_queue in mt76s_process_tx_queue signature (Jarod Wilson) [1937053] - mt76: sdio: introduce mt76s_alloc_tx_queue (Jarod Wilson) [1937053] - mt76: move mt76_init_tx_queue in common code (Jarod Wilson) [1937053] - mt76: mt7915: rely on eeprom definitions (Jarod Wilson) [1937053] - mt76: mt7615: refactor usb/sdio rate code (Jarod Wilson) [1937053] - mt76: mt7615: support 16 interfaces (Jarod Wilson) [1937053] - mt76: mt7915: remove unused mt7915_mcu_bss_sync_tlv() (Jarod Wilson) [1937053] - mt76: mt7915: use BIT_ULL for omac_idx (Jarod Wilson) [1937053] - mt76: mt7915: make mt7915_eeprom_read static (Jarod Wilson) [1937053] - mt76: mt7915: add support to set tx frequency offset in testmode (Jarod Wilson) [1937053] - mt76: mt7915: add support to set txpower in testmode (Jarod Wilson) [1937053] - mt76: mt7915: implement testmode rx support (Jarod Wilson) [1937053] - mt76: mt7915: implement testmode tx support (Jarod Wilson) [1937053] - mt76: testmode: add support for HE rate modes (Jarod Wilson) [1937053] - mt76: mt7915: fix tx rate related fields in tx descriptor (Jarod Wilson) [1937053] - mt76: testmode: add support for LTF and GI combinations for HE mode (Jarod Wilson) [1937053] - mt76: testmode: add tx_rate_stbc parameter (Jarod Wilson) [1937053] - mt76: testmode: add snr attribute in rx statistics (Jarod Wilson) [1937053] - mt76: testmode: switch ib and wb rssi to array type for per-antenna report (Jarod Wilson) [1937053] - mt76: mt76u: use dedicated thread for status work (Jarod Wilson) [1937053] - mt76: mt76u: rely on woker APIs for rx work (Jarod Wilson) [1937053] - mt76: mt7615: run key configuration in mt7615_set_key for usb/sdio devices (Jarod Wilson) [1937053] - mt76: fix tkip configuration for mt7615/7663 devices (Jarod Wilson) [1937053] - mt76: switch to wep sw crypto for mt7615/mt7915 (Jarod Wilson) [1937053] - mt76: mt7663s: introduce WoW support via GPIO (Jarod Wilson) [1937053] - mt76: move mt76_mcu_send_firmware in common module (Jarod Wilson) [1937053] - mt76: mt7603: add additional EEPROM chip ID (Jarod Wilson) [1937053] - mt76: fix memory leak if device probing fails (Jarod Wilson) [1937053] - mt76: mt7915: fix sparse warning cast from restricted __le16 (Jarod Wilson) [1937053] - mt76: dma: fix possible deadlock running mt76_dma_cleanup (Jarod Wilson) [1937053] - mt76: set fops_tx_stats.owner to THIS_MODULE (Jarod Wilson) [1937053] - mt76: mt7915: rename mt7915_mcu_get_rate_info to mt7915_mcu_get_tx_rate (Jarod Wilson) [1937053] - mt76: mt7915: update ppe threshold (Jarod Wilson) [1937053] - mt76: mt7915: set fops_sta_stats.owner to THIS_MODULE (Jarod Wilson) [1937053] - mt76: sdio: get rid of sched.lock (Jarod Wilson) [1937053] - mt76: mt7663s: fix a possible ple quota underflow (Jarod Wilson) [1937053] - mt76: mt7663s: get rid of mt7663s_sta_add (Jarod Wilson) [1937053] - mt76: mt7615: introduce quota debugfs node for mt7663s (Jarod Wilson) [1937053] - mt76: mt7615: enable beacon filtering by default for offload fw (Jarod Wilson) [1937053] - mt76: add back the SUPPORTS_REORDERING_BUFFER flag (Jarod Wilson) [1937053] - mt76: mt7915: query station rx rate from firmware (Jarod Wilson) [1937053] - mt76: mt7915: move eeprom parsing out of mt7915_mcu_parse_response (Jarod Wilson) [1937053] - mt76: implement functions to get the response skb for MCU calls (Jarod Wilson) [1937053] - mt76: mt7603: switch to .mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: make mcu_ops->mcu_send_msg optional (Jarod Wilson) [1937053] - mt76: move waiting and locking out of mcu_ops->mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: move mcu timeout handling to .mcu_parse_response (Jarod Wilson) [1937053] - mt76: implement .mcu_parse_response in struct mt76_mcu_ops (Jarod Wilson) [1937053] - mt76: rename __mt76_mcu_skb_send_msg to mt76_mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: rename __mt76_mcu_send_msg to mt76_mcu_send_msg (Jarod Wilson) [1937053] - mt76: mt7915: disable OFDMA/MU-MIMO UL (Jarod Wilson) [1937053] - mt76: mt7915: fix DRR sta bss group index (Jarod Wilson) [1937053] - mt76: mt7915: use napi_consume_skb to bulk-free tx skbs (Jarod Wilson) [1937053] - mt76: mt7915: fix processing txfree events (Jarod Wilson) [1937053] - mt76: mt7915: support 32 station interfaces (Jarod Wilson) [1937053] - mt76: do not set NEEDS_UNIQUE_STA_ADDR for 7615 and 7915 (Jarod Wilson) [1937053] - mt76: mt7615: add debugfs knob for setting extended local mac addresses (Jarod Wilson) [1937053] - mt76: use ieee80211_rx_list to pass frames to the network stack as a batch (Jarod Wilson) [1937053] - mt76: mt7915: add encap offload for 4-address mode stations (Jarod Wilson) [1937053] - mt76: mt7915: add 802.11 encap offload support (Jarod Wilson) [1937053] - mt76: sdio: convert {status/net}_work to mt76_worker (Jarod Wilson) [1937053] - mt76: mt7663s: disable interrupt during txrx_worker processing (Jarod Wilson) [1937053] - mt76: mt7663s: convert txrx_work to mt76_worker (Jarod Wilson) [1937053] - mt76: mt7663s: move tx/rx processing in the same txrx workqueue (Jarod Wilson) [1937053] - mt76: mt7615: retry if mt7615_mcu_init returns -EAGAIN (Jarod Wilson) [1937053] - mt76: mt7915: fix VHT LDPC capability (Jarod Wilson) [1937053] - mt76: mt7915: measure channel noise and report it via survey (Jarod Wilson) [1937053] - mac80211: set SDATA_STATE_RUNNING for monitor interfaces (Jarod Wilson) [1937053] - cfg80211: initialize rekey_data (Jarod Wilson) [1937053] - mac80211: fix return value of ieee80211_chandef_he_6ghz_oper (Jarod Wilson) [1937053] - rtw88: debug: Fix uninitialized memory in debugfs code (Jarod Wilson) [1937053] - brcmfmac: expose firmware config files through modinfo (Jarod Wilson) [1937053] - rtw88: coex: add feature to enhance HID coexistence performance (Jarod Wilson) [1937053] - rtw88: coex: upgrade coexistence A2DP mechanism (Jarod Wilson) [1937053] - rtw88: coex: add action for coexistence in hardware initial (Jarod Wilson) [1937053] - rtw88: coex: add function to avoid cck lock (Jarod Wilson) [1937053] - rtw88: coex: change the coexistence mechanism for WLAN connected (Jarod Wilson) [1937053] - rtw88: coex: change the coexistence mechanism for HID (Jarod Wilson) [1937053] - rtw88: coex: update AFH information while in free-run mode (Jarod Wilson) [1937053] - rtw88: coex: update the mechanism for A2DP + PAN (Jarod Wilson) [1937053] - rtw88: coex: add debug message (Jarod Wilson) [1937053] - rtw88: coex: run coexistence when WLAN entering/leaving LPS (Jarod Wilson) [1937053] - Revert "rtl8xxxu: Add Buffalo WI-U3-866D to list of supported devices" (Jarod Wilson) [1937053] - mt76: usb: fix crash on device removal (Jarod Wilson) [1937053] - ath11k: dp_rx: fix monitor status dma unmap direction (Jarod Wilson) [1937053] - ath10k: Constify static qmi structs (Jarod Wilson) [1937053] - ath10k: Release some resources in an error handling path (Jarod Wilson) [1937053] - ath10k: Fix an error handling path (Jarod Wilson) [1937053] - ath10k: Fix the parsing error in service available event (Jarod Wilson) [1937053] - ath11k: Fix an error handling path (Jarod Wilson) [1937053] - ath11k: Build check size of ath11k_skb_cb (Jarod Wilson) [1937053] - ath11k: Reset ath11k_skb_cb before setting new flags (Jarod Wilson) [1937053] - ath11k: Don't cast ath11k_skb_cb to ieee80211_tx_info.control (Jarod Wilson) [1937053] - ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references (Jarod Wilson) [1937053] - ath11k: peer delete synchronization with firmware (Jarod Wilson) [1937053] - ath11k: vdev delete synchronization with firmware (Jarod Wilson) [1937053] - mwifiex: Remove duplicated REG_PORT definition (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - mwifiex: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - brcmsmac: ampdu: Check BA window size before checking block ack (Jarod Wilson) [1937053] - brcmfmac: Fix incorrect type in assignment (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: remove the useless value assignment (Jarod Wilson) [1937053] - brcmfmac: fix error return code in brcmf_cfg80211_connect() (Jarod Wilson) [1937053] - rtw88: wow: print key type when failing (Jarod Wilson) [1937053] - rtw88: coex: change the decode method from firmware (Jarod Wilson) [1937053] - rtw88: coex: remove unnecessary WLAN slot extend (Jarod Wilson) [1937053] - rtw88: coex: remove write scan bit to scoreboard in scan and connect notify (Jarod Wilson) [1937053] - rtw88: coex: fix BT performance drop during initial/power-on step (Jarod Wilson) [1937053] - rtw88: coex: Change antenna setting to enhance free-run performance (Jarod Wilson) [1937053] - rtw88: coex: update the TDMA parameter when leave LPS (Jarod Wilson) [1937053] - rtw88: coex: add the mechanism for RF4CE (Jarod Wilson) [1937053] - rtw88: coex: Add force flag for coexistence table function (Jarod Wilson) [1937053] - rtw88: coex: add write scoreboard action when WLAN in critical procedure (Jarod Wilson) [1937053] - rtw88: coex: remove unnecessary feature/function (Jarod Wilson) [1937053] - rtw88: coex: update TDMA settings for different beacon interval (Jarod Wilson) [1937053] - rtw88: add CCK_PD debug log (Jarod Wilson) [1937053] - rtw88: 8723d: add cck pd seetings (Jarod Wilson) [1937053] - ath11k: Fix the rx_filter flag setting for peer rssi stats (Jarod Wilson) [1937053] - ath10k: add target IRAM recovery feature support (Jarod Wilson) [1937053] - ath11k: Fix beamformee STS in HE cap (Jarod Wilson) [1937053] - ath11k: add processor_id based ring_selector logic (Jarod Wilson) [1937053] - mac80211: free sta in sta_info_insert_finish() on errors (Jarod Wilson) [1937053] - mac80211: minstrel: fix tx status processing corner case (Jarod Wilson) [1937053] - mac80211: minstrel: remove deferred sampling code (Jarod Wilson) [1937053] - mac80211: fix memory leak on filtered powersave frames (Jarod Wilson) [1937053] - rfkill: Fix use-after-free in rfkill_resume() (Jarod Wilson) [1937053] - nl80211: fix kernel-doc warning in the new SAE attribute (Jarod Wilson) [1937053] - cfg80211: remove WDS code (Jarod Wilson) [1937053] - mac80211: remove WDS-related code (Jarod Wilson) [1937053] - rt2x00: remove WDS code (Jarod Wilson) [1937053] - b43: remove WDS code (Jarod Wilson) [1937053] - ath9k: remove WDS code (Jarod Wilson) [1937053] - rtw88: coex: simplify the setting and condition about WLAN TX limitation (Jarod Wilson) [1937053] - rtw88: coex: add debug message (Jarod Wilson) [1937053] - rtw88: coex: update WLAN 5G AFH parameter for 8822b (Jarod Wilson) [1937053] - rtw88: coex: change the parameter for A2DP when WLAN connecting (Jarod Wilson) [1937053] - rtw88: coex: modified for BT info notify (Jarod Wilson) [1937053] - rtw88: coex: add separate flag for manual control (Jarod Wilson) [1937053] - rtw88: coex: Modify the timing of set_ant_path/set_rf_para (Jarod Wilson) [1937053] - rtw88: coex: coding style adjustment (Jarod Wilson) [1937053] - rtw88: coex: reduce magic number (Jarod Wilson) [1937053] - rtw88: coex: update coex parameter to improve A2DP quality (Jarod Wilson) [1937053] - rtw88: coex: fixed some wrong register definition and setting (Jarod Wilson) [1937053] - rtlwifi: fix spelling typo of workaround (Jarod Wilson) [1937053] - mwifiex: pcie: skip cancel_work_sync() on reset failure path (Jarod Wilson) [1937053] - mwifiex: update comment for shutdown_sw()/reinit_sw() to reflect current state (Jarod Wilson) [1937053] - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure (Jarod Wilson) [1937053] - ath11k: Handle errors if peer creation fails (Jarod Wilson) [1937053] - ath9k: work around false-positive gcc warning (Jarod Wilson) [1937053] - wireless: remove CONFIG_WIRELESS_WDS (Jarod Wilson) [1937053] - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: Place braces around empty if() body (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: phy: Remove a couple of unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: Remove set but unused variable 'cck_highpwr' (Jarod Wilson) [1937053] - rtlwifi: halbtc8821a2ant: Remove a bunch of unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: Remove set but unused variable 'reg_ea4' (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: Remove set but unused variable 'lc_cal' (Jarod Wilson) [1937053] - rtlwifi: halbtc8821a1ant: Remove set but unused variable 'wifi_rssi_state' (Jarod Wilson) [1937053] - rtlwifi: phy: Remove set but unused variable 'bbvalue' (Jarod Wilson) [1937053] - rtlwifi: halbtc8723b2ant: Remove a bunch of set but unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: trx: Demote clear abuse of kernel-doc format (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: mac: Fix some missing/ill-documented function parameters (Jarod Wilson) [1937053] - rtw88: rtw8822c: Remove unused variable 'corr_val' (Jarod Wilson) [1937053] - mwifiex: pcie: Remove a couple of unchecked 'ret's (Jarod Wilson) [1937053] - wl1251: cmd: Rename 'len' to 'buf_len' in the documentation (Jarod Wilson) [1937053] - brcmfmac: fweh: Add missing description for 'gfp' (Jarod Wilson) [1937053] - brcmfmac: pcie: Provide description for missing function parameter 'devinfo' (Jarod Wilson) [1937053] - brcmfmac: bcmsdh: Fix description for function parameter 'pktlist' (Jarod Wilson) [1937053] - rt2x00: save survey for every channel visited (Jarod Wilson) [1937053] - rtlwifi: Remove in_interrupt() usage in halbtc_send_bt_mp_operation() (Jarod Wilson) [1937053] - rtlwifi: Remove in_interrupt() usage in is_any_client_connect_to_ap(). (Jarod Wilson) [1937053] - rtl8xxxu: Add Buffalo WI-U3-866D to list of supported devices (Jarod Wilson) [1937053] - rtw88: decide lps deep mode from firmware feature. (Jarod Wilson) [1937053] - rtw88: add C2H response for checking firmware leave lps (Jarod Wilson) [1937053] - rtw88: store firmware feature in firmware header (Jarod Wilson) [1937053] - rtw88: sync the power state between driver and firmware (Jarod Wilson) [1937053] - rtw88: coex: separate BLE HID profile from BLE profile (Jarod Wilson) [1937053] - rtlwifi: Fix non-canonical address access issues (Jarod Wilson) [1937053] - brcmfmac: fix SDIO access for big-endian host (Jarod Wilson) [1937053] - rtw88: remove extraneous 'const' qualifier (Jarod Wilson) [1937053] - rtlwifi: fix -Wpointer-sign warning (Jarod Wilson) [1937053] - ath11k: fix ZERO address in probe request (Jarod Wilson) [1937053] - ath9k: dynack: Demote non-compliant function header (Jarod Wilson) [1937053] - ath9k: ar5008_phy: Demote half completed function headers (Jarod Wilson) [1937053] - ath9k: ar9003_2p2_initvals: Remove unused const variables (Jarod Wilson) [1937053] - ath9k: ar9485_initvals: Remove unused const variable 'ar9485_fast_clock_1_1_baseband_postamble' (Jarod Wilson) [1937053] - ath9k: ar9340_initvals: Remove unused const variable 'ar9340Modes_ub124_tx_gain_table_1p0' (Jarod Wilson) [1937053] - ath9k: ar9330_1p1_initvals: Remove unused const variable 'ar9331_common_tx_gain_offset1_1' (Jarod Wilson) [1937053] - ath: dfs_pri_detector: Demote zero/half completed kernel-doc headers (Jarod Wilson) [1937053] - ath: dfs_pattern_detector: Fix some function kernel-doc headers (Jarod Wilson) [1937053] - ath: regd: Provide description for ath_reg_apply_ir_flags's 'reg' param (Jarod Wilson) [1937053] - ath11k: Add new dfs region name for JP (Jarod Wilson) [1937053] - ath11k: fix wmi init configuration (Jarod Wilson) [1937053] - ath11k: Fix the hal descriptor mask (Jarod Wilson) [1937053] - ath11k: Fix single phy hw mode (Jarod Wilson) [1937053] - ath11k: Fix number of rules in filtered ETSI regdomain (Jarod Wilson) [1937053] - ath11k: Remove unused param from wmi_mgmt_params (Jarod Wilson) [1937053] - ath11k: Initialize complete alpha2 for regulatory change (Jarod Wilson) [1937053] - ath11k: cold boot calibration support (Jarod Wilson) [1937053] - ath11k: search DT for qcom,ath11k-calibration-variant (Jarod Wilson) [1937053] - ath11k: Remove unnecessary data sync to cpu on monitor buffer (Jarod Wilson) [1937053] - ath10k: cancel rx worker in hif_stop for SDIO (Jarod Wilson) [1937053] - ath10k: Don't iterate over not-sdata-in-driver interfaces. (Jarod Wilson) [1937053] - ath10k: fix compilation warning (Jarod Wilson) [1937053] - mac80211: assure that certain drivers adhere to DONT_REORDER flag (Jarod Wilson) [1937053] - mac80211: don't overwrite QoS TID of injected frames (Jarod Wilson) [1937053] - mac80211: adhere to Tx control flag that prevents frame reordering (Jarod Wilson) [1937053] - mac80211: add radiotap flag to assure frames are not reordered (Jarod Wilson) [1937053] - mac80211: save HE oper info in BSS config for mesh (Jarod Wilson) [1937053] - cfg80211: add support to configure HE MCS for beacon rate (Jarod Wilson) [1937053] - nl80211: fix beacon tx rate mask validation (Jarod Wilson) [1937053] - cfg80211: Add support to calculate and report 4096-QAM HE rates (Jarod Wilson) [1937053] - cfg80211: Add support to configure SAE PWE value to drivers (Jarod Wilson) [1937053] - ieee80211: Add definition for WFA DPP (Jarod Wilson) [1937053] - mac80211: use semicolons rather than commas to separate statements (Jarod Wilson) [1937053] - ath11k: FILS discovery and unsolicited broadcast probe response support (Jarod Wilson) [1937053] - ath10k: sdio: remove redundant check in for loop (Jarod Wilson) [1937053] - mac80211: add KCOV remote annotations to incoming frame processing (Jarod Wilson) [1937053] - rtw88: fix fw_fifo_addr check (Jarod Wilson) [1937053] - mac80211: don't require VHT elements for HE on 2.4 GHz (Jarod Wilson) [1937053] - cfg80211: regulatory: Fix inconsistent format argument (Jarod Wilson) [1937053] - mac80211: fix kernel-doc markups (Jarod Wilson) [1937053] - mac80211: always wind down STA state (Jarod Wilson) [1937053] - cfg80211: initialize wdev data earlier (Jarod Wilson) [1937053] - mac80211: fix use of skb payload instead of header (Jarod Wilson) [1937053] - mac80211: fix regression where EAPOL frames were sent in plaintext (Jarod Wilson) [1937053] - ath11k: remove repeated words in comments and warnings (Jarod Wilson) [1937053] - ath10k: ath10k_pci_init_irq(): workaround for checkpatch fallthrough warning (Jarod Wilson) [1937053] - ath10k: remove repeated words in comments (Jarod Wilson) [1937053] - nl80211: docs: add a description for s1g_cap parameter (Jarod Wilson) [1937053] - mac80211: use new function dev_fetch_sw_netstats (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: remove duplicated legacy_httxpowerdiff (Jarod Wilson) [1937053] - ath11k: Fix memory leak on error path (Jarod Wilson) [1937053] - mac80211: copy configured beacon tx rate to driver (Jarod Wilson) [1937053] - cfg80211: only allow S1G channels on S1G band (Jarod Wilson) [1937053] - mac80211: initialize last_rate for S1G STAs (Jarod Wilson) [1937053] - mac80211: handle lack of sband->bitrates in rates (Jarod Wilson) [1937053] - mac80211: avoid processing non-S1G elements on S1G band (Jarod Wilson) [1937053] - nl80211: fix non-split wiphy information (Jarod Wilson) [1937053] - nl80211: reduce non-split wiphy dump size (Jarod Wilson) [1937053] - ath11k: remove unnecessary casts to u32 (Jarod Wilson) [1937053] - ath11k: enable idle power save mode (Jarod Wilson) [1937053] - ath11k: start a timer to update HP for CE pipe 4 (Jarod Wilson) [1937053] - ath11k: start a timer to update REO cmd ring (Jarod Wilson) [1937053] - ath11k: start a timer to update TCL HP (Jarod Wilson) [1937053] - ath11k: set WMI pipe credit to 1 for QCA6390 (Jarod Wilson) [1937053] - ath11k: enable shadow register configuration and access (Jarod Wilson) [1937053] - ath11k: read and write registers below unwindowed address (Jarod Wilson) [1937053] - ath11k: debugfs: fix crash during rmmod (Jarod Wilson) [1937053] - ath11k: fix warning caused by lockdep_assert_held (Jarod Wilson) [1937053] - ath11k: mac: remove unused conf_mutex to solve a deadlock (Jarod Wilson) [1937053] - ath11k: pci: fix rmmod crash (Jarod Wilson) [1937053] - ath11k: add packet log support for QCA6390 (Jarod Wilson) [1937053] - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in idr_alloc (Jarod Wilson) [1937053] - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc (Jarod Wilson) [1937053] - ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock (Jarod Wilson) [1937053] - ath11k: disable monitor mode on QCA6390 (Jarod Wilson) [1937053] - ath11k: pci: check TCSR_SOC_HW_VERSION (Jarod Wilson) [1937053] - ath11k: add interface_modes to hw_params (Jarod Wilson) [1937053] - ath11k: fix AP mode for QCA6390 (Jarod Wilson) [1937053] - ath11k: support loading ELF board files (Jarod Wilson) [1937053] - ath11k: Correctly check errors for calls to debugfs_create_dir() (Jarod Wilson) [1937053] - ath11k: mac: fix parenthesis alignment (Jarod Wilson) [1937053] - rtw88: pci: Power cycle device during shutdown (Jarod Wilson) [1937053] - brcmfmac: Fix warning message after dongle setup failed (Jarod Wilson) [1937053] - brcmfmac: Fix warning when hitting FW crash with flow control feature (Jarod Wilson) [1937053] - net: rtlwifi: Replace in_interrupt() for context detection (Jarod Wilson) [1937053] - net: rtlwifi: Remove in_interrupt() from debug macro (Jarod Wilson) [1937053] - net: rtlwifi: Remove void* casts related to delayed work (Jarod Wilson) [1937053] - net: mwifiex: Use netif_rx_any_context(). (Jarod Wilson) [1937053] - net: iwlwifi: Remove in_interrupt() from tracing macro. (Jarod Wilson) [1937053] - net: ipw2x00,iwlegacy,iwlwifi: Remove in_interrupt() from debug macros (Jarod Wilson) [1937053] - net: brcmfmac: Convey allocation mode as argument (Jarod Wilson) [1937053] - net: brcmfmac: Convey execution context via argument to brcmf_netif_rx() (Jarod Wilson) [1937053] - net: brcmfmac: Replace in_interrupt() (Jarod Wilson) [1937053] - ath11k: Move non-fatal warn logs to dbg level (Jarod Wilson) [1937053] - ath9k: Remove set but not used variable (Jarod Wilson) [1937053] - rtw88: show current regulatory in tx power table (Jarod Wilson) [1937053] - rtw88: add dump fw crash log (Jarod Wilson) [1937053] - rtw88: add dump firmware fifo support (Jarod Wilson) [1937053] - rtw88: handle and recover when firmware crash (Jarod Wilson) [1937053] - rtw88: increse the size of rx buffer size (Jarod Wilson) [1937053] - nl80211: extend support to config spatial reuse parameter set (Jarod Wilson) [1937053] - mac80211: Support not iterating over not-sdata-in-driver ifaces (Jarod Wilson) [1937053] - mac80211: fix some more kernel-doc in mesh (Jarod Wilson) [1937053] - cfg80211: regulatory: remove a bogus initialization (Jarod Wilson) [1937053] - mac80211: fix regression in sta connection monitor (Jarod Wilson) [1937053] - nl80211: include frequency offset in survey info (Jarod Wilson) [1937053] - mac80211: support S1G association (Jarod Wilson) [1937053] - mac80211: receive and process S1G beacons (Jarod Wilson) [1937053] - mac80211: avoid rate init for S1G band (Jarod Wilson) [1937053] - mac80211: handle S1G low rates (Jarod Wilson) [1937053] - mac80211: don't calculate duration for S1G (Jarod Wilson) [1937053] - mac80211: encode listen interval for S1G (Jarod Wilson) [1937053] - cfg80211: handle Association Response from S1G STA (Jarod Wilson) [1937053] - mac80211: convert S1G beacon to scan results (Jarod Wilson) [1937053] - cfg80211: parse S1G Operation element for BSS channel (Jarod Wilson) [1937053] - cfg80211: convert S1G beacon to scan results (Jarod Wilson) [1937053] - mac80211: support S1G STA capabilities (Jarod Wilson) [1937053] - nl80211: support S1G capability overrides in assoc (Jarod Wilson) [1937053] - mac80211: s1g: choose scanning width based on frequency (Jarod Wilson) [1937053] - mac80211: get correct default channel width for S1G (Jarod Wilson) [1937053] - wireless: radiotap: fix some kernel-doc (Jarod Wilson) [1937053] - mac80211: fix some missing kernel-doc (Jarod Wilson) [1937053] - mac80211: Inform AP when returning operating channel (Jarod Wilson) [1937053] - ath11k: fix undefined reference to 'ath11k_debugfs_htt_ext_stats_handler' (Jarod Wilson) [1937053] - mt76: mt7663s: remove max_tx_fragments limitation (Jarod Wilson) [1937053] - mt76: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - mt76: mt7915: add offchannel condition in switch channel command (Jarod Wilson) [1937053] - mt76: mt7915: convert to use le16_add_cpu() (Jarod Wilson) [1937053] - mt76: Fix unsigned expressions compared with zero (Jarod Wilson) [1937053] - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_beacon (Jarod Wilson) [1937053] - mt76: mt76x0: Move tables used only by init.c to their own header file (Jarod Wilson) [1937053] - mt76: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - mt76: mt7615: unlock dfs bands (Jarod Wilson) [1937053] - mt76: mt7663: check isr read return value in mt7663s_rx_work (Jarod Wilson) [1937053] - mt76: mt7663s: introduce sdio tx aggregation (Jarod Wilson) [1937053] - mt76: mt7663s: fix possible quota leak in mt7663s_refill_sched_quota (Jarod Wilson) [1937053] - mt76: move pad estimation out of mt76_skb_adjust_pad (Jarod Wilson) [1937053] - mt76: mt7663s: introduce __mt7663s_xmit_queue routine (Jarod Wilson) [1937053] - mt76: mt7663s: split mt7663s_tx_update_sched in mt7663s_tx_{pick,update}_quota (Jarod Wilson) [1937053] - mt76: mt7663s: do not use altx for ctl/mgmt traffic (Jarod Wilson) [1937053] - mt76: mt7622: fix fw hang on mt7622 (Jarod Wilson) [1937053] - mt76: mt7615: fix VHT LDPC capability (Jarod Wilson) [1937053] - mt76: mt7615: Remove set but unused variable 'index' (Jarod Wilson) [1937053] - mt76: remove retry_q from struct mt76_txq and related code (Jarod Wilson) [1937053] - mt76: move txwi handling code to dma.c, since it is mmio specific (Jarod Wilson) [1937053] - mt76: mt7915: fix queue/tid mapping for airtime reporting (Jarod Wilson) [1937053] - mt76: mt7915: simplify mt7915_lmac_mapping (Jarod Wilson) [1937053] - mt76: dma: cache dma map address/len in struct mt76_queue_entry (Jarod Wilson) [1937053] - mt76: mt7915: fix HE BSS info (Jarod Wilson) [1937053] - mt76: convert from tx tasklet to tx worker thread (Jarod Wilson) [1937053] - mt76: add utility functions for deferring work to a kernel thread (Jarod Wilson) [1937053] - mt76: testmode: add a limit for queued tx_frames packets (Jarod Wilson) [1937053] - mt76: mt7615: fix antenna selection for testmode tx_frames (Jarod Wilson) [1937053] - mt76: mt7615: fix MT_ANT_SWITCH_CON register definition (Jarod Wilson) [1937053] - mt76: mt7915: fix unexpected firmware mode (Jarod Wilson) [1937053] - mt76: mt76x02: tune tx ring size (Jarod Wilson) [1937053] - mt76: mt7603: tune tx ring size (Jarod Wilson) [1937053] - mt76: remove struct mt76_sw_queue (Jarod Wilson) [1937053] - mt76: rely on AQL for burst size limits on tx queueing (Jarod Wilson) [1937053] - mt76: remove swq from struct mt76_sw_queue (Jarod Wilson) [1937053] - mt76: remove qid argument to drv->tx_complete_skb (Jarod Wilson) [1937053] - mt76: unify queue tx cleanup code (Jarod Wilson) [1937053] - mt76: sdio: fix use of q->head and q->tail (Jarod Wilson) [1937053] - mt76: usb: fix use of q->head and q->tail (Jarod Wilson) [1937053] - mt76: mt7603: check for single-stream EEPROM configuration (Jarod Wilson) [1937053] - mt76: add memory barrier to DMA queue kick (Jarod Wilson) [1937053] - mt76: mt7915: add support for accessing mapped registers via bus ops (Jarod Wilson) [1937053] - mt76: mt7615: significantly reduce interrupt load (Jarod Wilson) [1937053] - mt76: mt7915: significantly reduce interrupt load (Jarod Wilson) [1937053] - mt76: mt7915: schedule tx tasklet in mt7915_mac_tx_free (Jarod Wilson) [1937053] - mt76: dma: update q->queued immediately on cleanup (Jarod Wilson) [1937053] - mt76: mt7915: optimize mt7915_mac_sta_poll (Jarod Wilson) [1937053] - mt76: mt7615: fix reading airtime statistics (Jarod Wilson) [1937053] - mt76: mt7663u: fix dma header initialization (Jarod Wilson) [1937053] - mt76: fix a possible NULL pointer dereference in mt76_testmode_dump (Jarod Wilson) [1937053] - mt76: mt7615: fix a possible NULL pointer dereference in mt7615_pm_wake_work (Jarod Wilson) [1937053] - mt76: mt7615: fix possible memory leak in mt7615_tm_set_tx_power (Jarod Wilson) [1937053] - mt76: mt7663s: fix unable to handle kernel paging request (Jarod Wilson) [1937053] - mt76: mt7663s: fix resume failure (Jarod Wilson) [1937053] - mt76: mt7663s: use NULL instead of 0 in sdio code (Jarod Wilson) [1937053] - mt76: mt7615: release mutex in mt7615_reset_test_set (Jarod Wilson) [1937053] - mt76: mt7915: add Tx A-MSDU offloading support (Jarod Wilson) [1937053] - mt76: mt7915: add missing flags in WMM parameter settings (Jarod Wilson) [1937053] - mt76: mt7915: simplify aggregation session check (Jarod Wilson) [1937053] - mt76: mt7615: remove mtxq->agg_ssn assignment (Jarod Wilson) [1937053] - mt76: move mt76_check_agg_ssn to driver tx_prepare calls (Jarod Wilson) [1937053] - mt76: mt7915: enable offloading of sequence number assignment (Jarod Wilson) [1937053] - mt76: mt7915: increase tx retry count (Jarod Wilson) [1937053] - mt76: mt7915: clean up station stats polling and rate control update (Jarod Wilson) [1937053] - mt76: mt7915: do not do any work in napi poll after calling napi_complete_done() (Jarod Wilson) [1937053] - mt76: mt7615: do not do any work in napi poll after calling napi_complete_done() (Jarod Wilson) [1937053] - mt76: mt76x02: clean up and fix interrupt masking in the irq handler (Jarod Wilson) [1937053] - mt76: mt7615: only clear unmasked interrupts in irq tasklet (Jarod Wilson) [1937053] - mt76: mt7915: clean up and fix interrupt masking in the irq handler (Jarod Wilson) [1937053] - mt76: set interrupt mask register to 0 before requesting irq (Jarod Wilson) [1937053] - mt76: fix double DMA unmap of the first buffer on 7615/7915 (Jarod Wilson) [1937053] - mt76: mt7915: fix crash on tx rate report for invalid stations (Jarod Wilson) [1937053] - mt76: mt7915: enable U-APSD on AP side (Jarod Wilson) [1937053] - mt76: mt76s: get rid of unused variable (Jarod Wilson) [1937053] - mt76: mt76s: move tx/rx processing in 2 separate works (Jarod Wilson) [1937053] - mt76: mt76s: move status processing in txrx wq (Jarod Wilson) [1937053] - mt76: mt7663s: move rx processing in txrx wq (Jarod Wilson) [1937053] - mt76: mt76s: move tx processing in a dedicated wq (Jarod Wilson) [1937053] - mt76: mt76s: fix oom in mt76s_tx_queue_skb_raw (Jarod Wilson) [1937053] - mt76: mt7615: reschedule runtime-pm receiving a tx interrupt (Jarod Wilson) [1937053] - mt76: do not inject packets if MT76_STATE_PM is set (Jarod Wilson) [1937053] - mt76: mt7615: hold mt76 lock queueing wd in mt7615_queue_key_update (Jarod Wilson) [1937053] - mt76: mt7663s: move drv_own/fw_own in mt7615_mcu_ops (Jarod Wilson) [1937053] - mt76: mt7615: move drv_own/fw_own in mt7615_mcu_ops (Jarod Wilson) [1937053] - mt76: mt7615: register ext_phy if DBDC is detected (Jarod Wilson) [1937053] - brcmfmac: check return value of driver_for_each_device() (Jarod Wilson) [1937053] - ath11k: Remove unused function ath11k_htc_restore_tx_skb() (Jarod Wilson) [1937053] - ath11k: remove redundant num_keep_alive_pattern assignment (Jarod Wilson) [1937053] - ath11k: wmi: remove redundant configuration values from init (Jarod Wilson) [1937053] - ath11k: Add support spectral scan for IPQ6018 (Jarod Wilson) [1937053] - ath11k: debugfs: move some function declarations to correct header files (Jarod Wilson) [1937053] - ath11k: rename debug_htt_stats.[c|h] to debugfs_htt_stats.[c|h] (Jarod Wilson) [1937053] - ath11k: debugfs: use ath11k_debugfs_ prefix (Jarod Wilson) [1937053] - ath11k: refactor debugfs code into debugfs.c (Jarod Wilson) [1937053] - ath10k: Use bdf calibration variant for snoc targets (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: Use ffs in _phy_calculate_bit_shift (Jarod Wilson) [1937053] - mt7601u: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - ath11k: Remove rproc references from common core layer (Jarod Wilson) [1937053] - ath9k: hif_usb: fix race condition between usb_get_urb() and usb_kill_anchored_urbs() (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix comparison to bool warning in phy.c (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: fix comparison to bool warning in mac.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192c: fix comparison to bool warning in phy_common.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - mac80211: fix some encapsulation offload kernel-doc (Jarod Wilson) [1937053] - cfg80211: add missing kernel-doc for S1G band capabilities (Jarod Wilson) [1937053] - mac80211: Unsolicited broadcast probe response support (Jarod Wilson) [1937053] - nl80211: Unsolicited broadcast probe response support (Jarod Wilson) [1937053] - mac80211: Add FILS discovery support (Jarod Wilson) [1937053] - nl80211: Add FILS discovery support (Jarod Wilson) [1937053] - mac80211: allow bigger A-MSDU sizes in VHT, even if HT is limited (Jarod Wilson) [1937053] - nl80211: support setting S1G channels (Jarod Wilson) [1937053] - nl80211: correctly validate S1G beacon head (Jarod Wilson) [1937053] - cfg80211: regulatory: handle S1G channels (Jarod Wilson) [1937053] - nl80211: advertise supported channel width in S1G (Jarod Wilson) [1937053] - ieee80211: redefine S1G bits with GENMASK (Jarod Wilson) [1937053] - mac80211: reorganize code to remove a forward declaration (Jarod Wilson) [1937053] - mac80211: extend ieee80211_tx_status_ext to support bulk free (Jarod Wilson) [1937053] - mac80211: support using ieee80211_tx_status_ext to free skbs without status info (Jarod Wilson) [1937053] - mac80211: unify 802.3 (offload) and 802.11 tx status codepath (Jarod Wilson) [1937053] - mac80211: optimize station connection monitor (Jarod Wilson) [1937053] - mac80211: notify the driver when a sta uses 4-address mode (Jarod Wilson) [1937053] - mac80211: swap NEED_TXPROCESSING and HW_80211_ENCAP tx flags (Jarod Wilson) [1937053] - mac80211: remove tx status call to ieee80211_sta_register_airtime (Jarod Wilson) [1937053] - mac80211: reduce duplication in tx status functions (Jarod Wilson) [1937053] - mac80211: rework tx encapsulation offload API (Jarod Wilson) [1937053] - mac80211: set info->control.hw_key for encap offload packets (Jarod Wilson) [1937053] - mac80211: skip encap offload for tx multicast/control packets (Jarod Wilson) [1937053] - mac80211: check and refresh aggregation session in encap offload tx (Jarod Wilson) [1937053] - mac80211: add missing queue/hash initialization to 802.3 xmit (Jarod Wilson) [1937053] - cfg80211: add more comments for ap_isolate in bss_parameters (Jarod Wilson) [1937053] - lib80211: Remove unused macro DRV_NAME (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in phy.c (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in trx.c (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in rf.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in trx.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in phy.c (Jarod Wilson) [1937053] - rtw88: rtw8822c: eliminate code duplication, use native swap() function (Jarod Wilson) [1937053] - brcmsmac: main: Eliminate empty brcms_c_down_del_timer() (Jarod Wilson) [1937053] - brcmsmac: phy_lcn: Remove unused variable 'lcnphy_rx_iqcomp_table_rev0' (Jarod Wilson) [1937053] - brcmsmac: phytbl_lcn: Remove unused array 'dot11lcn_gain_tbl_rev1' (Jarod Wilson) [1937053] - brcmfmac: support SAE authentication offload in AP mode (Jarod Wilson) [1937053] - brcmfmac: support 4-way handshake offloading for WPA/WPA2-PSK in AP mode (Jarod Wilson) [1937053] - ath10k: Remove unused macro ATH10K_ROC_TIMEOUT_HZ (Jarod Wilson) [1937053] - ath11k: Remove unused inline function htt_htt_stats_debug_dump() (Jarod Wilson) [1937053] - ath11k: fix link error when CONFIG_REMOTEPROC is disabled (Jarod Wilson) [1937053] - ath11k: remove calling ath11k_init_hw_params() second time (Jarod Wilson) [1937053] - ath11k: add raw mode and software crypto support (Jarod Wilson) [1937053] - ath11k: add ipq6018 support (Jarod Wilson) [1937053] - ath11k: move target ce configs to hw_params (Jarod Wilson) [1937053] - net: wireless: drop bogus CRYPTO_xxx Kconfig selects (Jarod Wilson) [1937053] - rtlwifi: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy (Jarod Wilson) [1937053] - rtl8xxxu: prevent potential memory leak (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: Delete a stray tab (Jarod Wilson) [1937053] - ath11k: Add peer max mpdu parameter in peer assoc command (Jarod Wilson) [1937053] - ath10k: Add support for chain1 regulator supply voting (Jarod Wilson) [1937053] - brcmfmac: set F2 SDIO block size to 128 bytes for BCM4329 (Jarod Wilson) [1937053] - brcmfmac: drop chip id from debug messages (Jarod Wilson) [1937053] - brcmfmac: increase F2 watermark for BCM4329 (Jarod Wilson) [1937053] - mwifiex: sdio: Fix -Wunused-const-variable warnings (Jarod Wilson) [1937053] - mwifiex: wmm: Fix -Wunused-const-variable warnings (Jarod Wilson) [1937053] - mt7601u: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtlwifi: Remove temporary definition of RT_TRACE (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - brcmsmac: phytbl_n: Remove a few unused arrays (Jarod Wilson) [1937053] - brcmsmac: phytbl_lcn: Remove unused array 'dot11lcnphytbl_rx_gain_info_rev1' (Jarod Wilson) [1937053] - brcmsmac: phy_n: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmsmac: phy_lcn: Remove a bunch of unused variables (Jarod Wilson) [1937053] - prism54: isl_ioctl: Remove unused variable 'j' (Jarod Wilson) [1937053] - rtw88: debug: Remove unused variables 'val' (Jarod Wilson) [1937053] - brcmfmac: fwsignal: Finish documenting 'brcmf_fws_mac_descriptor' (Jarod Wilson) [1937053] - brcmsmac: phy_cmn: Remove a unused variables 'vbat' and 'temp' (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix a couple of function headers (Jarod Wilson) [1937053] - brcmsmac: ampdu: Remove a couple set but unused variables (Jarod Wilson) [1937053] - mwifiex: pcie: Move tables to the only place they're used (Jarod Wilson) [1937053] - ath10k: Get rid of "per_ce_irq" hw param (Jarod Wilson) [1937053] - ath10k: Keep track of which interrupts fired, don't poll them (Jarod Wilson) [1937053] - ath10k: Add interrupt summary based CE processing (Jarod Wilson) [1937053] - rtlwifi: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtl818x_pci: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - p54: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192c: phy_common: Remove unused variable 'bbvalue' (Jarod Wilson) [1937053] - brcmfmac: fwsignal: Remove unused variable 'brcmf_fws_prio2fifo' (Jarod Wilson) [1937053] - b43: phy_ht: Remove 9 year old TODO (Jarod Wilson) [1937053] - brcmfmac: btcoex: Update 'brcmf_btcoex_state' and demote others (Jarod Wilson) [1937053] - brcmfmac: firmware: Demote seemingly unintentional kernel-doc header (Jarod Wilson) [1937053] - brcmsmac: main: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix a bunch of function docs (Jarod Wilson) [1937053] - brcmsmac: ampdu: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmfmac: p2p: Deal with set but unused variables (Jarod Wilson) [1937053] - mt7601u: phy: Fix misnaming when documented function parameter 'dac' (Jarod Wilson) [1937053] - rtlwifi: rtl8723-common: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8723be Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192se Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192-common: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: btcoexist: Replace RT_TRACE with rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: Replace RT_TRACE with rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: Start changing RT_TRACE into rtl_dbg (Jarod Wilson) [1937053] - ath10k: wmi: Use struct_size() helper in ath10k_wmi_alloc_skb() (Jarod Wilson) [1937053] - ath11k: fix missing error check on call to ath11k_pci_get_user_msi_assignment (Jarod Wilson) [1937053] - ath11k: fix spelling mistake "moniter" -> "monitor" (Jarod Wilson) [1937053] - nl80211: support SAE authentication offload in AP mode (Jarod Wilson) [1937053] - atmel: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - b43: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - brcmfmac: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rt2x00: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - b43: phy_n: Add empty braces around empty statements (Jarod Wilson) [1937053] - b43: phy_common: Demote non-conformant kerneldoc header (Jarod Wilson) [1937053] - brcmsmac: mac80211_if: Demote a few non-conformant kerneldoc headers (Jarod Wilson) [1937053] - brcmfmac: fweh: Fix docrot related function documentation issues (Jarod Wilson) [1937053] - brcmfmac: fweh: Remove set but unused variable 'err' (Jarod Wilson) [1937053] - b43: main: Add braces around empty statements (Jarod Wilson) [1937053] - atmel: Demote non-kerneldoc header to standard comment block (Jarod Wilson) [1937053] - nl80211: rename csa counter attributes countdown counters (Jarod Wilson) [1937053] - nl80211: add support for setting fixed HE rate/gi/ltf (Jarod Wilson) [1937053] - ath11k: return -ENOMEM on allocation failure (Jarod Wilson) [1937053] - ath11k: return error if firmware request fails (Jarod Wilson) [1937053] - ath9k: Do not select MAC80211_LEDS by default (Jarod Wilson) [1937053] - ath9k: ar5008_initvals: Move ar5416Bank{0,1,2,3,7} to where they are used (Jarod Wilson) [1937053] - ath9k: ar5008_initvals: Remove unused table entirely (Jarod Wilson) [1937053] - ath9k: ar9001_initvals: Remove unused array 'ar5416Bank6_9100' (Jarod Wilson) [1937053] - ath9k: ar9002_initvals: Remove unused array 'ar9280PciePhy_clkreq_off_L1_9280' (Jarod Wilson) [1937053] - ath9k_htc: Do not select MAC80211_LEDS by default (Jarod Wilson) [1937053] - rtw88: 8822c: update tx power limit tables to RF v20.1 (Jarod Wilson) [1937053] - rtw88: use read_poll_timeout_atomic() for poll loop (Jarod Wilson) [1937053] - rtw88: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtw88: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - mwifiex: don't call del_timer_sync() on uninitialized timer (Jarod Wilson) [1937053] - mwifiex: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - mwifiex: Clean up some err and dbg messages (Jarod Wilson) [1937053] - mwifiex: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - nl80211: fix PORT_AUTHORIZED wording to reflect behavior (Jarod Wilson) [1937053] - cfg80211: add helper fn for adjacent rule channels (Jarod Wilson) [1937053] - cfg80211: add helper fn for single rule channels (Jarod Wilson) [1937053] - nl80211: use NLA_POLICY_RANGE(NLA_BINARY, ...) for a few attributes (Jarod Wilson) [1937053] - nl80211: clean up code/policy a bit (Jarod Wilson) [1937053] - net: wireless: wext_compat.c: delete duplicated word (Jarod Wilson) [1937053] - net: wireless: sme.c: delete duplicated word (Jarod Wilson) [1937053] - net: wireless: scan.c: delete or fix duplicated words (Jarod Wilson) [1937053] - net: wireless: reg.c: delete duplicated words + fix punctuation (Jarod Wilson) [1937053] - net: wireless: delete duplicated word + fix grammar (Jarod Wilson) [1937053] - net: mac80211: mesh.h: delete duplicated word (Jarod Wilson) [1937053] - net: mac80211: agg-rx.c: fix duplicated words (Jarod Wilson) [1937053] - net: ath11k: constify ath11k_thermal_ops (Jarod Wilson) [1937053] - ath10k: Add new api to support reset TID config (Jarod Wilson) [1937053] - ath10k: Add new api to support TID specific configuration (Jarod Wilson) [1937053] - ath10k: Move rate mask validation function up in the file (Jarod Wilson) [1937053] - ath10k: Add wmi command support for station specific TID config (Jarod Wilson) [1937053] - ath10k: sdio: add firmware coredump support (Jarod Wilson) [1937053] - ath10k: add bus type for each layout of coredump (Jarod Wilson) [1937053] - netlink/wireless: consistently use NLA_POLICY_MIN_LEN() (Jarod Wilson) [1937053] - netlink/wireless: consistently use NLA_POLICY_EXACT_LEN() (Jarod Wilson) [1937053] - rndis_wlan: tighten check of rndis_query_oid return (Jarod Wilson) [1937053] - rtw88: fix spelling mistake: "unsupport" -> "unsupported" (Jarod Wilson) [1937053] - brcmfmac: use *ph to print small buffer (Jarod Wilson) [1937053] - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach (Jarod Wilson) [1937053] - ath11k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath10k: fix VHT NSS calculation when STBC is enabled (Jarod Wilson) [1937053] - ath10k: Register shutdown handler (Jarod Wilson) [1937053] - ath11k: reset MHI during power down and power up (Jarod Wilson) [1937053] - ath11k: use TCL_DATA_RING_0 for QCA6390 (Jarod Wilson) [1937053] - ath11k: process both lmac rings for QCA6390 (Jarod Wilson) [1937053] - ath11k: assign correct search flag and type for QCA6390 (Jarod Wilson) [1937053] - ath11k: delay vdev_start for QCA6390 (Jarod Wilson) [1937053] - ath11k: refine the phy_id check in ath11k_reg_chan_list_event (Jarod Wilson) [1937053] - ath11k: setup QCA6390 rings for both rxdmas (Jarod Wilson) [1937053] - ath11k: don't initialize rxdma1 related ring (Jarod Wilson) [1937053] - ath11k: enable DP interrupt setup for QCA6390 (Jarod Wilson) [1937053] - ath11k: dp: redefine peer_map and peer_unmap (Jarod Wilson) [1937053] - ath11k: wmi: put hardware to DBS mode (Jarod Wilson) [1937053] - ath11k: initialize wmi config based on hw_params (Jarod Wilson) [1937053] - ath11k: force single pdev only for QCA6390 (Jarod Wilson) [1937053] - ath11k: disable CE interrupt before hif start (Jarod Wilson) [1937053] - ath11k: ce: get msi_addr and msi_data before srng setup (Jarod Wilson) [1937053] - ath11k: hal: assign msi_addr and msi_data to srng (Jarod Wilson) [1937053] - ath11k: ce: remove CE_COUNT() macro (Jarod Wilson) [1937053] - ath11k: ce: remove host_ce_config_wlan macro (Jarod Wilson) [1937053] - ath11k: ce: support different CE configurations (Jarod Wilson) [1937053] - ath11k: hal: cleanup dynamic register macros (Jarod Wilson) [1937053] - ath11k: hal: create register values dynamically (Jarod Wilson) [1937053] - ath10k: move enable_pll_clk call to ath10k_core_start() (Jarod Wilson) [1937053] - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path (Jarod Wilson) [1937053] - ath10k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath9k: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support (Jarod Wilson) [1937053] - ath11k: hal: create hw_srng_config dynamically (Jarod Wilson) [1937053] - ath11k: enable internal sleep clock (Jarod Wilson) [1937053] - ath11k: fix KASAN warning of ath11k_qmi_wlanfw_wlan_cfg_send (Jarod Wilson) [1937053] - ath11k: fix memory OOB access in qmi_decode (Jarod Wilson) [1937053] - ath11k: allocate smaller chunks of memory for firmware (Jarod Wilson) [1937053] - ath11k: setup ce tasklet for control path (Jarod Wilson) [1937053] - ath11k: configure copy engine msi address in CE srng (Jarod Wilson) [1937053] - ath11k: pci: add read32() and write32() hif operations (Jarod Wilson) [1937053] - ath11k: fill appropriate QMI service instance id for QCA6390 (Jarod Wilson) [1937053] - ath11k: add board file support for PCI devices (Jarod Wilson) [1937053] - ath11k: add support for m3 firmware (Jarod Wilson) [1937053] - ath11k: use remoteproc only with AHB devices (Jarod Wilson) [1937053] - ath11k: pci: add HAL, CE and core initialisation (Jarod Wilson) [1937053] - ath11k: register MHI controller device for QCA6390 (Jarod Wilson) [1937053] - ath11k: implement ath11k_core_pre_init() (Jarod Wilson) [1937053] - ath11k: pci: add MSI config initialisation (Jarod Wilson) [1937053] - ath11k: pci: setup resources (Jarod Wilson) [1937053] - ath11k: add simple PCI client driver for QCA6390 chipset (Jarod Wilson) [1937053] - ath11k: move ring mask definitions to hw_params (Jarod Wilson) [1937053] - ath11k: add hw_params entry for QCA6390 (Jarod Wilson) [1937053] - ath11k: do not depend on ARCH_QCOM for ath11k (Jarod Wilson) [1937053] - ath10k: correct the array index from mcs index for HT mode for QCA6174 (Jarod Wilson) [1937053] - ath10k: enable supports_peer_stats_info for QCA6174 PCI devices (Jarod Wilson) [1937053] - ath10k: remove return for NL80211_STA_INFO_TX_BITRATE (Jarod Wilson) [1937053] - ath10k: add wmi service peer stat info for wmi tlv (Jarod Wilson) [1937053] - ath10k: start recovery process when payload length exceeds max htc length for sdio (Jarod Wilson) [1937053] - ath: drop unnecessary list_empty (Jarod Wilson) [1937053] - ath9k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath9k: Fix typo in function name (Jarod Wilson) [1937053] - ath9k: Replace HTTP links with HTTPS ones (Jarod Wilson) [1937053] - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() (Jarod Wilson) [1937053] - ath9k: Check the return value of pcie_capability_read_*() (Jarod Wilson) [1937053] - ath11k: remove define ATH11K_QMI_DEFAULT_CAL_FILE_NAME (Jarod Wilson) [1937053] - ath11k: don't use defines in hw_params (Jarod Wilson) [1937053] - ath11k: qmi: cleanup info messages (Jarod Wilson) [1937053] - ath11k: remove useless info messages (Jarod Wilson) [1937053] - ath11k: change ath11k_core_fetch_board_data_api_n() to use ath11k_core_create_firmware_path() (Jarod Wilson) [1937053] - ath11k: don't use defines for hw specific firmware directories (Jarod Wilson) [1937053] - ath11k: create a common function to request all firmware files (Jarod Wilson) [1937053] - ath11k: Add bdf-addr in hw_params (Jarod Wilson) [1937053] - ath11k: add hw_ops for pdev id to hw_mac mapping (Jarod Wilson) [1937053] - ath11k: define max_radios in hw_params (Jarod Wilson) [1937053] - ath11k: convert ath11k_hw_params to an array (Jarod Wilson) [1937053] - ath11k: ahb: call ath11k_core_init() before irq configuration (Jarod Wilson) [1937053] - ath10k: pci: fix memcpy size of bmi response (Jarod Wilson) [1937053] - ath11k: rename default board file (Jarod Wilson) [1937053] - ath11k: update firmware files read path (Jarod Wilson) [1937053] - ath10k: provide survey info as accumulated data (Jarod Wilson) [1937053] - ath10k: fix retry packets update in station dump (Jarod Wilson) [1937053] - ath10k: Wait until copy complete is actually done before completing (Jarod Wilson) [1937053] - mac80211_hwsim: add 6GHz channels (Jarod Wilson) [1937053] - mac80211_hwsim: indicate support for S1G (Jarod Wilson) [1937053] - mac80211_hwsim: write TSF timestamp correctly to S1G beacon (Jarod Wilson) [1937053] - mac80211_hwsim: fix typo in kernel-doc (Jarod Wilson) [1937053] - mac80211: rename csa counters to countdown counters (Jarod Wilson) [1937053] - mac80211_hwsim: report the WIPHY_FLAG_SUPPORTS_5_10_MHZ capability (Jarod Wilson) [1937053] - mac80211_hwsim: Claim support for setting Beacon frame TX legacy rate (Jarod Wilson) [1937053] - mac80211_hwsim: Advertise support for multicast RX registration (Jarod Wilson) [1937053] - mac80211_hwsim: indicate in IBSS that we have transmitted beacons (Jarod Wilson) [1937053] - mac80211_hwsim: notify wmediumd of used MAC addresses (Jarod Wilson) [1937053] - mac80211_hwsim: use GFP_ATOMIC under spin lock (Jarod Wilson) [1937053] - mac80211_hwsim: Use kstrndup() in place of kasprintf() (Jarod Wilson) [1937053] - mac80211_hwsim: add frame transmission support over virtio (Jarod Wilson) [1937053] - mac80211_hwsim: enable Beacon protection (Jarod Wilson) [1937053] - mac80211_hwsim: add power save support (Jarod Wilson) [1937053] - mac80211_hwsim: remove maximum TX power (Jarod Wilson) [1937053] - mac80211_hwsim: use DEFINE_DEBUGFS_ATTRIBUTE to define debugfs fops (Jarod Wilson) [1937053] - mac80211_hwsim: add support for OCB (Jarod Wilson) [1937053] - mac80211_hwsim: add more 5GHz channels, 5/10 MHz support (Jarod Wilson) [1937053] - mac80211_hwsim: fix incorrect dev_alloc_name failure goto (Jarod Wilson) [1937053] - mac80211_hwsim: Register support for HE meshpoint (Jarod Wilson) [1937053] - mac80211_hwsim: fill boottime_ns in netlink RX path (Jarod Wilson) [1937053] - mac80211_hwsim: Fix possible null-pointer dereferences in hwsim_dump_radio_nl() (Jarod Wilson) [1937053] - mac80211_hwsim: Extended Key ID API update (Jarod Wilson) [1937053] - mac80211_hwsim: Fix a typo in the name of function 'mac80211_hswim_he_capab()' (Jarod Wilson) [1937053] - mac80211_hwsim: Extended Key ID support (Jarod Wilson) [1937053] - mac80211_hwsim: set p2p device interface support indication (Jarod Wilson) [1937053] - mac80211_hwsim: calculate if_combination.max_interfaces (Jarod Wilson) [1937053] - mac80211_hwsim: propagate genlmsg_reply return code (Jarod Wilson) [1937053] - mac80211_hwsim: Declare support for Multi-BSSID (Jarod Wilson) [1937053] - mac80211_hwsim: Support boottime in scan results (Jarod Wilson) [1937053] - mac80211_hwsim: check that n_limits makes sense (Jarod Wilson) [1937053] - mac80211_hwsim: fix overwriting of if_combination (Jarod Wilson) [1937053] - mac80211_hwsim: fixes kernel crash during mac80211_hwsim init (Jarod Wilson) [1937053] - mac80211_hwsim: allow configurable cipher types (Jarod Wilson) [1937053] - mac80211_hwsim: allow setting iftype support (Jarod Wilson) [1937053] - mac80211_hwsim: move HWSIM_ATTR_RADIO_NAME parsing last (Jarod Wilson) [1937053] - mac80211_hwsim: fix module init error paths for netlink (Jarod Wilson) [1937053] - mac80211_hwsim: drop now unused work-queue from hwsim (Jarod Wilson) [1937053] - mac80211_hwsim: do not omit multicast announce of first added radio (Jarod Wilson) [1937053] - mac80211_hwsim: fix race in radio destruction from netlink notifier (Jarod Wilson) [1937053] - mac80211_hwsim: fix locking when iterating radios during ns exit (Jarod Wilson) [1937053] - wireless: align to draft 11ax D3.0 (Jarod Wilson) [1937053] - mac80211_hwsim: correct use of IEEE80211_VHT_CAP_RXSTBC_X (Jarod Wilson) [1937053] - mac80211_hwsim: require at least one channel (Jarod Wilson) [1937053] - mac80211_hwsim: Add support for HE (Jarod Wilson) [1937053] - net/fq_impl: do not maintain a backlog-sorted list of flows (Jarod Wilson) [1937053] - net/fq_impl: drop get_default_func, move default flow to fq_tin (Jarod Wilson) [1937053] - net/fq_impl: bulk-free packets from a flow on overmemory (Jarod Wilson) [1937053] - net/fq_impl: use skb_get_hash instead of skb_get_hash_perturb (Jarod Wilson) [1937053] - net/fq_impl: Switch to kvmalloc() for memory allocation (Jarod Wilson) [1937053] - mac80211: set NETIF_F_LLTX when using intermediate tx queues (Jarod Wilson) [1937053] - mac80211: calculate hash for fq without holding fq->lock in itxq enqueue (Jarod Wilson) [1937053] - nvme-tcp: fix misuse of __smp_processor_id with preemption enabled (Gopal Tiwari) [1964227] - powerpc/smp: Cache CPU to chip lookup (Daniel Henrique Barboza) [1934421] - Revert "powerpc/topology: Update topology_core_cpumask" (Daniel Henrique Barboza) [1934421] - powerpc/smp: Reintroduce cpu_core_mask (Daniel Henrique Barboza) [1934421] - scsi: smartpqi: Remove unused functions (Don Brace) [1952154] - scsi: smartpqi: Fix device pointer variable reference static checker issue (Don Brace) [1952154] - scsi: smartpqi: Fix blocks_per_row static checker issue (Don Brace) [1952154] - scsi: smartpqi: Update version to 2.1.8-045 (Don Brace) [1952154] - scsi: smartpqi: Add new PCI IDs (Don Brace) [1952154] - scsi: smartpqi: Correct system hangs when resuming from hibernation (Don Brace) [1952154] - scsi: smartpqi: Update enclosure identifier in sysfs (Don Brace) [1952154] - scsi: smartpqi: Add additional logging for LUN resets (Don Brace) [1952154] - scsi: smartpqi: Update SAS initiator_port_protocols and target_port_protocols (Don Brace) [1952154] - scsi: smartpqi: Add phy ID support for the physical drives (Don Brace) [1952154] - scsi: smartpqi: Convert snprintf() to scnprintf() (Don Brace) [1952154] - scsi: smartpqi: Fix driver synchronization issues (Don Brace) [1952154] - scsi: smartpqi: Update device scan operations (Don Brace) [1952154] - scsi: smartpqi: Update OFA management (Don Brace) [1952154] - scsi: smartpqi: Update RAID bypass handling (Don Brace) [1952154] - scsi: smartpqi: Update suspend/resume and shutdown (Don Brace) [1952154] - scsi: smartpqi: Synchronize device resets with mutex (Don Brace) [1952154] - scsi: smartpqi: Update soft reset management for OFA (Don Brace) [1952154] - scsi: smartpqi: Update event handler (Don Brace) [1952154] - scsi: smartpqi: Add support for wwid (Don Brace) [1952154] - scsi: smartpqi: Remove timeouts from internal cmds (Don Brace) [1952154] - scsi: smartpqi: Disable WRITE SAME for HBA NVMe disks (Don Brace) [1952154] - scsi: smartpqi: Add host level stream detection enable (Don Brace) [1952154] - scsi: smartpqi: Add stream detection (Don Brace) [1952154] - scsi: smartpqi: Align code with oob driver (Don Brace) [1952154] - scsi: smartpqi: Add support for long firmware version (Don Brace) [1952154] - scsi: smartpqi: Add support for BMIC sense feature cmd and feature bits (Don Brace) [1952154] - scsi: smartpqi: Add support for RAID1 writes (Don Brace) [1952154] - scsi: smartpqi: Add support for RAID5 and RAID6 writes (Don Brace) [1952154] - scsi: smartpqi: Refactor scatterlist code (Don Brace) [1952154] - scsi: smartpqi: Refactor aio submission code (Don Brace) [1952154] - scsi: smartpqi: Add support for new product ids (Don Brace) [1952154] - scsi: smartpqi: Correct request leakage during reset operations (Don Brace) [1952154] - scsi: smartpqi: Use host-wide tag space (Don Brace) [1952154] - smartpqi: Use fallthrough pseudo-keyword (Don Brace) [1952154] - scsi: smartpqi: Support device deletion via sysfs (Don Brace) [1952154] - scsi: smartpqi: Use scnprintf() for avoiding potential buffer overflow (Don Brace) [1952154] - smartpqi: remove ioremap_nocache and devm_ioremap_nocache (Don Brace) [1952154] - smartpqi: Use sizeof_field() macro (Don Brace) [1952154] - smartpqi: phase out dma_zalloc_coherent() (Don Brace) [1952154] - scsi: smartpqi: add support for huawei controllers (Don Brace) [1952154] - block: only update parent bi_status when bio fail (Ming Lei) [1945457] - kbuild: trace functions in subdirectories of lib/ (Joe Lawrence) [1942601] - kbuild: introduce ccflags-remove-y and asflags-remove-y (Joe Lawrence) [1942601] - redhat/configs: Add CONFIG_AMD_PMC (David Arcari) [1961755] - platform/x86: amd-pmc: put device on error paths (David Arcari) [1961755] - platform/x86: amd-pmc: Fix CONFIG_DEBUG_FS check (David Arcari) [1961755] - platform/x86: amd-pmc: Add AMD platform support for S2Idle (David Arcari) [1961755] - crypto: DRBG - switch to HMAC SHA512 DRBG as default DRBG (Vladis Dronov) [1956808] - x86/asm: Annotate movdir64b()'s dst argument with __iomem (Jerry Snitselaar) [1920747] - x86/asm: Add a missing __iomem annotation in enqcmds() (Jerry Snitselaar) [1920747]- fm10k: amend removal of MODULE_VERSION (Vladis Dronov) [1955730] - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (Mohammed Gamal) [1940927] - hv_netvsc: Add error handling while switching data path (Mohammed Gamal) [1940927] - netvsc: Update driver to use ethtool_sprintf (Mohammed Gamal) [1940927] - hv_netvsc: Add a comment clarifying batching logic (Mohammed Gamal) [1940927] - hv_netvsc: Fix validation in netvsc_linkstatus_callback() (Mohammed Gamal) [1940927] - hv_netvsc: Restrict configurations on isolated guests (Mohammed Gamal) [1940927] - hv_netvsc: Load and store the proper (NBL_HASH_INFO) per-packet info (Mohammed Gamal) [1940927] - hv_netvsc: Allocate the recv_buf buffers after NVSP_MSG1_TYPE_SEND_RECV_BUF (Mohammed Gamal) [1940927] - hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive() (Mohammed Gamal) [1940927] - hv_netvsc: Copy packets sent by Hyper-V out of the receive buffer (Mohammed Gamal) [1940927] - net/hyperv: use skb_vlan_tag_*() helpers (Mohammed Gamal) [1940927] - net/vlan: introduce skb_vlan_tag_get_cfi() helper (Mohammed Gamal) [1940927] - hv_netvsc: Add (more) validation for untrusted Hyper-V values (Mohammed Gamal) [1940927] - hv_netvsc: Process NETDEV_GOING_DOWN on VF hot remove (Mohammed Gamal) [1940927] - hv_netvsc: Wait for completion on request SWITCH_DATA_PATH (Mohammed Gamal) [1940927] - hv_netvsc: Check VF datapath when sending traffic to VF (Mohammed Gamal) [1940927] - hv_netvsc: Validate number of allocated sub-channels (Mohammed Gamal) [1940927] - hv_netvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening (Mohammed Gamal) [1940927] - hv_netvsc: Use HV_HYP_PAGE_SIZE for Hyper-V communication (Mohammed Gamal) [1940927] - scsi: fnic: Use scsi_host_busy_iter() to traverse commands (Ewan D. Milne) [1949250] - scsi: fnic: Kill 'exclude_id' argument to fnic_cleanup_io() (Ewan D. Milne) [1949250] - net: vlan: Avoid using BUG() in vlan_proto_idx() (Davide Caratti) [1964456] - sch_htb: fix null pointer dereference on a null new_q (Ivan Vecera) [1935703] - sch_htb: Fix offload cleanup in htb_destroy on htb_init failure (Ivan Vecera) [1935703] - sch_htb: Fix select_queue for non-offload mode (Ivan Vecera) [1935703] - sch_htb: Stats for offloaded HTB (Ivan Vecera) [1935703] - sch_htb: Hierarchical QoS hardware offload (Ivan Vecera) [1935703] - net: sched: Add extack to Qdisc_class_ops.delete (Ivan Vecera) [1935703] - net: sched: Add multi-queue support to sch_tree_lock (Ivan Vecera) [1935703] - capabilities: require CAP_SETFCAP to map uid 0 (Alexey Gladkov) [1961202] - locking/qrwlock: Cleanup queued_write_lock_slowpath() (Waiman Long) [1954361] - locking/rtmutex: Clean up signal handling in __rt_mutex_slowlock() (Waiman Long) [1954361] - locking/rtmutex: Restrict the trylock WARN_ON() to debug (Waiman Long) [1954361] - locking/rtmutex: Fix misleading comment in rt_mutex_postunlock() (Waiman Long) [1954361] - locking/rtmutex: Consolidate the fast/slowpath invocation (Waiman Long) [1954361] - locking/rtmutex: Make text section and inlining consistent (Waiman Long) [1954361] - locking/rtmutex: Move debug functions as inlines into common header (Waiman Long) [1954361] - locking/rtmutex: Decrapify __rt_mutex_init() (Waiman Long) [1954361] - locking/rtmutex: Remove pointless CONFIG_RT_MUTEXES=n stubs (Waiman Long) [1954361] - locking/rtmutex: Inline chainwalk depth check (Waiman Long) [1954361] - locking/rtmutex: Move rt_mutex_debug_task_free() to rtmutex.c (Waiman Long) [1954361] - locking/rtmutex: Remove empty and unused debug stubs (Waiman Long) [1954361] - locking/rtmutex: Consolidate rt_mutex_init() (Waiman Long) [1954361] - locking/rtmutex: Remove output from deadlock detector (Waiman Long) [1954361] - locking/rtmutex: Remove rtmutex deadlock tester leftovers (Waiman Long) [1954361] - locking/rtmutex: Remove rt_mutex_timed_lock() (Waiman Long) [1954361] - kernel: delete repeated words in comments (Waiman Long) [1954361] - rbtree, rtmutex: Use rb_add_cached() (Waiman Long) [1954361] - rbtree: Add generic add and find helpers (Waiman Long) [1954361] - locking/rtmutex: Remove unused rt_mutex_cmpxchg_relaxed() (Waiman Long) [1954361] - lib/rbtree: avoid generating code twice for the cached versions (Waiman Long) [1954361] - locking/rtmutex: Fix the preprocessor logic with normal #ifdef #else #endif (Waiman Long) [1954361] - kernel/futex: Explicitly document pi_lock for pi_state owner fixup (Waiman Long) [1954361] - kernel/futex: Move hb unlock out of unqueue_me_pi() (Waiman Long) [1954361] - kernel/futex: Make futex_wait_requeue_pi() only call fixup_owner() (Waiman Long) [1954361] - kernel/futex: Kill rt_mutex_next_owner() (Waiman Long) [1954361] - futex: Remove unused empty compat_exit_robust_list() (Waiman Long) [1954361] - futex: Handle transient "ownerless" rtmutex state correctly (Waiman Long) [1954361] - futex: Convert to use the preferred 'fallthrough' macro (Waiman Long) [1954361] - futex: get rid of a kernel-docs build warning (Waiman Long) [1954361] - futex: arch_futex_atomic_op_inuser() calling conventions change (Waiman Long) [1954361] - s390: Use arch_local_irq_{save,restore}() in early boot code (Waiman Long) [1954361] - lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message (Waiman Long) [1954361] - locking: Fix typos in comments (Waiman Long) [1954361] - locking/lockdep: Update the comment for __lock_release() (Waiman Long) [1954361] - lockdep: Allow tuning tracing capacity constants. (Waiman Long) [1954361] - lockdep: Address clang -Wformat warning printing for hd (Waiman Long) [1954361] - lockdep: Add lockdep lock state defines (Waiman Long) [1954361] - lockdep: Add lockdep_assert_not_held() (Waiman Long) [1954361] - lockdep: Noinstr annotate warn_bogus_irq_restore() (Waiman Long) [1954361] - locking/lockdep: Avoid unmatched unlock (Waiman Long) [1954361] - locking/rwsem: Remove empty rwsem.h (Waiman Long) [1954361] - lockdep: report broken irq restoration (Waiman Long) [1954361] - locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP (Waiman Long) [1954361] - locking/lockdep: Exclude local_lock_t from IRQ inversions (Waiman Long) [1954361] - locking/lockdep: Clean up check_redundant() a bit (Waiman Long) [1954361] - locking/lockdep: Add a skip() function to __bfs() (Waiman Long) [1954361] - locking/lockdep: Mark local_lock_t (Waiman Long) [1954361] - lockdep: Put graph lock/unlock under lock_recursion protection (Waiman Long) [1954361] - locking/rtmutex: Add missing kernel-doc markup (Waiman Long) [1954361] - lockdep: Avoid to modify chain keys in validate_chain() (Waiman Long) [1954361] - lockdep: Fix nr_unused_locks accounting (Waiman Long) [1954361] - lockdep: Optimize the memory usage of circular queue (Waiman Long) [1954361] - lockdep: Take read/write status in consideration when generate chainkey (Waiman Long) [1954361] - lockdep/selftest: Add a R-L/L-W test case specific to chain cache behavior (Waiman Long) [1954361] - lockdep: Add recursive read locks into dependency graph (Waiman Long) [1954361] - lockdep: Fix recursive read lock related safe->unsafe detection (Waiman Long) [1954361] - lockdep: Adjust check_redundant() for recursive read change (Waiman Long) [1954361] - lockdep: Support deadlock detection for recursive read locks in check_noncircular() (Waiman Long) [1954361] - lockdep: Make __bfs(.match) return bool (Waiman Long) [1954361] - lockdep: Extend __bfs() to work with multiple types of dependencies (Waiman Long) [1954361] - lockdep: Introduce lock_list::dep (Waiman Long) [1954361] - lockdep: Reduce the size of lock_list::distance (Waiman Long) [1954361] - lockdep: Make __bfs() visit every dependency until a match (Waiman Long) [1954361] - lockdep: Demagic the return value of BFS (Waiman Long) [1954361] - lockdep/Documention: Recursive read lock detection reasoning (Waiman Long) [1954361] - locking: More accurate annotations for read_lock() (Waiman Long) [1954361] - Documentation/locking/locktypes: Fix local_locks documentation (Waiman Long) [1954361] - treewide: Remove uninitialized_var() usage (Waiman Long) [1954361] - lockdep: Use this_cpu_ptr instead of get_cpu_var stats (Waiman Long) [1954361] - KVM: arm/arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST read (Gavin Shan) [1939323] - KVM: arm64: Don't advertise FEAT_SPE to guests (Gavin Shan) [1939323] - KVM: arm64: Don't print warning when trapping SPE registers (Gavin Shan) [1939323] - KVM: arm64: Fully zero the vcpu state on reset (Gavin Shan) [1939323] - KVM: arm64: Clarify vcpu reset behaviour (Gavin Shan) [1939323] - Documentation: KVM: Document KVM_GUESTDBG_USE_HW control flag for arm64 (Gavin Shan) [1939323] - KVM: arm64: Initialize VCPU mdcr_el2 before loading it (Gavin Shan) [1939323] - KVM: arm64: Handle access to TRFCR_EL1 (Gavin Shan) [1939323] - arm64: Add TRFCR_ELx definitions (Gavin Shan) [1939323] - KVM: arm64: Unify trap handlers injecting an UNDEF (Gavin Shan) [1939323] - KVM: arm64: Use find_vma_intersection() (Gavin Shan) [1939323] - KVM: arm64: Hide kvm_mmu_wp_memory_region() (Gavin Shan) [1939323] - KVM: selftests: vgic_init kvm selftests fixup (Gavin Shan) [1939323] - KVM: selftests: aarch64/vgic-v3 init sequence tests (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Expose GICR_TYPER.Last for userspace (Gavin Shan) [1939323] - kvm: arm64: vgic-v3: Introduce vgic_v3_free_redist_region() (Gavin Shan) [1939323] - KVM: arm64: Simplify argument passing to vgic_uaccess_[read|write] (Gavin Shan) [1939323] - docs: kvm: devices/arm-vgic-v3: enhance KVM_DEV_ARM_VGIC_CTRL_INIT doc (Gavin Shan) [1939323] - KVM: arm/arm64: vgic: Reset base address on kvm_vgic_dist_destroy() (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Fix error handling in vgic_v3_set_redist_base() (Gavin Shan) [1939323] - KVM: arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST_REGION read (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Fix some error codes when setting RDIST base (Gavin Shan) [1939323] - KVM: arm64: Disable guest access to trace filter controls (Gavin Shan) [1939323] - KVM: arm64: Fix CPU interface MMIO compatibility detection (Gavin Shan) [1939323] - KVM: arm64: Hide system instruction access to Trace registers (Gavin Shan) [1939323] - KVM: arm64: Fix exclusive limit for IPA size (Gavin Shan) [1939323] - KVM: arm64: Ensure I-cache isolation between vcpus of a same VM (Gavin Shan) [1939323] - KVM: arm64: nvhe: Save the SPE context early (Gavin Shan) [1939323] - KVM: arm64: Correct spelling of DBGDIDR register (Gavin Shan) [1939323] - KVM: arm64: Fix AArch32 PMUv3 capping (Gavin Shan) [1939323] - KVM: arm64: Fix missing RES1 in emulation of DBGBIDR (Gavin Shan) [1939323] - KVM: arm64: Remove spurious semicolon in reg_to_encoding() (Gavin Shan) [1939323] - KVM: arm64: Fix hyp_cpu_pm_{init,exit} __init annotation (Gavin Shan) [1939323] - KVM: arm64: Workaround firmware wrongly advertising GICv2-on-v3 compatibility (Gavin Shan) [1939323] - KVM: arm64: Rename __vgic_v3_get_ich_vtr_el2() to __vgic_v3_get_gic_config() (Gavin Shan) [1939323] - KVM: arm64: Some fixes of PV-time interface document (Gavin Shan) [1939323] - KVM: arm64: CSSELR_EL1 max is 13 (Gavin Shan) [1939323] - idr test suite: Improve reporting from idr_find_test_1 (Chris von Recklinghausen) [1946304] - idr test suite: Create anchor before launching throbber (Chris von Recklinghausen) [1946304] - idr test suite: Take RCU read lock in idr_find_test_1 (Chris von Recklinghausen) [1946304] - radix tree test suite: Register the main thread with the RCU library (Chris von Recklinghausen) [1946304] - radix tree test suite: Fix compilation (Chris von Recklinghausen) [1946304] - XArray: Add xa_limit_16b (Chris von Recklinghausen) [1946304] - XArray: Fix splitting to non-zero orders (Chris von Recklinghausen) [1946304] - XArray: Fix split documentation (Chris von Recklinghausen) [1946304] - PCI/P2PDMA: Drop double zeroing for sg_init_table() (Myron Stowe) [1955693] - PCI: Simplify bool comparisons (Myron Stowe) [1955693] - PCI: endpoint: Use "NULL" instead of "0" as a NULL pointer (Myron Stowe) [1955693] - PCI: Simplify pci_dev_reset_slot_function() (Myron Stowe) [1955693] - PCI: Update mmap-related #ifdef comments (Myron Stowe) [1955693] - PCI/LINK: Print IRQ number used by port (Myron Stowe) [1955693] - PCI/IOV: Simplify pci-pf-stub with module_pci_driver() (Myron Stowe) [1955693] - PCI: Use scnprintf(), not snprintf(), in sysfs "show" functions (Myron Stowe) [1955693] - x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled (Myron Stowe) [1955693] - PCI: Remove unnecessary header includes (Myron Stowe) [1955693] - PCI/PM: Revert "PCI/PM: Apply D2 delay as milliseconds, not microseconds" (Myron Stowe) [1955693] - PCI/PM: Remove unused PCI_PM_BUS_WAIT (Myron Stowe) [1955693] - PCI: shpchp: Remove unused 'rc' assignment (Myron Stowe) [1955693] - PCI: pciehp: Reduce noisiness on hot removal (Myron Stowe) [1955693 1812902] - PCI: rpadlpar: Use for_each_child_of_node() and for_each_node_by_name() (Myron Stowe) [1955693] - PCI: Add Kconfig options for MPS/MRRS strategy (Myron Stowe) [1955693] - PCI: Add schedule point in pci_read_config() (Myron Stowe) [1955693] - PCI/ASPM: Remove struct pcie_link_state.l1ss (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_cap (Myron Stowe) [1955693] - PCI/ASPM: Pass L1SS Capabilities value, not struct aspm_register_info (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_ctl1 (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_ctl2 (unused) (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_cap_ptr (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.latency_encoding (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.enabled (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.support (Myron Stowe) [1955693] - PCI/ASPM: Use 'parent' and 'child' for readability (Myron Stowe) [1955693] - PCI/ASPM: Move LTR path check to where it's used (Myron Stowe) [1955693] - PCI/ASPM: Move pci_clear_and_set_dword() earlier (Myron Stowe) [1955693] - PCI/ACS: Enable Translation Blocking for external devices (Myron Stowe) [1955693] - scsi: qedi: Remove redundant assignment to variable err (Nilesh Javali) [1920855] - scsi: qedi: Fix error return code of qedi_alloc_global_queues() (Nilesh Javali) [1920855] - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe (Nilesh Javali) [1920855] - scsi: qedf: Simplify bool comparison (Nilesh Javali) [1921608] - bpf, sockmap: Fix incorrect fwd_alloc accounting (Yauheni Kaliuta) [1874006] - bpf: Local storage helpers should check nullness of owner ptr passed (Yauheni Kaliuta) [1874006] - bpf, inode_storage: Put file handler if no storage was found (Yauheni Kaliuta) [1874006] - kbuild: explicitly specify the build id style (Yauheni Kaliuta) [1874006] - bpf: Reject too big ctx_size_in for raw_tp test run (Yauheni Kaliuta) [1874006] - bpf: Fix enum names for bpf_this_cpu_ptr() and bpf_per_cpu_ptr() helpers (Yauheni Kaliuta) [1874006] - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE (Jiri Benc) [1874006] - bpf: Fix tests for local_storage (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix "dubious pointer arithmetic" test (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix array access with signed variable test (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for signed 32-bit bound check bug (Yauheni Kaliuta) [1874006] - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. (Yauheni Kaliuta) [1874006] - lwt_bpf: Replace preempt_disable() with migrate_disable() (Yauheni Kaliuta) [1874006] - lwt: Disable BH too in run_lwt_bpf() (Yauheni Kaliuta) [1874006] - selftests/bpf: Drain ringbuf samples at the end of test (Yauheni Kaliuta) [1874006] - libbpf: Fix ring_buffer__poll() to return number of consumed samples (Yauheni Kaliuta) [1874006] - bpf: Add MAINTAINERS entry for BPF LSM (Yauheni Kaliuta) [1874006] - bpftool: Fix error return value in build_btf_type_table (Yauheni Kaliuta) [1874006] - fail_function: Remove a redundant mutex unlock (Yauheni Kaliuta) [1874006] - selftest/bpf: Test bpf_probe_read_user_str() strips trailing bytes after NUL (Yauheni Kaliuta) [1874006] - lib/strncpy_from_user.c: Mask out bytes after NUL terminator. (Yauheni Kaliuta) [1874006] - bpf, sockmap: Avoid failures from skb_to_sgvec when skb has frag_list (Yauheni Kaliuta) [1874006] - bpf, sockmap: Handle memory acct if skb_verdict prog redirects to self (Yauheni Kaliuta) [1874006] - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self (Yauheni Kaliuta) [1874006] - bpf, sockmap: Use truesize with sk_rmem_schedule() (Yauheni Kaliuta) [1874006] - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect (Yauheni Kaliuta) [1874006] - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix error return code in run_getsockopt_test() (Yauheni Kaliuta) [1874006] - bpf: Relax return code check for subprograms (Yauheni Kaliuta) [1874006] - tools, bpftool: Add missing close before bpftool net attach exit (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix unused attribute usage in subprogs_unused test (Yauheni Kaliuta) [1874006] - bpf: Fix unsigned 'datasec_id' compared with zero in check_pseudo_btf_id (Yauheni Kaliuta) [1874006] - bpf: Fix passing zero to PTR_ERR() in bpf_btf_printf_prepare (Yauheni Kaliuta) [1874006] - libbpf: Don't attempt to load unused subprog as an entry-point BPF program (Yauheni Kaliuta) [1874006] - bpf: Update verification logic for LSM programs (Yauheni Kaliuta) [1874006] - bpf: Zero-fill re-used per-cpu map element (Yauheni Kaliuta) [1874006] - bpf: BPF_PRELOAD depends on BPF_SYSCALL (Yauheni Kaliuta) [1874006] - libbpf: Fix possible use after free in xsk_socket__delete (Yauheni Kaliuta) [1874006] - libbpf: Fix null dereference in xsk_socket__delete (Yauheni Kaliuta) [1874006] - libbpf, hashmap: Fix undefined behavior in hash_bits (Yauheni Kaliuta) [1874006] - tools, bpftool: Remove two unused variables. (Yauheni Kaliuta) [1874006] - tools, bpftool: Avoid array index warnings. (Yauheni Kaliuta) [1874006] - bpf: Add struct bpf_redir_neigh forward declaration to BPF helper defs (Yauheni Kaliuta) [1874006] - bpf: Fix -Wshadow warnings (Yauheni Kaliuta) [1874006] - bpf, libbpf: Guard bpf inline asm from bpf_tail_call_static (Yauheni Kaliuta) [1874006] - bpf: selftest: Ensure the return value of the bpf_per_cpu_ptr() must be checked (Yauheni Kaliuta) [1874006] - bpf: selftest: Ensure the return value of bpf_skc_to helpers must be checked (Yauheni Kaliuta) [1874006] - bpf: Remove unneeded break (Yauheni Kaliuta) [1874006] - net, sockmap: Don't call bpf_prog_put() on NULL pointer (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add locking annotations to iterator (Yauheni Kaliuta) [1874006] - bpf: Fix register equivalence tracking. (Yauheni Kaliuta) [1874006] - bpf, selftests: Add three new sockmap tests for verdict only programs (Yauheni Kaliuta) [1874006] - bpf, selftests: Add option to test_sockmap to omit adding parser program (Yauheni Kaliuta) [1874006] - bpf, sockmap: Allow skipping sk_skb parser program (Yauheni Kaliuta) [1874006] - bpf, sockmap: Check skb_verdict and skb_parser programs explicitly (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add memory accounting so skbs on ingress lists are visible (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove dropped data on errors in redirect case (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove skb_set_owner_w wmem will be taken later from sendpage (Yauheni Kaliuta) [1874006] - bpf, sockmap: On receive programs try to fast track SK_PASS ingress (Yauheni Kaliuta) [1874006] - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits (Yauheni Kaliuta) [1874006] - bpf: Migrate from patchwork.ozlabs.org to patchwork.kernel.org. (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor XDP kern program maps with BTF-defined map (Yauheni Kaliuta) [1874006] - samples: bpf: Replace attach_tracepoint() to attach() in xdp_redirect_cpu (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor xdp_monitor with libbpf (Yauheni Kaliuta) [1874006] - bpf, selftests: Add test for different array inner map size (Yauheni Kaliuta) [1874006] - bpf: Allow for map-in-map with dynamic inner array map entries (Yauheni Kaliuta) [1874006] - selftests/bpf: Asm tests for the verifier regalloc tracking. (Yauheni Kaliuta) [1874006] - bpf: Fix selftest compilation on clang 11 (Yauheni Kaliuta) [1874006] - selftest/bpf: Fix profiler test using CO-RE relocation for enums (Yauheni Kaliuta) [1874006] - selftests/bpf: Add profiler test (Yauheni Kaliuta) [1874006] - bpf: Track spill/fill of bounded scalars. (Yauheni Kaliuta) [1874006] - bpf: Propagate scalar ranges through register assignments. (Yauheni Kaliuta) [1874006] - bpf: Add tcp_notsent_lowat bpf setsockopt (Yauheni Kaliuta) [1874006] - selftests/bpf: Validate libbpf's auto-sizing of LD/ST/STX instructions (Yauheni Kaliuta) [1874006] - libbpf: Allow specifying both ELF and raw BTF for CO-RE BTF override (Yauheni Kaliuta) [1874006] - libbpf: Support safe subset of load/store instruction resizing with CO-RE (Yauheni Kaliuta) [1874006] - libbpf: Skip CO-RE relocations for not loaded BPF programs (Yauheni Kaliuta) [1874006] - libbpf: Fix compatibility problem in xsk_socket__create (Yauheni Kaliuta) [1874006] - bpf: Fix typo in uapi/linux/bpf.h (Yauheni Kaliuta) [1874006] - bpf: Fix build failure for kernel/trace/bpf_trace.c with CONFIG_NET=n (Yauheni Kaliuta) [1874006] - kernel/bpf/verifier: Fix build when NET is not enabled (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_verifier after introducing resolve_pseudo_ldimm64 (Yauheni Kaliuta) [1874006] - samples: bpf: Driver interrupt statistics in xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Count syscalls in xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Split xdpsock stats into new struct (Yauheni Kaliuta) [1874006] - samples/bpf: Fix a compilation error with fallthrough marking (Yauheni Kaliuta) [1874006] - samples/bpf: Change Makefile to cope with latest llvm (Yauheni Kaliuta) [1874006] - bpf, libbpf: Use valid btf in bpf_program__set_attach_target (Yauheni Kaliuta) [1874006] - selftest/bpf: Test pinning map with reused map fd (Yauheni Kaliuta) [1874006] - libbpf: Check if pin_path was set even map fd exist (Yauheni Kaliuta) [1874006] - libbpf: Close map fd if init map slots failed (Yauheni Kaliuta) [1874006] - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI (Yauheni Kaliuta) [1874006] - bpf, verifier: Use fallthrough pseudo-keyword (Yauheni Kaliuta) [1874006] - bpf: Deref map in BPF_PROG_BIND_MAP when it's already used (Yauheni Kaliuta) [1874006] - bpf, sockmap: Update selftests to use skb_adjust_room (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add skb_adjust_room to pop bytes off ingress payload (Yauheni Kaliuta) [1874006] - bpf/selftests: Test for bpf_per_cpu_ptr() and bpf_this_cpu_ptr() (Yauheni Kaliuta) [1874006] - bpf: Introducte bpf_this_cpu_ptr() (Yauheni Kaliuta) [1874006] - bpf: Introduce bpf_per_cpu_ptr() (Yauheni Kaliuta) [1874006] - selftests/bpf: Ksyms_btf to test typed ksyms (Yauheni Kaliuta) [1874006] - bpf/libbpf: BTF support for typed ksyms (Yauheni Kaliuta) [1874006] - bpf: Introduce pseudo_btf_id (Yauheni Kaliuta) [1874006] - selftests/bpf: Properly initialize linfo in sockmap_basic (Yauheni Kaliuta) [1874006] - selftests/bpf: Initialize duration in xdp_noinline.c (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tests for BPF_F_PRESERVE_ELEMS (Yauheni Kaliuta) [1874006] - bpf: Introduce BPF_F_PRESERVE_ELEMS for perf event array (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix alignment of .BTF_ids (Yauheni Kaliuta) [1874006] - selftests/bpf: Test "incremental" btf_dump in C format (Yauheni Kaliuta) [1874006] - libbpf: Make btf_dump work with modifiable BTF (Yauheni Kaliuta) [1874006] - bpf, selftests: Use bpf_tail_call_static where appropriate (Yauheni Kaliuta) [1874006] - bpf, libbpf: Add bpf_tail_call_static helper for bpf programs (Yauheni Kaliuta) [1874006] - bpf, net: Rework cookie generator as per-cpu one (Yauheni Kaliuta) [1874006] - bpf: Add classid helper only based on skb->sk (Yauheni Kaliuta) [1874006] - bpf: fix raw_tp test run in preempt kernel (Yauheni Kaliuta) [1874006] - libbpf: Compile in PIC mode only for shared library case (Yauheni Kaliuta) [1874006] - libbpf: Compile libbpf under -O2 level by default and catch extra warnings (Yauheni Kaliuta) [1874006] - bpf: x64: Do not emit sub/add 0, rsp when !stack_depth (Yauheni Kaliuta) [1874006] - bpf, x64: Drop "pop rcx" instruction on BPF JIT epilogue (Yauheni Kaliuta) [1874006] - bpf, selftests: Fix warning in snprintf_btf where system() call unchecked (Yauheni Kaliuta) [1874006] - selftests/bpf: Test BTF's handling of endianness (Yauheni Kaliuta) [1874006] - selftests/bpf: Move and extend ASSERT_xxx() testing macros (Yauheni Kaliuta) [1874006] - selftests: Make sure all 'skel' variables are declared static (Yauheni Kaliuta) [1874006] - selftests/bpf_iter: Don't fail test due to missing __builtin_btf_type_id (Yauheni Kaliuta) [1874006] - bpf/preload: Make sure Makefile cleans up after itself, and add .gitignore (Yauheni Kaliuta) [1874006] - selftests/bpf: Ensure snprintf_btf/bpf_iter tests compatibility with old vmlinux.h (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix unused-result warning in snprintf_btf.c (Yauheni Kaliuta) [1874006] - bpf, selftests: Fix cast to smaller integer type 'int' warning in raw_tp (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for bpf_seq_printf_btf helper (Yauheni Kaliuta) [1874006] - bpf: Add bpf_seq_printf_btf helper (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix overflow tests to reflect iter size increase (Yauheni Kaliuta) [1874006] - bpf: Bump iter seq size to support BTF representation of large data structures (Yauheni Kaliuta) [1874006] - selftests/bpf: Add bpf_snprintf_btf helper tests (Yauheni Kaliuta) [1874006] - bpf: Add bpf_snprintf_btf helper (Yauheni Kaliuta) [1874006] - bpf: Move to generic BTF show support, apply it to seq files/strings (Yauheni Kaliuta) [1874006] - bpf: Provide function to get vmlinux BTF information (Yauheni Kaliuta) [1874006] - selftest: bpf: Test copying a sockmap and sockhash (Yauheni Kaliuta) [1874006] - selftests: bpf: Remove shared header from sockmap iter test (Yauheni Kaliuta) [1874006] - selftests: bpf: Add helper to compare socket cookies (Yauheni Kaliuta) [1874006] - bpf: sockmap: Enable map_update_elem from bpf_iter (Yauheni Kaliuta) [1874006] - bpf, cpumap: Remove rcpu pointer from cpu_map_build_skb signature (Yauheni Kaliuta) [1874006] - selftests/bpf: Add raw_tp_test_run (Yauheni Kaliuta) [1874006] - libbpf: Support test run of raw tracepoint programs (Yauheni Kaliuta) [1874006] - bpf: Enable BPF_PROG_TEST_RUN for raw_tracepoint (Yauheni Kaliuta) [1874006] - bpf: Add comment to document BTF type PTR_TO_BTF_ID_OR_NULL (Yauheni Kaliuta) [1874006] - bpf: Add AND verifier test case where 32bit and 64bit bounds differ (Yauheni Kaliuta) [1874006] - bpf, verifier: Remove redundant var_off.value ops in scalar known reg cases (Yauheni Kaliuta) [1874006] - bpf: selftest: Add test_btf_skc_cls_ingress (Yauheni Kaliuta) [1874006] - bpf: selftest: Remove enum tcp_ca_state from bpf_tcp_helpers.h (Yauheni Kaliuta) [1874006] - bpf: selftest: Use bpf_skc_to_tcp_sock() in the sock_fields test (Yauheni Kaliuta) [1874006] - bpf: selftest: Use network_helpers in the sock_fields test (Yauheni Kaliuta) [1874006] - bpf: selftest: Adapt sock_fields test to use skel and global variables (Yauheni Kaliuta) [1874006] - bpf: selftest: Move sock_fields test into test_progs (Yauheni Kaliuta) [1874006] - bpf: selftest: Add ref_tracking verifier test for bpf_skc casting (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_assign to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_tcp_*_syncookie to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_storage_*() to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_release and bpf_sk_*cgroup_id to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Enable bpf_skc_to_* sock casting helper to networking prog type (Yauheni Kaliuta) [1874006] - bpf: Move the PTR_TO_BTF_ID check to check_reg_type() (Yauheni Kaliuta) [1874006] - Revert "bpf: Fix potential call bpf_link_free() in atomic context" (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Always force HOSTARCH (Yauheni Kaliuta) [1874006] - bpf: Check CONFIG_BPF option for resolve_btfids (Yauheni Kaliuta) [1874006] - bpf: Explicitly size compatible_reg_types (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix stat probe in d_path test (Yauheni Kaliuta) [1874006] - bpf: Using rcu_read_lock for bpf_sk_storage_map iterator (Yauheni Kaliuta) [1874006] - bpf: Use a table to drive helper arg type checks (Yauheni Kaliuta) [1874006] - bpf: Hoist type checking for nullable arg types (Yauheni Kaliuta) [1874006] - bpf: Check ARG_PTR_TO_SPINLOCK register type in check_func_arg (Yauheni Kaliuta) [1874006] - bpf: Set meta->raw_mode for pointers close to use (Yauheni Kaliuta) [1874006] - bpf: Make context access check generic (Yauheni Kaliuta) [1874006] - bpf: Make reference tracking generic (Yauheni Kaliuta) [1874006] - bpf: Make BTF pointer type checking generic (Yauheni Kaliuta) [1874006] - bpf: Allow specifying a BTF ID per argument in function protos (Yauheni Kaliuta) [1874006] - btf: Add BTF_ID_LIST_SINGLE macro (Yauheni Kaliuta) [1874006] - bpf: Check scalar or invalid register in check_helper_mem_access (Yauheni Kaliuta) [1874006] - btf: Make btf_set_contains take a const pointer (Yauheni Kaliuta) [1874006] - bpf: Fix potential call bpf_link_free() in atomic context (Yauheni Kaliuta) [1874006] - bpf: Use hlist_add_head_rcu when linking to local_storage (Yauheni Kaliuta) [1874006] - samples/bpf: Fix test_map_in_map on s390 (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix endianness issue in test_sockopt_sk (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix endianness issue in sk_assign (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tailcall_bpf2bpf tests (Yauheni Kaliuta) [1874006] - bpf: Add abnormal return checks. (Yauheni Kaliuta) [1874006] - bpf: allow for tailcalls in BPF subprograms for x64 JIT (Yauheni Kaliuta) [1874006] - bpf, x64: rework pro/epilogue and tailcall handling in JIT (Yauheni Kaliuta) [1874006] - bpf: Limit caller's stack depth 256 for subprogs with tailcalls (Yauheni Kaliuta) [1874006] - bpf: rename poke descriptor's 'ip' member to 'tailcall_target' (Yauheni Kaliuta) [1874006] - bpf: propagate poke descriptors to subprograms (Yauheni Kaliuta) [1874006] - bpf, x64: use rcx instead of rax for tail call retpolines (Yauheni Kaliuta) [1874006] - selftests/bpf: Merge most of test_btf into test_progs (Yauheni Kaliuta) [1874006] - selftests/bpf: Test load and dump metadata with btftool and skel (Yauheni Kaliuta) [1874006] - bpftool: Support dumping metadata (Yauheni Kaliuta) [1874006] - libbpf: Add BPF_PROG_BIND_MAP syscall and use it on .rodata section (Yauheni Kaliuta) [1874006] - bpf: Add BPF_PROG_BIND_MAP syscall (Yauheni Kaliuta) [1874006] - bpf: Mutex protect used_maps array and count (Yauheni Kaliuta) [1874006] - libbpf: Fix a compilation error with xsk.c for ubuntu 16.04 (Yauheni Kaliuta) [1874006] - samples/bpf: Add quiet option to xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Add an option for printing extra statistics in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Fix possible deadlock in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Fix one packet sending in xdpsock (Yauheni Kaliuta) [1874006] - s390/bpf: Fix multiple tail calls (Yauheni Kaliuta) [1874006] - tcp: Simplify tcp_set_congestion_control() load=false case (Yauheni Kaliuta) [1874006] - tcp: simplify _bpf_setsockopt(): Remove flags argument (Yauheni Kaliuta) [1874006] - tcp: simplify tcp_set_congestion_control(): Always reinitialize (Yauheni Kaliuta) [1874006] - tcp: Simplify EBPF TCP_CONGESTION to always init CC (Yauheni Kaliuta) [1874006] - bpftool: Fix build failure (Yauheni Kaliuta) [1874006] - tools: bpftool: Automate generation for "SEE ALSO" sections in man pages (Yauheni Kaliuta) [1874006] - bpf: Fix comment for helper bpf_current_task_under_cgroup() (Yauheni Kaliuta) [1874006] - selftests/bpf: Define string const as global for test_sysctl_prog.c (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_ksyms on non-SMP kernels (Yauheni Kaliuta) [1874006] - tools: bpftool: Add "inner_map" to "bpftool map create" outer maps (Yauheni Kaliuta) [1874006] - tools: bpftool: Keep errors for map-of-map dumps if distinct from ENOENT (Yauheni Kaliuta) [1874006] - tools: bpftool: Clean up function to dump map entry (Yauheni Kaliuta) [1874006] - selftests: bpf: Test iterating a sockmap (Yauheni Kaliuta) [1874006] - net: Allow iterating sockmap and sockhash (Yauheni Kaliuta) [1874006] - net: sockmap: Remove unnecessary sk_fullsock checks (Yauheni Kaliuta) [1874006] - tools: bpftool: Include common options from separate file (Yauheni Kaliuta) [1874006] - tools: bpftool: Print optional built-in features along with version (Yauheni Kaliuta) [1874006] - selftests, bpftool: Add bpftool (and eBPF helpers) documentation build (Yauheni Kaliuta) [1874006] - tools: bpftool: Log info-level messages when building bpftool man pages (Yauheni Kaliuta) [1874006] - bpf: Remove duplicate headers (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for map_ptr arithmetic (Yauheni Kaliuta) [1874006] - bpf: Permit map_ptr arithmetic with opcode add and offset 0 (Yauheni Kaliuta) [1874006] - tools, bpf: Synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1874006] - bpf: Fix formatting in documentation for BPF helpers (Yauheni Kaliuta) [1874006] - tools: bpftool: Fix formatting in bpftool-link documentation (Yauheni Kaliuta) [1874006] - samples, bpf: Add xsk_fwd test file to .gitignore (Yauheni Kaliuta) [1874006] - samples, bpf: Replace bpf_program__title() with bpf_program__section_name() (Yauheni Kaliuta) [1874006] - libbpf: Fix potential multiplication overflow (Yauheni Kaliuta) [1874006] - libbpf: Fix another __u64 cast in printf (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix check in global_data_init. (Yauheni Kaliuta) [1874006] - selftests/bpf: Add __noinline variant of cls_redirect selftest (Yauheni Kaliuta) [1874006] - selftests/bpf: Modernize xdp_noinline test w/ skeleton and __noinline (Yauheni Kaliuta) [1874006] - selftests/bpf: Add subprogs to pyperf, strobemeta, and l4lb_noinline tests (Yauheni Kaliuta) [1874006] - tools/bpftool: Replace bpf_program__title() with bpf_program__section_name() (Yauheni Kaliuta) [1874006] - selftests/bpf: Don't use deprecated libbpf APIs (Yauheni Kaliuta) [1874006] - libbpf: Deprecate notion of BPF program "title" in favor of "section name" (Yauheni Kaliuta) [1874006] - selftests/bpf: Add selftest for multi-prog sections and bpf-to-bpf calls (Yauheni Kaliuta) [1874006] - libbpf: Add multi-prog section support for struct_ops (Yauheni Kaliuta) [1874006] - libbpf: Implement generalized .BTF.ext func/line info adjustment (Yauheni Kaliuta) [1874006] - libbpf: Make RELO_CALL work for multi-prog sections and sub-program calls (Yauheni Kaliuta) [1874006] - libbpf: Support CO-RE relocations for multi-prog sections (Yauheni Kaliuta) [1874006] - libbpf: Parse multi-function sections into multiple BPF programs (Yauheni Kaliuta) [1874006] - libbpf: Ensure ELF symbols table is found before further ELF processing (Yauheni Kaliuta) [1874006] - selftests/bpf: Test task_file iterator without visiting pthreads (Yauheni Kaliuta) [1874006] - bpf: Avoid iterating duplicated files for task_file iterator (Yauheni Kaliuta) [1874006] - bpf: {cpu,dev}map: Change various functions return type from int to void (Yauheni Kaliuta) [1874006] - module: Fix up module_notifier return values (Yauheni Kaliuta) [1874006] - bpf: Remove bpf_lsm_file_mprotect from sleepable list. (Yauheni Kaliuta) [1874006] - samples/bpf: Fix to xdpsock to avoid recycling frames (Yauheni Kaliuta) [1874006] - samples/bpf: Optimize l2fwd performance in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Add new sample xsk_fwd.c (Yauheni Kaliuta) [1874006] - libbpf: Support shared umems between queues and devices (Yauheni Kaliuta) [1874006] - selftests/bpf: Add sleepable tests (Yauheni Kaliuta) [1874006] - libbpf: Support sleepable progs (Yauheni Kaliuta) [1874006] - bpf: Add bpf_copy_from_user() helper. (Yauheni Kaliuta) [1874006] - bpf: Fix build without BPF_LSM. (Yauheni Kaliuta) [1874006] - bpf: Introduce sleepable BPF programs (Yauheni Kaliuta) [1874006] - mm/error_inject: Fix allow_error_inject function signatures. (Yauheni Kaliuta) [1874006] - mm/filemap.c: enable error injection at add_to_page_cache() (Yauheni Kaliuta) [1874006] - mm/page_alloc.c: allow error injection (Yauheni Kaliuta) [1874006] - bpf: selftests: Add test for different inner map size (Yauheni Kaliuta) [1874006] - bpf: Relax max_entries check for most of the inner map types (Yauheni Kaliuta) [1874006] - bpf: Add map_meta_equal map ops (Yauheni Kaliuta) [1874006] - bpf: Make bpf_link_info.iter similar to bpf_iter_link_info (Yauheni Kaliuta) [1874006] - tools, bpf/build: Cleanup feature files on make clean (Yauheni Kaliuta) [1874006] - libbpf: Fix compilation warnings for 64-bit printf args (Yauheni Kaliuta) [1874006] - selftests/bpf: Add verifier tests for xor operation (Yauheni Kaliuta) [1874006] - libbpf: Fix unintentional success return code in bpf_object__load (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix spelling mistake "scoket" -> "socket" (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix open call in trigger_fstat_events (Yauheni Kaliuta) [1874006] - selftests/bpf: Add set test to resolve_btfids (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for d_path helper (Yauheni Kaliuta) [1874006] - selftests/bpf: Add verifier test for d_path helper (Yauheni Kaliuta) [1874006] - bpf: Update .BTF_ids section in btf.rst with sets info (Yauheni Kaliuta) [1874006] - bpf: Add d_path helper (Yauheni Kaliuta) [1874006] - bpf: Add BTF_SET_START/END macros (Yauheni Kaliuta) [1874006] - bpf: Add btf_struct_ids_match function (Yauheni Kaliuta) [1874006] - bpf: Factor btf_struct_access function (Yauheni Kaliuta) [1874006] - bpf: Remove recursion call in btf_struct_access (Yauheni Kaliuta) [1874006] - bpf: Add type_id pointer as argument to __btf_resolve_size (Yauheni Kaliuta) [1874006] - bpf: Add elem_id pointer as argument to __btf_resolve_size (Yauheni Kaliuta) [1874006] - bpf: Move btf_resolve_size into __btf_resolve_size (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Add support for set symbols (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Add size check to get_id function (Yauheni Kaliuta) [1874006] - bpf: Disallow BPF_PRELOAD in allmodconfig builds (Yauheni Kaliuta) [1874006] - bpf: Add selftests for local_storage (Yauheni Kaliuta) [1874006] - bpf: Allow local storage to be used from LSM programs (Yauheni Kaliuta) [1874006] - bpf: Implement bpf_local_storage for inodes (Yauheni Kaliuta) [1874006] - bpf: Split bpf_local_storage to bpf_sk_storage (Yauheni Kaliuta) [1874006] - bpf: Generalize bpf_sk_storage (Yauheni Kaliuta) [1874006] - bpf: Generalize caching for sk_storage. (Yauheni Kaliuta) [1874006] - bpf: Renames in preparation for bpf_local_storage (Yauheni Kaliuta) [1874006] - selftests/bpf: Enable tc verbose mode for test_sk_assign (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor tracepoint tracing programs with libbpf (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor kprobe tracing programs with libbpf (Yauheni Kaliuta) [1874006] - selftests: bpf: Fix sockmap update nits (Yauheni Kaliuta) [1874006] - libbpf: Fix type compatibility check copy-paste error (Yauheni Kaliuta) [1874006] - libbpf: Avoid false unuinitialized variable warning in bpf_core_apply_relo (Yauheni Kaliuta) [1874006] - bpf: sk_lookup: Add user documentation (Yauheni Kaliuta) [1874006] - docs: Correct subject prefix and update LLVM info (Yauheni Kaliuta) [1874006] - libbpf: Normalize and improve logging across few functions (Yauheni Kaliuta) [1874006] - libbpf: Skip well-known ELF sections when iterating ELF (Yauheni Kaliuta) [1874006] - libbpf: Add __noinline macro to bpf_helpers.h (Yauheni Kaliuta) [1874006] - libbpf: Factor out common ELF operations and improve logging (Yauheni Kaliuta) [1874006] - libbpf: Add perf_buffer APIs for better integration with outside epoll loop (Yauheni Kaliuta) [1874006] - bpftool: Implement link_query for bpf iterators (Yauheni Kaliuta) [1874006] - bpf: Implement link_query callbacks in map element iterators (Yauheni Kaliuta) [1874006] - bpf: Implement link_query for bpf iterators (Yauheni Kaliuta) [1874006] - selftests/bpf: List newest Clang built-ins needed for some CO-RE selftests (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix two minor compilation warnings reported by GCC 4.9 (Yauheni Kaliuta) [1874006] - libbpf: Fix libbpf build on compilers missing __builtin_mul_overflow (Yauheni Kaliuta) [1874006] - libbpf: Fix detection of BPF helper call instruction (Yauheni Kaliuta) [1874006] - selftests/bpf: Add bpffs preload test. (Yauheni Kaliuta) [1874006] - bpf: Add kernel module with user mode driver that populates bpffs. (Yauheni Kaliuta) [1874006] - bpf: Add BPF program and map iterators as built-in BPF programs. (Yauheni Kaliuta) [1874006] - bpf: Factor out bpf_link_by_id() helper. (Yauheni Kaliuta) [1874006] - libbpf: Simplify the return expression of build_map_pin_path() (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tests for ENUMVAL_EXISTS/ENUMVAL_VALUE relocations (Yauheni Kaliuta) [1874006] - libbpf: Implement enum value-based CO-RE relocations (Yauheni Kaliuta) [1874006] - selftests/bpf: Add CO-RE relo test for TYPE_ID_LOCAL/TYPE_ID_TARGET (Yauheni Kaliuta) [1874006] - selftests/bpf: Test TYPE_EXISTS and TYPE_SIZE CO-RE relocations (Yauheni Kaliuta) [1874006] - libbpf: Implement type-based CO-RE relocations support (Yauheni Kaliuta) [1874006] - libbpf: Centralize poisoning and poison reallocarray() (Yauheni Kaliuta) [1874006] - tools/bpftool: Remove libbpf_internal.h usage in bpftool (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test validating failure on ambiguous relocation value (Yauheni Kaliuta) [1874006] - libbpf: Improve relocation ambiguity detection (Yauheni Kaliuta) [1874006] - libbpf: Detect minimal BTF support and skip BTF loading, if missing (Yauheni Kaliuta) [1874006] - libbpf: Sanitize BPF program code for bpf_probe_read_{kernel, user}[_str] (Yauheni Kaliuta) [1874006] - libbpf: Factor out common logic of testing and closing FD (Yauheni Kaliuta) [1874006] - libbpf: Make kernel feature probing lazy (Yauheni Kaliuta) [1874006] - libbpf: Disable -Wswitch-enum compiler warning (Yauheni Kaliuta) [1874006] - libbpf: Convert comma to semicolon (Yauheni Kaliuta) [1874006] - samples: bpf: Fix broken bpf programs due to removed symbol (Yauheni Kaliuta) [1874006] - bpf: Replace GPLv2 boilerplate/reference with SPDX - rule 206 (Jiri Benc) [1874006] - LSM: Make some functions static (Yauheni Kaliuta) [1874006] - LSM: Make lsm_early_cred() and lsm_early_task() local functions. (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the ipc security blob (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the task security (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the inode security (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the file security (Yauheni Kaliuta) [1874006] - Infrastructure management of the cred security blob (Yauheni Kaliuta) [1874006] - kernel: move CONFIG_TASKS_TRACE_RCU fields to task_struct_rh (Jiri Benc) [1874006] - kernel: store pointer to task_struct in task_struct_rh (Jiri Benc) [1874006]- igb: Add double-check MTA_REGISTER for i210 and i211 (Corinna Vinschen) [1920286] - igb: Redistribute memory for transmit packet buffers when in Qav mode (Corinna Vinschen) [1920286] - igb: Fix fall-through warnings for Clang (Corinna Vinschen) [1920286] - intel: clean up mismatched header comments (Corinna Vinschen) [1920286] - igb: check timestamp validity (Corinna Vinschen) [1920286] - igb: Fix duplicate include guard (Corinna Vinschen) [1920286] - intel: Update drivers to use ethtool_sprintf (Corinna Vinschen) [1920286] - net: ethernet: intel: igb: Typo fix in the file igb_main.c (Corinna Vinschen) [1920286] - igb: avoid premature Rx buffer reuse (Corinna Vinschen) [1920286] - igb: remove h from printk format specifier (Corinna Vinschen) [1920286] - igb: Enable RSS for Intel I211 Ethernet Controller (Corinna Vinschen) [1920286] - igb: fix TDBAL register show incorrect value (Corinna Vinschen) [1920286] - net: igb: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920286] - igb: avoid transmit queue timeout in xdp path (Corinna Vinschen) [1920286] - igb: use xdp_do_flush (Corinna Vinschen) [1920286] - igb: skb add metasize for xdp (Corinna Vinschen) [1920286] - igb: XDP extack message on error (Corinna Vinschen) [1920286] - igb: take VLAN double header into account (Corinna Vinschen) [1920286] - igb: XDP xmit back fix error code (Corinna Vinschen) [1920286] - igb: add XDP support (Corinna Vinschen) [1920286] - r8169: don't advertise pause in jumbo mode (Josef Oskera) [1935346] - r8169: fix DMA being used after buffer free if WoL is enabled (Josef Oskera) [1935346] - r8169: fix r8168fp_adjust_ocp_cmd function (Josef Oskera) [1935346] - r8169: use macro pm_ptr (Josef Oskera) [1935346] - r8169: fix resuming from suspend on RTL8105e if machine runs on battery (Josef Oskera) [1935346] - r8169: handle tx before rx in napi poll (Josef Oskera) [1935346] - r8169: disable detection of bogus xid's 308/388 (Josef Oskera) [1935346] - r8169: re-configure WOL settings on resume from hibernation (Josef Oskera) [1935346] - r8169: don't try to disable interrupts if NAPI is scheduled already (Josef Oskera) [1935346] - r8169: Add support for another RTL8168FP (Josef Oskera) [1935346] - r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set (Josef Oskera) [1935346] - r8169: work around RTL8125 UDP hw bug (Josef Oskera) [1935346] - r8169: remove not needed call to rtl_wol_enable_rx from rtl_shutdown (Josef Oskera) [1935346] - r8169: improve DASH support (Josef Oskera) [1935346] - r8169: improve rtl8169_rx_csum (Josef Oskera) [1935346] - r8169: align rtl_wol_suspend_quirk with vendor driver and rename it (Josef Oskera) [1935346] - r8169: clean up rtl_pll_power_down/up functions (Josef Oskera) [1935346] - r8169: improve handling D3 PLL power-down (Josef Oskera) [1935346] - r8169: enable PLL power-down for chip versions 34, 35, 36, 42 (Josef Oskera) [1935346] - r8169: make use of the unaligned access helpers (Josef Oskera) [1935346] - r8169: tweak max read request size for newer chips also in jumbo mtu mode (Josef Oskera) [1935346] - r8169: align RTL8168e jumbo pcie read request size with vendor driver (Josef Oskera) [1935346] - r8169: don't wakeup-enable device on shutdown if WOL is disabled (Josef Oskera) [1935346] - r8169: improve rtl_ocp_reg_failure (Josef Oskera) [1935346] - r8169: replace BUG_ON with WARN in _rtl_eri_write (Josef Oskera) [1935346] - r8169: improve RTL8168g PHY suspend quirk (Josef Oskera) [1935346] - r8169: move ERI access functions to avoid forward declaration (Josef Oskera) [1935346] - r8169: work around power-saving bug on some chip versions (Josef Oskera) [1935346] - r8169: make NUM_RX_DESC a signed int (Josef Oskera) [1935346] - r8169: improve rtl_rx (Josef Oskera) [1935346] - r8169: set tc_offset only if tally counter reset isn't supported (Josef Oskera) [1935346] - net: phy: realtek: read actual speed on rtl8211f to detect downshift (Josef Oskera) [1935346] - r8169: use dev_err_probe in rtl_get_ether_clk (Josef Oskera) [1935346] - r8169: reduce number of workaround doorbell rings (Josef Oskera) [1935346] - r8169: remove not needed check in rtl8169_start_xmit (Josef Oskera) [1935346] - r8169: remove nr_frags argument from rtl_tx_slots_avail (Josef Oskera) [1935346] - r8169: improve rtl8169_start_xmit (Josef Oskera) [1935346] - r8169: improve rtl_tx (Josef Oskera) [1935346] - r8169: use READ_ONCE in rtl_tx_slots_avail (Josef Oskera) [1935346] - net: phy: realtek: support paged operations on RTL8201CP (Josef Oskera) [1935346] - r8169: disable hw csum for short packets on all chip versions (Josef Oskera) [1935346] - r8169: fix potential skb double free in an error path (Josef Oskera) [1935346] - r8169: work around short packet hw bug on RTL8125 (Josef Oskera) [1935346] - net: phy: realtek: Add support for RTL8221B-CG series (Josef Oskera) [1935346] - r8169: set IRQF_NO_THREAD if MSI(X) is enabled (Josef Oskera) [1935346] - r8169: align number of tx descriptors with vendor driver (Josef Oskera) [1935346] - r8169: use pm_runtime_put_sync in rtl_open error path (Josef Oskera) [1935346] - r8169: remove unneeded memory barrier in rtl_tx (Josef Oskera) [1935346] - r8169: remove no longer needed private rx/tx packet/byte counters (Josef Oskera) [1935346] - r8169: use struct pcpu_sw_netstats for rx/tx packet/byte counters (Josef Oskera) [1935346] - treewide: Use fallthrough pseudo-keyword (Josef Oskera) [1935346] - r8169: fix jumbo packet handling on RTL8168e (Josef Oskera) [1915314] - sctp: delay auto_asconf init until binding the first addr (Xin Long) [1952020] - netfilter: x_tables: fix compat match/target pad out-of-bound write (Florian Westphal) [1950014] - netfilter: arp_tables: add pre_exit hook for table unregister (Florian Westphal) [1950014] - netfilter: bridge: add pre_exit hooks for ebtable unregistration (Florian Westphal) [1950014] - netfilter: nft_limit: avoid possible divide error in nft_limit_init (Florian Westphal) [1950014] - netfilter: conntrack: do not print icmpv6 as unknown via /proc (Florian Westphal) [1950014] - netfilter: flowtable: fix NAT IPv6 offload mangling (Florian Westphal) [1950014] - netfilter: flowtable: Make sure GC works periodically in idle system (Florian Westphal) [1950014] - netfilter: nftables: report EOPNOTSUPP on unsupported flowtable flags (Florian Westphal) [1950014] - netfilter: ctnetlink: fix dump of the expect mask attribute (Florian Westphal) [1950014] - netfilter: x_tables: gpf inside xt_find_revision() (Florian Westphal) [1950014] - netfilter: conntrack: skip identical origin tuple in same zone only (Florian Westphal) [1950014] - flow_dissector: fix byteorder of dissected ICMP ID (Paolo Abeni) [1950288] - flow_dissector: fix TTL and TOS dissection on IPv4 fragments (Paolo Abeni) [1950288] - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled (Paolo Abeni) [1950288] - net: core: devlink: use right genl user_ptr when handling port param get/set (Paolo Abeni) [1950288] - net_sched: gen_estimator: support large ewma log (Paolo Abeni) [1950288] - net: Allow NETIF_F_HW_TLS_TX if IP_CSUM && IPV6_CSUM (Paolo Abeni) [1950288] - net: Disable NETIF_F_HW_TLS_TX when HW_CSUM is disabled (Paolo Abeni) [1950288] - devlink: Add devlink port documentation (Petr Oros) [1935708] - devlink: Support get and set state of port function (Petr Oros) [1935708] - devlink: Support add and delete devlink port (Petr Oros) [1935708] - devlink: Introduce PCI SF port flavour and port attribute (Petr Oros) [1935708] - devlink: Prepare code to fill multiple port function attributes (Petr Oros) [1935708] - net: core: devlink: simplify the return expression of devlink_nl_cmd_trap_set_doit() (Petr Oros) [1935708] - video: hyperv_fb: Add ratelimit on error message (Mohammed Gamal) [1957804] - ovl: allow upperdir inside lowerdir (Miklos Szeredi) [1903647] - i2c: i801: Add support for Intel Alder Lake PCH-P (Steve Best) [1929488] - pinctrl: tigerlake: Add Alder Lake-P ACPI ID (Steve Best) [1929492] - xfs: set aside allocation btree blocks from block reservation (Brian Foster) [1911738] - xfs: introduce in-core global counter of allocbt blocks (Brian Foster) [1911738] - xfs: unconditionally read all AGFs on mounts with perag reservation (Brian Foster) [1911738] - xfs: drop unnecessary setfilesize helper (Brian Foster) [1942348] - xfs: drop unused ioend private merge and setfilesize code (Brian Foster) [1942348] - xfs: open code ioend needs workqueue helper (Brian Foster) [1942348] - xfs: drop submit side trans alloc for append ioends (Brian Foster) [1942348] - blk-mq: Use request queue-wide tags for tagset-wide sbitmap (Ming Lei) [1932145] - blk-mq: Some tag allocation code refactoring (Ming Lei) [1932145] - blk-mq: Swap two calls in blk_mq_exit_queue() (Ming Lei) [1932145] - blk-mq: plug request for shared sbitmap (Ming Lei) [1932145] - blk-mq: set default elevator as deadline in case of hctx shared tagset (Ming Lei) [1932145] - powerpc/perf: Fix PMU constraint check for EBB events (Diego Domingos) [1926573] - s390/idle: fix suspicious RCU usage (Waiman Long) [1963142] - x86/cpu: Add another Alder Lake CPU to the Intel family (Steve Best) [1962033] - x86/split_lock: Don't write MSR_TEST_CTRL on CPUs that aren't whitelisted (Prarit Bhargava) [1837350] - Documentation/admin-guide: Change doc for split_lock_detect parameter (Prarit Bhargava) [1837350] - x86/traps: Handle #DB for bus lock (Prarit Bhargava) [1837350] - x86/cpufeatures: Enumerate #DB for bus lock detection (Prarit Bhargava) [1837350] - x86/split_lock: Enable the split lock feature on another Alder Lake CPU (Prarit Bhargava) [1925373] - x86/cpu: Add another Alder Lake CPU to the Intel family (Prarit Bhargava) [1925373] - x86/split_lock: Enable the split lock feature on Sapphire Rapids and Alder Lake CPUs (Prarit Bhargava) [1925373]- libbpf: Add user-space variants of BPF_CORE_READ() family of macros (Jiri Olsa) [1896362] - libbpf: Switch tracing and CO-RE helper macros to bpf_probe_read_kernel() (Jiri Olsa) [1896362] - selftests/bpf: Fix test_vmlinux test to use bpf_probe_read_user() (Jiri Olsa) [1896362] - samples/bpf, selftests/bpf: Use bpf_probe_read_kernel (Jiri Olsa) [1896362] - bpf: Restrict bpf_probe_read{, str}() only to archs where they work (Jiri Olsa) [1896362] - perf/x86/intel/uncore: Add Rocket Lake support (Michael Petlan) [1837502] - perf/x86/cstate: Add Rocket Lake CPU support (Michael Petlan) [1837497] - perf/x86/intel: Add Rocket Lake CPU support (Michael Petlan) [1837497] - perf/x86/msr: Add Rocket Lake CPU support (Michael Petlan) [1837497] - tick/nohz: Kick only _queued_ task whose tick dependency is updated (Waiman Long) [1922901] - tick/nohz: Change signal tick dependency to wake up CPUs of member tasks (Waiman Long) [1922901] - tick/nohz: Only wake up a single target cpu when kicking a task (Waiman Long) [1922901] - tick/nohz: Narrow down noise while setting current task's tick dependency (Waiman Long) [1922901] - sched/fair: Fix shift-out-of-bounds in load_balance() (Phil Auld) [1958730] - redhat/configs: Update torture test configs (Waiman Long) [1941211] - rcu: Do not report strict GPs for outgoing CPUs (Waiman Long) [1941211] - rcu,ftrace: Fix ftrace recursion (Waiman Long) [1941211] - arm64: smp: Tell RCU about CPUs that fail to come online (Waiman Long) [1941211] - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled (Waiman Long) [1941211] - rcu-tasks: Enclose task-list scan in rcu_read_lock() (Waiman Long) [1941211] - rcu-tasks: Fix low-probability task_struct leak (Waiman Long) [1941211] - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Shorten per-grace-period sleep for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Selectively enable more RCU Tasks Trace IPIs (Waiman Long) [1941211] - rcu-tasks: Use more aggressive polling for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Mark variables static (Waiman Long) [1941211] - rcu-tasks: Prevent complaints of unused show_rcu_tasks_classic_gp_kthread() (Waiman Long) [1941211] - rcu: Remove unused "cpu" parameter from rcu_report_qs_rdp() (Waiman Long) [1941211] - torture: Add gdb support (Waiman Long) [1941211] - rcuperf: Change rcuperf to rcuscale (Waiman Long) [1941211] - sched,rcuperf: Convert to sched_set_fifo_low() (Waiman Long) [1941211] - rcu/rcuperf: Convert to SPDX license identifier (Waiman Long) [1941211] - rcutorture: Allow pointer leaks to test diagnostic code (Waiman Long) [1941211] - rcu: Report QS for outermost PREEMPT=n rcu_read_unlock() for strict GPs (Waiman Long) [1941211] - rcu: locking and unlocking need to always be at least barriers (Waiman Long) [1941211] - rcu: Execute RCU reader shortly after rcu_core for strict GPs (Waiman Long) [1941211] - rcu: Provide optional RCU-reader exit delay for strict GPs (Waiman Long) [1941211] - rcu: Make FQS more aggressive in complaining about offline CPUs (Waiman Long) [1941211] - rcu: Clarify comments about FQS loop reporting quiescent states (Waiman Long) [1941211] - rcu: IPI all CPUs at GP end for strict GPs (Waiman Long) [1941211] - rcu: IPI all CPUs at GP start for strict GPs (Waiman Long) [1941211] - rcu: Attempt QS when CPU discovers GP for strict GPs (Waiman Long) [1941211] - rcu: Do full report for .need_qs for strict GPs (Waiman Long) [1941211] - rcu: Always set .need_qs from __rcu_read_lock() for strict GPs (Waiman Long) [1941211] - rcu: Force DEFAULT_RCU_BLIMIT to 1000 for strict RCU GPs (Waiman Long) [1941211] - rcu: Restrict default jiffies_till_first_fqs for strict RCU GPs (Waiman Long) [1941211] - rcu: Reduce leaf fanout for strict RCU grace periods (Waiman Long) [1941211] - rcu: Add Kconfig option for strict RCU grace periods (Waiman Long) [1941211] - rcu/nocb: Add a warning for non-GP kthread running GP code (Waiman Long) [1941211] - rcu: Move rcu_cpu_started per-CPU variable to rcu_data (Waiman Long) [1941211] - scftorture: Add cond_resched() to test loop (Waiman Long) [1941211] - rcutorture: Hoist OOM registry up one level (Waiman Long) [1941211] - rcutorture: Properly synchronize with OOM notifier (Waiman Long) [1941211] - rcutorture: Properly set rcu_fwds for OOM handling (Waiman Long) [1941211] - torture: Add kvm.sh --help and update help message (Waiman Long) [1941211] - refperf: Avoid null pointer dereference when buf fails to allocate (Waiman Long) [1941211] - rcutorture: Add CONFIG_PROVE_RCU_LIST to TREE05 (Waiman Long) [1941211] - torture: Update initrd documentation (Waiman Long) [1941211] - rcutorture: Replace HTTP links with HTTPS ones (Waiman Long) [1941211] - rcu: Fix kerneldoc comments in rcupdate.h (Waiman Long) [1941211] - scftorture: Adapt memory-ordering test to UP operation (Waiman Long) [1941211] - torture: document --allcpus argument added to the kvm.sh script (Waiman Long) [1941211] - scftorture: Block scftorture_invoker() kthreads for offline CPUs (Waiman Long) [1941211] - scftorture: Check unexpected "switch" statement value (Waiman Long) [1941211] - scftorture: Make symbol 'scf_torture_rand' static (Waiman Long) [1941211] - scftorture: Prevent compiler from reducing race probabilities (Waiman Long) [1941211] - scftorture: Flag errors in torture-compatible manner (Waiman Long) [1941211] - scftorture: Consolidate scftorture_invoke_one() scf_check initialization (Waiman Long) [1941211] - scftorture: Consolidate scftorture_invoke_one() check and kfree() (Waiman Long) [1941211] - scftorture: Add smp_call_function() memory-ordering checks (Waiman Long) [1941211] - scftorture: Add smp_call_function_many() memory-ordering checks (Waiman Long) [1941211] - scftorture: Add smp_call_function_single() memory-ordering checks (Waiman Long) [1941211] - scftorture: Summarize per-thread statistics (Waiman Long) [1941211] - torture: Declare parse-console.sh independence from rcutorture (Waiman Long) [1941211] - tick-sched: Clarify "NOHZ: local_softirq_pending" warning (Waiman Long) [1941211] - scftorture: Implement weighted primitive selection (Waiman Long) [1941211] - torture: Add scftorture to the rcutorture scripting (Waiman Long) [1941211] - scftorture: Add smp_call_function() torture test (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_cpu_stall_ftrace_dump (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_kick_kthreads (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_resched_ns (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_divisor (Waiman Long) [1941211] - nocb: Remove show_rcu_nocb_state() false positive printout (Waiman Long) [1941211] - rcu/tree: Remove CONFIG_PREMPT_RCU check in force_qs_rnp() (Waiman Long) [1941211] - nocb: Clarify RCU nocb CPU error message (Waiman Long) [1941211] - rcu/tree: Force quiescent state on callback overload (Waiman Long) [1941211] - rcu/trace: Use gp_seq_req in acceleration's rcu_grace_period tracepoint (Waiman Long) [1941211] - rcu/trace: Print negative GP numbers correctly (Waiman Long) [1941211] - rcutorture: Output number of elapsed grace periods (Waiman Long) [1941211] - rcu: Initialize at declaration time in rcu_exp_handler() (Waiman Long) [1941211] - rcu: Remove KCSAN stubs from update.c (Waiman Long) [1941211] - rcu: Remove KCSAN stubs (Waiman Long) [1941211] - srcu: Remove KCSAN stubs (Waiman Long) [1941211] - rcutorture: Remove KCSAN stubs (Waiman Long) [1941211] - refscale: Change --torture type from refperf to refscale (Waiman Long) [1941211] - refperf: Rename refperf.c to refscale.c and change internal names (Waiman Long) [1941211] - refperf: Rename RCU_REF_PERF_TEST to RCU_REF_SCALE_TEST (Waiman Long) [1941211] - torture: Remove obsolete "cd $KVM" (Waiman Long) [1941211] - torture: Avoid duplicate specification of qemu command (Waiman Long) [1941211] - torture: Dump ftrace at shutdown only if requested (Waiman Long) [1941211] - torture: Add kvm-tranform.sh script for qemu-cmd files (Waiman Long) [1941211] - torture: Add more tracing crib notes to kvm.sh (Waiman Long) [1941211] - torture: Improve diagnostic for KCSAN-incapable compilers (Waiman Long) [1941211] - torture: Correctly summarize build-only runs (Waiman Long) [1941211] - torture: Pass --kmake-arg to all make invocations (Waiman Long) [1941211] - kernel/rcu/tree.c: Fix kernel-doc warnings (Waiman Long) [1941211] - rcu-tasks: Fix synchronize_rcu_tasks_trace() header comment (Waiman Long) [1941211] - rcu: grpnum just records group number (Waiman Long) [1941211] - rcu: grplo/grphi just records CPU number (Waiman Long) [1941211] - rcu: gp_max is protected by root rcu_node's lock (Waiman Long) [1941211] - rcutorture: Check for unwatched readers (Waiman Long) [1941211] - torture: Abstract out console-log error detection (Waiman Long) [1941211] - torture: Add a stop-run capability (Waiman Long) [1941211] - rcu-tasks: Fix code-style issues (Waiman Long) [1941211] - torture: Create qemu-cmd in --buildonly runs (Waiman Long) [1941211] - rcu: Stop shrinker loop (Waiman Long) [1941211] - refperf: Add test for RCU Tasks readers (Waiman Long) [1941211] - refperf: Add test for RCU Tasks Trace readers. (Waiman Long) [1941211] - rcu: Replace 1 with true (Waiman Long) [1941211] - rcu/rcutorture: Replace 0 with false (Waiman Long) [1941211] - refperf: Change readdelay module parameter to nanoseconds (Waiman Long) [1941211] - refperf: Work around 64-bit division (Waiman Long) [1941211] - doc: Document rcuperf's module parameters (Waiman Long) [1941211] - refperf: Adjust refperf.loop default value (Waiman Long) [1941211] - rcu-tasks: Conditionally compile show_rcu_tasks_gp_kthreads() (Waiman Long) [1941211] - rcu-tasks: Add #include of rcupdate_trace.h to update.c (Waiman Long) [1941211] - rcu-tasks: Make rcu_tasks_postscan() be static (Waiman Long) [1941211] - refperf: Add read-side delay module parameter (Waiman Long) [1941211] - lockdep: Complain only once about RCU in extended quiescent state (Waiman Long) [1941211] - refperf: Simplify initialization-time wakeup protocol (Waiman Long) [1941211] - rcu: Allow for smp_call_function() running callbacks from idle (Waiman Long) [1941211] - refperf: Output per-experiment data points (Waiman Long) [1941211] - refperf: Label experiment-number column "Runs" (Waiman Long) [1941211] - refperf: Add warmup and cooldown processing phases (Waiman Long) [1941211] - refperf: More closely synchronize reader start times (Waiman Long) [1941211] - refperf: Convert reader_task structure's "start" field to int (Waiman Long) [1941211] - refperf: Tune reader measurement interval (Waiman Long) [1941211] - refperf: Make functions static (Waiman Long) [1941211] - srcu: Avoid local_irq_save() before acquiring spinlock_t (Waiman Long) [1941211] - refperf: Dynamically allocate thread-summary output buffer (Waiman Long) [1941211] - refperf: Dynamically allocate experiment-summary output buffer (Waiman Long) [1941211] - refperf: Provide module parameter to specify number of experiments (Waiman Long) [1941211] - refperf: Convert nreaders to a module parameter (Waiman Long) [1941211] - refperf: Allow decimal nanoseconds (Waiman Long) [1941211] - refperf: Hoist function-pointer calls out of the loop (Waiman Long) [1941211] - rcu: Introduce single argument kvfree_rcu() interface (Waiman Long) [1941211] - refperf: Add holdoff parameter to allow CPUs to come online (Waiman Long) [1941211] - torture: Add refperf to the rcutorture scripting (Waiman Long) [1941211] - rcuperf: Add comments explaining the high reader overhead (Waiman Long) [1941211] - refperf: Add a test to measure performance of read-side synchronization (Waiman Long) [1941211] - rcuperf: Remove useless while loops around wait_event (Waiman Long) [1941211] - rcu: Provide rcu_irq_exit_check_preempt() (Waiman Long) [1941211] - sched,rcu,tracing: Avoid tracing before in_nmi() is correct (Waiman Long) [1941211] - hardirq/nmi: Allow nested nmi_enter() (Waiman Long) [1941211] - powerpc/64s: Include header file to fix a warning (Waiman Long) [1941211] - powerpc/64s: system reset interrupt preserve HSRRs (Waiman Long) [1941211] - powerpc/64s: Fix HV NMI vs HV interrupt recoverability test (Waiman Long) [1941211] - powerpc/traps: fix recoverability of machine check handling on book3s/32 (Waiman Long) [1941211] - powerpc/traps: restore recoverability of machine_check interrupts (Waiman Long) [1941211] - rcu: Mark rcu_nmi_enter() call to rcu_cleanup_after_idle() noinstr (Waiman Long) [1941211] - rcu: Remove initialized but unused rnp from check_slow_task() (Waiman Long) [1941211] - rcu: Update comment from rsp->rcu_gp_seq to rsp->gp_seq (Waiman Long) [1941211] - rcu: Provide __rcu_is_watching() (Waiman Long) [1941211] - doc: Tasks RCU must protect instructions before trampoline (Waiman Long) [1941211] - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls (Waiman Long) [1941211] - rcu-tasks: Convert sleeps to idle priority (Waiman Long) [1941211] - rcu: Expedited grace-period sleeps to idle priority (Waiman Long) [1941211] - rcu: No-CBs-related sleeps to idle priority (Waiman Long) [1941211] - rcu: Priority-boost-related sleeps to idle priority (Waiman Long) [1941211] - rcu: Grace-period-kthread related sleeps to idle priority (Waiman Long) [1941211] - torture: Add --allcpus argument to the kvm.sh script (Waiman Long) [1941211] - torture: Remove whitespace from identify_qemu_vcpus output (Waiman Long) [1941211] - torture: Add script to smoke-test commits in a branch (Waiman Long) [1941211] - trace: events: rcu: Change description of rcu_dyntick trace event (Waiman Long) [1941211] - rcu: Add comment documenting rcu_callback_map's purpose (Waiman Long) [1941211] - rcu: Provide rcu_irq_exit_preempt() (Waiman Long) [1941211] - rcu: Add callbacks-invoked counters (Waiman Long) [1941211] - doc: Timer problems can cause RCU CPU stall warnings (Waiman Long) [1941211] - torture: Remove qemu dependency on EFI firmware (Waiman Long) [1941211] - rcutorture: NULL rcu_torture_current earlier in cleanup code (Waiman Long) [1941211] - rcutorture: Handle non-statistic bang-string error messages (Waiman Long) [1941211] - torture: Set configfile variable to current scenario (Waiman Long) [1941211] - rcutorture: Add races with task-exit processing (Waiman Long) [1941211] - docs: RCU: Don't duplicate chapter names in rculist_nulls.rst (Waiman Long) [1941211] - docs: RCU: Convert stallwarn.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert rcuref.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert torture.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert rculist_nulls.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert lockdep.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert lockdep-splat.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert checklist.txt to ReST (Waiman Long) [1941211] - doc: Add rcutorture scripting to torture.txt (Waiman Long) [1941211] - doc: Fix typo "deference" to "dereference" (Waiman Long) [1941211] - docs: locking: convert docs to ReST and rename to *.rst (Waiman Long) [1941211] - doc/rcuref: Document real world examples in kernel (Waiman Long) [1941211] - Documentation/locking/lockdep: Drop last two chars of sample states (Waiman Long) [1941211] - doc: rcu: Suspicious RCU usage is a warning (Waiman Long) [1941211] - RCU/torture.txt: Remove section MODULE PARAMETERS (Waiman Long) [1941211] - Documentation/lockstat: Fix trivial typo (Waiman Long) [1941211] - rcu: Simplify the calculation of rcu_state.ncpus (Waiman Long) [1941211] - srcu: Fix a typo in comment "amoritized"->"amortized" (Waiman Long) [1941211] - rcuperf: Fix printk format warning (Waiman Long) [1941211] - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls (Waiman Long) [1941211] - rcu: Initialize and destroy rcu_synchronize only when necessary (Waiman Long) [1941211] - rcu: Add KCSAN stubs to update.c (Waiman Long) [1941211] - rcu: Add KCSAN stubs (Waiman Long) [1941211] - srcu: Add KCSAN stubs (Waiman Long) [1941211] - rcutorture: Add KCSAN stubs (Waiman Long) [1941211] - rcu/rcutorture: Convert to SPDX license identifier (Waiman Long) [1941211] - rcu: Convert rcu_nohz_full_cpu() ULONG_CMP_LT() to time_before() (Waiman Long) [1941211] - rcu: Convert rcu_initiate_boost() ULONG_CMP_GE() to time_after() (Waiman Long) [1941211] - rcutorture: Convert ULONG_CMP_LT() to time_before() (Waiman Long) [1941211] - rcu: Convert ULONG_CMP_GE() to time_after() for jiffy comparison (Waiman Long) [1941211] - rcu: Add rcu_gp_might_be_stalled() (Waiman Long) [1941211] - torture: Add a --kasan argument (Waiman Long) [1941211] - torture: Save a few lines by using config_override_param initially (Waiman Long) [1941211] - torture: Allow scenario-specific Kconfig options to override CFcommon (Waiman Long) [1941211] - torture: Allow --kconfig options to override --kcsan defaults (Waiman Long) [1941211] - torture: Abstract application of additional Kconfig options (Waiman Long) [1941211] - torture: Eliminate duplicate #CHECK# from ConfigFragment (Waiman Long) [1941211] - torture: Make --kcsan argument also create a summary (Waiman Long) [1941211] - rcutorture: Make rcu_fwds and rcu_fwd_emergency_stop static (Waiman Long) [1941211] - torture: Add --kcsan argument to top-level kvm.sh script (Waiman Long) [1941211] - rcu-tasks: Allow standalone use of TASKS_{TRACE_,}RCU (Waiman Long) [1941211] - rcu: Remove self-stack-trace when all quiescent states seen (Waiman Long) [1941211] - ftrace: Use synchronize_rcu_tasks_rude() instead of ftrace_sync() (Waiman Long) [1941211] - ftrace: Protect ftrace_graph_hash with ftrace_sync (Waiman Long) [1941211] - ftrace: Add comment to why rcu_dereference_sched() is open coded (Waiman Long) [1941211] - tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu (Waiman Long) [1941211] - tracing: Annotate ftrace_graph_hash pointer with __rcu (Waiman Long) [1941211] - tracing/fgraph: Fix set_graph_function from showing interrupts (Waiman Long) [1941211] - rcu: Allow rcutorture to starve grace-period kthread (Waiman Long) [1941211] - rcu: When GP kthread is starved, tag idle threads as false positives (Waiman Long) [1941211] - rcutorture: Right-size TREE10 CPU consumption (Waiman Long) [1941211] - rcu: Replace 1 by true (Waiman Long) [1941211] - rcutorture: Add test of holding scheduler locks across rcu_read_unlock() (Waiman Long) [1941211] - rcu: Replace assigned pointer ret value by corresponding boolean value (Waiman Long) [1941211] - rcu-tasks: Add IPI failure count to statistics (Waiman Long) [1941211] - rcutorture: Add TRACE02 scenario enabling RCU Tasks Trace IPIs (Waiman Long) [1941211] - rcu-tasks: Add count for idle tasks on offline CPUs (Waiman Long) [1941211] - rcu-tasks: Add rcu_dynticks_zero_in_eqs() effectiveness statistics (Waiman Long) [1941211] - rcu-tasks: Make RCU tasks trace also wait for idle tasks (Waiman Long) [1941211] - rcu-tasks: Handle the running-offline idle-task special case (Waiman Long) [1941211] - rcu-tasks: Disable CPU hotplug across RCU tasks trace scans (Waiman Long) [1941211] - rcu: Mark rcu_state.gp_seq to detect more concurrent writes (Waiman Long) [1941211] - rcu-tasks: Allow rcu_read_unlock_trace() under scheduler locks (Waiman Long) [1941211] - rcu-tasks: Avoid IPIing userspace/idle tasks if kernel is so built (Waiman Long) [1941211] - rcu-tasks: Add Kconfig option to mediate smp_mb() vs. IPI (Waiman Long) [1941211] - rcu-tasks: Add grace-period and IPI counts to statistics (Waiman Long) [1941211] - rcu-tasks: Split ->trc_reader_need_end (Waiman Long) [1941211] - rcu-tasks: Provide boot parameter to delay IPIs until late in grace period (Waiman Long) [1941211] - rcu-tasks: Add a grace-period start time for throttling and debug (Waiman Long) [1941211] - rcu: Get rid of some doc warnings in update.c (Waiman Long) [1941211] - rcu-tasks: Make RCU Tasks Trace make use of RCU scheduler hooks (Waiman Long) [1941211] - rcu-tasks: Use context-switch hook for PREEMPT=y kernels (Waiman Long) [1941211] - rcu-tasks: Make rcutorture writer stall output include GP state (Waiman Long) [1941211] - rcu-tasks: Add RCU tasks to rcutorture writer stall output (Waiman Long) [1941211] - rcuperf: Add ability to increase object allocation size (Waiman Long) [1941211] - rcu-tasks: Move #ifdef into tasks.h (Waiman Long) [1941211] - rcutorture: Add flag to produce non-busy-wait task stalls (Waiman Long) [1941211] - rcu: Add per-task state to RCU CPU stall warnings (Waiman Long) [1941211] - sched/core: Add function to sample state of locked-down task (Waiman Long) [1941211] - rcu-tasks: Add stall warnings for RCU Tasks Trace (Waiman Long) [1941211] - rcutorture: Add torture tests for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Add an RCU Tasks Trace to simplify protection of tracing hooks (Waiman Long) [1941211] - rcutorture: Add a test for synchronize_rcu_mult() (Waiman Long) [1941211] - rcu: Reinstate synchronize_rcu_mult() (Waiman Long) [1941211] - rcu-tasks: Code movement to allow more Tasks RCU variants (Waiman Long) [1941211] - rcu: Fix the (t=0 jiffies) false positive (Waiman Long) [1941211] - rcu-tasks: Further refactor RCU-tasks to allow adding more variants (Waiman Long) [1941211] - rcu-tasks: Use unique names for RCU-Tasks kthreads and messages (Waiman Long) [1941211] - rcutorture: Add torture tests for RCU Tasks Rude (Waiman Long) [1941211] - rcu-tasks: Add an RCU-tasks rude variant (Waiman Long) [1941211] - rcu-tasks: Refactor RCU-tasks to allow variants to be added (Waiman Long) [1941211] - rcu-tasks: Create struct to hold state information (Waiman Long) [1941211] - rcu-tasks: Move Tasks RCU to its own file (Waiman Long) [1941211] - locktorture.c: Fix if-statement empty body warnings (Waiman Long) [1941211] - rcu: Expedite first two FQS scans under callback-overload conditions (Waiman Long) [1941211] - rcu: Mark rcu_state.gp_seq to detect concurrent writes (Waiman Long) [1941211] - rcutorture: Mark data-race potential for rcu_barrier() test statistics (Waiman Long) [1941211] - rcu: Don't use negative nesting depth in __rcu_read_unlock() (Waiman Long) [1941211] - rcu: Remove unused ->rcu_read_unlock_special.b.deferred_qs field (Waiman Long) [1941211] - rcu: Don't set nesting depth negative in rcu_preempt_deferred_qs() (Waiman Long) [1941211] - rcu: Make rcu_read_unlock_special() safe for rq/pi locks (Waiman Long) [1941211] - rcutorture: Make kvm-recheck-rcu.sh handle truncated lines (Waiman Long) [1941211] - rcu: Make RCU IRQ enter/exit functions rely on in_nmi() (Waiman Long) [1941211] - rcu/tree: Mark the idle relevant functions noinstr (Waiman Long) [1941211] - rcu: Add comments marking transitions between RCU watching and not (Waiman Long) [1941211] - rcu: Update __call_rcu() comments (Waiman Long) [1941211] - rcu: Mark rcu_state.ncpus to detect concurrent writes (Waiman Long) [1941211] - rcu: Use data_race() for RCU CPU stall-warning prints (Waiman Long) [1941211] - rcutorture: Manually clean up after rcu_barrier() failure (Waiman Long) [1941211] - rcutorture: Make rcu_torture_barrier_cbs() post from corresponding CPU (Waiman Long) [1941211] - rcu: Make nocb_gp_wait() double-check unexpected-callback warning (Waiman Long) [1941211] - rcu: Tighten rcu_lockdep_assert_cblist_protected() check (Waiman Long) [1941211] - rcu: Optimize and protect atomic_cmpxchg() loop (Waiman Long) [1941211] - rcu/nocb: Add missing annotation for rcu_nocb_bypass_unlock() (Waiman Long) [1941211] - rcu: Don't flag non-starting GPs before GP kthread is running (Waiman Long) [1941211] - rcu: Fix rcu_barrier_callback() race condition (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_state ->gp_start (Waiman Long) [1941211] - rcu: Add missing annotation for rcu_nocb_bypass_lock() (Waiman Long) [1941211] - rcu: Add missing annotation for exit_tasks_rcu_finish() (Waiman Long) [1941211] - rcu: Add missing annotation for exit_tasks_rcu_start() (Waiman Long) [1941211] - rculist: Add brackets around cond argument in __list_check_rcu macro (Waiman Long) [1941211] - rcu: Remove dead code from rcu_segcblist_insert_pend_cbs() (Waiman Long) [1941211] - rcutorture: Annotation lockless accesses to rcu_torture_current (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_data ->gpwrap (Waiman Long) [1941211] - rcu-tasks: *_ONCE() for rcu_tasks_cbs_head (Waiman Long) [1941211] - rcu: Add *_ONCE() for grace-period progress indicators (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->boost_tasks (Waiman Long) [1941211] - srcu: Add data_race() to ->srcu_lock_count and ->srcu_unlock_count arrays (Waiman Long) [1941211] - rcutorture: Add READ_ONCE() to rcu_torture_count and rcu_torture_batch (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_segcblist ->tails[] (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->qsmaskinitnext (Waiman Long) [1941211] - rcu: Add READ_ONCE and data_race() to rcu_node ->boost_tasks (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_state ->gp_req_activity (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_node ->gp_seq (Waiman Long) [1941211] - rcu: Add *_ONCE() and data_race() to rcu_node ->exp_tasks plus locking (Waiman Long) [1941211] - rcu: Add *_ONCE() to rcu_node ->boost_kthread_status (Waiman Long) [1941211] - rcu: Add WRITE_ONCE to rcu_node ->exp_seq_rq store (Waiman Long) [1941211] - srcu: Hold srcu_struct ->lock when updating ->srcu_gp_seq (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->qsmask update (Waiman Long) [1941211] - rcu: Provide debug symbols and line numbers in KCSAN runs (Waiman Long) [1941211] - rcu: Fix exp_funnel_lock()/rcu_exp_wait_wake() datarace (Waiman Long) [1941211] - srcu: Fix process_srcu()/srcu_batches_completed() datarace (Waiman Long) [1941211] - srcu: Fix __call_srcu()/srcu_get_delay() datarace (Waiman Long) [1941211] - srcu: Fix __call_srcu()/process_srcu() datarace (Waiman Long) [1941211] - rcutorture: Fix stray access to rcu_fwd_cb_nodelay (Waiman Long) [1941211] - rcutorture: Fix rcu_torture_one_read()/rcu_torture_writer() data race (Waiman Long) [1941211] - rcutorture: Make kvm-find-errors.sh abort on bad directory (Waiman Long) [1941211] - rcutorture: Summarize summary of build and run results (Waiman Long) [1941211] - rcutorture: Add 100-CPU configuration (Waiman Long) [1941211] - rcu: Warn on for_each_leaf_node_cpu_mask() from non-leaf (Waiman Long) [1941211] - rcu: Fix spelling mistake "leval" -> "level" (Waiman Long) [1941211] - torture: Allow disabling of boottime CPU-hotplug torture operations (Waiman Long) [1941211] - rcutorture: Suppress boottime bad-sequence warnings (Waiman Long) [1941211] - rcutorture: Allow boottime stall warnings to be suppressed (Waiman Long) [1941211] - torture: Forgive -EBUSY from boottime CPU-hotplug operations (Waiman Long) [1941211] - rcutorture: Refrain from callback flooding during boot (Waiman Long) [1941211] - torture: Make results-directory date format completion-friendly (Waiman Long) [1941211] - rcutorture: Suppress forward-progress complaints during early boot (Waiman Long) [1941211] - timer: Use hlist_unhashed_lockless() in timer_pending() (Waiman Long) [1941211] - rcu: React to callback overload by boosting RCU readers (Waiman Long) [1941211] - rcu: React to callback overload by aggressively seeking quiescent states (Waiman Long) [1941211] - rcu: Add and update docbook header comments in list.h (Waiman Long) [1941211] - list: Add hlist_unhashed_lockless() (Waiman Long) [1941211] - list: Don't use WRITE_ONCE() in hlist_add_behind() (Waiman Long) [1941211] - kcsan: Introduce ASSERT_EXCLUSIVE_BITS(var, mask) (Waiman Long) [1941211] - kcsan: Add kcsan_set_access_mask() support (Waiman Long) [1941211] - kcsan: Introduce kcsan_value_change type (Waiman Long) [1941211] - kcsan: Move interfaces that affects checks to kcsan-checks.h (Waiman Long) [1941211] - kcsan: Fix misreporting if concurrent races on same address (Waiman Long) [1941211] - kcsan: Expose core configuration parameters as module params (Waiman Long) [1941211] - kcsan: Add test to generate conflicts via debugfs (Waiman Long) [1941211] - kcsan: Introduce ASSERT_EXCLUSIVE_*() macros (Waiman Long) [1941211] - kcsan: Introduce KCSAN_ACCESS_ASSERT access type (Waiman Long) [1941211] - kcsan: Fix 0-sized checks (Waiman Long) [1941211] - kcsan: Clean up the main KCSAN Kconfig option (Waiman Long) [1941211] - kcsan: Clarify Kconfig option KCSAN_IGNORE_ATOMICS (Waiman Long) [1941211] - kcsan: Add option to assume plain aligned writes up to word size are atomic (Waiman Long) [1941211] - kcsan: Add docbook header for data_race() (Waiman Long) [1941211] - kcsan: Address missing case with KCSAN_REPORT_VALUE_CHANGE_ONLY (Waiman Long) [1941211] - include/linux: Add instrumented.h infrastructure (Waiman Long) [1941211] - kcsan: Make KCSAN compatible with lockdep (Waiman Long) [1941211] - kcsan: Rate-limit reporting per data races (Waiman Long) [1941211] - kcsan: Show full access type in report (Waiman Long) [1941211] - kcsan: Prefer __always_inline for fast-path (Waiman Long) [1941211] - kcsan: Improve various small stylistic details (Waiman Long) [1941211] - x86, kcsan: Enable KCSAN for x86 (Waiman Long) [1941211] - build, kcsan: Add KCSAN build exceptions (Waiman Long) [1941211] - x86/uaccess, kcov: Disable stack protector (Waiman Long) [1941211] - doc: Convert to rcubarrier.txt to ReST (Waiman Long) [1941211] - doc: Convert to rcu_dereference.txt to rcu_dereference.rst (Waiman Long) [1941211] - doc: Convert whatisRCU.txt to .rst (Waiman Long) [1941211] - doc: Converted NMI-RCU.txt to NMI-RCU.rst. (Waiman Long) [1941211] - doc: Convert arrayRCU.txt to arrayRCU.rst (Waiman Long) [1941211] - doc: Update list_for_each_entry_rcu() documentation (Waiman Long) [1941211] - Restore docs "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()" (Waiman Long) [1941211] - Restore docs "treewide: Rename rcu_dereference_raw_notrace() to _check()" (Waiman Long) [1941211] - docs: rcu: Increase toctree to 3 (Waiman Long) [1941211] - docs: rcu: Correct links referring to titles (Waiman Long) [1941211] - docs: rcu: convert some articles from html to ReST (Waiman Long) [1941211] - Revert docs from "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()" (Waiman Long) [1941211] - Documentation: RCU: Add TOC tree hooks (Waiman Long) [1941211] - doc: Describe choice of rcu_dereference() APIs and __rcu usage (Waiman Long) [1941211] - doc: Remove obsolete RCU update functions from RCU documentation (Waiman Long) [1941211] - scsi: ibmvfc: Free channel_setup_buf during device tear down (Steve Best) [1938102] - blk-mq: clearing flush request reference in tags->rqs[] (Ming Lei) [1811030] - blk-mq: clear stale request in tags->rq[] before freeing one request pool (Ming Lei) [1811030] - blk-mq: grab rq->refcount before calling ->fn in blk_mq_tagset_busy_iter (Ming Lei) [1811030] - vsock/vmci: log once the failed queue pair allocation (Stefano Garzarella) [1958248] - VMCI: Stop log spew when qp allocation isn't possible (Stefano Garzarella) [1958248] - vsock/virtio: update credit only if socket is not closed (Stefano Garzarella) [1921694] - powerpc/security: Fix debugfs data leak on 32-bit (Steve Best) [1935661] - powerpc/security: Show powerpc_security_features in debugfs (Steve Best) [1935661] - redhat/configs: Add CONFIG_SYSTEM_REVOCATION_KEYS and CONFIG_SYSTEM_REVOCATION_LIST (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: add 'x509_revocation_list' to gitignore (Vladis Dronov) [1893793] {CVE-2020-26541} - integrity: Load mokx variables into the blacklist keyring (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Add ability to preload revocation certs (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Move load_system_certificate_list to a common function (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Add EFI_CERT_X509_GUID support for dbx entries (Vladis Dronov) [1893793] {CVE-2020-26541} - pNFS/flexfiles: Fix array overflow when flexfiles mirroring is enabled (Benjamin Coddington) [1949575] - net/sunrpc: fix useless comparison in proc_do_xprt() (Benjamin Coddington) [1949575] - net/sunrpc: return 0 on attempt to write to "transports" (Benjamin Coddington) [1949575] - NFSD: MKNOD should return NFSERR_BADTYPE instead of NFSERR_INVAL (Benjamin Coddington) [1949575] - NFSD: NFSv3 PATHCONF Reply is improperly formed (Benjamin Coddington) [1949575] - nfsroot: Default mount option should ask for built-in NFS version (Benjamin Coddington) [1949575] - nfsd: remove unneeded break (Benjamin Coddington) [1949575] - net/sunrpc: Fix return value for sysctl sunrpc.transports (Benjamin Coddington) [1949575] - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag (Benjamin Coddington) [1949575] - NFSv4: Fix up RCU annotations for struct nfs_netns_client (Benjamin Coddington) [1949575] - NFS: Only reference user namespace from nfs4idmap struct instead of cred (Benjamin Coddington) [1949575] - NFSD: Hoist status code encoding into XDR encoder functions (Benjamin Coddington) [1949575] - NFSv4: Use the net namespace uniquifier if it is set (Benjamin Coddington) [1949575] - NFSv4: Clean up initialisation of uniquified client id strings (Benjamin Coddington) [1949575] - SUNRPC: Add an xdr_align_data() function (Benjamin Coddington) [1949575] - SUNRPC: Add the ability to expand holes in data pages (Benjamin Coddington) [1949575] - SUNRPC: Split out _shift_data_right_tail() (Benjamin Coddington) [1949575] - SUNRPC: Split out xdr_realign_pages() from xdr_align_pages() (Benjamin Coddington) [1949575] - NFS: Use xdr_page_pos() in NFSv4 decode_getacl() (Benjamin Coddington) [1949575] - SUNRPC: Implement a xdr_page_pos() function (Benjamin Coddington) [1949575] - NFS: fix nfs_path in case of a rename retry (Benjamin Coddington) [1949575] - NFSD: Map nfserr_wrongsec outside of nfsd_dispatch (Benjamin Coddington) [1949575] - NFSD: Remove the RETURN_STATUS() macro (Benjamin Coddington) [1949575] - NFSD: Call NFSv2 encoders on error returns (Benjamin Coddington) [1949575] - NFSD: Fix .pc_release method for NFSv2 (Benjamin Coddington) [1949575] - NFSD: Remove vestigial typedefs (Benjamin Coddington) [1949575] - NFSD: Refactor nfsd_dispatch() error paths (Benjamin Coddington) [1949575] - NFSD: Clean up nfsd_dispatch() variables (Benjamin Coddington) [1949575] - NFSD: Clean up stale comments in nfsd_dispatch() (Benjamin Coddington) [1949575] - NFSD: Clean up switch statement in nfsd_dispatch() (Benjamin Coddington) [1949575] - NFSD: Encoder and decoder functions are always present (Benjamin Coddington) [1949575] - NFSACL: Replace PROC() macro with open code (Benjamin Coddington) [1949575] - lockd: Replace PROC() macro with open code (Benjamin Coddington) [1949575] - NFSD: Add missing NFSv2 .pc_func methods (Benjamin Coddington) [1949575] - fs: nfs: return per memcg count for xattr shrinkers (Benjamin Coddington) [1949575] - nfs: remove incorrect fallthrough label (Benjamin Coddington) [1949575] - nfsd: rq_lease_breaker cleanup (Benjamin Coddington) [1949575] - sunrpc: simplify do_cache_clean (Benjamin Coddington) [1949575] - sunrpc: cache : Replace seq_printf with seq_puts (Benjamin Coddington) [1949575] - silence nfscache allocation warnings with kvzalloc (Benjamin Coddington) [1949575] - nfsd: fix comparison to bool warning (Benjamin Coddington) [1949575] - NFSD: Correct type annotations in user xattr XDR functions (Benjamin Coddington) [1949575] - NFSD: Correct type annotations in user xattr helpers (Benjamin Coddington) [1949575] - SUNRPC/NFSD: Implement xdr_reserve_space_vec() (Benjamin Coddington) [1949575] - nfsd: rename delegation related tracepoints to make them less confusing (Benjamin Coddington) [1949575] - nfsd: Remove unnecessary assignment in nfs4xdr.c (Benjamin Coddington) [1949575] - net: sunrpc: delete repeated words (Benjamin Coddington) [1949575] - nfsd: Fix typo in comment (Benjamin Coddington) [1949575] - nfsd: give up callbacks on revoked delegations (Benjamin Coddington) [1949575] - nfs: fix spellint typo in pnfs.c (Benjamin Coddington) [1949575] - fs,nfs: lift compat nfs4 mount data handling into the nfs code (Benjamin Coddington) [1949575] - nfs: simplify nfs4_parse_monolithic (Benjamin Coddington) [1949575] - xprtrdma: drop double zeroing (Benjamin Coddington) [1949575] - NFSv4.2: xattr cache: remove unused cache struct field (Benjamin Coddington) [1949575] - nfs: Convert to use the preferred fallthrough macro (Benjamin Coddington) [1949575] - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source (Benjamin Coddington) [1949575] - Replace HTTP links with HTTPS ones: NFS, SUNRPC, and LOCKD clients (Benjamin Coddington) [1949575] - sunrpc: fix duplicated word in (Benjamin Coddington) [1949575] - SUNRPC: Remove remaining dprintks from sched.c (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call sites in RPC queuing functions (Benjamin Coddington) [1949575] - SUNRPC: Clean up RPC scheduler tracepoints (Benjamin Coddington) [1949575] - SUNRPC: Replace rpcbind dprintk call sites with tracepoints (Benjamin Coddington) [1949575] - SUNRPC: Remove more dprintks in rpcb_clnt.c (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call sites in rpcbind XDR functions (Benjamin Coddington) [1949575] - SUNRPC: Hoist trace_xprtrdma_op_setport into generic code (Benjamin Coddington) [1949575] - SUNRPC: Remove rpcb_getport_async dprintk call sites (Benjamin Coddington) [1949575] - SUNRPC: Clean up call_bind_status() observability (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call site in call_decode (Benjamin Coddington) [1949575] - SUNRPC: Trace call_refresh events (Benjamin Coddington) [1949575] - SUNRPC: Add trace_rpc_timeout_status() (Benjamin Coddington) [1949575] - SUNRPC: Mitigate cond_resched() in xprt_transmit() (Benjamin Coddington) [1949575] - SUNRPC: Replace connect dprintk call sites with a tracepoint (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call site in call_start() (Benjamin Coddington) [1949575] - SUNRPC: Remove the dprint_status() macro (Benjamin Coddington) [1949575] - SUNRPC: Replace dprintk() call site in xs_nospace() (Benjamin Coddington) [1949575] - SUNRPC: Replace dprintk() call site in xprt_prepare_transmit (Benjamin Coddington) [1949575] - SUNRPC: Update debugging instrumentation in xprt_do_reserve() (Benjamin Coddington) [1949575] - SUNRPC: Remove debugging instrumentation from xprt_release (Benjamin Coddington) [1949575] - SUNRPC: Hoist trace_xprtrdma_op_allocate into generic code (Benjamin Coddington) [1949575] - SUNRPC: Remove trace_xprt_complete_rqst() (Benjamin Coddington) [1949575] - SUNRPC dont update timeout value on connection reset (Benjamin Coddington) [1949575] - nfs4: strengthen error check to avoid unexpected result (Benjamin Coddington) [1949575] - NFS: remove redundant pointer clnt (Benjamin Coddington) [1949575] - sunrpc: Avoid comma separated statements (Benjamin Coddington) [1949575]- Revert "sctp: Fix SHUTDOWN CTSN Ack in the peer restart case" (Xin Long) [1953839] - sctp: do asoc update earlier in sctp_sf_do_dupcook_b (Xin Long) [1953839] - sctp: do asoc update earlier in sctp_sf_do_dupcook_a (Xin Long) [1953839] - NFSv4: Fixes for nfs4_bitmask_adjust() (Steve Dickson) [1926961] - powerpc/paravirt: Use is_kvm_guest() in vcpu_is_preempted() (Desnes A. Nunes do Rosario) [1918720] - powerpc: Reintroduce is_kvm_guest() as a fast-path check (Desnes A. Nunes do Rosario) [1918720] - powerpc: Rename is_kvm_guest() to check_kvm_guest() (Desnes A. Nunes do Rosario) [1918720] - powerpc: Refactor is_kvm_guest() declaration to new header (Desnes A. Nunes do Rosario) [1918720] - powerpc/pseries: Move some PAPR paravirt functions to their own file (Desnes A. Nunes do Rosario) [1918720] - powerpc/shared: Use static key to detect shared processor (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Fix oops in __spin_yield() on bare metal (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Rename SPLPAR-only spinlocks (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Refactor SHARED_PROCESSOR (Desnes A. Nunes do Rosario) [1918720] - Revert "ACPICA: Interpreter: fix memory leak by using existing buffer" (Mark Langsdorf) [1935928] - x86/efi: Remove EFI PGD build time checks (Mark Langsdorf) [1935928] - ACPI: scan: Fix battery devices sometimes never binding (Mark Langsdorf) [1935928] - ACPI/IORT: Do not blindly trust DMA masks from firmware (Mark Langsdorf) [1935928] - ACPI: thermal: Do not call acpi_thermal_check() directly (Mark Langsdorf) [1935928] - ACPI: sysfs: Prefer "compatible" modalias (Mark Langsdorf) [1935928] - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error (Mark Langsdorf) [1935928] - ACPI: scan: Harden acpi_device_add() against device ID overflows (Mark Langsdorf) [1935928] - ACPI: Update Kconfig help text for items that are no longer modular (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Drop unused local variables and related code (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Move x86-specific code to the x86 directory (Mark Langsdorf) [1935928] - ACPI: scan: Add Intel Baytrail Mailbox Device to acpi_ignore_dep_ids (Mark Langsdorf) [1935928] - ACPI: scan: Avoid unnecessary second pass in acpi_bus_scan() (Mark Langsdorf) [1935928] - ACPI: scan: Defer enumeration of devices with _DEP lists (Mark Langsdorf) [1935928] - ACPI: scan: Evaluate _DEP before adding the device (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Add AMD support to handle _DSM (Mark Langsdorf) [1935928] - ACPI: processor: fix NONE coordination for domain mapping failure (Mark Langsdorf) [1935928] - cpufreq: Fix cpufreq_online() return value on errors (Mark Langsdorf) [1935928] - opp: of: Allow empty opp-table with opp-shared (Mark Langsdorf) [1935928] - dt-bindings: opp: Allow empty OPP tables (Mark Langsdorf) [1935928] - ACPI: Drop acpi_dev_irqresource_disabled() (Mark Langsdorf) [1935928] - resource: Add irqresource_disabled() (Mark Langsdorf) [1935928] - genirq/affinity: Add irq_update_affinity_desc() (Mark Langsdorf) [1935928] - driver core: Add fwnode_init() (Mark Langsdorf) [1935928] - ACPI: scan: Fix up _DEP-related terminology with supplier/consumer (Mark Langsdorf) [1935928] - ACPI: scan: Drop INT3396 from acpi_ignore_dep_ids[] (Mark Langsdorf) [1935928] - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources walks" (Mark Langsdorf) [1935928] - ACPI: scan: Add PNP0D80 to the _DEP exceptions list (Mark Langsdorf) [1935928] - PM: ACPI: Refresh wakeup device power configuration every time (Mark Langsdorf) [1935928] - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() (Mark Langsdorf) [1935928] - ACPI: scan: Call acpi_get_object_info() from acpi_add_single_object() (Mark Langsdorf) [1935928] - ACPI: scan: Add acpi_info_matches_hids() helper (Mark Langsdorf) [1935928] - ACPICA: Update version to 20201113 (Mark Langsdorf) [1935928] - ACPICA: Interpreter: fix memory leak by using existing buffer (Mark Langsdorf) [1935928] - ACPICA: Add function trace macros to improve debugging (Mark Langsdorf) [1935928] - ACPICA: Also handle "orphan" _REG methods for GPIO OpRegions (Mark Langsdorf) [1935928] - ACPICA: Remove extreaneous "the" in comments (Mark Langsdorf) [1935928] - ACPICA: Add 5 new UUIDs to the known UUID table (Mark Langsdorf) [1935928] - ACPI: processor: Drop duplicate setting of shared_cpu_map (Mark Langsdorf) [1935928] - ACPI: EC: Clean up status flags checks in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Untangle error handling in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Simplify error handling in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Rename acpi_ec_is_gpe_raised() (Mark Langsdorf) [1935928] - ACPI: EC: Fold acpi_ec_clear_gpe() into its caller (Mark Langsdorf) [1935928] - ACPI: EC: Eliminate in_interrupt() usage (Mark Langsdorf) [1935928] - ACPI: acpi_drivers.h: Update the kernel doc (Mark Langsdorf) [1935928] - ACPI: acpi_drivers.h: Remove the leftover dead code (Mark Langsdorf) [1935928] - ACPI: tiny-power-button: Simplify the code using module_acpi_driver() (Mark Langsdorf) [1935928] - ACPI: SBS: Simplify the code using module_acpi_driver() (Mark Langsdorf) [1935928] - ACPI: SBS: Simplify the driver init code (Mark Langsdorf) [1935928] - ACPI: debug: Remove the not used function (Mark Langsdorf) [1935928] - ACPI: processor: Remove the duplicated ACPI_PROCESSOR_CLASS macro (Mark Langsdorf) [1935928] - ACPI: watchdog: Replace open coded variant of resource_union() (Mark Langsdorf) [1935928] - PCI/ACPI: Replace open coded variant of resource_union() (Mark Langsdorf) [1935928] - resource: Introduce resource_union() for overlapping resources (Mark Langsdorf) [1935928] - resource: Group resource_overlaps() with other inline helpers (Mark Langsdorf) [1935928] - resource: Simplify region_intersects() by reducing conditionals (Mark Langsdorf) [1935928] - ACPI, APEI: make apei_resources_all static (Mark Langsdorf) [1935928] - mm/mmu_notifier: allocate mmu_notifier_rh in __mmu_notifier_register() (Jeremy Cline) [1909072]- Amends commit ea6244cc248b to include a version string in module info. (Ken Cox) [1955726] - i40e: use minimal admin queue for kdump (Stefan Assmann) [1834962] - i40e: use minimal Rx and Tx ring buffers for kdump (Stefan Assmann) [1834962] - i40e: use minimal Tx and Rx pairs for kdump (Stefan Assmann) [1834962] - net/sched: sch_frag: fix stack OOB read while fragmenting IPv4 packets (Davide Caratti) [1924608] - openvswitch: fix stack OOB read while fragmenting IPv4 packets (Davide Caratti) [1924608] - net/sched: act_ct: fix wild memory access when clearing fragments (Davide Caratti) [1924608] - selinux: fall back to SECURITY_FS_USE_GENFS if no xattr support (Ondrej Mosnacek) [1934093 1915825] - selinux: mark some global variables __ro_after_init (Ondrej Mosnacek) [1934093] - selinux: make selinuxfs_mount static (Ondrej Mosnacek) [1934093] - selinux: drop the unnecessary aurule_callback variable (Ondrej Mosnacek) [1934093] - selinux: remove unused global variables (Ondrej Mosnacek) [1934093] - selinux: fix inconsistency between inode_getxattr and inode_listsecurity (Ondrej Mosnacek) [1934093] - selinux: Fix fall-through warnings for Clang (Ondrej Mosnacek) [1934093] - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling (Ondrej Mosnacek) [1934093] - selinux: allow dontauditx and auditallowx rules to take effect without allowx (Ondrej Mosnacek) [1934093] - selinux: fix error initialization in inode_doinit_with_dentry() (Ondrej Mosnacek) [1934093] - selinux: Fix error return code in sel_ib_pkey_sid_slow() (Ondrej Mosnacek) [1934093] - selinux: access policycaps with READ_ONCE/WRITE_ONCE (Ondrej Mosnacek) [1934093] - selinux: delete repeated words in comments (Ondrej Mosnacek) [1934093] - selinux: add basic filtering for audit trace events (Ondrej Mosnacek) [1934093 1954024] - selinux: add tracepoint on audited events (Ondrej Mosnacek) [1934093 1954024] - selinux: permit removing security.selinux xattr before policy load (Ondrej Mosnacek) [1934093] - exec: Always set cap_ambient in cap_bprm_set_creds (Ondrej Mosnacek) [1934093] - security: remove duplicated include from security.h (Ondrej Mosnacek) [1934093] - security/commoncap: Use xattr security prefix len (Ondrej Mosnacek) [1934093] - LSM: switch to blocking policy update notifiers (Ondrej Mosnacek) [1934093] - security: Make capability_hooks static (Ondrej Mosnacek) [1934093] - securityfs: fix use-after-free on symlink traversal (Ondrej Mosnacek) [1934093] - LSM: Check for NULL cred-security on free (Ondrej Mosnacek) [1934093] - security: check for kstrdup() failure in lsm_append() (Ondrej Mosnacek) [1934093] - scsi: mpt3sas: Block PCI config access from userspace during reset (Tomas Henzl) [1954555] - scsi: mpt3sas: Fix endianness for ActiveCablePowerRequirement (Tomas Henzl) [1954555] - scsi: mpt3sas: Fix error return code of mpt3sas_base_attach() (Tomas Henzl) [1954555] - scsi: mpt3sas: Do not use GFP_KERNEL in atomic context (Tomas Henzl) [1954555] - scsi: mpt3sas: Only one vSES is present even when IOC has multi vSES (Tomas Henzl) [1953421] - scsi: bnx2i: Make bnx2i_process_iscsi_error() simpler and more robust (Nilesh Javali) [1921612] - scsi: bnx2i: Fix bnx2i_set_ccell_info()'s name in description (Nilesh Javali) [1921612] - scsi: bnx2i: Requires MMU (Nilesh Javali) [1921612] - scsi: bnx2i: Remove unnecessary mutex_init() (Nilesh Javali) [1921612] - scsi: bnx2i: Add parameter description and rename another (Nilesh Javali) [1921612] - scsi: bnx2i: Add, remove and edit some function parameter descriptions (Nilesh Javali) [1921612] - scsi: bnx2i: Fix a whole host of kerneldoc issues (Nilesh Javali) [1921612] - scsi: bnx2i: Add missing descriptions for 'attr' parameter (Nilesh Javali) [1921612] - scsi: bnx2i: Fix parameter misnaming in function header (Nilesh Javali) [1921612] - mfd: intel-lpss: Add Intel Alder Lake PCH-P PCI IDs (Steve Best) [1929489] - lib: list_sort.c: add a blank line to avoid kernel-doc warnings (Rafael Aquini) [1900774] - lib/list_sort: fix kerneldoc build error (Rafael Aquini) [1900774] - lib/list_sort: optimize number of calls to comparison function (Rafael Aquini) [1900774] - lib/list_sort: simplify and remove MAX_LIST_LENGTH_BITS (Rafael Aquini) [1900774] - perf bench numa: Fix the condition checks for max number of NUMA nodes (Steve Best) [1936333] - powerpc/perf: Record counter overflow always if SAMPLE_IP is unset (Gustavo Walbon) [1921684] - perf powerpc: Support exposing Performance Monitor Counter SPRs as part of extended regs (Gustavo Walbon) [1921684] - powerpc/perf: Expose Performance Monitor Counter SPR's as part of extended regs (Gustavo Walbon) [1921684] - powerpc/perf: Include PMCs as part of per-cpu cpuhw_events struct (Gustavo Walbon) [1921684] - powerpc/perf: Adds support for programming of Thresholding in P10 (Gustavo Walbon) [1921684] - x86/entry/64: Deduplicate multiple IBRS macros in paranoid_entry (Waiman Long) [1924364] - x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb (Waiman Long) [1924364] - x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always-on STIBP (Waiman Long) [1924364] - x86/bugs/multihit: Fix mitigation reporting when VMX is not in use (Waiman Long) [1924364] - x86/speculation: Merge one test in spectre_v2_user_select_mitigation() (Waiman Long) [1924364] - x86/bugs: Move enum taa_mitigations to bugs.c (Waiman Long) [1924364] - mm/memcg: set memcg when splitting page (Waiman Long) [1937825] - mm/memcg: rename mem_cgroup_split_huge_fixup to split_page_memcg and add nr_pages argument (Waiman Long) [1937825] - mm, tracing: Fix kmem_cache_free trace event to not print stale pointers (Waiman Long) [1937825] - mm: memcontrol: fix get_active_memcg return value (Waiman Long) [1937825] - fs: buffer: use raw page_memcg() on locked page (Waiman Long) [1937825] - mm/list_lru.c: remove kvfree_rcu_local() (Waiman Long) [1937825] - mm: memcontrol: replace the loop with a list_for_each_entry() (Waiman Long) [1937825] - mm/memcontrol: remove redundant NULL check (Waiman Long) [1937825] - mm: page_counter: re-layout structure to reduce false sharing (Waiman Long) [1937825] - mm: kmem: make __memcg_kmem_(un)charge static (Waiman Long) [1937825] - mm: memcg: add swapcache stat for memcg v2 (Waiman Long) [1937825] - mm/memcg: remove rcu locking for lock_page_lruvec function series (Waiman Long) [1937825] - mm/memcg: revise the using condition of lock_page_lruvec function series (Waiman Long) [1937825] - mm: memcontrol: make the slab calculation consistent (Waiman Long) [1937825] - mm: memcontrol: convert NR_FILE_PMDMAPPED account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_SHMEM_PMDMAPPED account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_SHMEM_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_FILE_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_ANON_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: optimize per-lruvec stats counter memory usage (Waiman Long) [1937825] - mm: memcg/slab: pre-allocate obj_cgroups for slab caches with SLAB_ACCOUNT (Waiman Long) [1937825] - mm/slub: minor coding style tweaks (Waiman Long) [1937825] - mm, slub: remove slub_memcg_sysfs boot param and CONFIG_SLUB_MEMCG_SYSFS_ON (Waiman Long) [1937825] - mm, slub: splice cpu and page freelists in deactivate_slab() (Waiman Long) [1937825] - mm, slab, slub: stop taking cpu hotplug lock (Waiman Long) [1937825] - mm, slab, slub: stop taking memory hotplug lock (Waiman Long) [1937825] - mm, slub: stop freeing kmem_cache_node structures on node offline (Waiman Long) [1937825] - mm/slub: disable user tracing for kmemleak caches by default (Waiman Long) [1937825] - mm/slab: minor coding style tweaks (Waiman Long) [1937825] - mm/sl?b.c: remove ctor argument from kmem_cache_flags (Waiman Long) [1937825] - mm, tracing: record slab name for kmem_cache_free() (Waiman Long) [1937825] - mm: fix numa stats for thp migration (Waiman Long) [1937825] - mm: memcg: fix memcg file_dirty numa stat (Waiman Long) [1937825] - mm/memcontrol: fix warning in mem_cgroup_page_lruvec() (Waiman Long) [1937825] - mm: slub: call account_slab_page() after slab page initialization (Waiman Long) [1937825] - mm/hugetlb: fix deadlock in hugetlb_cow error path (Waiman Long) [1937825] - mm/memcontrol:rewrite mem_cgroup_page_lruvec() (Waiman Long) [1937825] - mm/memcg: remove unused definitions (Waiman Long) [1937825] - mm/memcg: warning on !memcg after readahead page charged (Waiman Long) [1937825] - mm/memcg: bail early from swap accounting if memcg disabled (Waiman Long) [1937825] - mm/lru: revise the comments of lru_lock (Waiman Long) [1937825] - mm/lru: introduce relock_page_lruvec() (Waiman Long) [1937825] - mm/lru: replace pgdat lru_lock with lruvec lock (Waiman Long) [1937825] - mm/lru: move lock into lru_note_cost (Waiman Long) [1937825] - mm/swap.c: serialize memcg changes in pagevec_lru_move_fn (Waiman Long) [1937825] - mm/compaction: do page isolation first in compaction (Waiman Long) [1937825] - mm/lru: introduce TestClearPageLRU() (Waiman Long) [1937825] - mm/mlock: remove __munlock_isolate_lru_page() (Waiman Long) [1937825] - mm/mlock: remove lru_lock on TestClearPageMlocked (Waiman Long) [1937825] - mm/vmscan: remove lruvec reget in move_pages_to_lru (Waiman Long) [1937825] - mm/swap.c: fold vm event PGROTATED into pagevec_move_tail_fn (Waiman Long) [1937825] - mm/memcg: add debug checking in lock_page_memcg (Waiman Long) [1937825] - mm: page_idle_get_page() does not need lru_lock (Waiman Long) [1937825] - mm/rmap: stop store reordering issue on page->mapping (Waiman Long) [1937825] - mm/vmscan: remove unnecessary lruvec adding (Waiman Long) [1937825] - mm/thp: narrow lru locking (Waiman Long) [1937825] - mm/thp: simplify lru_add_page_tail() (Waiman Long) [1937825] - mm/thp: use head for head page in lru_add_page_tail() (Waiman Long) [1937825] - mm/thp: move lru_add_page_tail() to huge_memory.c (Waiman Long) [1937825] - mm: slub: convert sysfs sprintf family to sysfs_emit/sysfs_emit_at (Waiman Long) [1937825] - mm: truncate_complete_page() does not exist any more (Waiman Long) [1937825] - mm/vmscan: drop unneeded assignment in kswapd() (Waiman Long) [1937825] - mm: memcontrol: account pagetables per node (Waiman Long) [1937825] - mm: move lruvec stats update functions to vmstat.h (Waiman Long) [1937825] - mm/memcg: remove incorrect comment (Waiman Long) [1937825] - mm: memcontrol: sssign boolean values to a bool variable (Waiman Long) [1937825] - mm: memcg/slab: rename *_lruvec_slab_state to *_lruvec_kmem_state (Waiman Long) [1937825] - mm: memcg: remove obsolete memcg_has_children() (Waiman Long) [1937825] - mm/page_counter: use page_counter_read in page_counter_set_max (Waiman Long) [1937825] - cgroup: remove obsoleted broken_hierarchy and warned_broken_hierarchy (Waiman Long) [1937825] - docs: cgroup-v1: reflect the deprecation of the non-hierarchical mode (Waiman Long) [1937825] - mm: memcg: deprecate the non-hierarchical mode (Waiman Long) [1937825] - mm: memcg: fix obsolete code comments (Waiman Long) [1937825] - mm/memcg: update page struct member in comments (Waiman Long) [1937825] - mm/rmap: always do TTU_IGNORE_ACCESS (Waiman Long) [1937825] - mm: memcontrol: eliminate redundant check in __mem_cgroup_insert_exceeded() (Waiman Long) [1937825] - mm: memcontrol: remove unused mod_memcg_obj_state() (Waiman Long) [1937825] - mm: memcontrol: add file_thp, shmem_thp to memory.stat (Waiman Long) [1937825] - mm/gup: combine put_compound_head() and unpin_user_page() (Waiman Long) [1937825] - mm: Convert page kmemcg type to a page memcg flag (Waiman Long) [1937825] - mm: Introduce page memcg flags (Waiman Long) [1937825] - mm: memcontrol/slab: Use helpers to access slab page's memcg_data (Waiman Long) [1937825] - mm: memcontrol: Use helpers to read page's memcg data (Waiman Long) [1937825] - hugetlbfs: fix anon huge page migration race (Waiman Long) [1937825] - mm: memcontrol: fix missing wakeup polling thread (Waiman Long) [1937825] - mm/gup: use unpin_user_pages() in __gup_longterm_locked() (Waiman Long) [1937825] - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit (Waiman Long) [1937825] - mm/compaction: stop isolation if too many pages are isolated and we have pages to migrate (Waiman Long) [1937825] - mm/compaction: count pages and stop correctly during page isolation (Waiman Long) [1937825] - mm: kmem: enable kernel memcg accounting from interrupt contexts (Waiman Long) [1937825] - mm: kmem: prepare remote memcg charging infra for interrupt contexts (Waiman Long) [1937825] - mm: kmem: remove redundant checks from get_obj_cgroup_from_current() (Waiman Long) [1937825] - mm, memcg: rework remote charging API to support nesting (Waiman Long) [1937825] - mm: use self-explanatory macros rather than "2" (Waiman Long) [1937825] - mm/vmscan: allow arbitrary sized pages to be paged out (Waiman Long) [1937825] - mm/rmap: fix assumptions of THP size (Waiman Long) [1937825] - mm/huge_memory: fix can_split_huge_page assumption of THP size (Waiman Long) [1937825] - mm/huge_memory: fix page_trans_huge_mapcount assumption of THP size (Waiman Long) [1937825] - mm/huge_memory: fix split assumption of page size (Waiman Long) [1937825] - mm/huge_memory: fix total_mapcount assumption of page size (Waiman Long) [1937825] - mm/page_owner: change split_page_owner to take a count (Waiman Long) [1937825] - mm/memory: remove page fault assumption of compound page size (Waiman Long) [1937825] - mm/filemap: fix page cache removal for arbitrary sized THPs (Waiman Long) [1937825] - mm/vmscan: fix comments for isolate_lru_page() (Waiman Long) [1937825] - mm/vmscan: fix infinite loop in drop_slab_node (Waiman Long) [1937825] - mm: move call to compound_head() in release_pages() (Waiman Long) [1937825] - mm: account PMD tables like PTE tables (Waiman Long) [1937825] - mm/memcg: fix device private memcg accounting (Waiman Long) [1937825] - mm: memcontrol: add the missing numa_stat interface for cgroup v2 (Waiman Long) [1937825] - mm: remove activate_page() from unuse_pte() (Waiman Long) [1937825] - bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag (Waiman Long) [1937825] - mm/thp: fix __split_huge_pmd_locked() for migration PMD (Waiman Long) [1937825] - mm: fix check_move_unevictable_pages() on THP (Waiman Long) [1937825] - mm: migration of hugetlbfs page skip memcg (Waiman Long) [1937825] - mm: and drivers core: Convert hugetlb_report_node_meminfo to sysfs_emit (Waiman Long) [1937825] - drivers core: Miscellaneous changes for sysfs_emit (Waiman Long) [1937825] - drivers core: Reindent a couple uses around sysfs_emit (Waiman Long) [1937825] - drivers core: Remove strcat uses around sysfs_emit and neaten (Waiman Long) [1937825] - drivers core: Use sysfs_emit and sysfs_emit_at for show(device *...) functions (Waiman Long) [1937825] - sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output (Waiman Long) [1937825] - mm: fix pin vs. gup mismatch with gate pages (Waiman Long) [1937825] - mm/gup: use a standard migration target allocation callback (Waiman Long) [1937825] - mm/hugetlb: make hugetlb migration callback CMA aware (Waiman Long) [1937825] - mm/gup: restrict CMA region by using allocation scope API (Waiman Long) [1937825] - mm/page_alloc: remove a wrapper for alloc_migration_target() (Waiman Long) [1937825] - mm/mempolicy: use a standard migration target allocation callback (Waiman Long) [1937825] - mm/migrate: introduce a standard migration target allocation function (Waiman Long) [1937825] - mm/migrate: clear __GFP_RECLAIM to make the migration callback consistent with regular THP allocations (Waiman Long) [1937825] - mm/hugetlb: unify migration callbacks (Waiman Long) [1937825] - mm/migrate: move migration helper from .h to .c (Waiman Long) [1937825] - mm/page_isolation: prefer the node of the source page (Waiman Long) [1937825] - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem (Waiman Long) [1937825] - mm, oom: show process exiting information in __oom_kill_process() (Waiman Long) [1937825] - doc, mm: clarify /proc//oom_score value range (Waiman Long) [1937825] - doc, mm: sync up oom_score_adj documentation (Waiman Long) [1937825] - mm, oom: make the calculation of oom badness more accurate (Waiman Long) [1937825] - mm: vmscan: consistent update to pgrefill (Waiman Long) [1937825] - mm/vmscan.c: fix typo (Waiman Long) [1937825] - mm: memcontrol: account kernel stack per node (Waiman Long) [1937825] - mm/hugetlb.c: fix pages per hugetlb calculation (Waiman Long) [1937825] - doc: THP CoW fault no longer allocate THP (Waiman Long) [1937825] - driver core: platform: expose numa_node to users in sysfs (Waiman Long) [1937825] - nilfs2: fix null pointer dereference at nilfs_segctor_do_construct() (Waiman Long) [1937825] - mm, memcg: fix some typos in memcontrol.c (Waiman Long) [1937825] - mm/vmsan: fix some typos in comment (Waiman Long) [1937825] - mm: thp: don't need to drain lru cache when splitting and mlocking THP (Waiman Long) [1937825] - mm/vmscan: update the comment of should_continue_reclaim() (Waiman Long) [1937825] - mm/vmscan.c: change prototype for shrink_page_list (Waiman Long) [1937825] - mm/vmscan: count layzfree pages and fix nr_isolated_* mismatch (Waiman Long) [1937825] - mm/vmscan.c: use update_lru_size() in update_lru_sizes() (Waiman Long) [1937825] - mm: simplify calling a compound page destructor (Waiman Long) [1937825] - mm/page_alloc: integrate classzone_idx and high_zoneidx (Waiman Long) [1937825] - mm/page_alloc: use ac->high_zoneidx for classzone_idx (Waiman Long) [1937825] - mm/page_alloc.c: extract check_[new|free]_page_bad() common part to page_bad_reason() (Waiman Long) [1937825] - mm/page_alloc.c: rename free_pages_check() to check_free_page() (Waiman Long) [1937825] - mm/page_alloc.c: rename free_pages_check_bad() to check_free_page_bad() (Waiman Long) [1937825] - mm/page_alloc.c: bad_flags is not necessary for bad_page() (Waiman Long) [1937825] - mm/page_alloc.c: bad_[reason|flags] is not necessary when PageHWPoison (Waiman Long) [1937825] - scs: Report SCS usage in bytes rather than number of entries (Waiman Long) [1937825] - scs: Move accounting into alloc/free functions (Waiman Long) [1937825] - mm/vmscan: remove unnecessary argument description of isolate_lru_pages() (Waiman Long) [1937825] - scs: Add support for stack usage debugging (Waiman Long) [1937825] - scs: Add page accounting for shadow call stack allocations (Waiman Long) [1937825] - scs: Add support for Clang's Shadow Call Stack (SCS) (Waiman Long) [1937825] - mm/migrate.c: unify "not queued for migration" handling in do_pages_move() (Waiman Long) [1937825] - mm/migrate.c: check pagelist in move_pages_and_store_status() (Waiman Long) [1937825] - mm/migrate.c: wrap do_move_pages_to_node() and store_status() (Waiman Long) [1937825] - mm/migrate.c: no need to check for i > start in do_pages_move() (Waiman Long) [1937825] - mm/hugetlb: remove unnecessary memory fetch in PageHeadHuge() (Waiman Long) [1937825] - hugetlbfs: Use i_mmap_rwsem to address page fault/truncate race (Waiman Long) [1937825] - hugetlbfs: use i_mmap_rwsem for more pmd sharing synchronization (Waiman Long) [1937825] - mm,thp,compaction,cma: allow THP migration for CMA allocations (Waiman Long) [1937825] - mm,compaction,cma: add alloc_contig flag to compact_control (Waiman Long) [1937825] - mm/vmscan.c: do_try_to_free_pages(): clean code by removing unnecessary assignment (Waiman Long) [1937825] - mm/vmscan.c: make may_enter_fs bool in shrink_page_list() (Waiman Long) [1937825] - mm/vmscan.c: fix data races using kswapd_classzone_idx (Waiman Long) [1937825] - mm/vmscan.c: remove cpu online notification for now (Waiman Long) [1937825] - mm: vmscan: replace open codings to NUMA_NO_NODE (Waiman Long) [1937825] - mm: swap: make page_evictable() inline (Waiman Long) [1937825] - mm/swap.c: not necessary to export __pagevec_lru_add() (Waiman Long) [1937825] - mm/gup: fix omission of check on FOLL_LONGTERM in gup fast path (Waiman Long) [1937825] - mm: dump_page(): additional diagnostics for huge pinned pages (Waiman Long) [1937825] - mm: improve dump_page() for compound pages (Waiman Long) [1937825] - selftests/vm: run_vmtests: invoke gup_benchmark with basic FOLL_PIN coverage (Waiman Long) [1937825] - mm/gup_benchmark: support pin_user_pages() and related calls (Waiman Long) [1937825] - mm/gup: /proc/vmstat: pin_user_pages (FOLL_PIN) reporting (Waiman Long) [1937825] - mm/gup: page->hpage_pinned_refcount: exact pin counts for huge pages (Waiman Long) [1937825] - mm/gup: track FOLL_PIN pages (Waiman Long) [1937825] - mm/gup: pass gup flags to two more routines (Waiman Long) [1937825] - mm: introduce page_ref_sub_return() (Waiman Long) [1937825] - mm/gup: pass a flags arg to __gup_device_* functions (Waiman Long) [1937825] - mm/gup: split get_user_pages_remote() into two routines (Waiman Long) [1937825] - sysfs: fix static inline declaration of sysfs_groups_change_owner() (Waiman Long) [1937825] - drivers/base/cpu: Simplify s*nprintf() usages (Waiman Long) [1937825] - drivers/base/cpu: Use scnprintf() for avoiding potential buffer overflow (Waiman Long) [1937825] - sysfs: add sysfs_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_group{s}_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_link_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_file_change_owner() (Waiman Long) [1937825] - mm/huge_memory.c: reduce critical section protected by split_queue_lock (Waiman Long) [1937825] - mm/huge_memory.c: use head to emphasize the purpose of page (Waiman Long) [1937825] - mm/huge_memory.c: use head to check huge zero page (Waiman Long) [1937825] - mm/gup: move try_get_compound_head() to top, fix minor issues (Waiman Long) [1937825] - userfaultfd: wrap the common dst_vma check into an inlined function (Waiman Long) [1937825] - userfaultfd: remove unnecessary WARN_ON() in __mcopy_atomic_hugetlb() (Waiman Long) [1937825] - userfaultfd: use vma_pagesize for all huge page size calculation (Waiman Long) [1937825] - mm/hugetlb: avoid looping to the same hugepage if !pages and !vmas (Waiman Long) [1937825] - hugetlb: remove unused hstate in hugetlb_fault_mutex_hash() (Waiman Long) [1937825] - hugetlbfs: convert macros to static inline, fix sparse warning (Waiman Long) [1937825] - hugetlbfs: hugetlb_fault_mutex_hash() cleanup (Waiman Long) [1937825] - mm/gup.c: allow CMA migration to propagate errors back to caller (Waiman Long) [1937825] - mm/gup_benchmark: fix MAP_HUGETLB case (Waiman Long) [1937825] - mm/gup_benchmark: add a missing "w" to getopt string (Waiman Long) [1937825] - mm, page_owner: rename flag indicating that page is allocated (Waiman Long) [1937825] - mm, page_owner: decouple freeing stack trace from debug_pagealloc (Waiman Long) [1937825] - mm, page_owner: fix off-by-one error in __set_page_owner_handle() (Waiman Long) [1937825] - mm/filemap.c: don't initiate writeback if mapping has no dirty pages (Waiman Long) [1937825] - mm, page_owner, debug_pagealloc: save and dump freeing stack trace (Waiman Long) [1937825] - mm, page_owner: keep owner info when freeing the page (Waiman Long) [1937825] - mm, page_owner: record page owner for each subpage (Waiman Long) [1937825] - mm: introduce page_size() (Waiman Long) [1937825] - mm, tracing: Print symbol name for call_site in trace events (Waiman Long) [1937825] - mm/gup.c: mark undo_dev_pagemap as __maybe_unused (Waiman Long) [1937825] - mm, memcg: introduce memory.events.local (Waiman Long) [1937825] - memcg, fsnotify: no oom-kill for remote memcg charging (Waiman Long) [1937825] - mm/swap_state.c: simplify total_swapcache_pages() with get_swap_device() (Waiman Long) [1937825] - mm: make !CONFIG_HUGE_PAGE wrappers into static inlines (Waiman Long) [1937825] - include/linux/hugetlb.h: convert to use vm_fault_t (Waiman Long) [1937825] - mm/page_ext.c: fix an imbalance with kmemleak (Waiman Long) [1937825] - mm/hugetlb: add prot_modify_start/commit sequence for hugetlb update (Waiman Long) [1937825] - iov_iter: optimize page_copy_sane() (Waiman Long) [1937825] - mm: remove __hugepage_set_anon_rmap() (Waiman Long) [1937825] - mm: remove pte_lock_deinit() (Waiman Long) [1937825] - mm/debug.c: make "migrate_reason_names[]" const char * (Waiman Long) [1937825] - vmscan: return NODE_RECLAIM_NOSCAN in node_reclaim() when CONFIG_NUMA is n (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: add MAP_HUGETLB option (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: add MAP_SHARED option (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: allow user specified file (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: fix 'write' flag usage (Waiman Long) [1937825] - mm/page_ext.c: constify lookup_page_ext() argument (Waiman Long) [1937825] - mm, page_alloc: actually ignore mempolicies for high priority allocations (Waiman Long) [1937825] - thp: use mm_file_counter to determine update which rss counter (Waiman Long) [1937825]- RDMA/cxgb4: Fix the reported max_recv_sge value (Kamal Heib) [1931850 1918264] - RDMA/qedr: Fix kernel panic when trying to access recv_cq (Kamal Heib) [1931850] - RDMA/addr: Be strict with gid size (Kamal Heib) [1931850] - IB/hfi1: Fix probe time panic when AIP is enabled with a buggy BIOS (Kamal Heib) [1931850 1921704 1953593] - RDMA/rxe: Fix errant WARN_ONCE in rxe_completer() (Kamal Heib) [1931850] - RDMA/rxe: Fix extra deref in rxe_rcv_mcast_pkt() (Kamal Heib) [1931850] - RDMA/rxe: Fix FIXME in rxe_udp_encap_recv() (Kamal Heib) [1931850] - RDMA/rxe: Fix missed IB reference counting in loopback (Kamal Heib) [1931850] - RDMA/uverbs: Fix kernel-doc warning of _uverbs_alloc (Kamal Heib) [1931850] - RDMA/rxe: Fix missing kconfig dependency on CRYPTO (Kamal Heib) [1931850] - RDMA/cm: Fix IRQ restore in ib_send_cm_sidr_rep (Kamal Heib) [1931850] - RDMA/rxe: Remove unused pkt->offset (Kamal Heib) [1931850] - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent (Kamal Heib) [1931850] - RDMA/core: Fix kernel doc warnings for ib_port_immutable_read() (Kamal Heib) [1931850] - RDMA/ipoib: Remove racy Subnet Manager sendonly join checks (Kamal Heib) [1931850] - RDMA/rxe: Cleanup init_send_wqe (Kamal Heib) [1931850] - RDMA/rxe: Fix minor coding style issues (Kamal Heib) [1931850] - RDMA/rxe: Correct skb on loopback path (Kamal Heib) [1931850] - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt (Kamal Heib) [1931850] - RDMA/rxe: Remove useless code in rxe_recv.c (Kamal Heib) [1931850] - RDMA/rxe: Fix coding error in rxe_recv.c (Kamal Heib) [1931850] - RDMA/core: Introduce and use API to read port immutable data (Kamal Heib) [1931850] - RDMA/pvrdma: Replace spin_lock_irqsave with spin_lock in hard IRQ (Kamal Heib) [1931850] - IB/core: Use valid port number to check link layer (Kamal Heib) [1931850] - IB/cm: Avoid a loop when device has 255 ports (Kamal Heib) [1931850] - RDMA/efa: Remove unused syndrome enum values (Kamal Heib) [1931850] - RDMA/efa: Remove unused 'select' field from get/set feature command descriptor (Kamal Heib) [1931850] - RDMA/efa: Remove unnecessary indentation in defs comments (Kamal Heib) [1931850] - RDMA/efa: Remove duplication of upper/lower_32_bits (Kamal Heib) [1931850] - RDMA/efa: Remove redundant NULL pointer check of CQE (Kamal Heib) [1931850] - RDMA/hw/hfi1/rc: Demote incorrectly populated kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/verbs: Demote non-conforming doc header and fix a misspelling (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/user_exp_rcv: Demote half-documented and kernel-doc abuses (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/ud: Fix a little more doc-rot (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/uc: Fix a little doc-rot (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/tid_rdma: Fix a plethora of kernel-doc issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/sdma: Fix misnaming of 'sdma_send_txlist()'s 'count_out' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/ruc: Fix a small formatting and description issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/qp: Fix some formatting issues and demote kernel-doc abuse (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/rc: Fix a few function documentation issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/pio_copy: Provide entry for 'pio_copy()'s 'dd' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/pcie: Demote kernel-doc abuses (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/netdev_rx: Fix misdocumentation of the 'start_id' param (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/qp: Fix kernel-doc formatting problem (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mad: Fix misspelling of 'rvt_process_mad()'s 'in_mad_size' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/msix: Add description for 'name' and remove superfluous param 'idx' (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/mad: Demote half-completed kernel-doc header fix another (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/iowait: Demote half-completed kernel-doc and fix formatting issue in another (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/srq: Fix a couple of kernel-doc issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/intr: Fix some kernel-doc formatting issues (Kamal Heib) [1931850 1921704] - RDMA/rxe: Replace missing rxe_pool_get_index_locked (Kamal Heib) [1931850] - RDMA/rxe: Remove unneeded pool->state (Kamal Heib) [1931850] - RDMA/rxe: Remove references to ib_device and pool (Kamal Heib) [1931850] - RDMA/rxe: Remove RXE_POOL_ATOMIC (Kamal Heib) [1931850] - RDMA/rxe: Fix misleading comments and names (Kamal Heib) [1931850] - RDMA/rxe: Fix bug in rxe_alloc() (Kamal Heib) [1931850] - IB/umad: Return EPOLLERR in case of when device disassociated (Kamal Heib) [1931850] - IB/umad: Return EIO in case of when device disassociated (Kamal Heib) [1931850] - RDMA/sw/rdmavt/qp: Fix a bunch of kernel-doc misdemeanours (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mr: Fix some issues related to formatting and missing descriptions (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/file_ops: Fix' manage_rcvq()'s 'arg' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/exp_rcv: Fix some kernel-doc formatting issues (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mcast: Demote incomplete kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mad: Fix 'rvt_process_mad()'s documentation header (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/chip: Fix a bunch of kernel-doc formatting and spelling issues (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/cq: Demote hardly complete kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/vt: Fix formatting issue and update description for 'context' (Kamal Heib) [1931850 1921704] - RDMA/hw/efa/efa_com: Stop using param description notation for non-params (Kamal Heib) [1931850] - RDMA/uverbs: Don't set rcq for a QP if qp_type is IB_QPT_XRC_INI (Kamal Heib) [1931850] - RDMA/core/iwpm_msg: Add proper descriptions for 'skb' param (Kamal Heib) [1931850] - RDMA/core/iwpm_util: Fix some param description misspellings (Kamal Heib) [1931850] - RDMA/core/counters: Demote non-conformant kernel-doc headers (Kamal Heib) [1931850] - RDMA/core/restrack: Fix kernel-doc formatting issue (Kamal Heib) [1931850] - RDMA/core/sa_query: Demote non-conformant kernel-doc header (Kamal Heib) [1931850] - RDMA/core/multicast: Provide description for 'ib_init_ah_from_mcmember()'s 'rec' param (Kamal Heib) [1931850] - RDMA/core/roce_gid_mgmt: Fix misnaming of 'rdma_roce_rescan_device()'s param 'ib_dev' (Kamal Heib) [1931850] - RDMA/core/cache: Fix some misspellings, missing and superfluous param descriptions (Kamal Heib) [1931850] - RDMA/core: device: Fix formatting in worthy kernel-doc header and demote another (Kamal Heib) [1931850] - IB/iser: Simplify prot_caps setting (Kamal Heib) [1931850] - IB/iser: Enforce iser_max_sectors to be greater than 0 (Kamal Heib) [1931850] - IB/iser: Protect iscsi_max_lun module param using callback (Kamal Heib) [1931850] - IB/iser: Remove unneeded semicolons (Kamal Heib) [1931850] - IB/isert: Simplify signature cap check (Kamal Heib) [1931850] - IB/isert: Remove unneeded semicolon (Kamal Heib) [1931850] - IB/isert: Remove unneeded new lines (Kamal Heib) [1931850] - RDMA/nldev: Return an error message on failure to turn auto mode (Kamal Heib) [1931850] - RDMA/rxe: Fix race in rxe_mcast.c (Kamal Heib) [1931850] - RDMA/rxe: Add unlocked versions of pool APIs (Kamal Heib) [1931850] - RDMA/rxe: Make add/drop key/index APIs type safe (Kamal Heib) [1931850] - RDMA/rxe: Make pool lookup and alloc APIs type safe (Kamal Heib) [1931850] - RDMA/rxe: Add elem_offset field to rxe_type_info (Kamal Heib) [1931850] - RDMA/rxe: Let pools support both keys and indices (Kamal Heib) [1931850] - RDMA/rxe: Remove unneeded RXE_POOL_ATOMIC flag (Kamal Heib) [1931850] - RDMA/rxe: Add check for supported QP types (Kamal Heib) [1931850] - RDMA: Use kzalloc for allocating only one thing (Kamal Heib) [1931850] - RDMA/cma: Delete useless kfree code (Kamal Heib) [1931850] - RDMA/hfi1: remove h from printk format specifier (Kamal Heib) [1931850 1921704] - RDMA: Convert comma to semicolon (Kamal Heib) [1931850] - net: devlink: Add unused port flavour (Petr Oros) [1943273] - devlink: add .trap_group_action_set() callback (Petr Oros) [1943273] - devlink: add parser error drop packet traps (Petr Oros) [1943273] - drop_monitor: Perform cleanup upon probe registration failure (Petr Oros) [1943273] - selftests: net: Add drop monitor test (Petr Oros) [1943273] - drop_monitor: Filter control packets in drop monitor (Petr Oros) [1943273] - drop_monitor: Remove duplicate struct (Petr Oros) [1943273] - drop_monitor: Remove no longer used functions (Petr Oros) [1943273] - drop_monitor: Convert to using devlink tracepoint (Petr Oros) [1943273] - drop_monitor: Prepare probe functions for devlink tracepoint (Petr Oros) [1943273] - devlink: Add a tracepoint for trap reports (Petr Oros) [1943273] - net: devlink: fix reporter dump dumpit (Petr Oros) [1943273] - devlink: have genetlink code to parse the attrs during dumpit (Petr Oros) [1943273] - netfilter: nf_tables: add direct calls for all builtin expressions (Florian Westphal) [1953320] - netfilter: nf_tables: handle meta/lookup with direct call (Florian Westphal) [1953320] - ionic: linearize tso skb with too many frags (Jonathan Toppins) [1940696] - i40e: fix the restart auto-negotiation after FEC modified (Stefan Assmann) [1725560] - ovl: skip getxattr of security labels (Miklos Szeredi) [1956340] - ovl: fix dentry leak in ovl_get_redirect (Miklos Szeredi) [1956340] - ovl: avoid deadlock on directory ioctl (Miklos Szeredi) [1956340] - cap: fix conversions on getxattr (Miklos Szeredi) [1956340] - ovl: perform vfs_getxattr() with mounter creds (Miklos Szeredi) [1956340] - ovl: add warning on user_ns mismatch (Miklos Szeredi) [1956340] - ovl: unprivieged mounts (Miklos Szeredi) [1956340] - ovl: do not get metacopy for userxattr (Miklos Szeredi) [1956340] - ovl: do not fail because of O_NOATIME (Miklos Szeredi) [1956340] - ovl: do not fail when setting origin xattr (Miklos Szeredi) [1956340] - ovl: user xattr (Miklos Szeredi) [1956340] - ovl: simplify file splice (Miklos Szeredi) [1956340] - ovl: make ioctl() safe (Miklos Szeredi) [1956340] - ovl: check privs before decoding file handle (Miklos Szeredi) [1956340] - vfs: verify source area in vfs_dedupe_file_range_one() (Miklos Szeredi) [1956340] - vfs: move cap_convert_nscap() call into vfs_setxattr() (Miklos Szeredi) [1956340] - ovl: fix incorrect extent info in metacopy case (Miklos Szeredi) [1956340] - ovl: expand warning in ovl_d_real() (Miklos Szeredi) [1956340] - ovl: document lower modification caveats (Miklos Szeredi) [1956340] - ovl: warn about orphan metacopy (Miklos Szeredi) [1956340] - ovl: doc clarification (Miklos Szeredi) [1956340] - ovl: introduce new "uuid=off" option for inodes index feature (Miklos Szeredi) [1956340] - ovl: propagate ovl_fs to ovl_decode_real_fh and ovl_encode_real_fh (Miklos Szeredi) [1956340] - ovl: use generic vfs_ioc_setflags_prepare() helper (Miklos Szeredi) [1956340] - ovl: support [S|G]ETFLAGS and FS[S|G]ETXATTR ioctls for directories (Miklos Szeredi) [1956340] - ovl: rearrange ovl_can_list() (Miklos Szeredi) [1956340] - ovl: enumerate private xattrs (Miklos Szeredi) [1956340] - ovl: pass ovl_fs down to functions accessing private xattrs (Miklos Szeredi) [1956340] - ovl: drop flags argument from ovl_do_setxattr() (Miklos Szeredi) [1956340] - ovl: adhere to the vfs_ vs. ovl_do_ conventions for xattrs (Miklos Szeredi) [1956340] - ovl: use ovl_do_getxattr() for private xattr (Miklos Szeredi) [1956340] - ovl: fold ovl_getxattr() into ovl_get_redirect_xattr() (Miklos Szeredi) [1956340] - ovl: clean up ovl_getxattr() in copy_up.c (Miklos Szeredi) [1956340] - duplicate ovl_getxattr() (Miklos Szeredi) [1956340] - ovl: provide a mount option "volatile" (Miklos Szeredi) [1956340 1928211] - ovl: check for incompatible features in work dir (Miklos Szeredi) [1956340 1928211] - ovl: fix lookup of indexed hardlinks with metacopy (Miklos Szeredi) [1956340] - ovl: fix unneeded call to ovl_change_flags() (Miklos Szeredi) [1956340] - ovl: fix mount option checks for nfs_export with no upperdir (Miklos Szeredi) [1956340] - ovl: force read-only sb on failure to create index dir (Miklos Szeredi) [1956340] - ovl: fix regression with re-formatted lower squashfs (Miklos Szeredi) [1956340] - ovl: fix oops in ovl_indexdir_cleanup() with nfs_export=on (Miklos Szeredi) [1956340] - ovl: relax WARN_ON() when decoding lower directory file handle (Miklos Szeredi) [1956340] - ovl: remove not used argument in ovl_check_origin (Miklos Szeredi) [1956340] - ovl: change ovl_copy_up_flags static (Miklos Szeredi) [1956340] - ovl: inode reference leak in ovl_is_inuse true case. (Miklos Szeredi) [1956340] - ovl: remove unnecessary lock check (Miklos Szeredi) [1956340] - ovl: make oip->index bool (Miklos Szeredi) [1956340] - ovl: only pass ->ki_flags to ovl_iocb_to_rwf() (Miklos Szeredi) [1956340] - ovl: make private mounts longterm (Miklos Szeredi) [1956340] - ovl: get rid of redundant members in struct ovl_fs (Miklos Szeredi) [1956340] - ovl: add accessor for ofs->upper_mnt (Miklos Szeredi) [1956340] - ovl: drop negative dentry in upper layer (Miklos Szeredi) [1956340] - ovl: check permission to open real file (Miklos Szeredi) [1956340] - ovl: call secutiry hook in ovl_real_ioctl() (Miklos Szeredi) [1956340] - ovl: verify permissions in ovl_path_open() (Miklos Szeredi) [1956340] - ovl: switch to mounter creds in readdir (Miklos Szeredi) [1956340] - ovl: pass correct flags for opening real directory (Miklos Szeredi) [1956340] - ovl: whiteout inode sharing (Miklos Szeredi) [1956340] - ovl: inherit SB_NOSEC flag from upperdir (Miklos Szeredi) [1956340] - ovl: skip overlayfs superblocks at global sync (Miklos Szeredi) [1956340] - ovl: index dir act as work dir (Miklos Szeredi) [1956340] - ovl: prepare to copy up without workdir (Miklos Szeredi) [1956340] - ovl: cleanup non-empty directories in ovl_indexdir_cleanup() (Miklos Szeredi) [1956340] - ocxl: Add new kernel traces (Steve Best) [1907530] - ocxl: Add mmu notifier (Steve Best) [1907530] - ocxl: Update the Process Element Entry (Steve Best) [1907530] - ocxl: Initiate a TLB invalidate command (Steve Best) [1907530] - ocxl: Assign a register set to a Logical Partition (Steve Best) [1907530] - powerpc/mce: Remove per cpu variables from MCE handlers (Gustavo Walbon) [1921683] - powerpc/mce: Reduce the size of event arrays (Gustavo Walbon) [1921683] - tools/power turbostat: Support Ice Lake D (Prarit Bhargava) [1943439] - PM: hibernate: x86: Use crc32 instead of md5 for hibernation e820 integrity check (Chris von Recklinghausen) [1944636] - vhost/vsock: add IOTLB API support (Stefano Garzarella) [1894101] - vhost: Fix vhost_vq_reset() (Laurent Vivier) [1919126] - perf trace: Fix race in signal handling (Michael Petlan) [1928380] - scsi: sd: sd_zbc: Don't pass GFP_NOIO to kvcalloc (Ewan D. Milne) [1953699] - sd_zbc: clear zone resources for non-zoned case (Ewan D. Milne) [1953699] - scsi: scsi_debug: Fix a memory leak (Ewan D. Milne) [1953699] - scsi: sd: Warn if unsupported ZBC device is probed (Ewan D. Milne) [1953699] - scsi: core: Add 'set_status_byte()' accessor (Ewan D. Milne) [1953699] - scsi: scsi_debug: Do not set COMMAND_COMPLETE (Ewan D. Milne) [1953699] - scsi: scsi_transport_srp: Don't block target in failfast state (Ewan D. Milne) [1953699] - scsi: scsi_debug: Fix memleak in scsi_debug_init() (Ewan D. Milne) [1953699] - scsi: core: Fix -Wformat for scsi_host (Ewan D. Milne) [1953699] - scsi: doc: Fix some kernel-doc markups (Ewan D. Milne) [1953699] - scsi: sr: Initialize ->cmd_len (Ewan D. Milne) [1953699] - scsi: core: Set sc_data_direction to DMA_NONE for no-transfer commands (Ewan D. Milne) [1953699] - scsi: core: Remove scsi_setup_cmnd() and scsi_setup_fs_cmnd() (Ewan D. Milne) [1953699] - scsi: core: Clean up allocation and freeing of sgtables (Ewan D. Milne) [1953699] - scsi: core: Rename scsi_mq_prep_fn() to scsi_prepare_cmd() (Ewan D. Milne) [1953699] - scsi: core: Rename scsi_prep_state_check() to scsi_device_state_check() (Ewan D. Milne) [1953699] - scsi: core: Use rq_dma_dir in scsi_setup_cmnd() (Ewan D. Milne) [1953699] - scsi: core: Remove scsi_init_cmd_errh (Ewan D. Milne) [1953699] - scsi: sd: Allow user to configure command retries (Ewan D. Milne) [1953699] - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks (Ewan D. Milne) [1953699] - scsi: sd_zbc: Improve zone revalidation (Ewan D. Milne) [1953699] - scsi: sd_zbc: Don't limit max_zone_append sectors to max_hw_sectors (Ewan D. Milne) [1953699] - scsi: sd_zbc: Remove unused inline functions (Ewan D. Milne) [1953699] - nvme: fix the nsid value to print in nvme_validate_or_alloc_ns (Gopal Tiwari) [1921591] - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a Samsung PM1725a (Gopal Tiwari) [1921591] - nvme-rdma: Fix a use after free in nvmet_rdma_write_data_done (Gopal Tiwari) [1921591] - nvme-core: check ctrl css before setting up zns (Gopal Tiwari) [1921591] - nvme-fc: fix racing controller reset and create association (Gopal Tiwari) [1921591] - nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been aborted (Gopal Tiwari) [1921591] - nvme-fc: set NVME_REQ_CANCELLED in nvme_fc_terminate_exchange() (Gopal Tiwari) [1921591] - nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request() (Gopal Tiwari) [1921591] - nvme: simplify error logic in nvme_validate_ns() (Gopal Tiwari) [1921591] - nvme: set max_zone_append_sectors nvme_revalidate_zones (Gopal Tiwari) [1921591] - nvmet: model_number must be immutable once set (Gopal Tiwari) [1921591] - nvme-fabrics: fix kato initialization (Gopal Tiwari) [1921591] - nvme-hwmon: Return error code when registration fails (Gopal Tiwari) [1921591] - nvme-pci: add quirks for Lexar 256GB SSD (Gopal Tiwari) [1921591] - nvme-pci: mark Kingston SKC2000 as not supporting the deepest power state (Gopal Tiwari) [1921591] - nvme-pci: mark Seagate Nytro XM1440 as QUIRK_NO_NS_DESC_LIST. (Gopal Tiwari) [1921591] - nvme-tcp: fix crash triggered with a dataless request submission (Gopal Tiwari) [1921591] - nvme-hwmon: rework to avoid devm allocation (Gopal Tiwari) [1921591] - nvme: add 48-bit DMA address quirk for Amazon NVMe controllers (Gopal Tiwari) [1921591] - nvmet: remove else at the end of the function (Gopal Tiwari) [1921591] - nvmet: add helper to report invalid opcode (Gopal Tiwari) [1921591] - nvmet: add nvmet_req_subsys() helper (Gopal Tiwari) [1921591] - nvmet: use invalid cmd opcode helper (Gopal Tiwari) [1921591] - nvmet: use invalid cmd opcode helper (Gopal Tiwari) [1921591] - nvmet-fc: add a missing __rcu annotation to nvmet_fc_tgt_assoc.queues (Gopal Tiwari) [1921591] - nvme-multipath: set nr_zones for zoned namespaces (Gopal Tiwari) [1921591] - nvmet: make nvmet_find_namespace() req based (Gopal Tiwari) [1921591] - nvmet: set status to 0 in case for invalid nsid (Gopal Tiwari) [1921591] - nvmet: return uniform error for invalid ns (Gopal Tiwari) [1921591] - nvmet: remove extra variable in id-ns handler (Gopal Tiwari) [1921591] - nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs (Gopal Tiwari) [1921591] - nvme-fabrics: avoid double completions in nvmf_fail_nonready_command (Gopal Tiwari) [1921591] - nvme: introduce a nvme_host_path_error helper (Gopal Tiwari) [1921591] - blk-mq: introduce blk_mq_set_request_complete (Gopal Tiwari) [1921591] - nvme-rdma: handle nvme_rdma_post_send failures better (Gopal Tiwari) [1921591] - nvmet-tcp: fix potential race of tcp socket closing accept_work (Gopal Tiwari) [1921591] - nvme: cleanup zone information initialization (Gopal Tiwari) [1921591] - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs (Gopal Tiwari) [1921591] - nvme-pci: ignore the subsysem NQN on Phison E16 (Gopal Tiwari) [1921591] - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs (Gopal Tiwari) [1921591] - nvme-tcp: use cancel tagset helper for tear down (Gopal Tiwari) [1921591] - nvme-rdma: use cancel tagset helper for tear down (Gopal Tiwari) [1921591] - nvme-rdma: add clean action for failed reconnection (Gopal Tiwari) [1921591] - nvme-core: get rid of the extra space (Gopal Tiwari) [1921591] - nvme-tcp: add clean action for failed reconnection (Gopal Tiwari) [1921591] - nvme: add tracing of zns commands (Gopal Tiwari) [1921591] - nvme: parse format nvm command details when tracing (Gopal Tiwari) [1921591] - nvme-core: add cancel tagset helpers (Gopal Tiwari) [1921591] - nvme: refactor ns->ctrl by request (Gopal Tiwari) [1921591] - nvme-tcp: fix wrong setting of request iov_iter (Gopal Tiwari) [1921591] - nvmet: remove extra variable in smart log nsid (Gopal Tiwari) [1921591] - nvme-tcp: get rid of unused helper function (Gopal Tiwari) [1921591] - nvmet: remove extra variable in identify ns (Gopal Tiwari) [1921591] - nvmet: remove extra variable in id-desclist (Gopal Tiwari) [1921591] - nvmet: add lba to sect conversion helpers (Gopal Tiwari) [1921591] - nvme: support command retry delay for admin command (Gopal Tiwari) [1921591] - nvmet: Use nvmet_is_port_enabled helper for pi_enable (Gopal Tiwari) [1921591] - nvme: constify static attribute_group structs (Gopal Tiwari) [1921591] - nvmet-fc: use RCU proctection for assoc_list (Gopal Tiwari) [1921591] - nvmet: Fix nvmet_is_port_enabled indentation (Gopal Tiwari) [1921591] - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a SPCC device (Gopal Tiwari) [1921591] - nvme-core: use list_add_tail_rcu instead of list_add_tail for nvme_init_ns_head (Gopal Tiwari) [1921591] - nvme: allow revalidate to set a namespace read-only (Gopal Tiwari) [1921591] - nvmet: set right status on error in id-ns handler (Gopal Tiwari) [1921591] - nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout (Gopal Tiwari) [1921591] - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout (Gopal Tiwari) [1921591] - nvme-pci: allow use of cmb on v1.4 controllers (Gopal Tiwari) [1921591] - nvme: check the PRINFO bit before deciding the host buffer length (Gopal Tiwari) [1921591] - nvme-tcp: fix possible data corruption with bio merges (Gopal Tiwari) [1921591] - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT (Gopal Tiwari) [1921591] - nvme: don't intialize hwmon for discovery controllers (Gopal Tiwari) [1921591] - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY (Gopal Tiwari) [1921591] - nvmet-rdma: Fix list_del corruption on queue establishment failure (Gopal Tiwari) [1921591] - nvme: unexport functions with no external caller (Gopal Tiwari) [1921591] - nvme: avoid possible double fetch in handling CQE (Gopal Tiwari) [1921591] - nvme: remove the unused status argument from nvme_trace_bio_complete (Gopal Tiwari) [1921591] - nvme-tcp: Fix possible race of io_work and direct send (Gopal Tiwari) [1921591] - nvme-fcloop: Fix sscanf type and list_first_entry_or_null warnings (Gopal Tiwari) [1921591] - nvme-fc: avoid calling _nvme_fc_abort_outstanding_ios from interrupt context (Gopal Tiwari) [1921591] - nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class (Gopal Tiwari) [1921591] - nvme: rename controller base dev_t char device (Gopal Tiwari) [1921591] - nvme: remove unnecessary return values (Gopal Tiwari) [1921591] - nvme: rename bdev operations (Gopal Tiwari) [1921591] - nvme: export zoned namespaces without Zone Append support read-only (Gopal Tiwari) [1921591] - nvme: print a warning for when listing active namespaces fails (Gopal Tiwari) [1921591] - nvme: improve an error message on Identify failure (Gopal Tiwari) [1921591] - nvmet: fix a spelling mistake "incuding" -> "including" in Kconfig (Gopal Tiwari) [1921591] - nvme-fabrics: reject I/O to offline device (Gopal Tiwari) [1921591] - nvmet: make sure discovery change log event is protected (Gopal Tiwari) [1921591] - nvme-pci: don't allocate unused I/O queues (Gopal Tiwari) [1921591] - nvme-pci: drop min() from nr_io_queues assignment (Gopal Tiwari) [1921591] - nvmet: use inline bio for passthru fast path (Gopal Tiwari) [1921591] - nvmet: use blk_rq_bio_prep instead of blk_rq_append_bio (Gopal Tiwari) [1921591] - nvmet: remove unused ctrl->cqs (Gopal Tiwari) [1921591] - nvmet: remove op_flags for passthru commands (Gopal Tiwari) [1921591] - nvme: use consistent macro name for timeout (Gopal Tiwari) [1921591] - nvmet: add passthru io timeout value attr (Gopal Tiwari) [1921591] - nvmet: add passthru admin timeout value attr (Gopal Tiwari) [1921591] - nvme: split nvme_alloc_request() (Gopal Tiwari) [1921591] - nvme: centralize setting the timeout in nvme_alloc_request (Gopal Tiwari) [1921591] - nvme: simplify nvme_req_qid() (Gopal Tiwari) [1921591] - nvme-fcloop: add sysfs attribute to inject command drop (Gopal Tiwari) [1921591] - nvme: let set_capacity_revalidate_and_notify update the bdev size (Gopal Tiwari) [1921591] - nvme: directly cache command effects log (Gopal Tiwari) [1921591] - nvme: fix memory leak freeing command effects (Gopal Tiwari) [1921591] - nvme: free sq/cq dbbuf pointers when dbbuf set fails (Gopal Tiwari) [1921591] - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device (Gopal Tiwari) [1921591] - RDMA: Lift ibdev_to_node from rds to common code (Gopal Tiwari) [1921591] - nvme: fix incorrect behavior when BLKROSET is called by the user (Gopal Tiwari) [1921591] - Revert "nvme-pci: remove last_sq_tail" (Gopal Tiwari) [1921591] - nvmet: fix a NULL pointer dereference when tracing the flush command (Gopal Tiwari) [1921591] - nvme-fc: remove nvme_fc_terminate_io() (Gopal Tiwari) [1921591] - nvme-fc: eliminate terminate_io use by nvme_fc_error_recovery (Gopal Tiwari) [1921591] - nvme-fc: remove err_work work item (Gopal Tiwari) [1921591] - nvme-fc: track error_recovery while connecting (Gopal Tiwari) [1921591] - nvme-rdma: handle unexpected nvme completion data length (Gopal Tiwari) [1921591] - nvme: ignore zone validate errors on subsequent scans (Gopal Tiwari) [1921591] - nvme-fc: shorten reconnect delay if possible for FC (Gopal Tiwari) [1921591] - nvme-fc: wait for queues to freeze before calling update_hr_hw_queues (Gopal Tiwari) [1921591] - nvme-fc: fix error loop in create_hw_io_queues (Gopal Tiwari) [1921591] - nvme-fc: fix io timeout to abort I/O (Gopal Tiwari) [1921591] - nvmet: cleanup nvmet_passthru_map_sg() (Gopal Tiwari) [1921591] - nvmet: don't use BLK_MQ_REQ_NOWAIT for passthru (Gopal Tiwari) [1921591] - nvmet: limit passthru MTDS by BIO_MAX_PAGES (Gopal Tiwari) [1921591] - nvme-rdma: fix crash due to incorrect cqe (Gopal Tiwari) [1921591] - nvmet: fix uninitialized work for zero kato (Gopal Tiwari) [1921591] - nvme: use queuedata for nvme_req_qid (Gopal Tiwari) [1921591] - nvme-pci: disable Write Zeroes on Sandisk Skyhawk (Gopal Tiwari) [1921591] - nvme-rdma: fix crash when connect rejected (Gopal Tiwari) [1921591] - nvme: translate zone resource errors (Gopal Tiwari) [1921591] - block: add zone specific block statuses (Gopal Tiwari) [1921591] - nvme-core: remove extra condition for vwc (Gopal Tiwari) [1921591] - nvme-core: remove extra variable (Gopal Tiwari) [1921591] - nvme: remove nvme_identify_ns_list (Gopal Tiwari) [1921591] - nvme: refactor nvme_validate_ns (Gopal Tiwari) [1921591] - nvme: move nvme_validate_ns (Gopal Tiwari) [1921591] - nvme: remove nvme_update_formats (Gopal Tiwari) [1921591] - nvme: update the known admin effects (Gopal Tiwari) [1921591] - nvme: query namespace identifiers before adding the namespace (Gopal Tiwari) [1921591] - nvme: revalidate zone bitmaps in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: call nvme_identify_ns as the first thing in nvme_alloc_ns_block (Gopal Tiwari) [1921591] - nvme: set the queue limits in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: remove the 0 lba_shift check in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: freeze the queue over ->lba_shift updates (Gopal Tiwari) [1921591] - nvme: factor out a nvme_configure_metadata helper (Gopal Tiwari) [1921591] - nvme: lift the check for an unallocated namespace into nvme_identify_ns (Gopal Tiwari) [1921591] - nvme: clean up the check for too large logic block sizes (Gopal Tiwari) [1921591] - nvme: remove the disk argument to nvme_update_zone_info (Gopal Tiwari) [1921591] - nvme: rename __nvme_revalidate_disk (Gopal Tiwari) [1921591] - nvme: rename _nvme_revalidate_disk (Gopal Tiwari) [1921591] - nvme: rename nvme_validate_ns to nvme_validate_or_alloc_ns (Gopal Tiwari) [1921591] - nvme: fix initialization of the zone bitmaps (Gopal Tiwari) [1921591] - nvme-loop: don't put ctrl on nvme_init_ctrl error (Gopal Tiwari) [1921591] - nvme-core: put ctrl ref when module ref get fail (Gopal Tiwari) [1921591] - nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage() (Gopal Tiwari) [1921591] - nvmet-fc: fix missing check for no hostport struct (Gopal Tiwari) [1921591] - nvme: fix error handling in nvme_ns_report_zones (Gopal Tiwari) [1921591] - nvmet: add passthru ZNS support (Gopal Tiwari) [1921591] - nvmet: handle keep-alive timer when kato is modified by a set features cmd (Gopal Tiwari) [1921591] - nvme-pci: allocate separate interrupt for the reserved non-polled I/O queue (Gopal Tiwari) [1921591] - nvmet-tcp: have queue io_work context run on sock incoming cpu (Gopal Tiwari) [1921591] - nvme: lift the file open code from nvme_ctrl_get_by_path (Gopal Tiwari) [1921591] - nvme: use an xarray to lookup the Commands Supported and Effects log (Gopal Tiwari) [1921591] - nvme-pci: Move enumeration by class to be last in the table (Gopal Tiwari) [1921591] - nvme-core: don't use NVME_NSID_ALL for command effects and supported log (Gopal Tiwari) [1921591] - nvme-fc: fail new connections to a deleted host or remote port (Gopal Tiwari) [1921591] - nvme: return errors for hwmon init (Gopal Tiwari) [1921591] - nvme-pci: fix NULL req in completion handler (Gopal Tiwari) [1921591] - nvmet: get transport reference for passthru ctrl (Gopal Tiwari) [1921591] - nvme-core: get/put ctrl and transport module in nvme_dev_open/release() (Gopal Tiwari) [1921591] - nvme-tcp: fix kconfig dependency warning when !CRYPTO (Gopal Tiwari) [1921591] - nvme: use blk_mq_complete_request_remote to avoid an indirect function call (Gopal Tiwari) [1921591] - nvme-core: replace ctrl page size with a macro (Gopal Tiwari) [1921591] - nvme-pci: remove the inline scatterlist optimization (Gopal Tiwari) [1921591] - block: optimize blk_queue_zoned_model for !CONFIG_BLK_DEV_ZONED (Gopal Tiwari) [1921591] - nvme: support for zoned namespaces (Gopal Tiwari) [1921591] - null_blk: introduce zone capacity for zoned device (Gopal Tiwari) [1921591] - block: add capacity field to zone descriptors (Gopal Tiwari) [1921591]- vmxnet3: Set the default of vxlan overlay offload to disabled (Cathy Avery) [1941714] - vmxnet3: Update driver to use ethtool_sprintf (Cathy Avery) [1923796] - vmxnet3: Remove buf_info from device accessible structures (Cathy Avery) [1923796] - igc: Fix overwrites return value (Corinna Vinschen) [1920285] - igc: Add set/clear large buffer helpers (Corinna Vinschen) [1920285] - igc: Refactor Rx timestamp handling (Corinna Vinschen) [1920285] - igc: Introduce igc_get_rx_frame_truesize() helper (Corinna Vinschen) [1920285] - igc: Introduce igc_rx_buffer_flip() helper (Corinna Vinschen) [1920285] - igc: Remove unused argument from igc_tx_cmd_type() (Corinna Vinschen) [1920285] - igc: Fix prototype warning (Corinna Vinschen) [1920285] - igc: Assign boolean values to a bool variable (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_LOOPBACK (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_SPEED (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_RESET (Corinna Vinschen) [1920285] - igc: Fix igc_ptp_rx_pktstamp() (Corinna Vinschen) [1920285] - igc: Fix Supported Pause Frame Link Setting (Corinna Vinschen) [1920285] - igc: Fix Pause Frame Advertising (Corinna Vinschen) [1920285] - igc: reinit_locked() should be called with rtnl_lock (Corinna Vinschen) [1920285] - igc: Fix TDBAL register show incorrect value (Corinna Vinschen) [1920285] - igc: Remove unused FUNC_1 mask (Corinna Vinschen) [1920285] - igc: Remove unused local receiver mask (Corinna Vinschen) [1920285] - igc: Prefer strscpy over strlcpy (Corinna Vinschen) [1920285] - igc: Expose the gPHY firmware version (Corinna Vinschen) [1920285] - igc: Expose the NVM version (Corinna Vinschen) [1920285] - igc: Add Host Good Packets Transmitted Count (Corinna Vinschen) [1920285] - igc: Remove MULR mask define (Corinna Vinschen) [1920285] - igc: Remove igc_set_fw_version comment (Corinna Vinschen) [1920285] - igc: Clean up nvm_operations structure (Corinna Vinschen) [1920285] - igc: check return value of ret_val in igc_config_fc_after_link_up (Corinna Vinschen) [1920285] - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr (Corinna Vinschen) [1920285] - igc: Report speed and duplex as unknown when device is runtime suspended (Corinna Vinschen) [1920285] - net: igc: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920285] - igc: Add new device ID (Corinna Vinschen) [1920285] - net: igbvf: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920287] - igbvf: Refactor traces (Corinna Vinschen) [1920287] - igbvf: amend removal of MODULE_VERSION (Corinna Vinschen) [1955752] - netlink: add tracepoint at NL_SET_ERR_MSG (Marcelo Ricardo Leitner) [1956983] - xfrm: Provide private skb extensions for segmented and hw offloaded ESP packets (Sabrina Dubroca) [1935575] - xfrm: BEET mode doesn't support fragments for inner packets (Xin Long) [1870900] - xfrm: Fix NULL pointer dereference on policy lookup (Sabrina Dubroca) [1951965] - xfrm: use secpath_exist where applicable (Sabrina Dubroca) [1951965] - net: xfrm: Use sequence counter with associated spinlock (Sabrina Dubroca) [1951965] - net: xfrm: Localize sequence counter per network namespace (Sabrina Dubroca) [1951965] - xfrm: Return the correct errno code (Sabrina Dubroca) [1951965] - xfrm: Fix wraparound in xfrm_policy_addr_delta() (Sabrina Dubroca) [1951965] - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces (Sabrina Dubroca) [1951965] - xfrm: Fix oops in xfrm_replay_advance_bmp (Sabrina Dubroca) [1951965] - ah6: fix error return code in ah6_input() (Sabrina Dubroca) [1951965] - net: xfrm: fix a race condition during allocing spi (Sabrina Dubroca) [1951965] - xfrm: policy: Use sequence counters with associated lock (Sabrina Dubroca) [1951965] - selftests: net: mirror_gre_vlan_bridge_1q: Make an FDB entry static (Ivan Vecera) [1952586] - net: bridge: switchdev: include local flag in FDB notifications (Ivan Vecera) [1952586] - net: bridge: switchdev: refactor br_switchdev_fdb_notify (Ivan Vecera) [1952586] - net: bridge: don't notify switchdev for local FDB addresses (Ivan Vecera) [1952586] - net: bridge: use switchdev for port flags set through sysfs too (Ivan Vecera) [1952586] - net: bridge: vlan: fix error return code in __vlan_add() (Ivan Vecera) [1952586] - net: bridge: add missing counters to ndo_get_stats64 callback (Ivan Vecera) [1952586] - net: bridge: use new function dev_fetch_sw_netstats (Ivan Vecera) [1952586] - net: bridge: fdb: don't flush ext_learn entries (Ivan Vecera) [1952586] - net: bridge: clear bridge's private skb space on xmit (Ivan Vecera) [1952586] - bridge: mcast: Fix MLD2 Report IPv6 payload length check (Ivan Vecera) [1952586] - net: bridge: enfore alignment for ethernet address (Ivan Vecera) [1952586] - netfilter: nft_reject_bridge: enable reject with bridge vlan (Ivan Vecera) [1952586] - net: bridge: vlan: Add a schedule point during VLAN processing (Ivan Vecera) [1952586] - netfilter: ebtables: compat: reject all padding in matches/watchers (Ivan Vecera) [1952586] - net: bridge: deny dev_set_mac_address() when unregistering (Ivan Vecera) [1952586] - net: bridge: fdb: set flags directly in fdb_create (Ivan Vecera) [1952586] - net: bridge: fdb: convert offloaded to use bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert added_by_external_learn to use bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert added_by_user to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_sticky to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_static to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_local to bitops (Ivan Vecera) [1952586] - net: bridge: move default pvid init/deinit to NETDEV_REGISTER/UNREGISTER (Ivan Vecera) [1952586] - bridge: Fix possible use-after-free when deleting bridge port (Ivan Vecera) [1952586] - bridge: update vlan dev link state for bridge netdev changes (Ivan Vecera) [1952586] - bridge: update vlan dev state when port added to or deleted from vlan (Ivan Vecera) [1952586] - bridge: support binding vlan dev link state to vlan member bridge ports (Ivan Vecera) [1952586] - vlan: do not transfer link state in vlan bridge binding mode (Ivan Vecera) [1952586] - vlan: support binding link state to vlan member bridge ports (Ivan Vecera) [1952586] - ipv6: weaken the v4mapped source check (Paolo Abeni) [1950298] - tcp: relookup sock for RST+ACK packets handled by obsolete req sock (Paolo Abeni) [1950298] - inet_connection_sock: remove unused parameter of reqsk_queue_unlink func (Paolo Abeni) [1950298] - tcp: add sanity tests to TCP_QUEUE_SEQ (Paolo Abeni) [1950298] - tcp: fix SO_RCVLOWAT related hangs under mem pressure (Paolo Abeni) [1950298] - tcp: do not mess with cloned skbs in tcp_add_backlog() (Paolo Abeni) [1950298] - tcp: fix cwnd-limited bug for TSO deferral where we send nothing (Paolo Abeni) [1950298] - vfio-ccw: Wire in the request callback (Thomas Huth) [1940451] - vfio-mdev: Wire in a request handler for mdev parent (Thomas Huth) [1940451] - intel_idle: add Iclelake-D support (David Arcari) [1960287] - scsi: ibmvfc: Fix potential race in ibmvfc_wait_for_ops() (Steve Best) [1941180] - powerpc/sstep: Fix VSX instruction emulation (Steve Best) [1934187] - powerpc/pseries/hibernation: remove pseries_suspend_cpu() (Steve Best) [1932970] - powerpc/pseries: remove cede offline state for CPUs (Steve Best) [1932970] - powerpc/pseries: export LPAR security flavor in lparcfg (Steve Best) [1935660] - Makefile: update early devel phase flag (Bruno Meneguele) [1930504]- configs: Enable CONFIG_BPF_KPROBE_OVERRIDE (Jiri Olsa) [1920439] - powerpc/kvm: Fix build error when PPC_MEM_KEYS/PPC_PSERIES=n (Greg Kurz) [1945745] - powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure MSR[HV] is always clear in guest MSR (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure MSR[ME] is always set in guest MSR (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix CONFIG_SPAPR_TCE_IOMMU=n default hcalls (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: remove unused kvmppc_h_protect argument (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Remove redundant mtspr PSPB (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Prevent radix guests setting LPCR[TC] (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Disallow LPCR[AIL] to be set to 1 or 2 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Add a function to filter guest LPCR bits (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Nested move LPCR sanitising to sanitise_hv_regs (Greg Kurz) [1945745] - KVM: PPC: Book3S HV P9: Restore host CTRL SPR after guest exit (Greg Kurz) [1945745] - KVM: PPC: Don't always report hash MMU capability for P9 < DD2.2 (Greg Kurz) [1945745] - powerpc/xive: Assign boolean values to a bool variable (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix host radix SLB optimisation with hash guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure radix guest has no SLB entries (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Save and restore FSCR in the P9 path (Greg Kurz) [1945745] - KVM: PPC: remove unneeded semicolon (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Use POWER9 SLBIA IH=6 variant to clear SLB (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: No need to clear radix host SLB before loading HPT guest (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix radix guest SLB side channel (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Remove support for running HPT guest on RPT host without mixed mode support (Greg Kurz) [1945745] - powerpc/mm: Update tlbiel loop on POWER10 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Allow nested guest creation when L0 hv_guest_state > L1 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Context tracking exit guest context before enabling irqs (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Include prototypes (Greg Kurz) [1945745] - KVM: PPC: Make the VMX instruction emulation routines static (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix mask size for emulated msgsndp (Greg Kurz) [1945745] - KVM: PPC: fix comparison to bool warning (Greg Kurz) [1945745] - KVM: PPC: Book3S: Assign boolean values to a bool variable (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Add a comment regarding VP numbering (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_EOI_FW (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_MASK_FW (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_SHIFT_BUG (Greg Kurz) [1945745] - powerpc/xive: Add a debug_show handler to the XIVE irq_domain (Greg Kurz) [1945745] - powerpc/xive: Rename XIVE_IRQ_NO_EOI to show its a flag (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Show detailed configuration in debug output (Greg Kurz) [1945745] - powerpc/64s: Remove MSR[ISF] bit (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ratelimit machine check messages coming from guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Don't attempt to recover machine checks for FWNMI enabled guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page (Greg Kurz) [1945745] - clocksource/drivers/hyper-v: Move handling of STIMER0 interrupts (Mohammed Gamal) [1940901] - clocksource/drivers/hyper-v: Set clocksource rating based on Hyper-V feature (Mohammed Gamal) [1940901] - clocksource/drivers/hyper-v: Handle sched_clock differences inline (Mohammed Gamal) [1940901] - clocksource/hyperv: use MSR-based access if running as root (Mohammed Gamal) [1940901] - cifs: fix interrupted close commands (Ronnie Sahlberg) [1952263] - cifs: add NULL check for ses->tcon_ipc (Ronnie Sahlberg) [1952263] - smb3: set COMPOUND_FID to FileID field of subsequent compound request (Ronnie Sahlberg) [1952263] - cifs: fix potential use-after-free in cifs_echo_request() (Ronnie Sahlberg) [1952263] - cifs: allow syscalls to be restarted in __smb_send_rqst() (Ronnie Sahlberg) [1952263] - smb3: Handle error case during offload read path (Ronnie Sahlberg) [1952263] - smb3: Avoid Mid pending list corruption (Ronnie Sahlberg) [1952263] - smb3: Call cifs reconnect from demultiplex thread (Ronnie Sahlberg) [1952263] - cifs: fix a memleak with modefromsid (Ronnie Sahlberg) [1952263] - cifs: update internal module version number (Ronnie Sahlberg) [1952263] - smb3: add some missing definitions from MS-FSCC (Ronnie Sahlberg) [1952263] - smb3: remove two unused variables (Ronnie Sahlberg) [1952263] - smb3: add support for stat of WSL reparse points for special file types (Ronnie Sahlberg) [1952263] - SMB3: add support for recognizing WSL reparse tags (Ronnie Sahlberg) [1952263] - cifs: remove bogus debug code (Ronnie Sahlberg) [1952263] - smb3.1.1: fix typo in compression flag (Ronnie Sahlberg) [1952263] - cifs: move smb version mount options into fs_context.c (Ronnie Sahlberg) [1952263] - cifs: move cache mount options to fs_context.ch (Ronnie Sahlberg) [1952263] - cifs: move security mount options into fs_context.ch (Ronnie Sahlberg) [1952263] - cifs: add files to host new mount api (Ronnie Sahlberg) [1952263] - smb3: do not try to cache root directory if dir leases not supported (Ronnie Sahlberg) [1952263] - smb3: fix stat when special device file and mounted with modefromsid (Ronnie Sahlberg) [1952263] - cifs: Print the address and port we are connecting to in generic_ip_connect() (Ronnie Sahlberg) [1952263] - SMB3: Resolve data corruption of TCP server info fields (Ronnie Sahlberg) [1952263] - cifs: make const array static, makes object smaller (Ronnie Sahlberg) [1952263] - SMB3.1.1: Fix ids returned in POSIX query dir (Ronnie Sahlberg) [1952263] - smb3: add dynamic trace point to trace when credits obtained (Ronnie Sahlberg) [1952263] - smb3.1.1: do not fail if no encryption required but server doesn't support it (Ronnie Sahlberg) [1952263] - cifs: Return the error from crypt_message when enc/dec key not found. (Ronnie Sahlberg) [1952263] - smb3.1.1: set gcm256 when requested (Ronnie Sahlberg) [1952263] - smb3.1.1: rename nonces used for GCM and CCM encryption (Ronnie Sahlberg) [1952263] - smb3.1.1: print warning if server does not support requested encryption type (Ronnie Sahlberg) [1952263] - smb3.1.1: add new module load parm enable_gcm_256 (Ronnie Sahlberg) [1952263] - smb3.1.1: add new module load parm require_gcm_256 (Ronnie Sahlberg) [1952263] - cifs: map STATUS_ACCOUNT_LOCKED_OUT to -EACCES (Ronnie Sahlberg) [1952263] - SMB3.1.1: add defines for new signing negotiate context (Ronnie Sahlberg) [1952263] - Handle STATUS_IO_TIMEOUT gracefully (Ronnie Sahlberg) [1952263] - cifs: compute full_path already in cifs_readdir() (Ronnie Sahlberg) [1952263] - cifs: return cached_fid from open_shroot (Ronnie Sahlberg) [1952263] - update structure definitions from updated protocol documentation (Ronnie Sahlberg) [1952263] - smb3: add defines for new crypto algorithms (Ronnie Sahlberg) [1952263] - cifs: fix check of tcon dfs in smb1 (Ronnie Sahlberg) [1952263] - SMB3: Fix mkdir when idsfromsid configured on mount (Ronnie Sahlberg) [1952263] - cifs: Convert to use the fallthrough macro (Ronnie Sahlberg) [1952263] - cifs: Fix an error pointer dereference in cifs_mount() (Ronnie Sahlberg) [1952263] - cifs: document and cleanup dfs mount (Ronnie Sahlberg) [1952263] - cifs: only update prefix path of DFS links in cifs_tree_connect() (Ronnie Sahlberg) [1952263] - cifs: fix double free error on share and prefix (Ronnie Sahlberg) [1952263] - cifs: handle RESP_GET_DFS_REFERRAL.PathConsumed in reconnect (Ronnie Sahlberg) [1952263] - cifs: handle empty list of targets in cifs_reconnect() (Ronnie Sahlberg) [1952263] - cifs: rename reconn_inval_dfs_target() (Ronnie Sahlberg) [1952263] - cifs: reduce number of referral requests in DFS link lookups (Ronnie Sahlberg) [1952263] - cifs: merge __{cifs,smb2}_reconnect[_tcon]() into cifs_tree_connect() (Ronnie Sahlberg) [1952263] - cifs: convert to use be32_add_cpu() (Ronnie Sahlberg) [1952263] - cifs: delete duplicated words in header files (Ronnie Sahlberg) [1952263] - cifs: Remove the superfluous break (Ronnie Sahlberg) [1952263] - cifs: remove unused variable 'server' (Ronnie Sahlberg) [1952263] - smb3: warn on confusing error scenario with sec=krb5 (Ronnie Sahlberg) [1952263] - fuse: 32-bit user space ioctl compat for fuse device (Miklos Szeredi) [1949873] - virtiofs: Fail dax mount if device does not support it (Miklos Szeredi) [1949873] - fuse: fix live lock in fuse_iget() (Miklos Szeredi) [1949873] - mm/filemap: remove unused parameter and change to void type for replace_page_cache_page() (Miklos Szeredi) [1949873] - fuse: support SB_NOSEC flag to improve write performance (Miklos Szeredi) [1949873] - fuse: add a flag FUSE_OPEN_KILL_SUIDGID for open() request (Miklos Szeredi) [1949873] - fuse: don't send ATTR_MODE to kill suid/sgid for handle_killpriv_v2 (Miklos Szeredi) [1949873] - fuse: setattr should set FATTR_KILL_SUIDGID (Miklos Szeredi) [1949873] - fuse: set FUSE_WRITE_KILL_SUIDGID in cached write path (Miklos Szeredi) [1949873] - fuse: rename FUSE_WRITE_KILL_PRIV to FUSE_WRITE_KILL_SUIDGID (Miklos Szeredi) [1949873] - fuse: introduce the notion of FUSE_HANDLE_KILLPRIV_V2 (Miklos Szeredi) [1949873] - fuse: always revalidate if exclusive create (Miklos Szeredi) [1949873] - virtiofs: clean up error handling in virtio_fs_get_tree() (Miklos Szeredi) [1949873] - fuse: add fuse_sb_destroy() helper (Miklos Szeredi) [1949873] - fuse: simplify get_fuse_conn*() (Miklos Szeredi) [1949873] - fuse: get rid of fuse_mount refcount (Miklos Szeredi) [1949873] - virtiofs: simplify sb setup (Miklos Szeredi) [1949873] - virtiofs fix leak in setup (Miklos Szeredi) [1949873] - fuse: launder page should wait for page writeback (Miklos Szeredi) [1949873] - fuse: connection remove fix (Miklos Szeredi) [1949873] - fuse: implement crossmounts (Miklos Szeredi) [1949873] - fuse: Allow fuse_fill_super_common() for submounts (Miklos Szeredi) [1949873] - fuse: split fuse_mount off of fuse_conn (Miklos Szeredi) [1949873] - fuse: drop fuse_conn parameter where possible (Miklos Szeredi) [1949873] - fuse: store fuse_conn in fuse_req (Miklos Szeredi) [1949873] - fuse: add submount support to (Miklos Szeredi) [1949873] - fuse: fix page dereference after free (Miklos Szeredi) [1949873] - fuse: update project homepage (Miklos Szeredi) [1949873] - fuse: Fix parameter for FS_IOC_{GET,SET}FLAGS (Miklos Szeredi) [1949873] - fuse: don't ignore errors from fuse_writepages_fill() (Miklos Szeredi) [1949873] - fuse: clean up condition for writepage sending (Miklos Szeredi) [1949873] - fuse: fix warning in tree_insert() and clean up writepage insertion (Miklos Szeredi) [1949873] - fuse: move rb_erase() before tree_insert() (Miklos Szeredi) [1949873] - fuse: optimize writepages search (Miklos Szeredi) [1949873] - fuse: Update stale comment in queue_interrupt() (Miklos Szeredi) [1949873] - fuse: use true,false for bool variable (Miklos Szeredi) [1949873] - fuse: Add changelog entries for protocols 7.1 - 7.8 (Miklos Szeredi) [1949873] - fuse: reserve byteswapped init opcodes (Miklos Szeredi) [1949873] - convenience helper: get_tree_single() (finish backport) (Miklos Szeredi) [1949873] - fuse: Convert fusectl to use the new mount API (Miklos Szeredi) [1949873] - fuse: fix changelog entry for protocol 7.9 (Miklos Szeredi) [1949873] - fuse: fix changelog entry for protocol 7.12 (Miklos Szeredi) [1949873] - sfc: adjust efx->xdp_tx_queue_count with the real number of initialized queues (Íñigo Huguet) [1934254] - sfc: Remove duplicate argument (Íñigo Huguet) [1934254] - sfc: Use 'skb_add_rx_frag()' instead of hand coding it (Íñigo Huguet) [1934254] - sfc-falcon: Fix a typo (Íñigo Huguet) [1934254] - sfc: ef10: fix TX queue lookup in TX event handling (Íñigo Huguet) [1934254] - sfc: farch: fix TX queue lookup in TX event handling (Íñigo Huguet) [1934254] - sfc: farch: fix TX queue lookup in TX flush done handling (Íñigo Huguet) [1934254] - sfc: reduce the number of requested xdp ev queues (Íñigo Huguet) [1934254] - sfc: support GRE TSO on EF100 (Íñigo Huguet) [1934254] - sfc: correctly support non-partial GSO_UDP_TUNNEL_CSUM on EF100 (Íñigo Huguet) [1934254] - sfc: extend bitfield macros to 19 fields (Íñigo Huguet) [1934254] - sfc: advertise our vlan features (Íñigo Huguet) [1934254] - sfc: only use fixed-id if the skb asks for it (Íñigo Huguet) [1934254] - sfc: implement encap TSO on EF100 (Íñigo Huguet) [1934254] - sfc: extend bitfield macros to 17 fields (Íñigo Huguet) [1934254] - sfc: move initialisation of efx->filter_sem to efx_init_struct() (Íñigo Huguet) [1934254] - net: sfc: Use GFP_KERNEL in efx_ef10_try_update_nic_stats() (Íñigo Huguet) [1934254] - net: sfc: Replace in_interrupt() usage (Íñigo Huguet) [1934254] - sfc: clean up mis-targeted comments (Íñigo Huguet) [1934254] - sfc: fix kdoc warning (Íñigo Huguet) [1934254] - sfc: clean up unused assignments (Íñigo Huguet) [1934254] - sfc: advertise encapsulated offloads on EF10 (Íñigo Huguet) [1934254] - sfc: implement encapsulated TSO on EF10 (Íñigo Huguet) [1934254] - sfc: de-indirect TSO handling (Íñigo Huguet) [1934254] - sfc: select inner-csum-offload TX queues for skbs that need it (Íñigo Huguet) [1934254] - sfc: create inner-csum queues on EF10 if supported (Íñigo Huguet) [1934254] - sfc: define inner/outer csum offload TXQ types (Íñigo Huguet) [1934254] - sfc: decouple TXQ type from label (Íñigo Huguet) [1934254] - sfc: cleanups around efx_alloc_channel (Íñigo Huguet) [1934254] - sfc: remove spurious unreachable return statement (Íñigo Huguet) [1934254] - sfc: remove duplicate call to efx_init_channels from EF100 probe (Íñigo Huguet) [1934254] - sfc: coding style cleanups in mcdi_port_common.c (Íñigo Huguet) [1934254] - sfc: simplify DMA mask setting (Íñigo Huguet) [1934254] - sfc: remove EFX_DRIVER_VERSION (Íñigo Huguet) [1934254] - sfc: handle limited FEC support (Íñigo Huguet) [1934254] - sfc: add ethtool ops and miscellaneous ndos to EF100 (Íñigo Huguet) [1934254] - sfc: remove phy_op indirection (Íñigo Huguet) [1934254] - sfc: remove efx_tx_queue_partner (Íñigo Huguet) [1934254] - sfc: rewrite efx_tx_may_pio (Íñigo Huguet) [1934254] - sfc: use efx_channel_tx_[old_]fill_level() in Siena/EF10 TX datapath (Íñigo Huguet) [1934254] - sfc: use tx_queue->old_read_count in EF100 TX path (Íñigo Huguet) [1934254] - sfc: make ef100 xmit_more handling look more like ef10's (Íñigo Huguet) [1934254] - sfc: add and use efx_tx_send_pending in tx.c (Íñigo Huguet) [1934254] - sfc: return errors from efx_mcdi_set_id_led, and de-indirect (Íñigo Huguet) [1934254] - sfc: fix kernel-doc on struct efx_loopback_state (Íñigo Huguet) [1934254] - sfc: fix unused-but-set-variable warning in efx_farch_filter_remove_safe (Íñigo Huguet) [1934254] - sfc: fix W=1 warnings in efx_farch_handle_rx_not_ok (Íñigo Huguet) [1934254] - sfc: convert to new udp_tunnel infrastructure (Íñigo Huguet) [1934254] - net: don't warn in inet diag when IPV6 is disabled (Hangbin Liu) [1938639] - tcp: do not mess with cloned skbs in tcp_add_backlog() (Hangbin Liu) [1880432] - redhat: enable MHI bus driver support (Jarod Wilson) [1938030] - bus: mhi: core: Fix invalid error returning in mhi_queue (Jarod Wilson) [1938030] - bus: mhi: pci_generic: Remove WQ_MEM_RECLAIM flag from state workqueue (Jarod Wilson) [1938030] - bus: mhi: core: Fix check for syserr at power_up (Jarod Wilson) [1938030] - mhi: Fix double dma free (Jarod Wilson) [1938030] - bus: mhi: pci_generic: Increase num of elements in hw event ring (Jarod Wilson) [1938030] - mhi: pci_generic: Print warning in case of firmware crash (Jarod Wilson) [1938030] - bus: mhi: core: Add helper API to return number of free TREs (Jarod Wilson) [1938030] - mhi: core: Factorize mhi queuing (Jarod Wilson) [1938030] - mhi: use irq_flags if controller driver configures it (Jarod Wilson) [1938030] - mhi: pci_generic: Fix shared MSI vector support (Jarod Wilson) [1938030] - mhi: unconstify mhi_event_config (Jarod Wilson) [1938030] - bus: mhi: Ensure correct ring update ordering with memory barrier (Jarod Wilson) [1938030] - mhi: pci_generic: Set irq moderation value to 1ms for hw channels (Jarod Wilson) [1938030] - mhi: pci_generic: Add diag channels (Jarod Wilson) [1938030] - mhi: pci_generic: Increase controller timeout value (Jarod Wilson) [1938030] - mhi: pci_generic: Add health-check (Jarod Wilson) [1938030] - mhi: pci_generic: Add PCI error handlers (Jarod Wilson) [1938030] - mhi: pci_generic: Add suspend/resume/recovery procedure (Jarod Wilson) [1938030] - mhi: pci_generic: Add support for reset (Jarod Wilson) [1938030] - mhi: pci_generic: Enable burst mode for hardware channels (Jarod Wilson) [1938030] - mhi: pci-generic: Increase number of hardware events (Jarod Wilson) [1938030] - bus: mhi: core: Add device hardware reset support (Jarod Wilson) [1938030] - mhi: pci_generic: Fix implicit conversion warning (Jarod Wilson) [1938030] - bus: mhi: core: Fix error handling in mhi_register_controller() (Jarod Wilson) [1938030] - bus: mhi: core: Fix device hierarchy (Jarod Wilson) [1938030] - bus: mhi: core: Indexed MHI controller name (Jarod Wilson) [1938030] - bus: mhi: core: Remove MHI event ring IRQ handlers when powering down (Jarod Wilson) [1938030] - bus: mhi: core: Mark and maintain device states early on after power down (Jarod Wilson) [1938030] - bus: mhi: core: Separate system error and power down handling (Jarod Wilson) [1938030] - bus: mhi: core: Check for IRQ availability during registration (Jarod Wilson) [1938030] - bus: mhi: core: Move to an error state on mission mode failure (Jarod Wilson) [1938030] - bus: mhi: core: Use appropriate label in firmware load handler API (Jarod Wilson) [1938030] - bus: mhi: core: Move to an error state on any firmware load failure (Jarod Wilson) [1938030] - bus: mhi: core: Prevent sending multiple RDDM entry callbacks (Jarod Wilson) [1938030] - bus: mhi: core: Move to SYS_ERROR regardless of RDDM capability (Jarod Wilson) [1938030] - bus: mhi: core: Skip device wake in error or shutdown states (Jarod Wilson) [1938030] - bus: mhi: core: Move to using high priority workqueue (Jarod Wilson) [1938030] - bus: mhi: core: Use appropriate names for firmware load functions (Jarod Wilson) [1938030] - bus: mhi: core: Skip RDDM download for unknown execution environment (Jarod Wilson) [1938030] - bus: mhi: core: Rename RDDM download function to use proper words (Jarod Wilson) [1938030] - bus: mhi: core: Remove unused mhi_fw_load_worker() declaration (Jarod Wilson) [1938030] - bus: mhi: core: Expose mhi_get_exec_env() API for controllers (Jarod Wilson) [1938030] - bus: mhi: core: Add missing EXPORT_SYMBOL for mhi_get_mhi_state() (Jarod Wilson) [1938030] - bus: mhi: core: Remove unnecessary counter from mhi_firmware_copy() (Jarod Wilson) [1938030] - bus: mhi: Fix channel close issue on driver remove (Jarod Wilson) [1938030] - bus: mhi: core: Fix null pointer access when parsing MHI configuration (Jarod Wilson) [1938030] - bus: mhi: Add MHI PCI support for WWAN modems (Jarod Wilson) [1938030] - bus: mhi: core: fix potential operator-precedence with BHI macros (Jarod Wilson) [1938030] - bus: mhi: core: Remove double locking from mhi_driver_remove() (Jarod Wilson) [1938030] - bus: mhi: Remove auto-start option (Jarod Wilson) [1938030] - bus: mhi: Add mhi_queue_is_full function (Jarod Wilson) [1938030] - bus: mhi: debugfs: Print channel context read-pointer (Jarod Wilson) [1938030] - bus: mhi: core: Fix the building of MHI module (Jarod Wilson) [1938030] - bus: mhi: Remove unused nr_irqs_req variable (Jarod Wilson) [1938030] - bus: mhi: core: Allow shared IRQ for event rings (Jarod Wilson) [1938030] - bus: mhi: core: Introduce sysfs entries for MHI (Jarod Wilson) [1938030] - bus: mhi: core: Introduce debugfs entries for MHI (Jarod Wilson) [1938030] - bus: mhi: Fix entries based on Kconfig coding style (Jarod Wilson) [1938030] - bus: mhi: Remove include of rwlock_types.h (Jarod Wilson) [1938030] - bus: mhi: core: Add const qualifier to MHI config information (Jarod Wilson) [1938030] - bus: mhi: core: Introduce APIs to allocate and free the MHI controller (Jarod Wilson) [1938030] - bus: mhi: core: Read and save device hardware information from BHI (Jarod Wilson) [1938030] - bus: mhi: core: Introduce counters to track MHI device state transitions (Jarod Wilson) [1938030] - bus: mhi: core: Introduce helper function to check device state (Jarod Wilson) [1938030] - bus: mhi: core: Use generic name field for an MHI device (Jarod Wilson) [1938030] - bus: mhi: core: Trigger host resume if suspended during mhi_device_get() (Jarod Wilson) [1938030] - bus: mhi: core: Use helper API to trigger a non-blocking host resume (Jarod Wilson) [1938030] - bus: mhi: core: Abort suspends due to outgoing pending packets (Jarod Wilson) [1938030] - bus: mhi: core: Remove double occurrence for mhi_ctrl_ev_task() declaration (Jarod Wilson) [1938030] - bus: mhi: fix doubled words and struct image_info kernel-doc (Jarod Wilson) [1938030] - bus: mhi: core: Handle syserr during power_up (Jarod Wilson) [1938030] - bus: mhi: core: Handle write lock properly in mhi_pm_m0_transition (Jarod Wilson) [1938030] - bus: mhi: core: Do not process SYS_ERROR if RDDM is supported (Jarod Wilson) [1938030] - bus: mhi: core: Skip handling BHI irq if MHI reg access is not allowed (Jarod Wilson) [1938030] - bus: mhi: core: Handle disable transitions in state worker (Jarod Wilson) [1938030] - bus: mhi: core: Remove the system error worker thread (Jarod Wilson) [1938030] - bus: mhi: core: Ensure non-zero session or sequence ID values are used (Jarod Wilson) [1938030] - bus: mhi: core: Improve debug logs for loading firmware (Jarod Wilson) [1938030] - bus: mhi: core: Return appropriate error codes for AMSS load failure (Jarod Wilson) [1938030] - bus: mhi: core: Handle firmware load using state worker (Jarod Wilson) [1938030] - bus: mhi: core: Read transfer length from an event properly (Jarod Wilson) [1938030] - bus: mhi: core: Add range check for channel id received in event ring (Jarod Wilson) [1938030] - bus: mhi: core: Cache intmod from mhi event to mhi channel (Jarod Wilson) [1938030] - bus: mhi: core: Refactor mhi queue APIs (Jarod Wilson) [1938030] - bus: mhi: core: Fix some error return code (Jarod Wilson) [1938030] - bus: mhi: core: Fix channel device name conflict (Jarod Wilson) [1938030] - bus: mhi: core: Fix typo in comment (Jarod Wilson) [1938030] - bus: mhi: core: Offload register accesses to the controller (Jarod Wilson) [1938030] - bus: mhi: core: Remove link_status() callback (Jarod Wilson) [1938030] - bus: mhi: core: Make sure to powerdown if mhi_sync_power_up fails (Jarod Wilson) [1938030] - bus: mhi: Fix parsing of mhi_flags (Jarod Wilson) [1938030] - bus: mhi: core: Fix a NULL vs IS_ERR check in mhi_create_devices() (Jarod Wilson) [1938030] - bus: mhi: core: Add support for MHI suspend and resume (Jarod Wilson) [1938030] - bus: mhi: core: Drop the references to mhi_dev in mhi_destroy_device() (Jarod Wilson) [1938030] - bus: mhi: core: Initialize bhie field in mhi_cntrl for RDDM capture (Jarod Wilson) [1938030] - bus: mhi: core: Add support for reading MHI info from device (Jarod Wilson) [1938030] - bus: mhi: core: Pass module owner during client driver registration (Jarod Wilson) [1938030] - bus/mhi: fix printk format for size_t (Jarod Wilson) [1938030] - bus: mhi: core: Add uevent support for module autoloading (Jarod Wilson) [1938030] - bus: mhi: core: Add support for data transfer (Jarod Wilson) [1938030] - bus: mhi: core: Add support for processing events from client device (Jarod Wilson) [1938030] - bus: mhi: core: Add support for downloading RDDM image during panic (Jarod Wilson) [1938030] - bus: mhi: core: Add support for downloading firmware over BHIe (Jarod Wilson) [1938030] - bus: mhi: core: Add support for basic PM operations (Jarod Wilson) [1938030] - bus: mhi: core: Add support for PM state transitions (Jarod Wilson) [1938030] - bus: mhi: core: Add support for ringing channel/event ring doorbells (Jarod Wilson) [1938030] - bus: mhi: core: Add support for creating and destroying MHI devices (Jarod Wilson) [1938030] - bus: mhi: core: Add support for registering MHI client drivers (Jarod Wilson) [1938030] - bus: mhi: core: Add support for registering MHI controllers (Jarod Wilson) [1938030]- ipmi: remove open coded version of SMBus block write (Tony Camuso) [1947126] - char: ipmi: convert comma to semicolon (Tony Camuso) [1947126] - ipmi: msghandler: Suppress suspicious RCU usage warning (Tony Camuso) [1947126] - ipmi/watchdog: replace atomic_add() and atomic_sub() (Tony Camuso) [1947126] - char: ipmi: remove unneeded break (Tony Camuso) [1947126] - ipmi_si: Fix wrong return value in try_smi_init() (Tony Camuso) [1947126] - ipmi: msghandler: Fix a signedness bug (Tony Camuso) [1947126] - ipmi: add retry in try_get_dev_id() (Tony Camuso) [1947126] - ipmi: Clean up some printks (Tony Camuso) [1947126] - ipmi:msghandler: retry to get device id on an error (Tony Camuso) [1947126] - ipmi:sm: Print current state when the state is invalid (Tony Camuso) [1947126] - ipmi: Reset response handler when failing to send the command (Tony Camuso) [1947126] - ipmi: add a newline when printing parameter 'panic_op' by sysfs (Tony Camuso) [1947126] - cpuidle: Select polling interval based on a c-state with a longer target residency (Mark Langsdorf) [1922024] - cpuidle: big.LITTLE: enable driver only on Peach-Pit/Pi Chromebooks (Mark Langsdorf) [1922024] - cpuidle: record state entry rejection statistics (Mark Langsdorf) [1922024] - nitro_enclaves: Fix stale file descriptors on failed usercopy (Vitaly Kuznetsov) [1953717] - iavf: amend removal of MODULE_VERSION (Stefan Assmann) [1955738] - ixgbevf: Amend commit acf03026ec5a to include a version in module info. (Ken Cox) [1955764] - devlink: move flash end and begin to core devlink (Petr Oros) [1935671] - devlink: move request_firmware out of driver (Petr Oros) [1935671] - ice: add additional debug logging for firmware update (Petr Oros) [1935671] - ice: add support for flash update overwrite mask (Petr Oros) [1935671] - driver core: auxiliary bus: Fix calling stage for auxiliary bus init (Ivan Vecera) [1933820] - driver core: auxiliary bus: Fix auxiliary bus shutdown null auxdrv ptr (Ivan Vecera) [1933820] - driver core: auxiliary bus: minor coding style tweaks (Ivan Vecera) [1933820] - driver core: auxiliary bus: make remove function return void (Ivan Vecera) [1933820] - driver core: auxiliary bus: move slab.h from include file (Ivan Vecera) [1933820] - Add auxiliary bus support (Ivan Vecera) [1933820] - modpost: file2alias: go back to simple devtable lookup (Ivan Vecera) [1933820] - scsi: lpfc: Fix bad memory access during VPD DUMP mailbox command (Dick Kennedy) [1923762] - scsi: lpfc: Fix DMA virtual address ptr assignment in bsg (Dick Kennedy) [1923762] - scsi: lpfc: Fix illegal memory access on Abort IOCBs (Dick Kennedy) [1923762] - scsi: lpfc: Copyright updates for 12.8.0.9 patches (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.9 (Dick Kennedy) [1923762] - scsi: lpfc: Eliminate use of LPFC_DRIVER_NAME in lpfc_attr.c (Dick Kennedy) [1923762] - scsi: lpfc: Standardize discovery object logging format (Dick Kennedy) [1923762] - scsi: lpfc: Fix various trivial errors in comments and log messages (Dick Kennedy) [1923762] - scsi: lpfc: Remove unsupported mbox PORT_CAPABILITIES logic (Dick Kennedy) [1923762] - scsi: lpfc: Fix lpfc_hdw_queue attribute being ignored (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing FDMI registrations after Mgmt Svc login (Dick Kennedy) [1923762] - scsi: lpfc: Fix silent memory allocation failure in lpfc_sli4_bsg_link_diag_test() (Dick Kennedy) [1923762] - scsi: lpfc: Fix use-after-free on unused nodes after port swap (Dick Kennedy) [1923762] - scsi: lpfc: Fix error handling for mailboxes completed in MBX_POLL mode (Dick Kennedy) [1923762] - scsi: lpfc: Fix lack of device removal on port swaps with PRLIs (Dick Kennedy) [1923762] - scsi: lpfc: Fix NMI crash during rmmod due to circular hbalock dependency (Dick Kennedy) [1923762] - scsi: lpfc: Fix reference counting errors in lpfc_cmpl_els_rsp() (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when a REG_RPI mailbox fails triggering a LOGO response (Dick Kennedy) [1923762] - scsi: lpfc: Fix rmmod crash due to bad ring pointers to abort_iotag (Dick Kennedy) [1923762] - scsi: lpfc: Fix gcc -Wstringop-overread warning (Dick Kennedy) [1923762] - scsi: lpfc: Fix a typo (Dick Kennedy) [1923762] - scsi: lpfc: Fix a typo (Dick Kennedy) [1923762] - scsi: lpfc: Fix kernel-doc formatting issue (Dick Kennedy) [1923762] - scsi: lpfc: Fix a few incorrectly named functions (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrectly documented function lpfc_debugfs_commonxripools_data() (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of misnamed functions (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of kernel-doc misdemeanours (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrect naming of __lpfc_update_fcf_record() (Dick Kennedy) [1923762] - scsi: lpfc: Fix formatting and misspelling issues (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of kernel-doc issues (Dick Kennedy) [1923762] - scsi: lpfc: Update copyrights for 12.8.0.7 and 12.8.0.8 changes (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.8 (Dick Kennedy) [1923762] - scsi: lpfc: Correct function header comments related to ndlp reference counting (Dick Kennedy) [1923762] - scsi: lpfc: Reduce LOG_TRACE_EVENT logging for vports (Dick Kennedy) [1923762] - scsi: lpfc: Change wording of invalid pci reset log message (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash caused by switch reboot (Dick Kennedy) [1923762] - scsi: lpfc: Fix pt2pt state transition causing rmmod hang (Dick Kennedy) [1923762] - scsi: lpfc: Fix nodeinfo debugfs output (Dick Kennedy) [1923762] - scsi: lpfc: Fix ADISC handling that never frees nodes (Dick Kennedy) [1923762] - scsi: lpfc: Fix PLOGI ACC to be transmit after REG_LOGIN (Dick Kennedy) [1923762] - scsi: lpfc: Fix dropped FLOGI during pt2pt discovery recovery (Dick Kennedy) [1923762] - scsi: lpfc: Fix status returned in lpfc_els_retry() error exit path (Dick Kennedy) [1923762] - scsi: lpfc: Fix use after free in lpfc_els_free_iocb (Dick Kennedy) [1923762] - scsi: lpfc: Fix null pointer dereference in lpfc_prep_els_iocb() (Dick Kennedy) [1923762] - scsi: lpfc: Fix unnecessary null check in lpfc_release_scsi_buf (Dick Kennedy) [1923762] - scsi: lpfc: Fix pt2pt connection does not recover after LOGO (Dick Kennedy) [1923762] - scsi: lpfc: Fix lpfc_els_retry() possible null pointer dereference (Dick Kennedy) [1923762] - scsi: lpfc: Fix FLOGI failure due to accessing a freed node (Dick Kennedy) [1923762] - scsi: lpfc: Fix stale node accesses on stale RRQ request (Dick Kennedy) [1923762] - scsi: lpfc: Fix reftag generation sizing errors (Dick Kennedy) [1923762] - scsi: lpfc: Fix vport indices in lpfc_find_vport_by_vpid() (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrect dbde assignment when building target abts wqe (Dick Kennedy) [1923762] - scsi: lpfc: Fix 'physical' typos (Dick Kennedy) [1923762] - scsi: lpfc: Fix ancient double free (Dick Kennedy) [1923762] - scsi: lpfc: Fix kerneldoc inconsistency in lpfc_sli4_dump_page_a0() (Dick Kennedy) [1923762] - scsi: lpfc: Add support for eh_should_retry_cmd() (Dick Kennedy) [1923762] - scsi: lpfc: Simplify bool comparison (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.7 (Dick Kennedy) [1923762] - scsi: lpfc: Enhancements to LOG_TRACE_EVENT for better readability (Dick Kennedy) [1923762] - scsi: lpfc: Implement health checking when aborting I/O (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when nvmet transport calls host_release (Dick Kennedy) [1923762] - scsi: lpfc: Fix vport create logging (Dick Kennedy) [1923762] - scsi: lpfc: Fix NVMe recovery after mailbox timeout (Dick Kennedy) [1923762] - scsi: lpfc: Fix target reset failing (Dick Kennedy) [1923762] - scsi: lpfc: Fix error log messages being logged following SCSI task mgnt (Dick Kennedy) [1923762] - scsi: lpfc: Fix FW reset action if I/Os are outstanding (Dick Kennedy) [1923762] - scsi: lpfc: Use the nvme-fc transport supplied timeout for LS requests (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when a fabric node is released prematurely (Dick Kennedy) [1923762] - scsi: lpfc: Refresh ndlp when a new PRLI is received in the PRLI issue state (Dick Kennedy) [1923762] - scsi: lpfc: Fix auto sli_mode and its effect on CONFIG_PORT for SLI3 (Dick Kennedy) [1923762] - scsi: lpfc: Fix PLOGI S_ID of 0 on pt2pt config (Dick Kennedy) [1923762] - scsi: lpfc: Fix fall-through warnings for Clang (Dick Kennedy) [1923762] - scsi: lpfc: Correct null ndlp reference on routine exit (Dick Kennedy) [1923762] - scsi: lpfc: Use generic power management (Dick Kennedy) [1923762] - scsi: lpfc: Fix variable 'vport' set but not used in lpfc_sli4_abts_err_handler() (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing prototype for lpfc_nvmet_prep_abort_wqe() (Dick Kennedy) [1923762] - scsi: lpfc: Fix set but unused variables in lpfc_dev_loss_tmo_handler() (Dick Kennedy) [1923762] - scsi: lpfc: Fix set but not used warnings from Rework remote port lock handling (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing prototype warning for lpfc_fdmi_vendor_attr_mi() (Dick Kennedy) [1923762] - scsi: lpfc: Fix memory leak on lcb_context (Dick Kennedy) [1923762] - scsi: lpfc: Remove dead code on second !ndlp check (Dick Kennedy) [1923762] - scsi: lpfc: Fix pointer defereference before it is null checked issue (Dick Kennedy) [1923762] - scsi: lpfc: Update changed file copyrights for 2020 (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.6 (Dick Kennedy) [1923762] - scsi: lpfc: Convert abort handling to SLI-3 and SLI-4 handlers (Dick Kennedy) [1923762] - scsi: lpfc: Convert SCSI I/O completions to SLI-3 and SLI-4 handlers (Dick Kennedy) [1923762] - scsi: lpfc: Convert SCSI path to use common I/O submission path (Dick Kennedy) [1923762] - scsi: lpfc: Enable common send_io interface for SCSI and NVMe (Dick Kennedy) [1923762] - scsi: lpfc: Enable common wqe_template support for both SCSI and NVMe (Dick Kennedy) [1923762] - scsi: lpfc: Refactor WQE structure definitions for common use (Dick Kennedy) [1923762] - scsi: lpfc: Fix NPIV Fabric Node reference counting (Dick Kennedy) [1923762] - scsi: lpfc: Fix NPIV discovery and Fabric Node detection (Dick Kennedy) [1923762] - scsi: lpfc: Unsolicited ELS leaves node in incorrect state while dropping it (Dick Kennedy) [1923762] - scsi: lpfc: Remove ndlp when a PLOGI/ADISC/PRLI/REG_RPI ultimately fails (Dick Kennedy) [1923762] - scsi: lpfc: Rework remote port lock handling (Dick Kennedy) [1923762] - scsi: lpfc: Honor module parameter lpfc_use_adisc (Dick Kennedy) [1923762] - scsi: lpfc: Fix refcounting around SCSI and NVMe transport APIs (Dick Kennedy) [1923762] - scsi: lpfc: Fix removal of SCSI transport device get and put on dev structure (Dick Kennedy) [1923762] - scsi: lpfc: Rework locations of ndlp reference taking (Dick Kennedy) [1923762] - scsi: lpfc: Rework remote port ref counting and node freeing (Dick Kennedy) [1923762] - scsi: lpfc: remove ScsiResult macro (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvmet: Fix-up some formatting and doc-rot issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvme: Fix some kernel-doc related issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvme: Remove unused variable 'phba' (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_bsg: Provide correct documentation for a bunch of functions (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_debugfs: Fix a couple of function documentation issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_attr: Fix-up a bunch of kernel-doc misdemeanours (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_attr: Demote kernel-doc format for redefined functions (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_scsi: Fix a whole host of kernel-doc issues (Dick Kennedy) [1923762] - block: return -EBUSY when there are open partitions in blkdev_reread_part (Ming Lei) [1936800] - block: Try to handle busy underlying device on discard (Ming Lei) [1936800] - md: check for NULL ->meta_bdev before calling bdev_read_only (Ming Lei) [1936800] - blk-settings: align max_sectors on "logical_block_size" boundary (Ming Lei) [1936800] - nbd: handle device refs for DESTROY_ON_DISCONNECT properly (Ming Lei) [1936800] - kyber: introduce kyber_depth_updated() (Ming Lei) [1936800] - loop: fix I/O error on fsync() in detached loop devices (Ming Lei) [1936800] - block: fix potential IO hang when turning off io_poll (Ming Lei) [1936800] - bfq: Use only idle IO periods for think time calculations (Ming Lei) [1936800] - bfq: Use 'ttime' local variable (Ming Lei) [1936800] - bfq: Avoid false bfq queue merging (Ming Lei) [1936800] - bfq: bfq_check_waker() should be static (Ming Lei) [1936800] - block, bfq: make waker-queue detection more robust (Ming Lei) [1936800] - block, bfq: save also injection state on queue merging (Ming Lei) [1936800] - block, bfq: save also weight-raised service on queue merging (Ming Lei) [1936800] - block, bfq: fix switch back from soft-rt weitgh-raising (Ming Lei) [1936800] - block, bfq: re-evaluate convenience of I/O plugging on rq arrivals (Ming Lei) [1936800] - block, bfq: replace mechanism for evaluating I/O intensity (Ming Lei) [1936800] - block: set .bi_max_vecs as actual allocated vector number (Ming Lei) [1936800] - block: don't allocate inline bvecs if this bioset needn't bvecs (Ming Lei) [1936800] - block: don't pass BIOSET_NEED_BVECS for q->bio_split (Ming Lei) [1936800] - block: manage bio slab cache by xarray (Ming Lei) [1936800] - block, bfq: do not expire a queue when it is the only busy one (Ming Lei) [1936800] - block, bfq: avoid spurious switches to soft_rt of interactive queues (Ming Lei) [1936800] - block, bfq: do not raise non-default weights (Ming Lei) [1936800] - block, bfq: increase time window for waker detection (Ming Lei) [1936800] - block, bfq: use half slice_idle as a threshold to check short ttime (Ming Lei) [1936800] - brd: remove the end of device check in brd_do_bvec (Ming Lei) [1936800] - block: propagate BLKROSET on the whole device to all partitions (Ming Lei) [1936800] - block: add a hard-readonly flag to struct gendisk (Ming Lei) [1936800] - block: remove the NULL bdev check in bdev_read_only (Ming Lei) [1936800] - dm: use bdev_read_only to check if a device is read-only (Ming Lei) [1936800] - block: reopen the device in blkdev_reread_part (Ming Lei) [1936800] - block, bfq: set next_rq to waker_bfqq->next_rq in waker injection (Ming Lei) [1936800] - Revert "block: simplify set_init_blocksize" to regain lost performance (Ming Lei) [1936800] - bfq-iosched: Revert "bfq: Fix computation of shallow depth" (Ming Lei) [1936800] - blk-mq-debugfs: Add decode for BLK_MQ_F_TAG_HCTX_SHARED (Ming Lei) [1936800] - bfq: Fix computation of shallow depth (Ming Lei) [1936800] - block: rsxx: select CONFIG_CRC32 (Ming Lei) [1936800] - block: add debugfs stanza for QUEUE_FLAG_NOWAIT (Ming Lei) [1936800] - blk-mq: Don't complete on a remote CPU in force threaded mode (Ming Lei) [1936800] - blk-mq: Remove 'running from the wrong CPU' warning (Ming Lei) [1936800] - block: disable iopoll for split bio (Ming Lei) [1936800] - block: Improve blk_revalidate_disk_zones() checks (Ming Lei) [1936800] - sbitmap: replace CAS with atomic and (Ming Lei) [1936800] - sbitmap: remove swap_lock (Ming Lei) [1936800] - sbitmap: optimise sbitmap_deferred_clear() (Ming Lei) [1936800] - blk-mq: skip hybrid polling if iopoll doesn't spin (Ming Lei) [1936800] - blktrace: fix up a kerneldoc comment (Ming Lei) [1936800] - block: remove the unused block_sleeprq tracepoint (Ming Lei) [1936800] - blk-throttle: don't check whether or not lower limit is valid if CONFIG_BLK_DEV_THROTTLING_LOW is off (Ming Lei) [1936800] - block: fix inflight statistics of part0 (Ming Lei) [1936800] - block: optimise for_each_bvec() advance (Ming Lei) [1936800] - block: opencode devcgroup_inode_permission (Ming Lei) [1936800] - block: move bdput() to the callers of __blkdev_get (Ming Lei) [1936800] - block: refactor blkdev_get (Ming Lei) [1936800] - block: refactor __blkdev_put (Ming Lei) [1936800] - block: switch bdgrab to use igrab (Ming Lei) [1936800] - block: change the hash used for looking up block devices (Ming Lei) [1936800] - block: use put_device in put_disk (Ming Lei) [1936800] - block: use disk_part_iter_exit in disk_part_iter_next (Ming Lei) [1936800] - block: add a bdev_kobj helper (Ming Lei) [1936800] - block: remove a superflous check in blkpg_do_ioctl (Ming Lei) [1936800] - block: remove a duplicate __disk_get_part prototype (Ming Lei) [1936800] - loop: do not call set_blocksize (Ming Lei) [1936800] - zram: do not call set_blocksize (Ming Lei) [1936800] - block: wbt: Remove unnecessary invoking of wbt_update_limits in wbt_init (Ming Lei) [1936800] - virtio-blk: remove a spurious call to revalidate_disk_size (Ming Lei) [1936800] - md: remove a spurious call to revalidate_disk_size in update_size (Ming Lei) [1936800] - aoe: don't call set_capacity from irq context (Ming Lei) [1936800] - nbd: validate the block size in nbd_set_size (Ming Lei) [1936800] - nbd: refactor size updates (Ming Lei) [1936800] - nbd: move the task_recv check into nbd_size_update (Ming Lei) [1936800] - nbd: remove the call to set_blocksize (Ming Lei) [1936800] - loop: let set_capacity_revalidate_and_notify update the bdev size (Ming Lei) [1936800] - block: remove the call to __invalidate_device in check_disk_size_change (Ming Lei) [1936800] - block: fix the kerneldoc comment for __register_blkdev (Ming Lei) [1936800] - block: switch gendisk lookup to a simple xarray (Ming Lei) [1936800] - ide: switch to __register_blkdev for command set probing (Ming Lei) [1936800] - md: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - loop: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - brd: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - sd: use __register_blkdev to avoid a modprobe for an unregistered dev_t (Ming Lei) [1936800] - swim: don't call blk_register_region (Ming Lei) [1936800] - ide: remove ide_{,un}register_region (Ming Lei) [1936800] - block: add an optional probe callback to major_names (Ming Lei) [1936800] - block: rework requesting modules for unclaimed devices (Ming Lei) [1936800] - block: split block_class_lock (Ming Lei) [1936800] - block: open code kobj_map into in block/genhd.c (Ming Lei) [1936800] - block: cleanup del_gendisk a bit (Ming Lei) [1936800] - loop: use set_disk_ro (Ming Lei) [1936800] - dasd: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - md: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - rbd: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - block: add a new set_read_only method (Ming Lei) [1936800] - blk-cgroup: fix a hd_struct leak in blkcg_fill_root_iostats (Ming Lei) [1936800] - blk-cgroup: Pre-allocate tree node on blkg_conf_prep (Ming Lei) [1936800] - blk-cgroup: Fix memleak on error path (Ming Lei) [1936800] - blk-mq: remove the calling of local_memory_node() (Ming Lei) [1936800] - zram: Fix __zram_bvec_{read,write}() locking order (Ming Lei) [1936800] - skd_main: remove unused including (Ming Lei) [1936800] - sgl_alloc_order: fix memory leak (Ming Lei) [1936800] - block: fix uapi blkzoned.h comments (Ming Lei) [1936800] - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue (Ming Lei) [1936800] - blk-mq: get rid of the dead flush handle code path (Ming Lei) [1936800] - block: get rid of unnecessary local variable (Ming Lei) [1936800] - block: fix comment and add lockdep assert (Ming Lei) [1936800] - blk-mq: use helper function to test hw stopped (Ming Lei) [1936800] - block: use helper function to test queue register (Ming Lei) [1936800] - block: remove redundant mq check (Ming Lei) [1936800] - block: invoke blk_mq_exit_sched no matter whether have .exit_sched (Ming Lei) [1936800] - block: ratelimit handle_bad_sector() message (Ming Lei) [1936800] - blk-throttle: Re-use the throtl_set_slice_end() (Ming Lei) [1936800] - blk-throttle: Open code __throtl_de/enqueue_tg() (Ming Lei) [1936800] - blk-throttle: Move service tree validation out of the throtl_rb_first() (Ming Lei) [1936800] - blk-throttle: Move the list operation after list validation (Ming Lei) [1936800] - blk-throttle: Fix IO hang for a corner case (Ming Lei) [1936800] - blk-throttle: Avoid tracking latency if low limit is invalid (Ming Lei) [1936800] - blk-throttle: Avoid getting the current time if tg->last_finish_time is 0 (Ming Lei) [1936800] - blk-throttle: Remove a meaningless parameter for throtl_downgrade_state() (Ming Lei) [1936800] - block: Remove redundant 'return' statement (Ming Lei) [1936800] - block: Consider only dispatched requests for inflight statistic (Ming Lei) [1936800] - block: remove the unused blk_integrity_merge_bio export (Ming Lei) [1936800] - block: remove the unused blk_integrity_merge_rq export (Ming Lei) [1936800] - blk-mq: add cond_resched() in __blk_mq_alloc_rq_maps() (Ming Lei) [1936800] - vsprintf: use bd_partno in bdev_name (Ming Lei) [1936800] - block: use bd_partno in bdevname (Ming Lei) [1936800] - target/iblock: fix holder printing in iblock_show_configfs_dev_params (Ming Lei) [1936800] - drbd: don't set ->bd_contains (Ming Lei) [1936800] - drbd: don't detour through bd_contains for the gendisk (Ming Lei) [1936800] - block: add a bdev_is_partition helper (Ming Lei) [1936800] - bdi: remove BDI_CAP_CGROUP_WRITEBACK (Ming Lei) [1936800] - block: lift setting the readahead size into the block layer (Ming Lei) [1936800] - bdi: initialize ->ra_pages and ->io_pages in bdi_init (Ming Lei) [1936800] - block: ensure bdi->io_pages is always initialized (Ming Lei) [1936800] - aoe: set an optimal I/O size (Ming Lei) [1936800] - drbd: remove dead code in device_to_statistics (Ming Lei) [1936800] - raw: don't keep unopened block device around (Ming Lei) [1936800] - zram: cleanup backing_dev_store (Ming Lei) [1936800] - zram: fix double free backing device (Ming Lei) [1936800] - pktcdvd: use blkdev_get_by_dev instead of open coding it (Ming Lei) [1936800] - pktcdvd: remove the if 0'ed pkt_start_recovery function (Ming Lei) [1936800] - block: cleanup blkdev_bszset (Ming Lei) [1936800] - block: move the NEED_PART_SCAN flag to struct gendisk (Ming Lei) [1936800] - block: drop double zeroing (Ming Lei) [1936800] - blk-throttle: Avoid checking bps/iops limitation if bps or iops is unlimited (Ming Lei) [1936800] - blk-throttle: Avoid calculating bps/iops limitation repeatedly (Ming Lei) [1936800] - blk-throttle: Define readable macros instead of static variables (Ming Lei) [1936800] - blk-throttle: Use readable READ/WRITE macros (Ming Lei) [1936800] - blk-throttle: Fix some comments' typos (Ming Lei) [1936800] - block: introduce part_[begin|end]_io_acct (Ming Lei) [1936800] - blkcg: add plugging support for punt bio (Ming Lei) [1936800] - block: remove check_disk_change (Ming Lei) [1936800] - sr: simplify sr_block_revalidate_disk (Ming Lei) [1936800] - sr: use bdev_check_media_change (Ming Lei) [1936800] - sd: use bdev_check_media_change (Ming Lei) [1936800] - md: use bdev_check_media_change (Ming Lei) [1936800] - gdrom: use bdev_check_media_change (Ming Lei) [1936800] - paride/pcd: use bdev_check_media_change (Ming Lei) [1936800] - xsysace: simplify media change handling (Ming Lei) [1936800] - xsysace: use bdev_check_media_change (Ming Lei) [1936800] - swim3: use bdev_check_media_changed (Ming Lei) [1936800] - swim: simplify media change handling (Ming Lei) [1936800] - swim: use bdev_check_media_change (Ming Lei) [1936800] - ataflop: use bdev_check_media_change (Ming Lei) [1936800] - amiflop: use bdev_check_media_change (Ming Lei) [1936800] - block: add a bdev_check_media_change helper (Ming Lei) [1936800] - block: Remove unused blk_mq_sched_free_hctx_data() (Ming Lei) [1936800] - block: Do not discard buffers under a mounted filesystem (Ming Lei) [1936800] - fs: Don't invalidate page buffers in block_write_full_page() (Ming Lei) [1936800] - block: remove revalidate_disk() (Ming Lei) [1936800] - nvdimm: simplify revalidate_disk handling (Ming Lei) [1936800] - sd: open code revalidate_disk (Ming Lei) [1936800] - nvme: opencode revalidate_disk in nvme_validate_ns (Ming Lei) [1936800] - block: use revalidate_disk_size in set_capacity_revalidate_and_notify (Ming Lei) [1936800] - block: add a new revalidate_disk_size helper (Ming Lei) [1936800] - block: rename bd_invalidated (Ming Lei) [1936800] - block: don't clear bd_invalidated in check_disk_size_change (Ming Lei) [1936800] - block: better deal with the delayed not supported case in blk_cloned_rq_check_limits (Ming Lei) [1936800] - block: Return blk_status_t instead of errno codes (Ming Lei) [1936800] - block: grant IOPRIO_CLASS_RT to CAP_SYS_NICE (Ming Lei) [1936800] - block: remove the unused q argument to part_in_flight and part_in_flight_rw (Ming Lei) [1936800] - block: remove the disk argument to delete_partition (Ming Lei) [1936800] - block: move the devcgroup_inode_permission call to blkdev_get (Ming Lei) [1936800] - blk-mq: use BLK_MQ_NO_TAG for no tag (Ming Lei) [1936800] - block: Move blk_mq_bio_list_merge() into blk-merge.c (Ming Lei) [1936800] - block: Move bio merge related functions into blk-merge.c (Ming Lei) [1936800] - blk-wbt: Remove obsolete multiqueue I/O scheduling comment (Ming Lei) [1936800] - raw: deprecate the raw driver (Ming Lei) [1936800] - nvme: don't call revalidate_disk from nvme_set_queue_dying (Ming Lei) [1936800] - block: fix locking for struct block_device size updates (Ming Lei) [1936800] - block: replace bd_set_size with bd_set_nr_sectors (Ming Lei) [1936800] - block: Make request_queue.rpm_status an enum (Ming Lei) [1936800] - mmc: remove the call to check_disk_change (Ming Lei) [1936800] - block: integrate bd_start_claiming into __blkdev_get (Ming Lei) [1936800] - block: use bd_prepare_to_claim directly in the loop driver (Ming Lei) [1936800] - block: refactor bd_start_claiming (Ming Lei) [1936800] - block: simplify the restart case in __blkdev_get (Ming Lei) [1936800] - block: simplify set_init_blocksize (Ming Lei) [1936800] - block: remove flush_disk (Ming Lei) [1936800] - block: move block-related definitions out of fs.h (Ming Lei) [1936800] - xen-blkfront.c: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1936800]- redhat/configs: Add CONFIG_PINCTRL_EMMITSBURG (David Arcari) [1959506] - redhat/configs: Remove CONFIG_EMMITSBURG (David Arcari) [1959506] - fuse: fix write deadlock (Miklos Szeredi) [1904597] - sched/debug: Fix cgroup_path[] serialization (Waiman Long) [1954363] - KVM: x86/xen: Take srcu lock when accessing kvm_memslots() (Paolo Bonzini) [1945742] - KVM: SVM: Allocate SEV command structures on local stack (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack and common buffer for INIT command (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack and common buffer for status commands (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack for small SEV command buffers (Paolo Bonzini) [1945742] - crypto: ccp: Play nice with vmalloc'd memory for SEV command structs (Paolo Bonzini) [1945742] - crypto: ccp: Reject SEV commands with mismatching command buffer (Paolo Bonzini) [1945742] - crypto: ccp: Detect and reject "invalid" addresses destined for PSP (Paolo Bonzini) [1945742] - crypto: ccp: Free SEV device if SEV init fails (Paolo Bonzini) [1945742] - crypto: ccp - Fix sparse warnings in sev-dev (Paolo Bonzini) [1945742] - drivers/crypto/ccp/sev-dev.c: get rid of pointless access_ok() (Paolo Bonzini) [1945742] - crypto: ccp - Add support for SEV-ES to the PSP driver (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_RECEIVE_FINISH command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_RECEIVE_UPDATE_DATA command (Paolo Bonzini) [1945742] - KVM: SVM: Add support for KVM_SEV_RECEIVE_START command (Paolo Bonzini) [1945742] - KVM: SVM: Add support for KVM_SEV_SEND_CANCEL command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_SEND_FINISH command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEND_UPDATE_DATA command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV SEND_START command (Paolo Bonzini) [1945742] - KVM: Boost vCPU candidate in user mode which is delivering interrupt (Paolo Bonzini) [1945742] - nSVM: Check addresses of MSR and IO permission maps (Paolo Bonzini) [1945742] - KVM: SVM: Define actual size of IOPM and MSRPM tables (Paolo Bonzini) [1945742] - KVM: vmx: add mismatched size assertions in vmcs_check32() (Paolo Bonzini) [1945742] - KVM: Add proper lockdep assertion in I/O bus unregister (Paolo Bonzini) [1945742] - KVM: Stop looking for coalesced MMIO zones if the bus is destroyed (Paolo Bonzini) [1945742] - KVM: Destroy I/O bus devices on unregister failure _after_ sync'ing SRCU (Paolo Bonzini) [1945742] - KVM: SVM: Enhance and clean up the vmcb tracking comment in pre_svm_run() (Paolo Bonzini) [1945742] - KVM: SVM: Add a comment to clarify what vcpu_svm.vmcb points at (Paolo Bonzini) [1945742] - KVM: SVM: Drop vcpu_svm.vmcb_pa (Paolo Bonzini) [1945742] - KVM: SVM: Don't set current_vmcb->cpu when switching vmcb (Paolo Bonzini) [1945742] - KVM: SVM: Make sure GHCB is mapped before updating (Paolo Bonzini) [1945742] - KVM: X86: Do not yield to self (Paolo Bonzini) [1945742] - KVM: X86: Count attempted/successful directed yield (Paolo Bonzini) [1945742] - KVM: x86/mmu: Protect the tdp_mmu_roots list with RCU (Paolo Bonzini) [1945742] - KVM: x86/mmu: handle cmpxchg failure in kvm_tdp_mmu_get_root (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make TDP MMU root refcount atomic (Paolo Bonzini) [1945742] - KVM: x86: implement KVM_CAP_SET_GUEST_DEBUG2 (Paolo Bonzini) [1945742] - KVM: x86/mmu: Refactor yield safe root iterator (Paolo Bonzini) [1945742] - KVM: x86/mmu: Merge TDP MMU put and free root (Paolo Bonzini) [1945742] - KVM: x86/mmu: use tdp_mmu_free_sp to free roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move kvm_mmu_(get|put)_root to TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Re-add const qualifier in kvm_tdp_mmu_zap_collapsible_sptes (Paolo Bonzini) [1945742] - KVM: constify kvm_arch_flush_remote_tlbs_memslot (Paolo Bonzini) [1945742] - KVM: Explicitly use GFP_KERNEL_ACCOUNT for 'struct kvm_vcpu' allocations (Paolo Bonzini) [1945742] - KVM: MMU: protect TDP MMU pages only down to required level (Paolo Bonzini) [1945742] - KVM: introduce KVM_CAP_SET_GUEST_DEBUG2 (Paolo Bonzini) [1945742] - KVM: x86: pending exceptions must not be blocked by an injected event (Paolo Bonzini) [1945742] - KVM: nSVM: call nested_svm_load_cr3 on nested state load (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should include the autoload/autostore MSR lists (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should show the effective EFER (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should consider only the load controls of EFER/PAT (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should not conflate EFER and PAT presence in VMCS (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should not assume GUEST_IA32_EFER is valid (Paolo Bonzini) [1945742] - KVM: nSVM: improve SYSENTER emulation on AMD (Paolo Bonzini) [1945742] - KVM: x86: add guest_cpuid_is_intel (Paolo Bonzini) [1945742] - KVM: x86: Account a variety of miscellaneous allocations (Paolo Bonzini) [1945742] - KVM: SVM: Do not allow SEV/SEV-ES initialization after vCPUs are created (Paolo Bonzini) [1945742] - KVM: SVM: Do not set sev->es_active until KVM_SEV_ES_INIT completes (Paolo Bonzini) [1945742] - KVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Simplify code for aging SPTEs in TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove spurious clearing of dirty bit from TDP MMU SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use leaf-only loop for walking TDP SPTEs when changing SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass address space ID to TDP MMU root walkers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass address space ID to __kvm_tdp_mmu_zap_gfn_range() (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TLB flushes across address spaces for gfn range zap (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TLB flushes when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move flushing for "slot" handlers to caller for legacy MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TDP MMU TLB flushes when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/vPMU: Forbid reading from MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE (Paolo Bonzini) [1945742] - KVM: nSVM: If VMRUN is single-stepped, queue the #DB intercept in nested_svm_vmexit() (Paolo Bonzini) [1945742] - KVM: MMU: load PDPTRs outside mmu_lock (Paolo Bonzini) [1945742] - KVM: SVM: ensure that EFER.SVME is set when running nested guest or on nested vmexit (Paolo Bonzini) [1945742] - KVM: SVM: load control fields from VMCB12 before checking them (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't allow TDP MMU to yield when recovering NX pages (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure TLBs are flushed when yielding during GFN range zap (Paolo Bonzini) [1945742] - KVM: make: Fix out-of-source module builds (Paolo Bonzini) [1945742] - KVM: x86/vPMU: Forbid writing to MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE (Paolo Bonzini) [1945742] - KVM: x86: remove unused declaration of kvm_write_tsc() (Paolo Bonzini) [1945742] - KVM: clean up the unused argument (Paolo Bonzini) [1945742] - x86/kvm: Fix broken irq restoration in kvm_wait (Paolo Bonzini) [1945742] - KVM: X86: Fix missing local pCPU when executing wbinvd on all dirty pCPUs (Paolo Bonzini) [1945742] - KVM: x86: Protect userspace MSR filter with SRCU, and set atomically-ish (Paolo Bonzini) [1945742] - KVM: x86/mmu: Store the address space ID in the TDP iterator (Paolo Bonzini) [1945742] - KVM: x86/mmu: Factor out tdp_iter_return_to_root (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix RCU usage when atomically zapping SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix RCU usage in handle_removed_tdp_mmu_page (Paolo Bonzini) [1945742] - KVM: x86/mmu: Mark the PAE roots as decrypted for shadow paging (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use '0' as the one and only value for an invalid PAE root (Paolo Bonzini) [1945742] - KVM: VMX: Track root HPA instead of EPTP for paravirt Hyper-V TLB flush (Paolo Bonzini) [1945742] - KVM: VMX: Skip additional Hyper-V TLB EPTP flushes if one fails (Paolo Bonzini) [1945742] - KVM: VMX: Define Hyper-V paravirt TLB flush fields iff Hyper-V is enabled (Paolo Bonzini) [1945742] - KVM: VMX: Explicitly check for hv_remote_flush_tlb when loading pgd (Paolo Bonzini) [1945742] - KVM: VMX: Don't invalidate hv_tlb_eptp if the new EPTP matches (Paolo Bonzini) [1945742] - KVM: VMX: Invalidate hv_tlb_eptp to denote an EPTP mismatch (Paolo Bonzini) [1945742] - KVM: VMX: Do Hyper-V TLB flush iff vCPU's EPTP hasn't been flushed (Paolo Bonzini) [1945742] - KVM: VMX: Fold Hyper-V EPTP checking into it's only caller (Paolo Bonzini) [1945742] - KVM: VMX: Stash kvm_vmx in a local variable for Hyper-V paravirt TLB flush (Paolo Bonzini) [1945742] - KVM: VMX: Track common EPTP for Hyper-V's paravirt TLB flush (Paolo Bonzini) [1945742] - KVM: x86: Get active PCID only when writing a CR3 value (Paolo Bonzini) [1945742] - KVM/SVM: Move vmenter.S exception fixups out of line (Paolo Bonzini) [1945742] - KVM: x86/mmu: Dump reserved bits if they're detected on non-MMIO SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use low available bits for removed SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use is_removed_spte() instead of open coded equivalents (Paolo Bonzini) [1945742] - KVM: x86/mmu: Tweak auditing WARN for A/D bits to !PRESENT (was MMIO) (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use a dedicated bit to track shadow/MMU-present SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use high bits for host/mmu writable masks for EPT SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make Host-writable and MMU-writable bit locations dynamic (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move logic for setting SPTE masks for EPT into the MMU proper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Co-locate code for setting various SPTE masks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move initial kvm_mmu_set_mask_ptes() call into MMU proper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Document dependency bewteen TDP A/D type and saved bits (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use MMIO SPTE bits 53 and 52 for the MMIO generation (Paolo Bonzini) [1945742] - KVM: x86/mmu: Rename and document A/D scheme for TDP SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add module param to disable MMIO caching (for testing) (Paolo Bonzini) [1945742] - KVM: x86/mmu: Stop using software available bits to denote MMIO SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Rename 'mask' to 'spte' in MMIO SPTE helpers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Drop redundant trace_kvm_mmu_set_spte() in the TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Handle MMIO SPTEs directly in mmu_set_spte() (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't install bogus MMIO SPTEs if MMIO caching is disabled (Paolo Bonzini) [1945742] - KVM: x86/mmu: Retry page faults that hit an invalid memslot (Paolo Bonzini) [1945742] - KVM: x86/mmu: Disable MMIO caching if MMIO value collides with L1TF (Paolo Bonzini) [1945742] - KVM: x86/mmu: Bail from fast_page_fault() if SPTE is not shadow-present (Paolo Bonzini) [1945742] - KVM: x86/mmu: Check for shadow-present SPTE before querying A/D status (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add convenience wrapper for acting on single hva in TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add typedefs for rmap/iter handlers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use 'end' param in TDP MMU's test_age_gfn() (Paolo Bonzini) [1945742] - KVM: x86/mmu: WARN if TDP MMU's set_tdp_spte() sees multiple GFNs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove spurious TLB flush from TDP MMU's change_pte() hook (Paolo Bonzini) [1945742] - KVM: x86: mmu: initialize fault.async_page_fault in walk_addr_generic (Paolo Bonzini) [1945742] - KVM: x86: determine if an exception has an error code only when injecting it. (Paolo Bonzini) [1945742] - KVM: nSVM: Optimize vmcb12 to vmcb02 save area copies (Paolo Bonzini) [1945742] - KVM: SVM: Add support for Virtual SPEC_CTRL (Paolo Bonzini) [1945742] - x86/cpufeatures: Add the Virtual SPEC_CTRL feature (Paolo Bonzini) [1945742] - KVM: nSVM: always use vmcb01 to for vmsave/vmload of guest state (Paolo Bonzini) [1945742] - KVM: SVM: move VMLOAD/VMSAVE to C code (Paolo Bonzini) [1945742] - KVM: SVM: Skip intercepted PAUSE instructions after emulation (Paolo Bonzini) [1945742] - KVM: SVM: Don't manually emulate RDPMC if nrips=0 (Paolo Bonzini) [1945742] - KVM: x86: Move RDPMC emulation to common code (Paolo Bonzini) [1945742] - KVM: x86: Move trivial instruction-based exit handlers to common code (Paolo Bonzini) [1945742] - KVM: x86: Move XSETBV emulation to common code (Paolo Bonzini) [1945742] - KVM: nSVM: Add VMLOAD/VMSAVE helper to deduplicate code (Paolo Bonzini) [1945742] - KVM: nSVM: Add helper to synthesize nested VM-Exit without collateral (Paolo Bonzini) [1945742] - KVM: x86: Handle triple fault in L2 without killing L1 (Paolo Bonzini) [1945742] - KVM: SVM: Pass struct kvm_vcpu to exit handlers (and many, many other places) (Paolo Bonzini) [1945742] - KVM: SVM: merge update_cr0_intercept into svm_set_cr0 (Paolo Bonzini) [1945742] - KVM: nSVM: Trace VM-Enter consistency check failures (Paolo Bonzini) [1945742] - KVM: x86: Move nVMX's consistency check macro to common code (Paolo Bonzini) [1945742] - KVM: nSVM: Add missing checks for reserved bits to svm_set_nested_state() (Paolo Bonzini) [1945742] - KVM: nSVM: only copy L1 non-VMLOAD/VMSAVE data in svm_set_nested_state() (Paolo Bonzini) [1945742] - KVM: nSVM: do not mark all VMCB02 fields dirty on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: do not mark all VMCB01 fields dirty on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: do not copy vmcb01->control blindly to vmcb02->control (Paolo Bonzini) [1945742] - KVM: nSVM: rename functions and variables according to vmcbXY nomenclature (Paolo Bonzini) [1945742] - KVM: nSVM: Track the ASID generation of the vmcb vmrun through the vmcb (Paolo Bonzini) [1945742] - KVM: nSVM: Track the physical cpu of the vmcb vmrun through the vmcb (Paolo Bonzini) [1945742] - KVM: SVM: Use a separate vmcb for the nested L2 guest (Paolo Bonzini) [1945742] - KVM: nSVM: Set the shadow root level to the TDP level for nested NPT (Paolo Bonzini) [1945742] - KVM: SVM: Don't strip the C-bit from CR2 on #PF interception (Paolo Bonzini) [1945742] - KVM: x86/mmu: WARN on NULL pae_root or lm_root, or bad shadow root level (Paolo Bonzini) [1945742] - KVM: x86/mmu: Sync roots after MMU load iff load as successful (Paolo Bonzini) [1945742] - KVM: x86/mmu: Unexport MMU load/unload functions (Paolo Bonzini) [1945742] - KVM: x86: Defer the MMU unload to the normal path on an global INVPCID (Paolo Bonzini) [1945742] - KVM: nVMX: Defer the MMU reload to the normal path on an EPTP switch (Paolo Bonzini) [1945742] - KVM: x86/mmu: Set the C-bit in the PDPTRs and LM pseudo-PDPTRs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix and unconditionally enable WARNs to detect PAE leaks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Check PDPTRs before allocating PAE roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure MMU pages are available when allocating roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Allocate pae_root and lm_root pages in dedicated helper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Allocate the lm_root before allocating PAE roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Capture 'mmu' in a local variable when allocating roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Alloc page for PDPTEs when shadowing 32-bit NPT with 64-bit (Paolo Bonzini) [1945742] - KVM: x86: to track if L1 is running L2 VM (Paolo Bonzini) [1945742] - KVM: LAPIC: Advancing the timer expiration on guest initiated write (Paolo Bonzini) [1945742] - KVM: x86/mmu: Skip !MMU-present SPTEs when removing SP in exclusive mode (Paolo Bonzini) [1945742] - KVM: kvmclock: Fix vCPUs > 64 can't be online/hotpluged (Paolo Bonzini) [1945742] - kvm: x86: use NULL instead of using plain integer as pointer (Paolo Bonzini) [1945742] - KVM: SVM: Connect 'npt' module param to KVM's internal 'npt_enabled' (Paolo Bonzini) [1945742] - KVM: x86: Ensure deadline timer has truly expired before posting its IRQ (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix return code when clearing vcpu_info and vcpu_time_info (Paolo Bonzini) [1945742] - KVM: x86/mmu: Set SPTE_AD_WRPROT_ONLY_MASK if and only if PML is enabled (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Fix Hyper-V context null-ptr-deref (Paolo Bonzini) [1945742] - KVM: SVM: Fix nested VM-Exit on #GP interception handling (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Fix dummy check if lbr_desc->event is created (Paolo Bonzini) [1945742] - KVM: x86/mmu: Consider the hva in mmu_notifier retry (Paolo Bonzini) [1945742] - kernel.h: split out min()/max() et al. helpers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Skip mmu_notifier check when handling MMIO page fault (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove a variety of unnecessary exports (Paolo Bonzini) [1945742] - KVM: x86: Fold "write-protect large" use case into generic write-protect (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't set dirty bits when disabling dirty logging w/ PML (Paolo Bonzini) [1945742] - KVM: VMX: Dynamically enable/disable PML based on memslot dirty logging (Paolo Bonzini) [1945742] - KVM: x86: Further clarify the logic and comments for toggling log dirty (Paolo Bonzini) [1945742] - KVM: x86: Move MMU's PML logic to common code (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make dirty log size hook (PML) a value, not a function (Paolo Bonzini) [1945742] - KVM: x86/mmu: Expand on the comment in kvm_vcpu_ad_need_write_protect() (Paolo Bonzini) [1945742] - KVM: nVMX: Disable PML in hardware when running L2 (Paolo Bonzini) [1945742] - KVM: x86/mmu: Consult max mapping level when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass the memslot to the rmap callbacks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Split out max mapping level calculation to helper (Paolo Bonzini) [1945742] - KVM: nVMX: no need to undo inject_page_fault change on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: move nested vmrun tracepoint to enter_svm_guest_mode (Paolo Bonzini) [1945742] - KVM: VMX: read idt_vectoring_info a bit earlier (Paolo Bonzini) [1945742] - KVM: VMX: Allow INVPCID in guest without PCID (Paolo Bonzini) [1945742] - KVM: x86: Advertise INVPCID by default (Paolo Bonzini) [1945742] - KVM: SVM: Intercept INVPCID when it's disabled to inject #UD (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make HVA handler retpoline-friendly (Paolo Bonzini) [1945742] - KVM: x86: move kvm_inject_gp up from kvm_set_dr to callers (Paolo Bonzini) [1945742] - KVM: x86: reading DR cannot fail (Paolo Bonzini) [1945742] - KVM: SVM: Remove an unnecessary forward declaration (Paolo Bonzini) [1945742] - KVM: SVM: Move AVIC vCPU kicking snippet to helper function (Paolo Bonzini) [1945742] - KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64 (Paolo Bonzini) [1945742] - KVM: x86: Remove misleading DR6/DR7 adjustments from RSM emulation (Paolo Bonzini) [1945742] - KVM: x86/xen: Use hva_t for holding hypercall page address (Paolo Bonzini) [1945742] - KVM: x86/xen: Remove extra unlock in kvm_xen_hvm_set_attr() (Paolo Bonzini) [1945742] - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() (Paolo Bonzini) [1945742] - KVM: x86: Add helper to consolidate "raw" reserved GPA mask calculations (Paolo Bonzini) [1945742] - KVM: selftests: Always run vCPU thread with blocked SIG_IPI (Paolo Bonzini) [1945742] - KVM: selftests: Sync data verify of dirty logging with guest sync (Paolo Bonzini) [1945742] - KVM: selftests: Add a test for kvm page table code (Paolo Bonzini) [1945742] - KVM: selftests: Adapt vm_userspace_mem_region_add to new helpers (Paolo Bonzini) [1945742] - KVM: selftests: List all hugetlb src types specified with page sizes (Paolo Bonzini) [1945742] - tools/headers: sync headers of asm-generic/hugetlb_encode.h (Paolo Bonzini) [1945742] - tools include uapi: Update linux/mmap.h copy (Paolo Bonzini) [1945742] - tools UAPI: Update copy of linux/mman.h from the kernel sources (Paolo Bonzini) [1945742] - mm/hugetlb: add mmap() encodings for 32MB and 512MB page sizes (Paolo Bonzini) [1945742] - RHEL: Add #defines for 16k hugepages (Paolo Bonzini) [1945742] - KVM: selftests: Add a helper to get system default hugetlb page size (Paolo Bonzini) [1945742] - KVM: selftests: Add a helper to get system configured THP page size (Paolo Bonzini) [1945742] - KVM: selftests: Make a generic helper to get vm guest mode strings (Paolo Bonzini) [1945742] - KVM: selftests: Print the errno besides error-string in TEST_ASSERT (Paolo Bonzini) [1945742] - KVM: selftests: remove redundant semi-colon (Paolo Bonzini) [1945742] - selftests: kvm: Check that TSC page value is small after KVM_SET_CLOCK(0) (Paolo Bonzini) [1945742] - KVM: x86: Prevent 'hv_clock->system_time' from going negative in kvm_guest_time_update() (Paolo Bonzini) [1945742] - selftests: kvm: make hardware_disable_test less verbose (Paolo Bonzini) [1945742] - selftests: kvm: add set_boot_cpu_id test (Paolo Bonzini) [1945742] - selftests: kvm: add _vm_ioctl (Paolo Bonzini) [1945742] - selftests: kvm: add get_msr_index_features (Paolo Bonzini) [1945742] - KVM: x86/xen: Add support for vCPU runstate information (Paolo Bonzini) [1945742] - RHEL: configs: do not enable CONFIG_KVM_XEN (Paolo Bonzini) [1945742] - KVM: x86: allow compiling out the Xen hypercall interface (Paolo Bonzini) [1945742] - KVM: x86: compile out TDP MMU on 32-bit systems (Paolo Bonzini) [1945742] - KVM: xen: flush deferred static key before checking it (Paolo Bonzini) [1945742] - KVM: x86/xen: Explicitly pad struct compat_vcpu_info to 64 bytes (Paolo Bonzini) [1945742] - KVM: x86/xen: Allow reset of Xen attributes (Paolo Bonzini) [1945742] - KVM: Documentation: rectify rst markup in kvm_run->flags (Paolo Bonzini) [1945742] - Documentation: kvm: fix messy conversion from .txt to .rst (Paolo Bonzini) [1945742] - KVM: Documentation: rectify rst markup in KVM_GET_SUPPORTED_HV_CPUID (Paolo Bonzini) [1945742] - Documentation: kvm: fix warning (Paolo Bonzini) [1945742] - KVM: Add documentation for Xen hypercall and shared_info updates (Paolo Bonzini) [1945742] - KVM: X86: Add the Document for KVM_CAP_X86_BUS_LOCK_EXIT (Paolo Bonzini) [1945742] - KVM: Documentation: Fix documentation for nested. (Paolo Bonzini) [1945742] - KVM: Documentation: Add arm64 KVM_RUN error codes (Paolo Bonzini) [1945742] - KVM: Documentation: Update entry for KVM_CAP_ENFORCE_PV_CPUID (Paolo Bonzini) [1945742] - KVM: Documentation: Update entry for KVM_X86_SET_MSR_FILTER (Paolo Bonzini) [1945742] - docs: kvm: add documentation for KVM_CAP_S390_DIAG318 (Paolo Bonzini) [1945742] - selftests: kvm: Mmap the entire vcpu mmap area (Paolo Bonzini) [1945742] - selftests: kvm: avoid uninitialized variable warning (Paolo Bonzini) [1945742] - selftests: kvm: add hardware_disable test (Paolo Bonzini) [1945742] - KVM: selftests: Don't bother mapping GVA for Xen shinfo test (Paolo Bonzini) [1945742] - KVM: selftests: Fix hex vs. decimal snafu in Xen test (Paolo Bonzini) [1945742] - KVM: selftests: Fix size of memslots created by Xen tests (Paolo Bonzini) [1945742] - KVM: selftests: Ignore recently added Xen tests' build output (Paolo Bonzini) [1945742] - KVM: x86: declare Xen HVM shared info capability and add test case (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Drop hv_vcpu_to_vcpu() helper (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Allocate Hyper-V context lazily (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Make Hyper-V emulation enablement conditional (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Allocate 'struct kvm_vcpu_hv' dynamically (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Prepare to meet unallocated Hyper-V context (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Always use to_hv_vcpu() accessor to get to 'struct kvm_vcpu_hv' (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Stop shadowing global 'current_vcpu' variable (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Introduce to_kvm_hv() helper (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_hv_syndbg() to to_hv_syndbg() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_stimer()/stimer_to_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_synic()/synic_to_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_hv_vcpu() to to_hv_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Drop unused kvm_hv_vapic_assist_page_enabled() (Paolo Bonzini) [1945742] - KVM: x86/xen: Add event channel interrupt vector upcall (Paolo Bonzini) [1945742] - KVM: x86/xen: register vcpu time info region (Paolo Bonzini) [1945742] - KVM: x86/xen: setup pvclock updates (Paolo Bonzini) [1945742] - KVM: x86/xen: register vcpu info (Paolo Bonzini) [1945742] - KVM: x86/xen: Add KVM_XEN_VCPU_SET_ATTR/KVM_XEN_VCPU_GET_ATTR (Paolo Bonzini) [1945742] - KVM: x86/xen: update wallclock region (Paolo Bonzini) [1945742] - xen: add wc_sec_hi to struct shared_info (Paolo Bonzini) [1945742] - KVM: x86/xen: register shared_info page (Paolo Bonzini) [1945742] - KVM: x86/xen: add definitions of compat_shared_info, compat_vcpu_info (Paolo Bonzini) [1945742] - KVM: x86/xen: latch long_mode when hypercall page is set up (Paolo Bonzini) [1945742] - KVM: x86/xen: add KVM_XEN_HVM_SET_ATTR/KVM_XEN_HVM_GET_ATTR (Paolo Bonzini) [1945742] - KVM: x86/xen: Add kvm_xen_enabled static key (Paolo Bonzini) [1945742] - KVM: x86/xen: Move KVM_XEN_HVM_CONFIG handling to xen.c (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix coexistence of Xen and Hyper-V hypercalls (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add helper to generate mask of reserved HPA bits (Paolo Bonzini) [1945742] - KVM: x86: Use reserved_gpa_bits to calculate reserved PxE bits (Paolo Bonzini) [1945742] - KVM: x86: SEV: Treat C-bit as legal GPA bit regardless of vCPU mode (Paolo Bonzini) [1945742] - KVM: nSVM: Use common GPA helper to check for illegal CR3 (Paolo Bonzini) [1945742] - KVM: VMX: Use GPA legality helpers to replace open coded equivalents (Paolo Bonzini) [1945742] - KVM: x86: Add a helper to handle legal GPA with an alignment requirement (Paolo Bonzini) [1945742] - KVM: x86: Add a helper to check for a legal GPA (Paolo Bonzini) [1945742] - KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs (Paolo Bonzini) [1945742] - KVM: x86: Set so called 'reserved CR3 bits in LM mask' at vCPU reset (Paolo Bonzini) [1945742] - KVM: x86/xen: intercept xen hypercalls if enabled (Paolo Bonzini) [1945742] - KVM: selftests: Add missing header file needed by xAPIC IPI tests (Paolo Bonzini) [1945742] - KVM: selftests: Add operand to vmsave/vmload/vmrun in svm.c (Paolo Bonzini) [1945742] - selftests: kvm: Properly set Hyper-V CPUIDs in evmcs_test (Paolo Bonzini) [1945742] - selftests: kvm: Move kvm_get_supported_hv_cpuid() to common code (Paolo Bonzini) [1945742] - selftest: kvm: x86: test KVM_GET_CPUID2 and guest visible CPUIDs against KVM_GET_SUPPORTED_CPUID (Paolo Bonzini) [1945742] - selftests: kvm/x86: add test for pmu msr MSR_IA32_PERF_CAPABILITIES (Paolo Bonzini) [1945742] - KVM: selftests: Disable dirty logging with vCPUs running (Paolo Bonzini) [1945742] - KVM: selftests: Add backing src parameter to dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Add memslot modification stress test (Paolo Bonzini) [1945742] - KVM: selftests: Add option to overlap vCPU memory access (Paolo Bonzini) [1945742] - KVM: selftests: Fix population stage in dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Convert iterations to int in dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Avoid flooding debug log while populating memory (Paolo Bonzini) [1945742] - KVM: selftests: Rename timespec_diff_now to timespec_elapsed (Paolo Bonzini) [1945742] - KVM: selftests: Test IPI to halted vCPU in xAPIC while backing page moves (Paolo Bonzini) [1945742] - KVM: selftests: Implement perf_test_util more conventionally (Paolo Bonzini) [1945742] - KVM: selftests: Use vm_create_with_vcpus in create_vm (Paolo Bonzini) [1945742] - KVM: selftests: Factor out guest mode code (Paolo Bonzini) [1945742] - selftests: kvm: Merge user_msr_test into userspace_msr_exit_test (Paolo Bonzini) [1945742] - selftests: kvm: Test MSR exiting to userspace (Paolo Bonzini) [1945742] - KVM: selftests: sync_regs test for diag318 (Paolo Bonzini) [1945742] - KVM: selftests: x86: Set supported CPUIDs on default VM (Paolo Bonzini) [1945742] - KVM: selftests: Make test skipping consistent (Paolo Bonzini) [1945742] - KVM: selftests: Introduce vm_create_[default_]_with_vcpus (Paolo Bonzini) [1945742] - KVM: selftests: Make vm_create_default common (Paolo Bonzini) [1945742] - KVM: selftests: always use manual clear in dirty_log_perf_test (Paolo Bonzini) [1945742] - selftests: kvm: keep .gitignore add to date (Paolo Bonzini) [1945742] - KVM: selftests: Add "-c" parameter to dirty log test (Paolo Bonzini) [1945742] - KVM: selftests: Run dirty ring test asynchronously (Paolo Bonzini) [1945742] - KVM: selftests: Add dirty ring buffer test (Paolo Bonzini) [1945742] - KVM: selftests: Introduce after_vcpu_run hook for dirty log test (Paolo Bonzini) [1945742] - KVM: selftests: Verify supported CR4 bits can be set before KVM_SET_CPUID2 (Paolo Bonzini) [1945742] - KVM: selftests: allow two iterations of dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Introduce the dirty log perf test (Paolo Bonzini) [1945742] - KVM: selftests: Make the number of vcpus global (Paolo Bonzini) [1945742] - KVM: selftests: Make the per vcpu memory size global (Paolo Bonzini) [1945742] - KVM: selftests: Drop pointless vm_create wrapper (Paolo Bonzini) [1945742] - KVM: selftests: Add wrfract to common guest code (Paolo Bonzini) [1945742] - KVM: selftests: Simplify demand_paging_test with timespec_diff_now (Paolo Bonzini) [1945742] - KVM: selftests: Remove address rounding in guest code (Paolo Bonzini) [1945742] - KVM: selftests: Factor code out of demand_paging_test (Paolo Bonzini) [1945742] - KVM: selftests: Use a single binary for dirty/clear log test (Paolo Bonzini) [1945742] - KVM: selftests: Always clear dirty bitmap after iteration (Paolo Bonzini) [1945742] - selftests: kvm: test enforcement of paravirtual cpuid features (Paolo Bonzini) [1945742] - selftests: kvm: Add exception handling to selftests (Paolo Bonzini) [1945742] - selftests: kvm: Clear uc so UCALL_NONE is being properly reported (Paolo Bonzini) [1945742] - selftests: kvm: Fix the segment descriptor layout to match the actual layout (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix __user pointer handling for hypercall page installation (Paolo Bonzini) [1945742] - KVM: x86/xen: fix Xen hypercall page msr handling (Paolo Bonzini) [1945742] - KVM: x86: move kvm_inject_gp up from kvm_set_xcr to callers (Paolo Bonzini) [1945742] - KVM: cleanup DR6/DR7 reserved bits checks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add '__func__' in rmap_printk() (Paolo Bonzini) [1945742] - KVM: SVM: Replace hard-coded value with #define (Paolo Bonzini) [1945742] - KVM: SVM: use .prepare_guest_switch() to handle CPU register save/setup (Paolo Bonzini) [1945742] - KVM: SVM: remove uneeded fields from host_save_users_msrs (Paolo Bonzini) [1945742] - KVM: SVM: use vmsave/vmload for saving/restoring additional host state (Paolo Bonzini) [1945742] - KVM: SVM: Use asm goto to handle unexpected #UD on SVM instructions (Paolo Bonzini) [1945742] - KVM: VMX: Use the kernel's version of VMXOFF (Paolo Bonzini) [1945742] - KVM: VMX: Move Intel PT shenanigans out of VMXON/VMXOFF flows (Paolo Bonzini) [1945742] - KVM/nVMX: Use __vmx_vcpu_run in nested_vmx_check_vmentry_hw (Paolo Bonzini) [1945742] - x86/virt: Mark flags and memory as clobbered by VMXOFF (Paolo Bonzini) [1945742] - x86/reboot: Force all cpus to exit VMX root if VMX is supported (Paolo Bonzini) [1945742] - x86/virt: Eat faults on VMXOFF in reboot flows (Paolo Bonzini) [1945742] - KVM: x86: use static calls to reduce kvm_x86_ops overhead (Paolo Bonzini) [1945742] - KVM: x86: introduce definitions to support static calls for kvm_x86_ops (Paolo Bonzini) [1945742] - KVM: RHEL: include linux/static_call.h (Paolo Bonzini) [1945742] - KVM: X86: prepend vmx/svm prefix to additional kvm_x86_ops functions (Paolo Bonzini) [1945742] - KVM: Stop using deprecated jump label APIs (Paolo Bonzini) [1945742] - locking/static_key: Add support for deferred static branches (Paolo Bonzini) [1945742] - KVM: X86: Rename DR6_INIT to DR6_ACTIVE_LOW (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Expose LBR_FMT in the MSR_IA32_PERF_CAPABILITIES (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Release guest LBR event via lazy release mechanism (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Emulate legacy freezing LBRs on virtual PMI (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Reduce the overhead of LBR pass-through or cancellation (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Pass-through LBR msrs when the guest LBR event is ACTIVE (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Create a guest LBR event when vcpu sets DEBUGCTLMSR_LBR (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Add PMU_CAP_LBR_FMT check when guest LBR is enabled (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Add PMU_CAP_LBR_FMT check when guest LBR is enabled (Paolo Bonzini) [1945742] - KVM: x86/pmu: preserve IA32_PERF_CAPABILITIES across CPUID refresh (Paolo Bonzini) [1945742] - KVM: x86/vmx: Make vmx_set_intercept_for_msr() non-static (Paolo Bonzini) [1945742] - KVM: VMX: read/write MSR_IA32_DEBUGCTLMSR from GUEST_IA32_DEBUGCTL (Paolo Bonzini) [1945742] - KVM: VMX: Use x2apic_mode to avoid RDMSR when querying PI state (Paolo Bonzini) [1945742] - x86/apic: Export x2apic_mode for use by KVM in "warm" path (Paolo Bonzini) [1945742] - KVM: VMX: Enable bus lock VM exit (Paolo Bonzini) [1945742] - KVM: X86: Reset the vcpu->run->flags at the beginning of vcpu_run (Paolo Bonzini) [1945742] - KVM: VMX: Convert vcpu_vmx.exit_reason to a union (Paolo Bonzini) [1945742] - KVM/SVM: add support for SEV attestation command (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove the defunct update_pte() paging hook (Paolo Bonzini) [1945742] - KVM: Expose AVX_VNNI instruction to guset (Paolo Bonzini) [1945742] - Enumerate AVX Vector Neural Network instructions (Paolo Bonzini) [1945742] - x86: kvm: style: Simplify bool comparison (Paolo Bonzini) [1945742] - KVM: x86: Zap the oldest MMU pages, not the newest (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use boolean returns for (S)PTE accessors (Paolo Bonzini) [1945742] - KVM: X86: use vzalloc() instead of vmalloc/memset (Paolo Bonzini) [1945742] - KVM: x86: Take KVM's SRCU lock only if steal time update is needed (Paolo Bonzini) [1945742] - KVM: x86: Remove obsolete disabling of page faults in kvm_arch_vcpu_put() (Paolo Bonzini) [1945742] - KVM: do not assume PTE is writable after follow_pfn (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix TDP MMU zap collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86: cleanup CR3 reserved bits checks (Paolo Bonzini) [1945742] - KVM: SVM: Treat SVM as unsupported when running as an SEV guest (Paolo Bonzini) [1945742] - KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode (Paolo Bonzini) [1945742] - KVM: x86: Supplement __cr4_reserved_bits() with X86_FEATURE_PCID check (Paolo Bonzini) [1945742] - KVM/x86: assign hva with the right value to vm_munmap the pages (Paolo Bonzini) [1945742] - Fix unsynchronized access to sev members through svm_register_enc_region (Paolo Bonzini) [1945742] - KVM: x86: Revert "KVM: x86: Mark GPRs dirty when written" (Paolo Bonzini) [1945742] - KVM: SVM: Unconditionally sync GPRs to GHCB on VMRUN of SEV-ES guest (Paolo Bonzini) [1945742] - KVM: x86: __kvm_vcpu_halt can be static (Paolo Bonzini) [1945742] - KVM: SVM: Add support for booting APs in an SEV-ES guest (Paolo Bonzini) [1945742] - KVM/SVM: Remove leftover __svm_vcpu_run prototype from svm.c (Paolo Bonzini) [1945742] - KVM: SVM: Add register operand to vmsave call in sev_es_vcpu_load (Paolo Bonzini) [1945742] - KVM: SVM: fix 32-bit compilation (Paolo Bonzini) [1945742] - KVM: SVM: Add AP_JUMP_TABLE support in prep for AP booting (Paolo Bonzini) [1945742] - KVM: SVM: Provide support to launch and run an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Provide an updated VMRUN invocation for SEV-ES guests (Paolo Bonzini) [1945742] - x86/kvm/svm: Use uninstrumented wrmsrl() to restore GS (Paolo Bonzini) [1945742] - KVM: SVM: Provide support for SEV-ES vCPU loading (Paolo Bonzini) [1945742] - KVM: SVM: Provide support for SEV-ES vCPU creation/loading (Paolo Bonzini) [1945742] - KVM: SVM: Update ASID allocation to support SEV-ES guests (Paolo Bonzini) [1945742] - KVM: SVM: Set the encryption mask for the SVM host save area (Paolo Bonzini) [1945742] - KVM: SVM: Add NMI support for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Guest FPU state save/restore not needed for SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Do not report support for SMM for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: x86: Update __get_sregs() / __set_sregs() to support SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR8 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR4 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR0 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for EFER write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Support string IO operations for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Support MMIO for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Create trace events for VMGEXIT MSR protocol processing (Paolo Bonzini) [1945742] - KVM: SVM: Create trace events for VMGEXIT processing (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x100 (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x004 (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x002 (Paolo Bonzini) [1945742] - KVM: SVM: Add initial support for a VMGEXIT VMEXIT (Paolo Bonzini) [1945742] - KVM: SVM: Add GHCB accessor functions for retrieving fields (Paolo Bonzini) [1945742] - KVM: SVM: Prepare for SEV-ES exit handling in the sev.c file (Paolo Bonzini) [1945742] - KVM: SVM: Cannot re-initialize the VMCB after shutdown with SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Do not allow instruction emulation under SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Prevent debugging under SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Add required changes to support intercepts under SEV-ES (Paolo Bonzini) [1945742] - KVM: x86: introduce complete_emulated_msr callback (Paolo Bonzini) [1945742] - KVM: x86: Mark GPRs dirty when written (Paolo Bonzini) [1945742] - KVM: SVM: Add support for the SEV-ES VMSA (Paolo Bonzini) [1945742] - x86/cpu: Add VM page flush MSR availablility as a CPUID feature (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES capability in KVM (Paolo Bonzini) [1945742] - KVM/VMX/SVM: Move kvm_machine_check function to x86.h (Paolo Bonzini) [1945742] - KVM: Don't allocate dirty bitmap if dirty ring is enabled (Paolo Bonzini) [1945742] - KVM: Make dirty ring exclusive to dirty bitmap log (Paolo Bonzini) [1945742] - KVM: X86: Implement ring-based dirty memory tracking (Paolo Bonzini) [1945742] - KVM: Pass in kvm pointer into mark_page_dirty_in_slot() (Paolo Bonzini) [1945742] - kvm/eventfd: Drain events from eventfd in irqfd_wakeup() (Paolo Bonzini) [1945742] - eventfd: Export eventfd_ctx_do_read() (Paolo Bonzini) [1945742] - kvm/eventfd: Use priority waitqueue to catch events before userspace (Paolo Bonzini) [1945742] - sched/wait: Add add_wait_queue_priority() (Paolo Bonzini) [1945742] - cpuidle-haltpoll: fix error comments in arch_haltpoll_disable (Paolo Bonzini) [1945742] - kvm/eventfd: Use sequence counter with associated spinlock (Paolo Bonzini) [1945742] - x86/kvm/vmx: Use native read/write_cr2() (Paolo Bonzini) [1945742] - KVM: SVM: convert get_user_pages() --> pin_user_pages() (Paolo Bonzini) [1945742] - x86/asm: Change all ENTRY+ENDPROC to SYM_FUNC_* (Paolo Bonzini) [1945742] - x86/entry/64: Fix unwind hints in __switch_to_asm() (Paolo Bonzini) [1945742] - x86/asm/64: Change all ENTRY+END to SYM_CODE_* (Paolo Bonzini) [1945742] - x86/head/64: Annotate start_cpu0() as non-callable (Paolo Bonzini) [1945742] - x86/asm: Do not annotate functions with GLOBAL (Paolo Bonzini) [1945742] - kprobes/x86/xen: blacklist non-attachable xen interrupt functions (Paolo Bonzini) [1945742] - x86/asm/64: Add ENDs to some functions and relabel with SYM_CODE_* (Paolo Bonzini) [1945742] - x86/asm: Use SYM_INNER_LABEL instead of GLOBAL (Paolo Bonzini) [1945742] - x86/asm: Annotate aliases (Paolo Bonzini) [1945742] - x86/asm/crypto: Annotate local functions (Paolo Bonzini) [1945742] - static_call: Add static_call_cond() (Paolo Bonzini) [1945742] - static_call: Add basic static call infrastructure (Paolo Bonzini) [1945742] - devlink: use _BITUL() macro instead of BIT() in the UAPI header (Petr Oros) [1935646] - devlink: Fix reload stats structure (Petr Oros) [1935646] - devlink: Avoid overwriting port attributes of registered port (Petr Oros) [1935646] - devlink: Add Documentation/networking/devlink/devlink-reload.rst (Petr Oros) [1935646] - devlink: Add enable_remote_dev_reset generic parameter (Petr Oros) [1935646] - devlink: Add remote reload stats (Petr Oros) [1935646] - devlink: Add reload stats (Petr Oros) [1935646] - devlink: Add devlink reload limit option (Petr Oros) [1935646] - devlink: Add reload action option to devlink reload command (Petr Oros) [1935646] - devlink: Change devlink_reload_supported() param type (Petr Oros) [1935646]- CI: Rename KABI option (Veronika Kabatova) - CI: Disable result checking for realtime checks (Veronika Kabatova) - Revert "GFS2: Re-add a call to log_flush_wait when flushing the journal" (Bob Peterson) [1917930] - md/raid1: properly indicate failure when ending a failed write request (Nigel Croxon) [1954588] - Revert "uio: use request_threaded_irq instead" (Vitaly Kuznetsov) [1946644] - drm/ast: Set format registers in primary plane's update (Lyude Paul) [1923857] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [1940926] - x86/hyperv: Move hv_do_rep_hypercall to asm-generic (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Increase wait time for VMbus unload (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Initialize unload_event statically (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Check for pending channel interrupts before taking a CPU offline (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Drivers: hv: vmbus: Introduce CHANNELMSG_MODIFYCHANNEL_RESPONSE (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Introduce and negotiate VMBus protocol version 5.3 (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Use after free in __vmbus_open() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: remove unused function (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Remove unused linux/version.h header (Mohammed Gamal) [1940926] - x86/Hyper-V: Support for free page reporting (Mohammed Gamal) [1940926] - x86/hyper-v: Move hv_message_type to architecture neutral module (Mohammed Gamal) [1940926] - asm-generic/hyperv: import data structures for mapping device interrupts (Mohammed Gamal) [1940926] - asm-generic/hyperv: introduce hv_device_id and auxiliary structures (Mohammed Gamal) [1940926] - asm-generic/hyperv: update hv_interrupt_entry (Mohammed Gamal) [1940926] - asm-generic/hyperv: update hv_msi_entry (Mohammed Gamal) [1940926] - x86/hyperv: provide a bunch of helper functions (Mohammed Gamal) [1940926] - x86/hyperv: extract partition ID from Microsoft Hypervisor if necessary (Mohammed Gamal) [1940926] - asm-generic/hyperv: Add definitions for Get/SetVpRegister hypercalls (Mohammed Gamal) [1940926] - drivers: hv: Fix EXPORT_SYMBOL and tab spaces issue (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Drop error message when 'No request id available' (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move handling of VMbus interrupts (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Handle auto EOI quirk inline (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move hyperv_report_panic_msg to arch neutral code (Mohammed Gamal) [1940926] - Drivers: hv: Redo Hyper-V synthetic MSR get/set functions (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move Hyper-V page allocator to arch neutral code (Mohammed Gamal) [1940926] - x86/hyperv: allocate output arg pages if required (Mohammed Gamal) [1940926] - drivers: hv: Fix whitespace errors (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: skip VMBus initialization if Linux is root (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Enforce 'VMBus version >= 5.2' on isolated guests (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Restrict vmbus_devices on isolated guests (Mohammed Gamal) [1940926] - hv_utils: Fix spelling mistake "Hearbeat" -> "Heartbeat" (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Add /sys/bus/vmbus/hibernation (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Resolve race condition in vmbus_onoffer_rescind() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Copy the hv_message in vmbus_on_msg_dpc() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Reduce number of references to message in vmbus_on_msg_dpc() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Initialize memory to be sent to the host (Mohammed Gamal) [1940926] - hv_utils: Add validation for untrusted Hyper-V values (Mohammed Gamal) [1940926] - drivers/hv: remove obsolete TODO and fix misleading typo in comment (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix checkpatch SPLIT_STRING (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix call msleep using < 20ms (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix checkpatch LINE_SPACING (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Replace symbolic permissions by octal permissions (Mohammed Gamal) [1940926] - drivers: hv: Fix hyperv_record_panic_msg path on comment (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Add vmbus_requestor data structure for VMBus hardening (Mohammed Gamal) [1940926] - ena: revert removal of MODULE_VERSION from ena (Petr Oros) [1955712] - Revert "[netdrv] net/intel: remove driver versions from Intel drivers" (Jonathan Toppins) [1955745] - Revert "[netdrv] net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1955721] - net: core: add dev_get_tstats64 as a ndo_get_stats64 implementation (Josef Oskera) [1939453]- igb: amend removal of MODULE_VERSION (Corinna Vinschen) [1955748] - igc: amend removal of MODULE_VERSION (Corinna Vinschen) [1955755] - i40e: amend removal of MODULE_VERSION (Stefan Assmann) [1955736] - ixgbe: Amend commit acf03026ec5a to include a version string in module info. (Ken Cox) [1955759] - i40e: Fix parameters in aq_get_phy_register() (Stefan Assmann) [1907852] - initramfs: panic with memory information (Coiby Xu) [1936031] - powercap/intel_rapl: add support for AlderLake (David Arcari) [1838605] - xfs: restore shutdown check in mapped write fault path (Brian Foster) [1926089] - xfs: consider shutdown in bmapbt cursor delete assert (Brian Foster) [1926077] - iomap: Fix negative assignment to unsigned sis->pages in iomap_swapfile_activate (Carlos Maiolino) [1938210] - scsi: scsi_dh_alua: Remove check for ASC 24h in alua_rtpg() (Ewan D. Milne) [1929878] - perf/arm-cmn: Move IRQs when migrating context (Jeremy Linton) [1816850] - perf/arm-cmn: Fix PMU instance naming (Jeremy Linton) [1816850] - perf: arm-cmn: Fix conversion specifiers for node type (Jeremy Linton) [1816850] - perf: arm-cmn: Fix unsigned comparison to less than zero (Jeremy Linton) [1816850] - perf: Add Arm CMN-600 PMU driver (Jeremy Linton) [1816850] - redhat/configs: Use CONFIG_VIRTIO_CONSOLE=m on s390x, too (Thomas Huth) [1954119] - s390/config: do not select VIRTIO_CONSOLE via Kconfig (Thomas Huth) [1954119] - x86/platform/uv: Fix an error code in uv_hubs_init() (Frank Ramsay) [1936605] - x86/platform/uv: Add more to secondary CPU kdump info (Frank Ramsay) [1936605] - x86/platform/uv: Use x2apic enabled bit as set by BIOS to indicate APIC mode (Frank Ramsay) [1936605] - redhat/configs: Add CONFIG_UV_SYSFS (Frank Ramsay) [1936605] - x86/platform/uv: Fix indentation warning in Documentation/ABI/testing/sysfs-firmware-sgi_uv (Frank Ramsay) [1936605] - x86/platform/uv: Set section block size for hubless architectures (Frank Ramsay) [1936605] - x86/platform/uv: Update sysfs documentation (Frank Ramsay) [1936605] - x86/platform/uv: Add deprecated messages to /proc info leaves (Frank Ramsay) [1936605] - x86/platform/uv: Add sysfs hubless leaves (Frank Ramsay) [1936605] - x86/platform/uv: Add sysfs leaves to replace those in procfs (Frank Ramsay) [1936605] - x86/platform/uv: Add kernel interfaces for obtaining system info (Frank Ramsay) [1936605] - x86/platform/uv: Update MAINTAINERS for uv_sysfs driver (Frank Ramsay) [1936605] - x86/platform/uv: Update ABI documentation of /sys/firmware/sgi_uv/ (Frank Ramsay) [1936605] - x86/platform/uv: Add new uv_sysfs platform driver (Frank Ramsay) [1936605] - x86/platform/uv: Add and export uv_bios_* functions (Frank Ramsay) [1936605] - x86/platform/uv: Remove existing /sys/firmware/sgi_uv/interface (Frank Ramsay) [1936605] - x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c (Frank Ramsay) [1936605] - x86/platform/uv: Unexport sn_coherency_id (Frank Ramsay) [1936605] - x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static (Frank Ramsay) [1936605] - UV: Add SPDX license identifier - Makefile/Kconfig (Frank Ramsay) [1936605] - netdevsim: Only use sampling truncation length when valid (Ivan Vecera) [1955163] - selftests: netdevsim: Test psample functionality (Ivan Vecera) [1955163] - netdevsim: Add dummy psample implementation (Ivan Vecera) [1955163] - psample: Add additional metadata attributes (Ivan Vecera) [1955163] - psample: Encapsulate packet metadata in a struct (Ivan Vecera) [1955163] - net: psample: fix build error when CONFIG_INET is not enabled (Ivan Vecera) [1955163] - devlink: include for _BITUL (Petr Oros) [1935630] - netdevsim: add support for flash_update overwrite mask (Petr Oros) [1935630] - devlink: introduce flash update overwrite mask (Petr Oros) [1935630] - devlink: convert flash_update to use params structure (Petr Oros) [1935630] - devlink: check flash_update parameter support in net core (Petr Oros) [1935630] - devlink: Enhance policy to validate port type input value (Petr Oros) [1935630] - devlink: Enhance policy to validate eswitch mode value (Petr Oros) [1935630] - net: devlink: region: Pass the region ops to the snapshot function (Petr Oros) [1935630] - net: devlink: regions: Add a priv member to the regions ops struct (Petr Oros) [1935630]- Enumerate AVX Vector Neural Network instructions (Steve Best) [1838616] - net: fix skb use after free in netpoll (Ivan Vecera) [1913481] - cipso,calipso: resolve a number of problems with the DOI refcounts (Guillaume Nault) [1950996] - netfilter: rpfilter: mask ecn bits before fib lookup (Guillaume Nault) [1950996] - netfilter: Fix rpfilter dropping vrf packets by mistake (Guillaume Nault) [1950996] - redhat: enable CONFIG_DM_MULTIPATH_HST and CONFIG_DM_MULTIPATH_IOA (Mike Snitzer) [1949682] - dm ioctl: fix out of bounds array access when no devices (Mike Snitzer) [1949682] - dm table: Fix zoned model check and zone sectors check (Mike Snitzer) [1949682] - dm: simplify target code conditional on CONFIG_BLK_DEV_ZONED (Mike Snitzer) [1949682] - dm verity: fix DM_VERITY_OPTS_MAX value (Mike Snitzer) [1949682] - dm verity fec: fix misaligned RS roots IO (Mike Snitzer) [1949682] - dm verity: fix FEC for RS roots unaligned to block size (Mike Snitzer) [1949682] - dm bufio: subtract the number of initial sectors in dm_bufio_get_device_size (Mike Snitzer) [1949682] - dm: fix deadlock when swapping to encrypted device (Mike Snitzer) [1949682] - dm era: only resize metadata in preresume (Mike Snitzer) [1949682] - dm era: Use correct value size in equality function of writeset tree (Mike Snitzer) [1949682] - dm era: Fix bitset memory leaks (Mike Snitzer) [1949682] - dm era: Verify the data block size hasn't changed (Mike Snitzer) [1949682] - dm era: Reinitialize bitset cache before digesting a new writeset (Mike Snitzer) [1949682] - dm era: Update in-core bitset after committing the metadata (Mike Snitzer) [1949682] - dm era: Recover committed writeset after crash (Mike Snitzer) [1949682] - dm writecache: fix writing beyond end of underlying device when shrinking (Mike Snitzer) [1949682] - dm table: remove needless request_queue NULL pointer checks (Mike Snitzer) [1949682] - dm table: fix zoned iterate_devices based device capability checks (Mike Snitzer) [1949682] - dm writecache: return the exact table values that were set (Mike Snitzer) [1949682] - dm writecache: fix unnecessary NULL check warnings (Mike Snitzer) [1949682] - dm writecache: fix performance degradation in ssd mode (Mike Snitzer) [1949682] - dm integrity: introduce the "fix_hmac" argument (Mike Snitzer) [1949682] - dm persistent data: fix return type of shadow_root() (Mike Snitzer) [1949682] - dm: cleanup of front padding calculation (Mike Snitzer) [1949682] - dm integrity: fix spelling mistake "flusing" -> "flushing" (Mike Snitzer) [1949682] - dm crypt: Spelling s_cihper_cipher_ (Mike Snitzer) [1949682] - dm: avoid filesystem lookup in dm_get_dev_t() (Mike Snitzer) [1949682] - dm integrity: conditionally disable "recalculate" feature (Mike Snitzer) [1949682] - dm integrity: fix a crash if "recalculate" used without "internal_hash" (Mike Snitzer) [1949682] - dm integrity: fix the maximum number of arguments (Mike Snitzer) [1949682] - dm integrity: fix flush with external metadata device (Mike Snitzer) [1949682] - dm snapshot: flush merged data before committing metadata (Mike Snitzer) [1949682] - dm zoned: select CONFIG_CRC32 (Mike Snitzer) [1949682] - dm integrity: select CRYPTO_SKCIPHER (Mike Snitzer) [1949682] - dm cache: simplify the return expression of load_mapping() (Mike Snitzer) [1949682] - dm verity: skip verity work if I_O error when system is shutting down (Mike Snitzer) [1949682] - dm ioctl: fix error return code in target_message (Mike Snitzer) [1949682] - dm crypt: Constify static crypt_iv_operations (Mike Snitzer) [1949682] - dm: add support for REQ_NOWAIT to various targets (Mike Snitzer) [1949682] - dm: rename multipath path selector source files to have "dm-ps" prefix (Mike Snitzer) [1949682] - dm mpath: add IO affinity path selector (Mike Snitzer) [1949682] - dm verity: Add support for signature verification with 2nd keyring (Mike Snitzer) [1949682] - dm: remove unnecessary current->bio_list check when submitting split bio (Mike Snitzer) [1949682] - dm: remove invalid sparse __acquires and __releases annotations (Mike Snitzer) [1949682] - dm: fix double RCU unlock in dm_dax_zero_page_range() error path (Mike Snitzer) [1949682] - dm writecache: remove BUG() and fail gracefully instead (Mike Snitzer) [1949682] - dm table: Remove BUG_ON(in_interrupt()) (Mike Snitzer) [1949682] - dm: fix bug with RCU locking in dm_blk_report_zones (Mike Snitzer) [1949682] - Revert "dm cache: fix arm link errors with inline" (Mike Snitzer) [1949682] - vfs: remove lockdep bogosity in __sb_start_write (Brian Foster) [1926097] - nbd: freeze the queue while we're adding connections (Ming Lei) [1927246] - selftests/livepatch: Do not check order when using "comm" for dmesg checking (Joel Savitz) [1942056] - RDMA/siw,rxe: Make emulated devices virtual in the device tree (Kamal Heib) [1931849] - RDMA/core: remove use of dma_virt_ops (Kamal Heib) [1931849] - RDMA/umem: Use ib_dma_max_seg_size instead of dma_get_max_seg_size (Kamal Heib) [1931849] - RDMA/core: Fix ib_dma_max_seg_size() (Kamal Heib) [1931849] - RDMA/umem: Move to allocate SG table from pages (Kamal Heib) [1931849] - lib/scatterlist: Do not limit max_segment to PAGE_ALIGNED values (Kamal Heib) [1931849] - lib/scatterlist: Add support in dynamic allocation of SG table from pages (Kamal Heib) [1931846] - RDMA/srp: Increase max_segment_size (Kamal Heib) [1931849] - RDMA/uverbs: Allow drivers to create a new HW object during rereg_mr (Kamal Heib) [1931849] - RDMA/mlx5: Use ib_umem_find_best_pgoff() for SRQ (Kamal Heib) [1931849] - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC (Kamal Heib) [1931849] - RDMA/cma: Fix error flow in default_roce_mode_store (Kamal Heib) [1931849] - RDMA/umem: Avoid undefined behavior of rounddown_pow_of_two() (Kamal Heib) [1931849] - RDMA/restrack: Don't treat as an error allocation ID wrapping (Kamal Heib) [1931849] - RDMA/ucma: Do not miss ctx destruction steps in some cases (Kamal Heib) [1931849] - RDMA/cma: Don't overwrite sgid_attr after device is released (Kamal Heib) [1931849] - RDMA/rxe: Use acquire/release for memory ordering (Kamal Heib) [1931849] - RDMA/uverbs: Fix incorrect variable type (Kamal Heib) [1931849] - RDMA/core: Update kernel documentation for ib_create_named_qp() (Kamal Heib) [1931849] - RDMA/iser: Remove in_interrupt() usage (Kamal Heib) [1931849] - IB: Fix kernel-doc markups (Kamal Heib) [1931849] - RDMA/uverbs: Check ODP in ib_check_mr_access() as well (Kamal Heib) [1931849] - RDMA/uverbs: Tidy input validation of ib_uverbs_rereg_mr() (Kamal Heib) [1931849] - RDMA/efa: Use dma_set_mask_and_coherent() to simplify code (Kamal Heib) [1931849] - RDMA/restrack: Support all QP types (Kamal Heib) [1931849] - RDMA/core: Allow drivers to disable restrack DB (Kamal Heib) [1931849] - RDMA/core: Track device memory MRs (Kamal Heib) [1931849] - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind (Kamal Heib) [1931849] - IB/hfi1: Fix fall-through warnings for Clang (Kamal Heib) [1931849] - RDMA/ipoib: Distribute cq completion vector better (Kamal Heib) [1931849] - RDMA/efa: Remove .create_ah callback assignment (Kamal Heib) [1931849] - RDMA/cma: Add missing error handling of listen_id (Kamal Heib) [1931849] - RDMA/restrack: Store all special QPs in restrack DB (Kamal Heib) [1931849] - RDMA/counter: Combine allocation and bind logic (Kamal Heib) [1931849] - RDMA/core: Remove ib_dma_{alloc,free}_coherent (Kamal Heib) [1931849] - RDMA/core: Make FD destroy callback void (Kamal Heib) [1931849] - RDMA/core: Postpone uobject cleanup on failure till FD close (Kamal Heib) [1931849] - IB/isert: Do not excplicitly check == false for bool (Kamal Heib) [1931849] - IB/core: Add support for NDR link speed (Kamal Heib) [1931849] - RDMA/ipoib: Add 50Gb and 100Gb link speeds to ethtool (Kamal Heib) [1931849] - RDMA/rxe,siw: Restore uverbs_cmd_mask IB_USER_VERBS_CMD_POST_SEND (Kamal Heib) [1931849] - RDMA/siw: Fix typo of EAGAIN not -EAGAIN in siw_cm_work_handler() (Kamal Heib) [1931849] - RDMA/rxe: Compute PSN windows correctly (Kamal Heib) [1931849] - RDMA/core: Fix error return in _ib_modify_qp() (Kamal Heib) [1931849] - IB/verbs: avoid nested container_of() (Kamal Heib) [1931849] - RDMA/rxe: Remove unused RXE_MR_TYPE_FMR (Kamal Heib) [1931849] - RDMA: Remove AH from uverbs_cmd_mask (Kamal Heib) [1931849] - RDMA: Remove uverbs cmds from drivers that don't use them (Kamal Heib) [1931849] - RDMA/core Remove uverbs_ex_cmd_mask (Kamal Heib) [1931849] - RDMA: Check create_flags during create_qp (Kamal Heib) [1931849] - RDMA: Check flags during create_cq (Kamal Heib) [1931849] - RDMA: Check attr_mask during modify_qp (Kamal Heib) [1931849] - RDMA: Check srq_type during create_srq (Kamal Heib) [1931849] - RDMA: Move more uverbs_cmd_mask settings to the core (Kamal Heib) [1931849] - RDMA: Remove elements in uverbs_cmd_mask that all drivers set (Kamal Heib) [1931849] - RDMA: Remove uverbs_ex_cmd_mask values that are linked to functions (Kamal Heib) [1931849] - RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait (Kamal Heib) [1931846] - RDMA/core: Fix empty gid table for non IB/RoCE devices (Kamal Heib) [1931846] - RDMA/efa: Use the correct current and new states in modify QP (Kamal Heib) [1931846] - RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs (Kamal Heib) [1931846] - RDMA/srpt: Fix typo in srpt_unregister_mad_agent docstring (Kamal Heib) [1931846] - RDMA/vmw_pvrdma: Fix the active_speed and phys_state value (Kamal Heib) [1931846] - RDMA: Fix software RDMA drivers for dma mapping error (Kamal Heib) [1931846] - IB/srpt: docs: add a description for cq_size member (Kamal Heib) [1931846] - RDMA: Add rdma_connect_locked() (Kamal Heib) [1931846] - RDMA/uverbs: Fix false error in query gid IOCTL (Kamal Heib) [1931846] - RDMA/rxe: Fix small problem in network_type patch (Kamal Heib) [1931846] - RDMA/ucma: Fix use after free in destroy id flow (Kamal Heib) [1931846] - RDMA/rxe: Move the definitions for rxe_av.network_type to uAPI (Kamal Heib) [1931846] - RDMA: Explicitly pass in the dma_device to ib_register_device (Kamal Heib) [1931846] - RDMA/usnic: Remove the query_pkey callback (Kamal Heib) [1931846] - RDMA/usnic: Fix spelling mistake "transistion" -> "transition" (Kamal Heib) [1931846] - RDMA/usnic: switch from 'pci_' to 'dma_' API (Kamal Heib) [1931846] - RDMA/usnic: Avoid overly large buffers on stack (Kamal Heib) [1931846] - IB/usnic: Use dev_get_drvdata (Kamal Heib) [1931846] - IB/usnic: Fix deadlock (Kamal Heib) [1931846] - Revert "[infiniband] usnic_verbs: fix deadlock" (Kamal Heib) [1931846] - RDMA/rxe: Remove duplicate entries in struct rxe_mr (Kamal Heib) [1931846] - RDMA/uverbs: Expose the new GID query API to user space (Kamal Heib) [1931846] - RDMA/core: Introduce new GID table query API (Kamal Heib) [1931846] - RDMA/core: Modify enum ib_gid_type and enum rdma_network_type (Kamal Heib) [1931846] - RDMA/core: Change rdma_get_gid_attr returned error code (Kamal Heib) [1931846] - RDMA/core: Constify struct attribute_group (Kamal Heib) [1931846] - RDMA/core: Remove ucontext->closing (Kamal Heib) [1931846] - RDMA/drivers: Remove udata check from special QP (Kamal Heib) [1931846] - RDMA/qedr: Add support for user mode XRC-SRQ's (Kamal Heib) [1931846] - RDMA/mlx4: Prepare QP allocation to remove from the driver (Kamal Heib) [1931846] - RDMA/mlx4: Embed GSI QP into general mlx4_ib QP (Kamal Heib) [1931846] - RDMA/core: Align write and ioctl checks of QP types (Kamal Heib) [1931846] - RDMA/efa: Drop double zeroing for sg_init_table() (Kamal Heib) [1931846] - RDMA/efa: Add messages and RDMA read work requests HW stats (Kamal Heib) [1931846] - RDMA/efa: Group keep alive received counter with other SW stats (Kamal Heib) [1931846] - RDMA/restrack: Improve readability in task name management (Kamal Heib) [1931846] - RDMA/restrack: Simplify restrack tracking in kernel flows (Kamal Heib) [1931846] - RDMA/restrack: Count references to the verbs objects (Kamal Heib) [1931846] - RDMA/cma: Delete from restrack DB after successful destroy (Kamal Heib) [1931846] - RDMA/ucma: Rework ucma_migrate_id() to avoid races with destroy (Kamal Heib) [1931846] - RDMA: Fix link active_speed size (Kamal Heib) [1931846] - net/mlx5: Refactor query port speed functions (Kamal Heib) [1931846] - RDMA: Convert RWQ table logic to ib_core allocation scheme (Kamal Heib) [1931846] - RDMA: Clean MW allocation and free flows (Kamal Heib) [1931846] - RDMA/cma: Fix use after free race in roce multicast join (Kamal Heib) [1931846] - RDMA/cma: Consolidate the destruction of a cma_multicast in one place (Kamal Heib) [1931846] - RDMA/cma: Remove dead code for kernel rdmacm multicast (Kamal Heib) [1931846] - RDMA/cma: Combine cma_ndev_work with cma_work (Kamal Heib) [1931846] - RDMA/cma: Remove cma_comp() (Kamal Heib) [1931846] - RDMA/cma: Fix locking for the RDMA_CM_LISTEN state (Kamal Heib) [1931846] - RDMA/cma: Make the locking for automatic state transition more clear (Kamal Heib) [1931846] - RDMA/cma: Fix locking for the RDMA_CM_CONNECT state (Kamal Heib) [1931846] - RDMA/core: Added missing WR and WC opcodes (Kamal Heib) [1931846] - RDMA/qedr: Remove fbo and zbva from the MR (Kamal Heib) [1931846] - RDMA/mlx4: Use ib_umem_num_dma_blocks() (Kamal Heib) [1931846] - RDMA/pvrdma: Use ib_umem_num_dma_blocks() instead of ib_umem_page_count() (Kamal Heib) [1931846] - RDMA/bnxt: Do not use ib_umem_page_count() or ib_umem_num_pages() (Kamal Heib) [1931846] - RDMA/qedr: Use ib_umem_num_dma_blocks() instead of ib_umem_page_count() (Kamal Heib) [1931846] - RDMA/qedr: Use rdma_umem_for_each_dma_block() instead of open-coding (Kamal Heib) [1931846] - RDMA/i40iw: Use ib_umem_num_dma_pages() (Kamal Heib) [1931846] - RDMA/efa: Use ib_umem_num_dma_pages() (Kamal Heib) [1931846] - RDMA/umem: Split ib_umem_num_pages() into ib_umem_num_dma_blocks() (Kamal Heib) [1931846] - RDMA/umem: Replace for_each_sg_dma_page with rdma_umem_for_each_dma_block (Kamal Heib) [1931846] - RDMA/umem: Add rdma_umem_for_each_dma_block() (Kamal Heib) [1931846] - RDMA/umem: Use simpler logic for ib_umem_find_best_pgsz() (Kamal Heib) [1931846] - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page boundary (Kamal Heib) [1931846] - RDMA: Make counters destroy symmetrical (Kamal Heib) [1931846] - RDMA: Restore ability to return error for destroy WQ (Kamal Heib) [1931846] - RDMA: Change XRCD destroy return value (Kamal Heib) [1931846] - RDMA: Allow fail of destroy CQ (Kamal Heib) [1931846] - RDMA/core: Delete function indirection for alloc/free kernel CQ (Kamal Heib) [1931846] - RDMA: Restore ability to fail on SRQ destroy (Kamal Heib) [1931846] - RDMA/mlx5: Issue FW command to destroy SRQ on reentry (Kamal Heib) [1931846] - RDMA: Restore ability to fail on AH destroy (Kamal Heib) [1931846] - RDMA: Restore ability to fail on PD deallocate (Kamal Heib) [1931846] - RDMA/core: Change how failing destroy is handled during uobj abort (Kamal Heib) [1931846] - RDMA/ucma: Fix resource leak on error path (Kamal Heib) [1931846] - RDMA/rxe: Address an issue with hardened user copy (Kamal Heib) [1931846] - RDMA/rxe: Add SPDX hdrs to rxe source files (Kamal Heib) [1931846] - RDMA/core: Trigger a WARN_ON if the driver causes uobjects to become leaked (Kamal Heib) [1931846] - RDMA/rxe: Fix style warnings (Kamal Heib) [1931846] - RDMA/ucma: Remove closing and the close_wq (Kamal Heib) [1931846] - RDMA/ucma: Rework how new connections are passed through event delivery (Kamal Heib) [1931846] - RDMA/ucma: Narrow file->mut in ucma_event_handler() (Kamal Heib) [1931846] - RDMA/ucma: Change backlog into an atomic (Kamal Heib) [1931846] - RDMA/ucma: Add missing locking around rdma_leave_multicast() (Kamal Heib) [1931846] - RDMA/ucma: Fix locking for ctx->events_reported (Kamal Heib) [1931846] - RDMA/ucma: Fix the locking of ctx->file (Kamal Heib) [1931846] - RDMA/ucma: Do not use file->mut to lock destroying (Kamal Heib) [1931846] - RDMA/cma: Add missing locking to rdma_accept() (Kamal Heib) [1931846] - RDMA/ucma: Remove mc_list and rely on xarray (Kamal Heib) [1931846] - RDMA/ucma: Fix error cases around ucma_alloc_ctx() (Kamal Heib) [1931846] - RDMA/ucma: Consolidate the two destroy flows (Kamal Heib) [1931846] - RDMA/ucma: Remove unnecessary locking of file->ctx_list in close (Kamal Heib) [1931846] - RDMA/ucma: Fix refcount 0 incr in ucma_get_ctx() (Kamal Heib) [1931846] - RDMA/cm: Add tracepoints to track MAD send operations (Kamal Heib) [1931846] - RDMA/cm: Replace pr_debug() call sites with tracepoints (Kamal Heib) [1931846] - RDMA/core: Move the rdma_show_ib_cm_event() macro (Kamal Heib) [1931846] - RDMA/efa: Remove redundant udata check from alloc ucontext response (Kamal Heib) [1931846] - RDMA/vmw_pvrdma: Fix kernel-doc documentation (Kamal Heib) [1931846] - RDMA/rxe: prevent rxe creation on top of vlan interface (Kamal Heib) [1931846] - RDMA/cm: Remove unused cm_class (Kamal Heib) [1931846] - IB/isert: remove duplicated error prints (Kamal Heib) [1931846] - RDMA/efa: Introduce SRD RNR retry (Kamal Heib) [1931846] - RDMA/efa: Introduce SRD QP state machine (Kamal Heib) [1931846] - RDMA/efa: Be consistent with modify QP bitmask (Kamal Heib) [1931846] - RDMA/efa: Add a generic capability check helper (Kamal Heib) [1931846] - RDMA: Remove constant domain argument from flow creation call (Kamal Heib) [1931846] - RDMA/i40iw: Avoid typecast from void to pci_dev (Kamal Heib) [1931846] - sched/uclamp: Add CPU's clamp buckets refcounting (Kamal Heib) [1931846] - overflow: Include header file with SIZE_MAX declaration (Kamal Heib) [1931846] - treewide: Use fallthrough pseudo-keyword (Kamal Heib) [1931846] - IB/hfi1: Use fallthrough pseudo-keyword (Kamal Heib) [1931846] - treewide: replace '---help---' in Kconfig files with 'help' (Kamal Heib) [1931846] - remove ioremap_nocache and devm_ioremap_nocache (Kamal Heib) [1931846]- ethtool: pause: make sure we init driver stats (Ivan Vecera) [1935611] - ethtool: correct policy for ETHTOOL_MSG_CHANNELS_SET (Ivan Vecera) [1935611] - ethtool: strset: allow ETHTOOL_A_STRSET_COUNTS_ONLY attr (Ivan Vecera) [1935611] - ethtool: specify which header flags are supported per command (Ivan Vecera) [1935611] - ethtool: link up ethnl_header_policy as a nested policy (Ivan Vecera) [1935611] - ethtool: trim policy tables (Ivan Vecera) [1935611] - ethtool: wire up set policies to ops (Ivan Vecera) [1935611] - ethtool: wire up get policies to ops (Ivan Vecera) [1935611] - netdevsim: fix duplicated debugfs directory (Ivan Vecera) [1935611] - selftests: add a test for ethtool pause stats (Ivan Vecera) [1935611] - netdevsim: add pause frame stats (Ivan Vecera) [1935611] - docs: net: include the new ethtool pause stats in the stats doc (Ivan Vecera) [1935611] - ethtool: add standard pause stats (Ivan Vecera) [1935611] - net: tighten the definition of interface statistics (Ivan Vecera) [1935611]- PCI: hv: Fix typo (Mohammed Gamal) [1940924] - asm-generic/hyperv: change HV_CPU_POWER_MANAGEMENT to HV_CPU_MANAGEMENT (Mohammed Gamal) [1940925] - x86/hyperv: detect if Linux is the root partition (Mohammed Gamal) [1940925] - hyperv: hyperv.h: drop a duplicated word (Mohammed Gamal) [1940925] - hyper-v: Remove internal types from UAPI header (Mohammed Gamal) [1940925] - x86/hyperv: Load/save the Isolation Configuration leaf (Mohammed Gamal) [1940925] - x86/hyperv: Initialize clockevents after LAPIC is initialized (Mohammed Gamal) [1940925] - x86/hyperv: check cpu mask after interrupt has been disabled (Mohammed Gamal) [1940925] - x86/hyperv: Fix kexec panic/hang issues (Mohammed Gamal) [1940925] - video: hyperv_fb: Fix a double free in hvfb_probe (Mohammed Gamal) [1940922] - uio: uio_hv_generic: use devm_kzalloc() for private data alloc (Mohammed Gamal) [1940922] - Avoid macro redefinition in compiler-{clang,gcc}.h (Jerome Marchand) [1907271] - x86/split_lock: Add Icelake microserver and Tigerlake CPU models (Prarit Bhargava) [1847576] - tools/power/x86/intel-speed-select: Update version to 1.8 (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Add new command to get/set TRL (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Add new command turbo-mode (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or base_frequency (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency (Prarit Bhargava) [1921801] - platform/x86: ISST: Mark mmio_range_devid_0 and mmio_range_devid_1 with static keyword (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Update version for v5.11 (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Account for missing sysfs for die_id (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Read TRL from mailbox (Prarit Bhargava) [1921801] - platform/x86: ISST: Change PCI device macros (Prarit Bhargava) [1921801] - platform/x86: ISST: Allow configurable offset range (Prarit Bhargava) [1921801] - platform/x86: ISST: Check for unaligned mmio address (Prarit Bhargava) [1921801] - tools/power/turbostat: Fallback to an MSR read for EPB (Prarit Bhargava) [1926913] - tools/power/turbostat: Read energy_perf_bias from sysfs (Prarit Bhargava) [1926913] - Bluetooth: btusb: Add workaround for remote-wakeup issues with Barrot 8041a02 fake CSR controllers (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix detection of some fake CSR controllers with a bcdDevice val of 0x0134 (Gopal Tiwari) [1946951] - Bluetooth: btusb: support download nvm with different board id for wcn6855 (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: Add the missed release_firmware() in mtk_setup_firmware() (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add the missed release_firmware() in btusb_mtk_setup_firmware() (Gopal Tiwari) [1946951] - Bluetooth: btusb: Support 0bda:c123 Realtek 8822CE device (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Add OBDA0623 ACPI HID (Gopal Tiwari) [1946951] - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Wait for timeout during suspend (Gopal Tiwari) [1946951] - Bluetooth: btrtl: fix incorrect skb allocation failure check (Gopal Tiwari) [1946951] - Bluetooth: hci_ll: add a small delay for wl1271 enable bt_en (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add support for 1358:c123 Realtek 8822CE device (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: resolve various warnings (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Enhance retry logic in qca_setup (Gopal Tiwari) [1946951] - Bluetooth: btusb: btrtl: Add support for RTL8852A (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add support for 13d3:3560 MediaTek MT7615E device (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: fix memory leak in h5_close (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Ask 8821C to drop old firmware (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Refine the ic_id_table for clearer and more regular (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add the more support IDs for Realtek RTL8822CE (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: close serdev device and free hu in h5_close (Gopal Tiwari) [1946951] - Bluetooth: btintel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add Qualcomm Bluetooth SoC WCN6855 support (Gopal Tiwari) [1946951] - Bluetooth: btusb: Enable wide band speech support for BTUSB_QCA_ROME (Gopal Tiwari) [1946951] - Bluetooth: hci_serdev: Close UART port if NON_PERSISTENT_SETUP is set (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Remove duplicate power off in proto close (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: enable on new platform (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: use NULL instead of zero (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: switch to list_for_each_entry() (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: drop strange le16_to_cpu() against u8 values (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: remove redundant null check (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb (Gopal Tiwari) [1946951] - Bluetooth: hci_uart: Cancel init work before unregistering (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Remove ignored flag HCI_UART_RESET_ON_INIT (Gopal Tiwari) [1946951] - Bluetooth: btmrvl: eliminate duplicates introducing btmrvl_reg_89xx (Gopal Tiwari) [1946951] - Revert "Bluetooth: btusb: Disable runtime suspend on Realtek devices" (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Stop collecting memdump again for command timeout during SSR (Gopal Tiwari) [1946951] - Bluetooth: hci_serdev: Only unregister device if it was registered (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth controllers (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Bug fixes for SSR (Gopal Tiwari) [1946951] - Bluetooth: btusb: add Realtek 8822CE to usb_device_id table (Gopal Tiwari) [1946951] - Bluetooth: btusb: USB alternate setting 1 for WBS (Gopal Tiwari) [1946951] - Bluetooth: btusb: Comment on unbalanced pm reference (Gopal Tiwari) [1946951] - Bluetooth: btusb: BTUSB_WAKEUP_DISABLE prevents wake (Gopal Tiwari) [1946951] - Bluetooth: btusb: Reset port on cmd timeout (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: fix up firmware download sequence (Gopal Tiwari) [1946951] - Bluetooth: btusb: fix up firmware download sequence (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Disable SoC debug logging for WCN3991 (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Request Tx clock vote off only when Tx is pending (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Refactor irq wakeup (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Implement prevent_wake (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Set parent dev to hdev (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Bug fix during SSR timeout (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Refactor error handling in qca_suspend() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Skip serdev wait when no transfer is pending (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Simplify determination of serial clock on/off state from votes (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix an error pointer dereference (Gopal Tiwari) [1946951] - btmrvl: Fix firmware filename for sd8977 chipset (Gopal Tiwari) [1946951] - btmrvl: Fix firmware filename for sd8997 chipset (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix QCA6390 memdump failure (Gopal Tiwari) [1946951] - Bluetooth: btmtkuart: Use serdev_device_write_buf() instead of serdev_device_write() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Improve controller ID info log level (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix qca6390 enable failure after warm reboot (Gopal Tiwari) [1946951] - Bluetooth: btmtkuart: Improve exception handling in btmtuart_probe() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix suspend/resume functionality failure (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Added 003.006.007, changed 001.003.015 (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix uninitialized access to hdev (Gopal Tiwari) [1946951] - Bluetooth: serdev: Constify serdev_device_ops (Gopal Tiwari) [1946951] - Bluetooth: Add hook for driver to prevent wake from suspend (Gopal Tiwari) [1946951] - Bluetooth: btusb: Implement hdev->prevent_wake (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Add support for binding RTL8723BS with device tree (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: allow max-speed to be set for QCA9377 devices (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: add compatible for QCA9377 (Gopal Tiwari) [1946951] - Bluetooth: btusb: Adding support for LE scatternet to Jfp and ThP (Gopal Tiwari) [1946951] - Bluetooth: Adding driver and quirk defs for multi-role LE (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Add 2 missing models to subver tables (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Move setting of USE_BDADDR_PROPERTY quirk to hci_bcm.c (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Try multiple Patch filenames when loading the Patch firmware (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Bail sooner from btbcm_initialize() when not loading fw (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Drop upper nibble version check from btbcm_initialize() (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Make btbcm_setup_patchram use btbcm_finalize (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Make btbcm_initialize() print local-name on re-init too (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Fold Patch loading + applying into btbcm_initialize() (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Add support for RTL8761B (Gopal Tiwari) [1946951] - Bluetooth: btusb: check for NULL in btusb_find_altsetting() (Gopal Tiwari) [1946951] - Bluetooth: btusb: handle mSBC audio over USB Endpoints (Gopal Tiwari) [1946951] - Bluetooth: add support to notify using SCO air mode (Gopal Tiwari) [1946951] - Bluetooth: hci_bcm: respect IRQ polarity from DT (Gopal Tiwari) [1946951] - Bluetooth: hci_bcm: fix freeing not-requested IRQ (Gopal Tiwari) [1946951] - intel_idle: remove definition of DEBUG (David Arcari) [1926917] - intel_idle: Build fix (David Arcari) [1926917] - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known (Phil Auld) [1937103] - cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not there (Phil Auld) [1937103] - cpufreq: ACPI: Extend frequency tables to cover boost frequencies (Phil Auld) [1937103] - sched/uclamp: Add CPU's clamp buckets refcounting (Phil Auld) [1937103] - x86: PM: Register syscore_ops for scale invariance (Phil Auld) [1937103] - sched/fair: Reduce cases for active balance (Phil Auld) [1937103] - sched/fair: Don't set LBF_ALL_PINNED unnecessarily (Phil Auld) [1937103] - sched/fair: Skip idle cfs_rq (Phil Auld) [1937103] - tick/sched: Make jiffies update quick check more robust (Phil Auld) [1937103] - sched/fair: Trivial correction of the newidle_balance() comment (Phil Auld) [1937103] - sched/fair: Clear SMT siblings after determining the core is not idle (Phil Auld) [1937103] - sched: Fix kernel-doc markup (Phil Auld) [1937103] - x86: Print ratio freq_max/freq_base used in frequency invariance calculations (Phil Auld) [1937103] - x86, sched: Use midpoint of max_boost and max_P for frequency invariance on AMD EPYC (Phil Auld) [1937103] - x86, sched: Calculate frequency invariance for AMD systems (Phil Auld) [1937103] - sched: Limit the amount of NUMA imbalance that can exist at fork time (Phil Auld) [1937103] - sched/numa: Allow a floating imbalance between NUMA nodes (Phil Auld) [1937103] - sched: Avoid unnecessary calculation of load imbalance at clone time (Phil Auld) [1937103] - sched/numa: Rename nr_running and break out the magic number (Phil Auld) [1937103] - sched/topology: Condition EAS enablement on FIE support (Phil Auld) [1937103] - sched/topology: Don't enable EAS on SMT systems (Phil Auld) [1937103] - sched/topology,schedutil: Wrap sched domains rebuild (Phil Auld) [1937103] - sched/core: Fix typos in comments (Phil Auld) [1937103] - sched: Fix rq->nr_iowait ordering (Phil Auld) [1937103] - sched: Fix data-race in wakeup (Phil Auld) [1937103] - sched/fair: Fix overutilized update in enqueue_task_fair() (Phil Auld) [1937103] - sched/fair: Dissociate wakeup decisions from SD flag value (Phil Auld) [1937103] - sched: Remove select_task_rq()'s sd_flag parameter (Phil Auld) [1937103] - sched: Add WF_TTWU, WF_EXEC wakeup flags (Phil Auld) [1937103] - sched/fair: Remove superfluous lock section in do_sched_cfs_slack_timer() (Phil Auld) [1937103] - sched/fair: Ensure tasks spreading in LLC during LB (Phil Auld) [1937103] - sched/fair: Reorder throttle_cfs_rq() path (Phil Auld) [1937103] - sched/fair: Check for idle core in wake_affine (Phil Auld) [1937103] - sched: Reenable interrupts in do_sched_yield() (Phil Auld) [1937103] - sched/fair: Improve the accuracy of sched_stat_wait statistics (Phil Auld) [1937103] - sched/fair: Tweak pick_next_entity() (Phil Auld) [1937103] - sched/debug: Add new tracepoint to track cpu_capacity (Phil Auld) [1937103] - sched/fair: Remove the force parameter of update_tg_load_avg() (Phil Auld) [1937103] - sched/rt: Disable RT_RUNTIME_SHARE by default (Phil Auld) [1937103] - sched: Cache task_struct::flags in sched_submit_work() (Phil Auld) [1937103] - sched/fair: Simplify the work when reweighting entity (Phil Auld) [1937103] - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu() (Phil Auld) [1937103] - sched/fair: Ignore cache hotness for SMT migration (Phil Auld) [1937103] - sched: Use __always_inline on is_idle_task() (Phil Auld) [1937103] - treewide: Use fallthrough pseudo-keyword (Phil Auld) [1937103] - sched/debug: Fix the alignment of the show-state debug output (Phil Auld) [1937103] - x86, sched: Bail out of frequency invariance if turbo_freq/base_freq gives 0 (Phil Auld) [1937103] - x86, sched: Bail out of frequency invariance if turbo frequency is unknown (Phil Auld) [1937103] - x86, sched: check for counters overflow in frequency invariant accounting (Phil Auld) [1937103] - exit: Move preemption fixup up, move blocking operations down (Phil Auld) [1937103] - net: bonding: remove repeated word (Jarod Wilson) [1936982] - net: bonding: Correct function name bond_change_active_slave() in comment (Jarod Wilson) [1936982] - bonding: Added -ENODEV interpret for slaves option (Jarod Wilson) [1936982] - bonding: 3ad: Print an error for unknown speeds (Jarod Wilson) [1936982] - bonding: 3ad: add support for 400G speed (Jarod Wilson) [1936982] - bonding: 3ad: add support for 200G speed (Jarod Wilson) [1936982] - net/bonding: Declare TLS RX device offload support (Jarod Wilson) [1936982] - net/bonding: Implement TLS TX device offload (Jarod Wilson) [1936982] - net/bonding: Take update_features call out of XFRM funciton (Jarod Wilson) [1936982] - net/bonding: Implement ndo_sk_get_lower_dev (Jarod Wilson) [1936982] - net/bonding: Take IP hash logic into a helper (Jarod Wilson) [1936982] - net: bonding: Notify ports about their initial state (Jarod Wilson) [1936982] - bonding: wait for sysfs kobject destruction before freeing struct slave (Jarod Wilson) [1936982] - bonding: advertise NETIF_F_GSO_SOFTWARE (Jarod Wilson) [1936982] - net/tls: Except bond interface from some TLS checks (Jarod Wilson) [1936982] - net/tls: Device offload to use lowest netdevice in chain (Jarod Wilson) [1936982] - ethtool: Add common function for filling out strings (Ivan Vecera) [1950987] - selftests: forwarding: vxlan_bridge_1d: Fix vxlan ecn decapsulate value (Hangbin Liu) [1949349] - selftests: forwarding: Fix race condition in mirror installation (Hangbin Liu) [1949349] - selftests: txtimestamp: fix compilation issue (Hangbin Liu) [1949349] - selftests: net: fib_tests: remove duplicate log test (Hangbin Liu) [1949349] - selftests: xfrm: fix test return value override issue in xfrm_policy.sh (Hangbin Liu) [1949349] - selftests: rtnetlink: load fou module for kci_test_encap_fou() test (Hangbin Liu) [1949349] - vxlan: move debug check after netdev unregister (Guillaume Nault) [1949167] - net: ip: always refragment ip defragmented packets (Guillaume Nault) [1949167] - net: fix pmtu check in nopmtudisc mode (Guillaume Nault) [1949167] - net: udp: make udp_tunnel_nic_info structure extensible (Ivan Vecera) [1948450] - macvlan: macvlan_count_rx() needs to be aware of preemption (Antoine Tenart) [1950012] - macvlan: remove redundant null check on data (Antoine Tenart) [1950012] - net: fix dev_ifsioc_locked() race condition (Antoine Tenart) [1950234] - ipv6: weaken the v4mapped source check (Hangbin Liu) [1949499] - ipv6: set multicast flag on the multicast route (Hangbin Liu) [1949499] - ipv6: create multicast route with RTPROT_KERNEL (Hangbin Liu) [1949499] - net: ipv6: Validate GSO SKB before finish IPv6 processing (Hangbin Liu) [1949499] - net: sit: unregister_netdevice on newlink's error path (Hangbin Liu) [1949499] - net: ip6_gre: fix moving ip6gre between namespaces (Hangbin Liu) [1949499] - gso: validate gso_type on ipip style tunnels (Hangbin Liu) [1949499] - net: page_pool: simplify page recycling condition tests (Ivan Vecera) [1935698] - net: use the new dev_page_is_reusable() instead of private versions (Ivan Vecera) [1935698] - net: introduce common dev_page_is_reusable() (Ivan Vecera) [1935698] - skbuff: constify skb_propagate_pfmemalloc() "page" argument (Ivan Vecera) [1935698] - mm: constify page_is_pfmemalloc() argument (Ivan Vecera) [1935698] - genetlink: allow dumping command-specific policy (Ivan Vecera) [1938919] - genetlink: properly support per-op policy dumping (Ivan Vecera) [1938919] - genetlink: factor skb preparation out of ctrl_dumppolicy() (Ivan Vecera) [1938919] - netlink: rework policy dump to support multiple policies (Ivan Vecera) [1938919] - netlink: compare policy more accurately (Ivan Vecera) [1938919] - genetlink: switch control commands to per-op policies (Ivan Vecera) [1938919] - genetlink: use parsed attrs in dumppolicy (Ivan Vecera) [1938919] - taskstats: move specifying netlink policy back to ops (Ivan Vecera) [1938919] - genetlink: bring back per op policy (Ivan Vecera) [1938919] - genetlink: use .start callback for dumppolicy (Ivan Vecera) [1938919] - genetlink: add a structure for dump state (Ivan Vecera) [1938919] - genetlink: move to smaller ops wherever possible (Ivan Vecera) [1938919] - genetlink: add small version of ops (Ivan Vecera) [1938919] - netlink: fix policy dump leak (Ivan Vecera) [1938919] - genetlink: get rid of family->attrbuf (Ivan Vecera) [1938919] - genetlink: clean up family attributes allocations (Ivan Vecera) [1938919] - genetlink: fix memory leaks in genl_family_rcv_msg_dumpit() (Ivan Vecera) [1938919] - net: genetlink: return the error code when attribute parsing fails. (Ivan Vecera) [1938919] - genetlink: do not parse attributes for families with zero maxattr (Ivan Vecera) [1938919] - net: tipc: prepare attrs in __tipc_nl_compat_dumpit() (Ivan Vecera) [1938919] - net: genetlink: always allocate separate attrs for dumpit ops (Ivan Vecera) [1938919] - net: genetlink: remove unused genl_family_attrbuf() (Ivan Vecera) [1938919] - net: tipc: allocate attrs locally instead of using genl_family_attrbuf in compat_dumpit() (Ivan Vecera) [1938919] - net: tipc: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: nfc: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: ieee802154: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: genetlink: parse attrs and store in contect info struct during dumpit (Ivan Vecera) [1938919] - net: genetlink: push attrbuf allocation and parsing to a separate function (Ivan Vecera) [1938919] - net: genetlink: introduce dump info struct to be available during dumpit op (Ivan Vecera) [1938919] - net: genetlink: push doit/dumpit code from genl_family_rcv_msg (Ivan Vecera) [1938919] - devlink: Use controller while building phys_port_name (Petr Oros) [1935615] - devlink: Introduce controller number (Petr Oros) [1935615] - devlink: Introduce external controller flag (Petr Oros) [1935615] - devlink: Move structure comments outside of structure (Petr Oros) [1935615] - devlink: Add comment block for missing port attributes (Petr Oros) [1935615] - net/mlx5: E-switch, Read controller number from device (Petr Oros) [1935615] - devlink: don't crash if netdev is NULL (Petr Oros) [1935615] - vdpa/mlx5: Use write memory barrier after updating CQ index (Jason Wang) [1877270] - vhost_vdpa: return -EFAULT if copy_to_user() fails (Jason Wang) [1877270] - vdpa: mlx5: fix vdpa/vhost dependencies (Jason Wang) [1877270] - vhost-vdpa: fix page pinning leakage in error path (rework) (Jason Wang) [1877270] - vdpasim: fix "mac_pton" undefined error (Jason Wang) [1877270] - vdpasim: allow to assign a MAC address (Jason Wang) [1877270] - vdpasim: fix MAC address configuration (Jason Wang) [1877270] - vdpa: handle irq bypass register failure case (Jason Wang) [1877270] - vdpa_sim: Fix DMA mask (Jason Wang) [1877270] - Revert "vhost-vdpa: fix page pinning leakage in error path" (Jason Wang) [1877270] - vdpa/mlx5: Fix error return in map_direct_mr() (Jason Wang) [1877270] - vhost_vdpa: Return -EFAULT if copy_from_user() fails (Jason Wang) [1877270] - vdpa_sim: implement get_iova_range() (Jason Wang) [1877270] - vhost: vdpa: report iova range (Jason Wang) [1877270] - vdpa: introduce config op to get valid iova range (Jason Wang) [1877270] - vhost_vdpa: remove unnecessary spin_lock in vhost_vring_call (Jason Wang) [1877270] - vdpa/mlx5: Setup driver only if VIRTIO_CONFIG_S_DRIVER_OK (Jason Wang) [1877270] - vhost_vdpa: Fix duplicate included kernel.h (Jason Wang) [1877270] - vdpa/mlx5: Fix failure to bring link up (Jason Wang) [1877270] - vdpa/mlx5: Make use of a specific 16 bit endianness API (Jason Wang) [1877270] - vdpa/mlx5: Fix dependency on MLX5_CORE (Jason Wang) [1877270] - vdpa/mlx5: should keep avail_index despite device status (Jason Wang) [1877270] - vhost-vdpa: fix page pinning leakage in error path (Jason Wang) [1877270] - vhost-vdpa: fix vhost_vdpa_map() on error condition (Jason Wang) [1877270] - vhost vdpa: fix vhost_vdpa_open error handling (Jason Wang) [1877270] - vhost-vdpa: fix backend feature ioctls (Jason Wang) [1877270] - vdpa/mlx5: Avoid warnings about shifts on 32-bit platforms (Jason Wang) [1877270] - vdpa: ifcvf: free config irq in ifcvf_free_irq() (Jason Wang) [1877270] - vdpa: ifcvf: return err when fail to request config irq (Jason Wang) [1877270] - vdpa/mlx5: fix up endian-ness for mtu (Jason Wang) [1877270] - vdpa: Fix pointer math bug in vdpasim_get_config() (Jason Wang) [1877270] - vdpa/mlx5: Fix pointer math in mlx5_vdpa_get_config() (Jason Wang) [1877270] - mlx5: vdpa: fix possible uninitialized var (Jason Wang) [1877270] - vdpa/mlx5: fix memory allocation failure checks (Jason Wang) [1877270] - vdpa/mlx5: Fix uninitialised variable in core/mr.c (Jason Wang) [1877270] - vdpa_sim: init iommu lock (Jason Wang) [1877270] - redhat: enable mlx5e vDPA driver (Jason Wang) [1877270] - vdpa/mlx5: Add VDPA driver for supported mlx5 devices (Jason Wang) [1877270] - vdpa/mlx5: Add shared memory registration code (Jason Wang) [1877270] - vdpa/mlx5: Add support library for mlx5 VDPA implementation (Jason Wang) [1877270] - vdpa/mlx5: Add hardware descriptive header file (Jason Wang) [1877270] - vdpa: Modify get_vq_state() to return error code (Jason Wang) [1877270] - net/vdpa: Use struct for set/get vq state (Jason Wang) [1877270] - vdpa: remove hard coded virtq num (Jason Wang) [1877270] - vdpasim: support batch updating (Jason Wang) [1877270] - vhost-vdpa: support IOTLB batching hints (Jason Wang) [1877270] - vhost-vdpa: support get/set backend features (Jason Wang) [1877270] - vhost: generialize backend features setting/getting (Jason Wang) [1877270] - vhost-vdpa: refine ioctl pre-processing (Jason Wang) [1877270] - vDPA: dont change vq irq after DRIVER_OK (Jason Wang) [1877270] - ifcvf: implement vdpa_config_ops.get_vq_irq() (Jason Wang) [1877270] - vhost_vdpa: implement IRQ offloading in vhost_vdpa (Jason Wang) [1877270] - vDPA: add get_vq_irq() in vdpa_config_ops (Jason Wang) [1877270] - vhost: introduce vhost_vring_call (Jason Wang) [1877270] - vdpasim: protect concurrent access to iommu iotlb (Jason Wang) [1877270] - vhost: vdpa: remove per device feature whitelist (Jason Wang) [1877270] - vdpa_sim: fix endian-ness of config space (Jason Wang) [1877270] - virtio_vdpa: legacy features handling (Jason Wang) [1877270] - vhost/vdpa: switch to new helpers (Jason Wang) [1877270] - vdpa: make sure set_features is invoked for legacy (Jason Wang) [1877270] - vhost_vdpa: Fix potential underflow in vhost_vdpa_mmap() (Jason Wang) [1877270] - vdpa: fix typos in the comments for __vdpa_alloc_device() (Jason Wang) [1877270] - ifcvf: implement config interrupt in IFCVF (Jason Wang) [1877270] - vhost: replace -1 with VHOST_FILE_UNBIND in ioctls (Jason Wang) [1877270] - vhost_vdpa: Support config interrupt in vdpa (Jason Wang) [1877270] - ifcvf: ignore continuous setting same status value (Jason Wang) [1877270] - vdpasim: Fix some coccinelle warnings (Jason Wang) [1877270] - ifcvf: move IRQ request/free to status change handlers (Jason Wang) [1877270] - vhost_vdpa: disable doorbell mapping for !MMU (Jason Wang) [1877270] - vhost_vdpa: support doorbell mapping via mmap (Jason Wang) [1877270] - vdpa: introduce get_vq_notification method (Jason Wang) [1877270] - vhost: use mmgrab() instead of mmget() for non worker device (Jason Wang) [1877270] - vhost: allow device that does not depend on vhost worker (Jason Wang) [1877270] - vhost: revert "vhost: disable for OABI" (Jason Wang) [1877270] - vdpasim: remove unused variable 'ret' (Jason Wang) [1877270] - vhost: remove set but not used variable 'status' (Jason Wang) [1877270] - vhost: vdpa: remove unnecessary null check (Jason Wang) [1877270] - virtio/test: fix up after IOTLB changes (Jason Wang) [1877270] - vhost/test: fix build for vhost test (Jason Wang) [1877270] - tools/virtio: option to build an out of tree module (Jason Wang) [1877270] - vhost/test: fix build for vhost test (Jason Wang) [1877270] - vhost: fix VHOST_GET_BACKEND_FEATURES ioctl request definition (Jason Wang) [1877270] - perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3 (Michael Petlan) [1950388]- redhat/configs/editconfig: Add support for a bugzilla entry (David Arcari) - tools/power turbostat: Revert "[tools] tools/power turbostat: Enable accumulate RAPL display" (Prarit Bhargava) [1944699] - mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start (Jarod Wilson) [1914996] {CVE-2020-36158} - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP (Alaa Hleihel) [1932839 1936742] - net/mlx5e: Reject tc rules which redirect from a VF to itself (Alaa Hleihel) [1932839] - net/mlx5: CT: Add support for matching on ct_state inv and rel flags (Alaa Hleihel) [1932839 1942681] - net: openvswitch: add log message for error case (Eelco Chaudron) [1937697] - net: openvswitch: conntrack: simplify the return expression of ovs_ct_limit_get_default_limit() (Eelco Chaudron) [1937697] - net: openvswitch: Be liberal in tcp conntrack. (Eelco Chaudron) [1937697] - netfilter: conntrack: tcp: only close if RST matches exact sequence (Eelco Chaudron) [1937697] - openvswitch: Use IS_ERR instead of IS_ERR_OR_NULL (Eelco Chaudron) [1937697] - net: openvswitch: Fix kerneldoc warnings (Eelco Chaudron) [1937697] - net: openvswitch: remove unnecessary ASSERT_OVSL in ovs_vport_del() (Eelco Chaudron) [1937697] - cifs: revalidate mapping when we open files for SMB1 POSIX (Ronnie Sahlberg) [1933527] - Revert "vfs: Allow userns root to call mknod on owned filesystems." (Alexey Gladkov) [1902543] - mfd: intel-lpss: Add Intel Alder Lake PCH-S PCI IDs (David Arcari) [1840244] - nvme: retrigger ANA log update if group descriptor isn't found (Gopal Tiwari) [1910493] - locking/qrwlock: Fix ordering in queued_write_lock_slowpath() (Waiman Long) [1950110] - PCI: switchtec: Add missing __iomem tag to fix sparse warnings (Myron Stowe) [1946645] - PCI: switchtec: Add missing __iomem and __user tags to fix sparse warnings (Myron Stowe) [1946645] - PCI: Release IVRS table in AMD ACS quirk (Myron Stowe) [1946645] - PCI/MSI: Forward MSI-X error code in pci_alloc_irq_vectors_affinity() (Myron Stowe) [1946645] - PCI: Remove unused pci_lost_interrupt() (Myron Stowe) [1946645] - PCI: Move PCI_VENDOR_ID_REDHAT definition to pci_ids.h (Myron Stowe) [1946645] - PCI: Fix error in panic message (Myron Stowe) [1946645] - PCI: Replace lkml.org, spinics, gmane with lore.kernel.org (Myron Stowe) [1946645] - PCI: Replace http:// links with https:// (Myron Stowe) [1946645] - PCI: exynos: Rename Exynos to lowercase (Myron Stowe) [1946645] - PCI: Align PCIe capability and PCI accessor return values (Myron Stowe) [1946645] - PCI: Convert PCIe capability PCIBIOS errors to errno (Myron Stowe) [1946645] - PCI: rpadlpar: Make functions static (Myron Stowe) [1946645] - PCI: Fix pci_slot_release() NULL pointer dereference (Myron Stowe) [1946645] - PCI: Fix pci_create_slot() reference count leak (Myron Stowe) [1946645] - PCI: Announce device after early fixups (Myron Stowe) [1946645] - PCI: Always enable ACS even if no ACS Capability (Myron Stowe) [1946645] - PCI: Cache ACS capability offset in device (Myron Stowe) [1946645] - PCI: Reorder pci_enable_acs() and dependencies (Myron Stowe) [1946645] - PCI: Add device even if driver attach failed (Myron Stowe) [1946645] - PCI: Fix pci_cfg_wait queue locking problem (Myron Stowe) [1946645] - PCI/ASPM: Add missing newline in sysfs 'policy' (Myron Stowe) [1946645]- gfs2: report "already frozen/thawed" errors (Bob Peterson) [1932236] - gfs2: move freeze glock outside the make_fs_rw and _ro functions (Bob Peterson) [1932236] - gfs2: Add common helper for holding and releasing the freeze glock (Bob Peterson) [1932236] - gfs2: in signal_our_withdraw wait for unfreeze of _this_ fs only (Bob Peterson) [1932236] - gfs2: Don't freeze the file system during unmount (Bob Peterson) [1932236] - gfs2: Fix regression in freeze_go_sync (Bob Peterson) [1932236] - gfs2: The freeze glock should never be frozen (Bob Peterson) [1932236] - gfs2: When freezing gfs2, use GL_EXACT and not GL_NOCACHE (Bob Peterson) [1932236] - gfs2: Abort gfs2_freeze if io error is seen (Bob Peterson) [1932236] - gfs2: read-only mounts should grab the sd_freeze_gl glock (Bob Peterson) [1932236] - gfs2: freeze should work on read-only mounts (Bob Peterson) [1932236] - bpf: Mark LSM link with rh_mark_used_feature call (Jiri Olsa) [1901039] - Revert "[tools] bpf: selftests: remove test_progs LSM test" (Ondrej Mosnacek) [1901039] - configs: enable BPF LSM (Ondrej Mosnacek) [1901039] - security: Fix hook iteration and default value for inode_copy_up_xattr (Ondrej Mosnacek) [1901039] - security: Fix hook iteration for secid_to_secctx (Ondrej Mosnacek) [1901039] - security: Fix the default value of secid_to_secctx hook (Ondrej Mosnacek) [1901039] - security: Fix the default value of fs_context_parse_param hook (Ondrej Mosnacek) [1901039] - bpf: lsm: Initialize the BPF LSM hooks (Ondrej Mosnacek) [1901039] - security: Refactor declaration of LSM hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the shm_* hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the sem_* hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the msg_queue_* hooks (Ondrej Mosnacek) [1901039] - LSM: Revive CONFIG_DEFAULT_SECURITY_* for "make oldconfig" (Ondrej Mosnacek) [1901039] - LSM: Ignore "security=" when "lsm=" is specified (Ondrej Mosnacek) [1901039] - LSM: Update function documentation for cap_capable (Ondrej Mosnacek) [1901039] - procfs: add smack subdir to attrs (Ondrej Mosnacek) [1901039] - capability: Initialize as LSM_ORDER_FIRST (Ondrej Mosnacek) [1901039] - LSM: Introduce enum lsm_order (Ondrej Mosnacek) [1901039] - Yama: Initialize as ordered LSM (Ondrej Mosnacek) [1901039] - LoadPin: Initialize as ordered LSM (Ondrej Mosnacek) [1901039] - LSM: Split LSM preparation from initialization (Ondrej Mosnacek) [1901039] - LSM: Add all exclusive LSMs to ordered initialization (Ondrej Mosnacek) [1901039] - LSM: Separate idea of "major" LSM from "exclusive" LSM (Ondrej Mosnacek) [1901039] - LSM: Refactor "security=" in terms of enable/disable (Ondrej Mosnacek) [1901039] - LSM: Prepare for reorganizing "security=" logic (Ondrej Mosnacek) [1901039] - LSM: Tie enabling logic to presence in ordered list (Ondrej Mosnacek) [1901039] - LSM: Introduce "lsm=" for boottime LSM selection (Ondrej Mosnacek) [1901039] - LSM: Introduce CONFIG_LSM (Ondrej Mosnacek) [1901039] - LSM: Build ordered list of LSMs to initialize (Ondrej Mosnacek) [1901039] - LSM: Lift LSM selection out of individual LSMs (Ondrej Mosnacek) [1901039] - LSM: Plumb visibility into optional "enabled" state (Ondrej Mosnacek) [1901039] - LSM: Provide separate ordered initialization (Ondrej Mosnacek) [1901039] - LSM: Introduce LSM_FLAG_LEGACY_MAJOR (Ondrej Mosnacek) [1901039] - LSM: Don't ignore initialization failures (Ondrej Mosnacek) [1901039] - LSM: Provide init debugging infrastructure (Ondrej Mosnacek) [1901039] - LSM: Record LSM name in struct lsm_info (Ondrej Mosnacek) [1901039] - LSM: Convert security_initcall() into DEFINE_LSM() (Ondrej Mosnacek) [1901039] - vmlinux.lds.h: Move LSM_TABLE into INIT_DATA (Ondrej Mosnacek) [1901039] - LSM: Convert from initcall to struct lsm_info (Ondrej Mosnacek) [1901039] - LSM: Remove initcall tracing (Ondrej Mosnacek) [1901039] - LSM: Rename .security_initcall section to .lsm_info (Ondrej Mosnacek) [1901039] - vmlinux.lds.h: Avoid copy/paste of security_init section (Ondrej Mosnacek) [1901039] - LSM: Correctly announce start of LSM initialization (Ondrej Mosnacek) [1901039] - proc: save 2 atomic ops on write to "/proc/*/attr/*" (Ondrej Mosnacek) [1901039] - ALSA: usb-audio: fix NULL ptr dereference in usb_audio_probe (Jaroslav Kysela) [1870724] - ALSA: usb-audio: fix use after free in usb_audio_disconnect (Jaroslav Kysela) [1870724] - ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend() (Jaroslav Kysela) [1870724] - Bluetooth: btusb: Fix the autosuspend enable and disable (Gopal Tiwari) [1927375] - flow_dissector: fix TTL and TOS dissection on IPv4 fragments (Davide Caratti) [1882607] - net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0 (Balazs Nemeth) [1922898] - net: check if protocol extracted by virtio_net_hdr_set_proto is correct (Balazs Nemeth) [1922898] - redhat/configs: Add CONFIG_PINCTRL_ALDERLAKE (David Arcari) [1840250] - pinctrl: intel: Add Intel Alder Lake-S pin controller support (David Arcari) [1840250] - cpufreq: intel_pstate: Remove repeated word (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if available (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Rename two functions (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Always read hwp_cap_cached with READ_ONCE() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: remove obsolete functions (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Use HWP capabilities in intel_cpufreq_adjust_perf() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Fix fast-switch fallback path (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Use most recent guaranteed performance values (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Implement the ->adjust_perf() callback (Puneet Sethi) [1926919] - cpufreq: Add special-purpose fast-switching callback for drivers (Puneet Sethi) [1926919] - cpufreq: schedutil: Add util to struct sg_cpu (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Simplify intel_cpufreq_update_pstate() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Take CPUFREQ_GOV_STRICT_TARGET into account (Puneet Sethi) [1926919] - cpufreq: Add strict_target to struct cpufreq_policy (Puneet Sethi) [1926919] - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET (Puneet Sethi) [1926919] - cpufreq: Introduce governor flags (Puneet Sethi) [1926919] - cpufreq: schedutil: Don't skip freq update if need_freq_update is set (Puneet Sethi) [1926919] - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is set (Puneet Sethi) [1926919] - cpufreq: Introduce cpufreq_driver_test_flags() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Avoid missing HWP max updates in passive mode (Puneet Sethi) [1926919] - cpufreq: schedutil: restore cached freq when next_f is not changed (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Delete intel_pstate sysfs if failed to register the driver (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Fix missing return statement (Puneet Sethi) [1926919] - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag (Puneet Sethi) [1926919] - ACPI: processor: Fix build when CONFIG_ACPI_PROCESSOR=m (Vitaly Kuznetsov) [1929266] - ACPI: processor: Fix CPU0 wakeup in acpi_idle_play_dead() (Vitaly Kuznetsov) [1929266] - x86/ioapic: Ignore IRQ2 again (Vitaly Kuznetsov) [1929266]- selinux: fix deadlock in security_set_bools() (Ondrej Mosnacek) [1924230] - sctp: move sk_route_caps check and set into sctp_outq_flush_transports (Xin Long) [1946733] - sctp: bring inet(6)_skb_parm back to sctp_input_cb (Xin Long) [1946733] - sctp: enable udp tunneling socks (Xin Long) [1946733] - sctp: handle the init chunk matching an existing asoc (Xin Long) [1946733] - sctp: add the error cause for new encapsulation port restart (Xin Long) [1946733] - sctp: support for sending packet over udp6 sock (Xin Long) [1946733] - sctp: support for sending packet over udp4 sock (Xin Long) [1946733] - sctp: call sk_setup_caps in sctp_packet_transmit instead (Xin Long) [1946733] - sctp: add udphdr to overhead when udp_port is set (Xin Long) [1946733] - sctp: allow changing transport encap_port by peer packets (Xin Long) [1946733] - sctp: add SCTP_REMOTE_UDP_ENCAPS_PORT sockopt (Xin Long) [1946733] - sctp: add encap_port for netns sock asoc and transport (Xin Long) [1946733] - sctp: add encap_err_lookup for udp encap socks (Xin Long) [1946733] - sctp: create udp6 sock and set its encap_rcv (Xin Long) [1946733] - sctp: create udp4 sock and add its encap_rcv (Xin Long) [1946733] - udp: support sctp over udp in skb_udp_tunnel_segment (Xin Long) [1946733] - udp6: move the mss check after udp gso tunnel processing (Xin Long) [1946733] - udp: check udp sock encap_type in __udp_lib_err (Xin Long) [1946733] - sctp: copy the optval from user space in sctp_setsockopt (Xin Long) [1946733] - net: Convert protocol error handlers from void to int (Xin Long) [1946733] - Enable CONFIG_ENERGY_MODEL (Phil Auld) [1938339] - proc/sysctl: add shared variables for range check (Phil Auld) [1938339] - Enable CONFIG_CPU_FREQ_GOV_SCHEDUTIL for all architectures (Phil Auld) [1938339] - PM / hibernate: cast PAGE_SIZE to int when comparing with error code (Chris von Recklinghausen) [1934033] - mm: revert fix false-positive OVERCOMMIT_GUESS failures (Rafael Aquini) [1913045 1908668] - redhat/config: Enable CONFIG_PAGE_POISONING (Waiman Long) [1942149] - mm, page_poison: remove CONFIG_PAGE_POISONING_ZERO (Waiman Long) [1942149] - mm, page_poison: remove CONFIG_PAGE_POISONING_NO_SANITY (Waiman Long) [1942149] - kernel/power: allow hibernation with page_poison sanity checking (Waiman Long) [1942149] - mm, page_poison: use static key more efficiently (Waiman Long) [1942149] - mm, page_alloc: do not rely on the order of page_poison and init_on_alloc/free parameters (Waiman Long) [1942149] - mm/page_alloc: clear all pages in post_alloc_hook() with init_on_alloc=1 (Waiman Long) [1942149] - arch, mm: make kernel_page_present() always available (Waiman Long) [1942149] - arch, mm: restore dependency of __kernel_map_pages() on DEBUG_PAGEALLOC (Waiman Long) [1942149] - PM: hibernate: make direct map manipulations more explicit (Waiman Long) [1942149] - mm: introduce debug_pagealloc_{map,unmap}_pages() helpers (Waiman Long) [1942149] - mm: rename page_order() to buddy_order() (Waiman Long) [1942149] - mm/page_alloc: place pages to tail in __free_pages_core() (Waiman Long) [1942149] - mm/page_alloc: move pages to tail in move_to_free_list() (Waiman Long) [1942149] - mm/page_alloc: place pages to tail in __putback_isolated_page() (Waiman Long) [1942149] - mm/page_alloc: convert "report" flag of __free_one_page() to a proper flag (Waiman Long) [1942149] - mm/page_alloc: drop stale pageblock comment in memmap_init_zone*() (Waiman Long) [1942149] - mm/memory_hotplug: simplify page onlining (Waiman Long) [1942149] - mm/page_isolation: simplify return value of start_isolate_page_range() (Waiman Long) [1942149] - mm/memory_hotplug: drop nr_isolate_pageblock in offline_pages() (Waiman Long) [1942149] - mm/page_alloc: simplify __offline_isolated_pages() (Waiman Long) [1942149] - mm/memory_hotplug: simplify page offlining (Waiman Long) [1942149] - mm/memory_hotplug: enforce section granularity when onlining/offlining (Waiman Long) [1942149] - mm/memory_hotplug: inline __offline_pages() into offline_pages() (Waiman Long) [1942149] - mm/page_poison.c: replace bool variable with static key (Waiman Long) [1942149] - mm/page_alloc.c: fix early params garbage value accesses (Waiman Long) [1942149] - mm/memory_hotplug: document why shuffle_zone() is relevant (Waiman Long) [1942149] - mm: replace '---help---' in Kconfig files with 'help' (Waiman Long) [1942149] - mm/memory_hotplug: fix a typo in comment "recoreded"->"recorded" (Waiman Long) [1942149] - mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE (Waiman Long) [1942149] - x86/mm/cpa: Flush direct map alias during cpa (Waiman Long) [1942149] - mm/page_alloc: simplify page_is_buddy() for better code readability (Waiman Long) [1942149] - mm/memory.c: add apply_to_existing_page_range() helper (Waiman Long) [1942149] - x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/ (Waiman Long) [1942149] - x86/mm/pat: Rename pat_rbtree.c to pat_interval.c (Waiman Long) [1942149] - mm/memory_hotplug: online_pages cannot be 0 in online_pages() (Waiman Long) [1942149] - mm/memory_hotplug: make sure the pfn is aligned to the order when onlining (Waiman Long) [1942149] - mm/memory_hotplug: simplify online_pages_range() (Waiman Long) [1942149] - mm/memory_hotplug: drop PageReserved() check in online_pages_range() (Waiman Long) [1942149] - mm/memory_hotplug.c: use PFN_UP / PFN_DOWN in walk_system_ram_range() (Waiman Long) [1942149] - mm/page_poison.c: fix a typo in a comment (Waiman Long) [1942149] - mm/slab: Remove store_stackinfo() (Waiman Long) [1942149] - mm/resource: Let walk_system_ram_range() search child resources (Waiman Long) [1942149] - mm/page_alloc.c: use a single function to free page (Waiman Long) [1942149] - mm/page_alloc.c: free order-0 pages through PCP in page_frag_free() (Waiman Long) [1942149] - x86/mm/cpa: Fix set_mce_nospec() (Waiman Long) [1942149] - x86/mm/cpa: Rename @addrinarray to @numpages (Waiman Long) [1942149] - x86/mm/cpa: Better use CLFLUSHOPT (Waiman Long) [1942149] - x86/mm/cpa: Fold cpa_flush_range() and cpa_flush_array() into a single cpa_flush() function (Waiman Long) [1942149] - x86/mm/cpa: Make cpa_data::numpages invariant (Waiman Long) [1942149] - x86/mm/cpa: Optimize cpa_flush_array() TLB invalidation (Waiman Long) [1942149] - x86/mm/cpa: Simplify the code after making cpa->vaddr invariant (Waiman Long) [1942149] - x86/mm/cpa: Make cpa_data::vaddr invariant (Waiman Long) [1942149] - x86/mm/cpa: Add __cpa_addr() helper (Waiman Long) [1942149] - x86/mm/cpa: Add ARRAY and PAGES_ARRAY selftests (Waiman Long) [1942149] - resource/docs: Complete kernel-doc style function documentation (Waiman Long) [1942149] - resource/docs: Fix new kernel-doc warnings (Waiman Long) [1942149] - resource: Clean it up a bit (Waiman Long) [1942149] - mm: clarify CONFIG_PAGE_POISONING and usage (Waiman Long) [1942149] - selftests: kvm: Raise the default timeout to 120 seconds (Emanuele Giuseppe Esposito) [1894828] - KVM: Raise the maximum number of user memslots (Emanuele Giuseppe Esposito) [1894828] - block: recalculate segment count for multi-segment discards correctly (Ming Lei) [1922370] - i40e: Fix VFs not created (Stefan Assmann) [1875338] - vfs: fix page locking deadlocks when deduping files (Gao Xiang) [1916242]- tg3: improve PCI VPD access (Jonathan Toppins) [1921456] - scsi: target: pscsi: Clean up after failure in pscsi_map_sg() (Maurizio Lombardi) [1939458] - scsi: target: pscsi: Avoid OOM in pscsi_map_sg() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix memory leak caused by wrong uio usage (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Move some functions without code change (Maurizio Lombardi) [1939458] - scsi: target: core: Prevent underflow for service actions (Maurizio Lombardi) [1939458] - scsi: target: core: Add cmd length set before cmd complete (Maurizio Lombardi) [1939458] - scsi: target: sbp: Remove unneeded semicolon (Maurizio Lombardi) [1939458] - scsi: target: core: Change ASCQ for residual write (Maurizio Lombardi) [1939458] - scsi: target: core: Signal WRITE residuals (Maurizio Lombardi) [1939458] - scsi: target: core: Set residuals for 4Kn devices (Maurizio Lombardi) [1939458] - scsi: target: core: Remove in_interrupt() check in transport_handle_cdb_direct() (Maurizio Lombardi) [1939458] - scsi: target: core: Replace in_interrupt() usage in target_submit_cmd_map_sgls() (Maurizio Lombardi) [1939458] - scsi: target: alua: Remove in_interrupt() usage in core_alua_check_nonop_delay() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Redo iscsit_check_session_usage_count() return code (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Avoid in_interrupt() usage in iscsit_check_session_usage_count() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Avoid in_interrupt() usage in iscsit_close_session() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Fix typo in comment (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix use-after-free of se_cmd->priv (Maurizio Lombardi) [1939458] - scsi: target: core: Fix fall-through warnings for Clang (Maurizio Lombardi) [1939458] - scsi: tcm_loop: Allow queues, can_queue and cmd_per_lun to be settable (Maurizio Lombardi) [1939458] - scsi: target: Make state_list per CPU (Maurizio Lombardi) [1939458] - scsi: target: Drop sess_cmd_lock from I/O path (Maurizio Lombardi) [1939458] - scsi: target: Remove TARGET_SCF_LOOKUP_LUN_FROM_TAG (Maurizio Lombardi) [1939458] - scsi: target: Fix cmd_count ref leak (Maurizio Lombardi) [1939458] - scsi: target: Fix LUN ref count handling (Maurizio Lombardi) [1939458] - scsi: target: Return COMPARE AND WRITE miscompare offsets (Maurizio Lombardi) [1939458] - scsi: target: Split out COMPARE AND WRITE memcmp into helper (Maurizio Lombardi) [1939458] - scsi: target: Rename cmd.bad_sector to cmd.sense_info (Maurizio Lombardi) [1939458] - scsi: target: Rename struct sense_info to sense_detail (Maurizio Lombardi) [1939458] - scsi: target: tcmu: scatter_/gather_data_area() rework (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Replace zero-length array with flexible-array member (Maurizio Lombardi) [1939458] - scsi: target: rd: Drop double zeroing (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Optimize scatter_data_area() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Optimize queue_cmd_ring() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Join tcmu_cmd_get_data_length() and tcmu_cmd_get_block_cnt() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Add missing newline when printing parameters (Maurizio Lombardi) [1939458] - scsi: target: Remove redundant assignment to variable 'ret' (Maurizio Lombardi) [1939458] - x86/resctrl: Fix AMD L3 QOS CDP enable/disable (Wei Huang) [1868984] - i2c: i801: Add support for Intel Alder Lake PCH-S (David Arcari) [1840242] - esp: delete NETIF_F_SCTP_CRC bit from features for esp offload (Xin Long) [1815560] - net/sched: act_ct: clear post_ct if doing ct_clear (Marcelo Ricardo Leitner) [1941889] - net: Change dev parameter to const in netif_device_present() (Josef Oskera) [1941728] - [x86] x86/mce: Increase maximum number of banks to 64 (Terry Bowman) [1931679]- scsi: megaraid_sas: Fix a bunch of misnamed functions in their headers (Tomas Henzl) [1924687] - scsi: megaraid_sas: Replace sdev_busy with local counter (Tomas Henzl) [1924687] - scsi: megaraid: Fix ifnullfree.cocci warnings (Tomas Henzl) [1924687] - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression (Tomas Henzl) [1924687] - Revert "Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug"" (Tomas Henzl) [1924687] - Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug" (Tomas Henzl) [1924687] - scsi: megaraid_sas: Update function description (Tomas Henzl) [1924687] - scsi: megaraid_sas: Use generic power management (Tomas Henzl) [1924687] - megaraid_sas(treewide): Use fallthrough pseudo-keyword (Tomas Henzl) [1924687] - scsi: megaraid_sas: Drop PCI wakeup calls from .resume (Tomas Henzl) [1924687] - scsi: megaraid_sas: Check user-provided offsets (Tomas Henzl) [1924687] - scsi: mpt3sas: Update driver version to 37.101.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply post array allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply post buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force sense buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force chain buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force PCIe scatterlist allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Replace unnecessary dynamic allocation with a static one (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix some kernel-doc misnaming issues (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix a couple of misdocumented functions/params (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix a bunch of potential naming doc-rot (Tomas Henzl) [1922058] - scsi: mpt3sas: Move a little data from the stack onto the heap (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix misspelling of _base_put_smid_default_atomic() (Tomas Henzl) [1922058] - scsi: mpt3sas: Update driver version to 37.100.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Additional diagnostic buffer query interface (Tomas Henzl) [1922058] - scsi: mpt3sas: Add support for shared host tagset for CPU hotplug (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix ReplyPostFree pool allocation (Tomas Henzl) [1922058] - scsi: mpt3sas: Simplify bool comparison (Tomas Henzl) [1922058] - scsi: mpt3sas: Signedness bug in _base_get_diag_triggers() (Tomas Henzl) [1922058] - scsi: mpt3sas: Update driver version to 36.100.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Handle trigger page after firmware update (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent MPI trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent SCSI sense trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent Event trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent Master trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent trigger pages support (Tomas Henzl) [1922058] - scsi: mpt3sas: Sync time periodically between driver and firmware (Tomas Henzl) [1922058] - scsi: mpt3sas: Increase IOCInit request timeout to 30s (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix ioctl timeout (Tomas Henzl) [1922058] - scsi: mpt3sas: Remove in_interrupt() (Tomas Henzl) [1922058] - scsi: mpt3sas_scsih: Use generic power management (Tomas Henzl) [1922058] - scsi: mpt3sas_scsih: Drop PCI Wakeup calls from .resume (Tomas Henzl) [1922058] - scsi: mpt3sas: mpt3sas_scsih: Fix function documentation formatting (Tomas Henzl) [1922058] - mpt3sas: Use fallthrough pseudo-keyword (Tomas Henzl) [1922058] - net: add inline function skb_csum_is_sctp (Josef Oskera) [1939341] - psample: Fix user API breakage (Ivan Vecera) [1939499] - net: psample: Fix netlink skb length with tunnel info (Ivan Vecera) [1939499] - net: psample: Add tunnel support (Ivan Vecera) [1939499] - net: core: introduce struct netdev_nested_priv for nested interface infrastructure (Ivan Vecera) [1939402] - net: add function dev_fetch_sw_netstats for fetching pcpu_sw_netstats (Josef Oskera) [1935717] - net: core: add devm_netdev_alloc_pcpu_stats (Josef Oskera) [1935717] - net: core: add dev_sw_netstats_tx_add (Josef Oskera) [1935717] - net: netdevice.h: sw_netstats_rx_add helper (Josef Oskera) [1935717] - net: netdevice: Add operation ndo_sk_get_lower_dev (Josef Oskera) [1935709] - genirq: Provide irq_get_effective_affinity() (Josef Oskera) [1935670]- locking/locktorture: Fix incorrect use of ww_acquire_ctx in ww_mutex test (Waiman Long) [1871851] - locking/locktorture: Pass thread id to lock/unlock functions (Waiman Long) [1871851] - locking/ww_mutex: Remove DEFINE_WW_MUTEX() macro (Waiman Long) [1871851] - locking/locktorture: Fix false positive circular locking splat in ww_mutex test (Waiman Long) [1871851] - locking/ww_mutex: Fix acquire/release imbalance in ww_acquire_init()/ww_acquire_fini() (Waiman Long) [1871851] - locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling (Waiman Long) [1871851] - locking: Remove duplicate include of percpu-rwsem.h (Waiman Long) [1871851] - locktorture: Invoke percpu_free_rwsem() to do percpu-rwsem cleanup (Waiman Long) [1871851] - locktorture: Prevent hangs for invalid arguments (Waiman Long) [1871851] - locktorture: Ignore nreaders_stress if no readlock support (Waiman Long) [1871851] - locktorture: Track time of last ->writeunlock() (Waiman Long) [1871851] - locktorture: Make function torture_percpu_rwsem_init() static (Waiman Long) [1871851] - sched,locktorture: Convert to sched_set_fifo() (Waiman Long) [1871851] - locktorture: Use true and false to assign to bool variables (Waiman Long) [1871851] - locktorture: Print ratio of acquisitions, not failures (Waiman Long) [1871851] - locktorture: NULL cxt.lwsa and cxt.lrsa to allow bad-arg detection (Waiman Long) [1871851] - locking/locktorture: Convert to SPDX license identifier (Waiman Long) [1871851] - tty: Fix ->session locking (Chris von Recklinghausen) [1908059] {CVE-2020-29660} - net: skbext: fix secpath use-after-free with ip fragmentation (Sabrina Dubroca) [1901454]- nfs: we don't support removing system.nfs4_acl (Scott Mayhew) [1944659] - redhat/configs: Disable CONFIG_INFINIBAND_HNS* (Kamal Heib) [1941259] - mm: Revert "remove the account_page_dirtied export" (Waiman Long) [1941257] - Revert "[netdrv] net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1940842]- geneve: do not modify the shared tunnel info when PMTU triggers an ICMP reply (Antoine Tenart) [1941753] - vxlan: do not modify the shared tunnel info when PMTU triggers an ICMP reply (Antoine Tenart) [1941753] - net: Add netif_rx_any_context() (Josef Oskera) [1939466] - bitfield.h: add FIELD_MAX() and field_max() (Ivan Vecera) [1939478] - md/raid5: cast chunk_sectors to sector_t value (Nigel Croxon) [1921468] - md: Set prev_flush_start and flush_bio in an atomic way (Nigel Croxon) [1921468] - md/cluster: fix deadlock when node is doing resync job (Nigel Croxon) [1921468] - md/cluster: block reshape with remote resync job (Nigel Croxon) [1921468] - md: use current request time as base for ktime comparisons (Nigel Croxon) [1921468] - md: add comments in md_flush_request() (Nigel Croxon) [1921468] - md: improve variable names in md_flush_request() (Nigel Croxon) [1921468] - md/raid10: initialize r10_bio->read_slot before use. (Nigel Croxon) [1921468] - md: fix a warning caused by a race between concurrent md_ioctl()s (Nigel Croxon) [1921468] - Revert "md: improve variable names in md_flush_request()" (Nigel Croxon) [1921468] - Revert "md: Set prev_flush_start and flush_bio in an atomic way" (Nigel Croxon) [1921468] - KVM: nSVM: fix running nested guests when npt=0 (Emanuele Giuseppe Esposito) [1799073] - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent (Julia Denham) [1908311] {CVE-2020-35508} - Revert "redhat: switch secureboot kernel image signing to release keys" (Bruno Meneguele) - redhat: switch secureboot kernel image signing to release keys (Jan Stancek) - Revert "[md] md/raid5: add a new member of offset into r5dev" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: make async_copy_data() to support different page offset" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid5: add new xor function to support different page offset" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: convert to new xor compution interface" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid6: let syndrome computor support different page offset" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid6: let async recovery function support different page offset" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: let multiple devices of stripe_head share page" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: resize stripe_head when reshape array" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: reallocate page array after setting new stripe_size" (Nigel Croxon) [1936903] - ACPI: PNP: compare the string length in the matching_id() (Mark Langsdorf) [1933702] - ceph: add missing break when parsing "nowsync" mount option (Jeff Layton) [1932753] - get_maintainer.conf: Update with new location of RHMAINTAINERS (Prarit Bhargava) - redhat: make pathspec exclusion compatible with old git versions (Herton R. Krzesinski) - redhat/scripts: Update merge-subtrees.sh with new subtree location (Prarit Bhargava) - tree: Add RHMAINTAINERS soft link in 8.4 (Prarit Bhargava) - tree: remove existing redhat/rhdocs subtree in 8.4 (Prarit Bhargava)- ntp: Use freezable workqueue for RTC synchronization (Phil Auld) [1793880] - ntp: Fix RTC synchronization on 32-bit platforms (Phil Auld) [1793880] - ntp: Make the RTC synchronization more reliable (Phil Auld) [1793880] - PCI: rpadlpar: Fix potential drc_name corruption in store functions (Gustavo Luiz Duarte) [1938116] - selftests: kvm: Add basic Hyper-V clocksources tests (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Don't touch TSC page values when guest opted for re-enlightenment (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Track Hyper-V TSC page status (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Prevent using not-yet-updated TSC page by secondary CPUs (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Limit guest to writing zero to HV_X64_MSR_TSC_EMULATION_STATUS (Vitaly Kuznetsov) [1931782] - drm/i915/guc: Update to use firmware v49.0.1 (Dave Airlie) [1935281] {CVE-2020-12362} - time: Enable __kernel_timespec for 32-bit vdso build (Waiman Long) [1936282] - lib/idr.c: document calling context for IDA APIs mustn't use locks (Chris von Recklinghausen) [1917764] - ida: Free allocated bitmap in error path (Chris von Recklinghausen) [1917764] - radix tree test suite: Fix compilation (Chris von Recklinghausen) [1917764] - vmalloc: convert to XArray (Chris von Recklinghausen) [1917764] - mm: pass addr as unsigned long to vb_free (Chris von Recklinghausen) [1917764] - radix tree: Remove multiorder support (Chris von Recklinghausen) [1917764] - radix tree test: Convert multiorder tests to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Convert item_delete_rcu to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Convert item_kill_tree to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Move item_insert_order (Chris von Recklinghausen) [1917764] - radix tree test suite: Remove multiorder benchmarking (Chris von Recklinghausen) [1917764] - radix tree test suite: Remove __item_insert (Chris von Recklinghausen) [1917764] - radix tree: Remove radix_tree_clear_tags (Chris von Recklinghausen) [1917764] - radix tree: Remove split/join code (Chris von Recklinghausen) [1917764] - radix tree: Remove radix_tree_update_node_t (Chris von Recklinghausen) [1917764] - mm: Convert truncate to XArray (Chris von Recklinghausen) [1917764] - copy rh_kabi.h to tools/testing/radix-tree/linux (Chris von Recklinghausen) [1917764]- tick: Get rid of tick_period (Phil Auld) [1936504] - tick/sched: Release seqcount before invoking calc_load_global() (Phil Auld) [1936504] - tick/sched: Optimize tick_do_update_jiffies64() further (Phil Auld) [1936504] - tick/sched: Reduce seqcount held scope in tick_do_update_jiffies64() (Phil Auld) [1936504] - tick/sched: Use tick_next_period for lockless quick check (Phil Auld) [1936504] - tick: Document protections for tick related data (Phil Auld) [1936504] - tick/broadcast: Serialize access to tick_next_period (Phil Auld) [1936504] - timekeeping: Split jiffies seqlock (Phil Auld) [1936504] - tick/sched: Annotate lockless access to last_jiffies_update (Phil Auld) [1936504] - net, sctp, filter: remap copy_from_user failure error (Hangbin Liu) [1929476] {CVE-2021-20239} - tty: serial_core: Set port active bit in uart_port_activate (Artem Savkov) [1915177] - cgroup: fix psi monitor for root cgroup (Waiman Long) [1936868] - cgroup-v1: add disabled controller check in cgroup1_parse_param() (Waiman Long) [1936868] - cgroup: cgroup.{procs,threads} factor out common parts (Waiman Long) [1936868] - cpuset: fix typos in comments (Waiman Long) [1936868] - kernel: cgroup: Mundane spelling fixes throughout the file (Waiman Long) [1936868] - cgroup/cgroup.c: replace 'of->kn->priv' with of_cft() (Waiman Long) [1936868] - cgroup: Zero sized write should be no-op (Waiman Long) [1936868] - cgroup: remove redundant kernfs_activate in cgroup_setup_root() (Waiman Long) [1936868] - cgroup: Use generic ns_common::count (Waiman Long) [1936868] - ns: Add a common refcount into ns_common (Waiman Long) [1936868] - cgroup: add cpu.stat file to root cgroup (Waiman Long) [1936868] - cgroup: Remove stale comments (Waiman Long) [1936868] - cgroup: Restructure release_agent_path handling (Waiman Long) [1936868] - cgroup: add cgroup_may_write() helper (Waiman Long) [1936868] - cgroup: refactor fork helpers (Waiman Long) [1936868] - cgroup: add cgroup_get_from_file() helper (Waiman Long) [1936868] - cgroup: unify attach permission checking (Waiman Long) [1936868] - cpuset: Make cpuset hotplug synchronous (Waiman Long) [1936868] - cgroup: Clean up css_set task traversal (Waiman Long) [1936868] - cgroup.c: Use built-in RCU list checking (Waiman Long) [1936868] - fork: record start_time late (Waiman Long) [1936868] - sched/deadline: Reduce rq lock contention in dl_add_task_root_domain() (Phil Auld) [1936501] - sched/deadline: Fix sched_dl_global_validate() (Phil Auld) [1936501] - sched/deadline: Optimize sched_dl_global_validate() (Phil Auld) [1936501] - sched/deadline: Fix a typo in a comment (Phil Auld) [1936501] - sched/deadline: Implement fallback mechanism for !fit case (Phil Auld) [1936501] - sched/deadline: Make DL capacity-aware (Phil Auld) [1936501] - sched/deadline: Improve admission control for asymmetric CPU capacities (Phil Auld) [1936501] - sched/deadline: Add dl_bw_capacity() (Phil Auld) [1936501] - sched/deadline: Optimize dl_bw_cpus() (Phil Auld) [1936501] - sched/deadline: Impose global limits on sched_attr::sched_period (Phil Auld) [1936501] - ibmvnic: fix a race between open and reset (Diego Domingos) [1940042] - ibmvnic: Set to CLOSED state even on error (Diego Domingos) [1940042] - ibmvnic: device remove has higher precedence over reset (Diego Domingos) [1940042] - ibmvnic: merge do_change_param_reset into do_reset (Diego Domingos) [1940042] - ibmvfc: disable MQ channelization by default (Gustavo Luiz Duarte) [1939359] - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() (Steve Dickson) [1926945] - scsi: iscsi: Verify lengths on passthrough PDUs (Chris Leech) [1930833] {CVE-2021-27365} - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE (Chris Leech) [1930856] {CVE-2021-27363} - scsi: iscsi: Restrict sessions and handles to admin capabilities (Chris Leech) [1930809] {CVE-2021-27364} - futex: Handle faults correctly for PI futexes (Waiman Long) [1924635] - futex: Simplify fixup_pi_state_owner() (Waiman Long) [1924635] - futex: Use pi_state_update_owner() in put_pi_state() (Waiman Long) [1924635] - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() (Waiman Long) [1924635] - futex: Provide and use pi_state_update_owner() (Waiman Long) [1924635] - futex: Replace pointless printk in fixup_owner() (Waiman Long) [1924635] - futex: Ensure the correct return value from futex_lock_pi() (Waiman Long) [1924635] - futex: Don't enable IRQs unconditionally in put_pi_state() (Waiman Long) [1924635] - futex: Fix incorrect should_fail_futex() handling (Waiman Long) [1924635] - futex: Consistently use fshared as boolean (Waiman Long) [1924635] - futex: Remove needless goto's (Waiman Long) [1924635] - futex: Remove put_futex_key() (Waiman Long) [1924635] - NFS: Correct size calculation for create reply length (Benjamin Coddington) [1934903] - SUNRPC: Set memalloc_nofs_save() for sync tasks (Benjamin Coddington) [1934098] - net/mlx5: CT: Add support for matching on ct_state reply flag (Alaa Hleihel) [1919651] - net/mlx5e: CT: manage the lifetime of the ct entry object (Alaa Hleihel) [1919651] - net/mlx5e: CT: Use per flow counter when CT flow accounting is enabled (Alaa Hleihel) [1919651] - net/mlx5e: Fix a use after free on error in mlx5_tc_ct_shared_counter_get() (Alaa Hleihel) [1919651] - net/mlx5e: CT: Use the same counter for both directions (Alaa Hleihel) [1919651] - ethtool: fix the check logic of at least one channel for RX/TX (Ivan Vecera) [1907406]- [scsi] scsi: qedi: Correct max length of CHAP secret (Nilesh Javali) [1909180] - redhat: use tags from git notes for zstream to generate changelog (Frantisek Hrbata) - redhat: add CI file for kernel-private (Bruno Meneguele) - CI: Drop unused variable (Bruno Meneguele) - CI: Enable RT verification (Bruno Meneguele) - KVM: SVM: Clear the CR4 register on reset (Vitaly Kuznetsov) [1920788] - net: flow_offload: Add original direction flag to ct_metadata (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower: Add match on the ct_state reply flag (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower add CT_FLAGS_INVALID flag support (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower: Reject invalid ct_state flags rules (Marcelo Ricardo Leitner) [1921946] - netlink: add mask validation (Marcelo Ricardo Leitner) [1921946] - netlink: create helpers for checking type is an int (Marcelo Ricardo Leitner) [1921946] - netlink: policy: correct validation type check (Marcelo Ricardo Leitner) [1921946] - netlink: make NLA_BINARY validation more flexible (Marcelo Ricardo Leitner) [1921946]- md: Set prev_flush_start and flush_bio in an atomic way (Xiao Ni) [1901598] - md: improve variable names in md_flush_request() (Xiao Ni) [1901598] - hpsa: fix regression issue for old controllers (Joseph Szczypek) [1925711] - scsi: hpsa: Correct dev cmds outstanding for retried cmds (Joseph Szczypek) [1925711] - vt: Disable KD_FONT_OP_COPY (Dave Airlie) [1903937] {CVE-2020-28974} - drm/i915/rkl: Remove require_force_probe protection (Lyude Paul) [1937558] - drm/i915/tgl/psr: Disable PSR on Tigerlake for now (Lyude Paul) [1924702] - dm raid: fix discard limits for raid0 and raid10 (Mike Snitzer) [1934274] - dm: fix __send_changing_extent_only to avoid duplicate dm_target_offset() (Mike Snitzer) [1934274] - mm/hugetlb.c: fix unnecessary address expansion of pmd sharing (Waiman Long) [1934212] - mm: memcontrol: fix slub memory accounting (Waiman Long) [1934212] - mm: memcontrol: fix swap undercounting in cgroup2 (Waiman Long) [1934212] - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving (Waiman Long) [1934212] - mm, slub: better heuristic for number of cpus when calculating slab order (Waiman Long) [1934212] - Revert "mm: memcontrol: avoid workload stalls when lowering memory.high" (Waiman Long) [1934212] - selftests/bpf: Set gopt opt_class to 0 if get tunnel opt failed (Hangbin Liu) [1931732] - selftests/bpf: No need to drop the packet when there is no geneve opt (Hangbin Liu) [1931732]- drm/i915/gen11+: Only load DRAM information from pcode (Lyude Paul) [1934537] - drm/i915/dg1: Wait for pcode/uncore handshake at startup (Lyude Paul) [1934537] - powercap/intel_rapl: add support for TigerLake Desktop (David Arcari) [1932457] - powerpc/perf: Fix handling of privilege level checks in perf interrupt context (Gustavo Luiz Duarte) [1918411] - NFSv4.2: fix error return on memory allocation failure (Scott Mayhew) [1917689] - NFSv4.2: improve page handling for GETXATTR (Scott Mayhew) [1917689] - NFSv4.2: Fix up the get/listxattr calls to rpc_prepare_reply_pages() (Scott Mayhew) [1917689] - NFS: Fix rpcrdma_inline_fixup() crash with new LISTXATTRS operation (Scott Mayhew) [1917689] - SUNRPC: Fix up xdr_set_page() (Benjamin Coddington) [1917689] - NFSv4: Fix open coded xdr_stream_remaining() (Benjamin Coddington) [1917689] - SUNRPC: Clean up the handling of page padding in rpc_prepare_reply_pages() (Benjamin Coddington) [1917689] - SUNRPC: Fix up xdr_read_pages() to take arbitrary object lengths (Benjamin Coddington) [1917689] - SUNRPC: Clean up helpers xdr_set_iov() and xdr_set_page_base() (Benjamin Coddington) [1917689] - SUNRPC: Split out a function for setting current page (Benjamin Coddington) [1917689] - SUNRPC: Fix up typo in xdr_init_decode() (Benjamin Coddington) [1917689] - NFSv4: Fix the alignment of page data in the getdeviceinfo reply (Benjamin Coddington) [1917689] - net: fix pos incrementment in ipv6_route_seq_next (Lorenzo Bianconi) [1926608] - ipv6_route_seq_next should increase position index (Lorenzo Bianconi) [1926608] - bpf: Clear subreg_def for global function return values (Yauheni Kaliuta) [1934062] - igc: Fix returning wrong statistics (Corinna Vinschen) [1910873]- KVM: nSVM: prepare guest save area while is_guest_mode is true (Vitaly Kuznetsov) [1860223] - redhat: add CI file for kernel-private (Bruno Meneguele) - CI: Drop unused variable (Veronika Kabatova) - CI: Enable RT verification (Veronika Kabatova) - redhat: use tags from git notes for zstream to generate changelog (Frantisek Hrbata) - redhat: open the RHEL-8.5 development (Bruno Meneguele) [1930504]- KVM: SVM: Make symbol 'svm_gp_erratum_intercept' static (Paolo Bonzini) [1769283] - KVM: SVM: Fix #GP handling for doubly-nested virtualization (Paolo Bonzini) [1769283] - KVM: SVM: Add support for SVM instruction address check change (Paolo Bonzini) [1769283] - KVM: SVM: Add emulation support for #GP triggered by SVM instructions (Paolo Bonzini) [1769283] - KVM: x86: Factor out x86 instruction emulation with decoding (Paolo Bonzini) [1769283] - gfs2: In gfs2_ail1_start_one unplug the IO when needed (Bob Peterson) [1648446] - gfs2: Free rd_bits later in gfs2_clear-rgrpd to fix use-after-free (Bob Peterson) [1648446] - gfs2: Only access gl_delete for iopen glocks (Bob Peterson) [1648446] - gfs2: Fix case in which ail writes are done to jdata holes (Bob Peterson) [1648446] - gfs2: simplify gfs2_block_map (Bob Peterson) [1648446] - gfs2: Only set PageChecked if we have a transaction (Bob Peterson) [1648446] - gfs2: don't lock sd_ail_lock in gfs2_releasepage (Bob Peterson) [1648446] - gfs2: make gfs2_ail1_empty_one return the count of active items (Bob Peterson) [1648446] - gfs2: Wipe jdata and ail1 in gfs2_journal_wipe, formerly gfs2_meta_wipe (Bob Peterson) [1648446] - gfs2: enhance log_blocks trace point to show log blocks free (Bob Peterson) [1648446] - gfs2: rename gfs2_write_full_page to gfs2_write_jdata_page, remove parm (Bob Peterson) [1648446] - PM: hibernate: flush swap writer after marking (Lenny Szubowicz) [1898677] - cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown (Lenny Szubowicz) [1898677] - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation (Lenny Szubowicz) [1898677] - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation (Jiri Benc) [1882215] - ice, xsk: clear the status bits for the next_to_use descriptor (Jiri Benc) [1906820] - net/mlx4_en: Handle TX error CQE (Alaa Hleihel) [1925690] - net/mlx4_en: Avoid scheduling restart task if it is already running (Alaa Hleihel) [1925690] - blk-mq: test QUEUE_FLAG_HCTX_ACTIVE for sbitmap_shared in hctx_may_queue (Ming Lei) [1922013] - blk-mq: Improve performance of non-mq IO schedulers with multiple HW queues (Ming Lei) [1922013] - Revert "blk-mq, elevator: Count requests per hctx to improve performance" (Ming Lei) [1922013] - bpftool: Disable CAP_BPF check for feature command (Jiri Olsa) [1921542] - RDMA/siw: Fix calculation of tx_valid_cpus size (Kamal Heib) [1919502] - net/mlx5e: Disable performance optimization for IPv4/IPv6 ethertype (Alaa Hleihel) [1928671 1919807] - IB/mlx5: Return appropriate error code instead of ENOMEM (Alaa Hleihel) [1928671] - net/mlx5: Disable devlink reload for lag devices (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disable devlink reload for multi port slave device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disallow RoCE on lag device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disallow RoCE on multi port slave device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Fix health error state handling (Alaa Hleihel) [1928671] - net/mlx5e: Change interrupt moderation channel params also when channels are closed (Alaa Hleihel) [1928671] - net/mlx5e: Don't change interrupt moderation params when DIM is enabled (Alaa Hleihel) [1928671] - net/mlx5e: E-switch, Fix rate calculation for overflow (Alaa Hleihel) [1928671] - net/mlx5e: Release skb in case of failure in tc update skb (Alaa Hleihel) [1928671 1929119] - net/mlx5e: Check tunnel offload is required before setting SWP (Alaa Hleihel) [1928671 1925439] - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context (Alaa Hleihel) [1928671 1928706] - net/mlx5e: Fix CQ params of ICOSQ and async ICOSQ (Alaa Hleihel) [1928671 1928706] - net/mlx5e: Replace synchronize_rcu with synchronize_net (Alaa Hleihel) [1928671 1913616] - net/mlx5e: Enable XDP for Connect-X IPsec capable devices (Alaa Hleihel) [1928671 1856795] - net/mlx5e: Enable striding RQ for Connect-X IPsec capable devices (Alaa Hleihel) [1928671 1926120] - fix regression in "epoll: Keep a reference on files added to the check list" (Carlos Maiolino) [1920776] {CVE-2020-0466} - do_epoll_ctl(): clean the failure exits up a bit (Carlos Maiolino) [1920776] {CVE-2020-0466} - epoll: Keep a reference on files added to the check list (Carlos Maiolino) [1920776] {CVE-2020-0466}- perf/x86/intel/uncore: With > 8 nodes, get pci bus die id from NUMA info (Prarit Bhargava) [1766743] - perf/x86/intel/uncore: Store the logical die id instead of the physical die id. (Prarit Bhargava) [1766743] - mm: fix page reference leak in soft_offline_page() (Aristeu Rozanski) [1768372] - mm,hwpoison: try to narrow window race for free pages (Aristeu Rozanski) [1768372] - mm,hwpoison: double-check page count in __get_any_page() (Aristeu Rozanski) [1768372] - mm,hwpoison: introduce MF_MSG_UNSPLIT_THP (Aristeu Rozanski) [1768372] - mm,hwpoison: return 0 if the page is already poisoned in soft-offline (Aristeu Rozanski) [1768372] - mm,hwpoison: refactor soft_offline_huge_page and __soft_offline_page (Aristeu Rozanski) [1768372] - mm,hwpoison: rework soft offline for in-use pages (Aristeu Rozanski) [1768372] - mm,hwpoison: rework soft offline for free pages (Aristeu Rozanski) [1768372] - mm,hwpoison: unify THP handling for hard and soft offline (Aristeu Rozanski) [1768372] - mm,hwpoison: kill put_hwpoison_page (Aristeu Rozanski) [1768372] - mm,hwpoison: refactor madvise_inject_error (Aristeu Rozanski) [1768372] - mm,hwpoison: unexport get_hwpoison_page and make it static (Aristeu Rozanski) [1768372] - mm,hwpoison-inject: don't pin for hwpoison_filter (Aristeu Rozanski) [1768372] - mm, hwpoison: remove recalculating hpage (Aristeu Rozanski) [1768372] - mm,hwpoison: cleanup unused PageHuge() check (Aristeu Rozanski) [1768372] - mm/madvise.c: replace with page_size() in madvise_inject_error() (Aristeu Rozanski) [1768372] - mm, soft-offline: convert parameter to pfn (Aristeu Rozanski) [1768372] - tick/nohz: Revert "Narrow down noise while setting current task's tick dependency" (Waiman Long) [1931004] - kvm: Add kvm_stat.service file and kvm_stat logrotate config to the tools (Thomas Huth) [1919930] - igc: fix link speed advertising (Corinna Vinschen) [1769701] - [crypto] crypto: qat - add capability detection logic in qat_4xxx (Vladis Dronov) [1833004] - [crypto] crypto: qat - add AES-XTS support for QAT GEN4 devices (Vladis Dronov) [1833004] - [crypto] crypto: qat - add AES-CTR support for QAT GEN4 devices (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix excluded_middle.cocci warnings (Vladis Dronov) [1833004] - [crypto] crypto: qat - add qat_4xxx driver (Vladis Dronov) [1833004] - [crypto] crypto: qat - add hook to initialize vector routing table (Vladis Dronov) [1833004] - [crypto] crypto: qat - target fw images to specific AEs (Vladis Dronov) [1833004] - [crypto] crypto: qat - add gen4 firmware loader (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for broadcasting mode (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for shared ustore (Vladis Dronov) [1833004] - [crypto] crypto: qat - allow to target specific AEs (Vladis Dronov) [1833004] - [crypto] crypto: qat - add FCU CSRs to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add CSS3K support (Vladis Dronov) [1833004] - [crypto] crypto: qat - use ae_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - add check for null pointer (Vladis Dronov) [1833004] - [crypto] crypto: qat - add misc control CSR to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add wake up event to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add clock enable CSR to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add reset CSR and mask to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add local memory size to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for lm2 and lm3 (Vladis Dronov) [1833004] - [crypto] crypto: qat - add next neighbor to chip_info (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace check based on DID (Vladis Dronov) [1833004] - [crypto] crypto: qat - introduce chip info structure (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor long expressions (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_uclo_set_ae_mode() (Vladis Dronov) [1833004] - [crypto] crypto: qat - move defines to header files (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove global CSRs helpers (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor AE start (Vladis Dronov) [1833004] - [crypto] crypto: qat - change micro word data mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - change type for ctx_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for relative FW ucode loading (Vladis Dronov) [1833004] - [crypto] crypto: qat - rename qat_uclo_del_uof_obj() (Vladis Dronov) [1833004] - [crypto] crypto: qat - introduce additional parenthesis (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unnecessary parenthesis (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix error message (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix CSR access (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() (Vladis Dronov) [1833004] - [crypto] crypto: qat - support for mof format in fw loader (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace pci with PCI in comments (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove cast for mailbox CSR (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unneeded semicolon (Vladis Dronov) [1833004] - [crypto] crypto: qat - extend ae_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - allow for instances in different banks (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_crypto_dev_config() (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_crypto_create_instances() (Vladis Dronov) [1833004] - [crypto] crypto: qat - change return value in adf_cfg_key_val_get() (Vladis Dronov) [1833004] - [crypto] crypto: qat - change return value in adf_cfg_add_key_value_param() (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unnecessary void* casts (Vladis Dronov) [1833004] - [crypto] crypto: qat - call functions in adf_sriov if available (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove hardcoded bank irq clear flag mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract writes to arbiter enable (Vladis Dronov) [1833004] - [crypto] crypto: qat - use BIT_ULL() - 1 pattern for masks (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace constant masks with GENMASK (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract build ring base (Vladis Dronov) [1833004] - [crypto] crypto: qat - enable ring after pair is programmed (Vladis Dronov) [1833004] - [crypto] crypto: qat - register crypto instances based on capability (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for capability detection (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract arbiter access (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unused macros in arbiter module (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove writes into WQCFG (Vladis Dronov) [1833004] - [crypto] crypto: qat - update constants table (Vladis Dronov) [1833004] - [crypto] crypto: qat - use admin mask to send fw constants (Vladis Dronov) [1833004] - [crypto] crypto: qat - change admin sequence (Vladis Dronov) [1833004] - [crypto] crypto: qat - rename ME in AE (Vladis Dronov) [1833004] - [crypto] crypto: qat - add packed to init admin structures (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract admin interface (Vladis Dronov) [1833004] - [crypto] crypto: qat - relocate GEN2 CSR access code (Vladis Dronov) [1833004] - [crypto] crypto: qat - split transport CSR access logic (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix configuration of iov threads (Vladis Dronov) [1833004] - [crypto] crypto: qat - num_rings_per_bank is device dependent (Vladis Dronov) [1833004] - [crypto] crypto: qat - mask device capabilities with soft straps (Vladis Dronov) [1833004] - [crypto] crypto: qat - update IV in software (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unused function (Vladis Dronov) [1833004]- mptcp: send ack for every add_addr (Davide Caratti) [1929280] - Revert "[net] tcp: change pingpong threshold to 3" (Davide Caratti) [1929280] - powerpc/pseries: Don't enforce MSI affinity with kdump (Greg Kurz) [1919427] - rtc: disallow update interrupts when time is invalid (Waiman Long) [1918288] - rtc: disable uie before setting time and enable after (Waiman Long) [1918288] - rtc: don't reference bogus function pointer in kdoc (Waiman Long) [1918288] - KVM: x86/mmu: Expand collapsible SPTE zap for TDP MMU to ZONE_DEVICE and HugeTLB pages (Paolo Bonzini) [1897366] - KVM: x86/mmu: Allow parallel page faults for the TDP MMU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Mark SPTEs in disconnected pages as removed (Paolo Bonzini) [1897366] - KVM: x86/mmu: Flush TLBs after zap in TDP MMU PF handler (Paolo Bonzini) [1897366] - KVM: x86/mmu: Use atomic ops to set SPTEs in TDP MMU map (Paolo Bonzini) [1897366] - KVM: x86/mmu: Factor out functions to add/remove TDP MMU pages (Paolo Bonzini) [1897366] - i915: kvmgt: the KVM mmu_lock is now an rwlock (Paolo Bonzini) [1897366] - KVM: x86/mmu: Use an rwlock for the x86 MMU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Protect TDP MMU page table memory with RCU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Clear dirtied pages mask bit before early break (Paolo Bonzini) [1897366] - KVM: x86/mmu: Skip no-op changes in TDP MMU functions (Paolo Bonzini) [1897366] - KVM: x86/mmu: Yield in TDU MMU iter even if no SPTES changed (Paolo Bonzini) [1897366] - KVM: x86/mmu: Ensure forward progress when yielding in TDP MMU iter (Paolo Bonzini) [1897366] - KVM: x86/mmu: Rename goal_gfn to next_last_level_gfn (Paolo Bonzini) [1897366] - KVM: x86/mmu: Merge flush and non-flush tdp_mmu_iter_cond_resched (Paolo Bonzini) [1897366] - KVM: x86/mmu: Fix braces in kvm_recover_nx_lpages (Paolo Bonzini) [1897366] - KVM: x86/mmu: Factor out handling of removed page tables (Paolo Bonzini) [1897366] - KVM: x86/mmu: Don't redundantly clear TDP MMU pt memory (Paolo Bonzini) [1897366] - KVM: x86/mmu: Add lockdep when setting a TDP MMU SPTE (Paolo Bonzini) [1897366] - KVM: x86/mmu: Add comment on __tdp_mmu_set_spte (Paolo Bonzini) [1897366] - KVM: x86/mmu: change TDP MMU yield function returns to match cond_resched (Paolo Bonzini) [1897366] - locking/arch: Move qrwlock.h include after qspinlock.h (Paolo Bonzini) [1897366] - sched: Add cond_resched_rwlock (Paolo Bonzini) [1897366] - sched: Add needbreak for rwlocks (Paolo Bonzini) [1897366] - locking/rwlocks: Add contention detection for rwlocks (Paolo Bonzini) [1897366] - RDMA/srp: Fix support for unpopulated and unbalanced NUMA nodes (Kamal Heib) [1919395] - net/vmw_vsock: fix NULL pointer dereference (Jon Maloy) [1925600] {CVE-2021-26708} - net/vmw_vsock: improve locking in vsock_connect_timeout() (Jon Maloy) [1925600] {CVE-2021-26708} - vsock: fix locking in vsock_shutdown() (Jon Maloy) [1925600] {CVE-2021-26708} - vsock: fix the race conditions in multi-transport support (Jon Maloy) [1925600] {CVE-2021-26708} - ahci: Add missing Intel Emmitsburg PCH RAID PCI IDs (David Arcari) [1928789] - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off (Paolo Bonzini) [1912448] - [sound] ALSA: hda/via: Fix runtime PM for Clevo W35xSS (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add mute LED quirk for more HP laptops (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Modify Dell platform name (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 (Jaroslav Kysela) [1916102] - [sound] ALSA: ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Apply jack fixup for Quanta NL3 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add quirk for MSI-GP73 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Supported Dell fixed type headset (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: Fix incorrect mutex unlock in silent_stream_disable() (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: packet buffer index must be set before reading value (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: always print pin NIDs as hexadecimal (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: fix silent stream for first playback to DP (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/conexant: add a new hda codec CX11970 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: Fix regressions on clear and reconfig sysfs (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/proc - print DP-MST connections (Jaroslav Kysela) [1916102] - [sound] ALSA: hda - Fix the return value if cb func is already registered (Jaroslav Kysela) [1916102] - [sound] ALSA: mixart: Fix mutex deadlock (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add new codec supported for ALC897 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fixed Dell AIO wrong sound tone (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - HP Headset Mic can't detect after boot (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported mute Led for HP (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220) (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headphone for ASUS TM420 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fixed HP headset Mic can't be detected (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/generic: Add option to enforce preferred_dacs pairs (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link() (Jaroslav Kysela) [1916102] - [sound] ALSA: seq: oss: Avoid mutex lock for a long-time ioctl (Jaroslav Kysela) [1916102] - [fs] gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end (Andreas Grunbacher) [1926852] - [net] netfilter: nf_tables: coalesce multiple notifications into one skbuff (Phil Sutter) [1855207] - [drm] drm/i915/rkl: new rkl ddc map for different PCH (Lyude Paul) [1910761] - [drm] drm/nouveau: fix dma syncing warning with debugging on (Lyude Paul) [1915548] - [drm] drm/i915: Update TGL and RKL HuC firmware versions (Lyude Paul) [1924209] - [drm] drm/i915/tgl, rkl: Make Wa_1606700617/22010271021 permanent (Lyude Paul) [1924209] - [drm] drm/i915: Update gen12 forcewake table (Lyude Paul) [1924209] - [drm] drm/i915: Rename FORCEWAKE_BLITTER to FORCEWAKE_GT (Lyude Paul) [1924209] - [drm] drm/i915/display/fbc: Implement WA 22010751166 (Lyude Paul) [1924209] - [drm] drm/i915: Tweaked Wa_14010685332 for PCHs used on gen11 platforms (Lyude Paul) [1924209] - [drm] drm/i915: Reorder hpd init vs. display resume (Lyude Paul) [1921868] - [drm] drm/i915/dp: Don't use DPCD backlights that need PWM enable/disable (Lyude Paul) [1885406] - [drm] drm/dp: Revert "drm/dp: Introduce EDID-based quirks" (Lyude Paul) [1885406] - [drm] drm/i915/dp: Allow forcing specific interfaces through enable_dpcd_backlight (Lyude Paul) [1885406] - [drm] drm/i915/dp: Enable Intel's HDR backlight interface (only SDR for now) (Lyude Paul) [1885406] - [drm] drm/i915: Keep track of pwm-related backlight hooks separately (Lyude Paul) [1885406] - [drm] drm/i915: Pass port to intel_panel_bl_funcs.get() (Lyude Paul) [1885406] - [drm] drm/i915/dp: Add register definitions for Intel HDR backlight interface (Lyude Paul) [1885406] - [drm] drm/i915/dp: Rename eDP VESA backlight interface functions (Lyude Paul) [1885406] - [drm] drm/i915: Pass down brightness values to enable/disable backlight callbacks (Lyude Paul) [1885406] - [drm] drm/i915: Rename pwm_* backlight callbacks to ext_pwm_* (Lyude Paul) [1885406] - [drm] drm/i915/dp: Program source OUI on eDP panels (Lyude Paul) [1885406] - [drm] drm/i915: refactor panel backlight control functions. (v2) (Lyude Paul) [1885406] - [drm] drm/i915/backlight: fix CPU mode backlight takeover on LPT (Lyude Paul) [1885406] - [drm] drm/i915/dpcd_bl: uncheck PWM_PIN_CAP when detect eDP backlight capabilities (Lyude Paul) [1885406] - [drm] drm/i915: panel: Add get_vbt_pwm_freq() helper (Lyude Paul) [1885406] - [drm] drm/i915/dp: Tweak initial dpcd backlight.enabled value (Lyude Paul) [1885406] - [drm] kms: handle mDP connectors (Lyude Paul) [1876992] - [drm] drm/i915/tgl: Fix Combo PHY DPLL fractional divider for 38.4MHz ref clock (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add new cdclk table (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Handle HTI (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add DPLL4 support (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add initial workarounds (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Handle new DPCLKA_CFGCR0 layout (Lyude Paul) [1876992] - [drm] drm/i915: Update TGL and RKL DMC firmware versions (Lyude Paul) [1876992] - [drm] drm/i915/gt: Program mocs:63 for cache eviction on gen9 (Lyude Paul) [1876992] - [drm] drm/i915/gt: Limit frequency drop to RPe on parking (Lyude Paul) [1876992] - [drm] drm/i915/gt: Retain default context state across shrinking (Lyude Paul) [1876992] - [drm] drm/amdgpu/vcn3.0: remove old DPG workaround (Lyude Paul) [1876992] - [drm] drm/amdgpu/vcn3.0: stall DPG when WPTR/RPTR reset (Lyude Paul) [1876992] - [drm] drm/i915/gt: Fixup tgl mocs for PTE tracking (Lyude Paul) [1876992] - [drm] drm/amdgpu: add rlc iram and dram firmware support (Lyude Paul) [1876992] - [drm] drm/nouveau: fix relocations applying logic and a double-free (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid HDCP initialization in devices without output (Lyude Paul) [1876992] - [drm] drm/amd/amdgpu: fix null pointer in runtime pm (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix a page fault (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix SI UVD firmware validate resume fail (Lyude Paul) [1876992] - [drm] drm/i915/tgl: Fix Media power gate sequence (Lyude Paul) [1876992] - [drm] drm/i915: Handle max_bpc==16 (Lyude Paul) [1876992] - [drm] drm/amd/display: Add missing pflip irq for dcn2.0 (Lyude Paul) [1876992] - [drm] drm/gma500: Fix out-of-bounds access to struct drm_device.vblank (Lyude Paul) [1876992] - [drm] drm/i915: Correctly set SFC capability for video engines (Lyude Paul) [1876992] - [drm] drm/amd/display: Add missing pflip irq (Lyude Paul) [1876992] - [drm] drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running (Lyude Paul) [1876992] - [drm] drm/amd/pm: perform SMC reset on suspend/hibernation (Lyude Paul) [1876992] - [drm] drm/amd/pm: correct the baco reset sequence for CI ASICs (Lyude Paul) [1876992] - [drm] drm/amdgpu: perform srbm soft reset always on SDMA resume (Lyude Paul) [1876992] - [drm] drm/i915/gem: Flush coherency domains on first set-domain-ioctl (Lyude Paul) [1876992] - [drm] drm/i915: Hold onto an explicit ref to i915_vma_work.pinned (Lyude Paul) [1876992] - [drm] drm/i915/gt: Use the local HWSP offset during submission (Lyude Paul) [1876992] - [drm] drm/i915: Fix encoder lookup during PSR atomic check (Lyude Paul) [1876992] - [drm] drm/nouveau/gem: fix "refcount_t: underflow; use-after-free" (Lyude Paul) [1876992] - [drm] drm/nouveau/nouveau: fix the start/end range for migration (Lyude Paul) [1876992] - [drm] drm/amd/display: adding ddc_gpio_vga_reg_list to ddc reg def'ns (Lyude Paul) [1876992] - [drm] drm/amd/display: Fixed panic during seamless boot (Lyude Paul) [1876992] - [drm] drm/amdgpu: add DID for navi10 blockchain SKU (Lyude Paul) [1876992] - [drm] drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3) (Lyude Paul) [1876992] - [drm] drm/amdgpu: resolved ASD loading issue on sienna (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/nouveau/device: fix changing endianess code to work on older GPUs (Lyude Paul) [1876992] - [drm] drm/nouveau/kms/nv50-: Program notifier offset before requesting disp caps (Lyude Paul) [1876992] - [drm] drm/i915: Restore ILK-M RPS support (Lyude Paul) [1876992] - [drm] drm/i915: Reject 90/270 degree rotated initial fbs (Lyude Paul) [1876992] - [drm] drm/i915: Use the active reference on the vma while capturing (Lyude Paul) [1876992] - [drm] drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup during fbdev init (Lyude Paul) [1876992] - [drm] drm/i915: Exclude low pages (128KiB) of stolen from use (Lyude Paul) [1876992] - [drm] drm/i915: Drop runtime-pm assert from vgpu io accessors (Lyude Paul) [1876992] - [drm] drm/i915/gt: Delay execlist processing for tgl (Lyude Paul) [1876992] - [drm] drm/i915/gt: Undo forced context restores after trivial preemptions (Lyude Paul) [1876992] - [drm] drm/i915/gt: Initialize reserved and unspecified MOCS indices (Lyude Paul) [1876992] - [drm] drm/i915: Fix TGL DKL PHY DP vswing handling (Lyude Paul) [1876992] - [drm] drm/i915: Avoid mixing integer types during batch copies (Lyude Paul) [1876992] - [drm] drm/i915: Cancel outstanding work after disabling heartbeats on an engine (Lyude Paul) [1876992] - [drm] drm/i915: Break up error capture compression loops with cond_resched() (Lyude Paul) [1876992] - [drm] drm/i915/gt: Always send a pulse down the engine after disabling heartbeat (Lyude Paul) [1876992] - [drm] drm/i915/gem: Always test execution status on closing the context (Lyude Paul) [1876992] - [drm] drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not supported (Lyude Paul) [1876992] - [drm] drm/i915/gem: Avoid implicit vmap for highmem on x86-32 (Lyude Paul) [1876992] - [drm] drm/amdgpu: correct the cu and rb info for sienna cichlid (Lyude Paul) [1876992] - [drm] drm/amd/psp: Fix sysfs: cannot create duplicate filename (Lyude Paul) [1876992] - [drm] drm/amd/swsmu: add missing feature map for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amd/pm: fix pp_dpm_fclk (Lyude Paul) [1876992] - [drm] drm/amd/pm: increase mclk switch threshold to 200 us (Lyude Paul) [1876992] - [drm] drm/amdgpu/swsmu: drop smu i2c bus on navi1x (Lyude Paul) [1876992] - [drm] drm/ttm: fix eviction valuable range check (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix kernel panic by dal_gpio_open() error (Lyude Paul) [1876992] - [drm] drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally (Lyude Paul) [1876992] - [drm] drm/amdgpu: increase the reserved VM size to 2MB (Lyude Paul) [1876992] - [drm] drm/amdgpu: add function to program pbb mode for sienna cichlid (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid MST manager resource leak (Lyude Paul) [1876992] - [drm] drm/amdkfd: Use same SQ prefetch setting as amdgpu (Lyude Paul) [1876992] - [drm] drm/amdgpu: correct the gpu reset handling for job != NULL case (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amdgpu: vcn and jpeg ring synchronization (Lyude Paul) [1876992] - [drm] drm/amd/display: Increase timeout for DP Disable (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix incorrect backlight register offset for DCN (Lyude Paul) [1876992] - [drm] drm/amdgpu: don't map BO in reserved region (Lyude Paul) [1876992] - [drm] drm/shme-helpers: Fix dma_buf_mmap forwarding bug (Lyude Paul) [1876992] - [drm] drm/i915: Force VT'd workarounds when running as a guest OS (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid set zero in the requested clk (Lyude Paul) [1876992] - [drm] drm/amd/display: HDMI remote sink need mode validation for Linux (Lyude Paul) [1876992] - [drm] drm/amdgpu: No sysfs, not an error condition (Lyude Paul) [1876992] - [drm] drm/amd/display: Check clock table return (Lyude Paul) [1876992] - [drm] drm/bridge/synopsys: dsi: add support for non-continuous HS clock (Lyude Paul) [1876992] - [drm] drm/vkms: avoid warning in vkms_get_vblank_timestamp (Lyude Paul) [1876992] - [drm] drm/bridge_connector: Set default status connected for eDP connectors (Lyude Paul) [1876992] - [drm] drm/scheduler: Scheduler priority fixes (v2) (Lyude Paul) [1876992] - [drm] drm/amdgpu: restore ras flags when user resets eeprom(v2) (Lyude Paul) [1876992] - [drm] drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex (Lyude Paul) [1876992] - [drm] drm/amd/display: Disconnect pipe separetely when disable pipe split (Lyude Paul) [1876992] - [drm] drm/hisilicon: Code refactoring for hibmc_drv_de (Lyude Paul) [1876992] - [drm] drm/amd/display: Screen corruption on dual displays (DP+USB-C) (Lyude Paul) [1876992] - [drm] drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create (Lyude Paul) [1876992] - [drm] drm/amdgpu: Fix invalid number of character '{' in amdgpu_acpi_init (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix max_entries calculation v4 (Lyude Paul) [1876992] - [drm] drm/crc-debugfs: Fix memleak in crc_control_write (Lyude Paul) [1876992] - [drm] drm/gma500: fix error check (Lyude Paul) [1876992] - [drm] drm/amd/display: fix potential integer overflow when shifting 32 bit variable bl_pwm (Lyude Paul) [1876992] - [drm] drm/vkms: add missing platform_device_unregister() in vkms_init() (Lyude Paul) [1876992] - [drm] drm/vgem: add missing platform_device_unregister() in vgem_init() (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix wrong return value in dm_update_plane_state() (Lyude Paul) [1876992] - [drm] drm/vkms: fix xrgb on compute crc (Lyude Paul) [1876992] - [iommu] iommu/amd: Set iommu->int_enabled consistently when interrupts are set up (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix IOMMU interrupt generation in X2APIC mode (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix union of bitfields in intcapxt support (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix kerneldoc comments (Vitaly Kuznetsov) [1915038] - [x86] x86/irq: Prepare consolidation of irq_alloc_info (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Use msi_msg shadow structs (Vitaly Kuznetsov) [1915038] - [iommu] x86_irq_Rename_X86_IRQ_ALLOC_TYPE_MSI_to_reflect_PCI_dependency (Vitaly Kuznetsov) [1915038] - [netdrv] Revert "e1000e: disable s0ix entry and exit flows for ME systems" (Ken Cox) [1872412] - [netdrv] e1000e: fix S0ix flow to allow S0i3.2 subset entry (Ken Cox) [1872412]- dm table: fix DAX iterate_devices based device capability checks (Mike Snitzer) [1905679] - dm table: fix various whitespace issues with recent DAX code (Mike Snitzer) [1905679] - dm table: fix dax_dev NULL dereference in device_synchronous() (Mike Snitzer) [1905679] - dm: enable synchronous dax (Mike Snitzer) [1905679] - dm table: fix iterate_devices based device capability checks (Mike Snitzer) [1905679] - dm: remove special-casing of bio-based immutable singleton target on NVMe (Mike Snitzer) [1905679] - [s390] s390/dasd: Fix inconsistent kobject removal (Philipp Rudo) [1928106] - [powerpc] powerpc/perf/hv-24x7: Dont create sysfs event files for dummy events (Steve Best) [1927730] - [powerpc] powerpc/pseries/dlpar: handle ibm, configure-connector delay status (Steve Best) [1927371] - [x86] x86/kvm: Increase KVM_MAX_VCPUS to 2048 (Eduardo Habkost) [1840923]- Unbreak mount_capable() (Scott Mayhew) [1903983]- [powerpc] powerpc: fix wrong backport on Kernel lockdown for power (Diego Domingos) [1928778] - [powerpc] powerpc/kexec_file: fix FDT size estimation for kdump kernel (Steve Best) [1928105] - [kernel] sched/features: Distinguish between NORMAL and DEADLINE hrtick (Juri Lelli) [1912118] - [kernel] sched/features: Fix hrtick reprogramming (Juri Lelli) [1912118] - [scsi] scsi: lpfc: Fix EEH encountering oops with NVMe traffic (Dick Kennedy) [1854776] - [scsi] scsi: lpfc: Prevent duplicate requests to unregister with cpuhp framework (Dick Kennedy) [1894960] - [target] scsi: target: iscsi: Fix cmd abort fabric stop race (Maurizio Lombardi) [1908215]- [net] netfilter: nft_dynset: add timeout extension to template (Florian Westphal) [1906915] - [net] netfilter: nftables: fix possible UAF over chains from packet path in netns (Florian Westphal) [1906915] - [net] netfilter: flowtable: fix tcp and udp header checksum update (Florian Westphal) [1906915] - [net] netfilter: xt_recent: Fix attempt to update deleted entry (Florian Westphal) [1906915] - [net] netfilter: conntrack: connection timeout after re-register (Florian Westphal) [1906915] - [netdrv] ice: Fix MSI-X vector fallback logic (Jonathan Toppins) [1896639 1877645] - [netdrv] ice: Don't allow more channels than LAN MSI-X available (Jonathan Toppins) [1896639 1877645] - [net] netfilter: nf_nat: Fix memleak in nf_nat_init (Florian Westphal) [1906915] - [net] netfilter: xt_RATEEST: reject non-null terminated string from userspace (Florian Westphal) [1906915] - [include] net: flow_dissector: Wrap unionized VLAN fields in a struct (Florian Westphal) [1906915] - [net] netfilter: x_tables: Switch synchronization to RCU (Florian Westphal) [1906915] - [net] netfilter: nftables_offload: build mask based from the matching bytes (Florian Westphal) [1906915] - [net] netfilter: nft_payload: add C-VLAN offload support (Florian Westphal) [1906915] - [net] netfilter: nft_payload: add VLAN offload support (Florian Westphal) [1906915] - [net] netfilter: nf_tables_offload: allow ethernet interface type only (Florian Westphal) [1906915] - [net] netfilter: nftables_offload: set address type in control dissector (Florian Westphal) [1906915] - [net] netfilter: nf_tables: avoid false-postive lockdep splat (Florian Westphal) [1906915] - [net] netfilter: nf_tables: missing validation from the abort path (Florian Westphal) [1906915] - [net] netfilter: nftables: fix netlink report logic in flowtable and genid (Florian Westphal) [1906915] - [include] netfilter: nf_tables: constify nft_reg_load{8, 16, 64}() (Florian Westphal) [1906915] - [net] netfilter: nf_tables: Introduce new 64-bit helper register functions (Florian Westphal) [1906915] - [include] netfilter: nf_tables: drop include of module.h from nf_tables.h (Florian Westphal) [1906915] - [net] netfilter: nf_fwd_netdev: clear timestamp in forwarding path (Florian Westphal) [1906915] - [net] netfilter: ipset: prevent uninit-value in hash_ip6_add (Florian Westphal) [1906915] - [net] netfilter: use actual socket sk rather than skb sk when routing harder (Florian Westphal) [1906915] - [net] netfilter: ipv4: remove useless export_symbol (Florian Westphal) [1906915] - [net] netfilter: conntrack: don't set related state for different outer address (Florian Westphal) [1906915] - [fs] xfs: don't catch dax+reflink inodes as corruption in verifier (Bill O'Donnell) [1915510]- [powerpc] powerpc: Don't enable FSCR_SCV in init_FSCR_power9() (Gustavo Duarte) [1928399] - [netdrv] ibmvnic: Clear failover_pending if unable to schedule (Steve Best) [1926365] - [netdrv] ibmvnic: change IBMVNIC_MAX_IND_DESCS to 16 (Steve Best) [1928243] - [tools] perf powerpc: Fix printf conversion specifier for IP addresses (Steve Best) [1928209] - [tools] perf powerpc: Fix gap between kernel end and module start (Steve Best) [1928209] - [netdrv] i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" (Stefan Assmann) [1838733] - [netdrv] i40e: acquire VSI pointer only after VF is initialized (Stefan Assmann) [1838733] - [netdrv] i40e: fix potential NULL pointer dereferencing (Stefan Assmann) [1838733] - [netdrv] i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: clear the status bits for the next_to_use descriptor (Stefan Assmann) [1838733] - [netdrv] i40e: avoid premature Rx buffer reuse (Stefan Assmann) [1838733] - [netdrv] i40e: Remove unnecessary sw_ring access from xsk Tx (Stefan Assmann) [1838733] - [netdrv] i40e: Fix removing driver while bare-metal VFs pass traffic (Stefan Assmann) [1838733] - [netdrv] i40e: report correct VF link speed when link state is set to enable (Stefan Assmann) [1838733] - [netdrv] i40e: remove redundant assignment (Stefan Assmann) [1838733] - [netdrv] i40e: Fix MAC address setting for a VF via Host/VM (Stefan Assmann) [1838733] - [netdrv] i40e: Allow changing FEC settings on X722 if supported by FW (Stefan Assmann) [1838733] - [netdrv] net: intel: Remove in_interrupt() warnings (Stefan Assmann) [1838733] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: uninitialized variable in i40e_clean_rx_irq_zc() (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: move buffer allocation out of the Rx processing loop (Stefan Assmann) [1838733] - [netdrv] i40e: use 16B HW descriptors instead of 32B (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: remove HW descriptor prefetch in AF_XDP path (Stefan Assmann) [1838733] - [netdrv] i40e: optimise prefetch page refcount (Stefan Assmann) [1838733] - [netdrv] i40e: not compute affinity_mask for IRQ (Stefan Assmann) [1838733] - [netdrv] i40e: Fix crash during removing i40e driver (Stefan Assmann) [1838733] - [netdrv] i40e: Set RX_ONLY mode for unicast promiscuous on VLAN (Stefan Assmann) [1838733] - [netdrv] PCI: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Stefan Assmann) [1838733] - [netdrv] i40e: introduce new dump desc XDP command (Stefan Assmann) [1838733] - [netdrv] i40e: add XDP ring statistics to dump VSI debug output (Stefan Assmann) [1838733] - [netdrv] i40e: add XDP ring statistics to VSI stats (Stefan Assmann) [1838733] - [netdrv] i40e: move check of full Tx ring to outside of send loop (Stefan Assmann) [1838733] - [netdrv] i40e: eliminate division in napi_poll data path (Stefan Assmann) [1838733] - [netdrv] i40e: optimize AF_XDP Tx completion path (Stefan Assmann) [1838733] - [netdrv] i40e: Add support for a new feature Total Port Shutdown (Stefan Assmann) [1838733] - [netdrv] ethernet/intel: Convert fallthrough code comments (Stefan Assmann) [1838733] - [netdrv] i40e: Add support for 5Gbps cards (Stefan Assmann) [1838733] - [netdrv] net/intel: remove driver versions from Intel drivers (Stefan Assmann) [1838733] - [netdrv] i40e: Add a check to see if MFS is set (Stefan Assmann) [1838733] - [netdrv] i40e: detect and log info about pre-recovery mode (Stefan Assmann) [1838733] - [netdrv] i40e: make PF wait reset loop reliable (Stefan Assmann) [1838733] - [netdrv] i40e: remove unused defines (Stefan Assmann) [1838733] - [netdrv] i40e: Move client header location (Stefan Assmann) [1838733] - [netdrv] i40e: protect ring accesses with READ- and WRITE_ONCE (Stefan Assmann) [1838733] - [netdrv] i40e: Make i40e_shutdown_adminq() return void (Stefan Assmann) [1838733] - [netdrv] i40e: trivial fixup of comments in i40e_xsk.c (Stefan Assmann) [1838733] - [netdrv] i40e: Use scnprintf() for avoiding potential buffer overflow (Stefan Assmann) [1838733] - [netdrv] team: protect features update by RCU to avoid deadlock (Josef Oskera) [1909593] - [tools] bpf: selftests: remove test_progs LSM test (Yauheni Kaliuta) [1925911] - [net] bpf: Fix a verifier failure with xor (Yauheni Kaliuta) [1925911] - [tools] selftests: Remove fmod_ret from test_overhead (Jiri Olsa) [1925911] - [s390] s390/kdump: fix out-of-memory with PCI (Philipp Rudo) [1927744] - [x86] x86/intel_split_lock: Really Disable split lock detector by default in RHEL8 (Prarit Bhargava) [1924578] - [scsi] megaraid_sas: re-add certain pci-ids as unsupported (Tomas Henzl) [1761485] - [scsi] megaraid_sas: mark unsupported devices (Tomas Henzl) [1761485] - [pci] rh_taint: add support function (Tomas Henzl) [1761485] - [powerpc] powerpc/xmon: Restrict when kernel is locked down (Diego Domingos) [1853307] - [powerpc] powerpc/xmon: add read-only mode (Diego Domingos) [1853307] - [powerpc] powerpc: lock down kernel in secure boot mode (Diego Domingos) [1853307] - [net] fix iteration for sctp transport seq_files (Xin Long) [1916824] - [tools] x86: xen: insn: Decode Xen and KVM emulate-prefix signature (Michael Petlan) [1867733] - [tools] objtool: Ignore intentional differences for the x86 insn decoder (Michael Petlan) [1867733] - [x86] x86/insn: Add Control-flow Enforcement (CET) instructions to the opcode map (Michael Petlan) [1867733] - [x86] x86/decoder: Add TEST opcode to Group3-2 (Michael Petlan) [1867733] - [x86] x86/insn: Add some more Intel instructions to the opcode map (Michael Petlan) [1867733] - [x86] x86/insn: Add some Intel instructions to the opcode map (Michael Petlan) [1867733] - [net] udp: call udp_encap_enable for v6 sockets when enabling encap (Xin Long) [1907754] - [fs] close_range: unshare all fds for CLOSE_RANGE_UNSHARE | CLOSE_RANGE_CLOEXEC (Pavel Reichl) [1900674] - [fs] fs, close_range: add flag CLOSE_RANGE_CLOEXEC (Pavel Reichl) [1900674] - [tools] tests: close_range - Replace clone3 with clone (Pavel Reichl) [1900674] - [tools] selftests: core: use SKIP instead of XFAIL in close_range_test.c (Pavel Reichl) [1900674] - [tools] tools headers API: Update close_range affected files (Pavel Reichl) [1900674] - [tools] tests: add CLOSE_RANGE_UNSHARE tests (Pavel Reichl) [1900674] - [fs] close_range: add CLOSE_RANGE_UNSHARE (Pavel Reichl) [1900674] - [tools] tests: add close_range() tests (Pavel Reichl) [1900674] - [powerpc] arch: wire-up close_range() (Pavel Reichl) [1900674] - [fs] open: add close_range() (Pavel Reichl) [1900674] - [x86] x86/sgx: mark tech preview (Vladis Dronov) [1660337] - [tools] tools headers cpufeatures: Sync with the kernel sources (Vladis Dronov) [1660337] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Vladis Dronov) [1660337] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Vladis Dronov) [1660337] - [x86] x86/sgx: Drop racy follow_pfn() check (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix the return type of sgx_init() (Vladis Dronov) [1660337] - [x86] x86/sgx: Return -EINVAL on a zero length buffer in sgx_ioc_enclave_add_pages() (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix a typo in kernel-doc markup (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix sgx_ioc_enclave_provision() kernel-doc comment (Vladis Dronov) [1660337] - [x86] x86/sgx: Return -ERESTARTSYS in sgx_ioc_enclave_add_pages() (Vladis Dronov) [1660337] - [tools] selftests/sgx: Use a statically generated 3072-bit RSA key (Vladis Dronov) [1660337] - [x86] x86/sgx: Clarify 'laundry_list' locking (Vladis Dronov) [1660337] - [documentation] Documentation/x86: Document SGX kernel architecture (Vladis Dronov) [1660337] - [x86] x86/sgx: Add ptrace() support for the SGX driver (Vladis Dronov) [1660337] - [x86] x86/sgx: Add a page reclaimer (Vladis Dronov) [1660337] - [tools] selftests/x86: Add a selftest for SGX (Vladis Dronov) [1660337] - [x86] x86/vdso: Implement a vDSO for Intel SGX enclave call (Vladis Dronov) [1660337] - [mm] x86/traps: Attempt to fixup exceptions in vDSO before signaling (Vladis Dronov) [1660337] - [mm] x86/fault: Add a helper function to sanitize error code (Vladis Dronov) [1660337] - [x86] x86/vdso: Add support for exception fixup in vDSO functions (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_PROVISION (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_INIT (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_ADD_PAGES (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_CREATE (Vladis Dronov) [1660337] - [x86] x86/sgx: Add an SGX misc driver interface (Vladis Dronov) [1660337] - [mm] mm: Add 'mprotect' hook to struct vm_operations_struct (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX page allocator functions (Vladis Dronov) [1660337] - [x86] x86/cpu/intel: Add a nosgx kernel parameter (Vladis Dronov) [1660337] - [x86] x86/cpu/intel: Detect SGX support (Vladis Dronov) [1660337] - [mm] x86/mm: Signal SIGSEGV with PF_SGX (Vladis Dronov) [1660337] - [x86] x86/sgx: Initialize metadata for Enclave Page Cache (EPC) sections (Vladis Dronov) [1660337] - [x86] x86/{cpufeatures, msr}: Add Intel SGX Launch Control hardware bits (Vladis Dronov) [1660337] - [x86] x86/cpufeatures: Add Intel SGX hardware bits (Vladis Dronov) [1660337] - [x86] x86/sgx: Add wrappers for ENCLS functions (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX architectural data structures (Vladis Dronov) [1660337] - [mm] x86/fault: Make error_code sanitization more robust (Vladis Dronov) [1660337] - [video] vgacon: remove software scrollback support (Chris von Recklinghausen) [1883596] - [tools] libbpf: fix backport of "libbpf: Remove any use of reallocarray() in libbpf" (Jiri Benc) [1924711] - [net] bpf: Prevent double bpf_prog_put call from bpf_tracing_prog_attach (Jiri Benc) [1924711] - [tools] selftests/bpf: Adding test for arg dereference in extension trace (Jiri Benc) [1924711] - [tools] selftests: Add selftest for disallowing modify_return attachment to freplace (Jiri Benc) [1924711] - [tools] selftests: Add test for multiple attachments of freplace program (Jiri Benc) [1924711] - [tools] selftests/bpf: Turn fexit_bpf2bpf into test with subtests (Jiri Benc) [1924711] - [tools] libbpf: Add support for freplace attachment in bpf_link_create (Jiri Benc) [1924711] - [net] bpf: Fix context type resolving for extension programs (Jiri Benc) [1924711] - [net] bpf: Support attaching freplace programs to multiple attach points (Jiri Benc) [1924711] - [net] bpf: Move prog->aux->linked_prog and trampoline into bpf_link on attach (Jiri Benc) [1924711] - [net] bpf: verifier: refactor check_attach_btf_id() (Jiri Benc) [1924711] - [net] bpf: change logging calls from verbose() to bpf_log() and use log pointer (Jiri Benc) [1924711] - [net] bpf: disallow attaching modify_return tracing functions to other BPF programs (Jiri Benc) [1924711] - [mm] kasan: fix incorrect arguments passing in kasan_add_zero_shadow (Waiman Long) [1921394] - [mm] kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow (Waiman Long) [1921394] - [mm] mm: memcg/slab: optimize objcg stock draining (Waiman Long) [1921394] - [mm] mm: don't wake kswapd prematurely when watermark boosting is disabled (Waiman Long) [1921394] - [mm] mm/vmalloc.c: fix kasan shadow poisoning size (Waiman Long) [1921394] - [mm] mm/vmalloc: Fix unlock order in s_stop() (Waiman Long) [1921394] - [mm] mm/swapfile: do not sleep with a spin lock held (Waiman Long) [1921394] - [mm] mm: list_lru: set shrinker map bit when child nr_items is not zero (Waiman Long) [1921394] - [mm] mm: mempolicy: fix potential pte_unmap_unlock pte error (Waiman Long) [1921394] - [mm] mm/mmu_notifier: fix mmget() assert in __mmu_interval_notifier_insert (Waiman Long) [1921394] - [mm] mm/swapfile.c: fix potential memory leak in sys_swapon (Waiman Long) [1921394] - [mm] mm: validate pmd after splitting (Waiman Long) [1921394] - [mm] hugetlb_cgroup: convert comma to semicolon (Waiman Long) [1921394] - [mm] mm/memory_hotplug: fix unpaired mem_hotplug_begin/done (Waiman Long) [1921394] - [mm] khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter() (Waiman Long) [1921394] - [mm] khugepaged: khugepaged_test_exit() check mmget_still_valid() (Waiman Long) [1921394] - [mm] mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible (Waiman Long) [1921394] - [mm] mm/hugetlb.c: clean code by removing unnecessary initialization (Waiman Long) [1921394] - [mm] mm/sparse: never partially remove memmap for early section (Waiman Long) [1921394] - [mm] mm/sparse: fix kernel crash with pfn_section_valid check (Waiman Long) [1921394] - [mm] mm/shuffle: don't move pages between zones and don't read garbage memmaps (Waiman Long) [1921394] - [mm] mm/sparse: rename pfn_present() to pfn_in_present_section() (Waiman Long) [1921394] - [powerpc] powerpc/pseries: Advance pfn if section is not present in lmb_is_removable() (Waiman Long) [1921394] - [powerpc] powerpc/pseries/hotplug-memory: Change rc variable to bool (Waiman Long) [1921394] - [mm] mm/gup: fix fixup_user_fault() on multiple retries (Waiman Long) [1921394] - [mm] mm/gup: Let __get_user_pages_locked() return -EINTR for fatal signal (Waiman Long) [1921394] - [mm] mm/mempolicy: Allow lookup_node() to handle fatal signal (Waiman Long) [1921394] - [include] include/linux/memremap.h: remove stale comments (Waiman Long) [1921394] - [mm] mm/sparsemem: get address to page struct instead of address to pfn (Waiman Long) [1921394] - [fs] hibernate: Allow uswsusp to write to swap (Waiman Long) [1921394] - [mm] mm/hotplug: fix hot remove failure in SPARSEMEM|!VMEMMAP case (Waiman Long) [1921394] - [mm] mm/hmm: add missing call to hmm_pte_need_fault in HMM_PFN_SPECIAL handling (Waiman Long) [1921394] - [mm] mm/hmm: add missing unmaps of the ptep during hmm_vma_handle_pte() (Waiman Long) [1921394] - [mm] mm/hmm: allow snapshot of the special zero page (Waiman Long) [1921394] - [mm] mm/hmm: a few more C style and comment clean ups (Waiman Long) [1921394] - [mm] mm/sparse.c: do not waste pre allocated memmap space (Waiman Long) [1921394] - [mm] mm/sparse: consistently do not zero memmap (Waiman Long) [1921394] - [mm] mm/gup: fix a misnamed "write" argument, and a related bug (Waiman Long) [1921394] - [powerpc] treewide: add checks for the return value of memblock_alloc*() (Waiman Long) [1921394] - [kvm] KVM: x86: Expose AVX512_FP16 for supported CPUID (Paul Lai) [1838734] - [x86] x86: Enumerate AVX512 FP16 CPUID feature flag (Paul Lai) [1838734] - [kvm] x86/kvm: Expose TSX Suspend Load Tracking feature (Paul Lai) [1838734] - [net] sched: act_ct: enable stats for HW offloaded entries (Marcelo Leitner) [1909257] - [scsi] scsi: fnic: Validate io_req before others (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Set scsi_set_resid() only for underflow (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Change shost_printk() to FNIC_MAIN_DBG() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Avoid looping in TRANS ETH on unload (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Change shost_printk() to FNIC_FCS_DBG() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Simplify the return expression of vnic_wq_copy_alloc() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Fix inconsistent format argument type in fnic_debugfs.c (Govindarajulu Varadarajan) [1845720] - [x86] perf/x86/intel/uncore: Fix the scale of the IMC free-running events (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Reduce the number of CBOX counters (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Update Ice Lake uncore units (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Split the Ice Lake and Tiger Lake MSR uncore support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Support PCIe3 unit on Snow Ridge (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Generic support for the PCI sub driver (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_pmu_unregister() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_pmu_register() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_find_dev_pmu() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_get_dev_die_info() (Michael Petlan) [1884818 1908305]- [mmc] mmc: sdhci-acpi: For amd device set driver type as MMC_SET_DRIVER_TYPE_A (David Arcari) [1906067] - [pinctrl] pinctrl: Added IRQF_SHARED flag for amd-pinctrl driver (David Arcari) [1906067] - [block] block: export blk_mq_make_request (Ming Lei) [1917913] - [platform] platform/x86: dell-wmi-sysman: fix a NULL pointer dereference (Perry Yuan) [1922587] - [platform] platform/x86: dell-wmi-sysman: work around for BIOS bug (Juan Martinez) [1504859] - [platform] platform/x86: dell-wmi-sysman: fix init_bios_attributes() error handling (Juan Martinez) [1504859] - [platform] platform/x86/dell-wmi-sysman: Make some symbols static (Juan Martinez) [1504859] - [platform] platform/x86/dell-wmi-sysman: Make wmi_sysman_kobj_sysfs_ops static (Juan Martinez) [1504859] - [documentation] docs: ABI: sysfs-class-firmware-attributes: solve some warnings (Juan Martinez) [1504859] - [platform] platform/x86: Use appropriate module alias macro for this kernel (Juan Martinez) [1504859] - [platform] platform/x86: Introduce support for Systems Management Driver over WMI for Dell Systems (Juan Martinez) [1504859] - [md] dm: eliminate potential source of excessive kernel log noise (Mike Snitzer) [1876840] - [scsi] scsi: sd: Suppress spurious errors when WRITE SAME is being disabled (Ewan Milne) [1871060] - [net] libceph, ceph: disambiguate ceph_connection_operations handlers (Jeff Layton) [1893177] - [net] libceph: zero out session key and connection secret (Jeff Layton) [1893177] - [include] libceph: add __maybe_unused to DEFINE_MSGR2_FEATURE (Jeff Layton) [1893177] - [net] libceph: align session_key and con_secret to 16 bytes (Jeff Layton) [1893177] - [net] libceph: fix auth_signature buffer allocation in secure mode (Jeff Layton) [1893177] - [fs] ceph: reencode gid_list when reconnecting (Jeff Layton) [1893177] - [net] libceph: drop ceph_auth_{create, update}_authorizer() (Jeff Layton) [1893177] - [fs] libceph, ceph: make use of __ceph_auth_get_authorizer() in msgr1 (Jeff Layton) [1893177] - [net] libceph, ceph: implement msgr2.1 protocol (crc and secure modes) (Jeff Layton) [1893177] - [net] libceph: introduce connection modes and ms_mode option (Jeff Layton) [1893177] - [block] libceph, rbd: ignore addr->type while comparing in some cases (Jeff Layton) [1893177] - [net] libceph, ceph: get and handle cluster maps with addrvecs (Jeff Layton) [1893177] - [net] libceph: factor out finish_auth() (Jeff Layton) [1893177] - [net] libceph: drop ac->ops->name field (Jeff Layton) [1893177] - [net] libceph: amend cephx init_protocol() and build_request() (Jeff Layton) [1893177] - [net] libceph, ceph: incorporate nautilus cephx changes (Jeff Layton) [1893177] - [net] libceph: safer en/decoding of cephx requests and replies (Jeff Layton) [1893177] - [net] libceph: more insight into ticket expiry and invalidation (Jeff Layton) [1893177] - [net] libceph: move msgr1 protocol specific fields to its own struct (Jeff Layton) [1893177] - [net] libceph: move msgr1 protocol implementation to its own file (Jeff Layton) [1893177] - [net] libceph: use sendpage_ok() in ceph_tcp_sendpage() (Jeff Layton) [1893177] - [net] net: introduce helper sendpage_ok() in include/linux/net.h (Jeff Layton) [1893177] - [net] libceph: separate msgr1 protocol implementation (Jeff Layton) [1893177] - [net] libceph: export remaining protocol independent infrastructure (Jeff Layton) [1893177] - [net] libceph: export zero_page (Jeff Layton) [1893177] - [net] libceph: rename and export con->flags bits (Jeff Layton) [1893177] - [net] libceph: rename and export con->state states (Jeff Layton) [1893177] - [net] libceph: make con->state an int (Jeff Layton) [1893177] - [net] libceph: don't export ceph_messenger_{init_fini}() to modules (Jeff Layton) [1893177] - [net] libceph: make sure our addr->port is zero and addr->nonce is non-zero (Jeff Layton) [1893177] - [net] libceph: factor out ceph_con_get_out_msg() (Jeff Layton) [1893177] - [net] libceph: change ceph_con_in_msg_alloc() to take hdr (Jeff Layton) [1893177] - [net] libceph: change ceph_msg_data_cursor_init() to take cursor (Jeff Layton) [1893177] - [net] libceph: handle discarding acked and requeued messages separately (Jeff Layton) [1893177] - [net] libceph: drop msg->ack_stamp field (Jeff Layton) [1893177] - [net] libceph: remove redundant session reset log message (Jeff Layton) [1893177] - [net] libceph: clear con->peer_global_seq on RESETSESSION (Jeff Layton) [1893177] - [net] libceph: rename reset_connection() to ceph_con_reset_session() (Jeff Layton) [1893177] - [net] libceph: split protocol reset bits out of reset_connection() (Jeff Layton) [1893177] - [net] libceph: don't call reset_connection() on version/feature mismatches (Jeff Layton) [1893177] - [net] libceph: lower exponential backoff delay (Jeff Layton) [1893177] - [net] libceph: include middle_len in process_message() dout (Jeff Layton) [1893177] - [fs] ceph: implement updated ceph_mds_request_head structure (Jeff Layton) [1893177] - [fs] ceph: clean up argument lists to __prepare_send_request and __send_request (Jeff Layton) [1893177] - [fs] ceph: take a cred reference instead of tracking individual uid/gid (Jeff Layton) [1893177] - [fs] ceph: don't reach into request header for readdir info (Jeff Layton) [1893177] - [fs] ceph: set osdmap epoch for setxattr (Jeff Layton) [1893177] - [fs] ceph: remove redundant assignment to variable i (Jeff Layton) [1893177] - [fs] ceph: add ceph.caps vxattr (Jeff Layton) [1893177] - [fs] ceph: when filling trace, call ceph_get_inode outside of mutexes (Jeff Layton) [1893177] - [fs] Revert "ceph: allow rename operation under different quota realms" (Jeff Layton) [1893177] - [fs] ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode fails (Jeff Layton) [1893177] - [fs] ceph: downgrade warning from mdsmap decode to debug (Jeff Layton) [1893177] - [fs] ceph: fix race in concurrent __ceph_remove_cap invocations (Jeff Layton) [1893177] - [fs] ceph: pass down the flags to grab_cache_page_write_begin (Jeff Layton) [1893177] - [fs] ceph: add ceph.{cluster_fsid/client_id} vxattrs (Jeff Layton) [1893177] - [fs] ceph: add status debugfs file (Jeff Layton) [1893177] - [include] libceph: remove unused port macros (Jeff Layton) [1893177] - [fs] ceph: ensure we have Fs caps when fetching dir link count (Jeff Layton) [1893177] - [fs] ceph: send dentry lease metrics to MDS daemon (Jeff Layton) [1893177] - [fs] ceph: acquire Fs caps when getting dir stats (Jeff Layton) [1893177] - [fs] ceph: fix up some warnings on W=1 builds (Jeff Layton) [1893177] - [fs] ceph: queue MDS requests to REJECTED sessions when CLEANRECOVER is set (Jeff Layton) [1893177] - [fs] ceph: remove timeout on allowing reconnect after blocklisting (Jeff Layton) [1893177] - [fs] ceph: add new RECOVER mount_state when recovering session (Jeff Layton) [1893177] - [fs] ceph: make fsc->mount_state an int (Jeff Layton) [1893177] - [fs] ceph: don't WARN when removing caps due to blocklisting (Jeff Layton) [1893177] - [fs] ceph: check session state after bumping session->s_seq (Jeff Layton) [1893177] - [net] libceph: clear con->out_msg on Policy::stateful_server faults (Jeff Layton) [1893177] - [net] libceph: format ceph_entity_addr nonces as unsigned (Jeff Layton) [1893177] - [include] libceph: fix ENTITY_NAME format suggestion (Jeff Layton) [1893177] - [net] libceph: move a dout in queue_con_delay() (Jeff Layton) [1893177] - [fs] ceph: comment cleanups and clarifications (Jeff Layton) [1893177] - [fs] ceph: break up send_cap_msg (Jeff Layton) [1893177] - [fs] ceph: drop separate mdsc argument from __send_cap (Jeff Layton) [1893177] - [fs] ceph: promote to unsigned long long before shifting (Jeff Layton) [1893177] - [fs] ceph: don't SetPageError on readpage errors (Jeff Layton) [1893177] - [fs] ceph: mark ceph_fmt_xattr() as printf-like for better type checking (Jeff Layton) [1893177] - [fs] ceph: fold ceph_update_writeable_page into ceph_write_begin (Jeff Layton) [1893177] - [fs] ceph: fold ceph_sync_writepages into writepage_nounlock (Jeff Layton) [1893177] - [fs] ceph: fold ceph_sync_readpages into ceph_readpage (Jeff Layton) [1893177] - [fs] ceph: don't call ceph_update_writeable_page from page_mkwrite (Jeff Layton) [1893177] - [fs] ceph: break out writeback of incompatible snap context to separate function (Jeff Layton) [1893177] - [fs] ceph: add a note explaining session reject error string (Jeff Layton) [1893177] - [net] libceph: switch to the new "osd blocklist add" command (Jeff Layton) [1893177] - [fs] libceph, rbd, ceph: "blacklist" -> "blocklist" (Jeff Layton) [1893177] - [fs] ceph: have ceph_writepages_start call pagevec_lookup_range_tag (Jeff Layton) [1893177] - [fs] ceph: use kill_anon_super helper (Jeff Layton) [1893177] - [fs] ceph: metrics for opened files, pinned caps and opened inodes (Jeff Layton) [1893177] - [fs] ceph: add ceph_sb_to_mdsc helper support to parse the mdsc (Jeff Layton) [1893177] - [fs] ceph: drop special-casing for ITER_PIPE in ceph_sync_read (Jeff Layton) [1893177] - [fs] ceph: add column 'mds' to show caps in more user friendly (Jeff Layton) [1893177] - [include] libceph: multiple workspaces for CRUSH computations (Jeff Layton) [1893177] - [fs] ceph: remove unnecessary return in switch statement (Jeff Layton) [1893177] - [fs] ceph: encode inodes' parent/d_name in cap reconnect message (Jeff Layton) [1893177] - [include] libceph: add __maybe_unused to DEFINE_CEPH_FEATURE (Jeff Layton) [1893177] - [fs] ceph: use frag's MDS in either mode (Jeff Layton) [1893177] - [fs] ceph: move sb->wb_pagevec_pool to be a global mempool (Jeff Layton) [1893177] - [fs] ceph: remove redundant initialization of variable mds (Jeff Layton) [1893177] - [fs] ceph: fix use-after-free for fsc->mdsc (Jeff Layton) [1893177] - [fs] ceph: remove unused variables in ceph_mdsmap_decode() (Jeff Layton) [1893177] - [fs] ceph: delete repeated words in fs/ceph/ (Jeff Layton) [1893177] - [fs] ceph: send client provided metric flags in client metadata (Jeff Layton) [1893177] - [fs] ceph: periodically send perf metrics to MDSes (Jeff Layton) [1893177] - [fs] ceph: check the sesion state and return false in case it is closed (Jeff Layton) [1893177] - [net] libceph: replace HTTP links with HTTPS ones (Jeff Layton) [1893177] - [fs] ceph: remove unnecessary cast in kfree() (Jeff Layton) [1893177] - [net] libceph: just have osd_req_op_init() return a pointer (Jeff Layton) [1893177] - [fs] ceph: do not access the kiocb after aio requests (Jeff Layton) [1893177] - [fs] ceph: clean up and optimize ceph_check_delayed_caps() (Jeff Layton) [1893177] - [fs] ceph: fix potential mdsc use-after-free crash (Jeff Layton) [1893177] - [fs] ceph: switch to WARN_ON_ONCE in encode_supported_features() (Jeff Layton) [1893177] - [fs] ceph: add global total_caps to count the mdsc's total caps number (Jeff Layton) [1893177] - [fs] ceph: add check_session_state() helper and make it global (Jeff Layton) [1893177] - [net] libceph: dump class and method names on method calls (Jeff Layton) [1893177] - [net] libceph: use target_copy() in send_linger() (Jeff Layton) [1893177] - [fs] ceph: add metadata perf metric support (Jeff Layton) [1893177] - [fs] ceph: add read/write latency metric support (Jeff Layton) [1893177] - [fs] ceph: add caps perf metric for each superblock (Jeff Layton) [1893177] - [fs] ceph: add dentry lease metric support (Jeff Layton) [1893177] - [include] math64: New DIV64_U64_ROUND_CLOSEST helper (Jeff Layton) [1893177] - [tty] tty: Fix ->pgrp locking in tiocspgrp() (Waiman Long) [1908197] {CVE-2020-29661}- [mm] Revert "powerpc: Ensure that swiotlb buffer is allocated from low memory" (Diego Domingos) [1907131] - [fs] xfs: use ENOTBLK for direct I/O to buffered I/O fallback (Carlos Maiolino) [1922953] - [nvme] nvme-multipath: Early exit if no path is available (Gopal Tiwari) [1880508] - [scsi] scsi: lpfc: Add support for eh_should_retry_cmd() (Ewan Milne) [1801585] - [scsi] scsi: scsi_transport_fc: Add store capability to rport port_state in sysfs (Ewan Milne) [1801585] - [scsi] scsi: scsi_transport_fc: Add a new rport state FC_PORTSTATE_MARGINAL (Ewan Milne) [1801585] - [scsi] scsi: core: No retries on abort success (Ewan Milne) [1801585] - [scsi] scsi: core: Add a new error code DID_TRANSPORT_MARGINAL in scsi.h (Ewan Milne) [1801585] - [scsi] scsi: core: Add limitless cmd retry support (Ewan Milne) [1801585] - [fs] gfs2: Fix deadlock between gfs2_{create_inode, inode_lookup} and delete_work_func (Andreas Grunbacher) [1903190] - [fs] gfs2: Don't call cancel_delayed_work_sync from within delete work function (Andreas Grunbacher) [1903190] - [cpufreq] acpi-cpufreq: Honor _PSD table setting on new AMD CPUs (Terry Bowman) [1886943] - [x86] x86/cpufeatures: Enumerate TSX suspend load address tracking instructions (Josh Poimboeuf) [1836980] - [powerpc] powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memory (Diego Domingos) [1869184] - [mm] powerpc: Ensure that swiotlb buffer is allocated from low memory (Diego Domingos) [1869184] - [fs] debugfs: Fix module state check condition (Vladis Dronov) [1866285] - [fs] debugfs: Check module state before warning in {full/open}_proxy_open() (Vladis Dronov) [1866285]- [firmware] efi: Don't attempt to map RCI2 config table if it doesn't exist (Lenny Szubowicz) [1779590] - [firmware] efi: Make CONFIG_EFI_RCI2_TABLE selectable on x86 only (Lenny Szubowicz) [1779590] - [firmware] efi: Make unexported efi_rci2_sysfs_init() static (Lenny Szubowicz) [1779590] - [iommu] iommu: use the __iommu_attach_device() directly for deferred attach (Lianbo Jiang) [1904658] - [iommu] dma-iommu: use static-key to minimize the impact in the fast-path (Lianbo Jiang) [1904658] - [x86] x86/PCI: sta2x11: use default DMA address translation (Jerry Snitselaar) [1887546] - [powerpc] powerpc: use the generic dma_ops_bypass mode (Jerry Snitselaar) [1887546] - [dma] dmaengine: fix error codes in channel_register() (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: off by one in cleanup code (Jerry Snitselaar) [1837187] - [documentation] dmaengine: idxd: Add ABI documentation for shared wq (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Clean up descriptors with fault error (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Add shared workqueue support (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix mapping of portal size (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix wq config registers offset programming (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Allocate correct size for descriptor chunk (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: add missing invalid flags field to completion (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: fix hw descriptor fields for delta record (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: Merge definition of dsa_batch_desc into dsa_hw_desc (Jerry Snitselaar) [1838386 1837187] - [dma] dmaengine: dmatest: Return boolean result directly in filter() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Check list for emptiness before access its last entry (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Make two symbols static (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Print error codes as signed value (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add command status to idxd sysfs attribute (Jerry Snitselaar) [1893465 1837187] - [dma] dmaengine: idxd: add support for configurable max wq batch size (Jerry Snitselaar) [1893468 1837187] - [dma] dmaengine: idxd: add support for configurable max wq xfer size (Jerry Snitselaar) [1893468 1837187] - [documentation] dmaengine: idxd: add leading / for sysfspath in ABI documentation (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: clear misc interrupt cause after read (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Prevent to run on misconfigured channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Put the CSRT table after using it (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: reset states after device disable or reset (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: move idxd interrupt handling to mask instead of ignore (Jerry Snitselaar) [1872374 1837187] - [dma] dmaengine: idxd: add work queue drain support (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: move submission to sbitmap_queue (Jerry Snitselaar) [1837187] - [dma] dmaengine: cookie bypass for out of order completion (Jerry Snitselaar) [1838893 1837187] - [dma] dmaengine: ioat setting ioat timeout as module parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: stop completed threads when running without set channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix misc interrupt handler thread unmasking (Jerry Snitselaar) [1877126 1837187] - [dma] dmaengine: idxd: cleanup workqueue config after disabling (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix cdev locking for open and release (Jerry Snitselaar) [1837187] - [dma] dmaengine: Replace zero-length array with flexible-array (Jerry Snitselaar) [1837187] - [dma] dmaengine: Fix doc strings to satisfy validation script (Jerry Snitselaar) [1837187] - [dma] dmaengine: Include dmaengine.h into dmaengine.c (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Describe members of struct dmatest_info (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Describe members of struct dmatest_params (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Allow negative timeout value to specify infinite wait (Jerry Snitselaar) [1837187] - [dma] Revert "dmaengine: dmatest: timeout value of -1 should specify infinite wait" (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: adding missed issue_pending to timeout handler (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: remove unnesesery double complition timer modification (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: removing duplicate code from timeout handler (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Decreasing allocation chunk size 2M->512K (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: fixing chunk sizing macros dependency (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: export hw version through sysfs (Jerry Snitselaar) [1838888 1837187] - [dma] dmaengine: dmatest: Restore default for channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix interrupt completion after unmasking (Jerry Snitselaar) [1838895 1837187] - [dma] dmaengine: dmatest: Fix process hang when reading 'wait' parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Fix iteration non-stop logic (Jerry Snitselaar) [1837187] - [dma] dmaengine: fix channel index enumeration (Jerry Snitselaar) [1838390 1837187] - [include] include/linux/dmaengine: Typos fixes in API documentation (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove global token limit check (Jerry Snitselaar) [1838385 1837187] - [dma] dmaengine: idxd: reflect shadow copy of traffic class programming (Jerry Snitselaar) [1838381 1837187] - [dma] dmaengine: Create debug directories for DMA devices (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add basic debugfs support (Jerry Snitselaar) [1837187] - [include] dmaengine: consistently return string literal from switch-case (Jerry Snitselaar) [1837187] - [include] dmaengine: Drop redundant 'else' keyword (Jerry Snitselaar) [1837187] - [include] dmaengine: Use negative condition for better readability (Jerry Snitselaar) [1837187] - [include] dmaengine: Refactor dmaengine_check_align() to be bit operations only (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: expose general capabilities register in sysfs (Jerry Snitselaar) [1837187 1836532] - [dma] dmaengine: idxd: check return result from check_vma() in cdev (Jerry Snitselaar) [1837187 1836530] - [dma] dmanegine: ioat/dca: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove set but not used variable 'idxd_cdev' (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove set but not used variable 'group' (Jerry Snitselaar) [1837187] - [documentation] dmaengine: idxd: add sysfs ABI for idxd driver (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix off by one on cdev dwq refcount (Jerry Snitselaar) [1838366 1837187] - [dma] dmaengine: idxd: wq size configuration needs to check global max size (Jerry Snitselaar) [1837187 1836579] - [dma] dmaengine: idxd: sysfs input of wq incorrect wq type should return error (Jerry Snitselaar) [1837187 1836585] - [dma] dmaengine: idxd: correct reserved token calculation (Jerry Snitselaar) [1837187 1836647] - [dma] dmaengine: idxd: Fix error handling in idxd_wq_cdev_dev_setup() (Jerry Snitselaar) [1838354 1837187] - [dma] dmaengine: idxd: fix runaway module ref count on device driver bind (Jerry Snitselaar) [1837187 1836649] - [dma] dmaengine: idxd: fix boolconv.cocci warnings (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add char driver to expose submission portal to userland (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: connect idxd to dmaengine subsystem (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add descriptor manipulation routines (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add configuration component of driver (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Init and probe for Intel data accelerators (Jerry Snitselaar) [1837187] - [include] io-64-nonatomic: add io{read|write}64{_lo_hi|_hi_lo} macros (Jerry Snitselaar) [1837187] - [powerpc] iomap: introduce io{read|write}64_{lo_hi|hi_lo} (Jerry Snitselaar) [1837187] - [lib] iomap: Use non-raw io functions for io{read|write}XXbe (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: use vchan_vdesc_fini() to free descriptors (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Add missing locking around list operations (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Do not call desc_free() under a spin_lock (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: remove debug message (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Add missing locking (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Support in-use unbind (Jerry Snitselaar) [1837187] - [dma] dmaengine: move .device_release missing log warning to debug level (Jerry Snitselaar) [1837187] - [dma] dmaengine: Cleanups for the slave <-> channel symlink support (Jerry Snitselaar) [1837187] - [dma] dmaengine: fix null ptr check for __dma_async_device_channel_register() (Jerry Snitselaar) [1837187] - [dma] dmaengine: Fix return value for dma_request_chan() in case of failure (Jerry Snitselaar) [1837187] - [dma] dmaengine: Create symlinks between DMA channels and slaves (Jerry Snitselaar) [1837187] - [dma] dmaengine: add support to dynamic register/unregister of channels (Jerry Snitselaar) [1837187] - [dma] dmaengine: break out channel registration (Jerry Snitselaar) [1837187] - [x86] x86/asm: Carve out a generic movdir64b() helper for general usage (Jerry Snitselaar) [1837187] - [x86] x86/asm: add iosubmit_cmds512() based on MOVDIR64B CPU instruction (Jerry Snitselaar) [1837187] - [dma] dmaengine: Move dma_get_{, any_}slave_channel() to private dmaengine.h (Jerry Snitselaar) [1837187] - [include] dmaengine: Remove dma_request_slave_channel_compat() wrapper (Jerry Snitselaar) [1837187] - [dma] dmaengine: Remove dma_device_satisfies_mask() wrapper (Jerry Snitselaar) [1837187] - [include] dmaengine: Add helper function to convert direction value to text (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add support for reporting DMA cached data amount (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add metadata_ops for dma_async_tx_descriptor (Jerry Snitselaar) [1837187] - [dma] dmaengine: print more meaningful error message (Jerry Snitselaar) [1837187] - [dma] dmaengine: move module_/dma_device_put() after route free (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add reference counting to dma_device struct (Jerry Snitselaar) [1837187] - [dma] dmaengine: Move dma_channel_rebalance() infrastructure up in code (Jerry Snitselaar) [1837187] - [dma] dmaengine: Call module_put() after device_free_chan_resources() (Jerry Snitselaar) [1837187] - [dma] dmaengine: Store module owner in dma_device struct (Jerry Snitselaar) [1837187] - [include] dmaengine: Remove spaces before TABs (Jerry Snitselaar) [1837187] - [dma] ioat: ioat_alloc_ring() failure handling (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Fix access after free in vchan_complete() (Jerry Snitselaar) [1837187] - [include] dmaengine: Fix access to uninitialized dma_slave_caps (Jerry Snitselaar) [1837187] - [dma] dmanegine: ioat/dca: Use struct_size() helper (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Add kernel doc parameter descriptions (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Set up DMA mask based on CSRT (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add support for completion polling (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: store result on dma descriptor (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: timeout value of -1 should specify infinite wait (Jerry Snitselaar) [1837187] - [dma] dmaengine: Grammar s/the its/its/, s/need/needs/ (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 (Jerry Snitselaar) [1837187] - [dma] treewide: Add SPDX license identifier - Makefile/Kconfig (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 7 (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: move test data alloc & free into functions (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: add short-hand `buf_size` var in dmatest_func() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: wrap src & dst data into a struct (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Abort test in case of mapping error (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add transfer_size parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add alignment parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Use fixed point div to calculate iops (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add support for multi channel testing (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: fix a small memory leak in dmatest_func() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: move size checks earlier in function (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: use dmaengine_terminate_sync() instead (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: unmap data on a single code-path when xfer done (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma64: replace spin_lock_irqsave with spin_lock (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma: remove dma_slave_config direction usage (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: fix prototype of ioat_enumerate_channels (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioatdma: set the completion address register after channel reset (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma64: Support dmaengine_terminate_sync() (Jerry Snitselaar) [1837187] - [dma] dmaengine: add a new helper dmaenginem_async_device_register (Jerry Snitselaar) [1837187] - [documentation] Documentation/x86: Add documentation for SVA (Shared Virtual Addressing) (Jerry Snitselaar) [1836777] - [iommu] iommu/vt-d: Change flags type to unsigned int in binding mm (Jerry Snitselaar) [1836777] - [drm] drm, iommu: Change type of pasid to u32 (Jerry Snitselaar) [1836777] - [x86] x86/asm: Add an enqcmds() wrapper for the ENQCMDS instruction (Jerry Snitselaar) [1837187] - [x86] x86/mmu: Allocate/free a PASID (Jerry Snitselaar) [1836777] - [x86] x86/cpufeatures: Mark ENQCMD as disabled when configured out (Jerry Snitselaar) [1836777] - [mm] mm: Add a pasid member to struct mm_struct (Jerry Snitselaar) [1836777] - [x86] x86/msr-index: Define an IA32_PASID MSR (Jerry Snitselaar) [1836777] - [x86] x86/fpu/xstate: Add supervisor PASID state for ENQCMD (Jerry Snitselaar) [1836777] - [x86] x86/cpufeatures: Enumerate ENQCMD and ENQCMDS instructions (Jerry Snitselaar) [1836777] - [x86] x86/fpu/xstate: Restore supervisor states for signal return (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Preserve supervisor states for the slow path in __fpu__restore_sig() (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Introduce copy_supervisor_to_kernel() (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Update copy_kernel_to_xregs_err() for supervisor states (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Update sanitize_restored_xstate() for supervisor xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Define new functions for clearing fpregs and xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Introduce XSAVES supervisor states (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Separate user and supervisor xfeatures mask (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Define new macros for supervisor and user xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Rename validate_xstate_header() to validate_user_xstate_header() (Jerry Snitselaar) [1837178] - [x86] copy_xstate_to_kernel: Fix typo which caused GDB regression (Jerry Snitselaar) [1837178] - [x86] copy_xstate_to_kernel(): don't leave parts of destination uninitialized (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Warn when checking alignment of disabled xfeatures (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix XSAVES offsets in setup_xstate_comp() (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix last_good_offset in setup_xstate_features() (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Shrink space allocated for xstate_comp_offsets (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Make xfeature_is_supervisor()/xfeature_is_user() return bool (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix small issues (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Use XFEATURE_FP/SSE enum values instead of hardcoded numbers (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Use unsigned long long shift in xfeature_uncompacted_offset() (Jerry Snitselaar) [1837178] - [iommu] iommu/vt-d: Fix sid not set issue in intel_svm_bind_gpasid() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix kernel NULL pointer dereference in find_domain() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Don't read VCCAP register unless it exists (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Add SMMUv3.2 range invalidation support (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Batch ATC invalidation commands (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Add command queue batching helpers (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Add sanity check for interrupt remapping table length macros (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Restore IRTE.RemapEn bit for amd_iommu_activate_guest_mode (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Fix potential @entry null deref (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Handle 36bit addressing for x86-32 (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Do not use IOMMUv2 functionality when SME is active (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Do not force direct mapping when SME is active (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Restore IRTE.RemapEn bit after programming IRTE (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix NULL pointer dereference in dev_iommu_priv_set() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Serialize IOMMU GCMD register modifications (Jerry Snitselaar) [1887546] - [dma] dma-pool: Fix an uninitialized variable bug in atomic_pool_expand() (Jerry Snitselaar) [1887546] - [dma] dma-pool: Only allocate from CMA when in same memory zone (Jerry Snitselaar) [1887546] - [dma] dma-pool: fix coherent pool allocations for IOMMU mappings (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Move Kconfig and Makefile bits down into amd directory (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move Kconfig and Makefile bits down into intel directory (Jerry Snitselaar) [1887546] - [iommu] iommu: Add gfp parameter to io_pgtable_ops->map() (Jerry Snitselaar) [1887546] - [iommu] iommu: Mark __iommu_map_sg() as static (Jerry Snitselaar) [1887546] - [iommu] iommu: Tidy up Kconfig for SoC IOMMUs (Jerry Snitselaar) [1887546] - [iommu] iommu: Make some functions static (Jerry Snitselaar) [1887546] - [include] iommu: Move sg_table wrapper out of CONFIG_IOMMU_SUPPORT (Jerry Snitselaar) [1887546] - [powerpc] powerpc/dma: Remove dev->archdata.iommu_domain (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove double zero check (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Rename intel-pasid.h to pasid.h (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add page response ops support (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Report page request faults for guest SVA (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add a helper to get svm and sdev for pasid (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Refactor device_to_iommu() helper (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Disable multiple GPASID-dev bind (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Warn on out-of-range invalidation address (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix devTLB flush for vSVA (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Handle non-page aligned address (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix PASID devTLB invalidation (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove global page support in devTLB flush (Jerry Snitselaar) [1887546] - [include] iommu/vt-d: Enforce PASID devTLB field mask (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove unused IOMMU_SYS_CACHE_ONLY flag (Jerry Snitselaar) [1887546] - [iommu] PCI/ATS: Add pci_pri_supported() to check device or associated PF (Jerry Snitselaar) [1887546] - [pci] PCI: Treat "external-facing" devices themselves as internal (Jerry Snitselaar) [1887546] - [documentation] docs: fix references for DMA*.txt files (Jerry Snitselaar) [1887546] - [dma] dma-contiguous: cleanup dma_alloc_contiguous (Jerry Snitselaar) [1887546] - [dma] dma-debug: use named initializers for dir2name (Jerry Snitselaar) [1887546] - [dma] dma-mapping: add a dma_ops_bypass flag to struct device (Jerry Snitselaar) [1887546] - [dma] dma-mapping: inline the fast path dma-direct calls (Jerry Snitselaar) [1887546] - [dma] dma-mapping: move the remaining DMA API calls out of line (Jerry Snitselaar) [1887546] - [dma] dma-mapping: don't BUG when calling dma_map_resource on RAM (Jerry Snitselaar) [1887546] - [of] of: Allow the iommu-map property to omit untranslated devices (Jerry Snitselaar) [1887546] - [iommu] treewide: Remove uninitialized_var() usage (Jerry Snitselaar) [1887546] - [dma] dma-pool: do not allocate pool memory from CMA (Jerry Snitselaar) [1887546] - [dma] dma-pool: make sure atomic pool suits device (Jerry Snitselaar) [1887546] - [dma] dma-pool: introduce dma_guess_pool() (Jerry Snitselaar) [1887546] - [dma] dma-pool: get rid of dma_in_atomic_pool() (Jerry Snitselaar) [1887546] - [dma] dma-direct: provide function to check physical memory area validity (Jerry Snitselaar) [1887546] - [documentation] docs: move DMA kAPI to Documentation/core-api (Jerry Snitselaar) [1887546] - [dma] dma-mapping: remove dma_mark_declared_memory_occupied (Jerry Snitselaar) [1887546] - [documentation] docs: DMA-API-HOWTO.txt: fix an unmarked code block (Jerry Snitselaar) [1887546] - [documentation] Documentation: DMA-API: fix a function name of max_mapping_size (Jerry Snitselaar) [1887546] - [documentation] docs: DMA-API-HOWTO: add a missing "=" (Jerry Snitselaar) [1887546] - [documentation] Documentation/DMA-API-HOWTO: update dma_mask sections (Jerry Snitselaar) [1887546] - [documentation] Documentation/DMA-ISA-LPC: fix an incorrect reference (Jerry Snitselaar) [1887546] - [documentation] Documentation: DMA-API: fix two typos (Jerry Snitselaar) [1887546] - [dma] dma-mapping: warn when coherent pool is depleted (Jerry Snitselaar) [1887546] - [dma] dma-remap: align the size in dma_common_*_remap() (Jerry Snitselaar) [1887546] - [dma] dma-mapping: DMA_COHERENT_POOL should select GENERIC_ALLOCATOR (Jerry Snitselaar) [1887546] - [dma] dma-direct: add missing set_memory_decrypted() for coherent mapping (Jerry Snitselaar) [1887546] - [dma] dma-direct: check return value when encrypting or decrypting memory (Jerry Snitselaar) [1887546] - [dma] dma-direct: re-encrypt memory if dma_direct_alloc_pages() fails (Jerry Snitselaar) [1887546] - [dma] dma-direct: always align allocation size in dma_direct_alloc_pages() (Jerry Snitselaar) [1887546] - [dma] dma-direct: mark __dma_direct_alloc_pages static (Jerry Snitselaar) [1887546] - [dma] dma-direct: re-enable mmap for !CONFIG_MMU (Jerry Snitselaar) [1887546] - [dma] dma-pool: decouple DMA_REMAP from DMA_COHERENT_POOL (Jerry Snitselaar) [1887546] - [message] scsi: mptfusion: Don't use GFP_ATOMIC for larger DMA allocations (Jerry Snitselaar) [1887546] - [dma] dma-pool: fix too large DMA pools on medium memory size systems (Jerry Snitselaar) [1887546] - [iommu] treewide: replace '---help---' in Kconfig files with 'help' (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Make remove callback message more informative (Jerry Snitselaar) [1887546] - [include] iommu: add generic helper for mapping sgtable objects (Jerry Snitselaar) [1887546] - [dma] dma-contiguous: fix comment for dma_release_from_contiguous (Jerry Snitselaar) [1887546] - [dma] dma-pool: scale the default DMA coherent pool size with memory capacity (Jerry Snitselaar) [1887546] - [x86] x86/mm: unencrypted non-blocking DMA allocations use coherent pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: add pool sizes to debugfs (Jerry Snitselaar) [1887546] - [dma] dma-direct: atomic allocations must come from atomic coherent pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: dynamically expanding atomic pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: add additional coherent pools to map to gfp mask (Jerry Snitselaar) [1887546] - [dma] dma-remap: separate DMA atomic pools from direct remap code (Jerry Snitselaar) [1887546] - [dma] dma-mapping: use vmap insted of reimplementing it (Jerry Snitselaar) [1887546] - [dma] dma-debug: make __dma_entry_alloc_check_leak() static (Jerry Snitselaar) [1887546] - [dma] dma: debug: no need to check return value of debugfs_create functions (Jerry Snitselaar) [1887546] - [dma] dma-debug: Batch dma_debug_entry allocation (Jerry Snitselaar) [1887546] - [dma] dma/debug: Remove dma_debug_resize_entries() (Jerry Snitselaar) [1887546] - [dma] dma-debug: Make leak-like behaviour apparent (Jerry Snitselaar) [1887546] - [dma] dma-debug: Dynamically expand the dma_debug_entry pool (Jerry Snitselaar) [1887546] - [dma] dma-debug: Use pr_fmt() (Jerry Snitselaar) [1887546] - [dma] dma-debug: Expose nr_total_entries in debugfs (Jerry Snitselaar) [1887546] - [dma] dma-debug: fix displaying of dma allocation type (Jerry Snitselaar) [1887546] - [dma] dma-direct: fix data truncation in dma_direct_get_required_mask() (Jerry Snitselaar) [1887546] - [dma] dma-direct: provide a arch_dma_clear_uncached hook (Jerry Snitselaar) [1887546] - [dma] dma-direct: make uncached_kernel_address more general (Jerry Snitselaar) [1887546] - [include] dma-direct: remove the cached_kernel_address hook (Jerry Snitselaar) [1887546] - [dma] dma-direct: consolidate the error handling in dma_direct_alloc_pages (Jerry Snitselaar) [1887546] - [dma] dma-coherent: fix integer overflow in the reserved-memory dma allocation (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix misuse of iommu_domain_identity_map() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Update scalable mode paging structure coherency (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Enable PCI ACS for platform opt in hint (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Set U/S bit in first level page table by default (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Make Intel SVM code 64-bit only (Jerry Snitselaar) [1887546] - [arm64] arm64: Remove dev->archdata.iommu pointer (Jerry Snitselaar) [1887546] - [x86] x86: Remove dev->archdata.iommu pointer (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use dev_iommu_priv_get/set() (Jerry Snitselaar) [1887546] - [iommu] iommu: Allow page responses without PASID (Jerry Snitselaar) [1887546] - [iommu] iommu/iova: Don't BUG on invalid PFNs (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Add helper functions to update domain->pt_root (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Print extended features in one line to fix divergent log levels (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Make amd_iommu_apply_ivrs_quirks() static inline (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move Intel IOMMU driver into subdirectory (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Move AMD IOMMU driver into subdirectory (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove redundant devid checks (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Store dev_data as device iommu private data (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Merge private header files (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove PD_DMA_OPS_MASK (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Consolidate domain allocation/freeing (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Free page-table in protection_domain_free() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Allocate page-table in protection_domain_init() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Let free_pagetable() not rely on domain->pt_root (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Unexport get_dev_data() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Unify format of the printed messages (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove iommu_sva_ops::mm_exit() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [pci] PCI/ATS: Only enable ATS for trusted devices (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Implement iommu_ops->def_domain_type call-back (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Don't reserve implementation defined register space (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: remove set but not used variable 'smmu' (Jerry Snitselaar) [1887546] - [uapi] iommu/virtio: Fix sparse warning (Jerry Snitselaar) [1887546] - [pci] PCI/ATS: Export symbols of PASID functions (Jerry Snitselaar) [1887546] - [iommu] iommu/mediatek: Fix MTK_IOMMU dependencies (Jerry Snitselaar) [1887546] - [iommu] iommu: spapr_tce: Disable compile testing to fix build on book3s_32 config (Jerry Snitselaar) [1887546] - [iommu] iommu: Enable compile testing for some of drivers (Jerry Snitselaar) [1887546] - [x86] x86: Hide the archdata.iommu field behind generic IOMMU_API (Jerry Snitselaar) [1887546] - [iommu] iommu/hyper-v: Constify hyperv_ir_domain_ops (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix compile warning (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: fix a GCC warning (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix pointer cast warnings on 32 bit (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove IOVA handling code from the non-dma_ops path (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove duplicated check in intel_svm_bind_mm() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove redundant IOTLB flush (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add page request draining support (Jerry Snitselaar) [1887546 1847060] - [iommu] iommu/vt-d: Disable non-recoverable fault processing before unbind (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: debugfs: Add support to show inv queue internals (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Multiple descriptors per qi_submit_sync() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Replace intel SVM APIs with generic SVA APIs (Jerry Snitselaar) [1887546 1836578] - [include] iommu/vt-d: Fix compile warning from intel-svm.h (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Report SVA feature with generic flag (Jerry Snitselaar) [1887546 1836578] - [iommu] iommu/vt-d: Add custom allocator for IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Enlightened PASID allocation (Jerry Snitselaar) [1887546 1837167] - [iommu] iommu/vt-d: Add svm/sva invalidate function (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Support flushing more translation cache types (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add bind guest PASID support (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add nested translation helper function (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use a helper function to skip agaw for SL (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move domain helper to header (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove functions that support private domain (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Unify format of the printed messages (Jerry Snitselaar) [1887546] - [iommu] iommu: Introduce guest PASID bind function (Jerry Snitselaar) [1887546] - [iommu] iommu: Introduce cache_invalidate API (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: debugfs: Add support to show page table internals (Jerry Snitselaar) [1887546 1835059] - [iommu] iommu/vt-d: Use iova over first level (Jerry Snitselaar) [1887546 1837160] - [iommu] iommu/vt-d: Update first level super page capability (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Make first level IOVA canonical (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Flush PASID-based iotlb for iova over first level (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Setup pasid entries for iova over first level (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add PASID_FLAG_FL5LP for first-level pasid setup (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add set domain DOMAIN_ATTR_NESTING attr (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Identify domains using first level page table (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Misc macro clean up for SVM (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add build dependency on IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Replace Intel specific PASID allocator with IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/ioasid: Add custom allocators (Jerry Snitselaar) [1887546] - [iommu] iommu: Add I/O ASID allocator (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use right Kconfig option name (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add Kconfig option to enable/disable scalable mode (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Reverse arguments to list_add (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Use accessor functions for iommu private data (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Reject IOMMU page granule larger than PAGE_SIZE (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Fix freeing of incomplete domains (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Build virtio-iommu as module (Jerry Snitselaar) [1887546] - [iommu] iommu: virtio: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Remove unused variable (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Update to most recent specification (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Add event queue (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Add probe request (Jerry Snitselaar) [1887546] - [iommu] iommu: Add virtio-iommu driver (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove duplicate error message (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Fix uninitilized variable warning (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rename IOMMU_QCOM_SYS_CACHE and improve doc (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Restore naming of driver parameter prefix (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Use WRITE_ONCE() when changing validity of an STE (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Improve SMR mask test (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Fix IOVA validation for 32-bit (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Prepare for TTBR1 usage (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise VTCR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rename public #defines under ARM_SMMU_ namespace (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise TCR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Ensure ARM_64_LPAE_S2_TCR_RES1 is unsigned (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Improve attribute handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Support non-coherent stage-2 page tables (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Fix -Wunused-const-variable warning (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Remove useless of_match_ptr() (Jerry Snitselaar) [1887546] - [iommu] drivers/iommu: Initialise module 'owner' field in iommu_device_set_ops() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Update my email address in MODULE_AUTHOR() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Allow building as a module (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Unregister IOMMU and bus ops on device removal (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Allow building as a module (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Support SMMU module probing from the IORT (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Unregister IOMMU and bus ops on device removal (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Prevent forced unbinding of Arm SMMU drivers (Jerry Snitselaar) [1887546] - [iommu] Revert "iommu/arm-smmu: Make arm-smmu explicitly non-modular" (Jerry Snitselaar) [1887546] - [iommu] Revert "iommu/arm-smmu: Make arm-smmu-v3 explicitly non-modular" (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise TTBRn handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise MAIR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify level indexing (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify PGD size handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify start level lookup (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify bounds checks (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise size check (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable: Make selftest gubbins consistently __init (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Avoid pathological RPM behaviour for unmaps (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable: Move some initialization data to .init.rodata (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Report USF more clearly (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove arm_smmu_flush_ops (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Move .tlb_sync method to implementation (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove "leaf" indirection (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove .tlb_inv_range indirection (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm-v7s: Use ias/oas to check the valid iova/pa (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm-v7s: Add paddr_to_iopte and iopte_to_paddr helpers (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Ensure 64-bit I/O accessors are available on 32-bit CPU (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Make private implementation details static (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add context init implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add reset implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add configuration implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Move Secure access quirk to implementation (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: ioremap smmu mmio region before implementation init (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add implementation infrastructure (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rename arm-smmu-regs.h (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract GR0 accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract context bank accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract GR1 accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Get rid of weird "atomic" write (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Split arm_smmu_tlb_inv_range_nosync() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rework cb_base handling (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert context bank registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert GR1 registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert GR0 registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove IOMMU_OF_DECLARE (Jerry Snitselaar) [1887546] - [iommu] iommu: Stop deferring probe at end of initcalls (Jerry Snitselaar) [1887546] - [iommu] iommu: Fix use-after-free in iommu_release_device (Jerry Snitselaar) [1887546] - [dma] dma-mapping: Fix dma_pgprot() for unencrypted coherent pages (Jerry Snitselaar) [1887546] - [x86] x86: Don't let pgprot_modify() change the page encryption bit (Jerry Snitselaar) [1887546] - [x86] x86/PCI: Remove X86_DEV_DMA_OPS (Jerry Snitselaar) [1887546] - [pci] PCI: vmd: Remove dma_map_ops overrides (Jerry Snitselaar) [1887546] - [pci] x86/pci: Clean up usage of X86_DEV_DMA_OPS (Jerry Snitselaar) [1887546] - [x86] x86/Kconfig: Remove the unused X86_DMA_REMAP KConfig symbol (Jerry Snitselaar) [1887546] - [dma] dma-direct: avoid a forward declaration for phys_to_dma (Jerry Snitselaar) [1887546] - [dma] dma-mapping: Add vmap checks to dma_map_single() (Jerry Snitselaar) [1887546] - [x86] x86/platform/uv: Fix UV4 hub revision adjustment (Frank Ramsay) [1908507] - [ata] ahci: Add Intel Rocket Lake PCH-H RAID PCI IDs (Steve Best) [1868308]- [mfd] mfd: intel-lpss: Fix Intel Elkhart Lake LPSS I2C input clock (Steve Best) [1783586] - [mfd] mfd: intel-lpss: Add Intel Elkhart Lake PCH PCI IDs (Steve Best) [1783586] - [i2c] i2c: i801: Add support for Intel Elkhart Lake (Steve Best) [1783586] - [fs] fuse: fix bad inode (Miklos Szeredi) [1906908] - [fs] virtiofs: calculate number of scatter-gather elements accurately (Vivek Goyal) [1783467] - [fs] virtiofs: add logic to free up a memory range (Vivek Goyal) [1783467] - [fs] virtiofs: maintain a list of busy elements (Vivek Goyal) [1783467] - [fs] virtiofs: serialize truncate/punch_hole and dax fault path (Vivek Goyal) [1783467] - [fs] virtiofs: define dax address space operations (Vivek Goyal) [1783467] - [fs] virtiofs: add DAX mmap support (Vivek Goyal) [1783467] - [fs] virtiofs: implement dax read/write operations (Vivek Goyal) [1783467] - [uapi] virtiofs: introduce setupmapping/removemapping commands (Vivek Goyal) [1783467] - [fs] virtiofs: implement FUSE_INIT map_alignment field (Vivek Goyal) [1783467] - [fs] virtiofs: keep a list of free dax memory ranges (Vivek Goyal) [1783467] - [fs] virtiofs: add a mount option to enable dax (Vivek Goyal) [1783467] - [fs] virtiofs: set up virtio_fs dax_device (Vivek Goyal) [1783467] - [fs] virtiofs: get rid of no_mount_options (Vivek Goyal) [1783467] - [fs] virtiofs: provide a helper function for virtqueue initialization (Vivek Goyal) [1783467] - [fs] dax: Create a range version of dax_layout_busy_page() (Vivek Goyal) [1783467] - [dax] dax: Modify bdev_dax_pgoff() to handle NULL bdev (Vivek Goyal) [1783467] - [virtio] virtio: Implement get_shm_region for MMIO transport (Vivek Goyal) [1783467] - [virtio] virtio: Implement get_shm_region for PCI transport (Vivek Goyal) [1783467] - [include] virtio: Add get_shm_region method (Vivek Goyal) [1783467] - [fs] virtiofs: do not use fuse_fill_super_common() for device installation (Vivek Goyal) [1783467] - [uapi] fuse: reserve values for mapping protocol (Vivek Goyal) [1783467] - [fs] virtiofs: Convert virtiofs to use new mount API (Vivek Goyal) [1783467] - [fs] fuse: reject options on reconfigure via fsconfig(2) (Vivek Goyal) [1783467] - [fs] fuse: ignore 'data' argument of mount(..., MS_REMOUNT) (Vivek Goyal) [1783467] - [fs] fuse: use ->reconfigure() instead of ->remount_fs() (Vivek Goyal) [1783467] - [fs] fuse: switch to use errorfc() et.al (Vivek Goyal) [1783467] - [fs] fs_parse: fold fs_parameter_desc/fs_parameter_spec (Vivek Goyal) [1783467] - [fs] fs_parser: remove fs_parameter_description name field (Vivek Goyal) [1783467] - [fs] vfs: subtype handling moved to fuse (Vivek Goyal) [1783467] - [fs] fuse: convert to use the new mount API (Vivek Goyal) [1783467] - [lib] lib/zlib: fix inflating zlib streams on s390 (Philipp Rudo) [1908011] - [scsi] scsi: ibmvfc: Set default timeout to avoid crash during migration (Diego Domingos) [1890710] - [net] Bluetooth: Fix null pointer dereference in hci_event_packet() (Gopal Tiwari) [1921475] - [tools] selftests: fix poll error in udpgro.sh (Hangbin Liu) [1922213] - [net] mptcp: fix length of MP_PRIO suboption (Davide Caratti) [1923156] - [powerpc] powerpc/sstep: Fix array out of bound warning (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/watchpoint: Workaround P10 DD1 issue with VSX-32 byte instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Add testcases for VSX vector paired load/store instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/ppc-opcode: Add encoding macros for VSX vector paired instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Support VSX vector paired storage access instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Cover new VSX instructions under CONFIG_VSX (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Emulate prefixed instructions only when CPU_FTR_ARCH_31 is set (Desnes Augusto Nunes do Rosario) [1908739] - [net] fix setsockopt(SO_REUSEADDR) for MPTCP sockets (Paolo Abeni) [1922500] - [net] net_sched: avoid shift-out-of-bounds in tcindex_set_parms() (Davide Caratti) [1917366] - [net] net_sched: reject silly cell_log in qdisc_get_rtab() (Davide Caratti) [1917366] - [net] sched: prevent invalid Scell_log shift count (Davide Caratti) [1917366] - [net] netem: fix zero division in tabledist (Davide Caratti) [1917366] - [net] protect tcf_block_unbind with block lock (Davide Caratti) [1917366] - [pinctrl] pinctrl: intel: Add Intel Elkhart Lake pin controller support (Steve Best) [1783600] - [fs] dlm: fix invalid cluster name warning (Alexander Aring) [1655771] - [mm] arm64: acpi: Make apei_claim_sea() synchronise with APEI's irq work (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Fix doc warnings in iort.c (Al Stone) [1865698 1851555] - [acpi] ACPI, APEI, Fix error return value in apei_map_generic_address() (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Initialize performance state sysfs attribute (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Support Alder Lake (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Add DMI quirk for Medion Akoya E2228T (Al Stone) [1865698 1851555] - [acpi] ACPI: Fix whitespace inconsistencies (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Drop no longer necessary Acer SW5-012 lid_init_state quirk (Al Stone) [1865698 1851555] - [acpi] ACPI: dock: fix enum-conversion warning (Al Stone) [1865698 1851555] - [acpi] ACPI: utils: remove unreachable breaks (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add missing type casts in GPE register access code (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add ACPI_DPTF Kconfig menu (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Fix participant driver names (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: remove comment regarding string _UID support (Al Stone) [1865698 1851555] - [acpi] ACPI: reboot: Avoid racing after writing to ACPI RESET_REG (Al Stone) [1865698 1851555] - [acpi] ACPI: debug: don't allow debugging when ACPI is disabled (Al Stone) [1865698 1851555] - [dax] ACPI: HMAT: refactor hmat_register_target_device to hmem_register_device (Al Stone) [1865698 1851555] - [acpi] x86/numa: add 'nohmat' option (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200925 Version 20200925 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Remove unnecessary semicolon (Al Stone) [1865698 1851555] - [acpi] ACPICA: Debugger: Add a new command: "ALL " (Al Stone) [1865698 1851555] - [acpi] ACPICA: iASL: Return exceptions for string-to-integer conversions (Al Stone) [1865698 1851555] - [acpi] ACPICA: acpi_help: Update UUID list (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add predefined names found in the SMBus sepcification (Al Stone) [1865698 1851555] - [acpi] ACPICA: Tree-wide: fix various typos and spelling mistakes (Al Stone) [1865698 1851555] - [acpi] ACPICA: Drop the repeated word "an" in a comment (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add support for 64 bit risc-v compilation (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: Flush EC work unconditionally after wakeup (Al Stone) [1865698 1851555] - [acpi] ACPI: button: fix handling lid state changes when input device closed (Al Stone) [1865698 1851555] - [acpi] ACPI: scan: Replace ACPI_DEBUG_PRINT() with pr_debug() (Al Stone) [1865698 1851555] - [acpi] ACPI: memhotplug: Remove 'state' from struct acpi_memory_device (Al Stone) [1865698 1851555] - [acpi] ACPI / extlog: Check for RDMSR failure (Al Stone) [1865698 1851555] - [acpi] node: Add access1 class to represent CPU to memory characteristics (Al Stone) [1865698 1851555] - [acpi] ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 (Al Stone) [1865698 1851555] - [acpi] ACPI: Let ACPI know we support Generic Initiator Affinity Structures (Al Stone) [1865698 1851555] - [acpi] ACPI: Support Generic Initiator only domains (Al Stone) [1865698 1851555] - [acpi] ACPI / NUMA: Add stub function for pxm_to_node() (Al Stone) [1865698 1851555] - [acpi] virtio-mem: Allow to specify an ACPI PXM as nid (Al Stone) [1865698 1851555] - [acpi] ACPI: battery: include linux/power_supply.h (Al Stone) [1865698 1851555] - [acpi] ACPI: wakeup: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Remove leftover ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: tiny-power-button: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: proc: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: Remove unused ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: event: Remove leftover ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: dock: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: debugfs: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: custom_method: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: container: Remove leftover ACPICA debug functionality (Al Stone) [1865698 1851555] - [acpi] ACPI: platform: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: memhotplug: Remove leftover ACPICA debug functionality (Al Stone) [1865698 1851555] - [acpi] ACPI: LPSS: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: cmos_rtc: Remove leftover ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: update kernel-doc line comments (Al Stone) [1865698 1851555] - [acpi] PNP: ACPI: Fix missing-prototypes in acpi_pnp.c (Al Stone) [1865698 1851555] - [acpi] ACPI: configfs: Add missing config_item_put() to fix refcount leak (Al Stone) [1865698 1851555] - [acpi] ACPI: video: use ACPI backlight for HP 635 Notebook (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Clean up header file include statements (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove unnecessary APD_ADDR() macro stub (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove flags from struct apd_device_desc (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Add kerneldoc for properties in struct apd_device_desc (Al Stone) [1865698 1851555] - [acpi] ACPI: Remove side effect of partly creating a node in acpi_get_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: Rename acpi_map_pxm_to_online_node() to pxm_to_online_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: Do not create new NUMA domains from ACPI static tables that are not SRAT (Al Stone) [1865698 1851555] - [acpi] ACPI: Add out of bounds and numa_off protections to pxm_to_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Print more information when acpi_processor_evaluate_cst() fails (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add PCH FIVR participant driver (Al Stone) [1865698 1851555] - [acpi] PCI/ACPI: Add Ampere Altra SOC MCFG quirk (Al Stone) [1865698 1851555] - [acpi] ACPI / APEI: Add a notifier chain for unknown (vendor) CPER records (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Move TPS68470 OpRegion driver to drivers/acpi/pmic/ (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Split out Kconfig and Makefile specific for ACPI PMIC (Al Stone) [1865698 1851555] - [acpi] PCI/ACPI: Tone down missing MCFG message (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Make ACPICA use logical addresses of GPE blocks (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Change the type of acpi_os_map_generic_address() return value (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add support for using logical addresses of GPE blocks (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove the unused inline functions (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Drop the unused @ops of iort_add_device_replay() (Al Stone) [1865698 1851555] - [acpi] ACPI / LPSS: Save Cherry Trail PWM ctx registers only once (at activation) (Al Stone) [1865698 1851555] - [acpi] ACPI / LPSS: Resume Cherry Trail PWM controller in no-irq phase (Al Stone) [1865698 1851555] - [acpi] ACPICA: Introduce special struct type for GPE register addresses (Al Stone) [1865698 1851555] - [acpi] ACPICA: Introduce acpi_hw_gpe_read() and acpi_hw_gpe_write() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Validate GPE blocks at init time (Al Stone) [1865698 1851555] - [acpi] ACPI: Export acpi_get_first_physical_node() to modules (Al Stone) [1865698 1851555] - [kernel] rcu/tree: Export rcu_idle_{enter, exit} to modules (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: fix -Wformat (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Fix build for ARCH_APICTIMER_STOPS_ON_C3 unset (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Take over RCU-idle for C3-BM idle (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Use CPUIDLE_FLAG_TLB_FLUSHED (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Use CPUIDLE_FLAG_TIMER_STOP (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Prevent acpi_release_memory() from returning too early (Al Stone) [1865698 1851555] - [acpi] ACPI: ioremap: avoid redundant rounding to OS page size (Al Stone) [1865698 1851555] - [acpi] ACPI: SoC: APD: Check return value of acpi_dev_get_property() (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Add a fmw property is_raven (Al Stone) [1865698 1851555] - [include] ACPI: APD: Change name from ST to FCH (Al Stone) [1865698 1851555] - [acpi] i2c: designware: Add device HID for Hygon I2C controller (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Add an input ID to acpi_dma_configure() (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove useless PCI bus walk (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_msi_map_rid() PCI agnostic (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_get_device_domain IRQ domain agnostic (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_match_node_callback walk the ACPI namespace for NC (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: remove redundant assignment to variable rc (Al Stone) [1865698 1851555] - [acpi] ACPI: NUMA: Remove the useless 'node >= MAX_NUMNODES' check (Al Stone) [1865698 1851555] - [acpi] ACPI: NUMA: Remove the useless sub table pointer check (Al Stone) [1865698 1851555] - [acpi] ACPI: tables: Remove the duplicated checks for acpi_parse_entries_array() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200717 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Do not increment operation_region reference counts for field units (Al Stone) [1865698 1851555] - [acpi] ACPICA: Replace one-element array with flexible-array (Al Stone) [1865698 1851555] - [acpi] ACPI: acpi_pad: initialize preferred_cpu (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Clean up the removal of unused memory mappings (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Use deferred unmapping in acpi_os_unmap_iomem() (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Use deferred unmapping in acpi_os_unmap_generic_address() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Preserve memory opregion mappings (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Implement deferred unmapping of ACPI memory (Al Stone) [1865698 1851555] - [acpi] ACPI: Use fallthrough pseudo-keyword (Al Stone) [1865698 1851555] - [acpi] acpi: thermal: Don't call thermal_zone_device_is_enabled() (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Fix Tiger Lake ACPI device ID (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add battery participant for TigerLake (Al Stone) [1865698 1851555] - [acpi] ACPI: tables: avoid relocations for table signature array (Al Stone) [1865698 1851555] - [acpi] ACPI: PAD: Eliminate usage of uninitialized_var() macro (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: add newlines when printing module parameters (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: add newline when printing 'ec_event_clearing' module parameter (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: Fix pm_profile_attr type (Al Stone) [1865698 1851555] - [acpi] ACPI: property: use cached name in acpi_fwnode_get_named_child_node() (Al Stone) [1865698 1851555] - [acpi] sched,acpi_pad: Convert to sched_set_fifo*() (Al Stone) [1865698 1851555] - [acpi] ACPI: PM: Avoid using power resources if there are none for D0 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200528 (Al Stone) [1865698 1851555] - [acpi] ACPICA: iASL: add new OperationRegion subtype keyword PlatformRtMechanism (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: Fix reference count leak in acpi_cppc_processor_probe() (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: Fix reference count leak in acpi_sysfs_add_hotplug_profile() (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: use correct trigger type field in _Exx / _Lxx handling (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove the unused __get_pci_rid() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: s2idle: Extend GPE dispatching debug message (Al Stone) [1865698 1851555] - [acpi] ACPI: PM: s2idle: Print type of wakeup debug messages (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add battery participant driver (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Additional sysfs attributes for power participant driver (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Use native backlight on Acer TravelMate 5735Z (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Fix PMCG node single ID mapping handling (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Kick the memory_failure() queue for synchronous errors (Al Stone) [1865698 1851555] - [mm] mm/memory-failure: Add memory_failure_queue_kick() (Al Stone) [1865698 1851555] - [acpi] ACPI: IORT: Add comments for not calling acpi_put_table() (Al Stone) [1865698 1851555] - [acpi] ACPI: GTDT: Put GTDT table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Add i2c address for thermal control (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: add support for _Exx / _Lxx handler methods (Al Stone) [1865698 1851555] - [acpi] ACPI: Delete unused proc filename macros (Al Stone) [1865698 1851555] - [acpi] ACPI: IORT: Add extra message "applying workaround" for off-by-1 issue (Al Stone) [1865698 1851555] - [acpi] ACPI: utils: Add acpi_evaluate_reg() helper (Al Stone) [1865698 1851555] - [acpi] ACPI: debug: Make two functions static (Al Stone) [1865698 1851555] - [acpi] ACPI: sleep: Put the FACS table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: scan: Put SPCR and STAO table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Put the ACPI table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the HEST table for error path (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the error record serialization table for error path (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the error injection table for error path and module exit (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the boot error record table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI: watchdog: Put the watchdog action table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI: LPIT: Put the low power idle table after using it (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200430 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix required parameters for _NIG and _NIH (Al Stone) [1865698 1851555] - [acpi] ACPICA: Dispatcher: add status checks (Al Stone) [1865698 1851555] - [acpi] ACPICA: Disassembler: ignore AE_ALREADY_EXISTS status when parsing create operators (Al Stone) [1865698 1851555] - [acpi] ACPICA: Move acpi_gbl_next_cmd_num definition to acglobal.h (Al Stone) [1865698 1851555] - [acpi] ACPICA: Make acpi_protocol_lengths static (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: work around num_ids ambiguity (Al Stone) [1865698 1851555] - [acpi] Revert "ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map()" (Al Stone) [1865698 1851555] - [pci] PCI: Constify struct pci_ecam_ops (Al Stone) [1865698 1851555] - [acpi] PM: ACPI: Output correct message on target power state (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: Make some symbols static (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: idle: Allow probing on platforms with one ACPI C-state (Al Stone) [1865698 1851555] - [documentation] PM: sleep: core: Rename DPM_FLAG_LEAVE_SUSPENDED (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rename dev_pm_smart_suspend_and_suspended() (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rename dev_pm_may_skip_resume() (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rework the power.may_skip_resume handling (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Do not skip callbacks in the resume phase (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Switch back to async_schedule_dev() (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Fold functions into their callers (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Simplify the SMART_SUSPEND flag handling (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Use built-in RCU list checking (Al Stone) [1865698 1851555] - [base] PM: core: Fix handling of devices deleted during system-wide resume (Al Stone) [1865698 1851555] - [base] PM: sleep: Drop dpm_noirq_begin() and dpm_noirq_end() (Al Stone) [1865698 1851555] - [kernel] PM: sleep: Integrate suspend-to-idle with generig suspend flow (Al Stone) [1865698 1851555] - [base] PM: sleep: Drop dev_pm_skip_next_resume_phases() (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Drop no longer necessary Asus T200TA lid_init_state quirk (Al Stone) [1865698 1851555] - [acpi] ACPI/PCI: pci_link: use extended_irq union member when setting ext-irq shareable (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Fix up fast path check in acpi_ec_add() (Al Stone) [1865698 1851555] - [x86] ACPI, x86/boot: make acpi_nobgrt static (Al Stone) [1865698 1851555] - [x86] acpi/x86: add a kernel parameter to disable ACPI BGRT (Al Stone) [1865698 1851555] - [acpi] x86: ACPI: fix CPU hotplug deadlock (Al Stone) [1865698 1851555] - [x86] acpi/x86: ignore unspecified bit positions in the ACPI global lock field (Al Stone) [1865698 1851555] - [x86] x86/acpi: make "asmlinkage" part first thing in the function definition (Al Stone) [1865698 1851555] - [x86] x86/ACPI/sleep: Move acpi_get_wakeup_address() into sleep.c, remove from (Al Stone) [1865698 1851555] - [x86] x86/ACPI/sleep: Remove an unnecessary include of asm/realmode.h (Al Stone) [1865698 1851555] - [x86] x86/efi: Explicitly include realmode.h to handle RM trampoline quirk (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Use native backlight on Acer Aspire 5783z (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version 20200326 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fixes for acpiExec namespace init file (Al Stone) [1865698 1851555] - [acpi] ACPICA: WSMT: Fix typo, no functional change (Al Stone) [1865698 1851555] - [acpi] ACPICA: utilities: fix sprintf() (Al Stone) [1865698 1851555] - [acpi] ACPICA: acpiexec: remove redeclaration of acpi_gbl_db_opt_no_region_support (Al Stone) [1865698 1851555] - [acpi] ACPICA: Change PlatformCommChannel ASL keyword to PCC (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix IVRS IVHD type 10h reserved field name (Al Stone) [1865698 1851555] - [acpi] ACPICA: Implement IVRS IVHD type 11h parsing (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a typo in a comment field (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200214 (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: clean up acpi_get_psd_map() (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: Use scnprintf() for avoiding potential buffer overflow (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Use scnprintf() for avoiding potential buffer overflow (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Eliminate EC_FLAGS_QUERY_HANDSHAKE (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Do not clear boot_ec_is_ecdt in acpi_ec_add() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Simplify acpi_ec_ecdt_start() and acpi_ec_init() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Consolidate event handler installation code (Al Stone) [1865698 1851555] - [acpi] ACPI: list_for_each_safe() -> list_for_each_entry_safe() (Al Stone) [1865698 1851555] - [acpi] ACPI: video: remove redundant assignments to variable result (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Add missing __acquires/__releases annotations (Al Stone) [1865698 1851555] - [acpi] ACPI / battery: Cleanup Lenovo Ideapad Miix 320 DMI table entry (Al Stone) [1865698 1851555] - [acpi] ACPI / AC: Cleanup DMI quirk table (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Use fast path in acpi_ec_add() for DSDT boot EC (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Simplify acpi_ec_add() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Drop AE_NOT_FOUND special case from ec_install_handlers() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Avoid passing redundant argument to functions (Al Stone) [1865698 1851555] - [include] ACPI: NUMA: Up-level "map to online node" functionality (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a couple of typos (Al Stone) [1865698 1851555] - [acpi] ACPICA: use acpi_size instead of u32 for prefix_path_length (Al Stone) [1865698 1851555] - [acpi] ACPICA: cast length arguement to acpi_ns_build_normalized_path() as u32 (Al Stone) [1865698 1851555] - [acpi] ACPICA: cast the result of the pointer difference to u32 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Table Manager: Update comments in a function header (Al Stone) [1865698 1851555] - [acpi] ACPICA: Enable sleep button on ACPI legacy wake (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a comment "enable" fixed events -> "disable" all fixed events (Al Stone) [1865698 1851555] - [acpi] ACPICA: ASL-ASL+ converter: make root file a parameter for cv_init_file_tree (Al Stone) [1865698 1851555] - [acpi] ACPICA: ASL-ASL+ converter: remove function parameters from cv_init_file_tree() (Al Stone) [1865698 1851555] - [acpi] ACPI: Add new tiny-power-button driver to directly signal init (Al Stone) [1865698 1851555] - [acpi] ACPI: button: move HIDs to acpi/button.h (Al Stone) [1865698 1851555] - [acpi] ACPI: treewide: remove redundant IS_ERR() before error code check (Al Stone) [1865698 1851555] - [dma] dmaengine: idma64: Use actual device for DMA transfers (Steve Best) [1784118] - [platform] platform/x86: dell-smbios-wmi: Correct a memory leak (David Arcari) [1898516] - [x86] x86/{mce,mm}: Unmap the entire page if the whole page is affected and poisoned (Aristeu Rozanski) [1850800]- [x86] kvm: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: use kvm_complete_insn_gp in emulating RDMSR/WRMSR (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: remove bogus #GP injection (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: de-allocate svm_cpu_data for all cpus in svm_cpu_uninit() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Fix split-irqchip vs interrupt injection window request (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: fix error return code in svm_create_vcpu() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Fix offset computation bug in __sev_dbg_decrypt() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use cpuid to determine max gfn (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: mmu: Fix SPTE encoding of MMIO generation upper half (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nvmx: Sync unsync'd vmcs02 state to vmcs12 on migration (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: tracing: Fix unmatched kvm_entry and kvm_exit events (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: documentation: Update description of KVM_{GET, CLEAR}_DIRTY_LOG (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: get smi pending status correctly (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in intel_arch_events[] (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Add more protection against undefined behavior in rsvd_bits() (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: Forbid the use of tagged userspace addresses for memslots (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: allow KVM_REQ_GET_NESTED_STATE_PAGES outside guest mode for VMX (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: cancel KVM_REQ_GET_NESTED_STATE_PAGES on nested vmexit (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: mark vmcb as dirty when forcingly leaving the guest mode (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: correctly restore nested_run_pending on migration (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Clarify TDP MMU page list invariants (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Ensure TDP MMU roots are freed after yield (Paolo Bonzini) [1904054 1906893 1904128] - [security] apparmor: remove duplicate macro list_entry_is_head() (Paolo Bonzini) [1904054 1906893 1904128] - [kernel] linux/list.h: add a macro to test if entry is pointing to the head (Paolo Bonzini) [1904054 1906893 1904128] - [virt] kvm: check tlbs_dirty directly (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: change in pv_eoi_get_pending() to make code more readable (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: fix shift out of bounds reported by UBSAN (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Optimize not-present/MMIO SPTE check in get_mmio_spte() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use raw level to index into MMIO walks' sptes array (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Get root level from walkers when retrieving MMIO SPTE (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use -1 to flag an undefined spte in get_mmio_spte() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Remove the call to sev_platform_status() during setup (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Don't flush cache if hardware enforces cache coherency across encryption domains (Paolo Bonzini) [1904054 1906893 1904128] - [x86] cpu: Add hardware-enforced cache coherency as a CPUID feature (Paolo Bonzini) [1904054 1906893 1904128] - [x86] Remove X86_FEATURE_MFENCE_RDTSC (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm/vmx: Use TEST REG, REG instead of CMP $0, REG in vmenter.S (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: ignore SIPIs that are received while not in wait-for-sipi state (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: set fixed bits by hand (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Add TDP MMU SPTE changed trace point (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Add existing trace points to TDP MMU (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: check CR4 changes against vcpu->arch (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: adjust SEV for commit 7e8e6eed75e (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Move asid to vcpu_svm (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: remove unused macro HV_CLOCK_SIZE (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Sink cpuid update into vendor-specific set_cr4 functions (Paolo Bonzini) [1904054 1906893 1904128] - [virt] kvm: remove kvm_clear_guest_page (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Don't track dirty for KVM_SET_[TSS_ADDR|IDENTITY_MAP_ADDR] (Paolo Bonzini) [1904054 1906893 1904128] - [tools] kvm: selftests: test KVM_GET_SUPPORTED_HV_CPUID as a system ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: hyper-v: allow KVM_GET_SUPPORTED_HV_CPUID as a system ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: emulate wait-for-SIPI and SIPI-VMExit (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: fix apic_accept_events vs check_nested_events (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Return bool instead of int for CR4 and SREGS validity checks (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Move vendor CR4 validity check to dedicated kvm_x86_ops hook (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Drop VMXE check from svm_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: vmx: Drop explicit 'nested' check from vmx_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: vmx: Drop guest CPUID check for VMXE in vmx_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [netdrv] net/mlx5e: Update max_opened_tc also when channels are closed (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Fix leak upon failure of rule creation (Alaa Hleihel) [1918379 1914766] - [netdrv] net/mlx5: Fix function calculation for page trees (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Allow creating all QPs even when non RDMA profile is used (Alaa Hleihel) [1918379] - [netdrv] mlx5: Mark BlueField-3 as unsupported device (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Enable host PF HCA after eswitch is initialized (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: Rename peer_pf to host_pf (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: Make API mlx5_core_is_ecpf accept const pointer (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: simplify the return expression of mlx5_ec_init() (Alaa Hleihel) [1918379] - [infiniband] IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Use strict get/set operations for obj_id (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation (Alaa Hleihel) [1918379] - [include] net/mlx5: Expose ifc bits for query modify header (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: CT: Fix incorrect removal of tuple_nat_node from nat rhashtable (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Revert parameters on errors when changing MTU and LRO state without reset (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Revert parameters on errors when changing trust state without reset (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Correctly handle changing the number of queues when the interface is down (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Fix CT rule + encap slow path offload and deletion (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Maintain separate page trees for ECPF and PF functions (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Fix IPSEC stats (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Reduce tc unsupported key print level (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: free page before return (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: E-switch, Fix rate calculation for overflow (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Fix memory leak on flow table creation error flow (Alaa Hleihel) [1918379] - [infiniband] Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Fix wrong free of blue flame register on error (Alaa Hleihel) [1918379] - [infiniband] IB/mlx5: Fix error unwinding when set_has_smi_cap fails (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Add missing capability check for uplink follow (Alaa Hleihel) [1918379] - [netdrv] iavf: Use kzalloc for allocating only one thing (Stefan Assmann) [1838735] - [netdrv] iavf: fix double-release of rtnl_lock (Stefan Assmann) [1838735] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Stefan Assmann) [1838735] - [netdrv] iavf: Fix updating statistics (Stefan Assmann) [1838735] - [netdrv] iavf: fix error return code in iavf_init_get_resources() (Stefan Assmann) [1838735] - [netdrv] ethernet/intel: Convert fallthrough code comments (Stefan Assmann) [1838735] - [netdrv] net/intel: remove driver versions from Intel drivers (Stefan Assmann) [1838735] - [net] Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (Gopal Tiwari) [1916057] - [fs] fs/fs-writeback.c: fix kernel-doc warning (Waiman Long) [1918047] - [include] memcg: only record foreign writebacks with dirty pages when memcg is not disabled (Waiman Long) [1918047] - [trace] writeback: don't access page->mapping directly in track_foreign_dirty TP (Waiman Long) [1918047] - [fs] writeback: add tracepoints for cgroup foreign writebacks (Waiman Long) [1918047] - [mm] writeback, memcg: Implement foreign dirty flushing (Waiman Long) [1918047] - [mm] mm: remove the account_page_dirtied export (Waiman Long) [1918047] - [fs] writeback, memcg: Implement cgroup_writeback_by_id() (Waiman Long) [1918047] - [mm] writeback: Separate out wb_get_lookup() from wb_get_create() (Waiman Long) [1918047] - [include] bdi: Add bdi->id (Waiman Long) [1918047] - [mm] mm/page-writeback: introduce tracepoint for wait_on_page_writeback() (Waiman Long) [1918047] - [fs] kernfs: fix barrier usage in __kernfs_new_node() (Waiman Long) [1918047] - [fs] kernfs: Allocating memory for kernfs_iattrs with kmem_cache (Waiman Long) [1918047] - [fs] fs: Convert writeback to XArray (Waiman Long) [1918047] - [mm] mm: Convert page-writeback to XArray (Waiman Long) [1918047] - [mm] mm/filemap: add missing mem_cgroup_uncharge() to __add_to_page_cache_locked() (Waiman Long) [1917681] - [mm] mm/slub: fix panic in slab_alloc_node() (Oleksandr Natalenko) [1921056] - [net] xfrm: interface: fix the priorities for ipip and ipv6 tunnels (Sabrina Dubroca) [1923269] - [net] netfilter: ipset: fix shift-out-of-bounds in htable_bits() (Antoine Tenart) [1918684] - [net] tcp: refine tcp_pacing_delay() for very low pacing rates (Antoine Tenart) [1905897] - [net] ensure correct skb->tstamp in various fragmenters (Antoine Tenart) [1905897] - [net] tcp: repaired skbs must init their tso_segs (Antoine Tenart) [1905897] - [net] tcp: address problems caused by EDT misshaps (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: ensure maxrate fq parameter applies to EDT flows (Antoine Tenart) [1905897] - [net] tcp: refine tcp_tso_should_defer() after EDT adoption (Antoine Tenart) [1905897] - [net] tcp_bbr: update comments to reflect pacing_margin_percent (Antoine Tenart) [1905897] - [net] tcp: add tcp_reset_xmit_timer() helper (Antoine Tenart) [1905897] - [net] tcp: fix TCP_REPAIR xmit queue setup (Antoine Tenart) [1905897] - [net] tcp_bbr: adjust TCP BBR for departure time pacing (Antoine Tenart) [1905897] - [net] tcp_bbr: fix typo in bbr_pacing_margin_percent (Antoine Tenart) [1905897] - [net] tcp: optimize tcp internal pacing (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: no longer use skb_is_tcp_pure_ack() (Antoine Tenart) [1905897] - [net] tcp: mitigate scheduling jitter in EDT pacing model (Antoine Tenart) [1905897] - [net] tcp: do not change tcp_wstamp_ns in tcp_mstamp_refresh (Antoine Tenart) [1905897] - [net] tcp/fq: move back to CLOCK_MONOTONIC (Antoine Tenart) [1905897] - [net] tcp: switch tcp_internal_pacing() to tcp_wstamp_ns (Antoine Tenart) [1905897] - [net] tcp: switch tcp and sch_fq to new earliest departure time model (Antoine Tenart) [1905897] - [net] tcp: switch internal pacing timer to CLOCK_TAI (Antoine Tenart) [1905897] - [net] tcp: provide earliest departure time in skb->tstamp (Antoine Tenart) [1905897] - [net] tcp: add tcp_wstamp_ns socket field (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: switch to CLOCK_TAI (Antoine Tenart) [1905897] - [net] tcp: introduce tcp_skb_timestamp_us() helper (Antoine Tenart) [1905897] - [net] tcp: switch tcp_clock_ns() to CLOCK_TAI base (Antoine Tenart) [1905897] - [drm] drm/nouveau/disp/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/dmaobj/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/gpio/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/bar/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/mmu/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/timer/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/fb/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/imem/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/privring/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/mc/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/devinit/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/bios/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/pci/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/core: recognise GA10 (Ben Skeggs) [1916583] - [drm] drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 (Ben Skeggs) [1916583] - [drm] drm/nouveau/mmu: fix vram heap sizing (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gk110-: disable hw-initiated dpcd reads (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gk110: split out from i2c/gk104 (Ben Skeggs) [1916583] - [drm] drm/nouveau/privring: ack interrupts the same way as RM (Ben Skeggs) [1916583] - [drm] drm/nouveau/bios: fix issue shadowing expansion ROMs (Ben Skeggs) [1916583] - [netdrv] net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: Fix two double free cases (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: ethtool, Fix restriction of autoneg with 56G (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: In skb build skip setting mark in switchdev mode (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: E-Switch, fix changing vf VLANID (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: Fix SWP offsets when vlan inserted by driver (Alaa Hleihel) [1899457 1819580] - [netdrv] net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: Check if lag is supported before creating one (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Fix MR cache memory leak (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: Fix passing zero to 'PTR_ERR' (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: remove unnecessary memset (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Assign dev to DM MR (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Remove mlx5_ib_mr->npages (Alaa Hleihel) [1899457] - [documentation] scsi: fc: Update documentation of sysfs nodes for FPIN stats (Ewan Milne) [1859967] - [scsi] scsi: fc: Add mechanism to update FPIN signal statistics (Ewan Milne) [1859967] - [scsi] scsi: fc: Parse FPIN packets and update statistics (Ewan Milne) [1859967] - [scsi] scsi: fc: Add FPIN statistics to fc_host and fc_rport objects (Ewan Milne) [1859967] - [uapi] scsi: fc: Update formal FPIN descriptor definitions (Ewan Milne) [1859967] - [scsi] scsi: smartpqi: Update version to 1.2.16-012 (Don Brace) [1890727 1889844] - [scsi] scsi: smartpqi: Correct pqi_sas_smp_handler busy condition (Don Brace) [1890727 1889844] - [scsi] scsi: smartpqi: Correct driver removal with HBA disks (Don Brace) [1890727 1889844] - [target] scsi: target: Fix XCOPY NAA identifier lookup (Maurizio Lombardi) [1900463] {CVE-2020-28374} - [x86] perf/x86/intel/uncore: Add Comet Lake support (Michael Petlan) [1873271]- [net] bridge: Fix a warning when del bridge sysfs (Davide Caratti) [1917518] - [net] bridge: Avoid infinite loop when suppressing NS messages with invalid options (Davide Caratti) [1917518] - [net] bridge: fix stale eth hdr pointer in br_dev_xmit (Davide Caratti) [1917518] - [net] SUNRPC: Handle 0 length opaque XDR object data properly (Dave Wysochanski) [1906400] - [net] SUNRPC: Move simple_get_bytes and simple_get_netobj into private header (Dave Wysochanski) [1906400] - [block] nbd: make the config put is called before the notifying the waiter (Ming Lei) [1743857] - [block] nbd: restore default timeout when setting it to zero (Ming Lei) [1743857] - [kernel] rcu/tree: Defer kvfree_rcu() allocation to a clean context (Waiman Long) [1922453] - [kernel] cgroup: Fix memory leak when parsing multiple source parameters (Waiman Long) [1922453] - [kernel] cpuset: fix race between hotplug work and later CPU offline (Waiman Long) [1922453] - [kernel] cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in ptrace_stop() (Waiman Long) [1922453] - [kernel] cgroup: freezer: fix frozen state inheritance (Waiman Long) [1922453] - [kernel] locking/lockdep: Cure noinstr fail (Waiman Long) [1922453] - [kernel] tick/nohz: Narrow down noise while setting current task's tick dependency (Waiman Long) [1922453] - [fs] fs: Kill DCACHE_DONTCACHE dentry even if DCACHE_REFERENCED is set (Eric Sandeen) [1921903] - [fs] fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode() (Eric Sandeen) [1921903] - [netdrv] ice: update dev_addr in ice_set_mac_address even if HW filter exists (Jonathan Toppins) [1879318] - [tools] libbpf: Fix uninitialized variable in btf_parse_type_sec (Jiri Olsa) [1922197] - [tools] libbpf: Support BTF loading and raw data output in both endianness (Jiri Olsa) [1922197] - [tools] selftests/bpf: Test BTF writing APIs (Jiri Olsa) [1922197] - [tools] libbpf: Add btf__str_by_offset() as a more generic variant of name_by_offset (Jiri Olsa) [1922197] - [tools] libbpf: Add BTF writing APIs (Jiri Olsa) [1922197] - [tools] libbpf: Add btf__new_empty() to create an empty BTF object (Jiri Olsa) [1922197] - [tools] libbpf: Allow modification of BTF and add btf__add_str API (Jiri Olsa) [1922197] - [tools] libbpf: Extract generic string hashing function for reuse (Jiri Olsa) [1922197] - [tools] libbpf: Generalize common logic for managing dynamically-sized arrays (Jiri Olsa) [1922197] - [tools] libbpf: Remove assumption of single contiguous memory for BTF data (Jiri Olsa) [1922197] - [tools] libbpf: Refactor internals of BTF type index (Jiri Olsa) [1922197] - [tools] libbpf: Remove any use of reallocarray() in libbpf (Jiri Olsa) [1922197] - [tools] libbpf: Clean up and improve CO-RE reloc logging (Jiri Olsa) [1922197] - [tools] libbpf: Improve error logging for mismatched BTF kind cases (Jiri Olsa) [1922197] - [scsi] scsi: qla2xxx: Fix mailbox Ch erroneous error (Nilesh Javali) [1894578] - [sound] ALSA: ASoC: Intel: tgl: remove sof_fw_filename set for tgl_3_in_1_default (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: allow soundwire use desc->default_fw_filename (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E (Jaroslav Kysela) [1783462] - [sound] ALSA: hda: intel-dsp-config: add PCI id for TGL-H (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Properly unregister DAI on removal (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Add missing size check (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Fix wrong size check (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Simplify remove_widget function (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove empty functions (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Change allocations to resource managed (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Unify all device references (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove unused functions from topology API (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98926: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98925: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98926: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98925: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max9867: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: codecs: max98373-sdw: align regmap use with other codecs (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98371: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98390: Fix error codes in max98390_dsm_init() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98371: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98095: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98373: don't access volatile registers in bias level off (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98090: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: pcm: DRAIN support reactivation (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt711: mutex between calibration and power state changes (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt711: remove warnings (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt5660: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: codecs: rt*.c: remove useless pointer cast (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015p: delay 300ms after SDB pulling high for calibration (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015p: move SDB control from trigger to DAPM (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: check the return value of regmap_read during i2c probe (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: modification for calibration to get better performance (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: support TDM slot configuration (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: qcom: Fix build failure when slimbus is module (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: master: use pm_runtime_set_active() on add (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: intel: fix another unused-function warning (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: only clear valid DPN interrupts (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: only clear valid DP0 interrupts (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: registers: add definitions for clearable interrupt fields (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: reset slave_notify status at each loop (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: add comments to explain interrupt loop filter (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: SDCA: detect sdca_cascade interrupt (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: update TDM slot_width (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for tgl_rt1011_rt5682 (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: add dpcm_capture flag for speaker_smart_amp (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add quirk for Dooly (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for cml_rt1015_rt5682 (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: sof_sdw: add quirk for new TigerLake-SDCA device (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: add hw specific PCM constraints (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: loader: do not warn about unknown firmware headers (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove multistep topology loading (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: sof-audio: remove goto used for force-nocodec support (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ops: modify the signature of stall op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: topology: remove const in sizeof() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: use inclusive language for bclk and fsync (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: use inclusive language for bclk and fsync (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ops: add parse_platform_ext_manifest() op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: relax PCM period and buffer size constraints (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: nocodec: modify DAI link definitions (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: trace: Add runtime trace filtering mechanism (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Add `memory_info` file to debugfs (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Change section comment for SOF_IPC_TEST_ (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Improve code alignment in header.h (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: IPC: fix implicit type overflow (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ext_manifest: Parse firmware config dictionary (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: fix the condition passed to sof_dev_dbg_or_err (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: modify the SOF_DBG flags (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated status dump (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ext_manifest: parse cavs extra config data elem (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: define parse_platform_ext_manifest op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: control: override volume info callback (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: control: remove const in sizeof() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Add .prepare/.complete callbacks (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Activate runtime PM with SOF OF device (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: add missing ret=0 at soc_pcm_open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: ignore un-needed mutex_unlock() case on soc_pcm_open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: remove unneeded dev_err() for snd_soc_component_module/open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: remove unneeded dev_err() for snd_soc_dai_startup() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: add soc_pcm_clean() and call it from soc_pcm_open/close() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-link: add mark for snd_soc_link_startup/shutdown() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-dai: add mark for snd_soc_dai_startup/shutdown() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-component: add mark for snd_soc_pcm_component_pm_runtime_get/put() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-component: add mark for soc_pcm_components_open/close() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: KMB: Fix S24_LE configuration (Jaroslav Kysela) [1783462] - [sound] ALSA: ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled clock (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt5682: change SAR voltage threshold (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: increase the time to detect BCLK (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: add delay to fix pop noise from speaker (Jaroslav Kysela) [1783462] - [powerpc] powerpc/tm: Avoid machine crash on rt_sigreturn() (Gustavo Duarte) [1860550] - [net] udp: Prevent reuseport_select_sock from reading uninitialized socks (Guillaume Nault) [1917953] - [net] flow_offload: Fix memory leak for indirect flow block (Guillaume Nault) [1917953] - [net] sock: set sk_err to ee_errno on dequeue from errq (Guillaume Nault) [1917953] - [net] devlink: Make sure devlink instance and port are in same net namespace (Guillaume Nault) [1917953] - [net] devlink: Hold rtnl lock while reading netdev attributes (Guillaume Nault) [1917953] - [net] devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill() (Guillaume Nault) [1917953] - [net] tipc: fix NULL deref in tipc_link_xmit() (Xin Long) [1918657] - [net] tipc: prevent possible null deref of link (Xin Long) [1918657] - [net] tipc: fix incompatible mtu of transmission (Xin Long) [1918657] - [net] tipc: fix memory leak in tipc_topsrv_start() (Xin Long) [1918657] - [net] tipc: add stricter control of reserved service types (Xin Long) [1918657] - [tools] selftests/bpf/test_offload.py: Filter bpftool internal map when counting maps (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Reset ethtool features after failed setting (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Fix expected case of extack messages (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Only check verifier log on verification fails (Jiri Benc) [1882709] - [netdrv] netdevsim: Add debugfs toggle to reject BPF programs in verifier (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Remove check for program load flags match (Jiri Benc) [1882709] - [net] xdp: Remove the xdp_attachment_flags_ok() callback (Jiri Benc) [1882709] - [net] net, xsk: Avoid taking multiple skbuff references (Jiri Benc) [1882709] - [net] increment xmit_recursion level in dev_direct_xmit() (Jiri Benc) [1882709] - [kernel] usermodehelper: reset umask to default before executing user process (Jiri Benc) [1882709] - [net] xsk: Do not discard packet when NETDEV_TX_BUSY (Jiri Benc) [1882709] - [net] xsk: Fix number of pinned pages/umem size discrepancy (Jiri Benc) [1882709] - [include] netdevice.h: fix xdp_state kernel-doc warning (Jiri Benc) [1882709] - [net] bpf: xdp: Fix XDP mode when no mode flags specified (Jiri Benc) [1882709] - [net] bpf: Fix XDP FD-based attach/detach logic around XDP_FLAGS_UPDATE_IF_NOEXIST (Jiri Benc) [1882709] - [kernel] add a kernel_wait helper (Jiri Benc) [1882709] - [tools] selftests/bpf: Add link detach tests for cgroup, netns, and xdp bpf_links (Jiri Benc) [1882709] - [net] bpf: Add support for forced LINK_DETACH command (Jiri Benc) [1882709] - [kernel] bpf: Fix build without CONFIG_NET when using BPF XDP link (Jiri Benc) [1882709] - [net] xdp: Prevent kernel-infoleak in xsk_getsockopt() (Jiri Benc) [1882709] - [net] udp, bpf: Ignore connections in reuseport group after BPF sk lookup (Jiri Benc) [1882709] - [net] Revert "net: optimize the sockptr_t for unified kernel/user address spaces" (Jiri Benc) [1882709] - [net] improve the user pointer check in init_user_sockptr (Jiri Benc) [1882709] - [include] net: remove sockptr_advance (Jiri Benc) [1882709] - [include] net: make sockptr_is_null strict aliasing safe (Jiri Benc) [1882709] - [net] optimize the sockptr_t for unified kernel/user address spaces (Jiri Benc) [1882709] - [net] bpfilter: switch bpfilter_ip_set_sockopt to sockptr_t (Jiri Benc) [1882709] - [net] switch copy_bpf_fprog_from_user to sockptr_t (Jiri Benc) [1882709] - [include] net: add a new sockptr_t type (Jiri Benc) [1882709] - [net] bpfilter: reject kernel addresses (Jiri Benc) [1882709] - [net] bpfilter: split __bpfilter_process_sockopt (Jiri Benc) [1882709] - [net] bpfilter: fix up a sparse annotation (Jiri Benc) [1882709] - [net] udp: Don't discard reuseport selection when group has connections (Jiri Benc) [1882709] - [net] bpf, xdp: Remove XDP_QUERY_PROG and XDP_QUERY_PROG_HW XDP commands (Jiri Benc) [1882709] - [tools] selftests/bpf: Add BPF XDP link selftests (Jiri Benc) [1882709] - [net] bpf: Implement BPF XDP link-specific introspection APIs (Jiri Benc) [1882709] - [net] bpf, xdp: Implement LINK_UPDATE for BPF XDP link (Jiri Benc) [1882709] - [net] bpf, xdp: Add bpf_link-based XDP attachment API (Jiri Benc) [1882709] - [net] bpf, xdp: Extract common XDP program attachment logic (Jiri Benc) [1882709] - [net] bpf, xdp: Maintain info on attached XDP BPF programs in net_device (Jiri Benc) [1882709] - [kernel] bpf, netns: Fix build without CONFIG_INET (Jiri Benc) [1882709] - [net] udp6: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] udp6: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] udp: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] udp: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] ipv6: remove unused arg exact_dif in compute_score (Jiri Benc) [1882709] - [net] ipv4: remove unused arg exact_dif in compute_score (Jiri Benc) [1882709] - [net] udp: Remove unused variable/function (exact_dif) (Jiri Benc) [1882709] - [net] udp: Remove unused parameter (exact_dif) (Jiri Benc) [1882709] - [net] udp: only choose unbound UDP socket for multicast when not in a VRF (Jiri Benc) [1882709] - [net] ensure unbound datagram socket to be chosen when not in a VRF (Jiri Benc) [1882709] - [net] ensure unbound stream socket to be chosen when not in a VRF (Jiri Benc) [1882709] - [net] allow binding socket in a VRF when there's an unbound socket (Jiri Benc) [1882709] - [net] udp6: drop unneeded likely() call around IS_ERR() (Jiri Benc) [1882709] - [net] udp: drop unneeded likely() call around IS_ERR() (Jiri Benc) [1882709] - [net] inet6: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] inet6: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] inet: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] inet: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] simplify cBPF setsockopt compat handling (Jiri Benc) [1882709] - [net] explicitly include in net/core/sock.c (Jiri Benc) [1882709] - [include] compat: provide compat_ptr() on all architectures (Jiri Benc) [1882709] - [net] socket: move compat timeout handling into sock.c (Jiri Benc) [1882709] - [include] xdp: introduce xdp_get_shared_info_from_{buff, frame} utility routines (Jiri Benc) [1882709] - [net] xsk: Add xdp statistics to xsk_diag (Jiri Benc) [1882709] - [net] xsk: Add new statistics (Jiri Benc) [1882709] - [net] bpfilter: Initialize pos variable (Jiri Benc) [1882709] - [kernel] umd: Stop using split_argv (Jiri Benc) [1882709] - [kernel] umd: Remove exit_umh (Jiri Benc) [1882709] - [net] bpfilter: Take advantage of the facilities of struct pid (Jiri Benc) [1882709] - [kernel] exit: Factor thread_group_exited out of pidfd_poll (Jiri Benc) [1882709] - [kernel] umd: Track user space drivers with struct pid (Jiri Benc) [1882709] - [net] bpfilter: Move bpfilter_umh back into init data (Jiri Benc) [1882709] - [fs] exec: Remove do_execve_file (Jiri Benc) [1882709] - [kernel] umh: Stop calling do_execve_file (Jiri Benc) [1882709] - [kernel] umd: Transform fork_usermode_blob into fork_usermode_driver (Jiri Benc) [1882709] - [kernel] umd: Rename umd_info.cmdline umd_info.driver_name (Jiri Benc) [1882709] - [kernel] umd: For clarity rename umh_info umd_info (Jiri Benc) [1882709] - [kernel] umh: Separate the user mode driver and the user mode helper support (Jiri Benc) [1882709] - [kernel] umh: Move setting PF_UMH into umh_pipe_setup (Jiri Benc) [1882709] - [kernel] umh: Remove call_usermodehelper_setup_file. (Jiri Benc) [1882709] - [kernel] umh: Rename the user mode driver helpers for clarity (Jiri Benc) [1882709] - [kernel] umh: Capture the pid in umh_pipe_setup (Jiri Benc) [1882709] - [net] bpf: Add SO_KEEPALIVE and related options to bpf_setsockopt (Jiri Benc) [1882709] - [net] tcp: Expose tcp_sock_set_keepidle_locked (Jiri Benc) [1882709] - [net] tcp: add tcp_sock_set_keepidle (Jiri Benc) [1882709] - [net] sock: Move sock_valbool_flag to header (Jiri Benc) [1882709] - [net] spread "enum sock_flags" (Jiri Benc) [1882709] - [tools] bpf: Use local copy of headers including uapi/linux/filter.h (Jiri Benc) [1882709] - [net] bpfilter: fix iptables failure if bpfilter_umh is disabled (Jiri Benc) [1882709] - [s390] s390/crypto: add arch_get_random_long() support (Vladis Dronov) [1904274] - [net] net/smc: Add support for obtaining SMCR device list (Philipp Rudo) [1868684] - [net] net/smc: Add support for obtaining SMCD device list (Philipp Rudo) [1868684] - [net] net/smc: Add SMC-D Linkgroup diagnostic support (Philipp Rudo) [1868684] - [net] net/smc: Introduce SMCR get link command (Philipp Rudo) [1868684] - [net] net/smc: Introduce SMCR get linkgroup command (Philipp Rudo) [1868684] - [net] net/smc: Add support for obtaining system information (Philipp Rudo) [1868684] - [net] net/smc: Introduce generic netlink interface for diagnostic purposes (Philipp Rudo) [1868684] - [net] net/smc: Refactor smc ism v2 capability handling (Philipp Rudo) [1868684] - [net] net/smc: Add diagnostic information to link structure (Philipp Rudo) [1868684] - [net] net/smc: Add diagnostic information to smc ib-device (Philipp Rudo) [1868684] - [net] net/smc: Add link counters for IB device ports (Philipp Rudo) [1868684] - [net] net/smc: Add connection counters for links (Philipp Rudo) [1868684] - [net] net/smc: Use active link of the connection (Philipp Rudo) [1868684] - [net] net/smc: use helper smc_conn_abort() in listen processing (Philipp Rudo) [1868684] - [net] sched: sch_frag: add generic packet fragment support. (Marcelo Leitner) [1909262] - [net] sched: act_mirred: refactor the handle of xmit (Marcelo Leitner) [1909262] - [net] sched: fix miss init the mru in qdisc_skb_cb (Marcelo Leitner) [1909262] - [net] openvswitch: using ip6_fragment in ipv6_stub (Marcelo Leitner) [1909262] - [net] ipv6: add ipv6_fragment hook in ipv6_stub (Marcelo Leitner) [1909262] - [x86] x86/resctrl: Fix spelling in user-visible warning messages (Puneet Sethi) [1717078] - [x86] x86/resctrl: Enable user to view thread or core throttling mode (Puneet Sethi) [1717078] - [x86] x86/resctrl: Enumerate per-thread MBA controls (Puneet Sethi) [1717078] - [x86] cacheinfo: Move resctrl's get_cache_id() to the cacheinfo header file (Puneet Sethi) [1717078] - [x86] x86/resctrl: Add struct rdt_cache::arch_has_{sparse, empty}_bitmaps (Puneet Sethi) [1717078] - [x86] x86/resctrl: Merge AMD/Intel parse_bw() calls (Puneet Sethi) [1717078] - [x86] x86/resctrl: Add struct rdt_membw::arch_needs_linear to explain AMD/Intel MBA difference (Puneet Sethi) [1717078] - [x86] x86/resctrl: Use is_closid_match() in more places (Puneet Sethi) [1717078] - [x86] x86/resctrl: Use container_of() in delayed_work handlers (Puneet Sethi) [1717078] - [x86] x86/resctrl: Fix stale comment (Puneet Sethi) [1717078] - [x86] x86/resctrl: Remove struct rdt_membw::max_delay (Puneet Sethi) [1717078] - [x86] x86/resctrl: Remove unused struct mbm_state::chunks_bw (Puneet Sethi) [1717078] - [x86] x86/resctrl: Fix memory bandwidth counter width for AMD (Puneet Sethi) [1845633 1717078] - [documentation] Documentation: x86: fix some typos (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Clarify MBA takes MB as referring to mba_sc (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Remove cdpl2 unspported statement and fix capitalisation (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Contiguous cbm isn't all X86 (Puneet Sethi) [1717078] - [documentation] Documentation: x86: convert resctrl_ui.txt to reST (Puneet Sethi) [1717078] - [kernel] livepatch: Make klp_apply_object_relocs static (Yannick Cote) [1866433] - [kernel] livepatch: Prevent module-specific KLP rela sections from referencing vmlinux symbols (Yannick Cote) [1866433] - [x86] livepatch: Remove .klp.arch (Yannick Cote) [1866433] - [kernel] livepatch: Apply vmlinux-specific KLP relocations early (Yannick Cote) [1866433] - [kernel] livepatch: Disallow vmlinux.ko (Yannick Cote) [1866433]- [sound] ALSA: hda: Add Cometlake-R PCI ID (Jaroslav Kysela) [1915650] - [fs] xfs: don't drain buffer lru on freeze and read-only remount (Brian Foster) [1903387] - [fs] xfs: rename xfs_wait_buftarg() to xfs_buftarg_drain() (Brian Foster) [1903387] - [net] mptcp: implement delegated actions (Paolo Abeni) [1892375] - [net] mptcp: schedule work for better snd subflow selection (Paolo Abeni) [1892375] - [net] mptcp: do not queue excessive data on subflows (Paolo Abeni) [1892375] - [net] mptcp: re-enable sndbuf autotune (Paolo Abeni) [1892375] - [net] mptcp: always graft subflow socket to parent (Paolo Abeni) [1892375] - [include] lockdep: Introduce in_softirq lockdep assert (Paolo Abeni) [1892375] - [net] selinux: handle MPTCP consistently with TCP (Paolo Abeni) [1892375] - [net] mptcp: fix locking in mptcp_disconnect() (Paolo Abeni) [1892375] - [net] mptcp: better msk-level shutdown. (Paolo Abeni) [1892375] - [net] mptcp: more strict state checking for acks (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add the MP_PRIO testcases (Paolo Abeni) [1892375] - [net] mptcp: add the mibs for MP_PRIO (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add set_flags command in pm_nl_ctl (Paolo Abeni) [1892375] - [net] mptcp: add set_flags command in PM netlink (Paolo Abeni) [1892375] - [net] mptcp: add the incoming MP_PRIO support (Paolo Abeni) [1892375] - [net] mptcp: add the outgoing MP_PRIO support (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add testcases for setting the address ID (Paolo Abeni) [1892375] - [net] mptcp: add the address ID assignment bitmap (Paolo Abeni) [1892375] - [net] mptcp: cap forward allocation to 1M (Paolo Abeni) [1892375] - [net] mptcp: fix pending data accounting (Paolo Abeni) [1892375] - [net] mptcp: push pending frames when subflow has free space (Paolo Abeni) [1892375] - [net] mptcp: properly annotate nested lock (Paolo Abeni) [1892375] - [net] mptcp: fix security context on server socket (Paolo Abeni) [1892375] - [net] mptcp: clear use_ack and use_map when dropping other suboptions (Paolo Abeni) [1892375] - [net] mptcp: let MPTCP create max size skbs (Paolo Abeni) [1892375] - [net] mptcp: pm: simplify select_local_address() (Paolo Abeni) [1892375] - [net] mptcp: parse and act on incoming FASTCLOSE option (Paolo Abeni) [1892375] - [net] mptcp: hold mptcp socket before calling tcp_done (Paolo Abeni) [1892375] - [net] mptcp: use MPTCPOPT_HMAC_LEN macro (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add the flush addrs testcase (Paolo Abeni) [1892375] - [net] mptcp: remove address when netlink flushes addrs (Paolo Abeni) [1892375] - [net] mptcp: attach subflow socket to parent cgroup (Paolo Abeni) [1892375] - [net] mptcp: be careful on subflows shutdown (Paolo Abeni) [1892375] - [net] mptcp: plug subflow context memory leak (Paolo Abeni) [1892375] - [net] mptcp: link MPC subflow into msk only after accept (Paolo Abeni) [1892375] - [net] mptcp: use the variable sk instead of open-coding (Paolo Abeni) [1892375] - [net] mptcp: rename add_addr_signal and mptcp_add_addr_status (Paolo Abeni) [1892375] - [net] mptcp: drop rm_addr_signal flag (Paolo Abeni) [1892375] - [net] mptcp: print out port and ahmac when receiving ADD_ADDR (Paolo Abeni) [1892375] - [net] mptcp: add port parameter for mptcp_pm_announce_addr (Paolo Abeni) [1892375] - [net] mptcp: send out dedicated packet for ADD_ADDR using port (Paolo Abeni) [1892375] - [net] mptcp: add the outgoing ADD_ADDR port support (Paolo Abeni) [1892375] - [net] mptcp: use adding up size to get ADD_ADDR length (Paolo Abeni) [1892375] - [net] mptcp: add port support for ADD_ADDR suboption writing (Paolo Abeni) [1892375] - [net] mptcp: unify ADD_ADDR and ADD_ADDR6 suboptions writing (Paolo Abeni) [1892375] - [net] mptcp: unify ADD_ADDR and echo suboptions writing (Paolo Abeni) [1892375] - [net] mptcp: print new line in mptcp_seq_show() if mptcp isn't in use (Paolo Abeni) [1892375] - [net] mptcp: emit tcp reset when a join request fails (Paolo Abeni) [1892375] - [net] tcp: merge 'init_req' and 'route_req' functions (Paolo Abeni) [1892375] - [net] security: add const qualifier to struct sock in various places (Paolo Abeni) [1892375] - [net] mptcp: avoid potential infinite loop in mptcp_recvmsg() (Paolo Abeni) [1892375] - [net] mptcp: use mptcp release_cb for delayed tasks (Paolo Abeni) [1892375] - [net] mptcp: avoid a few atomic ops in the rx path (Paolo Abeni) [1892375] - [net] mptcp: allocate TX skbs in msk context (Paolo Abeni) [1892375] - [net] mptcp: protect the rx path with the msk socket spinlock (Paolo Abeni) [1892375] - [net] mptcp: implement wmem reservation (Paolo Abeni) [1892375] - [net] mptcp: open code mptcp variant for lock_sock (Paolo Abeni) [1892375] - [net] mptcp: fix NULL ptr dereference on bad MPJ (Paolo Abeni) [1892375] - [net] mptcp: be careful on MPTCP-level ack. (Paolo Abeni) [1892375] - [net] mptcp: put reference in mptcp timeout timer (Paolo Abeni) [1892375] - [net] mptcp: refine MPTCP-level ack scheduling (Paolo Abeni) [1892375] - [net] mptcp: track window announced to peer (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add ADD_ADDR IPv6 test cases (Paolo Abeni) [1892375] - [net] mptcp: send out dedicated ADD_ADDR packet (Paolo Abeni) [1892375] - [net] mptcp: change add_addr_signal type (Paolo Abeni) [1892375] - [net] mptcp: keep unaccepted MPC subflow into join list (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add link failure test case (Paolo Abeni) [1892375] - [net] mptcp: skip to next candidate if subflow has unacked data (Paolo Abeni) [1892375] - [net] mptcp: fix state tracking for fallback socket (Paolo Abeni) [1892375] - [net] mptcp: drop WORKER_RUNNING status bit (Paolo Abeni) [1892375] - [net] mptcp: update rtx timeout only if required. (Paolo Abeni) [1892375] - [net] mptcp: send explicit ack on delayed ack_seq incr (Paolo Abeni) [1892375] - [net] mptcp: keep track of advertised windows right edge (Paolo Abeni) [1892375] - [net] mptcp: rework poll+nospace handling (Paolo Abeni) [1892375] - [net] mptcp: try to push pending data on snd una updates (Paolo Abeni) [1892375] - [net] mptcp: move page frag allocation in mptcp_sendmsg() (Paolo Abeni) [1892375] - [net] mptcp: refactor shutdown and close (Paolo Abeni) [1892375] - [net] mptcp: introduce MPTCP snd_nxt (Paolo Abeni) [1892375] - [net] mptcp: add accounting for pending data (Paolo Abeni) [1892375] - [net] mptcp: reduce the arguments of mptcp_sendmsg_frag (Paolo Abeni) [1892375] - [net] mptcp: introduce mptcp_schedule_work (Paolo Abeni) [1892375] - [net] tcp: factor out __tcp_close() helper (Paolo Abeni) [1892375] - [net] mptcp: use tcp_build_frag() (Paolo Abeni) [1892375] - [net] tcp: factor out tcp_build_frag() (Paolo Abeni) [1892375] - [net] tcp: schedule EPOLLOUT after a partial sendmsg (Paolo Abeni) [1892375] - [net] tcp: annotate tp->write_seq lockless reads (Paolo Abeni) [1892375] - [net] mptcp: fix static checker warnings in mptcp_pm_add_timer (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add ADD_ADDR timeout test case (Paolo Abeni) [1892375] - [documentation] networking: mptcp: Add MPTCP sysctl entries (Paolo Abeni) [1892375] - [net] mptcp: add a new sysctl add_addr_timeout (Paolo Abeni) [1892375] - [net] mptcp: split mptcp_clean_una function (Paolo Abeni) [1892375] - [net] tcp: propagate MPTCP skb extensions on xmit splits (Paolo Abeni) [1892375] - [net] mptcp: use _fast lock version in __mptcp_move_skbs (Paolo Abeni) [1892375] - [net] mptcp: adjust mptcp receive buffer limit if subflow has larger one (Paolo Abeni) [1892375] - [net] tcp: fix compile error if !CONFIG_SYSCTL (Paolo Abeni) [1892375] - [net] tcp: add tcp_tx_skb_cache sysctl (Paolo Abeni) [1892375] - [net] tcp: do not recycle cloned skbs (Paolo Abeni) [1892375] - [net] tcp: properly reset skb->truesize for tx recycling (Paolo Abeni) [1892375] - [net] tcp: cleanup sk_tx_skb_cache before reuse (Paolo Abeni) [1892375] - [net] tcp: fix zerocopy and notsent_lowat issues (Paolo Abeni) [1892375] - [net] tcp: add one skb cache for tx (Paolo Abeni) [1892375] - [include] include: fpga: adi-axi-common.h: fixup whitespace tab -> space (Luis Goncalves) [1494702] - [include] include: fpga: adi-axi-common.h: add version helper macros (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: convert get_user_pages() --> pin_user_pages() (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fix bug in port reset handshake (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: reduce the scope of variable 'ret' (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: add device id for Intel FPGA PAC N3000 (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: add AFU interrupt support (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fme: add interrupt support for global error reporting (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: add interrupt support for port error reporting (Luis Goncalves) [1494702] - [fpga] fpga: dfl: introduce interrupt trigger setting API (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: add irq info for feature devices enumeration (Luis Goncalves) [1494702] - [fpga] fpga: dfl: parse interrupt info for feature devices on enumeration (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: check INIT_B pin during write_init (Luis Goncalves) [1494702] - [fpga] fpga: Fix dead store in fpga-bridge.c (Luis Goncalves) [1494702] - [fpga] fpga: Fix dead store fpga-mgr.c (Luis Goncalves) [1494702] - [fpga] fpga: dfl: Use struct_size() in kzalloc() (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: remove unneeded, mistyped variables (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: valid for the 7 Series too (Luis Goncalves) [1494702] - [fpga] fpga: zynqmp: fix modular build (Luis Goncalves) [1494702] - [fpga] drivers/fpga/dfl-afu-dma-region.c: get rid of pointless access_ok() (Luis Goncalves) [1494702] - [fpga] drivers/fpga/dfl-fme-pr.c: get rid of pointless access_ok() (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: Corrected error handling levels (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: support debug access to memory-mapped afu regions (Luis Goncalves) [1494702] - [fpga] fpga: dfl.h: Replace zero-length array with flexible-array member (Luis Goncalves) [1494702] - [fpga] fpga: stratix10-soc: add compatible property value for intel agilex (Luis Goncalves) [1494702] - [fpga] fpga: machxo2-spi: Use new structure for SPI transfer delays (Luis Goncalves) [1494702] - [fpga] fpga: ice40-spi: Use new structure for SPI transfer delays (Luis Goncalves) [1494702] - [fpga] fpga: dfl: support multiple opens on feature device node (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fme: add performance reporting support (Luis Goncalves) [1494702] - [firmware] firmware: fpga: replace the error codes with the standard ones (Luis Goncalves) [1494702] - [net] sched: act_mpls: ensure LSE is pullable before reading it (Guillaume Nault) [1917918] - [net] openvswitch: ensure LSE is pullable before reading it (Guillaume Nault) [1917918] - [net] skbuff: ensure LSE is pullable before decrementing the MPLS ttl (Guillaume Nault) [1917918] - [net] sched: act_mpls: Add softdep on mpls_gso.ko (Guillaume Nault) [1917918] - [net] mpls: load mpls_gso after mpls_iptunnel (Guillaume Nault) [1917918] - [net] netfilter: nf_tables: handle nft_object lookups via rhltable (Phil Sutter) [1848816] - [arm64] kvm: arm64: Remove PMU RAZ/WI handling (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Inject UNDEF on PMU access when no PMU configured (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Set ID_AA64DFR0_EL1.PMUVer to 0 when no PMU support (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Add kvm_vcpu_has_pmu() helper (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Refactor PMU attribute error handling (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Introduce handling of AArch32 TTBCR2 traps (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: pmu: Make overflow handler NMI safe (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Also build dirty_log_perf_test on AArch64 (Auger Eric) [1890373 1907826] - [tools] selftests: kvm/set_memory_region_test: Fix race in move region test (Auger Eric) [1890373 1907826] - [tools] kvm: arm64: selftests: Filter out DEMUX registers (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Add blessed SVE registers to get-reg-list (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Add aarch64 get-reg-list test (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Don't access PMCR_EL0 when no PMU is available (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Don't hide ID registers from userspace (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Force PTE mapping on fault resulting in a device mapping (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Fix AArch32 handling of DBGD{CCINT, SCRext} and DBGVCR (Auger Eric) [1890373 1907826] - [kernel] kvm: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return SMCCC_RET_NOT_REQUIRED (Auger Eric) [1890373 1907826] - [kernel] smccc: Make constants available to assembly (Auger Eric) [1890373 1907826] - [kernel] firmware: smccc: Add the definition for SMCCCv1.2 version/error codes (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Ensure user_mem_abort() return value is initialised (Auger Eric) [1890373 1907826] - [] ASoC: SOF: Intel: fix page fault at probe if i915 init fails (Jaroslav Kysela) [1906665] - [include] powerpc: fix the backport macros of hv_24x7 and hv_gpci (Diego Domingos) [1915159] - [net] tcp: Prevent low rmem stalls with SO_RCVLOWAT. (Davide Caratti) [1917976] - [net] tcp: fix to update snd_wl1 in bulk receiver fast path (Davide Caratti) [1917976] - [net] tcp: md5: refine tcp_md5_do_add()/tcp_md5_hash_key() barriers (Davide Caratti) [1917976] - [net] tcp: md5: add missing memory barriers in tcp_md5_do_add()/tcp_md5_hash_key() (Davide Caratti) [1917976] - [net] sunrpc: clean-up cache downcall (J. Bruce Fields) [1887178] - [net] sunrpc: raise kernel RPC channel buffer size (J. Bruce Fields) [1887178] - [netdrv] mlx5: Remove the unsupported mark from ConnectX-6 Lx and BlueField-2 (Alaa Hleihel) [1802118 1790541] - [s390] s390/qeth: make af_iucv TX notification call more robust (Philipp Rudo) [1915919] - [s390] s390/dasd: fix list corruption of lcu list (Philipp Rudo) [1915918] - [s390] s390/dasd: fix list corruption of pavgroup group list (Philipp Rudo) [1915918] - [s390] s390/dasd: prevent inconsistent LCU device data (Philipp Rudo) [1915918] - [s390] s390/dasd: fix hanging device offline processing (Philipp Rudo) [1915918] - [block] Revert "block: Fix a lockdep complaint triggered by request queue flushing" (Ming Lei) [1897404] - [nvme] nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class (Ming Lei) [1897404] - [block] blk-mq: add new API of blk_mq_hctx_set_fq_lock_class (Ming Lei) [1897404] - [scsi] scsi: core: Fix race between handling STS_RESOURCE and completion (Ming Lei) [1897404]- [fs] inotify: Increase default inotify.max_user_watches limit to 1048576 (Waiman Long) [1888617] - [kernel] cgroup: fix psi_show() crash on 32bit ino archs (Waiman Long) [1920288] - [kernel] cgroup: fix incorrect WARN_ON_ONCE() in cgroup_setup_root() (Waiman Long) [1920288] - [netdrv] net: bareudp: add missing error handling for bareudp_link_config() (Guillaume Nault) [1920194] - [netdrv] bareudp: Fix use of incorrect min_headroom size (Guillaume Nault) [1920194] - [netdrv] bareudp: set NETIF_F_LLTX flag (Guillaume Nault) [1920194] - [netdrv] vxlan: fix error return code in __vxlan_dev_create() (Guillaume Nault) [1920194] - [netdrv] ip_tunnels: Set tunnel option flag when tunnel metadata is present (Guillaume Nault) [1920194] - [net] vsock/virtio: discard packets only when socket is really closed (Stefano Garzarella) [1920004] - [net] vsock: fix the error return when an invalid ioctl command is used (Stefano Garzarella) [1920004] - [net] vsock: remove ratelimit unknown ioctl message (Stefano Garzarella) [1920004] - [net] vsock: use ns_capable_noaudit() on socket create (Stefano Garzarella) [1920004] - [net] vsock: fix potential null pointer dereference in vsock_poll() (Stefano Garzarella) [1920004] - [net] vsock/vmci: make vmci_vsock_transport_cb() static (Stefano Garzarella) [1920004] - [block] block: add blk_queue_make_request declaration back (Ming Lei) [1919764] - [net] erspan: fix version 1 check in gre_parse_header() (Guillaume Nault) [1919388] - [net] ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() (Guillaume Nault) [1919388] - [net] ipv4: Fix tos mask in inet_rtm_getroute() (Guillaume Nault) [1919388] - [net] inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill() (Guillaume Nault) [1919388] - [mm] usercopy: mark dma-kmalloc caches as usercopy caches (Waiman Long) [1660290] - [mm] mm, slab_common: use enum kmalloc_cache_type to iterate over kmalloc caches (Waiman Long) [1660290] - [mm] mm, slab: remove unused kmalloc_size() (Waiman Long) [1660290] - [mm] mm, slab: make kmalloc_infocontain all types of names (Waiman Long) [1660290] - [netdrv] net: stmmac: fix taprio configuration when base_time is in the past (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes (Mark Salter) [1870102] - [netdrv] net: stmmac: delete the eee_ctrl_timer after napi disabled (Mark Salter) [1870102] - [netdrv] net: stmmac: free tx skb buffer in stmmac_resume() (Mark Salter) [1870102] - [netdrv] net: stmmac: start phylink instance before stmmac_hw_setup() (Mark Salter) [1870102] - [netdrv] net: stmmac: increase the timeout for dma reset (Mark Salter) [1870102] - [netdrv] net: stmmac: fix incorrect merge of patch upstream (Mark Salter) [1870102] - [netdrv] net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac_lib: enlarge dma reset timeout (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix channel lock initialization (Mark Salter) [1870102] - [netdrv] net: stmmac: Add option for VLAN filter fail queue enable (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support to Ethtool get/set ring parameters (Mark Salter) [1870102] - [netdrv] net: stmmac: use netif_tx_start|stop_all_queues() function (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix incorrect location to set real_num_rx|tx_queues (Mark Salter) [1870102] - [netdrv] net: stmmac: add ethtool support for get/set channels (Mark Salter) [1870102] - [netdrv] net: stmmac: set get_rx_header_len() as void for it didn't have any error code to return (Mark Salter) [1870102] - [netdrv] net: stmmac: remove redundant null check before clk_disable_unprepare() (Mark Salter) [1870102] - [netdrv] net: phylink: avoid oops during initialisation (Mark Salter) [1870102] - [netdrv] net: stmmac: Modify configuration method of EEE timers (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: provide multicast filter fallback (Mark Salter) [1870102] - [netdrv] net: stmmac: fix failed to suspend if phy based WOL is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Speed down the PHY if WoL to save energy (Mark Salter) [1870102] - [netdrv] net: stmmac: Support WOL with phy (Mark Salter) [1870102] - [netdrv] net: stmmac: only call pmt() during suspend/resume if HW enables PMT (Mark Salter) [1870102] - [netdrv] net: stmmac: Move device_can_wakeup() check earlier in set_wol (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove WAKE_MAGIC if HW shows no pmt_magic_frame (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove unused inline function stmmac_rx_threshold_count (Mark Salter) [1870102] - [include] net: pylink.h: add kernel-doc descriptions for new fields at phylink_config (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN promiscuous mode (Mark Salter) [1870102] - [netdrv] net: stmmac: removed enabling eee in EEE set callback (Mark Salter) [1870102] - [documentation] net: phy: add PHY_INTERFACE_MODE_10GBASER (Mark Salter) [1870102] - [include] net: mii: convert mii_lpa_to_ethtool_lpa_x() to linkmode variant (Mark Salter) [1870102] - [base] driver core: platform: Add platform_get_irq_byname_optional() (Mark Salter) [1870102] - [netdrv] net: stmmac: enable timestamp snapshot for required PTP packets in dwmac v5.10a (Mark Salter) [1870102] - [netdrv] net: stmmac: don't attach interface until resume finishes (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: fix potential integer overflow on 32 bit multiply (Mark Salter) [1870102] - [netdrv] stmmac: fix pointer check after utilization in stmmac_interrupt (Mark Salter) [1870102] - [netdrv] stmmac: intel: Fix kernel crash due to wrong error path (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable SERDES power up/down sequence (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix sub-second increment (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: fix out-of-bounds mac address reg setting (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix VLAN register handling (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix VLAN filtering when HW does not support it (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Rx filtering (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac_lib: remove unnecessary checks in dwmac_dma_reset() (Mark Salter) [1870102] - [netdrv] net: rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Mark Salter) [1870102] - [netdrv] net: stmmac: use readl_poll_timeout() function in dwmac4_dma_reset() (Mark Salter) [1870102] - [netdrv] net: stmmac: use readl_poll_timeout() function in init_systime() (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: convert to devm_platform_ioremap_resource (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate it with DesignWare XPCS (Mark Salter) [1870102] - [netdrv] net: phy: Add Synopsys DesignWare XPCS MDIO module (Mark Salter) [1870102] - [netdrv] net: stmmac: Use resolved link config in mac_link_up() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to dev_fwnode() if needed (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch to linkmode_and()/linkmode_andnot() (Mark Salter) [1870102] - [netdrv] flow_offload: check for basic action hw stats type (Mark Salter) [1870102] - [netdrv] stmmac: let core reject the unsupported coalescing parameters (Mark Salter) [1870102] - [netdrv] net: phylink: propagate resolved link config via mac_link_up() (Mark Salter) [1870102] - [netdrv] net: ethernet: stmmac: demote warnings about missing optional clocks (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: Fix misleading interrupt error msg (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Disable ACS if enhanced descs are not used (Mark Salter) [1870102] - [netdrv] net: stmmac: fix notifier registration (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: fix missing IFF_MULTICAST checki in dwxgmac2_set_filter (Mark Salter) [1870102] - [netdrv] net: stmmac: fix missing IFF_MULTICAST check in dwmac4_set_filter (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: fix incorrect XGMAC_VLAN_TAG register writting (Mark Salter) [1870102] - [netdrv] net: stmmac: fix incorrect GMAC_VLAN_TAG register writting in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Delete txtimer in suspend() (Mark Salter) [1870102] - [netdrv] net: stmmac: modified pcs mode support for RGMII (Mark Salter) [1870102] - [netdrv] net: stmmac: Add missing information in DebugFS capabilities file (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Add TBS support (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add TBS support (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Add support for ETF Scheduler using TBS (Mark Salter) [1870102] - [netdrv] net: stmmac: Initial support for TBS (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: Fix missing return (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix missing return (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Fix TAPRIO division operation (Mark Salter) [1870102] - [netdrv] net: stmmac: mmc: Add Frame Preemption counters on GMAC5+ cores (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac3+: Add support for Frame Preemption (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: Add support for Frame Preemption (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Frame Preemption support using TAPRIO API (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate EST with TAPRIO scheduler API (Mark Salter) [1870102] - [netdrv] net: stmmac: Add basic EST support for XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Add basic EST support for GMAC5+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Always use TX coalesce timer value when rescheduling (Mark Salter) [1870102] - [netdrv] net: stmmac: Let TX and RX interrupts be independently enabled/disabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Print more information in DebugFS DMA Capabilities file (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: avoid clk and reset for acpi device (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: use generic device api (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: fix probe for ACPI devices (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Do not setup flower filtering if RSS is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Fixed link does not need MDIO Bus (Mark Salter) [1870102] - [netdrv] stmmac: debugfs entry name is not be changed when udev rename device name (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: Fix MDIO init for platforms without PHY (Mark Salter) [1870102] - [netdrv] net: stmmac: Always arm TX Timer at end of transmission start (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable 16KB buffer size (Mark Salter) [1870102] - [netdrv] net: stmmac: 16KB buffer must be 16 byte aligned (Mark Salter) [1870102] - [netdrv] net: stmmac: RX buffer size must be 16 byte aligned (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Clear previous RX buffer size (Mark Salter) [1870102] - [netdrv] net: stmmac: Only the last buffer has the FCS field (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not accept invalid MTU values (Mark Salter) [1870102] - [netdrv] net: stmmac: Determine earlier the size of RX buffer (Mark Salter) [1870102] - [netdrv] treewide: Use sizeof_field() macro (Mark Salter) [1870102] - [netdrv] net: stmmac: reset Tx desc base address before restarting Tx (Mark Salter) [1870102] - [netdrv] net: phylink: rename mac_link_state() op to mac_pcs_get_state() (Mark Salter) [1870102] - [netdrv] page_pool: do not release pool until inflight == 0 (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Do not enable TBU interrupt (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework TX Coalesce logic (Mark Salter) [1870102] - [netdrv] net: stmmac: Tune-up default coalesce settings (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Remove uneeded computation for RFA/RFD (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Remove uneeded computation for RFA/RFD (Mark Salter) [1870102] - [netdrv] net: stmmac: Setup a default RX Coalesce value instead of the minimum (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not set RX IC bit if RX Coalesce is zero (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement UDP Segmentation Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework stmmac_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Remove the speed dependency (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add C45 PHY support in the MDIO callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Add Split Header support (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix sparse warning (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove break after a return (Mark Salter) [1870102] - [netdrv] net: stmmac: add flexible PPS to dwmac 4.10a (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement L3/L4 Filters in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to VLAN Perfect filtering if HASH is not available (Mark Salter) [1870102] - [netdrv] net: stmmac: Support enhanced addressing mode for DWMAC 4.10 (Mark Salter) [1870102] - [netdrv] net: stmmac: Only enable enhanced addressing mode when needed (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the TX IOC in xmit path (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix TSO descriptor with Enhanced Addressing (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the packet count in stmmac_rx() (Mark Salter) [1870102] - ethernet: Delete unnecessary checks before the macro call “dev_kfree_skb” (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable MMC interrupts by default (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable Flow Control when 1 or more queues are in AV (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix AV Feature detection (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix TSA selection (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Only get SPH header len if available (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: bitrev32 returns u32 (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4: bitrev32 returns u32 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the problem of tso_xmit (Mark Salter) [1870102] - [netdrv] net: stmmac: fix argument to stmmac_pcs_ctrl_ane() (Mark Salter) [1870102] - [netdrv] net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow (Mark Salter) [1870102] - [netdrv] net: stmmac: make tc_flow_parsers static (Mark Salter) [1870102] - [netdrv] net: stmmac: fix disabling flexible PPS output (Mark Salter) [1870102] - [netdrv] net: stmmac: fix length of PTP clock's name string (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Not all Unicast addresses may be available (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid deadlock on suspend/resume (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix RSS writing wrong keys (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix RSS not writing all Keys to HW (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable the Timestamp interrupt by default (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not stop PHY if WoL is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Correctly take timestamp for PTPv2 (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Always update the MAC Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Detect Hash Table size dinamically (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Not all Unicast addresses may be available (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix page pool size (Mark Salter) [1870102] - [netdrv] net: stmmac: selftest: avoid large stack usage (Mark Salter) [1870102] - [netdrv] net: stmmac: Hold rtnl lock in suspend/resume callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: implement support for passive mode converters via dt (Mark Salter) [1870102] - [netdrv] net: stmmac: ARP Offload for GMAC4+ Cores (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Insertion Offload in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for SA Insertion/Replacement in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Reinitialize correctly a variable (Mark Salter) [1870102] - [netdrv] net: stmmac: Add VLAN HASH filtering support in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent divide-by-zero (Mark Salter) [1870102] - [netdrv] net: stmmac: Limit max speeds of XGMAC if asked to (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Enable RX Jumbo frame support (Mark Salter) [1870102] - [netdrv] stmmac: platform: adjust messages and move to dev level (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Enable RX Jumbo frame support (Mark Salter) [1870102] - [netdrv] net: stmmac: Correctly assing MAX MTU in XGMAC cores case (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Correct RAVSEL field interpretation (Mark Salter) [1870102] - [netdrv] net: stmmac: ethtool: Let user configure TX coalesce without RIWT (Mark Salter) [1870102] - [netdrv] net: stmmac: Only consider RX error when HW Timestamping is not enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement ARP Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement L3/L4 Filters using TC Flower (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not return error code in TC Initialization (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add RBU handling in DMA interrupt (Mark Salter) [1870102] - [netdrv] net: stmmac: depend on COMMON_CLK (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: use devm_platform_ioremap_resource() to simplify code (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Insertion Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add EEE support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for SA Insertion/Replacement in XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: Add ethtool register dump for XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Add Flexible PPS support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add a counter for Split Header packets (Mark Salter) [1870102] - [netdrv] net: page_pool: API cleanup and comments (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Split Header support and enable it in XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Correctly return that RX descriptor is not last one (Mark Salter) [1870102] - [netdrv] net: stmmac: Prepare to add Split Header support (Mark Salter) [1870102] - [netdrv] net: stmmac: Get correct timestamp values from XGMAC (Mark Salter) [1870102] - [netdrv] stmmac: no need to check return value of debugfs_create functions (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Flexible RX Parser support in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement Safety Features in XGMAC core (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement VLAN Hash Filtering in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement RSS and enable it in XGMAC core (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement tx_queue_prio() (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement set_mtl_tx_queue_weight() (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement MMC counters (Mark Salter) [1870102] - [netdrv] net: Remove dev_err() usage after platform_get_irq() (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not request stmmaceth clock (Mark Salter) [1870102] - [netdrv] net: stmmac: Make MDIO bus reset optional (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Do not return a fragment entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix issues when number of Queues >= 4 (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix XGMAC selftests (Mark Salter) [1870102] - [netdrv] net: stmmac: manage errors returned by of_get_mac_address() (Mark Salter) [1870102] - [netdrv] net: stmmac: Use netif_tx_napi_add() for TX polling function (Mark Salter) [1870102] - [netdrv] net: stmmac: Sync RX Buffer upon allocation (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not cut down 1G modes (Mark Salter) [1870102] - [netdrv] net: stmmac: Use kcalloc() instead of kmalloc_array() (Mark Salter) [1870102] - [netdrv] net: stmmac: RX Descriptors need to be clean before setting buffers (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix misuses of GENMASK macro (Mark Salter) [1870102] - [netdrv] net: stmmac: add support for hash table size 128/256 in dwmac4 (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: mac address array boudary violation issue (Mark Salter) [1870102] - [netdrv] net: stmmac: Introducing support for Page Pool (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix descriptors address being in > 32 bits address space (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement RX Coalesce Frames setting (Mark Salter) [1870102] - [netdrv] net: stmmac: Re-work the queue selection for TSO packets (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable dwmac4 jumbo frame more than 8KiB (Mark Salter) [1870102] - [netdrv] net: stmmac: make "snps, reset-delays-us" optional again (Mark Salter) [1870102] - [netdrv] net: stmmac: Re-word Kconfig entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Update Kconfig entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Only disable interrupts if NAPI is scheduled (Mark Salter) [1870102] - [netdrv] net: stmmac: Update RX Tail Pointer to last free entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable support for > 32 Bits addressing in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not disable interrupts when cleaning TX (Mark Salter) [1870102] - [netdrv] net: stmmac: Add the missing speeds that XGMAC supports (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Fix the undefined burst setting (Mark Salter) [1870102] - [netdrv] net: stmmac: Decrease default RX Watchdog value (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not try to enable PHY EEE if MAC does not support it (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Enable EDMA by default (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix case when PHY handle is not present (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix crash observed if PHY does not support EEE (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix possible deadlock when disabling EEE support (Mark Salter) [1870102] - [netdrv] net: stmmac: initialize the reset delay array (Mark Salter) [1870102] - [netdrv] net: stmmac: add sanity check to device_property_read_u32_array call (Mark Salter) [1870102] - [netdrv] net: stmmac: fix unused-variable warning (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the phy_reset hook from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the reset delays from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the reset GPIO from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: use device_property_read_u32_array to read the reset delays (Mark Salter) [1870102] - [netdrv] net: stmmac: drop redundant check in stmmac_mdio_reset (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix wrapper drivers not detecting PHY (Mark Salter) [1870102] - [netdrv] net: stmmac: use GPIO descriptors in stmmac_mdio_reset (Mark Salter) [1870102] - [netdrv] net: stmmac: Convert to phylink and remove phylib logic (Mark Salter) [1870102] - [netdrv] net: stmmac: Start adding phylink support (Mark Salter) [1870102] - [netdrv] net: stmmac: Prepare to convert to phylink (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: fix flow control issue (Mark Salter) [1870102] - [netdrv] net: stmmac: modify default value of tx-frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch to devm_alloc_etherdev_mqs (Mark Salter) [1870102] - [netdrv] net: stmmac: use dev_info() before netdev is registered (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent missing interrupts when running NAPI (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Clear unused address entries (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Do not disable whole RX in dma_stop_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Do not disable whole RX in dma_stop_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Fix Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Clear unused address entries (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Fix Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch MMC functions to HWIF callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac100: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MAC loopback callback to HWIF (Mark Salter) [1870102] - [netdrv] net: stmmac: set IC bit when transmitting frames with HW timestamp (Mark Salter) [1870102] - [netdrv] net: stmmac: fixed new system time seconds value calculation (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not output error on deferred probe (Mark Salter) [1870102] - [netdrv] net: stmmac: fix csr_clk can't be zero issue (Mark Salter) [1870102] - [netdrv] net: stmmac: update rx tail pointer register to fix rx dma hang issue (Mark Salter) [1870102] - [netdrv] net: stmmac: fix reset gpio free missing (Mark Salter) [1870102] - [netdrv] net: stmmac: dma channel control register need to be init first (Mark Salter) [1870102] - [netdrv] net: stmmac: fix ethtool flow control not able to get/set (Mark Salter) [1870102] - [netdrv] dwmac4_prog_mtl_tx_algorithms() missing write operation (Mark Salter) [1870102] - [netdrv] net: stmmac: Set Flow Control to automatic mode in the driver (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Finish the Flow Control implementation (Mark Salter) [1870102] - [netdrv] net: stmmac: move stmmac_check_ether_addr() to driver probe (Mark Salter) [1870102] - [netdrv] net: stmmac: Use bfsize1 in ndesc_init_rx_desc (Mark Salter) [1870102] - [netdrv] net: stmmac: don't log oversized frames (Mark Salter) [1870102] - [netdrv] net: stmmac: fix dropping of multi-descriptor RX frames (Mark Salter) [1870102] - [netdrv] net: stmmac: don't overwrite discard_frame status (Mark Salter) [1870102] - [netdrv] net: stmmac: don't stop NAPI processing when dropping a packet (Mark Salter) [1870102] - [netdrv] net: stmmac: ratelimit RX error logs (Mark Salter) [1870102] - [netdrv] net: stmmac: use correct DMA buffer size in the RX descriptor (Mark Salter) [1870102] - [netdrv] net: stmmac: fix memory corruption with large MTUs (Mark Salter) [1870102] - [netdrv] net: stmmac: fix jumbo frame sending with non-linear skbs (Mark Salter) [1870102] - [netdrv] net: stmmac: don't set own bit too early for jumbo frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid one more sometimes uninitialized Clang warning (Mark Salter) [1870102] - [netdrv] net: ethernet: stmmac: add management of clk_csr property (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid sometimes uninitialized Clang warnings (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Also use TBU interrupt to clean TX path (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Also use TBU interrupt to clean TX path (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix NAPI poll in TX path when in multi-queue (Mark Salter) [1870102] - [netdrv] net: stmmac: use correct define to get rx timestamp on GMAC4 (Mark Salter) [1870102] - [netdrv] net: stmmac: fix ptp timestamping on Rx on gmac4 (Mark Salter) [1870102] - [netdrv] net: stmmac: implement the SIOCGHWTSTAMP ioctl (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix a race in EEE enable callback (Mark Salter) [1870102] - [netdrv] net: stmmac: handle endianness in dwmac4_get_timestamp (Mark Salter) [1870102] - [netdrv] net: stmmac: Disable EEE mode earlier in XMIT callback (Mark Salter) [1870102] - [netdrv] net: stmmac: Send TSO packets always from Queue 0 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to Platform Data clock in Watchdog conversion (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent RX starvation in stmmac_napi_poll() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the logic of checking if RX Watchdog must be enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Check if CBS is supported before configuring (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Only clear interrupts that are active (Mark Salter) [1870102] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Mark Salter) [1870102] - [netdrv] net: stmmac: convert to DEFINE_SHOW_ATTRIBUTE (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix an error code in probe() (Mark Salter) [1870102] - [netdrv] net: stmmac: Move debugfs init/exit to ->probe()/->remove() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix RX packet size > 8191 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules (Mark Salter) [1870102] - [netdrv] net: stmmac: Set OWN bit for jumbo frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable TC Ops for GMAC >= 4 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add CBS support in XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fixup the tail addr setting in xmit path (Mark Salter) [1870102] - [netdrv] stmmac: fix valid numbers of unicast filter entries (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework coalesce timer and fix multi-queue races (Mark Salter) [1870102] - [netdrv] Revert "net: stmmac: Do not keep rearming the coalesce timer in stmmac_xmit" (Mark Salter) [1870102] - [netdrv] Revert "net: stmmac: fix build failure due to missing COMMON_CLK dependency" (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate XGMAC into main driver flow (Mark Salter) [1870102] - [netdrv] net: stmmac: Add PTP support for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MDIO related functions for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add descriptor related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add DMA related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MAC related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add XGMAC 2.10 HWIF entry (Mark Salter) [1870102] - [netdrv] stmmac: fix signed 64-bit division (Mark Salter) [1870102] - [netdrv] net: stmmac_tc: use 64-bit arithmetic instead of 32-bit (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for CBS QDISC (Mark Salter) [1870102] - [tty] serial: 8250_tegra: Create Tegra specific 8250 driver (Mark Salter) [1870103] - [pci] PCI: Disable MSI for Tegra root ports (Mark Salter) [1870101] - [pci] PCI: Add MCFG quirks for Tegra194 host controllers (Mark Salter) [1870101] - [netdrv] tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS (Antoine Tenart) [1919364 1917563] {CVE-2021-0342} - [netdrv] tun: correct header offsets in napi frags mode (Antoine Tenart) [1919364 1917563] {CVE-2021-0342} - [netdrv] tun: Don't put_page() for all negative return values from XDP program (Antoine Tenart) [1919364] - [netdrv] tun: add mutex_unlock() call and napi.skb clearing in tun_get_user() (Antoine Tenart) [1919364] - [netdrv] tun: fix data-race in gro_normal_list() (Antoine Tenart) [1919364] - [netdrv] tun: fix use-after-free when register netdev failed (Antoine Tenart) [1919364] - [netdrv] tun: mark small packets as owned by the tap sock (Antoine Tenart) [1919364] - [netdrv] tun: use netdev_alloc_frag() in tun_napi_alloc_frags() (Antoine Tenart) [1919364] - [scsi] scsi: ibmvfc: Fix error return in ibmvfc_probe() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Provide modules parameters for MQ settings (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Enable MQ and set reasonable defaults (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Purge SCSI channels after transport loss/reset (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Send Cancel MAD down each hw SCSI channel (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add cancel mad initialization helper (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Register Sub-CRQ handles with VIOS during channel setup (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Send commands down HW Sub-CRQ when channelized (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Set and track hw queue in ibmvfc_event struct (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Advertise client support for using hardware channels (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Implement channel enquiry and setup commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Map/request irq and register Sub-CRQ interrupt handler (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define Sub-CRQ interrupt handler routine (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add handlers to drain and complete Sub-CRQ responses (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add Sub-CRQ IRQ enable/disable routine (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add alloc/dealloc routines for SCSI Sub-CRQ Channels (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add Subordinate CRQ definitions (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define hcall wrapper for registering a Sub-CRQ (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add size parameter to ibmvfc_init_event_pool() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Init/free event pool during queue allocation/free (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Move event pool init/free routines (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add vhost fields and defaults for MQ enablement (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Fix missing cast of ibmvfc_event pointer to u64 handle (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Relax locking around ibmvfc_queuecommand() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Complete commands outside the host/queue lock (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define per-queue state/list locks (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Make command event pool queue specific (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define generic queue structure for CRQs (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Advertise client support for targetWWPN using v2 commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add support for target_wwpn field in v2 MADs and vfcFrame (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add FC payload retrieval routines for versioned vfcFrames (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add helper for testing capability flags (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add new fields for version 2 of several MADs (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Deduplicate common ibmvfc_cmd init code (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Use correlation token to tag commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Remove trailing semicolon (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Byte swap login_buf.resp values in attribute show functions (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Interface updates for future FPIN and MQ support (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Protect vhost->task_set increment by the host lock (Desnes Augusto Nunes do Rosario) [1868055] - [net] tcp: Fix potential use-after-free due to double kfree() (Florian Westphal) [1915164] - [nvdimm] libnvdimm/region: Enable MAP_SYNC for volatile regions (Steve Best) [1916650] - [net] bpf: Permit cond_resched for some iterators (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix PID fetching with a lot of results (Yauheni Kaliuta) [1874005] - [net] bpf: verifier: Use target program's type for access verifications (Yauheni Kaliuta) [1874005] - [tools] selftests: bpf: Test sockmap update from BPF (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Allow update from BPF (Yauheni Kaliuta) [1874005] - [net] bpf: Override the meaning of ARG_PTR_TO_MAP_VALUE for sockmap and sockhash (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Call sock_map_update_elem directly (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Merge sockmap and sockhash update functions (Yauheni Kaliuta) [1874005] - [net] net: sk_msg: Simplify sk_psock initialization (Yauheni Kaliuta) [1874005] - [net] bpf: Enforce id generation for all may-be-null register type (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Cleanup bpf_load.o from Makefile (Yauheni Kaliuta) [1874005] - [include] bpf: Plug hole in struct bpf_sk_lookup_kern (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix endianness issues in sk_lookup/ctx_narrow_access (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix build slowdown (Yauheni Kaliuta) [1874005] - [net] bpf: Fix scalar32_min_max_or bounds tracking (Yauheni Kaliuta) [1874005] - [net] bpf: Fix "unresolved symbol" build error with resolve_btfids (Yauheni Kaliuta) [1874005] - [powerpc] bpf, powerpc: Fix misuse of fallthrough in bpf_jit_comp() (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix XDP program load regression for old kernels (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix native endian assumption when parsing BTF (Yauheni Kaliuta) [1874005] - [include] bpf: Prevent .BTF section elimination (Yauheni Kaliuta) [1874005] - [net] bpf: Fix sysfs export of empty BTF section (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Support passing BPFTOOL_VERSION to make (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a rcu warning for bpffs map pretty-print (Yauheni Kaliuta) [1874005] - [net] bpf: Bpf_skc_to_* casting helpers require a NULL check on sk (Yauheni Kaliuta) [1874005] - [documentation] docs/bpf: Remove source code links (Yauheni Kaliuta) [1874005] - [documentation] docs/bpf: Fix ringbuf documentation (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix VERSIONED_SYM_COUNT number parsing (Yauheni Kaliuta) [1874005] - [tools] tools/libbpf: Avoid counting local symbols in ABI check (Yauheni Kaliuta) [1874005] - [net] bpf: Fix clobbering of r2 in bpf_gen_ld_abs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add bpf_{update, delete}_map_elem in hashmap iter program (Yauheni Kaliuta) [1874005] - [net] bpf: Do not use bucket_lock for hashmap iterator (Yauheni Kaliuta) [1874005] - [tools] libbpf: Remove arch-specific include path in Makefile (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: build: Make sure resolve_btfids cleans up after itself (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix build failure from uninitialized variable warning (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix massive output from test_maps (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix test_progs-flavor run getting number of tests (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a buffer out-of-bound access when filling raw_tp link_info (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix two typos in uapi/linux/bpf.h (Yauheni Kaliuta) [1874005] - [tools] tools/resolve_btfids: Fix sections with wrong alignment (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix map index used in error message (Yauheni Kaliuta) [1874005] - [tools] bpftool: Handle EAGAIN error code properly in pids collection (Yauheni Kaliuta) [1874005] - [net] bpf: Avoid visit same object multiple times (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a rcu_sched stall issue with bpf task/task_file iterator (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix build on ppc64le architecture (Yauheni Kaliuta) [1874005] - [net] bpf: Use get_file_rcu() instead of get_file() for task_file iterator (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Make test_varlen work with 32-bit user-space arch (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Generate data section struct with conservative alignment (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Correct various core_reloc 64-bit assumptions (Yauheni Kaliuta) [1874005] - [tools] libbpf: Enforce 64-bitness of BTF for BPF object files (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix btf_dump test cases on 32-bit arches (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle BTF pointer sizes more carefully (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix BTF-defined map-in-map initialization on 32-bit host arches (Yauheni Kaliuta) [1874005] - [tools] selftest/bpf: Fix compilation warnings in 32-bit mode (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix compilation warnings in 32-bit mode (Yauheni Kaliuta) [1874005] - [documentation] doc: Add link to bpf helpers man page (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests to sock_ops for loading sk (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests for sock_ops load with r9, r8.r7 registers (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests for ctx access in sock_ops with single register (Yauheni Kaliuta) [1874005] - [net] bpf: sock_ops sk access may stomp registers when dst_reg = src_reg (Yauheni Kaliuta) [1874005] - [net] bpf: sock_ops ctx access may stomp registers in corner case (Yauheni Kaliuta) [1874005] - [net] net/core/filter.c: Use sizeof_field() macro (Yauheni Kaliuta) [1874005] - [tools] libbpf: Prevent overriding errno when logging errors (Yauheni Kaliuta) [1874005] - [net] bpf: Iterate through all PT_NOTE sections when looking for build id (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle GCC built-in types for Arm NEON (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Make skeleton code C++17-friendly by dropping typeof() (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix v4_to_v6 in sk_lookup (Yauheni Kaliuta) [1874005] - [tools] libbpf: Do not use __builtin_offsetof for offsetof (Yauheni Kaliuta) [1874005] - [net] bpf: Delete repeated words in comments (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix silent Makefile output (Yauheni Kaliuta) [1874005] - [documentation] bpf, doc: Remove references to warning message when using bpf_trace_printk() (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix compilation warning of selftests (Yauheni Kaliuta) [1874005] - [kernel] bpf: Remove inline from bpf_do_trace_printk (Yauheni Kaliuta) [1874005] - [tools] bpf: Add missing return to resolve_btfids (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Support new uapi for map element bpf iterator (Yauheni Kaliuta) [1874005] - [net] bpf: Change uapi for bpf iterator map elements (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Prevent runqslower from racing on building bpftool (Yauheni Kaliuta) [1874005] - [net] bpf: Allow to specify ifindex for skb in bpf_prog_test_run_skb (Yauheni Kaliuta) [1874005] - [net] bpf: Setup socket family and addresses in bpf_prog_test_run_skb (Yauheni Kaliuta) [1874005] - [tools] tools/resolve_btfids: Use libbpf's btf__parse() API (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Use libbpf's btf__parse() API for parsing BTF from file (Yauheni Kaliuta) [1874005] - [tools] libbf: Fix uninitialized pointer at btf__parse_raw() (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add btf__parse_raw() and generic btf__parse() APIs (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Fix wrong return value in do_dump() (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix spurious test failures in core_retro selftest (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add documentation and bash-completion for `link detach` (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add `link detach` subcommand (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add bpf_link detach APIs (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Use single cgroup helpers for both test_sockmap/progs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix register in PT_REGS MIPS macros (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make destructors more robust by handling ERR_PTR(err) cases (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Omit nodad flag when adding addresses to loopback (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Don't destroy failed link (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add xdpdrv mode for test_xdp_redirect (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Verify socket storage in cgroup/sock_{create, release} (Yauheni Kaliuta) [1874005] - [net] bpf: Expose socket storage to BPF_PROG_TYPE_CGROUP_SOCK (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test bpf_iter buffer access with negative offset (Yauheni Kaliuta) [1874005] - [net] bpf: Add missing newline characters in verifier error messages (Yauheni Kaliuta) [1874005] - [arm64] bpf, arm64: Add BPF exception tables (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: use :: 1 for localhost in tcp_server.py (Yauheni Kaliuta) [1874005] - [net] bpf: Fix swapped arguments in calls to check_buffer_access (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add new bpf_iter context structs to fix build on old kernels (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix bpf_ringbuf_output() signature to return long (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Add LSM type to array of prog names (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Skip type probe if name is not found (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for BPF XDP link (Yauheni Kaliuta) [1874005] - [include] bpf: Make bpf_link API available indepently of CONFIG_BPF_SYSCALL (Yauheni Kaliuta) [1874005] - [net] bpf: Fix build on architectures with special bpf_user_pt_regs_t (Yauheni Kaliuta) [1874005] - [net] bpf/local_storage: Fix build without CONFIG_CGROUP (Yauheni Kaliuta) [1874005] - [documentation] Documentation/bpf: Document CGROUP_STORAGE map type (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test CGROUP_STORAGE behavior on shared egress + ingress (Yauheni Kaliuta) [1874005] - [net] bpf: Make cgroup storages shared between programs on the same cgroup (Yauheni Kaliuta) [1874005] - [net] cgroup: use cgrp->kn->id as the cgroup ID (Yauheni Kaliuta) [1874005] - [net] netprio: use css ID instead of cgroup ID (Yauheni Kaliuta) [1874005] - [fs] kernfs: convert kernfs_node->id from union kernfs_node_id to u64 (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add get_stackid_cannot_attach (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test CGROUP_STORAGE map can't be used by multiple progs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add callchain_stackid (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for CGROUP_STORAGE map on multiple attaches (Yauheni Kaliuta) [1874005] - [tools] libbpf: Print hint when PERF_EVENT_IOC_SET_BPF returns -EPROTO (Yauheni Kaliuta) [1874005] - [net] bpf: Fail PERF_EVENT_IOC_SET_BPF when bpf_get_cannot work (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add a test for out of bound rdonly buf access (Yauheni Kaliuta) [1874005] - [net] bpf: Separate bpf_get_for perf events BPF (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add a test for bpf sk_storage_map iterator (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for bpf array map iterators (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for bpf hash map iterators (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add bpftool support for bpf map element iterator (Yauheni Kaliuta) [1874005] - [tools] tools/libbpf: Add support for bpf map element iterator (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for sock local storage map (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for array maps (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for hash maps (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for map elements (Yauheni Kaliuta) [1874005] - [net] bpf: Fix pos computation for bpf_iter seq_ops->start() (Yauheni Kaliuta) [1874005] - [net] bpf: Support readonly/readwrite buffers in verifier (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test BPF socket lookup and reuseport with connections (Yauheni Kaliuta) [1874005] - [net] bpf: Refactor to provide aux info to bpf_iter_init_seq_priv_t (Yauheni Kaliuta) [1874005] - [net] bpf: Refactor bpf_iter_reg to have separate seq_info member (Yauheni Kaliuta) [1874005] - [net] bpf: Add bpf_prog iterator (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Strip BPF .o files before skeleton generation (Yauheni Kaliuta) [1874005] - [documentation] docs: bpf/bpf_devel_QA.rst: fix reference to nonexistent document (Yauheni Kaliuta) [1874005] - [documentation] docs: bpf/index.rst: Add ringbuf.rst (Yauheni Kaliuta) [1874005] - [tools] bpftool: Use only nftw for file tree parsing (Yauheni Kaliuta) [1874005] - [net] bpf: net: Use precomputed btf_id for bpf iterators (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix test_lwt_seg6local.sh hangs (Yauheni Kaliuta) [1874005] - [net] bpf: Make btf_sock_ids global (Yauheni Kaliuta) [1874005] - [tools] bpf: Add BTF_ID_LIST_GLOBAL in btf_ids.h (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Sync btf_ids.h to tools (Yauheni Kaliuta) [1874005] - [net] bpf: Compute bpf_skc_to_*() helper socket btf ids at build time (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix error handing in do_skeleton() (Yauheni Kaliuta) [1874005] - [tools] libbpf bpf_helpers: Use __builtin_offsetof for offsetof (Yauheni Kaliuta) [1874005] - [s390] s390/bpf: Use bpf_skip() in bpf_jit_prologue() (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Fix possible rcpu kthread hung (Yauheni Kaliuta) [1874005] - [s390] s390/bpf: implement BPF_PROBE_MEM (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/kernel: expand exception table logic to allow new handling options (Yauheni Kaliuta) [1874005 1868273] - [s390] s390: fix __EMIT_BUG() macro (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/bug: add entry size to the __bug_table section (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/kernel: unify EX_TABLE* implementations (Yauheni Kaliuta) [1874005 1868273] - [tools] selftests/bpf: Tests for BPF_SK_LOOKUP attach point (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add verifier tests for bpf_sk_lookup context access (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add name mappings for SK_LOOKUP prog and attach type (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for SK_LOOKUP program type (Yauheni Kaliuta) [1874005] - [tools] bpf: Sync linux/bpf.h to tools/ (Yauheni Kaliuta) [1874005] - [include] bpf: Introduce SK_LOOKUP program type with a dedicated attach point (Yauheni Kaliuta) [1874005] - [net] bpf, netns: Handle multiple link attachments (Yauheni Kaliuta) [1874005] - [tools] bpf: Drop duplicated words in uapi helper comments (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix possible hang in sockopt_inherit (Yauheni Kaliuta) [1874005] - [tools] selftest: Add tests for XDP programs in CPUMAP entries (Yauheni Kaliuta) [1874005] - [samples] samples/bpf: xdp_redirect_cpu: Load a eBPF program on cpumap (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add SEC name for xdp programs attached to CPUMAP (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Implement XDP_REDIRECT for eBPF programs attached to map entries (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Add the possibility to attach an eBPF program to cpumap (Yauheni Kaliuta) [1874005] - [net] net: Refactor xdp_convert_buff_to_frame (Yauheni Kaliuta) [1874005] - [net] cpumap: Formalize map value as a named struct (Yauheni Kaliuta) [1874005] - [samples] samples/bpf: xdp_redirect_cpu_user: Do not update bpf maps in option loop (Yauheni Kaliuta) [1874005] - [net] cpumap: Use non-locked version __ptr_ring_consume_batched (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Consolidate powerpc instructions from bpf_jit.h (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/bpf_jit: Reuse instruction macros from ppc-opcode.h (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Move ppc instruction encoding from test_emulate_step (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/lib: Fix emulate_step() std test (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Introduce PPC_RAW_* macros for base instruction encoding (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix cross build for CONFIG_DEBUG_INFO_BTF option (Yauheni Kaliuta) [1874005] - [include] bpf: Fix build for disabled CONFIG_DEBUG_INFO_BTF option (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Strip away modifiers from global variables (Yauheni Kaliuta) [1874005] - [tools] libbpf: Support stripping modifiers for btf_dump (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add selftests verifying bpf_trace_printk() behaviour (Yauheni Kaliuta) [1874005] - [kernel] bpf: Use dedicated bpf_trace_printk event instead of trace_printk() (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Remove warning about PID iterator support (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for resolve_btfids (Yauheni Kaliuta) [1874005] - [tools] tools headers: Adopt verbatim copy of btf_ids.h from kernel sources (Yauheni Kaliuta) [1874005] - [documentation] bpf: Add info about .BTF_ids section to btf.rst (Yauheni Kaliuta) [1874005] - [net] bpf: Use BTF_ID to resolve bpf_ctx_convert struct (Yauheni Kaliuta) [1874005] - [net] bpf: Remove btf_id helpers resolving (Yauheni Kaliuta) [1874005] - [net] bpf: Resolve BTF IDs in vmlinux image (Yauheni Kaliuta) [1874005] - [include] bpf: Add BTF_ID_LIST/BTF_ID/BTF_ID_UNUSED macros (Yauheni Kaliuta) [1874005] - [net] bpf: Support llvm-objcopy for vmlinux BTF (Yauheni Kaliuta) [1874005] - [powerpc] powerpc: Include .BTF section (Yauheni Kaliuta) [1874005] - [scripts] kbuild: Remove debug info from kallsyms linking (Yauheni Kaliuta) [1874005] - [scripts] kbuild: Parameterize kallsyms generation and correct reporting (Yauheni Kaliuta) [1874005] - [tools] bpf: Compile resolve_btfids tool at kernel compilation start (Yauheni Kaliuta) [1874005] - [kernel] tracing: Make struct ring_buffer less ambiguous (Yauheni Kaliuta) [1874005] - [kernel] tracing: Rename trace_buffer to array_buffer (Yauheni Kaliuta) [1874005] - [tools] tools headers: Synchronize linux/bits.h with the kernel sources (Yauheni Kaliuta) [1874005] - [tools] tools headers: Update linux/vdso.h and grab a copy of vdso/const.h (Yauheni Kaliuta) [1874005] - [tools] tools headers: Adopt verbatim copy of compiletime_assert() from kernel sources (Yauheni Kaliuta) [1874005] - [tools] objtool: Query pkg-config for libelf location (Yauheni Kaliuta) [1874005] - [tools] bpf: Add resolve_btfids tool to resolve BTF IDs in ELF object (Yauheni Kaliuta) [1874005] - [samples] bpf: Fix fds_example SIGSEGV error (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix memory leak and optimize BTF sanitization (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Switch perf_buffer test to tracepoint and skeleton (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle missing BPF_OBJ_GET_INFO_BY_FD gracefully in perf_buffer (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test relying only on CO-RE and no recent kernel features (Yauheni Kaliuta) [1874005] - [tools] libbpf: Improve BTF sanitization handling (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add btf__set_fd() for more control over loaded BTF FD (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make BTF finalization strict (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: test_progs avoid minus shell exit codes (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: test_progs use another shell exit on non-actions (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix another bpftool segfault without skeleton code enabled (Yauheni Kaliuta) [1874005] - [tools] selftests: bpf: Remove unused bpf_map_def_legacy struct (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Refactor BPF map performance test with libbpf (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Refactor BPF map in map test with libbpf (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Fix bpf programs with kprobe/sys_connect event (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [tools] bpftool: Add support for BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [net] bpf: Add BPF_CGROUP_INET_SOCK_RELEASE hook (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix compilation error of bpf_iter_task_stack.c (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix bpftool without skeleton code enabled (Yauheni Kaliuta) [1874005] - [net] bpf: Fix build without CONFIG_STACKTRACE (Yauheni Kaliuta) [1874005] - [tools] bpf: selftests: Restore netns after each test (Yauheni Kaliuta) [1874005] - [tools] bpf: selftests: A few improvements to network_helpers.c (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs option for listing test names (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs option for getting number of tests (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs indicate to shell on non-actions (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Turn off -Wnested-externs warning (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Switch test_vmlinux to use hrtimer_range_start_ns (Yauheni Kaliuta) [1874005] - [net] bpf: Fix net/core/filter build errors when INET is not enabled (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add bpf_iter test with bpf_get_task_stack() (Yauheni Kaliuta) [1874005] - [kernel] bpf: Allow pB in bpf_seq_printf() and bpf_trace_printk() (Yauheni Kaliuta) [1874005] - [net] bpf: Introduce helper bpf_get_task_stack() (Yauheni Kaliuta) [1874005] - [net] bpf: Remove redundant synchronize_rcu (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add byte swapping selftest (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make bpf_endian co-exist with vmlinux.h (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Allow substituting custom vmlinux.h for selftests build (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Allow substituting custom vmlinux.h for the build (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test auto-load disabling logic for BPF programs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Support disabling auto-loading BPF programs (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Define attach_type_name array only once (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Define prog_type_name array only once (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add tcp/udp iterator programs to selftests (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Implement sample udp/udp6 bpf_iter programs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Implement sample tcp/tcp6 bpf_iter programs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add more common macros to bpf_tracing_net.h (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Refactor some net macros to bpf_tracing_net.h (Yauheni Kaliuta) [1874005] - [kernel] bpf: Add bpf_skc_to_udp6_sock() helper (Yauheni Kaliuta) [1874005] - [net] net: bpf: Implement bpf iterator for udp (Yauheni Kaliuta) [1874005] - [net] net: bpf: Add bpf_seq_afinfo in udp_iter_state (Yauheni Kaliuta) [1874005] - [kernel] bpf: Add bpf_skc_to_{tcp, tcp_timewait, tcp_request}_sock() helpers (Yauheni Kaliuta) [1874005] - [net] bpf: Add bpf_skc_to_tcp6_sock() helper (Yauheni Kaliuta) [1874005] - [kernel] bpf: Allow tracing programs to use bpf_jiffies64() helper (Yauheni Kaliuta) [1874005] - [kernel] bpf: Support 'X' in bpf_seq_printf() helper (Yauheni Kaliuta) [1874005] - [net] net: bpf: Implement bpf iterator for tcp (Yauheni Kaliuta) [1874005] - [net] net: bpf: Add bpf_seq_afinfo in tcp_iter_state (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Workaround for get_stack_rawtp test (Yauheni Kaliuta) [1874005] - [tools] libbpf: Prevent loading vmlinux BTF twice (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix spelling mistake "kallasyms" -> "kallsyms" (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Fix variable shadowing in emit_obj_refs_json() (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Correctly evaluate $(BUILD_BPF_SKELS) in Makefile (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add variable-length data concat pattern less than test (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add variable-length data concatenation pattern test (Yauheni Kaliuta) [1874005] - [tools] bpf: Switch most helper return values from 32-bit int to 64-bit long (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add documentation and sample output for process info (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Show info for processes holding BPF map/prog/link/btf FDs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Wrap source argument of BPF_CORE_READ macro in parentheses (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Generalize BPF skeleton support and generate vmlinux.h (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Minimize bootstrap bpftool (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Move map/prog parsing logic into common (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add __ksym extern selftest (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for extracting kernel symbol addresses (Yauheni Kaliuta) [1874005] - [tools] libbpf: Generalize libbpf externs support (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add a bunch of attribute getters/setters for map definitions (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test access to bpf map pointer (Yauheni Kaliuta) [1874005] - [net] bpf: Set map_btf_{name, id} for all map types (Yauheni Kaliuta) [1874005] - [net] bpf: Support access to bpf map fields (Yauheni Kaliuta) [1874005] - [net] bpf: Rename bpf_htab to bpf_shtab in sock_map (Yauheni Kaliuta) [1874005] - [net] bpf: Switch btf_parse_vmlinux to btf_find_by_name_kind (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Relicense bpftool's BPF profiler prog as dual-license GPL/BSD (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Add verifier tests for 32bit pointer/scalar arithmetic (Yauheni Kaliuta) [1874005] - [net] bpf: Avoid verifier failure for 32bit pointer arithmetic (Yauheni Kaliuta) [1874005] - [net] bpf: sk_storage: Prefer to get a free cache_idx (Yauheni Kaliuta) [1874005] - [tools] libbpf: Bump version to 0.1.0 (Yauheni Kaliuta) [1874005] - [s390] s390/pci: fix hot-plug of PCI function missing bus (Philipp Rudo) [1915916] - [net] tcp: fix race condition when creating child sockets from syncookies (Florian Westphal) [1915164] - [netdrv] bonding: set xfrm feature flags more sanely (Jarod Wilson) [1893979] - [netdrv] bonding: fix feature flag setting at init time (Jarod Wilson) [1893979]- [fs] cifs: handle -EINTR in cifs_setattr (Leif Sahlberg) [1848178] - [tty] serial: 8250: drop the printk from serial8250_interrupt() (Vitaly Kuznetsov) [1919745] - [fs] cifs: do not fail __smb_send_rqst if non-fatal signals are pending (Leif Sahlberg) [1848178] - [netdrv] ibmvnic: continue fatal error reset after passive init (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix: NULL pointer dereference (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix login buffer memory leak (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix rx buffer tracking and index management in replenish_rx_pool partial success (Diego Domingos) [1901513] - [netdrv] ibmvnic: add some debugs (Diego Domingos) [1901513] - [netdrv] ibmvnic: Fix TX completion error handling (Diego Domingos) [1901513] - [netdrv] ibmvnic: Ensure that SCRQ entry reads are correctly ordered (Diego Domingos) [1901513] - [netdrv] ibmvnic: reduce wait for completion time (Diego Domingos) [1901513] - [netdrv] ibmvnic: no reset timeout for 5 seconds after reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: send_login should check for crq errors (Diego Domingos) [1901513] - [netdrv] ibmvnic: track pending login (Diego Domingos) [1901513] - [netdrv] ibmvnic: delay next reset if hard reset fails (Diego Domingos) [1901513] - [netdrv] ibmvnic: restore adapter state on failed reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: avoid memset null scrq msgs (Diego Domingos) [1901513] - [netdrv] ibmvnic: stop free_all_rwi on failed reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: handle inconsistent login with reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: enhance resetting status check during module exit (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues (Diego Domingos) [1901513] - [netdrv] ibmvnic: skip tx timeout reset while in resetting (Diego Domingos) [1901513] - [netdrv] ibmvnic: notify peers when failover and migration happen (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix call_netdevice_notifiers in do_reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: Do not replenish RX buffers after every polling loop (Diego Domingos) [1901513] - [netdrv] ibmvnic: Use netdev_alloc_skb instead of alloc_skb to replenish RX buffers (Diego Domingos) [1901513] - [netdrv] ibmvnic: Correctly re-enable interrupts in NAPI polling routine (Diego Domingos) [1901513] - [netdrv] ibmvnic: Ensure that device queue memory is cache-line aligned (Diego Domingos) [1901513] - [netdrv] ibmvnic: Remove send_subcrq function (Diego Domingos) [1901513] - [netdrv] ibmvnic: Clean up TX code and TX buffer data structure (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce xmit_more support using batched subCRQ hcalls (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce batched RX buffer descriptor transmission (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce indirect subordinate Command Response Queue buffer (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix ibmvnic_set_mac (Diego Domingos) [1901513] - [netdrv] ibmvnic: save changed mac address to adapter->mac_addr (Diego Domingos) [1901513] - [netdrv] ibmvnic: create send_control_ip_offload (Diego Domingos) [1901513] - [netdrv] ibmvnic: create send_query_ip_offload (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename send_map_query to send_query_map (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename ibmvnic_send_req_caps to send_request_cap (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename send_cap_queries to send_query_cap (Diego Domingos) [1901513] - [netdrv] ibmvnic: set up 200GBPS speed (Diego Domingos) [1901513] - [netdrv] Revert "ibmvnic: remove never executed if statement" (Diego Domingos) [1901513] - [netdrv] ibmvnic: Harden device Command Response Queue handshake (Diego Domingos) [1901513] - [netdrv] ibmvnic: Fix use-after-free of VNIC login response buffer (Diego Domingos) [1901513] - [netdrv] ibmvnic: merge ibmvnic_reset_init and ibmvnic_init (Diego Domingos) [1901513] - [netdrv] ibmvnic: remove never executed if statement (Diego Domingos) [1901513] - [netdrv] ibmvnic: improve ibmvnic_init and ibmvnic_reset_init (Diego Domingos) [1901513] - [netdrv] ibmvnic: compare adapter->init_done_rc with more readable ibmvnic_rc_codes (Diego Domingos) [1901513] - [netdrv] ibmvnic: store RX and TX subCRQ handle array in ibmvnic_adapter struct (Diego Domingos) [1901513] - [netdrv] net: ibm: fix return type of ndo_start_xmit function (Diego Domingos) [1901513] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (David Arcari) [1916478] - [x86] x86/cpu/amd: Call init_amd_zn() om Family 19h processors too (David Arcari) [1916478] - [ata] ahci: Add Intel Emmitsburg PCH RAID PCI IDs (David Arcari) [1894284] - [vfio] vfio iommu: Add dma available capability (Philipp Rudo) [1903970] - [x86] x86/entry/64: Do not include inst.h in calling.h (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix GS == 1, 2, and 3 tests (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Reap a forgotten child (Scott Wood) [1490498] - [x86] x86/fsgsbase: Replace static_cpu_has() with boot_cpu_has() (Scott Wood) [1490498] - [x86] x86/entry/64: Correct the comment over SAVE_AND_SET_GSBASE (Scott Wood) [1490498] - [x86] x86/entry/64: Do not use RDPID in paranoid entry to accomodate KVM (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task (Scott Wood) [1490498] - [x86] x86/fsgsbase: Fix Xen PV support (Scott Wood) [1490498] - [x86] x86/ptrace: Fix 32-bit PTRACE_SETREGS vs fsbase and gsbase (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Add a missing memory constraint (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix a comment in the ptrace_write_gsbase test (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base write (Scott Wood) [1490498] - [documentation] Documentation/x86/64: Add documentation for GS/FS addressing mode (Scott Wood) [1490498] - [x86] x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 (Scott Wood) [1490498] - [x86] x86/cpu: Enable FSGSBASE on 64bit by default and add a chicken bit (Scott Wood) [1490498] - [x86] x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit (Scott Wood) [1490498] - [x86] x86/entry/64: Remove TRACE_IRQS_*_DEBUG (Scott Wood) [1490498] - [x86] x86/entry/64: Introduce the FIND_PERCPU_BASE macro (Scott Wood) [1490498] - [x86] x86/entry/64: Switch CR3 before SWAPGS in paranoid entry (Scott Wood) [1490498] - [x86] x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation (Scott Wood) [1490498] - [x86] x86/process/64: Use FSGSBASE instructions on thread copy and ptrace (Scott Wood) [1490498] - [x86] x86/process: Unify copy_thread_tls() (Scott Wood) [1490498] - [x86] x86/process/64: Use FSBSBASE in switch_to() if available (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions (Scott Wood) [1490498] - [x86] x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE (Scott Wood) [1490498] - [x86] x86/ptrace: Prevent ptrace from clearing the FS/GS selector (Scott Wood) [1490498] - [x86] x86/ptrace: Document FSBASE and GSBASE ABI oddities (Scott Wood) [1490498] - [x86] Revert "x86/ptrace: Prevent ptrace from clearing the FS/GS selector" and fix the test (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix some test case bugs (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test ptracer-induced GSBASE write with FSGSBASE (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test RD/WRGSBASE (Scott Wood) [1490498] - [documentation] kbuild: Raise the minimum required binutils version to 2.21 (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test ptracer-induced GSBASE write (Scott Wood) [1490498] - [x86] x86/ptrace: Prevent ptrace from clearing the FS/GS selector (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix the base write helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Clean up various details (Scott Wood) [1490498] - [x86] x86/segments: Introduce the 'CPUNODE' naming to better document the segment limit CPU/node NR trick (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Factor out FS/GS segment loading from __switch_to() (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Convert the ELF core dump code to the new FSGSBASE helpers (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Make ptrace use the new FS/GS base helpers (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Introduce FS/GS base helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix ptrace() to read the FS/GS base accurately (Scott Wood) [1490498] - [net] esp: select CRYPTO_SEQIV (Vladis Dronov) [1905088] - [crypto] treewide: Use fallthrough pseudo-keyword (Vladis Dronov) [1905088] - [crypto] crypto: drbg - always try to free Jitter RNG instance (Vladis Dronov) [1905088] - [crypto] crypto: drbg - should select CTR (Vladis Dronov) [1905088] - [crypto] crypto: ctr - no longer needs CRYPTO_SEQIV (Vladis Dronov) [1905088] - [crypto] crypto: drbg - always seeded with SP800-90B compliant noise source (Vladis Dronov) [1905088] - [crypto] crypto: jitter - SP800-90B compliance (Vladis Dronov) [1905088] - [crypto] crypto: jitter - add header to fix buildwarnings (Vladis Dronov) [1905088] - [crypto] crypto: jitter - fix comments (Vladis Dronov) [1905088] - [crypto] crypto: jitter - update implementation to 2.1.2 (Vladis Dronov) [1905088] - [crypto] crypto: drbg - in-place cipher operation for CTR (Vladis Dronov) [1905088] - [crypto] crypto: drbg - eliminate constant reinitialization of SGL (Vladis Dronov) [1905088] - [vfio] vfio/pci: Implement ioeventfd thread handler for contended memory lock (Alex Williamson) [1861560] - [vfio] vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages (Alex Williamson) [1896568] - [vfio] vfio/pci: Clear token on bypass registration failure (Alex Williamson) [1896568] - [vfio] vfio/type1: fix dirty bitmap calculation in vfio_dma_rw (Alex Williamson) [1497898] - [vfio] vfio: fix a missed vfio group put in vfio_pin_pages (Alex Williamson) [1497898] - [vfio] vfio: add a singleton check for vfio_group_pin_pages (Alex Williamson) [1497898] - [vfio] vfio/pci: Don't regenerate vconfig for all BARs if !bardirty (Alex Williamson) [1896568] - [vfio] vfio/pci: Remove redundant declaration of vfio_pci_driver (Alex Williamson) [1896568] - [uapi] vfio: Fix typo of the device_state (Alex Williamson) [1497898] - [vfio] vfio/type1: Add proper error unwind for vfio_iommu_replay() (Alex Williamson) [1866141] - [vfio] vfio-pci: Avoid recursive read-lock usage (Alex Williamson) [1861560] - [vfio] vfio/type1: Refactor vfio_iommu_type1_ioctl() (Alex Williamson) [1896568] - [vfio] vfio/pci: Add QAT devices to denylist (Alex Williamson) [1896565] - [vfio] vfio/pci: Add device denylist (Alex Williamson) [1896565] - [vfio] vfio/pci: Hold igate across releasing eventfd contexts (Alex Williamson) [1896568] - [vfio] vfio/type1: Add conditional rescheduling after iommu map failed (Alex Williamson) [1896568] - [vfio] vfio/pci: Add Intel X550 to hidden INTx devices (Alex Williamson) [1896567] - [vfio] vfio: Cleanup allowed driver naming (Alex Williamson) [1896568] - [uapi] vfio/type1: Fix migration info capability ID (Alex Williamson) [1497898] - [vfio] vfio iommu: typecast corrections (Alex Williamson) [1497898] - [vfio] vfio iommu: Use shift operation for 64-bit integer division (Alex Williamson) [1497898] - [vfio] vfio/mdev: Fix reference count leak in add_mdev_supported_type (Alex Williamson) [1896568] - [vfio] vfio: Selective dirty page tracking if IOMMU backed device pins pages (Alex Williamson) [1497898] - [vfio] vfio iommu: Add migration capability to report supported features (Alex Williamson) [1497898] - [vfio] vfio iommu: Update UNMAP_DMA ioctl to get dirty bitmap before unmap (Alex Williamson) [1497898] - [vfio] vfio iommu: Implementation of ioctl for dirty pages tracking (Alex Williamson) [1497898] - [uapi] vfio iommu: Add ioctl definition for dirty pages tracking (Alex Williamson) [1497898] - [vfio] vfio iommu: Cache pgsize_bitmap in struct vfio_iommu (Alex Williamson) [1497898] - [vfio] vfio iommu: Remove atomicity of ref_count of pinned pages (Alex Williamson) [1497898] - [uapi] vfio: UAPI for migration interface for device state (Alex Williamson) [1497898] - [vfio] vfio/pci: Remove dev_fmt definition (Alex Williamson) [1896568] - [vfio] vfio: Use dev_printk() when possible (Alex Williamson) [1896568] - [drm] drm: allow limiting the scatter list size (Lyude Paul) [1876018 1851790] - [drm] drm/nouveau/kms/nv50-: Fix clock checking algorithm in nv50_dp_mode_valid() (Lyude Paul) [1876018] - [drm] drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid() (Lyude Paul) [1876018] - [drm] DRM Backport 5.8 -> 5.9 (Lyude Paul) [1876018] - [drm] drm/edid: Fix uninitialized variable in drm_cvt_modes() (Lyude Paul) [1876018] - [of] of_graph: add of_graph_is_present() (Lyude Paul) [1876018] - [drm] virtio: virtio_has_iommu_quirk -> virtio_has_dma_quirk (Lyude Paul) [1876018] - [vhost] virtio: VIRTIO_F_IOMMU_PLATFORM -> VIRTIO_F_ACCESS_PLATFORM (Lyude Paul) [1876018] - [include] virtio_config: LE config space accessors (Lyude Paul) [1876018] - [kernel] sched: Remove sched_set_*() return value (Lyude Paul) [1876018] - [include] scatterlist: protect parameters of the sg_table related macros (Lyude Paul) [1876018] - [include] scatterlist: add generic wrappers for iterating over sgtable objects (Lyude Paul) [1876018] - [dma] dma-mapping: add generic helpers for mapping sgtable objects (Lyude Paul) [1876018] - [drm] DRM Backport 5.7 -> 5.8 (Lyude Paul) [1876018] - [drm] drm/fb-helper: Fix vt restore (Lyude Paul) [1876018] - [tty] tty/sysrq: constify the the sysrq_key_op(s) (Lyude Paul) [1876018] - [tools] augmented rbtree: rework the RB_DECLARE_CALLBACKS macro definition (Lyude Paul) [1876018] - [mm] augmented rbtree: add new RB_DECLARE_CALLBACKS_MAX macro (Lyude Paul) [1876018] - [tools] augmented rbtree: add comments for RB_DECLARE_CALLBACKS macro (Lyude Paul) [1876018] - [tools] rbtree: avoid generating code twice for the cached versions (tools copy) (Lyude Paul) [1876018] - [tty] tty/sysrq: constify the sysrq API (Lyude Paul) [1876018] - [tty] tty/sysrq: alpha: export and use __sysrq_get_key_op() (Lyude Paul) [1876018] - [include] uaccess: Add user_read_access_begin/end and user_write_access_begin/end (Lyude Paul) [1876018] - [PATCH] [drm] DRM Backport 5.6 -> 5.7 (Lyude Paul) [1876018] - [vfio] vfio: avoid inefficient operations on VFIO group in vfio_pin/unpin_pages (Lyude Paul) [1876018] - [vfio] vfio: allow external user to get vfio group from device (Lyude Paul) [1876018] - [drm] drm/fbdev-helper: don't force restores (Lyude Paul) [1876018] - [include] vgaswitcheroo: call fbcon_remap_all directly (Lyude Paul) [1876018] - [video] fbcon: Do not takeover the console from atomic context (Lyude Paul) [1878805 1876018] - [video] fbcon: Only defer console takeover if the current console driver is the dummycon (Lyude Paul) [1878805 1876018] - [video] fbcon: Only allow FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER if fbdev is builtin (Lyude Paul) [1878805 1876018] - [video] console/fbcon: Add support for deferred console takeover (Lyude Paul) [1878805 1876018] - [video] fbcon: Call WARN_CONSOLE_UNLOCKED() where applicable (Lyude Paul) [1878805 1876018] - [mm] mm: Split huge pages on write-notify or COW (Chris von Recklinghausen) [1913692] - [mm] mm: Introduce vma_is_special_huge (Chris von Recklinghausen) [1913692]- [tools] kselftests: set rx/txtimestamp.sh to correct permission (Hangbin Liu) [1908269] - [tools] kselftests: set udpgro.sh, udpgro_bench.sh, reuseport_addr_any.sh to correct permission (Hangbin Liu) [1908269] - [net] DCB: Validate DCB_ATTR_DCB_BUFFER argument (Balazs Nemeth) [1891595] - [net] netlabel: remove unused param from audit_log_format() (Balazs Nemeth) [1891595] - [net] netlabel: fix problems with mapping removal (Balazs Nemeth) [1891595] - [net] af_key: pfkey_dump needs parameter validation (Balazs Nemeth) [1891595] - [tools] perf tools: Add 'evlist' control command (Jiri Olsa) [1844111] - [tools] perf tools: Allow to enable/disable events via control file (Jiri Olsa) [1844111] - [tools] perf tools: Add evlist__disable_evsel/evlist__enable_evsel (Jiri Olsa) [1844111] - [tools] perf tools: Reformat record's control fd man text (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' 'find' methods (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' enable event methods (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' 'toggle' methods (Jiri Olsa) [1844111] - [x86] perf/amd/uncore: Inform the user how many counters each uncore PMU has (Michael Petlan) [1884816] - [powercap] powercap: RAPL: Add AMD Fam19h RAPL support (Michael Petlan) [1884816] - [powercap] powercap: Add AMD Fam17h RAPL support (Michael Petlan) [1884816] - [powercap] powercap/intel_rapl_msr: Convert rapl_msr_priv into pointer (Michael Petlan) [1884816] - [x86] x86/msr-index: sort AMD RAPL MSRs by address (Michael Petlan) [1884816] - [thunderbolt] thunderbolt: Add support for Intel Maple Ridge (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add USB4 router operation proxy for firmware connection manager (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Move constants for USB4 router operations to tb_regs.h (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add connection manager specific hooks for USB4 router operations (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Pass TX and RX data directly to usb4_switch_op() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Pass metadata directly to usb4_switch_op() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Perform USB4 router NVM upgrade in two phases (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Return -ENOTCONN when ERR_CONN is received (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Keep the parent runtime resumed for a while on device disconnect (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Log adapter numbers in decimal in path activation/deactivation (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Log which connection manager implementation is used (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Move max_boot_acl field to correct place in struct icm (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Fix use-after-free in remove_unplugged_switch() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add DMA traffic test driver (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add support for end-to-end flow control (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Make it possible to allocate one directional DMA tunnel (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Create debugfs directory automatically for services (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add functions for enabling and disabling lane bonding on XDomain (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add link_speed and link_width to XDomain (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Create XDomain devices for loops back to the host (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Find XDomain by route instead of UUID (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Do not clear USB4 router protocol adapter IFC and ISE bits (Torez Smith) [1782721] - [net] ipv6: fib: flush exceptions when purging route (Hangbin Liu) [1916084] - [net] ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init (Hangbin Liu) [1916084] - [net] ipv6: remove unused function ipv6_skb_idev() (Hangbin Liu) [1916084] - [net] ipv6: Fix error path to cancel the meseage (Hangbin Liu) [1916084] - [tools] selftests/net/fib_tests: update addr_metric_test for peer route testing (Hangbin Liu) [1916084] - [net] net/ipv6: remove the old peer route if change it to a new one (Hangbin Liu) [1916084] - [tools] selftests/net: remove not backported tests (Hangbin Liu) [1908340] - [netdrv] bonding: add a vlan+srcmac tx hashing option (Jarod Wilson) [1724795] - [security] selinux: mark selinux_xfrm_refcount as __read_mostly (Ondrej Mosnacek) [1904940] - [net] udp: fix integer overflow while computing available space in sk_rcvbuf (Xin Long) [1916997] - [fs] NFSv4: make cache consistency bitmask dynamic (Steve Dickson) [1881647] - [include] NFSv4: Save a few bytes in the nfs_pgio_args/res (Steve Dickson) [1881647] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1884818 1908305] - [tools] perf test: Use generic event for expand_libpfm_events() (Michael Petlan) [1884818 1908305] - [tools] perf probe: Change function definition check due to broken DWARF (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fix to die_entrypc() returns error correctly (Michael Petlan) [1884818 1908305] - [tools] perf stat: Use proper cpu for shadow stats (Michael Petlan) [1884818 1908305] - [tools] perf record: Synthesize cgroup events only if needed (Michael Petlan) [1884818 1908305] - [tools] perf diff: Fix error return value in __cmd_diff() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Update copy of libbpf's hashmap.c (Michael Petlan) [1884818 1908305] - [tools] perf test: Avoid an msan warning in a copied stack (Michael Petlan) [1884818 1908305] - [tools] perf inject: Fix file corruption due to event deletion (Michael Petlan) [1884818 1908305] - [tools] perf test: Update branch sample pattern for cs-etm (Michael Petlan) [1884818 1908305] - [tools] perf test: Fix a typo in cs-etm testing (Michael Petlan) [1884818 1908305] - [tools] perf lock: Don't free "lock_seq_stat" if read_count isn't zero (Michael Petlan) [1884818 1908305] - [tools] perf lock: Correct field name "flags" (Michael Petlan) [1884818 1908305] - [tools] tools feature: Fixup fast path feature detection (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add missing swap for cgroup events (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add missing swap for ino_generation (Michael Petlan) [1884818 1908305] - [tools] perf tools: Initialize output buffer in build_id__sprintf (Michael Petlan) [1884818 1908305] - [tools] perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse() (Michael Petlan) [1884818 1908305] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1884818 1908305] - [tools] perf scripting python: Avoid declaring function pointers with a visibility attribute (Michael Petlan) [1884818 1908305] - [tools] perf tools: Remove broken __no_tail_call attribute (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Fix DRAM_BW_Use 0 issue for CLX/SKX (Michael Petlan) [1884818 1908305] - [tools] perf trace: Fix segfault when trying to trace events by cgroup (Michael Petlan) [1884818 1908305] - [tools] perf tools: Fix crash with non-jited bpf progs (Michael Petlan) [1884818 1908305] - [tools] perf tools: Update copy of libbpf's hashmap.c (Michael Petlan) [1884818 1908305] - [tools] perf tools: Remove LTO compiler options when building perl support (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Update documentation for metrics reorganization (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Add metrics "RMT Load Hit" (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Correct LLC load hit metrics (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Change header for LLC local hit (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Use more explicit headers for HITM (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Change header from "LLC Load Hitm" to "Load Hitm" (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Organize metrics based on memory hierarchy (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Display "Total Stores" as a standalone metrics (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Display the total numbers continuously (Michael Petlan) [1884818 1908305] - [tools] perf bench: Use condition variables in numa (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Fix event code for events referencing std arch events (Michael Petlan) [1884818 1908305] - [tools] perf diff: Support hot streams comparison (Michael Petlan) [1884818 1908305] - [tools] perf streams: Report hot streams (Michael Petlan) [1884818 1908305] - [tools] perf streams: Calculate the sum of total streams hits (Michael Petlan) [1884818 1908305] - [tools] perf streams: Link stream pair (Michael Petlan) [1884818 1908305] - [tools] perf streams: Compare two streams (Michael Petlan) [1884818 1908305] - [tools] perf streams: Get the evsel_streams by evsel_idx (Michael Petlan) [1884818 1908305] - [tools] perf streams: Introduce branch history "streams" (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Improve PT documentation slightly (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add support for exclusive groups/events (Michael Petlan) [1884818 1908305] - [tools] perf test: Add build id shell test (Michael Petlan) [1884818 1908305] - [tools] perf tools: Align buildid list output for short build ids (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add size to 'struct perf_record_header_build_id' (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to dso__build_id_equal() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to dso__set_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to build_id__sprintf() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build id object to sysfs__read_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to filename__read_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Use build_id object in dso (Michael Petlan) [1884818 1908305] - [tools] perf config: Export the perf_config_from_file() function (Michael Petlan) [1884818 1908305] - [tools] perf python: Autodetect python3 binary (Michael Petlan) [1884818 1908305] - [tools] perf tests: Show python test script in verbose mode (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Update usage for showing memory events (Michael Petlan) [1884818 1908305] - [tools] perf stat: Fix out of bounds CPU map access when handling armv8_pmu events (Michael Petlan) [1884818 1908305] - [tools] perf python scripting: Fix printable strings in python3 scripts (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Fix uncore metric expressions (Michael Petlan) [1884818 1908305] - [tools] perf parse-event: Release cpu_map refcount if evsel alloc failed (Michael Petlan) [1884818 1908305] - [tools] perf parse-event: Fix cpu map refcounting (Michael Petlan) [1884818 1908305] - [tools] tools lib traceevent: Hide non API functions (Michael Petlan) [1884818 1908305] - [tools] perf sched: Show start of latency as well (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Fix typos in power8 PMU events (Michael Petlan) [1884818 1908305] - [tools] perf bench: Run inject-build-id with --buildid-all option too (Michael Petlan) [1884818 1908305] - [tools] perf inject: Add --buildid-all option (Michael Petlan) [1884818 1908305] - [tools] perf inject: Do not load map/dso when injecting build-id (Michael Petlan) [1884818 1908305] - [tools] perf inject: Enter namespace when reading build-id (Michael Petlan) [1884818 1908305] - [tools] perf inject: Add missing callbacks in perf_tool (Michael Petlan) [1884818 1908305] - [tools] perf bench: Add build-id injection benchmark (Michael Petlan) [1884818 1908305] - [tools] perf trace: Use the autogenerated mmap 'prot' string/id table (Michael Petlan) [1884818 1908305] - [tools] tools beauty: Add script to generate table of mmap's 'prot' argument (Michael Petlan) [1884818 1908305] - [tools] perf beauty mmap_flags: Conditionaly define the mmap flags (Michael Petlan) [1884818 1908305] - [tools] perf trace beauty: Add script to autogenerate mremap's flags args string/id table (Michael Petlan) [1884818 1908305] - [tools] perf tools: Separate the checking of headers only used to build beautification tables (Michael Petlan) [1884818 1908305] - [tools] perf parse-events: Reduce casts around bp_addr (Michael Petlan) [1884818 1908305] - [tools] perf test: Add expand cgroup event test (Michael Petlan) [1884818 1908305] - [tools] perf tools: Allow creation of cgroup without open (Michael Petlan) [1884818 1908305] - [tools] perf tools: Copy metric events properly when expand cgroups (Michael Petlan) [1884818 1908305] - [tools] perf stat: Add --for-each-cgroup option (Michael Petlan) [1884818 1908305] - [tools] perf evsel: Add evsel__clone() function (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Update SkylakeX events to v1.21 (Michael Petlan) [1884818 1908305] - [tools] perf vendor events intel: Update CascadelakeX events to v1.08 (Michael Petlan) [1884818 1908305] - [tools] perf script: Add min, max to futex-contention output, in addition to avg (Michael Petlan) [1884818 1908305] - [tools] perf script: Autopep8 futex-contention (Michael Petlan) [1884818 1908305] - [tools] perf stat: Skip duration_time in setup_system_wide (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Support cap_user_time_short for event TIME_CONV (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Calculate timestamp with cap_user_time_short (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Add rdtsc() for Arm64 (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Move out common functions from x86 (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fall back to debuginfod query if debuginfo and source not found locally (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fix to adjust symbol address with correct reloc_sym address (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Fix "context_switch event has no tid" error (Michael Petlan) [1884818 1908305] - [tools] perf script: Display negative tid in non-sample events (Michael Petlan) [1884818 1908305] - [tools] perf docs: Improve help information in perf.txt (Michael Petlan) [1884818 1908305] - [tools] perf metric: Remove duplicate include (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add documentation for topdown metrics (Michael Petlan) [1884818 1908305] - [tools] perf stat: Support new per thread TopDown metrics (Michael Petlan) [1884818 1908305] - [tools] perf record: Support sample-read topdown metric group (Michael Petlan) [1884818 1908305] - [tools] perf tools: Rename group to topdown (Michael Petlan) [1884818 1908305] - [tools] perf machine: Add machine__for_each_dso() function (Michael Petlan) [1884818 1908305] - [tools] perf tests: Call test_attr__open() directly (Michael Petlan) [1884818 1908305] - [tools] perf vendor events power9: Add hv_24x7 core level metric events (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Pass pmu_event structure as a parameter for arch_get_runtimeparam() (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Add support for parsing perchip/percore events (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Add new structure to pass json fields (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Make json_events() static and ditch jevents.h file (Michael Petlan) [1884818 1908305] - [tools] perf test: Introduce script for Arm CoreSight testing (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Fix typo in comment (Michael Petlan) [1884818 1908305] - [tools] perf stat: Remove dead code: no need to set os.evsel twice (Michael Petlan) [1884818 1908305] - [tools] perf list: Do not print 'Metric Groups:' unnecessarily (Michael Petlan) [1884818 1908305] - [tools] perf list: Remove dead code in argument check (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add build test with GTK+ (Michael Petlan) [1884818 1908305] - [tools] tools feature: Add missing -lzstd to the fast path feature detection (Michael Petlan) [1884818 1908305] - [tools] perf tools: Make GTK2 support opt-in (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Enable Family 19h users by matching Zen2 events (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add recommended events (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add ITLB Instruction Fetch Hits event for zen1 (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add L2 Prefetch events for zen1 (Michael Petlan) [1884818 1908305] - [tools] perf: ftrace: Add filter support for option -F/--funcs (Michael Petlan) [1884818 1908305] - [tools] perf tools: Consolidate close_control_option()'s into one function (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Document snapshot control command (Michael Petlan) [1884818 1908305] - [tools] perf annotate: Add 'ret' (intel disasm style) as an alias for 'retq' (Michael Petlan) [1884818 1908305] - [tools] perf annotate: Allow configuring the 'disassembler_style' knob via 'perf config' (Michael Petlan) [1884818 1908305] - [tools] perf record: Add 'snapshot' control command (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add FIFO file names as alternative options to --control (Michael Petlan) [1884818 1908305] - [tools] perf tools: Use AsciiDoc formatting for --control option documentation (Michael Petlan) [1884818 1908305] - [tools] perf tools: Handle read errors from ctl_fd (Michael Petlan) [1884818 1908305] - [tools] perf tools: Consolidate --control option parsing into one function (Michael Petlan) [1884818 1908305] - [tools] perf tests: Add test for PE binary format support (Michael Petlan) [1884818 1908305] - [tools] perf symbols: Try reading the symbol table with libbfd (Michael Petlan) [1884818 1908305] - [tools] perf dso: Use libbfd to read build_id and .gnu_debuglink section (Michael Petlan) [1884818 1908305] - [tools] tools features: Add feature test to check if libbfd has buildid support (Michael Petlan) [1884818 1908305] - [tools] tools: Remove feature-libelf-mmap feature detection (Michael Petlan) [1884818 1908305] - [tools] perf build: Allow nested externs to enable BUILD_BUG() usage (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Check PEBS status correctly (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS (Michael Petlan) [1884818 1908305] - [x86] perf/x86: fix sysfs type mismatches (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Make anythread filter support conditional (Michael Petlan) [1884818 1908305] - [kernel] perf: Tweak perf_event_attr::exclusive semantics (Michael Petlan) [1884818 1908305] - [kernel] perf: Fix event multiplexing for exclusive groups (Michael Petlan) [1884818 1908305] - [kernel] perf: Simplify group_sched_in() (Michael Petlan) [1884818 1908305] - [kernel] perf: Simplify group_sched_out() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Make dummy_iregs static (Michael Petlan) [1884818 1908305] - [include] perf/arch: Remove perf_sample_data::regs_user_copy (Michael Petlan) [1884818 1908305] - [kernel] perf: Optimize get_recursion_context() (Michael Petlan) [1884818 1908305] - [kernel] perf: Fix get_recursion_context() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Reduce stack usage for x86_pmu::drain_pebs() (Michael Petlan) [1884818 1908305] - [kernel] perf: Reduce stack usage of perf_output_begin() (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Fix a memory leak in perf_event_parse_addr_filter() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Fix n_metric for cancelled txn (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Fix n_pair for cancelled txn (Michael Petlan) [1884818 1908305] - [x86] x86/events/amd/iommu: Fix sizeof mismatch (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Check perf metrics feature for each CPU (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix Ice Lake event constraint table (Michael Petlan) [1884818 1908305] - [x86] perf/x86/msr: Add Jasper Lake support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Add Jasper Lake support (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Allow F19h user coreid, threadmask, and sliceid specification (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Allow F17h user threadmask and slicemask specification (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Prepare to scale for more attributes that vary per family (Michael Petlan) [1884818 1908305] - [x86] arch/x86/amd/ibs: Fix re-arming IBS Fetch (Michael Petlan) [1884818 1908305] - [x86] perf/x86/rapl: Add AMD Fam19h RAPL support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Support 27-bit extended Op/cycle counter (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Fix raw sample data accumulation (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd: Fix sampling Large Increment per Cycle events (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Set all slices and threads to restore perf stat -a behaviour (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Pull pmu::sched_task() into perf_event_context_sched_out() (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Pull pmu::sched_task() into perf_event_context_sched_in() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Support per-thread RDPMC TopDown metrics (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Support TopDown metrics on Ice Lake (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Add a macro for RDPMC offset of fixed counters (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Generic support for hardware TopDown metrics (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Add a new PERF_EV_CAP_SIBLING event capability (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Use switch in intel_pmu_disable/enable_event (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix the name of perf METRICS (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Move BTS index to 47 (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Introduce the fourth fixed counter (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Name the global status bit in NMI handler (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Use event_base_rdpmc for the RDPMC userspace support (Michael Petlan) [1884818 1908305] - [powerpc] powerpc/cacheinfo: Print correct cache-sibling map/list for L2 cache (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Add support detecting thread-groups sharing L2 cache (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Rename init_thread_group_l1_cache_map() to make it generic (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Rename cpu_l1_cache_map as thread_group_l1_cache_map (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Parse ibm, thread-groups with multiple properties (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Use GFP_ATOMIC while allocating tmp mask (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Remove unnecessary variable (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize update_coregroup_mask (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Move coregroup mask updation to a new function (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize update_mask_by_l2 (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Check for duplicate topologies and consolidate (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Depend on cpu_l1_cache_map when adding CPUs (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Stop passing mask to update_mask_by_l2 (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Limit CPUs traversed to within a node (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize remove_cpu_from_masks (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Remove get_physical_package_id (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Stop updating cpu_core_mask (Diego Domingos) [1906504] - [powerpc] powerpc/topology: Update topology_core_cpumask (Diego Domingos) [1906504] - [powerpc] powerpc/topology: Override cpu_smt_mask (Diego Domingos) [1906504] - [include] sched/topology: Allow archs to override cpu_smt_mask (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Add per cpu per index shared_cpu_list (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Make cpumap_show code reusable (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Use cpumap_print to print cpumap (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Use IS_ENABLED() to avoid #ifdef (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Drop superfluous NULL check (Diego Domingos) [1906504] - [vfio] pci: Cleanup .probe() exit paths (Clark Williams) [1860192] - [vfio] pci: Add sriov_configure support (Clark Williams) [1860192] - [vfio] Introduce VFIO_DEVICE_FEATURE ioctl and first user (Clark Williams) [1860192] - [vfio] pci: Introduce VF token (Clark Williams) [1860192] - [vfio] pci: Implement match ops (Clark Williams) [1860192] - [vfio] Include optional device match in vfio_device_ops callbacks (Clark Williams) [1860192] - [infiniband] IB/hfi1: Ensure correct mm is used at all times (Kamal Heib) [1879586] {CVE-2020-27835} - [block] rbd: require global CAP_SYS_ADMIN for mapping and unmapping (Ming Lei) [1887327] {CVE-2020-25284}- [tools] kunit: tool: unmark test_data as binary blobs (Nico Pache) [1900119] - [tools] kunit: tools: fix kunit_tool tests for parsing test plans (Nico Pache) [1900119] - [documentation] Documentation: kunit: Update Kconfig parts for KUNIT's module support (Nico Pache) [1900119] - [tools] kunit: Don't fail test suites if one of them is empty (Nico Pache) [1900119] - [tools] kunit: Fix kunit.py --raw_output option (Nico Pache) [1900119] - [tools] kunit: tool: fix improper treatment of file location (Nico Pache) [1900119] - [tools] kunit: tool: fix broken default args in unit tests (Nico Pache) [1900119] - [tools] kunit: capture stderr on all make subprocess calls (Nico Pache) [1900119] - [documentation] Documentation: kunit: Remove references to --defconfig (Nico Pache) [1900119] - [kernel] kcsan: Add test suite (Nico Pache) [1900119] - [documentation] Documentation: kunit: Add some troubleshooting tips to the FAQ (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Fix invalid result when build fails (Nico Pache) [1900119] - [tools] kunit: show error if kunit results are not present (Nico Pache) [1900119] - [tools] kunit: kunit_config: Fix parsing of CONFIG options with space (Nico Pache) [1900119] - [lib] kunit: add support for named resources (Nico Pache) [1900119] - [lib] kunit: generalize kunit_resource API beyond allocated resources (Nico Pache) [1900119] - [security] security: apparmor: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [fs] fs: ext4: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [base] drivers: base: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] lib: Kconfig.debug: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] kunit: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] kunit: Kconfig: enable a KUNIT_ALL_TESTS fragment (Nico Pache) [1900119] - [tools] kunit: Fix TabError, remove defconfig code and handle when there is no kunitconfig (Nico Pache) [1900119] - [tools] kunit: use KUnit defconfig by default (Nico Pache) [1900119] - [tools] kunit: use --build_dir=.kunit as default (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Separate out config/build/exec/parse (Nico Pache) [1900119] - [lib] lib/test_linear_ranges: add a test for the 'linear_ranges' (Nico Pache) [1900119] - [lib] kunit: Add missing newline in summary message (Nico Pache) [1900119] - [tools] kunit: tool: add missing test data file content (Nico Pache) [1900119] - [documentation] kunit: update documentation to describe debugfs representation (Nico Pache) [1900119] - [lib] kunit: subtests should be indented 4 spaces according to TAP (Nico Pache) [1900119] - [lib] kunit: add log test (Nico Pache) [1900119] - [lib] kunit: add debugfs /sys/kernel/debug/kunit//results display (Nico Pache) [1900119] - [documentation] Documentation: kunit: Make the KUnit documentation less UML-specific (Nico Pache) [1900119] - [lib] Fix linked-list KUnit test when run multiple times (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Allow .kunitconfig to disable config items (Nico Pache) [1900119] - [lib] kunit: Always print actual pointer values in asserts (Nico Pache) [1900119] - [tools] kunit: add --make_options (Nico Pache) [1900119] - [tools] kunit: Run all KUnit tests through allyesconfig (Nico Pache) [1900119] - [tools] kunit: kunit_parser: make parser more robust (Nico Pache) [1900119] - [of] of: unittest: annotate warnings triggered by unittest (Nico Pache) [1900119] - [of] of: unittest: Disable interrupt node tests for old world MAC systems (Nico Pache) [1900119] - [of] of: unittest: add overlay gpio test to catch gpio hog problem (Nico Pache) [1900119] - [tools] kunit: run kunit_tool from any directory (Nico Pache) [1900119] - [tools] kunit: test: Improve error messages for kunit_tool when kunitconfig is invalid (Nico Pache) [1900119] - [documentation] Documentation: kunit: fixed sphinx error in code block (Nico Pache) [1900119] - [base] software node: introduce CONFIG_KUNIT_DRIVER_PE_TEST (Nico Pache) [1900119] - [base] kunit: building kunit as a module breaks allmodconfig (Nico Pache) [1900119] - [documentation] kunit: update documentation to describe module-based build (Nico Pache) [1900119] - [lib] kunit: allow kunit to be loaded as a module (Nico Pache) [1900119] - [lib] kunit: remove timeout dependence on sysctl_hung_task_timeout_seconds (Nico Pache) [1900119] - [lib] kunit: allow kunit tests to be loaded as a module (Nico Pache) [1900119] - [lib] kunit: hide unexported try-catch interface in try-catch-impl.h (Nico Pache) [1900119] - [lib] kunit: move string-stream.h to lib/kunit (Nico Pache) [1900119] - [security] apparmor: add AppArmor KUnit tests for policy unpack (Nico Pache) [1900119] - [tools] kunit/kunit_tool_test: Test '--build_dir' option run (Nico Pache) [1900119] - [tools] kunit: Rename 'kunitconfig' to '.kunitconfig' (Nico Pache) [1900119] - [tools] kunit: Place 'test.log' under the 'build_dir' (Nico Pache) [1900119] - [tools] kunit: Create default config in '--build_dir' (Nico Pache) [1900119] - [tools] kunit: Remove duplicated defconfig creation (Nico Pache) [1900119] - [documentation] docs/kunit/start: Use in-tree 'kunit_defconfig' (Nico Pache) [1900119] - [documentation] Documentation: kunit: add documentation for kunit_tool (Nico Pache) [1900119] - [documentation] Documentation: kunit: fix typos and gramatical errors (Nico Pache) [1900119] - [tools] kunit: testing kunit: Bug fix in test_run_timeout function (Nico Pache) [1900119] - [base] PM / QoS: Initial kunit test (Nico Pache) [1900119] - [lib] lib/list-test: add a test for the 'list' doubly linked list (Nico Pache) [1900119] - [fs] ext4: add kunit test for decoding extended timestamps (Nico Pache) [1900119] - [documentation] Documentation: kunit: Fix verification command (Nico Pache) [1900119] - [tools] kunit: Fix '--build_dir' option (Nico Pache) [1900119] - [lib] kunit: fix failure to build without printk (Nico Pache) [1900119] - [kernel] kernel/sysctl-test: Add null pointer test for sysctl.c:proc_dointvec() (Nico Pache) [1900119] - [documentation] Documentation: kunit: add documentation for KUnit (Nico Pache) [1900119] - [tools] kunit: defconfig: add defconfigs for building KUnit tests (Nico Pache) [1900119] - [tools] kunit: tool: add Python wrappers for running KUnit tests (Nico Pache) [1900119] - [lib] kunit: test: add tests for KUnit managed resources (Nico Pache) [1900119] - [lib] kunit: test: add the concept of assertions (Nico Pache) [1900119] - [lib] kunit: test: add tests for kunit test abort (Nico Pache) [1900119] - [lib] kunit: test: add support for test abort (Nico Pache) [1900119] - [tools] objtool: add kunit_try_catch_throw to the noreturn list (Nico Pache) [1900119] - [tools] objtool: Add rewind_stack_do_exit() to the noreturn list (Nico Pache) [1900119] - [lib] kunit: test: add initial tests (Nico Pache) [1900119] - [lib] lib: enable building KUnit in lib/ (Nico Pache) [1900119] - [lib] kunit: test: add the concept of expectations (Nico Pache) [1900119] - [lib] kunit: test: add assertion printing library (Nico Pache) [1900119] - [lib] kunit: test: add string_stream a std::stream like string builder (Nico Pache) [1900119] - [lib] kunit: test: add test resource management API (Nico Pache) [1900119] - [lib] kunit: test: add KUnit test runner core (Nico Pache) [1900119] - [watchdog] watchdog/hpwdt: Reflect changes (Joseph Szczypek) [1905293] - [watchdog] watchdog/hpwdt: Disable NMI in Crash Kernel (Joseph Szczypek) [1905293] - [idle] intel_idle: add SnowRidge C-state table (Steve Best) [1838554] - [mm] mm: memcg/slab: fix use after free in obj_cgroup_charge (Waiman Long) [1916962] - [mm] mm: memcg/slab: fix return of child memcg objcg for root memcg (Waiman Long) [1916962] - [mm] mm: memcg/slab: fix obj_cgroup_charge() return value handling (Waiman Long) [1916962] - [mm] mm: kmem: move memcg_kmem_bypass() calls to get_mem/obj_cgroup_from_current() (Waiman Long) [1916962] - [s390] s390/kexec_file: fix diag308 subcode when loading crash kernel (Philipp Rudo) [1897184] - [net] ethtool: fix error paths in ethnl_set_channels() (Ivan Vecera) [1906682] - [powerpc] powerpc/pci: Remove LSI mappings on device teardown (Diego Domingos) [1909722] - [powerpc] Revert "powerpc/pci: unmap legacy INTx interrupts of passthrough IO adapters" (Diego Domingos) [1909722] - [block] block: add blk_alloc_queue declaration back (Ming Lei) [1911343] - [net] tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate (Antoine Tenart) [1901863] - [net] tcp_bbr: improve arithmetic division in bbr_update_bw() (Antoine Tenart) [1901863] - [net] tcp_bbr: clarify that bbr_bdp() rounds up in comments (Antoine Tenart) [1901863] - [net] tcp_bbr: adapt cwnd based on ack aggregation estimation (Antoine Tenart) [1901863] - [net] tcp_bbr: fix bbr pacing rate for internal pacing (Antoine Tenart) [1901863]- [wireless] iwlwifi: fw: acpi: Demote non-conformant function headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: dbg: Fix misspelling of 'reg_data' in function header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-phy-db: Add missing struct member description for 'trans' (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-eeprom-parse: Fix 'struct iwl_eeprom_enhanced_txpwr's header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-eeprom-read: Demote one nonconformant function header (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: rs: Demote non-conformant function documentation headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-drv: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: validate notification size when waiting (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: purge the BSS table upon firmware load (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: check that statistics TLV version match struct version (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add size checks for range response notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: hook up missing RX handlers (Jarod Wilson) [1857772] - [wireless] iwlwifi: tighten RX MPDU bounds checks (Jarod Wilson) [1857772] - [wireless] iwlwifi: Add a new card for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: disconnect if channel switch delay is too long (Jarod Wilson) [1857772] - [wireless] iwlwifi: support firmware reset handshake (Jarod Wilson) [1857772] - [wireless] iwlwifi: add an extra firmware state in the transport (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix a race in CSA that caused assert 0x3420 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: validate firmware sync response size (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: clean up some rx code (Jarod Wilson) [1857772] - [wireless] iwlwifi: use SPDX tags (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg-tlv: fix old length in is_trig_data_contained() (Jarod Wilson) [1857772] - [wireless] iwlwifi: trans: consider firmware dead after errors (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove unnecessary setting of inta_mask (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: file: fix documentation for SAR flag (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove MSIX_HW_INT_CAUSES_REG_IML handling (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clean up scan state on failure (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: do more useful queue sync accounting (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix 22000 series driver NMI (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: change 12k A-MSDU config to use 16k buffers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: move iwl_mvm_stop_device() out of line (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clear up iwl_mvm_notify_rx_queue() argument type (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove sw_csum_tx (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: validate RX descriptor length (Jarod Wilson) [1857772] - [wireless] iwlwifi: validate MPDU length against notification length (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: iterate active stations when updating statistics (Jarod Wilson) [1857772] - [wireless] iwlwifi: sort out the NVM offsets (Jarod Wilson) [1857772] - [wireless] iwlwifi: fix typo in comment (Jarod Wilson) [1857772] - [wireless] iwlwifi: follow the new inclusive terminology (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove the read_nvm from iwl_run_unified_mvm_ucode (Jarod Wilson) [1857772] - [wireless] iwlwifi: avoid endless HW errors at assert time (Jarod Wilson) [1857772] - [wireless] iwlwifi: enable sending/setting debug host event (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for 6GHz (Jarod Wilson) [1857772] - [wireless] iwlwifi: copy iwl_he_capa for modifications (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove obsolete pre-release support code (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove the read_nvm from iwl_run_init_mvm_ucode (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Init error table memory to zero (Jarod Wilson) [1857772] - [wireless] iwlwifi: d3: do not send the WOWLAN_CONFIGURATION command for netdetect (Jarod Wilson) [1857772] - [wireless] iwlwifi: move reclaim flows to the queue file (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix sar profile printing issue (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: align the write pointer to DWs (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: add the ability to dump phy periphery (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove all queue resources before free (Jarod Wilson) [1857772] - [wireless] wireless: remove unneeded break (Jarod Wilson) [1857772] - [net] nl80211/cfg80211: fix potential infinite loop (Jarod Wilson) [1857772] - [net] cfg80211: select CONFIG_CRC32 (Jarod Wilson) [1857772] - [net] nl80211/cfg80211: support 6 GHz scanning (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: add some missing entries for AX210 (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: invert values of NO_160 device config entries (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: add one missing entry for AX210 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix kernel panic in case of assert during CSA (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: set LTR to avoid completion timeout (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: write queue_sync_state only for sync (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: properly cancel a session protection for P2P (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC (Jarod Wilson) [1857772] - [wireless] iwlwifi: sta: set max HE max A-MPDU according to HE capa (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: limit memory read spin time (Jarod Wilson) [1857772] - [wireless] Revert "iwlwifi: remove wide_cmd_header field" (Jarod Wilson) [1857772] - [wireless] iwlwifi: bump FW API to 59 for AX devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: read and parse PNVM file (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: implement set_pnvm op (Jarod Wilson) [1857772] - [wireless] iwlwifi: add trans op to set PNVM (Jarod Wilson) [1857772] - [wireless] iwlwifi: move PNVM implementation to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: align to new TLC config command API (Jarod Wilson) [1857772] - [wireless] iwlwifi: fix sar geo table initialization (Jarod Wilson) [1857772] - [wireless] iwlwifi: stats: add new api fields for statistics cmd/ntfy (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix suspicious rcu usage warnings (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove memset of kek_kck command (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: don't send a CSA command the firmware doesn't know (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix the xtal latency value for a few qu devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix xtal latency for 9560 devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix 0x271B and 0x271C trans cfg struct (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: avoid possible NULL pointer dereference (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support ADD_STA_CMD_API_S ver 12 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add a get lmac id function (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: prepare roc_done_wk to work sync (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: re-enable TX after channel switch (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues (Jarod Wilson) [1857772] - [wireless] iwlwifi: support an additional Qu subsystem id (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: stop claiming NL80211_EXT_FEATURE_SET_SCAN_DWELL (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ring the doorbell and wait for PNVM load completion (Jarod Wilson) [1857772] - [wireless] iwlwifi: update prph scratch structure to include PNVM data (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: read and parse SKU ID if available (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: get number of stations from TLV (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-drv: Provide descriptions debugfs dentries (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: devices: Fix function documentation formatting issues (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: tx: Demote misuse of kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: rxon: Demote non-conformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: scan: Demote a few nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: utils: Fix some doc-rot (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Demote a couple of nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ops: Remove unused static struct 'iwl_mvm_debug_names' (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: sta: Demote a bunch of nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: calib: Demote seemingly unintentional kerneldoc header (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: lib: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: tx: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: bump FW API to 57 for AX devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: add support for internal buffer allocation in D3 (Jarod Wilson) [1857772] - [wireless] iwlwifi: api: fix u32 -> __le32 (Jarod Wilson) [1857772] - [wireless] iwlwifi: use correct group for alive notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: support version 5 of the alive notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ignore the scan duration parameter (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: add debug host notification (DHN) time point (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: make iwl_pcie_txq_update_byte_cnt_tbl bus independent (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clear all scan UIDs (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: d3: parse wowlan status version 11 (Jarod Wilson) [1857772] - [wireless] iwlwifi: align RX status flags with firmware (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove redundant log in iwl_mvm_tvqm_enable_txq() (Jarod Wilson) [1857772] - [wireless] iwlwifi: phy-ctxt: add new API VER 3 for phy context cmd (Jarod Wilson) [1857772] - [wireless] iwlwifi: thermal: support new temperature measurement API (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add d3 prints (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: d3: support GCMP ciphers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support more GTK rekeying algorithms (Jarod Wilson) [1857772] - [wireless] iwlwifi: move all bus-independent TX functions to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: initiator: add option for adding a PASN responder (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: responder: allow to set only the HLTK for an associated station (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: location: set the HLTK when PASN station is added (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Add FTM initiator RTT smoothing logic (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for responder dynamic config command version 3 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for range request command ver 11 (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove wide_cmd_header field (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: add default value for iwl_fw_lookup_cmd_ver (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: in non acpi compilations remove iwl_sar_geo_init (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: set RTS protection for all non legacy rates (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support new KEK KCK api (Jarod Wilson) [1857772] - [wireless] iwlwifi: support version 3 of GEO_TX_POWER_LIMIT (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: rename geo structs to contain versioning (Jarod Wilson) [1857772] - [wireless] iwlwifi: support REDUCE_TX_POWER_CMD version 6 (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: prepare SAR profile selection code for multiple sizes (Jarod Wilson) [1857772] - [wireless] iwlwifi: add a common struct for all iwl_tx_power_cmd versions (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new card for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: remove dummy definition of iwl_sar_set_profile() (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove iwl_validate_sar_geo_profile() export (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: use CHECKSUM_COMPLETE (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove redundant support_umac_log field (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for new WOWLAN_TSC_RSC_PARAM version (Jarod Wilson) [1857772] - [wireless] iwlwifi: don't export acpi functions unnecessarily (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: process ba-notifications also when sta rcu is invalid (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for new version of WOWLAN_TKIP_SETTING_API_S (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Don't install CMAC/GMAC key in AP mode (Jarod Wilson) [1857772] - [wireless] iwl-trans: move dev_cmd_offs, page_offs to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: regulatory: regulatory capabilities api change (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: add dumping special device memory (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: remove IWL_FW_INI_TIME_POINT_WDG_TIMEOUT (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: support ppag table command v2 (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new cards for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: move bc_table_dword to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-trans: move tfd to trans layer (Jarod Wilson) [1857772] - [wireless] iwlwifi: move bc_pool to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-trans: move all txcmd init to trans alloc (Jarod Wilson) [1857772] - [wireless] iwlwifi: enable twt by default (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add an option to add PASN station (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new cards for AX201 family (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: move assert descriptor parser to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: wowlan: adapt to wowlan status API version 10 (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: evaluate dsm to disable 5.8GHz channels (Jarod Wilson) [1857772] - [wireless] iwlwifi: msix: limit max RX queues for 9000 family (Jarod Wilson) [1857772] - [wireless] iwlwifi: sta: defer ADDBA transmit in case reclaimed SN != next SN (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: set PROTECTED_TWT feature if supported by firmware (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: set PROTECTED_TWT in MAC data policy (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add PROTECTED_TWT firmware API (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: rs-fw: handle VHT extended NSS capability (Jarod Wilson) [1857772] - [x86] sev-es: Use new for_each_insn_prefix() macro to loop over prefixes bytes (Vitaly Kuznetsov) [1915453] - [x86] insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes bytes (Vitaly Kuznetsov) [1915453] - [tools] x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes (Vitaly Kuznetsov) [1915453] - [powercap] powercap/intel_rapl: add support for ElkhartLake (Steve Best) [1847054] - [char] tpm: efi: Don't create binary_bios_measurements file for an empty log (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis: Add a check for invalid status (Jerry Snitselaar) [1887536 1855183] - [char] tpm: use *ph to print small buffer (Jerry Snitselaar) [1887536 1855183] - [char] tpm: Add support for event log pointer found in TPM2 ACPI table (Jerry Snitselaar) [1887536 1855183] - [acpi] acpi: Extend TPM2 ACPI table with missing log fields (Jerry Snitselaar) [1887536] - [char] tpm: Unify the mismatching TPM space buffer sizes (Jerry Snitselaar) [1887536 1855183] - [include] tpm: Require that all digests are present in TCG_PCR_EVENT2 structures (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis_spi: Prefer async probe (Jerry Snitselaar) [1887536 1855183] - [char] tpm/st33zp24: fix spelling mistake "drescription" -> "description" (Jerry Snitselaar) [1887536] - [char] tpm_tis: extra chip->ops check on error path in tpm_tis_core_init (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis_spi: Don't send anything during flow control (Jerry Snitselaar) [1887536 1855183] - [include] efi/tpm: Verify event log header before parsing (Jerry Snitselaar) [1887536 1855183] - [char] tpm: eventlog: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1887536 1855183] - [char] tpm: fix wrong return value in tpm_pcr_extend (Jerry Snitselaar) [1887536 1855183] - [include] tpm_eventlog.h: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1887536 1855183] - [include] phylink: : fix function prototype kernel-doc warning (Petr Oros) [1878147] - [netdrv] net: phy: call phy_disable_interrupts() in phy_attach_direct() instead (Petr Oros) [1878147] - [net] net: ethtool: Handle missing cable test TDR parameters (Petr Oros) [1878147] - [documentation] docs: networking: fix extra spaces in ethtool-netlink (Petr Oros) [1878147] - [documentation] dt-bindings: net: mvusb: Fix example errors (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: fix null pointer dereference (Petr Oros) [1878147] - [netdrv] net: phy: fix memory leak in device-create error path (Petr Oros) [1878147] - [netdrv] net: mdio device: use flexible sleeping in reset function (Petr Oros) [1878147] - [netdrv] net: mdiobus: add reset-post-delay-us handling (Petr Oros) [1878147] - [netdrv] net: mdiobus: use flexible sleeping for reset-delay-us (Petr Oros) [1878147] - [netdrv] net: phylink: add interface to configure clause 22 PCS PHY (Petr Oros) [1878147] - [netdrv] net: phylink: add struct phylink_pcs (Petr Oros) [1878147] - [netdrv] net: phylink: re-implement interface configuration with PCS (Petr Oros) [1878147] - [netdrv] net: phylink: in-band pause mode advertisement update for PCS (Petr Oros) [1878147] - [netdrv] net: phylink: simplify fixed-link case for ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: use config.an_enabled in ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: simplify phy case for ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: simplify ksettings_set() implementation (Petr Oros) [1878147] - [netdrv] net: phylink: avoid mac_config calls (Petr Oros) [1878147] - [netdrv] net: phylink: update PCS when changing interface during resolution (Petr Oros) [1878147] - [netdrv] net: phylink: ensure link is down when changing interface (Petr Oros) [1878147] - [netdrv] net: phylink: rearrange resolve mac_config() call (Petr Oros) [1878147] - [netdrv] net: phylink: rejig link state tracking (Petr Oros) [1878147] - [netdrv] net: phylink: update ethtool reporting for fixed-link modes (Petr Oros) [1878147] - [netdrv] net: phy: fix check in get_phy_c45_ids (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add mdix configuration support for AR9331 and AR8035 (Petr Oros) [1878147] - [netdrv] net: dp83640: fix SIOCSHWTSTAMP to update the struct with actual configuration (Petr Oros) [1878147] - [netdrv] net: phy: continue searching for C45 MMDs even if first returned ffff:ffff (Petr Oros) [1878147] - [netdrv] net: phy: dp83640: Fixup cast to restricted __be16 warning (Petr Oros) [1878147] - [netdrv] net: phy: Make phy_10gbit_fec_features_array static (Petr Oros) [1878147] - [netdrv] net: phy: Properly define genphy_c45_driver (Petr Oros) [1878147] - [netdrv] net: phy: Fixup parameters in kerneldoc (Petr Oros) [1878147] - [netdrv] net: phy: at803x: Avoid comparison is always false warning (Petr Oros) [1878147] - [netdrv] net: phy: mdio: reset MDIO devices even if probe() is not implemented (Petr Oros) [1878147] - [netdrv] net: phy: reset the PHY even if probe() is not implemented (Petr Oros) [1878147] - [include] net: mdio: add a forward declaration for reset_control to mdio.h (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in phy_device.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in mdio_device.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in mdio_bus.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phylink: only restart AN if the link mode is using in-band AN (Petr Oros) [1878147] - [netdrv] net: phylink: add phylink_speed_(up|down) interface (Petr Oros) [1878147] - [netdrv] net: phy: call phy_disable_interrupts() in phy_init_hw() (Petr Oros) [1878147] - [netdrv] net: phy: make phy_disable_interrupts() non-static (Petr Oros) [1878147] - [netdrv] net: phylink: ensure manual pause mode configuration takes effect (Petr Oros) [1878147] - [netdrv] net: phylink: fix ethtool -A with attached PHYs (Petr Oros) [1878147] - [include] net: phy: add support for a common probe between shared PHYs (Petr Oros) [1878147] - [netdrv] net: phy: Allow mdio buses to auto-probe c45 devices (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add Marvell 88E1548P support (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add Marvell 88E1340S support (Petr Oros) [1878147] - [netdrv] net: phy: marvell: use a single style for referencing functions (Petr Oros) [1878147] - [netdrv] net: phy: smsc: fix printing too many logs (Petr Oros) [1878147] - [netdrv] net: phy: Check harder for errors in get_phy_id() (Petr Oros) [1878147] - [of] of: of_mdio: Correct loop scanning logic (Petr Oros) [1878147] - [of] of: mdio: preserve phy dev_flags in of_phy_connect() (Petr Oros) [1878147] - [netdrv] net: phy: read MMD ID from all present MMDs (Petr Oros) [1878147] - [netdrv] net: phy: split devices_in_package (Petr Oros) [1878147] - [netdrv] net: phy: set devices_in_package only after validation (Petr Oros) [1878147] - [netdrv] net: phy: add support for probing MMDs >= 8 for devices-in-package (Petr Oros) [1878147] - [netdrv] net: phy: reword get_phy_device() kerneldoc (Petr Oros) [1878147] - [netdrv] net: phy: clean up get_phy_c22_id() invalid ID handling (Petr Oros) [1878147] - [netdrv] net: phy: clean up get_phy_c45_ids() failure handling (Petr Oros) [1878147] - [netdrv] net: phy: clean up PHY ID reading (Petr Oros) [1878147] - [netdrv] net: phy: clean up cortina workaround (Petr Oros) [1878147] - [netdrv] net: dp83869: Reset return variable if PHY strap is read (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: don't export RDB/legacy access methods (Petr Oros) [1878147] - [netdrv] net: phy: marvell: unlock after phy_select_page() failure (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add cable diagnostics support for ATH9331 and ATH8032 (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Configure TDR pulse based on measurement length (Petr Oros) [1878147] - [netdrv] net : phy: marvell: Speedup TDR data retrieval by only changing page once (Petr Oros) [1878147] - [netdrv] net: ethtool: Allow PHY cable test TDR data to configured (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add support for amplitude graph (Petr Oros) [1878147] - [net] net: ethtool: Add helpers for cable test TDR data (Petr Oros) [1878147] - [net] net: ethtool: Add generic parts of cable test TDR (Petr Oros) [1878147] - [uapi] net: ethtool: Add attributes for cable test TDR data (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: read poll when high resolution timers are disabled (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: improve waiting logic (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: remove redundant timeout check (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: use more reasonable delays (Petr Oros) [1878147] - [netdrv] net: mdiobus: add clause 45 mdiobus accessors (Petr Oros) [1878147] - [netdrv] net: phy: at803x: fix PHY ID masks (Petr Oros) [1878147] - [netdrv] net: phy: dp83869: Set opmode from straps (Petr Oros) [1878147] - [netdrv] net: phy: dp83869: Update port-mirroring to read straps (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add SQI support (Petr Oros) [1878147] - [netdrv] net: phy: simplify phy_link_change arguments (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: fix checkpatch complains about tabs (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add support for BCM54811 PHY (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: execute cable test on link up (Petr Oros) [1878147] - [netdrv] net: phy: mdio-moxart: remove unneeded include (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add cable diagnostics support (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add cable diagnostics support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add cable test support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add bcm_phy_modify_exp() (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add exp register access methods without buslock (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add cable-test support (Petr Oros) [1878147] - [netdrv] net: phy: fix aneg restart in phy_ethtool_set_eee (Petr Oros) [1878147] - [net] net: phy: Send notifier when starting the cable test (Petr Oros) [1878147] - [netdrv] net: phy: Put interface into oper testing during cable test (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add cable test support (Petr Oros) [1878147] - [include] net: ethtool: Add helpers for reporting test results (Petr Oros) [1878147] - [include] net: ethtool: Add infrastructure for reporting cable test results (Petr Oros) [1878147] - [uapi] net: ethtool: Add attributes for cable test reports (Petr Oros) [1878147] - [net] net: ethtool: netlink: Add support for triggering a cable test (Petr Oros) [1878147] - [netdrv] net: phy: Add support for polling cable test (Petr Oros) [1878147] - [netdrv] net: phy: Add cable test support to state machine (Petr Oros) [1878147] - [net] net: ethtool: self_test: Mark interface in testing operative status (Petr Oros) [1878147] - [net] net: Add testing sysfs attribute (Petr Oros) [1878147] - [net] net: Add IF_OPER_TESTING (Petr Oros) [1878147] - [netdrv] net: phy: fix less than zero comparison with unsigned variable val (Petr Oros) [1878147] - [netdrv] net: phy: Make iproc_mdio_resume static (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: use phy_package_shared (Petr Oros) [1878147] - [netdrv] net: phy: add concept of shared storage for PHYs (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add support for master-slave configuration (Petr Oros) [1878147] - [uapi] ethtool: provide UAPI for PHY master/slave configuration (Petr Oros) [1878147] - [netdrv] dp83640: reverse arguments to list_add_tail (Petr Oros) [1878147] - [documentation] dt-bindings: add Qualcomm IPQ4019 MDIO bindings (Petr Oros) [1878147] - [netdrv] net: phy: mdio: add IPQ4019 MDIO driver (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add second PHY ID (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: apply the workaround on b0 chips (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: fix phy_id_mask (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: use genphy_soft_reset() (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add downshift support (Petr Oros) [1878147] - [netdrv] net: phy: DP83TC811: Fix WoL in config init to be disabled (Petr Oros) [1878147] - [netdrv] net: phy: DP83822: Fix WoL in config init to be disabled (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: Make a bunch of functions static (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: fix temperature sensor on 2110 (Petr Oros) [1878147] - [gpio] gpiolib: Rename "chip" variables to "gc" in core header file (Petr Oros) [1878147] - [netdrv] net: phy: dp83867: Remove unneeded semicolon (Petr Oros) [1878147] - [netdrv] net: phy: clear phydev->suspended after soft reset (Petr Oros) [1878147] - [netdrv] net: phy: remove genphy_no_soft_reset (Petr Oros) [1878147] - [netdrv] net: phy: make phy_suspend a no-op if PHY is suspended already (Petr Oros) [1878147] - [netdrv] net: phylink, dsa: eliminate phylink_fixed_state_cb() (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: fix less than zero comparison on an unsigned (Petr Oros) [1878147] - [netdrv] net: phy: bcm84881: clear settings on link down (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add delayed registration of TJA1102 PHY1 (Petr Oros) [1878147] - [of] net: mdio: of: export part of of_mdiobus_register_phy() (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add initial TJA1102 support (Petr Oros) [1878147] - [documentation] dt-bindings: net: phy: Add support for NXP TJA11xx (Petr Oros) [1878147] - [netdrv] net: phy: Use IS_ERR() to check and simplify code (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: limit soft reset to 88x3310 (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add hwmon support (Petr Oros) [1878147] - [netdrv] net: phy: add Broadcom BCM54140 support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add helper to write/read RDB registers (Petr Oros) [1878147] - [netdrv] net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx phy (Petr Oros) [1878147] - [netdrv] net: phy: Propagate error from bus->reset (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Add support for BCM53125 internal PHYs (Petr Oros) [1878147] - [netdrv] net: phy: mdio-bcm-iproc: Do not show kernel pointer (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add support for AR8032 PHY (Petr Oros) [1878147] - [netdrv] net: marvell10g: soft-reset the PHY when coming out of low power (Petr Oros) [1878147] - [netdrv] net: marvell10g: report firmware version (Petr Oros) [1878147] - [netdrv] net: phy: micrel: use genphy_read_status for KSZ9131 (Petr Oros) [1878147] - [netdrv] net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before accessing PHY registers (Petr Oros) [1878147] - [netdrv] net: phylink: add separate pcs operations structure (Petr Oros) [1878147] - [netdrv] net: phylink: rename 'ops' to 'mac_ops' (Petr Oros) [1878147] - [netdrv] net: phylink: change phylink_mii_c22_pcs_set_advertisement() prototype (Petr Oros) [1878147] - [ptp] ptp: Avoid deadlocks in the programmable pin code (Petr Oros) [1878147] - [netdrv] net: phy: probe PHY drivers synchronously (Petr Oros) [1878147] - [netdrv] net: phy: don't touch suspended flag if there's no suspend/resume callback (Petr Oros) [1878147] - [netdrv] net: phy: micrel.c: add rgmii interface delay possibility to ksz9131 (Petr Oros) [1878147] - [netdrv] net: phy: mdio-mux-bcm-iproc: use readl_poll_timeout() to simplify code (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: smsc: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: aquantia: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: bcm84881: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: add marvell usb to mdio controller (Petr Oros) [1878147] - [documentation] dt-bindings: net: add marvell usb to mdio bindings (Petr Oros) [1878147] - [netdrv] net: phy: aquantia: remove downshift warning now that phylib takes care (Petr Oros) [1878147] - [netdrv] net: phy: marvell: remove downshift warning now that phylib takes care (Petr Oros) [1878147] - [netdrv] net: phy: add and use phy_check_downshift (Petr Oros) [1878147] - [netdrv] net: phylink: pcs: add 802.3 clause 45 helpers (Petr Oros) [1878147] - [netdrv] net: phylink: pcs: add 802.3 clause 22 helpers (Petr Oros) [1878147] - [netdrv] net: mdiobus: add APIs for modifying a MDIO device register (Petr Oros) [1878147] - [netdrv] net: mdiobus: avoid BUG_ON() in mdiobus accessors (Petr Oros) [1878147] - [netdrv] net: phy: improve phy_driver callback handle_interrupt (Petr Oros) [1878147] - [netdrv] net: phylink: Add XLGMII support (Petr Oros) [1878147] - [include] net: phy: Add XLGMII interface define (Petr Oros) [1878147] - [netdrv] net: phylink: Test if MAC/PCS support Autoneg (Petr Oros) [1878147] - [netdrv] net: phylink: Add missing Backplane speeds (Petr Oros) [1878147] - [netdrv] net: mdio: add ipq8064 mdio driver (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: place in powersave mode at probe (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: add energy detect power down tunable (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: add mdix control (Petr Oros) [1878147] - [netdrv] net: phy: mscc: add constants for used interrupt mask bits (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: read copper results from CSSR1 (Petr Oros) [1878147] - [netdrv] net: phy: mscc: add missing shift for media operation mode selection (Petr Oros) [1878147] - [netdrv] net: phylink: propagate resolved link config via mac_link_up() (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Wire suspend/resume for BCM54810 (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Have bcm54xx_adjust_rxrefclk() check for flags (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Allow BCM54810 to use bcm54xx_adjust_rxrefclk() (Petr Oros) [1878147] - [netdrv] net: phy: dp83867: Add speed optimization feature (Petr Oros) [1878147] - [netdrv] net: phy: allow bcm84881 to be a module (Petr Oros) [1878147] - [include] net: phylink: clarify flow control settings in documentation (Petr Oros) [1878147] - [netdrv] net: phylink: improve initial mac configuration (Petr Oros) [1878147] - [netdrv] net: phylink: allow ethtool -A to change flow control advertisement (Petr Oros) [1878147] - [netdrv] net: phylink: resolve fixed link flow control (Petr Oros) [1878147] - [netdrv] net: phylink: use phylib resolved flow control modes (Petr Oros) [1878147] - [netdrv] net: phylink: ensure manual flow control is selected appropriately (Petr Oros) [1878147] - [netdrv] net: phylink: remove pause mode ethtool setting for fixed links (Petr Oros) [1878147] - [netdrv] net: add linkmode helper for setting flow control advertisement (Petr Oros) [1878147] - [netdrv] net: add helpers to resolve negotiated flow control (Petr Oros) [1878147] - [include] net: linkmode: make linkmode_test_bit() take const pointer (Petr Oros) [1878147] - [include] net: phylink: further documentation clarifications (Petr Oros) [1878147] - [include] net: phylink: further mac_config documentation improvements (Petr Oros) [1878147] - [netdrv] net: phylink: rename mac_link_state() op to mac_pcs_get_state() (Petr Oros) [1878147] - [md] md/raid5: fix oops during stripe resizing (Nigel Croxon) [1898617] - [md] md/bitmap: fix memory leak of temporary bitmap (Nigel Croxon) [1898617] - [md] md: fix the checking of wrong work queue (Nigel Croxon) [1898617] - [md] md/bitmap: md_bitmap_get_counter returns wrong blocks (Nigel Croxon) [1898617] - [md] md/bitmap: md_bitmap_read_sb uses wrong bitmap blocks (Nigel Croxon) [1898617] - [md] md/raid0: remove unused function is_io_in_chunk_boundary() (Nigel Croxon) [1898617] - [md] md: don't detour through bd_contains for the gendisk (Nigel Croxon) [1898617] - [md] md: compare bd_disk instead of bd_contains (Nigel Croxon) [1898617] - [md] md: Simplify code with existing definition RESYNC_SECTORS in raid10.c (Nigel Croxon) [1898617] - [md] md/raid5: reallocate page array after setting new stripe_size (Nigel Croxon) [1898617] - [md] md/raid5: resize stripe_head when reshape array (Nigel Croxon) [1898617] - [md] md/raid5: let multiple devices of stripe_head share page (Nigel Croxon) [1898617] - [crypto] md/raid6: let async recovery function support different page offset (Nigel Croxon) [1898617] - [crypto] md/raid6: let syndrome computor support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: convert to new xor compution interface (Nigel Croxon) [1898617] - [crypto] md/raid5: add new xor function to support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: make async_copy_data() to support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: add a new member of offset into r5dev (Nigel Croxon) [1898617] - [md] md: only calculate blocksize once and use i_blocksize() (Nigel Croxon) [1898617] - [md] md: update the optimal I/O size on reshape (Nigel Croxon) [1898617] - [md] md/raid5: make sure stripe_size as power of two (Nigel Croxon) [1898617] - [md] md-cluster: Fix potential error pointer dereference in resize_bitmaps() (Nigel Croxon) [1898617] - [md] md: get sysfs entry after redundancy attr group create (Nigel Croxon) [1898617] - [kernel] lockdep: Fix preemption WARN for spurious IRQ-enable (Waiman Long) [1908640] - [powerpc] powerpc/smp: Call rcu_cpu_starting() earlier (Waiman Long) [1908640] - [include] seqlock: Fix multiple kernel-doc warnings (Waiman Long) [1908640] - [kernel] lockdep: Fix usage_traceoverflow (Waiman Long) [1908640] - [kernel] locking/lockdep: Remove more raw_cpu_read() usage (Waiman Long) [1908640] - [include] lockdep: Revert "lockdep: Use raw_cpu_*() for per-cpu variables" (Waiman Long) [1908640] - [kernel] lockdep: Fix lockdep recursion (Waiman Long) [1908640] - [kernel] lockdep,trace: Expose tracepoints (Waiman Long) [1908640] - [x86] locking/lockdep: Fix TRACE_IRQFLAGS vs. NMIs (Waiman Long) [1908640] - [s390] s390: don't trace preemption in percpu macros (Waiman Long) [1908640] - [fs] blkdev: avoid migration stalls for blkdev pages (Chris von Recklinghausen) [1876502] - [netdrv] ionic: account for vlan tag len in rx buffer len (Jonathan Toppins) [1908642] - [netdrv] net/mlx5e: Fix refcount leak on kTLS RX resync (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Fix leak on resync error flow (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add missing dma_unmap in RX resync (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Fix napi sync and possible use-after-free (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Improve rx handler function call (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Cleanup redundant capability check (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: Increase Async ICO SQ size (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add kTLS RX stats (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add kTLS RX resync support (Alaa Hleihel) [1866808] - [infiniband] RDMA/siw: Fix handling of zero-sized Read and Receive Queues (Kamal Heib) [1900985 1875703] - [fs] ext4: fix bogus warning in ext4_update_dx_flag() (Lukas Czerner) [1908714] - [fs] ext4: handle dax mount option collision (Lukas Czerner) [1908714] - [fs] jbd2: fix up sparse warnings in checkpoint code (Lukas Czerner) [1908714] - [fs] ext4: unlock xattr_sem properly in ext4_inline_data_truncate() (Lukas Czerner) [1908714] - [fs] ext4: do not use extent after put_bh (Lukas Czerner) [1908714] - [fs] ext4: fix invalid inode checksum (Lukas Czerner) [1908714] - [fs] ext4: clear buffer verified flag if read meta block from disk (Lukas Czerner) [1908714] - [fs] ext4: treat buffers contining write errors as valid in ext4_sb_bread() (Lukas Czerner) [1908714] - [fs] ext4: treat buffers with write errors as containing valid data (Lukas Czerner) [1908714] - [fs] ext4: limit entries returned when counting fsmap records (Lukas Czerner) [1908714] - [fs] ext4: fix error handling code in add_new_gdb (Lukas Czerner) [1908714] - [fs] ext4: fix leaking sysfs kobject after failed mount (Lukas Czerner) [1908714] - [fs] ext4: fix checking of directory entry validity for inline directories (Lukas Czerner) [1908714] - [fs] ext4: correctly restore system zone info when remount fails (Lukas Czerner) [1908714] - [fs] ext4: handle add_system_zone() failure in ext4_setup_system_zone() (Lukas Czerner) [1908714] - [fs] ext4: fold ext4_data_block_valid_rcu() into the caller (Lukas Czerner) [1908714] - [fs] ext4: check journal inode extents more carefully (Lukas Czerner) [1908714] - [fs] ext4: don't allow overlapping system zones (Lukas Czerner) [1908714] - [fs] ext4: handle error of ext4_setup_system_zone() on remount (Lukas Czerner) [1908714] - [fs] jbd2: add the missing unlock_buffer() in the error path of jbd2_write_superblock() (Lukas Czerner) [1908714] - [fs] ext4: fix mount failure with quota configured as module (Lukas Czerner) [1908714] - [fs] ext4: improve explanation of a mount failure caused by a misconfigured kernel (Lukas Czerner) [1908714] - [include] jbd2: fix kernel-doc notation warning (Lukas Czerner) [1908714] - [base] mm: don't panic when links can't be created in sysfs (Baoquan He) [1890171] - [base] mm: don't rely on system state to detect hot-plug operations (Baoquan He) [1890171] - [mm] mm: replace memmap_context by meminit_context (Baoquan He) [1890171] - [net] Update window_clamp if SOCK_RCVBUF is set (Balazs Nemeth) [1905985] - [cpufreq] cpufreq: acpi-cpufreq: Mark sometimes used ID structs as __maybe_unused (David Arcari) [1857102] - [cpufreq] cpufreq: acpi-cpufreq: Mark 'dummy' variable as __always_unused (David Arcari) [1857102] - [cpufreq] cpufreq: Replace HTTP links with HTTPS ones (David Arcari) [1857102] - [cpufreq] cpufreq: change '.set_boost' to act on one policy (David Arcari) [1857102] - [cpufreq] cpufreq: Fix up cpufreq_boost_set_sw() (David Arcari) [1857102] - [cpufreq] cpufreq: Convert to new X86 CPU match macros (David Arcari) [1857102] - [cpufreq] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (David Arcari) [1857102]- [platform] platform/x86: ISST: Add new PCI device ids (Prarit Bhargava) [1836722] - [net] net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when storing xps_rxqs (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when storing xps_cpus (Antoine Tenart) [1912253] - [fs] gfs2: Improve mmap write vs. punch_hole consistency (Andreas Grunbacher) [1872043] - [netdrv] bnx2x: fix spelling mistake "occurd" -> "occurred" (Manish Chopra) [1853224] - [netdrv] bnx2x: Perform Idlechk dump during the debug collection (Manish Chopra) [1853224] - [netdrv] bnx2x: Add support for idlechk tests (Manish Chopra) [1853224] - [netdrv] bnx2x: Add Idlechk related register definitions (Manish Chopra) [1853224] - [netdrv] bnx2x: use generic power management (Manish Chopra) [1853224] - [netdrv] bnx2x: allow bnx2x_bsc_read() to schedule (Manish Chopra) [1853224] - [netdrv] bnx2x: Remove unused inline function bnx2x_vf_vlan_credit (Manish Chopra) [1853224] - [netdrv] bnx2x: Remove Comparison to bool in bnx2x_dcb.c (Manish Chopra) [1853224] - [netdrv] bnx2x: correct a comment mistake in grammar (Manish Chopra) [1853224] - [netdrv] net: bnx2x: reject unsupported coalescing params (Manish Chopra) [1853224] - [net] tls: Implement getsockopt SOL_TLS TLS_RX (Sabrina Dubroca) [1889664] - [net] tls: Protect from calling tls_dev_del for TLS RX twice (Sabrina Dubroca) [1889664] - [net] tls: missing received data after fast remote close (Sabrina Dubroca) [1889664] - [net] tls: Fix wrong record sn in async mode of device resync (Sabrina Dubroca) [1889664] - [net] tls: fix corrupted data in recvmsg (Sabrina Dubroca) [1889664] - [net] tls: sendfile fails with ktls offload (Sabrina Dubroca) [1889664] - [net] tls: race causes kernel panic (Sabrina Dubroca) [1889664] - [net] tls: Fix kmap usage (Sabrina Dubroca) [1889664] - [net] tls: allow MSG_CMSG_COMPAT in sendmsg (Sabrina Dubroca) [1889664] - [net] tls: fix sign extension issue when left shifting u16 value (Sabrina Dubroca) [1889664] - [net] tls: Add asynchronous resync (Sabrina Dubroca) [1889664] - [net] revert "net/tls: Add force_resync for driver resync" (Sabrina Dubroca) [1889664] - [net] net/tls: Add force_resync for driver resync (Sabrina Dubroca) [1889664] - [net] tls: Avoid assigning 'const' pointer to non-const pointer (Sabrina Dubroca) [1889664] - [net] tls: move mark_tech_preview to tls_init (Sabrina Dubroca) [1907477] - [mm] mm/hmm: do not call hmm_vma_walk_hole() while holding a spinlock (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: add 'depth' parameter to pte_hole (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: don't lock PTEs for walk_page_range_novma() (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: allow walking without vma (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: add p4d_entry() and pgd_entry() (Chris von Recklinghausen) [1890943] - [x86] x86: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [s390] s390: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [powerpc] powerpc: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [arm64] arm64: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [mm] mm: add generic p?d_leaf() macros (Chris von Recklinghausen) [1890943] - [mm] mm: move_pages: report the number of non-attempted pages (Chris von Recklinghausen) [1890943] - [mm] autonuma: fix watermark checking in migrate_balanced_pgdat() (Chris von Recklinghausen) [1890943] - [mm] mm/migrate.c: handle freed page at the first place (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: Take the pagetable lock in walk_pte_range() (Chris von Recklinghausen) [1890943] - [mm] mm: untag user pointers passed to memory syscalls (Chris von Recklinghausen) [1890943] - [mm] mm: page cache: store only head pages in i_pages (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: fix reference check race between __find_get_block() and migration (Chris von Recklinghausen) [1890943] - [fs] mm: migrate: remove unused mode argument (Chris von Recklinghausen) [1890943] - [mm] powerpc/book3s: Use config independent helpers for page table walk (Chris von Recklinghausen) [1890943] - [mm] mm/mmu_notifier: use correct mmu_notifier events for each invalidation (Chris von Recklinghausen) [1890943] - [mm] mm/mmu_notifier: contextual information for event triggering invalidation (Chris von Recklinghausen) [1890943] - [mm] powerpc/mm: move __find_linux_pte() out of hugetlbpage.c (Chris von Recklinghausen) [1890943] - [mm] mm/filemap.c: remove redundant test from find_get_pages_contig (Chris von Recklinghausen) [1890943] - [mm] mm/hugetlb: distinguish between migratability and movability (Chris von Recklinghausen) [1890943] - [mm] numa: change get_mempolicy() to use nr_node_ids instead of MAX_NUMNODES (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: make buffer_migrate_page_norefs() actually succeed (Chris von Recklinghausen) [1890943] - [mm] mm: treewide: remove unused address argument from pte_alloc functions (Chris von Recklinghausen) [1890943] - [fs] mm: migrate: drop unused argument of migrate_page_move_mapping() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: provide buffer_migrate_page_norefs() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: move migrate_page_lock_buffers() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: lock buffers before migrate_page_move_mapping() (Chris von Recklinghausen) [1890943] - [mm] mm: Convert huge_memory to XArray (Chris von Recklinghausen) [1890943] - [mm] mm: Convert page migration to XArray (Chris von Recklinghausen) [1890943] - [mm] powerpc/mm/book3s: Check for pmd_large instead of pmd_trans_huge (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move two more functions from pgtable_64.h to pgtable.h (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move pti_set_user_pgtbl() to pgtable.h (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move pgdp kernel/user conversion functions to pgtable.h (Chris von Recklinghausen) [1890943] - [mm] x86/pgtable: Rename pti_set_user_pgd() to pti_set_user_pgtbl() (Chris von Recklinghausen) [1890943] - [mm] mm: memcg/slab: fix root memcg vmstats (Waiman Long) [1877019] - [mm] mm/slub: let number of online CPUs determine the slub page order (Waiman Long) [1877019] - [mm] mm, debug_pagealloc: don't rely on static keys too early (Waiman Long) [1877019] - [mm] mm: memcg: link page counters to root if use_hierarchy is false (Waiman Long) [1877019] - [mm] mm/memcg: unify swap and memsw page counters (Waiman Long) [1877019] - [mm] mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg (Waiman Long) [1877019] - [mm] mlock: fix unevictable_pgs event counts on THP (Waiman Long) [1877019] - [mm] mm/filemap: fix storing to a THP shadow entry (Waiman Long) [1877019] - [lib] XArray: add xas_split (Waiman Long) [1877019] - [lib] XArray: add xa_get_order (Waiman Long) [1877019] - [lib] XArray: Add private interface for workingset node deletion (Waiman Long) [1877019] - [include] XArray: Fix xas_reload for multi-index entries (Waiman Long) [1877019] - [include] xarray.h: correct return code documentation for xa_store_{bh, irq}() (Waiman Long) [1877019] - [mm] mm: memcg/slab: uncharge during kmem_cache_free_bulk() (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix racy access to page->mem_cgroup in mem_cgroup_from_obj() (Waiman Long) [1877019] - [mm] mm: memcontrol: fix missing suffix of workingset_restore (Waiman Long) [1877019] - [mm] mm: memcontrol: fix warning when allocating the root cgroup (Waiman Long) [1877019] - [mm] mm: replace hpage_nr_pages with thp_nr_pages (Waiman Long) [1877019] - [mm] mm: add thp_size (Waiman Long) [1877019] - [include] mm: add thp_order (Waiman Long) [1877019] - [include] include/linux/huge_mm.h: check PageTail in hpage_nr_pages even when !THP (Waiman Long) [1877019] - [mm] mm/page_vma_mapped.c: explicitly compare pfn for normal, hugetlbfs and THP page (Waiman Long) [1877019] - [mm] mm/vmscan: restore active/inactive ratio for anonymous LRU (Waiman Long) [1877019] - [mm] mm/swap: implement workingset detection for anonymous LRU (Waiman Long) [1877019] - [mm] mm/swapcache: support to handle the shadow entries (Waiman Long) [1877019] - [mm] mm: fix swap cache node allocation mask (Waiman Long) [1877019] - [include] include/linux/swap.h: delete meaningless __add_to_swap_cache() declaration (Waiman Long) [1877019] - [mm] mm/swap_state.c: use the same way to count page in_swap_cache (Waiman Long) [1877019] - [mm] mm: shmem: use proper gfp flags for shmem_writepage() (Waiman Long) [1877019] - [mm] mm/workingset: prepare the workingset detection infrastructure for anon LRU (Waiman Long) [1877019] - [mm] mm/vmscan: protect the workingset on anonymous LRU (Waiman Long) [1877019] - [mm] mm/vmscan: make active/inactive ratio as 1:1 for anon lru (Waiman Long) [1877019] - [tools] kselftests: cgroup: add perpcu memory accounting test (Waiman Long) [1877019] - [mm] mm: memcg: charge memcg percpu memory to the parent cgroup (Waiman Long) [1877019] - [mm] mm: memcg/percpu: per-memcg percpu memory statistics (Waiman Long) [1877019] - [mm] mm: memcg/percpu: account percpu memory to memory cgroups (Waiman Long) [1877019] - [mm] percpu: return number of released bytes from pcpu_free_area() (Waiman Long) [1877019] - [mm] percpu: make pcpu_alloc() aware of current gfp context (Waiman Long) [1877019] - [mm] mm/khugepaged: fix filemap page_to_pgoff(page) != offset (Waiman Long) [1877019] - [mm] mm, slub: restore initial kmem_cache flags (Waiman Long) [1877019] - [include] mm: memcg/slab: fix slab statistics in !SMP configuration (Waiman Long) [1877019] - [mm] mm: slab: fix potential double free in ___cache_free (Waiman Long) [1877019] - [mm] ksm: reinstate memcg charge on copied pages (Waiman Long) [1877019] - [mm] mm: slub: fix conversion of freelist_corrupted() (Waiman Long) [1877019] - [mm] memcg: fix use-after-free in uncharge_batch (Waiman Long) [1877019] - [mm] mm/memory: fix IO cost for anonymous page (Waiman Long) [1877019] - [mm] mm: workingset: age nonresident information alongside anonymous pages (Waiman Long) [1877019] - [mm] slub: cure list_slab_objects() from double fix (Waiman Long) [1877019] - [mm] mm: do_swap_page(): fix up the error code (Waiman Long) [1877019] - [misc] lkdtm/heap: Avoid edge and middle of slabs (Waiman Long) [1877019] - [mm] mm: slub: really fix slab walking for init_on_free (Waiman Long) [1877019] - [mm] mm/slab.c: fix kernel-doc warning for __ksize() (Waiman Long) [1877019] - [mm] mm: memcontrol: restore proper dirty throttling when memory.high changes (Waiman Long) [1877019] - [mm] memcg, oom: check memcg margin for parallel oom (Waiman Long) [1877019] - [mm] mm, memcg: avoid stale protection values when cgroup is above protection (Waiman Long) [1877019] - [mm] mm, memcg: unify reclaim retry limits with page allocator (Waiman Long) [1877019] - [mm] mm, memcg: reclaim more aggressively before high allocator throttling (Waiman Long) [1877019] - [mm] mm: memcontrol: avoid workload stalls when lowering memory.high (Waiman Long) [1877019] - [include] mm: kmem: switch to static_branch_likely() in memcg_kmem_enabled() (Waiman Long) [1877019] - [mm] mm: slab: rename (un)charge_slab_page() to (un)account_slab_page() (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove unused argument by charge_slab_page() (Waiman Long) [1877019] - [tools] tools/cgroup: add memcg_slabinfo.py tool (Waiman Long) [1877019] - [tools] kselftests: cgroup: add kernel memory accounting tests (Waiman Long) [1877019] - [mm] mm: memcg/slab: use a single set of kmem_caches for all allocations (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove redundant check in memcg_accumulate_slabinfo() (Waiman Long) [1877019] - [mm] mm: memcg/slab: deprecate slab_root_caches (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove memcg_kmem_get_cache() (Waiman Long) [1877019] - [mm] mm: memcg/slab: simplify memcg cache creation (Waiman Long) [1877019] - [mm] mm: memcg/slab: use a single set of kmem_caches for all accounted allocations (Waiman Long) [1877019] - [mm] mm, slab_common: fix a typo in comment "eariler"->"earlier" (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix memory leak at non-root kmem_cache destroy (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer release (Waiman Long) [1877019] - [mm] mm: memcg/slab: move memcg_kmem_bypass() to memcontrol.h (Waiman Long) [1877019] - [mm] mm: memcg/slab: deprecate memory.kmem.slabinfo (Waiman Long) [1877019] - [mm] mm, memcg: fix build error around the usage of kmem_caches (Waiman Long) [1877019] - [mm] mm: memcg/slab: charge individual slab objects instead of pages (Waiman Long) [1877019] - [mm] mm: memcg/slab: save obj_cgroup for non-root slab objects (Waiman Long) [1877019] - [mm] mm: memcg/slab: allocate obj_cgroups for non-root slab pages (Waiman Long) [1877019] - [mm] mm: memcg/slab: obj_cgroup API (Waiman Long) [1877019] - [mm] mm: memcontrol: decouple reference counting from page accounting (Waiman Long) [1877019] - [mm] mm: slub: implement SLUB version of obj_to_index() (Waiman Long) [1877019] - [mm] mm: memcg: convert vmstat slab counters to bytes (Waiman Long) [1877019] - [mm] mm: memcg: prepare for byte-sized vmstat items (Waiman Long) [1877019] - [mm] mm: memcg: factor out memcg- and lruvec-level changes out of __mod_lruvec_state() (Waiman Long) [1877019] - [mm] mm: kmem: make memcg_kmem_enabled() irreversible (Waiman Long) [1877019] - [mm] mm, slab/slub: improve error reporting and overhead of cache_from_obj() (Waiman Long) [1877019] - [mm] mm, slab/slub: move and improve cache_from_obj() (Waiman Long) [1877019] - [mm] mm, slub: extend checks guarded by slub_debug static key (Waiman Long) [1877019] - [mm] mm, slub: introduce kmem_cache_debug_flags() (Waiman Long) [1877019] - [mm] mm, slub: introduce static key for slub_debug() (Waiman Long) [1877019] - [mm] mm, slub: make reclaim_account attribute read-only (Waiman Long) [1877019] - [mm] mm, slub: make remaining slub_debug related attributes read-only (Waiman Long) [1877019] - [mm] mm, slub: remove runtime allocation order changes (Waiman Long) [1877019] - [mm] mm, slub: make some slub_debug related attributes read-only (Waiman Long) [1877019] - [documentation] mm, slub: extend slub_debug syntax for multiple blocks (Waiman Long) [1877019] - [mm] mm/slab.c: update outdated kmem_list3 in a comment (Waiman Long) [1877019] - [mm] mm, slab: check GFP_SLAB_BUG_MASK before alloc_pages in kmalloc_order (Waiman Long) [1877019] - [mm] mm/slab: add naive detection of double free (Waiman Long) [1877019] - [init] mm/slab: expand CONFIG_SLAB_FREELIST_HARDENED to include SLAB (Waiman Long) [1877019] - [mm] mm: ksize() should silently accept a NULL pointer (Waiman Long) [1877019] - [include] include/linux/vmstat.h: remove unused page state adjustment macro (Waiman Long) [1877019] - [include] mm, memcg: fix inconsistent oom event behavior (Waiman Long) [1877019] - [mm] mm/memcg: fix refcount error while moving and swapping (Waiman Long) [1877019] - [mm] mm/memcontrol: fix OOPS inside mem_cgroup_get_nr_swap_pages() (Waiman Long) [1877019] - [mm] mm/memcontrol.c: add missed css_put() (Waiman Long) [1877019] - [mm] mm: memcontrol: handle div0 crash race condition in memory.low (Waiman Long) [1877019] - [kernel] mm: memcontrol: recursive memory.low protection (Waiman Long) [1877019] - [include] mm, memcg: consider subtrees in memory.events (Waiman Long) [1877019] - [net] mm, treewide: rename kzfree() to kfree_sensitive() (Waiman Long) [1877019] - [mm] mm/slab: use memzero_explicit() in kzfree() (Waiman Long) [1877019] - [mm] mm: swap: memcg: fix memcg stats for huge pages (Waiman Long) [1877019] - [mm] mm: swap: fix vmstats for huge pages (Waiman Long) [1877019] - [mm] mm: vmscan: limit the range of LRU type balancing (Waiman Long) [1877019] - [mm] mm: vmscan: reclaim writepage is IO cost (Waiman Long) [1877019] - [mm] mm: vmscan: determine anon/file pressure balance at the reclaim root (Waiman Long) [1877019] - [mm] mm: balance LRU lists based on relative thrashing (Waiman Long) [1877019] - [mm] mm: only count actual rotations as LRU reclaim cost (Waiman Long) [1877019] - [mm] mm: deactivations shouldn't bias the LRU balance (Waiman Long) [1877019] - [mm] mm: base LRU balancing on an explicit cost model (Waiman Long) [1877019] - [mm] mm: vmscan: drop unnecessary div0 avoidance rounding in get_scan_count() (Waiman Long) [1877019] - [mm] mm: remove use-once cache bias from LRU balancing (Waiman Long) [1877019] - [mm] mm: workingset: let cache workingset challenge anon (Waiman Long) [1877019] - [mm] mm: fold and remove lru_cache_add_anon() and lru_cache_add_file() (Waiman Long) [1877019] - [kernel] mm: allow swappiness that prefers reclaiming anon over the file workingset (Waiman Long) [1877019] - [mm] mm: keep separate anon and file statistics on page reclaim activity (Waiman Long) [1877019] - [mm] mm: fix LRU balancing effect of new transparent huge pages (Waiman Long) [1877019] - [mm] mm: replace list_move_tail() with add_page_to_lru_list_tail() (Waiman Long) [1877019] - [mm] mm: memcontrol: update page->mem_cgroup stability rules (Waiman Long) [1877019] - [mm] mm: memcontrol: delete unused lrucare handling (Waiman Long) [1877019] - [documentation] mm: memcontrol: document the new swap control behavior (Waiman Long) [1877019] - [mm] mm: memcontrol: charge swapin pages on instantiation (Waiman Long) [1877019] - [mm] mm: memcontrol: make swap tracking an integral part of memory control (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare swap controller setup for integration (Waiman Long) [1877019] - [mm] mm: memcontrol: drop unused try/commit/cancel charge API (Waiman Long) [1877019] - [mm] mm: memcontrol: convert anon and file-thp to new mem_cgroup_charge() API (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_ANON_THPS counter (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_ANON_MAPPED counter (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_FILE_PAGES and NR_SHMEM counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare cgroup vmstat infrastructure for native anon counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare move_account for removal of private page type counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare uncharging for removal of private page type counters (Waiman Long) [1877019] - [mm] mm: memcontrol: convert page cache to a new mem_cgroup_charge() API (Waiman Long) [1877019] - [mm] mm: memcontrol: move out cgroup swaprate throttling (Waiman Long) [1877019] - [mm] mm: shmem: remove rare optimization when swapin races with hole punching (Waiman Long) [1877019] - [mm] mm: memcontrol: drop @compound parameter from memcg charging API (Waiman Long) [1877019] - [mm] mm: memcontrol: fix stat-corrupting race in charge moving (Waiman Long) [1877019] - [mm] mm: fix NUMA node file count error in replace_page_cache() (Waiman Long) [1877019] - [mm] mm/slub: fix stack overruns with SLUB_STATS (Waiman Long) [1877019] - [mm] slub: remove kmalloc under list_lock from list_slab_objects() V2 (Waiman Long) [1877019] - [mm] slub: Remove userspace notifier for cache add/remove (Waiman Long) [1877019] - [mm] mm/slub.c: fix corrupted freechain in deactivate_slab() (Waiman Long) [1877019] - [mm] mm/slub: fix incorrect interpretation of s->offset (Waiman Long) [1877019] - [mm] slub: avoid redzone when choosing freepointer location (Waiman Long) [1877019] - [mm] slub: relocate freelist pointer to middle of object (Waiman Long) [1877019] - [mm] slub: improve bit diffusion for freelist ptr obfuscation (Waiman Long) [1877019] - [mm] mm, slb: improve memory accounting (Waiman Long) [1877019] - [mm] thp: change CoW semantics for anon-THP (Waiman Long) [1877019] - [mm] khugepaged: allow to collapse PTE-mapped compound pages (Waiman Long) [1877019] - [mm] khugepaged: allow to collapse a page shared across fork (Waiman Long) [1877019] - [mm] khugepaged: drain LRU add pagevec after swapin (Waiman Long) [1877019] - [mm] khugepaged: drain all LRU caches before scanning pages (Waiman Long) [1877019] - [mm] khugepaged: do not stop collapse if less than half PTEs are referenced (Waiman Long) [1877019] - [tools] khugepaged: add self test (Waiman Long) [1877019] - [mm] mm: code cleanup for MADV_FREE (Waiman Long) [1877019] - [mm] mm, thp: track fallbacks due to failed memcg charges separately (Waiman Long) [1877019] - [mm] mm, shmem: add vmstat for hugepage fallback (Waiman Long) [1877019] - [mm] autonuma: reduce cache footprint when scanning page tables (Waiman Long) [1877019] - [trace] mm/vmscan: simplify trace_reclaim_flags and trace_shrink_flags (Waiman Long) [1877019] - [mm] mm/memcg: optimize memory.numa_stat like memory.stat (Waiman Long) [1877019] - [mm] memcg: fix memcg_kmem_bypass() for remote memcg charging (Waiman Long) [1877019] - [mm] mm/memcg: automatically penalize tasks with high swap use (Waiman Long) [1877019] - [include] mm/memcg: move cgroup high memory limit setting into struct page_counter (Waiman Long) [1877019] - [mm] mm/memcg: move penalty delay clamping out of calculate_high_delay() (Waiman Long) [1877019] - [mm] mm/memcg: prepare for swap over-high accounting and penalty calculation (Waiman Long) [1877019] - [mm] memcg: expose root cgroup's memory.stat (Waiman Long) [1877019] - [mm] mm, memcg: add workingset_restore in memory.stat (Waiman Long) [1877019] - [documentation] doc: cgroup: improve formatting of mem stats (Waiman Long) [1877019] - [documentation] docs: cgroup: mm: Fix spelling of "list" (Waiman Long) [1877019] - [mm] mm, memcg: fix error return value of mem_cgroup_css_alloc() (Waiman Long) [1877019] - [include] memcontrol.h: Replace zero-length array with flexible-array member (Waiman Long) [1877019] - [mm] mm, memcg: bypass high reclaim iteration for cgroup hierarchy root (Waiman Long) [1877019] - [mm] mm: memcg: make memory.oom.group tolerable to task migration (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.swap.max load tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.low load/store tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.max load tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.high load/store tearing (Waiman Long) [1877019] - [mm] mm/memcontrol.c: make mem_cgroup_id_get_many() __maybe_unused (Waiman Long) [1877019] - [mm] memcg: css_tryget_online cleanups (Waiman Long) [1877019] - [mm] mm/memcontrol.c: cleanup some useless code (Waiman Long) [1877019] - [mm] mm/memcontrol.c: fix a -Wunused-function warning (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to rcu protection in drain_all_stock() (Waiman Long) [1877019] - [mm] mm/khugepaged.c: fix khugepaged's request size in collapse_file (Waiman Long) [1877019] - [mm] khugepaged: fix null-pointer dereference due to race (Waiman Long) [1877019] - [mm] mm, thp: stop leaking unreleased file pages (Waiman Long) [1877019] - [trace] mm: khugepaged: add trace status description for SCAN_PAGE_HAS_PRIVATE (Waiman Long) [1877019] - [mm] mm, thp: recheck each page before collapsing file THP (Waiman Long) [1877019] - [mm] mm/thp: allow dropping THP from page cache (Waiman Long) [1877019] - [mm] mm/vmscan.c: support removing arbitrary sized pages from mapping (Waiman Long) [1877019] - [mm] mm/thp: fix node page state in split_huge_page_to_list() (Waiman Long) [1877019] - [fs] proc/meminfo: fix output alignment (Waiman Long) [1877019] - [mm] mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy path (Waiman Long) [1877019] - [fs] mm, thp: avoid writes to file with THP in pagecache (Waiman Long) [1877019] - [mm] mm, thp: add read-only THP support for (non-shmem) FS (Waiman Long) [1877019] - [mm] khugepaged: rename collapse_shmem() and khugepaged_scan_shmem() (Waiman Long) [1877019] - [fs] mm,thp: stats for file backed THP (Waiman Long) [1877019] - [mm] filemap: update offset check in filemap_fault() (Waiman Long) [1877019] - [mm] filemap: check compound_head(page)->mapping in pagecache_get_page() (Waiman Long) [1877019] - [mm] filemap: check compound_head(page)->mapping in filemap_fault() (Waiman Long) [1877019] - [mm] mm: mempolicy: fix the wrong return value and potential pages leak of mbind (Waiman Long) [1877019] - [mm] mm: thp: fix false negative of shmem vma's THP eligibility (Waiman Long) [1877019] - [mm] mm: thp: make transhuge_vma_suitable available for anonymous THP (Waiman Long) [1877019] - [mm] mm, thp, proc: report THP eligibility for each vma (Waiman Long) [1877019] - [documentation] mm, proc: be more verbose about unstable VMA flags in /proc//smaps (Waiman Long) [1877019] - [mm] mm: thp: pass correct vm_flags to hugepage_vma_check() (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps_rollup: convert to single value seq_file (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps: factor out common stats printing (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps: factor out mem stats gathering (Waiman Long) [1877019] - [fs] mm: /proc/pid/*maps remove is_pid and related wrappers (Waiman Long) [1877019] - [mm] mm: workingset: fix vmstat counters for shadow nodes (Waiman Long) [1877019] - [mm] mm: workingset: add vmstat counter for shadow nodes (Waiman Long) [1877019] - [include] mm/memcg: Document access rule regarding mem_cgroup structure (Waiman Long) [1877019] - [mm] mm/page_alloc: silence a KASAN false positive (Waiman Long) [1877019] - [s390] s390/setup: init jump labels before command line parsing (Waiman Long) [1877019] - [mm] s390/maccess: add no DAT mode to kernel_write (Waiman Long) [1877019] - [mm] s390: Change s390_kernel_write() return type to match memcpy() (Waiman Long) [1877019] - [kernel] PM: hibernate: fix crashes with init_on_free=1 (Waiman Long) [1877019] - [mm] mm/slub.c: init_on_free=1 should wipe freelist ptr for bulk allocations (Waiman Long) [1877019] - [mm] mm/page_alloc.c: fix a crash in free_pages_prepare() (Waiman Long) [1877019] - [mm] mm: slub: Fix slab walking for init_on_free (Waiman Long) [1877019] - [mm] mm, slab: move memcg_cache_params structure to mm/slab.h (Waiman Long) [1877019] - [mm] mm, slab: extend slab/shrink to shrink all memcg caches (Waiman Long) [1877019] - [mm] mm: mempolicy: handle vma with unmovable pages mapped correctly in mbind (Waiman Long) [1877019] - [mm] mm: mempolicy: make the behavior consistent when MPOL_MF_MOVE* and MPOL_MF_STRICT were specified (Waiman Long) [1877019] - [init] init/Kconfig: fix neighboring typos (Waiman Long) [1877019] - [mm] mm: security: introduce init_on_alloc=1 and init_on_free=1 boot options (Waiman Long) [1877019] - [mm] memcg, oom: no oom-kill for __GFP_RETRY_MAYFAIL (Waiman Long) [1877019] - [mm] mm/kasan: add object validation in ksize() (Waiman Long) [1877019] - [mm] mm/slab: refactor common ksize KASAN logic into slab_common.c (Waiman Long) [1877019] - [mm] mm/slub.c: avoid double string traverse in kmem_cache_flags() (Waiman Long) [1877019] - [mm] mm/slab: sanity-check page type when looking up cache (Waiman Long) [1877019] - [mm] mm/slab: validate cache membership under freelist hardening (Waiman Long) [1877019] - [mm] mm/migrate: add stable check in migrate_vma_insert_page() (Waiman Long) [1877019] - [mm] mm/migrate: clean up some minor coding style (Waiman Long) [1877019] - [mm] mm/migrate: remove useless mask of start address (Waiman Long) [1877019] - [kernel] uprobe: use original page when all uprobes are removed (Waiman Long) [1877019] - [mm] mm: move memcmp_pages() and pages_identical() (Waiman Long) [1877019] - [mm] mm, thp: do not queue fully unmapped pages for deferred split (Waiman Long) [1877019] - [mm] mm/khugepaged: fix the xas_create_range() error path (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() do not crash on Compound (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() without freezing new_page (Waiman Long) [1877019] - [mm] mm/khugepaged: minor reorderings in collapse_shmem() (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() remember to clear holes (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() stop if punched or truncated (Waiman Long) [1877019] - [mm] mm: Convert khugepaged_scan_shmem to XArray (Waiman Long) [1877019] - [mm] mm: Convert collapse_shmem to XArray (Waiman Long) [1877019] - [mm] mm: thp: inc counter for collapsed shmem THP (Waiman Long) [1877019] - [mm] mm: thp: register mm for khugepaged when merging vma for shmem (Waiman Long) [1877019] - [mm] mm: swapoff: shmem_unuse() stop eviction without igrab() (Waiman Long) [1877019] - [mm] mm: swapoff: take notice of completion sooner (Waiman Long) [1877019] - [mm] mm: swapoff: remove too limiting SWAP_UNUSE_MAX_TRIES (Waiman Long) [1877019] - [mm] mm: swapoff: shmem_find_swap_entries() filter out other types (Waiman Long) [1877019] - [mm] mm: rid swapoff of quadratic complexity (Waiman Long) [1877019] - [mm] shmem: Comment fixups (Waiman Long) [1877019] - [mm] memfd: Convert memfd_tag_pins to XArray (Waiman Long) [1877019] - [mm] memfd: Convert memfd_wait_for_pins to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_partial_swap_usage to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_free_swap to XArray (Waiman Long) [1877019] - [lib] shmem: Convert shmem_alloc_hugepage to XArray (Waiman Long) [1877019] - [tools] shmem: Convert find_swap_entry to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_confirm_swap to XArray (Waiman Long) [1877019]- [infiniband] RDMA/core: Do not indicate device ready when device enablement fails (Kamal Heib) [1902144] - [infiniband] RDMA/core: Clean up cq pool mechanism (Kamal Heib) [1902144] - [pci] PCI/ASPM: Disable ASPM on ASMedia ASM1083/1085 PCIe-to-PCI bridge (Myron Stowe) [1897927] - [pci] PCI: Make pcie_find_root_port() work for Root Ports (Myron Stowe) [1897927] - [pci] PCI: Add ACS quirk for Intel Root Complex Integrated Endpoints (Myron Stowe) [1897927] - [pci] PCI: Avoid FLR for AMD Starship USB 3.0 (Myron Stowe) [1897927] - [pci] PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0 (Myron Stowe) [1897927] - [pci] PCI/switchtec: Correct bool variable type assignment (Myron Stowe) [1897927] - [pci] PCI: Allow pci_resize_resource() for devices on root bus (Myron Stowe) [1897927] - [pci] PCI/PM: Adjust pcie_wait_for_link_delay() for caller delay (Myron Stowe) [1897927] - [pci] PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect (Myron Stowe) [1897927] - [tty] serial: 8250_pci: Move Pericom IDs to pci_ids.h (Myron Stowe) [1897927] - [pci] PCI/PM: Call .bridge_d3() hook only if non-NULL (Myron Stowe) [1897927] - [pci] PCI: Rename _DSM constants to align with spec (Myron Stowe) [1897927] - [pci] PCI/PME: Fix kernel-doc of pcie_pme_resume() and pcie_pme_remove() (Myron Stowe) [1897927] - [pci] PCI: Unify pcie_find_root_port() and pci_find_pcie_root_port() (Myron Stowe) [1897927] - [pci] PCI: Replace zero-length array with flexible-array (Myron Stowe) [1897927] - [pci] PCI: shpchp: Make shpchp_unconfigure_device() void (Myron Stowe) [1897927] - [pci] PCI: Use of_node_name_eq() for node name comparisons (Myron Stowe) [1897927] - [pci] PCI: pciehp: Remove unused EMI() and HP_SUPR_RM() macros (Myron Stowe) [1897927] - [pcmcia] pcmcia: Use CardBus window names (PCI_CB_BRIDGE_IO_0_WINDOW etc) when freeing (Myron Stowe) [1897927] - [pci] PCI: Use bridge window names (PCI_BRIDGE_IO_WINDOW etc) (Myron Stowe) [1897927] - [pci] PCI/PTM: Inherit Switch Downstream Port PTM settings from Upstream Port (Myron Stowe) [1897927] - [pci] PCI: Program MPS for RCiEP devices (Myron Stowe) [1897927] - [pci] PCI: Fix pci_host_bridge struct device release/free handling (Myron Stowe) [1897927] - [pci] PCI: Fix pci_register_host_bridge() device_register() error handling (Myron Stowe) [1897927] - [pci] PCI/ASPM: Allow ASPM on links to PCIe-to-PCI/PCI-X Bridges (Myron Stowe) [1897927] - [x86] x86/tboot: Don't disable swiotlb when iommu is forced on (Tony Camuso) [1883395] - [iommu] iommu/vt-d: Avoid panic if iommu init fails in tboot system (Tony Camuso) [1883395] - [pci] PCI/ERR: Clear PCIe Device Status errors only if OS owns AER (Myron Stowe) [1838358] - [pci] PCI/ERR: Rename pci_aer_clear_device_status() to pcie_clear_device_status() (Myron Stowe) [1838358] - [pci] PCI/AER: Log correctable errors as warning, not error (Myron Stowe) [1838358] - [pci] PCI/AER: Simplify __aer_print_error() (Myron Stowe) [1838358] - [misc] mei: hdcp: fix mei_hdcp_verify_mprime() input parameter (Tony Camuso) [1874577] - [misc] mei: add device kind to sysfs (Tony Camuso) [1874577] - [misc] mei: hw: don't use one element arrays (Tony Camuso) [1874577] - [misc] mei: hw: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: client: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: bus: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: ioctl: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: hbm: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] Revert "mei: Avoid the use of one-element arrays" (Tony Camuso) [1874577] - [misc] mei: Avoid the use of one-element arrays (Tony Camuso) [1874577] - [misc] mei: Replace HTTP links with HTTPS ones (Tony Camuso) [1874577] - [misc] mei: hdcp: Replace one-element array with flexible-array member (Tony Camuso) [1874577] - [misc] mei: bus: don't clean driver pointer (Tony Camuso) [1874577] - [misc] mei: me: add MEI device for KBP with ITPS capability (Tony Camuso) [1874577] - [misc] mei: me: add MEI device for SPT with ITPS capability (Tony Camuso) [1874577] - [misc] mei: me: add kdoc for mei_me_fw_type_nm() (Tony Camuso) [1874577] - [misc] mei: me: make mei_me_fw_sku_sps_4() less cryptic (Tony Camuso) [1874577] - [misc] mei: me: constify the device parameter to the probe quirk (Tony Camuso) [1874577] - [misc] mei: hdcp: Constify struct mei_cl_device_id (Tony Camuso) [1874577] - [misc] mei: me: add tiger lake point device ids for H platforms (Tony Camuso) [1874577] - [misc] mei: me: disable mei interface on Mehlow server platforms (Tony Camuso) [1874577] - [misc] mei: release me_cl object reference (Tony Camuso) [1874577] - [misc] mei: me: disable mei interface on LBG servers (Tony Camuso) [1874577] - [fs] NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock (Dave Wysochanski) [1906306] - [fs] NFS: Adjust fs_context error logging (Scott Mayhew) [1907711] - [mm] powerpc/book3s64/pkeys: Fix pkey_access_permitted() for execute disable pkey (Steve Best) [1912294] - [infiniband] IB/isert: add module param to set sg_tablesize for IO cmd (Kamal Heib) [1887359] - [infiniband] IB/isert: allocate RW ctxs according to max IO size (Kamal Heib) [1887359] - [net] sched: flower: Mark MPLS multilabel match as Tech Preview (Guillaume Nault) [1814836] - [net] sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower (Guillaume Nault) [1814836] - [net] cls_flower: remove mpls_opts_policy (Guillaume Nault) [1814836] - [net] flow_dissector: work around stack frame size warning (Guillaume Nault) [1814836] - [net] cls_flower: Support filtering on multiple MPLS Label Stack Entries (Guillaume Nault) [1814836] - [net] flow_dissector: Parse multiple MPLS Label Stack Entries (Guillaume Nault) [1814836] - [netdrv] net/mlx5e: Use generic API to build MPLS label (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Support pedit on mpls over UDP decap (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Add support for hw decapsulation of MPLS over UDP (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Allow to match on mpls parameters (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Add support for hw encapsulation of MPLS over UDP (Alaa Hleihel) [1790220]- [netdrv] net: intel: Remove in_interrupt() warnings (Ken Cox) [1838731] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838731] - [netdrv] ixgbe: use eth_zero_addr() to clear mac address (Ken Cox) [1838731] - [netdrv] ixgbe: Remove unnecessary usages of memset (Ken Cox) [1838731] - [netdrv] ixgbe: use generic power management (Ken Cox) [1838731] - [netdrv] ixgbe: convert to new udp_tunnel_nic infra (Ken Cox) [1838731] - [netdrv] ixgbe: don't clear UDP tunnel ports when RXCSUM is disabled (Ken Cox) [1838731] - [netdrv] ixgbe: Cleanup unneeded delay in ethtool test (Ken Cox) [1838731] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838731] - [netdrv] net: ethernet: ixgbe: don't call devm_mdiobus_free() (Ken Cox) [1838731] - [netdrv] net: ethernet: ixgbe: check the return value of ixgbe_mii_bus_init() (Ken Cox) [1838731] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838731] - [netdrv] ixgbe: protect ring accesses with READ- and WRITE_ONCE (Ken Cox) [1838731] - [netdrv] ixgbe: Remove unused inline function ixgbe_irq_disable_queues (Ken Cox) [1838731] - [netdrv] ixgbe: Use true, false for bool variable in __ixgbe_enable_sriov() (Ken Cox) [1838731] - [netdrv] ixgbe: Remove conversion to bool in ixgbe_device_supports_autoneg_fc() (Ken Cox) [1838731] - [netdrv] ixgbe: fix signed-integer-overflow warning (Ken Cox) [1838731] - [netdrv] ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (Ken Cox) [1838731] - [netdrv] ionic: use mc sync for multicast filters (Jonathan Toppins) [1909329] - [fs] xfs: always return -ENOSPC on project quota reservation failure (Carlos Maiolino) [1908612] - [fs] xfs: group quota should return EDQUOT when prj quota enabled (Carlos Maiolino) [1908612] - [pwm] pwm: Add DesignWare PWM Controller Driver (Steve Best) [1783562] - [pwm] pwm: Ensure pwm_apply_state() doesn't modify the state argument (Steve Best) [1783562] - [net] sched: Mark VLAN_ACT_{POP,PUSH}_ETH as Tech Preview (Guillaume Nault) [1909345] - [vfio] vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn (Claudio Imbrenda) [1903972] - [s390] s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY (Claudio Imbrenda) [1903972] - [pci] PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY (Claudio Imbrenda) [1903972] - [iommu] s390/pci: adaptation of iommu to multifunction (Claudio Imbrenda) [1903972] - [s390] s390/pci: fix leak of DMA tables on hard unplug (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix PF/VF linking on hot plug (Claudio Imbrenda) [1853312] - [s390] s390/pci: re-introduce zpci_remove_device() (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix zpci_bus_link_virtfn() (Claudio Imbrenda) [1853312] - [s390] s390/pci: ignore stale configuration request event (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix enabling a reserved PCI function (Claudio Imbrenda) [1853312] - [s390] s390/pci: create links between PFs and VFs (Claudio Imbrenda) [1853312] - [pci] PCI/IOV: Introduce pci_iov_sysfs_link() function (Claudio Imbrenda) [1853312] - [s390] s390/pci: removes wrong PCI multifunction assignment (Claudio Imbrenda) [1853312] - [s390] s390/pci: Handling multifunctions (Claudio Imbrenda) [1853312] - [s390] s390/pci: Adding bus resource (Claudio Imbrenda) [1853312] - [s390] s390/pci: adapt events for zbus (Claudio Imbrenda) [1853312] - [s390] s390/pci: create zPCI bus (Claudio Imbrenda) [1853312] - [s390] s390/pci: define RID and RID available (Claudio Imbrenda) [1853312] - [s390] s390/pci: define kernel parameters for PCI multifunction (Claudio Imbrenda) [1853312] - [pci] s390/pci: embedding hotplug_slot in zdev (Claudio Imbrenda) [1853312] - [s390] s390/pci: Expose new port attribute for PCIe functions (Claudio Imbrenda) [1853312] - [s390] s390/pci: Improve handling of unset UID (Claudio Imbrenda) [1853312] - [s390] s390/pci: Fix zpci_alloc_domain() over allocation (Claudio Imbrenda) [1853312] - [arm64] arm64: insn: Fix two bugs in encoding 32-bit logical immediates (Yauheni Kaliuta) [1900977] - [iommu] iommu/amd: Set DTEto represent 512 IRTEs (Jerry Snitselaar) [1897492 1894769] - [iommu] iommu/amd: Increase interrupt remapping table limit to 512 entries (Jerry Snitselaar) [1897492 1894769] - [tools] selftests: forwarding: Add MPLS L2VPN test (Guillaume Nault) [1861261] - [net] sched: act_mpls: Add action to push MPLS LSE before Ethernet header (Guillaume Nault) [1861261] - [net] sched: act_vlan: Add {POP,PUSH}_ETH actions (Guillaume Nault) [1861261] - [fs] cifs: Fix incomplete memory allocation on setxattr path (Leif Sahlberg) [1903883] - [fs] cifs: Fix leak when handling lease break for cached root fid (Leif Sahlberg) [1903883] - [fs] Revert "cifs: Fix the target file was deleted when rename failed." (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] cifs: fix reference leak for tlink (Leif Sahlberg) [1903883] - [fs] smb3: fix unneeded error message on change notify (Leif Sahlberg) [1903883] - [fs] cifs: remove the retry in cifs_poxis_lock_set (Leif Sahlberg) [1903883] - [fs] smb3: fix access denied on change notify request to some servers (Leif Sahlberg) [1903883] - [fs] Replace HTTP links with HTTPS ones: CIFS (Leif Sahlberg) [1903883] - [fs] cifs: prevent truncation from long to int in wait_for_free_credits (Leif Sahlberg) [1903883] - [fs] cifs: Fix the target file was deleted when rename failed (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'posix' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'handletimeout' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor lease disabling for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor persistent/resilient handle flags for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'seal' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] cifs: Display local UID details for SMB sessions in DebugData (Leif Sahlberg) [1903883] - [fs] cifs: misc: Use array_size() in if-statement controlling expression (Leif Sahlberg) [1903883] - [fs] cifs: update ctime and mtime during truncate (Leif Sahlberg) [1903883] - [fs] cifs/smb3: Fix data inconsistent when punch hole (Leif Sahlberg) [1903883] - [fs] cifs/smb3: Fix data inconsistent when zero file range (Leif Sahlberg) [1903883] - [fs] cifs: Fix double add page to memcg when cifs_readpages (Leif Sahlberg) [1903883] - [fs] cifs: Fix cached_fid refcnt leak in open_shroot (Leif Sahlberg) [1903883] - [fs] smb3: Add debug message for new file creation with idsfromsid mount option (Leif Sahlberg) [1903883] - [fs] cifs: fix chown and chgrp when idsfromsid mount option enabled (Leif Sahlberg) [1903883] - [fs] smb3: allow uid and gid owners to be set on create with idsfromsid mount option (Leif Sahlberg) [1903883] - [fs] smb311: Add tracepoints for new compound posix query info (Leif Sahlberg) [1903883] - [fs] smb311: add support for using info level for posix extensions query (Leif Sahlberg) [1903883] - [fs] smb311: Add support for lookup with posix extensions query info (Leif Sahlberg) [1903883] - [fs] smb311: Add support for SMB311 query info (non-compounded) (Leif Sahlberg) [1903883] - [fs] SMB311: Add support for query info using posix extensions (level 100) (Leif Sahlberg) [1903883] - [fs] smb3: add indatalen that can be a non-zero value to calculation of credit charge in smb2 ioctl (Leif Sahlberg) [1903883] - [fs] smb3: fix typo in mount options displayed in /proc/mounts (Leif Sahlberg) [1903883] - [fs] cifs: Add get_security_type_str function to return sec type (Leif Sahlberg) [1903883] - [fs] smb3: extend fscache mount volume coherency check (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] smb3: fix incorrect number of credits when ioctl MaxOutputResponse > 64K (Leif Sahlberg) [1903883] - [fs] smb3: remove static checker warning (Leif Sahlberg) [1903883] - [fs] cifs: fix minor typos in comments and log messages (Leif Sahlberg) [1903883] - [fs] smb3: minor update to compression header definitions (Leif Sahlberg) [1903883] - [fs] cifs: minor fix to two debug messages (Leif Sahlberg) [1903883] - [fs] cifs: Standardize logging output (Leif Sahlberg) [1903883] - [fs] smb3: Add new parm "nodelete" (Leif Sahlberg) [1903883] - [fs] cifs: get rid of unused parameter in reconn_setup_dfs_targets() (Leif Sahlberg) [1903883] - [fs] cifs: handle hostnames that resolve to same ip in failover (Leif Sahlberg) [1903883] - [fs] cifs: set up next DFS target before generic_ip_connect() (Leif Sahlberg) [1903883] - [fs] cifs: remove redundant initialization of variable rc (Leif Sahlberg) [1903883] - [fs] cifs: handle "nolease" option for vers=1.0 (Leif Sahlberg) [1903883] - [fs] cifs: fix leaked reference on requeued write (Leif Sahlberg) [1903883] - [fs] cifs: Fix null pointer check in cifs_read (Leif Sahlberg) [1903883] - [fs] CIFS: Spelling s/EACCESS/EACCES/ (Leif Sahlberg) [1903883] - [fs] cifs: fix uninitialised lease_key in open_shroot() (Leif Sahlberg) [1903883] - [fs] cifs: ensure correct super block for DFS reconnect (Leif Sahlberg) [1903883] - [fs] cifs: do not share tcons with DFS (Leif Sahlberg) [1903883] - [fs] cifs: minor update to comments around the cifs_tcp_ses_lock mutex (Leif Sahlberg) [1903883] - [fs] cifs: protect updating server->dstaddr with a spinlock (Leif Sahlberg) [1903883] - [fs] smb3: remove overly noisy debug line in signing errors (Leif Sahlberg) [1903883] - [fs] cifs: improve read performance for page size 64KB & cache=strict & vers=2.1+ (Leif Sahlberg) [1903883] - [fs] cifs: dump the session id and keys also for SMB2 sessions (Leif Sahlberg) [1903883] - [fs] smb3: enable swap on SMB3 mounts (Leif Sahlberg) [1903883] - [fs] smb3: change noisy error message to FYI (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] smb3: use SMB2_SIGNATURE_SIZE define (Leif Sahlberg) [1903883] - [fs] CIFS: Fix bug which the return value by asynchronous read is error (Leif Sahlberg) [1903883] - [fs] CIFS: check new file size when extending file by fallocate (Leif Sahlberg) [1903883] - [fs] SMB3: Minor cleanup of protocol definitions (Leif Sahlberg) [1903883] - [fs] SMB3: Additional compression structures (Leif Sahlberg) [1903883] - [fs] SMB3: Add new compression flags (Leif Sahlberg) [1903883] - [fs] cifs: smb2pdu.h: Replace zero-length array with flexible-array member (Leif Sahlberg) [1903883] - [fs] cifs: clear PF_MEMALLOC before exiting demultiplex thread (Leif Sahlberg) [1903883] - [fs] cifs: cifspdu.h: Replace zero-length array with flexible-array member (Leif Sahlberg) [1903883] - [fs] CIFS: Warn less noisily on default mount (Leif Sahlberg) [1903883] - [fs] fs/cifs: fix gcc warning in sid_to_id (Leif Sahlberg) [1903883] - [fs] cifs: allow unlock flock and OFD lock across fork (Leif Sahlberg) [1903883] - [fs] cifs: do d_move in rename (Leif Sahlberg) [1903883] - [fs] cifs: add SMB2_open() arg to return POSIX data (Leif Sahlberg) [1903883] - [fs] cifs: plumb smb2 POSIX dir enumeration (Leif Sahlberg) [1903883] - [fs] cifs: add smb2 POSIX info level (Leif Sahlberg) [1903883] - [fs] cifs: rename posix create rsp (Leif Sahlberg) [1903883] - [fs] cifs: print warning mounting with vers=1.0 (Leif Sahlberg) [1903883] - [fs] smb3: fix performance regression with setting mtime (Leif Sahlberg) [1903883] - [fs] cifs: make use of cap_unix(ses) in cifs_reconnect_tcon() (Leif Sahlberg) [1903883] - [fs] cifs: use mod_delayed_work() for &server->reconnect if already queued (Leif Sahlberg) [1903883] - [fs] cifs: call wake_up(&server->response_q) inside of cifs_reconnect() (Leif Sahlberg) [1903883] - [fs] cifs: do not ignore the SYNC flags in getattr (Leif Sahlberg) [1903883] - [tools] tools/power/x86/intel-speed-select: Update version for v5.10 (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Fix missing base-freq core IDs (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Update version for v5.9 (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Add retries for mail box commands (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Add option to delay mbox commands (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Ignore -o option processing on error (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Change path for caching topology info (Prarit Bhargava) [1896211] - [kernel] perf/core: Fix race in the perf_mmap_close() function (Michael Petlan) [1869925] {CVE-2020-14351} - [kernel] perf: Make struct ring_buffer less ambiguous (Michael Petlan) [1869925] {CVE-2020-14351} - [arm64] arm64: bpf: Fix branch offset in JIT (Yauheni Kaliuta) [1875342]- [hwmon] hwmon: (amd_energy) fix allocation of hwmon_channel_info config (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Add AMD family 19h model 01h x86 match (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) modify the visibility of the counters (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Improve the accumulation logic (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) optimize accumulation interval (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Move label out of accumulation structure (David Arcari) [1911220] - [powerpc] powerpc/64s: Remove TM from Power10 features (Gustavo Duarte) [1892471] - [netdrv] ionic: start queues before announcing link up (Jonathan Toppins) [1906250] - [fs] NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy (Benjamin Coddington) [1873897] - [bluetooth] Bluetooth: btusb: Map Typhoon peak controller to BTUSB_INTEL_NEWGEN (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add support for Intel Bluetooth Device Typhoon Peak (8087:0032) (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Helper function to download firmware to Intel adapters (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Define a function to construct firmware filename (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add *setup* function for new generation Intel controllers (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Fix endianness issue for TLV version information (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Functions to send firmware header / payload (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Add infrastructure to read controller information (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Refactor firmware download function (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Update boot parameter specific to SKU (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Refactor of firmware download flow for Intel conrollers (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Enable Intel events even if already in operational mode (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Configure Intel debug feature based on available support (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add support to read Intel debug feature (Gopal Tiwari) [1900356] - [kernel] rcuwait: avoid lockdep splats from rcuwait_active() (Auger Eric) [1903095] - [net] udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments (Xin Long) [1879403] - [net] udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO (Xin Long) [1879403] - [net] udp: fix UDP header access on Fast/frag0 UDP GRO (Xin Long) [1879403] - [net] ethtool: add missing NETIF_F_GSO_FRAGLIST feature string (Xin Long) [1879403] - [net] fix fraglist segmentation reference count leak (Xin Long) [1879403] - [net] udp: initialize is_flist with 0 in udp_gro_receive (Xin Long) [1879403] - [include] udp: segment looped gso packets correctly (Xin Long) [1879403] - [net] udp: Support UDP fraglist GRO/GSO. (Xin Long) [1879403] - [net] Support GRO/GSO fraglist chaining. (Xin Long) [1879403] - [net] Add a netdev software feature set that defaults to off. (Xin Long) [1879403] - [net] Add fraglist GRO/GSO feature flags (Xin Long) [1879403] - [include] udp: Avoid post-GRO UDP checksum recalculation (Xin Long) [1879403] - [net] udp: fix GRO packet of death (Xin Long) [1879403] - [net] udp: fix GRO reception in case of length mismatch (Xin Long) [1879403] - [net] udp: cope with UDP GRO packet misdirection (Xin Long) [1879403] - [net] ipv6: factor out protocol delivery helper (Xin Long) [1879403] - [net] ip: factor out protocol delivery helper (Xin Long) [1879403] - [net] udp: add support for UDP_GRO cmsg (Xin Long) [1879403] - [net] udp: implement GRO for plain UDP sockets. (Xin Long) [1879403]- [powerpc] powerpc/perf: Fix Threshold Event Counter Multiplier width for P10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Exclude kernel samples while counting events in user space (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Invoke per-CPU variable access with disabled interrupts (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: MMCR0 control for PMU registers under PMCC=00 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/64s: Convert some cpu_setup() and cpu_restore() functions to C (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/64: Set up a kernel stack for secondaries before cpu_restore() (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc: Wire up memtest (Desnes Augusto Nunes do Rosario) [1906084] - [mm] powerpc/mm: Don't report hugepage tables as memory leaks when using kmemleak (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update cache events with l2l3 events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update generic event codes for power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Add generic and cache event list for power10 DD1 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix the PMU group constraints for threshold events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Update the PMU group constraints for l2l3 events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update radix_scope_qual in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [nvme] nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN (Gopal Tiwari) [1903513] - [base] driver: core: Fix list corruption after device_del() (Torez Smith) [1900751] - [base] device property: Don't clear secondary pointer for shared primary firmware node (Torez Smith) [1900751] - [base] device property: Keep secondary firmware node secondary by type (Torez Smith) [1900751] - [of] of: property: Fix create device links for all child-supplier dependencies (Torez Smith) [1900751] - [base] drivers/base/test: fix global-out-of-bounds error (Torez Smith) [1900751] - [base] driver core: Fix use-after-free and double free on glue directory (Torez Smith) [1900751] - [thunderbolt] thunderbolt: Add uaccess dependency to debugfs interface (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use "if USB4" instead of "depends on" in Kconfig (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Allow KUnit tests to be built also when CONFIG_USB4=m (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: debugfs: Fix uninitialized return in counters_write() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add debugfs interface (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Report power supply changes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: hisilicon: fix refercence leak in xhci_histb_probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for Intel Tiger Lake-H (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Only configure USB4 wake for lane 0 adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix memory leak if ida_simple_get() fails in enumerate_services() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit FN980 composition 0x1055 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cyberjack: fix write-URB completion race (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add NO_LPM quirk for Kingston flash drive (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't create stream debugfs files with spinlock held (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Workaround for S3 issue on AMD SNPS 3.0 xHC (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix sizeof() mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix signedness comparison issue with enum variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add missing MODULE_DEVICE_TABLE() to stusb160x (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore: Check both id_table and match() when both available (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix an IS_ERR() vs NULL check in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: reset hard_reset_count for any disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: fix cooldown mechanism (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: fix kernel-doc markups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix some signedness bugs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Quectel EC200T module support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add the missed ida_simple_remove() in ring_request_msix() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [documentation] usb: docs: document altmode register/unregister functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add QCOM PMIC typec detection driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Cellient MPL200 card (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_maxim: Add support for Sink FRS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Implement callbacks for FRS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: tcpm: Add support for Sink Fast Role SWAP(FRS) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_maxim: Chip level TCPC driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add set_vbus tcpci callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add a getter method to retrieve tcpm_port reference (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: add quirk to blacklist ETAS ES58X devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: use cur_altsetting for consistency (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: Add Telit FT980-KS composition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: remove polling for /sys/kernel/debug/usb/devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add support for STUSB160x Type-C controller family (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add typec_find_pwr_opmode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Use OF graph API to get the connector fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: displayport: Reduce noise from the driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Add Kconfig option to reduce number of port initialization retries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Clean up use of port initialization schemes and retries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: fix altsetting probing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: clean up jtag quirks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add device-id for HP GC device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: clean up no-union-descriptor handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: use common data-class define (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: handle broken union descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "cdc-acm: hardening against malicious devices" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Accommodate usbip (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] PM: core: introduce pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [kernel] sched: Provide sched_set_fifo() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Fix incorrect downcast (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Fix specific driver selection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [sound] USB: correct API of usb_control_msg_send/recv in sound driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: correct API of usb_control_msg_send/recv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "USB: legousbtower: use usb_control_msg_recv()" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "USB: core: hub.c: use usb_control_msg_send() in a few places" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: pci-quirks: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: ehci-dbgp: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: appledisplay: use module_usb_driver to simplify the code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: add debugfs support for ep with stream (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: don't create endpoint debugfs entry before ring buffer is set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Tune interrupt blocking for isochronous transfers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: omit duplicate actions when suspending a runtime suspended host (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: improve the comments for xhci_plat_suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add wakeup entry at sysfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add priv quirk for skip PHY initialization (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: delete the unnecessary code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add .suspend_quirk for struct xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add platform data support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: cleanup of data structures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usblp: fix race between disconnect() and read() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: don't inherity DMA properties for USB devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ehci-hcd: Move include to keep CRC stable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Only stop control channel when entering freeze (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Capitalize comment on top of QUIRK_FORCE_POWER_LINK_CONTROLLER (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Correct tb_check_quirks() kernel-doc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Log correct zeroX entries in decode_error() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Handle ERR_LOCK notification (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Handle SCU IPC error conditions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin notebook (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: update ROLE_CONTROL for DRP (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add support when hidden tx registers are inaccessible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add register definitions to tcpci (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: UAS: use macro for reporting results (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Pass correct USB Type-C port number to SoC (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Add dependency on ACPI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: microtek: use set_host_byte() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: UAS: fix disconnect by unplugging a hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Prevent mode overrun (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Increase command completion timeout value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: use usb_control_msg_recv() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: hub.c: use usb_control_msg_send() in a few places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: message.c: use usb_control_msg_send() in a few places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb typec: mt6360: Add support for mt6360 Type-C driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ehci-sched: Remove ununsed function tt_start_uframe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci: Make distrust_firmware param default to false (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci: Default to per-port over-current protection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Retry DROM read once if parsing fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Support for device role (UFP) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Check the port status before connect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in Alternate modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Do not configure Altmode HPD High (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] device connection: Remove struct device_connection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] uas: bump hw_max_sectors to 2048 blocks for SS or faster drives (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] uas: fix sdev->host->dma_dev (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: fix sdev->host->dma_dev (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/host: ehci-npcm7xx: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/misc: usb3503: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/misc: usb4604: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: driver: fix stray tabs in error messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Check the _DEP dependencies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: fix slab-out-of-bounds Read in read_descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Fix out of sync data toggle if a configured device is reconfigured (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Un-register the USB role switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_is_ice_lake() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_is_tiger_lake() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check for Intel vendor ID when identifying controller (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_port_is_nhi() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Create device links from ACPI description (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to warn in TB_CFG_ERROR_INVALID_CONFIG_SPACE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_next_cap() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_port_next_cap() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Move struct tb_cap_any to tb_regs.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add runtime PM for Software CM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [pci] PCI / thunderbolt: Switch to use device links instead of PCI quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Enable wakes from system suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Tear down DP tunnels when suspending (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Disable lane 1 for XDomain connection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Configure port for XDomain (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Set port configured for both ends of the link (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Configure link after lane bonding is enabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not change default USB4 router notification timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Initialize TMU again on resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Send reset only to first generation routers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not program NFC buffers for USB4 router protocol adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Optimize NHI LC mailbox command processing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Optimize Force Power logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Software CM only should set force power in Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use bit 31 to check if Firmware CM is running in Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to log an error if tb_switch_lane_bonding_enable() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use kobj_to_dev() instead of container_of() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: support dynamic Quectel USB compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Migrate workqueue to RT priority for processing events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: pd: Fix formatting in pd.h header (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: During PR_SWAP, source caps should be sent only after tSwapSourceStart (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: Remove the superfluous break (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: Add unusual_uas entry for Sony PSZ drives (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: atm: don't use snprintf() for sysfs attrs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Fix Fix source hard reset response for TDA 2.3.1.1 and TDA 2.3.1.2 failures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use maximum USB3 link rate when reclaiming if link is not up (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add USB3 bandwidth management (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Disable ports that are not implemented (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Do warm-reset when both CAS and XDEV_RESUME are set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: fix ep context print mismatch in debugfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: uas: Add quirk for PNY Pro Elite (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Better name for __check_usb_generic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix device driver race (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Also match device drivers using the ->match vfunc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: fix tegra_xusb_get_phy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: otg usb2/usb3 port init (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: pci-quirks: Bypass xHCI quirks for Raspberry Pi 4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] Revert "USB: pci-quirks: Add Raspberry Pi 4 quirk" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-pci: Add support for reset controllers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Solve race condition in anchor cleanup functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Print error on failure to get VBUS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Make VBUS supply optional (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: remove needless check before usb_free_coherent() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: remove a duplicated entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: isd200: fix spelling mistake "removeable" -> "removable" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: Fix typo (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hcd: Fix use after free in usb_hcd_pci_remove() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Hold con->lock for the entire duration of ucsi_register_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Rework ppm_lock handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix 2 unlocked ucsi_run_command calls (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix AB BA lock inversion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: lvtest: return proper error code in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: rework notification_buffer resizing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Add no-lpm quirk for another Raydium touchscreen (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: Fix bad gfp argument (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: merge fix for kunix_resource changes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Register charger (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix ASMedia ASM1142 DMA addressing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: define IDs for various ASMedia host controllers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Simplify USB ID table match (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Add WARN_ON ensure we are not trying to send 2 VDM packets at the same time (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Fix AB BA lock inversion between tcpm code and the alt-mode drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Refactor tcpm_handle_vdm_request (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Refactor tcpm_handle_vdm_request payload handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Add tcpm_queue_vdm_unlocked() helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Move mod_delayed_work(&port->vdm_state_machine) call into tcpm_queue_vdm() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Make function xhci_dbc_ring_alloc() static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgtty: Make some functions static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for pinctrl-0 through pinctrl-8 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for multiple DT bindings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix up report size handling for some devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: remove tty specific port structure from struct xhci_dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgcap: remove dbc dependency on dbctty specific flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Add a operations structure to access driver functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbctty: split dbc tty driver registration and unregistration functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: remove endpoint pointers from dbc_port structure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: simplify dbc requests allocation and queueing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc start and stop functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc memory init and cleanup functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: don't use generic xhci ring allocation functions for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci context allocation for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Use dbc structure in the request completion instead of xhci_hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to get_in/out_ep() helper functions to get endpoints (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgtty: Pass dbc pointer when registering a dbctty device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc_handle_xfer_event() instead of xhci_hcd pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Change to pass dbc pointer to xhci_do_dbc_stop() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to endpoint init and exit functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Get the device pointer from dbc structure in dbc_ep_do_queue() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't pass the xhci pointer as a parameter to xhci_dbc_init_context() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use xhci_write_64() as it takes xhci as a parameter (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Use dev_info() and similar instead of xhci_info() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Add device pointer to dbc structure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Remove dbc_dma_free_coherent() wrapper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Remove dbc_dma_alloc_coherent() wrapper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci erst allocation and free functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't pass struct xhci_hcd pointer to xhci_link_seg() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci inc_deq() function for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Make debug message consistent with bus and port number (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: tegra: Fix allocation for the FPCI context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: stop using compat_alloc_user_space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix ASM2142/ASM3142 DMA addressing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: fix the failure of bandwidth allocation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: appledisplay: remove needless check before usb_free_coherent() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbtest: reduce stack usage in test_queue (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Stay in BIST mode till hardreset or unattached (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Support BIST test data mode for compliance (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Support bist test data mode for compliance (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Error handling for tcpm_register_partner_altmodes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Comment correction for typec_partner_register_altmode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Avoid connect request on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: fix quirks_param_set() writing to a const pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hcd: Try MSI interrupts on PCI devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: add EM7305 QDL product ID (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: fix led-activity helpers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: fix memory corruption (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: sisusbvga: Move static const tables out to different include file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: sisusbvga: sisusb_init: Remove genunine unused static const arrays (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: class: cdc-wdm: Provide description for usb_cdc_wdm_register()'s manage_power arg (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb/serial.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb/pd_vdo.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Remove pci-dma-compat wrapper APIs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: Fix a potential UB casued by left shifting a negative value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ohci: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: sierra: clean up special-interface handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: use in-kernel types in port data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: drop unnecessary packed attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: add support for TIOCGICOUNT (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: add support for line-status events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: disable interface on errors in open (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OHCI: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: xhci-dbc: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: xhci-dbc: Supply missing 'xhci-dbgp.h' headerfile (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: ehci-dbgp: Remove set but never checked variable 'ret' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ucsi: Staticify and stop export of ucsi_init() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: legousbtower: Demote function header which is clearly not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: legousbtower: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: ldusb: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: iowarrior: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: iowarrior: Fix odd corruption issue in the file header (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: fusb302: Use 'gnu_printf' format notation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmodes: displayport: Supply missing displayport.h include file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmodes: displayport: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: alauda: Remove set but unchecked variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-debugfs: Use 'gnu_printf' format notation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-dbgtty: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-dbgcap: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-mem: Demote obvious misuse of kerneldoc to standard comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: Demote obvious misuse of kerneldoc to standard comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: adutux: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: atm: ueagle-atm: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: ledtrig-usbport: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: drop redundant transfer-buffer casts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: serial: drop extern keyword from function declarations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: serial: drop unnecessary sysrq include (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: add sysrq break-handler dummy (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: inline sysrq dummy function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: only process sysrq when enabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: only set sysrq timestamp for consoles (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: fix break and sysrq handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: clean up receive processing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: make process-packet buffer unsigned (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Quectel EG95 LTE modem (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix missing simulated-break margin (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: re-enable auto-RTS on open (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: enable usb generic throttle/unthrottle (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: simulate break condition if not supported (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: class: usbtmc: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ohci: Mark cc_to_error as __maybe_unused (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: ulpi: Fix a few kerneldoc related issues (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Demote comment block which is clearly not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: debug: Demote comment blocks which are obviously not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: pci-quirks: Demote function header from kerneldoc to comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: Fix up terminology in include files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix old style declaration warning (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: console: add support for flow control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: quatech2: drop two stub functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: kobil_sct: log failure to update line settings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan_pda: drop unused firmware reset status (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: drop unused URB submission results (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: don't compile unused packet definitions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Add support for USB4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Definitions for response status bits (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add data structure for Enter_USB message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Combine the definitions for Accessory and USB modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix up terminology (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: fix kernel-doc warnings and formatting in (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for authenticate on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for separating the flush to SPI and authenticate (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Ensure left shift of 512 does not overflow a 32 bit int (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add min and max line-speed macros (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: name prescaler, divisor registers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Poll for U0 after disabling USB2 LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Return if xHCI doesn't support LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-mtk: avoid runtime suspend when removing hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix enumeration issue when setting max packet size for FS devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix incorrect EP_STATE_MASK (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add new Product ID for CH340 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add GosunCn GM500 series (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cypress_m8: enable Simply Automated UPB PIM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for on-board retimers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Implement USB4 port sideband operations for retimer access (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Split common NVM functionality into a separate file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Retry USB4 block read operation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Generalize usb4_switch_do__data() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add Intel USB-IF ID to the NVM upgrade supported list (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Increase DP DPRX wait timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_port_get_link_speed() available to other files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Handle incomplete PCIe/USB3 paths correctly in discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Increase path length in discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add KUnit tests for tunneling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add KUnit tests for path walking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add DP IN resources for all routers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Report consumed bandwidth in both directions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make usb4_switch_map_pcie_down() also return enabled ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make usb4_switch_map_usb3_down() also return enabled ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not tunnel USB3 if link is not USB4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Implement USB3 bandwidth negotiation routines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check that both ports are reachable when allocating path (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_path_alloc() work with tree topologies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_next_port_on_path() work with tree topologies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix path indices used in USB3 tunnel discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [netdrv] thunderbolt: Get rid of E2E workaround (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: NHI can use HopIDs 1-7 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to warn if NHI hop_count != 12 or hop_count != 32 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Build initial XDomain property block upon first connect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OTG: rename product list of devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: scsi: fix up comment to be more specific (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: fix wording in error message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: sierra: unify quirk handling logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: fix up wording in a comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OHCI: remove obsolete FIXME comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rename USB OTG hub configuration option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rename USB quirk to USB_QUIRK_ENDPOINT_IGNORE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [uapi] USB: replace hardcode maximum usb string length by definition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_rt1711h: avoid screaming irq causing boot hangs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbtest: fix missing kfree(dev->buf) in usbtest_disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ehci: reopen solution for Synopsys HC bug (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: Add DISABLE_ECHO quirk for Microchip/SMSC chip (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: add USB_QUIRK_DELAY_INIT for Logitech C922 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel_pmc_mux: Fix DP alternate mode entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: change char to u8 for sisusb_copy_memory (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: sisusb_con: Use array_size() helper in memcpy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: tegra: Remove PLL power supplies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] drivers: usb: Fix trivial spelling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: additional Device Classes to debug/usb/devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Improve USB4 config symbol help text (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: kcov: collect coverage from usb complete callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: get rid of pointless access_ok() calls (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix lockup of devices with limited prescaler (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add basis for quirk detection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] CDC-ACM: heed quirk also in error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit LE910C1-EUX compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: add DW5816e QDL support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add trivial .shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Ensure USB_ROLE_SWITCH is set as a dependency for tps6598x (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: make symbols static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: usb_wwan: do not resubmit rx urb on fatal errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/xhci-plat: Set PM runtime as active on resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Add support for Renesas controller with memory (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: renesas-xhci: Add the renesas xhci driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hci: add hc_driver as argument for usb_hcd_pci_probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: fix mmap dma mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: keep runtime active when removing host (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Update Kconfig to allow building on other architectures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel: Fix DP_HPD_LVL bit field (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ehci: Add new EHCI driver for Broadcom STB SoC's (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: xhci-plat: Add support for Broadcom STB SoC's (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Add USB role switching logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Add OF probe binding (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Switch on role-switch uevent reporting (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel_pmc_mux: Support for static SBU/HSL orientation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add typec_find_orientation() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usblp: poison URBs upon disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] sierra-ms: do not call scsi_get_host_dev() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] USB: pci-quirks: Add Raspberry Pi 4 quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] thunderbolt: Replace zero-length array with flexible-array (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: correct kernel->user page attribute mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Fix the property names (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel: Handle alt mode HPD_HIGH (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Fix misleading driver bug report (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: Add DW5816e support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: add quirk for LaCie 2Big Quadra (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Do not link to disabled devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check return value of tb_sw_read() in usb4_switch_op() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: use true, false for bool variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix the stub for ucsi_register_port_psy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Convert the Intel PMC Mux driver to use new SCU IPC API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: register with power_supply class (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: save power data objects in PD mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Correct bit-mask for CCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: replace magic numbers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Workaround for missed op_mode change (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: set USB data role when partner type is power cable/ufp (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Storage: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Replace an empty statement with a debug message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/early: remove unused including (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: pci-quirks: use true, false for bool variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: typec: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: Change port variable from signed to unsigned (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Add unusual_devs entry for JMicron JMS566 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration scheme first for high speed devices") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Fix handling of connect changes during sleep (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for Intel Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmode: Fix typec_altmode_get_partner sometimes returning an invalid pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: add sanity checking for data length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't clear hub TT buffer on ep0 protocol stall (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: prevent bus suspend if a roothub port detected a over-current condition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix handling halted endpoint even if endpoint ring appears empty (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [gpio] usb: fusb302: Convert to use GPIO descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 RGB RAPIDFIRE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Ignore CC and vbus changes in PORT_RESET change (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: introduce a cool down (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: close race betrween suspend() and acm_softint (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: fix deadlock in error handling and PM flushing work (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: no use logging any details in case of ENODEV (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: pi3usb30532: Set switch_ / mux_desc name field to NULL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: early: Handle AMD's spec-compliant identifiers, too (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Fix free-while-in-use bug in the USB S-Glibrary (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: host: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: early: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] Revert "thunderbolt: Prevent crash if non-active NVMem file is read" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for extcon (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: restore capability check order (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Correct the documentation for typec_cable_put() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: fix slab-out-of-bounds read in edge_interrupt_callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Wistron Neweb D19Q1 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add BroadMobi BM806U (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for ASKEY WWHC050 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Add ACPI support for USB interface devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-tegra: Add OTG support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add control driver for F81534A (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: fix rounding error in TIOCSSERIAL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: fix close_delay and closing_wait units in TIOCSSERIAL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: quirks: add NO_LPM quirk for RTL8153 based ethernet adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-pci: Allow host runtime PM as default for Intel Tiger Lake xHCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Finetune host initiated USB3 rootport link suspend and resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Tegra186/Tegra194 LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Enable LPM for VIA LABS VL805 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Show host status when watchdog triggers and host is assumed dead (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add a separate debug message for split transaction errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: bail out early if driver can't accress host in resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add device-id for HP LD381 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add ME910G1 ECM composition 0x110b (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: mon: Use scnprintf() for avoiding potential buffer overflow (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi_ccg: workaround for NVIDIA test device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add a shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix a potential race during registration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix NULL pointer dereference (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Disable LPM on WD19's Realtek Hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use scnprintf() for avoiding potential buffer overflow (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: fix tty cleanup-op kernel-doc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: clean up carrier-detect helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Delete of_devlink kernel commandline option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: driver for Intel PMC mux control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add definitions for Thunderbolt 3 Alternate Mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Allow the role switches to be named (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Provide the switch drivers handle to the switch in the API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Leave the private driver data pointer to the drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Allow the mux handles to be requested with fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Add helpers for setting the mux state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Allow the muxes to be named (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: port: do error out if usb_autopm_get_interface() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: do error out if usb_autopm_get_interface() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: fix unhandled return by employing a void function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: Add quirk for Samsung Fit flash (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: quirks: add NO_LPM quirk for Logitech Screen Share (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: fix regulator probe and error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add sysfs node to show cc orientation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: move to SNK_UNATTACHED if sink removed for DRP (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for power-domains and hwlocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: set F81534A serial port with RS232 mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add F81534A support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: use devm_kzalloc for port data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add tx_empty function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: extract LSR handler (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: uhci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ohci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ehci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Use ACPI_SUCCESS() at appropriate places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Make use of acpi_evaluate_object() status (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Use const to reduce object data size (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ucsi: ccg: disable runtime pm during fw flashing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: register DP only for NVIDIA DP VDO (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for the 100 device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add missing annotation for xhci_enter_test_mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add missing annotation for xhci_set_port_power() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Do not open code __print_symbolic() in xhci trace events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: use kobj_to_dev() API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add missing kernel-doc parameter descriptions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: set correct data role for non-DRD (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: icm: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: eeprom: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: don't probe unhandled devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: fix endianess issue in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add driver to control USB fast charge for iOS devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fallback to generic driver when specific driver fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Select better matching USB drivers when available (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Implement usb_device_match_id() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Make it possible to "subclass" usb_device_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Export generic USB device driver functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Drop support for device name matching (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmode: Remove the notification chain (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Fix the description of struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Allow power role swapping even without USB PD (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Hide the port_type attribute when it's not supported (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Make the attributes read-only when writing is not possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for the 28 and 28L devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for 2 OEMed devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix novation SourceControl XL after suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak when caching protocol extended capability PSI tables - take 2 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "xhci: Fix memory leak when caching protocol extended capability PSI tables" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: remove redundant assignment to variable num (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: host: ehci-platform: add a quirk to avoid stuck (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: clean up endpoint-descriptor parsing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: blacklist duplicate ep on Sound Devices USBPre2 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: add endpoint-blacklist quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [uapi] usb: charger: assign specific number for enum value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Don't record a connect-change event during reset-resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: uas: fix a plug & unplug racing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Fix the broken detection of USB3 device in SMSC hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: apply XHCI_PME_STUCK_QUIRK to Intel Comet Lake platforms (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix runtime pm enabling for quirky Intel hosts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak when caching protocol extended capability PSI tables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Force Maximum Packet size for Full-speed bulk devices to valid range (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: digi_acceleport: remove redundant assignment to pointer priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: relax unthrottle memory barrier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix receiver regression (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: Silence harmless uninitialized variable warning (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cyberjack: fix spelling mistake "To" -> "Too" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: simplify endpoint check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: make set_termios synchronous (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: fix IrLAP framing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: fix link-speed handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: add missing endpoint sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: wcove: fix "op-sink-microwatt" default that was in mW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: mask event interrupts when remove driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: Always unlink URBs in reverse order (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: quatech2: handle unbound ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan: handle unbound ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: add missing active-port sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: handle unbound ports on URB completion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: handle unbound port at reset_resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: Use flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: stop all I/O on close() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: add chars_in_buffer() implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: suppress driver bind attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Quectel RM500Q in QDL mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: Improved device recognition on remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: phy-generic: Delete unused platform data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: fix control-message timeouts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: Add support for Quectel RM500Q (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: ulpi: Add resource-managed variant of otg_ulpi_create() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Provide definitions for the USB modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Give the mux drivers all the details regarding the port state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add definitions for the latest specification releases (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add the Product Type VDOs to struct usb_pd_identity (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: pd: Add definition for DFP and UFP1 VDOs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: pd: Add definitions for the Enter_USB message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: More API for cable handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add parameter for the VDO to typec_altmode_enter() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Block mode entry if the port has the mode disabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: fix spelling mistake "connetor" -> "connector" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: missing parentheses in USE_NEW_SCHEME (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix the notification bit offsets (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Actually enable all the interface notifications (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix non-kernel-doc comments (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix: Don't skip endpoint descriptors with maxpacket=0 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB-PD tcpm: bad warning+size, PPS adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb3503: Convert to use GPIO descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: add support for separate DP altmode devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Store the notification mask (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: mtk-xhci: Do not explicitly set the DMA mask (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: fix check for duplicate endpoints (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add ZLP support for 0x1bc7/0x9010 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix build warning seen with CONFIG_PM=n (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Fix an undefined reference to 'extcon_get_state' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: EHCI: Do not return -EPIPE when hub is disconnected (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit ME910G1 0x110a composition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: make sure interrupts are restored to correct state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: handle some XHCI_TRUST_TX_LENGTH quirks cases as default behaviour (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Increase STS_HALT timeout in xhci_suspend() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: only set D3hot for pci device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix USB3 device initiated resume race with roothub autosuspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak in xhci_add_in_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix incorrect DMA allocations for local memory pool drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: fix interface sanity checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix interface sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: ueagle-atm: add missing endpoint check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: fix epic endpoint lookup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: mon: Fix a deadlock in usbmon between mmap and read (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Don't log an error on probe deferral (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: urb: fix URB structure initialization function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix use after free in typec_register_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: fix a potential use after free (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Implement basic ELPG support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add XUSB controller context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add support for XUSB context save/restore (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Enable runtime PM as late as possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Reuse stored register base address (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Extract firmware enable helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Use CNR as firmware ready indicator (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Avoid a fixed duration sleep (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Separate firmware request and load (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Fix "tega" -> "tegra" typo (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: drop comment about 2 uhci drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb, kcov: collect coverage from hub_event (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for interrupt-parent, dmas and -gpio(s) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: serial: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for "iommu-map" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Fix the semantics of of_is_ancestor_of() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Disable UAS on JMicron SATA enclosure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: heed CAPACITY_HEURISTICS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: honor flag to avoid CAPACITY16 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Correct phy enable sequence (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-serial: cp201x: support Mark-10 digital force gauge (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Remove tcpc_config configuration mechanism (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-pci: Allow host runtime PM as default also for Intel Ice Lake xHCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: Support running urb giveback in tasklet context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add tracing for xhci doorbell register writes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: update event ring dequeue pointer on purpose (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Fix documentation for out values (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add device IDs for U-Blox C099-F9P (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Foxconn T77W968 LTE modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Clarify documentation for fwnode_operations.add_links() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop port open flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop read-urb check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop port driver data accessors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop serial struct accessor (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop paranoid serial checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop paranoid port checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop redundant urb context check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: rip out broken interrupt handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: fix probe error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: document MCS7810 detection hack (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: clean up device-type handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: fix remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7720: fix remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: chaoskey: fix error case of a timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for DW5821e with eSIM support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] appledisplay: fix error handling in the scheduled work (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop superfluous newlines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop superfluous brackets (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: clean up runaway white space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant endianness comments (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop unnecessary packed attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: clean up pointer declarations in driver data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: remove tower_abort_transfers() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: stop interrupt-out URB unconditionally (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant interrupt-in running flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop noisy disconnect messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant open_count check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: zero driver data at allocation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant NULL check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant MODULE_LICENSE ifdef (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: clean up runaway white space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: drop redundant open-count check from release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: simplify disconnect handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Allow USB device to be warm reset in suspended state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for iommus, mboxes and io-channels (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Make it easy to add device links from DT properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: add USB ID to support Moxa UPort 2210 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Optimise ucsi_unregister() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: New error codes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove all bit-fields (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove struct ucsi_control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove the old API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ccg: Move to the new API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Move to the new API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Simplified registration and I/O API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Give the connector fwnode to the port device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Remove unused members from struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Remove the callback members from struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Separate the operations vector (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Introduce typec_get_drvdata() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Copy everything from struct typec_capability during registration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: Add support for USB2422 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: Drop some unused defines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Add usb_role_switch_find_by_fwnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: reimplement line-speed handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Remove redundant vmap checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: whiteheat: fix line-speed endianness (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: whiteheat: fix potential slab corruption (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: Revert commit 3ae62a42090f ("UAS: fix alignment of scatter/gather segments") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Revert commit 747668dbc061 ("usb-storage: Set virt_boundary_mask to avoid SG overflows") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: fix __le32/__le64 accessors in debugfs code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: fix Immediate Data Transfer endianness (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix use-after-free regression in xhci clear hub TT implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix control-message timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: use unsigned size format specifiers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix ring-buffer locking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Skip endpoints with 0 maxpacket length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add support for PL2303HXN (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix read info leaks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver: core: Improve documentation for fwnode_operations.add_links() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Minor code formatting/style clean ups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ti_usb_3410_5052: clean up serial data access (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ti_usb_3410_5052: fix port-close races (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: Suppress problematic bind and unbind uevents (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix a signedness bug in tower_probe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix memleak on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix memleak on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix an IS_ERR() vs NULL bug in hd3ss3220_probe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] device property: Fix the description of struct fwnode_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: fix NULL-derefs on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: use pr_err() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: drop redundant iowarrior mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: drop redundant disconnect mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: chaoskey: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix NULL-derefs on driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: drop redundant in-urb check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix use-after-free after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix NULL-deref on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: remove duplicated include from hd3ss3220.c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: drop OOM message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: devio.c: Fix assignment of 0/1 to bool variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: hd3ss3220_probe() warn: passing zero to 'PTR_ERR' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hub: Check device descriptor before resusciation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add dependency for TYPEC_HD3SS3220 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add Tegra194 XHCI support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: tegra: Parameterize mailbox register addresses (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: image: microtek.c: Remove unused variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220_irq() can be static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] kcov: remote coverage support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Create device links for all child-supplier depencencies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add functional dependency link from DT bindings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-ext-caps.c: Add missing platform_device_put() on error in xhci_create_intel_xhci_sw_pdev() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix NULL pointer dereference in xhci_clear_tt_buffer_complete() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Increase STS_SAVE timeout in xhci_suspend() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Prevent deadlock when xhci adapter breaks during init (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: wait for CNR controller not ready bit in xhci resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix USB 3.1 capability detection on early xHCI 1.1 spec based hosts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Check all endpoints for LPM timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Prevent device initiated U1/U2 link pm if exit latency is too long (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix false warning message about wrong bounce buffer write length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: add pm_ops (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: simplify reset helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: add vdd supply support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: driver for TI HD3SS3220 USB Type-C DRP port controller (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: use regulator_bulk_set_supply_names() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ftdi-elan: move a couple of statements to next line (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix open after failed reset request (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix potential NULL-deref on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix deadlock on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix slab info leak at probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix for the mode entering routine (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ccg: Remove run_isr flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: use pr_err() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: drop redundant lcd mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: drop redundant disconnect mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: fix I/O after disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: usb: typec: tcpm: Fix a signedness bug in tcpm_fw_get_caps() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix NULL-derefs on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: Don't retry on unexpected errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: microtek: fix info-leak at probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan: fix NULL-derefs on open() and write() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Cinterion CLS8 devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: SCSI glue: use dev_err instead of printk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit FN980 compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbcore: Fix slab-out-of-bounds bug during device reset (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rio500: Fix lockdep violation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rio500: simplify locking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: add USB GPIO based connection detection driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: create Kconfig file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: get usb-role-switch from parent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Add fwnode_usb_role_switch_get() function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: roles: Introduce stubs for the exiting functions in role.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbip: Implement SG support to vhci-hcd and stub driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: intel: Enable static DRD mode for role switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-ext-caps.c: Add property to disable Intel SW switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: phy: add support for PHY calibration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-rcar: Add a helper macro to set xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add quirks member into struct xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix possible memleak on setup address fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: add TSP bitflag to TRB tracing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: dbc: Use GFP_KERNEL instead of GFP_ATOMIC in 'xhci_dbc_alloc_requests()' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: dbc: Simplify error handling in 'xhci_dbc_alloc_requests()' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Fix build error without CONFIG_REGMAP_I2C (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove commented out dma wrappers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove a stale comment in hcd_alloc_coherent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: use hcd_uses_dma to check for DMA capabilities (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Simplify usb_decode_get_set_descriptor function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Patch simplify usb_decode_set_clear_feature function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Separated decoding functions from dwc3 driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: add an optional xhci_ck clock (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add support for FT232H CBUS gpios (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] device property: Remove duplicate test for NULL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: intel_xhci: Supplying software node for the role mux (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: core: document phy_calibrate() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb-skeleton: make comment block in line with coding style (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: only account once for mmap()'ed usb memory usage (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Call fusb302_debugfs_init earlier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Use usb_debug_root as root for our debugfs entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Use usb_debug_root as root for our debugfs entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci-nxp: enable compile-testing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: isd200: remove redundant assignment to variable sendToTransport (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Always provide fwnode for the port (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Remove unused properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: Add a capability flag for runtime suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: remove single-use define for debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: Add definitions for the USB2.0 hub TT requests (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove ehci-w90x900 driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbfs: Add ioctls for runtime power management (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbsevseg: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: trancevibrator: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: cxacru: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: lvstest: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cytherm: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cypress_cy7c63: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbtmc: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ueagle-atm: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: typec: ucsi_ccg: convert i2c driver to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: add support for dev_groups to struct usb_device_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: add support for dev_groups to struct usb_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbip: convert platform driver to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Disable USB2 LPM at shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Prevent an abnormally restrictive PHY init skipping (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Remove dev_err() usage after platform_get_irq() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-hub: fix extra endianness conversion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: Remove call to memset after dma_alloc_coherent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Switch to use fwnode_property_count_uXX() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Switch to use fwnode_property_count_uXX() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: host: oxu210hp-hcd: remove include/linux/oxu210hp.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: hcd-pci: Use dev_get_drvdata where possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: resume ccgx i2c client (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: add runtime pm support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: refactor master_xfer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Registering real device entries for the muxes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: implement break control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add high baud rate support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ark3116: drop redundant init_termios (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: Supply CCGx driver the fw build info (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: core: Invoke pm_runtime_get_*/pm_runtime_put_* before invoking reset callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Document that of_graph_get_endpoint_by_regs needs of_node_put (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: make phy-core explicitly non-modular (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] OF: properties: add missing of_node_put (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: mark resume function as __maybe_unused (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: Use of_node_name_eq for node name comparisons (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: limit reads also for combined messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: adhere to I2C fault codes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: make pm_ops static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: add i2c bus driver for NVIDIA GPU (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [tty] complete ->et_serial() switchover (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb_wwan: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] whiteheat: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ti_usb_3410_5052: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ssu100: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] quatech2: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] pl2303: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] opticon: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] mos7840: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] mos7720: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] io_ti: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] io_edgeport: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] fdti_sio: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] f81232: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ark3116: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-serial: begin switching to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [tty] tty_ioctl(): start taking TIOCSERIAL into separate methods (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Remove device_connection_add() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Remove device_connection_find() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix device_pm_lock() locking for device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver code: print symbolic error code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Fix the secondary firmware node handling in set_primary_fwnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: add device probe log helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Change delimiter in devlink device's name to "--" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Avoid NULL pointer dereference in device_get_next_child_node() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix sleeping in invalid context during device link deletion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add waiting_for_supplier sysfs file for devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add state_synced sysfs file for devices that support it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [documentation] driver core: Expose device link details in sysfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Avoid deferred probe due to fw_devlink_pause/resume() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Rename dev_links_info.defer_sync to defer_hook (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Don't do deferred probe in parallel with kernel_init thread (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Use software_node_unregister() when unregistering group of nodes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device_is_dependent() to linux/device.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Update device link status correctly for SYNC_STATE_ONLY links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: implement software_node_unregister() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [lib] lib/test_printf: Add tests for pfw printk modifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove unnecessary is_fwnode_dev variable in device_add() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers property: When no children in primary, try secondary (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix handling of SYNC_STATE_ONLY + STATELESS device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix SYNC_STATE_ONLY device link implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove check in driver_deferred_probe_force_trigger() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: fw_devlink: Add support for batching fwnode parsing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Look for waiting consumers only for a fwnode's primary device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Move code to the right part of the file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device links from fwnode only for the primary device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] Revert "Revert "driver core: Set fw_devlink to "permissive" behavior by default"" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix handling of fw_devlink=permissive (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: fw_devlink_flags can be static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add fw_devlink kernel commandline option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Reevaluate dev->links.need_for_probe as suppliers are added (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Skip unnecessary work when device doesn't have sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add dev_has_sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Call sync_state() even if supplier has no consumers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow device link operations inside sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add sync_state driver/bus callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device link support for SYNC_STATE_ONLY flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix creation of device links with PM-runtime flags (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove device link creation limitation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add missing description of new struct device_link field (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device link flag DL_FLAG_AUTOPROBE_CONSUMER (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Make driver core own stateful device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix adding device links to probing suppliers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: core: Remove glue dirs from sysfs earlier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove the link if there is no driver with AUTO flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: silence device link messages unless debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] base: core: Remove WARN_ON from link dependencies check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: export set_secondary_fwnode() to modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Allow register and unregister software node groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Export fwnode_get_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] Revert "software node: Simplify software_node_release() function" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: add basic tests for property entries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: remove separate handling of references (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: implement reference properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: allow embedding of small arrays into property_entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: replace is_array with is_inline (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: unify PROPERTY_ENTRY_XXX macros (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: simplify property_entry_read_string_array() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: remove property_entry_read_uNN_array functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: get rid of property_set_pointer() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] efi/apple-properties: use PROPERTY_ENTRY_U8_ARRAY_LEN (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: mark internal macros with double underscores (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: introduce PROPERTY_ENTRY_XXX_ARRAY_LEN() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: remove DEV_PROP_MAX (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: clean up property_copy_string_array() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow fwnode_operations.add_links to differentiate errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow a device to wait on optional suppliers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add a function to obtain a node's prefix (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add fwnode_get_name for returning the name of a node (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add functions for accessing node's parents (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Move fwnode_get_parent() up (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Make argument to to_software_node const (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Get reference to parent swnode in get_parent op (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add support for linking devices during device addition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add fwnode_to_dev() to look up device from fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Initialize the return value in software_node_find_by_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Initialize the return value in software_node_to_swnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Add fwnode_connection_find_match() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add software_node_find_by_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: Introduce device lookup variants by device type (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: Introduce device lookup variants by fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Find connections also by checking the references (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Introduce fwnode_find_reference() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add software_node_get_reference_args() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Use kobject name when finding child nodes by name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add support for static node descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Simplify software_node_release() function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Allow node creation without properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add fwnode_graph_get_endpoint_by_id() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: Make two functions static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Implement get_named_child_node fwnode callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Find device connections also from device graphs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Prepare support for firmware described connections (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: drop use of BUS_ATTR() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: bus: convert to use BUS_ATTR_WO and RW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: check if swnode is NULL before dereferencing it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: check if pointer p is NULL before dereferencing it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] sysfs: Disable lockdep for driver bind/unbind files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: fix fwnode_graph_get_next_endpoint() documentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: remove need for a temporary string for the node name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] kobject: return error code if writing /sys/.../uevent fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Remove struct property_set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Move device_add_properties() to swnode.c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: Introducing software nodes to the firmware node framework (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [mm] powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm (Chris von Recklinghausen) [1862347] - [powerpc] powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM (Chris von Recklinghausen) [1862347] - [fs] mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race (Chris von Recklinghausen) [1862347] - [arm64] arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect() (Andrew Jones) [1908439] - [arm64] arm64: pgtable: Fix pte_accessible() (Andrew Jones) [1908439] - [kernel] kernel: fork: properly initialize task_struct->task_struct_rh (Rafael Aquini) [1895892] - [s390] s390/dasd: Process FCES path event notification (Philipp Rudo) [1723823] - [s390] s390/dasd: Prepare for additional path event handling (Philipp Rudo) [1723823] - [s390] s390/dasd: Display FC Endpoint Security information via sysfs (Philipp Rudo) [1723823] - [s390] s390/dasd: Fix operational path inconsistency (Philipp Rudo) [1723823] - [s390] s390/dasd: Store path configuration data during path handling (Philipp Rudo) [1723823] - [s390] s390/dasd: Move duplicate code to separate function (Philipp Rudo) [1723823] - [s390] s390/dasd: Remove unused parameter from dasd_generic_probe() (Philipp Rudo) [1723823] - [s390] s390/cio: Add support for FCES status notification (Philipp Rudo) [1723823] - [s390] s390/cio: Provide Endpoint-Security Mode per CU (Philipp Rudo) [1723823] - [s390] s390/cio: Export information about Endpoint-Security Capability (Philipp Rudo) [1723823] - [net] net/af_iucv: fix null pointer dereference on shutdown (Philipp Rudo) [1903966] - [s390] s390/dasd: fix null pointer dereference for ERP requests (Philipp Rudo) [1903965] - [tools] selftests: netfilter: add command usage (Hangbin Liu) [1899374] - [tools] selftests: netfilter: simplify command testing (Hangbin Liu) [1899374] - [tools] selftests: netfilter: remove unused variable in make_file() (Hangbin Liu) [1899374] - [tools] selftests: netfilter: exit on invalid parameters (Hangbin Liu) [1899374] - [tools] selftests: netfilter: fix header example (Hangbin Liu) [1899374] - [tools] selftests: netfilter: kill running process only (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add MTU arguments to flowtables (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add checktool function (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add test case for conntrack helper assignment (Hangbin Liu) [1899374] - [tools] selftests: netfilter: extend nfqueue test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add nfqueue test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs tunnel test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs nat test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs test script (Hangbin Liu) [1899374] - [tools] selftests: netfilter: check icmp pkttoobig errors are set as related (Hangbin Liu) [1899374] - [hwtracing] intel_th: pci: Add Emmitsburg PCH support (Jiri Olsa) [1838703] - [hwtracing] intel_th: pci: Add Tiger Lake PCH-H support (Jiri Olsa) [1783492 1782729] - [hwtracing] intel_th: pci: Add Jasper Lake CPU support (Jiri Olsa) [1783097] - [hwtracing] intel_th: pci: Add Elkhart Lake CPU support (Jiri Olsa) [1783596] - [hwtracing] intel_th: pci: Add Elkhart Lake SOC support (Jiri Olsa) [1783596] - [hwtracing] intel_th: pci: Add Ice Lake CPU support (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix a NULL dereference when hub driver is not loaded (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Make stopping the trace optional (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix user-visible error codes (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Fix the unexpected state warning (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Disallow multi mode on devices where it's broken (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Fix window switching without windows (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix freeing IRQs (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix a double put_device() in error path (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729]- [idle] intel_idle: Fix intel_idle() vs tracing (David Arcari) [1903307] - [idle] intel_idle: Fix max_cstate for processor models without C-state tables (David Arcari) [1903307] - [idle] intel_idle: Ignore _CST if control cannot be taken from the platform (David Arcari) [1903307] - [idle] intel_idle: mention assumption that WBINVD is not needed (David Arcari) [1903307] - [idle] intel_idle: Remove uninitialized_var() usage (David Arcari) [1903307] - [idle] intel_idle: cleanup code to address out of order commits (David Arcari) [1903307] - [s390] Revert "s390/qeth: phase out OSN support" (Philipp Rudo) [1903962] - [net] net/smc: fix matching of existing link groups (Philipp Rudo) [1903961] - [netdrv] mlxsw: core: Use variable timeout for EMAD retries (Ivan Vecera) [1857594] - [netdrv] mlxsw: Fix firmware flashing (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix memory leak on module removal (Ivan Vecera) [1857594] - [netdrv] mlxsw: Only advertise link modes supported by both driver and device (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add a PFC test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add headroom handling test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: qos_lib: Add a wrapper for running mlnx_qos (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Support port-less topologies (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Add devlink_cell_size_get() (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Split devlink_..._set() into save & set (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Expose transceiver_overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: Update module's settings when module is plugged in (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Initialize netdev's module overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: Enable temperature event for all supported port module sensors (Ivan Vecera) [1857594] - [netdrv] mlxsw: Update transceiver_overheat counter according to MTWE (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add an infrastructure to track transceiver overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Query MTMP before writing to set only relevant fields (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Ports Module Administrative and Operational Status Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Port Module Plug/Unplug Event Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Management Temperature Warning Event Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: simplify the return expression of __mlxsw_sp_router_init() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Disable port buffer autoresize with qdiscs (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Implement dcbnl_setbuffer / getbuffer (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Support two headroom modes (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Manage internal buffer in the hdroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Introduce shared buffer ops (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Convert mlxsw_sp_port_headroom_init() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Inline mlxsw_sp_sb_max_headroom_cells() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Move here the new headroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Move here the three-step headroom configuration from DCB (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Convert mlxsw_sp_port_pg_prio_map() to hdroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Convert ETS handler fully to mlxsw_sp_hdroom_configure() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Split headroom autoresize out of buffer configuration (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track buffer sizes in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track lossiness in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track priorities in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track MTU in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Unify delay handling between PFC and pause (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Add struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Introduce fw_fatal health reporter (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring FW General Debug Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring FW Debug Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move fw_load_policy devlink param into core.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Push code doing params register/unregister into separate helpers (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move fw flashing code into core.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: Bump firmware version to XX.2008.1310 (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Derive SBIB from maximum port speed & MTU (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Keep maximum speed around (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Keep maximum MTU around (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Introduce ptys_max_speed callback (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Extract a helper to get Ethernet attributes (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Extend hwmon interface with critical and emergency alarms (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Calculate MLXSW_HWMON_ATTR_COUNT more accurately (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Split temperature querying from show functions (Ivan Vecera) [1857594] - [netdrv] treewide: Use fallthrough pseudo-keyword (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Remove internal speeds from PTYS register (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Reduce runtime of tc-police scale test (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Fix mausezahn delay parameter in mirror_test() (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Increase burst size for burst test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Increase burst size for rate test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Decrease required rate accuracy (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Adjust default policer burst size for Spectrum-{2, 3} (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ptp: Use generic helper function (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: RED: Test offload of trapping on RED qevents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Offload action trap for qevents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Add early_drop trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Allow for per-ASIC traps initialization (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Allow for per-ASIC trap groups initialization (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: On policer_id_base_ref_count, use dec_and_test (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Use 'size_t' for array sizes (Ivan Vecera) [1857594] - [netdrv] devlink: Pass extack when setting trap's action and group's parameters (Ivan Vecera) [1857594] - [net] devlink: Add early_drop trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_cnt: Use flex_array_size() helper in memcpy() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Fix use-after-free in router init / de-init (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Free EMAD transactions using kfree_rcu() (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Increase scope of RCU read-side critical section (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use different trap group for externally routed packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Allow programming link-local host routes (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add support for temperature thresholds reading for QSFP-DD transceivers (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add ethtool support for QSFP-DD transceivers (Ivan Vecera) [1857594] - [netdrv] mlxsw: destroy workqueue when trap_register in mlxsw_emad_init (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix wrong SFP EEPROM reading for upper pages 1-3 (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Test policers' occupancy (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add scale test for tc-police (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: Test tc-police restrictions (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add tc-police tests (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Offload FLOW_ACTION_POLICE (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Add police action (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Work around hardware limitation (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_policer: Add devlink resource support (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_policer: Add policer core (Ivan Vecera) [1857594] - [netdrv] mlxsw: resources: Add resource identifier for global policers (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add policer bandwidth limits (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Use mirror reason during Rx listener lookup (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Retrieve mirror reason from CQE during receive (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Add mirror reason field to CQEv2 (Ivan Vecera) [1857594] - [netdrv] mlxsw: trap: Add trap identifiers for mirrored packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Increase trap identifier to 10 bits (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Allow setting policer on a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Allow passing parameters to SPAN agents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add support for mirroring towards CPU port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Do not dereference destination netdev (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add driver private info to parms_set() callback (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add per-ASIC SPAN agent operations (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: add mirroring_pid_base to MOGCR register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add session_id and pid to MPAT register (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: RED: Test offload of mirror on RED early_drop qevent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Offload mirroring on RED qevent early_drop (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Promote binder-type dispatch to spectrum.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Publish matchall data structures (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Drop an unused field (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Convert a goto to a return (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to enable / disable global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add support for global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Prepare for global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Move SPAN operations out of global file (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring Port Analyzer Global Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring Mirror Trigger Enable Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Fix use-after-free in case of failed devlink reload (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Remove inappropriate usage of WARN_ON() (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add tests for ethtool extended state (Ivan Vecera) [1857594] - [tools] selftests: forwarding: forwarding.config.sample: Add port with no cable connected (Ivan Vecera) [1857594] - [tools] selftests: forwarding: ethtool: Move different_speeds_get() to ethtool_lib (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Add link extended state (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Port Diagnostics Database Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Move mlxsw_sp_port_type_speed_ops structs (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move ethtool_ops to spectrum_ethtool.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Rename mlxsw_sp_port_headroom_set() (Ivan Vecera) [1857594] - [netdrv] mlxsw: Enforce firmware version for Spectrum-3 (Ivan Vecera) [1857594] - [netdrv] mlxsw: Bump firmware version to XX.2007.1168 (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Fix a spelling typo in spectrum_dcb.c (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add a test for pedit munge tcp, udp sport, dport (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Support FLOW_ACTION_MANGLE for TCP, UDP ports (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Add L4_PORT_ACTION (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Split handling of pedit mangle by chip type (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Do not rely on machine endianness (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Adjust headroom buffers for 8x ports (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Use different get_trend() callbacks for different thermal zones (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add test for control packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register ACL control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register layer 3 control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register layer 2 control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Factor out common Rx listener function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Move layer 3 exceptions to exceptions trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: remove redundant initialization of pointer br_dev (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Allow programming link-local prefix routes (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Add packet traps for BFD packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Treat IPv6 link-local SIP as an exception (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Share one group for all locally delivered packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Move all trap groups under the same enum (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Do not hard code "thin" policer identifier (Ivan Vecera) [1857594] - [netdrv] mlxsw: switchx2: Move SwitchX-2 trap groups out of main enum (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Reduce priority of locally delivered packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for local routes and link-local destination (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use separate trap group for FID miss (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for various IPv6 packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename IPv6 ND trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same switch case for identical groups (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use dedicated trap group for ACL trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Fix spelling mistake in trap's name (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use dedicated trap group for sampled packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for IPv6 ND and ARP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename ARP trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Remove unnecessary field (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Align TC and trap priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Assign non-zero quotas to TC 0 of the CPU port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Change default rate and priority of DHCP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Trap IPv4 DHCP packets in router (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for MLD and IGMP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename IGMP trap group (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Do not hard code trap group name (Ivan Vecera) [1857594] - [tools] selftests: devlink_lib: Remove double blank line (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap group data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap policer data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Move struct definition out of header file (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: add couple of test for the correct matchall-flower ordering (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: add test to check sample action restrictions (Ivan Vecera) [1857594] - [] selftests: mlxsw: rename tc_flower_restrictions.sh to tc_restrictions.sh (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flower: Forbid to insert flower rules in collision with matchall rules (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Forbid to insert matchall rules in collision with flower rules (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Expose a function to get min and max rule priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Put matchall list into substruct of flow struct (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flower: Expose a function to get min and max rule priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Restrict sample action to be allowed only on ingress (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Remove old SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Use new analyzed ports list during speed / MTU change (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Convert flower-based mirroring to new SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Convert matchall-based mirroring to new SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to bind / unbind a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Wrap buffer change in a function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Rename function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to get / put an analyzed port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to get / put a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Move flow offload binding into spectrum_flow.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Process matchall events from the same cb as flower (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Avoid copying sample values and use RCU pointer direcly instead (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Push per-port rule add/del into separate functions (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Move ingress indication into mall_entry (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Pass mall_entry as arg to mlxsw_sp_mall_port_sample_add() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Pass mall_entry as arg to mlxsw_sp_mall_port_mirror_add() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Use block variable in mlxsw_sp_acl_rule_del() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Push matchall bits into a separate file (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Push flow_block related functions into a separate file (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename acl_block to flow_block (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Move block helpers into inline header functions (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Replace zero-length array with flexible-array member (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Use 'refcount_t' for reference counting (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Remove unnecessary debug prints (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Rename parms() to parms_set() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Reduce nesting in mlxsw_sp_span_entry_configure() (Ivan Vecera) [1857594] - [netdrv] net/mlxfw: Remove unneeded semicolon (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Increase register field length to 13 bits (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Re-increase scale of IPv6 nexthop groups (Ivan Vecera) [1857594] - [net] ipv6: Fix use of anycast address with loopback (Ivan Vecera) [1899591] - [net] ipv6: addrconf_f6i_alloc - fix non-null pointer check to !IS_ERR() (Ivan Vecera) [1899591] - [net] ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and others) (Ivan Vecera) [1899591] - [net] ipv6: Change addrconf_f6i_alloc to use ip6_route_info_create (Ivan Vecera) [1899591] - [net] ipv6: Move setting default metric for routes (Ivan Vecera) [1899591] - [net] Add extack argument to ip_fib_metrics_init (Ivan Vecera) [1899591] - [net] ipv6: do not leave garbage in rt->fib6_metrics (Ivan Vecera) [1899591] - [net] Move free of dst_metrics to helper (Ivan Vecera) [1899591] - [net] common metrics init helper for dst_entry (Ivan Vecera) [1899591] - [net] Move free of fib_metrics to helper (Ivan Vecera) [1899591] - [net] common metrics init helper for FIB entries (Ivan Vecera) [1899591] - [net] rtmsg_to_fib6_config() - use new style struct initializer instead of memset (Ivan Vecera) [1899591] - [powercap] powercap/intel_rapl: enumerate Psys RAPL domain together with package RAPL domain (Puneet Sethi) [1893463] - [powercap] powercap/intel_rapl: Fix domain detection (Puneet Sethi) [1893463]- [net] openvswitch: fix TTL decrement exception action execution (Eelco Chaudron) [1902610] - [net] openvswitch: fix error return code in validate_and_copy_dec_ttl() (Eelco Chaudron) [1902610] - [net] openvswitch: fix TTL decrement action netlink message format (Eelco Chaudron) [1902610] - [x86] hyperv: Enable 15-bit APIC ID if the hypervisor supports it (Vitaly Kuznetsov) [1903823] - [x86] kvm: Enable 15-bit extension when KVM_FEATURE_MSI_EXT_DEST_ID detected (Vitaly Kuznetsov) [1903823] - [documentation] x86/kvm: Reserve KVM_FEATURE_MSI_EXT_DEST_ID (Vitaly Kuznetsov) [1903823] - [iommu] hyper-v: Disable IRQ pseudo-remapping if 15 bit APIC IDs are available (Vitaly Kuznetsov) [1903823] - [x86] apic: Support 15 bits of APIC ID in MSI where available (Vitaly Kuznetsov) [1903823] - [x86] msi: Provide msi message shadow structs (Vitaly Kuznetsov) [1903823] - [kernel] genirq/msi: allow shadow declarations of msi_msg:: $member (Vitaly Kuznetsov) [1903823] - [x86] ioapic: Handle Extended Destination ID field in RTE (Vitaly Kuznetsov) [1903823] - [x86] apic: Always provide irq_compose_msi_msg() method for vector domain (Vitaly Kuznetsov) [1903823] - [x86] apic: Cleanup delivery mode defines (Vitaly Kuznetsov) [1903823] - [x86] apic/uv: Fix inconsistent destination mode (Vitaly Kuznetsov) [1903823] - [x86] msi: Only use high bits of MSI address for DMAR unit (Vitaly Kuznetsov) [1903823] - [x86] msi: Move compose message callback where it belongs (Vitaly Kuznetsov) [1903823] - [kernel] genirq/chip: Use the first chip in irq_chip_compose_msi_msg() (Vitaly Kuznetsov) [1903823] - [x86] apic: Fix x2apic enablement without interrupt remapping (Vitaly Kuznetsov) [1903823] - [tools] perf test: Fix msan uninitialized use (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Fix the ratio comments of miss-events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Free formats for perf pmu parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Do not free metric when failed to resolve (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Free metric when it failed to resolve (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Release expr_parse_ctx after testing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix memory leaks in parse-metric test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-event: Fix memory leak in evsel->unit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix cpu/thread map leak (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix some memory leaks - part 2 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix some memory leaks (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Free aliases for PMU event map aliases test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf vendor events amd: Remove trailing commas (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Leader sampling shouldn't clear sample period (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Prevent override of attr->sample_period for libpfm4 events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Set PERF_RECORD_PERIOD if attr->freq is set (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Fix 2 memory sanitizer warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix the "signal" test inline assembly (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record/stat: Explicitly call out event modifiers in the documentation (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fix build warning on 32-bit arches (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf jevents: Fix suspicious code in fixregex() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use uintptr_t when casting numbers to pointers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf report: Disable ordered_events for raw dump (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Correct SNOOPX field offset (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix corrupt data after perf inject from (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf cs-etm: Fix corrupt data after perf inject from (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Avoid an uninitialized read when using fake PMUs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Fix out of bounds array access in the print_counters() evlist method (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Set NULL sentinel in pmu_events table in "Parse and process metrics" test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Set exclude_guest=1 for user-space counting (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Correct the help info of option "--no-bpf-event" (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Use zd for size_t printf formats on 32-bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: arm-spe: Fix check error when synthesizing events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf symbols: Add mwait_idle_with_hints.constprop.0 to the list of idle symbols (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf sched timehist: Fix use of CPU list with summary option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix basic bpf filtering test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Make option description initials all capital letters (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf build-ids: Fall back to debuginfod query if debuginfo not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Remove dead code in parse_nodes_opt() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Update POWER9 metrics to utilize other metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add change log (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: ftrace: Add set_tracing_options() to set all trace options (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option --tid to filter by thread id (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option -D/--delay to delay tracing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: ftrace: Allow set graph depth by '--graph-opts' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option tracing_thresh (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option 'verbose' to show more info for graph tracer (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for tracing option 'irq-info' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option funcgraph-irqs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option sleep-time (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for tracing option 'func_stack_trace' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add general function to parse sublevel options (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '--inherit' to trace children processes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Show trace column header (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '-m/--buffer-size' to set per-cpu buffer size (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Factor out function write_tracing_file_int() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '-F/--funcs' to list available functions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Select function/function_graph tracer automatically (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Use numa_node_to_cpus() to bind tasks to nodes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix cpumask memory leak in node_has_cpus() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools build feature: Quote CC and CXX for their arguments (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Fix module symbol processing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Rename 'enum dso_kernel_type' to 'enum dso_space_type' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Fix man page typos (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Allow multiple probes in record+script_probe_vfs_getname.sh (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench mem: Always memset source before memcpy (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf sched: Prefer sched_waking event when it exists (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Fix a couple of spelling mistakes in options text (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix benchmark names (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix number of processes in "2x3-convergence" test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf trace beauty: Use the autogenerated protocol family table (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf trace beauty: Add script to autogenerate socket families table (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Add 'tod' field to display time of day (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Change the 'enum perf_output_field' enumerators to be 64 bits (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf data: Add support to store time of day in CTF data conversion (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Move clockid_res_ns under clock struct (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf header: Store clock references for -k/--clockid option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add clockid_name function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf clockid: Move parse_clockid() to new clockid object (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Handle possible strdup() error in tep_add_plugin_path() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed description of tep_add_plugin_path() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed type in PRINT_FMT_STING (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed broken indentation in parse_ip4_print_args() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Improve error handling of tep_plugin_add_option() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fix typo in tep_plugin_add_option() description (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Handle strdup() error in parse_option_name() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Document tep_load_plugins_hook() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evsel: Extend message to mention CAP_SYS_PTRACE and perf security doc link (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for decoding PSB+ only (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for decoding FUP/TIP only (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add itrace 'q' option for quicker, less detailed decoding (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Time filter logged perf events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Use itrace debug log flags to suppress some messages (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add optional log flags to the itrace 'd' option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Use itrace error flags to suppress some errors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add optional error flags to the itrace 'e' option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add missing itrace options to help text (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Improve aux_output not supported error (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix duplicate branch after CBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix FUP packet state (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Introduce --control fd:ctl-fdoptions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Implement control commands handling (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Extend -D, --delay option with -1 value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Introduce --control fd:ctl-fdoptions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Add benchmark of find_next_bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools build feature: Use CC and CXX from parent (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename group_list to metric_list (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename struct egroup to metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add metric group test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Make compute_single function more precise (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add recursion check when processing nested metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add DCache_L2 to metric parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add cache_miss_cycles to metric parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add events for the current list (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Compute referenced metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add referenced metrics to hash data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Collect referenced metrics in struct metric_expr (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Collect referenced metrics in struct metric_ref_node (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename __metricgroup__add_metric to __add_metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add add_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add macros for iterating map events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add expr__del_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Change expr__get_id to return struct expr_id_data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add expr__add_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix memory leak in expr__add_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Ensure sample_period is set libpfm4 events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Fix term parsing for raw syntax (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Allow r0x event syntax (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: No need to cache the PMUs in ARM SPE auxtrace init routine (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Add basic syscall benchmark (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Implement control commands handling (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: extend -D, --delay option with -1 value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out event handling loop into dispatch_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out body of event handling loop for fork case (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Move target check to loop control statement (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out body of event handling loop for system wide (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Implement control command handling functions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Introduce control file descriptors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Avoid counting of nonfilterable fdarray fds (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Add flags to fdarray fds objects (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Avoid internal moving of fdarray fds (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add 'struct expr_id_data' to keep expr value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename expr__add_id() to expr__add_val() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Warn if the target function is a GNU indirect function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Fix memory leakage when the probe point is not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Fix wrong variable warning when the probe point is not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Avoid setting probes on the same address for the same event (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf kmem: Pass additional arguments to 'perf record' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Report BPF errors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Show text poke address symbol (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Add option --show-text-poke-events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for text poke events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add support for PERF_RECORD_TEXT_POKE (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf annotate: Fix non-null terminated buffer returned by readlink() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf inject jit: Remove //anon mmap events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf symbols: Add s390 idle functions 'psw_idle' and 'psw_idle_exit' to list of idle symbols (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Fix reporting of unknown SVM exit reasons (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Change to SPDX License format (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add builtin handler for trace_marker_raw (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Move kernel_stack event handler to "function" plugin (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add plugin for decoding syscalls/sys_enter_futex (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add offset option for function plugin (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add more SVM exit reasons (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add plugin for tlb_flush (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Optimize pretty_print() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add support for more printk format specifiers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Introduced new traceevent API, for adding new plugins directories (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add interface for options to plugins (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add tep_load_plugins_hook() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Disable a subset of bison warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Disable a subset of flex warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Declare bison header file output (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add missing headers noticed when building with NO_LIBBPF=1 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Declare flex header file output (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add flex debug build flag (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add bison debug build flag (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use automatic variable for yacc input (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use automatic variable for flex input (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' branch_type methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' sample_id_all methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' sample_type methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' strerror methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' 'add' evsel methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Improve CPU core PMU HW event list ordering (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: List kernel supplied event aliases for arm64 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf cs-etm: Allow no CoreSight sink to be specified on command line (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add < and > operators (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add d_ratio operation (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Fixup some evsel/evlist method names (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add parse metric test for frontend metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add parse metric test for ipc metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add test_generic_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Release metric_events rblist (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Factor out prepare_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add metricgroup__parse_groups_test function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add map to parse_groups() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add fake_pmu to parse_group() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse: Factor out parse_groups() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add another metric parsing test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add a perf_pmu__fake object to use with __parse_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse: Provide a way to pass a fake_pmu to parse_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Factor check_parse_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add fake pmu support (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf annotate: Remove unneeded conversion to bool (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools/: replace HTTP links with HTTPS ones (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools, build: Propagate build failures from tools/build/Makefile.build (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] x86/cpufeatures: Add Architectural LBRs feature bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Add support for Intel SPR platform (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Support multiple RAPL unit quirks (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Fix missing psys sysfs attributes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Take over CAP_SYS_PTRACE creds to CAP_PERFMON capability (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf: Expose get/put_callchain_entry() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [include] perf: : drop a duplicated word (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Remove task_ctx_size (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Create kmem_cache for the LBR context data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Use kmem_cache to allocate the PMU specific data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Factor out functions to allocate/free the task_ctx_data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Support Architectural LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out intel_pmu_store_lbr (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out rdlbr_all() and wrlbr_all() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Mark the {rd, wr}lbr_{to, from} wrappers __always_inline (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Unify the stored format of LBR information (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Support LBR_CTL (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] x86/msr-index: Add bunch of MSRs for Arch LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Expose CPUID enumeration bits for arch LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Use dynamic data structure for task_ctx (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out a new struct for generic optimization (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add the function pointers for LBR save and restore (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add a function pointer for LBR read (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add a function pointer for LBR reset (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Keep LBR records unchanged in host context for guest usage (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Add constraint to create guest LBR event without hw counter (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/lbr: Add interface to get LBR information (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Provide stubs of KVM helpers for non-Intel CPUs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/core: Refactor hw->idx checks and cleanup (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Fix variable types for LBR registers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf: Add perf text poke event (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [uapi] perf: Add perf_event_mmap_page::cap_user_time_short ABI (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] sev-es: Do not support MMIO to/from encrypted memory (Vitaly Kuznetsov) [1868080] - [x86] head/64: Check SEV encryption before switching to kernel page-table (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Sanity-check CPUID results in the early #VC handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Check SEV encryption in 64-bit boot-path (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Introduce sev_status (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Use GHCB accessor for setting the MMIO scratch buffer (Vitaly Kuznetsov) [1868080] - [x86] head/64: Disable stack protection for head$(BITS).o (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Check required CPU features for SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] efi: Add GHCB mappings when SEV-ES is active (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle NMI State (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Support CPU offline/online (Vitaly Kuznetsov) [1868080] - [x86] head/64: Don't call verify_cpu() on starting APs (Vitaly Kuznetsov) [1868080] - [x86] smpboot: Load TSS and getcpu GDT entry before loading IDT (Vitaly Kuznetsov) [1868080] - [x86] realmode: Setup AP jump table (Vitaly Kuznetsov) [1868080] - [x86] realmode: Add SEV-ES specific trampoline entry point (Vitaly Kuznetsov) [1868080] - [x86] vmware: Add VMware-specific handling for VMMCALL under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] kvm: Add KVM-specific VMMCALL handling under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] paravirt: Allow hypervisor-specific VMMCALL handling under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle #DB Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle #AC Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle VMMCALL Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MWAIT/MWAITX Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MONITOR/MONITORX Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle INVD Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle RDPMC Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle RDTSC(P) Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle WBINVD Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle DR7 read/write events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MSR events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MMIO String Instructions (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MMIO events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle instruction fetches from user-space (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Wire up existing #VC exit-code handlers (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add a Runtime #VC Exception Handler (Vitaly Kuznetsov) [1868080] - [x86] entry/64: Add entry code for #VC handler (Vitaly Kuznetsov) [1868080] - [x86] dumpstack/64: Add noinstr version of get_stack_info() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Adjust #VC IST Stack on entering NMI handler (Vitaly Kuznetsov) [1868080] - [x86] boot/64: Explicitly map boot_params and command line (Vitaly Kuznetsov) [1868080] - [x86] boot/64: Initialize 5-level paging variables earlier (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Allocate and map an IST stack for #VC handler (Vitaly Kuznetsov) [1868080] - [x86] debug: Allow a single level of #DB recursion (Vitaly Kuznetsov) [1868080] - [x86] entry: Remove DBn stacks (Vitaly Kuznetsov) [1868080] - [x86] entry, nmi: Disable #DB (Vitaly Kuznetsov) [1868080] - [x86] nmi: Protect NMI entry against instrumentation (Vitaly Kuznetsov) [1868080] - [x86] entry: Introduce local_db_{save, restore}() (Vitaly Kuznetsov) [1868080] - [x86] db: Split out dr6/7 handling (Vitaly Kuznetsov) [1868080] - [x86] Replace ist_enter() with nmi_enter() (Vitaly Kuznetsov) [1868080] - [x86] traps: Stop using ist_enter/exit() in do_int3() (Vitaly Kuznetsov) [1868080] - [x86] entry: Get rid of ist_begin/end_non_atomic() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup per-CPU GHCBs for the runtime handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup GHCB-based boot #VC handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup an early #VC handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Compile early handler code into kernel image (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Print SEV-ES info into the kernel log (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add SEV-ES Feature Detection (Vitaly Kuznetsov) [1868080] - [x86] head/64: Move early exception dispatch to C code (Vitaly Kuznetsov) [1868080] - [x86] idt: Make IDT init functions static inlines (Vitaly Kuznetsov) [1868080] - [x86] head/64: Install a CPU bringup IDT (Vitaly Kuznetsov) [1868080] - [x86] head/64: Switch to initial stack earlier (Vitaly Kuznetsov) [1868080] - [x86] head/64: Load segment registers earlier (Vitaly Kuznetsov) [1868080] - [x86] irq/64: Update stale comment (Vitaly Kuznetsov) [1868080] - [x86] head/64: Load GDT after switch to virtual addresses (Vitaly Kuznetsov) [1868080] - [x86] head/64: Install startup GDT (Vitaly Kuznetsov) [1868080] - [x86] idt: Split idt_data setup out of set_intr_gate() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add CPUID handling to #VC handler (Vitaly Kuznetsov) [1868080] - [x86] fpu: Move xgetbv()/xsetbv() into a separate header (Vitaly Kuznetsov) [1868080] - [x86] cpu: Use XGETBV and XSETBV mnemonics in fpu/internal.h (Vitaly Kuznetsov) [1868080] - [x86] fpu: Reset MXCSR to default in kernel_fpu_begin() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add support for handling IOIO exceptions (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Unmap GHCB page before booting the kernel (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Setup a GHCB-based VC Exception handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add set_page_en/decrypted() helpers (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Check return value of kernel_ident_mapping_init() (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Call set_sev_encryption_mask() earlier (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add stage1 #VC handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Change add_identity_map() to take start and end (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Don't pre-map memory in KASLR code (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Always switch to own page table (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add page-fault handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Rename kaslr_64.c to ident_map_64.c (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add IDT Infrastructure (Vitaly Kuznetsov) [1868080] - [x86] traps: Split trap numbers out in a separate header (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Disable red-zone usage (Vitaly Kuznetsov) [1868080] - [x86] insn: Add insn_has_rep_prefix() helper (Vitaly Kuznetsov) [1868080] - [x86] insn: Add insn_get_modrm_reg_off() (Vitaly Kuznetsov) [1868080] - [x86] umip: Factor out instruction decoding (Vitaly Kuznetsov) [1868080] - [x86] umip: Factor out instruction fetch (Vitaly Kuznetsov) [1868080] - [tools] x86/insn: Make inat-tables.c suitable for pre-decompression code (Vitaly Kuznetsov) [1868080] - [x86] traps: Move pf error codes to (Vitaly Kuznetsov) [1868080] - [x86] cpufeatures: Add SEV-ES CPU feature (Vitaly Kuznetsov) [1868080] - [x86] kvm: svm: Use __packed shorthand (Vitaly Kuznetsov) [1868080] - [x86] kvm: svm: Add GHCB Accessor functions (Vitaly Kuznetsov) [1868080] - [x86] cpu: Unify cpu_init() (Vitaly Kuznetsov) [1868080] - [x86] insn-eval: Add support for 64-bit kernel mode (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Get rid of GOT fixup code (Vitaly Kuznetsov) [1868080] - [kernel] x86/boot/compressed: Force hidden visibility for all symbol references (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Move .got.plt entries out of the .got section (Vitaly Kuznetsov) [1868080] - [x86] boot: Correct relocation destination on old linkers (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Switch to __KERNEL_CS after GDT is loaded (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Fix reloading of GDTR post-relocation (Vitaly Kuznetsov) [1868080] - [x86] boot: Reload GDTR after copying to the end of the buffer (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Don't declare __force_order in kaslr_64.c (Vitaly Kuznetsov) [1868080] - [mm] mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault() (Philipp Rudo) [1903968] - [s390] s390/ap: fix ap devices reference counting (Philipp Rudo) [1903967] - [infiniband] RDMA/cxgb4: Validate the number of CQEs (Kamal Heib) [1894720] - [net] treewide: Use fallthrough pseudo-keyword (Petr Oros) [1892748] - [net] devlink: Remove overzealous WARN_ON with snapshots (Petr Oros) [1892748] - [net] devlink: ignore -EOPNOTSUPP errors on dumpit (Petr Oros) [1892748] - [net] devlink: Always use user_ptr[0] for devlink and simplify post_doit (Petr Oros) [1892748] - [net] devlink: Constify devlink instance pointer (Petr Oros) [1892748] - [net] devlink: Add comment for devlink instance lock (Petr Oros) [1892748] - [net] devlink: Do not hold devlink mutex when initializing devlink fields (Petr Oros) [1892748] - [docs] ice: add documentation for device-caps region (Petr Oros) [1892748] - [net] devlink: remove new uninitialized_var() usage (Petr Oros) [1892748] - [docs] networking: convert sja1105's devlink info to RTS (Petr Oros) [1892748] - [net] devlink: refactor end checks in devlink_nl_cmd_region_read_dumpit (Petr Oros) [1892748] - [docs] ice: cleanup language in ice.rst for fw.app (Petr Oros) [1892748] - [docs] devlink: don't wrap commands in rST shell blocks (Petr Oros) [1892748] - [net] devlink: Protect devlink port list traversal (Petr Oros) [1895042] - [net] devlink: Fix per port reporter fields initialization (Petr Oros) [1895042] - [net] devlink: Fix use-after-free when destroying health reporters (Petr Oros) [1895042] - [net] devlink: introduce the health reporter test command (Petr Oros) [1895042] - [net] devlink: Add devlink health port reporters API (Petr Oros) [1895042] - [net] devlink: Implement devlink health reporters on per-port basis (Petr Oros) [1895042] - [net] devlink: Create generic devlink health reporter search function (Petr Oros) [1895042] - [net] devlink: Rework devlink health reporter destructor (Petr Oros) [1895042] - [net] devlink: Refactor devlink health reporter constructor (Petr Oros) [1895042]- [md] dm writecache: fix the maximum number of arguments (Mike Snitzer) [1895117] - [md] dm writecache: advance the number of arguments when reporting max_age (Mike Snitzer) [1895117] - [x86] x86/cpu/amd: Make erratum #1054 a legacy erratum (Michael Petlan) [1791459] - [x86] x86/cpu/amd: Enable the fixed Instructions Retired counter IRPERF (Michael Petlan) [1791459] - [s390] s390/early: improve machine detection (Claudio Imbrenda) [1896307] - [infiniband] IB/mlx5: Fix fall-through warnings for Clang (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Properly convey driver version to firmware (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Enforce HW TX csum offload with kTLS (Alaa Hleihel) [1858561] - [netdrv] net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix wrong address reclaim when command interface is down (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Disable QoS when min_rates on all VFs are zero (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Clear bw_share upon VF disable (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add handling of port type in rule deletion (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix check if netdev is bond slave (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Set IPsec WAs only in IP's non checksum partial case (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix incorrect access of RCU-protected xdp_prog (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VXLAN synchronization after function reload (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Avoid extack error log for disabled vport (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix deletion of duplicate rules (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Protect encap route dev from concurrent release (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix modify header actions memory leak (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix devlink deadlock on net namespace deletion (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix type warning of sizeof in __mlx5_ib_alloc_counters() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Clarify what the UMR is for when creating MRs (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Remove dead check for EAGAIN after alloc_mr_from_cache() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix potential race between destroy and CQE poll (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Use kvfree() for memory allocated with kvzalloc() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: TC: Remove unused parameter from mlx5_tc_ct_add_no_trk_match() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Setup all vports' metadata to support peer miss rule (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Dedicated metadata for uplink vport (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Check and enable metadata support flag before using (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Release clock lock before scheduling a PPS work (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Rename ptp clock info (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Always use container_of to find mdev pointer from clock struct (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix uninitialized variable warning (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec Tx data path offload (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add TX steering rule per IPsec state (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: Add NIC TX domain namespace (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: Enhanced TX MPWQE for SKBs (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move TX code into functions to be used by MPWQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Rename xmit-related structs to generalize them (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Generalize TX MPWQE checks for full session (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Support multiple SKBs in a TX WQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move the TLS resync check out of the function (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Unify constants for WQE_EMPTY_DS_COUNT (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Small improvements for XDP TX MPWQE logic (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor xmit functions (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move mlx5e_tx_wqe_inline_mode to en_tx.c (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use struct assignment to initialize mlx5e_tx_wqe_info (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor inline header size calculation in the TX path (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add IPv6 traffic class (DSCP) header rewrite support (Alaa Hleihel) [1889981 1858561] - [netdrv] net/mlx5e: Add LAG warning if bond slave is not lag master (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Add LAG warning for unsupported tx type (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Return a valid errno if can't get lag device index (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Fix race condition on nhe->n pointer in neigh update (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VLAN create flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VLAN cleanup flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix return status when setting unsupported FEC mode (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix driver's declaration to support GRE offload (Alaa Hleihel) [1858561 1819619] - [netdrv] net/mlx5e: CT, Fix coverity issue (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix error path for RQ alloc (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix request_irqs error flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: cmdif, Avoid skipping reclaim pages if FW is not accessible (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add retry mechanism to the command entry index allocation (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: poll cmd EQ in case of command timeout (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Avoid possible free of command entry while timeout comp handler (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix a race when moving command interface to polling mode (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: mlx5e_fec_in_caps() returns a boolean (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix using wrong stats_grps in mlx5e_update_ndo_stats() (Alaa Hleihel) [1870593 1858561] - [netdrv] net/mlx5e: Fix multicast counter not up-to-date in "ip -s" (Alaa Hleihel) [1858561 1693130] - [netdrv] net/mlx5e: Fix endianness when calculating pedit mask first bit (Alaa Hleihel) [1889981 1858561] - [netdrv] net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: CT: Fix freeing ct_label mapping (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix memory leak of tunnel info when rule under multipath not ready (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use synchronize_rcu to sync with NAPI (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use RCU to protect rq->xdp_prog (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix FTE cleanup (Alaa Hleihel) [1858561] - [infiniband] mlx5: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix flow destination setting for RDMA TX flow table (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Delete extra dump stack that gives nothing (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: convert to new udp_tunnel infrastructure (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: DR, Change push vlan action sequence (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enable users to change VF/PF representors carrier state (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Delete unreachable code (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: drop unnecessary list_empty (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: DR, Reduce print level for matcher print (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add support for PCI relaxed ordering (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use indirect call wrappers for RX post WQEs functions (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move exposure of datapath function to txrx header (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: RX, Re-work initializaiton of RX function pointers (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Use eswitch total_vports (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Reuse total_vports and avoid duplicate nvports (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Consider maximum vf vports for steering init (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: Add function ID to reclaim pages debug log (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Hold pages RB tree per VF (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Set mkey relaxed ordering by UMR with ConnectX-7 (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Use MLX5_SET macro instead of local structure (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add missing srcu_read_lock in ODP implicit flow (Alaa Hleihel) [1858561] - [include] RDMA/mlx5: ConnectX-7 new capabilities to set relaxed ordering by UMR (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Allow SQ modification (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Do not request completion on every single UMR WQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: RX, Avoid indirect call in representor CQE handling (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: XDP, Avoid indirect call in TX flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec ESN update offload support (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec Rx data path offload (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add IPsec steering in local NIC RX (Alaa Hleihel) [1858561 1790222] - [include] net/mlx5: Add IPsec related Flow steering entry's fields (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: IPsec: Add HW crypto offload support (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: Accel, Add core IPsec support for the Connect-X family (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: E-switch, Reduce dependency on num_vfs during mode set (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Avoid function change handler for non ECPF (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Make MLX5_EN_TLS non-prompt (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Enable count action for rules with allow action (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add interface changes required for VDPA (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add VDPA interface type to supported enumerations (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Support setting access rights of dma addresses (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move devlink port register and unregister calls (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Remove unused to_mibmr function (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, When eswitch is unsupported, return -EOPNOTSUPP (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Added support for 100Gbps per lane link modes (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Delete one-time used functions (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Cleanup DEVX initialization flow (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate flow steering logic from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate counters from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate restrack callbacks initialization from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Limit the scope of mlx5_ib_enable_driver function (Alaa Hleihel) [1858561] - [infiniband] RDMA: Move XRCD to be under ib_core responsibility (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Introduce UAPI to query PD attributes (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Implement the query ucontext functionality (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Refactor mlx5_ib_alloc_ucontext() response (Alaa Hleihel) [1858561] - [infiniband] RDMA/core: Optimize XRC target lookup (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Get XRCD number directly for the internal use (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Enable QP number request when creating IPoIB underlay QP (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Introduce ODP prefetch counter (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance TX timeout recovery (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance ICOSQ data on RX reporter's diagnose (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add EQ info to TX/RX reporter's diagnose (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance CQ data on diagnose output (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Rename reporter's helpers (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add helper to get the RQ WQE counter (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add helper to get RQ WQE's head (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move RQ helpers to txrx.h (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Align RX/TX reporters diagnose output format (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Remove redundant RQ state query (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add a flush timeout define (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Change reporters create functions to return void (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: fix memory leak of tls (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix build break when CONFIG_XPS is not set (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Add kTLS RX HW offload support (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Use kernel API to extract private offload context (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Improve TLS feature modularity (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Accel, Expose flow steering API for rules add/del (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Receive flow steering framework for accelerated TCP flows (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: API to manipulate TTC rules destinations (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor build channel params (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Turn XSK ICOSQ into a general asynchronous one (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: kTLS, Improve TLS params layout structures (Alaa Hleihel) [1858561] - [include] net/mlx5: Avoid RDMA file inclusion in core driver (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: vxlan: Return bool instead of opaque ptr in port_lookup() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move TC-specific function definitions into MLX5_CLS_ACT (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Use kfree(ft->g) in arfs_create_groups() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: FWTrace: Add missing space (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get MR resource in RAW format (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get CQ resource in RAW format (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get QP resource in RAW format (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add support in query QP, CQ and MKEY segments (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Export resource dump interface (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Supporting setting devlink port function mac address (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Split mac address setting function for using state_lock (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Support querying port function mac address (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Move helper to eswitch layer (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Introduce and use eswitch support check helper (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: Constify mac address pointer (Alaa Hleihel) [1858561] - [tty] serial: 8250: export serial8250_do_set_divisor() (Steve Best) [1784119] - [tty] serial: 8250: introduce get_divisor() and set_divisor() hook (Steve Best) [1784119] - [tty] serial: 8250: let serial8250_get_divisor() get uart_port * as param (Steve Best) [1784119] - [tty] serial: 8250_lpss: Add ->setup() for Elkhart Lake ports (Steve Best) [1784119] - [tty] serial: 8250_lpss: Switch over to MSI interrupts (Steve Best) [1784119] - [tty] serial: 8250_lpss: Enable HS UART on Elkhart Lake (Steve Best) [1784119] - [tty] serial: 8250_lpss: Get rid of custom LPSS_DEVICE() macro (Steve Best) [1784119] - [tty] serial: 8250_lpss: register DMA IRQ and pool with instance ID (Steve Best) [1784119] - [tty] serial: 8250_lpss: add fractional divisor support (Steve Best) [1784119] - [tty] serial: 8250_lpss: switch to use 8250_dwlib library (Steve Best) [1784119] - [tty] tty: serial: Use the correct style for SPDX License Identifier (Steve Best) [1784119] - [tty] serial: 8250_dw: split Synopsys DesignWare 8250 common functions (Steve Best) [1784119] - [tty] 8250_lpss: check null return when calling pci_ioremap_bar (Steve Best) [1784119] - [dma] dmaengine: dw: Remove misleading is_private property (Steve Best) [1784119] - [tty] serial: 8250: fix null-ptr-deref in serial8250_start_tx() (John Linville) [1903272] {CVE-2020-15437} - [i2c] i2c: designware-pci: Fix BUG_ON during device removal (Steve Best) [1784122] - [i2c] i2c: designware-pci: Add support for Elkhart Lake PSE I2C (Steve Best) [1784122] - [i2c] i2c: designware-pci: Switch over to MSI interrupts (Steve Best) [1784122] - [mmc] mmc: sdhci: Add LTR support for some Intel BYT based controllers (Steve Best) [1906791] - [mmc] mmc: sdhci-pci: Add max-frequency device property for Intel controllers (Steve Best) [1906791] - [powerpc] powerpc/64s: Trim offlined CPUs from mm_cpumasks (Steve Best) [1905892] - [kernel] kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling (Steve Best) [1905892] - [mm] powerpc/64s/pseries: Fix hash tlbiel_all_isa300 for guest kernels (Steve Best) [1905892] - [mm] powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation (Steve Best) [1905892] - [mm] powerpc/64s: Add cp_abort after tlbiel to invalidate copy-buffer address (Steve Best) [1905892] - [powerpc] powerpc: untangle cputable mce include (Steve Best) [1905892] - [mmc] mmc: sdhci-pci: Add support for Intel EHL (Steve Best) [1783588] - [scsi] qla2xxx: Update version to 10.02.00.104-k (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix device loss on 4G and older HBAs (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: If fcport is undergoing deletion complete I/O with retry (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix the call trace for flush workqueue (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix flash update in 28XX adapters on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Handle aborts correctly for port undergoing deletion (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix N2N and NVMe connect retry failure (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix FW initialization error on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix crash during driver load on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix compilation issue in PPC systems (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Don't check for fw_started while posting NVMe command (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Tear down session if FW say it is down (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Limit interrupt vectors to number of CPUs (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Change post del message from debug level to log level (Nilesh Javali) [1905493] - [s390] s390/qeth: Remove pnso workaround (Philipp Rudo) [1903964] - [s390] s390/purgatory: do not build purgatory with kcov, kasan and friends (Philipp Rudo) [1900550] - [fs] iomap: Fix misplaced page flushing (Carlos Maiolino) [1868429] - [fs] iomap: Use round_down/round_up macros in __iomap_write_begin (Carlos Maiolino) [1868429] - [fs] iomap: Mark read blocks uptodate in write_begin (Carlos Maiolino) [1868429] - [fs] iomap: Clear page error before beginning a write (Carlos Maiolino) [1868429] - [fs] iomap: fix WARN_ON_ONCE() from unprivileged users (Carlos Maiolino) [1868429] - [fs] iomap: fall back to buffered writes for invalidation failures (Carlos Maiolino) [1868429] - [fs] iomap: Only invalidate page cache pages on direct IO writes (Carlos Maiolino) [1868429] - [fs] iomap: Make sure iomap_end is called after iomap_begin (Carlos Maiolino) [1868429] - [fs] iomap: Fix unsharing of an extent >2GB on a 32-bit machine (Carlos Maiolino) [1868429] - [fs] iomap: fix the iomap_fiemap prototype (Carlos Maiolino) [1868429] - [fs] iomap: remove lockdep_assert_held() (Carlos Maiolino) [1868429] - [mm] powerpc/numa: Fix a regression on memoryless node 0 (Steve Best) [1903613] - [mm] powerpc/numa: Offline memoryless cpuless node 0 (Steve Best) [1903613] - [mm] powerpc/numa: Prefer node id queried from vphn (Steve Best) [1903613] - [mm] powerpc/numa: Set numa_node for all possible cpus (Steve Best) [1903613] - [powerpc] powerpc/numa: Remove late request for home node associativity (Steve Best) [1903613] - [mm] powerpc/numa: Early request for home node associativity (Steve Best) [1903613] - [mm] powerpc/numa: Use cpu node map of first sibling thread (Steve Best) [1903613] - [x86] xen: don't unbind uninitialized lock_kicker_irq (Brian Masney) [1896786] - [net] Bluetooth: Acquire sk_lock.slock without disabling interrupts (Ivan Vecera) [1889859] - [wireless] mwifiex: fix double free (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: run init_cfg function once per driver load (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: remove no filter condition (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: split a print to avoid a WARNING in ROC (Jarod Wilson) [1860496] - [wireless] qtnfmac: fix resource leaks on unsupported iftype error return path (Jarod Wilson) [1860496] - [net] nl80211: fix OBSS PD min and max offset validation (Jarod Wilson) [1860496] - [wireless] rtw88: Fix potential probe error handling race with wow firmware loading (Jarod Wilson) [1860496] - [wireless] rtw88: Fix probe error handling race with firmware loading (Jarod Wilson) [1860496] - [wireless] ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd() (Jarod Wilson) [1860496] - [wireless] ath11k: Add checked value for ath11k_ahb_remove (Jarod Wilson) [1860496] - [wireless] mwifiex: remove function pointer check (Jarod Wilson) [1860496] - [wireless] ath11k: fix uninitialized return in ath11k_spectral_process_data() (Jarod Wilson) [1860496] - [wireless] ath11k: fix a double free and a memory leak (Jarod Wilson) [1860496] - [wireless] rtw88: fix compile warning: (Jarod Wilson) [1860496] - [wireless] mwifiex: Remove unnecessary braces from HostCmd_SET_SEQ_NO_BSS_INFO (Jarod Wilson) [1860496] - [wireless] rtw88: don't treat NULL pointer as an array (Jarod Wilson) [1860496] - [wireless] mwifiex: Do not use GFP_KERNEL in atomic context (Jarod Wilson) [1860496] - [wireless] brcmfmac: check ndev pointer (Jarod Wilson) [1860496] - [wireless] ath11k: Fix possible memleak in ath11k_qmi_init_service (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path (Jarod Wilson) [1860496] - [wireless] ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb() (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Use appropriate rs_datalen type (Jarod Wilson) [1860496] - [wireless] ath6kl: prevent potential array overflow in ath6kl_add_new_sta() (Jarod Wilson) [1860496] - [net] net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reduce maximum VHT MPDU length to 7991 (Jarod Wilson) [1860496] - [net] mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz (Jarod Wilson) [1860496] - [net] mac80211: do not allow bigger VHT MPDUs than the hardware supports (Jarod Wilson) [1860496] - [net] cfg80211: fix 6 GHz channel conversion (Jarod Wilson) [1860496] - [net] mac80211: do not disable HE if HT is missing on 2.4 GHz (Jarod Wilson) [1860496] - [net] mac80211: Fix radiotap header channel flag for 6GHz band (Jarod Wilson) [1860496] - [net] lib80211: fix unmet direct dependendices config warning when !CRYPTO (Jarod Wilson) [1860496] - [net] mac80211: add AQL support for VHT160 tx rates (Jarod Wilson) [1860496] - [net] mac80211: extend AQL aggregation estimation to HE and fix unit mismatch (Jarod Wilson) [1860496] - [wireless] mwifiex: Increase AES key storage size to 256 bits (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: use ieee80211_free_txskb to free tx skbs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing stations (Jarod Wilson) [1860496] - [net] cfg80211: Adjust 6 GHz frequency to channel conversion (Jarod Wilson) [1860496] - [net] mac80211: reduce packet loss event false positives (Jarod Wilson) [1860496] - [net] cfg80211: regulatory: reject invalid hints (Jarod Wilson) [1860496] - [net] wireless: fix wrong 160/80+80 MHz setting (Jarod Wilson) [1860496] - [net] mac80211: improve AQL aggregation estimation for low data rates (Jarod Wilson) [1860496] - [net] mac80211: factor out code to look up the average packet length duration for a rate (Jarod Wilson) [1860496] - [net] mac80211: use rate provided via status->rate on ieee80211_tx_status_ext for AQL (Jarod Wilson) [1860496] - [net] nl80211: fix NL80211_ATTR_HE_6GHZ_CAPABILITY usage (Jarod Wilson) [1860496] - [wireless] brcmfmac: reserve tx credit only when txctl is ready to send (Jarod Wilson) [1860496] - [net] wireless: Use fallthrough pseudo-keyword (Jarod Wilson) [1860496] - [wireless] rtl818x: constify ioreadX() iomem argument (as in generic implementation) (Jarod Wilson) [1860496] - [net] mac80211: Do not report beacon loss if beacon filtering enabled (Jarod Wilson) [1860496] - [net] mac80211: fix misplaced while instead of if (Jarod Wilson) [1860496] - [net] nl80211: use eth_zero_addr() to clear mac address (Jarod Wilson) [1860496] - [net] mac80211: use eth_zero_addr() to clear mac address (Jarod Wilson) [1860496] - [net] mac8211: fix struct initialisation (Jarod Wilson) [1860496] - [net] mac80211: Handle special status codes in SAE commit (Jarod Wilson) [1860496] - [wireless] brcmfmac: Set timeout value when configuring power save (Jarod Wilson) [1860496] - [wireless] hostap: use generic power management (Jarod Wilson) [1860496] - [wireless] rt2x00: pci: use generic power management (Jarod Wilson) [1860496] - [wireless] mt7601u: add missing release on skb in mt7601u_mcu_msg_send (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't print failure if debug firmware is missing (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: coex: add functions and parameters (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: make symbol 'rtw8821c_rtw_pwr_track_tbl' static (Jarod Wilson) [1860496] - [wireless] rtw88: add h2c command in debugfs (Jarod Wilson) [1860496] - [wireless] rtw88: allows driver to enable/disable beacon (Jarod Wilson) [1860496] - [wireless] rtw88: add ieee80211_ops::change_interface (Jarod Wilson) [1860496] - [wireless] rtw88: coex: only skip coex triggered by BT info (Jarod Wilson) [1860496] - [wireless] rtw88: update tx descriptor of mgmt and reserved page packets (Jarod Wilson) [1860496] - [wireless] rtw88: fix short GI capability based on current bandwidth (Jarod Wilson) [1860496] - [wireless] rtw88: fix LDPC field for RA info (Jarod Wilson) [1860496] - [wireless] prism54: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1860496] - [wireless] prism54: islpci_hotplug: use generic power management (Jarod Wilson) [1860496] - [wireless] prism54: Replace HTTP links with HTTPS ones (Jarod Wilson) [1860496] - [wireless] p54: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1860496] - [wireless] mwifiex: 11n_rxreorder: Remove unnecessary cast in kfree() (Jarod Wilson) [1860496] - [wireless] rtlwifi: btcoex: use *ph to print small buffer (Jarod Wilson) [1860496] - [wireless] rtlwifi: btcoex: remove redundant initialization of variables ant_num and single_ant_path (Jarod Wilson) [1860496] - [net] mac80211: warn only once in check_sdata_in_driver() at each caller (Jarod Wilson) [1860496] - [net] nl80211: support 4-way handshake offloading for WPA/WPA2-PSK in AP mode (Jarod Wilson) [1860496] - [net] cfg80211: invert HE BSS color 'disabled' to 'enabled' (Jarod Wilson) [1860496] - [net] mac80211: add a function for running rx without passing skbs to the stack (Jarod Wilson) [1860496] - [net] mac80211: parse radiotap header when selecting Tx queue (Jarod Wilson) [1860496] - [net] mac80211: remove unused flags argument in transmit functions (Jarod Wilson) [1860496] - [net] mac80211: use same flag everywhere to avoid sequence number overwrite (Jarod Wilson) [1860496] - [net] mac80211: do not overwrite the sequence number if requested (Jarod Wilson) [1860496] - [net] mac80211: add radiotap flag to prevent sequence number overwrite (Jarod Wilson) [1860496] - [net] mac80211: never drop injected frames even if normally not allowed (Jarod Wilson) [1860496] - [uapi] cfg80211: Add support to advertize OCV support (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: avoid bss color setting in non-HE modes (Jarod Wilson) [1860496] - [net] mac80211: calculate skb hash early when using itxq (Jarod Wilson) [1860496] - [net] mac80211: improve AQL tx airtime estimation (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add connected to auth server to station info (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add connected to auth server to meshconf (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add mesh_param "mesh_nolearn" to skip path discovery (Jarod Wilson) [1860496] - [net] cfg80211: allow the low level driver to flush the BSS table (Jarod Wilson) [1860496] - [net] mac80211: Use fallthrough pseudo-keyword (Jarod Wilson) [1860496] - [net] nl80211: Simplify error handling path in 'nl80211_trigger_scan()' (Jarod Wilson) [1860496] - [net] nl80211: Remove a misleading label in 'nl80211_trigger_scan()' (Jarod Wilson) [1860496] - [uapi] net/wireless: wireless.h: drop duplicate word in comments (Jarod Wilson) [1860496] - [uapi] net/wireless: nl80211.h: drop duplicate words in comments (Jarod Wilson) [1860496] - [net] cfg80211: allow vendor dumpit to terminate by returning 0 (Jarod Wilson) [1860496] - [net] mac80211: remove the need for variable rates_idx (Jarod Wilson) [1860496] - [net] nl80211: S1G band and channel definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add missing release on skb in __mt76x02u_mcu_send_msg (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible memory leak in mt7615_mcu_wtbl_sta_add (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt76s: move queue accounting in mt76s_tx_queue_skb (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663s support (Jarod Wilson) [1860496] - [wireless] mt76: introduce mt76_sdio module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663-usb-sdio-common module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: sdio code must access rate/key regs in preocess context (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_skb_adjust_pad utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: take into account sdio bus configuring txwi (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add missing CONFIG_MAC80211_DEBUGFS (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: potential array overflow in mt7915_mcu_tx_rate_report() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix memory leak in set key (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reschedule ps work according to last activity (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: avoid scheduling runtime-pm during hw scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: sync probe sampling with rate configuration (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: improve mt7615_driver_own reliability (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add idle-timeout knob in mt7615 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable beacon hw filter for runtime-pm (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add runtime-pm knob in mt7615 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not request {driver, fw}_own if already granted (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: check MT76_STATE_PM flag before accessing the device (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_pm_wake in mt7615_mac_sta_{add, remove} (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before pushing frames in mt7615_tx (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before pulling packets from mac80211 queues (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_mcu_set_roc holding mt76 mutex (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_mcu_set_wmm holding mt76 mutex (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing lock in mt7615_regd_notifier (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before performing freq scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: acquire driver_own before configuring device for suspend (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device in mt7615_update_channel before access regmap (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce pm_power_save delayed work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before configuring hw keys (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before accessing regmap in debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mutex_{acquire, release} utilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7615_pm_wake utility routine (Jarod Wilson) [1860496] - [wireless] mt76: move mt76 workqueue in common code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: avoid polling in fw_own for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: avoid memcpy in rxv operation (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2u: enable HC-M7662BU1 (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: fix pci suspend/resume on mt7612e (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: update HE capabilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement testmode support (Jarod Wilson) [1860496] - [wireless] mt76: add API for testmode support (Jarod Wilson) [1860496] - [wireless] mt76: vif_mask to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use full on-chip memory address for WF_PHY registers (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for accessing RF registers via MCU (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for accessing mapped registers via bus ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: schedule tx tasklet and sta poll on mac tx free (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2e: rename routines in pci.c (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: overwrite qid for non-bufferable mgmt frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: use ieee80211_tx_queue_params to avoid open coded (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add MU-MIMO support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add a fixed AC queue mapping (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add .set_tsf callback (Jarod Wilson) [1860496] - [wireless] mt76: add U-APSD support on AP side (Jarod Wilson) [1860496] - [wireless] mt76: rely on register macros (Jarod Wilson) [1860496] - [wireless] mt76: fix include in pci.h (Jarod Wilson) [1860496] - [wireless] mt76: allow more channels, allowed in ETSI domain (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix up typo in Kconfig for MT7663U (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce ARP filter offload (Jarod Wilson) [1860496] - [wireless] mt76: usb: rely on mt76_for_each_q_rx (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: re-enable offloading of sequence number assignment (Jarod Wilson) [1860496] - [wireless] wireless: Fix trivial spelling (Jarod Wilson) [1860496] - [wireless] rtlwifi: 8821ae: remove unused path B parameters from swing table (Jarod Wilson) [1860496] - [wireless] rtlwifi: Use const in 8188ee/8723be/8821ae swing_table declarations (Jarod Wilson) [1860496] - [wireless] rtl818x_pci: use generic power management (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Free ieee80211_hw if probing fails (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Prevent leaking urb (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Fix deadlock (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Remove uninitialized_var() usage (Jarod Wilson) [1860496] - [wireless] orinoco_usb: fix spelling mistake (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: Fix endian issue (Jarod Wilson) [1860496] - [wireless] rtlwifi: Fix endian issue in ps.c (Jarod Wilson) [1860496] - [wireless] broadcom: fix wiki website url (Jarod Wilson) [1860496] - [wireless] wireless: fix wiki website url in main Kconfig (Jarod Wilson) [1860496] - [wireless] rtw88: coex: Fix ACL Tx pause during BT inquiry/page (Jarod Wilson) [1860496] - [wireless] mwifiex: Prevent memory corruption handling keys (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix reporting 'operation not supported' error code (Jarod Wilson) [1860496] - [wireless] mwifiex: Use macro MWIFIEX_MAX_BSS_NUM for specifying limit of interfaces (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: add new RFE type 6 (Jarod Wilson) [1860496] - [wireless] rtw88: 8822ce: add support for device ID 0xc82f (Jarod Wilson) [1860496] - [wireless] rtw88: pci: disable aspm for platform inter-op with module parameter (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: Add 8821CE to Kconfig and Makefile (Jarod Wilson) [1860496] - [wireless] rtw88: single rf path chips don't support TX STBC (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add beamformee support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add cck pd settings (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add phy calibration (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add false alarm statistics (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add query rx desc support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add set channel support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add dig related settings (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add set tx power index (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add basic functions (Jarod Wilson) [1860496] - [wireless] brcm80211: brcmsmac: Move LEDs to GPIO descriptors (Jarod Wilson) [1860496] - [wireless] brcmfmac: Transform compatible string for FW loading (Jarod Wilson) [1860496] - [wireless] brcmfmac: set pacing shift before transmitting skb to bus (Jarod Wilson) [1860496] - [wireless] brcmfmac: set state of hanger slot to FREE when flushing PSQ (Jarod Wilson) [1860496] - [wireless] brcmfmac: reset SDIO bus on a firmware crash (Jarod Wilson) [1860496] - [wireless] brcmfmac: do not disconnect for disassoc frame from unconnected AP (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix for wrong disconnection event source information (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix for unable to return to visible SSID (Jarod Wilson) [1860496] - [wireless] brcmfmac: initialize the requested dwell time (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix throughput zero stalls on PM 1 mode due to credit map (Jarod Wilson) [1860496] - [wireless] brcmfmac: update tx status flags to sync with firmware (Jarod Wilson) [1860496] - [wireless] brcmfmac: reserve 2 credits for host tx control path (Jarod Wilson) [1860496] - [wireless] brcmfmac: increase message buffer size for control packets (Jarod Wilson) [1860496] - [wireless] brcmfmac: allow credit borrowing for all access categories (Jarod Wilson) [1860496] - [wireless] brcmfmac: To fix Bss Info flag definition Bug (Jarod Wilson) [1860496] - [wireless] brcmfmac: reduce maximum station interface from 2 to 1 in RSDB mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: keep SDIO watchdog running when console_interval is non-zero (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix invalid permanent MAC address in wiphy (Jarod Wilson) [1860496] - [wireless] brcmfmac: To fix kernel crash on out of boundary access (Jarod Wilson) [1860496] - [net] net: wireless: kerneldoc fixes (Jarod Wilson) [1860496] - [net] net: mac80211: kerneldoc fixes (Jarod Wilson) [1860496] - [wireless] ath11k: fix wmi peer flags in peer assoc command (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for ring backpressure stats (Jarod Wilson) [1860496] - [wireless] ath11k: Add dp tx err stats (Jarod Wilson) [1860496] - [wireless] ath11k: removing redundant reo unlock followed by immediate lock (Jarod Wilson) [1860496] - [wireless] ath11k: add support for spectral scan (Jarod Wilson) [1860496] - [wireless] ath11k: Add direct buffer ring support (Jarod Wilson) [1860496] - [wireless] ath11k: build HE 6 GHz capability (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for 6g scan hint (Jarod Wilson) [1860496] - [wireless] ath11k: Send multiple scan_chan_list messages if required (Jarod Wilson) [1860496] - [wireless] ath11k: Add 6G scan dwell time parameter in scan request command (Jarod Wilson) [1860496] - [wireless] ath11k: set psc channel flag when sending channel list to firmware (Jarod Wilson) [1860496] - [wireless] ath11k: extend peer_assoc_cmd for 6GHz band (Jarod Wilson) [1860496] - [wireless] ath11k: Use freq instead of channel number in rx path (Jarod Wilson) [1860496] - [wireless] ath11k: add support for 6GHz radio in driver (Jarod Wilson) [1860496] - [wireless] ath11k: add 6G frequency list supported by driver (Jarod Wilson) [1860496] - [wireless] net: wireless: intel: fix wiki website url (Jarod Wilson) [1860496] - [wireless] iwlwifi: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: Remove unused inline function iwl_mvm_tid_to_ac_queue (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: fix gcc-10 zero-length-bounds warning (Jarod Wilson) [1860496] - [wireless] ath: fix wiki website url (Jarod Wilson) [1860496] - [wireless] ath10k: Acquire tx_lock in tx error paths (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove redundant assignment to variable ret (Jarod Wilson) [1860496] - [wireless] iwlwifi: fix config variable name in comment (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: Fix avg-power report (Jarod Wilson) [1860496] - [wireless] iwlwifi: Don't IWL_WARN on FW reconfiguration (Jarod Wilson) [1860496] - [wireless] iwlwifi: Extended Key ID support for mvm and dvm (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix firmware filename for sd8997 chipset (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix firmware filename for sd8977 chipset (Jarod Wilson) [1860496] - [net] mac80211: remove STA txq pending airtime underflow warning (Jarod Wilson) [1860496] - [net] mac80211: Fix bug in Tx ack status reporting in 802.3 xmit path (Jarod Wilson) [1860496] - [net] cfg80211: check vendor command doit pointer before use (Jarod Wilson) [1860496] - [net] mac80211: mesh: Free pending skb when destroying a mpath (Jarod Wilson) [1860496] - [net] mac80211: mesh: Free ie data when leaving mesh (Jarod Wilson) [1860496] - [net] mac80211: fix warning in 6 GHz IE addition in mesh mode (Jarod Wilson) [1860496] - [wireless] ath10k: Fix NULL pointer dereference in AHB device probe (Jarod Wilson) [1860496] - [wireless] iwlwifi: Make some Killer Wireless-AC 1550 cards work again (Jarod Wilson) [1860496] - [wireless] ath9k: Fix regression with Atheros 9271 (Jarod Wilson) [1860496] - [net] nl80211: fix memory leak when parsing NL80211_ATTR_HE_BSS_COLOR (Jarod Wilson) [1860496] - [net] nl80211: don't return err unconditionally in nl80211_start_ap() (Jarod Wilson) [1860496] - [net] mac80211: allow rx of mesh eapol frames with default rx key (Jarod Wilson) [1860496] - [net] mac80211: skip mpath lookup also for control port tx (Jarod Wilson) [1860496] - [net] mac80211: Fix dropping broadcast packets in 802.11 encap (Jarod Wilson) [1860496] - [net] mac80211: simplify mesh code (Jarod Wilson) [1860496] - [net] mac80211: fix control port tx status check (Jarod Wilson) [1860496] - [include] ieee80211: Add missing and new AKM suite selector definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix EEPROM buffer size (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix memory leaks in mt7663u_probe (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: do not access uninitialized NAPI structs (Jarod Wilson) [1860496] - [wireless] iwlwifi: fix crash in iwl_dbg_tlv_alloc_trigger (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: don't call iwl_mvm_free_inactive_queue() under RCU (Jarod Wilson) [1860496] - [wireless] wireless: replace '---help---' in Kconfig files with 'help' (Jarod Wilson) [1860496] - [net] net: fix wiki website url mac80211 and wireless files (Jarod Wilson) [1860496] - [uapi] include: fix wiki website url in netlink interface header (Jarod Wilson) [1860496] - [wireless] mt76: overwrite qid for non-bufferable mgmt frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix hw queue mapping (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix lmac queue debugsfs entry (Jarod Wilson) [1860496] - [wireless] mt76: add missing lock configuring coverage class (Jarod Wilson) [1860496] - [net] mac80211: initialize return flags in HE 6 GHz operation parsing (Jarod Wilson) [1860496] - [net] cfg80211: fix management registrations deadlock (Jarod Wilson) [1860496] - [net] cfg80211: support bigger kek/kck key length (Jarod Wilson) [1860496] - [net] mac80211: set short_slot for 6 GHz band (Jarod Wilson) [1860496] - [net] mac80211: Consider 6 GHz band when handling power constraint (Jarod Wilson) [1860496] - [net] mac80211: accept aggregation sessions on 6 GHz (Jarod Wilson) [1860496] - [net] cfg80211: require HE capabilities for 6 GHz band (Jarod Wilson) [1860496] - [net] cfg80211: reject HT/VHT capabilities on 6 GHz band (Jarod Wilson) [1860496] - [net] cfg80211: treat 6 GHz channels as valid regardless of capability (Jarod Wilson) [1860496] - [net] mac80211: Add HE 6GHz capabilities element to probe request (Jarod Wilson) [1860496] - [net] mac80211: use HE 6 GHz band capability and pass it to the driver (Jarod Wilson) [1860496] - [net] mac80211: check the correct bit for EMA AP (Jarod Wilson) [1860496] - [net] mac80211: determine chandef from HE 6 GHz operation (Jarod Wilson) [1860496] - [net] mac80211: avoid using ext NSS high BW if not supported (Jarod Wilson) [1860496] - [net] mac80211: do not allow HT/VHT IEs in 6 GHz mesh mode (Jarod Wilson) [1860496] - [net] mac80211: build HE operation with 6 GHz oper information (Jarod Wilson) [1860496] - [net] mac80211: add HE 6 GHz Band Capability element (Jarod Wilson) [1860496] - [net] cfg80211: add and expose HE 6 GHz band capabilities (Jarod Wilson) [1860496] - [net] mac80211: add HE 6 GHz Band Capabilities into parse extension (Jarod Wilson) [1860496] - [net] cfg80211: handle 6 GHz capability of new station (Jarod Wilson) [1860496] - [include] ieee80211: add HE ext EIDs and 6 GHz capability defines (Jarod Wilson) [1860496] - [include] ieee80211: add code to obtain and parse 6 GHz operation field (Jarod Wilson) [1860496] - [include] ieee80211: definitions for reduced neighbor reports (Jarod Wilson) [1860496] - [net] cfg80211: add a helper to identify 6 GHz PSCs (Jarod Wilson) [1860496] - [net] nl80211: really allow client-only BIGTK support (Jarod Wilson) [1860496] - [net] cfg80211: adapt to new channelization of the 6GHz band (Jarod Wilson) [1860496] - [net] cfg80211: fix 6 GHz frequencies to kHz (Jarod Wilson) [1860496] - [wireless] ath11k: clear DCM max constellation tx value (Jarod Wilson) [1860496] - [wireless] ath11k: reset trigger frame MAC padding duration (Jarod Wilson) [1860496] - [wireless] ath10k: Remove ath10k_qmi_register_service_notifier() declaration (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Set RX filter based to allow broadcast Action frame RX (Jarod Wilson) [1860496] - [wireless] ath9k: Set RX filter based to allow broadcast Action frame RX (Jarod Wilson) [1860496] - [wireless] mwifiex: Add support for NL80211_ATTR_MAX_AP_ASSOC_STA (Jarod Wilson) [1860496] - [wireless] mwifiex: Parse all API_VER_ID properties (Jarod Wilson) [1860496] - [wireless] brcmfmac: 43012 Update MES Watermark (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 43455 CRC error under SDIO 3.0 SDR104 mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: set F2 blocksize and watermark for 4354/4356 SDIO (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 4339 CRC error under SDIO 3.0 SDR104 mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: set F2 blocksize for 4373 (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: remove CCK TX setting when switch channel (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: fix missing brace warning for old compilers (Jarod Wilson) [1860496] - [wireless] rtw88: fix EAPOL 4-way failure by finish IQK earlier (Jarod Wilson) [1860496] - [wireless] rtw88: coex: 8723d: handle BT inquiry cases (Jarod Wilson) [1860496] - [wireless] rtw88: coex: 8723d: set antanna control owner (Jarod Wilson) [1860496] - [wireless] Revert "rtw88: no need to set registers for SDIO" (Jarod Wilson) [1860496] - [wireless] rt2800: enable MFP support unconditionally (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Fix Cypress SDIO IDs macros in common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from b43-sdio driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from ath10k driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from mwifiex driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Change macro names for Marvell 8688 modules (Jarod Wilson) [1860496] - [mmc] mmc: sdio: Fix macro name for Marvell device with ID 0x9134 (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 56 for AX devices (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for range request version 10 (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: fix aux station leak (Jarod Wilson) [1860496] - [wireless] iwlwifi: move txq-specific from trans_pcie to common trans (Jarod Wilson) [1860496] - [wireless] iwlwifi: move iwl_txq and substructures to a common trans header (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen3: indicate 8k/12k RB size to device (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: evaluate dsm to enable 5.2 bands in Indonesia (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: support device specific method (DSM) (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: keep trans instead of trans_pcie in iwl_txq (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: don't count on the FW to set persistence mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: set NO_HE if the regulatory domain forbids it (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: remove set but not used variable 'msta' (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Use kmemdup in mt7615_queue_key_update() (Jarod Wilson) [1860496] - [wireless] mt76: only iterate over initialized rx queues (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for MT7611N (Jarod Wilson) [1860496] - [wireless] mt76: fix wcid allocation issues (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix possible NULL pointer dereference in mt7915_register_ext_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix hw_scan with ssid_type for specified SSID only (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix a handful of spelling mistakes (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch to per-vif power_save support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix some sparse warnings (Jarod Wilson) [1860496] - [wireless] mt76: fix per-driver wcid range checks after wcid array size bump (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix decoded radiotap HE flags (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix NULL pointer deref in mt7615_register_ext_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix sparse warnings: incorrect type initializer (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix some sparse warnings (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add spatial reuse support (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: remove check in mt76x02_mcu_msg_send (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce remain_on_channel support (Jarod Wilson) [1860496] - [net] mac80211: support control port TX status reporting (Jarod Wilson) [1860496] - [net] mac80211: fix HT-Control field reception for management frames (Jarod Wilson) [1860496] - [net] cfg80211: fix CFG82011_CRDA_SUPPORT still mentioning internal regdb (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific Tx rate configuration (Jarod Wilson) [1860496] - [net] mac80211: allow SA-QUERY processing in userspace (Jarod Wilson) [1860496] - [net] nl80211: add ability to report TX status for control port TX (Jarod Wilson) [1860496] - [net] mac80211: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [net] cfg80211: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [include] mac80211: Add new AMPDU factor macro for HE peer caps (Jarod Wilson) [1860496] - [include] ieee80211: S1G defines (Jarod Wilson) [1860496] - [net] nl80211: support scan frequencies in KHz (Jarod Wilson) [1860496] - [net] nl80211: add KHz frequency offset for most wifi commands (Jarod Wilson) [1860496] - [net] cfg80211: add KHz variants of frame RX API (Jarod Wilson) [1860496] - [net] nl80211: simplify peer specific TID configuration (Jarod Wilson) [1860496] - [net] cfg80211: add support for TID specific AMSDU configuration (Jarod Wilson) [1860496] - [net] mac80211: fix variable names in TID config methods (Jarod Wilson) [1860496] - [net] cfg80211: fix mask type in cfg80211_tid_cfg structure (Jarod Wilson) [1860496] - [net] cfg80211: fix debugfs rename crash (Jarod Wilson) [1860496] - [include] ieee80211: Fix incorrect mask for default PE duration (Jarod Wilson) [1860496] - [net] mac80211: mesh: fix discovery timer re-arming issue / crash (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: Fix build error (Jarod Wilson) [1860496] - [wireless] ath11k: Fix some resource leaks in error path in 'ath11k_thermal_register()' (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192ee: remove redundant for-loop (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix memory corruption in dump_station (Jarod Wilson) [1860496] - [wireless] rtw88: no need to set registers for SDIO (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: fix incorrect setting of ldo_pwr (Jarod Wilson) [1860496] - [wireless] rtw88: rename rtw88.ko/rtwpci.ko to rtw88_core.ko/rtw88_pci.ko (Jarod Wilson) [1860496] - [wireless] rtw88: extract: remove the unused after extracting (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8723d an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8822b an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8822c an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: export symbols about pci interface (Jarod Wilson) [1860496] - [wireless] rtw88: extract: export symbols used in chip functionalities (Jarod Wilson) [1860496] - [wireless] rtlwifi: Fix a double free in _rtl_usb_tx_urb_setup() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix typo defining ps work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: configure bss info adding the interface (Jarod Wilson) [1860496] - [wireless] mt76: enable p2p support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reduce hw scan timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not report scan_complete twice to mac80211 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix the usage WoW with net detect support (Jarod Wilson) [1860496] - [wireless] ath11k: fix htt stats module not handle multiple skbs (Jarod Wilson) [1860496] - [wireless] rtl8187: Remove unused variable rtl8225z2_tx_power_ofdm (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: fix sparse warnings for power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add 8723DE to Kconfig and Makefile (Jarod Wilson) [1860496] - [wireless] rtw88: fill zeros to words 0x06 and 0x07 of security cam entry (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add coex support (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: set ltecoex register address in chip_info (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: implement flush queue (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add shutdown callback to disable BT USB suspend (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add IQ calibration (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add LC calibration (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix WPA/WPA2-PSK 4-way handshake offload and SAE offload failures (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix possible deadlock in mt7915_stop (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: allocate proper size for tlv tags (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add debugfs to track TxBF status (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add TxBF capabilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Tx beamformee support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Tx beamformer support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: introduce mt7915_get_he_phy_cap (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: usb: cancel ps work stopping the vif (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: add missing register definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: copy key pointer in mt7663u_mac_write_txwi (Jarod Wilson) [1860496] - [wireless] mt76: set runtime stream caps by mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: enable firmware module debug support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add tsf related callbacks (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: set peer Tx fixed rate through debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add .sta_statistics support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add .sta_add_debugfs support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Rx radiotap header support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add HE capabilities support for peers (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add HE bss_conf support for interfaces (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: register per-phy HE capabilities for each interface (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: implement HE per-rate tx power support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: enable Rx HE rate reporting (Jarod Wilson) [1860496] - [wireless] mt76: add mac80211 driver for MT7915 PCIe-based chipsets (Jarod Wilson) [1860496] - [wireless] mt76: add HE phy modes and hardware queue (Jarod Wilson) [1860496] - [wireless] mt76: adjust wcid size to support new 802.11ax generation (Jarod Wilson) [1860496] - [wireless] mt76: add Rx stats support for radiotap (Jarod Wilson) [1860496] - [wireless] mt76: add support for HE RX rate reporting (Jarod Wilson) [1860496] - [wireless] mt76: avoid rx reorder buffer overflow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: scan all channels if not specified (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: add support to sched scan with randomise addr (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce WoW with net detect support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix delta tx power for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix target power parsing (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix ibss mode for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: check return value of mt7615_eeprom_get_power_index (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: read tx streams from eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce beacon_loss mcu event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add gtk rekey offload support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce PM support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: introduce suspend/resume to mt7663u (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add WoW support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_set_hif_suspend mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce support for hardware beacon filter (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: free pci_vector if mt7615_pci_probe fails (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add passive mode for hw scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not mark sched_scan disabled in mt7615_scan_work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_check_offload_capability routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix ssid configuration in mt7615_mcu_hw_scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: remove duplicate error message (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix getting maximum tx power from eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: set spatial extension index (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: remove check in mt7663_load_n9 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: add the possibility to load firmware v2 (Jarod Wilson) [1860496] - [wireless] mt76: mt76x0: enable MCS 8 and MCS9 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix event report in mt7615_mcu_bss_event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add sta pointer to mt7615_mcu_add_bss_info signature (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix up BMC entry indicated to unicmd firmware (Jarod Wilson) [1860496] - [wireless] mt76: enable TDLS support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mcu bss upload before creating the sta (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: fix tx status rate index calculation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix tx status rate index calculation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not adjust MAC timings if the device is not running (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: adjust timing in mt7615_mac_set_timing to match fw/hw values (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: never use an 802.11b CF-End rate on 5GHz (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: never use an 802.11b CF-End rate on 5GHz (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use larger rx buffers if VHT is supported (Jarod Wilson) [1860496] - [wireless] mt76: fix A-MPDU density handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix sta ampdu factor for VHT (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: enable AirTimeFairness (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework mt7615_mac_sta_poll for usb code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix aid configuration in mt7615_mcu_wtbl_generic_tlv (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7615_driver_own routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix max wtbl size for 7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7615_firmware_own for mt7663e (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: parse mcu return code for unified commands (Jarod Wilson) [1860496] - [wireless] mt76: add rx queues info to mt76 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: make Kconfig entry obvious for MT7663E (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce 802.11 PS support in sta mode (Jarod Wilson) [1860496] - [wireless] mt76: remove PS_NULLFUNC_STACK capability (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: provide aid info to the mcu (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable aspm by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable scs for mt7663 driver (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663u support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move core shared code in mt7615-common module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible deadlock in mt7615_stop (Jarod Wilson) [1860496] - [wireless] mt76: remove unnecessary annotations (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable MSI by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework IRQ handling to prepare for MSI support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix DMA unmap length (Jarod Wilson) [1860496] - [wireless] mt76: mt7622: fix DMA unmap length (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: set hw scan limits only for firmware with offload support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable hw/sched scan ops for non-offload firmware (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix aggr range entry in debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible division by 0 in mt7615_mac_update_mib_stats (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for applying tx DPD calibration from EEPROM (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for applying DC offset calibration from EEPROM (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Delete an error message in mt7622_wmac_probe() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not always reset the dfs state setting the channel (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: correct the name of the rom patch (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add address parameter to mt7615_eeprom_init (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_wtbl_desc data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework wtbl key configuration (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rely on mt7622 queue scheme for mt7663u (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mac_wtbl_addr in mac.h (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce __mt7663_load_firmware routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mac_update_rate_desc routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663u support to mt7615_write_txwi (Jarod Wilson) [1860496] - [wireless] mt76: add headroom and tailroom to mt76_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove unnecessary register operations (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce rlm tlv in bss_info mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce BSS absence event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce scheduled scan support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce hw scan support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: keep Rx filters as the default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_set_channel_domain mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add ethool support to mt7663 driver (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: disable RDD commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: make scs configurable per phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: enable nf estimation (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix mt7615_mac_cca_stats_reset routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add more useful Tx mib counters (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: cleanup mib related defines and structs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable aggr_stats for both phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: modify mt7615_ampdu_stat_read for each phy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x0: pci: add mt7610 PCI ID (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2u: introduce Mercury UD13 support (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: Add support for newer versions of the XBox One wifi adapter (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: fix handling MCU timeouts during hw restart (Jarod Wilson) [1860496] - [wireless] rndis_wlan: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] mwl8k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] rndis_wlan: Remove logically dead code (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove Comparison to bool in brcmf_p2p_send_action_frame() (Jarod Wilson) [1860496] - [wireless] brcmfmac: make non-global functions static (Jarod Wilson) [1860496] - [wireless] brcmfmac: Use seq/seq_len and set iv_initialize when plumbing of rxiv in (GTK) keys (Jarod Wilson) [1860496] - [wireless] brcmfmac: use actframe_abort to cancel ongoing action frame (Jarod Wilson) [1860496] - [wireless] brcmfmac: set security after reiniting interface (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 802.1d priority to ac mapping for pcie dongles (Jarod Wilson) [1860496] - [wireless] brcmfmac: map 802.1d priority to precedence level based on AP WMM params (Jarod Wilson) [1860496] - [wireless] ath11k: convert to devm_platform_get_and_ioremap_resource (Jarod Wilson) [1860496] - [wireless] ath11k: remove redundant initialization of pointer info (Jarod Wilson) [1860496] - [wireless] ath10k: fix ath10k_pci struct layout (Jarod Wilson) [1860496] - [wireless] ath10k: fix gcc-10 zero-length-bounds warnings (Jarod Wilson) [1860496] - [wireless] ath10k: remove experimental tag from SDIO and SNOC busses in Kconfig (Jarod Wilson) [1860496] - [wireless] ath10k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath11k: Remove bus layer includes from upper layer (Jarod Wilson) [1860496] - [wireless] ath11k: Add drv private for bus opaque struct (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for multibus support (Jarod Wilson) [1860496] - [wireless] ath10k: fix __le32 warning in ath10k_wmi_tlv_op_gen_request_peer_stats_info() (Jarod Wilson) [1860496] - [wireless] ath10k: Remove msdu from idr when management pkt send fails (Jarod Wilson) [1860496] - [wireless] ath10k: Skip handling del_server during driver exit (Jarod Wilson) [1860496] - [wireless] ath11k: remove stale monitor status descriptor (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg_ini: differentiate ax210 hw with same hw type (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: skip fragmented receive buffers (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove outdated copyright print/module statement (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: don't transmit on unallocated queue (Jarod Wilson) [1860496] - [wireless] iwlwifi: tx: enable A-MSDU in low latency mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: use longer queues for 256-BA (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen2: use DMA pool for byte-count tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove some dead code (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: mark a variable __maybe_unused (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: attempt to allocate smaller queues (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: allocate much smaller byte-count table (Jarod Wilson) [1860496] - [wireless] iwlwifi: dump api version in yaml format (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: convert all AX101 devices to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove occurrences of 22000 in the FW name defines (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: convert QnJ with Hr to the device table (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove mangling for iwl_ax101_cfg_qu_hr (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove outdated comment about PCI RTPM reference (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add IML/ROM information to the assertion dumps (Jarod Wilson) [1860496] - [wireless] iwlwifi: move iwl_set_soc_latency to iwl-drv to be used by other op_modes (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: remove magic number (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: initialize iwl_dev_tx_power_cmd to zero (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: set debug descriptor to NULL outside of iwl_fw_free_dump_desc (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 55 for AX devices (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add D3 resume timepoint (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: set properly station flags in STA_HE_CTXT_CMD (Jarod Wilson) [1860496] - [wireless] iwlwifi: avoid debug max amsdu config overwriting itself (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove iwlmvm's tfd_q_hang_detect module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: stop supporting swcrypto and bt_coex_active module parameters (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for range request command version 9 (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't access TLV before verifying len (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove antenna_coupling module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: use hweight_long instead of bit manipulating (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add support for parsing SHARED_MEM_ALLOC version 4 (Jarod Wilson) [1860496] - [wireless] iwlwifi: fw api: fix PHY data 2/3 position (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: remove Comparison to bool in rf.c (Jarod Wilson) [1860496] - [wireless] mwifiex: avoid -Wstringop-overflow warning (Jarod Wilson) [1860496] - [wireless] rtlwifi: remove comparison of 0/1 to bool variable (Jarod Wilson) [1860496] - [wireless] brcmsmac: remove Comparison to bool in brcms_b_txstatus() (Jarod Wilson) [1860496] - [wireless] brcmfmac: Add P2P Action Frame retry delay to fix GAS Comeback Response failure issue (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix P2P Group Formation failure via Go-neg method (Jarod Wilson) [1860496] - [wireless] brcmfmac: support the second p2p connection (Jarod Wilson) [1860496] - [wireless] rtw88: fix an issue about leak system resources (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add interface configurations table (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Set IG register for CCK rate (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add chip_ops::false_alarm_statistics (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: some chips don't support LDPC (Jarod Wilson) [1860496] - [wireless] rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add set_channel (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add query_rx_desc (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add DIG parameter (Jarod Wilson) [1860496] - [wireless] rtlwifi: use true, false for bool variable in rtl_init_rfkill() (Jarod Wilson) [1860496] - [wireless] rtw88: Use udelay instead of usleep in atomic context (Jarod Wilson) [1860496] - [wireless] ath11k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Silence undersized packet warnings (Jarod Wilson) [1860496] - [wireless] ath6kl: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath11k: fix kernel panic by freeing the msdu received with invalid length (Jarod Wilson) [1860496] - [wireless] ath11k: Add support to reset htt peer stats (Jarod Wilson) [1860496] - [wireless] ath11k: add tx hw 802.11 encapsulation offloading support (Jarod Wilson) [1860496] - [wireless] ath11k: fix resource unavailability for htt stats after peer stats display (Jarod Wilson) [1860496] - [wireless] ath11k: use true,false for bool variables (Jarod Wilson) [1860496] - [wireless] ath10k: Add support for targets without trustzone (Jarod Wilson) [1860496] - [wireless] ath10k: Setup the msa resources before qmi init (Jarod Wilson) [1860496] - [wireless] ath10k: remove the max_sched_scan_reqs value (Jarod Wilson) [1860496] - [wireless] ath10k: Avoid override CE5 configuration for QCA99X0 chipsets (Jarod Wilson) [1860496] - [wireless] brcmfmac: no need to check return value of debugfs_create functions (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove comparison to bool in brcmf_fws_attach() (Jarod Wilson) [1860496] - [wireless] brcmfmac: add vendor ie for association responses (Jarod Wilson) [1860496] - [wireless] brcmfmac: only generate random p2p address when needed (Jarod Wilson) [1860496] - [wireless] brcmfmac: p2p cert 6.1.9-support GOUT handling p2p presence request (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove arp_hostip_clear from brcmf_netdev_stop (Jarod Wilson) [1860496] - [wireless] brcmfmac: keep apsta enabled when AP starts with MCHAN feature (Jarod Wilson) [1860496] - [wireless] rtw88: fix spelling mistake "fimrware" -> "firmware" (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: update phy parameter tables to v50 (Jarod Wilson) [1860496] - [wireless] ath11k: add DBG_MAC prints to track vdev events (Jarod Wilson) [1860496] - [wireless] ath11k: fix mgmt_tx_wmi cmd sent to FW for deleted vdev (Jarod Wilson) [1860496] - [wireless] ath11k: fix error return code in ath11k_dp_alloc() (Jarod Wilson) [1860496] - [wireless] ath10k: fix possible memory leak in ath10k_bmi_lz_data_large() (Jarod Wilson) [1860496] - [wireless] mac80211: fix memory overlap due to variable length param (Jarod Wilson) [1860496] - [net] mac80211: TX legacy rate control for Beacon frames (Jarod Wilson) [1860496] - [wireless] ath11k: use GFP_ATOMIC under spin lock (Jarod Wilson) [1860496] - [wireless] ath10k: correct tx bitrate of iw for SDIO (Jarod Wilson) [1860496] - [wireless] ath10k: add bitrate parse for peer stats info (Jarod Wilson) [1860496] - [wireless] ath10k: add rx bitrate report for SDIO (Jarod Wilson) [1860496] - [wireless] ath10k: enable firmware peer stats info for wmi tlv (Jarod Wilson) [1860496] - [wireless] ath5k: remove conversion to bool in ath5k_ani_calibration() (Jarod Wilson) [1860496] - [wireless] ath9k: add calibration timeout for AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: invalidate all calibrations at once (Jarod Wilson) [1860496] - [wireless] ath9k: interleaved NF calibration on AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: do not miss longcal on AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: remove needless NFCAL_PENDING flag setting (Jarod Wilson) [1860496] - [wireless] ath9k: fix AR9002 ADC and NF calibrations (Jarod Wilson) [1860496] - [wireless] rtw88: fix sparse warnings for download firmware routine (Jarod Wilson) [1860496] - [wireless] ath10k: add statistics of tx retries and tx failed when tx complete disable (Jarod Wilson) [1860496] - [wireless] ath10k: enable rx duration report default for wmi tlv (Jarod Wilson) [1860496] - [wireless] ath11k: fix reo flush send (Jarod Wilson) [1860496] - [wireless] iwlwifi: debug: set NPK buffer in context info (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add new structs for So devices with long latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add new structure for Qu devices with medium latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: tell firmware about required LTR delay (Jarod Wilson) [1860496] - [wireless] iwlwifi: update few product names in AX family (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add cfgs for SoCs with device ID 0x4FD0 (Jarod Wilson) [1860496] - [wireless] iwlwifi: add new cards for AX family (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: read TAS table from ACPI and send it to the FW (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove fw_monitor module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove deprecated and unused iwl_mvm_keyinfo struct (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add framework for specific phy configuration (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: move iwl_pcie_ctxt_info_alloc_dma() to user (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: support IWL_FW_INI_TIME_POINT_HOST_ALIVE_TIMEOUT time point (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add DCM flag to rate pretty-print (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen2: minor code cleanups in byte table update (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add n_window/ampdu to tx_queue debugfs (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: use seq_file for tx_queue debugfs file (Jarod Wilson) [1860496] - [wireless] iwlwifi: support version 9 of WOWLAN_GET_STATUS notification (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: support multiple dumps in legacy dump flow (Jarod Wilson) [1860496] - [wireless] iwlwifi: move API version lookup to common code (Jarod Wilson) [1860496] - [wireless] iwlwifi: nvm: use iwl_nl80211_band_from_channel_idx (Jarod Wilson) [1860496] - [net] mac80211: fix two missing documentation entries (Jarod Wilson) [1860496] - [net] cfg80211: reject channels/chandefs with KHz offset >= 1000 (Jarod Wilson) [1860496] - [net] mac80211: add freq_offset to RX status (Jarod Wilson) [1860496] - [net] mac80211: handle channel frequency offset (Jarod Wilson) [1860496] - [net] cfg80211: express channels with a KHz component (Jarod Wilson) [1860496] - [net] ieee80211: share 802.11 unit conversion helpers (Jarod Wilson) [1860496] - [net] mac80211: minstrel_ht_assign_best_tp_rates: remove redundant test (Jarod Wilson) [1860496] - [net] mac80211: Fail association when AP has no legacy rates (Jarod Wilson) [1860496] - [net] mac80211: agg-tx: add an option to defer ADDBA transmit (Jarod Wilson) [1860496] - [net] mac80211: agg-tx: refactor sending addba (Jarod Wilson) [1860496] - [net] mac80211: Skip entries with HE membership selector (Jarod Wilson) [1860496] - [net] cfg80211: Parse HE membership selector (Jarod Wilson) [1860496] - [net] mac80211: Don't destroy auth data in case of anti-clogging (Jarod Wilson) [1860496] - [net] mac80211: add twt_protected flag to the bss_conf structure (Jarod Wilson) [1860496] - [net] mac80211: implement Operating Mode Notification extended NSS support (Jarod Wilson) [1860496] - [net] mac80211: Process multicast RX registration for Action frames (Jarod Wilson) [1860496] - [net] nl80211: allow client-only BIGTK support (Jarod Wilson) [1860496] - [net] cfg80211: support multicast RX registration (Jarod Wilson) [1860496] - [net] cfg80211: change internal management frame registration API (Jarod Wilson) [1860496] - [net] mac80211: Report beacon protection failures to user space (Jarod Wilson) [1860496] - [net] cfg80211: Unprotected Beacon frame RX indication (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: remove support for fw scan api v13 (Jarod Wilson) [1860496] - [net] mac80211: fix drv_config_iface_filter() behaviour (Jarod Wilson) [1860496] - [net] mac80211: mlme: remove duplicate AID bookkeeping (Jarod Wilson) [1860496] - [wireless] ath10k: drop the TX packet which size exceed credit size for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the invalid tx/rx chainmask configuration (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: initialize mac/bb/rf basic functions (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Organize chip TX/RX FIFO (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: implement set_tx_power_index ops (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: 11N chips don't support H2C queue (Jarod Wilson) [1860496] - [wireless] rtw88: decompose while(1) loop of power sequence polling command (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add mac power-on/-off function (Jarod Wilson) [1860496] - [wireless] rtw88: no need to send additional information to legacy firmware (Jarod Wilson) [1860496] - [wireless] rtw88: add legacy firmware download for 8723D devices (Jarod Wilson) [1860496] - [wireless] ath10k: add flush tx packets for SDIO chip (Jarod Wilson) [1860496] - [wireless] ath10k: enable alt data of TX path for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: add htt TX bundle for sdio (Jarod Wilson) [1860496] - [wireless] ath11k: remove conversion to bool in ath11k_debug_fw_stats_process() (Jarod Wilson) [1860496] - [wireless] ath11k: remove conversion to bool in ath11k_dp_rxdesc_mpdu_valid() (Jarod Wilson) [1860496] - [wireless] rtw88: set power trim according to efuse PG values (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add read_efuse to recognize efuse info from map (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add new chip op efuse_grant() to control efuse access (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add cfg_ldo25 to control LDO25 (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add RF read/write ops (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add power sequence (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add beamform wrapper functions (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add basic chip capabilities (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: fix warning comparison to bool (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8821ae: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723be: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192ee: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] ath10k: hif: make send_complete_check op optional (Jarod Wilson) [1860496] - [wireless] ath10k: sdio: remove _hif_ prefix from functions not part of hif interface (Jarod Wilson) [1860496] - [wireless] ath10k: improve power save performance for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: rename ath10k_hif_swap_mailbox() to ath10k_hif_start_post() (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove leading space (Jarod Wilson) [1860496] - [wireless] brcmsmac: make brcms_c_stf_ss_update() void (Jarod Wilson) [1860496] - [wireless] brcmsmac: Add missing annotation for brcms_down() (Jarod Wilson) [1860496] - [wireless] brcmsmac: Add missing annotation for brcms_rfkill_set_hw_state() (Jarod Wilson) [1860496] - [wireless] hostap: Add missing annotations for prism2_bss_list_proc_start() and prism2_bss_list_proc_stop (Jarod Wilson) [1860496] - [wireless] rtw88: add support for set/get antennas (Jarod Wilson) [1860496] - [wireless] rtw88: make rtw_chip_ops::set_antenna return int (Jarod Wilson) [1860496] - [wireless] ath11k: Add dynamic tcl ring selection logic with retry mechanism (Jarod Wilson) [1860496] - [wireless] ath11k: cleanup reo command error code overwritten (Jarod Wilson) [1860496] - [wireless] ath10k: Fix typo in warning messages (Jarod Wilson) [1860496] - [wireless] ath11k: Fix rx_filter flags setting for per peer rx_stats (Jarod Wilson) [1860496] - [wireless] ath11k: Fix fw assert by setting proper vht cap (Jarod Wilson) [1860496] - [wireless] ath11k: Cleanup in pdev destroy and mac register during crash on recovery (Jarod Wilson) [1860496] - [wireless] brcmsmac: make brcms_c_set_mac() void (Jarod Wilson) [1860496] - [wireless] rtw88: Add delay on polling h2c command status bit (Jarod Wilson) [1860496] - [wireless] brcm80211: remove redundant pointer 'address' (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: fix spelling mistake "chang" -> "change" (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix wrong location to get firmware feature (Jarod Wilson) [1860496] - [wireless] rtw88: Make two functions static (Jarod Wilson) [1860496] - [net] cfg80211: fix kernel-doc notation (Jarod Wilson) [1860496] - [wireless] ath11k: rx path optimizations (Jarod Wilson) [1860496] - [wireless] ath11k: set IRQ_DISABLE_UNLAZY flag for DP interrupts (Jarod Wilson) [1860496] - [wireless] ath11k: Fix TWT radio count (Jarod Wilson) [1860496] - [wireless] ath11k: Modify the interrupt timer threshold (Jarod Wilson) [1860496] - [wireless] ath11k: fix duplication peer create on same radio (Jarod Wilson) [1860496] - [wireless] ath10k: change ATH10K_SDIO_BUS_REQUEST_MAX_NUM from 64 to 1024 (Jarod Wilson) [1860496] - [wireless] ath10k: disable TX complete indication of htt for sdio (Jarod Wilson) [1860496] - [wireless] ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb (Jarod Wilson) [1860496] - [wireless] ath9x: Fix stack-out-of-bounds Write in ath9k_hif_usb_rx_cb (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Write in ath9k_htc_rx_msg (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Read in ath9k_wmi_ctrl_rx (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Read in htc_connect_service (Jarod Wilson) [1860496] - [wireless] ath10k: fix kernel null pointer dereference (Jarod Wilson) [1860496] - [wireless] ath10k: enable radar detection in secondary segment (Jarod Wilson) [1860496] - [wireless] ath10k: enable VHT160 and VHT80+80 modes (Jarod Wilson) [1860496] - [wireless] ath11k: Avoid mgmt tx count underflow (Jarod Wilson) [1860496] - [wireless] ath11k: Increase the tx completion ring size (Jarod Wilson) [1860496] - [wireless] ath11k: fix error message to correctly report the command that failed (Jarod Wilson) [1860496] - [wireless] ath11k: add pktlog checksum in trace events to support pktlog (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the race condition in firmware dump work queue (Jarod Wilson) [1860496] - [wireless] ath11k: Add sta debugfs support to configure ADDBA and DELBA (Jarod Wilson) [1860496] - [wireless] ath11k: fix compiler warnings without CONFIG_THERMAL (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove newline from rs_pretty_print_rate() (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: make iwl_pcie_cmdq_reclaim static (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 53 for 22000 series (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove IWL_FW_DBG_DOMAIN macro (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: enable yoyo by default (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: support FW APIs with variable number of profiles (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't block dumping internal memory when not in SRAM mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove support for QnJ HR FPGA (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove support for QnJ Hr STEP A (Jarod Wilson) [1860496] - [wireless] iwlwifi: add trans_cfg for devices with long latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: add support for version 2 of SOC_CONFIGURATION_CMD (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for non EDCA based measurements (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove unnecessary cfg mangling for Qu C and QuZ with Jf (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert QnJ with Jf devices to new config table (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert all Qu with Jf devices to the new config table (Jarod Wilson) [1860496] - [wireless] iwlwifi: add HW step to new cfg device table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove some unused extern declarations from iwl-config.h (Jarod Wilson) [1860496] - [wireless] iwlwifi: move integrated, extra_phy and soc_latency to trans_cfg (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: enable SF also when we have HE (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove redundant iwl9560_2ac_cfg struct (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: rs-fw: fix some indentation (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: support scan req cmd ver 14 (Jarod Wilson) [1860496] - [wireless] iwlwifi: pass trans and NVM data to HE capability parsing (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: implement read_config32 (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add PCI config space region type (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add soc latency support (Jarod Wilson) [1860496] - [wireless] hostap: convert to struct proc_ops (Jarod Wilson) [1860496] - [wireless] rtw88: fix non-increase management packet sequence number (Jarod Wilson) [1860496] - [wireless] brcmfmac: add USB autosuspend feature support (Jarod Wilson) [1860496] - [wireless] brcmfmac: increase max hanger slots from 1K to 3K in fws layer (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix the incorrect return value in brcmf_inform_single_bss() (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix double freeing in the fmac usb data path (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix driver crash on USB control transfer timeout (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: Feed current txrate information for mac80211 (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: add enumeration for channel bandwidth (Jarod Wilson) [1860496] - [wireless] rtw88: add a debugfs entry to enable/disable coex mechanism (Jarod Wilson) [1860496] - [wireless] rtw88: add a debugfs entry to dump coex's info (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: Fix sparse warning: cast from restricted __le16 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing declaration in mt7615.h (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix endianness in unified command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7663e firmware struct endianness (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: config RF table path B before path A (Jarod Wilson) [1860496] - [wireless] rtw88: kick off TX packets once for higher efficiency (Jarod Wilson) [1860496] - [wireless] rtw88: pci: define a mask for TX/RX BD indexes (Jarod Wilson) [1860496] - [wireless] rtw88: associate reserved pages with each vif (Jarod Wilson) [1860496] - [wireless] rtw88: extract alloc rsvd_page and h2c skb routines (Jarod Wilson) [1860496] - [wireless] brcmfmac: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: marvell: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] hostap: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: ti: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: realtek: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] ath10k: Fill GCMP MIC length for PMF (Jarod Wilson) [1860496] - [net] mac80211: driver can remain on channel if not using chan_ctx (Jarod Wilson) [1860496] - [net] nl80211: clarify code in nl80211_del_station() (Jarod Wilson) [1860496] - [net] cfg80211: Configure PMK lifetime and reauth threshold for PMKSA entries (Jarod Wilson) [1860496] - [net] mac80211: Read rx_stats with perCPU pointers (Jarod Wilson) [1860496] - [net] mac80211: Allow deleting stations in ibss mode to reset their state (Jarod Wilson) [1860496] - [net] cfg80211: Add support for userspace to reset stations in IBSS mode (Jarod Wilson) [1860496] - [net] mac80211: consider WLAN_EID_EXT_HE_OPERATION for parsing CRC (Jarod Wilson) [1860496] - [uapi] nl80211: add PROTECTED_TWT nl80211 extended feature (Jarod Wilson) [1860496] - [net] mac80211: HE: set missing bss_conf fields in AP mode (Jarod Wilson) [1860496] - [net] nl80211: pass HE operation element to the driver (Jarod Wilson) [1860496] - [net] nl80211/cfg80211: add support for non EDCA based ranging measurement (Jarod Wilson) [1860496] - [net] mac80211: don't leave skb->next/prev pointing to stack (Jarod Wilson) [1860496] - [net] mac80211: update documentation about tx power (Jarod Wilson) [1860496] - [net] mac80211: handle no-preauth flag for control port (Jarod Wilson) [1860496] - [net] nl80211: add no pre-auth attribute and ext. feature flag for ctrl. port (Jarod Wilson) [1860496] - [net] cfg80211: fix documentation format (Jarod Wilson) [1860496] - [wireless] ath11k: Perform per-msdu rx processing (Jarod Wilson) [1860496] - [wireless] ath11k: Configure hash based reo destination ring selection (Jarod Wilson) [1860496] - [wireless] ath11k: Adding proper validation before accessing tx_stats (Jarod Wilson) [1860496] - [wireless] ath11k: dump SRNG stats during FW assert (Jarod Wilson) [1860496] - [wireless] ath11k: fill channel info from rx channel (Jarod Wilson) [1860496] - [wireless] ath11k: Supporting RX ring backpressure HTT event and stats handling (Jarod Wilson) [1860496] - [wireless] iwlwifi: move AX200 devices to the new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove trans entries from COMMON 9260 macro (Jarod Wilson) [1860496] - [wireless] iwlwifi: move shared clock entries to new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: move pu devices to new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove 9260 devices with 0x1010 and 0x1210 subsytem IDs (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert the 9260-1x1 device to use the new parameters (Jarod Wilson) [1860496] - [wireless] iwlwifi: move TH1 devices to the new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: map 9461 and 9462 using RF type and RF ID (Jarod Wilson) [1860496] - [wireless] iwlwifi: add Pu/PnJ/Th device values to differentiate them (Jarod Wilson) [1860496] - [wireless] iwlwifi: add GNSS differentiation to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: add mac/rf types and 160MHz to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: combine 9260 cfgs that only change names (Jarod Wilson) [1860496] - [wireless] iwlwifi: move the remaining 0x2526 configs to the new table (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663e support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: get rid of sta_rec_wtbl data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce set_ba uni command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add more uni mcu commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce set_bmc and st_sta for uni commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce uni cmd command types (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_init_mac_chain routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_eeprom_parse_hw_band_cap routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_{driver, firmware}_own (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_reg_map (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_register_map (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce MCU_FW_PREFIX for fw mcu commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move more mcu commands in mt7615_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework mt7615_mcu_set_bss_info using skb APIs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rely on skb API for mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mcu_set_sta in mt7615_mcu_ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mcu_set_bmc to mt7615_mcu_ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7615_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_send_message routine (Jarod Wilson) [1860496] - [wireless] mt76: always init to 0 mcu messages (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_init_device routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: cleanup fw queue just for mmio devices (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_wait_response (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_fill_msg (Jarod Wilson) [1860496] - [wireless] mt76: remove variable 'val' set but not used (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove a stray if statement (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: reset MCU timeout counter earlier in watchdog reset (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix monitor injection of beacon frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: make dynamic sensitivity adjustment configurable via debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: add upper limit for dynamic sensitivity minimum receive power (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix antenna mask initialization in DBDC mode (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rely only on data buffer for usb control messagges (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: fix a possible memory leak in mt76u_init (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: loop over all possible rx queues in mt76u_rx_tasklet (Jarod Wilson) [1860496] - [wireless] ath11k: add handling for BSS color (Jarod Wilson) [1860496] - [wireless] ath11k: add WMI calls required for handling BSS color (Jarod Wilson) [1860496] - [wireless] ath11k: set queue_len to 4096 (Jarod Wilson) [1860496] - [wireless] ath11k: enable PN offload (Jarod Wilson) [1860496] - [wireless] ath11k: handle RX fragments (Jarod Wilson) [1860496] - [wireless] rtw88: remove unused member of struct rtw_hal (Jarod Wilson) [1860496] - [wireless] ath5k: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1860496] - [wireless] ath11k: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1860496] - [wireless] ath10k: allow qca988x family to support ack rssi of tx data packets (Jarod Wilson) [1860496] - [wireless] ath5k: Add proper dependency for ATH5K_AHB (Jarod Wilson) [1860496] - [wireless] ath11k: add thermal sensor device support (Jarod Wilson) [1860496] - [wireless] ath11k: add thermal cooling device support (Jarod Wilson) [1860496] - [wireless] ath10k: fix not registering airtime of 11a station with WMM disable (Jarod Wilson) [1860496] - [wireless] ath11k: config reorder queue for all tids during peer setup (Jarod Wilson) [1860496] - [wireless] ath10k: fix unsupported chip reset debugs file write (Jarod Wilson) [1860496] - [wireless] ath10k: use kzalloc to read for ath10k_sdio_hif_diag_read (Jarod Wilson) [1860496] - [wireless] ath10k: start recovery process when read int status fail for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: add QCA9377 sdio hw_param item (Jarod Wilson) [1860496] - [wireless] ath10k: avoid consecutive OTP download to reduce boot time (Jarod Wilson) [1860496] - [net] mac80211: Add api to support configuring TID specific configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific RTSCTS configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific AMPDU configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific retry configuration (Jarod Wilson) [1860496] - [net] nl80211: modify TID-config API (Jarod Wilson) [1860496] - [net] nl80211: Add NL command to support TID speicific configurations (Jarod Wilson) [1860496] - [net] mac80211: Beacon protection using the new BIGTK (STA) (Jarod Wilson) [1860496] - [net] mac80211: Beacon protection using the new BIGTK (AP) (Jarod Wilson) [1860496] - [net] mac80211: Update BIP to support Beacon frames (Jarod Wilson) [1860496] - [net] mac80211: Support BIGTK configuration for Beacon protection (Jarod Wilson) [1860496] - [net] cfg80211: Support key configuration for Beacon protection (BIGTK) (Jarod Wilson) [1860496] - [net] cfg80211: More error messages for key addition failures (Jarod Wilson) [1860496] - [net] cfg80211: fix indentation errors (Jarod Wilson) [1860496] - [net] cfg80211: merge documentations of field "dev" (Jarod Wilson) [1860496] - [net] cfg80211: merge documentations of field "debugfsdir" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "reg_notifier" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "perm_addr" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "_net" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "registered" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "privid" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "probe_resp_offload" (Jarod Wilson) [1860496] - [net] Revert "nl80211: add src and dst addr attributes for control port tx/rx" (Jarod Wilson) [1860496] - [net] Revert "mac80211: support NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_MAC_ADDRS" (Jarod Wilson) [1860496] - [net] cfg80211: remove support for adjacent channel compensation (Jarod Wilson) [1860496] - [net] mac80211: check vif pointer before airtime calculation (Jarod Wilson) [1860496] - [net] cfg80211: Pass lockdep expression to RCU lists (Jarod Wilson) [1860496] - [wireless] mwifiex: change license text from MARVELL to NXP (Jarod Wilson) [1860496] - [wireless] mt76: Introduce mt76_mcu data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove rx_mask in mt7615_eeprom_parse_hw_cap (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rename stat_wq in wq (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: extend RX scatter gather number (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rely on mt76_queues_read for mt7622 (Jarod Wilson) [1860496] - [wireless] mt76: do not set HOST_BROADCAST_PS_BUFFERING for mt7615 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework rx phy index handling (Jarod Wilson) [1860496] - [wireless] mt76: fix rounding issues on converting per-chain and combined txpower (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: avoid starting the MAC too early (Jarod Wilson) [1860496] - [wireless] mt76: avoid extra RCU synchronization on station removal (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix monitor mode on second PHY (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix adding active monitor interfaces (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch mt7615_mcu_set_rx_ba to v2 format (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch mt7615_mcu_set_tx_ba to v2 format (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use new tag sta_rec_wtbl (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add starec operating flow for firmware v2 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add a helper to encapsulate sta_rec operation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: simplify mcu_set_sta flow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: simplify mcu_set_bmc flow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for testing hardware reset (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement hardware reset support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report firmware log event messages (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix and rework tx power handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add Kconfig entry for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable DBDC on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: decrease rx ring size for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement DMA support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement probing and firmware loading on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable 5 GHz on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add calibration free support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add eeprom support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add dma and tx queue initialization for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix MT_INT_TX_DONE_ALL definition for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: store N9 firmware version instead of CR4 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: split up firmware loading functions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mmio related code from pci.c to mmio.c (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add __aligned(4) to txp structs (Jarod Wilson) [1860496] - [wireless] mt76: enable Airtime Queue Limit support (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: increase dma mcu rx ring size (Jarod Wilson) [1860496] - [wireless] mt76: dma: do not write cpu_idx on rx queue reset until after refill (Jarod Wilson) [1860496] - [wireless] mt76: fix handling full tx queues in mt76_dma_tx_queue_skb_raw (Jarod Wilson) [1860496] - [wireless] mt76: set dma-done flag for flushed descriptors (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce MT_DRV_RX_DMA_HDR flag (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add endpoint to mt76u_bulk_msg signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_skb_dma_info routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: take into account different queue mapping for 7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add {read/write}_extended utility routines (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_alloc_mcu_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: resume all rx queue in mt76u_resume_rx (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add queue parameter to mt76u_rx_urb_alloc (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76u_alloc_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: stop/free all possible rx queues (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_free_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: move mcu buffer allocation in mt76x02u drivers (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add queue id parameter to mt76u_submit_rx_buffers (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: use mt76_queue as mt76u_complete_rx context (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_queue to mt76u_refill_rx signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_queue to mt76u_get_next_rx_entry signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76u_process_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: check tx_status_data pointer in mt76u_tx_tasklet (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: avoid overwrite max_tx_fragments (Jarod Wilson) [1860496] - [wireless] mt76: rely on mac80211 utility routines to compute airtime (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove leftover routine declaration (Jarod Wilson) [1860496] - [wireless] mt76: move WIPHY_FLAG_HAS_CHANNEL_SWITCH in mt76_phy_init (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix endianness in mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: initialize radar specs from host driver (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: get rid of leftover target (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add tracing support (Jarod Wilson) [1860496] - [wireless] mt76: move mac_txdone tracepoint in mt76 module (Jarod Wilson) [1860496] - [wireless] mt76: move dev_irq tracepoint in mt76 module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add a get_stats() callback (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add per-phy mib statistics (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report TSF information (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add set_antenna callback (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework set_channel function (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing settings for simultaneous dual-band support (Jarod Wilson) [1860496] - [wireless] mt76: fix compilation warning in mt76_eeprom_override() (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: simplify led reg definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: simplify led reg definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce LED support (Jarod Wilson) [1860496] - [wireless] mt76: clear skb pointers from rx aggregation reorder buffer during cleanup (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: fix input validation issues for powersave-filtered frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: increase MCU command timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: measure channel noise and report it via survey (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix MT7615_CFEND_RATE_DEFAULT value (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: minor mt76x02_mac_set_beacon optimization (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: do not set NULL beacons (Jarod Wilson) [1860496] - [wireless] mt76: usb: use max packet length for m76u_copy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: add channel switch support for usb interfaces (Jarod Wilson) [1860496] - [wireless] mt76: speed up usb bulk copy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: remove a copy call for usb speedup (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: add check for invalid vif idx (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: split beaconing (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: omit beacon slot clearing (Jarod Wilson) [1860496] - [wireless] mt76: use AC specific reorder timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add set_coverage class support (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: set 0 as min coverage_class value (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report firmware version using ethtool (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Fix build with older compilers (Jarod Wilson) [1860496] - [wireless] mt76: eeprom: add support for big endian eeprom partition (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: reset STA_CCA counter setting the channel (Jarod Wilson) [1860496] - [wireless] mt76: fix possible undetected invalid MAC address (Jarod Wilson) [1860496] - [wireless] mt76: disable bh in mt76_dma_rx_poll (Jarod Wilson) [1860496] - [wireless] mt76: fix rx dma ring descriptor state on reset (Jarod Wilson) [1860496] - [wireless] mt7615: replace sta_state callback with sta_add/sta_remove (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: defer mcu initialization via workqueue (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: update beacon contents on BSS_CHANGED_BEACON (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for registering a second wiphy via debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: select the correct tx queue for frames sent to the second phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move radio/mac initialization to .start/stop callbacks (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: initialize dbdc settings on interface add (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support to the rx path (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework chainmask handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support to the dfs support code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove useless MT_HW_RDD0/1 enum (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing register init for dual-wiphy support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support for smart carrier sense (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add dual-phy support for mac80211 ops (Jarod Wilson) [1860496] - [wireless] mt76: do not overwrite max_tx_fragments if it has been set (Jarod Wilson) [1860496] - [wireless] mt76: move ampdu_ref from mt76_dev to driver struct (Jarod Wilson) [1860496] - [wireless] mt76: add ext_phy field to struct mt76_wcid (Jarod Wilson) [1860496] - [wireless] mt76: add function for allocating an extra wiphy (Jarod Wilson) [1860496] - [wireless] mt76: add priv pointer to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: add multiple wiphy support to mt76_get_min_avg_rssi (Jarod Wilson) [1860496] - [wireless] mt76: move txpower and antenna mask to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: move txpower_conf back to driver specific structs (Jarod Wilson) [1860496] - [wireless] mt76: move chainmask back to driver specific structs (Jarod Wilson) [1860496] - [wireless] mt76: move state from struct mt76_dev to mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: keep a set of software tx queues per phy (Jarod Wilson) [1860496] - [wireless] mt76: move channel state to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in mt76_sta_state() (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the tx status path (Jarod Wilson) [1860496] - [net] mac80211: allow setting queue_len for drivers not using wake_tx_queue (Jarod Wilson) [1860496] - [include] ieee80211: add WPA3 OWE AKM suite selector (Jarod Wilson) [1860496] - [wireless] mac80211: Fix setting txpower to zero (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the main tx path (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the rx path (Jarod Wilson) [1860496] - [wireless] mt76: introduce struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: move initialization of some struct members to mt76_alloc_device (Jarod Wilson) [1860496] - [wireless] rtw88: Fix incorrect beamformee role setting (Jarod Wilson) [1860496] - [wireless] rtw88: 8822: Make tables const, reduce data object size (Jarod Wilson) [1860496] - [wireless] rtw88: disable TX-AMSDU on 2.4G band (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: modify rf protection setting (Jarod Wilson) [1860496] - [wireless] rtw88: Use secondary channel offset enumeration (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: update power sequence to v16 (Jarod Wilson) [1860496] - [wireless] rtw88: add ciphers to suppress error message (Jarod Wilson) [1860496] - [wireless] rtw88: avoid holding mutex for cancel_delayed_work_sync() (Jarod Wilson) [1860496] - [wireless] rtw88: move rtw_enter_ips() to the last when config (Jarod Wilson) [1860496] - [wireless] rtw88: pci: 8822c should set clock delay to zero (Jarod Wilson) [1860496] - [wireless] rtw88: add rtw_read8_mask and rtw_read16_mask (Jarod Wilson) [1860496] - [wireless] rtw88: remove unused parameter vif in rtw_lps_pg_info_get() (Jarod Wilson) [1860496] - [wireless] brcmfmac: add the BRCM 4364 found in MacBook Pro 15, 2 (Jarod Wilson) [1860496] - [wireless] ath11k: fix incorrect peer stats counters update (Jarod Wilson) [1860496] - [wireless] ath11k: Fixing dangling pointer issue upon peer delete failure (Jarod Wilson) [1860496] - [wireless] ath11k: fix parsing PPDU_CTRL type in pktlog (Jarod Wilson) [1860496] - [wireless] ath11k: fix warn-on in disassociation (Jarod Wilson) [1860496] - [wireless] ath11k: fix rcu lock protect in peer assoc confirmation (Jarod Wilson) [1860496] - [wireless] ath11k: add HE rate accounting to driver (Jarod Wilson) [1860496] - [wireless] ath11k: drop tx_info from ath11k_sta (Jarod Wilson) [1860496] - [wireless] ath10k: Add support to read btcoex related data from DT (Jarod Wilson) [1860496] - [wireless] ath10k: fix few checkpatch warnings (Jarod Wilson) [1860496] - [net] mac80211: support NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_MAC_ADDRS (Jarod Wilson) [1860496] - [net] nl80211: add src and dst addr attributes for control port tx/rx (Jarod Wilson) [1860496] - [net] mac80211: parse also the RSNXE IE (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: Allow user space to register for station Rx authentication (Jarod Wilson) [1860496] - [include] ieee80211: fix 'the' doubling in comments (Jarod Wilson) [1860496] - [net] mac80211: Remove support for changing AP SMPS mode (Jarod Wilson) [1860496] - [net] mac80211: Handle SMPS mode changes only in AP mode (Jarod Wilson) [1860496] - [net] mac80211: Accept broadcast probe responses on 6GHz band (Jarod Wilson) [1860496] - [net] mac80211: HE: set RX NSS (Jarod Wilson) [1860496] - [net] mac80211: set station bandwidth from HE capability (Jarod Wilson) [1860496] - [net] mac80211: remove supported channels element in 6 GHz if ECSA support (Jarod Wilson) [1860496] - [net] mac80211: update condition for HE disablement (Jarod Wilson) [1860496] - [net] mac80211: make ieee80211_wep_init() return void (Jarod Wilson) [1860496] - [net] mac80211: allow changing TX-related netdev features (Jarod Wilson) [1860496] - [net] mac80211: check whether HE connection is allowed by the reg domain (Jarod Wilson) [1860496] - [net] mac80211: refactor extended element parsing (Jarod Wilson) [1860496] - [net] mac80211: simplify and improve HT/VHT/HE disable code (Jarod Wilson) [1860496] - [net] cfg80211: Enhance the AKM advertizement to support per interface (Jarod Wilson) [1860496] - [net] cfg80211: add no HE indication to the channel flag (Jarod Wilson) [1860496] - [net] mac80211: fix 11w when using encapsulation offloading (Jarod Wilson) [1860496] - [net] mac80211: fix tx status for no ack cases (Jarod Wilson) [1860496] - [net] mac80211: add handling for BSS color (Jarod Wilson) [1860496] - [net] nl80211: add handling for BSS color (Jarod Wilson) [1860496] - [net] mac80211: debugfs: improve airtime_flags handler readability (Jarod Wilson) [1860496] - [net] mac80211: Remove redundant assertion (Jarod Wilson) [1860496] - [net] mac80211: add 802.11 encapsulation offloading support (Jarod Wilson) [1860496] - [net] mac80211: Always show airtime debugfs file when TXQs are enabled (Jarod Wilson) [1860496] - [include] trivial: mac80211: fix indentation (Jarod Wilson) [1860496]- [fs] xfs: force writes to delalloc regions to unwritten (Carlos Maiolino) [1696580] - [fs] xfs: refactor xfs_iomap_prealloc_size (Carlos Maiolino) [1696580] - [fs] xfs: measure all contiguous previous extents for prealloc size (Carlos Maiolino) [1696580] - [fs] xfs: don't fail unwritten extent conversion on writeback due to edquot (Carlos Maiolino) [1696580] - [trace] SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Dave Wysochanski) [1906309] - [trace] Revert "SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow()" (Dave Wysochanski) [1906309] - [uapi] uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT (Eric Sandeen) [1905205] - [trace] SUNRPC: Fix oops in the rpc_xdr_buf event class (Scott Mayhew) [1900157] - [fs] NFS: Fix listxattr receive buffer size (Scott Mayhew) [1900157] - [trace] SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Scott Mayhew) [1900157] - [net] SUNRPC: fix copying of multiple pages in gss_read_proxy_verf() (Scott Mayhew) [1900157] - [net] svcrdma: fix bounce buffers for unaligned offsets and multiple pages (Scott Mayhew) [1900157] - [pci] hv: Document missing hv_pci_protocol_negotiation() parameter (Mohammed Gamal) [1886102] - [pci] hv: Make some functions static (Mohammed Gamal) [1886102] - [pci] hv: Use struct_size() helper (Mohammed Gamal) [1886102] - [pci] hv: Prepare hv_compose_msi_msg() for the VMBus-channel-interrupt-to-vCPU reassignment functionality (Mohammed Gamal) [1886102] - [fs] xfs: allow individual quota grace period extension (Bill O'Donnell) [1827913] - [fs] xfs: per-type quota timers and warn limits (Bill O'Donnell) [1827913] - [fs] xfs: switch xfs_get_defquota to take explicit type (Bill O'Donnell) [1827913] - [fs] xfs: pass xfs_dquot to xfs_qm_adjust_dqtimers (Bill O'Donnell) [1827913] - [fs] xfs: fix up some whitespace in quota code (Bill O'Donnell) [1827913] - [fs] xfs: preserve default grace interval during quotacheck (Bill O'Donnell) [1827913] - [fs] quota: honor quota type in Q_XGETQSTATcalls (Bill O'Donnell) [1827913]- [fs] NFS: Do uncached readdir when we're seeking a cookie in an empty page cache (Dave Wysochanski) [1893882] - [fs] NFS: Reduce number of RPC calls when doing uncached readdir (Dave Wysochanski) [1893882] - [fs] NFS: Optimisations for monotonically increasing readdir cookies (Dave Wysochanski) [1893882] - [fs] NFS: Improve handling of directory verifiers (Dave Wysochanski) [1893882] - [fs] NFS: Handle NFS4ERR_NOT_SAME and NFSERR_BADCOOKIE from readdir calls (Dave Wysochanski) [1893882] - [fs] NFS: Allow the NFS generic code to pass in a verifier to readdir (Dave Wysochanski) [1893882] - [fs] NFS: Cleanup to remove nfs_readdir_descriptor_t typedef (Dave Wysochanski) [1893882] - [fs] NFS: Reduce readdir stack usage (Dave Wysochanski) [1893882] - [fs] NFS: nfs_do_filldir() does not return a value (Dave Wysochanski) [1893882] - [fs] NFS: More readdir cleanups (Dave Wysochanski) [1893882] - [fs] NFS: Support larger readdir buffers (Dave Wysochanski) [1893882] - [fs] NFS: Simplify struct nfs_cache_array_entry (Dave Wysochanski) [1893882] - [fs] NFS: Replace kmap() with kmap_atomic() in nfs_readdir_search_array() (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary kmap in nfs_readdir_xdr_to_array() (Dave Wysochanski) [1893882] - [fs] NFS: Don't discard readdir results (Dave Wysochanski) [1893882] - [fs] NFS: Clean up directory array handling (Dave Wysochanski) [1893882] - [fs] NFS: Clean up nfs_readdir_page_filler() (Dave Wysochanski) [1893882] - [fs] NFS: Clean up readdir struct nfs_cache_array (Dave Wysochanski) [1893882] - [fs] NFS: Ensure contents of struct nfs_open_dir_context are consistent (Dave Wysochanski) [1893882] - [fs] NFSv4.2: condition READDIR's mask for security label based on LSM state (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary inode lock in nfs_fsync_dir() (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary inode locking in nfs_llseek_dir() (Dave Wysochanski) [1893882] - [netdrv] net: intel: Remove in_interrupt() warnings (Ken Cox) [1838732] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838732] - [netdrv] ixgbevf: use generic power management (Ken Cox) [1838732] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838732] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838732] - [iommu] vt-d: Don't dereference iommu_device if IOMMU_API is not built (Vitaly Kuznetsov) [1887216] - [iommu] vt-d: Gracefully handle DMAR units with no supported address widths (Vitaly Kuznetsov) [1887216] - [iommu] vt-d: Skip TE disabling on quirky gfx dedicated iommu (Vitaly Kuznetsov) [1887216] - [netdrv] Revert "mark the intel igc driver as tech preview" (Corinna Vinschen) [1838742] - [netdrv] net: intel: Remove in_interrupt() warnings (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up nvm_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Reject schedules with a base_time in the future (Corinna Vinschen) [1838742] - [netdrv] igc: Export a way to read the PTP timer (Corinna Vinschen) [1838742] - [netdrv] igc: Remove reset disable flag (Corinna Vinschen) [1838742] - [netdrv] igc: Save PTP time before a reset (Corinna Vinschen) [1838742] - [netdrv] igc: Remove references to SYSTIMR register (Corinna Vinschen) [1838742] - [netdrv] igc: Expose LPI counters (Corinna Vinschen) [1838742] - [netdrv] igc: Clean RX descriptor error flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove timeout check from ptp_tx work (Corinna Vinschen) [1838742] - [netdrv] igc: Don't reschedule ptp_tx work (Corinna Vinschen) [1838742] - [netdrv] igc: Rename IGC_TSYNCTXCTL_VALID macro (Corinna Vinschen) [1838742] - [netdrv] igc: Add new device ID's (Corinna Vinschen) [1838742] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838742] - [netdrv] igc: Fix not considering the TX delay for timestamps (Corinna Vinschen) [1838742] - [netdrv] igc: Fix wrong timestamp latency numbers (Corinna Vinschen) [1838742] - [netdrv] igc: Fix PTP initialization (Corinna Vinschen) [1838742] - [netdrv] igc: Fix static checker warning (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up the hw_stats structure (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up the mac_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Remove ledctl_ fields from the mac_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Fix registers definition (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded ICTXQMTC register (Corinna Vinschen) [1838742] - [netdrv] igc: Add Receive Descriptor Minimum Threshold Count to clear HW counters (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded variable (Corinna Vinschen) [1838742] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838742] - [netdrv] igc: Remove checking media type during MAC initialization (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded check for copper media type (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor the igc_power_down_link() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove TCP segmentation TX fail counter (Corinna Vinschen) [1838742] - [netdrv] igc: Add LPI counters (Corinna Vinschen) [1838742] - [netdrv] igc: Fix Rx timestamp disabling (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ptp_set_timestamp_mode() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove UDP filter setup in PTP code (Corinna Vinschen) [1838742] - [netdrv] igc: Check __IGC_PTP_TX_IN_PROGRESS instead of ptp_tx_skb (Corinna Vinschen) [1838742] - [netdrv] igc: Remove duplicate code in Tx timestamp handling (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up Rx timestamping logic (Corinna Vinschen) [1838742] - [netdrv] igc: Add initial LTR support (Corinna Vinschen) [1838742] - [netdrv] igc: Add initial EEE support (Corinna Vinschen) [1838742] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838742] - [netdrv] igc: Fix wrong register name (Corinna Vinschen) [1838742] - [netdrv] igc: Remove Sequence Error Counter (Corinna Vinschen) [1838742] - [netdrv] igc: Add Receive Error Counter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove symbol error counter (Corinna Vinschen) [1838742] - [netdrv] igc: Fix IGC_MAX_RXNFC_RULES (Corinna Vinschen) [1838742] - [netdrv] igc: Reject NFC rules with multiple matches (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused descriptor's flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove igc_nfc_rule_exit() (Corinna Vinschen) [1838742] - [netdrv] igc: Change adapter->nfc_rule_lock to mutex (Corinna Vinschen) [1838742] - [netdrv] igc: Change return type from igc_disable_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rule validation (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules leak when driver is unloaded (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ethtool_update_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules restoration (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules with multicast addresses (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rule overwrite cases (Corinna Vinschen) [1838742] - [netdrv] igc: Fix locking issue when retrieving NFC rules (Corinna Vinschen) [1838742] - [netdrv] igc: Fix 'sw_idx' type in struct igc_nfc_rule (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ethtool_add_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Change byte order in struct igc_nfc_filter (Corinna Vinschen) [1838742] - [netdrv] igc: Align terms used in NFC support code (Corinna Vinschen) [1838742] - [netdrv] igc: Add 'igc_ethtool_' prefix to functions in igc_ethtool.c (Corinna Vinschen) [1838742] - [netdrv] igc: Early return in igc_get_ethtool_nfc_entry() (Corinna Vinschen) [1838742] - [netdrv] igc: Cleanup _get|set_rxnfc ethtool ops (Corinna Vinschen) [1838742] - [netdrv] igc: Get rid of igc_max_channels() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused field from igc_nfc_filter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove per queue good transmited counter register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove header redirection register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove obsolete circuit breaker registers (Corinna Vinschen) [1838742] - [netdrv] igc: Enable NFC rules based source MAC address (Corinna Vinschen) [1838742] - [netdrv] igc: Add support for source address filters in core (Corinna Vinschen) [1838742] - [netdrv] igc: Remove mac_table from igc_adapter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove IGC_MAC_STATE_SRC_ADDR flag (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused registers (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused IGC_ICS_DRSTA define (Corinna Vinschen) [1838742] - [netdrv] igc: Dump ETQF registers (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor ethertype filtering code (Corinna Vinschen) [1838742] - [netdrv] igc: Fix MAX_ETYPE_FILTER value (Corinna Vinschen) [1838742] - [netdrv] igc: Remove ethertype filter in PTP code (Corinna Vinschen) [1838742] - [netdrv] igc: Remove duplicated IGC_RXPBS macro (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor VLAN priority filtering code (Corinna Vinschen) [1838742] - [netdrv] igc: Return -EOPNOTSUPP when VLAN mask doesn't match (Corinna Vinschen) [1838742] - [netdrv] igc: Dump VLANPQF register (Corinna Vinschen) [1838742] - [netdrv] igc: Rename IGC_VLAPQF macro (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up obsolete NVM defines (Corinna Vinschen) [1838742] - [netdrv] igc: remove IGC_REMOVED function (Corinna Vinschen) [1838742] - [netdrv] igc: Remove PCIe Control register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded definition (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_base.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_dump.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_ptp.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_ethtool.c (Corinna Vinschen) [1838742] - [netdrv] igc: add support to eeprom, registers and link self-tests (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_main.c (Corinna Vinschen) [1838742] - [netdrv] igc: Add ECN support for TSO (Corinna Vinschen) [1838742] - [netdrv] ionic: fix mem leak in rx_empty (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: no rx flush in deinit (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: clean up sparse complaints (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: add new bad firmware error code (Jonathan Toppins) [1887516] - [netdrv] ionic: use lif ident for filter count (Jonathan Toppins) [1887516] - [netdrv] ionic: refill lif identity after fw_up (Jonathan Toppins) [1887516] - [netdrv] ionic: disable all queue napi contexts on timeout (Jonathan Toppins) [1887516] - [netdrv] ionic: check qcq ptr in ionic_qcq_disable (Jonathan Toppins) [1887516] - [netdrv] ionic: clear linkcheck bit on alloc fail (Jonathan Toppins) [1887516] - [netdrv] ionic: drain the work queue (Jonathan Toppins) [1887516] - [netdrv] ionic: contiguous memory for notifyq (Jonathan Toppins) [1887516] - [netdrv] ionic: prevent early watchdog check (Jonathan Toppins) [1887516] - [netdrv] ionic: stop watchdog timer earlier on remove (Jonathan Toppins) [1887516 1887263] - [netdrv] net: ionic: Remove WARN_ON(in_interrupt()) (Jonathan Toppins) [1887516] - [netdrv] net: ionic: Replace in_interrupt() usage (Jonathan Toppins) [1887516] - [netdrv] ionic: add DIMLIB to Kconfig (Jonathan Toppins) [1861520] - [netdrv] ionic: add devlink firmware update (Jonathan Toppins) [1861520] - [netdrv] ionic: update the fw update api (Jonathan Toppins) [1861520] - [netdrv] ionic: dynamic interrupt moderation (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up debugfs after queue swap (Jonathan Toppins) [1861520] - [netdrv] ionic: clarify boolean precedence (Jonathan Toppins) [1861520] - [netdrv] ionic: remove unused variable (Jonathan Toppins) [1861520] - [netdrv] ionic: clean adminq service routine (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up desc_info and cq_info structs (Jonathan Toppins) [1861520] - [netdrv] ionic: struct reorder for faster access (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up page handling code (Jonathan Toppins) [1861520] - [netdrv] ionic: fix txrx work accounting (Jonathan Toppins) [1861520] - [netdrv] ionic: pull reset_queues into tx_timeout handler (Jonathan Toppins) [1861520] - [netdrv] ionic: change queue count with no reset (Jonathan Toppins) [1861520] - [netdrv] ionic: change the descriptor ring length without full reset (Jonathan Toppins) [1861520] - [netdrv] ionic: change mtu without full queue rebuild (Jonathan Toppins) [1861520] - [netdrv] ionic: use index not pointer for queue tracking (Jonathan Toppins) [1861520] - [netdrv] ionic: reduce contiguous memory allocation requirement (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up unnecessary non-static functions (Jonathan Toppins) [1861520] - [netdrv] ionic: rework and simplify handling of the queue stats block (Jonathan Toppins) [1861520] - [netdrv] ionic: remove lif list concept (Jonathan Toppins) [1861520] - [netdrv] ionic: use kcalloc for new arrays (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up a couple of debug strings (Jonathan Toppins) [1861520] - [netdrv] ionic: set MTU floor at ETH_MIN_MTU (Jonathan Toppins) [1861520] - [netdrv] ionic_lif: Use devm_kcalloc() in ionic_qcq_alloc() (Jonathan Toppins) [1861520] - [netdrv] ionic: separate interrupt for Tx and Rx (Jonathan Toppins) [1861520] - [netdrv] ionic: tx separate servicing (Jonathan Toppins) [1861520] - [netdrv] ionic: use fewer firmware doorbells on rx fill (Jonathan Toppins) [1861520] - [netdrv] ionic: fix memory leak of object 'lid' (Jonathan Toppins) [1861520] - [netdrv] ionic: interface file updates (Jonathan Toppins) [1861520] - [netdrv] ionic: rearrange reset and bus-master control (Jonathan Toppins) [1861520] - [netdrv] ionic: update eid test for overflow (Jonathan Toppins) [1861520] - [netdrv] ionic: remove unused ionic_coal_hw_to_usec (Jonathan Toppins) [1861520] - [netdrv] ionic: set netdev default name (Jonathan Toppins) [1861520] - [netdrv] ionic: get MTU from lif identity (Jonathan Toppins) [1861520] - [netdrv] ionic: keep rss hash after fw update (Jonathan Toppins) [1861520] - [netdrv] ionic: update filter id after replay (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up filter locks and debug msgs (Jonathan Toppins) [1861520] - [netdrv] ionic: use offset for ethtool regs data (Jonathan Toppins) [1861520] - [md] md/raid5: Allow degraded raid6 to do rmw (Nigel Croxon) [1856838] - [md] md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 (Nigel Croxon) [1856838] - [md] raid5: don't duplicate code for different paths in handle_stripe (Nigel Croxon) [1856838] - [md] raid5-cache: hold spinlock instead of mutex in r5c_journal_mode_show (Nigel Croxon) [1856838] - [md] md: print errno in super_written (Nigel Croxon) [1856838] - [md] md/raid5: remove the redundant setting of STRIPE_HANDLE (Nigel Croxon) [1856838] - [md] md: register new md sysfs file 'uuid' read-only (Nigel Croxon) [1856838] - [md] md: fix max sectors calculation for super 1.0 (Nigel Croxon) [1856838] - [md] md/raid5: use do_div() for 64 bit divisions in raid5_sync_request (Nigel Croxon) [1856838] - [md] md/raid10: avoid deadlock on recovery (Nigel Croxon) [1856838] - [md] md-cluster: fix rmmod issue when md_cluster convert bitmap to none (Nigel Croxon) [1856838] - [md] md-cluster: fix safemode_delay value when converting to clustered bitmap (Nigel Croxon) [1856838] - [md] md/raid5: support config stripe_size by sysfs entry (Nigel Croxon) [1856838] - [md] md/raid5: set default stripe_size as 4096 (Nigel Croxon) [1856838] - [md] md/raid456: convert macro STRIPE_* to RAID5_STRIPE_* (Nigel Croxon) [1856838] - [md] raid5: remove the meaningless check in raid5_make_request (Nigel Croxon) [1856838] - [md] raid5: put the comment of clear_batch_ready to the right place (Nigel Croxon) [1856838] - [md] raid5: call clear_batch_ready before set STRIPE_ACTIVE (Nigel Croxon) [1856838] - [md] md: raid10: Fix compilation warning (Nigel Croxon) [1856838] - [md] md: raid5: Fix compilation warning (Nigel Croxon) [1856838] - [md] md: raid5-cache: Remove set but unused variable (Nigel Croxon) [1856838] - [md] md: Fix compilation warning (Nigel Croxon) [1856838] - [md] md-cluster: fix wild pointer of unlock_all_bitmaps() (Nigel Croxon) [1856838] - [md] md/raid5-cache: clear MD_SB_CHANGE_PENDING before flushing stripes (Nigel Croxon) [1856838] - [md] md: fix deadlock causing by sysfs_notify (Nigel Croxon) [1856838] - [md] md: raid0/linear: fix dereference before null check on pointer mddev (Nigel Croxon) [1856838] - [md] md/raid1: Replace zero-length array with flexible-array (Nigel Croxon) [1856838] - [md] md: add a newline when printing parameter 'start_ro' by sysfs (Nigel Croxon) [1856838] - [md] md: stop using ->queuedata (Nigel Croxon) [1856838] - [md] md/raid1: release pending accounting for an I/O only after write-behind is also finished (Nigel Croxon) [1856838] - [md] md: remove redundant memalloc scope API usage (Nigel Croxon) [1856838] - [md] raid5: update code comment of scribble_alloc() (Nigel Croxon) [1856838] - [md] raid5: remove gfp flags from scribble_alloc() (Nigel Croxon) [1856838] - [md] md: use memalloc scope APIs in mddev_suspend()/mddev_resume() (Nigel Croxon) [1856838] - [md] md: remove the extra line for ->hot_add_disk (Nigel Croxon) [1856838] - [md] md: flush md_rdev_misc_wq for HOT_ADD_DISK case (Nigel Croxon) [1856838] - [md] md: don't flush workqueue unconditionally in md_open (Nigel Croxon) [1856838] - [md] md: add new workqueue for delete rdev (Nigel Croxon) [1856838] - [md] md: add checkings before flush md_misc_wq (Nigel Croxon) [1856838] - [md] md: check arrays is suspended in mddev_detach before call quiesce operations (Nigel Croxon) [1856838]- [scsi] storvsc: Fix error return in storvsc_probe() (Cathy Avery) [1895026] - [scsi] storvsc: Support PAGE_SIZE larger than 4K (Cathy Avery) [1895026] - [kernel] hv: hyperv.h: Introduce some hvpfn helper functions (Cathy Avery) [1895026] - [scsi] storvsc: Add validation for untrusted Hyper-V values (Cathy Avery) [1895026] - [scsi] storvsc: Fix spelling mistake (Cathy Avery) [1895026] - [scsi] storvsc: Remove memset before memory freeing in storvsc_suspend() (Cathy Avery) [1895026] - [net] tipc: fix incorrect setting window for bcast link (Xin Long) [1893085] - [net] tipc: re-configure queue limit for broadcast link (Xin Long) [1893085] - [net] tipc: fix NULL pointer dereference in tipc_named_rcv (Xin Long) [1893085] - [net] tipc: Supply missing udp_media.h include file (Xin Long) [1893085] - [net] tipc: add automatic rekeying for encryption key (Xin Long) [1893085] - [net] tipc: add automatic session key exchange (Xin Long) [1893085] - [net] tipc: introduce encryption master key (Xin Long) [1893085] - [net] tipc: optimize key switching time and logic (Xin Long) [1893085] - [net] tipc: Fix memory leak in tipc_group_create_member() (Xin Long) [1893085] - [net] tipc: fix shutdown() of connection oriented socket (Xin Long) [1893085] - [net] tipc: fix a deadlock when flushing scheduled work (Xin Long) [1893085] - [net] tipc: fix shutdown() of connectionless socket (Xin Long) [1893085] - [net] tipc: fix using smp_processor_id() in preemptible (Xin Long) [1893085] - [net] tipc: fix use-after-free in tipc_bcast_get_mode (Xin Long) [1893085] - [net] tipc: call rcu_read_lock() in tipc_aead_encrypt_done() (Xin Long) [1893085] - [net] tipc: fix uninit skb->data in tipc_nl_compat_dumpit() (Xin Long) [1893085] - [net] tipc: update a binding service via broadcast (Xin Long) [1893085] - [hv] hv_balloon: do adjust_managed_page_count() when ballooning/un-ballooning (Vitaly Kuznetsov) [1894717] - [hv] hv_balloon: simplify math in alloc_balloon_pages() (Vitaly Kuznetsov) [1894717] - [md] dm integrity: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [md] dm crypt: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [crypto] crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [include] crypto: algapi - introduce the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [fs] iomap: Set all uptodate bits for an Uptodate page (Brian Foster) [1654127] - [scsi] scsi: ibmvfc: Avoid link down on FS9100 canister reboot (Desnes Augusto Nunes do Rosario) [1882613] - [scsi] scsi: ibmvfc: Use compiler attribute defines instead of __attribute__() (Desnes Augusto Nunes do Rosario) [1882613] - [arm64] arm64: Enable PCI write-combine resources under sysfs (Petr Oros) [1872943] - [scsi] scsi: mpt3sas: Bump driver version to 35.101.00.00 (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Add module parameter multipath_on_hba (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Handle vSES vphy object during HBA reset (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Add bypass_dirty_port_flag parameter (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Handling HBA vSES device (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Set valid PhysicalPort in SMPPassThrough (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Update hba_port objects after host reset (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Get sas_device objects using device's rphy (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Rename transport_del_phy_from_an_existing_port() (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Get device objects using sas_address & portID (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Update hba_port's sas_address & phy_mask (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Rearrange _scsih_mark_responding_sas_device() (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Allocate memory for hba_port objects (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Define hba_port structure (Tomas Henzl) [1888543]- [netdrv] net: phy: realtek: Modify 2.5G PHY name to RTL8226 (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: enable ALDPS to save power for RTL8211F (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: fix rtl8211e rx/tx delay config (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: add support for RTL8125B-internal PHY (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: add delay to resume path of certain internal PHY's (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: read actual speed to detect downshift (Josef Oskera) [1889854] - [netdrv] r8169: fix issue with forced threading in combination with shared interrupts (Josef Oskera) [1889854] - [netdrv] r8169: fix operation under forced interrupt threading (Josef Oskera) [1889854] - [netdrv] r8169: factor out handling rtl8169_stats (Josef Oskera) [1889854] - [netdrv] r8169: consider that PHY reset may still be in progress after applying firmware (Josef Oskera) [1889854] - [netdrv] r8169: fix data corruption issue on RTL8402 (Josef Oskera) [1889854] - [netdrv] r8169: fix handling ether_clk (Josef Oskera) [1889854] - [netdrv] r8169: fix RTL8168f/RTL8411 EPHY config (Josef Oskera) [1889854] - [netdrv] r8169: remove member irq_enabled from struct rtl8169_private (Josef Oskera) [1889854] - [netdrv] r8169: use napi_complete_done return value (Josef Oskera) [1889854] - [netdrv] r8169: allow to enable ASPM on RTL8125A (Josef Oskera) [1889854] - [netdrv] r8169: add support for RTL8125B (Josef Oskera) [1889854] - [netdrv] r8169: sync support for RTL8401 with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: merge handling of RTL8101e and RTL8100e (Josef Oskera) [1889854] - [netdrv] r8169: rename RTL8125 to RTL8125A (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_runtime_resume (Josef Oskera) [1889854] - [netdrv] r8169: remove driver-specific mutex (Josef Oskera) [1889854] - [netdrv] r8169: use RTNL to protect critical sections (Josef Oskera) [1889854] - [netdrv] r8169: add rtl8169_up (Josef Oskera) [1889854] - [netdrv] r8169: remove no longer needed checks for device being runtime-active (Josef Oskera) [1889854] - [netdrv] r8169: mark device as not present when in PCI D3 (Josef Oskera) [1889854] - [netdrv] r8169: allow setting irq coalescing if link is down (Josef Oskera) [1889854] - [netdrv] r8169: move switching optional clock on/off to pll power functions (Josef Oskera) [1889854] - [netdrv] r8169: move updating counters to rtl8169_down (Josef Oskera) [1889854] - [netdrv] r8169: move napi_disable call and rename rtl8169_hw_reset (Josef Oskera) [1889854] - [netdrv] r8169: replace synchronize_rcu with synchronize_net (Josef Oskera) [1889854] - [netdrv] r8169: improve setting WoL on runtime-resume (Josef Oskera) [1889854] - [netdrv] r8169: remove unused constant RsvdMask (Josef Oskera) [1889854] - [netdrv] r8169: add info for DASH being enabled (Josef Oskera) [1889854] - [netdrv] r8169: fix failing WoL (Josef Oskera) [1889854] - [netdrv] r8169: improve handling power management ops (Josef Oskera) [1889854] - [netdrv] r8169: make rtl8169_down central chip quiesce function (Josef Oskera) [1889854] - [netdrv] r8169: move some calls to rtl8169_hw_reset (Josef Oskera) [1889854] - [netdrv] r8169: don't reset tx ring indexes in rtl8169_tx_clear (Josef Oskera) [1889854] - [netdrv] r8169: enable WAKE_PHY as only WoL source when runtime-suspending (Josef Oskera) [1889854] - [netdrv] r8169: change driver data type (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_remove_one (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168f/RTL8411 hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168evl hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168h hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168g hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from r8168ep_ocp_read (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from r8168dp_ocp_read (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from rtl_w0w1_eri (Josef Oskera) [1889854] - [netdrv] r8169: work around an irq coalescing related tx timeout (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_mark_to_asic (Josef Oskera) [1889854] - [netdrv] r8169: make rtl_rx better readable (Josef Oskera) [1889854] - [netdrv] r8169: remove remaining call to mdiobus_unregister (Josef Oskera) [1889854] - [netdrv] r8169: don't include linux/moduleparam.h (Josef Oskera) [1889854] - [netdrv] r8169: remove not needed checks in rtl8169_set_eee (Josef Oskera) [1889854] - [netdrv] r8169: improve reset handling for chips from RTL8168g (Josef Oskera) [1889854] - [netdrv] r8169: add helper rtl_wait_txrx_fifo_empty (Josef Oskera) [1889854] - [netdrv] r8169: add helper rtl_enable_rxdvgate (Josef Oskera) [1889854] - [netdrv] r8169: add helper r8168g_wait_ll_share_fifo_ready (Josef Oskera) [1889854] - [netdrv] r8169: use fsleep in polling functions (Josef Oskera) [1889854] - [netdrv] r8169: use new helper eth_hw_addr_crc (Josef Oskera) [1889854] - [netdrv] r8169: switch from netif_xxx message functions to netdev_xxx (Josef Oskera) [1889854] - [netdrv] r8169: remove "out of memory" error message from rtl_request_firmware (Josef Oskera) [1889854] - [netdrv] r8169: simplify counter handling (Josef Oskera) [1889854] - [netdrv] r8169: remove redundant driver message when entering promiscuous mode (Josef Oskera) [1889854] - [netdrv] r8169: remove not needed parameter in rtl8169_set_magic_reg (Josef Oskera) [1889854] - [netdrv] r8169: configure PME_SIGNAL for RTL8125 too (Josef Oskera) [1889854] - [netdrv] r8169: improve max jumbo packet size definition (Josef Oskera) [1889854] - [netdrv] r8169: add check for invalid parameter combination in rtl_set_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_set_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: improve interrupt coalescing parameter handling (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_coalesce_choose_scale (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_get_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: merge scale for tx and rx irq coalescing (Josef Oskera) [1889854] - [netdrv] r8169: don't pass net_device to irq coalescing sub-functions (Josef Oskera) [1889854] - [netdrv] r8169: improve error message if no dedicated PHY driver is found (Josef Oskera) [1889854] - [netdrv] r8169: improve configuring RxConfig register (Josef Oskera) [1889854] - [netdrv] r8169: improve handling CPCMD_MASK (Josef Oskera) [1889854] - [netdrv] r8169: use devm_mdiobus_register (Josef Oskera) [1889854] - [netdrv] r8169: change wmb to smb_wmb in rtl8169_start_xmit (Josef Oskera) [1889854] - [netdrv] r8169: inline rtl8169_make_unusable_by_asic (Josef Oskera) [1889854] - [netdrv] r8169: inline rtl8169_mark_as_last_descriptor (Josef Oskera) [1889854] - [netdrv] r8169: remove PHY resume delay that is handled in the PHY driver now (Josef Oskera) [1889854] - [netdrv] r8169: add workaround for RTL8168evl TSO hw issues (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_tso_csum_v2 (Josef Oskera) [1889854] - [netdrv] r8169: use rtl8169_set_features in rtl8169_init_one (Josef Oskera) [1889854] - [netdrv] r8169: preserve VLAN setting on RTL8125 in rtl_init_rxcfg (Josef Oskera) [1889854] - [netdrv] r8169: remove NETIF_F_HIGHDMA from vlan_features (Josef Oskera) [1889854] - [netdrv] r8169: move setting OCP base to generic init code (Josef Oskera) [1889854] - [s390] sclp: provide extended sccb support (Thomas Huth) [1798484] - [s390] sclp: avoid copy of sclp_info_sccb (Thomas Huth) [1798484] - [s390] sclp: use memblock for early read cpu info (Thomas Huth) [1798484] - [include] ptp: add stub function for ptp_get_msgtype() (Ivan Vecera) [1899217] - [include] ptp: Add generic ptp message type function (Ivan Vecera) [1899217] - [net] ptp: Add generic ptp v2 header parsing function (Ivan Vecera) [1899217] - [video] hyperv_fb: Fix the cache type when mapping the VRAM (Mohammed Gamal) [1886106] - [video] hyperv_fb: include vmalloc.h (Mohammed Gamal) [1886106] - [video] hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs (Mohammed Gamal) [1886106] - [video] hyperv_fb: Fix hibernation for the deferred IO feature (Mohammed Gamal) [1886106] - [video] hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver (Mohammed Gamal) [1886106] - [uio] uio_hv_generic: add missed sysfs_remove_bin_file (Mohammed Gamal) [1886106] - [input] hyperv-keyboard: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886106] - [hid] hyperv: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886106] - [netdrv] hv_netvsc: Add validation for untrusted Hyper-V values (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Remove "unlikely" from netvsc_select_queue (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: do not use VF device if link is down (Mohammed Gamal) [1886097] - [netdrv] hyperv: dump TX indirection table to ethtool regs (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: add support for vlans in AF_PACKET mode (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Fix netvsc_start_xmit's return type (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Remove unnecessary round_up for recv_completion_cnt (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: use new helper tcp_v6_gso_csum_prep (Mohammed Gamal) [1886097] - [tools] kvm_stat: add sample systemd unit file (Thomas Huth) [1851123] - [tools] kvm_stat: Add command line switch '-L' to log to file (Thomas Huth) [1851123] - [tools] kvm_stat: add command line switch '-z' to skip zero records (Thomas Huth) [1851123] - [mm] mm/gup: Mark lock taken only after a successful retake (Chris von Recklinghausen) [1885412] - [mm] mm/filemap.c: fix a data race in filemap_fault() (Chris von Recklinghausen) [1885412] - [mm] mm: fix kthread_use_mm() vs TLB invalidate (Chris von Recklinghausen) [1885412] - [fs] kernel: set USER_DS in kthread_use_mm (Chris von Recklinghausen) [1885412] - [drm] kernel: better document the use_mm/unuse_mm API contract (Chris von Recklinghausen) [1885412] - [kernel] kernel: move use_mm/unuse_mm to kthread.c (Chris von Recklinghausen) [1885412] - [drm] drm/i915: convert get_user_pages() --> pin_user_pages() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: introduce pin_user_pages_fast_only() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: refactor and de-duplicate gup_fast() code (Chris von Recklinghausen) [1885412] - [mm] mm/gup: move __get_user_pages_fast() down a few lines in gup.c (Chris von Recklinghausen) [1885412] - [mm] gup: document and work around "COW can break either way" issue (Chris von Recklinghausen) [1885412] - [vfio] vfio: checking of validity of user vaddr in vfio_dma_rw (Chris von Recklinghausen) [1885412] - [fs] mm/userfaultfd: honor FAULT_FLAG_KILLABLE in fault path (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow to react to fatal signals (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow VM_FAULT_RETRY for multiple times (Chris von Recklinghausen) [1885412] - [mm] mm: allow VM_FAULT_RETRY for multiple times (Chris von Recklinghausen) [1885412] - [fs] mm: introduce FAULT_FLAG_INTERRUPTIBLE (Chris von Recklinghausen) [1885412] - [mm] mm: introduce FAULT_FLAG_DEFAULT (Chris von Recklinghausen) [1885412] - [fs] userfaultfd: don't retake mmap_sem to emulate NOPAGE (Chris von Recklinghausen) [1885412] - [include] mm: return faster for non-fatal signals in user mode faults (Chris von Recklinghausen) [1885412] - [mm] powerpc/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] arm64/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] x86/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] mm: introduce fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: fix __get_user_pages() on fault retry of hugetlb (Chris von Recklinghausen) [1885412] - [mm] mm/gup: rename "nonblocking" to "locked" where proper (Chris von Recklinghausen) [1885412] - [mm] mm/gup: rename nr as nr_pinned in get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: require FOLL_GET for get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/filemap.c: don't bother dropping mmap_sem for zero size readahead (Chris von Recklinghausen) [1885412] - [mm] mm/slb: export __kmalloc_track(_node)_caller (Chris von Recklinghausen) [1885412] - [mm] mm: Add vmf_insert_pfn_xxx_prot() for huge page-table entries (Chris von Recklinghausen) [1885412] - [vfio] vfio: introduce vfio_dma_rw to read/write a range of IOVAs (Chris von Recklinghausen) [1885412] - [infiniband] mm, tree-wide: rename put_user_page*() to unpin_user_page*() (Chris von Recklinghausen) [1885412] - [mm] mm/gup_benchmark: use proper FOLL_WRITE flags instead of hard-coding "1" (Chris von Recklinghausen) [1885412] - [mm] powerpc: book3s64: convert to pin_user_pages() and put_user_page() (Chris von Recklinghausen) [1885412] - [vfio] vfio, mm: pin_user_pages (FOLL_PIN) and put_user_page() conversion (Chris von Recklinghausen) [1885412] - [media] media/v4l2-core: pin_user_pages (FOLL_PIN) and put_user_page() conversion (Chris von Recklinghausen) [1885412] - [net] net/xdp: set FOLL_PIN via pin_user_pages() (Chris von Recklinghausen) [1885412] - [drm] drm/via: set FOLL_PIN via pin_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/process_vm_access: set FOLL_PIN via pin_user_pages_remote() (Chris von Recklinghausen) [1885412] - [infiniband] IB/{core, hw, umem}: set FOLL_PIN via pin_user_pages*(), fix up ODP (Chris von Recklinghausen) [1885412] - [documentation] mm/gup: introduce pin_user_pages*() and FOLL_PIN (Chris von Recklinghausen) [1885412] - [media] media/v4l2-core: set pages dirty upon releasing DMA buffers (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow FOLL_FORCE for get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [vfio] vfio: fix FOLL_LONGTERM use, simplify get_user_pages_remote() call (Chris von Recklinghausen) [1885412] - [mm] mm: fix get_user_pages_remote()'s handling of FOLL_LONGTERM (Chris von Recklinghausen) [1885412] - [mm] mm/gup: factor out duplicate code from four routines (Chris von Recklinghausen) [1885412] - [mm] mm: drop mmap_sem before calling balance_dirty_pages() in write fault (Chris von Recklinghausen) [1885412] - [vfio] vfio/type1: untag user pointers in vaddr_get_pfn (Chris von Recklinghausen) [1885412] - [mm] mm: untag user pointers in mm/gup.c (Chris von Recklinghausen) [1885412] - [drm] drivers/gpu/drm/via: convert put_page() to put_user_page*() (Chris von Recklinghausen) [1885412] - [fs] fs/io_uring.c: convert put_page() to put_user_page*() (Chris von Recklinghausen) [1885412] - [mm] mm: mark the page referenced in gup_hugepte (Chris von Recklinghausen) [1885412] - [mm] mm: switch gup_hugepte to use try_get_compound_head (Chris von Recklinghausen) [1885412] - [mm] mm: move the powerpc hugepd code to mm/gup.c (Chris von Recklinghausen) [1885412] - [mm] mm: validate get_user_pages_fast flags (Chris von Recklinghausen) [1885412] - [mm] mm: consolidate the get_user_pages* implementations (Chris von Recklinghausen) [1885412] - [mm] mm: reorder code blocks in gup.c (Chris von Recklinghausen) [1885412] - [mm] mm: rename CONFIG_HAVE_GENERIC_GUP to CONFIG_HAVE_FAST_GUP (Chris von Recklinghausen) [1885412] - [x86] mm: lift the x86_32 PAE version of gup_get_pte to common code (Chris von Recklinghausen) [1885412] - [s390] mm: simplify gup_fast_permitted (Chris von Recklinghausen) [1885412] - [mm] mm: use untagged_addr() for get_user_pages_fast addresses (Chris von Recklinghausen) [1885412] - [mm] powerpc/mm: make gup_hugepte() static (Chris von Recklinghausen) [1885412] - [mm] filemap: drop the mmap_sem for all blocking operations (Chris von Recklinghausen) [1885412] - [mm] filemap: kill page_cache_read usage in filemap_fault (Chris von Recklinghausen) [1885412] - [mm] filemap: pass vm_fault to the mmap ra helpers (Chris von Recklinghausen) [1885412] - [mm] docs/core-api/mm: fix return value descriptions in mm/ (Chris von Recklinghausen) [1885412] - [mm] docs/mm: vmalloc: re-indent kernel-doc comemnts (Chris von Recklinghausen) [1885412] - [drm] drm/via: mark expected switch fall-throughs (Chris von Recklinghausen) [1885412] - [mm] x86/mm: Break out kernel address space handling (Chris von Recklinghausen) [1885412] - [kernel] locking/rwsem: Remove reader optimistic spinning (Waiman Long) [1895046] - [kernel] locking/rwsem: Enable reader optimistic lock stealing (Waiman Long) [1895046] - [kernel] locking/rwsem: Prevent potential lock starvation (Waiman Long) [1895046] - [kernel] locking/rwsem: Pass the current atomic count to rwsem_down_read_slowpath() (Waiman Long) [1895046] - [kernel] locking/rwsem: Fold __down_{read,write}*() (Waiman Long) [1895046] - [kernel] locking/rwsem: Introduce rwsem_write_trylock() (Waiman Long) [1895046] - [kernel] locking/rwsem: Better collate rwsem_read_trylock() (Waiman Long) [1895046] - [kernel] rwsem: Implement down_read_interruptible (Waiman Long) [1895046] - [kernel] rwsem: Implement down_read_killable_nested (Waiman Long) [1895046] - [powerpc] powerpc/perf: Fix crash with is_sier_available when pmu is not set (Steve Best) [1904225] - [powerpc] kvm: ppc: book3s hv: xive: Fix vCPU id sanity check (Greg Kurz) [1902709] - [net] ip6_gre: set dev->hard_header_len when using header_ops (Antoine Tenart) [1895789] - [fs] xfs: flush new eof page on truncate to avoid post-eof corruption (Brian Foster) [1878495] - [netdrv] bonding: set dev->needed_headroom in bond_setup_by_slave() (Antoine Tenart) [1903073] - [net] netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal (Antoine Tenart) [1901026] - [infiniband] RDMA/umem: Prevent small pages from being returned by ib_umem_find_best_pgsz() (Kamal Heib) [1857605] - [infiniband] IB/hfi1: Fix error return code in hfi1_init_dd() (Kamal Heib) [1857605] - [infiniband] RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device() (Kamal Heib) [1857605] - [infiniband] RDMA/cm: Make the local_id_table xarray non-irq (Kamal Heib) [1857605] - [infiniband] IB/srpt: Fix memory leak in srpt_add_one (Kamal Heib) [1857605] - [infiniband] RDMA/bnxt_re: Set queue pair state when being queried (Kamal Heib) [1894681 1857605] - [infiniband] RDMA/rxe: Handle skb_clone() failure in rxe_recv.c (Kamal Heib) [1857605] - [infiniband] RDMA/rxe: Fix bug rejecting all multicast packets (Kamal Heib) [1857605] - [infiniband] RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt() (Kamal Heib) [1857605] - [infiniband] IB/rdmavt: Fix sizeof mismatch (Kamal Heib) [1857605] - [infiniband] RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces (Kamal Heib) [1883480 1883478 1857605] - [infiniband] RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() (Kamal Heib) [1857605] - [rdma] RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz() (Kamal Heib) [1857605] - [x86] kretprobe: Prevent triggering kretprobe from within kprobe_flush_task (Jerome Marchand) [1821265] - [netdrv] net: intel: Remove in_interrupt() warnings (Jonathan Toppins) [1891101] - [netdrv] ice: fix adding IP4 IP6 Flow Director rules (Jonathan Toppins) [1891101] - [netdrv] ice: Fix pointer cast warnings (Jonathan Toppins) [1891101] - [netdrv] ice: refactor devlink_port to be per-VSI (Jonathan Toppins) [1891101] - [netdrv] ice: add the DDP Track ID to devlink info (Jonathan Toppins) [1891101] - [netdrv] ice: Change ice_info_get_dsn to be void (Jonathan Toppins) [1891101] - [netdrv] ice: remove repeated words (Jonathan Toppins) [1891101] - [netdrv] ice: devlink: use *phD to print small buffer (Jonathan Toppins) [1891101] - [netdrv] ice: preserve NVM capabilities in safe mode (Jonathan Toppins) [1891101] - [netdrv] ice: increase maximum wait time for flash write commands (Jonathan Toppins) [1891101] - [netdrv] ice: remove unused args from ice_get_open_tunnel_port() (Jonathan Toppins) [1891101] - [netdrv] ice: fix memory leak in ice_vsi_setup (Jonathan Toppins) [1891101] - [netdrv] ice: fix memory leak if register_netdev_fails (Jonathan Toppins) [1891101] - [netdrv] ice: Fix call trace on suspend (Jonathan Toppins) [1891101] - [netdrv] ice: simplify the return expression of ice_finalize_update() (Jonathan Toppins) [1891101] - [netdrv] ice: Misc minor fixes (Jonathan Toppins) [1838737] - [netdrv] ice: adjust profile ID map locks (Jonathan Toppins) [1838737] - [netdrv] ice: update PTYPE lookup table (Jonathan Toppins) [1838737] - [netdrv] ice: Graceful error handling in HW table calloc failure (Jonathan Toppins) [1838737] - [netdrv] ice: port fix for chk_linearlize (Jonathan Toppins) [1838737] - [netdrv] ice: Allow 2 queue pairs per VF on SR-IOV initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Clear and free XLT entries on reset (Jonathan Toppins) [1838737] - [netdrv] ice: add useful statistics (Jonathan Toppins) [1838737] - [netdrv] ice: remove page_reuse statistic (Jonathan Toppins) [1838737] - [netdrv] ice: Fix RSS profile locks (Jonathan Toppins) [1838737] - [netdrv] ice: fix the vsi_id mask to be 10 bit for set_rss_lut (Jonathan Toppins) [1838737] - [netdrv] ice: rename misleading grst_delay variable (Jonathan Toppins) [1838737] - [netdrv] ice: mark PM functions as __maybe_unused (Jonathan Toppins) [1838737] - [netdrv] ice: fix unused parameter warning (Jonathan Toppins) [1838737] - [netdrv] ice: disable no longer needed workaround for FW logging (Jonathan Toppins) [1838737] - [netdrv] ice: reduce scope of variable (Jonathan Toppins) [1838737] - [netdrv] ice: cleanup VSI on probe fail (Jonathan Toppins) [1838737] - [netdrv] ice: Allow all VLANs in safe mode (Jonathan Toppins) [1838737] - [netdrv] ice: need_wakeup flag might not be set for Tx (Jonathan Toppins) [1838737] - [netdrv] ice: distribute Tx queues evenly (Jonathan Toppins) [1838737] - [netdrv] ice: Adjust scheduler default BW weight (Jonathan Toppins) [1838737] - [netdrv] ice: Add RL profile bit mask check (Jonathan Toppins) [1838737] - [netdrv] ice: fix overwriting TX/RX descriptor values when rebuilding VSI (Jonathan Toppins) [1838737] - [netdrv] ice: return correct error code from ice_aq_sw_rules (Jonathan Toppins) [1838737] - [netdrv] ice: restore VF MSI-X state during PCI reset (Jonathan Toppins) [1838737] - [netdrv] ice: fix link event handling timing (Jonathan Toppins) [1838737] - [netdrv] ice: Fix link broken after GLOBR reset (Jonathan Toppins) [1838737] - [netdrv] ice: Implement LFC workaround (Jonathan Toppins) [1838737] - [netdrv] ice: implement device flash update via devlink (Jonathan Toppins) [1838737] - [netdrv] ice: add flags indicating pending update of firmware module (Jonathan Toppins) [1838737] - [netdrv] ice: Add AdminQ commands for FW update (Jonathan Toppins) [1838737] - [netdrv] ice: Add support for unified NVM update flow capability (Jonathan Toppins) [1838737] - [netdrv] ice: add 1G SGMII PHY type (Jonathan Toppins) [1838737] - [netdrv] ice: Report AOC PHY Types as Fiber (Jonathan Toppins) [1838737] - [netdrv] ice: add AQC get link topology handle support (Jonathan Toppins) [1838737] - [netdrv] ice: Rename low_power_ctrl (Jonathan Toppins) [1838737] - [netdrv] ice: update reporting of autoneg capabilities (Jonathan Toppins) [1838737] - [netdrv] ice: add ice_aq_get_phy_caps() debug logs (Jonathan Toppins) [1838737] - [netdrv] ice: support Total Port Shutdown on devices that support it (Jonathan Toppins) [1838737] - [netdrv] ice: add link lenient and default override support (Jonathan Toppins) [1838737] - [netdrv] ice: restore PHY settings on media insertion (Jonathan Toppins) [1838737] - [netdrv] ice: move auto FEC checks into ice_cfg_phy_fec() (Jonathan Toppins) [1838737] - [netdrv] ice: refactor FC functions (Jonathan Toppins) [1838737] - [netdrv] ice: Add advanced power mgmt for WoL (Jonathan Toppins) [1838737] - [netdrv] ice: split ice_discover_caps into two functions (Jonathan Toppins) [1838737] - [netdrv] ice: split ice_parse_caps into separate functions (Jonathan Toppins) [1838737] - [netdrv] ice: refactor ice_discover_caps to avoid need to retry (Jonathan Toppins) [1838737] - [netdrv] ice: replace single-element array used for C struct hack (Jonathan Toppins) [1838737] - [netdrv] ice: avoid unnecessary single-member variable-length structs (Jonathan Toppins) [1838737] - [netdrv] ice: implement snapshot for device capabilities (Jonathan Toppins) [1838737] - [netdrv] net/intel: remove driver versions from Intel drivers (Jonathan Toppins) [1838737] - [netdrv] ice: protect ring accesses with WRITE_ONCE (Jonathan Toppins) [1838737] - [netdrv] ice: Ignore EMODE when setting PHY config (Jonathan Toppins) [1838737] - [netdrv] ice: fix aRFS after flow director delete (Jonathan Toppins) [1838737] - [netdrv] ice: Use coalesce values from q_vector 0 when increasing q_vectors (Jonathan Toppins) [1838737] - [netdrv] ice: fix PCI device serial number to be lowercase values (Jonathan Toppins) [1838737] - [netdrv] ice: fix function signature style format (Jonathan Toppins) [1838737] - [netdrv] ice: Allow VF to request reset as soon as it's initialized (Jonathan Toppins) [1838737] - [netdrv] ice: Fix inability to set channels when down (Jonathan Toppins) [1838737] - [netdrv] ice: Always clear QRXFLXP_CNTXT before writing new value (Jonathan Toppins) [1838737] - [netdrv] ice: Reset VF for all port VLAN changes from host (Jonathan Toppins) [1838737] - [netdrv] ice: Update ICE_PHY_TYPE_HIGH_MAX_INDEX value (Jonathan Toppins) [1838737] - [netdrv] ice: Increase timeout after PFR (Jonathan Toppins) [1838737] - [netdrv] ice: Fix transmit for all software offloaded VLANs (Jonathan Toppins) [1838737] - [netdrv] ice: support adding 16 unicast/multicast filter on untrusted VF (Jonathan Toppins) [1838737] - [netdrv] ice: allow host to clear administratively set VF MAC (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor VF VSI release and setup functions (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor VF reset (Jonathan Toppins) [1838737] - [netdrv] ice: remove VM/VF disable command on CORER/GLOBR reset (Jonathan Toppins) [1838737] - [netdrv] ice: Add functions to rebuild host VLAN/MAC config for a VF (Jonathan Toppins) [1838737] - [netdrv] ice: Add function to set trust mode bit on reset (Jonathan Toppins) [1838737] - [netdrv] ice: Renaming and simplification in VF init path (Jonathan Toppins) [1838737] - [netdrv] ice: Separate VF VSI initialization/creation from reset flow (Jonathan Toppins) [1838737] - [netdrv] ice: Add helper function for clearing VPGEN_VFRTRIG (Jonathan Toppins) [1838737] - [netdrv] ice: Simplify ice_sriov_configure (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor ice_ena_vf_mappings to split MSIX and queue mappings (Jonathan Toppins) [1838737] - [netdrv] ice: Declare functions static (Jonathan Toppins) [1838737] - [netdrv] ice: fix kernel BUG if register_netdev fails (Jonathan Toppins) [1838737] - [netdrv] ice: fix potential double free in probe unrolling (Jonathan Toppins) [1838737] - [netdrv] ice: cleanup VSI context initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Poll for reset completion when DDP load fails (Jonathan Toppins) [1838737] - [netdrv] ice: Check UMEM FQ size when allocating bufs (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor Rx checksum checks (Jonathan Toppins) [1838737] - [netdrv] ice: avoid undefined behavior (Jonathan Toppins) [1838737] - [netdrv] ice: Change number of XDP Tx queues to match number of Rx queues (Jonathan Toppins) [1838737] - [netdrv] ice: Add XDP Tx to VSI ring stats (Jonathan Toppins) [1838737] - [netdrv] ice: Change number of XDP TxQ to 0 when destroying rings (Jonathan Toppins) [1838737] - [netdrv] ice: Handle critical FW error during admin queue initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Don't allow VLAN stripping change when pvid set (Jonathan Toppins) [1838737] - [netdrv] ice: Add more Rx errors to netdev's rx_error counter (Jonathan Toppins) [1838737] - [netdrv] ice: Fix for memory leaks and modify ICE_FREE_CQ_BUFS (Jonathan Toppins) [1838737] - [netdrv] ice: Fix memory leak (Jonathan Toppins) [1838737] - [netdrv] ice: fix MAC write command (Jonathan Toppins) [1838737] - [netdrv] ice: set VF default LAN address (Jonathan Toppins) [1838737] - [netdrv] ice: remove unused macro (Jonathan Toppins) [1838737] - [netdrv] ice: fix signed vs unsigned comparisons (Jonathan Toppins) [1838737] - [netdrv] ice: Fix error return code in ice_add_prof() (Jonathan Toppins) [1838737] - [netdrv] ice: replace "fallthrough" comments with fallthrough reserved word (Jonathan Toppins) [1838737]- [kernel] kernel/crash: reserve more memory for fadump (Pingfan Liu) [1891043] - [powerpc] pseries: Pass MSI affinity to irq_create_mapping() (Laurent Vivier) [1702939] - [kernel] genirq/irqdomain: Add an irq_create_mapping_affinity() function (Laurent Vivier) [1702939] - [powerpc] powerpc/perf: Use regs->nip when SIAR is zero (Steve Best) [1903731] - [powerpc] powerpc/perf: Use the address from SIAR register to set cpumode flags (Steve Best) [1903731] - [powerpc] powerpc/perf: Drop the check for SIAR_VALID (Steve Best) [1903731] - [powerpc] powerpc/perf: Add new power PMU flag "PPMU_P10_DD1" for power10 DD1 (Steve Best) [1903731] - [netdrv] net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Initialize QP mutex for the debug kernels (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Allow providing extra scatter CQE QP flag (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Query PPS pin operational status before registering it (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix slab-out-of-bounds in mlx5e_rep_is_lag_netdev (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Verify Hardware supports requested ptp function on a given pin (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix a bug of using ptp channel index as pin index (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix error path of device attach (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix forward to next namespace (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-switch, Destroy TSAR after reload interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-switch, Destroy TSAR when fail to enable the mode (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix prefetch memory leak if get_prefetchable_mr fails (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Prevent prefetch from racing with implicit destruction (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use xa_lock_irq when access to SRQ table (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix usage of rcu-protected pointer (Alaa Hleihel) [1858560] - [netdrv] net/mxl5e: Verify that rpriv is not NULL (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Fix vlan or qos setting in legacy mode (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set PD pointers for the error flow unwind (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix legacy IPoIB QP initialization (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Protect from kernel crash if XRC_TGT doesn't have udata (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix integrity enabled QP creation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove ECE limitation from the RAW_PACKET QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix remote gid value in query QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Don't access ib_qp fields in internal destroy QP path (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add missed RST2INIT and INIT2INIT steps during ECE handshake (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix -Wformat warning in check_ucmd_data() (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove duplicated assignment to resp.response_length (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Fix some error pointer dereferences (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return ECE DC support (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Don't rely on FW to set zeros in ECE response (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return an error if copy_to_user fails (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Make mlx5e_dcbnl_ops static (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: reduce stack usage in qp_read_field (Alaa Hleihel) [1858560] - [netdrv] mlx5: fix xdp data_meta setup in mlx5e_fill_xdp_buff (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Support TX port affinity for VF drivers in LAG mode (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Optimize performance for IPv4/IPv6 ethertype (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Helper function to set ethertype (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use change upper event to setup representors' bond_metadata (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Slave representors sharing unique metadata for match (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Alloc and free unique metadata for match (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Add bond_metadata and its slave entries (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Offload flow rules to active lower representor (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Support tc block sharing for representors (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use netdev events to set/del egress acl forward-to-vport rule (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Introduce APIs to enable egress acl forward-to-vport rule (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Refactor eswitch ingress acl codes (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Refactor eswitch egress acl codes (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return ECE data after modify QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set ECE options during modify QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Convert modify QP to use MLX5_SET macros (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove manually crafted QP context the query call (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use direct modify QP implementation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set ECE options during QP create (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Get ECE options from FW during create QP (Alaa Hleihel) [1858560] - [include] net/mlx5: Add ability to read and write ECE options (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use IS_ERR() to check and simplify code (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Add support for RDMA TX FT headers modifying (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Move iseg access helper routines close to mlx5_core driver (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Cleanup mlx5_ifc_fte_match_set_misc2_bits (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update mlx5_ib driver name (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Calculate SQ stop room in a robust way (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Move internal timer read function to clock library (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix a bug of releasing wrong chunks on > 4K page size systems (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Dedicate fw page to the requesting function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix query_srq_cmd() function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add support for drop action in DV steering (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add support in steering default miss (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor DV create flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support in forward to namespace (Alaa Hleihel) [1858560] - [infiniband] {IB/net}/mlx5: Simplify don't trap code (Alaa Hleihel) [1858560] - [include] net/mlx5: Replace zero-length array with flexible-array (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Enhance ICOSQ WQE info fields (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Accel, Remove unnecessary header include (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use struct assignment for WQE info updates (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Take TX WQE info structures out of general EN header (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: kTLS, Do not fill edge for the DUMP WQEs in TX flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: kTLS, Fill work queue edge separately in TX flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Split TX acceleration offloads into two phases (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Update UDP fields of the SKB for GSO first (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Make TLS offload independent of wqe and pi (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Pass only eseg to IPSEC offload (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Return void from mlx5e_sq_xmit and mlx5i_sq_xmit (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Unify checks of TLS offloads (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Return bool from TLS and IPSEC offloads (Alaa Hleihel) [1858560] - [netdrv] net: remove newlines in NL_SET_ERR_MSG_MOD (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove duplicated assignment to variable rcqe_sz (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Allow only raw Ethernet QPs when RoCE isn't enabled (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Assign profile before calling stages (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Move all WR logic from qp.c to separate file (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor mlx5_post_send() to improve readability (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update mlx5_ib to use new cmd interface (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set UDP source port based on the grh.flow_label (Alaa Hleihel) [1858560 1851704] - [infiniband] RDMA/mlx5: Define RoCEv2 udp source port when set path (Alaa Hleihel) [1858560 1851704] - [infiniband] RDMA/mlx5: Set lag tx affinity according to slave (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor affinity related code (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support to get lag physical port (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Change lag mutex lock to spin lock (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Consolidate into special function all create QP calls (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove redundant destroy QP call (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Copy response to the user in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Handle udate outlen checks in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Promote RSS RAW QP flags check to higher level (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Group all create QP parameters to simplify in-kernel interfaces (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Reduce amount of duplication in QP destroy (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate to user/kernel create QP flows (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate XRC_TGT QP creation from common flow (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Globally parse DEVX UID (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete impossible inlen check (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Rely on existence of udata to separate kernel/user flows (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove second user copy in create_user_qp (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Combine copy of create QP command in RSS RAW QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Promote RSS RAW QP attribute check in higher level (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Store QP type in the vendor QP structure (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete unsupported QP types (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Unify reserving space for WQEs (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Rename ICOSQ WQE info struct and field (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fetch WQE: reuse code and enforce typing (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: XDP, Print the offending TX descriptor on error completion (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: TX, Generalise code and usage of error CQE dump (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use proper name field for the UMR key (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support for release all pages event (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Rate limit page not found error messages (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add helper function to release fw page (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove unused field in EQ (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Remove unneeded semicolon (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: IPsec, Fix coverity issue (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Process all vendor flags in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return all configured create flags through query QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Change scatter CQE flag to be set like other vendor flags (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use flags_en mechanism to mark QP created with WQE signature (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Process create QP flags in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete create QP flags obfuscation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Initial separation of RAW_PACKET QP from common flow (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove second copy from user for non RSS RAW QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Move DRIVER QP flags check into separate function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update all DRIVER QP places to use QP subtype (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Split scatter CQE configuration for DCT QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate create QP flows to be based on type (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set QP subtype immediately when it is known (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Avoid setting redundant NULL for XRC QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Prepare QP allocation for future removal (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Perform check if QP creation flow is valid (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete impossible GSI port check (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Organize QP types checks in one place (Alaa Hleihel) [1858560] - [include] net/mlx5: TX WQE Add trailer insertion field (Alaa Hleihel) [1858560] - [include] net/mlx5: Add release all pages capability bit (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Introduce TLS RX offload hardware bits (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add structure and defines for pci sync for fw update event (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add structure layout and defines for MFRL register (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Use aligned variable while allocating ICM memory (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Introduce IPsec Connect-X offload hardware bits and structures (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update transobj.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update SW steering new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update port.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update rl.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update uar.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update pd.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update pagealloc.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mr.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mcg.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update main.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update vxlan.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mpfs.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update gid.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update lag.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update fw.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update fs_core new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update FPGA to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update eswitch to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] ethernet: remove redundant memset (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update statistics to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update eq.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update ecpf.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update debugfs.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update cq.c to new cmd interface (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Update vport.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: improve some comments (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Read embedded cpu bit only once (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Handle errors from netif_set_real_num_{tx, rx}_queues (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: IPsec, Refactor SA handle creation and destruction (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: IPSec, Expose IPsec HW stat only for supporting HW (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Refactor mlx5_accel_esp_create_hw_context parameter list (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Use the correct IPsec capability function for FPGA ops (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Enable SW-defined RoCEv2 UDP source port (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Refactor HCA capability set flow (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Move QP logic to mlx5_ib (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Alphabetically sort build artifacts (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Delete not-used cmd header (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete Q counter allocations command (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove Q counter low level helper APIs (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Replace hand written QP context struct with automatic getters (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove extra indirection while storing QPN (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in the IPoIB module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in the FPGA module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in steering module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove empty QP and CQ events handlers (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code create and destroy QP calls (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Provide simplified command interfaces (Alaa Hleihel) [1858560] - [x86] kvm: x86/mmu: Fix get_mmio_spte() on CPUs supporting 5-level PT (Vitaly Kuznetsov) [1902184] - [net] netdevsim: devlink flash timeout message (Petr Oros) [1882019] - [net] devlink: collect flash notify params into a struct (Petr Oros) [1882019] - [net] devlink: add timeout information to status_notify (Petr Oros) [1882019] - [firmware] efi/esrt: Only call efi_mem_reserve() for boot services memory (Kairui Song) [1878024] - [firmware] efi: Drop type and attribute checks in efi_mem_desc_lookup() (Kairui Song) [1878024] - [fs] iomap: Fix direct I/O write consistency check (Andreas Grunbacher) [1875556] - [fs] gfs2: fix O_SYNC write handling (Andreas Grunbacher) [1871923] - [fs] gfs2: move setting current->backing_dev_info (Andreas Grunbacher) [1871923] - [fs] gfs2: Don't return NULL from gfs2_inode_lookup (Andreas Grunbacher) [1872061] - [fs] gfs2: If go_sync returns error, withdraw but skip invalidate (Robert S Peterson) [1875035] - [fs] gfs2: Close timing window with GLF_INVALIDATE_IN_PROGRESS (Robert S Peterson) [1875035] - [fs] gfs2: Fix refcount leak in gfs2_glock_poke (Robert S Peterson) [1875035] - [fs] gfs2: Add missing truncate_inode_pages_final for sd_aspace (Robert S Peterson) [1875035] - [fs] gfs2: call truncate_inode_pages_final for address space glocks (Robert S Peterson) [1875035] - [fs] gfs2: simplify the logic in gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: factor evict_linked_inode out of gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: further simplify gfs2_evict_inode with new func evict_should_delete (Robert S Peterson) [1875035] - [fs] gfs2: factor evict_unlinked_inode out of gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: rename variable error to ret in gfs2_evict_inode (Robert S Peterson) [1875035] - [net] ethtool: Add link extended state (Ivan Vecera) [1894545] - [documentation] networking: ethtool-netlink: Add link extended state (Ivan Vecera) [1894545] - [net] ethtool: fix error handling in linkstate_prepare_data() (Ivan Vecera) [1894545] - [net] ethtool: provide UAPI for PHY Signal Quality Index (SQI) (Ivan Vecera) [1894545]- [mm] mm/hugetlb: fix a race between hugetlb sysctl handlers (Julia Denham) [1886241] {CVE-2020-25285} - [kernel] audit: do not set FS_EVENT_ON_CHILD in audit marks mask (Richard Guy Briggs) [1896480] - [net] missing barriers in some of unix_sock ->addr and ->path accesses (Richard Guy Briggs) [1896480] - [kernel] audit: fix macros warnings (Richard Guy Briggs) [1896480] - [kernel] audit: trigger accompanying records when no rules present (Richard Guy Briggs) [1896480] - [kernel] audit: fix a kernel-doc markup (Richard Guy Briggs) [1896480] - [kernel] audit: Remove redundant null check (Richard Guy Briggs) [1896480] - [kernel] audit: uninitialize variable audit_sig_sid (Richard Guy Briggs) [1896480] - [kernel] audit: change unnecessary globals into statics (Richard Guy Briggs) [1896480] - [kernel] audit: report audit wait metric in audit status reply (Richard Guy Briggs) [1896480] - [security] audit: purge audit_log_string from the intra-kernel audit API (Richard Guy Briggs) [1896480] - [security] apparmor: Check buffer bounds when mapping permissions mask (Richard Guy Briggs) [1896480] - [kernel] audit: issue CWD record to accompany LSM_AUDIT_DATA_* records (Richard Guy Briggs) [1896480] - [net] audit: use the proper gfp flags in the audit_log_nfcfg() calls (Richard Guy Briggs) [1896480] - [include] audit: remove unused !CONFIG_AUDITSYSCALL __audit_inode* stubs (Richard Guy Briggs) [1896480] - [net] audit: add gfp parameter to audit_log_nfcfg (Richard Guy Briggs) [1896480] - [kernel] audit: log nftables configuration change events (Richard Guy Briggs) [1896480] - [kernel] audit: Use struct_size() helper in alloc_chunk (Richard Guy Briggs) [1896480] - [kernel] revert: 1320a4052ea1 ("audit: trigger accompanying records when no rules present") (Richard Guy Briggs) [1896480] - [include] audit: Replace zero-length array with flexible-array (Richard Guy Briggs) [1896480] - [netdrv] net: usb: lan78xx: Disable interrupts before calling generic_handle_irq() (Waiman Long) [1904213] - [mm] x86/mm/cpa: Prevent large page split when ftrace flips RW on kernel text (Waiman Long) [1904213] - [mm] x86/mm/cpa: Fix cpa_flush_array() TLB invalidation (Waiman Long) [1904213] - [net] netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist() (Ondrej Mosnacek) [1901171] - [net] netlabel: fix our progress tracking in netlbl_unlabel_staticlist() (Ondrej Mosnacek) [1901171] - [netdrv] net: ena: fix packet's addresses for rx_offset feature (Petr Oros) [1861967] - [netdrv] net: ena: handle bad request id in ena_netdev (Petr Oros) [1861967] - [netdrv] net: ena: Change WARN_ON expression in ena_del_napi_in_range() (Petr Oros) [1861967] - [netdrv] net: ena: support new LLQ acceleration mode (Petr Oros) [1861967] - [netdrv] net: ena: move llq configuration from ena_probe to ena_device_init() (Petr Oros) [1861967] - [netdrv] net: ena: enable support of rss hash key and function changes (Petr Oros) [1861967] - [netdrv] net: ena: add support for traffic mirroring (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: change ena_com_stats_admin stats to u64 (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: satisfy gcc warning (Petr Oros) [1861967] - [netdrv] net: ena: add reserved PCI device ID (Petr Oros) [1861967] - [netdrv] net: ena: avoid unnecessary rearming of interrupt vector when busy-polling (Petr Oros) [1861967] - [netdrv] net: ena: Fix using plain integer as NULL pointer in ena_init_napi_in_range (Petr Oros) [1861967] - [netdrv] ena_netdev: use generic power management (Petr Oros) [1861967] - [netdrv] net: ena: xdp: update napi budget for DROP and ABORTED (Petr Oros) [1861967] - [netdrv] net: ena: xdp: XDP_TX: fix memory leak (Petr Oros) [1861967] - [netdrv] xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame (Petr Oros) [1861967] - [netdrv] net: ena: reduce driver load time (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: minor code changes (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix spacing issues (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: code reorderings (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: remove unnecessary code (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix line break issues (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix spelling and grammar mistakes in comments (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: set queue sizes to u32 for consistency (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: rename ena_update_tx/rx_rings_intr_moderation() (Petr Oros) [1861967] - [netdrv] net: ena: simplify ena_com_update_intr_delay_resolution() (Petr Oros) [1861967] - [netdrv] net: ena: fix ena_com_comp_status_to_errno() return value (Petr Oros) [1861967] - [netdrv] net: ena: use explicit variable size for clarity (Petr Oros) [1861967] - [netdrv] net: ena: rename ena_com_free_desc to make API more uniform (Petr Oros) [1861967] - [netdrv] net: ena: add support for the rx offset feature (Petr Oros) [1861967] - [netdrv] ena: Add XDP frame size to amazon NIC driver (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: extract code to ena_indirection_table_set() (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: remove unnecessary spaces and tabs in ena_com.h macros (Petr Oros) [1861967] - [netdrv] net: ena: use SHUTDOWN as reset reason when closing interface (Petr Oros) [1861967] - [netdrv] net: ena: drop superfluous prototype (Petr Oros) [1861967] - [netdrv] net: ena: add support for reporting of packet drops (Petr Oros) [1861967] - [netdrv] net: ena: add unmask interrupts statistics to ethtool (Petr Oros) [1861967] - [netdrv] net: ena: remove code that does nothing (Petr Oros) [1861967] - [netdrv] net: ena: changes to RSS hash key allocation (Petr Oros) [1861967] - [netdrv] net: ena: change default RSS hash function to Toeplitz (Petr Oros) [1861967] - [netdrv] net: ena: allow setting the hash function without changing the key (Petr Oros) [1861967] - [netdrv] net: ena: fix error returning in ena_com_get_hash_function() (Petr Oros) [1861967] - [netdrv] net: ena: avoid unnecessary admin command when RSS function set fails (Petr Oros) [1861967] - [netdrv] net/ena: Fix build warning in ena_xdp_set() (Petr Oros) [1861967] - [netdrv] net: ena: Make some functions static (Petr Oros) [1861967] - [netdrv] net: ena: fix continuous keep-alive resets (Petr Oros) [1861967] - [netdrv] net: ena: avoid memory access violation by validating req_id properly (Petr Oros) [1861967] - [netdrv] net: ena: fix request of incorrect number of IRQ vectors (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrect setting of the number of msix vectors (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: clean up minor indentation issue (Petr Oros) [1861967] - [netdrv] net: ena: reject unsupported coalescing params (Petr Oros) [1861967] - [netdrv] net: ena: fix broken interface between ENA driver and FW (Petr Oros) [1861967] - [netdrv] net/amazon: Ensure that driver version is aligned to the linux kernel (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: remove redundant non-zero check on rc (Petr Oros) [1861967] - [netdrv] net: ena: remove set but not used variable 'hash_key' (Petr Oros) [1861967] - [netdrv] net: ena: ena-com.c: prevent NULL pointer dereference (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: use correct value for crc32 hash (Petr Oros) [1861967] - [netdrv] net: ena: make ena rxfh support ETH_RSS_HASH_NO_CHANGE (Petr Oros) [1861967] - [netdrv] net: ena: fix corruption of dev_idx_to_host_tbl (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrectly saving queue numbers when setting RSS indirection table (Petr Oros) [1861967] - [netdrv] net: ena: rss: store hash function as values and not bits (Petr Oros) [1861967] - [netdrv] net: ena: rss: fix failure to get indirection table (Petr Oros) [1861967] - [netdrv] net: ena: rss: do not allocate key when not supported (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrect default RSS key (Petr Oros) [1861967] - [netdrv] net: ena: add missing ethtool TX timestamping indication (Petr Oros) [1861967] - [netdrv] net: ena: fix uses of round_jiffies() (Petr Oros) [1861967] - [netdrv] net: ena: fix potential crash when rxfh key is NULL (Petr Oros) [1861967] - [netdrv] net: ena: remove set but not used variable 'rx_ring' (Petr Oros) [1861967] - [netdrv] net: ena: fix issues in setting interrupt moderation params in ethtool (Petr Oros) [1861967] - [netdrv] net: ena: fix default tx interrupt moderation interval (Petr Oros) [1861967] - [netdrv] net: ena: Add first_interrupt field to napi struct (Petr Oros) [1861967] - [netdrv] net: ena: Implement XDP_TX action (Petr Oros) [1861967] - [netdrv] net: ena: implement XDP drop support (Petr Oros) [1861967] - [netdrv] net: ena: fix napi handler misbehavior when the napi budget is zero (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: support set_channels callback (Petr Oros) [1861967] - [netdrv] net: ena: remove redundant print of number of queues (Petr Oros) [1861967] - [netdrv] net: ena: make ethtool -l show correct max number of queues (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: get_channels: use combined only (Petr Oros) [1861967] - [netdrv] net: ena: multiple queue creation related cleanups (Petr Oros) [1861967] - [netdrv] net: ena: change num_queues to num_io_queues for clarity and consistency (Petr Oros) [1861967] - [kernel] rcu/tree: docs: document bkvcache new members at struct kfree_rcu_cpu (Nico Pache) [1894223] - [mm] kasan: don't assume percpu shadow allocations will succeed (Nico Pache) [1894223] - [lib] kasan: update required compiler versions in documentation (Nico Pache) [1894223] - [lib] kasan: improve and simplify Kconfig.kasan (Nico Pache) [1894223] - [lib] kasan: Fix required compiler version (Nico Pache) [1894223] - [lib] kasan: Bump required compiler version (Nico Pache) [1894223] - [documentation] kasan: update documentation for generic kasan (Nico Pache) [1894223] - [mm] kasan: record and print the free track (Nico Pache) [1894223] - [mm] rcu: kasan: record and print call_rcu() call stack (Nico Pache) [1894223] - [kernel] rcu: Support reclaim for head-less object (Nico Pache) [1894223] - [kernel] rcu: Introduce 2 arg kvfree_rcu() interface (Nico Pache) [1894223] - [mm] mm/list_lru.c: Rename kvfree_rcu() to local variant (Nico Pache) [1894223] - [kernel] rcu: Rename *_kfree_callback/*_kfree_rcu_offset/kfree_call_* (Nico Pache) [1894223] - [kernel] rcu/tiny: support vmalloc in tiny-RCU (Nico Pache) [1894223] - [kernel] rcu/tree: Maintain separate array for vmalloc ptrs (Nico Pache) [1894223] - [kernel] rcu/tree: cache specified number of objects (Nico Pache) [1894223] - [kernel] rcu/tree: Use static initializer for krc.lock (Nico Pache) [1894223] - [kernel] rcu/tree: Move kfree_rcu_cpu locking/unlocking to separate functions (Nico Pache) [1894223] - [kernel] rcu/tree: Simplify KFREE_BULK_MAX_ENTR macro (Nico Pache) [1894223] - [kernel] rcu/tree: Make debug_objects logic independent of rcu_head (Nico Pache) [1894223] - [kernel] rcu/tree: Repeat the monitor if any free channel is busy (Nico Pache) [1894223] - [kernel] rcu/tree: Skip entry into the page allocator for PREEMPT_RT (Nico Pache) [1894223] - [kernel] rcu/tree: Keep kfree_rcu() awake during lock contention (Nico Pache) [1894223] - [kernel] rcu: Fix a kernel-doc warnings for "count" (Nico Pache) [1894223] - [kernel] rcu/tree: Count number of batched kfree_rcu() locklessly (Nico Pache) [1894223] - [kernel] rcu/tree: Add a shrinker to prevent OOM due to kfree_rcu() batching (Nico Pache) [1894223] - [kernel] rcuperf: Measure memory footprint during kfree_rcu() test (Nico Pache) [1894223] - [kernel] rcu: Add a trace event for kfree_rcu() use of kfree_bulk() (Nico Pache) [1894223] - [kernel] rcu: Support kfree_bulk() interface in kfree_rcu() (Nico Pache) [1894223] - [mm] kasan: fix clang compilation warning due to stack protector (Nico Pache) [1894223] - [mm] kasan: disable branch tracing for core runtime (Nico Pache) [1894223] - [mm] kasan: add missing functions declarations to kasan.h (Nico Pache) [1894223] - [mm] kasan: consistently disable debugging features (Nico Pache) [1894223] - [mm] kasan: unset panic_on_warn before calling panic() (Nico Pache) [1894223] - [mm] kasan: detect negative size in memory operation function (Nico Pache) [1894223] - [mm] kasan: No KASAN's memmove check if archs don't have it (Nico Pache) [1894223] - [mm] kasan: use apply_to_existing_page_range() for releasing vmalloc shadow (Nico Pache) [1894223] - [mm] kasan: fix crashes on access to memory mapped by vm_map_ram() (Nico Pache) [1894223] - [mm] mm/kasan/common.c: fix compile error (Nico Pache) [1894223] - [mm] kasan: support backing vmalloc space with real shadow memory (Nico Pache) [1894223] - [mm] mm/vmalloc: rework vmap_area_lock (Nico Pache) [1894223] - [mm] mm/vmalloc: remove preempt_disable/enable when doing preloading (Nico Pache) [1894223] - [mm] mm/vmalloc.c: switch to WARN_ON() and move it under unlink_va() (Nico Pache) [1894223] - [mm] mm/vmalloc.c: get rid of one single unlink_va() when merge (Nico Pache) [1894223] - [mm] mm/vmalloc.c: preload a CPU with one object for split purpose (Nico Pache) [1894223] - [mm] mm/vmalloc.c: remove "node" argument (Nico Pache) [1894223] - [mm] mm/vmalloc: modify struct vmap_area to reduce its size (Nico Pache) [1894223] - [mm] mm/vmalloc: do not keep unpurged areas in the busy tree (Nico Pache) [1894223] - [mm] mm/vmalloc.c: fix percpu free VM area search criteria (Nico Pache) [1894223] - [mm] mm/vmalloc.c: avoid bogus -Wmaybe-uninitialized warning (Nico Pache) [1894223] - [mm] mm/vmap: add DEBUG_AUGMENT_LOWEST_MATCH_CHECK macro (Nico Pache) [1894223] - [mm] mm/vmap: add DEBUG_AUGMENT_PROPAGATE_CHECK macro (Nico Pache) [1894223] - [mm] mm/vmalloc.c: keep track of free blocks for vmap allocation (Nico Pache) [1894223] - [mm] mm/vmalloc.c: convert vmap_lazy_nr to atomic_long_t (Nico Pache) [1894223] - [mm] mm/kasan: change kasan_check_{read, write} to return boolean (Nico Pache) [1894223] - [mm] mm/kasan: introduce __kasan_check_{read, write} (Nico Pache) [1894223] - [mm] kasan: fix coccinelle warnings in kasan_p*_table (Nico Pache) [1894223] - [mm] kasan: fix kasan_check_read/write definitions (Nico Pache) [1894223] - [lib] kasan: remove use after scope bugs detection (Nico Pache) [1894223] - [lib] kasan: remove clang version check for KASAN_STACK (Nico Pache) [1894223] - [lib] kasan: turn off asan-stack for clang-8 and earlier (Nico Pache) [1894223] - [block] nbd: fix a block_device refcount leak in nbd_release (Ming Lei) [1901400] - [tools] selftests: Set default protocol for raw sockets in nettest (Hangbin Liu) [1898813] - [tools] selftests/net: improve descriptions for XFAIL cases in psock_snd.sh (Hangbin Liu) [1898813] - [tools] selftests: rtnetlink: make kci_test_encap() return sub-test result (Hangbin Liu) [1898813] - [tools] selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support (Hangbin Liu) [1898813] - [tools] selftests: use LDLIBS for libraries instead of LDFLAGS (Hangbin Liu) [1898813] - [tools] selftests: tls: run all tests for TLS 1.2 and TLS 1.3 (Hangbin Liu) [1898813] - [tools] selftests/net: add definition for SOL_DCCP to fix compilation errors for old libc (Hangbin Liu) [1898813] - [tools] selftests: net: reuseport_addr_any: silence clang warning (Hangbin Liu) [1898813] - [tools] selftests: net: refactor reuseport_addr_any test (Hangbin Liu) [1898813] - [tools] selftests: net: reuseport_addr_any: add DCCP (Hangbin Liu) [1898813] - [tools] selftests: net: test that listening sockets match on address properly (Hangbin Liu) [1898813] - [tools] selftests/net: make udpgso_bench skip unsupported testcases (Hangbin Liu) [1898813] - [tools] net/udpgso_bench.sh test fails on error (Hangbin Liu) [1898813] - [tools] net/udpgso_bench.sh add UDP GSO audit tests (Hangbin Liu) [1898813] - [tools] selftests: extend zerocopy tests to udp (Hangbin Liu) [1898813] - [tools] net/udpgso_bench_tx: options to exercise TX CMSG (Hangbin Liu) [1898813] - [tools] selftests: fixes for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests/net: replace obsolete NFT_CHAIN configuration (Hangbin Liu) [1898813] - [tools] selftests: explicitly require kernel features needed by udpgro tests (Hangbin Liu) [1898813] - [tools] selftests: add explicit test for multiple concurrent GRO sockets (Hangbin Liu) [1898813] - [tools] selftests: add functionals test for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests: add some benchmark for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests: add GRO support to udp bench rx program (Hangbin Liu) [1898813] - [net] sctp: change to hold/put transport for proto_unreach_timer (Xin Long) [1897084] - [scsi] scsi: qedi: Add schedule_hw_err_handler callback for fan failure (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Add support for handling PCIe errors (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Add firmware error recovery invocation support (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Mark all connections for recovery on link down event (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Use snprintf instead of sprintf (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Protect active command list to avoid list corruption (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Fix list_del corruption while removing active I/O (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Skip firmware connection termination for PCI shutdown handler (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Use qed count from set_fp_int in msix allocation (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove redundant NULL check (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Staticify non-external function 'qedi_get_iscsi_error' (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Demote seemingly unintentional kerneldoc header (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove set but unused variable 'tmp' (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove 2 set but unused variables (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove unused variable udev & uctrl (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove comparison of 0/1 to bool variable (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Check for buffer overflow in qedi_set_path() (Nilesh Javali) [1854121] - [scsi] scsi: qedf: Remove redundant assignment to variable 'rc' (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Retry qed->probe during recovery (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Add schedule_hw_err_handler callback for fan failure (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Return SUCCESS if stale rport is encountered (Nilesh Javali) [1854122] - [scsi] scsi: qedf: FDMI attributes correction (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Use pci_get_dsn() (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix for the session's E_D_TOV value (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Correct the comment in qedf_initiate_els (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Change the debug parameter permission to read & write (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix null ptr reference in qedf_stag_change_work (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix race between ELS completion and flushing ELS request (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Don't process ELS completion if event is flushed or cleaned up (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Initiate cleanup for ELS commands as well (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Send cleanup even for RRQ on timeout (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Do not kill timeout work for original I/O on RRQ completion (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Check the validity of rjt frame before processing (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Check for port type and role before processing an event (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove a whole host of unused variables (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove set but not checked variable 'tmp' (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove redundant initialization of variable rc (Nilesh Javali) [1854122] - [infiniband] RDMA/qedr: Fix memory leak in iWARP CM (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix function prototype parameters alignment (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix inline size returned for iWARP (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix iWARP active mtu display (Manish Chopra) [1857857] - [netdrv] qede: Notify qedr when mtu has changed (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix return code if accept is called on a destroyed qp (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix use of uninitialized field (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix doorbell setting (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix qp structure memory leak (Manish Chopra) [1857857] - [netdrv] net: qed: RDMA personality shouldn't fail VF load (Manish Chopra) [1857857] - [netdrv] net: qede: Disable aRFS for NPAR and 100G (Manish Chopra) [1857857] - [netdrv] net: qed: Disable aRFS for NPAR and 100G (Manish Chopra) [1857857] - [netdrv] net: qed: use eth_zero_addr() to clear mac address (Manish Chopra) [1857857] - [netdrv] net: qede: use eth_zero_addr() to clear mac address (Manish Chopra) [1857857] - [netdrv] qede: Use pM format specifier for MAC addresses (Manish Chopra) [1857857] - [netdrv] qed: Use pM format specifier for MAC addresses (Manish Chopra) [1857857] - [infiniband] qed: fix assignment of n_rq_elems to incorrect params field (Manish Chopra) [1857857] - [netdrv] qed: fix the allocation of the chains with an external PBL (Manish Chopra) [1857857] - [netdrv] qede: add .ndo_xdp_xmit() and XDP_REDIRECT support (Manish Chopra) [1857857] - [netdrv] qede: refactor XDP Tx processing (Manish Chopra) [1857857] - [netdrv] qede: reformat net_device_ops declarations (Manish Chopra) [1857857] - [netdrv] qede: reformat several structures in "qede.h" (Manish Chopra) [1857857] - [include] qed: introduce qed_chain_get_elem_used{, u32}() (Manish Chopra) [1857857] - [include] qed: optimize common chain accessors (Manish Chopra) [1857857] - [infiniband] qed: add support for different page sizes for chains (Manish Chopra) [1857857] - [netdrv] qed: simplify chain allocation with init params struct (Manish Chopra) [1857857] - [netdrv] qed: simplify initialization of the chains with an external PBL (Manish Chopra) [1857857] - [netdrv] qed: move chain initialization inlines next to allocation functions (Manish Chopra) [1857857] - [netdrv] qed: sanitize PBL chains allocation (Manish Chopra) [1857857] - [netdrv] qed: prevent possible double-frees of the chains (Manish Chopra) [1857857] - [netdrv] qed: move chain methods to a separate file (Manish Chopra) [1857857] - [netdrv] qed: reformat Makefile (Manish Chopra) [1857857] - [include] qed: reformat "qed_chain.h" a bit (Manish Chopra) [1857857] - [netdrv] net: qed_hsi.h: Avoid the use of one-element array (Manish Chopra) [1857857] - [netdrv] net: qed: Remove unneeded cast from memory allocation (Manish Chopra) [1857857] - [netdrv] qed: suppress false-positives interrupt error messages on HW init (Manish Chopra) [1857857] - [netdrv] qed: suppress "don't support RoCE & iWARP" flooding on HW init (Manish Chopra) [1857857] - [netdrv] qed: Fix ILT and XRCD bitmap memory leaks (Manish Chopra) [1857857] - [netdrv] qed: add support for the extended speed and FEC modes (Manish Chopra) [1857857] - [netdrv] qed: populate supported link modes maps on module init (Manish Chopra) [1857857] - [netdrv] qed: add missing loopback modes (Manish Chopra) [1857857] - [netdrv] qed: add support for new port modes (Manish Chopra) [1857857] - [netdrv] qed: remove unused qed_hw_info::port_mode and QED_PORT_MODE (Manish Chopra) [1857857] - [netdrv] qed: reformat several structures a bit (Manish Chopra) [1857857] - [netdrv] qede: introduce support for FEC control (Manish Chopra) [1857857] - [netdrv] qede: format qede{,_vf}_ethtool_ops (Manish Chopra) [1857857] - [netdrv] qed: add support for Forward Error Correction (Manish Chopra) [1857857] - [netdrv] qed: reformat several structures a bit (Manish Chopra) [1857857] - [netdrv] qed: use transceiver data to fill link partner's advertising speeds (Manish Chopra) [1857857] - [netdrv] qed: add support for multi-rate transceivers (Manish Chopra) [1857857] - [netdrv] qed: reformat public_port::transceiver_data a bit (Manish Chopra) [1857857] - [netdrv] qede: populate supported link modes maps on module init (Manish Chopra) [1857857] - [netdrv] qed, qede, qedf: convert link mode from u32 to ETHTOOL_LINK_MODE (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Add EDPM max size to alloc ucontext response (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Add EDPM mode type for user-fw compatibility (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: SRQ's bug fixes (Manish Chopra) [1857857] - [include] net: qed: drop duplicate words in comments (Manish Chopra) [1857857] - [netdrv] qede: convert to new udp_tunnel_nic infra (Manish Chopra) [1857857] - [netdrv] qed: Disable "MFW indication via attention" SPAM every 5 minutes (Manish Chopra) [1857857] - [netdrv] qed: Populate nvm-file attributes while reading nvm config partition (Manish Chopra) [1857857] - [netdrv] net: qede: fix BE vs CPU comparison (Manish Chopra) [1857857] - [netdrv] net: qede: fix kernel-doc for qede_ptp_adjfreq() (Manish Chopra) [1857857] - [netdrv] net: qed: sanitize BE/LE data processing (Manish Chopra) [1857857] - [netdrv] net: qed: use ptr shortcuts to dedup field accessing in some parts (Manish Chopra) [1857857] - [netdrv] net: qed: improve indentation of some parts of code (Manish Chopra) [1857857] - [netdrv] net: qed: address kernel-doc warnings (Manish Chopra) [1857857] - [netdrv] net: qed: correct qed_hw_err_notify() prototype (Manish Chopra) [1857857] - [netdrv] net: qed: cleanup global structs declarations (Manish Chopra) [1857857] - [netdrv] net: qed: move static iro_arrout of header file (Manish Chopra) [1857857] - [netdrv] qed: Make symbol 'qed_hw_err_type_descr' static (Manish Chopra) [1857857] - [netdrv] net: qede: update copyright years (Manish Chopra) [1857857] - [netdrv] net: qede: convert to SPDX License Identifiers (Manish Chopra) [1857857] - [netdrv] net: qede: correct existing SPDX tags (Manish Chopra) [1857857] - [netdrv] net: qed: update copyright years (Manish Chopra) [1857857] - [netdrv] net: qed: convert to SPDX License Identifiers (Manish Chopra) [1857857] - [netdrv] net: qed: correct existing SPDX tags (Manish Chopra) [1857857] - [netdrv] qed: add missing error test for DBG_STATUS_NO_MATCHING_FRAMING_MODE (Manish Chopra) [1857857] - [netdrv] net: qed: fix "maybe uninitialized" warning (Manish Chopra) [1857857] - [netdrv] net: qed: reset ILT block sizes before recomputing to fix crashes (Manish Chopra) [1857857] - [netdrv] net: qede: fix use-after-free on recovery and AER handling (Manish Chopra) [1857857] - [netdrv] net: qede: fix PTP initialization on recovery (Manish Chopra) [1857857] - [netdrv] net: qed: fix excessive QM ILT lines consumption (Manish Chopra) [1857857] - [netdrv] net: qed: fix NVMe login fails over VFs (Manish Chopra) [1857857] - [netdrv] net: qede: stop adding events on an already destroyed workqueue (Manish Chopra) [1857857] - [netdrv] net: qed: fix async event callbacks unregistering (Manish Chopra) [1857857] - [include] net: qed: fix left elements count calculation (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix KASAN: use-after-free in ucma_event_handler+0x532 (Manish Chopra) [1857857] - [netdrv] qed: Add EDPM mode type for user-fw compatibility (Manish Chopra) [1857857] - [netdrv] qed: Add XRC to RoCE (Manish Chopra) [1857857] - [netdrv] qed: changes to ILT to support XRC (Manish Chopra) [1857857] - [include] net: qed: fix bad formatting (Manish Chopra) [1857857] - [netdrv] net: qed: introduce critical hardware error handler (Manish Chopra) [1857857] - [netdrv] net: qed: introduce critical fan failure handler (Manish Chopra) [1857857] - [netdrv] net: qede: Implement ndo_tx_timeout (Manish Chopra) [1857857] - [netdrv] net: qede: optional hw recovery procedure (Manish Chopra) [1857857] - [netdrv] net: qed: attention clearing properties (Manish Chopra) [1857857] - [netdrv] net: qed: cleanup debug related declarations (Manish Chopra) [1857857] - [netdrv] net: qed: critical err reporting to management firmware (Manish Chopra) [1857857] - [netdrv] net: qed: invoke err notify on critical areas (Manish Chopra) [1857857] - [netdrv] net: qede: add hw err scheduled handler (Manish Chopra) [1857857] - [netdrv] net: qed: adding hw_err states and handling (Manish Chopra) [1857857] - [netdrv] net: qede: Use true for bool variable in qede_init_fp() (Manish Chopra) [1857857] - [netdrv] qed: Make ll2_cbs static (Manish Chopra) [1857857] - [netdrv] qede: Add support for handling the pcie errors (Manish Chopra) [1857857] - [netdrv] qed: Enable device error reporting capability (Manish Chopra) [1857857] - [netdrv] qed: use true,false for bool variables (Manish Chopra) [1857857] - [netdrv] net: qed: Remove unneeded cast from memory allocation (Manish Chopra) [1857857] - [netdrv] net: qede: reject unsupported coalescing params (Manish Chopra) [1857857] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 (Manish Chopra) [1857857] - [scsi] treewide: Add SPDX license identifier - Makefile/Kconfig (Manish Chopra) [1857857] - [netdrv] sfc: don't double-down() filters in ef100_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: Fix error code in probe (Jarod Wilson) [1856681] - [netdrv] sfc: fix boolreturn.cocci warning and rename function (Jarod Wilson) [1856681] - [netdrv] sfc: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Jarod Wilson) [1856681] - [netdrv] sfc: Use fallthrough pseudo-keyword (Jarod Wilson) [1856681] - [netdrv] sfc: fix build warnings on 32-bit (Jarod Wilson) [1856681] - [netdrv] sfc: don't free_irq()s if they were never requested (Jarod Wilson) [1856681] - [netdrv] sfc: null out channel->rps_flow_id after freeing it (Jarod Wilson) [1856681] - [netdrv] sfc: take correct lock in ef100_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: really check hash is valid before using it (Jarod Wilson) [1856681] - [netdrv] sfc: check hash is valid before using it (Jarod Wilson) [1856681] - [netdrv] sfc: fix ef100 design-param checking (Jarod Wilson) [1856681] - [netdrv] sfc: Fix build with CONFIG_RFS_ACCEL disabled (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add nic-type for VFs, and bind to them (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read pf_index at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: functions for selftests (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: statistics gathering (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: plumb in fini_dmaq (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: RX path for EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: RX filter table management and related gubbins (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: TX path for EF100 NICs (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read Design Parameters at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: fail the probe if NIC uses unsol_ev credits (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: check firmware version at start-of-day (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: remove duplicated include from ef100_netdev.c (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement ndo_get_phys_port_{id, name} (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read device MAC address at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: probe the PHY and configure the MAC (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: actually perform resets (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: extend ef100_check_caps to cover datapath_caps3 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read datapath caps, implement check_caps (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: process events for MCDI completions (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement ndo_open/close and EVQ probing (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement MCDI transport (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: don't call efx_reset_down()/up() on EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: PHY probe stub (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: reset-handling stub (Jarod Wilson) [1856681] - [netdrv] sfc: skeleton EF100 PF driver (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: register accesses on EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add EF100 register definitions (Jarod Wilson) [1856681] - [netdrv] sfc: remove efx_ethtool_nway_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: drop unnecessary list_empty (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: helper function to set default RSS table of given size (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: NVRAM selftest support code (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: populate BUFFER_SIZE_BYTES in INIT_RXQ (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add EF100 to NIC-revision enumeration (Jarod Wilson) [1856681] - [netdrv] sfc: get drvinfo driver name from outside the common code (Jarod Wilson) [1856681] - [netdrv] sfc: initialise RSS context ID to 'no RSS context' in efx_init_struct() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx_fini_dmaq (Jarod Wilson) [1856681] - [netdrv] sfc: factor out efx_mcdi_filter_table_down() from _remove() (Jarod Wilson) [1856681] - [netdrv] sfc: don't call tx_limit_len if NIC type doesn't have one (Jarod Wilson) [1856681] - [netdrv] sfc: assign TXQs without gaps (Jarod Wilson) [1856681] - [netdrv] sfc: commonise netif_set_real_numx_queues calls (Jarod Wilson) [1856681] - [netdrv] sfc: make tx_queues_per_channel variable at runtime (Jarod Wilson) [1856681] - [netdrv] sfc: move modparam 'rss_cpus' out of common channel code (Jarod Wilson) [1856681] - [netdrv] sfc: move modparam 'interrupt_mode' out of common channel code (Jarod Wilson) [1856681] - [netdrv] sfc: remove max_interrupt_mode (Jarod Wilson) [1856681] - [netdrv] sfc: support setting MTU even if not privileged to configure MAC fully (Jarod Wilson) [1856681] - [netdrv] sfc: don't call tx_remove if there isn't one (Jarod Wilson) [1856681] - [netdrv] sfc: commonise initialisation of efx->vport_id (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx->xq_entries initialisation (Jarod Wilson) [1856681] - [netdrv] sfc: initialise max_channels in efx_init_channels() (Jarod Wilson) [1856681] - [netdrv] sfc: move definition of EFX_MC_STATS_GENERATION_INVALID (Jarod Wilson) [1856681] - [netdrv] sfc: factor out efx_tx_tso_header_length() and understand encapsulation (Jarod Wilson) [1856681] - [netdrv] sfc: remove duplicate declaration of efx_enqueue_skb_tso() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise TSO fallback code (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx_sync_rx_buffer() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise some MAC configuration code (Jarod Wilson) [1856681] - [netdrv] sfc: commonise miscellaneous efx functions (Jarod Wilson) [1856681] - [netdrv] sfc: add missing licence info to mcdi_filters.c (Jarod Wilson) [1856681] - [netdrv] sfc: commonise MCDI MAC stats handling (Jarod Wilson) [1856681] - [netdrv] sfc: move NIC-specific mcdi_port declarations out of common header (Jarod Wilson) [1856681] - [netdrv] sfc: extend common GRO interface to support CHECKSUM_COMPLETE (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ARFS handling (Jarod Wilson) [1856681] - [netdrv] sfc: commonise drain event handling (Jarod Wilson) [1856681] - [netdrv] sfc: commonise PCI error handlers (Jarod Wilson) [1856681] - [netdrv] sfc: track which BAR is mapped (Jarod Wilson) [1856681] - [netdrv] sfc: commonise FC advertising (Jarod Wilson) [1856681] - [netdrv] sfc: commonise other ethtool bits (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ethtool NFC and RXFH/RSS functions (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ethtool link handling functions (Jarod Wilson) [1856681] - [netdrv] sfc: split up nic.h (Jarod Wilson) [1856681] - [netdrv] sfc: refactor EF10 stats handling (Jarod Wilson) [1856681] - [netdrv] sfc: don't try to create more channels than we can have VIs (Jarod Wilson) [1856681] - [netdrv] sfc: extend bitfield macros up to POPULATE_DWORD_13 (Jarod Wilson) [1856681] - [netdrv] sfc: determine flag word automatically in efx_has_cap() (Jarod Wilson) [1856681] - [netdrv] sfc: update MCDI protocol headers (Jarod Wilson) [1856681] - [netdrv] sfc: replace '---help---' in Kconfig files with 'help' (Jarod Wilson) [1856681] - [netdrv] sfc: add missing annotation for efx_ef10_try_update_nic_stats_vf() (Jarod Wilson) [1856681] - [netdrv] sfc: avoid an unused-variable warning (Jarod Wilson) [1856681] - [netdrv] sfc: fix dereference of table before it is null checked (Jarod Wilson) [1856681] - [netdrv] sfc: siena_check_caps() can be static (Jarod Wilson) [1856681] - [netdrv] sfc: actually wire up siena_check_caps() (Jarod Wilson) [1856681] - [netdrv] sfc: make firmware-variant printing a nic_type function (Jarod Wilson) [1856681] - [netdrv] sfc: make filter table probe caller responsible for adding VLANs (Jarod Wilson) [1856681] - [netdrv] sfc: move rx_rss_context_exclusive into struct efx_mcdi_filter_table (Jarod Wilson) [1856681] - [netdrv] sfc: rework handling of (firmware) multicast chaining state (Jarod Wilson) [1856681] - [netdrv] sfc: move 'must restore' flags out of ef10-specific nic_data (Jarod Wilson) [1856681] - [netdrv] sfc: use efx_has_cap for capability checks outside of NIC-specific code (Jarod Wilson) [1856681] - [netdrv] sfc: make capability checking a nic_type function (Jarod Wilson) [1856681] - [netdrv] sfc: move vport_id to struct efx_nic (Jarod Wilson) [1856681] - [ntb] NTB: Revert "Add Hygon Device ID" (Myron Stowe) [1880468] - [tools] NTB: ntb_test: Fix bug when counting remote files (Myron Stowe) [1908031] - [ntb] NTB: perf: Fix race condition when run with ntb_test (Myron Stowe) [1908031] - [ntb] NTB: perf: Fix support for hardware that doesn't have port numbers (Myron Stowe) [1908031] - [ntb] NTB: perf: Don't require one more memory window than number of peers (Myron Stowe) [1908031] - [ntb] NTB: ntb_pingpong: Choose doorbells based on port number (Myron Stowe) [1908031] - [ntb] NTB: Fix the default port and peer numbers for legacy drivers (Myron Stowe) [1908031] - [ntb] NTB: Revert the change to use the NTB device dev for DMA allocations (Myron Stowe) [1908031] - [ntb] NTB: ntb_tool: reading the link file should not end in a NULL byte (Myron Stowe) [1908031] - [ntb] ntb_perf: avoid false dma unmap of destination address (Myron Stowe) [1908031] - [ntb] ntb_perf: increase sleep time from one milli sec to one sec (Myron Stowe) [1908031] - [ntb] ntb_tool: pass correct struct device to dma_alloc_coherent (Myron Stowe) [1908031] - [ntb] ntb_perf: pass correct struct device to dma_alloc_coherent (Myron Stowe) [1908031] - [include] NTB: correct ntb_peer_spad_addr and ntb_peer_spad_read comment typos (Myron Stowe) [1908031] - [ntb] ntb: intel: fix static declaration (Myron Stowe) [1908031] - [ntb] ntb: intel: add hw workaround for NTB BAR alignment (Myron Stowe) [1908031] - [ntb] ntb: intel: Add Icelake (gen4) support for Intel NTB (Myron Stowe) [1908031] - [ntb] NTB: Fix static check warning in perf_clear_test (Myron Stowe) [1908031] - [include] include/ntb: Fix typo in ntb_unregister_device description (Myron Stowe) [1908031] - [ntb] NTB: add pci shutdown handler for AMD NTB (Myron Stowe) [1908031] - [ntb] NTB: send DB event when driver is loaded or un-loaded (Myron Stowe) [1908031] - [ntb] NTB: remove redundant setting of DB valid mask (Myron Stowe) [1908031] - [ntb] NTB: return link up status correctly for PRI and SEC (Myron Stowe) [1908031] - [ntb] NTB: add helper functions to set and clear sideinfo (Myron Stowe) [1908031] - [ntb] NTB: move ntb_ctrl handling to init and deinit (Myron Stowe) [1908031] - [ntb] NTB: handle link up, D0 and D3 events correctly (Myron Stowe) [1908031] - [ntb] NTB: handle link down event correctly (Myron Stowe) [1908031] - [ntb] NTB: remove handling of peer_sta from amd_link_is_up (Myron Stowe) [1908031] - [ntb] NTB: set peer_sta within event handler itself (Myron Stowe) [1908031] - [ntb] NTB: return the side info status from amd_poll_link (Myron Stowe) [1908031] - [ntb] NTB: define a new function to get link status (Myron Stowe) [1908031] - [ntb] NTB: Enable link up and down event notification (Myron Stowe) [1908031] - [ntb] NTB: clear interrupt status register (Myron Stowe) [1908031] - [ntb] NTB: Fix access to link status and control register (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Use scnprintf() for avoiding potential buffer overflow (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Fix ntb_mw_clear_trans error if size == 0 (Myron Stowe) [1908031] - [ntb] ntb_tool: Fix printk format (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Fix address err in perf_copy_chunk (Myron Stowe) [1908031] - [ntb] NTB: Fix an error in get link status (Myron Stowe) [1908031] - [ntb] NTB: Add Hygon Device ID (Myron Stowe) [1908031] - [ntb] NTB: fix IDT Kconfig typos/spellos (Myron Stowe) [1908031] - [ntb] ntb_hw_amd: Add memory window support for new AMD hardware (Myron Stowe) [1908031] - [ntb] ntb_hw_amd: Add a new NTB PCI device ID (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: remove redundant assignment to rc (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: make ntb_mw_set_trans() work when addr == 0 (Myron Stowe) [1908031] - [ntb] ntb: point to right memory window index (Myron Stowe) [1908031] - [ntb] NTB/msi: remove incorrect MODULE defines (Myron Stowe) [1908031] - [documentation] NTB: Describe the ntb_msi_test client in the documentation (Myron Stowe) [1908031] - [ntb] NTB: Add MSI interrupt support to ntb_transport (Myron Stowe) [1908031] - [tools] NTB: Add ntb_msi_test support to ntb_test (Myron Stowe) [1908031] - [ntb] NTB: Introduce NTB MSI Test Client (Myron Stowe) [1908031] - [ntb] NTB: Introduce MSI library (Myron Stowe) [1908031] - [ntb] NTB: Rename ntb.c to support multiple source files in the module (Myron Stowe) [1908031] - [include] NTB: Introduce functions to calculate multi-port resource index (Myron Stowe) [1908031] - [include] NTB: Introduce helper functions to calculate logical port number (Myron Stowe) [1908031] - [pci] PCI/switchtec: Add module parameter to request more interrupts (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Fix setup MW with failure bug (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Skip unnecessary re-setup of shared memory window for crosslink case (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Remove redundant steps of switchtec_ntb_reinit_peer() function (Myron Stowe) [1908031] - [include] NTB: correct ntb_dev_ops and ntb_dev comment typos (Myron Stowe) [1908031] - [ntb] NTB: amd: Silence shift wrapping warning in amd_ntb_db_vector_mask() (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: potential shift wrapping bug in switchtec_ntb_init_sndev() (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Ensure qp->tx_mw_dma_addr is initaliazed (Myron Stowe) [1908031] - [ntb] NTB: ntb_hw_amd: set peer limit register (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Clear stale values in doorbell and command SPAD register (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Disable NTB link after clearing peer XLAT registers (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Increased the number of message retries to 1000 (Myron Stowe) [1908031] - [ntb] ntb: intel: Make intel_ntb3_peer_db_addr static (Myron Stowe) [1908031] - [ntb] NTB: add new parameter to peer_db_addr() db_bit and db_data (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Ensure the destination buffer is mapped for TX DMA (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Free MWs in ntb_transport_link_cleanup() (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Added support of >=4G memory windows (Myron Stowe) [1908031] - [include] ntb_hw_switchtec: NT req id mapping table register entry number should be 512 (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: debug print 64bit aligned crosslink BAR Numbers (Myron Stowe) [1908031] - [ntb] ntb: idt: Alter the driver info comments (Myron Stowe) [1908031] - [ntb] ntb: idt: Discard temperature sensor IRQ handler (Myron Stowe) [1908031] - [ntb] ntb: idt: Add basic hwmon sysfs interface (Myron Stowe) [1908031] - [ntb] ntb: idt: Alter temperature read method (Myron Stowe) [1908031] - [netdrv] ntb_netdev: Simplify remove with client device drvdata (Myron Stowe) [1908031] - [ntb] NTB: transport: Try harder to alloc an aligned MW buffer (Myron Stowe) [1908031] - [ntb] ntb: ntb_transport: Mark expected switch fall-throughs (Myron Stowe) [1908031] - [ntb] ntb: idt: Set PCIe bus address to BARLIMITx (Myron Stowe) [1908031] - [ntb] NTB: ntb_hw_idt: replace IS_ERR_OR_NULL with regular NULL checks (Myron Stowe) [1908031] - [ntb] ntb: intel: fix return value for ndev_vec_mask() (Myron Stowe) [1908031] - [netdrv] ntb_netdev: fix sleep time mismatch (Myron Stowe) [1908031]- [block] block: fix incorrect branching in blk_max_size_offset() (Mike Snitzer) [1903722] - [md] dm: fix IO splitting (Mike Snitzer) [1903722] - [block] block: fix get_max_io_size() (Mike Snitzer) [1903722] - [block] block: Improve physical block alignment of split bios (Mike Snitzer) [1903722] - [block] block: use gcd() to fix chunk_sectors limit stacking (Mike Snitzer) [1903722] - [kernel] sched/deadline: Fix priority inheritance with multiple scheduling classes (Phil Auld) [1780490] - [fs] Convert trailing spaces and periods in path components (Leif Sahlberg) [1882457] - [block] loop: Fix occasional uevent drop (Ming Lei) [1897401] - [block] block: add a return value to set_capacity_revalidate_and_notify (Ming Lei) [1897401] - [fs] fat: truncate inode timestamp updates in setattr (Pavel Reichl) [1533270] - [fs] fat: change timestamp updates to use fat_truncate_time (Pavel Reichl) [1533270] - [fs] fat: add functions to update and truncate timestamps appropriately (Pavel Reichl) [1533270] - [fs] fat: create a function to calculate the timezone offest (Pavel Reichl) [1533270] - [net] icmp: randomize the global rate limiter (Guillaume Nault) [1899137] - [net] ipv4: Restore flowi4_oif update before call to xfrm_lookup_route (Guillaume Nault) [1899137] - [net] ipv4: Update exception handling for multipath routes via same device (Guillaume Nault) [1899137] - [net] ip: fix tos reflection in ack and reset packets (Guillaume Nault) [1899137] - [net] initialize fastreuse on inet_inherit_port (Guillaume Nault) [1899137] - [net] refactor bind_bucket fastreuse into helper (Guillaume Nault) [1899137] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'qplib_ctx' (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Fix driver crash on unaligned PSN entry address (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Restrict the max_gids to 256 (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Static NQ depth allocation (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Fix the qp table indexing (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Do not report transparent vlan from QP1 (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Change wr posting logic to accommodate variable wqes (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Add helper data structures (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Pull psn buffer dynamically based on prod (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: introduce a function to allocate swq (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: introduce wqe mode to select execution path (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt: Delete 'nq_ptr' variable which is not used (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove dead code from rcfw (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Simplify obtaining queue entry from hw ring (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Update missing hsi data structures (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Reduce device page size detection code (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove unsupported modify_device callback (Selvin Xavier) [1861886] - [include] net: Add netif_is_bareudp() API to identify bareudp devices (Guillaume Nault) [1839788] - [net] Removed the device type check to add mpls support for devices (Guillaume Nault) [1839788] - [tools] selftests: set conf.all.rp_filter=0 in bareudp.sh (Guillaume Nault) [1839788] - [tools] selftests: disable rp_filter when testing bareudp (Guillaume Nault) [1839788] - [tools] selftests: add test script for bareudp tunnels (Guillaume Nault) [1839788] - [documentation] bareudp: Corrected description of bareudp module. (Guillaume Nault) [1839788] - [netdrv] bareudp: forbid mixing IP and MPLS in multiproto mode (Guillaume Nault) [1839788] - [netdrv] bareudp: Reverted support to enable & disable rx metadata collection (Guillaume Nault) [1839788] - [documentation] bareudp: update iproute2 sample commands (Guillaume Nault) [1839788] - [netdrv] bareudp: Added attribute to enable & disable rx metadata collection (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed multiproto mode configuration (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed configuration to avoid having garbage values (Guillaume Nault) [1839788] - [netdrv] net: bareudp: avoid uninitialized variable warning (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed bareudp receive handling (Guillaume Nault) [1839788] - [netdrv] bareudp: remove unnecessary udp_encap_enable() in bareudp_socket_create() (Guillaume Nault) [1839788] - [netdrv] bareudp: print error message when command fails (Guillaume Nault) [1839788] - [netdrv] bareudp: add module alias (Guillaume Nault) [1839788] - [netdrv] bareudp: Fix uninitialized variable warnings. (Guillaume Nault) [1839788] - [netdrv] Special handling for IP & MPLS. (Guillaume Nault) [1839788] - [net] UDP tunnel encapsulation module for tunnelling different protocols like MPLS, IP, NSH etc. (Guillaume Nault) [1839788] - [arm64] arm64: remove arm64ksyms.c (Mark Salter) [1883365] - [arm64] arm64: frace: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: string: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: uaccess: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: page: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: smccc: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: tishift: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: add EXPORT_SYMBOL_NOKASAN() (Mark Salter) [1883365] - [mm] arm64: move memstart_addr export inline (Mark Salter) [1883365] - [arm64] arm64: remove bitop exports (Mark Salter) [1883365] - [arm64] arm64: lib: use C string functions with KASAN enabled (Mark Salter) [1883365] - [arm64] arm64: add (Mark Salter) [1883365] - [arm64] locking/atomics/arm64, arm64/bitops: Include (Mark Salter) [1883365] - [arm64] locking/atomics/arm64: Replace our atomic/lock bitop implementations with asm-generic (Mark Salter) [1883365] - [include] locking/atomics, asm-generic/bitops/lock.h: Rewrite using atomic_fetch_*() (Mark Salter) [1883365] - [include] locking/atomics, asm-generic/bitops/atomic.h: Rewrite using atomic_*() APIs (Mark Salter) [1883365] - [thermal] thermal: rcar_thermal: Add missing braces to conditional statement (Ivan Vecera) [1894564] - [thermal] thermal: Rename set_mode() to change_mode() (Ivan Vecera) [1894564] - [thermal] thermal: Simplify or eliminate unnecessary set_mode() methods (Ivan Vecera) [1894564] - [thermal] thermal: core: Stop polling DISABLED thermal devices (Ivan Vecera) [1894564] - [thermal] thermal: Explicitly enable non-changing thermal zone devices (Ivan Vecera) [1894564] - [thermal] thermal: Use mode helpers in drivers (Ivan Vecera) [1894564] - [thermal] thermal: Add mode helpers (Ivan Vecera) [1894564] - [thermal] thermal: remove get_mode() operation of drivers (Ivan Vecera) [1894564] - [thermal] thermal: Store device mode in struct thermal_zone_device (Ivan Vecera) [1894564] - [include] thermal: Add current mode to thermal zone device (Ivan Vecera) [1894564] - [acpi] thermal: Store thermal mode in a dedicated enum (Ivan Vecera) [1894564] - [acpi] acpi: thermal: Fix error handling in the register function (Ivan Vecera) [1894564] - [thermal] thermal: core: skip update disabled thermal zones after suspend (Ivan Vecera) [1894564] - [thermal] Thermal: do not clear passive state during system sleep (Ivan Vecera) [1894564] - [thermal] thermal: of-thermal: disable passive polling when thermal zone is disabled (Ivan Vecera) [1894564] - [crypto] crypto: qat - drop input parameter from adf_enable_aer() (Vladis Dronov) [1855190] - [crypto] crypto: qat - fix function parameters descriptions (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove unnecessary mutex_init() (Vladis Dronov) [1855190] - [crypto] crypto: qat - use PCI_VDEVICE (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace device ids defines (Vladis Dronov) [1855190] - [crypto] crypto: qat - include domain in top level debugfs path (Vladis Dronov) [1855190] - [crypto] crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA (Vladis Dronov) [1855190] - [crypto] crypto: qat - Use fallthrough pseudo-keyword (Vladis Dronov) [1855190] - [crypto] crypto: qat - add delay before polling mailbox (Vladis Dronov) [1855190] - [include] PCI: Add Intel QuickAssist device IDs (Vladis Dronov) [1855190] - [crypto] crypto: qat - fix double free in qat_uclo_create_batch_init_list (Vladis Dronov) [1855190] - [crypto] crypto: qat - fallback for xts with 192 bit keys (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove unused field in skcipher ctx (Vladis Dronov) [1855190] - [crypto] crypto: qat - validate xts key (Vladis Dronov) [1855190] - [crypto] crypto: qat - allow xts requests not multiple of block (Vladis Dronov) [1855190] - [crypto] crypto: qat - update timeout logic in put admin msg (Vladis Dronov) [1855190] - [crypto] crypto: qat - send admin messages to set of AEs (Vladis Dronov) [1855190] - [crypto] crypto: qat - update fw init admin msg (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove packed attribute in etr structs (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace user types with kernel ABI __u types (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace user types with kernel u types (Vladis Dronov) [1855190] - [crypto] crypto: qat - convert to SPDX License Identifiers (Vladis Dronov) [1855190] - [crypto] crypto: qat - simplify the qat_crypto function (Vladis Dronov) [1855190] - [crypto] crypto: qat - spelling s/Decrytp/Decrypt/ (Vladis Dronov) [1855190] - [crypto] crypto: qat/adf_aer - Replace GFP_ATOMIC with GFP_KERNEL in adf_dev_aer_schedule_reset() (Vladis Dronov) [1855190] - [thermal] thermal: int340x: processor_thermal: fix: update Jasper Lake PCI id (David Arcari) [1889331] - [thermal] thermal: int3403_thermal: Downgrade error message (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Prevent page fault on .set_mode() op (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Don't require IDSP to exist (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Export OEM vendor variables (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Export GDDV (David Arcari) [1889331] - [thermal] thermal: int3400_thermal: Statically initialize .get_mode()/.set_mode() ops (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: fix: Update Tiger Lake ACPI device IDs (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: Use scnprintf() for avoiding potential buffer overflow (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Tiger Lake support (David Arcari) [1889331] - [platform] acpi: Remove header dependency (David Arcari) [1889331] - [thermal] thermal: int340x: switch to use helpers (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Jasper Lake support (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: Add Tiger Lake ACPI device IDs (David Arcari) [1889331] - [thermal] thermal: intel: int3403: replace printk(KERN_WARN...) with pr_warn(...) (David Arcari) [1889331] - [thermal] thermal: intel: int340x_thermal: Remove unnecessary acpi_has_method() uses (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Ice Lake support (David Arcari) [1889331] - [thermal] drivers: thermal: processor_thermal_device: Export sysfs interface for TCC offset (David Arcari) [1889331] - [netdrv] net/mlx5e: Fix arch depending casting issue in FEC (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Kconfig: convert imply usage to weak dependency (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Fix condition for termination table cleanup (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Use a separate work queue for fib event handling (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Add support for RDMA TX flow table (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Add support for RDMA TX steering (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Move to fully dynamic UAR mode once user space supports it (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Limit the scope of struct mlx5_bfreg_info to mlx5_ib (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Extend QP creation to get uar page index from user space (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Extend CQ creation to get uar page index from user space (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid group version scan when not necessary (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid incrementing FTE version (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Simplify matching group searches (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Generally use the WC auto detection test result (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid forwarding to other eswitch uplink (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Eswitch, enable forwarding back to uplink port (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5e: Add support for offloading traffic from uplink to uplink (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Don't use termination tables in slow path (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Avoid configuring eswitch QoS if not supported (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: DR, Add support for flow table id destination action (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Refactor unload all reps per rep type (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Update VF vports config when num of VFs changed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Introduce per vport configuration for eswitch modes (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-switch, Make vport setup/cleanup sequence symmetric (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Prepare for vport enable/disable refactor (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Remove redundant warning when QoS enable failed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Remove redundant check of eswitch manager cap (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Allow MRs to be created in the cache synchronously (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Revise how the hysteresis scheme works for cache filling (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Fix locking in MR cache work queue (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Lock access to ent->available_mrs/limit when doing queue_work (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Fix MR cache size and limit debugfs (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Always remove MRs from the cache before destroying them (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Simplify how the MR cache bucket is located (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Rename the tracking variables for the MR cache (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Replace spinlock protected write with atomic var (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Move asynchronous mkey creation to mlx5_ib (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Assign mkey variant in mlx5_ib only (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Setup mkey variant before mr create command invocation (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Use offsetofend() instead of duplicated variant (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Remove duplicate definitions of SW_ICM macros (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-switch, make query inline mode a static function (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Allocate smaller size tables for ft offload (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Introduce TLS and IPSec objects enums (Alaa Hleihel) [1858559] - [include] net/mlx5: Introduce egress acl forward-to-vport capability (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Add np_min_time_between_cnps and rp_max_rate debug params (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Fix header guard in rsc_dump.h (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Replace zero-length array with flexible-array member (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Remove a useless 'drain_workqueue()' call in 'mlx5e_ipsec_cleanup()' (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Add support for FEC modes based on 50G per lane links (Alaa Hleihel) [1858559] - [netdrv] net/mlxe5: Separate between FEC and current speed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Advertise globaly supported FEC modes (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Enforce setting of a single FEC mode (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Set FEC to auto when configured mode is not supported (Alaa Hleihel) [1858559] - [netdrv] mlx5: Use proper logging and tracing line terminations (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Support dump callback in RX reporter (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Support dump callback in TX reporter (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Gather reporters APIs together (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Add support for resource dump (Alaa Hleihel) [1858559] - [netdrv] bnxt_en: Fix wrong flag value passed to HWRM_PORT_QSTATS_EXT fw call (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix HWRM_FUNC_QSTATS_EXT firmware call (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return -EOPNOTSUPP for ETHTOOL_GREGS on VFs (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: return proper error codes in bnxt_show_temp (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Use memcpy to copy VPD field info (Jonathan Toppins) [1861885] - [netdrv] net: ethernet: broadcom: have drivers select DIMLIB as needed (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Avoid sending firmware messages when AER error is detected (Jonathan Toppins) [1861885] - [netdrv] bnxt: don't enable NAPI until rings are ready (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Setup default RSS map in all scenarios (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: init RSS table for Minimal-Static VF reservation (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix HWRM error when querying VF temperature (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix possible crash in bnxt_fw_reset_task() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix PCI AER error recovery flow (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Check for zero dir entries in NVRAM (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Don't query FW when netif_running() is false (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Remove superfluous memset() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add support for 'ethtool -d' (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Switch over to use the 64-bit software accumulated counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Accumulate all counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Retrieve hardware masks for port counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Retrieve hardware counter masks from firmware if available (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Allocate additional memory for all statistics blocks (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Refactor statistics code and structures (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Use macros to define port statistics size and offset (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Update firmware interface to 1.10.1.54 (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Remove PCIe non-counters from ethtool statistics (Jonathan Toppins) [1861885] - [netdrv] net: bnxt: don't complain if TC flower can't be supported (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix completion ring sizing with TPA enabled (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Init ethtool link settings after reading updated PHY configuration (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix race when modifying pause settings (Jonathan Toppins) [1861885] - [netdrv] bnxt: convert to new udp_tunnel_nic infra (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: allow firmware to disable VLAN offloads (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: clean up VLAN feature bit handling (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Implement ethtool -X to set indirection table (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return correct RSS indirection table entries to ethtool -x (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fill HW RSS table from the RSS logical indirection table (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add helper function to return the number of RSS contexts (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add logical RSS indirection table structure (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix up bnxt_get_rxfh_indir_size() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Set up the chip specific RSS table size (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Read VPD info only for PFs (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix statistics counters issue during ifdown with older firmware (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Do not enable legacy TX push on older firmware (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Store the running firmware version code (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add board.serial_number field to info_get cb (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return from timer if interface is not in open state (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix AER reset logic on 57500 chips (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Re-enable SRIOV during resume (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Simplify bnxt_resume() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix firmware message length endianness (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix return code to "flash_device" (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix accumulation of bp->net_stats_prev (Jonathan Toppins) [1861885] - [netdrv] net: bnxt: Remove Comparison to bool in bnxt_ethtool.c (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: show only relevant ethtool stats for a TX or RX ring (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Split HW ring statistics strings into RX and TX parts (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Refactor the software ring counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add doorbell information to bnxt_en_dev struct (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add support for L2 doorbell size (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Set the db_offset on 57500 chips for the RDMA MSIX entries (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Define the doorbell offsets on 57500 chips (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Improve kernel log messages related to ethtool reset (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix ethtool_reset_flags ABI violations (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: refactor ethtool firmware reset types (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: prepare to refactor ethtool reset types (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Do not include ETH_FCS_LEN in the max packet length sent to fw (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Improve TQM ring context memory sizing formulas (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Allocate TQM ring context memory according to fw specification (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Update firmware spec. to 1.10.1.33 (Jonathan Toppins) [1861885] - [fs] fs/namespace.c: fix mountpoint reference counter race (Pavel Reichl) [1852651] {CVE-2020-12114}- [powerpc] powerpc/64: Fix kernel stack 16-byte alignment (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/aout: Fix struct user definition to use user_pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/uapi: Fix sigcontext definition to use user_pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] bpf: powerpc: fix broken uapi for BPF_PROG_TYPE_PERF_EVENT (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Tests for kernel accessing user memory (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Introduce PPC_DEBUG_FEATURE_DATA_BP_ARCH_31 (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix exception handling for CONFIG_HAVE_HW_BREAKPOINT=N (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix length calculation for unaligned target (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Move DAWR detection logic outside of hw_breakpoint.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix handling of vector instructions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix quadword instruction handling on p10 predecessors (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/hw_breakpoint.h: delete duplicated word (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Remove 512 byte boundary (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Return available watchpoints dynamically (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Guest support for 2nd DAWR hcall (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Set CPU_FTR_DAWR1 based on pa-features bit (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/dt_cpu_ftrs: Add feature for 2nd DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Enable watchpoint functionality on power10 guest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix DAWR exception for CACHEOP (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix DAWR exception constraint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix 512 byte boundary limit (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] hw-breakpoints: Fix build warnings with clang (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/xmon: Support 2nd DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/xmon: Don't allow breakpoint overwriting (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Don't allow concurrent perf and ptrace events (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Prepare handler to handle more than one watchpoint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Use builtin ALIGN*() macros (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Introduce is_ptrace_bp() function (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Use loop for thread_struct->ptrace_bps (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Convert thread_struct->hw_brk to an array (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Disable all available watchpoints when !dawr_force_enable (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Get watchpoint count dynamically while disabling them (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Provide DAWR number to __set_breakpoint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Provide DAWR number to set_dawr (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Return actual num of available watchpoints (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Introduce function to get nr watchpoints dynamically (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Add SPRN macros for second DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: move ptrace_triggered() into hw_breakpoint.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: create ppc_gethwdinfo() (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: create ptrace_get_debugreg() (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out ADV_DEBUG_REGS related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: move register viewing functions out of ptrace.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out TRANSACTIONAL_MEM related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out SPE related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out ALTIVEC related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out VSX related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: drop PARAMETER_SAVE_AREA_OFFSET (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: drop unnecessary #ifdefs CONFIG_PPC64 (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: remove unused header includes (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Move ptrace into a subdirectory (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Don't call dar_within_range() for Book3S (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Enable range tests on 8xx in ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/hw_breakpoints: Rewrite 8xx breakpoints to allow any address range size (Desnes Augusto Nunes do Rosario) [1854528] - [tools] powerpc/watchpoint: Support for 8xx in ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [tools] powerpc/watchpoint: Add DAR outside test in perf-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Rewrite ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: permanently include 8xx registers in reg.h (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: Simplify vr_get/set() to avoid GCC warning (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/64: Interrupts save PPR on stack rather than thread_struct (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Use SWITCH_FRAME_SIZE for prom and rtas entry (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: Don't use sizeof(struct pt_regs) in ptrace code (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Split user/kernel definitions of struct pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: declare set_breakpoint() static (Desnes Augusto Nunes do Rosario) [1854528] - [tools] perf vendor events power9: Added nest imc metric events (Michael Petlan) [1780258] - [powerpc] powerpc/perf: Fix crashes with generic_compat_pmu & BHRB (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints (Michael Petlan) [1854525] - [powerpc] powerpc/powernv/idle: add a basic stop 0-3 driver for POWER10 (Michael Petlan) [1854525] - [powerpc] powerpc/kernel: Cleanup machine check function declarations (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Fix soft lockups due to missed interrupt accounting (Michael Petlan) [1854525] - [powerpc] powerpc: Add POWER10 raw mode cputable entry (Michael Petlan) [1854525] - [powerpc] powerpc/powernv: Machine check handler for POWER10 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add extended regs support for power10 platform (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add support for outputting extended regs in perf intr_regs (Michael Petlan) [1854525] - [tools] perf tools powerpc: Add support for extended regs in power10 (Michael Petlan) [1854525] - [tools] perf tools powerpc: Add support for extended register capability (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Fix MMCRA_BHRB_DISABLE define for binutils < 2.28 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Initialize power10 PMU registers in cpu setup routine (Michael Petlan) [1854525] - [powerpc] powerpc/perf: BHRB control to disable BHRB logic when not used (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add Power10 BHRB filter support for PERF_SAMPLE_BRANCH_IND_CALL/COND (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Ignore the BHRB kernel address filtering for P10 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: power10 Performance Monitoring support (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add Power10 PMU feature to DT CPU features (Michael Petlan) [1854525] - [powerpc] powerpc/xmon: Add PowerISA v3.1 PMU SPRs (Michael Petlan) [1854525] - [powerpc] powerpc64: Break asm/percpu.h vs spinlock_types.h dependency (Greg Kurz) [1882796] - [powerpc] watchpoint: Rename current DAWR macros (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Make struct kernel_param_ops definition const (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: simplify kvm_cma_reserve() (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Fix symbol undeclared warnings (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Remove redundant initialization of variable ret (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: xive: Convert to DEFINE_SHOW_ATTRIBUTE (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Set LPCR[HDICE] before writing HDEC (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Do not allocate HPT for a nested guest (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Don't return -ENOTSUPP to userspace in ioctls (Greg Kurz) [1882796] - [powerpc] 64s: handle ISA v3.1 local copy-paste context switches (Greg Kurz) [1882796] - [powerpc] 64s: Move HMI IRQ stat from percpu variable to paca (Greg Kurz) [1882796] - [powerpc] kvm/cma: Improve kernel log during boot (Greg Kurz) [1882796] - [powerpc] kvm: Use correct CONFIG symbol in comment (Greg Kurz) [1882796] - [powerpc] watchpoint: Rename current H_SET_MODE DAWR macro (Greg Kurz) [1882796] - [tools] kvm: ppc: Fix typo on H_DISABLE_AND_GET hcall (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Clean up redundant kvm_run parameters in assembly (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Save/restore new PMU registers (Greg Kurz) [1882796] - [powerpc] perf: Add support for ISA3.1 PMU SPRs (Greg Kurz) [1882796] - [powerpc] perf: Update Power PMU cache_events to u64 type (Greg Kurz) [1882796] - [powerpc] perf: Update cpu_hw_event to use `struct` for storing MMCR registers (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Cleanup updates for kvm vcpu MMCR (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Protect kvm_vcpu_read_guest with srcu locks (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Increase KVMPPC_NR_LPIDS on POWER8 and POWER9 (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3shv: Enable support for ISA v3.1 guests (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s pr: Remove uninitialized_var() usage (Greg Kurz) [1882796] - [powerpc] kvm/book3s64: Fix kernel crash with nested kvm & DEBUG_VIRTUAL (Greg Kurz) [1882796] - [powerpc] book3s64/kvm: Fix secondary page table walk warning during migration (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Fix some RCU-list locks (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Ignore kmemleak false positives (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Clean up redundant 'kvm_run' parameters (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Remove redundant kvm_run from vcpu_arch (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Remove redundant NULL check (Greg Kurz) [1882796] - [powerpc] Fix compile issue with force DAWR (Greg Kurz) [1882796] - [powerpc] silence a -Wcast-function-type warning in dawr_write_file_bool (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Fix r3 corruption in h_set_dabr() (Greg Kurz) [1882796] - [powerpc] Add force enable of DAWR on P9 option (Greg Kurz) [1882796] - [documentation] powerpc: Document issues with the DAWR on POWER9 (Greg Kurz) [1882796] - [powerpc] Replace _ALIGN_UP() by ALIGN() (Greg Kurz) [1882796] - [powerpc] Replace _ALIGN_DOWN() by ALIGN_DOWN() (Greg Kurz) [1882796] - [netdrv] tg3: Fix soft lockup when tg3_reset_task() fails (Jonathan Toppins) [1899595] - [tools] tools/power turbostat: update version number (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: harden against cpu hotplug (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: adjust for temperature offset (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Build with _FILE_OFFSET_BITS=64 (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support AMD Family 19h (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Remove empty columns for Jacobsville (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Add a new GFXAMHz column that exposes gt_act_freq_mhz (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Skip pc8, pc9, pc10 columns, if they are disabled (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix output formatting for ACPI CST enumeration (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Replace HTTP links with HTTPS ones: TURBOSTAT UTILITY (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Enable accumulate RAPL display (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Introduce functions to accumulate RAPL consumption (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Make the energy variable to be 64 bit (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Always print idle in the system configuration header (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Print /dev/cpu_dma_latency (Prarit Bhargava) [1857136] - [tools] turbostat/.gitignore: add SPDX License Identifier (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: update version (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Print cpuidle information (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix 32-bit capabilities warning (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix missing SYS_LPI counter on some Chromebooks (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix gcc build warnings (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support Elkhart Lake (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support Jasper Lake (Prarit Bhargava) [1857136] - [scsi] scsi: core: Return BLK_STS_AGAIN for ALUA transitioning (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Set 'transitioning' state on Unit Attention (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Return BLK_STS_AGAIN for ALUA transitioning state (Ewan Milne) [1867264] - [block] scsi: block: Return status code in blk_mq_end_request() (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Avoid crash during alua_bus_detach() (Ewan Milne) [1877156] - [fs] gfs2: check for live vs. read-only file system in gfs2_fitrim (Abhijith Das) [1335139] - [fs] gfs2: don't initialize statfs_change inodes in spectator mode (Abhijith Das) [1335139] - [fs] gfs2: init_journal's undo directive should also undo the statfs inodes (Abhijith Das) [1335139] - [fs] gfs2: Recover statfs info in journal head (Abhijith Das) [1335139] - [fs] gfs2: lookup local statfs inodes prior to journal recovery (Abhijith Das) [1335139] - [fs] gfs2: Add fields for statfs info in struct gfs2_log_header_host (Abhijith Das) [1335139] - [block] nbd: don't update block size after device is started (Ming Lei) [1891363] - [platform] platform/x86: thinkpad_acpi: lap or desk mode interface (David Arcari) [1889642] - [infiniband] IB/mlx4: Convert rej_tmout radix-tree to XArray (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Adjust delayed work when a dup is observed (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add support for REJ due to timeout (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Fix starvation in paravirt mux/demux (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Separate tunnel and wire bufs parameters (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add support for MRA (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add and improve logging (Alaa Hleihel) [1858564] - [netdrv] net: ethernet: mlx4: Avoid assigning a value to ring_cons but not used it anymore in mlx4_en_xmit() (Alaa Hleihel) [1858564] - [netdrv] net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init() (Alaa Hleihel) [1858564] - [infiniband] treewide: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858564] - [netdrv] net/mlx4: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858564] - [netdrv] mlx4: convert to new udp_tunnel_nic infra (Alaa Hleihel) [1858564] - [netdrv] mlx4: Mark PM functions as __maybe_unused (Alaa Hleihel) [1858564] - [netdrv] mlx4: use generic power management (Alaa Hleihel) [1858564] - [netdrv] mlx4: disable device on shutdown (Alaa Hleihel) [1858564 1858563] - [include] IB/mlx4: Replace zero-length array with flexible-array (Alaa Hleihel) [1858564 1858563] - [netdrv] net: mlx4: remove unneeded variable "err" in mlx4_en_ethtool_add_mac_rule() (Alaa Hleihel) [1858564 1858563] - [netdrv] net: mlx4: remove unneeded variable "err" in mlx4_en_get_rxfh() (Alaa Hleihel) [1858564 1858563] - [netdrv] net/mlx4_en: use napi_complete_done() in TX completion (Alaa Hleihel) [1858564 1858563] - [netdrv] net/mlx4_en: avoid indirect call in TX completion (Alaa Hleihel) [1858564 1858562] - [infiniband] RDMA/mlx4: Delete duplicated offsetofend implementation (Alaa Hleihel) [1858564 1858562] - [netdrv] net: mlx4: reject unsupported coalescing params (Alaa Hleihel) [1858564 1858562] - [hwmon] hwmon: (amd_energy) match for supported models (David Arcari) [1860387] - [hwmon] hwmon: (amd_energy) Missing platform_driver_unregister() on error in amd_energy_init() (David Arcari) [1860387] - [hwmon] hwmon: Add amd_energy driver to report energy counters (David Arcari) [1860387] - [include] include/asm-generic/topology.h: guard cpumask_of_node() macro argument (David Arcari) [1860387]- [x86] x86/dumpstack: Fix misleading instruction pointer error message (Kenneth Yin) [1903506] - [powerpc] powerpc/powernv/opal-dump : Use IRQ_HANDLED instead of numbers in interrupt handler (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/dump: Handle multiple writes to ack attribute (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/dump: Fix race while processing OPAL dump (Diego Domingos) [1891822] - [powerpc] powerpc/opal_elog: Handle multiple writes to ack attribute (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/elog: Fix race while processing OPAL error log event (Diego Domingos) [1891822] - [hid] HID: logitech-dj: Fix an error in mse_bluetooth_descriptor (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Add PID for MX Anywhere 2 (Benjamin Tissoires) [1885560] - [hid] HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery (Benjamin Tissoires) [1885560] - [hid] HID: ite: Add USB id match for Acer One S1003 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons (Benjamin Tissoires) [1885560] - [hid] HID: hid-input: fix stylus battery reporting (Benjamin Tissoires) [1885560] - [hid] HID: roccat: add bounds checking in kone_sysfs_write_settings() (Benjamin Tissoires) [1885560] - [hid] HID: core: Sanitize event code and type when mapping input (Benjamin Tissoires) [1885560] - [hid] HID: core: Correctly handle ReportSize being zero (Benjamin Tissoires) [1885560] - [hid] HID: elan: Fix memleak in elan_input_configured (Benjamin Tissoires) [1885560] - [hid] HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices (Benjamin Tissoires) [1885560] - [hid] Revert "HID: usbhid: do not sleep when opening device" (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage() (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Always poll three more Lenovo PixArt mice (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands (Benjamin Tissoires) [1885560] - [hid] HID: macally: Constify macally_id_table (Benjamin Tissoires) [1885560] - [hid] HID: cougar: Constify cougar_id_table (Benjamin Tissoires) [1885560] - [hid] HID: quirks: add NOGET quirk for Logitech GROUP (Benjamin Tissoires) [1885560] - [hid] HID: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [1885560] - [hid] HID: udraw-ps3: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [1885560] - [hid] HID: input: Fix devices that return multiple bytes in battery report (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Fix spurious F23 key press report during resume from suspend (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard fn_lock support (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard support (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Rename fn_lock sysfs attr handlers to make them generic (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Factor out generic parts of the LED code (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Merge tpkbd and cptkbd data structures (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: avoid repeated "multiplier = " log messages (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Use HIDPP_RECEIVER_INDEX instead of 0xff (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: Replace PCI_DEV_FLAGS_NO_D3 with pci_save_state (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Ignore Simply Automated UPB PIM (Benjamin Tissoires) [1885560] - [hid] HID: apple: Disable Fn-key key-re-mapping on clone keyboards (Benjamin Tissoires) [1885560] - [hid] HID: Wiimote: Treat the d-pad as an analogue stick (Benjamin Tissoires) [1885560] - [hid] HID: steam: fixes race in handling device list (Benjamin Tissoires) [1885560] - [hid] HID: magicmouse: do not set up autorepeat (Benjamin Tissoires) [1885560] - [hid] HID: alps: support devices with report id 2 (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Always poll Obins Anne Pro 2 keyboard (Benjamin Tissoires) [1885560] - [hid] HID: input: do not run GET_REPORT unless there's a Resolution Multiplier (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Mediacom FlexBook edge13 to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: remove redundant assignment to variable retval (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: do not sleep when opening device (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: Remove MT_CLS_WIN_8_DUAL (Benjamin Tissoires) [1885560] - [hid] HID: sony: Fix for broken buttons on DS3 USB dongles (Benjamin Tissoires) [1885560] - [hid] HID: Add quirks for Trust Panora Graphic Tablet (Benjamin Tissoires) [1885560] - [hid] HID: apple: Swap the Fn and Left Control keys on Apple keyboards (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Schneider SCL142ALM to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: avoid bogus uninitialized-variable warning (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: reset Synaptics SYNA2393 on resume (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: Fix race between usbhid_close() and usbhid_stop() (Benjamin Tissoires) [1885560] - [hid] HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead (Benjamin Tissoires) [1885560] - [hid] HID: alps: Add AUI1657 device ID (Benjamin Tissoires) [1885560] - [hid] HID: fix typo in Kconfig (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add support for Logitech G11 extra keys (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: add eGalaxTouch P80H84 support (Benjamin Tissoires) [1885560] - [hid] HID: logitech: drop outdated references to unifying receivers (Benjamin Tissoires) [1885560] - [hid] HID: rmi: Simplify an error handling path in 'rmi_hid_read_block()' (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: hbm.h: Replace zero-length array with flexible-array member (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: ishtp-dev.h: Replace zero-length array with flexible-array member (Benjamin Tissoires) [1885560] - [hid] HID: Add driver fixing Glorious PC Gaming Race mouse report descriptor (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Do not fail the probe when we fail to disable F# emulation (Benjamin Tissoires) [1885560] - [hid] HID: fix Kconfig word ordering (Benjamin Tissoires) [1885560] - [hid] HID: add ALWAYS_POLL quirk to lenovo pixart mouse (Benjamin Tissoires) [1885560] - [hid] HID: google: add moonball USB id (Benjamin Tissoires) [1885560] - [hid] HID: appleir: Use devm_kzalloc() instead of kzalloc() (Benjamin Tissoires) [1885560] - [hid] HID: appleir: Remove unnecessary goto label (Benjamin Tissoires) [1885560] - [hid] HID: hid-sensor-custom: Use scnprintf() for avoiding potential buffer overflow (Benjamin Tissoires) [1885560] - [hid] HID: hid-picolcd_fb: Use scnprintf() for avoiding potential buffer overflow (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add support for the static device in the Powerplay mat/receiver (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: fix race condition for scheduled work during removal (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: call hid_hw_stop() in case of error (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: fix general protection fault caused by double kfree (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Trekstor Surfbook E11B to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: alps: Fix an error handling path in 'alps_input_configured()' (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: Fix race in in hiddev_disconnect() (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add debug msg when exporting a HID++ report descriptors (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Remove ITE 8595 entry from hid_have_special_driver (Benjamin Tissoires) [1885560] - [include] HID: core: increase HID report buffer size to 8KiB (Benjamin Tissoires) [1885560] - [hid] HID: core: fix off-by-one memset in hid_report_raw_event() (Benjamin Tissoires) [1885560] - [hid] HID: apple: Add support for recent firmware on Magic Keyboards (Benjamin Tissoires) [1885560] - [hid] HID: ite: Only bind to keyboard USB interface on Acer SW5-012 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: BatteryVoltage: only read chargeStatus if extPower is active (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: avoid duplicate error handling code in 'hidpp_probe()' (Benjamin Tissoires) [1885560] - [hid] HID: hidraw, uhid: Always report EPOLLOUT (Benjamin Tissoires) [1885560] - [hid] HID: steam: Fix input device disappearing (Benjamin Tissoires) [1885560] - [hid] hid-logitech-hidpp: read battery voltage from newer devices (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add MX Master 3 Mouse (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Support WirelessDeviceStatus connect events (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Support translations from short to long reports (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: fix mess in hiddev_open() (Benjamin Tissoires) [1885560] - [hid] HID: hid-input: clear unmapped usages (Benjamin Tissoires) [1885560] - [hid] HID: Add quirk for incorrect input length on Lenovo Y720 (Benjamin Tissoires) [1885560] - [hid] HID: ite: Add USB id match for Acer SW5-012 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: Add quirk for Xin-Mo Dual Controller (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: add support uniq ioctl (Benjamin Tissoires) [1885560] - [hid] HID: Fix slab-out-of-bounds read in hid_field_extract (Benjamin Tissoires) [1885560] - [hid] HID: picoLCD: constify fb ops (Benjamin Tissoires) [1885560] - [hid] HID: uhid: Fix returning EPOLLOUT from uhid_char_poll (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: Fix returning EPOLLOUT from hidraw_poll (Benjamin Tissoires) [1885560] - [hid] HID: rmi: Check that the RMI_STARTED bit is set before unregistering the RMI transport device (Benjamin Tissoires) [1885560] - [hid] HID: quirks: remove hid-led devices from hid_have_special_driver (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Reset ALPS touchpads on resume (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: fix no irq after reset on raydium 3118 (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Silence intermittent get_battery_capacity errors (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: remove orphaned member sleep_delay (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Add quirk for HP MSU1465 PIXART OEM mouse (Benjamin Tissoires) [1885560] - [hid] HID: core: check whether Usage Page item is after Usage ID items (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Send power-on command after reset (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Remove runtime power management (Benjamin Tissoires) [1885560] - [hid] HID: google: Detect base folded usage instead of hard-coding whiskers (Benjamin Tissoires) [1885560] - [hid] HID: google: add magnemite/masterball USB ids (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add depends on LEDS_CLASS to Logitech Kconfig entry (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the G510's M1-M3 and MR LEDs (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for controlling the G510's RGB backlight (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the G510 keyboards' gaming keys (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the M1-M3 and MR LEDs (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add keyboard and LCD backlight control (Benjamin Tissoires) [1885560] - [hid] HID: Add driver for Logitech gaming keyboards (G15, G15 v2) (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: replace printk() with corresponding pr_xx() variant (Benjamin Tissoires) [1885560] - [hid] HID: prodikeys: make array keys static const, makes object smaller (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: signal tablet mode on connect (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: signal tablet mode switch on disconnect (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: more robust tablet mode detection (Benjamin Tissoires) [1885560] - [hid] HID: core: fix dmesg flooding if report field larger than 32bit (Benjamin Tissoires) [1885560] - [include] HID: core: Add printk_once variants to hid_warn() etc (Benjamin Tissoires) [1885560] - [include] HID: core: reformat and reduce hid_printk macros (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: modify quirks for weida's devices (Benjamin Tissoires) [1885560] - [hid] hid-logitech-dj: add the new Lightspeed receiver (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add support of the G700(s) receiver (Benjamin Tissoires) [1885560] - [hid] HID: do not call hid_set_drvdata(hdev, NULL) in drivers (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: extend consumer usages range (Benjamin Tissoires) [1885560] - [hid] hiddev: Return EPOLLOUT from hiddev_poll (Benjamin Tissoires) [1885560] - [hid] hidraw: Return EPOLLOUT from hidraw_poll (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add nopnp quirk for Acer Aspire 5 A515 (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists (Benjamin Tissoires) [1885560] - [input] input: i8042 - Remove special Cayman handling (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - only increment wakeup count on touch (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add ic type 0x15 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add support for high resolution reports (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - do not constantly re-query pattern ID (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add firmware update info for ICs 0x11, 0x13, 0x14 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle firmware updated on newer ICs (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add support for different firmware page sizes (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - fix detecting IAP version on older controllers (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle devices with patterns above 1 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - make fetching IC type of older controllers more robust (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle firmware not implementing "get pattern" command (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Lenovo XiaoXin Air 12 to i8042 nomux list (Benjamin Tissoires) [1885560] - [input] Input: elantech - remove redundant assignments to variable error (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable InterTouch for ThinkPad X1E 1st gen (Benjamin Tissoires) [1885560] - [uapi] Input: add `SW_MACHINE_COVER` (Benjamin Tissoires) [1885560] - [input] input: i8042 - Remove special PowerPC handling (Benjamin Tissoires) [1885560] - [input] Input: synaptics - add a second working PNP_ID for Lenovo T470s (Benjamin Tissoires) [1885560] - [input] Input: introduce input_mt_report_slot_inactive() (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add ThinkPad S230u to i8042 reset list (Benjamin Tissoires) [1885560] - [input] Revert "Input: i8042 - add ThinkPad S230u to i8042 nomux list" (Benjamin Tissoires) [1885560] - [input] Input: i8042 - attach fwnode to serio i8042 kbd device (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add ThinkPad S230u to i8042 nomux list (Benjamin Tissoires) [1885560] - [uapi] Input: update SPDX tag for input-event-codes.h (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Acer Aspire 5738z to nomux list (Benjamin Tissoires) [1885560] - [uapi] Input: move the new KEY_SELECTIVE_SCREENSHOT keycode (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable RMI on HP Envy 13-ad105ng (Benjamin Tissoires) [1885560] - [uapi] Input: allocate keycode for "Selective Screenshot" key (Benjamin Tissoires) [1885560] - [input] Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable SMBus on ThinkPad L470 (Benjamin Tissoires) [1885560] - [input] Input: synaptics - switch T470s to RMI4 by default (Benjamin Tissoires) [1885560] - [input] Input: input_event - fix struct padding on sparc64 (Benjamin Tissoires) [1885560] - [uapi] Input: add privacy screen toggle keycode (Benjamin Tissoires) [1885560] - [input] Input: synaptics - switch another X1 Carbon 6 to RMI/SMbus (Benjamin Tissoires) [1885560] - [uapi] Input: Add event-codes for macro keys found on various keyboards (Benjamin Tissoires) [1885560] - [input] Input: i8042 - enable wakeup on a stable struct device (Benjamin Tissoires) [1885560] - [input] Input: psmouse - drop all unneeded functions from mouse headers (Benjamin Tissoires) [1885560] - [input] Input: remove dev_err() usage after platform_get_irq() (Benjamin Tissoires) [1885560] - [input] Input: synaptics - fix a typo (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - switch to using devm_add_action_or_reset() (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - switch to using devm_device_add_groups() (Benjamin Tissoires) [1885560] - [power] power: supply: core: Add Standard, Adaptive, and Custom charge types (Benjamin Tissoires) [1885560] - [scsi] scsi: mpt3sas: Fix timeouts observed while reenabling IRQ (Tomas Henzl) [1880114] - [fs] ext4: handle option set by mount flags correctly (Pavel Reichl) [1848084] - [fs] xfs: preserve inode versioning across remounts (Pavel Reichl) [1848084] - [kernel] kheaders: explain why include/config/autoconf.h is excluded from md5sum (Jiri Olsa) [1899585] - [kernel] kheaders: remove the last bashism to allow sh to run it (Jiri Olsa) [1899585] - [kernel] kheaders: optimize header copy for in-tree builds (Jiri Olsa) [1899585] - [kernel] kheaders: optimize md5sum calculation for in-tree builds (Jiri Olsa) [1899585] - [kernel] kheaders: remove unneeded 'cat' command piped to 'head' / 'tail' (Jiri Olsa) [1899585] - [kernel] kheaders: substituting --sort in archive creation (Jiri Olsa) [1899585] - [kernel] kheaders: make headers archive reproducible (Jiri Olsa) [1899585] - [kernel] kheaders: include only headers into kheaders_data.tar.xz (Jiri Olsa) [1899585] - [kernel] kheaders: remove meaningless -R option of 'ls' (Jiri Olsa) [1899585] - [kernel] kheaders: Do not regenerate archive if config is not changed (Jiri Olsa) [1899585] - [kernel] kheaders: Move from proc to sysfs (Jiri Olsa) [1899585] - [kernel] kernel/Makefile: don't assume that kernel/gen_ikh_data.sh is executable (Jiri Olsa) [1899585] - [init] init/config: Do not select BUILD_BIN2C for IKCONFIG (Jiri Olsa) [1899585] - [kernel] Provide in-kernel headers to make extending kernel easier (Jiri Olsa) [1899585] - [tty] pty: do tty_flip_buffer_push without port->lock in pty_write (Artem Savkov) [1787975] - [virtio] virtio_balloon: fix sparse warning (Nico Pache) [1839055] - [virtio] virtio_balloon: fix up endian-ness for free cmd id (Nico Pache) [1839055] - [virtio] virtio-balloon: Document byte ordering of poison_val (Nico Pache) [1839055] - [virtio] virtio-mmio: Reject invalid IRQ 0 command line argument (Nico Pache) [1839055] - [virtio] virtio-balloon: Disable free page reporting if page poison reporting is not enabled (Nico Pache) [1839055] - [virtio] virtio-mmio: Delete an error message in vm_find_vqs() (Nico Pache) [1839055] - [virtio] virtio: add VIRTIO_RING_NO_LEGACY (Nico Pache) [1839055] - [virtio] virtio-balloon: Avoid using the word 'report' when referring to free page hinting (Nico Pache) [1839055] - [virtio] virtio-balloon: make virtballoon_free_page_report() static (Nico Pache) [1839055] - [virtio] virtio-balloon: switch back to OOM handler for VIRTIO_BALLOON_F_DEFLATE_ON_OOM (Nico Pache) [1839055] - [documentation] mm/page_reporting: add free page reporting documentation (Nico Pache) [1839055] - [mm] mm/page_reporting: add budget limit on how many pages can be reported per pass (Nico Pache) [1839055] - [mm] mm/page_reporting: rotate reported pages to the tail of the list (Nico Pache) [1839055] - [virtio] virtio-balloon: add support for providing free page reports to host (Nico Pache) [1839055] - [virtio] virtio-balloon: pull page poisoning config out of free page hinting (Nico Pache) [1839055] - [mm] mm: introduce Reported pages (Nico Pache) [1839055] - [mm] mm: add function __putback_isolated_page (Nico Pache) [1839055] - [mm] mm: use zone and order instead of free area in free_list manipulators (Nico Pache) [1839055] - [mm] mm: adjust shuffle code to allow for future coalescing (Nico Pache) [1839055] - [virtio] virtio_balloon: Adjust label in virtballoon_probe (Nico Pache) [1839055] - [virtio] virtio_ring: Fix mem leak with vring_new_virtqueue() (Nico Pache) [1839055] - [virtio] virtio_balloon: Fix memory leaks on errors in virtballoon_probe() (Nico Pache) [1839055] - [virtio] virtio-balloon: Fix memory leak when unloading while hinting is in progress (Nico Pache) [1839055] - [virtio] virtio_balloon: prevent pfn array overflow (Nico Pache) [1839055] - [virtio] virtio-pci: check name when counting MSI-X vectors (Nico Pache) [1839055] - [virtio] virtio-balloon: initialize all vq callbacks (Nico Pache) [1839055] - [virtio] virtio-mmio: convert to devm_platform_ioremap_resource (Nico Pache) [1839055] - [virtio] virtio_balloon: divide/multiply instead of shifts (Nico Pache) [1839055] - [virtio] virtio_balloon: name cleanups (Nico Pache) [1839055] - [virtio] virtio_balloon: fix shrinker count (Nico Pache) [1839055] - [virtio] virtio_balloon: fix shrinker scan number of pages (Nico Pache) [1839055] - [virtio] virtio-mmio: add error check for platform_get_irq (Nico Pache) [1839055] - [virtio] virtio: Fix indentation of VIRTIO_MMIO (Nico Pache) [1839055] - [virtio] virtio/virtio_ring: do some comment fixes (Nico Pache) [1839055] - [virtio] virtio_pci: fix a NULL pointer reference in vp_del_vqs (Nico Pache) [1839055] - [virtio] virtio: hint if callbacks surprisingly might sleep (Nico Pache) [1839055] - [virtio] virtio_balloon: remove the unnecessary 0-initialization (Nico Pache) [1839055] - [virtio] virtio-balloon: improve update_balloon_size_func (Nico Pache) [1839055] - [virtio] virtio-balloon: tweak config_changed implementation (Nico Pache) [1839055] - [misc] virtio: don't allocate vqs when names= NULL (Nico Pache) [1839055] - [virtio] virtio_pci: use queue idx instead of array idx to set up the vq (Nico Pache) [1839055] - [virtio] virtio: remove deprecated VIRTIO_PCI_CONFIG() (Nico Pache) [1839055] - [mm] mm/page_poison: expose page_poisoning_enabled to kernel modules (Nico Pache) [1839055] - [virtio] virtio-balloon: VIRTIO_BALLOON_F_PAGE_POISON (Nico Pache) [1839055] - [virtio] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_HINT (Nico Pache) [1839055] - [virtio] virtio: pci-legacy: Validate queue pfn (Nico Pache) [1839055] - [virtio] virtio: mmio-v1: Validate queue PFN (Nico Pache) [1839055] - [virtio] virtio_balloon: replace oom notifier with shrinker (Nico Pache) [1839055] - [virtio] virtio-balloon: kzalloc the vb struct (Nico Pache) [1839055] - [virtio] virtio-balloon: remove BUG() in init_vqs (Nico Pache) [1839055] - [mm] mm, debug_pagealloc: use a page type instead of page_ext flag (Nico Pache) [1839055] - [mm] mm, page_alloc: more extensive free page checking with debug_pagealloc (Nico Pache) [1839055] - [mm] mm, debug_pagelloc: use static keys to enable debugging (Nico Pache) [1839055] - [include] include/linux/page_ext.h: drop definition of unused PAGE_EXT_DEBUG_POISON (Nico Pache) [1839055] - [tty] vt: vt_ioctl: fix use-after-free in vt_in_use() (Vladis Dronov) [1875585] - [tty] vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console (Vladis Dronov) [1875585] - [tty] vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines (Vladis Dronov) [1875585] - [tty] vt: selection, introduce vc_is_sel (Vladis Dronov) [1875585] - [fs] gfs2: Don't sleep during glock hash walk (Andreas Grunbacher) [1871173]- [powerpc] powerpc/64s/hash: Fix hash_preload running with interrupts enabled (Diego Domingos) [1884152] - [powerpc] powerpc/pseries: Avoid using addr_to_pfn in real mode (Diego Domingos) [1822675] - [powerpc] powerpc/pseries: Handle UE event for memcpy_mcsafe (Diego Domingos) [1822675] - [powerpc] powerpc/pseries: Fix MCE handling on pseries (Diego Domingos) [1822675] - [powerpc] powerpc/64s/pseries: machine check convert to use common event code (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Print additional information about MCE error (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Print correct severity for MCE error (Diego Domingos) [1822675] - [powerpc] powerpc/64s: Report SLB multi-hit rather than parity error (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Reduce MCE console logs to lesser lines (Diego Domingos) [1822675] - [powerpc] powerpc/pseries/mce: Improve array initialization (Diego Domingos) [1822675] - [powerpc] powerpc/pseries/mce: Fix misleading print for TLB mutlihit (Diego Domingos) [1822675] - [netdrv] i40e: fix crash when Rx descriptor count is changed (Jiri Benc) [1882708] - [netdrv] virtio_net: Fix out of bounds access of sq (Jiri Benc) [1882708] - [tools] tools/bpftool: Fix attaching flow dissector (Jiri Benc) [1882708] - [docs] bpf: Use valid and new links in index.rst (Jiri Benc) [1882708] - [netdrv] netdevsim: fix unbalaced locking in nsim_create() (Jiri Benc) [1882708] - [net] bpfilter: Allow to build bpfilter_umh as a module without static library (Jiri Benc) [1882708] - [net] bpf, netns: Fix use-after-free in pernet pre_exit callback (Jiri Benc) [1882708] - [net] xsk: Use dma_need_sync instead of reimplenting it (Jiri Benc) [1882708] - [net] xsk: Remove a double pool->dev assignment in xp_dma_map (Jiri Benc) [1882708] - [net] xsk: Replace the cheap_dma flag with a dma_need_sync flag (Jiri Benc) [1882708] - [net] dma-mapping: Add a new dma_need_sync API (Jiri Benc) [1882708] - [tools] selftests: bpf: Pass program to bpf_prog_detach in flow_dissector (Jiri Benc) [1882708] - [tools] selftests: bpf: Pass program and target_fd in flow_dissector_reattach (Jiri Benc) [1882708] - [net] bpf: flow_dissector: Check value of unused flags to BPF_PROG_DETACH (Jiri Benc) [1882708] - [net] bpf: flow_dissector: Check value of unused flags to BPF_PROG_ATTACH (Jiri Benc) [1882708] - [tools] libbpf: Adjust SEC short cut for expected attach type BPF_XDP_DEVMAP (Jiri Benc) [1882708] - [tools] selftests/bpf: Test updating flow_dissector link with same program (Jiri Benc) [1882708] - [net] bpf, netns: Keep a list of attached bpf_link's (Jiri Benc) [1882708] - [net] bpf, netns: Keep attached programs in bpf_prog_array (Jiri Benc) [1882708] - [net] flow_dissector: Pull BPF program assignment up to bpf-netns (Jiri Benc) [1882708] - [tools] libbpf: Fix CO-RE relocs against .text section (Jiri Benc) [1882708] - [tools] selftests/bpf: Move newer bpf_iter_* type redefining to a new header file (Jiri Benc) [1882708] - [net] xdp: Handle frame_sz in xdp_convert_zc_to_xdp_frame() (Jiri Benc) [1882708] - [net] xdp: Fix xsk_generic_xmit errno (Jiri Benc) [1882708] - [tools] bpf: Selftests and tools use struct bpf_devmap_val from uapi (Jiri Benc) [1882708] - [net] xdp: use shift instead of 64 bit division (Jiri Benc) [1882708] - [net] bpf: Fix unused-var without NETDEVICES (Jiri Benc) [1882708] - [net] seg6: fix seg6_validate_srh() to avoid slab-out-of-bounds (Jiri Benc) [1882708] - [net] seg6: fix SRH processing to comply with RFC8754 (Jiri Benc) [1882708] - [tools] selftests/bpf: Extend test_flow_dissector to cover link creation (Jiri Benc) [1882708] - [tools] selftests/bpf: Convert test_flow_dissector to use BPF skeleton (Jiri Benc) [1882708] - [tools] selftests/bpf, flow_dissector: Close TAP device FD after the test (Jiri Benc) [1882708] - [tools] selftests/bpf: Add tests for attaching bpf_link to netns (Jiri Benc) [1882708] - [tools] bpftool: Support link show for netns-attached links (Jiri Benc) [1882708] - [tools] bpftool: Extract helpers for showing link attach type (Jiri Benc) [1882708] - [tools] libbpf: Add support for bpf_link-based netns attachment (Jiri Benc) [1882708] - [net] bpf: Add link-based BPF program attachment to network namespace (Jiri Benc) [1882708] - [net] flow_dissector: Move out netns_bpf prog callbacks (Jiri Benc) [1882708] - [net] Introduce netns_bpf for BPF programs attached to netns (Jiri Benc) [1882708] - [net] flow_dissector: Pull locking up from prog attach callback (Jiri Benc) [1882708] - [net] bpf: Allow SO_BINDTODEVICE opt in bpf_setsockopt (Jiri Benc) [1882708] - [net] Make locking in sock_bindtoindex optional (Jiri Benc) [1882708] - [net] add sock_bindtoindex (Jiri Benc) [1882708] - [tools] selftest: Add tests for XDP programs in devmap entries (Jiri Benc) [1882708] - [net] xdp: Add xdp_txq_info to xdp_buff (Jiri Benc) [1882708] - [net] xdp: Introduce xdp_convert_frame_to_buff utility routine (Jiri Benc) [1882708] - [net] maintainers: Adjust entry in XDP SOCKETS to actual file name (Jiri Benc) [1882708] - [net] maintainers, xsk: Update AF_XDP section after moves/adds (Jiri Benc) [1882708] - [net] xsk: Explicitly inline functions and move definitions (Jiri Benc) [1882708] - [net] xdp: Simplify xdp_return_{frame, frame_rx_napi, buff} (Jiri Benc) [1882708] - [net] xsk: Remove MEM_TYPE_ZERO_COPY and corresponding code (Jiri Benc) [1882708] - [netdrv] mlx5, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] ixgbe, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] ice, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] i40e, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] i40e: Separate kernel allocated rx_bi rings from AF_XDP rings (Jiri Benc) [1882708] - [netdrv] i40e: Refactor rx_bi accesses (Jiri Benc) [1882708] - [net] xsk: Introduce AF_XDP buffer allocation API (Jiri Benc) [1867206 1882708] - [net] xsk: Move defines only used by AF_XDP internals to xsk.h (Jiri Benc) [1882708] - [net] xsk: Move driver interface to xdp_sock_drv.h (Jiri Benc) [1882708] - [net] xsk: Move xskmap.c to net/xdp/ (Jiri Benc) [1882708] - [net] xsk: Fix xsk_umem_xdp_frame_sz() (Jiri Benc) [1882708] - [tools] selftests/bpf: Convert bpf_iter_test_kern{3, 4}.c to define own bpf_iter_meta (Jiri Benc) [1882708] - [tools] selftest/bpf: Make bpf_iter selftest compilable against old vmlinux.h (Jiri Benc) [1882708] - [net] bpf: Fix too large copy from user in bpf_test_init (Jiri Benc) [1882708] - [tools] selftests/bpf: Xdp_adjust_tail add grow tail tests (Jiri Benc) [1882708] - [tools] selftests/bpf: Adjust BPF selftest for xdp_adjust_tail (Jiri Benc) [1882708] - [net] bpf: Add xdp.frame_sz in bpf_prog_test_run_xdp(). (Jiri Benc) [1882708] - [net] xdp: Clear grow memory in bpf_xdp_adjust_tail() (Jiri Benc) [1882708] - [net] xdp: Allow bpf_xdp_adjust_tail() to grow packet size (Jiri Benc) [1882708] - [netdrv] mlx5: Rx queue setup time determine frame_sz for XDP (Jiri Benc) [1882708] - [netdrv] xdp: For Intel AF_XDP drivers add XDP frame_sz (Jiri Benc) [1882708] - [netdrv] ice: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] i40e: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] ixgbevf: Add XDP frame size to VF driver (Jiri Benc) [1882708] - [netdrv] ixgbe: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP frame size in two code paths (Jiri Benc) [1882708] - [netdrv] vhost_net: Also populate XDP frame size (Jiri Benc) [1882708] - [netdrv] tun: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] nfp: Add XDP frame size to netronome driver (Jiri Benc) [1882708] - [netdrv] net: thunderx: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] mlx4: Add XDP frame size and adjust max XDP MTU (Jiri Benc) [1882708] - [netdrv] qlogic/qede: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] hv_netvsc: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] veth: Xdp using frame_sz in veth driver (Jiri Benc) [1882708] - [netdrv] veth: Adjust hard_start offset on redirect XDP frames (Jiri Benc) [1882708] - [net] xdp: Cpumap redirect use frame_sz and increase skb_tailroom (Jiri Benc) [1882708] - [net] xdp: Xdp_frame add member frame_sz and handle in convert_to_xdp_frame (Jiri Benc) [1882708] - [net] XDP-generic determining XDP frame size (Jiri Benc) [1882708] - [netdrv] sfc: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] bnxt: Add XDP frame size to driver (Jiri Benc) [1882708] - [net] xdp: Add frame size to xdp_buff (Jiri Benc) [1867209 1882708] - [net] bpfilter: switch to kernel_write (Jiri Benc) [1882708] - [tools] bpf: selftests: Add bpf_iter selftests (Jiri Benc) [1882708] - [tools] bpf: selftests: Add iterator programs for ipv6_route and netlink (Jiri Benc) [1882708] - [net] bpf: Enable bpf_iter targets registering ctx argument types (Jiri Benc) [1882708] - [net] bpf: Change func bpf_iter_unreg_target() signature (Jiri Benc) [1882708] - [net] bpf: Refactor bpf_iter target registration (Jiri Benc) [1882708] - [net] bpf: Add netlink and ipv6_route bpf_iter targets (Jiri Benc) [1882708] - [net] bpfilter: check if $(CC) can link static libc in Kconfig (Jiri Benc) [1882708] - [net] bpfilter: document build requirements for bpfilter_umh (Jiri Benc) [1882708] - [net] xsk: Remove unnecessary member in xdp_umem (Jiri Benc) [1882708] - [net] xsk: Change two variable names for increased clarity (Jiri Benc) [1882708] - [net] bpfilter: match bit size of bpfilter_umh to that of the kernel (Jiri Benc) [1882708] - [docs] networking: convert filter.txt to ReST (Jiri Benc) [1882708] - [net] xsk: Fix typo in xsk_umem_consume_tx and xsk_generic_xmit comments (Jiri Benc) [1882708] - [net] introduce SO_BINDTOIFINDEX sockopt (Jiri Benc) [1882708] - [net] netlink: Use sizeof_field() macro (Jiri Benc) [1882708] - [net] xdp: Add SPDX license identifier - Makefile/Kconfig (Jiri Benc) [1882708] - [net] bpfilter: prefix header search paths with $(srctree)/ (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP meta data support (Jiri Benc) [1882708] - [netdrv] virtio_net: Keep vnet header zeroed if XDP is loaded for small buffer (Jiri Benc) [1882708] - [netdrv] virtio-net: keep vnet header zeroed after processing XDP (Jiri Benc) [1882708] - [netdrv] virtio-net: get rid of unnecessary container of rq stats (Jiri Benc) [1882708] - [netdrv] virtio-net: correctly update XDP_TX counters (Jiri Benc) [1882708] - [netdrv] virtio_net: Add kick stats (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP related stats (Jiri Benc) [1882708] - [netdrv] virtio_net: Factor out the logic to determine xdp sq (Jiri Benc) [1882708] - [netdrv] virtio_net: Make drop counter per-queue (Jiri Benc) [1882708] - [netdrv] virtio_net: Use temporary storage for accounting rx stats (Jiri Benc) [1882708] - [netdrv] bnx2: mark driver deprecated (Jonathan Toppins) [1878183] - [net] openvswitch: silence suspicious RCU usage warning (Eelco Chaudron) [1895862] - [net] openswitch: reuse the helper variable to improve the code readablity (Eelco Chaudron) [1895862] - [net] openvswitch: remove unused keep_flows (Eelco Chaudron) [1895862] - [net] openvswitch: refactor flow free function (Eelco Chaudron) [1895862] - [net] openvswitch: improve the coding style (Eelco Chaudron) [1895862] - [net] openvswitch: use skb_list_walk_safe helper for gso segments (Eelco Chaudron) [1895862] - [net] openvswitch: do not update max_headroom if new headroom is equal to old headroom (Eelco Chaudron) [1895862] - [net] openvswitch: drop unneeded likely() call around IS_ERR() (Eelco Chaudron) [1895862] - [net] openvswitch: convert to kvmalloc (Eelco Chaudron) [1895862] - [infiniband] RDMA/rxe: Mark Soft-RoCE driver as unsupported (Kamal Heib) [1878207] - [net] netfilter: nf_log: missing vlan offload tag and proto (Florian Westphal) [1889990] - [net] ipvs: clear skb->tstamp in forwarding path (Florian Westphal) [1889990] - [net] netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid (Florian Westphal) [1889990] - [net] netfilter: ctnetlink: add a range check for l3/l4 protonum (Florian Westphal) [1889990] {CVE-2020-25211} - [net] netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS (Florian Westphal) [1889990] - [net] netfilter: nf_tables: fix destination register zeroing (Florian Westphal) [1889990] - [net] netfilter: nf_tables: add NFTA_SET_USERDATA if not null (Florian Westphal) [1889990] - [net] netfilter: flowtable: Set offload timeout when adding flow (Florian Westphal) [1889990] - [net] netfilter: conntrack: Move nf_ct_offload_timeout to header file (Florian Westphal) [1889990] - [net] netfilter: nft_set_rbtree: Handle outcomes of tree rotations in overlap detection (Florian Westphal) [1889990] - [net] netfilter: nf_tables: nft_exthdr: the presence return value should be little-endian (Florian Westphal) [1889990] - [net] netfilter: nft_set_pipapo: Drop useless assignment of scratch map index on insert (Florian Westphal) [1889990] - [net] netfilter: arp_tables: init netns pointer in xt_tgdtor_param struct (Florian Westphal) [1889990] - [net] netfilter: arp_tables: init netns pointer in xt_tgchk_param struct (Florian Westphal) [1889990] - [net] ipvs: do not schedule icmp errors from tunnels (Florian Westphal) [1889990] - [powercap] powercap: intel_rapl: add support for Sapphire Rapids (Steve Best) [1837373] - [powercap] powercap/intel_rapl: add support for RocketLake (Steve Best) [1782715] - [char] ipmi: Use fallthrough pseudo-keyword (Tony Camuso) [1877848] - [char] ipmi/watchdog: add missing newlines when printing parameters by sysfs (Tony Camuso) [1877848] - [char] ipmi: remve duplicate code in __ipmi_bmc_register() (Tony Camuso) [1877848] - [documentation] docs: ipmi: Replace HTTP links with HTTPS ones (Tony Camuso) [1877848] - [char] ipmi: ssif: Remove finished TODO comment about SMBus alert (Tony Camuso) [1877848] - [documentation] Doc: driver-api: ipmi: Add description of alerts_broken module param (Tony Camuso) [1877848] - [char] ipmi:ssif: Remove dynamic platform device handing (Tony Camuso) [1877848] - [char] Try to load acpi_ipmi when an SSIF ACPI IPMI interface is added (Tony Camuso) [1877848] - [char] ipmi_si: Load acpi_ipmi when ACPI IPMI interface added (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Fix error handling and status check (Tony Camuso) [1877848] - [char] ipmi: Replace guid_copy() with import_guid() where it makes sense (Tony Camuso) [1877848] - [char] ipmi: use vzalloc instead of kmalloc for user creation (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Fix some format issue of the code (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Avoid unnecessary check (Tony Camuso) [1877848] - [char] docs: fix references for ipmi.rst file (Tony Camuso) [1877848] - [documentation] docs: move IPMI.txt to the driver API book (Tony Camuso) [1877848]- [powerpc] pseries: Fix 64 bit logical memory block panic (Steve Best) [1894922] - [mm] powerpc/book3s64/radix: Make radix_mem_block_size 64bit (Steve Best) [1894922] - [powerpc] powerpc/64s/radix: Fix build failure with RADIX_MMU=n (Steve Best) [1894922] - [x86] kvm: mmu: fix is_tdp_mmu_check when the TDP MMU is not in use (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: svm: Update cr3_lm_rsvd_bits for AMD SEV guests (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: Introduce cr3_lm_rsvd_bits in kvm_vcpu_arch (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: clflushopt should be treated as a no-op by emulation (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: handle MSR_IA32_DEBUGCTLMSR with report_ignored_msrs (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: request masterclock update any time guest uses different msr (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: ensure pv_cpuid.features is initialized when enabling cap (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: reads of restricted pv msrs should also result in #GP (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: use positive error values for msr emulation that causes #GP (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86/mmu: fix counting of rmap entries in pte_list_add (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: bump KVM_MAX_CPUID_ENTRIES (Vitaly Kuznetsov) [1898914 1878097] - [x86] vmxfeatures: rename features for consistency with KVM and manual (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: vmx: Add VMX_FEATURE_USR_WAIT_PAUSE (Vitaly Kuznetsov) [1878097 1898914] - [x86] Expose SERIALIZE for supported cpuid (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: x86: Expose fast short REP MOV for supported cpuid (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: x86: Expose AVX512 VP2INTERSECT in cpuid for TGL (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: Convert to new CPU match macros (Vitaly Kuznetsov) [1878097 1898914] - [documentation] docs: kvm: fix referenced ioctl symbol (Vitaly Kuznetsov) [1878097 1898914] - [documentation] docs: kvm: api.rst: add missing spaces (Vitaly Kuznetsov) [1878097 1898914] - [virt] kvm: use struct_size() and flex_array_size() helpers in kvm_io_bus_unregister_dev() (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix a typo (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix some typos in cpuid.rst (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix a typo (Vitaly Kuznetsov) [1878097 1898914] - [x86] x86/cpu: Fix typos and improve the comments in sync_core() (David Arcari) [1837457] - [x86] x86/cpu: Use SERIALIZE in sync_core() when available (David Arcari) [1837457] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (David Arcari) [1837457] - [x86] x86/cpufeatures: Add enumeration for SERIALIZE instruction (David Arcari) [1837457] - [x86] x86/cpu: Refactor sync_core() for readability (David Arcari) [1837457] - [x86] x86/cpu: Relocate sync_core() to sync_core.h (David Arcari) [1837457] - [arm64] kvm: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception (Auger Eric) [1882794] - [arm64] kvm: arm64: Survive synchronous exceptions caused by AT instructions (Auger Eric) [1882794] - [arm64] kvm: arm64: Add kvm_extable for vaxorcism code (Auger Eric) [1882794] - [arm64] kvm: arm64: Print warning when cpu erratum can cause guests to deadlock (Auger Eric) [1882794] - [arm64] kvm: arm64: clean up redundant 'kvm_run' parameters (Auger Eric) [1882794] - [arm64] kvm: arm64: Use common KVM implementation of MMU memory caches (Auger Eric) [1882794] - [arm64] kvm: arm64: Use common code's approach for __GFP_ZERO with memory caches (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop @max param from mmu_topup_memory_cache() (Auger Eric) [1882794] - [arm64] s/AMEVTYPE/AMEVTYPER (Auger Eric) [1882794] - [arm64] kvm: arm64: bti: Reset BTYPE when skipping emulated instructions (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove S1PTW check from kvm_vcpu_dabt_iswrite() (Auger Eric) [1882794] - [arm64] kvm: arm64: Assume write fault on S1PTW permission fault on instruction fetch (Auger Eric) [1882794] - [arm64] kvm: arm64: Update page shift if stage 2 block mapping not supported (Auger Eric) [1882794] - [arm64] kvm: arm64: Fix address truncation in traces (Auger Eric) [1882794] - [arm64] kvm: arm64: Do not try to map PUDs when they are folded into PMD (Auger Eric) [1882794] - [documentation] arm64/x86: kvm: Introduce steal-time cap (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Fix stolen time accounting across migration (Auger Eric) [1882794] - [kernel] kvm: arm64: Drop type input from kvm_put_guest (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Fix potential loss of stolen time (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: steal-time is only supported when configured (Auger Eric) [1882794] - [arm64] kvm: arm64: Move S1PTW S2 fault logic out of io_mem_abort() (Auger Eric) [1882794] - [arm64] kvm: arm64: Don't skip cache maintenance for read-only memslots (Auger Eric) [1882794] - [arm64] kvm: arm64: Handle data and instruction external aborts the same way (Auger Eric) [1882794] - [arm64] kvm: arm64: Rename kvm_vcpu_dabt_isextabt() (Auger Eric) [1882794] - [trace] kvm: arm: Add trace name for ARM_NISV (Auger Eric) [1882794] - [arm64] kvm: arm64: Ensure that all nVHE hyp code is in .hyp.text (Auger Eric) [1882794] - [arm64] kvm: arm64: Don't use has_vhe() for CHOOSE_HYP_SYM() (Auger Eric) [1882794] - [arm64] kvm: arm64: timers: Move timer registers to the sys_regs file (Auger Eric) [1882794] - [arm64] kvm: arm64: timers: Rename kvm_timer_sync_hwstate to kvm_timer_sync_user (Auger Eric) [1882794] - [arm64] kvm: arm64: Move SPSR_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Disintegrate SPSR array (Auger Eric) [1882794] - [arm64] kvm: arm64: Move SP_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Move ELR_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Make struct kvm_regs userspace-only (Auger Eric) [1882794] - [arm64] kvm: arm64: debug: Drop useless vpcu parameter (Auger Eric) [1882794] - [arm64] kvm: arm64: pauth: Use ctxt_sys_reg() instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: sve: Use __vcpu_sys_reg() instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: hyp: Use ctxt_sys_reg/__vcpu_sys_reg instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: Introduce accessor for ctxt->sys_reg (Auger Eric) [1882794] - [arm64] kvm: arm64: Rename HSR to ESR (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop long gone function parameter documentation (Auger Eric) [1882794] - [arm64] kvm: arm64: vgic-its: Change default outer cacheability for {PEND, PROP}BASER (Auger Eric) [1882794] - [arm64] kvm: arm64: Lift instrumentation restrictions on VHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove __hyp_text macro, use build rules instead (Auger Eric) [1882794] - [arm64] kvm: arm64: Compile remaining hyp/ files for both VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Duplicate hyp/timer-sr.c for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/sysreg-sr.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/debug-sr.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/switch.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Duplicate hyp/tlb.c for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Move hyp-init.S to nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Build hyp-entry.S separately for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Handle calls to prefixed hyp functions (Auger Eric) [1882794] - [arm64] kvm: arm64: Use build-time defines in has_vhe() (Auger Eric) [1882794] - [arm64] kvm: arm64: Add build rules for separate VHE/nVHE object files (Auger Eric) [1882794] - [arm64] kvm: arm64: Move __smccc_workaround_1_smc to .rodata (Auger Eric) [1882794] - [arm64] kvm: arm64: Fix symbol dependency in __hyp_call_panic_nvhe (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove the target table (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove target_table from exit handlers (Auger Eric) [1882794] - [arm64] kvm: arm64: Move ACTLR_EL1 emulation to the sys_reg_descs array (Auger Eric) [1882794] - [arm64] kvm: arm64: Tolerate an empty target_table list (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop the target_table[] indirection (Auger Eric) [1882794] - [arm64] kvm: Remove kern_hyp_va from get_vcpu_ptr (Auger Eric) [1882794] - [arm64] kvm: arm64: Allow in-atomic injection of SPIs (Auger Eric) [1882794] - [arm64] kvm: arm64: Add emulation for 32bit guests accessing ACTLR2 (Auger Eric) [1882794] - [arm64] kvm: arm64: Use cpus_have_final_cap for has_vhe() (Auger Eric) [1882794] - [arm64] efi: Move variable assignments after SECTIONS (Auger Eric) [1882794] - [arm64] efi: Mark __efistub_stext_offset as an absolute symbol explicitly (Auger Eric) [1882794] - [arm64] drop linker script hack to hide __efistub_ symbols (Auger Eric) [1882794] - [arm64] kvm: arm64: Synchronize sysreg state on injecting an AArch32 exception (Auger Eric) [1882794] - [arm64] kvm: arm64: Make vcpu_cp1x() work on Big Endian hosts (Auger Eric) [1882794] - [arm64] kvm: arm64: Stop sparse from moaning at __hyp_this_cpu_ptr (Auger Eric) [1882794] - [arm64] kvm: arm64: Check advertised Stage-2 page size capability (Auger Eric) [1882794] - [arm64] cpufeature: Don't treat granule sizes as strict (Auger Eric) [1882794] - [arm64] cpufeature: Validate hypervisor capabilities during CPU hotplug (Auger Eric) [1882794] - [arm64] kvm: hyp: use cpus_have_final_cap() (Auger Eric) [1882794] - [arm64] cpufeature: add cpus_have_final_cap() (Auger Eric) [1882794] - [arm64] mark (__)cpus_have_const_cap as __always_inline (Auger Eric) [1882794] - [arm64] Mark call_smc_arch_workaround_1 as __maybe_unused (Auger Eric) [1882794] - [arm64] Make use of ARCH_WORKAROUND_1 even when KVM is not enabled (Auger Eric) [1882794] - [arm64] kvm: arm64: Delete duplicated label in invalid_vector (Auger Eric) [1882794] - [arm64] use mov_q instead of literal ldr (Auger Eric) [1882794] - [arm64] kvm: Modernize __smccc_workaround_1_smc_start annotations (Auger Eric) [1882794] - [arm64] kvm: Modernize annotation for __bp_harden_hyp_vecs (Auger Eric) [1882794] - [arm64] kvm: Annotate assembly using modern annoations (Auger Eric) [1882794] - [arm64] kvm: arm64: Prevent vcpu_has_ptrauth from generating OOL functions (Auger Eric) [1882794] - [arm64] kvm: disable access to AMU registers from kvm guests (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Ensure task delay accounting is enabled (Auger Eric) [1882794] - [arm64] kvm: arm64: Stop writing aarch32's CSSELR into ACTLR (Auger Eric) [1882794] - [arm64] kvm: Annotate guest entry/exit as a single function (Auger Eric) [1882794] - [kernel] linkage: Introduce new macros for assembler symbols (Auger Eric) [1882794] - [s390] kvm: s390: remove diag318 reset code (Thomas Huth) [1899497] - [powerpc] powerpc/hv-gpci: Add sysfs files inside hv-gpci device to show cpumask (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-gpci: Add cpu hotplug support (Michael Petlan) [1844416] - [documentation] Documentation/ABI: Add ABI documentation for hv-gpci format (Michael Petlan) [1844416] - [documentation] Documentation/ABI: Add ABI documentation for hv-24x7 format (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-gpci: Fix starting index value (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-24x7: Move cpumask file to top folder of hv-24x7 driver (Michael Petlan) [1844416] - [powerpc] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show cpumask (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-24x7: Add cpu hotplug support (Michael Petlan) [1844416] - [powerpc] powerpc/perf: Fix reading of MSRbits in trace-imc (Michael Petlan) [1854536] - [powerpc] powerpc/perf: Add kernel support for new MSRbits in trace-imc (Michael Petlan) [1854536] - [documentation] kdump: update kdump documentation due to change of crash URL (Lianbo Jiang) [1896236] - [pinctrl] pinctrl: intel: Add Intel Emmitsburg pin controller support (David Arcari) [1837409] - [x86] x86/platform/uv: Fix copied UV5 output archtype (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Drop last traces of uv_flush_tlb_others (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Recognize UV5 hubless system identifier (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove spaces from OEM IDs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Fix missing OEM_TABLE_ID (Frank Ramsay) [1861439] - [misc] x86/platform/uv: Update Copyrights to conform to HPE standards (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update for UV5 NMI MMR changes (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV5 TSC checking (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update node present counting (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV5 MMR references in UV GRU (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Adjust GAM MMR references affected by UV5 updates (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update MMIOH references based on new UV5 MMRs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Add and decode Arch Type in UVsystab (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Add UV5 direct references (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV MMRs for UV5 (Frank Ramsay) [1861439] - [misc] drivers/misc/sgi-xp: Adjust references in UV kernel modules (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove SCIR MMR references for UV systems (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove UV BAU TLB Shootdown Handler (Frank Ramsay) [1861439] - [x86] x86/kernel: Fix more -Wmissing-prototypes warnings (Frank Ramsay) [1861439] - [x86] x86/apic/uv: Avoid unused variable warning (Frank Ramsay) [1861439] - [misc] misc: sgi-xp: xp_main: Staticify local functions xp_init() and xp_exit() (Frank Ramsay) [1861439] - [misc] misc/sgi-xp: remove SGI SN2 support (Frank Ramsay) [1861439] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Frank Ramsay) [1861439] - [x86] efi/x86: Remove unreachable code in kexec_enter_virtual_mode() (Frank Ramsay) [1861439] - [x86] x86/efi: Remove unused EFI_UV1_MEMMAP code (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove uv bios and efi code related to EFI_UV1_MEMMAP (Frank Ramsay) [1861439] - [x86] x86/efi: Remove references to no-longer-used efi_have_uv1_memmap() (Frank Ramsay) [1861439] - [x86] x86/efi: Delete SGI UV1 detection (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove efi=old_map command line option (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove vestigial mention of UV1 platform from bios header (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for uv1 platform from uv_hub (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_bau (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_mmrs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from x2apic_uv_x (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_tlb (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_time (Frank Ramsay) [1861439] - [x86] x86/apic/uv: Make x2apic_extra_bits static (Frank Ramsay) [1861439] - [s390] uv: add destroy page call (Thomas Huth) [1882800] - [s390] gmap: improve THP splitting (Thomas Huth) [1882800] - [s390] kvm: s390: clean up redundant 'kvm_run' parameters (Thomas Huth) [1882800] - [documentation] documentation: virt: kvm/s390-pv: drop doubled words (Thomas Huth) [1882800] - [s390] kvm: s390: reduce number of IO pins to 1 (Thomas Huth) [1882800] - [s390] protvirt: use scnprintf() instead of snprintf() (Thomas Huth) [1882800] - [s390] kvm: s390: remove unneeded semicolon in gisa_vcpu_kicker() (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: gmap_table_walk() simplifications (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Move conditional reschedule (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Fix possible race when shadowing region 3 tables (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Fix region 1 ASCE sanity shadow address checks (Thomas Huth) [1882800] - [s390] kvm: s390: Use fallthrough; (Thomas Huth) [1882800] - [s390] mm: use refcount_t for refcount (Thomas Huth) [1882800] - [s390] mm: make gmap_test_and_clear_dirty_pmd static (Thomas Huth) [1882800] - [s390] mm: optimize locking without huge pages in gmap_pmd_op_walk() (Thomas Huth) [1882800] - [net] openvswitch: introduce common code for flushing flows (Eelco Chaudron) [1888576] - [net] openvswitch: silence suspicious RCU usage warning (Eelco Chaudron) [1888576] - [net] openvswitch: make masks cache size configurable (Eelco Chaudron) [1888576] - [net] openvswitch: add masks cache hit counter (Eelco Chaudron) [1888576] - [net] openvswitch: Prevent kernel-infoleak in ovs_ct_put_key() (Eelco Chaudron) [1888576] - [net] openvswitch: kerneldoc fixes (Eelco Chaudron) [1888576] - [net] openvswitch: use div_u64() for 64-by-32 divisions (Eelco Chaudron) [1888576] - [net] openvswitch: suitable access to the dp_meters (Eelco Chaudron) [1888576] - [net] openvswitch: use u64 for meter bucket (Eelco Chaudron) [1888576] - [net] openvswitch: make EINVAL return value more obvious (Eelco Chaudron) [1888576] - [net] openvswitch: remove the unnecessary check (Eelco Chaudron) [1888576] - [net] openvswitch: set max limitation to meters (Eelco Chaudron) [1888576] - [net] openvswitch: expand the meters supported number (Eelco Chaudron) [1888576] - [net] openvswitch: use hlist_for_each_entry_rcu instead of hlist_for_each_entry (Eelco Chaudron) [1888576] - [net] ovs: datapath: hide clang frame-overflow warnings (Eelco Chaudron) [1888576] - [net] openvswitch: use netif_ovs_is_port() instead of opencode (Eelco Chaudron) [1888576] - [platform] platform/x86: intel_pmc_core: avoid unused-function warnings (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make pmc_core_substate_res_show() generic (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make pmc_core_lpm_display() generic for platforms that support sub-states (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add slp_s0_offset attribute back to tgl_reg_map (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove duplicate 'if' to create debugfs entry (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Relocate pmc_core_*_display() to outside of CONFIG_DEBUG_FS (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs support to access live status registers (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Dump low power status registers on an S0ix.y failure (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add an additional parameter to pmc_core_lpm_display() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove slp_s0 attributes from tgl_reg_map (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Refactor the driver by removing redundant code (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs entry for low power mode status registers (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs entry to access sub-state residencies (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Fix spelling of MHz unit (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Fix indentation in function definitions (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Put more stuff under #ifdef DEBUG_FS (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Respect error code of kstrtou32_from_user() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make debugfs entry for pch_ip_power_gating_status conditional (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove unnecessary assignments (David Arcari) [1783140]- [net] mptcp: provide rmem[0] limit (Davide Caratti) [1874368] - [net] mptcp: add missing memory scheduling in the rx path (Davide Caratti) [1874368] - [net] mptcp: depends on IPV6 but not as a module (Davide Caratti) [1874368] - [tools] selftests: mptcp: depends on built-in IPv6 (Davide Caratti) [1874368] - [net] mptcp: MPTCP_IPV6 should depend on IPV6 instead of selecting it (Davide Caratti) [1874368] - [net] mptcp: subflows garbage collection (Davide Caratti) [1874368] - [net] mptcp: fix fallback for MP_JOIN subflows (Davide Caratti) [1874368] - [net] mptcp: make DACK4/DACK8 usage consistent among all subflows (Davide Caratti) [1874368] - [net] mptcp: fix infinite loop on recvmsg()/worker() race. (Davide Caratti) [1874368] - [net] mptcp: don't skip needed ack (Davide Caratti) [1874368] - [net] mptcp: more DATA FIN fixes (Davide Caratti) [1874368] - [net] mptcp: Constify mptcp_pm_ops (Davide Caratti) [1874368] - [net] mptcp: ADD_ADDRs with echo bit are smaller (Davide Caratti) [1874368] - [net] mptcp: Handle incoming 32-bit DATA_FIN values (Davide Caratti) [1874368] - [net] mptcp: Consistently use READ_ONCE/WRITE_ONCE with msk->ack_seq (Davide Caratti) [1874368] - [net] tcp: drop unused function argument from mptcp_incoming_options (Davide Caratti) [1874368] - [net] mptcp: retransmit ADD_ADDR when timeout (Davide Caratti) [1874368] - [net] mptcp: add sk_stop_timer_sync helper (Davide Caratti) [1874368] - [net] mptcp: add struct mptcp_pm_add_entry (Davide Caratti) [1874368] - [tools] selftests: mptcp: add remove addr and subflow test cases (Davide Caratti) [1874368] - [tools] selftests: mptcp: add remove cfg in mptcp_connect (Davide Caratti) [1874368] - [net] mptcp: add mptcp_destroy_common helper (Davide Caratti) [1874368] - [net] mptcp: add RM_ADDR related mibs (Davide Caratti) [1874368] - [net] mptcp: implement mptcp_pm_remove_subflow (Davide Caratti) [1874368] - [net] mptcp: remove addr and subflow in PM netlink (Davide Caratti) [1874368] - [net] mptcp: add accept_subflow re-check (Davide Caratti) [1874368] - [tools] selftests: mptcp: add ADD_ADDR mibs check function (Davide Caratti) [1874368] - [net] tcp: change pingpong threshold to 3 (Davide Caratti) [1874368] - [net] tcp: Refactor pingpong code (Davide Caratti) [1874368] - [net] mptcp: add ADD_ADDR related mibs (Davide Caratti) [1874368] - [net] mptcp: send out ADD_ADDR with echo flag (Davide Caratti) [1874368] - [net] mptcp: add the incoming RM_ADDR support (Davide Caratti) [1874368] - [net] mptcp: add the outgoing RM_ADDR support (Davide Caratti) [1874368] - [net] mptcp: rename addr_signal and the related functions (Davide Caratti) [1874368] - [net] mptcp: Wake up MPTCP worker when DATA_FIN found on a TCP FIN packet (Davide Caratti) [1874368] - [net] mptcp: fix integer overflow in mptcp_subflow_discard_data() (Davide Caratti) [1874368] - [net] mptcp: Fix unsigned 'max_seq' compared with zero in mptcp_data_queue_ofo (Davide Caratti) [1874368] - [tools] selftests: mptcp: interpret \n as a new line (Davide Caratti) [1874368] - [tools] selftests: mptcp: interpret \n as a new line (Davide Caratti) [1874368] - [tools] mptcp: simult flow self-tests (Davide Caratti) [1874368] - [net] mptcp: call tcp_cleanup_rbuf on subflows (Davide Caratti) [1874368] - [net] mptcp: allow picking different xmit subflows (Davide Caratti) [1874368] - [net] mptcp: allow creating non-backup subflows (Davide Caratti) [1874368] - [net] mptcp: move address attribute into mptcp_addr_info (Davide Caratti) [1874368] - [net] mptcp: add OoO related mibs (Davide Caratti) [1874368] - [net] mptcp: cleanup mptcp_subflow_discard_data() (Davide Caratti) [1874368] - [net] mptcp: move ooo skbs into msk out of order queue. (Davide Caratti) [1874368] - [net] mptcp: introduce and use mptcp_try_coalesce() (Davide Caratti) [1874368] - [net] mptcp: basic sndbuf autotuning (Davide Caratti) [1874368] - [net] mptcp: trigger msk processing even for OoO data (Davide Caratti) [1874368] - [net] mptcp: set data_ready status bit in subflow_check_data_avail() (Davide Caratti) [1874368] - [net] mptcp: rethink 'is writable' conditional (Davide Caratti) [1874368] - [net] tcp: reduce POLLOUT events caused by TCP_NOTSENT_LOWAT (Davide Caratti) [1874368] - [net] mptcp: fix kmalloc flag in mptcp_pm_nl_get_local_id (Davide Caratti) [1874368] - [net] mptcp: fix subflow's remote_id issues (Davide Caratti) [1874368] - [net] mptcp: fix subflow's local_id issues (Davide Caratti) [1874368] - [net] mptcp: Remove unused macro MPTCP_SAME_STATE (Davide Caratti) [1874368] - [net] treewide: Use fallthrough pseudo-keyword (Davide Caratti) [1874368] - [net] netlink: consistently use NLA_POLICY_EXACT_LEN() (Davide Caratti) [1874368] - [net] mptcp: free acked data before waiting for more memory (Davide Caratti) [1874368] - [net] mptcp: sendmsg: reset iter on error redux (Davide Caratti) [1874368] - [net] mptcp: sendmsg: reset iter on error (Davide Caratti) [1874368] - [net] mptcp: fix warn at shutdown time for unaccepted msk sockets (Davide Caratti) [1874368] - [net] mptcp: use mptcp_for_each_subflow in mptcp_stream_accept (Davide Caratti) [1874368] - [net] mptcp: fix syncookie build error on UP (Davide Caratti) [1874368] - [net] tcp: fix syn cookied MPTCP request socket leak (Davide Caratti) [1874368] - [net] tcp: fix build fong CONFIG_MPTCP=n (Davide Caratti) [1874368] - [tools] selftests: mptcp: add test cases for mptcp join tests with syn cookies (Davide Caratti) [1874368] - [tools] selftests: mptcp: make 2nd net namespace use tcp syn cookies unconditionally (Davide Caratti) [1874368] - [net] mptcp: enable JOIN requests even if cookies are in use (Davide Caratti) [1874368] - [net] tcp: free request sock directly upon TFO or syncookies error (Davide Caratti) [1874368] - [include] net: keep refcount warning in reqsk_free() (Davide Caratti) [1874368] - [net] tcp: syncookies: create mptcp request socket for ACK cookies with MPTCP option (Davide Caratti) [1874368] - [net] mptcp: subflow: add mptcp_subflow_init_cookie_req helper (Davide Caratti) [1874368] - [net] mptcp: rename and export mptcp_subflow_request_sock_ops (Davide Caratti) [1874368] - [net] mptcp: subflow: split subflow_init_req (Davide Caratti) [1874368] - [net] mptcp: token: move retry to caller (Davide Caratti) [1874368] - [net] tcp: rename request_sock cookie_ts bit to syncookie (Davide Caratti) [1874368] - [net] mptcp: Safely store sequence number when sending data (Davide Caratti) [1874368] - [net] mptcp: Safely read sequence number when lock isn't held (Davide Caratti) [1874368] - [net] mptcp: Skip unnecessary skb extension allocation for bare acks (Davide Caratti) [1874368] - [net] mptcp: Only use subflow EOF signaling on fallback connections (Davide Caratti) [1874368] - [net] mptcp: Use full MPTCP-level disconnect state machine (Davide Caratti) [1874368] - [net] mptcp: Add helper to process acks of DATA_FIN (Davide Caratti) [1874368] - [net] mptcp: Add mptcp_close_state() helper (Davide Caratti) [1874368] - [net] mptcp: Track received DATA_FIN sequence number and add related helpers (Davide Caratti) [1874368] - [net] mptcp: Use MPTCP-level flag for sending DATA_FIN (Davide Caratti) [1874368] - [net] mptcp: Remove outdated and incorrect comment (Davide Caratti) [1874368] - [net] mptcp: Return EPIPE if sending is shut down during a sendmsg (Davide Caratti) [1874368] - [net] mptcp: Allow DATA_FIN in headers without TCP FIN (Davide Caratti) [1874368] - [net] subflow: introduce and use mptcp_can_accept_new_subflow() (Davide Caratti) [1874368] - [net] subflow: use rsk_ops->send_reset() (Davide Caratti) [1874368] - [net] mptcp: cleanup subflow_finish_connect() (Davide Caratti) [1874368] - [net] mptcp: explicitly track the fully established status (Davide Caratti) [1874368] - [net] mptcp: mark as fallback even early ones (Davide Caratti) [1874368] - [net] mptcp: avoid data corruption on reinsert (Davide Caratti) [1874368] - [net] subflow: always init 'rel_write_seq' (Davide Caratti) [1874368] - [net] mptcp: zero token hash at creation time. (Davide Caratti) [1874368] - [net] mptcp: move helper to where its used (Davide Caratti) [1874368] - [tools] selftests/mptcp: Better delay & reordering configuration (Davide Caratti) [1874368] - [tools] selftests: mptcp: fix typo in mptcp_connect usage (Davide Caratti) [1874368] - [tools] mptcp: more stable diag self-tests (Davide Caratti) [1874368] - [tools] selftests: mptcp: fix dependecies (Davide Caratti) [1874368] - [net] inet_diag: validate INET_DIAG_REQ_PROTOCOL attribute (Davide Caratti) [1874368] - [tools] selftests/mptcp: add diag interface tests (Davide Caratti) [1874368] - [net] mptcp: add MPTCP socket diag interface (Davide Caratti) [1874368] - [net] mptcp: add msk interations helper (Davide Caratti) [1874368] - [net] inet_diag: support for wider protocol numbers (Davide Caratti) [1874368] - [net] mptcp: use mptcp worker for path management (Davide Caratti) [1874368] - [include] mptcp: Remove unused inline function mptcp_rcv_synsent() (Davide Caratti) [1874368] - [net] mptcp: support IPV6_V6ONLY setsockopt (Davide Caratti) [1874368] - [net] mptcp: add REUSEADDR/REUSEPORT support (Davide Caratti) [1874368] - [net] use mptcp setsockopt function for SOL_SOCKET on mptcp sockets (Davide Caratti) [1874368] - [net] mptcp: do nonce initialization at subflow creation time (Davide Caratti) [1874368] - [net] mptcp: close poll() races (Davide Caratti) [1874368] - [net] mptcp: __mptcp_tcp_fallback() returns a struct sock (Davide Caratti) [1874368] - [net] mptcp: create first subflow at msk creation time (Davide Caratti) [1874368] - [net] mptcp: check for plain TCP sock at accept time (Davide Caratti) [1874368] - [net] mptcp: move mptcp_options_received's port initialization (Davide Caratti) [1874368] - [net] mptcp: initialize mptcp_options_received's ahmac (Davide Caratti) [1874368] - [net] mptcp: MPTCP_KUNIT_TESTS should depend on MPTCP instead of selecting it (Davide Caratti) [1874368] - [net] mptcp: introduce token KUNIT self-tests (Davide Caratti) [1874368] - [net] mptcp: move crypto test to KUNIT (Davide Caratti) [1874368] - [net] mptcp: refactor token container (Davide Caratti) [1874368] - [net] mptcp: add __init annotation on setup functions (Davide Caratti) [1874368] - [net] tcp: move ipv4_specific to tcp include file (Davide Caratti) [1874368] - [net] tcp: move ipv6_specific declaration to remove a warning (Davide Caratti) [1874368] - [net] mptcp: use list_first_entry_or_null (Davide Caratti) [1874368] - [net] mptcp: attempt coalescing when moving skbs to mptcp rx queue (Davide Caratti) [1874368] - [net] allow __skb_ext_alloc to sleep (Davide Caratti) [1874368] - [net] mptcp: remove inner wait loop from mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: fill skb page frag cache outside of mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: fill skb extension cache outside of mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: move common nospace-pattern to a helper (Davide Caratti) [1874368] - [net] mptcp: Use 32-bit DATA_ACK when possible (Davide Caratti) [1874368] - [s390] s390/qeth: implement ndo_bridge_setlink for learning_sync (Philipp Rudo) [1651745] - [s390] s390/qeth: implement ndo_bridge_getlink for learning_sync (Philipp Rudo) [1651745] - [s390] s390/qeth: Reset address notification in case of buffer overflow (Philipp Rudo) [1651745] - [net] bridge: Add SWITCHDEV_FDB_FLUSH_TO_BRIDGE notifier (Philipp Rudo) [1651745] - [s390] s390/qeth: Translate address events into switchdev notifiers (Philipp Rudo) [1651745] - [s390] s390/qeth: Detect PNSO OC3 capability (Philipp Rudo) [1651745] - [s390] s390/cio: Helper functions to read CSSID, IID, and CHID (Philipp Rudo) [1651745] - [s390] s390/cio: Add new Operation Code OC3 to PNSO (Philipp Rudo) [1651745] - [cpuidle] cpuidle: Drop misleading comments about RCU usage (David Arcari) [1888014] - [cpuidle] cpuidle: Allow cpuidle drivers to take over RCU-idle (David Arcari) [1888014] - [include] cpuidle: Make CPUIDLE_FLAG_TLB_FLUSHED generic (David Arcari) [1888014] - [cpuidle] sched, idle, rcu: Push rcu_idle deeper into the idle path (David Arcari) [1888014] - [cpuidle] cpuidle: Fixup IRQ state (David Arcari) [1888014] - [kernel] cpuidle: Add RH_KABI warnings (David Arcari) [1878232] - [acpi] cpuidle: ACPI: fix 'return' with no value build warning (David Arcari) [1878232] - [acpi] cpuidle: change enter_s2idle() prototype (David Arcari) [1878232] - [cpuidle] cpuidle/pseries: Make symbol 'pseries_idle_driver' static (David Arcari) [1878232] - [cpuidle] cpuidle/powernv : Remove dead code block (David Arcari) [1878232] - [cpuidle] cpuidle: Rearrange s2idle-specific idle state entry code (David Arcari) [1878232] - [cpuidle] PM: s2idle: Clear _TIF_POLLING_NRFLAG before suspend to idle (David Arcari) [1878232] - [cpuidle] cpuidle: Fix three reference count leaks (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Remove sysfs_switch and switch attributes (David Arcari) [1878232] - [cpuidle] cpuidle: Make cpuidle governor switchable to be the default behaviour (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Accept governor name with 15 characters (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Fix the overlap for showing available governors (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Minor coding style corrections (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Remove the unused define_one_r(o/w) macros (David Arcari) [1878232] - [cpuidle] cpuidle-haltpoll: Fix small typo (David Arcari) [1878232] - [idle] intel_idle: Customize IceLake server support (David Arcari) [1881620 1857129] - [idle] intel_idle: Eliminate redundant static variable (David Arcari) [1857129] - [idle] intel_idle: Update copyright notice, known limitations and version (David Arcari) [1857129] - [idle] intel_idle: Define CPUIDLE_FLAG_TLB_FLUSHED as BIT(16) (David Arcari) [1857129] - [idle] intel_idle: Clean up kerneldoc comments for multiple functions (David Arcari) [1857129] - [idle] intel_idle: Reorder declarations of static variables (David Arcari) [1857129] - [idle] intel_idle: Annotate init time data structures (David Arcari) [1857129] - [idle] intel_idle: Add __initdata annotations to init time variables (David Arcari) [1857129] - [idle] intel_idle: Relocate definitions of cpuidle callbacks (David Arcari) [1857129] - [idle] intel_idle: Clean up definitions of cpuidle callbacks (David Arcari) [1857129] - [idle] intel_idle: Simplify LAPIC timer reliability checks (David Arcari) [1857129] - [idle] intel_idle: Introduce 'states_off' module parameter (David Arcari) [1857129] - [idle] intel_idle: Clean up irtl_2_usec() (David Arcari) [1857129] - [idle] intel_idle: Move 3 functions closer to their callers (David Arcari) [1857129] - [idle] intel_idle: Annotate initialization code and data structures (David Arcari) [1857129] - [idle] intel_idle: Move and clean up intel_idle_cpuidle_devices_uninit() (David Arcari) [1857129] - [idle] intel_idle: Rearrange intel_idle_cpuidle_driver_init() (David Arcari) [1857129] - [idle] intel_idle: Clean up NULL pointer check in intel_idle_init() (David Arcari) [1857129] - [idle] intel_idle: Fold intel_idle_probe() into intel_idle_init() (David Arcari) [1857129] - [idle] intel_idle: Eliminate __setup_broadcast_timer() (David Arcari) [1857129] - [idle] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (David Arcari) [1857129]- [hv] hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Add parsing of VMbus interrupt in ACPI DSDT (Mohammed Gamal) [1886096] - [hv] driver: hv: util: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Move virt_to_hvpfn() to hyperv header (Mohammed Gamal) [1886096] - [hv] hv: Use HV_HYP_PAGE in hv_synic_enable_regs() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Introduce types of GPADL (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Move __vmbus_open() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Always use HV_HYP_PAGE_SIZE for gpadl (Mohammed Gamal) [1886096] - [hv] hv: remove cast from hyperv_die_event (Mohammed Gamal) [1886096] - [hv] hv: Change flag to write log level in panic msg to false (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Remove the lock field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [scsi] storvsc: Introduce the per-storvsc_device spinlock (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list updaters) (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Use channel_mutex in channel_vp_mapping_show() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list readers) (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Replace cpumask_test_cpu(, cpu_online_mask) with cpu_online() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove the numa_node field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Remove the target_vp field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Resolve more races involving init_vp_index() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Resolve race between init_vp_index() and CPU hotplug (Mohammed Gamal) [1886096] - [hv] driver: hv: vmbus: drop a no long applicable comment (Mohammed Gamal) [1886096] - [hv] hyper-v: Replace open-coded variant of *phN specifier (Mohammed Gamal) [1886096] - [hv] hyper-v: Supply GUID pointer to printf() like functions (Mohammed Gamal) [1886096] - [hv] hyper-v: Use UUID API for exporting the GUID (part 2) (Mohammed Gamal) [1886096] - [hv] hv: remove redundant assignment to pointer primary_channel (Mohammed Gamal) [1886096] - [scsi] storvsc: Re-init stor_chns when a channel interrupt is re-assigned (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Introduce the CHANNELMSG_MODIFYCHANNEL message type (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Synchronize init_vp_index() vs. CPU hotplug (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove the unused HV_LOCALIZED channel affinity logic (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Use a spin lock for synchronizing channel scheduling vs. channel removal (Mohammed Gamal) [1886096] - [hv] hv_utils: Always execute the fcopy and vss callbacks in a tasklet (Mohammed Gamal) [1886096] - [netdrv] hv_netvsc: Disable NAPI before closing the VMBus channel (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Replace the per-CPU channel lists with a global array of channels (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Don't bind the offer&rescind works to a specific CPU (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Always handle the VMBus messages on CPU0 (Mohammed Gamal) [1886096] - [hv] hv: check VMBus messages lengths (Mohammed Gamal) [1886096] - [hv] hv: make sure that 'struct vmbus_channel_message_header' compiles correctly (Mohammed Gamal) [1886096] - [hv] hv: avoid passing opaque pointer to vmbus_onmessage() (Mohammed Gamal) [1886096] - [hv] hv: allocate the exact needed memory for messages (Mohammed Gamal) [1886096] - [hv] hv: copy from message page only what's needed (Mohammed Gamal) [1886096] - [x86] hyperv: Clarify comment on x2apic mode (Mohammed Gamal) [1886099] - [x86] hyperv: report value of misc_features (Mohammed Gamal) [1886099] - [x86] hyperv: Make hv_setup_sched_clock inline (Mohammed Gamal) [1886099] - [net] ipv6: reply ICMP error if the first fragment don't include all headers (Hangbin Liu) [1874734] - [net] icmpv6: Add ICMPv6 Parameter Problem, code 3 definition (Hangbin Liu) [1874734] - [powerpc] powerpc/process: Add missing include of stacktrace.h (Desnes Augusto Nunes do Rosario) [1883975] - [powerpc] powerpc/test_emulate_sstep: Fix build error (Desnes Augusto Nunes do Rosario) [1883975] - [nvdimm] powerpc/pmem: Initialize pmem device on newer hardware (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Avoid the barrier in flush routines (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Update ppc64 to use the new barrier instruction (Desnes Augusto Nunes do Rosario) [1878632] - [md] libnvdimm/nvdimm/flush: Allow architecture to override the flush barrier (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Add flush routines using new pmem store and sync instruction (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Add new instructions for persistent storage and sync (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Restrict papr_scm to P8 and above (Desnes Augusto Nunes do Rosario) [1878632] - [i2c] i2c: ismt: Add support for Intel Emmitsburg PCH (David Arcari) [1886162] - [include] timer: add fsleep for flexible sleeping (Josef Oskera) [1892674] - [scsi] qla2xxx: Update driver version to 10.02.00.103-k (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Return EBUSY on fcport deletion (Nilesh Javali) [1887427] - [trace] scsi: qla2xxx: Suppress two recently introduced compiler warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix return of uninitialized value in rval (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Convert to DEFINE_SHOW_ATTRIBUTE (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Initialize variable in qla8044_poll_reg() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Do not consume srb greedily (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use constant when it is known (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in qla_dbg.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in qla_os.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in tcm_qla2xxx.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix point-to-point (N2N) device discovery issue (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix crash on session cleanup with unload (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix reset of MPI firmware (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix MPI reset needed message (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix buffer-buffer credit extraction error (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Correct the check for sscanf() return value (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add SLER and PI control support (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add IOCB resource tracking (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add rport fields in debugfs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make tgt_port_database available in initiator mode (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix I/O errors during LIP reset tests (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Performance tweak (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix memory size truncation (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Reduce duplicate code in reporting speed (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Honor status qualifier in FCP_RSP per spec (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Allow dev_loss_tmo setting for FC-NVMe devices (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Setup debugfs entries for remote ports (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix I/O failures during remote port toggle testing (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove unneeded variable 'rval' (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Handle incorrect entry_type entries (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Log calling function name in qla2x00_get_sp_from_handle() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify return value logic in qla2x00_get_sp_from_handle() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Warn if done() or free() are called on an already freed srb (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the return value (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove redundant variable initialization (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove pci-dma-compat wrapper API (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove superfluous memset() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix regression on sparc64 (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use MBX_TOV_SECONDS for mailbox command timeout values (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Address a set of sparse warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: SAN congestion management implementation (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change in PUREX to handle FPIN ELS requests (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Introduce a function for computing the debug message prefix (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla2x00_restart_isp() easier to read (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix a Coverity complaint in qla2100_fw_dump() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make __qla2x00_alloc_iocbs() initialize 32 bits of request_t.handle (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove a superfluous cast (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Initialize 'n' before using it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla82xx_flash_wait_write_finish() easier to read (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove the __packed annotation from struct fcp_hdr and fcp_hdr_le (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Check the size of struct fcp_hdr at compile time (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix a condition in qla2x00_find_all_fabric_devs() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Set NVMe status code for failed NVMe FCP request (Nilesh Javali) [1887427] - [scsi] scsi: Fix trivial spelling (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove return value from qla_nvme_ls() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove an unused function (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix endianness annotations in source files (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix endianness annotations in header files (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use make_handle() instead of open-coding it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Cast explicitly to uint16_t / uint32_t (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change {RD, WRT}_REG_*() function names from upper case into lower case (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the code that reads from mailbox registers (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use register names instead of register offsets (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change two hardcoded constants into offsetof() / sizeof() expressions (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Increase the size of struct qla_fcp_prio_cfg to FCP_PRIO_CFG_SIZE (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make a gap in struct qla2xxx_offld_chain explicit (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add more BUILD_BUG_ON() statements (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Sort BUILD_BUG_ON() statements alphabetically (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify the functions for dumping firmware (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix spelling of a variable name (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Do not log message when reading port speed via sysfs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qlafx00_process_aen() return void (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use true, false for ha->fw_dumped (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use true, false for need_mpi_reset (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla_set_ini_mode() return void (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix issue with adapter's stopping state (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix failure message in qlt_disable_vha() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix warning after FC target reset (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: check UNLOADING before posting async work (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: set UNLOADING before waiting for session deletion (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use ARRAY_SIZE() instead of open-coding it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Split qla2x00_configure_local_loop() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix regression warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove non functional code (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: add ring buffer for tracing debug logs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix RDP respond data format (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: fix FW resource count values (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Improved secure flash support messages (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use FC generic update firmware options routine for ISP27xx (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Avoid setting firmware options twice in 24xx_update_fw_options (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix sparse warnings triggered by the PCI state checking code (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Suppress endianness complaints in qla2x00_configure_local_loop() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify the code for aborting SCSI commands (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix sparse warning reported by kbuild bot (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Print portname for logging in qla24xx_logio_entry() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix qla2x00_echo_test() based on ISP type (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Correction to selection of loopback/echo test (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix RDP response size (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Handle cases for limiting RDP response payload length (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add deferred queue for processing ABTS and RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Cleanup ELS/PUREX iocb fields (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Show correct port speed capabilities for RDP command (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Display message for FCE enabled (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add vendor extended FDMI commands (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add ql2xrdpenable module parameter for RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add vendor extended RDP additions and amendments (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add changes in preparation for vendor extended FDMI/RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix gnl.l memory leak on adapter init failure (Nilesh Javali) [1887427]- [kernel] PM: hibernate: Batch hibernate and resume IO requests (Lenny Szubowicz) [1868096] - [net] tunnels: Fix off-by-one in lower MTU bounds for ICMP/ICMPv6 replies (Antoine Tenart) [1895765] - [block] block: mark flush request as IDLE when it is really finished (Ming Lei) [1895913] - [net] vsock: forward all packets to the host when no H2G is registered (Vitaly Kuznetsov) [1893826] - [maintainers] maintainers: Add entry for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [documentation] nitro_enclaves: Add overview documentation (Vitaly Kuznetsov) [1893826] - [samples] nitro_enclaves: Add sample for ioctl interface usage (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add Makefile for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add Kconfig for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for terminating an enclave (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for starting an enclave (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for setting an enclave memory region (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for getting the enclave image load info (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for setting an enclave vCPU (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for creating an enclave VM (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Init misc device providing the ioctl interface (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Handle out-of-band PCI device events (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Handle PCI device command requests (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Init PCI device driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Define enclave info for internal bookkeeping (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Define the PCI device interface (Vitaly Kuznetsov) [1893826] - [uapi] nitro_enclaves: Add ioctl interface definition (Vitaly Kuznetsov) [1893826] - [kernel] cpu/hotplug: Add new {add, remove}_cpu() functions (Vitaly Kuznetsov) [1893826] - [x86] x86/delay: Introduce TPAUSE delay (Prarit Bhargava) [1838636] - [x86] x86/delay: Refactor delay_mwaitx() for TPAUSE support (Prarit Bhargava) [1838636] - [x86] x86/delay: Preparatory code cleanup (Prarit Bhargava) [1838636] - [net] netfilter: ipset: Update byte and packet counters regardless of whether they match (Phil Sutter) [1806882] - [net] ethtool: add and use message type for tunnel info reply (Ivan Vecera) [1867211] - [infiniband] RDMA/hns: Mark hns_roce driver as unsupported (Kamal Heib) [1878211] - [net] tipc: fix memory leak caused by tipc_buf_append() (Xin Long) [1865774] - [net] tipc: fix the skb_unshare() in tipc_buf_append() (Xin Long) [1865774] - [net] tipc: use skb_unshare() instead in tipc_buf_append() (Xin Long) [1865774] - [netdrv] net: team: fix memory leak in __team_options_register (Hangbin Liu) [1892142] - [netdrv] team: set dev->needed_headroom in team_setup_by_port() (Hangbin Liu) [1892142] - [netdrv] team: use netif_is_team_port() (Hangbin Liu) [1892142] - [char] random: decouple random and urandom extrng fops (Vladis Dronov) [1890711] - [platform] platform/x86: intel_pmc_core: Add Intel RocketLake (RKL) support (Steve Best) [1782713] - [netdrv] fm10k: convert to new udp_tunnel_nic infra (Vladis Dronov) [1884254] - [netdrv] ethernet/intel: Convert fallthrough code comments (Vladis Dronov) [1884254] - [netdrv] docs: networking: reorganize driver documentation again (Vladis Dronov) [1884254] - [netdrv] net/intel: remove driver versions from Intel drivers (Vladis Dronov) [1884254] - [infiniband] RDMA/core: Fix ordering of CQ pool destruction (Kamal Heib) [1878969 1857603] - [infiniband] IB/isert: Fix unaligned immediate-data handling (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix reported speed and width (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Fix panic when calling kmem_cache_create() (Kamal Heib) [1867296 1857603] - [infiniband] RDMA/rxe: Fix memleak in rxe_mem_init_user (Kamal Heib) [1857603] - [net] xprtrdma: Release in-flight MRs on disconnect (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars (Kamal Heib) [1870430 1857603] - [infiniband] RDMA/hfi1: Correct an interlock issue for TID RDMA WRITE request (Kamal Heib) [1870281 1857603] - [infiniband] RDMA/core: Fix spelling mistake "Could't" -> "Couldn't" (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove pkey table (Kamal Heib) [1857603] - [infiniband] RDMA/umem: Add a schedule point in ib_umem_get() (Kamal Heib) [1857603] - [infiniband] RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP (Kamal Heib) [1857603] - [rdma] RDMA/include: Replace license text with SPDX tags (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Execute rdma_cm destruction from a handler properly (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Remove unneeded locking for req paths (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Using the standard locking pattern when delivering the removal event (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Simplify DEVICE_REMOVAL for internal_id (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Add EFA 0xefa1 PCI ID (Kamal Heib) [1857603] - [infiniband] RDMA/efa: User/kernel compatibility handshake mechanism (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Expose minimum SQ size (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Expose maximum TX doorbell batch (Kamal Heib) [1857603] - [infiniband] IB/srpt: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] IB/isert: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] IB/iser: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix return error value in _ib_modify_qp() to negative (Kamal Heib) [1857603] - [infiniband] RDMA/uverbs: Silence shiftTooManyBitsSigned warning (Kamal Heib) [1857603] - [infiniband] RDMA/core: Update write interface to use automatic object lifetime (Kamal Heib) [1857603] - [infiniband] RDMA/core: Align abort/commit object scheme for write() and ioctl() paths (Kamal Heib) [1857603] - [uapi] RDMA: rdma_user_ioctl.h: fix a duplicated word + clarify (Kamal Heib) [1857603] - [infiniband] RDMA/qedr: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/i40iw: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/cxgb4: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/siw: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/core: Remove query_pkey from the mandatory ops (Kamal Heib) [1857603] - [infiniband] RDMA/core: Allocate the pkey cache only if the pkey_tbl_len is set (Kamal Heib) [1857603] - [infiniband] RDMA/core: Expose pkeys sysfs files only if pkey_tbl_len is set (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue (Kamal Heib) [1857603] - [infiniband] IB/hfi1: Remove unnecessary fall-through markings (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove rxe_link_layer() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Return void from rxe_mem_init_dma() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Return void from rxe_init_port_param() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Drop pointless checks in rxe_init_ports (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Allow manually bind QPs with different pids to same counter (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Only bind user QPs in auto mode (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Add PID category support in auto mode (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Skip dgid check in loopback mode (Kamal Heib) [1857603] - [infiniband] RDMA/core: Create and destroy counters in the ib_core (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Expose UAPI to query MR (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Expose UAPI to query ucontext (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Set IOVA on IB MR in uverbs layer (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Enable CQ ioctl commands by default (Kamal Heib) [1857603] - [infiniband] RDMA/core: Clean ib_alloc_xrcd() and reuse it to allocate XRC domain (Kamal Heib) [1857603] - [infiniband] RDMA: Remove the udata parameter from alloc_mr callback (Kamal Heib) [1857603] - [infiniband] RDMA/core: Remove ib_alloc_mr_user function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Check for error instead of success in alloc MR function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Clean up tracepoint headers (Kamal Heib) [1857603] - [infiniband] RDMA/ipoib: Handle user-supplied address when creating child (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued() (Kamal Heib) [1857603] - [infiniband] IB/hfi1: Convert PCIBIOS_* errors to generic -E* errors (Kamal Heib) [1857603] - [infiniband] RDMA/core: Delete not-used create RWQ table function (Kamal Heib) [1857603] - [infiniband] IB/mad: Delete RMPP_STATE_CANCELING state (Kamal Heib) [1857603] - [infiniband] IB/mad: Change atomics to refcount API (Kamal Heib) [1857603] - [infiniband] IB/mad: Issue complete whenever decrements agent refcount (Kamal Heib) [1857603] - [infiniband] RDMA: Add support to dump resource tracker in RAW format (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated CM_ID resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated QP resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add a dedicated CQ resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated MR resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Don't call fill_res_entry for PD (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove unused rxe_mem_map_pages (Kamal Heib) [1857603] - [infiniband] RDMA/hfi1: Remove hfi1_create_qp declaration (Kamal Heib) [1857603] - [infiniband] RDMA/ipoib: Return void from ipoib_mcast_stop_thread() (Kamal Heib) [1857603] - [infiniband] RDMA: Correct trivial kernel-doc inconsistencies (Kamal Heib) [1857603] - [infiniband] IB/srpt: Remove WARN_ON from srpt_cm_req_recv (Kamal Heib) [1857603] - [tools] tools/power turbostat: Support additional CPU model numbers (Steve Best) [1782718] - [net] udp_tunnel: add the ability to hard-code IANA VXLAN (Ivan Vecera) [1879204] - [tools] selftests: net: add a test for UDP tunnel info infra (Ivan Vecera) [1867211] - [netdrv] netdevsim: add UDP tunnel port offload support (Ivan Vecera) [1867211] - [net] ethtool: add tunnel info interface (Ivan Vecera) [1867211] - [net] ethtool: Make helpers public (Ivan Vecera) [1867211] - [net] udp_tunnel: add central NIC RX port offload infrastructure (Ivan Vecera) [1867211] - [net] udp_tunnel: re-number the offload tunnel types (Ivan Vecera) [1867211] - [fs] debugfs: make sure we can remove u32_array files cleanly (Ivan Vecera) [1867211] - [fs] debugfs: make debugfs_create_u32_array() return void (Ivan Vecera) [1867211] - [fs] debugfs: update documented return values of debugfs helpers (Ivan Vecera) [1867211]- [net] openvswitch: fix to make sure flow_lookup() is not preempted (Eelco Chaudron) [1888237] - [netdrv] powerpc/vnic: Extend "failover pending" window (Steve Best) [1897280] - [net] ipv6: Set SIT tunnel hard_header_len to zero (Davide Caratti) [1897244] - [net] ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags (Davide Caratti) [1897244] - [net] gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY (Davide Caratti) [1897244] - [netdrv] vxlan: fix memleak of fdb (Davide Caratti) [1897244] - [net] vxlan: Ensure FDB dump is performed under RCU (Davide Caratti) [1897244] - [net] gre: refetch erspan header from skb->data after pskb_may_pull() (Davide Caratti) [1897244] - [net] erspan: fix the tun_info options_len check for erspan (Davide Caratti) [1897244] - [net] ip_gre: fix possible use-after-free in erspan_rcv (Davide Caratti) [1897244] - [net] erspan: fix error handling for erspan tunnel (Davide Caratti) [1897244] - [net] erspan: return PACKET_REJECT when the appropriate tunnel is not found (Davide Caratti) [1897244] - [netdrv] net: atlantic: fix build when object tree is separate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Use readx_poll_timeout() for large timeout (Igor Russkikh) [1857861] - [netdrv] net: ethernet: aquantia: Fix wrong return value (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix PTP on AQC10X (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add hwmon getter for MAC temperature (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A0 ntuple filters (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use intermediate variable to improve readability a bit (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use U32_MAX in aq_hw_utils.c (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add support for 64-bit reads/writes (Igor Russkikh) [1857861] - [netdrv] net: atlantic: enable ipv6 support for TCP LSO and UDP GSO (Igor Russkikh) [1857861] - [netdrv] net: atlantic: PTP statistics (Igor Russkikh) [1857861] - [netdrv] net: atlantic: additional per-queue stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use u64_stats_update_* to protect access to 64-bit stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: split rx and tx per-queue stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make _get_sw_stats return count as return value (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use simple assignment in _get_stats and _get_sw_stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move FRAC_PER_NS to aq_hw.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add support for FW 4.x (Igor Russkikh) [1857861] - [netdrv] net: atlantic: align return value of ver_match function with function name (Igor Russkikh) [1857861] - [netdrv] net: atlantic: disable PTP on AQC111, AQC112 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix ip dst and ipv6 address filters (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix aq_ndev_start_xmit()'s return type (Igor Russkikh) [1857861] - [netdrv] net: atlantic: put ptp code under IS_REACHABLE check (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add alignment checks in hw_atl2_utils_fw.c (Igor Russkikh) [1857861] - [netdrv] net: atlantic: missing space in a comment in aq_nic.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix typo in aq_ring_tx_clean (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make aq_pci_func_init static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Replace ENOTSUPP usage to EOPNOTSUPP (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix variable type in aq_ethtool_get_pauseparam (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: phy loopback support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: report link partner capabilities (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: flow control support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: EEE support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove baseX usage (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: half duplex support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: proper rss_ctrl1 (54c0) initialization (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: min_rate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: change the order of arguments for TC weight/credit setters (Igor Russkikh) [1857861] - [netdrv] net: atlantic: always use random TC-queue mapping for TX on A2 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: automatically downgrade the number of queues if necessary (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: max_rate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make TCVEC2RING accept nic_cfg (Igor Russkikh) [1857861] - [netdrv] net: atlantic: per-TC queue statistics (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: changes for multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move PTP TC initialization to a separate function (Igor Russkikh) [1857861] - [netdrv] net: atlantic: changes for multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: unify MAC generation (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove check for boot code survivability before reset request (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove hw_atl_b0_hw_rss_set call from A2 code (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove TPO2 check from A0 code (Igor Russkikh) [1857861] - [netdrv] net: atlantic: rename AQ_NIC_RATE_2GS to AQ_NIC_RATE_2G5 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use __packed instead of the full expansion (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 ingress / egress hw configuration (Igor Russkikh) [1857861] - [netdrv] net: atlantic: basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: common functions needed for basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: HW bindings for basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add A2 RPF hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: HW bindings for A2 RFP (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 hw_ops skeleton (Igor Russkikh) [1857861] - [netdrv] net: atlantic: minimal A2 fw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: minimal A2 HW bindings required for fw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 driver-firmware interface (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move IS_CHIP_FEATURE to aq_hw.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make hw_get_regs optional (Igor Russkikh) [1857861] - [netdrv] net: atlantic: simplify hw_get_fw_version() usage (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add hw_soft_reset, hw_prepare to hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add defines for 10M and EEE 100M link mode (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add A2 device IDs (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update company name in the driver description (Igor Russkikh) [1857861] - [netdrv] aquantia: Fix the media type of AQC100 ethernet controller in the driver (Igor Russkikh) [1857861] - [netdrv] net: atlantic: MACSec offload statistics implementation (Igor Russkikh) [1857861] - [netdrv] net: aquantia: reject all unsupported coalescing params (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Replace zero-length array with flexible-array member (Igor Russkikh) [1857861] - [netdrv] net/aquantia: Delete module version (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix out of range usage of active_vlans array (Igor Russkikh) [1857861] - [netdrv] net: atlantic: possible fault in transition to hibernation (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix potential error handling (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix use after free kasan warn (Igor Russkikh) [1857861] - [netdrv] net: atlantic: better loopback mode handling (Igor Russkikh) [1857861] - [netdrv] net: atlantic: ptp gpio adjustments (Igor Russkikh) [1857861] - [netdrv] net: atlantic: check rpc result and wait for rpc address (Igor Russkikh) [1857861] - [netdrv] net: atlantic: checksum compat issue (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove duplicate entries (Igor Russkikh) [1857861] - [netdrv] net: atlantic: loopback configuration in improper place (Igor Russkikh) [1857861] - [netdrv] net: atlantic: broken link status on old fw (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Signedness bug in aq_vec_isr_legacy() (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make function 'aq_ethtool_get_priv_flags', 'aq_ethtool_set_priv_flags' static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make symbol 'aq_pm_ops' static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: change email domains to Marvell (Igor Russkikh) [1857861] - [netdrv] net: atlantic: implement UDP GSO offload (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update flow control logic (Igor Russkikh) [1857861] - [netdrv] net: atlantic: stylistic renames (Igor Russkikh) [1857861] - [netdrv] net: atlantic: code style cleanup (Igor Russkikh) [1857861] - [netdrv] net: atlantic: loopback tests via private flags (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add fw configuration memory area (Igor Russkikh) [1857861] - [netdrv] net: atlantic: adding ethtool physical identification (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add msglevel configuration (Igor Russkikh) [1857861] - [netdrv] net: atlantic: refactoring pm logic (Igor Russkikh) [1857861] - [netdrv] net: atlantic: implement wake_phy feature (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update firmware interface (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix return value check in aq_ptp_init() (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix error handling in aq_ptp_poll (Igor Russkikh) [1857861] - [netdrv] net: aquantia: remove unused including (Igor Russkikh) [1857861] - [netdrv] net: aquantia: make two symbols be static (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix unintention integer overflow on left shift (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix spelling mistake: tx_queus -> tx_queues (Igor Russkikh) [1857861] - [netdrv] net: aquantia: disable ptp object build if no config (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix warnings on endianness (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix var initialization warning (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for PIN funcs (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for Phy access (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement get_ts_info ethtool (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for ptp ioctls (Igor Russkikh) [1857861] - [netdrv] net: aquantia: rx filters for ptp (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement data PTP datapath (Igor Russkikh) [1857861] - [netdrv] net: aquantia: styling fixes on ptp related functions (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add PTP rings infrastructure (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add basic ptp_clock callbacks (Igor Russkikh) [1857861] - [netdrv] net: aquantia: unify styling of bit enums (Igor Russkikh) [1857861] - [netdrv] net: aquantia: PTP skeleton declarations and callbacks (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add an error handling in aq_nic_set_multicast_list (Igor Russkikh) [1857861] - [netdrv] net: aquantia: correctly handle macvlan and multicast coexistence (Igor Russkikh) [1857861] - [netdrv] net: aquantia: do not pass lro session with invalid tcp checksum (Igor Russkikh) [1857861] - [netdrv] net: aquantia: when cleaning hw cache it should be toggled (Igor Russkikh) [1857861] - [netdrv] net: aquantia: temperature retrieval fix (Igor Russkikh) [1857861] - [netdrv] net: aquantia: Fix aq_vec_isr_legacy() return value (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix out of memory condition on rx side (Igor Russkikh) [1857861] - [netdrv] net: aquantia: linkstate irq should be oneshot (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix limit of vlan filters (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix removal of vlan 0 (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement vlan offload configuration (Igor Russkikh) [1857861] - [netdrv] net: aquantia: vlan offloads logic in datapath (Igor Russkikh) [1857861] - [netdrv] net: aquantia: adding fields and device features for vlan offload (Igor Russkikh) [1857861] - [netdrv] net: aquantia: added vlan offload related macros and functions (Igor Russkikh) [1857861] - [netdrv] net: aquantia: make all files GPL-2.0-only (Igor Russkikh) [1857861] - [netdrv] net: aquantia: replace internal driver version code with uts (Igor Russkikh) [1857861] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Igor Russkikh) [1857861] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 308 (Igor Russkikh) [1857861] - [include] net: phy: introduce phy_read_mmd_poll_timeout macro (Josef Oskera) [1892739] - [include] net: phy: introduce phy_read_poll_timeout macro (Josef Oskera) [1892739] - [netdrv] phy: add device-managed devm_mdiobus_register (Josef Oskera) [1892740] - [include] net: add helper eth_hw_addr_crc (Josef Oskera) [1892738] - [netdrv] LiquidIO: mark liquidio and liquidio_vf as deprecated in RHEL8 (Stefan Assmann) [1878178] - [net] tcp: remove SOCK_QUEUE_SHRUNK (Paolo Abeni) [1890058] - [net] tcp: fix receive window update in tcp_add_backlog() (Paolo Abeni) [1890058] - [net] tcp: md5: allow changing MD5 keys in all socket states (Paolo Abeni) [1890058] - [net] tcp: fix SO_RCVLOWAT possible hangs under high mem pressure (Paolo Abeni) [1890058] - [net] tcp: md5: do not send silly options in SYNCOOKIES (Paolo Abeni) [1890058] - [net] tcp: grow window for OOO packets only for SACK flows (Paolo Abeni) [1890058] - [net] tcp: fix error recovery in tcp_zerocopy_receive() (Paolo Abeni) [1890058] - [net] tcp: fix SO_RCVLOWAT hangs with fat skbs (Paolo Abeni) [1890058] - [net] tcp: fix rx timestamp behavior for tcp_recvmsg (Paolo Abeni) [1890058] - [fs] smb3: smbdirect support can be configured by default (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Do not schedule work to send immediate packet on every receive (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Properly process errors on ib_post_send (Leif Sahlberg) [1887940] - [fs] cifs: Allocate crypto structures on the fly for calculating signatures of incoming packets (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Update receive credits before sending and deal with credits roll back on failure before sending (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Check send queue size before posting a send (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Merge code to track pending packets (Leif Sahlberg) [1887940] - [fs] cifs: Allocate encryption header through kmalloc (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Check and extend sender credits in interrupt context (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Calculate the correct maximum packet size for segmented SMBDirect send/receive (Leif Sahlberg) [1887940] - [net] core: device_rename: Use rwsem instead of a seqcount (Patrick Talbert) [1883310]- [tools] perf tools: Add bpf image check to __map__is_kmodule (Michael Petlan) [1873270] - [tools] perf tools: Add support for PERF_RECORD_KSYMBOL_TYPE_OOL (Michael Petlan) [1873270] - [tools] perf record: Don't clear event's period if set by a term (Michael Petlan) [1873270] - [tools] perf bench: The do_run_multi_threaded() function must use IS_ERR(perf_session__new()) (Michael Petlan) [1873270] - [tools] perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set (Michael Petlan) [1873270] - [tools] perf record: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set (Michael Petlan) [1873270] - [tools] perf evsel: Don't set sample_regs_intr/sample_regs_user for dummy event (Michael Petlan) [1873270] - [tools] perf stat: Turn off summary for interval mode by default (Michael Petlan) [1873270] - [tools] perf trace: Fix off by ones in memset() after realloc() in arches using libaudit (Michael Petlan) [1873270] - [tools] perf top/report: Fix infinite loop in the TUI for grouped events (Michael Petlan) [1873270] - [tools] redhat: use local hashmap library in perf (Michael Petlan) [1873270] - [tools] libtraceevent: Fix build with binutils 2.35 (Michael Petlan) [1873270] - [tools] perf tools: Fix record failure when mixed with ARM SPE event (Michael Petlan) [1873270] - [tools] perf tests: Fix test 68 zstd compression for s390 (Michael Petlan) [1873270] - [tools] tools lib traceevent: Fix memory leak in process_dynamic_array_len (Michael Petlan) [1873270] - [tools] perf tools: Sync hashmap.h with libbpf's (Michael Petlan) [1873270] - [tools] libsubcmd: Fix OPT_CALLBACK_SET() (Michael Petlan) [1873270] - [tools] perf report TUI: Remove needless 'dummy' event from menu (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix PEBS sample for XMM registers (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix displaying PEBS-via-PT with registers (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix recording PEBS-via-PT with registers (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add proper KBUFFER_TYPE_TIME_STAMP handling (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add API to read time information from kbuffer (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix time chart call tree (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix zero id in call tree 'Find' result (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix zero id in call graph 'Find' result (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix unexpanded 'Find' result (Michael Petlan) [1873270] - [tools] perf record: Fix duplicated sideband events with Intel PT system wide tracing (Michael Petlan) [1873270] - [tools] perf scripts python: export-to-postgresql.py: Fix struct.pack() int argument (Michael Petlan) [1873270] - [tools] perf build: Fix error message when asking for -fsanitize=address without required libraries (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add handler for __builtin_expect() (Michael Petlan) [1873270] - [tools] tools lib traceevent: Handle __attribute__((user)) in field names (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add append() function helper for appending strings (Michael Petlan) [1873270] - [tools] perf script: Initialize zstd_data (Michael Petlan) [1873270] - [tools] perf pmu: Remove unused declaration (Michael Petlan) [1873270] - [tools] perf parse-events: Fix an old style declaration (Michael Petlan) [1873270] - [tools] perf parse-events: Fix an incompatible pointer (Michael Petlan) [1873270] - [tools] perf bpf: Fix bpf prologue generation (Michael Petlan) [1873270] - [tools] perf probe: Fix user attribute access in kprobes (Michael Petlan) [1873270] - [tools] perf stat: Fix NULL pointer dereference (Michael Petlan) [1873270] - [tools] perf report: Fix NULL pointer dereference in hists__fprintf_nr_sample_events() (Michael Petlan) [1873270] - [tools] perf tools: Remove some duplicated includes (Michael Petlan) [1873270] - [tools] perf symbols: Fix kernel maps for kcore and eBPF (Michael Petlan) [1873270] - [tools] perf stat: Ensure group is defined on top of the same cpu mask (Michael Petlan) [1873270] - [tools] perf libdw: Fix off-by 1 relative directory includes (Michael Petlan) [1873270] - [tools] perf arm-spe: Support synthetic events (Michael Petlan) [1873270] - [tools] perf auxtrace: Add four itrace options (Michael Petlan) [1873270] - [tools] perf tools: Move arm-spe-pkt-decoder.h/c to the new dir (Michael Petlan) [1873270] - [tools] perf test: Initialize memory in dwarf-unwind (Michael Petlan) [1873270] - [tools] perf tests: Don't tail call optimize in unwind test (Michael Petlan) [1873270] - [tools] tools compiler.h: Add attribute to disable tail calls (Michael Petlan) [1873270] - [tools] perf build: Add a LIBPFM4=1 build test entry (Michael Petlan) [1873270] - [tools] perf tools: Add optional support for libpfm4 (Michael Petlan) [1873270] - [tools] perf tools: Correct license on jsmn JSON parser (Michael Petlan) [1873270] - [tools] perf jit: Fix inaccurate DWARF line table (Michael Petlan) [1873270] - [tools] perf jvmti: Remove redundant jitdump line table entries (Michael Petlan) [1873270] - [tools] perf build: Add NO_SDT=1 to the default set of build tests (Michael Petlan) [1873270] - [tools] perf build: Add NO_LIBCRYPTO=1 to the default set of build tests (Michael Petlan) [1873270] - [tools] perf build: Add NO_SYSCALL_TABLE=1 to the build tests (Michael Petlan) [1873270] - [tools] perf build: Remove libaudit from the default feature checks (Michael Petlan) [1873270] - [tools] perf trace: Grow the syscall table as needed when using libaudit (Michael Petlan) [1873270] - [tools] perf trace: Use zalloc() to make sure all fields are zeroed in the syscalltbl constructor (Michael Petlan) [1873270] - [tools] perf trace: Remove union from syscalltbl, all the fields are needed (Michael Petlan) [1873270] - [tools] perf build: Allow explicitely disabling the NO_SYSCALL_TABLE variable (Michael Petlan) [1873270] - [tools] perf build: Group the NO_SYSCALL_TABLE logic (Michael Petlan) [1873270] - [tools] perf intel-pt: Refine kernel decoding only warning message (Michael Petlan) [1873270] - [tools] perf record: Respect --no-switch-events (Michael Petlan) [1873270] - [tools] perf script: Fix --call-trace for Intel PT (Michael Petlan) [1873270] - [tools] perf evlist: Disable 'immediate' events last (Michael Petlan) [1873270] - [tools] perf kcore_copy: Fix module map when there are no modules loaded (Michael Petlan) [1873270] - [tools] perf jvmti: Fix demangling Java symbols (Michael Petlan) [1873270] - [tools] perf tests: Add test for the java demangler (Michael Petlan) [1873270] - [tools] perf jvmti: Do not report error when missing debug information (Michael Petlan) [1873270] - [tools] perf jvmti: Fix jitdump for methods without debug info (Michael Petlan) [1873270] - [tools] perf symbols: Fix debuginfo search for Ubuntu (Michael Petlan) [1873270] - [tools] perf parse: Add 'struct parse_events_state' pointer to scanner (Michael Petlan) [1873270] - [tools] perf stat: Do not pass avg to generic_metric (Michael Petlan) [1873270] - [tools] perf tests: Consider subtests when searching for user specified tests (Michael Petlan) [1873270] - [tools] perf list: Add metrics to command line usage (Michael Petlan) [1873270] - [tools] perf script: Don't force less for non tty output with --xed (Michael Petlan) [1873270] - [tools] perf metricgroup: Remove unnecessary ', ' from events (Michael Petlan) [1873270] - [tools] perf metricgroup: Add options to not group or merge (Michael Petlan) [1873270] - [tools] perf metricgroup: Remove duped metric group events (Michael Petlan) [1873270] - [tools] perf metricgroup: Order event groups by size (Michael Petlan) [1873270] - [tools] perf metricgroup: Delay events string creation (Michael Petlan) [1873270] - [tools] perf metricgroup: Use early return in add_metric (Michael Petlan) [1873270] - [tools] perf metricgroup: Always place duration_time last (Michael Petlan) [1873270] - [tools] perf metricgroup: Free metric_events on error (Michael Petlan) [1873270] - [tools] perf util: Fix potential SEGFAULT in put_tracepoints_path error path (Michael Petlan) [1873270] - [tools] perf util: Fix memory leak of prefix_if_not_in (Michael Petlan) [1873270] - [tools] perf ftrace: Detect workload failure (Michael Petlan) [1873270] - [tools] perf ftrace: Trace system wide if no target is given (Michael Petlan) [1873270] - [tools] perf branch: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [tools] perf config: Add stat.big-num support (Michael Petlan) [1873270] - [tools] perf bpf-loader: Add missing '*' for key_scan_pos (Michael Petlan) [1873270] - [tools] perf stat: Report summary for interval mode (Michael Petlan) [1873270] - [tools] perf stat: Save aggr value to first member of prev_raw_counts (Michael Petlan) [1873270] - [tools] perf stat: Copy counts from prev_raw_counts to evsel->counts (Michael Petlan) [1873270] - [tools] perf counts: Reset prev_raw_counts counts (Michael Petlan) [1873270] - [tools] perf stat: Fix wrong per-thread runtime stat for interval mode (Michael Petlan) [1873270] - [tools] perf expr: Allow numbers to be followed by a dot (Michael Petlan) [1873270] - [tools] perf metricgroup: Make 'evlist_used' variable a bitmap instead of array of bools (Michael Petlan) [1873270] - [tools] perf stat: Fail on extra comma while parsing events (Michael Petlan) [1873270] - [tools] perf script: Better align register values in dump (Michael Petlan) [1873270] - [tools] perf stat: POWER9 metrics: expand "ICT" acronym (Michael Petlan) [1873270] - [tools] perf tools: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [tools] perf intel-pt: Use allocated branch stack for PEBS sample (Michael Petlan) [1873270] - [tools] perf docs: Introduce security.txt file to document related issues (Michael Petlan) [1873270] - [tools] perf tool: Make perf tool aware of SELinux access control (Michael Petlan) [1873270] - [tools] perf docs: Extend CAP_SYS_ADMIN with CAP_PERFMON where needed (Michael Petlan) [1873270] - [tools] perf expr: Migrate expr ids table to a hashmap (Michael Petlan) [1873270] - [tools] perf tools: Grab a copy of libbpf's hashmap (Michael Petlan) [1873270] - [tools] perf stat: Fix duration_time value for higher intervals (Michael Petlan) [1873270] - [tools] perf trace: Fix compilation error for make NO_LIBBPF=1 DEBUG=1 (Michael Petlan) [1873270] - [tools] perf beauty: Allow the CC used in the arch errno names script to acccept CFLAGS (Michael Petlan) [1873270] - [tools] perf trace: Fix the selection for architectures to generate the errno name tables (Michael Petlan) [1873270] - [tools] perf test: Improve pmu event metric testing (Michael Petlan) [1873270] - [tools] perf test: Provide a subtest callback to ask for the reason for skipping a subtest (Michael Petlan) [1873270] - [tools] perf parse-events: Make add PMU verbose output clearer (Michael Petlan) [1873270] - [tools] perf expr: Fix memory leaks in metric bison (Michael Petlan) [1873270] - [tools] perf expr: Test parsing of floating point numbers (Michael Petlan) [1873270] - [tools] perf record: Use an eventfd to wakeup when done (Michael Petlan) [1873270] - [tools] tools feature: Rename HAVE_EVENTFD to HAVE_EVENTFD_SUPPORT (Michael Petlan) [1873270] - [tools] perf evsel: Initialize evsel->per_pkg_mask to NULL in evsel__init() (Michael Petlan) [1873270] - [tools] perf evsel: Fix 2 memory leaks (Michael Petlan) [1873270] - [tools] perf parse-events: Fix incorrect conversion of 'if () free()' to 'zfree()' (Michael Petlan) [1873270] - [tools] perf tools: Fix is_bpf_image function logic (Michael Petlan) [1873270] - [tools] perf c2c: Fix 'perf c2c record -e list' to show the default events used (Michael Petlan) [1873270] - [tools] perf record: Add dummy event during system wide synthesis (Michael Petlan) [1873270] - [tools] perf evsel: Dummy events never triggers, no need to ask for PERF_SAMPLE_BRANCH_STACK (Michael Petlan) [1873270] - [tools] perf parse-events: Use strcmp() to compare the PMU name (Michael Petlan) [1873270] - [tools] perf expr: Print a debug message for division by zero (Michael Petlan) [1873270] - [tools] perf expr: Debug lex if debugging yacc (Michael Petlan) [1873270] - [tools] perf expr: Parse numbers as doubles (Michael Petlan) [1873270] - [tools] perf expr: Increase max other (Michael Petlan) [1873270] - [tools] perf expr: Allow ',' to be an other token (Michael Petlan) [1873270] - [tools] perf metrics: Fix parse errors in skylake metrics (Michael Petlan) [1873270] - [tools] perf metrics: Fix parse errors in cascade lake metrics (Michael Petlan) [1873270] - [tools] perf expr: Allow for unlimited escaped characters in a symbol (Michael Petlan) [1873270] - [tools] perf script: Enable IP fields for callchains (Michael Petlan) [1873270] - [tools] perf callchain: Setup callchain properly in pipe mode (Michael Petlan) [1873270] - [tools] perf session: Try to read pipe data from file (Michael Petlan) [1873270] - [tools] perf tools: Do not seek in pipe fd during tracing data processing (Michael Petlan) [1873270] - [tools] perf tools: Do not display extra info when there is nothing to build (Michael Petlan) [1873270] - [tools] perf probe: Do not show the skipped events (Michael Petlan) [1873270] - [tools] perf probe: Check address correctness by map instead of _etext (Michael Petlan) [1873270] - [tools] perf probe: Fix to check blacklist address correctly (Michael Petlan) [1873270] - [tools] perf probe: Accept the instance number of kretprobe event (Michael Petlan) [1873270] - [tools] perf counts: Rename perf_evsel__*counts() to evsel__*counts() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__w_cache* to evsel__w_cache* (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__new*() to evsel__new*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__get_config_term() & friends to evsel__env() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__fprintf() to evsel__fprintf() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__resort*() to evsel__resort*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__object_config() to evsel__object_config() (Michael Petlan) [1873270] - [tools] perf cs-etm: Move definition of 'traceid_list' global variable from header file (Michael Petlan) [1873270] - [tools] libsymbols kallsyms: Move hex2u64 out of header (Michael Petlan) [1873270] - [tools] libsymbols kallsyms: Parse using io api (Michael Petlan) [1873270] - [tools] perf bench: Add kallsyms parsing (Michael Petlan) [1873270] - [tools] perf: cs-etm: Update to build with latest opencsd version (Michael Petlan) [1873270] - [tools] perf symbol: Fix kernel symbol address display (Michael Petlan) [1873270] - [tools] perf inject: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf annotate: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf trace: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf script: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf sched: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf lock: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf kmem: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf stat: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__store_ids() to evsel__store_id() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__env() to evsel__env() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__group_idx() to evsel__group_idx() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__fallback() to evsel__fallback() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__has*() to evsel__has*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__{prev, next}() to evsel__{prev, next}() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__parse_sample*() to evsel__parse_sample*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__read*() to *evsel__read() (Michael Petlan) [1873270] - [tools] perf evsel: Ditch perf_evsel__cmp(), not used for quite a while (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__is_*() to evsel__is*() (Michael Petlan) [1873270] - [tools] perf pmu: Add perf_pmu__find_by_type helper (Michael Petlan) [1873270] - [tools] tools feature: Add support for detecting libpfm4 (Michael Petlan) [1873270] - [tools] perf doc: Pass ASCIIDOC_EXTRA as an argument (Michael Petlan) [1873270] - [tools] perf mem2node: Avoid double free related to realloc (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__{str, int}val() and other tracepoint field metehods to to evsel__*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__open_per_*() to evsel__open_per_*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__*filter*() to evsel__*filter*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__*set_sample_*() to *evsel__*set_sample_*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__group_desc() to evsel__group_desc() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__*name() to *evsel__*name() (Michael Petlan) [1873270] - [tools] perf evsel: Rename __perf_evsel__sample_size() to __evsel__sample_size() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__calc_id_pos() to evsel__calc_id_pos() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__config*() to evsel__config*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__exit() to evsel__exit() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__is_aux_event() to evsel__is_aux_event() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__find_pmu() to evsel__find_pmu() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__compute_deltas() to evsel__compute_deltas() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__nr_cpus() to evsel__nr_cpus() (Michael Petlan) [1873270] - [tools] perf evsel: Rename 'struct perf_evsel__sb_cb_t' to 'struct evsel__sb_cb_t' (Michael Petlan) [1873270] - [tools] perf intel-pt: Update documentation about using /proc/kcore (Michael Petlan) [1873270] - [tools] perf intel-pt: Update documentation about itrace G and L options (Michael Petlan) [1873270] - [tools] perf intel-pt: Add support for synthesizing branch stacks for regular events (Michael Petlan) [1873270] - [tools] perf thread-stack: Add thread_stack__br_sample_late() (Michael Petlan) [1873270] - [tools] perf evsel: Add support for synthesized branch stack sample type (Michael Petlan) [1873270] - [tools] perf auxtrace: Add option to synthesize branch stack for regular events (Michael Petlan) [1873270] - [tools] perf intel-pt: Change branch stack support to use thread-stacks (Michael Petlan) [1873270] - [tools] perf intel-pt: Consolidate thread-stack use condition (Michael Petlan) [1873270] - [tools] perf thread-stack: Add branch stack support (Michael Petlan) [1873270] - [tools] perf tools: Simplify checking if SMT is active (Michael Petlan) [1873270] - [tools] perf tools: Fix reading new topology attribute "core_cpus" (Michael Petlan) [1873270] - [tools] libperf evlist: Fix a refcount leak (Michael Petlan) [1873270] - [tools] perf parse-events: Fix another memory leaks found on parse_events() (Michael Petlan) [1873270] - [tools] perf parse-events: Fix memory leaks found on parse_events (Michael Petlan) [1873270] - [tools] perf parse-events: Fix memory leaks found on parse_events (Michael Petlan) [1873270] - [tools] libperf: Add NULL pointer check for cpu_map iteration and NULL assignment for all_cpus (Michael Petlan) [1873270] - [tools] perf record: Move side band evlist setup to separate routine (Michael Petlan) [1873270] - [tools] perf record: Introduce --switch-output-event (Michael Petlan) [1873270] - [tools] libsubcmd: Introduce OPT_CALLBACK_SET() (Michael Petlan) [1873270] - [tools] perf evlist: Allow reusing the side band thread for more purposes (Michael Petlan) [1873270] - [tools] perf evlist: Move the sideband thread routines to separate object (Michael Petlan) [1873270] - [tools] perf parse-events: Add parse_events_option() variant that creates evlist (Michael Petlan) [1873270] - [tools] perf bpf: Decouple creating the evlist from adding the SB event (Michael Petlan) [1873270] - [tools] perf top: Move sb_evlist to 'struct perf_top' (Michael Petlan) [1873270] - [tools] perf record: Move sb_evlist to 'struct record' (Michael Petlan) [1873270] - [tools] perf tools: Move routines that probe for perf API features to separate file (Michael Petlan) [1873270] - [tools] perf vendor events power9: Add hv_24x7 socket/chip level metric events (Michael Petlan) [1873270] - [tools] perf tools: Enable Hz/hz prinitg for --metric-only option (Michael Petlan) [1873270] - [tools] perf tests expr: Added test for runtime param in metric expression (Michael Petlan) [1873270] - [tools] perf metricgroups: Enhance JSON/metric infrastructure to handle "?" (Michael Petlan) [1873270] - [tools] perf pmu: Fix function name in comment, its get_cpuid_str(), not get_cpustr() (Michael Petlan) [1873270] - [tools] perf report: Fix warning assignment of 0/1 to bool variable (Michael Petlan) [1873270] - [tools] perf tools: Remove unneeded semicolons (Michael Petlan) [1873270] - [tools] perf c2c: Remove unneeded semicolon (Michael Petlan) [1873270] - [tools] libtraceevent: Remove unneeded semicolon (Michael Petlan) [1873270] - [tools] perf script: Remove extraneous newline in perf_sample__fprintf_regs() (Michael Petlan) [1873270] - [tools] perf synthetic events: Remove use of sscanf from /proc reading (Michael Petlan) [1873270] - [tools] tools api: Add a lightweight buffered reading api (Michael Petlan) [1873270] - [tools] perf bench: Add a multi-threaded synthesize benchmark (Michael Petlan) [1873270] - [tools] perf record: Add num-synthesize-threads option (Michael Petlan) [1873270] - [tools] perf test session topology: Fix data path (Michael Petlan) [1873270] - [tools] perf stat: Improve runtime stat for interval mode (Michael Petlan) [1873270] - [tools] perf stat: Zero all the 'ena' and 'run' array slot stats for interval mode (Michael Petlan) [1873270] - [tools] perf evlist: Remove duplicate headers (Michael Petlan) [1873270] - [tools] perf bench: Fix div-by-zero if runtime is zero (Michael Petlan) [1873270] - [tools] perf cgroup: Avoid needless closing of unopened fd (Michael Petlan) [1873270] - [tools] perf hist: Add fast path for duplicate entries check (Michael Petlan) [1873270] - [tools] perf c2c: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf top: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf script: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf report: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf callchain: Stitch LBR call stack (Michael Petlan) [1873270] - [tools] perf callchain: Save previous cursor nodes for LBR stitching approach (Michael Petlan) [1873270] - [tools] perf thread: Save previous sample for LBR stitching approach (Michael Petlan) [1873270] - [tools] perf thread: Add a knob for LBR stitch approach (Michael Petlan) [1873270] - [tools] perf machine: Factor out lbr_callchain_add_lbr_ip() (Michael Petlan) [1873270] - [tools] perf machine: Factor out lbr_callchain_add_kernel_ip() (Michael Petlan) [1873270] - [tools] perf machine: Refine the function for LBR call stack reconstruction (Michael Petlan) [1873270] - [tools] perf machine: Remove the indent in resolve_lbr_callchain_sample (Michael Petlan) [1873270] - [tools] perf header: Support CPU PMU capabilities (Michael Petlan) [1873270] - [tools] perf parser: Add support to specify rXXX event with pmu (Michael Petlan) [1873270] - [tools] perf doc: allow ASCIIDOC_EXTRA to be an argument (Michael Petlan) [1873270] - [tools] perf pmu: Add support for PMU capabilities (Michael Petlan) [1873270] - [tools] tools lib traceevent: Take care of return value of asprintf (Michael Petlan) [1873270] - [tools] perf stat: Force error in fallback on :k events (Michael Petlan) [1873270] - [tools] perf tools: Add support for leader-sampling with AUX area events (Michael Petlan) [1873270] - [tools] perf evlist: Allow multiple read formats (Michael Petlan) [1873270] - [tools] perf evsel: Rearrange perf_evsel__config_leader_sampling() (Michael Petlan) [1873270] - [tools] perf evlist: Move leader-sampling configuration (Michael Petlan) [1873270] - [tools] perf evsel: Move and globalize perf_evsel__find_pmu() and perf_evsel__is_aux_event() (Michael Petlan) [1873270] - [tools] perf intel-pt: Add support for synthesizing callchains for regular events (Michael Petlan) [1873270] - [tools] perf evsel: Add support for synthesized sample type (Michael Petlan) [1873270] - [tools] perf evsel: Be consistent when looking which evsel PERF_SAMPLE_ bits are set (Michael Petlan) [1873270] - [tools] perf thread-stack: Add thread_stack__sample_late() (Michael Petlan) [1873270] - [tools] perf auxtrace: Add an option to synthesize callchains for regular events (Michael Petlan) [1873270] - [tools] perf auxtrace: For reporting purposes, un-group AUX area event (Michael Petlan) [1873270] - [tools] perf s390-cpumsf: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf cs-etm: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf arm-spe: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf intel-bts: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf intel-pt: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf auxtrace: Add ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf metrictroup: Split the metricgroup__add_metric function (Michael Petlan) [1873270] - [tools] perf expr: Add expr_scanner_ctx object (Michael Petlan) [1873270] - [tools] perf expr: Add expr_ prefix for parse_ctx and parse_id (Michael Petlan) [1873270] - [tools] perf synthetic-events: save 4kb from 2 stack frames (Michael Petlan) [1873270] - [tools] tools api fs: Make xxx__mountpoint() more scalable (Michael Petlan) [1873270] - [tools] perf bench: Add event synthesis benchmark (Michael Petlan) [1873270] - [tools] perf script: Simplify auxiliary event printing functions (Michael Petlan) [1873270] - [tools] perf tools: Support CAP_PERFMON capability (Michael Petlan) [1873270] - [tools] perf annotate: Add basic support for bpf_image (Michael Petlan) [1873270] - [tools] perf machine: Set ksymbol dso as loaded on arrival (Michael Petlan) [1873270] - [tools] perf tools: Synthesize bpf_trampoline/dispatcher ksymbol event (Michael Petlan) [1873270] - [tools] perf stat: Honour --timeout for forked workloads (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Add hw_len wherever missing (Michael Petlan) [1873270] - [kernel] perf: Fix task_function_call() error handling (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Fix RAPL config variable bug (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Add AMD Fam17h RAPL support (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Make perf_probe_msr() more robust and flexible (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Flip logic on default events visibility (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Refactor to share the RAPL code between Intel and AMD CPUs (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Move RAPL support to common x86 code (Michael Petlan) [1873270] - [kernel] perf/core: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [x86] perf/x86: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [x86] perf/x86/intel: Add more available bits for OFFCORE_RESPONSE of Intel Tremont (Michael Petlan) [1873270] - [x86] perf/x86/intel/pt: Drop pointless NULL assignment (Michael Petlan) [1873270] - [kernel] perf: Add cond_resched() to task_function_call() (Michael Petlan) [1873270] - [powerpc] powerpc/perf: open access for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [kernel] perf/core: open access to probes for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [kernel] perf/core: Open access to the core for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [include] perf/core: Fix !CONFIG_PERF_EVENTS build warnings and failures (Michael Petlan) [1873270] - [security] perf_event: Add support for LSM and SELinux checks (Michael Petlan) [1873270] - [powerpc] powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run (Michael Petlan) [1873270] - [powerpc] powerpc/hv-24x7: Add rtas call in hv-24x7 driver to get processor details (Michael Petlan) [1873270] - [powerpc] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show processor details (Michael Petlan) [1873270] - [documentation] Documentation/ABI: Add ABI documentation for chips and sockets (Michael Petlan) [1873270] - [powerpc] powerpc/pseries: Update hv-24x7 information after migration (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Fix ptrace code that muck around with address/len (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Fix length calculation for unaligned target (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Introduce macros for watchpoint length (Michael Petlan) [1873270] - [powerpc] powerpc/perf: fix imc allocation failure handling (Michael Petlan) [1873270] - [powerpc] powerpc/perf/24x7: use rb_entry (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix MMCRA corruption by bhrb_filter (Michael Petlan) [1873270] - [powerpc] perf/core, arch/powerpc: use PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1873270] - [powerpc] Powerpc/perf: Wire up PMI throttling (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Remove l2 bus events from HW cache event array (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Add constraints for power9 l2/l3 bus events (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix unit_sel/cache_sel checks (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Cleanup cache_sel bits comment (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix thresholding counter data for unknown type (Michael Petlan) [1873270] - [fs] writeback: Drop I_DIRTY_TIME_EXPIRE (Waiman Long) [1860031] - [fs] writeback: Fix sync livelock due to b_dirty_time processing (Waiman Long) [1860031] - [fs] writeback: Avoid skipping inode writeback (Waiman Long) [1860031] - [fs] writeback: Protect inode->i_io_list with inode->i_lock (Waiman Long) [1860031] - [fs] dcache: sort the freeing-without-RCU-delay mess for good (Waiman Long) [1860031] - [net] udp: Improve load balancing for SO_REUSEPORT. (Davide Caratti) [1894075] - [net] udp: Fix wrong clean up for IS_UDPLITE macro (Davide Caratti) [1894075] - [fs] ext4: disallow modifying DAX inode flag if inline_data has been set (Eric Sandeen) [1838344] - [include] dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Fix stack overflow when mounting fsdax pmem device (Eric Sandeen) [1838876 1854346 1838344] - [dax] dm: Call proper helper to determine dax support (Eric Sandeen) [1838876 1854346 1838344] - [md] dm/dax: Fix table reference counts (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: fix detection of dax support for non-persistent memory block devices (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: do not print error message for non-persistent memory block device (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Fix incorrect argument passed to xas_set_err() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Support that ioctl(SETXFLAGS/GETXFLAGS) can set/get inode DAX on XFS (Eric Sandeen) [1838876 1854346 1838344] - [dax] drivers/dax: Expand lock scope to cover the use of addresses (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/dax: Remove unused size parameter (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: print error message by pr_info() in __generic_fsdax_supported() (Eric Sandeen) [1838876 1854346 1838344] - [fs] ext4: avoid race conditions when remounting with options that change dax (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Update xfs_ioctl_setattr_dax_invalidate() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Combine xfs_diflags_to_linux() and xfs_diflags_to_iflags() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Create function xfs_inode_should_enable_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Make DAX mount option a tri-state (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Change XFS_MOUNT_DAX to XFS_MOUNT_DAX_ALWAYS (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Remove unnecessary initialization of i_rwsem (Eric Sandeen) [1838876 1854346 1838344] - [documentation] Documentation/dax: Update DAX enablement for ext4 (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Introduce DAX inode flag (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Remove jflag variable (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Make DAX mount option a tri-state (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Only change S_DAX on inode load (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Update ext4_should_use_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Change EXT4_MOUNT_DAX to EXT4_MOUNT_DAX_ALWAYS (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Narrow scope of DAX check in setflags (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Introduce DCACHE_DONTCACHE (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Lift XFS_IDONTCACHE to the VFS layer (Eric Sandeen) [1838876 1854346 1838344] - [documentation] Documentation/dax: Update Usage section (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/stat: Define DAX statx attribute (Eric Sandeen) [1838876 1854346 1838344] - [block] fs: Remove unneeded IS_DAX() check in io_is_direct() (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Move mandatory ->zero_page_range() check in alloc_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax, iomap: Add helper dax_iomap_zero() to zero a range (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Use new dax zero page method for zeroing a page (Eric Sandeen) [1838876 1854346 1838344] - [md] dm,dax: Add dax zero_page_range operation (Eric Sandeen) [1838876 1854346 1838344] - [s390] s390, dcssblk, dax: Add dax zero_page_range operation to dcssblk driver (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax, pmem: Add a dax operation zero_page_range (Eric Sandeen) [1838876 1854346 1838344] - [nvdimm] pmem: Add functions for reading/writing page to/from pmem (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Constify vma argument to vma_is_dax (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: pass NOWAIT flag to iomap_apply (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Get rid of fs_dax_get_by_host() helper (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Pass dax_dev instead of bdev to dax_writeback_mapping_range() (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Fix alloc_dax_region() compile warning (Eric Sandeen) [1838876 1854346 1838344] - [fs] xfs: disable map_sync for async flush (Eric Sandeen) [1838876 1854346 1838344] - [fs] ext4: disable map_sync for async flush (Eric Sandeen) [1838876 1854346 1838344] - [include] dax: check synchronous mapping is supported (Eric Sandeen) [1838876 1854346 1838344] - [dax] libnvdimm: add dax_dev sync flag (Eric Sandeen) [1838876 1854346 1838344] - [nvdimm] libnvdimm: nd_region flush callback support (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: only allow FSSETXATTR to set DAX flag on files and dirs (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: teach vfs_ioc_fssetxattr_check to check extent size hints (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: teach vfs_ioc_fssetxattr_check to check project id info (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: create a generic checking function for FS_IOC_FSSETXATTR (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: create a generic checking and prep function for FS_IOC_SETFLAGS (Eric Sandeen) [1838876 1854346 1838344] - [dax] drivers/dax: Allow to include DEV_DAX_PMEM as builtin (Eric Sandeen) [1838876 1854346 1838344] - [netdrv] net: intel: Remove in_interrupt() warnings (Corinna Vinschen) [1838746] - [netdrv] igb: read PBA number from flash (Corinna Vinschen) [1838746] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838746] - [netdrv] treewide: Use fallthrough pseudo-keyword (Corinna Vinschen) [1838746] - [netdrv] igb: use eth_zero_addr() to clear mac address (Corinna Vinschen) [1838746] - [netdrv] igb: Remove unnecessary usages of memset (Corinna Vinschen) [1838746] - [netdrv] igb: reinit_locked() should be called with rtnl_lock (Corinna Vinschen) [1838746] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838746] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838746] - [netdrv] igb: make igb_set_fc_watermarks() return void (Corinna Vinschen) [1838746] - [netdrv] igb: Report speed and duplex as unknown when device is runtime suspended (Corinna Vinschen) [1838746] - [netdrv] igb: convert to use i2c_new_client_device() (Corinna Vinschen) [1838746] - [net] Bluetooth: Allow suspend even when preparation has failed (Gopal Tiwari) [1881485] - [net] Bluetooth: Check scan state before disabling during suspend (Gopal Tiwari) [1881485] - [fs] fuse: fix the ->direct_IO() treatment of iov_iter (Miklos Szeredi) [1875608] - [net] openvswitch: handle DNAT tuple collision (Dumitru Ceara) [1877128] - [net] xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame (Petr Oros) [1867194]- [fs] NFSv4.2: fix failure to unregister shrinker (Scott Mayhew) [1897988] - [tools] cpupower: Provide online and offline CPU information (Diego Domingos) [1893779] - [net] net/smc: improve return codes for SMC-Dv2 (Claudio Imbrenda) [1731027] - [s390] s390/ism: fix incorrect system EID (Claudio Imbrenda) [1731027] - [net] net/smc: fix suppressed return code (Claudio Imbrenda) [1731027] - [net] net/smc: fix null pointer dereference in smc_listen_decline() (Claudio Imbrenda) [1731027] - [net] net/smc: fix invalid return code in smcd_new_buf_create() (Claudio Imbrenda) [1731027] - [net] net/smc: fix valid DMBE buffer sizes (Claudio Imbrenda) [1731027] - [net] net/smc: fix use-after-free of delayed events (Claudio Imbrenda) [1731027] - [net] net/smc: restore smcd_version when all ISM V2 devices failed to init (Claudio Imbrenda) [1731027] - [net] net/smc: cleanup buffer usage in smc_listen_work() (Claudio Imbrenda) [1731027] - [net] net/smc: consolidate unlocking in same function (Claudio Imbrenda) [1731027] - [net] net/smc: use an array to check fields in system EID (Claudio Imbrenda) [1731027] - [net] net/smc: send ISM devices with unique chid in CLC proposal (Claudio Imbrenda) [1731027] - [net] net/smc: CLC decline - V2 enhancements (Claudio Imbrenda) [1731027] - [net] net/smc: introduce CLC first contact extension (Claudio Imbrenda) [1731027] - [net] net/smc: CLC accept / confirm V2 (Claudio Imbrenda) [1731027] - [net] net/smc: determine accepted ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: build and send V2 CLC proposal (Claudio Imbrenda) [1731027] - [net] net/smc: determine proposed ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce list of pnetids for Ethernet devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce CHID callback for ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce System Enterprise ID (SEID) (Claudio Imbrenda) [1731027] - [net] net/smc: prepare for more proposed ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: split CLC confirm/accept data to be sent (Claudio Imbrenda) [1731027] - [net] net/smc: separate find device functions (Claudio Imbrenda) [1731027] - [net] net/smc: CLC header fields renaming (Claudio Imbrenda) [1731027] - [net] net/smc: remove constant and introduce helper to check for a pnet id (Claudio Imbrenda) [1731027] - [netdrv] vmxnet3: fix cksum offload issues for non-udp tunnels (Cathy Avery) [1868451] - [netdrv] vmxnet3: use correct tcp hdr length when packet is encapsulated (Cathy Avery) [1868451] - [scsi] scsi: vmw_pvscsi: Use true, false for adapter->use_msg (Cathy Avery) [1895014] - [scsi] scsi: vmw_pvscsi: Silence dma mapping errors (Cathy Avery) [1895014] - [scsi] scsi: vmw_pvscsi: Fix swiotlb operation (Cathy Avery) [1895014] - [scsi] scsi: vmw_pscsi: use sg helper to iterate over scatterlist (Cathy Avery) [1895014] - [scsi] Revert "vmw_pvscsi: Fixed to work with SG_CHAIN" (Cathy Avery) [1895014] - [scsi] scsi: vmw_pscsi: switch to generic DMA API (Cathy Avery) [1895014] - [netdrv] mdiobus: Disable preemption upon u64_stats update (Petr Oros) [1889849] - [net] u64_stats: Document writer non-preemptibility requirement (Petr Oros) [1889849] - [netdrv] phy: fixed_phy: Remove unused seqcount (Petr Oros) [1889849] - [net] net/smc: fix double kfree in smc_listen_work() (Claudio Imbrenda) [1847444] - [net] net/smc: check variable before dereferencing in smc_close.c (Claudio Imbrenda) [1847444] - [net] net/smc: use separate work queues for different worker types (Claudio Imbrenda) [1847444] - [net] net/smc: use the retry mechanism for netlink messages (Claudio Imbrenda) [1847444] - [net] net/smc: immediate freeing in smc_lgr_cleanup_early() (Claudio Imbrenda) [1847444] - [net] net/smc: reduce smc_listen_decline() calls (Claudio Imbrenda) [1847444] - [net] net/smc: improve server ISM device determination (Claudio Imbrenda) [1847444] - [net] net/smc: common routine for CLC accept and confirm (Claudio Imbrenda) [1847444] - [net] net/smc: dynamic allocation of CLC proposal buffer (Claudio Imbrenda) [1847444] - [net] net/smc: introduce better field names (Claudio Imbrenda) [1847444] - [net] net/smc: reduce active tcp_listen workers (Claudio Imbrenda) [1847444] - [net] net/smc: fix sock refcounting in case of termination (Claudio Imbrenda) [1847444] - [net] net/smc: reset sndbuf_desc if freed (Claudio Imbrenda) [1847444] - [net] net/smc: fix toleration of fake add_link messages (Claudio Imbrenda) [1847444] - [net] net/smc: Prevent kernel-infoleak in __smc_diag_dump() (Claudio Imbrenda) [1847444] - [s390] s390/ism: fix error return code in ism_probe() (Claudio Imbrenda) [1847444] - [s390] s390/zcrypt: Introduce Failure Injection feature (Philipp Rudo) [1851124] - [s390] s390/zcrypt: move ap_msg param one level up the call chain (Philipp Rudo) [1851124] - [s390] s390/ap/zcrypt: revisit ap and zcrypt error handling (Philipp Rudo) [1851124] - [s390] s390/ap: Support AP card SCLP config and deconfig operations (Philipp Rudo) [1851124] - [s390] s390/sclp: Add support for SCLP AP adapter config/deconfig (Philipp Rudo) [1851124] - [s390] s390/ap: add card/queue deconfig state (Philipp Rudo) [1851124] - [s390] s390/ap: add error response code field for ap queue devices (Philipp Rudo) [1851124] - [s390] s390/ap: split ap queue state machine state from device state (Philipp Rudo) [1851124] - [crypto] s390/zcrypt: New config switch CONFIG_ZCRYPT_DEBUG (Philipp Rudo) [1851124] - [s390] s390/zcrypt: introduce msg tracking in zcrypt functions (Philipp Rudo) [1851124] - [s390] s390/ap: rework crypto config info and default domain code (Philipp Rudo) [1851124] - [s390] s390/zcrypt: provide cex4 cca sysfs attributes for cex3 (Philipp Rudo) [1851124] - [s390] s390/ap: rename and clarify ap state machine related stuff (Philipp Rudo) [1851124] - [s390] s390/zcrypt: split ioctl function into smaller code units (Philipp Rudo) [1851124] - [s390] s390/zcrypt: code beautification and struct field renames (Philipp Rudo) [1851124] - [s390] s390/zcrypt: fix smatch warnings (Philipp Rudo) [1851124] - [s390] s390/ap: introduce new ap function ap_get_qdev() (Philipp Rudo) [1851124] - [s390] s390/zcrypt: replace snprintf/sprintf with scnprintf (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Use scnprintf() for avoiding potential buffer overflow (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Support for CCA protected key block version 2 (Philipp Rudo) [1851124] - [s390] s390/zcrypt: fix card and queue total counter wrap (Philipp Rudo) [1851124] - [s390] s390/zcrypt: move ap device reset from bus to driver code (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Fix CCA cipher key gen with clear key value function (Philipp Rudo) [1851124] - [s390] s390/zcrypt: handle new reply code FILTERED_BY_HYPERVISOR (Philipp Rudo) [1851124] - [fs] NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1888612] - [fs] NFSv4.x recover from pre-mature loss of openstateid (Benjamin Coddington) [1888612] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1888612] - [hv] hv: vmbus: Add timeout to vmbus_wait_for_unload (Mohammed Gamal) [1888980] - [net] sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action() (Ivan Vecera) [1874071] - [net] sched: act_ct: Fix adding udp port mangle operation (Ivan Vecera) [1874071] - [net] sched: Fix suspicious RCU usage while accessing tcf_tunnel_info (Ivan Vecera) [1874071] - [net] sched: get rid of qdisc->padded (Ivan Vecera) [1874071] - [net] sched: check error pointer in tcf_dump_walker() (Ivan Vecera) [1874071] - [net] sched: remove a redundant goto chain check (Ivan Vecera) [1874071] - [net] sched: cls_u32: Replace one-element array with flexible-array member (Ivan Vecera) [1874071] - [net] sched: commit action insertions together (Ivan Vecera) [1874071] - [net] sched: defer tcf_idr_insert() in tcf_action_init_1() (Ivan Vecera) [1874071] - [net] sched: Remove unused function qdisc_queue_drop_head() (Ivan Vecera) [1874071] - [net] sched: taprio: Fix allowing too small intervals (Ivan Vecera) [1874071] - [net] sched: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc (Ivan Vecera) [1874071] - [net] sched: skip an unnecessay check (Ivan Vecera) [1874071] - [net] sched: act_ife: load meta modules before tcf_idr_check_alloc() (Ivan Vecera) [1874071] - [net] sched: fix error path in red_init() (Ivan Vecera) [1874071] - [net] sched: taprio: Fix using wrong queues in gate mask (Ivan Vecera) [1874071] - [net] sched: Use fallthrough pseudo-keyword (Ivan Vecera) [1874071] - [net] netlink: consistently use NLA_POLICY_EXACT_LEN() (Ivan Vecera) [1874071] - [net] sched: act_ct: fix miss set mru for ovs after defrag in act_ct (Ivan Vecera) [1874071] - [net] sched: cls_u32: Use struct_size() helper (Ivan Vecera) [1874071] - [net] sched: act_pedit: Use flex_array_size() helper in memcpy() (Ivan Vecera) [1874071] - [net] sched: initialize timer earlier in red_init() (Ivan Vecera) [1874071] - [net] sched: cls_flower: Add hash info to flow classification (Ivan Vecera) [1874071] - [net] flow_dissector: add packet hash dissection (Ivan Vecera) [1874071] - [net] sched: sch_api: add missing rcu read lock to silence the warning (Ivan Vecera) [1874071] - [tools] tc-testing: Add tdc to kselftests (Ivan Vecera) [1874071] - [net] sched: Do not drop root lock in tcf_qevent_handle() (Ivan Vecera) [1874071] - [net] sched: kerneldoc fixes (Ivan Vecera) [1874071] - [net] sched: Pass qdisc reference in struct flow_block_offload (Ivan Vecera) [1874071] - [net] sched: Use fallthrough pseudo-keyword (Ivan Vecera) [1874071] - [net] sched: Allow changing default qdisc to FQ-PIE (Ivan Vecera) [1874071] - [net] qos: police action offloading parameter 'burst' change to the original value (Ivan Vecera) [1874071] - [tools] selftests: forwarding: Add a RED test for SW datapath (Ivan Vecera) [1874071] - [net] sched: sch_red: Add qevents "early_drop" and "mark" (Ivan Vecera) [1874071] - [net] sched: sch_red: Split init and change callbacks (Ivan Vecera) [1874071] - [net] sched: Introduce helpers for qevent blocks (Ivan Vecera) [1874071] - [net] sched: sch_cake: add RFC 8622 LE PHB support to CAKE diffserv handling (Ivan Vecera) [1874071] - [net] qos: police action add index for tc flower offloading (Ivan Vecera) [1874071] - [net] qos: add tc police offloading action with max frame size limit (Ivan Vecera) [1874071] - [net] sched: tcindex_change: Remove redundant null check (Ivan Vecera) [1874071] - [net] sched: Remove redundant skb null check (Ivan Vecera) [1874071] - [net] sched: Remove redundant condition in qdisc_graft (Ivan Vecera) [1874071] - [net] sched: cls_u32: Use struct_size() in kzalloc() (Ivan Vecera) [1874071] - [net] sched: taprio: Use struct_size() in kzalloc() (Ivan Vecera) [1874071] - [net] vlan: consolidate VLAN parsing code and limit max parsing depth (Ivan Vecera) [1874071] - [net] flow_offload: Move rhashtable inclusion to the source file (Ivan Vecera) [1874071] - [net] sched: act_ct: fix restore the qdisc_skb_cb after defrag (Ivan Vecera) [1874071] - [net] sched: fix a memory leak in atm_tc_init() (Ivan Vecera) [1874071] - [net] sched: act_ct: add miss tcf_lastuse_update. (Ivan Vecera) [1874071] - [net] sched: consistently handle layer3 header accesses in the presence of VLANs (Ivan Vecera) [1874071] - [net] tunnel: Propagate ECT(1) when decapsulating as recommended by RFC6040 (Ivan Vecera) [1874071] - [net] sched: sch_cake: fix a few style nits (Ivan Vecera) [1874071] - [net] sched: sch_cake: don't call diffserv parsing code when it is not needed (Ivan Vecera) [1874071] - [net] sched: sch_cake: don't try to reallocate or unshare skb unconditionally (Ivan Vecera) [1874071] - [tools] tc-testing: avoid action cookies with odd length. (Ivan Vecera) [1874071] - [net] sched: Add MODULE_DESCRIPTION entries to network modules (Ivan Vecera) [1874071] - [tools] tc-testing: update geneve options match in tunnel_key unit tests (Ivan Vecera) [1874071] - [net] flow_offload: fix flow_indr_dev_unregister path (Ivan Vecera) [1874071] - [net] flow_offload: use flow_indr_block_cb_alloc/remove function (Ivan Vecera) [1874071] - [net] flow_offload: add flow_indr_block_cb_alloc/remove function (Ivan Vecera) [1874071] - [net] sched: act_gate: fix configuration of the periodic timer (Ivan Vecera) [1874071] - [net] sched: act_gate: fix NULL dereference in tcf_gate_init() (Ivan Vecera) [1874071] - [net] flow_offload: remove indirect flow_block declarations leftover (Ivan Vecera) [1874071] - [net] sched: export __netdev_watchdog_up() (Ivan Vecera) [1874071] - [net] sched: act_ct: add nat mangle action only for NAT-conntrack (Ivan Vecera) [1874071] - [net] sched: sch_cake: Take advantage of skb->hash where appropriate (Ivan Vecera) [1874071] - [net] sched: fix a couple of splats in the error path of tfc_gate_init() (Ivan Vecera) [1874071] - [net] sched: get rid of unnecessary dev_qdisc_reset() (Ivan Vecera) [1874071] - [net] sched: avoid resetting active qdisc for multiple times (Ivan Vecera) [1874071] - [net] sched: add a tracepoint for qdisc creation (Ivan Vecera) [1874071] - [net] sched: add tracepoints for qdisc_reset() and qdisc_destroy() (Ivan Vecera) [1874071] - [net] sched: use qdisc_reset() in qdisc_destroy() (Ivan Vecera) [1874071] - [net] sched: fix infinite loop in sch_fq_pie (Ivan Vecera) [1874071] - [net] sched: fix reporting the first-time use timestamp (Ivan Vecera) [1874071] - [net] tracing: Fix header include guards in trace event headers (Ivan Vecera) [1874071] - [netdrv] ipvlan: fix device features (Davide Caratti) [1892621] - [netdrv] ipvlan: consolidate TSO flags using NETIF_F_ALL_TSO (Davide Caratti) [1892621] - [netdrv] ipvlan: set hw_enc_features like macvlan (Davide Caratti) [1892621] - [tools] ACPI: Use valid link to the ACPI specification (David Arcari) [1857138] - [tools] cpupower: Replace HTTP links with HTTPS ones (David Arcari) [1857138] - [tools] cpupower: Fix NULL but dereferenced coccicheck errors (David Arcari) [1857138] - [tools] cpupower: Fix comparing pointer to 0 coccicheck warns (David Arcari) [1857138] - [tools] cpupower: Remove unneeded semicolon (David Arcari) [1857138] - [tools] cpupower: .gitignore: add SPDX License Identifier (David Arcari) [1857138] - [tools] cpupower: avoid multiple definition with gcc -fno-common (David Arcari) [1857138] - [tools] cpupower: Revert library ABI changes from commit ae2917093fb60bdc1ed3e (David Arcari) [1857138] - [tools] cpupower: ToDo: Update ToDo with ideas for per_cpu_schedule handling (David Arcari) [1857138] - [tools] tools/power/cpupower: Fix initializer override in hsw_ext_cstates (David Arcari) [1857138] - [tools] cpupower: update German translation (David Arcari) [1857138] - [tools] tools/power/cpupower: fix 64bit detection when cross-compiling (David Arcari) [1857138] - [tools] cpupower: Add missing newline at end of file (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (David Arcari) [1857138] - [tools] cpupower: correct spelling of interval (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 167 (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 166 (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (David Arcari) [1857138] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 155 (David Arcari) [1857138] - [tools] cpupower: Add SPDX license identifier for more missed files (David Arcari) [1857138] - [tools] tools/power/cpupower: Display boost frequency separately (David Arcari) [1857138] - [tools] cpupower : Auto-completion for cpupower tool (David Arcari) [1857138] - [tools] tools/power/cpupower: fix compilation with STATIC=true (David Arcari) [1857138] - [tools] cpupower: remove stringop-truncation waring (David Arcari) [1857138] - [tools] cpupower: convert ISO_8859-1 text comments to utf-8 (David Arcari) [1857138] - [x86] x86/resctrl: Support wider MBM counters (Puneet Sethi) [1834658] - [x86] x86/resctrl: Support CPUID enumeration of MBM counter width (Puneet Sethi) [1834658] - [x86] x86/resctrl: Maintain MBM counter width per resource (Puneet Sethi) [1834658] - [x86] x86/resctrl: Query LLC monitoring properties once during boot (Puneet Sethi) [1834658] - [x86] x86/resctrl: Remove unnecessary RMID checks (Puneet Sethi) [1834658] - [x86] x86/cpu: Move resctrl CPUID code to resctrl/ (Puneet Sethi) [1834658] - [x86] x86/resctrl: Rename asm/resctrl_sched.h to asm/resctrl.h (Puneet Sethi) [1834658] - [x86] x86/resctrl: Preserve CDP enable over CPU hotplug (Puneet Sethi) [1834658] - [net] af_packet: TPACKET_V3: fix fill status rwlock imbalance (Ivan Vecera) [1889829] - [net] packet: tpacket_rcv: do not increment ring index on drop (Ivan Vecera) [1889829] - [net] af_packet: TPACKET_V3: replace busy-wait loop (Ivan Vecera) [1889829] - [net] SUNRPC: Fix svc_flush_dcache() (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Be consistent about mirror index types (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read (Scott Mayhew) [1888214] - [fs] NFSv4.2: fix client's attribute cache management for copy_file_range (Scott Mayhew) [1888214] - [fs] nfs: Fix security label length not being reset (Scott Mayhew) [1888214] - [net] SUNRPC: stop printk reading past end of string (Scott Mayhew) [1888214] - [fs] NFS: Zero-stateid SETATTR should first return delegation (Scott Mayhew) [1888214] - [fs] NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall (Scott Mayhew) [1888214] - [net] SUNRPC: remove duplicate include (Scott Mayhew) [1888214] - [fs] nfsd: fix oops on mixed NFSv4/NFSv3 client access (Scott Mayhew) [1888214] - [fs] NFS: Fix flexfiles read failover (Scott Mayhew) [1888214] - [fs] fs: nfs: delete repeated words in comments (Scott Mayhew) [1888214] - [fs] rpc_pipefs: convert comma to semicolon (Scott Mayhew) [1888214] - [fs] NFS: Don't return layout segments that are in use (Scott Mayhew) [1888214] - [fs] NFS: Don't move layouts to plh_return_segs list while in use (Scott Mayhew) [1888214] - [fs] NFS: Add layout segment info to pnfs read/write/commit tracepoints (Scott Mayhew) [1888214] - [fs] NFS: Add tracepoints for layouterror and layoutstats (Scott Mayhew) [1888214] - [fs] NFS: Report the stateid + status in trace_nfs4_layoutreturn_on_close() (Scott Mayhew) [1888214] - [fs] NFSv4.2: xattr cache: get rid of cache discard work queue (Scott Mayhew) [1888214] - [fs] NFS: remove redundant initialization of variable result (Scott Mayhew) [1888214] - [net] svcrdma: CM event handler clean up (Scott Mayhew) [1888214] - [net] svcrdma: Remove transport reference counting (Scott Mayhew) [1888214] - [net] svcrdma: Fix another Receive buffer leak (Scott Mayhew) [1888214] - [trace] SUNRPC: Refresh the show_rqstp_flags() macro (Scott Mayhew) [1888214] - [fs] nfsd: netns.h: delete a duplicated word (Scott Mayhew) [1888214] - [net] sunrpc: destroy rpc_inode_cachep after unregister_filesystem (Scott Mayhew) [1888214] - [fs] freezer: Add unsafe version of freezable_schedule_timeout_interruptible() for NFS (Scott Mayhew) [1888214] - [fs] NFSv4.2: add client side xattr caching (Scott Mayhew) [1888214] - [fs] NFSv4.2: hook in the user extended attribute handlers (Scott Mayhew) [1888214] - [fs] NFSv4.2: add the extended attribute proc functions (Scott Mayhew) [1888214] - [fs] nfs: make the buf_to_pages_noslab function available to the nfs code (Scott Mayhew) [1888214] - [fs] nfs: define and use the NFS_INO_INVALID_XATTR flag (Scott Mayhew) [1888214] - [fs] NFS: Update symbolic flags displayed by trace events (Scott Mayhew) [1888214] - [fs] nfs: modify update_changeattr to deal with regular files (Scott Mayhew) [1888214] - [fs] NFSv4.2: query the extended attribute access bits (Scott Mayhew) [1888214] - [fs] nfs: define nfs_access_get_cached function (Scott Mayhew) [1888214] - [fs] NFSv4.2: add client side XDR handling for extended attributes (Scott Mayhew) [1888214] - [fs] NFSv4.2: query the server for extended attribute support (Scott Mayhew) [1888214] - [fs] NFSv4.2: define limits and sizes for user xattr handling (Scott Mayhew) [1888214] - [include] nfs: add client side only definitions for user xattrs (Scott Mayhew) [1888214] - [fs] nfsd: Use seq_putc() in two functions (Scott Mayhew) [1888214] - [net] svcrdma: Display chunk completion ID when posting a rw_ctxt (Scott Mayhew) [1888214] - [net] svcrdma: Record send_ctxt completion ID in trace_svcrdma_post_send() (Scott Mayhew) [1888214] - [net] svcrdma: Introduce Send completion IDs (Scott Mayhew) [1888214] - [net] svcrdma: Record Receive completion ID in svc_rdma_decode_rqst (Scott Mayhew) [1888214] - [net] svcrdma: Introduce Receive completion IDs (Scott Mayhew) [1888214] - [trace] svcrdma: Introduce infrastructure to support completion IDs (Scott Mayhew) [1888214] - [net] svcrdma: Add common XDR encoders for RDMA and Read segments (Scott Mayhew) [1888214] - [net] svcrdma: Add common XDR decoders for RDMA and Read segments (Scott Mayhew) [1888214] - [net] SUNRPC: Add helpers for decoding list discriminators symbolically (Scott Mayhew) [1888214] - [include] svcrdma: Remove declarations for functions long removed (Scott Mayhew) [1888214] - [net] svcrdma: Clean up trace_svcrdma_send_failed() tracepoint (Scott Mayhew) [1888214] - [net] svcrdma: Consolidate send_error helper functions (Scott Mayhew) [1888214] - [net] svcrdma: Make svc_rdma_send_error_msg() a global function (Scott Mayhew) [1888214] - [net] svcrdma: Eliminate return value for svc_rdma_send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Add a @status parameter to svc_rdma_send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Add @rctxt parameter to svc_rdma_send_error() functions (Scott Mayhew) [1888214] - [net] svcrdma: Remove save_io_pages() call from send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Fix page leak in svc_rdma_recv_read_chunk() (Scott Mayhew) [1888214] - [net] SUNRPC: Augment server-side rpcgss tracepoints (Scott Mayhew) [1888214] - [fs] nfsd: add fattr support for user extended attributes (Scott Mayhew) [1888214] - [fs] nfsd: implement the xattr functions and en/decode logic (Scott Mayhew) [1888214] - [fs] nfsd: add structure definitions for xattr requests / responses (Scott Mayhew) [1888214] - [fs] nfsd: take xattr bits into account for permission checks (Scott Mayhew) [1888214] - [fs] nfsd: define xattr functions to call into their vfs counterparts (Scott Mayhew) [1888214] - [fs] nfsd: add defines for NFSv4.2 extended attribute support (Scott Mayhew) [1888214] - [fs] nfsd: split off the write decode code into a separate function (Scott Mayhew) [1888214] - [fs] xattr: add a function to check if a namespace is supported (Scott Mayhew) [1888214] - [fs] xattr: break delegations in {set, remove}xattr (Scott Mayhew) [1888214] - [uapi] nfs, nfsd: NFSv4.2 extended attribute protocol definitions (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: The mirror count could depend on the layout segment range (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Clean up redundant calls to pnfs_put_lseg() (Scott Mayhew) [1888214] - [fs] NFS: Allow applications to speed up readdir+statx() using AT_STATX_DONT_SYNC (Scott Mayhew) [1888214] - [include] NFS: Replace zero-length array with flexible-array (Scott Mayhew) [1888214] - [include] nfs4: Remove unneeded semicolon (Scott Mayhew) [1888214] - [tools] selftests/livepatch: adopt to newer sysctl error format (Yannick Cote) [1869880] - [tools] selftests/livepatch: Use "comm" instead of "diff" for dmesg (Yannick Cote) [1869880] - [tools] selftests/livepatch: add test delimiter to dmesg (Yannick Cote) [1869880] - [tools] selftests/livepatch: refine dmesg 'taints' in dmesg comparison (Yannick Cote) [1869880] - [tools] selftests/livepatch: Don't clear dmesg when running tests (Yannick Cote) [1869880] - [lib] selftests/livepatch: fix mem leaks in test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: more verification in test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: rework test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: simplify test-klp-callbacks busy target tests (Yannick Cote) [1869880] - [tools] selftests: Install settings files to fix TIMEOUT failures (Yannick Cote) [1869880] - [cpufreq] cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Free memory only when turning off (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Add ->offline and ->online callbacks (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Tweak the EPP sysfs interface (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Update cached EPP in the active mode (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Refuse to turn off with HWP enabled (Puneet Sethi) [1881199] - [documentation] Documentation: fix pm/intel_pstate build warning and wording (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Implement passive mode with HWP enabled (Puneet Sethi) [1881199] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0 (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Rearrange the storing of new EPP values (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Avoid enabling HWP if EPP is not supported (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Clean up aperf_mperf_shift description (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Supply struct attribute description for get_aperf_mperf_shift() (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix static checker warning for epp variable (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Allow raw energy performance preference value (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Allow enable/disable energy efficiency (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Add one more OOB control bit (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: update links for references (Puneet Sethi) [1881199] - [documentation] Documentation: PM: Unify copyright notices (Puneet Sethi) [1881199] - [documentation] Documentation: PM: Add SPDX license tags to multiple files (Puneet Sethi) [1881199] - [documentation] cpufreq: intel_pstate: Documentation: Add references sections (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: Clarify coordination of P-State limits (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: Add base_frequency information (Puneet Sethi) [1881199] - [i2c] i2c: ismt: Remove call to memset after dmam_alloc_coherent (Tony Camuso) [1875395] - [i2c] i2c: ismt: Add support for Intel Cedar Fork (Tony Camuso) [1875395] - [documentation] docs: net: fm10k: add documentation for fm10k driver (Vladis Dronov) [1838728] - [netdrv] net: fm10k: reject unsupported coalescing params (Vladis Dronov) [1838728] - [netdrv] intel: Replace zero-length array with flexible-array member (Vladis Dronov) [1838728] - [netdrv] net: Use skb accessors in network drivers (Vladis Dronov) [1838728] - [netdrv] hdlc_ppp: add range checks in ppp_cp_parse_cr() (Guillaume Nault) [1882082] {CVE-2020-25643}- [pinctrl] pinctrl: sunrisepoint: Modify COMMUNITY macros to be consistent (David Arcari) [1783488] - [pinctrl] pinctrl: cannonlake: Modify COMMUNITY macros to be consistent (David Arcari) [1783488] - [pinctrl] pinctrl: tigerlake: Fix register offsets for TGL-H variant (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Update header block to reflect direct dependencies (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Switch to use intel_pinctrl_get_soc_data() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Extract intel_pinctrl_get_soc_data() helper for wider use (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Use fallthrough pseudo-keyword (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Fix pin being driven low for a while on gpiod_get(..., GPIOD_OUT_HIGH) (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Drop no-op ACPI_PTR() call (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Make use of for_each_requested_gpio_in_range() (David Arcari) [1783488] - [include] gpiolib: Introduce for_each_requested_gpio_in_range() macro (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Protect IO in few call backs by lock (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Split intel_config_get() to three functions (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Drop the only label in the code for consistency (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Get rid of redundant 'else' in intel_config_set_debounce() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Make use of IRQ_RETVAL() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Reduce scope of the lock (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Disable input and output buffer when switching to GPIO (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Allow drivers to define ACPI address space ID (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Allow drivers to define total amount of IRQs per community (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Move npins closer to pin_base in struct intel_community (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Update description in struct intel_community (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Use platform_get_irq_optional() explicitly (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Introduce new flag to force GPIO base to be 0 (David Arcari) [1783488] - [pinctrl] pinctrl: tigerlake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: icelake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: cannonlake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Enable pin configuration setting for GPIO chip (David Arcari) [1783488] - [pinctrl] pinctrl: sunrisepoint: Fix PAD lock register offset for SPT-H (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Mark expected switch fall-throughs (David Arcari) [1783488] - [kernel] mm: disable proactive compaction by default (Rafael Aquini) [1848427] - [mm] mm: use unsigned types for fragmentation score (Rafael Aquini) [1848427] - [mm] mm: fix compile error due to COMPACTION_HPAGE_ORDER (Rafael Aquini) [1848427] - [mm] mm: proactive compaction (Rafael Aquini) [1848427] - [i2c] i2c: mlxbf: I2C_MLXBF should depend on MELLANOX_PLATFORM (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Update author and maintainer email info (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Update reference clock frequency (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Remove unecessary wrapper functions (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Fix resrticted cast warning of sparse (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Add CONFIG_ACPI to guard ACPI function call (Alaa Hleihel) [1655741 1655709] - [documentation] dt-bindings: i2c: I2C binding for Mellanox BlueField SoC (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: I2C SMBus driver for Mellanox BlueField SoC (Alaa Hleihel) [1655741 1655709] - [misc] misc: eeprom: ee1004: convert to i2c_new_dummy_device (Alaa Hleihel) [1655741] - [misc] eeprom: ee1004: Deal with nack on page selection (Alaa Hleihel) [1655741] - [misc] eeprom: ee1004: Move selected page detection to a separate function (Alaa Hleihel) [1655741] - [misc] eeprom: New ee1004 driver for DDR4 memory (Alaa Hleihel) [1655741] - [net] xfrm: Use correct address family in xfrm_state_find (Xin Long) [1892641] - [net] xfrm: clone whole liftime_cur structure in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate (Xin Long) [1892641] - [net] ip_vti: Fix unused variable warning (Xin Long) [1892641] - [net] xfrm: Make the policy hold queue work with VTI. (Xin Long) [1892641] - [s390] s390/qeth: delay draining the TX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: strictly order bridge address events (Philipp Rudo) [1847443] - [s390] s390/qeth: unify structs for bridge port state (Philipp Rudo) [1847443] - [s390] s390/qeth: copy less data from bridge state events (Philipp Rudo) [1847443] - [s390] s390/qeth: don't let HW override the configured port role (Philipp Rudo) [1847443] - [s390] s390/qeth: don't disable address events during initialization (Philipp Rudo) [1847443] - [s390] s390/qeth: make queue lock a proper spinlock (Philipp Rudo) [1847443] - [s390] s390/qeth: use to_delayed_work() (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up qeth_l3_send_setdelmc()'s declaration (Philipp Rudo) [1847443] - [s390] s390/qeth: use all configured RX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: don't process empty bridge port events (Philipp Rudo) [1847443] - [s390] s390/qeth: integrate RX refill worker with NAPI (Philipp Rudo) [1847443] - [s390] s390/qeth: tolerate pre-filled RX buffer (Philipp Rudo) [1847443] - [s390] s390/qdio: remove internal polling in non-thinint path (Philipp Rudo) [1847443] - [s390] s390/qdio: allow to scan all 128 Input SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: fix statistics for 128 SBALs (Philipp Rudo) [1847443] - [s390] s390/qeth: constify the MPC initialization data (Philipp Rudo) [1847443] - [s390] s390/qeth: unify RX-mode hashtables (Philipp Rudo) [1847443] - [s390] s390/qeth: cleanup OAT code (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up a magic number in the OAT callback (Philipp Rudo) [1847443] - [s390] s390/qeth: use u64_to_user_ptr() in the OAT code (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up error handling for isolation mode cmds (Philipp Rudo) [1847443] - [s390] s390/qeth: don't clear the configured isolation mode (Philipp Rudo) [1847443] - [s390] s390/qeth: only init the isolation mode when necessary (Philipp Rudo) [1847443] - [s390] s390/qeth: fine-tune errno when cmds are cancelled (Philipp Rudo) [1847443] - [s390] s390/qeth: reject unsupported link type earlier (Philipp Rudo) [1847443] - [s390] s390/qeth: let isolation mode override HW offload restrictions (Philipp Rudo) [1847443] - [s390] s390/qeth: fix error handling for isolation mode cmds (Philipp Rudo) [1847443] - [s390] s390/qdio: warn about unexpected SLSB states (Philipp Rudo) [1847443] - [s390] s390/qdio: clean up usage of qdio_data (Philipp Rudo) [1847443] - [s390] s390/qdio: reduce SLSB writes during Input Queue processing (Philipp Rudo) [1847443] - [s390] s390/qdio: fine-tune SLSB update (Philipp Rudo) [1847443] - [s390] s390/cio, s390/qeth: cleanup PNSO CHSC (Philipp Rudo) [1847443] - [s390] s390/qdio: remove q->first_to_kick (Philipp Rudo) [1847443] - [s390] s390/qdio: fix up qdio_start_irq() kerneldoc (Philipp Rudo) [1847443] - [s390] s390/qdio: add IRQ reduction for error SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: refactor ACK processing for primed SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify overlap calculation on Input refill (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up Kconfig help text (Philipp Rudo) [1847443] - [s390] s390/qeth: return error when starting a reset fails (Philipp Rudo) [1847443] - [s390] s390/qeth: set TX IRQ marker on last buffer in a group (Philipp Rudo) [1847443] - [s390] s390/qeth: indicate contiguous TX buffer elements (Philipp Rudo) [1847443] - [s390] s390/qeth: merge TX skb mapping code (Philipp Rudo) [1847443] - [s390] s390/qeth: don't use restricted offloads for local traffic (Philipp Rudo) [1847443] - [s390] s390/qeth: extract helpers for next-hop lookup (Philipp Rudo) [1847443] - [s390] s390/qeth: add debugfs file for local IP addresses (Philipp Rudo) [1847443] - [s390] s390/qeth: process local address events (Philipp Rudo) [1847443] - [s390] s390/qeth: keep track of LP2LP capability for csum offload (Philipp Rudo) [1847443] - [s390] s390/qeth: fix cancelling of TX timer on dev_close() (Philipp Rudo) [1847443] - [s390] s390/qdio: remove always-true condition (Philipp Rudo) [1847443] - [s390] s390/qdio: de-duplicate tiqdio_inbound_processing() (Philipp Rudo) [1847443] - [s390] s390/qdio: keep track of allocated queue count (Philipp Rudo) [1847443] - [s390] s390/qdio: roll-back after queue allocation error (Philipp Rudo) [1847443] - [s390] s390/qdio: do more fine-grained allocation roll-back (Philipp Rudo) [1847443] - [s390] s390/qdio: consolidate thinint init/exit (Philipp Rudo) [1847443] - [s390] s390/qdio: put thinint indicator after early error (Philipp Rudo) [1847443] - [s390] s390/qdio: tear down thinint indicator after early error (Philipp Rudo) [1847443] - [s390] s390/qdio: consistently restore the IRQ handler (Philipp Rudo) [1847443] - [s390] s390/qdio: clear DSCI early for polling drivers (Philipp Rudo) [1847443] - [s390] s390/qdio: inline shared_ind() (Philipp Rudo) [1847443] - [s390] s390/qdio: remove cdev from init_data (Philipp Rudo) [1847443] - [s390] s390/qdio: allow for non-contiguous SBAL array in init_data (Philipp Rudo) [1847443] - [s390] zfcp: inline zfcp_qdio_setup_init_data() (Philipp Rudo) [1847443] - [s390] s390/qdio: cleanly split alloc and establish (Philipp Rudo) [1847443] - [s390] s390/qeth: phase out OSN support (Philipp Rudo) [1847443] - [s390] s390/qeth: make OSN / OSX support configurable (Philipp Rudo) [1847443] - [s390] s390/qeth: remove fake_broadcast attribute (Philipp Rudo) [1847443] - [s390] s390/qdio: set qdio_irq->cdev at allocation time (Philipp Rudo) [1847443] - [s390] s390/qdio: remove unused function declarations (Philipp Rudo) [1847443] - [s390] s390/qeth: modernize two list helpers (Philipp Rudo) [1847443] - [s390] s390/qeth: keep track of fixed prio-queue configuration (Philipp Rudo) [1847443] - [s390] s390/qeth: fine-tune MAC Address-related errnos (Philipp Rudo) [1847443] - [s390] s390/qeth: add TX IRQ coalescing support for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: collect more TX statistics (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up the mac_bits (Philipp Rudo) [1847443] - [s390] s390/qeth: simplify L3 dev_id logic (Philipp Rudo) [1847443] - [s390] s390/qdio: extend polling support to multiple queues (Philipp Rudo) [1847443] - [s390] s390/qeth: remove redundant if-clause in RX poll code (Philipp Rudo) [1847443] - [s390] s390/qeth: split out RX poll code (Philipp Rudo) [1847443] - [s390] s390/qeth: simplify RX buffer tracking (Philipp Rudo) [1847443] - [s390] s390/qdio: pass ISC as parameter to chsc_sadc() (Philipp Rudo) [1847443] - [s390] s390/qeth: use dev->reg_state (Philipp Rudo) [1847443] - [s390] s390/qeth: remove gratuitous NULL checks (Philipp Rudo) [1847443] - [s390] s390/qeth: add phys_to_virt() translation for AOB (Philipp Rudo) [1847443] - [s390] s390/qeth: don't report hard-coded driver version (Philipp Rudo) [1847443] - [s390] s390/qeth: add SW timestamping support for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: balance the TX queue selection for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: allow configuration of TX queues for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: allow configuration of TX queues for z/VM NICs (Philipp Rudo) [1847443] - [s390] s390/qeth: remove prio-queueing support for z/VM NICs (Philipp Rudo) [1847443] - [s390] s390/qeth: use memory reserves in TX slow path (Philipp Rudo) [1847443] - [s390] s390/qeth: use memory reserves to back RX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: remove VNICC callback parameter struct (Philipp Rudo) [1847443] - [s390] s390/qdio: add tighter controls for IRQ polling (Philipp Rudo) [1847443] - [s390] s390/qdio: export SSQD via debugfs (Philipp Rudo) [1847443] - [s390] s390/qeth: support configurable RX copybreak (Philipp Rudo) [1847443] - [s390] s390/qeth: don't check for IFF_UP when scheduling napi (Philipp Rudo) [1847443] - [s390] s390/qeth: don't re-start read cmd when IDX has terminated (Philipp Rudo) [1847443] - [s390] s390/qeth: reset seqnos on connection startup (Philipp Rudo) [1847443] - [s390] s390/qeth: remove unused cmd definitions (Philipp Rudo) [1847443] - [s390] s390/qeth: validate device-provided MAC address (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up CREATE_ADDR cmd code (Philipp Rudo) [1847443] - [s390] s390/qeth: remove dead code in qeth_l3_iqd_read_initial_mac() (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify debugfs code (Philipp Rudo) [1847443] - [s390] s390/qdio: use QDIO_IRQ_STATE_INACTIVE instead of 0 (Philipp Rudo) [1847443] - [s390] s390/qeth: don't warn for napi with 0 budget (Philipp Rudo) [1847443] - [s390] s390/qdio: reduce access to cdev->private->qdio_data (Philipp Rudo) [1847443] - [s390] s390/qdio: clean up cdev access in qdio_setup_irq() (Philipp Rudo) [1847443] - [s390] s390/qdio: fill SL with absolute addresses (Philipp Rudo) [1847443] - [s390] s390/qdio: don't allocate *aob array with GFP_ATOMIC (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify ACK tracking (Philipp Rudo) [1847443] - [s390] s390/qeth: remove HARDSETUP state (Philipp Rudo) [1847443] - [s390] s390/qeth: make cmd/reply matching more flexible (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate online/offline code (Philipp Rudo) [1847443] - [s390] s390/qeth: shift some bridgeport code around (Philipp Rudo) [1847443] - [s390] s390/qeth: remove QETH_RX_PULL_LEN (Philipp Rudo) [1847443] - [s390] s390/qeth: use napi_gro_frags() for SG skbs (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate RX code (Philipp Rudo) [1847443] - [s390] s390/qeth: make use of napi_schedule_irqoff() (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate helpers for capability checking (Philipp Rudo) [1847443] - [s390] s390/qeth: stop yielding the ip_lock during IPv4 registration (Philipp Rudo) [1847443] - [s390] s390/qeth: don't raise NETDEV_REBOOT event from L3 offline path (Philipp Rudo) [1847443] - [s390] s390/qeth: remove open-coded inet_make_mask() (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up L3 sysfs code (Philipp Rudo) [1847443] - [s390] s390/qeth: overhaul L3 IP address dump code (Philipp Rudo) [1847443] - [s390] s390/qeth: wake up all waiters from qeth_irq() (Philipp Rudo) [1847443] - [s390] s390/qeth: only handle IRQs while device is online (Philipp Rudo) [1847443] - [s390] s390: clean up qdio.h (Philipp Rudo) [1847443] - [s390] s390/cio: fix kdoc for tiqdio_thinint_handler (Philipp Rudo) [1847443] - [s390] s390/drivers: fix proc/debugfs file permissions (Philipp Rudo) [1847443] - [s390] s390: convert to DEFINE_SHOW_ATTRIBUTE (Philipp Rudo) [1847443] - [s390] scsi: zfcp: Avoid benign overflow of the Request Queue's free-level (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Replace open-coded list move (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Clean up zfcp_erp_action_ready() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Fix an outdated comment for zfcp_qdio_send() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Use prandom_u32_max() for backoff (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix wrong data and display format of SFP+ temperature (Philipp Rudo) [1874100] - [s390] scsi: zfcp: trace channel log even for FCP command responses (Philipp Rudo) [1874100] - [s390] scsi: zfcp: proper indentation to reduce confusion in zfcp_erp_required_act (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move maximum age of diagnostic buffers into a per-adapter variable (Philipp Rudo) [1874100] - [s390] scsi: zfcp: implicitly refresh config-data diagnostics when reading sysfs (Philipp Rudo) [1874100] - [s390] scsi: zfcp: introduce sysfs interface to read the local B2B-Credit (Philipp Rudo) [1874100] - [s390] scsi: zfcp: implicitly refresh port-data diagnostics when reading sysfs (Philipp Rudo) [1874100] - [s390] scsi: zfcp: introduce sysfs interface for diagnostics of local SFP transceiver (Philipp Rudo) [1874100] - [s390] scsi: zfcp: support retrieval of SFP Data via Exchange Port Data (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix GCC compiler warning emitted with -Wmaybe-uninitialized (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix request object use-after-free in send path causing seqno errors (Philipp Rudo) [1874100] - [s390] scsi: s390: zfcp_fc: use sg helper to iterate over scatterlist (Philipp Rudo) [1874100] - [s390] scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN (Philipp Rudo) [1874100] - [s390] scsi: zfcp: improve kdoc for return of zfcp_status_read_refill() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop old default switch case which might paper over missing case (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop default switch case which might paper over missing case (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence -Wimplicit-fallthrough in zfcp_erp_lun_strategy() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence remaining kdoc warnings in header files (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence all W=1 build warnings for existing kdoc (Philipp Rudo) [1874100] - [s390] scsi: zfcp: properly format LUN (and WWPN) for LUN sharing violation kmsg (Philipp Rudo) [1874100] - [s390] scsi: zfcp: use enum zfcp_erp_act_result for argument/return of affected functions (Philipp Rudo) [1874100] - [s390] scsi: zfcp: use enum zfcp_erp_steps for struct zfcp_erp_action.step (Philipp Rudo) [1874100] - [s390] scsi: zfcp: the action field of zfcp_erp_action is actually the type (Philipp Rudo) [1874100] - [s390] scsi: zfcp: clarify function argument name for trace tag string (Philipp Rudo) [1874100] - [s390] scsi: zfcp: ERP thread setup kdoc update (Philipp Rudo) [1874100] - [s390] scsi: zfcp: update kernel message for invalid FCP_CMND length, it's not the CDB (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop duplicate seq_no from zfcp_fsf_req which is also in QTCB header (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop duplicate fsf_command from zfcp_fsf_req which is also in QTCB header (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop unnecessary forward prototype for struct zfcp_fsf_req (Philipp Rudo) [1874100] - [s390] scsi: zfcp: group sort internal structure definitions for proximity (Philipp Rudo) [1874100] - [s390] scsi: zfcp: namespace prefix for internal latency data structures (Philipp Rudo) [1874100] - [s390] scsi: zfcp: update width in comment for ZFCP_COMMON_FLAGS mask (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move scsi_eh & non-ERP timeout defines owned by and local to zfcp_fsf.c (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop unnecessary forward prototype for struct zfcp_reqlist (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move SG table helper from aux to fc and make them static (Philipp Rudo) [1874100] - [s390] scsi: zfcp: remove unnecessary null pointer check before mempool_destroy (Philipp Rudo) [1874100] - [s390] s390/dasd, zfcp: fix gcc 8 stringop-truncation warnings (Philipp Rudo) [1874100] - [s390] s390/stp: unify stp_work_mutex and clock_sync_mutex (Philipp Rudo) [1856342] - [s390] s390/stp: add sysfs file to show scheduled leap seconds (Philipp Rudo) [1856342] - [s390] s390/stp: add support for leap seconds (Philipp Rudo) [1856342] - [s390] s390/stp: use u32 instead of unsigned int (Philipp Rudo) [1856342] - [s390] s390/stp: use __packed (Philipp Rudo) [1856342] - [s390] s390/stp: add locking to sysfs functions (Philipp Rudo) [1856342] - [s390] s390/stp: allow group and users to read stp sysfs files (Philipp Rudo) [1856342] - [s390] s390/ipl: add support to control memory clearing for nvme re-IPL (Philipp Rudo) [1851122] - [kernel] tick: broadcast-hrtimer: Fix a race in bc_set_next (Vladis Dronov) [1876567] - [fs] gfs2: Make sure we don't miss any delayed withdraws (Robert S Peterson) [1873565] - [fs] gfs2: add some much needed cleanup for log flushes that fail (Robert S Peterson) [1873565] - [fs] gfs2: fix trans slab error when withdraw occurs inside log_flush (Robert S Peterson) [1873565] - [block] blk-mq: mark flush request as IDLE in flush_end_io() (Gopal Tiwari) [1894347] - [nvme] nvme-tcp: avoid repeated request completion (Gopal Tiwari) [1894347] - [nvme] nvme-rdma: avoid repeated request completion (Gopal Tiwari) [1894347] - [nvme] nvme-tcp: avoid race between time out and tear down (Gopal Tiwari) [1894347] - [nvme] nvme-rdma: avoid race between time out and tear down (Gopal Tiwari) [1894347] - [nvme] nvme: introduce nvme_sync_io_queues (Gopal Tiwari) [1894347] - [documentation] kvm: x86: hyper-v: Mention SynDBG CPUID leaves in api.rst (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: remove unused variable (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: Don't require THP to run tests (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: evmcs: make evmcs_sanitize_exec_ctrls() work again (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: test behavior of unmapped L2 APIC-access address (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix NULL dereference at kvm_msr_ignored_check() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: replace static const variables with macros (Vitaly Kuznetsov) [1882793] - [x86] kvm: ioapic: break infinite recursion on lazy EOI (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: rename pi_init to avoid conflict with paride (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid modulo operator on 64-bit value to fix i386 build (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: NX largepage recovery for TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Don't clear write flooding count for direct roots (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support MMIO in the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support write protection for nesting in tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support disabling dirty logging for the tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support dirty logging for the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support changed pte notifier in tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add access tracking for tdp_mmu (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support invalidate range MMU notifier for TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Allocate struct kvm_mmu_pages for all pages in TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add TDP MMU PF handler (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Remove disallowed_hugepage_adjust shadow_walk_iterator arg (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support zapping SPTEs in the TDP MMU (Vitaly Kuznetsov) [1882793] - [virt] kvm: Cache as_id in kvm_memory_slot (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add functions to handle changed TDP SPTEs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Allocate and free TDP MMU roots (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Init / Uninit the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Introduce tdp_iter (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: extract spte.h and spte.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: Separate updating a PTE from kvm_set_pte_rmapp (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Separate making SPTEs from set_spte (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: Separate making non-leaf sptes from link_shadow_page (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Let the guest own CR4.FSGSBASE (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Intercept guest reserved CR4 bits to inject #GP fault (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move call to update_exception_bitmap() into VMX code (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Invoke vendor's vcpu_after_set_cpuid() after all common updates (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Intercept LA57 to inject #GP fault when it's reserved (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Initialize prev_ga_tag before use (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: implement on demand allocation of the nested state (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allow kvm_x86_ops.set_efer to return an error value (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: report negative values from wrmsr emulation to userspace (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: xen_hvm_config: cleanup return values (Vitaly Kuznetsov) [1882793] - [x86] kvm x86/mmu: Make struct kernel_param_ops definitions const (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allocate vcpu->arch.cpuid_entries dynamically (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: disconnect kvm_check_cpuid() from vcpu->arch.cpuid_entries (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: only provide PV features if enabled in guest's CPUID (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: set wall_clock in kvm_write_wall_clock() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: encapsulate wrmsr(MSR_KVM_SYSTEM_TIME) emulation in helper fn (Vitaly Kuznetsov) [1882793] - [x86] kvm: hide KVM options from menuconfig when KVM is not compiled (Vitaly Kuznetsov) [1882793] - [documentation] kvm: vmx: Forbid userspace MSR filters for x2APIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Ignore userspace MSR filters for x2APIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Fix x2APIC MSR intercept handling on !APICV platforms (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: vmx_uret_msrs_list[] can be static (Vitaly Kuznetsov) [1882793] - [tools] kvm: x86: do not attempt TSC synchronization on guest writes (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: delay MSR permission processing to first nested VM run (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: rename KVM_REQ_GET_VMCS12_PAGES (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: Add test for user space MSR handling (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Introduce MSR filtering (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: vmx: Prevent MSR passthrough when MSR access is denied (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: svm: Prevent MSR passthrough when MSR access is denied (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Prepare MSR bitmaps for userspace tracked MSRs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add infrastructure for MSR filtering (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Allow deflecting unknown MSR accesses to user space (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Return -ENOENT on unimplemented MSRs (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vmx_uret_msr's "index" to "slot" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_msr_index" to "vmx_uret_msrs_list" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_set_guest_msr" to "vmx_set_guest_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "find_msr_entry" to "vmx_find_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add vmx_setup_uret_msr() to handle lookup and swap (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Move uret MSR lookup into update_transition_efer() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Check guest support for RDTSCP before processing MSR_TSC_AUX (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "__find_msr_index" to "__vmx_find_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "guest_msrs_ready" to "guest_uret_msrs_loaded" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "save_nmsrs" to "nr_active_uret_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "nmsrs" to "nr_uret_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename the "shared_msr_entry" struct to "vmx_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_find_msr_index" to "vmx_find_loadstore_msr_slot" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Prepend "MAX_" to MSR array size defines (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename "shared_msrs" to "user_return_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move individual kvm_mmu initialization into common helper (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Read EXIT_QUAL and INTR_INFO only when needed for nested exit (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Use common definition for kvm_nested_vmexit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add macro wrapper for defining kvm_exit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add intr/vectoring info and error code to kvm_exit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add a helper to test for a valid error code given an intr info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Read guest RIP from within the kvm_nested_vmexit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add RIP to the kvm_entry, i.e. VM-Enter, tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: WARN on attempt to switch the currently loaded VMCS (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Drop redundant VMCS switch and free_nested() call (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Ensure vmcs01 is the loaded VMCS when freeing nested state (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Move free_nested() below vmx_switch_vmcs() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Explicitly check for valid guest state for !unrestricted guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Reload vmcs01 if getting vmcs12's pages fails (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Reset the segment cache when stuffing guest segs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Track write/user faults using bools (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Hoist ITLB multi-hit workaround check up a level (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename 'hlevel' to 'level' in FNAME(fetch) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Account NX huge page disallowed iff huge page was requested (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Capture requested page level before NX huge page workaround (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move "huge page disallowed" calculation into mapping helpers (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Refactor the zap loop for recovering NX lpages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Commit zap of remaining invalid pages when recovering lpages (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename ops.h to vmx_ops.h (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Extract posted interrupt support to separate files (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Bail early from final #PF handling on spurious faults (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Return unique RET_PF_* values if the fault was fixed (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Invert RET_PF_* check when falling through to emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Return -EIO if page fault returns RET_PF_INVALID (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Recursively zap nested TDP SPs when zapping last/only parent (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move flush logic from mmu_page_zap_pte() to FNAME(invlpg) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: hyper-v: disallow configuring SynIC timers with no SynIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Stash 'kvm' in a local variable in kvm_mmu_free_roots() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add a helper and macros to reduce boilerplate for sec exec ctls (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename RDTSCP secondary exec control name to insert "ENABLE" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use VMX_FEATURE_* flags to define VMCS control bits (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Unconditionally clear CPUID.INVPCID if !CPUID.PCID (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vmx_*_supported() helpers to cpu_has_vmx_*() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use "illegal GPA" helper for PT/RTIT output base check (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move illegal GPA helper out of the MMU code (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Replace MSR_IA32_RTIT_OUTPUT_BASE_MASK with helper function (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Unexport cpuid_query_maxphyaddr() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use precomputed MAXPHYADDR for RTIT base MSR check (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Do not perform emulation for INVD intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: sev: shorten comments around sev_clflush_pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Mark SEV launch secret pages as dirty (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Add VM-Enter failed tracepoints for super early checks (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: CR3 MBZ bits are only 63:52 (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: emulating RDPID failure shall return #UD rather than #GP (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Morph notification vector IRQ on nested VM-Enter to pending PI (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add tracepoint for cr_interception (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Analyze is_guest_mode() in svm_vcpu_run() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Invoke NMI handler via indirect call instead of INTn (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Move IRQ invocation to assembly subroutine (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add kvm_x86_ops hook to short circuit emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: use __GFP_ZERO instead of clear_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: KVM needs to unset "unrestricted guest" VM-execution control in vmcs02 if vmcs12 doesn't set it (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Enable INVPCID feature on AMD (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move handling of INVPCID types to x86 (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename and move the function vmx_handle_memory_failure to x86.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Remove set_cr_intercept, clr_cr_intercept and is_cr_intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add new intercept word in vmcb_control_area (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Modify 64 bit intercept field to two 32 bit vectors (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Modify intercept_exceptions to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Change intercept_dr to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Change intercept_cr to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Introduce vmcb_(set_intercept/clr_intercept/_is_intercept) (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Remove unused field (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: refactor exit labels in svm_create_vcpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: use __GFP_ZERO instead of clear_page (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: refactor msr permission bitmap allocation (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: rename nested vmcb to vmcb12 (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: rename a variable in the svm_create_vcpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Reduce world switch latency caused by timer_advance_ns (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Narrow down the kick target vCPU (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Guarantee the timer is in tsc-deadline mode when setting (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Return 0 when getting the tscdeadline timer if the lapic is hw disabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Fix updating DFR missing apic map recalculation (Vitaly Kuznetsov) [1882793] - [virt] kvm/eventfd: move wildcard calculation outside loop (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Simplify the initialization of nested_vmx_msrs (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Fix VMX controls MSRs setup when nested VMX enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Avoid freeing uninitialized pointers in svm_set_nested_state() (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Remove aliases with X64 in their name (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Split hyperv-tlfs.h into arch dependent and independent files (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Remove HV_PROCESSOR_POWER_STATE #defines (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add GHCB definitions (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: nested: Don't allocate VMCB structures on stack (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: page_track: Fix RCU list API usage (Vitaly Kuznetsov) [1882793] - [kernel] rculist: Introduce list/hlist_for_each_entry_srcu() macros (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: update PFEC_MASK/PFEC_MATCH together with PF intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add a dedicated INVD intercept routine (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: fix MSR_IA32_TSC read for nested migration (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: Fix assert failure in single-step test (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: vmx: Make smaller physical guest address space support user-configurable (Vitaly Kuznetsov) [1882793] - [x86] revert "kvm: Check the allocation of pv cpu mask" (Vitaly Kuznetsov) [1882793] - [x86] kvm: emulator: more strict rsm checks (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: more strict SMM checks when returning to nested guest (Vitaly Kuznetsov) [1882793] - [x86] svm: nsvm: setup nested msr permission bitmap on nested state load (Vitaly Kuznetsov) [1882793] - [x86] svm: nsvm: correctly restore GIF on vmexit from nesting after migration (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Don't freeze guest when event delivery causes an APIC-access exit (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: avoid emulation with stale next_rip (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: always allow writing '0' to MSR_KVM_ASYNC_PF_EN (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Periodically schedule when unregistering regions on destroy (Vitaly Kuznetsov) [1882793] - [x86] kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL control (Vitaly Kuznetsov) [1882793] - [virt] kvm: fix memory leak in kvm_io_bus_unregister_dev() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Check the allocation of pv cpu mask (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Update VMCS02 when L2 PAE PDPTE updates detected (Vitaly Kuznetsov) [1882793] - [documentation] kvm: documentation: Minor fixups (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: fix access code passed to gva_to_gpa (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: Use a shorter encoding to clear RAX (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Synic default SCONTROL MSR needs to be enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Don't attempt to load PDPTRs when 64-bit mode is enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: detect assigned device via irqbypass manager (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Fix sev_pin_memory() error handling (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Set the TDCR settable bits (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Fix disable pause loop exit/pause filtering capability on SVM (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Prevent setting the tscdeadline timer if the lapic is hw disabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Specify max TDP level via kvm_configure_mmu() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename max_page_level to max_huge_page_level (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Dynamically calculate TDP level from max level and MAXPHYADDR (Vitaly Kuznetsov) [1882793] - [x86] kvm: vxm: Remove temporary WARN on expected vs. actual EPTP level mismatch (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Pull the PGD's level from the MMU instead of recalculating it (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Make vmx_load_mmu_pgd() static (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add separate helper for shadow NPT root page role calc (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Drop a duplicate declaration of construct_eptp() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Using macros instead of magic values (Vitaly Kuznetsov) [1882793] - [tools] kvm: nvmx: check for invalid hdr.vmx.flags (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: check for required but missing VMCS12 in KVM_SET_NESTED_STATE (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: do not set guest mode flag (Vitaly Kuznetsov) [1882793] - [documentation] documentation: virt/kvm/api: eliminate duplicated word (Vitaly Kuznetsov) [1882793] - [documentation] docs: kvm: Replace HTTP links with HTTPS ones (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: remove nonsensical EXITINFO1 adjustment on nested NPF (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add a capability for GUEST_MAXPHYADDR < HOST_MAXPHYADDR support (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: optimize #PF injection when MAXPHYADDR does not match (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add guest physical address check in EPT violation and misconfig (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: introduce vmx_need_pf_intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: update exception bitmap on CPUID changes (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: rename update_bp_intercept to update_exception_bitmap (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: mmu: Add guest physical address check in translate_gpa() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: mmu: Move translate_gpa() to mmu.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add helper functions for illegal GPA checking and page fault injection (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: move MSR_IA32_PERF_CAPABILITIES emulation to common x86 code (Vitaly Kuznetsov) [1882793] - [virt] kvm: Move x86's MMU memory cache helpers to common KVM code (Vitaly Kuznetsov) [1882793] - [kernel] kvm: Move x86's version of struct kvm_mmu_memory_cache to common code (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Prepend "kvm_" to memory cache helpers that will be global (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Skip filling the gfn cache for guaranteed direct MMU topups (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Zero allocate shadow pages (outside of mmu_lock) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make __GFP_ZERO a property of the memory cache (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Separate the memory caches for shadow pages and gfn arrays (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Clean up the gorilla math in mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Topup memory caches after walking GVA->GPA (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move fast_page_fault() call above mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Try to avoid crashing KVM if a MMU memory cache is empty (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Remove superfluous gotos from mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Use consistent "mc" name for kvm_mmu_memory_cache locals (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Consolidate "page" variant of memory cache helpers (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Track the associated kmem_cache in the MMU caches (Vitaly Kuznetsov) [1882793] - [x86] kvm/x86: pmu: Fix #GP condition check for RDPMC emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move kvm_x86_ops.vcpu_after_set_cpuid() into kvm_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename cpuid_update() callback to vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename kvm_update_cpuid() to kvm_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Extract kvm_update_cpuid_runtime() from kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Introduce kvm_check_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move kvm_apic_set_version() to kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Use guest_cpuid_has() in kvm_apic_set_version() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Go on updating other CPUID leaves when leaf 1 is absent (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Reset vcpu->arch.cpuid_nent to 0 if SET_CPUID* fails (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: limit the maximum number of vPMU fixed counters to 3 (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Check that MBZ bits in CR3 and CR4 are not set on vmrun of nested guests (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Make CR4.VMXE reserved for the guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Create mask for guest CR4 reserved bits in kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Read PDPTEs on CR0.CD and CR0.NW changes (Vitaly Kuznetsov) [1882793] - [x86] kvm: Add "nopvspin" parameter to disable PV spinlocks (Vitaly Kuznetsov) [1882793] - [x86] kvm: Change print code to use pr_*() format (Vitaly Kuznetsov) [1882793] - [x86] revert "kvm: x86: Fix setup the virt_spin_lock_key before static key get initialized" (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename page_header() to to_shadow_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add sptep_to_sp() helper to wrap shadow page lookup (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make kvm_mmu_page definition and accessor internal-only (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add MMU-internal header (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move kvm_mmu_available_pages() into mmu.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move mmu_audit.c and mmutrace.h into the mmu/ sub-directory (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Exit to userspace on make_mmu_pages_available() error (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Batch zap MMU pages when shrinking the slab (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Batch zap MMU pages when recycling oldest pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Don't put invalid SPs back on the list of active pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Optimize MMU page cache lookup for fully direct MMUs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid multiple hash lookups in kvm_get_mmu_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Use VMCALL and VMMCALL mnemonics in kvm_para.h (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Rename svm_nested_virtualize_tpr() to nested_svm_virtualize_tpr() (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add svm_ prefix to set/clr/is_intercept() (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add vmcb_ prefix to mark_*() functions (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Rename struct nested_state to svm_nested_state (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Wrap VM-Fail valid path in generic VM-Fail helper (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Set last_vmentry_cpu in vcpu_enter_guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move last_cpu into kvm_vcpu_arch as last_vmentry_cpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add "last CPU" to some KVM_EXIT information (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add last_cpu to struct vcpu_vmx (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Always set svm->last_cpu on VMRUN (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Prefer vcpu->cpu to raw_smp_processor_id() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: report sev_pin_memory errors with PTR_ERR (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: fix svn_pin_memory()'s use of get_user_pages_fast() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Check that DR6[63:32] and DR7[64:32] are not set on vmrun of nested guests (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move the check for upper 32 reserved bits of DR6 to separate function (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Do the same ignore_msrs check for feature msrs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move ignore_msrs handling upper the stack (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make .write_log_dirty a nested operation (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: WARN if PML emulation helper is invoked outside of nested guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Drop kvm_arch_write_log_dirty() wrapper (Vitaly Kuznetsov) [1882793] - [s390] kvm: async_pf: change kvm_setup_async_pf()/kvm_arch_setup_async_pf() return type to bool (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: drop KVM_PV_REASON_PAGE_READY case from kvm_handle_page_fault() (Vitaly Kuznetsov) [1882793] - [documentation] documentation: virt: kvm/api: drop doubled words (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use KVM_POSSIBLE_CR*_GUEST_BITS to initialize guest/host masks (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Mark CR4.TSD as being possibly owned by the guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Inject #GP if guest attempts to toggle CR4.LA57 in 64-bit mode (Vitaly Kuznetsov) [1882793] - [virt] kvm: use more precise cast and do not drop __user (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: bit 8 of non-leaf PDPEs is not reserved (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix async pf caused null-ptr-deref (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Remove vcpu_vmx's defunct copy of host_pkru (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allow TSC to differ by NTP correction bounds without TSC scaling (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix MSR range of APIC registers in X2APIC mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Stop context switching MSR_IA32_UMWAIT_CONTROL (Vitaly Kuznetsov) [1882793] - [x86] cpu: Move prototype for get_umwait_control_msr() to a global location (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Plumb L2 GPA through to PML emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid mixing gpa_t with gfn_t in walk_addr_generic() (Vitaly Kuznetsov) [1882793] - [x86] process/64: Make save_fsgs_for_kvm() ready for FSGSBASE (Vitaly Kuznetsov) [1882793] - [kernel] kvm: Replace zero-length array with flexible-array (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add helpers to identify interrupt type from intr_info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Switch KVM guest to using interrupts for page ready APF delivery (Vitaly Kuznetsov) [1882793] - [x86] kvm: Remove defunct KVM_DEBUG_FS Kconfig (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Always treat MSR_IA32_PERF_CAPABILITIES as a valid PMU MSR (Vitaly Kuznetsov) [1882793] - [x86] kvm_hv_set_msr(): use __put_user() instead of 32bit __clear_user() (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: update hyperv_cpuid with SynDBG tests (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Add support for synthetic debugger via hypercalls (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: enable hypercalls regardless of hypercall page (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Add support for synthetic debugger interface (Vitaly Kuznetsov) [1882793] - [x86] hyper-v: Add synthetic debugger definitions (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/pmu: Support full width counting (Vitaly Kuznetsov) [1882793] - [documentation] kvm: x86: announce KVM_FEATURE_ASYNC_PF_INT (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: acknowledgment mechanism for async pf page ready notifications (Vitaly Kuznetsov) [1882793] - [documentation] kvm: x86: interrupt based APF 'page ready' event delivery (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: extend struct kvm_vcpu_pv_apf_data with token info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: hyperv: Remove duplicate definitions of Reference TSC Page (Vitaly Kuznetsov) [1882793] - [x86] kvm: Restrict ASYNC_PF to user space (Vitaly Kuznetsov) [1882793] - [x86] kvm: Sanitize kvm_async_pf_task_wait() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Handle async page faults directly through do_page_fault() (Vitaly Kuznetsov) [1882793] - [virt] kvm: add halt-polling cpu usage stats (Vitaly Kuznetsov) [1882793] - [powerpc] kvm: Replace vcpu->swait with rcuwait (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Introduce rcuwait_active() (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Introduce prepare_to and finish_rcuwait (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Add @state argument to rcuwait_wait_event() (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Let rcuwait_wake_up() return whether or not a task was awoken (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Fix stale wake call name in comment (Vitaly Kuznetsov) [1882793] - [s390] kvm: s390: Use kvm_vcpu_wake_up in kvm_s390_vcpu_wakeup (Vitaly Kuznetsov) [1882793] - [documentation] docs/virt/kvm: Document configuring and running nested guests (Vitaly Kuznetsov) [1882793] - [tools] docs: fix broken references for ReST files that moved around (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Extend VMXs #AC interceptor to handle split lock #AC in guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Emulate split-lock access as a write in emulator (Vitaly Kuznetsov) [1882793] - [net] core: check length before updating Ethertype in skb_mpls_{push,pop} (Guillaume Nault) [1893886] - [net] pktgen: fix error message with wrong function name (Guillaume Nault) [1893886] - [net] handle the return value of pskb_carve_frag_list() correctly (Guillaume Nault) [1893886] - [net] Fix potential wrong skb->protocol in skb_vlan_untag() (Guillaume Nault) [1893886] - [net] make symbol 'flush_works' static (Guillaume Nault) [1893886] - [net] compat: Add missing sock updates for SCM_RIGHTS (Guillaume Nault) [1893886] - [net] mpls: drop skb's dst in mpls_forward() (Guillaume Nault) [1893886] - [include] net: Added pointer check for dst->ops->neigh_lookup in dst_neigh_lookup_skb (Guillaume Nault) [1893886] - [net] fix skb_panic to output real address (Guillaume Nault) [1893886] - [net] fix a potential recursive NETDEV_FEAT_CHANGE (Guillaume Nault) [1893886] - [net] neigh: send protocol value in neighbor create notification (Guillaume Nault) [1893886] - [net] revert default NAPI poll timeout to 2 jiffies (Guillaume Nault) [1893886] - [net] compat_ioctl: handle SIOCOUTQNSD (Guillaume Nault) [1893886] - [net] neigh: use long type to store jiffies delta (Guillaume Nault) [1893886] - [documentation] dev-tools: kselftest.rst: Update examples and paths (Hangbin Liu) [1876011] - [tools] selftests/run_kselftest.sh: Make each test individually selectable (Hangbin Liu) [1876011] - [tools] selftests: Extract run_kselftest.sh and generate stand-alone test list (Hangbin Liu) [1876011] - [tools] selftests/harness: Flush stdout before forking (Hangbin Liu) [1876011] - [tools] selftests: forwarding: Add missing 'rp_filter' configuration (Hangbin Liu) [1892298] - [tools] selftests/net: relax cpu affinity requirement in msg_zerocopy test (Hangbin Liu) [1892298] - [tools] selftests: ethtool: Fix test when only two speeds are supported (Hangbin Liu) [1892298] - [tools] selftests/net: tcp_mmap: fix clang warning for target arch PowerPC (Hangbin Liu) [1892298] - [tools] selftests/net: psock_fanout: fix clang issues for target arch PowerPC (Hangbin Liu) [1892298] - [netdrv] netxen: mark netxen_nic as deprecated in RHEL8 (Ivan Vecera) [1878188] - [net] linkmode: introduce linkmode_intersects() (Ivan Vecera) [1893193] - [net] ipv6: avoid lockdep issue in fib6_del() (Hangbin Liu) [1892196] - [net] ipv6: fix memory leaks on IPV6_ADDRFORM path (Hangbin Liu) [1892196] - [net] ila: remove unused inline function ila_addr_is_ila (Hangbin Liu) [1892196] - [net] ila: Fix uninitialised return value in ila_xlat_nl_cmd_flush (Hangbin Liu) [1892196] - [netdrv] i40e: always propagate error value in i40e_set_vsi_promisc() (Stefan Assmann) [1835705] - [netdrv] i40e: fix return of uninitialized aq_ret in i40e_set_vsi_promisc (Stefan Assmann) [1835705] - [netdrv] i40e: Remove scheduling while atomic possibility (Stefan Assmann) [1835705] - [pci] hv: Fix hibernation in case interrupts are not re-created (Mohammed Gamal) [1846838] - [powerpc] kvm: ppc: book3s hv: xics: Replace the 'destroy' method by a 'release' method (Greg Kurz) [1857527] - [security] selinux: complete the inlining of hashtab functions (Ondrej Mosnacek) [1878149] - [security] selinux: prepare for inlining of hashtab functions (Ondrej Mosnacek) [1878149] - [security] selinux: specialize symtab insert and search functions (Ondrej Mosnacek) [1878149] - [security] selinux: fixed a checkpatch warning with the sizeof macro (Ondrej Mosnacek) [1878149] - [security] selinux: log error messages on required process class / permissions (Ondrej Mosnacek) [1878149] - [security] selinux: fix undefined return of cond_evaluate_expr (Ondrej Mosnacek) [1878149] - [security] selinux: fix a double free in cond_read_node()/cond_read_list() (Ondrej Mosnacek) [1878149] - [security] selinux: fix double free (Ondrej Mosnacek) [1878149] - [security] selinux: netlabel: Remove unused inline function (Ondrej Mosnacek) [1878149] - [security] selinux: do not allocate hashtabs dynamically (Ondrej Mosnacek) [1878149] - [security] selinux: fix return value on error in policydb_read() (Ondrej Mosnacek) [1878149] - [security] selinux: simplify range_write() (Ondrej Mosnacek) [1878149] - [security] selinux: fix error return code in policydb_read() (Ondrej Mosnacek) [1878149] - [security] selinux: don't produce incorrect filename_trans_count (Ondrej Mosnacek) [1878149] - [security] selinux: implement new format of filename transitions (Ondrej Mosnacek) [1878149] - [security] selinux: move context hashing under sidtab (Ondrej Mosnacek) [1878149] - [security] selinux: hash context structure directly (Ondrej Mosnacek) [1878149] - [security] selinux: store role transitions in a hash table (Ondrej Mosnacek) [1878149] - [security] selinux: drop unnecessary smp_load_acquire() call (Ondrej Mosnacek) [1878149] - [security] selinux: fix warning Comparison to bool (Ondrej Mosnacek) [1878149] - [security] selinux: fix error return code in cond_read_list() (Ondrej Mosnacek) [1878149] - [security] selinux: free str on error in str_read() (Ondrej Mosnacek) [1878149] - [security] selinux: clean up indentation issue with assignment statement (Ondrej Mosnacek) [1878149] - [security] selinux: avtab_init() and cond_policydb_init() return void (Ondrej Mosnacek) [1878149] - [security] selinux: clean up error path in policydb_init() (Ondrej Mosnacek) [1878149] - [security] selinux: remove unused initial SIDs and improve handling (Ondrej Mosnacek) [1878149] - [security] selinux: reduce the use of hard-coded hash sizes (Ondrej Mosnacek) [1878149] - [security] selinux: Add xfs quota command types (Ondrej Mosnacek) [1878149] - [security] selinux: optimize storage of filename transitions (Ondrej Mosnacek) [1878149] - [security] selinux: factor out loop body from filename_trans_read() (Ondrej Mosnacek) [1878149] - [security] selinux: generalize evaluate_cond_node() (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_expr to array (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_av_list to array (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_list to array (Ondrej Mosnacek) [1878149] - [security] selinux: sel_avc_get_stat_idx should increase position index (Ondrej Mosnacek) [1878149] - [security] selinux: simplify evaluate_cond_node() (Ondrej Mosnacek) [1878149] - [security] selinux: move status variables out of selinux_ss (Ondrej Mosnacek) [1878149] - [scripts] selinux: use kernel linux/socket.h for genheaders and mdp (Ondrej Mosnacek) [1878149] - [scripts] genheaders: -s had been there since v6; -*s - since v7 (Ondrej Mosnacek) [1878149] - [scsi] scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug (Ming Lei) [1876863] - [scsi] scsi: scsi_debug: Support host tagset (Ming Lei) [1876863] - [scsi] scsi: core: Show nr_hw_queues in sysfs (Ming Lei) [1876863] - [scsi] scsi: Add host and host template flag 'host_tagset' (Ming Lei) [1876863] - [block] null_blk: Support shared tag bitmap (Ming Lei) [1876863] - [block] blk-mq, elevator: Count requests per hctx to improve performance (Ming Lei) [1876863] - [block] blk-mq: Record active_queues_shared_sbitmap per tag_set for when using shared sbitmap (Ming Lei) [1876863] - [block] blk-mq: Record nr_active_requests per queue for when using shared sbitmap (Ming Lei) [1876863] - [block] blk-mq: Relocate hctx_may_queue() (Ming Lei) [1876863] - [block] blk-mq: Facilitate a shared sbitmap per tagset (Ming Lei) [1876863] - [block] blk-mq: Use pointers for blk_mq_tags bitmap tags (Ming Lei) [1876863] - [block] blk-mq: Pass flags for tag init/free (Ming Lei) [1876863] - [block] blk-mq: Free tags in blk_mq_init_tags() upon error (Ming Lei) [1876863] - [block] blk-mq: Rename blk_mq_update_tag_set_depth() (Ming Lei) [1876863] - [block] blk-mq: Rename BLK_MQ_F_TAG_SHARED as BLK_MQ_F_TAG_QUEUE_SHARED (Ming Lei) [1876863] - [block] block: fix double account of flush request's driver tag (Ming Lei) [1876863] - [block] blk-mq: centralise related handling into blk_mq_get_driver_tag (Ming Lei) [1876863] - [block] blk-mq: streamline handling of q->mq_ops->queue_rq result (Ming Lei) [1876863] - [block] blk-mq: remove pointless call of list_entry_rq() in hctx_show_busy_rq() (Ming Lei) [1876863] - [block] blk-mq: move blk_mq_get_driver_tag into blk-mq.c (Ming Lei) [1876863] - [block] blk-mq: support batching dispatch in case of io (Ming Lei) [1876863] - [block] blk-mq: pass obtained budget count to blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: remove dead check from blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: move getting driver tag and budget into one helper (Ming Lei) [1876863] - [block] blk-mq: pass hctx to blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: remove the BLK_MQ_REQ_INTERNAL flag (Ming Lei) [1876863] - [net] netns: Constify exported functions (Guillaume Nault) [1806134] - [net] netns: protect netns ID lookups with RCU (Guillaume Nault) [1806134] - [net] netns: Remove __peernet2id_alloc() (Guillaume Nault) [1806134] - [net] netns: read NETNSA_NSID as s32 attribute in rtnl_net_getid() (Guillaume Nault) [1806134] - [tools] selftests: txtimestamp: add flag for timestamp validation tolerance. (Hangbin Liu) [1861175] - [tools] selftests/net: so_txtime: fix clang issues for target arch PowerPC (Hangbin Liu) [1861175] - [tools] selftests/net: rxtimestamp: fix clang issues for target arch PowerPC (Hangbin Liu) [1861175] - [tools] selftest: txtimestamp: fix net ns entry logic (Hangbin Liu) [1861175] - [tools] selftests/net: update initializer syntax to use c99 designators (Hangbin Liu) [1861175] - [tools] selftests/net: add ipv6 test coverage in rxtimestamp test (Hangbin Liu) [1861175] - [tools] selftests/net: plug rxtimestamp test into kselftest framework (Hangbin Liu) [1861175] - [tools] selftests/net: in rxtimestamp getopt_long needs terminating null entry (Hangbin Liu) [1861175] - [tools] selftests/net: in timestamping, strncpy needs to preserve null byte (Hangbin Liu) [1861175] - [tools] selftests: move timestamping selftests to net folder (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: print statistics for timestamp events. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: add support for epoll(). (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: add new command-line flags. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: allow printing latencies in nsec. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: allow individual txtimestamp tests. (Hangbin Liu) [1861175] - [tools] selftests: timestamping: Fix SIOCGSTAMP undeclared build failure (Hangbin Liu) [1861175] - [tools] selftests: fix timestamping Makefile (Hangbin Liu) [1861175] - [tools] selftests: add missing include unistd (Hangbin Liu) [1861175] - [tools] selftests/txtimestamp: Fix an equals vs assign bug (Hangbin Liu) [1861175] - [tools] selftests: add txtimestamp kselftest (Hangbin Liu) [1861175] - [tools] selftests: expand txtimestamp with ipv6 dgram + raw and pf_packet (Hangbin Liu) [1861175] - [tools] selftests: expand txtimestamp with cmsg support (Hangbin Liu) [1861175] - [hwmon] hwmon: (k10temp) Add support for Zen3 CPUs (Wei Huang) [1846851] - [powerpc] vfs: add faccessat2 syscall (Miklos Szeredi) [1333764] - [fs] vfs: split out access_override_creds() (Miklos Szeredi) [1333764] - [md] Revert "dm writecache: set "Tech Preview" taint using mark_tech_preview()" (Mike Snitzer) [1859413] - [s390] mm: fix huge pte soft dirty copying (Cornelia Huck) [1700709] - [fs] proc/mounts: add cursor (Miklos Szeredi) [1759472]- [char] random: Add a poll handler to extrng_fops (Vladis Dronov) [1884857] - [platform] platform/mellanox: mlxbf-pmc: Add Mellanox BlueField PMC driver (Alaa Hleihel) [1655729] - [mm] mm/page_idle.c: skip offline pages (Chris von Recklinghausen) [1867490] - [powerpc] powerpc/pseries: Detect secure and trusted boot state of the system (Diego Domingos) [1853411] - [net] bpf: Check correct cred for CAP_SYSLOG in bpf_dump_raw_ok() (Yauheni Kaliuta) [1874003] - [kernel] kallsyms: Refactor kallsyms_show_value() to take cred (Yauheni Kaliuta) [1874003] - [kernel] kprobes: Show blacklist addresses as same as kallsyms does (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Report PAC and BTI instructions as skippable (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Don't assume unrecognized HINTs are skippable (Yauheni Kaliuta) [1874003] - [lib] usercopy: Avoid soft lockups in test_check_nonzero_user() (Yauheni Kaliuta) [1874003] - [security] selinux: map CAP_PERFMON and CAP_BPF to CAP_SYS_ADMIN (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: fix netdevsim trap_flow_action_cookie read (Yauheni Kaliuta) [1874003] - [net] net/bpfilter: Initialize pos in __bpfilter_process_sockopt (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Extend map-in-map selftest to detect memory leaks (Yauheni Kaliuta) [1874003] - [net] bpf: Fix map leak in HASH_OF_MAPS map (Yauheni Kaliuta) [1874003] - [net] bpf: Fix NULL pointer dereference in __btf_resolve_helper_id() (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix cgroup sockopt verifier test (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix libbpf hashmap on (I)LP32 architectures (Yauheni Kaliuta) [1874003] - [tools] selftests: bpf: Fix detach from sockmap tests (Yauheni Kaliuta) [1874003] - [net] bpf: net: Avoid incorrect bpf_sk_reuseport_detach call (Yauheni Kaliuta) [1874003] - [net] bpf: net: Avoid copying sk_user_data of reuseport_array during sk_clone (Yauheni Kaliuta) [1874003] - [tools] bpf: Add tests for PTR_TO_BTF_ID vs. null comparison (Yauheni Kaliuta) [1874003] - [net] bpf: Fix an incorrect branch elimination by verifier (Yauheni Kaliuta) [1874003] - [include] bpf: sockmap: Require attach_bpf_fd when detaching a program (Yauheni Kaliuta) [1874003] - [net] bpf: sockmap: Check value of unused args to BPF_PROG_ATTACH (Yauheni Kaliuta) [1874003] - [net] bpf: Enforce BPF ringbuf size to be the power of 2 (Yauheni Kaliuta) [1874003] - [tools] bpf, sockmap: Add ingres skb tests that utilize merge skbs (Yauheni Kaliuta) [1874003] - [net] bpf, sockmap: RCU dereferenced psock may be used outside RCU block (Yauheni Kaliuta) [1874003] - [net] bpf, sockmap: RCU splat with redirect and strparser error or TLS (Yauheni Kaliuta) [1874003] - [tools] bpf: tcp: bpf_cubic: fix spurious HYSTART_DELAY exit upon drop in min RTT (Yauheni Kaliuta) [1874003] - [net] bpf: Do not allow btf_ctx_access with __int128 types (Yauheni Kaliuta) [1874003] - [tools] bpf: Fix formatting in documentation for BPF helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Restore behaviour of CAP_SYS_ADMIN allowing the loading of networking bpf programs (Yauheni Kaliuta) [1874003] - [net] bpf: Set the number of exception entries properly for subprograms (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix CO-RE relocs against .text section (Yauheni Kaliuta) [1874003] - [tools] libbpf: Forward-declare bpf_stats_type for systems with outdated UAPI headers (Yauheni Kaliuta) [1874003] - [documentation] bpf: Document optval > PAGE_SIZE behavior for sockopt hooks (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Make sure optvals > PAGE_SIZE are bypassed (Yauheni Kaliuta) [1874003] - [net] bpf: Don't return EINVAL from {get, set}sockopt when optlen > PAGE_SIZE (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Add ringbuf map type to map command docs (Yauheni Kaliuta) [1874003] - [samples] bpf, xdp, samples: Fix null pointer dereference in *_user code (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Add ringbuf map to a list of known map types (Yauheni Kaliuta) [1874003] - [tools] bpf: Fix definition of bpf_ringbuf_output() helper in UAPI comments (Yauheni Kaliuta) [1874003] - [net] bpf: Undo internal BPF_PROBE_MEM in BPF insns dump (Yauheni Kaliuta) [1874003] - [tools] libbpf: Support pre-initializing .bss global variables (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Fix skeleton codegen (Yauheni Kaliuta) [1874003] - [net] bpf: Fix memlock accounting for sock_hash (Yauheni Kaliuta) [1874003] - [net] bpf: tcp: Recv() should return 0 when the peer socket is closed (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Exit on error in function codegen (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Fix memory leak in codegen error cases (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add cgroup_skb/egress test for load_bytes_relative (Yauheni Kaliuta) [1874003] - [net] net/filter: Permit reading NET in load_bytes_relative when MAC not set (Yauheni Kaliuta) [1874003] - [tools] tools, bpf: Do not force gcc as CC (Yauheni Kaliuta) [1874003] - [tools] libbpf: Define __WORDSIZE if not available (Yauheni Kaliuta) [1874003] - [net] bpf: Devmap adjust uapi for attach bpf program (Yauheni Kaliuta) [1874003] - [net] bpf: Reset data_meta before running programs attached to devmap entry (Yauheni Kaliuta) [1874003] - [scripts] scripts: Require pahole v1.16 when generating BTF (Yauheni Kaliuta) [1874003] - [net] bpf, sockhash: Synchronize delete from bucket list on map free (Yauheni Kaliuta) [1874003] - [net] bpf, sockhash: Fix memory leak when unlinking sockets in sock_hash_free (Yauheni Kaliuta) [1874003] - [net] bpf/sockmap: Fix kernel panic at __tcp_bpf_recvmsg (Yauheni Kaliuta) [1874003] - [kernel] bpf: rework the compat kernel probe handling (Yauheni Kaliuta) [1874003] - [kernel] bpf: handle the compat string in bpf_trace_copy_string better (Yauheni Kaliuta) [1874003] - [kernel] bpf: factor out a bpf_trace_copy_string helper (Yauheni Kaliuta) [1874003] - [net] mmap locking API: add mmap_read_trylock_non_owner() (Yauheni Kaliuta) [1874003] - [net] bpf: sockmap: use mmap locking API (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix ringbuf selftest sample counting undeterminism (Yauheni Kaliuta) [1874003] - [net] bpf: Fix an error code in check_btf_func() (Yauheni Kaliuta) [1874003] - [net] bpf: make bpf_check_uarg_tail_zero() use check_zeroed_user() (Yauheni Kaliuta) [1874003] - [lib] lib: introduce copy_struct_from_user() helper (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add a default $(CXX) value (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: Don't use $(COMPILE.c) (Yauheni Kaliuta) [1874003] - [s390] s390/bpf: Use bcr 0, 0 as tail call nop filler (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix verifier test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix sample_cnt shared between two threads (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Adapt cls_redirect to call csum_level helper (Yauheni Kaliuta) [1874003] - [net] bpf: Add csum_level helper for fixing up csum levels (Yauheni Kaliuta) [1874003] - [net] bpf: Fix up bpf_skb_adjust_room helper's skb csum setting (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add _GNU_SOURCE for reallocarray to ringbuf.c (Yauheni Kaliuta) [1874003] - [net] bpf: Use tracing helpers for lsm programs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add test for SO_BINDTODEVICE opt of bpf_setsockopt (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Add test for ktls with skb bpf ingress policy (Yauheni Kaliuta) [1874003] - [net] bpf: Fix running sk_skb program types with ktls (Yauheni Kaliuta) [1874003] - [net] bpf: Refactor sockmap redirect code so its easy to reuse (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add SEC name for xdp programs attached to device map (Yauheni Kaliuta) [1874003] - [net] bpf: Add support to attach bpf program to a devmap entry (Yauheni Kaliuta) [1874003] - [kernel] bpf: Use strncpy_from_unsafe_strict() in bpf_seq_printf() helper (Yauheni Kaliuta) [1874003] - [net] devmap: Formalize map value as a named struct (Yauheni Kaliuta) [1874003] - [net] bpf: Add rx_queue_mapping to bpf_sock (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add tests for write-only stacks/queues (Yauheni Kaliuta) [1874003] - [documentation] docs/bpf: Add BPF ring buffer design notes (Yauheni Kaliuta) [1874003] - [tools] bpf: Add BPF ringbuf and perf buffer benchmarks (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add BPF ringbuf selftests (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add BPF ring buffer support (Yauheni Kaliuta) [1874003] - [tools] bpf: Implement BPF ring buffer and verifier support for it (Yauheni Kaliuta) [1874003] - [net] bpf: Fix map permissions check (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Cleanup comments in test_maps (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Cleanup some file descriptors in test_maps (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix a typo in test_maps (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix perf_buffer__free() API for sparse allocs (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Test probe_* helpers from SCHED_CLS (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Add sk_msg helpers load and attach test (Yauheni Kaliuta) [1874003] - [net] bpf, sk_msg: Add get socket storage helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Extend bpf_base_func_proto helpers with probe_* and *current_task* (Yauheni Kaliuta) [1874003] - [net] bpf, sk_msg: Add some generic helpers that may be useful from sk_msg (Yauheni Kaliuta) [1874003] - [net] bpf: Fix spelling in comment explaining ARG1 in ___bpf_prog_run (Yauheni Kaliuta) [1874003] - [tools] libbpf: Install headers as part of make install (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add API to consume the perf ring buffer content (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Print correct error message when failing to load BTF (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Make capability check account for new BPF caps (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Clean subcommand help messages (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: CONFIG_LIRC required for test_lirc_mode2.sh (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: CONFIG_IPV6_SEG6_BPF required for test_seg6_loop.o (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add general instructions for test execution (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add printk to test_sk_lookup_kern to encode null ptr check (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, verifier case for non null pointer map value branch (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, verifier case for non null pointer check branch taken (Yauheni Kaliuta) [1874003] - [net] bpf: Verifier track null pointer branch_taken with JNE and JEQ (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1874003] - [tools] bpf, testing: Add get{peer, sock}name selftests to test_progs (Yauheni Kaliuta) [1874003] - [tools] bpf, bpftool: Enable get{peer, sock}name attach types (Yauheni Kaliuta) [1874003] - [tools] bpf, libbpf: Enable get{peer, sock}name attach types (Yauheni Kaliuta) [1874003] - [net] bpf: Add get{peer, sock}name attach types for sock_addr (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor kprobe, tail call kern progs map definition (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Add tracex7 test file to .gitignore (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor tail call user progs with libbpf (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor kprobe tracing user progs with libbpf (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor pointer error check with libbpf (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add ktls tests to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add blacklist to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add whitelist option to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, provide verbose option for selftests execution (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, break down test_sockmap into subtests (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, improve test_sockmap total bytes counter (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, print error in test_sockmap error cases (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, sockmap test prog run without setting cgroup (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, remove prints from sockmap tests (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, move sockmap bpf prog header into progs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Remove test_align leftovers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Move test_align under test_progs (Yauheni Kaliuta) [1874003] - [tools] libbpf, hashmap: Fix signedness warnings (Yauheni Kaliuta) [1874003] - [tools] libbpf, hashmap: Remove unused #include (Yauheni Kaliuta) [1874003] - [net] bpf: Fix check_return_code to only allowin trace_iter progs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use CAP_BPF and CAP_PERFMON in tests (Yauheni Kaliuta) [1874003] - [net] bpf: Implement CAP_BPF (Yauheni Kaliuta) [1874003] - [security] bpf, capability: Introduce CAP_BPF (Yauheni Kaliuta) [1874003] - [security] capabilities: Introduce CAP_PERFMON to kernel and user space (Yauheni Kaliuta) [1874003] - [tools] bpf, bpftool: Allow probing for CONFIG_HZ from kernel config (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test for sk helpers in cgroup skb (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add connect_fd_to_fd, connect_wait net helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Introduce bpf_sk_{, ancestor_}cgroup_id helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Allow skb_ancestor_cgroup_id helper in cgroup skb (Yauheni Kaliuta) [1874003] - [net] bpf: Allow sk lookup helpers in cgroup skb (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Fix spelling mistake "SIGALARM" -> "SIGALRM" (Yauheni Kaliuta) [1874003] - [net] bpf: Fix bpf_iter's task iterator logic (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test narrow loads for bpf_sock_addr.user_port (Yauheni Kaliuta) [1874003] - [net] bpf: Support narrow loads from bpf_sock_addr.user_port (Yauheni Kaliuta) [1874003] - [samples] samples/bpf: xdp_redirect_cpu: Set MAX_CPUS according to NR_CPUS (Yauheni Kaliuta) [1874003] - [samples] samples/bpf: Remove compiler warnings (Yauheni Kaliuta) [1874003] - [net] bpf: Enable bpf_iter targets registering ctx argument types (Yauheni Kaliuta) [1874003] - [net] bpf: Change func bpf_iter_unreg_target() signature (Yauheni Kaliuta) [1874003] - [net] bpf: net: Refactor bpf_iter target registration (Yauheni Kaliuta) [1874003] - [net] bpf: Add comments to interpret bpf_prog return values (Yauheni Kaliuta) [1874003] - [tools] bpf: Change btf_iter func proto prefix to "bpf_iter_" (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: selftests : Explain bpf_iter test failures with llvm 10.0.0 (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Add BPF triggering benchmark (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Fmod_ret prog and implement test_overhead as part of bench (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add benchmark runner infrastructure (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Extract parse_num_list into generic testing_helpers.c (Yauheni Kaliuta) [1874003] - [tools] tools, bpf: Synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1874003] - [scripts] bpf: Minor fixes to BPF helpers documentation (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Minor fixes for documentation (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Poison and replace kernel integer typedefs (Yauheni Kaliuta) [1874003] - [tools] bpf, libbpf: Replace zero-length array with flexible-array (Yauheni Kaliuta) [1874003] - [arm64] bpf, arm64: Optimize ADD, SUB, JMP BPF_K using arm64 add/sub immediates (Yauheni Kaliuta) [1874003] - [arm64] bpf, arm64: Optimize AND, OR, XOR, JSET BPF_K using arm64 logical immediates (Yauheni Kaliuta) [1874003] - [tools] bpf, runqslower: include proper uapi/bpf.h (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: selftests: Add iter progs for bpf_map/task/task_file (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Add bpf_iter support for bptool (Yauheni Kaliuta) [1874003] - [tools] tools/libpf: Add offsetof/container_of macro in bpf_helpers.h (Yauheni Kaliuta) [1874003] - [tools] tools/libbpf: Add bpf_iter support (Yauheni Kaliuta) [1874003] - [net] bpf: Support variable length array in tracing programs (Yauheni Kaliuta) [1874003] - [net] bpf: Handle spilled PTR_TO_BTF_ID properly when checking stack_boundary (Yauheni Kaliuta) [1874003] - [kernel] bpf: Add bpf_seq_printf and bpf_seq_write helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Add PTR_TO_BTF_ID_OR_NULL support (Yauheni Kaliuta) [1874003] - [net] bpf: Add task and task/file iterator targets (Yauheni Kaliuta) [1874003] - [net] bpf: Add bpf_map iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Implement common macros/helpers for target iterators (Yauheni Kaliuta) [1874003] - [net] bpf: Create file bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Create anonymous bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Implement bpf_seq_read() for bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Support bpf tracing/iter programs for BPF_LINK_UPDATE (Yauheni Kaliuta) [1874003] - [net] bpf: Support bpf tracing/iter programs for BPF_LINK_CREATE (Yauheni Kaliuta) [1874003] - [net] bpf: Allow loading of a bpf_iter program (Yauheni Kaliuta) [1874003] - [net] bpf: Implement an interface to register bpf_iter targets (Yauheni Kaliuta) [1874003] - [tools] bpf: Allow any port in bpf_bind helper (Yauheni Kaliuta) [1874003] - [net] net: Refactor arguments of inet{,6}_bind (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Move existing common networking parts into network_helpers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Generalize helpers to control background listener (Yauheni Kaliuta) [1874003] - [net] crypto: lib/sha1 - rename "sha" to "sha1" (Yauheni Kaliuta) [1874003] - [arm64] arm64: bpf: Annotate JITed code for BTI (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Add constants for new HINT instruction decode (Yauheni Kaliuta) [1874003] - [kernel] sysctl: Fix unused function warning (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use reno instead of dctcp (Yauheni Kaliuta) [1874003] - [net] bpf: Fix use-after-free of bpf_link when priming half-fails (Yauheni Kaliuta) [1874003] - [tools] bpf: Bpf_{g, s}etsockopt for struct bpf_sock_addr (Yauheni Kaliuta) [1874003] - [tools] bpf: Add selftest for BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add support for command BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [net] bpf: Sharing bpf runtime stats with BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test allowed maps for bpf_sk_select_reuseport (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix false uninitialized variable warning (Yauheni Kaliuta) [1874003] - [net] bpf: Fix unused variable warning (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use SOCKMAP for server sockets in bpf_sk_assign test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test that lookup on SOCKMAP/SOCKHASH is allowed (Yauheni Kaliuta) [1874003] - [net] bpf: Allow bpf_map_lookup_elem for SOCKMAP and SOCKHASH (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: Make libcap dependency optional (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: Allow unprivileged users to probe features (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: For "feature probe" define "full_mode" bool as global (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Disable ASAN instrumentation for mmap()'ed memory read (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix invalid memory reads in core_relo selftest (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix memory leak in extract_build_id() (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix memory leak and possible double-free in hashmap__clear (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Convert test_hashmap into test_progs test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add SAN_CFLAGS param to selftests build to allow sanitizers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Ensure test flavors use correct skeletons (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add BTF-defined map-in-map support (Yauheni Kaliuta) [1874003] - [tools] libbpf: Refactor map creation logic and fix cleanup leak (Yauheni Kaliuta) [1874003] - [tools] libbpf: Refactor BTF-defined map definition parsing logic (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add link bash completions (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add bpftool-link manpage (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add bpf_link show and pin support (Yauheni Kaliuta) [1874003] - [tools] bpftool: Expose attach_type-to-string array to non-cgroup code (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test bpf_link's get_next_id, get_fd_by_id, and get_obj_info (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add low-level APIs for new bpf_link commands (Yauheni Kaliuta) [1874003] - [net] bpf: Add support for BPF_OBJ_GET_INFO_BY_FD for bpf_link (Yauheni Kaliuta) [1874003] - [net] bpf: Support GET_FD_BY_ID and GET_NEXT_ID for bpf_link (Yauheni Kaliuta) [1874003] - [net] bpf: Allocate ID for bpf_link (Yauheni Kaliuta) [1874003] - [tools] libbpf: Remove unneeded semicolon in btf_dump_emit_type (Yauheni Kaliuta) [1874003] - [net] bpf, cgroup: Remove unused exports (Yauheni Kaliuta) [1874003] - [tools] libbpf: Return err if bpf_object__load failed (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add cls_redirect classifier (Yauheni Kaliuta) [1874003] - [net] bpf: Make verifier log more relevant by default (Yauheni Kaliuta) [1874003] - [net] bpf: add bpf_ktime_get_boot_ns() (Yauheni Kaliuta) [1874003] - [net] net: bpf: Make bpf_ktime_get_ns() available to non GPL programs (Yauheni Kaliuta) [1874003] - [net] net: bpf: Allow TC programs to call BPF_FUNC_skb_change_head (Yauheni Kaliuta) [1874003] - [net] bpf: Fix missing bpf_base_func_proto in cgroup_base_func_proto for CGROUP_NET=n (Yauheni Kaliuta) [1874003] - [tools] bpf_helpers.h: Add note for building with vmlinux.h or linux/types.h (Yauheni Kaliuta) [1874003] - [net] bpf: Enable more helpers for BPF_PROG_TYPE_CGROUP_{DEVICE, SYSCTL, SOCKOPT} (Yauheni Kaliuta) [1874003] - [tools] tools/bpf/bpftool: Remove duplicate headers (Yauheni Kaliuta) [1874003] - [net] bpf: Remove set but not used variable 'dst_known' (Yauheni Kaliuta) [1874003] - [net] xdp: export the DEV_MAP_BULK_SIZE macro (Yauheni Kaliuta) [1874003] - [kernel] trace/bpf_trace: Open access for CAP_PERFMON privileged process (Yauheni Kaliuta) [1874003] - [scsi] scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.5 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Reject CT request for MIB commands (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add FDMI Vendor MIB support (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix duplicate wq_create_version check (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Removed unused macros in lpfc_attr.c (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix scheduling call while in softirq context in lpfc_unreg_rpi (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc() (Dick Kennedy) [1887549] - [scsi] scsi: Remove unneeded break statements (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add dependency on CPU_FREQ (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove unneeded variable 'status' in lpfc_fcp_cpu_map_store() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Drop nodelist reference on error in lpfc_gen_req() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove set but not used 'qp' (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.4 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional events (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix spelling mistake "Cant" -> "Can't" (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.3 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix validation of bsg reply lengths (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix retry of PRLI when status indicates its unsupported (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix oops when unloading driver while running mds diags (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix RSCN timeout due to incorrect gidft counter (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix no message shown for lpfc_hdw_queue out of range value (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix FCoE speed reporting (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add missing misc_deregister() for lpfc_init() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying targetport (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix typo in comment for ULP (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add description for lpfc_release_rpi()'s 'ndlpl param (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix a bunch of kerneldoc misdemeanors (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add and rename a whole bunch of function parameter descriptions (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Use __printf() format notation (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix kerneldoc parameter formatting/misnaming/missing issues (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix some function parameter descriptions (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Ensure variable has the same stipulations as code using it (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix-up formatting/docrot where appropriate (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Provide description for lpfc_mem_alloc()'s 'align' param (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix-up around 120 documentation issues (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove unused variable 'pg_addr' (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Correct some pretty obvious misdocumentation (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix less-than-zero comparison of unsigned value (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix interrupt assignments when multiple vectors are supported on same CPU (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix inconsistent indenting (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.2 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add an internal trace log buffer (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add blk_io_poll support for latency improvment (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add support to display if adapter dumps are available (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Allow applications to issue Common Set Features mailbox command (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix language in 0373 message to reflect non-error message (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix shost refcount mismatch when deleting vport (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix stack trace seen while setting rrq active (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix oops due to overrun when reading SLI3 data (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix missing MDS functionality (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix unused assignment in lpfc_sli4_bsg_link_diag_test (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Avoid another null dereference in lpfc_sli4_hba_unset() (Dick Kennedy) [1887549] - [scsi] lpfc_debugfs: get rid of pointless access_ok() (Dick Kennedy) [1887549] - [scsi] lpfc: add nvmet discovery_event op support (Dick Kennedy) [1887549] - [scsi] scsi: core: Don't start concurrent async scan on same host (Ming Lei) [1874501] - [crypto] crypto: bcm - Verify GCM/CCM key length in setkey (Vladis Dronov) [1887389] - [x86] x86/cpufeatures: Add support for fast short REP; MOVSB (Steve Best) [1838265] - [scsi] scsi: mpt3sas: A small correction in _base_process_reply_queue (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix sync irqs (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Detect tampered Aero and Sea adapters (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Don't call disable_irq from IRQ poll handler (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Remove pci-dma-compat wrapper API (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Remove superfluous memset() (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Update driver version to 35.100.00.00 (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Postprocessing of target and LUN reset (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Add functions to check if any cmd is outstanding on Target and LUN (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Rename and export interrupt mask/unmask functions (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Cancel the running work during host reset (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Dump system registers for debugging (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Memset config_cmds.reply buffer with zeros (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix kdoc comments format (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix set but unused variable (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix error returns in BRM_status_show (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix unlock imbalance (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix spelling mistake (Tomas Henzl) [1851440] - [s390] s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl (Claudio Imbrenda) [1885962] - [scsi] scsi: megaraid: Make smp_affinity_enable static (Tomas Henzl) [1860910] - [scsi] remove ioremap_nocache and devm_ioremap_nocache (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Remove set but unused variable (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Fix compilation warnings (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Fix kdoc comments format (Tomas Henzl) [1860910] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Tomas Henzl) [1860910] - [net] ethtool: Add support for 100Gbps per lane link modes (Ivan Vecera) [1879202]- [netdrv] ibmveth: Fix use of ibmveth in a bridge (Steve Best) [1893294] - [x86] ima: add a new CONFIG for loading arch-specific policies (Bruno Meneguele) [1869758] - [netdrv] e1000e: Add support for Meteor Lake (Ken Cox) [1838750] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838750] - [netdrv] treewide: Use fallthrough pseudo-keyword (Ken Cox) [1838750] - [netdrv] e1000e: Remove unnecessary usages of memset (Ken Cox) [1838750] - [netdrv] e1000e: continue to init PHY even when failed to disable ULP (Ken Cox) [1838750] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838750] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838750] - [netdrv] e1000e: fix unused-function warning (Ken Cox) [1838750] - [netdrv] e1000e: Do not wake up the system via WOL if device wakeup is disabled (Ken Cox) [1838750] - [netdrv] e1000e: Relax condition to trigger reset for ME workaround (Ken Cox) [1838750] - [netdrv] e1000e: disable s0ix entry and exit flows for ME systems (Ken Cox) [1838750] - [netdrv] e1000e: Disable TSO for buffer overrun workaround (Ken Cox) [1838750] - [netdrv] e1000e: Warn if disabling ULP failed (Ken Cox) [1838750] - [scsi] scsi: fnic: Do not call 'scsi_done()' for unhandled commands (Govindarajulu Varadarajan) [1870397] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838749] - [netdrv] igbvf: use generic power management (Corinna Vinschen) [1838749] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838749] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838749] - [net] SUNRPC: Properly set the @subbuf parameter of xdr_buf_subsegment() (Steve Dickson) [1884361] - [net] SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()") (Steve Dickson) [1884361] - [net] netfilter: nf_queue: do not release refcouts until nf_reinject is done (Florian Westphal) [1886557] - [net] netfilter: nf_queue: place bridge physports into queue_entry struct (Florian Westphal) [1886557] - [net] netfilter: nf_queue: make nf_queue_entry_release_refs static (Florian Westphal) [1886557] - [firewire] firewire: Deprecate Firewire support in RHEL8 (Prarit Bhargava) [1871863] - [lib] Add pldmfw library for PLDM firmware update (Patrick Talbert) [1878278] - [lib] bitops: introduce the for_each_set_clump8 macro (Patrick Talbert) [1878278] - [mm] x86/ioremap: Map EFI runtime services data as encrypted for SEV (Lenny Szubowicz) [1883134] - [powerpc] Revert "powerpc/powernv/idle: Replace CPU feature check with PVR check" (Steve Best) [1882365] - [powerpc] powerpc/xive: Do not expose a debugfs file when XIVE is disabled (Steve Best) [1854526] - [kvm] powerpc/xive: Enforce load-after-store ordering when StoreEOI is active (Steve Best) [1854526] - [powerpc] powerpc/xive: Add a debugfs file to dump internal XIVE state (Steve Best) [1854526] - [net] openvswitch: add TTL decrement action (Eelco Chaudron) [1762450]- [kernel] futex: Adjust absolute futex timeouts with per time namespace offset (Waiman Long) [1548297] - [kernel] futex: Remove unused or redundant includes (Waiman Long) [1548297] - [include] vdso: Fix clocksource.h macro detection (Waiman Long) [1548297] - [x86] um: Fix header inclusion (Waiman Long) [1548297] - [arm64] arm64: vdso32: make vdso32 install conditional (Waiman Long) [1548297] - [arm64] ARM64: vdso32: Install vdso32 from vdso_install (Waiman Long) [1548297] - [arm64] vdso/treewide: Add vdso_data pointer argument to __arch_get_hw_counter() (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Provide vdso_update_begin/end() (Waiman Long) [1548297] - [include] lib/vdso: Allow to add architecture-specific vdso data (Waiman Long) [1548297] - [arm64] arm64: enable time namespace support (Waiman Long) [1548297] - [arm64] arm64/vdso: Restrict splitting VVAR VMA (Waiman Long) [1548297] - [arm64] arm64/vdso: Handle faults on timens page (Waiman Long) [1548297] - [arm64] arm64/vdso: Add time namespace page (Waiman Long) [1548297] - [arm64] arm64/vdso: Zap vvar pages when switching to a time namespace (Waiman Long) [1548297] - [arm64] arm64/vdso: use the fault callback to map vvar pages (Waiman Long) [1548297] - [arm64] arm64: compat: Allow 32-bit vdso and sigpage to co-exist (Waiman Long) [1548297] - [x86] x86/vdso: Unbreak paravirt VDSO clocks (Waiman Long) [1548297] - [lib] lib/vdso: Provide sanity check for cycles (again) (Waiman Long) [1548297] - [kernel] clocksource: Remove obsolete ifdef (Waiman Long) [1548297] - [tools] selftests/timens: handle a case when alarm clocks are not supported (Waiman Long) [1548297] - [arm64] arm64: vdso: Add --eh-frame-hdr to ldflags (Waiman Long) [1548297] - [arm64] arm64: vdso: Add -fasynchronous-unwind-tables to cflags (Waiman Long) [1548297] - [arm64] arm64: vdso: use consistent 'map' nomenclature (Waiman Long) [1548297] - [arm64] arm64: vdso: use consistent 'abi' nomenclature (Waiman Long) [1548297] - [arm64] arm64: vdso: simplify arch_vdso_type ifdeffery (Waiman Long) [1548297] - [arm64] arm64: vdso: remove aarch32_vdso_pages (Waiman Long) [1548297] - [arm64] arm64: vdso: Add '-Bsymbolic' to ldflags (Waiman Long) [1548297] - [x86] x86/vdso/vdso2c: Convert iterators to unsigned (Waiman Long) [1548297] - [x86] x86/vdso/vdso2c: Correct error messages on file open (Waiman Long) [1548297] - [include] vdso/datapage: Use correct clock mode name in comment (Waiman Long) [1548297] - [arm64] arm64: vdso: don't free unallocated pages (Waiman Long) [1548297] - [fs] proc, time/namespace: Show clock symbolic names in /proc/pid/timens_offsets (Waiman Long) [1548297] - [kernel] time/namespace: Add max_time_namespaces ucount (Waiman Long) [1548297] - [kernel] time/namespace: Fix time_for_children symlink (Waiman Long) [1548297] - [arm64] arm64: compat: Fix syscall number of compat_clock_getres (Waiman Long) [1548297] - [tools] selftests/timens: Remove duplicated include (Waiman Long) [1548297] - [kernel] sys/sysinfo: Respect boottime inside time namespace (Waiman Long) [1548297] - [clocksource] clocksource/drivers/arm_arch_timer: Fix vDSO clockmode when vDSO disabled (Waiman Long) [1548297] - [lib] lib/vdso: Enable common headers (Waiman Long) [1548297] - [x86] x86/vdso: Enable x86 to use common headers (Waiman Long) [1548297] - [arm64] arm64: vdso32: Include common headers in the vdso library (Waiman Long) [1548297] - [arm64] arm64: vdso: Include common headers in the vdso library (Waiman Long) [1548297] - [arm64] arm64: Introduce asm/vdso/processor.h (Waiman Long) [1548297] - [arm64] arm64: vdso32: Code clean up (Waiman Long) [1548297] - [include] linux/elfnote.h: Replace elf.h with UAPI equivalent (Waiman Long) [1548297] - [include] common: Introduce processor.h (Waiman Long) [1548297] - [include] linux/ktime.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/jiffies.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time64.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time32.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/math64.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/clocksource.h: Extract common header for vDSO (Waiman Long) [1548297] - [arm64] arm64: Introduce asm/vdso/clocksource.h (Waiman Long) [1548297] - [x86] x86: Introduce asm/vdso/clocksource.h (Waiman Long) [1548297] - [include] linux/limits.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/bits.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/const.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/bits.h: make BIT(), GENMASK(), and friends available in assembly (Waiman Long) [1548297] - [lib] lib/vdso: Allow architectures to provide the vdso data pointer (Waiman Long) [1548297] - [lib] lib/vdso: Allow architectures to override the ns shift operation (Waiman Long) [1548297] - [lib] lib/vdso: Allow fixed clock mode (Waiman Long) [1548297] - [include] lib/vdso: Move VCLOCK_TIMENS to vdso_clock_modes (Waiman Long) [1548297] - [kernel] lib/vdso: Avoid highres update if clocksource is not VDSO capable (Waiman Long) [1548297] - [lib] lib/vdso: Cleanup clock mode storage leftovers (Waiman Long) [1548297] - [arm64] ARM/arm64: vdso: Use common vdso clock mode storage (Waiman Long) [1548297] - [x86] x86/vdso: Use generic VDSO clock mode storage (Waiman Long) [1548297] - [kernel] clocksource: Add common vdso clock mode storage (Waiman Long) [1548297] - [x86] x86/vdso: Move VDSO clocksource state tracking to callback (Waiman Long) [1548297] - [include] clocksource: Cleanup struct clocksource and documentation (Waiman Long) [1548297] - [lib] lib/vdso: Allow the high resolution parts to be compiled out (Waiman Long) [1548297] - [lib] lib/vdso: Only read hrtimer_res when needed in __cvdso_clock_getres() (Waiman Long) [1548297] - [x86] x86/vdso: Mark the TSC clocksource path likely (Waiman Long) [1548297] - [kernel] lib/vdso: Update coarse timekeeper unconditionally (Waiman Long) [1548297] - [kernel] lib/vdso: Make __arch_update_vdso_data() logic understandable (Waiman Long) [1548297] - [kernel] alarmtimer: Unregister wakeup source when module get fails (Waiman Long) [1548297] - [tools] selftests/timens: Check for right timens offsets after fork and exec (Waiman Long) [1548297] - [tools] selftests/timens: Add a simple perf test for clock_gettime() (Waiman Long) [1548297] - [tools] selftests/timens: Add timer offsets test (Waiman Long) [1548297] - [tools] selftests/timens: Add procfs selftest (Waiman Long) [1548297] - [tools] selftests/timens: Add a test for clock_nanosleep() (Waiman Long) [1548297] - [tools] selftests/timens: Add a test for timerfd (Waiman Long) [1548297] - [tools] selftests/timens: Add Time Namespace test for supported clocks (Waiman Long) [1548297] - [fs] fs/proc: Introduce /proc/pid/timens_offsets (Waiman Long) [1548297] - [x86] x86/vdso: Zap vvar pages when switching to a time namespace (Waiman Long) [1548297] - [x86] x86/vdso: On timens page fault prefault also VVAR page (Waiman Long) [1548297] - [x86] x86/vdso: Handle faults on timens page (Waiman Long) [1548297] - [kernel] time: Allocate per-timens vvar page (Waiman Long) [1548297] - [x86] x86/vdso: Add time napespace page (Waiman Long) [1548297] - [x86] x86/vdso: Provide vdso_data offset on vvar_page (Waiman Long) [1548297] - [lib] lib/vdso: Prepare for time namespace support (Waiman Long) [1548297] - [x86] x86/vdso: Restrict splitting VVAR VMA (Waiman Long) [1548297] - [fs] fs/proc: Respect boottime inside time namespace for /proc/uptime (Waiman Long) [1548297] - [kernel] posix-timers: Make clock_nanosleep() time namespace aware (Waiman Long) [1548297] - [kernel] hrtimers: Prepare hrtimer_nanosleep() for time namespaces (Waiman Long) [1548297] - [kernel] alarmtimer: Make nanosleep() time namespace aware (Waiman Long) [1548297] - [kernel] posix-timers: Make timer_settime() time namespace aware (Waiman Long) [1548297] - [fs] timerfd: Make timerfd_settime() time namespace aware (Waiman Long) [1548297] - [kernel] time: Add do_timens_ktime_to_host() helper (Waiman Long) [1548297] - [kernel] posix-clocks: Wire up clock_gettime() with timens offsets (Waiman Long) [1548297] - [kernel] posix-timers: Use clock_get_ktime() in common_timer_get() (Waiman Long) [1548297] - [kernel] posix-clocks: Introduce clock_get_ktime() callback (Waiman Long) [1548297] - [kernel] alarmtimer: Provide get_timespec() callback (Waiman Long) [1548297] - [kernel] alarmtimer: Rename gettime() callback to get_ktime() (Waiman Long) [1548297] - [kernel] posix-clocks: Rename .clock_get_timespec() callbacks accordingly (Waiman Long) [1548297] - [kernel] posix-clocks: Rename the clock_get() callback to clock_get_timespec() (Waiman Long) [1548297] - [kernel] time: Add timens_offsets to be used for tasks in time namespace (Waiman Long) [1548297] - [kernel] ns: Introduce Time Namespace (Waiman Long) [1548297] - [lib] lib/vdso: Mark do_hres() and do_coarse() as __always_inline (Waiman Long) [1548297] - [lib] lib/vdso: Avoid duplication in __cvdso_clock_getres() (Waiman Long) [1548297] - [lib] lib/vdso: Let do_coarse() return 0 to simplify the callsite (Waiman Long) [1548297] - [x86] x86/vdso: Remove unused VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Remove unused VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [lib] lib/vdso: Remove checks on return value for 32 bit vDSO (Waiman Long) [1548297] - [lib] lib/vdso: Remove VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Expose BUILD_VDSO32 (Waiman Long) [1548297] - [include] lib/vdso: Add unlikely() hint into vdso_read_begin() (Waiman Long) [1548297] - [x86] y2038: vdso: change time_t to __kernel_old_time_t (Waiman Long) [1548297] - [uapi] y2038: add __kernel_old_timespec and __kernel_old_time_t (Waiman Long) [1548297] - [arm64] timekeeping/vsyscall: Update VDSO data unconditionally (Waiman Long) [1548297] - [x86] um: Fix VDSO compiler warning (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Prevent math overflow in BOOTTIME update (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Use legacy syscalls as fallback (Waiman Long) [1548297] - [x86] x86/vdso/32: Use 32bit syscall fallback (Waiman Long) [1548297] - [arm64] arm64: vdso: Cleanup Makefiles (Waiman Long) [1548297] - [arm64] arm64: vdso: fix flip/flop vdso build bug (Waiman Long) [1548297] - [x86] x86/vdso: Fix flip/flop vdso build bug (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Use __iter_div_u64_rem() (Waiman Long) [1548297] - [arm64] arm64: compat: Fix __arch_get_hw_counter() implementation (Waiman Long) [1548297] - [arm64] arm64: Fix __arch_get_hw_counter() implementation (Waiman Long) [1548297] - [arm64] arm64: compat: No need for pre-ARMv7 barriers on an ARMv8 system (Waiman Long) [1548297] - [arm64] arm64: vdso: Remove unnecessary asm-offsets.c definitions (Waiman Long) [1548297] - [include] vdso: Remove superfluous #ifdef __KERNEL__ in vdso/datapage.h (Waiman Long) [1548297] - [arm64] arm64: vdso: Enable vDSO compat support (Waiman Long) [1548297] - [arm64] arm64: compat: Get sigreturn trampolines from vDSO (Waiman Long) [1548297] - [arm64] arm64: elf: VDSO code page discovery (Waiman Long) [1548297] - [arm64] arm64: compat: VDSO setup for compat layer (Waiman Long) [1548297] - [arm64] arm64: vdso: Refactor vDSO code (Waiman Long) [1548297] - [arm64] arm64: compat: Add vDSO (Waiman Long) [1548297] - [arm64] arm64: compat: Generate asm offsets for signals (Waiman Long) [1548297] - [arm64] arm64: compat: Expose signal related structures (Waiman Long) [1548297] - [arm64] arm64: compat: Add missing syscall numbers (Waiman Long) [1548297] - [arm64] arm64: vdso: Build vDSO with -ffixed-x18 (Waiman Long) [1548297] - [arm64] arm64: vdso: Substitute gettimeofday() with C implementation (Waiman Long) [1548297] - [lib] lib/vdso: Build 32 bit specific functions in the right context (Waiman Long) [1548297] - [lib] lib/vdso: Make __cvdso_clock_getres() static (Waiman Long) [1548297] - [lib] lib/vdso: Make clock_getres() POSIX compliant again (Waiman Long) [1548297] - [lib] lib/vdso/32: Provide legacy syscall fallbacks (Waiman Long) [1548297] - [lib] lib/vdso: Move fallback invocation to the callers (Waiman Long) [1548297] - [lib] lib/vdso/32: Remove inconsistent NULL pointer checks (Waiman Long) [1548297] - [x86] lib/vdso: Make delta calculation work correctly (Waiman Long) [1548297] - [x86] x86/vdso: Add clock_gettime64() entry point (Waiman Long) [1548297] - [x86] x86/vdso: Add clock_getres() entry point (Waiman Long) [1548297] - [x86] x86/vdso: Switch to generic vDSO implementation (Waiman Long) [1548297] - [x86] x86/vdso: Prevent segfaults due to hoisted vclock reads (Waiman Long) [1548297] - [kernel] timekeeping: Provide a generic update_vsyscall() implementation (Waiman Long) [1548297] - [lib] lib/vdso: Add compat support (Waiman Long) [1548297] - [lib] lib/vdso: Provide generic VDSO implementation (Waiman Long) [1548297] - [include] hrtimer: Split out hrtimer defines into separate header (Waiman Long) [1548297] - [include] vdso: Define standardized vdso_datapage (Waiman Long) [1548297] - [arm64] arm64: arch_timer: mark functions as __always_inline (Waiman Long) [1548297] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 223 (Waiman Long) [1548297] - [clocksource] clocksource/drivers/arm_arch_timer: Don't trace count reader functions (Waiman Long) [1548297] - [arm64] arm64: vdso: Explicitly add build-id option (Waiman Long) [1548297] - [x86] gcc-9: properly declare the {pv, hv}clock_page storage (Waiman Long) [1548297] - [arm64] arm64: vdso: Fix clock_getres() for CLOCK_REALTIME (Waiman Long) [1548297] - [arm64] arm64: compat: Refactor aarch32_alloc_vdso_pages() (Waiman Long) [1548297] - [arm64] arm64: compat: Split kuser32 (Waiman Long) [1548297] - [arm64] arm64: compat: Alloc separate pages for vectors and sigpage (Waiman Long) [1548297] - [arm64] arm64: arch_timer: Ensure counter register reads occur with seqlock held (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Use arch_timer_read_counter to access stable counters (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Remove use of workaround static key (Waiman Long) [1548297] - [arm64] clocksource/arm_arch_timer: Drop use of static key in arch_timer_reg_read_stable (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Direcly assign set_next_event workaround (Waiman Long) [1548297] - [arm64] arm64: Use arch_timer_read_counter instead of arch_counter_get_cntvct (Waiman Long) [1548297] - [watchdog] watchdog/sbsa: Use arch_timer_read_counter instead of arch_counter_get_cntvct (Waiman Long) [1548297] - [kernel] alarmtimer: Return correct remaining time (Waiman Long) [1548297] - [arm64] arm64: vdso: use $(LD) instead of $(CC) to link VDSO (Waiman Long) [1548297] - [arm64] arm64: vdso: fix and clean-up Makefile (Waiman Long) [1548297] - [x86] x86/vdso: Remove hpet_page from vDSO (Waiman Long) [1548297] - [scripts] checksyscalls: fix up mq_timedreceive and stat exceptions (Waiman Long) [1548297] - [uapi] time: Add time_types.h (Waiman Long) [1548297] - [uapi] socket: Add struct __kernel_sock_timeval (Waiman Long) [1548297] - [arm64] arm64: asm-offsets: remove unused offsets (Waiman Long) [1548297] - [arm64] y2038: add 64-bit time_t syscalls to all 32-bit architectures (Waiman Long) [1548297] - [arm64] arm64: replace arm64-obj-* in Makefile with obj-* (Waiman Long) [1548297] - [x86] x86/vdso: Remove obsolete "fake section table" reservation (Waiman Long) [1548297] - [x86] x86/vdso: Rename variable to fix -Wshadow warning (Waiman Long) [1548297] - [x86] x86/vdso: Rearrange do_hres() to improve code generation (Waiman Long) [1548297] - [x86] x86/vdso: Document vgtod_ts better (Waiman Long) [1548297] - [x86] x86/vdso: Remove "memory" clobbers in the vDSO syscall fallbacks (Waiman Long) [1548297] - [x86] x86/vdso: Initialize the CPU/node NR segment descriptor earlier (Waiman Long) [1548297] - [x86] x86/vdso: Introduce helper functions for CPU and node number (Waiman Long) [1548297] - [x86] x86/segments/64: Rename the GDT PER_CPU entry to CPU_NUMBER (Waiman Long) [1548297] - [x86] x66/vdso: Add CLOCK_TAI support (Waiman Long) [1548297] - [x86] x86/vdso: Move cycle_last handling into the caller (Waiman Long) [1548297] - [x86] x86/vdso: Simplify the invalid vclock case (Waiman Long) [1548297] - [x86] x86/vdso: Replace the clockid switch case (Waiman Long) [1548297] - [x86] x86/vdso: Collapse coarse functions (Waiman Long) [1548297] - [x86] x86/vdso: Collapse high resolution functions (Waiman Long) [1548297] - [x86] x86/vdso: Introduce and use vgtod_ts (Waiman Long) [1548297] - [x86] x86/vdso: Use unsigned int consistently for vsyscall_gtod_data:: Seq (Waiman Long) [1548297] - [x86] x86/vdso: Enforce 64bit clocksource (Waiman Long) [1548297] - [x86] x86/time: Implement clocksource_arch_init() (Waiman Long) [1548297] - [kernel] clocksource: Provide clocksource_arch_init() (Waiman Long) [1548297] - [fs] fs/proc/uptime.c: use ktime_get_boottime_ts64 (Waiman Long) [1548297] - [include] y2038: Provide aliases for compat helpers (Waiman Long) [1548297] - [fs] kernel: add kcompat_sys_{f,}statfs64() (Waiman Long) [1548297] - [kernel] sysinfo: Remove get_monotonic_boottime() (Waiman Long) [1548297] - [kernel] posix-timers: Use new ktime_get_*_ts64() helpers (Waiman Long) [1548297] - [kernel] time: Use ktime_get_real_seconds() in time syscall (Waiman Long) [1548297] - [include] time: Introduce struct __kernel_itimerspec (Waiman Long) [1548297] - [scripts] kconfig: improve the recursive dependency report (Bruno Meneguele) [1890578] - [scripts] kconfig: report recursive dependency involving 'imply' (Bruno Meneguele) [1890578] - [scripts] kconfig: error out when seeing recursive dependency (Bruno Meneguele) [1890578] - [scsi] scsi: hpsa: Update copyright (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Remove pci-dma-compat wrapper API (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Use fallthrough pseudo-keyword (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Correct ctrl queue depth (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Bump version (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Increase controller error handling timeout (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Increase queue depth for external LUNs (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Correct rare oob condition (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: hpsa_ioctl(): Tidy up a bit (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Get rid of compat_alloc_user_space() (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Don't bother with vmalloc for BIG_IOCTL_Command_struct (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Lift {BIG_, }IOCTL_Command_struct copy{in, out} into hpsa_ioctl() (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: remove ioremap_nocache and devm_ioremap_nocache (Joseph Szczypek) [1861541] - [tools] selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load workaround (Gustavo Duarte) [1887442] - [powerpc] powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation (Gustavo Duarte) [1887442] - [scsi] scsi: smartpqi: Update copyright (Don Brace) [1861538] - [scsi] scsi: smartpqi: Bump version to 1.2.16-010 (Don Brace) [1861538] - [scsi] scsi: smartpqi: Add RAID bypass counter (Don Brace) [1861538] - [scsi] scsi: smartpqi: Avoid crashing kernel for controller issues (Don Brace) [1861538] - [scsi] scsi: smartpqi: Update logical volume size after expansion (Don Brace) [1861538] - [scsi] scsi: smartpqi: Add id support for SmartRAID 3152-8i (Don Brace) [1861538] - [scsi] scsi: smartpqi: Identify physical devices without issuing INQUIRY (Don Brace) [1861538] - [mm] mm: simplify find_min_pfn_with_active_regions() (Baoquan He) [1844157] - [mm] mm: clean up free_area_init_node() and its helpers (Baoquan He) [1844157] - [mm] mm: rename free_area_init_node() to free_area_init_memoryless_node() (Baoquan He) [1844157] - [mm] mm: free_area_init: allow defining max_zone_pfn in descending order (Baoquan He) [1844157] - [powerpc] mm: remove early_pfn_in_nid() and CONFIG_NODES_SPAN_OTHER_NODES (Baoquan He) [1844157] - [mm] mm: memmap_init: iterate over memblock regions rather that check each PFN (Baoquan He) [1844157] - [mm] arm64: simplify detection of memory zone boundaries for UMA configs (Baoquan He) [1844157] - [mm] mm: use free_area_init() instead of free_area_init_nodes() (Baoquan He) [1844157] - [mm] mm: free_area_init: use maximal zone PFNs rather than zone sizes (Baoquan He) [1844157] - [mm] mm: remove CONFIG_HAVE_MEMBLOCK_NODE_MAP option (Baoquan He) [1844157] - [mm] numa: make "nr_node_ids" unsigned int (Baoquan He) [1844157] - [mm] mm: make early_pfn_to_nid() and related defintions close to each other (Baoquan He) [1844157] - [mm] mm: memblock: replace dereferences of memblock_region.nid with API calls (Baoquan He) [1844157] - [mm] mm: factor out next_present_section_nr() (Baoquan He) [1844157] - [mm] mm/page_alloc: fix and rework pfn handling in memmap_init_zone() (Baoquan He) [1844157] - [mm] mm/page_alloc: skip non present sections on zone initialization (Baoquan He) [1844157] - [mm] mm: move mirrored memory specific code outside of memmap_init_zone (Baoquan He) [1844157] - [mm] mm: calculate deferred pages after skipping mirrored memory (Baoquan He) [1844157] - [mm] mm/memblock.c: fix a typo in __next_mem_pfn_range() comments (Baoquan He) [1844157] - [mm] memblock: remove memblock_{set, clear}_region_flags (Baoquan He) [1844157] - [mm] mm: replace all open encodings for NUMA_NO_NODE (Baoquan He) [1844157] - [powerpc] lockdep: Only trace IRQ edges (Waiman Long) [1885084] - [arm64] arm64: Implement arch_irqs_disabled() (Waiman Long) [1885084] - [include] locking/lockdep: Cleanup (Waiman Long) [1885084] - [include] lockdep: Use raw_cpu_*() for per-cpu variables (Waiman Long) [1885084] - [x86] locking/seqlock, headers: Untangle the spaghetti monster (Waiman Long) [1885084] - [misc] vmw_balloon: Explicitly include linux/io.h for virt_to_phys() (Waiman Long) [1885084] - [x86] x86: i8259: Add missing include file (Waiman Long) [1885084] - [include] seqcount: More consistent seqprop names (Waiman Long) [1885084] - [include] seqcount: Compress SEQCNT_LOCKNAME_ZERO() (Waiman Long) [1885084] - [include] seqlock: Fold seqcount_LOCKNAME_init() definition (Waiman Long) [1885084] - [include] seqlock: Fold seqcount_LOCKNAME_t definition (Waiman Long) [1885084] - [include] seqlock: s/__SEQ_LOCKDEP/__SEQ_LOCK/g (Waiman Long) [1885084] - [kernel] hrtimer: Use sequence counter with associated raw spinlock (Waiman Long) [1885084] - [kernel] timekeeping: Use sequence counter with associated raw spinlock (Waiman Long) [1885084] - [kernel] timekeeping: Use proper seqcount initializer (Waiman Long) [1885084] - [init] sched: tasks: Use sequence counter with associated spinlock (Waiman Long) [1885084] - [kernel] lockdep: Refactor IRQ trace events fields into struct (Waiman Long) [1885084] - [drm] dma-buf: Use sequence counter with associated wound/wait mutex (Waiman Long) [1885084] - [dma-buf] dma-buf: Remove custom seqcount lockdep class key (Waiman Long) [1885084] - [include] seqlock: Align multi-line macros newline escapes at 72 columns (Waiman Long) [1885084] - [documentation] seqlock: Extend seqcount API with associated locks (Waiman Long) [1885084] - [include] seqlock: lockdep assert non-preemptibility on seqcount_t write (Waiman Long) [1885084] - [lib] lockdep: Add preemption enabled/disabled assertion APIs (Waiman Long) [1885084] - [include] seqlock: Implement raw_seqcount_begin() in terms of raw_read_seqcount() (Waiman Long) [1885084] - [include] seqlock: Add kernel-doc for seqcount_t and seqlock_t APIs (Waiman Long) [1885084] - [include] seqlock: Reorder seqcount_t and seqlock_t API definitions (Waiman Long) [1885084] - [include] seqlock: seqcount_t latch: End read sections with read_seqcount_retry() (Waiman Long) [1885084] - [include] seqlock: Properly format kernel-doc code samples (Waiman Long) [1885084] - [documentation] Documentation: locking: Describe seqlock design and usage (Waiman Long) [1885084] - [include] seqlock: Require WRITE_ONCE surrounding raw_seqcount_barrier (Waiman Long) [1885084] - [include] seqlock, kcsan: Add annotations for KCSAN (Waiman Long) [1885084] - [include] include/linux/compiler.h: Introduce data_race(expr) macro (Waiman Long) [1885084] - [kernel] kcsan: Add Kernel Concurrency Sanitizer infrastructure (Waiman Long) [1885084] - [include] locking/qspinlock: Do not include atomic.h from qspinlock_types.h (Waiman Long) [1885084] - [include] locking/atomic: Move ATOMIC_INIT into linux/types.h (Waiman Long) [1885084] - [connector] connector/cn_proc: Protect send_msg() with a local lock (Waiman Long) [1885084] - [mm] mm/swap: Use local_lock for protection (Waiman Long) [1885084] - [include] radix-tree: Use local_lock for protection (Waiman Long) [1885084] - [include] locking: Introduce local_lock() (Waiman Long) [1885084] - [documentation] Documentation/locking/locktypes: Minor copy editor fixes (Waiman Long) [1885084] - [documentation] Documentation/locking/locktypes: Further clarifications and wordsmithing (Waiman Long) [1885084] - [documentation] Documentation: Add lock ordering and nesting documentation (Waiman Long) [1885084] - [mm] mm/swap.c: trivial mark_page_accessed() cleanup (Waiman Long) [1885084] - [lib] radix tree: Remove radix_tree_maybe_preload_order (Waiman Long) [1885084] - [kernel] locking/lockdep: Fix "USED" <- "IN-NMI" inversions (Waiman Long) [1885084] - [kernel] lockdep: Remove lockdep_hardirq{s_enabled, _context}() argument (Waiman Long) [1885084] - [kernel] lockdep: Change hardirq{s_enabled, _context} to per-cpu variables (Waiman Long) [1885084] - [kernel] x86/entry: Rename trace_hardirqs_off_prepare() (Waiman Long) [1885084] - [kernel] lockdep: Prepare for NMI IRQ state tracking (Waiman Long) [1885084] - [include] lockdep: Move list.h inclusion into lockdep.h (Waiman Long) [1885084] - [include] lockdep: Split header file into lockdep and lockdep_types (Waiman Long) [1885084] - [kernel] lockdep: __always_inline more for noinstr (Waiman Long) [1885084] - [kernel] lockdep: Prepare for noinstr sections (Waiman Long) [1885084] - [kernel] tracing: Provide lockdep less trace_hardirqs_on/off() variants (Waiman Long) [1885084] - [include] vmlinux.lds.h: Create section for protection against instrumentation (Waiman Long) [1885084] - [kernel] locking/lockdep: Replace zero-length array with flexible-array (Waiman Long) [1885084] - [kernel] hrtimer: Don't dereference the hrtimer pointer after the callback (Waiman Long) [1885084] - [kernel] hrtimer: Add missing sparse annotation for __run_timer() (Waiman Long) [1885084] - [kernel] lockdep: Always inline lockdep_{off,on}() (Waiman Long) [1885084] - [kernel] locking/lockdep: Improve 'invalid wait context' splat (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_{hard, soft}{irq_context, irqs_enabled}() (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_softirqs_{on,off}() (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_hardirq_{enter, exit}() (Waiman Long) [1885084] - [kernel] completion: Use lockdep_assert_RT_in_threaded_ctx() in complete_all() (Waiman Long) [1885084] - [usb] completion: Use simple wait queues (Waiman Long) [1885084] - [kernel] sched/swait: Prepare usage in completions (Waiman Long) [1885084] - [kernel] lockdep: Add posixtimer context tracing bits (Waiman Long) [1885084] - [kernel] lockdep: Annotate irq_work (Waiman Long) [1885084] - [kernel] lockdep: Add hrtimer context tracing bits (Waiman Long) [1885084] - [include] lockdep: Introduce wait-type checks (Waiman Long) [1885084] - [kernel] lockdep: Teach lockdep about "USED" <- "IN-NMI" inversions (Waiman Long) [1885084] - [kernel] locking/lockdep: Rework lockdep_lock (Waiman Long) [1885084] - [kernel] locking/lockdep: Fix bad recursion pattern (Waiman Long) [1885084] - [s390] s390/ftrace: fix endless recursion in function_graph tracer (Waiman Long) [1885084] - [s390] s390/time: ensure get_clock_monotonic() returns monotonic values (Waiman Long) [1885084] - [kernel] irq_work: Fix IRQ_WORK_BUSY bit clearing (Waiman Long) [1885084] - [kernel] irq_work: Slightly simplify IRQ_WORK_PENDING clearing (Waiman Long) [1885084] - [kernel] irq_work: Fix irq_work_claim() memory ordering (Waiman Long) [1885084] - [kernel] irq_work: Convert flags to atomic_t (Waiman Long) [1885084] - [kernel] kprobes: Prohibit probing on lockdep functions (Waiman Long) [1885084] - [kernel] kprobes: Prohibit probing on hardirq tracers (Waiman Long) [1885084] - [lib] locking/lockdep: Make global debug_locks* variables read-mostly (Waiman Long) [1885084] - [kernel] locking/lockdep: Delete unnecessary #include (Waiman Long) [1885084] - [kernel] tracing: More reverting of "tracing: Centralize preemptirq tracepoints and unify their usage" (Waiman Long) [1885084] - [kernel] tracing/irqsoff: Handle preempt_count for different configs (Waiman Long) [1885084] - [kernel] tracing: Partial revert of "tracing: Centralize preemptirq tracepoints and unify their usage" (Waiman Long) [1885084] - [kernel] tracing: irqsoff: Account for additional preempt_disable (Waiman Long) [1885084] - [kernel] tracing: Centralize preemptirq tracepoints and unify their usage (Waiman Long) [1885084] - [kernel] tracing/irqsoff: Split reset into separate functions (Waiman Long) [1885084] - [kernel] sched/fair: Use dst group while checking imbalance for NUMA balancer (Phil Auld) [1877360] - [kernel] sched/fair: Reduce busy load balance interval (Phil Auld) [1877360] - [kernel] sched/fair: Reduce minimal imbalance threshold (Phil Auld) [1877360] - [kernel] sched/fair: Minimize concurrent LBs between domain level (Phil Auld) [1877360] - [kernel] sched/fair: Fix wrong cpu selecting from isolated domain (Phil Auld) [1877360] - [kernel] sched/fair: Relax constraint on task's load during load balance (Phil Auld) [1877360] - [kernel] sched/numa: Use runnable_avg to classify node (Phil Auld) [1877360] - [kernel] sched: Remove duplicated tick_nohz_full_enabled() check (Phil Auld) [1877360] - [kernel] sched: Warn if garbage is passed to default_wake_function() (Phil Auld) [1877360] - [kernel] sched: nohz: stop passing around unused "ticks" parameter (Phil Auld) [1877360] - [kernel] sched/fair: update_pick_idlest() Select group with lowest group_util when idle_cpus are equal (Phil Auld) [1877360] - [kernel] sched: Better document ttwu() (Phil Auld) [1877360] - [kernel] sched/fair: handle case of task_h_load() returning 0 (Phil Auld) [1877360] - [kernel] sched: Fix unreliable rseq cpu_id for new tasks (Phil Auld) [1877360] - [kernel] sched/core: s/WF_ON_RQ/WQ_ON_CPU/ (Phil Auld) [1877360] - [include] sched/core: Remove mmdrop() definition (Phil Auld) [1877360] - [kernel] sched/fair: Optimize dequeue_task_fair() (Phil Auld) [1877360] - [kernel] sched/pelt: Cleanup PELT divider (Phil Auld) [1877360] - [kernel] sched/fair: Fix NOHZ next idle balance (Phil Auld) [1877360] - [kernel] sched: correct SD_flags returned by tl->sd_flags() (Phil Auld) [1877360] - [kernel] sched/fair: Remove unused 'sd' parameter from scale_rt_capacity() (Phil Auld) [1877360] - [kernel] sched/idle, stop: Remove .get_rr_interval from sched_class (Phil Auld) [1877360] - [kernel] sched/core: Remove redundant 'preempt' param from sched_class->yield_to_task() (Phil Auld) [1877360] - [kernel] sched/pelt: Remove redundant cap_scale() definition (Phil Auld) [1877360] - [kernel] sched/pelt: Sync util/runnable_sum with PELT window when propagating (Phil Auld) [1877360] - [kernel] sched/cpuacct: Fix charge cpuacct.usage_sys (Phil Auld) [1877360] - [kernel] sched/cpuacct: Use __this_cpu_add() instead of this_cpu_ptr() (Phil Auld) [1877360] - [kernel] sched/fair: Fix unthrottle_cfs_rq() for leaf_cfs_rq list (Phil Auld) [1877360] - [kernel] sched/core: Simplify sched_init() (Phil Auld) [1877360] - [kernel] sched/fair: Mark sched_init_granularity __init (Phil Auld) [1877360] - [kernel] sched/core: Fix illegal RCU from offline CPUs (Phil Auld) [1877360] - [kernel] sched/fair: Use __this_cpu_read() in wake_wide() (Phil Auld) [1877360] - [kernel] sched: Extract the task putting code from pick_next_task() (Phil Auld) [1877360] - [kernel] sched: Make newidle_balance() static again (Phil Auld) [1877360] - [kernel] sched/fair: Remove distribute_running from CFS bandwidth (Phil Auld) [1877360] - [kernel] sched/fair: Simplify the code of should_we_balance() (Phil Auld) [1877360] - [kernel] sched/debug: Fix trival print_task() format (Phil Auld) [1877360] - [kernel] sched/debug: Factor out printing formats into common macros (Phil Auld) [1877360] - [kernel] sched/debug: Remove redundant macro define (Phil Auld) [1877360] - [kernel] sched/core: Remove unused rq::last_load_update_tick (Phil Auld) [1877360] - [kernel] sched/fair: Align rq->avg_idle and rq->avg_scan_cost (Phil Auld) [1877360] - [kernel] sched/fair: Improve spreading of utilization (Phil Auld) [1877360] - [kernel] sched/fair: Fix condition of avg_load calculation (Phil Auld) [1877360] - [kernel] kthread: Do not preempt current task if it is going to call schedule() (Phil Auld) [1877360] - [kernel] sched/core: Distribute tasks within affinity masks (Phil Auld) [1877360] - [kernel] time/sched_clock: Expire timer in hardirq context (Phil Auld) [1877360] - [kernel] sched/deadline: Make two functions static (Phil Auld) [1877360] - [mm] slab: store tagged freelist for off-slab slabmgmt (Waiman Long) [1887067] - [mm] mm/kasan: fix false positive invalid-free reports with CONFIG_KASAN_SW_TAGS=y (Waiman Long) [1887067] - [arm64] arm64: avoid clang warning about self-assignment (Waiman Long) [1887067] - [mm] kasan: add memory corruption identification for software tag-based mode (Waiman Long) [1887067] - [mm] mm/kasan: print frame description for stack bugs (Waiman Long) [1887067] - [mm] kasan: initialize tag to 0xff in __kasan_kmalloc (Waiman Long) [1887067] - [mm] kasan: Makefile: Replace -pg with CC_FLAGS_FTRACE (Waiman Long) [1887067] - [mm] x86/uaccess, kasan: Fix KASAN vs SMAP (Waiman Long) [1887067] - [mm] mm/kasan: Simplify stacktrace handling (Waiman Long) [1887067] - [mm] kasan: fix variable 'tag' set but not used warning (Waiman Long) [1887067] - [mm] slub: fix a crash with SLUB_DEBUG + KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan, slab: remove redundant kasan_slab_alloc hooks (Waiman Long) [1887067] - [mm] kasan, slab: make freelist stored without tags (Waiman Long) [1887067] - [mm] kasan, slab: fix conflicts with CONFIG_HARDENED_USERCOPY (Waiman Long) [1887067] - [mm] kasan: prevent tracing of tags.c (Waiman Long) [1887067] - [mm] kasan: fix random seed generation for tag-based mode (Waiman Long) [1887067] - [mm] slub: fix SLAB_CONSISTENCY_CHECKS + KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan, slub: fix more conflicts with CONFIG_SLAB_FREELIST_HARDENED (Waiman Long) [1887067] - [mm] kasan, slub: fix conflicts with CONFIG_SLAB_FREELIST_HARDENED (Waiman Long) [1887067] - [mm] kasan, slub: move kasan_poison_slab hook before page_address (Waiman Long) [1887067] - [mm] kmemleak: account for tagged pointers when calculating pointer range (Waiman Long) [1887067] - [mm] kasan, kmemleak: pass tagged pointers to kmemleak (Waiman Long) [1887067] - [mm] kasan: fix assigning tags twice (Waiman Long) [1887067] - [mm] kasan: mark file common so ftrace doesn't trace it (Waiman Long) [1887067] - [mm] kasan: fix krealloc handling for tag-based mode (Waiman Long) [1887067] - [mm] kasan: make tag based mode work with CONFIG_HARDENED_USERCOPY (Waiman Long) [1887067] - [arm64] kasan, arm64: use ARCH_SLAB_MINALIGN instead of manual aligning (Waiman Long) [1887067] - [mm] kasan: add SPDX-License-Identifier mark to source files (Waiman Long) [1887067] - [documentation] kasan: update documentation (Waiman Long) [1887067] - [arm64] kasan, arm64: select HAVE_ARCH_KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan: add __must_check annotations to kasan hooks (Waiman Long) [1887067] - [mm] kasan, mm, arm64: tag non slab memory allocated via pagealloc (Waiman Long) [1887067] - [arm64] kasan, arm64: add brk handler for inline instrumentation (Waiman Long) [1887067] - [mm] kasan: add hooks implementation for tag-based mode (Waiman Long) [1887067] - [mm] kasan: add bug reporting routines for tag-based mode (Waiman Long) [1887067] - [mm] kasan: split out generic_report.c from report.c (Waiman Long) [1887067] - [mm] kasan, mm: perform untagged pointers comparison in krealloc (Waiman Long) [1887067] - [mm] kasan, arm64: enable top byte ignore for the kernel (Waiman Long) [1887067] - [mm] kasan, arm64: fix up fault handling logic (Waiman Long) [1887067] - [mm] kasan: preassign tags to objects with ctors or SLAB_TYPESAFE_BY_RCU (Waiman Long) [1887067] - [arm64] kasan, arm64: untag address in _virt_addr_is_linear (Waiman Long) [1887067] - [arm64] kasan: add tag related helper functions (Waiman Long) [1887067] - [mm] kasan: initialize shadow to 0xff for tag-based mode (Waiman Long) [1887067] - [mm] kasan: rename kasan_zero_page to kasan_early_shadow_page (Waiman Long) [1887067] - [arm64] kasan, arm64: adjust shadow size for tag-based mode (Waiman Long) [1887067] - [mm] kasan: add CONFIG_KASAN_GENERIC and CONFIG_KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan: rename source files to reflect the new naming scheme (Waiman Long) [1887067] - [mm] kasan: move common generic and tag-based code to common.c (Waiman Long) [1887067] - [mm] kasan, slub: handle pointer tags in early_kmem_cache_node_alloc (Waiman Long) [1887067] - [mm] kasan, mm: change hooks signatures (Waiman Long) [1887067] - [arm64] arm64: kasan: Increase stack size for KASAN_EXTRA (Waiman Long) [1887067] - [s390] s390/cio: add cond_resched() in the slow_eval_known_fn() loop (Claudio Imbrenda) [1885961] - [s390] scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point (Claudio Imbrenda) [1885876] - [tools] selftests/vm/gup_benchmark.c: match gup struct to kernel (Rafael Aquini) [1873952] - [uapi] redhat: Fix the number of KVM_CAP_S390_DIAG318 (Thomas Huth) [1659413] - [s390] setup: diag 318: refactor struct (Thomas Huth) [1659413] - [s390] kvm: diagnose 0x318 sync and reset (Thomas Huth) [1659413] - [mm] swap: reduce lock contention on swap cache from swap slots allocation (Nico Pache) [1839049] - [mm] mm/swapfile.c: use prandom_u32_max() (Nico Pache) [1839049] - [mm] swap: try to scan more free slots even when fragmented (Nico Pache) [1839049] - [mm] mm/swapfile.c: move inode_lock out of claim_swapfile (Nico Pache) [1839049] - [mm] vfs: don't allow writes to swap files (Nico Pache) [1839049] - [mm] mm: set S_SWAPFILE on blockdev swap devices (Nico Pache) [1839049] - [edac] EDAC/ie31200: Add Intel Coffee Lake CPU support (Aristeu Rozanski) [1847567]- [netdrv] macsec: avoid use-after-free in macsec_handle_frame() (Balazs Nemeth) [1890122] - [include] netlink: check for null extack in cookie helpers (Ivan Vecera) [1878274] - [net] ethtool: Don't omit the netlink reply if no features were changed (Ivan Vecera) [1878274] - [net] ethtool: Account for hw_features in netlink interface (Ivan Vecera) [1878274] - [net] ethtool: Fix preserving of wanted feature bits in netlink interface (Ivan Vecera) [1878274] - [net] ethtool: ethnl_set_linkmodes: remove redundant null check (Ivan Vecera) [1878274] - [net] ethtool: fix genlmsg_put() failure handling in ethnl_default_dumpit() (Ivan Vecera) [1878274] - [net] ethtool: add missing string for NETIF_F_GSO_TUNNEL_REMCSUM (Ivan Vecera) [1878274] - [net] ethtool: Fix check in ethtool_rx_flow_rule_create (Ivan Vecera) [1878274] - [net] ethtool: linkinfo: remove an unnecessary NULL check (Ivan Vecera) [1878274] - [net] ethtool: propagate get_coalesce return value (Ivan Vecera) [1878274] - [net] ethtool: don't call set_channels in drivers if config didn't change (Ivan Vecera) [1878274] - [net] ethtool: check if there is at least one channel for TX/RX in the core (Ivan Vecera) [1878274] - [net] drivers: Remove inclusion of vermagic header (Ivan Vecera) [1878274] - [net] ethtool: count header size in reply size estimate (Ivan Vecera) [1878274] - [net] ethtool: provide timestamping information with TSINFO_GET request (Ivan Vecera) [1878274] - [net] ethtool: add timestamping related string sets (Ivan Vecera) [1878274] - [net] ethtool: add EEE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set EEE settings with EEE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide EEE settings with EEE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add PAUSE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set pause parameters with PAUSE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide pause parameters with PAUSE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add COALESCE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set coalescing parameters with COALESCE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide coalescing parameters with COALESCE_GET request (Ivan Vecera) [1878274] - [net] ethtool: fix reference leak in ethnl_set_privflags() (Ivan Vecera) [1878274] - [net] ethtool: fix incorrect tx-checksumming settings reporting (Ivan Vecera) [1878274] - [include] ethtool.h: Replace zero-length array with flexible-array member (Ivan Vecera) [1878274] - [net] ethtool: fix reference leak in some *_SET handlers (Ivan Vecera) [1878274] - [net] ethtool: reject unrecognized request flags (Ivan Vecera) [1878274] - [include] netlink: add nl_set_extack_cookie_u32() (Ivan Vecera) [1878274] - [net] netlink: allow extack cookie also for error messages (Ivan Vecera) [1878274] - [net] ethtool: fix spelling mistake "exceeeds" -> "exceeds" (Ivan Vecera) [1878274] - [net] ethtool: add CHANNELS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device channel counts with CHANNELS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide channel counts with CHANNELS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add RINGS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device ring sizes with RINGS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide ring sizes with RINGS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add PRIVFLAGS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device private flags with PRIVFLAGS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide private flags with PRIVFLAGS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add FEATURES_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set netdev features with FEATURES_SET request (Ivan Vecera) [1878274] - [net] ethtool: add ethnl_parse_bitset() helper (Ivan Vecera) [1878274] - [net] ethtool: provide netdev features with FEATURES_GET request (Ivan Vecera) [1878274] - [net] ethtool: update mapping of features to legacy ioctl requests (Ivan Vecera) [1878274] - [net] ethtool: rename ethnl_parse_header() to ethnl_parse_header_dev_get() (Ivan Vecera) [1878274] - [include] hns: reject unsupported coalescing params (Ivan Vecera) [1878274] - [include] net: liquidio: reject unsupported coalescing params (Ivan Vecera) [1878274] - [net] ethtool: Factored out similar ethtool link settings for virtual devices to core (Ivan Vecera) [1878274] - [net] ethtool: limit bitset size (Ivan Vecera) [1878274] - [net] ethtool: fix application of verbose no_mask bitset (Ivan Vecera) [1878274] - [net] ethtool: Add support for low latency RS FEC (Ivan Vecera) [1878274] - [net] ethtool: add WOL_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set wake-on-lan settings with WOL_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide WoL settings with WOL_GET request (Ivan Vecera) [1878274] - [net] ethtool: add DEBUG_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set message mask with DEBUG_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide message mask with DEBUG_GET request (Ivan Vecera) [1878274] - [net] ethtool: fix kernel-doc descriptions (Ivan Vecera) [1878274] - [net] ethtool: potential NULL dereference in strset_prepare_data() (Ivan Vecera) [1878274] - [net] ethtool: fix ->reply_size() error handling (Ivan Vecera) [1878274] - [net] ethtool: fix a memory leak in ethnl_default_start() (Ivan Vecera) [1878274] - [net] ethtool: remove set but not used variable 'lsettings' (Ivan Vecera) [1878274] - [net] ethtool: provide link state with LINKSTATE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add LINKMODES_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set link modes related data with LINKMODES_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide link mode information with LINKMODES_GET request (Ivan Vecera) [1878274] - [net] ethtool: add LINKINFO_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: add default notification handler (Ivan Vecera) [1878274] - [net] ethtool: set link settings with LINKINFO_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide link settings with LINKINFO_GET request (Ivan Vecera) [1878274] - [net] ethtool: provide string sets with STRSET_GET request (Ivan Vecera) [1878274] - [net] ethtool: default handlers for GET requests (Ivan Vecera) [1878274] - [net] ethtool: support for netlink notifications (Ivan Vecera) [1878274] - [net] ethtool: netlink bitset handling (Ivan Vecera) [1878274] - [net] ethtool: helper functions for netlink interface (Ivan Vecera) [1878274] - [net] ethtool: introduce ethtool netlink interface (Ivan Vecera) [1878274] - [net] ethtool: provide link mode names as a string set (Ivan Vecera) [1878274] - [net] ethtool: move string arrays into common file (Ivan Vecera) [1878274] - [net] ethtool: move RHEL specific stuff to separate header file (Ivan Vecera) [1878274] - [net] ethtool: move to its own directory (Ivan Vecera) [1878274] - [net] rtnetlink: provide permanent hardware address in RTM_NEWLINK (Ivan Vecera) [1878274] - [net] Zeroing the structure ethtool_wolinfo in ethtool_get_wol() (Ivan Vecera) [1878274] - [net] ethtool: Allow parsing ETHER_FLOW types when using flow_rule (Ivan Vecera) [1878274] - [net] ethtool: Allow matching on vlan DEI bit (Ivan Vecera) [1878274] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Ivan Vecera) [1878274] - [include] net: ethtool: Document get_rxfh_context and set_rxfh_context ethtool ops (Ivan Vecera) [1878274] - [include] ethtool: avoid signed-unsigned comparison in ethtool_validate_speed() (Ivan Vecera) [1878274] - [net] ethtool: not call vzalloc for zero sized memory request (Ivan Vecera) [1878274] - [net] ethtool: reduce stack usage with clang (Ivan Vecera) [1878274] - [net] ethtool: Use explicit designated initializers for .cmd (Ivan Vecera) [1878274] - [net] ethtool: remove unnecessary check in ethtool_get_regs() (Ivan Vecera) [1878274] - [include] uapi/ethtool: fix spelling errors (Ivan Vecera) [1878274] - [net] ethtool: fix a missing-check bug (Ivan Vecera) [1878274] - [include] ethtool: Remove trailing semicolon for static inline (Ivan Vecera) [1878274] - [net] ipv6: some fixes for ipv6_dev_find() (Xin Long) [1862458] - [net] tipc: not enable tipc when ipv6 works as a module (Xin Long) [1862458] - [net] tipc: set ub->ifindex for local ipv6 address (Xin Long) [1862458] - [net] ipv6: add ipv6_dev_find() (Xin Long) [1862458] - [powerpc] powerpc/pseries: explicitly reschedule during drmem_lmb list traversal (Steve Best) [1892377] - [scsi] scsi: ibmvscsi: Fix potential race after loss of transport (Steve Best) [1892316] - [mm] mm: fix a race during THP splitting (Rafael Aquini) [1865813 1739593] - [mm] mm, memcg: do not high throttle allocators based on wraparound (Waiman Long) [1873759] - [mm] mm, memcg: throttle allocators based on ancestral memory.high (Waiman Long) [1873759] - [mm] mm, memcg: fix corruption on 64-bit divisor in memory.high throttling (Waiman Long) [1873759] - [mm] mm, memcg: throttle allocators when failing reclaim over memory.high (Waiman Long) [1873759] - [mm] mm, oom: dump stack of victim when reaping failed (Waiman Long) [1873759] - [mm] mm/oom: fix pgtables units mismatch in Killed process message (Waiman Long) [1873759] - [mm] mm, oom: consider present pages for the node size (Waiman Long) [1873759] - [mm] mm/oom_kill.c: fix oom_cpuset_eligible() comment (Waiman Long) [1873759] - [mm] mm/oom: add oom_score_adj and pgtables to Killed process message (Waiman Long) [1873759] - [mm] mm/oom_kill.c: remove redundant OOM score normalization in select_bad_process() (Waiman Long) [1873759] - [fs] oom: decouple mems_allowed from oom_unkillable_task (Waiman Long) [1873759] - [mm] mm, oom: remove redundant task_in_mem_cgroup() check (Waiman Long) [1873759] - [mm] mm, oom: refactor dump_tasks for memcg OOMs (Waiman Long) [1873759] - [mm] mm, oom: describe task memory unit, larger PID pad (Waiman Long) [1873759] - [mm] mm, oom: remove oom_lock from oom_reaper (Waiman Long) [1873759] - [mm] mm/vmscan: remove unused RECLAIM_OFF/RECLAIM_ZONE (Waiman Long) [1873759] - [mm] mm/vmscan: remove prefetch_prev_lru_page (Waiman Long) [1873759] - [mm] mm/vmscan.c: remove unused return value of shrink_node (Waiman Long) [1873759] - [mm] mm/vmscan.c: clean code by removing unnecessary assignment (Waiman Long) [1873759] - [mm] mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG (Waiman Long) [1873759] - [mm] mm/vmscan.c: fix typo in comment (Waiman Long) [1873759] - [mm] mm: vmscan: enforce inactive:active ratio at the reclaim root (Waiman Long) [1873759] - [mm] mm: vmscan: detect file thrashing at the reclaim root (Waiman Long) [1873759] - [mm] mm: vmscan: move file exhaustion detection to the node level (Waiman Long) [1873759] - [include] mm: vmscan: harmonize writeback congestion tracking for nodes & memcgs (Waiman Long) [1873759] - [mm] mm: vmscan: split shrink_node() into node part and memcgs part (Waiman Long) [1873759] - [mm] mm: vmscan: turn shrink_node_memcg() into shrink_lruvec() (Waiman Long) [1873759] - [mm] mm: vmscan: replace shrink_node() loop with a retry jump (Waiman Long) [1873759] - [mm] mm: vmscan: naming fixes: global_reclaim() and sane_reclaim() (Waiman Long) [1873759] - [mm] mm: vmscan: move inactive_list_is_low() swap check to the caller (Waiman Long) [1873759] - [mm] mm: vmscan: simplify lruvec_lru_size() (Waiman Long) [1873759] - [mm] mm/vmscan.c: remove unused scan_control parameter from pageout() (Waiman Long) [1873759] - [mm] mm/vmscan: remove unused lru_pages argument (Waiman Long) [1873759] - [mm] mm: do not allow MADV_PAGEOUT for CoW pages (Waiman Long) [1873759] - [mm] mm: fix trying to reclaim unevictable lru page when calling madvise_pageout (Waiman Long) [1873759] - [mm] mm: factor out common parts between MADV_COLD and MADV_PAGEOUT (Waiman Long) [1873759] - [mm] mm: introduce MADV_PAGEOUT (Waiman Long) [1873759] - [mm] mm: change PAGEREF_RECLAIM_CLEAN with PAGE_REFRECLAIM (Waiman Long) [1873759] - [mm] mm: introduce MADV_COLD (Waiman Long) [1873759] - [mm] mm: thp: don't need care deferred split queue in memcg charge move path (Waiman Long) [1873759] - [mm] mm: thp: make deferred split shrinker memcg aware (Waiman Long) [1873759] - [mm] mm: shrinker: make shrinker not depend on memcg kmem (Waiman Long) [1873759] - [mm] mm: move mem_cgroup_uncharge out of __page_cache_release() (Waiman Long) [1873759] - [mm] mm: thp: extract split_queue_* into a struct (Waiman Long) [1873759] - [mm] mm/page_alloc.c: move ifdefery out of free_area_init_core (Waiman Long) [1873759] - [mm] mm, memcg: do not set reclaim_state on soft limit reclaim (Waiman Long) [1873759] - [mm] mm, vmscan: do not special-case slab reclaim when watermarks are boosted (Waiman Long) [1873759] - [mm] mm/vmscan.c: add checks for incorrect handling of current->reclaim_state (Waiman Long) [1873759] - [mm] mm/vmscan.c: calculate reclaimed slab caches in all reclaim paths (Waiman Long) [1873759] - [mm] mm/vmscan.c: add a new member reclaim_state in struct shrink_control (Waiman Long) [1873759] - [mm] mm: vmscan: remove double slab pressure by inc'ing sc->nr_scanned (Waiman Long) [1873759] - [mm] mm: limit boost_watermark on small zones (Waiman Long) [1873759] - [mm] mm: do not boost watermarks to avoid fragmentation for the DISCONTIG memory model (Waiman Long) [1873759] - [mm] mm, page_alloc: fix a division by zero error when boosting watermarks v2 (Waiman Long) [1873759] - [mm] mm, page_alloc: do not wake kswapd with zone lock held (Waiman Long) [1873759] - [mm] mm/page_alloc.c: drop uneeded __meminit and __meminitdata (Waiman Long) [1873759] - [mm] mm/page_alloc.c: fix never set ALLOC_NOFRAGMENT flag (Waiman Long) [1873759] - [mm] mm/page_alloc.c: avoid potential NULL pointer dereference (Waiman Long) [1873759] - [mm] mm/vmscan.c: don't disable irq again when count pgrefill for memcg (Waiman Long) [1873759] - [mm] mm/vmscan: drop may_writepage and classzone_idx from direct reclaim begin template (Waiman Long) [1873759] - [mm] mm/vmscan: add tracepoints for node reclaim (Waiman Long) [1873759] - [mm] mm: generalize putback scan functions (Waiman Long) [1873759] - [mm] mm: remove pages_to_free argument of move_active_pages_to_lru() (Waiman Long) [1873759] - [mm] mm/workingset: remove unused @mapping argument in workingset_eviction() (Waiman Long) [1873759] - [mm] Revert "mm: slowly shrink slabs with a relatively small number of objects" (Waiman Long) [1873759] - [mm] mm: reclaim small amounts of memory when an external fragmentation event occurs (Waiman Long) [1873759] - [mm] mm: use alloc_flags to record if kswapd can wake (Waiman Long) [1873759] - [mm] mm: move zone watermark accesses behind an accessor (Waiman Long) [1873759] - [mm] mm, page_alloc: spread allocations across zones before introducing fragmentation (Waiman Long) [1873759] - [mm] mm: Convert delete_from_swap_cache to XArray (Waiman Long) [1873759] - [fs] mm: zero-seek shrinkers (Waiman Long) [1873759] - [mm] mm/vmscan.c: fix int overflow in callers of do_shrink_slab() (Waiman Long) [1873759] - [mm] mm: slowly shrink slabs with a relatively small number of objects (Waiman Long) [1873759] - [mm] mm: fix page_freeze_refs and page_unfreeze_refs in comments (Waiman Long) [1873759] - [mm] mm: check shrinker is memcg-aware in register_shrinker_prepared() (Waiman Long) [1873759] - [mm] mm: use special value SHRINKER_REGISTERING instead of list_empty() check (Waiman Long) [1873759] - [mm] mm/vmscan.c: move check for SHRINKER_NUMA_AWARE to do_shrink_slab() (Waiman Long) [1873759] - [mm] mm/vmscan.c: condense scan_control (Waiman Long) [1873759] - [arch] asm-generic/tlb: add missing CONFIG symbol (Waiman Long) [1873759] - [include] asm-gemeric/tlb: remove stray function declarations (Waiman Long) [1873759] - [x86] x86/ldt: Remove unused variable in map_ldt_struct() (Waiman Long) [1873759] - [x86] x86/ldt: Unmap PTEs for the slot before freeing LDT pages (Waiman Long) [1873759] - [x86] x86/mm/tlb: Add freed_tables argument to flush_tlb_mm_range (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove tlb_table_flush() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove tlb_flush_mmu_free() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove CONFIG_HAVE_GENERIC_MMU_GATHER (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove arch_tlb*_mmu() (Waiman Long) [1873759] - [s390] s390/tlb: Convert to generic mmu_gather (Waiman Long) [1873759] - [mm] asm-generic/tlb: Introduce CONFIG_HAVE_MMU_GATHER_NO_GATHER=y (Waiman Long) [1873759] - [include] asm-generic/tlb, ia64: Conditionally provide tlb_migrate_finish() (Waiman Long) [1873759] - [include] asm-generic/tlb: Provide generic tlb_flush() based on flush_tlb_mm() (Waiman Long) [1873759] - [arm64] asm-generic/tlb, arch: Provide generic tlb_flush() based on flush_tlb_range() (Waiman Long) [1873759] - [mm] asm-generic/tlb, arch: Provide CONFIG_HAVE_MMU_GATHER_PAGE_SIZE (Waiman Long) [1873759] - [include] asm-generic/tlb: Provide a comment (Waiman Long) [1873759] - [mm] mm/memory: Move mmu_gather and TLB invalidation code into its own file (Waiman Long) [1873759] - [x86] x86/mm: Page size aware flush_tlb_mm_range() (Waiman Long) [1873759] - [x86] x86/ldt: Split out sanity check in map_ldt_struct() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Track which levels of the page tables have been cleared (Waiman Long) [1873759] - [include] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather (Waiman Long) [1873759] - [mm] mm/cow: don't bother write protecting already write-protected pages (Waiman Long) [1873759] - [powerpc] mm/mmu_gather: invalidate TLB correctly on batch allocation failure and flush (Diego Domingos) [1805031] - [powerpc] powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case (Diego Domingos) [1805031] - [fs] cifs: smb1: Try failing back to SetFileInfo if SetPathInfo fails (Leif Sahlberg) [1857038]- [scsi] scsi: libfc: Fix passing zero to 'PTR_ERR' warning (Chris Leech) [1849542] - [scsi] scsi: libfc: Fix for double free() (Chris Leech) [1849542] - [scsi] scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases (Chris Leech) [1849542] - [scsi] scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() (Chris Leech) [1849542] - [scsi] scsi: fcoe: Use eth_zero_addr() to clear mac address (Chris Leech) [1849542] - [scsi] scsi: libfc: Provide missing and repair existing function documentation (Chris Leech) [1849542] - [scsi] scsi: libfc: Fix a couple of misdocumented function parameters (Chris Leech) [1849542] - [scsi] scsi: libfc: Repair function parameter documentation (Chris Leech) [1849542] - [scsi] scsi: fcoe: Correct some kernel-doc issues (Chris Leech) [1849542] - [scsi] scsi: fcoe: Fix a myriad of documentation issues (Chris Leech) [1849542] - [scsi] scsi: fcoe: Fix various kernel-doc infringements (Chris Leech) [1849542] - [scsi] scsi: libfc: trivial: Fix spelling mistake of 'discovery' (Chris Leech) [1849542] - [scsi] scsi: libfc: Supply some missing kerneldoc struct/function attributes/params (Chris Leech) [1849542] - [scsi] scsi: libfc: fc_disc: Fix-up some incorrectly referenced function parameters (Chris Leech) [1849542] - [scsi] scsi: libfc: Skip additional kref updating work event (Chris Leech) [1849542] - [scsi] scsi: libfc: Handling of extra kref (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove unneeded semicolon in fcoe.c (Chris Leech) [1849542] - [scsi] scsi: libfc: rport state move to PLOGI if all PRLI retry exhausted (Chris Leech) [1849542] - [scsi] scsi: libfc: If PRLI rejected, move rport to PLOGI state (Chris Leech) [1849542] - [scsi] scsi: libfc: free response frame from GPN_ID (Chris Leech) [1849542] - [scsi] scsi: fcoe: fix null-ptr-deref Read in fc_release_transport (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove redundant call to skb_transport_header (Chris Leech) [1849542] - [scsi] scsi: fcoe: pass in fcoe_rport structure instead of fc_rport_priv (Chris Leech) [1849542] - [scsi] scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure (Chris Leech) [1849542] - [scsi] scsi: libfc: Whitespace cleanup in libfc.h (Chris Leech) [1849542] - [scsi] scsi: fcoe: fix a typo (Chris Leech) [1849542] - [scsi] scsi: libfc: fix null pointer dereference on a null lport (Chris Leech) [1849542] - [scsi] scsi: libfcoe: switch to SPDX tags (Chris Leech) [1849542] - [scsi] scsi: libfc: switch to SPDX tags (Chris Leech) [1849542] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove unneeded fcoe_ctlr_destroy_store export (Chris Leech) [1849542] - [scsi] scsi: fcoe: convert to use BUS_ATTR_WO (Chris Leech) [1849542] - [scsi] scsi: libfc: free skb when receiving invalid flogi resp (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove set but not used variable 'port' (Chris Leech) [1849542] - [scsi] scsi: libfc: fc_rport: Mark expected switch fall-through (Chris Leech) [1849542] - [scsi] scsi: libfc: Remove set but not used variable 'disc' (Chris Leech) [1849542] - [scsi] scsi: libfc: remove set but not used variable 'rpriv' (Chris Leech) [1849542] - [scsi] scsi: libfc: remove unnecessary condition check (Chris Leech) [1849542] - [scsi] scsi: fcoe: hold disc_mutex when traversing rport lists (Chris Leech) [1849542] - [net] netfilter: nftables: allow re-computing sctp CRC-32C in 'payload' statements (Davide Caratti) [1741052] - [fs] nfsd4: fix NULL dereference in nfsd/clients display code (Scott Mayhew) [1872311] - [fs] nfsd: Fix old-style function definition (Scott Mayhew) [1872311] - [fs] nfsd: clients don't need to break their own delegations (Scott Mayhew) [1872311] - [kernel] kthread: save thread function (Scott Mayhew) [1872311] - [fs] locks: Add trace_leases_conflict (Scott Mayhew) [1872311] - [fs] SUNRPC reverting d03727b248d0 ("NFSv4 fix CLOSE not waiting for direct IO compeletion") (Scott Mayhew) [1872311] - [fs] NFS: Fix interrupted slots by sending a solo SEQUENCE operation (Scott Mayhew) [1872311] - [net] SUNRPC: Add missing definition of ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE (Scott Mayhew) [1872311] - [fs] NFSv4 fix CLOSE not waiting for direct IO compeletion (Scott Mayhew) [1872311] - [fs] nfs: Fix memory leak of export_path (Scott Mayhew) [1872311] - [net] sunrpc: fixed rollback in rpc_gssd_dummy_populate() (Scott Mayhew) [1872311] - [net] xprtrdma: Clean up disconnect (Scott Mayhew) [1872311] - [fs] nfsd: apply umask on fs without ACL support (Scott Mayhew) [1872311] - [fs] NFS: Fix direct WRITE throughput regression (Scott Mayhew) [1872311] - [trace] SUNRPC: rpc_xprt lifetime events should record xprt->state (Scott Mayhew) [1872311] - [fs] nfs: set invalid blocks after NFSv4 writes (Scott Mayhew) [1872311] - [fs] NFS: remove redundant initialization of variable result (Scott Mayhew) [1872311] - [fs] NFS: Add a tracepoint in nfs_set_pgio_error() (Scott Mayhew) [1872311] - [fs] NFS: Trace short NFS READs (Scott Mayhew) [1872311] - [fs] NFS: nfs_xdr_status should record the procedure name (Scott Mayhew) [1872311] - [net] SUNRPC: Set SOFTCONN when destroying GSS contexts (Scott Mayhew) [1872311] - [net] SUNRPC: rpc_call_null_helper() should set RPC_TASK_SOFT (Scott Mayhew) [1872311] - [net] SUNRPC: rpc_call_null_helper() already sets RPC_TASK_NULLCREDS (Scott Mayhew) [1872311] - [net] SUNRPC: trace RPC client lifetime events (Scott Mayhew) [1872311] - [net] SUNRPC: Trace transport lifetime events (Scott Mayhew) [1872311] - [net] SUNRPC: Split the xdr_buf event class (Scott Mayhew) [1872311] - [net] SUNRPC: Add tracepoint to rpc_call_rpcerror() (Scott Mayhew) [1872311] - [trace] SUNRPC: Update the RPC_SHOW_SOCKET() macro (Scott Mayhew) [1872311] - [trace] SUNRPC: Update the rpc_show_task_flags() macro (Scott Mayhew) [1872311] - [net] SUNRPC: Trace GSS context lifetimes (Scott Mayhew) [1872311] - [net] SUNRPC: receive buffer size estimation values almost never change (Scott Mayhew) [1872311] - [net] sunrpc: use kmemdup_nul() in gssp_stringify() (Scott Mayhew) [1872311] - [fs] nfsd: safer handling of corrupted c_type (Scott Mayhew) [1872311] - [fs] mm/writeback: discard NR_UNSTABLE_NFS, use NR_WRITEBACK instead (Scott Mayhew) [1872311] - [mm] mm/writeback: replace PF_LESS_THROTTLE with PF_LOCAL_THROTTLE (Scott Mayhew) [1872311] - [net] SUNRPC: Remove unreachable error condition in rpcb_getport_async() (Scott Mayhew) [1872311] - [fs] nfsd: Fix svc_xprt refcnt leak when setup callback client failed (Scott Mayhew) [1872311] - [net] sunrpc: check that domain table is empty at module unload (Scott Mayhew) [1872311] - [fs] NFS: remove duplicate headers (Scott Mayhew) [1872311] - [fs] NFSv4.1 fix rpc_call_done assignment for BIND_CONN_TO_SESSION (Scott Mayhew) [1872311] - [fs] NFS: Use the correct style for SPDX License Identifier (Scott Mayhew) [1872311] - [net] net: sunrpc: Fix off-by-one issues in 'rpc_ntop6' (Scott Mayhew) [1872311] - [fs] NFS: move dprintk after nfs_alloc_fattr in nfs3_proc_lookup (Scott Mayhew) [1872311] - [fs] NFSD: Fix improperly-formatted Doxygen comments (Scott Mayhew) [1872311] - [fs] NFSD: Squash an annoying compiler warning (Scott Mayhew) [1872311] - [net] SUNRPC: Clean up request deferral tracepoints (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints for monitoring NFSD callbacks (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints to the NFSD state management code (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints to NFSD's duplicate reply cache (Scott Mayhew) [1872311] - [trace] SUNRPC: svc_show_status() macro should have enum definitions (Scott Mayhew) [1872311] - [net] SUNRPC: Restructure svc_udp_recvfrom() (Scott Mayhew) [1872311] - [net] SUNRPC: Refactor svc_recvfrom() (Scott Mayhew) [1872311] - [net] SUNRPC: Clean up svc_release_skb() functions (Scott Mayhew) [1872311] - [net] SUNRPC: Refactor recvfrom path dealing with incomplete TCP receives (Scott Mayhew) [1872311] - [net] SUNRPC: Replace dprintk() call sites in TCP receive path (Scott Mayhew) [1872311] - [net] SUNRPC: Restructure svc_tcp_recv_record() (Scott Mayhew) [1872311] - [net] SUNRPC: Rename svc_sock::sk_reclen (Scott Mayhew) [1872311] - [net] SUNRPC: Trace server-side rpcbind registration events (Scott Mayhew) [1872311] - [net] SUNRPC: Replace dprintk call sites in TCP state change callouts (Scott Mayhew) [1872311] - [net] SUNRPC: Add more svcsock tracepoints (Scott Mayhew) [1872311] - [net] SUNRPC: Remove "#include " (Scott Mayhew) [1872311] - [net] SUNRPC: Trace a few more generic svc_xprt events (Scott Mayhew) [1872311] - [net] SUNRPC: Tracepoint to record errors in svc_xpo_create() (Scott Mayhew) [1872311] - [trace] SUNRPC: Remove kernel memory address from svc_xprt tracepoints (Scott Mayhew) [1872311] - [net] svcrdma: Add tracepoints to report ->xpo_accept failures (Scott Mayhew) [1872311] - [net] svcrdma: Displayed remote IP address should match stored address (Scott Mayhew) [1872311] - [include] svcrdma: Remove the SVCRDMA_DEBUG macro (Scott Mayhew) [1872311] - [net] svcrdma: Rename tracepoints that record header decoding errors (Scott Mayhew) [1872311] - [net] svcrdma: Remove backchannel dprintk call sites (Scott Mayhew) [1872311] - [net] SUNRPC: Move xpt_mutex into socket xpo_sendto methods (Scott Mayhew) [1872311] - [net] sunrpc: add missing newline when printing parameter 'pool_mode' by sysfs (Scott Mayhew) [1872311] - [net] sunrpc: Remove unused function ip_map_update (Scott Mayhew) [1872311] - [fs] nfsd: handle repeated BIND_CONN_TO_SESSION (Scott Mayhew) [1872311] - [net] ip_tunnel_core: Fix build for archs without _HAVE_ARCH_IPV6_CSUM (Aaron Conole) [1849736] - [tools] selftests: pmtu.sh: Add tests for UDP tunnels handled by Open vSwitch (Aaron Conole) [1849736] - [tools] selftests: pmtu.sh: Add tests for bridged UDP tunnels (Aaron Conole) [1849736] - [net] geneve: Support for PMTU discovery on directly bridged links (Aaron Conole) [1849736] - [net] vxlan: Support for PMTU discovery on directly bridged links (Aaron Conole) [1849736] - [net] tunnels: PMTU discovery support for directly bridged IP packets (Aaron Conole) [1849736] - [net] ipv4: route: Ignore output interface in FIB lookup for PMTU route (Aaron Conole) [1849736] - [infiniband] RDMA/core: Free DIM memory in error unwind (Kamal Heib) [1857602] - [infiniband] RDMA/core: Stop DIM before destroying CQ (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Add min length checks to user structure copies (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Protect access to remote_sidr_table (Kamal Heib) [1857602] - [infiniband] RDMA/core: Fix race in rdma_alloc_commit_uobject() (Kamal Heib) [1857602] - [net] xprtrdma: fix incorrect header size calculations (Kamal Heib) [1857602] - [net] xprtrdma: Fix handling of connect errors (Kamal Heib) [1857602] - [net] xprtrdma: Fix return code from rpcrdma_xprt_connect() (Kamal Heib) [1857602] - [net] xprtrdma: Fix recursion into rpcrdma_xprt_disconnect() (Kamal Heib) [1857602] - [net] xprtrdma: Fix double-free in rpcrdma_ep_create() (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Fix reporting vendor_part_id (Kamal Heib) [1857602] - [infiniband] IB/sa: Resolv use-after-free in ib_nl_make_request() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add explicit cast OPA_MTU_8192 to 'enum ib_mtu' (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add atomic triggered sleep/wakeup (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Correct -EBUSY handling in tx code (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Restore kfree in dummy_netdev cleanup (Kamal Heib) [1857602] - [infiniband] IB/mad: Fix use after free when destroying MAD agent (Kamal Heib) [1857602] - [infiniband] RDMA/counter: Query a counter before release (Kamal Heib) [1857602] - [net] xprtrdma: Fix handling of RDMA_ERROR replies (Kamal Heib) [1857602] - [net] xprtrdma: Clean up synopsis of rpcrdma_flush_disconnect() (Kamal Heib) [1857602] - [net] xprtrdma: Use re_connect_status safely in rpcrdma_xprt_connect() (Kamal Heib) [1857602] - [net] xprtrdma: Prevent dereferencing r_xprt->rx_ep after it is freed (Kamal Heib) [1857602] - [infiniband] RDMA/mad: Fix possible memory leak in ib_mad_post_receive_mads() (Kamal Heib) [1857602] - [infiniband] RDMA/core: Check that type_attrs is not NULL prior access (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Protect bind_list and listen_list while finding matching cm id (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Set maximum pkeys device attribute (Kamal Heib) [1857602] - [infiniband] RDMA/rvt: Fix potential memory leak caused by rvt_alloc_rq (Kamal Heib) [1857602] - [infiniband] RDMA/core: Annotate CMA unlock helper routine (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Fix pointer-to-int-cast warning in siw_rx_pbl() (Kamal Heib) [1857602] - [infiniband] RDMA/hfi1: Fix trivial mis-spelling of 'descriptor' (Kamal Heib) [1857602] - [net] xprtrdma: Make xprt_rdma_slot_table_entries static (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Spurious WARNING triggered in cm_destroy_id() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Use free_netdev() in hfi1_netdev_free() (Kamal Heib) [1857602] - [infiniband] RDMA/core: Move and rename trace_cm_id_create() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Fix hfi1_netdev_rx_init() error handling (Kamal Heib) [1857602] - [infiniband] RDMA: Remove 'max_map_per_fmr' (Kamal Heib) [1857602] - [infiniband] RDMA: Remove 'max_fmr' (Kamal Heib) [1857602] - [net] RDMA/rds: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/core: Remove FMR device ops (Kamal Heib) [1857602] - [infiniband] RDMA/rdmavt: Remove FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/mthca: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/mlx4: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/i40iw: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/bnxt_re: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/mlx5: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/core: Remove FMR pool API (Kamal Heib) [1857602] - [infiniband] RDMA/srp: Remove support for FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/iser: Remove support for FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/core: Fix several reference count leaks (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Fix spelling mistake "enought" -> "enough" (Kamal Heib) [1857602] - [rdma] RDMA/core: Use offsetofend() instead of open coding (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Increase max_send_sge (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Reduce max_recv_sge to 1 (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Make debug output more detailed (Kamal Heib) [1857602] - [infiniband] RDMA/srp: Make the channel count configurable per target (Kamal Heib) [1857602] - [infiniband] hfi1: get rid of pointless access_ok() (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Provide ECE reject reason (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Connect ECE to rdma_accept (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Send and receive ECE parameter over the wire (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Deliver ECE parameters through UCMA events (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Extend ucma_connect to receive ECE parameters (Kamal Heib) [1857602] - [rdma] RDMA/cm: Add Enhanced Connection Establishment (ECE) bits (Kamal Heib) [1857602] - [infiniband] RDMA/core: Use sizeof_field() helper (Kamal Heib) [1857602] - [infiniband] RDMA/ipoib: Remove can_sleep parameter from iboib_mcast_alloc (Kamal Heib) [1857602] - [infiniband] IB/cma: Fix ports memory leak in cma_configfs (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy QP commands over ioctl (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy WQ commands over ioctl (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy SRQ commands over ioctl (Kamal Heib) [1857602] - [rdma] IB/uverbs: Move QP, SRQ, WQ type and flags to UAPI (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Extend CQ to get its own asynchronous event FD (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Refactor related objects to use their own asynchronous event FD (Kamal Heib) [1857602] - [infiniband] RDMA/core: Allow the ioctl layer to abort a fully created uobject (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Expose UAR object and its alloc/destroy commands (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Fix a NULL vs IS_ERR() check (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Introduce UAPIs to manage packet pacing (Kamal Heib) [1857602] - [netdrv] net/mlx5: Expose raw packet pacing APIs (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Enable the transmit side of the datagram ipoib netdev (Kamal Heib) [1857602] - [infiniband] IB/ipoib: Add capability to switch between datagram and connected mode (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add packet histogram trace event (Kamal Heib) [1857602] - [infiniband] IB/{hfi1, ipoib, rdma}: Broadcast ping sent packets which exceeded mtu size (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Activate the dummy netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add rx functions for dummy netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add interrupt handler functions for accelerated ipoib (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add functions to receive accelerated ipoib packets (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Rename num_vnic_contexts as num_netdev_contexts (Kamal Heib) [1857602] - [infiniband] IB/ipoib: Increase ipoib Datagram mode MTU's upper limit (Kamal Heib) [1857602] - [infiniband] IB/hfi1: RSM rules for AIP (Kamal Heib) [1857602] - [infiniband] IB/{rdmavt, hfi1}: Implement creation of accelerated UD QPs (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Remove module parameter for KDETH qpns (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add the transmit side of a datagram ipoib RDMA netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add functions to transmit datagram ipoib packets (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add accelerated IP capability bit (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Report host information to the device (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Fix setting of wrong bit in get/set_feature commands (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Replace one-element array and use struct_size() helper (Kamal Heib) [1857602] - [net] svcrdma: Fix backchannel return code (Kamal Heib) [1857602] - [net] svcrdma: trace undersized Write chunks (Kamal Heib) [1857602] - [net] svcrdma: Trace page overruns when constructing RDMA Reads (Kamal Heib) [1857602] - [net] svcrdma: Clean up handling of get_rw_ctx errors (Kamal Heib) [1857602] - [net] svcrdma: Clean up the tracing for rw_ctx_init errors (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Add a newline when printing parameter 'srpt_service_guid' by sysfs (Kamal Heib) [1857602] - [infiniband] RDMA/core: Consolidate ib_create_srq flows (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Fix create WQ to use the given user handle (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Cleanup wq/srq context usage from uverbs layer (Kamal Heib) [1857602] - [rdma] IB/rdmavt: Replace zero-length array with flexible-array (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Increment the refcount inside cm_find_listen() (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove needless cm_id variable (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove the cm_free_id() wrapper function (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Make find_remote_id() return a cm_id_private (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Add a note explaining how the timewait is eventually freed (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Pass the cm_id_private into cm_cleanup_timewait (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Pull duplicated code into cm_queue_work_unlock() (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove unused store to ret in cm_rej_handler (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove return code from add_cm_id_to_port_list (Kamal Heib) [1857602] - [infiniband] RDMA/addr: Mark addr_resolve as might_sleep() (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Return stable IB device index as identifier (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Initialize the flow label of CM's route path record (Kamal Heib) [1857602] - [infiniband] RDMA/core: Consider flow label when building skb (Kamal Heib) [1857602] - [rdma] RDMA/core: Add hash functions to calculate RoCEv2 flowlabel and UDP source port (Kamal Heib) [1857602] - [infiniband] RDMA: Allow ib_client's to fail when add() is called (Kamal Heib) [1857602] - [infiniband] RDMA/mad: Remove snoop interface (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Count admin commands errors (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Count mmap failures (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Report create CQ error counter (Kamal Heib) [1857602] - [infiniband] RDMA/core: Get xmit slave for LAG (Kamal Heib) [1857602] - [infiniband] RDMA/core: Add LAG functionality (Kamal Heib) [1857602] - [infiniband] RDMA: Group create AH arguments in struct (Kamal Heib) [1857602] - [infiniband] RDMA/rw: use DIV_ROUND_UP to calculate nr_ops (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Limit the scope of rdma_is_consumer_reject function (Kamal Heib) [1857602] - [infiniband] IB: Fix some documentation warnings (Kamal Heib) [1857602] - [infiniband] RDMA: Remove a few extra calls to ib_get_client_data() (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Make the event_queue fds return POLLERR when disassociated (Kamal Heib) [1857602] - [infiniband] RDMA/rxe: Set default vendor ID (Kamal Heib) [1857602] - [netdrv] bonding: Use fallthrough pseudo-keyword (Jarod Wilson) [1860495] - [netdrv] bonding: fix active-backup failover for current ARP slave (Jarod Wilson) [1860495] - [netdrv] bonding: fix a potential double-unregister (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_alb: Describe alb_handle_addr_collision_on_attach()'s 'bond' and 'addr' params (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_main: Document 'proto' and rename 'new_active' parameters (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_3ad: Fix a bunch of kerneldoc parameter issues (Jarod Wilson) [1860495] - [netdrv] bonding: show saner speed for broadcast mode (Jarod Wilson) [1868265 1860495] - [netdrv] bonding: check return value of register_netdevice() in bond_newlink() (Jarod Wilson) [1860495] - [netdrv] bonding: check error value of register_netdevice() immediately (Jarod Wilson) [1860495] - [netdrv] bonding: don't need RTNL for ipsec helpers (Jarod Wilson) [1860495] - [netdrv] bonding: deal with xfrm state in all modes and add more error-checking (Jarod Wilson) [1860495] - [netdrv] bonding: allow xfrm offload setup post-module-load (Jarod Wilson) [1860495] - [netdrv] bonding: Remove extraneous parentheses in bond_setup (Jarod Wilson) [1860495] - [netdrv] bonding/xfrm: use real_dev instead of slave_dev (Jarod Wilson) [1860495] - [netdrv] bonding: support hardware encryption offload to slaves (Jarod Wilson) [1860495] - [netdrv] mlx5: become aware of when running as a bonding slave (Jarod Wilson) [1860495] - [netdrv] ixgbe_ipsec: become aware of when running as a bonding slave (Jarod Wilson) [1860495] - [net] xfrm: bail early on slave pass over skb (Jarod Wilson) [1860495] - [netdrv] bonding: Fix reference count leak in bond_sysfs_slave_add (Jarod Wilson) [1860495] - [netdrv] bonding: propagate transmit status (Jarod Wilson) [1860495] - [netdrv] bonding: remove useless stats_lock_key (Jarod Wilson) [1860495] - [netdrv] bonding: Implement ndo_get_xmit_slave (Jarod Wilson) [1860495] - [netdrv] bonding: Add array of all slaves (Jarod Wilson) [1860495] - [netdrv] bonding: Add function to get the xmit slave in active-backup mode (Jarod Wilson) [1860495] - [netdrv] bonding: Add helper function to get the xmit slave in rr mode (Jarod Wilson) [1860495] - [netdrv] bonding: Add helper function to get the xmit slave based on hash (Jarod Wilson) [1860495] - [netdrv] bonding/alb: Add helper functions to get the xmit slave (Jarod Wilson) [1860495] - [netdrv] bonding: Rename slave_arr to usable_slaves (Jarod Wilson) [1860495] - [netdrv] bonding: Export skip slave logic to function (Jarod Wilson) [1860495] - [netdrv] bonding: Remove inclusion of vermagic header (Jarod Wilson) [1860495] - [netdrv] net/bond: Delete driver and module versions (Jarod Wilson) [1860495]- [mm] powerpc/book3s64/radix: Fix boot failure with large amount of guest memory (Steve Best) [1854543] - [powerpc] powerpc/book3s64/radix: Add kernel command line option to disable radix GTSE (Steve Best) [1854543] - [powerpc] powerpc/prom: Enable Radix GTSE in cpu pa-features (Steve Best) [1854543] - [powerpc] powerpc/mm/book3s64/radix: Off-load TLB invalidations to host when !GTSE (Steve Best) [1854543] - [powerpc] powerpc/pseries: H_REGISTER_PROC_TBL should ask for GTSE only if enabled (Steve Best) [1854543] - [powerpc] powerpc/mm: Enable radix GTSE only if supported (Steve Best) [1854543] - [misc] powerpc/64s/radix: introduce options to disable use of the tlbie instruction (Steve Best) [1854543] - [mm] powerpc/64s: remove unnecessary translation cache flushes at boot (Steve Best) [1854543] - [mm] powerpc/64s/pseries: radix flush translations before MMU is enabled at boot (Steve Best) [1854543] - [mm] powerpc/64s: make mmu_partition_table_set_entry TLB flush optional (Steve Best) [1854543] - [mm] powerpc/64s/radix: tidy up TLB flushing code (Steve Best) [1854543] - [mm] powerpc/64s: remove register_process_table callback (Steve Best) [1854543] - [mm] powerpc/mm: Limit resize_hpt_for_hotplug() call to hash guests only (Steve Best) [1854543] - [powerpc] powerpc/mm/radix: Create separate mappings for hot-plugged memory (Steve Best) [1854543] - [mm] powerpc/mm/radix: Remove split_kernel_mapping() (Steve Best) [1854543] - [mm] powerpc/mm/radix: Free PUD table when freeing pagetable (Steve Best) [1854543] - [mm] powerpc/mm/radix: Fix PTE/PMD fragment count for early page table mappings (Steve Best) [1854543] - [mm] powerpc/64s: Fix page table fragment refcount race vs speculative references (Steve Best) [1854543] - [powerpc] powerpc/security: Fix link stack flush instruction (Gustavo Duarte) [1862103] - [powerpc] powerpc/pseries: add new branch prediction security bits for link stack (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: Allow for processors that flush the link stack using the special bcctr (Gustavo Duarte) [1862103] - [powerpc] powerpc/64s: Move branch cache flushing bcctr variant to ppc-ops.h (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: split branch cache flush toggle from code patching (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: make display of branch cache flush more consistent (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: change link stack flush state to the flush type enum (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: re-name count cache flush to branch cache flush (Gustavo Duarte) [1862103] - [kernel] smp: Remove superfluous cond_func check in smp_call_function_many_cond() (Prarit Bhargava) [1882551] - [kernel] smp: Remove allocation mask from on_each_cpu_cond.*() (Prarit Bhargava) [1882551] - [kernel] smp: Add a smp_cond_func_t argument to smp_call_function_many() (Prarit Bhargava) [1882551] - [kernel] smp: Use smp_cond_func_t as type for the conditional function (Prarit Bhargava) [1882551] - [kernel] smp, cpumask: introduce on_each_cpu_cond_mask (Prarit Bhargava) [1882551] - [kernel] smp: use __cpumask_set_cpu in on_each_cpu_cond (Prarit Bhargava) [1882551] - [pci] PCI: Add support for root bus sizing (Myron Stowe) [1886036] - [drm] PCI: Use ioremap(), not phys_to_virt() for platform ROM (Myron Stowe) [1886036] - [pci] PCI: Avoid ASMedia XHCI USB PME# from D0 defect (Myron Stowe) [1886036] - [pci] PCI/ACPI: Move pcie_to_hpx3_typefrom stack to static data (Myron Stowe) [1886036] - [documentation] Documentation: PCI: Add background on Boot Interrupts (Myron Stowe) [1886036] - [pci] PCI: Add boot interrupt quirk mechanism for Xeon chipsets (Myron Stowe) [1886036] - [pci] PCI: Add PCIE_LNKCAP2_SLS2SPEED() macro (Myron Stowe) [1886036] - [pci] PCI: Use pci_speed_string() for all PCI/PCI-X/PCIe strings (Myron Stowe) [1886036] - [pci] PCI: Add pci_speed_string() (Myron Stowe) [1886036] - [pci] PCI: Add 32 GT/s decoding in some macros (Myron Stowe) [1886036] - [powerpc] powerpc/test_emulate_step: Move extern declaration to sstep.h (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/sstep: Introduce macros to retrieve Prefix instruction operands (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/test_emulate_step: Add negative tests for prefixed addi (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/test_emulate_step: Enhancement to test negative scenarios (Desnes Augusto Nunes do Rosario) [1854542] - [netdrv] drivers/net/ibmvnic: Update VNIC protocol version reporting (Steve Best) [1882269] - [s390] s390/zcrypt: fix kmalloc 256k failure (Claudio Imbrenda) [1885963] - [x86] crypto: x86/aesni-gcm - fix crash on empty plaintext (Herbert Xu) [1882868] - [x86] crypto: x86/aesni-gcm - make 'struct aesni_gcm_tfm_s' static const (Herbert Xu) [1882868] - [x86] crypto: aesni - Add scatter/gather avx stubs, and use them in C (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce partial block macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce READ_PARTIAL_BLOCK macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Move ghash_mul to GCM_COMPLETE (Herbert Xu) [1882868] - [x86] crypto: aesni - Fill in new context data structures (Herbert Xu) [1882868] - [x86] crypto: aesni - Merge avx precompute functions (Herbert Xu) [1882868] - [x86] crypto: aesni - Split AAD hash calculation to separate macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Add GCM_COMPLETE macro (Herbert Xu) [1882868] - [x86] crypto: aesni - support 256 byte keys in avx asm (Herbert Xu) [1882868] - [x86] crypto: aesni - Macro-ify func save/restore (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce gcm_context_data (Herbert Xu) [1882868] - [x86] crypto: aesni - Merge GCM_ENC_DEC (Herbert Xu) [1882868] - [pci] PCI: Add DMA alias quirk for PLX PEX NTB (Myron Stowe) [1884657] - [pci] PCI: Add nr_devfns parameter to pci_add_dma_alias() (Myron Stowe) [1884657] - [pci] PCI: Fix pci_add_dma_alias() bitmask size (Myron Stowe) [1884657] - [pci] PCI/IOV: Fix memory leak in pci_iov_add_virtfn() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 device IDs (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 MRPC GAS access permission check (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 flash information interface support (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 system info register support (Myron Stowe) [1884657] - [pci] PCI/switchtec: Separate Gen3 register structures into unions (Myron Stowe) [1884657] - [pci] PCI/switchtec: Factor out Gen3 ioctl_flash_part_info() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add 'generation' variable (Myron Stowe) [1884657] - [pci] PCI/switchtec: Rename generation-specific constants (Myron Stowe) [1884657] - [pci] PCI/switchtec: Move check event ID from mask_event() to switchtec_event_isr() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Remove redundant valid PFF number count (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add support for Intercomm Notify and Upstream Error Containment (Myron Stowe) [1884657] - [pci] PCI/switchtec: Fix vep_vector_number ioread width (Myron Stowe) [1884657] - [pci] PCI/switchtec: Use dma_set_mask_and_coherent() (Myron Stowe) [1884657] - [pci] PCI: Allow adjust_bridge_window() to shrink resource if necessary (Myron Stowe) [1884657] - [pci] PCI: Set resource size directly in adjust_bridge_window() (Myron Stowe) [1884657] - [pci] PCI: Rename extend_bridge_window() to adjust_bridge_window() (Myron Stowe) [1884657] - [pci] PCI: Rename extend_bridge_window() parameter (Myron Stowe) [1884657] - [pci] PCI: Consider alignment of hot-added bridges when assigning resources (Myron Stowe) [1884657] - [pci] PCI: Remove local variable usage in pci_bus_distribute_available_resources() (Myron Stowe) [1884657] - [pci] PCI: Pass size + alignment to pci_bus_distribute_available_resources() (Myron Stowe) [1884657] - [pci] PCI: Rename variables (Myron Stowe) [1884657] - [pci] PCI: Remove unnecessary braces (Myron Stowe) [1884657] - [pci] PCI: Don't disable bridge BARs when assigning bus resources (Myron Stowe) [1884657] - [documentation] Documentation: PCI: Fix pci_alloc_irq_vectors() function name typo (Myron Stowe) [1884657] - [pci] PCI: Increase D3 delay for AMD Ryzen5/7 XHCI controllers (Myron Stowe) [1884657] - [pci] PCI: Add generic quirk for increasing D3hot delay (Myron Stowe) [1884657] - [edac] x86/mce, EDAC/mce_amd: Print PPIN in machine check records (Prarit Bhargava) [1860381]- [netdrv] geneve: add transport ports in route lookup for geneve (Mark Gray) [1884481] {CVE-2020-25645} - [drm] PM: sleep: core: Rename DPM_FLAG_NEVER_SKIP (Ivan Vecera) [1867164] - [base] PM: sleep: core: Drop racy and redundant checks from device_prepare() (Ivan Vecera) [1867164] - [mm] mm/page_isolation: fix potential warning from user (Waiman Long) [1811009] - [mm] mm/hotplug: silence a lockdep splat with printk() (Waiman Long) [1811009] - [mm] mm/debug.c: always print flags in dump_page() (Waiman Long) [1811009] - [mm] mm/debug.c: PageAnon() is true for PageKsm() pages (Waiman Long) [1811009] - [mm] mm/debug.c: __dump_page() prints an extra line (Waiman Long) [1811009] - [mm] mm: fix some typos in mm directory (Waiman Long) [1811009] - [mm] mm, fault_around: do not take a reference to a locked page (Waiman Long) [1811009] - [mm] mm: remove the exporting of totalram_pages (Waiman Long) [1880090] - [mm] mm: remove managed_page_count_lock spinlock (Waiman Long) [1880090] - [mm] mm: convert totalram_pages and totalhigh_pages variables to atomic (Waiman Long) [1880090] - [mm] mm: convert zone->managed_pages to atomic variable (Waiman Long) [1880090] - [net] mm: reference totalram_pages and managed_pages once per function (Waiman Long) [1880090] - [mm] mm/page_alloc: Introduce free_area_init_core_hotplug (Waiman Long) [1880090] - [mm] mm/page_alloc: inline function to handle CONFIG_DEFERRED_STRUCT_PAGE_INIT (Waiman Long) [1880090] - [mm] mm: remove __paginginit (Waiman Long) [1880090] - [mm] mm: access zone->node via zone_to_nid() and zone_set_nid() (Waiman Long) [1880090] - [mm] mm, page_alloc: double zone's batchsize (Waiman Long) [1880090] - [powerpc] powerpc/pseries/cmm: fix managed page counts when migrating pages between zones (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: drain per-cpu pages again during memory offline (Chris von Recklinghausen) [1754739] - [mm] mm: move nr_deactivate accounting to shrink_active_list() (Chris von Recklinghausen) [1754739] - [mm] sh: fix build error in mm/init.c (Chris von Recklinghausen) [1754739] - [mm] mm/memremap: set caching mode for PCI P2PDMA memory to WC (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: add pgprot_t to mhp_params (Chris von Recklinghausen) [1754739] - [mm] powerpc/mm: thread pgprot_t through create_section_mapping() (Chris von Recklinghausen) [1754739] - [mm] x86/mm: thread pgprot_t through init_memory_mapping() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: rename mhp_restrictions to mhp_params (Chris von Recklinghausen) [1754739] - [include] mm/memory_hotplug: drop the flags field from struct mhp_restrictions (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: cleanup __add_pages() (Chris von Recklinghausen) [1754739] - [mm] mm, hotplug: fix page online with DEBUG_PAGEALLOC compiled but not enabled (Chris von Recklinghausen) [1754739] - [mm] arm64/mm: Enable memory hot remove (Chris von Recklinghausen) [1754739] - [firmware] arm/efi: EFI soft reservation to memblock (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: convert mm/dump.c to use walk_page_range() (Chris von Recklinghausen) [1754739] - [base] mm/memory_hotplug: drop valid_start/valid_end from test_pages_in_a_zone() (Chris von Recklinghausen) [1754739] - [base] mm/memory_hotplug: pass in nid to online_pages() (Chris von Recklinghausen) [1754739] - [mm] mm: remove "count" parameter from has_unmovable_pages() (Chris von Recklinghausen) [1754739] - [base] mm: remove the memory isolate notifier (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Disable instrumentation in the EFI runtime handling code (Chris von Recklinghausen) [1754739] - [x86] efi/x86: avoid KASAN false positives when accessing the 1: 1 mapping (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Limit EFI old memory map to SGI UV machines (Chris von Recklinghausen) [1754739] - [x86] efi/libstub/x86: Fix unused-variable warning (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Simplify mixed mode call wrapper (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Simplify 64-bit EFI firmware call wrapper (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Split SetVirtualAddresMap() wrappers into 32 and 64 bit versions (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Split off some old memmap handling into separate routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Re-disable RT services for 32-bit kernels running on 64-bit EFI (Chris von Recklinghausen) [1754739] - [x86] efi/libstub: Distinguish between native/mixed not 32/64 bit (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub: Extend native protocol definitions with mixed_mode aliases (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub: Use a helper to iterate over a EFI handle array (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Rename efi_is_native() to efi_is_mixed() (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Unify 32/64-bit functions (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Convert GOP structures to typedef and clean up some types (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Remove unused typedef (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Remove bogus packed attribute from GOP structures (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub/random: Initialize pointer variables to zero for mixed mode (Chris von Recklinghausen) [1754739] - [firmware] efi: Fix efi_loaded_image_t::unload type (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Fix memory leak in __gop_query32/64() (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Return EFI_SUCCESS if a usable GOP was found (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Return EFI_NOT_FOUND if there are no usable GOPs (Chris von Recklinghausen) [1754739] - [hv] mm/memory_hotplug.c: remove __online_page_set_limits() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: don't allow to online/offline memory blocks with holes (Chris von Recklinghausen) [1754739] - [mm] mm/page_isolation.c: convert SKIP_HWPOISON to MEMORY_OFFLINE (Chris von Recklinghausen) [1754739] - [mm] mm/page_alloc.c: don't set pages PageReserved() when offlining (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: remove __online_page_free() and __online_page_increment_counters() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: add a bounds check to __add_pages() (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Fix NMI vs ESPFIX (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Unwind the ESPFIX stack earlier on exception entry (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Move FIXUP_FRAME after pushing fs in SAVE_ALL (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Simplify common_exception (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Use ss segment where required (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Fix IRET exception (Chris von Recklinghausen) [1754739] - [x86] x86/xen/32: Make xen_iret_crit_fixup() independent of frame layout (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Repair 32-bit Xen PV (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Allow int3_emulate_push() (Chris von Recklinghausen) [1754739] - [x86] x86: Hide the int3_emulate_call/jmp functions from UML (Chris von Recklinghausen) [1754739] - [x86] ftrace/x86_64: Emulate call function while updating in breakpoint handler (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Provide consistent pt_regs (Chris von Recklinghausen) [1754739] - [x86] kprobes, x86/ptrace.h: Make regs_get_kernel_stack_nth() not fault on bad stack (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe, x86/ftrace: Add pt_regs frame annotations (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe, x86/kprobes: Fix frame pointer annotations (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe: Move ENCODE_FRAME_POINTER to asm/frame.h (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Clean up return from interrupt preemption path (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Simulation mode (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Switch to balloon_page_alloc() (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Implement balloon compaction (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Convert loaned_pages to an atomic_long_t (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Rip out memory isolate notifier (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Use adjust_managed_page_count() insted of totalram_pages_* (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Drop page array (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Cleanup rc handling in cmm_init() (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Report errors when registering notifiers fails (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Implement release() function for sysfs device (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Push EFI_MEMMAP check into leaf routines (Chris von Recklinghausen) [1754739] - [mm] powerpc: Don't flush caches when adding memory (Chris von Recklinghausen) [1754739] - [firmware] efi/random: use arch-independent efi_call_proto() (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Don't evaluate exception stacks before setup (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Mark pages PG_offline in balloon_append() (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Drop __balloon_append() (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Set pages PageOffline() in balloon_add_region() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: prevent memory leak when reusing pgdat (Chris von Recklinghausen) [1754739] - [base] drivers/base/memory.c: don't store end_section_nr in memory blocks (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: remove move_pfn_range() (Chris von Recklinghausen) [1754739] - [mm] mm: introduce compound_nr() (Chris von Recklinghausen) [1754739] - [x86] x86/asm: Make some functions local labels (Chris von Recklinghausen) [1754739] - [firmware] efi-stub: Fix get_efi_config_table on mixed-mode setups (Chris von Recklinghausen) [1754739] - [x86] efi/x86: move UV_SYSTAB handling into arch/x86 (Chris von Recklinghausen) [1754739] - [x86] efi: x86: move efi_is_table_address() into arch/x86 (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: remove unneeded return for void function (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Remove redundant CLACs in getuser/putuser error paths (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Remove ELF function annotation from copy_user_handle_tail() (Chris von Recklinghausen) [1754739] - [x86] x86/entry: Fix thunk function ELF sizes (Chris von Recklinghausen) [1754739] - [x86] x86/entry/64: Simplify idtentry a little (Chris von Recklinghausen) [1754739] - [mm] mm: vmscan: correct some vmscan counters for THP swapout (Chris von Recklinghausen) [1754739] - [mm] mm/gup: speed up check_and_migrate_cma_pages() on huge page (Chris von Recklinghausen) [1754739] - [x86] x86/ldt: Initialize the context lock for init_mm (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries: avoid blocking in irq when queuing hotplug events (Chris von Recklinghausen) [1754739] - [arm64] arm64/mm: don't initialize pgd_cache twice (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: fix recent_rotated history (Chris von Recklinghausen) [1754739] - [x86] efi/x86/Add missing error handling to old_memmap 1:1 mapping code (Chris von Recklinghausen) [1754739] - [mm] arm64/mm: Inhibit huge-vmap with ptdump (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: simplify shrink_inactive_list() (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: cleanup memory offline path (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: fix the wrong usage of N_HIGH_MEMORY (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: drop redundant hugepage_migration_supported check (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: unlock 1GB-hugetlb on x86_64 (Chris von Recklinghausen) [1754739] - [mm] mm: move recent_rotated pages calculation to shrink_inactive_list() (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Initialize PGD cache during mm initialization (Chris von Recklinghausen) [1754739] - [x86] x86/alternatives: Initialize temporary mm for patching (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Fix a crash with kmemleak_scan() (Chris von Recklinghausen) [1754739] - [x86] x86/irq: Fix outdated comments (Chris von Recklinghausen) [1754739] - [mm] mm/hotplug: treat CMA pages as unmovable (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remove stack overflow debug code (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remap the IRQ stack with guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Split the IRQ stack into its own pages (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Init hardirq_stack_ptr during CPU hotplug (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Handle irq stack allocation failure proper (Chris von Recklinghausen) [1754739] - [xen] x86/irq/32: Invoke irq_ctx_init() from init_IRQ() (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Rename irq_stack_ptr to hardirq_stack_ptr (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Rename hard/softirq_stack to hard/softirq_stack_ptr (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Make irq stack a character array (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Define IRQ_STACK_SIZE (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Speedup in_exception_stack() (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Split debug IST stack (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Enable IST guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Disconnect IST index and stack order (Chris von Recklinghausen) [1754739] - [x86] x86/cpu: Remove orig_ist array (Chris von Recklinghausen) [1754739] - [x86] x86/cpu: Prepare TSS.IST setup for guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Use cpu_entry_area instead of orig_ist (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Use cpu entry area instead of orig_ist (Chris von Recklinghausen) [1754739] - [mm] x86/traps: Use cpu_entry_area instead of orig_ist (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Provide exception stack accessor (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Prepare for IST guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Add structs for exception stacks (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Cleanup setup functions (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Make IST index zero based (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Remove unused stack defines on 32bit (Chris von Recklinghausen) [1754739] - [x86] x86/64: Remove stale CURRENT_MASK (Chris von Recklinghausen) [1754739] - [x86] x86/idt: Remove unused macro SISTG (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Sanitize the top/bottom confusion (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remove a hardcoded irq_stack_union access (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack: Fix off-by-one errors in stack identification (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Limit IST stack overflow check to #DB stack (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: Consolidate early page table allocation (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: don't call page table ctors for init_mm (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: use appropriate ctors for page tables (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Move copy_user_handle_tail() into asm (Chris von Recklinghausen) [1754739] - [mm] mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: fix notification in offline error path (Chris von Recklinghausen) [1754739] - [mm] mm/hotplug: fix an imbalance with DEBUG_PAGEALLOC (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: explicitly pass the head to isolate_huge_page (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: do not allocate duplicate stack variables in shrink_page_list() (Chris von Recklinghausen) [1754739] - [mm] mm: refactor swap-in logic out of shmem_getpage_gfp (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: remove 7th argument of isolate_lru_pages() (Chris von Recklinghausen) [1754739] - [mm] mm: remove extra drain pages on pcp list (Chris von Recklinghausen) [1754739] - [mm] mm/memory-hotplug: Allow memory resources to be children (Chris von Recklinghausen) [1754739] - [kernel] mm/resource: Move HMM pr_debug() deeper into resource code (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: fix off-by-one in is_pageblock_removable (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Move percpu_setup_debug_store() to __init section (Chris von Recklinghausen) [1754739] - [mm] arm64: ptdump: Don't iterate kernel page tables using PTRS_PER_PXX (Chris von Recklinghausen) [1754739] - [firmware] efi: Use 32-bit alignment for efi_guid_t (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: __offline_pages fix wrong locking (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: test_pages_in_a_zone do not pass the end of zone (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: is_mem_section_removable do not pass the end of a zone (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: don't bail out in do_migrate_range() prematurely (Chris von Recklinghausen) [1754739] - [mm] arm64: dump: no need to check return value of debugfs_create functions (Chris von Recklinghausen) [1754739] - [x86] x86/asm/suspend: Drop ENTRY from local data (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: deobfuscate migration part of offlining (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: try to migrate full pfn range (Chris von Recklinghausen) [1754739] - [mm] mm, hotplug: move init_currently_empty_zone() under zone_span_lock protection (Chris von Recklinghausen) [1754739] - [mm] mm: only report isolation failures when offlining memory (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: be more verbose for memory offline failures (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: print reason for the offlining failure (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: drop pointless block alignment checks from __offline_pages (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Don't unmap EFI boot services code/data regions for EFI_OLD_MEMMAP and EFI_MIXED_MODE (Chris von Recklinghausen) [1754739] - [x86] kprobes/x86: Blacklist non-attachable interrupt functions (Chris von Recklinghausen) [1754739] - [include] linkage: add generic GLOBAL() macro (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Move efi__boot_services() to arch/x86 (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Unmap EFI boot services code/data regions from efi_pgd (Chris von Recklinghausen) [1754739] - [mm] x86/mm/pageattr: Introduce helper function to unmap EFI boot services (Chris von Recklinghausen) [1754739] - [x86] x86/fpu: Use the correct exception table macro in the XSTATE_OP wrapper (Chris von Recklinghausen) [1754739] - [firmware] efi/arm/libstub: Pack FDT after populating it (Chris von Recklinghausen) [1754739] - [x86] x86/traps: Complete prototype declarations (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: clean up node_states_check_changes_offline() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: simplify node_states_check_changes_online (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: tidy up node_states_clear_node() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: spare unnecessary calls to node_set_state (Chris von Recklinghausen) [1754739] - [include] include/linux/linkage.h: align weak symbols (Chris von Recklinghausen) [1754739] - [mm] shmem: Convert shmem_add_to_page_cache to XArray (Chris von Recklinghausen) [1754739] - [mm] shmem: Convert shmem_radix_tree_replace to XArray (Chris von Recklinghausen) [1754739] - [mm] mm: Convert add_to_swap_cache to XArray (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Clear the CS high bits (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Set up temporary text mapping for 32bit system (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Switch to original page table after resumed (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Enable CONFIG_ARCH_HIBERNATION_HEADER on 32bit system (Chris von Recklinghausen) [1754739] - [x86] x86, hibernate: Extract the common code of 64/32 bit system (Chris von Recklinghausen) [1754739] - [x86] x86-32/asm/power: Create stack frames in hibernate_asm_32.S (Chris von Recklinghausen) [1754739] - [x86] PM / hibernate: Check the success of generating md5 digest before hibernation (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Load fixmap GDT in efi_call_phys_epilog() before setting cr3 (Chris von Recklinghausen) [1754739] - [x86] x86/xen: Move pv irq related functions under CONFIG_XEN_PV umbrella (Chris von Recklinghausen) [1754739] - [x86] x86/extable: Introduce _ASM_EXTABLE_UA for uaccess fixups (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Load fixmap GDT in efi_call_phys_epilog() (Chris von Recklinghausen) [1754739] - [tools] tools arch: Update arch/x86/lib/memcpy_64.S copy used in 'perf bench mem memcpy' (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Remove redundant check for kmem_cache_create() (Chris von Recklinghausen) [1754739] - [x86] x86/power/hibernate_64: Remove VLA usage (Chris von Recklinghausen) [1754739] - [firmware] efi: Deduplicate efi_open_volume() (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Merge 32-bit and 64-bit UGA draw protocol setup routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Align efi_uga_draw_protocol typedef names to convention (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Merge the setup_efi_pci32() and setup_efi_pci64() routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Prevent reentrant firmware calls in mixed mode (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add debug code to check entry/exit CR3 (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add PTI CR3 switches to NMI handler code (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add PTI cr3 switch to non-NMI entry/exit points (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Handle Entry from Kernel-Mode on Entry-Stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Introduce SAVE_ALL_NMI and RESTORE_ALL_NMI (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Leave the kernel via trampoline stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Enter the kernel via trampoline stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Load task stack from x86_tss.sp1 in SYSENTER handler (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Split off return-to-kernel path (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Unshare NMI return path (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Put ESPFIX code into a macro (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Rename TSS_sysenter_sp0 to TSS_entry2task_stack (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Clean up the eboot code (Chris von Recklinghausen) [1754739] - [x86] x86/asm/64: Use 32-bit XOR to zero registers (Chris von Recklinghausen) [1754739] - [x86] Revert "x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static" (Frank Ramsay) [1833121] - [x86] Revert "x86/platform/uv: Unexport sn_coherency_id" (Frank Ramsay) [1833121] - [x86] Revert "x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c" (Frank Ramsay) [1833121] - [x86] x86/apic: Cleanup the include maze (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Fix missing checks of kcalloc() return values (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Replace kmalloc() and memset() with kalloc() calls (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the unused _uv_cpu_blade_processor_id() macro (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport uv_apicid_hibits (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove _uv_hub_info_check() (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Simplify uv_send_IPI_one() (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark uv_min_hub_revision_id static (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark is_uv_hubless() static (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the UV*_HUB_IS_SUPPORTED macros (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport sn_coherency_id (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the uv_partition_coherence_id() macro (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Mark memblock related init code and data correctly (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Remove unnecessary #ifdef CONFIG_EFI (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Remove uv_bios_call_reentrant() (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Use efi_enabled() instead of test_bit() (Frank Ramsay) [1833121] - [x86] x86/apic/uv: Remove code for unused distributed GRU mode (Frank Ramsay) [1833121]- [thermal] thermal/x86_pkg_temp: Make pkg_temp_lock a raw_spinlock_t (Prarit Bhargava) [1890657] - [net] sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels (Davide Caratti) [1889601] - [netdrv] ibmveth: Identify ingress large send packets (Gustavo Duarte) [1887038] - [netdrv] ibmveth: Switch order of ibmveth_helper calls (Gustavo Duarte) [1887038] - [sound] ALSA: redhat: add drivers/soundwire tree and regmap-sdw to the redhat/filter-modules.sh (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC - enable AMD Renoir support for DMIC (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC - enable the Intel's SoundWire driver (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix jack detection with Realtek codecs when in D3 (Jaroslav Kysela) [1869536] - [sound] ALSA: fireworks: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/i915 - fix list corruption with concurrent probes (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - The front Mic on a HP machine doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: hdspm: Fix typo arbitary (Jaroslav Kysela) [1869536] - [sound] ALSA: bebob: potential info leak in hwdep_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: endpoint.c: fix repeated word 'there' (Jaroslav Kysela) [1869536] - [sound] ALSA: portman2x4: fix repeated word 'if' (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: handle all SOF_IPC_EXT types (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add version_id to avoid rt714/rt715 confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715-sdw: probe with RT714 Device ID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1316: add missing component string (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1308: add extra check on init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: add ifdef CONFIG_OF around of_device_id (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Enable MI2S BCLK and LRCLK together (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: add codec prefix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Remove unused variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Remove ti, asi-format code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Set regcache when shutting down and waking device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Add shutdown capability via a GPIO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Remove duplicate code for I/V sense (Jaroslav Kysela) [1869536] - [sound] ALSA: ASOC: Intel: sof_sdw: restore playback functionality with max98373 amps (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: add support for new SoundWire hardware layout on TGL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: remove hard-coded codec_conf table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: remove ternary operator (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_max98090: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: hda_dsp_common: use static function in conditional block (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: mx27vis-aic32x4: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-mc13783: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Pass full name to snd_ctl_notify (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715: Add power-up delay to fix dmic pop sound issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Enable the power of "MICBIAS" and "Vref2" for the DMIC clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: allow runtime pm at end of probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: add codec name prefix to ACPI machine description (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sysfs: add slave status and device number before probe (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: add enumerated Slave device to device list (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove an unnecessary NULL check (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: add data port test fail interrupt (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: enable test modes (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: enable Data Port test modes (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - set mic to auto detect on a HP AIO machine (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - Don't register a cb func if it is registered already (Jaroslav Kysela) [1869536] - [sound] ALSA: HDA: Early Forbid of runtime PM (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - remove kerneldoc for internal hdac_i915 function (Jaroslav Kysela) [1869536] - [sound] ALSA: ctl: Workaround for lockdep warning wrt card->ctl_files_rwlock (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Disable autosuspend for Lenovo ThinkStation P620 (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: Remove uninitialized_var() usage (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: arm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: add dpcm_create/remove_debugfs_state() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: move CONFIG_DEBUG_FS functions to top side (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: magician: convert to use i2c_new_client_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: Enable AC'97 bus support for PXA machines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: Select regmap from AC'97 machines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support TDM out and 8ch I2S out (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: kirkwood: fix external clock probe defer (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: keywest: convert to use i2c_new_client_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: Use sizeof_field() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: hdac_hdmi: Set ops to NULL on remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: More constifications (Jaroslav Kysela) [1869536] - [sound] ALSA: i2c: Constify snd_kcontrol_new items (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1869536] - [sound] ALSA: vxpocket: Support PCM sync_stop (Jaroslav Kysela) [1869536] - [sound] ALSA: mips: Constify snd_device_ops definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: i2c: Constify snd_device_ops definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: Fix running status after receiving sysex (Jaroslav Kysela) [1869536] - [sound] ALSA: arm: More constification (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: add "WITH Linux-syscall-note" to SPDX tag of uapi headers (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: replace '---help---' in Kconfig files with 'help' (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix SPDX license for header file (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac: make SOF HDA codec driver probe deterministic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Refactor sample rate function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix the spacing and new lines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Convert bit mask to GENMASK in header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix unbalanced calls to pm_runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add the TAS2110 class-D amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: add size checks for ext_bytes control .put() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: fix size checks for volatile ext_bytes control .get() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: fix size checks for ext_bytes control .get() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tlv320aic32x4: Enable fast charge (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tlv320aic32x4: Ensure a minimum delay before clock stabilization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt711: wait for the delayed work to finish when the system suspends (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix error handling with update_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix required DT properties in the code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Add missing bias level power states (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix calling reset in probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt700: wait for the delayed work to finish when the system suspends (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add the TAS2564 compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: add missing MODULE_LICENSE() for imx-common (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pm: Fix prepare callback behavior for OF usecase (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cs42l51: add additional ADC volume controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix the process being scheduled on core0 always (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - fix CONTROLLER_IN_GPU macro name (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - handle multiple i915 device instances (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - controller is in GPU on the DG1 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - add Intel DG1 PCI and HDMI ids (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO" (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add delay quirk for H570e USB headsets (Jaroslav Kysela) [1869536] - [sound] ALSA: compat_ioctl: avoid compat_alloc_user_space (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: fix spellint typo in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: fix iounmap in error handler (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use {u32|u16}p_replace_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: use u32p_replace_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: get max rows and cols info from compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add support to block packing mode (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: clear BIT FIELDs before value set (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: Add generic bandwidth allocation algorithm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak4458: Add DSD support for ak4458 and ak4497 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-sc7180: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Add support for tgl-h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv320aic32x4: do software reset before clock registration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv320aic32x4: fix missing aic32x4_disable_regulators() in error path (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Set MCLK input or output direction (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add fsl_sai_check_version function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add new added registers and new bit definition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe-clocks: add q6afe clock controller (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce verbosity of boot error logs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: fix range checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: remove several superfluous type-casts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: (cosmetic) remove redundant "ret" variable uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: update test for pm_runtime_get_sync() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: debug: update test for pm_runtime_get_sync() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add `src_hash` to `sof_ipc_fw_version` structure (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Add debug support for imx platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: disable size checks for bytes_ext controls if needed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_audmix: make clock and output src write only (Jaroslav Kysela) [1869536] - [sound] ALSA: remove calls to usb_pipe_type_check for control endpoints (Jaroslav Kysela) [1869536] - [sound] ALSA: hiface: move to use usb_control_msg_send() (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: move to use usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: 6fire: move to use usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: usx2y: move to use usb_control_msg_send() (Jaroslav Kysela) [1869536] - [sound] ALSA: USB: add usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: USB: move snd_usb_pipe_sanity_check into the USB core (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Fix the failure to flush DAC data before playback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Fix DC calibration on bypass boost mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: stm32: sai: add pm_runtime support (Jaroslav Kysela) [1869536] - [sound] ALSA: rockchip_i2s: fix a possible divide-by-zero bug in rockchip_i2s_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Use DMI oem string search for tgl_max98373_rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: s/master/primary (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: remove the HDA_DSP_CORE_MASK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: modify core_power_up/down op (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: rename cores_mask to host_managed_cores_mask (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: j721e-evm: Add support for j7200-cpb audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support machine driver with rt1015p (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe-dai: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add codec lpass clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: update q6afe_set_param to support global clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add lpass hw voting support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add global q6afe waitqueue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: prepare afe_apr_send_pkt to take response opcode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6routing: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: dt-bindings: Add q6afe display_port dt binding (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015p: add codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: add parity error injection through debugfs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: export broadcast read/write capability for tests (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: realtek-soundwire: ignore initial PARITY errors (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: use quirk to filter out invalid parity errors (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: add first_interrupt_done status (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: filter-out unwanted interrupt reports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC/soundwire: bus: use property to set interrupt masks (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Remove unused inline function snd_mask_sizeof (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: Remove unused function hpi_stream_group_get_map() (Jaroslav Kysela) [1869536] - [sound] ALSA: mixart: Correct comment wrt obsoleted tasklet usage (Jaroslav Kysela) [1869536] - [sound] ALSA: aloop: Replace tasklet with work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mchp-spdiftx: add driver for S/PDIF TX Controller (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix SLIBMUS/SLIMBUS typo (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: fix race condition between suspend and Slave device alerts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Parse auxiliary devices from device tree (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mt6359: fix failed to parse DT properties (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Implement snd_sof_bytes_ext_volatile_get kcontrol IO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: Add support for WO and RO TLV byte kcontrols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Kconfig: Allow the j721e machine driver to be used on K3 platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KeemBay: Fix warning potential ! vs ~ typo (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add v1.5.1 compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: dt-bindings: soundwire: add bindings for Qcom controller (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add support for mmio soundwire master devices (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: avoid dependency on CONFIG_SLIMBUS (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix abh/ahb typo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: make process type optional (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_mux (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_process (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_tone (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_asrc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_src (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_host (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_volume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: add helper for setting up IPC component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: use the sof_ipc_comp reserved bytes for extended data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: parse comp_ext_tokens for all widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: create component extended tokens (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add comp_ext to struct snd_sof_widget (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: tokens: add token for component UUID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Manage module clock via DAPM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Attach the bus clock to the regmap (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Sort masks in a consistent order (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix field bit number indentation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix ADC_DIG_CTRL field name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1_MXR_SRC field names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1_ADCDAT_CTRL field names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1 MODCLK widget name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Remove extraneous widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add dailink .prepare and .hw_free callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add dailink .trigger callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: clarify return value for get_sdw_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove stream handling from .prepare and .hw_free (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove .trigger operation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix NULL/ERR_PTR confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: fix NULL/IS_ERR confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove SDW_REG_SHIFT() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom : use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: use SDW_DISCO_LINK_ID() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: use FIELD_GET() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: define and use addr bit masks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix core enable sequence (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: support topology components on secondary cores (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add a "core" parameter to widget loading functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Set SAI Channel Mode to Output Mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Support multiple data channel enable bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: don't manage link power individually (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: pass link_mask information to each master (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add error log for clock-stop invalid configs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: enable hw_sync as needed by hardware (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add multi-link hw_synchronization information (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: update multi-link definition with hw sync details (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add missing support for all clock stop modes (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add multi-link support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: ignore software command retries (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: disable shim wake on suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix port_readydynamic allocation in mipi_disco (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add definition for maximum number of ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: soundwire: remove port_readyusage from codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_core: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: rawmidi: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: atmel: ac97: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: (cosmetic) align argument names (Jaroslav Kysela) [1869536] - [sound] ALSA: usb: scarless_gen2: fix endianness issue (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: auto_parser: remove shadowed variable declaration (Jaroslav Kysela) [1869536] - [sound] ALSA: aoa: i2sbus: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: core: init: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: compress_offload: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: compress_offload: dereference after checking for NULL pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: core: timer: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: core: timer: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm_memory: dereference pointer after NULL checks (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm: simplify locking for timers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Prefer async probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: remove artificial component and DAI name constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: shutdown codec when changing filter type (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Clean kernel log from deferred probe error messages (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Simplify error handling during FW boot (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Add sof_tgl_ops for TGL platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Define FW boot sequence with ICCMAX (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: define macro for code loader stream format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: modify the signature of get_stream_with_tag() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Add helper function to program ICCMAX stream (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Remove unused parameters in cl_dsp_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix VS_LTRC register name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sof-of-dev: Add .arch_ops field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Replace sdev->private with sdev->pdata->hw_pdata (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: add extended rom status dump to error log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix the ipc_size calculation for process component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: intel: hda: support also devices with 1 and 3 dmics (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: report error only for the last ROM init iteration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: Add debug box region (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: Parse debug ABI version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: fix memory leak in get_ext_windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: IPC: make sof_ipc_window monosized (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix intel_suspend/resume defined but not used warning (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 exit commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 custom controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 microphone selection commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add output selection for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add DSP setup functions for AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add init data for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add pre-init function for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add ca0132_mmio_init data for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Set AE-7 bools and select mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add SoundBlaster AE-7 pincfg (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix Recon3D Center/LFE output (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add quirk output selection structures (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Clean up ca0132_alt_out_select (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Remove surround output selection (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add bass redirection controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add full-range speaker selection controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add surround channel config control (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add speaker tuning initialization commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Cleanup ca0132_mmio_init function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hdmi: tidy up a memset() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: use consistent HDAudio spelling in comments/docs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add dev_dbg log when driver is not selected (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: acpi: add dev_dbg() log for probe completion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: IPC: reduce verbosity of IPC pointer updates (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: reduce the log level for unhandled widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: remove unnecessary memory alloc for sdev->private (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: (cosmetic) use the "bool" type where it makes sense (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add -EPROBE_DEFER check for regmap init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak5558: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: clean-up inclusion of header files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: add rt711 rt1316 rt714 SDCA codec support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add topology filename override based on dmi data match (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: SoC: Intel: sof_sdw: Add support for product Ripto (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: rename id as part_id (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: check SoundWire version when matching codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373-sdw: add missing test on resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: add support for SDCA boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: mirror CML and TGL configurations (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-soundwire: add support for rt5682 on link2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: cnl: add support for rt5682 on SoundWire link2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: modify SoundWire version id in acpi match table (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Correct wrongly matching entries with audio class (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Fix I/O voltage range configuration during probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: add .exit callback function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: add support for TLV320AIC32x4 codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add build support for SoundWire (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: add missing out of memory check on drvdata->clks allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt6359: add codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Properly match with audio interface class (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Simplify quirk entries with a macro (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Move device rename and profile quirks to an internal table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Hook up component probe function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: s3c2412-i2s: avoid hardcoded S3C2410_PA_IIS (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: rx1950: turn into platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: neo1973: turn into platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: use SDW_SLAVE_ENTRY_EXT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Update naming in error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Get "extal" clock rate by clk_get_rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: add a dedicated menuconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Export DAC/ADC monomix switches (Jaroslav Kysela) [1869536] - [sound] ALSA: remove duplicate "the the" phrase in Kconfig text (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm0010: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: simple-card: Use snd_soc_of_parse_aux_devs() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Add common helper to parse aux devs from device tree (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak4458: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hdmi: support 'ELD' mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: sound/soc/intel: Fix spelling mistake "cant" --> "can't" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: various vendors: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-topology: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-topology: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: sst-utils: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: cldma: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-nhlt: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell-ipc: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Baytrail: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: (cosmetic) align parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_pvt: simplify return handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_loader: remove always-true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: remove useless assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: platform-pcm: fix redundant return (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_pvt: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst: remove useless NULL assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: platform-pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: compress: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst-atom-controls: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: refine runtime pm for SDW_INTEL_CLK_STOP_BUS_RESET (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: support clock_stop mode without quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: handle power rail dependencies for clock stop mode (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_NOT_ALLOWED support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_BUS_RESET support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_TEARDOWN for pm_runtime suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: pm_runtime idle scheduling (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reinitialize IP+DSP in .prepare(), but only when resuming (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: call helper to reset Slave states on resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix race condition on system resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reset pm_runtime status during system resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add pm_runtime support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Fix clock handling around codec level probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Move soft reset handling to codec level probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Move required devm_* allocations to device level code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add support to copy callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add gapless support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: prepare set params to accept profile change (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add next track metadata support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add support to gapless flag in q6asm open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add support to remove intial and trailing silence (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add length to write command token (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: use flags directly from q6asm-dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: make commands specific to streams (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: rename misleading session id variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Enable TDM audio capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Moving GPIO reset and add ADC reset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Increased maximum supported channels (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Enable 24 bit audio support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for earpiece switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for line out switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Make line out routes stereo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for headphone switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Make headphone routes stereo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Group and sort mixer routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Gate the amplifier clock during suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Fix duplicate use of ADC enable bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcht_cx2072x: simplify return handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: rename shadowed variable for all broadwell boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda-codec: move variable used conditionally (Jaroslav Kysela) [1869536] - [sound] ALSA: ASOC: SOF: Intel: hda-codec: move unused label to correct position (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Add a quirk for LRCK inversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Add missing mixer routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix DAPM to match the hardware topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Replace synchronous check with fsl_sai_dir_is_synced (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Drop TMR/RMR settings for synchronous mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Refine enable/disable TE/RE sequence in trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: Use platform_get_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Use platform_get_resource (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-sc7180: Add platform driver for lpass audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: fix concurrency issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass: Use regmap_field for i2sctl and dmactl registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: fix memory leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: Replace card->dev with component->dev (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Move ahbix clk to platform specific function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Add common array to initialize soc based core clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Use dev_dbg() in rt5682_clk_check() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: Add basic power management support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: enable pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add argument to function definition (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add module_sdw_driver helper macro (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sdw.h: fix indentation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sdw.h: fix PRBS/Static_1 swapped definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: virmidi: Fix running status after receiving sysex (Jaroslav Kysela) [1869536] - [sound] ALSA: bt87x: use pci_status_get_and_clear_errors (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - The Mic on a RedmiBook doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fixup headset for ASUS GX502 laptop (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix double free of dangling pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: use consistent HDAudio spelling in comments/docs (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add dev_dbg log when driver is not selected (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: hdmi - add Rocketlake support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Fix power transition refactor (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-toddr: fix channel order on g12 platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: add snd_soc_find_dai_with_mutex() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: always check pin power status in i915 pin fixup (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Fix refcount imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt700: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt711: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1308-sdw: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98373: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for UR22C (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: fixup ams_delta_mute() function name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pcm3168a: ignore 0 Hz settings (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda: Add support for Loongson 7A1000 controller" (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Program WAKEEN register for Tegra (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Fix 2 channel swapping for Tegra (Jaroslav Kysela) [1869536] - [sound] ALSA: ca0106: fix error code handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: tgl_max98373: fix a runtime pm issue in multi-thread case (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-digi00x: exclude Avid Adrenaline from detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ALSA; firewire-tascam: exclude Tascam FE-8 from detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Set card->owner to avoid warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: atom: Add period size constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: avoid reset of sdo_limit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in autosuspend delay (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: fix typo in comment on INTSTAT registers (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: ignore broken processing/extension unit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: Fix memleak in sst_media_open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Avoid attempts to read unreadable registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: msm8916-wcd-analog: fix register Interrupt offset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Prevent access to invalid VU register bits on WM1811 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add model alc298-samsung-headphone (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Update documentation comment for MS2109 quirk (Jaroslav Kysela) [1869536] - [sound] ALSA: isa: fix spelling mistakes in the comments (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1) (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Flex Book (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Fix potential Oops in snd_echo_resume() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6routing: add dummy register read/write function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe-dai: mark all widgets registers as SND_SOC_NOPM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Make soc_component_read() returning an error code again (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - reverse the setting value in the micmute_led_set (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaduio: Drop superfluous volatile modifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Replacing component->name with codec_dai->name (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Pioneer DDJ-RB (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fix spelling mistake "buss" -> "bus" (Jaroslav Kysela) [1869536] - [sound] ALSA: pci: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: isa: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Add 100us dma stop delay (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add dma stop delay variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hda/tegra: Set buffer alignment to 128 bytes (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: Serialize ioctls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Add quirk to force connectivity (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add startech usb audio dock name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_i2s: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_dmic: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_ahub: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_admaif: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra186_dspk: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add support for Lenovo ThinkStation P620 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: renoir: restore two more registers during resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Do not remove ADDITIONAL_CONTROL_4 from readable register list (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Remove fsl_asoc_card_set_bias_level function (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda: call runtime_allow() for all hda controllers" (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix AE-5 microphone selection commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add new quirk ID for Recon3D (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Two step component registration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Simplify snd_soc_component_initialize declaration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Relocate and expose snd_soc_component_initialize (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sh: Replace 'select' DMADEVICES 'with depends on' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Fix value of FSL_SAI_CR1_RFW_MASK (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: use less strict tests for dailink capabilities (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rk3399_gru_sound: Add DAPM pins, kcontrols for jack detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Do not access WM8962_GPIO_BASE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: use resource_size (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: drop unnecessary list_empty (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Added hw_params support for ALC1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Passing card structure based on codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Renaming snd-soc-card structure and fields (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Add sound support for Midas boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Rework disable channel function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Add 8kHz audio support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Fix regression causing sysfs entries to disappear (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdm-formatters: fix sclk inversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdmin: fix g12a skew (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdm-interface: fix link fmt setup (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fixed HP right speaker no sound (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix NULL pointer dereference during suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm2835: Silence clk_get() error on -EPROBE_DEFER (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Update shutdown GPIO property (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: disable traces when switching to S0Ix D0I3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: fix the suspend procedure to support s0ix entry (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Fix keep_power assignment for non-component devices (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Workaround for spurious wakeups on some Intel platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: endpoint : remove needless check before usb_free_coherent() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Restore PME_EN state at Power On (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/boards: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fix add a "ultra_low_power" function for intel reference board (alc256) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: don't call pm_runtime_* on card device (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: typo_fix: enable headset mic of ASUS ROG Zephyrus G14(GA401) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G15(GA502) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: update dsm param bin max size (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Update dsm init sequence and condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: don't report of_xlate_dai_name failures (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Avoid printing errors for -EPROBE_DEFER (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: apq8016_sbc: Use qcom_snd_parse_of() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Parse properties with "qcom, " prefix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Support parsing links without DPCM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe: Remove unused q6afe_is_rx_port() function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Use snd_soc_dai_link_set_capabilities() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Use devm for resource management (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix dac event dapm mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support configuring dai fmt from DT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: add IRQF_SHARED for devm_request_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Fix build error due to 64-by-32 division (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: fix SND_SOC_J721E_EVM warnings & errors (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: omap: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Support new metadata block ID's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: xtensa: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: kirkwood: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sprd: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: generic: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: au1x: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dwc: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cirrus: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sh: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: stm: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-xxx: add asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix deadlock after PCM open error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix memleak on module unload (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: call patch_ops.free() on probe error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support machine driver with max98357b (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support left justified format for I2S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - fix probe regression on systems without i915 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pcm: Update rate/channels for SAI/ESAI DAIs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Update SAI config bclk/fsync rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Add SAI dai driver for i.MX/i.MX8X (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8m: Fix SAI DAI driver for i.MX8M (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Fix ESAI DAI driver name for i.MX8/iMX8X (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Use ARRAY_SIZE instead of hardcoded value (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops for imx8 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for SSL2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based ADMAIF driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix reset gpio property name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98357a: move control of SD_MODE back to DAI ops (Jaroslav Kysela) [1869536] - [sound] ALSA: Soundwire: intel_init: save Slave(s) _ADR info in sdw_intel_ctx (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add wake interrupt support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel/cadence: merge Soundwire interrupt handlers/threads (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: add implementation of sdw_intel_enable_irq() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: introduce helper for link synchronization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: introduce a helper to arm link synchronization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: revisit SHIM programming sequences (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: report slave_ids for each link to SOF driver (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add clock stop quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add mutex for shared SHIM register access (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add prototype for WAKEEN interrupt processing (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add link_list to handle interrupts with a single thread (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: update headers for interrupts (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reuse code for wait loops to set/clear bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: board: sof_rt5682: Update rt1015 pll input clk freq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: avoid crash if invalid DSP topology loaded (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add support for systems without i915 audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove properties in card remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove hard-coded codec name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.h: drop a duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd9335.h: fix duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra20_das.h: delete duplicated words (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Avoid the use of one-element array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra186 based DSPK driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based AHUB driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based I2S driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based DMIC driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add support for CIF programming (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: change match table ehl-rt5660 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: remove .digital_mute (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace the word "slave" in vmaster API (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: delete duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fixed ALC298 sound bug by adding quirk for Samsung Notebook Pen S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: optimize the power consumption (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.h: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: Use IS_ERR() instead of IS_ERR_OR_NULL() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: disable MICBIAS and Vref2 widget in default (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: Use the defined variable to clean code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: snd_soc_dai_digital_mute() for both CPU/Codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: fixes the missed kfree() for axg_card_add_tdm_loopback (Jaroslav Kysela) [1869536] - [sound] ALSA: info: Drop WARN_ON() from buffer NULL sanity check (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Use kmemdup in podhd_set_monitor_level() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add support for Loongson 7A1000 controller (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: Add missed return for calling soc_component_ret (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: Trivial: Fix misspelling of 'exists' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support Headphone and Microphone Jack detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: simple-card-utils: Support configure pin_name for asoc_simple_init_jack (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: es*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: alc*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: pcm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ssm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tas*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: spear: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdmi-codec: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: drm/mediatek: exit earlier if failed to register audio driver (Jaroslav Kysela) [1869536] - [sound] ALSA: drm/i2c/tda998x: Make tda998x_audio_digital_mute static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.c: add .no_capture_mute support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdmi-codec: return -ENOTSUPP for digital_mute (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix snd_hda_codec_cleanup() documentation (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: export snd_hda_codec_cleanup_for_unbind() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Report the button event in the headset type only (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add missed put_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - fixup for yet another Intel reference board (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable Speaker for ASUS UX563 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable Speaker for ASUS UX533 and UX534 (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix the kernel-doc comment (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Replace blacklist word (Jaroslav Kysela) [1869536] - [sound] ALSA: via82xx: Replace the words whitelist (Jaroslav Kysela) [1869536] - [sound] ALSA: nm256: Replace the words blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: intel8x0: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: es1968: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: ctxfi: Replace the word blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: bt87x: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: don't free dma_data in DAI shutdown (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: allocate/free dma_data in set_sdw_stream (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove stream allocation/free (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: add helper to startup/shutdown streams (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: implement get_sdw_stream() operations (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Disable sync-write operation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ssi: don't use discriminatory terms for debug log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: siu: don't use discriminatory terms for parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsi: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rsnd: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rsnd: don't use discriminatory terms for function names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Enable Vref2 under using PLL2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: spdif: Handle clk by pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: re-enable IRQs on failure path (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: add hw monitor volume control for POD HD500 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer TravelMate B311R-31 with ALC256 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G14(G401) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - change to suitable link model for ASUS platform (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix race against the error recovery URB submission (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Improve dai-set-fmt comment in cht_codec_fixup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support HDMI jack reporting (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: use hdmi-codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: use hdmi-codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add kctl for configuring TX validity bit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Clear the validity bit for TX (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Sync the pending work cancel at disconnection (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Perform sanity check for each URB creation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak4458: Remove set but never checked variable 'ret' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv320aic26: Demote seemingly unintentional kerneldoc header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt5659: Remove many unused const variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt5631: fix spurious kernel-doc start and missing arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: ux500_msp_i2s: Remove unused variables 'reg_val_DR' and 'reg_val_TSTDR' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: pxa-ssp: Demote seemingly unintentional kerneldoc header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: sun4i-spdif: Fix misspelling of 'reg_dac_txdata' in kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: sun4i-i2s: add missing clock and format arguments in kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: q6asm: Provide documentation for 'codec_profile' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sti: uniperif: fix 'defined by not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel-pdmic: remove codec component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel-classd: remove codec component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98390: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: es8316: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: omap-mcbsp-st: Remove set, but unused variable 'w' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: jz4770: Remove defined but never used variable 'mic_boost_tlv' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da7219: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da7210: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: aio-core: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra20_das: remove always-true comparison (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: pcm: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: spdif: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sdw_max98373: add card_late_probe support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-sdw: add MAX98373 I2C dependencies (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: add SoundWire support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: split I2C and common parts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support machine driver with rt1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: extract codec and DAI names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: remove forward declaration of headset_init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: sort header inclusions in alphabetical (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt286: fix unexpected interrupt happens (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8974: remove unsupported clock mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8974: fix Boost Mixer Aux Switch (Jaroslav Kysela) [1869536] - [sound] ALSA: xen: Remove superfluous fall through comments (Jaroslav Kysela) [1869536] - [sound] ALSA: atmel: Remove invalid "fall through" comments (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Address bugs in the interrupt handling (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Prevent some noise on unloading the module (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Prevent races in calls to set_audio_format() (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Race conditions around "opencount" (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Remove redundant check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: fixed kernel warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support machine driver with rt1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: sort header inclusions in alphabetical (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: use dev_err instead of pr_err (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add command opcode to timeout error report (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: core: fix null-ptr-deref bug during device removal (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: codecs: max98373: remove Idle_bias_on to let codec suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: Removed superfluous volume control from chip default (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: add more logs when topology load fails (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: factor kfree(se) in error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: use break on errors, not continue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: fix tlvs in error handling for widget_dmixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: fix kernel oops on route addition error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: add min/max channels for SAI/ESAI on i.MX8/i.MX8M (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix non BE conversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: set dai_link dpcm_ flags with a helper (Jaroslav Kysela) [1869536] - [sound] ALSA: usb/line6: remove 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: mpc8610_hpcd: Add missing of_node_put() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: add default clock handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACPI dependency check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-i2s: remove unused-but-set variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-pcm-dma: remove unused-but-set variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-i2s: fix 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-pcm-dma: fix 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: acp-rt5645: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: acp-da7219-max98357a: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Fix build error on m68k and others (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Remove only the registered component in devm functions (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Add Intel silent stream support (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/au88x0: remove "defined but not used" warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: vx_core: remove warning for empty loop body (Jaroslav Kysela) [1869536] - [sound] ALSA: pcmcia/pdaudiocf: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/via82xx: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/fm801: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/es1938: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: xen: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/oxygen/xonar_wm87x6: remove always true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/rme9652/hdspm: remove always true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/korg1212: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/emu10k1: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pci/emu10k1: remove "set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/ctxfi: fix kernel-doc warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/ctxfi/ctatc: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/aw2-saa7146: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/echoaudio: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/gus: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/gus: remove -Wmissing-prototypes warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: compress: fix partial_drain completion state (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for RTX6001 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix SND_HDA_GENERIC kconfig & build (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm_iec958: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer Veriton N4660G with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer C20-820 with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable audio jacks of Acer vCopperbox with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix Lenovo Thinkpad X1 Carbon 7th quirk subdevice id (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: improve debug traces for stream lookups (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: fix failures at PCM open on Intel ICL and later (Jaroslav Kysela) [1869536] - [sound] ALSA: opl3: fix infoleak in opl3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8400: remove unused variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-ac97: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add logic to check dmic hardware runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: j721e-evm: Fix missing unlock on error in j721e_audio_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_esai: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_asrc: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_spdif: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_ssi: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_ssi_dbg: remove spurious kernel-doc comment start (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Rename dev_gpio to gpio1_is_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Remove struct rt5670_platform_data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: return -EINVAL on unrecognized speaker amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8994: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm9713: remove spurious kernel-doc comment start (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8960: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8986: fix missing kernel-doc arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs42l42: remove always-true comparisons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs4270: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sof-acpi-dev: fix 'defined but unused' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: atom: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: atom: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: support MAX98390 speaker amp (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Add an option to select internal ratio mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Enable interrupt in dma_open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KeemBay: Fix header guard (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Refine regcache usage with pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Add custom machine driver for j721e EVM (CPB and IVI) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: davinci-mcasp: Specify stream_name for playback/capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: add format and rate constraints on rk3399 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Rectifying Unbalanced pm_runtime_enable! issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null even soundwire mode (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix some typos (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Replace s/frame/packet/ where appropriate (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix packet size calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: initialize bus clock base and scale registers (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add definitions for 1.2 spec (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove multiple blank lines (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: extend SDW_SLAVE_ENTRY (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: convert open-coded while() to for() loop (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Add new gpio1_is_ext_spk_en quirk and enable it on the Lenovo Miix 2 10 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Correct RT5670_LDO_SEL_MASK (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Change bus format to I2S 2 channel (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add voltage sense slot configuration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add right and left channel slot programming (Jaroslav Kysela) [1869536] - [sound] ALSA: asoc: Update supported rate and format for dummy dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Drop HAS_DMA dependency to fix link failure (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: Add MAX98373 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Fix a typo in Kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: add match table for TGL MAX98373 + RT5682 SoundWire driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: Intel: cml_rt1011_rt5682: explicitly access first codec (Jaroslav Kysela) [1869536] - [sound] ALSA: snd/soc: correct trivial kernel-doc inconsistency (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: Update TDM configuration in hw_params (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: use for_each_card_prelinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: cml_rt1011_rt5682: use statically define codec config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: cml_rt1011_rt5682: reduce log level for printing quirk (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for jsl-max98360a-rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: Fix the comment for max_98373_components (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: add dai_trigger function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: byt*.c: remove cast in dev_info quirk log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add quirk override with kernel parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt_rt298: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cml_rt1011_rt5682: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: nocodec: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: add missing header inclusion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: declare missing structure prototypes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: move definition of enum snd_soc_bias_level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Fix format issue for extra space before a comma (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Update shutdown GPIO property (Jaroslav Kysela) [1869536] - [sound] ALSA: AsoC: amd: add missing snd- module prefix to the acp3x-rn driver kernel module (Jaroslav Kysela) [1869536] - [sound] ALSA: core: Warn on empty module (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - let hs_mic be picked ahead of hp_mic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Add WM8524 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix the pop noise while OMTP type headset plugin (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix OOB access of mixer element list (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Samsung USBC Headset (AKG) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1011: fix KASAN out-of-bounds bug in find_next_bit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: set playback and capture constraints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix uninitialized scalar variable in fsl_easrc_set_ctx_format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: disable jack in dailink .exit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_rt5682: move disabling jack to dai link's exit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: kbl-rt5660: use .exit() dailink callback to release gpiod (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix module load/unload issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: introduce exit() callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_mqs: Fix unchecked return value for clk_prepare_enable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_mqs: Don't check clock is NULL before calling clk API (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Flight S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Add controls for calibration and diagnostic FW (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: remove snd_soc_component_read32() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: alc*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: msm*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wcd*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: use io_mutex correctly (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge snd_soc_component_read() and snd_soc_component_read32() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: Constify static structs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: transition to 3 steps initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: pass link information as platform data (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: use devm_ allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: remove useless test (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: clarify drvdata and remove more indirections (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: cleanups for indirections/logs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix memory leak with devm_kasprintf (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: clock_stop: don't deal with UNATTACHED Slave devices (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: Replace 'objs' by 'y' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add pm runtime function (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Enable sync-write operation as default for all controllers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: Fix a reference count leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Removing unnecessary instance initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: closing specific instance (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Let LED cdev handling suspend/resume (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Unify LED helper code (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/sigmatel: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/conexant: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Add vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Drop the old mic-mute LED hook (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Drop unused snd_hda_gen_fixup_micmute_led() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/sigmatel: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/conexant: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Add a helper for mic-mute LED with LED classdev (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Always call led-trigger for mic mute LED (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Intel: add missing PCI IDs for ICL-H, TGL-H and EKL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht*: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: byt*: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix memleak with regmap not freed on remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI IDs for ICL-H and TGL-H (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for CometLake-S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: SOF: merge COMETLAKE_LP and COMETLAKE_H (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: imply acodec glue on axg sound card (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add support for imx6sx platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Add MQS support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Fix reference count leaks (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix potential use-after-free of streams (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add quirk for MSI GE63 laptop (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Flush DAC data before playback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_ssi: Fix bclk calculation for mono channel (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Use mixer control to switch between DMICs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Add Amp init common setting func (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: DAI wclk supports 44100 Hz output (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Let PLL2 support the freq conversion for 44100Hz sample rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Add new supports on rl6231 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-parallel-out: Fix a reference count leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8960: Support headphone jack detection function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Add driver for Aries boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm0010: Use kmemdup rather than duplicating its implementation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Add makefiles and kconfig changes for KeemBay (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Add KeemBay platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt6358: support DMIC one-wire mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix "Function parameter not described" warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix -Wunused-but-set-variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix -Wmissing-prototypes warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: tidyup Copyright (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge soc_pcm_trigger_start/stop() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge soc-io.c into soc-component.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_hw_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_prepare() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add soc_component_err() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_initialize() to soc-component.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_xxx_regmap() to soc-component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add soc_component_pin() and share code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm/compress: reduce verbosity on mapping ok messages (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: improve error messages in soc_pcm_new() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: reduce verbosity of BE override message (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Use SG-buffer only when direct DMA is available (Jaroslav Kysela) [1869536] - [sound] ALSA: memalloc: Make SG-buffer helper usable for continuous buffer, too (Jaroslav Kysela) [1869536] - [sound] ALSA: memalloc: Initialize all fields of snd_dma_buffer properly (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Use dma_mmap_coherent() on x86, too (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98357a: add compatible string for MAX98360A (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Clear RIRB status before reading WP (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Update rt1015 default register value according to spec modification (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: set correct directions for dailinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: q6afe: add support to get port direction (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: fix checks for multi-cpu FE dailinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Let dai clks be registered whether mclk exists or not (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: wait for notification when changing clock configuration for protocol v3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-topology: use devm_snd_soc_register_dai() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-devres: add devm_snd_soc_register_dai() (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Set 48 kHz rate for Rodecaster (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Denon DCD-1500RE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Fix data copying speed issue with EDMA (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Reuse the dma channel if available in Back-End (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dmaengine_pcm: export soc_component_to_pcm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: export snd_soc_lookup_component_nolocked (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for SSL2+ (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add NVIDIA codec IDs 9a & 9d through a0 to patch table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: handle EOS correctly (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Update regmap readable reg and volatile (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5645: Add platform-data for Asus T101HA (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT10-A tablet (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: nocodec: conditionally set dpcm_capture/dpcm_playback flags (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: replace capture_only by dpcm_capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: only convert non DPCM link to DPCM link (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: dpcm: fix playback/capture checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: dpcm: Only allow playback/capture if supported (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: add missing free_irq() in error path (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: disallow linking stream to itself (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Manage auto-pm of all bundled interfaces (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - add a pintbl quirk for several Lenovo machines (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: fix snd_pcm_link() lockdep splat (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Use the new macro for HP Dock rename quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add vendor, product and profile name for HP Thunderbolt Dock (Jaroslav Kysela) [1869536] - [sound] ALSA: emu10k1: delete an unnecessary condition (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix inconsistent card PM state after resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix potential crash during param fw loading (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix incorrect printf qualifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Defer probe when fail to find codec device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Modify the target DMIC clock rate (Jaroslav Kysela) [1869536] - [sound] ALSA: es1688: Add the missed snd_card_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add sienna_cichlid audio asic id for sienna_cichlid up (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add Pioneer DJ DJM-900NXS2 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: q6asm-dai: kCFI fix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_remove_dai_link() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_add_dai_link() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_set_bias_level_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_set_bias_level() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_remove() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_late_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add probed bit field to snd_soc_card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_resume_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_resume_pre() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_suspend_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_suspend_pre() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_subclass to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_get_codec_dai() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_set/get_drvdata() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_jack_new() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_get_kcontrol() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: add soc-card.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc.h: convert bool to bit field for snd_soc_card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof_pcm512x: remove CONFIG_SND_HDA_CODEC_HDMI condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof-sdw: remove CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: add depends on SND_SOC_SOF_HDA_AUDIO_CODEC for common hdmi (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fixing usage of plain int instead of NULL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: fix generic hda codec support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Baytrail: fix 'defined but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: Subject:ASoC: soc-pcm: fix BE dai not hw_free and shutdown during mixer update (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: reduce verbosity of error messages for sof-dai and sof-link (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Fix dma_chan leak when config DMA channel failed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Enable class-D silence and clock detections (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-i2s-out: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: remove the redundant pass checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: refine and log the header in the correct pass (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: Remove sound driver for ancient platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Removing unnecessary instance initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sta32x: add missed function calls in error paths (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: split i2c driver into separate module (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: nau8810: add I2C device and compatible ID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ingenic: Unconditionally depend on devicetree (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Clean up quirk entries with macros (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Fix return value check in asoc_mmp_sspa_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-spdif-in: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-spdif-out: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: harden IPC initialization and handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: mask BUSY or DONE interrupts in handler (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: add .remove op (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ipc: ignore DSP replies received when they are not expected (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: byt/cht: add .pm_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640/51: remove .ignore_suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pm: handle resume on legacy Intel platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: byt: Add PM callbacks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: Move dai_link widgets to runtime to fix use after free (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add new codec supported for ALC287 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2552: Fix runtime PM imbalance in tas2552_component_probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fix incomplete error-handling in img_i2s_in_probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Fix runtime PM imbalance in omap2_mcbsp_set_clks_src (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fix semicolon.cocci warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add a model for Thinkpad T570 without DAC workaround (Jaroslav Kysela) [1869536] - [sound] ALSA: hwdep: fix a left shifting 1 by 31 UB bug (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Merge suspend/resume function to runtime_suspend/resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-audmix: Fix unused assignment to variable 'ret' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Fix -Wmissing-prototypes warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Added Amplifier Driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse compiler version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse firmware version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce extended manifest (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: Adjust validation condition for fw_offset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_set_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_shutdown() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_startup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_be_hw_params_fixup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: remove unneeded parameter from snd_soc_link_xxx() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: move soc_rtd_xxx() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: add soc-link.c (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add support for MOTU UltraLite-mk3 (FireWire only model) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: keep ADCs and DACs always on (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add digital microphone controls (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v2 for fetching mode switch (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v3 for clock source getter (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v2 for clock source getter (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: remove obsoleted codes (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: use table-based calculation of packet formats for stream management (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: use table-based calculation of packet formats for proc (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add alternative functions to detect packet format for protocol v3 (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add alternative functions to detect packet format for protocol v2 (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add model-specific table of chunk count (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: drop protocol structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add wrapper functions for protocol-dependent operations (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: localize protocol data (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: move spec data to v3 protocol file (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: move spec data to v2 protocol file (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: remove Compulab pxa2xx boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add mono playback switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add filter controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: don't use regmap defaults (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Fix the error handling in probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use a single module (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: fix ADC level control (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix spelling mistake (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix trailing line in sysfs_slave.c (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add Slave sysfs support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: add sysfs support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: disco: s/ch/channels/ (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add Device Tree support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: return error when acp de-init fails (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: refactoring dai_hw_params() callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: fix kernel warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Do not pass irq numbers in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Remove unneeded ifdef's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Set ASR76K and ASR56K based on processing clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: enable build for RN machine driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: RN machine driver using dmic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: create platform devices for Renoir (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: enable Renoir acp3x drivers build (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP PDM DMA driver pm ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP PCI driver PM ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP PDM DMA driver dai ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add acp3x pdm driver dma ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: irq handler changes for ACP3x PDM dma driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP3x PDM platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: create acp3x pdm platform device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add acp init/de-init functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP PCI driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP3x IP register header (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add more fixup entries for Clevo machines (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: add runtime pm support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: add sdw_master_device support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: add unique bus id (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: introduce sdw_slave_type and sdw_master_type (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: rename sdw_bus_master_add/delete, add arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio option (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT8-A tablet (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: fix volume controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Fix unused assignment in fsl_set_clock_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: Make the driver name consistent across files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Fix indentation to put on one line affected code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cleanup dai / component active code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dwc: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: jz4740: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cirrus: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atomel: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_stream_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dapm: use snd_soc_dai_activate()/deactivate() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_action() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: replace snd_soc_runtime_activate()/deactivate() to macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: move set_pll to codec level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: move set_sysclk to codec level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: Add da7212 DT compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: remap BTN_0 as KEY_PLAYPAUSE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: remap buttons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remap buttons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: fix typo in components string (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: change machine driver name for WM8804 platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: make imx8m_dsp_ops static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: make dsp_ops static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: sdw: relax sdw machine select constraints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: add support to smart amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: inform DSP that driver is going to be removed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add a power_down_notify method (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Do nothing when DSP PM callbacks are not set (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt1308-sdw: remove duplicate allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: fix memory leak in set_sdw_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: don't assign slave_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: fix incorrect hw_base increase (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Unexport some local helper functions (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Drop unused snd_hda_queue_unsol_event() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Fix potential race in unsol event handler (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add duplex sound support for USB devices using implicit feedback (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fixing upper volume limit for RME Babyface Pro routing crosspoints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: introduce SoC specific data (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Limit int mic boost for Thinkpad T530 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Use force clear for WM8962_SYSCLK_ENA after reset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Set appropriate bus format for given bit width (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add support for the runtime power management (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Prepare/unprepare the clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Remove the embedded struct ssp_device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add support for soc-generic-dmaengine-pcm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Get rid of dma_params and phys_base (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: A trivial typo fix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: omap-mcbsp: Fix an error handling path in 'asoc_mcbsp_probe()' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Update description for HDaudio kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: mop500: Fix some refcounted resources issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Drop S20_3LE case (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Flip SNDRV_PCM_FMTBIT_S24_3LE on (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Use readq to read 64 bit registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: baytrail: Fix register access (Jaroslav Kysela) [1869536] - [sound] ALSA: SoC: rsnd: add interrupt support for SSI BUSIF buffer (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add COEF workaround for ASUS ZenBook UX431DA (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of ASUS UX581LV with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS UX550GE with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS GL503VM with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: drivers/powerpc: Replace _ALIGN_UP() by ALIGN() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: core: fix error return code in sof_probe_continue() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: set headset button maps (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: fulfill missing entries in Kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: (cosmetic) remove multiple superfluous "else" statements (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: (cosmetic) remove multiple superfluous "else" statements (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: Use IRQF_ONESHOT (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: add support for RME Fireface UFX (untested) (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: add support for RME FireFace 802 (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: code refactoring to decide name of sound card (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: code refactoring to add enumeration constants for model identification (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: start IR context immediately (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: fix configuration error for nominal sampling transfer frequency (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Notebook (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: use sequence of syt offset and data block on pool in AMDTP domain (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: pool ideal sequence of syt offset and data block (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: add cache for packet sequence to AMDTP domain structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for data block calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for syt offset calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for syt computation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for parameters of packet queue and IRQ timing (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: add reference to domain structure from stream structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: use macro for maximum value of second in 1394 OHCI isoc descriptor (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: fix invalid assignment to union data for directional parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: fireworks: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: rawmidi: Fix racy buffer resize under concurrent accesses (Jaroslav Kysela) [1869536] - [sound] ALSA: soc: fsl_asrc: Make some functions static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1016: Add the rt1016 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5677: Use devm_snd_soc_register_component() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: fix error handling of platform_get_irq() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Allow SST driver on SKL and KBL platforms with DMIC (Jaroslav Kysela) [1869536] - [sound] ALSA: portman2x4: Use bitwise instead of arithmetic operator for flags (Jaroslav Kysela) [1869536] - [sound] ALSA: sound/ppc: Use bitwise instead of arithmetic operator for flags (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: Fix error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd :High hw_level while simultaneous capture (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Return true, false for return type bool (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Make I2S SD lines configurable (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Use hdac_to_hda_codec macro (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Use dev_to_hdac_dev macro (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: reduce verbosity on enumeration (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: debugfs: clarify SDPX license with GPL-2.0-only (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: don't init debugfs on device registration error (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix error handling in probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8524: Add support S32_LE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Use the defined variable to simplify code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Add condition to prevent SoC providing bclk in ratio of 50 times of sample rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Add the K bypass for the PLL parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: adau7118: Mark the ADAU7118 reset register as volatile (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max9768: update contact email (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98373: reorder max98373_reset() in resume (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: workaround playback failure on Tegra194 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add member to store ratio for stripe control (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: correct number of SDO lines for Tegra194 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add mapping for ASRock TRX40 Creator (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda/realtek: Fix pop noise on ALC225" (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints format (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Add poll callback for hwdep (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: hwdep: add support for O_NONBLOCK opening mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF/Intel: clarify SPDX license with GPL-2.0-only (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ipc: channel map structures (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: sof-wm8804: support for Hifiberry Digiplus boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Update correct LED status at the first time usage of update_mute_led() (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/wavefront: prevent out of bounds write in ioctl (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix unused variable warning w/o CONFIG_LEDS_TRIGGER_AUDIO (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add LED class support for micmute LED (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable micmute LED on and HP system (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Introduce polarity for micmute LED GPIO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sort out Kconfig, again (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove unwanted btn_type assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove duplicate rt5682_reset() calls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: replace message printing from pr_() to dev_() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove empty default case (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix space issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: simplify assertions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: change trigger sequence to fix pop noise when stopping playback on sdw platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: replace sof_link_hda_process by sof_set_dai_config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: set component dai_index to ipc dai config dai_index (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: send ipc for all found DAIs in sof_set_dai_config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: Fix oops during module removal (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix I2C/Soundwire dependencies (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: mark PM functions __maybe_unused (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: remove unused inline function snd_seq_oss_timer_is_realtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs-saif: Fix unused assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: nau8810: add AUX related dapm widgets and routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm97xx: fix ac97 dependency (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: component: suppress uninitialized-variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_get_metadata() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_set_metadata() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_pointer() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_ack() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_get_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_set_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_shutdown() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_start() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_remove() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_bespoke_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_prepare() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_new() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: don't overwide dai->driver->ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add soc_dai_err() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: broadwell: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bdw-rt5650: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bdw-rt5677: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: add explicit dependency on GPIOLIB when DMIC is used (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: davinci-mcasp: Fix dma_chan refcnt leak when getting dma type (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Automatic DMIC format configuration according to information from NHLT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Multiple I/O PCM format support for pipe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Add alternative topology binary name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hisilicon: Use the defined variable to clean code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Check for null pointer before dereferencing "ctx" in fsl_easrc_hw_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: remove comparison to bool in omap_mcbsp_dai_set_dai_fmt() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs-saif: Avoid unnecessary check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add amp number in components string for ucm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hisilicon: Use IS_ERR() instead of IS_ERR_OR_NULL() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: Disable exception interrupt before scheduling tasklet (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm_native: result of put_user() needs to be checked (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: snd-sof-intel-hda-common - add hda_model parameter and pass it to HDA codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: avoid false-positive Wuninitialized warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: set CLOCKING2 as non-volatile register (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix racy list management in output queue (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Remove async workaround for Scarlett 2nd gen (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Improve frames size computation (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Refactor Intel NHLT init (Jaroslav Kysela) [1869536] - [sound] ALSA: ACPICA: Add NHLT table signature (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add missing dependency on IMX_SCU (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: fix spelling mistake "prefitler" -> "prefilter" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Replace guid_copy() with import_guid() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dmic: Allow GPIO operations to sleep (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: return true, false in snd_soc_volsw_is_stereo() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Fix build (Jaroslav Kysela) [1869536] - [sound] ALSA: oxygen: use true, false for bool variables (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix a limit check in proc_dump_substream_formats() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - fix oops on systems without i915 audio codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Add initial ZL38060 driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: remove snd_compr_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sprd: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: atom: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: q6sp6: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: wm_adsp: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: add snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: txx9: add back the hack for a too small resource_size_t (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Add EASRC ASoC CPU DAI drivers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Move common definition to fsl_asrc_common (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Support new property fsl, asrc-format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support new property fsl, asrc-format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: rename asrc_priv to asrc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Enable audio mclk during tegra_asoc_utils_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add audio mclk parent configuration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Use device managed resource APIs to get the clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd934x: remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd9335: remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd934x: remove unnecessary comparisons to bool (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: split woofer and tweeter support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Fix wrong dependency of da7210 and wm8983 (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Print more information in stream proc files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: txx9: don't work around too small resource_size_t (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Power transition refactor (Jaroslav Kysela) [1869536] - [sound] ALSA: Fix misspellings of "Analog Devices" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Fix misspellings of "Analog Devices" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: handle multiple sets of tuple arrays (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: stop parsing when all tokens have been found (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Get HDA rate and channels from topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix: parse hda_tokens to &config->hda (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Get ALH rate amd channels from topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: align sof_ipc_dai_alh_params with FW (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Rename deprecated DMIC IPC struct field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Change DMIC load IPC to fixed length (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Fix typo in header file comment text (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add XRUN flags field to struct sof_ipc_buffer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: make sof_ipc_cc_version to fixed length (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in topology.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in trace.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in info.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add debug ABI version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add probe support extend data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Add support for DC Blocker (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse compiler version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse firmware version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce extended manifest (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce offset in firmware data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Mark get_ext* function ext_hdr arguments as const (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix: handle DAI widget connections properly with multiple CPU DAI's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add i.MX8MP device descriptor (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Add i.MX8M HW support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: fix undefined reference issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Fix randbuild error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: Remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Omit superfluous error message in fsl_micfil_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: skl_hda_generic: remove rtd->codec_dai (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: RME Babyface Pro mixer patch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8900: remove some defined but not used symbols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8990: remove some defined but unused symbols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8991: remove defined but not used 'wm8991_dapm_rxvoice_controls' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: remove wm1811_snd_controls and mixin_boost_tlv (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Support nvidia, headset property (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt5682: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1308: remove codec dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_hdmi: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_hdmi: fix compilation issue in fallback mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-da7219-max98373: add DMIC widget and route (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: init all aggregated codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: support Elkhart Lake with rt5660 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for ElkhartLake (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add ElkhartLake HDMI codec vid (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_da7219_max98373: Add BE dailink for dmic16k (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: remove cpu_dai/codec_dai/cpu_dais/codec_dais (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: tidyup soc_new_pcm_runtime() rtd setups (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: set rtd->num_cpu/codec at soc_new_pcm_runtime() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Add dynamic debug logs in soc_dai_link_sanity_check() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: log number of microphones detected in NHLT tables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce verbosity on SoundWire detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt1308-sdw: reduce verbosity (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: remove unnecessary parentheses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: remove unneeded variables (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add autodetection for SoundWire (Jaroslav Kysela) [1869536] - [s390] mm/gup: fix gup_fast with dynamic page table folding (Philipp Rudo) [1879401 1768713 1883266]- [netdrv] Take common prefetch code structure into a function (Ivan Vecera) [1882011] - [net] lwtunnel: only keep the available bits when setting vxlan md->gbp (Xin Long) [1879363] - [net] sched: only keep the available bits when setting vxlan md->gbp (Xin Long) [1879363] - [vhost] Don't call access_ok() when using IOTLB (Greg Kurz) [1883084] - [clocksource] hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functions (Mohammed Gamal) [1880230] - [net] core: Replace driver version to be kernel version (Petr Oros) [1867192] - [net] use netif_is_bridge_port() to check for IFF_BRIDGE_PORT (Josef Oskera) [1867923] - [net] sctp: fix sctp_auth_init_hmacs() error path (Xin Long) [1891413] - [net] sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant (Xin Long) [1891413] - [net] sctp: add SCTP_PEER_ADDR_THLDS_V2 sockopt (Xin Long) [1891413] - [net] sctp: add support for Primary Path Switchover (Xin Long) [1891413] - [net] sctp: add SCTP_EXPOSE_POTENTIALLY_FAILED_STATE sockopt (Xin Long) [1891413] - [net] sctp: add SCTP_ADDR_POTENTIALLY_FAILED notification (Xin Long) [1891413] - [net] sctp: add pf_expose per netns and sock and asoc (Xin Long) [1891413] - [net] qos offload add flow status with dropped count (Ivan Vecera) [1890263] - [i2c] i2c: i801: Add support for Intel Tiger Lake PCH-H (Steve Best) [1782725] - [i2c] i2c: i801: Add support for Intel Emmitsburg PCH (David Arcari) [1837403] - [mfd] mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs (David Arcari) [1837403] - [powerpc] powerpc/papr_scm: Fix warning triggered by perf_stats_show() (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Limit the readability of 'perf_stats' sysfs attribute (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Add support for fetching nvdimm 'fuel-gauge' metric (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Fetch nvdimm performance stats from PHYP (Diego Domingos) [1875364] - [include] driver-core: Introduce DEVICE_ATTR_ADMIN_{RO, RW} (Diego Domingos) [1875364] - [net] netfilter: reject: skip csum verification for protocols that don't support it (Florian Westphal) [1740082] - [net] netfilter: Fix remainder of pseudo-header protocol 0 (Florian Westphal) [1740082] - [powerpc] powerpc/pseries: Add KVM guest doorbell restrictions (Diego Domingos) [1870221] - [powerpc] powerpc: Inline doorbell sending functions (Diego Domingos) [1870221] - [powerpc] powerpc/pseries: Use doorbells even if XIVE is available (Diego Domingos) [1870221] - [powerpc] powerpc: Fix P10 PVR revision in /proc/cpuinfo for SMT4 cores (Steve Best) [1885927] - [tools] selftests: implement flower classifier terse dump tests (Ivan Vecera) [1879189] - [net] sched: cls_flower: implement terse dump support (Ivan Vecera) [1879189] - [net] sched: implement terse dump support in act (Ivan Vecera) [1879189] - [net] sched: introduce terse dump flag (Ivan Vecera) [1879189] - [netdrv] net/mlx5e: Fix missing switch_id for representors (Petr Oros) [1874073] - [tools] selftests: net: Add port split test (Petr Oros) [1874073] - [net] devlink: Move input checks from driver to devlink (Petr Oros) [1874073] - [net] devlink: Add a new devlink port split ability attribute and pass to netlink (Petr Oros) [1874073] - [netdrv] mlxsw: Set port split ability attribute in driver (Petr Oros) [1874073] - [net] devlink: Add a new devlink port lanes attribute and pass to netlink (Petr Oros) [1874073] - [netdrv] mlxsw: Set number of port lanes attribute in driver (Petr Oros) [1874073] - [net] devlink: Replace devlink_port_attrs_set parameters with a struct (Petr Oros) [1874073] - [net] devlink: Move switch_port attribute of devlink_port_attrs to devlink_port (Petr Oros) [1874073] - [net] devlink: Move set attribute of devlink_port_attrs to devlink_port (Petr Oros) [1874073] - [netdrv] mlx5e: Use helper API to get devlink port index for all port flavours (Petr Oros) [1874073] - [net] devlink: Add support for board.serial_number to info_get cb. (Petr Oros) [1879194] - [net] devlink: Support setting hardware address of port function (Petr Oros) [1879195] - [net] devlink: Support querying hardware address of port function (Petr Oros) [1879195] - [net] devlink: Prepare devlink port functions to fill extack (Petr Oros) [1879195] - [net] sctp: not disable bh in the whole sctp_get_port_local() (Xin Long) [1704525] - [net] sctp: replace some sock_net(sk) with just 'net' (Xin Long) [1704525] - [x86] x86/resctrl: Fix a NULL vs IS_ERR() static checker warning in rdt_cdp_peer_get() (Terry Bowman) [1873124]- [net] sched: initialize with 0 before setting erspan md->u (Xin Long) [1879358] - [net] ipv6: Discard next-hop MTU less than minimum link MTU (Balazs Nemeth) [1879893] - [kvm] Revert "x86/kvm: Move context tracking where it belongs" (Nitesh Narayan Lal) [1890284] - [video] hyperv_fb: Update screen_info after removing old framebuffer (Kairui Song) [1870081] - [x86] x86/kexec: Use up-to-dated screen_info copy to fill boot params (Kairui Song) [1870081] - [netdrv] netdevsim: Register control traps (Petr Oros) [1888724] - [net] devlink: Add ACL control packet traps (Petr Oros) [1888724] - [net] devlink: Add layer 3 control packet traps (Petr Oros) [1888724] - [net] devlink: Add layer 2 control packet traps (Petr Oros) [1888724] - [net] devlink: Add 'control' trap type (Petr Oros) [1888724] - [net] devlink: Add 'mirror' trap action (Petr Oros) [1888724] - [netdrv] netdevsim: Move layer 3 exceptions to exceptions trap group (Petr Oros) [1888724] - [net] devlink: Create dedicated trap group for layer 3 exceptions (Petr Oros) [1888724] - [net] xfrmi: drop ignore_df check before updating pmtu (Balazs Nemeth) [1857679] - [kernel] sched/features: Fix !CONFIG_JUMP_LABEL case (Daniel Bristot de Oliveira) [1885850] - [net] flow_offload: simplify hw stats check handling (Ivan Vecera) [1888317] - [scsi] scsi: core: Only re-run queue in scsi_end_request() if device queue is busy (Ewan Milne) [1885733] - [scsi] scsi: core: Clean up scsi_noretry_cmd() (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Make sdebug_build_parts() respect virtual_gb (Ewan Milne) [1885733] - [scsi] scsi: fc: Add 256GBit speed setting to SCSI FC transport (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement lun_format (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Remove superfluous close zone in resp_open_zone() (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_sas: Add spaces around binary operator "|" (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_srp: Sanitize scsi_target_block/unblock sequences (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement tur_ms_to_ready parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix request sense (Ewan Milne) [1885733] - [scsi] scsi: core: Delete unnecessary buffer allocation for every loop iteration (Ewan Milne) [1885733] - [scsi] scsi: core: Add missing scsi_device_put() in scsi_host_block() (Ewan Milne) [1885733] - [scsi] scsi: core: Only return started requests from scsi_host_find_tag() (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_iscsi: Drop a duplicated word (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_sas: Add missing newline in sysfs 'enable' attribute (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_fc: Match HBA Attribute Length with HBAAPI V2.0 definitions (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Update documentation url and bump version (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: every_nth triggered error injection (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Support hostwide tags (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add check for sdebug_max_queue during module init (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Fix kdoc comment format (Ewan Milne) [1885733] - [scsi] scsi: sd: Fix kdoc comment format (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix in_use bitmap corruption (Ewan Milne) [1885733] - [scsi] scsi: core: Register sysfs for SCSI workqueue (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_spi: Fix function pointer check (Ewan Milne) [1885733] - [scsi] scsi: core: Fix formatting errors in scsi_lib.c (Ewan Milne) [1885733] - [scsi] scsi: core: Remove scsi_sdb_cache (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_probe() missing deallocate of device minor (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_probe() missing mutex_destroy (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Parser tables and code interaction (Ewan Milne) [1885733] - [scsi] scsi: core: Refactor scsi_mq_setup_tags function (Ewan Milne) [1885733] - [scsi] scsi: core: Fix incorrect usage of shost_for_each_device (Ewan Milne) [1885733] - [scsi] scsi: sd: Add zoned capabilities device attribute (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix an error handling bug in sdeb_zbc_model_str() (Ewan Milne) [1885733] - [scsi] scsi: pm: Balance pm_only counter of request queue during system resume (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Disallow zone sizes that are not powers of 2 (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement ZBC host-aware emulation (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_size_mb module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_nr_conv module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_max_open module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC zone commands (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC mode and VPD pages (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Bump to version 1.89 (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Re-arrange parameters alphabetically (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement PRE-FETCH commands (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Weaken rwlock around ramdisk access (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement VERIFY(10), add VERIFY(16) (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add per_host_store option (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Use scsi_et_resid() where appropriate (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Randomize command completion time (Ewan Milne) [1885733] - [scsi] scsi: core: doc: Change function comments to kernel-doc style (Ewan Milne) [1885733] - [scsi] scsi: sr: Use {get, put}_unaligned_be*() instead of open-coding these functions (Ewan Milne) [1885733] - [scsi] scsi_ioctl.c: switch SCSI_IOCTL_GET_IDLUN to copy_to_user() (Ewan Milne) [1885733] - [scsi] scsi: core: Avoid calling synchronize_rcu() for each device in scsi_host_block() (Ewan Milne) [1885733] - [scsi] scsi: st: remove unneeded variable 'result' in st_release() (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_block_release() (Ewan Milne) [1885733] - [scsi] scsi: scsi_trace: Use get_unaligned_be24() (Ewan Milne) [1885733] - [scsi] scsi: st: Use get_unaligned_be24() and sign_extend32() (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_busy_iter() (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_(block, unblock) helper function (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_complete_all_commands() helper (Ewan Milne) [1885733] - [scsi] scsi: sr: get rid of sr global mutex (Ewan Milne) [1885733] - [powerpc] scsi: sr: remove references to BLK_DEV_SR_VENDOR, leave it enabled (Ewan Milne) [1885733] - [scsi] scsi: core: remove .for_blk_mq (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Rename sd_zbc_check_zones() (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Simplify sd_zbc_check_zones() (Ewan Milne) [1885733] - [ata] scsi: core: Clean up SG_NONE (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport.h: switch to SPDX tags (Ewan Milne) [1885733] - [scsi] scsi: libsas: Inject revalidate event for root port event (Ewan Milne) [1885733] - [scsi] scsi: libsas: Stop hardcoding SAS address length (Ewan Milne) [1885733] - [scsi] scsi: clean obsolete return values of eh_timed_out (Ewan Milne) [1885733] - [scsi] scsi: libsas: Fix some indentation in libsas.h (Ewan Milne) [1885733] - [scsi] scsi: st: mark expected switch fall-throughs (Ewan Milne) [1885733] - [scsi] scsi: libsas: delete dead code in scsi_transport_sas.c (Ewan Milne) [1885733] - [nvme] nvme-rdma: params to enable pi_capable devices (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Fix return value in __lpfc_nvme_ls_abort (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: fix axchg pointer reference after free and double frees (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Fix pointer checks and comments in (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] scsi: lpfc: Fix lpfc_nodelist leak when processing unsolicited event (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] scsi: lpfc: Remove redundant initialization to variable rc (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Response support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Abort support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvme: Add Receive LS Request and Send LS Response support to nvme (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Request support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvmet: Add Send LS Request and Abort LS Request support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvmet: Add support for NVME LS request hosthandle (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor NVME LS receive handling (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Commonize lpfc_async_xchg_ctx state and flag definitions (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor nvmet_rcv_ctx to create lpfc_async_xchg_ctx (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor lpfc nvme headers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: allow to queue requests for live queues (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Revert: Fix controller creation races with teardown flow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: only use power of two io boundaries (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix reset hang if controller died in the middle of a reset (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix NULL dereference for pci nvme controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: cancel nvme device request before disabling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Fix a missed _irqsave version of spin_lock in 'nvmet_fc_fod_op_done()' (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: serialize controller teardown sequences (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix reset hang if controller died in the middle of a reset (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix timeout handler (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix controller instance leak (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix timeout handler (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: serialize controller teardown sequences (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: have nvme_wait_freeze_timeout return if it timed out (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Disable keep-alive timer when kato is cleared to 0h (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Fix wrong return value in __nvme_fc_init_request() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Use spin_lock_irq() when taking the ctrl->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: skip noiob for zoned devices (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: call blk_mq_free_request() directly (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix oops in pt cmd execution (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Use u32 for nvme_dev.q_depth and nvme_queue.q_depth (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add ns tear down label for pt-cmd handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix a memory leak (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-passthru: Reject commands with non-sgl flags set (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: remove extra variable in create ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: set ctrl state connecting after init (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce nvme_ctrl_get_by_path() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce the passthru Kconfig option (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce the passthru configfs interface (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Add passthru enable/disable helpers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add passthru code to process commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: export nvme_find_get_ns() and nvme_put_ns() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce nvme_execute_passthru_rq to call nvme_passthru_() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: remove redundant del_work_active flag (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: create helper function to obtain command effects (Gopal Tiwari) [1857052 1853231] - [nvme] nvme-hwmon: log the controller device name (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: check successful reference in nvmet_fc_find_target_assoc (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clear any SGL flags in passthru commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix deadlock in disconnect during scan_work and/or ana_work (Gopal Tiwari) [1857052 1857051 1853231] - [acpi] nvme-pci: add support for ACPI StorageD3Enable property (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: use new shared CQ mechanism (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use xarray for ctrl ns storing (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: document nvme controller states (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: use new shared CQ mechanism (Gopal Tiwari) [1857052 1857051 1853231] - [infiniband] RDMA/core: Add protection for shared CQs used by ULPs (Gopal Tiwari) [1857052 1853231] - [infiniband] RDMA/core: Introduce shared CQ pool API (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove an unnecessary condition (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove redundant validation in nvme_start_ctrl() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: prevent SK hynix PC400 from using Write Zeroes command (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix possible hang waiting for icresp response (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: explicitly update mpath disk capacity on revalidation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove ns->disk checks (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: fix some comments issues (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove redundant segment validation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use the consistent return type of nvme_pci_iod_alloc_size() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: add a blank line after declarations (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: support for multiple Command Sets Supported and Effects log pages (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: document quirked Intel models (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose reconnect_delay and ctrl_loss_tmo via sysfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: use USEC_PER_SEC instead of magic numbers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: implement multiple I/O Command Set support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: simplify nvmet_process_resp_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: leverage request plugging (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: have queue prod/cons send list become a llist (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: optimize network stack with setting msg flags according to batch size (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: verify wwnn and wwpn format (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use unsigned type for u64 (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce flags member in nvmet_fabrics_ops (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: remove has_keyed_sgls initialization (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-loop: remove unused 'target_ctrl' in nvme_loop_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove the empty line at the beginning of nvme_should_reset() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: code cleanup for nvme_alloc_host_mem() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use unsigned for io queue depth (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-core: use u16 type for ctrl->sqsize (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-core: use u16 type for directives (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix a crash in nvme_mpath_add_disk (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix a missing completion with remove invalidation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: factor out a nvme_rdma_end_request helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix deadlock due to head->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: don't protect ns mutation with ns->head->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix bogus request queue reference put (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix deadlock between ana_work and scan_work (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix possible deadlock when I/O is blocked (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: assign completion vector correctly (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: override the value of the controller's numa node (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: set initial value for controller's numa node (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use simple suspend when a HMB is enabled (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: constify nvmet_tcp_ops (Gopal Tiwari) [1857052 1857051 1853231] - [net] net: add sock_set_keepalive (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: constify nvme_tcp_mq_ops and nvme_tcp_admin_mq_ops (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: do not call del_gendisk() on a disk that was never added (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] ipv4: add ip_sock_set_tos (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] tcp: add tcp_sock_set_syncnt (Gopal Tiwari) [1857052 1857051 1853231] - [net] tcp: add tcp_sock_set_nodelay (Gopal Tiwari) [1857052 1857051 1853231] - [net] net: add sock_no_linger (Gopal Tiwari) [1857052 1857051 1853231] - [target] net: add sock_set_reuseaddr (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] net: add sock_set_priority (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: avoid race between nvme_reap_pending_cqes() and nvme_poll() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata support for block devices (Gopal Tiwari) [1857052 1857051 1853231] - [include] nvme: add Metadata Capabilities enumerations (Gopal Tiwari) [1857052 1853231] - [nvme] nvme: set dma alignment to qword (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata characteristics for a namespace (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce NVME_INLINE_METADATA_SG_CNT (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce max_integrity_segments ctrl attribute (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: enforce extended LBA format for fabrics metadata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: introduce nvme_rdma_sgl structure (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: rename nvmet_check_data_len to nvmet_check_transfer_len (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: rename nvmet_rw_len to nvmet_rw_data_len (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: generate AEN for ns revalidate size change (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce NVME_NS_METADATA_SUPPORTED flag (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce namespace features flag (Gopal Tiwari) [1857052 1857051 1853231] - [lightnvm] lightnvm: disable interleaved metadata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: make nvme_ns_has_pi accessible to transports (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add helper to revalidate bdev and file ns (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: revalidate-ns & generate AEN from configfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: set MSG_EOR if we send last payload in the batch (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: replace zero-length array with flexible-array (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: delete an unnecessary declaration (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: make sure write/poll_queues less or equal then cpu count (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: disable streams when get stream params failed (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix io_opt limit setting (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: set MSG_SENDPAGE_NOTLAST with MSG_MORE when we have more to send (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: move send/recv error handling in the send/recv methods instead of call-sites (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: mark nvmet_ana_state static (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: set MSG_SENDPAGE_NOTLAST with MSG_MORE when we have more to send (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: replace kstrndup() with kmemdup_nul() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: dma read memory barrier for completions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: try to send request in queue_rq context (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: align addrfam list to spec (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: flush scan work on passthrough commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: define constants for identification values (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for address treq (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for ana states (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for address family (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: stop using ->queuedata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove volatile cqes (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: avoid scheduling io_work if we are already polling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clean up error handling in nvme_init_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove last_sq_tail (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add generic type-name mapping (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: centralize port enable access for configfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: avoid gcc-10 zero-length-bounds warning (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: use bh_lock in data_ready (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add ns revalidation support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: slight cleanup for kbuild test warnings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: unlink head after removing last namespace (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: set bdi capabilities once (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: revalidate after verifying identifiers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: use SRQ per completion vector (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: add an error flow for post_recv failures (Gopal Tiwari) [1857052 1853231] - [nvme] nvme: remove the magic 1024 constant in nvme_scan_ns_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: release namespace head reference on error (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: avoid an Identify Controller command for each namespace scan (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: factor out a nvme_ns_remove_by_nsid helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: consolidate chunk_sectors settings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: consolodate io settings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: revalidate namespace stream parameters (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clean up nvme_scan_work (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: refine the Qemu Identify CNS quirk (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: check namespace head shared property (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: always search for namespace head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove unused parameter (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: add LS failure messages (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: provide num dword helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Add Disconnect Association Xmt support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: track hostport handle for associations (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: add target to host LS request support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: refactor to enable target to host LS (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: rename ls_list to ls_rcv_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: perform small cleanups on unneeded checks (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Update header and host for common definitions for LS handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Update target for common definitions for LS handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Better size LS buffers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc nvmet-fc: refactor for common LS definitions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Add Disconnect Association Rcv support (Gopal Tiwari) [1857052 1857051 1853231] - [include] nvme-fc: Sync header to FC-NVME-2 rev 1.08 (Gopal Tiwari) [1857052 1853231] - [nvme] nvme-fc and nvmet-fc: revise LLDD api for LS reception and LS request (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: fix "slimmer CQ head update" (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: prevent double free in nvme_alloc_ns() error handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: fix double free of rdma queue (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: fix bonding failover possible NULL deref (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix NULL dereference when removing a referral (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: inherit stable pages constraint in the mpath stack device (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: fix typo in comment (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: Replace comma with a semicolon (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: fix deallocation of working context (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix compat address handling in several ioctls (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix controller creation races with teardown flow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: Add warning on state change failure at nvme_rdma_setup_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: cleanup namespace identifier reporting in nvme_init_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: rename __nvme_find_ns_head to nvme_find_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: release ida resources (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: Implement get_mdts controller op (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Use nvme_state_terminal helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: allocate RW ctxs according to mdts (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Add compat_ioctl handler for NVME_IOCTL_SUBMIT_IO (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: Use scnprintf() for avoiding potential buffer overflow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Remove unused return code from nvme_delete_ctrl_sync (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Re-order nvme_pci_free_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: properly print controller address (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Add get_mdts op for controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Simplify nvme_poll_irqdisable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: slimmer CQ head update (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Remove two-pass completions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Remove tag from process cq (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: check ncqr & nsqr for set-features cmd (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Check for readiness more quickly, to speed up boot time (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: code cleanup nvme_identify_ns_desc() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Don't deter users from enabling hwmon support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose hostid via sysfs for fabrics controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose hostnqn via sysfs for fabrics controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] scsi: treewide: Consolidate {get, put}_unaligned_e24() definitions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: check sscanf value for subsys serial attr (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove unused return code from nvme_alloc_ns (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: configfs code cleanup (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: make ctrl model configurable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: make ctrl-id configurable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix uninitialized-variable warning (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Use single IRQ vector for old Apple models (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme/pci: Add sleep quirk for Samsung and Toshiba drives (Gopal Tiwari) [1857052 1857051 1853231] - [md] dm: fix request-based DM to not bounce through indirect dm_make_request (Mike Snitzer) [1885650] - [md] dm: add support for REQ_NOWAIT and enable it for linear target (Mike Snitzer) [1885650] - [block] block: add QUEUE_FLAG_NOWAIT (Mike Snitzer) [1885650] - [md] dm: export dm_copy_name_and_uuid (Mike Snitzer) [1885650] - [md] dm snap persistent: simplify area_io() (Mike Snitzer) [1885650] - [md] dm thin metadata: Remove unused local variable when create thin and snap (Mike Snitzer) [1885650] - [md] dm raid: fix discard limits for raid0, raid1 and raid10 (Mike Snitzer) [1885650] - [md] dm: use dm_table_get_device_name() where appropriate in targets (Mike Snitzer) [1885650] - [md] dm table: make 'struct dm_table' definition accessible to all of DM core (Mike Snitzer) [1885650] - [md] dm: eliminate need for start_io_acct() forward declaration (Mike Snitzer) [1885650] - [md] dm: simplify __process_abnormal_io() (Mike Snitzer) [1885650] - [md] dm: push use of on-stack flush_bio down to __send_empty_flush() (Mike Snitzer) [1885650] - [md] dm thin metadata: Fix use-after-free in dm_bm_set_read_only (Mike Snitzer) [1885650] - [md] dm thin metadata: Avoid returning cmd->bm wild pointer on error (Mike Snitzer) [1885650] - [md] dm cache metadata: Avoid returning cmd->bm wild pointer on error (Mike Snitzer) [1885650] - [md] dm integrity: fix error reporting in bitmap mode after creation (Mike Snitzer) [1885650] - [md] dm crypt: Initialize crypto wait structures (Mike Snitzer) [1885650] - [md] dm mpath: fix racey management of PG initialization (Mike Snitzer) [1885650] - [md] dm writecache: handle DAX to partitions on persistent memory correctly (Mike Snitzer) [1885650] - [md] dm ioctl: Fix compilation warning (Mike Snitzer) [1885650] - [md] dm raid: Remove empty if statement (Mike Snitzer) [1885650] - [md] dm verity: Fix compilation warning (Mike Snitzer) [1885650] - [md] dm bufio: do buffer cleanup from a workqueue (Mike Snitzer) [1885650] - [md] dm verity: add "panic_on_corruption" error handling mode (Mike Snitzer) [1885650] - [md] dm: use noio when sending kobject event (Mike Snitzer) [1885650] - [md] dm writecache: add cond_resched to loop in persistent_memory_claim() (Mike Snitzer) [1885650] - [md] dm ioctl: use struct_size() helper in retrieve_deps() (Mike Snitzer) [1885650] - [md] dm writecache: skip writecache_wait when using pmem mode (Mike Snitzer) [1885650] - [md] dm writecache: correct uncommitted_block when discarding uncommitted entry (Mike Snitzer) [1885650] - [md] dm crypt: avoid truncating the logical block size (Mike Snitzer) [1885650] - [md] dm bufio: clean up rbtree block ordering (Mike Snitzer) [1885650] - [documentation] dm integrity: add status line documentation (Mike Snitzer) [1885650] - [md] dm: replace zero-length array with flexible-array (Mike Snitzer) [1885650] - [md] dm mpath: add Historical Service Time Path Selector (Mike Snitzer) [1885650] - [md] dm mpath: pass IO start time to path selector (Mike Snitzer) [1885650] - [md] dm writecache: improve performance on DDR persistent memory (Optane) (Mike Snitzer) [1885650] - [md] dm writecache: remove superfluous test in persistent_memory_claim (Mike Snitzer) [1885650] - [md] dm persistent data: switch exit_ro_spine to return void (Mike Snitzer) [1885650] - [md] dm integrity: remove set but not used variables (Mike Snitzer) [1885650] - [documentation] dm crypt: document encrypted keyring key option (Mike Snitzer) [1885650] - [md] dm crypt: support using encrypted keys (Mike Snitzer) [1885650] - [md] dm verity fec: fix hash block number in verity_fec_decode (Mike Snitzer) [1885650] - [documentation] dm integrity: document allow_discard option (Mike Snitzer) [1885650] - [net] bridge: always clear mcast matching struct on reports and leaves (Ivan Vecera) [1859244] - [net] bridge: increase multicast's default maximum number of entries (Ivan Vecera) [1859244] - [net] bridge: mark hash_elasticity as obsolete (Ivan Vecera) [1859244] - [net] bridge: multicast: use non-bh rcu flavor (Ivan Vecera) [1859244] - [net] bridge: convert multicast to generic rhashtable (Ivan Vecera) [1859244] - [net] revert "net/bridge: Replace call_rcu_bh() and rcu_barrier_bh()" (Ivan Vecera) [1859244] - [net] ip6gre: avoid tx_error when sending MLD/DAD on external tunnels (Davide Caratti) [1847838] - [nvme] nvme-rdma: fix controller reset hang during traffic (Ming Lei) [1881760] - [nvme] nvme-tcp: fix controller reset hang during traffic (Ming Lei) [1881760] - [scsi] scsi: sd: sd_zbc: Fix ZBC disk initialization (Ming Lei) [1881760] - [md] dm: update original bio sector on Zone Append (Ming Lei) [1881760] - [s390] s390/dasd: Fix zero write for FBA devices (Ming Lei) [1881760] - [block] block: restore a specific error code in bdev_del_partition (Ming Lei) [1881760] - [block] blk-stat: make q->stats->lock irqsafe (Ming Lei) [1881760] - [block] blk-iocost: ioc_pd_free() shouldn't assume irq disabled (Ming Lei) [1881760] - [block] block: fix locking in bdev_del_partition (Ming Lei) [1881760] - [block] block: release disk reference in hd_struct_free_work (Ming Lei) [1881760] - [block] loop: Set correct device size when using LOOP_CONFIGURE (Ming Lei) [1881760] - [block] loop: unset GENHD_FL_NO_PART_SCAN on LOOP_CONFIGURE (Ming Lei) [1881760] - [block] block: check queue's limits.discard_granularity in __blkdev_issue_discard() (Ming Lei) [1881760] - [block] block: don't do revalidate zones on invalid devices (Ming Lei) [1881760] - [s390] s390/dasd: fix inability to use DASD with DIAG driver (Ming Lei) [1881760] - [tools] iocost_monitor: start from the oldest usage index (Ming Lei) [1881760] - [block] iocost: Fix check condition of iocg abs_vdebt (Ming Lei) [1881760] - [block] block: Use non _rcu version of list functions for tag_set_list (Ming Lei) [1881760] - [block] blk-cgroup: show global disk stats in root cgroup io.stat (Ming Lei) [1881760] - [block] blk-cgroup: make iostat functions visible to stat printing (Ming Lei) [1881760] - [block] block: improve discard bio alignment in __blkdev_issue_discard() (Ming Lei) [1881760] - [block] block: defer flush request no matter whether we have elevator (Ming Lei) [1881760] - [block] block: make blk_timeout_init() static (Ming Lei) [1881760] - [block] Revert "blk-rq-qos: remove redundant finish_wait to rq_qos_wait." (Ming Lei) [1881760] - [block] block: relax jiffies rounding for timeouts (Ming Lei) [1881760] - [lib] sbitmap: Consider cleared bits in sbitmap_bitmap_show() (Ming Lei) [1881760] - [block] blk-cgroup: clean up indentation (Ming Lei) [1881760] - [block] blk-cgroup: remove a dead check in blk_throtl_bio (Ming Lei) [1881760] - [block] blk-cgroup: remove blkcg_bio_issue_check (Ming Lei) [1881760] - [block] blk-cgroup: move rcu locking from blkcg_bio_issue_check to blk_throtl_bio (Ming Lei) [1881760] - [kernel] cgroup: unexport cgroup_rstat_updated (Ming Lei) [1881760] - [block] blk-cgroup: remove the !bio->bi_blkg check in blkcg_bio_issue_check (Ming Lei) [1881760] - [block] block: move the initial blkg lookup into blkg_tryget_closest (Ming Lei) [1881760] - [block] block: bypass blkg_tryget_closest for the root_blkg (Ming Lei) [1881760] - [block] block: merge blkg_lookup_create and __blkg_lookup_create (Ming Lei) [1881760] - [block] block: move the bio cgroup associatation helpers to blk-cgroup.c (Ming Lei) [1881760] - [block] block: move bio_associate_blkg_from_page to mm/page_io.c (Ming Lei) [1881760] - [block] block: merge __bio_associate_blkg into bio_associate_blkg_from_css (Ming Lei) [1881760] - [block] block: really clone the block cgroup in bio_clone_blkg_association (Ming Lei) [1881760] - [block] blkcg: clean up blkg_tryget_closest() (Ming Lei) [1881760] - [block] block: remove bio_disassociate_blkg (Ming Lei) [1881760] - [md] dm: use bio_uninit instead of bio_disassociate_blkg (Ming Lei) [1881760] - [block] blk-rq-qos: remove redundant finish_wait to rq_qos_wait (Ming Lei) [1881760] - [block] blktrace: Provide event for request merging (Ming Lei) [1881760] - [fs] block: simplify sb_is_blkdev_sb (Ming Lei) [1881760] - [fs] block: mark bd_finish_claiming static (Ming Lei) [1881760] - [tty] tty/sysrq: emergency_thaw_all does not depend on CONFIG_BLOCK (Ming Lei) [1881760] - [block] blk-iocost: Use struct_size() in kzalloc_node() (Ming Lei) [1881760] - [block] block: bio: Use struct_size() in kmalloc() (Ming Lei) [1881760] - [block] block: create the request_queue debugfs_dir on registration (Ming Lei) [1881760] - [block] blk-mq: add a new blk_mq_complete_request_remote API (Ming Lei) [1881760] - [block] blk-mq: factor out a blk_mq_complete_need_ipi helper (Ming Lei) [1881760] - [block] blk-mq: remove the get_cpu/put_cpu pair in blk_mq_complete_request (Ming Lei) [1881760] - [block] blk-mq: move failure injection out of blk_mq_complete_request (Ming Lei) [1881760] - [block] blk-mq: merge the softirq vs non-softirq IPI logic (Ming Lei) [1881760] - [block] blk-mq: short cut the IPI path in blk_mq_force_complete_rq for !SMP (Ming Lei) [1881760] - [block] blk-mq: complete polled requests directly (Ming Lei) [1881760] - [block] blk-mq: remove raise_blk_irq (Ming Lei) [1881760] - [block] blk-mq: factor out a helper to reise the block softirq (Ming Lei) [1881760] - [block] blk-mq: merge blk-softirq.c into blk-mq.c (Ming Lei) [1881760] - [block] nbd: Fix memory leak in nbd_add_socket (Ming Lei) [1881760] - [block] block: make function __bio_integrity_free() static (Ming Lei) [1881760] - [block] virtio-blk: free vblk-vqs in error path of virtblk_probe() (Ming Lei) [1881760] - [block] blk-mq-debugfs: update blk_queue_flag_nameaccordingly for new flags (Ming Lei) [1881760] - [block] block: release bip in a right way in error path (Ming Lei) [1881760] - [fs] block: make function 'kill_bdev' static (Ming Lei) [1881760] - [block] loop: replace kill_bdev with invalidate_bdev (Ming Lei) [1881760] - [block] partitions/ldm: Replace uuid_copy() with import_uuid() where it makes sense (Ming Lei) [1881760] - [block] block: update hctx map when use multiple maps (Ming Lei) [1881760] - [trace] trace/events/block.h: drop kernel-doc for dropped function parameter (Ming Lei) [1881760] - [block] blk-mq: Remove redundant 'return' statement (Ming Lei) [1881760] - [block] umem: remove redundant initialization of variable ret (Ming Lei) [1881760] - [block] pktcdvd: remove redundant initialization of variable ret (Ming Lei) [1881760] - [kernel] blktrace: fix endianness for blk_log_remap() (Ming Lei) [1881760] - [kernel] blktrace: fix endianness in get_pdu_int() (Ming Lei) [1881760] - [kernel] blktrace: use errno instead of bi_status (Ming Lei) [1881760] - [block] block: nr_sects_write(): Disable preemption on seqcount write (Ming Lei) [1881760] - [nvme] block: remove the error argument to the block_bio_complete tracepoint (Ming Lei) [1881760] - [block] loop: Fix wrong masking of status flags (Ming Lei) [1881760] - [block] block/bio-integrity: don't free 'buf' if bio_integrity_add_page() failed (Ming Lei) [1881760] - [block] block: always define struct blk_integrity in genhd.h (Ming Lei) [1881760] - [s390] dasd: refactor dasd_ioctl_information (Ming Lei) [1881760] - [block] loop: Add LOOP_CONFIGURE ioctl (Ming Lei) [1881760] - [block] loop: Clean up LOOP_SET_STATUS lo_flags handling (Ming Lei) [1881760] - [block] loop: Rework lo_ioctl() __user argument casting (Ming Lei) [1881760] - [block] loop: Move loop_set_status_from_info() and friends up (Ming Lei) [1881760] - [block] loop: Factor out configuring loop from status (Ming Lei) [1881760] - [block] loop: Remove figure_loop_size() (Ming Lei) [1881760] - [block] loop: Refactor loop_set_status() size calculation (Ming Lei) [1881760] - [block] loop: Switch to set_capacity_revalidate_and_notify() (Ming Lei) [1881760] - [block] loop: Factor out setting loop device size (Ming Lei) [1881760] - [block] loop: Remove sector_t truncation checks (Ming Lei) [1881760] - [block] loop: Call loop_config_discard() only after new config is applied (Ming Lei) [1881760] - [block] block/swim3: use set_current_state macro (Ming Lei) [1881760] - [block] block: mark bio_wouldblock_error() bio with BIO_QUIET (Ming Lei) [1881760] - [block] blk-wbt: rename __wbt_update_limits to wbt_update_limits (Ming Lei) [1881760] - [block] blk-wbt: remove wbt_update_limits (Ming Lei) [1881760] - [block] blk-throttle: remove tg_drain_bios (Ming Lei) [1881760] - [block] blk-throttle: remove blk_throtl_drain (Ming Lei) [1881760] - [block] null_blk: force complete for timeout request (Ming Lei) [1881760] - [block] block: fix a warning when blkdev.h is included for !CONFIG_BLOCK builds (Ming Lei) [1881760] - [block] block: reduce part_stat_lock() scope (Ming Lei) [1881760] - [block] block: use __this_cpu_add() instead of access by smp_processor_id() (Ming Lei) [1881760] - [block] block: remove rcu_read_lock() from part_stat_lock() (Ming Lei) [1881760] - [block] block: add a blk_account_io_merge_bio helper (Ming Lei) [1881760] - [block] block: account merge of two requests (Ming Lei) [1881760] - [block] zram: nvdimm: use bio_{start, end}_io_acct and disk_{start, end}_io_acct (Ming Lei) [1881760] - [nvdimm] nvdimm: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [md] dm: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] rsxx: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] drbd: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] block: add disk/bio-based accounting helpers (Ming Lei) [1881760] - [block] block: remove the disk and queue NULL checks in blkdev_issue_flush (Ming Lei) [1881760] - [fs] block: remove the error_sector argument to blkdev_issue_flush (Ming Lei) [1881760] - [block] block: Remove unused flush_queue_delayed in struct blk_flush_queue (Ming Lei) [1881760] - [block] null_blk: Zero-initialize read buffers in non-memory-backed mode (Ming Lei) [1881760] - [include] block: Document the bio_vec properties (Ming Lei) [1881760] - [block] bio.h: Declare the arguments of the bio iteration functions const (Ming Lei) [1881760] - [block] block: Fix type of first compat_put_{, u}long() argument (Ming Lei) [1881760] - [block] block: merge part_{inc, dev}_in_flight into their only callers (Ming Lei) [1881760] - [block] block: don't call part_{inc, dec}_in_flight for blk-mq devices (Ming Lei) [1881760] - [block] block: move the blk-mq calls out of part_in_flight{, _rw} (Ming Lei) [1881760] - [block] block: mark blk_account_io_completion static (Ming Lei) [1881760] - [block] blk-mq: allow blk_mq_make_request to consume the q_usage_counter reference (Ming Lei) [1881760] - [kernel] blktrace: Report pid with note messages (Ming Lei) [1881760] - [block] iocost: don't let vrate run wild while there's no saturation signal (Ming Lei) [1881760] - [block] block: move blk_io_schedule() out of header file (Ming Lei) [1881760] - [block] block: export bio_release_pages and bio_iov_iter_get_pages (Ming Lei) [1881760] - [block] null_blk: Support REQ_OP_ZONE_APPEND (Ming Lei) [1881760] - [scsi] scsi: sd_zbc: emulate ZONE_APPEND commands (Ming Lei) [1881760] - [scsi] scsi: sd_zbc: factor out sanity checks for zoned commands (Ming Lei) [1881760] - [block] block: Modify revalidate zones (Ming Lei) [1881760] - [block] block: introduce blk_req_zone_write_trylock (Ming Lei) [1881760] - [block] block: Introduce REQ_OP_ZONE_APPEND (Ming Lei) [1881760] - [block] block: rename __bio_add_pc_page to bio_add_hw_page (Ming Lei) [1881760] - [block] block: provide fallbacks for blk_queue_zone_is_seq and blk_queue_zone_no (Ming Lei) [1881760] - [fs] block: add blk_io_schedule() for avoiding task hung in sync dio (Ming Lei) [1881760] - [block] block: don't hold part0's refcount in IO path (Ming Lei) [1881760] - [block] block: only define 'nr_sects_seq' in hd_part for 32bit SMP (Ming Lei) [1881760] - [block] bdi: fix up for "remove the name field in struct backing_dev_info" (Ming Lei) [1881760] - [fs] hfs: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] bdi: remove the name field in struct backing_dev_info (Ming Lei) [1881760] - [mtd] bdi: simplify bdi_alloc (Ming Lei) [1881760] - [block] bdi: remove bdi_register_owner (Ming Lei) [1881760] - [mm] bdi: unexport bdi_register_va (Ming Lei) [1881760] - [base] driver core: remove device_create_vargs (Ming Lei) [1881760] - [block] block: rename blk_mq_alloc_rq_maps (Ming Lei) [1881760] - [block] block: rename __blk_mq_alloc_rq_map (Ming Lei) [1881760] - [fs] udf: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] isofs: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] hfsplus: stop using ioctl_by_bdev (Ming Lei) [1881760] - [cdrom] cdrom: factor out a cdrom_multisession helper (Ming Lei) [1881760] - [cdrom] cdrom: factor out a cdrom_read_tocentry helper (Ming Lei) [1881760] - [ide] ide-cd: rename cdrom_read_tocentry (Ming Lei) [1881760] - [cdrom] block: add a cdrom_device_info pointer to struct gendisk (Ming Lei) [1881760] - [block] block: add a bio_queue_enter helper (Ming Lei) [1881760] - [block] block: replace BIO_QUEUE_ENTERED with BIO_CGROUP_ACCT (Ming Lei) [1881760] - [block] block: improve the submit_bio and generic_make_request documentation (Ming Lei) [1881760] - [block] blk-mq: make function '__blk_mq_sched_dispatch_requests' static (Ming Lei) [1881760] - [block] block: bypass ->make_request_fn for blk-mq drivers (Ming Lei) [1881760] - [md] dm: remove the make_request_fn check in device_area_is_invalid (Ming Lei) [1881760] - [block] block: remove create_io_context (Ming Lei) [1881760] - [fs] block: unexport bdev_read_page and bdev_write_page (Ming Lei) [1881760] - [scsi] scsi: merge scsi_init_sgtable into scsi_init_io (Ming Lei) [1881760] - [block] block: provide a blk_rq_map_sg variant that returns the last element (Ming Lei) [1881760] - [block] block: remove RQF_COPY_USER (Ming Lei) [1881760] - [block] block: fold bdev_unhash_inode into invalidate_partition (Ming Lei) [1881760] - [block] block: simplify block device syncing in bdev_del_partition (Ming Lei) [1881760] - [block] block: don't call invalidate_partition from blk_drop_partitions (Ming Lei) [1881760] - [s390] dasd: use blk_drop_partitions instead of badly reimplementing it (Ming Lei) [1881760] - [block] block: remove the disk argument from blk_drop_partitions (Ming Lei) [1881760] - [block] block: remove hd_struct_kill (Ming Lei) [1881760] - [block] block: cleanup hd_struct freeing (Ming Lei) [1881760] - [block] block: pass a hd_struct to delete_partition (Ming Lei) [1881760] - [block] block: refactor blkpg_ioctl (Ming Lei) [1881760] - [block] null_blk: don't allow discard for zoned mode (Ming Lei) [1881760] - [block] null_blk: return error for invalid zone size (Ming Lei) [1881760] - [block] iocost: protect iocg->abs_vdebt with iocg->waitq.lock (Ming Lei) [1881760] - [block] block: remove the bd_openers checks in blk_drop_partitions (Ming Lei) [1881760] - [block] null_blk: Cleanup zoned device initialization (Ming Lei) [1881760] - [block] null_blk: Fix zoned command handling (Ming Lei) [1881760] - [fs] block: remove unused header (Ming Lei) [1881760] - [fs] bdev: Reduce time holding bd_mutex in sync in blkdev_close() (Ming Lei) [1881760] - [trace] blk-wbt: Drop needless newlines from tracepoint format strings (Ming Lei) [1881760] - [block] blk-wbt: Use tracepoint_string() for wbt_step tracepoint string literals (Ming Lei) [1881760] - [s390] s390/dasd: remove IOSCHED_DEADLINE from DASD Kconfig (Ming Lei) [1881760] - [block] block: fix busy device checking in blk_drop_partitions again (Ming Lei) [1881760] - [block] block: fix busy device checking in blk_drop_partitions (Ming Lei) [1881760] - [block] blkcg: don't offline parent blkcg first (Ming Lei) [1881760] - [block] blkcg: rename blkcg->cgwb_refcnt to ->online_pin and always use it (Ming Lei) [1881760] - [block] null_blk: add trace in null_blk_zoned.c (Ming Lei) [1881760] - [block] null_blk: add tracepoint helpers for zoned mode (Ming Lei) [1881760] - [block] block: add a zone condition debug helper (Ming Lei) [1881760] - [block] rsxx: Replace zero-length array with flexible-array member (Ming Lei) [1881760] - [block] null_blk: describe the usage of fault injection param (Ming Lei) [1881760] - [block] null_blk: fix spurious IO errors after failed past-wp access (Ming Lei) [1881760] - [block] nbd: requeue command if the soecket is changed (Ming Lei) [1881760] - [block] nbd: enable replace socket if only one connection is configured (Ming Lei) [1881760] - [block] block/drbd: delete invalid function drbd_md_mark_dirty_ (Ming Lei) [1881760] - [block] loop: Only freeze block queue when needed (Ming Lei) [1881760] - [block] loop: Only change blocksize when needed (Ming Lei) [1881760] - [block] block: move bdevname() into block/generic-partition-rh.c (Ming Lei) [1881760] - [block] block: return NULL in blk_alloc_queue() on error (Ming Lei) [1881760] - [block] block: simplify queue allocation (Ming Lei) [1881760] - [block] Revert "blkdev: check for valid request queue before issuing flush" (Ming Lei) [1881760] - [block] null_blk: use blk_mq_init_queue_data (Ming Lei) [1881760] - [block] block: add a blk_mq_init_queue_data helper (Ming Lei) [1881760] - [block] block: move the ->devnode callback to struct block_device_operations (Ming Lei) [1881760] - [block] block: move block layer internals out of include/linux/genhd.h (Ming Lei) [1881760] - [fs] block: move guard_bio_eod to bio.c (Ming Lei) [1881760] - [block] block: unexport disk_map_sector_rcu (Ming Lei) [1881760] - [block] block: unexport disk_get_part (Ming Lei) [1881760] - [block] block: mark part_in_flight and part_in_flight_rw static (Ming Lei) [1881760] - [block] block: mark block_depr static (Ming Lei) [1881760] - [block] block: factor out requeue handling from dispatch code (Ming Lei) [1881760] - [block] block/diskstats: replace time_in_queue with sum of request times (Ming Lei) [1881760] - [block] block/diskstats: accumulate all per-cpu counters in one pass (Ming Lei) [1881760] - [block] block: merge partition-generic.c and check.c (Ming Lei) [1881760] - [block] block: move the various x86 Unix label formats out of genhd.h (Ming Lei) [1881760] - [block] partitions/msdos: remove LINUX_SWAP_PARTITION (Ming Lei) [1881760] - [block] block: move the *_PARTITION enum out of genhd.h (Ming Lei) [1881760] - [scsi] block: move struct partition out of genhd.h (Ming Lei) [1881760] - [block] block: remove block/partitions/sun.h (Ming Lei) [1881760] - [block] block: remove block/partitions/sgi.h (Ming Lei) [1881760] - [block] block: remove block/partitions/osf.h (Ming Lei) [1881760] - [block] block: remove block/partitions/karma.h (Ming Lei) [1881760] - [block] block: declare all partition detection routines in check.h (Ming Lei) [1881760] - [block] block: remove warn_no_part (Ming Lei) [1881760] - [md] block: cleanup how md_autodetect_dev is called (Ming Lei) [1881760] - [block] block: unexport read_dev_sector and put_dev_sector (Ming Lei) [1881760] - [scsi] scsi: simplify scsi_partsize (Ming Lei) [1881760] - [block] block: remove alloc_part_info and free_part_info (Ming Lei) [1881760] - [block] block: move sysfs methods shared by disks and partitions to genhd.c (Ming Lei) [1881760] - [block] block: move disk_name and related helpers out of partition-generic.c (Ming Lei) [1881760] - [fs] block: remove __bdevname (Ming Lei) [1881760] - [block] block: remove the blk_lookup_devt export (Ming Lei) [1881760] - [block] block, bfq: invoke flush_idle_tree after reparent_active_queues in pd_offline (Ming Lei) [1881760] - [block] block, bfq: make reparent_leaf_entity actually work only on leaf entities (Ming Lei) [1881760] - [block] block, bfq: turn put_queue into release_process_ref in __bfq_bic_change_cgroup (Ming Lei) [1881760] - [block] block, bfq: move forward the getting of an extra ref in bfq_bfqq_move (Ming Lei) [1881760] - [scsi] scsi: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [nvme] nvme: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [block] virtio_blk.c: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [block] block/genhd: Notify udev about capacity change (Ming Lei) [1881760] - [fs] block: fix a device invalidation regression (Ming Lei) [1881760] - [block] blk-iocost: remove duplicated lines in comments (Ming Lei) [1881760] - [block] block: sed-opal: Change the check condition for regular session validity (Ming Lei) [1881760] - [block] block: Document genhd capability flags (Ming Lei) [1881760] - [block] block: cleanup comment for blk_flush_complete_seq (Ming Lei) [1881760] - [block] block: remove unneeded argument from blk_alloc_flush_queue (Ming Lei) [1881760] - [block] block: cleanup for _blk/blk_rq_prep_clone (Ming Lei) [1881760] - [block] block: remove redundant setting of QUEUE_FLAG_DYING (Ming Lei) [1881760] - [block] block: use bio_{wouldblock, io}_error in direct_make_request (Ming Lei) [1881760] - [block] block: fix comment for blk_cloned_rq_check_limits (Ming Lei) [1881760] - [block] null_blk: Add support for init_hctx() fault injection (Ming Lei) [1881760] - [block] null_blk: Handle null_add_dev() failures properly (Ming Lei) [1881760] - [block] null_blk: Fix the null_add_dev() error path (Ming Lei) [1881760] - [block] compat_ioctl: simplify up block/ioctl.c (Ming Lei) [1881760] - [block] compat_ioctl: block: simplify compat_blkpg_ioctl() (Ming Lei) [1881760] - [block] compat_ioctl: block: move blkdev_compat_ioctl() into ioctl.c (Ming Lei) [1881760] - [block] blk-mq: insert flush request to the front of dispatch queue (Ming Lei) [1881760] - [block] block: Remove used kblockd_schedule_work_on() (Ming Lei) [1881760] - [block] null_blk: remove unused fields in 'nullb_cmd' (Ming Lei) [1881760] - [block] drbd: fifo_alloc() should use struct_size (Ming Lei) [1881760] - [block] partitions/ldm: fix spelling mistake "to" -> "too" (Ming Lei) [1881760] - [block] block: mark zone-mgmt bios with REQ_SYNC (Ming Lei) [1881760] - [block] blk-mq: Document functions for sending request (Ming Lei) [1881760] - [block] block: Allow t10-pi to be modular (Ming Lei) [1881760] - [block] blk-mq: optimise blk_mq_flush_plug_list() (Ming Lei) [1881760] - [include] list: introduce list_for_each_continue() (Ming Lei) [1881760] - [block] blk-mq: optimise rq sort function (Ming Lei) [1881760] - [block] blk-cgroup: cgroup_rstat_updated() shouldn't be called on cgroup1 (Ming Lei) [1881760] - [block] blk-cgroup: separate out blkg_rwstat under CONFIG_BLK_CGROUP_RWSTAT (Ming Lei) [1881760] - [block] blk-cgroup: reimplement basic IO stats using cgroup rstat (Ming Lei) [1881760] - [block] blk-cgroup: remove now unused blkg_print_stat_{bytes|ios}_recursive() (Ming Lei) [1881760] - [block] blk-throtl: stop using blkg->stat_bytes and ->stat_ios (Ming Lei) [1881760] - [block] bfq-iosched: Ensure bio->bi_blkg is valid before using it (Ming Lei) [1881760] - [block] bfq-iosched: stop using blkg->stat_bytes and ->stat_ios (Ming Lei) [1881760] - [block] bfq-iosched: relocate bfqg_*rwstat*() helpers (Ming Lei) [1881760] - [md] dm: fix comment in __dm_suspend() (Mike Snitzer) [1881531] - [md] dm: fold dm_process_bio() into dm_make_request() (Mike Snitzer) [1881531] - [md] dm: fix missing imposition of queue_limits from dm_wq_work() thread (Mike Snitzer) [1881531] - [md] dm: optimize max_io_len() by inlining max_io_len_target_boundary() (Mike Snitzer) [1881531] - [md] dm: push md->immutable_target optimization down to __process_bio() (Mike Snitzer) [1881531] - [md] dm: change max_io_len() to use blk_max_size_offset() (Mike Snitzer) [1881531] - [md] dm table: stack 'chunk_sectors' limit to account for target-specific splitting (Mike Snitzer) [1881531] - [block] block: allow 'chunk_sectors' to be non-power-of-2 (Mike Snitzer) [1881531] - [block] block: use lcm_not_zero() when stacking chunk_sectors (Mike Snitzer) [1881531] - [md] dm: fix bio splitting and its bio completion order for regular IO (Mike Snitzer) [1881531] - [net] net-sysfs: add backlog len and CPU id to softnet data (Paolo Abeni) [1866909] - [net] try to avoid unneeded backlog flush (Paolo Abeni) [1866909] - [net] skbuff: fix a data race in skb_queue_len() (Paolo Abeni) [1866909] - [cpuidle] cpuidle: pseries: Fix CEDE latency conversion from tb to us (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Fixup exit latency for CEDE(0) (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Add function to parse extended CEDE records (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Set the latency-hint before entering CEDE (Diego Domingos) [1608791] - [arm64] paravirt: Initialize steal time when cpu is online (Andrew Jones) [1879137]- [infiniband] i40iw: Add support to make destroy QP synchronous (Stefan Assmann) [1757949] - [fs] xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork (Carlos Maiolino) [1859160] - [fs] xfs: fix inode allocation block res calculation precedence (Carlos Maiolino) [1859160] - [fs] xfs: fix reflink quota reservation accounting error (Carlos Maiolino) [1859160] - [fs] xfs: preserve rmapbt swapext block reservation from freed blocks (Carlos Maiolino) [1859160] - [fs] xfs: fix duplicate verification from xfs_qm_dqflush() (Carlos Maiolino) [1859160] - [fs] xfs: fix unmount hang and memory leak on shutdown during quotaoff (Carlos Maiolino) [1859160] - [fs] xfs: factor out quotaoff intent AIL removal and memory free (Carlos Maiolino) [1859160] - [fs] xfs: fix incorrect test in xfs_alloc_ag_vextent_lastblock (Carlos Maiolino) [1859160] - [fs] xfs: fix regression in "cleanup xfs_dir2_block_getdents" (Carlos Maiolino) [1859160] - [fs] xfs: fix use-after-free when aborting corrupt attr inactivation (Carlos Maiolino) [1859160] - [fs] xfs: fix iclog release error check race with shutdown (Carlos Maiolino) [1859160] - [fs] xfs: Add the missed xfs_perag_put() for xfs_ifree_cluster() (Carlos Maiolino) [1859160] - [fs] xfs: clean up the error handling in xfs_swap_extents (Carlos Maiolino) [1859160] - [fs] xfs: acquire superblock freeze protection on eofblocks scans (Carlos Maiolino) [1859160] - [fs] xfs: xfs_dabuf_map should return ENOMEM when map allocation fails (Carlos Maiolino) [1859160] - [fs] xfs: fix xfs_buf_ioerror_alert location reporting (Carlos Maiolino) [1859160] - [fs] xfs: remove unnecessary null pointer checks from _read_agf callers (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_*read_agf return EAGAIN to ALLOC_FLAG_TRYLOCK callers (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_btree_get_buffunctions (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_trans_get_buf return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_trans_get_buf_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_read return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get_uncached return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_read_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_alloc return an error code (Carlos Maiolino) [1859160] - [fs] xfs: fix uninitialized variable in xfs_attr3_leaf_inactive (Carlos Maiolino) [1859160] - [fs] xfs: change return value of xfs_inode_need_cow to int (Carlos Maiolino) [1859160] - [fs] xfs: check log iovec size to make sure it's plausibly a buffer log format (Carlos Maiolino) [1859160] - [fs] xfs: make struct xfs_buf_log_format have a consistent size (Carlos Maiolino) [1859160] - [fs] xfs: complain if anyone tries to create a too-large buffer log item (Carlos Maiolino) [1859160] - [fs] xfs: clean up xfs_buf_item_get_format return value (Carlos Maiolino) [1859160] - [fs] xfs: streamline xfs_attr3_leaf_inactive (Carlos Maiolino) [1859160] - [fs] xfs: fix memory corruption during remote attr value buffer invalidation (Carlos Maiolino) [1859160] - [fs] xfs: refactor remote attr value buffer invalidation (Carlos Maiolino) [1859160] - [fs] xfs: fix IOCB_NOWAIT handling in xfs_file_dio_aio_read (Carlos Maiolino) [1859160] - [fs] xfs: Add __packed to xfs_dir2_sf_entry_t definition (Carlos Maiolino) [1859160] - [fs] xfs: fix s_maxbytes computation on 32-bit kernels (Carlos Maiolino) [1859160] - [fs] xfs: truncate should remove all blocks, not just to the end of the page cache (Carlos Maiolino) [1859160] - [fs] xfs: introduce XFS_MAX_FILEOFF (Carlos Maiolino) [1859160] - [fs] xfs: remove bogus assertion when online repair isn't enabled (Carlos Maiolino) [1859160] - [fs] xfs: Remove all strlen in all xfs_attr_* functions for attr names (Carlos Maiolino) [1859160] - [fs] xfs: fix misuse of the XFS_ATTR_INCOMPLETE flag (Carlos Maiolino) [1859160] - [fs] xfs: also remove cached ACLs when removing the underlying attr (Carlos Maiolino) [1859160] - [fs] xfs: reject invalid flags combinations in XFS_IOC_ATTRMULTI_BY_HANDLE (Carlos Maiolino) [1859160] - [fs] xfs: remove shadow variable in xfs_btree_lshift (Carlos Maiolino) [1859160] - [fs] xfs: quota: move to time64_t interfaces (Carlos Maiolino) [1859160] - [fs] xfs: Make the symbol 'xfs_rtalloc_log_count' static (Carlos Maiolino) [1859160] - [fs] libxfs: resync with the userspace libxfs (Carlos Maiolino) [1859160] - [fs] xfs: fix log reservation overflows when allocating large rt extents (Carlos Maiolino) [1859160] - [fs] xfs: fix mount failure crash on invalid iclog memory access (Carlos Maiolino) [1859160] - [fs] xfs: don't check for AG deadlock for realtime files in bunmapi (Carlos Maiolino) [1859160] - [fs] xfs: fix realtime file data space leak (Carlos Maiolino) [1859160] - [fs] xfs: allow parent directory scans to be interrupted with fatal signals (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_get_buf (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_read_buf (Carlos Maiolino) [1859160] - [fs] xfs: split xfs_da3_node_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_dir3_leafn_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_dir3_leaf_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_attr3_leaf_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_reada_buf (Carlos Maiolino) [1859160] - [fs] xfs: improve the xfs_dabuf_map calling conventions (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_dabuf_map (Carlos Maiolino) [1859160] - [fs] xfs: simplify mappedbno handling in xfs_da_{get, read}_buf (Carlos Maiolino) [1859160] - [fs] xfs: report corruption only as a regular error (Carlos Maiolino) [1859160] - [fs] xfs: Remove kmem_zone_free() wrapper (Carlos Maiolino) [1859160] - [fs] xfs: Remove kmem_zone_destroy() wrapper (Carlos Maiolino) [1859160] - [fs] xfs: Remove slab init wrappers (Carlos Maiolino) [1859160] - [fs] xfs: fix another missing include (Carlos Maiolino) [1859160] - [fs] xfs: remove XFS_IOC_FSSETDM and XFS_IOC_FSSETDM_BY_HANDLE (Carlos Maiolino) [1859160] - [fs] xfs: remove duplicated include from xfs_dir2_data.c (Carlos Maiolino) [1859160] - [fs] xfs: remove unused structure members & simple typedefs (Carlos Maiolino) [1859160] - [fs] xfs: remove unused typedef definitions (Carlos Maiolino) [1859160] - [fs] xfs: Replace function declaration by actual definition (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_qoff_logitem_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_dq_logitem_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_quotainfo_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_disk_dquot_t and xfs_dquot_t (Carlos Maiolino) [1859160] - [fs] xfs: avoid time_t in user api (Carlos Maiolino) [1859160] - [fs] xfs: don't reset the "inode core" in xfs_iread (Carlos Maiolino) [1859160] - [fs] xfs: merge the projid fields in struct xfs_icdinode (Carlos Maiolino) [1859160] - [fs] xfs: use a struct timespec64 for the in-core crtime (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->m_dirnameops (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused m_chsize field (Carlos Maiolino) [1859160] - [fs] xfs: convert open coded corruption check to use XFS_IS_CORRUPT (Carlos Maiolino) [1859160] - [fs] xfs: kill the XFS_WANT_CORRUPT_* macros (Carlos Maiolino) [1859160] - [fs] xfs: add a XFS_IS_CORRUPT macro (Carlos Maiolino) [1859160] - [fs] xfs: attach dquots before performing xfs_swap_extents (Carlos Maiolino) [1859160] - [fs] xfs: actually check xfs_btree_check_block return in xfs_btree_islastblock (Carlos Maiolino) [1859160] - [fs] xfs: always pass a valid hdr to xfs_dir3_leaf_check_int (Carlos Maiolino) [1859160] - [fs] xfs: merge xfs_dir2_data_freescan and xfs_dir2_data_freescan_int (Carlos Maiolino) [1859160] - [fs] xfs: remove the now unused dir ops infrastructure (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_get_ftype and ->data_put_ftype (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_bestfree_p (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_data_entsize (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 data block fixed offsets to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_entry_tag_p (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_entsize (Carlos Maiolino) [1859160] - [fs] xfs: replace xfs_dir3_data_endp with xfs_dir3_data_end_offset (Carlos Maiolino) [1859160] - [fs] xfs: remove the now unused ->data_entry_p method (Carlos Maiolino) [1859160] - [fs] xfs: cleanup __xfs_dir3_data_check (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_data_freescan_int (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_block_to_sf (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xchk_directory_data_bestfree (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xchk_dir_rec (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_leaf_getdents (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_block_getdents (Carlos Maiolino) [1859160] - [fs] xfs: remove the ->data_unused_p method (Carlos Maiolino) [1859160] - [fs] xfs: remove the ->data_dot_entry_p and ->data_dotdot_entry_p methods (Carlos Maiolino) [1859160] - [fs] xfs: remove the data_dotdot_offset field in struct xfs_dir_ops (Carlos Maiolino) [1859160] - [fs] xfs: remove the data_dot_offset field in struct xfs_dir_ops (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused ->data_first_entry_p method (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_ftype and ->sf_put_ftype (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_ino and ->sf_put_ino (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_entsize and ->sf_nextentry (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_parent_ino and ->sf_put_parent_ino (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->db_to_fdb and ->db_to_fdindex (Carlos Maiolino) [1859160] - [fs] xfs: move the max dir2 free bests count to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 free header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add a bests pointer to struct xfs_dir3_icfree_hdr (Carlos Maiolino) [1859160] - [fs] xfs: make the xfs_dir3_icfree_hdr available to xfs_dir2_node_addname_int (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->free_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->free_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: move the max dir2 leaf entries count to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 leaf header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add an entries pointer to struct xfs_dir3_icleaf_hdr (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->leaf_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->leaf_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: move the node header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add a btree entries pointer to struct xfs_da3_icnode_hdr (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->node_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->node_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: refactor btree node scrubbing (Carlos Maiolino) [1859160] - [fs] xfs: use unsigned int for all size values in struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move incore structures out of xfs_da_format.h (Carlos Maiolino) [1859160] - [fs] xfs: remove a stray tab in xfs_remount_rw() (Carlos Maiolino) [1859160] - [fs] xfs: convert EIO to EFSCORRUPTED when log contents are invalid (Carlos Maiolino) [1859160] - [fs] xfs: refactor "does this fork map blocks" predicate (Carlos Maiolino) [1859160] - [fs] xfs: clean up weird while loop in xfs_alloc_ag_vextent_near (Carlos Maiolino) [1859160] - [fs] xfs: annotate functions that trip static checker locking checks (Carlos Maiolino) [1859160] - [fs] xfs: Correct comment tyops -> typos (Carlos Maiolino) [1859160] - [fs] xfs: range check ri_cnt when recovering log items (Carlos Maiolino) [1859160] - [fs] xfs: "optimize" buffer item log segment bitmap setting (Carlos Maiolino) [1859160] - [fs] xfs: null out bma->prev if no previous extent (Carlos Maiolino) [1859160] - [fs] xfs: fix missing header includes (Carlos Maiolino) [1859160] - [fs] xfs: periodically yield scrub threads to the scheduler (Carlos Maiolino) [1859160] - [fs] xfs: remove redundant assignment to variable error (Carlos Maiolino) [1859160] - [fs] xfs: add missing early termination checks to record scrubbing functions (Carlos Maiolino) [1859160] - [fs] xfs: make the assertion message functions take a mount parameter (Carlos Maiolino) [1859160] - [fs] xfs: add missing assert in xfs_fsmap_owner_from_rmap (Carlos Maiolino) [1859160] - [fs] xfs: decrease indenting problems in xfs_dabuf_map (Carlos Maiolino) [1859160] - [fs] xfs: fold xfs_mount-alloc() into xfs_init_fs_context() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_parse_param() above xfs_fc_get_tree() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_get_tree() above xfs_fc_reconfigure() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_reconfigure() above xfs_fc_free() (Carlos Maiolino) [1859160] - [fs] xfs: switch to use the new mount-api (Carlos Maiolino) [1859160] - [fs] xfs: dont set sb in xfs_mount_alloc() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_parseargs() validation to a helper (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_parseags() (Carlos Maiolino) [1859160] - [fs] xfs: avoid redundant checks when options is empty (Carlos Maiolino) [1859160] - [fs] xfs: refactor suffix_kstrtoint() (Carlos Maiolino) [1859160] - [fs] xfs: add xfs_remount_ro() helper (Carlos Maiolino) [1859160] - [fs] xfs: add xfs_remount_rw() helper (Carlos Maiolino) [1859160] - [fs] xfs: merge freeing of mp names and mp (Carlos Maiolino) [1859160] - [fs] xfs: use kmem functions for struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: dont use XFS_IS_QUOTA_RUNNING() for option check (Carlos Maiolino) [1859160] - [fs] xfs: use super s_id instead of struct xfs_mount m_fsname (Carlos Maiolino) [1859160] - [fs] xfs: remove unused struct xfs_mount field m_fsname_len (Carlos Maiolino) [1859160] - [fs] xfs: always log corruption errors (Carlos Maiolino) [1859160] - [fs] xfs: constify the buffer pointer arguments to error functions (Carlos Maiolino) [1859160] - [fs] xfs: relax shortform directory size checks (Carlos Maiolino) [1859160] - [fs] xfs: cleanup use of the XFS_ALLOC_ flags (Carlos Maiolino) [1859160] - [fs] xfs: move extent zeroing to xfs_bmapi_allocate (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_bmapi_allocate (Carlos Maiolino) [1859160] - [fs] xfs: simplify the xfs_iomap_write_direct calling (Carlos Maiolino) [1859160] - [fs] xfs: don't log the inode in xfs_fs_map_blocks if it (Carlos Maiolino) [1859160] - [fs] xfs: slightly tweak an assert in xfs_fs_map_blocks (Carlos Maiolino) [1859160] - [fs] xfs: remove the extsize argument to xfs_eof_alignment (Carlos Maiolino) [1859160] - [fs] xfs: mark xfs_eof_alignment static (Carlos Maiolino) [1859160] - [fs] xfs: simplify xfs_iomap_eof_align_last_fsb (Carlos Maiolino) [1859160] - [fs] xfs: merge xfs_showargs into xfs_fs_show_options (Carlos Maiolino) [1859160] - [fs] xfs: clean up printing inode32/64 in xfs_showargs (Carlos Maiolino) [1859160] - [fs] xfs: clean up printing the allocsize option in (Carlos Maiolino) [1859160] - [fs] xfs: reverse the polarity of XFS_MOUNT_COMPAT_IOSIZE (Carlos Maiolino) [1859160] - [fs] xfs: rename the XFS_MOUNT_DFLT_IOSIZE option to (Carlos Maiolino) [1859160] - [fs] xfs: simplify parsing of allocsize mount option (Carlos Maiolino) [1859160] - [fs] xfs: rename the m_writeio_* fields in struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: remove the m_readio_* fields in struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: don't use a different allocsice for -o wsync (Carlos Maiolino) [1859160] - [fs] xfs: cleanup calculating the stat optimal I/O size (Carlos Maiolino) [1859160] - [fs] xfs: remove the dsunit and dswidth variables in (Carlos Maiolino) [1859160] - [fs] xfs: simplify setting bio flags (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_iread_extents to use xfs_btree_visit_blocks (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_bmap_count_blocks using newer btree helpers (Carlos Maiolino) [1859160] - [fs] xfs: replace -EIO with -EFSCORRUPTED for corrupt metadata (Carlos Maiolino) [1859160] - [fs] xfs: namecheck directory entry names before listing them (Carlos Maiolino) [1859160] - [fs] xfs: namecheck attribute names before listing them (Carlos Maiolino) [1859160] - [fs] xfs: check attribute leaf block structure (Carlos Maiolino) [1859160] - [fs] xfs: consolidate preallocation in xfs_file_fallocate (Carlos Maiolino) [1859160] - [fs] xfs: disable xfs_ioc_space for always COW inodes (Carlos Maiolino) [1859160] - [fs] fs: add generic UNRESVSP and ZERO_RANGE ioctl handlers (Carlos Maiolino) [1859160] - [fs] xfs: don't implement XFS_IOC_RESVSP / XFS_IOC_RESVSP64 (Carlos Maiolino) [1859160] - [fs] xfs: use xfs_inode_buftarg in xfs_file_ioctl (Carlos Maiolino) [1859160] - [fs] xfs: use xfs_inode_buftarg in xfs_file_dio_aio_write (Carlos Maiolino) [1859160] - [fs] xfs: add a xfs_inode_buftarg helper (Carlos Maiolino) [1859160] - [fs] xfs: mark xfs_buf_free static (Carlos Maiolino) [1859160] - [fs] xfs: add mising include of xfs_pnfs.h for missing declarations (Carlos Maiolino) [1859160] - [fs] xfs: don't set bmapi total block req where minleft is (Carlos Maiolino) [1859160] - [fs] xfs: cap longest free extent to maximum allocatable (Carlos Maiolino) [1859160] - [fs] xfs: remove the duplicated inode log fieldmask set (Carlos Maiolino) [1859160] - [fs] xfs: improve the IOMAP_NOWAIT check for COW inodes (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_direct_write_iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: rename the whichfork variable in xfs_buffered_write_iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: split the iomap ops for buffered vs direct writes (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_file_iomap_begin_delay around (Carlos Maiolino) [1859160] - [fs] xfs: split out a new set of read-only iomap ops (Carlos Maiolino) [1859160] - [fs] xfs: factor out a helper to calculate the end_fsb (Carlos Maiolino) [1859160] - [fs] xfs: fill out the srcmap in iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_file_iomap_begin_delay (Carlos Maiolino) [1859160] - [fs] xfs: pass two imaps to xfs_reflink_allocate_cow (Carlos Maiolino) [1859160] - [fs] xfs: remove xfs_reflink_dirty_extents (Carlos Maiolino) [1859160] - [fs] xfs: also call xfs_file_iomap_end_delalloc for zeroing operations (Carlos Maiolino) [1859160] - [fs] xfs: remove the XLOG_STATE_DO_CALLBACK state (Carlos Maiolino) [1859160] - [fs] xfs: turn ic_state into an enum (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused XLOG_STATE_ALL and XLOG_STATE_UNUSED flags (Carlos Maiolino) [1859160] - [fs] xfs: remove dead ifdef XFSERRORDEBUG code (Carlos Maiolino) [1859160] - [fs] xfs: call xlog_state_release_iclog with l_icloglock held (Carlos Maiolino) [1859160] - [fs] xfs: move the locking from xlog_state_finish_copy to the callers (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused ic_io_size field from xlog_in_core (Carlos Maiolino) [1859160] - [fs] xfs: pass the correct flag to xlog_write_iclog (Carlos Maiolino) [1859160] - [fs] xfs: optimize near mode bnobt scans with concurrent cntbt lookups (Carlos Maiolino) [1859160] - [fs] xfs: factor out tree fixup logic into helper (Carlos Maiolino) [1859160] - [fs] xfs: refactor near mode alloc bnobt scan into separate function (Carlos Maiolino) [1859160] - [fs] xfs: refactor and reuse best extent scanning logic (Carlos Maiolino) [1859160] - [fs] xfs: refactor allocation tree fixup code (Carlos Maiolino) [1859160] - [fs] xfs: reuse best extent tracking logic for bnobt scan (Carlos Maiolino) [1859160] - [fs] xfs: refactor cntbt lastblock scan best extent logic into helper (Carlos Maiolino) [1859160] - [fs] xfs: track best extent from cntbt lastblock scan in alloc cursor (Carlos Maiolino) [1859160] - [fs] xfs: track allocation busy state in allocation cursor (Carlos Maiolino) [1859160] - [fs] xfs: introduce allocation cursor data structure (Carlos Maiolino) [1859160] - [fs] xfs: track active state of allocation btree cursors (Carlos Maiolino) [1859160] - [fs] xfs: ignore extent size hints for always COW inodes (Carlos Maiolino) [1859160] - [fs] xfs: include QUOTA, FATAL ASSERT build options in XFS_BUILD_OPTIONS (Carlos Maiolino) [1859160] - [pinctrl] pinctrl: tigerlake: Add support for Tiger Lake-H (Steve Best) [1782722] - [pinctrl] pinctrl: intel: Introduce common flags for GPIO mapping scheme (Steve Best) [1782722] - [mfd] mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs (Steve Best) [1782724]- [netdrv] iavf: Fix incorrect adapter get in iavf_resume (Stefan Assmann) [1842896] - [netdrv] iavf: use generic power management (Stefan Assmann) [1842896] - [net] openvswitch: fixes crash if nf_conncount_init() fails (Eelco Chaudron) [1876445] - [fs] cifs`: handle ERRBaduid for SMB1 (Leif Sahlberg) [1875184] - [net] SUNRPC: 'Directory with parent 'rpc_clnt' already present!' (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Don't use RPC_TASK_CRED_NOREF with pnfs (Scott Mayhew) [1872310] - [fs] NFS: Don't use RPC_TASK_CRED_NOREF with delegreturn (Scott Mayhew) [1872310] - [net] SUNRPC: Signalled ASYNC tasks need to exit (Scott Mayhew) [1872310] - [net] SUNRPC: fix use-after-free in rpc_free_client_work() (Scott Mayhew) [1872310] - [fs] NFS: Fix a race in __nfs_list_for_each_server() (Scott Mayhew) [1872310] - [net] SUNRPC: defer slow parts of rpc_free_client() to a workqueue (Scott Mayhew) [1872310] - [net] SUNRPC: Revert 241b1f419f0e ("SUNRPC: Remove xdr_buf_trim()") (Scott Mayhew) [1872310] - [fs] NFSv4: Remove unreachable error condition due to rpc_run_task() (Scott Mayhew) [1872310] - [net] SUNRPC: Remove unreachable error condition (Scott Mayhew) [1872310] - [fs] nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Fix a credential use-after-free issue in pnfs_roc() (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Ensure that _pnfs_return_layout() waits for layoutreturn completion (Scott Mayhew) [1872310] - [net] svcrdma: Fix leak of svc_rdma_recv_ctxt objects (Scott Mayhew) [1872310] - [fs] NFS: Fix an ABBA spinlock issue in pnfs_update_layout() (Scott Mayhew) [1872310] - [net] SUNRPC/cache: Fix unsafe traverse caused double-free in cache_purge (Scott Mayhew) [1872310] - [fs] nfsd: memory corruption in nfsd4_lock() (Scott Mayhew) [1872310] - [fs] pNFS: Fix RCU lock leakage (Scott Mayhew) [1872310] - [fs] NFS: Clean up process of marking inode stale (Scott Mayhew) [1872310] - [fs] NFS: Add softreval behaviour to nfs_lookup_revalidate() (Scott Mayhew) [1872310] - [fs] NFS: Add mount option 'softreval' (Scott Mayhew) [1872310] - [net] SUNRPC: Don't start a timer on an already queued rpc task (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Reference the layout cred in pnfs_prepare_layoutreturn() (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Fix dereference of layout cred in pnfs_layoutcommit_inode() (Scott Mayhew) [1872310] - [fs] NFS: Beware when dereferencing the delegation cred (Scott Mayhew) [1872310] - [fs] NFS: Add a module parameter to set nfs_mountpoint_expiry_timeout (Scott Mayhew) [1872310] - [fs] NFS: Try to join page groups before an O_DIRECT retransmission (Scott Mayhew) [1872310] - [fs] NFS: Refactor nfs_lock_and_join_requests() (Scott Mayhew) [1872310] - [fs] NFS: Reverse the submission order of requests in __nfs_pageio_add_request() (Scott Mayhew) [1872310] - [fs] NFS: Clean up nfs_lock_and_join_requests() (Scott Mayhew) [1872310] - [fs] NFS: Remove the redundant function nfs_pgio_has_mirroring() (Scott Mayhew) [1872310] - [fs] NFS: Fix memory leaks in nfs_pageio_stop_mirroring() (Scott Mayhew) [1872310] - [fs] NFS: Fix a request reference leak in nfs_direct_write_clear_reqs() (Scott Mayhew) [1872310] - [fs] NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests() (Scott Mayhew) [1872310] - [fs] NFS: Remove unused FLUSH_SYNC support in nfs_initiate_pgio() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Specify the layout segment range in LAYOUTGET (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: remove requirement for whole file layouts (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Check the layout segment range before doing I/O (Scott Mayhew) [1872310] - [fs] pNFS/flexfile: Don't merge layout segments if the mirrors don't match (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Fix pnfs_layout_mark_request_commit() invalid layout segment handling (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Simplify bucket layout segment reference counting (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Clean up pNFS commit operations (Scott Mayhew) [1872310] - [fs] NFS: Remove bucket array from struct pnfs_ds_commit_info (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Add a helper pnfs_generic_search_commit_reqs() (Scott Mayhew) [1872310] - [fs] pNFS: Enable per-layout segment commit structures (Scott Mayhew) [1872310] - [fs] pNFS: Add infrastructure for cleaning up per-layout commit structures (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Support commit arrays in nfs_clear_pnfs_ds_commit_verifiers() (Scott Mayhew) [1872310] - [fs] NFS: Fix O_DIRECT commit verifier handling (Scott Mayhew) [1872310] - [fs] NFS: commit errors should be fatal (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Allow O_DIRECT to release the DS commitinfo (Scott Mayhew) [1872310] - [fs] pNFS: Support per-layout segment commits in pnfs_generic_commit_pagelist() (Scott Mayhew) [1872310] - [fs] pNFS: Support per-layout segment commits in pnfs_generic_recover_commit_reqs() (Scott Mayhew) [1872310] - [fs] NFSv4/pNFS: Scan the full list of commit arrays when committing (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Support a list of commit arrays in struct pnfs_ds_commit_info (Scott Mayhew) [1872310] - [net] SUNRPC: Fix a potential buffer overflow in 'svc_print_xprts()' (Scott Mayhew) [1872310] - [include] SUNRPC/cache: don't allow invalid entries to be flushed (Scott Mayhew) [1872310] - [fs] pNFS: Add a helper to allocate the array of buckets (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Refactor pnfs_generic_commit_pagelist() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Simplify allocation of the mirror array (Scott Mayhew) [1872310] - [fs] NFS: Don't specify NFS version in "UDP not supported" error (Scott Mayhew) [1872310] - [fs] nfsroot: set tcp as the default transport protocol (Scott Mayhew) [1872310] - [fs] NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails (Scott Mayhew) [1872310] - [fs] nfs: Fix up documentation in nfs_follow_referral() and nfs_do_submount() (Scott Mayhew) [1872310] - [net] sunrpc: Add tracing for cache events (Scott Mayhew) [1872310] - [net] SUNRPC/cache: Allow garbage collection of invalid cache entries (Scott Mayhew) [1872310] - [net] sunrpc: clean up cache entry add/remove from hashtable (Scott Mayhew) [1872310] - [net] sunrpc: Fix potential leaks in sunrpc_cache_unhash() (Scott Mayhew) [1872310] - [fs] nfsd: export upcalls must not return ESTALE when mountd is down (Scott Mayhew) [1872310] - [fs] nfsd: Don't add locks to closed or closing open stateids (Scott Mayhew) [1872310] - [net] SUNRPC: Teach server to use xprt_sock_sendmsg for socket sends (Scott Mayhew) [1872310] - [net] SUNRPC: Refactor xs_sendpages() (Scott Mayhew) [1872310] - [fs] NFSD: Clean up nfsd4_encode_readv (Scott Mayhew) [1872310] - [fs] fs: nfsd: nfs4state.c: Use built-in RCU list checking (Scott Mayhew) [1872310] - [net] sunrpc: Pass lockdep expression to RCU lists (Scott Mayhew) [1872310] - [include] sunrpc: Replace zero-length array with flexible-array member (Scott Mayhew) [1872310] - [net] SUNRPC: Trim stack utilization in the wrap and unwrap paths (Scott Mayhew) [1872310] - [net] SUNRPC: Remove xdr_buf_read_mic() (Scott Mayhew) [1872310] - [net] sunrpc: Fix gss_unwrap_resp_integ() again (Scott Mayhew) [1872310] - [fs] nfs: Replace zero-length array with flexible-array member (Scott Mayhew) [1872310] - [fs] NFSv4.2: error out when relink swapfile (Scott Mayhew) [1872310] - [fs] NFS:remove redundant call to nfs_do_access (Scott Mayhew) [1872310] - [net] SUNRPC: remove redundant assignments to variable status (Scott Mayhew) [1872310] - [fs] NFSv4: Add support for CB_RECALL_ANY for flexfiles layouts (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_delegation_reap_expired() (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_delegation_reap_unclaimed() (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_client_return_marked_delegations() (Scott Mayhew) [1872310] - [fs] NFS: Add a helper nfs_client_for_each_server() (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Clean up nfs_layout_find_inode() (Scott Mayhew) [1872310] - [fs] NFSv4: Ensure layout headers are RCU safe (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Report DELAY and GRACE errors from the DS to the server (Scott Mayhew) [1872310] - [fs] NFS: Limit the size of the access cache by default (Scott Mayhew) [1872310] - [fs] NFS: Avoid referencing the cred twice in async rename/unlink (Scott Mayhew) [1872310] - [fs] NFSv4: Avoid unnecessary credential references in layoutget (Scott Mayhew) [1872310] - [fs] NFSv4: Avoid referencing the cred unnecessarily during NFSv4 I/O (Scott Mayhew) [1872310] - [fs] NFS: Assume cred is pinned by open context in I/O requests (Scott Mayhew) [1872310] - [net] SUNRPC: Don't take a reference to the cred on synchronous tasks (Scott Mayhew) [1872310] - [net] SUNRPC: Add a flag to avoid reference counts on credentials (Scott Mayhew) [1872310] - [fs] NFS: Ensure we time out if a delegreturn does not complete (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: pnfs_set_layout_stateid() should update the layout cred (Scott Mayhew) [1872310] - [fs] NFSv4: nfs_update_inplace_delegation() should update delegation cred (Scott Mayhew) [1872310] - [fs] NFS: Use the 64-bit server readdir cookies when possible (Scott Mayhew) [1872310] - [net] Documentation: nfsroot.rst: Fix references to nfsroot.rst (Scott Mayhew) [1872310] - [fs] nfs: add missing "posix" local_lock constant table definition (Scott Mayhew) [1622041] - [samples] samples/vfs: avoid warning in statx override (Scott Mayhew) [1622041] - [fs] Fix use after free in get_tree_bdev() (Scott Mayhew) [1622041] - [security] selinux: fix regression introduced by move_mount(2) syscall (Scott Mayhew) [1622041] - [fs] mm/hugetlbfs: fix for_each_hstate() loop in init_hugetlbfs_fs() (Scott Mayhew) [1622041] - [fs] mm/hugetlbfs: fix error handling when setting up mounts (Scott Mayhew) [1622041] - [fs] cramfs: fix usage on non-MTD device (Scott Mayhew) [1622041] - [fs] vfs: move_mount: reject moving kernel internal mounts (Scott Mayhew) [1622041] - [fs] do_move_mount(): fix an unsafe use of is_anon_ns() (Scott Mayhew) [1622041] - [fs] fs/namespace: fix unprivileged mount propagation (Scott Mayhew) [1622041] - [fs] vfs: fsmount: add missing mntget() (Scott Mayhew) [1622041] - [fs] get rid of checking for absent device name in vfs_get_tree() (Scott Mayhew) [1622041] - [scripts] scripts/gdb: replace flags (MS_xyz -> SB_xyz) (Scott Mayhew) [1622041] - [mm] tmpfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [kernel] cgroup1: switch to use of errorfc() et.al (Scott Mayhew) [1622041] - [fs] procfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [fs] hugetlbfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [fs] cramfs: switch to use of errofc() et.al (Scott Mayhew) [1622041] - [fs] gfs2: switch to use of errorfc() et.al (Scott Mayhew) [1622041] - [include] prefix-handling analogues of errorf() and friends (Scott Mayhew) [1622041] - [fs] turn fs_param_is_... into functions (Scott Mayhew) [1622041] - [fs] fs_parse: handle optional arguments sanely (Scott Mayhew) [1622041] - [fs] fs_parse: fold fs_parameter_desc/fs_parameter_spec (Scott Mayhew) [1622041] - [x86] x86/resctrl: Fix typos in the mba_sc mount option (Scott Mayhew) [1622041] - [fs] fs_parser: remove fs_parameter_description name field (Scott Mayhew) [1622041] - [documentation] vfs: Update mount API docs (Scott Mayhew) [1622041] - [fs] add prefix to fs_context->log (Scott Mayhew) [1622041] - [include] new primitive: __fs_parse() (Scott Mayhew) [1622041] - [include] struct p_log, variants of warnf() et.al. taking that one instead (Scott Mayhew) [1622041] - [fs] teach logfc() to handle prefices, give it saner calling conventions (Scott Mayhew) [1622041] - [kernel] get rid of cg_invalf() (Scott Mayhew) [1622041] - [fs] get rid of fs_value_is_filename_empty (Scott Mayhew) [1622041] - [fs] don't bother with explicit length argument for __lookup_constant() (Scott Mayhew) [1622041] - [fs] fold struct fs_parameter_enum into struct constant_table (Scott Mayhew) [1622041] - [fs] fs_parse: get rid of ->enums (Scott Mayhew) [1622041] - [fs] fs: fs_parser: fix printk format warning (Scott Mayhew) [1622041] - [fs] Pass consistent param->type to fs_parse() (Scott Mayhew) [1622041] - [fs] vfs: add missing blkdev_put() in get_tree_bdev() (Scott Mayhew) [1622041] - [mm] shmem: fix LSM options parsing (Scott Mayhew) [1622041] - [fs] gfs2: make gfs2_fs_parameters static (Scott Mayhew) [1622041] - [fs] gfs2: Fix initialisation of args for remount (Scott Mayhew) [1622041] - [fs] gfs2: Fix memory leak when gfs2meta's fs_context is freed (Scott Mayhew) [1622041] - [fs] gfs2: Convert gfs2 to fs_context (Scott Mayhew) [1622041] - [fs] NFS: Fix fscache super_cookie allocation (Scott Mayhew) [1622041] - [fs] NFS: Fix a few constant_table array definitions (Scott Mayhew) [1622041] - [fs] NFS: Fix leak of ctx->nfs_server.hostname (Scott Mayhew) [1622041] - [fs] NFS: Don't hard-code the fs_type when submounting (Scott Mayhew) [1622041] - [fs] NFS: Ensure the fs_context has the correct fs_type before mounting (Scott Mayhew) [1622041] - [fs] nfs: Return EINVAL rather than ERANGE for mount parse errors (Scott Mayhew) [1622041] - [fs] NFS: Attach supplementary error information to fs_context (Scott Mayhew) [1622041] - [fs] NFS: Additional refactoring for fs_context conversion (Scott Mayhew) [1622041] - [fs] NFS: Add fs_context support (Scott Mayhew) [1622041] - [fs] NFS: Convert mount option parsing to use functionality from fs_parser.h (Scott Mayhew) [1622041] - [fs] NFS: rename nfs_fs_context pointer arg in a few functions (Scott Mayhew) [1622041] - [fs] NFS: Do some tidying of the parsing code (Scott Mayhew) [1622041] - [fs] NFS: Add a small buffer in nfs_fs_context to avoid string dup (Scott Mayhew) [1622041] - [fs] NFS: Deindent nfs_fs_context_parse_option() (Scott Mayhew) [1622041] - [fs] NFS: Split nfs_parse_mount_options() (Scott Mayhew) [1622041] - [fs] NFS: Rename struct nfs_parsed_mount_data to struct nfs_fs_context (Scott Mayhew) [1622041] - [fs] NFS: Constify mount argument match tables (Scott Mayhew) [1622041] - [fs] NFS: Move mount parameterisation bits into their own file (Scott Mayhew) [1622041] - [fs] nfs: get rid of ->set_security() (Scott Mayhew) [1622041] - [fs] nfs_clone_sb_security(): simplify the check for server bogosity (Scott Mayhew) [1622041] - [fs] nfs: get rid of mount_info ->fill_super() (Scott Mayhew) [1622041] - [fs] nfs: don't pass nfs_subversion to ->create_server() (Scott Mayhew) [1622041] - [fs] nfs: unexport nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] nfs: merge xdev and remote file_system_type (Scott Mayhew) [1622041] - [fs] nfs: don't bother passing nfs_subversion to ->try_mount() and nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] nfs: stash nfs_subversion reference into nfs_mount_info (Scott Mayhew) [1622041] - [fs] nfs: lift setting mount_info from nfs_xdev_mount() (Scott Mayhew) [1622041] - [fs] nfs4: fold nfs_do_root_mount/nfs_follow_remote_path (Scott Mayhew) [1622041] - [fs] nfs: don't bother setting/restoring export_path around do_nfs_root_mount() (Scott Mayhew) [1622041] - [fs] nfs: fold nfs4_remote_fs_type and nfs4_remote_referral_fs_type (Scott Mayhew) [1622041] - [fs] nfs: lift setting mount_info from nfs4_remote{, _referral}_mount (Scott Mayhew) [1622041] - [fs] nfs: stash server into struct nfs_mount_info (Scott Mayhew) [1622041] - [fs] saner calling conventions for nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] NFS: Make "port=" mount option optional for RDMA mounts (Scott Mayhew) [1622041] - [fs] vfs: Make fs_parse() handle fs_param_is_fd-type params better (Scott Mayhew) [1622041] - [include] vfs: Convert ramfs, shmem, tmpfs, devtmpfs, rootfs to use the new mount API (Scott Mayhew) [1622041] - [mm] shmem_parse_one(): switch to use of fs_parse() (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): take handling a single option into a helper (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): don't bother with mpol in separate variable (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): use a separate structure to keep the results (Scott Mayhew) [1622041] - [base] make shmem_fill_super() static (Scott Mayhew) [1622041] - [fs] make ramfs_fill_super() static (Scott Mayhew) [1622041] - [base] devtmpfs: don't mix {ramfs, shmem}_fill_super() with mount_single() (Scott Mayhew) [1622041] - [fs] vfs: Convert squashfs to use the new mount API (Scott Mayhew) [1622041] - [mtd] mtd: Kill mount_mtd() (Scott Mayhew) [1622041] - [fs] vfs: Convert cramfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Add a single-or-reconfig keying to vfs_get_super() (Scott Mayhew) [1622041] - [mtd] mtd: Provide fs_context-aware mount_mtd() replacement (Scott Mayhew) [1622041] - [fs] vfs: Create fs_context-aware mount_bdev() replacement (Scott Mayhew) [1622041] - [fs] new helper: get_tree_keyed() (Scott Mayhew) [1622041] - [fs] vfs: set fs_context::user_ns for reconfigure (Scott Mayhew) [1622041] - [init] mnt_init(): call shmem_init() unconditionally (Scott Mayhew) [1622041] - [base] constify ksys_mount() string arguments (Scott Mayhew) [1622041] - [fs] don't bother with registering rootfs (Scott Mayhew) [1622041] - [fs] init_rootfs(): don't bother with init_ramfs_fs() (Scott Mayhew) [1622041] - [security] vfs: Convert selinuxfs to use the new mount API (Scott Mayhew) [1622041] - [security] vfs: Convert securityfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert openpromfs to use the new mount API (Scott Mayhew) [1622041] - [xen] vfs: Convert xenfs to use the new mount API (Scott Mayhew) [1622041] - [oprofile] vfs: Convert oprofilefs to use the new mount API (Scott Mayhew) [1622041] - [misc] vfs: Convert ibmasmfs to use the new mount API (Scott Mayhew) [1622041] - [infiniband] vfs: Convert qib_fs/ipathfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert efivarfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert configfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert binfmt_misc to use the new mount API (Scott Mayhew) [1622041] - [fs] convenience helper: get_tree_single() (Scott Mayhew) [1622041] - [fs] convenience helper get_tree_nodev() (Scott Mayhew) [1622041] - [fs] vfs: Kill sget_userns() (Scott Mayhew) [1622041] - [fs] vfs: Use sget_fc() for pseudo-filesystems (Scott Mayhew) [1622041] - [dma-buf] fold mount_pseudo_xattr() into pseudo_fs_get_tree() (Scott Mayhew) [1622041] - [virtio] vfs: Convert virtio_balloon to use the new mount API (Scott Mayhew) [1622041] - [scsi] vfs: Convert ocxlflash to use the new mount API (Scott Mayhew) [1622041] - [misc] vfs: Convert cxl to use the new mount API (Scott Mayhew) [1622041] - [drm] vfs: Convert drm to use the new mount API (Scott Mayhew) [1622041] - [dax] vfs: Convert dax to use the new mount API (Scott Mayhew) [1622041] - [net] vfs: Convert sockfs to use the new mount API (Scott Mayhew) [1622041] - [mm] vfs: Convert zsmalloc to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert pipe to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert nsfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert bdev to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert anon_inodes to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert aio to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Provide a mount_pseudo-replacement for the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Provide sb->s_iflags settings in fs_context struct (Scott Mayhew) [1622041] - [fs] vfs: Fix refcounting of filenames in fs_parser (Scott Mayhew) [1622041] - [fs] move mount_capable() further out (Scott Mayhew) [1622041] - [fs] move mount_capable() calls to vfs_get_tree() (Scott Mayhew) [1622041] - [kernel] cpuset: move mount -t cpuset logics into cgroup.c (Scott Mayhew) [1622041] - [fs] procfs: set ->user_ns before calling ->get_tree() (Scott Mayhew) [1622041] - [ipc] mqueue: set ->user_ns before ->get_tree() (Scott Mayhew) [1622041] - [fs] switch mount_capable() to fs_context (Scott Mayhew) [1622041] - [fs] legacy_get_tree(): pass fc->user_ns to mount_capable() (Scott Mayhew) [1622041] - [fs] move the capability checks from sget_userns() to legacy_get_tree() (Scott Mayhew) [1622041] - [fs] vfs: Kill mount_ns() (Scott Mayhew) [1622041] - [fs] vfs: Convert nfsctl to use the new mount API (Scott Mayhew) [1622041] - [net] vfs: Convert rpc_pipefs to use the new mount API (Scott Mayhew) [1622041] - [fs] consolidate the capability checks in sget_{fc, userns}() (Scott Mayhew) [1622041] - [fs] start massaging the checks in sget_...(): move to sget_userns() (Scott Mayhew) [1622041] - [x86] no need to protect against put_user_ns(NULL) (Scott Mayhew) [1622041] - [fs] mount_pseudo(): drop 'name' argument, switch to d_make_root() (Scott Mayhew) [1622041] - [mm] zsmalloc: don't bother with dentry_operations (Scott Mayhew) [1622041] - [virtio] balloon: don't bother with dentry_operations (Scott Mayhew) [1622041] - [scsi] cxlflash: don't bother with dentry_operations (Scott Mayhew) [1622041] - [misc] cxl: don't bother with dentry_operations (Scott Mayhew) [1622041] - [fs] fs: VALIDATE_FS_PARSER should default to n (Scott Mayhew) [1622041] - [security] selinux: fix a missing-check bug in selinux_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] selinux: fix a missing-check bug in selinux_add_mnt_opt( ) (Scott Mayhew) [1622041] - [powerpc] uapi: Wire up the mount API syscalls on non-x86 arches (Scott Mayhew) [1622041] - [x86] uapi, x86: Fix the syscall numbering of the mount API syscalls (Scott Mayhew) [1622041] - [fs] uapi, fsopen: use square brackets around "fscontext" (Scott Mayhew) [1622041] - [samples] vfs: Add a sample program for the new mount API (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add fspick() to select a superblock for reconfiguration (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add fsmount() to create a mount for a superblock (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add fsconfig() for configuring and managing a context (Scott Mayhew) [1622041] - [fs] vfs: Implement logging through fs_context (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add fsopen() to prepare for superblock creation (Scott Mayhew) [1622041] - [fs] Make anon_inodes unconditional (Scott Mayhew) [1622041] - [fs] teach move_mount(2) to work with OPEN_TREE_CLONE (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add move_mount(2) to move mounts around (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add open_tree(2) to reference or clone a mount (Scott Mayhew) [1622041] - [fs] fix sysfs_init_fs_context() in !CONFIG_NET_NS case (Scott Mayhew) [1622041] - [fs] vfs: Add some logging to the core users of the fs_context log (Scott Mayhew) [1622041] - [fs] vfs: Implement logging through fs_context (Scott Mayhew) [1622041] - [documentation] vfs: Provide documentation for new mount API (Scott Mayhew) [1622041] - [fs] vfs: Remove kern_mount_data() (Scott Mayhew) [1622041] - [fs] hugetlbfs: Convert to fs_context (Scott Mayhew) [1622041] - [kernel] cpuset: Use fs_context (Scott Mayhew) [1622041] - [fs] kernfs, sysfs, cgroup, intel_rdt: Support fs_context (Scott Mayhew) [1622041] - [kernel] cgroup: store a reference to cgroup_ns into cgroup_fs_context (Scott Mayhew) [1622041] - [kernel] cgroup1_get_tree(): separate "get cgroup_root to use" into a separate helper (Scott Mayhew) [1622041] - [kernel] cgroup_do_mount(): massage calling conventions (Scott Mayhew) [1622041] - [kernel] cgroup: stash cgroup_root reference into cgroup_fs_context (Scott Mayhew) [1622041] - [kernel] cgroup2: switch to option-by-option parsing (Scott Mayhew) [1622041] - [kernel] cgroup1: switch to option-by-option parsing (Scott Mayhew) [1622041] - [kernel] cgroup: take options parsing into ->parse_monolithic() (Scott Mayhew) [1622041] - [kernel] cgroup: fold cgroup1_mount() into cgroup1_get_tree() (Scott Mayhew) [1622041] - [kernel] cgroup: start switching to fs_context (Scott Mayhew) [1622041] - [ipc] ipc: Convert mqueue fs to fs_context (Scott Mayhew) [1622041] - [fs] proc: Add fs_context support to procfs (Scott Mayhew) [1622041] - [fs] procfs: Move proc_fill_super() to fs/proc/root.c (Scott Mayhew) [1622041] - [include] introduce cloning of fs_context (Scott Mayhew) [1622041] - [fs] convenience helpers: vfs_get_super() and sget_fc() (Scott Mayhew) [1622041] - [fs] vfs: Implement a filesystem superblock creation/configuration context (Scott Mayhew) [1622041] - [include] vfs: Put security flags into the fs_context struct (Scott Mayhew) [1622041] - [security] selinux: Implement the new mount API LSM hooks (Scott Mayhew) [1622041] - [include] vfs: Add LSM hooks for the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Add configuration parser helpers (Scott Mayhew) [1622041] - [include] vfs: Introduce logging functions (Scott Mayhew) [1622041] - [fs] introduce fs_context methods (Scott Mayhew) [1622041] - [fs] fs_context flavour for submounts (Scott Mayhew) [1622041] - [fs] convert do_remount_sb() to fs_context (Scott Mayhew) [1622041] - [fs] vfs_get_tree(): evict the call of security_sb_kern_mount() (Scott Mayhew) [1622041] - [fs] new helper: do_new_mount_fc() (Scott Mayhew) [1622041] - [fs] teach vfs_get_tree() to handle subtype, switch do_new_mount() to it (Scott Mayhew) [1622041] - [fs] new helpers: vfs_create_mount(), fc_mount() (Scott Mayhew) [1622041] - [fs] vfs: Introduce fs_context, switch vfs_kern_mount() to it (Scott Mayhew) [1622041] - [fs] saner handling of temporary namespaces (Scott Mayhew) [1622041] - [fs] separate copying and locking mount tree on cross-userns copies (Scott Mayhew) [1622041] - [fs] kill kernfs_pin_sb() (Scott Mayhew) [1622041] - [fs] mount_fs: suppress MAC on MS_SUBMOUNT as well as MS_KERNMOUNT (Scott Mayhew) [1622041] - [security] LSM: new method: ->sb_add_mnt_opt() (Scott Mayhew) [1622041] - [security] selinux: rewrite selinux_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] selinux: regularize Opt_... names a bit (Scott Mayhew) [1622041] - [security] selinux: switch away from match_token() (Scott Mayhew) [1622041] - [security] selinux: new helper - selinux_add_opt() (Scott Mayhew) [1622041] - [include] LSM: bury struct security_mnt_opts (Scott Mayhew) [1622041] - [security] selinux: switch to private struct selinux_mnt_opts (Scott Mayhew) [1622041] - [fs] LSM: hide struct security_mnt_opts from any generic code (Scott Mayhew) [1622041] - [security] LSM: turn sb_eat_lsm_opts() into a method (Scott Mayhew) [1622041] - [fs] nfs_remount(): don't leak, don't ignore LSM options quietly (Scott Mayhew) [1622041] - [security] LSM: split ->sb_set_mnt_opts() out of ->sb_kern_mount() (Scott Mayhew) [1622041] - [fs] new helper: security_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] LSM: lift extracting and parsing LSM options into the caller of ->sb_remount() (Scott Mayhew) [1622041] - [security] LSM: lift parsing LSM options into the caller of ->sb_kern_mount() (Scott Mayhew) [1622041] - [fs] vfs: Separate changing mount flags full remount (Scott Mayhew) [1622041] - [fs] vfs: Suppress MS_* flag defs within the kernel unless explicitly enabled (Scott Mayhew) [1622041]- [hv] hv_utils: drain the timesync packets on onchannelcallback (Vitaly Kuznetsov) [1884733] - [hv] hv_utils: return error if host timesysnc update is stale (Vitaly Kuznetsov) [1884733] - [netdrv] hv_netvsc: Cache the current data path to avoid duplicate call and message (Mohammed Gamal) [1876527] - [netdrv] hv_netvsc: Switch the data path at the right time during hibernation (Mohammed Gamal) [1876527] - [netdrv] hv_netvsc: Fix hibernation for mlx5 VF driver (Mohammed Gamal) [1876527] - [hv] hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume() (Mohammed Gamal) [1876519] - [target] scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix hang in iscsit_access_np() when getting tpg->np_login_sem (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix data digest calculation (Maurizio Lombardi) [1880395] - [target] scsi: target: Make iscsit_register_transport() return void (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Make TMR notification optional (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Implement tmr_notify callback (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix and simplify timeout handling (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Factor out new helper ring_insert_padding (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Do not queue aborted commands (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Use priv pointer in se_cmd (Maurizio Lombardi) [1880395] - [target] scsi: target: Add tmr_notify backend function (Maurizio Lombardi) [1880395] - [target] scsi: target: Modify core_tmr_abort_task() (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix inconsistent debug message (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix login error when receiving (Maurizio Lombardi) [1880395] - [target] scsi: target: Remove unused variable 'tpg' (Maurizio Lombardi) [1880395] - [target] scsi: target: cxgbit: Remove tx flow control code (Maurizio Lombardi) [1880395] - [target] scsi: target: cxgbit: Check connection state before issuing hardware command (Maurizio Lombardi) [1880395] - [target] scsi: target: Handle short iSIDs (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id buf len calculation (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id buffer setup (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id parsing (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix crash during SPEC_I_PT handling (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix xcopy sess release leak (Maurizio Lombardi) [1880395] - [target] scsi: target: Check enforce_pr_isids during registration (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix crash on ARM during cmd completion (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Optimize use of flush_dcache_page (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Remove unnecessary bit TCMU_CMD_BIT_INFLIGHT (Maurizio Lombardi) [1880395] - [target] scsi: target: Rename target_setup_cmd_from_cdb() to target_cmd_parse_cdb() (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix NULL pointer dereference (Maurizio Lombardi) [1880395] - [target] scsi: target: Initialize LUN in transport_init_se_cmd() (Maurizio Lombardi) [1880395] - [target] scsi: target: Factor out a new helper, target_cmd_init_cdb() (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix size in calls to tcmu_flush_dcache_range (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix a use after free in tcmu_check_expired_queue_cmd() (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Userspace must not complete queued commands (Maurizio Lombardi) [1880395] - [target] scsi: target: core: Add initiatorname to NON_EXISTENT_LUN error (Maurizio Lombardi) [1880395] - [target] scsi: target: loopback: Fix READ with data and sensebytes (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Make pgr_support and alua_support attributes writable (Maurizio Lombardi) [1880395] - [target] scsi: target: Make transport_flags per device (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Add attributes enforce_pr_isids and force_pr_aptpl (Maurizio Lombardi) [1880395] - [target] scsi: target: Add missing emulate_pr attribute to passthrough backends (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Remove the iscsi_data_count structure (Maurizio Lombardi) [1880395] - [target] scsi: target: Put lun_ref at end of tmr processing (Maurizio Lombardi) [1880395] - [target] scsi: target/iblock: fix WRITE SAME zeroing (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN (Maurizio Lombardi) [1880395] - [target] scsi: target: fix PR IN / READ FULL STATUS for FC (Maurizio Lombardi) [1880395] - [target] scsi: target: Write NULL to *port_nexus_ptr if no ISID (Maurizio Lombardi) [1880395] - [target] scsi: target: use the stack for XCOPY passthrough cmds (Maurizio Lombardi) [1880395] - [target] scsi: target: increase XCOPY I/O size (Maurizio Lombardi) [1880395] - [target] scsi: target: avoid per-loop XCOPY buffer allocations (Maurizio Lombardi) [1880395] - [target] scsi: target: drop xcopy DISK BLOCK LENGTH debug (Maurizio Lombardi) [1880395] - [target] scsi: target: use #define for xcopy descriptor len (Maurizio Lombardi) [1880395] - [crypto] crypto: testmgr - mark cts(cbc(aes)) as FIPS allowed (Vladis Dronov) [1855161] - [kernel] sched/deadline: Unthrottle PI boosted threads while enqueuing (Daniel Bristot de Oliveira) [1869760] - [kernel] sched/deadline: Fix stale throttling on de-/boosted tasks (Daniel Bristot de Oliveira) [1869760] - [netdrv] treewide: Use fallthrough pseudo-keyword (Jonathan Toppins) [1871286] - [netdrv] tg3: Avoid the use of one-element array (Jonathan Toppins) [1871286] - [netdrv] net: tg3: tidy up loop, remove need to compute off with a multiply (Jonathan Toppins) [1871286] - [netdrv] net: tg3: reject unsupported coalescing params (Jonathan Toppins) [1871286] - [netdrv] net: tg3: use skb_list_walk_safe helper for gso segments (Jonathan Toppins) [1871286] - [gpio] gpio: gpio-mlxbf2.c: Provide __releases() annotation to stop confusing Sparse (Alaa Hleihel) [1816931] - [gpio] gpio: gpio-mlxbf2: Tell the compiler that ACPI functions may not be use (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: Fix sleeping while holding spinlock (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: fix return value check in mlxbf2_gpio_get_lock_res() (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: remove unused including (Alaa Hleihel) [1816931] - [gpio] gpio: add driver for Mellanox BlueField 2 GPIO controller (Alaa Hleihel) [1816931] - [include] compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use (Ivan Vecera) [1867168] - [net] net: sctp: Rename fallthrough label to unhandled (Ivan Vecera) [1867168]- [pci] PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken (Myron Stowe) [1888310] - [netdrv] nfp: flower: fix ABI mismatch between driver and firmware (Ivan Vecera) [1886717] - [netdrv] netronome: fix ipv6 link error (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix incorrect flag assignment (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix used time of merge flow statistics (Ivan Vecera) [1886717] - [netdrv] nfp: flower: inform firmware of flower features (Ivan Vecera) [1886717] - [netdrv] nfp: flower: renaming of feature bits (Ivan Vecera) [1886717] - [netdrv] nfp: don't check lack of RX/TX channels (Ivan Vecera) [1886717] - [netdrv] nfp: abm: fix error return code in nfp_abm_vnic_alloc() (Ivan Vecera) [1886717] - [netdrv] nfp: abm: fix a memory leak bug (Ivan Vecera) [1886717] - [netdrv] net/nfp: Update driver to use global kernel version (Ivan Vecera) [1886717] - [netdrv] nfp: allow explicitly selected delayed stats (Ivan Vecera) [1886717] - [netdrv] net: nfp: Use scnprintf() for avoiding potential buffer overflow (Ivan Vecera) [1886717] - [netdrv] nfp: let core reject the unsupported coalescing parameters (Ivan Vecera) [1886717] - [netdrv] nfp: Use pci_get_dsn() (Ivan Vecera) [1886717] - [netdrv] netronome: Replace zero-length array with flexible-array member (Ivan Vecera) [1886717] - [netdrv] devlink: move devlink documentation to subfolder (Ivan Vecera) [1886717] - [netdrv] remove ioremap_nocache and devm_ioremap_nocache (Ivan Vecera) [1886717] - [netdrv] nfp: tls: implement the stream sync RX resync (Ivan Vecera) [1886717] - [netdrv] nfp: pass packet pointer to nfp_net_parse_meta() (Ivan Vecera) [1886717] - [netdrv] nfp: flower: update flow merge code to support IPv6 tunnels (Ivan Vecera) [1886717] - [netdrv] nfp: flower: support ipv6 tunnel keep-alive messages from fw (Ivan Vecera) [1886717] - [netdrv] nfp: flower: handle notifiers for ipv6 route changes (Ivan Vecera) [1886717] - [netdrv] nfp: flower: handle ipv6 tunnel no neigh request (Ivan Vecera) [1886717] - [netdrv] nfp: flower: modify pre-tunnel and set tunnel action for ipv6 (Ivan Vecera) [1886717] - [netdrv] nfp: flower: offload list of IPv6 tunnel endpoint addresses (Ivan Vecera) [1886717] - [netdrv] nfp: flower: compile match for IPv6 tunnels (Ivan Vecera) [1886717] - [netdrv] nfp: flower: move udp tunnel key match compilation to helper function (Ivan Vecera) [1886717] - [netdrv] nfp: flower: pass flow rule pointer directly to match functions (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix stats id allocation (Ivan Vecera) [1886717] - [netdrv] netronome: use the new txqueue timeout argument (Ivan Vecera) [1886717] - [netdrv] nfp: add support for TLV device stats (Ivan Vecera) [1886717] - [netdrv] treewide: Use sizeof_field() macro (Ivan Vecera) [1886717] - [netdrv] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: make array exp_mask static, makes object smaller (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix memory leak in nfp_flower_spawn_vnic_reprs (Ivan Vecera) [1886717] - [netdrv] nfp: flower: prevent memory leak in nfp_flower_spawn_phy_reprs (Ivan Vecera) [1886717] - [netdrv] nfp: read chip model from the PluDevice register (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: set unknown fw_load_policy (Ivan Vecera) [1886717] - [documentation] Documentation: nfp: add nfp driver specific notes (Ivan Vecera) [1886717] - [netdrv] kdoc: fix nfp_fw_load documentation (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: add 'reset_dev_on_drv_probe' support (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: add 'fw_load_policy' support (Ivan Vecera) [1886717] - [netdrv] nfp: add devlink param infrastructure (Ivan Vecera) [1886717] - [netdrv] nfp: honor FW reset and loading policies (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for hwinfo set operation (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for optional hwinfo lookup (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for fw_loaded command (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: add simple map op cache (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: rework MTU checking (Ivan Vecera) [1886717] - [netdrv] net: Use skb accessors in network drivers (Ivan Vecera) [1886717] - [netdrv] nfp: tls: rename tls packet counters (Ivan Vecera) [1886717] - [netdrv] nfp: tls: undo TLS sequence tracking when dropping the frame (Ivan Vecera) [1886717] - [netdrv] nfp: tls: avoid one of the ifdefs for TLS (Ivan Vecera) [1886717] - [netdrv] nfp: tls: don't leave key material in freed FW cmsg skbs (Ivan Vecera) [1886717] - [netdrv] nfp: tls: count TSO segments separately for the TLS offload (Ivan Vecera) [1886717] - [netdrv] nfp: tls: use unique connection ids instead of 4-tuple for TX (Ivan Vecera) [1886717] - [netdrv] nfp: tls: move setting ipver_vlan to a helper (Ivan Vecera) [1886717] - [netdrv] nfp: tls: ignore queue limits for delete commands (Ivan Vecera) [1886717] - [netdrv] nfp: tls: fix error return code in nfp_net_tls_add() (Ivan Vecera) [1886717] - [netdrv] nfp: tls: enable TLS RX offload (Ivan Vecera) [1886717] - [netdrv] net/tls: don't clear TX resync flag on error (Ivan Vecera) [1886717] - [netdrv] net/tls: add tracing for device/offload events (Ivan Vecera) [1886717] - [netdrv] nfp: tls: make use of kernel-driven TX resync (Ivan Vecera) [1886717] - [netdrv] net/tls: generalize the resync callback (Ivan Vecera) [1886717] - [netdrv] nfp: tls: implement RX TLS resync (Ivan Vecera) [1886717] - [netdrv] nfp: add async version of mailbox communication (Ivan Vecera) [1886717] - [netdrv] nfp: rename nfp_ccm_mbox_alloc() (Ivan Vecera) [1886717] - [netdrv] nfp: tls: set skb decrypted flag (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add basic statistics (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add/delete TLS TX connections (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add datapath support for TLS TX (Ivan Vecera) [1886717] - [netdrv] nfp: flower: use struct_size() helper (Ivan Vecera) [1886717] - [netdrv] nfp: add missing kdoc (Ivan Vecera) [1886717] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Ivan Vecera) [1886717] - [iommu] iommu/amd: Fix the overwritten field in IVMD header (Baoquan He) [1869148] - [powerpc] pseries/drmem: don't cache node id in drmem_lmb struct (Diego Domingos) [1816543] - [include] cgroup: Fix sock_cgroup_data on big-endian (Vladis Dronov) [1868659] {CVE-2020-14356} - [include] cgroup: fix cgroup_sk_alloc() for sk_clone_lock() (Vladis Dronov) [1868659] {CVE-2020-14356} - [net] netprio_cgroup: Fix unlimited memory leak of v2 cgroups (Vladis Dronov) [1868659] {CVE-2020-14356} - [netdrv] net/broadcom: Clean broadcom code from driver versions (Jonathan Toppins) [1872443]- [net] Bluetooth: fix kernel oops in store_pending_adv_report (Gopal Tiwari) [1888455] {CVE-2020-24490} - [net] Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel (Gopal Tiwari) [1888258] {CVE-2020-12351} - [net] Bluetooth: A2MP: Fix not initializing all members (Gopal Tiwari) [1888807] {CVE-2020-12352} - [mm] mm, compaction: make capture control handling safe wrt interrupts (Rafael Aquini) [1862175] - [mm] mm/compaction: fix a typo in comment "pessemistic"->"pessimistic" (Rafael Aquini) [1862175] - [mm] mm/compaction: add missing annotation for compact_lock_irqsave (Rafael Aquini) [1862175] - [mm] mm/compaction.c: clean code by removing unnecessary assignment (Rafael Aquini) [1862175] - [kernel] mm/compaction: Disable compact_unevictable_allowed on RT (Rafael Aquini) [1862175] - [kernel] mm/compaction: really limit compact_unevictable_allowed to 0 and 1 (Rafael Aquini) [1862175] - [mm] mm, compaction: fully assume capture is not NULL in compact_zone_order() (Rafael Aquini) [1862175] - [mm] mm, compaction: fix wrong pfn handling in __reset_isolation_pfn() (Rafael Aquini) [1862175] - [mm] mm/compaction.c: remove unnecessary zone parameter in isolate_migratepages() (Rafael Aquini) [1862175] - [mm] mm: compaction: avoid 100 CPU usage during compaction when a task is killed (Rafael Aquini) [1862175] - [mm] mm, compaction: make sure we isolate a valid PFN (Rafael Aquini) [1862175] - [mm] mm/compaction.c: correct zone boundary handling when isolating pages from a pageblock (Rafael Aquini) [1862175] - [trace] mm, compaction: some tracepoints should be defined only when CONFIG_COMPACTION is set (Rafael Aquini) [1862175] - [trace] mm: compaction: show gfp flag names in try_to_compact_pages tracepoint (Rafael Aquini) [1862175] - [mm] mm/compaction.c: fix an undefined behaviour (Rafael Aquini) [1862175] - [mm] mm, page_alloc: always use a captured page regardless of compaction result (Rafael Aquini) [1862175] - [mm] mm/compaction.c: abort search if isolation fails (Rafael Aquini) [1862175] - [mm] mm/compaction.c: correct zone boundary handling when resetting pageblock skip hints (Rafael Aquini) [1862175] - [include] include/linux/list.h: fix list_is_first() kernel-doc (Rafael Aquini) [1862175] - [mm] mm/compaction: pass pgdat to too_many_isolated() instead of zone (Rafael Aquini) [1862175] - [mm] mm: remove zone_lru_lock() function, access ->lru_lock directly (Rafael Aquini) [1862175] - [mm] mm, compaction: capture a page under direct compaction (Rafael Aquini) [1862175] - [mm] mm, compaction: be selective about what pageblocks to clear skip hints (Rafael Aquini) [1862175] - [mm] mm, compaction: sample pageblocks for free pages (Rafael Aquini) [1862175] - [mm] mm, compaction: round-robin the order while searching the free lists for a target (Rafael Aquini) [1862175] - [mm] mm, compaction: reduce premature advancement of the migration target scanner (Rafael Aquini) [1862175] - [mm] mm, compaction: do not consider a need to reschedule as contention (Rafael Aquini) [1862175] - [mm] mm, compaction: rework compact_should_abort as compact_check_resched (Rafael Aquini) [1862175] - [mm] mm, compaction: keep cached migration PFNs synced for unusable pageblocks (Rafael Aquini) [1862175] - [mm] mm, compaction: check early for huge pages encountered by the migration scanner (Rafael Aquini) [1862175] - [mm] mm, compaction: finish pageblock scanning on contention (Rafael Aquini) [1862175] - [mm] mm, compaction: avoid rescanning the same pageblock multiple times (Rafael Aquini) [1862175] - [mm] mm, compaction: use free lists to quickly locate a migration target (Rafael Aquini) [1862175] - [mm] mm, compaction: keep migration source private to a single compaction instance (Rafael Aquini) [1862175] - [mm] mm, compaction: use free lists to quickly locate a migration source (Rafael Aquini) [1862175] - [mm] mm, compaction: always finish scanning of a full pageblock (Rafael Aquini) [1862175] - [mm] mm, migrate: immediately fail migration of a page with no migration handler (Rafael Aquini) [1862175] - [mm] mm, compaction: rename map_pages to split_map_pages (Rafael Aquini) [1862175] - [mm] mm, compaction: remove unnecessary zone parameter in some instances (Rafael Aquini) [1862175] - [mm] mm, compaction: remove last_migrated_pfn from compact_control (Rafael Aquini) [1862175] - [mm] mm, compaction: rearrange compact_control (Rafael Aquini) [1862175] - [mm] mm, compaction: shrink compact_control (Rafael Aquini) [1862175] - [kernel] mm: remove sysctl_extfrag_handler() (Rafael Aquini) [1862175] - [net] netlink: fix state reallocation in policy export (Petr Oros) [1874050] - [net] netlink: add infrastructure to expose policies to userspace (Petr Oros) [1874050] - [lib] netlink: factor out policy range helpers (Petr Oros) [1874050] - [net] netlink: remove NLA_EXACT_LEN_WARN (Petr Oros) [1874050] - [include] netlink: allow NLA_MSECS to have range validation (Petr Oros) [1874050] - [net] netlink: extend policy range validation (Petr Oros) [1874050] - [net] nl80211: link recursive netlink nested policy (Petr Oros) [1874050] - [lib] netlink: limit recursion depth in policy validation (Petr Oros) [1874050] - [net] netlink: remove type-unsafe validation_data pointer (Petr Oros) [1874050] - [powerpc] powerpc/pseries: new lparcfg key/value pair: partition_affinity_score (Steve Best) [1879420] - [powerpc] powerpc/perf: consolidate GPCI hcall structs into asm/hvcall.h (Steve Best) [1879420] - [include] iopoll: Introduce read_poll_timeout_atomic macro (Patrick Talbert) [1879211] - [include] iopoll: redefined readx_poll_timeout macro to simplify the code (Patrick Talbert) [1879211] - [include] iopoll: introduce read_poll_timeout macro (Patrick Talbert) [1879211] - [infiniband] IB/ipoib: Fix double free of skb in case of multicast traffic in CM mode (Kamal Heib) [1857600] - [infiniband] RDMA/core: Fix double destruction of uobject (Kamal Heib) [1857600] - [infiniband] RDMA/pvrdma: Fix missing pci disable in pvrdma_pci_probe() (Kamal Heib) [1857600] - [net] xprtrdma: Fix use of xdr_stream_encode_item_{present, absent} (Kamal Heib) [1857600] - [net] xprtrdma: Fix trace point use-after-free race (Kamal Heib) [1857600] - [net] xprtrdma: Restore wake-up-all to rpcrdma_cm_event_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Fix missing RDMA_CM_EVENT_REJECTED event after receiving REJ message (Kamal Heib) [1857600] - [net] xprtrdma: kmalloc rpcrdma_ep separate from rpcrdma_xprt (Kamal Heib) [1857600] - [net] xprtrdma: Extract sockaddr from struct rdma_cm_id (Kamal Heib) [1857600] - [net] xprtrdma: Merge struct rpcrdma_ia into struct rpcrdma_ep (Kamal Heib) [1857600] - [net] xprtrdma: Disconnect on flushed completion (Kamal Heib) [1857600] - [net] xprtrdma: Remove rpcrdma_ia::ri_flags (Kamal Heib) [1857600] - [net] xprtrdma: Invoke rpcrdma_ia_open in the connect worker (Kamal Heib) [1857600] - [net] xprtrdma: Allocate Protection Domain in rpcrdma_ep_create() (Kamal Heib) [1857600] - [net] xprtrdma: Refactor rpcrdma_ep_connect() and rpcrdma_ep_disconnect() (Kamal Heib) [1857600] - [net] xprtrdma: Clean up the post_send path (Kamal Heib) [1857600] - [net] xprtrdma: Refactor frwr_init_mr() (Kamal Heib) [1857600] - [net] xprtrdma: Invoke rpcrdma_ep_create() in the connect worker (Kamal Heib) [1857600] - [net] xprtrdma: Enhance MR-related trace points (Kamal Heib) [1857600] - [infiniband] IB/iser: Always check sig MR before putting it to the free pool (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Use in-kernel offsetofend() to check field availability (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make sure the cm_id is in the IB_CM_IDLE state in destroy (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_sidr_rep() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_rej() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_drep() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_dreq() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Add some lockdep assertions for cm_id_priv->lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make it clearer how concurrency works in cm_req_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make it clear that there is no concurrency in cm_sidr_req_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Simplify establishing a listen cm_id (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make the destroy_id flow more robust (Kamal Heib) [1857600] - [net] svcrdma: Avoid DMA mapping small RPC Replies (Kamal Heib) [1857600] - [net] svcrdma: Fix double sync of transport header buffer (Kamal Heib) [1857600] - [net] svcrdma: Refactor chunk list encoders (Kamal Heib) [1857600] - [net] SUNRPC: Add encoders for list item discriminators (Kamal Heib) [1857600] - [net] svcrdma: Rename svcrdma_encode trace points in send routines (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_send_reply_msg() (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_map_reply_msg() (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_send_reply_chunk() (Kamal Heib) [1857600] - [net] svcrdma: De-duplicate code that locates Write and Reply chunks (Kamal Heib) [1857600] - [include] svcrdma: Use struct xdr_stream to decode ingress transport headers (Kamal Heib) [1857600] - [net] svcrdma: Remove svcrdma_cm_event() trace point (Kamal Heib) [1857600] - [net] SUNRPC: Add xdr_pad_size() helper (Kamal Heib) [1857600] - [net] nfsd: Fix NFSv4 READ on RDMA when using readv (Kamal Heib) [1857600] - [net] svcrdma: Replace zero-length array with flexible-array member (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Delete not implemented CM peer to peer communication (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Teach lockdep about the order of rtnl and lock (Kamal Heib) [1857600] - [infiniband] RDMA/rw: map P2P memory correctly for signature operations (Kamal Heib) [1857600] - [infiniband] RDMA/ipoib: reject unsupported coalescing params (Kamal Heib) [1857600] - [infiniband] RDMA/providers: Fix return value when QP type isn't supported (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Use the new APIs for printing log (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Optimize hns_roce_modify_qp function (Kamal Heib) [1857600] - [infiniband] RDMA/hns: RDMA/hns: Assign rq head pointer when enable rq record db (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Update the prompt message for creating and destroy qp (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Do not delay freeing of DMA pages (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Properly document the interrupt mask register (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Unified getters/setters for device structs bitmask access (Kamal Heib) [1857600] - [infiniband] RDMA/ipoib: Don't set constant driver version (Kamal Heib) [1857600] - [infiniband] RDMA: Replace zero-length array with flexible-array member (Kamal Heib) [1857600] - [infiniband] RDMA/ucma: Use refcount_t for the ctx->ref (Kamal Heib) [1857600] - [infiniband] RDMA/core: Get rid of ib_create_qp_user (Kamal Heib) [1857600] - [infiniband] RDMA/core: Add weak ordering dma attr to dma mapping (Kamal Heib) [1857600] - [infiniband] RDMA/ucma: Mask QPN to be 24 bits according to IBTA (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use refcount API to reflect refcount (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Rename cma_device ref/deref helpers to to get/put (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use refcount API to reflect refcount (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Rename cma_device ref/deref helpers to to get/put (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use RDMA device port iterator (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use a helper function to enqueue resolve work items (Kamal Heib) [1857600] - [infiniband] RDMA/rw: Fix error flow during RDMA context initialization (Kamal Heib) [1857600] - [infiniband] IB/core: Add interface to advise_mr for kernel users (Kamal Heib) [1857600] - [infiniband] IB/core: Introduce ib_reg_user_mr (Kamal Heib) [1857600] - [uapi] RDMA/core: Add the core support field to METHOD_GET_CONTEXT (Kamal Heib) [1857600] - [infiniband] RDMA/uverbs: Add ioctl command to get a device context (Kamal Heib) [1857600] - [fs] xfs: Fix false positive lockdep warning with sb_internal & fs_reclaim (Waiman Long) [1838643] - [mm] mm/mmu_notifier: mm/rmap.c: Fix a mmu_notifier range bug in try_to_unmap_one (Waiman Long) [1871883] - [mm] mm/memory.c: initialise mmu_notifier_range correctly (Waiman Long) [1871883] - [mm] mm/mmu_notifier: use structure for invalidate_range_start/end calls v2 (Waiman Long) [1871883] - [mm] hugetlb: take PMD sharing into account when flushing tlb/caches (Waiman Long) [1871883] - [mm] mm, hugetlbfs: pass fault address to cow handler (Waiman Long) [1871883] - [mm] mm, hugetlbfs: rename address to haddr in hugetlb_cow() (Waiman Long) [1871883] - [mm] mm, huge page: copy target sub-page last when copy huge page (Waiman Long) [1871883] - [mm] mm, clear_huge_page: move order algorithm into a separate function (Waiman Long) [1871883] - [mm] Revert "mm: always flush VMA ranges affected by zap_page_range" (Waiman Long) [1871883] - [kernel] psi: eliminate kthread_worker from psi trigger scheduling mechanism (Waiman Long) [1873040] - [kernel] psi: get poll_work to run when calling poll syscall next time (Waiman Long) [1873040] - [block] block: loop: set discard granularity and alignment for block device backed loop (Ming Lei) [1866712] - [net] gre: recompute gre csum for sctp over gre tunnels (Lorenzo Bianconi) [1755200] - [include] mm/hugetlb: enable arch specific huge page size support for migration (Donghai Qiao) [1869887] - [mm] arm64/mm: enable HugeTLB migration for contiguous bit HugeTLB pages (Donghai Qiao) [1869887] - [lib] idr: Fix idr_get_next_ul race with idr_remove (Felix Ansell) [1866062] - [lib] genalloc: Fix a set of docs build warnings (Felix Ansell) [1866062] - [lib] lib/Kconfig: fix OBJAGG in lib/ menu structure (Felix Ansell) [1866062] - [lib] lib: Reduce user_access_begin() boundaries in strncpy_from_user() and strnlen_user() (Felix Ansell) [1866062]- [char] random32: update the net random state on interrupt and activity (Donghai Qiao) [1867569] {CVE-2020-16166} - [fs] nfs: Fix getxattr kernel panic and memory overflow (Benjamin Coddington) [1880894] {CVE-2020-25212} - [tools] selftests: rtnetlink: Test bridge enslavement with different parent IDs (Jonathan Toppins) [1860479] - [tools] selftests: rtnetlink: correct the final return value for the test (Jonathan Toppins) [1860479] - [net] Fix bridge enslavement failure (Jonathan Toppins) [1860479] - [net] Make mpls_entry_encode() available for generic users (Patrick Talbert) [1878818] - [net] SUNRPC dont update timeout value on connection reset (Steve Dickson) [1861895] - [kernel] overflow.h: Add flex_array_size() helper (Petr Oros) [1876924] - [net] netpoll: accept NULL np argument in netpoll_send_skb() (Ivan Vecera) [1867968] - [net] netpoll: netpoll_send_skb() returns transmit status (Ivan Vecera) [1867968] - [net] netpoll: move netpoll_send_skb() out of line (Ivan Vecera) [1867968] - [net] netpoll: remove dev argument from netpoll_send_skb_on_dev() (Ivan Vecera) [1867968] - [net] netpoll: Fix use correct return type for ndo_start_xmit() (Ivan Vecera) [1867968] - [net] core: Introduce netdev_get_xmit_slave (Ivan Vecera) [1867974] - [net] get rid of lockdep_set_class_and_subclass() (Ivan Vecera) [1867961] - [net] change addr_list_lock back to static key (Ivan Vecera) [1867961] - [net] batman-adv: Revert "Drop lockdep.h include for soft-interface.c" (Ivan Vecera) [1867961] - [net] partially revert dynamic lockdep key changes (Ivan Vecera) [1867961] - [kernel] rcu: Maintain RHEL kABI (Waiman Long) [1862812] - [kernel] rcu: Don't acquire lock in NMI handler in rcu_nmi_enter_common() (Waiman Long) [1862812] - [kernel] rcu: Add *_ONCE() to rcu_data ->rcu_forced_tick (Waiman Long) [1862812] - [kernel] rcu: Make rcu_barrier() account for offline no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu: Clear ->core_needs_qs at GP end or self-reported QS (Waiman Long) [1862812] - [kernel] rcu: Forgive slow expedited grace periods at boot time (Waiman Long) [1862812] - [tools] torture: Hoist calls to lscpu to higher-level kvm.sh script (Waiman Long) [1862812] - [tools] torture: Allow "CFLIST" to specify default list of scenarios (Waiman Long) [1862812] - [kernel] rcutorture: Dynamically allocate rcu_fwds structure (Waiman Long) [1862812] - [kernel] rcutorture: Complete threading rcu_fwd pointers through functions (Waiman Long) [1862812] - [kernel] rcutorture: Move to dynamic initialization of rcu_fwds (Waiman Long) [1862812] - [kernel] rcutorture: Thread rcu_fwd pointer through forward-progress functions (Waiman Long) [1862812] - [kernel] rcutorture: Pull callback forward-progress data into rcu_fwd struct (Waiman Long) [1862812] - [tools] rcutorture: Add worst-case call_rcu() forward-progress results (Waiman Long) [1862812] - [tools] torture: Handle systems lacking the mpstat command (Waiman Long) [1862812] - [tools] torture: Handle jitter for CPUs that cannot be offlined (Waiman Long) [1862812] - [tools] rcutorture: Dispense with Dracut for initrd creation (Waiman Long) [1862812] - [tools] torture: Use gawk instead of awk for systime() function (Waiman Long) [1862812] - [kernel] rcu: Avoid tick_dep_set_cpu() misordering (Waiman Long) [1862812] - [kernel] rcu: Provide wrappers for uses of ->rcu_read_lock_nesting (Waiman Long) [1862812] - [kernel] rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special() (Waiman Long) [1862812] - [kernel] rcu: Clear ->rcu_read_unlock_special only once (Waiman Long) [1862812] - [kernel] rcu: Clear .exp_hint only when deferred quiescent state has been reported (Waiman Long) [1862812] - [kernel] rcu: Rename some instance of CONFIG_PREEMPTION to CONFIG_PREEMPT_RCU (Waiman Long) [1862812] - [kernel] rcu: Use CONFIG_PREEMPTION where appropriate (Waiman Long) [1862812] - [kernel] rcu: Make PREEMPT_RCU be a modifier to TREE_RCU (Waiman Long) [1862812] - [kernel] rcu: Use lockdep rather than comment to enforce lock held (Waiman Long) [1862812] - [kernel] rcu: Avoid data-race in rcu_gp_fqs_check_wake() (Waiman Long) [1862812] - [kernel] rcu/nocb: Fix dump_tree hierarchy print always active (Waiman Long) [1862812] - [kernel] rculist.h: Add list_tail_rcu() (Waiman Long) [1862812] - [kernel] rculist_nulls: Change docbook comment headers (Waiman Long) [1862812] - [kernel] rculist_nulls: Add docbook comments (Waiman Long) [1862812] - [include] rcu: Add a hlist_nulls_unhashed_lockless() function (Waiman Long) [1862812] - [kernel] rcu: Use WRITE_ONCE() for assignments to ->pprev for hlist_nulls (Waiman Long) [1862812] - [kernel] rcu: Remove kfree_call_rcu_nobatch() (Waiman Long) [1862812] - [kernel] rcu: Remove kfree_rcu() special casing and lazy-callback handling (Waiman Long) [1862812] - [kernel] rcu: Add support for debug_objects debugging for kfree_rcu() (Waiman Long) [1862812] - [kernel] rcu: Add multiple in-flight batches of kfree_rcu() work (Waiman Long) [1862812] - [kernel] rcu: Make kfree_rcu() use a non-atomic ->monitor_todo (Waiman Long) [1862812] - [kernel] rcuperf: Add kfree_rcu() performance Tests (Waiman Long) [1862812] - [kernel] rcu: Add basic support for kfree_rcu() batching (Waiman Long) [1862812] - [kernel] rcu: Remove unused stop-machine #include (Waiman Long) [1862812] - [kernel] srcu: Apply *_ONCE() to ->srcu_last_gp_end (Waiman Long) [1862812] - [kernel] rcu: Switch force_qs_rnp() to for_each_leaf_node_cpu_mask() (Waiman Long) [1862812] - [kernel] rcu: Move rcu_{expedited, normal} definitions into rcupdate.h (Waiman Long) [1862812] - [kernel] rcu: Move gp_state_namesand gp_state_getname() to tree_stall.h (Waiman Long) [1862812] - [kernel] rcu: Remove the declaration of call_rcu() in tree.h (Waiman Long) [1862812] - [kernel] rcu: Fix tracepoint tracking RCU CPU kthread utilization (Waiman Long) [1862812] - [kernel] rcu: Fix harmless omission of "CONFIG_" from #if condition (Waiman Long) [1862812] - [kernel] rcu: Mark non-global functions and variables as static (Waiman Long) [1862812] - [kernel] rcu: Enable tick for nohz_full CPUs slow to provide expedited QS (Waiman Long) [1862812] - [kernel] rcu: Replace synchronize_sched_expedited_wait() "_sched" with "_rcu" (Waiman Long) [1862812] - [kernel] rcu: Update tree_exp.h function-header comments (Waiman Long) [1862812] - [kernel] rcu: Rename sync_rcu_preempt_exp_done() to sync_rcu_exp_done() (Waiman Long) [1862812] - [kernel] rcu: Allow only one expedited GP to run concurrently with wakeups (Waiman Long) [1862812] - [kernel] rcu: Fix missed wakeup of exp_wq waiters (Waiman Long) [1862812] - [kernel] rcu: Substitute lookup for bit-twiddling in sync_rcu_exp_select_node_cpus() (Waiman Long) [1862812] - [kernel] rcu: Fix data-race due to atomic_t copy-by-value (Waiman Long) [1862812] - [kernel] rcu: Avoid modifying mask_ofl_ipi in sync_rcu_exp_select_node_cpus() (Waiman Long) [1862812] - [kernel] rcu: Use *_ONCE() to protect lockless ->expmask accesses (Waiman Long) [1862812] - [kernel] rcutorture: Make in-kernel-loop testing more brutal (Waiman Long) [1862812] - [kernel] rcutorture: Separate warnings for each failure type (Waiman Long) [1862812] - [kernel] rcu: Remove unused variable rcu_perf_writer_state (Waiman Long) [1862812] - [tools] rcutorture: Remove CONFIG_HOTPLUG_CPU=n from scenarios (Waiman Long) [1862812] - [kernel] rcu: Remove unused function rcutorture_record_progress() (Waiman Long) [1862812] - [kernel] rcu: Make kernel-mode nohz_full CPUs invoke the RCU core processing (Waiman Long) [1862812] - [kernel] rcu: Confine ->core_needs_qs accesses to the corresponding CPU (Waiman Long) [1862812] - [kernel] rcu: Reset CPU hints when reporting a quiescent state (Waiman Long) [1862812] - [kernel] rcu: Force nohz_full tick on upon irq enter instead of exit (Waiman Long) [1862812] - [kernel] rcu: Force tick on for nohz_full CPUs not reaching quiescent states (Waiman Long) [1862812] - [kernel] rcutorture: Emulate dyntick aspect of userspace nohz_full sojourn (Waiman Long) [1862812] - [kernel] rcu: Make CPU-hotplug removal operations enable tick (Waiman Long) [1862812] - [kernel] stop_machine: Provide RCU quiescent state in multi_cpu_stop() (Waiman Long) [1862812] - [kernel] rcutorture: Force on tick for readers and callback flooders (Waiman Long) [1862812] - [kernel] rcu: Force on tick when invoking lots of callbacks (Waiman Long) [1862812] - [kernel] time: Export tick start/stop functions for rcutorture (Waiman Long) [1862812] - [kernel] nohz: Add TICK_DEP_BIT_RCU (Waiman Long) [1862812] - [kernel] rcu: Suppress levelspread uninitialized messages (Waiman Long) [1862812] - [kernel] rcu: Fix uninitialized variable in nocb_gp_wait() (Waiman Long) [1862812] - [trace] rcu: Update descriptions for rcu_future_grace_period tracepoint (Waiman Long) [1862812] - [trace] rcu: Update descriptions for rcu_nocb_wake tracepoint (Waiman Long) [1862812] - [trace] rcu: Remove obsolete descriptions for rcu_barrier tracepoint (Waiman Long) [1862812] - [kernel] rcu: Ensure that ->rcu_urgent_qs is set before resched IPI (Waiman Long) [1862812] - [kernel] rcu: Several rcu_segcblist functions can be static (Waiman Long) [1862812] - [kernel] rcu: Remove unused function hlist_bl_del_init_rcu() (Waiman Long) [1862812] - [kernel] rcu: Allow rcu_do_batch() to dynamically adjust batch sizes (Waiman Long) [1862812] - [kernel] srcu: Avoid srcutorture security-based pointer obfuscation (Waiman Long) [1862812] - [kernel] rcu/nocb: Don't wake no-CBs GP kthread if timer posted under overload (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce __call_rcu_nocb_wake() leaf rcu_node ->lock contention (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce nocb_cb_wait() leaf rcu_node ->lock contention (Waiman Long) [1862812] - [kernel] rcu/nocb: Advance CBs after merge in rcutree_migrate_callbacks() (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid synchronous wakeup in __call_rcu_nocb_wake() (Waiman Long) [1862812] - [kernel] rcu/nocb: Print no-CBs diagnostics when rcutorture writer unduly delayed (Waiman Long) [1862812] - [kernel] rcu/nocb: EXP Check use and usefulness of ->nocb_lock_contended (Waiman Long) [1862812] - [kernel] rcu/nocb: Add bypass callback queueing (Waiman Long) [1862812] - [kernel] rcu/nocb: Atomic ->len field in rcu_segcblist structure (Waiman Long) [1862812] - [kernel] rcu/nocb: Unconditionally advance and wake for excessive CBs (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce ->nocb_lock contention with separate ->nocb_gp_lock (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce contention at no-CBs invocation-done time (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce contention at no-CBs registry-time CB advancement (Waiman Long) [1862812] - [kernel] rcu/nocb: Round down for number of no-CBs grace-period kthreads (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid ->nocb_lock capture by corresponding CPU (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid needless wakeups of no-CBs grace-period kthread (Waiman Long) [1862812] - [kernel] rcu/nocb: Make __call_rcu_nocb_wake() safe for many callbacks (Waiman Long) [1862812] - [kernel] rcu/nocb: Never downgrade ->nocb_defer_wakeup in wake_nocb_gp_defer() (Waiman Long) [1862812] - [kernel] rcu/nocb: Enable re-awakening under high callback load (Waiman Long) [1862812] - [kernel] rcu/nohz: Turn off tick for offloaded CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Suppress uninitialized false-positive in nocb_gp_wait() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_pending() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_core() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_do_batch() (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_gp_head and nocb_gp_tail fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_cb_tail and nocb_cb_head fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_q_count and nocb_q_count_lazy fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_head and nocb_tail fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Use rcu_segcblist for no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Leave ->cblist enabled for no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Allow lockless use of rcu_segcblist_empty() (Waiman Long) [1862812] - [kernel] rcu/nocb: Allow lockless use of rcu_segcblist_restempty() (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove deferred wakeup checks for extended quiescent states (Waiman Long) [1862812] - [kernel] rcu/nocb: Check for deferred nocb wakeups before nohz_full early exit (Waiman Long) [1862812] - [kernel] rcu/nocb: Make rcutree_migrate_callbacks() start at leaf rcu_node structure (Waiman Long) [1862812] - [kernel] rcu/nocb: Add checks for offloaded callback processing (Waiman Long) [1862812] - [kernel] rcu/nocb: Use separate flag to indicate offloaded ->cblist (Waiman Long) [1862812] - [kernel] rcu/nocb: Use separate flag to indicate disabled ->cblist (Waiman Long) [1862812] - [kernel] rcu/nocb: Print gp/cb kthread hierarchy if dump_tree (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_nocb_leader_stride kernel boot parameter (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename and document no-CB CB kthread sleep trace event (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_organize_nocb_kthreads() local variable (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename wake_nocb_leader_defer() to wake_nocb_gp_defer() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename __wake_nocb_leader() to __wake_nocb_gp() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename wake_nocb_leader() to wake_nocb_gp() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename nocb_follower_wait() to nocb_cb_wait() (Waiman Long) [1862812] - [kernel] rcu/nocb: Provide separate no-CBs grace-period kthreads (Waiman Long) [1862812] - [kernel] rcu/nocb: Update comments to prepare for forward-progress work (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_data fields to prepare for forward-progress work (Waiman Long) [1862812] - [kernel] rcutorture: Aggressive forward-progress tests shouldn't block shutdown (Waiman Long) [1862812] - [kernel] rcuperf: Make rcuperf kernel test more robust for !expedited mode (Waiman Long) [1862812] - [kernel] rcutorture: Emulate userspace sojourn during call_rcu() floods (Waiman Long) [1862812] - [tools] rcutorture: Test TREE03 with the threadirqs kernel boot parameter (Waiman Long) [1862812] - [tools] torture: Expand last_ts variable in kvm-test-1-run.sh (Waiman Long) [1862812] - [kernel] rcuperf: Fix perf_type module-parameter description (Waiman Long) [1862812] - [documentation] doc: Add rcutree.kthread_prio pointer to stallwarn.txt (Waiman Long) [1862812] - [kernel] rcu: Change return type of rcu_spawn_one_boost_kthread() (Waiman Long) [1862812] - [kernel] rcu: Add destroy_work_on_stack() to match INIT_WORK_ONSTACK() (Waiman Long) [1862812] - [kernel] rcu: Add kernel parameter to dump trace after RCU CPU stall warning (Waiman Long) [1862812] - [kernel] rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock() (Waiman Long) [1862812] - [kernel] rcu: Simplify rcu_note_context_switch exit from critical section (Waiman Long) [1862812] - [kernel] rcu: Make rcu_read_unlock_special() checks match raise_softirq_irqoff() (Waiman Long) [1862812] - [kernel] rcu: Simplify rcu_read_unlock_special() deferred wakeups (Waiman Long) [1862812] - [tools] rcu: Don't return a value from rcu_assign_pointer() (Waiman Long) [1862812] - [kernel] rcu: Force inlining of rcu_read_lock() (Waiman Long) [1862812] - [kernel] rcu: Fix irritating whitespace error in rcu_assign_pointer() (Waiman Long) [1862812] - [kernel] rcu: validate arguments for rcu tracepoints (Waiman Long) [1862812] - [trace] tracing: introduce TRACE_EVENT_NOP() (Waiman Long) [1862812] - [kernel] kprobes: Prohibit probing on RCU debug routine (Waiman Long) [1862812] - [init] time: Make VIRT_CPU_ACCOUNTING_GEN depend on GENERIC_CLOCKEVENTS (Waiman Long) [1862812] - [kernel] time: Move CONTEXT_TRACKING to kernel/time/Kconfig (Waiman Long) [1862812]- [fs] xfs: don't commit sunit/swidth updates to disk if that would cause repair failures (Bill O'Donnell) [1849407] - [fs] xfs: split the sunit parameter update into two parts (Bill O'Donnell) [1849407] - [fs] xfs: refactor agfl length computation function (Bill O'Donnell) [1849407] - [net] netfilter: conntrack: proc: rename stat column (Florian Westphal) [1875681] - [net] netfilter: conntrack: add clash resolution stat counter (Florian Westphal) [1875681] - [net] netfilter: conntrack: remove ignore stats (Florian Westphal) [1875681] - [net] netfilter: conntrack: do not increment two error counters at same time (Florian Westphal) [1875681] - [net] netfilter: conntrack: do not auto-delete clash entries on reply (Florian Westphal) [1875681] - [powerpc] powerpc/pseries/iommu: Allow bigger 64bit window by removing default DMA window (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Move window-removing part of remove_ddw into remove_dma_window (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Update call to ibm, query-pe-dma-windows (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Create defines for operations in ibm, ddw-applicable (Steve Best) [1725198] - [x86] x86/cpu: Add Sapphire Rapids CPU model number (Puneet Sethi) [1872367] - [x86] x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel CPU family (Steve Best) [1838902]- [powerpc] powerpc/xmon: Improve dumping prefixed instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a ppc_inst_as_str() helper (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add ppc_inst_as_u64() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add ppc_inst_next() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for Prefixed Add Immediate (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Let compute tests specify a required cpu feature (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Set NIP in instruction emulation tests (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for prefixed floating-point load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for prefixed integer load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add POWER10 architected mode (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Add MMA feature (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Enable Prefixed Instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Advertise support for ISA v3.1 if selected (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add support for ISA v3.1 (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add new HWCAP bits (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for prefixed fixed-point arithmetic (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for prefixed load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Support prefixed instructions in alignment handler (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kprobes: Don't allow breakpoints on suffixes (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Don't allow breakpoints on suffixes (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Test prefixed instructions in feature fixups (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Test prefixed code patching (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add prefixed instructions to instruction data type (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/optprobes: Add register argument to patch_imm64_load_insns() (Desnes Augusto Nunes do Rosario) [1854524] - [kvm] powerpc: Define new SRR1 bits for a ISA v3.1 (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/83xx: handle machine check caused by watchdog timer (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Enable Prefixed Instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Make test_translate_branch() independent of instruction length (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move insertion of breakpoint for xol'ing (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Use a function for reading instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Introduce a function for reporting instruction length (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Define and use get_user_instr() et. al (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kprobes: Use patch_instruction() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a probe_kernel_read_inst() function (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a probe_user_read_inst() function (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for reading instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a datatype for instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: Refactor __patch_instruction() to use __put_user_asm() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: use probe_user_read() and probe_user_write() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Constify the number of insns printed by show instructions functions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Fix interleaved output in show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Fix sparse address space warnings (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Don't print kernel instructions in show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: fix book3s/32 boot failure due to code patching (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Introduce functions for instruction equality (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for byte swapping instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for getting the instruction op code (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use an accessor for instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for extswsli instruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add support for maddhd, maddhdu, maddld instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a macro for creating instructions from u32s (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/fsl: Add infrastructure to fixup branch predictor flush (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/smp: Use code patching to restore reset vector (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for addcinstruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for addinstruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for compute type instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Fix DS operand in ld encoding to appropriate value (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/fsl: Add barrier_nospec implementation for NXP PowerPC Book3E (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/watchpoint: Don't ignore extraneous exceptions blindly (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/watchpoint: Disable watchpoint hit by larx/stcx instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kgdb: add kgdb_arch_set/remove_breakpoint() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/hw_breakpoint: move instruction stepping out of hw_breakpoint_handler() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: add modify_instruction() and modify_instruction_site() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Change calling convention for create_branch() et. al (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: simplify patch_instruction_site() and patch_branch_site() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/code-patching: Add a helper to get the address of a patch_site (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/ftrace: Handle large kernel configs (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/32: use patch_site_addr() in machine_init() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: Use patch_site to patch copy_32 functions once cache is enabled (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Use bitwise calculations in_breakpoint_table() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move breakpoints to text section (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move breakpoint instructions to own array (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Remove store_inst() for patch_instruction() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/powernv/idle: Exclude mfspr on HID1, 4, 5 on P9 and above (Steve Best) [1854539] - [powerpc] powerpc/powernv/idle: Rename pnv_first_spr_loss_level variable (Steve Best) [1854539] - [powerpc] powerpc/powernv/idle: Replace CPU feature check with PVR check (Steve Best) [1854539] - [powerpc] powerpc/64s: Don't set FSCR bits in INIT_THREAD (Steve Best) [1854523] - [powerpc] powerpc/64s: Save FSCR to init_task.thread.fscr after feature init (Steve Best) [1854523] - [powerpc] powerpc/64s: Don't let DT CPU features set FSCR_DSCR (Steve Best) [1854523] - [powerpc] powerpc/64s: Don't init FSCR_DSCR in __init_FSCR() (Steve Best) [1854523]- [kernel] sched/cfs: change initial value of runnable_avg (Phil Auld) [1875995] - [kernel] sched/fair: Fix runnable_avg for throttled cfs (Phil Auld) [1875995] - [kernel] sched/fair: Fix kernel build warning in test_idle_cores() for !SMT NUMA (Phil Auld) [1875995] - [kernel] sched/numa: Acquire RCU lock for checking idle cores during NUMA balancing (Phil Auld) [1875995] - [kernel] sched/numa: Stop an exhastive search if a reasonable swap candidate or idle CPU is found (Phil Auld) [1875995] - [kernel] sched/numa: Bias swapping tasks based on their preferred node (Phil Auld) [1875995] - [kernel] sched/numa: Find an alternative idle CPU if the CPU is part of an active NUMA balance (Phil Auld) [1875995] - [kernel] sched/numa: Prefer using an idle CPU as a migration target instead of comparing tasks (Phil Auld) [1875995] - [kernel] sched/fair: Take into account runnable_avg to classify group (Phil Auld) [1875995] - [kernel] sched/pelt: Add a new runnable average signal (Phil Auld) [1875995] - [kernel] sched/pelt: Remove unused runnable load average (Phil Auld) [1875995] - [kernel] sched: Disable allowing small imbalance to preserve RHEL performance (Phil Auld) [1875995] - [kernel] sched/numa: Use similar logic to the load balancer for moving between domains with spare capacity (Phil Auld) [1875995] - [kernel] sched/numa: Replace runnable_load_avg by load_avg (Phil Auld) [1875995] - [kernel] sched/numa: Distinguish between the different task_numa_migrate() failure cases (Phil Auld) [1875995] - [kernel] sched/numa: Trace when no candidate CPU was found on the preferred node (Phil Auld) [1875995] - [kernel] sched/fair: Allow a small load imbalance between low utilisation SD_NUMA domains (Phil Auld) [1875995] - [mm] powerpc/smp: Implement cpu_to_coregroup_id (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Create coregroup domain (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Allocate cpumask only after searching thread group (Diego Domingos) [1854541] - [powerpc] powerpc/numa: Detect support for coregroup (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Optimize start_secondary (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Dont assume l2-cache to be superset of sibling (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Move topology fixups into a new function (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Move powerpc_topology above (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Merge Power9 topology with Power topology (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Fix a warning under !NEED_MULTIPLE_NODES (Diego Domingos) [1854541] - [mm] powerpc/numa: Restrict possible nodes based on platform (Diego Domingos) [1854541] - [mm] powerpc/numa: Limit possible nodes to within num_possible_nodes (Diego Domingos) [1854541] - [powerpc] powerpc: Fix misleading small cores print (Diego Domingos) [1854541] - [netdrv] ibmvnic: add missing parenthesis in do_reset() (Steve Best) [1879547] - [wireless] rtw88: don't hold all IRQs disabled for PS operations (Jarod Wilson) [1874730] - [netdrv] ibmvnic fix NULL tx_pools and rx_tools issue at do_reset (Steve Best) [1872676]- [kernel] sched: Fix use of count for nr_running tracepoint (Phil Auld) [1861444] - [kernel] sched: Add a tracepoint to track rq->nr_running (Phil Auld) [1861444] - [kernel] sched/debug: Add new tracepoints to track util_est (Phil Auld) [1861444] - [kernel] sched/debug: Export the newly added tracepoints (Phil Auld) [1861444] - [kernel] sched/debug: Add sched_overutilized tracepoint (Phil Auld) [1861444] - [kernel] sched/debug: Add new tracepoint to track PELT at se level (Phil Auld) [1861444] - [kernel] sched/debug: Add a new sched_trace_*() helper functions (Phil Auld) [1861444] - [kernel] sched/autogroup: Make autogroup_path() always available (Phil Auld) [1861444]- [mm] mm/kmemleak.c: fix check for softirq context (Waiman Long) [1878006] - [include] mm/hotplug: invalid PFNs from pfn_to_online_page() (Waiman Long) [1878006] - [mm] mm, kmemleak: little optimization while scanning (Waiman Long) [1878006] - [mm] kmemleak: add module param to print warnings to dmesg (Waiman Long) [1878006] - [mm] kmemleak: always register debugfs file (Waiman Long) [1878006] - [scsi] scsi: megaraid_sas: Don't call disable_irq from process IRQ poll (Tomas Henzl) [1837200] - [scsi] scsi: megaraid_sas: Remove undefined ENABLE_IRQ_POLL macro (Tomas Henzl) [1837200] - [platform] platform/x86: dcdbas: Check SMBIOS for protected buffer address (David Arcari) [1858680] - [platform] firmware: dcdbas: Move dcdbas to drivers/platform/x86 (David Arcari) [1858680] - [fs] cifs: fix DFS mount with cifsacl/modefromsid (Leif Sahlberg) [1871246] - [fs] ext4: fix potential negative array index in do_split() (Pavel Reichl) [1846165] {CVE-2020-14314} - [include] block: allow for_each_bvec to support zero len bvec (Ming Lei) [1872032] - [nvme] nvme-pci: disable the write zeros command for Intel 600P/P3100 (David Milburn) [1875391]- [netdrv] ice: Disable VLAN pruning in promiscuous mode (Jonathan Toppins) [1787477] - [mm] mm: slub: introduce 'slub_merge' kernel parameter (Rafael Aquini) [1871214] - [kernel] time/tick-broadcast: Fix tick_broadcast_offline() lockdep complaint (Alexey Klimov) [1877380]- [init] init/Kconfig: disable io_uring (Jeff Moyer) [1879754] - [block] blk-mq: always allow reserved allocation in hctx_may_queue (Ming Lei) [1740874] - [nvme] nvme-rdma: Avoid double freeing of async event data (Gopal Tiwari) [1878140] - [kernel] printk: queue wake_up_klogd irq_work only if per-CPU areas are ready (Igor Mammedov) [1867022]- [firmware] efi: don't reserve MOK config table memory region (Kairui Song) [1878584] - [fs] xfs: fix boundary test in xfs_attr_shortform_verify (Eric Sandeen) [1875316] {CVE-2020-14385} - [powerpc] powerpc/pseries: Do not initiate shutdown when system is running on UPS (Diego Domingos) [1870477]- [fs] nfsd: avoid a NULL dereference in __cld_pipe_upcall() (Scott Mayhew) [1847225] - [net] packet: fix overflow in tpacket_rcv (Hangbin Liu) [1876224] {CVE-2020-14386} - [net] packet: make tp_drops atomic (Hangbin Liu) [1876224] {CVE-2020-14386} - [net] espintcp: restore IP CB before handing the packet to xfrm (Sabrina Dubroca) [1868201] - [fs] Revert "NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE" (Benjamin Coddington) [1865978] - [fs] Revert "NFSv4.x recover from pre-mature loss of openstateid" (Benjamin Coddington) [1865978] - [infiniband] RDMA/mlx4: Read pkey table length instead of hardcoded value (Alaa Hleihel) [1853564] - [net] net/smc: set rx_off for SMCR explicitly (Philipp Rudo) [1875833] - [drm] drm/i915: Auto detect DPCD backlight support by default (Lyude Paul) [1872381] - [drm] drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() (Lyude Paul) [1872381] - [drm] drm/i915: Assume 100 brightness when not in DPCD control mode (Lyude Paul) [1872381] - [drm] drm/i915: Fix eDP DPCD aux max backlight calculations (Lyude Paul) [1872381] - [kernel] tracing: Define MCOUNT_INSN_SIZE when not defined without direct calls (Jiri Olsa) [1857599] - [kernel] ftrace: Fix function_graph tracer interaction with BPF trampoline (Jiri Olsa) [1857599] - [x86] x86/function_graph: Simplify with function_graph_enter() (Jiri Olsa) [1857599] - [kernel] function_graph: Create function_graph_enter() to consolidate architecture code (Jiri Olsa) [1857599]- [crypto] pefile: Support multiple signatures in verify_pefile_signature (Lenny Szubowicz) [1862072] - [security] integrity: Load certs from the EFI MOK config table (Lenny Szubowicz) [1868306] - [security] integrity: Move import of MokListRT certs to a separate routine (Lenny Szubowicz) [1868306] - [firmware] efi: Support for MOK variable config table (Lenny Szubowicz) [1868306] - [kernel] Move to dual-signing to split signing keys up better (Frantisek Hrbata) [1837434] {CVE-2020-10713} - [powerpc] pseries/hotplug-cpu: wait indefinitely for vCPU death (Michael Roth) [1856588] - [powerpc] kvm: ppc: book3s hv: Rework secure mem slot dropping (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Move kvmppc_svm_page_out up (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Migrate hot plugged memory (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: In H_SVM_INIT_DONE, migrate remaining normal-GFNs to secure-GFNs (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Track the state GFNs associated with secure VMs (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Disable page merging in H_SVM_INIT_START (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Fix function definition in book3s_hv_uvmem.c (Michael Roth) [1851259] - [kernel] mmap locking api: initial implementation as rwsem wrappers (Michael Roth) [1851259] - [mm] handle multiple owners of device private pages in migrate_vma (Michael Roth) [1851259] - [mm] migrate.c: clean up useless code in migrate_vma_collect_pmd() (Michael Roth) [1851259] - [mm] remove the unused MIGRATE_PFN_DEVICE flag (Michael Roth) [1851259] - [powerpc] rhel: powerpc: kvm: Increase HDEC threshold to enter guest (David Gibson) [1733467] - [netdrv] r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2 (Michal Schmidt) [1851966] - [fs] ceph: fix inode number handling on arches with 32-bit ino_t (Jeff Layton) [1869679] - [fs] ceph: don't allow setlease on cephfs (Jeff Layton) [1872382] - [block] blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART (Ming Lei) [1859628]- [s390] scsi: zfcp: Move allocation of the shost object to after xconf- and xport-data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence early sysfs interfaces for accesses of shost objects (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence adapter status propagation for common statuses (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move p-t-p port allocation to after xport data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence fc_host updates during link-down handling (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move fc_host updates during xport data handling into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move shost updates during xconfig data handling into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move shost modification after QDIO (re-)open into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: fix fc_host attributes that should be unknown on local link down (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: wire previously driver-specific sysfs attributes also to fc_host (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: expose fabric name as common fc_host sysfs attribute (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: add diagnostics buffer for exchange config data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: diagnostics buffer caching and use for exchange port data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: signal incomplete or error for sync exchange config/port data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fix use-after-free in request timeout handlers (Claudio Imbrenda) [1872796] - [tools] selftests/powerpc: Update the stack expansion test (Gustavo Duarte) [1869755] - [mm] powerpc: Allow 4224 bytes of stack expansion for the signal frame (Gustavo Duarte) [1869755] - [tools] selftests/powerpc: Add test of stack expansion logic (Gustavo Duarte) [1869755] - [mm] mm: check that mm is still valid in madvise() (Jeff Moyer) [1874560] - [block] block: virtio_blk: fix handling single range discard request (Ming Lei) [1842035] - [block] block: respect queue limit of max discard segment (Ming Lei) [1842035] - [fs] io_uring: Fix NULL pointer dereference in loop_rw_iter() (Jeff Moyer) [1854649] - [fs] io_uring: return locked and pinned page accounting (Jeff Moyer) [1854649] - [fs] io_uring: always allow drain/link/hardlink/async sqe flags (Jeff Moyer) [1854649] - [fs] io_uring: ensure double poll additions work with both request types (Jeff Moyer) [1854649] - [fs] io_uring: fix recvmsg memory leak with buffer selection (Jeff Moyer) [1854649] - [fs] io_uring: fix missing msg_name assignment (Jeff Moyer) [1854649] - [fs] io_uring: fix memleak in io_sqe_files_register() (Jeff Moyer) [1854649] - [fs] io_uring: account user memory freed when exit has been queued (Jeff Moyer) [1854649] - [fs] io_uring: fix memleak in __io_sqe_files_update() (Jeff Moyer) [1854649] - [fs] io_uring: fix regression with always ignoring signals in io_cqring_wait() (Jeff Moyer) [1854649] - [fs] io_uring: use signal based task_work running (Jeff Moyer) [1854649] - [kernel] task_work: teach task_work_add() to do signal_wake_up() (Jeff Moyer) [1854649] - [fs] io_uring: fix missing ->mm on exit (Jeff Moyer) [1854649] - [fs] io_uring: fix potential use after free on fallback request free (Jeff Moyer) [1854649] - [fs] io_uring: fix req->work corruption (Jeff Moyer) [1854649] - [fs] io_uring: fix NULL-mm for linked reqs (Jeff Moyer) [1854649] - [fs] io_uring: fix current->mm NULL dereference on exit (Jeff Moyer) [1854649] - [fs] io_uring: fix hanging iopoll in case of -EAGAIN (Jeff Moyer) [1854649] - [fs] io_uring: fix io_sq_thread no schedule when busy (Jeff Moyer) [1854649] - [fs] io_uring: fix possible race condition against REQ_F_NEED_CLEANUP (Jeff Moyer) [1854649] - [fs] io_uring: reap poll completions while waiting for refs to drop on exit (Jeff Moyer) [1854649] - [fs] io_uring: acquire 'mm' for task_work for SQPOLL (Jeff Moyer) [1854649] - [fs] io_uring: add memory barrier to synchronize io_kiocb's result and iopoll_completed (Jeff Moyer) [1854649] - [fs] io_uring: don't fail links for EAGAIN error in IOPOLL mode (Jeff Moyer) [1854649] - [fs] io_uring: fix io_kiocb.flags modification race in IOPOLL mode (Jeff Moyer) [1854649] - [fs] io_uring: allow O_NONBLOCK async retry (Jeff Moyer) [1854649] - [fs] io_uring: use kvfree() in io_sqe_buffer_register() (Jeff Moyer) [1854649] - [fs] io_uring: validate the full range of provided buffers for access (Jeff Moyer) [1854649] - [fs] io_uring: re-set iov base/len for buffer select retry (Jeff Moyer) [1854649] - [fs] io_uring: fix {SQ, IO}POLL with unsupported opcodes (Jeff Moyer) [1854649] - [fs] io_uring: disallow close of ring itself (Jeff Moyer) [1854649] - [fs] io_uring: fix overflowed reqs cancellation (Jeff Moyer) [1854649] - [fs] io_uring: fix flush req->refs underflow (Jeff Moyer) [1854649] - [fs] io_uring: async task poll trigger cleanup (Jeff Moyer) [1854649] - [fs] io_uring: allow POLL_ADD with double poll_wait() users (Jeff Moyer) [1854649] - [fs] io_uring: remove 'fd is io_uring' from close path (Jeff Moyer) [1854649] - [nvme] nvme: allow retry for requests with REQ_FAILFAST_TRANSPORT set (Mike Snitzer) [1843515] - [nvme] nvme: decouple basic ANA log page re-read support from native multipathing (Mike Snitzer) [1843515] - [nvme] nvme: update failover handling to work with REQ_FAILFAST_TRANSPORT (Mike Snitzer) [1843515] - [nvme] nvme: Return BLK_STS_TARGET if the DNR bit is set (Mike Snitzer) [1843515] - [nvme] nvme: redirect commands on dying queue (Mike Snitzer) [1843515] - [nvme] nvme: just check the status code type in nvme_is_path_error (Mike Snitzer) [1843515] - [nvme] nvme: refactor command completion (Mike Snitzer) [1843515] - [nvme] nvme-multipath: do not reset on unknown status (Mike Snitzer) [1843515] - [nvme] Revert "nvme: allow ANA support to be independent of native multipathing" (Mike Snitzer) [1843515] - [nvme] Revert "nvme-multipath: do not reset on unknown status" (Mike Snitzer) [1843515] - [mm] mm, THP, swap: fix allocating cluster for swapfile by mistake (Gao Xiang) [1855474] - [net] sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error flow (Marcelo Leitner) [1866391] - [net] netfilter: conntrack: allow sctp hearbeat after connection re-use (Florian Westphal) [1865798] - [video] vgacon: Fix for missing check in scrollback handling (Lyude Paul) [1859472] {CVE-2020-14331} - [scsi] Revert "scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe" (Nilesh Javali) [1866744] - [scsi] Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix null pointer access during disconnect from subsystem (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Check if FW supports MQ before enabling (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix WARN_ON in qla_nvme_register_hba (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Allow ql2xextended_error_logging special value 1 to be set anytime (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Reduce noisy debug message (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix login timeout (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Flush I/O on zone disable (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Flush all sessions on zone disable (Nilesh Javali) [1866744] - [tools] bpf: selftests: global_funcs: Check err_str before strstr (Yauheni Kaliuta) [1873163] - [netdrv] net/mlx5e: E-Switch, Specify flow_source for rule with no in_port (Alaa Hleihel) [1869602] - [netdrv] net/mlx5e: E-Switch, Add misc bit when misc fields changed for mirroring (Alaa Hleihel) [1869602] - [tools] selftests/bpf: test for map update access from within EXT programs (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [tools] selftests/bpf: test for checking return code for the extended prog (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [tools] selftests/bpf: Add test for freplace program with write access (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [net] bpf: verifier: use target program's type for access verifications (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [scsi] scsi: lpfc: Fix NVMe rport deregister and registration during ADISC (Dick Kennedy) [1871223] - [scsi] scsi: lpfc: Fix LUN loss after cable pull (Dick Kennedy) [1871223] - [infiniband] RDMA/bnxt_re: Do not add user qps to flushlist (Selvin Xavier) [1858674] - [fs] NFSv4.0 allow nconnect for v4.0 (Benjamin Coddington) [1842746] - [mm] mm/vunmap: add cond_resched() in vunmap_pmd_range (Rafael Aquini) [1871710] - [s390] s390/bpf: Maintain 8-byte stack alignment (Jiri Olsa) [1871040]- [netdrv] vrf: Fix IPv6 with qdisc and xfrm (Sabrina Dubroca) [1868565] - [netdrv] vrf: make sure skb->data contains ip header to make routing (Sabrina Dubroca) [1868565] - [netdrv] vrf: Check skb for XFRM_TRANSFORMED flag (Sabrina Dubroca) [1868565] - [net] Do not clear the sock TX queue in sk_set_socket() (Andrea Claudi) [1850421] - [net] Use RCU_INIT_POINTER() to set sk_wq (Andrea Claudi) [1850421] - [net] netfilter: ip6tables: Add a .pre_exit hook in all ip6table_foo.c. (Florian Westphal) [1862384] - [net] netfilter: iptables: Add a .pre_exit hook in all iptable_foo.c. (Florian Westphal) [1862384] - [net] netfilter: ipset: Fix an error code in ip_set_sockfn_get() (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Don't account for expired elements on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Drop spurious condition for overlap detection on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Detect partial overlaps on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start() (Florian Westphal) [1862384] - [net] netfilter: nf_tables: fix nat hook table deletion (Florian Westphal) [1862384] - [net] netfilter: ipset: call ip_set_free() instead of kfree() (Florian Westphal) [1862384] - [net] netfilter: ip6tables: Split ip6t_unregister_table() into pre_exit and exit helpers. (Florian Westphal) [1862384] - [net] netfilter: iptables: Split ipt_unregister_table() into pre_exit and exit helpers. (Florian Westphal) [1862384] - [net] netfilter: nft_set_pipapo: Disable preemption before getting per-CPU pointer (Florian Westphal) [1862384] - [net] netfilter: nft_nat: return EOPNOTSUPP if type or flags are not supported (Florian Westphal) [1862384] - [net] netfilter: conntrack: comparison of unsigned in cthelper confirmation (Florian Westphal) [1862384] - [net] netfilter: conntrack: refetch conntrack after nf_conntrack_update() (Florian Westphal) [1862384] - [net] netfilter: conntrack: Pass value of ctinfo to __nf_conntrack_update (Florian Westphal) [1862384] - [net] netfilter: conntrack: make conntrack userspace helpers work again (Florian Westphal) [1862384] - [net] netfilter: nfnetlink_cthelper: unbreak userspace helper support (Florian Westphal) [1862384] - [net] netfilter: nf_conntrack_pptp: fix compilation warning with W=1 build (Florian Westphal) [1862384] - [net] netfilter: nf_conntrack_pptp: prevent buffer overflows in debug code (Florian Westphal) [1862384] - [net] netfilter: nft_set_bitmap: initialize set element extension in lookups (Florian Westphal) [1862384] - [net] netfilter: nft_fwd_netdev: validate family and chain type (Florian Westphal) [1862384] - [net] netfilter: nft_payload: add missing attribute validation for payload csum flags (Florian Westphal) [1862384] - [net] netfilter: cthelper: add missing attribute validation for cthelper (Florian Westphal) [1862384] - [net] netfilter: ipset: Fix forceadd evaluation path (Florian Westphal) [1862384] - [net] netfilter: bridge: make sure to pull arp header in br_nf_forward_arp() (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: bogus lookup/get on consecutive elements in named sets (Florian Westphal) [1862384] - [net] netfilter: ctnetlink: netns exit must wait for callbacks (Florian Westphal) [1862384] - [arm64] kvm: arm64: Don't inherit exec permission across page-table levels (Andrew Jones) [1869297] - [arm64] kvm: arm64: Flush the instruction cache if not unmapping the VM on reboot (Andrew Jones) [1869297] - [s390] s390, dcssblk: kaddr and pfn can be NULL to ->direct_access() (Claudio Imbrenda) [1868927] - [fs] chardev: Avoid potential use-after-free in 'chrdev_open()' (Vladis Dronov) [1866324] {CVE-2020-0305} - [net] net: accept an empty mask in /sys/class/net/*/queues/rx-*/rps_cpus (Nitesh Narayan Lal) [1868433] - [x86] Revert "x86/intel: Disable HPET on Intel Ice Lake platforms" (David Arcari) [1868405] - [kernel] sched: Fix race against ptrace_freeze_trace() (Oleg Nesterov) [1862560] - [kernel] sched: Fix loadavg accounting race (Oleg Nesterov) [1862560] - [kernel] kernel/sched/: remove caller signal_pending branch predictions (Oleg Nesterov) [1862560] - [kernel] locking/spinlock, sched/core: Clarify requirements for smp_mb__after_spinlock() (Oleg Nesterov) [1862560] - [nvme] nvme: multipath: round-robin: eliminate "fallback" variable (Gopal Tiwari) [1868443] - [nvme] nvme: multipath: round-robin: fix single non-optimized path case (Gopal Tiwari) [1868443] - [nvme] nvme-multipath: do not fall back to __nvme_find_path() for non-optimized paths (Gopal Tiwari) [1868443] - [nvme] nvme-multipath: fix logic for non-optimized paths (Gopal Tiwari) [1868443] - [tools] selftests/bpf: Fix segmentation fault in test_progs (Yauheni Kaliuta) [1868494] - [pci] hv: Fix a timing issue which causes kdump to fail occasionally (Mohammed Gamal) [1861960] - [hv] hv: vmbus: Only notify Hyper-V for die events that are oops (Vitaly Kuznetsov) [1868131] - [x86] kvm: nsvm: Correctly set the shadow NPT root level in its MMU role (Vitaly Kuznetsov) [1845507] - [x86] kvm: x86: drop superfluous mmu_check_root() from fast_pgd_switch() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: use nested_svm_load_cr3() on guest->host switch (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: implement nested_svm_load_cr3() and use it for host->guest switch (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: move kvm_set_cr3() after nested_svm_uninit_mmu_context() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: introduce nested_svm_load_cr3()/nested_npt_enabled() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: prepare to handle errors from enter_svm_guest_mode() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: reset nested_run_pending upon nested_svm_vmrun_msrpm() failure (Vitaly Kuznetsov) [1845507] - [x86] kvm: mmu: stop dereferencing vcpu->arch.mmu to get the context for MMU init (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: split kvm_init_shadow_npt_mmu() from kvm_init_shadow_mmu() (Vitaly Kuznetsov) [1845507] - [security] selinux: compute genfs symlink context in case of CephFS (Ondrej Mosnacek) [1865800] - [fs] ceph: set sec_context xattr on symlink creation (Ondrej Mosnacek) [1861509] - [tools] selftests: bpf: define SO_RCVTIMEO and SO_SNDTIMEO properly for ppc64le (Jiri Benc) [1860386] - [tools] bpf: Sync RHEL version of asm-generic/socket.h to tools/ (Jiri Benc) [1860386] - [tools] selftests: bpf: skip tests not working on RHEL (Jiri Benc) [1866908] - [tools] Revert "selftests: bpf: disable test_lwt_seg6local" (Jiri Benc) [1866908] - [tools] Revert "bpf: selftests: remove test_bpftool_build.sh from TEST_PROGS" (Jiri Benc) [1866908] - [tools] selftests: add option to skip specific tests in RHEL (Jiri Benc) [1866908] - [tools] selftests: bpf: switch off timeout (Jiri Benc) [1866908] - [tools] selftest/firmware: Add selftest timeout in settings (Jiri Benc) [1866908] - [tools] selftests/harness: Limit step counter reporting (Jiri Benc) [1866908] - [tools] selftests/harness: Clean up kern-doc for fixtures (Jiri Benc) [1866908] - [tools] selftests: fix condition in run_tests (Jiri Benc) [1866908] - [tools] selftests: do not use .ONESHELL (Jiri Benc) [1866908] - [tools] selftests/harness: Report skip reason (Jiri Benc) [1866908] - [tools] selftests/harness: Display signed values correctly (Jiri Benc) [1866908] - [tools] selftests/harness: Refactor XFAIL into SKIP (Jiri Benc) [1866908] - [tools] selftests/harness: Switch to TAP output (Jiri Benc) [1866908] - [tools] selftests: Add header documentation and helpers (Jiri Benc) [1866908] - [tools] kselftest: fix TAP output for skipped tests (Jiri Benc) [1866908] - [tools] kselftest: ksft_test_num return type should be unsigned (Jiri Benc) [1866908] - [tools] selftests: introduce gen_tar Makefile target (Jiri Benc) [1866908] - [tools] kselftest: add fixture variants (Jiri Benc) [1866908] - [tools] kselftest: run tests by fixture (Jiri Benc) [1866908] - [tools] kselftest: create fixture objects (Jiri Benc) [1866908] - [tools] kselftest: factor out list manipulation to a helper (Jiri Benc) [1866908] - [tools] selftests: add build/cross-build dependency check script (Jiri Benc) [1866908] - [tools] kselftest/runner: allow to properly deliver signals to tests (Jiri Benc) [1866908] - [tools] selftests/harness: fix spelling mistake "SIGARLM" -> "SIGALRM" (Jiri Benc) [1866908] - [tools] selftests: enforce local header dependency in lib.mk (Jiri Benc) [1866908] - [tools] selftests/harness: Handle timeouts cleanly (Jiri Benc) [1866908] - [tools] selftests/harness: Move test child waiting logic (Jiri Benc) [1866908] - [tools] selftests: Fix kselftest O=objdir build from cluttering top level objdir (Jiri Benc) [1866908] - [tools] selftests: allow detection of build failures (Jiri Benc) [1866908] - [tools] selftests: fix build behaviour on targets' failures (Jiri Benc) [1866908] - [tools] kselftest: Support old perl versions (Jiri Benc) [1866908] - [tools] kselftest/runner: Print new line in print of timeout log (Jiri Benc) [1866908] - [tools] selftests: Fix dangling documentation references to kselftest_module.sh (Jiri Benc) [1866908] - [tools] kselftest: Fix NULL INSTALL_PATH for TARGETS runlist (Jiri Benc) [1866908] - [tools] selftests: Move kselftest_module.sh into kselftest/ (Jiri Benc) [1866908] - [tools] selftests: gen_kselftest_tar.sh: Do not clobber kselftest/ (Jiri Benc) [1866908] - [tools] selftests/kselftest/runner.sh: Add 45 second timeout per test (Jiri Benc) [1866908] - [tools] kselftest: exclude failed TARGETS from runlist (Jiri Benc) [1866908] - [tools] kselftest: add capability to skip chosen TARGETS (Jiri Benc) [1866908] - [tools] selftests: Add kselftest-all and kselftest-install targets (Jiri Benc) [1866908] - [tools] selftests: use "$(MAKE)" instead of "make" (Jiri Benc) [1866908] - [tools] kselftest: save-and-restore errno to allow for m formatting (Jiri Benc) [1866908] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 481 (Jiri Benc) [1866908] - [tools] selftests/harness: Allow test to configure timeout (Jiri Benc) [1866908] - [tools] selftests: avoid KBUILD_OUTPUT dir cluttering with selftest objects (Jiri Benc) [1866908] - [tools] selftests: fix bpf build/test workflow regression when KBUILD_OUTPUT is set (Jiri Benc) [1866908] - [tools] selftests: fix install target to use default install path (Jiri Benc) [1866908] - [tools] selftests: build and run gpio when output directory is the src dir (Jiri Benc) [1866908] - [documentation] doc: kselftest: Fix KBUILD_OUTPUT usage instructions (Jiri Benc) [1866908] - [tools] selftests: fix headers_install circular dependency (Jiri Benc) [1866908] - [tools] selftests/harness: Add 30 second timeout per test (Jiri Benc) [1866908] - [tools] kselftest: Add test module framework header (Jiri Benc) [1866908] - [tools] kselftest: Add test runner creation script (Jiri Benc) [1866908] - [tools] selftests/harness: Update named initializer syntax (Jiri Benc) [1866908] - [tools] selftest: include stdio.h in kselftest.h (Jiri Benc) [1866908] - [tools] selftests: do not macro-expand failed assertion expressions (Jiri Benc) [1866908] - [documentation] Documentation/dev-tools: clean up kselftest.rst (Jiri Benc) [1866908] - [documentation] doc: dev-tools: kselftest.rst: update config file location (Jiri Benc) [1866908] - [documentation] doc: dev-tools: kselftest.rst: update contributing new tests (Jiri Benc) [1866908]- [fs] nfs: ensure correct writeback errors are returned on close() (Scott Mayhew) [1849424] - [netdrv] net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task() (Dean Nelson) [1824858] - [crypto] crypto: ecc - SP800-56A rev 3 local public key validation (Herbert Xu) [1855817] - [crypto] crypto: dh - SP800-56A rev 3 local public key validation (Herbert Xu) [1855817] - [crypto] crypto: dh - check validity of Z before export (Herbert Xu) [1855817] - [lib] lib/mpi: Add mpi_sub_ui() (Herbert Xu) [1855817] - [crypto] crypto: ecdh - check validity of Z before export (Herbert Xu) [1855817] - [netdrv] net: thunderx: initialize VF's mailbox mutex before first usage (Dean Nelson) [1866827] - [kernel] timers: Lower base clock forwarding threshold (Phil Auld) [1833096] - [kernel] timers: Remove must_forward_clk (Phil Auld) [1833096] - [kernel] timers: Spare timer softirq until next expiry (Phil Auld) [1833096] - [kernel] timers: Expand clk forward logic beyond nohz (Phil Auld) [1833096] - [kernel] timers: Reuse next expiry cache after nohz exit (Phil Auld) [1833096] - [kernel] timers: Always keep track of next expiry (Phil Auld) [1833096] - [kernel] timers: Optimize _next_timer_interrupt() level iteration (Phil Auld) [1833096] - [kernel] timers: Add comments about calc_index() ceiling work (Phil Auld) [1833096] - [kernel] timers: Move trigger_dyntick_cpu() to enqueue_timer() (Phil Auld) [1833096] - [kernel] timers: Use only bucket expiry for base->next_expiry value (Phil Auld) [1833096] - [kernel] timers: Preserve higher bits of expiration on index calculation (Phil Auld) [1833096] - [kernel] timer: Fix wheel index calculation on last level (Phil Auld) [1833096] - [kernel] timer: Prevent base->clk from moving backward (Phil Auld) [1833096] - [kernel] timer: Read jiffies once when forwarding base clk (Phil Auld) [1833096] - [powerpc] powerpc/64: Update Speculation_Store_Bypass in /proc//status (Gustavo Duarte) [1773868] - [scsi] scsi: virtio-scsi: Correctly handle the case where all LUNs are unplugged (Maxim Levitsky) [1756093] - [kvm] kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host (Maxim Levitsky) [1853447] - [kvm] x86/kvm: Move context tracking where it belongs (Nitesh Narayan Lal) [1854011] - [scsi] scsi: megaraid_sas: Clear affinity hint (Tomas Henzl) [1828351] - [netdrv] revert "vxlan: fix tos value before xmit" (Andrea Claudi) [1862166] - [net] udp: Copy has_conns in reuseport_grow(). (Marcelo Leitner) [1867160] - [net] dev: Defer free of skbs in flush_backlog (Marcelo Leitner) [1867160] - [include] net: core: reduce recursion limit value (Marcelo Leitner) [1867160] - [netdrv] pppoe: only process PADT targeted at local interfaces (Andrea Claudi) [1866850] - [net] espintcp: count packets dropped in espintcp_rcv (Sabrina Dubroca) [1866393] - [net] espintcp: handle short messages instead of breaking the encap socket (Sabrina Dubroca) [1866393] - [net] espintcp: recv() should return 0 when the peer socket is closed (Sabrina Dubroca) [1866393] - [net] espintcp: support non-blocking sends (Sabrina Dubroca) [1866393] - [net] mptcp: be careful on subflow creation (Davide Caratti) [1862200] - [net] mptcp: fix bogus sendmsg() return code under pressure (Davide Caratti) [1862200] - [net] mptcp: fix joined subflows with unblocking sk (Davide Caratti) [1862200] - [net] subflow: explicitly check for plain tcp rsk (Davide Caratti) [1862200] - [net] mptcp: silence warning in subflow_data_ready() (Davide Caratti) [1862200] - [net] mptcp: fix race in subflow_data_ready() (Davide Caratti) [1862200] - [net] mptcp: fix memory leak in mptcp_subflow_create_socket() (Davide Caratti) [1862200] - [net] mptcp: don't leak msk in token container (Davide Caratti) [1862200] - [net] ipv4: Silence suspicious RCU usage warning (Guillaume Nault) [1866430] - [net] devinet: fix memleak in inetdev_init() (Guillaume Nault) [1866430] - [net] ipip: fix wrong address family in init error path (Guillaume Nault) [1866430] - [net] inet_csk: Fix so_reuseport bind-address cache in tb->fast* (Guillaume Nault) [1866430] - [net] ipmr: Add lockdep expression to ipmr_for_each_table macro (Guillaume Nault) [1866430] - [net] ipmr: Fix RCU list debugging warning (Guillaume Nault) [1866430] - [net] tcp: make sure listeners don't initialize congestion-control state (Paolo Abeni) [1865904] - [net] sched: The error lable position is corrected in ct_init_module (Davide Caratti) [1865890] - [net] sched: cls_api: fix nooffloaddevcnt warning dmesg log (Davide Caratti) [1865890] - [net] tls: fix race condition causing kernel panic (Sabrina Dubroca) [1861756] - [net] tls: free record only on encryption error (Sabrina Dubroca) [1861756] - [net] tls: fix encryption error checking (Sabrina Dubroca) [1861756] - [net] l2tp: add sk_family checks to l2tp_validate_socket (Guillaume Nault) [1861453] - [net] l2tp: do not use inet_hash()/inet_unhash() (Guillaume Nault) [1861453] - [net] tipc: allow to build NACK message in link timeout function (Xin Long) [1860877] - [net] tipc: fix retransmission on unicast links (Xin Long) [1860877] - [net] tipc: fix NULL pointer dereference in tipc_disc_rcv() (Xin Long) [1860877] - [net] tipc: remove set but not used variable 'prev' (Xin Long) [1860877] - [net] tipc: call tsk_set_importance from tipc_topsrv_create_listener (Xin Long) [1860877] - [net] tipc: add support for broadcast rcv stats dumping (Xin Long) [1860877] - [net] tipc: enable broadcast retrans via unicast (Xin Long) [1860877] - [net] tipc: add back link trace events (Xin Long) [1860877] - [net] tipc: introduce Gap ACK blocks for broadcast link (Xin Long) [1860877] - [net] tipc: block BH before using dst_cache (Xin Long) [1860877] - [net] tipc: fix partial topology connection closure (Xin Long) [1860877] - [net] xfrm: policy: match with both mark and mask on user interfaces (Xin Long) [1854116] - [scsi] scsi: dh: Add Fujitsu device to devinfo and dh lists (Ewan Milne) [1861418] - [x86] kvm: Set KVM_SOFT_MAX_VCPUS to 1024 (Eduardo Habkost) [1856996] - [md] dm integrity: fix integrity recalculation that is improperly skipped (Mike Snitzer) [1860160] - [netdrv] ibmvnic: Fix IRQ mapping disposal in error path (Steve Best) [1867498] - [infiniband] IB/hfi1: Do not destroy link_wq when the device is shut down (Kamal Heib) [1858392] - [infiniband] IB/hfi1: Do not destroy hfi1_wq when the device is shut down (Kamal Heib) [1858392] - [netdrv] Revert "net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1867146] - [net] devmap: Use bpf_map_area_alloc() for allocating hash buckets (Jiri Benc) [1842380] - [kernel] kexec_file: Correctly output debugging information for the PT_LOAD ELF header (Lianbo Jiang) [1861186] - [kernel] kexec: Improve & fix crash_exclude_mem_range() to handle overlapping ranges (Lianbo Jiang) [1861186] - [x86] x86/crash: Correct the address boundary of function parameters (Lianbo Jiang) [1861186] - [fs] ceph: handle zero-length feature mask in session messages (Jeff Layton) [1866018] - [s390] s390/bpf: Tolerate not converging code shrinking (Yauheni Kaliuta) [1857120] - [s390] s390/bpf: Use brcl for jumping to exit_ip if necessary (Yauheni Kaliuta) [1857120] - [s390] s390/bpf: Fix sign extension in branch_ku (Yauheni Kaliuta) [1857120] - [tools] selftests: bpf: test_kmod.sh: Fix running out of srctree (Yauheni Kaliuta) [1857120] - [lib] bpf: revert "test_bpf: Flag tests that cannot be jited on s390" (Yauheni Kaliuta) [1857120] - [kernel] uprobes: ensure that uprobe->offset and ->ref_ctr_offset are properly aligned (Oleg Nesterov) [1848596]- [fs] nfs: nfs_file_write() should check for writeback errors (Scott Mayhew) [1852788] - [s390] s390/cpum_cf, perf: change DFLT_CCERROR counter name (Philipp Rudo) [1865794] - [net] net/smc: unique reason code for exceeded max dmb count (Philipp Rudo) [1865792] - [s390] s390/ism: indicate correct error reason in ism_alloc_dmb() (Philipp Rudo) [1865792] - [net] net/smc: fix dmb buffer shortage (Philipp Rudo) [1865792] - [net] net/smc: put slot when connection is killed (Philipp Rudo) [1865792] - [net] net/smc: fix restoring of fallback changes (Philipp Rudo) [1865792] - [net] net/smc: remove freed buffer from list (Philipp Rudo) [1865792] - [net] net/smc: do not call dma sync for unmapped memory (Philipp Rudo) [1865792] - [net] net/smc: fix handling of delete link requests (Philipp Rudo) [1865792] - [net] net/smc: move add link processing for new device into llc layer (Philipp Rudo) [1865792] - [net] net/smc: drop out-of-flow llc response messages (Philipp Rudo) [1865792] - [net] net/smc: protect smc ib device initialization (Philipp Rudo) [1865792] - [net] net/smc: fix link lookup for new rdma connections (Philipp Rudo) [1865792] - [net] net/smc: clear link during SMC client link down processing (Philipp Rudo) [1865792] - [net] net/smc: handle unexpected response types for confirm link (Philipp Rudo) [1865792] - [net] net/smc: switch smcd_dev_list spinlock to mutex (Philipp Rudo) [1865792] - [net] net/smc: fix sleep bug in smc_pnet_find_roce_resource() (Philipp Rudo) [1865792] - [net] net/smc: fix work request handling (Philipp Rudo) [1865792] - [net] net/smc: separate LLC wait queues for flow and messages (Philipp Rudo) [1865792] - [net] net/smc: pre-fetch send buffer outside of send_lock (Philipp Rudo) [1865792] - [nvme] nvme-fc: set max_segments to lldd max value (Ewan Milne) [1853181] - [powerpc] ppc64/kexec_file: enable early kernel's OPAL calls (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: fix kexec load failure with lack of memory hole (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: add appropriate regions for memory reserve map (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: prepare elfcore header for crashing kernel (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: setup backup region for kdump kernel (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: restrict memory usage of kdump kernel (Diego Domingos) [1829715] - [mm] powerpc/drmem: make lmb walk a bit more flexible (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: avoid stomping memory used by special regions (Diego Domingos) [1829715] - [powerpc] powerpc/kexec_file: add helper functions for getting memory ranges (Diego Domingos) [1829715] - [powerpc] powerpc/kexec_file: mark PPC64 specific code (Diego Domingos) [1829715] - [kernel] kexec_file: allow archs to handle special regions while locating memory hole (Diego Domingos) [1829715] - [netdrv] net/mlx5e: CT: Support restore ipv6 tunnel (Alaa Hleihel) [1862975] - [netdrv] ionic: unlock queue mutex in error path (Jonathan Toppins) [1854270] - [netdrv] ionic: use mutex to protect queue operations (Jonathan Toppins) [1854270] - [net] xfrm: esp6: fix the location of the transport header with encapsulation (Sabrina Dubroca) [1857653] - [net] ipv4: fill fl4_icmp_{type, code} in ping_v4_sendmsg (Sabrina Dubroca) [1861324] - [netdrv] geneve: fix an uninitialized value in geneve_changelink() (Sabrina Dubroca) [1860945] - [net] ip_tunnel: fix use-after-free in ip_tunnel_lookup() (Sabrina Dubroca) [1860945] - [netdrv] vxlan: Avoid infinite loop when suppressing NS messages with invalid options (Sabrina Dubroca) [1860945] - [tools] selftests: mptcp: capture pcap on both sides (Hangbin Liu) [1859880] - [tools] selftests/net: report etf errors correctly (Hangbin Liu) [1859880] - [tools] selftests: net: ip_defrag: ignore EPERM (Hangbin Liu) [1859880] - [tools] selftests: forwarding: pedit_dsfield: Check counter value (Hangbin Liu) [1859880] - [tools] selftests: net: tcp_mmap: fix SO_RCVLOWAT setting (Hangbin Liu) [1859880] - [tools] selftests: net: tcp_mmap: clear whole tcp_zerocopy_receive struct (Hangbin Liu) [1859880] - [tools] selftests: A few improvements to fib_nexthops.sh (Hangbin Liu) [1859880] - [tools] selftests: Add tests for vrf and xfrms (Hangbin Liu) [1859880] - [tools] selftests: pmtu: implement IPIP, SIT and ip6tnl PMTU discovery tests (Hangbin Liu) [1859880] - [tools] selftests/net/forwarding: define libs as TEST_PROGS_EXTENDED (Hangbin Liu) [1859880] - [tools] selftests/net/forwarding: add Makefile to install tests (Hangbin Liu) [1859880] - [tools] selftests: nft_concat_range: Move option for 'list ruleset' before command (Hangbin Liu) [1859880] - [tools] selftests: netfilter: use randomized netns names (Hangbin Liu) [1859880] - [tools] kselftests: netfilter: fix leftover net/net-next merge conflict (Hangbin Liu) [1859880] - [tools] selftests: netfilter: missing error check when setting up veth interface (Hangbin Liu) [1859880] - [net] sctp: Don't advertise IPv4 addresses if ipv6only is set on the socket (Xin Long) [1860673] - [net] sctp: check assoc before SCTP_ADDR_{MADE_PRIM, ADDED} event (Xin Long) [1860673] - [net] sctp: fix typo sctp_ulpevent_nofity_peer_addr_change (Xin Long) [1860673] - [net] sctp: Fix spelling in Kconfig help (Xin Long) [1860673] - [net] sctp: Start shutdown on association restart if in SHUTDOWN-SENT state and socket is closed (Xin Long) [1860673] - [net] sctp: Don't add the shutdown timer if its already been added (Xin Long) [1860673] - [net] sctp: Fix SHUTDOWN CTSN Ack in the peer restart case (Xin Long) [1860673] - [net] sctp: Fix bundling of SHUTDOWN with COOKIE-ACK (Xin Long) [1860673] - [net] ip6_vti: use IS_REACHABLE to avoid some compile errors (Xin Long) [1840976 1835075] - [net] xfrm: interface: use IS_REACHABLE to avoid some compile errors (Xin Long) [1840976 1835075] - [net] xfrm: interface: not xfrmi_ipv6/ipip_handler twice (Xin Long) [1840976 1835075] - [net] ip6_vti: not register vti_ipv6_handler twice (Xin Long) [1840976 1835075] - [net] ip_vti: not register vti_ipip_handler twice (Xin Long) [1840976 1835075] - [net] xfrm: interface: support IPIP and IPIP6 tunnels processing with .cb_handler (Xin Long) [1840976 1835075] - [net] xfrm: interface: support IP6IP6 and IP6IP tunnels processing with .cb_handler (Xin Long) [1840976 1835075] - [net] ipcomp: assign if_id to child tunnel from parent tunnel (Xin Long) [1840976 1835075] - [net] ip6_vti: support IP6IP tunnel processing (Xin Long) [1840976 1835075] - [net] ip6_vti: support IP6IP6 tunnel processing with .cb_handler (Xin Long) [1840976 1835075] - [net] ip_vti: support IPIP6 tunnel processing (Xin Long) [1840976 1835075] - [net] ip_vti: support IPIP tunnel processing with .cb_handler (Xin Long) [1840976 1835075] - [net] tunnel6: add tunnel6_input_afinfo for ipip and ipv6 tunnels (Xin Long) [1840976 1835075] - [net] tunnel4: add cb_handler to struct xfrm_tunnel (Xin Long) [1840976 1835075] - [net] xfrm: add is_ipip to struct xfrm_input_afinfo (Xin Long) [1840976 1835075] - [net] tunnel6: support for IPPROTO_MPLS (Xin Long) [1840976 1835075] - [net] virtio_vsock: Enhance connection semantics (Stefano Garzarella) [1861735] - [net] virtio_vsock: Fix race condition in virtio_transport_recv_pkt (Stefano Garzarella) [1858135] - [net] vsock/virtio: annotate 'the_virtio_vsock' RCU pointer (Stefano Garzarella) [1861762] - [vhost] vsock/virtio: fix multiple packet delivery to monitoring devices (Stefano Garzarella) [1861762] - [vhost] vsock: fix packet delivery order to monitoring devices (Stefano Garzarella) [1861762] - [vhost] vsock: accept only packets with the right dst_cid (Stefano Garzarella) [1861762] - [vhost] vsock: refuse CID assigned to the guest->host transport (Stefano Garzarella) [1861762] - [vhost] vsock: switch to a mutex for vhost_vsock_hash (Stefano Garzarella) [1861762] - [net] vsock: fix timeout in vsock_accept() (Stefano Garzarella) [1861762] - [net] vsock: Simplify '__vsock_release()' (Stefano Garzarella) [1861762] - [netdrv] net/mlx5e: Fix kernel crash when setting vf VLANID on a VF dev (Alaa Hleihel) [1859477] - [netdrv] net/mlx5e: Modify uplink state on interface up/down (Alaa Hleihel) [1861720 1859477] - [netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup (Alaa Hleihel) [1859477 1856660] - [netdrv] ixgbe: Add ethtool support to enable 2.5 and 5.0 Gbps support (Ken Cox) [1835962] - [x86] x86/purgatory: Add -fno-stack-protector (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Fail the build if purgatory.ro has missing symbols (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Do not use __builtin_memcpy and __builtin_memset (Lianbo Jiang) [1857528] - [x86] x86/boot: Provide KASAN compatible aliases for string routines (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Disable various profiling and sanitizing options (Lianbo Jiang) [1857528] - [x86] x86/boot: Restrict header scope to make Clang happy (Lianbo Jiang) [1857528]- [x86] x86/entry/64: Update comments and sanity tests for create_gap (Jiri Olsa) [1850831] - [x86] x86/alternatives: add missing insn.h include (Jiri Olsa) [1850831] - [x86] x86/alternatives: Teach text_poke_bp() to emulate instructions (Jiri Olsa) [1850831] - [x86] x86/paravirt: Standardize 'insn_buff' variable names (Jiri Olsa) [1850831] - [x86] x86_64: Allow breakpoints to emulate call instructions (Jiri Olsa) [1850831] - [x86] x86_64: Add gap to int3 to allow for call emulation (Jiri Olsa) [1850831] - [x86] x86/alternatives: Sync bp_patching update for avoiding NULL pointer exception (Jiri Olsa) [1850831] - [nvme] nvme: add a Identify Namespace Identification Descriptor list quirk (Gopal Tiwari) [1862136] - [nvme] nvme: fix identify error status silent ignore (Gopal Tiwari) [1862136] - [nvme] nvme: fix possible hang when ns scanning fails during error recovery (Gopal Tiwari) [1862136] - [nvme] nvme: refactor nvme_identify_ns_descs error handling (Gopal Tiwari) [1862136] - [infiniband] IB/rdmavt: Fix RQ counting issues causing use of an invalid RWQE (Kamal Heib) [1850314] - [powerpc] powerpc/pseries: PCIE PHB reset (Steve Best) [1747345] - [drm] drm/nouveau/kms: Handle -EINPROGRESS in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Fix runtime PM leak in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Invert conditionals in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Use pm_runtime_put_autosuspend() in hpd_work (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Use pm_runtime_put_autosuspend() in suspend work (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Fix pm_runtime calls in nouveau_fbcon_output_poll_changed() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Correct pm_runtime calls in nouveau_fbcon_release() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Fix rpm leak in nouveau_connector_hotplug() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Handle -EINPROGRESS in nouveau_connector_hotplug() (Lyude Paul) [1827812] - [drm] drm/nouveau/fbcon: fix module unload when fbcon init has failed for some reason (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/tu102: wait for core update to complete when assigning windows (Lyude Paul) [1827812] - [drm] drm/nouveau/disp/gm200-: fix regression from HDA SOR selection changes (Lyude Paul) [1827812] - [drm] drm/amd/powerplay: fix a crash when overclocking Vega M (Lyude Paul) [1827812] - [drm] drm/amdgpu: Fix NULL dereference in dpm sysfs handlers (Lyude Paul) [1827812] - [drm] drm/amdgpu: fix preemption unit test (Lyude Paul) [1827812] - [drm] drm/amdgpu/gfx10: fix race condition for kiq (Lyude Paul) [1827812] - [drm] drm/amd/display: add dmcub check on RENOIR (Lyude Paul) [1827812] - [drm] drm/amd/display: Check DMCU Exists Before Loading (Lyude Paul) [1827812] - [drm] drm/nouveau/nouveau: fix page fault on device private memory (Lyude Paul) [1827812] - [drm] drm/nouveau/i2c/g94-: increase NV_PMGR_DP_AUXCTL_TRANSACTREQ timeout (Lyude Paul) [1827812] - [drm] drm/i915/perf: Use GTT when saving/restoring engine GPR (Lyude Paul) [1827812] - [drm] drm/i915/gvt: Fix two CFL MMIO handling caused by regression (Lyude Paul) [1827812] - [drm] drm/i915/gt: Only swap to a random sibling once upon creation (Lyude Paul) [1827812] - [drm] drm/i915/gt: Ignore irq enabling on the virtual engines (Lyude Paul) [1827812] - [drm] drm/i915: Move cec_notifier to intel_hdmi_connector_unregister, v2 (Lyude Paul) [1827812] - [drm] drm/amdgpu/display: create fake mst encoders ahead of time (v4) (Lyude Paul) [1827812] - [drm] drm/amd/display: handle failed allocation during stream construction (Lyude Paul) [1827812] - [drm] drm/amdgpu/sdma5: fix wptr overwritten in ->get_wptr() (Lyude Paul) [1827812] - [drm] drm/amdgpu/powerplay: Modify SMC message name for setting power profile mode (Lyude Paul) [1827812] - [drm] drm/i915: Also drop vm.ref along error paths for vma construction (Lyude Paul) [1827812] - [drm] drm/i915: Drop vm.ref for duplicate vma on construction (Lyude Paul) [1827812] - [drm] drm/amdgpu: asd function needs to be unloaded in suspend phase (Lyude Paul) [1827812] - [drm] drm/amdgpu: add TMR destory function for psp (Lyude Paul) [1827812] - [drm] drm/amdgpu: don't do soft recovery if gpu_recovery=0 (Lyude Paul) [1827812] - [drm] drm/i915: Skip stale object handle for debugfs per-file-stats (Lyude Paul) [1827812] - [drm] drm/i915/gt: Pin the rings before marking active (Lyude Paul) [1827812] - [drm] drm/radeon: fix double free (Lyude Paul) [1827812] - [drm] drm: panel-orientation-quirks: Use generic orientation-data for Acer S1003 (Lyude Paul) [1827812] - [drm] drm: panel-orientation-quirks: Add quirk for Asus T101HA panel (Lyude Paul) [1827812] - [iommu] iommu/vt-d: Don't apply gfx quirks to untrusted devices (Lyude Paul) [1827812] - [drm] drm/tegra: hub: Do not enable orphaned window group (Lyude Paul) [1827812] - [drm] drm/ttm: Fix dma_fence refcnt leak when adding move fence (Lyude Paul) [1827812] - [drm] drm/ttm: Fix dma_fence refcnt leak in ttm_bo_vm_fault_reserved (Lyude Paul) [1827812] - [drm] drm/amdgpu/atomfirmware: fix vram_info fetching for renoir (Lyude Paul) [1827812] - [drm] drm/amdgpu: use u rather than d for sclk/mclk (Lyude Paul) [1827812] - [drm] drm/amd/display: Only revalidate bandwidth on medium and fast updates (Lyude Paul) [1827812] - [drm] drm/i915/gt: Mark timeline->cacheline as destroyed after rcu grace period (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix ineffective setting of max bpc property (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix incorrectly pruned modes with deep color (Lyude Paul) [1827812] - [drm] drm/amdgpu: add fw release for sdma v5_0 (Lyude Paul) [1827812] - [drm] drm/radeon: fix fb_div check in ni_init_smc_spll_table() (Lyude Paul) [1827812] - [drm] drm/amd: fix potential memleak in err branch (Lyude Paul) [1827812] - [drm] drm/amd/display: Enable output_bpc property on all outputs (Lyude Paul) [1827812] - [drm] drm/amd/display: Use kfree() to free rgb_user in calculate_user_regamma_ramp() (Lyude Paul) [1827812] - [drm] Revert "drm/amd/display: disable dcn20 abm feature for bring up" (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move gen4 GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move vlv GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move ilk GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move snb GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move ivb GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move hsw GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Incrementally check for rewinding (Lyude Paul) [1827812] - [drm] drm/i915/tc: fix the reset of ln0 (Lyude Paul) [1827812] - [drm] drm/i915/icl+: Fix hotplug interrupt disabling after storm detection (Lyude Paul) [1827812] - [drm] drm/amd/display: Use kvfree() to free coeff in build_regamma() (Lyude Paul) [1827812] - [drm] drm/amdkfd: Use correct major in devcgroup check (Lyude Paul) [1827812] - [drm] drm/connector: notify userspace on hotplug after register complete (Lyude Paul) [1827812] - [drm] drm/i915: Whitelist context-local timestamp in the gen9 cmdparser (Lyude Paul) [1827812] - [drm] drm/i915/gem: Avoid iterating an empty list (Lyude Paul) [1827812] - [drm] drm/i915: Fix AUX power domain toggling across TypeC mode resets (Lyude Paul) [1827812] - [drm] drm/dp_mst: Increase ACT retry timeout to 3s (Lyude Paul) [1827812] - [drm] drm/ast: Don't check new mode if CRTC is being disabled (Lyude Paul) [1827812] - [drm] drm/amdgpu: Replace invalid device ID with a valid device ID (Lyude Paul) [1827812] - [drm] drm/amdgpu/display: use blanked rather than plane state for sync groups (Lyude Paul) [1827812] - [drm] drm/qxl: Use correct notify port address when creating cursor ring (Lyude Paul) [1827812] - [drm] drm/dp_mst: Reformat drm_dp_check_act_status() a bit (Lyude Paul) [1827812] - [drm] drm/ast: fix missing break in switch statement for format->cppcase 4 (Lyude Paul) [1827812] - [drm] drm/amd/display: Revalidate bandwidth before commiting DC updates (Lyude Paul) [1827812] - [drm] drm/nouveau: gr/gk20a: Use firmware version 0 (Lyude Paul) [1827812] - [drm] drm/amdgpu: Sync with VM root BO when switching VM to CPU update mode (Lyude Paul) [1827812] - [drm] drm/amd/powerpay: Disable gfxoff when setting manual mode on picasso and raven (Lyude Paul) [1827812] - [drm] drm/amd/display: Do not disable pipe split if mode is not supported (Lyude Paul) [1827812] - [drm] drm/amd/display: dmcu wait loop calculation is incorrect in RV (Lyude Paul) [1827812] - [drm] drm/amd/display: Correct updating logic of dcn21's pipe VM flags (Lyude Paul) [1827812] - [drm] drm/ast: Allocate initial CRTC state of the correct size (Lyude Paul) [1827812] - [drm] drm/hisilicon: Enforce 128-byte stride alignment to fix the hardware limitation (Lyude Paul) [1827812] - [drm] drm/dp: Lenovo X13 Yoga OLED panel brightness fix (Lyude Paul) [1827812] - [drm] drm/i915/dpcd_bl: Unbreak enable_dpcd_backlight modparam (Lyude Paul) [1827812] - [drm] drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels (Lyude Paul) [1827812] - [drm] drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel (Lyude Paul) [1827812] - [drm] drm/dp: Introduce EDID-based quirks (Lyude Paul) [1827812] - [drm] drm/amdgpu: Init data to avoid oops while reading pp_num_states (Lyude Paul) [1827812] - [drm] drm/amd/display: fix virtual signal dsc setup (Lyude Paul) [1827812] - [drm] drm/amd/display: Force watermark value propagation (Lyude Paul) [1827812] - [drm] drm: bridge: adv7511: Extend list of audio sample rates (Lyude Paul) [1827812] - [drm] drm/amdgpu: fix and cleanup amdgpu_gem_object_close v4 (Lyude Paul) [1827812] - [drm] drm/vkms: Hold gem object while still in-use (Lyude Paul) [1827812] - [drm] drm/amd/display: Not doing optimize bandwidth if flip pending (Lyude Paul) [1827812] - [drm] drm/amd/display: remove invalid dc_is_hw_initialized function (Lyude Paul) [1827812] - [drm] drm/amd/display: DP training to set properly SCRAMBLING_DISABLE (Lyude Paul) [1827812] - [drm] drm/edid: Add Oculus Rift S to non-desktop list (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix potential integer wraparound resulting in a hang (Lyude Paul) [1827812] - [drm] drm/amd/display: Added locking for atomic update stream and update planes (Lyude Paul) [1827812] - [drm] drm/amd/display: Indicate dsc updates explicitly (Lyude Paul) [1827812] - [drm] drm/amd/display: Split program front end part that occur outside lock (Lyude Paul) [1827812] - [drm] drm/amd/display: drop cursor position check in atomic test (Lyude Paul) [1827812] - [drm] drm/amd/amdgpu: Update update_config() logic (Lyude Paul) [1827812] - [drm] drm/amdgpu: Use GEM obj reference for KFD BOs (Lyude Paul) [1827812] - [drm] drm/amd/powerplay: perform PG ungate prior to CG ungate (Lyude Paul) [1827812] - [drm] drm/amdgpu: drop unnecessary cancel_delayed_work_sync on PG ungate (Lyude Paul) [1827812] - [drm] drm/i915: Propagate error from completed fences (Lyude Paul) [1827812] - [drm] drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance (Lyude Paul) [1827812] - [drm] drm/amd/display: Prevent dpcd reads with passive dongles (Lyude Paul) [1827812] - [drm] drm/amd/display: fix counter in wait_for_no_pipes_pending (Lyude Paul) [1827812] - [gpu] vgaarb: Keep adding VGA device in queue (Lyude Paul) [1827812]- [net] openvswitch: fixes potential deadlock in dp cleanup code (Eelco Chaudron) [1845662] - [net] openvswitch: reorder masks array based on usage (Eelco Chaudron) [1845662] - [net] openvswitch: ovs_ct_exit to be done under ovs_lock (Eelco Chaudron) [1860853] - [net] ip6_gre: fix null-ptr-deref in ip6gre_init_net() (Hangbin Liu) [1860221] - [net] ip6_gre: fix use-after-free in ip6gre_tunnel_lookup() (Hangbin Liu) [1860221] - [net] mld: fix memory leak in ipv6_mc_destroy_dev() (Hangbin Liu) [1860221] - [net] ipv6: Fix suspicious RCU usage warning in ip6mr (Hangbin Liu) [1860221] - [net] ip6mr: Fix RCU list debugging warning (Hangbin Liu) [1860221] - [net] revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu" (Hangbin Liu) [1860221] - [netdrv] macsec: avoid to set wrong mtu (Sabrina Dubroca) [1860944] - [netdrv] team: fix hang in team_mode_get() (Hangbin Liu) [1860219] - [include] xfrm: Fix crash when the hold queue is used. (Xin Long) [1860672] - [net] xfrm: policy: fix IPv6-only espintcp compilation (Xin Long) [1860672] - [net] xfrm: esp6: fix encapsulation header offset computation (Xin Long) [1860672] - [net] xfrm: Fix double ESP trailer insertion in IPsec crypto offload. (Xin Long) [1860672] - [net] esp4: improve xfrm4_beet_gso_segment() to be more readable (Xin Long) [1860672] - [net] xfrm interface: don't take extra reference to netdev (Xin Long) [1860672] - [net] xfrm interface: fix oops when deleting a x-netns interface (Xin Long) [1860672] - [net] xfrm: remove the unnecessary .net_exit for xfrmi (Xin Long) [1860672] - [net] xfrm: Always set XFRM_TRANSFORMED in xfrm{4, 6}_output_finish (Xin Long) [1860672] - [include] xfrm: fix error in comment (Xin Long) [1860672] - [net] sctp: shrink stream outq when fails to do addstream reconf (Xin Long) [1853535] - [net] sctp: shrink stream outq only when new outcnt < old outcnt (Xin Long) [1853535] - [net] tipc: fix kernel WARNING in tipc_msg_append() (Xin Long) [1844377] - [net] tipc: fix NULL pointer dereference in streaming (Xin Long) [1844377] - [net] tipc: add test for Nagle algorithm effectiveness (Xin Long) [1844377] - [net] tipc: fix failed service subscription deletion (Xin Long) [1844377] - [net] tipc: fix memory leak in service subscripting (Xin Long) [1844377] - [net] tipc: fix large latency in smart Nagle streaming (Xin Long) [1844377] - [net] mptcp: add receive buffer auto-tuning (Florian Westphal) [1858276] - [tools] selftests: mptcp: add option to specify size of file to transfer (Florian Westphal) [1858276] - [net] mptcp: fallback in case of simultaneous connect (Florian Westphal) [1858276] - [net] mptcp: improve fallback to TCP (Florian Westphal) [1858276] - [net] mptcp: fix unblocking connect() (Florian Westphal) [1858276] - [net] mptcp: cache msk on MP_JOIN init_req (Florian Westphal) [1858276] - [net] mptcp: remove msk from the token container at destruction time. (Florian Westphal) [1858276] - [net] mptcp: fix races between shutdown and recvmsg (Florian Westphal) [1858276] - [net] mptcp: fix race between MP_JOIN and close (Florian Westphal) [1858276] - [net] mptcp: drop MPTCP_PM_MAX_ADDR (Florian Westphal) [1858276] - [net] mptcp: bugfix for RM_ADDR option parsing (Florian Westphal) [1858276] - [net] mptcp: drop MP_JOIN request sock on syn cookies (Florian Westphal) [1858276] - [net] mptcp: avoid NULL-ptr derefence on fallback (Florian Westphal) [1858276] - [net] mptcp: drop sndr_key in mptcp_syn_options (Florian Westphal) [1858276] - [net] mptcp: MPTCP_HMAC_TEST should depend on MPTCP (Florian Westphal) [1858276] - [net] mptcp: fix DSS map generation on fin retransmission (Florian Westphal) [1858276] - [net] inet_connection_sock: clear inet_num out of destroy helper (Florian Westphal) [1858276] - [net] mptcp: fix NULL ptr dereference in MP_JOIN error path (Florian Westphal) [1858276] - [net] mptcp: avoid blocking in tcp_sendpages (Florian Westphal) [1858276] - [net] mptcp: break and restart in case mptcp sndbuf is full (Florian Westphal) [1858276] - [net] l2tp: remove skb_dst_set() from l2tp_xmit_skb() (Xin Long) [1832799] - [net] rtnetlink: prevent underflows in do_setvfinfo() (Davide Caratti) [1854740] - [net] netfilter: nf_tables: reintroduce the NFT_SET_CONCAT flag (Phil Sutter) [1847553] - [net] netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type (Phil Sutter) [1847553] - [net] openvswitch: take into account de-fragmentation/gso_size in execute_check_pkt_len (Lorenzo Bianconi) [1851888] - [tools] selftests: forwarding: mirror_lib: Use mausezahn (Davide Caratti) [1816443] - [x86] perf/x86/rapl: Add Ice Lake RAPL support (Michael Petlan) [1841266] - [arm64] arm64/mm: enable HugeTLB migration (Donghai Qiao) [1758717] - [scsi] scsi: core: Run queue in case of I/O resource contention failure (Ewan Milne) [1854958] - [message] scsi: mptscsih: Fix read sense data size (Tomas Henzl) [1850563] - [netdrv] net: qed: fix buffer overflow on ethtool -d (Manish Chopra) [1858915] - [x86] sched/cputime: Improve cputime_adjust() (Oleg Nesterov) [1859977] - [kernel] uprobes: Change handle_swbp() to send SIGTRAP with si_code=SI_KERNEL, to fix GDB regression (Oleg Nesterov) [1855390] - [x86] x86/asm: Fix MWAITX C-state hint value (Vladis Dronov) [1767064] - [x86] x86/kexec: Fill in acpi_rsdp_addr from the first kernel (Kairui Song) [1684462] - [x86] x86/kexec: Don't setup EFI info if EFI runtime is not enabled (Kairui Song) [1684462] - [vfio] vfio/pci: fix racy on error and request eventfd ctx (Alex Williamson) [1858346] - [platform] platform/x86: ISST: Increase timeout (Prarit Bhargava) [1854682] - [mm] x86/mm: split vmalloc_sync_all() (Al Stone) [1851547] - [acpi] ACPI: watchdog: Fix gas->access_width usage (Al Stone) [1851547] - [acpi] ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro (Al Stone) [1851547]- [virt] kvm: x86: take as_id into account when checking PGD (Vitaly Kuznetsov) [1615704] - [arm64] kvm: arm64: Stop clobbering x0 for HVC_SOFT_RESTART (Andrew Jones) [1855788] - [arm64] kvm: arm64: pmu: Fix per-CPU access in preemptible context (Andrew Jones) [1855788] - [arm64] kvm: arm64: Fix kvm_reset_vcpu() return code being incorrect with SVE (Andrew Jones) [1855788] - [arm64] kvm: arm64: Annotate hyp NMI-related functions as __always_inline (Andrew Jones) [1855788] - [arm64] kvm: arm64: Remove host_cpu_context member from vcpu structure (Andrew Jones) [1855788] - [arm64] kvm: arm64: Move hyp_symbol_addr() to kvm_asm.h (Andrew Jones) [1855788] - [arm64] kvm: arm64: Handle PtrAuth traps early (Andrew Jones) [1855788] - [arm64] kvm: arm64: Save the host's PtrAuth keys in non-preemptible context (Andrew Jones) [1855788] - [arm64] kvm: arm64: Stop save/restoring ACTLR_EL1 (Andrew Jones) [1855788] - [kernel] firmware: smccc: Update link to latest SMCCC specification (Andrew Jones) [1855788] - [kernel] arm/arm64: smccc-1.1: Handle function result as parameters (Andrew Jones) [1855788] - [kernel] arm/arm64: smccc-1.1: Make return values unsigned long (Andrew Jones) [1855788] - [video] Revert "hyperv_fb: Fix hibernation for the deferred IO feature" (Mohammed Gamal) [1858755] - [netdrv] net/mlx5e: CT: Map 128 bits labels to 32 bit map ID (Alaa Hleihel) [1859540] - [security] ima: move APPRAISE_BOOTPARAM dependency on ARCH_POLICY to runtime (Bruno Meneguele) [1847219] - [scsi] scsi: lpfc: NVMe remote port devloss_tmo from lldd (Dick Kennedy) [1859344] - [netdrv] net/mlx5e: Disable devlink port support for non-switchdev mode (Alaa Hleihel) [1858501 1852904 1849623] - [tools] perf powerpc: Don't ignore sym-handling.c file (Michael Petlan) [1858133] - [fs] ext4: reserve revoke credits in __ext4_new_inode (Lukas Czerner) [1856760] - [include] jbd2: make jbd2_handle_buffer_credits() handle reserved handles (Lukas Czerner) [1856760] - [fs] jbd2: avoid leaking transaction credits when unreserving handle (Lukas Czerner) [1856760] - [fs] jbd2: Fine tune estimate of necessary descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Provide trace event for handle restarts (Lukas Czerner) [1856760] - [fs] ext4: Reserve revoke credits for freed blocks (Lukas Czerner) [1856760] - [fs] jbd2: Make credit checking more strict (Lukas Czerner) [1856760] - [fs] jbd2: Rename h_buffer_credits to h_total_credits (Lukas Czerner) [1856760] - [fs] jbd2: add missing tracepoint for reserved handle (Lukas Czerner) [1856760] - [fs] jbd2: Reserve space for revoke descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Drop jbd2_space_needed() (Lukas Czerner) [1856760] - [fs] jbd2: remove repeated assignments in __jbd2_log_wait_for_space() (Lukas Czerner) [1856760] - [fs] jbd2: Account descriptor blocks into t_outstanding_credits (Lukas Czerner) [1856760] - [include] jbd2: update locking documentation for transaction_t (Lukas Czerner) [1856760] - [fs] jbd2: Factor out common parts of stopping and restarting a handle (Lukas Czerner) [1856760] - [fs] jbd2: Drop pointless wakeup from jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] jbd2: Drop pointless check from jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] jbd2: Reorganize jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] ext4, jbd2: Provide accessor function for handle credits (Lukas Czerner) [1856760] - [fs] ext4: Provide function to handle transaction restarts (Lukas Czerner) [1856760] - [fs] ext4: Avoid unnecessary revokes in ext4_alloc_branch() (Lukas Czerner) [1856760] - [fs] ext4: Use ext4_journal_extend() instead of jbd2_journal_extend() (Lukas Czerner) [1856760] - [fs] jbd2: Completely fill journal descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Fixup stale comment in commit code (Lukas Czerner) [1856760] - [include] jbd2: Fix possible overflow in jbd2_log_space_left() (Lukas Czerner) [1856760] - [fs] ext4, jbd2: ensure panic by fix a race between jbd2 abort and ext4 error handlers (Lukas Czerner) [1856760] - [fs] ext4: remove set but not used variable 'es' in ext4_jbd2.c (Lukas Czerner) [1856760] - [fs] ext4: remove set but not used variable 'es' (Lukas Czerner) [1856760] - [fs] ext4: save all error info in save_error_info() and drop ext4_set_errno() (Lukas Czerner) [1856760] - [fs] ext4: save the error code which triggered an ext4_error() in the superblock (Lukas Czerner) [1856760] - [fs] jbd2: clean __jbd2_journal_abort_hard() and __journal_abort_soft() (Lukas Czerner) [1856760] - [fs] ext4: stop overwrite the errcode in ext4_setup_super (Lukas Czerner) [1856760] - [fs] ext4: fix partial cluster initialization when splitting extent (Lukas Czerner) [1856760] - [fs] ext4: avoid ext4_error()'s caused by ENOMEM in the truncate path (Lukas Czerner) [1856760] - [fs] ext4: fix race between ext4_sync_parent() and rename() (Lukas Czerner) [1856760] - [fs] ext4: clean up ext4_ext_convert_to_initialized() error handling (Lukas Czerner) [1856760] - [fs] ext4: clean up GET_BLOCKS_PRE_IO error handling (Lukas Czerner) [1856760] - [fs] ext4: fix error pointer dereference (Lukas Czerner) [1856760] - [fs] ext4: Avoid freeing inodes on dirty list (Lukas Czerner) [1856760] - [fs] writeback: Export inode_io_list_del() (Lukas Czerner) [1856760] - [fs] ext4: fix buffer_head refcnt leak when ext4_iget() fails (Lukas Czerner) [1856760] - [fs] ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max (Lukas Czerner) [1856760] - [fs] ext4: fix a style issue in fs/ext4/acl.c (Lukas Czerner) [1856760] - [fs] ext4: fix return-value types in several function comments (Lukas Czerner) [1856760] - [fs] ext4: use non-movable memory for superblock readahead (Lukas Czerner) [1856760] - [fs] ext4: fix incorrect group count in ext4_fill_super error message (Lukas Czerner) [1856760] - [fs] ext4: fix incorrect inodes per group in error message (Lukas Czerner) [1856760] - [fs] ext4: avoid ENOSPC when avoiding to reuse recently deleted inodes (Lukas Czerner) [1856760] - [fs] ext4: fix a data race at inode->i_disksize (Lukas Czerner) [1856760] - [fs] ext4: fix a data race at inode->i_blocks (Lukas Czerner) [1856760] - [fs] ext4: clean up error return for convert_initialized_extent() (Lukas Czerner) [1856760] - [fs] ext4: force buffer up-to-date while marking it dirty (Lukas Czerner) [1856760] - [fs] ext4: fix race between writepages and enabling EXT4_EXTENTS_FL (Lukas Czerner) [1856760] - [fs] ext4: rename s_journal_flag_rwsem to s_writepages_rwsem (Lukas Czerner) [1856760] - [fs] ext4: potential crash on allocation error in ext4_alloc_flex_bg_array() (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between s_flex_groups online resizing and access (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between s_group_info online resizing and access (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between online resizing and write operations (Lukas Czerner) [1856760] - [fs] ext4: add cond_resched() to __ext4_find_entry() (Lukas Czerner) [1856760] - [fs] ext4: fix a data race in EXT4_I(inode)->i_disksize (Lukas Czerner) [1856760] - [fs] ext4: fix checksum errors with indexed dirs (Lukas Czerner) [1856760] - [fs] ext4: simplify checking quota limits in ext4_statfs() (Lukas Czerner) [1856760] - [fs] ext4: choose hardlimit when softlimit is larger than hardlimit in ext4_statfs_project() (Lukas Czerner) [1856760] - [fs] ext4: don't assume that mmp_nodename/bdevname have NUL (Lukas Czerner) [1856760] - [fs] jbd2: make sure ESHUTDOWN to be recorded in the journal superblock (Lukas Czerner) [1856760] - [fs] ext4, jbd2: ensure panic when aborting with zero errno (Lukas Czerner) [1856760] - [fs] jbd2: switch to use jbd2_journal_abort() when failed to submit the commit record (Lukas Czerner) [1856760] - [fs] jbd2_seq_info_next should increase position index (Lukas Czerner) [1856760] - [fs] ext4,jbd2: fix comment and code style (Lukas Czerner) [1856760] - [fs] ext4: fix extent_status trace points (Lukas Czerner) [1856760] - [fs] ext4: fix extent_status fragmentation for plain files (Lukas Czerner) [1856760] - [fs] jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info when load journal (Lukas Czerner) [1856760] - [fs] ext4: fix some nonstandard indentation in extents.c (Lukas Czerner) [1856760] - [fs] ext4: fix documentation for ext4_ext_try_to_merge() (Lukas Czerner) [1856760] - [fs] ext4: avoid fetching btime in ext4_getattr() unless requested (Lukas Czerner) [1856760] - [fs] ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT (Lukas Czerner) [1856760] - [fs] ext4: optimize __ext4_check_dir_entry() (Lukas Czerner) [1856760] - [fs] ext4: check for directory entries too close to block end (Lukas Czerner) [1856760] - [fs] ext4: fix a bug in ext4_wait_for_tail_page_commit (Lukas Czerner) [1856760] - [fs] jbd2: Fix statistics for the number of logged blocks (Lukas Czerner) [1856760] - [fs] ext4: Fix ext4_should_journal_data() for EA inodes (Lukas Czerner) [1856760] - [fs] ext4: Fix credit estimate for final inode freeing (Lukas Czerner) [1856760] - [fs] ext4: Do not iput inode under running transaction (Lukas Czerner) [1856760] - [fs] ext4: Move marking of handle as sync to ext4_add_nondir() (Lukas Czerner) [1856760] - [fs] ext4: update direct I/O read lock pattern for IOCB_NOWAIT (Lukas Czerner) [1856760] - [fs] jbd2: flush_descriptor(): Do not decrease buffer head's ref count (Lukas Czerner) [1856760] - [fs] ext4: fix prefetchw of NULL page (Lukas Czerner) [1856760] - [fs] ext4: check for non-zero journal inum in ext4_calculate_overhead (Lukas Czerner) [1814574] - [fs] ext4: do not commit super on read-only bdev (Lukas Czerner) [1814574] - [kernel] isolcpus: Affine unbound kernel threads to housekeeping cpus (Marcelo Tosatti) [1791930] - [kernel] kthread: Switch to cpu_possible_mask (Marcelo Tosatti) [1791930] - [scsi] scsi: lpfc: Quieten some printks (Dick Kennedy) [1859338] - [scsi] Revert "scsi: lpfc: Fix scsi host template for SLI3 vports" (Dick Kennedy) [1851189] - [md] dm mpath: use double checked locking in fast path (Mike Snitzer) [1848651] - [md] dm mpath: rename current_pgpath to pgpath in multipath_prepare_ioctl (Mike Snitzer) [1848651] - [md] dm mpath: rework __map_bio() (Mike Snitzer) [1848651] - [md] dm mpath: factor out multipath_queue_bio (Mike Snitzer) [1848651] - [md] dm mpath: push locking down to must_push_back_rq() (Mike Snitzer) [1848651] - [md] dm mpath: take m->lock spinlock when testing QUEUE_IF_NO_PATH (Mike Snitzer) [1848651] - [md] dm mpath: changes from initial m->flags locking audit (Mike Snitzer) [1848651] - [md] dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() (Mike Snitzer) [1848651] - [md] dm: do not use waitqueue for request-based DM (Mike Snitzer) [1848651] - [block] blk-mq: consider non-idle request as "inflight" in blk_mq_rq_inflight() (Mike Snitzer) [1848651] - [powerpc] powerpc/fadump: fix race between pstore write and fadump crash trigger (Steve Best) [1820109] - [tools] libbpf: Fix probe code to return EPERM if encountered (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1856592] - [tools] tools selftests/bpf: Fix vmlinux test for kprobe and trampoline probes (Jiri Olsa) [1855778] - [net] net: Restrict receive packets queuing to housekeeping CPUs (Nitesh Narayan Lal) [1844520] - [pci] PCI: Restrict probe functions to housekeeping CPUs (Nitesh Narayan Lal) [1844520] - [lib] lib: Restrict cpumask_local_spread to houskeeping CPUs (Nitesh Narayan Lal) [1844520]- [tools] selftests/powerpc: Purge extra count_pmc() calls of ebb selftests (Desnes Augusto Nunes do Rosario) [1739769] - [netdrv] bonding: symmetric ICMP transmit (Jarod Wilson) [1760293] - [netdrv] bonding: balance ICMP echoes in layer3+4 mode (Jarod Wilson) [1760362] - [powerpc] powerpc/vas: Report proper error code for address translation failure (Steve Best) [1858160] - [infiniband] IB/hfi1: Fix module use count flaw due to leftover module put calls (Kamal Heib) [1858388] - [gpu] vgaarb: Add support for 64-bit frame buffer address (Karol Herbst) [1735217] - [netdrv] ionic: centralize queue reset code (Jonathan Toppins) [1857851] - [s390] s390/qeth: support net namespaces for L3 devices (Philipp Rudo) [1857311] - [s390] s390/qeth: implement smarter resizing of the RX buffer pool (Philipp Rudo) [1857311] - [s390] s390/qeth: refactor buffer pool code (Philipp Rudo) [1857311] - [s390] s390/qeth: use page pointers to manage RX buffer pool (Philipp Rudo) [1857311] - [s390] s390/qeth: cancel RX reclaim work earlier (Philipp Rudo) [1857311] - [s390] s390/qeth: handle error when backing RX buffer (Philipp Rudo) [1857311] - [s390] s390/qeth: don't reset default_out_queue (Philipp Rudo) [1857311] - [s390] s390/qdio: fill SBALEs with absolute addresses (Philipp Rudo) [1857311] - [s390] s390/qeth: fix off-by-one in RX copybreak check (Philipp Rudo) [1857311] - [s390] s390/qeth: vnicc Fix EOPNOTSUPP precedence (Philipp Rudo) [1857311] - [s390] s390/qeth: consolidate QDIO queue setup (Philipp Rudo) [1857311] - [s390] s390/pci: Fix s390_mmio_read/write with MIO (Philipp Rudo) [1857315] - [s390] scsi: zfcp: Fix panic on ERP timeout for previously dismissed ERP action (Philipp Rudo) [1857312] - [net] net/smc: tolerate future SMCD versions (Philipp Rudo) [1854992] - [fs] ext4: use RCU API in debug_print_tree (Lukas Czerner) [1837777] - [fs] ext4: fix potential use after free after remounting with noblock_validity (Lukas Czerner) [1837777] - [fs] ext4: add cond_resched() to ext4_protect_reserved_inode (Lukas Czerner) [1837777] - [fs] fibmap: Reject negative block numbers (Carlos Maiolino) [1687121] - [vfio] vfio/pci: Fix SR-IOV VF handling with MMIO blocking (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio-pci: Invalidate mmaps and block MMIO access on disabled memory (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio-pci: Fault mmaps to enable vma tracking (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/type1: Support faulting PFNMAP vmas (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn() (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/pci: call irq_bypass_unregister_producer() before freeing irq (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio_pci: Enable memory accesses before calling pci_map_rom (Alex Williamson) [1837310] {CVE-2020-12888} - [x86] mm: Fix mremap not considering huge pmd devmap (Rafael Aquini) [1843441] {CVE-2020-10757} - [x86] x86/speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect branches (Waiman Long) [1847396 1846029] {CVE-2020-10768} - [x86] x86/speculation: Prevent rogue cross-process SSBD shutdown (Waiman Long) [1847358 1846029] {CVE-2020-10766} - [x86] x86/speculation: Avoid force-disabling IBPB based on STIBP and enhanced IBRS (Waiman Long) [1847379 1846029] {CVE-2020-10767} - [x86] x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline (Waiman Long) [1846029] - [arm64] Return ENODEV when the selected speculation misfeature is unsupported (Waiman Long) [1846029] - [x86] x86/speculation: Add support for STIBP always-on preferred mode (Waiman Long) [1846029] - [x86] x86/speculation: Change misspelled STIPB to STIBP (Waiman Long) [1846029]- [powerpc] powernv/iov: Ensure the pdn for VFs always contains a valid PE number (David Gibson) [1848235] - [powerpc] don't use ioremap_prot() nor __ioremap() unless really needed (Greg Kurz) [1855957] - [char] tpm: ibmvtpm: Wait for ready buffer before probing for TPM2 attributes (David Gibson) [1837283] - [powerpc] Check prom_init for disallowed sections (Michael Roth) [1856099] - [powerpc] prom_init: Move __prombss to it's own section and store it in .bss (Michael Roth) [1856099] - [powerpc] prom_init: Move const structures to __initconst (Michael Roth) [1856099] - [powerpc] prom_init: Make "default_colors" const (Michael Roth) [1856099] - [powerpc] prom_init: Move ibm_arch_vec to __prombss (Michael Roth) [1856099] - [fs] ext4: unregister sysfs path before destroying jbd2 journal (Lukas Czerner) [1814577] - [powerpc] powerpc/pseries/svm: Fix incorrect check for shared_lppaca_size (Steve Best) [1856889] - [netdrv] bnxt_en: fix NULL dereference in case SR-IOV configuration fails (Jonathan Toppins) [1856372] - [security] kexec: Allow kexec_file() with appropriate IMA policy when locked down (Bruno Meneguele) [1854097] - [x86] x86/apic/vector: Warn when vector space exhaustion breaks affinity (Neil Horman) [1714686] - [tools] perf report TUI: Fix segmentation fault in perf_evsel__hists_browse() (Michael Petlan) [1855737] - [fs] ext4: do not zeroout extents beyond i_disksize (Lukas Czerner) [1817816] - [pci] PCI/DPC: Print IRQ number used by port (Myron Stowe) [1855343] - [pci] PCI/AER: Use "aer" variable for capability offset (Myron Stowe) [1855343] - [pci] PCI/AER: Remove redundant dev->aer_cap checks (Myron Stowe) [1855343] - [pci] PCI/AER: Remove redundant pci_is_pcie() checks (Myron Stowe) [1855343] - [pci] PCI/AER: Remove HEST/FIRMWARE_FIRST parsing for AER ownership (Myron Stowe) [1855343] - [tools] selftests: bpf: use __u32 for sock::sk_pacing_rate (Yauheni Kaliuta) [1856324] - [tools] libbpf: Handle GCC noreturn-turned-volatile quirk (Yauheni Kaliuta) [1854327] - [netdrv] net/mlx5e: CT: Fix releasing ft entries (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Remove unused function param (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Return err_ptr from internal functions (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Expand tunnel register mappings (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Use mapping for zone restore register (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Re-use tuple modify headers for identical modify actions (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Export sharing of mod headers to a new file (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Add support for COPY steering action (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Accept flow rules without match (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Restore ct state from lookup in zone instead of tupleid (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Don't offload tuple rewrites for established tuples (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Use netdev_info instead of pr_info (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Allow header rewrite of 5-tuple and ct clear action (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Save ct entries tuples in hashtables (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: CT: Remove unused variables (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Avoid eswitch header inclusion in fs core layer (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: vxlan: Use RCU for vxlan table lookup (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Remove unused mlx5e_xsk_first_unused_channel (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Fix memory leak in cleanup (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix port buffers cell size value (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix 50G per lane indication (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix CPU mapping after function reload to avoid aRFS RX crash (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix VXLAN configuration restore after function reload (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Fix eeprom support for SFP module (Alaa Hleihel) [1856057] - [infiniband] IB/mlx5: Fix 50G per lane indication (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Do not include rwlock.h directly (Alaa Hleihel) [1856057] - [fs] jbd2: fix data races at struct journal_head (Lukas Czerner) [1792518] - [fs] jbd2: remove pointless assertion in __journal_remove_journal_head (Lukas Czerner) [1792518] - [fs] jbd2: improve comments about freeing data buffers whose page mapping is NULL (Lukas Czerner) [1792518] - [fs] jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer (Lukas Czerner) [1792518] - [fs] jbd2: move the clearing of b_modified flag to the journal_unmap_buffer() (Lukas Czerner) [1792518] - [fs] ext4: unlock on error in ext4_expand_extra_isize() (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: fix support for inode sizes > 1024 bytes (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: validate the debug_want_extra_isize mount option at parse time (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: add more paranoia checking in ext4_expand_extra_isize handling (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: unsigned int compared against zero (Lukas Czerner) [1836666] {CVE-2019-19319} - [fs] ext4: protect journal inode's blocks using block_validity (Lukas Czerner) [1836666] {CVE-2019-19319} - [powerpc] powerpc/kernel/sysfs: Add new config option PMU_SYSFS to enable PMU SPRs sysfs file creation (Michael Petlan) [1821284] - [powerpc] powerpc/kernel/sysfs: Refactor current sysfs.c (Michael Petlan) [1821284] - [kernel] irqdomain: Add the missing assignment of domain->fwnode for named fwnode (Mohammed Gamal) [1846666] - [security] lockdown: Allow unprivileged users to see lockdown status (Vladis Dronov) [1805299] - [edac] EDAC/ghes: Setup DIMM label from DMI and use it in error reports (Robert Richter) [1726153]- [x86] kvm: nvmx: fixes for preemption timer migration (Paolo Bonzini) [1854831] - [powerpc] pci/of: Parse unassigned resources (Greg Kurz) [1849921] - [video] revert "hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver" (Vitaly Kuznetsov) [1848840] - [video] revert "hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs" (Vitaly Kuznetsov) [1848840] - [pci] hv: Retry PCI bus D0 entry on invalid device state (Mohammed Gamal) [1846666] - [pci] hv: Fix the PCI HyperV probe failure path to release resource properly (Mohammed Gamal) [1846666] - [pci] hv: Allocate a named fwnode instead of an address-based one (Mohammed Gamal) [1846666] - [netdrv] tg3: driver sleeps indefinitely when EEH errors exceed eeh_max_freezes (Jonathan Toppins) [1850176] - [scsi] scsi: lpfc: Fix kdump hang on PPC (Dick Kennedy) [1722596] - [fs] nfsd: fix nfsdfs inode reference count leak ("J. Bruce Fields") [1846235] - [fs] nfsd4: fix nfsdfs reference count loop ("J. Bruce Fields") [1846235] - [kernel] sched: Defend cfs and rt bandwidth quota against overflow (Phil Auld) [1854180] - [kernel] sched/core: Make some functions static (Phil Auld) [1854180] - [kernel] sched/fair: Refill bandwidth before scaling (Phil Auld) [1854180] - [kernel] sched/fair: Eliminate bandwidth race between throttling and distribution (Phil Auld) [1854180] - [kernel] sched/fair: Fix race between runtime distribution and assignment (Phil Auld) [1854180] - [kernel] sched/deadline: Initialize ->dl_boosted (Phil Auld) [1854179] - [kernel] sched/core: Fix PI boosting between RT and DEADLINE tasks (Phil Auld) [1854179] - [netdrv] ibmveth: Fix max MTU limit (Diego Domingos) [1846435] - [kernel] sched/core: Fix ttwu() race (Phil Auld) [1854178] - [tools] perf flamegraph: Explicitly set utf-8 encoding (Michael Petlan) [1849027] - [kernel] sched/core: Check cpus_mask, not cpus_ptr in __set_cpus_allowed_ptr(), to fix mask corruption (Phil Auld) [1854174] - [kernel] workqueue: Remove the warning in wq_worker_sleeping() (Phil Auld) [1854174] - [kernel] sched/fair: Fix negative imbalance in imbalance calculation (Phil Auld) [1854174] - [kernel] sched/fair: Optimize select_idle_core() (Phil Auld) [1854174] - [x86] x86/PCI: Mark Intel C620 MROMs as having non-compliant BARs (Myron Stowe) [1854184] - [netdrv] r8169: fix firmware not resetting tp->ocp_base (Josef Oskera) [1851960] - [acpi] ACPI: configfs: Disallow loading ACPI tables when locked down (Lenny Szubowicz) [1852969] - [arm64] Revert "bpf: Restrict bpf_probe_read{, str}() only to archs where they work" (Jiri Olsa) [1847837] - [s390] s390/mm: Explicitly compare PAGE_DEFAULT_KEY against zero in storage_key_init_range (Jiri Olsa) [1847837] - [net] Bluetooth: Modify LE window and interval for suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix incorrect type for window and interval (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Use DEFER_SETUP to group ECRED connections (Gopal Tiwari) [1838924] - [net] Bluetooth: don't assume key size is 16 when the command fails (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add get_peer_pid callback (Gopal Tiwari) [1838924] - [net] Bluetooth: Restore running state if suspend fails (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix incorrect branch in connection complete (Gopal Tiwari) [1838924] - [net] Bluetooth: Do not cancel advertising when starting a scan (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: remove set but not used variable 'credits' (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Fix a condition in l2cap_sock_recvmsg() (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: handle l2cap config request during open state (Gopal Tiwari) [1838924] - [net] Bluetooth: clean up connection in hci_cs_disconnect (Gopal Tiwari) [1838924] - [net] Bluetooth: Pause discovery and advertising during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle LE devices during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle BR/EDR devices during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle PM_SUSPEND_PREPARE and PM_POST_SUSPEND (Gopal Tiwari) [1838924] - [net] Bluetooth: mgmt: add mgmt_cmd_status in add_advertising (Gopal Tiwari) [1838924] - [net] Bluetooth: fix off by one in err_data_reporting cmd masks (Gopal Tiwari) [1838924] - [net] Bluetooth: Use bt_dev_err for RPA generation failure message (Gopal Tiwari) [1838924] - [net] Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add module option to enable ECRED mode (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add initial code for Enhanced Credit Based Mode (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add definitions (Gopal Tiwari) [1838924] - [net] Bluetooth: Increment management interface revision (Gopal Tiwari) [1838924] - [net] Bluetooth: Make use of skb_pull to parse L2CAP signaling PDUs (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix calculation of SCO handle for packet processing (Gopal Tiwari) [1838924] - [net] Bluetooth: guard against controllers sending zero'd events (Gopal Tiwari) [1838924] - [net] Bluetooth: During le_conn_timeout disable EXT_ADV (Gopal Tiwari) [1838924] - [net] Bluetooth: Remove adv set for directed advertising (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix Suspicious RCU usage warnings (Gopal Tiwari) [1838924] - [net] Bluetooth: Use list_for_each_entry_rcu() to traverse RCU list in RCU read-side CS (Gopal Tiwari) [1838924] - [net] Bluetooth: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [net] Bluetooth: fix passkey uninitialized when used (Gopal Tiwari) [1838924] - [net] Bluetooth: RFCOMM: Use MTU auto tune logic (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix crash when using new BT_PHY option (Gopal Tiwari) [1838924] - [net] Bluetooth: Disable Extended Adv if enabled (Gopal Tiwari) [1838924] - [net] Bluetooth: Add BT_PHY socket option (Gopal Tiwari) [1838924] - [net] Bluetooth: secure bluetooth stack from bluedump attack (Gopal Tiwari) [1838924] - [net] Bluetooth: remove __get_channel/dir and __dir (Gopal Tiwari) [1838924] - [net] Bluetooth: prefetch channel before killing sock (Gopal Tiwari) [1838924] - [net] Bluetooth: optimize barrier usage for Rmw atomics (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix refcount use-after-free issue (Gopal Tiwari) [1838924] - [net] Bluetooth: SMP: Fix SALT value in some comments (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix race condition in hci_release_sock() (Gopal Tiwari) [1838924] - [net] Bluetooth: Move {min, max}_key_size debugfs into hci_debugfs_create_le (Gopal Tiwari) [1838924] - [net] Bluetooth: Add missing checks for HCI_ISODATA_PKT packet type (Gopal Tiwari) [1838924] - [net] Bluetooth: fix appearance typo in mgmt.c (Gopal Tiwari) [1838924] - [net] Bluetooth: adding missing const decoration to mgmt_status_table (Gopal Tiwari) [1838924] - [net] Bluetooth: Increment management interface revision (Gopal Tiwari) [1838924] - [net] Bluetooth: monitor: Add support for ISO packets (Gopal Tiwari) [1838924] - [net] Bluetooth: Make use of __check_timeout on hci_sched_le (Gopal Tiwari) [1838924] - [net] Bluetooth: Implementation of MGMT_OP_SET_BLOCKED_KEYS (Gopal Tiwari) [1838924] - [net] Bluetooth: remove redundant assignment to variable icid (Gopal Tiwari) [1838924] - [net] Bluetooth: Auto tune if input MTU is set to 0 (Gopal Tiwari) [1838924] - [net] Bluetooth: Remove usage of BT_ERR_RATELIMITED macro (Gopal Tiwari) [1838924] - [net] Bluetooth: Adding a bt_dev_warn_ratelimited macro (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix memory leak in hci_connect_le_scan (Gopal Tiwari) [1838924] - [net] Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR quirks (Gopal Tiwari) [1838924] - [net] Bluetooth: delete a stray unlock (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix advertising duplicated flags (Gopal Tiwari) [1838924] - [net] net: use skb_queue_empty_lockless() in poll() handlers (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix not using LE_ADV_NONCONN_IND for instance 0 (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix using advertising instance duration as timeout (Gopal Tiwari) [1838924] - [fs] compat_ioctl: move hci_sock handlers into driver (Gopal Tiwari) [1838924] - [fs] compat_ioctl: move rfcomm handlers into driver (Gopal Tiwari) [1838924] - [net] Bluetooth: hci_core: fix init for HCI_USER_CHANNEL (Gopal Tiwari) [1838924] - [net] Bluetooth: Workaround directed advertising bug in Broadcom controllers (Gopal Tiwari) [1838924] - [net] Bluetooth: missed cpu_to_le16 conversion in hci_init4_req (Gopal Tiwari) [1838924] - [hid] Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message (Gopal Tiwari) [1838924] - [net] Bluetooth: mgmt: Use struct_size() helper (Gopal Tiwari) [1838924] - [net] Bluetooth: Add support for utilizing Fast Advertising Interval (Gopal Tiwari) [1838924] - [net] Bluetooth: 6lowpan: Make variable header_ops constant (Gopal Tiwari) [1838924] - [net] Revert "Bluetooth: validate BLE connection interval updates" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: print Intel fw build version in power-on boot (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Switch from BT_ERR to bt_dev_err where possible (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: bfusb: Switch from BT_ERR to bt_dev_err where possible (Gopal Tiwari) [1838924] - [net] Bluetooth: Enable erroneous data reporting if WBS is supported (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Replace devm_gpiod_get() with devm_gpiod_get_optional() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Make bt_en and susclk not mandatory for QCA Rome (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btqca: Fix the NVM baudrate tag offcet for wcn3991 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Not send vendor pre-shutdown command for QCA Rome (Gopal Tiwari) [1838924] - [net] Bluetooth: Support querying for WBS support through MGMT (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add flag to define wideband speech capability (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Remove a redundant assignment in 'h4_flush()' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Fix a typo in a comment (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Move variable into local scope (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Bug fixes while collecting controller memory dump (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: btrtl: Add support for RTL8822C (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: Fix a typo in Kconfig (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_uart: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_intel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btintel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add support for 13d3:3548 Realtek 8822CE device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Optimized code while enabling clocks for BT SOC (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Enable clocks required for BT SOC (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Use kvmalloc for FW allocations (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Enable power off/on support during hci down/up for QCA Rome (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Retry btsoc initialize when it fails (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add QCA Rome power off support to the qca_power_shutdown() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: enable IRQ capability from devicetree (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_vhci: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btsdio: Check for valid packet type (Gopal Tiwari) [1838924] - [net] Bluetooth: Add definitions (Gopal Tiwari) [1838924] - [net] Bluetooth: Add support for (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add qca_power_on() API to support both wcn399x and Rome power up (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm : Fix warning about missing blank lines after declarations (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Remove set but not used variable 'opcode' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Use vfree() instead of kfree() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add support for 04ca:3021 QCA_ROME device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Collect controller memory dump during SSR (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Drive RTS only for BCM43438 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Replace of_device_get_match_data with device_get_match_data (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add missing static inline in header (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Disable runtime suspend on Realtek devices (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix memory leak on fw (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix non-atomic allocation in completion handler (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Support pcm params in dts (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Support pcm configuration (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Disallow set_baudrate for BCM4354 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Edit the logical value for Realtek Bluetooth reset (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add entry for BCM4335A0 UART bluetooth (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add entry for BCM4334B0 UART Bluetooth (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix PM leak in error case of setup (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btqca: Rename ROME specific variables to generic variables (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btmtksdio: add MODULE_DEVICE_TABLE() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: Fix invalid-free in bcsp_close() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: add PM support (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Add compatible string for BCM43540 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: remove unneeded semicolon (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Fix RTS handling during startup (Gopal Tiwari) [1838924] - [bluetooth] Revert "Bluetooth: hci_qca: Add delay for wcn3990 stability" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Remove return statement in btintel_reset_to_bootloader (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Split qca_power_setup() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Use regulator bulk enable/disable (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Don't vote for specific voltage (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Update regulator_set_load() usage (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add delay for wcn3990 stability (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Trigger Intel FW download error recovery (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btwilink: drop superseded driver (Gopal Tiwari) [1838924] - [bluetooth] Revert "Bluetooth: hci_ll: set operational frequency earlier" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Fix an issue for the incorrect error return code (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Use IS_ENABLED instead of #ifdef (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: print FW version after FW download (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: avoid unused function warning (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_nokia: Save a few cycles in 'nokia_enqueue()' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Use cmd_timeout to reset Realtek device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Fix an issue that failing to download the FW which size is over 32K bytes (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Remove trailing newline from calls to rtl_dev macros (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for QCA UART Radio (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Remove redundant prefix from calls to rtl_dev macros (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY (Gopal Tiwari) [1838924] - [bluetooth] bluetooth: bcm: Add support for loading firmware for BCM4345C5 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Add firmware version print (Gopal Tiwari) [1838924] - [bluetooth] bluetooth: hci_bcm: Give more time to come out of reset (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: wait for Pre shutdown complete event before sending the Power off pulse (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Fix -Wunused-const-variable warnings (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Fix suspend issue for Realtek devices (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Remove redundant initializations to zero (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Make structure qca_proto constant (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: bpa10x: change return value (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: disable irqs when spinlock is acquired (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Additional Realtek 8822CE Bluetooth devices (Gopal Tiwari) [1838924]- [powerpc] powerpc/papr_scm: Implement support for PAPR_PDSM_HEALTH (Gustavo Duarte) [1782178] - [powerpc] ndctl/papr_scm, uapi: Add support for PAPR nvdimm specific methods (Gustavo Duarte) [1782178] - [powerpc] powerpc/papr_scm: Improve error logging and handling papr_scm_ndctl() (Gustavo Duarte) [1782178] - [powerpc] powerpc/papr_scm: Fetch nvdimm health information from PHYP (Gustavo Duarte) [1782178] - [lib] seq_buf: Export seq_buf_printf (Gustavo Duarte) [1782178] - [firmware] efi: Restrict efivar_ssdt_load when the kernel is locked down (Lenny Szubowicz) [1852949] - [netdrv] vmxnet3: allow rx flow hash ops only when rss is enabled (Cathy Avery) [1845417] - [netdrv] net: vmxnet3: fix possible buffer overflow caused by bad DMA value in vmxnet3_get_rss() (Cathy Avery) [1845417] - [netdrv] vmxnet3: use correct hdr reference when packet is encapsulated (Cathy Avery) [1845417] - [netdrv] vmxnet3: update to version 4 (Cathy Avery) [1845417] - [netdrv] vmxnet3: add geneve and vxlan tunnel offload support (Cathy Avery) [1845417] - [netdrv] vmxnet3: add support to get/set rx flow hash (Cathy Avery) [1845417] - [netdrv] vmxnet3: prepare for version 4 changes (Cathy Avery) [1845417] - [netdrv] vmxnet3: let core reject the unsupported coalescing parameters (Cathy Avery) [1845417] - [netdrv] vmxnet3: use new helper tcp_v6_gso_csum_prep (Cathy Avery) [1845417] - [netdrv] vmxnet3: Remove always false conditional statement (Cathy Avery) [1845417] - [kernel] kexec: do not verify the signature without the lockdown or mandatory signature (Lianbo Jiang) [1836148] - [fs] block: Fix use-after-free in blkdev_get() (Ming Lei) [1847779] - [kernel] kernel: rh_features: fix reading empty feature list from /proc (Jiri Benc) [1843064] {CVE-2020-10774} - [netdrv] ice: cleanup unsigned loops (Jonathan Toppins) [1781403] - [netdrv] ice: fix usage of incorrect variable (Jonathan Toppins) [1781403] - [netdrv] ice: Fix bad register reads (Jonathan Toppins) [1781403] - [netdrv] ice: check for compatibility between DDP package and firmware (Jonathan Toppins) [1781403] - [netdrv] ice: Check if unicast MAC exists before setting VF MAC (Jonathan Toppins) [1781403] - [netdrv] ice: print Rx MDD auto reset message before VF reset (Jonathan Toppins) [1781403] - [netdrv] ice: Call ice_aq_set_mac_cfg (Jonathan Toppins) [1781403] - [netdrv] ice: Implement aRFS (Jonathan Toppins) [1781403] - [netdrv] ice: Restore filters following reset (Jonathan Toppins) [1781403] - [netdrv] ice: Enable flex-bytes support (Jonathan Toppins) [1781403] - [netdrv] ice: Support IPv6 Flow Director filters (Jonathan Toppins) [1781403] - [netdrv] ice: Support IPv4 Flow Director filters (Jonathan Toppins) [1781403] - [netdrv] ice: Support displaying ntuple rules (Jonathan Toppins) [1781403] - [netdrv] ice: Initialize Flow Director resources (Jonathan Toppins) [1781403] - [netdrv] ice: Rename build_ctob to ice_build_ctob (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary backslash (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary check (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary expression that is always true (Jonathan Toppins) [1781405] - [netdrv] ice: Fix check for removing/adding mac filters (Jonathan Toppins) [1781405] - [netdrv] ice: refactor filter functions (Jonathan Toppins) [1781405] - [netdrv] ice: Fix resource leak on early exit from function (Jonathan Toppins) [1781405] - [netdrv] ice: cleanup vf_id signedness (Jonathan Toppins) [1781405] - [netdrv] ice: Fix casting issues (Jonathan Toppins) [1781405] - [netdrv] ice: Provide more meaningful error message (Jonathan Toppins) [1781405] - [netdrv] ice: Fix probe/open race condition (Jonathan Toppins) [1781405] - [netdrv] ice: only drop link once when setting pauseparams (Jonathan Toppins) [1781405] - [netdrv] ice: Fix check for contiguous TCs (Jonathan Toppins) [1781405] - [netdrv] ice: Don't reset and rebuild for Tx timeout on PFC enabled queue (Jonathan Toppins) [1781405] - [netdrv] ice: Add VF promiscuous support (Jonathan Toppins) [1781405] - [netdrv] ice: Add support for tunnel offloads (Jonathan Toppins) [1781405] - [netdrv] ice: report netlist version in .info_get (Jonathan Toppins) [1781405] - [netdrv] ice: add additional E810 device id (Jonathan Toppins) [1725447] - [x86] x86/split_lock: Update to use X86_MATCH_INTEL_FAM6_MODEL() (Prarit Bhargava) [1482757] - [x86] x86/intel_split_lock: Disable split lock detector by default in RHEL8 (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Provide handle_guest_split_lock() (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Add Tremont family CPU models (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Bits in IA32_CORE_CAPABILITIES are not architectural (Prarit Bhargava) [1482757] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (Prarit Bhargava) [1482757] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Avoid runtime reads of the TEST_CTRL MSR (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Rework the initialization flow of split lock detection (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Enable split lock detection by kernel (Prarit Bhargava) [1482757] - [netdrv] drivers/net/b44: Change to non-atomic bit operations on pwol_mask (Prarit Bhargava) [1482757] - [x86] x86/cpu: Align cpu_caps_cleared and cpu_caps_set to unsigned long (Prarit Bhargava) [1482757] - [x86] x86/boot: Make the GDT 8-byte aligned (Prarit Bhargava) [1482757] - [wireless] wlcore: simplify/fix/optimize reg_ch_conf_pending operations (Prarit Bhargava) [1482757] - [uapi] prctl: PR_{G, S}ET_IO_FLUSHER to support controlling memory reclaim (Waiman Long) [1757240]- [kernel] kernel: fork: avoid utilizing a non-initialized task_struct_rh pointer in the error exit path (Rafael Aquini) [1838475 1820041] - [infiniband] RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah() (Kamal Heib) [1846063] - [infiniband] RDMA/ipoib: Return void from ipoib_ib_dev_stop() (Kamal Heib) [1846063] - [powerpc] mm/pkeys: Make pkey access check work on execute_only_key (Greg Kurz) [1748772] - [powerpc] mm/book3s64: Fix MADV_DONTNEED and parallel page fault race (Greg Kurz) [1748772] - [mm] change pmdp_huge_get_and_clear_full take vm_area_struct as arg (Greg Kurz) [1748772] - [powerpc] mm/book3s64: Avoid sending IPI on clearing PMD (Greg Kurz) [1748772] - [powerpc] 64s: Fix THP PMD collapse serialisation (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use pte_present instead of opencoding _PAGE_PRESENT check (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in kvmppc_get_hpa (Greg Kurz) [1748772] - [powerpc] kvm/book3s: use find_kvm_host_pte in kvmppc_book3s_instantiate_page (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Avoid using rmap to protect parallel page table update (Greg Kurz) [1748772] - [powerpc] kvm/book3s: use find_kvm_host_pte in pute_tce functions (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in h_enter (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in page fault handler (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Add helper for host page table walk (Greg Kurz) [1748772] - [powerpc] kvm: ppc: Fix nested guest RC bits update (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use kvm helpers to walk shadow or secondary table (Greg Kurz) [1748772] - [powerpc] kvm/nested: Add helper to walk nested shadow linux page table (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Add helper to walk partition scoped linux page table (Greg Kurz) [1748772] - [powerpc] kvm/book3s: switch from raw_spin_*lock to arch_spin_lock (Greg Kurz) [1748772] - [powerpc] perf/callchain: Use __get_user_pages_fast in read_user_stack_slow (Greg Kurz) [1748772] - [powerpc] mce: Don't reload pte val in addr_to_pfn (Greg Kurz) [1748772] - [powerpc] book3s64/hash: Use the pte_t address from the caller (Greg Kurz) [1748772] - [powerpc] hash64: Restrict page table lookup using init_mm with __flush_hash_table_range (Greg Kurz) [1748772] - [powerpc] mm/hash64: use _PAGE_PTE when checking for pte_present (Greg Kurz) [1748772] - [powerpc] pkeys: Check vma before returning key fault error to the user (Greg Kurz) [1748772] - [powerpc] pkeys: Avoid using lockless page table walk (Greg Kurz) [1748772] - [powerpc] mmu: add is_strict_kernel_rwx() helper (Greg Kurz) [1748772] - [powerpc] mm: move update_mmu_cache() into book3s hash utils (Greg Kurz) [1748772] - [powerpc] mm: Move book3s32 specifics in subdirectory mm/book3s64 (Greg Kurz) [1748772] - [powerpc] mm: move FSL_BOOK3 version of update_mmu_cache() (Greg Kurz) [1748772] - [powerpc] mm: define empty update_mmu_cache() as static inline (Greg Kurz) [1748772] - [powerpc] change CONFIG_PPC_STD_MMU to CONFIG_PPC_BOOK3S (Greg Kurz) [1748772] - [powerpc] mm: don't use _PAGE_EXEC for calling hash_preload() (Greg Kurz) [1748772] - [powerpc] change CONFIG_PPC_STD_MMU_32 to CONFIG_PPC_BOOK3S_32 (Greg Kurz) [1748772] - [powerpc] handover page flags with a pgprot_t parameter (Greg Kurz) [1748772] - [powerpc] mm: properly set PAGE_KERNEL flags in ioremap() (Greg Kurz) [1748772] - [powerpc] 32: Add ioremap_wt() and ioremap_coherent() (Greg Kurz) [1748772] - [netdrv] crypto/chcr: error seen if CONFIG_CHELSIO_TLS_DEVICE isn't set (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: avoid -Wreturn-local-addr warning (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: fix EOTID leak when disabling TC-MQPRIO offload (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4/chcr: Enable ktls settings at run time (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: cleanup error code in setup_sge_queues_uld() (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: add adapter hotplug support for ULDs (Christoph von Recklinghausen) [1797945] - [crypto] Crypto: chelsio - Fixes a deadlock between rtnl_lock and uld_mutex (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4/chcr: nic-tls stats in ethtool (Christoph von Recklinghausen) [1797945] - [crypto] crypto/chcr: fix incorrect ipv6 packet length (Christoph von Recklinghausen) [1797945] - [crypto] crypto/chcr: Add missing include file (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: Add ipv6 support and statistics (Christoph von Recklinghausen) [1797945] - [crypto] chcr: Handle first or middle part of record (Christoph von Recklinghausen) [1797945] - [crypto] chcr: handle partial end part of a record (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: complete record tx handling (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: Save tx keys and handle HW response (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr : Register to tls add and del callback (Christoph von Recklinghausen) [1797945] - [hwmon] hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' (Al Stone) [1749529] - [netdrv] net/mlx4_core: fix a memory leak bug (Alaa Hleihel) [1846792] - [netdrv] net/mlx4_core: Add missing iounmap() in error path (Alaa Hleihel) [1846792] - [netdrv] net/mlx5: E-switch, Fix error unwinding flow for steering init failure (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: E-Switch, Enable chains only if regs loopback is enabled (Alaa Hleihel) [1848830 1846791] - [netdrv] net/mlx5e: en_tc: Rely just on register loopback for tunnel restoration (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: E-Switch, Skip restore modify header between prios of same chain (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: CT: Fix ipv6 nat header rewrite actions (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Don't fail driver on failure to create debugfs (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Add missing mutex destroy (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Fix devlink objects and devlink device unregister sequence (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Wait for inactive autogroups (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Disable reload while removing the device (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: Fix ethtool hfunc configuration change (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: Fix repeated XSK usage on one channel (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Split RX and TX lock for parallel insertion (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Add a spinlock to protect the send ring (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Fix freeing in dr_create_rc_qp() (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Fix fatal error handling during device load (Alaa Hleihel) [1846791 1841363] - [netdrv] net/mlx5: drain health workqueue in case of driver load error (Alaa Hleihel) [1846791 1841363] - [netdrv] net/mlx5: Drain wq first during PCI device removal (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Have single error unwinding path (Alaa Hleihel) [1846791] - [netdrv] mlx5: reject unsupported coalescing params (Alaa Hleihel) [1846791] - [crypto] Crypto: chelsio - Fixes a hang issue during driver registration (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Use multiple txq/rxq per tfm to process the requests (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Recalculate iv only if it is needed (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - un-register crypto algorithms (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Endianess bug in create_authenc_wr (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Print the chcr driver information while module load (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - This fixes the libkcapi's cbc(aes) aio fail test cases (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Resetting crypto counters during the driver unregister (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - fix writing tfm flags to wrong place (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - calculating tx_channel_id as per the max number of channels (Vishal Kulkarni) [1845004] - [firmware] tpm: check event log version before reading final events (Jerry Snitselaar) [1839284] - [char] tpm: Fix TIS locality timeout problems (Jerry Snitselaar) [1840789]- [vfio] vfio/pci: Clear error and request eventfd ctx after releasing (Alex Williamson) [1847731] - [fs] pNFS/flexfiles: Fix list corruption if the mirror count changes (Benjamin Coddington) [1852500] - [netdrv] ionic: update the queue count on open (Michal Schmidt) [1846879] - [tools] turbostat: Use sched_getcpu() instead of hardcoded cpu 0 (Prarit Bhargava) [1852123] - [infiniband] RDMA/hfi1: Fix null-pointer dereference when calling mmu_notifier_register (Kamal Heib) [1850345] - [platform] Revert "intel-speed-select: Firmware workarounds for Icelake" (Prarit Bhargava) [1820597] - [powerpc] powerpc/crashkernel: Take "mem=" option into account (Pingfan Liu) [1747969] - [tools] perf stat: Increase perf metric output resolution (Michael Petlan) [1844632] - [tools] perf vendor events power9: Add missing metrics to POWER9 'cpi_breakdown' (Michael Petlan) [1844632] - [tools] perf metrics: Fix parse errors in power8 metrics (Michael Petlan) [1844632] - [tools] perf metrics: Fix parse errors in power9 metrics (Michael Petlan) [1844632] - [s390] s390/kaslr: add support for R_390_JMP_SLOT relocation type (Claudio Imbrenda) [1850908] - [s390] s390: prevent leaking kernel address in BEAR (Claudio Imbrenda) [1850907] - [s390] s390/cpumf: Adjust registration of s390 PMU device drivers (Claudio Imbrenda) [1850906] - [firmware] efi/x86: Add TPM related EFI tables to unencrypted mapping checks (Lenny Szubowicz) [1849922] - [security] selinux: allow reading labels before policy is loaded (Ondrej Mosnacek) [1839819] - [idle] intel_idle: Introduce 'use_acpi' module parameter (Prarit Bhargava) [1849666] - [net] xsk: Add overflow check for u64 division, stored into u32 (Jiri Benc) [1838075] - [tools] selftests: netdevsim: Always initialize 'RET' variable (Jiri Benc) [1838075] - [netdrv] netdevsim: Ensure policer drop counter always increases (Jiri Benc) [1838075] - [tools] selftests/bpf: Check for correct program attach/detach in xdp_attach test (Jiri Benc) [1838075] - [tools] libbpf: Fix type of old_fd in bpf_xdp_set_link_opts (Jiri Benc) [1838075] - [net] xsk: Add missing check on user supplied headroom size (Jiri Benc) [1838075] - [net] xdp: Reset prog in dev_change_xdp_fd when fd is negative (Jiri Benc) [1838075] - [netdrv] veth: rely on peer veth_rq for ndo_xdp_xmit accounting (Jiri Benc) [1838075] - [netdrv] veth: rely on veth_rq in veth_xdp_flush_bq signature (Jiri Benc) [1838075] - [net] page pool: allow to pass zero flags to page_pool_init() (Jiri Benc) [1838075] - [tools] selftests/bpf: Add tests for attaching XDP programs (Jiri Benc) [1838075] - [tools] libbpf: Add function to set link XDP fd while specifying old program (Jiri Benc) [1838075] - [tools] Add EXPECTED_FD-related definitions in if_link.h (Jiri Benc) [1838075] - [net] xdp: Support specifying expected existing program when attaching XDP (Jiri Benc) [1838075] - [netdrv] veth: remove atomic64_add from veth_xdp_xmit hotpath (Jiri Benc) [1838075] - [netdrv] veth: introduce more xdp counters (Jiri Benc) [1838075] - [netdrv] veth: distinguish between rx_drops and xdp_drops (Jiri Benc) [1838075] - [netdrv] veth: introduce more specialized counters in veth_stats (Jiri Benc) [1838075] - [netdrv] veth: move xdp stats in a dedicated structure (Jiri Benc) [1838075] - [net] xdp: Replace zero-length array with flexible-array member (Jiri Benc) [1838075] - [net] bpf: inet_diag: Dump bpf_sk_storages in inet_diag_dump() (Jiri Benc) [1838075] - [net] bpf: INET_DIAG support in bpf_sk_storage (Jiri Benc) [1838075] - [net] inet_diag: Move the INET_DIAG_REQ_BYTECODE nlattr to cb->data (Jiri Benc) [1838075] - [net] inet_diag: Refactor inet_sk_diag_fill(), dump(), and dump_one() (Jiri Benc) [1838075] - [net] inet_diag: return classid for all socket types (Jiri Benc) [1838075] - [net] inet_diag: fix reporting cgroup classid and fallback to priority (Jiri Benc) [1838075] - [net] Remove unneeded export of a couple of xdp generic functions (Jiri Benc) [1838075] - [net] page_pool: API cleanup and comments (Jiri Benc) [1838075] - [net] bpf, sockmap: Replace zero-length array with flexible-array member (Jiri Benc) [1838075] - [netdrv] geneve: allow changing DF behavior after creation (Sabrina Dubroca) [1847861] - [net] netfilter: nf_tables: add missing ->release_ops() in error path of newrule() (Andrea Claudi) [1846236] - [net] netfilter: nft_compat: use .release_ops and remove list of extension (Andrea Claudi) [1846236] - [net] ipv6: fix IPV6_ADDRFORM operation logic (Hangbin Liu) [1842025] - [net] ipv6: fix restrict IPV6_ADDRFORM operation (Hangbin Liu) [1842025] - [net] netfilter: nat: fix error handling upon registering inet hook (Florian Westphal) [1579145] - [net] netfilter: nf_tables: fix module autoload for redir (Florian Westphal) [1579145] - [net] netfilter: nf_tables: fix module autoload with inet family (Florian Westphal) [1579145] - [net] netfilter: nft_chain_nat: inet family is missing module ownership (Florian Westphal) [1579145] - [net] netfilter: nf_tables: Support auto-loading for inet nat (Florian Westphal) [1579145] - [net] netfilter: nft_redir: fix module autoload with ip4 (Florian Westphal) [1579145] - [net] netfilter: nat: fix udp checksum corruption (Florian Westphal) [1579145] - [tools] kselftests: extend nft_nat with inet family based nat hooks (Florian Westphal) [1579145] - [net] netfilter: nft_redir: add inet support (Florian Westphal) [1579145] - [net] netfilter: nft_masq: add inet support (Florian Westphal) [1579145] - [net] netfilter: nf_tables: merge route type into core (Florian Westphal) [1579145] - [net] netfilter: nat: add inet family nat support (Florian Westphal) [1579145] - [net] netfilter: nat: don't register device notifier twice (Florian Westphal) [1579145] - [net] netfilter: nf_tables: merge ipv4 and ipv6 nat chain types (Florian Westphal) [1579145] - [net] netfilter: nf_tables: nat: merge nft_masq protocol specific modules (Florian Westphal) [1579145] - [net] netfilter: nf_tables: nat: merge nft_redir protocol specific modules (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l3proto.h and nf_nat_core.h (Florian Westphal) [1579145] - [net] netfilter: nat: remove l3proto struct (Florian Westphal) [1579145] - [net] netfilter: nat: remove csum_recalc hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove csum_update hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove l3 manip_pkt hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l4proto.h (Florian Westphal) [1579145] - [net] netfilter: nat: merge nf_nat_ipv4, 6 into nat core (Florian Westphal) [1579145] - [net] netfilter: nat: fix spurious connection timeouts (Florian Westphal) [1579145] - [net] netfilter: nat: move nlattr parse and xfrm session decode to core (Florian Westphal) [1579145] - [net] netfilter: nat: merge ipv4 and ipv6 masquerade functionality (Florian Westphal) [1579145] - [net] netfilter: kconfig: nat related expression depend on nftables core (Florian Westphal) [1579145] - [net] netfilter: conntrack: fix bogus port values for other l4 protocols (Florian Westphal) [1579145] - [net] netfilter: conntrack: avoid unneeded nf_conntrack_l4proto lookups (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove pernet l4 proto register interface (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove remaining l4proto indirect packet calls (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove module owner field (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove invert_tuple callback (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove pkt_to_tuple callback (Florian Westphal) [1579145] - [net] netfilter: conntrack: udp: set stream timeout to 2 minutes (Florian Westphal) [1579145] - [net] netfilter: conntrack: udp: only extend timeout to stream mode after 2s (Florian Westphal) [1579145] - [net] netfilter: nat: un-export nf_nat_used_tuple (Florian Westphal) [1579145] - [net] netfilter: nat: fix ICMP header corruption on ICMP errors (Florian Westphal) [1579145] - [net] netfilter: nat: fix icmp id randomization (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l4proto struct (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->manip_pkt (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->nlattr_to_range (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->in_range (Florian Westphal) [1579145] - [net] netfilter: nat: fold in_range indirection into caller (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->unique_tuple (Florian Westphal) [1579145] - [net] netfilter: nat: un-export nf_nat_l4proto_unique_tuple (Florian Westphal) [1579145] - [net] netfilter: remove NF_NAT_RANGE_PROTO_RANDOM support (Florian Westphal) [1579145] - [x86] kvm: x86/pmu: Tweak kvm_pmu_get_msr to pass 'struct msr_data' in (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: do not pass poisoned hva to __kvm_set_memory_region (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: fix sync_with_host() in smm_test (Vitaly Kuznetsov) [1849987] - [x86] kvm: async_pf: Inject 'page ready' event only if 'page not present' was previously injected (Vitaly Kuznetsov) [1849987] - [x86] revert "kvm: async_pf: Fix #DF due to inject "Page not Present" and "Page Ready" exceptions simultaneously" (Vitaly Kuznetsov) [1849987] - [virt] kvm: async_pf: Cleanup kvm_setup_async_pf() (Vitaly Kuznetsov) [1849987] - [x86] kvm: i8254: remove redundant assignment to pointer s (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: respect singlestep when emulating instruction (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Don't probe KVM_CAP_HYPERV_ENLIGHTENED_VMCS when nested VMX is unsupported (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: do not substitute SVM/VMX check with KVM_CAP_NESTED_STATE check (Vitaly Kuznetsov) [1849987] - [x86] kvm: nvmx: Consult only the "basic" exit reason when routing nested exit (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Unexport x86_fpu_cache and make it static (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Ignore KVM 5-level paging support for VM_MODE_PXXV48_4K (Vitaly Kuznetsov) [1849987] - [virt] kvm: x86: Fix APIC page invalidation race (Vitaly Kuznetsov) [1849987] - [x86] kvm: svm: fix calls to is_intercept (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: fix vmx_preemption_timer_test build with GCC10 (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Add x86_64/debug_regs to .gitignore (Vitaly Kuznetsov) [1849987] - [x86] revert "kvm: x86: work around leak of uninitialized stack contents" (Vitaly Kuznetsov) [1849987] - [x86] kvm: vmx: Properly handle kvm_read/write_guest_virt*() result (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: emulate reserved nops from 0f/18 to 0f/1f (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Fix build with "make ARCH=x86_64" (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: minor code refactor and comments fixup around dirty logging (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: avoid unnecessary rmap walks when creating/moving slots (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: remove unnecessary rmap walk of read-only memslots (Vitaly Kuznetsov) [1849987] - [virt] kvm: Use vmemdup_user() (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Move MPK feature detection to common code (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Assign correct value to array.maxnent (Vitaly Kuznetsov) [1849987] - [x86] kvm: let kvm_destroy_vm_debugfs clean up vCPU debugfs directories (Vitaly Kuznetsov) [1849987] - [x86] kvm: Handle reads of SandyBridge RAPL PMU MSRs rather than injecting #GP (Vitaly Kuznetsov) [1849987] - [documentation] docs: virt/kvm: close inline string literal (Vitaly Kuznetsov) [1849987] - [documentation] docs: kvm: Fix KVM_KVMCLOCK_CTRL API doc (Vitaly Kuznetsov) [1849987] - [x86] arch/x86/kvm/svm/sev.c: change flag passed to GUP fast in sev_pin_memory() (Vitaly Kuznetsov) [1849987] - [virt] kvm/eventfd: remove unneeded conversion to bool (Vitaly Kuznetsov) [1849987] - [tools] selftests: fix kvm relocatable native/cross builds and installs (Vitaly Kuznetsov) [1849987] - [virt] kvm: x86: move kvm_create_vcpu_debugfs after last failure point (Vitaly Kuznetsov) [1849987] - [powerpc] xive: Share the event-queue page with the Hypervisor (Michael Roth) [1837232] - [powerpc] kvm: ppc: book3s hv: Read ibm, secure-memory nodes (Michael Roth) [1837232] - [powerpc] kvm: ppc: book3s hv: Relax check on H_SVM_INIT_ABORT (Michael Roth) [1837232]- [scsi] scsi: be2iscsi: Use scnprintf() for avoiding potential buffer overflow (Maurizio Lombardi) [1849586] - [edac] EDAC/i10nm: Update driver to support different bus number config register offsets (Aristeu Rozanski) [1838508] - [edac] EDAC, {skx, i10nm}: Make some configurations CPU model specific (Aristeu Rozanski) [1838508] - [fs] fuse: copy_file_range should truncate cache (Miklos Szeredi) [1849786] - [fs] fuse: fix copy_file_range cache issues (Miklos Szeredi) [1849786] - [fs] fuse: update attr_version counter on fuse_notify_inval_inode() (Miklos Szeredi) [1849786] - [fs] fuse: don't check refcount after stealing page (Miklos Szeredi) [1849786] - [fs] fuse: fix weird page warning (Miklos Szeredi) [1849786] - [fs] fuse: use dump_page (Miklos Szeredi) [1849786] - [fs] fuse: always allow query of st_dev (Miklos Szeredi) [1849786] - [fs] fuse: always flush dirty data on close(2) (Miklos Szeredi) [1849786] - [fs] fuse: invalidate inode attr in writeback cache mode (Miklos Szeredi) [1849786] - [fs] virtiofs: schedule blocking async replies in separate worker (Miklos Szeredi) [1849786] - [fs] fuse: Support RENAME_WHITEOUT flag (Miklos Szeredi) [1849786] - [fs] fuse: don't overflow LLONG_MAX with end offset (Miklos Szeredi) [1849786] - [fs] fix up iter on short count in fuse_direct_io() (Miklos Szeredi) [1849786] - [fs] fuse: fix fuse_send_readpages() in the syncronous read case (Miklos Szeredi) [1849786] - [fs] fuse: fix Kconfig indentation (Miklos Szeredi) [1849786] - [fs] virtiofs: Use completions while waiting for queue to be drained (Miklos Szeredi) [1849786] - [fs] virtiofs: Do not send forget request "struct list_head" element (Miklos Szeredi) [1849786] - [fs] virtiofs: Use a common function to send forget (Miklos Szeredi) [1849786] - [fs] virtiofs: Fix old-style declaration (Miklos Szeredi) [1849786] - [fs] fuse: verify nlink (Miklos Szeredi) [1849786] - [fs] fuse: verify write return (Miklos Szeredi) [1849786] - [fs] fuse: verify attributes (Miklos Szeredi) [1849786] - [fs] fuse: redundant get_fuse_inode() calls in fuse_writepages_fill() (Miklos Szeredi) [1849786] - [fs] fuse: truncate pending writes on O_TRUNC (Miklos Szeredi) [1849786] - [fs] fuse: flush dirty data/metadata before non-truncate setattr (Miklos Szeredi) [1849786] - [fs] ovl: initialize error in ovl_copy_xattr (Miklos Szeredi) [1849770] - [fs] ovl: fix redirect traversal on metacopy dentries (Miklos Szeredi) [1849770] - [fs] ovl: initialize OVL_UPPERDATA in ovl_lookup() (Miklos Szeredi) [1849770] - [fs] ovl: use only uppermetacopy state in ovl_lookup() (Miklos Szeredi) [1849770] - [fs] ovl: simplify setting of origin for index lookup (Miklos Szeredi) [1849770] - [fs] ovl: fix out of bounds access warning in ovl_check_fb_len() (Miklos Szeredi) [1849770] - [fs] ovl: return required buffer size for file handles (Miklos Szeredi) [1849770] - [fs] ovl: sync dirty data when remounting to ro mode (Miklos Szeredi) [1849770] - [fs] ovl: resolve more conflicting mount options (Miklos Szeredi) [1849770] - [fs] ovl: potential crash in ovl_fid_to_fh() (Miklos Szeredi) [1849770] - [fs] ovl: clear ATTR_OPEN from attr->ia_valid (Miklos Szeredi) [1849770] - [fs] ovl: clear ATTR_FILE from attr->ia_valid (Miklos Szeredi) [1849770] - [documentation] ovl: document xino expected behavior (Miklos Szeredi) [1849770] - [fs] ovl: enable xino automatically in more cases (Miklos Szeredi) [1849770] - [fs] ovl: avoid possible inode number collisions with xino=on (Miklos Szeredi) [1849770] - [fs] ovl: use a private non-persistent ino pool (Miklos Szeredi) [1849770] - [fs] ovl: fix WARN_ON nlink drop to zero (Miklos Szeredi) [1849770] - [fs] ovl: fix a typo in comment (Miklos Szeredi) [1849770] - [fs] ovl: replace zero-length array with flexible-array member (Miklos Szeredi) [1849770] - [fs] ovl: ovl_obtain_alias(): don't call d_instantiate_anon() for old (Miklos Szeredi) [1849770] - [fs] ovl: strict upper fs requirements for remote upper fs (Miklos Szeredi) [1849770] - [fs] ovl: check if upper fs supports RENAME_WHITEOUT (Miklos Szeredi) [1849770] - [fs] ovl: allow remote upper (Miklos Szeredi) [1849770] - [fs] ovl: decide if revalidate needed on a per-dentry basis (Miklos Szeredi) [1849770] - [fs] ovl: separate detection of remote upper layer from stacked overlay (Miklos Szeredi) [1849770] - [fs] ovl: restructure dentry revalidation (Miklos Szeredi) [1849770] - [fs] ovl: ignore failure to copy up unknown xattrs (Miklos Szeredi) [1849770] - [documentation] ovl: document permission model (Miklos Szeredi) [1849770] - [fs] ovl: simplify i_ino initialization (Miklos Szeredi) [1849770] - [fs] ovl: factor out helper ovl_get_root() (Miklos Szeredi) [1849770] - [fs] ovl: fix out of date comment and unreachable code (Miklos Szeredi) [1849770] - [fs] ovl: fix value of i_ino for lower hardlink corner case (Miklos Szeredi) [1849770] - [fs] ovl: fix lockdep warning for async write (Miklos Szeredi) [1849770] - [fs] ovl: fix some xino configurations (Miklos Szeredi) [1849770] - [fs] ovl: fix lock in ovl_llseek() (Miklos Szeredi) [1849770] - [fs] ovl: fix lseek overflow on 32bit (Miklos Szeredi) [1849770] - [documentation] docs: filesystems: add overlayfs to index.rst (Miklos Szeredi) [1849770] - [fs] ovl: add splice file read write helper (Miklos Szeredi) [1849770] - [fs] ovl: implement async IO routines (Miklos Szeredi) [1849770] - [fs] vfs: add vfs_iocb_iter_helper functions (Miklos Szeredi) [1849770] - [fs] ovl: layer is const (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of non-constant st_dev; st_ino (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of conflicting lower layer uuid (Miklos Szeredi) [1849770] - [fs] ovl: generalize the lower_fsarray (Miklos Szeredi) [1849770] - [fs] ovl: simplify ovl_same_sb() helper (Miklos Szeredi) [1849770] - [fs] ovl: generalize the lower_layersarray (Miklos Szeredi) [1849770] - [fs] ovl: improving copy-up efficiency for big sparse file (Miklos Szeredi) [1849770] - [fs] ovl: use ovl_inode_lock in ovl_llseek() (Miklos Szeredi) [1849770] - [fs] ovl: use pr_fmt auto generate prefix (Miklos Szeredi) [1849770] - [fs] ovl: fix wrong WARN_ON() in ovl_cache_update_ino() (Miklos Szeredi) [1849770] - [fs] locks: print unsigned ino in /proc/locks (Miklos Szeredi) [1849770] - [documentation] docs: filesystems: overlayfs: Fix restview warnings (Miklos Szeredi) [1849770] - [fs] ovl: relax WARN_ON() on rename to self (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of non-unique st_dev; st_ino (Miklos Szeredi) [1849770] - [fs] ovl: don't use a temp buf for encoding real fh (Miklos Szeredi) [1849770] - [fs] ovl: make sure that real fid is 32bit aligned in memory (Miklos Szeredi) [1849770] - [fs] ovl: fix lookup failure on multi lower squashfs (Miklos Szeredi) [1849770] - [fs] ovl: filter of trusted xattr results in audit (Miklos Szeredi) [1849770] - [fs] ovl: Fix dereferencing possible ERR_PTR() (Miklos Szeredi) [1849770] - [fs] ovl: fix regression caused by overlapping layers detection (Miklos Szeredi) [1849770] - [fs] ovl: make i_ino consistent with st_ino in more cases (Miklos Szeredi) [1849770] - [fs] ovl: fix typo in MODULE_PARM_DESC (Miklos Szeredi) [1849770] - [fs] ovl: fix bogus -Wmaybe-unitialized warning (Miklos Szeredi) [1849770] - [fs] ovl: don't fail with disconnected lower NFS (Miklos Szeredi) [1849770] - [fs] ovl: detect overlapping layers (Miklos Szeredi) [1849770] - [fs] ovl: using posix_acl_xattr_size() to get size instead of posix_acl_to_xattr() (Miklos Szeredi) [1849770] - [fs] ovl: abstract ovl_inode lock with a helper (Miklos Szeredi) [1849770] - [fs] ovl: remove the 'locked' argument of ovl_nlink_{start, end} (Miklos Szeredi) [1849770] - [fs] ovl: relax requirement for non null uuid of lower fs (Miklos Szeredi) [1849770] - [fs] ovl: fold copy-up helpers into callers (Miklos Szeredi) [1849770] - [fs] ovl: untangle copy up call chain (Miklos Szeredi) [1849770] - [fs] ovl: clean up error handling in ovl_get_tmpfile() (Miklos Szeredi) [1849770] - [netdrv] ionic: tame the watchdog timer on reconfig (Jonathan Toppins) [1846879 1846280] - [remoteproc] remoteproc: pull in slab.h (Jarod Wilson) [1849080]- [x86] revert "kvm: vmx: Micro-optimize vmexit time when not exposing PMU" (Vitaly Kuznetsov) [1844099] - [fs] nfsd4: kill warnings on testing stateids with mismatched clientids (Benjamin Coddington) [1765672] - [fs] NFS: Ensure security label is set for root inode (Scott Mayhew) [1660798] - [s390] kexec: Fix file verification on S390 (Lianbo Jiang) [1815369] - [s390] kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE (Lianbo Jiang) [1815369] - [netdrv] ibmvnic: continue to init in CRQ reset returns H_CLOSED (Steve Best) [1850179] - [net] sunrpc: add missing newline when printing parameter 'auth_hashtable_size' by sysfs (Benjamin Coddington) [1849998] - [net] sunrpc: clean up properly in gss_mech_unregister() (Benjamin Coddington) [1849998] - [net] sunrpc: svcauth_gss_register_pseudoflavor must reject duplicate registrations (Benjamin Coddington) [1849998] - [net] SUNRPC: Fix backchannel RPC soft lockups (Benjamin Coddington) [1849998] - [fs] NFS: Fix a page leak in nfs_destroy_unlinked_subrequests() (Benjamin Coddington) [1849998] - [fs] nfsd4: make drc_slab global, not per-net (Benjamin Coddington) [1849998] - [net] SUNRPC: Fix GSS privacy computation of auth->au_ralign (Benjamin Coddington) [1849998] - [net] SUNRPC: Add "@len" parameter to gss_unwrap() (Benjamin Coddington) [1849998] - [fs] NFS: finish_automount() requires us to hold 2 refs to the mount record (Benjamin Coddington) [1849998] - [fs] NFS: Fix use-after-free issues in nfs_pageio_add_request() (Benjamin Coddington) [1849998] - [fs] NFS: alloc_nfs_open_context() must use the file cred when available (Benjamin Coddington) [1849998] - [net] libceph: don't omit used_replica in target_copy() (Jeff Layton) [1847528] - [net] libceph: don't omit recovery_deletes in target_copy() (Jeff Layton) [1847528] - [net] libceph: move away from global osd_req_flags (Jeff Layton) [1847528] - [fs] ceph: skip checking caps when session reconnecting and releasing reqs (Jeff Layton) [1847528] - [fs] ceph: make sure mdsc->mutex is nested in s->s_mutex to fix dead lock (Jeff Layton) [1847528] - [fs] ceph: don't return -ESTALE if there's still an open file (Jeff Layton) [1847528] - [include] libceph, rbd: replace zero-length array with flexible-array (Jeff Layton) [1847528] - [fs] ceph: allow rename operation under different quota realms (Jeff Layton) [1847528] - [fs] ceph: normalize 'delta' parameter usage in check_quota_exceeded (Jeff Layton) [1847528] - [fs] ceph: ceph_kick_flushing_caps needs the s_mutex (Jeff Layton) [1847528] - [fs] ceph: request expedited service on session's last cap flush (Jeff Layton) [1847528] - [fs] ceph: convert mdsc->cap_dirty to a per-session list (Jeff Layton) [1847528] - [fs] ceph: reset i_requested_max_size if file write is not wanted (Jeff Layton) [1847528] - [fs] ceph: throw a warning if we destroy session with mutex still locked (Jeff Layton) [1847528] - [fs] ceph: fix potential race in ceph_check_caps (Jeff Layton) [1847528] - [fs] ceph: document what protects i_dirty_item and i_flushing_item (Jeff Layton) [1847528] - [fs] ceph: don't take i_ceph_lock in handle_cap_import (Jeff Layton) [1847528] - [fs] ceph: don't release i_ceph_lock in handle_cap_trunc (Jeff Layton) [1847528] - [fs] ceph: add comments for handle_cap_flush_ack logic (Jeff Layton) [1847528] - [fs] ceph: split up __finish_cap_flush (Jeff Layton) [1847528] - [fs] ceph: reorganize __send_cap for less spinlock abuse (Jeff Layton) [1847528] - [fs] ceph: flush release queue when handling caps for unknown inode (Jeff Layton) [1847528] - [net] libceph: ignore pool overlay and cache logic on redirects (Jeff Layton) [1847528] - [x86] kvm: lapic: ensure APIC map is up to date on concurrent update requests (Igor Mammedov) [1835330] - [x86] kvm: lapic: fix broken vcpu hotplug (Igor Mammedov) [1835330] - [netdrv] net: hns3: add some error checking in hclge_tm module (Mark Langsdorf) [1809057] {CVE-2019-15925} - [fs] udf: Fix mounting of Win7 created UDF filesystems (Oleksandr Natalenko) [1842400] - [netdrv] net: qed: fixes crash while running driver in kdump kernel (Manish Chopra) [1727746] - [netdrv] net: qed: Disable SRIOV functionality inside kdump kernel (Manish Chopra) [1727746] - [netdrv] net: qed*: Reduce RX and TX default ring count when running inside kdump kernel (Manish Chopra) [1727746] - [fs] cifs: dump Security Type info in DebugData (Leif Sahlberg) [1845390] - [net] netfilter: flowtable: Make nf_flow_table_offload_add/del_cb inline (Marcelo Leitner) [1840938] - [net] sched: act_ct: Make tcf_ct_flow_table_restore_skb inline (Marcelo Leitner) [1840938] - [net] netfilter: flowtable: Add pending bit for offload work (Marcelo Leitner) [1842670] - [net] Evict neighbor entries on carrier down (Ivan Vecera) [1845352] - [net] bridge: explicitly zero is_sticky in fdb_create (Ivan Vecera) [1845350] - [net] bridge: add support for sticky fdb entries (Ivan Vecera) [1845350] - [net] remove indirect block netdev event registration (Marcelo Leitner) [1841300] - [netdrv] bnxt_tc: update indirect block support (Marcelo Leitner) [1841300] - [netdrv] nfp: update indirect block support (Marcelo Leitner) [1841300] - [netdrv] mlx5: update indirect block support (Marcelo Leitner) [1841300] - [net] use flow_indr_dev_setup_offload() (Marcelo Leitner) [1841300] - [net] cls_api: add tcf_block_offload_init() (Marcelo Leitner) [1841300] - [net] flow_offload: consolidate indirect flow_block infrastructure (Marcelo Leitner) [1841300] - [net] netfilter: nf_flowtable: expose nf_flow_table_gc_cleanup() (Marcelo Leitner) [1841300] - [fs] iomap: Handle memory allocation failure in readahead (Carlos Maiolino) [1828792] - [fs] iomap: fix comments in iomap_dio_rw (Carlos Maiolino) [1828792] - [fs] iomap: Remove pgoff from tracepoints (Carlos Maiolino) [1828792] - [fs] fs: Fix page_mkwrite off-by-one errors (Carlos Maiolino) [1828792] - [fs] iomap: stop using ioend after it's been freed in iomap_finish_ioend() (Carlos Maiolino) [1828792] - [fs] iomap: fix sub-page uptodate handling (Carlos Maiolino) [1828792] - [fs] iomap: remove unneeded variable in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: Do not create fake iter in iomap_dio_bio_actor() (Carlos Maiolino) [1828792] - [fs] iomap: trace iomap_appply results (Carlos Maiolino) [1828792] - [fs] fs/iomap: remove redundant check in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: use a srcmap for a read-modify-write I/O (Carlos Maiolino) [1828792] - [fs] iomap: renumber IOMAP_HOLE to 0 (Carlos Maiolino) [1828792] - [fs] iomap: use write_begin to read pages to unshare (Carlos Maiolino) [1828792] - [fs] iomap: move the zeroing case out of iomap_read_page_sync (Carlos Maiolino) [1828792] - [fs] iomap: ignore non-shared or non-data blocks in xfs_file_dirty (Carlos Maiolino) [1828792] - [fs] iomap: always use AOP_FLAG_NOFS in iomap_write_begin (Carlos Maiolino) [1828792] - [fs] iomap: remove the unused iomap argument to __iomap_write_end (Carlos Maiolino) [1828792] - [fs] iomap: better document the IOMAP_F_* flags (Carlos Maiolino) [1828792] - [fs] iomap: enhance writeback error message (Carlos Maiolino) [1828792] - [fs] iomap: pass a struct page to iomap_finish_page_writeback (Carlos Maiolino) [1828792] - [fs] iomap: cleanup iomap_ioend_compare (Carlos Maiolino) [1828792] - [fs] iomap: move struct iomap_page out of iomap.h (Carlos Maiolino) [1828792] - [fs] iomap: warn on inline maps in iomap_writepage_map (Carlos Maiolino) [1828792] - [fs] iomap: lift the xfs writeback code to iomap (Carlos Maiolino) [1828792] - [fs] iomap: lift common tracing code from xfs to iomap (Carlos Maiolino) [1828792] - [fs] iomap: zero newly allocated mapped blocks (Carlos Maiolino) [1828792] - [fs] xfs: remove the fork fields in the writepage_ctx and ioend (Carlos Maiolino) [1828792] - [fs] xfs: turn io_append_trans into an io_private void pointer (Carlos Maiolino) [1828792] - [fs] xfs: refactor the ioend merging code (Carlos Maiolino) [1828792] - [fs] xfs: use a struct iomap in xfs_writepage_ctx (Carlos Maiolino) [1828792] - [fs] xfs: set IOMAP_F_NEW more carefully (Carlos Maiolino) [1828792] - [fs] xfs: initialize iomap->flags in xfs_bmbt_to_iomap (Carlos Maiolino) [1828792] - [fs] xfs: Use iomap_dio_rw to wait for unaligned direct IO (Carlos Maiolino) [1828792] - [fs] iomap: Allow forcing of waiting for running DIO in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: move the iomap_dio_rw ->end_io callback into a structure (Carlos Maiolino) [1828792] - [fs] iomap: split size and error for iomap_dio_rw ->end_io (Carlos Maiolino) [1828792] - [fs] iomap: fix Invalid License ID (Carlos Maiolino) [1828792] - [fs] iomap: move internal declarations into fs/iomap/ (Carlos Maiolino) [1828792] - [fs] iomap: move the main iteration code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the buffered IO code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the direct IO code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the SEEK_HOLE code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the file mapping reporting code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the swapfile code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: start moving code to fs/iomap/ (Carlos Maiolino) [1828792] - [fs] iomap: move iomap_read_inline_data around (Carlos Maiolino) [1828792] - [fs] iomap: convert to SPDX identifier (Carlos Maiolino) [1828792] - [fs] iomap: remove duplicated include from iomap.c (Carlos Maiolino) [1828792] - [netdrv] fjes: Handle workqueue allocation failure (Masayoshi Mizuma) [1830565] {CVE-2019-16231}- [fs] NFSv4: Ensure the delegation cred is pinned when we call delegreturn (Benjamin Coddington) [1848933] - [fs] NFSv4: Ensure the delegation is pinned in nfs_do_return_delegation() (Benjamin Coddington) [1848933] - [fs] NFSv4.1 make cachethis=no for writes (Benjamin Coddington) [1848933] - [fs] NFSv4: Fix revalidation of dentries with delegations (Benjamin Coddington) [1848933] - [fs] NFSv4: Fix races between open and dentry revalidation (Benjamin Coddington) [1848933] - [fs] NFS: Fix up directory verifier races (Benjamin Coddington) [1848933] - [net] sunrpc: expiry_time should be seconds not timeval (Benjamin Coddington) [1848933] - [fs] NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals (Benjamin Coddington) [1848933] - [fs] NFSv4: try lease recovery on NFS4ERR_EXPIRED (Benjamin Coddington) [1848933] - [fs] NFS: Fix memory leaks (Benjamin Coddington) [1848933] - [fs] nfs: optimise readdir cache page invalidation (Benjamin Coddington) [1848933] - [fs] NFS: Switch readdir to using iterate_shared() (Benjamin Coddington) [1848933] - [fs] NFS: Use kmemdup_nul() in nfs_readdir_make_qstr() (Benjamin Coddington) [1848933] - [fs] NFS: Directory page cache pages need to be locked when read (Benjamin Coddington) [1848933] - [fs] NFS: Fix memory leaks and corruption in readdir (Benjamin Coddington) [1848933] - [net] SUNRPC: Use kmemdup_nul() in rpc_parse_scope_id() (Benjamin Coddington) [1848933] - [fs] NFS: Replace various occurrences of kstrndup() with kmemdup_nul() (Benjamin Coddington) [1848933] - [fs] NFSv4: Limit the total number of cached delegations (Benjamin Coddington) [1848933] - [fs] NFSv4: Add accounting for the number of active delegations held (Benjamin Coddington) [1848933] - [fs] NFSv4: Try to return the delegation immediately when marked for return on close (Benjamin Coddington) [1848933] - [fs] NFS: Clear NFS_DELEGATION_RETURN_IF_CLOSED when the delegation is returned (Benjamin Coddington) [1848933] - [fs] NFSv4: nfs_inode_evict_delegation() should set NFS_DELEGATION_RETURNING (Benjamin Coddington) [1848933] - [fs] NFS: nfs_find_open_context() should use cred_fscmp() (Benjamin Coddington) [1848933] - [fs] NFS: nfs_access_get_cached_rcu() should use cred_fscmp() (Benjamin Coddington) [1848933] - [fs] NFSv3: FIx bug when using chacl and chmod to change acl (Benjamin Coddington) [1848933] - [fs] NFSv4.x recover from pre-mature loss of openstateid (Benjamin Coddington) [1848933] - [fs] NFS: Trust cached access if we've already revalidated the inode once (Benjamin Coddington) [1848933] - [fs] NFS: Fix nfs_direct_write_reschedule_io() (Benjamin Coddington) [1848933] - [fs] NFS: When resending after a short write, reset the reply count to zero (Benjamin Coddington) [1848933] - [fs] NFS: Improve tracing of permission calls (Benjamin Coddington) [1848933] - [fs] NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes() (Benjamin Coddington) [1848933] - [fs] NFS: Fix up fsync() when the server rebooted (Benjamin Coddington) [1848933] - [net] SUNRPC: Remove broken gss_mech_list_pseudoflavors() (Benjamin Coddington) [1848933] - [fs] NFS: Revalidate the file mapping on all fatal writeback errors (Benjamin Coddington) [1848933] - [fs] NFS: Revalidate the file size on a fatal write error (Benjamin Coddington) [1848933] - [fs] nfs: NFS_SWAP should depend on SWAP (Benjamin Coddington) [1848933] - [net] SUNRPC: constify copied structure (Benjamin Coddington) [1848933] - [fs] fs/nfs, swapon: check holes in swapfile (Benjamin Coddington) [1848933] - [net] SUNRPC: call_connect_status should handle -EPROTO (Benjamin Coddington) [1848933] - [fs] NFS: Introduce trace events triggered by page writeback errors (Benjamin Coddington) [1848933] - [net] SUNRPC: Capture signalled RPC tasks (Benjamin Coddington) [1848933] - [fs] NFS: move dprintk after nfs_alloc_fattr in nfs3_proc_lookup (Benjamin Coddington) [1848933] - [fs] NFS4: Remove unneeded semicolon (Benjamin Coddington) [1848933] - [fs] nfs: encode nfsv4 timestamps as 64-bit (Benjamin Coddington) [1848933] - [fs] nfs: remove timespec from xdr_encode_nfstime (Benjamin Coddington) [1848933] - [fs] nfs: use timespec64 in nfs_fattr (Benjamin Coddington) [1848933] - [net] sunrpc: convert to time64_t for expiry (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in nfssvc.c (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in nfs4proc.c (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in vfs.c (Benjamin Coddington) [1848933] - [fs] nfsd: remove nfs4_reset_lease() declarations (Benjamin Coddington) [1848933] - [fs] nfsd: use ktime_get_real_seconds() in nfs4_verifier (Benjamin Coddington) [1848933] - [fs] nfsd: use boottime for lease expiry calculation (Benjamin Coddington) [1848933] - [fs] nfsd: fix jiffies/time_t mixup in LRU list (Benjamin Coddington) [1848933] - [fs] nfsd: fix delay timer on 32-bit architectures (Benjamin Coddington) [1848933] - [fs] nfsd: use time64_t in nfsd_proc_setattr() check (Benjamin Coddington) [1848933] - [fs] nfsd: pass a 64-bit guardtime to nfsd_setattr() (Benjamin Coddington) [1848933] - [fs] nfsd: make 'boot_time' 64-bit wide (Benjamin Coddington) [1848933] - [fs] nfsd: use timespec64 in encode_time_delta (Benjamin Coddington) [1848933] - [fs] nfsd: handle nfs3 timestamps as unsigned (Benjamin Coddington) [1848933] - [fs] nfsd: print 64-bit timestamps in client_info_show (Benjamin Coddington) [1848933] - [fs] nfsd: use ktime_get_seconds() for timestamps (Benjamin Coddington) [1848933] - [fs] nfsd: remove unnecessary assertion in nfsd4_encode_replay (Benjamin Coddington) [1848933] - [fs] nfsd: Clone should commit src file metadata too (Benjamin Coddington) [1848933] - [fs] nfsd4: Remove unneeded semicolon (Benjamin Coddington) [1848933] - [fs] nfs: fix timstamp debug prints (Benjamin Coddington) [1848933] - [net] nfs: use time64_t internally (Benjamin Coddington) [1848933] - [fs] nfsd: Return the correct number of bytes written to the file (Benjamin Coddington) [1848933] - [fs] nfsd: Fix up some unused variable warnings (Benjamin Coddington) [1848933] - [kernel] blktrace: ensure our debugfs dir exists (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: fix debugfs use after free (Ming Lei) [1816559] {CVE-2019-19770} - [block] loop: be paranoid on exit and prevent new additions / removals (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: annotate required lock on do_blk_trace_setup() (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: revert back to synchronous request_queue removal (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: clarify context for refcount increment helpers (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: add docs for gendisk / request_queue refcount helpers (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: no need to check return value of debugfs_create functions (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: Avoid sparse warnings when assigning q->blk_trace (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: break out of blktrace setup on concurrent calls (Ming Lei) [1816559] {CVE-2019-19770} - [nvme] nvme-fc: don't call nvme_cleanup_cmd() for AENs (Ewan Milne) [1847572] - [nvme] nvme-fc: convert assoc_active flag to bit op (Ewan Milne) [1847572] - [nvme] nvme-fc: Ensure private pointers are NULL if no data (Ewan Milne) [1847572] - [nvme] nvme-multipath: do not reset on unknown status (Ewan Milne) [1847572] - [documentation] x86/speculation: Add Ivy Bridge to affected list (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [documentation] x86/speculation: Add SRBDS vulnerability and mitigation documentation (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu: Add 'table' argument to cpu_matches() (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu: Add a steppings field to struct x86_cpu_id (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu/bugs: Convert to new matching macros (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [crypto] crypto: simd - correctly take reqsize of wrapped skcipher into account (Mark Salter) [1830471] - [fs] nfsd: depend on CRYPTO_MD5 for legacy client tracking (Benjamin Coddington) [1847468] - [fs] nfsd: check for EBUSY from vfs_rmdir/vfs_unink (Benjamin Coddington) [1847468] - [fs] NFS: Fallocate should use the nfs4_fattr_bitmap (Benjamin Coddington) [1847468] - [fs] NFS: Return -ETXTBSY when attempting to write to a swapfile (Benjamin Coddington) [1847468] - [fs] fs: nfs: sysfs: Remove NULL check before kfree (Benjamin Coddington) [1847468] - [fs] NFS: remove unneeded semicolon (Benjamin Coddington) [1847468] - [fs] NFSv4: add declaration of current_stateid (Benjamin Coddington) [1847468] - [include] sunrpc: remove __KERNEL__ ifdefs (Benjamin Coddington) [1847468] - [fs] nfsd: document callback_wq serialization of callback code (Benjamin Coddington) [1847468] - [fs] nfsd: mark cb path down on unknown errors (Benjamin Coddington) [1847468] - [net] SUNRPC: Avoid RPC delays when exiting suspend (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't retry the GETATTR on old stateid in nfs4_delegreturn_done() (Benjamin Coddington) [1847468] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in delegreturn (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix races between open and delegreturn (Benjamin Coddington) [1847468] - [fs] NFS: nfs_inode_find_state_and_recover() fix stateid matching (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix nfs4_inode_make_writeable() (Benjamin Coddington) [1847468] - [fs] NFSv4: nfs4_return_incompatible_delegation() should check delegation validity (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't reclaim delegations that have been returned or revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Ignore requests to return the delegation if it was revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Revoke the delegation on success in nfs4_delegreturn_done() (Benjamin Coddington) [1847468] - [fs] NFSv4: Update the stateid seqid in nfs_revoke_delegation() (Benjamin Coddington) [1847468] - [fs] NFSv4: Clear the NFS_DELEGATION_REVOKED flag in nfs_update_inplace_delegation() (Benjamin Coddington) [1847468] - [fs] NFSv4: Hold the delegation spinlock when updating the seqid (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't remove the delegation from the super_list more than once (Benjamin Coddington) [1847468] - [fs] NFS: Rename nfs_inode_return_delegation_noreclaim() (Benjamin Coddington) [1847468] - [fs] NFSv4: fail nfs4_refresh_delegation_stateid() when the delegation was revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Delegation recalls should not find revoked delegations (Benjamin Coddington) [1847468] - [fs] NFSv4: nfs4_callback_getattr() should ignore revoked delegations (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix delegation handling in update_open_stateid() (Benjamin Coddington) [1847468] - [fs] NFSv4.1: Don't rebind to the same source port when reconnecting to the server (Benjamin Coddington) [1847468] - [fs] NFS/pnfs: Separate NFSv3 DS and MDS traffic (Benjamin Coddington) [1847468] - [fs] pNFS: nfs3_set_ds_client should set NFS_CS_NOPING (Benjamin Coddington) [1847468] - [fs] NFS: Add a flag to tell nfs_client to set RPC_CLNT_CREATE_NOPING (Benjamin Coddington) [1847468] - [fs] NFS: Use non-atomic bit ops when initialising struct nfs_client_initdata (Benjamin Coddington) [1847468] - [fs] NFSv3: Clean up timespec encode (Benjamin Coddington) [1847468] - [fs] NFSv2: Clean up timespec encode (Benjamin Coddington) [1847468] - [fs] NFSv2: Fix a typo in encode_sattr() (Benjamin Coddington) [1847468] - [fs] NFSv4: NFSv4 callbacks also support 64-bit timestamps (Benjamin Coddington) [1847468] - [fs] NFSv4: Encode 64-bit timestamps (Benjamin Coddington) [1847468] - [fs] NFS: Convert struct nfs_fattr to use struct timespec64 (Benjamin Coddington) [1847468] - [fs] NFS: If nfs_mountpoint_expiry_timeout < 0, do not expire submounts (Benjamin Coddington) [1847468] - [net] SUNRPC: Add trace points to observe transport congestion control (Benjamin Coddington) [1847468] - [net] SUNRPC: Eliminate log noise in call_reserveresult (Benjamin Coddington) [1847468] - [fs] nfsd: remove private bin2hex implementation (Benjamin Coddington) [1847468] - [fs] nfsd: remove set but not used variable 'len' (Benjamin Coddington) [1847468] - [fs] NFSv3: fix rpc receive buffer size for MOUNT call (Steve Dickson) [1837034] - [fs] NFS: remove unused macros (Steve Dickson) [1837034] - [mm] mm, slab: fix sign conversion problem in memcg_uncharge_slab() (Waiman Long) [1849016] - [mm] mm: fix false-positive OVERCOMMIT_GUESS failures (Waiman Long) [1849016] - [mm] mm: remove CONFIG_MIGRATE_VMA_HELPER (Karol Herbst) [1847908] - [nvdimm] libnvdimm: Export the target_node attribute for regions and namespaces (Jeff Moyer) [1783157] - [dax] dax: Add numa_node to the default device-dax attributes (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Simplify root read-only definition for the 'resource' attribute (Jeff Moyer) [1783157] - [dax] dax: Simplify root read-only definition for the 'resource' attribute (Jeff Moyer) [1783157] - [dax] dax: Create a dax device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nvdimm_bus_attribute_group to device_type (Jeff Moyer) [1783157] - [acpi] libnvdimm: Move nvdimm_attribute_group to device_type (Jeff Moyer) [1783157] - [acpi] libnvdimm: Move nd_mapping_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_region_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_numa_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_device_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move region attribute group definition (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move attribute groups to device type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm/region: Initialize bad block for volatile namespaces (Jeff Moyer) [1783157] - [x86] x86/mce: Add Xeon Icelake to list of CPUs that support PPIN (Steve Best) [1848710] - [powerpc] powerpc/kernel: Enables memory hot-remove after reboot on pseries guests (David Gibson) [1848844] - [fs] cifs: multichannel: try to rebind when reconnecting a channel (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: use pointer for binding channel (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: move channel selection above transport layer (Leif Sahlberg) [1842759] - [fs] cifs: move some variables off the stack in smb2_ioctl_query_info (Leif Sahlberg) [1842759] - [fs] cifs: reduce stack use in smb2_compound_op (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: always zero struct cifs_io_parms (Leif Sahlberg) [1842759] - [fs] smb3: default to minimum of two channels when multichannel specified (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: move channel selection in function (Leif Sahlberg) [1842759] - [mm] x86/init: fix build with CONFIG_SWAP=n (Waiman Long) [1839415] - [netdrv] ionic: add pcie_print_link_status (Jonathan Toppins) [1846506] - [netdrv] ionic: no link check while resetting queues (Jonathan Toppins) [1846953] - [netdrv] ionic: export features for vlans to use (Jonathan Toppins) [1846868] - [netdrv] ionic: remove support for mgmt device (Jonathan Toppins) [1846506] - [netdrv] ionic: wait on queue start until after IFF_UP (Jonathan Toppins) [1844924] - [netdrv] ionic: add more ethtool stats (Jonathan Toppins) [1848149] - [netdrv] ionic: more ionic name tweaks (Jonathan Toppins) [1848149] - [netdrv] ionic: ionic_intr_free parameter change (Jonathan Toppins) [1848149] - [netdrv] ionic: reset device at probe (Jonathan Toppins) [1848149] - [netdrv] ionic: shorter dev cmd wait time (Jonathan Toppins) [1848149] - [netdrv] ionic: add support for more xcvr types (Jonathan Toppins) [1848149] - [netdrv] ionic: protect vf calls from fw reset (Jonathan Toppins) [1848149] - [netdrv] ionic: updates to ionic FW api description (Jonathan Toppins) [1848149] - [netdrv] ionic: support longer tx sg lists (Jonathan Toppins) [1848149] - [netdrv] ionic: Use debugfs_create_bool() to export bool (Jonathan Toppins) [1848149] - [netdrv] drivers:Remove inclusion of vermagic header (Jonathan Toppins) [1848149] - [net] SUNRPC: Destroy the back channel when we destroy the host transport (Benjamin Coddington) [1846984] - [net] SUNRPC: fix race to sk_err after xs_error_report (Benjamin Coddington) [1846984] - [fs] NFS: Remove redundant mirror tracking in O_DIRECT (Benjamin Coddington) [1846984] - [fs] nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request (Benjamin Coddington) [1846984] - [net] sunrpc: clean up indentation issue (Benjamin Coddington) [1846984] - [fs] NFS: Optimise the default readahead size (Benjamin Coddington) [1846984] - [fs] nfsd: fix nfs read eof detection (Benjamin Coddington) [1846984] - [fs] nfsd: Make nfsd_reset_boot_verifier_locked static (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in LOCKU (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1846984] - [fs] NFSv4: Fix OPEN_DOWNGRADE error handling (Benjamin Coddington) [1846984] - [fs] pNFS: Handle NFS4ERR_OLD_STATEID on layoutreturn by bumping the state seqid (Benjamin Coddington) [1846984] - [fs] NFSv4: Add a helper to increment stateid seqids (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle RPC level errors in LAYOUTRETURN (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_DELAY correctly in return-on-close (Benjamin Coddington) [1846984] - [fs] NFSv4: Clean up pNFS return-on-close error handling (Benjamin Coddington) [1846984] - [fs] NFS: remove unused check for negative dentry (Benjamin Coddington) [1846984] - [fs] NFSv3: use nfs_add_or_obtain() to create and reference inodes (Benjamin Coddington) [1846984] - [fs] NFS: Refactor nfs_instantiate() for dentry referencing callers (Benjamin Coddington) [1846984] - [fs] nfs_instantiate(): prevent multiple aliases for directory inode (Benjamin Coddington) [1846984] - [net] SUNRPC: Rename xdr_buf_read_netobj to xdr_buf_read_mic (Benjamin Coddington) [1846984] - [fs] nfsd: degraded slot-count more gracefully as allocation nears exhaustion (Benjamin Coddington) [1846984] - [fs] nfsd: handle drc over-allocation gracefully (Benjamin Coddington) [1846984] - [net] SUNRPC: RPC level errors should always set task->tk_rpc_status (Benjamin Coddington) [1846984] - [fs] nfsd: Support the server resetting the boot verifier (Benjamin Coddington) [1846984] - [net] sunrpc: Use kzfree rather than its implementation (Benjamin Coddington) [1846984] - [fs] nfsd: eliminate an unnecessary acl size limit (Benjamin Coddington) [1846984] - [fs] Deprecate nfsd fault injection (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs4_proc_get_lease_time() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs41_proc_secinfo_no_name() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs41_proc_reclaim_complete() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have _nfs4_proc_secinfo() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs4_proc_setclientid() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Add an nfs4_call_sync_custom() function (Benjamin Coddington) [1846984] - [fs] NFSv4: Fix a memory leak bug (Benjamin Coddington) [1846984] - [net] xprtrdma: Fix bc_max_slots return value (Benjamin Coddington) [1846984] - [net] SUNRPC: Inline xdr_commit_encode (Benjamin Coddington) [1846984] - [net] SUNRPC: Remove rpc_wake_up_queued_task_on_wq() (Benjamin Coddington) [1846984] - [fs] fs: nfs: Fix possible null-pointer dereferences in encode_attrs() (Benjamin Coddington) [1846984] - [fs] nfsd: Fix the documentation for svcxdr_tmpalloc() (Benjamin Coddington) [1846984] - [fs] nfsd: Remove unnecessary NULL checks (Benjamin Coddington) [1846984] - [s390] vfio-ccw: make vfio_ccw_regops variables declarations static (Cornelia Huck) [1660917] - [s390] vfio-ccw: Add trace for CRW event (Cornelia Huck) [1660917] - [s390] vfio-ccw: Wire up the CRW irq and CRW region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce a new CRW region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor IRQ handlers (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce a new schib region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor the unregister of the async regions (Cornelia Huck) [1660917] - [s390] vfio-ccw: Register a chp_event callback for vfio-ccw (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce new helper functions to free/destroy regions (Cornelia Huck) [1660917] - [documentation] vfio-ccw: document possible errors (Cornelia Huck) [1660917] - [s390] vfio-ccw: Enable transparent CCW IPL from DASD (Cornelia Huck) [1660917] - [s390] cio: generate delayed uevent for vfio-ccw subchannels (Cornelia Huck) [1660917] - [s390] vfio-ccw: Use the correct style for SPDX License Identifier (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rework the io_fctl trace (Cornelia Huck) [1660917] - [s390] vfio-ccw: Add a trace for asynchronous requests (Cornelia Huck) [1660917] - [s390] vfio-ccw: Trace the FSM jumptable (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor how the traces are built (Cornelia Huck) [1660917] - [s390] vfio-ccw: fix error return code in vfio_ccw_sch_init() (Cornelia Huck) [1660917] - [s390] vfio-ccw: add some logging (Cornelia Huck) [1660917] - [s390] vfio-ccw: make vfio_ccw_async_region_ops static (Cornelia Huck) [1660917] - [documentation] documentation: fix vfio-ccw doc (Cornelia Huck) [1660917] - [documentation] vfio-ccw: Update documentation for csch/hsch (Cornelia Huck) [1660917] - [s390] vfio-ccw: Don't call cp_free if we are processing a channel program (Cornelia Huck) [1660917] - [s390] vfio-ccw: Set pa_nr to 0 if memory allocation fails for pa_iova_pfn (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix memory leak and don't call cp_free in cp_init (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix misleading comment when setting orb.cmd.c64 (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix the conversion of Format-0 CCWs to Format-1 (Cornelia Huck) [1660917] - [s390] cio: introduce driver_override on the css bus (Cornelia Huck) [1660917] - [s390] vfio-ccw: make convert_ccw0_to_ccw1 static (Cornelia Huck) [1660917] - [s390] vfio-ccw: Remove copy_ccw_from_iova() (Cornelia Huck) [1660917] - [s390] vfio-ccw: Factor out the ccw0-to-ccw1 transition (Cornelia Huck) [1660917] - [s390] vfio-ccw: Copy CCW data outside length calculation (Cornelia Huck) [1660917] - [s390] vfio-ccw: Skip second copy of guest cp to host (Cornelia Huck) [1660917] - [s390] vfio-ccw: Move guest_cp storage into common struct (Cornelia Huck) [1660917] - [s390] cio: Combine direct and indirect CCW paths (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rearrange IDAL allocation in direct CCW (Cornelia Huck) [1660917] - [s390] vfio-ccw: Remove pfn_array_table (Cornelia Huck) [1660917] - [s390] vfio-ccw: Adjust the first IDAW outside of the nested loops (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rearrange pfn_array and pfn_array_table arrays (Cornelia Huck) [1660917] - [s390] cio: Use generalized CCW handler in cp_init() (Cornelia Huck) [1660917] - [s390] cio: Generalize the TIC handler (Cornelia Huck) [1660917] - [s390] cio: Refactor the routine that handles TIC CCWs (Cornelia Huck) [1660917] - [s390] cio: Squash cp_free() and cp_unpin_free() (Cornelia Huck) [1660917] - [s390] vfio-ccw: Destroy kmem cache region on module exit (Cornelia Huck) [1660917] - [documentation] docs: s390: convert docs to ReST and rename to *.rst (Cornelia Huck) [1660917] - [s390] cio: Remove vfio-ccw checks of command codes (Cornelia Huck) [1660917] - [s390] cio: Allow zero-length CCWs in vfio-ccw (Cornelia Huck) [1660917] - [s390] cio: Don't pin vfio pages for empty transfers (Cornelia Huck) [1660917] - [s390] cio: Initialize the host addresses in pfn_array (Cornelia Huck) [1660917] - [s390] cio: Split pfn_array_alloc_pin into pieces (Cornelia Huck) [1660917] - [s390] cio: Set vfio-ccw FSM state before ioeventfd (Cornelia Huck) [1660917] - [s390] cio: Update SCSW if it points to the end of the chain (Cornelia Huck) [1660917] - [s390] vfio-ccw: Prevent quiesce function going into an infinite loop (Cornelia Huck) [1660917] - [s390] vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev (Cornelia Huck) [1660917] - [s390] vfio-ccw: Do not call flush_workqueue while holding the spinlock (Cornelia Huck) [1660917] - [s390] vfio-ccw: add handling for async channel instructions (Cornelia Huck) [1660917] - [s390] cio: export hsch to modules (Cornelia Huck) [1660917] - [s390] vfio-ccw: add capabilities chain (Cornelia Huck) [1660917] - [s390] vfio-ccw: protect the I/O region (Cornelia Huck) [1660917] - [s390] vfio-ccw: rework ssch state handling (Cornelia Huck) [1660917] - [s390] vfio-ccw: make it safe to access channel programs (Cornelia Huck) [1660917] - [s390] vfio: ccw: only free cp on final interrupt (Cornelia Huck) [1660917] - [s390] cio: Use cpa range elsewhere within vfio-ccw (Cornelia Huck) [1660917] - [s390] cio: Fix vfio-ccw handling of recursive TICs (Cornelia Huck) [1660917] - [s390] vfio-ccw: Don't assume there are more ccws after a TIC (Cornelia Huck) [1660917] - [s390] vfio: ccw: Merge BUSY and BOXED states (Cornelia Huck) [1660917] - [s390] cio: Fix cleanup when unsupported IDA format is used (Cornelia Huck) [1660917] - [s390] cio: Fix cleanup of pfn_array alloc failure (Cornelia Huck) [1660917] - [s390] vfio: ccw: Register mediated device once all structures are initialized (Cornelia Huck) [1660917] - [s390] cio: make vfio_ccw_io_region static (Cornelia Huck) [1660917] - [s390] cio: Fix how vfio-ccw checks pinned pages (Cornelia Huck) [1660917] - [s390] cio: Refactor alloc of ccw_io_region (Cornelia Huck) [1660917] - [s390] cio: Convert ccw_io_region to pointer (Cornelia Huck) [1660917] - [netdrv] ibmvnic: Harden device login requests (Steve Best) [1847183] - [mm] s390/cmm: fix information leak in cmm_timeout_handler() (Nico Pache) [1846532] {CVE-2020-10773} - [fs] kernfs: fix potential null pointer dereference (Carlos Maiolino) [1847872] - [netdrv] net: sfc: reject unsupported coalescing params (Jarod Wilson) [1844659] - [netdrv] iavf: increase reset complete wait time (Stefan Assmann) [1844598] - [netdrv] iavf: Fix reporting 2.5 Gb and 5Gb speeds (Stefan Assmann) [1844598] - [netdrv] iavf: use appropriate enum for comparison (Stefan Assmann) [1844598] - [netdrv] iavf: fix speed reporting over virtchnl (Stefan Assmann) [1844598] - [block] blk-mq: fix blk_mq_all_tag_iter (Ming Lei) [1824037] - [block] blk-mq: split out a __blk_mq_get_driver_tag helper (Ming Lei) [1824037] - [block] blk-mq: drain I/O when all CPUs in a hctx are offline (Ming Lei) [1824037] - [block] blk-mq: add blk_mq_all_tag_iter (Ming Lei) [1824037] - [block] blk-mq: open code __blk_mq_alloc_request in blk_mq_alloc_request_hctx (Ming Lei) [1824037] - [block] blk-mq: use BLK_MQ_NO_TAG in more places (Ming Lei) [1824037] - [block] blk-mq: rename BLK_MQ_TAG_FAIL to BLK_MQ_NO_TAG (Ming Lei) [1824037] - [block] blk-mq: move more request initialization to blk_mq_rq_ctx_init (Ming Lei) [1824037] - [block] blk-mq: simplify the blk_mq_get_request calling convention (Ming Lei) [1824037] - [block] blk-mq: remove a pointless queue enter pair in blk_mq_alloc_request_hctx (Ming Lei) [1824037] - [block] blk-mq: remove a pointless queue enter pair in blk_mq_alloc_request (Ming Lei) [1824037] - [block] blk-mq: move the call to blk_queue_enter_live out of blk_mq_get_request (Ming Lei) [1824037] - [nvme] nvme: force complete cancelled requests (Ming Lei) [1824037] - [block] blk-mq: blk-mq: provide forced completion method (Ming Lei) [1824037] - [block] block: Limit number of items taken from the I/O scheduler in one go (Ming Lei) [1824037] - [scsi] Revert "scsi: core: run queue if SCSI device queue isn't ready and queue is idle" (Ming Lei) [1824037] - [block] blk-mq: Rerun dispatching in the case of budget contention (Ming Lei) [1824037] - [block] blk-mq: Add blk_mq_delay_run_hw_queues() API call (Ming Lei) [1824037] - [block] blk-mq: In blk_mq_dispatch_rq_list() "no budget" is a reason to kick (Ming Lei) [1824037] - [block] blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget (Ming Lei) [1824037] - [block] blk-mq: don't commit_rqs() if none were queued (Ming Lei) [1824037] - [block] blk-mq: Remove some unused function arguments (Ming Lei) [1824037] - [block] blk-mq-tag: document tag iteration helper return value (Ming Lei) [1824037] - [block] blk-mq: Document the functions that iterate over requests (Ming Lei) [1824037] - [block] loop: Better discard support for block devices (Ming Lei) [1824037] - [block] loop: Report EOPNOTSUPP properly (Ming Lei) [1824037] - [block] block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices (Ming Lei) [1824037] - [block] block, zoned: fix integer overflow with BLKRESETZONE et al (Ming Lei) [1824037] - [block] block: Fix use-after-free issue accessing struct io_cq (Ming Lei) [1824037] - [netdrv] cxgb4: add EOTID tracking and software context dump (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: tune burst buffer size for TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: improve credits recovery in TC-MQPRIO Tx path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix delete filter entry fail in unload path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix large delays in PTP synchronization (Vishal Kulkarni) [1828665] - [netdrv] net/cxgb4: Check the return from t4_query_params properly (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: free MQPRIO resources in shutdown path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix MPS index overwrite when setting MAC address (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Add support to catch bits set in INT_CAUSE5 (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove set but not used variable 'tab' (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/ptp: pass the sign of offset delta in FW CMD (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix Txq restart check during backpressure (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix throughput drop during Tx backpressure (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: rework TC filter rule insertion across regions (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: update T5/T6 adapter register ranges (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix checks for max queues to allocate (Vishal Kulkarni) [1828665] - [netdrv] net/chelsio: Don't set N/A for not available FW (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Added tls stats prints (Vishal Kulkarni) [1828665] - [netdrv] l2t_seq_next should increase position index (Vishal Kulkarni) [1828665] - [netdrv] seq_tab_next() should increase position index (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: reject overlapped queues in TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix Tx multi channel port rate limit (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/cxgb4vf: fix flow control display for auto negotiation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix refcount init for TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/chtls: fix ULD connection failures due to wrong TID base (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix missed high priority region calculation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Fix kernel panic while accessing sge_info (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add support for high priority filters (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add stats for MQPRIO QoS offload Tx path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add UDP segmentation offload support (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/chcr: update SGL DMA unmap for USO (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add TC-MATCHALL classifier ingress offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: check rule prio conflicts before offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add TC-MATCHALL classifier egress offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove unneeded semicolon for switch block (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Fix an error code in cxgb4_mqprio_alloc_hw_resources() (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: make function 'cxgb4_mqprio_free_hw_resources' static (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove redundant assignment to hdr_len (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix 64-bit division on i386 (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Use match_string() helper to simplify the code (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add FLOWC based QoS offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add Tx and Rx path for ETHOFLD traffic (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add ETHOFLD hardware queue support (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: parse and configure TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: rework queue config and MSI-X allocation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: query firmware for QoS offload resources (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Add pci reset handler (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/l2t: Simplify 't4_l2e_free()' and '_t4_l2e_free()' (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix panic when attaching to ULD fail (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: request the TX CIDX updates to status page (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Signedness bug in init_one() (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: no need to check return value of debugfs_create functions (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: smt: Use normal int for refcount (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: smt: Add lock for atomic_dec_and_test (Vishal Kulkarni) [1828665] - [fs] xfs: clear PF_MEMALLOC before exiting xfsaild thread (Brian Foster) [1827912]- [drm] drm/amd/display: Defer cursor lock until after VUPDATE (Lyude Paul) [1814893] - [drm] drm/amd/display: Use cursor locking to prevent flip delays (Lyude Paul) [1814893] - [drm] drm/amdgpu/display: Fix Pollock Variant Detection (Lyude Paul) [1814893] - [drm] drm/amd/display: Fix RV2 Variant Detection (Lyude Paul) [1814893] - [drm] drm/amdgpu/display: fix pci revision id fetching (Lyude Paul) [1814893] - [drm] drm/nouveau/device: detect vGPUs (Lyude Paul) [1814893] - [drm] drm/nouveau/device: detect if changing endianness failed (Lyude Paul) [1814893] - [drm] drm/nouveau/device: rework mmio mapping code to get rid of second map (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gm200-: detect and potentially disable HDA support on some SORs (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gp100: split SOR implementation from gm200 (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: modify OR allocation policy to account for HDA requirements (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: split part of OR allocation logic into a function (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: provide hint to OR allocation about HDA requirements (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/gt215-: fix race with audio driver runpm (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gv100-: NV_PDISP_SF_AUDIO_CNTRL0 register moved (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gf119-: select HDA device entry based on bound head (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gf119-: add HAL for programming device entry in SF (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gt215-: pass head to nvkm_ior.hda.eld() (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gm200-: fix NV_PDISP_SOR_HDMI2_CTRL(n) selection (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Share DP SST mode_valid() handling with MST (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Move 8BPC limit for MST into nv50_mstc_get_modes() (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/gv100-: Add support for interlaced modes (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Probe SOR and PIOR caps for DP interlacing support (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Initialize core channel in nouveau_display_create() (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gv100-: expose capabilities class (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/nv50-: increase timeout on pio channel free() polling (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: wait for FIFO space on PIO channels (Lyude Paul) [1814893] - [drm] drm/nouveau/nvif: protect waits against GPU falling off the bus (Lyude Paul) [1814893] - [drm] drm/nouveau/nvif: access PTIMER through usermode class, if available (Lyude Paul) [1814893] - [drm] drm/nouveau/ttm: evict other IO mappings when running out of BAR1 space (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: clear SW state of disabled windows harder (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Add aux table invalidate for all engines (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Invalidate aux table entries forcibly (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Flush L3 (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Fix HDC pipeline flush (Lyude Paul) [1814893] - [drm] Revert "drm/i915/tgl: Include ro parts of l3 to invalidate" (Lyude Paul) [1814893] - [drm] drm/i915: Push MST link retraining to the hotplug work (Lyude Paul) [1814893] - [drm] drm/i915: Flatten intel_dp_check_mst_status() a bit (Lyude Paul) [1814893] - [drm] drm/i915/tc: Do not warn when aux power well of static TC ports timeout (Lyude Paul) [1814893] - [drm] drm/i915/tc: Catch TC users accessing FIA registers without enable aux (Lyude Paul) [1814893] - [drm] drm/i915/tc/tgl: Implement TC cold sequences (Lyude Paul) [1814893] - [drm] drm/i915/tc: Skip ref held check for TC legacy aux power wells (Lyude Paul) [1814893] - [drm] drm/i915/tc/icl: Implement TC cold sequences (Lyude Paul) [1814893] - [drm] drm/i915/display: Split hsw_power_well_enable() into two (Lyude Paul) [1814893] - [drm] drm/i915/display: Add intel_legacy_aux_to_power_domain() (Lyude Paul) [1814893] - [drm] drm/i915/display: Move out code to return the digital_port of the aux ch (Lyude Paul) [1814893] - [drm] drm/i915: Add missing deinitialization cases of load failure (Lyude Paul) [1814893] - [drm] drm/i915: split intel_modeset_init() to pre/post irq install (Lyude Paul) [1814893] - [drm] drm/i915: split i915_driver_modeset_probe() to pre/post irq install (Lyude Paul) [1814893] - [drm] drm/i915: split i915_driver_modeset_remove() to pre/post irq uninstall (Lyude Paul) [1814893] - [drm] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall (Lyude Paul) [1814893] - [drm] drm/i915: Extract skl SAGV checking (Lyude Paul) [1814893] - [drm] drm/i915: Track active_pipes in bw_state (Lyude Paul) [1814893] - [drm] drm/i915: Use bw state for per crtc SAGV evaluation (Lyude Paul) [1814893] - [drm] drm/i915: Introduce intel_calc_active_pipes() (Lyude Paul) [1814893] - [drm] drm/i915: Add pre/post plane updates for SAGV (Lyude Paul) [1814893] - [drm] drm/i915: Prepare to extract gen specific functions from intel_can_enable_sagv (Lyude Paul) [1814893] - [drm] drm/i915: Add intel_atomic_get_bw_*_state helpers (Lyude Paul) [1814893] - [drm] drm/i915: Introduce skl_plane_wm_level accessor (Lyude Paul) [1814893] - [drm] drm/i915: do AUD_FREQ_CNTRL state save on all gen9+ platforms (Lyude Paul) [1814893] - [drm] drm/i915: Extend hotplug detect retry on TypeC connectors to 5 seconds (Lyude Paul) [1814893] - [drm] drm/i915: Add a retry counter for hotplug detect retries (Lyude Paul) [1814893] - [drm] drm/i915: Introduce intel_connector_hpd_pin() (Lyude Paul) [1814893] - [drm] drm/i915: Prefer intel_connector over drm_connector in hotplug code (Lyude Paul) [1814893] - [drm] drm/i915: Use intel_attached_encoder() (Lyude Paul) [1814893] - [drm] drm/i915/ehl: Restrict w/a 1607087056 for EHL/JSL (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Initialize multicast register steering for workarounds (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Make Wa_14010229206 permanent (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1605460711 / Wa_1408767742 to ICL and EHL (Lyude Paul) [1814893] - [drm] drm/i915: Apply Wa_1406680159:icl, ehl as an engine workaround (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1406306137:icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1604278689:icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Don't treat unslice registers as masked (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Make Wa_1606700617 permanent (Lyude Paul) [1814893] - [drm] drm/i915/tgl: WaDisableGPGPUMidThreadPreemption (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Move and restrict Wa_1408615072 (Lyude Paul) [1814893] - [drm] drm/i915/gen11: Moving WAs to rcs_engine_wa_init() (Lyude Paul) [1814893] - [drm] drm/i915: add Wa_14010594013: icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa number to WaAllowPMDepthAndInvocationCountAccessFromUMD (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note about Wa_1409142259 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Fix the Wa number of a fix (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note about Wa_1607063988 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note to Wa_1607297627 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Extend Wa_1606931601 for all steppings (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_1409085225, Wa_14010229206 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Implement Wa_1806527549 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Implement Wa_1409804808 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_1808121037 to tgl (Lyude Paul) [1814893] - [drm] drm/i915: Use engine wa list for Wa_1607090982 (Lyude Paul) [1814893] - [drm] drm/i915: Implement Wa_1607090982 (Lyude Paul) [1814893] - [drm] drm/i915: Disable tesselation clock gating on tgl A0 (Lyude Paul) [1814893] - [drm] drm/i915: Move ringbuffer WAs to engine workaround list (Lyude Paul) [1814893] - [drm] drm/i915/gt: Skip rmw for masked registers (Lyude Paul) [1814893] - [drm] drm/i915/selftests: Also wait for the scratch buffer to be bound (Lyude Paul) [1814893] - [drm] drm/i915/dp: Return the right vswing tables (Lyude Paul) [1814893] - [drm] drm/i915/dp/tgl+: Update combo phy vswing tables (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add definitions for VRR registers and bits (Lyude Paul) [1814893] - [drm] drm/i915: use forced codec wake on all gen9+ platforms (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add new PCI IDs to TGL (Lyude Paul) [1814893] - [drm] drm/i915/perf: Invalidate OA TLB on when closing perf stream (Lyude Paul) [1814893] - [drm] Bump DRM backport version to 5.6.14 (Lyude Paul) [1814893] - [drm] drm/i915/tgl+: Fix interrupt handling for DP AUX transactions (Lyude Paul) [1814893] - [drm] drm/amd/amdgpu: add raven1 part to the gfxoff quirk list (Lyude Paul) [1814893] - [drm] drm/amd/display: add basic atomic check for cursor plane (Lyude Paul) [1814893] - [drm] Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() (Lyude Paul) [1814893] - [drm] drm/i915: Handle idling during i915_gem_evict_something busy loops (Lyude Paul) [1814893] - [drm] drm/i915: Mark concurrent submissions with a weak-dependency (Lyude Paul) [1814893] - [drm] drm/i915/gvt: Fix kernel oops for 3-level ppgtt guest (Lyude Paul) [1814893] - [drm] drm/amdgpu: force fbdev into vram (Lyude Paul) [1814893] - [drm] drm/i915/gem: Remove object_is_locked assertion from unpin_from_display_plane (Lyude Paul) [1814893] - [drm] drm/i915: Don't enable WaIncreaseLatencyIPCEnabled when IPC is disabled (Lyude Paul) [1814893] - [drm] drm/i915/gt: Make timeslicing an explicit engine property (Lyude Paul) [1814893] - [drm] drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper() (Lyude Paul) [1814893] - [drm] drm/amd/display: Update downspread percent to match spreadsheet for DCN2.1 (Lyude Paul) [1814893] - [drm] drm/amd/display: Defer cursor update around VUPDATE for all ASIC (Lyude Paul) [1814893] - [drm] drm/amd/display: check if REFCLK_CNTL register is present (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: avoid using pm_en before it is initialized revised (Lyude Paul) [1814893] - [drm] drm/amd/display: blank dp stream before re-train the link (Lyude Paul) [1814893] - [drm] drm/i915/display: Load DP_TP_CTL/STATUS offset before use it (Lyude Paul) [1814893] - [drm] drm/i915/tgl: TBT AUX should use TC power well ops (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_14010477008:tgl (Lyude Paul) [1814893] - [drm] drm/amd/display: work around fp code being emitted outside of DC_FP_START/END (Lyude Paul) [1814893] - [drm] drm/amdgpu: drop redundant cg/pg ungate on runpm enter (Lyude Paul) [1814893] - [drm] drm/amdgpu: move kfd suspend after ip_suspend_phase1 (Lyude Paul) [1814893] - [drm] drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event (Lyude Paul) [1814893] - [drm] drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay table v0 (e.g Hawaii) (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: fix resume failed as smu table initialize early exit (Lyude Paul) [1814893] - [drm] drm/bridge: anx6345: set correct BPC for display_info of connector (Lyude Paul) [1814893] - [drm] drm/i915: Use proper fault mask in interrupt postinstall too (Lyude Paul) [1814893] - [drm] drm/i915/selftests: Fix i915_address_space refcnt leak (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release use after free (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release leak in qxl_hw_surface_alloc() (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release leak in qxl_draw_dirty_fb() (Lyude Paul) [1814893] - [drm] drm/i915/gt: Check cacheline is valid before acquiring (Lyude Paul) [1814893] - [drm] drm/i915/gem: Hold obj->vma.lock over for_each_ggtt_vma() (Lyude Paul) [1814893] - [drm] drm/amd/display: Fix green screen issue after suspend (Lyude Paul) [1814893] - [drm] drm/edid: Fix off-by-one in DispID DTD pixel clock (Lyude Paul) [1814893] - [drm] drm/amdgpu: invalidate L2 before SDMA IBs (v2) (Lyude Paul) [1814893] - [dma-buf] dma-buf: Fix SET_NAME ioctl uapi (Lyude Paul) [1814893] - [drm] drm/scheduler: fix drm_sched_get_cleanup_job (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix wrong vram lost counter increment V2 (Lyude Paul) [1814893] - [drm] drm/dp_mst: Zero assigned PBN when releasing VCPI slots (Lyude Paul) [1814893] - [drm] drm/amd/display: Calculate scaling ratios on every medium/full update (Lyude Paul) [1814893] - [drm] drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax (Lyude Paul) [1814893] - [video] fbdev: potential information leak in do_fb_ioctl() (Lyude Paul) [1814893] - [drm] drm/nouveau/gr/gp107, gp108: implement workaround for HW hanging during init (Lyude Paul) [1814893] - [drm] drm/amdkfd: kfree the wrong pointer (Lyude Paul) [1814893] - [drm] drm/nouveau: workaround runpm fail by disabling PCI power management on certain intel bridges (Lyude Paul) [1814893] - [drm] drm/nouveau/svm: fix vma range check for migration (Lyude Paul) [1814893] - [drm] drm/nouveau/svm: check for SVM initialized before migrating (Lyude Paul) [1814893] - [drm] drm/amd/display: Don't try hdcp1.4 when content_type is set to type1 (Lyude Paul) [1814893] - [drm] drm/ttm: flush the fence on the bo after we individualize the reservation object (Lyude Paul) [1814893] - [drm] drm/i915/perf: Do not clear pollin for small user read buffers (Lyude Paul) [1814893] - [drm] drm/nouveau/sec2/gv100-: add missing MODULE_FIRMWARE() (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix the hw hang during perform system reboot and reset (Lyude Paul) [1814893] - [drm] drm/amdgpu/gfx9: add gfxoff quirk (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled (Lyude Paul) [1814893] - [drm] drm/i915/gt: Fill all the unused space in the GGTT (Lyude Paul) [1814893] - [drm] drm/i915/ggtt: do not set bits 1-11 in gen12 ptes (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix gfx hang during suspend with video playback (v2) (Lyude Paul) [1814893] - [drm] drm/dp_mst: Fix clearing payload state on topology disable (Lyude Paul) [1814893] - [drm] Revert "drm/dp_mst: Remove VCPI while disabling topology mgr" (Lyude Paul) [1814893] - [drm] drm/i915/gt: Treat idling as a RPS downclock event (Lyude Paul) [1814893] - [drm] drm/vboxvideo: Add missing remove_conflicting_pci_framebuffers call, v2 (Lyude Paul) [1814893] - [drm] drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode (Lyude Paul) [1814893] - [drm] drm/amd/display: Check for null fclk voltage when parsing clock table (Lyude Paul) [1814893] - [drm] drm/amdgpu: unify fw_write_wait for new gfx9 asics (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: implement the is_dpm_running() (Lyude Paul) [1814893] - [drm] drm/amdgpu/powerplay: using the FCLK DPM table to set the MCLK (Lyude Paul) [1814893] - [drm] drm: Remove PageReserved manipulation from drm_pci_alloc (Lyude Paul) [1814893] - [drm] drm/bridge: analogix-anx78xx: Fix drm_dp_link helper removal (Lyude Paul) [1814893] - [drm] drm/i915/gem: Flush all the reloc_gpu batch (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Disable preemption timeout (Lyude Paul) [1814893] - [drm] drm/i915/display: Fix mode private_flags comparison at atomic_check (Lyude Paul) [1814893] - [drm] drm/bridge: analogix-anx6345: Avoid duplicate -supply suffix (Lyude Paul) [1814893] - [drm] drm/i915: Allow for different modes of interruptible i915_active_wait (Lyude Paul) [1814893] - [gpu] DRM Backport 5.5 -> 5.6 (Lyude Paul) [1814893] - [video] video: fbdev: intelfb: use const pointer for fb_ops (Lyude Paul) [1814893] - [include] video: fbdev: make fbops member of struct fb_info a const pointer (Lyude Paul) [1814893] - [video] video: fbdev: uvesafb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: nvidia: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: mb862xx: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: atyfb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbmem: use const pointer for fb_ops (Lyude Paul) [1814893] - [video] video: fbdev: vesafb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: udlfb: don't restore fb_mmap after deferred IO cleanup (Lyude Paul) [1814893] - [video] video: smscufx: don't restore fb_mmap after deferred IO cleanup (Lyude Paul) [1814893] - [drm] drm/fb-helper: don't preserve fb_ops across deferred IO use (Lyude Paul) [1814893] - [drm] drm/fb-helper: Remove drm_fb_helper_fbdev_{setup, teardown}() (Lyude Paul) [1814893] - [video] video: fb_defio: preserve user fb_ops (Lyude Paul) [1814893] - [drm] mm, drm/ttm: Fix vm page protection handling (Lyude Paul) [1814893] - [dma-buf] udmabuf: Remove deleted map/unmap handlers (Lyude Paul) [1814893] - [include] dma-buf: Remove kernel map/unmap hooks (Lyude Paul) [1814893] - [drm] drm/udl: Remove udl implementation of GEM's free_object() (Lyude Paul) [1814893] - [drm] drm/udl: Unmap buffer object after damage update (Lyude Paul) [1814893] - [drm] drm/udl: Fix Kconfig indentation (Lyude Paul) [1814893] - [drm] drm/udl: Replace fbdev code with generic emulation (Lyude Paul) [1814893] - [drm] drm/udl: Remove struct udl_gem_object and functions (Lyude Paul) [1814893] - [drm] drm/udl: Switch to SHMEM (Lyude Paul) [1814893] - [drm] drm/udl: Allocate GEM object via struct drm_driver.gem_create_object (Lyude Paul) [1814893] - [drm] drm/udl: Remove flags field from struct udl_gem_object (Lyude Paul) [1814893] - [drm] drm/armada: Delete dma_buf->k(un)map implemenation (Lyude Paul) [1814893] - [tee] drm/tee_shm: Drop dma_buf_k(unmap) support (Lyude Paul) [1814893] - [samples] sample/vfio-mdev/mbocs: Remove dma_buf_k(un)map support (Lyude Paul) [1814893] - [media] media/videobuf2: Drop dma_buf->k(un)map support (Lyude Paul) [1814893] - [drm] drm/vmwgfx: Delete mmaping functions (Lyude Paul) [1814893] - [dma-buf] dma-buf: Drop dma_buf_k(un)map (Lyude Paul) [1814893] - [drm] drm/tegra: Remove dma_buf->k(un)map (Lyude Paul) [1814893] - [drm] drm/omapdrm: Drop dma_buf->k(un)map (Lyude Paul) [1814893] - [drm] drm/i915: Drop dma_buf->k(un)map (Lyude Paul) [1814893] - [staging] staging/android/ion: delete dma_buf->kmap/unmap implemenation (Lyude Paul) [1814893] - [drm] drm/i915: Remove dma_buf_kmap selftest (Lyude Paul) [1814893] - [drm] drm/tegra: Delete host1x_bo_ops->k(un)map (Lyude Paul) [1814893] - [gpu] drm/tegra: Map cmdbuf once for reloc processing (Lyude Paul) [1814893] - [pinctrl] pinctrl: Allow modules to use pinctrl_register_mappings (Lyude Paul) [1814893] - [include] lockdep: add might_lock_nested() (Lyude Paul) [1814893] - [gpu] DRM Backport 5.4 -> 5.5 (Lyude Paul) [1814893] - [security] device_cgroup: Export devcgroup_check_permission (Lyude Paul) [1814893] - [video] fbdev: drop res_id parameter from remove_conflicting_pci_framebuffers (Lyude Paul) [1814893] - [media] media: cec: check 'transmit_in_progress', not 'transmitting' (Lyude Paul) [1814893] - [media] media: cec: avoid decrementing transmit_queue_sz if it is 0 (Lyude Paul) [1814893] - [media] media: cec: CEC 2.0-only bcast messages were ignored (Lyude Paul) [1814893] - [media] cec: add cec_adapter to cec_notifier_cec_adap_unregister() (Lyude Paul) [1814893] - [media] media: cec-pin: add 'received' callback (Lyude Paul) [1814893] - [media] media: cec: expose the new connector info API (Lyude Paul) [1814893] - [media] media: cec/cec-adap.c: use new UI_CMD defines (Lyude Paul) [1814893] - [media] media: cec-notifier: clear cec_adap in cec_notifier_unregister (Lyude Paul) [1814893] - [media] media: cec-adap: return from cec_s_conn_info() if adap is invalid (Lyude Paul) [1814893] - [media] media: cec-notifier: add new notifier functions (Lyude Paul) [1814893] - [media] media: cec: add struct cec_connector_info support (Lyude Paul) [1814893] - [media] media: cec-notifier: rename variables, check kstrdup and n->conn_name (Lyude Paul) [1814893] - [media] media: cec-adap: fix regression in ping sanity check (Lyude Paul) [1814893] - [media] media: cec: allow any initiator for Ping and Image/Text View On (Lyude Paul) [1814893] - [media] media: cec: support CEC_MSG_FL_RAW (Lyude Paul) [1814893] - [media] media: cec: add CEC_MSG_FL_RAW flag and msg_is_raw helper function (Lyude Paul) [1814893] - [media] media: cec: move check from cec_transmit to cec_transmit_msg_fh (Lyude Paul) [1814893] - [media] media: cec: cec_transmit_msg_fh: do sanity checks first (Lyude Paul) [1814893] - [media] media: cec: mark devnode as registered before actually registering it (Lyude Paul) [1814893] - [media] media: cec-notifier: add cec_notifier_parse_hdmi_phandle helper (Lyude Paul) [1814893] - [media] media: Kconfig files: use the right help coding style (Lyude Paul) [1814893] - [media] media: cec: fill in cec chardev kobject to ease debugging (Lyude Paul) [1814893] - [media] media: cec: fix epoll() by calling poll_wait first (Lyude Paul) [1814893] - [media] media: cec: keep track of outstanding transmits (Lyude Paul) [1814893] - [media] media: cec: add debug_phys_addr module option (Lyude Paul) [1814893] - [media] media: cec: report Vendor ID after initialization (Lyude Paul) [1814893] - [media] media: cec-pin: fix broken tx_ignore_nack_until_eom error injection (Lyude Paul) [1814893] - [media] media: cec: increase debug level for 'queue full' (Lyude Paul) [1814893] - [media] media: cec: check for non-OK/NACK conditions while claiming a LA (Lyude Paul) [1814893] - [media] media: cec: forgot to cancel delayed work (Lyude Paul) [1814893] - [media] media: cec: name for RC passthrough device does not need 'RC for' (Lyude Paul) [1814893] - [media] media: cec-gpio: select correct Signal Free Time (Lyude Paul) [1814893] - [media] media: cec: fix the Signal Free Time calculation (Lyude Paul) [1814893] - [media] media: cec: add new tx/rx status bits to detect aborts/timeouts (Lyude Paul) [1814893] - [media] media: cec: remove cec-edid.c (Lyude Paul) [1814893] - [media] media: cec/v4l2: move V4L2 specific CEC functions to V4L2 (Lyude Paul) [1814893] - [media] media: cec: integrate cec_validate_phys_addr() in cec-api.c (Lyude Paul) [1814893] - [media] media: cec: make cec_get_edid_spa_location() an inline function (Lyude Paul) [1814893] - [media] media: use strscpy() instead of strlcpy() (Lyude Paul) [1814893] - [media] media: cec: move compat_ioctl handling to cec-api.c (Lyude Paul) [1814893] - [media] media: cec: add support for 5V signal testing (Lyude Paul) [1814893] - [uapi] media: uapi/linux/cec.h: add 5V events (Lyude Paul) [1814893] - [scsi] compat_ioctl: move more drivers to compat_ptr_ioctl (Lyude Paul) [1814893] - [vhost] compat_ioctl: move drivers to compat_ptr_ioctl (Lyude Paul) [1814893] - [rtc] compat_ioctl: move rtc handling into drivers/rtc/dev.c (Lyude Paul) [1814893] - [fs] ceph: fix compat_ioctl for ceph_dir_operations (Lyude Paul) [1814893] - [fs] compat_sys_ioctl(): make parallel to do_vfs_ioctl() (Lyude Paul) [1814893] - [fs] compat: move FS_IOC_RESVSP_32 handling to fs/ioctl.c (Lyude Paul) [1814893] - [fs] do_vfs_ioctl(): use saner types (Lyude Paul) [1814893] - [fs] compat: itanic doesn't have one (Lyude Paul) [1814893] - [fs] FIGETBSZ: fix compat (Lyude Paul) [1814893] - [fs] fix compat handling of FICLONERANGE, FIDEDUPERANGE and FS_IOC_FIEMAP (Lyude Paul) [1814893] - [gpu] DRM Backport 5.3 -> 5.4 (Lyude Paul) [1814893] - [include] Add wait_var_event_interruptible() (Lyude Paul) [1814893] - [kernel] kthread: Add __kthread_should_park() (Lyude Paul) [1814893] - [kernel] PM / sleep: Refactor filesystems sync to reduce duplication (Lyude Paul) [1814893] - [fpga] drivers: Introduce device lookup variants by of_node (Lyude Paul) [1814893] - [s390] drivers: Introduce device lookup variants by name (Lyude Paul) [1814893] - [base] drivers: Add generic helper to match by of_node (Lyude Paul) [1814893] - [drm] kbuild: change *FLAGS_.o to take the path relative to $(obj) (Lyude Paul) [1814893] - [video] fbdev: lock_fb_info cannot fail (Lyude Paul) [1814893] - [video] fbdev/atyfb: lock_fb_info can't fail (Lyude Paul) [1814893] - [video] fbdev: sysfs files can't disappear before the device is gone (Lyude Paul) [1814893] - [video] fbcon: call fbcon_fb_(un)registered directly (Lyude Paul) [1814893] - [video] fbcon: Remove fbcon_has_exited (Lyude Paul) [1814893] - [video] fbcon: s/struct display/struct fbcon_display/ (Lyude Paul) [1814893] - [video] fbdev: locking check for fb_set_suspend (Lyude Paul) [1814893] - [tty] vt/fbcon: deinitialize resources in visual_init() after failed memory allocation (Lyude Paul) [1814893] - [video] fbcon: Don't reset logo_shown when logo is currently shown (Lyude Paul) [1814893] - [video] fbdev: fix WARNING in __alloc_pages_nodemask bug (Lyude Paul) [1814893] - [video] fbdev: fix divide error in fb_var_to_videomode (Lyude Paul) [1814893] - [video] fbdev: list all pci memory bars as conflicting apertures (Lyude Paul) [1814893]- [block] Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT" (Jeff Moyer) [1784478] - [fs] io_uring: reset -EBUSY error when io sq thread is waken up (Jeff Moyer) [1784478] - [fs] io_uring: don't add non-IO requests to iopoll pending list (Jeff Moyer) [1784478] - [fs] io_uring: don't use kiocb.private to store buf_index (Jeff Moyer) [1784478] - [fs] io_uring: cancel work if task_work_add() fails (Jeff Moyer) [1784478] - [fs] io_uring: remove dead check in io_splice() (Jeff Moyer) [1784478] - [fs] io_uring: fix FORCE_ASYNC req preparation (Jeff Moyer) [1784478] - [fs] io_uring: don't prepare DRAIN reqs twice (Jeff Moyer) [1784478] - [fs] io_uring: initialize ctx->sqo_wait earlier (Jeff Moyer) [1784478] - [fs] io_uring: polled fixed file must go through free iteration (Jeff Moyer) [1784478] - [fs] io_uring: fix zero len do_splice() (Jeff Moyer) [1784478] - [fs] io_uring: don't use 'fd' for openat/openat2/statx (Jeff Moyer) [1784478] - [fs] splice: move f_mode checks to do_{splice, tee}() (Jeff Moyer) [1784478] - [fs] io_uring: handle -EFAULT properly in io_uring_setup() (Jeff Moyer) [1784478] - [fs] io_uring: fix mismatched finish_wait() calls in io_uring_cancel_files() (Jeff Moyer) [1784478] - [fs] io_uring: punt splice async because of inode mutex (Jeff Moyer) [1784478] - [fs] io_uring: check non-sync defer_list carefully (Jeff Moyer) [1784478] - [fs] io_uring: fix extra put in sync_file_range() (Jeff Moyer) [1784478] - [fs] io_uring: use cond_resched() in io_ring_ctx_wait_and_kill() (Jeff Moyer) [1784478] - [fs] io_uring: use proper references for fallback_req locking (Jeff Moyer) [1784478] - [fs] io_uring: only force async punt if poll based retry can't handle it (Jeff Moyer) [1784478] - [fs] io_uring: enable poll retry for any file with ->read_iter / ->write_iter (Jeff Moyer) [1784478] - [fs] io_uring: statx must grab the file table for valid fd (Jeff Moyer) [1784478] - [fs] io_uring: only restore req->work for req that needs do completion (Jeff Moyer) [1784478] - [fs] io_uring: don't count rqs failed after current one (Jeff Moyer) [1784478] - [fs] io_uring: kill already cached timeout.seq_offset (Jeff Moyer) [1784478] - [fs] io_uring: fix cached_sq_head in io_timeout() (Jeff Moyer) [1784478] - [fs] io_uring: only post events in io_poll_remove_all() if we completed some (Jeff Moyer) [1784478] - [fs] io_uring: io_async_task_func() should check and honor cancelation (Jeff Moyer) [1784478] - [fs] io_uring: check for need to re-wait in polled async handling (Jeff Moyer) [1784478] - [fs] io_uring: correct O_NONBLOCK check for splice punt (Jeff Moyer) [1784478] - [fs] io_uring: restore req->work when canceling poll request (Jeff Moyer) [1784478] - [fs] io_uring: move all request init code in one place (Jeff Moyer) [1784478] - [fs] io_uring: keep all sqe->flags in req->flags (Jeff Moyer) [1784478] - [fs] io_uring: early submission req fail code (Jeff Moyer) [1784478] - [fs] io_uring: track mm through current->mm (Jeff Moyer) [1784478] - [fs] io_uring: remove obsolete @mm_fault (Jeff Moyer) [1784478] - [fs] io_uring: punt final io_ring_ctx wait-and-free to workqueue (Jeff Moyer) [1784478] - [fs] io_uring: fix fs cleanup on cqe overflow (Jeff Moyer) [1784478] - [fs] io_uring: don't read user-shared sqe flags twice (Jeff Moyer) [1784478] - [fs] io_uring: remove req init from io_get_req() (Jeff Moyer) [1784478] - [fs] io_uring: alloc req only after getting sqe (Jeff Moyer) [1784478] - [fs] io_uring: simplify io_get_sqring (Jeff Moyer) [1784478] - [fs] io_uring: do not always copy iovec in io_req_map_rw() (Jeff Moyer) [1784478] - [fs] io_uring: ensure openat sets O_LARGEFILE if needed (Jeff Moyer) [1784478] - [fs] io_uring: initialize fixed_file_data lock (Jeff Moyer) [1784478] - [fs] io_uring: remove redundant variable pointer nxt and io_wq_assign_next call (Jeff Moyer) [1784478] - [fs] io_uring: fix ctx refcounting in io_submit_sqes() (Jeff Moyer) [1784478] - [fs] io_uring: process requests completed with -EAGAIN on poll list (Jeff Moyer) [1784478] - [fs] io_uring: remove bogus RLIMIT_NOFILE check in file registration (Jeff Moyer) [1784478] - [fs] io_uring: use io-wq manager as backup task if task is exiting (Jeff Moyer) [1784478] - [fs] io_uring: grab task reference for poll requests (Jeff Moyer) [1784478] - [fs] io_uring: retry poll if we got woken with non-matching mask (Jeff Moyer) [1784478] - [fs] io_uring: add missing finish_wait() in io_sq_thread() (Jeff Moyer) [1784478] - [fs] io_uring: refactor file register/unregister/update handling (Jeff Moyer) [1784478] - [fs] io_uring: cleanup io_alloc_async_ctx() (Jeff Moyer) [1784478] - [fs] io_uring: fix missing 'return' in comment (Jeff Moyer) [1784478] - [fs] io-wq: handle hashed writes in chains (Jeff Moyer) [1784478] - [fs] io-uring: drop 'free_pfile' in struct io_file_put (Jeff Moyer) [1784478] - [fs] io-uring: drop completion when removing file (Jeff Moyer) [1784478] - [fs] io_uring: Fix ->data corruption on re-enqueue (Jeff Moyer) [1784478] - [fs] io-wq: close cancel gap for hashed linked work (Jeff Moyer) [1784478] - [uapi] io_uring: make spdxcheck.py happy (Jeff Moyer) [1784478] - [fs] io_uring: honor original task RLIMIT_FSIZE (Jeff Moyer) [1784478] - [fs] io_uring: make sure accept honor rlimit nofile (Jeff Moyer) [1784478] - [fs] io_uring: make sure openat/openat2 honor rlimit nofile (Jeff Moyer) [1784478] - [fs] io-wq: hash dependent work (Jeff Moyer) [1784478] - [fs] io-wq: split hashing and enqueueing (Jeff Moyer) [1784478] - [fs] io-wq: don't resched if there is no work (Jeff Moyer) [1784478] - [fs] io_uring: NULL-deref for IOSQE_{ASYNC,DRAIN} (Jeff Moyer) [1784478] - [fs] io-wq: remove duplicated cancel code (Jeff Moyer) [1784478] - [fs] io_uring: fix truncated async read/readv and write/writev retry (Jeff Moyer) [1784478] - [uapi] io_uring: dual license io_uring.h uapi header (Jeff Moyer) [1784478] - [fs] io_uring: io_uring_enter(2) don't poll while SETUP_IOPOLL|SETUP_SQPOLL enabled (Jeff Moyer) [1784478] - [fs] io_uring: Fix unused function warnings (Jeff Moyer) [1784478] - [fs] io_uring: add end-of-bits marker and build time verify it (Jeff Moyer) [1784478] - [fs] io_uring: provide means of removing buffers (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_RECVMSG (Jeff Moyer) [1784478] - [net] net: abstract out normal and compat msghdr import (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_READV (Jeff Moyer) [1784478] - [fs] io_uring: support buffer selection for OP_READ and OP_RECV (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_PROVIDE_BUFFERS (Jeff Moyer) [1784478] - [fs] io_uring: ensure RCU callback ordering with rcu_barrier() (Jeff Moyer) [1784478] - [fs] io_uring: fix lockup with timeouts (Jeff Moyer) [1784478] - [fs] io_uring: free fixed_file_data after RCU grace period (Jeff Moyer) [1784478] - [fs] io_uring: buffer registration infrastructure (Jeff Moyer) [1784478] - [fs] io_uring/io-wq: forward submission ref to async (Jeff Moyer) [1784478] - [fs] io-wq: optimise out *next_work() double lock (Jeff Moyer) [1784478] - [fs] io-wq: optimise locking in io_worker_handle_work() (Jeff Moyer) [1784478] - [fs] io-wq: shuffle io_worker_handle_work() code (Jeff Moyer) [1784478] - [fs] io_uring: get next work with submission ref drop (Jeff Moyer) [1784478] - [fs] io_uring: remove @nxt from handlers (Jeff Moyer) [1784478] - [fs] io_uring: make submission ref putting consistent (Jeff Moyer) [1784478] - [fs] io_uring: clean up io_close (Jeff Moyer) [1784478] - [fs] io_uring: Ensure mask is initialized in io_arm_poll_handler (Jeff Moyer) [1784478] - [fs] io_uring: remove io_prep_next_work() (Jeff Moyer) [1784478] - [fs] io_uring: remove extra nxt check after punt (Jeff Moyer) [1784478] - [fs] io_uring: use poll driven retry for files that support it (Jeff Moyer) [1784478] - [fs] io_uring: mark requests that we can do poll async in io_op_defs (Jeff Moyer) [1784478] - [fs] io_uring: add per-task callback handler (Jeff Moyer) [1784478] - [fs] io_uring: store io_kiocb in wait->private (Jeff Moyer) [1784478] - [fs] io-wq: use BIT for ulong hash (Jeff Moyer) [1784478] - [fs] io_uring: remove IO_WQ_WORK_CB (Jeff Moyer) [1784478] - [fs] io-wq: remove unused IO_WQ_WORK_HAS_MM (Jeff Moyer) [1784478] - [fs] io_uring: extract kmsg copy helper (Jeff Moyer) [1784478] - [fs] io_uring: clean io_poll_complete (Jeff Moyer) [1784478] - [fs] io_uring: add splice(2) support (Jeff Moyer) [1784478] - [fs] io_uring: add interface for getting files (Jeff Moyer) [1784478] - [fs] splice: make do_splice public (Jeff Moyer) [1784478] - [fs] io_uring: remove req->in_async (Jeff Moyer) [1784478] - [fs] io_uring: don't do full *prep_worker() from io-wq (Jeff Moyer) [1784478] - [fs] io_uring: don't call work.func from sync ctx (Jeff Moyer) [1784478] - [fs] io_uring: io_accept() should hold on to submit reference on retry (Jeff Moyer) [1784478] - [fs] io_uring: consider any io_read/write -EAGAIN as final (Jeff Moyer) [1784478] - [fs] io-wq: remove io_wq_flush and IO_WQ_WORK_INTERNAL (Jeff Moyer) [1784478] - [fs] io-wq: fix IO_WQ_WORK_NO_CANCEL cancellation (Jeff Moyer) [1784478] - [fs] io_uring: fix 32-bit compatability with sendmsg/recvmsg (Jeff Moyer) [1784478] - [fs] io_uring: define and set show_fdinfo only if procfs is enabled (Jeff Moyer) [1784478] - [fs] io_uring: drop file set ref put/get on switch (Jeff Moyer) [1784478] - [fs] io_uring: import_single_range() returns 0/-ERROR (Jeff Moyer) [1784478] - [fs] io_uring: pick up link work on submit reference drop (Jeff Moyer) [1784478] - [fs] io-wq: ensure work->task_pid is cleared on init (Jeff Moyer) [1784478] - [fs] io-wq: remove spin-for-work optimization (Jeff Moyer) [1784478] - [fs] io_uring: fix poll_list race for SETUP_IOPOLL|SETUP_SQPOLL (Jeff Moyer) [1784478] - [fs] io_uring: fix personality idr leak (Jeff Moyer) [1784478] - [fs] io_uring: handle multiple personalities in link chains (Jeff Moyer) [1784478] - [fs] io_uring: fix __io_iopoll_check deadlock in io_sq_thread (Jeff Moyer) [1784478] - [fs] io_uring: prevent sq_thread from spinning when it should stop (Jeff Moyer) [1784478] - [fs] io_uring: fix use-after-free by io_cleanup_req() (Jeff Moyer) [1784478] - [fs] io_uring: remove unnecessary NULL checks (Jeff Moyer) [1784478] - [fs] io_uring: add missing io_req_cancelled() (Jeff Moyer) [1784478] - [fs] io_uring: prune request from overflow list on flush (Jeff Moyer) [1784478] - [fs] io-wq: don't call kXalloc_node() with non-online node (Jeff Moyer) [1784478] - [fs] io_uring: retain sockaddr_storage across send/recvmsg async punt (Jeff Moyer) [1784478] - [fs] io_uring: cancel pending async work if task exits (Jeff Moyer) [1784478] - [fs] io-wq: add io_wq_cancel_pid() to cancel based on a specific pid (Jeff Moyer) [1784478] - [fs] io-wq: make io_wqe_cancel_work() take a match handler (Jeff Moyer) [1784478] - [fs] io_uring: fix openat/statx's filename leak (Jeff Moyer) [1784478] - [fs] io_uring: fix double prep iovec leak (Jeff Moyer) [1784478] - [fs] io_uring: fix async close() with f_op->flush() (Jeff Moyer) [1784478] - [fs] io_uring: allow AT_FDCWD for non-file openat/openat2/statx (Jeff Moyer) [1784478] - [fs] io_uring: grab ->fs as part of async preparation (Jeff Moyer) [1784478] - [fs] io-wq: add support for inheriting ->fs (Jeff Moyer) [1784478] - [fs] io_uring: retry raw bdev writes if we hit -EOPNOTSUPP (Jeff Moyer) [1784478] - [fs] io_uring: add cleanup for openat()/statx() (Jeff Moyer) [1784478] - [fs] io_uring: fix iovec leaks (Jeff Moyer) [1784478] - [fs] io_uring: remove unused struct io_async_open (Jeff Moyer) [1784478] - [fs] io_uring: flush overflowed CQ events in the io_uring_poll() (Jeff Moyer) [1784478] - [fs] io_uring: statx/openat/openat2 don't support fixed files (Jeff Moyer) [1784478] - [fs] io_uring: fix deferred req iovec leak (Jeff Moyer) [1784478] - [fs] io_uring: fix 1-bit bitfields to be unsigned (Jeff Moyer) [1784478] - [fs] io_uring: get rid of delayed mm check (Jeff Moyer) [1784478] - [fs] io_uring: cleanup fixed file data table references (Jeff Moyer) [1784478] - [fs] io_uring: spin for sq thread to idle on shutdown (Jeff Moyer) [1784478] - [fs] io_uring: put the flag changing code in the same spot (Jeff Moyer) [1784478] - [fs] io_uring: iterate req cache backwards (Jeff Moyer) [1784478] - [fs] io_uring: punt even fadvise() WILLNEED to async context (Jeff Moyer) [1784478] - [fs] io_uring: fix sporadic double CQE entry for close (Jeff Moyer) [1784478] - [fs] io_uring: remove extra ->file check (Jeff Moyer) [1784478] - [fs] io_uring: don't map read/write iovec potentially twice (Jeff Moyer) [1784478] - [fs] io_uring: use the proper helpers for io_send/recv (Jeff Moyer) [1784478] - [fs] io_uring: prevent potential eventfd recursion on poll (Jeff Moyer) [1784478] - [fs] eventfd: track eventfd_signal() recursion depth (Jeff Moyer) [1784478] - [fs] io_uring: add BUILD_BUG_ON() to assert the layout of struct io_uring_sqe (Jeff Moyer) [1784478] - [fs] io_uring: add ->show_fdinfo() for the io_uring file descriptor (Jeff Moyer) [1784478] - [fs] io_uring: add support for epoll_ctl(2) (Jeff Moyer) [1784478] - [fs] eventpoll: support non-blocking do_epoll_ctl() calls (Jeff Moyer) [1784478] - [fs] eventpoll: abstract out epoll_ctl() handler (Jeff Moyer) [1784478] - [fs] io_uring: fix linked command file table usage (Jeff Moyer) [1784478] - [fs] io_uring: support using a registered personality for commands (Jeff Moyer) [1784478] - [fs] io_uring: allow registering credentials (Jeff Moyer) [1784478] - [fs] io_uring: add io-wq workqueue sharing (Jeff Moyer) [1784478] - [fs] io-wq: allow grabbing existing io-wq (Jeff Moyer) [1784478] - [fs] io_uring/io-wq: don't use static creds/mm assignments (Jeff Moyer) [1784478] - [fs] io-wq: make the io_wq ref counted (Jeff Moyer) [1784478] - [fs] io_uring: fix refcounting with batched allocations at OOM (Jeff Moyer) [1784478] - [fs] io_uring: add comment for drain_next (Jeff Moyer) [1784478] - [fs] io_uring: don't attempt to copy iovec for READ/WRITE (Jeff Moyer) [1784478] - [fs] io_uring: don't cancel all work on process exit (Jeff Moyer) [1784478] - [fs] Revert "io_uring: only allow submit from owning task" (Jeff Moyer) [1784478] - [fs] io_uring: honor IOSQE_ASYNC for linked reqs (Jeff Moyer) [1784478] - [fs] io_uring: prep req when do IOSQE_ASYNC (Jeff Moyer) [1784478] - [fs] io_uring: use labeled array init in io_op_defs (Jeff Moyer) [1784478] - [fs] io_uring: optimise sqe-to-req flags translation (Jeff Moyer) [1784478] - [fs] io_uring: remove REQ_F_IO_DRAINED (Jeff Moyer) [1784478] - [fs] io_uring: file switch work needs to get flushed on exit (Jeff Moyer) [1784478] - [fs] io_uring: hide uring_fd in ctx (Jeff Moyer) [1784478] - [fs] io_uring: remove extra check in __io_commit_cqring (Jeff Moyer) [1784478] - [fs] io_uring: optimise use of ctx->drain_next (Jeff Moyer) [1784478] - [fs] RHEL-only: Add IORING_OP_OPENAT2 opcode (Jeff Moyer) [1784478] - [fs] io_uring: add support for probing opcodes (Jeff Moyer) [1784478] - [fs] io_uring: account fixed file references correctly in batch (Jeff Moyer) [1784478] - [fs] io_uring: add opcode to issue trace event (Jeff Moyer) [1784478] - [fs] io_uring: enable option to only trigger eventfd for async completions (Jeff Moyer) [1784478] - [fs] io_uring: change io_ring_ctx bool fields into bit fields (Jeff Moyer) [1784478] - [fs] io_uring: file set registration should use interruptible waits (Jeff Moyer) [1784478] - [fs] io_uring: Remove unnecessary null check (Jeff Moyer) [1784478] - [fs] io_uring: add support for send(2) and recv(2) (Jeff Moyer) [1784478] - [fs] io_uring: remove extra io_wq_current_is_worker() (Jeff Moyer) [1784478] - [fs] io_uring: optimise commit_sqring() for common case (Jeff Moyer) [1784478] - [fs] io_uring: optimise head checks in io_get_sqring() (Jeff Moyer) [1784478] - [fs] io_uring: clamp to_submit in io_submit_sqes() (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_SETUP_CLAMP (Jeff Moyer) [1784478] - [fs] io_uring: extend batch freeing to cover more cases (Jeff Moyer) [1784478] - [fs] io_uring: wrap multi-req freeing in struct req_batch (Jeff Moyer) [1784478] - [fs] io_uring: batch getting pcpu references (Jeff Moyer) [1784478] - [include] pcpu_ref: add percpu_ref_tryget_many() (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_MADVISE (Jeff Moyer) [1784478] - [mm] mm: make do_madvise() available internally (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_FADVISE (Jeff Moyer) [1784478] - [fs] io_uring: allow use of offset == -1 to mean file position (Jeff Moyer) [1784478] - [fs] io_uring: add non-vectored read/write commands (Jeff Moyer) [1784478] - [fs] io_uring: improve poll completion performance (Jeff Moyer) [1784478] - [fs] io_uring: split overflow state into SQ and CQ side (Jeff Moyer) [1784478] - [fs] io_uring: add lookup table for various opcode needs (Jeff Moyer) [1784478] - [fs] io_uring: remove two unnecessary function declarations (Jeff Moyer) [1784478] - [fs] io_uring: move *queue_link_head() from common path (Jeff Moyer) [1784478] - [fs] io_uring: rename prev to head (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_ASYNC (Jeff Moyer) [1784478] - [fs] io-wq: support concurrent non-blocking work (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_STATX (Jeff Moyer) [1784478] - [fs] fs: make two stat prep helpers available (Jeff Moyer) [1784478] - [fs] io_uring: avoid ring quiesce for fixed file set unregister and update (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_CLOSE (Jeff Moyer) [1784478] - [fs] io-wq: add support for uncancellable work (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_OPENAT (Jeff Moyer) [1784478] - [fs] fs: make build_open_flags() available internally (Jeff Moyer) [1784478] - [fs] io_uring: add support for fallocate() (Jeff Moyer) [1784478] - [fs] io_uring: fix compat for IORING_REGISTER_FILES_UPDATE (Jeff Moyer) [1784478] - [fs] io_uring: only allow submit from owning task (Jeff Moyer) [1784478] - [fs] io_uring: ensure workqueue offload grabs ring mutex for poll list (Jeff Moyer) [1784478] - [fs] io_uring: clear req->result always before issuing a read/write request (Jeff Moyer) [1784478] - [fs] io_uring: be consistent in assigning next work from handler (Jeff Moyer) [1784478] - [fs] io-wq: cancel work if we fail getting a mm reference (Jeff Moyer) [1784478] - [fs] io_uring: don't setup async context for read/write fixed (Jeff Moyer) [1784478] - [fs] io_uring: remove punt of short reads to async context (Jeff Moyer) [1784478] - [fs] io-wq: add cond_resched() to worker thread (Jeff Moyer) [1784478] - [fs] io-wq: remove unused busy list from io_sqe (Jeff Moyer) [1784478] - [fs] io_uring: pass in 'sqe' to the prep handlers (Jeff Moyer) [1784478] - [fs] io_uring: standardize the prep methods (Jeff Moyer) [1784478] - [fs] io_uring: read 'count' for IORING_OP_TIMEOUT in prep handler (Jeff Moyer) [1784478] - [fs] io_uring: move all prep state for IORING_OP_{SEND, RECV}_MGS to prep handler (Jeff Moyer) [1784478] - [fs] io_uring: move all prep state for IORING_OP_CONNECT to prep handler (Jeff Moyer) [1784478] - [fs] io_uring: add and use struct io_rw for read/writes (Jeff Moyer) [1784478] - [fs] io_uring: use u64_to_user_ptr() consistently (Jeff Moyer) [1784478] - [fs] io_uring: io_wq_submit_work() should not touch req->rw (Jeff Moyer) [1784478] - [fs] io_uring: don't wait when under-submitting (Jeff Moyer) [1784478] - [fs] io_uring: warn about unhandled opcode (Jeff Moyer) [1784478] - [fs] io_uring: read opcode and user_data from SQE exactly once (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_OP_TIMEOUT_REMOVE deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_OP_CANCEL_ASYNC deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_POLL_ADD and IORING_POLL_REMOVE deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make HARDLINK imply LINK (Jeff Moyer) [1784478] - [fs] io_uring: any deferred command must have stable sqe data (Jeff Moyer) [1784478] - [fs] io_uring: remove 'sqe' parameter to the OP helpers that take it (Jeff Moyer) [1784478] - [fs] io_uring: fix pre-prepped issue with force_nonblock == true (Jeff Moyer) [1784478] - [fs] io-wq: re-add io_wq_current_is_worker() (Jeff Moyer) [1784478] - [fs] io_uring: fix sporadic -EFAULT from IORING_OP_RECVMSG (Jeff Moyer) [1784478] - [fs] io_uring: fix stale comment and a few typos (Jeff Moyer) [1784478] - [fs] io_uring: ensure we return -EINVAL on unknown opcode (Jeff Moyer) [1784478] - [fs] io_uring: add sockets to list of files that support non-blocking issue (Jeff Moyer) [1784478] - [net] net: make socket read/write_iter() honor IOCB_NOWAIT (Jeff Moyer) [1784478] - [fs] io_uring: only hash regular files for async work execution (Jeff Moyer) [1784478] - [fs] io_uring: run next sqe inline if possible (Jeff Moyer) [1784478] - [fs] io_uring: don't dynamically allocate poll data (Jeff Moyer) [1784478] - [fs] io_uring: deferred send/recvmsg should assign iov (Jeff Moyer) [1784478] - [fs] io_uring: sqthread should grab ctx->uring_lock for submissions (Jeff Moyer) [1784478] - [fs] io-wq: briefly spin for new work after finishing work (Jeff Moyer) [1784478] - [fs] io-wq: remove worker->wait waitqueue (Jeff Moyer) [1784478] - [fs] io_uring: allow unbreakable links (Jeff Moyer) [1784478] - [fs] io_uring: fix a typo in a comment (Jeff Moyer) [1784478] - [fs] io_uring: hook all linked requests via link_list (Jeff Moyer) [1784478] - [fs] io_uring: fix error handling in io_queue_link_head (Jeff Moyer) [1784478] - [fs] io_uring: use hash table for poll command lookups (Jeff Moyer) [1784478] - [fs] io-wq: clear node->next on list deletion (Jeff Moyer) [1784478] - [fs] io_uring: ensure deferred timeouts copy necessary data (Jeff Moyer) [1784478] - [fs] io_uring: allow IO_SQE_* flags on IORING_OP_TIMEOUT (Jeff Moyer) [1784478] - [fs] io_uring: handle connect -EINPROGRESS like -EAGAIN (Jeff Moyer) [1784478] - [fs] io_uring: remove io_wq_current_is_worker (Jeff Moyer) [1784478] - [fs] io_uring: remove parameter ctx of io_submit_state_start (Jeff Moyer) [1784478] - [fs] io_uring: mark us with IORING_FEAT_SUBMIT_STABLE (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted connect requests copy data (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted sendmsg/recvmsg requests copy data (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted read/write requests copy iovec (Jeff Moyer) [1784478] - [fs] io_uring: add general async offload context (Jeff Moyer) [1784478] - [fs] io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR (Jeff Moyer) [1784478] - [fs] io_uring: use current task creds instead of allocating a new one (Jeff Moyer) [1784478] - [fs] io_uring: fix missing kmap() declaration on powerpc (Jeff Moyer) [1784478] - [fs] io_uring: add mapping support for NOMMU archs (Jeff Moyer) [1784478] - [fs] io_uring: make poll->wait dynamically allocated (Jeff Moyer) [1784478] - [fs] io-wq: shrink io_wq_work a bit (Jeff Moyer) [1784478] - [fs] io-wq: fix handling of NUMA node IDs (Jeff Moyer) [1784478] - [fs] io_uring: use kzalloc instead of kcalloc for single-element allocations (Jeff Moyer) [1784478] - [fs] io_uring: cleanup io_import_fixed() (Jeff Moyer) [1784478] - [fs] io_uring: inline struct sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: store timeout's sqe->off in proper place (Jeff Moyer) [1784478] - [net] net: disallow ancillary data for __sys_{send, recv}msg_file() (Jeff Moyer) [1784478] - [net] net: separate out the msghdr copy from ___sys_{send, recv}msg() (Jeff Moyer) [1784478] - [fs] io_uring: remove superfluous check for sqe->off in io_accept() (Jeff Moyer) [1784478] - [fs] io_uring: async workers should inherit the user creds (Jeff Moyer) [1784478] - [fs] io-wq: have io_wq_create() take a 'data' argument (Jeff Moyer) [1784478] - [fs] io_uring: fix dead-hung for non-iter fixed rw (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_CONNECT (Jeff Moyer) [1784478] - [net] net: add __sys_connect_file() helper (Jeff Moyer) [1784478] - [fs] io_uring: only return -EBUSY for submit on non-flushed backlog (Jeff Moyer) [1784478] - [fs] io_uring: only !null ptr to io_issue_sqe() (Jeff Moyer) [1784478] - [fs] io_uring: simplify io_req_link_next() (Jeff Moyer) [1784478] - [fs] io_uring: pass only !null to io_req_find_next() (Jeff Moyer) [1784478] - [fs] io_uring: remove io_free_req_find_next() (Jeff Moyer) [1784478] - [fs] io_uring: add likely/unlikely in io_get_sqring() (Jeff Moyer) [1784478] - [fs] io_uring: rename __io_submit_sqe() (Jeff Moyer) [1784478] - [fs] io_uring: improve trace_io_uring_defer() trace point (Jeff Moyer) [1784478] - [fs] io_uring: drain next sqe instead of shadowing (Jeff Moyer) [1784478] - [fs] io_uring: close lookup gap for dependent next work (Jeff Moyer) [1784478] - [fs] io_uring: allow finding next link independent of req reference count (Jeff Moyer) [1784478] - [fs] io_uring: io_allocate_scq_urings() should return a sane state (Jeff Moyer) [1784478] - [fs] io_uring: Always REQ_F_FREE_SQE for allocated sqe (Jeff Moyer) [1784478] - [fs] io_uring: io_fail_links() should only consider first linked timeout (Jeff Moyer) [1784478] - [fs] io_uring: Fix leaking linked timeouts (Jeff Moyer) [1784478] - [fs] io_uring: remove redundant check (Jeff Moyer) [1784478] - [fs] io_uring: break links for failed defer (Jeff Moyer) [1784478] - [fs] io-wq: remove extra space characters (Jeff Moyer) [1784478] - [fs] io-wq: wait for io_wq_create() to setup necessary workers (Jeff Moyer) [1784478] - [fs] io_uring: request cancellations should break links (Jeff Moyer) [1784478] - [fs] io_uring: correct poll cancel and linked timeout expiration completion (Jeff Moyer) [1784478] - [fs] io_uring: remove dead REQ_F_SEQ_PREV flag (Jeff Moyer) [1784478] - [fs] io_uring: fix sequencing issues with linked timeouts (Jeff Moyer) [1784478] - [fs] io_uring: make req->timeout be dynamically allocated (Jeff Moyer) [1784478] - [fs] io_uring: make io_double_put_req() use normal completion path (Jeff Moyer) [1784478] - [fs] io_uring: cleanup return values from the queueing functions (Jeff Moyer) [1784478] - [fs] io_uring: io_async_cancel() should pass in 'nxt' request pointer (Jeff Moyer) [1784478] - [fs] io_uring: make POLL_ADD/POLL_REMOVE scale better (Jeff Moyer) [1784478] - [fs] io-wq: remove now redundant struct io_wq_nulls_list (Jeff Moyer) [1784478] - [fs] io_uring: Fix getting file for non-fd opcodes (Jeff Moyer) [1784478] - [fs] io_uring: introduce req_need_defer() (Jeff Moyer) [1784478] - [fs] io_uring: clean up io_uring_cancel_files() (Jeff Moyer) [1784478] - [fs] io-wq: ensure free/busy list browsing see all items (Jeff Moyer) [1784478] - [fs] io_uring: ensure registered buffer import returns the IO length (Jeff Moyer) [1784478] - [fs] io_uring: Fix getting file for timeout (Jeff Moyer) [1784478] - [fs] io-wq: ensure we have a stable view of ->cur_work for cancellations (Jeff Moyer) [1784478] - [fs] io_wq: add get/put_work handlers to io_wq_create() (Jeff Moyer) [1784478] - [fs] io_uring: check for validity of ->rings in teardown (Jeff Moyer) [1784478] - [fs] io_uring: fix potential deadlock in io_poll_wake() (Jeff Moyer) [1784478] - [fs] io_uring: use correct "is IO worker" helper (Jeff Moyer) [1784478] - [fs] io_uring: make timeout sequence == 0 mean no sequence (Jeff Moyer) [1784478] - [fs] io_uring: fix -ENOENT issue with linked timer with short timeout (Jeff Moyer) [1784478] - [fs] io_uring: don't do flush cancel under inflight_lock (Jeff Moyer) [1784478] - [fs] io_uring: flag SQPOLL busy condition to userspace (Jeff Moyer) [1784478] - [fs] io_uring: make ASYNC_CANCEL work with poll and timeout (Jeff Moyer) [1784478] - [fs] io_uring: provide fallback request for OOM situations (Jeff Moyer) [1784478] - [fs] io_uring: convert accept4() -ERESTARTSYS into -EINTR (Jeff Moyer) [1784478] - [fs] io_uring: fix error clear of ->file_table in io_sqe_files_register() (Jeff Moyer) [1784478] - [fs] io_uring: separate the io_free_req and io_free_req_find_next interface (Jeff Moyer) [1784478] - [fs] io_uring: keep io_put_req only responsible for release and put req (Jeff Moyer) [1784478] - [fs] io_uring: remove passed in 'ctx' function parameter ctx if possible (Jeff Moyer) [1784478] - [fs] io_uring: reduce/pack size of io_ring_ctx (Jeff Moyer) [1784478] - [fs] io_uring: properly mark async work as bounded vs unbounded (Jeff Moyer) [1784478] - [fs] io-wq: add support for bounded vs unbunded work (Jeff Moyer) [1784478] - [fs] io-wq: io_wqe_run_queue() doesn't need to use list_empty_careful() (Jeff Moyer) [1784478] - [fs] io_uring: add support for backlogged CQ ring (Jeff Moyer) [1784478] - [fs] io_uring: pass in io_kiocb to fill/add CQ handlers (Jeff Moyer) [1784478] - [fs] io_uring: make io_cqring_events() take 'ctx' as argument (Jeff Moyer) [1784478] - [fs] io_uring: add support for linked SQE timeouts (Jeff Moyer) [1784478] - [fs] io_uring: abstract out io_async_cancel_one() helper (Jeff Moyer) [1784478] - [fs] io_uring: use inlined struct sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: Use submit info inlined into req (Jeff Moyer) [1784478] - [fs] io_uring: allocate io_kiocb upfront (Jeff Moyer) [1784478] - [fs] io_uring: io_queue_link*() right after submit (Jeff Moyer) [1784478] - [fs] io_uring: Merge io_submit_sqes and io_ring_submit (Jeff Moyer) [1784478] - [fs] io_uring: kill dead REQ_F_LINK_DONE flag (Jeff Moyer) [1784478] - [fs] io_uring: fixup a few spots where link failure isn't flagged (Jeff Moyer) [1784478] - [fs] io_uring: enable optimized link handling for IORING_OP_POLL_ADD (Jeff Moyer) [1784478] - [fs] io-wq: use proper nesting IRQ disabling spinlocks for cancel (Jeff Moyer) [1784478] - [fs] io_uring: add completion trace event (Jeff Moyer) [1784478] - [fs] io-wq: use kfree_rcu() to simplify the code (Jeff Moyer) [1784478] - [fs] io_uring: set -EINTR directly when a signal wakes up in io_cqring_wait (Jeff Moyer) [1784478] - [fs] io_uring: support for generic async request cancel (Jeff Moyer) [1784478] - [fs] io_uring: ensure we clear io_kiocb->result before each issue (Jeff Moyer) [1784478] - [fs] io_uring: io_wq_create() returns an error pointer, not NULL (Jeff Moyer) [1784478] - [fs] io_uring: fix race with canceling timeouts (Jeff Moyer) [1784478] - [fs] io_uring: support for larger fixed file sets (Jeff Moyer) [1784478] - [fs] io_uring: protect fixed file indexing with array_index_nospec() (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_ACCEPT (Jeff Moyer) [1784478] - [net] net: add __sys_accept4_file() helper (Jeff Moyer) [1784478] - [fs] io_uring: io_uring: add support for async work inheriting files (Jeff Moyer) [1784478] - [fs] io_uring: replace workqueue usage with io-wq (Jeff Moyer) [1784478] - [fs] io-wq: small threadpool implementation for io_uring (Jeff Moyer) [1784478] - [fs] io_uring: Fix mm_fault with READ/WRITE_FIXED (Jeff Moyer) [1784478] - [fs] io_uring: remove index from sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: add set of tracing events (Jeff Moyer) [1784478] - [fs] io_uring: add support for canceling timeout requests (Jeff Moyer) [1784478] - [fs] io_uring: add support for absolute timeouts (Jeff Moyer) [1784478] - [fs] io_uring: replace s->needs_lock with s->in_async (Jeff Moyer) [1784478] - [fs] io_uring: allow application controlled CQ ring size (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_REGISTER_FILES_UPDATE (Jeff Moyer) [1784478] - [fs] io_uring: allow sparse fixed file sets (Jeff Moyer) [1784478] - [fs] io_uring: run dependent links inline if possible (Jeff Moyer) [1784478] - [fs] io_uring: don't touch ctx in setup after ring fd install (Jeff Moyer) [1784478] - [fs] io_uring: Fix leaked shadow_req (Jeff Moyer) [1784478] - [fs] io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD (Jeff Moyer) [1784478] - [fs] io_uring: used cached copies of sq->dropped and cq->overflow (Jeff Moyer) [1784478] - [fs] io_uring: Fix race for sqes with userspace (Jeff Moyer) [1784478] - [fs] io_uring: Fix broken links with offloading (Jeff Moyer) [1784478] - [fs] io_uring: Fix corrupted user_data (Jeff Moyer) [1784478] - [fs] io_uring: correct timeout req sequence when inserting a new entry (Jeff Moyer) [1784478] - [fs] io_uring : correct timeout req sequence when waiting timeout (Jeff Moyer) [1784478] - [fs] io_uring: revert "io_uring: optimize submit_and_wait API" (Jeff Moyer) [1784478] - [fs] io_uring: fix logic error in io_timeout (Jeff Moyer) [1784478] - [fs] io_uring: fix up O_NONBLOCK handling for sockets (Jeff Moyer) [1784478] - [fs] io_uring: consider the overflow of sequence for timeout req (Jeff Moyer) [1784478] - [fs] io_uring: fix sequence logic for timeout requests (Jeff Moyer) [1784478] - [fs] io_uring: only flush workqueues on fileset removal (Jeff Moyer) [1784478] - [fs] io_uring: remove wait loop spurious wakeups (Jeff Moyer) [1784478] - [fs] io_uring: fix reversed nonblock flag for link submission (Jeff Moyer) [1784478] - [fs] io_uring: use __kernel_timespec in timeout ABI (Jeff Moyer) [1784478] - [fs] io_uring: make CQ ring wakeups be more efficient (Jeff Moyer) [1784478] - [fs] io_uring: compare cached_cq_tail with cq.head in_io_uring_poll (Jeff Moyer) [1784478] - [fs] io_uring: correctly handle non ->{read, write}_iter() file_operations (Jeff Moyer) [1784478] - [fs] io_uring: IORING_OP_TIMEOUT support (Jeff Moyer) [1784478] - [fs] io_uring: use cond_resched() in sqthread (Jeff Moyer) [1784478] - [fs] io_uring: fix potential crash issue due to io_get_req failure (Jeff Moyer) [1784478] - [fs] io_uring: ensure poll commands clear ->sqe (Jeff Moyer) [1784478] - [fs] io_uring: fix use-after-free of shadow_req (Jeff Moyer) [1784478] - [fs] io_uring: use kmemdup instead of kmalloc and memcpy (Jeff Moyer) [1784478] - [fs] io_uring: increase IORING_MAX_ENTRIES to 32K (Jeff Moyer) [1784478] - [fs] io_uring: make sqpoll wakeup possible with getevents (Jeff Moyer) [1784478] - [fs] io_uring: extend async work merging (Jeff Moyer) [1784478] - [fs] io_uring: limit parallelism of buffered writes (Jeff Moyer) [1784478] - [fs] io_uring: add io_queue_async_work() helper (Jeff Moyer) [1784478] - [fs] io_uring: optimize submit_and_wait API (Jeff Moyer) [1784478] - [fs] io_uring: add support for link with drain (Jeff Moyer) [1784478] - [fs] io_uring: fix wrong sequence setting logic (Jeff Moyer) [1784478] - [fs] io_uring: expose single mmap capability (Jeff Moyer) [1784478] - [fs] io_uring: allocate the two rings together (Jeff Moyer) [1784478] - [lib] percpu_ref: release percpu memory early without PERCPU_REF_ALLOW_REINIT (Jeff Moyer) [1784478] - [fs] io_uring: initialize percpu refcounters using PERCU_REF_ALLOW_REINIT (Jeff Moyer) [1784478] - [include] percpu_ref: introduce PERCPU_REF_ALLOW_REINIT flag (Jeff Moyer) [1784478] - [fs] binder: fix use-after-free due to ksys_close() during fdget() (Jeff Moyer) [1784478] - [init] RHEL-only: Enable io_uring for x86 builds (Jeff Moyer) [1784478] - [arm64] compat: ARM64: always include asm-generic/compat.h (Jeff Moyer) [1784478] - [include] asm-generic: Move common compat types to asm-generic/compat.h (Jeff Moyer) [1784478]- [fs] coredump: fix crash when umh is disabled (Yauheni Kaliuta) [1845114] - [kernel] umh: fix memory leak on execve failure (Yauheni Kaliuta) [1845114] - [net] bpf: Replace zero-length array with flexible-array member (Yauheni Kaliuta) [1845114] - [net] bpf: Fix returned error sign when link doesn't support updates (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Don't attach programs to UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: cgroup: Allow multi-attach program to replace itself (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: use struct timespec instead of __kernel_timespec (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix bpf_link leak in ns_current_pid_tgid selftest (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix test_align verifier log patterns (Yauheni Kaliuta) [1845114] - [net] bpf, cgroup: Return ENOLINK for auto-detached links on update (Yauheni Kaliuta) [1845114] - [net] bpf: Refactor bpf_link update handling (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Add a verifier test for assigning 32bit reg states to 64bit ones (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Verifier bounds tests need to be updated (Yauheni Kaliuta) [1845114] - [net] bpf: Fix a verifier issue when assigning 32bit reg states to 64bit ones (Yauheni Kaliuta) [1845114] - [net] bpf: Fix use-after-free in fmod_ret check (Yauheni Kaliuta) [1845114] - [net] flow_dissector: Drop BPF flow dissector prog ref on netns cleanup (Yauheni Kaliuta) [1845114] - [tools] bpf: Prevent mmap()'ing read-only maps as writable (Yauheni Kaliuta) [1845114] - [net] bpf: Enforce returning 0 for fentry/fexit progs (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix register naming in PT_REGS s390 macros (Yauheni Kaliuta) [1845114] - [samples] samples: bpf: Fix build error (Yauheni Kaliuta) [1845114] - [net] bpf: Fix error return code in map_lookup_and_delete_elem() (Yauheni Kaliuta) [1845114] - [net] bpf: Fix sk_psock refcnt leak when receiving message (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Ensure own vmlinux.h is picked up first (Yauheni Kaliuta) [1845114] - [net] bpf: Make bpf_link_fops static (Yauheni Kaliuta) [1845114] - [tools] bpftool: Respect the -d option in struct_ops cmd (Yauheni Kaliuta) [1845114] - [net] bpf: Fix leak in LINK_UPDATE and enforce empty old_prog_fd (Yauheni Kaliuta) [1845114] - [tools] bpf: Fix reStructuredText markup (Yauheni Kaliuta) [1845114] - [tools] libbpf: Only check mode flags in get_xdp_id (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Add test for BPF_STX BPF_B storing R10 (Yauheni Kaliuta) [1845114] - [x86] bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B (Yauheni Kaliuta) [1845114] - [net] bpf: Forbid XADD on spilled pointers for unprivileged users (Yauheni Kaliuta) [1845114] - [tools] libbpf: Always specify expected_attach_type on program load if supported (Yauheni Kaliuta) [1845114] - [net] bpf: remove unneeded conversion to bool in __mark_reg_unknown (Yauheni Kaliuta) [1845114] - [tools] tools, bpftool: Fix struct_ops command invalid pointer free (Yauheni Kaliuta) [1845114] - [net] bpf: Fix use of sk->sk_reuseport from sk_assign (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add test for bpf_get_link_xdp_id (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix bpf_get_link_xdp_id flags handling (Yauheni Kaliuta) [1845114] - [net] bpf: Fix a typo "inacitve" -> "inactive" (Yauheni Kaliuta) [1845114] - [tools] libbpf: Initialize *nl_pid so gcc 10 is happy (Yauheni Kaliuta) [1845114] - [tools] bpf, lsm: Fix the file_mprotect LSM test (Yauheni Kaliuta) [1845114] - [tools] bpf: Fix spelling mistake "arithmatic" -> "arithmetic" in test_verifier (Yauheni Kaliuta) [1845114] - [lib] kbuild, btf: Fix dependencies for DEBUG_INFO_BTF (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Test FD-based cgroup attachment (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add support for bpf_link-based cgroup attachment (Yauheni Kaliuta) [1845114] - [net] bpf: Implement bpf_prog replacement for an active bpf_cgroup_link (Yauheni Kaliuta) [1845114] - [net] bpf: Implement bpf_link-based cgroup BPF program attachment (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, add alu32 bounds tracking tests (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, #65 error message updates for trunc of boundary-cross (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, bpf_get_stack return value add <0 (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_progs, add test to catch retval refine error handling (Yauheni Kaliuta) [1845114] - [net] bpf: Verifier, refine 32bit bound in do_refine_retval_range (Yauheni Kaliuta) [1845114] - [include] bpf: Verifier, do explicit ALU32 bounds tracking (Yauheni Kaliuta) [1845114] - [net] bpf: Verifier, do_refine_retval_range may clamp umin to 0 incorrectly (Yauheni Kaliuta) [1845114] - [init] bpf, lsm: Make BPF_LSM depend on BPF_EVENTS (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Extend sk_assign tests for UDP (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Add test for sk_assign (Yauheni Kaliuta) [1845114] - [net] bpf: Don't refcount LISTEN sockets in sk_assign() (Yauheni Kaliuta) [1845114] - [net] net: Track socket refcounts in skb_steal_sock() (Yauheni Kaliuta) [1845114] - [net] bpf: Add socket assign support (Yauheni Kaliuta) [1845114] - [net] bpf: btf: Fix arg verification in btf_ctx_access() (Yauheni Kaliuta) [1845114] - [net] bpf: Simplify reg_set_min_max_inv handling (Yauheni Kaliuta) [1845114] - [documentation] bpf: lsm: Add Documentation (Yauheni Kaliuta) [1845114] - [tools] bpf: lsm: Add selftests for BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [tools] tools/libbpf: Add support for BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [net] bpf: lsm: Implement attach, detach and execution (Yauheni Kaliuta) [1845114] - [net] bpf: lsm: Provide attachment points for BPF LSM programs (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [tools] selftests: Add test for overriding global data value before load (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add setter for initial value for internal maps (Yauheni Kaliuta) [1845114] - [net] bpf, net: Fix build issue when net ns not configured (Yauheni Kaliuta) [1845114] - [net] bpf: Fix build warning regarding missing prototypes (Yauheni Kaliuta) [1845114] - [tools] libbpf, xsk: Init all ring members in xsk_umem__create and xsk_socket__create (Yauheni Kaliuta) [1845114] - [tools] bpf: Add selftest cases for ctx_or_null argument type (Yauheni Kaliuta) [1845114] - [net] bpf: Enable retrival of pid/tgid/comm from bpf cgroup hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Enable bpf cgroup hooks to retrieve cgroup v2 and ancestor id (Yauheni Kaliuta) [1845114] - [net] bpf: Allow to retrieve cgroup v1 classid from v2 hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Add netns cookie and enable it for bpf cgroup hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Enable perf event rb output for bpf cgroup progs (Yauheni Kaliuta) [1845114] - [net] bpf: Enable retrieval of socket cookie for bind/post-bind hook (Yauheni Kaliuta) [1845114] - [net] bpf: Remove unused vairable 'bpf_xdp_link_lops' (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out attach_type to prog_type mapping for attach/detach (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out cgroup storages operations (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, #70 error message updates for 32-bit right shift (Yauheni Kaliuta) [1845114] - [net] bpf: Verifer, adjust_scalar_min_max_vals to always call update_reg_bounds() (Yauheni Kaliuta) [1845114] - [net] bpf: Verifer, refactor adjust_scalar_min_max_vals (Yauheni Kaliuta) [1845114] - [tools] libbpf: Don't allocate 16M for log buffer by default (Yauheni Kaliuta) [1845114] - [tools] libbpf: Remove unused parameter `def` to get_map_field_int (Yauheni Kaliuta) [1845114] - [documentation] bpf: Document bpf_inspect drgn tool (Yauheni Kaliuta) [1845114] - [samples] samples, bpf: Refactor perf_event user program with libbpf bpf_link (Yauheni Kaliuta) [1845114] - [samples] samples, bpf: Move read_trace_pipe to trace_helpers (Yauheni Kaliuta) [1845114] - [tools] bpf: Add tests for bpf_sk_storage to bpf_tcp_ca (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_sk_storage support to bpf_tcp_ca (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix mix of tabs and spaces (Yauheni Kaliuta) [1845114] - [net] bpf, tcp: Make tcp_bpf_recvmsg static (Yauheni Kaliuta) [1845114] - [net] bpf, tcp: Fix unused function warnings (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add struct_ops support (Yauheni Kaliuta) [1845114] - [tools] bpftool: Translate prog_id to its bpf prog_name (Yauheni Kaliuta) [1845114] - [tools] bpftool: Print as a string for char array (Yauheni Kaliuta) [1845114] - [tools] bpftool: Print the enum's name instead of value (Yauheni Kaliuta) [1845114] - [tools] bpf, libbpf: Fix ___bpf_kretprobe_args1(x) macro definition (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Reset process and thread affinity after each test/sub-test (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix test_progs's parsing of test numbers (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix race in tcp_rtt test (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix nanosleep for real this time (Yauheni Kaliuta) [1845114] - [tools] selftest/bpf: Fix compilation warning in sockmap_parse_prog.c (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add vmlinux.h selftest exercising tracing of syscalls (Yauheni Kaliuta) [1845114] - [tools] libbpf: Provide CO-RE variants of PT_REGS macros (Yauheni Kaliuta) [1845114] - [tools] libbpf: Ignore incompatible types with matching name during CO-RE relocation (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Ensure consistent test failure output (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix spurious failures in accept due to EAGAIN (Yauheni Kaliuta) [1845114] - [tools] tools/bpf: Move linux/types.h for selftests and bpftool (Yauheni Kaliuta) [1845114] - [net] bpf: Add missing annotations for __bpf_prog_enter() and __bpf_prog_exit() (Yauheni Kaliuta) [1845114] - [scripts] bpf_helpers_doc.py: Fix warning when compiling bpftool (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix usleep() implementation (Yauheni Kaliuta) [1845114] - [net] bpf: Remove bpf_image tree (Yauheni Kaliuta) [1845114] - [net] bpf: Add dispatchers to kallsyms (Yauheni Kaliuta) [1845114] - [net] bpf: Add trampolines to kallsyms (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_ksym_add/del functions (Yauheni Kaliuta) [1845114] - [net] bpf: Add prog flag to struct bpf_ksym object (Yauheni Kaliuta) [1845114] - [net] bpf: Abstract away entire bpf_link clean up procedure (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_ksym_find function (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Make tcp_rtt test more robust to failures (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: test_progs: fix client/server race in tcp_rtt (Yauheni Kaliuta) [1845114] - [net] bpf: Move ksym_tnode to bpf_ksym (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Guarantee that useep() calls nanosleep() syscall (Yauheni Kaliuta) [1845114] - [net] bpf: Move lnode list node to struct bpf_ksym (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Restore message on failure to guess program type (Yauheni Kaliuta) [1845114] - [include] bpf: Add name to struct bpf_ksym (Yauheni Kaliuta) [1845114] - [net] bpf: Add struct bpf_ksym (Yauheni Kaliuta) [1845114] - [include] bpf: Add bpf_trampoline_ name prefix for DECLARE_BPF_DISPATCHER (Yauheni Kaliuta) [1845114] - [mm] x86/mm: Rename is_kernel_text to __is_kernel_text (Yauheni Kaliuta) [1845114] - [tools] bpf: Add bpf_xdp_output() helper (Yauheni Kaliuta) [1845114] - [tools] tools/testing/selftests/bpf: Add self-tests for new helper bpf_get_ns_current_pid_tgid (Yauheni Kaliuta) [1845114] - [net] bpf: Added new helper bpf_get_ns_current_pid_tgid (Yauheni Kaliuta) [1845114] - [fs] fs/nsfs.c: Added ns_match (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Fix minor bash completion mistakes (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Allow all prog/map handles for pinning objects (Yauheni Kaliuta) [1845114] - [tools] libbpf: Split BTF presence checks into libbpf- and kernel-specific parts (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add _bpftool and profiler.skel.h to .gitignore (Yauheni Kaliuta) [1845114] - [tools] bpftool: Skeleton should depend on libbpf (Yauheni Kaliuta) [1845114] - [tools] bpftool: Only build bpftool-prog-profile if supported by clang (Yauheni Kaliuta) [1845114] - [tools] bpftool: Use linux/types.h from source tree for profiler build (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Add BPF_F_CURRENT_CPU for running selftest on older kernels (Yauheni Kaliuta) [1845114] - [x86] bpf: Fix trampoline generation for fmod_ret programs (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_link_new_file that doesn't install FD (Yauheni Kaliuta) [1845114] - [tools] bpftool: Bash completion for "bpftool prog profile" (Yauheni Kaliuta) [1845114] - [tools] bpftool: Documentation for bpftool prog profile (Yauheni Kaliuta) [1845114] - [tools] bpftool: Introduce "prog profile" command (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Enable UDP sockmap reuseport tests (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Add tests for UDP sockets in sockmap (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Don't listen() on UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Add UDP support (Yauheni Kaliuta) [1845114] - [net] bpf: Add sockmap hooks for UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Simplify sock_map_init_proto (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Move generic sockmap hooks from BPF TCP (Yauheni Kaliuta) [1845114] - [net] bpf: tcp: Guard declarations with CONFIG_NET_SOCK_MSG (Yauheni Kaliuta) [1845114] - [net] bpf: tcp: Move assertions into tcp_bpf_get_proto (Yauheni Kaliuta) [1845114] - [net] skmsg: Update saved hooks only once (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Only check ULP for TCP sockets (Yauheni Kaliuta) [1845114] - [kernel] bpf: Fix bpf_prog_test_run_tracing for !CONFIG_NET (Yauheni Kaliuta) [1845114] - [net] bpf: Remove unnecessary CAP_MAC_ADMIN check (Yauheni Kaliuta) [1845114] - [tools] bpf: Add selftests for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [tools] bpf: Add test ops for BPF_PROG_TYPE_TRACING (Yauheni Kaliuta) [1845114] - [tools] tools/libbpf: Add support for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [net] bpf: Attachment verification for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [x86] bpf: JIT helpers for fmod_ret progs (Yauheni Kaliuta) [1845114] - [net] bpf: Refactor trampoline update code (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Support out-of-tree vmlinux builds for VMLINUX_BTF (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Drop copy/pasted BPF_F_CURRENT_CPU definiton (Yauheni Kaliuta) [1845114] - [tools] libbpf: Assume unsigned values for BTF_KIND_ENUM (Yauheni Kaliuta) [1845114] - [tools] bpf: Switch BPF UAPI #define constants used from BPF program side to enums (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Test new __sk_buff field gso_size (Yauheni Kaliuta) [1845114] - [tools] bpf: Sync uapi bpf.h to tools/ (Yauheni Kaliuta) [1845114] - [net] bpf: Add gso_size to __sk_buff (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add link pinning selftests (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add bpf_link pinning/unpinning (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce pinnable bpf_link abstraction (Yauheni Kaliuta) [1845114] - [tools] libbpf: Merge selftests' bpf_trace_helpers.h into libbpf's bpf_tracing.h (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix use of PT_REGS_PARM macros with vmlinux.h (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add header guards to generated vmlinux.h (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add test for "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] selftests/tpm2: Add log and *.pyc to .gitignore (Yauheni Kaliuta) [1845114] - [tools] bpftool: Update bash completion for "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] bpftool: Update documentation of "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] bpftool: Make probes which emit dmesg warnings optional (Yauheni Kaliuta) [1845114] - [tools] bpftool: Move out sections to separate functions (Yauheni Kaliuta) [1845114] - [tools] bpftool: Support struct_ops, tracing, ext prog types (Yauheni Kaliuta) [1845114] - [scripts] scripts/bpf: Switch to more portable python3 shebang (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Print backtrace on SIGSEGV in test_progs (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Run reuseport tests only with supported socket types (Yauheni Kaliuta) [1845114] - [net] bpf/stackmap: Dont trylock mmap_sem with PREEMPT_RT and interrupts disabled (Yauheni Kaliuta) [1845114] - [net] bpf, lpm: Make locking RT friendly (Yauheni Kaliuta) [1845114] - [net] bpf: Prepare hashtab locking for PREEMPT_RT (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out hashtab bucket lock operations (Yauheni Kaliuta) [1845114] - [net] bpf: Replace open coded recursion prevention in sys_bpf() (Yauheni Kaliuta) [1845114] - [net] bpf: Use recursion prevention helpers in hashtab code (Yauheni Kaliuta) [1845114] - [include] bpf: Provide recursion prevention helpers (Yauheni Kaliuta) [1845114] - [include] bpf: Use migrate_disable/enable in array macros and cgroup/lirc code (Yauheni Kaliuta) [1845114] - [net] bpf: Use migrate_disable/enabe() in trampoline code (Yauheni Kaliuta) [1845114] - [lib] bpf/tests: Use migrate disable instead of preempt disable (Yauheni Kaliuta) [1845114] - [net] bpf: Use bpf_prog_run_pin_on_cpu() at simple call sites (Yauheni Kaliuta) [1845114] - [include] bpf: Replace cant_sleep() with cant_migrate() (Yauheni Kaliuta) [1845114] - [include] bpf: Provide bpf_prog_run_pin_on_cpu() helper (Yauheni Kaliuta) [1845114] - [include] sched/rt: Provide migrate_disable/enable() inlines (Yauheni Kaliuta) [1845114] - [include] sched: Provide cant_migrate() (Yauheni Kaliuta) [1845114] - [net] bpf: Dont iterate over possible CPUs with interrupts disabled (Yauheni Kaliuta) [1845114] - [net] bpf: Remove recursion prevention from rcu free callback (Yauheni Kaliuta) [1845114] - [kernel] perf/bpf: Remove preempt disable around BPF invocation (Yauheni Kaliuta) [1845114] - [kernel] bpf/trace: Remove redundant preempt_disable from trace_call_bpf() (Yauheni Kaliuta) [1845114] - [kernel] bpf: disable preemption for bpf progs attached to uprobe (Yauheni Kaliuta) [1845114] - [kernel] bpf/trace: Remove EXPORT from trace_call_bpf() (Yauheni Kaliuta) [1845114] - [kernel] bpf/tracing: Remove redundant preempt_disable() in __bpf_trace_run() (Yauheni Kaliuta) [1845114] - [net] bpf: Update locking comment in hashtab code (Yauheni Kaliuta) [1845114] - [net] bpf: Enforce preallocation for instrumentation programs on RT (Yauheni Kaliuta) [1845114] - [net] bpf: Tighten the requirements for preallocated hash maps (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Tests for sockmap/sockhash holding listening sockets (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Extend SK_REUSEPORT tests to cover SOCKMAP/SOCKHASH (Yauheni Kaliuta) [1845114] - [documentation] docs/bpf: Update bpf development Q/A file (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Update xdp_bpf2bpf test to use new set_attach_target API (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add support for dynamic program attach target (Yauheni Kaliuta) [1845114] - [tools] libbpf: Bump libpf current version to v0.0.8 (Yauheni Kaliuta) [1845114] - [tools] libbpf: Relax check whether BTF is mandatory (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Change llvm flag -mcpu=probe to -mcpu=v3 (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add bpf_read_branch_records() selftest (Yauheni Kaliuta) [1845114] - [kernel] bpf: Add bpf_read_branch_records() helper (Yauheni Kaliuta) [1845114] - [kernel] bpf: Allow bpf_perf_event_read_value in all BPF programs (Yauheni Kaliuta) [1845114] - [dma] dma-direct: improve DMA mask overflow reporting (Don Dutile) [1816437] - [dma] dma-direct: improve swiotlb error reporting (Don Dutile) [1816437] - [dma] dma-direct: relax addressability checks in dma_direct_supported (Don Dutile) [1816437] - [dma] dma-contiguous: CMA: give precedence to cmdline (Don Dutile) [1816437] - [misc] lib/genalloc.c: rename addr_in_gen_pool to gen_pool_has_addr (Don Dutile) [1816437] - [lib] lib/genalloc.c: export symbol addr_in_gen_pool (Don Dutile) [1816437] - [acpi] dma-mapping: treat dev->bus_dma_mask as a DMA limit (Don Dutile) [1816437] - [powerpc] dma-direct: unify the dma_capable definitions (Don Dutile) [1816437] - [of] of/device: Really only set bus DMA mask when appropriate (Don Dutile) [1816437] - [dma] dma-direct: exclude dma_direct_map_resource from the min_low_pfn check (Don Dutile) [1816437] - [dma] dma-debug: clean up put_hash_bucket() (Don Dutile) [1816437] - [iommu] dma-mapping: drop the dev argument to arch_sync_dma_for_* (Don Dutile) [1816437] - [xen] swiotlb-xen: simplify cache maintainance (Don Dutile) [1816437] - [xen] swiotlb-xen: simplify the DMA sync method implementations (Don Dutile) [1816437] - [dma] dma-debug: increase HASH_SIZE (Don Dutile) [1816437] - [dma] dma-debug: reorder struct dma_debug_entry fields (Don Dutile) [1816437] - [dma] dma-mapping: merge the generic remapping helpers into dma-direct (Don Dutile) [1816437] - [dma] dma-direct: provide mmap and get_sgtable method overrides (Don Dutile) [1816437] - [dma] dma-direct: remove the dma_handle argument to __dma_direct_alloc_pages (Don Dutile) [1816437] - [dma] dma-direct: remove __dma_direct_free_pages (Don Dutile) [1816437] - [mm] dma/direct: turn ARCH_ZONE_DMA_BITS into a variable (Don Dutile) [1816437] - [dma] dma-direct: check for overflows on 32 bit DMA addresses (Don Dutile) [1816437] - [s390] s390/dma: provide proper ARCH_ZONE_DMA_BITS value (Don Dutile) [1816437] - [mm] powerpc: fix off by one in max_zone_pfn initialization for ZONE_DMA (Don Dutile) [1816437] - [powerpc] powerpc: enable a 30-bit ZONE_DMA for 32-bit pmac (Don Dutile) [1816437] - [mm] arm64: rename variables used to calculate ZONE_DMA32's size (Don Dutile) [1816437] - [mm] arm64: mm: use arm64_dma_phys_limit instead of calling max_zone_dma_phys() (Don Dutile) [1816437] - [mm] arm64: mm: make CONFIG_ZONE_DMA32 configurable (Don Dutile) [1816437] - [dma] kernel: dma-contiguous: mark CMA parameters __initdata/__initconst (Don Dutile) [1816437] - [dma] dma-debug: add a schedule point in debug_dma_dump_mappings() (Don Dutile) [1816437] - [dma] dma-debug: Use pr_warn instead of pr_warning (Don Dutile) [1816437] - [dma] dma-mapping: fix false positivse warnings in dma_common_free_remap() (Don Dutile) [1816437] - [xen] swiotlb-xen: ensure we have a single callsite for xen_dma_map_page (Don Dutile) [1816437] - [iommu] dma-mapping: introduce a dma_common_find_pages helper (Don Dutile) [1816437] - [iommu] dma-mapping: always use VM_DMA_COHERENT for generic DMA remap (Don Dutile) [1816437] - [mm] vmalloc: lift the arm flag for coherent mappings to common code (Don Dutile) [1816437] - [mm] dma-mapping: provide a better default ->get_required_mask (Don Dutile) [1816437] - [dma] dma-mapping: remove the dma_declare_coherent_memory export (Don Dutile) [1816437] - [dma] dma-mapping: remove the dma_mmap_from_dev_coherent export (Don Dutile) [1816437] - [dma] dma-mapping: remove CONFIG_ARCH_NO_COHERENT_DMA_MMAP (Don Dutile) [1816437] - [dma] dma-mapping: add a dma_can_mmap helper (Don Dutile) [1816437] - [powerpc] dma-mapping: explicitly wire up ->mmap and ->get_sgtable (Don Dutile) [1816437] - [mm] dma-mapping: move the dma_get_sgtable API comments from arm to common code (Don Dutile) [1816437] - [dma] dma-mapping: introduce dma_get_merge_boundary() (Don Dutile) [1816437] - [mm] dma-mapping: make dma_atomic_pool_init self-contained (Don Dutile) [1816437] - [arm64] dma-mapping: remove arch_dma_mmap_pgprot (Don Dutile) [1816437] - [scsi] scsi: ibmvscsi: Don't send host info in adapter info MAD after LPM (Steve Best) [1847078] - [fs] NFS: Fix inode fileid checks in attribute revalidation code (Benjamin Coddington) [1846295] - [fs] NFS: remove set but not used variable 'mapping' (Benjamin Coddington) [1846295] - [fs] NFSv2: Fix write regression (Benjamin Coddington) [1846295] - [fs] NFSv2: Fix eof handling (Benjamin Coddington) [1846295] - [fs] NFS: Fix writepage(s) error handling to not report errors twice (Benjamin Coddington) [1846295] - [fs] NFS: Fix spurious EIO read errors (Benjamin Coddington) [1846295] - [fs] pNFS/flexfiles: Don't time out requests on hard mounts (Benjamin Coddington) [1846295] - [net] SUNRPC: Handle EADDRINUSE and ENOBUFS correctly (Benjamin Coddington) [1846295] - [fs] pNFS/flexfiles: Turn off soft RPC calls (Benjamin Coddington) [1846295] - [fs] NFS: On fatal writeback errors, we need to call nfs_inode_remove_request() (Benjamin Coddington) [1846295] - [fs] NFS: Fix initialisation of I/O result struct in nfs_pgio_rpcsetup (Benjamin Coddington) [1846295] - [fs] NFSv4: Fix return value in nfs_finish_open() (Benjamin Coddington) [1846295] - [fs] NFSv4: Fix return values for nfs4_file_open() (Benjamin Coddington) [1846295] - [fs] NFS: Don't refresh attributes with mounted-on-file information (Benjamin Coddington) [1846295] - [fs] NFSv4: Ensure state recovery handles ETIMEDOUT correctly (Benjamin Coddington) [1846295] - [fs] NFSv4: Report the error from nfs4_select_rw_stateid() (Benjamin Coddington) [1846295] - [fs] NFSv4: Print an error in the syslog when state is marked as irrecoverable (Benjamin Coddington) [1846295] - [net] SUNRPC: Optimise transport balancing code (Benjamin Coddington) [1846295] - [fs] NFSv4: Don't use the zero stateid with layoutget (Benjamin Coddington) [1846295] - [net] SUNRPC: Fix up backchannel slot table accounting (Benjamin Coddington) [1846295] - [net] SUNRPC: Skip zero-refcount transports (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace division by multiplication in calculation of queue length (Benjamin Coddington) [1846295] - [fs] NFSv4: Validate the stateid before applying it to state recovery (Benjamin Coddington) [1846295] - [fs] nfs4.0: Refetch lease_time after clientid update (Benjamin Coddington) [1846295] - [fs] nfs4: Rename nfs41_setup_state_renewal (Benjamin Coddington) [1846295] - [fs] nfs4: Make nfs4_proc_get_lease_time available for nfs4.0 (Benjamin Coddington) [1846295] - [fs] nfs: Fix copy-and-paste error in debug message (Benjamin Coddington) [1846295] - [fs] NFS: Replace 16 seq_printf() calls by seq_puts() (Benjamin Coddington) [1846295] - [fs] NFS: Use seq_putc() in nfs_show_stats() (Benjamin Coddington) [1846295] - [fs] nfsd: Fix misuse of strlcpy (Benjamin Coddington) [1846295] - [net] SUNRPC: Drop redundant CONFIG_ from CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES (Benjamin Coddington) [1846295] - [fs] NFS: Cleanup if nfs_match_client is interrupted (Benjamin Coddington) [1846295] - [fs] nfs: disable client side deduplication (Benjamin Coddington) [1846295] - [fs] NFS: Clean up writeback code (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove warning in debugfs.c when compiling with W=1 (Benjamin Coddington) [1846295] - [fs] NFS: Add sysfs support for per-container identifier (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove the bh-safe lock requirement on the rpc_wait_queue->lock (Benjamin Coddington) [1846295] - [fs] NFS: Cleanup - add nfs_clients_exit to mirror nfs_clients_init (Benjamin Coddington) [1846295] - [fs] NFS: Create a root NFS directory in /sys/fs/nfs (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove the bh-safe lock requirement on xprt->transport_lock (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace direct task wakeups from softirq context (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace the queue timer with a delayed work function (Benjamin Coddington) [1846295] - [fs] NFSv4: Handle open for execute correctly (Benjamin Coddington) [1846295] - [fs] nfs: dget_parent() never returns NULL (Benjamin Coddington) [1846295] - [net] nfs: fix out-of-date connectathon talk URL (Benjamin Coddington) [1846295] - [fs] nfsd4: remove outdated nfsd4_decode_time comment (Benjamin Coddington) [1846295] - [fs] nfsd: Spelling s/EACCESS/EACCES/ (Benjamin Coddington) [1846295] - [fs] lockd: Make two symbols static (Benjamin Coddington) [1846295] - [fs] lockd: Show pid of lockd for remote locks (Benjamin Coddington) [1846295] - [fs] lockd: Remove lm_compare_owner and lm_owner_key (Benjamin Coddington) [1846295] - [fs] lockd: Convert NLM service fl_owner to nlm_lockowner (Benjamin Coddington) [1846295] - [fs] lockd: prepare nlm_lockowner for use by the server (Benjamin Coddington) [1846295] - [net] sunrpc: no need to check return value of debugfs_create functions (Benjamin Coddington) [1846295] - [fs] nfsd: no need to check return value of debugfs_create functions (Benjamin Coddington) [1846295] - [fs] xfs: add agf freeblocks verify in xfs_agf_verify (Brian Foster) [1837192] {CVE-2020-12655} - [scsi] scsi: iscsi: Fix deadlock on recovery path during GFP_IO reclaim (Chris Leech) [1830140] - [scsi] scsi: iscsi: Register sysfs for iscsi workqueue (Chris Leech) [1830140] - [scsi] scsi: iscsi: Report unbind session event when the target has been removed (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Fix error count for active session (Chris Leech) [1830140] - [scsi] scsi: iscsi: Report connection state in sysfs (Chris Leech) [1830140] - [scsi] scsi: iscsi: Add support for asynchronous iSCSI session destruction (Chris Leech) [1830140] - [scsi] scsi: iscsi: Perform connection failure entirely in kernel space (Chris Leech) [1830140] - [scsi] scsi: iscsi: Don't destroy session if there are outstanding connections (Chris Leech) [1830140] - [scsi] scsi: iscsi: Fix a potential deadlock in the timeout handler (Chris Leech) [1830140] - [scsi] scsi: iscsi: Don't send data to unbound connection (Chris Leech) [1830140] - [scsi] scsi: libiscsi: switch to SPDX tags (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Hold back_lock when calling iscsi_complete_task (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Use scsi_et_resid() where appropriate (Chris Leech) [1830140] - [scsi] scsi: iscsi: Capture iscsi debug messages using tracepoints (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Fix NULL pointer dereference in iscsi_eh_session_reset (Chris Leech) [1830140] - [scsi] scsi: iscsi_tcp: Explicitly cast param in iscsi_sw_tcp_host_get_param (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Annotate fall-through (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Annotate locking assumptions (Chris Leech) [1830140] - [nvme] nvmet: fail outstanding host posted AEN req (David Milburn) [1833642] - [nvme] nvmet: add async event tracing support (David Milburn) [1833642] - [nvme] nvmet: cleanups the loop in nvmet_async_events_process (David Milburn) [1833642] - [nvme] nvmet: fix memory leak when removing namespaces and controllers concurrently (David Milburn) [1833642] - [netdrv] ibmvnic: Flush existing work items before device removal (Steve Best) [1846761] - [kernel] signal: Extend exec_id to 64bits (Chris von Recklinghausen) [1834652] {CVE-2020-12826}- [arm64] docs: fix broken references to text files (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move __load_guest_stage2 to kvm_mmu.h (Andrew Jones) [1842468] - [arm64] kvm: arm64: Drop obsolete comment about sys_reg ordering (Andrew Jones) [1842468] - [arm64] kvm: arm64: Parametrize exception entry with a target EL (Andrew Jones) [1842468] - [arm64] kvm: arm64: Don't use empty structures as CPU reset state (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move sysreg reset check to boot time (Andrew Jones) [1842468] - [arm64] kvm: arm64: Add missing reset handlers for PMU emulation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Refactor vcpu_{read, write}_sys_reg (Andrew Jones) [1842468] - [arm64] kvm: arm64: vgic-v3: Take cpu_if pointer directly instead of vcpu (Andrew Jones) [1842468] - [arm64] kvm: arm64: Remove obsolete kvm_virt_to_phys abstraction (Andrew Jones) [1842468] - [arm64] kvm: arm64: Fix incorrect comment on kvm_get_hyp_vector() (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up cpu_init_hyp_mode() (Andrew Jones) [1842468] - [arm64] cpufeature: Drop open encodings while extracting parange (Andrew Jones) [1842468] - [arm64] kvm: arm64: Make KVM_CAP_MAX_VCPUS compatible with the selected GIC version (Andrew Jones) [1842468] - [arm64] kvm: arm64: Support enabling dirty log gradually in small chunks (Andrew Jones) [1842468] - [arm64] kvm: arm64: Unify handling THP backed host memory (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up the checking for huge mapping (Andrew Jones) [1842468] - [arm64] kvm: arm/arm64: Release kvm->mmu_lock in loop to prevent starvation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Sidestep stage2_unmap_vm() on vcpu reset when S2FWB is supported (Andrew Jones) [1842468] - [arm64] kvm: Fix spelling in code comments (Andrew Jones) [1842468] - [arm64] kvm: arm64: Simplify __kvm_timer_set_cntvoff implementation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up kvm makefiles (Andrew Jones) [1842468] - [arm64] kvm: arm64: Change CONFIG_KVM to a menuconfig entry (Andrew Jones) [1842468] - [arm64] kvm: arm64: Update help text (Andrew Jones) [1842468] - [arm64] kvm: arm64: Kill off CONFIG_KVM_ARM_HOST (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move virt/kvm/arm to arch/arm64 (Andrew Jones) [1842468] - [arm64] Unify WORKAROUND_SPECULATIVE_AT_{NVHE, VHE} (Andrew Jones) [1842468] - [arm64] cpufeature: Add CPU capability for AArch32 EL1 support (Andrew Jones) [1842468] - [net] SUNRPC: Fix a credential refcount leak (Benjamin Coddington) [1831672] - [net] Revert "SUNRPC: Declare RPC timers as TIMER_DEFERRABLE" (Benjamin Coddington) [1831672] - [net] net :sunrpc :clnt :Fix xps refcount imbalance on the error path (Benjamin Coddington) [1831672] - [net] SUNRPC: Rebalance a kref in auth_gss.c (Benjamin Coddington) [1831672] - [fs] NFS: Fix a double unlock from nfs_match, get_client (Benjamin Coddington) [1831672] - [fs] nfs: pass the correct prototype to read_cache_page (Benjamin Coddington) [1831672] - [fs] NFSv4: don't mark all open state for recovery when handling recallable state revoked flag (Benjamin Coddington) [1831672] - [net] SUNRPC: Fix an error code in gss_alloc_msg() (Benjamin Coddington) [1831672] - [net] SUNRPC: task should be exit if encode return EKEYEXPIRED more times (Benjamin Coddington) [1831672] - [fs] NFS: make nfs_match_client killable (Benjamin Coddington) [1831672] - [fs] nfsd: update callback done processing (Benjamin Coddington) [1831672] - [fs] lockd: Store the lockd client credential in struct nlm_host (Benjamin Coddington) [1831672] - [fs] NFS: When mounting, don't share filesystems between different user namespaces (Benjamin Coddington) [1831672] - [fs] NFS: Convert NFSv2 to use the container user namespace (Benjamin Coddington) [1831672] - [fs] NFSv4: Convert the NFS client idmapper to use the container user namespace (Benjamin Coddington) [1831672] - [fs] NFS: Convert NFSv3 to use the container user namespace (Benjamin Coddington) [1831672] - [net] SUNRPC: Use namespace of listening daemon in the client AUTH_GSS upcall (Benjamin Coddington) [1831672] - [net] net: Remove some unneeded semicolon (Benjamin Coddington) [1831672] - [net] SUNRPC: Use the client user namespace when encoding creds (Benjamin Coddington) [1831672] - [fs] NFS: Store the credential of the mount process in the nfs_server (Benjamin Coddington) [1831672] - [fs] SUNRPC: Cache cred of process creating the rpc_client (Benjamin Coddington) [1831672] - [net] SUNRPC: Update comments based on recent changes (Benjamin Coddington) [1831672] - [net] SUNRPC: Avoid digging into the ATOMIC pool (Benjamin Coddington) [1831672] - [net] xprtrdma: Recognize XDRBUF_SPARSE_PAGES (Benjamin Coddington) [1831672] - [fs] Fix nfs4.2 return -EINVAL when do dedupe operation (Benjamin Coddington) [1831672] - [fs] NFS: Remove redundant open context from nfs_page (Benjamin Coddington) [1831672] - [fs] NFS: Add a helper to return a pointer to the open context of a struct nfs_page (Benjamin Coddington) [1831672] - [fs] NFS: Ensure that all nfs lock contexts have a valid open context (Benjamin Coddington) [1831672] - [fs] NFS: Allow signal interruption of NFS4ERR_DELAYed operations (Benjamin Coddington) [1831672] - [fs] pNFS: Add tracking to limit the number of pNFS retries (Benjamin Coddington) [1831672] - [fs] NFS: Remove unused argument from nfs_create_request() (Benjamin Coddington) [1831672] - [fs] NFS: Fix up NFS I/O subrequest creation (Benjamin Coddington) [1831672] - [fs] NFS: Replace custom error reporting mechanism with generic one (Benjamin Coddington) [1831672] - [fs] NFS: Don't inadvertently clear writeback errors (Benjamin Coddington) [1831672] - [fs] NFS: Don't call generic_error_remove_page() while holding locks (Benjamin Coddington) [1831672] - [fs] NFS: Don't interrupt file writeout due to fatal errors (Benjamin Coddington) [1831672] - [fs] NFS: Add a mount option "softerr" to allow clients to see ETIMEDOUT errors (Benjamin Coddington) [1831672] - [uapi] NFS: Move internal constants out of uapi/linux/nfs_mount.h (Benjamin Coddington) [1831672] - [fs] NFS: Consider ETIMEDOUT to be a fatal error (Benjamin Coddington) [1831672] - [net] SUNRPC: Add the 'softerr' rpc_client flag (Benjamin Coddington) [1831672] - [net] SUNRPC: Ensure to ratelimit the "server not responding" syslog messages (Benjamin Coddington) [1831672] - [net] SUNRPC: Start the first major timeout calculation at task creation (Benjamin Coddington) [1831672] - [net] SUNRPC: Ensure that the transport layer respect major timeouts (Benjamin Coddington) [1831672] - [net] SUNRPC: Declare RPC timers as TIMER_DEFERRABLE (Benjamin Coddington) [1831672] - [net] SUNRPC: Simplify queue timeouts using timer_reduce() (Benjamin Coddington) [1831672] - [net] SUNRPC: Fix up tracking of timeouts (Benjamin Coddington) [1831672] - [net] SUNRPC: Add function rpc_sleep_on_timeout() (Benjamin Coddington) [1831672] - [fs] SUNRPC: Remove unused argument 'action' from rpc_sleep_on_priority() (Benjamin Coddington) [1831672] - [net] SUNRPC: Refactor rpc_sleep_on() (Benjamin Coddington) [1831672] - [net] SUNRPC: Refactor xprt_request_wait_receive() (Benjamin Coddington) [1831672] - [fs] nfsd: fh_drop_write in nfsd_unlink (Benjamin Coddington) [1831672] - [fs] nfsd: avoid uninitialized variable warning (Benjamin Coddington) [1831672] - [netdrv] Revert "net: phy: realtek: fix using paged operations with RTL8105e / RTL8208" (Josef Oskera) [1846022] - [netdrv] ice: Fix Tx timeout when link is toggled on a VF's interface (Jonathan Toppins) [1843144] - [netdrv] ice: add a devlink region for dumping NVM contents (Jonathan Toppins) [1843144] - [nvme] nvme-fc: print proper nvme-fc devloss_tmo value (Gopal Tiwari) [1846049] - [acpi] ACPI: EC: PM: Avoid flushing EC work when EC GPE is inactive (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Avoid premature returns from acpi_s2idle_wake() (Al Stone) [1803969] - [acpi] ACPI: PM: Add acpi_register_wakeup_handler() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Refine active GPEs check (Al Stone) [1803969] - [acpi] ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE (Al Stone) [1803969] - [base] PM: sleep: wakeup: Skip wakeup_source_sysfs_remove() if device is not there (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late() (Al Stone) [1803969] - [platform] platform/x86: sony-laptop: Make resuming thermal profile safer (Al Stone) [1803969] - [platform] platform/x86: sony-laptop: SNC calls should handle BUFFER types (Al Stone) [1803969] - [acpi] ACPI: Update Tiger Lake ACPI device IDs (Al Stone) [1803969] - [acpi] ACPI: EC: Avoid printing confusing messages in acpi_ec_setup() (Al Stone) [1803969] - [acpi] ACPI: EC: Fix flushing of pending work (Al Stone) [1803969] - [base] PM / wakeup: Register wakeup class kobj after device is added (Al Stone) [1803969] - [base] PM / wakeup: Fix sysfs registration error path (Al Stone) [1803969] - [base] PM / wakeup: Unexport wakeup_source_sysfs_{add, remove}() (Al Stone) [1803969] - [kernel] PM: suspend: Fix platform_suspend_prepare_noirq() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system (Al Stone) [1803969] - [acpi] ACPICA: Introduce acpi_any_gpe_status_set() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Avoid possible race related to the EC GPE (Al Stone) [1803969] - [acpi] ACPI: watchdog: Allow disabling WDAT at boot (Al Stone) [1803969] - [acpi] ACPI / APD: Add clock frequency for Hisilicon Hip08-Lite I2C controller (Al Stone) [1803969] - [acpi] ACPI: thermal: switch to use helpers (Al Stone) [1803969] - [acpi] ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map() (Al Stone) [1803969] - [acpi] ACPI/IORT: Parse SSID property of named component node (Al Stone) [1803969] - [iommu] iommu/arm-smmu-v3: Parse PASID devicetree property of platform devices (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20200110 (Al Stone) [1803969] - [acpi] ACPICA: All acpica: Update copyrights to 2020 Including tool signons (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch (Al Stone) [1803969] - [acpi] ACPI: PPTT: Consistently use unsigned int as parameter type (Al Stone) [1803969] - [acpi] ACPI: EC: Reference count query handlers under lock (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20191213 (Al Stone) [1803969] - [acpi] ACPICA: Dispatcher: always generate buffer objects for ASL create_field() operator (Al Stone) [1803969] - [acpi] ACPICA: acpisrc: add unix line ending support for non-windows build (Al Stone) [1803969] - [acpi] ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1 (Al Stone) [1803969] - [acpi] ACPICA: debugger: fix spelling mistake "adress" -> "address" (Al Stone) [1803969] - [acpi] ACPI: video: Do not export a non working backlight interface on MSI MS-7721 boards (Al Stone) [1803969] - [acpi] ACPI: fan: Add Tiger Lake ACPI device ID (Al Stone) [1803969] - [acpi] ACPI: DPTF: Add Tiger Lake ACPI device IDs (Al Stone) [1803969] - [acpi] ACPI: fan: Expose fan performance state information (Al Stone) [1803969] - [acpi] ACPI / LPSS: Rename pwm_backlight pwm-lookup to pwm_soc_backlight (Al Stone) [1803969] - [acpi] ACPI: video: Use native backlight on Lenovo E41-25/45 (Al Stone) [1803969] - [acpi] ACPI: video: fix typo in comment (Al Stone) [1803969] - [acpi] ACPI / battery: Deal better with neither design nor full capacity not being reported (Al Stone) [1803969] - [acpi] ACPI / battery: Use design-cap for capacity calculations if full-cap is not available (Al Stone) [1803969] - [acpi] ACPI / battery: Deal with design or full capacity being reported as -1 (Al Stone) [1803969] - [acpi] ACPI/sleep: Convert acpi_wakeup_address into a function (Al Stone) [1803969] - [acpi] ACPI: PM: Avoid attaching ACPI PM domain to certain devices (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Rework ACPI events synchronization (Al Stone) [1803969] - [acpi] ACPI: EC: Rework flushing of pending work (Al Stone) [1803969] - [acpi] ACPI: bus: Fix NULL pointer check in acpi_bus_get_private_data() (Al Stone) [1803969] - [acpi] ACPI: Fix Kconfig indentation (Al Stone) [1803969] - [acpi] ACPI: OSL: only free map once in osl.c (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Acer Switch 10 SW5-032 lid-switch (Al Stone) [1803969] - [acpi] ACPI: sysfs: Change ACPI_MASKABLE_GPE_MAX to 0x100 (Al Stone) [1803969] - [acpi] ACPI: OSI: Shoot duplicate word (Al Stone) [1803969] - [acpi] ACPI: HMAT: use u instead of d to print u32 values (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: fix a section mismatch (Al Stone) [1803969] - [acpi] ACPI: HMAT: don't mix pxm and nid when setting memory target processor_pxm (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: Register "soft reserved" memory as an "hmem" device (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: Register HMAT at device_initcall level (Al Stone) [1803969] - [acpi] ACPI: NUMA: Establish a new drivers/acpi/numa/ directory (Al Stone) [1803969] - [x86] x86/efi: EFI soft reservation to E820 enumeration (Al Stone) [1803969] - [firmware] efi: Common enable/disable infrastructure for EFI soft reservation (Al Stone) [1803969] - [firmware] efi: Enumerate EFI_MEMORY_SP (Al Stone) [1803969] - [dax] device-dax: Add a driver for "hmem" devices (Al Stone) [1803969] - [nvdimm] lib: Uplevel the pmem "region" ida to a global allocator (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20191018 (Al Stone) [1803969] - [acpi] ACPICA: debugger: remove leading whitespaces when converting a string to a buffer (Al Stone) [1803969] - [acpi] ACPICA: acpiexec: initialize all simple types and field units from user input (Al Stone) [1803969] - [acpi] ACPICA: debugger: add field unit support for acpi_db_get_next_token (Al Stone) [1803969] - [acpi] ACPICA: debugger: surround field unit output with braces '{' (Al Stone) [1803969] - [acpi] ACPICA: debugger: add command to dump all fields of particular subtype (Al Stone) [1803969] - [acpi] ACPICA: utilities: add flag to only display data when dumping buffers (Al Stone) [1803969] - [acpi] ACPICA: make acpi_load_table() return table index (Al Stone) [1803969] - [acpi] ACPICA: Add new external interface, acpi_unload_table() (Al Stone) [1803969] - [acpi] ACPICA: More Clang changes (Al Stone) [1803969] - [acpi] ACPICA: Win OSL: Replace get_tick_count with get_tick_count64 (Al Stone) [1803969] - [acpi] ACPICA: Results from Clang (Al Stone) [1803969] - [acpi] ACPI: EC: add support for hardware-reduced systems (Al Stone) [1803969] - [acpi] ACPI: EC: tweak naming in preparation for GpioInt support (Al Stone) [1803969] - [acpi] ACPI: button: Remove unused acpi_lid_notifier_register() functions (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Asus T200TA (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Medion Akoya E2215T (Al Stone) [1803969] - [acpi] ACPI: button: Turn lid_blacklst DMI table into a generic quirk table (Al Stone) [1803969] - [acpi] ACPI: button: Allow disabling LID support with the lid_init_state module option (Al Stone) [1803969] - [acpi] ACPI: button: Refactor lid_init_state module parsing code (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add dmi quirk for skipping _DEP check for some device-links (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add LNXVIDEO -> BYT I2C1 to lpss_device_links (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add LNXVIDEO -> BYT I2C7 to lpss_device_links (Al Stone) [1803969] - [acpi] ACPI / PMIC: Add Cherry Trail Crystal Cove PMIC OpRegion driver (Al Stone) [1803969] - [acpi] ACPI / PMIC: Add byt prefix to Crystal Cove PMIC OpRegion driver (Al Stone) [1803969] - [acpi] ACPI / PMIC: Do not register handlers for unhandled OpRegions (Al Stone) [1803969] - [acpi] ACPI: processor_idle: Skip dummy wait if kernel is in guest (Al Stone) [1803969] - [acpi] acpi: Use pr_warn instead of pr_warning (Al Stone) [1803969] - [acpi] ACPI: CPPC: Set pcc_datato NULL in acpi_cppc_processor_exit() (Al Stone) [1803969] - [mfd] rhel: constify some function arguments when searching for devices (Al Stone) [1803969] - [acpi] ACPI: platform: Unregister stale platform devices (Al Stone) [1803969] - [i2c] i2c: Revert incorrect conversion to use generic helper (Al Stone) [1803969] - [base] drivers: Introduce device lookup variants by ACPI_COMPANION device (Al Stone) [1803969] - [s390] drivers: s390/cio: Fix compilation warning about const qualifiers (Al Stone) [1803969] - [s390] driver_find_device: Unify the match function with class_find_device() (Al Stone) [1803969] - [acpi] ACPI / LPSS: Switch to use acpi_dev_hid_uid_match() (Al Stone) [1803969] - [acpi] ACPI / utils: Move acpi_dev_get_first_match_dev() under CONFIG_ACPI (Al Stone) [1803969] - [acpi] ACPI / utils: Describe function parameters in kernel-doc (Al Stone) [1803969] - [acpi] ACPI: Always build evged in (Al Stone) [1803969] - [acpi] ACPI: video: update doc for acpi_video_bus_DOS() (Al Stone) [1803969] - [acpi] ACPI: PM: Drop Dell XPS13 9360 from LPS0 Idle _DSM blacklist (Al Stone) [1803969] - [acpi] ACPI: HMAT: ACPI_HMAT_MEMORY_PD_VALID is deprecated since ACPI-6.3 (Al Stone) [1803969] - [acpi] i2c: imx: ACPI support for NXP i2c controller (Al Stone) [1803969] - [acpi] ACPI / PCI: fix acpi_pci_irq_enable() memory leak (Al Stone) [1803969] - [acpi] ACPI: custom_method: fix memory leaks (Al Stone) [1803969] - [acpi] ACPI: thermal: Remove redundant acpi_has_method() calls (Al Stone) [1803969] - [acpi] ACPI / property: Fix acpi_graph_get_remote_endpoint() name in kerneldoc (Al Stone) [1803969] - [acpi] ACPI / CPPC: do not require the _PSD method (Al Stone) [1803969] - [acpi] ACPI: SBS: remove unused const variable 'SMBUS_PEC' (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Always set up EC GPE for system wakeup (Al Stone) [1803969] - [platform] intel-hid: Disable button array during suspend-to-idle (Al Stone) [1803969] - [platform] intel-hid: intel-vbtn: Avoid leaking wakeup_mode set (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Missing power button release on some Dell models (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Convert to use SPDX identifier (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Add support for Device Specific Methods (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Avoid rearming SCI for wakeup unnecessarily (Al Stone) [1803969] - [base] PM / wakeup: Show wakeup sources stats in sysfs (Al Stone) [1803969] - [kernel] PM / wakeup: Use wakeup_source_register() in wakelock.c (Al Stone) [1803969] - [base] PM / wakeup: Drop wakeup_source_init(), wakeup_source_prepare() (Al Stone) [1803969] - [base] PM: sleep: Fix possible overflow in pm_system_cancel_wakeup() (Al Stone) [1803969] - [acpi] ACPI/PCI: Remove surplus parentheses from a return statement (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20190816 (Al Stone) [1803969] - [acpi] ACPICA: Add "Windows 2019" string to _OSI support (Al Stone) [1803969] - [acpi] ACPICA: Differentiate Windows 8.1 from Windows 8 (Al Stone) [1803969] - [acpi] ACPICA: Fully deploy ACPI_PRINTF_LIKE macro (Al Stone) [1803969] - [acpi] ACPICA: Fix issues with arg types within printf format strings (Al Stone) [1803969] - [acpi] ACPICA: Macros: remove pointer math on a null pointer (Al Stone) [1803969] - [acpi] ACPICA: Debugger: remove redundant assignment on obj_desc (Al Stone) [1803969] - [acpi] ACPI / APEI: Release resources if gen_pool_add() fails (Al Stone) [1803969] - [acpi] acpi: Use built-in RCU list checking for acpi_ioremaps list (Al Stone) [1803969] - [acpi] HMAT: Skip publishing target info for nodes with no online memory (Al Stone) [1803969] - [acpi] HMAT: Register attributes for memory hot add (Al Stone) [1803969] - [acpi] HMAT: Register memory-side cache after parsing (Al Stone) [1803969] - [acpi] ACPI / processor: don't print errors for processorIDs == 0xff (Al Stone) [1803969] - [acpi] ACPI: PM: Print debug messages on device power state changes (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Execute LPS0 _DSM functions with suspended devices (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Make acpi_ec_dispatch_gpe() print debug message (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Consolidate some code depending on PM_SLEEP (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Eliminate acpi_sleep_no_ec_events() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Switch EC over to polling during "noirq" suspend (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Add acpi.sleep_no_lps0 module parameter (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Rearrange lps0_device_attach() (Al Stone) [1803969] - [acpi] ACPI / APEI: Get rid of NULL_UUID_LE constant (Al Stone) [1803969] - [acpi] ACPI: PM: Set up EC GPE for system wakeup from drivers that need it (Al Stone) [1803969] - [acpi] PM: sleep: Simplify suspend-to-idle control flow (Al Stone) [1803969] - [kernel] PCI: irq: Introduce rearm_wake_irq() (Al Stone) [1803969] - [acpi] ACPI: PM: Set s2idle_wakeup earlier and clear it later (Al Stone) [1803969] - [acpi] ACPI: EC: Return bool from acpi_ec_dispatch_gpe() (Al Stone) [1803969] - [acpi] ACPICA: Return u32 from acpi_dispatch_gpe() (Al Stone) [1803969] - [kernel] kernel/sysctl.c: ignore out-of-range taint bits introduced via kernel.tainted (Rafael Aquini) [1845358] - [documentation] kernel: add panic_on_taint (Rafael Aquini) [1845358] - [mm] hugetlbfs: fix changes to command line processing (Baoquan He) [1823769] - [documentation] hugetlbfs: clean up command line processing (Baoquan He) [1823769] - [mm] hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate (Baoquan He) [1823769] - [mm] hugetlbfs: move hugepagesz= parsing to arch independent code (Baoquan He) [1823769] - [mm] mm: simplify MEMORY_ISOLATION && COMPACTION || CMA into CONTIG_ALLOC (Baoquan He) [1823769] - [mm] hugetlbfs: add arch_hugetlb_valid_size (Baoquan He) [1823769] - [mm] arm64/hugetlb: Use macros for contiguous huge page sizes (Baoquan He) [1823769] - [mm] arm64: hugetlb: Register hugepages during arch init (Baoquan He) [1823769] - [fs] xfs: prohibit fs freezing when using empty transactions (Brian Foster) [1845099] - [security] selinux: properly handle multiple messages in selinux_netlink_send() (Ondrej Mosnacek) [1839643] {CVE-2020-10751} - [mm] bdi: add a ->dev_name field to struct backing_dev_info (Ming Lei) [1788378] - [block] bdi: use bdi_dev_name() to get device name (Ming Lei) [1788378] - [mm] bdi: move bdi_dev_name out of line (Ming Lei) [1788378] - [fs] memcg: fix a crash in wb_workfn when a device disappears (Ming Lei) [1788378]- [tools] libbpf: provide backported RHEL symbols as upstream aliases 2 (Yauheni Kaliuta) [1813372] - [include] bpf: include/linux/bpf.h: fix spaces (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test for freplace program with expected_attach_type (Yauheni Kaliuta) [1813372] - [scripts] checkpatch: don't warn about new vsprintf pointer extension 'pe' (Yauheni Kaliuta) [1813372] - [s390] s390: enable bpf jit by default when not built as always-on (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Copy runqslower to OUTPUT directory (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix memory leak in test selector (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix huge memory leak in libbpf_find_vmlinux_btf_id() (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add runqslower binary to .gitignore (Yauheni Kaliuta) [1813372] - [net] bpf: Change kvfree to kfree in generic_map_lookup_batch() (Yauheni Kaliuta) [1813372] - [tools] bpf, selftests: Use bpf_probe_read_kernel (Yauheni Kaliuta) [1813372] - [net] bpf/cgroup: Replace rcu_swap_protected() with rcu_replace_pointer() (Yauheni Kaliuta) [1813372] - [net] bpf: Fix bug in mmap() implementation for BPF array map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Validate frozen map contents stays frozen (Yauheni Kaliuta) [1813372] - [net] bpf: Fix handling of XADD on BTF memory (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Run SYN cookies with reuseport BPF test only for TCP (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix typo in bash-completion (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix handling of optional field_name in btf_dump__emit_type_decl (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Declare bpf_log_buf variables as static (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix a couple of broken test_btf cases (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Enforce returning 0 for fentry/fexit programs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix BPF_KRETPROBE macro and use it in attach_probe test (Yauheni Kaliuta) [1813372] - [net] bpf: Propagate expected_attach_type when verifying freplace programs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix trampoline_count clean up logic (Yauheni Kaliuta) [1813372] - [net] bpf: Explicitly memset some bpf info structures declared on the stack (Yauheni Kaliuta) [1813372] - [net] bpf: Explicitly memset the bpf_attr structure (Yauheni Kaliuta) [1813372] - [net] bpf: Sanitize the bpf_struct_ops tcp-cc name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test for the packed enum member in struct/union (Yauheni Kaliuta) [1813372] - [net] bpf/btf: Fix BTF verification of enum members in struct/union (Yauheni Kaliuta) [1813372] - [net] bpf: Fix cgroup ref leak in cgroup_bpf_inherit on out-of-memory (Yauheni Kaliuta) [1813372] - [net] bpf: Initialize storage pointers to NULL to prevent freeing garbage pointer (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Add test for JMP32 JSET BPF_X with upper bits set (Yauheni Kaliuta) [1813372] - [x86] bpf, x32: Fix bug with JMP32 JSET BPF_X checking upper bits (Yauheni Kaliuta) [1813372] - [net] bpf: Do not allow map_freeze in struct_ops map (Yauheni Kaliuta) [1813372] - [net] bpf: Return better error value in delete_elem for struct_ops map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add send_signal_sched_switch test (Yauheni Kaliuta) [1813372] - [kernel] bpf: Fix deadlock with rq_lock in bpf_send_signal() (Yauheni Kaliuta) [1813372] - [net] bpf: Fix a potential deadlock with bpf_map_do_batch (Yauheni Kaliuta) [1813372] - [net] bpf: Do not grab the bucket spinlock by default on htab batch ops (Yauheni Kaliuta) [1813372] - [tools] libbpf: Sanitise internal map names so they are not rejected by the kernel (Yauheni Kaliuta) [1813372] - [tools] bpf, uapi: Remove text about bpf_redirect_map() giving higher performance (Yauheni Kaliuta) [1813372] - [net] bpf, offload: Replace bitwise AND by logical AND in bpf_prog_offload_info_fill (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Mark SYN cookie test skipped for UDP sockets (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix error checking on reading the tcp_fastopen sysctl (Yauheni Kaliuta) [1813372] - [net] bpf: Make btf_check_func_type_match() static (Yauheni Kaliuta) [1813372] - [tools] bpf: Selftests build error in sockmap_basic.c (Yauheni Kaliuta) [1813372] - [net] bpf: Improve bucket_log calculation logic (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test freeing sockmap/sockhash with a socket in it (Yauheni Kaliuta) [1813372] - [tools] tools/bpf/runqslower: Rebuild libbpf.a on libbpf source change (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix trampoline_count.c selftest compilation warning (Yauheni Kaliuta) [1813372] - [net] bpf: Fix modifier skipping logic (Yauheni Kaliuta) [1813372] - [tools] bpftool: Remove redundant "HAVE" prefix from the large INSN limit check (Yauheni Kaliuta) [1813372] - [tools] runqslower: Fix Makefile (Yauheni Kaliuta) [1813372] - [net] bpf: Reuse log from btf_prase_vmlinux() in btf_struct_ops_init() (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test based on port range for BPF flow dissector (Yauheni Kaliuta) [1813372] - [net] bpf: map_seq_next should always increase position index (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Allow overriding llvm tools for runqslower (Yauheni Kaliuta) [1813372] - [tools] selftest/bpf: Add test for allowed trampolines count (Yauheni Kaliuta) [1813372] - [net] bpf: Allow to resolve bpf trampoline and dispatcher in unwind (Yauheni Kaliuta) [1813372] - [net] bpf: Allow BTF ctx access for string pointers (Yauheni Kaliuta) [1813372] - [tools] libbpf: Improve handling of failed CO-RE relocations (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Reset global state between reuseport test runs (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Make reuseport test output more legible (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Ignore FIN packets for reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Use a temporary file in test_sockmap (Yauheni Kaliuta) [1813372] - [tools] bpftool: Print function linkage in BTF dump (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Improve bpftool changes detection (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Initialize duration variable before using (Yauheni Kaliuta) [1813372] - [tools] bpf: tcp: Add bpf_cubic example (Yauheni Kaliuta) [1813372] - [tools] bpf: Sync uapi bpf.h to tools/ (Yauheni Kaliuta) [1813372] - [net] bpf: Add BPF_FUNC_jiffies64 (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add tests for program extensions (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add support for program extensions (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce dynamic program extensions (Yauheni Kaliuta) [1813372] - [scripts] bpf, btf: Always output invariant hit in pahole DWARF to BTF transform (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Build urandom_read with LDFLAGS and LDLIBS (Yauheni Kaliuta) [1813372] - [net] bpf: Fix error path under memory pressure (Yauheni Kaliuta) [1813372] - [net] bpf: don't bother with getname/kern_path - use user_path_at (Yauheni Kaliuta) [1813372] - [tools] selftests: Refactor build to remove tools/lib/bpf from include path (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] bpftool: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] runsqslower: Support user-specified libbpf include and object paths (Yauheni Kaliuta) [1813372] - [tools] tools/runqslower: Remove tools/lib/bpf from include path (Yauheni Kaliuta) [1813372] - [tools] selftests: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] tools/runqslower: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] selftests: Pass VMLINUX_BTF to runqslower Makefile (Yauheni Kaliuta) [1813372] - [tools] tools/bpf/runqslower: Fix override option for VMLINUX_BTF (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Don't try to remove user's homedir on clean (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Skip perf hw events test if the setup disabled it (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Don't check for btf fd in test_btf (Yauheni Kaliuta) [1813372] - [net] bpf: Fix memory leaks in generic update/delete batch ops (Yauheni Kaliuta) [1813372] - [tools] libbpf: Load btf_vmlinux only once per object (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix potential multiplication overflow in mmap() size calculation (Yauheni Kaliuta) [1813372] - [tools] libbpf: Simplify BTF initialization logic (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix error handling bug in btf_dump__new (Yauheni Kaliuta) [1813372] - [net] bpf: Remove set but not used variable 'first_key' (Yauheni Kaliuta) [1813372] - [tools] libbpf: Revert bpf_helper_defs.h inclusion regression (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix test_progs send_signal flakiness with nmi mode (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix unneeded extra initialization in bpf_map_batch_common (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add whitelist/blacklist of test names to test_progs (Yauheni Kaliuta) [1813372] - [tools] bpftool: Support dumping a map with btf_vmlinux_value_type_id (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add struct_ops map name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose bpf_find_kernel_btf as a LIBBPF_API (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix missing BTF output for json during map dump (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix a leak of btf object (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add batch ops testing to array bpf map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add batch ops testing for htab and htab_percpu map (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add libbpf support to batch ops (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Sync uapi header bpf.h (Yauheni Kaliuta) [1813372] - [net] bpf: Add batch ops to all htab bpf map (Yauheni Kaliuta) [1813372] - [net] bpf: Add lookup and update batch ops to arraymap (Yauheni Kaliuta) [1813372] - [net] bpf: Add generic support for update and delete batch ops (Yauheni Kaliuta) [1813372] - [net] bpf: Add generic support for lookup batch op (Yauheni Kaliuta) [1813372] - [net] bpf: Add bpf_map_{value_size, update_value, map_copy_value} functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add a test for attaching a bpf fentry/fexit trace to an XDP program (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Add self tests for bpf_send_signal_thread() (Yauheni Kaliuta) [1813372] - [kernel] bpf: Add bpf_send_signal_thread() helper (Yauheni Kaliuta) [1813372] - [net] bpf: Fix seq_show for BPF_MAP_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Build runqslower from selftests (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Add runqslower tool to tools/bpf (Yauheni Kaliuta) [1813372] - [tools] bpftool: Apply preserve_access_index attribute to all types in BTF dump (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Conform selftests/bpf Makefile output to libbpf and bpftool (Yauheni Kaliuta) [1813372] - [scripts] libbpf: Clean up bpf_helper_defs.h generation output (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add BPF_PROG, BPF_KPROBE, and BPF_KRETPROBE macros (Yauheni Kaliuta) [1813372] - [tools] libbpf: Poison kernel-only integer types (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add unit tests for global functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Modify a test to check global functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add a test for a large global function (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add fexit-to-skb test for global funcs (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce function-by-function verification (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Further clean up Makefile output (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Ensure bpf_helper_defs.h are taken from selftests dir (Yauheni Kaliuta) [1813372] - [tools] libbpf,selftests/bpf: Fix clean targets (Yauheni Kaliuta) [1813372] - [tools] libbpf: Make bpf_map order and indices stable (Yauheni Kaliuta) [1813372] - [tools] bpf: Document BPF_F_QUERY_EFFECTIVE flag (Yauheni Kaliuta) [1813372] - [tools] bpf: Add bpf_dctcp example (Yauheni Kaliuta) [1813372] - [tools] bpf: libbpf: Add STRUCT_OPS support (Yauheni Kaliuta) [1813372] - [tools] bpf: Synch uapi bpf.h to tools/ (Yauheni Kaliuta) [1813372] - [net] bpf: Add BPF_FUNC_tcp_send_ack helper (Yauheni Kaliuta) [1813372] - [net] bpf: tcp: Support tcp_congestion_ops in bpf (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF_MAP_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF_PROG_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [net] bpf: Support bitfield read access in btf_struct_access (Yauheni Kaliuta) [1813372] - [net] bpf: Add enum support to btf_ctx_access() (Yauheni Kaliuta) [1813372] - [net] bpf: Avoid storing modifier to info->btf_id (Yauheni Kaliuta) [1813372] - [net] bpf: Save PTR_TO_BTF_ID register state when spilling to stack (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Restore original comm in test_overhead (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add misc section and probe for large INSN limit (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add probe for large INSN limit (Yauheni Kaliuta) [1813372] - [tools] bpftool: Make skeleton C code compilable with C++ compiler (Yauheni Kaliuta) [1813372] - [tools] bpf: Print error message for bpftool cgroup show (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify transmit fill pattern (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify tx packet size (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify number of packets to send (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify batch size (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Use common code to handle signal and main exit (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add duration option to specify how long to run (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Preserve errno in test_progs CHECK macros (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test BPF_F_REPLACE in cgroup_attach_multi (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Convert test_cgroup_attach to prog_tests (Yauheni Kaliuta) [1813372] - [tools] libbpf: Introduce bpf_prog_attach_xattr (Yauheni Kaliuta) [1813372] - [net] bpf: Support replacing cgroup-bpf program in MULTI mode (Yauheni Kaliuta) [1813372] - [net] bpf: Remove unused new_flags in hierarchy_allows_attach() (Yauheni Kaliuta) [1813372] - [net] bpf: Simplify __cgroup_bpf_attach (Yauheni Kaliuta) [1813372] - [net] bpf: Remove unnecessary assertion on fp_old (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix another __u64 printf warning (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix printing of ulimit value (Yauheni Kaliuta) [1813372] - [tools] libbpf: BTF is required when externs are present (Yauheni Kaliuta) [1813372] - [tools] libbpf: Allow to augment system Kconfig through extra optional config (Yauheni Kaliuta) [1813372] - [tools] libbpf: Put Kconfig externs into .kconfig section (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add bpf_link__disconnect() API to preserve underlying BPF resource (Yauheni Kaliuta) [1813372] - [tools] bpf: Allow to change skb mark in test_run (Yauheni Kaliuta) [1813372] - [tools] bpftool: Work-around rst2man conversion bug (Yauheni Kaliuta) [1813372] - [tools] bpftool: Simplify format string to not use positional args (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add gen subcommand manpage (Yauheni Kaliuta) [1813372] - [tools] libbpf: Remove BPF_EMBED_OBJ macro from libbpf.h (Yauheni Kaliuta) [1813372] - [tools] bpftool, selftests/bpf: Embed object file inside skeleton (Yauheni Kaliuta) [1813372] - [tools] libbpf: Reduce log level for custom section names (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix libbpf_common.h when installing libbpf through 'make install' (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: More succinct Makefile output (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add zlib as a dependency in pkg-config template (Yauheni Kaliuta) [1813372] - [tools] libbpf: Print hint about ulimit when getting permission denied error (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Attach XDP programs in driver mode by default (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Set -fno-stack-protector when building BPF programs (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Add missing -lz to TPROGS_LDLIBS (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix compilation warning on shadowed variable (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix build by renaming variables (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add flexible array relocation tests (Yauheni Kaliuta) [1813372] - [tools] libbpf: Support flexible arrays in CO-RE (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add tests for libbpf-provided externs (Yauheni Kaliuta) [1813372] - [tools] bpftool: Generate externs datasec in BPF skeleton (Yauheni Kaliuta) [1813372] - [tools] libbpf: Support libbpf-provided extern variables (Yauheni Kaliuta) [1813372] - [tools] libbpf: Extract internal map names into constants (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add `gen skeleton` BASH completions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test validating data section to struct convertion layout (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Convert few more selftest to skeletons (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add BPF skeletons selftests and convert attach_probe.c (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add skeleton codegen command (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add BPF object skeleton support (Yauheni Kaliuta) [1813372] - [tools] libbpf: Reduce log level of supported section names dump (Yauheni Kaliuta) [1813372] - [tools] libbpf: Postpone BTF ID finding for TRACING programs to load phase (Yauheni Kaliuta) [1813372] - [tools] libbpf: Refactor global data map initialization (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose BPF program's function name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose BTF-to-C type declaration emitting API (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose btf__align_of() API (Yauheni Kaliuta) [1813372] - [tools] libbpf: Extract common user-facing helpers (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add BPF_EMBED_OBJ macro for embedding BPF .o files (Yauheni Kaliuta) [1813372] - [tools] libbpf: Move non-public APIs from libbpf.h to libbpf_internal.h (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add generic bpf_program__attach() (Yauheni Kaliuta) [1813372] - [tools] libbpf: Don't require root for bpf_object__open() (Yauheni Kaliuta) [1813372] - [tools] bpftool: Match maps by name (Yauheni Kaliuta) [1813372] - [tools] bpftool: Match programs by name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test wire_len/gso_segs in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [net] bpf: Expose __sk_buff wire_len/gso_segs to BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [x86] bpf, x86: Align dispatcher branch targets to 16B (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Add xdp_perf test (Yauheni Kaliuta) [1813372] - [net] bpf: Start using the BPF dispatcher in BPF_TEST_RUN (Yauheni Kaliuta) [1813372] - [net] bpf, xdp: Start using the BPF dispatcher for XDP (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF dispatcher (Yauheni Kaliuta) [1813372] - [net] bpf: Move trampoline JIT image allocation to a function (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add CPU mask parsing tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Switch reuseport tests for test_progs framework (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Move reuseport tests under prog_tests/ (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Pull up printing the test name into test runner (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Propagate errors during setup for reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Run reuseport tests in a loop (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Unroll the main loop in reuseport test (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add helpers for getting socket family & type name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Use sa_family_t everywhere in reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Let libbpf determine program type from section name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Recognize SK_REUSEPORT programs from section name (Yauheni Kaliuta) [1813372] - [arm64] bpf, x86, arm64: Enable jit by default when not built as always-on (Yauheni Kaliuta) [1813372] - [net] bpf: Switch to offsetofend in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [tools] libbpf: Bump libpf current version to v0.0.7 (Yauheni Kaliuta) [1813372] - [fs] vmalloc: fix remap_vmalloc_range() bounds checks (Yauheni Kaliuta) [1813370] - [net] bpf: Prevent re-mmap()'ing BPF map as writable for initially r/o mapping (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: fix test_sysctl_prog with alu32 (Yauheni Kaliuta) [1813370] - [powerpc] powerpc/bpf: Enable bpf_probe_read{, str}() on powerpc again (Yauheni Kaliuta) [1813370] - [kernel] bpf: Restrict bpf_trace_printk()'s s usage and add pks, pus specifier (Yauheni Kaliuta) [1813370] - [lib] printf: add support for printing symbolic error names (Yauheni Kaliuta) [1813370] - [net] bpf: Add bpf_probe_read_{user, kernel}_str() to do_refine_retval_range (Yauheni Kaliuta) [1813370] - [arm64] bpf: Restrict bpf_probe_read{, str}() only to archs where they work (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Fix accounting bug with direct->count in register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Return the first found result in lookup_rec() (Yauheni Kaliuta) [1813370] - [net] bpf: Undo incorrect __reg_bound_offset32 handling (Yauheni Kaliuta) [1813370] - [net] bpf: Fix tnum constraints for 32-bit comparisons (Yauheni Kaliuta) [1813370] - [x86] x86: Fix kernel-doc atomic.h warnings (Yauheni Kaliuta) [1813370] - [net] bpf: Fix trampoline usage in preempt (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Reintroduce missed build targets (Yauheni Kaliuta) [1813370] - [trace] bpf: Reliably preserve btf_trace_xxx types (Yauheni Kaliuta) [1813370] - [include] bpf: Avoid setting bpf insns pages read-only when prog is jited (Yauheni Kaliuta) [1813370] - [scripts] bpf: Force .BTF section start to zero when dumping from vmlinux (Yauheni Kaliuta) [1813370] - [scripts] bpf: Support pre-2.25-binutils objcopy for vmlinux BTF (Yauheni Kaliuta) [1813370] - [net] bpfilter: remove superfluous testing message (Jiri Benc) [1819632] - [net] bpfilter: fix dprintf usage for /dev/kmsg (Jiri Benc) [1819632] - [net] bpf, sockmap: Remove bucket->lock from sock_{hash|map}_free (Jiri Benc) [1819632] - [netdrv] veth: ignore peer tx_dropped when counting local rx_dropped (Jiri Benc) [1819632] - [net] xsk: Publish global consumer pointers when NAPI is finished (Jiri Benc) [1819632] - [kernel] bpf, xdp: Remove no longer required rcu_read_{un}lock() (Jiri Benc) [1819632] - [netdrv] bpf, xdp: virtio_net use access ptr macro for xdp enable check (Jiri Benc) [1819632] - [kernel] bpf, xdp: Update devmap comments to reflect napi/rcu usage (Jiri Benc) [1819632] - [net] xsk, net: Make sock_def_readable() have external linkage (Jiri Benc) [1819632] - [kernel] devmap: Adjust tracepoint for map-less queue flush (Jiri Benc) [1819632] - [net] xdp: Use bulking for non-map XDP_REDIRECT and consolidate code paths (Jiri Benc) [1819632] - [net] xdp: Move devmap bulk queue into struct net_device (Jiri Benc) [1819632] - [net] xsk: Support allocations of large umems (Jiri Benc) [1819632] - [tools] Sync uapi/linux/if_link.h (Jiri Benc) [1819632] - [net] bpf: Return -EBADRQC for invalid map type in __bpf_tx_xdp_map (Jiri Benc) [1819632] - [net] flow_dissector: fix document for skb_flow_get_icmp_tci (Jiri Benc) [1819632] - [net] xsk: Use struct_size() helper (Jiri Benc) [1819632] - [net] xsk: Add function naming comments and reorder functions (Jiri Benc) [1819632] - [net] xsk: Remove unnecessary READ_ONCE of data (Jiri Benc) [1819632] - [net] xsk: ixgbe: i40e: ice: mlx5: Xsk_umem_discard_addr to xsk_umem_release_addr (Jiri Benc) [1819632] - [net] xsk: Change names of validation functions (Jiri Benc) [1819632] - [net] xsk: Simplify the consumer ring access functions (Jiri Benc) [1819632] - [net] xsk: Simplify xskq_nb_avail and xskq_nb_free (Jiri Benc) [1819632] - [net] xsk: Eliminate the RX batch size (Jiri Benc) [1819632] - [net] xsk: Standardize naming of producer ring access functions (Jiri Benc) [1819632] - [net] xsk: Consolidate to one single cached producer pointer (Jiri Benc) [1819632] - [net] xsk: Simplify detection of empty and full rings (Jiri Benc) [1819632] - [net] xsk: Eliminate the lazy update threshold (Jiri Benc) [1819632] - [net] xdp: Simplify __bpf_tx_xdp_map() (Jiri Benc) [1819632] - [net] xdp: Remove map_to_flush and map swap detection (Jiri Benc) [1819632] - [net] xdp: Make cpumap flush_list common for all map instances (Jiri Benc) [1819632] - [net] xdp: Make devmap flush_list common for all map instances (Jiri Benc) [1819632] - [net] xsk: Make xskmap flush_list common for all map instances (Jiri Benc) [1819632] - [kernel] xdp: Fix graze->grace type-o in cpumap comments (Jiri Benc) [1819632] - [kernel] xdp: Simplify cpumap cleanup (Jiri Benc) [1819632] - [kernel] xdp: Simplify devmap cleanup (Jiri Benc) [1819632] - [net] sysctl: Fix compiler warning when only cBPF is present (Jiri Benc) [1819631] - [net] dsa: fix flow dissection on Tx path (Jiri Benc) [1819631] - [net] page_pool: add the possibility to sync DMA memory for device (Jiri Benc) [1819631] - [net] xsk: Fix xsk_poll()'s return type (Jiri Benc) [1819631] - [tools] net-af_xdp: Use correct number of channels from ethtool (Jiri Benc) [1819631] - [net] xdp: remove memory poison on free for struct xdp_mem_allocator (Jiri Benc) [1819631] - [documentation] xsk: Extend documentation for Rx|Tx-only sockets and shared umems (Jiri Benc) [1819631] - [net] xsk: Restructure/inline XSKMAP lookup/redirect/flush (Jiri Benc) [1819631] - [kernel] xsk: Store struct xdp_sock as a flexible array member of the XSKMAP (Jiri Benc) [1819631] - [include] xdp: Fix type of string pointer in __XDP_ACT_SYM_TAB (Jiri Benc) [1819631] - [documentation] xsk: Improve documentation for AF_XDP (Jiri Benc) [1819631] - [tools] Sync if_link.h (Jiri Benc) [1819631] - [net] xdp: Trivial, fix spelling in function description (Jiri Benc) [1819631] - [netdrv] netdevsim: Use scnprintf() for avoiding potential buffer overflow (Jiri Benc) [1819631] - [netdrv] netdevsim: fix ptr_ret.cocci warnings (Jiri Benc) [1819631] - [netdrv] netdevsim: remove unused sdev code (Jiri Benc) [1819631] - [netdrv] netdevsim: use IS_ERR instead of IS_ERR_OR_NULL for debugfs (Jiri Benc) [1819631] - [netdrv] netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init() (Jiri Benc) [1819631] - [netdrv] netdevsim: fix panic in nsim_dev_take_snapshot_write() (Jiri Benc) [1819631] - [net] openvswitch: New MPLS actions for layer 2 tunnelling (Guillaume Nault) [1839760] - [net] Rephrased comments section of skb_mpls_pop() (Guillaume Nault) [1839760] - [net] skb_mpls_push() modified to allow MPLS header push at start of packet. (Guillaume Nault) [1839760] - [net] Change in Openvswitch to support MPLS label depth of 3 in ingress direction (Guillaume Nault) [1839182] - [block] block: fix use-after-free on cached last_lookup partition (Ming Lei) [1787968]- [drm] drm/prime: fix extracting of the DMA addresses from a scatterlist (Jerry Snitselaar) [1815610] - [iommu] iommu: Check for deferred attach in iommu_group_do_dma_attach() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add get_domain_info() helper (Jerry Snitselaar) [1815610] - [iommu] iommu: Don't take group reference in iommu_alloc_default_domain() (Jerry Snitselaar) [1815610] - [iommu] iommu: Don't call .probe_finalize() under group->mutex (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Apply per-device dma_ops (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allow PCI sub-hierarchy to use DMA domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allow 32bit devices to uses DMA domain (Jerry Snitselaar) [1815610] - [iommu] iommu: Do not probe devices on IOMMU-less busses (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix variable "iommu" set but not used (Jerry Snitselaar) [1815610] - [iommu] iommu: Unexport iommu_group_get_for_dev() (Jerry Snitselaar) [1815610] - [iommu] iommu: Move more initialization to __iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove add_device()/remove_device() code-paths (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Axe a useless test in 'arm_smmu_master_alloc_smes()' (Jerry Snitselaar) [1815610] - [iommu] iommu/s390: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove dev_data->passthrough (Jerry Snitselaar) [1815610] - [iommu] iommu: Export bus_iommu_probe() and make is safe for re-probing (Jerry Snitselaar) [1815610] - [iommu] iommu: Move iommu_group_create_direct_mappings() out of iommu_group_add_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Split off default domain allocation from group assignment (Jerry Snitselaar) [1815610] - [iommu] iommu: Move new probe_device path to separate function (Jerry Snitselaar) [1815610] - [iommu] iommu: Keep a list of allocated groups in __iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Move default domain allocation to iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Add probe_device() and release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Return -ENODEV in add_device when device is not handled by IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove dma_mask check from check_device() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Wire up iommu_ops->def_domain_type (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Implement iommu_ops->def_domain_type call-back (Jerry Snitselaar) [1815610] - [iommu] iommu: Add def_domain_type() callback in iommu_ops (Jerry Snitselaar) [1815610] - [iommu] iommu: Move default domain allocation to separate function (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix reference count leak in iommu_group_alloc (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove real DMA lookup in find_domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allocate domain info for real DMA sub-devices (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Only clear real DMA device's context entries (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix get_acpihid_device_id() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Switch to use acpi_dev_hid_uid_match() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix over-read of ACPI UID from IVRS table (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix deferred domain attachment (Jerry Snitselaar) [1815610] - [include] iommu: Move fwspec->iommu_priv to struct dev_iommu (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Use accessor functions for iommu private data (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Refactor master_cfg/fwspec usage (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Use accessor functions for iommu private data (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Improve add_device() error handling (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Return -EBUSY when trying to re-add a device (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Fix resource_size check (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Drop __GFP_ZERO flag from DMA allocation (Jerry Snitselaar) [1815610] - [include] iommu: Introduce accessors for iommu private data (Jerry Snitselaar) [1815610] - [acpi] ACPI/IORT: Remove direct access of dev->iommu_fwspec (Jerry Snitselaar) [1815610] - [include] iommu: Define dev_iommu_fwspec_get() for !CONFIG_IOMMU_API (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not flush Device Table in iommu_map_page() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Update Device Table in increase_address_space() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Call domain_flush_complete() in update_domain() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not loop forever when trying to increase address space (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix race in increase_address_space()/fetch_pte() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix the memory leak in dev_iommu_free() (Jerry Snitselaar) [1815610] - [include] iommu: Move iommu_fwspec to struct dev_iommu (Jerry Snitselaar) [1815610] - [include] iommu: Rename struct iommu_param to dev_iommu (Jerry Snitselaar) [1815610] - [iommu] iommu/of: Take a ref to the IOMMU driver during ->of_xlate() (Jerry Snitselaar) [1815610] - [iommu] drivers/iommu: Take a ref to the IOMMU driver prior to ->add_device() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix mm reference leak (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix the configuration of GCR3 table root pointer (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Silence RCU-list debugging warning in dmar_find_atsr() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix page request descriptor size (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Populate debugfs if IOMMUs are detected (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Ignore devices with out-of-spec domain number (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix the wrong printing in RHSA parsing (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix debugfs register reads (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: quirk_ioat_snb_local_iommu: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: dmar_parse_one_rmrr: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: dmar: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Silence RCU-list debugging warnings (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix RCU-list bugs in intel_iommu_init() (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Fix MSI reservation allocation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix a bug in intel_iommu_iova_to_phys() for huge page (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Disable IOMMU on Stoney Ridge systems (Jerry Snitselaar) [1815610] - [iommu] iommu: intel: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: amd: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: arm: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: Implement generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu/iova: Silence warnings under memory pressure (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix Kconfig indentation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove unnecessary WARN_ON_ONCE() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Unnecessary to handle default identity domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add RMRR base and end addresses sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Mark firmware tainted if RMRR fails sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Don't reject Host Bridge due to scope mismatch (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Loose requirement for flush queue initializaton (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid iova flush queue in strict mode (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: trace: Extend map_sg trace event (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid sending invalid page response (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix off-by-one in PASID allocation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid duplicated code for PASID setup (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Reject SVM bind for failed capability check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Match CPU and IOMMU paging mode (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix CPU and IOMMU SVM feature matching checks (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove VMD child device sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use pci_real_dma_dev() for mapping (Jerry Snitselaar) [1815610] - [pci] PCI: Introduce pci_real_dma_dev() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove the unnecessary assignment (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unused struct member (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Replace two consecutive readl calls with one readq (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix typos for PPR macros (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove local variables (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unused variable (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Only support x2APIC with IVHD type 11h/40h (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Check feature support bit before accessing MSI capability registers (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Treat per-device exclusion ranges as r/w unity-mapped regions (Jerry Snitselaar) [1815610] - [iommu] iommu: Use C99 flexible array in fwspec (Jerry Snitselaar) [1833512 1815610] - [iommu] drivers/iommu: Allow IOMMU bus ops to be unregistered (Jerry Snitselaar) [1815610] - [iommu] iommu/of: Request ACS from the PCI core when configuring IOMMU linkage (Jerry Snitselaar) [1815610] - [iommu] drivers/iommu: Export core IOMMU API symbols to permit modular drivers (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix IOMMU perf counter clobbering during init (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: fix variable 'cookie' set but not used (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Unlink device if failed to add to group (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove device link to group on failure (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix adding non-PCI devices to Intel IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Relax locking in iommu_dma_prepare_msi() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove incorrect PSI capability check (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Rationalise types for DMA masks (Jerry Snitselaar) [1815610] - [iommu] iommu/iova: Init the struct iova to fix the possible memleak (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Check VT-d RMRR region in BIOS is reported as reserved (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Turn off translations at shutdown (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Support multiple PCI DMA aliases in device table (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not re-fetch iommu->cmd_buf_tail (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Pass gfp flags to iommu_map_page() in amd_iommu_map() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Simpify decoding logic for INVALID_PPR_REQUEST event (Jerry Snitselaar) [1815610] - [drm] drm/prime: use dma length macro when mapping sg (Jerry Snitselaar) [1815610] - [drm] drm/amdgpu: fix scatter-gather mapping with user pages (Jerry Snitselaar) [1815610] - [drm] drm/radeon: fix scatter-gather mapping with user pages (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Convert AMD iommu driver to the dma-iommu api (Jerry Snitselaar) [1815610] - [iommu] iommu/dma-iommu: Use the dev->coherent_dma_mask (Jerry Snitselaar) [1815610] - [iommu] iommu/dma-iommu: Handle deferred devices (Jerry Snitselaar) [1815610] - [include] iommu: KABI cleanup (Jerry Snitselaar) [1815610] - [iommu] iommu: Add gfp parameter to iommu_ops::map (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unnecessary locking from AMD iommu driver (Jerry Snitselaar) [1815610] - [iommu] drivers: iommu: hyperv: Make HYPERV_IOMMU only available on x86 (Jerry Snitselaar) [1815610] - [include] iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros (Jerry Snitselaar) [1815610] - [iommu] iommu: pass cell_count = -1 to of_for_each_phandle with cells_name (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Free context bitmap in the err path of arm_smmu_init_domain_context (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Return the correct dma mask when we are bypassing the IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41 (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Mask TLBI address correctly (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove wrong default domain comments (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Fix for dereferencing before null checking (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Declare Broadwell igfx dmar support snafu (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add Scalable Mode fault information (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use bounce buffer for untrusted devices (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add trace events for device dma map/unmap (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Don't switch off swiotlb if bounce page is used (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Check whether device requires bounce buffer (Jerry Snitselaar) [1815610] - [dma] swiotlb: Split size parameter to map/unmap APIs (Jerry Snitselaar) [1815610] - [xen] swiotlb-xen: use ->map_page to implement ->map_sg (Jerry Snitselaar) [1815610] - [xen] swiotlb-xen: make instances match their method names (Jerry Snitselaar) [1815610] - [uapi] iommu: Add padding to struct iommu_fault (Jerry Snitselaar) [1815610] - [iommu] iommu: Add recoverable fault reporting (Jerry Snitselaar) [1815610] - [iommu] iommu: Introduce device fault report API (Jerry Snitselaar) [1815610] - [include] driver core: Add per device iommu param (Jerry Snitselaar) [1815610] - [uapi] iommu: Introduce device fault data (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Silence warnings under memory pressure (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Override wrong IVRS IOAPIC on Raven Ridge systems (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use dma_direct for bypass devices (Jerry Snitselaar) [1815610] - [dma] dma-direct: don't check swiotlb=force in dma_direct_map_resource (Jerry Snitselaar) [1815610] - [mm] dma-mapping: remove the default map_resource implementation (Jerry Snitselaar) [1815610] - [iommu] Revert "iommu/vt-d: Fix lock inversion between iommu->lock and device_domain_lock" (Jerry Snitselaar) [1815610 1813666] - [dma] dma-direct: don't truncate dma_required_mask to bus addressing capabilities (Jerry Snitselaar) [1815610] - [acpi] ACPI / utils: Introduce acpi_dev_hid_uid_match() helper (Jerry Snitselaar) [1815610] - [security] efi: Only print errors about failing to get certs if EFI vars are found (Lenny Szubowicz) [1804969] - [infiniband] RDMA/iw_cxgb4: Fix incorrect function parameters (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cxgb4: initiate CLOSE when entering TERM (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cgxb4: Fix an error handling path in 'c4iw_connect()' (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case (Vishal Kulkarni) [1828676] - [infiniband] iw_cxgb4: fix ECN check on the passive accept (Vishal Kulkarni) [1828676] - [vfio] vfio/pci: fix memory leaks of eventfd ctx (Alex Williamson) [1837678] - [vfio] vfio/pci: fix memory leaks in alloc_perm_bits() (Alex Williamson) [1837678] - [vfio] vfio: avoid possible overflow in vfio_iommu_type1_pin_pages (Alex Williamson) [1837678] - [vfio] vfio/mdev: make create attribute static (Alex Williamson) [1837678] - [vfio] vfio/type1: remove hugepage checks in is_invalid_reserved_pfn() (Alex Williamson) [1837678] - [vfio] vfio/type1: Initialize resv_msi_base (Alex Williamson) [1837678] - [vfio] vfio_pci: Restore original state on release (Alex Williamson) [1837678] - [uapi] vfio: re-arrange vfio region definitions (Alex Williamson) [1837678] - [vfio] mdev: Send uevents around parent device registration (Alex Williamson) [1837678] - [vfio] vfio/mdev: Synchronize device create/remove with parent removal (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid creating sysfs remove file on stale device removal (Alex Williamson) [1837678] - [vfio] vfio/mdev: Improve the create/remove sequence (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid inline get and put parent helpers (Alex Williamson) [1837678] - [vfio] vfio/mdev: Fix aborting mdev child device removal if one fails (Alex Williamson) [1837678] - [vfio] vfio/mdev: Follow correct remove sequence (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid masking error code to EBUSY (Alex Williamson) [1837678] - [vfio] vfio/mdev: Removed unused kref (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid release parent reference during error path (Alex Williamson) [1837678] - [uapi] vfio-ccw: add handling for async channel instructions (Alex Williamson) [1837678] - [uapi] vfio-ccw: add capabilities chain (Alex Williamson) [1837678] - [vfio] vfio: Fix WARNING "do not call blocking ops when !TASK_RUNNING" (Alex Williamson) [1837678] - [vfio] vfio/pci: use correct format characters (Alex Williamson) [1837678] - [vfio] vfio: expand minor range when registering chrdev region (Alex Williamson) [1837678] - [vfio] vfio/mdev: add static modifier to add_mdev_supported_type (Alex Williamson) [1837678] - [vfio] vfio/type1: Remove map_try_harder() code path (Alex Williamson) [1837678] - [vfio] vfio/pci: Fix potential memory leak in vfio_msi_cap_len (Alex Williamson) [1837678] - [vfio] vfio: Mark expected switch fall-throughs (Alex Williamson) [1837678] - [fs] gfs2: Only do glock put in gfs2_create_inode for free inodes (Robert S Peterson) [1831666] - [fs] gfs2: Grab glock reference sooner in gfs2_add_revoke (Robert S Peterson) [1831666] - [fs] Revert "gfs2: Don't demote a glock until its revokes are written" (Robert S Peterson) [1831666] - [fs] signal: Fix wrong PIDTYPE_TGID check in send_sigio() & send_sigurg() (Waiman Long) [1845597] - [md] dm mpath: add DM device name to Failing/Reinstating path log messages (Mike Snitzer) [1822975] - [md] dm mpath: enhance queue_if_no_path debugging (Mike Snitzer) [1822975] - [md] dm mpath: restrict queue_if_no_path state machine (Mike Snitzer) [1822975] - [md] dm mpath: simplify __must_push_back (Mike Snitzer) [1822975] - [md] dm: use DMDEBUG macros now that they use pr_debug variants (Mike Snitzer) [1822975] - [include] dm: use dynamic debug instead of compile-time config option (Mike Snitzer) [1822975] - [md] dm mpath: switch paths in dm_blk_ioctl() code path (Mike Snitzer) [1822975] - [md] dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath (Mike Snitzer) [1822975] - [tools] selftests: mlxsw: qos_mc_aware: Specify arping timeout as an integer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload fails (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl_tcam: Position vchunk in a vregion list properly (Ivan Vecera) [1821646] - [netdrv] mlxsw: Fix some IS_ERR() vs NULL bugs (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_VLAN_MANGLE (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_PRIORITY (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: fix unintention integer overflow on left shift (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap policers (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add support for setting of packet trap group parameters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Switch to use correct packet trap group (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Do not initialize dedicated discard policer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add devlink-trap policer support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Prepare policers for registration with devlink (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Track used packet trap policer IDs (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend QPCR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_ptp: Fix build warnings (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Avoid uninitialized symbol errors (Ivan Vecera) [1821646] - [netdrv] mlxsw: switchx2: Remove unnecessary conversion to bool (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl: Avoid defining static variable in header file (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remove unused RIF and FID families (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Add proper function documentation (Ivan Vecera) [1821646] - [netdrv] mlxsw: i2c: Add missing field documentation (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Fix list iteration in error path (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_dscp_router: Test no DSCP rewrite after pedit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Offload FLOW_ACTION_MANGLE (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add DSCP, ECN, dscp_rw to QOS_ACTION (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Rename mlxsw_afa_qos_cmd to mlxsw_afa_qos_switch_prio_cmd (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Explicitly register packet trap groups (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Fix 64-bit division in mlxsw_sp_counter_resources_register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Offload FLOW_ACTION_PRIORITY (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add QOS_ACTION (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Only issue reset when system is ready (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add tc action hw_stats tests (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Expose devlink resource occupancy for counters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Consolidate subpools initialization (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Move config validation along with resource register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Expose subpool sizes over devlink resources (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Add entry_size_res_id for each subpool and use it to query entry size (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Move sub_pools under per-instance pool struct (Ivan Vecera) [1821646] - [tools] selftests: spectrum-2: Adjust tc_flower_scale limit according to current counter count (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Query bank size from FW resources (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase register field length to 31 bits (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: RED: Test RED ECN nodrop offload (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Offload RED ECN nodrop mode (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Ask device for rule stats only if counter was created (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of FIFO Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Add handle parameter to ..._ops.replace (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Introduce struct mlxsw_sp_qdisc_state (Ivan Vecera) [1821646] - [netdrv] net: mlxfw: Replace zero-length array with flexible-array member (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_defprio: Use until_counter_is (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Wait longer before accessing the device after reset (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Update module_type values in PMTM register and map them to width (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: resource_scale: Invoke for Spectrum-3 (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Reduce router scale running time using offload indication (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Reduce running time using offload indication (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add shared buffer traffic test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add mlxsw lib (Ivan Vecera) [1821646] - [tools] selftests: devlink_lib: Add devlink port helpers (Ivan Vecera) [1821646] - [tools] selftests: devlink_lib: Check devlink info command is supported (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add shared buffer configuration test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in rtnetlink test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in vxlan test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in blackhole routes test (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_l3_drops: Avoid race condition (Ivan Vecera) [1821646] - [tools] selftests: add a mirror test to mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [tools] selftests: add egress redirect test to mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add mlxsw_sp_span_ops.buffsize_get for Spectrum-3 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Initialize advertised speeds to supported speeds (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Move the ECN-marked packet counter to ethtool (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Optimize SFN records processing (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Lookup and pass cookie down to devlink_trap_report() (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Extract cookie index for ACL discard trap packets (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Implement flow_offload action cookie offload (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Add trap with userdef action (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: fix spelling mistake: "progamming" -> "programming" (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_acl_drops: Add ACL traps test (Ivan Vecera) [1821646] - [tools] selftests: pass pref and handle to devlink_trap_drop_* helpers (Ivan Vecera) [1821646] - [tools] selftests: introduce test for mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add ACL devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Introduce dummy group with thin policer (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend MLXSW_RXL_DIS to register disabled trap group (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Allow to enable/disable rx_listener for trap (Ivan Vecera) [1821646] - [netdrv] mlxsw: acl_flex_actions: Trap all ACL dropped packets to DISCARD_*_ACL traps (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Pass the ingress indication down to flex action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Disable mixed bound blocks to contain action drop (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Track ingress and egress block bindings (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Prepare mlxsw_core_trap_action_set() to handle not only action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Use listener->en/dis_action instead of hard-coded values (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Allow to register disabled traps using MLXSW_RXL_DIS (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Set unreg_action to be SET_FW_DEFAULT (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Remove unused values (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove priv from listener equality comparison (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Make block arg const where appropriate (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Make global arrays const as they should be (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove initialization to false of mlxsw_listener struct (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Convert is_event and is_ctrl bools to be single bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove dummy union name from struct mlxsw_listener (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove unused action field from mlxsw_rx_listener struct (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Move policer initialization to mlxsw_sp_trap_init() (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Rename Trap / Discard Action to Trap Action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Move functions to avoid their forward declarations (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Use err variable instead of directly checking func return value (Ivan Vecera) [1821646] - [netdrv] net/mlx5: Add fsm_reactivate callback support (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Add reactivate flow support to FSM burn flow (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Use MLXFW_ERR_MSG macro for error reporting (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Convert pr_* to dev_* in mlxfw_fsm.c (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: More error messages coverage (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Improve FSM err message reporting and return codes (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Generic mlx FW flash status notify (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remove RTNL where possible (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from exported helpers (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from inetaddr listeners (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from netdev listener (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dpipe: Take router lock from dpipe code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from inside routing code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Introduce router lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Store NVE decapsulation configuration in router (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Expose router struct to internal users (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Protect multicast route list with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Protect multicast table list with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Publish multicast route after writing it to the device (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_nve: Make tunnel initialization symmetric (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Export function to check if RIF exists (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Prevent RIF access outside of routing code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Prepare function for router lock introduction (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Prepare function for router lock introduction (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken when resolving underlay device (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken during RIF teardown (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken during nexthop init (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Only update mirroring agents if present (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Convert callers to use new mirroring API (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Prepare work item to update mirroring agents (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Use struct_size() to simplify allocation (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Do no expose mirroring agents to entire driver (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Protect counter pool with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_kvdl: Protect allocations with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: Replace zero-length array with flexible-array member (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: vxlan: Add test for error path (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: vxlan: Adjust test to recent changes (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: extack: Test creation of multiple VLAN-aware bridges (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: extack: Test bridge creation with VXLAN (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Remove deprecated test (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Reduce dependency between bridge and router code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Remove VXLAN checks during FID membership (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Have VXLAN device take reference on FID (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack to bridge creation function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_fid: Use 'refcount_t' for FID reference counting (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dpipe: Add missing error path (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add validation of hardware device types for MGPIR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Clear offload indication from IPv6 nexthops on abort (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for local table route replacement (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Fix 64-bit division error in mlxsw_sp_qdisc_tbf_rate_kbps (Ivan Vecera) [1821646] - [netdrv] mlxsw: minimal: Fix an error handling path in 'mlxsw_m_port_create()' (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of TBF Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Configure shaper rate and burst size together (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add lowest_shaper_bs to struct mlxsw_sp (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase MLXSW_REG_QEEC_MAS_DIS (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add max_shaper_bs to QoS ETS Element Configuration (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Extract a common leaf unoffload function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Add mlxsw_sp_qdisc_get_class_stats() (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Extract a per-TC stat function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Fix use-after-free during reload (Ivan Vecera) [1821646] - [netdrv] spectrum: Add a delayed work to update SPAN buffsize according to speed (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix SPAN egress mirroring buffer size for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Put buffsize update code into helper function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Push code getting port speed into a helper (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_vxlan: Add test case for overlay_smac_is_mc (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add OVERLAY_SMAC_MC trap (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_ipip: Add test case for decap_error (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_vxlan: Add test case for decap_error (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add tunnel devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Reorder cases according to enum order (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add ECN configurations with IPinIP tunnels (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Tunneling IPinIP Decapsulation ECN Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Tunneling IPinIP Encapsulation ECN Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add NON_ROUTABLE trap (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_l3_drops: Add test cases of irif and erif disabled (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add irif and erif disabled traps (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Include MC TCs in Qdisc counters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Wipe xstats.backlog of down ports (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_mc_aware: Fix mausezahn invocation (Ivan Vecera) [1821646] - [netdrv] mlxsw: switchx2: Do not modify cloned SKBs during xmit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Do not modify cloned SKBs during xmit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Do not enforce same firmware version for multiple ASICs (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test for FIB offload API (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Set hardware flags for routes (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Separate nexthop offload indication from route (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Only require minimum firmware version (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Update firmware version to xx.2000.2714 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Ignore grafting of invisible FIFO (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable DIP_LINK_LOCAL check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable SIP_DIP check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable MC_DMAC check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable SIP_CLASS_E check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dcb: Allow setting default port priority (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add QoS Port DSCP to Priority Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of ETS Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Generalize PRIO offload to support ETS (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Rename MLXSW_REG_QEEC_HIERARCY_* enumerators (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Clarify a comment (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use dedicated policer for VRRP packets (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Skip loopback RIFs during MAC validation (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Fix out-of-memory error in mfa2 flash burning (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Fix use of uninitialized adjacency index (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: After underlay moves, demote conflicting tunnels (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Check devlink device before running test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add router scale test for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Fix determining underlay for a GRE tunnel (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Verify FSM error code translation doesn't exceed array size (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Allocate discard adjacency entry when needed (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Enable EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add support for using EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend EMAD information reported to devlink hwerr (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add support for EMAD string TLV parsing (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: emad: Remove deprecated EMAD TLVs (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Parse TLVs' offsets of incoming EMADs (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Enable devlink reload only on probe (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap layer 3 exceptions (Ivan Vecera) [1821646] - [tools] selftests: forwarding: devlink: Add functionality for trap exceptions test (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 3 devlink-trap exceptions support (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add specific trap for packets routed via invalid nexthops (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add new FIB entry type for reject routes (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap layer 3 drops (Ivan Vecera) [1821646] - [tools] selftests: devlink: Make devlink_trap_cleanup() more generic (Ivan Vecera) [1821646] - [tools] selftests: devlink: Export functions to devlink library (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 3 devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix error return code in mlxsw_sp_port_module_info_init() (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Generalize split count check (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Iterate over all ports in gap during unsplit create (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix base port get for split count 4 and 8 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use port_module_max_width to compute base port index (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remember split base local port and use it in unsplit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Introduce resource for getting offset of 4 lanes split port (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Push getting offsets of split ports into a helper (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add sanity checks into module info get (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Pass mapping values in port mapping structure (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use mapping of port being split for creating split ports (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Replace port_to_module array with array of structs (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Distinguish between unsplittable and split port (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Move max_width check up before count check (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use PMTM register to get max module width (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Port Module Type Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend PMLP tx/rx lane value size to 4 bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: Fix 64-bit division in mlxsw_sp_sb_prs_init (Ivan Vecera) [1821646] - [netdrv] mlxsw: Enforce firmware version for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: Bump firmware version to 13.2000.2308 (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Increase PCI reset timeout for SN3800 systems (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase size of MPAR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Unpublish devlink parameters during reload (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: remove unneeded semicolon (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Calculate the size of the main pool (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use guaranteed buffer size as pool size limit (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend QSFP EEPROM size for ethtool (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add macro for getting QSFP module EEPROM page number (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Push Ethernet header before reporting trap (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add Spectrum-2 target scale for tc flower scale test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add a resource scale test for Spectrum-2 (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add Spectrum-2 mirror-to-gretap target scale test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Generalize the parameters of mirror_gre test (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Register switched port analyzers (SPAN) as resource (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add support for 400Gbps (50Gbps per lane) link modes (Ivan Vecera) [1821646] - [netdrv] mlxsw: minimal: Add validation for FW version (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Push minor/subminor fw version check into helper (Ivan Vecera) [1821646] - [netdrv] mlxsw: thermal: Provide optimization for QSFP modules number detection (Ivan Vecera) [1821646] - [netdrv] mlxsw: hwmon: Provide optimization for QSFP modules number detection (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend MGPIR register with new field exposing the number of QSFP modules (Ivan Vecera) [1821646] - [netdrv] mlxsw: Propagate extack down to register_fib_notifier() (Ivan Vecera) [1821646] - [netdrv] mlxsw: Register port netdevices into net of core (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Take devlink net instead of init_net (Ivan Vecera) [1821646] - [netdrv] mlxsw: PCI: Send EMAD traffic on a separate queue (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use per-netns netdevice notifier registration (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Fail in case user specifies multiple mirror actions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Clear VLAN filters during port initialization (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Add the ability to query the CPU port's shared buffer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Register CPU port with devlink (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Prevent changing CPU port's configuration (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add a test case for devlink-trap (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap L2 drops (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add trap group for layer 2 discards (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 2 discard trap IDs (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add new trap actions (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add API to set trap action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Extend to support Spectrum-3 ASIC (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Forbid to offload match on reserved TCP flags bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Track rules that forbid egress block bind (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Forbid to offload mirred redirect on egress (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Increase scale of IPv6 nexthop groups (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Expose KVD size for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] geneve: change from tx_error to tx_dropped on missing metadata (Jiri Benc) [1843412] - [net] mptcp: use untruncated hash in ADD_ADDR HMAC (Florian Westphal) [1840167] - [net] mptcp: use rightmost 64 bits in ADD_ADDR HMAC (Florian Westphal) [1840167] - [tools] selftests: mptcp: pm: rm the right tmp file (Florian Westphal) [1840167] - [net] mptcp: cope better with MP_JOIN failure (Florian Westphal) [1840167] - [net] inet_connection_sock: factor out destroy helper. (Florian Westphal) [1840167] - [net] mptcp: add new sock flag to deal with join subflows (Florian Westphal) [1840167] - [net] mptcp: Initialize map_seq upon subflow establishment (Florian Westphal) [1840167] - [net] mptcp: set correct vfs info for subflows (Florian Westphal) [1840167] - [net] mptcp: fix uninitialized value access (Florian Westphal) [1840167] - [net] mptcp: initialize the data_fin field for mpc packets (Florian Westphal) [1840167] - [net] mptcp: fix 'use_ack' option access. (Florian Westphal) [1840167] - [net] mptcp: avoid a WARN on bad input. (Florian Westphal) [1840167] - [net] mptcp: move option parsing into mptcp_incoming_options() (Florian Westphal) [1840167] - [net] mptcp: consolidate synack processing. (Florian Westphal) [1840167] - [net] mptcp: replace mptcp_disconnect with a stub (Florian Westphal) [1840167] - [net] mptcp: fix race in msk status update (Florian Westphal) [1840167] - [net] tcp: mptcp: use mptcp receive buffer space to select rcv window (Florian Westphal) [1840167] - [net] mptcp/pm_netlink.c : add check for nla_put_in/6_addr (Florian Westphal) [1840167] - [net] mptcp: fix data_fin handing in RX path (Florian Westphal) [1840167] - [net] mptcp: drop req socket remote_key* fields (Florian Westphal) [1840167] - [net] mptcp: avoid flipping mp_capable field in syn_recv_sock() (Florian Westphal) [1840167] - [net] mptcp: handle mptcp listener destruction via rcu (Florian Westphal) [1840167] - [net] mptcp: fix 'Attempt to release TCP socket in state' warnings (Florian Westphal) [1840167] - [net] mptcp: fix splat when incoming connection is never accepted before exit/close (Florian Westphal) [1840167] - [net] mptcp: fix double-unlock in mptcp_poll (Florian Westphal) [1840167] - [net] mptcp: add some missing pr_fmt defines (Florian Westphal) [1840167] - [net] mptcp: fix "fn parameter not described" warnings (Florian Westphal) [1840167] - [net] mptcp: re-check dsn before reading from subflow (Florian Westphal) [1840167] - [net] mptcp: subflow: check parent mptcp socket on subflow state change (Florian Westphal) [1840167] - [net] mptcp: fix tcp fallback crash (Florian Westphal) [1840167] - [tools] selftests:mptcp: fix failure due to whitespace damage (Florian Westphal) [1840167] - [tools] selftests: add test-cases for MPTCP MP_JOIN (Florian Westphal) [1840167] - [tools] selftests: add PM netlink functional tests (Florian Westphal) [1840167] - [net] mptcp: add netlink-based PM (Florian Westphal) [1840167] - [net] mptcp: add and use MIB counter infrastructure (Florian Westphal) [1840167] - [net] mptcp: allow dumping subflow context to userspace (Florian Westphal) [1840167] - [net] mptcp: implement and use MPTCP-level retransmission (Florian Westphal) [1840167] - [net] mptcp: rework mptcp_sendmsg_frag to accept optional dfrag (Florian Westphal) [1840167] - [net] mptcp: allow partial cleaning of rtx head dfrag (Florian Westphal) [1840167] - [net] mptcp: implement memory accounting for mptcp rtx queue (Florian Westphal) [1840167] - [net] mptcp: introduce MPTCP retransmission timer (Florian Westphal) [1840167] - [net] mptcp: queue data for mptcp level retransmission (Florian Westphal) [1840167] - [net] mptcp: update per unacked sequence on pkt reception (Florian Westphal) [1840167] - [net] mptcp: Implement path manager interface commands (Florian Westphal) [1840167] - [net] mptcp: Add handling of outgoing MP_JOIN requests (Florian Westphal) [1840167] - [net] mptcp: Add handling of incoming MP_JOIN requests (Florian Westphal) [1840167] - [net] mptcp: Add path manager interface (Florian Westphal) [1840167] - [net] mptcp: Add ADD_ADDR handling (Florian Westphal) [1840167] - [net] tcp: annotate sk->sk_wmem_queued lockless reads (Florian Westphal) [1840167] - [net] mptcp: don't hang in mptcp_sendmsg() after TCP fallback (Florian Westphal) [1840167] - [net] mptcp: Remove set but not used variable 'can_ack' (Florian Westphal) [1840167] - [net] mptcp: rename fourth ack field (Florian Westphal) [1840167] - [net] mptcp: move msk state update to subflow_syn_recv_sock() (Florian Westphal) [1840167] - [net] mptcp: drop unneeded checks (Florian Westphal) [1840167] - [net] mptcp: create msk early (Florian Westphal) [1840167] - [net] mptcp: don't hang before sending 'MP capable with data' (Florian Westphal) [1840167] - [net] mptcp: don't grow mptcp socket receive buffer when rcvbuf is locked (Florian Westphal) [1840167] - [tools] mptcp: selftests: add rcvbuf set option (Florian Westphal) [1840167] - [net] mptcp: always include dack if possible. (Florian Westphal) [1840167] - [net] mptcp: Only send DATA_FIN with final mapping (Florian Westphal) [1840167] - [net] mptcp: Use per-subflow storage for DATA_FIN sequence number (Florian Westphal) [1840167] - [net] mptcp: Check connection state before attempting send (Florian Westphal) [1840167] - [net] mptcp: add dummy icsk_sync_mss() (Florian Westphal) [1840167] - [net] mptcp: defer work schedule until mptcp lock is released (Florian Westphal) [1840167] - [net] mptcp: avoid work queue scheduling if possible (Florian Westphal) [1840167] - [net] mptcp: remove mptcp_read_actor (Florian Westphal) [1840167] - [net] mptcp: add rmem queue accounting (Florian Westphal) [1840167] - [net] mptcp: update mptcp ack sequence from work queue (Florian Westphal) [1840167] - [net] mptcp: add work queue skeleton (Florian Westphal) [1840167] - [net] mptcp: add and use mptcp_data_ready helper (Florian Westphal) [1840167] - [net] xfrm: fix a NULL-ptr deref in xfrm_local_error (Xin Long) [1835208] - [net] xfrm: add IPv6 support for espintcp (Sabrina Dubroca) [1446392] - [net] xfrm: add support for UDPv6 encapsulation of ESP (Sabrina Dubroca) [1446392] - [net] xfrm: ifdef setsockopt(UDP_ENCAP_ESPINUDP/UDP_ENCAP_ESPINUDP_NON_IKE) (Sabrina Dubroca) [1446392] - [net] esp: Export esp_output_fill_trailer function (Sabrina Dubroca) [1446392] - [net] udp: fix jump label misuse (Sabrina Dubroca) [1446392] - [net] udp: implement complete book-keeping for encap_needed (Sabrina Dubroca) [1446392] - [net] xfrm: espintcp: save and call old ->sk_destruct (Sabrina Dubroca) [1446392] - [net] xfrm: add espintcp (RFC 8229) (Sabrina Dubroca) [1446392] - [net] esp4: split esp_output_udp_encap and introduce esp_output_encap (Sabrina Dubroca) [1446392] - [net] esp4: prepare esp_input_done2 for non-UDP encapsulation (Sabrina Dubroca) [1446392] - [net] xfrm: add route lookup to xfrm4_rcv_encap (Sabrina Dubroca) [1446392] - [net] xfrm: introduce xfrm_trans_queue_net (Sabrina Dubroca) [1446392] - [net] add queue argument to __skb_wait_for_more_packets and __skb_{, try_}recv_datagram (Sabrina Dubroca) [1446392] - [net] use skb_queue_empty_lockless() in busy poll contexts (Sabrina Dubroca) [1446392] - [include] net: add skb_queue_empty_lockless() (Sabrina Dubroca) [1446392] - [net] add READ_ONCE() annotation in __skb_wait_for_more_packets() (Sabrina Dubroca) [1446392] - [net] datagram: remove rendundant 'peeked' argument (Sabrina Dubroca) [1446392] - [tools] kvm: selftests: fix rdtsc() for vmx_tsc_adjust_test (Vitaly Kuznetsov) [1841490] - [x86] kvm: lapic: Also cancel preemption timer when disarm LAPIC timer (Vitaly Kuznetsov) [1841490] - [s390] kvm_host: unify VM_STAT and VCPU_STAT definitions in a single place (Vitaly Kuznetsov) [1841490] - [x86] kvm/x86: Remove redundant function implementations (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: VMX preemption timer migration test (Vitaly Kuznetsov) [1841490] - [tools] tools arch kvm: Sync kvm headers with the kernel sources (Vitaly Kuznetsov) [1841490] - [tools] tools headers uapi: Update tools's copy of kvm.h headers (Vitaly Kuznetsov) [1841490] - [tools] tools headers: Sync the various kvm.h header copies (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Fix VMX preemption timer migration (Vitaly Kuznetsov) [1841490] - [uapi] x86/kvm/hyper-v: Explicitly align hcall param for kvm_hyperv_exit (Vitaly Kuznetsov) [1841490] - [virt] kvm: introduce kvm_read_guest_offset_cached() (Vitaly Kuznetsov) [1841490] - [virt] kvm: rename kvm_arch_can_inject_async_page_present() to kvm_arch_can_dequeue_async_page_present() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Replace zero-length array with flexible-array (Vitaly Kuznetsov) [1841490] - [virt] revert "kvm: No need to retry for hva_to_pfn_remapped()" (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: implement KVM_GET_NESTED_STATE and KVM_SET_NESTED_STATE (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: fix smm test on SVM (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: add a SVM version of state-test (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: introduce cpu_has_svm() check (Vitaly Kuznetsov) [1841490] - [x86] kvm: mmu: pass arbitrary CR0/CR4/EFER to kvm_init_shadow_mmu (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: leave guest mode when clearing EFER.SVME (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: split nested_vmcb_check_controls (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove HF_HIF_MASK (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove HF_VINTR_MASK (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: synthesize correct EXITINTINFO on vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: preserve VGIF across VMCB switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract svm_set_gif (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove unnecessary if (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: synchronize VMCB controls updated by the processor on every vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: restore clobbered INT_CTL fields after clearing VINTR (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: save all control fields in svm->nested (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove trailing padding for struct vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: pass vmcb_control_area to copy_vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: clean up tsc_offset update (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: move MMU setup to nested_prepare_vmcb_control (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract preparation of VMCB for nested run (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract load_nested_vmcb_control (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: move map argument out of enter_svm_guest_mode (Vitaly Kuznetsov) [1841490] - [virt] kvm: check userspace_addr for all memslots (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: always update CR3 in VMCS (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: always update CR3 in VMCB (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: correctly inject INIT vmexits (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove exit_required (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: inject exceptions via svm_check_nested_events (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: enable event window in inject_pending_event (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: track manually whether an event has been injected (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Preserve registers modifications done before nested_svm_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Initialize tdp_level during vCPU creation (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: leave ASID aside in copy_vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: fix condition for filtering async PF (Vitaly Kuznetsov) [1841490] - [x86] kvm: Fix the indentation to match coding style (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: replace "fall through" with "return" to indicate different case (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Take an unsigned 32-bit int for has_emulated_msr()'s index (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Remove superfluous brackets from case statement (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: allow KVM_STATE_NESTED_MTF_PENDING in kvm_state flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: simplify is_mmio_spte (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: don't expose MSR_IA32_UMWAIT_CONTROL unconditionally (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: enable X86_FEATURE_WAITPKG in KVM capabilities (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Set mmio_value to '0' if reserved #PF can't be generated (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: only do L1TF workaround on affected processors (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Migrate the VMX-preemption timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Change emulated VMX-preemption timer hrtimer to absolute (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Really make emulated nested preemption timer pinned (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Remove unused 'ops' param from nested_vmx_hardware_setup() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Remove unnecessary V_IRQ unsetting (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Merge svm_enable_vintr into svm_set_vintr (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Handle preemption timer fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: TSCDEADLINE MSR emulation fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: introduce kvm_can_use_hv_timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Optimize posted-interrupt delivery for timer fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce more exit_fastpath_completion enum values (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce kvm_vcpu_exit_request() helper (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Print symbolic names of VMX VM-Exit flags in traces (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Introduce generic fastpath handler (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop superfluous VMREAD of vmcs02.GUEST_SYSENTER_* (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Truncate writes to vmcs.SYSENTER_EIP/ESP for 32-bit vCPU (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Improve handle_external_interrupt_irqoff inline assembly (Vitaly Kuznetsov) [1841490] - [documentation] kvm: documentation: Fix up cpuid page (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Sanity check on gfn before removal (Vitaly Kuznetsov) [1841490] - [virt] kvm: No need to retry for hva_to_pfn_remapped() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Force ASYNC_PF_PER_VCPU to be power of two (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Remove unneeded __ASM_SIZE usage with POP instruction (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add a helper to consolidate root sp allocation (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Drop KVM's hugepage enums in favor of the kernel's enums (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Move max hugepage level to a separate #define (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Tweak PSE hugepage handling to avoid 2M vs 4M conundrum (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Cleanup vcpu->arch.guest_xstate_size (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Tweak handling of failure code for nested VM-Enter failure (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Capture TDP level when updating CPUID (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move nested EPT out of kvm_x86_ops.get_tdp_level() hook (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Add proper cache tracking for CR0 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Add proper cache tracking for CR4 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Unconditionally validate CR3 during nested transitions (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Save L1 TSC offset in 'struct kvm_vcpu_arch' (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip IBPB when temporarily switching between vmcs01 and vmcs02 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip IBPB when switching between vmcs01 and vmcs02 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use accessor to read vmcs.INTR_INFO when handling exception (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: handle wrap around 32-bit address space (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Replace late check_nested_events() hack with more precise fix (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vmx_get_rflags() to query RFLAGS in vmx_interrupt_blocked() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vmx_interrupt_blocked() directly from vmx_handle_exit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: WARN on injected+pending exception even in nested case (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Preserve IRQ/NMI/SMI priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Report interrupts as allowed when in L2 and exit-on-interrupt is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Prioritize SMI over nested IRQ/NMI (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Preserve IRQ/NMI priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Split out architectural interrupt/NMI/SMI blocking checks (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Split out architectural interrupt/NMI blocking checks (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Move SMI vmexit handling to svm_check_nested_events() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Report NMIs as allowed when in L2 and Exit-on-NMI is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Report NMIs as allowed when in L2 and Exit-on-NMI is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: replace is_smm checks with kvm_x86_ops.smi_allowed (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Make return for {interrupt_nmi, smi}_allowed() a bool instead of int (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Set KVM_REQ_EVENT if run is canceled with req_immediate_exit set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Open a window for pending nested VMX preemption timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Preserve exception priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Implement check_nested_events for NMI (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: immediately inject INTR vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: leave halted state on vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: introduce nested_run_pending (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix pkru save/restore when guest CR4.PKE=0, move it to x86.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Disable AVIC before setting V_IRQ (Vitaly Kuznetsov) [1841490] - [virt] kvm: Introduce kvm_make_all_cpus_request_except() (Vitaly Kuznetsov) [1841490] - [tools] kvm: vmx: pass correct DR6 for GD userspace exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86, svm: isolate vcpu->arch.dr6 from vmcb->save.dr6 (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: keep DR6 synchronized with vcpu->arch.dr6 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: trap #DB and #BP to userspace if guest debugging is on (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add KVM_SET_GUEST_DEBUG test (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix single-step with KVM_SET_GUEST_DEBUG (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Set RTM for DB_VECTOR too for KVM_EXIT_DEBUG (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: fix DR6 delivery for various cases of #DB injection (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Declare KVM_CAP_SET_GUEST_DEBUG properly (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Fix build for evmcs.h (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Use KVM CPU capabilities to determine CR4 reserved bits (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB path (Vitaly Kuznetsov) [1841490] - [x86] kvm: ioapic: Restrict lazy EOI update to edge-triggered interrupts (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fixes posted interrupt check for IRQs delivery modes (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: fill in kvm_run->debug.arch.dr[67] (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Replace a BUG_ON(1) with BUG() to squash clang warning (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: do not allow VMRUN inside SMM (Vitaly Kuznetsov) [1841490] - [virt] kvm: add capability for halt polling (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Store vmcs.EXIT_QUALIFICATION as an unsigned long, not u32 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop a redundant call to vmx_get_intr_info() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: move nested-related kvm_x86_ops to a separate struct (Vitaly Kuznetsov) [1841490] - [x86] kvm: evmcs: check if nesting is enabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: check_nested_events is never NULL (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm/set_memory_region_test: do not check RIP if the guest shuts down (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: avoid infinite loop on NPF from bad address (Vitaly Kuznetsov) [1841490] - [x86] kvm: Remove redundant argument to kvm_arch_vcpu_ioctl_run (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Check for CR0.CD and CR0.NW on VMRUN of nested guests (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Improve latency for single target IPI fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Optimize handling of VM-Entry failures in vmx_vcpu_run() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Remove non-functional "support" for CR3 target values (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Avoid an extra memslot lookup in try_async_pf() for L2 (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Set @writable to false for non-visible accesses by L2 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Cache vmcs.EXIT_INTR_INFO using arch avail_reg flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Cache vmcs.EXIT_QUALIFICATION using arch avail_reg flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop manual clearing of segment cache on nested VMCS switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Reset register cache (available and dirty masks) on VMCS switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invoke ept_save_pdptrs() if and only if PAE paging is enabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Rename exit_reason to vm_exit_reason for nested VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Cast exit_reason to u16 to check for nested EXTERNAL_INTERRUPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Pull exit_reason from vcpu_vmx in nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop a superfluous WARN on reflecting EXTERNAL_INTERRUPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Split VM-Exit reflection logic into L0 vs. L1 wants (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: match comment with return type for nested_vmx_exit_reflected (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move nested VM-Exit tracepoint into nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move VM-Fail check out of nested_vmx_exit_reflected() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Uninline nested_vmx_reflect_vmexit(), i.e. move it to nested.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move reflection check into nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Use do_machine_check to pass MCE to the host (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Clean cr3/pgd handling in vmx_load_mmu_pgd() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Replace "cr3" with "pgd" in "new cr3/pgd" related code (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Free only the affected contexts when emulating INVEPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Don't flush TLB on nested VMX transition (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip MMU sync on nested VMX transition when possible (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add module param to force TLB flush on root reuse (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add separate override for MMU sync during fast CR3 switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Move fast_cr3_switch() side effects to __kvm_mmu_new_cr3() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Don't reload APIC access page if its control is disabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Retrieve APIC access page HPA only when necessary (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Reload APIC access page on nested VM-Exit only if necessary (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Selectively use TLB_FLUSH_CURRENT for nested VM-Enter/VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Use KVM_REQ_TLB_FLUSH_CURRENT for MMU specific flushes (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce KVM_REQ_TLB_FLUSH_CURRENT to flush current ASID (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Add helper to handle TLB flushes on nested VM-Enter/VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Rename ->tlb_flush() to ->tlb_flush_all() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Document the ASID logic in svm_flush_tlb() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Introduce vmx_flush_tlb_current() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move nested_get_vpid02() to vmx/nested.h (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move vmx_flush_tlb() to vmx.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Wire up ->tlb_flush_guest() directly to svm_flush_tlb() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Drop @invalidate_gpa param from kvm_x86_ops' tlb_flush() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Clean up vmx_flush_tlb_gva() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: make Hyper-V PV TLB flush use tlb_flush_guest() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Move "flush guest's TLB" logic to separate kvm_x86_ops hook (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Use vpid_sync_vcpu_addr() to emulate INVVPID with address (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Drop redundant capability checks in low level INVVPID helpers (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Handle INVVPID fallback logic in vpid_sync_vcpu_addr() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move vpid_sync_vcpu_addr() down a few lines (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vpid_sync_context() directly when possible (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Skip global INVVPID fallback if vpid==0 in vpid_sync_context() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Sync SPTEs when injecting page/EPT fault into L1 (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: cleanup kvm_inject_emulated_page_fault (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: introduce kvm_mmu_invalidate_gva (Vitaly Kuznetsov) [1841490] - [x86] kvm: Disable objtool frame pointer checking for vmenter.S (Vitaly Kuznetsov) [1841490] - [x86] kvm: Remove CREATE_IRQCHIP/SET_PIT2 race (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Export kvm_propagate_fault() (as kvm_inject_emulated_page_fault) (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invalidate all roots when emulating INVVPID without EPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invalidate all EPTP contexts when emulating INVEPT for L1 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Validate the EPTP when emulating INVEPT(EXTENT_CONTEXT) (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Flush all EPTP/VPID contexts on remote TLB flush (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: Add testcase for creating max number of memslots (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Make set_memory_region_test common to all architectures (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add "zero" testcase to set_memory_region_test (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: Add vm_get_fd() in kvm_util (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add "delete" testcase to set_memory_region_test (Vitaly Kuznetsov) [1841490] - [tools] kvm: sefltests: Add explicit synchronization to move mem region test (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add GUEST_ASSERT variants to pass values to host (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add util to delete memory region (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Use kernel's list instead of homebrewed replacement (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Take vcpu pointer instead of id in vm_vcpu_rm() (Vitaly Kuznetsov) [1841490] - [x86] kvm: pass through CPUID(0x80000006) (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Return updated timer current count register from KVM_GET_LAPIC (Vitaly Kuznetsov) [1841490] - [virt] kvm: remove redundant assignment to variable r (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Fix __svm_vcpu_run declaration (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Do not setup frame pointer in __svm_vcpu_run (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Do not mark svm_vcpu_run with STACK_FRAME_NON_STANDARD (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: reflect MTF VM-exits if injected by L1 (Vitaly Kuznetsov) [1841490] - [kernel] kvm: Check validity of resolved slot when searching memslots (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Enable machine check support for 32bit targets (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: move more vmentry code to assembly (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: fix compilation with modular PSP and non-modular KVM (Vitaly Kuznetsov) [1841490] - [x86] Increase KVM_MAX_VCPUS to 1024, KVM_MAX_VCPU_ID to 2048 (Eduardo Habkost) [1810811] - [scsi] scsi: core: avoid host-wide host_busy counter for scsi_mq (Ewan Milne) [1761928] - [gpio] gpio: xgene-sb: set valid IRQ type in to_irq() (Brian Masney) [1802402] - [block] rbd: compression_hint option (Ilya Dryomov) [1835925] - [include] libceph: support for alloc hint flags (Ilya Dryomov) [1835925] - [net] libceph: read_from_replica option (Ilya Dryomov) [1835925] - [net] libceph: support for balanced and localized reads (Ilya Dryomov) [1835925] - [net] libceph: crush_location infrastructure (Ilya Dryomov) [1835925] - [net] libceph: decode CRUSH device/bucket types and names (Ilya Dryomov) [1835925] - [net] libceph: add non-asserting rbtree insertion helper (Ilya Dryomov) [1835925] - [pci] PCI: pciehp: Fix MSI interrupt race (Myron Stowe) [1779610] - [security] ima: Remove __init annotation from ima_pcrread() (Bruno Meneguele) [1843774] - [security] ima: Call ima_calc_boot_aggregate() in ima_eventdigest_init() (Bruno Meneguele) [1843774] - [security] ima: Directly assign the ima_default_policy pointer to ima_rules (Bruno Meneguele) [1843774] - [documentation] powerpc/fadump: sysfs for fadump memory reservation (Diego Domingos) [1804202] - [documentation] Documentation/ABI: Mark /sys/kernel/fadump_* sysfs files deprecated (Diego Domingos) [1804202] - [documentation] powerpc/powernv: Move core and fadump_release_opalcore under new kobject (Diego Domingos) [1804202] - [powerpc] powerpc/fadump: Reorganize /sys/kernel/fadump_* sysfs files (Diego Domingos) [1804202] - [fs] sysfs: wrap __compat_only_sysfs_link_entry_to_kobj function to change the symlink name (Diego Domingos) [1804202] - [documentation] Documentation/ABI: Add ABI documentation for /sys/kernel/fadump_* (Diego Domingos) [1804202] - [hwtracing] intel_th: pci: Add Tiger Lake CPU support (Jiri Olsa) [1483079] - [netdrv] e1000e: fix S0ix flows for cable connected case (Ken Cox) [1781385] - [netdrv] e1000e: reject unsupported coalescing params (Ken Cox) [1781385] - [netdrv] e1000e: Add support for Tiger Lake device (Ken Cox) [1781385] - [netdrv] e1000e: Add support for Alder Lake (Ken Cox) [1781385] - [netdrv] net: intel: e1000e: fix possible sleep-in-atomic-context bugs in e1000e_get_hw_semaphore() (Ken Cox) [1781385] - [netdrv] e1000e: fix missing cpu_to_le64 on buffer_addr (Ken Cox) [1781385] - [netdrv] e1000(e): use new helper tcp_v6_gso_csum_prep (Ken Cox) [1781385] - [netdrv] e1000e: Revert "e1000e: Make watchdog use delayed work" (Ken Cox) [1781385] - [netdrv] e1000e: Use netdev_info instead of pr_info for link messages (Ken Cox) [1781385] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Ken Cox) [1781385] - [netdrv] e1000e: Fix compiler warning when CONFIG_PM_SLEEP is not set (Ken Cox) [1781385] - [netdrv] net: ixgbevf: reject unsupported coalescing params (Ken Cox) [1781379] - [netdrv] ixgbevf: Remove limit of 10 entries for unicast filter list (Ken Cox) [1781379] - [netdrv] net: ixgbe: reject unsupported coalescing params (Ken Cox) [1781378] - [netdrv] ixgbe: Use pci_get_dsn() (Ken Cox) [1781378] - [netdrv] intel: Replace zero-length array with flexible-array member (Ken Cox) [1781378] - [netdrv] ixgbe: Fix calculation of queue with VFs and flow director on interface flap (Ken Cox) [1781378] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Ken Cox) [1781378] - [netdrv] ixgbe: protect TX timestamping from API misuse (Ken Cox) [1781378] - [netdrv] ixgbe: Make use of cpumask_local_spread to improve RSS locality (Ken Cox) [1781378] - [netdrv] ixgbe: Remove duplicate clear_bit() call (Ken Cox) [1781378] - [netdrv] ixgbe: Add UDP segmentation offload support (Ken Cox) [1781378] - [x86] x86/resctrl: Fix invalid attempt at removing the default resource group (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Clean up unused function parameter in mkdir path (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix a deadlock due to inaccurate reference (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix use-after-free due to inaccurate refcount of rdtgroup (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix use-after-free when deleting resource groups (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Add task resctrl information display (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Check monitoring static key in the MBM overflow handler (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Do not reconfigure exiting tasks (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix potential memory leak (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix an imbalance in domain_remove_cpu() (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix potential lockdep warning (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Prevent NULL pointer dereference when reading mondata (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Cleanup cbm_ensure_valid() (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Prevent possible overrun during bitmap operations (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Don't stop walking closids when a locksetup group is found (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Use _ASM_BX to avoid ifdeffery (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Remove unused variable (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Remove duplicate MSR_MISC_FEATURE_CONTROL definition (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Avoid confusion over the new X86_RESCTRL config (Alexander Beregalov) [1830948] - [x86] x86/cache: Rename config option to CONFIG_X86_RESCTRL (Alexander Beregalov) [1830948] - [tools] perf flamegraph: Use /bin/bash for report and record scripts (Michael Petlan) [1281843] - [tools] perf script: Add flamegraph.py script (Michael Petlan) [1281843] - [tools] perf script: Avoid NULL dereference on symbol (Michael Petlan) [1841130] - [tools] tools/build: tweak unused value workaround (Michael Petlan) [1841130] - [tools] perf stat: Fix no metric header if --per-socket and --metric-only set (Michael Petlan) [1841130] - [tools] perf python: Check if clang supports -fno-semantic-interposition (Michael Petlan) [1841130] - [tools] perf tools: Support Python 3.8+ in Makefile (Michael Petlan) [1841130] - [tools] perf script: Fix invalid read of directory entry after closedir() (Michael Petlan) [1841130] - [tools] perf script report: Fix SEGFAULT when using DWARF mode (Michael Petlan) [1841130] - [tools] perf script: add -S/--symbols documentation (Michael Petlan) [1841130] - [tools] perf pmu-events x86: Use CPU_CLK_UNHALTED.THREAD in Kernel_Utilization metric (Michael Petlan) [1841130] - [tools] perf events parser: Add missing Intel CPU events to parser (Michael Petlan) [1841130] - [tools] perf script: Allow --symbol to accept hexadecimal addresses (Michael Petlan) [1841130] - [tools] perf top: Support hotkey to change sort order (Michael Petlan) [1841130] - [tools] perf top: Support --group-sort-idx to change the sort order (Michael Petlan) [1841130] - [tools] perf symbols: Fix arm64 gap between kernel start and module end (Michael Petlan) [1841130] - [tools] perf build-test: Honour JOBS to override detection of number of cores (Michael Petlan) [1841130] - [tools] perf script: Add --show-cgroup-events option (Michael Petlan) [1841130] - [tools] perf top: Add --all-cgroups option (Michael Petlan) [1841130] - [tools] perf record: Add --all-cgroups option (Michael Petlan) [1841130] - [tools] perf record: Support synthesizing cgroup events (Michael Petlan) [1841130] - [tools] perf report: Add 'cgroup' sort key (Michael Petlan) [1841130] - [tools] perf cgroup: Maintain cgroup hierarchy (Michael Petlan) [1841130] - [tools] perf tools: Basic support for CGROUP event (Michael Petlan) [1841130] - [tools] perf tools: Add file-handle feature test (Michael Petlan) [1841130] - [tools] perf python: Include rwsem.c in the pythong biding (Michael Petlan) [1841130] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1841130] - [tools] perf script: Introduce --deltatime option (Michael Petlan) [1841130] - [tools] perf: Normalize gcc parameter when generating arch errno table (Michael Petlan) [1841130] - [tools] perf parse-events: Add defensive NULL check (Michael Petlan) [1841130] - [tools] perf callchain: Update docs regarding kernel/user space unwinding (Michael Petlan) [1841130] - [tools] perf cpumap: Fix snprintf overflow check (Michael Petlan) [1841130] - [tools] perf test: Test pmu-events aliases (Michael Petlan) [1841130] - [tools] perf pmu: Make pmu_uncore_alias_match() public (Michael Petlan) [1841130] - [tools] perf pmu: Add is_pmu_core() (Michael Petlan) [1841130] - [tools] perf test: Add pmu-events test (Michael Petlan) [1841130] - [tools] perf pmu: Refactor pmu_add_cpu_aliases() (Michael Petlan) [1841130] - [tools] perf jevents: Support test events folder (Michael Petlan) [1841130] - [tools] perf jevents: Add some test events (Michael Petlan) [1841130] - [tools] perf tools: Unify a bit the build directory output (Michael Petlan) [1841130] - [tools] perf metricgroup: Fix printing event names of metric group with multiple events incase of overlapping events (Michael Petlan) [1841130] - [tools] perf stat: Align the output for interval aggregation mode (Michael Petlan) [1841130] - [tools] perf report/top TUI: Support hotkeys to let user select any event for sorting (Michael Petlan) [1841130] - [tools] perf report: Support a new key to reload the browser (Michael Petlan) [1841130] - [tools] perf report: Allow specifying event to be used as sort key in --group output (Michael Petlan) [1841130] - [tools] perf report/top TUI: Support hotkey 'a' for annotation of unresolved addresses (Michael Petlan) [1841130] - [tools] perf report: Support interactive annotation of code without symbols (Michael Petlan) [1841130] - [tools] perf report: Print al_addr when symbol is not found (Michael Petlan) [1841130] - [tools] perf symbols: Consolidate symbol fixup issue (Michael Petlan) [1841130] - [tools] perf parse-events: Fix 3 use after frees found with clang ASAN (Michael Petlan) [1841130] - [tools] perf/tests: Add CET instructions to the new instructions test (Michael Petlan) [1841130] - [tools] perf expr: Fix copy/paste mistake (Michael Petlan) [1841130] - [tools] perf report: Fix no branch type statistics report issue (Michael Petlan) [1841130] - [tools] perf tools: Give synthetic mmap events an inode generation (Michael Petlan) [1841130] - [tools] perf test: Print if shell directory isn't present (Michael Petlan) [1841130] - [tools] perf record: Fix binding of AIO user space buffers to nodes (Michael Petlan) [1841130] - [tools] perf intel-pt: Update intel-pt.txt file with new location of the documentation (Michael Petlan) [1841130] - [tools] perf intel-pt: Add Intel PT man page references (Michael Petlan) [1841130] - [tools] perf intel-pt: Rename intel-pt.txt and put it in man page format (Michael Petlan) [1841130] - [tools] perf doc: Set man page date to last git commit (Michael Petlan) [1841130] - [tools] perf cs-etm: Fix unsigned variable comparison to zero (Michael Petlan) [1841130] - [tools] perf cs-etm: Optimize copying last branches (Michael Petlan) [1841130] - [tools] perf cs-etm: Correct synthesizing instruction samples (Michael Petlan) [1841130] - [tools] perf cs-etm: Continuously record last branch (Michael Petlan) [1841130] - [tools] perf cs-etm: Swap packets for instruction samples (Michael Petlan) [1841130] - [tools] perf map: Use strstarts() to look for Android libraries (Michael Petlan) [1841130] - [tools] perf vendor events intel: Add NO_NMI_WATCHDOG metric constraint (Michael Petlan) [1841130] - [tools] perf metricgroup: Support metric constraint (Michael Petlan) [1841130] - [tools] perf util: Factor out sysctl__nmi_watchdog_enabled() (Michael Petlan) [1841130] - [tools] perf metricgroup: Factor out metricgroup__add_metric_weak_group() (Michael Petlan) [1841130] - [tools] perf jevents: Support metric constraint (Michael Petlan) [1841130] - [tools] perf block-info: Support color ops to print block percents in color (Michael Petlan) [1841130] - [tools] perf block-info: Allow selecting which columns to report and its order (Michael Petlan) [1841130] - [tools] perf diff: Use __block_info__cmp() to replace block_pair_cmp() (Michael Petlan) [1841130] - [tools] perf expr: Make expr__parse() return -1 on error (Michael Petlan) [1841130] - [tools] perf expr: Straighten expr__parse()/expr__find_other() interface (Michael Petlan) [1841130] - [tools] perf expr: Increase EXPR_MAX_OTHER to support metrics with more than 15 variables (Michael Petlan) [1841130] - [tools] perf expr: Move expr lexer to flex (Michael Petlan) [1841130] - [tools] perf expr: Add expr.c object (Michael Petlan) [1841130] - [tools] perf header: Add check for unexpected use of reserved membrs in event attr (Michael Petlan) [1841130] - [tools] perf evsel: Support PERF_SAMPLE_BRANCH_HW_INDEX (Michael Petlan) [1841130] - [tools] perf tools: Add hw_idx in struct branch_stack (Michael Petlan) [1841130] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1841130] - [tools] tools lib traceevent: Remove extra '\n' in print_event_time() (Michael Petlan) [1841130] - [tools] perf annotate: Get rid of annotation->nr_jumps (Michael Petlan) [1841130] - [tools] perf llvm: Add debug hint message about missing kernel-devel package (Michael Petlan) [1841130] - [tools] perf stat: Show percore counts in per CPU output (Michael Petlan) [1841130] - [tools] tools lib api fs: Move cgroupsfs_find_mountpoint() (Michael Petlan) [1841130] - [kernel] perf/core: fix parent pid/tid in task exit events (Michael Petlan) [1841130] - [x86] perf/x86/cstate: Add Jasper Lake CPU support (Michael Petlan) [1841130] - [kernel] perf/core: Disable page faults when getting phys address (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Add Ice Lake server uncore support (Michael Petlan) [1841130] - [kernel] perf/cgroup: Correct indirection in perf_less_group_idx() (Michael Petlan) [1841130] - [kernel] perf/core: Fix event cgroup tracking (Michael Petlan) [1841130] - [init] perf/core: Add PERF_SAMPLE_CGROUP feature (Michael Petlan) [1841130] - [kernel] perf/core: Add PERF_RECORD_CGROUP event (Michael Petlan) [1841130] - [x86] x86 user stack frame reads: switch to explicit __get_user() (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Factor out __snr_uncore_mmio_init_box (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Add box_offsets for free-running counters (Michael Petlan) [1841130] - [kernel] perf/core: Fix reversed NULL check in perf_event_groups_less() (Michael Petlan) [1841130] - [kernel] perf/core: Fix endless multiplex timer (Michael Petlan) [1841130] - [kernel] perf/cgroup: Order events in RB tree by cgroup id (Michael Petlan) [1841130] - [kernel] perf/cgroup: Grow per perf_cpu_context heap storage (Michael Petlan) [1841130] - [kernel] perf/core: Add per perf_cpu_context min_heap storage (Michael Petlan) [1841130] - [kernel] perf/core: Use min_heap in visit_groups_merge() (Michael Petlan) [1841130] - [lib] lib: Introduce generic min-heap (Michael Petlan) [1841130] - [kernel] perf/cgroup: Reorder perf_cgroup_connect() (Michael Petlan) [1841130] - [kernel] perf/core: Remove 'struct sched_in_data' (Michael Petlan) [1841130] - [kernel] perf/core: Unify {pinned, flexible}_sched_in() (Michael Petlan) [1841130] - [x86] perf/x86: Add Intel Tiger Lake uncore support (Michael Petlan) [1841130] - [x86] perf/x86/intel: Output LBR TOS information correctly (Michael Petlan) [1841130] - [powerpc] perf/core: Add new branch sample type for HW index of raw branch records (Michael Petlan) [1841130] - [x86] perf/x86/intel: Avoid unnecessary PEBS_ENABLE MSR access in PMI (Michael Petlan) [1841130] - [x86] x86/cpu: Add Jasper Lake to Intel family (Michael Petlan) [1841130] - [fs] pstore/ram: Run without kernel crash dump region (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore/ram: Avoid NULL deref in ftrace merging failure path (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore: Convert buf_lock to semaphore (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore/ram: Correctly calculate usable PRZ bytes (Desnes Augusto Nunes do Rosario) [1824906] - [drm] memremap: add an owner field to struct dev_pagemap (Don Dutile) [1816441] - [mm] mm: devmap: refactor 1-based refcounting for ZONE_DEVICE pages (Don Dutile) [1816441] - [mm] mm/swap: fix release_pages() when releasing devmap pages (Don Dutile) [1816441] - [mm] mm: revert remove MEMORY_DEVICE_PUBLIC support in swap.c (Don Dutile) [1816441] - [nvdimm] mm: Cleanup __put_devmap_managed_page() vs ->page_free() (Don Dutile) [1816441] - [documentation] hv_netvsc: Update document for XDP support (Mohammed Gamal) [1815497] - [netdrv] hv_netvsc: Fix XDP refcnt for synthetic and VF NICs (Mohammed Gamal) [1815497] - [netdrv] hv_netvsc: Add XDP support (Mohammed Gamal) [1815497] - [powerpc] kvm: ppc: book3s hv: Remove user-triggerable WARN_ON (Laurent Vivier) [1784050] - [powerpc] kvm: ppc: book3s hv: Close race with page faults around memslot flushes (Laurent Vivier) [1784050] - [powerpc] pseries/svm: Allow IOMMU to work in SVM (Michael Roth) [1730194] - [powerpc] pseries/iommu: Separate FW_FEATURE_MULTITCE to put/stuff features (Michael Roth) [1730194] - [powerpc] pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW (Michael Roth) [1730194] - [powerpc] revert "powerpc/pseries/iommu: Don't use dma_iommu_ops on secure guests" (Michael Roth) [1730194] - [powerpc] ultravisor: Add PPC_UV config option (Michael Roth) [1730194] - [mm] ksm: Export ksm_madvise() (Michael Roth) [1730194] - [powerpc] configs: Enable secure guest support in pseries and ppc64 defconfigs (Michael Roth) [1730194] - [powerpc] prom_init: Undo relocation before entering secure mode (Michael Roth) [1730194] - [powerpc] pseries/svm: Force SWIOTLB for secure guests (Michael Roth) [1730194] - [powerpc] pseries/iommu: Don't use dma_iommu_ops on secure guests (Michael Roth) [1730194] - [powerpc] pseries/svm: Disable doorbells in SVM guests (Michael Roth) [1730194] - [powerpc] pseries/svm: Export guest SVM status to user space via sysfs (Michael Roth) [1730194] - [powerpc] pseries/svm: Use shared memory for Debug Trace Log (DTL) (Michael Roth) [1730194] - [powerpc] prom_init: Pass the "os-term" message to hypervisor (Michael Roth) [1730194] - [powerpc] Add support for adding an ESM blob to the zImage wrapper (Michael Roth) [1730194] - [powerpc] pseries: Introduce option to build secure virtual machines (Michael Roth) [1730194] - [s390] mm: Remove sev_active() function (Michael Roth) [1730194] - [kernel] fs/core/vmcore: Move sev_active() reference to x86 arch code (Michael Roth) [1730194] - [kernel] x86, s390/mm: Move sme_active() and sme_me_mask to x86-specific header (Michael Roth) [1730194] - [kernel] dma-mapping: Remove dma_check_mask() (Michael Roth) [1730194] - [kernel] swiotlb: Remove call to sme_active() (Michael Roth) [1730194] - [x86] s390: Move ARCH_HAS_MEM_ENCRYPT definition to arch/Kconfig (Michael Roth) [1730194] - [powerpc] xmon: don't access ASDR in VMs (Michael Roth) [1730194] - [powerpc] xmon: Fix compile error in print_insn* functions (Michael Roth) [1730194] - [mm] memremap: provide a not device managed memremap_pages (Michael Roth) [1730194] - [mm] memremap: don't use a separate devm action for devmap_managed_enable_get (Michael Roth) [1730194] - [mm] memremap: remove the dev field in struct dev_pagemap (Michael Roth) [1730194] - [kernel] resource: add a not device managed request_free_mem_region variant (Michael Roth) [1730194] - [mm] turn migrate_vma upside down (Michael Roth) [1730194] - [kernel] mm: simplify ZONE_DEVICE page private data (Michael Roth) [1730194] - [kernel] mm: remove hmm_devmem_add (Michael Roth) [1730194] - [mm] remove hmm_vma_alloc_locked_page (Michael Roth) [1730194] - [dax] device-dax: use the dev_pagemap internal refcount (Michael Roth) [1730194] - [mm] export alloc_pages_vma (Michael Roth) [1730194] - [netdrv] net/mlx5: Kconfig: Fix spelling typo (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Introduce kconfig var for TC support (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Move TC-specific code from en_main.c to en_tc.c (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Extract neigh-specific code from en_rep.c to rep/neigh.c (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Extract TC-specific code from en_rep.c to rep/tc.c (Alaa Hleihel) [1843359] - [infiniband] net/mlx5: Refactor imm_inval_pkey field in cqe struct (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Take DCBNL-related definitions into dedicated files (Alaa Hleihel) [1843359] - [netdrv] net/mlx5: E-Switch: Move eswitch chains to a new directory (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: remove duplicated check chain_index in mlx5e_rep_setup_ft_cb (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: add mlx5e_rep_indr_setup_ft_cb support (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: refactor indr setup block (Alaa Hleihel) [1843359] - [infiniband] IB/mlx5: Fix DEVX support for MLX5_CMD_OP_INIT2INIT_QP command (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Remove warning "devices are not on same switch HW" (Alaa Hleihel) [1842258] - [infiniband] RDMA/mlx5: Add init2init as a modify command (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: replace EINVAL in mlx5e_flower_parse_meta() (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix MLX5_TC_CT dependencies (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Properly set default values when disabling adaptive moderation (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix stats update for matchall classifier (Alaa Hleihel) [1842258] - [netdrv] net: sched: expose HW stats types per action used by drivers (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: en_tc: Fix cast to restricted __be32 warning (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: en_tc: Fix incorrect type in initializer warnings (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Allow partial data mask for tunnel options (Alaa Hleihel) [1842258] - [include] net/mlx5: IPSec: Fix incorrect type for spi (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Accel: fpga tls fix cast to __be64 and incorrect argument types (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: cmd: Fix memset with byte count warning (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix incorrect type in return expression (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix cast to restricted __be32 (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix incorrect type in argument (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: IPoIB, Drop multicast packets that this interface sent (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: IPoIB, Enable loopback packets for IPoIB interfaces (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix error flow in case of function_setup failure (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: CT: Correctly get flow rule (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5e: Update netdev txq on completions during closure (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Annotate mutex destroy for root ns (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Don't maintain a case of del_sw_func being null (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Fix cleaning unmanaged flow tables (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Fix memory leak in mlx5_events_init (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix inner tirs handling (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: kTLS, Destroy key object after destroying the TIS (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix allowed tc redirect merged eswitch offload cases (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Avoid processing commands before cmdif is ready (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix a race when moving command interface to events mode (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Add command entry handling completion (Alaa Hleihel) [1842258] - [infiniband] RDMA/mlx5: Fix NULL pointer dereference in destroy_prefetch_work (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix crash upon suspend/resume (Alaa Hleihel) [1842258 1841973] - [netdrv] net/mlx5e: Fix devlink port netdev unregistration sequence (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Fix devlink port register sequence (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Use devlink virtual flavour for VF devlink port (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Add support for devlink-port in non-representors mode (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Rename representor get devlink port function (Alaa Hleihel) [1842258 1790226] - [fs] nfsd4: add filename to states output ("J. Bruce Fields") [1475182] - [fs] nfsd4: stid display should preserve on-the-wire byte order ("J. Bruce Fields") [1475182] - [fs] nfsd4: common stateid-printing code ("J. Bruce Fields") [1475182] - [fs] nfsd: remove read permission bit for ctl sysctl ("J. Bruce Fields") [1475182] - [fs] nfsd: "\s" should be "s" ("J. Bruce Fields") [1475182] - [fs] nfsd: initialize i_private before d_add ("J. Bruce Fields") [1475182] - [fs] nfsd: use i_wrlock instead of rcu for nfsdfs i_private ("J. Bruce Fields") [1475182] - [fs] nfsd: fix dentry leak upon mkdir failure ("J. Bruce Fields") [1475182] - [fs] nfsd: Make __get_nfsdfs_client() static ("J. Bruce Fields") [1475182] - [fs] nfsd: Make two functions static ("J. Bruce Fields") [1475182] - [fs] nfsd: decode implementation id ("J. Bruce Fields") [1475182] - [fs] nfsd: use 64-bit seconds fields in nfsd v4 code ("J. Bruce Fields") [1475182] - [fs] nfsd: create xdr_netobj_dup helper ("J. Bruce Fields") [1475182] - [fs] nfsd: allow forced expiration of NFSv4 clients ("J. Bruce Fields") [1475182] - [fs] nfsd: create get_nfsdfs_clp helper ("J. Bruce Fields") [1475182] - [fs] nfsd4: show layout stateids ("J. Bruce Fields") [1475182] - [fs] nfsd: show lock and deleg stateids ("J. Bruce Fields") [1475182] - [fs] nfsd4: add file to display list of client's opens ("J. Bruce Fields") [1475182] - [fs] nfsd: add more information to client info file ("J. Bruce Fields") [1475182] - [include] nfsd: escape high characters in binary data ("J. Bruce Fields") [1475182] - [fs] nfsd: copy client's address including port number to cl_addr ("J. Bruce Fields") [1475182] - [fs] nfsd4: add a client info file ("J. Bruce Fields") [1475182] - [fs] nfsd: make client/ directory names small ints ("J. Bruce Fields") [1475182] - [fs] nfsd: add nfsd/clients directory ("J. Bruce Fields") [1475182] - [fs] nfsd4: use reference count to free client ("J. Bruce Fields") [1475182] - [fs] nfsd: rename cl_refcount ("J. Bruce Fields") [1475182] - [fs] nfsd: persist nfsd filesystem across mounts ("J. Bruce Fields") [1475182]- [wireless] iwlwifi: pcie: handle QuZ configs with killer NICs as well (Jarod Wilson) [1844129 1842382] - [net] mac80211: add ieee80211_is_any_nullfunc() (Jarod Wilson) [1844129] - [net] mac80211: sta_info: Add lockdep condition for RCU list usage (Jarod Wilson) [1844129] - [net] mac80211: fix channel switch trigger from unknown mesh peer (Jarod Wilson) [1844129] - [wireless] rtw88: avoid unused function warnings (Jarod Wilson) [1844129] - [wireless] brcmfmac: add stub for monitor interface xmit (Jarod Wilson) [1844129] - [wireless] iwlwifi: actually check allocated conf_tlv pointer (Jarod Wilson) [1844129] - [wireless] iwlwifi: fix WGDS check when WRDS is disabled (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: fix inactive TID removal return value usage (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: Do not declare support for ACK Enabled Aggregation (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: limit maximum queue appropriately (Jarod Wilson) [1844129] - [wireless] iwlwifi: pcie: indicate correct RB size to device (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: beacon statistics shouldn't go backwards (Jarod Wilson) [1844129] - [wireless] iwlwifi: pcie: actually release queue memory in TVQM (Jarod Wilson) [1844129] - [wireless] mac80211: populate debugfs only after cfg80211 init (Jarod Wilson) [1844129] - [net] mac80211: fix race in ieee80211_register_hw() (Jarod Wilson) [1844129] - [net] nl80211: fix NL80211_ATTR_FTM_RESPONDER policy (Jarod Wilson) [1844129] - [powerpc] powerpc/fadump: Account for memory_limit while reserving memory (Steve Best) [1840646] - [mm] mm: make deferred init's max threads arch-specific (David Hildenbrand) [1818764] - [mm] mm: parallelize deferred_init_memmap() (David Hildenbrand) [1818764] - [mm] mm: don't track number of pages during deferred initialization (David Hildenbrand) [1818764] - [kernel] padata: add basic support for multithreaded jobs (David Hildenbrand) [1818764] - [kernel] padata: allocate work structures for parallel jobs from a pool (David Hildenbrand) [1818764] - [init] padata: initialize earlier (David Hildenbrand) [1818764] - [kernel] padata: remove exit routine (David Hildenbrand) [1818764] - [documentation] padata: update documentation (David Hildenbrand) [1818764] - [mm] mm: call cond_resched() from deferred_init_memmap() (David Hildenbrand) [1818764] - [mm] mm: initialize deferred pages with interrupts enabled (David Hildenbrand) [1818764] - [mm] mm/pagealloc.c: call touch_nmi_watchdog() on max order boundaries in deferred init (David Hildenbrand) [1818764] - [mm] mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous() (David Hildenbrand) [1818764] - [mm] mm/page_alloc.c: fix regression with deferred struct page init (David Hildenbrand) [1818764] - [mm] mm: initialize MAX_ORDER_NR_PAGES at a time instead of doing larger sections (David Hildenbrand) [1818764] - [mm] mm: implement new zone specific memblock iterator (David Hildenbrand) [1818764] - [mm] mm: drop meminit_pfn_in_nid as it is redundant (David Hildenbrand) [1818764] - [kernel] audit: add subj creds to NETFILTER_CFG record to (Richard Guy Briggs) [1478533] - [kernel] audit: make symbol 'audit_nfcfgs' static (Richard Guy Briggs) [1478533] - [net] netfilter: add audit table unregister actions (Richard Guy Briggs) [1478533] - [net] audit: tidy and extend netfilter_cfg x_tables (Richard Guy Briggs) [1478533] - [x86] x86/efi: Allocate e820 buffer before calling efi_exit_boot_service (Lenny Szubowicz) [1824005] - [mm] hugetlb_cgroup: fix possible illegal access to memory (Joel Savitz) [1835398] - [kvm] KVM: s390: Remove false WARN_ON_ONCE for the PQAP instruction (Claudio Imbrenda) [1836184] - [sound] ASoC: Intel: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [thermal] thermal: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [powercap] powercap/intel_rapl: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [platform] platform/x86: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [pci] PCI: intel-mid: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [mmc] mmc: sdhci-acpi: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [idle] intel_idle: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [extcon] extcon: axp288: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [edac] EDAC: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [acpi] ACPI: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/platform: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/kernel: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/perf/events: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/cpu: Add consistent CPU match macros (Prarit Bhargava) [1841649] - [fs] fix autofs regression caused by follow_managed() changes (Miklos Szeredi) [1784857] - [fs] fs/namei.c: fix missing barriers when checking positivity (Miklos Szeredi) [1784857] - [fs] fix dget_parent() fastpath race (Miklos Szeredi) [1784857] - [fs] new helper: lookup_positive_unlocked() (Miklos Szeredi) [1784857] - [fs] fs/namei.c: pull positivity check into follow_managed() (Miklos Szeredi) [1784857] - [mm] x86/kasan: Fix boot with 5-level paging and KASAN (Baoquan He) [1838418] - [netdrv] bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return error when allocating zero size context memory (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve AER slot reset (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Reduce BNXT_MSIX_VEC_MAX value to supported CQs per PF (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix VF anti-spoof filter setup (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix "fw.mgmt" and "fw.nsci" info via devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add partno to devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Read partno and serialno of the board from VPD (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add fw.mgmt.api version to devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Reset rings if ring reservation fails during open() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Free context memory after disabling PCI in probe error path (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return error if bnxt_alloc_ctx_mem() fails (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: fix memory leaks in bnxt_dcbnl_ieee_getets() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix Priority Bytes and Packets counters in ethtool -S (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Call devlink_port_type_clear() in remove() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return -EAGAIN if fw command returns BUSY (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Modify some bnxt_hwrm_*_free() functions to void (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Remove unnecessary assignment of return code (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Clear DCB settings after firmware reset (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Process the NQ under NAPI continuous polling (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Simplify __bnxt_poll_cqs_done() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Handle all NQ notifications in bnxt_poll_p5() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Use pci_get_dsn() (Jonathan Toppins) [1790621] - [netdrv] bnxt: reject unsupported coalescing params (Jonathan Toppins) [1790621] - [netdrv] net/broadcom: Clean broadcom code from driver versions (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: fix error handling when flashing from file (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: reinitialize IRQs when MTU is modified (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: add newline to netdev_*() format strings (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve device shutdown method (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for devlink info command (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Rename switch_id to dsn (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support to update progress of flash update (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Move devlink_register before registering netdev (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Register devlink irrespective of firmware spec version (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Refactor bnxt_dl_register() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Disable workaround for lost interrupts on 575XX B0 and newer chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Periodically check and remove aged-out ntuple filters (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Do not accept fragments for aRFS flow steering (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Support UDP RSS hashing on 575XX chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve bnxt_probe_phy() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve link up detection (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Call recovery done after reset is successfully done (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Remove unnecessary NULL checks for fw_health (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for flashing the device via devlink (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Allow PHY settings on multi-function or NPAR PFs if allowed by FW (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add async. event logic for PHY configuration changes (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Refactor the initialization of the ethtool link settings (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Skip disabling autoneg before PHY loopback when appropriate (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Assign more RSS context resources to the VFs (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Initialize context memory to the value specified by firmware (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add chip IDs for 57452 and 57454 chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Report health status update after reset is done (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Set MASTER flag during driver registration (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Update firmware interface spec to 1.10.1.12 (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix array overrun in bnxt_fill_l2_rewrite_fields() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for NAT(L3/L4 rewrite) (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for L2 rewrite (Jonathan Toppins) [1790621] - [netdrv] net/mlx5: E-switch, Protect eswitch mode changes (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Extend eswitch enable to handle num_vfs change (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Split eswitch mode check to different helper function (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Simplify mlx5_unload_one() and its callers (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Simplify mlx5_register_device to return void (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Avoid deriving mlx5_core_dev second time (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Annotate esw state_lock mutex destroy (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Annotate termtbl_mutex mutex destroy (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5e: CT: Fix offload with CT action after CT NAT action (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix missing pedit action after ct clear action (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: remove set but not used variable 'unnew' (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Fix insert rules when TC_CT config isn't enabled (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix actions_match_supported() return (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Avoid false warning about rule may be used uninitialized (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Use correct type for chain, prio and level values (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-switch, Fix printing wrong error value (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix rejecting all egress rules not on vlan (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch: Fix using fwd and modify when firmware doesn't support it (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: Add missing inline to stub esw_add_restore_rule (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Enable restore table only if reg_c1 is supported (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, free flow_group_in after creating the restore table (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-switch, Fix mutex init order (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: CT: Change idr to xarray to protect parallel tuple id allocation (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Use rhashtable's ct entries instead of a separate list (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Fix stack usage compiler warning (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Support clear action (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Handle misses after executing CT action (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Offload established flows (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Introduce connection tracking (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Support getting chain mapping (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Add support for offloading rules with no in_port (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Introduce global tables (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: en_rep: Create uplink rep root table after eswitch offloads table (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Enable reg c1 loopback when possible (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: Restore tunnel metadata on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Get reg_c1 value on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Support inner header rewrite with goto action (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Disallow inserting vxlan/vlan egress rules without decap/pop (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Move tc tunnel parsing logic with the rest at tc_tun module (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Allow re-allocating mod header actions (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Restore chain id on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Rx, Split rep rx mpwqe handler from nic (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Mark miss packets with new chain id mapping (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Get reg_c0 value on CQE (Alaa Hleihel) [1790219 1790218 1663246] - [infiniband] net/mlx5: E-Switch, Move source port on reg_c0 to the upper 16 bits (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: Introduce mapping infra for mapping unique ids to data (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Add devlink fdb_large_groups parameter (Alaa Hleihel) [1790203 1663246] - [netdrv] net/mlx5: Change the name of steering mode param id (Alaa Hleihel) [1790203 1663246] - [netdrv] net/mlx5e: Fix an IS_ERR() vs NULL check (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: Verify goto chain offload support (Alaa Hleihel) [1663246] - [include] net/mlx5: HW bit for goto chain offload support (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Remove redundant comment about goto slow path (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Reduce number of arguments in slow path handling (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Use NL_SET_ERR_MSG_MOD() extack for errors (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Allow goto earlier chain if FW supports it (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Eswitch, Use per vport tables for mirroring (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: make the symbol 'ESW_POOLS' static (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Increase number of chains and priorities (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Refactor chains and priorities (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: ft: Check prio and chain sanity for ft offload (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: ft: Use getter function to get ft chain (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: TC: Offload flow table rules (Alaa Hleihel) [1663246]- [net] neigh: fix ARP retransmit timer guard (Hangbin Liu) [1767282] - [net] xfrm: fix a warning in xfrm_policy_insert_list (Xin Long) [1820956] - [net] netfilter: ipset: Fix subcounter update skip (Phil Sutter) [1834881] - [netdrv] macvlan: return correct error value (Matteo Croce) [1806146] - [net] core: properly remove skb from list (Ivan Vecera) [1839657] - [tools] selftests: fix flower parent qdisc (Ivan Vecera) [1824071] - [net] sch_choke: Remove classid from choke_skb_cb. (Ivan Vecera) [1824071] - [net] sched: choke: Remove unused inline function choke_set_classid (Ivan Vecera) [1824071] - [net] schedule: add action gate offloading (Ivan Vecera) [1824071] - [net] qos: introduce a gate control flow action (Ivan Vecera) [1824071] - [net] sched: fallback to qdisc noqueue if default qdisc setup fail (Ivan Vecera) [1824071] - [tools] selftests: forwarding: tc_actions.sh: add matchall mirror test (Ivan Vecera) [1824071] - [net] sched: report ndo_setup_tc failures via extack (Ivan Vecera) [1824071] - [net] sched : Remove unnecessary cast in kfree (Ivan Vecera) [1824071] - [tools] selftests: tc-testing: Add a TDC test for pedit munge ip6 dsfield (Ivan Vecera) [1824071] - [tools] selftests: forwarding: pedit_dsfield: Add pedit munge ip6 dsfield (Ivan Vecera) [1824071] - [net] sched: act_ct: update nf_conn_acct for act_ct SW offload in flowtable (Ivan Vecera) [1824071] - [net] net_sched: gen_estimator: extend packet counter to 64bit (Ivan Vecera) [1824071] - [net] flow_offload: skip hw stats check for FLOW_ACTION_HW_STATS_DONT_CARE (Ivan Vecera) [1824071] - [net] net_sched: sch_skbprio: add message validation to skbprio_change() (Ivan Vecera) [1824071] - [net] net_sched: fix tcm_parent in tc filter dump (Ivan Vecera) [1824071] - [net] sch_sfq: validate silly quantum values (Ivan Vecera) [1824071] - [net] sch_choke: avoid potential panic in choke_reset() (Ivan Vecera) [1824071] - [net] fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks (Ivan Vecera) [1824071] - [net] sched: etf: do not assume all sockets are full blown (Ivan Vecera) [1824071] - [tools] tc-testing: remove duplicate code in tdc.py (Ivan Vecera) [1824071] - [net] sched: Fix setting last executed chain on skb extension (Ivan Vecera) [1824071] - [net] net_sched: fix a missing refcnt in tcindex_init() (Ivan Vecera) [1824071] - [net] net_sched: add a temporary refcnt for struct tcindex_data (Ivan Vecera) [1824071] - [net] sched: expose HW stats types per action used by drivers (Ivan Vecera) [1824071] - [net] introduce nla_put_bitfield32() helper and use it (Ivan Vecera) [1824071] - [tools] selftests: skbedit_priority: Test counters at the skbedit rule (Ivan Vecera) [1824071] - [net] sched: act_pedit: Implement stats_update callback (Ivan Vecera) [1824071] - [net] sched: act_skbedit: Implement stats_update callback (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Add a forwarding test for pedit munge dsfield (Ivan Vecera) [1824071] - [net] flow_offload.h: Fix a comment at flow_action_entry.mangle (Ivan Vecera) [1824071] - [net] Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build (Ivan Vecera) [1824071] - [net] netfilter: nft_fwd_netdev: allow to redirect to ifb via ingress (Ivan Vecera) [1824071] - [net] cbs: Fix software cbs to consider packet sending time (Ivan Vecera) [1824071] - [include] taprio: do not use BIT() in TCA_TAPRIO_ATTR_FLAG_* definitions (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for flags key (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for src and dst port range options (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for mpls options (Ivan Vecera) [1824071] - [include] net: sched: refine extack messages in tcf_change_indev (Ivan Vecera) [1824071] - [net] sched: rename more stats_types (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Add an skbedit priority selftest (Ivan Vecera) [1824071] - [net] tc_skbedit: Make the skbedit priority offloadable (Ivan Vecera) [1824071] - [include] tc_skbedit: Factor a helper out of is_tcf_skbedit_{mark, ptype}() (Ivan Vecera) [1824071] - [include] net: sched: Do not assume RTNL is held in tunnel key action helpers (Ivan Vecera) [1824071] - [net] sched: act_ct: Fix leak of ct zone template on replace (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: enable use of hrtimer slack (Ivan Vecera) [1824071] - [net] net_sched: do not reprogram a timer about to expire (Ivan Vecera) [1824071] - [net] net_sched: add qdisc_watchdog_schedule_range_ns() (Ivan Vecera) [1824071] - [net] rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Ivan Vecera) [1824071] - [net] net_sched: cls_route: remove the right filter from hashtable (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: RED: Add nodrop tests (Ivan Vecera) [1824071] - [net] sched: RED: Introduce an ECN nodrop mode (Ivan Vecera) [1824071] - [net] sched: Allow extending set of supported RED flags (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: Add TDC test for RED (Ivan Vecera) [1824071] - [tools] tc-testing: add ETS scheduler to tdc build configuration (Ivan Vecera) [1824071] - [net] sched: act_ct: Enable hardware offload of flow table entires (Ivan Vecera) [1824071] - [net] sched: act_ct: Support refreshing the flow table entries (Ivan Vecera) [1824071] - [net] sched: act_ct: Support restoring conntrack info on skbs (Ivan Vecera) [1824071] - [net] sched: act_ct: Instantiate flow table entry actions (Ivan Vecera) [1824071] - [net] net_sched: keep alloc_hash updated after hash allocation (Ivan Vecera) [1824071] - [net] net_sched: hold rtnl lock in tcindex_partial_destroy_work() (Ivan Vecera) [1824071] - [include] flow_offload: restrict driver to pass one allowed bit to flow_action_hw_stats_types_check() (Ivan Vecera) [1824071] - [netdrv] flow_offload: introduce "delayed" HW stats type and allow it in mlx5 (Ivan Vecera) [1824071] - [include] flow_offload: turn hw_stats_type into dedicated enum (Ivan Vecera) [1824071] - [include] flow_offload: use flow_action_for_each in flow_action_mixed_hw_stats_types_check() (Ivan Vecera) [1824071] - [net] sched: pie: change tc_pie_xstats->prob (Ivan Vecera) [1824071] - [net] taprio: Fix sending packets without dequeueing them (Ivan Vecera) [1824071] - [net] sched: act_ct: fix lockdep splat in tcf_ct_flow_table_get (Ivan Vecera) [1824071] - [tools] selftests: forwarding: ETS: Use Qdisc counters (Ivan Vecera) [1824071] - [net] sched: Make FIFO Qdisc offloadable (Ivan Vecera) [1824071] - [include] pie: realign comment (Ivan Vecera) [1824071] - [net] pie: remove pie_vars->accu_prob_overflows (Ivan Vecera) [1824071] - [net] pie: remove unnecessary type casting (Ivan Vecera) [1824071] - [net] pie: use term backlog instead of qlen (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with canid extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: list kernel options for basic filter with canid ematch. (Ivan Vecera) [1824071] - [net] sched: act_ct: Use pskb_network_may_pull() (Ivan Vecera) [1824071] - [net] sched: act_ct: Fix ipv6 lookup of offloaded connections (Ivan Vecera) [1824071] - [net] sched: act_ct: Software offload of established flows (Ivan Vecera) [1824071] - [net] sched: act_ct: Offload established connections to flow table (Ivan Vecera) [1824071] - [net] sched: act_ct: Create nf flow table per zone (Ivan Vecera) [1824071] - [net] taprio: add missing attribute validation for txtime delay (Ivan Vecera) [1824071] - [net] fq: add missing attribute validation for orphan mask (Ivan Vecera) [1824071] - [tools] selftests: forwarding: tc_common: Convert to use busywait (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Convert until_counter_is() to take expression (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Add tc_rule_handle_stats_get() (Ivan Vecera) [1824071] - [include] net: flow_offload: Replace zero-length array with flexible-array member (Ivan Vecera) [1824071] - [net] sched: Replace zero-length array with flexible-array member (Ivan Vecera) [1824071] - [net] sched: act: count in the size of action flags bitfield (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with u32 extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with u16 extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter (Ivan Vecera) [1824071] - [net] sched: correct flower port blocking (Ivan Vecera) [1824071] - [net] sched: Support specifying a starting chain via tc skb ext (Ivan Vecera) [1824071] - [net] sched: Change the block's chain list to an rcu list (Ivan Vecera) [1824071] - [net] sched: Pass ingress block to tcf_classify_ingress (Ivan Vecera) [1824071] - [net] sched: Introduce ingress classification function (Ivan Vecera) [1824071] - [net] sched: flower: add missing validation of TCA_FLOWER_FLAGS (Ivan Vecera) [1824071] - [net] sched: matchall: add missing validation of TCA_MATCHALL_FLAGS (Ivan Vecera) [1824071] - [net] taprio: Fix dropping packets when using taprio + ETF offloading (Ivan Vecera) [1824071] - [net] taprio: Use taprio_reset_tc() to reset Traffic Classes configuration (Ivan Vecera) [1824071] - [net] taprio: Add missing policy validation for flags (Ivan Vecera) [1824071] - [net] taprio: Fix still allowing changing the flags during runtime (Ivan Vecera) [1824071] - [net] taprio: Fix enabling offload with wrong number of traffic classes (Ivan Vecera) [1824071] - [net] sched: prevent a use after free (Ivan Vecera) [1824071] - [tools] tc-testing: add missing 'nsPlugin' to basic.json (Ivan Vecera) [1824071] - [net] sch_choke: Use kvcalloc (Ivan Vecera) [1824071] - [tools] selftests: mlxsw: Add a RED selftest (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib.sh: Add start_tcp_traffic (Ivan Vecera) [1824071] - [tools] selftests: mlxsw: Add a TBF selftest (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Allow reading TC rule byte counters (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Add helpers for busywaiting (Ivan Vecera) [1824071] - [tools] selftests: Move two functions from mlxsw's qos_lib to lib (Ivan Vecera) [1824071] - [net] sched: Make TBF Qdisc offloadable (Ivan Vecera) [1824071] - [net] sched: sch_tbf: Don't overwrite backlog before dumping (Ivan Vecera) [1824071] - [net] sched: add Flow Queue PIE packet scheduler (Ivan Vecera) [1824071] - [net] sched: pie: export symbols to be reused by FQ-PIE (Ivan Vecera) [1824071] - [net] sched: pie: fix alignment in struct instances (Ivan Vecera) [1824071] - [net] sched: pie: fix commenting (Ivan Vecera) [1824071] - [include] pie: improve comments and commenting style (Ivan Vecera) [1824071] - [net] pie: rearrange structure members and their initializations (Ivan Vecera) [1824071] - [include] pie: use u8 instead of bool in pie_vars (Ivan Vecera) [1824071] - [include] pie: rearrange macros in order of length (Ivan Vecera) [1824071] - [include] pie: use U64_MAX to denote (2^64 - 1) (Ivan Vecera) [1824071] - [net] sched: pie: move common code to pie.h (Ivan Vecera) [1824071] - [net] sched: use skb_list_walk_safe helper for gso segments (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: Add test coverage for ETS Qdisc (Ivan Vecera) [1824071] - [tools] selftests: forwarding: sch_ets: Add test coverage for ETS Qdisc (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Move start_/stop_traffic from mlxsw to lib.sh (Ivan Vecera) [1824071] - [net] sch_ets: Make the ETS qdisc offloadable (Ivan Vecera) [1824071] - [net] sch_ets: Add a new Qdisc (Ivan Vecera) [1824071] - [include] net: pkt_cls: Clarify a comment (Ivan Vecera) [1824071] - [net] sch_cake: drop unused variable tin_quantum_prio (Ivan Vecera) [1824071] - [net] sched: act_ctinfo: fix memory leak (Ivan Vecera) [1824071] - [net] sched: act_ife: initalize ife->metalist earlier (Ivan Vecera) [1824071] - [net] sch_cake: avoid possible divide by zero in cake_enqueue() (Ivan Vecera) [1824071] - [tools] tc-testing: initial tdc selftests for cls_u32 (Ivan Vecera) [1824071] - [net] treewide: Use sizeof_field() macro (Ivan Vecera) [1824071] - [tools] tc-testing: unbreak full listing of tdc testcases (Ivan Vecera) [1824071] - [net] act_ct: support asymmetric conntrack (Ivan Vecera) [1824071] - [net] sch_cake: Add missing NLA policy entry TCA_CAKE_SPLIT_GSO (Ivan Vecera) [1824071] - [net] remove the unnecessary strict_start_type in some policies (Ivan Vecera) [1824071] - [net] sched: pie: enable timestamp based delay calculation (Ivan Vecera) [1824071] - [net] taprio: don't reject same mqprio settings (Ivan Vecera) [1824071] - [tools] tc-testing: Introduced tdc tests for basic filter (Ivan Vecera) [1824071] - [tools] tc-testing: updated pedit TDC tests (Ivan Vecera) [1824071] - [net] net_sched: add TCA_STATS_PKT64 attribute (Ivan Vecera) [1824071] - [net] net_sched: extend packet counter to 64bit (Ivan Vecera) [1824071] - [include] net_sched: do not export gnet_stats_basic_packed to uapi (Ivan Vecera) [1824071] - [tools] tc-testing: added tests with cookie for mpls TC action (Ivan Vecera) [1824071] - [net] icmp: remove duplicate code (Ivan Vecera) [1824071] - [include] icmp: add helpers to recognize ICMP error packets (Ivan Vecera) [1824071] - [net] taprio: fix panic while hw offload sched list swap (Ivan Vecera) [1824071] - [net] sched: Replace rcu_swap_protected() with rcu_replace_pointer() (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: avoid calling ktime_get_ns() if not needed (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: add dctcp-like marking (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: remove dead code dealing with retransmits (Ivan Vecera) [1824071] - [net] sched: act_ct: fix build failure in RHEL8 (Ivan Vecera) [1824071] - [net] don't return invalid table id error when we fall back to PF_UNSPEC (Sabrina Dubroca) [1814093] - [net] netfilter: update include directives. (Marcelo Leitner) [1837856] - [include] netfilter: fix include guards. (Marcelo Leitner) [1837856] - [include] netfilter: add include guard to xt_connlabel.h (Marcelo Leitner) [1837856] - [net] sk_msg: Don't use RCU_INIT_POINTER on sk_user_data (Sabrina Dubroca) [1819627] - [tools] selftests/bpf: Fix build of sockmap_ktls.c (Sabrina Dubroca) [1819627] - [net] Generate reuseport group ID on group creation (Sabrina Dubroca) [1819627] - [net] bpf: Allow selecting reuseport socket from a SOCKMAP/SOCKHASH (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Let all kernel-land lookup values in SOCKMAP/SOCKHASH (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Return socket cookie on lookup from syscall (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Don't set up upcalls and progs for listening sockets (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Allow inserting listening TCP sockets into sockmap (Sabrina Dubroca) [1819627] - [net] tcp_bpf: Don't let child socket inherit parent protocol ops on copy (Sabrina Dubroca) [1819627] - [net] net, sk_msg: Clear sk_user_data pointer on clone if tagged (Sabrina Dubroca) [1819627] - [net] net, sk_msg: Annotate lockless access to sk_prot on clone (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: bpf_tcp_ingress needs to subtract bytes from sg.size (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: msg_pop_data can incorrecty set an sge length (Sabrina Dubroca) [1819627] - [net] tls: fix const assignment warning (Sabrina Dubroca) [1819627] - [net] tls: Fix sk_psock refcnt leak in bpf_exec_tx_verdict() (Sabrina Dubroca) [1819627] - [net] tls: Fix sk_psock refcnt leak when in tls_data_ready() (Sabrina Dubroca) [1819627] - [tools] selftests/bpf: Test unhashing kTLS socket after removing from map (Sabrina Dubroca) [1819627] - [include] bpf, sk_msg: Don't clear saved sock proto on restore (Sabrina Dubroca) [1819627] - [include] bpf, sk_msg: Let ULP restore sk_proto and write_space callback (Sabrina Dubroca) [1819627] - [net] tls: Annotate access to sk_prot with READ_ONCE/WRITE_ONCE (Sabrina Dubroca) [1819627] - [net] tls: Read sk_prot once when building tls proto ops (Sabrina Dubroca) [1819627] - [net] tls: Constify base proto ops used for building tls proto (Sabrina Dubroca) [1819627] - [net] tls: Fix to avoid gettig invalid tls record (Sabrina Dubroca) [1819627] - [net] tls: avoid spurious decryption error with HW resync (Sabrina Dubroca) [1819627] - [net] tls: add helper for testing if socket is RX offloaded (Sabrina Dubroca) [1819627] - [tools] selftests: net: tls: remove recv_rcvbuf test (Sabrina Dubroca) [1819627] - [net] tls: use sg_next() to walk sg entries (Sabrina Dubroca) [1819627] - [net] tls: remove the dead inplace_crypto code (Sabrina Dubroca) [1819627] - [tools] selftests/tls: add a test for fragmented messages (Sabrina Dubroca) [1819627] - [net] tls: Fix unused function warning (Sabrina Dubroca) [1819627] - [net] tls: store decrypted on a single bit (Sabrina Dubroca) [1819627] - [net] tls: store async_capable on a single bit (Sabrina Dubroca) [1819627] - [net] tls: pass context to tls_device_decrypted() (Sabrina Dubroca) [1819627] - [net] tls: make allocation failure unlikely (Sabrina Dubroca) [1819627] - [net] tls: mark sk->err being set as unlikely (Sabrina Dubroca) [1819627] - [net] sockmap: use bitmap for copy info (Sabrina Dubroca) [1819627] - [net] tls: add TlsDeviceRxResync statistic (Sabrina Dubroca) [1819627] - [net] tls: add TlsDecryptError stat (Sabrina Dubroca) [1819627] - [net] tls: add statistics for installed sessions (Sabrina Dubroca) [1819627] - [net] tls: add skeleton of MIB statistics (Sabrina Dubroca) [1819627] - [net] tls: add device decrypted trace point (Sabrina Dubroca) [1819627] - [net] tls: add tracing for device/offload events (Sabrina Dubroca) [1819627] - [net] tls: allow compiling TLS TOE out (Sabrina Dubroca) [1819627] - [net] tls: rename tls_hw_* functions tls_toe_* (Sabrina Dubroca) [1819627] - [net] tls: move TOE-related code to a separate file (Sabrina Dubroca) [1819627] - [net] tls: move tls_build_proto() on init path (Sabrina Dubroca) [1819627] - [net] tls: use the full sk_proto pointer (Sabrina Dubroca) [1819627] - [net] tls: rename tls_device to tls_toe_device (Sabrina Dubroca) [1819627] - [net] tls: move TOE-related structures to a separate header (Sabrina Dubroca) [1819627] - [net] tls: sleeping function from invalid context (Sabrina Dubroca) [1819627] - [net] netfilter: nft_set_rbtree: Add missing expired checks (Phil Sutter) [1778020] - [tools] selftests: netfilter: extend flowtable test script with dnat rule (Marcelo Leitner) [1811193] - [tools] selftests: netfilter: extend flowtable test script for ipsec (Marcelo Leitner) [1811193] - [tools] selftests: netfilter: add flowtable test script (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: set NF_FLOW_TEARDOWN flag on entry expiration (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Remove WQ_MEM_RECLAIM from workqueue (Marcelo Leitner) [1811193] - [net] netfilter: nf_conntrack: add IPS_HW_OFFLOAD status bit (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Free block_cb when being deleted (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add counter support in HW offload (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: add nf_ct_acct_add() (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: export nf_ct_acct_update() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use work entry per offload command (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use rw sem as flow block lock (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add counter support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add enum nft_flowtable_flags to uapi (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix incorrect tc_setup_type type (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: populate addr_type mask (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix flushing of offloaded flows on free (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: fix NULL pointer dereference in tunnel offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: reload ip{v6}h in nf_flow_tuple_ip{v6} (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: reload ip{v6}h in nf_flow_nat_ip{v6} (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: dump NFTA_CHAIN_FLAGS attribute (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: free flowtable hooks on hook register error (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add tunnel encap/decap action offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add indr block setup support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_table_block_offload_init() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add tunnel match offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: skip offload setup if disabled (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use nf_flow_offload_tuple for stats as well (Marcelo Leitner) [1811193] - [net] flow_offload: Add flow_match_ct to get rule ct match (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Enable hardware offload of flow table entires (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Support refreshing the flow table entries (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Support restoring conntrack info on skbs (Marcelo Leitner) [1811193] - [net] sched: act_ct: Instantiate flow table entry actions (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Add API for registering to flow table events (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix setting forgotten NF_FLOW_HW_DEAD flag (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix missing flush hardware on table free (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix hardware flush order on nf_flow_table_cleanup (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: fix check the chain offload flag (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: fix memory leak in nf_tables_parse_netdev_hooks() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_table_offload_cmd() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_offload_tuple() helper (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: refresh flow if hardware offload fails (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flowtable_hw_offload() helper function (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: use atomic bitwise operations for flow flags (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: remove dying bit, use teardown bit instead (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_offload_work_alloc() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: restrict flow dissector match on meta ingress device (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: fetch stats only if flow is still alive (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flowtable_time_stamp (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: unbind callbacks from flowtable destroy path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: fix the nat port mangle. (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: check the status of dst_neigh (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: fix incorrect ethernet dst address (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix big-endian integer overflow (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Correct memcpy size for flow_overload_mangle() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: return EOPNOTSUPP if rule specifies no actions (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add IPv6 match description (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Don't use offset uninitialized in flow_offload_port_{d, s}nat (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix block_cb tc_setup_type as TC_SETUP_CLSFLOWER (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix block setup as TC_SETUP_FT cmd (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: check if bind callback fails and unbind if hook registration fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add nft_unregister_flowtable_hook() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: undo updates if transaction fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: release flow_rule on error from commit path (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove reference to flow rule from deletion path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add IPv6 support (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add flow_action_entry_next() and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary parameter in flow_offload_fill_dir (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix check ndo_setup_tc when setup_block (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: Check for the NETDEV_UNREGISTER event (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: hardware offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add flowtable offload control plane (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: detach routing information from flow description (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: skip tcp rst and fin packets (Marcelo Leitner) [1811193] - [net] netfilter: nf_flowtable: remove flow_offload_entry structure (Marcelo Leitner) [1811193] - [include] netfilter: nf_flow_table: remove union from flow_offload structure (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: move conntrack object to struct flow_offload (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: skip EBUSY on chain update (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: bogus EOPNOTSUPP on basechain update (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: pass extack to nft_flow_cls_offload_setup() (Marcelo Leitner) [1811193] - [net] netfilter: nft_meta: offload support for interface index (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: white-space fixes. (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: check for register data length mismatches (Marcelo Leitner) [1811193] - [net] netfilter: nft_bitwise: Adjust parentheses to fix memcmp size argument (Marcelo Leitner) [1811193] - [net] netfilter: nft_bitwise: add offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: unbind if multi-device binding fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_block_offload_init() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_chain_offload_cmd() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: restore basechain deletion (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: support for multiple devices per netdev hook (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: fix base chain stat rcu_dereference usage (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove rules on unregistered device only (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_cls_offload_setup() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: Pass callback list to nft_setup_cb_call() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_block_chain() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: increase maximum devices number per flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: allow netdevice to be used only once per flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: dynamically allocate hooks per net_device in flowtables (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove flowtable hook flush routine in netns exit routine (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: move priority to struct nf_flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nft_payload: fix missing check for matching length in offloads (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: set timeout before insertion into hashes (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: fix always true policy is unset check (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add NFT_CHAIN_POLICY_UNSET and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove rules when the device unregisters (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: refactor the nft_flow_offload_rule function (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: refactor the nft_flow_offload_chain function (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add __nft_offload_get_chain function (Marcelo Leitner) [1811193] - [net] netfilter: nft_{fwd, dup}_netdev: add offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: avoid excessive stack usage (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: move indirect flow_block callback logic to core (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: set default timeout after successful insertion (Marcelo Leitner) [1811193] - [net] netfilter: ctnetlink: honor IPS_OFFLOAD flag (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: clear skb tstamp before xmit (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: map basechain priority to hardware priority (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: teardown flow timeout race (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: conntrack picks up expired flows (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: support indr block call (Marcelo Leitner) [1811193] - [net] flow_offload: add flow_block structure and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: store data in offload context registers (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix offload for flows that are subject to xfrm (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: don't fail when updating base chain policy (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add hardware offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: delay chain policy update until transaction is complete (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: IPCB is only valid for ipv4 family (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: don't offload when sequence numbers need adjustment (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: set liberal tracking mode for tcp (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: ignore DF bit setting (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary variable in flow_offload_tuple (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: add entry to flowtable after confirmation (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: fix checking method of conntrack helper (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix missing error check for rhashtable_insert_fast (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: do not flow offload deleted conntrack entries (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: simplify nf_flow_offload_gc_step() (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: check ttl value in flow offload data path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix netdev refcnt leak (Marcelo Leitner) [1811193] - [net] netfilter: nf_flowtable: skip device lookup from interface index (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: fix IPV6=n builds (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: fix interaction with vrf slave device (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: Fix reverse route lookup (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: make nf_flow_table_iterate() static (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: do not remove offload when other netns's interface is down (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary parameter of nf_flow_table_cleanup() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary nat flag check code (Marcelo Leitner) [1811193] - [net] mptcp: mark tech preview and disable by default (Florian Westphal) [1835796] - [net] mptcp: fix bogus socket flag values (Florian Westphal) [1835796] - [net] mptcp: select CRYPTO (Florian Westphal) [1835796] - [net] mptcp: Protect subflow socket options before connection completes (Florian Westphal) [1835796] - [net] mptcp: make the symbol 'mptcp_sk_clone_lock' static (Florian Westphal) [1835796] - [net] mptcp: fix use-after-free for ipv6 (Florian Westphal) [1835796] - [net] mptcp: fix use-after-free on tcp fallback (Florian Westphal) [1835796] - [net] mptcp: Fix undefined mptcp_handle_ipv6_mapped for modular IPV6 (Florian Westphal) [1835796] - [net] mptcp: Fix incorrect IPV6 dependency check (Florian Westphal) [1835796] - [net] mptcp: handle tcp fallback when using syn cookies (Florian Westphal) [1835796] - [net] mptcp: avoid a lockdep splat when mcast group was joined (Florian Westphal) [1835796] - [net] mptcp: fix panic on user pointer access (Florian Westphal) [1835796] - [net] mptcp: defer freeing of cached ext until last moment (Florian Westphal) [1835796] - [net] mptcp: Fix build with PROC_FS disabled. (Florian Westphal) [1835796] - [tools] selftests: settings: tests can be in subsubdirs (Florian Westphal) [1835796] - [net] mptcp: Fix code formatting (Florian Westphal) [1835796] - [net] mptcp: do not inherit inet proto ops (Florian Westphal) [1835796] - [net] add and use MPTCP_PROTO_KERN (Florian Westphal) [1835796] - [net] mptcp: cope with later TCP fallback (Florian Westphal) [1835796] - [net] mptcp: process MP_CAPABLE data option (Florian Westphal) [1835796] - [net] mptcp: parse and emit MP_CAPABLE option according to v1 spec (Florian Westphal) [1835796] - [net] mptcp: move from sha1 (v0) to sha256 (v1) (Florian Westphal) [1835796] - [tools] mptcp: add basic kselftest for mptcp (Florian Westphal) [1835796] - [net] mptcp: new sysctl to control the activation per NS (Florian Westphal) [1835796] - [net] mptcp: allow collapsing consecutive sendpages on the same substream (Florian Westphal) [1835796] - [net] mptcp: recvmsg() can drain data from multiple subflows (Florian Westphal) [1835796] - [net] mptcp: add subflow write space signalling and mptcp_poll (Florian Westphal) [1835796] - [net] mptcp: Implement MPTCP receive path (Florian Westphal) [1835796] - [net] mptcp: Write MPTCP DSS headers to outgoing data packets (Florian Westphal) [1835796] - [net] mptcp: Add setsockopt()/getsockopt() socket operations (Florian Westphal) [1835796] - [net] mptcp: Add shutdown() socket operation (Florian Westphal) [1835796] - [net] mptcp: Add key generation and token tree (Florian Westphal) [1835796] - [net] mptcp: Create SUBFLOW socket for incoming connections (Florian Westphal) [1835796] - [net] mptcp: Handle MP_CAPABLE options for outgoing connections (Florian Westphal) [1835796] - [net] mptcp: Associate MPTCP context with TCP socket (Florian Westphal) [1835796] - [net] mptcp: Handle MPTCP TCP options (Florian Westphal) [1835796] - [net] mptcp: Add MPTCP socket stubs (Florian Westphal) [1835796] - [net] netfilter: conntrack: fix infinite loop on rmmod (Florian Westphal) [1832381] - [tools] selftests: add netdevsim devlink dev info test (Petr Oros) [1830928] - [tools] selftests: test netdevsim reload forbid and fail (Petr Oros) [1830928] - [netdrv] mlx4: fix "initializer element not constant" compiler error (Petr Oros) [1830928] - [netdrv] netdevsim: dev: Fix memory leak in nsim_dev_take_snapshot_write (Petr Oros) [1830928] - [net] devlink: fix return value after hitting end in region read (Petr Oros) [1830928] - [net] devlink: Fix reporter's recovery condition (Petr Oros) [1830928] - [documentation] docs: devlink: clarify the scope of snapshot id (Petr Oros) [1830928] - [net] devlink: let kernel allocate region snapshot id (Petr Oros) [1830928] - [net] devlink: factor out building a snapshot notification (Petr Oros) [1830928] - [documentation] devlink: fix broken link warning (Petr Oros) [1830928] - [net] devlink: use NL_SET_ERR_MSG_MOD instead of NL_SET_ERR_MSG (Petr Oros) [1830928] - [include] devlink: Add macro for "fw.mgmt.api" to info_get cb. (Petr Oros) [1830928] - [netdrv] netdevsim: support taking immediate snapshot via devlink (Petr Oros) [1830928] - [net] devlink: implement DEVLINK_CMD_REGION_NEW (Petr Oros) [1830928] - [net] devlink: track snapshot id usage count using an xarray (Petr Oros) [1830928] - [net] devlink: report error once U32_MAX snapshot ids have been used (Petr Oros) [1830928] - [net] devlink: extract snapshot id allocation to helper function (Petr Oros) [1830928] - [net] devlink: use -ENOSPC to indicate no more room for snapshots (Petr Oros) [1830928] - [net] devlink: add function to take snapshot while locked (Petr Oros) [1830928] - [net] devlink: trivial: fix tab in function documentation (Petr Oros) [1830928] - [net] devlink: convert snapshot destructor callback to region op (Petr Oros) [1830928] - [net] devlink: prepare to support region operations (Petr Oros) [1830928] - [documentation] devlink: expand the devlink-info documentation (Petr Oros) [1830928] - [net] devlink: Introduce devlink port flavour virtual (Petr Oros) [1830928] - [net] devlink: validate length of region addr/len (Petr Oros) [1830928] - [net] devlink: validate length of param values (Petr Oros) [1830928] - [net] core: Replace zero-length array with flexible-array member (Petr Oros) [1830928] - [net] core: devlink.c: Use built-in RCU list checking (Petr Oros) [1830928] - [net] devlink: Rely on driver eswitch thread safety instead of devlink (Petr Oros) [1830928] - [net] core: devlink.c: Hold devlink->lock from the beginning of devlink_dpipe_table_register() (Petr Oros) [1830928] - [net] devlink: Force enclosing array on binary fmsg data (Petr Oros) [1830928] - [net] devlink: report 0 after hitting end in region read (Petr Oros) [1830928] - [net] devlink: correct misspelling of snapshot (Petr Oros) [1830928] - [tools] selftests: Add a test of large binary to devlink health test (Petr Oros) [1830928] - [netdrv] netdevsim: Update dummy reporter's devlink binary interface (Petr Oros) [1830928] - [net] devlink: Allow large formatted message of binary output (Petr Oros) [1830928] - [tools] selftests: netdevsim: Add test cases for devlink-trap policers (Petr Oros) [1823743] - [netdrv] netdevsim: Add support for setting of packet trap group parameters (Petr Oros) [1823743] - [net] devlink: Allow setting of packet trap group parameters (Petr Oros) [1823743] - [net] devlink: Add packet trap group parameters support (Petr Oros) [1823743] - [netdrv] netdevsim: Add devlink-trap policer support (Petr Oros) [1823743] - [documentation] Add description of packet trap policers (Petr Oros) [1823743] - [net] devlink: Add packet trap policers support (Petr Oros) [1823743] - [net] devlink: Add auto dump flag to health reporter (Petr Oros) [1823743] - [net] devlink: Implicitly set auto recover flag when registering health reporter (Petr Oros) [1823743] - [netdrv] netdevsim: Change dummy reporter auto recover default (Petr Oros) [1823743] - [net] devlink: Only pass packet trap group identifier in trap structure (Petr Oros) [1823743] - [net] devlink: Stop reference counting packet trap groups (Petr Oros) [1823743] - [netdrv] netdevsim: Explicitly register packet trap groups (Petr Oros) [1823743] - [net] devlink: Add API to register packet trap groups (Petr Oros) [1823743] - [net] esp6: calculate transport_header correctly when sel.family != AF_INET6 (Xin Long) [1815980 1761579] - [net] esp4: support ipv6 nexthdrs process for beet gso segment (Xin Long) [1815980 1761579] - [net] esp6: support ipv6 nexthdrs process for beet gso segment (Xin Long) [1815980 1761579] - [net] xfrm: remove the xfrm_state_put call becofe going to out_reset (Xin Long) [1815980 1761579] - [net] esp6: get the right proto for transport mode in esp6_gso_encap (Xin Long) [1815980 1761579] - [net] xfrm: do pskb_pull properly in __xfrm_transport_prep (Xin Long) [1815980 1761579] - [net] xfrm: allow to accept packets with ipv6 NEXTHDR_HOP in xfrm_input (Xin Long) [1815980 1761579] - [net] xfrm: add prep for esp beet mode offload (Xin Long) [1815980 1761579] - [net] esp6: add gso_segment for esp6 beet mode (Xin Long) [1815980 1761579] - [net] esp4: add gso_segment for esp4 beet mode (Xin Long) [1815980 1761579] - [net] xfrm: kconfig: make xfrm depend on inet (Xin Long) [1815980 1761579] - [net] xfrm: make xfrm modes builtin (Xin Long) [1815980 1761579] - [net] xfrm: remove afinfo pointer from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove output2 indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove input2 indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove gso_segment indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove xmit indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove output indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove input indirection from xfrm_mode (Xin Long) [1761579 1815980] - [net] xfrm: prefer family stored in xfrm_mode struct (Xin Long) [1815980 1761579] - [net] xfrm: place af number into xfrm_mode struct (Xin Long) [1761579 1815980] - [net] xfrm: gso partial offload support (Xin Long) [1761579 1815980] - [net] netfilter: cttimeout: remove set but not used variable 'l3num' (Florian Westphal) [1822085] - [net] netfilter: conntrack: handle icmp pkt_to_tuple helper via direct calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: handle builtin l4proto packet functions via direct calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove net_id (Florian Westphal) [1822085] - [net] netfilter: conntrack: gre: switch module to be built-in (Florian Westphal) [1822085] - [net] netfilter: remove unused parameters in nf_ct_l4proto_[un]register_sysctl() (Florian Westphal) [1822085] - [net] netfilter: conntrack: gre: convert rwlock to rcu (Florian Westphal) [1822085] - [net] netfilter: nfnetlink_cttimeout: fetch timeouts for udplite and gre, too (Florian Westphal) [1822085] - [net] netfilter: nfnetlink_cttimeout: pass default timeout policy to obj_to_nlattr (Florian Westphal) [1822085] - [net] netfilter: conntrack: add nf_{tcp, udp, sctp, icmp, dccp, icmpv6, generic}_pernet() (Florian Westphal) [1822085] - [net] netfilter: conntrack: clamp l4proto array size at largers supported protocol (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove l3->l4 mapping information (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove unused proto arg from netns init functions (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove error callback and handle icmp from core (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid using ->error callback if possible (Florian Westphal) [1822085] - [net] netfilter: conntrack: deconstify packet callback skb pointer (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove the l4proto->new() function (Florian Westphal) [1822085] - [net] netfilter: conntrack: timeout interface depend on CONFIG_NF_CONNTRACK_TIMEOUT (Florian Westphal) [1822085] - [net] netfilter: conntrack: pass nf_hook_state to packet and error handlers (Florian Westphal) [1822085] - [net] netfilter: conntrack: place 'new' timeout in first location too (Florian Westphal) [1822085] - [net] netfilter: nf_conntrack_h323: Remove deprecated config check (Florian Westphal) [1822085] - [include] netfilter: nf_tables: merge route type into core (Florian Westphal) [1822085] - [net] netfilter: ipv6: avoid indirect calls for IPV6=y case (Florian Westphal) [1822085] - [net] netfilter: nat: remove module dependency on ipv6 core (Florian Westphal) [1822085] - [net] netfilter: remove obsolete need_conntrack stub (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid use-after free on rmmod (Florian Westphal) [1822085] - [net] netfilter: conntrack: dccp, sctp: handle null timeout argument (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove duplicated include from nf_conntrack_proto_udp.c (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove l3proto abstraction (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove get_timeout() indirection (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid l4proto pkt_to_tuple calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid calls to l4proto invert_tuple (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove get_l4proto indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove invert_tuple indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove pkt_to_tuple indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove ctnetlink callbacks from l3 protocol trackers (Florian Westphal) [1822085] - [net] openvswitch: use nf_ct_get_tuplepr, invert_tuplepr (Florian Westphal) [1822085] - [net] netfilter: utils: move nf_ip6_checksum* from ipv6 to utils (Florian Westphal) [1822085] - [net] netfilter: utils: move nf_ip_checksum* from ipv4 to utils (Florian Westphal) [1822085] - [net] netfilter: flowtables: use fixed renew timeout on teardown (Florian Westphal) [1822085] - [netdrv] geneve: use the correct nlattr array in NL_SET_ERR_MSG_ATTR (Xin Long) [1809503] - [netdrv] vxlan: use the correct nlattr array in NL_SET_ERR_MSG_ATTR (Xin Long) [1809503] - [netdrv] geneve: Allow configuration of DF behaviour (Xin Long) [1809503] - [netdrv] vxlan: Allow configuration of DF behaviour (Xin Long) [1809503] - [netdrv] net: phy: realtek: fix using paged operations with RTL8105e / RTL8208 (Josef Oskera) [1841511] - [netdrv] r8169: fix OCP access on RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: re-establish support for RTL8401 chip version (Josef Oskera) [1841511] - [netdrv] r8169: change back SG and TSO to be disabled by default (Josef Oskera) [1841511] - [netdrv] r8169: factor out rtl8169_tx_map (Josef Oskera) [1841511] - [netdrv] r8169: improve handling of TD_MSS_MAX (Josef Oskera) [1841511] - [netdrv] r8169: fix PHY driver check on platforms w/o module softdeps (Josef Oskera) [1841511] - [netdrv] r8169: re-enable MSI on RTL8168c (Josef Oskera) [1841511] - [netdrv] r8169: don't use MSI before RTL8168d (Josef Oskera) [1841511] - [netdrv] r8169: improve RTL8168b FIFO overflow workaround (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl_schedule_task (Josef Oskera) [1841511] - [netdrv] r8169: simplify rtl_task (Josef Oskera) [1841511] - [netdrv] r8169: add new helper rtl8168g_enable_gphy_10m (Josef Oskera) [1841511] - [netdrv] net: r8169: reject unsupported coalescing params (Josef Oskera) [1841511] - [netdrv] r8169: simplify getting stats by using netdev_stats_to_stats64 (Josef Oskera) [1841511] - [netdrv] r8169: let rtl8169_mark_to_asic clear rx descriptor field opts2 (Josef Oskera) [1841511] - [netdrv] r8169: remove now unneeded barrier in rtl_tx (Josef Oskera) [1841511] - [netdrv] r8169: simplify usage of rtl8169_unmap_tx_skb (Josef Oskera) [1841511] - [netdrv] r8169: ensure tx_skb is fully reset after calling rtl8169_unmap_tx_skb (Josef Oskera) [1841511] - [netdrv] r8169: convert while to for loop in rtl_tx (Josef Oskera) [1841511] - [netdrv] r8169: use pci_status_get_and_clear_errors (Josef Oskera) [1841511] - [netdrv] r8169: add PCI_STATUS_PARITY to PCI status error bits (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_start_xmit (Josef Oskera) [1841511] - [netdrv] r8169: remove RTL_EVENT_NAPI constants (Josef Oskera) [1841511] - [netdrv] r8169: use new helper tcp_v6_gso_csum_prep (Josef Oskera) [1841511] - [netdrv] r8169: improve statistics of missed rx packets (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl_jumbo_config (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_get_mac_version (Josef Oskera) [1841511] - [netdrv] r8169: add helper rtl_pci_commit (Josef Oskera) [1841511] - [netdrv] r8169: simplify setting netdev features (Josef Oskera) [1841511] - [netdrv] r8169: remove setting PCI_CACHE_LINE_SIZE in rtl_hw_start_8169 (Josef Oskera) [1841511] - [netdrv] r8169: remove unneeded check from rtl_link_chg_patch (Josef Oskera) [1841511] - [netdrv] r8169: fix performance regression related to PCIe max read request size (Josef Oskera) [1841511] - [netdrv] r8169: don't set min_mtu/max_mtu if not needed (Josef Oskera) [1841511] - [netdrv] r8169: factor out PHY configuration to r8169_phy_config.c (Josef Oskera) [1841511] - [netdrv] r8169: add r8169.h (Josef Oskera) [1841511] - [netdrv] r8169: rename rtl_apply_firmware (Josef Oskera) [1841511] - [netdrv] r8169: add phydev argument to rtl8168d_apply_firmware_cond (Josef Oskera) [1841511] - [netdrv] r8169: use phy_read/write instead of rtl_readphy/writephy (Josef Oskera) [1841511] - [netdrv] r8169: replace rtl_w0w1_phy (Josef Oskera) [1841511] - [netdrv] r8169: replace rtl_patchphy (Josef Oskera) [1841511] - [netdrv] r8169: move disabling MAC EEE for RTL8402/RTL8106e (Josef Oskera) [1841511] - [netdrv] r8169: move setting ERI register 0x1d0 for RTL8106 (Josef Oskera) [1841511] - [netdrv] r8169: switch to phylib functions in rtl_writephy_batch (Josef Oskera) [1841511] - [netdrv] r8169: change argument type of RTL8168g-specific PHY config functions (Josef Oskera) [1841511] - [netdrv] r8169: change argument type of EEE PHY functions (Josef Oskera) [1841511] - [netdrv] r8169: move RTL8169scd Gigabyte PHY quirk (Josef Oskera) [1841511] - [netdrv] r8169: remove not needed debug print in rtl8169_init_phy (Josef Oskera) [1841511] - [netdrv] r8169: prepare for exporting rtl_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: add constant EnAnaPLL (Josef Oskera) [1841511] - [netdrv] r8169: move enabling EEE to rtl8169_init_phy (Josef Oskera) [1841511] - [netdrv] r8169: remove MAC workaround in rtl8168e_2_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: factor out rtl8168h_2_get_adc_bias_ioffset (Josef Oskera) [1841511] - [netdrv] r8169: check that Realtek PHY driver module is loaded (Josef Oskera) [1841511] - [netdrv] treewide: Use sizeof_field() macro (Josef Oskera) [1841511] - [netdrv] r8169: fix rtl_hw_jumbo_disable for RTL8168evl (Josef Oskera) [1841511] - [netdrv] r8169: add missing RX enabling for WoL on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: fix jumbo configuration for RTL8168evl (Josef Oskera) [1841511] - [netdrv] r8169: add check for PHY_MDIO_CHG to rtl_nic_fw_data_ok (Josef Oskera) [1841511] - [netdrv] r8169: use macro FIELD_SIZEOF in definition of FW_OPCODE_SIZE (Josef Oskera) [1841511] - [netdrv] r8169: change mdelay to msleep in rtl_fw_write_firmware (Josef Oskera) [1841511] - [netdrv] r8169: load firmware for RTL8168fp/RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: improve conditional firmware loading for RTL8168d (Josef Oskera) [1841511] - [netdrv] r8169: use r8168d_modify_extpage in rtl8168f_config_eee_phy (Josef Oskera) [1841511] - [netdrv] r8169: add support for RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: respect EEE user setting when restarting network (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl8168c_4_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168d_modify_extpage (Josef Oskera) [1841511] - [netdrv] r8169: switch to phylib functions in more places (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168d_phy_param (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168g_phy_param (Josef Oskera) [1841511] - [netdrv] r8169: fix page read in r8168g_mdio_read (Josef Oskera) [1841511] - [netdrv] r8169: fix wrong PHY ID issue with RTL8168dp (Josef Oskera) [1841511] - [netdrv] r8169: use helper rtl_hw_aspm_clkreq_enable also in rtl_hw_start_8168g_2 (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_rx_fill (Josef Oskera) [1841511] - [netdrv] r8169: align fix_features callback with vendor driver (Josef Oskera) [1841511] - [netdrv] r8169: never set PCI_EXP_DEVCTL_NOSNOOP_EN (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl_hw_start_8168bef (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl_hw_start_8168dp (Josef Oskera) [1841511] - [netdrv] r8169: simplify setting PCI_EXP_DEVCTL_NOSNOOP_EN (Josef Oskera) [1841511] - [netdrv] r8169: remove fiddling with the PCIe max read request size (Josef Oskera) [1841511] - [netdrv] r8169: fix jumbo packet handling on resume from suspend (Josef Oskera) [1841511] - [netdrv] r8169: don't set bit RxVlan on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: add support for EEE on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: add RTL8125 PHY initialization (Josef Oskera) [1841511] - [netdrv] r8169: add support for RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: don't use bit LastFrag in tx descriptor after send (Josef Oskera) [1841511] - [netdrv] r8169: read common register for PCI commit (Josef Oskera) [1841511] - [netdrv] r8169: move disabling interrupt coalescing to RTL8169/RTL8168 init (Josef Oskera) [1841511] - [netdrv] r8169: factor out reading MAC address from registers (Josef Oskera) [1841511] - [netdrv] r8169: restrict rtl_is_8168evl_up to RTL8168 chip versions (Josef Oskera) [1841511] - [netdrv] r8169: change interrupt mask type to u32 (Josef Oskera) [1841511] - [netdrv] r8169: improve DMA handling in rtl_rx (Josef Oskera) [1841511] - [netdrv] r8169: fix DMA issue on MIPS platform (Josef Oskera) [1841511] - [netdrv] r8169: sync EEE handling for RTL8168h with vendor driver (Josef Oskera) [1841511] - [netdrv] r8169: use the generic EEE management functions (Josef Oskera) [1841511] - [fs] gfs2: Even more gfs2_find_jhead fixes (Abhijith Das) [1828653] - [kernel] sched/fair: Don't NUMA balance for kthreads (Phil Auld) [1842543] - [kernel] sched/core: Offload wakee task activation if it the wakee is descheduling (Phil Auld) [1842543] - [kernel] sched/core: Optimize ttwu() spinning on p->on_cpu (Phil Auld) [1842543] - [fs] gfs2: Smarter iopen glock waiting (Andreas Grunbacher) [1582655] - [fs] gfs2: Wake up when setting GLF_DEMOTE (Andreas Grunbacher) [1582655] - [fs] gfs2: Check inode generation number in delete_work_func (Andreas Grunbacher) [1582655] - [fs] gfs2: Move inode generation number check into gfs2_inode_lookup (Andreas Grunbacher) [1582655] - [fs] gfs2: Minor gfs2_lookup_by_inum cleanup (Andreas Grunbacher) [1582655] - [fs] gfs2: Try harder to delete inodes locally (Andreas Grunbacher) [1582655] - [fs] gfs2: Give up the iopen glock on contention (Andreas Grunbacher) [1582655] - [fs] gfs2: Turn gl_delete into a delayed work (Andreas Grunbacher) [1582655] - [fs] gfs2: Keep track of deleted inode generations in LVBs (Andreas Grunbacher) [1582655] - [fs] gfs2: Allow ASPACE glocks to also have an lvb (Andreas Grunbacher) [1582655] - [fs] gfs2: Avoid access time thrashing in gfs2_inode_lookup (Andreas Grunbacher) [1582655] - [fs] gfs2: Use IS_ERR_OR_NULL (Andreas Grunbacher) [1582655] - [fpga] fpga: mark the intel fpga drivers as tech preview (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: stratix10-svc: Remove unneeded semicolon (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: Fix incompatible function behavior for RSU driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: add Intel Stratix10 remote system update driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] firmware: stratix10-svc: extend svc to support new RSU features (Luis Goncalves) [1689274 1660310 1494701 1494699] - [edac] EDAC/altera, firmware/intel: Add Stratix10 ECC DBE SMC call (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: stratix10-svc: fix wrong of_node_put() in init function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] firmware: add remote status update client support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: add Intel Stratix10 service layer driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: pci: fix return value of cci_pci_sriov_configure (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: xilinx-pr-decoupler: Remove clk_get error message for probe defer (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: remove redundant dev_err message (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: remove set but not used variable 'afu' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove set but not used variable 'fme' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add power management support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add thermal management support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] Documentation: fpga: dfl: add descriptions for thermal/power management interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: Remove dev_err() usage after platform_get_irq() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] Documentation: fpga: dfl: add descriptions for virtualization and new interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add global error reporting support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add STP (SignalTap) support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add error reporting support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: expose __afu_port_enable/disable function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add userclock sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: convert platform_driver to use dev_groups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: convert platform_driver to use dev_groups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: make init callback optional (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Add Stratix10 (V2) Support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Preparation for V2 parts (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Discover Vendor Specific offset (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-ps-spi: Fix getting of optional confd gpio (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add capability sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: make uinit callback optional (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add id_table for dfl private feature driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add AFU state related sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: pci: enable SRIOV support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add DFL_FPGA_FME_PORT_RELEASE/ASSIGN ioctl support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: use driver core functions, not sysfs ones (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-pr-ip: Make alt_pr_unregister function void (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Fix function definition argument (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga-manager: altera-ps-spi: Fix build error (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: align PR buffer size per PR datawidth (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove copy_to_user() in ioctl for PR (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-fme-mgr: fix FME_PR_INTFC_ID register address (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] drivers: fpga: Kconfig: pedantic cleanups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: convert docs to ReST and rename to *.rst (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: zynqmp-fpga: Correctly handle error pointer (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] include: fpga: adi-axi-common.h: add common regs & defs header (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: expand minor range when registering chrdev region (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: Add lockdep classes for pdata->lock (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: Pass the correct device to dma_mapping_error() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: stratix10-soc: fix use-after-free on s10_init() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Add SPDX license identifier - Makefile/Kconfig (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] mm/gup: change GUP fast to use flags rather than a write 'bool' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga manager: Adding FPGA Manager support for Xilinx zynqmp (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera_freeze_bridge: remove restriction to socfpga (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: altera-ps-spi: make array dummy static, shrinks object size (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: stratix10-soc: fix wrong of_node_put() in init function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] Remove 'type' argument from access_ok() function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: of-fpga-region: Use platform_set_drvdata (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-fme-region: Use platform_get_drvdata() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add intel stratix10 soc fpga manager driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: altera-ps-spi: enable usage on non-dt platforms (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: fix probing for multiple FPGAs on the bus (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] zynq-fpga: Only route PR via PCAP when required (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Fix registration for CvP incapable devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove set but not used variable 'priv' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: fix 'bad IO access' on x86_64 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add devm_fpga_region_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: bridge: add devm_fpga_bridge_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: add devm_fpga_mgr_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: document fpga manager flags (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: bridge: fix obvious function documentation error (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: do not access region struct after fpga_region_unregister (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] drivers: fpga: fix two trivial spelling mistakes (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: fix return value check in in pr_mgmt_init() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add DFL_FPGA_PORT_DMA_MAP/UNMAP ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add afu sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add DFL_FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add header sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add port ops support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add FPGA Accelerated Function Unit driver basic framework (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme-region: add support for compat_id (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga region platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga bridge platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme-mgr: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga manager platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add partial reconfiguration sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add DFL_FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add header sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add FPGA Management Engine driver basic framework (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-pci: add enumeration for feature devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add FPGA DFL PCIe device driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_check_port_id function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_port_ops support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add feature device infrastructure (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_cdev_find_port (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add chardev support for feature devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add device feature list support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: region: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] fpga: mgr: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: add status for fpga-manager (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] fpga: mgr: add region_id to fpga_image_info (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: add a document for FPGA Device Feature List (DFL) Framework Overview (Luis Goncalves) [1689274 1660310 1494701 1494699] - [mm] mm: Add a vmf_insert_mixed_prot() function (Dave Airlie) [1838335] - [mm] mm: Add write-protect and clean utilities for address space ranges (Dave Airlie) [1838335] - [mm] mm: Add a walk_page_mapping() function to the pagewalk code (Dave Airlie) [1838335] - [mm] pagewalk: separate function pointers from iterator data (Dave Airlie) [1838335] - [mm] mm: split out a new pagewalk.h header from mm.h (Dave Airlie) [1838335] - [mm] mm: update ptep_modify_prot_commit to take old pte value as arg (Dave Airlie) [1838335] - [x86] mm: update ptep_modify_prot_start/commit to take vm_area_struct as arg (Dave Airlie) [1838335] - [mm] mm/mmu_notifier: add an interval tree notifier (Dave Airlie) [1838335] - [mm] mm/mmu_notifier: define the header pre-processor parts even if disabled (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: add a lockdep map for invalidate_range_start/end (Dave Airlie) [1838335] - [misc] misc/sgi-gru: use mmu_notifier_get/put for struct gru_mm_struct (Dave Airlie) [1838335] - [drm] drm/backport: add mmu notifier get/put support to drm backport (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: add a get/put scheme for the registration (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: do not speculatively allocate a mmu_notifier_mm (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: hoist do_mmu_notifier_register down_write to the caller (Dave Airlie) [1838335] - [mm] mm/mmu_notifier.c: remove mmu_notifier_synchronize() (Dave Airlie) [1838335] - [infiniband] locking/lockdep: Rename lockdep_assert_held_exclusive() -> lockdep_assert_held_write() (Dave Airlie) [1838335] - [include] mm/mmu_notifier: contextual information for event enums (Dave Airlie) [1838335] - [mm] mm/memory_hotplug.c: only respect mem= parameter during boot stage (Baoquan He) [1838809 1781472] - [scsi] scsi: mpt3sas: Remove unused including (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix double free warnings (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Disable DIF when prot_mask set to zero (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Capture IOC data for debugging purposes (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Use true, false for ioc->use_32bit_dma (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Remove NULL check before freeing function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update mpt3sas version to 33.101.00.00 (Tomas Henzl) [1790760] - [scsi] mpt3sas: Fix memset in non-rdpq mode (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix reply queue count in non RDPQ mode (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Handle RDPQ DMA allocation in same 4G region (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Separate out RDPQ allocation to new function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Rename function name is_MSB_are_same (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Don't change the DMA coherent mask after allocations (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: use true, false for bool variables (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug (Tomas Henzl) [1790760] - [scsi] scsi: Replace zero-length array with flexible-array member (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update drive version to 33.100.00.00 (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Remove usage of device_busy counter (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Print function name in which cmd timed out (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Optimize mpt3sas driver logging (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: print in which path firmware fault occurred (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Handle CoreDump state from watchdog thread (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Add support IOCs new state named COREDUMP (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: renamed _base_after_reset_handler function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Add support for NVMe shutdown (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update MPI Headers to v02.00.57 (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix double free in attach error handling (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Clean up some indenting (Tomas Henzl) [1790760] - [crypto] crypto: af_alg - cast ki_complete ternary op to int (Herbert Xu) [1837499] - [netdrv] virtio-net: per-queue RPS config (Eugenio Perez) [1718086] - [netdrv] virtio_net: Differentiate sk_buff and xdp_frame on freeing (Eugenio Perez) [1718086] - [netdrv] virtio_net: Use xdp_return_frame to free xdp_frames on destroying vqs (Eugenio Perez) [1718086] - [netdrv] virtio_net: enable napi_tx by default (Eugenio Perez) [1718086] - [netdrv] virtio_net: Don't call free_old_xmit_skbs for xdp_frames (Eugenio Perez) [1718086] - [netdrv] virtio_net: Don't enable NAPI when interface is down (Eugenio Perez) [1718086] - [include] cpumask: make cpumask_next_wrap available without smp (Eugenio Perez) [1718086] - [netdrv] virtio_net: Stripe queue affinities across cores (Eugenio Perez) [1718086] - [virtio] virtio: Make vp_set_vq_affinity() take a mask (Eugenio Perez) [1718086]- [netdrv] ice: add board identifier info to devlink .info_get (Jonathan Toppins) [1796682] - [netdrv] ice: add basic handler for devlink .info_get (Jonathan Toppins) [1796682] - [netdrv] ice: enable initial devlink support (Jonathan Toppins) [1796682] - [netdrv] ice: implement full NVM read from ETHTOOL_GEEPROM (Jonathan Toppins) [1796682] - [netdrv] ice: discover and store size of available flash (Jonathan Toppins) [1796682] - [netdrv] ice: store NVM version info in extracted format (Jonathan Toppins) [1796682] - [netdrv] ice: create function to read a section of the NVM and Shadow RAM (Jonathan Toppins) [1796682] - [netdrv] ice: use __le16 types for explicitly Little Endian values (Jonathan Toppins) [1796682] - [netdrv] ice: fix incorrect size description of ice_get_nvm_version (Jonathan Toppins) [1781388] - [netdrv] ice: use variable name more descriptive than type (Jonathan Toppins) [1781388] - [netdrv] ice: Use EOPNOTSUPP instead of ENOTSUPP (Jonathan Toppins) [1781388] - [netdrv] ice: Fix format specifier (Jonathan Toppins) [1781388] - [netdrv] ice: fix use of deprecated strlcpy() (Jonathan Toppins) [1781388] - [netdrv] ice: Increase mailbox receive queue length to maximum (Jonathan Toppins) [1781388] - [netdrv] ice: Correct setting VLAN pruning (Jonathan Toppins) [1781388] - [netdrv] ice: renegotiate link after FW DCB on (Jonathan Toppins) [1781388] - [netdrv] ice: Fix corner case when switching from IEEE to CEE (Jonathan Toppins) [1781388] - [netdrv] ice: Display Link detected via Ethtool in safe mode (Jonathan Toppins) [1781388] - [netdrv] ice: Fix removing driver while bare-metal VFs pass traffic (Jonathan Toppins) [1781388] - [netdrv] ice: Improve clarity of prints and variables (Jonathan Toppins) [1781388] - [netdrv] ice: allow bigger VFs (Jonathan Toppins) [1781388] - [netdrv] ice: Cleanup unneeded parenthesis (Jonathan Toppins) [1781388] - [netdrv] ice: Use pci_get_dsn() (Jonathan Toppins) [1781388] - [netdrv] ice: let core reject the unsupported coalescing parameters (Jonathan Toppins) [1781388] - [netdrv] ice: fix define for E822 backplane device (Jonathan Toppins) [1781388] - [netdrv] ice: add support for E823 devices (Jonathan Toppins) [1795812] - [netdrv] ice: add backslash-n to strings (Jonathan Toppins) [1781388] - [netdrv] ice: increase PF reset wait timeout to 300 milliseconds (Jonathan Toppins) [1781388] - [netdrv] ice: Support XDP UMEM wake up mechanism (Jonathan Toppins) [1781388] - [netdrv] ice: SW DCB, report correct max TC value (Jonathan Toppins) [1781388] - [netdrv] ice: Report correct DCB mode (Jonathan Toppins) [1781388] - [netdrv] ice: Add DCBNL ops required to configure ETS in CEE for SW DCB (Jonathan Toppins) [1781388] - [netdrv] ice: Always clear the QRXFLXP_CNTXT register for VF Rx queues (Jonathan Toppins) [1781388] - [netdrv] ice: Fix for TCAM entry management (Jonathan Toppins) [1781388] - [netdrv] ice: update malicious driver detection event handling (Jonathan Toppins) [1781388] - [netdrv] ice: Validate config for SW DCB map (Jonathan Toppins) [1781388] - [netdrv] ice: Wait for VF to be reset/ready before configuration (Jonathan Toppins) [1792691] - [netdrv] ice: Don't reject odd values of usecs set by user (Jonathan Toppins) [1781388] - [netdrv] ice: use true/false for bool types (Jonathan Toppins) [1781388] - [netdrv] ice: add function argument description to function header comment (Jonathan Toppins) [1781388] - [netdrv] ice: use proper format for function pointer as a function parameter (Jonathan Toppins) [1781388] - [netdrv] ice: remove unnecessary fallthrough comments (Jonathan Toppins) [1781388] - [netdrv] ice: Fix virtchnl_queue_select bitmap validation (Jonathan Toppins) [1781388] - [netdrv] ice: Fix and refactor Rx queue disable for VFs (Jonathan Toppins) [1781388] - [netdrv] ice: Handle LAN overflow event for VF queues (Jonathan Toppins) [1781388] - [netdrv] ice: Fix implicit queue mapping mode in ice_vsi_get_qs (Jonathan Toppins) [1781388] - [netdrv] ice: Add support to enable/disable all Rx queues before waiting (Jonathan Toppins) [1781388] - [netdrv] ice: Only allow tagged bcast/mcast traffic for VF in port VLAN (Jonathan Toppins) [1781388] - [netdrv] ice: Fix Port VLAN priority bits (Jonathan Toppins) [1781388] - [netdrv] ice: Add helper to determine if VF link is up (Jonathan Toppins) [1781388] - [netdrv] ice: Refactor port vlan configuration for the VF (Jonathan Toppins) [1781388] - [netdrv] ice: Add initial support for QinQ (Jonathan Toppins) [1781388] - [netdrv] ice: Trivial fixes (Jonathan Toppins) [1781388] - [netdrv] ice: Use correct netif error function (Jonathan Toppins) [1781388] - [netdrv] ice: Cleanup ice_vsi_alloc_q_vectors (Jonathan Toppins) [1781388] - [netdrv] ice: Make print statements more compact (Jonathan Toppins) [1781388] - [netdrv] ice: Use ice_pf_to_dev (Jonathan Toppins) [1781388] - [netdrv] ice: Remove possible null dereference (Jonathan Toppins) [1781388] - [netdrv] ice: update Unit Load Status bitmask to check after reset (Jonathan Toppins) [1781388] - [netdrv] ice: fix and consolidate logging of NVM/firmware version information (Jonathan Toppins) [1781388] - [netdrv] ice: Modify link message logging (Jonathan Toppins) [1781388] - [netdrv] ice: Remove CONFIG_PCI_IOV wrap in ice_set_pf_caps (Jonathan Toppins) [1781388] - [netdrv] ice: Remove ice_dev_onetime_setup() (Jonathan Toppins) [1781388] - [netdrv] ice: Don't allow same value for Rx tail to be written twice (Jonathan Toppins) [1781388] - [netdrv] ice: display supported and advertised link modes (Jonathan Toppins) [1781388] - [netdrv] ice: Fix switch between FW and SW LLDP (Jonathan Toppins) [1781388] - [netdrv] ice: Fix DCB rebuild after reset (Jonathan Toppins) [1781388] - [netdrv] ice: Bump version (Jonathan Toppins) [1781401] - [netdrv] ice: Implement ethtool get/set rx-flow-hash (Jonathan Toppins) [1781401] - [netdrv] ice: Initilialize VF RSS tables (Jonathan Toppins) [1781401] - [netdrv] ice: Optimize table usage (Jonathan Toppins) [1781401] - [netdrv] ice: Enable writing filtering tables (Jonathan Toppins) [1781401] - [netdrv] ice: Populate TCAM filter software structures (Jonathan Toppins) [1781401] - [netdrv] ice: Allocate flow profile (Jonathan Toppins) [1781401] - [netdrv] ice: Enable writing hardware filtering tables (Jonathan Toppins) [1781401] - [netdrv] ice: remove redundant assignment to variable xmit_done (Jonathan Toppins) [1781388] - [netdrv] ice: Removing hung_queue variable to use txqueue function parameter (Jonathan Toppins) [1781388] - [netdrv] ice: Add device ids for E822 devices (Jonathan Toppins) [1781951] - [netdrv] ice: Suppress Coverity warnings for xdp_rxq_info_reg (Jonathan Toppins) [1781388] - [netdrv] ice: Add a boundary check in ice_xsk_umem() (Jonathan Toppins) [1781388] - [netdrv] ice: add extra check for null Rx descriptor (Jonathan Toppins) [1781388] - [netdrv] ice: suppress checked_return error (Jonathan Toppins) [1781388] - [netdrv] ice: Demote MTU change print to debug (Jonathan Toppins) [1781388] - [netdrv] ice: Enable ip link show on the PF to display VF unicast MAC(s) (Jonathan Toppins) [1781388] - [netdrv] ice: Fix VF link state when it's IFLA_VF_LINK_STATE_AUTO (Jonathan Toppins) [1781388] - [netdrv] ice: Remove Rx flex descriptor programming (Jonathan Toppins) [1781388] - [netdrv] ice: Return error on not supported ethtool -C parameters (Jonathan Toppins) [1781388] - [netdrv] ice: Restore interrupt throttle settings after VSI rebuild (Jonathan Toppins) [1781388] - [netdrv] ice: Set default value for ITR in alloc function (Jonathan Toppins) [1781388] - [netdrv] ice: Add ice_for_each_vf() macro (Jonathan Toppins) [1781388] - [netdrv] ice: Add code to keep track of current dflt_vsi (Jonathan Toppins) [1781388] - [netdrv] ice: Fix VF spoofchk (Jonathan Toppins) [1781388] - [netdrv] ice: Support UDP segmentation offload (Jonathan Toppins) [1781388] - [netdrv] ice: Update FW API minor version (Jonathan Toppins) [1781388] - [netdrv] ice: remove pointless NULL check of port_info (Jonathan Toppins) [1781388] - [netdrv] ice: Implement ethtool ops for channels (Jonathan Toppins) [1781388] - [netdrv] ice: implement VF stats NDO (Jonathan Toppins) [1781388] - [netdrv] ice: add helpers for virtchnl (Jonathan Toppins) [1781388] - [netdrv] ice: Add ice_pf_to_dev(pf) macro (Jonathan Toppins) [1781388] - [netdrv] ice: Do not use devm* functions for local uses (Jonathan Toppins) [1781388] - [netdrv] ice: Refactor removal of VLAN promiscuous rules (Jonathan Toppins) [1781388] - [netdrv] ice: Fix setting coalesce to handle DCB configuration (Jonathan Toppins) [1781388] - [netdrv] ice: Only disable VF state when freeing each VF resources (Jonathan Toppins) [1781388] - [netdrv] ice: fix stack leakage (Jonathan Toppins) [1781388] - [netdrv] ice: Don't modify stripping for add/del VLANs on VF (Jonathan Toppins) [1781388] - [netdrv] ice: Disallow VF VLAN opcodes if VLAN offloads disabled (Jonathan Toppins) [1781388] - [netdrv] ice: Correct capabilities reporting of max TCs (Jonathan Toppins) [1781388] - [netdrv] ice: Store number of functions for the device (Jonathan Toppins) [1781388] - [netdrv] ice: fix potential infinite loop because loop counter being too small (Jonathan Toppins) [1781388] - [netdrv] ice: print opcode when printing controlq errors (Jonathan Toppins) [1781388] - [netdrv] ice: use more accurate ICE_DBG mask types (Jonathan Toppins) [1781388] - [netdrv] ice: Introduce and use ice_vsi_type_str (Jonathan Toppins) [1781388] - [netdrv] ice: remove unnecessary conditional check (Jonathan Toppins) [1781388] - [netdrv] ice: Update enum ice_flg64_bits to current specification (Jonathan Toppins) [1781388] - [netdrv] ice: delay less (Jonathan Toppins) [1781388] - [netdrv] ice: use pkg_dwnld_status instead of sq_last_status (Jonathan Toppins) [1781388] - [netdrv] ice: Change max MSI-x vector_id check in cfg_irq_map (Jonathan Toppins) [1781388] - [netdrv] ice: Check if VF is disabled for Opcode and other operations (Jonathan Toppins) [1781388] - [netdrv] ice: configure software LLDP in ice_init_pf_dcb (Jonathan Toppins) [1781388] - [netdrv] ice: Fix to change Rx/Tx ring descriptor size via ethtool with DCBx (Jonathan Toppins) [1781388] - [netdrv] ice: avoid setting features during reset (Jonathan Toppins) [1781388] - [netdrv] ice: Implement DCBNL support (Jonathan Toppins) [1781388] - [netdrv] ice: Add NDO callback to set the maximum per-queue bitrate (Jonathan Toppins) [1781388] - [netdrv] ice: Use ice_ena_vsi and ice_dis_vsi in DCB configuration flow (Jonathan Toppins) [1781388] - [netdrv] ice: Fix return value when SR-IOV is not supported (Jonathan Toppins) [1781388] - [netdrv] ice: Rename VF function ice_vc_dis_vf to match its behavior (Jonathan Toppins) [1781388] - [netdrv] ice: Get rid of ice_cleanup_header (Jonathan Toppins) [1781388] - [netdrv] ice: print PCI link speed and width (Jonathan Toppins) [1781388] - [netdrv] ice: print unsupported module message (Jonathan Toppins) [1781388] - [netdrv] ice: write register with correct offset (Jonathan Toppins) [1781388] - [netdrv] ice: Check for null pointer dereference when setting rings (Jonathan Toppins) [1781388] - [netdrv] ice: save PCI state in probe (Jonathan Toppins) [1781388] - [netdrv] ice: Adjust DCB INIT for SW mode (Jonathan Toppins) [1781388] - [netdrv] ice: fix driver unload flow (Jonathan Toppins) [1781388] - [netdrv] ice: handle DCBx non-contiguous TC request (Jonathan Toppins) [1781388] - [netdrv] ice: Update Boot Configuration Section read of NVM (Jonathan Toppins) [1781388] - [netdrv] ice: add ethtool -m support for reading i2c eeprom modules (Jonathan Toppins) [1781388] - [netdrv] ice: allow 3k MTU for XDP (Jonathan Toppins) [1781388] - [netdrv] ice: add build_skb() support (Jonathan Toppins) [1781388] - [netdrv] ice: introduce frame padding computation logic (Jonathan Toppins) [1781388] - [netdrv] ice: introduce legacy Rx flag (Jonathan Toppins) [1781388] - [netdrv] ice: Add support for AF_XDP (Jonathan Toppins) [1730487] - [netdrv] ice: Move common functions to ice_txrx_lib.c (Jonathan Toppins) [1781388] - [netdrv] ice: Add support for XDP (Jonathan Toppins) [1730487] - [netdrv] ice: get rid of per-tc flow in Tx queue configuration routines (Jonathan Toppins) [1781388] - [netdrv] ice: Introduce ice_base.c (Jonathan Toppins) [1781388] - [netdrv] net:Use skb accessors in network drivers (Jonathan Toppins) [1781388] - [powerpc] powerpc/eeh: Remove eeh_add_device_tree_late() (Myron Stowe) [1840904] - [powerpc] powerpc/eeh: Add sysfs files in late probe (Myron Stowe) [1840904] - [powerpc] powerpc: Drop using struct of_pci_range.pci_space field (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Fold pcibios_setup_device() into pcibios_bus_add_device() (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Remove pcibios_setup_bus_devices() (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Fix pcibios_setup_device() ordering (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Remove legacy debug code (Myron Stowe) [1840904] - [x86] x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE (David Arcari) [1826966] - [x86] x86/microcode/AMD: Make stub function static inline (David Arcari) [1826966] - [x86] x86/microcode/intel: Issue the revision updated message only on the BSP (David Arcari) [1826966] - [x86] x86/microcode: Update late microcode in parallel (David Arcari) [1826966] - [x86] x86/microcode/amd: Fix two -Wunused-but-set-variable warnings (David Arcari) [1826966] - [x86] x86/microcode: Fix the microcode load on CPU hotplug for real (David Arcari) [1826966] - [x86] x86/microcode, cpuhotplug: Add a microcode loader CPU hotplug callback (David Arcari) [1826966] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 353 (David Arcari) [1826966] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1826966] - [x86] treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1826966] - [x86] x86/microcode: Fix the ancient deprecated microcode loading method (David Arcari) [1826966] - [x86] x86/microcode/intel: Refactor Intel microcode blob loading (David Arcari) [1826966] - [x86] x86/microcode: Announce reload operation's completion (David Arcari) [1826966] - [x86] x86/microcode/AMD: Update copyright (David Arcari) [1826966] - [x86] x86/microcode/AMD: Check the equivalence table size when scanning it (David Arcari) [1826966] - [x86] x86/microcode/AMD: Convert CPU equivalence table variable into a struct (David Arcari) [1826966] - [x86] x86/microcode/AMD: Check microcode container data in the late loader (David Arcari) [1826966] - [x86] x86/microcode/AMD: Fix container size's type (David Arcari) [1826966] - [x86] x86/microcode/AMD: Convert early parser to the new verification routines (David Arcari) [1826966] - [x86] x86/microcode/AMD: Change verify_patch()'s return value (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move chipset-specific check into verify_patch() (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move patch family check to verify_patch() (David Arcari) [1826966] - [x86] x86/microcode/AMD: Simplify patch family detection (David Arcari) [1826966] - [x86] x86/microcode/AMD: Concentrate patch verification (David Arcari) [1826966] - [x86] x86/microcode/AMD: Cleanup verify_patch_size() more (David Arcari) [1826966] - [x86] x86/microcode/AMD: Clean up per-family patch size checks (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move verify_patch_size() up in the file (David Arcari) [1826966] - [x86] x86/microcode/AMD: Add microcode container verification (David Arcari) [1826966] - [x86] x86/microcode/AMD: Subtract SECTION_HDR_SIZE from file leftover length (David Arcari) [1826966] - [x86] x86/microcode: Make revision and processor flags world-readable (David Arcari) [1826966] - [pci] PCI: Add pci_status_get_and_clear_errors (Josef Oskera) [1840535] - [pci] PCI: Add constant PCI_STATUS_ERROR_BITS (Josef Oskera) [1840535] - [arm64] arm64: dts: ls1046ardb: set RGMII interfaces to RGMII_ID mode (Petr Oros) [1816982] - [arm64] arm64: dts: ls1043a-rdb: correct RGMII delay mode to rgmii-id (Petr Oros) [1816982] - [netdrv] net: phy: marvell: Fix pause frame negotiation (Petr Oros) [1816982] - [netdrv] net: phy: propagate an error back to the callers of phy_sfp_probe (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix clock sink configuration on ATH8030 and ATH8035 (Petr Oros) [1816982] - [netdrv] r8169: fix resume on cable plug-in (Petr Oros) [1816982] - [documentation] dt-bindings: net: remove un-implemented property (Petr Oros) [1816982] - [netdrv] net: phy: mdio-bcm-unimac: Fix clock handling (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: w/a for fld detect threshold bootstrapping issue (Petr Oros) [1816982] - [netdrv] net: phy: sfp-bus.c: get rid of docs warnings (Petr Oros) [1816982] - [netdrv] net: phy: mdio-mux-bcm-iproc: check clk_prepare_enable() return value (Petr Oros) [1816982] - [netdrv] net: phy: fix MDIO bus PM PHY resuming (Petr Oros) [1816982] - [of] drivers/of/of_mdio.c:fix of_mdiobus_register() (Petr Oros) [1816982] - [netdrv] net: phy: bcm63xx: fix OOPS due to missing driver name (Petr Oros) [1816982] - [netdrv] phylink: Improve error message when validate failed (Petr Oros) [1816982] - [netdrv] net: phy: avoid clearing PHY interrupts twice in irq handler (Petr Oros) [1816982] - [netdrv] net: phy: marvell: don't interpret PHY status unless resolved (Petr Oros) [1816982] - [netdrv] net: phy: mscc: fix firmware paths (Petr Oros) [1816982] - [netdrv] net: phy: corrected the return value for genphy_check_and_restart_aneg and genphy_c45_check_and_restart_aneg (Petr Oros) [1816982] - [documentation] docs: networking: phy: Rephrase paragraph for clarity (Petr Oros) [1816982] - [netdrv] net: phy: Avoid multiple suspends (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Fix a typo ("firsly") (Petr Oros) [1816982] - [netdrv] net: phy: restore mdio regs in the iproc mdio driver (Petr Oros) [1816982] - [netdrv] net: phy: at803x: disable vddio regulator (Petr Oros) [1816982] - [netdrv] net: mii_timestamper: fix static allocation by PHY driver (Petr Oros) [1816982] - [of] net: mdio: of: fix potential NULL pointer derefernce (Petr Oros) [1816982] - [netdrv] net: phy: add default ARCH_BCM_IPROC for MDIO_BCM_IPROC (Petr Oros) [1816982] - [netdrv] net: phy: DP83822: Add support for additional DP83825 devices (Petr Oros) [1816982] - [netdrv] phy: dp83826: Add phy IDs for DP83826N and 826NC (Petr Oros) [1816982] - [netdrv] net: phy: add new version of phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phy: rename phy_do_ioctl to phy_do_ioctl_running (Petr Oros) [1816982] - [netdrv] r8169: use generic ndo_do_ioctl handler phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phy: add generic ndo_do_ioctl handler phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phylink: allow in-band AN for USXGMII (Petr Oros) [1816982] - [netdrv] net: phy: adin: fix a warning about msleep (Petr Oros) [1816982] - [netdrv] net: phy: don't crash in phy_read/_write_mmd without a PHY driver (Petr Oros) [1816982] - [netdrv] net: phylink: Allow 2.5BASE-T, 5GBASE-T and 10GBASE-T for the 10G link modes (Petr Oros) [1816982] - [netdrv] net: phy: adin: const-ify static data (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Set FORCE_LINK_GOOD to default after reset (Petr Oros) [1816982] - [netdrv] net: phy: Maintain MDIO device and bus statistics (Petr Oros) [1816982] - [powerpc] powerpc: Add const qual to local_read() parameter (Petr Oros) [1816982] - [include] u64_stats: provide u64_stats_t type (Petr Oros) [1816982] - [documentation] Documentation: net-sysfs: Remove duplicate PHY device documentation (Petr Oros) [1816982] - [netdrv] mdio_bus: Simplify reset handling and extend to non-DT systems (Petr Oros) [1816982] - [netdrv] net: phy: Added IRQ print to phylink_bringup_phy() (Petr Oros) [1816982] - [netdrv] net: phy: DP83822: Update Kconfig with DP83825I support (Petr Oros) [1816982] - [netdrv] net: phy: DP83TC811: Fix typo in Kconfig (Petr Oros) [1816982] - [netdrv] net: phylink: add support for polling MAC PCS (Petr Oros) [1816982] - [netdrv] net: phylink: make QSGMII a valid PHY mode for in-band AN (Petr Oros) [1816982] - [uapi] mii: Add helpers for parsing SGMII auto-negotiation (Petr Oros) [1816982] - [netdrv] net: phylink: fix failure to register on x86 systems (Petr Oros) [1816982] - [netdrv] net: phy: fixed_phy: switch to using fwnode_gpiod_get_index (Petr Oros) [1816982] - [netdrv] net: phy: fixed_phy: fix use-after-free when checking link GPIO (Petr Oros) [1816982] - [netdrv] net: phylink: switch to using fwnode_gpiod_get_index() (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for configuring the RX delay on RTL8211F (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add logging for the RGMII TX delay configuration (Petr Oros) [1816982] - [netdrv] net: mdio: of: Register discovered MII time stampers (Petr Oros) [1816982] - [documentation] dt-bindings: ptp: Introduce MII time stamping devices (Petr Oros) [1816982] - [netdrv] net: Add a layer for non-PHY MII time stamping drivers (Petr Oros) [1816982] - [netdrv] net: Introduce a new MII time stamping interface (Petr Oros) [1816982] - [netdrv] net: phy: dp83640: Move the probe and remove methods around (Petr Oros) [1816982] - [netdrv] net: netcp_ethss: Use the PHY time stamping interface (Petr Oros) [1816982] - [net] net: ethtool: Use the PHY time stamping interface (Petr Oros) [1816982] - [net] net: vlan: Use the PHY time stamping interface (Petr Oros) [1816982] - [netdrv] net: macvlan: Use the PHY time stamping interface (Petr Oros) [1816982] - [include] net: phy: Introduce helper functions for time stamping support (Petr Oros) [1816982] - [include] of: mdio: Add missing inline to of_mdiobus_child_is_phy() dummy (Petr Oros) [1816982] - [netdrv] net: phy: aquantia: add suspend / resume ops for AQR105 (Petr Oros) [1816982] - [netdrv] net: phy: ensure that phy IDs are correctly typed (Petr Oros) [1816982] - [include] mod_devicetable: fix PHY module format (Petr Oros) [1816982] - [of] of: mdio: export of_mdiobus_child_is_phy (Petr Oros) [1816982] - [netdrv] net: sfp: report error on failure to read sfp soft status (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use genphy_check_and_restart_aneg() (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use phy_modify_changed() (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use existing clause 37 definitions (Petr Oros) [1816982] - [netdrv] net: phy: marvell: consolidate phy status reading (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use positive logic for link state (Petr Oros) [1816982] - [netdrv] net: phy: marvell: initialise link partner state earlier (Petr Oros) [1816982] - [netdrv] net: phy: marvell: rearrange to use genphy_read_lpa() (Petr Oros) [1816982] - [netdrv] net: phy: provide and use genphy_read_status_fixed() (Petr Oros) [1816982] - [netdrv] net: phy: add genphy_check_and_restart_aneg() (Petr Oros) [1816982] - [netdrv] net: phy: use phy_resolve_aneg_pause() (Petr Oros) [1816982] - [netdrv] net: phy: remove redundant .aneg_done initialisers (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Remove unneeded semicolon (Petr Oros) [1816982] - [netdrv] net: phylink: extend clause 45 PHY validation workaround (Petr Oros) [1816982] - [netdrv] net: phylink: improve clause 45 PHY ksettings_set implementation (Petr Oros) [1816982] - [netdrv] net: phylink: fix interface passed to mac_link_up (Petr Oros) [1816982] - [netdrv] net: phylink: propagate phy_attach_direct() return code (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add rx-fifo-depth and tx-fifo-depth (Petr Oros) [1816982] - [documentation] dt-bindings: dp83867: Convert fifo-depth to common fifo-depth and make optional (Petr Oros) [1816982] - [netdrv] net: sfp: re-attempt probing for phy (Petr Oros) [1816982] - [netdrv] net: sfp: error handling for phy probe (Petr Oros) [1816982] - [netdrv] net: sfp: rename sm_retries (Petr Oros) [1816982] - [netdrv] net: sfp: use a definition for the fault recovery attempts (Petr Oros) [1816982] - [netdrv] net: sfp: add support for Clause 45 PHYs (Petr Oros) [1816982] - [netdrv] net: phy: add Broadcom BCM84881 PHY driver (Petr Oros) [1816982] - [netdrv] net: phylink: make Broadcom BCM84881 based SFPs work (Petr Oros) [1816982] - [netdrv] net: phylink: delay MAC configuration for copper SFP modules (Petr Oros) [1816982] - [netdrv] net: phylink: split phylink_sfp_module_insert() (Petr Oros) [1816982] - [netdrv] net: phylink: split link_an_mode configured and current settings (Petr Oros) [1816982] - [netdrv] net: phylink: support Clause 45 PHYs on SFP+ modules (Petr Oros) [1816982] - [netdrv] net: phylink: re-split __phylink_connect_phy() (Petr Oros) [1816982] - [netdrv] net: mdio-i2c: add support for Clause 45 accesses (Petr Oros) [1816982] - [netdrv] net: sfp: move phy_start()/phy_stop() to phylink (Petr Oros) [1816982] - [netdrv] net: sfp: add module start/stop upstream notifications (Petr Oros) [1816982] - [netdrv] net: sfp: derive interface mode from ethtool link modes (Petr Oros) [1816982] - [netdrv] net: sfp: remove incomplete 100BASE-FX and 100BASE-LX support (Petr Oros) [1816982] - [netdrv] net: sfp: avoid tx-fault with Nokia GPON module (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: fix hfs boot in rgmii mode (Petr Oros) [1816982] - [netdrv] phy: mdio-thunder: add missed pci_release_regions in remove (Petr Oros) [1816982] - [netdrv] net: sfp: fix hwmon (Petr Oros) [1816982] - [netdrv] net: sfp: fix unbind (Petr Oros) [1816982] - [netdrv] net: phy: realtek: fix using paged operations with RTL8105e / RTL8208 (Petr Oros) [1816982] - [netdrv] net: phy: Use the correct style for SPDX License Identifier (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Fix return paths to return proper values (Petr Oros) [1816982] - [netdrv] net: phy: add helpers phy_(un)lock_mdio_bus (Petr Oros) [1816982] - [netdrv] mdio_bus: don't use managed reset-controller (Petr Oros) [1816982] - [netdrv] net: phy: initialise phydev speed and duplex sanely (Petr Oros) [1816982] - [netdrv] net: phy: remove phy_ethtool_sset() (Petr Oros) [1816982] - [netdrv] net: sfp: soft status and control support (Petr Oros) [1816982] - [netdrv] net: sfp: add some quirks for GPON modules (Petr Oros) [1816982] - [netdrv] net: sfp: add support for module quirks (Petr Oros) [1816982] - [netdrv] net: phylink: fix link mode modification in PHY mode (Petr Oros) [1816982] - [netdrv] net: phylink: update documentation on create and destroy (Petr Oros) [1816982] - [netdrv] mdio_bus: Fix init if CONFIG_RESET_CONTROLLER=n (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: fix return of uninitialized variable ret (Petr Oros) [1816982] - [netdrv] phy: mdio-sun4i: add missed regulator_disable in remove (Petr Oros) [1816982] - [netdrv] mscc.c: fix semicolon.cocci warnings (Petr Oros) [1816982] - [netdrv] net: phy: avoid matching all-ones clause 45 PHY IDs (Petr Oros) [1816982] - [netdrv] net: phylink: update to use phy_support_asym_pause() (Petr Oros) [1816982] - [netdrv] net: phy: marvell10g: add SFP+ support (Petr Oros) [1816982] - [netdrv] net: phy: add core phylib sfp support (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Add TI dp83869 phy (Petr Oros) [1816982] - [documentation] dt-bindings: net: dp83869: Add TI dp83869 phy (Petr Oros) [1816982] - [netdrv] mscc.c: Add support for additional VSC PHYs (Petr Oros) [1816982] - [netdrv] net: sfp: fix spelling mistake "requies" -> "requires" (Petr Oros) [1816982] - [netdrv] net: sfp: allow modules with slow diagnostics to probe (Petr Oros) [1816982] - [netdrv] net: sfp: allow sfp to probe slow to initialise GPON modules (Petr Oros) [1816982] - [netdrv] net: sfp: move module insert reporting out of probe (Petr Oros) [1816982] - [netdrv] net: sfp: split power mode switching from probe (Petr Oros) [1816982] - [netdrv] net: sfp: track upstream's attachment state in state machine (Petr Oros) [1816982] - [netdrv] net: sfp: ensure TX_FAULT has deasserted before probing the PHY (Petr Oros) [1816982] - [netdrv] net: sfp: allow fault processing to transition to other states (Petr Oros) [1816982] - [netdrv] net: sfp: eliminate mdelay() from PHY probe (Petr Oros) [1816982] - [netdrv] net: sfp: split the PHY probe from sfp_sm_mod_init() (Petr Oros) [1816982] - [netdrv] net: sfp: control TX_DISABLE and phy only from main state machine (Petr Oros) [1816982] - [netdrv] net: sfp: avoid power switch on address-change modules (Petr Oros) [1816982] - [netdrv] net: sfp: parse SFP power requirement earlier (Petr Oros) [1816982] - [netdrv] net: sfp: rename T_PROBE_WAIT to T_SERIAL (Petr Oros) [1816982] - [netdrv] net: sfp: handle module remove outside state machine (Petr Oros) [1816982] - [netdrv] net: sfp: rename sfp_sm_ins_next() as sfp_sm_mod_next() (Petr Oros) [1816982] - [netdrv] net: sfp: move tx disable on device down to main state machine (Petr Oros) [1816982] - [netdrv] net: sfp: move sfp sub-state machines into separate functions (Petr Oros) [1816982] - [netdrv] net: sfp: fix sfp_bus_put() kernel documentation (Petr Oros) [1816982] - [include] net: sfp: fix sfp_bus_add_upstream() warning (Petr Oros) [1816982] - [netdrv] net: sfp: rework upstream interface (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add missing dependency on CONFIG_REGULATOR (Petr Oros) [1816982] - [netdrv] net: phy: at803x: remove config_init for AR9331 (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix the PHY names (Petr Oros) [1816982] - [netdrv] net: phy: at803x: mention AR8033 as same as AR8031 (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add device tree binding (Petr Oros) [1816982] - [documentation] dt-bindings: net: phy: Add support for AT803X (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix Kconfig description (Petr Oros) [1816982] - [netdrv] net: phylink: Fix phylink_dbg() macro (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add downshift support for 88E1145 (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add PHY tunable support for more PHY versions (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add downshift support for M88E1111 (Petr Oros) [1816982] - [netdrv] net: phy: marvell: fix downshift function naming (Petr Oros) [1816982] - [netdrv] net: phy: marvell: fix typo in constant MII_M1011_PHY_SRC_DOWNSHIFT_MASK (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: support Wake on LAN (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: move dt parsing to probe (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: enable robust auto-mdix (Petr Oros) [1816982] - [netdrv] net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: add 1000Base-X support for BCM54616S (Petr Oros) [1816982] - [netdrv] net: phy: add support for clause 37 auto-negotiation (Petr Oros) [1816982] - [netdrv] net: phy: modify assignment to OR for dev_flags in phy_attach_direct (Petr Oros) [1816982] - [netdrv] net: phy: marvell: remove superseded function marvell_set_downshift (Petr Oros) [1816982] - [netdrv] net: phy: marvell: support downshift as PHY tunable (Petr Oros) [1816982] - [netdrv] net: phy: avoid NPE if read_page/write_page callbacks are not available (Petr Oros) [1816982] - [netdrv] net: phy: micrel: Update KSZ87xx PHY name (Petr Oros) [1816982] - [netdrv] net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs (Petr Oros) [1816982] - [netdrv] net: phy: Fix "link partner" information disappear issue (Petr Oros) [1816982] - [netdrv] net: sfp: move fwnode parsing into sfp-bus layer (Petr Oros) [1816982] - [netdrv] net: phylink: use more linkmode_* (Petr Oros) [1816982] - [netdrv] phylink: fix kernel-doc warnings (Petr Oros) [1816982] - [netdrv] net: phy: mscc: make arrays static, makes object smaller (Petr Oros) [1816982] - [netdrv] net: phy: at803x: use operating parameters from PHY-specific status (Petr Oros) [1816982] - [netdrv] net: phy: extract pause mode (Petr Oros) [1816982] - [netdrv] net: phy: extract link partner advertisement reading (Petr Oros) [1816982] - [netdrv] net: phy: allow for reset line to be tied to a sleepy GPIO controller (Petr Oros) [1816982] - [documentation] docs: networking: phy: Improve phrasing (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Use bcm54xx_config_clock_delay() for BCM54612E (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Fix RGMII delays configuration for BCM54210E (Petr Oros) [1816982] - [netdrv] net: phy: at803x: remove probe and struct at803x_priv (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add ar9331 support (Petr Oros) [1816982] - [of] of: mdio: Fix a signedness bug in of_phy_get_and_connect() (Petr Oros) [1816982] - [netdrv] net/phy: fix DP83865 10 Mbps HDX loopback disable function (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable (Petr Oros) [1816982] - [net] ethtool: implement Energy Detect Powerdown support via phy-tunable (Petr Oros) [1816982] - [netdrv] net: mdio: switch to using gpiod_get_optional() (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add SGMII mode type switching (Petr Oros) [1816982] - [documentation] net: phy: dp83867: Add documentation for SGMII mode type (Petr Oros) [1816982] - [netdrv] net: phylink: Fix flow control resolution (Petr Oros) [1816982] - [netdrv] net: phy: Do not check Link status when loopback is enabled (Petr Oros) [1816982] - [netdrv] net: phy: gmii2rgmii: Dont use priv field in phy device (Petr Oros) [1816982] - [include] include: mdio: Add driver data helpers (Petr Oros) [1816982] - [netdrv] net: phy: force phy suspend when calling phy_stop (Petr Oros) [1816982] - [netdrv] phy: mdio-sun4i: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-mux-meson-g12a: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-moxart: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-hisi-femac: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-bcm-iproc: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] net: phy: sfp: Add labels to hwmon sensors (Petr Oros) [1816982] - [netdrv] net: phy: remove genphy_config_init (Petr Oros) [1816982] - [netdrv] net: phy: remove calls to genphy_config_init (Petr Oros) [1816982] - [netdrv] net: phy: realtek: support NBase-T MMD EEE registers on RTL8125 (Petr Oros) [1816982] - [uapi] net: phy: add EEE-related constants (Petr Oros) [1816982] - [documentation] dt-bindings: net: add bindings for ADIN PHY driver (Petr Oros) [1816982] - [netdrv] net: phy: adin: add ethtool get_stats support (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement downshift configuration via phy-tunable (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement PHY subsystem software reset (Petr Oros) [1816982] - [netdrv] net: phy: adin: add EEE translation layer from Clause 45 to Clause 22 (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support MDI/MDIX/Auto-MDI selection (Petr Oros) [1816982] - [netdrv] net: phy: adin: make RMII fifo depth configurable (Petr Oros) [1816982] - [netdrv] net: phy: adin: make RGMII internal delays configurable (Petr Oros) [1816982] - [netdrv] net: phy: adin: configure RGMII/RMII/MII modes on config (Petr Oros) [1816982] - [netdrv] net: phy: adin: add {write,read}_mmd hooks (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support for interrupts (Petr Oros) [1816982] - [netdrv] net: phy: adin: hook genphy_{suspend, resume} into the driver (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support for Analog Devices PHYs (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for EEE registers on integrated PHY's (Petr Oros) [1816982] - [netdrv] net: phy: swphy: emulate register MII_ESTATUS (Petr Oros) [1816982] - [netdrv] net: phy: read MII_CTRL1000 in genphy_read_status only if needed (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add NBase-T PHY auto-detection (Petr Oros) [1816982] - [netdrv] net: phy: let phy_speed_down/up support speeds >1Gbps (Petr Oros) [1816982] - [netdrv] net: phy: add phy_speed_down_core and phy_resolve_min_speed (Petr Oros) [1816982] - [netdrv] net: phy: add __set_linkmode_max_speed (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for the 2.5Gbps PHY in RTL8125 (Petr Oros) [1816982] - [netdrv] net: phy: add phy_modify_paged_changed (Petr Oros) [1816982] - [netdrv] net: phy: prepare phylib to deal with PHY's extending Clause 22 (Petr Oros) [1816982] - [netdrv] net: phy: simplify genphy_config_advert by using the linkmode_adv_to_xxx_t functions (Petr Oros) [1816982] - [netdrv] net: phy: at803x: stop switching phy delay config needlessly (Petr Oros) [1816982] - [netdrv] net: mdio-octeon: Fix Kconfig warnings and build errors (Petr Oros) [1816982] - [netdrv] net: phy: xgene: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] net: phy: Add mdio-aspeed (Petr Oros) [1816982] - [netdrv] net: phy: phy_led_triggers: Fix a possible null-pointer dereference in phy_led_trigger_change_speed() (Petr Oros) [1816982] - [netdrv] net: phylink: Fix flow control for fixed-link (Petr Oros) [1816982] - [netdrv] net: phylink: don't start and stop SGMII PHYs in SFP modules twice (Petr Oros) [1816982] - [netdrv] net: phy: Make use of linkmode_mod_bit helper (Petr Oros) [1816982] - [netdrv] net: stmmac: enable clause 45 mdio support (Petr Oros) [1816982] - [documentation] doc: phy: document some PHY_INTERFACE_MODE_xxx settings (Petr Oros) [1816982] - [netdrv] Revert "net: phylink: set the autoneg state in phylink_phy_change" (Petr Oros) [1816982] - [netdrv] net: phy: sfp: clean up a condition (Petr Oros) [1816982] - [netdrv] net: phylink: set the autoneg state in phylink_phy_change (Petr Oros) [1816982] - [netdrv] net: phy: Add more 1000BaseX support detection (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Add genphy_suspend and genphy_resume for BCM5464 (Petr Oros) [1816982] - [netdrv] net: sfp: add mutex to prevent concurrent state checks (Petr Oros) [1816982] - [netdrv] net: sfp: Stop SFP polling and interrupt handling during shutdown (Petr Oros) [1816982] - [netdrv] net: phy: Add detection of 1000BaseX link mode support (Petr Oros) [1816982] - [netdrv] net: phy: remove state PHY_FORCING (Petr Oros) [1816982] - [netdrv] net: phy: export phy_queue_state_machine (Petr Oros) [1816982] - [netdrv] net: phy: add callback for custom interrupt handler to struct phy_driver (Petr Oros) [1816982] - [netdrv] net: phy: enable interrupts when PHY is attached already (Petr Oros) [1816982] - [netdrv] net: phy: sfp: enable i2c-bus detection on ACPI based systems (Petr Oros) [1816982] - [netdrv] net: phy: tja11xx: Switch to HWMON_CHANNEL_INFO() (Petr Oros) [1816982] - [netdrv] net: phylink: Add phylink_{printk, err, warn, info, dbg} macros (Petr Oros) [1816982] - [netdrv] net: phylink: Add PHYLINK_DEV operation type (Petr Oros) [1816982] - [netdrv] net: phylink: Add struct phylink_config to PHYLINK API (Petr Oros) [1816982] - [netdrv] net: phylink: Add phylink_mac_link_{up, down} wrapper functions (Petr Oros) [1816982] - [netdrv] net: phy: Add phy_standalone sysfs entry (Petr Oros) [1816982] - [netdrv] net: phy: Check against net_device being NULL (Petr Oros) [1816982] - [netdrv] net: phy: Guard against the presence of a netdev (Petr Oros) [1816982] - [netdrv] net: phy: Add phy_sysfs_create_links helper function (Petr Oros) [1816982] - [netdrv] net: sfp: remove sfp-bus use of netdevs (Petr Oros) [1816982] - [netdrv] net: sfp: add mandatory attach/detach methods for sfp buses (Petr Oros) [1816982] - [netdrv] net: phy: allow Clause 45 access via mii ioctl (Petr Oros) [1816982] - [netdrv] net: phylink: support for link gpio interrupt (Petr Oros) [1816982] - [netdrv] net: phylink: remove netdev from phylink mii ioctl emulation (Petr Oros) [1816982] - [netdrv] net: phy: bcm87xx: improve bcm87xx_config_init and feature detection (Petr Oros) [1816982] - [netdrv] net: phy: tja11xx: Add TJA11xx PHY driver (Petr Oros) [1816982] - [netdrv] net: phy: aquantia: add USXGMII support and warn if XGMII mode is set (Petr Oros) [1816982] - [documentation] dt-bindings: net: document new usxgmii phy mode (Petr Oros) [1816982] - [include] net: phy: add interface mode PHY_INTERFACE_MODE_USXGMII (Petr Oros) [1816982] - [netdrv] net: phy: lxt: Add suspend/resume support to LXT971 and LXT973 (Petr Oros) [1816982] - [netdrv] net: phy: Make phy_basic_t1_features use base100t1 (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Allocate state struct in probe (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Validate FIFO depth property (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: IO impedance is not dependent on RGMII delay (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Use unsigned variables to store unsigned properties (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Rework delay rgmii delay handling (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add ability to disable output clock (Petr Oros) [1816982] - [documentation] dt-bindings: phy: dp83867: Add documentation for disabling clock output (Petr Oros) [1816982] - [documentation] dt-bindings: phy: dp83867: Describe how driver behaves w.r.t rgmii delay (Petr Oros) [1816982] - [documentation] Documentation: net: phy: switch documentation to rst format (Petr Oros) [1816982] - [of] of: mdio: Support fixed links in of_phy_get_and_connect() (Petr Oros) [1816982] - [documentation] doc: add phylink documentation to the networking book (Petr Oros) [1816982] - [include] net: phylink: update mac_config() documentation (Petr Oros) [1816982] - [tools] libbpf: use .so dynamic symbols for abi check (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Install generated test progs (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Fix memory leak caused by not freeing entry in unregister_ftrace_direct() (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support CO-RE relocations for LDX/ST/STX instructions (Yauheni Kaliuta) [1813370] - [include] bpf: Add bpf_jit_blinding_enabled for !CONFIG_BPF_JIT (Yauheni Kaliuta) [1813370] - [tools] tools, bpf_asm: Warn when jumps are out of range (Yauheni Kaliuta) [1813370] - [include] bpf: Add typecast to bpf helpers to help BTF generation (Yauheni Kaliuta) [1813370] - [trace] bpf: Add typecast to raw_tracepoints to help BTF generation (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix build on read-only filesystems (Yauheni Kaliuta) [1813370] - [tools] bpf: Add further test_verifier cases for record_func_key (Yauheni Kaliuta) [1813370] - [net] bpf: Fix record_func_key to perform backtracking on r3 (Yauheni Kaliuta) [1813370] - [net] bpf: Fix missing prog untrack in release_maps (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: fix syscall_tp due to unused syscall (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Replace symbol compare of trace_event (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Test function_graph tracer and bpf trampoline together (Yauheni Kaliuta) [1813370] - [net] bpf: Make BPF trampoline use register_ftrace_direct() API (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add modify_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add information on number of page groups allocated (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Tell objtool to ignore nondeterministic ftrace stack layout (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Add a counter to test function_graph with direct (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Add register_ftrace_direct() for custom trampolines (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add another check for match in register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add ftrace_find_direct_func() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Separate out the copying of a ftrace_hash from __ftrace_hash_move() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Separate out functionality from ftrace_location_range() (Yauheni Kaliuta) [1813370] - [net] bpf: Fix build in minimal configurations, again (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add a fexit/bpf2bpf test with target bpf prog no callees (Yauheni Kaliuta) [1813370] - [net] bpf: Fix a bug when getting subprog 0 jited image in check_attach_btf_id (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Bring back c++ include/link test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Don't hard-code root cgroup id (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix broken xdp_rxq_info due to map order assumptions (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix readelf output parsing for Fedora (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix readelf output parsing on powerpc with recent binutils (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: correct perror strings (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: test_sockmap: handle file creation failures gracefully (Yauheni Kaliuta) [1813370] - [net] bpf: Fix build in minimal configurations (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix up generation of bpf_helper_defs.h (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix global variable relocation (Yauheni Kaliuta) [1813370] - [net] bpf: Fix static checker warning (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix usage of u32 in userspace code (Yauheni Kaliuta) [1813370] - [net] bpf: Simplify __bpf_arch_text_poke poke type handling (Yauheni Kaliuta) [1813370] - [tools] bpf: Introduce BPF_TRACE_x helper for the tracing tests (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add various tail call test cases (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Emit patchable direct jump as tail call (Yauheni Kaliuta) [1813370] - [net] bpf: Constant map key tracking for prog array pokes (Yauheni Kaliuta) [1813370] - [net] bpf: Add poke dependency tracking for prog array maps (Yauheni Kaliuta) [1813370] - [include] bpf: Add initial poke descriptor table for jit images (Yauheni Kaliuta) [1813370] - [net] bpf: Move owner type, jited info into array auxiliary data (Yauheni Kaliuta) [1813370] - [net] bpf: Move bpf_free_used_maps into sleepable section (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Generalize and extend bpf_arch_text_poke for direct jumps (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add BPF trampoline performance test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Ensure core_reloc_kernel is reading test_progs's data only (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add verifier tests for better jmp32 register bounds (Yauheni Kaliuta) [1813370] - [net] bpf: Provide better register bounds after jmp32 instructions (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Integrate verbose verifier log into test_progs (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support initialized global variables (Yauheni Kaliuta) [1813370] - [tools] selftests, bpftool: Skip the build test if not in tree (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix various errors and warning reported by checkpatch.pl (Yauheni Kaliuta) [1813370] - [tools] selftests, bpftool: Set EXIT trap after usage function (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Ensure no DWARF relocations for BPF object files (Yauheni Kaliuta) [1813370] - [tools] tools, bpftool: Fix warning on ignored return value for 'read' (Yauheni Kaliuta) [1813370] - [net] bpf: Switch bpf_map_{area_alloc, area_mmapable_alloc}() to u64 size (Yauheni Kaliuta) [1813370] - [net] bpf: Make array_map_mmap static (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Enforce no-ALU32 for test_progs-no_alu32 (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Remove JITed image size limitations (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use lg(f)rl when long displacement cannot be used (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use lgrl instead of lg where possible (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Load literal pool register using larl (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Align literal pool entries (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use relative long branches (Yauheni Kaliuta) [1813370] - [net] bpf: Fix memory leak on object 'data' (Yauheni Kaliuta) [1813370] - [tools] selftests, bpf: Workaround an alu32 sub-register spilling issue (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add BPF_TYPE_MAP_ARRAY mmap() tests (Yauheni Kaliuta) [1813370] - [tools] libbpf: Make global data internal arrays mmap()-able, if possible (Yauheni Kaliuta) [1813370] - [net] bpf: Add mmap() support for BPF_MAP_TYPE_ARRAY (Yauheni Kaliuta) [1813370] - [netdrv] bpf: Convert bpf_prog refcnt to atomic64_t (Yauheni Kaliuta) [1813370] - [netdrv] net: thunderx: set xdp_prog to NULL if bpf_prog_add fails (Yauheni Kaliuta) [1813370] - [net] bpf: Switch bpf_map ref counter to atomic64_t so bpf_map_inc() never fails (Yauheni Kaliuta) [1813370] - [lib] locking/atomic: Use s64 for atomic64 (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make conditional inc/dec ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make unconditional inc/dec ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make test ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic64_fetch_add_unless() optional (Yauheni Kaliuta) [1813370] - [powerpc] atomics/powerpc: Define atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [lib] atomics/generic: Define atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [include] atomics: Prepare for atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic_fetch_add_unless() optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic64_inc_not_zero() optional (Yauheni Kaliuta) [1813370] - [include] atomics: Make conditional ops return 'bool' (Yauheni Kaliuta) [1813370] - [net] atomics/treewide: Remove atomic_inc_not_zero_hint() (Yauheni Kaliuta) [1813370] - [net] atomics/treewide: Rename __atomic_add_unless() => atomic_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add a test for attaching BPF prog to another BPF prog and subprog (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Extend test_pkt_access test (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for attaching BPF programs to other BPF programs (Yauheni Kaliuta) [1813370] - [net] bpf: Support attaching tracing BPF program to other BPF programs (Yauheni Kaliuta) [1813370] - [net] bpf: Compare BTF types of functions arguments with actual types (Yauheni Kaliuta) [1813370] - [net] bpf: Annotate context types (Yauheni Kaliuta) [1813370] - [net] bpf: Fix race in btf_resolve_helper_id() (Yauheni Kaliuta) [1813370] - [x86] bpf: Reserve space for BPF trampoline in BPF programs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add stress test for maximum number of progs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add combined fentry/fexit test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add fexit tests for BPF trampoline (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add test for BPF trampoline (Yauheni Kaliuta) [1813370] - [net] bpf: Add kernel test functions for fentry testing (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Simple test for fentry/fexit (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support to attach to fentry/fexit tracing progs (Yauheni Kaliuta) [1813370] - [tools] libbpf: Introduce btf__find_by_name_kind() (Yauheni Kaliuta) [1813370] - [net] bpf: Introduce BPF trampoline (Yauheni Kaliuta) [1813370] - [x86] bpf: Add bpf_arch_text_poke() helper (Yauheni Kaliuta) [1813370] - [x86] bpf: Refactor x86 JIT into helpers (Yauheni Kaliuta) [1813370] - [documentation] bpf, doc: Change right arguments for JIT example code (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add missing option to xdpsock usage (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Remove duplicate option from xdpsock (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Make sure JIT passes do not increase code size (Yauheni Kaliuta) [1813370] - [net] bpf: Support doubleword alignment in bpf_jit_binary_alloc (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: adjust Makefile and README.rst (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add missing object file to TEST_FILES (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Workaround a verifier failure for test_progs (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use Rx-only and Tx-only sockets in xdpsock (Yauheni Kaliuta) [1813370] - [tools] libbpf: Allow for creating Rx or Tx only AF_XDP sockets (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add XDP_SHARED_UMEM support to xdpsock (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support XDP_SHARED_UMEM with external XDP program (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add tests for automatic map unpinning on load failure (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: update map definition to new syntax BTF-defined map (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Update outdated error message (Yauheni Kaliuta) [1813370] - [tools] bpf: Add cb access in kfree_skb test (Yauheni Kaliuta) [1813370] - [net] bpf: Add array support to btf_struct_access (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Remove unused SEEN_RET0, SEEN_REG_AX and ret0_ip (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Wrap JIT macro parameter usages in parentheses (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use kvcalloc for addrs array (Yauheni Kaliuta) [1813370] - [net] bpf: Account for insn->off when doing bpf_probe_read_kernel (Yauheni Kaliuta) [1813370] - [tools] libbpf: Simplify BPF_CORE_READ_BITFIELD_PROBED usage (Yauheni Kaliuta) [1813370] - [tools] selftests/bps: Clean up removed ints relocations negative tests (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: log direct file writes (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add field size relocation tests (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Add relocatable bitfield reading tests (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for field size relocations (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for relocatable bitfields (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Remove too strict field offset relo test cases (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add selftest to read/write sockaddr from user space (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Convert prog tests to probe_read_{user, kernel}{, _str} helper (Yauheni Kaliuta) [1813370] - [samples] bpf, samples: Use bpf_probe_read_user where appropriate (Yauheni Kaliuta) [1813370] - [net] bpf: Switch BPF probe insns to bpf_probe_read_kernel (Yauheni Kaliuta) [1813370] - [kernel] bpf: Add probe_read_{user, kernel} and probe_read_{user, kernel}_str helpers (Yauheni Kaliuta) [1813370] - [kernel] bpf: Make use of probe_user_write in probe write helper (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add strict non-pagefault kernel-space read function (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add non-pagefault user-space write function (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add non-pagefault user-space read functions (Yauheni Kaliuta) [1813370] - [tools] selftests: Add tests for automatic map pinning (Yauheni Kaliuta) [1813370] - [net] bpf: Implement map_gen_lookup() callback for XSKMAP (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for prog_tracing (Yauheni Kaliuta) [1813370] - [net] bpf: Replace prog_raw_tp+btf_id with prog_tracing (Yauheni Kaliuta) [1813370] - [net] bpf: Fix bpf jit kallsym access (Yauheni Kaliuta) [1813370] - [documentation] bpf: Add s390 testing documentation (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Test narrow load from bpf_sysctl.write (Yauheni Kaliuta) [1813370] - [net] bpf: Enforce 'return 0' in BTF-enabled raw_tp programs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Restore $(OUTPUT)/test_stub.o rule (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Use -m{little, big}-endian for clang (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix .gitignore to ignore no_alu32/ (Yauheni Kaliuta) [1813370] - [net] bpf: Prepare btf_ctx_access for non raw_tp use case (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix strncat bounds error in libbpf_prog_type_by_name (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix LDLIBS order (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Move test_section_names into test_progs and fix it (Yauheni Kaliuta) [1813370] - [tools] tools/bpf: Turn on llvm alu32 attribute by default (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Get rid of a bunch of explicit BPF program type setting (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Make reference_tracking test use subtests (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Make a copy of subtest name (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add uprobe/uretprobe and tp/raw_tp section suffixes (Yauheni Kaliuta) [1813370] - [tools] bpf, libbpf: Add kernel version section parsing back (Yauheni Kaliuta) [1813370] - [kernel] bpf: Fix build error without CONFIG_NET (Yauheni Kaliuta) [1813370] - [net] bpf: Fix bpf_attr.attach_btf_id check (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Remove test_libbpf.sh and test_libbpf_open (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Move test_queue_stack_map.h into progs/ where it belongs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Replace test_progs and test_maps w/ general rule (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add simple per-test targets to Makefile (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Switch test_maps to test_progs' test.h format (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Teach test_progs to cd into subdir (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Restore the netns after flow dissector reattach test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add kfree_skb raw_tp test (Yauheni Kaliuta) [1813370] - [net] bpf: Check types of arguments passed into helpers (Yauheni Kaliuta) [1813370] - [net] bpf: Add support for BTF pointers to x86 JIT (Yauheni Kaliuta) [1813370] - [net] bpf: Add support for BTF pointers to interpreter (Yauheni Kaliuta) [1813370] - [net] bpf: Attach raw_tp program with BTF via type name (Yauheni Kaliuta) [1813370] - [net] bpf: Implement accurate raw_tp context access via BTF (Yauheni Kaliuta) [1813370] - [tools] libbpf: Auto-detect btf_id of BTF-based raw_tracepoints (Yauheni Kaliuta) [1813370] - [net] bpf: Add attach_btf_id attribute to program load (Yauheni Kaliuta) [1813370] - [net] bpf: Process in-kernel BTF (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: Add selftest for __sk_buff tstamp (Yauheni Kaliuta) [1813370] - [net] bpf: Allow __sk_buff tstamp in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Remove obsolete pahole/BTF support detection (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Enforce libbpf build before BPF programs are built (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add preparation steps and sysroot info to readme (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add sysroot support (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Provide C/LDFLAGS to libbpf (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add C/LDFLAGS to libbpf.so and test_libpf targets (Yauheni Kaliuta) [1813370] - [tools] libbpf: Don't use cxx to test_libpf target (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use target CC environment for HDR_PROBE (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use own flags but not HOSTCFLAGS (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Base target programs rules on Makefile.target (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add makefile.target for separate CC target build (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Drop unnecessarily inclusion for bpf_load (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use __LINUX_ARM_ARCH__ selector for arm (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use own EXTRA_CFLAGS for clang commands (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use --target from cross-compile (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix cookie_uid_helper_example obj build (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix HDR_PROBE "echo" (Yauheni Kaliuta) [1813370] - [tools] libbpf: Handle invalid typedef emitted by old GCC (Yauheni Kaliuta) [1813370] - [tools] libbpf: Generate more efficient BPF_CORE_READ code (Yauheni Kaliuta) [1813370] - [net] bpf: Fix cast to pointer from integer of different size warning (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Check that flow dissector can be re-attached (Yauheni Kaliuta) [1813370] - [net] flow_dissector: Allow updating the flow dissector program atomically (Yauheni Kaliuta) [1813370] - [include] bpf: Align struct bpf_prog_stats (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add read-only map values propagation tests (Yauheni Kaliuta) [1813370] - [net] bpf: Track contents of read-only maps as scalars (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Convert test_btf_dump into test_progs test (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Add max_pckt_size option at xdp_adjust_tail (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: add test for BPF flow dissector in the root namespace (Yauheni Kaliuta) [1813370] - [net] bpf/flow_dissector: add mode to enforce global BPF flow dissector (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Trivial - fix spelling mistake in usage (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix dependency ordering for attach_probe test (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add cscope and tags targets to Makefile (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: switch tests to new bpf_object__open_{file, mem}() APIs (Yauheni Kaliuta) [1813370] - [tools] bpf: Add loop test case with 32 bit reg comparison against 0 (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Small optimization in comparing against imm0 (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Correct path to include msg + path (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add static to enable_all_controllers() (Yauheni Kaliuta) [1813370] - [tools] libbpf: provide backported RHEL symbols as upstream aliases (Yauheni Kaliuta) [1813370] - [tools] libbpf: Bump current version to v0.0.6 (Yauheni Kaliuta) [1813370] - [tools] libbpf: bump up version, 0.0.5 (Yauheni Kaliuta) [1813370] - [net] cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled (Yauheni Kaliuta) [1823623 1813370] - [vfio] vfio-pci: Mask cap zero (Alex Williamson) [1840248] - [vfio] spapr_tce: Fix incorrect tce_iommu_group memory free (David Gibson) [1832386] - [fs] CIFS: fiemap: do not return EINVAL if get nothing (Leif Sahlberg) [1837180] - [fs] CIFS: Increment num_remote_opens stats counter even in case of smb2_query_dir_first (Leif Sahlberg) [1837180] - [fs] cifs: potential unintitliazed error code in cifs_getattr() (Leif Sahlberg) [1837180] - [fs] cifs: Use #define in cifs_dbg (Leif Sahlberg) [1837180] - [fs] cifs: fix rename() by ensuring source handle opened with DELETE bit (Leif Sahlberg) [1837180] - [fs] cifs: add missing mount option to /proc/mounts (Leif Sahlberg) [1837180] - [fs] cifs: fix potential mismatch of UNC paths (Leif Sahlberg) [1837180] - [fs] cifs: enable change notification for SMB2.1 dialect (Leif Sahlberg) [1837180] - [fs] cifs: Fix mode output in debugging statements (Leif Sahlberg) [1837180] - [fs] cifs: fix mount option display for sec=krb5i (Leif Sahlberg) [1837180] - [fs] smb3: Add defines for new information level, FileIdInformation (Leif Sahlberg) [1837180] - [fs] smb3: print warning once if posix context returned on open (Leif Sahlberg) [1837180] - [fs] smb3: add one more dynamic tracepoint missing from strict fsync path (Leif Sahlberg) [1837180] - [fs] cifs: fix mode bits from dir listing when mounted with modefromsid (Leif Sahlberg) [1837180] - [fs] cifs: fix channel signing (Leif Sahlberg) [1837180] - [fs] cifs: add SMB3 change notification support (Leif Sahlberg) [1837180] - [fs] cifs: make multichannel warning more visible (Leif Sahlberg) [1837180] - [fs] cifs: Add tracepoints for errors on flush or fsync (Leif Sahlberg) [1837180] - [fs] cifs: log warning message (once) if out of disk space (Leif Sahlberg) [1837180] - [fs] smb3: fix problem with null cifs super block with previous patch (Leif Sahlberg) [1837180] - [fs] SMB3: Backup intent flag missing from some more ops (Leif Sahlberg) [1837180] - [fs] cifs: update internal module version number (Leif Sahlberg) [1837180] - [fs] CIFS: Fix task struct use-after-free on reconnect (Leif Sahlberg) [1837180] - [fs] cifs: use PTR_ERR_OR_ZERO() to simplify code (Leif Sahlberg) [1837180] - [fs] cifs: add support for fallocate mode 0 for non-sparse files (Leif Sahlberg) [1837180] - [fs] CIFS: Add support for setting owner info, dos attributes, and create time (Leif Sahlberg) [1837180] - [fs] cifs: remove set but not used variable 'server' (Leif Sahlberg) [1837180] - [fs] cifs: fix unitialized variable poential problem with network I/O cache lock patch (Leif Sahlberg) [1837180] - [fs] cifs: Fix return value in __update_cache_entry (Leif Sahlberg) [1837180] - [fs] cifs: Avoid doing network I/O while holding cache lock (Leif Sahlberg) [1837180] - [fs] cifs: Fix potential deadlock when updating vol in cifs_reconnect() (Leif Sahlberg) [1837180] - [fs] cifs: Merge is_path_valid() into get_normalized_path() (Leif Sahlberg) [1837180] - [fs] cifs: Introduce helpers for finding TCP connection (Leif Sahlberg) [1837180] - [fs] cifs: Get rid of kstrdup_const()'d paths (Leif Sahlberg) [1837180] - [fs] cifs: Clean up DFS referral cache (Leif Sahlberg) [1837180] - [fs] cifs: Don't use iov_iter::type directly (Leif Sahlberg) [1837180] - [fs] cifs: set correct max-buffer-size for smb2_ioctl_init() (Leif Sahlberg) [1837180] - [fs] fs/cifs/cifssmb.c: use true, false for bool variable (Leif Sahlberg) [1837180] - [fs] fs/cifs/smb2ops.c: use true, false for bool variable (Leif Sahlberg) [1837180]- [lib] XArray: Optimise xas_sibling() if !CONFIG_XARRAY_MULTI (Don Dutile) [1840916] - [include] XArray: Fix incorrect comment in header file (Don Dutile) [1840916] - [lib] XArray: Fix xas_pause for large multi-index entries (Don Dutile) [1840916] - [lib] XArray: Fix xa_find_next for large multi-index entries (Don Dutile) [1840916] - [lib] XArray tests: Add check_insert (Don Dutile) [1840916] - [documentation] XArray: Add xa_for_each_range (Don Dutile) [1840916] - [documentation] XArray: Improve documentation of search marks (Don Dutile) [1840916] - [documentation] docs: remove :c:func: annotations from xarray.rst (Don Dutile) [1840916] - [lib] XArray: Fix xas_find returning too many entries (Don Dutile) [1840916] - [lib] XArray: Fix xa_find_after with multi-index entries (Don Dutile) [1840916] - [lib] XArray: Fix infinite loop with entry at ULONG_MAX (Don Dutile) [1840916] - [include] XArray: Add wrappers for nested spinlocks (Don Dutile) [1840916] - [lib] XArray: Fix xas_pause at ULONG_MAX (Don Dutile) [1840916] - [include] xarray.h: fix kernel-doc warning (Don Dutile) [1840916] - [lib] XArray: Fix xas_next() with a single entry at 0 (Don Dutile) [1840916] - [fs] mm: fix page cache convergence regression (Don Dutile) [1840916] - [netdrv] ionic: call ionic_port_init after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: leave netdev mac alone after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: add device reset to fw upgrade down (Jonathan Toppins) [1830969] - [netdrv] ionic: refresh devinfo after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: no link check until after probe (Jonathan Toppins) [1830969] - [netdrv] phy: avoid unnecessary link-up delay in polling mode (Petr Oros) [1785663] - [x86] x86: Select HARDIRQS_SW_RESEND on x86 (David Arcari) [1840433] - [pci] PCI/AER: Fix the broken interrupt injection (David Arcari) [1840433] - [kernel] genirq: Provide interrupt injection mechanism (David Arcari) [1840433] - [kernel] genirq: Sanitize state handling in check_irq_resend() (David Arcari) [1840433] - [kernel] genirq: Add return value to check_irq_resend() (David Arcari) [1840433] - [x86] x86/apic/vector: Force interupt handler invocation to irq context (David Arcari) [1840433] - [kernel] genirq: Add protection against unsafe usage of generic_handle_irq() (David Arcari) [1840433] - [kernel] genirq/debugfs: Add missing sanity checks to interrupt injection (David Arcari) [1840433] - [include] genirq/irqdomain: Make sure all irq domain flags are distinct (David Arcari) [1840433] - [x86] x86/apic/msi: Plug non-maskable MSI affinity race (David Arcari) [1840433] - [char] char: ipmi: convert to use i2c_new_client_device() (Tony Camuso) [1832408] - [char] ipmi: kcs: Fix aspeed_kcs_probe_of_v1() (Tony Camuso) [1832408] - [char] ipmi: Add missing annotation for ipmi_ssif_lock_cond() and ipmi_ssif_unlock_cond() (Tony Camuso) [1832408] - [char] ipmi: kcs: aspeed: Implement v2 bindings (Tony Camuso) [1832408] - [char] ipmi: kcs: Finish configuring ASPEED KCS device before enable (Tony Camuso) [1832408] - [char] ipmi: fix hung processes in __get_guid() (Tony Camuso) [1832408] - [char] drivers: char: ipmi: ipmi_msghandler: Pass lockdep expression to RCU lists (Tony Camuso) [1832408] - [char] ipmi_si: Avoid spurious errors for optional IRQs (Tony Camuso) [1832408] - [base] driver core: platform: Export platform_get_irq_optional() (Tony Camuso) [1832408] - [base] driver core: platform: Introduce platform_get_irq_optional() (Tony Camuso) [1832408] - [x86] x86/efi: Update e820 with reserved EFI boot services data to fix kexec breakage (Kairui Song) [1779544] - [powerpc] powerpc/nvdimm: use H_SCM_QUERY hcall on H_OVERLAP error (Pingfan Liu) [1792125] - [powerpc] powerpc/nvdimm: Use HCALL error as the return value (Pingfan Liu) [1792125] - [scsi] scsi: sd: Signal drive managed SMR disks (Ewan Milne) [1838784] - [scsi] scsi: core: free sgtables in case command setup fails (Ewan Milne) [1838784] - [scsi] scsi: core: Allow the state change from SDEV_QUIESCE to SDEV_BLOCK (Ewan Milne) [1838784] - [scsi] scsi: sg: add sg_remove_request in sg_write (Ewan Milne) [1838784] - [scsi] scsi: sg: add sg_remove_request in sg_common_write (Ewan Milne) [1838784] - [scsi] scsi: sd: Fix optimal I/O size for devices that change reported values (Ewan Milne) [1838784] - [scsi] scsi: move scsicam_bios_param to the end of scsicam.c (Ewan Milne) [1838784] - [scsi] scsi: simplify scsi_bios_ptable (Ewan Milne) [1838784] - [scsi] scsi: core: Use scnprintf() for avoiding potential buffer overflow (Ewan Milne) [1838784] - [scsi] scsi: core: avoid repetitive logging of device offline messages (Ewan Milne) [1838784] - [scsi] scsi: core: use kobj_to_dev (Ewan Milne) [1838784] - [scsi] scsi: sd: Clear sdkp->protection_type if disk is reformatted without PI (Ewan Milne) [1838784] - [scsi] scsi: core: Fix a compiler warning triggered by the SCSI logging code (Ewan Milne) [1838784] - [scsi] scsi: core: Adjust DBD setting in MODE SENSE for caching mode page per LLD (Ewan Milne) [1838784] - [scsi] scsi: sd_zbc: Improve report zones error printout (Ewan Milne) [1838784] - [scsi] scsi: scsi_transport_sas: Fix memory leak when removing devices (Ewan Milne) [1838784] - [scsi] scsi: scsi_debug: num_tgts must be >= 0 (Ewan Milne) [1838784] - [scsi] scsi: core: Handle drivers which set sg_tablesize to zero (Ewan Milne) [1838784] - [scsi] scsi: tracing: Fix handling of TRANSFER LENGTH == 0 for READ(6) and WRITE(6) (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_ioctl(): get rid of access_ok() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_write(): get rid of access_ok()/__copy_from_user()/__get_user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_read(): get rid of access_ok()/__copy_..._user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_new_write(): don't bother with access_ok (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_write(): __get_user() can fail.. (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_new_write(): replace access_ok() + __copy_from_user() with copy_from_user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_ioctl(): fix copyout handling (Ewan Milne) [1838784] - [scsi] scsi: core: scsi_trace: Use get_unaligned_be*() (Ewan Milne) [1838784] - [scsi] drivers/scsi: Replace rcu_swap_protected() with rcu_replace_pointer() (Ewan Milne) [1838784] - [scsi] scsi: sd: define variable dif as unsigned int instead of bool (Ewan Milne) [1838784] - [scsi] scsi: core: try to get module before removing device (Ewan Milne) [1838784] - [scsi] scsi: scsi_dh_alua: handle RTPG sense code correctly during state transitions (Ewan Milne) [1838784] - [powerpc] powerpc/64: flush_inval_dcache_range() becomes flush_dcache_range() (Gustavo Duarte) [1834180] - [x86] x86/ima: use correct identifier for SetupMode variable (Diego Domingos) [1781925] - [lib] kobject: fix dereference before null check on kobj (Diego Domingos) [1781925] - [include] MODSIGN: make new include file self contained (Diego Domingos) [1781925] - [security] ima: initialize the "template" field with the default template (Diego Domingos) [1781925] - [x86] x86/ima: Check EFI_RUNTIME_SERVICES before using (Diego Domingos) [1781925] - [x86] x86/ima: check EFI SetupMode too (Diego Domingos) [1781925] - [security] ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash() (Diego Domingos) [1781925] - [security] evm: check hash algorithm passed to init_desc() (Diego Domingos) [1781925] - [base] firmware: improve LSM/IMA security behaviour (Diego Domingos) [1781925] - [lib] kobject: Add support for default attribute groups to kobj_type (Diego Domingos) [1781925] - [samples] samples/kobject: Replace foo_ktype's default_attrs field with groups (Diego Domingos) [1781925] - [x86] x86/ima: require signed kernel modules (Diego Domingos) [1781925] - [security] powerpc: Load firmware trusted keys/hashes into kernel keyring (Diego Domingos) [1781925] - [powerpc] powerpc: expose secure variables to userspace via sysfs (Diego Domingos) [1781925] - [powerpc] powerpc/powernv: Add OPAL API interface to access secure variable (Diego Domingos) [1781925] - [powerpc] powerpc/ima: fix secure boot rules in ima arch policy (Diego Domingos) [1781925] - [security] ima: Set again build_ima_appraise variable (Diego Domingos) [1781925] - [security] ima: Remove redundant policy rule set in add_rules() (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Indicate kernel modules appended signatures are enforced (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Update ima arch policy to check for blacklist (Diego Domingos) [1781925] - [security] ima: Check against blacklisted hashes for files with modsig (Diego Domingos) [1781925] - [security] ima: prevent a file already mmap'ed write to be mmap'ed execute (Diego Domingos) [1781925] - [certs] certs: Add wrapper function to check blacklisted binary hash (Diego Domingos) [1781925] - [security] ima: Make process_buffer_measurement() generic (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Define trusted boot policy (Diego Domingos) [1781925] - [powerpc] powerpc: Detect the trusted boot state of the system (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Add support to initialize ima policy rules (Diego Domingos) [1781925] - [powerpc] powerpc: Detect the secure boot mode of the system (Diego Domingos) [1781925] - [security] ima: use struct_size() in kzalloc() (Diego Domingos) [1781925] - [tools] sefltest/ima: support appended signatures (modsig) (Diego Domingos) [1781925] - [security] ima: Fix use after free in ima_read_modsig() (Diego Domingos) [1781925] - [security] ima: fix freeing ongoing ahash_request (Diego Domingos) [1781925] - [security] ima: always return negative code for error (Diego Domingos) [1781925] - [security] ima: Store the measurement again when appraising a modsig (Diego Domingos) [1781925] - [security] ima: Define ima-modsig template (Diego Domingos) [1781925] - [security] ima: Collect modsig (Diego Domingos) [1781925] - [security] ima: Implement support for module-style appended signatures (Diego Domingos) [1781925] - [security] ima: Factor xattr_verify() out of ima_appraise_measurement() (Diego Domingos) [1781925] - [security] integrity: Introduce struct evm_xattr (Diego Domingos) [1781925] - [security] ima: Add modsig appraise_type option for module-style appended signatures (Diego Domingos) [1781925] - [kernel] MODSIGN: Export module signature definitions (Diego Domingos) [1781925] - [kernel] modsign: log module name in the event of an error (Diego Domingos) [1781925] - [kernel] KEXEC: Call ima_kexec_cmdline to measure the boot command line args (Diego Domingos) [1781925] - [security] IMA: Define a new template field buf (Diego Domingos) [1781925] - [security] IMA: Define a new hook to measure the kexec boot command line arguments (Diego Domingos) [1781925] - [security] IMA: support for per policy rule template formats (Diego Domingos) [1781925] - [security] integrity: Fix __integrity_init_keyring() section mismatch (Diego Domingos) [1781925] - [security] x86/ima: fix the Kconfig dependency for IMA_ARCH_POLICY (Diego Domingos) [1781925] - [security] ima: Make arch_policy_entry static (Diego Domingos) [1781925] - [security] ima: show rules with IMA_INMASK correctly (Diego Domingos) [1781925] - [security] ima: fix wrong signed policy requirement when not appraising (Diego Domingos) [1781925] - [tools] selftests/kexec: update get_secureboot_mode (Diego Domingos) [1781925] - [tools] selftests/kexec: make kexec_load test independent of IMA being enabled (Diego Domingos) [1781925] - [tools] selftests/kexec: check kexec_load and kexec_file_load are enabled (Diego Domingos) [1781925] - [tools] selftests/kexec: Add missing '=y' to config options (Diego Domingos) [1781925] - [tools] selftests/kexec: kexec_file_load syscall test (Diego Domingos) [1781925] - [tools] selftests/kexec: define "require_root_privileges" (Diego Domingos) [1781925] - [tools] selftests/kexec: define common logging functions (Diego Domingos) [1781925] - [tools] selftests/kexec: define a set of common functions (Diego Domingos) [1781925] - [tools] selftests/kexec: cleanup the kexec selftest (Diego Domingos) [1781925] - [tools] selftests/kexec: move the IMA kexec_load selftest to selftests/kexec (Diego Domingos) [1781925] - [security] evm: remove set but not used variable 'xattr' (Diego Domingos) [1781925] - [security] security: integrity: partial revert of make ima_main explicitly non-modular (Diego Domingos) [1781925] - [security] ima: cleanup the match_token policy code (Diego Domingos) [1781925] - [security] ima: Use inode_is_open_for_write (Diego Domingos) [1781925] - [security] security: fs: make inode explicitly non-modular (Diego Domingos) [1781925] - [security] security: audit and remove any unnecessary uses of module.h (Diego Domingos) [1781925] - [security] security: integrity: make evm_main explicitly non-modular (Diego Domingos) [1781925] - [security] security: integrity: make ima_main explicitly non-modular (Diego Domingos) [1781925] - [tools] selftests/ima: kexec_load syscall test (Diego Domingos) [1781925] - [security] ima: don't measure/appraise files on efivarfs (Diego Domingos) [1781925] - [x86] x86/ima: retry detecting secure boot mode (Diego Domingos) [1781925] - [x86] x86/ima: define arch_get_ima_policy() for x86 (Diego Domingos) [1781925] - [kernel] kernel/kexec_file.c: remove some duplicated includes (Diego Domingos) [1781925] - [security] ima: open a new file instance if no read permissions (Diego Domingos) [1781925] - [security] security/integrity: constify some read-only data (Diego Domingos) [1781925] - [documentation] security: fix LSM description location (Diego Domingos) [1781925] - [security] evm: Allow non-SHA1 digital signatures (Diego Domingos) [1781925] - [security] security: export security_kernel_load_data function (Diego Domingos) [1781925] - [security] ima: based on policy warn about loading firmware (pre-allocated buffer) (Diego Domingos) [1781925] - [security] ima: prevent kexec_load syscall based on runtime secureboot flag (Diego Domingos) [1781925] - [security] module: replace the existing LSM hook in init_module (Diego Domingos) [1781925] - [security] ima: based on policy require signed firmware (sysfs fallback) (Diego Domingos) [1781925] - [security] ima: add support for arch specific policies (Diego Domingos) [1781925] - [security] ima: based on policy require signed kexec kernel images (Diego Domingos) [1781925] - [security] ima: refactor ima_init_policy() (Diego Domingos) [1781925] - [include] sysfs: Fixes __BIN_ATTR_WO() macro (Diego Domingos) [1781925] - [include] security: define new LSM hook named security_kernel_load_data (Diego Domingos) [1781925] - [kernel] kexec: add call to LSM hook in original kexec_load syscall (Diego Domingos) [1781925] - [base] firmware: add call to LSM hook before firmware sysfs fallback (Diego Domingos) [1781925] - [security] ima: add build time policy (Diego Domingos) [1781925] - [security] ima: Support platform keyring for kernel appraisal (Diego Domingos) [1781925] - [security] integrity: Remove references to module keyring (Diego Domingos) [1781925] - [powerpc] powerpc/kexec: Fix loading of kernel + initramfs with kexec_file_load() (Diego Domingos) [1781925] - [security] ima: Use designated initializers for struct ima_event_data (Diego Domingos) [1781925] - [security] ima: Update MAX_TEMPLATE_NAME_LEN to fit largest reasonable definition (Diego Domingos) [1781925] - [certs] PKCS#7: Refactor verify_pkcs7_signature() (Diego Domingos) [1781925] - [crypto] PKCS#7: Introduce pkcs7_get_digest() (Diego Domingos) [1781925] - [security] integrity: Select CONFIG_KEYS instead of depending on it (Diego Domingos) [1781925] - [powerpc] powerpc/powernv: Move opal_power_control_init() call in opal_init() (Diego Domingos) [1781925] - [security] x86/efi: move common keyring handler functions to new file (Diego Domingos) [1781925] - [security] x86/efi: remove unused variables (Diego Domingos) [1781925] - [include] sysfs: add BIN_ATTR_WO() macro (Diego Domingos) [1781925] - [x86] x86/ima: define arch_ima_get_secureboot (Diego Domingos) [1781925] - [powerpc] powerpc/pci: unmap legacy INTx interrupts of passthrough IO adapters (Steve Best) [1840279] - [powerpc] powerpc/xive: Clear the page tables for the ESB IO mapping (Steve Best) [1840279] - [hv] hyper-v: Use UUID API for exporting the GUID (Mohammed Gamal) [1828451 1815498] - [kernel] uuid: Add inline helpers to import / export UUIDs (Mohammed Gamal) [1828451 1815498] - [hv] hv: Move AEOI determination to architecture dependent code (Mohammed Gamal) [1828451 1815498] - [x86] hyper-v: Report crash data in die() when panic_on_oops is set (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Report crash register data when sysctl_record_panic_msg is not set (Mohammed Gamal) [1828451 1815498] - [x86] hyper-v: Report crash register data or kmsg before running crash kernel (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Trigger crash enlightenment only once during system crash (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Free hv_panic_page when fail to register kmsg dump (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Unload vmbus channel in hv panic callback (Mohammed Gamal) [1828451 1815498] - [hv] hv_debugfs: Make hv_debug_root static (Mohammed Gamal) [1828451 1815498] - [hv] hyperv_vmbus.h: Replace zero-length array with flexible-array member (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Ignore CHANNELMSG_TL_CONNECT_RESULT(23) (Mohammed Gamal) [1828451 1815498] - [hv] hv_balloon: Balloon up according to request page number (Mohammed Gamal) [1828451 1815498] - [hv] hv_balloon: use generic_online_page() (Mohammed Gamal) [1828451 1815498] - [mm] memory_hotplug: export generic_online_page() (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Fix crash handler reset of Hyper-V synic (Mohammed Gamal) [1828451 1815498] - [hv] hv: Replace binary semaphore with mutex (Mohammed Gamal) [1828451 1815498] - [hv] hv: balloon: Remove dependencies on guest page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Remove dependencies on guest page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: util: Specify ring buffer size using Hyper-V page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: Specify receive buffer size using Hyper-V page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Add module parameter to cap the VMBus version (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Enable VMBus protocol versions 4.1, 5.1 and 5.2 (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Introduce table of VMBus protocol versions (Mohammed Gamal) [1828451 1815498] - [pci] hv: Replace zero-length array with flexible-array member (Mohammed Gamal) [1793636] - [pci] hv: Decouple the func definition in hv_dr_state from VSP message (Mohammed Gamal) [1793636] - [pci] hv: Add support for protocol 1.3 and support PCI_BUS_RELATIONS2 (Mohammed Gamal) [1793636] - [pci] hv: Add missing kfree(hbus) in hv_pci_probe()'s error handling path (Mohammed Gamal) [1793636] - [pci] hv: Remove unnecessary type casting from kzalloc (Mohammed Gamal) [1793636] - [pci] hv: Avoid a kmemleak false positive caused by the hbus buffer (Mohammed Gamal) [1793636] - [infiniband] RDMA/srpt: Fix disabling device management (Kamal Heib) [1840016] - [misc] vhost: disable for OABI (Jason Wang) [1771441] - [include] virtio: drop vringh.h dependency (Jason Wang) [1771441] - [virtio] virtio_input: pull in slab.h (Jason Wang) [1771441] - [char] virtio-rng: pull in slab.h (Jason Wang) [1771441] - [block] virtio_blk: add a missing include (Jason Wang) [1771441] - [vdpa] vdpa: fix comment of vdpa_register_device() (Jason Wang) [1771441] - [vhost] vdpa: make vhost, virtio depend on menu (Jason Wang) [1771441] - [include] vdpa: allow a 32 bit vq alignment (Jason Wang) [1771441] - [vdpa] vdpasim: Return status in vdpasim_get_status (Jason Wang) [1771441] - [vdpa] vdpa: remove unused variables 'ifcvf' and 'ifcvf_lm' (Jason Wang) [1771441] - [vdpa] vdpa-sim: depend on HAS_DMA (Jason Wang) [1771441] - [virtio] vdpa: move to drivers/vdpa (Jason Wang) [1771441] - [virtio] virtio: Intel IFC VF driver for VDPA (Jason Wang) [1771441] - [virtio] vdpasim: vDPA device simulator (Jason Wang) [1771441] - [vhost] vhost: introduce vDPA-based backend (Jason Wang) [1771441] - [virtio] virtio: introduce a vDPA based transport (Jason Wang) [1771441] - [virtio] vDPA: introduce vDPA bus (Jason Wang) [1771441] - [vhost] vringh: IOTLB support (Jason Wang) [1771441] - [vhost] vhost: factor out IOTLB (Jason Wang) [1771441] - [vhost] vhost: allow per device message handler (Jason Wang) [1771441] - [misc] vhost: refine vhost and vringh kconfig (Jason Wang) [1771441] - [vhost] vringh: fix copy direction of vringh_iov_push_kern() (Jason Wang) [1771441] - [vhost] vhost: factor out setting vring addr and num (Jason Wang) [1771441] - [vhost] vhost: introduce helpers to get the size of metadata area (Jason Wang) [1771441] - [vhost] vhost: rename vq_iotlb_prefetch() to vq_meta_prefetch() (Jason Wang) [1771441] - [vhost] vhost: fine grain userspace memory accessors (Jason Wang) [1771441] - [vhost] vhost: generalize adding used elem (Jason Wang) [1771441] - [misc] mic: vop: Allow building on more systems (Jason Wang) [1771441] - [virtio] virtio: support VIRTIO_F_ORDER_PLATFORM (Jason Wang) [1771441] - [uapi] vhost: split structs into a separate header file (Jason Wang) [1771441] - [fs] compat_ioctl: add compat_ptr_ioctl() (Jason Wang) [1771441] - [vhost] vhost: allow vhost-scsi driver to be built-in (Jason Wang) [1771441] - [x86] arch/x86: Remove vendor specific CPU ID checks (Prarit Bhargava) [1840145] - [tools] perf vendor events amd: Update Zen1 events to V2 (Wei Huang) [1790641] - [tools] perf vendor events amd: Add Zen2 events (Wei Huang) [1790641] - [tools] perf vendor events amd: Restrict model detection for zen1 based processors (Wei Huang) [1790641] - [x86] perf/amd/uncore: Add support for Family 19h L3 PMU (Wei Huang) [1790641] - [x86] perf/amd/uncore: Make L3 thread mask code more readable (Wei Huang) [1790641] - [x86] perf/amd/uncore: Prepare L3 thread mask code for Family 19h (Wei Huang) [1790641] - [scsi] scsi: fnic: Use scnprintf() for avoiding potential buffer overflow (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: do not queue commands during fwreset (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: fix invalid stack access (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: fix use after free (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: make array dev_cmd_err static const, makes object smaller (Govindarajulu Varadarajan) [1797808]- [media] media: v4l: fix uapi mpeg slice params definition (Torez Smith) [1825410 1821835] - [uapi] v4l2-controls: add a missing include (Torez Smith) [1825410 1821835] - [dma] dma-mapping: remove dma_release_declared_memory (Torez Smith) [1825410 1821835] - [usb] usb/ohci-tmio: remove the HCD_DMA flag (Torez Smith) [1825410 1821835] - [usb] usb: add a HCD_DMA flag instead of guestimating DMA capabilities (Torez Smith) [1825410 1821835] - [usb] usb: add a hcd_uses_dma helper (Torez Smith) [1825410 1821835] - [usb] usb: don't create dma pools for HCDs with a localmem_pool (Torez Smith) [1825410 1821835] - [usb] usb: host: ohci-tmio: Mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [usb] USB: drop HCD_LOCAL_MEM flag (Torez Smith) [1825410 1821835] - [usb] usb: host: ohci-tmio: init genalloc for local memory (Torez Smith) [1825410 1821835] - [usb] dma-mapping: remove the DMA_MEMORY_EXCLUSIVE flag (Torez Smith) [1825410 1821835] - [media] media: xirlink_cit: add missing descriptor sanity checks (Torez Smith) [1825410 1821835] - [media] media: ttusb-dec: Fix info-leak in ttusb_dec_send_command() (Torez Smith) [1788005 1825410 1821835] {CVE-2019-19533} - [media] media: usb: fix memory leak in af9005_identify_state (Torez Smith) [1825141 1825410 1821835] {CVE-2019-18809} - [netdrv] cdc_ether: fix rndis support for Mediatek based smartphones (Torez Smith) [1825410 1821835] - [netdrv] r8152: remove calling netif_napi_del (Torez Smith) [1825410 1821835] - [netdrv] Revert "r8152: napi hangup fix after disconnect" (Torez Smith) [1825410 1821835] - [netdrv] r8152: Set memory to all 0xFFs on failed reg reads (Torez Smith) [1825410 1821835] - [netdrv] net: kalmia: fix memory leaks (Torez Smith) [1825410 1821835] - [netdrv] cx82310_eth: fix a memory leak bug (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Fix memory leaks (Torez Smith) [1825410 1821835] - [netdrv] r8152: fix typo in register name (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: pcan_usb_pro: Fix info-leaks to USB devices (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: pcan_usb_fd: Fix info-leaks to USB devices (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: force the string buffer NULL-terminated (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: fix improper read if get_registers() fail (Torez Smith) [1825410 1821835] - [netdrv] net: usb: qmi_wwan: Add the BroadMobi BM818 card (Torez Smith) [1825410 1821835] - [netdrv] can: mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: fix potential double kfree_skb() (Torez Smith) [1825410 1821835] - [netdrv] usb: qmi_wwan: add D-Link DWM-222 A2 device ID (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: change V4L2_PIX_FMT_BGRA444 define: fourcc was already in use (Torez Smith) [1825410 1821835] - [netdrv] r8152: set RTL8152_UNPLUG only for real disconnection (Torez Smith) [1825410 1821835] - [netdrv] r8152: move calling r8153b_rx_agg_chg_indicate() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: init MAC address buffers (Torez Smith) [1825410 1821835] - [netdrv] r8152: fix the setting of detecting the linking change for runtime suspend (Torez Smith) [1825410 1821835] - [media] media: hdpvr: fix locking and a missing msleep (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Fix out-of-bounds read (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Fix shifting signed 32-bit value by 31 bits problem (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 468 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 238 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 235 (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: extend permitted QMAP mux_id value range (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: avoid RCU stalls on device disconnect when in QMAP mode (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add network device usage statistics for qmimux devices (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add support for QMAP padding in the RX path (Torez Smith) [1825410 1821835] - [media] media: cx231xx-cards: Add Hauppauge 955Q variant (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add Hauppauge HVR1955/1975 devices (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add i2c client demod/tuner support (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add multiple dvb frontend support (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix access to uninitialized fields on probe error (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Include streaming interface number in debugfs dir name (Torez Smith) [1825410 1821835] - [netdrv] can: usb: Kconfig: Remove duplicate menu entry (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: fix null-ptr-deref in class_unregister() (Torez Smith) [1825410 1821835] - [media] media: cxusb: Revert "media: cxusb: add raw mode support for, Medion MD95700" (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 412 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 286 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 258 (Torez Smith) [1825410 1821835] - [media] media: media/usb: set device_caps in struct video_device (Torez Smith) [1825410 1821835] - [media] media: dvb-usb/cxusb-analog.c: fix coccinelle warning, use ktime.h (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 164 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 131 (Torez Smith) [1825410 1821835] - [media] media: cx231xx-dvb: fix memory leak in dvb_fini() (Torez Smith) [1825410 1821835] - [media] media: em28xx: use usb_to_input_id() rather than handrolling it (Torez Smith) [1825410 1821835] - [media] media: em28xx: use common code for decoding nec scancodes (Torez Smith) [1825410 1821835] - [media] media: em28xx: give RC device proper name (Torez Smith) [1825410 1821835] - [media] media: cxusb: fix several coding style issues (Torez Smith) [1825410 1821835] - [media] media: cxusb-analog: Fix some coding style issues (Torez Smith) [1825410 1821835] - [media] media: cxusb: add raw mode support for Medion MD95700 (Torez Smith) [1825410 1821835] - [media] media: cxusb: add analog mode support for Medion MD95700 (Torez Smith) [1825410 1821835] - [media] media: cxusb: implement Medion MD95700 digital / analog coexistence (Torez Smith) [1825410 1821835] - [media] media: usb:zr364xx:Fix KASAN:null-ptr-deref Read in zr364xx_vidioc_querycap (Torez Smith) [1825410 1821835] - [media] media: pwc: convert to BIT macro (Torez Smith) [1825410 1821835] - [media] media: cpia2_usb: first wake up, then free in disconnect (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: use a different format for warnings (Torez Smith) [1825410 1821835] - [media] media: smsusb: better handle optional alignment (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 65 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Torez Smith) [1825410 1821835] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 55 (Torez Smith) [1825410 1821835] - [media] media: remove redundant 'default n' from Kconfig-s (Torez Smith) [1825410 1821835] - [media] media: af9035: Remove duplicate error reporting for dvbsky_usb_generic_rw (Torez Smith) [1825410 1821835] - [media] media: dvbsky: Remove duplicate error reporting for dvbsky_usb_generic_rw (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: Report error on all error paths (Torez Smith) [1825410 1821835] - [media] media: au0828: fix null dereference in error path (Torez Smith) [1825410 1821835] - [media] media: dvb: usb: fix use after free in dvb_usb_device_exit (Torez Smith) [1825410 1821835] - [media] media: usb: siano: Fix false-positive "uninitialized variable" warning (Torez Smith) [1825410 1821835] - [netdrv] usbnet: fix kernel crash after disconnect (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: fix racing condition (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 24 (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 17 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (Torez Smith) [1825410 1821835] - [media] treewide: Add SPDX license identifier - Makefile/Kconfig (Torez Smith) [1825410 1821835] - [media] treewide: Add SPDX license identifier for more missed files (Torez Smith) [1825410 1821835] - [media] media: usb: siano: Fix general protection fault in smsusb (Torez Smith) [1825410 1821835] - [media] media: prefix header search paths with $(srctree)/ (Torez Smith) [1825410 1821835] - [media] media: remove unneeded header search paths (Torez Smith) [1825410 1821835] - [netdrv] aqc111: cleanup mtu related logic (Torez Smith) [1825410 1821835] - [netdrv] Revert "aqc111: fix writing to the phy on BE" (Torez Smith) [1825410 1821835] - [netdrv] Revert "aqc111: fix double endianness swap on BE" (Torez Smith) [1825410 1821835] - [netdrv] net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix double endianness swap on BE (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix writing to the phy on BE (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix endianness issue in aqc111_change_mtu (Torez Smith) [1825410 1821835] - [netdrv] net: usb: smsc: fix warning reported by kbuild test robot (Torez Smith) [1825410 1821835] - [netdrv] net: usb: support of_get_mac_address new ERR_PTR error (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: Remove unnecessary NULL pointer check (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: Simplify device detection (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: new Wistron, ZTE and D-Link devices (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 16-bit RGB555 formats (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 16-bit RGB4444 formats (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 32-bit RGB formats (Torez Smith) [1825410 1821835] - [netdrv] r8152: sync sa_family with the media type of network device (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Prevent a buffer overflow (Torez Smith) [1825410 1821835] - [media] media: au0828: stop video streaming only when last user stops (Torez Smith) [1825410 1821835] - [media] media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() (Torez Smith) [1825410 1821835] - [media] media: au0828: fix enable and disable source audio and video inconsistencies (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add quirk for Quectel dynamic config (Torez Smith) [1825410 1821835] - [netdrv] r8152: Refresh MAC address during USBDEVFS_RESET (Torez Smith) [1825410 1821835] - [netdrv] r8152: remove extra action copying ethernet address (Torez Smith) [1825410 1821835] - [media] media: replace strncpy() by strscpy() (Torez Smith) [1825410 1821835] - [media] media: usbvision: fix a potential NULL pointer dereference (Torez Smith) [1825410 1821835] - [media] media: gspca: Kill URBs on USB device disconnect (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add Olicard 600 (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend HWID table by QNAP device (Torez Smith) [1825410 1821835] - [media] media: pwc-ctl: pChoose can't be NULL (Torez Smith) [1825410 1821835] - [media] media: Kconfig files: use the right help coding style (Torez Smith) [1825410 1821835] - [media] media: em28xx-input: make const array addr_list static (Torez Smith) [1825410 1821835] - [media] media: dvb: Add support for the Avermedia TD310 (Torez Smith) [1825410 1821835] - [media] media: dvb: init i2c already in it930x_frontend_attach (Torez Smith) [1825410 1821835] - [media] media: dvbsky: Avoid leaking dvb frontend (Torez Smith) [1825410 1821835] - [media] media: gspca: do not resubmit URBs when streaming has stopped (Torez Smith) [1825410 1821835] - [media] media: au0828: minor fix to a misleading comment in _close() (Torez Smith) [1825410 1821835] - [media] media: go7007: avoid clang frame overflow warning with KASAN (Torez Smith) [1825410 1821835] - [media] media: cpia2: Fix use-after-free in cpia2_exit (Torez Smith) [1825410 1821835] - [netdrv] peak_usb: fix clang build warning (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add support for Quectel EG12/EM12 (Torez Smith) [1825410 1821835] - [media] media: a few more typos at staging, pci, platform, radio and usb (Torez Smith) [1825410 1821835] - [media] media: usb: fix several typos (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Use usb_make_path to fill in usb_info (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix smatch warning (Torez Smith) [1825410 1821835] - [media] media: v4l: Add 32-bit packed YUV formats (Torez Smith) [1825410 1821835] - [netdrv] net: usb: cdc-phonet: use struct_size() in alloc_netdev() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: rtl8150: mark expected switch fall-through (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: Mark expected switch fall-through (Torez Smith) [1825410 1821835] - [media] media: hdpvr: fix smatch warning (Torez Smith) [1825410 1821835] - [media] media: usbvision: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: cpia2: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Avoid NULL pointer dereference at the end of streaming (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix 'type' check leading to overflow (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: ax88772_bind return error when hw_reset fail (Torez Smith) [1825410 1821835] - [netdrv] net: usb: rtl8150: remove set but not used variable 'rx_stat' (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend HWID table by TRENDnet device (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Add more field helper macros (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov772x: remove unnecessary COM3 initialization (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov722x: remove camera clock setup from bridge_init (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov722x: remove mode specific video data registers from bridge_init (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov772x: add SGBRG8 bayer mode support (Torez Smith) [1825410 1821835] - [media] media: gspca: ov543-ov772x: move video format specific registers into bridge_start (Torez Smith) [1825410 1821835] - [media] media: gspca: support multiple pixel formats in TRY_FMT (Torez Smith) [1825410 1821835] - [media] media: gspca: support multiple pixel formats in ENUM_FRAMEINTERVALS (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534: replace msleep(10) with usleep_range (Torez Smith) [1825410 1821835] - [uapi] media: v4l: uAPI: V4L2_BUF_TYPE_META_OUTPUT is an output buffer type (Torez Smith) [1825410 1821835] - [media] media: gspca: mt9m111: Check write_bridge for timeout (Torez Smith) [1825410 1821835] - [media] media: gspca: Check the return value of write_bridge for timeout (Torez Smith) [1825410 1821835] - [media] media: usb: gspca: add a missed check for goto_low_power (Torez Smith) [1825410 1821835] - [media] media: usb: gspca: add a missed return-value check for do_command (Torez Smith) [1825410 1821835] - [media] media: v4l2-ctrls.c/uvc: zero v4l2_event (Torez Smith) [1825410 1821835] - [media] media: usb: pwc: Don't use coherent DMA buffers for ISO transfer (Torez Smith) [1825410 1821835] - [media] media: usb: pwc: Introduce TRACE_EVENTs for pwc_isoc_handler() (Torez Smith) [1825410 1821835] - [netdrv] cdc_ether: trivial whitespace readability fix (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add MTU default to qmap network interface (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Fix qmap header retrieval in qmimux_rx_fixup (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add support for Fibocom NL678 series (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Resolve issue with changing MAC address (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Telit LN940 series (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Fibocom NL668 series (Torez Smith) [1825410 1821835] - [media] media: v4l: Add support for V4L2_BUF_TYPE_META_OUTPUT (Torez Smith) [1825410 1821835] - [media] media: siano: Use kmemdup instead of duplicating its function (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: fix spelling mistake "statuss" -> "status" (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Move interrupt buffer to priv buffer (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Add missing usb_free_urb to free interrupt urb (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: Bugfix for wrong return values (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: Support for ASUS A6VM notebook added (Torez Smith) [1825410 1821835] - [media] media: usb: dvb-usb: remove old friio driver (Torez Smith) [1825410 1821835] - [media] media: lmedm04: use dvb_usbv2_generic_rw_locked (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Move usb buffer to lme2510_state (Torez Smith) [1825410 1821835] - [media] media: rtl28xxu: add support for Sony CXD2837ER slave demod (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Utilise for_each_uvc_urb iterator (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Rename uvc_{un, }init_video() (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Split uvc_video_enable into two (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Move decode processing to process context (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Abstract streaming object lifetime (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: queue: Support asynchronous buffer handling (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: queue: Simplify spin-lock usage (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Protect queue internals with helper (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Convert decode functions to use new context structure (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Refactor URB descriptors (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix spelling mistake, "Cinnergy" -> "Cinergy" (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Refactor teardown of uvc on USB disconnect (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Add support for the CNF4 format (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add 4bpp packed depth confidence format CNF4 (Torez Smith) [1825410 1821835] - [media] media: usb: Use kmemdup instead of duplicating its function (Torez Smith) [1825410 1821835] - [media] media: dvb: Use WARM definition from identify_state() (Torez Smith) [1825410 1821835] - [media] media: dib0700: fix spelling mistake "Amplifyer" -> "Amplifier" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: Fix incorrect use of transfer_flags URB_FREE_BUFFER (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Initialize wol_cfg with memset in aqc111_suspend (Torez Smith) [1825410 1821835] - [netdrv] net: Don't default Aquantia USB driver to 'y' (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: fix spelling mistake: "resumbmitting" -> "resubmitting" (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend cdc_ether blacklist (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add ASIX's HW ids (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for wake on LAN by MAGIC packet (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement get/set_link_ksettings callbacks (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Initialize ethtool_ops structure (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add RX VLAN filtering support (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for VLAN_CTAG_TX/RX offload (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement set_rx_mode callback (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for TSO (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for enable/disable checksum offload (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for changing MTU (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add checksum offload support (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement RX data path (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement TX data path (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for getting and setting of MAC address (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Introduce link management (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Introduce PHY access (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Various callbacks implementation (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add implementation of read and write commands (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add bind and empty unbind callbacks (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Driver skeleton for Aquantia AQtion USB to 5GbE (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: fix potential recvmsg bug and recvmsg bug 2 (Torez Smith) [1825410 1821835] - [media] media: pulse8-cec: return 0 when invalidating the logical address (Torez Smith) [1825410 1821835] - [media] media: gspca: fix frame overflow error (Torez Smith) [1825410 1821835] - [media] media: cropcap/g_selection split (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: check for csum being in last four bytes (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: fix memcpy for accessing rx-data (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: simplify tx_fixup code (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: fix rx packet alignment (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: remove duplicated include from ucan.c (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: remove set but not used variable 'udev' (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix accessing freed memory in kvaser_usb_start_xmit() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix potential uninitialized variable use (Torez Smith) [1825410 1821835] - [netdrv] net: smsc95xx: Fix MTU range (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: disable carrier check while suspending (Torez Smith) [1825410 1821835] - [netdrv] net: cdc_ncm: remove set but not used variable 'ctx' (Torez Smith) [1825410 1821835] - [netdrv] net: cdc_ncm: use tasklet_init() for tasklet_struct init (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Gemalto's Cinterion ALASxx WWAN interface (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: replace `printk` with `pr_*` (Torez Smith) [1825410 1821835] - [media] media: cx231xx: fix potential sign-extension overflow on large shift (Torez Smith) [1825410 1821835] - [media] Revert "media: dvbsky: use just one mutex for serializing device R/W ops" (Torez Smith) [1825410 1821835] - [netdrv] net/usb: cancel pending work when unbinding smsc75xx (Torez Smith) [1825410 1821835] - [netdrv] smsc95xx: Check for Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] smsc75xx: Check for Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] r8152: Check for supported Wake-on-LAN Modes (Torez Smith) [1825410 1821835] - [netdrv] sr9800: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] ax88179_178a: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] asix: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [media] media: v4l: Add definition for the Sunxi tiled NV12 format (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add definitions for MPEG-2 slice format and metadata (Torez Smith) [1825410 1821835] - [media] media: au0828: Fix incorrect error messages (Torez Smith) [1825410 1821835] - [media] media: au0828: cannot kfree dev before usb disconnect (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Avoid unnecessary self assignment (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: set DTR for modems in forced USB2 mode (Torez Smith) [1825410 1821835] - [media] media: mxl111sf: declare its own pads (Torez Smith) [1825410 1821835] - [media] media: au0828: use signals instead of hardcoding a pad number (Torez Smith) [1825410 1821835] - [media] media: v4l2: taint pads with the signal types for consumer devices (Torez Smith) [1825410 1821835] - [media] media: em28xx: make v4l2-compliance happier by starting sequence on zero (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix input name for Terratec AV 350 (Torez Smith) [1825410 1821835] - [media] media: em28xx: use a default format if TRY_FMT fails (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix handler for vidioc_s_input() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: remove redundant null pointer check before of_node_put (Torez Smith) [1825410 1821835] - [media] media: usbvision: remove time_in_irq (Torez Smith) [1825410 1821835] - [media] media: gspca: sq930x: use GFP_KERNEL in sd_dq_callback() (Torez Smith) [1825410 1821835] - [media] media: replace strcpy() by strscpy() (Torez Smith) [1825410 1821835] - [media] media: use strscpy() instead of strlcpy() (Torez Smith) [1825410 1821835] - [documentation] media: videodev2.h: add new capabilities for buffer types (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Store device information pointer in struct uvc_device (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Rename UVC_QUIRK_INFO to UVC_INFO_QUIRK (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix uvc_alloc_entity() allocation alignment (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix spelling mistake: "entites" -> "entities" (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Remove unnecessary NULL check before debugfs_remove_recursive (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Make uvc_control_mapping menu_info field const (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Make some structs const (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Support dynamic config on Quectel EP06 (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Do not access skb_queue_head list pointers directly (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Make declaration style consistent (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Switch to SPDX identifier (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Drop unnecessary strcpy in lan78xx_probe (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Bail out if lan78xx_get_endpoints fails (Torez Smith) [1825410 1821835] - [netdrv] net: usbnet: mark expected switch fall-through (Torez Smith) [1825410 1821835] - [media] media: v4l2-ctrls: v4l2_ctrl_add_handler: add from_other_dev (Torez Smith) [1825410 1821835] - [media] media: videodev2.h: add request_fd field to v4l2_ext_controls (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Add new DV flag CAN_DETECT_REDUCED_FPS (Torez Smith) [1825410 1821835] - [media] media: af9035: prevent buffer overflow on write (Torez Smith) [1825410 1821835] - [netdrv] r8152: disable RX aggregation on new Dell TB16 dock (Torez Smith) [1825410 1821835] - [netdrv] drivers/net/usb/r8152: remove the unneeded variable "ret" in rtl8152_system_suspend (Torez Smith) [1825410 1821835] - [media] media: rtl28xxu: be sure that it won't go past the array size (Torez Smith) [1825410 1821835] - [netdrv] net:usb: Use ARRAY_SIZE instead of calculating the array size (Torez Smith) [1825410 1821835] - [media] media: au0828: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: cx231xx: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: usb: hackrf: Replace GFP_ATOMIC with GFP_KERNEL (Torez Smith) [1825410 1821835] - [media] media: usb: em28xx: Replace mdelay() with msleep() in em28xx_pre_card_setup() (Torez Smith) [1825410 1821835] - [media] media: usb: em28xx: Replace GFP_ATOMIC with GFP_KERNEL in em28xx_init_usb_xfer() (Torez Smith) [1825410 1821835] - [media] media: dw2102: Fix memleak on sequence of probes (Torez Smith) [1825410 1821835] - [media] media: usbtv: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [media] media: go7007: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [media] media: cx231xx: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add new 10-bit packed grayscale format (Torez Smith) [1825410 1821835] - [documentation] media: doc-rst: Add packed Bayer raw14 pixel formats (Torez Smith) [1825410 1821835] - [media] media: em28xx: disable null packet filter for WinTVdualHD (Torez Smith) [1825410 1821835] - [uapi] media: videodev2: get rid of VIDIOC_RESERVED (Torez Smith) [1825410 1821835] - [media] media: em28xx: explicitly disable TS packet filter (Torez Smith) [1825410 1821835] - [media] media: dvb-usb/friio, dvb-usb-v2/gl861: decompose friio and merge with gl861 (Torez Smith) [1825410 1821835] - [netdrv] net: usb: sr9700: Replace mdelay() with msleep() in sr9700_bind() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: Replace mdelay() with msleep() in setup_pegasus_II() (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Send a control event when a Control Change interrupt arrives (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Handle control pipe protocol STALLs (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Remove a redundant check (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Also validate buffers in BULK mode (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Add KSMedia 8-bit IR format support (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix minor spelling (Torez Smith) [1825410 1821835] - [media] media: em28xx-cards: disable V4L2 mode for dual tuners (Torez Smith) [1825410 1821835] - [media] media: em28xx: Remove duplicate PID (Torez Smith) [1825410 1821835] - [media] media: em28xx: Fix DualHD disconnect oops (Torez Smith) [1825410 1821835] - [media] media: em28xx: Fix dual transport stream operation (Torez Smith) [1825410 1821835] - [media] media: dib0700: add code comment (Torez Smith) [1825410 1821835] - [media] media: cx231xx: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: em28xx: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: hdpvr: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: dvb-usb: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: tm6000: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: gl861: fix probe of dvb_usb_gl861 (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Simplify struct kvaser_cmd_cardinfo (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add support for Kvaser USB hydra family (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Split driver into kvaser_usb_core.c and kvaser_usb_leaf.c (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add SPDX GPL-2.0 license identifier (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix typos (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Improve logging messages (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Refactor kvaser_usb_init_one() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Refactor kvaser_usb_get_endpoints() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add pointer to struct usb_interface into struct kvaser_usb (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Replace USB timeout constants with one define (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Rename message/msg to command/cmd (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Remove unused commands and defines (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Remove unnecessary return (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: add driver for Theobroma Systems UCAN devices (Torez Smith) [1825410 1821835] - [netdrv] can: usb: Kconfig/Makefile: sort alphabetically (Torez Smith) [1825410 1821835] - [media] media: gspca_kinect: cast sizeof to int for comparison (Torez Smith) [1825410 1821835] - [media] media: videodev.h: add PIX_FMT_FWHT for use with vicodec (Torez Smith) [1825410 1821835] - [netdrv] net: usb: hso: use swap macro in hso_kick_transmit (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: allow optionally getting mac address from device tree (Torez Smith) [1825410 1821835]- [hid] HID: Improve Windows Precision Touchpad detection (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: enable multi-input as a quirk for some devices (Benjamin Tissoires) [1811209] - [hid] drivers/hid/hid-multitouch.c: fix a possible null pointer access (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: Add LG MELF0410 I2C touchscreen support (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: add support for the Smart Tech panel (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: do not filter mice nodes (Benjamin Tissoires) [1811209] - [hid] HID: wacom: Report 2nd-gen Intuos Pro S center button status over BT (Benjamin Tissoires) [1835753] - [hid] Revert "HID: wacom: generic: read the number of expected touches on a per collection basis" (Benjamin Tissoires) [1835753] - [hid] HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices (Benjamin Tissoires) [1835753] - [hid] HID: wacom: Recognize new MobileStudio Pro PID (Benjamin Tissoires) [1835753] - [hid] HID: wacom: generic: Treat serial number and related fields as unsigned (Benjamin Tissoires) [1835753] - [hid] HID: wacom: add new MobileStudio Pro 13 support (Benjamin Tissoires) [1835753] - [hid] HID: wacom: do not call hid_set_drvdata(hdev, NULL) (Benjamin Tissoires) [1835753] - [hid] HID: wacom: support named keys on older devices (Benjamin Tissoires) [1835753] - [target] scsi: target: iscsi: calling iscsit_stop_session() inside iscsit_close_session() has no effect (Maurizio Lombardi) [1840024] - [target] scsi: target: fix hang when multiple threads try to destroy the same iscsi session (Maurizio Lombardi) [1840024] - [target] scsi: target: remove boilerplate code (Maurizio Lombardi) [1840024] - [target] scsi: target: use an enum to track emulate_ua_intlck_ctrl (Maurizio Lombardi) [1840024] - [target] scsi: target: convert boolean se_dev_attrib types to bool (Maurizio Lombardi) [1840024] - [target] scsi: target: fix unmap_zeroes_data boolean initialisation (Maurizio Lombardi) [1840024] - [fs] page cache: Finish XArray conversion (Waiman Long) [1812073] - [mm] mm: Convert __do_page_cache_readahead to XArray (Waiman Long) [1812073] - [mm] mm: Convert is_page_cache_freeable to XArray (Waiman Long) [1812073] - [mm] mm: memcontrol: clean up and document effective low/min calculations (Waiman Long) [1812073] - [mm] mm: memcontrol: fix memory.low proportional distribution (Waiman Long) [1812073] - [mm] mm: kmem: rename (__)memcg_kmem_(un)charge_memcg() to __memcg_kmem_(un)charge() (Waiman Long) [1812073] - [mm] mm: memcg/slab: cache page number in memcg_(un)charge_slab() (Waiman Long) [1812073] - [mm] mm: kmem: switch to nr_pages in (__)memcg_kmem_charge_memcg() (Waiman Long) [1812073] - [mm] mm: kmem: rename memcg_kmem_(un)charge() into memcg_kmem_(un)charge_page() (Waiman Long) [1812073] - [mm] mm: kmem: cleanup memcg_kmem_uncharge_memcg() arguments (Waiman Long) [1812073] - [mm] mm: kmem: cleanup (__)memcg_kmem_charge_memcg() arguments (Waiman Long) [1812073] - [mm] mm: memcg/slab: use mem_cgroup_from_obj() (Waiman Long) [1812073] - [kernel] mm: fork: fix kernel_stack memcg stats for various stack implementations (Waiman Long) [1812073] - [mm] memcg: fix NULL pointer dereference in __mem_cgroup_usage_unregister_event (Waiman Long) [1812073] - [mm] mm: clean up and clarify lruvec lookup procedure (Waiman Long) [1812073] - [mm] mm: memcontrol: try harder to set a new memory.high (Waiman Long) [1812073] - [mm] mm: memcontrol: remove dead code from memory_max_write() (Waiman Long) [1812073] - [mm] mm, memcg: clean up reclaim iter array (Waiman Long) [1812073] - [mm] mm, memcg: make scan aggression always exclude protection (Waiman Long) [1812073] - [mm] mm, memcg: make memory.emin the baseline for utilisation determination (Waiman Long) [1812073] - [mm] mm, memcg: proportional memory.{low, min} reclaim (Waiman Long) [1812073] - [mm] memcg, kmem: do not fail __GFP_NOFAIL charges (Waiman Long) [1812073] - [mm] mm: workingset: fix vmstat counters for shadow nodes (Waiman Long) [1812073] - [mm] mm: memcontrol: use CSS_TASK_ITER_PROCS at mem_cgroup_scan_tasks() (Waiman Long) [1812073] - [kernel] fork, memcg: alloc_thread_stack_node needs to set tsk->stack (Waiman Long) [1812073] - [mm] mm/memcontrol.c: fix bad line in comment (Waiman Long) [1812073] - [kernel] fork, memcg: fix cached_stacks case (Waiman Long) [1812073] - [mm] mm: don't raise MEMCG_OOM event due to failed high-order allocation (Waiman Long) [1812073] - [mm] mm: vmscan: memcontrol: remove mem_cgroup_select_victim_node() (Waiman Long) [1812073] - [mm] mm: vmscan: do not share cgroup iteration between reclaimers (Waiman Long) [1812073] - [mm] mm: vmscan: do not iterate all mem cgroups for global direct reclaim (Waiman Long) [1812073] - [mm] mm: workingset: use cheaper __inc_lruvec_state in irqsafe node reclaim (Waiman Long) [1812073] - [tools] xarray: Fix early termination of xas_for_each_marked (Waiman Long) [1812073] - [lib] mm: Convert workingset to XArray (Waiman Long) [1812073] - [mm] page cache: Convert filemap_range_has_page to XArray (Waiman Long) [1812073] - [mm] page cache: Remove stray radix comment (Waiman Long) [1812073] - [mm] page cache: Convert delete_batch to XArray (Waiman Long) [1812073] - [mm] page cache: Convert filemap_map_pages to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entries_tag to XArray (Waiman Long) [1812073] - [mm] page cache; Convert find_get_pages_range_tag to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_pages_contig to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_pages_range to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entries to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entry to XArray (Waiman Long) [1812073] - [mm] page cache: Convert page deletion to XArray (Waiman Long) [1812073] - [include] page cache: Add and replace pages using the XArray (Waiman Long) [1812073] - [mm] page cache: Convert hole search to XArray (Waiman Long) [1812073] - [kernel] docs: cgroup-v1: Document the cpuset_v2_mode mount option (Waiman Long) [1812073] - [kernel] cgroup1: don't call release_agent when it is "" (Waiman Long) [1812073] - [kernel] cgroup: Iterate tasks that did not finish do_exit() (Waiman Long) [1812073] - [kernel] cgroup: cgroup_procs_next should increase position index (Waiman Long) [1812073] - [kernel] cgroup-v1: cgroup_pidlist_next should update position index (Waiman Long) [1812073] - [kernel] cgroup: init_tasks shouldn't be linked to the root cgroup (Waiman Long) [1812073] - [kernel] cgroup: Prevent double killing of css when enabling threaded cgroup (Waiman Long) [1812073] - [kernel] cgroup: fix function name in comment (Waiman Long) [1812073] - [kernel] cgroup: freezer: don't change task and cgroups status unnecessarily (Waiman Long) [1812073] - [kernel] cgroup: use cgroup->last_bstat instead of cgroup->bstat_pending for consistency (Waiman Long) [1812073] - [kernel] cgroup: remove cgroup_enable_task_cg_lists() optimization (Waiman Long) [1812073] - [kernel] cgroup: pids: use atomic64_t for pids->limit (Waiman Long) [1812073] - [kernel] cgroup: Optimize single thread migration (Waiman Long) [1812073] - [kernel] cgroup: Update comments about task exit path (Waiman Long) [1812073] - [kernel] cgroup: short-circuit current_cgns_cgroup_from_root() on the default hierarchy (Waiman Long) [1812073] - [kernel] Use kvmalloc in cgroups-v1 (Waiman Long) [1812073] - [kernel] cgroup: minor tweak for logic to get cgroup css (Waiman Long) [1812073] - [kernel] cgroup: Replace a seq_printf() call by seq_puts() in cgroup_print_ss_mask() (Waiman Long) [1812073] - [kernel] cgroup: Fix css_task_iter_advance_css_set() cset skip condition (Waiman Long) [1812073] - [kernel] cgroup: css_task_iter_skip()'d iterators must be advanced before accessed (Waiman Long) [1812073] - [include] cgroup: Include dying leaders with live threads in PROCS iterations (Waiman Long) [1812073] - [kernel] cgroup: Implement css_task_iter_skip() (Waiman Long) [1812073] - [kernel] cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix the accounting (Waiman Long) [1586281 1812073] - [platform] intel-speed-select: Firmware workarounds for Icelake (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Fix invalid core mask (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Increase CPU count (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Fix json perf-profile output output (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Enable clos for turbo-freq enable (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Check support status before enable (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Change debug to error (Prarit Bhargava) [1840289] - [platform] intel_speed_select: internal-only-debug-patch (Prarit Bhargava) [1840289]- [nvdimm] libnvdimm/region: Fix build error (Diego Domingos) [1779218] - [nvdimm] libnvdimm/region: Introduce an 'align' attribute (Diego Domingos) [1779218] - [nvdimm] libnvdimm/region: Introduce NDD_LABELING (Diego Domingos) [1779218] - [nvdimm] libnvdimm/namespace: Enforce memremap_compat_align() (Diego Domingos) [1779218] - [nvdimm] libnvdimm/pfn: Prevent raw mode fallback if pfn-infoblock valid (Diego Domingos) [1779218] - [mm] mm/memremap_pages: Introduce memremap_compat_align() (Diego Domingos) [1779218] - [x86] x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix error handling in __unwind_start() (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix premature unwind stoppage due to IRET frames (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix error path for bad ORC entry type (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Prevent unwinding before ORC initialization (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Don't skip the first frame for inactive tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind: Prevent false warnings for non-current tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Convert global variables to static (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in rewind_stack_do_exit() (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in __switch_to_asm() (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in kernel exit path (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in register clearing code (Josh Poimboeuf) [1755143] - [tools] objtool: Fix stack offset tracking for indirect CFAs (Josh Poimboeuf) [1755143] - [s390] s390: nvme reipl (Philipp Rudo) [1525179] - [s390] s390: nvme ipl (Philipp Rudo) [1525179] - [infiniband] RDMA/bnxt_re: make bnxt_re_ib_init static (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Wait for all the CQ events before freeing CQ data structures (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove unnecessary sched count (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Fix lifetimes in bnxt_re_task (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Use ib_device_try_get() (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove a redundant 'memset' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variables 'pg' and 'idx' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'dev_attr' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'pg_size' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Use driver_unregister and unregistration API (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor device add/remove functionalities (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Using vmalloc requires including vmalloc.h (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: use ibdev based message printing functions (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor doorbell management functions (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor notification queue management code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor command queue management code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor net ring allocation function (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor hardware queue memory allocation (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Replace chip context structure with pointer (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor queue pair creation code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: remove ioremap_nocache and devm_ioremap_nocache (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Enable SRIOV VF support on Broadcom's 57500 adapter series (Selvin Xavier) [1790622] - [netdrv] net: be2net: reject unsupported coalescing params (Petr Oros) [1790633] - [netdrv] treewide: Use sizeof_field() macro (Petr Oros) [1790633] - [netdrv] net: emulex: benet: indent a Kconfig depends continuation line (Petr Oros) [1790633] - [infiniband] i40iw: fix null pointer dereference on a null wqe pointer (Stefan Assmann) [1839718] - [infiniband] RDMA/providers: Fix return value when QP type isn't supported (Stefan Assmann) [1839718] - [infiniband] RDMA: Replace zero-length array with flexible-array member (Stefan Assmann) [1839718] - [infiniband] i40iw: Do an RCU lookup in i40iw_add_ipv4_addr (Stefan Assmann) [1839718] - [infiniband] IB/core: Introduce ib_reg_user_mr (Stefan Assmann) [1839718] - [infiniband] RDMA/i40iw: fix a potential NULL pointer dereference (Stefan Assmann) [1839718] - [infiniband] i40iw: Remove setting of VMA private data and use rdma_user_mmap_io (Stefan Assmann) [1839718] - [infiniband] RDMA/i40iw: Fix potential use after free (Stefan Assmann) [1839718] - [powerpc] powerpc/pseries: Fix of_read_drc_info_cell() to point at next record (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Enable support for ibm, drc-info property (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Correctly match ibm, my-drc-index to drc-name when using drc-info (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Avoid a sometimes-uninitialized warning (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Annotate and correctly byte swap DRC properties (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Add drc-info support for hotplug slot registration (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Don't rely on firmware feature to imply drc-info support (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Fix up pointer to first drc-info entry (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Add cpu DLPAR support for drc-info property (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Fix drc-info mappings of logical cpus to drc-index (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Fix bad drc_index_start value parsing of drc-info entry (Diego Domingos) [1779198] - [kernel] sched/fair: Optimize enqueue_task_fair() (Phil Auld) [1780466] - [kernel] sched/fair: Fix enqueue_task_fair() warning some more (Phil Auld) [1780466] - [kernel] sched/fair: Fix enqueue_task_fair warning (Phil Auld) [1780466] - [kernel] sched/fair: Fix reordering of enqueue/dequeue_task_fair() (Phil Auld) [1780466] - [kernel] sched/fair: Reorder enqueue/dequeue_task_fair path (Phil Auld) [1780466] - [fs] ceph: demote quotarealm lookup warning to a debug message (Jeff Layton) [1827767] - [fs] ceph: fix double unlock in handle_cap_export() (Jeff Layton) [1827767] - [fs] ceph: fix special error code in ceph_try_get_caps() (Jeff Layton) [1827767] - [fs] ceph: fix endianness bug when handling MDS session feature bits (Jeff Layton) [1827767] - [fs] ceph: fix potential bad pointer deref in async dirops cb's (Jeff Layton) [1827767] - [block] rbd: don't mess with a page vector in rbd_notify_op_lock() (Jeff Layton) [1827767] - [block] rbd: don't test rbd_dev->opts in rbd_dev_image_release() (Jeff Layton) [1827767] - [block] rbd: call rbd_dev_unprobe() after unwatching and flushing notifies (Jeff Layton) [1827767] - [block] rbd: avoid a deadlock on header_rwsem when flushing notifies (Jeff Layton) [1827767] - [fs] ceph: fix snapshot directory timestamps (Jeff Layton) [1827767] - [fs] ceph: wait for async creating inode before requesting new max size (Jeff Layton) [1827767] - [fs] ceph: don't skip updating wanted caps when cap is stale (Jeff Layton) [1827767] - [fs] ceph: request new max size only when there is auth cap (Jeff Layton) [1827767] - [fs] ceph: cleanup return error of try_get_cap_refs() (Jeff Layton) [1827767] - [fs] ceph: return ceph_mdsc_do_request() errors from __get_parent() (Jeff Layton) [1827767] - [fs] ceph: check all mds' caps after page writeback (Jeff Layton) [1827767] - [fs] ceph: update i_requested_max_size only when sending cap msg to auth mds (Jeff Layton) [1827767] - [fs] ceph: simplify calling of ceph_get_fmode() (Jeff Layton) [1827767] - [fs] ceph: remove delay check logic from ceph_check_caps() (Jeff Layton) [1827767] - [fs] ceph: consider inode's last read/write when calculating wanted caps (Jeff Layton) [1827767] - [fs] ceph: always renew caps if mds_wanted is insufficient (Jeff Layton) [1827767] - [fs] ceph: update dentry lease for async create (Jeff Layton) [1827767] - [fs] ceph: attempt to do async create when possible (Jeff Layton) [1827767] - [fs] ceph: cache layout in parent dir on first sync create (Jeff Layton) [1827767] - [fs] ceph: add new MDS req field to hold delegated inode number (Jeff Layton) [1827767] - [fs] ceph: decode interval_sets for delegated inos (Jeff Layton) [1827767] - [fs] ceph: make ceph_fill_inode non-static (Jeff Layton) [1827767] - [fs] ceph: perform asynchronous unlink if we have sufficient caps (Jeff Layton) [1827767] - [fs] ceph: don't take refs to want mask unless we have all bits (Jeff Layton) [1827767] - [fs] ceph: cap tracking for async directory operations (Jeff Layton) [1827767] - [fs] ceph: make __take_cap_refs non-static (Jeff Layton) [1827767] - [fs] ceph: add infrastructure for waiting for async create to complete (Jeff Layton) [1827767] - [fs] ceph: track primary dentry link (Jeff Layton) [1827767] - [fs] ceph: add flag to designate that a request is asynchronous (Jeff Layton) [1827767] - [fs] ceph: more caps.c lockdep assertions (Jeff Layton) [1827767] - [fs] ceph: clean up kick_flushing_inode_caps() (Jeff Layton) [1827767] - [net] libceph: directly skip to the end of redirect reply (Jeff Layton) [1827767] - [net] libceph: simplify ceph_monc_handle_map() (Jeff Layton) [1827767] - [fs] ceph: return ETIMEDOUT errno to userland when request timed out (Jeff Layton) [1827767] - [fs] ceph: re-org copy_file_range and fix some error paths (Jeff Layton) [1827767] - [fs] ceph: move to a dedicated slabcache for mds requests (Jeff Layton) [1827767] - [fs] ceph: reorganize fields in ceph_mds_request (Jeff Layton) [1827767] - [fs] ceph: replace zero-length array with flexible-array member (Jeff Layton) [1827767] - [block] rbd: enable multiple blk-mq queues (Jeff Layton) [1827767] - [block] rbd: embed image request in blk-mq pdu (Jeff Layton) [1827767] - [block] rbd: acquire header_rwsem just once in rbd_queue_workfn() (Jeff Layton) [1827767] - [block] rbd: get rid of img_request_layered_clear() (Jeff Layton) [1827767] - [block] rbd: kill img_request kref (Jeff Layton) [1827767] - [fs] ceph: check if file lock exists before sending unlock request (Jeff Layton) [1827767] - [fs] ceph: move ceph_osdc_{read, write}pages to ceph.ko (Jeff Layton) [1827767] - [fs] ceph: don't ClearPageChecked in ceph_invalidatepage() (Jeff Layton) [1827767] - [block] rbd: remove barriers from img_request_layered_{set, clear, test}() (Jeff Layton) [1827767] - [fs] libceph: drop CEPH_DEFINE_SHOW_FUNC (Jeff Layton) [1827767] - [fs] ceph: check inode type for CEPH_CAP_FILE_{CACHE, RD, REXTEND, LAZYIO} (Jeff Layton) [1827767] - [fs] ceph: add refcounting for Fx caps (Jeff Layton) [1827767] - [fs] ceph: register MDS request with dir inode from the start (Jeff Layton) [1827767] - [fs] ceph: fix memory leak in ceph_cleanup_snapid_map() (Jeff Layton) [1827767] - [net] libceph: fix alloc_msg_with_page_vector() memory leaks (Jeff Layton) [1827767] - [include] ceph: check POOL_FLAG_FULL/NEARFULL in addition to OSDMAP_FULL/NEARFULL (Jeff Layton) [1827767] - [fs] ceph: canonicalize server path in place (Jeff Layton) [1827767] - [fs] ceph: do not execute direct write in parallel if O_APPEND is specified (Jeff Layton) [1827767] - [block] rbd: set the 'device' link in sysfs (Jeff Layton) [1827767] - [fs] ceph: move net/ceph/ceph_fs.c to fs/ceph/util.c (Jeff Layton) [1827767] - [fs] ceph: print name of xattr in __ceph_{get, set}xattr() douts (Jeff Layton) [1827767] - [fs] ceph: print r_direct_hash in hex in __choose_mds() dout (Jeff Layton) [1827767] - [fs] ceph: use copy-from2 op in copy_file_range (Jeff Layton) [1827767] - [fs] ceph: close holes in structs ceph_mds_session and ceph_mds_request (Jeff Layton) [1827767] - [block] rbd: work around -Wuninitialized warning (Jeff Layton) [1827767] - [fs] ceph: allocate the correct amount of extra bytes for the session features (Jeff Layton) [1827767] - [fs] ceph: rename get_session and switch to use ceph_get_mds_session (Jeff Layton) [1827767] - [fs] ceph: remove the extra slashes in the server path (Jeff Layton) [1827767] - [fs] ceph: add possible_max_rank and make the code more readable (Jeff Layton) [1827767] - [fs] ceph: print dentry offset in hex and fix xattr_version type (Jeff Layton) [1827767] - [fs] ceph: only touch the caps which have the subset mask requested (Jeff Layton) [1827767] - [fs] ceph: don't clear I_NEW until inode metadata is fully populated (Jeff Layton) [1827767] - [fs] ceph: retry the same mds later after the new session is opened (Jeff Layton) [1827767] - [fs] ceph: check availability of mds cluster on mount after wait timeout (Jeff Layton) [1827767] - [fs] ceph: keep the session state until it is released (Jeff Layton) [1827767] - [fs] ceph: add __send_request helper (Jeff Layton) [1827767] - [fs] ceph: ensure we have a new cap before continuing in fill_inode (Jeff Layton) [1827767] - [fs] ceph: drop unused ttl_from parameter from fill_inode (Jeff Layton) [1827767] - [fs] ceph: fix possible long time wait during umount (Jeff Layton) [1827767] - [fs] ceph: only choose one MDS who is in up:active state without laggy (Jeff Layton) [1827767] - [fs] ceph: fix mdsmap cluster available check based on laggy number (Jeff Layton) [1827767] - [fs] ceph: remove unnecessary assignment in ceph_pre_init_acls() (Jeff Layton) [1827767] - [fs] ceph: delete redundant douts in con_get/put() (Jeff Layton) [1827767] - [fs] ceph: hold extra reference to r_parent over life of request (Jeff Layton) [1827767] - [fs] ceph: add more debug info when decoding mdsmap (Jeff Layton) [1827767] - [fs] ceph: switch to global cap helper (Jeff Layton) [1827767] - [fs] ceph: trigger the reclaim work once there has enough pending caps (Jeff Layton) [1827767] - [fs] ceph: show tasks waiting on caps in debugfs caps file (Jeff Layton) [1827767] - [fs] fs: ceph: Delete timespec64_trunc() usage (Jeff Layton) [1827767] - [block] rbd: ask for a weaker incompat mask for read-only mappings (Jeff Layton) [1827767] - [block] rbd: don't query snapshot features (Jeff Layton) [1827767] - [block] rbd: remove snapshot existence validation code (Jeff Layton) [1827767] - [block] rbd: don't establish watch for read-only mappings (Jeff Layton) [1827767] - [block] rbd: don't acquire exclusive lock for read-only mappings (Jeff Layton) [1827767] - [block] rbd: disallow read-write partitions on images mapped read-only (Jeff Layton) [1827767] - [block] rbd: treat images mapped read-only seriously (Jeff Layton) [1827767] - [block] rbd: introduce RBD_DEV_FLAG_READONLY (Jeff Layton) [1827767] - [block] rbd: introduce rbd_is_snap() (Jeff Layton) [1827767] - [fs] ceph: don't leave ino field in ceph_mds_request_head uninitialized (Jeff Layton) [1827767] - [fs] ceph: tone down loglevel on ceph_mdsc_build_path warning (Jeff Layton) [1827767] - [fs] ceph: fix geting random mds from mdsmap (Jeff Layton) [1827767] - [block] rbd: fix spelling mistake "requeueing" -> "requeuing" (Jeff Layton) [1827767] - [fs] ceph: make several helper accessors take const pointers (Jeff Layton) [1827767] - [net] libceph: drop unnecessary check from dispatch() in mon_client.c (Jeff Layton) [1827767] - [fs] ceph: don't allow copy_file_range when stripe_count != 1 (Jeff Layton) [1827767] - [fs] ceph: allow object copies across different filesystems in the same cluster (Jeff Layton) [1827767] - [fs] ceph: pass filp to ceph_get_caps() (Jeff Layton) [1827767] - [fs] ceph: allow copy_file_range when src and dst inode are same (Jeff Layton) [1827767] - [fs] ceph: increment change_attribute on local changes (Jeff Layton) [1827767] - [fs] ceph: make 'nocopyfrom' a default mount option (Jeff Layton) [1827767] - [fs] vfs: allow copy_file_range to copy across devices (Jeff Layton) [1827767] - [fs] vfs: no fallback for ->copy_file_range (Jeff Layton) [1827767] - [fs] ceph: add destination file data sync before doing any remote copy (Jeff Layton) [1827767] - [fs] ceph: new mount option to disable usage of copy-from op (Jeff Layton) [1827767] - [fs] ceph: support copy_file_range file operation (Jeff Layton) [1827767] - [include] libceph: support the RADOS copy-from operation (Jeff Layton) [1827767] - [fs] cachefiles: Fix race between read_waiter and read_copier involving op->to_do (Dave Wysochanski) [1832644] - [char] security: keys: trusted: fix lost handle flush (Jerry Snitselaar) [1815609] - [security] KEYS: trusted: Remove set but not used variable 'keyhndl' (Jerry Snitselaar) [1815609] - [char] KEYS: trusted: Move TPM2 trusted keys code (Jerry Snitselaar) [1815609] - [security] KEYS: trusted: Create trusted keys subsystem (Jerry Snitselaar) [1815609] - [security] KEYS: Use common tpm_buf for trusted and asymmetric keys (Jerry Snitselaar) [1815609] - [char] tpm: Move tpm_buf code to include/linux/ (Jerry Snitselaar) [1815609] - [char] tpm/tpm_tis: Free IRQ if probing fails (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Revert tpm_tis_spi_mod.ko to tpm_tis_spi.ko (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Add tpm_version_major sysfs file (Jerry Snitselaar) [1815609] - [char] tpm: Handle negative priv->response_len in tpm_common_read() (Jerry Snitselaar) [1815609] - [char] tpm: fix invalid locking in NONBLOCKING mode (Jerry Snitselaar) [1815609] - [char] tpm_crb: fix fTPM on AMD Zen+ CPUs (Jerry Snitselaar) [1815609] - [char] tpm: use GFP_KERNEL instead of GFP_HIGHMEM for tpm_buf (Jerry Snitselaar) [1815609] - [char] tpm: add check after commands attribs tab allocation (Jerry Snitselaar) [1815609] - [char] tpm: tpm_tis_spi: Drop THIS_MODULE usage from driver struct (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Cleanup includes (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Support cr50 devices (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Introduce a flow control callback (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Add a flag to indicate TPM power is managed by firmware (Jerry Snitselaar) [1815609] - [char] tpm_tis: override durations for STM tpm with firmware 1.2.8.28 (Jerry Snitselaar) [1815609 1788758] - [char] tpm: provide a way to override the chip returned durations (Jerry Snitselaar) [1815609] - [char] tpm: Remove duplicate code from caps_show() in tpm-sysfs.c (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm2_bios_measurements_next should increase position index (Jerry Snitselaar) [1815609 1795739] - [char] tpm: tpm1_bios_measurements_next should increase position index (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Don't make log failures fatal (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Initialize crypto_id of allocated_banks to HASH_ALGO__LAST (Jerry Snitselaar) [1815609 1795739] - [include] efi/tpm: Don't access event->count when it isn't mapped (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Return -EINVAL when determining tpm final events log size fails (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Fix sanity check of unsigned tbl_size being less than zero (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Only set 'efi_tpm_final_log_size' after successful event log parsing (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Don't traverse an event log with no events (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Don't duplicate events from the final event log in the TCG2 log (Jerry Snitselaar) [1815609 1795739] - [firmware] Abstract out support for locating an EFI config table (Jerry Snitselaar) [1815609 1795739] - [firmware] efi: Attempt to get the TCG2 event log in the boot stub (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Append the final event log to the TPM event log (Jerry Snitselaar) [1815609 1795739] - [firmware] tpm: Reserve the TPM final events table (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Abstract crypto agile event size calculations (Jerry Snitselaar) [1815609 1795739] - [netdrv] bnx2x: Fix accounting of vlan resources among the PFs (Manish Chopra) [1791026] - [netdrv] bnx2x: Use appropriate define for vlan credit (Manish Chopra) [1791026] - [netdrv] bnx2x: Fix logic to get total no. of PFs per engine (Manish Chopra) [1791026] - [netdrv] bnx2x: Do not handle requests from VFs after parity (Manish Chopra) [1791026] - [netdrv] qed: remove redundant assignment to variable 'rc' (Manish Chopra) [1791024] - [netdrv] qed: Fix use after free in qed_chain_free (Manish Chopra) [1791024] - [netdrv] qed: Fix race condition between scheduling and destroying the slowpath workqueue (Manish Chopra) [1791024] - [netdrv] qede: remove some unused code in function qede_selftest_receive_traffic (Manish Chopra) [1791024] - [netdrv] qede: Fix race between rdma destroy workqueue and link change event (Manish Chopra) [1791024] - [netdrv] qed: Fix timestamping issue for L2 unicast ptp packets (Manish Chopra) [1791024] - [netdrv] qed: Remove set but not used variable 'p_link' (Manish Chopra) [1791024] - [netdrv] qed: Fix a error code in qed_hw_init() (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 debug features (Manish Chopra) [1791024] - [netdrv] qed: rt init valid initialization changed (Manish Chopra) [1791024] - [netdrv] qed: Debug feature: ilt and mdump (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Add fw overlay feature (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 HSI changes (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 iscsi/fcoe changes (Manish Chopra) [1791024] - [netdrv] qed: Add abstraction for different hsi values per chip (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Additional ll2 type (Manish Chopra) [1791024] - [netdrv] qed: Use dmae to write to widebus registers in fw_funcs (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Parser offsets modified (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Queue Manager changes (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Expose new registers and change windows (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Internal ram offsets modifications (Manish Chopra) [1791024] - [netdrv] qede: Disable hardware gro when xdp prog is installed (Manish Chopra) [1791024] - [netdrv] qed: remove redundant assignments to rc (Manish Chopra) [1791024] - [netdrv] qed: Optimize execution time for nvm attributes configuration (Manish Chopra) [1791024] - [netdrv] qed: fix spelling mistake "queuess" -> "queues" (Manish Chopra) [1791024] - [fs] fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info() (Bhupesh Sharma) [1832060] {CVE-2020-10732} - [tty] vt: selection, push sel_lock up (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection, push console lock down (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [staging] staging: speakup: refactor to use existing code in vt (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection: allow functions to be called from inside kernel (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: don't reinvent min() (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection, close sel_buffer race (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: fix broken display when running aptitude (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection: take screen contents from uniscr if available (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: preserve unicode values corresponding to screen characters (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [input] Input: add safety guards to input_set_keycode() (Chris von Recklinghausen) [1828223] {CVE-2019-20636}- [scsi] scsi: bnx2i: fix potential use after free (Nilesh Javali) [1792114] - [tools] perf python: Fix clang detection to strip out options passed in $CC (Michael Petlan) [1818841] - [tools] libperf: Add counting example (Michael Petlan) [1818841] - [tools] perf report/top TUI: Fix title line formatting (Michael Petlan) [1818841] - [tools] perf probe: Do not depend on dwfl_module_addrsym() (Michael Petlan) [1818841] - [tools] perf probe: Fix to delete multiple probe event (Michael Petlan) [1818841] - [tools] perf parse-events: Fix reading of invalid memory in event parsing (Michael Petlan) [1818841] - [tools] perf python: Fix clang detection when using CC=clang-version (Michael Petlan) [1818841] - [tools] perf map: Fix off by one in strncpy() size argument (Michael Petlan) [1818841] - [tools] tools: Let O= makes handle a relative path with -C option (Michael Petlan) [1818841] - [tools] tools: Fix off-by 1 relative directory includes (Michael Petlan) [1818841] - [tools] perf jevents: Fix leak of mapfile memory (Michael Petlan) [1818841] - [tools] perf bench: Clear struct sigaction before sigaction() syscall (Michael Petlan) [1818841] - [tools] perf bench futex-wake: Restore thread count default to online CPU count (Michael Petlan) [1818841] - [tools] perf top: Fix stdio interface input handling with glibc 2.28+ (Michael Petlan) [1818841] - [tools] perf diff: Fix undefined string comparision spotted by clang's -Wstring-compare (Michael Petlan) [1818841] - [tools] perf symbols: Don't try to find a vmlinux file when looking for kernel modules (Michael Petlan) [1818841] - [tools] perf bench: Share some global variables to fix build with gcc 10 (Michael Petlan) [1818841] - [tools] perf parse-events: Use asprintf() instead of strncpy() to read tracepoint files (Michael Petlan) [1818841] - [tools] perf env: Do not return pointers to local variables (Michael Petlan) [1818841] - [tools] perf tests bp_account: Make global variable static (Michael Petlan) [1818841] - [tools] perf annotate: Fix segfault with source toggle (Michael Petlan) [1818841] - [tools] perf annotate: Align struct annotate_args (Michael Petlan) [1818841] - [tools] perf annotate: Simplify disasm_line allocation and freeing code (Michael Petlan) [1818841] - [tools] perf annotate: Remove privsize from symbol__annotate() args (Michael Petlan) [1818841] - [tools] perf probe: Check return value of strlist__add() for -ENOMEM (Michael Petlan) [1818841] - [tools] perf config: Document missing config options (Michael Petlan) [1818841] - [tools] perf annotate: Fix perf config option description (Michael Petlan) [1818841] - [tools] perf annotate: Prefer cmdline option over default config (Michael Petlan) [1818841] - [tools] perf annotate: Make perf config effective (Michael Petlan) [1818841] - [tools] perf config: Introduce perf_config_u8() (Michael Petlan) [1818841] - [tools] perf annotate: Fix --show-nr-samples for tui/stdio2 (Michael Petlan) [1818841] - [tools] perf annotate: Fix --show-total-period for tui/stdio2 (Michael Petlan) [1818841] - [tools] perf annotate/tui: Re-render title bar after switching back from script browser (Michael Petlan) [1818841] - [tools] perf arch powerpc: Sync powerpc syscall.tbl with the kernel sources (Michael Petlan) [1818841] - [tools] perf auxtrace: Add auxtrace_record__read_finish() (Michael Petlan) [1818841] - [tools] perf arm-spe: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf cs-etm: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf intel-bts: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf intel-pt: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf test: Fix test trace+probe_vfs_getname.sh on s390 (Michael Petlan) [1818841] - [tools] perf bpf: Remove bpf/ subdir from bpf.h headers used to build bpf events (Michael Petlan) [1818841] - [tools] perf llvm: Fix script used to obtain kernel make directives to work with new kbuild (Michael Petlan) [1818841] - [tools] perf tools: Add arm64 version of get_cpuid() (Michael Petlan) [1818841] - [tools] perf trace: Resolve prctl's 'option' arg strings to numbers (Michael Petlan) [1818841] - [tools] perf beauty prctl: Export the 'options' strarray (Michael Petlan) [1818841] - [tools] perf maps: Move kmap::kmaps setup to maps__insert() (Michael Petlan) [1818841] - [tools] perf maps: Fix map__clone() for struct kmap (Michael Petlan) [1818841] - [tools] perf maps: Mark ksymbol DSOs with kernel type (Michael Petlan) [1818841] - [tools] perf maps: Mark module DSOs with kernel type (Michael Petlan) [1818841] - [tools] perf symbols: Convert symbol__is_idle() to use strlist (Michael Petlan) [1818841] - [tools] perf symbols: Update the list of kernel idle symbols (Michael Petlan) [1818841] - [tools] perf stat: Don't report a null stalled cycles per insn metric (Michael Petlan) [1818841] - [tools] perf probe: Add ustring support for perf probe command (Michael Petlan) [1818841] - [tools] perf: Make perf able to build with latest libbfd (Michael Petlan) [1818841] - [tools] perf test: Fix test case Merge cpu map (Michael Petlan) [1818841] - [tools] perf parse: Copy string to perf_evsel_config_term (Michael Petlan) [1818841] - [tools] perf parse: Refactor 'struct perf_evsel_config_term' (Michael Petlan) [1818841] - [tools] perf: Use consistent include paths for libbpf (Michael Petlan) [1818841] - [tools] perf beauty sockaddr: Fix augmented syscall format warning (Michael Petlan) [1818841] - [tools] perf/ui/gtk: Fix gtk2 build (Michael Petlan) [1818841] - [tools] perf ui gtk: Add missing zalloc object (Michael Petlan) [1818841] - [tools] perf tools: Use define api.pure full instead of pure-parser (Michael Petlan) [1818841] - [tools] perf tools: Support --prefix/--prefix-strip (Michael Petlan) [1818841] - [tools] perf report: Clarify in help that --children is default (Michael Petlan) [1818841] - [tools] tools build: Fix test-clang.cpp with Clang 8+ (Michael Petlan) [1818841] - [tools] perf clang: Fix build with Clang 9 (Michael Petlan) [1818841] - [tools] tools lib: Fix builds when glibc contains strlcpy() (Michael Petlan) [1818841] - [tools] perf report/top: Make 'e' visible in the help and make it toggle showing callchains (Michael Petlan) [1818841] - [tools] perf report/top: Do not offer annotation for symbols without samples (Michael Petlan) [1818841] - [tools] perf report/top: Allow pressing hotkeys in the options popup menu (Michael Petlan) [1818841] - [tools] tools ui popup: Allow returning hotkeys (Michael Petlan) [1818841] - [tools] perf hists browser: Allow passing an initial hotkey (Michael Petlan) [1818841] - [tools] perf report/top: Add 'k' hotkey to zoom directly into the kernel map (Michael Petlan) [1818841] - [tools] perf hists browser: Generalize the do_zoom_dso() function (Michael Petlan) [1818841] - [tools] perf report/top: Improve toggle callchain menu option (Michael Petlan) [1818841] - [tools] perf report/top: Add menu entry for toggling callchain expansion (Michael Petlan) [1818841] - [tools] perf report/top: Make ENTER consistently bring up menu (Michael Petlan) [1818841] - [tools] perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc (Michael Petlan) [1818841] - [tools] tools lib api fs: Fix gcc9 stringop-truncation compilation error (Michael Petlan) [1818841] - [tools] libperf: Add man pages (Michael Petlan) [1818841] - [tools] libperf: Move to tools/lib/perf (Michael Petlan) [1818841] - [tools] perf tests bp_signal: Show expected versus obtained values (Michael Petlan) [1818841] - [tools] perf sched timehist: Add support for filtering on CPU (Michael Petlan) [1818841] - [tools] perf record: Adapt affinity to machines with #CPUs > 1K (Michael Petlan) [1818841] - [tools] perf mmap: Declare type for cpu mask of arbitrary length (Michael Petlan) [1818841] - [tools] tools bitmap: Implement bitmap_equal() operation at bitmap API (Michael Petlan) [1818841] - [x86] perf/amd/uncore: Replace manual sampling check with CAP_NO_INTERRUPT flag (Michael Petlan) [1818841] - [x86] perf/x86/intel: Fix inaccurate period in context switch for auto-reload (Michael Petlan) [1818841] - [x86] perf/x86/amd: Add missing L2 misses event spec to AMD Family 17h's event map (Michael Petlan) [1818841] - [x86] perf/x86/msr: Add Tremont support (Michael Petlan) [1818841] - [x86] perf/x86/cstate: Add Tremont support (Michael Petlan) [1818841] - [x86] perf/x86/intel: Add Elkhart Lake support (Michael Petlan) [1818841] - [include] kernel/events: Add a missing prototype for arch_perf_update_userpage() (Michael Petlan) [1818841] - [x86] perf/x86/amd: Add support for Large Increment per Cycle Events (Michael Petlan) [1818841] - [x86] perf/x86/amd: Constrain Large Increment per Cycle events (Michael Petlan) [1818841] - [x86] perf/x86/intel/rapl: Add Comet Lake support (Michael Petlan) [1818841] - [x86] perf/x86/intel: Explicitly include asm/io.h to use virt_to_phys() (Michael Petlan) [1818841] - [x86] x86/cpu: Add Elkhart Lake to Intel family (Michael Petlan) [1818841] - [x86] x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode (David Arcari) [1837490] - [x86] x86/intel: Disable HPET on Intel Ice Lake platforms (David Arcari) [1837490] - [x86] x86/timer: Force PIT initialization when !X86_FEATURE_ARAT (David Arcari) [1837490] - [x86] x86/timer: Skip PIT initialization on modern chipsets (David Arcari) [1837490] - [x86] x86/apic: Rename 'lapic_timer_frequency' to 'lapic_timer_period' (David Arcari) [1837490] - [x86] x86/apic: Unify duplicated local apic timer clockevent initialization (David Arcari) [1837490] - [vhost] vsock: kick send_pkt worker once device is started (Stefano Garzarella) [1835651] - [tools] redhat: update kvm/{arm, arm64} headers in tools (Gavin Shan) [1833572] - [tools] kvm: selftests: aarch64: Use stream when given (Gavin Shan) [1833572] - [virt] kvm: arm64: Fix 32bit PC wrap-around (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS (Gavin Shan) [1833572] - [arm64] kvm: arm64: Save/restore sp_el0 as part of __guest_enter (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-its: Fix memory leak on the error path of vgic_add_lpi() (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-v3: Retire all pending LPIs on vcpu destroy (Gavin Shan) [1833572] - [virt] kvm: arm: vgic-v2: Only use the virtual state when userspace accesses pending bits (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Only use the virtual state when userspace accesses enable bits (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Synchronize the whole guest on GIC{D, R}_I{S, C}ACTIVER read (Gavin Shan) [1833572] - [virt] kvm: arm64: psci: Forbid 64bit functions for 32bit guests (Gavin Shan) [1833572] - [virt] kvm: arm64: psci: Narrow input registers when using 32bit functions (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Update effective affinity of virtual SGIs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add support for VPENDBASER's Dirty+Valid signaling (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Expose HW-based SGIs in debugfs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Eagerly vmap vPEs (Gavin Shan) [1833572] - [arm64] kvm: arm64: gicv4.1: Allow non-trapping WFI when using HW SGIs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add VSGI property setup (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Reload VLPI configuration on distributor enable/disable (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add VSGI allocation/teardown (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Plumb SGI implementation selection in the distributor (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Move doorbell management to the GICv4 abstraction layer (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Allow SGIs to switch between HW and SW interrupts (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb set_vcpu_affinity SGI callbacks (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Add direct injection capability to SGI registers (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Let doorbells be auto-enabled (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb get/set_irqchip_state SGI callbacks (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb mask/unmask SGI callbacks (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add initial SGI configuration (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb skeletal VSGI irqchip (Gavin Shan) [1833572] - [irqchip] gic-v3: Move irq_domain_update_bus_token to after checking for NULL domain (Gavin Shan) [1833572] - [kernel] irqchip/gic-v4: Use Inner-Shareable attributes for virtual pending tables (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Map the ITS SGIR register page (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Advertise support v4.1 to KVM (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Ensure mutual exclusion betwen invalidations on the same RD (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Wait for completion of redistributor's INVALL operation (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Ensure mutual exclusion between vPE affinity change and RD access (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Skip absent CPUs while iterating over redistributors (Gavin Shan) [1833572] - [irqchip] gic-v3: Use SGIs without active state if offered (Gavin Shan) [1833572] - [irqchip] gic-v4: Provide irq_retrigger to avoid circular locking dependency (Gavin Shan) [1833572] - [irqchip] gic-v3-its: Probe ITS page size for all GITS_BASERn registers (Gavin Shan) [1833572] - [irqchip] gic-v3-its: Fix access width for gicr_syncr (Gavin Shan) [1833572] - [documentation] kvm: arm/arm64: Always capitalize ITS (Gavin Shan) [1833572] - [nvme] nvme-pci: align io queue count with allocted nvme_queue in nvme_probe (Gopal Tiwari) [1837824] - [rtc] rtc: cmos: Stop using shared IRQ (Pingfan Liu) [1829667]- [netdrv] enic: prevent waking up stopped tx queues over watchdog reset (Govindarajulu Varadarajan) [1797807] - [kernel] crash_core: Increase crashkernel=auto size for x86_64 & S390 (Kairui Song) [1746644] - [netdrv] net: iavf: reject unsupported coalescing params (Stefan Assmann) [1781341] - [netdrv] iavf: Enable support for up to 16 queues (Stefan Assmann) [1781341] - [netdrv] iavf: use tc_cls_can_offload_and_chain0() instead of chain check (Stefan Assmann) [1781341] - [netdrv] treewide: Use sizeof_field() macro (Stefan Assmann) [1781341] - [netdrv] i40e: Remove unneeded conversion to bool (Stefan Assmann) [1781334] - [netdrv] net: i40e: reject unsupported coalescing params (Stefan Assmann) [1781334] - [netdrv] intel: Replace zero-length array with flexible-array member (Stefan Assmann) [1781334] - [netdrv] i40e: Fix the conditional for i40e_vc_validate_vqs_bitmaps (Stefan Assmann) [1781334] - [netdrv] i40e: fix spelling mistake "to" -> "too" (Stefan Assmann) [1781334] - [netdrv] i40e: Set PHY Access flag on X722 (Stefan Assmann) [1781334] - [netdrv] i40e: Fix virtchnl_queue_select bitmap validation (Stefan Assmann) [1781334] - [netdrv] i40e: Removing hung_queue variable to use txqueue function parameter (Stefan Assmann) [1781334] - [netdrv] treewide: Use sizeof_field() macro (Stefan Assmann) [1781334] - [netdrv] i40e: need_wakeup flag might not be set for Tx (Stefan Assmann) [1781334] - [netdrv] i40e: Fix receive buffer starvation for AF_XDP (Stefan Assmann) [1781334] - [netdrv] i40e: fix potential RX buffer starvation for AF_XDP (Stefan Assmann) [1781334] - [block] null_blk: Fix changing the number of hardware queues (Ming Lei) [1835602] - [block] block: reset mapping if failed to update hardware queue count (Ming Lei) [1835602] - [block] block: alloc map and request for new hardware queue (Ming Lei) [1835602] - [block] block: save previous hardware queue count before udpate (Ming Lei) [1835602] - [block] block: free both rq_map and request (Ming Lei) [1835602] - [block] blk-mq: Fix a recently introduced regression in blk_mq_realloc_hw_ctxs() (Ming Lei) [1835602] - [documentation] Documentation: admin-guide: PM: Add intel_idle document (Steve Best) [1485545] - [idle] intel_idle: Use ACPI _CST on server systems (Steve Best) [1485545] - [idle] intel_idle: Add module parameter to prevent ACPI _CST from being used (Steve Best) [1485545] - [idle] intel_idle: Allow ACPI _CST to be used for selected known processors (Steve Best) [1485545] - [idle] intel_idle: Use ACPI _CST for processor models without C-state tables (Steve Best) [1485545] - [idle] intel_idle: Refactor intel_idle_cpuidle_driver_init() (Steve Best) [1485545] - [infiniband] RDMA/uverbs: Move IB_EVENT_DEVICE_FATAL to destroy_uobj (Kamal Heib) [1786608] - [infiniband] RDMA/uverbs: Do not discard the IB_EVENT_DEVICE_FATAL event (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix double put of resource (Kamal Heib) [1786608] - [infiniband] IB/core: Fix potential NULL pointer dereference in pkey cache (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Fix another case where pq is left on waitlist (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Always return ERR_PTR from rxe_create_mmap_info() (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix race between destroy and release FD object (Kamal Heib) [1786608] - [infiniband] IB/rdmavt: Always return ERR_PTR from rvt_create_mmap_info() (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix overwriting of uobj in case of error (Kamal Heib) [1786608] - [infiniband] RDMA/core: Prevent mixed use of FDs between shared ufiles (Kamal Heib) [1786608] - [infiniband] RDMA/uverbs: Fix a race with disassociate and exit_mmap() (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix potential siw_mem refcnt leak in siw_fastreg_mr() (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix an error check in cm_alloc_id_priv() (Kamal Heib) [1786608] - [net] svcrdma: Fix trace point use-after-free race (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Call kobject_put() when kobject_init_and_add() fails (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Set sys_image_guid to be aligned with HW IB devices (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Use scnprintf() for avoiding potential buffer overflow (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Remove kobj from hfi1_devdata (Kamal Heib) [1786608] - [infiniband] IB/rdmavt: Delete unused routine (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Fix configuration of atomic queue pair attributes (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Fix memory leaks in sysfs registration and unregistration (Kamal Heib) [1819051 1786608] - [net] svcrdma: Fix leak of transport addresses (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Suppress uninitialized var warning (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Add missing locking around id.state in cm_dup_req_handler (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Read id.state under lock when doing pr_debug() (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Remove a race freeing timewait_info (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix checking for allowed duplicate listens (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id() (Kamal Heib) [1786608] - [net] svcrdma: Fix double svc_rdma_send_ctxt_put() in an error path (Kamal Heib) [1786608] - [infiniband] RDMA/core: Remove the duplicate header file (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix passive connection establishment (Kamal Heib) [1786608] - [infiniband] RDMA/ucma: Put a lock around every call to the rdma_cm layer (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix setting active_{speed, width} attributes (Kamal Heib) [1798583 1786608] - [scsi] qla2xxx: Update driver version to 10.01.00.25.08.3-k (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Delete all sessions before unregister local nvme port (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: make 1-bit bit-fields unsigned int (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix MPI failure AEN (8200) handling (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Move free of fcport out of interrupt context (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix I/Os being passed down when FC device is being deleted (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Set Nport ID for N2N (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Handle NVME status iocb correctly (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Remove restriction of FC T10-PI and FC-NVMe (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Serialize fc_port alloc in N2N (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix NPIV instantiation after FW dump (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Force semaphore on flash validation failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: add more FW debug information (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Update BPM enablement semantics (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use a dedicated interrupt handler for 'handshake-required' ISPs (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Return appropriate failure through BSG Interface (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix FCP-SCSI FC4 flag passing error (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add 16.0GT for PCI String (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use QLA_FW_STOPPED macro to propagate flag (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add fixes for mailbox command (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix control flags for login/logout IOCB (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Save rscn_gen for new fcport (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use correct ISP28xx active FW region (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use endian macros to assign static fields in fwdump header (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add endianizer macro calls to fc host stats (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use get_unaligned_*() instead of open-coding these functions (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Improve readability of the code that handles qla_flt_header (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix mtcp dump collection failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix stuck session in GNL (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix RIDA Format-2 (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Consolidate fabric scan (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Correct fcport flags handling (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix stuck login session using prli_pend_timer (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use common routine to free fcport struct (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add D-Port Diagnostic reason explanation logs (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix update_fcport for current_topology (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Cleanup unused async_logout_done (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add a shadow variable to hold disc_state history of fcport (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix fabric scan hang (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Remove defer flag to indicate immeadiate port loss (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add debug dump of LOGO payload and ELS IOCB (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Ignore PORT UPDATE after N2N PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Don't defer relogin unconditonally (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Send Notify ACK after N2N PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Configure local loop for N2N target (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix PLOGI payload and ELS IOCB dump length (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Don't call qlt_async_event twice (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Allow PLOGI in target mode (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Change discovery state before PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Drop superfluous INIT_WORK of del_work (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Initialize free_work before flushing it (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use explicit LOGO in target mode (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Ignore NULL pointer in tcm_qla2xxx_free_mcmd (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: unregister ports after GPN_FT failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan (Nilesh Javali) [1789526] - [s390] s390/kexec_file: fix initrd location for kdump kernel (Lianbo Jiang) [1835097]- [sound] ALSA: ALSA - update sound configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: Revert "ALSA: Use the legacy HDA driver as default for Intel DSP platforms" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: IPC: dai-intel: move ALH declarations in header file (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: add core id to sof_ipc_comp (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: bump the version (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add alac & ape decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: Add wma decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add wma codec profiles (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove X86 dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: depend on ACPI || OF (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: depend on ACPI (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix regmap dependencies and align with other serial links (Jaroslav Kysela) [1797509] - [sound] ALSA: treewide: Add SPDX license identifier - Makefile/Kconfig (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix kconfig help format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Kconfig: fix help format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove useless prototypes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: Switch to use fwnode_property_count_uXX() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: don't program ports when a stream that has not been prepared (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix support for multiple Slaves on the same link (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: do not update parameters during DISABLED-PREPARED transition (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: only prepare stream when it is configured (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: update state machine and add state checks (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: Ensure that code is inside the code blocks (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: fix stream.rst markup warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: Add documentation for multi link (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove redundant pr_err traces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove unnecessary variable initializations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix disable sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix bad unlock balance (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: use sdw_write instead of update (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix PDI/stream mapping for Bulk (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus_type: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: export helpers to find row and column values (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: check first if Slaves become UNATTACHED (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: Add read_only_wordlength flag to port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix device number leak on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: track unattach_request to handle all init sequences (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add initialization_complete definition (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add enumeration_complete structure (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add probe_complete structure and new fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove bitfield for unique_id, use u8 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: make stream name a const pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Add compute_params callback (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: provide correct return value on error (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add helper macros for devID fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: don't treat CMD_IGNORED as error on ClockStop (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add clock stop helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix io error when processing alert event (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: avoid multiple assignments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: disable pm_runtime in sdw_slave_delete (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add helper to clear Slave status to UNATTACHED (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: write Slave Device Number without runtime_pm (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add PM/no-PM versions of read/write functions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: improve dynamic debug comments for enumeration (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: split handling of Device0 events (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with initialization_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with enumeration_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with probe_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: ignore uniqueID when irrelevant (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: add helper to extract slave ID (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: fix scanf format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: core: add device tree support for slave devices (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: set initial value to port_status (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: clear FIFO to avoid pop noise issue on playback start (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: multi-link support (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: commit changes in the exit_reset() sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove automatic command retries (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove PREQ_DELAY assignment (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: enable NORMAL operation in cdns_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: reorder MCP_CONFIG settings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: make SSP interval programmable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: move clock/SSP related inits to dedicated function (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: merge routines to clear/set bits (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: mask Slave interrupt before stopping clock (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: fix a io timeout issue in S3 test (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: add clock_stop/restart routines (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: handle error cases with CONFIG_UPDATE (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: add interface to check clock status (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: simplifiy cdns_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: s/update_config/config_update (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: fix kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove useless variable incrementation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: update kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: handle multiple status reports per Slave (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: remove config update for interrupt setting (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: log more useful information during timeouts (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: clear interrupt status before enabling interrupt (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: filter out bad interrupts (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: make clock stop exit configurable on init (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: free all resources on hw_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add sdw_stream_setup helper for .startup callback (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add trigger support in sdw dai driver (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add prepare support in sdw dai driver (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: rename res field as link_res (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix factor of two in MCLK handling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: update stream callbacks for hwparams/free stream operations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: update interfaces between ASoC and SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix typo in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: use correct header for io calls (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: add kernel module parameter to filter out links (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: add checks on link numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: filter SoundWire controller device search (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove empty line after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add helper for initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix intel_register_dai PDI offsets and numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel/cadence: add flag for interrupt enable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove playback/capture stream_name (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove DAI_ID_RANGE definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add missing headers for cross-compilation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: handle disabled links (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add debugfs register dump (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: more alignment fixes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add hw_reset capability in debugfs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel/cadence: fix startup sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: improve PDI allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: don't filter out PDI0/1 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence/intel: simplify PDI/port mapping (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add debugfs register dump (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: move shutdown() callback and don't export symbol (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix alignment issues in header files (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix SPDX license for header files (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add kernel parameter to override interrupt mask (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix divider setting in clock register (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: make use of mclk_freq property (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: use firmware defaults for frame shape (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: revisit interrupt settings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix definitions for INTSTAT0/1 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix register definition for SLAVE_STATE (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: simplify bus clash interrupt clear (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: check the number of bidir PDIs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: log Slave status mask on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: use rate_limited dynamic debug (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: remove spurious newline (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: balance parentheses (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cdns: Fix compilation error on arm64 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove empty line after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: read mclk_freq property from firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix channel number reported by hardware (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: prevent possible dereference in hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove BIOS work-arounds (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: set dai min and max channels correctly (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Intel: add log for number of PCM and PDM PDIs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add debugfs support (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add new mclk_freq field for properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: include mod_devicetable.h to avoid compiling warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: rename/clarify MIPI DisCo properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: clarify comment (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi-disco: fix clock stop modes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi-disco: remove master_count property for masters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove master data port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add port-related definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: wrap macro argument in parenthesis (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: rename 'freq' fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix master/link error (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix out of boundary access on port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add a blank line between functions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix more typos (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: more alignment fixes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove empty line before/after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add missing newlines in dynamic debug logs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove useless initialization of local variable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix boolean comparison (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: protect macro parameters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix implicit header use of module.h/export.h (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix inversion in devm_kcalloc parameters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: remove spurious newline (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: remove useless parentheses (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix typos in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove useless initializations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix SPDX license for header files (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: Add SNDRV_PCM_INFO_BATCH flag (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support for ALAC and APE decoders (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support to wma decoder (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: only enable dais from device tree (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support for alac and ape configs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support to wma config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: pass codec profile to q6asm_open_write (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6routing: remove default routing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: Allow the MCDT driver to build into modules (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: lpass-platform: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: common: Silence duplicate parse error messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: handle soundwire stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Update dependencies for Arizona machine drivers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: qcom: add support for get_sdw_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soundwaire: qcom: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: qcom: add support for SoundWire controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: Fix build after removal of DAI suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Silence warnings during deferred probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: fsi: Restore devm_ioremap() alignment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: dma: set bus width to data width for monaural data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix "status check failed" spam for multi-SSI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix sai probe (Jaroslav Kysela) [1797509] - [sound] ALSA: soc/stm/stm32_sub_sai: Add missing '\n' in log messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: Add missing cleanup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix regmap status check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sunxi: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sun8i-codec: Remove unused dev from codec struct (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Support DAPM events for built-in microphone (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: remove redundant assignment to variable ret (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for platforms using UDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: Add udma-pcm platform driver for UDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: zte: zx-spdif: remove redundant dev_err message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: zte: zx-tdm: remove redundant variables dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: apq8016_sbc: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mxs: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: use SND_SOC_DAPM_PINCTRL in TDM out (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: apply some refactors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: pull TDM GPIO pins down when probed (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: change supported formats of DL2 and UL1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: add speaker switch (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650: support HDMI jack reporting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add support for the JZ4770 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add support for the JZ4760 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Avoid passing enum as match data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add local dev variable in probe function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Use of_device_get_match_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Fix divider written at incorrect offset in register (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: img: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card-utils: use for_each_pcm_streams() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: Add support for codec2codec DAI links (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_asrc_dma: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-i2s: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cirrus: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: Fix pointer cast warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: brcm: Add DSL/PON SoC audio driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mchp-i2s-mcc: make signed 1 bit bitfields unsigned (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Allow I2S wake event after ACP is powerd On (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x-pcm-dma: clean up two indentation issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: AMD: Clear format bits before setting them (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Adding TDM support in hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix button configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: amd: acp3x: Add missing include (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix compile warning of argument type (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: amd: Add DMIC switch capability to machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Add machine driver for Raven based platform (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Fix potential NULL dereference (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Alpha S (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply async workaround for Scarlett 2i4 2nd gen (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add quirk for Focusrite Scarlett 2i2 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use pcm_for_each_format() macro for PCM format iterations (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix missing braces in some struct inits (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add connector notifier delegation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Check mapping at creating connector controls, too (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add mixer workaround for TRX40 and co (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't create jack controls for PCM terminals (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't override ignore_ctl_error value from the map (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Filter error from connector kctl ops, too (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix mixer controls' USB interface for Kingston HyperX Amp (0951:16d8) (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Parse source ID of UAC2 effect unit (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: audio-v2: Add uac2_effect_unit_descriptor definition (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't create a mixer element with bogus volume range (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix case when USB MIDI interface has more than one extra endpoint descriptor (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-midi: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Fix POD HD500 audio playback (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Fix endless MIDI read loop (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add support for Presonus Studio 1810c (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add support for MOTU MicroBook IIc (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Inform devices that need delayed registration (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add delayed_register option (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Rewrite registration quirk handling (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Create a registration quirk for Kingston HyperX Amp (0951:16d8) (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd9335: fix address map representation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Remove some unnecessary NULL checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: remove unused headers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: fix High Accuracy Buck enable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Remove set but not unused variable 'hph_comp_ctrl7' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm0010: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8960: Fix wrong clock after suspend & resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: wsa881x: remove soundwire stream handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: wsa881x: request gpio direction before setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wsa881x: mark read_only_wordlength flag (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8974: remove unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Use scnprintf() for the limited buffer output (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas571x: disable regulators on failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fixed incorrect amp_level setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add support for ISENSE and VSENSE (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add entries for the TAS2563 audio amplifier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add support for digital volume control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: Fix VAG power-on handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: modify some structure to be static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply ac97 fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm89xx: Add missing dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix unmet dependencies (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply misc fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau7118: Fix Kconfig warning without CONFIG_I2C (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply I2C fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply SPI fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682-sdw: fix 'defined but not used' pm functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Make rt5682_clock_config static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Fix build error without CONFIG_I2C (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: move DAI clock registry to I2S mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add a property for DMIC delay (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add a property for DMIC clock rate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: remove noisy debug messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix the random recording noise of headset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Fine tune the HP performance in soundwire mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Revise the DAC1 volume setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Revise the function name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add the soundwire support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Use imply for SND_SOC_ALL_CODECS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add CCF usage for providing I2S clks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Enable PLL2 function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add the field "is_sdw" of private data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5659: remove redundant assignment to variable idx (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Add platform-data for Medion E1239T (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: use slot and rx_mask to configure stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: add set_tdm_slot() support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: fix typo for bypass boost control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rl6231: Add new supports on rl6231 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: Make RK3328 GPIO_MUTE control explicit (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: MT6660: make spdxcheck.py happy (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: MT6660 update to 1.0.8_G (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98357a: Add ACPI HID MAX98360A (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98357a: move control of SD_MODE to DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: hdac_hdmi: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cs4270: pull reset GPIO low then high (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: allow operation without i915 gfx (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: fix ordering bug in resume flow (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add parameter to control SoundWire clock stop quirks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: initial SoundWire machine driver autodetect (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add SoundWire stream config/free callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Account for compress streams when servicing IRQs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix stream cleanup on hw free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: clear the IPC ack bit after FW_PURGE done (Jaroslav Kysela) [1797509] - [sound] ALSA: Asoc: SOF: Intel: hda: check SoundWire wakeen interrupt in irq thread (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add WAKEEN interrupt support for SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: merge IPC, stream and SoundWire interrupt handlers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add SoundWire configuration interface (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Expose SDnFMT helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Fix probe point getter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pcm: skip DMA buffer pre-allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Turn "firmware boot complete" message into a dbg message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: ipc: check ipc return value before data copy (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: sof-audio: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Do not reset hw_params for streams that ignored suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: audio: Add helper to check if only D0i3 streams are active (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add i.MX8QM device descriptor (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Remove SOF_IPC_EXT_DMA_BUFFER (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Make sof_ipc_ext_data enum more rigid (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix uninitialised "work" with VirtIO (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: (cosmetic) use for_each_pcm_streams() in sof_dai_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: connect dai widget to all cpu-dais (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: remove unnecessary ROM IPC filter function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-dai: add stream capability (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-ctrl: add reset cycle before parsing capabilities (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: call codec wake at chip init (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: do not leave clock gating off upon error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: disable SoundWire interrupts on suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Improve DSP state logging (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: use snd_sof_dsp_set_power_state() op (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Allow trace DMA in S0 when DSP is in D0I3 for debug (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Amend the DSP state transition diagram (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: cnl: Implement feature to support DSP D0i3 in S0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: remove unnecessary waitq before loading firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add min/max channels for SSP on Baytrail/Broadwell (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Probe compress operations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix Kconfig indentation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: Add ops for i.MX8QM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Rename i.MX8 platform to i.MX8X (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Provide probe debugfs support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Move DSP power state transitions to platform-specific ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pm: Introduce DSP power states (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pm: Unify suspend/resume routines (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Add Probe compress CPU DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Generic probe compress operations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Implement Probe IPC API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_da7219_max98927: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: haswell: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: BXT: switch pcm512x based boards to sof_pcm512x (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: CHT: add support for pcm512x boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: soc-acpi-intel-icl-match: remove useless 'rt1308_2_adr' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: soc-acpi-intel-cml-match: remove useless 'rt1308_2_adr' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: drop reverse deps for SND_HDA_CODEC_HDMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Add support for tgl-max98373-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Add rt1015 speaker amp support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: drop reverse deps for SND_HDA_CODEC_HDMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_sdw: Add Volteer support with RT5682 SNDW helper function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: add sof_sdw machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match table for TGL RT5682 SoundWire driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: soc-acpi: update topology and driver name for SoundWire platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: Add mach table for tgl-max98373-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: expand description of _ADR-based devices (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Await purge request ack on CNL (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Allow for ROM init retry on CNL platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skylake: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Enable codec wakeup during chip init (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Select hda configuration permissively (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Remove superfluous chip initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Shield against no-NHLT configurations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_da7219_max98373: Add speaker switch (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_da7219_max98373: Add support for max98360a speaker amp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: disable route checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel/skl/hda - add no-HDMI cases to generic HDA driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Make glk+rt5682 echo ref dynamic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: don't use GFP_ATOMIC for machine driver contexts (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: Revert back SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Revert SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: Revert SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: (cosmetic) simplify structure member access (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Fix uninitialized variable compiler warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: mrfld: return error codes when an error occurs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: make HDMI optional for all platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: add support for SOF platforms with pcm512x (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: mrfld: fix incorrect check on p->sink (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Check drv->lock is locked in sst_fill_and_send_cmd_unlocked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Take the drv->lock mutex before calling sst_send_slot_map() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use scnprintf() for string truncation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Allow setting preallocation again for x86 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix endianness issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_dai_config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of pcm_new_ver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Add missing memory checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check soc_tplg_add_route return value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_*_create (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_create_tlv (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: use name_prefix for new kcontrol (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Perform component check upfront (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix regwmask (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Remove dapm_connect_dai_link_widgets helper (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Move error message to avoid some duplication (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: select sleep_state when initializing PINCTRL widget (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: connect virtual mux with default value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: fixup dapm kcontrol widget (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: revert all changes to DAI startup/shutdown sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: fix DAI startup/shutdown sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: return proper error for get_sdw_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: add get_sdw_stream() callback (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: export DPCM runtime update functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dpcm: allow start or stop during pause for backend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: (cosmetic) simplify dpcm_prune_paths() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge CPU/Codec for soc_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Fix regression introducing multiple copies of DAI widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add asoc_rtd_to_cpu/codec() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge CPU/Codec DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add for_each_card_widgets() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add for_each_card_dapms() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: remove non plural form for_each_xxx macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: add for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: disable route checks for legacy devices (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add initial support for multiple CPU DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix card registration regression (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: don't use rtd->cpu_dai on for_each_rtd_cpu_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add multiple CPU DAI support in DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add dapm_add_valid_dai_widget helper (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Do Digital Mute for both CPU/Codec in same timing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: check DAI's activity more simply (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: tidyup dulicate handing at dpcm_fe_dai_startup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use snd_soc_dai_get_pcm_stream() at dpcm_set_fe_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add dpcm_fe_dai_cleanup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dpcm_fe_dai_close() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Export parameter intersection logic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove duplicate be check from dpcm_add_paths() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use defined stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: check if cpu-dai supports a given stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Return error if the function does not support multi-cpu (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add multiple CPU DAI support for PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fix state tracking error in snd_soc_component_open/close() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dpcm_path_put() to soc-pcm.c (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: merge dpcm_run_new/old_update() into dpcm_fe_runtime_update() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dai_get_widget() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: cleanup soc_pcm_apply_msb() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dai_get_pcm_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dpcm: remove confusing trace in dpcm_get_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Fix possible buffer overflow in dpcm state sysfs output (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: merge playback/cature_active into stream_active (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use goto and remove multi return (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dpcm_can_be() and remove duplicate code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove snd_soc_dpcm_be_get/set_state() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove soc_dpcm_be_digital_mute() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dpcm_get_be() at dpcm_end_walk_at_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dai_get_widget() at dpcm_end_walk_at_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dai_get_widget() at dpcm_get_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dai_get_widget() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fix regression in soc_new_pcm() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: tidyup soc_pcm_open() order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move soc_pcm_close() next to soc_pcm_open() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: adjustment for DAI member 0 reset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: call snd_soc_component_open/close() once (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: don't use bit-OR'ed error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add for_each_dapm_widgets() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_runtime_action() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: call snd_soc_dai_startup()/shutdown() once (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: ensure component names are unique (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: allow a dt node to provide several components (Jaroslav Kysela) [1797509] - [sound] ALSA: emu8000: Fix the cast to __user pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: shut up gcc-10 range warning (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_queue() (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_locked() (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: use KBUILD_MODNAME for struct driver.name instead of string (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Fix endianness annotations (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: remove redundant assignment to variable err (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: fix if-statement empty body warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Fix invalid access for enumerated ctl items (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add new codec supported for ALC245 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix unexpected init_amp override (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset mic on Asus FX505DT (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for MSI GL63 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add HP new mute led supported for ALC236 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add supported new mute Led for HP (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for Lenovo Carbon X1 8th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Set principled PC Beep configuration for ALC256 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - a fake key event is triggered by running shutup (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek: Enable mute LED on an HP system (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset of Acer N50-600 with ALC662 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable headset mic of Acer X2660G with ALC662 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek: Fix pop noise on ALC225 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Move ELD parse and jack reporting into update_eld() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Move runtime PM resume into hdmi_present_sense_via_verbs() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Don't use standard hda_jack for generic HDMI jacks (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Reduce hda_jack_tbl lookup at unsol event handling (Jaroslav Kysela) [1797509] - [sound] ALSA: drm/nouveau: Fix regression by audio component transition (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: fix without unlocked before return (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: fix race in monitor detection during probe (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Add module option to disable audio component binding (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Add Recon3Di quirk to handle integrated sound on EVGA X99 Classified motherboard (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Match both PCI ID and SSID for driver blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Remove ASUS ROG Zenith from the blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: call runtime_allow() for all hda controllers (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Keep the controller initialization even if no codecs found (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Release resources at error in delayed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Honor PM disablement in PM freeze and thaw_noirq ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Don't release card at firmware loading error (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add driver blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: remove redundant assignment to variable timeout (Jaroslav Kysela) [1797509] - [sound] ALSA: hda_codec: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Always use jackpoll helper for jack update after resume (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Skip controller resume if not needed (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix potential access overflow in beep helper (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: default enable CA0132 DSP support (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Fix endianness annotations (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Remove unnecessary cast in kfree (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: remove redundant variable capture_flag (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Use standard macros for fixing PCM format cast (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Fix PCM format assignment (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Use a macro for parameter masks to reduce the needed cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Minor refactoring (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: No need to take runtime reference twice in pcm_pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: Consider DMA cache caused delay in pointer callback (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: Consider DMA cache caused delay in pointer callback (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm_dmaengine: Use pcm_for_each_format() macro for PCM format iteration (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix superfluous snprintf() usage (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Place the plugin buffer overflow checks correctly (for 5.7) (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Fix regression by buffer overflow fix (again) (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Remove WARNING from snd_pcm_plug_alloc() checks (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Simplify plugin frame size calculations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Avoid plugin buffer overflow (Jaroslav Kysela) [1797509] - [sound] ALSA: info: remove redundant assignment to variable c (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Unlock mutex temporarily for sleeping at read/write (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Use standard macros for fixing PCM format cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add a standalone version of snd_pcm_limit_hw_rates (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: More helper macros for reducing snd_pcm_format_t cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm.h: add for_each_pcm_streams() (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Add snd_device_get_state() helper (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Implement compress page allocation and free routines (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Expand DMA buffer information (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Fix sparse warning (Jaroslav Kysela) [1797509] - [sound] ALSA: control: Fix incompatible protocol error (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: bump protocol version up to v2.1.0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: remove unused macro for timestamping of elem_value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: use __u32 instead of uint32_t in uapi headers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: uapi: remove unused sof header files (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Drop unneeded typedefs (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Add linux/types.h include back (but carefully) (Jaroslav Kysela) [1797509] - [sound] ALSA: hdspm: Drop linux/types.h inclusion in uapi header (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Spelling s/configr/configur/ (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fix for_rtd_codec_dai_rollback() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dpcm: tidyup for_each_dpcm_xx() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple_card_utils.h: Fix potential multiple redefinition error (Jaroslav Kysela) [1797509] - [sound] ALSA: rawmidi: Avoid bit fields for state flags (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Drop snd_dma_pci_data() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: media: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: media: solo6x10: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: cs231xx: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: em28xx: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: delete unused proc_fs.h include (Jaroslav Kysela) [1797509] - [sound] ALSA: media: em28xx-audio: use GFP_KERNEL for memory allocation during init (Jaroslav Kysela) [1797509] - [sound] ALSA: media: go7007: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tm6000: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: usbtv: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: solo6x10: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tw686x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tw686x: audio: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: Allow const arrays for legacy resource management helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: pcmcia: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: pcmcia: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: fix corruption due to spin lock without restoration in SoftIRQ context (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: fix for Stanton SCS.1d (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: don't add MIDI/PCM interface when packet streaming is unavailable (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: fix return value in error path of isochronous resources reservation (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: use ENXIO for not-supported cases (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-motu: fix double unlocked 'motu->mutex' (Jaroslav Kysela) [1797509] - [sound] ALSA: fireface: fix return value in error path of isochronous resources reservation (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: loosen stream format check for MIDI conformant data channel (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: fix fallback from protocol extension into limited functionality (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: add support for Alesis MasterControl (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: emux: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply 48kHz fixed rate playback for Jabra Evolve 65 headset (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply sample rate quirk for Audioengine D1 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix UAC2/3 effect unit parsing (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix endianess in descriptor validation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: add implicit fb quirk for MOTU M Series (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: unlock on error in probe (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix sync-ep altsetting sanity check (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add boot quirk for MOTU M Series (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: update old-style static const declaration (Jaroslav Kysela) [1797509] - [sound] ALSA: bcd2000: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use lower hex numbers for IDs (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply the sample rate quirk for Bose Companion 5 (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Constify struct snd_usb_audio_quirk entries (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Constify snd_ratden definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_pcm_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix Corsair Virtuoso mixer label collision (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix set_format altsetting sanity check (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: set the interface format after resume on Dell WD19 (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Adjust indentation in snd_usX2Y_hwdep_dsp_status (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ua101: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hiface: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix Focusrite Scarlett 6i6 gen1 - input handling (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix NULL dereference at parsing BADD (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix Scarlett 6i6 Gen 2 port data (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add skip_validation option (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix incorrect size check for processing/extension units (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix incorrect NULL check in create_yamaha_midi_quirk() (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: not submit urb for stopped endpoint (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix missing error check at mixer resolution test (Jaroslav Kysela) [1797509] - [sound] ALSA: ua101: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: hiface: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Drop the dead code (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: intel_hdmi: Remove dev_err() on platform_get_irq() failure (Jaroslav Kysela) [1797509] - [sound] ALSA: x86: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hdml-lpe-audio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: xen: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: atmel: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: arm: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: arm: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: wavefront: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sc6000: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3sa2: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: msnd: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cs423x: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4236: fix error return comparison of an unsigned integer (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8330: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8328: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xlnx: Use devm_platform_ioremap_resource() in xlnx_formatter_pcm_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: xtfpga-i2s: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: xlnx_formatter_pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: aio-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: txx9aclc: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: sdma-pcm: Add back the flags parameter for non standard dma names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: disable rx_fifo after disable stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: add a TDM configuration callback (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sunxi: sun4i-codec: remove unneeded semicolon (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix race condition in irq handler (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: retry synchronization in sync state (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix possible circular locking (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: add restriction on mmap support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix sysclk management on shutdown (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: dfsdm: fix 16 bits record (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm: stm32_adfsdm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: sprd-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: ipc: Fix memory leak in sof_set_get_large_ctrl_data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: fix the CONFIG_ prefix missing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: fix memory allocation failure check on priv->pd_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: utils: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-utils: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-ops: use snd_soc_card_get_kcontrol() at snd_soc_limit_volume() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic-dmaengine-pcm: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic-dmaengine: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: do error check after rsnd_channel_normalization() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: dma: fix SSI9 4/5/6/7 busif dma address (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: fsi: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rcar: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: core.c: add WARN_ON() on rsnd_channel_normalization() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: add missing of_node_put() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: rsnd: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: siu_pcm: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: siu_pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dma-sh7760: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: dma-sh7760: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Use pr_warn instead of pr_warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: idma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Rename Arndale card driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: arndale: Add support for WM1811 CODEC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: arndale: Simplify DAI link initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: Enable SHDN to fix headset detection (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip_max98090: Add HDMI jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip_max98090: Optionally support HDMI use case (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6routing: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: lpass-platform: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: pxa2xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: pxa-ssp: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: poodle: Spelling s/enpoints/endpoints/, s/connetion/connection/ (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: pxa2xx: No need to keep pointer to platform device (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: mmp-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: g12a: add tohdmitx reset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: relax period size constraints (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: improve depth handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: fix fifo threshold setup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183: support WoV (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mt8183: fix audio playback slowly after playback during bootup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mtk-btcvsd: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: fix device remove ordering (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Remove unused match variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: fix IRQ error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: kirkwood-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Drop lb60 board code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: fixup simple_dai_link_of_dpcm() comment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: audio-graph: fixup graph_dai_link_of_dpcm() comment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: Fix noise when using EDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Move static keyword to the front of declarations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Fix error handling in probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: remove set but not used variable 'bclk' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_esai: Add spin lock to protect reset, stop and start (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: fix build failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: don't use snd_soc_rtdcom_lookup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: imx-pcm-fiq: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: mpc5200_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_asrc_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8958: use to simplify code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic32x4: add a check for devm_clk_get (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd9335: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: tas2770: Remove unused defines and variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fix misuse of GENMASK macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt6358: support WoV (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-digital: add missing MIX2 path for RX1/2 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Add earpiece (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix RX1 selection in RDAC2 MUX (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: refine the setting of internal clock divider (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Fix error with S24_3LE format bitstream in i.MX8 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: update supported sample format (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Use in(out)put_format instead of in(out)put_word_width (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Add MQS component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8994: Add support for MCLKn clock gating (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8994: Add support for setting MCLK clock rate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fix sample rate error message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Return invalid for when bitwidth is invalid (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Introduce the TAS2562 amplifier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: clean up an indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: Fix snd_soc_update_bits error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: Remove unneeded read of the TDM_CFG3 register (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: tas2770: Fix build error without GPIOLIB (Jaroslav Kysela) [1797509] - [sound] ALSA: tas2770: fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: tas2770: add tas2770 smart PA kernel driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5663: clean up indentation issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5650: Add Kahlee platform specfic changes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Fix serial mode dependent format support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Use fixup instead of constraint for channels and formats (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: The codec does not support S32_LE (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: adau7118: Change regulators id (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: Add ADAU7118 8 Channel PDM-to-I2S/TDM Converter driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau1761: Add ALC controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau1761: Add PGA Slew time control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: cygnus-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: dbdma2: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel_ssc_dai: Remove wrong spinlock usage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: atmel-pcm-pdc: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: ACP needs to be powered off in BIOS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Additional DAI for I2S SP instance (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix simultaneous playback and capture (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x: Fix return value check in acp3x_dai_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: add ACP3x TDM mode support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Buffer Size instead of MAX Buffer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix for Subsequent Playback issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd MMAP_INTERLEAVED Support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Added ACP3x system resume and runtime pm (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Handle ACP3x I2S-SP Interrupts (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Enabling I2S instance in DMA and DAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Refactoring of DAI from DMA driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8741: Fix typo in Kconfig prompt (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Fix snd_sof_ipc_stream_posn() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: modify pre-divider for sysclk (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: add operation callback function for rt1015_dai (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: tidyup snd_soc_pcm_component_sync_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Correct DAPM handling of active widgets during shutdown (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Fix available clock counter incrementation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm512x: Fix unbalanced regulator enable call in probe error path (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix memleak in soc_tplg_manifest_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix memleak in soc_tplg_link_elems_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl: Fix possible buffer overflow in debug outputs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl: Fix pin debug prints (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sun8i-codec: Fix setting DAI data format (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: remove snd_soc_dapm_put_enum_double_locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: revert invalid fix for handling SHDN (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codec2codec: avoid invalid/double-free of pcm runtime (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: move i915 init earlier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add system_suspend_target field to struct snd_sof_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: fix atmel_ssc_set_audio link failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: Fix exiting path on probing failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Add missing COMMON_CLK dependency to SND_SOC_ALL_CODECS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Add missing COMMON_CLK dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: treewide: remove redundant IS_ERR() before error code check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for JasperLake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: consistent HDMI codec probing code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: soc-acpi-intel-icl-match: fix rt715 ADR (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pci: add missing default_fw_name of JasperLake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: trace: fix unconditional free in trace release (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: release resources on errors in probe_continue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: free trace on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix an Oops, caused by invalid topology (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: do not disable i915 power during probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: refactor i915_get/put functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: Remove unnecessary const (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: silence lockdep warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove null_snd_soc_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_trigger() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_hw_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_hw_params() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_prepare() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_shutdown() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_startup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: add rt1015 amplifier driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add MediaTek MT6660 Speaker Amp Driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix deadlock in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: add snd_soc_dapm_put_enum_double_locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: revert "ASoC: max98090: fix lockdep warning" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove bus_control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove DAI suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: ux500_msp_dai: remove unused DAI .suspend/.resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: omap-mcpdm: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sti: sti_uniperif: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: spdif: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: jz4740-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cirrus: ep93xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: atmel_ssc_dai: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: cygnus-ssp: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: Fix error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: crash in snd_soc_dapm_new_dai (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Remove code duplication in byt_rt5640_codec_fixup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Add MIC BIAS Internal3 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Simplify MIC BIAS Internal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: fix return value check in rt715_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: fix return value check in rt711_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: fix return value check in rt700_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Fix SKL dai count (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Correct cache handling of new kernel control API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: add multi endpoint support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Add support for imx8qm & imx8qxp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: Fix VDDA and VDDIO comparison (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: Add jz4770-codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: remove unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcht_es8316: removed unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_rt286: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: Intel: kbl_rt5663_rt5514_max98927: remove useless initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5660: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: remove unnecessary initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: test return value on route add (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: removed unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bxt_rt298: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-dai: fix compilation warning in pcm_prepare (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: remove warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: use dev_to_sdw_dev() instead of to_sdw_slave_device() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: add rt1308 SdW amplifier driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-digital: Reset RX interpolation path after use (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix MIC BIAS Internal1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sti: fix possible sleep-in-atomic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix selected events for MIC BIAS External1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: Fix error in driver removal after failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: fix HDA codec driver probe with multiple controllers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: lower print level to dbg if we will reinit DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: reference SoundWire machine lists (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: support alternate list of machines (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for TGL w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for CNL/CFL/CML w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for ICL w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: soc-acpi: declare new tables for SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: add _ADR-based link descriptors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: add link_mask field (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix PCM playback through ALSA OSS emulation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix Kconfig dependencies (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: add RT715 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Remove unused rtd variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_close_delayed_work() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: do pinctrl_pm_select_xxx() as component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove duplicate pinctrl operation when suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: care .ignore_suspend for Component suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_rtdcom_add() to snd_soc_rtd_add_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: add rt700 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_rtdcom_list (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: Drop incorrectly applied duplicate commit (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: add rt711 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: add wsa881x amplifier support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix lockdep warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix incorrect helper in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix incorrect helper in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: gtm601: fix build warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: add dynamic debug trace (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pci: change the default firmware path when the community key is used (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix NULL dereference at freeing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Ignore the speaker amp when there isn't one (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Fix Irbis NB41 netbook quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5640: Fix NULL dereference on module unload (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-topology: fix endianness issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: hda_dsp_common: use NULL pointer assignment, not 0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Fix compile-testing RT1011/RT5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: use resource_size (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Create multiple I2S platform device endpoint (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: add support to DB845c and Lenovo Yoga (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add audio routings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add capture dapm widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add playback dapm widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add basic controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add support to wcd9340/wcd9341 codec (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: gtm601: add Broadmobi bm818 sound profile (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: remove unused variable 'constraints_16000' and 'ch_mono' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: Update hdac hda dai table to include intel-hdmi-hifi4 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Add iDisp4 DAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: Fix dsp_box offset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_audmix: add missed pm_runtime_disable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix input pin state management (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix inconsistent lock state (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Fix access to uninitialized list heads (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Set dpcm_playback / dpcm_capture (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: Remove empty suspend function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Add Broadwell rt5650 machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: move arch_ops under ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Prevent use-after-free in snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: Read SAI parameters and send them to DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: Describe SAI parameters to be sent to DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: fix incorrect HDMI Kconfig dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: drop HDA codec upon probe failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Add machine driver for da7219_max98373 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: log compiler name and version information (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: define struct with compiler name and version (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Introduce state machine for FW boot (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: remove references to Haswell (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: cml_rt1011_rt5682: fix codec_conf by removing legacy style (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix fault at driver unload after failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: compress: Add pm_runtime support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skylake: Remove superfluous bus ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove legacy style of codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: rx51: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: speyside: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: lowland: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: bells: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5676: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5514: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl_nau88l25_ssm4567: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_rt5663_rt5514_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_rt5663_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_da7219_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: imx-audmix: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: support snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8962: fix lambda value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Drop snd_soc_pcm_lib_ioctl() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: haswell: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: baytrail: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup for CONFIG_DEBUG_FS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup for CONFIG_DMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_set_name_prefix() and soc_set_of_name_prefix() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: byt: fixup topology filename for BYT-CR (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: soc_set_name_prefix(): get component device_node at out of loop (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: soc_set_name_prefix(): tidyup loop condition (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename soc_link_init() to soc_init_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add missing return value check for soc_link_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_link_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename soc_link_dai_pcm_new() to soc_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_link_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_remove_dai_link() to snd_soc_remove_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_add_dai_link() to snd_soc_add_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_find_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: find rtd via dai_link pointer at snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_get_dai_substream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_disconnect_sync() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove dai_link_list (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: dobj is used only when SND_SOC_TOPOLOGY (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: add SND_SOC_BYTES_E (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add codec_mask module parameter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add asynchronous sample rate converter topology support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: work-around incorrect ACPI HID for CML boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: split cht and byt debug window sizes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: fix snd_sof_fw_parse_ext_data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: snd_sof_fw_parse_ext_data log warning on unknown header (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: Don't create separate link when platform is present (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value for soc_tplg_pcm_create() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value for snd_soc_add_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Explicitly include linux/io.h for virt_to_phys() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: nocodec: Amend arguments for sof_nocodec_setup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Remove unused drv_name in sof_pdata (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: remove nocodec_fw_filename (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Make creation of machine device from SOF core optional (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: intel: hda: Modify signature for hda_codec_probe_bus() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: partition audio-related parts from SOF core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Introduce default_fw_filename member in sof_dev_desc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: move check for runtime callbacks to core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: modify the signature for snd_sof_create_page_table (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: remove snd_sof_init_topology() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: remove unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel/skl/hda - export number of digital microphones via control components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: set plugged_cb to NULL when component removing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: re-introduce mutex locking again (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: drop mutex locking again (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix soc-core.c kernel-doc warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: solve MSI issues by merging ipc and stream irq handlers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Improve the sysclk selection (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cs42l51: add dac mux widget in codec routes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Calculate DALIGN inversion at run-time (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: Add Volume Soft Stepping control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: save and restore SHDN when changing sensitive registers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: add IRQF_SHARED (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: Add HP output driver pop reduction controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: common: refine hw_params and hw_prepare (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: common: add some helpers to control mtk_memif (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hdmi: Drop support for Icelake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: make common HDMI driver default (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: Add mach table for tgl-max98357a-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for tgl-max98357a-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_rt5682: Add quirk for number of HDMI DAI's (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: only flush inited work during free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Update quirk for Teclast X89 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Init pcm runtime work early to avoid warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sst: Add missing include (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix possible race conditions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: exit workaround earlier if PLL is locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: remove msleep in PLL unlocked workaround (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: fix automatic sysclk configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Fix build error without CONFIG_SPI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: Fix unload for SAI/ESAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: BYT: fix a copy/paste mistake in byt_dump() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: AMD: Enable clk in startup intead of hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix i2c arbitration lost issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: DMI long name - avoid to add board name if matches with product name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: improve the DMI long card code in asoc-core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: fix DALIGN register for SSIU (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: component: Add sync_stop PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Make ioctl ops optional (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: check symmetry before hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Update the RST gpio handling to align with documentation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: add control components management (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove soc_pcm_private_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fixup dead-lock at snd_soc_unregister_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fix RIP warning on card removal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: tidyup snd_soc_pcm_component_new/free() parameter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Update quirk for Acer Switch 10 SW5-012 2-in-1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Expose mixer control API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: configure output common-mode voltage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix build break (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Add support for optional RST gpio handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm5100: add missed pm_runtime_disable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm2200: add missed operations in remove and probe failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support to flac decoder (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add flac decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support to flac config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: rt5677_check_hotword() can be static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix the charge pump capacitor discharges (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Use dma_request_chan() directly for channel request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dmaengine: Use dma_request_chan() directly for channel request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: care card_probed at soc_cleanup_card_resources() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_unbind_card() next to snd_soc_bind_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call snd_soc_dapm_shutdown() at soc_cleanup_card_resources() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Fixed typo for buddy jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: fix regcache handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_probe_aux_devices() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_bind_card() and snd_soc_instantiate_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_remove_component() and soc_cleanup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_remove_dai_link() and soc_unbind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_add_dai_link() and soc_bind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_unregister_dai() and soc_del_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_register_dai() and soc_add_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove soc_is_dai_link_bound() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Jack: Fix NULL pointer dereference in snd_soc_jack_report (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: free kcontrol memory on error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: only suspend to D0I3 when needed (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: add helper to check if we should enter d0i3 suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: add check before setting d0_substate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: add state machine to comments (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: use fallback for firmware name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: acpi-match: split CNL tables in three (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Fixed buddy jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: configure sysclk/FLL automatically (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: Add dmic format constraint (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add DA7213 audio codec as selectable option (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Wait for DSP to boot before loading firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Set ADC clock to use PLL and enable ASRC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bdw-rt5677: Turn on MCLK1 for DSP via DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Allow VAD to be shut on/off at all times (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Disable irq at suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Stop and restart DSP over suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Mark reg RT5677_PWR_ANLG2 as volatile (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add DAPM audio path for hotword stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Enable jack detect while DSP is running (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bdw-rt5677: Add a DAI link for rt5677 SPI PCM device (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_audmix: Add spin lock to protect tdms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: set L1SEN on S0ix suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: fix missing NULL pointer check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Fix compile warning with CONFIG_DEBUG_FS=n (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: Fix bytes control size checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove topology specific operation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call snd_soc_register_dai() from snd_soc_register_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: don't call snd_soc_dapm_new_dai_widgets() at snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: have legacy_dai_naming at snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_unregister_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_unregister_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use snd_soc_lookup_component() at snd_soc_unregister_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_component_add/del() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_del_component_unlocked() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup snd_soc_lookup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_lookup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add soc_unbind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call soc_bind_dai_link() under snd_soc_add_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove duplicated soc_is_dai_link_bound() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: typo fix at soc_dai_link_sanity_check() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_init_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_init_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add for_each_rtd_components() and replace (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove for_each_rtdcom_safe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Use different sequence for start/stop trigger (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: snd_soc_unbind_card() cleanup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_pcm_lib_ioctl() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: setup card->rtd_num at snd_soc_instantiate_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use devm_xxx for component related resource (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add soc_setup_card_name() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove soc_remove_dai_links() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use devm_kzalloc() for rtd (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Clarify usage of ignore_machine (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_rtdcom_del_all() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_new_pcm_runtime() alloc order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: set trigger order for FE DAI link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: update FE/BE trigger order based on the command (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98373: replace gpio_request with devm_gpio_request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: mark HDAudio codec support as deprecated (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: use def_tristate, avoid using select (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: fix reverse CONFIG_SND_SOC_SOF_OF dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Kconfig: add EXPERT dependency for developer options, clarify help (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: add mutual exclusion between SOF and legacy Baytrail driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Baytrail: clarify mutual exclusion with Atom/SST driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Simplify the hda_dsp_wait_d0i3c_done() function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Add acpi match for rt1011 based m/c driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: Remove redundant variable "status" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: fix race in device removal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: set the different setting for QFN/WLCSP package (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: some minor changes to improve readability (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: add the range check for temperature_calib from device property (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: remove unnecessary tabs using spaces instead (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: fix spelling mistake "temperture" -> "temperature" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: Read and apply r0 and temperature device property (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: set tx/rx slots from tx/rx_mask in TDM case (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: improve the rt1011_set_dai_fmt() function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: remove redundant code in kcontrol (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove unneeded snd_soc_tplg_component_remove() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Load firmware via SPI using delayed work (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: fixup compile warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: fix sparse warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add missing null check for failed allocation of rt5677_dsp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add a PCM device for streaming hotword via SPI (Jaroslav Kysela) [1797509] - [sound] ALSA: serial-u16550: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: opl4: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: oss: Constify snd_seq_oss_callback definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3: Constify snd_opl3_drum_voice definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: mts64: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Constify snd_pcm_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Fix PCM format loop in proc output (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Fix dependency on timer API (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: do not override bus codec_mask in link_get() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Reset stream if DMA RUN bit not cleared (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: No preallocation on x86 platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Update kernel-doc function parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Comment about snd_hdac_bus_update_rirb() and spinlock (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Apply aligned MMIO access only conditionally (Jaroslav Kysela) [1797509] - [sound] ALSA: remove ioremap_nocache and devm_ioremap_nocache (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset of ASUS B9450FA with ALC294 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Button supported for ThinkPad X1 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Mic supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply quirk for yet another MSI laptop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply quirk for MSI GP63, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix silent output on MSI-GL73 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add more codec supported Headset Button (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Clear RIRB status before reading WP (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fixed one of HP ALC671 platform Headset Mic supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Fix DP-MST support for NVIDIA codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: Make the firmware loading ioctl a bit more readable (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Fix annotation and cast for the recent uapi header change (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add JasperLake PCI ID and codec vid (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add Clevo W65_67SB the power_save blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: fix spelling mistake "to" -> "too" (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add docking station support for Lenovo Thinkpad T420s (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - add retry logic to parse_intel_hdmi() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Mic supported for HP cPC (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/analog - Minor optimization for SPDIF mux connections (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: patch_hdmi: remove warnings with empty body (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: correct kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Manage concurrent reg access more properly (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: enable regmap internal locking (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix a typo in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Disable regmap internal locking (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: patch_realtek: fix empty macro usage in if block (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Rename back to dmic_detect option (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: echoaudio: remove set but not used variable 'chip' (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for the bass speaker on Lenovo Yoga X1 7th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Set EAPD control to default for ALC222 (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: ak4531: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: nm256: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: rme9652: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hdspm: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add new codec supported for ALCS1200A (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - constify and cleanup static NodeID tables (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_pci_quirk tables (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_pci_quirk tables (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Constify snd_fm801_tea575x_gpios (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Constify snd_es1968_tea575x_gpios (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Constify snd_emu_chip_details (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Constify snd_bt87x_boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Constify wm-specific tables (Jaroslav Kysela) [1797509] - [sound] ALSA: ice17xx: Constify snd_ice1712_card_info (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Constify snd_ca0106_details (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Constify snd_ca0106_category_str items (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Constify snd_ac97_res_table definition (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Constify snd_vx_hardware and snd_vx_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: info: Make snd_info_entry_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Treat snd_ac97_bus_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: Constify snd_timer_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_pcm_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the bass speaker of ASUS UX431FLC (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Fix sleep-in-atomic in Infrasonic Quartet support code (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Bass Speaker and fixed dac for bass speaker (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Apply sync-write workaround to old Intel platforms, too (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: echoaudio: remove usage of dimen menber of elem_value structure (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - fix atpx_present when CLASS is not VGA (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Make uapi/emu10k1.h compilable again (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add headset Mic no shutup for ALC283 (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Allow disabling MPU port via module option (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Downgrade error message for single-cmd fallback (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix regression by strip mask fix (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Fix work handling in delayed HP detection (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Avoid endless loop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Keep power on during processing DSP response (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Unify get_response handling (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use waitqueue for RIRB in HDA-core helper, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: tegra: Fix unused variable compile warning (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: Make uapi/hdsp.h compilable again (Jaroslav Kysela) [1797509] - [sound] ALSA: vx222: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sonicvibes: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sis7019: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme9652: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme96: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: oxygen: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: nm256: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: maestro3: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: lola: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs5535audio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: als300: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1889: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Line-out jack doesn't work on a Dell AIO (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Fix duplicate unref of pci_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: simplify get_audio_levels (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - Keep old slot assignment behavior for Intel platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Modify stream stripe mask only when needed (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - fixup for the bass speaker on Lenovo Carbon X1 7th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - preserve non-MST PCM routing for Intel platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix kernel oops caused by invalid PCM idx (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix inverted bass GPIO pin on Acer 8951G (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Dell headphone has noise on unmute for ALC236 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix regression in connect list handling (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - enable automatic runtime pm for AMD HDMI codecs by default (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - enable runtime pm for newer AMD display audio (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Add new pci ids for AMD GPU display audio (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - fix vgaswitcheroo detection for AMD (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable internal speaker of ASUS UX431FLC (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Clear codec->relaxed_resume flag at unbinding (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Move some alc236 pintbls to fallback table (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Move some alc256 pintbls to fallback table (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add mute led support for HP ProBook 645 G4 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST support for NVIDIA codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST support for non-acomp codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Rename snd_hda_pin_sense to snd_hda_jack_pin_sense (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - remove forced polling workaround for CFL and CNL (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - remove redundant code comments (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix port numbering for ICL and TGL platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Clean up Intel platform-specific fixup checks (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Fix incorrect device pointer for preallocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix pin setup on Tigerlake (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add Cometlake-S PCI ID (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - add Tigerlake support (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Fix possible workqueue stall (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Fix concurrent access to queue current tick/time (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Avoid concurrent access to queue flags (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix double hw_free calls (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix sparse warnings wrt snd_pcm_state_t (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix memory leak at closing a stream without hw_free (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Set per-card upper limit of PCM buffer allocations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Make snd_pcm_hw_constraints_init() and _complete() static (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Fix racy access for queue timer in proc read (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: fix nsec/sec initialization confusion (Jaroslav Kysela) [1797509] - [sound] ALSA: control: potential uninitialized return value (Jaroslav Kysela) [1797509] - [sound] ALSA: rawmidi: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: oss: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: jack: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: info: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: control: Add verification for kctl accesses (Jaroslav Kysela) [1797509] - [sound] ALSA: mixer: oss: Constify snd_mixer_oss_assign_table definition (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Constify struct snd_midi_op (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Constify snd_timer_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Treat snd_device_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: allow TLV read operation for callback type of element in locked case (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: remove dimen member from elem_info structure (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Avoid possible info leaks from PCM stream buffers (Jaroslav Kysela) [1797509] - [sound] ALSA: control: remove useless assignment in .info callback of PCM chmap element (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Fix typos and header inclusion in asound.h (Jaroslav Kysela) [1797509] - [sound] ALSA: bump uapi version numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: add new 32-bit layout for snd_pcm_mmap_status/control (Jaroslav Kysela) [1797509] - [sound] ALSA: move snd_pcm_ioctl_sync_ptr_compat into pcm_native.c (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_ctl_elem_value (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_timer_tread (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_rawmidi_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_pcm_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_timer_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Replace timespec with timespec64 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fixup dpcm_prune_paths() loop continue (Jaroslav Kysela) [1797509] - [sound] ALSA: ps3: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pmac: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sonicvibes: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sis7019: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: oxygen: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: maestro3: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: lola: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cs5535: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: als4000: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8330: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcsp: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atmel: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aaci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: rme: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: als300: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1889: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use standard waitqueue for RIRB wakeup (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: atom: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-mfld-platform-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-baytrail-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-haswell-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skylake: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ml403: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Avoid pointer dereference before null-check (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Avoid unexpected timer event callback tasklets (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Remove redundant locking in timer open function (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support runtime change of snd_timer via info interface (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support selection of snd_timer instead of jiffies (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Move CABLE_VALID_BOTH to the top of file (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Rename all jiffies timer specific functions (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Use callback functions for timer specific implementations (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support return of error code for timer start and stop (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Describe units of variables (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_free_pcm_runtime() and soc_rtd_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_new_pcm_runtime() and soc_rtd_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: create rtd->codec_dais first (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call list_del(&rtd->list) at soc_free_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_add_pcm_runtime() into soc_new_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_free_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: use list_del_init and move it back to soc_cleanup_component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: delete component->card_list in soc_remove_component only (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: remove snd_pcm_ops from component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add new pcm_construct/pcm_destruct (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_pcm_ops member to component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component.h: remove GPL explanation from header (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Avoid potential buffer overflows (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add card sync_irq field (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add the support for sync-stop operation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Move PCM_RUNTIME_CHECK() macro into local header (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Allow NULL ioctl ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Introduce managed buffer allocation mode (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix stream lock usage in snd_pcm_period_elapsed() (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix the breakage of slave link open (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Unexport snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Yet another missing check of non-cached buffer type (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix possible race at assigning a timer instance (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Make snd_timer_close() returning void (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Unify master/slave linking code (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix incorrectly assigned timer instance (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Limit max amount of slave instances (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Create proc files only for non-empty preallocations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Warn if doubly preallocated (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Handle special page mapping in the default mmap handler (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Add vmalloc buffer allocation support (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Allow NULL device for SNDRV_DMA_TYPE_CONTINUOUS type (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm_dmaengine: Extract snd_dmaengine_pcm_refine_runtime_hwparams (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel - do not describe I/O configuration in the long card name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel - use control components to describe card config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: make common HDMI driver the default for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: sof_rt5682: use dependency on SOF_HDA_LINK (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Geminilake is only supported by SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: fix configs for bxt-da7219-max98057a (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: remove select SND_HDA_DSP_LOADER (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Add CML m/c using RT1011 and RT5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: compress: fix unsigned integer overflow check (Jaroslav Kysela) [1797509] - [sound] ALSA: Revert "ALSA: usb-audio: set the interface format after resume on Dell WD19" (Jaroslav Kysela) [1797509]- [crypto] crypto: ccp - use file mode for sev ioctl permissions (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Cleanup sp_dev_master in psp_dev_destroy() (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Cleanup misc_dev on sev_exit() (Vladis Dronov) [1765717] - [crypto] crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Vladis Dronov) [1765717] - [crypto] crypto: ccp - move SEV vdata to a dedicated data structure (Vladis Dronov) [1765717] - [crypto] crypto: ccp - create a generic psp-dev file (Vladis Dronov) [1765717] - [crypto] crypto: ccp - rename psp-dev files to sev-dev (Vladis Dronov) [1765717] - [crypto] crypto: ccp - set max RSA modulus size for v3 platform devices as well (Vladis Dronov) [1765717] - [crypto] crypto: ccp - add SEV command privilege separation (Vladis Dronov) [1765717] - [crypto] crypto: ccp - fix uninitialized list head (Vladis Dronov) [1765717] - [crypto] crypto: user - fix memory leak in crypto_report (Vladis Dronov) [1829808 1765717] {CVE-2019-19062} - [crypto] crypto: ccp - Release all allocated memory if sha type is invalid (Vladis Dronov) [1825134 1765717] {CVE-2019-18808} - [crypto] crypto: ccp - invoke fallback for XTS ciphertext stealing (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove unnecessary linux/pci.h include (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Include DMA declarations explicitly (Vladis Dronov) [1765717] - [crypto] crypto: ccp - use devm_platform_ioremap_resource() to simplify code (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Clean up and exit correctly on allocation failure (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Log an error message when ccp-crypto fails to load (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Ignore tag length when decrypting GCM ciphertext (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add support for valid authsize values less than 16 (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Fix oops by properly managing allocated structures (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Reduce maximum stack usage (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Include the module name in system log messages (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add a module parameter to control registration for DMA (Vladis Dronov) [1765717] - [crypto] crypto: ccp - module parameter to limit the number of enabled CCPs (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add a module parameter to specify a queue count (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Make CCP debugfs support optional (Vladis Dronov) [1765717] - [crypto] crypto: ctr - add helper for performing a CTR encryption walk (Vladis Dronov) [1765717] - [crypto] crypto: ccp - memset structure fields to zero before reuse (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Fix 3DES complaint from ccp-crypto module (Vladis Dronov) [1765717] - [crypto] crypto: ccp - fix AES CFB error exposed by new test vectors (Vladis Dronov) [1765717] - [crypto] crypto: ccp - AES CFB mode is a stream cipher (Vladis Dronov) [1765717] - [crypto] treewide: Add SPDX license identifier - Makefile/Kconfig (Vladis Dronov) [1765717] - [crypto] crypto: shash - remove shash_desc::flags (Vladis Dronov) [1765717] - [crypto] crypto: ccp - no need to check return value of debugfs_create functions (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove forward declaration (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove VLA usage of skcipher (Vladis Dronov) [1765717] - [crypto] crypto: skcipher - Introduce crypto_sync_skcipher (Vladis Dronov) [1765717] - [infiniband] IB/mlx4: Test return value of calls to ib_get_cached_pkey (Alaa Hleihel) [1767259] - [netdrv] net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc() (Alaa Hleihel) [1767259] - [infiniband] RDMA/mlx4: Initialize ib_spec on the stack (Alaa Hleihel) [1767259] - [powerpc] powerpc/powernv: Re-enable imc trace-mode in kernel (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Implement a global lock to avoid races between trace, core and thread imc events (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Return accordingly on invalid chip-id in (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Remove PM_BR_CMPL_ALT from power9 event list (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Add generic compat mode pmu driver (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: init pmu from core-book3s (Desnes Augusto Nunes do Rosario) [1725201] - [fs] NFS: Fix fscache super_cookie index_key from changing after umount (Dave Wysochanski) [1790933] - [fs] NFSv4: Fix fscache cookie aux_data to ensure change_attr is included (Dave Wysochanski) [1793560] - [fs] nfs: fscache: use timespec64 in inode auxdata (Dave Wysochanski) [1793560] - [documentation] i2c: replace i2c_new_probed_device with an ERR_PTR variant (David Arcari) [1835245] - [documentation] docs: stop suggesting strlcpy (David Arcari) [1835245] - [scsi] scsi: hpsa: Update driver version (Joseph Szczypek) [1815628] - [scsi] scsi: hpsa: correct race condition in offload enabled (Joseph Szczypek) [1815628] - [kernel] audit: log audit netlink multicast bind and unbind (Richard Guy Briggs) [1829622] - [ipc] ipc/mqueue.c: change __do_notify() to bypass check_kill_permission() (Oleg Nesterov) [1808931] - [scsi] scsi: megaraid_sas: Update driver version to 07.714.04.00-rc1 (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: TM command refire leads to controller firmware crash (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Replace undefined MFI_BIG_ENDIAN macro with __BIG_ENDIAN_BITFIELD macro (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Remove IO buffer hole detection logic (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Limit device queue depth to controller queue depth (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: Use true, false for bool variables (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make two symbols static in megaraid_sas_base.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make some symbols static in megaraid_sas_fusion.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make some symbols static in megaraid_sas_fp.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Use scnprintf() for avoiding potential buffer overflow (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: silence a warning (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: fix indentation issue (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Update driver version to 07.713.01.00-rc1 (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Use Block layer API to check SCSI device in-flight IO requests (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Limit the number of retries for the IOCTLs causing firmware fault (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Re-Define enum DCMD_RETURN_STATUS (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not set HBA Operational if FW is not in operational state (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not kill HBA if JBOD Seqence map or RAID map is disabled (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not kill host bus adapter, if adapter is already dead (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Update optimal queue depth for SAS and NVMe devices (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Set no_write_same only for Virtual Disk (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Reset adapter if FW is not in READY state after device resume (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Make poll_aen_lock static (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: remove unused variables 'debugBlk', 'fusion' (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Unique names for MSI-X vectors (Tomas Henzl) [1791041]- [crypto] crypto: drbg - fix error return code in drbg_alloc_state() (Vladis Dronov) [1822458] - [fs] fs: call fsnotify_sb_delete after evict_inodes (Jay Shin) [1834741] - [fs] fs: avoid softlockups in s_inodes iterators (Jay Shin) [1834741] - [fs] fs/drop_caches.c: avoid softlockups in drop_pagecache_sb() (Jay Shin) [1834741] - [net] net/smc: remove set but not used variables 'del_llc, del_llc_resp' (Philipp Rudo) [1725886] - [net] net/smc: remove unused inline function smc_curs_read (Philipp Rudo) [1725886] - [net] net/smc: log important pnetid and state change events (Philipp Rudo) [1725886] - [net] net/smc: save SMC-R peer link_uid (Philipp Rudo) [1725886] - [net] net/smc: create improved SMC-R link_uid (Philipp Rudo) [1725886] - [net] net/smc: improve termination processing (Philipp Rudo) [1725886] - [net] net/smc: add termination reason and handle LLC protocol violation (Philipp Rudo) [1725886] - [net] net/smc: asymmetric link tagging (Philipp Rudo) [1725886] - [net] net/smc: assign link to a new connection (Philipp Rudo) [1725886] - [net] net/smc: send DELETE_LINK, ALL message and wait for send to complete (Philipp Rudo) [1725886] - [net] net/smc: wait for departure of an IB message (Philipp Rudo) [1725886] - [net] net/smc: handle incoming CDC validation message (Philipp Rudo) [1725886] - [net] net/smc: send failover validation message (Philipp Rudo) [1725886] - [net] net/smc: switch connections to alternate link (Philipp Rudo) [1725886] - [net] net/smc: save state of last sent CDC message (Philipp Rudo) [1725886] - [net] net/smc: enqueue local LLC messages (Philipp Rudo) [1725886] - [net] net/smc: delete link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: delete link processing as SMC client (Philipp Rudo) [1725886] - [net] net/smc: llc_del_link_work and use the LLC flow for delete link (Philipp Rudo) [1725886] - [net] net/smc: delete an asymmetric link as SMC server (Philipp Rudo) [1725886] - [net] net/smc: final part of add link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: rkey processing for a new link as SMC server (Philipp Rudo) [1725886] - [net] net/smc: first part of add link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: final part of add link processing as SMC client (Philipp Rudo) [1725886] - [net] net/smc: rkey processing for a new link as SMC client (Philipp Rudo) [1725886] - [net] net/smc: first part of add link processing as SMC client (Philipp Rudo) [1725886] - [net] smc: Remove unused function (Philipp Rudo) [1725886] - [net] net/smc: llc_add_link_work to handle ADD_LINK LLC requests (Philipp Rudo) [1725886] - [net] net/smc: allocate index for a new link (Philipp Rudo) [1725886] - [net] net/smc: introduce smc_pnet_find_alt_roce() (Philipp Rudo) [1725886] - [net] net/smc: remove DELETE LINK processing from smc_core.c (Philipp Rudo) [1725886] - [net] net/smc: take link down instead of terminating the link group (Philipp Rudo) [1725886] - [net] net/smc: add smcr_port_err() and smcr_link_down() processing (Philipp Rudo) [1725886] - [net] net/smc: add smcr_port_add() and smcr_link_up() processing (Philipp Rudo) [1725886] - [net] net/smc: remember PNETID of IB device for later device matching (Philipp Rudo) [1725886] - [net] net/smc: mutex to protect the lgr against parallel reconfigurations (Philipp Rudo) [1725886] - [net] net/smc: extend smc_llc_send_add_link() and smc_llc_send_delete_link() (Philipp Rudo) [1725886] - [net] net/smc: map and register buffers for a new link (Philipp Rudo) [1725886] - [net] net/smc: unmapping of buffers to support multiple links (Philipp Rudo) [1725886] - [net] net/smc: multiple link support for rmb buffer registration (Philipp Rudo) [1725886] - [net] net/smc: remove obsolete link state DELETING (Philipp Rudo) [1725886] - [net] net/smc: remove handling of CONFIRM_RKEY_CONTINUE (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC remote DELETE_RKEY processing to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC remote CONFIRM_RKEY processing to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: new smc_rtoken_set functions for multiple link support (Philipp Rudo) [1725886] - [net] net/smc: move the TEST_LINK response processing into event handler (Philipp Rudo) [1725886] - [net] net/smc: multiple link support and LLC flow for smc_llc_do_delete_rkey (Philipp Rudo) [1725886] - [net] net/smc: multiple link support and LLC flow for smc_llc_do_confirm_rkey (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC client code to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC server code to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: add logic to evaluate CONFIRM_LINK messages to LLC layer (Philipp Rudo) [1725886] - [net] net/smc: introduce link group type (Philipp Rudo) [1725886] - [net] net/smc: enqueue all received LLC messages (Philipp Rudo) [1725886] - [net] net/smc: add event-based llc_flow framework (Philipp Rudo) [1725886] - [net] net/smc: move llc layer related init and clear into smc_llc.c (Philipp Rudo) [1725886] - [net] net/smc: use mutex instead of rwlock_t to protect buffers (Philipp Rudo) [1725886] - [net] net/smc: process llc responses in tasklet context (Philipp Rudo) [1725886] - [net] net/smc: use worker to process incoming llc messages (Philipp Rudo) [1725886] - [net] net/smc: simplify link deactivation (Philipp Rudo) [1725886] - [net] net/smc: move testlink work to system work queue (Philipp Rudo) [1725886] - [net] net/smc: add new link state and related helpers (Philipp Rudo) [1725886] - [net] net/smc: multi-link support for smc_rmb_rtoken_handling() (Philipp Rudo) [1725886] - [net] net/smc: convert static link ID instances to support multiple links (Philipp Rudo) [1725886] - [net] net/smc: convert static link ID to dynamic references (Philipp Rudo) [1725886] - [net] net/smc: introduce link_idx for link group array (Philipp Rudo) [1725886] - [net] net/smc: separate function for link initialization (Philipp Rudo) [1725886] - [net] net/smc: rework pnet table to support SMC-R failover (Philipp Rudo) [1725886] - [net] net/smc: improve peer ID in CLC decline for SMC-R (Philipp Rudo) [1725886] - [net] net/smc: rework peer ID handling (Philipp Rudo) [1725886] - [net] net/smc: reduce port_event scheduling (Philipp Rudo) [1725886] - [net] net/smc: simplify normal link termination (Philipp Rudo) [1725886] - [net] net/smc: remove unused parameter of smc_lgr_terminate() (Philipp Rudo) [1725886] - [net] net/smc: do not delete lgr from list twice (Philipp Rudo) [1725886] - [net] net/smc: use termination worker under send_lock (Philipp Rudo) [1725886] - [net] net/smc: improve smc_lgr_cleanup() (Philipp Rudo) [1725886] - [pci] PCI: Add new PCI_VPD_RO_KEYWORD_SERIALNO macro (Jonathan Toppins) [1834900] - [pci] PCI: Introduce pci_get_dsn (Jonathan Toppins) [1834900] - [scsi] scsi: lpfc: Remove redundant initialization to variable rc (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.1 (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix MDS Diagnostic Enablement definition (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix noderef and address space warnings (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Remove unnecessary lockdep_assert_held calls (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Change default queue allocation for reduced memory consumption (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix negation of else clause in lpfc_prep_node_fc4type (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Remove re-binding of nvme rport during registration (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Maintain atomic consistency of queue_claimed flag (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: remove duplicate unloading checks (Dick Kennedy) [1835310] - [scsi] scsi: qedf: Get dev info after updating the params (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Fix crash when MFW calls for protocol stats while function is still probing (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Add schedule recovery handler (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Implement callback for bw_update (Nilesh Javali) [1792113] - [netdrv] scsi: qed: Send BW update notifications to the protocol drivers (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Honor status qualifier in FCP_RSP per spec (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Acquire rport_lock for resetting the delay_timestamp (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Increase the upper limit of retry delay (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Keep track of num of pending flogi (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Simplify mutex_unlock() usage (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Add port_id getter (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Remove always false 'tmp_prio < 0' statement (Nilesh Javali) [1792113] - [include] NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION (Steve Dickson) [1828592] - [edac] EDAC/amd64: Drop some family checks for newer systems (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Add family ops for Family 19h Models 00h-0Fh (Aristeu Rozanski) [1779822 1735611] - [x86] x86/amd_nb: Add Family 19h PCI IDs (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/mce_amd: Always load on SMCA systems (Aristeu Rozanski) [1779822 1735611] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new Load Store unit McaType (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Save max number of controllers to family type (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Gather hardware information early (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Make struct amd64_family_type global (Aristeu Rozanski) [1779822 1735611] - [fs] nfsd: Add tracepoints for update of the expkey and export cache entries (Dave Wysochanski) [1775408] - [fs] nfsd: Add tracepoints for exp_find_key() and exp_get_by_name() (Dave Wysochanski) [1775408] - [fs] nfsd: Add tracing to nfsd_set_fh_dentry() (Dave Wysochanski) [1775408] - [net] SUNRPC: Clean up: Replace dprintk and BUG_ON call sites in svcauth_gss.c (Dave Wysochanski) [1775408] - [net] svcrdma: Create a generic tracing class for displaying xdr_buf layout (Dave Wysochanski) [1775408] - [net] SUNRPC: Capture completion of all RPC tasks (Dave Wysochanski) [1775408] - [net] SUNRPC: Trace gssproxy upcall results (Dave Wysochanski) [1775408] - [trace] fix null pointer deref in tracepoints in back channel (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic file commit tracepoint (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic writeback tracepoints (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic file read tracepoints (Dave Wysochanski) [1775408] - [fs] pNFS/flexfiles: Add tracing for layout errors (Dave Wysochanski) [1775408] - [fs] pNFS/flexfiles: Record resend attempts on I/O failure (Dave Wysochanski) [1775408] - [fs] NFS: Fix fix of show_nfs_errors (Dave Wysochanski) [1775408] - [fs] NFSv4: Improve read/write/commit tracing (Dave Wysochanski) [1775408] - [fs] NFS4: Report callback authentication errors (Dave Wysochanski) [1775408] - [fs] NFS4: Trace lock reclaims (Dave Wysochanski) [1775408] - [fs] NFS4: Trace state recovery operation (Dave Wysochanski) [1775408] - [fs] NFS: Add a tracepoint in nfs_fh_to_dentry() (Dave Wysochanski) [1775408] - [fs] pnfs/flexfiles: Add tracepoints for detecting pnfs fallback to MDS (Dave Wysochanski) [1775408] - [fs] NFS: Record task, client ID, and XID in xdr_status trace points (Dave Wysochanski) [1775408] - [fs] NFS: Display symbolic status code names in trace log (Dave Wysochanski) [1775408] - [fs] NFS: Fix show_nfs_errors macros again (Dave Wysochanski) [1775408] - [fs] NFS4: Add a trace event to record invalid CB sequence IDs (Dave Wysochanski) [1775408] - [media] media: v4l: event: Add subscription to list before calling "add" operation (Jarod Wilson) [1828805] {CVE-2019-9458} - [media] media: v4l: event: Prevent freeing event subscriptions while accessed (Jarod Wilson) [1828805] {CVE-2019-9458} - [vhost] vhost: Check docket sk_family instead of call getname (Vladis Dronov) [1823301] {CVE-2020-10942} - [documentation] kvm: ppc: book3s hv: Add a capability for enabling secure guests (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: H_SVM_INIT_START must call UV_RETURN (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Check caller of H_SVM_* Hcalls (David Gibson) [1814624] - [powerpc] Introduce the MSR_S bit (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Skip kvmppc_uvmem_free if Ultravisor is not supported (David Gibson) [1814624] - [powerpc] kvm: ppc: Kill kvmppc_ops::mmu_destroy() and kvmppc_mmu_destroy() (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Move kvmppc_mmu_init() into PR KVM (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Treat TM-related invalid form instructions on P9 like the valid ones (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Use RADIX_PTE_INDEX_SIZE in Radix MMU code (David Gibson) [1814624] - [powerpc] kvm: no need to check return value of debugfs_create functions (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Fix -Werror=return-type build failure (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Release lock on page-out failure path (David Gibson) [1814624] - [powerpc] mm: Remove kvm radix prefetch workaround for Power9 DD2.2 (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: xive: Fix typo in comment (David Gibson) [1814624] - [documentation] kvm: ppc: book3s hv: Implement H_SVM_INIT_ABORT hcall (David Gibson) [1814624] - [powerpc] kvm: ppc: Add skip_page_out parameter to uvmem functions (David Gibson) [1814624] - [powerpc] kvm: ppc: book3e: Replace current->mm by kvm->mm (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Replace current->mm by kvm->mm (David Gibson) [1814624] - [mm] add account_locked_vm utility function (David Gibson) [1814624] - [powerpc] kvm: ppc: Remove set but not used variable 'ra', 'rs', 'rt' (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't do ultravisor calls on systems without ultravisor (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Support reset of secure guest (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Handle memory plug/unplug to secure VM (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Radix changes for secure guest (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Shared pages support for secure guests (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Support for running secure guests (David Gibson) [1814624] - [powerpc] pseries/svm: Unshare all pages before kexecing a new kernel (David Gibson) [1814624] - [powerpc] pseries/svm: Use shared memory for LPPACA structures (David Gibson) [1814624] - [powerpc] pseries: Add and use LPPACA_SIZE constant (David Gibson) [1814624] - [powerpc] pseries/svm: Add helpers for UV_SHARE_PAGE and UV_UNSHARE_PAGE (David Gibson) [1814624] - [powerpc] prom_init: Add the ESM call to prom_init (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Reject mflags=2 (LPCR[AIL]=2) ADDR_TRANS_MODE mode (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Implement LPCR[AIL]=3 mode for injected interrupts (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Reuse kvmppc_inject_interrupt for async guest delivery (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Replace reset_msr mmu op with inject_interrupt arch op (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Define and use SRR1_MSR_BITS (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: xive: Show VP id in debugfs (David Gibson) [1814624] - [powerpc] kvm: ppc: e500: Replace current->mm by kvm->mm (David Gibson) [1814624] - [powerpc] kvm: ppc: Report single stepping capability (David Gibson) [1814624] - [powerpc] kvm: Fix kvmppc_vcore->in_guest value in kvmhv_switch_to_host (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: use smp_mb() when setting/clearing host_ipi flag (David Gibson) [1814624] - [powerpc] 64s: Set reserved PCR bits (David Gibson) [1814624] - [powerpc] Fix definition of PCR bits to work with old binutils (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Invalidate multiple TCEs at once (David Gibson) [1814624] - [powerpc] powernv/ioda: Split out TCE invalidation from TCE updates (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't lose pending doorbell request on migration on P9 (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Check for MMU ready on piggybacked virtual cores (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Define usage types for rmap array in guest memslot (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't push XIVE context when not using XIVE device (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Fix race in re-enabling XIVE escalation interrupts (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Fix software breakpoints (David Gibson) [1814624] - [powerpc] kvm: ppc: Remove leftover comment from emulate_loadstore.c (David Gibson) [1814624] - [x86] hyperv: Properly suspend/resume reenlightenment notifications (Mohammed Gamal) [1815475] - [kernel] pm: hibernate: Freeze kernel threads in software_resume() (Mohammed Gamal) [1815475] - [kernel] pm: hibernate: Propagate the return value of hibernation_restore() (Mohammed Gamal) [1815475] - [x86] hyperv: Suspend/resume the VP assist page for hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM (Mohammed Gamal) [1815475] - [net] hv_sock: Add the support of hibernation (Mohammed Gamal) [1815475] - [video] hyperv_fb: Fix hibernation for the deferred IO feature (Mohammed Gamal) [1815475] - [video] hyperv_fb: Add the support of hibernation (Mohammed Gamal) [1815475] - [scsi] storvsc: Add the support of hibernation (Mohammed Gamal) [1815475] - [netdrv] hv_netvsc: Add the support of hibernation (Mohammed Gamal) [1815475] - [pci] hv: Change pci_protocol_version to per-hbus (Mohammed Gamal) [1815475] - [pci] hv: Add hibernation support (Mohammed Gamal) [1815475] - [input] hyperv-keyboard: Add the support of hibernation (Mohammed Gamal) [1815475] - [hid] hyperv: NULL check before some freeing functions is not needed (Mohammed Gamal) [1815475] - [hid] hyperv: Add the support of hibernation (Mohammed Gamal) [1815475] - [clocksource] hyper-v: Suspend/resume Hyper-V clocksource for hibernation (Mohammed Gamal) [1815475] - [x86] hyperv: Suspend/resume the hypercall page for hibernation (Mohammed Gamal) [1815475] - [x86] hyperv: Implement hv_is_hibernation_supported() (Mohammed Gamal) [1815475] - [hv] hv_utils: Add the support of hibernation (Mohammed Gamal) [1815475] - [hv] hv_utils: Support host-initiated hibernation request (Mohammed Gamal) [1815475] - [hv] hv_utils: Support host-initiated restart request (Mohammed Gamal) [1815475] - [hv] hv_balloon: Add the support of hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Resume after fixing up old primary channels (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Suspend after cleaning up hv_sock and sub channels (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Clean up hv_sock channels by force upon suspend (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Suspend/resume the vmbus itself for hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Ignore the offers when resuming from hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Implement suspend/resume for VSC drivers for hibernation (Mohammed Gamal) [1815475] - [net] ipv4: really enforce backoff for redirects (Paolo Abeni) [1834184] - [net] netfilter: nat: never update the UDP checksum when it's 0 (Guillaume Nault) [1794714] - [net] sched: allow flower to match erspan options (Xin Long) [1830482] - [net] sched: allow flower to match vxlan options (Xin Long) [1830482] - [net] sched: add erspan option support to act_tunnel_key (Xin Long) [1830482] - [net] sched: add vxlan option support to act_tunnel_key (Xin Long) [1830482] - [netdrv] netdevsim: disable devlink reload when resources are being used (Ivan Vecera) [1829778] - [netdrv] netdevsim: fix using uninitialized resources (Ivan Vecera) [1829778] - [netdrv] drivers/net: netdevsim depends on INET (Ivan Vecera) [1829778] - [netdrv] netdevsim: fix nsim_fib6_rt_create() error path (Ivan Vecera) [1829778] - [tools] selftests: netdevsim: Add test for FIB offload API (Ivan Vecera) [1829778] - [tools] selftests: forwarding: Add helpers and tests for FIB offload (Ivan Vecera) [1829778] - [tools] selftests: mlxsw: Add a self-test for port-default priority (Ivan Vecera) [1829778] - [netdrv] netdevsim: fib: Add dummy implementation for FIB offload (Ivan Vecera) [1829778] - [net] ipv6: Add "offload" and "trap" indications to routes (Ivan Vecera) [1829778] - [net] ipv4: Add "offload" and "trap" indications to routes (Ivan Vecera) [1829778] - [net] ipv4: Encapsulate function arguments in a struct (Ivan Vecera) [1829778] - [net] ipv4: Replace route in list before notifying (Ivan Vecera) [1829778] - [tools] selftests: netdevsim: Extend devlink trap test to include flow action cookie (Petr Oros) [1823745] - [netdrv] netdevsim: add ACL trap reporting cookie as a metadata (Petr Oros) [1823745] - [net] devlink: extend devlink_trap_report() to accept cookie and pass (Petr Oros) [1823745] - [net] drop_monitor: extend by passing cookie from driver (Petr Oros) [1823745] - [net] devlink: add trap metadata type for cookie (Petr Oros) [1823745] - [net] devlink: add ACL generic packet traps (Petr Oros) [1823745] - [net] devlink: Add overlay source MAC is multicast trap (Petr Oros) [1823745] - [net] devlink: Add tunnel generic packet traps (Petr Oros) [1823745] - [net] devlink: Add non-routable packet trap (Petr Oros) [1823745] - [netdrv] mlxsw: spectrum_router: Prevent incorrect replacement of local table routes (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Remove FIB entry list from FIB node (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Consolidate identical functions (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Make route creation and destruction symmetric (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Eliminate dead code (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Remove unnecessary checks (Ivan Vecera) [1828994] - [net] ipv6: Remove old route notifications and convert listeners (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Start using new IPv6 route notifications (Ivan Vecera) [1828994] - [net] ipv6: Handle multipath route deletion notification (Ivan Vecera) [1828994] - [net] ipv6: Handle route deletion notification (Ivan Vecera) [1828994] - [net] ipv6: Only Replay routes of interest to new listeners (Ivan Vecera) [1828994] - [net] ipv6: Notify multipath route if should be offloaded (Ivan Vecera) [1828994] - [net] ipv6: Notify route if replacing currently offloaded one (Ivan Vecera) [1828994] - [net] ipv6: Notify newly added route if should be offloaded (Ivan Vecera) [1828994] - [include] net: fib_notifier: Add temporary events to the FIB notification chain (Ivan Vecera) [1828994] - [net] ipv4: Remove old route notifications and convert listeners (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Start using new IPv4 route notifications (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Don't rely on missing extack to symbolize dump (Ivan Vecera) [1828994] - [net] ipv4: Only Replay routes of interest to new listeners (Ivan Vecera) [1828994] - [net] ipv4: Handle route deletion notification during flush (Ivan Vecera) [1828994] - [net] ipv4: Handle route deletion notification (Ivan Vecera) [1828994] - [net] ipv4: Notify newly added route if should be offloaded (Ivan Vecera) [1828994] - [net] ipv4: Notify route if replacing currently offloaded one (Ivan Vecera) [1828994] - [net] ipv4: Extend FIB alias find function (Ivan Vecera) [1828994] - [net] ipv4: Notify route after insertion to the routing table (Ivan Vecera) [1828994] - [include] net: fib_notifier: Add temporary events to the FIB notification chain (Ivan Vecera) [1828994] - [net] vti6: Fix memory leak of skb if input policy check fails (Xin Long) [1829720] - [net] xfrm: policy: Fix doulbe free in xfrm_policy_timer (Xin Long) [1829720] - [net] xfrm: add the missing verify_sec_ctx_len check in xfrm_add_acquire (Xin Long) [1829720] - [net] xfrm: fix uctx len check in verify_sec_ctx_len (Xin Long) [1829720] - [net] xfrm: handle NETDEV_UNREGISTER for xfrm device (Xin Long) [1829720] - [net] xfrm: interface: do not confirm neighbor when do pmtu update (Xin Long) [1829720] - [documentation] xfrm: update doc about xfrm[46]_gc_thresh (Xin Long) [1829720] - [documentation] devlink: remove trigger command from devlink-region.rst (Petr Oros) [1822570] - [include] devlink: promote "fw.bundle_id" to a generic info version (Petr Oros) [1822570] - [documentation] devlink: document devlink info versions reported by bnxt_en driver (Petr Oros) [1822570] - [include] devlink: add macro for "fw.roce" (Petr Oros) [1822570] - [documentation] Fix typo in devlink documentation (Petr Oros) [1822570] - [documentation] devlink: fix typos in qed documentation (Petr Oros) [1822570] - [documentation] devlink: document region snapshot triggering from userspace (Petr Oros) [1822570] - [documentation] devlink: introduce devlink-dpipe.rst documentation file (Petr Oros) [1822570] - [documentation] devlink: add a devlink-resource.rst documentation file (Petr Oros) [1822570] - [netdrv] devlink: rename and expand devlink-trap-netdevsim.rst (Petr Oros) [1822570] - [documentation] devlink: add documentation for ionic device driver (Petr Oros) [1822570] - [documentation] devlink: add a file documenting devlink regions (Petr Oros) [1822570] - [documentation] devlink: add a driver-specific file for the qed driver (Petr Oros) [1822570] - [documentation] devlink: add parameter documentation for the mlx4 driver (Petr Oros) [1822570] - [documentation] devlink: document info versions for each driver (Petr Oros) [1822570] - [documentation] devlink: convert driver-specific files to reStructuredText (Petr Oros) [1822570] - [documentation] devlink: mention reloading in devlink-params.rst (Petr Oros) [1822570] - [documentation] devlink: add documentation for generic devlink parameters (Petr Oros) [1822570] - [documentation] devlink: convert devlink-params.txt to reStructuredText (Petr Oros) [1822570] - [documentation] devlink: rename devlink-info-versions.rst and add a header (Petr Oros) [1822570] - [documentation] devlink: convert devlink-health.txt to rst format (Petr Oros) [1822570] - [documentation] devlink: move devlink documentation to subfolder (Petr Oros) [1822570] - [include] devlink: add macro for "fw.psid" (Petr Oros) [1822570] - [netdrv] ethtool: Add support for 400Gbps (50Gbps per lane) link modes (Ivan Vecera) [1828942] - [netdrv] phy: Add support for 100BaseT1 and 1000BaseT1 (Ivan Vecera) [1828942] - [net] phy: improve definition of __ETHTOOL_LINK_MODE_MASK_NBITS (Ivan Vecera) [1828942] - [net] netfilter: nf_tables: simplify NLM_F_CREATE handling (Phil Sutter) [1812666] - [net] devlink: Add layer 3 generic packet exception traps (Petr Oros) [1828737] - [net] devlink: Add layer 3 generic packet traps (Petr Oros) [1828737] - [net] netfilter: nf_tables: fix infinite loop when expr is not available (Phil Sutter) [1757933] - [net] netfilter: nf_tables: autoload modules from the abort path (Phil Sutter) [1757933] - [net] netfilter: nf_tables: remove WARN and add NLA_STRING upper limits (Phil Sutter) [1757933] - [net] netfilter: nf_tables: store transaction list locally while requesting module (Phil Sutter) [1757933] - [net] netfilter: nf_tables: use-after-free in failing rule with bound set (Phil Sutter) [1757933] - [net] netfilter: nft_meta: skip EAGAIN if nft_meta_bridge is not a module (Phil Sutter) [1757933] - [net] netfilter: nf_tables: force module load in case select_ops() returns -EAGAIN (Phil Sutter) [1757933] - [net] netfilter: nf_tables: add nft_expr_type_request_module() (Phil Sutter) [1757933] - [net] netfilter: nf_tables: bogus EBUSY in helper removal from transaction (Phil Sutter) [1757933] - [net] netfilter: nf_tables: fix set double-free in abort path (Phil Sutter) [1757933] - [net] netfilter: nft_compat: don't use refcount_inc on newly allocated entry (Phil Sutter) [1757933] - [net] netfilter: nf_tables: unbind set in rule from commit path (Phil Sutter) [1757933] - [net] netfilter: nft_compat: destroy function must not have side effects (Phil Sutter) [1757933] - [net] netfilter: nft_compat: make lists per netns (Phil Sutter) [1757933] - [net] netfilter: nft_compat: use refcnt_t type for nft_xt reference count (Phil Sutter) [1757933] - [net] netfilter: nf_tables: fix suspicious RCU usage in nft_chain_stats_replace() (Phil Sutter) [1757933] - [net] netfilter: nf_tables: asynchronous release (Phil Sutter) [1757933] - [net] netfilter: nf_tables: split set destruction in deactivate and destroy phase (Phil Sutter) [1757933] - [net] netfilter: nf_tables: flow event notifier must use transaction mutex (Phil Sutter) [1757933] - [net] netfilter: nf_tables: use dedicated mutex to guard transactions (Phil Sutter) [1757933] - [net] netfilter: nf_tables: avoid global info storage (Phil Sutter) [1757933] - [net] netfilter: nf_tables: take module reference when starting a batch (Phil Sutter) [1757933] - [net] netfilter: nf_tables: make valid_genid callback mandatory (Phil Sutter) [1757933] - [net] netfilter: nf_tables: add and use helper for module autoload (Phil Sutter) [1757933]- [kernel] sched: Fix missing bracket in membarrier_switch_mm from mismerge (Phil Auld) [1745111] - [fs] nfs: fix NULL deference in nfs4_get_valid_delegation ("J. Bruce Fields") [1831553] - [acpi] PCI/AER: Use only _OSC to determine AER ownership (Myron Stowe) [1712820] - [pci] PCI/EDR: Log only ACPI_NOTIFY_DISCONNECT_RECOVER events (Myron Stowe) [1712820] - [pci] PCI/AER: Rationalize error status register clearing (Myron Stowe) [1712820] - [pci] PCI/DPC: Add Error Disconnect Recover (EDR) support (Myron Stowe) [1712820] - [pci] PCI/DPC: Expose dpc_process_error(), dpc_reset_link() for use by EDR (Myron Stowe) [1712820] - [pci] PCI/AER: Add pci_aer_raw_clear_status() to unconditionally clear Error Status (Myron Stowe) [1712820] - [pci] PCI/DPC: Cache DPC capabilities in pci_init_capabilities() (Myron Stowe) [1712820] - [pci] PCI/ERR: Return status of pcie_do_recovery() (Myron Stowe) [1712820] - [pci] PCI/ERR: Remove service dependency in pcie_do_recovery() (Myron Stowe) [1712820] - [pci] PCI/DPC: Move DPC data into struct pci_dev (Myron Stowe) [1712820] - [pci] PCI/ERR: Update error status after reset_link() (Myron Stowe) [1712820] - [pci] PCI/ERR: Combine pci_channel_io_frozen cases (Myron Stowe) [1712820] - [pci] PCI/ASPM: Reduce severity of common clock config message (Myron Stowe) [1712820] - [pci] PCI/ASPM: Clear the correct bits when enabling L1 substates (Myron Stowe) [1712820] - [pci] PCI/PM: Print config space of devices before suspend (Myron Stowe) [1712820] - [pci] PCI/AER: Initialize aer_fifo (Myron Stowe) [1712820] - [pci] PCI/AER: Factor message prefixes with dev_fmt() (Myron Stowe) [1712820] - [pci] PCI/AER: Log which device prevents error recovery (Myron Stowe) [1712820] - [security] ima: Switch to ima_hash_algo for boot aggregate (Jerry Snitselaar) [1786441] - [mm] mm: mempolicy: require at least one nodeid for MPOL_PREFERRED (Rafael Aquini) [1834435] {CVE-2020-11565} - [tools] perf maps: Add missing unlock to maps__insert() error case (Michael Petlan) [1818838] - [tools] perf dso: Fix dso comparison (Michael Petlan) [1818838] - [tools] perf block-info: Fix wrong block address comparison in block_info__cmp() (Michael Petlan) [1818838] - [tools] libperf: Setup initial evlist::all_cpus value (Michael Petlan) [1818838] - [tools] perf report: Fix no libunwind compiled warning break s390 issue (Michael Petlan) [1818838] - [tools] perf hists: Fix variable name's inconsistency in hists__for_each() macro (Michael Petlan) [1818838] - [tools] perf map: Set kmap->kmaps backpointer for main kernel map chunks (Michael Petlan) [1818838] - [tools] perf report: Fix incorrectly added dimensions as switch perf data file (Michael Petlan) [1818838] - [tools] tools lib traceevent: Fix memory leakage in filter_event (Michael Petlan) [1818838] - [tools] perf vendor events s390: Remove name from L1D_RO_EXCL_WRITES description (Michael Petlan) [1818838] - [tools] perf vendor events s390: Fix counter long description for DTLB1_GPAGE_WRITES (Michael Petlan) [1818838] - [tools] libtraceevent: Allow custom libdir path (Michael Petlan) [1818838] - [tools] perf top: Do not bail out when perf_env__read_cpuid() returns ENOSYS (Michael Petlan) [1818838] - [tools] perf arch: Make the default get_cpuid() return compatible error (Michael Petlan) [1818838] - [tools] perf inject: Fix processing of ID index for injected instruction tracing (Michael Petlan) [1818838] - [tools] perf report: Bail out --mem-mode if mem info is not available (Michael Petlan) [1818838] - [tools] perf report: Make -F more strict like -s (Michael Petlan) [1818838] - [tools] perf report/top TUI: Replace pr_err() with ui__error() (Michael Petlan) [1818838] - [tools] libtraceevent: Copy pkg-config file to output folder when using O= (Michael Petlan) [1818838] - [tools] libtraceevent: Fix lib installation with O= (Michael Petlan) [1818838] - [tools] perf kvm: Clarify the 'perf kvm' -i and -o command line options (Michael Petlan) [1818838] - [tools] perf machine: Fill map_symbol->maps in append_inlines() to fix segfault (Michael Petlan) [1818838] - [tools] perf jit: Move test functionality in to a test (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for enabling/disabling events (Michael Petlan) [1818838] - [tools] perf evsel: Add functions to enable/disable for a specific CPU (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for reading (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for opening events (Michael Petlan) [1818838] - [tools] perf stat: Factor out open error handling (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for closing file descriptors (Michael Petlan) [1818838] - [tools] perf evsel: Add functions to close evsel on a CPU (Michael Petlan) [1818838] - [tools] perf evsel: Add iterator to iterate over events ordered by CPU (Michael Petlan) [1818838] - [tools] perf evlist: Maintain evlist->all_cpus (Michael Petlan) [1818838] - [tools] perf cpumap: Maintain cpumaps ordered and without dups (Michael Petlan) [1818838] - [tools] perf script: Fix brstackinsn for AUXTRACE (Michael Petlan) [1818838] - [tools] perf affinity: Add infrastructure to save/restore affinity (Michael Petlan) [1818838] - [tools] perf pmu: Use file system cache to optimize sysfs access (Michael Petlan) [1818838] - [tools] perf regs: Make perf_reg_name() return "unknown" instead of NULL (Michael Petlan) [1818838] - [tools] perf diff: Use llabs() with 64-bit values (Michael Petlan) [1818838] - [tools] perf diff: Use llabs() with 64-bit values (Michael Petlan) [1818838] - [tools] perf tests: Rename tests/map_groups.c to tests/maps.c (Michael Petlan) [1818838] - [tools] perf tests: Rename thread-mg-share to thread-maps-share (Michael Petlan) [1818838] - [tools] perf maps: Rename map_groups.h to maps.h (Michael Petlan) [1818838] - [tools] perf maps: Rename 'mg' variables to 'maps' (Michael Petlan) [1818838] - [tools] perf map_symbol: Rename ms->mg to ms->maps (Michael Petlan) [1818838] - [tools] perf addr_location: Rename al->mg to al->maps (Michael Petlan) [1818838] - [tools] perf thread: Rename thread->mg to thread->maps (Michael Petlan) [1818838] - [tools] perf maps: Merge 'struct maps' with 'struct map_groups' (Michael Petlan) [1818838] - [tools] x86/insn: perf tools: Add some more instructions to the new instructions test (Michael Petlan) [1818838] - [tools] perf map: Remove unused functions (Michael Petlan) [1818838] - [tools] perf map: Remove needless struct forward declarations (Michael Petlan) [1818838] - [tools] perf map: Ditch leftover map__reloc_vmlinux() prototype (Michael Petlan) [1818838] - [tools] perf script: Move map__fprintf_srccode() to near its only user (Michael Petlan) [1818838] - [tools] perf parse: Fix potential memory leak when handling tracepoint errors (Michael Petlan) [1818838] - [tools] libtraceevent: Fix memory leakage in copy_filter_type (Michael Petlan) [1818838] - [tools] libtraceevent: Fix header installation (Michael Petlan) [1818838] - [tools] perf intel-bts: Does not support AUX area sampling (Michael Petlan) [1818838] - [tools] perf intel-pt: Add support for decoding AUX area samples (Michael Petlan) [1818838] - [tools] perf intel-pt: Add support for recording AUX area samples (Michael Petlan) [1818838] - [tools] perf pmu: When using default config, record which bits of config were changed by the user (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for queuing AUX area samples (Michael Petlan) [1818838] - [tools] perf session: Add facility to peek at all events (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for dumping AUX area samples (Michael Petlan) [1818838] - [tools] perf inject: Cut AUX area samples (Michael Petlan) [1818838] - [tools] perf record: Add aux-sample-size config term (Michael Petlan) [1818838] - [tools] perf record: Add support for AUX area sampling (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for AUX area sample recording (Michael Petlan) [1818838] - [tools] perf auxtrace: Move perf_evsel__find_pmu() (Michael Petlan) [1818838] - [tools] perf record: Add a function to test for kernel support for AUX area sampling (Michael Petlan) [1818838] - [tools] perf tools: Add kernel AUX area sampling definitions (Michael Petlan) [1818838] - [tools] perf report: Jump to symbol source view from total cycles view (Michael Petlan) [1818838] - [tools] perf util: Move block TUI function to ui browsers (Michael Petlan) [1818838] - [tools] perf dso: Move dso_id from 'struct map' to 'struct dso' (Michael Petlan) [1818838] - [tools] perf dsos: Remove unused dsos__find() method (Michael Petlan) [1818838] - [tools] perf map: Move comparision of map's dso_id to a separate function (Michael Petlan) [1818838] - [tools] perf map: Pass a dso_id to map__new() (Michael Petlan) [1818838] - [tools] perf map: Move maj/min/ino/ino_generation to separate struct (Michael Petlan) [1818838] - [tools] perf parse: Report initial event parsing error (Michael Petlan) [1818838] - [tools] x86/insn: perf tools: Add some instructions to the new instructions test (Michael Petlan) [1818838] - [tools] perf map: Move seldom used ->flags field to second cacheline (Michael Petlan) [1818838] - [tools] perf map: Use bitmap for booleans (Michael Petlan) [1818838] - [tools] libtraceevent: Fix parsing of event o and X argument types (Michael Petlan) [1818838] - [tools] perf callchain: Fix segfault in thread__resolve_callchain_sample() (Michael Petlan) [1818838] - [tools] perf map_groups: Auto sort maps by name, if needed (Michael Petlan) [1818838] - [tools] perf machine: No need to check if kernel module maps pre-exist (Michael Petlan) [1818838] - [tools] perf record: No need to process the synthesized MMAP events twice (Michael Petlan) [1818838] - [tools] perf map: No need to adjust the long name of modules (Michael Petlan) [1818838] - [tools] perf map_groups: Add a front end cache for map lookups by name (Michael Petlan) [1818838] - [tools] perf maps: Do not use an rbtree to sort by map name (Michael Petlan) [1818838] - [tools] perf maps: Purge the entries from maps->names in __maps__purge() (Michael Petlan) [1818838] - [tools] perf vendor events power9: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf vendor events power8: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf parse: Use YYABORT to clear stack after failure, plugging leaks (Michael Petlan) [1818838] - [tools] perf tool: Provide an option to print perf_event_open args and return value (Michael Petlan) [1818838] - [tools] perf map: Remove ->groups from 'struct map' (Michael Petlan) [1818838] - [tools] perf map: Combine maps__fixup_overlappings with its only use (Michael Petlan) [1818838] - [tools] perf annotate: Stop using map->groups, use map_symbol->mg instead (Michael Petlan) [1818838] - [tools] perf tools: Add a 'struct map_groups' pointer to 'struct map_symbol' (Michael Petlan) [1818838] - [tools] perf symbols: Use kmaps(map)->machine when we know its a kernel map (Michael Petlan) [1818838] - [tools] pref tools: Make 'struct addr_map_symbol' contain 'struct map_symbol' (Michael Petlan) [1818838] - [tools] perf callchain: Use 'struct map_symbol' in 'struct callchain_cursor_node' (Michael Petlan) [1818838] - [tools] perf unwind: Use 'struct map_symbol' in 'struct unwind_entry' (Michael Petlan) [1818838] - [tools] perf annotate: Pass a 'map_symbol' in places receiving a pair of 'map' and 'symbol' pointers (Michael Petlan) [1818838] - [tools] perf tools: Add map_groups to 'struct addr_location' (Michael Petlan) [1818838] - [tools] perf map_groups: Pass the object to map_groups__find_ams() (Michael Petlan) [1818838] - [tools] perf symbols: Stop using map->groups, we can use kmaps instead (Michael Petlan) [1818838] - [tools] perf map: Use map->dso->kernel + map__kmaps() in map__kmaps() (Michael Petlan) [1818838] - [tools] perf report: Sort by sampled cycles percent per block for tui (Michael Petlan) [1818838] - [tools] perf report: Support --percent-limit for --total-cycles (Michael Petlan) [1818838] - [tools] perf report: Sort by sampled cycles percent per block for stdio (Michael Petlan) [1818838] - [tools] perf hist: Support block formats with compare/sort/display (Michael Petlan) [1818838] - [tools] perf hist: Count the total cycles of all samples (Michael Petlan) [1818838] - [tools] perf block: Cleanup and refactor block info functions (Michael Petlan) [1818838] - [tools] perf diff: Don't use hack to skip column length calculation (Michael Petlan) [1818838] - [tools] perf tests: Fix out of bounds memory access (Michael Petlan) [1818838] - [tools] perf record: Add support for limit perf output file size (Michael Petlan) [1818838] - [tools] perf annotate: Fix heap overflow (Michael Petlan) [1818838] - [tools] perf machine: Add kernel_dso() method (Michael Petlan) [1818838] - [tools] perf symbols: Remove needless checks for map->groups->machine (Michael Petlan) [1818838] - [tools] perf parse: Add a deep delete for parse event terms (Michael Petlan) [1818838] - [tools] perf parse: If pmu configuration fails free terms (Michael Petlan) [1818838] - [tools] perf parse: Before yyabort-ing free components (Michael Petlan) [1818838] - [tools] perf parse: Add destructors for parse event terms (Michael Petlan) [1818838] - [tools] perf parse: Ensure config and str in terms are unique (Michael Petlan) [1818838] - [tools] perf parse: Add parse events handle error (Michael Petlan) [1818838] - [tools] perf inject: Make --strip keep evsels (Michael Petlan) [1818838] - [tools] perf tools: Fix cross compile for ARM64 (Michael Petlan) [1818838] - [tools] perf stat: Add --per-node agregation support (Michael Petlan) [1818838] - [tools] perf env: Add perf_env__numa_node() (Michael Petlan) [1818838] - [tools] perf tools: Splice events onto evlist even on error (Michael Petlan) [1818838] - [tools] libsubcmd: Use -O0 with DEBUG=1 (Michael Petlan) [1818838] - [tools] libsubcmd: Move EXTRA_FLAGS to the end to allow overriding existing flags (Michael Petlan) [1818838] - [tools] perf map_groups: Introduce for_each_entry() and for_each_entry_safe() iterators (Michael Petlan) [1818838] - [tools] perf maps: Add for_each_entry()/_safe() iterators (Michael Petlan) [1818838] - [tools] perf map: Allow map__next() to receive a NULL arg (Michael Petlan) [1818838] - [tools] perf map: Check if the map still has some refcounts on exit (Michael Petlan) [1818838] - [tools] perf dso: Add dso__data_write_cache_addr() (Michael Petlan) [1818838] - [tools] perf dso: Refactor dso_cache__read() (Michael Petlan) [1818838] - [tools] perf auxtrace: Add auxtrace_cache__remove() (Michael Petlan) [1818838] - [tools] perf jevents: Fix resource leak in process_mapfile() and main() (Michael Petlan) [1818838] - [tools] perf kvm: Use evlist layer api when possible (Michael Petlan) [1818838] - [tools] perf tests: Fix a typo (Michael Petlan) [1818838] - [tools] perf tools: Avoid a malloc() for array events (Michael Petlan) [1818838] - [tools] perf tools: Move ALLOC_LIST into a function (Michael Petlan) [1818838] - [tools] perf evsel: Avoid close(-1) (Michael Petlan) [1818838] - [tools] perf evsel: Always preserve errno while cleaning up perf_event_open failures (Michael Petlan) [1818838] - [tools] perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR (Michael Petlan) [1818838] - [tools] perf llvm: Make .o saving a debug message, not an info one (Michael Petlan) [1818838] - [tools] perf record: Put a copy of kcore into the perf.data directory (Michael Petlan) [1818838] - [tools] perf data: Support single perf.data file directory (Michael Petlan) [1818838] - [tools] perf session: Fix indent in perf_session__new()" (Michael Petlan) [1818838] - [tools] perf data: Rename directory "header" file to "data" (Michael Petlan) [1818838] - [tools] perf data: Move perf_dir_version into data.h (Michael Petlan) [1818838] - [tools] perf data: Correctly identify directory data files (Michael Petlan) [1818838] - [tools] perf trace: Use STUL_STRARRAY_FLAGS with mmap (Michael Petlan) [1818838] - [tools] perf trace: Wire up strarray__strtoul_flags() (Michael Petlan) [1818838] - [tools] libbeauty: Introduce strarray__strtoul_flags() (Michael Petlan) [1818838] - [tools] libbeauty: Make the mmap_flags strarray visible outside of its beautifier (Michael Petlan) [1818838] - [tools] perf trace: Use strtoul for the fcntl 'cmd' argument (Michael Petlan) [1818838] - [tools] libbeauty: Introduce syscall_arg__strtoul_strarrays() (Michael Petlan) [1818838] - [tools] libperf: Add pr_err() macro (Michael Petlan) [1818838] - [tools] libperf: Do not export perf_evsel__init()/perf_evlist__init() (Michael Petlan) [1818838] - [tools] libperf: Keep count of failed tests (Michael Petlan) [1818838] - [tools] libperf: Add tests_mmap_cpus test (Michael Petlan) [1818838] - [tools] libperf: Add tests_mmap_thread test (Michael Petlan) [1818838] - [tools] libperf: Link static tests with libapi.a (Michael Petlan) [1818838] - [tools] libperf: Move mask setup to perf_evlist__mmap_ops() (Michael Petlan) [1818838] - [tools] libperf: Move mmap allocation to perf_evlist__mmap_ops::get (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__for_each_mmap() (Michael Petlan) [1818838] - [tools] perf tests: Disable bp_signal testing for arm64 (Michael Petlan) [1818838] - [tools] perf tests bp_account: Add dedicated checking helper is_supported() (Michael Petlan) [1818838] - [tools] perf tests: Remove needless headers for bp_account (Michael Petlan) [1818838] - [tools] perf list: Hide deprecated events by default (Michael Petlan) [1818838] - [tools] perf trace: Pass a syscall_arg to syscall_arg_fmt->strtoul() (Michael Petlan) [1818838] - [tools] perf trace: Honour --max-events in processing syscalls:sys_enter_* (Michael Petlan) [1818838] - [tools] libbeauty: Introduce syscall_arg__strtoul_strarray() (Michael Petlan) [1818838] - [tools] perf trace: Initialize evsel_trace->fmt for syscalls:sys_enter_* tracepoints (Michael Petlan) [1818838] - [tools] perf trace: Introduce 'struct evsel__trace' for evsel->priv needs (Michael Petlan) [1818838] - [tools] perf trace: Hide evsel->access further, simplify code (Michael Petlan) [1818838] - [tools] perf trace: Introduce accessors to trace specific evsel->priv (Michael Petlan) [1818838] - [tools] perf trace: Show error message when not finding a field used in a filter expression (Michael Petlan) [1818838] - [tools] perf trace: Hook the 'vec' tracepoint argument with the x86 IRQ vectors scnprintf/strtoul (Michael Petlan) [1818838] - [tools] perf trace beauty: Add the glue for the autogenerated x86 IRQ vector array (Michael Petlan) [1818838] - [tools] libbeauty: Add a strarray__scnprintf_suffix() method (Michael Petlan) [1818838] - [tools] libbeauty: Hook up the x86 irq_vectors table generator (Michael Petlan) [1818838] - [tools] libbeauty: Add a generator for x86's IRQ vectors -> strings (Michael Petlan) [1818838] - [tools] tools arch x86: Grab a copy of the file containing the IRQ vector defines (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 HHA PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 L3C PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 DDRC PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Fix Hisi hip08 DDRC PMU eventname (Michael Petlan) [1818838] - [tools] perf trace: Support tracepoint dynamic char arrays (Michael Petlan) [1818838] - [tools] perf trace: Filter own pid to avoid a feedback look in 'perf trace record -a' (Michael Petlan) [1818838] - [tools] perf string: Export asprintf__tp_filter_pids() (Michael Petlan) [1818838] - [tools] perf trace: Introduce --errno-summary (Michael Petlan) [1818838] - [tools] perf trace: Add syscall failure stats to -s/--summary and -S/--with-summary (Michael Petlan) [1818838] - [tools] perf stat: Support --all-kernel/--all-user (Michael Petlan) [1818838] - [tools] perf annotate: Fix objdump --no-show-raw-insn flag (Michael Petlan) [1818838] - [tools] perf annotate: Don't pipe objdump output through 'expand' command (Michael Petlan) [1818838] - [tools] perf annotate: Don't pipe objdump output through 'grep' command (Michael Petlan) [1818838] - [tools] perf annotate: Use libsubcmd's run-command.h to fork objdump (Michael Petlan) [1818838] - [tools] perf annotate: Avoid reallocation in objdump parsing (Michael Petlan) [1818838] - [tools] perf report: Add warning when libunwind not compiled in (Michael Petlan) [1818838] - [tools] perf test: Avoid infinite loop for task exit case (Michael Petlan) [1818838] - [tools] perf test: Report failure for mmap events (Michael Petlan) [1818838] - [tools] perf script: Fix --reltime with --time (Michael Petlan) [1818838] - [tools] perf tools: Allow to build with -ltcmalloc (Michael Petlan) [1818838] - [tools] perf diff: Report noisy for cycles diff (Michael Petlan) [1818838] - [tools] perf tools: Propagate CFLAGS to libperf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_evlist__filter_pollfd() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__purge() (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__exit() (Michael Petlan) [1818838] - [tools] libperf: Move the pollfd allocation from tools/perf to libperf (Michael Petlan) [1818838] - [tools] libperf: Centralize map refcnt setting (Michael Petlan) [1818838] - [tools] perf evlist: Switch to libperf's mmap interface (Michael Petlan) [1818838] - [tools] perf evlist: Introduce perf_evlist__mmap_cb_mmap() (Michael Petlan) [1818838] - [tools] perf evlist: Introduce perf_evlist__mmap_cb_get() (Michael Petlan) [1818838] - [tools] perf tools: Introduce perf_evlist__mmap_cb_idx() (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist_mmap_ops::mmap callback (Michael Petlan) [1818838] - [tools] libperf: Add perf_evlist_mmap_ops::get callback (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist_mmap_ops::idx callback (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__mmap_ops() (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_evlist__mmap()/munmap() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_event() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_done() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_init() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__consume() function from tools/perf (Michael Petlan) [1818838] - [tools] perf tools: Use perf_mmap way to detect aux mmap (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__put() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__unmap() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__get() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__mmap() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__mmap_len() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Add 'struct perf_mmap_param' (Michael Petlan) [1818838] - [tools] libperf: Add perf_mmap__init() function (Michael Petlan) [1818838] - [tools] perf tools: Avoid 'sample_reg_masks' being const + weak (Michael Petlan) [1818838] - [tools] perf beauty: Introduce strtoul() for x86 MSRs (Michael Petlan) [1818838] - [tools] perf trace: Expand strings in filters to integers (Michael Petlan) [1818838] - [tools] perf trace: Introduce a strtoul() method for 'struct strarrays' (Michael Petlan) [1818838] - [tools] perf trace: Add a strtoul() method to 'struct syscall_arg_fmt' (Michael Petlan) [1818838] - [tools] perf trace: Introduce --filter for tracepoint events (Michael Petlan) [1818838] - [tools] perf evlist: Introduce append_tp_filter_pid() and append_tp_filter_pids() (Michael Petlan) [1818838] - [tools] perf evlist: Introduce append_tp_filter() method (Michael Petlan) [1818838] - [tools] perf evlist: Factor out asprintf routine to build a tracepoint pid filter (Michael Petlan) [1818838] - [tools] perf trace: Associate the "msr" tracepoint arg name with x86_MSR__scnprintf() (Michael Petlan) [1818838] - [tools] perf trace beauty: Add the glue for the autogenerated MSR arrays (Michael Petlan) [1818838] - [tools] perf trace: Allow associating scnprintf routines with well known arg names (Michael Petlan) [1818838] - [tools] perf beauty: Hook up the x86 MSR table generator (Michael Petlan) [1818838] - [tools] perf trace beauty: Add a x86 MSR cmd id->str table generator (Michael Petlan) [1818838] - [tools] perf beauty: Make strarray's offset be u64 (Michael Petlan) [1818838] - [tools] perf trace: Allow choosing how to augment the tracepoint arguments (Michael Petlan) [1818838] - [tools] perf trace: Enclose all events argument lists with () (Michael Petlan) [1818838] - [tools] perf trace: Add array of chars scnprintf beautifier (Michael Petlan) [1818838] - [tools] perf trace: Add the syscall_arg_fmt pointer to syscall_arg (Michael Petlan) [1818838] - [tools] perf trace: Move some scnprintf methods from syscall to syscall_arg_fmt (Michael Petlan) [1818838] - [tools] perf trace: Allocate an array of beautifiers for tracepoint args (Michael Petlan) [1818838] - [tools] perf trace: Factor out the initialization of syscal_arg_fmt->scnprintf (Michael Petlan) [1818838] - [tools] perf script: Allow --time with --reltime (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add Time chart by CPU (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add ability for Call tree to open at a specified task and time (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Tidy up Call tree call_time (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add global time range calculations (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add HBoxLayout and VBoxLayout (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add LookupModel() (Michael Petlan) [1818838] - [tools] perf trace augmented_syscalls: Do not show syscalls when none was asked for (Michael Petlan) [1818838] - [tools] perf trace: Postpone parsing .perfconfig trace.add_events to after --verbose is processed (Michael Petlan) [1818838] - [tools] perf trace: Generalize the syscall_fmt find routines (Michael Petlan) [1818838] - [tools] perf trace: Separate 'struct syscall_fmt' definition from syscall_fmts variable (Michael Petlan) [1818838] - [tools] perf trace: Make evlist__set_evsel_handler() affect just entries without a handler (Michael Petlan) [1818838] - [tools] perf evlist: Adopt __set_tracepoint_handlers method from perf_session (Michael Petlan) [1818838] - [tools] perf top: Initialize perf_env->cpuid, needed by the per arch annotation init routine (Michael Petlan) [1818838] - [tools] perf env: Add routine to read the env->cpuid from the running machine (Michael Petlan) [1818838] - [kernel] perf/cgroups: Install cgroup events to correct cpuctx (Michael Petlan) [1818838] - [kernel] perf/core: Fix mlock accounting in perf_mmap() (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Remove PCIe3 unit for SNR (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Fix missing marker for snr_uncore_imc_freerunning_events (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family (Michael Petlan) [1818838] - [kernel] perf: Correctly handle failed perf_get_aux_event() (Michael Petlan) [1818838] - [x86] perf/x86/intel: Fix PT PMI handling (Michael Petlan) [1818838] - [x86] perf/x86/intel/bts: Fix the use of page_private() (Michael Petlan) [1818838] - [x86] perf/x86: Fix potential out-of-bounds access (Michael Petlan) [1818838] - [x86] perf/x86: Implement immediate enforcement of /sys/devices/cpu/rdpmc value of 0 (Michael Petlan) [1818838] - [kernel] perf/core: Make the mlock accounting simple again (Michael Petlan) [1818838] - [kernel] perf/core: Fix the mlock accounting, again (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Prevent redundant WRMSRs (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Opportunistically use single range output mode (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Add sampling support (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Factor out pt_config_start() (Michael Petlan) [1818838] - [kernel] perf/aux: Allow using AUX data in perf samples (Michael Petlan) [1818838] - [kernel] perf/core: Fix unlock balance in perf_init_event() (Michael Petlan) [1818838] - [x86] perf/x86/amd: Remove set but not used variable 'active' (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_init_event() for TYPE_SOFTWARE (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_init_event() (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_install_in_event() (Michael Petlan) [1818838] - [x86] perf/x86: Synchronize PMU task contexts on optimized context switches (Michael Petlan) [1818838] - [x86] perf/x86/intel: Implement LBR callstack context synchronization (Michael Petlan) [1818838] - [x86] perf/x86: Install platform specific ->swap_task_ctx() adapter (Michael Petlan) [1818838] - [x86] perf/core, perf/x86: Introduce swap_task_ctx() method at 'struct pmu' (Michael Petlan) [1818838] - [kernel] perf/ring_buffer: Matching the memory allocate and free, in rb_alloc() (Michael Petlan) [1818838] - [kernel] perf/ring_buffer: Modify the parameter type of perf_mmap_free_page() (Michael Petlan) [1818838] - [documentation] Documentation: Document sysfs interfaces purr, spurr, idle_purr, idle_spurr (Steve Best) [1783286] - [powerpc] powerpc/sysfs: Show idle_purr and idle_spurr for every CPU (Steve Best) [1783286] - [powerpc] powerpc/pseries: Account for SPURR ticks on idle CPUs (Steve Best) [1783286] - [powerpc] powerpc/idle: Store PURR snapshot in a per-cpu global variable (Steve Best) [1783286] - [powerpc] powerpc: Move idle_loop_prolog()/epilog() functions to header file (Steve Best) [1783286] - [kernel] padata: add separate cpuhp node for CPUHP_PADATA_DEAD (Herbert Xu) [1671674] - [kernel] padata: fix uninitialized return value in padata_replace() (Herbert Xu) [1671674] - [kernel] padata: remove reorder_objects (Herbert Xu) [1671674] - [crypto] padata: remove cpumask change notifier (Herbert Xu) [1671674] - [kernel] padata: always acquire cpu_hotplug_lock before pinst->lock (Herbert Xu) [1671674] - [kernel] padata: validate cpumask without removed CPU during offline (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - Avoid deadlock by using per-instance padata queues (Herbert Xu) [1671674] - [kernel] padata: Remove unused padata_remove_cpu (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - Fix user-after-free on module unload (Herbert Xu) [1671674] - [kernel] padata: Remove broken queue flushing (Herbert Xu) [1671674] - [kernel] padata: remove cpu_index from the parallel_queue (Herbert Xu) [1671674] - [kernel] padata: unbind parallel jobs from specific CPUs (Herbert Xu) [1671674] - [kernel] padata: use separate workqueues for parallel and serial work (Herbert Xu) [1671674] - [crypto] padata, pcrypt: take CPU hotplug lock internally in padata_alloc_possible (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - remove padata cpumask notifier (Herbert Xu) [1671674] - [crypto] padata: make padata_do_parallel find alternate callback CPU (Herbert Xu) [1671674] - [kernel] workqueue: require CPU hotplug read exclusion for apply_workqueue_attrs (Herbert Xu) [1671674] - [kernel] workqueue: unconfine alloc/apply/free_workqueue_attrs() (Herbert Xu) [1671674] - [crypto] padata: allocate workqueue internally (Herbert Xu) [1671674] - [kernel] padata: initialize pd->cpu with effective cpumask (Herbert Xu) [1671674] - [kernel] padata: purge get_cpu and reorder_via_wq from padata_do_serial (Herbert Xu) [1671674] - [kernel] padata: Replace delayed timer with immediate workqueue in padata_reorder (Herbert Xu) [1671674] - [kernel] padata: use smp_mb in padata_reorder to avoid orphaned padata jobs (Herbert Xu) [1671674] - [kernel] tracing: Avoid memory leak in process_system_preds() (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Have error path in predicate_parse() free its allocated memory (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Avoid memory leak in predicate_parse() (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Fix memory leak in create_filter() (Jerome Marchand) [1829953] {CVE-2019-19072} - [tools] KVM: selftests: s390x: Provide additional num-guest-pages adjustment (Philipp Rudo) [1792266] - [s390] s390/protvirt: fix compilation issue (Philipp Rudo) [1792266] - [kvm] KVM: s390: Fix PV check in deliverable_irqs() (Philipp Rudo) [1792266] - [kvm] KVM: s390: Return last valid slot if approx index is out-of-bounds (Philipp Rudo) [1792266] - [kvm] KVM: s390: vsie: Fix delivery of addressing exceptions (Philipp Rudo) [1792266] - [mm] s390/gmap: return proper error code on ksm unsharing (Philipp Rudo) [1792266] - [s390] KVM: s390: mark sie block as 512 byte aligned (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: check for registers to NOT change on reset (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: test more register variants for the reset ioctl (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: fix early guest crash (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: fixup fprintf format error in reset.c (Philipp Rudo) [1792266] - [kvm] KVM: s390: Also reset registers in sync regs for initial cpu reset (Philipp Rudo) [1792266] - [kvm] KVM: s390: introduce module parameter kvm.use_gisa (Philipp Rudo) [1792266] - [documentation] KVM: s390: protvirt: Add KVM api documentation (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED (Philipp Rudo) [1792266] - [documentation] DOCUMENTATION: Protected virtual machine introduction and IPL (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add UV cpu reset calls (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: do not inject interrupts after start (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Support cmd 5 operation state (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Report CPU state to Ultravisor (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: UV calls in support of diag308 0, 1 (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add program exception injection (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Only sync fmt4 registers (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Do only reset registers that are accessible (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: disallow one_reg (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: STSI handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Write sthyi data to instruction data area (Philipp Rudo) [1792266] - [kvm] KVM: s390/mm: handle guest unpin events (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: handle secure guest prefix pages (Philipp Rudo) [1792266] - [kvm] KVM: S390: protvirt: Introduce instruction data area bounce buffer (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add new gprs location handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Handle spec exception loops (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add SCLP interrupt handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Implement interrupt injection (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Instruction emulation (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Handle SE notification interceptions (Philipp Rudo) [1792266] - [mm] KVM: s390/mm: Make pages accessible before destroying the guest (Philipp Rudo) [1792266] - [mm] KVM: s390: protvirt: Secure memory is not mergeable (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add initial vm and cpu lifecycle handling (Philipp Rudo) [1792266] - [s390] KVM: s390: add new variants of UV CALL (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add UV debug trace (Philipp Rudo) [1792266] - [kvm] KVM: s390/interrupt: do not pin adapter interrupt pages (Philipp Rudo) [1792266] - [s390] s390/protvirt: Add sysfs firmware interface for Ultravisor information (Philipp Rudo) [1792266] - [s390] s390/mm: add (non)secure page access exceptions handlers (Philipp Rudo) [1792266] - [s390] s390/mm: provide memory management functions for protected KVM guests (Philipp Rudo) [1792266] - [s390] s390/protvirt: add ultravisor initialization (Philipp Rudo) [1792266] - [s390] s390/protvirt: introduce host side setup (Philipp Rudo) [1792266] - [documentation] KVM: s390: rstify new ioctls in api.rst (Philipp Rudo) [1792266] - [s390] s390/uv: Fix handling of length extensions (Philipp Rudo) [1792266] - [tools] selftests: KVM: testing the local IRQs resets (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390x: Add reset tests (Philipp Rudo) [1792266] - [kvm] KVM: s390: Add new reset vcpu API (Philipp Rudo) [1792266] - [kvm] KVM: s390: Cleanup initial cpu reset (Philipp Rudo) [1792266] - [kvm] KVM: s390: do not clobber registers during guest reset/store status (Philipp Rudo) [1792266] - [kvm] KVM: s390: ENOTSUPP -> EOPNOTSUPP fixups (Philipp Rudo) [1792266] - [s390] s390/uv: use EOPNOTSUPP instead of ENOTSUPP (Philipp Rudo) [1792266] - [kvm] KVM: s390: Do not yield when target is already running (Philipp Rudo) [1792266] - [kvm] KVM: s390: count invalid yields (Philipp Rudo) [1792266] - [kvm] KVM: s390: mark __insn32_query() as __always_inline (Philipp Rudo) [1792266] - [kvm] KVM: s390: fix __insn32_query() inline assembly (Philipp Rudo) [1792266] - [kvm] KVM: s390: Cleanup kvm_arch_init error path (Philipp Rudo) [1792266] - [kvm] KVM: s390: Remove unused parameter from __inject_sigp_restart() (Philipp Rudo) [1792266] - [mm] mm/gup/writeback: add callbacks for inaccessible pages (Philipp Rudo) [1792266] - [scsi] scsi: libiscsi: fall back to sendmsg for slab pages (Maurizio Lombardi) [1825775] - [fs] smb3: fix default permissions on new files when mounting with modefromsid (Leif Sahlberg) [1833374] - [fs] gfs2: don't call quota_unhold if quotas are not locked (Robert S Peterson) [1830043] - [fs] gfs2: move privileged user check to gfs2_quota_lock_check (Robert S Peterson) [1830043] - [fs] gfs2: remove check for quotas on in gfs2_quota_check (Robert S Peterson) [1830043] - [fs] gfs2: Change BUG_ON to an assert_withdraw in gfs2_quota_change (Robert S Peterson) [1830043] - [fs] gfs2: Fix problems regarding gfs2_qa_get and _put (Robert S Peterson) [1830043] - [powerpc] powerpc/eeh: Fix deadlock handling dead PHB (Sam Bobroff) [1774820] - [powerpc] powerpc/powernv/eeh: Fix oops when probing cxl devices (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Slightly simplify eeh_add_to_parent_pe() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Remove unused return path from eeh_pe_dev_traverse() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Fix crash when edev->pdev changes (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Convert log messages to eeh_edev_* macros (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Introduce EEH edev logging macros (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Add bdfn field to eeh_dev (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Refactor around eeh_probe_devices() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: EEH for pSeries hot plug (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Initialize EEH address cache earlier (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Improve debug messages around device addition (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Clear stale EEH_DEV_NO_HANDLER flag (Sam Bobroff) [1774820] - [powerpc] powerpc/64: Adjust order in pcibios_init() (Sam Bobroff) [1774820] - [powerpc] powerpc/pci: Add pci_find_controller_for_domain() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh_cache: Bump log level of eeh_addr_cache_print() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh_cache: Add pr_debug() prints for insert/remove (Sam Bobroff) [1774820]- [gpio] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 CHT + AXP288 model (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 BYT + AXP288 model (David Arcari) [1829900] - [gpio] gpiolib: acpi: Rework honor_wakeup option into an ignore_wake option (David Arcari) [1829900] - [gpio] gpiolib: acpi: Correct comment for HP x2 10 honor_wakeup quirk (David Arcari) [1829900] - [gpio] gpiolib: Fix irq_disable() semantics (David Arcari) [1829900] - [gpio] gpiolib: fix gpio_do_set_config() (David Arcari) [1829900] - [gpio] gpiolib: remove unnecessary argument from set_config call (David Arcari) [1829900] - [gpio] Revert "gpiolib: remove set but not used variable 'config'" (David Arcari) [1829900] - [gpio] Revert "gpiolib: Remove duplicated function gpio_do_set_config()" (David Arcari) [1829900] - [gpio] treewide: remove redundant IS_ERR() before error code check (David Arcari) [1829900] - [gpio] gpiolib: hold gpio devices lock until ->descs array is initialised (David Arcari) [1829900] - [gpio] gpio: Drop the chained IRQ handler assign function (David Arcari) [1829900] - [gpio] gpio: xlp: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [pinctrl] pinctrl: qcom: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [pinctrl] pinctrl: iproc: allow for error from platform_get_irq() (David Arcari) [1829900] - [pinctrl] pinctrl: bcm-iproc: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [gpio] gpio: pl061: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [gpio] gpio: pl061: Move irq_chip definition inside struct pl061 (David Arcari) [1829900] - [gpio] gpiolib: Lower verbosity when allocating hierarchy irq (David Arcari) [1829900] - [gpio] gpiolib: Remove duplicated function gpio_do_set_config() (David Arcari) [1829900] - [include] gpio: Fix the no return statement warning (David Arcari) [1829900] - [gpio] gpiolib: remove set but not used variable 'config' (David Arcari) [1829900] - [gpio] gpiolib: Set lockdep class for hierarchical irq domains (David Arcari) [1829900] - [gpio] gpiolib: Add the support for the msi parent domain (David Arcari) [1829900] - [gpio] gpiolib: Add support for the irqdomain which doesn't use irq_fwspec as arg (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in gpio_ioctl() (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in lineevent_create() (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in linehandle_create() (David Arcari) [1829900] - [gpio] gpiolib: convert the type of hwnum to unsigned int in gpiochip_get_desc() (David Arcari) [1829900] - [gpio] gpiolib: have a single place of calling set_config() (David Arcari) [1829900] - [gpio] gpiolib: use 'unsigned int' instead of 'unsigned' in gpio_set_config() (David Arcari) [1829900] - [gpio] gpio: gpiolib: fix confusing indention (David Arcari) [1829900] - [mmc] mmc: core: Rework cd-gpio handling (David Arcari) [1829900] - [mmc] mmc: core: Rework wp-gpio handling (David Arcari) [1829900] - [gpio] gpio: add gpiod_toggle_active_low() (David Arcari) [1829900] - [gpio] gpiolib: Make use of assign_bit() API (David Arcari) [1829900] - [gpio] gpiolib: Add GPIOCHIP_NAME definition (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add honor_wakeup module-option + quirk mechanism (David Arcari) [1829900] - [gpio] gpiolib: acpi: Turn dmi_system_id table into a generic quirk table (David Arcari) [1829900] - [gpio] gpiolib: fix up emulated open drain outputs (David Arcari) [1829900] - [gpio] gpio: Fix error message on out-of-range GPIO in lookup table (David Arcari) [1829900] - [gpio] gpiolib: of: Make of_gpio_spi_cs_get_count static (David Arcari) [1829900] - [gpio] gpio: Handle counting of Freescale chipselects (David Arcari) [1829900] - [gpio] gpio: of: Fix bogus reference to gpiod_get_count() (David Arcari) [1829900] - [gpio] gpiolib: Grammar s/manager/managed/ (David Arcari) [1829900] - [gpio] gpiolib: acpi: Make acpi_gpiochip_alloc_event always return AE_OK (David Arcari) [1829900] - [gpio] gpiolib: acpi: Print pin number on acpi_gpiochip_alloc_event errors (David Arcari) [1829900] - [gpio] gpiolib: fix coding style in gpiod_hog() (David Arcari) [1829900] - [gpio] gpio: add new SET_CONFIG ioctl() to gpio chardev (David Arcari) [1829900] - [gpio] gpiolib: move validation of line handle flags into helper function (David Arcari) [1829900] - [gpio] gpiolib: add support for biasing output lines (David Arcari) [1829900] - [gpio] gpiolib: add support for disabling line bias (David Arcari) [1829900] - [gpio] gpiolib: add support for pull up/down to lineevent_create (David Arcari) [1829900] - [gpio] gpio: expose pull-up/pull-down line flags to userspace (David Arcari) [1829900] - [gpio] Revert "gpio: expose pull-up/pull-down line flags to userspace" (David Arcari) [1829900] - [gpio] gpiolib: No need to call gpiochip_remove_pin_ranges() twice (David Arcari) [1829900] - [include] gpio: Add definition for GPIO direction (David Arcari) [1829900] - [gpio] gpiolib: Switch order of valid mask and hw init (David Arcari) [1829900] - [gpio] gpio: of: don't warn if ignored GPIO flag matches the behavior (David Arcari) [1829900] - [gpio] gpio: fix kernel-doc for of_gpio_need_valid_mask() (David Arcari) [1829900] - [gpio] gpio: expose pull-up/pull-down line flags to userspace (David Arcari) [1829900] - [gpio] gpiolib: introduce fwnode_gpiod_get_index() (David Arcari) [1829900] - [gpio] gpiolib: introduce devm_fwnode_gpiod_get_index() (David Arcari) [1829900] - [gpio] gpiolib: sanitize flags before allocating memory in lineevent_create() (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add Terra Pad 1061 to the run_edge_events_on_boot_blacklist (David Arcari) [1829900] - [gpio] gpio: fix getting nonexclusive gpiods from DT (David Arcari) [1829900] - [gpio] gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source (David Arcari) [1829900] - [gpio] gpiolib: of: add a fallback for wlf, reset GPIO name (David Arcari) [1829900] - [gpio] gpio: remove explicit comparison with 0 (David Arcari) [1829900] - [gpio] gpio: devres: Switch to EXPORT_SYMBOL_GPL() (David Arcari) [1829900] - [gpio] gpio: of: Switch to EXPORT_SYMBOL_GPL() (David Arcari) [1829900] - [gpio] gpio: of: Make of_gpio_simple_xlate() private (David Arcari) [1829900] - [gpio] gpio: of: Make of_get_named_gpiod_flags() private (David Arcari) [1829900] - [gpio] gpiolib: acpi: make acpi_can_fallback_to_crs() static (David Arcari) [1829900] - [gpio] gpio: of: Normalize return code variable name (David Arcari) [1829900] - [gpio] gpio: gpiolib: Normalize return code variable name (David Arcari) [1829900] - [include] gpio: Move gpiochip_lock/unlock_as_irq to gpio/driver.h (David Arcari) [1829900] - [gpio] gpio: Use callback presence to determine need of valid_mask (David Arcari) [1829900] - [gpio] gpio: Pass mask and size with the init_valid_mask() (David Arcari) [1829900] - [pinctrl] pinctrl: msm: Add ability for drivers to supply a reserved GPIO list (David Arcari) [1829900] - [pinctrl] pinctrl: msm: Use init_valid_mask exported function (David Arcari) [1829900] - [include] gpio: stubs in headers should be inline (David Arcari) [1829900] - [gpio] gpio: Add support for hierarchical IRQ domains (David Arcari) [1829900] - [kernel] genirq: introduce irq_domain_translate_twocell (David Arcari) [1829900] - [gpio] gpio: refactor gpiochip_allocate_mask() with bitmap_alloc() (David Arcari) [1829900] - [gpio] gpio: of: Fix hard-assigned valid_mask for OF case (David Arcari) [1829900] - [sound] gpiolib-acpi: Move acpi_dev_add_driver_gpios() et al to consumer.h (David Arcari) [1829900] - [gpio] gpiolib: acpi: Split ACPI stuff to gpiolib-acpi.h (David Arcari) [1829900] - [include] gpiolib: of: Reshuffle contents of consumer.h for new library layout (David Arcari) [1829900] - [include] pinctrl: remove unneeded #ifdef around declarations (David Arcari) [1829900] - [hwmon] hwmon: pmbus: ucd9000: remove unneeded include (David Arcari) [1829900] - [include] gpio: remove less important #ifdef around declarations (David Arcari) [1829900] - [gpio] gpio: of: Break out OF-only code (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add gpiolib_acpi_run_edge_events_on_boot option and blacklist (David Arcari) [1829900] - [gpio] gpiolib: of: fix fallback quirks handling (David Arcari) [1829900] - [gpio] gpio: fix line flag validation in lineevent_create (David Arcari) [1829900] - [gpio] gpio: fix line flag validation in linehandle_create (David Arcari) [1829900] - [gpio] gpio: Fix irqchip initialization order (David Arcari) [1829900] - [gpio] gpio: of: fix Freescale SPI CS quirk handling (David Arcari) [1829900] - [gpio] gpiolib: never report open-drain/source lines as 'input' to user-space (David Arcari) [1829900] - [include] gpio: Fix build error of function redefinition (David Arcari) [1829900] - [gpio] gpiolib: Preserve desc->flags when setting state (David Arcari) [1829900] - [include] gpio: don't WARN() on NULL descs if gpiolib is disabled (David Arcari) [1829900] - [gpio] gpiolib: fix incorrect IRQ requesting of an active-low lineevent (David Arcari) [1829900] - [gpio] Revert "gpio/spi: Fix spi-gpio regression on active high CS" (David Arcari) [1829900] - [gpio] gpiolib: of: fix a memory leak in of_gpio_flags_quirks() (David Arcari) [1829900] - [gpio] gpiolib: Use spinlock_t instead of struct spinlock (David Arcari) [1829900] - [gpio] gpiolib: Clarify use of non-sleeping functions (David Arcari) [1829900] - [gpio] gpiolib: Fix references to gpiod_et_*value_cansleep() variants (David Arcari) [1829900] - [include] gpiolib: Document new gpio_chip.init_valid_mask field (David Arcari) [1829900] - [gpio] gpio/spi: Fix spi-gpio regression on active high CS (David Arcari) [1829900] - [gpio] gpio: No need to cast away return value of debugfs_create_file() (David Arcari) [1829900] - [include] gpio: Add comments on #if/#else/#endif (David Arcari) [1829900] - [regulator] gpio: Fix return value mismatch of function gpiod_get_from_of_node() (David Arcari) [1829900] - [gpio] gpio: Drop the parent_irq from gpio_irq_chip (David Arcari) [1829900] - [gpio] gpio: of: parse stmmac PHY reset line specific active-low property (David Arcari) [1829900] - [gpio] gpio: pass lookup and descriptor flags to request_own (David Arcari) [1829900] - [gpio] gpio: of: Handle the Freescale SPI CS (David Arcari) [1829900] - [gpio] gpio: Fix gpiochip_add_data_with_key() error path (David Arcari) [1829900] - [gpio] gpiolib: acpi: Respect pin bias setting (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add acpi_gpio_update_gpiod_lookup_flags() helper (David Arcari) [1829900] - [gpio] gpiolib: acpi: Set pin value, based on bias, more accurately (David Arcari) [1829900] - [gpio] gpiolib: acpi: Change type of dflags (David Arcari) [1829900] - [gpio] gpiolib: Introduce GPIO_LOOKUP_FLAGS_DEFAULT (David Arcari) [1829900] - [gpio] gpiolib: Make use of enum gpio_lookup_flags consistent (David Arcari) [1829900] - [include] gpiolib: Indent entry values of enum gpio_lookup_flags (David Arcari) [1829900] - [gpio] gpio: of: Optimize quirk checks (David Arcari) [1829900] - [gpio] gpio: mmio: Drop bgpio_dir_inverted (David Arcari) [1829900] - [gpio] gpio: Set proper argument value to set_config (David Arcari) [1829900] - [gpio] gpio: Remove obsolete comment about gpiochip_free_hogs() usage (David Arcari) [1829900] - [gpio] gpio: mmio: Fix bgpio_get_set & bgpio_get_set_multiple (David Arcari) [1829900] - [gpio] gpio: mmio: Support two direction registers (David Arcari) [1829900] - [gpio] gpiolib: Don't WARN on gpiod_put() for optional GPIO (David Arcari) [1829900] - [gpio] gpiolib: acpi: Fix references in kernel doc and amend (David Arcari) [1829900] - [gpio] gpio: of: Fix of_gpiochip_add() error path (David Arcari) [1829900] - [gpio] gpio: of: Check for "spi-cs-high" in child instead of parent node (David Arcari) [1829900] - [gpio] gpio: of: Check propname before applying "cs-gpios" quirks (David Arcari) [1829900] - [gpio] Revert "gpio: use new gpio_set_config() helper in more places" (David Arcari) [1829900] - [gpio] gpio: of: Handle both enable-gpio{,s} (David Arcari) [1829900] - [gpio] gpio: of: Restrict enable-gpio quirk to regulator-gpio (David Arcari) [1829900] - [gpio] gpio: of: Apply regulator-gpio quirk only to enable-gpios (David Arcari) [1829900] - [gpio] gpio: add core support for pull-up/pull-down configuration (David Arcari) [1829900] - [gpio] gpio: use new gpio_set_config() helper in more places (David Arcari) [1829900] - [gpio] gpio: rename gpio_set_drive_single_ended() to gpio_set_config() (David Arcari) [1829900] - [gpio] gpiolib: acpi: Correct kernel doc of struct acpi_gpio_event (David Arcari) [1829900] - [gpio] gpio: of: Fix logic inversion (David Arcari) [1829900] - [gpio] gpio: add irq domain activate/deactivate functions (David Arcari) [1829900] - [gpio] gpiolib: fix line event timestamps for nested irqs (David Arcari) [1829900] - [gpio] gpiolib-acpi: Preserve non direction flags when updating gpiod_flags (David Arcari) [1829900] - [gpio] gpiolib-acpi: Remove unnecessary WARN_ON from acpi_gpiochip_free_interrupts (David Arcari) [1829900] - [gpio] gpiolib-acpi: remove unused variable 'err', cleans up build warning (David Arcari) [1829900] - [mmc] mmc: core: don't override the CD GPIO level when "cd-inverted" is set (David Arcari) [1829900] - [arm64] arm64: dts: meson: Fix mmc cd-gpios polarity (David Arcari) [1829900] - [gpio] gpio/mmc/of: Respect polarity in the device tree (David Arcari) [1829900] - [include] gpiolib: Fix return value of gpio_to_desc() stub if !GPIOLIB (David Arcari) [1829900] - [documentation] Documentation: gpio: fix function links in the HTML docs (David Arcari) [1829900] - [documentation] docs: driver-model: convert docs to ReST and rename to *.rst (David Arcari) [1829900] - [documentation] docs: gpio: driver.rst: fix a bad tag (David Arcari) [1829900] - [documentation] gpio: Fix minor grammar errors in documentation (David Arcari) [1829900] - [documentation] gpio: Update documentation (David Arcari) [1829900] - [gpio] gpio: Pass a flag to gpiochip_request_own_desc() (David Arcari) [1829900] - [gpio] gpio: Add devm_gpiod_unhinge() (David Arcari) [1829900] - [gpio] gpio: devres: Handle nonexclusive GPIOs (David Arcari) [1829900] - [gpio] gpio: Enable nonexclusive gpiods from DT nodes (David Arcari) [1829900] - [gpio] gpiolib-acpi: Only defer request_irq for GpioInt ACPI event handlers (David Arcari) [1829900] - [gpio] gpio: OF: Parse MMC-specific CD and WP properties (David Arcari) [1829900] - [gpio] gpio: restore original GPLv2+ license of gpiolib-of.c sources (David Arcari) [1829900] - [include] gpio: drop broken to_gpio_irq_chip() helper (David Arcari) [1829900] - [gpio] gpio: drop devm_gpio_chip_match() (David Arcari) [1829900] - [gpio] gpio: don't free unallocated ida on gpiochip_add_data_with_key() error path (David Arcari) [1829900] - [gpio] gpiolib: Fix possible use after free on label (David Arcari) [1829900] - [documentation] Documentation: gpio: driver: fix wire name for I2C (David Arcari) [1829900] - [documentation] gpio/driver.rst: document gpiochip_disable/enable_irq() (David Arcari) [1829900] - [gpio] gpio: drop devm_gpiochip_remove() (David Arcari) [1829900] - [gpio] gpio: Clarify kerneldoc on gpiochip_set_chained_irqchip() (David Arcari) [1829900] - [gpio] gpio: Remove unused 'irqchip' argument to gpiochip_set_cascaded_irqchip() (David Arcari) [1829900] - [gpio] gpio: Drop parent irq assignment during cascade setup (David Arcari) [1829900] - [gpio] gpiolib: Initialize gdev field before is used (David Arcari) [1829900] - [gpio] gpio: Assign gpio_irq_chip::parents to non-stack pointer (David Arcari) [1829900] - [gpio] gpio: fix doc string for devm_gpiochip_add_data() to not talk about irq_chip (David Arcari) [1829900] - [gpio] gpio: mockup: fix indicated direction (David Arcari) [1829900] - [gpio] gpiolib: Show correct direction from the beginning (David Arcari) [1829900] - [gpio] gpiolib: Add init_valid_mask exported function (David Arcari) [1829900] - [gpio] gpio: Slightly more helpful debugfs (David Arcari) [1829900] - [gpio] Accept partial 'gpio-line-names' property (David Arcari) [1829900] - [gpio] gpio: Restore indentation of continued lines (David Arcari) [1829900] - [gpio] gpio: Propagate errors from gpiod_set_array_value_complex() (David Arcari) [1829900] - [gpio] gpiolib: Fix incorrect use of find_next_zero_bit() (David Arcari) [1829900] - [gpio] gpiolib: Fix missing updates of bitmap index (David Arcari) [1829900] - [gpio] gpio: Add comments on single direction chips (David Arcari) [1829900] - [gpio] gpiolib: Fix gpio_direction_* for single direction GPIOs (David Arcari) [1829900] - [gpio] gpio: Rename devres implementation file (David Arcari) [1829900] - [gpio] gpio: Use SPDX header for core library (David Arcari) [1829900] - [gpio] gpiolib: Fix array members of same chip processed separately (David Arcari) [1829900] - [gpio] gpiolib: Free the last requested descriptor (David Arcari) [1829900] - [gpio] gpio: Get rid of legacy header (David Arcari) [1829900] - [gpio] gpiolib: check if irqchip already has the irq hook replacements (David Arcari) [1829900] - [gpio] gpiolib: use better errno if get_direction is not available (David Arcari) [1829900] - [documentation] gpiolib: Implement fast processing path in get/set array (David Arcari) [1829900] - [documentation] Documentation: gpio: Fix reference to gpiod_get_array() (David Arcari) [1829900] - [gpio] gpiolib: Pass array info to get/set array functions (David Arcari) [1829900] - [gpio] gpiolib: Identify arrays matching GPIO hardware (David Arcari) [1829900] - [gpio] gpiolib: Pass bitmaps, not integer arrays, to get/set array (David Arcari) [1829900] - [gpio] gpiolib: Don't support irq sharing for userspace (David Arcari) [1829900] - [gpio] gpio: of: Handle SPI chipselect legacy bindings (David Arcari) [1829900] - [gpio] gpiolib: override irq_enable/disable (David Arcari) [1829900] - [gpio] gpiolib: add flag to indicate if the irq is disabled (David Arcari) [1829900] - [gpio] gliolib: set hooks in gpiochip_set_irq_hooks() (David Arcari) [1829900] - [gpio] gpiolib: export gpiochip_irq_reqres/relres() (David Arcari) [1829900] - [include] gpio: fix kernel-doc notation warning for 'request_key' (David Arcari) [1829900] - [gpio] gpio: Fix crash due to registration race (David Arcari) [1829900] - [gpio] gpio: Convert to using pOFn instead of device_node.name (David Arcari) [1829900] - [gpio] gpiolib-acpi: Register GpioInt ACPI event handlers from a late_initcall (David Arcari) [1829900] - [gpio] gpiolib: acpi: Switch to cansleep version of GPIO library call (David Arcari) [1829900] - [gpio] gpiolib: Avoid calling chip->request() for unused gpios (David Arcari) [1829900] - [gpio] gpio: mmio: Fix up inverted direction registers (David Arcari) [1829900] - [gpio] gpiolib: Fix of_node inconsistency (David Arcari) [1829900] - [gpio] gpiolib: Don't shadow error code of gpiochip_lock_as_irq() (David Arcari) [1829900] - [include] gpiolib: Use GPIOD_OUT_{LOW, HIGH} macros in open drain ones (David Arcari) [1829900] - [gpio] gpiolib: probe deferral error reporting (David Arcari) [1829900] - [include] Input: gpio_keys - add missing include to gpio_keys.h (David Arcari) [1829900] - [gpio] gpiolib: remove an unnecessary TODO (David Arcari) [1829900] - [gpio] gpiolib: don't allow userspace to set values of input lines (David Arcari) [1829900] - [gpio] gpiolib: Join one line back for better readability (David Arcari) [1829900] - [gpio] gpiolib: Consistent use of ->get_direction() inside gpiolib (David Arcari) [1829900] - [gpio] gpiolib: Defer on non-DT find_chip_by_name() failure (David Arcari) [1829900] - [gpio] gpiolib: Respect error code of ->get_direction() (David Arcari) [1829900] - [gpio] gpiolib: Join string literals back (David Arcari) [1829900] - [include] gpio.h: fix location of gpio legacy documentation (David Arcari) [1829900] - [fs] gfs2: Fix use-after-free in gfs2_logd after withdraw (Robert S Peterson) [1831695] - [fs] gfs2: Fix BUG during unmount after file system withdraw (Robert S Peterson) [1831695] - [fs] gfs2: Fix error exit in do_xmote (Robert S Peterson) [1831695] - [fs] gfs2: fix withdraw sequence deadlock (Robert S Peterson) [1831695] - [mm] s390/mm: fix page table upgrade vs 2ndary address mode accesses (Vladis Dronov) [1828154] {CVE-2020-11884} - [media] media: serial_ir: Fix use-after-free in serial_ir_init_module (Vladis Dronov) [1802396] {CVE-2019-19543} - [mm] mm/memory_hotplug: fix remove_memory() lockdep splat (Christoph von Recklinghausen) [1830942] - [mm] mm/page_alloc.c: initialize memmap of unavailable memory directly (Christoph von Recklinghausen) [1782827] - [fs] fs/proc/page.c: allow inspection of last section and fix end detection (Christoph von Recklinghausen) [1782827] - [mm] mm/page_alloc.c: fix uninitialized memmaps on a partially populated last section (Christoph von Recklinghausen) [1782827] - [powerpc] kvm: ppc: book3s hv: Handle non-present PTEs in page fault functions (David Gibson) [1820402] - [vfio] vfio-pci/nvlink2: Allow fallback to ibm, mmio-atsd[0] (David Gibson) [1819169] - [s390] s390/cpuinfo: fix wrong output when CPU0 is offline (Philipp Rudo) [1812982] - [s390] s390/topology: remove offline CPUs from CPU topology masks (Philipp Rudo) [1812982] - [hwtracing] intel_th: pci: Add Comet Lake PCH-V support (Tony Camuso) [1822983] - [kernel] kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic (Waiman Long) [1833383] - [kernel] kprobes: Set unoptimized flag after unoptimizing code (Waiman Long) [1833383] - [kernel] kprobes: Prohibit probing on BUG() and WARN() address (Waiman Long) [1833383] - [kernel] kprobes: Fix potential deadlock in kprobe_optimizer() (Waiman Long) [1833383] - [fs] gfs2: More gfs2_find_jhead fixes (Abhijith Das) [1828653] - [kernel] audit: fix a net reference leak in audit_list_rules_send() (Richard Guy Briggs) [1827327] - [kernel] audit: fix a net reference leak in audit_send_reply() (Richard Guy Briggs) [1827327] - [kernel] audit: check the length of userspace generated audit records (Richard Guy Briggs) [1827303] - [s390] s390/pci: do not set affinity for floating irqs (Philipp Rudo) [1834319] - [netdrv] mlx5: Remove the unsupported mark from ConnectX-6 Dx device (Alaa Hleihel) [1789382 1782831] - [netdrv] mlx5: Update list of unsupported devices (Alaa Hleihel) [1823685 1789382] - [infiniband] RDMA/mlx5: Verify that QP is created with RQ or SQ (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix udata response upon SRQ creation (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Set of completion request bit should not clear other adjacent bits (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: en_accel, Add missing net/geneve.h include (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix q counters on uplink representors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix command entry leak in Internal Error State (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix forced completion access non initialized command entry (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, On creation set CQ's arm_db member to right value (Alaa Hleihel) [1789384 1789382] - [infiniband] RDMA/mlx5: Set GRH fields in query QP on RoCE (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Get the latest values from counters in switchdev mode (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup to avoid WQ overruns (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix failing fw tracer allocation on s390 (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix pfnum in devlink port attribute (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix nest_level for vlan pop action (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add missing release firmware call (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix frequent ioread PCI access during recovery (Alaa Hleihel) [1789382] - [netdrv] flow_offload: check for basic action hw stats type (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Remove unused argument from parse_tc_pedit_action() (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Use netdev_warn() instead of pr_err() for errors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Remove unneeded functions deceleration (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Improve log messages (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Change matcher priority parameter type (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: Eswitch, avoid redundant mask (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Don't allow forwarding between uplink (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Fix missing congestion control debugfs on rep rdma device (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Optimize u64 division on 32-bit arches (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Prevent UMR usage with RO only when we have RO caps (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix group version management (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: E-Switch, Hold mutex when querying drop counter in legacy mode (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Tidy up and fix reverse christmas ordring (Alaa Hleihel) [1831133 1789382] - [netdrv] net/mlx5: Expose port speed when possible (Alaa Hleihel) [1831133 1789382] - [include] net/mlx5: Expose link speed directly (Alaa Hleihel) [1831133 1789382] - [netdrv] net/mlx5e: Use netdev_warn() for errors for added prefix (Alaa Hleihel) [1789382] - [include] net/mlx5: fix spelling mistake "reserverd" -> "reserved" (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: sparse: warning: Using plain integer as NULL pointer (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: sparse: warning: incorrect type in assignment (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: RX, Use indirect calls wrapper for handling compressed completions (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: RX, Use indirect calls wrapper for posting descriptors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Change inline mode correctly when changing trust state (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add context to the preactivate hook (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Allow mlx5e_switch_priv_channels to fail and recover (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Remove unneeded netif_set_real_num_tx_queues (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix configuration of XPS cpumasks and netdev queues in corner cases (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Use preactivate hook to set the indirection table (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Rename hw_modify to preactivate (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Encapsulate updating netdev queues into a function (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add missing LRO cap check (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Define one flow for TXQ selection when TCs are configured (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Block delay drop to unprivileged users (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix access to wrong pointer while performing flush due to error (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Do not recover from a non-fatal syndrome (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix ICOSQ recovery flow with Striding RQ (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Enhance ICOSQ WQE info fields (Alaa Hleihel) [1789382] - [netdrv] net/mlx5_core: Set IB capability mask1 to fix ib_srpt connection failure (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix the number of hwcounters of a dynamic counter (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Clear LAG notifier pointer after unregister (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix endianness handling in pedit mask (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: kTLS, Fix wrong value in record tracker enum (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: kTLS, Fix TCP seq off-by-1 issue in TX resync flow (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Fix postsend actions write length (Alaa Hleihel) [1789384 1789382] - [infiniband] IB/mlx5: Fix implicit ODP race (Alaa Hleihel) [1789382] - [netdrv] mlx5: register lag notifier for init network namespace only (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix crash in recovery flow without devlink reporter (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Reset RQ doorbell counter before moving RQ state from RST to RDY (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Use div64_u64 for num_var_hw_entries calculation (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Prevent overflow in mmap offset calculations (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix async events cleanup flows (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Deprecate usage of generic TLS HW capability bit (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: TX, Error completion is for last WQE in batch (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: IPsec, Fix esp modify function attribute (Alaa Hleihel) [1789382] - [infiniband] RDMA/core: Make the entire API tree static (Alaa Hleihel) [1789382] - [netdrv] mlx5: Use dev_net netdevice notifier registrations (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Return the administrative GUID if exists (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Allow connecting flow table to a lower/same level table (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Modify header copy support (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Modify set action limitation extension (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5e: Add mlx5e_flower_parse_meta support (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix printk format warning (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Allow creating autogroups with reserved entries (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add ignore level support fwd to table rules (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: fs_core: Introduce unmanaged flow tables (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Refactor mlx5_create_auto_grouped_flow_table (Alaa Hleihel) [1789383 1789382] - [include] net/mlx5e: Expose FEC feilds and related capability bit (Alaa Hleihel) [1789382] - [include] net/mlx5: Add mlx5_ifc definitions for connection tracking support (Alaa Hleihel) [1789382] - [include] net/mlx5: Add copy header action struct layout (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Expose resource dump register mapping (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add structures and defines for MIRC register (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Read MCAM register groups 1 and 2 (Alaa Hleihel) [1789382] - [include] net/mlx5: Add structures layout for new MCAM access reg groups (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Expose RoCE accelerator counters (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Set relaxed ordering when requested (Alaa Hleihel) [1789382] - [include] net/mlx5: Expose relaxed ordering bits (Alaa Hleihel) [1789382] - [include] net/mlx5: Add RoCE accelerator counters (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix handling of IOVA != user_va in ODP paths (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Mask out unsupported ODP capabilities for kernel QPs (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Don't fake udata for kernel path (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Add ODP WQE handlers for kernel QPs (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Simplify devx async commands (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Add mmap support for VAR (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Introduce VAR object and its alloc/destroy methods (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Extend caps stage to handle VAR capabilities (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Expose vDPA emulation device capabilities (Alaa Hleihel) [1789382] - [include] net/mlx5: Add Virtio Emulation related device capabilities (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Use async EQ setup cleanup helpers for multiple EQs (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Reduce No CQ found log level from warn to debug (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Increase the max number of channels to 128 (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Support accept action on nic table (Alaa Hleihel) [1789382] - [netdrv] mlx5: work around high stack usage with gcc (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: limit the function in local scope (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: use true, false for bool variable (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Unify ODP MR code paths to allow extra flexibility (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Fix outstanding_pi index for GSI qps (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add devlink reload (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Set netdev name space on creation (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Load profile according to RoCE enablement state (Alaa Hleihel) [1790200 1789382] - [netdrv] net/mlx5: Handle "enable_roce" devlink param (Alaa Hleihel) [1790200 1789382] - [fs] gfs2: Another gfs2_walk_metadata fix (Andreas Grunbacher) [1826419] - [nvme] nvmet-tcp: optimize tcp stack TX when data digest is used (Chris Leech) [1829540] - [nvme] nvmet-tcp: fix maxh2cdata icresp parameter (Chris Leech) [1829540] - [nvme] nvmet-tcp: set SO_PRIORITY for accepted sockets (Chris Leech) [1829540] - [nvme] nvmet-tcp: set MSG_MORE only if we actually have more to send (Chris Leech) [1829540] - [nvme] nvme-tcp: fix possible crash in recv error flow (Chris Leech) [1829540] - [nvme] nvme-tcp: don't poll a non-live queue (Chris Leech) [1829540] - [nvme] nvme-tcp: fix possible crash in write_zeroes processing (Chris Leech) [1829540] - [nvme] nvme-tcp: Add warning on state change failure at nvme_tcp_setup_ctrl (Chris Leech) [1829540] - [nvme] nvme: Make nvme_uninit_ctrl symmetric to nvme_init_ctrl (Chris Leech) [1829540] - [nvme] nvme: Fix ctrl use-after-free during sysfs deletion (Chris Leech) [1829540] - [nvme] nvme-tcp: break from io_work loop if recv failed (Chris Leech) [1829540] - [nvme] nvme-tcp: move send failure to nvme_tcp_try_send (Chris Leech) [1829540] - [nvme] nvme-tcp: optimize queue io_cpu assignment for multiple queue maps (Chris Leech) [1829540] - [nvme] nvme-tcp: Set SO_PRIORITY for all host sockets (Chris Leech) [1829540] - [nvme] nvme/tcp: fix bug on double requeue when send fails (Chris Leech) [1829540] - [nvme] Revert "nvme: Restart request timers in resetting state" (Chris Leech) [1829540] - [acpi] ACPI: processor: Export acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Make ACPI_PROCESSOR_CSTATE depend on ACPI_PROCESSOR (Steve Best) [1826415] - [acpi] ACPI: processor: Clean up acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Introduce acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Export function to claim _CST control (Steve Best) [1826415] - [s390] s390/ftrace: fix potential crashes when switching tracers (Philipp Rudo) [1831796] - [net] net/smc: cancel event worker during device removal (Philipp Rudo) [1780665] - [net] net/smc: check for valid ib_client_data (Philipp Rudo) [1780665] - [net] net/smc: fix cleanup for linkgroup setup failures (Philipp Rudo) [1780665] - [net] net/smc: no peer ID in CLC decline for SMCD (Philipp Rudo) [1780665] - [net] net/smc: transfer fasync_list in case of fallback (Philipp Rudo) [1780665] - [net] net/smc: fix leak of kernel memory to user space (Philipp Rudo) [1780665] - [net] net/smc: allow unprivileged users to read pnet table (Philipp Rudo) [1780665] - [net] net/smc: unregister ib devices in reboot_event (Philipp Rudo) [1780665] - [net] net/smc: add fallback check to connect() (Philipp Rudo) [1780665] - [net] net/smc: shorten lgr_cnt initialization (Philipp Rudo) [1780665] - [net] net/smc: fix fastopen for non-blocking connect() (Philipp Rudo) [1780665] - [net] net/smc: remove unused constant (Philipp Rudo) [1780665] - [net] net/smc: use rcu_barrier() on module unload (Philipp Rudo) [1780665] - [net] net/smc: guarantee removal of link groups in reboot (Philipp Rudo) [1780665] - [net] net/smc: introduce bookkeeping of SMCR link groups (Philipp Rudo) [1780665] - [net] net/smc: immediate termination for SMCR link groups (Philipp Rudo) [1780665] - [net] net/smc: wait for tx completions before link freeing (Philipp Rudo) [1780665] - [net] net/smc: abnormal termination without orderly flag (Philipp Rudo) [1780665] - [net] net/smc: no WR buffer wait for terminating link group (Philipp Rudo) [1780665] - [net] net/smc: introduce bookkeeping of SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: abnormal termination of SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: immediate termination for SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: fix final cleanup sequence for SMCD devices (Philipp Rudo) [1780665] - [net] net/smc: fix refcount non-blocking connect() -part 2 (Philipp Rudo) [1780665] - [net] net/smc: fix ethernet interface refcounting (Philipp Rudo) [1780665] - [net] net/smc: fix refcounting for non-blocking connect() (Philipp Rudo) [1780665] - [net] net/smc: fix closing of fallback SMC sockets (Philipp Rudo) [1780665] - [net] net/smc: remove close abort worker (Philipp Rudo) [1780665] - [net] net/smc: introduce link group termination worker (Philipp Rudo) [1780665] - [net] net/smc: improve abnormal termination of link groups (Philipp Rudo) [1780665] - [net] net/smc: tell peers about abnormal link group termination (Philipp Rudo) [1780665] - [net] net/smc: improve link group freeing (Philipp Rudo) [1780665] - [net] net/smc: improve abnormal termination locking (Philipp Rudo) [1780665] - [net] net/smc: terminate link group without holding lgr lock (Philipp Rudo) [1780665] - [net] net/smc: cancel send and receive for terminated socket (Philipp Rudo) [1780665] - [net] net/smc: receive pending data after RCV_SHUTDOWN (Philipp Rudo) [1780665] - [net] net/smc: receive returns without data (Philipp Rudo) [1780665] - [net] net/smc: fix SMCD link group creation with VLAN id (Philipp Rudo) [1780665] - [net] net/smc: improve close of terminated socket (Philipp Rudo) [1780665] - [net] net/smc: no new connections on disappearing devices (Philipp Rudo) [1780665] - [net] net/smc: increase device refcount for added link group (Philipp Rudo) [1780665] - [net] net/smc: separate locks for SMCD and SMCR link group lists (Philipp Rudo) [1780665] - [net] net/smc: separate SMCD and SMCR link group lists (Philipp Rudo) [1780665] - [net] net/smc: original socket family in inet_sock_diag (Philipp Rudo) [1780665] - [infiniband] RDMA/bnxt_re: Use rdma_read_gid_hw_context to retrieve HW gid index (Kamal Heib) [1828601] - [infiniband] RDMA/core: Add helper function to retrieve driver gid context from gid attr (Kamal Heib) [1828601] - [media] media: videobuf2-v4l2: drop WARN_ON in vb2_warn_zero_bytesused() (Vladis Dronov) [1825616] {CVE-2019-9455} - [net] SUNRPC: Fix initialisation of struct rpc_xprt_switch (Steve Dickson) [1683394] - [net] SUNRPC: add links for all client xprts to debugfs (Steve Dickson) [1683394] - [net] SUNRPC: enhance rpc_clnt_show_stats() to report on all xprts (Steve Dickson) [1683394] - [net] SUNRPC: Fix transport accounting when caller specifies an rpc_xprt (Steve Dickson) [1683394] - [fs] NFS: send state management on a single connection (Steve Dickson) [1683394] - [net] SUNRPC: Add basic load balancing to the transport switch (Steve Dickson) [1683394] - [net] SUNRPC: Fix up task signalling (Steve Dickson) [1683394] - [fs] NFS: Allow multiple connections to a NFSv2 or NFSv3 server (Steve Dickson) [1683394] - [fs] NFS: Display the "nconnect" mount option if it is set (Steve Dickson) [1683394] - [fs] pNFS: Allow multiple connections to the DS (Steve Dickson) [1683394] - [fs] NFSv4: Allow multiple connections to NFSv4.x (x>0) servers (Steve Dickson) [1683394] - [fs] NFS: Add a mount option to specify number of TCP connections to use (Steve Dickson) [1683394] - [net] SUNRPC: Allow creation of RPC clients with multiple connections (Steve Dickson) [1683394] - [net] netlabel: cope with NULL catmap (Paolo Abeni) [1827251] {CVE-2020-10711} - [scsi] scsi: qla2xxx: fix a potential NULL pointer dereference ("Ewan D. Milne") [1829250] {CVE-2019-16233} - [input] Input: ff-memless - kill timer in destroy() (Chris von Recklinghausen) [1815024] {CVE-2019-19524}- [netdrv] net/mlx5e: kTLS, Do not send decrypted-marked SKBs via non-accel path (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: kTLS, Remove redundant posts in TX resync flow (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: kTLS, Fix corner-case checks in TX resync flow (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Prevent ingress rate configuration of uplink rep (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Fix lowest FDB pool size (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Fix hairpin RSS table size (Alaa Hleihel) [1789380] - [netdrv] Revert "net/mlx5: Support lockless FTE read lookups" (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move devlink registration before interfaces load (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Always print health reporter message to dmesg (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Avoid duplicating rule destinations (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Fix device memory flows (Alaa Hleihel) [1789380] - [netdrv] treewide: Use sizeof_field() macro (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: E-switch, Fix Ingress ACL groups in switchdev mode for prio tag (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Fix build error without IPV6 (Alaa Hleihel) [1789380] - [netdrv] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Remove redundant pointer check (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: TC, Stub out ipv6 tun create header function (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Add support for Geneve packets SW steering (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Add HW bits and definitions for Geneve flex parser (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Refactor VXLAN GPE flex parser tunnel code for SW steering (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Don't write read-only fields in MODIFY_HCA_VPORT_CONTEXT command (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Implement callbacks for getting VFs GUID attributes (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Rx, Update page pool numa node when changed (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Support extended number of strides for Striding RQ (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Remove redundant NULL initializations (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Add new chain for netfilter flow table offload (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Refactor creating fast path prio chains (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Accumulate levels for chains prio namespaces (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Define fdb tc levels per prio (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Rename FDB_* tc related defines to FDB_TC_* defines (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Simplify fdb chain and prio eswitch defines (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Support flow counters offset for bulk counters (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Dump of fw_fatal use updated devlink binary interface (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Rename profile and init methods (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: fix spelling mistake "metdata" -> "metadata" (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: fix kvfree of uninitialized pointer spec (Alaa Hleihel) [1789380] - [infiniband] IB: mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: LAG, Use port enumerators (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: rate limit alloc_ent error messages (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Add ToS (DSCP) header rewrite support (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Bit sized fields rewrite support (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: WQ, Move short getters into header file (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: TX, Dump WQs wqe descriptors on CQE with error events (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Support lockless FTE read lookups (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Do not hold group lock while allocating FTE in software (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Verify that rule has at least one fwd/drop action (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Remove unneeded variable in mlx5_unload_one (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: FPGA, support network cards with standalone FPGA (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Introduce and use mlx5_core_is_vf() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Refactor ingress acl configuration (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Restrict metadata disablement to offloads mode (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Offloads shift ACL programming during enable/disable vport (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Offloads introduce and use per vport acl tables APIs (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move ACL drop counters life cycle close to ACL lifecycle (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Legacy introduce and use per vport acl tables APIs (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Prepare code to handle vport enable error (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Tide up state_lock and vport enabled flag usage (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move legacy drop counter and rule under legacy structure (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move metdata fields under offloads structure (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Introduce and use mlx5_esw_is_manager_vport() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Introduce and use vlan rule config helper (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Rename ingress acl config in offloads mode (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Rename egress config to generic name (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Test write combining support (Alaa Hleihel) [1789380] - [netdrv] net: Fix misspellings of "configure" and "configuration" (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Do not race with mlx5_ib_invalidate_range during create and destroy (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Do not store implicit children in the odp_mkeys xarray (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Rework implicit ODP destroy (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Avoid double lookups on the pagefault path (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Reduce locking in implicit_mr_get_data() (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use an xarray for the children of an implicit ODP (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Split implicit handling from pagefault_mr (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Set the HW IOVA of the child MRs to their place in the tree (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Lift implicit_mr_alloc() into the two routines that call it (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Rework implicit_mr_get_data (Alaa Hleihel) [1789380] - [netdrv] RDMA/mlx5: Delete struct mlx5_priv->mkey_table (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use a dedicated mkey xarray for ODP (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Split sig_err MR data into its own xarray (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use SRCU properly in ODP prefetch (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Align usage of QP1 create flags with rest of mlx5 defines (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Add capability for max sge to get optimized performance (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Introduce and use mkey context setting helper routine (Alaa Hleihel) [1789380] - [include] net/mlx5: Expose optimal performance scatter entries capability (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Remove unnecessary else statement (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Remove unnecessary return statement (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Group boolean parameters to take less space (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Add missing capability bit check for IP-in-IP (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Fix ingress rate configuration for representors (Alaa Hleihel) [1789378] - [netdrv] mlx5: reject unsupported external timestamp flags (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Replace kfree with kvfree when free vhca stats (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Remove incorrect match criteria assignment line (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Enhance TX resync flow (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save a copy of the crypto info (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Remove unneeded cipher type checks (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Limit DUMP wqe size (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Fix missing SQ edge fill (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Fix page refcnt leak in TX resync error flow (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save by-value copy of the record frags (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save only the frag page to release at completion (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Size of a Dump WQE is fixed (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Release reference on DUMPed fragments in shutdown flow (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Put live in the correct place for ODP MRs (Alaa Hleihel) [1789378] - [infiniband] RDMA/odp: Lift umem_mutex out of ib_umem_odp_unmap_dma_pages() (Alaa Hleihel) [1789378] - [netdrv] drivers: net: Fix Kconfig indentation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: DR, Remove redundant dev_name print from err log (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: DR, Remove useless set memory to zero use memset() (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Remove unused function parameter (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Use PTR_ERR_OR_ZERO rather than its implementation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Use ipv6_stub to avoid dependency with ipv6 being a module (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Kconfig: Fix MLX5_CORE dependency with PCI_HYPERV_INTERFACE (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Fix static checker warning of potential pointer math issue (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Remove unlikely() from WARN*() condition (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Support TSO and TX checksum offloads for IP-in-IP tunnels (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Improve stateless offload capability check (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Support RSS for IP-in-IP and IPv6 tunneled packets (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Change function's position to a more fitting file (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add page fault handler for DC initiator WQE (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Remove check of FW capabilities in ODP page fault handling (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Set ODP capabilities for DC transport to max (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: RDMA_RX flow type support for user applications (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Fix return code in case of hyperv wrong size read (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add mlx5e HV VHCA stats agent (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add HV VHCA control agent (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add HV VHCA infrastructure (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add wrappers for HyperV PCIe operations (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add trace point for neigh update (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add trace point for neigh used value update (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add tc flower tracepoints (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Use odp instead of mr->umem in pagefault_mr (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Use ib_umem_start instead of umem.address (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Create bypass and loopback flow steering namespaces for RDMA RX (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add per-namespace flow table default miss action support (Alaa Hleihel) [1789378] - [include] net/mlx5: Expose IP-in-IP capability bit (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Improve functions documentation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Report and recover from CQE with error on RQ (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: RX, Handle CQE with error at the earliest stage (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Report and recover from rx timeout (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Report and recover from CQE error on ICOSQ (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Split open/close ICOSQ into stages (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add support to rx reporter diagnose (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add helper functions for reporter's basics (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add cq info to tx reporter diagnose (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Extend tx reporter diagnostics output (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Extend tx diagnose function (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Generalize tx reporter's functionality (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Change naming convention for reporter's functions (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Rename reporter header file (Alaa Hleihel) [1790198 1789378] - [infiniband] RDMA/mlx5: Annotate lock dependency in bind/unbind slave port (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Expose XRQ legacy commands over the DEVX interface (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add legacy events to DEVX list (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add XRQ legacy commands opcodes (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Use debug message instead of warn (Alaa Hleihel) [1789378] - [netdrv] mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1789378] - [infiniband] mlx5: Use refcount_t for refcount (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Allow dropping specific tunnel packets (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: TX reporter cleanup (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Set tx reporter only on successful creation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Rx, checksum handling refactoring (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Tx, Soften inline mode VLAN dependencies (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: XDP, Slight enhancement for WQE fetch function (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: XDP, Close TX MPWQE session when no room for inline packet left (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Tx, Strict the room needed for SQ edge NOPs (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: E-Switch, add ingress rate support (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Remove DEBUG ODP code (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add CREATE_PSV/DESTROY_PSV for devx interface (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Avoid unnecessary typecast (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: xsk: dynamically allocate mlx5e_channel_param (Alaa Hleihel) [1789378] - [netdrv] net: Use skb accessors in network drivers (Alaa Hleihel) [1789378] - [char] tpm: Export tpm2_get_cc_attrs_tbl for ibmvtpm driver as module (David Gibson) [1781915] - [char] tpm: ibmvtpm: Add support for TPM2 (David Gibson) [1781915] - [char] tpm: of: Handle IBM, vtpm20 case when getting log parameters (David Gibson) [1781915] - [wireless] iwlwifi: mvm: Do not require PHY_SKU NVM section for 3168 devices (Jarod Wilson) [1807052] - [wireless] mwifiex: set needed_headroom, not hard_header_len (Jarod Wilson) [1807052] - [wireless] ath9k: Handle txpower changes even when TPC is disabled (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: fix coverage_class type (Jarod Wilson) [1807052] - [wireless] rtw88: Use kfree_skb() instead of kfree() (Jarod Wilson) [1807052] - [wireless] brcmfmac: abort and release host after error (Jarod Wilson) [1807052] - [wireless] ath11k: Silence clang -Wsometimes-uninitialized in ath11k_update_per_peer_stats_from_txcompl (Jarod Wilson) [1807052] - [wireless] ath10k: Call cpu_latency_qos_*() instead of pm_qos_*() (Jarod Wilson) [1807052] - [net] mac80211: fix authentication with iwlwifi/mvm (Jarod Wilson) [1807052] - [net] mac80211: set IEEE80211_TX_CTRL_PORT_CTRL_PROTO for nl80211 TX (Jarod Wilson) [1807052] - [net] mac80211: mark station unauthorized before key removal (Jarod Wilson) [1807052] - [net] mac80211: Check port authorization in the ieee80211_tx_dequeue() case (Jarod Wilson) [1807052] - [net] cfg80211: Do not warn on same channel at the end of CSA (Jarod Wilson) [1807052] - [net] mac80211: drop data frames without key on encrypted links (Jarod Wilson) [1807052] - [net] nl80211: fix NL80211_ATTR_CHANNEL_WIDTH attribute type (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't send GEO_TX_POWER_LIMIT if no wgds table (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: add 0x2526/0x401* devices back to cfg detection (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Fix regression due to commit d1d1a96bdb44 (Jarod Wilson) [1807052] - [wireless] iwlwifi: cfg: use antenna diversity with all AX101 devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Fix rate scale NSS configuration (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: don't abort if sending DBGC_SUSPEND_RESUME fails (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: don't add TLV offset when reading FIFOs (Jarod Wilson) [1807052] - [wireless] iwlwifi: check allocated pointer when allocating conf_tlvs (Jarod Wilson) [1807052] - [wireless] iwlwifi: consider HE capability when setting LDPC (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: take the required lock when clearing time event data (Jarod Wilson) [1807052] - [net] mac80211: Do not send mesh HWMP PREQ if HWMP is disabled (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for channel switch (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for beacon report scanning (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for critical protocol indication (Jarod Wilson) [1807052] - [wireless] mt76: fix array overflow on receiving too many fragments for a packet (Jarod Wilson) [1807052] - [net] mac80211: rx: avoid RCU list traversal under mutex (Jarod Wilson) [1807052] - [net] nl80211: explicitly include if_vlan.h (Jarod Wilson) [1807052] - [net] mac80211: Remove a redundant mutex unlock (Jarod Wilson) [1807052] - [net] cfg80211: check reg_rule for NULL in handle_channel_custom() (Jarod Wilson) [1807052] - [net] nl80211: fix potential leak in AP start (Jarod Wilson) [1807052] - [net] mac80211: fix wrong 160/80+80 MHz setting (Jarod Wilson) [1807052] - [net] cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix max_nss in mt7615_eeprom_parse_hw_cap (Jarod Wilson) [1807052] - [net] cfg80211: check wiphy driver existence for drvinfo report (Jarod Wilson) [1807052] - [net] mac80211: consider more elements in parsing CRC (Jarod Wilson) [1807052] - [net] mac80211: fix quiet mode activation in action frames (Jarod Wilson) [1807052] - [net] mac80211: use more bits for ack_frame_id (Jarod Wilson) [1807052] - [wireless] rtw88: Fix return value of rtw_wow_check_fw_status (Jarod Wilson) [1807052] - [wireless] iwlwifi: d3: read all FW CPUs error info (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix TDLS discovery with the new firmware API (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Check the sta is not NULL in iwl_mvm_cfg_he_sta() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: avoid use after free for pmsr request (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: update the DTS measurement type (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't throw error when trying to remove IGTK (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Fix thermal zone registration (Jarod Wilson) [1807052] - [wireless] iwlwifi: use helpers (Jarod Wilson) [1807052] - [wireless] mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv() (Jarod Wilson) [1807052] - [wireless] mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status() (Jarod Wilson) [1807052] - [wireless] mwifiex: fix unbalanced locking in mwifiex_process_country_ie() (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: fix spelling mistake "initilized" -> "initialized" (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: remove redundant assignment to variable cond (Jarod Wilson) [1807052] - [wireless] brcmfmac: Remove always false 'idx < 0' statement (Jarod Wilson) [1807052] - [wireless] rtw88: use shorter delay time to poll PS state (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential NULL skb access in TX ISR (Jarod Wilson) [1807052] - [wireless] brcmfmac: add initial support for monitor mode (Jarod Wilson) [1807052] - [wireless] brcmfmac: simplify building interface combinations (Jarod Wilson) [1807052] - [wireless] brcmfmac: sdio: Fix OOB interrupt initialization on brcm43362 (Jarod Wilson) [1807052] - [wireless] brcmfmac: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] rtw88: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Remove sw.h header (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: Remove sw.h header (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: Fix typo (Jarod Wilson) [1807052] - [wireless] rtw88: change max_num_of_tx_queue() definition to inline in pci.h (Jarod Wilson) [1807052] - [wireless] rtw88: assign NULL to skb after being kfree()'ed (Jarod Wilson) [1807052] - [wireless] rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop() (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused vif pointer in struct rtw_vif (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused variable 'in_lps' (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused spinlock (Jarod Wilson) [1807052] - [wireless] rtw88: 8822c: update power sequence to v15 (Jarod Wilson) [1807052] - [wireless] rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M (Jarod Wilson) [1807052] - [wireless] rtw88: fix rate mask for 1SS chip (Jarod Wilson) [1807052] - [wireless] rtw88: Add wowlan net-detect support (Jarod Wilson) [1807052] - [wireless] rtw88: Add wowlan pattern match support (Jarod Wilson) [1807052] - [wireless] rtw88: support wowlan feature for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: load wowlan firmware if wowlan is supported (Jarod Wilson) [1807052] - [wireless] rtw88: add interface config for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset dma when reset pci trx ring (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset ring index when release skbs in tx ring (Jarod Wilson) [1807052] - [wireless] ath10k: Use device_get_match_data() to simplify code (Jarod Wilson) [1807052] - [wireless] ath10k: Add newlines to printk messages (Jarod Wilson) [1807052] - [wireless] ath10k: Correct the DMA direction for management tx buffers (Jarod Wilson) [1807052] - [wireless] mwifiex: drop most magic numbers from mwifiex_process_tdls_action_frame() (Jarod Wilson) [1807052] - [wireless] ath11k: fix up some error paths (Jarod Wilson) [1807052] - [wireless] ath11k: make sure to also report the RX bandwidth inside radiotap (Jarod Wilson) [1807052] - [wireless] ath11k: avoid null pointer dereference when pointer band is null (Jarod Wilson) [1807052] - [wireless] ath11k: Add missing pdev rx rate stats (Jarod Wilson) [1807052] - [wireless] ath11k: ensure ts.flags is initialized before bit-wise or'ing in values (Jarod Wilson) [1807052] - [wireless] ath11k: set TxBf parameters after vdev start (Jarod Wilson) [1807052] - [wireless] ath11k: enable HE tlvs in ppdu stats for pktlog lite (Jarod Wilson) [1807052] - [wireless] ath11k: fix debugfs build failure (Jarod Wilson) [1807052] - [wireless] ath10k: Don't call SCM interface for statically mapped msa region (Jarod Wilson) [1807052] - [wireless] Revert "ath10k: fix DMA related firmware crashes on multiple devices" (Jarod Wilson) [1807052] - [wireless] ath10k: drop RX skb with invalid length for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] ath10k: Add optional qdss clk (Jarod Wilson) [1807052] - [wireless] ath10k: pci: Fix comment on ath10k_pci_dump_memory_sram (Jarod Wilson) [1807052] - [wireless] ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe (Jarod Wilson) [1807052] - [wireless] ath9k: use true,false for bool variable (Jarod Wilson) [1807052] - [net] net: mac80211: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1807052] - [wireless] net: iwlwifi: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1807052] - [wireless] iwlwifi: add device name to device_info (Jarod Wilson) [1807052] - [wireless] iwlwifi: implement a new device configuration table (Jarod Wilson) [1807052] - [wireless] iwlwifi: assume the driver_data is a trans_cfg, but allow full cfg (Jarod Wilson) [1807052] - [wireless] iwlwifi: prph: remove some unused register definitions (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: print out extended secboot status before dump (Jarod Wilson) [1807052] - [wireless] iwlwifi: incorporate firmware filename into version (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: check for the domain on all TLV types during init (Jarod Wilson) [1807052] - [wireless] iwlwifi: add new iwlax411 struct for type SoSnj (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: remove the iwl_dbg_tlv_gen_active_trigs() function (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: remove unnecessary active triggers status flag (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: don't allow changing the domain via debugfs (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Update BEACON_TEMPLATE_CMD firmware API (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove CSR registers abstraction (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove some outdated iwl22000 configurations (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: validate queue ID before array deref/bit ops (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: use partial pages if applicable (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: map only used part of RX buffers (Jarod Wilson) [1807052] - [wireless] iwlwifi: allocate more receive buffers for HE devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for responder config command version 7 (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for location range request version 8 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: remove support for fw scan api v11 (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: don't skip a TX FIFO when dumping (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: update powersave correctly for D3 (Jarod Wilson) [1807052] - [wireless] ath11k: Use sizeof_field() instead of FIELD_SIZEOF() (Jarod Wilson) [1807052] - [wireless] ath11k: explicitly cast wmi commands to their correct struct type (Jarod Wilson) [1807052] - [wireless] orinoco: avoid assertion in case of NULL pointer (Jarod Wilson) [1807052] - [wireless] brcmfmac: Keep OOB wake-interrupt disabled when it shouldn't be enabled (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix memory leak in brcmf_usbdev_qinit (Jarod Wilson) [1807052] - [wireless] brcmfmac: not set mbss in vif if firmware does not support MBSS (Jarod Wilson) [1807052] - [wireless] brcmfmac: add RSDB condition when setting interface combinations (Jarod Wilson) [1807052] - [wireless] brcmfmac: add support for BCM4359 SDIO chipset (Jarod Wilson) [1807052] - [wireless] brcmfmac: make errors when setting roaming parameters non-fatal (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix rambase for 4359/9 (Jarod Wilson) [1807052] - [wireless] brcmfmac: set F2 blocksize and watermark for 4359 (Jarod Wilson) [1807052] - [wireless] brcmfmac: reset two D11 cores if chip has two D11 cores (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix interface sanity check (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix interface sanity check (Jarod Wilson) [1807052] - [wireless] brcmfmac: set interface carrier to off by default (Jarod Wilson) [1807052] - [wireless] mwifiex: delete unused mwifiex_get_intf_num() (Jarod Wilson) [1807052] - [wireless] rt2x00usb: Fix a warning message in 'rt2x00usb_watchdog_tx_dma()' (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix use after free in brcmf_sdio_readframes() (Jarod Wilson) [1807052] - [wireless] rt2x00: use RESET state bit to prevent IV changes on restart (Jarod Wilson) [1807052] - [wireless] rt2x00: implement reconfig_complete (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl_pci: Fix -Wcast-function-type (Jarod Wilson) [1807052] - [wireless] brcmsmac: Remove always false 'channel < 0' statement (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove last definitions of local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl88821ae: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove dependence on special bit manipulation macros for common driver (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: rtl8192c_com: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove usage of private bit manipulation (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Convert inline routines to little-endian words (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Convert macros that set descriptor (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Replace local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Remove unused GET_XXX and SET_XXX macros (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix memory leak in brcmf_p2p_create_p2pdev() (Jarod Wilson) [1807052] - [wireless] ath9k: fix storage endpoint lookup (Jarod Wilson) [1807052] - [wireless] ath11k: Remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] ath11k: remove an unneeded NULL check (Jarod Wilson) [1807052] - [wireless] ath11k: checking for NULL vs IS_ERR() (Jarod Wilson) [1807052] - [wireless] ath11k: delete a stray unlock in ath11k_dbg_htt_stats_req() (Jarod Wilson) [1807052] - [wireless] ath11k: fix missing free of skb on error return path (Jarod Wilson) [1807052] - [wireless] ath11k: fix uninitialized variable radioup (Jarod Wilson) [1807052] - [wireless] ath11k: fix memory leak on reg_info (Jarod Wilson) [1807052] - [wireless] ath11k: Remove unnecessary enum scan_priority (Jarod Wilson) [1807052] - [wireless] ath11k: fix several spelling mistakes (Jarod Wilson) [1807052] - [wireless] ath11k: add some missing __packed qualifiers (Jarod Wilson) [1807052] - [wireless] ath11k: set the BA buffer size to 256 when HE is enabled (Jarod Wilson) [1807052] - [wireless] ath11k: fix pdev when invoking ath11k_wmi_send_twt_enable_cmd() (Jarod Wilson) [1807052] - [wireless] ath11k: optimize ath11k_hal_tx_status_parse (Jarod Wilson) [1807052] - [wireless] ath11k: optimise ath11k_dp_tx_completion_handler (Jarod Wilson) [1807052] - [wireless] ath11k: move some tx_status parsing to debugfs code (Jarod Wilson) [1807052] - [wireless] ath11k: rename ath11k_wmi_base instances from wmi_sc to wmi_ab (Jarod Wilson) [1807052] - [wireless] ath11k: drop memset when setting up a tx cmd desc (Jarod Wilson) [1807052] - [wireless] ath11k: disable PS for STA interfaces by default upon bringup (Jarod Wilson) [1807052] - [wireless] ath11k: add wmi helper for turning STA PS on/off (Jarod Wilson) [1807052] - [wireless] ath10k: Fix some typo in some warning messages (Jarod Wilson) [1807052] - [wireless] ath11k: register HE mesh capabilities (Jarod Wilson) [1807052] - [net] netlink: rename nl80211_validate_nested() to nla_validate_nested() (Jarod Wilson) [1807052] - [wireless] wireless/mediatek: Replace rcu_swap_protected() with rcu_replace_pointer() (Jarod Wilson) [1807052] - [wireless] ath: add support for special 0x0 regulatory domain (Jarod Wilson) [1807052] - [wireless] ath10k: change bundle count for max rx bundle for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: enable napi on RX path for sdio (Jarod Wilson) [1807052] - [wireless] ath11k: fix indentation in ath11k_mac_prepare_he_mode() (Jarod Wilson) [1807052] - [wireless] ath11k: Setup REO destination ring before sending wmi_init command (Jarod Wilson) [1807052] - [wireless] ath11k: Move mac80211 hw allocation before wmi_init command (Jarod Wilson) [1807052] - [wireless] ath11k: Skip update peer stats for management packets (Jarod Wilson) [1807052] - [wireless] ath11k: update tx duration in station info (Jarod Wilson) [1807052] - [wireless] ath11k: fix vht guard interval mapping (Jarod Wilson) [1807052] - [wireless] ath11k: fix memory leak in monitor mode (Jarod Wilson) [1807052] - [wireless] ath11k: Advertise MPDU start spacing as no restriction (Jarod Wilson) [1807052] - [wireless] ath11k: Update tx and rx chain count properly on drv_set_antenna (Jarod Wilson) [1807052] - [wireless] ath11k: add necessary peer assoc params in wmi dbg (Jarod Wilson) [1807052] - [wireless] ath11k: unlock mutex during failure in qmi fw ready (Jarod Wilson) [1807052] - [wireless] ath11k: add support for controlling tx power to a station (Jarod Wilson) [1807052] - [wireless] ath11k: update bawindow size in delba process (Jarod Wilson) [1807052] - [wireless] ath11k: avoid use_after_free in ath11k_dp_rx_msdu_coalesce API (Jarod Wilson) [1807052] - [wireless] ath11k: avoid burst time conversion logic (Jarod Wilson) [1807052] - [wireless] ath11k: pktlog: fix sending/using the pdev id (Jarod Wilson) [1807052] - [wireless] ath11k: qmi clean up in ath11k_qmi_wlanfw_wlan_cfg_send() (Jarod Wilson) [1807052] - [wireless] ath11k: qmi clean up ce and HTC service config update (Jarod Wilson) [1807052] - [wireless] ath11k: tracing: fix ath11k tracing (Jarod Wilson) [1807052] - [wireless] ath10k: enable wow feature for sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: change log level for mpdu status of sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: set WMI_PEER_AUTHORIZE after a firmware crash (Jarod Wilson) [1807052] - [wireless] ath10k: set max mtu to 1500 for sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: enable firmware log by default for sdio (Jarod Wilson) [1807052] - [wireless] ath11k: Fix target crash due to WBM_IDLE_LINK ring desc shortage (Jarod Wilson) [1807052] - [wireless] ath11k: Fixing TLV length issue in peer pktlog WMI command (Jarod Wilson) [1807052] - [wireless] ath11k: Fix skb_panic observed during msdu coalescing (Jarod Wilson) [1807052] - [wireless] ath11k: remove unused tx ring counters (Jarod Wilson) [1807052] - [wireless] ath11k: avoid WMM param truncation (Jarod Wilson) [1807052] - [wireless] ath11k: optimize RX path latency (Jarod Wilson) [1807052] - [wireless] ath11k: update tcl cmd descriptor parameters for STA mode (Jarod Wilson) [1807052] - [wireless] ath11k: fix wmi service ready ext tlv parsing (Jarod Wilson) [1807052] - [wireless] ath11k: fix resource leak in ath11k_mac_sta_state (Jarod Wilson) [1807052] - [wireless] ath11k: Fix htt stats sounding info and pdev cca stats (Jarod Wilson) [1807052] - [wireless] ath10k: move non-fatal warn logs to dbg level (Jarod Wilson) [1807052] - [wireless] ath11k: add spatial reuse support (Jarod Wilson) [1807052] - [wireless] ath11k: add TWT support (Jarod Wilson) [1807052] - [wireless] ath11k: add HE support (Jarod Wilson) [1807052] - [wireless] ath11k: Remove dead code while handling amsdu packets (Jarod Wilson) [1807052] - [wireless] ath11k: fix missed bw conversion in tx completion (Jarod Wilson) [1807052] - [wireless] ath11k: convert message from info to dbg (Jarod Wilson) [1807052] - [wireless] ath11k: ignore event 0x6017 (Jarod Wilson) [1807052] - [wireless] ath11k: add RX stats support for radiotap (Jarod Wilson) [1807052] - [wireless] ath11k: driver for Qualcomm IEEE 802.11ax devices (Jarod Wilson) [1807052] - [wireless] ath10k: fix RX of frames with broken FCS in monitor mode (Jarod Wilson) [1807052] - [wireless] ath10k: report rssi of each chain to mac80211 for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: Handle "invalid" BDFs for msm8998 devices (Jarod Wilson) [1807052] - [wireless] ath10k: Fix qmi init error handling (Jarod Wilson) [1807052] - [wireless] ath10k: add NL80211_FEATURE_ND_RANDOM_MAC_ADDR for NLO (Jarod Wilson) [1807052] - [wireless] ath10k: Handle when FW doesn't support QMI_WLFW_HOST_CAP_REQ_V01 (Jarod Wilson) [1807052] - [wireless] ath10k: add large size for BMI download data for SDIO (Jarod Wilson) [1807052] - [wireless] ath10k: correct the tlv len of ath10k_wmi_tlv_op_gen_config_pno_start (Jarod Wilson) [1807052] - [wireless] ath10k: sdio: remove struct ath10k_sdio_rx_data::status (Jarod Wilson) [1807052] - [wireless] ath10k: sdio: cosmetic cleanup (Jarod Wilson) [1807052] - [wireless] ath10k: add workqueue for RX path of sdio (Jarod Wilson) [1807052] - [wireless] ath10k: change max RX bundle size from 8 to 32 for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: enable RX bundle receive for sdio (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: don't send the IWL_MVM_RXQ_NSSN_SYNC notif to Rx queues (Jarod Wilson) [1807052] - [net] cfg80211: fix page refcount issue in A-MSDU decap (Jarod Wilson) [1807052] - [net] cfg80211: check for set_wiphy_params (Jarod Wilson) [1807052] - [net] cfg80211: fix memory leak in cfg80211_cqm_rssi_update (Jarod Wilson) [1807052] - [net] cfg80211: fix memory leak in nl80211_probe_mesh_link (Jarod Wilson) [1807052] - [net] cfg80211: fix deadlocks in autodisconnect work (Jarod Wilson) [1807052] - [net] wireless: wext: avoid gcc -O3 warning (Jarod Wilson) [1807052] - [net] mac80211: Fix TKIP replay protection immediately after key setup (Jarod Wilson) [1807052] - [net] cfg80211: Fix radar event during another phy CAC (Jarod Wilson) [1807052] - [net] wireless: fix enabling channel 12 for custom regulatory domain (Jarod Wilson) [1807052] - [net] mac80211: mesh: restrict airtime metric to peered established plinks (Jarod Wilson) [1807052] - [wireless] Revert "iwlwifi: mvm: fix scan config command size" (Jarod Wilson) [1807052] - [wireless] iwlwifi: fw: make pos static in iwl_sar_get_ewrd_table() loop (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove lar_disable module parameter (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: force stop the debug monitor HW (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: always disable L0S states (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: rename L0S_ENABLED bit to L0S_DISABLED (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix potential SKB leak on TXQ TX (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix SKB leak on invalid queue (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: extend hardware workaround to context-info (Jarod Wilson) [1807052] - [wireless] iwlwifi: Don't ignore the cap field upon mcc update (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: report TX rate to mac80211 directly for RS offload (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix NVM check for 3168 devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: fix TLV fragment allocation loop (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: allocate smaller dev_cmd for TX headers (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: detect the DMA bug and warn if it happens (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: work around DMA hardware bug (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: move page tracking into get_page_hdr() (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't send PPAG command if disabled (Jarod Wilson) [1807052] - [wireless] mt76: Off by one in mt76_calc_rx_airtime() (Jarod Wilson) [1807052] - [wireless] mt76: fix LED link time failure (Jarod Wilson) [1807052] - [net] mac80211: Turn AQL into an NL80211_EXT_FEATURE (Jarod Wilson) [1807052] - [net] mac80211: airtime: Fix an off by one in ieee80211_calc_rx_airtime() (Jarod Wilson) [1807052] - [net] cfg80211: fix double-free after changing network namespace (Jarod Wilson) [1807052] - [net] mac80211: fix TID field in monitor mode transmit (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: move power gating workaround earlier in the flow (Jarod Wilson) [1807052] - [wireless] Revert "iwlwifi: assign directly to iwl_trans->cfg in QuZ detection" (Jarod Wilson) [1807052] - [wireless] wireles: Use sizeof_field() macro (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: fix default mac address overwrite (Jarod Wilson) [1807052] - [wireless] ath9k: use iowrite32 over __raw_writel (Jarod Wilson) [1807052] - [net] mac80211: Use Airtime-based Queue Limits (AQL) on packet dequeue (Jarod Wilson) [1807052] - [net] mac80211: Implement Airtime-based Queue Limit (AQL) (Jarod Wilson) [1807052] - [net] mac80211: Import airtime calculation code from mt76 (Jarod Wilson) [1807052] - [net] mac80211: consider QoS Null frames for STA_NULLFUNC_ACKED (Jarod Wilson) [1807052] - [net] mac80211: expose HW conf flags through debugfs (Jarod Wilson) [1807052] - [net] mac80211: Add new sta_info getter by sta/vif addrs (Jarod Wilson) [1807052] - [net] mac80211: add a comment about monitor-to-dev injection (Jarod Wilson) [1807052] - [wireless] drivers: net: Fix Kconfig indentation, continued (Jarod Wilson) [1807052] - [wireless] mt76: fix fix ampdu locking (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: fix endpoint definition order (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: read {tx,rx} mask from eeprom (Jarod Wilson) [1807052] - [wireless] mt76: move mt76_get_antenna in mt76_core module (Jarod Wilson) [1807052] - [wireless] mt76: fix possible out-of-bound access in mt7615_fill_txs/mt7603_fill_txs (Jarod Wilson) [1807052] - [wireless] Revert "mt76: mt76x0e: don't use hw encryption for MT7630E" (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: disable radar pattern detector during scanning (Jarod Wilson) [1807052] - [wireless] mt76: move interface_modes definition in mt76_core module (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: add ibss support (Jarod Wilson) [1807052] - [wireless] mt76: move SUPPORTS_REORDERING_BUFFER hw property in mt76_register_device (Jarod Wilson) [1807052] - [wireless] mt76: use mt76_dev in mt76_is_{mmio,usb} (Jarod Wilson) [1807052] - [wireless] mt76: Remove set but not used variable 'idx' (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: rely on a dedicated stats workqueue (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: rely on usb_interface instead of usb_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: remove 350ms delay in mt76x0_phy_calibrate (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02u: update ewma pkt len in mt76x02u_tx_prepare_skb (Jarod Wilson) [1807052] - [wireless] mt76: remove obsolete .add_buf() from struct mt76_queue_ops (Jarod Wilson) [1807052] - [wireless] mt76: add sanity check for a-mpdu rx wcid index (Jarod Wilson) [1807052] - [wireless] mt76: refactor cc_lock locking scheme (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: eeprom: add support for MAC address from OF (Jarod Wilson) [1807052] - [wireless] mt76: avoid enabling interrupt if NAPI poll is still pending (Jarod Wilson) [1807052] - [wireless] mt76: fix aggregation stop issue (Jarod Wilson) [1807052] - [wireless] mt76: drop rcu read lock in mt76_rx_aggr_stop (Jarod Wilson) [1807052] - [wireless] mt76: add missing locking around ampdu action (Jarod Wilson) [1807052] - [wireless] mt76: do not use devm API for led classdev (Jarod Wilson) [1807052] - [wireless] mt76: enable airtime fairness (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: track tx/rx airtime for airtime fairness (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: introduce mt7615_mac_wtbl_update routine (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix survey channel busy time (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: report tx_time, bss_rx and busy time to mac80211 (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: track approximate tx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: move MT_CH_TIME_CFG init to mt76x02_mac_cc_reset (Jarod Wilson) [1807052] - [wireless] mt76: unify channel survey update code (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: switch to a different counter for survey busy time (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: track tx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: track rx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: store current channel survey_state in struct mt76_dev (Jarod Wilson) [1807052] - [wireless] mt76: rename mt76_driver_ops txwi_flags to drv_flags and include tx aligned4 (Jarod Wilson) [1807052] - [wireless] mt76: report rx a-mpdu subframe status (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: remove q_rx field from struct mt7603_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: collect aggregation stats (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: collect aggregation stats (Jarod Wilson) [1807052] - [wireless] mt76: move aggr_stats array in mt76_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: add queue entry in debugfs (Jarod Wilson) [1807052] - [wireless] mt76: move queue debugfs entry to driver specific code (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02u: move mt76x02u_mac_start in mt76x02-usb module (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0u: reset counter starting the device (Jarod Wilson) [1807052] - [wireless] mt76: mt76x2: move mt76x02_mac_reset_counters in mt76x02_mac_start (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: move mac_reset_counter in mt76x02_lib module (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: enable SCS by default (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0e: make array mt76x0_chan_map static const, makes object smaller (Jarod Wilson) [1807052] - [wireless] mt76: usb: add lockdep_assert_held in __mt76u_vendor_request (Jarod Wilson) [1807052] - [wireless] mt76: remove empty flag in mt76_txq_schedule_list (Jarod Wilson) [1807052] - [wireless] mt76: use cancel_delayed_work_sync in mt76_rx_aggr_shutdown (Jarod Wilson) [1807052] - [wireless] mt76: remove aggr_work field from struct mt76_wcid (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix control frame rx in monitor mode (Jarod Wilson) [1807052] - [wireless] iwlwifi: bump FW API to 52 for 22000 series (Jarod Wilson) [1807052] - [wireless] iwlwifi: check kasprintf() return value (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove outdated comment referring to wake lock (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: trace IOVA for iwlwifi_dev_tx_tb (Jarod Wilson) [1807052] - [wireless] iwlwifi: dvm: excessive if in rs_bt_update_lq() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Report tx/rx antennas (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: rx: use rxq queue_size instead of constant (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove left-over non-functional email alias (Jarod Wilson) [1807052] - [wireless] iwlwifi: config: remove max_rx_agg_size (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: make some RX functions static (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: support scan req FW API ver 13 (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: fix support for transmitting SKBs with fraglist (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Remove set but not used variable 'vif', 'dev', 'len' (Jarod Wilson) [1807052] - [wireless] brcmfmac: remove monitor interface when detaching (Jarod Wilson) [1807052] - [wireless] brcmfmac: disable PCIe interrupts before bus reset (Jarod Wilson) [1807052] - [wireless] rtw88: allows to enable/disable HCI link PS mechanism (Jarod Wilson) [1807052] - [wireless] rtw88: pci: enable CLKREQ function if host supports it (Jarod Wilson) [1807052] - [wireless] rtw88: pci: use for loop instead of while loop for DBI/MDIO (Jarod Wilson) [1807052] - [wireless] rtw88: pci: use macros to access PCI DBI/MDIO registers (Jarod Wilson) [1807052] - [wireless] rtlwifi: set proper udelay within rf_serial_read (Jarod Wilson) [1807052] - [wireless] rtlwifi: rf_lock use non-irqsave spin_lock (Jarod Wilson) [1807052] - [wireless] brcmfmac: remove set but not used variable 'mpnum', 'nsp', 'nmp' (Jarod Wilson) [1807052] - [wireless] rtw88: remove duplicated include from ps.c (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Remove set but not used variable 'rsr' (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove unnecessary return (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: wl1251 add device tree support (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix non-ACPI function (Jarod Wilson) [1807052] - [wireless] iwlwifi: 22000: fix some indentation (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove IWL_DEVICE_22560/IWL_DEVICE_FAMILY_22560 (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: sync the iwl_mvm_session_prot_notif layout (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: start CTDP budget from 2400mA (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: don't skip mgmt tid when flushing all tids (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: scan: enable adaptive dwell in p2p (Jarod Wilson) [1807052] - [wireless] iwlwifi: refactor the SAR tables from mvm to acpi (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: support scan req cmd ver 12 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: make new scan req versioning flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix unaligned read of rx_pkt_status (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove redundant assignment to variable bufsz (Jarod Wilson) [1807052] - [wireless] iwlwifi: bump FW API to 51 for 22000 series (Jarod Wilson) [1807052] - [wireless] iwlwifi: FW API: reference enum in docs of modify_mask (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: print rate_n_flags in a pretty format (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: adapt the code to use api ver 11 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: Create function to build scan cmd (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: create function for scan scheduling params (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support dump collection upon assert during D3 (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: make iwl_pcie_gen2_update_byte_tbl static (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: in VHT connection use only VHT capabilities (Jarod Wilson) [1807052] - [wireless] iwlwifi: nvm: update iwl_uhb_nvm_channels (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove else-if in iwl_send_phy_cfg_cmd() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix support for single antenna diversity (Jarod Wilson) [1807052] - [wireless] ath10k: qmi: Sleep for a while before assigning MSA memory (Jarod Wilson) [1807052] - [wireless] ath10k: Revert "ath10k: add cleanup in ath10k_sta_state()" (Jarod Wilson) [1807052] - [wireless] mwifiex: Re-work support for SDIO HW reset (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Add support for Edimax EW-7611ULB (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing enable interrupt flag (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing callback that tests for hw release of buffer (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing code to retrieve RX buffer address (Jarod Wilson) [1807052] - [net] mac80211: Use debugfs_create_xul() helper (Jarod Wilson) [1807052] - [net] cfg80211: VLAN offload support for set_key and set_sta_vlan (Jarod Wilson) [1807052] - [net] mac80211: Shrink the size of ack_frame_id to make room for tx_time_est (Jarod Wilson) [1807052] - [net] mac80211: don't re-parse elems in ieee80211_assoc_success() (Jarod Wilson) [1807052] - [net] mac80211: move store skb ack code to its own function (Jarod Wilson) [1807052] - [wireless] ath10k: disable cpuidle during downloading firmware (Jarod Wilson) [1807052] - [wireless] ath10k: fix potential issue of peer stats allocation (Jarod Wilson) [1807052] - [wireless] ath10k: fix get invalid tx rate for Mesh metric (Jarod Wilson) [1807052] - [wireless] rtw88: signal completion even on firmware-request failure (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential NULL pointer access for firmware (Jarod Wilson) [1807052] - [wireless] rtlwifi: fix memory leak in rtl92c_set_fw_rsvdpagepkt() (Jarod Wilson) [1807052] - [wireless] rt2800: remove errornous duplicate condition (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8225se: remove some unused const variables (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove set but not used variables (Jarod Wilson) [1807052] - [wireless] rtw88: raise LPS threshold to 50, for less power consumption (Jarod Wilson) [1807052] - [wireless] ath5k: eeprom: Remove unneeded variable (Jarod Wilson) [1807052] - [wireless] ath10k: remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] mt7601u: use DEFINE_DEBUGFS_ATTRIBUTE to define debugfs fops (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Drop condition with no effect (Jarod Wilson) [1807052] - [wireless] b43: dma: Fix use true/false for bool type variable (Jarod Wilson) [1807052] - [wireless] b43: main: Fix use true/false for bool type (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192c: Drop condition with no effect (Jarod Wilson) [1807052] - [wireless] rtw88: remove redundant null pointer check on arrays (Jarod Wilson) [1807052] - [wireless] rtw88: avoid FW info flood (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential read outside array boundary (Jarod Wilson) [1807052] - [wireless] rtw88: rearrange if..else statements for rx rate indexes (Jarod Wilson) [1807052] - [wireless] rtw88: use rtw_phy_pg_cfg_pair struct, not arrays (Jarod Wilson) [1807052] - [wireless] rtw88: 8822b: add RFE type 3 support (Jarod Wilson) [1807052] - [wireless] rtw88: fix sparse warnings for power tracking (Jarod Wilson) [1807052] - [wireless] rtw88: fix sparse warnings for DPK (Jarod Wilson) [1807052] - [wireless] net: Fix various misspellings of "connect" (Jarod Wilson) [1807052] - [wireless] net: Fix misspellings of "configure" and "configuration" (Jarod Wilson) [1807052] - [wireless] rtw88: fix GENMASK_ULL for u64 (Jarod Wilson) [1807052] - [wireless] iwlwifi: rx: use new api to get band from rx mpdu (Jarod Wilson) [1807052] - [wireless] iwlwifi: nvm: create function to convert channel index to nl80211_band (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Invert the condition for OFDM rate (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: create function to convert nl80211 band to phy band (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use vzalloc to allocate dumping memory regions (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add user trigger support (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add notification for missed VAP (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix old-style declaration (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: use the new session protection command (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove leftover rs_remove_sta_debugfs() prototype (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for new version for D0I3_END_CMD (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: consider ieee80211 station max amsdu value (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support FW notification dumping in case of missed beacon (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: remove old API and some related code (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: rename external debug configuration file (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support FW response/notification region type (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support domain changing via debugfs (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add periodic trigger new API support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: implement monitor allocation flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: implement time point handling (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add TLV allocation new API support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new API in dump info (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add error tables dumping support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add monitor dumping support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: remove multi buffers infra (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new trigger TLV in dump flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new region TLV in dump flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: load external dbg cfg after internal cfg is loaded (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix warnings for symbol not declared (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: remove set but not used variable 'rate_mask' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove unnecessary NULL check in rtl_regd_init (Jarod Wilson) [1807052] - [wireless] rtw88: add phy_info debugfs to show Tx/Rx physical status (Jarod Wilson) [1807052] - [wireless] rtw88: add set_bitrate_mask support (Jarod Wilson) [1807052] - [wireless] rtw88: Enable 802.11ac beamformee support (Jarod Wilson) [1807052] - [wireless] rtw88: add power tracking support (Jarod Wilson) [1807052] - [wireless] rtw88: use macro to check the current band (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix RTL8723BU connection failure issue after warm reboot (Jarod Wilson) [1807052] - [wireless] rtw88: mark rtw_fw_hdr __packed (Jarod Wilson) [1807052] - [wireless] net/wireless: Delete unnecessary checks before the macro call "dev_kfree_skb" (Jarod Wilson) [1807052] - [wireless] wireless: Remove call to memset after dma_alloc_coherent (Jarod Wilson) [1807052] - [wireless] rtw88: include interrupt.h for tasklet_struct (Jarod Wilson) [1807052] - [wireless] rtw88: use a for loop in rtw_power_mode_change(), not goto (Jarod Wilson) [1807052] - [wireless] rtw88: coex: Set 4 slot mode for A2DP (Jarod Wilson) [1807052] - [wireless] rtw88: pci: config phy after chip info is setup (Jarod Wilson) [1807052] - [wireless] rtw88: Use rtw_write8_set to set SYS_FUNC (Jarod Wilson) [1807052] - [wireless] rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support (Jarod Wilson) [1807052] - [wireless] rtw88: config 8822c multicast address in MAC init flow (Jarod Wilson) [1807052] - [wireless] ath10k: Correct error handling of dma_map_single() (Jarod Wilson) [1807052] - [wireless] ath: rename regulatory rules (Jarod Wilson) [1807052] - [wireless] ath10k: fix memory leak for tpc_stats_final (Jarod Wilson) [1807052] - [wireless] ath10k: fix array out-of-bounds access (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Convert inline routines to little-endian words (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Convert macros that set descriptor (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Replace local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variable 'err' (Jarod Wilson) [1807052] - [wireless] ath10k: fix null dereference on pointer crash_data (Jarod Wilson) [1807052] - [wireless] ath10k: enable transmit data ack RSSI for QCA9884 (Jarod Wilson) [1807052] - [net] mac80211: minstrel_ht: rename prob_ewma to prob_avg, use it for the new average (Jarod Wilson) [1807052] - [net] mac80211: minstrel_ht: replace rate stats ewma with a better moving average (Jarod Wilson) [1807052] - [net] mac80211: minstrel: remove divisions in tx status path (Jarod Wilson) [1807052] - [net] nl80211: trivial: Remove redundant loop (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variable 'cur_tx_wp' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: make arrays static, makes object smaller (Jarod Wilson) [1807052] - [wireless] rtw88: Fix an error message (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: add bluetooth co-existence support for single antenna (Jarod Wilson) [1807052] - [wireless] mwifiex: pcie: Fix memory leak in mwifiex_pcie_alloc_cmdrsp_buf (Jarod Wilson) [1829230 1807052] {CVE-2019-19056} - [wireless] rtlwifi: rtl8723: Remove set but not used variable 'own' (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: Remove set but not used variables 'wifi_busy', 'bt_info_ext' (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: Remove set but not used variable 'result' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove set but not used variable 'h2c_parameter' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove set but not used variables 'v3', 'rtstatus', 'reg_ecc', 'reg_ec4', 'reg_eac', 'b_pathb_ok' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192c: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Remove set but not used variables 'reg_ecc', 'reg_ec4', 'reg_eac', 'b_pathb_ok' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Remove set but not used variables 'rtstatus', 'bd' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Improve TX performance of RTL8723BU on rtl8xxxu driver (Jarod Wilson) [1807052] - [wireless] brcmfmac: add support for SAE authentication offload (Jarod Wilson) [1807052] - [wireless] rtw88: fix error handling when setup efuse info (Jarod Wilson) [1807052] - [wireless] rtw88: fix NSS of hw_cap (Jarod Wilson) [1807052] - [wireless] rtw88: use struct rtw_fw_hdr to access firmware header (Jarod Wilson) [1807052] - [wireless] rtw88: raise firmware version debug level (Jarod Wilson) [1807052] - [wireless] rtw88: configure TX queue EDCA parameters (Jarod Wilson) [1807052] - [wireless] rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption (Jarod Wilson) [1807052] - [wireless] rtw88: fix beaconing mode rsvd_page memory violation issue (Jarod Wilson) [1807052] - [wireless] rtw88: flush hardware tx queues (Jarod Wilson) [1807052] - [wireless] rtw88: add TX-AMSDU support (Jarod Wilson) [1807052] - [wireless] rtw88: report tx rate to mac80211 stack (Jarod Wilson) [1807052] - [wireless] rtw88: take over rate control from mac80211 (Jarod Wilson) [1807052] - [wireless] rtw88: add driver TX queue support (Jarod Wilson) [1807052] - [wireless] rtw88: allows to set RTS in TX descriptor (Jarod Wilson) [1807052] - [wireless] rtw88: check firmware leave lps successfully (Jarod Wilson) [1807052] - [wireless] mac80211: simplify TX aggregation start (Jarod Wilson) [1807052] - [net] mac80211: pass internal sta to ieee80211_tx_frags() (Jarod Wilson) [1807052] - [net] mac80211: IBSS: avoid unneeded return value processing (Jarod Wilson) [1807052] - [wireless] ar5523: check NULL before memcpy() in ar5523_cmd() (Jarod Wilson) [1807052] - [wireless] ath10k: add support for hardware rfkill (Jarod Wilson) [1807052] - [wireless] ath10k: restore QCA9880-AR1A (v1) detection (Jarod Wilson) [1807052] - [wireless] ath10k: fix offchannel tx failure when no ath10k_mac_tx_frm_has_freq (Jarod Wilson) [1807052] - [wireless] cw1200: Fix a signedness bug in cw1200_load_firmware() (Jarod Wilson) [1807052] - [wireless] rtw88: remove misleading module parameter rtw_fw_support_lps (Jarod Wilson) [1807052] - [wireless] rtw88: add deep PS PG mode for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: select deep PS mode when module is inserted (Jarod Wilson) [1807052] - [wireless] rtw88: not to enter LPS by coex strategy (Jarod Wilson) [1807052] - [wireless] rtw88: add deep power save support (Jarod Wilson) [1807052] - [wireless] rtw88: leave PS state for dynamic mechanism (Jarod Wilson) [1807052] - [wireless] rtw88: LPS enter/leave should be protected by lock (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused lps state check helper (Jarod Wilson) [1807052] - [wireless] rtw88: not to control LPS by each vif (Jarod Wilson) [1807052] - [wireless] rtw88: not to enter or leave PS under IRQ (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset H2C queue indexes in a single write (Jarod Wilson) [1807052] - [wireless] rtw88: remove redundant flag check helper function (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variables 'short_gi', 'buf_len' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove set but not used variables 'dataempty', 'hoffset' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove set but not used variable 'rtstate' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: prevent leaking urb (Jarod Wilson) [1829887 1807052] {CVE-2019-19068} - [wireless] net/wireless: Use kmemdup rather than duplicating its implementation (Jarod Wilson) [1807052] - [wireless] ath9k_htc: Discard undersized packets (Jarod Wilson) [1807052] - [wireless] ath9k_htc: Modify byte order for an error message (Jarod Wilson) [1807052] - [wireless] ath9k_hw: fix uninitialized variable data (Jarod Wilson) [1807052] - [wireless] ath10k: fix backtrace on coredump (Jarod Wilson) [1807052] - [wireless] ath10k: coredump: fix IRAM addr for QCA9984, QCA4019, QCA9888 and QCA99x0 (Jarod Wilson) [1807052] - [wireless] ath10k: switch to ieee80211_tx_dequeue_ni (Jarod Wilson) [1807052] - [wireless] ath10k: change sw version print format to hex (Jarod Wilson) [1807052] - [wireless] ath10k: print supported MCS rates within service ready event (Jarod Wilson) [1807052] - [wireless] ath10k: print service ready returned channel range (Jarod Wilson) [1807052] - [wireless] ath10k: add 2ghz channel arguments to service ready structure (Jarod Wilson) [1807052] - [wireless] ath9k: remove unused including (Jarod Wilson) [1807052] - [wireless] mwifiex: use 'total_ie_len' in mwifiex_update_bss_desc_with_ie() (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove excessive check in _rtl_ps_inactive_ps() (Jarod Wilson) [1807052] - [wireless] rtlwifi: prevent memory leak in rtl_usb_probe (Jarod Wilson) [1829850 1807052] {CVE-2019-19063} - [wireless] rtlwifi: rtl8723ae: Remove unused 'rtstatus' variable (Jarod Wilson) [1807052] - [wireless] mt7601u: fix bbp version check in mt7601u_wait_bbp_ready (Jarod Wilson) [1807052] - [wireless] rtw88: 8822c: fix boolreturn.cocci warnings (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove duplicated if condition (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix suspend/resume when power is cut off (Jarod Wilson) [1807052] - [wireless] brcmfmac: don't WARN when there are no requests (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove a useless test (Jarod Wilson) [1807052] - [wireless] brcmfmac: send port authorized event for FT-802.1X (Jarod Wilson) [1807052] - [wireless] ath10k: fix memory leak (Jarod Wilson) [1807052] - [wireless] ath10k: remove the warning of sdio not full support (Jarod Wilson) [1807052] - [wireless] ath: Use dev_get_drvdata where possible (Jarod Wilson) [1807052] - [wireless] ath: fix various spelling mistakes (Jarod Wilson) [1807052] - [wireless] ath10k: fix missing checks for bmi reads and writes (Jarod Wilson) [1807052] - [wireless] ath10k: Add support to provide higher range mem chunks in wmi init command (Jarod Wilson) [1807052] - [wireless] ath10k: Add peer param map for tlv and non-tlv (Jarod Wilson) [1807052] - [wireless] ath10k: Enable MSA region dump support for WCN3990 (Jarod Wilson) [1807052] - [wireless] ath10k: Add xo calibration support for wifi rf clock (Jarod Wilson) [1807052] - [wireless] ath10k: fix spelling mistake "eanble" -> "enable" (Jarod Wilson) [1807052] - [wireless] ath10k: add cleanup in ath10k_sta_state() (Jarod Wilson) [1807052] - [wireless] ath10k: revalidate the msa region coming from firmware (Jarod Wilson) [1807052] - [wireless] ath10k: use ath10k_pci_soc_ functions for all warm_reset instances (Jarod Wilson) [1807052] - [wireless] ath10k: Use ARRAY_SIZE (Jarod Wilson) [1807052] - [wireless] ath10k: avoid leaving .bss_info_changed prematurely (Jarod Wilson) [1807052] - [wireless] ath10k: Use standard bulk clock API in snoc (Jarod Wilson) [1807052] - [wireless] ath10k: Use standard regulator bulk API in snoc (Jarod Wilson) [1807052] - [wireless] ath10k: snoc: skip regulator operations (Jarod Wilson) [1807052] - [wireless] ath10k: Fix HOST capability QMI incompatibility (Jarod Wilson) [1807052] - [wireless] ath10k: Check if station exists before forwarding tx airtime report (Jarod Wilson) [1807052] - [include] include/linux/units.h: add helpers for kelvin to/from Celsius conversion (Jarod Wilson) [1807052]- [x86] x86/PCI: Define to_pci_sysdata() even when !CONFIG_PCI (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add two VMD Device IDs (Myron Stowe) [1788364 1783436] - [pci] x86/PCI: Expose VMD's pci_dev in struct pci_sysdata (Myron Stowe) [1788364 1783436] - [x86] x86/PCI: Add to_pci_sysdata() helper (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add device id for VMD device 8086:9A0B (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add bus 224-255 restriction decode (Myron Stowe) [1788364 1783436] - [fs] fuse: copy_file_range needs to strip setuid bits and update timestamps (Eric Sandeen) [1721881] - [fs] vfs: allow copy_file_range to copy across devices (Eric Sandeen) [1721881] - [fs] vfs: add missing checks to copy_file_range (Eric Sandeen) [1721881] - [mm] vfs: remove redundant checks from generic_remap_checks() (Eric Sandeen) [1721881] - [fs] vfs: introduce generic_file_rw_checks() (Eric Sandeen) [1721881] - [fs] vfs: no fallback for ->copy_file_range (Eric Sandeen) [1721881] - [fs] vfs: introduce generic_copy_file_range() (Eric Sandeen) [1721881] - [ptp] ptp: add VMware virtual PTP clock driver (Prarit Bhargava) [1829706] - [powerpc] powerpc/powernv/ioda: Handle failures correctly in pnv_pci_ioda_iommu_bypass_supported() (Michael Roth) [1805101] - [powerpc] powerpc/pseries/dma: Enable SWIOTLB (Michael Roth) [1805101] - [powerpc] powerpc/pseries/dma: Allow SWIOTLB (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Fix build with IOMMU_API=n (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Remove unused pnv_npu_try_dma_set_bypass() function (Michael Roth) [1805101] - [powerpc] powerpc/dma: Fix invalid DMA mmap behavior (Michael Roth) [1805101] - [powerpc] powerpc/dma: trim the fat from (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove set_dma_offset (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove get_dma_offset (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the generic direct mapping bypass (Michael Roth) [1805101] - [powerpc] powerpc/powernv/npu: Remove NPU DMA ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the dma_direct mapping routines (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the dma-direct allocator for coherent platforms (Michael Roth) [1805101] - [powerpc] swiotlb: remove swiotlb_dma_supported (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_dma_supported (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_get_required_mask (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_mmap_coherent (Michael Roth) [1805101] - [powerpc] powerpc/dma: use phys_to_dma instead of get_dma_offset (Michael Roth) [1805101] - [powerpc] dma-mapping, powerpc: simplify the arch dma_set_mask override (Michael Roth) [1805101] - [powerpc] powerpc/dma: fix an off-by-one in dma_capable (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove max_direct_dma_addr (Michael Roth) [1805101] - [powerpc] powerpc/dma: move pci_dma_dev_setup_swiotlb to fsl_pci.c (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove get_pci_dma_ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the iommu fallback for coherent allocations (Michael Roth) [1805101] - [powerpc] powerpc/pci: remove the dma_set_mask pci_controller ops methods (Michael Roth) [1805101] - [misc] cxl: drop the dma_set_mask callback from vphb (Michael Roth) [1805101] - [powerpc] KABI: re-use deprecated field for iommu_bypass_supported function pointer (Michael Roth) [1805101] - [powerpc] powerpc/dma: stop overriding dma_get_required_mask (Michael Roth) [1805101] - [dma] KABI: add fake includes for headers used in arch/powerpc/kernel/dma.c (Michael Roth) [1805101] - [powerpc] powerpc/powernv: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Remove PCI_MSI ifdef checks (Michael Roth) [1805101] - [powerpc] powerpc/powernv: remove pnv_npu_dma_set_mask (Michael Roth) [1805101] - [powerpc] powerpc/powernv: remove pnv_pci_ioda_pe_single_vendor (Michael Roth) [1805101] - [powerpc] powerpc/dart: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/dart: remove dead cleanup code in iommu_init_early_dart (Michael Roth) [1805101] - [powerpc] powerpc/cell: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/cell: move dma direct window setup out of dma_configure (Michael Roth) [1805101] - [powerpc] powerpc/pseries: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/pseries: unwind dma_get_required_mask_pSeriesLP a bit (Michael Roth) [1805101] - [powerpc] powerpc/dma: handle iommu bypass in dma_iommu_ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: untangle vio_dma_mapping_ops from dma_iommu_ops (Michael Roth) [1805101] - [dma] dma-direct: we might need GFP_DMA for 32-bit dma masks (Michael Roth) [1805101] - [powerpc] powerpc/dma: split the two __dma_alloc_coherent implementations (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused dma_iommu_ops export (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused ISA_DMA_THRESHOLD export (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused ARCH_HAS_DMA_MMAP_COHERENT define (Michael Roth) [1805101] - [powerpc] powerpc/dma: properly wire up the unmap_page and unmap_sg methods (Michael Roth) [1805101] - [powerpc] powerpc: allow NOT_COHERENT_CACHE for amigaone (Michael Roth) [1805101] - [powerpc] powerpc/fadump: consider reserved ranges while reserving memory (Steve Best) [1813701] - [powerpc] powerpc/fadump: use static allocation for reserved memory ranges (Steve Best) [1813701] - [fs] audit: Report suspicious O_CREAT usage (partial) (Eric Sandeen) [1797843] - [fs] vfs: fix do_last() regression (Eric Sandeen) [1797843] - [fs] do_last(): fetch directory ->i_mode and ->i_uid before it's too late (Eric Sandeen) [1797843] - [fs] namei: allow restricted O_CREAT of FIFOs and regular files (Eric Sandeen) [1797843] - [netdrv] fm10k: use txqueue parameter in fm10k_tx_timeout (Neil Horman) [1781387] - [netdrv] fm10k: Use sizeof_field() macro (Neil Horman) [1781387] - [netdrv] fm10k: update driver version to match out-of-tree (Neil Horman) [1781387] - [netdrv] fm10k: add support for ndo_get_vf_stats operation (Neil Horman) [1781387] - [netdrv] fm10k: add missing field initializers to TLV attributes) (Neil Horman) [1781387] - [netdrv] fm10k: use a local variable for the frag pointer (Neil Horman) [1781387] - [netdrv] ethernet: Delete unnecessary checks before the macro call "dev_kfree_skb" (Neil Horman) [1781387] - [netdrv] fm10k: no need to check return value of debugfs_create functions (Neil Horman) [1781387] - [security] KEYS: Avoid false positive ENOMEM error on key read (Waiman Long) [1807693] - [security] KEYS: Don't write out to userspace while holding key semaphore (Waiman Long) [1807693] - [security] selinux: allow per-file labeling for CephFS (Ondrej Mosnacek) [1823764] - [scsi] scsi: qedi: make qedi_ll2_buf_size static (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Fix termination timeouts in session logout (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add modules param to enable qed iSCSI debug (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Do not flush offload work if ARP not resolved (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Use correct msix count for fastpath vectors (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Avoid unnecessary endpoint allocation on link down (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Remove additional char from boot target iqnname (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add PCI shutdown handler support (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add MFW error recovery process (Nilesh Javali) [1792111] - [netdrv] ibmvnic: Skip fatal error reset after passive init (Steve Best) [1830989] - [ata] ahci: Add Intel Comet Lake PCH-V PCI ID (David Milburn) [1802690] - [ata] ahci: Add Intel Comet Lake PCH-H PCI ID (David Milburn) [1802690] - [ata] ahci: Add Intel Comet Lake H RAID PCI ID (David Milburn) [1802690] - [x86] x86, sched: Move check for CPU type to caller function (Prarit Bhargava) [1828260] - [x86] x86, sched: Don't enable static key when starting secondary CPUs (Prarit Bhargava) [1828260] - [x86] x86, sched: Account for CPUs with less than 4 cores in freq. invariance (Prarit Bhargava) [1828260] - [x86] x86, sched: Bail out of frequency invariance if base frequency is unknown (Prarit Bhargava) [1828260] - [lib] scsi: klist: Make it safe to use klists in atomic context (Waiman Long) [1829027] - [char] random: try to actively add entropy rather than passively wait for it (Neil Horman) [1778762] - [md] dm writecache: fix data corruption when reloading the target (Mike Snitzer) [1830129] - [kernel] smp: Allow smp_call_function_single_async() to insert locked csd (Peter Xu) [1830014] - [scsi] scsi: ibmvscsi: Fix WARN_ON during event pool release (Steve Best) [1829242] - [block] block: avoid to check null profile pointer to see if it is in 3rd party module (Ming Lei) [1829464] - [tools] perf scripting perl: Add common_callchain to fix argument order (Michael Petlan) [1809191] - [netdrv] ionic: fix unused assignment (Jonathan Toppins) [1780645] - [netdrv] ionic: add dynamic_debug header (Jonathan Toppins) [1780645] - [netdrv] ionic: set station addr only if needed (Jonathan Toppins) [1780645] - [netdrv] ionic: replay filters after fw upgrade (Jonathan Toppins) [1780645] - [netdrv] ionic: remove lifs on fw reset (Jonathan Toppins) [1780645] - [netdrv] ionic: disable the queues on link down (Jonathan Toppins) [1780645] - [netdrv] ionic: check for queues before deleting (Jonathan Toppins) [1780645] - [netdrv] ionic: clean tx queue of unfinished requests (Jonathan Toppins) [1780645] - [netdrv] ionic: move irq request to qcq alloc (Jonathan Toppins) [1780645] - [netdrv] ionic: move debugfs add/delete to match alloc/free (Jonathan Toppins) [1780645] - [netdrv] ionic: check for linkup in watchdog (Jonathan Toppins) [1780645] - [netdrv] ionic: decouple link message from netdev state (Jonathan Toppins) [1780645] - [netdrv] ionic: check for NULL structs on teardown (Jonathan Toppins) [1780645] - [netdrv] ionic: clean irq affinity on queue deinit (Jonathan Toppins) [1780645] - [netdrv] ionic: ignore eexist on rx filter add (Jonathan Toppins) [1780645] - [netdrv] ionic: only save good lif dentry (Jonathan Toppins) [1780645] - [netdrv] ionic: leave dev cmd request contents alone on FW timeout (Jonathan Toppins) [1780645] - [netdrv] ionic: add timeout error checking for queue disable (Jonathan Toppins) [1780645] - [netdrv] ionic: make spdxcheck.py happy (Jonathan Toppins) [1780645] - [netdrv] ionic: add decode for IONIC_RC_ENOSUPP (Jonathan Toppins) [1780645] - [netdrv] ionic: print data for unknown xcvr type (Jonathan Toppins) [1780645] - [netdrv] ionic: remove adminq napi instance (Jonathan Toppins) [1780645] - [netdrv] ionic: deinit rss only if selected (Jonathan Toppins) [1780645] - [netdrv] ionic: stop devlink warn on mgmt device (Jonathan Toppins) [1780645] - [netdrv] net: ionic: Use scnprintf() for avoiding potential buffer overflow (Jonathan Toppins) [1780645] - [netdrv] netdev:pass the stuck queue to the timeout handler (Jonathan Toppins) [1780645] - [netdrv] ionic: drop ethtool driver version (Jonathan Toppins) [1780645] - [netdrv] ionic: add support for device id 0x1004 (Jonathan Toppins) [1780645] - [netdrv] ionic: print pci bus lane info (Jonathan Toppins) [1780645] - [netdrv] ionic: support ethtool rxhash disable (Jonathan Toppins) [1780645] - [netdrv] ionic: clean up bitflag usage (Jonathan Toppins) [1780645] - [netdrv] ionic: improve irq numa locality (Jonathan Toppins) [1780645] - [netdrv] ionic: remove pragma packed (Jonathan Toppins) [1780645] - [netdrv] ionic: keep ionic dev on lif init fail (Jonathan Toppins) [1780645] - [netdrv] ionic: fix vf op lock usage (Jonathan Toppins) [1780645] - [netdrv] ionic: let core reject the unsupported coalescing parameters (Jonathan Toppins) [1780645] - [netdrv] ionic: fix fw_status read (Jonathan Toppins) [1780645] - [netdrv] ionic: use new helper tcp_v6_gso_csum_prep (Jonathan Toppins) [1780645] - [netdrv] ionic: fix rxq comp packet type mask (Jonathan Toppins) [1780645] - [netdrv] ionic: clear compiler warning on hb use before set (Jonathan Toppins) [1780645] - [netdrv] ionic: restrict received packets to mtu size (Jonathan Toppins) [1780645] - [netdrv] ionic: add Rx dropped packet counter (Jonathan Toppins) [1780645] - [netdrv] ionic: drop use of subdevice tags (Jonathan Toppins) [1780645] - [netdrv] ionic: support sr-iov operations (Jonathan Toppins) [1780645] - [netdrv] ionic: ionic_if bits for sr-iov support (Jonathan Toppins) [1780645] - [netdrv] ionic: keep users rss hash across lif reset (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove set but not used variable 'sg_desc' (Jonathan Toppins) [1780645] - [netdrv] ionic: update driver version (Jonathan Toppins) [1780645] - [netdrv] ionic: implement support for rx sgl (Jonathan Toppins) [1780645] - [netdrv] ionic: add a watchdog timer to monitor heartbeat (Jonathan Toppins) [1780645] - [netdrv] ionic: add heartbeat check (Jonathan Toppins) [1780645] - [netdrv] ionic: reverse an interrupt coalesce calculation (Jonathan Toppins) [1780645] - [netdrv] ionic: fix up struct name comments (Jonathan Toppins) [1780645] - [netdrv] dynamic_debug: provide dynamic_hex_dump stub (Jonathan Toppins) [1780645] - [netdrv] ionic: fix stats memory dereference (Jonathan Toppins) [1780645] - [netdrv] ionic: add lif_quiesce to wait for queue activity to stop (Jonathan Toppins) [1780645] - [netdrv] ionic: implement ethtool set-fec (Jonathan Toppins) [1780645] - [netdrv] ionic: report users coalesce request (Jonathan Toppins) [1780645] - [netdrv] ionic: use wait_on_bit_lock() rather than open code (Jonathan Toppins) [1780645] - [netdrv] ionic: simplify returns in devlink info (Jonathan Toppins) [1780645] - [netdrv] ionic: select CONFIG_NET_DEVLINK (Jonathan Toppins) [1780645] - [netdrv] ionic: Fix an error code in ionic_lif_alloc() (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove unnecessary ternary operator in ionic_debugfs_add_ident (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove unused including (Jonathan Toppins) [1780645] - [netdrv] ionic: Add coalesce and other features (Jonathan Toppins) [1780645] - [netdrv] ionic: Add RSS support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add driver stats (Jonathan Toppins) [1780645] - [netdrv] ionic: Add netdev-event handling (Jonathan Toppins) [1780645] - [netdrv] ionic: Add Tx and Rx handling (Jonathan Toppins) [1780645] - [netdrv] ionic: Add initial ethtool support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add async link status check and basic stats (Jonathan Toppins) [1780645] - [netdrv] ionic: Add Rx filter and rx_mode ndo support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add management of rx filters (Jonathan Toppins) [1780645] - [netdrv] ionic: Add the basic NDO callbacks for netdev support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add notifyq support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add adminq action (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic adminq support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add interrupts and doorbells (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic lif support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add port management commands (Jonathan Toppins) [1780645] - [netdrv] ionic: Add hardware init and device commands (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic framework for IONIC Network device driver (Jonathan Toppins) [1780645] - [netdrv] net: sfp: add more extended compliance codes (Jonathan Toppins) [1780645] - [scsi] scsi: core: Add DID_ALLOC_FAILURE and DID_MEDIUM_ERROR to hostbyte_table (Maurizio Lombardi) [1819061] - [netdrv] igc: Add debug messages to MAC filter code (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_mac_entry_can_be_used() (Corinna Vinschen) [1781384] - [netdrv] igc: Remove igc_*_mac_steering_filter() wrappers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove IGC_MAC_STATE_QUEUE_STEERING (Corinna Vinschen) [1781384] - [netdrv] igc: Remove 'queue' check in igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Improve address check in igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_rar_set_index() (Corinna Vinschen) [1781384] - [netdrv] igc: Fix igc_uc_unsync() (Corinna Vinschen) [1781384] - [netdrv] igc: Change igc_add_mac_filter() returning value (Corinna Vinschen) [1781384] - [netdrv] igc: Check unsupported flag in igc_add_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Remove duplicate code in MAC filtering logic (Corinna Vinschen) [1781384] - [netdrv] igc: Add new device IDs for i225 part (Corinna Vinschen) [1781384] - [netdrv] igc: Fix default MAC address filter override (Corinna Vinschen) [1781384] - [netdrv] igc: Remove dead code related to flower filter (Corinna Vinschen) [1781384] - [netdrv] igc: Fix NFC queue redirection support (Corinna Vinschen) [1781384] - [netdrv] igc: Remove copper fiber switch control (Corinna Vinschen) [1781384] - [netdrv] igc: Enable NETIF_F_HW_TC flag (Corinna Vinschen) [1781384] - [netdrv] igc: Fix double definition (Corinna Vinschen) [1781384] - [netdrv] igc: Fix overwrites when dumping registers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove forward declaration (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused CTRL_EXT_LINK_MODE_MASK (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused MDIC_DEST mask (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for ETF offloading (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for taprio offloading (Corinna Vinschen) [1781384] - [netdrv] igc: Add GSO partial support (Corinna Vinschen) [1781384] - [netdrv] net: igc: let core reject the unsupported coalescing parameters (Corinna Vinschen) [1781384] - [netdrv] intel: Replace zero-length array with flexible-array member (Corinna Vinschen) [1781384] - [netdrv] igc: Add comment (Corinna Vinschen) [1781384] - [netdrv] igc: Add WOL support (Corinna Vinschen) [1781384] - [netdrv] igc: Add pcie error handler support (Corinna Vinschen) [1781384] - [netdrv] igc: Complete to commit Add basic skeleton for PTP (Corinna Vinschen) [1781384] - [netdrv] igc: Fix the typo in comment (Corinna Vinschen) [1781384] - [netdrv] igc: Add dump options (Corinna Vinschen) [1781384] - [netdrv] igc: Complete to commit Add legacy power management support (Corinna Vinschen) [1781384] - [netdrv] igc: make non-global functions static (Corinna Vinschen) [1781384] - [netdrv] igc: Add PHY power management control (Corinna Vinschen) [1781384] - [netdrv] RHEL-only: Revert "igc: add additional delay during phy hw reset" (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for TSO (Corinna Vinschen) [1781384] - [netdrv] igc: Add SKU for i225 device (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused definition (Corinna Vinschen) [1781384] - [netdrv] igc: Fix typo in a comment (Corinna Vinschen) [1781384] - [netdrv] igc: Use Start of Packet signal from PHY for timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for ethtool GET_TS_INFO command (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for TX timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for RX timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add basic skeleton for PTP (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_sw_init (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_write_itr (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_assign_vector (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_free_q_vector (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_free_q_vectors (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_irq_disable (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_irq_enable (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_configure_msix (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_rx_mode (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_interrupt_capability (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_alloc_mapped_page (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_configure (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_default_mac_filter (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_power_down_link (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_clean_tx_ring (Corinna Vinschen) [1781384] - [netdrv] igc: Remove serdes comments from a description of methods (Corinna Vinschen) [1781384] - [netdrv] igc: Add legacy power management support (Corinna Vinschen) [1781384] - [netdrv] igc: Add 64 bit DMA access support (Corinna Vinschen) [1781384] - [netdrv] igc: Fix parameter descriptions for a several functions (Corinna Vinschen) [1781384] - [netdrv] igc: Fix the parameter description for igc_alloc_rx_buffers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove excess parameter description from igc_is_non_eop (Corinna Vinschen) [1781384] - [netdrv] igc: Prefer to use the pci_release_mem_regions method (Corinna Vinschen) [1781384] - [netdrv] igc: Improve the DMA mapping flow (Corinna Vinschen) [1781384] - [netdrv] igc: Add scatter gather support (Corinna Vinschen) [1781384] - [netdrv] treewide: Use sizeof_field() macro (Corinna Vinschen) [1781384] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Corinna Vinschen) [1781384] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781384] - [netdrv] igb/igc: Don't warn on fatal read failures when the device is removed (Corinna Vinschen) [1781384] - [netdrv] net: igb: let core reject the unsupported coalescing parameters (Corinna Vinschen) [1781381] - [netdrv] intel: Replace zero-length array with flexible-array member (Corinna Vinschen) [1781381] - [netdrv] igb: Fix SGMII SFP module discovery for 100FX/LX (Corinna Vinschen) [1781381] - [netdrv] igb: dont drop packets if rx flow control is enabled (Corinna Vinschen) [1781381] - [netdrv] treewide: Use sizeof_field() macro (Corinna Vinschen) [1781381] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Corinna Vinschen) [1781381] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781381] - [netdrv] igb: Fix constant media auto sense switching when no cable is connected (Corinna Vinschen) [1781381] - [netdrv] igb: Enable media autosense for the i350 (Corinna Vinschen) [1781381] - [netdrv] igb/igc: Don't warn on fatal read failures when the device is removed (Corinna Vinschen) [1781381] - [netdrv] igb: Add UDP segmentation offload support (Corinna Vinschen) [1781381] - [netdrv] net: igbvf: reject unsupported coalescing params (Corinna Vinschen) [1781382] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781382] - [ata] ahci: Do not export local variable ahci_em_messages (Prarit Bhargava) [1826320] - [scripts] modpost: check for static EXPORT_SYMBOL* functions (Prarit Bhargava) [1826320] - [kernel] torture: Remove exporting of internal functions (Prarit Bhargava) [1826320] - [input] Input: synaptics-rmi4 - remove the exporting of rmi_2d_sensor_set_input_params (Prarit Bhargava) [1826320] - [netdrv] net: phy: make exported variables non-static (Prarit Bhargava) [1826320] - [scsi] scsi: libsas: remove the exporting of sas_wait_eh (Prarit Bhargava) [1826320] - [drm] drm/client: remove the exporting of drm_client_close (Prarit Bhargava) [1826320] - [scripts] modpost: always show verbose warning for section mismatch (Prarit Bhargava) [1826320] - [net] netfilter: nf_nat_ipv4: remove obsolete EXPORT_SYMBOL (Prarit Bhargava) [1826320] - [crypto] crypto: skcipher - remove the exporting of skcipher_walk_next (Prarit Bhargava) [1826320] - [scsi] scsi: scsi_debug: Fix a recently introduced regression (Ming Lei) [1822001] - [block] scsi: block: remove bidi support (Ming Lei) [1822001] - [scsi] scsi: block: remove req->special (Ming Lei) [1822001] - [scsi] scsi: stop setting up request->special (Ming Lei) [1822001] - [scsi] scsi: remove bidirectional command support (Ming Lei) [1822001] - [scsi] scsi: remove the SCSI OSD library (Ming Lei) [1822001] - [fs] scsi: fs: remove exofs (Ming Lei) [1822001] - [block] scsi: bsg-lib: handle bidi requests without block layer help (Ming Lei) [1822001] - [block] scsi: bsg: refactor bsg_ioctl (Ming Lei) [1822001] - [netdrv] sfc: fix XDP-redirect in this driver (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: support configuring vf spoofchk on EF10 VFs (Jarod Wilson) [1796582 1788753 1684003] - [netdrv] sfc: ethtool: Refactor to remove fallthrough comments in case blocks (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Replace zero-length array with flexible-array member (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove unused variable 'efx_default_channel_type' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: elide assignment of skb (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some ARFS code out of headers (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: only schedule asynchronous filter work if needed (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: detach from cb_page in efx_copy_channel() (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: complete the next packet when we receive a timestamp (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix timestamp reconstruction at 16-bit rollover points (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move mcdi filtering code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: create header for mcdi filtering code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: rename mcdi filtering functions/structs (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove duplicated include from efx.c (Jarod Wilson) [1796582 1788753] - [netdrv] sfc/ethtool_common: Make some function to static (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove set but not used variable 'nic_data' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove duplicated include from ef10.c (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move RPS code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move yet more functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move RSS code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move a couple more functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some ethtool code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move various functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more rx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more tx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: refactor selftest work init code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI logging device attribute (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: conditioned some functionality (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI receive queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI transmit queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI event queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI VI alloc/free code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more MCDI port code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some MCDI port utility functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some port link state/caps code (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move common tx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move common rx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move event queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel interrupt management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel alloc/removal code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel start/stop code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some channel-related code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move struct init and fini code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some device reset code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move datapath management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move mac configuration and status functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move reset workqueue code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: further preparation for code split (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add new headers in preparation for code split (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove ioremap_nocache and devm_ioremap_nocache (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Remove unnecessary dependencies on I2C (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: avoid duplicate error handling code in 'efx_ef10_sriov_set_vf_mac()' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Include XDP packet headroom in buffer step size (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix channel allocation with brute force (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix build without CONFIG_RFS_ACCEL (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: do ARFS expiry work occasionally even without NAPI poll (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add statistics for ARFS (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: suppress MCDI errors from ARFS (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: change ARFS expiry mechanism (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Only cancel the PPS workqueue if it exists (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: trace_xdp_exception on XDP failure (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add XDP counters to ethtool stats (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: handle XDP_TX outcomes of XDP eBPF programs (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: allocate channels for XDP tx queues (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Enable setting of xdp_prog (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: perform XDP processing on received packets (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: support encapsulation of xdp_frames in efx_tx_buffer (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: use the new __netdev_tx_sent_queue BQL optimisation (Jarod Wilson) [1796582 1788753] - [netdrv] net/sfc: Use skb_frag_off accessors (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: phase out dma_zalloc_coherent() (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove redundant variable old_vlan (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: Convert random_ether_addr to eth_random_addr (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: batch up RX delivery (Jarod Wilson) [1796582 1788753] - [netdrv] net: mlx4: Use scnprintf() for avoiding potential buffer overflow (Alaa Hleihel) [1789363] - [infiniband] IB/mlx4: Fix leak in id_map_find_del (Alaa Hleihel) [1789363] - [infiniband] IB/mlx4: Fix memory leak in add_gid error flow (Alaa Hleihel) [1789363] - [include] mlx4: Bump up MAX_MSIX from 64 to 128 (Alaa Hleihel) [1789363] - [infiniband] RDMA/mlx4: use true, false for bool variable (Alaa Hleihel) [1789363] - [infiniband] RDMA/mlx4: Redo TX checksum offload in line with docs (Alaa Hleihel) [1789363] - [netdrv] mlx4: use new txqueue timeout argument (Alaa Hleihel) [1789363] - [netdrv] treewide: Use sizeof_field() macro (Alaa Hleihel) [1789363 1789362] - [infiniband] IB/mlx4: Update HW GID table while adding vlan GID (Alaa Hleihel) [1789363 1789362] - [netdrv] net/mlx4_en: ethtool: make array modes static const, makes object smaller (Alaa Hleihel) [1789363 1789361] - [infiniband] RDMA/mlx4: Annotate boolean arguments as bool and not int (Alaa Hleihel) [1789363 1789361] - [netdrv] mlx4: avoid large stack usage in mlx4_init_hca() (Alaa Hleihel) [1789363 1789361] - [infiniband] RDMA/mlx4: Untag user pointers in mlx4_get_umem_mr (Alaa Hleihel) [1789363 1789361] - [netdrv] net: Use skb accessors in network drivers (Alaa Hleihel) [1789363 1789361]- [net] ip_vti: receive ipip packet by calling ip_tunnel_rcv (Xin Long) [1815554] - [net] xfrm: call xfrm_output_gso when inner_protocol is set in xfrm_output (Xin Long) [1815968] - [net] sched: Fix hw_stats_type setting in pedit loop (Ivan Vecera) [1817156] - [net] sched: set the hw_stats_type in pedit loop (Ivan Vecera) [1817156] - [include] flow_offload: fix allowed types check (Ivan Vecera) [1817156] - [net] sched: act: allow user to specify type of HW stats for a filter (Ivan Vecera) [1817156] - [net] flow_offload: pass action cookie through offload structures (Ivan Vecera) [1817156] - [netdrv] flow_offload: introduce "disabled" HW stats type and allow it in mlxsw (Ivan Vecera) [1817156] - [include] flow_offload: introduce "delayed" HW stats type and allow it in mlx5 (Ivan Vecera) [1817156] - [netdrv] flow_offload: introduce "immediate" HW stats type and allow it in mlxsw (Ivan Vecera) [1817156] - [netdrv] mlxsw: restrict supported HW stats type to "any" (Ivan Vecera) [1817156] - [netdrv] mlxsw: spectrum_flower: Do not allow mixing HW stats types for actions (Ivan Vecera) [1817156] - [netdrv] flow_offload: check for basic action hw stats type (Ivan Vecera) [1817156] - [include] flow_offload: Introduce offload of HW stats type (Ivan Vecera) [1817156] - [net] netfilter: nf_tables: use-after-free in dynamic operations (Phil Sutter) [1822577] - [net] devlink: Add health recover notifications on devlink flows (Petr Oros) [1821169] - [net] devlink: add devink notification when reporter update health state (Petr Oros) [1821169] - [net] devlink: add support for reporter recovery completion (Petr Oros) [1821169] - [net] devlink: Add new "enable_roce" generic device param (Petr Oros) [1805955] - [netdrv] netdevsim: use __GFP_NOWARN to avoid memalloc warning (Petr Oros) [1817157] - [tools] selftests: add netdevsim devlink health tests (Petr Oros) [1817157] - [netdrv] netdevsim: implement couple of testing devlink health reporters (Petr Oros) [1817157] - [net] devlink: propagate extack down to health reporter ops (Petr Oros) [1817157] - [net] devlink: don't do reporter recovery if the state is healthy (Petr Oros) [1817157] - [net] xsk: Fix out of boundary write in __xsk_rcv_memcpy (Jiri Benc) [1819630] - [samples] bpf: Allow for -ENETDOWN in xdpsock (Jiri Benc) [1819630] - [samples] bpf: Drop doubled variable declaration in xdpsock (Jiri Benc) [1819630] - [netdrv] i40e: Relax i40e_xsk_wakeup's return value when PF is busy (Jiri Benc) [1819630] - [netdrv] net/ixgbe: Fix concurrency issues between config flow and XSK (Jiri Benc) [1819630] - [netdrv] net/i40e: Fix concurrency issues between config flow and XSK (Jiri Benc) [1819630] - [net] xsk: Add rcu_read_lock around the XSK wakeup (Jiri Benc) [1819630] - [net] fix installing orphaned programs (Jiri Benc) [1819630] - [tools] libbpf: Don't use kernel-side u32 type in xsk.c (Jiri Benc) [1819630] - [tools] libbpf: Fix compatibility for kernels without need_wakeup (Jiri Benc) [1819630] - [net] xsk: Fix crash in poll when device does not support ndo_xsk_wakeup (Jiri Benc) [1819630] - [kernel] bpf/xskmap: Return ERR_PTR for failure case instead of NULL. (Jiri Benc) [1819630] - [net] xdp: convert put_page() to put_user_page*() (Jiri Benc) [1819630] - [net] xdp: mm: introduce page_size() (Jiri Benc) [1819630] - [net] xsk: relax UMEM headroom alignment (Jiri Benc) [1819630] - [samples] bpf: fix xdpsock l2fwd tx for unaligned mode (Jiri Benc) [1819630] - [netdrv] ixgbe: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] ixgbe: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] i40e: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] i40e: fix xdp handle calculations (Jiri Benc) [1819630] - [net] xsk: use state member for socket synchronization (Jiri Benc) [1819630] - [documentation] doc/af_xdp: include unaligned chunk case (Jiri Benc) [1819630] - [samples] bpf: use hugepages in xdpsock app (Jiri Benc) [1819630] - [samples] bpf: add buffer recycling for unaligned chunks to xdpsock (Jiri Benc) [1819630] - [samples] bpf: add unaligned chunks mode support to xdpsock (Jiri Benc) [1819630] - [tools] libbpf: add flags to umem config (Jiri Benc) [1819630] - [netdrv] mlx5e: Allow XSK frames smaller than a page (Jiri Benc) [1819630] - [netdrv] mlx5e: modify driver for handling offsets (Jiri Benc) [1819630] - [netdrv] ixgbe: modify driver for handling offsets (Jiri Benc) [1819630] - [netdrv] i40e: modify driver for handling offsets (Jiri Benc) [1819630] - [net] xsk: add support to allow unaligned chunk placement (Jiri Benc) [1819630] - [net] xdp: xdp_umem: replace kmap on vmap for umem map (Jiri Benc) [1819630] - [net] Don't call XDP_SETUP_PROG when nothing is changed (Jiri Benc) [1819630] - [kernel] bpf: Use PTR_ERR_OR_ZERO in xsk_map_inc() (Jiri Benc) [1819630] - [kernel] xsk: support BPF_EXIST and BPF_NOEXIST flags in XSKMAP (Jiri Benc) [1819630] - [net] xsk: remove AF_XDP socket from map when the socket is released (Jiri Benc) [1819630] - [netdrv] mlx5e: Add AF_XDP need_wakeup support (Jiri Benc) [1819630] - [netdrv] net/mlx5e: Move the SW XSK code from NAPI poll to a separate function (Jiri Benc) [1819630] - [samples] bpf: add use of need_wakeup flag in xdpsock (Jiri Benc) [1819630] - [tools] libbpf: add support for need_wakeup flag in AF_XDP part (Jiri Benc) [1819630] - [netdrv] ixgbe: need_wakeup flag might not be set for Tx (Jiri Benc) [1819630] - [netdrv] ixgbe: add support for AF_XDP need_wakeup feature (Jiri Benc) [1819630] - [netdrv] i40e: add support for AF_XDP need_wakeup feature (Jiri Benc) [1819630] - [net] xsk: add support for need_wakeup flag in AF_XDP rings (Jiri Benc) [1819630] - [net] xsk: replace ndo_xsk_async_xmit with ndo_xsk_wakeup (Jiri Benc) [1819630] - [net] xdp: xdp_umem: fix umem pages mapping for 32bits systems (Jiri Benc) [1819630] - [net] ethtool: add infrastructure for centralized checking of coalescing parameters (Ivan Vecera) [1818096] - [tools] selftests: netfilter: add simple masq/redirect test cases (Hangbin Liu) [1826220] - [tools] selftests: netfilter: fix config fragment CONFIG_NF_TABLES_INET (Hangbin Liu) [1826220] - [tools] selftests: add script to stress-test nft packet path vs. control plane (Hangbin Liu) [1826220] - [net] devlink: disallow reload operation during device cleanup (Petr Oros) [1805958] - [tools] selftests: test creating netdevsim inside network namespace (Petr Oros) [1805958] - [net] devlink: export devlink net setter (Petr Oros) [1805958] - [net] devlink: don't ignore errors during dumpit (Petr Oros) [1805958] - [netdrv] netdevsim: fix spelling mistake "forbidded" -> "forbid" (Petr Oros) [1805958] - [netdrv] netdevsim: implement devlink dev_info op (Petr Oros) [1805958] - [netdrv] netdevsim: add couple of debugfs bools to debug devlink reload (Petr Oros) [1805958] - [netdrv] netdevsim: create devlink and netdev instances in namespace (Petr Oros) [1805958] - [include] net: skbuff: disambiguate argument and member for skb_list_walk_safe helper (Josef Oskera) [1818105] - [include] net: introduce skb_list_walk_safe for skb segment walking (Josef Oskera) [1818105] - [netdrv] netdevsim: drop code duplicated by a merge (Petr Oros) [1805951] - [tools] selftests: devlink: undo changes at the end of resource_test (Petr Oros) [1805951] - [tools] selftests: netdevsim: add tests for devlink reload with resources (Petr Oros) [1805951] - [net] devlink: allow to change namespaces during reload (Petr Oros) [1805951] - [net] devlink: Add method for time-stamp on reporter's dump (Petr Oros) [1805951] - [netdrv] netdevsim: take devlink net instead of init_net (Petr Oros) [1805951] - [netdrv] netdevsim: register port netdevices into net of device (Petr Oros) [1805951] - [netdrv] netdevsim: implement proper devlink reload (Petr Oros) [1805951] - [netdrv] netdevsim: add all ports in nsim_dev_create() and del them in destroy() (Petr Oros) [1805951] - [net] devlink: export devlink net getter (Petr Oros) [1805951] - [net] fib_notifier: propagate extack down to the notifier block callback (Petr Oros) [1805951] - [net] fib_notifier: propagate possible error during fib notifier registration (Petr Oros) [1805951] - [net] fib_notifier: make FIB notifier per-netns (Petr Oros) [1805951] - [netdrv] netdevsim: change fib accounting and limitations to be per-device (Petr Oros) [1805951] - [netdrv] netdevsim: Set offsets to various protocol layers (Petr Oros) [1805951] - [net] devlink: Fix error handling in param and info_get dumpit cb (Petr Oros) [1805951] - [net] lwtunnel: check erspan options before allocating tun_info (Xin Long) [1730151] - [net] lwtunnel: be STRICT to validate the new LWTUNNEL_IP(6)_OPTS (Xin Long) [1730151] - [net] lwtunnel: add support for multiple geneve opts (Xin Long) [1730151] - [net] lwtunnel: change to use nla_put_u8 for LWTUNNEL_IP_OPT_ERSPAN_VER (Xin Long) [1730151] - [net] lwtunnel: ignore any TUNNEL_OPTIONS_PRESENT flags set by users (Xin Long) [1730151] - [net] lwtunnel: get nlsize for erspan options properly (Xin Long) [1730151] - [net] lwtunnel: change to use nla_parse_nested on new options (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for erspan (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for vxlan (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for geneve (Xin Long) [1730151] - [net] lwtunnel: add options process for cmp_encap (Xin Long) [1730151] - [net] lwtunnel: add options process for arp request (Xin Long) [1730151] - [net] ip_tunnel: Add dst_cache support in lwtunnel_state of ip tunnel (Xin Long) [1730151] - [include] tcp: Define IPPROTO_MPTCP (Florian Westphal) [1812198] - [net] skb: add helpers to allocate ext independently from sk_buff (Florian Westphal) [1812198] - [net] tcp: Check for filled TCP option space before SACK (Florian Westphal) [1812198] - [net] tcp: Export TCP functions and ops struct (Florian Westphal) [1812198] - [net] tcp: coalesce/collapse must respect MPTCP extensions (Florian Westphal) [1812198] - [net] mptcp: Add MPTCP to skb extensions (Florian Westphal) [1812198] - [net] tcp, ulp: Add clone operation to tcp_ulp_ops (Florian Westphal) [1812198] - [include] tcp: Add MPTCP option number (Florian Westphal) [1812198] - [net] Make sock protocol value checks more specific (Florian Westphal) [1812198] - [net] ipv6: provide and use ipv6 specific version for {recv, send}msg (Florian Westphal) [1812198] - [net] inet: factor out inet_send_prepare() (Florian Westphal) [1812198] - [net] tipc: fix incorrect increasing of link window (Xin Long) [1822129] - [net] tipc: Add a missing case of TIPC_DIRECT_MSG type (Xin Long) [1822129] - [net] tipc: add NULL pointer check to prevent kernel oops (Xin Long) [1822129] - [net] tipc: simplify trivial boolean return (Xin Long) [1822129] - [net] tipc: add missing attribute validation for MTU property (Xin Long) [1822129] - [net] tipc: fix successful connect() but timed out (Xin Long) [1822129] - [net] tipc: make three functions static (Xin Long) [1822129] - [net] tipc: fix wrong connect() return code (Xin Long) [1822129] - [net] tipc: make legacy address flag readable over netlink (Xin Long) [1822129] - [net] tipc: don't send gap blocks in ACK messages (Xin Long) [1822129] - [net] tipc: fix use-after-free in tipc_disc_rcv() (Xin Long) [1822129] - [net] tipc: introduce variable window congestion control (Xin Long) [1822129] - [net] tipc: eliminate more unnecessary nacks and retransmissions (Xin Long) [1822129] - [net] tipc: eliminate gap indicator from ACK messages (Xin Long) [1822129] - [net] tipc: fix duplicate SYN messages under link congestion (Xin Long) [1822129] - [net] tipc: support in-order name publication events (Xin Long) [1822129] - [net] tipc: add back tipc prefix to log messages (Xin Long) [1822129] - [net] tipc: fix update of the uninitialized variable err (Xin Long) [1822129] - [net] tipc: add support for AEAD key setting via netlink (Xin Long) [1822129] - [net] tipc: introduce TIPC encryption & authentication (Xin Long) [1822129] - [include] tipc: add new AEAD key structure for user API (Xin Long) [1822129] - [net] tipc: enable creating a "preliminary" node (Xin Long) [1822129] - [net] tipc: add reference counter to bearer (Xin Long) [1822129] - [net] tipc: eliminate checking netns if node established (Xin Long) [1822129] - [net] tipc: eliminate the dummy packet in link synching (Xin Long) [1822129] - [net] tipc: improve message bundling algorithm (Xin Long) [1822129] - [net] tipc: add smart nagle feature (Xin Long) [1822129] - [net] tipc: improve throughput between nodes in netns (Xin Long) [1822129] - [net] tipc: add loopback device tracking (Xin Long) [1822129] - [netdrv] vxlan: check return value of gro_cells_init() (Sabrina Dubroca) [1821295] - [netdrv] geneve: move debug check after netdev unregister (Sabrina Dubroca) [1821295] - [net] ip6_tunnel: enhance tunnel locate with link check (Sabrina Dubroca) [1821295] - [netdrv] vxlan: implement get_link_ksettings ethtool method (Sabrina Dubroca) [1821295] - [netdrv] vxlan: check tun_info options_len properly (Sabrina Dubroca) [1821295] - [include] iptunnel: make TUNNEL_FLAGS available in uapi (Sabrina Dubroca) [1821295] - [net] introduce dev_net notifier register/unregister variants (Ivan Vecera) [1818102] - [net] push code from net notifier reg/unreg into helpers (Ivan Vecera) [1818102] - [net] call call_netdevice_unregister_net_notifiers from unregister (Ivan Vecera) [1818102] - [net] introduce per-netns netdevice notifiers (Ivan Vecera) [1818102] - [net] push loops and nb calls into helper functions (Ivan Vecera) [1818102] - [include] net: ipv6: do not consider routes via gateways for anycast address check (Hangbin Liu) [1816506] - [net] ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface (Hangbin Liu) [1816506] - [net] ipv6: need update peer route when modify metric (Hangbin Liu) [1816506] - [net] ipv6: use configured metric when add peer route (Hangbin Liu) [1816506] - [net] ipv6: restrict IPV6_ADDRFORM operation (Hangbin Liu) [1816506] - [net] ipv6: Fix nlmsg_flags when splitting a multipath route (Hangbin Liu) [1816506] - [net] ipv6: Fix route replacement with dev-only route (Hangbin Liu) [1816506] - [net] ipv6/addrconf: fix potential NULL deref in inet6_set_link_af() (Hangbin Liu) [1816506] - [net] net-ipv6-ndisc: add support for RFC7710 RA Captive Portal Identifier (Hangbin Liu) [1816506] - [net] ipv6: Don't use dst gateway directly in ip6_confirm_neigh() (Hangbin Liu) [1816506] - [net] ipv6: Fix the link time qualifier of 'ping_v6_proc_exit_net()' (Hangbin Liu) [1816506] - [net] ipv6: propagate ipv6_add_dev's error returns out of ipv6_find_idev (Hangbin Liu) [1816506] - [net] ipv6: allow any source address for sendmsg pktinfo with ip_nonlocal_bind (Hangbin Liu) [1816506] - [net] multicast: remove useless parameter for group add (Hangbin Liu) [1816506] - [documentation] networking: devlink-trap: Fix reference to other document (Petr Oros) [1805882] - [netdrv] netdevsim: Fix use-after-free during device dismantle (Petr Oros) [1805882] - [netdrv] netdevsim: Fix build error without CONFIG_INET (Petr Oros) [1805882] - [net] devlink: move reload fail indication to devlink core and expose to user (Petr Oros) [1805882] - [net] devlink: split reload op into two (Petr Oros) [1805882] - [netdrv] mlx4: Split restart_one into two functions (Petr Oros) [1805882] - [include] devlink: add unknown 'fw_load_policy' value (Petr Oros) [1805882] - [net] devlink: add 'reset_dev_on_drv_probe' param (Petr Oros) [1805882] - [include] devlink: extend 'fw_load_policy' values (Petr Oros) [1805882] - [include] devlink: Add new info version tags for ASIC and FW (Petr Oros) [1805882] - [net] devlink: Use switch-case instead of if-else (Petr Oros) [1805882] - [net] devlink: Make port index data type as unsigned int (Petr Oros) [1805882] - [net] devlink: send notifications for deleted snapshots on region destroy (Petr Oros) [1805882] - [net] devlink: remove pointless data_len arg from region snapshot create (Petr Oros) [1805882] - [documentation] Add description of netdevsim traps (Petr Oros) [1805882] - [netdrv] netdevsim: Add devlink-trap support (Petr Oros) [1805882] - [tools] selftests: netdevsim: add devlink regions tests (Petr Oros) [1805882] - [tools] selftests: netdevsim: add devlink params tests (Petr Oros) [1805882] - [netdrv] netdevsim: implement support for devlink region and snapshots (Petr Oros) [1805882] - [netdrv] netdevsim: register couple of devlink params (Petr Oros) [1805882]- [arm64] kvm: arm64: limit PMU version to PMUv3 for ARMv8.1 (Gavin Shan) [1814009] - [arm64] cpufeature: Extract capped perfmon fields (Gavin Shan) [1814009] - [virt] kvm: arm64: Use the correct timer structure to access the physical counter (Gavin Shan) [1814009] - [arm64] Ask the compiler to __always_inline functions used by KVM at HYP (Gavin Shan) [1814009] - [arm64] kvm: arm64: Define our own swab32() to avoid a uapi static inline (Gavin Shan) [1814009] - [arm64] kvm: arm64: Ask the compiler to __always_inline functions used at HYP (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Fold VHE entry/exit work into kvm_vcpu_run_vhe() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Fix up includes for trace.h (Gavin Shan) [1814009] - [virt] kvm: arm64: Treat emulated TVAL TimerValue as a signed 32-bit integer (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Only handle supported event counters (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Fix chained SW_INCR counters (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Don't mark a counter as chained if the odd one is disabled (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset (Gavin Shan) [1814009] - [virt] kvm: arm: Make inject_abt32() inject an external abort instead (Gavin Shan) [1814009] - [virt] kvm: arm: Fix DFSR setting for non-LPAE aarch32 guests (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Fix young bit from mmu notifier (Gavin Shan) [1814009] - [arm64] kvm: Add UAPI notes for swapped registers (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Cleanup MMIO handling (Gavin Shan) [1814009] - [arm64] kvm: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Drop the kvm_vgic_register_mmio_region() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic-its: Properly check the unmapped coll in DISCARD handler (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Correct AArch32 SPSR on exception entry (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Correct CPSR on exception entry (Gavin Shan) [1814009] - [arm64] kvm: arm64: Correct PSTATE on exception entry (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Re-check VMA on detecting a poisoned page (Gavin Shan) [1814009] - [virt] kvm: arm: Remove duplicate include (Gavin Shan) [1814009] - [virt] kvm: arm: Call hyp_cpu_pm_exit at the right place (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Handle GICR_PENDBASER.PTZ filed as RAZ (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic-its: Fix restoration of unmapped collections (Gavin Shan) [1814009] - [virt] kvm: arm64: Only sign-extend MMIO up to register width (Gavin Shan) [1814009] - [arm64] kvm: stop treating register x18 as caller save (Gavin Shan) [1814009] - [arm64] Workaround for Cortex-A55 erratum 1530923 (Gavin Shan) [1814009] - [arm64] Rename WORKAROUND_1319367 to SPECULATIVE_AT_NVHE (Gavin Shan) [1814009] - [arm64] Enable and document ARM errata 1319367 and 1319537 (Gavin Shan) [1814009] - [arm64] Rename WORKAROUND_1165522 to SPECULATIVE_AT_VHE (Gavin Shan) [1814009] - [arm64] Introduce ID_ISAR6 CPU register (Gavin Shan) [1814009] - [arm64] nofpsmid: Handle TIF_FOREIGN_FPSTATE flag cleanly (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Properly handle faulting of device mappings (Gavin Shan) [1814009] - [arm64] kvm: arm64: Ensure 'params' is initialised when looking up sys register (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Remove excessive permission check in kvm_arch_prepare_memory_region (Gavin Shan) [1814009] - [arm64] kvm: arm64: Don't log IMP DEF sysreg traps (Gavin Shan) [1814009] - [arm64] kvm: Invoke compute_layout() before alternatives are applied (Gavin Shan) [1814009] - [arm64] kvm: arm64: Sanely ratelimit sysreg messages (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Use wrapper function to lock/unlock all vcpus in kvm_vgic_create() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Fix potential double free dist->spis in __kvm_vgic_destroy() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Get rid of unused arg in cpu_init_hyp_mode() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Opportunistically turn off WFI trapping when using direct LPI injection (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Let the timer expire in hardirq context on RT (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Fix some comments typo (Gavin Shan) [1814009] - [kvm] arm/arm64: vgic: Remove the declaration of kvm_send_userspace_msi() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Don't set HCR_EL2.TVM when S2FWB is supported (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Show halt poll counters in debugfs (Gavin Shan) [1814009] - [arm64] kvm: Prevent speculative S1 PTW when restoring vcpu context (Gavin Shan) [1814009] - [arm64] kvm: Disable EL1 PTW when invalidating S2 TLBs (Gavin Shan) [1814009] - [arm64] Add ARM64_WORKAROUND_1319367 for all A57 and A72 versions (Gavin Shan) [1814009] - [arm64] kvm: Reorder system register restoration and stage-2 activation (Gavin Shan) [1814009] - [arm64] kvm: arm64: Select TASK_DELAY_ACCT+TASKSTATS rather than SCHEDSTATS (Gavin Shan) [1814009] - [arm64] Retrieve stolen time as paravirtualized guest (Gavin Shan) [1814009] - [arm64] arm/arm64: Make use of the SMCCC 1.1 wrapper (Gavin Shan) [1814009] - [kernel] arm/arm64: Provide a wrapper for SMCCC 1.1 calls (Gavin Shan) [1814009] - [virt] kvm: arm64: Provide VCPU attributes for stolen time (Gavin Shan) [1814009] - [virt] kvm: arm64: Support stolen time reporting via shared structure (Gavin Shan) [1814009] - [virt] kvm: arm64: Implement PV_TIME_FEATURES call (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Factor out hypercall handling from PSCI code (Gavin Shan) [1814009] - [documentation] kvm: arm64: Document PV-time interface (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Allow user injection of external data aborts (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Allow reporting non-ISV data aborts to userspace (Gavin Shan) [1814009] - [arm64] errata: use arm_smccc_1_1_get_conduit() (Gavin Shan) [1814009] - [kernel] arm/arm64: smccc/psci: add arm_smccc_1_1_get_conduit() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Fix ptrauth ID register masking logic (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add capability to advertise ptrauth for guest (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add userspace flag to enable pointer authentication (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Context-switch ptrauth registers (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add a vcpu flag to control ptrauth for guest (Gavin Shan) [1814009] - [tools] selftests: kvm: s390: fix format strings for access reg test (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: make syncregs more reliable on s390 (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: drop vcpu_setup from s390x (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add support for vcpu_args_set to aarch64 and s390x (Vitaly Kuznetsov) [1813987] - [iommu] amd: Fix IOMMU AVIC not properly update the is_run bit in IRTE (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Fix kernel crash with PR KVM (Vitaly Kuznetsov) [1813987] - [x86] cpu: Print "VMX disabled" error message iff KVM is enabled (Vitaly Kuznetsov) [1813987] - [tools] redhat: update kvm/x86 headers in tools (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: fix crash cleanup when KVM wasn't used (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Filter out the broadcast dest for IPI fastpath (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: don't clear mtf_pending when nested events are blocked (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove unnecessary exception trampoline in vmx_vmenter (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Split svm_vcpu_run inline assembly to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move SEV code to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move AVIC code to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move Nested SVM Implementation to nested.c (Vitaly Kuznetsov) [1813987] - [x86] kvm svm: Move SVM related files to own sub-directory (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix a missing-prototypes "vmread_error" (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix BUILD_BUG() in __cpuid_entry_get_reg() w/ CONFIG_UBSAN=y (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add a trampoline to fix VMREAD error handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Annotate svm_x86_ops as __initdata (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Annotate vmx_x86_ops as __initdata (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop __exit from kvm_x86_ops' hardware_unsetup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Copy kvm_x86_ops by value to eliminate layer of indirection (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Set kvm_x86_ops only after ->hardware_setup() completes (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Configure runtime hooks using vmx_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Move hardware_setup() definition below vmx_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move init-only kvm_x86_ops to separate struct (Vitaly Kuznetsov) [1813987] - [virt] kvm: Pass kvm_init()'s opaque param to additional arch funcs (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Fix cosmetic copy-paste error in vm_mem_region_move() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix out of range accesses to memslots (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Micro-optimize IPI fastpath delay (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Delay read msr data iff writes ICR MSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Narrow down the IPI fastpath to single target IPI (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Gracefully handle faults on VMXON (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fold loaded_vmcs_init() into alloc_loaded_vmcs() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Always VMCLEAR in-use VMCSes during crash with kexec support (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: add command line switch '-c' to log in csv format (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: add command line switch '-s' to set update interval (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: switch to argparse (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: rework command line sequence and message texts (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: don't allow memory operands for inline asm that modifies SP (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Mark hrtimer for period or oneshot mode to expire in hard interrupt context (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Issue WBINVD after deactivating an SEV guest (Vitaly Kuznetsov) [1813987] - [documentation] kvm: svm: document KVM_MEM_ENCRYPT_OP, let userspace detect if SEV is available (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove bogus user-triggerable WARN_ON (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rework timespec functions and usage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Code style cleanup in kvm_arch_dev_ioctl() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add blurb to CPUID tracepoint when using max basic leaf values (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add requested index to the CPUID tracepoint (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: check for EFER.SVME=1 before entering guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: remove side effects from nested_vmx_exit_reflected (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: access regs array in vmenter.S in its natural order (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: enlightened VMPTRLD with an incorrect GPA (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: test enlightened vmenter with wrong eVMCS version (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: define and use EVMCS_VERSION (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: properly handle errors in nested_vmx_handle_enlightened_vmptrld() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: stop abusing need_vmcs12_to_shadow_sync for eVMCS mapping (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Uses TEST_FAIL in tests/utilities (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Introduce the TEST_FAIL macro (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce steal-time test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: virt_map should take npages, not size (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Use consistent message for test skipping (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Enable printf format warnings for TEST_ASSERT (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Share common API documentation (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: svm: Add vmcall test to gitignore (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Remove an obsolete comment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: correct meaningless kvm_apicv_activated() check (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Consolidate nested MTF checks to helper function (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Micro-optimize vmexit time when not exposing PMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Introduce GA Log tracepoint for AVIC (Vitaly Kuznetsov) [1813987] - [documentation] kvm: documentation: Update fast page fault for indirect sp (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: avoid loss of pending IRQ/NMI before entering L2 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: implement check_nested_events for interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: ignore L1 interrupt window while running L2 with V_INTR_MASKING=1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: do not change host intercepts while nested VM is running (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: rename set_cr3 callback and related flags to load_mmu_pgd (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: unify callbacks to load paging root (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor kvm_cpuid() param that controls out-of-range logic (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor out-of-range logic to contain the madness (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix CPUID range checks for Hypervisor and Centaur classes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add helpers to perform CPUID-based guest vendor check (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Trace the original requested CPUID function in kvm_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: cpuid: add support for supervisor states (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move nSVM CPUID 0x8000000A handling into common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Advertise and enable NRIPS for L1 iff nrips is enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Expose SVM features to L1 iff nested is enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move VMX's host_efer to common x86 code (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop largepages_enabled and its accessor/mutator (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't propagate MMU lpage support to memslot.disallow_lpage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Configure max page level during hardware setup (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Merge kvm_{enable, disable}_tdp() into a common function (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Refactor logging of NPT enabled/disabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Directly query Intel PT mode when refreshing PMUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check for Intel PT MSR virtualization using KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Directly use VMX capabilities helper to detect RDTSCP support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to detect MSR_TSC_AUX virt support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Do kvm_cpuid_array capacity checks in terminal functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use kvm_cpu_caps to detect Intel PT support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Set emulated/transmuted feature bits via kvm_cpu_caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Override host CPUID results with kvm_cpu_caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Do host CPUID at load time to mask KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove stateful CPUID handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Squash CPUID 0x2.0 insanity for modern CPUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove the unnecessary loop on CPUID 0x7 sub-leafs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold CPUID 0x7 masking back into __do_cpuid_func() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to track UMIP emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to mark CR4.LA57 as not-reserved (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add a helper to check kernel support when setting cpu cap (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move XSAVES CPUID adjust to VMX's KVM cpu cap update (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Convert feature updates from CPUID to KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Convert feature updates from CPUID to KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce kvm_cpu_caps to replace runtime CPUID masking (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor handling of XSAVES CPUID adjustment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: handle GBPAGE CPUID adjustment for EPT with generic code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle Intel PT CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle RDTSCP CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle PKU CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle UMIP emulation CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle INVPCID CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle MPX CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor cpuid_mask() to auto-retrieve the register (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce cpuid_entry_{change, set, clear}() mutators (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce cpuid_entry_{get, has}() accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Replace bare "unsigned" with "unsigned int" in cpuid helpers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use u32 for holding CPUID register value in helpers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop explicit @func param from ->set_supported_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clear output regs for CPUID 0x14 if PT isn't exposed to guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Make kvm_mpx_supported() an inline function (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use supported_xcr0 to detect MPX support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Calculate the supported xcr0 mask at load time (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helpers to query Intel PT mode (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use common loop iterator when handling CPUID 0xD.N (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop redundant array size check (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Encapsulate CPUID entries and metadata in struct (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor CPUID 0x4 and 0x8000001d handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Hoist loop counter and terminator to top of __do_cpuid_func() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Consolidate CPUID array max num entries checking (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop redundant boot cpu checks on SSBD feature bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop the explicit @index from do_cpuid_7_mask() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clean up CPUID 0x7 sub-leaf loop (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor CPUID 0xD.N sub-leaf entry creation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Warn on zero-size save state for valid CPUID 0xD.N sub-leaf (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check for CPUID 0xD.N support before validating array size (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move CPUID 0xD.1 handling out of the index>0 loop (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check userspace CPUID array size after validating sub-leaf (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clean up error handling in kvm_dev_ioctl_get_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Simplify handling of Centaur CPUID leafs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor loop around do_cpuid_func() to separate helper (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Return -E2BIG when KVM_GET_SUPPORTED_CPUID hits max entries (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Shrink the usercopy region of the emulation context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move kvm_emulate.h into KVM's private directory (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Dynamically allocate per-vCPU emulation context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move emulation-only helpers to emulate.c (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Explicitly pass an exception struct to check_intercept (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor I/O emulation helpers to provide vcpu-only variant (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop gfn_to_pfn_atomic() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix warning due to implicit truncation on 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Drop unnecessary check on ept caps for execute-only (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rename kvm_mmu->get_cr3() to ->get_guest_pgd() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Rename EPTP validity helper and associated variables (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Rename nested_ept_get_cr3() to nested_ept_get_eptp() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Allow L1 to use 5-level page walks for nested EPT (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Don't drop level/direct from MMU role calculation (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Support dirty log initial-all-set test (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Properly handle userspace interrupt window request (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: trigger kvmclock sync request just once on VM creation (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Recalculate apic map in batch (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some obsolete comments (Vitaly Kuznetsov) [1813987] - [virt] kvm: x86: enable dirty log gradually in small chunks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Reuse the current root if possible for fast switch (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Ignore guest CR3 on fast root switch for direct MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Inhibit APIC virtualization for X2APIC guest (Vitaly Kuznetsov) [1813987] - [virt] kvm: Remove unnecessary asm/kvm_host.h includes (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Fix unknown ucall command asserts (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Consolidate VM allocation and free for VMX and SVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Directly return __vmalloc() result in ->vm_alloc() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Gracefully handle __vmalloc() failure during VM allocation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Adjust counter sample period after a wrmsr (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Consolidate open coded variants of memslot TLB flushes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Use range-based TLB flush for dirty log memslot flush (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move kvm_arch_flush_remote_tlbs_memslot() to mmu.c (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add test for KVM_SET_USER_MEMORY_REGION (Vitaly Kuznetsov) [1813987] - [virt] kvm: Dynamically size memslot array based on number of used slots (Vitaly Kuznetsov) [1813987] - [virt] kvm: Terminate memslot walks via used_slots (Vitaly Kuznetsov) [1813987] - [virt] kvm: Ensure validity of memslot with respect to kvm_get_dirty_log() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Provide common implementation for generic dirty log functions (Vitaly Kuznetsov) [1813987] - [virt] kvm: Clean up local variable usage in __kvm_set_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Simplify kvm_free_memslot() and all its descendents (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move memslot deletion to helper function (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Free arrays for old memslot when moving memslot's base gfn (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop "const" attribute from old memslot in commit_memory_region() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move setting of memslot into helper routine (Vitaly Kuznetsov) [1813987] - [virt] kvm: Refactor error handling for setting memory region (Vitaly Kuznetsov) [1813987] - [virt] kvm: Explicitly free allocated-but-unused dirty bitmap (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_create_memslot() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move memslot memory allocation into prepare_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate memslot resources during prepare_memory_region() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Don't free new memslot if allocation of said memslot fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: Reinstall old memslots if arch preparation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate new rmap and large page tracking when moving memslot (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move gpa_val and gpa_available into the emulator context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add EMULTYPE_PF when emulation is triggered by a page fault (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: remove unused function apic_lvt_vector() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add 'else' to split mutually exclusive case (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: eliminate some unreachable code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix print format and coding style (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: rewrite the comment in vmx_get_mt_mask (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Convert some printf's to pr_info's (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rework debug message printing (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Time guest demand paging (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Support multiple vCPUs in demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Pass args to vCPU in global vCPU args struct (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add memory size parameter to the demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add configurable demand paging delay (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add demand paging content to the demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Create a demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce num-pages conversion utilities (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce vm_guest_mode_params (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rename vm_guest_mode_params (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: aarch64: Remove unnecessary ifdefs (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Remove unnecessary defines (Vitaly Kuznetsov) [1813987] - [tools] redhat: selftests: kvm: add SPDX-License-Identifier (Vitaly Kuznetsov) [1813987] - [x86] redhat: kvm: x86: add SPDX-License-Identifier (Vitaly Kuznetsov) [1813987] - [x86] x86 kvm page table walks: switch to explicit __get_user() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: avoid NULL pointer dereference with incorrect EVMCS GPAs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Initializing all kvm_lapic_irq fields in ioapic_write_indirect (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Condition ENCLS-exiting enabling on CPU support for SGX1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix Kconfig menu text for -Werror (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove stale comment from struct x86_emulate_ctxt (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix the svm vmexit code for WRMSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix dereference null cpufreq policy (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: limit the number of "kvm: disabled by bios" messages (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid useless copy of cpufreq policy (Vitaly Kuznetsov) [1813987] - [x86] kvm: allow disabling -Werror (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: allow compiling as non-module with W=1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: Pre-allocate 1 cpumask variable per cpu for both pv tlb and pv ipis (Vitaly Kuznetsov) [1813987] - [x86] kvm: Introduce pv check helpers (Vitaly Kuznetsov) [1813987] - [kernel] kvm: let declaration of kvm_get_running_vcpus match implementation (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: allocate AVIC data structures based on kvm_amd module parameter (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Emulate MTF when performing instruction emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix error handling in svm_hardware_setup (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix potential memory leak in svm_cpu_init() (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: avoid calculating pending eoi from an uninitialized val (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: clear PIN_BASED_POSTED_INTR from nested pinbased_ctls only when apicv is globally disabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: handle nested posted interrupts when apicv is disabled for L1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: svm: Fix NULL pointer dereference when AVIC not enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Hold KVM's srcu lock when syncing vmcs12->shadow (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI (Vitaly Kuznetsov) [1813987] - [x86] kvm/emulate: fix a -Werror=cast-function-type (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix incorrect comparison in trace event (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Fix some obsolete comments and grammar error (Vitaly Kuznetsov) [1813987] - [kernel] kvm: x86: fix missing prototypes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: enable -Werror (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: guest-halt-polling.txt convert to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: review-checklist.txt: rename to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert timekeeping.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert s390-diag.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert ppc-pv.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert nested-vmx.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert mmu.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert locking.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert hypercalls.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: arm/psci.txt: convert to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert arm/hyp-abi.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert api.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/xive.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/xics.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vm.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vfio.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vcpu.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/s390_flic.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/mpic.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/arm-vgit.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: devices/arm-vgit-v3.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: devices/arm-vgic-its.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: Convert msr.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: convert halt-polling.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: add arm/pvtime.rst to index.rst (Vitaly Kuznetsov) [1813987] - [documentation] docs: virtual: add it to the documentation body (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix WARN_ON check of an unsigned less than zero (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Remove unused x86_register enum (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fix struct guest_walker arrays for 5-level paging (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use correct root level for nested EPT shadow page tables (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Fix some comment typos and coding style (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Avoid retpoline on ->page_fault() with TDP (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: reuse smp_wmb() in kvm_make_request() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove duplicated KVM_REQ_EVENT request (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: svm: Add vmcall test (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: AMD Nested test infrastructure (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Replace get_{gdt, idt}_base() by get_{gdt, idt}() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Deliver exception payload on KVM_GET_VCPU_EVENTS (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Handle pending #DB when injecting INIT VM-exit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Mask off reserved bit from #DB exception payload (Vitaly Kuznetsov) [1813987] - [virt] kvm: Disable preemption in kvm_get_running_vcpu() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: delete meaningless vmx_decache_cr0_guest_bits() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Mark CR4.UMIP as reserved based on associated CPUID bit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix perfctr WRMSR for running counters (Vitaly Kuznetsov) [1813987] - [x86] kvm: mmu: Separate generating and setting mmio ptes (Vitaly Kuznetsov) [1813987] - [x86] kvm: mmu: Replace unsigned with unsigned int for PTE access (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Remove stale comment from nested_vmx_load_cr3() (Vitaly Kuznetsov) [1813987] - [x86] kvm: do not setup pv tlb flush when not paravirtualized (Vitaly Kuznetsov) [1813987] - [x86] Add "nopv" parameter to disable PV extensions (Vitaly Kuznetsov) [1813987] - [virt] kvm: fix overflow of zero page refcount with ksm running (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Take a u64 when checking for a valid dr7 value (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: use raw clock values consistently (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: reorganize pvclock_gtod_data members (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: delete meaningless nested_vmx_run() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: allow AVIC without split irqchip (Vitaly Kuznetsov) [1813987] - [x86] kvm: ioapic: Lazy update IOAPIC EOI (Vitaly Kuznetsov) [1813987] - [x86] kvm: ioapic: Refactor kvm_ioapic_update_eoi() (Vitaly Kuznetsov) [1813987] - [x86] kvm: i8254: Deactivate APICv when using in-kernel PIT re-injection mode (Vitaly Kuznetsov) [1813987] - [x86] svm: Temporarily deactivate AVIC during ExtINT handling (Vitaly Kuznetsov) [1813987] - [x86] svm: Deactivate AVIC when launching guest with nested SVM support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: hyperv: Use APICv update request interface (Vitaly Kuznetsov) [1813987] - [x86] svm: Add support for dynamic APICv (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce x86 ops hook for pre-update APICv (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce APICv x86 ops for checking APIC inhibit reasons (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: avic: Add support for dynamic setup/teardown of virtual APIC backing page (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: svm: Add support to (de)activate posted interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add APICv (de)activate request trace points (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add support for dynamic APICv activation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove get_enable_apicv from kvm_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce APICv inhibit reason bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Introduce APICv update helper function (Vitaly Kuznetsov) [1813987] - [iommu] amd: Re-factor guest virtual APIC (de-)activation code (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Add fpu and one reg set/get library functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: Clean up host's steal time structure (Vitaly Kuznetsov) [1813987] - [x86] kvm: Make sure KVM_VCPU_FLUSH_TLB flag is not missed (Vitaly Kuznetsov) [1813987] - [virt] x86/kvm: Cache gfn to pfn translation (Vitaly Kuznetsov) [1813987] - [virt] x86/kvm: Introduce kvm_(un)map_gfn() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use a typedef for fastop functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add 'else' to unify fastop and execute call path (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: inline memslot_valid_for_gpte (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Use huge pages for DAX-backed files (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Remove lpage_is_disallowed() check from set_spte() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fold max_mapping_level() into kvm_mmu_hugepage_adjust() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Zap any compound page when collapsing sptes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Remove obsolete gfn restoration in FNAME(fetch) (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rely on host page tables to find HugeTLB mappings (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Drop level optimization from fast_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Walk host page tables to find THP mappings (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor THP adjust to prep for changing query (Vitaly Kuznetsov) [1813987] - [x86] mm: Introduce lookup_address_in_mm() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Play nice with read-only memslots when querying host page size (Vitaly Kuznetsov) [1813987] - [x86] kvm: Use vcpu-specific gva->hva translation when querying host page size (Vitaly Kuznetsov) [1813987] - [mm] thp: kvm: Explicitly check for THP when populating secondary MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Enforce max_level on HugeTLB mappings (Vitaly Kuznetsov) [1813987] - [virt] kvm: Return immediately if __kvm_gfn_to_hva_cache_init() fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: Clean up __kvm_gfn_to_hva_cache_init() and its callers (Vitaly Kuznetsov) [1813987] - [virt] kvm: Check for a bad hva before dropping into the ghc slow path (Vitaly Kuznetsov) [1813987] - [x86] kvm/x86: export kvm_vector_hashing_enabled() is unnecessary (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: remove duplicated segment cache clear (Vitaly Kuznetsov) [1813987] - [x86] Adding 'else' to reduce checking (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check GUEST_DR7 on vmentry of nested guests (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move running VCPU from ARM to common code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop x86_set_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't take srcu lock in init_rmode_identity_map() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add build-time error check on kvm_run size (Vitaly Kuznetsov) [1813987] - [virt] kvm: Remove kvm_read_guest_atomic() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Perform non-canonical checks in 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: WARN on failure to set IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove unused ctxt param from emulator's FPU accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: revert "kvm: x86: Fix fpu state crash in kvm guest" (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Ensure guest's FPU state is loaded when accessing for emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load, put}_guest_fpu() (Vitaly Kuznetsov) [1813987] - [x86] revert "kvm: x86: Add a WARN on TIF_NEED_FPU_LOAD in kvm_load_guest_fpu()" (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: short-circuit kvm_apic_accept_pic_intr() when pic intr is accepted (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid clearing pending exception event twice (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect exit_reason from being used in Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks in x86.c (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations in pmu.h from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move vcpu->run page allocation out of kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move putting of vcpu->pid to kvm_vcpu_destroy() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_vcpu_init() and kvm_arch_vcpu_uninit() (Vitaly Kuznetsov) [1813987] - [arm64] kvm: arm64: Free sve_state via arm specific hook (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: arm: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: booke: Setup vcpu during kvmppc_core_vcpu_create() (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Manually invoke vcpu setup during kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move guts of kvm_arch_vcpu_setup() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move initialization of preempt notifier to kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Unexport kvm_vcpu_cache and kvm_vcpu_{un}init() (Vitaly Kuznetsov) [1813987] - [s390] kvm: Move vcpu alloc and init invocation to common code (Vitaly Kuznetsov) [1813987] - [virt] kvm: Introduce kvm_vcpu_destroy() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Invoke kvm_vcpu_uninit() immediately prior to freeing vcpu (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Invoke kvm_vcpu_init() before allocating sie_page (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Move guts of kvm_arch_vcpu_init() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add kvm_arch_vcpu_precreate() to handle pre-allocation issues (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Remove kvm_arch_vcpu_free() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [virt] kvm: arm: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move kvm_vcpu_init() invocation to common code (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: e500mc: Move reset of oldpir below call to kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s pr: Allocate book3s and shadow vcpu after common init (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Allocate vcpu struct in common PPC code (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: e500mc: Add build-time assert that vcpu is at offset 0 (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s pr: Free shared page if mmu initialization fails (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s hv: Uninit vCPU if vcore creation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove spurious clearing of async #PF MSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove spurious kvm_mmu_unload() from vcpu destruction path (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move kvm_vcpu_init() invocation to common code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move allocation of pio_data page down a few lines (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move FPU allocation to common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate vcpu struct in common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Use direct vcpu pointer during vCPU create/free (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use direct vcpu pointer during vCPU create/free (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Allocate VPID after initializing VCPU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Free wbinvd_dirty_mask if vCPU creation fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: async_pf: drop kvm_arch_async_page_present wrappers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix overlap between SPTE_MMIO_MASK and generation (Vitaly Kuznetsov) [1813987] - [virt] kvm: Refactor handling of VM debugfs files (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: vmread should not set rflags to specify success in case of #PF (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Micro-optimize nEPT's bad memptype/XWR checks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Reorder the reserved bit check in prefetch_invalid_gpte() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: delete meaningless nested_vmx_prepare_msr_bitmap() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor and rename bit() to feature_bit() macro (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Expand build-time assertion on reverse CPUID usage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add CPUID_7_1_EAX to the reverse CPUID table (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move bit() helper to cpuid.h (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add dedicated emulator helpers for querying CPUID features (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add macro to ensure reserved cr4 bits checks stay in sync (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop special XSAVE handling from guest_cpuid_has() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Ensure all logical CPUs have consistent reserved cr4 bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't let userspace set host-reserved cr4 bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helper to consolidate up PT/RTIT WRMSR fault logic (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add non-canonical check on writes to RTIT address MSRs (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some writing mistakes (Vitaly Kuznetsov) [1813987] - [x86] kvm: hyperv: Fix some typos in vcpu unimpl info (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some grammar mistakes (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some comment typos and missing parentheses (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some out-dated function names in comment (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some wrong function names in comment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: check kvm_pit outside kvm_vm_ioctl_reinject() (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: micro-optimize fixed mode ipi delivery (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: FIXED+PHYSICAL mode single target IPI fastpath (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Allow KVM_INTEL when building for Centaur and/or Zhaoxin CPUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Check for full VMX support when verifying CPU compatibility (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use VMX feature flag to query BIOS enabling (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Drop initialization of IA32_FEAT_CTL MSR (Vitaly Kuznetsov) [1813987] - [x86] cpufeatures: Add flag to track whether MSR IA32_FEAT_CTL is configured (Vitaly Kuznetsov) [1813987] - [x86] cpu: Set synthetic VMX cpufeatures during init_ia32_feat_ctl() (Vitaly Kuznetsov) [1813987] - [x86] cpufeatures: Add EPT_AD feature bit (Vitaly Kuznetsov) [1813987] - [x86] cpu: Detect VMX features on Intel, Centaur and Zhaoxin CPUs (Vitaly Kuznetsov) [1813987] - [x86] vmx: Introduce VMX_FEATURES_* (Vitaly Kuznetsov) [1813987] - [x86] cpu: Clear VMX feature flag if VMX is not fully enabled (Vitaly Kuznetsov) [1813987] - [x86] centaur: Use common IA32_FEAT_CTL MSR initialization (Vitaly Kuznetsov) [1813987] - [x86] mce: WARN once if IA32_FEAT_CTL MSR is left unlocked (Vitaly Kuznetsov) [1813987] - [x86] intel: Initialize IA32_FEAT_CTL MSR at boot (Vitaly Kuznetsov) [1813987] - [tools] x86: Sync msr-index.h from kernel sources (Vitaly Kuznetsov) [1813987] - [tools] selftests, kvm: Replace manual MSR defs with common msr-index.h (Vitaly Kuznetsov) [1813987] - [x86] msr-index: Clean up bit defines for IA32_FEATURE_CONTROL MSR (Vitaly Kuznetsov) [1813987] - [tools] tools arch x86: Grab a copy of the file containing the MSR numbers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: WARN if root_hpa is invalid when handling a page fault (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: WARN on an invalid root_hpa (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move root_hpa validity checks to top of page fault handler (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move calls to thp_adjust() down a level (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move transparent_hugepage_adjust() above __direct_map() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Consolidate tdp_page_fault() and nonpaging_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rename lpage_disallowed to account_disallowed_nx_lpage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Persist gfn_lpage_is_disallowed() to max_level (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Incorporate guest's page level into max level for shadow MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor handling of forced 4k pages in page faults (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor the per-slot level calculation in mapping_level() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor handling of cache consistency with TDP (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move nonpaging_page_fault() below try_async_pf() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fold nonpaging_map() into nonpaging_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move definition of make_mmu_pages_available() up (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add a WARN on TIF_NEED_FPU_LOAD in kvm_load_guest_fpu() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Remove duplicated declaration of kvm_vcpu_kick (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Aesthetic cleanup of handle_vmread and handle_vmwrite (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: VMWRITE checks unsupported field before read-only field (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: VMWRITE checks VMCS-link pointer before VMCS field (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix the spelling of CPU_BASED_USE_TSC_OFFSETTING (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename NMI_PENDING to NMI_WINDOW (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename INTERRUPT_PENDING to INTERRUPT_WINDOW (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix some comment typos (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Convert the last users of "shorthand = 0" to use macros (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix callers of kvm_apic_match_dest() to use correct macros (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop KVM_APIC_SHORT_MASK and KVM_APIC_DEST_MASK (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use APIC_DEST_* macros properly in kvm_lapic_irq.dest_mode (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move irrelevant declarations out of ioapic.h (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix kvm_bitmap_or_dest_vcpus() to use irq shorthand (Vitaly Kuznetsov) [1813987] - [x86] kvm: explicitly set rmap_head->val to 0 in pte_list_desc_remove_entry() (Vitaly Kuznetsov) [1813987] - [virt] kvm: get rid of var page in kvm_set_pfn_dirty() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: remove unreachable statement in vmx_get_msr_feature() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: use CPUID to locate host page table reserved bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature AMD_SSBD (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Stop wasting a page for guest_msrs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix out-of-bounds write in KVM_GET_EMULATED_CPUID (CVE-2019-19332) (Vitaly Kuznetsov) [1813987] - [documentation] documentation: kvm: Fix mention to number of ioctls classes (Vitaly Kuznetsov) [1813987] - [x86] kvm x86: Move kvm cpuid support out of svm (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Relax guest IA32_FEATURE_CONTROL constraints (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Grab KVM's srcu lock when setting nested state (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Open code shared_msr_update() in its only caller (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix jump label out_free_* in kvm_init() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: create mmu/ subdirectory (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Remove unnecessary TLB flushes on L1<->L2 switches when L1 use apic-access-page (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Do not mark vmcs02->apic_access_page as dirty when unpinning (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Assume TLB entries of L1 and L2 are tagged differently if L0 use EPT (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Unexport kvm_vcpu_reload_apic_access_page() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: add CR4_LA57 bit to nested CR4_FIXED1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use semi-colon instead of comma for exit-handlers initialization (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Add support for capturing highest observable L2 TSC (Vitaly Kuznetsov) [1813987] - [x86] tss: Fix and move VMX BUILD_BUG_ON() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename function find_msr() to vmx_find_msr_index() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename NR_AUTOLOAD_MSRS to NR_LOADSTORE_MSRS (Vitaly Kuznetsov) [1813987] - [x86] kvm: nested: Introduce read_and_check_msr_entry() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Expose load IA32_PERF_GLOBAL_CTRL VM-{Entry, Exit} control (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Load GUEST_IA32_PERF_GLOBAL_CTRL MSR on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: mark functions in the header as "static inline" (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use kvm_set_msr to load IA32_PERF_GLOBAL_CTRL on VM-Exit (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check HOST_IA32_PERF_GLOBAL_CTRL on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check GUEST_IA32_PERF_GLOBAL_CTRL on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helper to check reserved bits in IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Simplify loop in kvm_create_max_vcpus test (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: optimization: Requst TLB flush in fast_cr3_switch() instead of do it directly (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Add lazy mechanism to release perf_event per vPMC (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Reuse perf_event to avoid unnecessary pmc_reprogram_counter (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Introduce a new kvm_pmu_ops->msr_idx_to_pmc callback (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Rename pmu_ops callbacks from msr_idx to rdpmc_ecx (Vitaly Kuznetsov) [1813987] - [kernel] perf/core: Provide a kernel-internal interface to pause perf_event (Vitaly Kuznetsov) [1813987] - [kernel] perf/core: Provide a kernel-internal interface to recalibrate event period (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Update vmcs01 TPR_THRESHOLD if L2 changed L1 TPR (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Refactor update_cr8_intercept() (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Remove check if APICv enabled in SVM update_cr8_intercept() handler (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: add helper func to remove duplicate code in kvm_pv_send_ipi (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid unused setup_syscalls_segments call when SYSCALL check failed (Vitaly Kuznetsov) [1813987] - [virt] kvm: mmio: get rid of odd out_err label in kvm_coalesced_mmio_init (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consume pending LAPIC INIT event when exit on INIT_SIGNAL (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Prevent set vCPU into INIT/SIPI_RECEIVED state when INIT are latched (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Evaluate latched_init in KVM_SET_VCPU_EVENTS when vCPU not in SMM (Vitaly Kuznetsov) [1813987] - [x86] kvm: retpolines: x86: eliminate retpoline from svm.c exit handlers (Vitaly Kuznetsov) [1813987] - [x86] kvm: retpolines: x86: eliminate retpoline from vmx.c exit handlers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: optimize more exit handlers in vmx.c (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add a comment describing the /dev/kvm no_compat handling (Vitaly Kuznetsov) [1813987] - [virt] kvm: Forbid /dev/kvm being opened by a compat task when CONFIG_KVM_COMPAT=n (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Reset the three MSR list number variables to 0 in kvm_init_msr_list() (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: fix build with glibc >= 2.30 (Vitaly Kuznetsov) [1813987] - [virt] kvm: mmu: Do not treat ZONE_DEVICE pages as being reserved (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Introduce pi_is_pir_empty() helper (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Do not change PID.NDST when loading a blocked vCPU (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consider PID.PIR to determine if vCPU has pending interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix comment to specify PID.ON instead of PIR.ON (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix initialization of MSR lists (Vitaly Kuznetsov) [1813987] - [virt] kvm: fix placement of refcount initialization (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix NULL-ptr deref after kvm_create_vm fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: get rid of odd out jump label in pdptrs_changed (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: switch KVMCLOCK base to monotonic raw clock (Vitaly Kuznetsov) [1813987] - [virt] kvm: call kvm_arch_destroy_vm if vm creation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm/pmu: Replace rcu_swap_protected() with rcu_replace_pointer() (Vitaly Kuznetsov) [1813987] - [kernel] rcu: Upgrade rcu_swap_protected() to rcu_replace_pointer() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1813987] - [virt] kvm: Allocate memslots and buses before calling kvm_arch_init_vm (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Don't leak L1 MMIO regions to L2 (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix potential wrong physical id in avic_handle_ldr_update (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add separate helper for putting borrowed reference to kvm (Vitaly Kuznetsov) [1813987] - [tools] kvm: tests: Add test to verify MSR_IA32_XSS (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Update svm_xsaves_supported (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move IA32_XSS to kvm_{get, set}_msr_common (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move IA32_XSS-swapping on VM-entry/VM-exit to common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use wrmsr for switching between guest and host IA32_XSS on Intel (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Use wrmsr for switching between guest and host IA32_XSS on AMD (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove unneeded kvm_vcpu variable, guest_xcr0_loaded (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix conditions for guest IA32_XSS support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce vcpu->arch.xsaves_enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename {vmx, nested_vmx}_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Initialize vmx->guest_msrs[] right after allocation (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove vmx->hv_deadline_tsc initialization from vmx_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Write VPID to vmcs when creating vcpu (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Declare kvm_pmu->reprogram_pmi field using DECLARE_BITMAP (Vitaly Kuznetsov) [1813987] - [x86] kvm: remove redundant code in kvm_arch_vm_ioctl (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Modify kvm_x86_ops.get_enable_apicv() to use struct kvm parameter (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold decache_cr3() into cache_reg() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add helpers to test/mark reg availability and dirtiness (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold 'enum kvm_ex_reg' definitions into 'enum kvm_reg' (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add WARNs to detect out-of-bounds register indices (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Optimize vmx_set_rflags() for unrestricted guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consolidate to_vmx() usage in RFLAGS accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Skip GUEST_CR3 VMREAD+VMWRITE if the VMCS is up-to-date (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Always write vmcs02.GUEST_CR3 during nested VM-Enter (Vitaly Kuznetsov) [1813987] - [x86] kvm: clear kvmclock MSR on reset (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix bugon.cocci warnings (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove specialized handling of unexpected exit-reasons (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: fix sync_regs_test with newer gccs (Vitaly Kuznetsov) [1813987] - [virt] kvm: Don't shrink/grow vCPU halt_poll_ns if host side polling is disabled (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: synchronize .gitignore to Makefile (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Expose RDPID in KVM_GET_SUPPORTED_CPUID (Vitaly Kuznetsov) [1813987] - [virt] kvm: Allow kvm_device_ops to be const (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Implement kvm_put_guest() (Vitaly Kuznetsov) [1813987] - [x86] xen: kvm: Gather the definition of emulate prefixes (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: do not blindly clobber registers in guest asm (Vitaly Kuznetsov) [1813987]- [fs] cifs: handle prefix paths in reconnect (Leif Sahlberg) [1814203] - [fs] cifs: use compounding for open and first query-dir for readdir() (Leif Sahlberg) [1814203] - [fs] cifs: create a helper function to parse the query-directory response buffer (Leif Sahlberg) [1814203] - [fs] cifs: prepare SMB2_query_directory to be used with compounding (Leif Sahlberg) [1814203] - [fs] xfs: reflink should force the log out if mounted with wsync (Bill O'Donnell) [1825373] - [fs] xfs: factor out a new xfs_log_force_inode helper (Bill O'Donnell) [1825373] - [fs] xfs: don't ever return a stale pointer from __xfs_dir3_free_read (Bill O'Donnell) [1825373] - [fs] xfs: fix xfs_rmap_has_other_keys usage of ECANCELED (Bill O'Donnell) [1825373] - [fs] xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE (Bill O'Donnell) [1825373] - [fs] xfs: use bitops interface for buf log item AIL flag check (Bill O'Donnell) [1825373] - [fs] xfs: Sanity check flags of Q_XQUOTARM call (Bill O'Donnell) [1825373] - [fs] iomap: iomap that extends beyond EOF should be marked dirty (Bill O'Donnell) [1825373] - [s390] s390/kasan: Fix crash when attaching PCI device (Philipp Rudo) [1827334] - [s390] s390/qeth: fix initialization on old HW (Philipp Rudo) [1780667] - [s390] s390/qeth: vnicc Fix init to default (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix vnicc_is_in_use if rx_bcast not set (Philipp Rudo) [1780667] - [s390] s390/qeth: fix false reporting of VNIC CHAR config failure (Philipp Rudo) [1780667] - [s390] s390/qeth: lock the card while changing its hsuid (Philipp Rudo) [1780667] - [s390] s390/qeth: fix qdio teardown after early init error (Philipp Rudo) [1780667] - [s390] s390/qeth: don't return -ENOTSUPP to userspace (Philipp Rudo) [1780667] - [s390] s390/qeth: fix promiscuous mode after reset (Philipp Rudo) [1780667] - [s390] s390/qeth: handle error due to unsupported transport mode (Philipp Rudo) [1780667] - [s390] s390/qeth: return proper errno on IO error (Philipp Rudo) [1780667] - [s390] s390/qeth: don't check drvdata in sysfs code (Philipp Rudo) [1780667] - [s390] s390/qeth: replace qeth_l3_get_addr_buffer() (Philipp Rudo) [1780667] - [s390] s390/qeth: remove VLAN tracking for L3 devices (Philipp Rudo) [1780667] - [net] net: 8021q: vlan_core: allow use list of vlans for real device (Philipp Rudo) [1780667] - [s390] s390/qeth: consolidate L3 mcast registration code (Philipp Rudo) [1780667] - [s390] s390/qeth: remove gratuitious RX modeset (Philipp Rudo) [1780667] - [s390] s390/qeth: fine-tune L3 mcast locking (Philipp Rudo) [1780667] - [s390] s390/qeth: clean up error path in qeth_core_probe_device() (Philipp Rudo) [1780667] - [s390] s390/qeth: don't cache MAC addresses for multicast IPs (Philipp Rudo) [1780667] - [s390] s390/qeth: use helpers for IP address hashing (Philipp Rudo) [1780667] - [s390] s390/qeth: don't set card state in qeth_qdio_clear_card() (Philipp Rudo) [1780667] - [s390] s390/qeth: consolidate some duplicated HW cmd code (Philipp Rudo) [1780667] - [s390] s390/qeth: keep IRQ disabled until NAPI is really done (Philipp Rudo) [1780667] - [s390] s390/qeth: use QDIO_BUFNR() (Philipp Rudo) [1780667] - [s390] s390/qdio: move SSQD Sniffer mask definition (Philipp Rudo) [1780667] - [s390] s390/qdio: don't attempt IRQ avoidance on Output SBALs (Philipp Rudo) [1780667] - [s390] s390/qdio: simplify thinint device registration (Philipp Rudo) [1780667] - [s390] s390/qdio: add statistics helper macro (Philipp Rudo) [1780667] - [s390] s390/qdio: remove a forward declaration (Philipp Rudo) [1780667] - [s390] s390/qdio: reduce log level for EQBS partial (Philipp Rudo) [1780667] - [s390] s390/qdio: use QDIO_BUFNR() (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix initialization of vnicc cmd masks during set online (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix error handling during VNICC initialization (Philipp Rudo) [1780667] - [s390] s390/qdio: clarify size of the QIB parm area (Philipp Rudo) [1780667] - [s390] s390/qeth: get vnicc sub-cmd type from reply data (Philipp Rudo) [1780667] - [s390] s390/qeth: merge qeth_reply struct into qeth_cmd_buffer (Philipp Rudo) [1780667] - [s390] s390/qeth: keep cmd alive after IO completion (Philipp Rudo) [1780667] - [s390] s390/qeth: use correct length field in SNMP cmd callback (Philipp Rudo) [1780667] - [s390] s390/qeth: propagate length of processed cmd IO data to callback (Philipp Rudo) [1780667] - [s390] s390/qeth: use node_descriptor struct (Philipp Rudo) [1780667] - [s390] s390/cio: move struct node_descriptor to cio.h (Philipp Rudo) [1780667] - [s390] scsi: zfcp: log FC Endpoint Security errors (Philipp Rudo) [1723820] - [s390] scsi: zfcp: enhance handling of FC Endpoint Security errors (Philipp Rudo) [1723820] - [lib] lib/zlib: add zlib_deflate_dfltcc_enabled() function (Philipp Rudo) [1659435] - [lib] s390/boot: add dfltcc= kernel command line parameter (Philipp Rudo) [1659435] - [lib] lib/zlib: add s390 hardware support for kernel zlib_inflate (Philipp Rudo) [1659435] - [s390] s390/boot: rename HEAP_SIZE due to name collision (Philipp Rudo) [1659435] - [lib] lib/zlib: add s390 hardware support for kernel zlib_deflate (Philipp Rudo) [1659435] - [base] mm/memory_hotplug: allow to specify a default online_type (David Hildenbrand) [1038941] - [base] mm/memory_hotplug: convert memhp_auto_online to store an online_type (David Hildenbrand) [1038941] - [mm] mm/memory_hotplug: unexport memhp_auto_online (David Hildenbrand) [1038941] - [hv] hv_balloon: don't check for memhp_auto_online manually (David Hildenbrand) [1038941] - [powerpc] powernv/memtrace: always online added memory blocks (David Hildenbrand) [1038941] - [base] drivers/base/memory: store mapping between MMOP_* and string in an array (David Hildenbrand) [1038941] - [base] drivers/base/memory: map MMOP_OFFLINE to 0 (David Hildenbrand) [1038941] - [base] drivers/base/memory: rename MMOP_ONLINE_KEEP to MMOP_ONLINE (David Hildenbrand) [1038941] - [netdrv] cxgb4: fix adapter crash due to wrong MC size (Vishal Kulkarni) [1813128] - [scsi] scsi: ibmvfc: Don't send implicit logouts prior to NPIV login (Steve Best) [1828725] - [fs] cifs: ignore cached share root handle closing errors (Leif Sahlberg) [1827485] - [fs] cifs: Optimize readdir on reparse points (Leif Sahlberg) [1827485] - [fs] cifs: Adjust indentation in smb2_open_file (Leif Sahlberg) [1827485] - [fs] CIFS: Close cached root handle only if it has a lease (Leif Sahlberg) [1827485] - [fs] SMB3: Fix crash in SMB2_open_init due to uninitialized field in compounding path (Leif Sahlberg) [1827485] - [fs] smb3: fix refcount underflow warning on unmount when no directory leases (Leif Sahlberg) [1827485] - [fs] fs: cifs: Delete usage of timespec64_trunc (Leif Sahlberg) [1827485] - [fs] smb3: improve check for when we send the security descriptor context on create (Leif Sahlberg) [1827485] - [fs] smb3: fix mode passed in on create for modetosid mount option (Leif Sahlberg) [1827485] - [fs] cifs: fix possible uninitialized access and race on iface_list (Leif Sahlberg) [1827485] - [fs] cifs: Fix lookup of SMB connections on multichannel (Leif Sahlberg) [1827485] - [fs] smb3: query attributes on file close (Leif Sahlberg) [1827485] - [fs] smb3: remove unused flag passed into close functions (Leif Sahlberg) [1827485] - [fs] cifs: remove redundant assignment to pointer pneg_ctxt (Leif Sahlberg) [1827485] - [fs] fs: cifs: Fix atime update check vs mtime (Leif Sahlberg) [1827485] - [fs] CIFS: fix a white space issue in cifs_get_inode_info() (Leif Sahlberg) [1827485] - [fs] cifs: update internal module version number (Leif Sahlberg) [1827485] - [fs] cifs: Always update signing key of first channel (Leif Sahlberg) [1827485] - [fs] cifs: Fix retrieval of DFS referrals in cifs_mount() (Leif Sahlberg) [1827485] - [fs] cifs: Fix potential softlockups while refreshing DFS cache (Leif Sahlberg) [1827485] - [fs] cifs: Fix lookup of root ses in DFS referral cache (Leif Sahlberg) [1827485] - [fs] cifs: Fix use-after-free bug in cifs_reconnect() (Leif Sahlberg) [1827485] - [fs] cifs: dump channel info in DebugData (Leif Sahlberg) [1827485] - [fs] smb3: dump in_send and num_waiters stats counters by default (Leif Sahlberg) [1827485] - [fs] cifs: try harder to open new channels (Leif Sahlberg) [1827485] - [fs] CIFS: Properly process SMB3 lease breaks (Leif Sahlberg) [1827485] - [fs] cifs: move cifsFileInfo_put logic into a work-queue (Leif Sahlberg) [1827485] - [fs] cifs: try opening channels after mounting (Leif Sahlberg) [1827485] - [fs] CIFS: refactor cifs_get_inode_info() (Leif Sahlberg) [1827485] - [fs] cifs: switch servers depending on binding state (Leif Sahlberg) [1827485] - [fs] cifs: add server param (Leif Sahlberg) [1827485] - [fs] cifs: add multichannel mount options and data structs (Leif Sahlberg) [1827485] - [fs] cifs: sort interface list by speed (Leif Sahlberg) [1827485] - [fs] CIFS: Fix SMB2 oplock break processing (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -EAGAIN when transport is reconnecting (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Only queue work for error recovery on memory registration (Leif Sahlberg) [1827485] - [fs] smb3: add debug messages for closing unmatched open (Leif Sahlberg) [1827485] - [fs] CIFS: Respect O_SYNC and O_DIRECT flags during reconnect (Leif Sahlberg) [1827485] - [fs] smb3: remove confusing dmesg when mounting with encryption ("seal") (Leif Sahlberg) [1827485] - [fs] cifs: close the shared root handle on tree disconnect (Leif Sahlberg) [1827485] - [fs] CIFS: Return directly after a failed build_path_from_dentry() in cifs_do_create() (Leif Sahlberg) [1827485] - [fs] CIFS: Use common error handling code in smb2_ioctl_query_info() (Leif Sahlberg) [1827485] - [fs] CIFS: Use memdup_user() rather than duplicating its implementation (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -ECONNABORTED when trasnport is not in connected state (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Add messages on RDMA session destroy and reconnection (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -EINVAL when the number of iovs exceeds SMBDIRECT_MAX_SGE (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Invalidate and deregister memory registration on re-send for direct I/O (Leif Sahlberg) [1827485] - [fs] cifs: Don't display RDMA transport on reconnect (Leif Sahlberg) [1827485] - [fs] CIFS: remove set but not used variables 'cinode' and 'netfid' (Leif Sahlberg) [1827485] - [fs] cifs: add support for flock (Leif Sahlberg) [1827485] - [fs] cifs: remove unused variable 'sid_user' (Leif Sahlberg) [1827485] - [fs] cifs: rename a variable in SendReceive() (Leif Sahlberg) [1827485] - [fs] SMB3: Fix persistent handles reconnect (Leif Sahlberg) [1827485] - [fs] fix memory leak in large read decrypt offload (Leif Sahlberg) [1827485] - [fs] cifs: Fix missed free operations (Leif Sahlberg) [1827485] - [fs] cifs: clarify comment about timestamp granularity for old servers (Leif Sahlberg) [1827485] - [fs] cifs: Handle -EINPROGRESS only when noblockcnt is set (Leif Sahlberg) [1827485] - [fs] smb3: remove noisy debug message and minor cleanup (Leif Sahlberg) [1827485] - [fs] fs: cifs: mute -Wunused-const-variable message (Leif Sahlberg) [1827485] - [fs] smb3: cleanup some recent endian errors spotted by updated sparse (Leif Sahlberg) [1827485] - [fs] CIFS: Fix oplock handling for SMB 2.1+ protocols (Leif Sahlberg) [1827485] - [fs] smb3: missing ACL related flags (Leif Sahlberg) [1827485] - [fs] smb3: pass mode bits into create calls (Leif Sahlberg) [1827485] - [fs] smb3: Add missing reparse tags (Leif Sahlberg) [1827485] - [fs] CIFS: fix max ea value size (Leif Sahlberg) [1827485] - [fs] fs/cifs/sess.c: Remove set but not used variable 'capabilities' (Leif Sahlberg) [1827485] - [fs] fs/cifs/smb2pdu.c: Make SMB2_notify_init static (Leif Sahlberg) [1827485] - [fs] smb3: fix leak in "open on server" perf counter (Leif Sahlberg) [1827485] - [fs] smb3: allow decryption keys to be dumped by admin for debugging (Leif Sahlberg) [1827485] - [fs] cifs: update internal module version number (Leif Sahlberg) [1827485] - [fs] cifs: modefromsid: write mode ACE first (Leif Sahlberg) [1827485] - [fs] cifs: cifsroot: add more err checking (Leif Sahlberg) [1827485] - [fs] smb3: add missing worker function for SMB3 change notify (Leif Sahlberg) [1827485] - [fs] cifs: Add support for root file systems (Leif Sahlberg) [1827485] - [fs] cifs: modefromsid: make room for 4 ACE (Leif Sahlberg) [1827485] - [fs] smb3: fix potential null dereference in decrypt offload (Leif Sahlberg) [1827485] - [fs] smb3: allow disabling requesting leases (Leif Sahlberg) [1827485] - [fs] smb3: improve handling of share deleted (and share recreated) (Leif Sahlberg) [1827485] - [fs] smb3: display max smb3 requests in flight at any one time (Leif Sahlberg) [1827485] - [fs] smb3: only offload decryption of read responses if multiple requests (Leif Sahlberg) [1827485] - [fs] cifs: add a helper to find an existing readable handle to a file (Leif Sahlberg) [1827485] - [fs] smb3: enable offload of decryption of large reads via mount option (Leif Sahlberg) [1827485] - [fs] smb3: allow parallelizing decryption of reads (Leif Sahlberg) [1827485] - [fs] smb3: allow skipping signature verification for perf sensitive configurations (Leif Sahlberg) [1827485] - [fs] smb3: add dynamic tracepoints for flush and close (Leif Sahlberg) [1827485] - [fs] smb3: log warning if CSC policy conflicts with cache mount option (Leif Sahlberg) [1827485] - [fs] smb3: add mount option to allow RW caching of share accessed by only 1 client (Leif Sahlberg) [1827485] - [fs] smb3: add some more descriptive messages about share when mounting cache=ro (Leif Sahlberg) [1827485] - [fs] smb3: add mount option to allow forced caching of read only share (Leif Sahlberg) [1827485] - [fs] cifs: fix dereference on ses before it is null checked (Leif Sahlberg) [1827485] - [fs] cifs: use existing handle for compound_op(OP_SET_INFO) when possible (Leif Sahlberg) [1827485] - [fs] cifs: create a helper to find a writeable handle by path name (Leif Sahlberg) [1827485] - [fs] cifs: remove set but not used variables (Leif Sahlberg) [1827485] - [fs] smb3: Incorrect size for netname negotiate context (Leif Sahlberg) [1827485] - [fs] cifs: remove unused variable (Leif Sahlberg) [1827485] - [fs] cifs: remove redundant assignment to variable rc (Leif Sahlberg) [1827485] - [fs] smb3: add missing flag definitions (Leif Sahlberg) [1827485] - [fs] cifs: add passthrough for smb2 setinfo (Leif Sahlberg) [1827485] - [fs] cifs: prepare SMB2_Flush to be usable in compounds (Leif Sahlberg) [1827485] - [fs] cifs: allow chmod to set mode bits using special sid (Leif Sahlberg) [1827485] - [fs] cifs: get mode bits from special sid on stat (Leif Sahlberg) [1827485] - [fs] fs: cifs: cifsssmb: remove redundant assignment to variable ret (Leif Sahlberg) [1827485] - [fs] cifs: fix a comment for the timeouts when sending echos (Leif Sahlberg) [1827485] - [fs] fs: cifs: switch to RC4 library interface (Leif Sahlberg) [1827485] - [fs] smb3: smbdirect no longer experimental (Leif Sahlberg) [1827485] - [fs] cifs: copy_file_range needs to strip setuid bits and update timestamps (Leif Sahlberg) [1827485] - [tools] perf vendor events s390: Add new deflate counters for IBM z15 (Philipp Rudo) [1827333] - [s390] s390/cpum_cf: Add new extended counters for IBM z15 (Philipp Rudo) [1827333] - [s390] s390/zcrypt: use kvmalloc instead of kmalloc for 256k alloc (Philipp Rudo) [1827310] - [s390] s390/pkey/zcrypt: Support EP11 AES secure keys (Philipp Rudo) [1723826] - [s390] s390/zcrypt: extend EP11 card and queue sysfs attributes (Philipp Rudo) [1723826] - [s390] s390/zcrypt: add new low level ep11 functions support file (Philipp Rudo) [1723826] - [s390] s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb (Philipp Rudo) [1723826] - [s390] s390/zcrypt: enable card/domain autoselect on ep11 cprbs (Philipp Rudo) [1723826] - [crypto] crypto/testmgr: enable selftests for paes-s390 ciphers (Philipp Rudo) [1780668] - [s390] s390/pkey: Add support for key blob with clear key value (Philipp Rudo) [1780668] - [s390] s390/crypto: enable clear key values for paes ciphers (Philipp Rudo) [1780668] - [s390] s390/crypto: Rework on paes implementation (Philipp Rudo) [1780668] - [s390] scsi: zfcp: trace FC Endpoint Security of FCP devices and connections (Philipp Rudo) [1723822] - [s390] scsi: zfcp: log FC Endpoint Security of connections (Philipp Rudo) [1723822] - [s390] scsi: zfcp: report FC Endpoint Security in sysfs (Philipp Rudo) [1723822] - [s390] scsi: zfcp: auto variables for dereferenced structs in open port handler (Philipp Rudo) [1723822] - [block] blk-iocost: Fix error on iocost_ioc_vrate_adj (Waiman Long) [1828563] - [s390] s390/ipl: add support to control memory clearing for FCP and CCW re-IPL (Philipp Rudo) [1812985] - [s390] s390: support KPROBES_ON_FTRACE (Philipp Rudo) [1810526] - [s390] s390/ftrace: generate traced function stack frame (Philipp Rudo) [1810526] - [s390] s390/ftrace: save traced function caller (Philipp Rudo) [1810526] - [misc] mei: me: fix irq number stored in hw struct (Tony Camuso) [1822645] - [misc] mei: me: add cedar fork device ids (Tony Camuso) [1822645] - [misc] mei: fix CNL itouch device number to match the spec (Tony Camuso) [1822645] - [misc] misc: Replace zero-length array with flexible-array member (Tony Camuso) [1822645] - [misc] mei: remove unused includes from pci-{me, txe}.c (Tony Camuso) [1822645] - [misc] mei: limit number of bytes in mei header (Tony Camuso) [1822645] - [misc] mei: bus: replace zero-length array with flexible-array member (Tony Camuso) [1822645] - [misc] mei: me: add jasper point DID (Tony Camuso) [1822645] - [misc] mei: hdcp: bind only with i915 on the same PCH (Tony Camuso) [1822645] - [misc] mei: bus: use simple sprintf for sysfs (Tony Camuso) [1822645] - [misc] mei: bus: add more client attributes to sysfs (Tony Camuso) [1822645] - [misc] mei: add trc detection register to sysfs (Tony Camuso) [1822645] - [misc] mei: abstract fw status register read (Tony Camuso) [1822645] - [misc] mei: me: store irq number in the hw struct (Tony Camuso) [1822645] - [misc] mei: me: mei_me_dev_init() use struct device instead of struct pci_dev (Tony Camuso) [1822645] - [misc] mei: me: add comet point V device id (Tony Camuso) [1822645] - [misc] mei: bus: prefix device names on bus with the bus name (Tony Camuso) [1822645] - [misc] mei: me: fix me_intr_clear function name in KDoc (Tony Camuso) [1822645] - [misc] mei: buf: drop 'running hook' debug messages (Tony Camuso) [1822645] - [misc] mei: avoid FW version request on Ibex Peak and earlier (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Fill transcoder index in port info (Tony Camuso) [1822645] - [misc] drm/i915: mei_hdcp: I915 sends ddi index as per ME FW (Tony Camuso) [1822645] - [drm] drm/i915: Attach content type property (Tony Camuso) [1822645] - [drm] drm: Add Content protection type property (Tony Camuso) [1822645] - [misc] mei: me: add Tiger Lake point LP device ID (Tony Camuso) [1822645] - [misc] mei: Use dev_get_drvdata where possible (Tony Camuso) [1822645] - [misc] mei: me: add mule creek canyon (EHL) device ids (Tony Camuso) [1822645] - [misc] mei: no need to check return value of debugfs_create functions (Tony Camuso) [1822645] - [documentation] mei: docs: add hdcp documentation (Tony Camuso) [1822645] - [documentation] mei: docs: add a short description for nfc behind mei (Tony Camuso) [1822645] - [documentation] mei: docs: update mei client bus documentation (Tony Camuso) [1822645] - [documentation] mei: docs: move iamt docs to a iamt.rst file (Tony Camuso) [1822645] - [documentation] mei: docs: move documentation under driver-api (Tony Camuso) [1822645] - [misc] mei: Convert to use DEFINE_SHOW_ATTRIBUTE macro (Tony Camuso) [1822645] - [drm] drm: generic fn converting be24 to cpu and vice versa (Tony Camuso) [1822645] - [misc] mei: expose device state in sysfs (Tony Camuso) [1822645] - [misc] mei: hdcp: use own Kconfig file (Tony Camuso) [1822645] - [misc] mei: adjust the copyright notice in the files (Tony Camuso) [1822645] - [misc] mei/hdcp: Fix SPDX identifiers (Tony Camuso) [1822645] - [misc] mei: convert to SPDX license tags (Tony Camuso) [1822645] - [misc] mei: add missing SPDX tag to mei Kconfig (Tony Camuso) [1822645] - [misc] mei: bus: move hw module get/put to probe/release (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Component framework for I915 Interface (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Closing wired HDCP2.2 Tx Session (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Enabling the HDCP authentication (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify M_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Repeater topology verification and ack (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Prepare Session Key (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify L_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Initiate Locality check (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Store the HDCP Pairing info (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify H_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify Receiver Cert and prepare km (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Initiate Wired HDCP2.2 Tx Session (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Define ME FW interface for HDCP2.2 (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Client driver for HDCP application (Tony Camuso) [1822645] - [misc] mei: bus: whitelist hdcp client (Tony Camuso) [1822645] - [misc] mei: hbm: clean the feature flags on link reset (Tony Camuso) [1822645] - [misc] mei: bus: export to_mei_cl_device for mei client devices drivers (Tony Camuso) [1822645] - [misc] mei: free read cb on ctrl_wr list flush (Tony Camuso) [1822645] - [misc] mei: me: add ice lake point device id (Tony Camuso) [1822645] - [misc] mei: squash single_recv_buf into one bit in client properties (Tony Camuso) [1822645] - [misc] mei: me: add denverton innovation engine device IDs (Tony Camuso) [1822645] - [misc] mei: me: mark LBG devices as having dma support (Tony Camuso) [1822645] - [misc] mei: dma: silent the reject message (Tony Camuso) [1822645] - [misc] mei: me: mark CNP devices as having dma support (Tony Camuso) [1822645] - [misc] mei: bump hbm version to 2.1 (Tony Camuso) [1822645] - [misc] mei: dma ring: implement transmit flow (Tony Camuso) [1822645] - [misc] mei: dma ring: implement rx circular buffer logic (Tony Camuso) [1822645] - [misc] mei: hw: add dma ring control block (Tony Camuso) [1822645] - [misc] mei: hbm: setup dma ring (Tony Camuso) [1822645] - [misc] mei: dma ring buffers allocation (Tony Camuso) [1822645] - [misc] mei: expedite ioctl return on the notify set operation error (Tony Camuso) [1822645] - [misc] mei: flush queues by the host client only (Tony Camuso) [1822645] - [misc] mei: hbm: drop BUG() from the hbm handler (Tony Camuso) [1822645] - [misc] mei: replace POLL* with EPOLL* for write queues (Tony Camuso) [1822645] - [misc] misc: remove redundant include moduleparam.h (Tony Camuso) [1822645] - [misc] mei: bus: need to unlink client before freeing (Tony Camuso) [1822645] - [misc] mei: bus: fix hw module get/put balance (Tony Camuso) [1822645] - [misc] mei: fix use-after-free in mei_cl_write (Tony Camuso) [1822645] - [misc] mei: ignore not found client in the enumeration (Tony Camuso) [1822645] - [misc] mei: restrict dma ring support to hbm version 2.1 (Tony Camuso) [1822645] - [misc] mei: hbm: introduce dma bit in the message header (Tony Camuso) [1822645] - [misc] mei: add support for variable length mei headers (Tony Camuso) [1822645] - [misc] mei: add mei_msg_hdr_init wrapper (Tony Camuso) [1822645] - [misc] mei: move hbuf_depth from the mei device to the hw modules (Tony Camuso) [1822645] - [misc] mei: cleanup slots to data conversions (Tony Camuso) [1822645] - [misc] mei: bus: suppress sign-compare warnings (Tony Camuso) [1822645] - [misc] mei: fix ssize_t to int assignment in read and write ops (Tony Camuso) [1822645] - [misc] mei: use correct type for counter variable in for loops (Tony Camuso) [1822645] - [misc] mei: check for error returned from mei_hbuf_empty_slots() (Tony Camuso) [1822645] - [misc] mei: don't update offset in write (Tony Camuso) [1822645] - [misc] mei: bus: type promotion bug in mei_fwver() (Tony Camuso) [1822645] - [misc] mei: bus: type promotion bug in mei_nfc_if_version() (Tony Camuso) [1822645] - [misc] mei: expose fw version to sysfs (Tony Camuso) [1822645] - [misc] mei: add optional timeout to internal bus recv (Tony Camuso) [1822645] - [misc] mei: remove unused MEI_IAMTHIF_STALL_TIMER define (Tony Camuso) [1822645] - [s390] s390/pci: Fix unexpected write combine on resource (Philipp Rudo) [1827311] - [powerpc] pwerpc/vas: Include linux/types.h in uapi/asm/vas-api.h (Gustavo Duarte) [1725806] - [documentation] Documentation/powerpc: VAS API (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Remove 'pid' in vas_tx_win_attr struct (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Enable and setup GZIP compresstion type (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Make enable code generic to add new GZIP compression type (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Rename nx-842-powernv file name to nx-common-powernv (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Initialize coproc entry with kzalloc (Gustavo Duarte) [1725806] - [crypto] crypto: nx - Add of_node_put() before return in 842 (Gustavo Duarte) [1725806] - [crypto] crypto/NX: Set receive window credits to max number of CRBs in RxFIFO (Gustavo Duarte) [1725806] - [powerpc] crypto/nx: Initialize 842 high and normal RxFIFO control registers (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Add VAS user space API (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Define VAS_TX_WIN_OPEN ioctl API (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Initialize window attributes for GZIP coprocessor type (Gustavo Duarte) [1725806] - [powerpc] powerpc: Use mm_context vas_windows counter to issue CP_ABORT (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Free send window in VAS instance after credits returned (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Display process stuck message (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Do not use default credits for receive window (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Print CRB and FIFO values (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Return credits after handling fault (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Update CSB and notify process for fault CRBs (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Setup thread IRQ handler per VAS instance (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Take reference to PID and mm for user space windows (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Register NX with fault window ID and IRQ port value (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Setup fault window per VAS instance (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Alloc and setup IRQ and trigger port (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Define nx_fault_stamp in coprocessor_request_block (Gustavo Duarte) [1725806] - [powerpc] powerpc/xive: Define xive_native_alloc_irq_on_chip() (Gustavo Duarte) [1725806] - [powerpc] powerpc/powernv: remove the unused vas_win_paste_addr and vas_win_id functions (Gustavo Duarte) [1725806] - [tools] intel-speed-select: Fix speed-select-base-freq-properties output on CLX-N (Prarit Bhargava) [1828306] - [tools] tools/power/x86/intel-speed-select: Fix CLX-N package information output (Prarit Bhargava) [1828306] - [kernel] sched/isolation: Allow "isolcpus=" to skip unknown sub-parameters (Peter Xu) [1799014] - [arm64] arm64: tlb: skip tlbi broadcast, fix speculative tlb lookups (Andrea Arcangeli) [1820817] - [x86] pci: hv: Introduce hv_msi_entry (Mohammed Gamal) [1816740] - [pci] hv: Move retarget related structures into tlfs header (Mohammed Gamal) [1816740] - [pci] hv: Move hypercall related definitions into tlfs header (Mohammed Gamal) [1816740] - [pci] hv: Reorganize the code in preparation of hibernation (Mohammed Gamal) [1816740] - [pci] hv: Add a Hyper-V PCI interface driver for software backchannel interface (Mohammed Gamal) [1816740] - [pci] hv: Add a paravirtual backchannel in software (Mohammed Gamal) [1816740]- [include] i2c: fix a doc warning (David Arcari) [1826759] - [i2c] i2c: acpi: put device when verifying client fails (David Arcari) [1826759] - [i2c] i2c: i2c-core-of: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: i2c-core-base: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: i2c-core-acpi: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: fix bus recovery stop mode timing (David Arcari) [1826759] - [i2c] i2c: core: Use DEVICE_ATTR_*() helper macros (David Arcari) [1826759] - [include] i2c: remove unneeded 'extern' from function declatations (David Arcari) [1826759] - [include] i2c: add helper to check if a client has a driver attached (David Arcari) [1826759] - [include] i2c: fix header file kernel-doc warning (David Arcari) [1826759] - [misc] eeprom: at24: use devm_i2c_new_dummy_device() (David Arcari) [1826759] - [i2c] i2c: remove i2c_new_dummy() API (David Arcari) [1826759] - [media] media: dvb-frontends: cxd2820r_core: convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: dvb-frontends: mn88473: convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: dvb-frontends: mn88472: convert to i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83791d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83793d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83781d) convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: ir-kbd-i2c: convert to i2c_new_dummy_device() (David Arcari) [1826759] - [misc] misc: eeprom: max6875: convert to i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83792d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (asb100) convert to i2c_new_dummy_device (David Arcari) [1826759] - [i2c] i2c: replace i2c_new_probed_device with an ERR_PTR variant (David Arcari) [1826759] - [i2c] i2c: smbus: Don't filter out duplicate alerts (David Arcari) [1826759] - [i2c] i2c: of: Populate fwnode in of_i2c_get_board_info() (David Arcari) [1826759] - [i2c] i2c: remove helpers for ref-counting clients (David Arcari) [1826759] - [i2c] i2c: core: fix use after free in of_i2c_notify (David Arcari) [1826759] - [i2c] i2c: acpi: Force bus speed to 400KHz if a Silead touchscreen is present (David Arcari) [1826759] - [i2c] i2c: add support for filters optional properties (David Arcari) [1826759] - [i2c] i2c: slave-eeprom: Add read only mode (David Arcari) [1826759] - [i2c] i2c: slave-eeprom: Add comment about address handling (David Arcari) [1826759] - [i2c] i2c-eeprom_slave: Add support for more eeprom models (David Arcari) [1826759] - [i2c] i2c: make i2c_unregister_device() ERR_PTR safe (David Arcari) [1826759] - [media] i2c: replace i2c_new_secondary_device with an ERR_PTR variant (David Arcari) [1826759] - [i2c] i2c: Drop unneeded check for of_node (David Arcari) [1826759] - [i2c] i2c: core: Tidy up handling of init_irq (David Arcari) [1826759] - [i2c] i2c: core: Move ACPI gpio IRQ handling into i2c_acpi_get_irq (David Arcari) [1826759] - [i2c] i2c: core: Move ACPI IRQ handling to probe time (David Arcari) [1826759] - [i2c] i2c: acpi: Factor out getting the IRQ from ACPI (David Arcari) [1826759] - [i2c] i2c: acpi: Use available IRQ helper functions (David Arcari) [1826759] - [i2c] i2c: core: Allow whole core to use i2c_dev_irq_from_resources (David Arcari) [1826759] - [i2c] i2c: core: add sysfs header (David Arcari) [1826759] - [i2c] i2c: add newly exported functions to the header, too (David Arcari) [1826759] - [i2c] i2c: mux: add sysfs header (David Arcari) [1826759] - [include] i2c: headers: reformat header comment and update copyright (David Arcari) [1826759] - [include] i2c: headers: update docs about I2C_CLIENT_* (David Arcari) [1826759] - [i2c] i2c: core: always have a named variable in arguments (David Arcari) [1826759] - [include] i2c: headers: always have a named variable in arguments (David Arcari) [1826759] - [include] i2c: headers: don't use 'dev' as adapter variable (David Arcari) [1826759] - [i2c] i2c: mux: Use struct_size() in devm_kzalloc() (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (David Arcari) [1826759] - [i2c] i2c: acpi: export i2c_acpi_find_adapter_by_handle (David Arcari) [1826759] - [media] tua6100: Avoid build warnings (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1826759] - [i2c] i2c: acpi: permit bus speed to be discovered after enumeration (David Arcari) [1826759] - [i2c] i2c: dev: fix potential memory leak in i2cdev_ioctl_rdwr (David Arcari) [1826759] - [include] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (David Arcari) [1826759] - [i2c] treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1826759] - [i2c] i2c: core: add device-managed version of i2c_new_dummy (David Arcari) [1826759] - [i2c] i2c: core: improve return value handling of i2c_new_device and i2c_new_dummy (David Arcari) [1826759] - [i2c] i2c: core: apply 'is_suspended' check for SMBus, too (David Arcari) [1826759] - [i2c] i2c: core: ratelimit 'transfer when suspended' errors (David Arcari) [1826759] - [i2c] i2c: Prevent runtime suspend of adapter when Host Notify is required (David Arcari) [1826759] - [i2c] gcc-9: don't warn about uninitialized variable (David Arcari) [1826759] - [i2c] i2c: mux: populate the new *_atomic callbacks (David Arcari) [1826759] - [i2c] i2c: core: introduce callbacks for atomic transfers (David Arcari) [1826759] - [i2c] i2c: core: use I2C locking behaviour also for SMBUS (David Arcari) [1826759] - [i2c] i2c: core: remove use of in_atomic() (David Arcari) [1826759] - [include] i2c: apply coding style for struct i2c_adapter (David Arcari) [1826759] - [i2c] i2c: add extra check to safe DMA buffer helper (David Arcari) [1826759] - [i2c] i2c: Allow recovery of the initial IRQ by an I2C client device (David Arcari) [1826759] - [i2c] i2c: expand minor range when registering chrdev region (David Arcari) [1826759] - [i2c] i2c: core-smbus: don't trace smbus_reply data on errors (David Arcari) [1826759] - [i2c] i2c: of: Try to find an I2C adapter matching the parent (David Arcari) [1826759] - [include] i2c: acpi: Move I2C bits from acpi.h to i2c.h (David Arcari) [1826759] - [i2c] i2c: dev: prevent adapter retries and timeout being set as minus value (David Arcari) [1826759] - [i2c] i2c: add suspended flag and accessors for i2c adapters (David Arcari) [1826759] - [i2c] treewide: surround Kconfig file paths with double quotes (David Arcari) [1826759] - [i2c] i2c: acpi: Introduce i2c_acpi_get_i2c_resource() helper (David Arcari) [1826759] - [i2c] i2c: acpi: Use ACPI_FAILURE instead of !ACPI_SUCCESS (David Arcari) [1826759] - [i2c] i2c: acpi: Return error pointers from i2c_acpi_new_device() (David Arcari) [1826759] - [i2c] i2c: Clear client->irq in i2c_device_remove (David Arcari) [1826759] - [i2c] i2c: Remove unnecessary call to irq_find_mapping (David Arcari) [1826759] - [i2c] i2c: Fix kerneldoc for renamed i2c dma put function (David Arcari) [1826759] - [i2c] i2c: core: remove level of indentation in i2c_transfer (David Arcari) [1826759] - [i2c] i2c: core: remove outdated DEBUG output (David Arcari) [1826759] - [i2c] i2c: refactor function to release a DMA safe buffer (David Arcari) [1826759] - [i2c] i2c: don't use any __deprecated handling anymore (David Arcari) [1826759] - [i2c] i2c: remove deprecated attach_adapter callback (David Arcari) [1826759] - [i2c] i2c: core: Parse SDA hold time from firmware (David Arcari) [1826759] - [i2c] i2c: quirks: add zero length checks (David Arcari) [1826759] - [i2c] i2c: recovery: make pin init look like STOP (David Arcari) [1826759] - [i2c] i2c: recovery: rename variable for easier understanding (David Arcari) [1826759] - [i2c] i2c: recovery: add get_bus_free callback (David Arcari) [1826759] - [i2c] i2c: recovery: refactor recovery function (David Arcari) [1826759] - [i2c] i2c: recovery: require either get_sda or set_sda (David Arcari) [1826759] - [i2c] i2c: remove i2c_lock_adapter and use i2c_lock_bus directly (David Arcari) [1826759] - [media] media: tda1004x: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: tda18271: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: af9013: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: drxk_hard: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: rtl2830: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [i2c] i2c: mux: pca9541: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [i2c] i2c: mux: make use of __i2c_smbus_xfer (David Arcari) [1826759] - [kvm] KVM: PPC: Book3S HV: Fix H_CEDE return code for nested guests (David Gibson) [1778556] - [block] block/diskstats: more accurate approximation of io_ticks for slow disks (Ming Lei) [1811745] - [scsi] scsi: storvsc: Correctly set number of hardware queues for IDE disk (Cathy Avery) [1816702] - [netdrv] bonding/alb: make sure arp header is pulled before accessing it (Jarod Wilson) [1819408] - [netdrv] bonding/alb: properly access headers in bond_alb_xmit() (Jarod Wilson) [1819408] - [netdrv] bonding: rename AD_STATE_* to LACP_STATE_* (Jarod Wilson) [1819408] - [netdrv] bonding: fix active-backup transition after link failure (Jarod Wilson) [1819408] - [netdrv] bonding: move 802.3ad port state flags to uapi (Jarod Wilson) [1819408] - [netdrv] bonding: fix bond_neigh_init() (Jarod Wilson) [1819408] - [netdrv] bonding: fix state transition issue in link monitoring (Jarod Wilson) [1819408] - [netdrv] bonding: fix potential NULL deref in bond_update_slave_arr (Jarod Wilson) [1819408] - [netdrv] team: Always enable vlan tx offload (Hangbin Liu) [1827017] - [net] netlink: Use netlink header as base to calculate bad attribute offset (Andrea Claudi) [1825252] - [net] netlink: cap max groups which will be considered in netlink_bind() (Andrea Claudi) [1825252] - [net] tcp: repair: fix TCP_QUEUE_SEQ implementation (Paolo Abeni) [1823771] - [net] tcp: fix "old stuff" D-SACK causing SACK to be treated as D-SACK (Paolo Abeni) [1823771] - [net] tcp: refine rule to allow EPOLLOUT generation under mem pressure (Paolo Abeni) [1823771] - [net] tcp: refine tcp_write_queue_empty() implementation (Paolo Abeni) [1823771] - [include] fib: add missing attribute validation for tun_id (Marcelo Leitner) [1823468] - [include] net/flow_dissector: remove unexist field description (Marcelo Leitner) [1823468] - [net] vlan: vlan_changelink() should propagate errors (Marcelo Leitner) [1823468] - [net] af_packet: set defaule value for tmo (Marcelo Leitner) [1823468] - [net] packet: fix data-race in fanout_flow_is_huge() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff refcounting in llc_conn_state_process() (Marcelo Leitner) [1823468] - [net] llc: fix another potential sk_buff leak in llc_ui_sendmsg() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff leak in llc_conn_service() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff leak in llc_sap_state_process() (Marcelo Leitner) [1823468] - [net] openvswitch: Fix conntrack cache with timeout (Patrlck Talbert) [1765587] - [net] openvswitch: Fix log message in ovs conntrack (Patrlck Talbert) [1765587] - [net] openvswitch: use after free in __ovs_ct_free_action() (Patrlck Talbert) [1765587] - [net] openvswitch: Add timeout support to ct action (Patrlck Talbert) [1765587] - [net] netfilter: Export nf_ct_{set, destroy}_timeout() (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: ctnl_timeout_find_get() returns incorrect pointer to type (Patrlck Talbert) [1765587] - [net] netfilter: remove ifdef around cttimeout in struct nf_conntrack_l4proto (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: decouple timeout policy from nfnetlink_cttimeout object (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: move ctnl_untimeout to nf_conntrack (Patrlck Talbert) [1765587] - [netdrv] ipvlan: do not use cond_resched_rcu() in ipvlan_process_multicast() (Davide Caratti) [1822906] - [netdrv] ipvlan: add cond_resched_rcu() while processing muticast backlog (Davide Caratti) [1822906] - [netdrv] ipvlan: don't deref eth hdr before checking it's set (Davide Caratti) [1822906] - [netdrv] ipvlan: do not add hardware address of master to its unicast filter list (Davide Caratti) [1822906] - [include] net/dst: do not confirm neighbor for vxlan and geneve pmtu update (Hangbin Liu) [1755686] - [net] sit: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] vti: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] tunnel: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [include] net/dst: add new function skb_dst_update_pmtu_no_confirm (Hangbin Liu) [1755686] - [netdrv] gtp: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] ip6_gre: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] add bool confirm_neigh parameter for dst_ops.update_pmtu (Hangbin Liu) [1755686] - [net] neigh: support smaller retrans_time settting (Hangbin Liu) [1767282] - [include] net: core: add helper tcp_v6_gso_csum_prep (Josef Oskera) [1818097] - [net] ip_tunnel: fix interface lookup with no key (Guillaume Nault) [1822247] - [net] ipv4: fix a RCU-list lock in inet_dump_fib() (Guillaume Nault) [1822247] - [net] gre: fix uninit-value in __iptunnel_pull_header (Guillaume Nault) [1822247] - [net] netfilter: conntrack: allow insertion of clashing entries (Florian Westphal) [1821404] - [net] netfilter: conntrack: split resolve_clash function (Florian Westphal) [1821404] - [net] netfilter: conntrack: place confirm-bit setting in a helper (Florian Westphal) [1821404] - [net] netfilter: never get/set skb->tstamp (Florian Westphal) [1821404] - [net] netfilter: conntrack: remove two args from resolve_clash (Florian Westphal) [1821404] - [net] netfilter: conntrack: tell compiler to not inline nf_ct_resolve_clash (Florian Westphal) [1821404] - [netdrv] macsec: restrict to ethernet devices (Sabrina Dubroca) [1820524] - [netdrv] macsec: add missing attribute validation for port (Sabrina Dubroca) [1820524] - [net] netns: restore ops before calling ops_exit_list (Ivan Vecera) [1822568] - [net] netns: add pre_exit method to struct pernet_operations (Ivan Vecera) [1822568] - [include] net: dst: Force 4-byte alignment of dst_metrics (Guillaume Nault) [1822148] - [include] net: annotate lockless accesses to sk->sk_napi_id (Guillaume Nault) [1822148] - [net] Fix typo of SKB_SGO_CB_OFFSET (Guillaume Nault) [1822148] - [net] use indirect call wrappers for skb_copy_datagram_iter() (Guillaume Nault) [1822148] - [net] datagram: Make __skb_datagram_iter static (Guillaume Nault) [1822148] - [net] Fix Tx hash bound checking (Guillaume Nault) [1822148] - [net] openvswitch: add missing attribute validation for hash (Eelco Chaudron) [1819202] - [net] openvswitch: Distribute switch variables for initialization (Eelco Chaudron) [1819202] - [net] openvswitch: support asymmetric conntrack (Eelco Chaudron) [1819202] - [net] openvswitch: remove another BUG_ON() (Eelco Chaudron) [1819202] - [net] openvswitch: drop unneeded BUG_ON() in ovs_flow_cmd_build_info() (Eelco Chaudron) [1819202] - [net] openvswitch: don't call pad_packet if not necessary (Eelco Chaudron) [1819202] - [net] openvswitch: add hash info to upcall (Eelco Chaudron) [1819202] - [net] openvswitch: select vport upcall portid directly (Eelco Chaudron) [1819202] - [net] openvswitch: simplify the ovs_dp_cmd_new (Eelco Chaudron) [1819202] - [net] openvswitch: fix possible memleak on destroy flow-table (Eelco Chaudron) [1819202] - [net] openvswitch: add likely in flow_lookup (Eelco Chaudron) [1819202] - [net] openvswitch: simplify the flow_hash (Eelco Chaudron) [1819202] - [net] openvswitch: optimize flow-mask looking up (Eelco Chaudron) [1819202] - [net] openvswitch: optimize flow mask cache hash collision (Eelco Chaudron) [1819202] - [net] openvswitch: shrink the mask array if necessary (Eelco Chaudron) [1819202] - [net] openvswitch: convert mask list in mask array (Eelco Chaudron) [1819202] - [net] openvswitch: add flow-mask cache for performance (Eelco Chaudron) [1819202] - [net] openvswitch: Allow attaching helper in later commit (Eelco Chaudron) [1819202] - [net] openvswitch: change type of UPCALL_PID attribute to NLA_UNSPEC (Eelco Chaudron) [1819202] - [net] openvswitch: Make metadata_dst tunnel work in IP_TUNNEL_INFO_BRIDGE mode (Eelco Chaudron) [1819202] - [netdrv] mlxsw: spectrum_router: Remove unlikely user-triggerable warning (Ivan Vecera) [1821358] - [net] ipv6: Error when route does not have any valid nexthops (Ivan Vecera) [1821358] - [tools] selftests: mlxsw: Add a test for FIB offload indication (Ivan Vecera) [1821358] - [net] ipv6: Stop sending in-kernel notifications for each nexthop (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Create IPv6 multipath routes in one go (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Add / delete multiple IPv6 nexthops (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Pass array of routes to route handling functions (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Adjust IPv6 replace logic to new notifications (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Pass multiple routes to work item (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Prepare function to return errors (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Remove processing of IPv6 append notifications (Ivan Vecera) [1821358] - [net] ipv6: Add IPv6 multipath notification for route delete (Ivan Vecera) [1821358] - [net] ipv6: Add IPv6 multipath notifications for add / replace (Ivan Vecera) [1821358] - [netdrv] netdevsim: Ignore IPv6 multipath notifications (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Ignore IPv6 multipath notifications (Ivan Vecera) [1821358] - [net] ipv6: Extend notifier info for multipath routes (Ivan Vecera) [1821358] - [net] ipv6: export function to send route updates (Ivan Vecera) [1821358] - [net] sctp: fix possibly using a bad saddr with a given dst (Xin Long) [1821578] - [net] sctp: fix refcount bug in sctp_wfree (Xin Long) [1821578] - [net] sctp: move the format error check out of __sctp_sf_do_9_1_abort (Xin Long) [1821578] - [net] Remove switchdev_ops (Ivan Vecera) [1821402] - [net] switchdev: Replace port attr set SDO with a notification (Ivan Vecera) [1821402] - [net] switchdev: Complete removal of switchdev_port_attr_get() (Ivan Vecera) [1821402] - [net] Get rid of switchdev_port_attr_get() (Ivan Vecera) [1821402] - [net] Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT (Ivan Vecera) [1821402] - [net] fib_notifier: move fib_notifier_ops from struct net into per-net struct (Ivan Vecera) [1821186] - [net] Properly unlink GRO packets on overflow. (Ivan Vecera) [1805302] - [net] Add and use skb_list_del_init(). (Ivan Vecera) [1805302] - [net] Add and use skb_mark_not_on_list(). (Ivan Vecera) [1805302] - [net] Init backlog NAPI's gro_hash. (Ivan Vecera) [1805302] - [net] gro: properly remove skb from list (Ivan Vecera) [1805302] - [net] core: trivial netif_receive_skb_list() entry point (Ivan Vecera) [1805302] - [net] Convert GRO SKB handling to list_head. (Ivan Vecera) [1805302] - [net] ipv6: don't auto-add link-local address to lag ports (Jarod Wilson) [1733953] - [tools] selftests: forwarding: vxlan_bridge_1d: use more proper tos value (Hangbin Liu) [1816587] - [tools] selftests: forwarding: vxlan_bridge_1d: fix tos value (Hangbin Liu) [1816587] - [tools] selftests: forwarding: use proto icmp for {gretap, ip6gretap}_mac testing (Hangbin Liu) [1816587] - [tools] fcnal-test: Fix vrf argument in local tcp tests (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for destination IP link-local (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for source IP equals destination IP (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for multicast destination MAC mismatch (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for source IP in class E (Hangbin Liu) [1816587] - [tools] selftests/net: make so_txtime more robust to timer variance (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add speed and auto-negotiation test (Hangbin Liu) [1816587] - [tools] selftests: forwarding: lib.sh: Add wait for dev with timeout (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add ethtool_lib.sh (Hangbin Liu) [1816587] - [tools] selftests: net: avoid ptl lock contention in tcp_mmap (Hangbin Liu) [1816587] - [tools] selftest: net: add alternative names test (Hangbin Liu) [1816587] - [tools] selftest: net: add some traceroute tests (Hangbin Liu) [1816587] - [tools] selftests: net: Fix printf format warnings on arm (Hangbin Liu) [1816587] - [tools] selftests: net: Use size_t and ssize_t for counting file size (Hangbin Liu) [1816587] - [tools] selftests: Make l2tp.sh executable (Hangbin Liu) [1816587] - [tools] selftests/net: add nettest to .gitignore (Hangbin Liu) [1816587] - [tools] selftests: Add test cases for `ip nexthop flush proto XX` (Hangbin Liu) [1816587] - [tools] selftest: A few cleanups for fib_nexthops.sh (Hangbin Liu) [1816587] - [tools] selftests: Fix get_ifidx and callers in nettest.c (Hangbin Liu) [1816587] - [tools] selftests: Fix detection of nettest command in fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add l2tp tests (Hangbin Liu) [1816587] - [tools] selftests: nettest: fix spelling mistake: "potocol" -> "protocol" (Hangbin Liu) [1816587] - [tools] selftests: Add use case section to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 netfilter tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 netfilter tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 runtime tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 runtime tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 address bind tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 address bind tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 udp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 udp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 tcp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 tcp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 ping tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 ping tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Setup for functional tests for fib and socket lookups (Hangbin Liu) [1816587] - [tools] selftests: Add nettest (Hangbin Liu) [1816587] - [tools] selftests/net: add missing gitignores (ipv6_flowlabel) (Hangbin Liu) [1816587] - [tools] selftests: txring_overwrite: fix incorrect test of mmap() return value (Hangbin Liu) [1816587] - [tools] selftests/net: skip psock_tpacket test if KALLSYMS was not enabled (Hangbin Liu) [1816587] - [tools] selftests: rtnetlink: skip ipsec offload tests if netdevsim isn't present (Hangbin Liu) [1816587] - [tools] selftests: Add test cases for nexthop objects (Hangbin Liu) [1816587] - [tools] selftests/net: ipv6 flowlabel (Hangbin Liu) [1816587] - [tools] selftests/net: SO_TXTIME with ETF and FQ (Hangbin Liu) [1816587] - [tools] selftests: fib-onlink: Make quiet by default (Hangbin Liu) [1816587] - [tools] selftests/net: correct the return value for run_afpackettests (Hangbin Liu) [1816587] - [tools] selftests/net: correct the return value for run_netsocktests (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add reverse path forwarding (RPF) test cases (Hangbin Liu) [1816587] - [tools] selftest/net: Remove duplicate header (Hangbin Liu) [1816587] - [tools] selftests: fib_tests: sleep after changing carrier. again. (Hangbin Liu) [1816587] - [tools] selftests: net: use LDLIBS instead of LDFLAGS (Hangbin Liu) [1816587] - [tools] selftests/net: add txring_overwrite (Hangbin Liu) [1816587] - [tools] fib_tests: Add tests for invalid metric on route (Hangbin Liu) [1816587] - [tools] selftests: forwarding: test for bridge sticky flag (Hangbin Liu) [1816587] - [tools] selftests: net: Test headroom handling of ip6_gre devices (Hangbin Liu) [1816587] - [net] Don't disable interrupts in __netdev_alloc_skb() (Andrea Claudi) [1811207] - [net] Don't disable interrupts in napi_alloc_frag() (Andrea Claudi) [1811207] - [net] ipv4: ensure rcu_read_lock() in cipso_v4_error() (Matteo Croce) [1720708] - [net] ipv4: add sanity checks in ipv4_link_failure() (Matteo Croce) [1720708] - [net] ipv4: ensure rcu_read_lock() in ipv4_link_failure() (Matteo Croce) [1720708] - [net] ipv4: recompile ip options in ipv4_link_failure (Matteo Croce) [1720708] - [net] avoid use IPCB in cipso_v4_error (Matteo Croce) [1720708] - [net] Add __icmp_send helper. (Matteo Croce) [1720708] - [net] ipv4: defensive cipso option parsing (Matteo Croce) [1720708] - [net] netfilter: nf_queue: enqueue skbs with NULL dst (Matteo Croce) [1786116]- [powerpc] powerpc/pseries/ddw: Extend upper limit for huge DMA window for persistent memory (Steve Best) [1817596] - [cpuidle] cpuidle: haltpoll: allow force loading on hosts without the REALTIME hint (David Arcari) [1825353] - [cpuidle] cpuidle: dt: Support hierarchical CPU idle states (David Arcari) [1825353] - [of] of: base: Add of_get_cpu_state_node() to get idle states for a CPU node (David Arcari) [1825353] - [cpuidle] cpuidle: Allow idle states to be disabled by default (David Arcari) [1825353] - [cpuidle] cpuidle: Drop unnecessary type cast in cpuidle_poll_time() (David Arcari) [1825353] - [cpuidle] cpuidle: Fix cpuidle_driver_state_disabled() (David Arcari) [1825353] - [cpuidle] cpuidle: use first valid target residency as poll time (David Arcari) [1825353] - [cpuidle] cpuidle: Drop disabled field from struct cpuidle_state (David Arcari) [1825353] - [cpuidle] cpuidle: Pass exit latency limit to cpuidle_use_deepest_state() (David Arcari) [1825353] - [include] cpuidle: Allow idle injection to apply exit latency limit (David Arcari) [1825353] - [thermal] cpuidle: play_idle: Increase the resolution to usec (David Arcari) [1825353] - [cpuidle] cpuidle: Use nanoseconds as the unit of time (David Arcari) [1825353] - [cpuidle] cpuidle: menu: Allow tick to be stopped if PM QoS is used (David Arcari) [1825353] - [cpuidle] cpuidle: Consolidate disabled state checks (David Arcari) [1825353] - [cpuidle] cpuidle: Do not unset the driver if it is there already (David Arcari) [1825353] - [cpuidle] cpuidle: haltpoll: Take 'idle=' override into account (David Arcari) [1825353] - [cpuidle] cpuidle-haltpoll: Enable kvm guest polling when dedicated physical CPUs are available (David Arcari) [1825353] - [fs] gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0 (Abhijith Das) [1655566] - [fs] gfs2: Another gfs2_find_jhead fix (Abhijith Das) [1655566] - [fs] gfs2: read journal in large chunks (Abhijith Das) [1655566] - [fs] gfs2: add a helper function to get_log_header that can be used elsewhere (Abhijith Das) [1655566] - [fs] gfs2: changes to gfs2_log_XXX_bio (Abhijith Das) [1655566] - [fs] gfs2: add more timing info to journal recovery process (Abhijith Das) [1655566] - [mm] mm: hugetlb controller for cgroup v2 (Joel Savitz) [1810728] - [arm64] crypto: arm64/aes-ce - implement 5 way interleave for ECB, CBC and CTR (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce - add 5 way interleave routines (Mark Salter) [1826982] - [arm64] crypto: arm64/sha2-ce - correct digest for empty data in finup (Mark Salter) [1826982] - [arm64] crypto: arm64/sha1-ce - correct digest for empty data in finup (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-neonbs - don't access already-freed walk.iv (Mark Salter) [1826982] - [arm64] crypto: arm64/cbcmac - handle empty messages in same way as template (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - update IV after partial final CTR block (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-neonbs - fix returning final keystream block (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif-ce - cleanup and optimizations (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - register PMULL variants as separate algos (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - remove dead code (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - revert to C code for short inputs (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-neon - bump priority to 150 (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash - register PMULL variants as separate algos (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ccm - don't use an atomic walk needlessly (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ccm - fix bugs in non-NEON fallback routine (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - ensure XTS mask is always loaded (Mark Salter) [1826982] - [arm64] crypto: arm64/aes - fix handling sub-block CTS-CBC inputs (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - improve XTS mask handling (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - add support for CTS-CBC mode (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - revert NEON yield for skciphers (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - remove pointless (u8 *) casts (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - implement non-Crypto Extensions alternative (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - preparatory refactor for 8x8 PMULL version (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-modes - get rid of literal load of addend vector (Mark Salter) [1826982] - [arm64] crypto: arm64/sm4-ce - check for the right CPU feature bit (Mark Salter) [1826982] - [arm64] crypto: arm64/gcm-aes-ce - fix no-NEON fallback code (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-gcm-ce - fix scatterwalk API violation (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-ce - implement 4-way aggregation (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-ce - replace NEON yield check with block limit (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - don't reload key schedule if avoidable (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - implement 2-way aggregation (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - operate on two input blocks at a time (Mark Salter) [1826982] - [mm] mm, slub: prevent kmalloc_node crashes and memory leaks (Rafael Aquini) [1819839] - [mm] mm: slub: be more careful about the double cmpxchg of freelist (Rafael Aquini) [1819839] - [mm] mm: slub: add missing TID bump in kmem_cache_alloc_bulk() (Rafael Aquini) [1819839] - [mm] mm/slub.c: avoid slub allocation while holding list_lock (Rafael Aquini) [1819839] - [mm] mm/slub.c: clean up validate_slab() (Rafael Aquini) [1819839] - [mm] mm: slub: print the offset of fault addresses (Rafael Aquini) [1819839] - [mm] hugetlbfs: don't retry when pool page allocations start to fail (Rafael Aquini) [1727288] - [mm] mm, compaction: raise compaction priority after it withdrawns (Rafael Aquini) [1727288] - [mm] mm, reclaim: cleanup should_continue_reclaim() (Rafael Aquini) [1727288] - [mm] mm, reclaim: make should_continue_reclaim perform dryrun detection (Rafael Aquini) [1727288]- [tools] bpf: selftests: remove test_bpftool_build.sh from TEST_PROGS (Yauheni Kaliuta) [1813365] - [tools] libbpf: Support .text sub-calls relocations (Yauheni Kaliuta) [1813365] - [tools] libbpf: Sanitize global functions (Yauheni Kaliuta) [1813365] - [kernel] workqueue: Add RCU annotation for pwq list walk (Yauheni Kaliuta) [1813365] - [kernel] perf/core: Add SRCU annotation for pmus list walk (Yauheni Kaliuta) [1813365] - [net] kcm: disable preemption in kcm_parse_func_strparser() (Yauheni Kaliuta) [1813365] - [net] kcm: use BPF_PROG_RUN (Yauheni Kaliuta) [1813365] - [kernel] bpf: clarify description for CONFIG_BPF_EVENTS (Yauheni Kaliuta) [1813365] - [lib] test_bpf: Fix a new clang warning about xor-ing two numbers (Yauheni Kaliuta) [1813365] - [include] bpf: add include guard to tnum.h (Yauheni Kaliuta) [1813365] - [tools] libbpf: handle symbol versioning properly for libbpf.a (Yauheni Kaliuta) [1813365] - [net] bpf, devmap: Pass lockdep expression to RCU lists (Yauheni Kaliuta) [1813365] - [tools] libbpf: Fix Makefile' libbpf symbol mismatch diagnostic (Yauheni Kaliuta) [1813365] - [net] xdp: Fix cleanup on map free for devmap_hash map type (Yauheni Kaliuta) [1813365] - [tools] tools, bpf: Fix build for 'make -s tools/bpf O=' (Yauheni Kaliuta) [1813365] - [tools] libbpf: Fix passing uninitialized bytes to setsockopt (Yauheni Kaliuta) [1813365] - [tools] selftests: bpf: Skip write only files in debugfs (Yauheni Kaliuta) [1813365] - [net] xdp: Handle device unregister for devmap_hash map type (Yauheni Kaliuta) [1813365] - [net] ipv4: Add lockdep condition to fix for_each_entry() (Yauheni Kaliuta) [1813365] - [kernel] rcu/sync: Remove custom check for RCU readers (Yauheni Kaliuta) [1813365] - [kernel] rcu: Add support for consolidated-RCU reader checking (Yauheni Kaliuta) [1813365] - [kernel] rcu: Remove redundant debug_locks check in rcu_read_lock_sched_held() (Yauheni Kaliuta) [1813365] - [net] xdp: Prevent overflow in devmap_hash cost calculation for 32-bit builds (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: Add a workaround for asm_inline (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: Fix build for task_fd_query_user.c (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: Don't leak server_fd in test_sockopt_inherit (Yauheni Kaliuta) [1813365] - [tools] tools: bpf: Use !building_out_of_srctree to determine srctree (Yauheni Kaliuta) [1813365] - [net] bpf: Clean up indentation issue in BTF kflag processing (Yauheni Kaliuta) [1813365] - [tools] libbpf: Teach btf_dumper to emit stand-alone anonymous enum definitions (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: adjust strobemeta loop to satisfy latest clang (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: delete unused variables in test_sysctl (Yauheni Kaliuta) [1813365] - [tools] libbpf: fix false uninitialized variable warning (Yauheni Kaliuta) [1813365] - [tools] libbpf: Remove getsockopt() check for XDP_OPTIONS (Yauheni Kaliuta) [1813365] - [net] xdp: Fix race in dev_map_hash_update_elem() when replacing element (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_tcp_rtt (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_inherit (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_multi (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_sk (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: add test__join_cgroup helper (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: precision tracking tests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: fix endianness issues in test_sysctl (Yauheni Kaliuta) [1813365] - [arm64] arm64: bpf: optimize modulo operation (Yauheni Kaliuta) [1813365] - [s390] bpf: s390: add JIT support for bpf line info (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: add missing \n to CHECK_FAIL (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: fix verbose mode garbage (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: Fix a typo in test_offload.py (Yauheni Kaliuta) [1813365] - [net] bpf: fix error check in bpf_tcp_gen_syncookie (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: do not link twice against libbpf.a in Makefile (Yauheni Kaliuta) [1813365] - [tools] tools: bpf: account for generated feature/ and libbpf/ directories (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: improve and check builds for different make invocations (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: ignore make built-in rules for getting kernel version (Yauheni Kaliuta) [1813365] - [s390] bpf: s390: add JIT support for multi-function programs (Yauheni Kaliuta) [1746980 1813365] - [tools] selftests/bpf: remove wrong nhoff in flow dissector test (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove unused ret (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove asserts from subtests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove global fail/success counts (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: test__skip (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add precision tracking test (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: verifier precise tests (Yauheni Kaliuta) [1813365] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1813365] - [net] bpf: introduce verifier internal test flag (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add "bpftool map freeze" subcommand (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: show frozen status for maps (Yauheni Kaliuta) [1813365] - [uapi] bpf: clarify when bpf_trace_printk discards lines (Yauheni Kaliuta) [1813365] - [samples] samples: bpf: syscall_nrs: use mmap2 if defined (Yauheni Kaliuta) [1813365] - [tools] libbpf: use LFS (_FILE_OFFSET_BITS) instead of direct mmap2 syscall (Yauheni Kaliuta) [1813365] - [net] bpf: add new BPF_BTF_GET_NEXT_ID syscall command (Yauheni Kaliuta) [1813365] - [net] bpf: add BTF ids in procfs for file descriptors to BTF objects (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add sockopt clone/inheritance test (Yauheni Kaliuta) [1813365] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1813365] - [net] bpf: support cloning sk storage on accept() (Yauheni Kaliuta) [1813365] - [net] bpf: export bpf_map_inc_not_zero (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add documentation for net attach/detach (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add bash-completion for net attach/detach (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add net detach command to detach XDP on interface (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add net attach command to attach XDP on interface (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: compile with $(EXTRA_WARNINGS) (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add feature check for zlib (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: fix reading from /proc/config.gz (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: xdp_fwd explain bpf_fib_lookup return codes (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: make xdp_fwd more practically usable via devmap lookup (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: xdp_fwd rename devmap name to be xdp_tx_ports (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: drop extra trailing tab (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: test__printf -> printf (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: switch to open_memstream (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add loop test 5 (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add loop test 4 (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: extend sockopt_sk selftest with TCP_CONGESTION use case (Yauheni Kaliuta) [1813365] - [net] bpf: always allocate at least 16 bytes for setsockopt hook (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add support for reporting the effective cgroup progs (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add test for bpf_tcp_gen_syncookie (Yauheni Kaliuta) [1813365] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1813365] - [net] bpf: add bpf_tcp_gen_syncookie helper (Yauheni Kaliuta) [1813365] - [net] tcp: add skb-less helpers to retrieve SYN cookie (Yauheni Kaliuta) [1813365] - [net] tcp: tcp_syn_flood_action read port from socket (Yauheni Kaliuta) [1813365] - [net] tcp: rate limit synflood warnings further (Yauheni Kaliuta) [1813365] - [tools] tools: Add definitions for devmap_hash map type (Yauheni Kaliuta) [1813365] - [tools] tools/libbpf_probes: Add new devmap_hash type (Yauheni Kaliuta) [1813365] - [tools] tools/include/uapi: Add devmap_hash BPF map type (Yauheni Kaliuta) [1813365] - [net] xdp: Add devmap_hash map type for looking up devices by hashed index (Yauheni Kaliuta) [1813365] - [net] xdp: Refactor devmap allocation code for reuse (Yauheni Kaliuta) [1813365] - [include] include/bpf.h: Remove map_insert_ctx() stubs (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert send_signal.c to use subtests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert bpf_verif_scale.c to sub-tests API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: support BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP (Yauheni Kaliuta) [1813365] - [tools] bpf/flow_dissector: support ipv6 flow_label and BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: support BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG (Yauheni Kaliuta) [1813365] - [tools] tools/bpf: sync bpf_flow_keys flags (Yauheni Kaliuta) [1813365] - [net] bpf/flow_dissector: support flags in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813365] - [documentation] bpf/flow_dissector: document flags (Yauheni Kaliuta) [1813365] - [net] bpf/flow_dissector: pass input flags to BPF flow dissector program (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: Add selftests for bpf_perf_event_output (Yauheni Kaliuta) [1813365] - [net] bpf: Allow bpf_skb_event_output for a few prog types (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: remove perf buffer helpers (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: switch trace_output sample to perf_buffer API (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: convert xdp_sample_pkts_user to perf_buffer API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: switch test_tcpnotify to perf_buffer API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert test_get_stack_raw_tp to perf_buffer API (Yauheni Kaliuta) [1813365] - [block] block, bfq: fix use-after-free in bfq_idle_slice_timer_body (Ming Lei) [1823596] - [block] block, bfq: fix overwrite of bfq_group pointer in bfq_find_set_group() (Ming Lei) [1823596] - [block] block, bfq: clarify the goal of bfq_split_bfqq() (Ming Lei) [1823596] - [block] block, bfq: get a ref to a group when adding it to a service tree (Ming Lei) [1823596] - [block] block, bfq: remove ifdefs from around gets/puts of bfq groups (Ming Lei) [1823596] - [block] block, bfq: extend incomplete name of field on_st (Ming Lei) [1823596] - [block] block, bfq: get extra ref to prevent a queue from being freed during a group move (Ming Lei) [1823596] - [block] block, bfq: do not insert oom queue into position tree (Ming Lei) [1823596] - [block] block, bfq: do not plug I/O for bfq_queues with no proc refs (Ming Lei) [1823596] - [block] block, bfq: improve arithmetic division in bfq_delta() (Ming Lei) [1823596] - [block] block/bfq: remove unused bfq_class_rt which never used (Ming Lei) [1823596] - [block] block: Prevent hung_check firing during long sync IO (Ming Lei) [1813383] - [block] brd: check and limit max_part par (Ming Lei) [1790403]- [char] random: silence a lockdep splat with printk() (Brian Masney) [1798900] - [net] SUNRPC: fix krb5p mount to provide large enough buffer in rq_rcvsize (Steve Dickson) [1825388] - [include] percpu-refcount: Use normal instead of RCU-sched" (Waiman Long) [1803822] - [kernel] locking/spinlock/debug: Fix various data races (Waiman Long) [1803822] - [kernel] locktorture: Forgive apparent unfairness if CPU hotplug (Waiman Long) [1803822] - [kernel] locktorture: Use private random-number generators (Waiman Long) [1803822] - [tools] locktorture: Allow CPU-hotplug to be disabled via --bootargs (Waiman Long) [1803822] - [kernel] locking: locktorture: Do not include rwlock.h directly (Waiman Long) [1803822] - [kernel] locktorture: Replace strncmp() with str_has_prefix() (Waiman Long) [1803822] - [kernel] locking/rtmutex: rcu: Add WRITE_ONCE() to rt_mutex ->owner (Waiman Long) [1803822] - [arm64] arm64/spinlock: fix a -Wunused-function warning (Waiman Long) [1803822] - [arm64] locking/osq: Use optimized spinning loop for arm64 (Waiman Long) [1803822] - [kernel] locking/qspinlock: Fix inaccessible URL of MCS lock paper (Waiman Long) [1803822] - [include] string.h: Add str_has_prefix() helper function (Waiman Long) [1803822] - [kernel] futex: Remove {get,drop}_futex_key_refs() (Waiman Long) [1803822] - [kernel] futex: Remove pointless mmgrap() + mmdrop() (Waiman Long) [1803822] - [kernel] futex: Unbreak futex hashing (Waiman Long) [1803822] - [fs] futex: Fix inode life-time issue (Waiman Long) [1803822] - [kernel] futex: Fix kernel-doc notation warning (Waiman Long) [1803822] - [kernel] futex: Prevent exit livelock (Waiman Long) [1803822] - [kernel] futex: Provide distinct return value when owner is exiting (Waiman Long) [1803822] - [include] futex: Add mutex around futex exit (Waiman Long) [1803822] - [kernel] futex: Provide state handling for exec() as well (Waiman Long) [1803822] - [kernel] futex: Sanitize exit state handling (Waiman Long) [1803822] - [kernel] futex: Mark the begin of futex exit explicitly (Waiman Long) [1803822] - [kernel] futex: Set task::futex_state to DEAD right after handling futex exit (Waiman Long) [1803822] - [kernel] futex: Split futex_mm_release() for exit/exec (Waiman Long) [1803822] - [kernel] exit/exec: Seperate mm_release() (Waiman Long) [1803822] - [kernel] futex: Replace PF_EXITPIDONE with a state (Waiman Long) [1803822] - [kernel] futex: Move futex exit handling into futex code (Waiman Long) [1803822] - [kernel] futex: Prevent robust futex exit race (Waiman Long) [1803822] - [kernel] futex: Drop leftover wake_q_add() comment (Waiman Long) [1803822] - [kernel] fork: Provide a function for copying init_mm (Waiman Long) [1803822] - [kernel] y2038: futex: Move compat implementation into futex.c (Waiman Long) [1803822] - [fs] nfsd: Fix races between nfsd4_cb_release() and nfsd4_shutdown_callback() ("J. Bruce Fields") [1797484] - [fs] nfsd: minor 4.1 callback cleanup ("J. Bruce Fields") [1797484] - [video] vgacon: Fix a UAF in vgacon_invert_region (Vladis Dronov) [1818732] {CVE-2020-8647 CVE-2020-8649} - [powerpc] powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs (David Gibson) [1773891] - [clocksource] hyper-v: Make sched clock return nanoseconds correctly (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Set TSC clocksource as default w/ InvariantTSC (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Untangle stimers and timesync from clocksources (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Reserve PAGE_SIZE space for tsc page (Mohammed Gamal) [1816731] - [clocksource] x86/hyperv: Initialize clockevents earlier in CPU onlining (Mohammed Gamal) [1816731] - [x86] hyperv: Allow guests to enable InvariantTSC (Mohammed Gamal) [1816731] - [hv] hv: vmbus: Suspend/resume the synic for hibernation (Mohammed Gamal) [1816731] - [hv] hv: vmbus: Break out synic enable and disable operations (Mohammed Gamal) [1816731] - [x86] hyperv: Set pv_info.name to "Hyper-V" (Mohammed Gamal) [1816731] - [x86] hyperv: Hide pv_ops access for CONFIG_PARAVIRT=n (Mohammed Gamal) [1816731] - [clocksource] hyperv: Enable TSC page clocksource on 32bit (Mohammed Gamal) [1816731] - [clocksource] hyperv: Add Hyper-V specific sched clock function (Mohammed Gamal) [1816731] - [clocksource] hyperv: Allocate Hyper-V TSC page statically (Mohammed Gamal) [1816731] - [clocksource] Continue making Hyper-V clocksource ISA agnostic (Mohammed Gamal) [1816731] - [clocksource] Make Hyper-V clocksource ISA agnostic (Mohammed Gamal) [1816731] - [tools] hv: Reopen the devices if read() or write() returns errors (Mohammed Gamal) [1824182] - [tools] hv: add vmbus testing tool (Mohammed Gamal) [1824182] - [tools] hv: move to tools buildsystem (Mohammed Gamal) [1824182] - [tools] hv: kvp: eliminate 'may be used uninitialized' warning (Mohammed Gamal) [1824182] - [tools] hv: fix typos in toolchain (Mohammed Gamal) [1824182] - [tools] hv: fix KVP and VSS daemons exit code (Mohammed Gamal) [1824182] - [tools] hv: fixed Python pep8/flake8 warnings for lsvmbus (Mohammed Gamal) [1824182] - [tools] hv: kvp: Fix a warning of buffer overflow with gcc 8.0.1 (Mohammed Gamal) [1824182] - [tools] hv: fcopy: set 'error' in case an unknown operation was requested (Mohammed Gamal) [1824182] - [tools] hv: Fix a bug in the key delete code (Mohammed Gamal) [1824182] - [tools] hv: vss: fix loop device detection (Mohammed Gamal) [1824182] - [hv] hv: vmbus: Introduce latency testing (Mohammed Gamal) [1824182] - [tools] hv: update lsvmbus to be compatible with python3 (Mohammed Gamal) [1824182]- [hwtracing] coresight: etm4x: Add kernel configuration for CONTEXTID (Michael Petlan) [1818835] - [samples] samples/bpf: fix build by setting HAVE_ATTR_TEST to zero (Michael Petlan) [1818835] - [tools] perf metricgroup: Fix printing event names of metric group with multiple events (Michael Petlan) [1818835] - [tools] perf script: Fix invalid LBR/binary mismatch error (Michael Petlan) [1818835] - [tools] perf c2c: Fix return type for histogram sorting comparision functions (Michael Petlan) [1818835] - [tools] perf session: Fix decompression of PERF_RECORD_COMPRESSED records (Michael Petlan) [1818835] - [tools] perf tools: Fix time sorting (Michael Petlan) [1818835] - [tools] perf tools: Remove unused trace_find_next_event() (Michael Petlan) [1818835] - [tools] perf scripting engines: Iterate on tep event arrays directly (Michael Petlan) [1818835] - [tools] perf tools: Make usage of test_attr__* optional for perf-sys.h (Michael Petlan) [1818835] - [tools] perf kmem: Fix memory leak in compact_gfp_flags() (Michael Petlan) [1818835] - [tools] perf c2c: Fix memory leak in build_cl_output() (Michael Petlan) [1818835] - [tools] perf tools: Fix mode setting in copyfile_mode_ns() (Michael Petlan) [1818835] - [tools] perf annotate: Fix multiple memory and file descriptor leaks (Michael Petlan) [1818835] - [tools] perf tools: Fix resource leak of closedir() on the error paths (Michael Petlan) [1818835] - [tools] perf evlist: Fix fix for freed id arrays (Michael Petlan) [1818835] - [tools] perf annotate: Don't return -1 for error when doing BPF disassembly (Michael Petlan) [1818835] - [tools] perf annotate: Return appropriate error code for allocation failures (Michael Petlan) [1818835] - [tools] perf annotate: Fix arch specific ->init() failure errors (Michael Petlan) [1818835] - [tools] perf annotate: Propagate the symbol__annotate() error return (Michael Petlan) [1818835] - [tools] perf annotate: Fix the signedness of failure returns (Michael Petlan) [1818835] - [tools] perf annotate: Propagate perf_env__arch() error (Michael Petlan) [1818835] - [tools] perf evsel: Fall back to global 'perf_env' in perf_evsel__env() (Michael Petlan) [1818835] - [tools] perf tools: Propagate get_cpuid() error (Michael Petlan) [1818835] - [tools] perf jevents: Fix period for Intel fixed counters (Michael Petlan) [1818835] - [tools] perf script brstackinsn: Fix recovery from LBR/binary mismatch (Michael Petlan) [1818835] - [tools] perf docs: Correct and clarify jitdump spec (Michael Petlan) [1818835] - [tools] perf inject jit: Fix JIT_CODE_MOVE filename (Michael Petlan) [1818835] - [tools] perf map: Fix overlapped map handling (Michael Petlan) [1818835] - [tools] perf vendor events s390: Use s390 machine name instead of type 8561 (Michael Petlan) [1818835] - [tools] perf llvm: Don't access out-of-scope array (Michael Petlan) [1818835] - [tools] perf docs: Allow man page date to be specified (Michael Petlan) [1818835] - [tools] perf tests: Avoid raising SEGV using an obvious NULL dereference (Michael Petlan) [1818835] - [tools] libsubcmd: Make _FORTIFY_SOURCE defines dependent on the feature (Michael Petlan) [1818835] - [tools] perf unwind: Fix libunwind build failure on i386 systems (Michael Petlan) [1818835] - [tools] perf parser: Remove needless include directives (Michael Petlan) [1818835] - [tools] perf build: Add detection of java-11-openjdk-devel package (Michael Petlan) [1818835] - [tools] perf jvmti: Include JVMTI support for s390 (Michael Petlan) [1818835] - [tools] perf evlist: Fix access of freed id arrays (Michael Petlan) [1818835] - [tools] perf stat: Fix free memory access / memory leaks in metrics (Michael Petlan) [1818835] - [tools] perf tools: Replace needless mmap.h with what is needed, event.h (Michael Petlan) [1818835] - [tools] perf evsel: Move config terms to a separate header (Michael Petlan) [1818835] - [tools] perf evlist: Remove unused perf_evlist__fprintf() method (Michael Petlan) [1818835] - [tools] perf evsel: Introduce evsel_fprintf.h (Michael Petlan) [1818835] - [tools] perf evsel: Remove need for symbol_conf in evsel_fprintf.c (Michael Petlan) [1818835] - [tools] perf copyfile: Move copyfile routines to separate files (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__poll() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__add_pollfd() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__alloc_pollfd() function (Michael Petlan) [1818835] - [tools] libperf: Add libperf_init() call to the tests (Michael Petlan) [1818835] - [tools] libperf: Merge libperf_set_print() into libperf_init() (Michael Petlan) [1818835] - [tools] libperf: Add libperf dependency for tests targets (Michael Petlan) [1818835] - [tools] libperf: Use sys/types.h to get ssize_t, not unistd.h (Michael Petlan) [1818835] - [tools] perf tools: No need to include internal/lib.h from util/util.h (Michael Petlan) [1818835] - [tools] libperf: Move 'page_size' global variable to libperf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__id_add_fd() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__id_add() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__read_format() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__first()/last() functions (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__alloc_id/perf_evsel__free_id functions (Michael Petlan) [1818835] - [tools] libperf: Move 'heads' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'ids' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Move 'id' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Move 'sample_id' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Add missing 'struct xyarray' forward declaration (Michael Petlan) [1818835] - [tools] libperf: Move 'pollfd' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'mmap_len' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'nr_mmaps' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'system_wide' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Add 'flush' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add 'event_copy' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add 'overwrite' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add prev/start/end to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'refcnt' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'cpu' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'fd' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'mask' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add perf_mmap struct (Michael Petlan) [1818835] - [tools] perf evlist: Adopt backwards ring buffer state enum (Michael Petlan) [1818835] - [tools] libperf: Link libapi.a in libperf.so (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__purge() to evlist__purge() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__exit() to evlist__exit() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__alloc_mmap() to evlist__alloc_mmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__munmap() to evlist__munmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__mmap() to evlist__mmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename 'struct perf_mmap' to 'struct mmap' (Michael Petlan) [1818835] - [tools] tools: Add missing stdio.h include to asm/bug.h header (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages for tep plugins APIs (Michael Petlan) [1818835] - [tools] libtraceevent: Move traceevent plugins in its own subdirectory (Michael Petlan) [1818835] - [tools] libtraceevent: Add tep_get_event() in event-parse.h (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages fix, changes in event printing APIs (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages fix, rename tep_ref_get() to tep_get_ref() (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages for libtraceevent event print related API (Michael Petlan) [1818835] - [tools] libtraceevent: Round up in tep_print_event() time precision (Michael Petlan) [1818835] - [tools] perf record: Move restricted maps check to after a possible fallback to not collect kernel samples (Michael Petlan) [1818835] - [tools] perf record: Fix priv level with branch sampling for paranoid=2 (Michael Petlan) [1818835] - [tools] perf probe: Fix to clear tev->nargs in clear_probe_trace_event() (Michael Petlan) [1818835] - [tools] perf probe: Skip same probe address for a given line (Michael Petlan) [1818835] - [tools] perf tests: Fix static build test (Michael Petlan) [1818835] - [tools] perf kvm stat: Set 'trace_cycles' as default event for 'perf kvm record' in powerpc (Michael Petlan) [1818835] - [tools] perf kvm: Add arch neutral function to choose event for perf kvm record (Michael Petlan) [1818835] - [tools] perf kvm: Move kvm-stat header file from conditional inclusion to common include section (Michael Petlan) [1818835] - [tools] perf test: Fix spelling mistake "allos" -> "allocate" (Michael Petlan) [1818835] - [tools] perf stat: Fix a segmentation fault when using repeat forever (Michael Petlan) [1818835] - [tools] perf stat: Reset previous counts on repeat with interval (Michael Petlan) [1818835] - [tools] tools lib traceevent: Convert remaining pusers to p (Michael Petlan) [1818835] - [tools] perf tools: Move event synthesizing routines to separate .c file (Michael Petlan) [1818835] - [tools] perf memswap: Adopt 'struct u64_swap' from evsel.h (Michael Petlan) [1818835] - [tools] perf tools: Move event synthesizing routines to separate header (Michael Petlan) [1818835] - [tools] perf auxtrace: Add missing 'struct perf_sample' forward declaration (Michael Petlan) [1818835] - [tools] perf sched: Add missing event.h include directive (Michael Petlan) [1818835] - [tools] perf annotate: Add missing machine.h include directive (Michael Petlan) [1818835] - [tools] perf hist: Add missing 'struct branch_stack' forward declaration (Michael Petlan) [1818835] - [tools] perf python: Remove debug.h (Michael Petlan) [1818835] - [tools] perf callchain: Remove needless event.h include (Michael Petlan) [1818835] - [tools] perf stat: Move perf_stat_synthesize_config() to event.h (Michael Petlan) [1818835] - [tools] perf event: Move perf_event__synthesize* to event.h (Michael Petlan) [1818835] - [tools] perf env: Remove needless cpumap.h header (Michael Petlan) [1818835] - [tools] perf symbols: Add missing dso.h header (Michael Petlan) [1818835] - [tools] perf probe: Add missing build-id.h header (Michael Petlan) [1818835] - [tools] perf tools: Remove util.h from where it is not needed (Michael Petlan) [1818835] - [tools] perf tools: Remove debug.h from places where it is not needed (Michael Petlan) [1818835] - [tools] perf debug: No need to include ui/util.h (Michael Petlan) [1818835] - [tools] perf tools: Remove needless builtin.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Add PMU event JSON files for ARM Cortex-A76 and, Neoverse N1 (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_cpu_map__max() function (Michael Petlan) [1818835] - [tools] libperf: Add missing event.h file to install rule (Michael Petlan) [1818835] - [tools] perf tests: Add libperf automated test for 'make -C tools/perf build-test' (Michael Petlan) [1818835] - [tools] perf python: Add missing python/perf.so dependency for libperf (Michael Petlan) [1818835] - [tools] perf build: Ignore intentional differences for the x86 insn decoder (Michael Petlan) [1818835] - [tools] perf intel-pt: Use shared x86 insn decoder (Michael Petlan) [1818835] - [tools] objtool: Move x86 insn decoder to a common location (Michael Petlan) [1818835] - [tools] perf intel-pt: Remove inat.c from build dependency list (Michael Petlan) [1818835] - [tools] perf: Update .gitignore file (Michael Petlan) [1818835] - [tools] perf metricgroup: Support multiple events for metricgroup (Michael Petlan) [1818835] - [tools] perf metricgroup: Scale the metric result (Michael Petlan) [1818835] - [tools] perf pmu: Change convert_scale from static to global (Michael Petlan) [1818835] - [tools] perf symbols: Move mem_info and branch_info out of symbol.h (Michael Petlan) [1818835] - [tools] perf auxtrace: Uninline functions that touch perf_session (Michael Petlan) [1818835] - [tools] perf tools: Remove needless evlist.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless evlist.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless thread_map.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless thread.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless map.h include directives (Michael Petlan) [1818835] - [tools] perf probe: No need for symbol.h, symbol_conf is enough (Michael Petlan) [1818835] - [tools] perf tools: Remove needless sort.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Move 'struct events_stats' and prototypes to separate header (Michael Petlan) [1818835] - [tools] perf hist: Remove needless ui/progress.h from hist.h (Michael Petlan) [1818835] - [tools] perf dsos: Move the dsos struct and its methods to separate source files (Michael Petlan) [1818835] - [tools] perf symbols: Move symsrc prototypes to a separate header (Michael Petlan) [1818835] - [tools] perf symbols: Add missing linux/refcount.h to symbol.h (Michael Petlan) [1818835] - [tools] perf symbol: Move C++ demangle defines to the only file using it (Michael Petlan) [1818835] - [tools] perf dso: Adopt DSO related macros from symbol.h (Michael Petlan) [1818835] - [tools] libtraceevent: Change users plugin directory (Michael Petlan) [1818835] - [tools] libtraceevent: Remove tep_register_trace_clock() (Michael Petlan) [1818835] - [tools] libtraceevent, perf tools: Changes in tep_print_event_* APIs (Michael Petlan) [1818835] - [tools] perf event: Remove needless include directives from event.h (Michael Petlan) [1818835] - [tools] perf env: Remove env.h from other headers where just a fwd decl is needed (Michael Petlan) [1818835] - [tools] perf debug: Remove needless include directives from debug.h (Michael Petlan) [1818835] - [tools] perf tools: Remove debug.h from header files not needing it (Michael Petlan) [1818835] - [tools] perf tools: Remove perf.h from source files not needing it (Michael Petlan) [1818835] - [tools] perf tools: Remove needless perf.h include directive from headers (Michael Petlan) [1818835] - [tools] perf time-utils: Adopt rdclock() from perf.h (Michael Petlan) [1818835] - [tools] perf tools: Move everything related to sys_perf_event_open() to perf-sys.h (Michael Petlan) [1818835] - [tools] perf header: Move CPUINFO_PROC to the only file where it is used (Michael Petlan) [1818835] - [tools] perf tools: Remove needless libtraceevent include directives (Michael Petlan) [1818835] - [tools] libperf: Warn when exceeding MAX_NR_CPUS in cpumap (Michael Petlan) [1818835] - [tools] perf c2c: Display proper cpu count in nodes column (Michael Petlan) [1818835] - [tools] tools lib traceevent: Remove unneeded qsort and uses memmove instead (Michael Petlan) [1818835] - [tools] tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure (Michael Petlan) [1818835] - [tools] perf evlist: Use unshare(CLONE_FS) in sb threads to let setns(CLONE_NEWNS) work (Michael Petlan) [1818835] - [tools] libperf: Move 'enum perf_user_event_type' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Rename the PERF_RECORD_ structs to have a "perf" prefix (Michael Petlan) [1818835] - [tools] libperf: Add 'union perf_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_COMPRESSED 'struct compressed_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_FEATURE 'struct feature_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_TIME_CONV 'struct time_conv_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT_ROUND 'struct stat_round_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT 'struct stat_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT_CONFIG 'struct stat_config_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_THREAD_MAP 'struct thread_map_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_SWITCH 'struct context_switch_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_ITRACE_START 'struct itrace_start_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUX 'struct aux_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE_ERROR 'struct auxtrace_error_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE 'struct auxtrace_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE_INFO 'struct auxtrace_info_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_ID_INDEX 'struct id_index_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_BUILD_ID 'struct build_id_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_TRACING_DATA 'struct tracing_data_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_EVENT_TYPE 'struct event_type_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_EVENT_UPDATE 'struct event_update_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_CPU_MAP 'struct cpu_map_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_ATTR 'struct attr_event' to perf/event.h (Michael Petlan) [1818835] - [tools] perf top: Fix event group with more than two events (Michael Petlan) [1818835] - [tools] perf top: Decay all events in the evlist (Michael Petlan) [1818835] - [tools] perf clang: Delete needless util-cxx.h header (Michael Petlan) [1818835] - [tools] perf evlist: Remove needless util.h from evlist.h (Michael Petlan) [1818835] - [tools] perf tools: Remove needless util.h include from builtin.h (Michael Petlan) [1818835] - [tools] perf tools: Warn that perf_event_paranoid can restrict kernel symbols (Michael Petlan) [1818835] - [tools] perf symbols: Use CAP_SYSLOG with kptr_restrict checks (Michael Petlan) [1818835] - [tools] perf evsel: Kernel profiling is disallowed only when perf_event_paranoid > 1 (Michael Petlan) [1818835] - [tools] perf tools: Use CAP_SYS_ADMIN with perf_event_paranoid checks (Michael Petlan) [1818835] - [tools] perf event: Check ref_reloc_sym before using it (Michael Petlan) [1818835] - [tools] perf arch powerpc: Sync powerpc syscall.tbl (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_missing_features::bpf_event to ::bpf (Michael Petlan) [1818835] - [tools] perf tool: Rename perf_tool::bpf_event to bpf (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_event::bpf_event to perf_event::bpf (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_event::ksymbol_event to perf_event::ksymbol (Michael Petlan) [1818835] - [tools] libperf: Rename the PERF_RECORD_ structs to have a "perf" suffix (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_SAMPLE 'struct sample_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_BPF_EVENT 'struct bpf_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_KSYMBOL 'struct ksymbol_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_THROTTLE 'struct throttle_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_READ 'struct read_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_LOST_SAMPLES 'struct lost_samples_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_LOST 'struct lost_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_FORK 'struct fork_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_NAMESPACES 'struct namespaces_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_COMM 'struct comm_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_MMAP2 'struct mmap2_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_MMAP 'struct mmap_event' to perf/event.h (Michael Petlan) [1818835] - [tools] perf script: Fix memory leaks in list_scripts() (Michael Petlan) [1818835] - [tools] perf report: Fix --ns time sort key output (Michael Petlan) [1818835] - [tools] perf report: Use timestamp__scnprintf_nsec() for time sort key (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Reduce perf_event_output() boilerplate (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Introduce helper to get the scratch space (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Postpone tmp map lookup to after pid_filter (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Rename augmented_filename to augmented_arg (Michael Petlan) [1818835] - [tools] perf trace beauty ioctl: Fix off-by-one error in cmd->string table (Michael Petlan) [1818835] - [tools] perf tests: Fixes hang in zstd compression test by changing the source of random data (Michael Petlan) [1818835] - [tools] perf sort: Remove needless headers from sort.h, provide fwd struct decls (Michael Petlan) [1818835] - [tools] perf srcline: Add missing srcline.h header to files needing its defs (Michael Petlan) [1818835] - [tools] perf cacheline: Move cacheline related routines to separate files (Michael Petlan) [1818835] - [tools] perf record: Move record_opts and other record decls out of perf.h (Michael Petlan) [1818835] - [tools] perf stat: Remove needless headers from stat.h (Michael Petlan) [1818835] - [tools] perf cpumap: No need to include perf.h, ditch it (Michael Petlan) [1818835] - [tools] libperf: Fix alignment trap with xyarray contents in 'perf stat' (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__nr/perf_thread_map__pid functions (Michael Petlan) [1818835] - [tools] perf cpumap: Remove needless includes from cpumap.h (Michael Petlan) [1818835] - [tools] perf evsel: Switch to libperf's cpumap.h (Michael Petlan) [1818835] - [tools] perf x86 kvm-stat: Add missing string.h header (Michael Petlan) [1818835] - [tools] perf evsel: util/evsel.h needs stdio.h as it uses FILE (Michael Petlan) [1818835] - [tools] perf evsel: Remove needless stddef.h from util/evsel.h (Michael Petlan) [1818835] - [tools] perf evsel: Remove needless counts.h header from util/evsel.h (Michael Petlan) [1818835] - [tools] perf evsel: Add missing perf/evsel.h header in util/evsel.h (Michael Petlan) [1818835] - [tools] perf scripting python: Add missing counts.h header (Michael Petlan) [1818835] - [tools] perf stat: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf tests: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf script: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf evlist: Add missing xyarray.h header (Michael Petlan) [1818835] - [tools] perf bpf: Add missing xyarray.h header (Michael Petlan) [1818835] - [tools] perf counts: Add missing headers needed for types used (Michael Petlan) [1818835] - [tools] perf evsel: Move xyarray.h from evsel.c to evsel.h to reduce include dep tree (Michael Petlan) [1818835] - [tools] perf metricgroup: Remove needless includes from metricgroup.h (Michael Petlan) [1818835] - [tools] perf kvm s390: Add missing string.h header (Michael Petlan) [1818835] - [tools] perf arm64: Add missing debug.h header (Michael Petlan) [1818835] - [tools] libperf: Move perf's cpu_map__idx() to perf_cpu_map__idx() (Michael Petlan) [1818835] - [tools] libperf: Move perf's cpu_map__empty() to perf_cpu_map__empty() (Michael Petlan) [1818835] - [tools] perf tools: Use perf_cpu_map__nr instead of cpu_map__nr (Michael Petlan) [1818835] - [tools] tools headers: Add missing perf_event.h include (Michael Petlan) [1818835] - [tools] libperf: Fix arch include paths (Michael Petlan) [1818835] - [tools] tools headers: Fixup bitsperlong per arch includes (Michael Petlan) [1818835] - [tools] perf top: Show info message while collecting samples (Michael Petlan) [1818835] - [tools] perf ui browser: Allow specifying message to show when no samples are available to display (Michael Petlan) [1818835] - [tools] perf ui: Introduce non-interactive ui__info_window() function (Michael Petlan) [1818835] - [tools] perf ui: Make 'exit_msg' optional in ui__question_window() (Michael Petlan) [1818835] - [tools] perf cs-etm: Support sample flags 'insn' and 'insnlen' (Michael Petlan) [1818835] - [tools] perf report: Prefer DWARF callstacks to LBR ones when captured both (Michael Petlan) [1818835] - [tools] perf report: Dump LBR callstack data by -D jointly with thread stack (Michael Petlan) [1818835] - [tools] perf record: Enable LBR callstack capture jointly with thread stack (Michael Petlan) [1818835] - [tools] tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file (Michael Petlan) [1818835] - [tools] perf evsel: Add comment for 'idx' member in 'struct perf_sample_id (Michael Petlan) [1818835] - [tools] tools headers: Synchronize linux/bits.h with the kernel sources (Michael Petlan) [1818835] - [tools] tools headers: Grab copy of linux/const.h, needed by linux/bits.h (Michael Petlan) [1818835] - [tools] perf tools: tools/include should come before tools/uapi/include (Michael Petlan) [1818835] - [tools] tools headers: Add limits.h to access __WORDSIZE (Michael Petlan) [1818835] - [tools] perf unwind: Remove unnecessary test (Michael Petlan) [1818835] - [tools] perf unwind: Fix libunwind when tid != pid (Michael Petlan) [1818835] - [tools] perf map: Use zalloc for map_groups (Michael Petlan) [1818835] - [tools] perf report: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf top: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf trace: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf evswitch: Add hint when not finding specified on/off events (Michael Petlan) [1818835] - [tools] perf evswitch: Move enoent error message printing to separate function (Michael Petlan) [1818835] - [tools] perf evswitch: Introduce init() method to set the on/off evsels from the command line (Michael Petlan) [1818835] - [tools] perf evswitch: Introduce OPTS_EVSWITCH() for cmd line processing (Michael Petlan) [1818835] - [tools] perf evswitch: Add the names of on/off events (Michael Petlan) [1818835] - [tools] perf evswitch: Move switch logic to use in other tools (Michael Petlan) [1818835] - [tools] perf evswitch: Move struct to a separate header to use in other tools (Michael Petlan) [1818835] - [tools] perf script: Allow specifying event to switch off processing of other events (Michael Petlan) [1818835] - [tools] perf script: Allow showing the --switch-on event (Michael Petlan) [1818835] - [tools] perf script: Allow specifying event to switch on processing of other events (Michael Petlan) [1818835] - [tools] perf vendor events intel: Add Tremontx event file v1.02 (Michael Petlan) [1818835] - [tools] perf ui: No need to set ui_browser to 1 twice (Michael Petlan) [1818835] - [tools] perf record: Support aarch64 random socket_id assignment (Michael Petlan) [1818835] - [tools] perf.data documentation: Clarify HEADER_SAMPLE_TOPOLOGY format (Michael Petlan) [1818835] - [tools] perf evsel: Provide meaningful warning when trying to use 'aux_output' on older kernels (Michael Petlan) [1818835] - [tools] perf intel-pt: Add brief documentation for PEBS via Intel PT (Michael Petlan) [1818835] - [tools] perf tools: Add aux-output config term (Michael Petlan) [1818835] - [tools] perf intel-pt: Process options for PEBS event synthesis (Michael Petlan) [1818835] - [tools] perf tools: Add itrace option 'o' to synthesize aux-output events (Michael Petlan) [1818835] - [tools] perf tools: Add aux_output attribute flag (Michael Petlan) [1818835] - [tools] perf record: Add an option to take an AUX snapshot on exit (Michael Petlan) [1818835] - [tools] perf ftrace: Improve error message about capability to use ftrace (Michael Petlan) [1818835] - [tools] perf ftrace: Use CAP_SYS_ADMIN instead of euid==0 (Michael Petlan) [1818835] - [tools] perf tools: Add CAP_SYSLOG define for older systems (Michael Petlan) [1818835] - [tools] perf tools: Add NO_LIBCAP=1 to the minimal build test (Michael Petlan) [1818835] - [tools] perf tools: Add helpers to use capabilities if present (Michael Petlan) [1818835] - [tools] tools build: Add capability-related feature detection (Michael Petlan) [1818835] - [tools] perf top: Collapse and resort all evsels in a group (Michael Petlan) [1818835] - [tools] perf hist: Remove dummy entries when finding real ones (Michael Petlan) [1818835] - [tools] perf trace: Fix segmentation fault when access syscall info on arm64 (Michael Petlan) [1818835] - [tools] perf hists: Do not link a pair if already linked (Michael Petlan) [1818835] - [tools] perf top: Set display thread COMM to help with debugging (Michael Petlan) [1818835] - [tools] perf vendor events intel: Add Icelake V1.00 event file (Michael Petlan) [1818835] - [tools] perf tools: Fix paths in include statements (Michael Petlan) [1818835] - [tools] perf test vfs_getname: Disable ~/.perfconfig to get default output (Michael Petlan) [1818835] - [tools] perf config: Document the PERF_CONFIG environment variable (Michael Petlan) [1818835] - [tools] perf config: Honour $PERF_CONFIG env var to specify alternate .perfconfig (Michael Petlan) [1818835] - [tools] perf session: Avoid infinite loop when seeing invalid header.size (Michael Petlan) [1818835] - [tools] libperf: Initial documentation (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__enable/disable test (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__enable/disable test (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel tests (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist test (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map test (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map test (Michael Petlan) [1818835] - [tools] libperf: Add tests support (Michael Petlan) [1818835] - [tools] libperf: Add install targets (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__attr() function (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evlist__enable()/disable() functions from perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evlist__open()/close() functions from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__cpus()/threads() functions (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__for_each_cpu() macro (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__enable()/disable()/apply_filter() functions (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__read() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evsel__close() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evsel__open() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__alloc_fd() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt the readn()/writen() functions from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Move nr_members from perf's evsel to libperf's perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Move fd array from perf's evsel to lobperf's perf_evsel class (Michael Petlan) [1818835] - [tools] libperf: Adopt xyarray class from perf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__set_maps() function (Michael Petlan) [1818835] - [tools] libperf: Add threads to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add cpus to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add has_user_cpus to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add threads to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add own_cpus to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add cpus to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__delete() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__delete() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__for_each_evsel() iterator (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__new() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__new() function (Michael Petlan) [1818835] - [tools] libperf: Move zalloc.o into libperf (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__new()/perf_cpu_map__read() functions (Michael Petlan) [1818835] - [tools] libperf: Move perf_event_attr field from perf's evsel to libperf's perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add nr_entries to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__remove() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__add() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__init() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__init function (Michael Petlan) [1818835] - [tools] libperf: Include perf_evlist in evlist object (Michael Petlan) [1818835] - [tools] libperf: Include perf_evsel in evsel object (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist and perf_evsel structs (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__get()/perf_thread_map__put() (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__new_dummy() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map struct (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__get()/perf_cpu_map__put() (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__dummy_new() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map struct (Michael Petlan) [1818835] - [tools] libperf: Add debug output support (Michael Petlan) [1818835] - [tools] libperf: Add perf/core.h header (Michael Petlan) [1818835] - [tools] libperf: Add libperf to the python.so build (Michael Petlan) [1818835] - [tools] libperf: Add build version support (Michael Petlan) [1818835] - [tools] libperf: Make libperf.a part of the perf build (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__disable() to evlist__disable() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__enable() to evlist__enable() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__close() to evlist__close() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__open() to evlist__open() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__cpus() to evsel__cpus() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__apply_filter() to evsel__apply_filter() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__disable() to evsel__disable() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__enable() to evsel__enable() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__open() to evsel__open() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__remove() to evlist__remove() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__add() to evlist__add() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__new() to evsel__new() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__delete() to evsel__delete() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__delete() to evlist__delete() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__new() to evlist__new() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__init() to evlist__init() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__init() to evsel__init() (Michael Petlan) [1818835] - [tools] perf evlist: Rename struct perf_evlist to struct evlist (Michael Petlan) [1818835] - [tools] perf evsel: Rename struct perf_evsel to struct evsel (Michael Petlan) [1818835] - [tools] perf tools: Rename struct thread_map to struct perf_thread_map (Michael Petlan) [1818835] - [tools] perf cpu_map: Rename struct cpu_map to struct perf_cpu_map (Michael Petlan) [1818835] - [tools] perf stat: Move loaded out of struct perf_counts_values (Michael Petlan) [1818835] - [tools] perf trace: Add "sendfile64" alias to the "sendfile" syscall (Michael Petlan) [1818835] - [tools] perf trace: Reuse BPF augmenters from syscalls with similar args signature (Michael Petlan) [1818835] - [tools] perf trace: Preallocate the syscall table (Michael Petlan) [1818835] - [tools] perf trace: Mark syscall ids that are not allocated to avoid unnecessary error messages (Michael Petlan) [1818835] - [tools] perf trace: Forward error codes when trying to read syscall info (Michael Petlan) [1818835] - [tools] perf trace beauty: Add BPF augmenter for the 'rename' syscall (Michael Petlan) [1818835] - [tools] perf trace beauty: Beautify bind's sockaddr arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Beautify 'sendto's sockaddr arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Do not try to use the fd->pathname beautifier for bind/connect fd arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Disable fd->pathname when close() not enabled (Michael Petlan) [1818835] - [tools] perf trace beauty: Make connect's addrlen be printed as an int, not hex (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Augment sockaddr arg in 'connect' (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Rename augmented_args_filename to augmented_args_payload (Michael Petlan) [1818835] - [tools] perf trace: Look for default name for entries in the syscalls prog array (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Support copying two string syscall args (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Switch to using BPF_MAP_TYPE_PROG_ARRAY (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Add handler for "openat" (Michael Petlan) [1818835] - [tools] perf trace: Handle raw_syscalls:sys_enter just like the BPF_OUTPUT augmented event (Michael Petlan) [1818835] - [tools] perf trace: Put the per-syscall entry/exit prog_array BPF map infrastructure in place (Michael Petlan) [1818835] - [tools] perf trace: Allow specifying the bpf prog to augment specific syscalls (Michael Petlan) [1818835] - [tools] perf trace: Add BPF handler for unaugmented syscalls (Michael Petlan) [1818835] - [tools] perf trace: Order -e syscalls table (Michael Petlan) [1818835] - [tools] perf trace: Look up maps just on the __augmented_syscalls__ BPF object (Michael Petlan) [1818835] - [tools] perf trace: Add pointer to BPF object containing __augmented_syscalls__ (Michael Petlan) [1818835] - [tools] perf evsel: Store backpointer to attached bpf_object (Michael Petlan) [1818835] - [tools] perf bpf: Do not attach a BPF prog to a tracepoint if its name starts with ! (Michael Petlan) [1818835] - [tools] perf include bpf: Add bpf_tail_call() prototype (Michael Petlan) [1818835] - [tools] perf: cs-etm: Optimize option setup for CPU-wide sessions (Michael Petlan) [1818835] - [tools] perf cs-etm: Remove duplicate GENMASK() define, use linux/bits.h instead (Michael Petlan) [1818835] - [tools] perf cs-etm: Add support for CPU-wide trace scenarios (Michael Petlan) [1818835] - [tools] perf cs-etm: Add notion of time to decoding code (Michael Petlan) [1818835] - [tools] perf cs-etm: Linking PE contextID with perf thread mechanic (Michael Petlan) [1818835] - [tools] perf cs-etm: Add support for multiple traceID queues (Michael Petlan) [1818835] - [tools] perf cs-etm: Use traceID aware memory callback API (Michael Petlan) [1818835] - [tools] perf cs-etm: Move tid/pid to traceid_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Move thread to traceid_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Get rid of unused cpu in struct cs_etm_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Introduce the concept of trace ID queues (Michael Petlan) [1818835] - [tools] perf cs-etm: Fix indentation in function cs_etm__process_decoder_queue() (Michael Petlan) [1818835] - [tools] perf cs-etm: Move packet queue out of decoder structure (Michael Petlan) [1818835] - [tools] perf cs-etm: Refactor error path in cs_etm_decoder__new() (Michael Petlan) [1818835] - [tools] perf cs-etm: Add handling of switch-CPU-wide events (Michael Petlan) [1818835] - [tools] perf cs-etm: Add handling of itrace start events (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure SWITCH_EVENTS in CPU-wide mode (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure timestamp generation in CPU-wide mode (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure contextID tracing in CPU-wide mode (Michael Petlan) [1818835] - [kernel] perf/core: Fix missing static inline on perf_cgroup_switch() (Michael Petlan) [1818835] - [kernel] perf/core: Consistently fail fork on allocation failures (Michael Petlan) [1818835] - [kernel] perf/core: Disallow uncore-cgroup events (Michael Petlan) [1818835] - [include] perf/headers: Fix spelling s/EACCESS/EACCES/, s/privilidge/privilege/ (Michael Petlan) [1818835] - [x86] perf/x86/uncore: Fix event group support (Michael Petlan) [1818835] - [kernel] perf/core: Start rejecting the syscall with attr.__reserved_2 set (Michael Petlan) [1818835] - [kernel] perf/aux: Fix tracking of auxiliary trace buffer allocation (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Fix base for single entry topa (Michael Petlan) [1818835] - [x86] perf/x86/cstate: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/msr: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/intel: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/cstate: Update C-state counters for Ice Lake (Michael Petlan) [1818835] - [x86] perf/x86/msr: Add new CPU model numbers for Ice Lake (Michael Petlan) [1818835] - [kernel] perf/core: Fix corner case in perf_rotate_context() (Michael Petlan) [1818835] - [kernel] perf/core: Rework memory accounting in perf_mmap() (Michael Petlan) [1818835] - [kernel] perf/core: Fix several typos in comments (Michael Petlan) [1818835] - [x86] perf/x86: Make more stuff static (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Get rid of reverse lookup table for ToPA (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Free up space in a ToPA descriptor (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Split ToPA metadata and page layout (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Use pointer arithmetics instead in ToPA entry calculation (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Use helpers to obtain ToPA entry size (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Clean up ToPA allocation path (Michael Petlan) [1818835]- [scsi] scsi: bnx2fc: Update the driver version to 2.12.13 (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: fix boolreturn.cocci warnings (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: Fix SCSI command completion after cleanup is posted (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: Process the RQE with CQE in interrupt context (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: timeout calculation invalid for bnx2fc_eh_abort() (Nilesh Javali) [1792115] - [powerpc] powerpc/smp: Use nid as fallback for package_id (Steve Best) [1764530] - [kernel] audit: Add __rcu annotation to RCU pointer (Richard Guy Briggs) [1822776] - [infiniband] i40iw: Report correct firmware version (Stefan Assmann) [1726909] - [x86] x86/mce/amd: Add PPIN support for AMD MCE (Wei Huang) [1790521] - [kernel] locking/percpu-rwsem: Fix a task_struct refcount (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Add might_sleep() for writer locking (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Fold __percpu_up_read() (Waiman Long) [1810257] - [kernel] locking/rwsem: Remove RWSEM_OWNER_UNKNOWN (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Remove the embedded rwsem (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Extract __percpu_down_read_trylock() (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Move __this_cpu_inc() into the slowpath (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Convert to bool (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem, lockdep: Make percpu-rwsem use its own lockdep_map (Waiman Long) [1810257] - [kernel] locking/lockdep: Remove unused @nested argument from lock_release() (Waiman Long) [1810257] - [kernel] sched/core: Convert get_task_struct() to return the task (Waiman Long) [1810257] - [kernel] locking/lockdep, cpu/hotplug: Annotate AP thread (Waiman Long) [1810257] - [tty] tty/ldsem: Decrement wait_readers on timeouted down_read() (Waiman Long) [1810257] - [tty] tty/ldsem: Convert to regular lockdep annotations (Waiman Long) [1810257] - [tty] tty/ldsem: Wake up readers after timed out down_write() (Waiman Long) [1810257] - [tty] atomic/tty: Fix up atomic abuse in ldsem (Waiman Long) [1810257] - [kernel] cpu/hotplug: Remove skip_onerr field from cpuhp_step structure (Waiman Long) [1810257] - [watchdog] watchdog: hpwdt: drop warning after calling watchdog_init_timeout (Joseph Szczypek) [1790669] - [mm] powerpc/pkeys: Fix handling of pkey state across fork() (Steve Best) [1823744] - [irqchip] irqchip/gic-v3: Workaround Cavium erratum 38539 when reading GICD_TYPER2 (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Avoid 64bit division for the sake of 32bit ARM (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Rename VPENDBASER/VPROPBASER accessors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Remove superfluous WARN_ON (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Drop 'tmp' in inherit_vpe_l1_table_from_rd() (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Ensure L2 vPE table is allocated at RD level (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Set vpe_l1_base for all redistributors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Fix programming of GICR_VPROPBASER_4_1_SIZE (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building INVALL (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Only provision redistributors that are enabled in ACPI (Mark Salter) [1818174] - [arm64] arm64: acpi: fix DAIF manipulation with pNMI (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Allow direct invalidation of VLPIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Suppress per-VLPI doorbell (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add VPE INVALL callback (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add VPE eviction callback (Mark Salter) [1818174] - [include] irqchip/gic-v4.1: Add VPE residency callback (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add mask/unmask doorbell callbacks (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Plumb skeletal VPE irqchip (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Implement the v4.1 flavour of VMOVP (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Don't use the VPE proxy if RVPEID is set (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Implement the v4.1 flavour of VMAPP (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: VPE table (aka GICR_VPROPBASER) allocation (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add GICv4.1 VPEID size discovery (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Detect GICv4.1 supporting RVPEID (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix get_vlpi_map() breakage with doorbells (Mark Salter) [1818174] - [arm64] arm64: Kconfig: Remove CONFIG_ prefix from ARM64_PSEUDO_NMI section (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make vlpi_lock a spinlock (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Lock VLPI map array before translating it (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Synchronise INT/CLEAR commands targetting a VLPI using VSYNC (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Synchronise INV command targetting a VLPI using VSYNC (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Add its_vlpi_map helpers (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Kill its->device_ids and use TYPER copy instead (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Kill its->ite_size and use TYPER copy instead (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make is_v4 use a TYPER copy (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Allow LPI invalidation via the DirectLPI interface (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Factor out wait_for_syncr primitive (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Free collection mapping on device teardown (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix u64 to __le64 warnings (Mark Salter) [1818174] - [irqchip] irqchip: Remove redundant semicolon after while (Mark Salter) [1818174] - [virt] KVM: vgic-v4: Track the number of VLPIs per vcpu (Mark Salter) [1818174] - [virt] KVM: arm64: vgic-v4: Move the GICv4 residency flow to be driven by vcpu_load/put (Mark Salter) [1818174] - [arm64] arm64: add local_daif_inherit() (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Use the exact ITSList for VMOVP (Mark Salter) [1818174] - [arm64] arm64: Relax ICC_PMR_EL1 accesses when ICC_CTLR_EL1.PMHE is clear (Mark Salter) [1818174] - [arm64] arm64: Fix incorrect irqflag restore for priority masking for compat (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Fix GIC_LINE_NR accessor (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Remove the redundant set_bit for lpi_map (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add quirks for HIP06/07 invalid GICD_TYPER erratum 161010803 (Mark Salter) [1818174] - [irqchip] irqchip/gic: Skip DT quirks when evaluating IIDR-based quirks (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Warn about inconsistent implementations of extended ranges (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add EPPI range support (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Dynamically allocate PPI partition descriptors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Dynamically allocate PPI NMI refcounts (Mark Salter) [1818174] - [irqchip] irqchip/gic: Prepare for more than 16 PPIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add ESPI range support (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add INTID range and convertion primitives (Mark Salter) [1818174] - [irqchip] irqchip/gic: Rework gic_configure_irq to take the full ICFGR base (Mark Salter) [1818174] - [irqchip] irqchip/gic-v2m: Register the frame's PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic: Register the distributor's PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Register the ITS' PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Register the distributor's PA instead of its VA in fwnode (Mark Salter) [1818174] - [arm64] arm64: kprobes: Recover pstate.D in single-step exception handler (Mark Salter) [1818174] - [arm64] arm64: Lower priority mask for GIC_PRIO_IRQON (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Free unused vpt_page when alloc vpe table fail (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Mark expected switch fall-through (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix misuse of GENMASK macro (Mark Salter) [1818174] - [arm64] arm64: fix kernel stack overflow in kdump capture kernel (Mark Salter) [1818174] - [arm64] arm64: irqflags: Introduce explicit debugging for IRQ priorities (Mark Salter) [1818174] - [arm64] arm64: Enable the support of pseudo-NMIs (Mark Salter) [1818174] - [arm64] arm64: Fix incorrect irqflag restore for priority masking (Mark Salter) [1818174] - [arm64] arm64: Fix interrupt tracing in the presence of NMIs (Mark Salter) [1818174] - [arm64] arm64: irqflags: Add condition flags to inline asm clobber list (Mark Salter) [1818174] - [arm64] arm64: irqflags: Pass flags as readonly operand to restore instruction (Mark Salter) [1818174] - [arm64] arm64: Do not enable IRQs for ct_user_exit (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix command queue pointer comparison bug (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make free_lpi_range a little cheaper (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Drop redundant initialization in mk_lpi_range (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Move allocation outside mutex (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix typo in a comment in its_msi_prepare() (Mark Salter) [1818174] - [include] irqchip/gic-v3-its: fix some definitions of inner cacheability attributes (Mark Salter) [1818174] - [arm64] arm64: fix wrong check of on_sdei_stack in nmi context (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp (Mark Salter) [1818174] - [arm64] arm64: remove obsolete selection of MULTI_IRQ_HANDLER (Mark Salter) [1818174] - [irqchip] irqchip/gicv3-its: Use NUMA aware memory allocation for ITS tables (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Avoid parsing _indirect_ twice for Device table (Mark Salter) [1818174] - [arm64] arm64: irqflags: Fix clang build warnings (Mark Salter) [1818174] - [arm64] arm64: KVM/mm: Move SEA handling behind a single 'claim' interface (Mark Salter) [1818174] - [arm64] arm64: Skip irqflags tracing for NMI in IRQs disabled context (Mark Salter) [1818174] - [arm64] arm64: Skip preemption when exiting an NMI (Mark Salter) [1818174] - [arm64] arm64: Handle serror in NMI context (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Allow interrupts to be set as pseudo-NMI (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Handle pseudo-NMIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Detect if GIC can support pseudo-NMIs (Mark Salter) [1818174] - [arm64] arm64: gic-v3: Implement arch support for priority masking (Mark Salter) [1818174] - [irqchip] arm64: Switch to PMR masking when starting CPUs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Factor group0 detection into functions (Mark Salter) [1818174] - [arm64] arm64: alternative: Apply alternatives early in boot process (Mark Salter) [1818174] - [arm64] arm64: alternative: Allow alternative status checking per cpufeature (Mark Salter) [1818174] - [arm64] arm64: sysreg: Make mrs_s and msr_s macros work with Clang and LTO (Mark Salter) [1818174] - [arm64] arm64: daifflags: Include PMR in daifflags restore operations (Mark Salter) [1818174] - [arm64] arm64: irqflags: Use ICC_PMR_EL1 for interrupt masking (Mark Salter) [1818174] - [firmware] efi: Let architectures decide the flags that should be saved/restored (Mark Salter) [1818174] - [kvm] arm64: kvm: Unmask PMR before entering guest (Mark Salter) [1818174] - [mm] arm64: Unmask PMR before going idle (Mark Salter) [1818174] - [arm64] arm64: Make PMR part of task context (Mark Salter) [1818174] - [arm64] arm64: ptrace: Provide definitions for PMR values (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Switch to PMR masking before calling IRQ handler (Mark Salter) [1818174] - [arm64] arm64: cpufeature: Add cpufeature for IRQ priority masking (Mark Salter) [1818174] - [arm64] arm64: cpufeature: Set SYSREG_GIC_CPUIF as a boot system feature (Mark Salter) [1818174] - [arm64] arm64: Remove unused daif related functions/macros (Mark Salter) [1818174] - [arm64] arm64: Fix HCR.TGE status for NMI contexts (Mark Salter) [1818174] - [kernel] irqdesc: Add domain handler for NMIs (Mark Salter) [1818174] - [kernel] genirq: Update irq stats from NMI handlers (Mark Salter) [1818174] - [kernel] genirq: Provide NMI handlers (Mark Salter) [1818174] - [kernel] genirq: Provide NMI management for percpu_devid interrupts (Mark Salter) [1818174] - [kernel] genirq: Provide basic NMI management for interrupt lines (Mark Salter) [1818174] - [include] irqchip/gic-v3-its: Fix ITT_entry_size accessor (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Gracefully fail on LPI exhaustion (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Plug allocation race for devices sharing a DevID (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4: Fix occasional VLPI drop (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-mbi: Fix uninitialized mbi_lock (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add quirk for msm8996 broken registers (Mark Salter) [1818174] - [irqchip] irqchip/gic: Add support to device tree based quirks (Mark Salter) [1818174] - [arm64] arm64: capabilities: Batch cpu_enable callbacks (Mark Salter) [1818174] - [arm64] arm64: capabilities: Use linear array for detection and verification (Mark Salter) [1818174] - [arm64] arm64: capabilities: Optimize this_cpu_has_cap (Mark Salter) [1818174] - [arm64] arm64: capabilities: Speed up capability lookup (Mark Salter) [1818174] - [irqchip] irqchip: Convert to using pOFn instead of device_node.name (Mark Salter) [1818174] - [mm] arm64: Use daifflag_restore after bp_hardening (Mark Salter) [1818174] - [arm64] arm64: daifflags: Use irqflags functions for daifflags (Mark Salter) [1818174] - [include] irqchip/gic: Unify GIC priority definitions (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Remove acknowledge loop (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Allow interrupt to be configured as wake-up sources (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make its_lock a raw_spin_lock_t (Mark Salter) [1818174] - [irqchip] genirq/irqchip: Remove MULTI_IRQ_HANDLER as it's now obselete (Mark Salter) [1818174] - [arm64] arm64: Use the new GENERIC_IRQ_MULTI_HANDLER (Mark Salter) [1818174] - [irqchip] irqchip: Port the ARM IRQ drivers to GENERIC_IRQ_MULTI_HANDLER (Mark Salter) [1818174] - [arm64] arm64: sdei: Mark sdei stack helper functions as static (Mark Salter) [1818174] - [arm64] arm64: Add stack information to on_accessible_stack (Mark Salter) [1818174] - [x86] Reserve at most 64M of SWIOTLB memory for crashkernel (Kairui Song) [1812754] - [md] md/raid1: introduce wait_for_serialization (Nigel Croxon) [1788370] - [md] md/raid1: use bucket based mechanism for IO serialization (Nigel Croxon) [1788370] - [md] md: introduce a new struct for IO serialization (Nigel Croxon) [1788370] - [md] md: don't destroy serial_info_pool if serialize_policy is true (Nigel Croxon) [1788370] - [md] raid1: serialize the overlap write (Nigel Croxon) [1788370] - [md] md: reorgnize mddev_create/destroy_serial_pool (Nigel Croxon) [1788370] - [md] md: add serialize_policy sysfs node for raid1 (Nigel Croxon) [1788370] - [md] md: prepare for enable raid1 io serialization (Nigel Croxon) [1788370] - [md] md: fix a typo s/creat/create (Nigel Croxon) [1788370] - [md] md: rename wb stuffs (Nigel Croxon) [1788370] - [md] raid5: remove worker_cnt_per_group argument from alloc_thread_groups (Nigel Croxon) [1788370] - [lib] md/raid6: fix algorithm choice under larger PAGE_SIZE (Nigel Croxon) [1788370] - [lib] raid6/test: fix a compilation warning (Nigel Croxon) [1788370] - [md] md-bitmap: small cleanups (Nigel Croxon) [1788370]- [firmware] efi: cper: print AER info of PCIe fatal error (Vladis Dronov) [1822595] - [init] redhat: Replace hardware.redhat.com link in Unsupported message (Prarit Bhargava) [1810301] - [pci] PCI: Mark AMD Navi14 GPU rev 0xc5 ATS as broken (Myron Stowe) [1820933] - [pci] PCI: Fix typos (Myron Stowe) [1820933] - [pci] PCI: Remove useless comments and tidy others (Myron Stowe) [1820933] - [pci] PCI: Remove unnecessary includes (Myron Stowe) [1820933] - [tools] tools: PCI: Fix fd leakage (Myron Stowe) [1820933] - [pci] PCI: Export pci_parse_request_of_pci_ranges() (Myron Stowe) [1820933] - [include] resource: Add a resource_list_first_type helper (Myron Stowe) [1820933] - [pci] PCI/ATS: Restore EXPORT_SYMBOL_GPL() for pci_{enable, disable}_ats() (Myron Stowe) [1820933] - [include] PCI/ATS: Add PASID stubs (Myron Stowe) [1820933] - [pci] PCI: Unify ACS quirk desired vs provided checking (Myron Stowe) [1820933] - [pci] PCI: Make ACS quirk implementations more uniform (Myron Stowe) [1820933] - [pci] PCI: Apply Cavium ACS quirk to ThunderX2 and ThunderX3 (Myron Stowe) [1820933] - [pci] PCI/IOV: Serialize sysfs sriov_numvfs reads vs writes (Myron Stowe) [1820933] - [pci] PCI: Add DMA alias quirk for Intel VCA NTB (Myron Stowe) [1820933] - [pci] PCI: Fix Intel ACS quirk UPDCR register address (Myron Stowe) [1820933] - [pci] PCI/ATS: Make pci_restore_pri_state(), pci_restore_pasid_state() private (Myron Stowe) [1820933] - [pci] PCI/ATS: Remove unnecessary EXPORT_SYMBOL_GPL() (Myron Stowe) [1820933] - [include] PCI/ATS: Remove unused PRI and PASID stubs (Myron Stowe) [1820933] - [pci] PCI/ATS: Consolidate ATS declarations in linux/pci-ats.h (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PRI PRG Response PASID Required bit (Myron Stowe) [1820933] - [pci] PCI/ATS: Use PF PASID for VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PASID Capability offset (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PRI Capability offset (Myron Stowe) [1820933] - [pci] PCI/ATS: Disable PF/VF ATS service independently (Myron Stowe) [1820933] - [pci] PCI/ATS: Handle sharing of PF PASID Capability with all VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Handle sharing of PF PRI Capability with all VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Move pci_prg_resp_pasid_required() to CONFIG_PCI_PRI (Myron Stowe) [1820933] - [iommu] iommu/vt-d: Select PCI_PRI for INTEL_IOMMU_SVM (Myron Stowe) [1820933] - [pci] PCI/switchtec: Read all 64 bits of part_event_bitmap (Myron Stowe) [1820933] - [pci] PCI: Do not use bus number zero from EA capability (Myron Stowe) [1820933] - [pci] PCI: Avoid double hpmemsize MMIO window assignment (Myron Stowe) [1820933] - [pci] PCI: Add "pci=hpmmiosize" and "pci=hpmmioprefsize" parameters (Myron Stowe) [1820933] - [pci] PCI: Add PCI_STD_NUM_BARS for the number of standard BARs (Myron Stowe) [1820933] - [pci] PCI: Fix missing bridge dma_ranges resource list cleanup (Myron Stowe) [1820933] - [pci] PCI: Protect pci_reassign_bridge_resources() against concurrent addition/removal (Myron Stowe) [1820933] - [pci] PCI/MSI: Fix incorrect MSI-X masking on resume (Myron Stowe) [1820933] - [pci] PCI/MSI: Move power state check out of pci_msi_supported() (Myron Stowe) [1820933] - [pci] PCI/MSI: Remove unused pci_irq_get_node() (Myron Stowe) [1820933] - [uapi] PCI: Add #defines for Enter Compliance, Transmit Margin (Myron Stowe) [1820933] - [pci] PCI: Allow building PCIe things without PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI: Remove PCIe Kconfig dependencies on PCI (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove dependency on PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI/PTM: Remove dependency on PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI/PTM: Remove spurious "d" from granularity message (Myron Stowe) [1820933] - [pci] PCI: sysfs: Remove unused attribute groups (Myron Stowe) [1820933] - [x86] x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect (Myron Stowe) [1820933] - [pci] PCI: Remove unused includes and superfluous struct declaration (Myron Stowe) [1820933] - [x86] x86/PCI: Replace deprecated EXTRA_CFLAGS with ccflags-y (Myron Stowe) [1820933] - [pci] x86/PCI: Correct SPDX comment style (Myron Stowe) [1820933] - [x86] x86/PCI: Add NumaChip SPDX GPL-2.0 to replace COPYING boilerplate (Myron Stowe) [1820933] - [pci] ACPI / hotplug / PCI: Allocate resources directly under the non-hotplug bridge (Myron Stowe) [1820933] - [pci] PCI: pciehp: Prevent deadlock on disconnect (Myron Stowe) [1820933] - [pci] PCI: pciehp: Do not disable interrupt twice on suspend (Myron Stowe) [1820933] - [pci] PCI: pciehp: Refactor infinite loop in pcie_poll_cmd() (Myron Stowe) [1820933] - [pci] PCI: pciehp: Fix indefinite wait on sysfs requests (Myron Stowe) [1820933] - [pci] PCI: pciehp: Avoid returning prematurely from sysfs requests (Myron Stowe) [1820933] - [pci] PCI: Warn if no host bridge NUMA node info (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove PCIEASPM_DEBUG Kconfig option and related code (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add sysfs attributes for controlling ASPM link states (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add pcie_aspm_get_link() (Myron Stowe) [1820933] - [pci] PCI/ASPM: Allow re-enabling Clock PM (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add L1 PM substate support to pci_disable_link_state() (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove pcie_aspm_enabled() unnecessary locking (Myron Stowe) [1820933] - [pci] PCI/DPC: Add "pcie_ports=dpc-native" to allow DPC without AER control (Myron Stowe) [1820933] - [pci] PCI/AER: Fix kernel-doc warnings (Myron Stowe) [1820933] - [pci] PCI/AER: Use for_each_set_bit() to simplify code (Myron Stowe) [1820933] - [pci] PCI/AER: Add PoisonTLPBlocked to Uncorrectable error counters (Myron Stowe) [1820933] - [pci] PCI/AER: Save AER Capability for suspend/resume (Myron Stowe) [1820933] - [pci] PCI: Add ACS quirk for iProc PAXB (Myron Stowe) [1820933] - [cpufreq] cpufreq: intel_pstate: Simplify intel_pstate_cpu_init() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_work_fn (Prarit Bhargava) [1823339] - [cpufreq] x86/devicetable: Move x86 specific macro out of generic code (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use scnprintf() for avoiding potential buffer overflow (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Consolidate policy verification (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix unsafe notifiers (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix use-after-free (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: dt: Allow platform specific intermediate callbacks (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: add function to get the hardware max frequency (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Prevent unstable evaluation of WARN(vtime->state) (Prarit Bhargava) [1823339] - [cpufreq] docs: cpufreq: fix a broken reference (Prarit Bhargava) [1823339] - [kernel] PM: QoS: annotate data races in pm_qos_*_value() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Fix policy initialization for internal governor drivers (Prarit Bhargava) [1823339] - [documentation] Documentation: power: fix pm_qos_interface.rst format warning (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Make CPU latency QoS depend on CONFIG_CPU_IDLE (Prarit Bhargava) [1823339] - [documentation] Documentation: PM: QoS: Update to reflect previous code changes (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Update file information comments (Prarit Bhargava) [1823339] - [x86] x86: platform: iosf_mbi: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [cpuidle] cpuidle: Call cpu_latency_qos_limit() instead of pm_qos_request() (Prarit Bhargava) [1823339] - [x86] x86: baytrail/cherrytrail: Rework and move P-Unit PMIC bus semaphore code (Prarit Bhargava) [1823339] - [sound] sound: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [media] drivers: media: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [wireless] drivers: net: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [drm] drm/i915: Implement a better i945gm vblank irq vs. C-states workaround (Prarit Bhargava) [1823339] - [drm] drm: i915: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY and rename related functions (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Adjust pm_qos_request() signature and reorder pm_qos.h (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Simplify definitions of CPU latency QoS trace events (Prarit Bhargava) [1823339] - [tty] PM: QoS: Rename things related to the CPU latency QoS (Prarit Bhargava) [1823339] - [cpuidle] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY notifier chain (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Redefine struct pm_qos_request and drop struct pm_qos_object (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up misc device file operations (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop iterations over global QoS classes (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up pm_qos_read_value() and pm_qos_get/set_value() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up pm_qos_update_target() and pm_qos_update_flags() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop the PM_QOS_SUM QoS type (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop pm_qos_update_request_timeout() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop debugfs interface (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: Add support for OPP_PLUS (Prarit Bhargava) [1823339] - [x86] x86/intel_pstate: Handle runtime turbo disablement/enablement in frequency invariance (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on ATOM (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on ATOM_GOLDMONT* (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on XEON_PHI_KNL/KNM (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on SKYLAKE_X (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Avoid creating excessively large stack frames (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: loongson2_cpufreq: adjust cpufreq uses of LOONGSON_CHIPCFG (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: brcmstb-avs: fix imbalance of cpufreq policy refcount (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: fix spelling mistake: "Whethet" -> "Whether" (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: s3c: fix unbalances of cpufreq policy refcount (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: tegra186: convert to devm_platform_ioremap_resource (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: kirkwood: convert to devm_platform_ioremap_resource (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: CPPC: put ACPI table after using it (Prarit Bhargava) [1823339] - [cpufreq] cpufreq : CPPC: Break out if HiSilicon CPPC workaround is matched (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: scmi: Match scmi device by both name and protocol id (Prarit Bhargava) [1823339] - [base] PM / QoS: Restore DEV_PM_QOS_MIN/MAX_FREQUENCY (Prarit Bhargava) [1823339] - [base] PM: QoS: Drop frequency QoS types from device PM QoS (Prarit Bhargava) [1823339] - [include] PM / QoS: Reorder pm_qos/freq_qos/dev_pm_qos structs (Prarit Bhargava) [1823339] - [include] PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Fix Kconfig indentation (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use vtime aware kcpustat accessors for user time (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Bring up complete kcpustat accessor (Prarit Bhargava) [1823339] - [documentation] PM: Wrap documentation to fit in 80 columns (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Invalidate frequency QoS requests after removal (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Register drivers only after CPU devices have been registered (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Add NULL checks to show() and store() methods of cpufreq (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Fix invalid EPB setting (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Initialize cpufreq-dt driver earlier (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Fix plain int as pointer warning from sparse (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: fix stack bloat and hard limit on number of CPUs (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Clarify the comment in cpufreq_set_policy() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use vtime aware kcpustat accessor to fetch CPUTIME_SYSTEM (Prarit Bhargava) [1823339] - [kernel] sched/kcpustat: Introduce vtime-aware kcpustat accessor for CPUTIME_SYSTEM (Prarit Bhargava) [1823339] - [include] sched/vtime: Introduce vtime_accounting_enabled_cpu() (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Rename vtime_accounting_cpu_enabled() to vtime_accounting_enabled_this_cpu() (Prarit Bhargava) [1823339] - [include] context_tracking: Introduce context_tracking_enabled_cpu() (Prarit Bhargava) [1823339] - [include] context_tracking: Rename context_tracking_is_cpu_enabled() to context_tracking_enabled_this_cpu() (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Record CPU under seqcount for kcpustat needs (Prarit Bhargava) [1823339] - [acpi] ACPI: processor: Add QoS requests for all CPUs (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: scpi: remove stale/outdated comment about the driver (Prarit Bhargava) [1823339] - [thermal] thermal/drivers/cpufreq_cooling: Fix return of cpufreq_set_cur_state (Prarit Bhargava) [1823339] - [acpi] cpufreq: Use per-policy frequency QoS (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Introduce frequency QoS (Prarit Bhargava) [1823339] - [acpi] ACPI: processor: Avoid NULL pointer dereferences at init time (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: Add support for AM3517 (Prarit Bhargava) [1823339] - [cpufreq] ARM: dts: omap36xx: using OPP1G needs to control the abb_ldo (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: add support for omap34xx and omap36xx (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Remove CPUFREQ_ADJUST and CPUFREQ_NOTIFY policy notifier events (Prarit Bhargava) [1823339] - [base] arch_topology: Use CPUFREQ_CREATE_POLICY instead of CPUFREQ_NOTIFY (Prarit Bhargava) [1823339] - [acpi] ACPI: cpufreq: Switch to QoS requests instead of cpufreq notifier (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Get rid of unused flags (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Implement QoS supported freq constraints (Prarit Bhargava) [1823339] - [thermal] thermal: cpu_cooling: Switch to QoS requests for freq limits (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Add policy create/remove notifiers back (Prarit Bhargava) [1823339] - [documentation] docs: power: convert docs to ReST and rename to *.rst (Prarit Bhargava) [1823339] - [kernel] PM: QoS: no need to check return value of debugfs_create functions (Prarit Bhargava) [1823339] - [kernel] PM / QoS: Change to use DEFINE_SHOW_ATTRIBUTE macro (Prarit Bhargava) [1823339] - [nvme] nvme-fc: Revert "add module to ops template to allow module references" (Gopal Tiwari) [1823270] - [nvme] nvme: fix deadlock caused by ANA update wrong locking (Gopal Tiwari) [1823270] - [nvme] nvme-pci: Hold cq_poll_lock while completing CQEs (Gopal Tiwari) [1823270] - [uapi] nvme: change nvme_passthru_cmd64 to explicitly mark rsvd (Gopal Tiwari) [1823270] - [tools] tools/power/x86/intel-speed-select: Fix a typo in error message (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Avoid duplicate Package strings for json (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Add display for enabled cpus count (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Print friendly warning for bad command line (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix avx options for turbo-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve CLX commands (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Show error for invalid CPUs in the options (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve core-power result and error display (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Kernel interface error handling (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for turbo-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for base-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve output of perf-profile commands (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance help for core-power assoc (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Display error for invalid priority type (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Check feature status first (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for perf-profile feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Add an API for error/information print (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance --info option (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance help (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Helpful warning for missing kernel interface (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Store topology information (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Max CPU count calculation when CPU0 is offline (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Special handling for CPU 0 online/offline (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Use more verbiage for clos information (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance core-power info command (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Make target CPU optional for core-power info (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Warn for invalid package id (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix last cpu number (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix mailbox usage for CLOS_PM_QOS_CONFIG (Prarit Bhargava) [1778956] - [platform] platform/x86: ISST: Fix wrong unregister type (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Avoid duplicate names for json parsing (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix display for turbo-freq auto mode (Prarit Bhargava) [1778956] - [platform] platform/x86: ISST: Allow additional core-power mailbox commands (Prarit Bhargava) [1778956] - [misc] mei: me: add comet point (lake) H device ids (Ken Cox) [1815355] - [misc] mei: me: add comet point (lake) LP device ids (Ken Cox) [1815355] - [misc] mei: define dma ring buffer sizes for PCH12 HW and newer (Ken Cox) [1815355] - [misc] mei: hbm: define dma ring setup protocol (Ken Cox) [1815355] - [acpi] apei/ghes: Do not delay GHES polling (Robert Richter) [1793544] - [edac] EDAC/ghes: Do not warn when incrementing refcount on 0 (Robert Richter) [1793544] - [edac] EDAC/ghes: Fix locking and memory barrier issues (Robert Richter) [1793544] - [edac] EDAC/ghes: Fix Use after free in ghes_edac remove path (Robert Richter) [1793544] - [edac] EDAC, ghes: Use CPER module handles to locate DIMMs (Robert Richter) [1793544] - [kernel] sched/fair: Fix statistics for find_idlest_group() (Phil Auld) [1794398] - [kernel] sched/core: Annotate curr pointer in rq with __rcu (Phil Auld) [1794398] - [kernel] sched/psi: Fix OOB write when writing 0 bytes to PSI files (Phil Auld) [1794398] - [kernel] sched/psi: Correct overly pessimistic size calculation (Phil Auld) [1794398] - [kernel] sched/fair: Prevent unlimited runtime on throttled group (Phil Auld) [1794398] - [kernel] sched/nohz: Optimize get_nohz_timer_target() (Phil Auld) [1794398] - [kernel] sched/topology: Assert non-NUMA topology masks don't (partially) overlap (Phil Auld) [1794398] - [kernel] sched/psi: create /proc/pressure and /proc/pressure/{io|memory|cpu} only when psi enabled (Phil Auld) [1794398] - [kernel] sched/fair: Remove redundant call to cpufreq_update_util() (Phil Auld) [1794398] - [kernel] sched/debug: Add new tracepoints to track PELT at rq level (Phil Auld) [1794398] - [kernel] sched/fair: calculate delta runnable load only when it's needed (Phil Auld) [1794398] - [kernel] sched/fair: Fix sgc->{min, max}_capacity calculation for SD_OVERLAP (Phil Auld) [1794398] - [kernel] sched/debug: Reset watchdog on all CPUs while processing sysrq-t (Phil Auld) [1794398] - [kernel] sched/fair: Make sched-idle CPU selection consistent throughout (Phil Auld) [1794398] - [kernel] sched/core: Remove unused variable from set_user_nice() (Phil Auld) [1794398] - [kernel] sched/fair: Optimize select_idle_cpu (Phil Auld) [1794398] - [kernel] schied/fair: Skip calculating @contrib without load (Phil Auld) [1794398] - [kernel] sched: Spare resched IPI when prio changes on a single fair task (Phil Auld) [1794398] - [kernel] sched: Use fair:prio_changed() instead of ad-hoc implementation (Phil Auld) [1794398] - [kernel] sched/wait: fix ___wait_var_event(exclusive) (Phil Auld) [1794398] - [kernel] psi: Fix a division error in psi poll() (Phil Auld) [1794398] - [kernel] sched/psi: Fix sampling error and rare div0 crashes with cgroups and high uptime (Phil Auld) [1794398] - [kernel] sched/cpufreq: Move the cfs_rq_util_change() call to cpufreq_update_util() (Phil Auld) [1794398] - [kernel] sched/pelt: Fix update of blocked PELT ordering (Phil Auld) [1794398] - [kernel] sched/core: Avoid spurious lock dependencies (Phil Auld) [1794398] - [kernel] Add wake_up_interruptible_sync_poll_locked() (Phil Auld) [1794398] - [kernel] Remove the nr_exclusive argument from __wake_up_sync_key() (Phil Auld) [1794398] - [x86] x86/mce: Do not log spurious corrected mce errors (Prarit Bhargava) [1819761] - [x86] x86/MCE: Add an MCE-record filtering function (Prarit Bhargava) [1819761]- [mm] mm/page_alloc: increase default min_free_kbytes bound (Joel Savitz) [1808039] - [crypto] crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Neil Horman) [1782179] - [crypto] crypto: qat - switch to skcipher API (Neil Horman) [1782179] - [scsi] scsi: lpfc: Change default SCSI LUN QD to 64 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.0 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Remove prototype FIPS/DSS options from SLI-3 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Make debugfs ktime stats generic for NVME and SCSI (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix erroneous cpu limit of 128 on I/O statistics (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix update of wq consumer index in lpfc_sli4_wq_release (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix crash after handling a pci error (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix scsi host template for SLI3 vports (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix lpfc overwrite of sg_cnt field in nvmefc_tgt_fcp_req (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix lockdep error - register non-static key (Dick Kennedy) [1822334] - [fs] utimes: Clamp the timestamps in notify_change() (Eric Sandeen) [1795991] - [fs] smb3: Fix regression in time handling (Eric Sandeen) [1795991] - [fs] isofs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: ceph: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: fat: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fat: propagate 64-bit inode timestamps (Eric Sandeen) [1795991] - [fs] fs: cifs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: nfs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] ext4: Initialize timestamps limits (Eric Sandeen) [1795991] - [fs] fs: Fill in max and min timestamps in superblock (Eric Sandeen) [1795991] - [fs] utimes: Clamp the timestamps before update (Eric Sandeen) [1795991] - [fs] timestamp_truncate: Replace users of timespec64_trunc (Eric Sandeen) [1795991] - [fs] vfs: Add timestamp_truncate() api (Eric Sandeen) [1795991] - [fs] vfs: Add file timestamp range support (Eric Sandeen) [1795991] - [fs] cramfs: Deprecate cramfs in RHEL (Abhijith Das) [1794513] - [thermal] thermal: intel: intel_pch_thermal: Add Comet Lake (CML) platform support (David Arcari) [1773794] - [thermal] thermal: intel: Fix unmatched pci_release_region (David Arcari) [1773794] - [thermal] thermal: intel: Use dev_get_drvdata (David Arcari) [1773794] - [thermal] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (David Arcari) [1773794] - [thermal] drivers: thermal: Move various drivers for intel platforms into a subdir (David Arcari) [1773794] - [x86] x86/cpufeatures: Enable a new AVX512 CPU feature (David Arcari) [1783143] - [x86] cpu/cpuid-deps: Add a tab to cpuid dependent features (David Arcari) [1783143] - [crypto] crypto: rng - Override drivers/char/random in FIPS mode (Herbert Xu) [1785660] - [char] random: Add hook to override device reads and getrandom(2) (Herbert Xu) [1785660] - [block] nbd: add a flush_workqueue in nbd_start_device (Ming Lei) [1798919] - [scsi] scsi: sd_sbc: Fix sd_zbc_report_zones() (Ming Lei) [1798919] - [block] block: Fix partition support for host aware zoned block devices (Ming Lei) [1798919] - [scsi] block: allow partitions on host aware zone devices (Ming Lei) [1798919] - [block] null_blk: Fix zone write handling (Ming Lei) [1798919] - [fs] fs: move guard_bio_eod() after bio_set_op_attrs (Ming Lei) [1798919] - [block] null_blk: Fix REQ_OP_ZONE_CLOSE handling (Ming Lei) [1798919] - [block] block: add bio_truncate to fix guard_bio_eod (Ming Lei) [1798919] - [block] compat_ioctl: block: handle Persistent Reservations (Ming Lei) [1798919] - [block] compat_ioctl: block: handle add zone open, close and finish ioctl (Ming Lei) [1798919] - [block] compat_ioctl: block: handle BLKGETZONESZ/BLKGETNRZONES (Ming Lei) [1798919] - [block] compat_ioctl: block: handle BLKREPORTZONE/BLKRESETZONE (Ming Lei) [1798919] - [block] block: fix memleak when __blk_rq_map_user_iov() is failed (Ming Lei) [1798919] - [s390] s390/dasd: fix typo in copyright statement (Ming Lei) [1798919] - [s390] s390/dasd: fix memleak in path handling error case (Ming Lei) [1798919] - [s390] s390/dasd/cio: Interpret ccw_device_get_mdc return value correctly (Ming Lei) [1798919] - [block] block: Fix a lockdep complaint triggered by request queue flushing (Ming Lei) [1798919] - [block] block: Fix the type of 'sts' in bsg_queue_rq() (Ming Lei) [1798919] - [block] block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT (Ming Lei) [1798919] - [block] nbd: fix shutdown and recv work deadlock v2 (Ming Lei) [1798919] - [block] blk-iocost: fix incorrect vtime comparison in iocg_is_idle() (Ming Lei) [1798919] - [block] iocost: check active_list of all the ancestors in iocg_activate() (Ming Lei) [1798919] - [block] iocost: over-budget forced IOs should schedule async delay (Ming Lei) [1798919] - [block] blk-cgroup: remove blkcg_drain_queue (Ming Lei) [1798919] - [block] block: fix NULL pointer dereference in account statistics with IDE (Ming Lei) [1798919] - [block] null_blk: remove unused variable warning on !CONFIG_BLK_DEV_ZONED (Ming Lei) [1798919] - [block] brd: warn on un-aligned buffer (Ming Lei) [1798919] - [block] brd: remove max_hw_sectors queue limit (Ming Lei) [1798919] - [block] block: set the zone size in blk_revalidate_disk_zones atomically (Ming Lei) [1798919] - [block] block: don't handle bio based drivers in blk_revalidate_disk_zones (Ming Lei) [1798919] - [block] block: allocate the zone bitmaps lazily (Ming Lei) [1798919] - [block] block: replace seq_zones_bitmap with conv_zones_bitmap (Ming Lei) [1798919] - [block] block: simplify blkdev_nr_zones (Ming Lei) [1798919] - [block] block: remove the empty line at the end of blk-zoned.c (Ming Lei) [1798919] - [block] null_blk: cleanup null_gendisk_register (Ming Lei) [1798919] - [block] null_blk: fix zone size paramter check (Ming Lei) [1798919] - [fs] block: don't send uevent for empty disk when not invalidating (Ming Lei) [1798919] - [block] ataflop: Remove unneeded semicolon (Ming Lei) [1798919] - [block] drbd: Remove unneeded semicolon (Ming Lei) [1798919] - [scsi] sr_vendor: support Beurer GL50 evo CD-on-a-chip devices (Ming Lei) [1798919] - [cdrom] cdrom: respect device capabilities during opening action (Ming Lei) [1798919] - [fs] block: move clearing bd_invalidated into check_disk_size_change (Ming Lei) [1798919] - [block] block: remove (__)blkdev_reread_part as an exported API (Ming Lei) [1798919] - [block] block: fix bdev_disk_changed for non-partitioned devices (Ming Lei) [1798919] - [block] block: move rescan_partitions to fs/block_dev.c (Ming Lei) [1798919] - [block] block: merge invalidate_partitions into rescan_partitions (Ming Lei) [1798919] - [block] block: refactor rescan_partitions (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Remove set but not used variable 'buflen' (Ming Lei) [1798919] - [md] block: rework zone reporting (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Cleanup sd_zbc_alloc_report_buffer() (Ming Lei) [1798919] - [block] null_blk: Add zone_nr_conv to features (Ming Lei) [1798919] - [block] null_blk: clean up report zones (Ming Lei) [1798919] - [block] null_blk: clean up the block device operations (Ming Lei) [1798919] - [block] block: Remove partition support for zoned block devices (Ming Lei) [1798919] - [md] block: Simplify report zones execution (Ming Lei) [1798919] - [block] block: cleanup the !zoned case in blk_revalidate_disk_zones (Ming Lei) [1798919] - [scsi] block: Enhance blk_revalidate_disk_zones() (Ming Lei) [1798919] - [block] nbd: prevent memory leak (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: add zone open, close, and finish support (Ming Lei) [1798919] - [block] null_blk: add zone open, close, and finish support (Ming Lei) [1798919] - [md] dm: add zone open, close and finish support (Ming Lei) [1798919] - [block] loop: fix no-unmap write-zeroes request behavior (Ming Lei) [1798919] - [block] null_blk: return fixed zoned reads > write pointer (Ming Lei) [1798919] - [block] null_blk: Enable modifying 'submit_queues' after an instance has been configured (Ming Lei) [1798919] - [block] null_blk: Improve nullb_device_##NAME##_store() readability (Ming Lei) [1798919] - [block] block,bfq: Skip tracing hooks if possible (Ming Lei) [1798919] - [block] block: Don't disable interrupts in trigger_softirq() (Ming Lei) [1798919] - [lib] sbitmap: Delete sbitmap_any_bit_clear() (Ming Lei) [1798919] - [block] blk-mq: Delete blk_mq_has_free_tags() and blk_mq_can_queue() (Ming Lei) [1798919] - [block] block: add zone open, close and finish ioctl support (Ming Lei) [1798919] - [uapi] uapi: fix ioctl documentation (Ming Lei) [1798919] - [uapi] uapi: linux/blkzoned.h: fix BLKGETZONESZ and BLKGETNRZONES definitions (Ming Lei) [1798919] - [block] block: add zone open, close and finish operations (Ming Lei) [1798919] - [block] block: Simplify REQ_OP_ZONE_RESET_ALL handling (Ming Lei) [1798919] - [block] block: Remove REQ_OP_ZONE_RESET plugging (Ming Lei) [1798919] - [fs] bdev: Refresh bdev size for disks without partitioning (Ming Lei) [1798919] - [fs] bdev: Factor out bdev revalidation into a common helper (Ming Lei) [1798919] - [block] blk-mq: Make blk_mq_run_hw_queue() return void (Ming Lei) [1798919] - [fs] fcntl: fix typo in RWH_WRITE_LIFE_NOT_SET r/w hint name (Ming Lei) [1798919] - [block] blk-mq: remove needless goto from blk_mq_get_driver_tag (Ming Lei) [1798919] - [block] block: Reduce the amount of memory used for tag sets (Ming Lei) [1798919] - [block] block: Reduce the amount of memory required per request queue (Ming Lei) [1798919] - [block] block: Remove the synchronize_rcu() call from __blk_mq_update_nr_hw_queues() (Ming Lei) [1798919] - [block] block: account statistics for passthrough requests (Ming Lei) [1798919] - [block] blk-stat: Optimise blk_stat_add() (Ming Lei) [1798919] - [block] blk-mq: Embed counters into struct mq_inflight (Ming Lei) [1798919] - [block] blk-mq: Reuse callback in blk_mq_in_flight*() (Ming Lei) [1798919] - [block] blk-mq: Inline status checkers (Ming Lei) [1798919] - [block] block: Document all members of blk_mq_tag_set and bkl_mq_queue_map (Ming Lei) [1798919] - [block] block: Reduce sysfs_lock locking inside blk_cleanup_queue() (Ming Lei) [1798919] - [block] block: Remove "dying" checks from sysfs callbacks (Ming Lei) [1798919] - [block] block: Remove request_queue.nr_queues (Ming Lei) [1798919] - [trace] block: Fix writeback throttling W=1 compiler warnings (Ming Lei) [1798919] - [block] block: Fix three kernel-doc warnings (Ming Lei) [1798919] - [fs] writeback: fix use-after-free in finish_writeback_work() (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Fix sd_zbc_complete() (Ming Lei) [1798919] - [block] nbd:fix memory leak in nbd_get_socket() (Ming Lei) [1798919] - [block] nbd: verify socket is supported during setup (Ming Lei) [1798919] - [block] nbd: handle racing with error'ed out commands (Ming Lei) [1798919] - [block] nbd: protect cmd->status with cmd->lock (Ming Lei) [1798919] - [block] nbd: fix possible sysfs duplicate warning (Ming Lei) [1798919] - [block] nbd: fix possible page fault for nbd disk (Ming Lei) [1798919] - [block] nbd: rename the runtime flags as NBD_RT_ prefixed (Ming Lei) [1798919] - [block] nbd: fix max number of supported devs (Ming Lei) [1798919] - [block] nbd: fix zero cmd timeout handling v2 (Ming Lei) [1798919] - [block] nbd: add missing config put (Ming Lei) [1798919] - [block] nbd: add function to convert blk req op to nbd cmd (Ming Lei) [1798919] - [block] nbd: add set cmd timeout helper (Ming Lei) [1798919] - [block] loop: change queue block size to match when using DIO (Ming Lei) [1798919] - [block] rsxx: add missed destroy_workqueue calls in remove (Ming Lei) [1798919] - [fs] cgroup, writeback: don't switch wbs immediately on dead wbs if the memcg is dead (Ming Lei) [1798919] - [block] block: drbd: remove a stray unlock in __drbd_send_protocol() (Ming Lei) [1798919] - [block] blkcg: make blkcg_print_stat() print stats only for online blkgs (Ming Lei) [1798919] - [block] iocost: don't nest spin_lock_irq in ioc_weight_write() (Ming Lei) [1798919] - [block] blk-rq-qos: fix first node deletion of rq_qos_del() (Ming Lei) [1798919] - [block] blkcg: Fix multiple bugs in blkcg_activate_policy() (Ming Lei) [1798919] - [block] block: Fix elv_support_iosched() (Ming Lei) [1798919] - [block] null_blk: Fix zoned command return code (Ming Lei) [1798919] - [block] blk-wbt: fix performance regression in wbt scale_up/scale_down (Ming Lei) [1798919] - [ata] Revert "libata, freezer: avoid block device removal while system is frozen" (Ming Lei) [1798919] - [mm] bdi: Do not use freezable workqueue (Ming Lei) [1798919] - [uapi] block: pg: add header include guard (Ming Lei) [1798919] - [block] block: fix null pointer dereference in blk_mq_rq_timed_out() (Ming Lei) [1798919] - [block] rq-qos: get rid of redundant wbt_update_limits() (Ming Lei) [1798919] - [block] iocost: bump up default latency targets for hard disks (Ming Lei) [1798919] - [block] iocost: improve nr_lagging handling (Ming Lei) [1798919] - [block] iocost: better trace vrate changes (Ming Lei) [1798919] - [block] block: drop device references in bsg_queue_rq() (Ming Lei) [1798919] - [block] pktcdvd: remove warning on attempting to register non-passthrough dev (Ming Lei) [1798919] - [ata] ata: libahci_platform: Add of_node_put() before loop exit (Ming Lei) [1798919] - [block] block, bfq: push up injection only after setting service time (Ming Lei) [1798919] - [block] block, bfq: increase update frequency of inject limit (Ming Lei) [1798919] - [block] block, bfq: reduce upper bound for inject limit to max_rq_in_driver+1 (Ming Lei) [1798919] - [block] block, bfq: update inject limit only after injection occurred (Ming Lei) [1798919] - [block] block: centralize PI remapping logic to the block layer (Ming Lei) [1798919] - [block] block: use symbolic constants for t10_pi type (Ming Lei) [1798919] - [block] null_blk: format pr_* logs with pr_fmt (Ming Lei) [1798919] - [block] null_blk: match the type of parameter nr_devices (Ming Lei) [1798919] - [block] null_blk: do not fail the module load with zero devices (Ming Lei) [1798919] - [block] block: also check RQF_STATS in blk_mq_need_time_stamp() (Ming Lei) [1798919] - [block] block: make rq sector size accessible for block stats (Ming Lei) [1798919] - [block] bfq: Fix bfq linkage error (Ming Lei) [1798919] - [scsi] scsi: core: remove dummy q->dev check (Ming Lei) [1798919] - [block] block: bypass blk_set_runtime_active for uninitialized q->dev (Ming Lei) [1798919] - [block] null_blk: validate the number of devices (Ming Lei) [1798919] - [block] null_blk: fix module name at log message (Ming Lei) [1798919] - [block] iocost_monitor: Report debt (Ming Lei) [1798919] - [tools] iocost_monitor: Report more info with higher accuracy (Ming Lei) [1798919] - [tools] iocost_monitor: Always use strings for json values (Ming Lei) [1798919] - [block] blk-iocost: Don't let merges push vtime into the future (Ming Lei) [1798919] - [block] blk-iocost: Account force-charged overage in absolute vtime (Ming Lei) [1798919] - [block] blk-iocost: Fix incorrect operation order during iocg free (Ming Lei) [1798919] - [block] bfq: Add per-device weight (Ming Lei) [1798919] - [block] bfq: Extract bfq_group_set_weight from bfq_io_set_weight_legacy (Ming Lei) [1798919] - [block] bfq: Fix the missing barrier in __bfq_entity_update_weight_prio (Ming Lei) [1798919] - [block] block: fix elevator_get_by_features() (Ming Lei) [1798919] - [scsi] sd: Set ELEVATOR_F_ZBD_SEQ_WRITE for ZBC disks (Ming Lei) [1798919] - [block] block: Set ELEVATOR_F_ZBD_SEQ_WRITE for nullblk zoned disks (Ming Lei) [1798919] - [block] block: Delay default elevator initialization (Ming Lei) [1798919] - [block] block: Improve default elevator selection (Ming Lei) [1798919] - [block] block: Introduce elevator features (Ming Lei) [1798919] - [block] block: Change elevator_init_mq() to always succeed (Ming Lei) [1798919] - [block] block: Cleanup elevator_init_mq() use (Ming Lei) [1798919] - [block] paride/pcd: need to check if cd->disk is null in pcd_detect (Ming Lei) [1798919] - [block] paride/pcd: need to set queue to NULL before put_disk (Ming Lei) [1798919] - [block] blkcg: add missing NULL check in ioc_cpd_alloc() (Ming Lei) [1798919] - [block] blkcg: fix missing free on error path of blk_iocost_init() (Ming Lei) [1798919] - [trace] blkcg: blk-iocost: predeclare used structs (Ming Lei) [1798919] - [block] blkcg: add tools/cgroup/iocost_coef_gen.py (Ming Lei) [1798919] - [block] blkcg: add tools/cgroup/iocost_monitor.py (Ming Lei) [1798919] - [block] blkcg: implement blk-iocost (Ming Lei) [1798919] - [block] blk-mq: add optional request->alloc_time_ns (Ming Lei) [1798919] - [block] block: extend 'struct request' via 'request_aux' (Ming Lei) [1798919] - [block] blkcg: s/RQ_QOS_CGROUP/RQ_QOS_LATENCY/ (Ming Lei) [1798919] - [block] block/rq_qos: implement rq_qos_ops->queue_depth_changed() (Ming Lei) [1798919] - [block] block/rq_qos: add rq_qos_merge() (Ming Lei) [1798919] - [block] blkcg: separate blkcg_conf_get_disk() out of blkg_conf_prep() (Ming Lei) [1798919] - [block] blkcg: make ->cpd_init_fn() optional (Ming Lei) [1798919] - [block] blkcg: pass @q and @blkcg into blkcg_pol_alloc_pd_fn() (Ming Lei) [1798919] - [include] writeback: Generalize and expose wb_completion (Ming Lei) [1798919] - [block] null_blk: fix inline misuse (Ming Lei) [1798919] - [block] null_blk: create a helper for req completion (Ming Lei) [1798919] - [block] null_blk: create a helper for zoned devices (Ming Lei) [1798919] - [block] null_blk: create a helper for mem-backed ops (Ming Lei) [1798919] - [block] null_blk: create a helper for badblocks (Ming Lei) [1798919] - [block] null_blk: create a helper for throttling (Ming Lei) [1798919] - [block] null_blk: move duplicate code to callers (Ming Lei) [1798919] - [block] block: remove struct request_queue queue_head (Ming Lei) [1798919] - [fs] writeback, cgroup: inode_switch_wbs() shouldn't give up on wb_switch_rwsem trylock fail (Ming Lei) [1798919] - [fs] writeback, cgroup: Adjust WB_FRN_TIME_CUT_DIV to accelerate foreign inode switching (Ming Lei) [1798919] - [block] blk-mq: Fix memory leak in blk_mq_init_allocated_queue error handling (Ming Lei) [1798919] - [block] loop: Add LOOP_SET_DIRECT_IO to compat ioctl (Ming Lei) [1798919] - [lib] lib: scatterlist: Fix to support no mapped sg (Ming Lei) [1798919] - [block] null_blk: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [scsi] scsi: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [block] blk-zoned: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [block] block: add req op to reset all zones and flag (Ming Lei) [1798919] - [block] block: Fix a comment in blk_cleanup_queue() (Ming Lei) [1798919] - [block] block: Fix spelling in the header above blkg_lookup() (Ming Lei) [1798919] - [kernel] cgroup: Move cgroup_parse_float() implementation out of CONFIG_SYSFS (Ming Lei) [1798919] - [kernel] cgroup: add cgroup_parse_float() (Ming Lei) [1798919] - [block] nbd: replace kill_bdev() with __invalidate_device() again (Ming Lei) [1798919] - [block] nbd: add netlink reconfigure resize support (Ming Lei) [1798919] - [block] nbd: fix crash when the blksize is zero (Ming Lei) [1798919] - [block] nbd: propagate genlmsg_reply return code (Ming Lei) [1798919] - [block] block: loop: mark bvec as ITER_BVEC_FLAG_NO_REF (Ming Lei) [1798919] - [block] loop: properly observe rotational flag of underlying device (Ming Lei) [1798919] - [block] block: Limit zone array allocation size (Ming Lei) [1798919] - [block] block: Fix null_blk_zoned creation failure with small number of zones (Ming Lei) [1798919] - [scsi] sd_zbc: Fix report zones buffer allocation (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Fix sd_zbc_report_zones() buffer allocation (Ming Lei) [1798919] - [md] block: Kill gfp_t argument of blkdev_report_zones() (Ming Lei) [1798919] - [md] dm zoned: Fix zone report handling (Ming Lei) [1798919] - [block] blkcg: implement REQ_CGROUP_PUNT (Ming Lei) [1798919] - [include] blkcg, writeback: Implement wbc_blkcg_css() (Ming Lei) [1798919] - [fs] blkcg, writeback: Add wbc->no_cgroup_owner (Ming Lei) [1798919] - [fs] blkcg, writeback: Rename wbc_account_io() to wbc_account_cgroup_owner() (Ming Lei) [1798919] - [block] cgroup, blkcg: Prepare some symbols for module and !CONFIG_CGROUP usages (Ming Lei) [1798919] - [fs] writeback: synchronize sync(2) against cgroup writeback membership switches (Ming Lei) [1798919] - [block] blk-mq: move cancel of requeue_work to the front of blk_exit_queue (Ming Lei) [1798919] - [block] blk-mq-debugfs: support rq_qos (Ming Lei) [1798919] - [block] null_blk: fix type mismatch null_handle_cmd() (Ming Lei) [1798919] - [block] null_blk: remove duplicate 0 initialization (Ming Lei) [1798919] - [block] null_blk: remove duplicate check for report zone (Ming Lei) [1798919] - [block] null_blk: add zoned config support information (Ming Lei) [1798919] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (Vitaly Kuznetsov) [1807448] - [x86] vmware: Use bool type for vmw_sched_clock (Vitaly Kuznetsov) [1807448] - [x86] vmware: Enable steal time accounting (Vitaly Kuznetsov) [1807448] - [x86] vmware: Add steal time clock support for VMware guests (Vitaly Kuznetsov) [1807448] - [x86] vmware: Remove vmware_sched_clock_setup() (Vitaly Kuznetsov) [1807448] - [x86] vmware: Make vmware_select_hypercall() __init (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Fix platform detection VMWARE_PORT macro (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Use the full form of INL in VMWARE_HYPERCALL, for clang/llvm (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Use the full form of INL in VMWARE_PORT (Vitaly Kuznetsov) [1807448] - [x86] vmware: Add a header file for hypercall definitions (Vitaly Kuznetsov) [1807448] - [x86] vmware: Update platform detection code for VMCALL/VMMCALL hypercalls (Vitaly Kuznetsov) [1807448] - [netdrv] hv_netvsc: Fix unwanted wakeup in netvsc_attach() (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: make recording RSS hash depend on feature flag (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: record hardware hash in skb (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: flag software created hash value (Mohammed Gamal) [1815503] - [video] hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs (Mohammed Gamal) [1816744] - [video] hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver (Mohammed Gamal) [1816744] - [video] hyperv: hyperv_fb: Obtain screen resolution from Hyper-V host (Mohammed Gamal) [1816744] - [uio] uio_hv_generic: drop #ifdef DEBUG (Mohammed Gamal) [1816744] - [hid] hv: Remove dependencies on PAGE_SIZE for ring buffer (Mohammed Gamal) [1816744] - [x86] x86/hyperv: Create and use Hyper-V page definitions (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Drop HV_X64_CONFIGURE_PROFILER definition (Mohammed Gamal) [1816285] - [x86] x86: hv: Add function to allocate zeroed page for Hyper-V (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Add functions to allocate/deallocate page for Hyper-V (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Fix indentation in hv_do_fast_hypercall16() (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Micro-optimize send_ipi_one() (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Make vapic support x2apic mode (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Fix overflow bug in fill_gva_list() (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Zero out the VP ASSIST PAGE on allocation (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Make hv_vcpu_is_preempted() visible (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Implement EOI assist (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Prevent potential NULL pointer dereference (Mohammed Gamal) [1816285] - [x86] Drivers: hv: vmbus: Break out ISA independent parts of mshyperv.h (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Remove unused include (Mohammed Gamal) [1816285] - [net] vsock/virtio: add support for MSG_PEEK (Stefano Garzarella) [1818059]- [include] leds: triggers: new function led_set_trigger_data() (Torez Smith) [1686205] - [leds] leds: triggers: add device attribute support (Torez Smith) [1686205] - [usb] USB: cdc-wdm: fix race between write and disconnect due to flag abuse (Torez Smith) [1686205] - [usb] usb: host: xhci: rcar: Fix typo in compatible string matching (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Set DMA mask correctly (Torez Smith) [1686205] - [usb] USB: storage: ums-realtek: Whitelist auto-delink support (Torez Smith) [1686205] - [usb] USB: storage: ums-realtek: Update module parameter description for auto_delink_en (Torez Smith) [1686205] - [usb] usb: host: ohci: fix a race condition between shutdown and irq (Torez Smith) [1686205] - [usb] usb: hcd: use managed device resources (Torez Smith) [1686205] - [usb] typec: tcpm: fix a typo in the comparison of pdo_max_voltage (Torez Smith) [1686205] - [usb] usb-storage: Add new JMS567 revision to unusual_devs (Torez Smith) [1686205] - [usb] usb: chipidea: udc: don't do hardware access if gadget has stopped (Torez Smith) [1686205] - [usb] usbtmc: more sanity checking for packet size (Torez Smith) [1686205] - [usb] usb: udc: lpc32xx: silence fall-through warning (Torez Smith) [1686205] - [usb] usb: chipidea: imx: fix EPROBE_DEFER support during driver probe (Torez Smith) [1686205] - [usb] usb: host: fotg2: restart hcd after port reset (Torez Smith) [1686205] - [usb] USB: CDC: fix sanity checks in CDC union parser (Torez Smith) [1686205] - [usb] usb: cdc-acm: make sure a refcount is taken early enough (Torez Smith) [1686205] - [usb] USB: serial: option: add the BroadMobi BM818 card (Torez Smith) [1686205] - [usb] USB: serial: option: Add Motorola modem UARTs (Torez Smith) [1686205] - [usb] USB: core: Fix races in character device registration and deregistraion (Torez Smith) [1686205] - [usb] usb: gadget: mass_storage: Fix races between fsg_disable and fsg_set_alt (Torez Smith) [1686205] - [usb] usb: gadget: composite: Clear "suspended" on reset/disconnect (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Fix sysfs interface of "role" (Torez Smith) [1686205] - [usb] usb: setup authorized_default attributes using usb_bus_notify (Torez Smith) [1686205] - [usb] usb: iowarrior: fix deadlock on disconnect (Torez Smith) [1686205] - [usb] Revert "USB: rio500: simplify locking" (Torez Smith) [1686205] - [usb] usb: usbfs: fix double-free of usb memory upon submiturb error (Torez Smith) [1686205] - [usb] usb: yurex: Fix use-after-free in yurex_delete (Torez Smith) [1686205] - [usb] USB: serial: option: add D-Link DWM-222 device ID (Torez Smith) [1686205] - [usb] USB: serial: option: Add support for ZTE MF871A (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Ignore unsupported/unknown alternate mode requests (Torez Smith) [1686205] - [usb] xhci: Fix NULL pointer dereference at endpoint zero reset (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Fix timeout in xhci_suspend() (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: Fix uninitilized symbol error (Torez Smith) [1686205] - [usb] usb: typec: tcpm: remove tcpm dir if no children (Torez Smith) [1686205] - [usb] usb: typec: tcpm: free log buf memory when remove debug file (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Add NULL check before dereferencing config (Torez Smith) [1686205] - [tools] tools headers UAPI: Sync usbdevice_fs.h with the kernels to get new ioctl (Torez Smith) [1686205] - [usb] xhci: Fix crash if scatter gather is used with Immediate Data Transfer (IDT) (Torez Smith) [1686205] - [usb] usb: usb251xb: Reallow swap-dx-lanes to apply to the upstream port (Torez Smith) [1686205] - [usb] Revert "usb: usb251xb: Add US port lanes inversion property" (Torez Smith) [1686205] - [documentation] Revert "usb: usb251xb: Add US lanes inversion dts-bindings" (Torez Smith) [1686205] - [usb] usb: wusbcore: fix unbalanced get/put cluster_id (Torez Smith) [1686205] - [usb] usb/hcd: Fix a NULL vs IS_ERR() bug in usb_hcd_setup_local_mem() (Torez Smith) [1686205] - [usb] usb-storage: Add a limitation for blk_queue_max_hw_sectors() (Torez Smith) [1686205] - [usb] usb: pci-quirks: Minor cleanup for AMD PLL quirk (Torez Smith) [1686205] - [usb] usb: pci-quirks: Correct AMD PLL quirk detection (Torez Smith) [1686205] - [usb] vfs: Convert gadgetfs to use the new mount API (Torez Smith) [1686205] - [usb] Revert "usb: gadget: storage: Remove warning message" (Torez Smith) [1686205] - [documentation] Revert "dt-bindings: add binding for USBSS-DRD controller." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Separated decoding functions from dwc3 driver." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Patch simplify usb_decode_set_clear_feature function." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Simplify usb_decode_get_set_descriptor function." (Torez Smith) [1686205] - [usb] Revert "usb:cdns3 Add Cadence USB3 DRD Driver" (Torez Smith) [1686205] - [usb] Revert "usb:cdns3 Fix for stuck packets in on-chip OUT buffer." (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ehci: Fix example warnings (Torez Smith) [1686205] - [usb] usb :fsl: Change string format for errata property (Torez Smith) [1686205] - [usb] usb: host: Stops USB controller init if PLL fails to lock (Torez Smith) [1686205] - [usb] usb: phy: Workaround for USB erratum-A005728 (Torez Smith) [1686205] - [usb] usb: fsl: Set USB_EN bit to select ULPI phy (Torez Smith) [1686205] - [usb] usb: Handle USB3 remote wakeup for LPM enabled devices correctly (Torez Smith) [1686205] - [usb] drivers/usb/typec/tps6598x.c: fix 4CC cmd write (Torez Smith) [1686205] - [usb] drivers/usb/typec/tps6598x.c: fix portinfo width (Torez Smith) [1686205] - [usb] usb: storage: scsiglue: Do not skip VPD if try_vpd_pages is set (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add a workaround for a race condition of workqueue (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: remove redundant assignment to ret (Torez Smith) [1686205] - [usb] usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset() (Torez Smith) [1686205] - [usb] USB: gadget: function: fix issue Unneeded variable: "value" (Torez Smith) [1686205] - [usb] usb: phy: phy-mxs-usb: add imx7ulp support (Torez Smith) [1686205] - [usb] usb:cdns3 Fix for stuck packets in on-chip OUT buffer (Torez Smith) [1686205] - [usb] usb:cdns3 Add Cadence USB3 DRD Driver (Torez Smith) [1686205] - [usb] usb:gadget Simplify usb_decode_get_set_descriptor function (Torez Smith) [1686205] - [usb] usb:gadget Patch simplify usb_decode_set_clear_feature function (Torez Smith) [1686205] - [usb] usb:gadget Separated decoding functions from dwc3 driver (Torez Smith) [1686205] - [documentation] dt-bindings: add binding for USBSS-DRD controller (Torez Smith) [1686205] - [usb] usb: dwc3: pci: add support for TigerLake Devices (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add ID for isodebug v1 (Torez Smith) [1686205] - [usb] usb: host: Fix excessive alignment restriction for local memory allocations (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use struct platform_callback pointer (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add a common function for the .get_id (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move device tree properties parsing (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add struct device * declaration in usbhs_probe() (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add has_new_pipe_configs flag (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use dev_of_node macro instead of open coded (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Remove type member from renesas_usbhs_driver_param (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use a specific flag instead of type for multi_clks (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Avoid to write platform_data's value (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move macros from mod.c to the mod.h (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove notify_hotplug callback (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: revise the irq_vbus comments (Torez Smith) [1686205] - [usb] USB: core: Fix compiler warnings in devio.c (Torez Smith) [1686205] - [usb] USB: core: Remove usbfs_mutex (Torez Smith) [1686205] - [usb] usb: clean up some of the computations in adu_read (Torez Smith) [1686205] - [usb] scsi: usb: image: microtek: use sg helper to iterate over scatterlist (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use struct assignment instead of memcpy() (Torez Smith) [1686205] - [usb] USB: core: correct a spelling mistake in the comment (Torez Smith) [1686205] - [usb] usb: dwc3: remove unused @lock member of dwc3_ep struct (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Add Support for Intel Elkhart Lake Devices (Torez Smith) [1686205] - [usb] usb: Replace snprintf with scnprintf in gether_get_ifname (Torez Smith) [1686205] - [uapi] USB: fix types in uapi include (Torez Smith) [1686205] - [usb] USB: serial: option: add support for GosunCn ME3630 RNDIS mode (Torez Smith) [1686205] - [usb] xhci: detect USB 3.2 capable host controllers correctly (Torez Smith) [1686205] - [usb] usb: xhci: Don't try to recover an endpoint if port is in error state (Torez Smith) [1686205] - [usb] usb: gadget: ether: Fix race between gether_disconnect and rx_submit (Torez Smith) [1686205] - [usb] usb: gadget: storage: Remove warning message (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Add support for disabling U1 and U2 entries (Torez Smith) [1686205] - [usb] usb: gadget: send usb_gadget as an argument in get_config_params (Torez Smith) [1686205] - [documentation] doc: dt: bindings: usb: dwc3: Update entries for disabling U1 and U2 (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Use of_clk_get_parent_count() (Torez Smith) [1686205] - [usb] usb: dwc3: Fix core validation in probe, move after clocks are enabled (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Improve error handling (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Start USB in 'host mode' on the SDM845 (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Add support for booting with ACPI (Torez Smith) [1686205] - [usb] Revert "usb: dwc2: host: Setting qtd to NULL after freeing it" (Torez Smith) [1686205] - [usb] usb: gadget: net2272: remove redundant assignments to pointer 's' (Torez Smith) [1686205] - [usb] usb: gadget: Zero ffs_io_data (Torez Smith) [1686205] - [usb] USB: omap_udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] fotg210-udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: gadget: at91_udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Enhance role switch support (Torez Smith) [1686205] - [usb] usb: gadget: u_audio: Fixed variable declaration coding style issue (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: data_len used before properly set (Torez Smith) [1686205] - [usb] USB: dwc2: Don't turn off the usbphy in suspend if wakeup is enabled (Torez Smith) [1686205] - [documentation] Documentation: dt-bindings: Add snps, need-phy-for-wake for dwc2 USB (Torez Smith) [1686205] - [usb] usb: dwc2: Force 8bit UTMI width for Samsung Exynos SoCs (Torez Smith) [1686205] - [usb] usb: dwc3: meson-g12a: Add support for IRQ based OTG switching (Torez Smith) [1686205] - [usb] usb: dwc2: Use generic PHY width in params setup (Torez Smith) [1686205] - [usb] usb: host: fotg2: add device tree probing (Torez Smith) [1686205] - [usb] usb: isp1362: Spelling s/eclusive/exclusive/ (Torez Smith) [1686205] - [usb] USB: add usbfs ioctl to retrieve the connection parameters (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Fix Wunused-const-variable (Torez Smith) [1686205] - [usb] usb: chipidea: udc: workaround for endpoint conflict issue (Torez Smith) [1686205] - dt-bindings: usb: renesas_gen3: Rename bindings documentation file (Torez Smith) [1686205] - dt-bindings: usb: renesas_usbhs: Rename bindings documentation file (Torez Smith) [1686205] - [documentation] docs: power: convert docs to ReST and rename to *.rst (Torez Smith) [1686205] - [usb] docs: kbuild: convert docs to ReST and rename to *.rst (Torez Smith) [1686205] - [usb] usb: chipidea: msm: Use devm_platform_ioremap_resource() (Torez Smith) [1686205] - [usb] usb: chipidea: imx: Use devm_platform_ioremap_resource() (Torez Smith) [1686205] - [usb] usb: chipidea: Use dev_err() instead of pr_err() (Torez Smith) [1686205] - [usb] usb: chipidea: imx: "fsl, usbphy" phandle is not mandatory now (Torez Smith) [1686205] - [usb] usb: chipidea: imx: add imx7ulp support (Torez Smith) [1686205] - [usb] usb: typec: Make sure an alt mode exist before getting its partner (Torez Smith) [1686205] - [usb] Revert "usb: mtu3: fix up undefined reference to usb_debug_root" (Torez Smith) [1686205] - [usb] USB: sisusbvga: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: typec: tcpm: fusb302: simplify getting the adapter of a client (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add runtime pm workaround (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: enable runtime pm support (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: fix return value check in lpc32xx_udc_probe() (Torez Smith) [1686205] - [usb] usb: gadget: dwc2: fix zlp handling (Torez Smith) [1686205] - [usb] usb: dwc2: Set actual frame number for completed ISOC transfer for none DDMA (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: allocate descriptor with GFP_ATOMIC (Torez Smith) [1686205] - [usb] usb: gadget: fusb300_udc: Fix memory leak of fusb300->ep (Torez Smith) [1686205] - [usb] usb: phy: mxs: Disable external charger detect in mxs_phy_hw_init() (Torez Smith) [1686205] - [usb] usb: dwc2: Fix DMA cache alignment issues (Torez Smith) [1686205] - [usb] usb: dwc2: host: Fix wMaxPacketSize handling (fix webcam regression) (Torez Smith) [1686205] - [usb] USB: move usb debugfs directory creation to the usb common core (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: remove unneeded variable frame (Torez Smith) [1686205] - [usb] media: usb/gadget/f_uvc: set device_caps in struct video_device (Torez Smith) [1686205] - [usb] usbip: Replace unused kvec array with single variable in vhci_send_cmd_unlink() (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove controlling PWEN/EXTLP support (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove sudmac support (Torez Smith) [1686205] - [usb] usb: xhci: Add Clear_TT_Buffer (Torez Smith) [1686205] - [usb] usb: Add devaddr in struct usb_device (Torez Smith) [1686205] - [usb] USB: Fix chipmunk-like voice when using Logitech C270 for recording audio (Torez Smith) [1686205] - [usb] USB: usb-storage: Add new ID to ums-realtek (Torez Smith) [1686205] - [usb] USB: use genalloc for USB HCs with local memory (Torez Smith) [1686205] - [usb] usb: phy: mv-usb: Remove set but not used variable 'phy' (Torez Smith) [1686205] - [usb] usb: ftdi-elan: fix possible condition with no effect (if == else) (Torez Smith) [1686205] - [usb] USB: ohci-spear: Remove set but not used variable 'ohci' (Torez Smith) [1686205] - [usb] USB: atm: ueagle-atm.c: remove redundant license text (Torez Smith) [1686205] - [usb] USB: atm: ueagle-atm.c: fix SPDX tag to be BSD2 (Torez Smith) [1686205] - [usb] usb: ohci-s3c2410: Remove set but not used variable 'hcd' (Torez Smith) [1686205] - [usb] usb: cdc-wdm: remove redundant assignment to rv (Torez Smith) [1686205] - [usb] usb: host: ohci-st: Remove set but not used variable 'ohci' (Torez Smith) [1686205] - [usb] usb: host: ehci-st: Remove set but not used variable 'ehci' (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: fix memory leak in do_flash (Torez Smith) [1686205] - [include] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Torez Smith) [1686205] - [usb] usbip: usbip_host: fix stub_dev lock context imbalance regression (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Torez Smith) [1686205] - [usb] usb: avoid redundant allocation and free of memory (Torez Smith) [1686205] - [usb] signal/usb: Replace kill_pid_info_as_cred with kill_pid_usb_asyncio (Torez Smith) [1686205] - [usb] xhci: Use zu for printing size_t type (Torez Smith) [1686205] - [usb] xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic() (Torez Smith) [1686205] - [usb] xhci: Fix immediate data transfer if buffer is already DMA mapped (Torez Smith) [1686205] - [usb] usb: xhci: avoid null pointer deref when bos field is NULL (Torez Smith) [1686205] - [usb] usb: xhci: Fix a potential null pointer dereference in xhci_debugfs_create_endpoint() (Torez Smith) [1686205] - [usb] xhci: update bounce buffer with correct sg num (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit 0x1260 and 0x1261 compositions (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add Allied Telesis VT-Kit3 (Torez Smith) [1686205] - [usb] USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode (Torez Smith) [1686205] - [tools] treewide: Add SPDX license identifier - Makefile/Kconfig (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r7s9210 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add support for RZ/A2 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: support byte addressable CFIFO (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for CNEN bit (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move flags to param (Torez Smith) [1686205] - [usb] usb: core: hub: Disable hub-initiated U1/U2 (Torez Smith) [1686205] - [usb] usb: core: hub: Enable/disable U1/U2 in configured state (Torez Smith) [1686205] - [usb] USB: rio500: simplify locking (Torez Smith) [1686205] - [usb] USB: rio500: fix memory leak in close after disconnect (Torez Smith) [1686205] - [usb] USB: rio500: refuse more than one device at a time (Torez Smith) [1686205] - [usb] usbip: usbip_host: fix BUG: sleeping function called from invalid context (Torez Smith) [1686205] - [usb] USB: sisusbvga: fix oops in error path of sisusb_probe (Torez Smith) [1686205] - [usb] USB: Add LPM quirk for Surface Dock GigE adapter (Torez Smith) [1686205] - [usb] usb: mtu3: fix up undefined reference to usb_debug_root (Torez Smith) [1686205] - [usb] USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor (Torez Smith) [1686205] - [usb] usb: remove redundant 'default n' from Kconfig-s (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use specific struct instead of USBHS_TYPE_* enums (Torez Smith) [1686205] - [usb] USB: OHCI: remove space before open square bracket '[' (Torez Smith) [1686205] - [usb] usb: exynos: add workaround for the USB device bindings conflict (Torez Smith) [1686205] - [usb] usbip: usbip_host: cleanup do_rebind() return path (Torez Smith) [1686205] - [usb] USB: serial: f81232: clear overrun flag (Torez Smith) [1686205] - [usb] USB: serial: f81232: fix interrupt worker not stop (Torez Smith) [1686205] - [usb] usb: dwc3: Rename DWC3_DCTL_LPM_ERRATA (Torez Smith) [1686205] - [usb] usb: dwc3: Fix default lpm_nyet_threshold value (Torez Smith) [1686205] - [usb] usb: dwc3: debug: Print GET_STATUS(device) tracepoint (Torez Smith) [1686205] - [usb] usb: dwc3: Do core validation early on probe (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Set lpm_capable (Torez Smith) [1686205] - [usb] usb: gadget: atmel: tie wake lock to running clock (Torez Smith) [1686205] - [usb] usb: gadget: atmel: support USB suspend (Torez Smith) [1686205] - [usb] usb: gadget: atmel_usba_udc: simplify setting of interrupt-enabled mask (Torez Smith) [1686205] - [usb] dwc2: gadget: Fix completed transfer size calculation in DDMA (Torez Smith) [1686205] - [usb] usb: dwc2: Set lpm mode parameters depend on HW configuration (Torez Smith) [1686205] - [usb] usb: dwc2: Fix channel disable flow (Torez Smith) [1686205] - [usb] usb: dwc2: Set actual frame number for completed ISOC transfer (Torez Smith) [1686205] - [usb] usb: gadget: do not use __constant_cpu_to_le16 (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Increase descriptors count for ISOC's (Torez Smith) [1686205] - [usb] usb: dwc3: move synchronize_irq() out of the spinlock protected block (Torez Smith) [1686205] - [usb] usb: dwc3: Free resource immediately after use (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: Convert to bulk clk API (Torez Smith) [1686205] - [usb] usb: dwc2: Delayed status support (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: rework interrupt handling (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: add support for stotg04 phy (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: properly setup phy interrupts (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: simplify vbus handling (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: simplify probe (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Move gadget phy init into core phy init (Torez Smith) [1686205] - [usb] usb: dwc2: Move phy init into core (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Replace phyif with phy_utmi_width (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Remove duplicated phy init (Torez Smith) [1686205] - [usb] usb: dwc2: Move UTMI_PHY_DATA defines closer (Torez Smith) [1686205] - [usb] usb: dwc2: optionally assert phy reset when waking up (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: Document quirk to reset PHY upon wakeup (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: document the vbus-supply property (Torez Smith) [1686205] - [usb] USB: UDC: net22{80, 72}: remove mistaken test of req->zero (Torez Smith) [1686205] - [usb] USB: UDC: net2280: Remove redundant "if" condition (Torez Smith) [1686205] - [usb] usb: gadget: fsl: fix link error against usb-gadget module (Torez Smith) [1686205] - [usb] usb: gadget: f_ncm: Add OS descriptor support (Torez Smith) [1686205] - [usb] usb: gadget: f_ncm: Fix NTP-32 support (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Reject LPM token during Control transfers (Torez Smith) [1686205] - [usb] USB: Export usb_wakeup_enabled_descendants() (Torez Smith) [1686205] - [usb] usb: dwc2: bus suspend/resume for hosts with DWC2_POWER_DOWN_PARAM_NONE (Torez Smith) [1686205] - [usb] usb: dwc3: Add Amlogic G12A DWC3 glue (Torez Smith) [1686205] - [usb] usb: dwc2: Add Amlogic G12A DWC2 Params (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc3: Add Amlogic G12A DWC3 Glue Bindings (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: Add Amlogic G12A DWC2 Compatible (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: don't free buffer prematurely (Torez Smith) [1686205] - [usb] USB: serial: io_edgeport: fix up switch fall-through comments (Torez Smith) [1686205] - [usb] usb: usb251xb: Add US port lanes inversion property (Torez Smith) [1686205] - [usb] usb: usb251xb: Create a ports field collector method (Torez Smith) [1686205] - [documentation] usb: usb251xb: Add US lanes inversion dts-bindings (Torez Smith) [1686205] - [usb] usb: isp1760-hcd: Fix fall-through annotations (Torez Smith) [1686205] - [usb] usb: musb: dsps: Use dev_get_drvdata() (Torez Smith) [1686205] - [usb] usb: musb: jz4740: obtain USB PHY from devicetree (Torez Smith) [1686205] - [usb] usb: musb: jz4740: Let the platform probe the PHY (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Add usb-phy property to the jz4740-musb node (Torez Smith) [1686205] - [soc] soc: sunxi: Fix missing dependency on REGMAP_MMIO (Torez Smith) [1686205] - [usb] usb: musb: omap2430: Add support for idling phy when musb is idle (Torez Smith) [1686205] - [usb] usb: musb: Silence error about blacklisting hubs if !CONFIG_USB (Torez Smith) [1686205] - [usb] usbip: vhci_hcd: Mark expected switch fall-through (Torez Smith) [1686205] - [usb] UAS: fix alignment of scatter/gather segments (Torez Smith) [1686205] - [include] USB: serial: drop unused iflag macro (Torez Smith) [1686205] - [usb] USB: serial: drop unnecessary goto (Torez Smith) [1686205] - [usb] USB: serial: clean up throttle handling (Torez Smith) [1686205] - [usb] USB: serial: fix unthrottle races (Torez Smith) [1686205] - [usb] USB: cdc-acm: clean up throttle handling (Torez Smith) [1686205] - [usb] USB: cdc-acm: fix unthrottle races (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: fix missing unlock on error in ccg_cmd_write_flash_row() (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r8a77470 (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a774c0 support (Torez Smith) [1686205] - [usb] usb: xhci: add endpoint context tracing when an endpoint is added (Torez Smith) [1686205] - [usb] xhci: Add tracing for input control context (Torez Smith) [1686205] - [usb] xhci: add port and bus number to port dynamic debugging (Torez Smith) [1686205] - [usb] usb: xhci: add Immediate Data Transfer support (Torez Smith) [1686205] - [usb] usb: usb251xb: Add an empty hub' i2c-bus segment checker (Torez Smith) [1686205] - [usb] USB: serial: spcp8x5: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: oti6858: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop bogus initial cflag (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: clean up initial-termios handling (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: drop unused termios (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: drop unused driver data flag (Torez Smith) [1686205] - [usb] USB: serial: fix initial-termios handling (Torez Smith) [1686205] - [usb] USB: yurex: Fix protection fault after device removal (Torez Smith) [1686205] - [usb] usb: usbip: fix isoc packet num validation in get_pipe (Torez Smith) [1686205] - [usb] usb/hcd: Send a uevent signaling that the host controller had died (Torez Smith) [1686205] - [usb] usb: typec: Add driver for NVIDIA Alt Modes (Torez Smith) [1686205] - [usb] usb: typec: displayport: Export probe and remove functions (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Support for DisplayPort alt mode (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Preliminary support for alternate modes (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add firmware flashing support (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add get_fw_info function (Torez Smith) [1686205] - [usb] usb: usb251xb: Lock i2c-bus segment the hub resides (Torez Smith) [1686205] - [usb] usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON (Torez Smith) [1686205] - [usb] usbip: stub_rx: tidy the indenting in is_clear_halt_cmd() (Torez Smith) [1686205] - [usb] USB: serial: digi_acceleport: clean up set_termios (Torez Smith) [1686205] - [usb] USB: serial: digi_acceleport: clean up modem-control handling (Torez Smith) [1686205] - [usb] USB: core: Fix bug caused by duplicate interface PM usage counter (Torez Smith) [1686205] - [usb] usb: mtu3: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: chipidea: msm: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: dwc2: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: misc: usb3503: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: xhci-mtk: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Revert "Resolve fixed power role contract setup" (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Implement start_toggling for all port-types (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Notify the tcpc to start connection-detection for SRPs (Torez Smith) [1686205] - [usb] usb: host: use usb_endpoint_maxp instead of usb_maxpacket (Torez Smith) [1686205] - [usb] USB: dummy-hcd: Fix failure to give back unlinked URBs (Torez Smith) [1686205] - [usb] USB: core: Don't unbind interfaces following device reset failure (Torez Smith) [1686205] - [usb] usb-storage: Set virt_boundary_mask to avoid SG overflows (Torez Smith) [1686205] - [usb] USB: core: Fix unterminated string returned by usb_string() (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert the generic EHCI binding to YAML (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert the generic OHCI binding to YAML (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert USB HCD generic binding to YAML (Torez Smith) [1686205] - [usb] USB: hub: Remove returned value 'status' since never used (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Add Tegra186 XUSB support (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Selectively program IPFS (Torez Smith) [1686205] - [documentation] dt-bindings: usb: xhci-tegra: Add Tegra186 support (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: drop the vbus GPIO (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: disable the regulator if the overcurrent irq fired (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: let the regulator framework keep track of use count (Torez Smith) [1686205] - [usb] USB: serial: pl2303: fix tranceiver suspend mode (Torez Smith) [1686205] - [usb] USB: serial: pl2303: fix non-supported xon/xoff (Torez Smith) [1686205] - [usb] USB: serial: option: add Olicard 600 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add new device id (Torez Smith) [1686205] - [usb] usb: u132-hcd: fix resource leak (Torez Smith) [1686205] - [usb] usb: cdc-acm: fix race during wakeup blocking TX traffic (Torez Smith) [1686205] - [usb] usb: mtu3: fix EXTCON dependency (Torez Smith) [1686205] - [usb] usb: usb251xb: fix to avoid potential NULL pointer dereference (Torez Smith) [1686205] - [usb] usb: core: Try generic PHY_MODE_USB_HOST if usb_phy_roothub_set_mode fails (Torez Smith) [1686205] - [usb] usb: introduce usb_ep_type_string() function (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Make fusb302_irq_work static (Torez Smith) [1686205] - [usb] usb: u132-hcd: fix potential NULL pointer dereference (Torez Smith) [1686205] - [usb] usb: typec: wcove: Provide fwnode for the port (Torez Smith) [1686205] - [usb] usb: core: Add PM runtime calls to usb_hcd_platform_shutdown (Torez Smith) [1686205] - [usb] usb: sierra: fix a missing check of device_create_file (Torez Smith) [1686205] - [usb] usb: mtu3: add a function to switch mailbox state to string (Torez Smith) [1686205] - [usb] usb: mtu3: add tracepoints to help debug (Torez Smith) [1686205] - [usb] usb: mtu3: move vbus and mode debugfs interfaces into mtu3_debugfs.c (Torez Smith) [1686205] - [usb] usb: mtu3: add debugfs interface files (Torez Smith) [1686205] - [usb] usb: mtu3: supports new QMU format (Torez Smith) [1686205] - [usb] usb: mtu3: rebuild qmu_gpd struct to prepare to support new QMU format (Torez Smith) [1686205] - [usb] usb: mtu3: fix transfer error of USB3 Gen2 isoc (Torez Smith) [1686205] - [usb] usb: mtu3: rebuild the code of getting vbus regulator (Torez Smith) [1686205] - [usb] usb: mtu3: remove unnecessary local variable @req (Torez Smith) [1686205] - [usb] usb: mtu3: print useful information also for device and host modes (Torez Smith) [1686205] - [usb] usb: mtu3: check return value of devm_extcon_register_notifier() (Torez Smith) [1686205] - [usb] xhci: Don't let USB3 ports stuck in polling state prevent suspend (Torez Smith) [1686205] - [usb] usb: xhci: dbc: Don't free all memory with spinlock held (Torez Smith) [1686205] - [usb] xhci: Fix port resume done detection for SS ports with LPM enabled (Torez Smith) [1686205] - [usb] USB: serial: mos7720: fix mos_parport refcount imbalance on error path (Torez Smith) [1686205] - [usb] USB: gadget: f_hid: fix deadlock in f_hidg_write() (Torez Smith) [1686205] - [usb] usb: gadget: net2272: Fix net2272_dequeue() (Torez Smith) [1686205] - [usb] usb: gadget: net2280: Fix net2280_dequeue() (Torez Smith) [1686205] - [usb] usb: gadget: net2280: Fix overrun of OUT messages (Torez Smith) [1686205] - [usb] usb: dwc3: pci: add support for Comet Lake PCH ID (Torez Smith) [1686205] - [usb] usb: usb251xb: Remove unnecessary comparison of unsigned integer with >= 0 (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Add __printf attribute to fusb302_log function (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Improve suspend/resume handling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: 2 small misc. fixes (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Fix fusb302_handle_togdone_src Ra handling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Check vconn is off when we start toggling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Fold fusb302_set_cc_pull into tcpm_set_cc (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Refactor / simplify tcpm_set_cc() (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Make fusb302_set_cc_polarity also set pull ups / downs (Torez Smith) [1686205] - [usb] usb: typec: pi3usb30532: Keep orientation when setting mux to safe mode (Torez Smith) [1686205] - [usb] usb: typec: altmodes/displayport: Fall back to multi-func pins (Torez Smith) [1686205] - [usb] usbip: Remove unnecessary null check (Torez Smith) [1686205] - [include] USB: usb.h: tweak struct urb to remove wasted space (Torez Smith) [1686205] - [usb] usb: common: Consider only available nodes for dr_mode (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Add XHCI_TRUST_TX_LENGTH quirk (Torez Smith) [1686205] - [usb] usb: typec: Fix unchecked return value (Torez Smith) [1686205] - [usb] USB: serial: option: set driver_info for SIM5218 and compatibles (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add additional NovaTech products (Torez Smith) [1686205] - [usb] USB: serial: option: add support for Quectel EM12 (Torez Smith) [1686205] - [usb] wusb: Remove unnecessary static function ckhdid_printf (Torez Smith) [1686205] - [usb] usb: core: make default autosuspend delay configurable (Torez Smith) [1686205] - [usb] usb: core: Fix typo in description of "authorized_default" (Torez Smith) [1686205] - [usb] usb: chipidea: Refactor USB PHY selection and keep a single PHY (Torez Smith) [1686205] - [usb] usb: chipidea: Grab the (legacy) USB PHY by phandle first (Torez Smith) [1686205] - [usb] usb: chipidea: imx: set power polarity (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ci-hdrc-usb2: add property power-active-high (Torez Smith) [1686205] - [usb] usb: chipidea: imx: remove unused header files (Torez Smith) [1686205] - [usb] usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() (Torez Smith) [1686205] - [usb] usb: core: add option of only authorizing internal devices (Torez Smith) [1686205] - [usb] usb: typec: tps6598x: handle block writes separately with plain-I2C adapters (Torez Smith) [1686205] - [usb] usb: xhci: Fix for Enabling USB ROLE SWITCH QUIRK on INTEL_SUNRISEPOINT_LP_XHCI (Torez Smith) [1686205] - [usb] usb: xhci: fix build warning - missing prototype (Torez Smith) [1686205] - [usb] usb: xhci: dbc: Fixing typo error (Torez Smith) [1686205] - [usb] usb: xhci: remove unused member 'parent' in xhci_regset struct (Torez Smith) [1686205] - [usb] xhci: tegra: Prevent error pointer dereference (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit ME910 ECM composition (Torez Smith) [1686205] - [usb] usb: core: Replace hardcoded check with inline function from usb.h (Torez Smith) [1686205] - [usb] usb: core: skip interfaces disabled in devicetree (Torez Smith) [1686205] - [usb] usb: typec: mux: remove redundant check on variable match (Torez Smith) [1686205] - [usb] USB: serial: cp210x: fix GPIO in autosuspend (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Defer probe if extcon device is not found (Torez Smith) [1686205] - [usb] cdc-wdm: pass return value of recover_from_urb_loss (Torez Smith) [1686205] - [usb] usb: host: oxu210hp-hcd: remove set but not used variables 'uframes, transfer_buffer_length' (Torez Smith) [1686205] - [usb] USB: renesas_usbhs: fix spelling mistake "doens't" -> "doesn't" (Torez Smith) [1686205] - [usb] usb: wusbcore: wa-xfer: use struct_size() helper (Torez Smith) [1686205] - [usb] usb: core: config: Use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: dwc2: use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: typec: mux: Fix unsigned comparison with less than zero (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add ID for Hjelmslund Electronics USB485 (Torez Smith) [1686205] - [usb] usb: typec: mux: Find the muxes by also matching against the device node (Torez Smith) [1686205] - [usb] usb: typec: Find the ports by also matching against the device node (Torez Smith) [1686205] - [usb] usb: roles: Find the muxes by also matching against the device node (Torez Smith) [1686205] - [usb] usb: typec: Rationalize the API for the muxes (Torez Smith) [1686205] - [usb] usb: typec: tps6598x: Check mode of operation (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Remove unused functions (Torez Smith) [1686205] - [usb] USB: musb: mark expected switch fall-through (Torez Smith) [1686205] - [usb] usb: phy: twl6030-usb: fix possible use-after-free on remove (Torez Smith) [1686205] - [usb] usb: misc: usbtest: add super-speed isoc support (Torez Smith) [1686205] - [usb] usb: dwc3: Reset num_trbs after skipping (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: don't enable interrupt when disabling endpoint (Torez Smith) [1686205] - [usb] scsi: uas: Use scsi_et_resid() where appropriate (Torez Smith) [1686205] - [usb] usb: host: oxu210hp-hcd: fix indentation issue (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add vbus and overcurrent gpios (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add a helper pointer to &pdev->dev (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add a new line after local variables (Torez Smith) [1686205] - [usb] usb: musb: Kconfig: Drop dependency on CONFIG_USB for jz4740 (Torez Smith) [1686205] - [usb] usb: musb: Kconfig: Drop dependency on MACH_JZ4740 for jz4740 (Torez Smith) [1686205] - [usb] usb: musb: jz4740: Add support for devicetree (Torez Smith) [1686205] - [documentation] Documentation: dt: Add binding info for jz4740-musb driver (Torez Smith) [1686205] - [usb] USB: musb: fix indentation issue on a return statement (Torez Smith) [1686205] - [usb] fotg210-udc: pass struct device to DMA API functions (Torez Smith) [1686205] - [usb] fotg210-udc: remove a bogus dma_sync_single_for_device call (Torez Smith) [1686205] - [usb] usb: gadget: Change Andrzej Pietrasiewicz's e-mail address (Torez Smith) [1686205] - [usb] usb: f_fs: Avoid crash due to out-of-scope stack ptr access (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Remove debug.h file (Torez Smith) [1686205] - [usb] usb: typec: Prepare alt mode enter/exit reporting for UCSI alt mode support (Torez Smith) [1686205] - [usb] usb: typec: displayport: Move the Configuration VDO helpers to the header (Torez Smith) [1686205] - [usb] USB: Fix configuration selection issues introduced in v4.20.0 (Torez Smith) [1686205] - [usb] usb: handle warm-reset port requests on hub resume (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add ID for Ingenico 3070 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add minimum baud rate for CP2105 SCI (Torez Smith) [1686205] - [usb] usb: dwc3: haps: Workaround matching VID PID (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: preserve wMaxPacketSize across usb_ep_autoconfig() call (Torez Smith) [1686205] - [usb] usb: gadget: move non-super speed code out of usb_ep_autoconfig_ss() (Torez Smith) [1686205] - [usb] usb: gadget: function: sync f_uac1 ac header baInterfaceNr (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add scatter-gather mode (Torez Smith) [1686205] - [usb] usb: gadget: fix various indentation issues (Torez Smith) [1686205] - [usb] usb: dwc2: Fix EP TxFIFO number setting (Torez Smith) [1686205] - [usb] udc: net2280: Fix net2280_disable (Torez Smith) [1686205] - [usb] USB: gadget: Improve kerneldoc for usb_ep_dequeue() (Torez Smith) [1686205] - [usb] usb: dwc3: debug: purge usage of strcat (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add GPIO support for CP2104 (Torez Smith) [1686205] - [usb] usb: dwc3: trace: pass trace buffer size to decoding functions (Torez Smith) [1686205] - [usb] usb: core: Move variable initialization to appropriate place (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove DWC3_EP_END_TRANSFER_PENDING (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: early giveback if End Transfer already completed (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: don't use resource_index as a flag (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: clear DWC3_EP_TRANSFER_STARTED on cmd complete (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Correct the PPS out_volt calculation (Torez Smith) [1686205] - [usb] usb: gadget: musb: fix short isoc packets with inventra dma (Torez Smith) [1686205] - [usb] usbip: Fix vep_free_request() null pointer checks on input args (Torez Smith) [1686205] - [usb] usb: ehci-orion: add S2RAM support (Torez Smith) [1686205] - [usb] usb: ehci-orion: avoid double PHY initialization (Torez Smith) [1686205] - [usb] usb: host: xhci: mvebu: add reset on resume quirk (Torez Smith) [1686205] - [usb] usb: core: comply to PHY framework (Torez Smith) [1686205] - [usb] usb: phy: am335x: fix race condition in _probe (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Fix error handling of clk_prepare_enable (Torez Smith) [1686205] - [usb] usb: phy: fix link errors (Torez Smith) [1686205] - [usb] usb: gadget: udc: net2272: Fix bitwise and boolean operations (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Handle 0 xfer length for OUT EP (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove req->started flag (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: prevent dwc3_request from being queued twice (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: add dwc3_request status tracking (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add support for r8a774c0 (Torez Smith) [1686205] - [usb] usb: gadget: uvc: add uvcg_warn macro (Torez Smith) [1686205] - [usb] usb: gadget: u_serial: process RX in workqueue instead of tasklet (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add r8a774c0 support (Torez Smith) [1686205] - [documentation] usb: gadget: udc: renesas_usb3: Add bindings for r8a774c0 (Torez Smith) [1686205] - [usb] usb: gadget: aspeed: fix typo (Torez Smith) [1686205] - [usb] usb: dwc3: keystone: Add support for ti, am654-dwc3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: keystone-usb: Add ti, am654-dwc3 support (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Add support for MSM8998 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Add support for msm8998 (Torez Smith) [1686205] - [usb] usb: gadget: Remove dead branch code (Torez Smith) [1686205] - [usb] USB: serial: cp210x: support all gpios on CP2102N QFN28 package (Torez Smith) [1686205] - [usb] usb: ftdi-elan: Fix if == else warnings in ftdi_elan_respond_engine (Torez Smith) [1686205] - [usb] usb: typec: tpcm: improve error handling of tcpm_register_port (Torez Smith) [1686205] - [usb] usb: misc: usb3503: Add system sleep support in non-I2C mode (Torez Smith) [1686205] - [usb] usbip: Fix vhci_urb_enqueue() URB null transfer buffer error path (Torez Smith) [1686205] - [usb] usb: sisusb: remove useless macros and compact the code (Torez Smith) [1686205] - [usb] usb: sisusb: let files build only when needed (Torez Smith) [1686205] - [usb] usb: sisusb_con, cleanup configs (Torez Smith) [1686205] - [usb] usb: sisusb_con, convert addr macros to functions (Torez Smith) [1686205] - [usb] usb: ftdi-elan: remove a unnecessary variable 'empty_packets' (Torez Smith) [1686205] - [usb] usb: assign ACPI companions for embedded USB devices (Torez Smith) [1686205] - [usb] usb: split code locating ACPI companion into port and device (Torez Smith) [1686205] - [usb] USB: host: whci: rename Kbuild file (Torez Smith) [1686205] - [usb] USB: remove README file (Torez Smith) [1686205] - [usb] USB: add missing SPDX lines to Kconfig and Makefiles (Torez Smith) [1686205] - [usb] USB: storage: karma: add whitespace after declarations (Torez Smith) [1686205] - [usb] USB: serial: keyspan_usa: add proper SPDX lines for .h files (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: add MODULE_DEVICE_TABLE (Torez Smith) [1686205] - [usb] USB: Consolidate LPM checks to avoid enabling LPM twice (Torez Smith) [1686205] - [usb] USB: Add new USB LPM helpers (Torez Smith) [1686205] - [usb] drivers: usb :fsl: Remove USB Errata checking code (Torez Smith) [1686205] - [usb] usb: kconfig: remove dependency FSL_SOC for ehci fsl driver (Torez Smith) [1686205] - [usb] usb: ehci: fsl: Update register accessing for arm/arm64 platforms (Torez Smith) [1686205] - [usb] usb: usb251xb: add usb data lane port swap feature (Torez Smith) [1686205] - [documentation] dt-bindings: usb: usb251xb: add documentation for data lane swapping (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: replace udelay() with usleep_range() (Torez Smith) [1686205] - [usb] USB: host: ohci-at91: add sam9x60-sfr definition for ohci (Torez Smith) [1686205] - [usb] xhci: Use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: hub: add retry routine after intr URB submit error (Torez Smith) [1686205] - [usb] USB: leds: fix regression in usbport led trigger (Torez Smith) [1686205] - [usb] usb: chipidea: fix static checker warning for NULL pointer (Torez Smith) [1686205] - [usb] USB: usbip: delete README file (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add new PID to support PL2303TB (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Fix Remote Wakeup interrupt bit clearing (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: fix GPIO not working in autosuspend (Torez Smith) [1686205] - [usb] usb: gadget: Potential NULL dereference on allocation error (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Fix the uninitialized link_state when udc starts (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Clear req->needs_extra_trb flag on cleanup (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: synchronize_irq dwc irq in suspend (Torez Smith) [1686205] - [usb] USB: core: urb: Use struct_size() in kmalloc() (Torez Smith) [1686205] - [usb] cross-tree: phase out dma_zalloc_coherent() (Torez Smith) [1686205] - [usb] usb: gadget: udc: reduce indentation (Torez Smith) [1686205] - [usb] usb: devio: update max count of DPs per interval for ISOC (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: fix a couple of indentation issues (Torez Smith) [1686205] - [usb] usb: core: Simplify return value of usb_get_configuration() (Torez Smith) [1686205] - [usb] USB: Add USB_QUIRK_DELAY_CTRL_MSG quirk for Corsair K70 RGB (Torez Smith) [1686205] - [usb] usbcore: Select only first configuration for non-UAC3 compliant devices (Torez Smith) [1686205] - [usb] USB: storage: add quirk for SMI SM3350 (Torez Smith) [1686205] - [usb] USB: storage: don't insert sane sense for SPC3+ when bad sense specified (Torez Smith) [1686205] - [usb] usb: cdc-acm: send ZLP for Telit 3G Intel based modems (Torez Smith) [1686205] - [usb] USB: serial: simple: add Motorola Tetra TPG2200 device id (Torez Smith) [1686205] - [usb] USB: serial: option: add Fibocom NL678 series (Torez Smith) [1686205] - [usb] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader (Torez Smith) [1686205] - [usb] usb: r8a66597: Fix a possible concurrency use-after-free bug in r8a66597_endpoint_disable() (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Extend the matching rules on PPS APDO selection (Torez Smith) [1686205] - [documentation] usb: typec: Improve Alt Mode documentation (Torez Smith) [1686205] - [usb] usb: musb: dsps: fix runtime pm for peripheral mode (Torez Smith) [1686205] - [usb] usb: musb: dsps: fix otg state machine (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add ids for Hewlett-Packard HP POS pole displays (Torez Smith) [1686205] - [usb] PCI: Move Synopsys HAPS platform device IDs (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for RZ/G2E (Torez Smith) [1686205] - [usb] usb: ehci-omap: Fix deferred probe for phy handling (Torez Smith) [1686205] - [usb] usb: roles: Add a description for the class to Kconfig (Torez Smith) [1686205] - [usb] xhci: Don't prevent USB2 bus suspend in state check intended for USB3 only (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit LN940 series (Torez Smith) [1686205] - [usb] USB: serial: option: add Fibocom NL668 series (Torez Smith) [1686205] - [usb] USB: serial: option: add Simcom SIM7500/SIM7600 (MBIM mode) (Torez Smith) [1686205] - [usb] USB: serial: option: add GosunCn ZTE WeLink ME3630 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: mark PM functions as __maybe_unused (Torez Smith) [1686205] - [usb] usb: core: Remove unnecessary memset() (Torez Smith) [1686205] - [usb] usb: host: isp1362-hcd: convert to DEFINE_SHOW_ATTRIBUTE (Torez Smith) [1686205] - [usb] usb: dwc2: Fix disable all EP's on disconnect (Torez Smith) [1686205] - [usb] usb: chipidea: imx: allow to configure oc polarity on i.MX25 (Torez Smith) [1686205] - [usb] usb: chipidea: imx: Warn if oc polarity isn't specified (Torez Smith) [1686205] - [usb] usb: chipidea: imx: support configuring for active low oc signal (Torez Smith) [1686205] - [documentation] doc: usb: ci-hdrc-usb2: Add pinctrl properties for HSIC pin groups (Torez Smith) [1686205] - [usb] usb: chipidea: host: override ehci->hub_control (Torez Smith) [1686205] - [usb] usb: chipidea: imx: add HSIC support (Torez Smith) [1686205] - [usb] usb: chipidea: add flag for imx hsic implementation (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Disable CSP for stream OUT ep (Torez Smith) [1686205] - [usb] USB: serial: mos7840: remove set but not used variables 'number, serial' (Torez Smith) [1686205] - [usb] USB: serial: option: add HP lt4132 (Torez Smith) [1686205] - [usb] usb: dwc2: disable power_down on Amlogic devices (Torez Smith) [1686205] - [usb] xhci: move usb2 get port status link resume handling to its own function (Torez Smith) [1686205] - [usb] xhci: refactor U0 link state handling in get_port_status (Torez Smith) [1686205] - [usb] xhci: cleanup code that sets portstatus and portchange bits (Torez Smith) [1686205] - [usb] xhci: move usb2 speficic bits to own function in get_port_status call (Torez Smith) [1686205] - [usb] xhci: move usb3 speficic bits to own function in get_port_status call (Torez Smith) [1686205] - [usb] xhci: remove unused hcd_index() (Torez Smith) [1686205] - [usb] xhci: move bus_state structure under the xhci_hub structure (Torez Smith) [1686205] - [usb] xhci: remove the unused sw_lpm_support (Torez Smith) [1686205] - [usb] Revert "usb: dwc3: pci: Use devm functions to get the phy GPIOs" (Torez Smith) [1686205] - [usb] USB: gadget: udc: s3c2410_udc: convert to DEFINE_SHOW_ATTRIBUTE (Torez Smith) [1686205] - [usb] usb: mtu3: fix dbginfo in qmu_tx_zlp_error_handler (Torez Smith) [1686205] - [usb] usb: dwc3: trace: add missing break statement to make compiler happy (Torez Smith) [1686205] - [usb] xhci: Prevent U1/U2 link pm states if exit latency is too long (Torez Smith) [1686205] - [usb] xhci: workaround CSS timeout on AMD SNPS 3.0 xHC (Torez Smith) [1686205] - [tty] USB: serial: console: fix reported terminal settings (Torez Smith) [1686205] - [usb] usb: appledisplay: Remove unnecessary spinlock (Torez Smith) [1686205] - [usb] usb: appledisplay: Set urb transfer_flags to URB_NO_TRANSFER_DMA_MAP (Torez Smith) [1686205] - [usb] usb: quirk: add no-LPM quirk on SanDisk Ultra Flair device (Torez Smith) [1686205] - [usb] USB: Fix invalid-free bug in port_over_current_notify() (Torez Smith) [1686205] - [usb] usb: appledisplay: Add 27" Apple Cinema Display (Torez Smith) [1686205] - [platform] staging: typec: fusb302: Rename fcs, extcon-name to linux, extcon-name (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Report isoc transfer frame number (Torez Smith) [1686205] - [include] usb: gadget: Introduce frame_number to usb_request (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use SIMPLE_DEV_PM_OPS macro (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Remove dummy runtime PM callbacks (Torez Smith) [1686205] - [usb] usb: dwc2: host: use hrtimer for NAK retries (Torez Smith) [1686205] - [usb] usb: hub: delay hub autosuspend if USB3 port is still link training (Torez Smith) [1686205] - [usb] usb: mtu3: clear SOFTCONN when clear USB3_EN if work as HS mode (Torez Smith) [1686205] - [usb] usb: mtu3: enable SETUPENDISR interrupt (Torez Smith) [1686205] - [usb] usb: mtu3: fix the issue about SetFeature(U1/U2_Enable) (Torez Smith) [1686205] - [usb] usb: mtu3: enable hardware remote wakeup from L1 automatically (Torez Smith) [1686205] - [usb] usb: mtu3: remove QMU checksum (Torez Smith) [1686205] - [usb] usb/mtu3: power down device ip at setup (Torez Smith) [1686205] - [usb] usb: dwc2: Disable power down feature on Samsung SoCs (Torez Smith) [1686205] - [usb] usb: dwc3: Correct the logic for checking TRB full in __dwc3_prepare_one_trb() (Torez Smith) [1686205] - [usb] usb: dwc3: don't issue no-op trb for stream capable endpoints (Torez Smith) [1686205] - [usb] usb: dwc3: update stream id in depcmd (Torez Smith) [1686205] - [usb] USB: serial: mos7840: add a product ID for the new product (Torez Smith) [1686205] - [usb] USB: serial: mos7840: clean up register handling (Torez Smith) [1686205] - [usb] usb: gadget: u_ether: fix unsafe list iteration (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: check if dep->frame_number is still valid (Torez Smith) [1686205] - [usb] USB: omap_udc: fix rejection of out transfers when DMA is used (Torez Smith) [1686205] - [usb] USB: omap_udc: fix USB gadget functionality on Palm Tungsten E (Torez Smith) [1686205] - [usb] USB: omap_udc: fix omap_udc_start() on 15xx machines (Torez Smith) [1686205] - [usb] USB: omap_udc: fix crashes on probe error and module removal (Torez Smith) [1686205] - [usb] USB: omap_udc: use devm_request_irq() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove unnecessary dev_info() (Torez Smith) [1686205] - [usb] usb: dwc3: trace: log ep commands in hex (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: return errors from __dwc3_gadget_start_isoc() (Torez Smith) [1686205] - [usb] usb: core: quirks: add RESET_RESUME quirk for Cherry G230 Stream series (Torez Smith) [1686205] - [usb] USB: usb-storage: Add new IDs to ums-realtek (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove wait_end_transfer (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: move requests to cancelled_list (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: introduce cancelled_list (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: extract dwc3_gadget_ep_skip_trbs() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: use num_trbs when skipping TRBs on ->dequeue() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: track number of TRBs per request (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: combine unaligned and zero flags (Torez Smith) [1686205] - [usb] usb: dwc3: Add workaround for isoc start transfer failure (Torez Smith) [1686205] - [documentation] usb: dwc3: Add disabling of start_transfer failure quirk (Torez Smith) [1686205] - [usb] usb: dwc3: Track DWC_usb31 VERSIONTYPE (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: Allow scatter-gather buffers (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: Add support for CCID descriptors (Torez Smith) [1686205] - [usb] usb: gadget: uvc: constify vb2_ops structure (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Accept LPM token when TxFIFO is not empty (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Fix WkupAlert interrupt handler (Torez Smith) [1686205] - [usb] usb: dwc3: Set default mode for DWC_usb3 v3.30a and higher (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add a safety connection way for forced_b_device (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Add support for DR detection through extcon (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Switch to device property for 'extcon' handling (Torez Smith) [1686205] - [usb] usb: dwc3: don't log probe deferrals; but do log other error codes (Torez Smith) [1686205] - [usb] usb: gadget: aspeed-vhub: constify usb_gadget_ops structure (Torez Smith) [1686205] - [usb] usb: dwc3: Support option to disable USB2 LPM (Torez Smith) [1686205] - [documentation] usb: dwc3: Add a property to disable USB2 LPM (Torez Smith) [1686205] - [usb] usb: dwc3: Set GUSB2PHYCFG.ENBLSLPM (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Print/set link state for peripheral mode (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Properly print/set link state for HS (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Dump internal LSP and ep registers (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Print eps Tx/RxFIFO in bytes (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Properly name Tx/RxFIFO (Torez Smith) [1686205] - [usb] Revert "usb: dwc3: gadget: skip Set/Clear Halt when invalid" (Torez Smith) [1686205] - [usb] drivers: usb: early: clean up indentation, remove extraneous tabs (Torez Smith) [1686205] - [usb] USB: ene_usb6250: add missing indentation (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: use rounding when calculating baud rate divisors (Torez Smith) [1686205] - [usb] USB: serial: f81534: fix reading old/new IC config (Torez Smith) [1686205] - [usb] usb: cdc-acm: add entry for Hiro (Conexant) modem (Torez Smith) [1686205] - [usb] usb: xhci: Prevent bus suspend if a port connect change or polling state is detected (Torez Smith) [1686205] - [usb] usb: core: Fix hub port connection events lost (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: fix ISOC TRB type on unaligned transfers (Torez Smith) [1686205] - [usb] Revert "usb: gadget: ffs: Fix BUG when userland exits with submitted AIO transfers" (Torez Smith) [1686205] - [usb] usb: dwc2: pci: Fix an error code in probe (Torez Smith) [1686205] - [usb] usb: dwc3: Fix NULL pointer exception in dwc3_pci_remove() (Torez Smith) [1686205] - [usb] USB: serial: mos7840: remove set but not used variables 'st, data1, iflag' (Torez Smith) [1686205] - [usb] USB: serial: quatech2: remove set but not used variable 'port_priv' (Torez Smith) [1686205] - [include] USB: remove the unused struct hcd_timeout definition (Torez Smith) [1686205] - [usb] usb: typec: ucsi: add support for Cypress CCGx (Torez Smith) [1686205] - [usb] usb: xhci: fix timeout for transition from RExit to U0 (Torez Smith) [1686205] - [usb] usb: xhci: fix uninitialized completion when USB3 port got wrong status (Torez Smith) [1686205] - [usb] xhci: Add check for invalid byte size error when UAS devices are connected (Torez Smith) [1686205] - [usb] xhci: handle port status events for removed USB3 hcd (Torez Smith) [1686205] - [usb] xhci: Fix leaking USB3 shared_hcd at xhci removal (Torez Smith) [1686205] - [documentation] dt-bindings: usb: xhci-tegra: Add power-domain details (Torez Smith) [1686205] - [usb] USB: misc: appledisplay: add 20" Apple Cinema Display (Torez Smith) [1686205] - [usb] USB: quirks: Add no-lpm quirk for Raydium touchscreens (Torez Smith) [1686205] - [usb] usb: quirks: Add delay-init quirk for Corsair K70 LUX RGB (Torez Smith) [1686205] - [usb] USB: Wait for extra delay time after USB_PORT_FEAT_RESET for quirky hub (Torez Smith) [1686205] - [usb] USB: gadget: udc: fix spelling mistake "intrerrupt" -> "interrupt" (Torez Smith) [1686205] - [usb] usb: host: remove unnecessary condition check (Torez Smith) [1686205] - [usb] usb: typec: tcpm: charge current handling for sink during hard reset (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Do not disconnect link for self powered devices (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Properly check last unaligned/zero chain TRB (Torez Smith) [1686205] - [usb] usb: dwc3: core: Clean up ULPI device (Torez Smith) [1686205] - [usb] usb: phy: ab8500: silence some uninitialized variable warnings (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Add genpd support (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Power-off power-domains on removal (Torez Smith) [1686205] - [usb] usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten (Torez Smith) [1686205] - [tools] usbip: tools: fix atoi() on non-null terminated string (Torez Smith) [1686205] - [usb] USB: misc: appledisplay: fix backlight update_status return code (Torez Smith) [1686205] - [usb] USB: fix the usbfs flag sanitization for control transfers (Torez Smith) [1686205] - [documentation] usb: host: add DT bindings for faraday fotg2 (Torez Smith) [1686205] - [usb] usb: host: ohci-at91: fix request of irq for optional gpio (Torez Smith) [1686205] - [usb] usb: xhci: pci: Enable Intel USB role mux on Apollo Lake platforms (Torez Smith) [1686205] - [usb] usb: roles: intel_xhci: Fix Unbalanced pm_runtime_enable (Torez Smith) [1686205] - [usb] cdc-acm: correct counting of UART states in serial state notification (Torez Smith) [1686205] - [usb] cdc-acm: do not reset notification buffer index upon urb unlinking (Torez Smith) [1686205] - [usb] cdc-acm: fix race between reset and control messaging (Torez Smith) [1686205] - [usb] usb: usbip: Fix BUG: KASAN: slab-out-of-bounds in vhci_hub_control() (Torez Smith) [1686205] - [usb] usb/early: remove set but not used variable 'remain_length' (Torez Smith) [1686205] - [usb] usb: typec: Fix copy/paste on typec_set_vconn_role() kerneldoc (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Report back negotiated PPS voltage and current (Torez Smith) [1686205] - [usb] USB: core: remove set but not used variable 'udev' (Torez Smith) [1686205] - [usb] usb: core: fix memory leak on port_dev_path allocation (Torez Smith) [1686205] - [usb] USB: net2280: Remove ->disconnect() callback from net2280_pullup() (Torez Smith) [1686205] - [usb] usb: dwc2: disable power_down on rockchip devices (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add support for r8a77990 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usb3: add bindings for r8a77990 (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: remove set but not used variable 'iflag' (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: fix interrupt-out transfer length (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add support for FT232R CBUS gpios (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: fix gpio name collisions (Torez Smith) [1686205] - [netdrv] net: usbnet: make driver_info const (Torez Smith) [1686205] - [usb] usb: typec: remove set but not used variables 'snk_ma, min_mv' (Torez Smith) [1686205] - [usb] usb: export firmware port location in sysfs (Torez Smith) [1686205] - [usb] usb: hub: try old enumeration scheme first for high speed devices (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Document r8a7744 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r8a7744 (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage (Torez Smith) [1686205] - [tools] usbip: fix vhci_hcd controller counting (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Fix b-device mode for "workaround" (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add handler for WkupAlert interrupt (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: enable WKUP_ALERT interrupt (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Program GREFCLK register (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add parameters for GREFCLK register (Torez Smith) [1686205] - [usb] usb: dwc2: Add definitions for new registers (Torez Smith) [1686205] - [usb] usb: dwc2: Update target (u)frame calculation (Torez Smith) [1686205] - [usb] usb: dwc2: Add dwc2_gadget_dec_frame_num_by_one() function (Torez Smith) [1686205] - [usb] usb: dwc2: Add core parameter for service interval support (Torez Smith) [1686205] - [usb] usb: dwc2: Update registers definitions to support service interval (Torez Smith) [1686205] - [usb] usb: gadget: f_uac2: disable IN/OUT ep if unused (Torez Smith) [1686205] - [usb] USB: gadget core: Issue ->disconnect() callback from usb_gadget_disconnect() (Torez Smith) [1686205] - [usb] usb: dwc3: Fix spelling of 'optimizations' (Torez Smith) [1686205] - [usb] usb: gadget: atmel: remove pointless retrieval of DT name property (Torez Smith) [1686205] - [usb] usb: gadget: fsl_udc_core: fixup struct_udc_setup documentation (Torez Smith) [1686205] - [usb] usb: gadget: fsl_udc_core: check allocation return value and cleanup on failure (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Check ENBLSLPM before sending ep command (Torez Smith) [1686205] - [usb] usb: dwc2: fix unbalanced use of external vbus-supply (Torez Smith) [1686205] - [usb] usb: dwc2: fix call to vbus supply exit routine, call it unlocked (Torez Smith) [1686205] - [usb] usb: dwc2: fix a race with external vbus supply (Torez Smith) [1686205] - [usb] usb: dwc2: get optional vbus-supply regulator once (Torez Smith) [1686205] - [usb] usb: dwc3: add EXTCON dependency for qcom (Torez Smith) [1686205] - [usb] usb: gadget: udc: atmel: handle at91sam9rl PMC (Torez Smith) [1686205] - [usb] usb: gadget: udc: fotg210-udc: Fix a sleep-in-atomic-context bug in fotg210_get_status() (Torez Smith) [1686205] - [usb] usb: dwc2: Disable all EP's on disconnect (Torez Smith) [1686205] - [documentation] usb: dwc3: exynos: Add support for Exynos5433 variant with all clocks (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Rework clock handling and prepare for new variants (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Remove dead code (Torez Smith) [1686205] - [usb] usb: gadget: udc: Remove unnecessary parentheses (Torez Smith) [1686205] - [usb] usb: dwc2: remove set but unused variable (Torez Smith) [1686205] - [usb] usb: gadget: fix spelling mistakeis "queing" -> "queuing" (Torez Smith) [1686205] - [usb] usb: xhci-mtk: resume USB3 roothub first (Torez Smith) [1686205] - [usb] xhci: Add missing CAS workaround for Intel Sunrise Point xHCI (Torez Smith) [1686205] - [usb] usb: cdc_acm: Do not leak URB buffers (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_abort_bulk_in_tag (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_clear (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_read (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix memory leak in usbtmc_ioctl_request (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for R-Car E3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: add bindings for r8a77990 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: rcar3: Use OTG mode for R-Car D3 (Torez Smith) [1686205] - [usb] Revert "usb: renesas_usbhs: set the mode by using extcon state for non-otg channel" (Torez Smith) [1686205] - [usb] Revert "usb: renesas_usbhs: add extcon notifier to set mode for non-otg channel" (Torez Smith) [1686205] - [usb] usb: core: added uevent for over-current (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Resolve fixed power role contract setup (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Correct spelling mistake for toggling state (Torez Smith) [1686205] - [usb] xhci: Avoid USB autosuspend when resuming USB2 ports (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Firmware header is little endian (Torez Smith) [1686205] - [usb] xhci: Use soft retry to recover faster from transaction errors (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: add platform TPL support (Torez Smith) [1686205] - [usb] usb: xhci-mtk: supports SSP without external USB3 gen2 hub (Torez Smith) [1686205] - [usb] usb: xhci-mtk: supports bandwidth scheduling with multi-TT (Torez Smith) [1686205] - [usb] usb: xhci-mtk: improve bandwidth scheduling (Torez Smith) [1686205] - [usb] usb: xhci-mtk: fix ISOC error when interval is zero (Torez Smith) [1686205] - [usb] usb: xhci-mtk: use maximum ESIT payload of endpiont context (Torez Smith) [1686205] - [usb] usb: host: Replace empty define with do while (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: implement GPIO support for FT-X devices (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Use u to print unsigned int values (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Simplify attributes macros (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Fix operation on big endian platforms (Torez Smith) [1686205] - [uapi] usb: video: Fix endianness mismatches in descriptor structures (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Remove uvc_set_trace_param() function (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Replace plain printk() with dev_*() (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Only halt video streaming endpoint in bulk mode (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Factor out video USB request queueing (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Sort frame intervals upon writing (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Prevent format changes after linking header (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add bFrameIndex attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add bFormatIndex attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add interface number attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Allocate groups dynamically (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Drop leaked references to config items (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: add description for px30 (Torez Smith) [1686205] - [usb] USB: serial: simple: add Motorola Tetra MTP6550 id (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: fix spelling mistake "retreiving" -> "retrieving" (Torez Smith) [1686205] - [usb] USB: STORAGE: ISD200 Fixed coding style issue "space required in for loop" (Torez Smith) [1686205] - [usb] usb: typec: Group all TCPCI/TCPM code together (Torez Smith) [1686205] - [usb] usb: typec: fusb302: reorganizing the probe function a little (Torez Smith) [1686205] - [usb] usb: typec: class: Don't use port parent for getting mux handles (Torez Smith) [1686205] - [usb] usb: typec: mux: Take care of driver module reference counting (Torez Smith) [1686205] - [usb] usb: core: safely deal with the dynamic quirk lists (Torez Smith) [1686205] - [usb] usb: roles: Take care of driver module reference counting (Torez Smith) [1686205] - [usb] usb: phy: mxs: fix spelling mistake "stardard" -> "standard" (Torez Smith) [1686205] - [usb] usb: host: fotg2: Fix potential NULL dereference (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add multiple clocks management (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: add clock-names property (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add reset_control (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ohci: Add clocks description for R-Car Gen3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ehci: Add clocks description for R-Car Gen3 (Torez Smith) [1686205] - [usb] usbcore: Select UAC3 configuration for audio if present (Torez Smith) [1686205] - [documentation] usb: gadget: udc: renesas_usb3: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: ehci-mv: add bindings (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: add DT support (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: use phy-pxa-usb (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: remove private_init (Torez Smith) [1686205] - [usb] USB: EHCI: make ehci-mv a separate driver (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove sysfs group TermChar and auto_abort (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix split quoted string in debug message (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove redundant macro USBTMC_SIZE_IOBUFFER (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove redundant code (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_API_VERSION (Torez Smith) [1686205] - [usb] usb: usbtmc: Replace USBTMC_TIMEOUT macros for control messages (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_OUT (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_IN (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_CLEAR (Torez Smith) [1686205] - [usb] usb: usbtmc: Optimize usbtmc_read (Torez Smith) [1686205] - [usb] usb: usbtmc: Optimize usbtmc_write (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_AUTO_ABORT (Torez Smith) [1686205] - [usb] usb: usbtmc: add ioctl USBTMC_IOCTL_MSG_IN_ATTR (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC488_IOCTL_WAIT_SRQ (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix suspend/resume (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_CLEANUP_IO (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_CANCEL_IO (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for vendor specific read (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_WRITE_RESULT (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for vendor specific write (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for generic requests on control (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Populate tcpc fwnode for TCPM property handling (Torez Smith) [1686205] - [documentation] dt-bindings: usb: fusb302: Use usb-connector bindings for configuration (Torez Smith) [1686205] - [documentation] dt-bindings: connector: Add support for USB-PD PPS APDOs to bindings (Torez Smith) [1686205] - [usb] USB: handle NULL config in usb_find_alt_setting() (Torez Smith) [1686205] - [usb] USB: fix error handling in usb_driver_claim_interface() (Torez Smith) [1686205] - [usb] USB: remove LPM management from usb_driver_claim_interface() (Torez Smith) [1686205] - [usb] USB: usbdevfs: restore warning for nonsensical flags (Torez Smith) [1686205] - [usb] USB: usbdevfs: sanitize flags more (Torez Smith) [1686205] - [usb] Revert "usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt()" (Torez Smith) [1686205] - [usb] usb: musb: dsps: do not disable CPPI41 irq in driver teardown (Torez Smith) [1686205] - [usb] usb: chipidea: Fix otg event handler (Torez Smith) [1686205] - [usb] usb: chipidea: Prevent unbalanced IRQ disable (Torez Smith) [1686205] - [documentation] doc: usb: ci-hdrc-usb2: Add pinctrl properties definition (Torez Smith) [1686205] - [usb] usb: chipidea: Add dynamic pinctrl selection (Torez Smith) [1686205] - [usb] usb: chipidea: imx: make MODULE_LICENCE and SPDX-identifier match (Torez Smith) [1686205] - [usb] usb: chipidea: imx: enable OTG overcurrent in case USB subsystem is already started (Torez Smith) [1686205] - [usb] usb: chipidea: imx: do not use preprocessor conditionals for PM (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add section header comments (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Don't wrap groups unnecessarily (Torez Smith) [1686205] - [usb] mos7720: bury dead TIOCM... in ->ioctl() (Torez Smith) [1686205] - [usb] USB: serial: option: add two-endpoints device-id flag (Torez Smith) [1686205] - [usb] USB: serial: option: improve Quectel EP06 detection (Torez Smith) [1686205] - [usb] Revert "cdc-acm: implement put_char() and flush_chars()" (Torez Smith) [1686205] - [usb] usb: Change usb_of_get_companion_dev() place to usb/common (Torez Smith) [1686205] - [usb] usb: xhci: fix interrupt transfer error happened on MTK platforms (Torez Smith) [1686205] - [usb] usb: core: phy: clean up return value check about devm_of_phy_get_by_index() (Torez Smith) [1686205] - [usb] usb: mtu3: disable vbus rise/fall interrupts of ltssm (Torez Smith) [1686205] - [usb] USB: wusbcore: Switch to bitmap_zalloc() (Torez Smith) [1686205] - [usb] usb: misc: fix obsolete function (Torez Smith) [1686205] - [usb] usb: iowarrior: replace kmalloc with kmalloc_array (Torez Smith) [1686205] - [usb] USB: OHCI: Remove USB bus reset delay from OHCI handover code (Torez Smith) [1686205] - [usb] usb: host: fotg2: add silicon clock handling (Torez Smith) [1686205] - [usb] USB: typec: fsusb302: remove unused variables snk_pdo and toggling_mode_name (Torez Smith) [1686205] - [usb] usb storage: remove inherited SCSI dependency for USB_STORAGE_ENE_UB6250 (Torez Smith) [1686205] - [usb] usb storage: group dependent USB storage Kconfig entries together (Torez Smith) [1686205] - [usb] USB: Removing NULL check for pool since dma_pool_destroy is safe (Torez Smith) [1686205] - [usb] usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt() (Torez Smith) [1686205] - [usb] usb: misc: uss720: Fix two sleep-in-atomic-context bugs (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame() (Torez Smith) [1686205] - [usb] usb: Avoid use-after-free by flushing endpoints early in usb_set_interface() (Torez Smith) [1686205] - [usb] usb/typec: fix kernel-doc notation warning for typec_match_altmode (Torez Smith) [1686205] - [usb] usb: Don't die twice if PCI xhci host is not responding in resume (Torez Smith) [1686205] - [usb] usb: mtu3: fix error of xhci port id when enable U3 dual role (Torez Smith) [1686205] - [usb] usb: uas: add support for more quirk flags (Torez Smith) [1686205] - [usb] USB: Add quirk to support DJI CineSSD (Torez Smith) [1686205] - [usb] usb: typec: fix kernel-doc parameter warning (Torez Smith) [1686205] - [usb] usb/dwc3/gadget: fix kernel-doc parameter warning (Torez Smith) [1686205] - [usb] USB: yurex: Check for truncation in yurex_read() (Torez Smith) [1686205] - [usb] USB: yurex: Fix buffer over-read in yurex_write() (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: Iterate over parent nodes for finding quirks (Torez Smith) [1686205] - [usb] xhci: Fix use after free for URB cancellation on a reallocated endpoint (Torez Smith) [1686205] - [usb] USB: add quirk for WORLDE Controller KS49 or Prodipe MIDI 49C USB controller (Torez Smith) [1686205] - [usb] usb: dwc2: Fix call location of dwc2_check_core_endianness (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Fix return value check in dwc3_byt_enable_ulpi_refclock() (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: fix maxpacket size of ep0 (Torez Smith) [1686205] - [usb] usb: gadget: fotg210-udc: Fix memory leak of fotg210->ep (Torez Smith) [1686205] - [usb] USB: net2280: Fix erroneous synchronization change (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: avoid unused function warnings (Torez Smith) [1686205] - [usb] USB: serial: ti_usb_3410_5052: fix array underflow in completion handler (Torez Smith) [1686205] - [usb] USB: serial: io_ti: fix array underflow in completion handler (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add a new device id for ATEN (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Kconfig: convert to SPDX identifiers (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Check MaxPacketSize from descriptor (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "stm32f4x9_fsotg" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "amlogic" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "his" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "bcm" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: ISOC's starting flow improvement (Torez Smith) [1686205] - [usb] usb: dwc2: Make dwc2_readl/writel functions endianness-agnostic (Torez Smith) [1686205] - [usb] usb: dwc3: core: Enable AutoRetry feature in the controller (Torez Smith) [1686205] - [usb] usb: dwc3: Set default mode for dwc_usb31 (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Add register of usb role switch (Torez Smith) [1686205] - [usb] usb: dwc2: replace ioread32/iowrite32_rep with dwc2_readl/writel_rep (Torez Smith) [1686205] - [usb] usb: dwc2: Modify dwc2_readl/writel functions prototype (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Intel Merrifield can be host (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Supply device properties via driver data (Torez Smith) [1686205] - [documentation] arm64: dts: dwc3: description of incr burst type (Torez Smith) [1686205] - [usb] usb: dwc3: Enable undefined length INCR burst type (Torez Smith) [1686205] - [usb] usb: dwc3: add global soc bus configuration reg0 (Torez Smith) [1686205] - [usb] usb: dwc3: Describe 'wakeup_work' field of struct dwc3_pci (Torez Smith) [1686205] - [usb] USB: option: add support for DW5821e (Torez Smith) [1686205] - [usb] usb: dwc3: change stream event enable bit back to 13 (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: reset host controller at suspend/resume (Torez Smith) [1686205] - [usb] usb: gadget: storage: Remove reference counting (Torez Smith) [1686205] - [usb] usb: gadget: storage: Add error handling for no memory (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Use devm functions to get the phy GPIOs (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Enable ULPI Refclk on platforms where the firmware does not (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Add GPIO lookup table on platforms without ACPI GPIO resources (Torez Smith) [1686205] - [usb] USB: gadget: Document that certain ep operations can be called in interrupt context (Torez Smith) [1686205] - [usb] usb: gadget: configfs: avoid spaces for indentation (Torez Smith) [1686205] - [usb] usb: dwc3: Add a glue driver for Synopsys HAPS platform (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Expose configuration name through video node (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Move function to avoid forward declaration (Torez Smith) [1686205] - [usb] usb: dwc2: Move dwc2_readl/writel functions after hsotg structure (Torez Smith) [1686205] - [usb] usb: gadget: tcm: fix spelling mistake: "Manufactor" -> "Manufacturer" (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Move trace parameter to function module (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Minimize #include in headers (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Move userspace API definition to public header (Torez Smith) [1686205] - [usb] usb: host: exynos: Remove support for Exynos5440 (Torez Smith) [1686205] - [usb] usb: usbtmc: Add support for 32 bit compat applications (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for termination character (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for EOM bit (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for trigger (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctls to set/get usb timeout (Torez Smith) [1686205] - [usb] usb: usbtmc: use consistent timeout error (Torez Smith) [1686205] - [usb] usb: usbtmc: Support Read Status Byte with SRQ per file (Torez Smith) [1686205] - [usb] USB: serial: cp210x: implement GPIO support for CP2102N (Torez Smith) [1686205] - [usb] USB: serial: cp210x: improve line-speed handling for CP2104 and CP2105 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: generalise CP2102N line-speed handling (Torez Smith) [1686205] - [usb] USB: serial: cp210x: improve baudrate support for CP2102N (Torez Smith) [1686205] - [usb] USB: serial: cp210x: honour device-type maximum line speed (Torez Smith) [1686205] - [usb] USB: serial: cp210x: make line-speed quantisation data driven (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop redundant input-speed re-encoding (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop unused driver-data baud rate (Torez Smith) [1686205] - [usb] USB: serial: mos7720: remove redundant variables iflag, mask and serial (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a77990 support (Torez Smith) [1686205] - [usb] usb: host: ehci-sched: remove redundant pointer dev (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: remove redundant variable num_ports (Torez Smith) [1686205] - [usb] USB: host: whci: remove redundant variable t (Torez Smith) [1686205] - [usb] usb: xhci: dbc: remove redundant pointer dbc (Torez Smith) [1686205] - [usb] usb: isp1760: remove redundant variable 'selector' (Torez Smith) [1686205] - [usb] usb-misc: sisusbvga: remove redundant variable modey (Torez Smith) [1686205] - [usb] usb: misc: uss720: remove redundant pointer usbdev (Torez Smith) [1686205] - [usb] usb: usbip: remove redundant pointer ep (Torez Smith) [1686205] - [usb] USB: serial: kl5kusb105: remove KLSI device id (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Add a condition check about PLL active (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Simplify getting the firmware name for R-Car Gen3 (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: add firmware_name for R-Car Gen3 (Torez Smith) [1686205] - [usb] usb: typec: avoid format-overflow warning (Torez Smith) [1686205] - [usb] usb: typec: unlock dp->lock on error exit path, and also zero ret if successful (Torez Smith) [1686205] - [usb] usb: typec: fix dereference before null check on adev (Torez Smith) [1686205] - [usb] usb: usbtest: use irqsave() in USB's complete callback (Torez Smith) [1686205] - [usb] USB: serial: kobil_sct: add missing version error handling (Torez Smith) [1686205] - [usb] USB: serial: kobil_sct: fix modem-status error handling (Torez Smith) [1686205] - [usb] usb: simplify usbport trigger (Torez Smith) [1686205] - [include] device connection: Add fwnode member to struct device_connection (Torez Smith) [1686205]- [security] KEYS: reaching the keys quotas correctly (Vladis Dronov) [1820405] - [security] KEYS: allow reaching the keys quotas exactly (Vladis Dronov) [1820405] - [infiniband] RDMA/core: Ensure security pkey modify is not lost (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Ensure pq is not left on waitlist (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/mad: Do not crash if the rdma device does not have a umad interface (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix missing error check on dev_set_name() (Kamal Heib) [1786604] - [infiniband] RDMA/nl: Do not permit empty devices names during RDMA_NLDEV_CMD_NEWLINK/SET (Kamal Heib) [1786604] - [infiniband] RDMA/iwcm: Fix iwcm work deallocation (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Fix failure handling during device creation (Kamal Heib) [1786604] - [infiniband] RDMA/nldev: Fix crash when set a QP to a new counter but QPN is missing (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix protection fault in ib_mr_pool_destroy (Kamal Heib) [1786604] - [infiniband] IB/hfi1, qib: Ensure RCU is locked when accessing list (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/core: Fix pkey and port assignment in get_new_pps (Kamal Heib) [1786604] - [infiniband] RMDA/cm: Fix missing ib_cm_destroy_id() in ib_cm_insert_listen() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix use of logical OR in get_new_pps (Kamal Heib) [1786604] - [infiniband] Revert "RDMA/cma: Simplify rdma_resolve_addr() error flow" (Kamal Heib) [1786604] - [net] xprtrdma: Fix DMA scatter-gather list mapping imbalance (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix protection fault in get_pkey_idx_qp_list (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq (Kamal Heib) [1786604] - [infiniband] IB/umad: Fix kernel crash while unloading ib_umad (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add missing list deletion on freeing event queue (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix invalid memory access in spec_filter_size (Kamal Heib) [1786604] - [infiniband] IB/rdmavt: Reset all QPs when the device is shut down (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Close window for pq and request coliding (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Acquire lock to release TID entries when user file is closed (Kamal Heib) [1786604 1739282] - [infiniband] IB/umem: use get_user_pages_fast() to pin DMA pages (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Mask access flags with the correct optional range (Kamal Heib) [1786604] - [infiniband] RDMA/cma: Fix unbalanced cm_id reference count during address resolve (Kamal Heib) [1786604] - [infiniband] RDMA/umem: Fix ib_umem_find_best_pgsz() (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Fix logical condition in msix_request_irq (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/cm: Remove CM message structs (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for complex structure members (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for simple structure members (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for swapping get/set acessors (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for simple get/set acessors (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Add SET/GET implementations to hide IBA wire format (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Add accessors for CM_REQ transport_type (Kamal Heib) [1786604] - [infiniband] RDMA/core: Ensure that rdma_user_mmap_entry_remove() is a fence (Kamal Heib) [1786604] - [rdma] RDMA/uverbs: Add new relaxed ordering memory region access flag (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Allow passing of optional access flags for MR registration (Kamal Heib) [1786604] - [rdma] RDMA/core: Add optional access flags range (Kamal Heib) [1786604] - [rdma] RDMA/uverbs: Verify MR access flags (Kamal Heib) [1786604] - [infiniband] RDMA/core: Remove ucontext_lock from the uverbs_destry_ufile_hw() path (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add UVERBS_METHOD_ASYNC_EVENT_ALLOC (Kamal Heib) [1786604] - [infiniband] IB/srp: Never use immediate data if it is disabled by a user (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Compute the maximum sges and inline size based on the WQE size (Kamal Heib) [1786604] - [infiniband] Introduce maximum WQE size to check limits (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Remove unused ucontext parameter from efa_qp_user_mmap_entries_remove (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Remove {} brackets from single statement if (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Device definitions documentation updates (Kamal Heib) [1786604] - [net] xprtrdma: DMA map rr_rdma_buf as each rpcrdma_rep is created (Kamal Heib) [1786604] - [net] xprtrdma: Destroy reps from previous connection instance (Kamal Heib) [1786604] - [net] xprtrdma: Destroy rpcrdma_rep when Receive is flushed (Kamal Heib) [1786604] - [net] xprtrdma: Allocate and map transport header buffers at connect time (Kamal Heib) [1786604] - [net] xprtrdma: Refactor frwr_is_supported (Kamal Heib) [1786604] - [net] xprtrdma: Eliminate per-transport "max pages" (Kamal Heib) [1786604] - [net] xprtrdma: Refactor initialization of ep->rep_max_requests (Kamal Heib) [1786604] - [net] xprtrdma: Make sendctx queue lifetime the same as connection lifetime (Kamal Heib) [1786604] - [net] xprtrdma: Eliminate ri_max_send_sges (Kamal Heib) [1786604] - [infiniband] RDMA/core: Use READ_ONCE for ib_ufile.async_file (Kamal Heib) [1786604] - [infiniband] RDMA/core: Make ib_uverbs_async_event_file into a uobject (Kamal Heib) [1786604] - [rdma] RDMA/core: Remove the ufile arg from rdma_alloc_begin_uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Simplify type usage for ib_uverbs_async_handler() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_wq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_srq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_qp.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_cq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Make ib_ucq_object use ib_uevent_object (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not allow alloc_commit to fail (Kamal Heib) [1786604] - [infiniband] RDMA/core: Simplify destruction of FD uobjects (Kamal Heib) [1786604] - [infiniband] RDMA/mlx5: Use RCU and direct refcounts to keep memory alive (Kamal Heib) [1786604] - [infiniband] RDMA/uverbs: Remove needs_kfree_rcu from uverbs_obj_type_class (Kamal Heib) [1786604] - [infiniband] RDMA/core: Remove err in iw_query_port (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add software counter for ctxt0 seq drop (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Return void in packet receiving functions (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Decouple IRQ name from type (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Create API for auto activate (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: IB/hfi1: Add an API to handle special case drop (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Move common receive IRQ code to function (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add fast and slow handlers for receive context (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Move chip specific functions to chip.c (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/core: Fix locking in ib_uverbs_event_read (Kamal Heib) [1786604] - [infiniband] IB/core: Fix build failure without hugepages (Kamal Heib) [1786604] - [infiniband] IB/core: Rename event_handler_lock to qp_open_list_lock (Kamal Heib) [1786604] - [infiniband] IB/core: Cut down single member ib_cache structure (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add trace points to follow MR allocation (Kamal Heib) [1786604] - [infiniband] RDMA/core: Trace points for diagnosing completion queue issues (Kamal Heib) [1786604] - [infiniband] RDMA/cma: Add trace points in RDMA Connection Manager (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Delete unused CM ARP functions (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Delete unused CM LAP functions (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Fix error type of mmap_offset (Kamal Heib) [1786604] - [infiniband] IB/iser: use true,false for bool variable (Kamal Heib) [1786604] - [infiniband] IB/hfi1: use true,false for bool variable (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/siw: use true,false for bool variable (Kamal Heib) [1786604] - [infiniband] IB/core: Fix ODP with IB_ACCESS_HUGETLB handling (Kamal Heib) [1786604] - [infiniband] IB/core: Fix ODP get user pages flow (Kamal Heib) [1786604] - [infiniband] IB/rdmavt: Correct comments in rdmavt_qp.h header (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: List all receive contexts from debugfs (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add accessor API routines to access context members (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/cm: Use RCU synchronization mechanism to protect cm_id_private xa_load() (Kamal Heib) [1786604] - [infiniband] RDMA/srpt: Remove unnecessary assertion in srpt_queue_response (Kamal Heib) [1786604] - [infiniband] RDMA/netlink: Do not always generate an ACK for some netlink operations (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Simplify QP representation (Kamal Heib) [1786604] - [infiniband] RDMA/qedr: Add kernel capability flags for dpm enabled mode (Kamal Heib) [1786604] - [platform] platform/x86: intel_pmc_core: Add Intel Tiger Lake support (Alexander Beregalov) [1783390] - [platform] platform/x86: intel_pmc_core: Create platform dependent bitmap structs (Alexander Beregalov) [1783390] - [platform] platform/x86: intel_pmc_core: Clean up: Remove comma after the termination line (Alexander Beregalov) [1783390] - [pinctrl] pinctrl: tigerlake: Tiger Lake uses _HID enumeration (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Add Coffee Lake-S ACPI ID (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Pass irqchip when adding gpiochip (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Add GPIO <-> pin mapping ranges via callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Replace WARN with dev_info_once when setting direct-irq pin to output (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Add missing Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Reuse struct intel_pinctrl in the driver (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use local variable to keep device pointer (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Keep pointer to struct device instead of its container (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Share struct intel_pinctrl for wider use (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use GPIO direction definitions (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use GPIO direction definitions (David Arcari) [1773772] - [include] gpio: Add definition for GPIO direction (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Move IRQ valid mask initialization to a dedicated callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Group GPIO IRQ chip initialization (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Allocate IRQ chip dynamic (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Pass irqchip when adding gpiochip (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Add GPIO <-> pin mapping ranges via callback (David Arcari) [1773772] - [gpio] gpiolib: Introduce ->add_pin_ranges() callback (David Arcari) [1773772] - [gpio] gpiolib: Initialize the hardware with a callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Update North Community pin list (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Really serialize all register accesses (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Update pin list according to v1.1v6 (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Missed type change to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Add Intel Tiger Lake pin controller support (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use helper to restore register values on ->resume() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Drop level from warning to debug in intel_restore_hostown() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_intmask() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_hostown() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_padcfg() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Avoid potential glitches if pin is in GPIO mode (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Allocate IRQ chip dynamic (David Arcari) [1773772] - [pinctrl] gpio: Initialize the irqchip valid_mask with a callback (David Arcari) [1773772] - [pinctrl] pinctrl: intel: mark intel_pin_to_gpio __maybe_unused (David Arcari) [1773772] - [pinctrl] pinctrl: intel: remap the pin number to gpio offset for irq enabled pin (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Update pin names according to v1.08 (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Remove dev_err() usage after platform_get_irq() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use NSEC_PER_USEC for debounce calculus (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Re-use data structures from pinctrl-intel.h (part 2) (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Remove default Interrupt Status offset (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Simplify offset validation in intel_get_padcfg() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Drop double check for data in intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use devm_platform_ioremap_resource() (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use devm_platform_ioremap_resource() (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use GENMASK() consistently (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Re-use data structures from pinctrl-intel.h (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use defined macro instead of magic in byt_get_gpio_mux() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Clear interrupt status in mask/unmask callback (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use GENMASK() consistently (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Increase readability of intel_gpio_update_pad_mode() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Retain HOSTSW_OWN for requested gpio pin (David Arcari) [1773772] - [pinctrl] pinctrl: pinctrl-intel: move gpio suspend/resume to noirq phase (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Update pin names according to v1.13c (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Fix potential NULL pointer dereference (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Unexport intel_pinctrl_probe() (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: intel: simplify getting .driver_data (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: simplify getting .driver_data (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Sort register offsets by value (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Update pin list for B0 stepping (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Sort headers alphabetically (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Remove unneeded MODULE_DEVICE_TABLE() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Move linux/pm.h to the local header (David Arcari) [1773772] - [pinctrl] pinctrl: Include nothing else (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce common macro for PM operations (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Convert to use intel_pinctrl_probe_by_hid() (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Convert to use intel_pinctrl_probe_by_hid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_pinctrl_probe_by_hid() internal API (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Convert to use device_get_match_data() (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Convert to use intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Convert to use intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_pinctrl_probe_by_uid() internal API (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Fix a spelling typo in kernel documentation (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: actually print the apparently misconfigured pin (David Arcari) [1773772] - [mm] mm, page_alloc: move_freepages should not examine struct page of reserved memory (Rafael Aquini) [1588584] - [mm] mm, page_alloc: initialize num_movable in move_freepages() (Rafael Aquini) [1588584] - [tools] selftests: vm: drop dependencies on page flags from mlock2 tests (Rafael Aquini) [1658886] - [powercap] powercap/intel_rapl: add support for TigerLake Mobile (David Arcari) [1783136] - [kernel] locking/lockdep: Avoid recursion in lockdep_count_{for, back}ward_deps() (Waiman Long) [1780993] - [kernel] locking/lockdep: Reuse freed chain_hlocks entries (Waiman Long) [1780993] - [kernel] locking/lockdep: Track number of zapped lock chains (Waiman Long) [1780993] - [kernel] locking/lockdep: Throw away all lock chains with zapped class (Waiman Long) [1780993] - [kernel] locking/lockdep: Track number of zapped classes (Waiman Long) [1780993] - [kernel] locking/lockdep: Display irq_context names in /proc/lockdep_chains (Waiman Long) [1780993] - [kernel] locking/lockdep: Decrement IRQ context counters when removing lock chain (Waiman Long) [1780993] - [kernel] locking/lockdep: Fix lockdep_stats indentation problem (Waiman Long) [1780993] - [kernel] locking/lockdep: Fix buffer overrun problem in stack_trace (Waiman Long) [1780993] - [lib] lib/string: Make memzero_explicit() inline instead of external (Florian Westphal) [1820623] - [crypto] crypto: sha256 - Remove sha256/224_init code duplication (Florian Westphal) [1820623] - [crypto] crypto: sha256 - Merge crypto/sha256.h into crypto/sha.h (Florian Westphal) [1820623] - [crypto] crypto: chelsio - Rename arrays to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [x86] crypto: x86 - Rename functions to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [arm64] crypto: arm64 - Rename functions to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [crypto] crypto: sha256_generic - Switch to the generic lib/crypto/sha256.c lib code (Florian Westphal) [1820623] - [lib] crypto: sha256 - Add sha224 support to sha256 library code (Florian Westphal) [1820623] - [lib] crypto: sha256 - Make lib/crypto/sha256.c suitable for generic use (Florian Westphal) [1820623] - [lib] crypto: sha256 - Use get/put_unaligned_be32 to get input, memzero_explicit (Florian Westphal) [1820623] - [s390] crypto: sha256 - Move lib/sha256.c to lib/crypto (Florian Westphal) [1820623] - [crypto] crypto: sha256_generic - Fix some coding style issues (Florian Westphal) [1820623] - [lib] crypto: sha256 - Fix some coding style issues (Florian Westphal) [1820623] - [thunderbolt] thunderbolt: Fix error code in tb_port_is_width_supported() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Prevent crash if non-active NVMem file is read (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: fix memory leak of object sw (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Fix xhci check in usb4_switch_setup() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for USB 3.x tunnels (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for Time Management Unit (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_switch_find_cap() available to other files (Jarod Wilson) [1482838] - [netdrv] thunderbolt: Update Kconfig entries to USB4 (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add initial support for USB4 (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Populate PG field in hot plug acknowledgment packet (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Call tb_eeprom_get_drom_offset() from tb_eeprom_read_n() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_find_port() available to other files (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Power cycle the router if NVM authentication fails (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Do not start firmware unless asked by the user (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add bandwidth management for Display Port tunnels (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add Display Port adapter pairing and resource management (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add Display Port CM handshake for Titan Ridge devices (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add downstream PCIe port mappings for Alpine and Titan Ridge (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Expand controller name in tb_switch_is_xy() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add default linking between lane adapters if not provided by DROM (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for lane bonding (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Refactor add_switch() into two functions (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add helper macro to iterate over switch ports (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_sw_write() take const parameter (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert DP adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert PCIe adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert basic adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Log error if adding switch fails (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Log switch route string on config read/write timeout (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Introduce tb_switch_is_icm() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add 'generation' attribute for devices (Jarod Wilson) [1482838]- [scsi] scsi: lpfc: Copyright updates for 12.6.0.4 patches (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.4 (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Clean up hba max_lun_queue_depth checks (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Remove handler for obsolete ELS - Read Port Status (RPS) (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix coverity errors in fmdi attribute handling (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix compiler warning on frame size (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix registration of ELS type support in fdmi (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix broken Credit Recovery after driver load (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix lpfc_io_buf resource leak in lpfc_get_scsi_buf_s4 error path (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix RQ buffer leakage when no IOCBs available (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Make lpfc_defer_acc_rsp static (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.3 (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix improper flag check for IO type (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix MDS Latency Diagnostics Err-drop rates (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix unmap of dpp bars affecting next driver load (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix disablement of FC-AL on lpe35000 models (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix ras_log via debugfs (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix Fabric hostname registration if system hostname changes (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix missing check for CSF in Write Object Mbox Rsp (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix: Rework setting of fdmi symbolic node name registration (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix incomplete NVME discovery when target (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: fix spelling mistakes of asynchronous (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix memory leak on lpfc_bsg_write_ebuf_set func (Dick Kennedy) [1793674] - [tools] tools/power turbostat: Support Tiger Lake (David Arcari) [1783441] - [md] dm integrity: fix logic bug in integrity tag testing (Mike Snitzer) [1820280] - [md] Revert "dm: always call blk_queue_split() in dm_process_bio()" (Mike Snitzer) [1820705] - [md] dm integrity: fix ppc64le warning (Mike Snitzer) [1820280] - [md] dm writecache: add cond_resched to avoid CPU hangs (Mike Snitzer) [1820280] - [md] dm integrity: improve discard in journal mode (Mike Snitzer) [1820280] - [md] dm integrity: add optional discard support (Mike Snitzer) [1820280] - [md] dm integrity: allow resize of the integrity device (Mike Snitzer) [1820280] - [md] dm integrity: factor out get_provided_data_sectors() (Mike Snitzer) [1820280] - [md] dm integrity: don't replay journal data past the end of the device (Mike Snitzer) [1820280] - [md] dm integrity: remove sector type casts (Mike Snitzer) [1820280] - [md] dm integrity: fix a crash with unusually large tag size (Mike Snitzer) [1820280] - [md] dm verity fec: fix memory leak in verity_fec_dtr (Mike Snitzer) [1820280] - [md] dm writecache: optimize superblock write (Mike Snitzer) [1820280] - [md] dm writecache: implement gradual cleanup (Mike Snitzer) [1820280] - [md] dm writecache: implement the "cleaner" policy (Mike Snitzer) [1820280] - [md] dm writecache: do direct write if the cache is full (Mike Snitzer) [1820280] - [md] dm integrity: print device name in integrity_metadata() error message (Mike Snitzer) [1820280] - [md] dm crypt: use crypt_integrity_aead() helper (Mike Snitzer) [1820280] - [lib] lib/test_bitmap: add tests for bitmap_parselist_user() (Vladis Dronov) [1819152] - [lib] lib/test_bitmap: add testcases for bitmap_parselist() (Vladis Dronov) [1819152] - [lib] lib/test_bitmap: switch test_bitmap_parselist to ktime_get() (Vladis Dronov) [1819152] - [lib] lib: rework bitmap_parselist (Vladis Dronov) [1819152] - [lib] lib: make bitmap_parselist_user() a wrapper on bitmap_parselist() (Vladis Dronov) [1819152] - [platform] platform/x86: mlx-platform: Add support for next generation systems (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add support for new capability register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new capability register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new system type (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Set system mux configuration based on system type (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add more definitions for system attributes (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Style changes (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add missed attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Fix documentation inconsistency for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Cosmetic changes (Ivan Vecera) [1820312] - [platform] platform/mellanox: Fix Kconfig indentation (Ivan Vecera) [1820312] - [leds] leds: mlxreg: Fix possible buffer overflow (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Remove dev_err() usage after platform_get_irq() (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix error handling in mlxplat_init() (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add more reset cause attributes (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Modify DMI matching order (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add regmap structure for the next generation systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Change API for i2c-mlxcpld driver activation (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Move regmap initialization before all drivers activation (Ivan Vecera) [1820312] - [documentation] ABI: sysfs-driver-mlxreg-io: fix the what fields (Ivan Vecera) [1820312] - [documentation] docs: watchdog: convert docs to ReST and rename to *.rst (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix parent device in i2c-mux-reg device registration (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add devm_free_irq call to remove flow (Ivan Vecera) [1820312] - [i2c] i2c: mlxcpld: Fix wrong initialization order in probe (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Use devm_thermal_of_cooling_device_register (Ivan Vecera) [1820312] - [thermal] thermal: Introduce devm_thermal_of_cooling_device_register (Ivan Vecera) [1820312] - [watchdog] watchdog: mlx_wdt: Use 'dev' instead of dereferencing it repeatedly (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Use HWMON_CHANNEL_INFO macro (Ivan Vecera) [1820312] - [include] hwmon: Add convience macro to define simple static sensors (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Add support for fan capability registers (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlx-wdt platform driver activation (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for tachometer speed register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix access mode for fan_dir attribute (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add UID LED for the next generation systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add extra CPLD for next generation systems (Ivan Vecera) [1820312] - [documentation] Documentation/watchdog: Add documentation mlx-wdt driver (Ivan Vecera) [1820312] - [watchdog] watchdog: mlx-wdt: introduce a watchdog driver for Mellanox systems (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: additions for Mellanox watchdog driver (Ivan Vecera) [1820312] - [leds] leds: mlxreg: Add support for capability register (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Fix KASAN warning (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Correct mlxreg-io KernelVersion for 5.0 (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new VMOD0007 board name (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for fan capability registers (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: Add capability field to core platform data (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: Document fixes for core platform data (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for fan direction register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Convert to use SPDX identifier (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Allow mlxreg-io driver activation for new systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix LED configuration (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix tachometer registers (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Rename new systems product names (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add definitions for new registers (Ivan Vecera) [1820312] - [i2c] i2c: mux: mlxcpld: simplify code to reach the adapter (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Properly use mlxplat_mlxcpld_msn201x_items (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix copy-paste error in mlxplat_init() (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Remove unused define (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Change mlxreg-io configuration for MSN274x systems (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Allow mlxreg-io driver activation for more systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add ASIC hotplug device configuration (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add hotplug hwmon uevent notification (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Improve mechanism of ASIC health discovery (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlxreg-fan platform driver activation (Ivan Vecera) [1820312] - [platform] platform/mellanox: Use 2-factor allocator calls (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Modify macros for tachometer fault status reading (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Fix macros for tacho fault reading (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Add support for Mellanox FAN driver (Ivan Vecera) [1820312] - [i2c] i2c: mux: mlxcpld: make use of __i2c_smbus_xfer (Ivan Vecera) [1820312] - [i2c] i2c: smbus: add unlocked __i2c_smbus_xfer variant (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add documentation mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlxreg-io platform driver activation (Ivan Vecera) [1820312] - [platform] platform/mellanox: Introduce support for Mellanox register access driver (Ivan Vecera) [1820312] - [kernel] audit: trigger accompanying records when no rules present (Richard Guy Briggs) [1819944] - [kernel] sched/fair: Allow a per-CPU kthread waking a task to stack on the same CPU, to fix XFS performance regression (Phil Auld) [1745111] - [hid] HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: add CMP device id (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: Spelling s/diconnect/disconnect/ (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring() (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: check the NO_D3 flag to distinguish resume paths (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: make ish suspend paths clear (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: set NO_D3 flag only when needed (Tony Camuso) [1818043] - [netdrv] net: ena: Add PCI shutdown handler to allow safe kexec (Bhupesh Sharma) [1758323] - [net] vsock: fix potential deadlock in transport->release() (Stefano Garzarella) [1771582] - [net] vsock/virtio: remove loopback handling (Stefano Garzarella) [1771582] - [net] vsock: use local transport when it is loaded (Stefano Garzarella) [1771582] - [net] vsock: add vsock_loopback transport (Stefano Garzarella) [1771582] - [net] vsock: add local transport support in the vsock core (Stefano Garzarella) [1771582] - [uapi] vsock: add VMADDR_CID_LOCAL definition (Stefano Garzarella) [1771582] - [net] vsock/virtio_transport_common: remove unused virtio header includes (Stefano Garzarella) [1771582] - [infiniband] IB/rdmavt: Free kernel completion queue when done (Gopal Tiwari) [1805036] - [powerpc] powerpc/64s: Fix section mismatch warnings from boot code (Desnes Augusto Nunes do Rosario) [1391523] - [powerpc] powerpc/prom: convert PROM_BUG() to standard trap (Desnes Augusto Nunes do Rosario) [1391523] - [powerpc] powerpc/64: mark start_here_multiplatform as __ref (Desnes Augusto Nunes do Rosario) [1391523] - [mfd] mfd: intel-lpss: Add Intel Tiger Lake PCI IDs (David Arcari) [1773767] - [mfd] mfd: intel-lpss: Release IDA resources (David Arcari) [1773767] - [mfd] mfd: intel-lpss: Keep device tables sorted by ID (David Arcari) [1773767] - [i2c] i2c: i801: Add support for Intel Tiger Lake (David Arcari) [1773765] - [edac] EDAC/mce_amd: Print !SMCA processor warning only once (Prarit Bhargava) [1796178] - [powerpc] powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() (Steve Best) [1806630] {CVE-2019-12614}- [x86] x86/gart: Rewrite early_gart_iommu_check() comment (Waiman Long) [1818532] - [mm] mm/memblock.c: warn if zero alignment was requested (Waiman Long) [1818532] - [powerpc] memblock: stop using implicit alignment to SMP_CACHE_BYTES (Waiman Long) [1818532] - [mm] memblock: replace BOOTMEM_ALLOC_* with MEMBLOCK variants (Waiman Long) [1818532] - [mm] mm: remove nobootmem (Waiman Long) [1818532] - [mm] memblock: rename __free_pages_bootmem to memblock_free_pages (Waiman Long) [1818532] - [mm] memblock: rename free_all_bootmem to memblock_free_all (Waiman Long) [1818532] - [firmware] memblock: replace free_bootmem_late with memblock_free_late (Waiman Long) [1818532] - [x86] memblock: replace free_bootmem{_node} with memblock_free (Waiman Long) [1818532] - [mm] mm: nobootmem: remove bootmem allocation APIs (Waiman Long) [1818532] - [mm] memblock: replace __alloc_bootmem with memblock_alloc_from (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_pages with memblock_alloc (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_low_pages with memblock_alloc_low (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_pages_node with memblock_alloc_node (Waiman Long) [1818532] - [mm] memblock: add align parameter to memblock_alloc_node() (Waiman Long) [1818532] - [arm64] memblock: replace alloc_bootmem_low with memblock_alloc_low (2) (Waiman Long) [1818532] - [usb] memblock: replace alloc_bootmem_pages_nopanic with memblock_alloc_nopanic (Waiman Long) [1818532] - [x86] memblock: replace __alloc_bootmem_node_nopanic with memblock_alloc_try_nid_nopanic (Waiman Long) [1818532] - [x86] memblock: replace alloc_bootmem_low with memblock_alloc_low (Waiman Long) [1818532] - [x86] memblock: replace alloc_bootmem_align with memblock_alloc (Waiman Long) [1818532] - [mm] memblock: remove _virt from APIs returning virtual address (Waiman Long) [1818532] - [powerpc] memblock: rename memblock_alloc{_nid, _try_nid} to memblock_phys_alloc* (Waiman Long) [1818532] - [mm] mm: nobootmem: remove dead code (Waiman Long) [1818532] - [mm] mm: remove bootmem allocator implementation (Waiman Long) [1818532] - [mm] mm: remove CONFIG_HAVE_MEMBLOCK (Waiman Long) [1818532] - [mm] mm: remove CONFIG_NO_BOOTMEM (Waiman Long) [1818532] - [mm] mm: disable deferred struct page for 32-bit arches (Waiman Long) [1818532] - [mm] mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM (Waiman Long) [1818532] - [mm] mm/hugetlb.c: don't zero 1GiB bootmem pages (Waiman Long) [1818532] - [mm] docs/mm: memblock: add overview documentation (Waiman Long) [1818532] - [include] docs/mm: memblock: add kernel-doc description for memblock types (Waiman Long) [1818532] - [mm] docs/mm: memblock: add kernel-doc comments for memblock_add (Waiman Long) [1818532] - [mm] docs/mm: bootmem: add overview documentation (Waiman Long) [1818532] - [include] docs/mm: bootmem: add kernel-doc description of 'struct bootmem_data' (Waiman Long) [1818532] - [mm] docs/mm: bootmem: fix kernel-doc warnings (Waiman Long) [1818532] - [mm] docs/mm: nobootmem: fixup kernel-doc comments (Waiman Long) [1818532] - [mm] mm/bootmem: drop duplicated kernel-doc comments (Waiman Long) [1818532] - [lib] lib/smp_processor_id: Don't use cpumask_equal() (Waiman Long) [1812092] - [kernel] audit: always check the netlink payload length in audit_receive_msg() (Richard Guy Briggs) [1814448] - [kernel] audit: fix error handling in audit_data_to_entry() (Richard Guy Briggs) [1814448] - [fs] fat: work around race with userspace's read via blockdev while mounting (Bill O'Donnell) [1771351] - [include] raid6/test: fix a compilation error (Bhupesh Sharma) [1817524] - [arm64] arm64: kexec_file: add crash dump support (Bhupesh Sharma) [1817524] - [lib] libfdt: include fdt_addresses.c (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.1-22-gc40aeb60b47a (Bhupesh Sharma) [1817524] - [include] libfdt: reduce the number of headers included from libfdt_env.h (Bhupesh Sharma) [1817524] - [arm64] arm64: dts: amd: Fix SPI bus warnings (Bhupesh Sharma) [1817524] - [arm64] arm64: dts: broadcom: Fix I2C and SPI bus warnings (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.0-30-g702c1b6c0e73 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.0-23-g87963ee20693 (Bhupesh Sharma) [1817524] - [include] linux/kernel.h: split *_MAX and *_MIN macros into (Bhupesh Sharma) [1817524] - [scripts] kbuild: disable dtc simple_bus_reg warnings by default (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.4.7-57-gf267e674d145 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.4.7-14-gc86da84d30e4 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: consolidate include path options in Makefile (Bhupesh Sharma) [1817524] - [pci] PCI: Remove unnecessary returns (Myron Stowe) [1807175] - [pci] PCI: OF: Correct of_irq_parse_pci() documentation (Myron Stowe) [1807175] - [pci] PCI: Fix typos and whitespace errors (Myron Stowe) [1807175] - [documentation] PCI: Correct pci=resource_alignment parameter example (Myron Stowe) [1807175] - [pci] PCI: Use PCI_SRIOV_NUM_BARS in loops instead of PCI_IOV_RESOURCE_END (Myron Stowe) [1807175] - [pci] PCI: Convert pci_resource_to_user() to a weak function (Myron Stowe) [1807175] - [pci] PCI: pciehp: Refer to "Indicators" instead of "LEDs" in comments (Myron Stowe) [1807175] - [pci] PCI: pciehp: Remove pciehp_green_led_{on, off, blink}() (Myron Stowe) [1807175] - [pci] PCI: pciehp: Remove pciehp_set_attention_status() (Myron Stowe) [1807175] - [pci] PCI: pciehp: Combine adjacent indicator updates (Myron Stowe) [1807175] - [pci] PCI: pciehp: Add pciehp_set_indicators() to set both indicators (Myron Stowe) [1807175] - [pci] PCI: Add pci_irq_vector() and other stubs when !CONFIG_PCI (Myron Stowe) [1807175] - [pci] PCI: Force trailing new line to resource_alignment_param in sysfs (Myron Stowe) [1807175] - [pci] PCI: Move pci__resource_alignment_param() into their callers (Myron Stowe) [1807175] - [pci] PCI: pci.c: convert to use BUS_ATTR_RW (Myron Stowe) [1807175] - [pci] PCI: Clean up resource_alignment parameter to not require static buffer (Myron Stowe) [1807175] - [pci] PCI/IOV: Remove group write permission from sriov_numvfs, sriov_drivers_autoprobe (Myron Stowe) [1807175] - [pci] PCI/IOV: Move sysfs SR-IOV functions to iov.c (Myron Stowe) [1807175] - [pci] PCI: sysfs: Change permissions from symbolic to octal (Myron Stowe) [1807175] - [pci] PCI: sysfs: Revert "rescan" file renames (Myron Stowe) [1807175] - [pci] PCI: sysfs: Change DEVICE_ATTR() to DEVICE_ATTR_WO() (Myron Stowe) [1807175] - [pci] PCI: pci-sysfs.c: convert to use BUS_ATTR_WO (Myron Stowe) [1807175] - [pci] PCI: sysfs: Define device attributes with DEVICE_ATTR*() (Myron Stowe) [1807175] - [pci] PCI: Mark expected switch fall-through (Myron Stowe) [1807175] - [pci] PCI: Use devm_add_action_or_reset() (Myron Stowe) [1807175] - [pci] PCI: Get rid of dev->has_secondary_link flag (Myron Stowe) [1807175] - [pci] PCI/ACPI: Remove unnecessary struct hotplug_program_ops (Myron Stowe) [1807175] - [pci] PCI/ACPI: Move _HPP & _HPX functions to pci-acpi.c (Myron Stowe) [1807175] - [pci] PCI/ACPI: Rename _HPX structs from hpp_* to hpx_* (Myron Stowe) [1807175] - [pci] PCI: Make pci_set_of_node(), etc private (Myron Stowe) [1807175] - [pci] PCI: Make pci_enable_ptm() private (Myron Stowe) [1807175] - [pci] PCI: Make pcie_set_ecrc_checking(), pcie_ecrc_get_policy() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_ats_init() private (Myron Stowe) [1807175] - [pci] PCI: Make pcie_update_link_speed() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_bus_get(), pci_bus_put() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_hotplug_io_size, mem_size, and bus_size private (Myron Stowe) [1807175] - [pci] PCI: Make pci_save_vc_state(), pci_restore_vc_state(), etc private (Myron Stowe) [1807175] - [pci] PCI: Make pci_get_host_bridge_device(), pci_put_host_bridge_device() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_check_pme_status(), pci_pme_wakeup_bus() private (Myron Stowe) [1807175] - [pci] PCI: Make PCI_PM_* delay times private (Myron Stowe) [1807175] - [pci] PCI: Unexport pci_bus_sem (Myron Stowe) [1807175] - [pci] PCI: Unexport pci_bus_get() and pci_bus_put() (Myron Stowe) [1807175] - [pci] PCI: Remove pci_block_cfg_access() et al (unused) (Myron Stowe) [1807175] - [wireless] PCI: Move ASPM declarations to linux/pci.h (Myron Stowe) [1807175] - [pci] PCI/MSI: Support allocating virtual MSI interrupts (Myron Stowe) [1807175] - [fs] gfs2: Remove unnecessary gfs2_qa_{get,put} pairs (Robert S Peterson) [1807146] - [fs] gfs2: Split gfs2_rsqa_delete into gfs2_rs_delete and gfs2_qa_put (Robert S Peterson) [1807146] - [fs] gfs2: Change inode qa_data to allow multiple users (Robert S Peterson) [1807146] - [fs] gfs2: eliminate gfs2_rsqa_alloc in favor of gfs2_qa_alloc (Robert S Peterson) [1807146] - [fs] gfs2: Switch to list_{first,last}_entry (Robert S Peterson) [1807146] - [fs] gfs2: Clean up inode initialization and teardown (Robert S Peterson) [1807146] - [fs] gfs2: Minor gfs2_alloc_inode cleanup (Robert S Peterson) [1807146] - [pinctrl] pinctrl: pinmux: fix a possible null pointer in pinmux_can_be_used_for_gpio (David Arcari) [1817454] - [pinctrl] pinctrl/gpio: Take MUX usage into account (David Arcari) [1817454] - [include] gpio: Fix build warnings on undefined struct pinctrl_dev (David Arcari) [1817454] - [pinctrl] pinctrl: remove unused pin_is_valid() (David Arcari) [1817454] - [pinctrl] pinctrl: remove unneeded initializer for list_for_each_entry() iterator (David Arcari) [1817454] - [pinctrl] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (David Arcari) [1817454] - [pinctrl] pinctrl: core: Do not add device links for hogs (David Arcari) [1817454] - [pinctrl] pinctrl: Enable device link creation for pin control (David Arcari) [1817454] - [pinctrl] pinctrl: generic: add new 'drive-strength-microamp' property support (David Arcari) [1817454] - [pinctrl] pinctrl: remove unused 'pinconf-config' debugfs interface (David Arcari) [1817454] - [pinctrl] pinctrl: Change to use DEFINE_SHOW_ATTRIBUTE macro (David Arcari) [1817454] - [pinctrl] pinctrl: core: make sure strcmp() doesn't get a null parameter (David Arcari) [1817454] - [pinctrl] pinctrl: core: Remove broken remove_last group and pinmux functions (David Arcari) [1817454] - [pinctrl] pinctrl: pinmux: Return selector to the pinctrl driver (David Arcari) [1817454] - [pinctrl] pinctrl: core: Return selector to the pinctrl driver (David Arcari) [1817454] - [pinctrl] pinctrl: Cut unused sysfs includes (David Arcari) [1817454] - [mm] mm, numa: fix bad pmd by atomically check for pmd_trans_huge when marking page tables prot_numa (Rafael Aquini) [1763878] - [mm] mm: thp: fix flags for pmd migration when split (Rafael Aquini) [1763878] - [mm] mm: thp: relocate flush_cache_range() in migrate_misplaced_transhuge_page() (Rafael Aquini) [1763878] - [mm] mm: thp: fix mmu_notifier in migrate_misplaced_transhuge_page() (Rafael Aquini) [1763878] - [mm] mm: thp: fix MADV_DONTNEED vs migrate_misplaced_transhuge_page race condition (Rafael Aquini) [1763878] - [fs] nfsd: set the server_scope during service startup (Scott Mayhew) [1817752] - [fs] nfsd: v4 support requires CRYPTO_SHA256 (Scott Mayhew) [1817752] - [fs] nfsd: Fix cld_net->cn_tfm initialization (Scott Mayhew) [1817752] - [fs] nfsd: add support for upcall version 2 (Scott Mayhew) [1817752] - [fs] nfsd: add a "GetVersion" upcall for nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: handle legacy client tracking records sent by nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: re-order client tracking method selection (Scott Mayhew) [1817752] - [fs] nfsd: keep a tally of RECLAIM_COMPLETE operations when using nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: un-deprecate nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: make nfs4_client_reclaim use an xdr_netobj instead of a fixed char array (Scott Mayhew) [1817752]- [s390] scsi: zfcp: fix to prevent port_remove with pure auto scan LUNs (only sdevs) (Philipp Rudo) [1814791] - [s390] scsi: zfcp: fix missing zfcp_port reference put on -EBUSY from port_remove (Philipp Rudo) [1814792] - [infiniband] RDMA/qedr: Fix null-pointer dereference when calling rdma_user_mmap_get_offset (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Make qedr_iw_load_qp() static (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Fix potential use after free (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Remove unsupported modify_port callback (Kamal Heib) [1786602] - [infiniband] IB/ipoib: Add ndo operation for getting VFs GUID attributes (Kamal Heib) [1786602] - [net] xprtrdma: Fix oops in Receive handler after device removal (Kamal Heib) [1786602] - [net] xprtrdma: Fix completion wait during device removal (Kamal Heib) [1786602] - [net] xprtrdma: Fix create_qp crash on device unload (Kamal Heib) [1786602] - [infiniband] IB/hfi1: Adjust flow PSN with the correct resync_psn (Kamal Heib) [1786602] - [infiniband] IB/hfi1: Don't cancel unused work item (Kamal Heib) [1786602] - [infiniband] IB/core: Introduce rdma_user_mmap_entry_insert_range() API (Kamal Heib) [1786602] - [infiniband] RDMA/counter: Prevent auto-binding a QP which are not tracked with res (Kamal Heib) [1786602] - [infiniband] rxe: correctly calculate iCRC for unaligned payloads (Kamal Heib) [1786602] - [infiniband] treewide: Use sizeof_field() macro (Kamal Heib) [1786602] - [infiniband] RDMA/cma: add missed unregister_pernet_subsys in init failure (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Expose RDMA read related attributes (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Support remote read access in MR registration (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Store network attributes in device attributes (Kamal Heib) [1786602] - [infiniband] IB/hfi1: remove redundant assignment to variable ret (Kamal Heib) [1786602] - [infiniband] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Kamal Heib) [1786602] - [infiniband] IB/core: Add interfaces to get VF node and port GUIDs (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Use refcount_t type for refcount variable (Kamal Heib) [1786602] - [infiniband] RDMA/cma: Use ACK timeout for RoCE packetLifeTime (Kamal Heib) [1786602] - [infiniband] IB/umem: remove the dmasync argument to ib_umem_get (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Add iWARP doorbell recovery support (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Add doorbell overflow recovery support (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Use the common mmap API (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Fix memory leak in user qp and mr (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix synchronization methods and memory leaks in qedr (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix qpids xarray api used (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix srqs xarray initialization (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Remove Unneeded variable rc (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/mlx4: Separate creation of RWQ and QP (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Package for hns_roce_rereg_user_mr function (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Fix sg offset non-zero issue (Kamal Heib) [1786602] - [infiniband] dma-mapping: remove the DMA_ATTR_WRITE_BARRIER flag (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Clear the admin command buffer prior to its submission (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Cleanup unused mmap structures (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Report the SCSI residual to the initiator (Kamal Heib) [1786602] - [infiniband] RDMA: Change MAD processing function to remove extra casting and parameter (Kamal Heib) [1786602] - [infiniband] RDMA/mlx5: Rewrite MAD processing logic to be readable (Kamal Heib) [1786602] - [infiniband] RDMA/ocrdma: Simplify process_mad function (Kamal Heib) [1786602] - [infiniband] RDMA/ocrdma: Make ocrdma_pma_counters() return void (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Do not check MAD sizes in roce and ib drivers (Kamal Heib) [1786602] - [infiniband] RDMA/hfi1: Delete unreachable code (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Allocate zeroed MAD buffer (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Delete never implemented functions (Kamal Heib) [1786602] - [infiniband] RDMA/core: Fix return code when modify_port isn't supported (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Use the common mmap_xa helpers (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Use the common mmap_xa helpers (Kamal Heib) [1786602] - [infiniband] RDMA: Connect between the mmap entry and the umap_priv structure (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Use rdma_user_mmap_io (Kamal Heib) [1786602] - [infiniband] RDMA/core: Create mmap database and cookie helper functions (Kamal Heib) [1786602] - [infiniband] RDMA/core: Move core content from ib_uverbs to ib_core (Kamal Heib) [1786602] - [infiniband] RDMA/odp: Remove broken debugging call to invalidate_range (Kamal Heib) [1786602] - [infiniband] RDMA/vmw_pvrdma: Use resource ids from physical device if available (Kamal Heib) [1786602] - [infiniband] RDMA/core: Set DMA parameters correctly (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Increase DMA max_segment_size parameter (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Increase DMA max_segment_size parameter (Kamal Heib) [1786602] - [uapi] rdma: Remove nes ABI header (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix TPG creation (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Update copyright together with SPDX tag (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Use specific keyword to check define (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Delete unused cm_is_active_peer function (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Remove useless rxe_init_device_param assignments (Kamal Heib) [1786602] - [net] xprtrdma: Replace dprintk in xprt_rdma_set_port (Kamal Heib) [1786602] - [net] xprtrdma: Replace dprintk() in rpcrdma_update_connect_private() (Kamal Heib) [1786602] - [net] xprtrdma: Refine trace_xprtrdma_fixup (Kamal Heib) [1786602] - [net] xprtrdma: Report the computed connect delay (Kamal Heib) [1786602] - [net] xprtrdma: Wake tasks after connect worker fails (Kamal Heib) [1786602] - [net] xprtrdma: Pull up sometimes (Kamal Heib) [1786602] - [net] xprtrdma: Refactor rpcrdma_prepare_msg_sges() (Kamal Heib) [1786602] - [net] xprtrdma: Move the rpcrdma_sendctx::sc_wr field (Kamal Heib) [1786602] - [net] xprtrdma: Remove rpcrdma_sendctx::sc_device (Kamal Heib) [1786602] - [net] xprtrdma: Remove rpcrdma_sendctx::sc_xprt (Kamal Heib) [1786602] - [net] xprtrdma: Ensure ri_id is stable during MR recycling (Kamal Heib) [1786602] - [net] xprtrdma: Manage MRs in context of a single connection (Kamal Heib) [1786602] - [net] xprtrdma: Fix MR list handling (Kamal Heib) [1786602] - [net] xprtrdma: Initialize rb_credits in one place (Kamal Heib) [1786602] - [infiniband] RDMA/core: Check that process is still alive before sending it to the users (Kamal Heib) [1786602] - [infiniband] RDMA/restrack: Remove PID namespace support (Kamal Heib) [1786602] - [infiniband] RDMA/uverbs: Add a check for uverbs_attr_get to uverbs_copy_to_struct_or_zero (Kamal Heib) [1786602] - [infiniband] IB/cma: Honor traffic class from lower netdevice for RoCE (Kamal Heib) [1786602] - [infiniband] RDMA/nldev: Provide MR statistics (Kamal Heib) [1786602] - [infiniband] RDMA/mlx5: Return ODP type per MR (Kamal Heib) [1786602] - [infiniband] RDMA/nldev: Allow different fill function per resource (Kamal Heib) [1786602] - [infiniband] IB/mlx5: Introduce ODP diagnostic counters (Kamal Heib) [1786602] - [infiniband] infiniband: fix sw/rdmavt/ kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/ kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iser_initiator.c kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iser_verbs.c kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/verbs.c kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/srpt/ib_srpt.h kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iscsi_iser.h kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/ipwm_util.h kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iscsi_iser.kernel-doc notation (Kamal Heib) [1786602] - [infiniband] RDMA/rw: Support threshold for registration vs scattering to local pages (Kamal Heib) [1786602] - [uapi] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id (Kamal Heib) [1786602] - [net] svcrdma: Improve DMA mapping trace points (Kamal Heib) [1786602] - [infiniband] RDMA/iser: Use iser_err instead of pr_err for logging (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Calculate max_it_iu_size if remote max_it_iu length available (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Add parse function for maximum initiator to target IU size (Kamal Heib) [1786602] - [infiniband] IB/cm: Use container_of() instead of typecast (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Make the code for handling port identities more systematic (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Rework the code that waits until an RDMA port is no longer in use (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Rework the approach for closing an RDMA channel (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Improve a debug message (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix handling of iWARP logins (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix handling of SR-IOV and iWARP ports (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Make route resolving error messages more informative (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Honor the max_send_sge device attribute (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Remove two casts (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Make node GUIDs valid EUI-64 identifiers (Kamal Heib) [1786602] - [infiniband] RDMA/iw_cxgb3: Remove the iw_cxgb3 module from kernel (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Verify modify_device mask (Kamal Heib) [1786602] - [infiniband] RDMA/core: Fix return code when modify_device isn't supported (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Fix port number endianness in a debug message (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Simplify several debug messages (Kamal Heib) [1786602] - [infiniband] IB/iser: remove redundant macro definitions (Kamal Heib) [1786602] - [infiniband] IB/iser: bound protection_sg size by data_sg size (Kamal Heib) [1786602] - [infiniband] IB/iser: add unlikely checks in the fast path (Kamal Heib) [1786602] - [infiniband] RDMA/counter: Prevent QP counter manual binding in auto mode (Kamal Heib) [1786602] - [kvm] KVM: SVM: Override default MMIO mask if memory encryption is enabled (Wei Huang) [1789537] - [netdrv] mlx5e: Reorder mirrer action parsing to check for encap first (Ivan Vecera) [1818074] - [tools] selftests: mlxsw: Adjust test to recent changes (Ivan Vecera) [1818074] - [netdrv] vxlan: fix unexpected failure of vxlan_changelink() (Ivan Vecera) [1818074] - [netdrv] bonding: fix lockdep warning in bond_get_stats() (Ivan Vecera) [1818074] - [netdrv] bonding: fix using uninitialized mode_lock (Ivan Vecera) [1818074] - [net] export netdev_next_lower_dev_rcu() (Ivan Vecera) [1818074] - [netdrv] bonding: add missing netdev_update_lockdep_key() (Ivan Vecera) [1818074] - [net] avoid updating qdisc_xmit_lock_key in netdev_update_lockdep_key() (Ivan Vecera) [1818074] - [include] net: fix kernel-doc warning in (Ivan Vecera) [1818074] - [net] batman-adv: Drop lockdep.h include for soft-interface.c (Ivan Vecera) [1818074] - [net] remove unnecessary variables and callback (Ivan Vecera) [1818074] - [netdrv] macsec: Fix multiple coding style issues (Ivan Vecera) [1818074] - [netdrv] vxlan: add adjacent link to limit depth level (Ivan Vecera) [1818074] - [net] core: add ignore flag to netdev_adjacent structure (Ivan Vecera) [1818074] - [netdrv] team: fix nested locking lockdep warning (Ivan Vecera) [1818074] - [netdrv] bonding: use dynamic lockdep key instead of subclass (Ivan Vecera) [1818074] - [netdrv] bonding: fix unexpected IFF_BONDING bit unset (Ivan Vecera) [1818074] - [net] core: add generic lockdep keys (Ivan Vecera) [1818074] - [net] core: limit nested device depth (Ivan Vecera) [1818074] - [net] udp: rehash on disconnect (Davide Caratti) [1817671] - [net] revert "udp: do rmem bulk free even if the rx sk queue is empty" (Davide Caratti) [1817671] - [net] udp: fix data-race in udp_set_dev_scratch() (Davide Caratti) [1817671] - [net] page_pool: refill page when alloc.count of pool is zero (Petr Oros) [1811201] - [net] page_pool: help compiler remove code in case CONFIG_NUMA=n (Petr Oros) [1811201] - [net] page_pool: handle page recycle for NUMA_NO_NODE condition (Petr Oros) [1811201] - [netdrv] mlx5e: Rx, Update page pool numa node when changed (Petr Oros) [1811201] - [net] page_pool: Don't recycle non-reusable pages (Petr Oros) [1811201] - [net] page_pool: Add API to update numa node (Petr Oros) [1811201] - [include] page_pool: extend tracepoint to also include the page PFN (Petr Oros) [1811201] - [net] page_pool: add destroy attempts counter and rename tracepoint (Petr Oros) [1811201] - [net] page_pool: remove unnecessary variable init (Petr Oros) [1811201] - [net] page_pool: fix logic in __page_pool_get_cached (Petr Oros) [1811201] - [netdrv] team: add missing attribute validation for array index (Hangbin Liu) [1816499] - [netdrv] team: add missing attribute validation for port ifindex (Hangbin Liu) [1816499] - [netdrv] team: Add vlan tx offload to hw_enc_features (Hangbin Liu) [1816499] - [netdrv] team: set slave to promisc if team is already in promisc mode (Hangbin Liu) [1816499] - [netdrv] team: Free BPF filter when unregistering netdev (Hangbin Liu) [1816499] - [netdrv] net: Remove switchdev.h inclusion from team/bond/vlan (Hangbin Liu) [1816499] - [netdrv] team: use operstate consistently for linkup (Hangbin Liu) [1816499] - [netdrv] team: avoid complex list operations in team_nl_cmd_options_set() (Hangbin Liu) [1816499] - [netdev] pass the stuck queue to the timeout handler (Ivan Vecera) [1811203] - [net] flow_dissector: extract more ICMP information (Ivan Vecera) [1795213] - [net] flow_dissector: skip the ICMP dissector for non ICMP packets (Ivan Vecera) [1795213] - [net] flow_dissector: add meaningful comments (Ivan Vecera) [1795213] - [net] vti[6]: fix packet tx through bpf_redirect() in XinY cases (Sabrina Dubroca) [1795145] - [net] xfrm interface: fix packet tx through bpf_redirect() (Sabrina Dubroca) [1795145] - [net] vti[6]: fix packet tx through bpf_redirect() (Sabrina Dubroca) [1795145] - [documentation] Clarify trap's description (Petr Oros) [1809496] - [net] devlink: Wait longer before warning about unset port type (Petr Oros) [1809496] - [documentation] Add a section for devlink-trap testing (Petr Oros) [1809496] - [tools] selftests: devlink_trap: Add test cases for devlink-trap (Petr Oros) [1809496] - [tools] selftests: forwarding: devlink_lib: Add devlink-trap helpers (Petr Oros) [1809496] - [tools] selftests: forwarding: devlink_lib: Allow tests to define devlink device (Petr Oros) [1809496] - [documentation] Add devlink-trap documentation (Petr Oros) [1809496] - [net] devlink: Add generic packet traps and groups (Petr Oros) [1809496] - [net] devlink: Add packet trap infrastructure (Petr Oros) [1809496] - [net] devlink: add warning in case driver does not set port type (Petr Oros) [1809496] - [net] devlink: remove unused devlink_port_get_phys_port_name() function (Petr Oros) [1809496] - [net] tcp: add sanity tests in tcp_add_backlog() (Guillaume Nault) [1790843] - [net] tcp: implement coalescing on backlog queue (Guillaume Nault) [1790843] - [include] tcp: make tcp_space() aware of socket backlog (Guillaume Nault) [1790843] - [net] tcp: take care of compressed acks in tcp_add_reno_sack() (Guillaume Nault) [1790843] - [include] tcp: hint compiler about sack flows (Guillaume Nault) [1790843] - [net] tcp: drop dst in tcp_add_backlog() (Guillaume Nault) [1790843] - [net] drop_monitor: Do not cancel uninitialized work item (Petr Oros) [1810114] - [net] drop_monitor: Use kstrdup (Petr Oros) [1810114] - [net] drop_monitor: Better sanitize notified packets (Petr Oros) [1810114] - [net] drop_monitor: Make timestamps y2038 safe (Petr Oros) [1810114] - [net] drop_monitor: Allow user to start monitoring hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Add support for summary alert mode for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Add support for packet alert mode for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Consider all monitoring states before performing configuration (Petr Oros) [1810114] - [net] drop_monitor: Add basic infrastructure for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Initialize hardware per-CPU data (Petr Oros) [1810114] - [net] drop_monitor: Move per-CPU data init/fini to separate functions (Petr Oros) [1810114] - [maintainers] drop_monitor: Add missing uAPI file to MAINTAINERS file (Petr Oros) [1810114] - [net] drop_monitor: Expose tail drop counter (Petr Oros) [1810114] - [net] drop_monitor: Make drop queue length configurable (Petr Oros) [1810114] - [net] drop_monitor: Add a command to query current configuration (Petr Oros) [1810114] - [net] drop_monitor: Allow truncation of dropped packets (Petr Oros) [1810114] - [net] drop_monitor: Add packet alert mode (Petr Oros) [1810114] - [net] drop_monitor: Add alert mode operations (Petr Oros) [1810114] - [net] drop_monitor: Require CAP_NET_ADMIN for drop monitor configuration (Petr Oros) [1810114] - [net] drop_monitor: Reset per-CPU data before starting to trace (Petr Oros) [1810114] - [net] drop_monitor: Initialize timer and work item upon tracing enable (Petr Oros) [1810114] - [net] drop_monitor: Split tracing enable / disable to different functions (Petr Oros) [1810114] - [net] drop_monitor: Use pre_doit / post_doit hooks (Petr Oros) [1810114] - [net] drop_monitor: Add extack support (Petr Oros) [1810114] - [net] drop_monitor: Avoid multiple blank lines (Petr Oros) [1810114] - [net] drop_monitor: Document scope of spinlock (Petr Oros) [1810114] - [net] drop_monitor: Rename and document scope of mutex (Petr Oros) [1810114] - [net] drop_monitor: Use correct error code (Petr Oros) [1810114] - [net] revert "net: dev: introduce support for sch BYPASS for lockless qdisc" (Paolo Abeni) [1805983] - [net] neighbour: remove neigh_cleanup() method (Ivan Vecera) [1795285] - [include] trace: events: neigh_update: print new state in string format (Ivan Vecera) [1795285] - [net] neigh: hook tracepoints in neigh update code (Ivan Vecera) [1795285] - [net] trace: events: add a few neigh tracepoints (Ivan Vecera) [1795285] - [net] netfilter: nf_tables: add __nft_chain_type_get() (Florian Westphal) [1806888] - [net] devlink: Hang reporter's dump method on a dumpit cb (Andrea Claudi) [1804798] - [net] core: Do not clear VF index for node/port GUIDs query (Petr Oros) [1805312] - [net] core: Populate VF index in struct ifla_vf_guid (Petr Oros) [1805312] - [net] core: Add support for getting VF GUIDs (Petr Oros) [1805312] - [tools] ptp: Extend the test program to check the external time stamp flags (Petr Oros) [1795192] - [netdrv] mlx5: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] igb: Reject requests that fail to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] dp83640: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] mv88e6xxx: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] ptp: Introduce strict checking of external time stamp options (Petr Oros) [1795192] - [netdrv] renesas: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] mlx5: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] igb: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] dp83640: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] mv88e6xxx: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] net: reject PTP periodic output requests with unsupported flags (Petr Oros) [1795192] - [ptp] Validate requests to enable time stamping of external signals (Petr Oros) [1795192] - [tools] ptp: Fix example program to match kernel (Petr Oros) [1795192] - [include] uaccess: add noop untagged_addr definition (Josef Oskera) [1805320] - [include] debugfs: Add debugfs_create_xul() for hexadecimal unsigned long (Josef Oskera) [1795286] - [documentation] debugfs: Document debugfs helper for unsigned long values (Josef Oskera) [1795286] - [net] vsock/virtio: add WARN_ON check on virtio_transport_get_ops() (Stefano Garzarella) [1692797] - [net] vsock/virtio: fix null-pointer dereference in virtio_transport_recv_listen() (Stefano Garzarella) [1692797] - [net] vsock: avoid to assign transport if its initialization fails (Stefano Garzarella) [1692797] - [misc] vsock/vmci: make vmci_vsock_cb_host_called static (Stefano Garzarella) [1692797] - [net] vsock: fix bind() behaviour taking care of CID (Stefano Garzarella) [1692797] - [net] vsock: prevent transport modules unloading (Stefano Garzarella) [1692797] - [misc] vsock/vmci: register vmci_transport only when VMCI guest/host are active (Stefano Garzarella) [1692797] - [net] vsock: add multi-transports support (Stefano Garzarella) [1692797] - [net] hv_sock: set VMADDR_CID_HOST in the hvs_remote_addr_init() (Stefano Garzarella) [1692797] - [net] vsock: move vsock_insert_unbound() in the vsock_create() (Stefano Garzarella) [1692797] - [net] vsock: add vsock_create_connected() called by transports (Stefano Garzarella) [1692797] - [net] vsock: handle buffer_size sockopts in the core (Stefano Garzarella) [1692797] - [net] vsock: add 'struct vsock_sock *' param to vsock_core_get_transport() (Stefano Garzarella) [1692797] - [net] vsock/virtio: add transport parameter to the virtio_transport_reset_no_sock() (Stefano Garzarella) [1692797] - [net] vsock: add 'transport' member in the struct vsock_sock (Stefano Garzarella) [1692797] - [kernel] vsock: remove linux/vm_sockets.h file (Stefano Garzarella) [1692797] - [net] vsock: remove vm_sockets_get_local_cid() (Stefano Garzarella) [1692797] - [net] vsock/vmci: remove unused VSOCK_DEFAULT_CONNECT_TIMEOUT (Stefano Garzarella) [1692797] - [x86] kvm: x86: clear stale x86_emulate_ctxt->intercept value (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: vmx: check descriptor table exits on instruction emulation (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Check IO instruction VM-exit conditions (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Refactor IO bitmap checks into helper function (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Don't emulate instructions in guest mode (Jon Maloy) [1806817] {CVE-2020-2732}- [fs] gfs2: Fix oversight in gfs2_ail1_flush (Robert S Peterson) [1724769] - [kernel] sched/uclamp: Extend sched_setattr() to support utilization clamping (Phil Auld) [1810399] - [kernel] sched/core: Further clarify sched_class::set_next_task() (Phil Auld) [1810399] - [kernel] sched/fair: Use mul_u32_u32() (Phil Auld) [1810399] - [kernel] sched/core: Simplify sched_class::pick_next_task() (Phil Auld) [1810399] - [kernel] sched/core: Optimize pick_next_task() (Phil Auld) [1810399] - [kernel] sched/core: Make pick_next_task_idle() more consistent (Phil Auld) [1810399] - [kernel] sched/fair: Better document newidle_balance() (Phil Auld) [1810399] - [kernel] sched: Fix pick_next_task() vs 'change' pattern race (Phil Auld) [1810399] - [cpufreq] cpufreq: Initialize the governors in core_initcall (Phil Auld) [1810399] - [kernel] sched/vtime: Fix guest/system mis-accounting on task switch (Phil Auld) [1810399] - [kernel] sched/fair/util_est: Implement faster ramp-up EWMA on utilization increases (Phil Auld) [1810399] - [kernel] sched/topology: Allow sched_asym_cpucapacity to be disabled (Phil Auld) [1810399] - [kernel] sched/topology: Don't try to build empty sched domains (Phil Auld) [1810399] - [kernel] sched/topology: Don't set SD_BALANCE_WAKE on cpuset domain relax (Phil Auld) [1810399] - [kernel] membarrier: Fix RCU locking bug caused by faulty merge (Phil Auld) [1810399] - [kernel] sched/core: Fix preempt_schedule() interrupt return comment (Phil Auld) [1810399] - [kernel] sched/membarrier: Return -ENOMEM to userspace on memory allocation failure (Phil Auld) [1810399] - [kernel] sched/membarrier: Skip IPIs when mm->mm_users == 1 (Phil Auld) [1810399] - [tools] selftests, sched/membarrier: Add multi-threaded test (Phil Auld) [1810399] - [kernel] sched/membarrier: Fix p->mm->membarrier_state racy load (Phil Auld) [1810399] - [include] sched/membarrier: Call sync_core only before usermode for same mm (Phil Auld) [1810399] - [kernel] sched/membarrier: Remove redundant check (Phil Auld) [1810399] - [kernel] sched/membarrier: Fix private expedited registration check (Phil Auld) [1810399] - [kernel] tasks, sched/core: RCUify the assignment of rq->curr (Phil Auld) [1810399] - [kernel] tasks, sched/core: With a grace period after finish_task_switch(), remove unnecessary code (Phil Auld) [1810399] - [kernel] tasks, sched/core: Ensure tasks are available for a grace period after leaving the runqueue (Phil Auld) [1810399] - [kernel] tasks: Add a count of task RCU users (Phil Auld) [1810399] - [include] sched/core: Convert task_struct.usage to refcount_t (Phil Auld) [1810399] - [include] sched/core: Convert vcpu_is_preempted() from macro to an inline function (Phil Auld) [1810399] - [kernel] sched/fair: Remove unused cfs_rq_clock_task() function (Phil Auld) [1810399] - [scripts] Kbuild: Handle PREEMPT_RT for version string and magic (Phil Auld) [1810399] - [kernel] sched/fair: Use rq_lock/unlock in online_fair_sched_group (Phil Auld) [1810399] - [kernel] sched: Rework pick_next_task() slow-path (Phil Auld) [1810399] - [kernel] sched: Allow put_prev_task() to drop rq->lock (Phil Auld) [1810399] - [kernel] sched/fair: Expose newidle_balance() (Phil Auld) [1810399] - [kernel] sched: Add task_struct pointer to sched_class::set_curr_task (Phil Auld) [1810399] - [kernel] sched: Rework CPU hotplug task selection (Phil Auld) [1810399] - [kernel] rcu/tree: Fix SCHED_FIFO params (Phil Auld) [1810399] - [kernel] sched: Clean up active_mm reference counting (Phil Auld) [1810399] - [kernel] sched/{rt, deadline}: Fix set_next_task vs pick_next_task (Phil Auld) [1810399] - [kernel] sched: Fix kerneldoc comment for ia64_set_curr_task (Phil Auld) [1810399] - [kernel] stop_machine: Fix stop_cpus_in_progress ordering (Phil Auld) [1810399] - [kernel] sched/psi: Reduce psimon FIFO priority (Phil Auld) [1810399] - [kernel] sched/psi: Do not require setsched permission from the trigger creator (Phil Auld) [1810399] - [x86] x86/kvm: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [x86] x86/dumpstack: Indicate PREEMPT_RT in dumps (Phil Auld) [1810399] - [x86] x86: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] kprobes: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] tracing: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [include] locking/spinlocks: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] rcu: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] sched/preempt: Use CONFIG_PREEMPTION where appropriate (Phil Auld) [1810399] - [kernel] sched/core: Prevent race condition between cpuset and __sched_setscheduler() (Phil Auld) [1810399] - [kernel] rcu/tree: Call setschedule() gp ktread to SCHED_FIFO outside of atomic region (Phil Auld) [1810399] - [kernel] cgroup/cpuset: Change cpuset_rwsem and hotplug lock order (Phil Auld) [1810399] - [kernel] cgroup/cpuset: Convert cpuset_mutex to percpu_rwsem (Phil Auld) [1810399] - [kernel] sched/deadline: Fix bandwidth accounting at all levels after offline migration (Phil Auld) [1810399] - [kernel] cpusets: Rebuild root domain deadline accounting information (Phil Auld) [1810399] - [kernel] sched/core: Streamle calls to task_rq_unlock() (Phil Auld) [1810399] - [kernel] sched/topology: Add partition_sched_domains_locked() (Phil Auld) [1810399] - [kernel] sched/stats: Fix unlikely() use of sched_info_on() (Phil Auld) [1810399] - [kernel] sched/fair: Change task_numa_work() storage to static (Phil Auld) [1810399] - [kernel] sched/fair: Move task_numa_work() init to init_numa_balancing() (Phil Auld) [1810399] - [kernel] sched/fair: Move init_numa_balancing() below task_numa_work() (Phil Auld) [1810399] - [kernel] sched/rt, Kconfig: Unbreak def/oldconfig with CONFIG_PREEMPT=y (Phil Auld) [1810399] - [kernel] sched/rt, Kconfig: Introduce CONFIG_PREEMPT_RT (Phil Auld) [1810399] - [kernel] kconfig: include kernel/Kconfig.preempt from init/Kconfig (Phil Auld) [1810399] - [kernel] sched/core: Fix preempt warning in ttwu (Phil Auld) [1810399] - [kernel] sched/core: Optimize try_to_wake_up() for local wakeups (Phil Auld) [1810399] - [kernel] sched/core: Introduce set_next_task() helper for better code readability (Phil Auld) [1810399] - [kernel] sched/fair: Don't increase sd->balance_interval on newidle balance (Phil Auld) [1810399] - [kernel] sched/fair: Clean up load_balance() condition (Phil Auld) [1810399] - [mm] mm: fix possible PMD dirty bit lost in set_pmd_migration_entry() (Rafael Aquini) [1809698] - [mm] mm, thp: fix defrag setting if newline is not used (Rafael Aquini) [1809698] - [mm] mm/migrate.c: also overwrite error when it is bigger than zero (Rafael Aquini) [1809698] - [mm] mm/mempolicy.c: fix out of bounds write in mpol_parse_str() (Rafael Aquini) [1809698] - [mm] mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is valid (Rafael Aquini) [1809698] - [mm] mm/page-writeback.c: avoid potential division by zero in wb_min_max_ratio() (Rafael Aquini) [1809698] - [mm] mm/gup: fix memory leak in __gup_benchmark_ioctl (Rafael Aquini) [1809698] - [mm] mm: move_pages: return valid node id in status if the page is already on the target node (Rafael Aquini) [1809698] - [mm] mm/zsmalloc.c: fix the migrated zspage statistics (Rafael Aquini) [1809698] - [mm] mm: memcg/slab: wait for !root kmem_cache refcnt killing on root kmem_cache destruction (Rafael Aquini) [1809698] - [mm] mm/mempolicy.c: check range first in queue_pages_test_walk (Rafael Aquini) [1809698] - [mm] mm/memory.c: fix a huge pud insertion race during faulting (Rafael Aquini) [1809698] - [mm] mm: move the backup x_devmap() functions to asm-generic/pgtable.h (Rafael Aquini) [1809698] - [mm] mm/rmap.c: don't reuse anon_vma if we just want a copy (Rafael Aquini) [1809698] - [mm] mm/ksm.c: don't WARN if page is still mapped in remove_stable_node() (Rafael Aquini) [1809698] - [mm] mm/page_io.c: do not free shared swap slots (Rafael Aquini) [1809698] - [mm] mm: thp: handle page cache THP correctly in PageTransCompoundMap (Rafael Aquini) [1809698] - [mm] mm/slub: fix a deadlock in show_slab_objects() (Rafael Aquini) [1809698] - [mm] mm/vmpressure.c: fix a signedness bug in vmpressure_register_event() (Rafael Aquini) [1809698] - [trace] include/trace/events/writeback.h: fix -Wstringop-truncation warnings (Rafael Aquini) [1809698] - [mm] mm/compaction.c: clear total_{migrate, free}_scanned before scanning a new zone (Rafael Aquini) [1809698] - [mm] mm/hmm: fix hmm_range_fault()'s handling of swapped out pages (Rafael Aquini) [1809698] - [mm] mm/migrate.c: initialize pud_entry in migrate_vma() (Rafael Aquini) [1809698] - [kernel] ptrace: restore smp_rmb() in __ptrace_may_access() (Rafael Aquini) [1809698] - [documentation] mm: fix Documentation/vm/hmm.rst Sphinx warnings (Rafael Aquini) [1809698] - [fs] writeback: fix inode cgroup switching comment (Rafael Aquini) [1809698] - [include] mm/page_poison: update comment after code moved (Rafael Aquini) [1809698] - [mm] mm/filemap: pass inclusive 'end_byte' parameter to filemap_range_has_page (Rafael Aquini) [1809698] - [mm] ARM: 8826/1: mm: initialize pfn limits with find_limits() (Rafael Aquini) [1809698] - [fs] mm, proc: report PR_SET_THP_DISABLE in proc (Rafael Aquini) [1809698] - [mm] mm/khugepaged: fix crashes due to misaccounted holes (Rafael Aquini) [1809698] - [include] writeback: don't decrement wb->refcnt if !wb->bdi (Rafael Aquini) [1809698] - [mm] mm/filemap.c: Use existing variable (Rafael Aquini) [1809698] - [fs] removed extra extern file_fdatawait_range (Rafael Aquini) [1809698] - [s390] Revert "s390/dasd: Disable Thin Provisioning to prevent data loss" (Philipp Rudo) [1816984] - [s390] s390/dasd: fix data corruption for thin provisioned devices (Philipp Rudo) [1816984] - [block] virtio-blk: improve virtqueue error to BLK_STS (Philipp Rudo) [1816983] - [block] virtio-blk: fix hw_queue stopped on arbitrary error (Philipp Rudo) [1816983] - [s390] s390/pkey: fix missing length of protected key on return (Philipp Rudo) [1816981] - [s390] s390/mm: fix panic in gup_fast on large pud (Philipp Rudo) [1816980]- [mmc] mmc: core: Use a minimum 1600ms timeout when enabling CACHE ctrl (Yannick Cote) [1811430] - [mmc] mmc: core: Allow BKOPS and CACHE ctrl even if no HPI support (Yannick Cote) [1811430] - [net] net/smc: keep vlan_id for SMC-R in smc_listen_work() (Philipp Rudo) [1796890] - [scripts] redhat: fix modpost.c prerequisites (Frantisek Hrbata) [1818499] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Change the order for clos disable (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Fix result display for turbo-freq auto mode (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Add support for core-power discovery (Prarit Bhargava) [1817068] - [netdrv] can, slip: Protect tty->disc_data in write_wakeup and close with RCU (Steve Best) [1816036] - [kernel] exit: panic before exit_mm() on global init exit (Oleg Nesterov) [1808944] - [fs] nfsd: restore NFSv3 ACL support ("J. Bruce Fields") [1815683] - [fs] nfsd4: Fix kernel crash when reading proc file reply_cache_stats ("J. Bruce Fields") [1815683] - [fs] nfsd: fix cleanup of nfsd_reply_cache_init on failure ("J. Bruce Fields") [1815683] - [fs] nfsd: note inadequate stats locking ("J. Bruce Fields") [1815683] - [fs] nfsd4: drc containerization ("J. Bruce Fields") [1815683] - [fs] nfsd: don't call nfsd_reply_cache_shutdown twice ("J. Bruce Fields") [1815683] - [fs] nfsd: knfsd must use the container user namespace ("J. Bruce Fields") [1815683] - [net] SUNRPC: rsi_parse() should use the current user namespace ("J. Bruce Fields") [1815683] - [net] SUNRPC: Fix the server AUTH_UNIX userspace mappings ("J. Bruce Fields") [1815683] - [fs] lockd: Pass the user cred from knfsd when starting the lockd server ("J. Bruce Fields") [1815683] - [net] SUNRPC: Temporary sockets should inherit the cred from their parent ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Cache the process user cred in the RPC server listener ("J. Bruce Fields") [1815683] - [fs] nfsd: Allow containers to set supported nfs versions ("J. Bruce Fields") [1815683] - [fs] nfsd: Add custom rpcbind callbacks for knfsd ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Allow further customisation of RPC program registration ("J. Bruce Fields") [1815683] - [net] SUNRPC: Clean up generic dispatcher code ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Add a callback to initialise server requests ("J. Bruce Fields") [1815683] - [fs] SUNRPC/nfs: Fix return value for nfs4_callback_compound() ("J. Bruce Fields") [1815683] - [kernel] sched: Avoid scale real weight down to zero (Phil Auld) [1808562] - [nvme] nvme/pci: move cqe check after device shutdown (David Milburn) [1779247 1750267] - [mm] mm, slb: guarantee natural alignment for kmalloc(power-of-two) (Brian Foster) [1814964] - [tools] tools/power turbostat: Support Ice Lake server (Steve Best) [1776467] - [pinctrl] pinctrl: intel: Allow to request locked pads (Prarit Bhargava) [1783115] - [s390] s390/qeth: fix potential deadlock on workqueue flush (Philipp Rudo) [1814783] - [s390] s390/qeth: streamline control code for promisc mode (Philipp Rudo) [1814783] - [s390] scsi: zfcp: fix request object use-after-free in send path causing wrong traces (Philipp Rudo) [1814790] - [s390] s390/pci: Fix possible deadlock in recover_store() (Philipp Rudo) [1814788] - [s390] s390/pci: Recover handle in clp_set_pci_fn() (Philipp Rudo) [1814788] - [s390] scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host (Philipp Rudo) [1814794] - [s390] scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP devices (Philipp Rudo) [1814793] - [s390] s390/cio: fix virtio-ccw DMA without PV (Philipp Rudo) [1814787] - [s390] s390/kaslr: store KASLR offset for early dumps (Philipp Rudo) [1814781] - [mm] s390/mm: fix dynamic pagetable upgrade for hugetlbfs (Philipp Rudo) [1814779] - [char] tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send() (Steve Best) [1808048] - [s390] s390/qeth: fix dangling IO buffers after halt/clear (Philipp Rudo) [1814782] - [virtio] virtio_ring: fix unmap of indirect descriptors (Philipp Rudo) [1797289] - [virtio] virtio_ring: fix return code on DMA mapping fails (Philipp Rudo) [1797289] - [misc] dma-mapping: zero memory returned from dma_alloc_* (Philipp Rudo) [1788928] - [platform] platform/mellanox: fix the mlx-bootctl sysfs (Alaa Hleihel) [1655714] - [platform] platform/mellanox: Add bootctl driver for Mellanox BlueField Soc (Alaa Hleihel) [1655714] - [char] tpm: ibmvtpm: Wait for buffer to be set before proceeding (Steve Best) [1815548] - [scsi] iscsi: Avoid potential deadlock in iscsi_if_rx func (Oleksandr Natalenko) [1815874] - [x86] x86/vector: Remove warning on managed interrupt migration (Peter Xu) [1812331] - [scsi] scsi: lpfc: fix spelling mistake "Notication" -> "Notification" (Dick Kennedy) [1796565] - [scsi] scsi: lpfc: add RDF registration and Link Integrity FPIN logging (Dick Kennedy) [1796565] - [uapi] scsi: fc: Update Descriptor definition and add RDF and Link Integrity FPINs (Dick Kennedy) [1796565]- [kvm] KVM: PPC: Book3S HV: Use __gfn_to_pfn_memslot in HPT page fault handler (Sam Bobroff) [1815491] - [net] tcp: also NULL skb->dev when copy was needed (Florian Westphal) [1775961] - [net] tcp: ensure skb->dev is NULL before leaving TCP stack (Florian Westphal) [1775961]- [mm] mm/memcontrol: use vmstat names for printing statistics (Waiman Long) [1793534] - [base] mm/vmstat: add helpers to get vmstat item names for each enum type (Waiman Long) [1793534] - [mm] mm/vmstat.c: assert that vmstat_text is in sync with stat_items_size (Waiman Long) [1793534] - [mm] mm: memcontrol: dump memory.stat during cgroup OOM (Waiman Long) [1793534] - [mm] mm/memcontrol.c: lost css_put in memcg_expand_shrinker_maps() (Waiman Long) [1793534] - [mm] mm: memcg/slab: fix percpu slab vmstats flushing (Waiman Long) [1793534] - [include] include/linux/memcontrol.h: fix comments based on per-node memcg (Waiman Long) [1793534] - [mm] mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm() (Waiman Long) [1793534] - [mm] mm: memcontrol: fix network errors from failing __GFP_ATOMIC charges (Waiman Long) [1793534] - [mm] mm: slab: make page_cgroup_ino() to recognize non-compound slab pages properly (Waiman Long) [1793534] - [mm] mm: memcontrol: fix NULL-ptr deref in percpu stats flush (Waiman Long) [1793534] - [mm] mm/memcontrol: update lruvec counters in mem_cgroup_move_account (Waiman Long) [1793534] - [mm] mm: memcg: get number of pages on the LRU list in memcgroup base on lru_zone_size (Waiman Long) [1793534] - [mm] mm: memcontrol: fix percpu vmstats and vmevents flush (Waiman Long) [1793534] - [mm] mm, memcg: partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones" (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu slab vmstats on kmem offlining (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu vmevents before releasing memcg (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu vmstats before releasing memcg (Waiman Long) [1793534] - [mm] mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones (Waiman Long) [1793534] - [mm] mm/memcontrol: fix wrong statistics in memory.stat (Waiman Long) [1793534] - [mm] mm: memcontrol: don't batch updates of local VM stats and events (Waiman Long) [1793534] - [mm] mm: memcontrol: fix NUMA round-robin reclaim at intermediate level (Waiman Long) [1793534] - [mm] mm: memcontrol: fix recursive statistics correctness & scalabilty (Waiman Long) [1793534] - [mm] mm: memcontrol: move stat/event counting functions out-of-line (Waiman Long) [1793534] - [mm] mm: memcontrol: make cgroup stats and events query API explicitly local (Waiman Long) [1793534] - [mm] mm, memcg: rename ambiguously named memory.stat counters and functions (Waiman Long) [1793534] - [mm] mm: memcontrol: quarantine the mem_cgroup_nr_lru_pages() API (Waiman Long) [1793534] - [mm] mm: memcontrol: push down mem_cgroup_nr_lru_pages() (Waiman Long) [1793534] - [mm] mm: memcontrol: push down mem_cgroup_node_nr_lru_pages() (Waiman Long) [1793534] - [mm] mm: memcontrol: replace node summing with memcg_page_state() (Waiman Long) [1793534] - [mm] mm: memcontrol: replace zone summing with lruvec_page_state() (Waiman Long) [1793534] - [include] mm: memcontrol: track LRU counts in the vmstats array (Waiman Long) [1793534] - [mm] mm: writeback: use exact memcg dirty counts (Waiman Long) [1793534] - [mm] mm: memcontrol: expose THP events on a per-memcg basis (Waiman Long) [1793534] - [mm] memcg: killed threads should not invoke memcg OOM killer (Waiman Long) [1793534] - [mm] mm, memcg: extract memcg maxable seq_file logic to seq_show_memcg_tunable (Waiman Long) [1793534] - [mm] mm, memcg: create mem_cgroup_from_seq (Waiman Long) [1793534] - [mm] mm/oom_kill.c: fix uninitialized oc->constraint (Waiman Long) [1793534] - [mm] mm, oom: add oom victim's memcg to the oom context information (Waiman Long) [1793534] - [mm] mm, oom: reorganize the oom report in dump_header (Waiman Long) [1793534] - [include] mm: Clarify the implication of adding new node stat items (Waiman Long) [1793534] - [mm] memcg: Revert "Add preemption point in accumulate_memcg_tree()" (Waiman Long) [1793534] - [base] driver core: add dev_groups to all drivers (Don Dutile) [1814347] - [tools] selftests/livepatch: Remove unused local variable in set_ftrace_enabled() (Yannick Cote) [1807115] - [tools] selftests/livepatch: Replace set_dynamic_debug() with setup_config() in README (Yannick Cote) [1807115] - [tools] selftests: livepatch: Fix it to do root uid check and skip (Yannick Cote) [1807115] - [tools] selftests/livepatch: Test interaction with ftrace_enabled (Yannick Cote) [1807115] - [tools] selftests/livepatch: Make dynamic debug setup and restore generic (Yannick Cote) [1807115] - [kernel] ftrace: Introduce PERMANENT ftrace_ops flag (Yannick Cote) [1807115] - [samples] livepatch: Handle allocation failure in the sample of shadow variable API (Yannick Cote) [1807115] - [lib] livepatch/samples/selftest: Use klp_shadow_alloc() API correctly (Yannick Cote) [1807115] - [lib] livepatch/selftest: Clean up shadow variable names and type (Yannick Cote) [1807115] - [samples] livepatch/sample: Use the right type for the leaking data pointer (Yannick Cote) [1807115] - [kernel] kprobes: Allow kprobes coexist with livepatch (Yannick Cote) [1727330 1807115] - [x86] ftrace/x86: Remove mcount() declaration (Yannick Cote) [1807115] - [tools] selftests: livepatch: add missing fragments to config (Yannick Cote) [1807115] - [lib] livepatch: Selftests of the API for tracking system state changes (Yannick Cote) [1807115] - [documentation] livepatch: Documentation of the new API for tracking system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Allow to distinguish different version of system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Basic API to track system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Keep replaced patches until post_patch callback is called (Yannick Cote) [1807115] - [tools] selftests/livepatch: Disable the timeout (Yannick Cote) [1807115] - [kernel] livepatch: Nullify obj->mod in klp_module_coming()'s error path (Yannick Cote) [1807115] - [powerpc] livepatch: Remove klp_check_compiler_support() (Yannick Cote) [1807115] - [x86] ftrace/x86: Remove mcount support (Yannick Cote) [1807115] - [x86] ftrace/x86_32: Remove support for non DYNAMIC_FTRACE (Yannick Cote) [1807115] - [documentation] docs/livepatch: Unify style of livepatch documentation in the ReST format (Yannick Cote) [1807115] - [documentation] docs: livepatch: convert docs to ReST and rename to *.rst (Yannick Cote) [1807115] - [kernel] livepatch: Remove duplicate warning about missing reliable stacktrace support (Yannick Cote) [1807115] - [kernel] livepatch: Use static buffer for debugging messages under rq lock (Yannick Cote) [1807115] - [include] livepatch: Remove stale kobj_added entries from kernel-doc descriptions (Yannick Cote) [1807115] - [kernel] livepatch: Remove duplicated code for early initialization (Yannick Cote) [1807115] - [kernel] livepatch: Remove custom kobject state handling (Yannick Cote) [1807115] - [kernel] livepatch: Convert error about unsupported reliable stacktrace into a warning (Yannick Cote) [1807115] - [kernel] kprobes: Replace p with other pointer types (Yannick Cote) [1727330 1807115]- [drm] drm/bochs: downgrade pci_request_region failure from error to warning (Dave Airlie) [1804735] - [drm] drm/bochs: deinit bugfix (Dave Airlie) [1804735] - [fs] gfs2: fix O_EXCL|O_CREAT handling on cold dcache (Andrew Price) [1811787] - [net] esp: remove the skb from the chain when it's enqueued in cryptd_wq (Xin Long) [1807909] - [powerpc] powerpc/nvdimm: set target_node properly (Diego Domingos) [1815038]- [kernel] posix-cpu-timers: Fix two trivial comments (Prarit Bhargava) [1810244] - [kernel] hrtimer: Annotate lockless access to timer->base (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Fix permission check regression (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Always clear head pointer on dequeue (Prarit Bhargava) [1810244] - [kernel] hrtimer: Add a missing bracket and hide `migration_base' on !SMP (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Make expiry_active check actually work correctly (Prarit Bhargava) [1810244] - [include] posix-timers: Unbreak CONFIG_POSIX_TIMERS=n build (Prarit Bhargava) [1810244] - [kernel] tick: Mark sched_timer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Utilize timerqueue for storage (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Move state tracking to struct posix_cputimers (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Deduplicate rlimit handling (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove pointless comparisons (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of 64bit divisions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Consolidate timer expiry further (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of zero checks (Prarit Bhargava) [1810244] - [kernel] rlimit: Rewrite non-sensical RLIMIT_CPU comment (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Respect INFINITY for hard RTTIME limit (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Switch thread group sampling to array (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Restructure expiry array (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove cputime_expires (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Make expiry checks array based (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide array based sample functions (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Remove the odd field rename defines (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Switch check_*_timers() to array cache (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify set_process_cpu_timer() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify timer queueing (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide array based access to expiry cache (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Move expiry cache into struct posix_cputimers (Prarit Bhargava) [1810244] - [include] sched: Move struct task_cputime to types.h (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Create a container struct (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Move prof/virt_ticks into caller (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sample task times once in expiry check (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of pointer indirection (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify sample functions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove pointless return value check (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_rearm() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_get() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_set() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Consolidate thread group sample code (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Rename thread_group_cputimer() and make it static (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sample directly in timer check (Prarit Bhargava) [1810244] - [kernel] itimers: Use quick sample function (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide quick sample function for itimer (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use common permission check in posix_cpu_timer_create() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use common permission check in posix_cpu_clock_get() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide task validation functions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove tsk argument from run_posix_cpu_timers() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sanitize bogus WARNONS (Prarit Bhargava) [1810244] - [kernel] hrtimer: Don't take expiry_lock when timer is currently migrated (Prarit Bhargava) [1810244] - [kernel] hrtimer: Protect lockless access to timer->base (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Fixup stale comment (Prarit Bhargava) [1810244] - [include] alarmtimers: Avoid rtc.h include (Prarit Bhargava) [1810244] - [include] posix-timers: Cleanup forward declarations and includes (Prarit Bhargava) [1810244] - [kernel] hrtimer: Improve comments on handling priority inversion against softirq kthread (Prarit Bhargava) [1810244] - [kernel] posix-timers: Use a callback for cancel synchronization on PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] posix-timers: Move rcu_head out of it union (Prarit Bhargava) [1810244] - [kernel] posix-timers: Rework cancel retry loops (Prarit Bhargava) [1810244] - [kernel] posix-timers: Cleanup the flag/flags confusion (Prarit Bhargava) [1810244] - [kernel] itimers: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [fs] timerfd: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] alarmtimer: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] sched/deadline: Ensure inactive_timer runs in hardirq context (Prarit Bhargava) [1810244] - [kernel] timers: Prepare support for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Prepare support for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Determine hard/soft expiry mode for hrtimer sleepers on RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Move unmarked hrtimers to soft interrupt expiry on RT (Prarit Bhargava) [1810244] - [kernel] tick: Mark tick related hrtimers to expiry in hard interrupt context (Prarit Bhargava) [1810244] - [kvm] KVM: LAPIC: Mark hrtimer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] watchdog: Mark watchdog_hrtimer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] perf/core: Mark hrtimers to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] hrtimer: Make enqueue mode check work on RT (Prarit Bhargava) [1810244] - [kernel] sched: Mark hrtimers to expire in hard interrupt context (Prarit Bhargava) [1810244] - [staging] hrtimer/treewide: Use hrtimer_sleeper_start_expires() (Prarit Bhargava) [1810244] - [kernel] hrtimer: Provide hrtimer_sleeper_start_expires() (Prarit Bhargava) [1810244] - [kernel] hrtimer: Consolidate hrtimer_init() + hrtimer_init_sleeper() calls (Prarit Bhargava) [1810244] - [kernel] hrtimer: Remove task argument from hrtimer_init_sleeper() (Prarit Bhargava) [1810244] - [kernel] futex: Consolidate duplicated timer setup code (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove private interval storage (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Unbreak timer rearming (Prarit Bhargava) [1810244] - [mm] mm, slub: naive detection of double-free or freelist corruption (Rafael Aquini) [1810288] - [fs] nfs: add minor version to nfs_server_key for fscache (Dave Wysochanski) [1777097] - [edac] EDAC, mellanox: Add ECC support for BlueField DDR4 (Alaa Hleihel) [1725108] - [platform] platform/mellanox: fix potential deadlock in the tmfifo driver (Alaa Hleihel) [1655736] - [platform] platform/mellanox: Add TmFifo driver for Mellanox BlueField Soc (Alaa Hleihel) [1655736] - [mm] powerpc/pmem: Fix kernel crash due to wrong range value usage in flush_dcache_range (Steve Best) [1814279] - [mm] powerpc: Chunk calls to flush_dcache_range in arch_*_memory (Steve Best) [1814279] - [fs] cifs: fix NULL dereference in match_prepath (Leif Sahlberg) [1760879] - [fs] cifs: fail i/o on soft mounts if sessionsetup errors out (Leif Sahlberg) [1798031] - [sound] ALSA: usb-audio: set the interface format after resume on Dell WD19 (Perry Yuan) [1807965] - [fs] cifs: make sure we do not overflow the max EA buffer size (Leif Sahlberg) [1752437]- [netdrv] net/mlx5e: Don't clear the whole vf config when switching modes (mohamad meib) [1814350] - [fs] fuse: fix stack use after return (Miklos Szeredi) [1814666]- [target] scsi: Revert "target: iscsi: Wait for all commands to finish before freeing a session" (Maurizio Lombardi) [1784442] - [infiniband] scsi: Revert "RDMA/isert: Fix a recently introduced regression related to logout" (Maurizio Lombardi) [1784442] - [target] scsi: Revert "target/core: Inline transport_lun_remove_cmd()" (Maurizio Lombardi) [1784442] - [target] scsi: libfc: remove unnecessary assertion on ep variable (Maurizio Lombardi) [1784442] - [infiniband] scsi: RDMA/isert: Fix a recently introduced regression related to logout (Maurizio Lombardi) [1784442] - [target] scsi: target/iblock: Fix protection error with blocks greater than 512B (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Fix a pr_debug() argument (Maurizio Lombardi) [1784442] - [target] scsi: target: iscsi: Wait for all commands to finish before freeing a session (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Release SPC-2 reservations when closing a session (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Document target_cmd_size_check() (Maurizio Lombardi) [1784442] - [target] scsi: target: tcmu: Prevent memory reclaim recursion (Maurizio Lombardi) [1784442] - [scsi] scsi: cxgb4i: remove set but not used variable 'ppmax' (Maurizio Lombardi) [1784442] - [target] scsi: target: remove unused extension parameters (Maurizio Lombardi) [1784442] - [target] scsi: target: fix SendTargets=All string compares (Maurizio Lombardi) [1784442] - [target] scsi: target: Remove tpg_list and se_portal_group.se_tpg_node (Maurizio Lombardi) [1784442] - [target] scsi: target: cxgbit: Fix cxgbit_fw4_ack() (Maurizio Lombardi) [1784442] - [infiniband] IB/hfi1: TID RDMA WRITE should not return IB_WC_RNR_RETRY_EXC_ERR (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Calculate flow weight based on QP MTU for TID RDMA (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure r_tid_ack is valid before building TID RDMA ACK packet (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure full Gen3 speed in a Gen4 system (Kamal Heib) [1786601] - [infiniband] IB/core: Avoid deadlock during netlink message handling (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Fix incorrect error print (Kamal Heib) [1786601] - [infiniband] IB/iser: Support up to 16MB data transfer in a single command (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Add missing cast for 32 bit (Kamal Heib) [1786601] - [documentation] Documentation/infiniband: update name of some functions (Kamal Heib) [1786601] - [infiniband] RDMA/iwpm: Delete unnecessary checks before the macro call "dev_kfree_skb" (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Use existing FIELD_SIZEOF macro (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Remove umem check on dereg MR flow (Kamal Heib) [1786601] - [net] xprtrdma: Send Queue size grows after a reconnect (Kamal Heib) [1786601] - [net] xprtrdma: Clear xprt->reestablish_timeout on close (Kamal Heib) [1786601] - [net] xprtrdma: Recycle MRs after disconnect (Kamal Heib) [1786601] - [net] xprtrdma: Optimize rpcrdma_post_recvs() (Kamal Heib) [1786601] - [net] xprtrdma: Inline XDR chunk encoder functions (Kamal Heib) [1786601] - [infiniband] RDMA/core: Make invalidate_range a device operation (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Use kvcalloc for the dma_list and page_list (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Check for overflow when computing the umem_odp end (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Provide ib_umem_odp_release() to undo the allocs (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Split creating a umem_odp from ib_umem_get (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Make the three ways to create a umem_odp clear (Kamal Heib) [1786601] - [infiniband] RMDA/odp: Consolidate umem_odp initialization (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Make it clearer when a umem is an implicit ODP umem (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Iterate over the whole rbtree directly (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Use the common interval tree library instead of generic (Kamal Heib) [1786601] - [net] xprtrdma: Clean up xprt_rdma_set_connect_timeout() (Kamal Heib) [1786601] - [net] xprtrdma: Use an llist to manage free rpcrdma_reps (Kamal Heib) [1786601] - [net] xprtrdma: Remove rpcrdma_buffer::rb_mrlock (Kamal Heib) [1786601] - [net] xprtrdma: Cache free MRs in each rpcrdma_req (Kamal Heib) [1786601] - [net] xprtrdma: Ensure creating an MR does not trigger FS writeback (Kamal Heib) [1786601] - [net] xprtrdma: Move rpcrdma_mr_get out of frwr_map (Kamal Heib) [1786601] - [net] xprtrdma: Combine rpcrdma_mr_put and rpcrdma_mr_unmap_and_put (Kamal Heib) [1786601] - [net] xprtrdma: Simplify rpcrdma_mr_pop (Kamal Heib) [1786601] - [net] xprtrdma: Rename rpcrdma_buffer::rb_all (Kamal Heib) [1786601] - [net] xprtrdma: Rename CQE field in Receive trace points (Kamal Heib) [1786601] - [infiniband] RDMA: Delete DEBUG code (Kamal Heib) [1786601] - [include] xprtrdma: Boost client's max slot table size to match Linux server (Kamal Heib) [1786601] - [net] xprtrdma: Boost maximum transport header size (Kamal Heib) [1786601] - [net] xprtrdma: Fix calculation of ri_max_segs again (Kamal Heib) [1786601] - [net] xprtrdma: Update obsolete comment (Kamal Heib) [1786601] - [net] xprtrdma: Refresh the documenting comment in frwr_ops.c (Kamal Heib) [1786601] - [net] svcrdma: Use llist for managing cache of recv_ctxts (Kamal Heib) [1786601] - [net] svcrdma: Remove svc_rdma_wq (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Rate limit admin queue error prints (Kamal Heib) [1786601] - [rdma] RDMA/core: Introduce ratelimited ibdev printk functions (Kamal Heib) [1786601] - [net] rdma: Enable ib_alloc_cq to spread work over a device's comp_vectors (Kamal Heib) [1786601] - [infiniband] RDMA/core: fix spelling mistake "Nelink" -> "Netlink" (Kamal Heib) [1786601] - [infiniband] net: Use skb_frag_off accessors (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Expose device statistics (Kamal Heib) [1786601] - [infiniband] RDMA/core: Support netlink commands in non init_net net namespaces (Kamal Heib) [1786601] - [rdma] RDMA: Make most headers compile stand alone (Kamal Heib) [1786601] - [infiniband] RDMA/core: Annotate destroy of mutex to ensure that it is released as unlocked (Kamal Heib) [1786601] - [infiniband] net: Use skb accessors in network drivers (Kamal Heib) [1786601] - [documentation] docs: infiniband: add it to the driver-api bookset (Kamal Heib) [1786601] - [infiniband] IB/hfi1: use the new FOLL_LONGTERM flag to get_user_pages_fast() (Kamal Heib) [1786601] - [documentation] Documentation/infiniband: update from locked to pinned_vm (Kamal Heib) [1786601] - [infiniband] opa_vnic: fix check on record->event, incorrect operator used (Kamal Heib) [1786601] - [infiniband] opa_vnic: Convert vport_idr to XArray (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure ucast_dlid access doesnt exceed bounds (Kamal Heib) [1786601] - [infiniband] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Kamal Heib) [1786601] - [infiniband] treewide: Add SPDX license identifier - Kbuild (Kamal Heib) [1786601] - [infiniband] mm/gup: add make_dirty arg to put_user_pages_dirty_lock() (Kamal Heib) [1786601] - [netdrv] ibmvnic: Do not process device remove during device reset (Steve Best) [1813223] - [bluetooth] Revert "Bluetooth: btusb: driver to enable the usb-wakeup feature" (Gopal Tiwari) [1811534] - [tty] serial: 8250_pci: Make PCI class test non fatal (Prarit Bhargava) [1812742] - [powercap] powercap/intel_rapl: add support for ICX-D (Steve Best) [1485067] - [char] drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds write (Tony Camuso) [1812922] - [char] ipmi:ssif: Handle a possible NULL pointer reference (Tony Camuso) [1812922] - [char] drivers: ipmi: Modify max length of IPMB packet (Tony Camuso) [1812922] - [char] drivers: ipmi: Support raw i2c packet in IPMB (Tony Camuso) [1812922] - [char] ipmi: fix ipmb_poll()'s return type (Tony Camuso) [1812922] - [char] char: Fix Kconfig indentation, continued (Tony Camuso) [1812922] - [char] char: Fix Kconfig indentation (Tony Camuso) [1812922] - [char] ipmi: kill off 'timespec' usage again (Tony Camuso) [1812922] - [char] drivers: ipmi: Support for both IPMB Req and Resp (Tony Camuso) [1812922] - [char] ipmi: Fix memory leak in __ipmi_bmc_register (Tony Camuso) [1812922] - [char] ipmi: bt-bmc: use devm_platform_ioremap_resource() to simplify code (Tony Camuso) [1812922] - [char] ipmi: use *ph to print small buffer (Tony Camuso) [1812922] - [char] ipmi: Don't leave holes in the I2C address list in the ssif driver (Tony Camuso) [1812922] - [char] ipmi: fix return value of ipmi_set_my_LUN (Tony Camuso) [1812922] - [char] ipmi: Convert pr_xxx() to dev_xxx() in the BT code (Tony Camuso) [1812922] - [char] ipmi:dmi: Ignore IPMI SMBIOS entries with a zero base address (Tony Camuso) [1812922] - [char] ipmi_si: fix potential integer overflow on large shift (Tony Camuso) [1812922] - [char] ipmi_si_pci: fix NULL device in ipmi_si error message (Tony Camuso) [1812922] - [char] ipmi: Convert printk(KERN_ to pr_( (Tony Camuso) [1812922] - [char] pci:ipmi: Move IPMI PCI class id defines to pci_ids.h (Tony Camuso) [1812922] - [char] ipmi:powernv: Convert ipmi_smi_t to struct ipmi_smi (Tony Camuso) [1812922] - [fs] NFSv4 fix acl retrieval over krb5i/krb5p mounts (Steve Dickson) [1787627]- [fs] gfs2: Additional information when gfs2_ail1_flush withdraws (Robert S Peterson) [1752976] - [fs] gfs2: Fix lru_count going negative (Robert S Peterson) [1752976] - [fs] gfs2: allow journal replay to hold sd_log_flush_lock (Robert S Peterson) [1752976] - [fs] gfs2: don't allow releasepage to free bd still used for revokes (Robert S Peterson) [1752976] - [fs] gfs2: clean up iopen glock mess in gfs2_create_inode (Robert S Peterson) [1752976] - [fs] gfs2: flesh out delayed withdraw for gfs2_log_flush (Robert S Peterson) [1752976] - [fs] gfs2: Fix incorrect variable name (Robert S Peterson) [1752976] - [fs] gfs2: Do proper error checking for go_sync family of glops functions (Robert S Peterson) [1752976] - [fs] gfs2: Don't demote a glock until its revokes are written (Robert S Peterson) [1752976] - [fs] gfs2: drain the ail2 list after io errors (Robert S Peterson) [1752976] - [fs] gfs2: Withdraw in gfs2_ail1_flush if write_cache_pages fails (Robert S Peterson) [1752976] - [fs] gfs2: Do log_flush in gfs2_ail_empty_gl even if ail list is empty (Robert S Peterson) [1752976] - [fs] gfs2: Check for log write errors before telling dlm to unlock (Robert S Peterson) [1752976] - [fs] gfs2: Prepare to withdraw as soon as an IO error occurs in log write (Robert S Peterson) [1752976] - [fs] gfs2: Issue revokes more intelligently (Robert S Peterson) [1752976] - [fs] gfs2: Add verbose option to check_journal_clean (Robert S Peterson) [1752976] - [fs] gfs2: fix infinite loop when checking ail item count before go_inval (Robert S Peterson) [1752976] - [fs] gfs2: Force withdraw to replay journals and wait for it to finish (Robert S Peterson) [1752976] - [fs] gfs2: Allow some glocks to be used during withdraw (Robert S Peterson) [1752976] - [fs] gfs2: move check_journal_clean to util.c for future use (Robert S Peterson) [1752976] - [fs] gfs2: Ignore dlm recovery requests if gfs2 is withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: Only complain the first time an io error occurs in quota or log (Robert S Peterson) [1752976] - [fs] gfs2: log error reform (Robert S Peterson) [1752976] - [fs] gfs2: Rework how rgrp buffer_heads are managed (Robert S Peterson) [1752976] - [fs] gfs2: clear ail1 list when gfs2 withdraws (Robert S Peterson) [1752976] - [fs] gfs2: Introduce concept of a pending withdraw (Robert S Peterson) [1752976] - [fs] gfs2: Return bool from gfs2_assert functions (Robert S Peterson) [1752976] - [fs] gfs2: Turn gfs2_consist into void functions (Robert S Peterson) [1752976] - [fs] gfs2: Remove usused cluster_wide arguments of gfs2_consist functions (Robert S Peterson) [1752976] - [fs] gfs2: Report errors before withdraw (Robert S Peterson) [1752976] - [fs] gfs2: Split gfs2_lm_withdraw into two functions (Robert S Peterson) [1752976] - [fs] gfs2: Fix possible fs name overflows (Robert S Peterson) [1752976] - [fs] gfs2: Remove active journal side effect from gfs2_write_log_header (Robert S Peterson) [1752976] - [fs] gfs2: Don't loop forever in gfs2_freeze if withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: fix infinite loop in gfs2_ail1_flush on io error (Robert S Peterson) [1752976] - [fs] gfs2: Introduce function gfs2_withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: fix glock reference problem in gfs2_trans_add_unrevoke (Robert S Peterson) [1752976] - [fs] gfs2: make gfs2_log_shutdown static (Robert S Peterson) [1752976] - [fs] gfs2: replace more printk with calls to fs_info and friends (Robert S Peterson) [1752976] - [fs] gfs2: dump fsid when dumping glock problems (Robert S Peterson) [1752976] - [fs] gfs2: simplify gfs2_freeze by removing case (Robert S Peterson) [1752976] - [fs] gfs2: Rename SDF_SHUTDOWN to SDF_WITHDRAWN (Robert S Peterson) [1752976] - [fs] gfs2: Warn when a journal replay overwrites a rgrp with buffers (Robert S Peterson) [1752976] - [fs] gfs2: log which portion of the journal is replayed (Robert S Peterson) [1752976] - [fs] gfs2: kthread and remount improvements (Robert S Peterson) [1752976] - [fs] gfs2: Fix occasional glock use-after-free (Robert S Peterson) [1752976] - [fs] gfs2: Rename sd_log_le_{revoke,ordered} (Robert S Peterson) [1724769] - [watchdog] watchdog: make nowayout sysfs file writable (David Arcari) [1802742] - [watchdog] watchdog: prevent deferral of watchdogd wakeup on RT (David Arcari) [1802742] - [watchdog] watchdog: Fix the race between the release of watchdog_core_data and cdev (David Arcari) [1802742] - [watchdog] watchdog: convert remaining drivers to use SPDX license identifier (David Arcari) [1802742] - [watchdog] watchdog: make the device time out at open_deadline when open_timeout is used (David Arcari) [1802742] - [watchdog] watchdog: introduce CONFIG_WATCHDOG_OPEN_TIMEOUT (David Arcari) [1802742] - [watchdog] watchdog: introduce watchdog.open_timeout commandline parameter (David Arcari) [1802742] - [watchdog] watchdog: let core print error message when registering device fails (David Arcari) [1802742] - [watchdog] watchdog: make watchdog_deferred_registration_add() void (David Arcari) [1802742] - [watchdog] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1802742] - [watchdog] watchdog: add error messages when initializing timeout fails (David Arcari) [1802742] - [watchdog] watchdog: refactor watchdog_init_timeout (David Arcari) [1802742] - [watchdog] watchdog: core: fix null pointer dereference when releasing cdev (David Arcari) [1802742] - [x86] x86/ioapic: Prevent inconsistent state when moving an interrupt (Prarit Bhargava) [1810236] - [x86] x86/fpu: Don't cache access to fpu_fpregs_owner_ctx (Prarit Bhargava) [1810236] - [lib] lib/ubsan: don't serialize UBSAN report (Prarit Bhargava) [1810243] - [lib] ubsan, x86: Annotate and allow __ubsan_handle_shift_out_of_bounds() in uaccess regions (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix pwq ref leak in rescuer_thread() (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix missing kfree(rescuer) in destroy_workqueue() (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix spurious sanity check failures in destroy_workqueue() (Prarit Bhargava) [1810243] - [include] hrtimer: Add kernel doc annotation for HRTIMER_MODE_HARD (Prarit Bhargava) [1810243] - [kernel] genirq: Force interrupt threading on RT (Prarit Bhargava) [1810243] - [include] hrtimer: Introduce HARD expiry mode (Prarit Bhargava) [1810243] - [kernel] workqueue: Remove GPF argument from alloc_workqueue_attrs() (Prarit Bhargava) [1810243] - [kernel] workqueue: Make alloc/apply/free_workqueue_attrs() static (Prarit Bhargava) [1810243] - [tools] objtool: Add UACCESS validation (Prarit Bhargava) [1810243] - [tools] objtool: Handle function aliases (Prarit Bhargava) [1810243] - [lib] ubsan: build ubsan.c more conservatively (Prarit Bhargava) [1810243] - [lib] x86/uaccess, ubsan: Fix UBSAN vs. SMAP (Prarit Bhargava) [1810243] - [tools] objtool: Rewrite alt->skip_orig (Prarit Bhargava) [1810243] - [fs] dlm: Don't swamp the CPU with callbacks queued during recovery (Robert S Peterson) [1752976] - [nvme] nvmet: update AEN list and array at one place (Gopal Tiwari) [1781927] - [nvme] nvmet: Fix controller use after free (Gopal Tiwari) [1781927] - [nvme] nvmet: Fix error print message at nvmet_install_queue function (Gopal Tiwari) [1781927] - [nvme] nvme-pci: remove nvmeq->tags (Gopal Tiwari) [1781927] - [nvme] nvmet: fix dsm failure when payload does not match sgl descriptor (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: switch to use helpers (Gopal Tiwari) [1781927] - [nvme] nvmet: fix per feat data len for get_feature (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Fix read queue count (Gopal Tiwari) [1781927] - [nvme] nvme/pci Limit write queue sizes to possible cpus (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Fix write and poll queue types (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Remove last_cq_head (Gopal Tiwari) [1781927] - [nvme] nvme: Namepace identification descriptor list is optional (Gopal Tiwari) [1781927] - [nvme] Revert "nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T" (Gopal Tiwari) [1781927] - [nvme] nvme: else following return is not needed (Gopal Tiwari) [1781927] - [nvme] nvme: add error message on mismatching controller ids (Gopal Tiwari) [1781927] - [nvme] nvme_fc: add module to ops template to allow module references (Gopal Tiwari) [1781927] - [nvme] nvmet-loop: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: add quirk to avoid changing temperature threshold (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: provide temperature min and max values for each sensor (Gopal Tiwari) [1781927] - [nvme] nvme: Discard workaround for non-conformant devices (Gopal Tiwari) [1781927] - [nvme] nvme: Add hardware monitoring support (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: fix crash in nvme_mpath_clear_ctrl_paths (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: fix a segmentation fault during module unload (Gopal Tiwari) [1781927] - [nvme] nvmet: clean up command parsing a bit (Gopal Tiwari) [1781927] - [nvme] nvmet: fill discovery controller sn, fr and mn correctly (Gopal Tiwari) [1781927] - [nvme] nvmet: Open code nvmet_req_execute() (Gopal Tiwari) [1781927] - [nvme] nvmet: Remove the data_len field from the nvmet_req struct (Gopal Tiwari) [1781927] - [nvme] nvmet: add plugging for read/write when ns is bdev (Gopal Tiwari) [1781927] - [nvme] nvmet: stop using bio_set_op_attrs (Gopal Tiwari) [1781927] - [nvme] nvmet: Introduce nvmet_dsm_len() helper (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Spelling s/resdicovered/rediscovered/ (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Don't check data_len in nvmet_tcp_map_data() (Gopal Tiwari) [1781927] - [nvme] nvme: Introduce nvme_lba_to_sect() (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Don't set the request's data_len (Gopal Tiwari) [1781927] - [nvme] nvmet: Cleanup discovery execute handlers (Gopal Tiwari) [1781927] - [nvme] nvmet-rdma: add unlikely check at nvmet_rdma_map_sgl_keyed (Gopal Tiwari) [1781927] - [nvme] nvme: Cleanup and rename nvme_block_nr() (Gopal Tiwari) [1781927] - [nvme] nvme: introduce "Command Aborted By host" status code (Gopal Tiwari) [1781927] - [nvme] nvmet: Introduce common execute function for get_log_page and identify (Gopal Tiwari) [1781927] - [nvme] nvme: move common call to nvme_cleanup_cmd to core layer (Gopal Tiwari) [1781927] - [nvme] nvmet: add unlikely check at nvmet_req_alloc_sgl (Gopal Tiwari) [1781927] - [nvme] nvme-fc: ensure association_id is cleared regardless of a Disconnect LS (Gopal Tiwari) [1781927] - [nvme] nvme-fc: clarify error messages (Gopal Tiwari) [1781927] - [nvme] nvme: introduce nvme_is_aen_req function (Gopal Tiwari) [1781927] - [nvme] nvme-fc and nvmet-fc: sync with FC-NVME-2 header changes (Gopal Tiwari) [1781927] - [nvme] nvmet: use bio_io_error instead of duplicating it (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Set new cmd set indicator in nvme-fc cmnd iu (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: remove unused groups_only mode in ana log (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: fix possible io hang after ctrl reconnect (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fix possible leakage during error flow (Gopal Tiwari) [1781927] - [nvme] nvmet-loop: fix possible leakage during error flow (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Initialize sk->sk_ll_usec only with NET_RX_BUSY_POLL (Gopal Tiwari) [1781927] - [nvme] nvme: Wait for reset state when required (Gopal Tiwari) [1781927] - [nvme] nvme: Prevent resets during paused controller state (Gopal Tiwari) [1781927] - [nvme] nvme: Restart request timers in resetting state (Gopal Tiwari) [1781927] - [nvme] nvme: Remove ADMIN_ONLY state (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Free tagset if no IO queues (Gopal Tiwari) [1781927] - [nvme] nvme: fix possible deadlock when nvme_update_formats fails (Gopal Tiwari) [1781927] - [include] nvme-fc: Sync nvme-fc header to FC-NVME-2 (Gopal Tiwari) [1781927] - [nvme] nvme: retain split access workaround for capability reads (Gopal Tiwari) [1781927] - [nvme] nvme: Move ctrl sqsize to generic space (Gopal Tiwari) [1781927] - [nvme] nvme: Add ctrl attributes for queue_count and sqsize (Gopal Tiwari) [1781927] - [nvme] nvme: allow 64-bit results in passthru commands (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Fix max_hw_sectors calculation (Gopal Tiwari) [1781927] - [nvme] Added QUIRKs for ADATA XPG SX8200 Pro 512GB (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fix wrong stop condition in io_work (Gopal Tiwari) [1781927] - [nvme] nvme: fix an error code in nvme_init_subsystem() (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: remove superflous check on request sgl (Gopal Tiwari) [1781927] - [nvme] nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Fix a race in controller removal (Gopal Tiwari) [1781927] - [nvme] nvmet: change ppl to lpp (Gopal Tiwari) [1781927] - [nvme] nvme: add uevent variables for controller devices (Gopal Tiwari) [1781927] - [nvme] nvme: Remove redundant assignment of cq vector (Gopal Tiwari) [1781927] - [nvme] nvme: enable aen regardless of the presence of I/O queues (Gopal Tiwari) [1781927] - [nvme] nvme: send discovery log page change events to userspace (Gopal Tiwari) [1781927] - [nvme] nvme: Assign subsys instance from first ctrl (Gopal Tiwari) [1781927] - [nvme] nvmet: fix a wrong error status returned in error log page (Gopal Tiwari) [1781927] - [nvme] nvme: tcp: remove redundant assignment to variable ret (Gopal Tiwari) [1781927] - [nvme] nvme-fabrics: allow discovery subsystems accept a kato (Gopal Tiwari) [1781927] - [nvme] nvmet: Use PTR_ERR_OR_ZERO() in nvmet_init_discovery() (Gopal Tiwari) [1781927] - [nvme] nvme: Treat discovery subsystems as unique subsystems (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Fail transport errors with NVME_SC_HOST_PATH (Gopal Tiwari) [1781927] - [nvme] nvme: make nvme_report_ns_ids propagate error back (Gopal Tiwari) [1781927] - [nvme] nvme: pass status to nvme_error_status (Gopal Tiwari) [1781927] - [nvme] nvme: fix ns removal hang when failing to revalidate due to a transient error (Gopal Tiwari) [1781927] - [nvme] nvme: make nvme_identify_ns propagate errors back (Gopal Tiwari) [1781927] - [nvme] nvme: fail cancelled commands with NVME_SC_HOST_PATH_ERROR (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fail command with NVME_SC_HOST_PATH_ERROR send failed (Gopal Tiwari) [1781927] - [nvme] nvme: include admin_q sync with nvme_sync_queues (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Use rq_dma_dir macro (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Use rq_dma_dir macro (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Add TOS for rdma transport (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Support shared tags across queues for Apple 2018 controllers (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Add support for Apple 2018+ models (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Add support for variable IO SQ element size (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Add TOS for tcp transport (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Use struct nvme_ctrl directly (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Pass the queue to SQ_SIZE/CQ_SIZE macros (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Add TOS for tcp transport (Gopal Tiwari) [1781927] - [nvme] nvme: trace bio completion (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: fix possible NULL deref (Gopal Tiwari) [1781927] - [nvme] nvme: tcp: selects CRYPTO_CRC32C for nvme-tcp (Gopal Tiwari) [1781927] - [nvme] nvme-fabrics: Add type of service (TOS) configuration (Gopal Tiwari) [1781927] - [nvme] nvmet: trace: parse Get LBA Status command in detail (Gopal Tiwari) [1781927] - [nvme] nvmet: fix data units read and written counters in SMART log (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: fix possible memory leak (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: support simple polling (Gopal Tiwari) [1781927] - [nvme] nvme: trace: parse Get LBA Status command in detail (Gopal Tiwari) [1781927] - [include] nvme: add Get LBA Status command opcode (Gopal Tiwari) [1781927] - [nvme] nvme: move sqsize setting to the core (Gopal Tiwari) [1781927] - [nvme] nvme: don't pass cap to nvme_disable_ctrl (Gopal Tiwari) [1781927] - [nvme] nvme-pci: set ctrl sqsize to the device q_depth (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: cleanup nvme_tcp_recv_pdu (Gopal Tiwari) [1781927] - [nvme] nvme: have nvme_init_identify set ctrl->cap (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Use protocol specific operations while reading socket (Gopal Tiwari) [1781927] - [nvme] nvme: Fix cntlid validation when not using NVMEoF (Gopal Tiwari) [1781927] - [infiniband] PCI/P2PDMA: Introduce pci_p2pdma_unmap_sg() (Gopal Tiwari) [1781927] - [nvme] PCI/P2PDMA: Add attrs argument to pci_p2pdma_map_sg() (Gopal Tiwari) [1781927] - [lightnvm] lightnvm: remove nvm_submit_io_sync_fn (Gopal Tiwari) [1781927] - [powerpc] xive: Discard ESB load value when interrupt is invalid (David Gibson) [1744408] - [documentation] kvm: ppc: book3s hv: xive: Allow userspace to set the # of VPs (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Make VP block size configurable (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Set kvm->arch.xive when VPs are allocated (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Compute the VP id in a common helper (David Gibson) [1744408] - [powerpc] xive: Implement get_irqchip_state method for XIVE to fix shutdown race (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Free escalation interrupts before disabling the VP (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Ensure VP isn't already in use (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: Fix regression on big endian hosts (David Gibson) [1725763] - [powerpc] 64s: Fix misleading SPR and timebase information (David Gibson) [1725763] - [powerpc] powernv: Add ultravisor message log interface (David Gibson) [1725763] - [powerpc] powernv/opal-msglog: Refactor memcons code (David Gibson) [1725763] - [powerpc] kvm: Use UV_RETURN ucall to return to ultravisor (David Gibson) [1725763] - [powerpc] powernv: Access LDBAR only if ultravisor disabled (David Gibson) [1725763] - [powerpc] powernv/idle: Fix restore of SPRN_LDBAR for POWER9 stop state (David Gibson) [1725763] - [powerpc] powernv/idle: Restore AMR/UAMOR/AMOR/IAMR after idle (David Gibson) [1725763] - [powerpc] 64s: Reimplement book3s idle code in C (David Gibson) [1725763] - [powerpc] revert "powerpc/powernv/idle: Restore IAMR after idle" (David Gibson) [1725763] - [powerpc] revert "powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle" (David Gibson) [1725763] - [powerpc] mm: Write to PTCR only if ultravisor disabled (David Gibson) [1725763] - [powerpc] mm: Use UV_WRITE_PATE ucall to register a PATE (David Gibson) [1725763] - [powerpc] powernv: Introduce FW_FEATURE_ULTRAVISOR (David Gibson) [1725763] - [powerpc] kernel: Add ucall_norets() ultravisor call handler (David Gibson) [1725763] - [documentation] documentation/powerpc: Ultravisor API (David Gibson) [1725763] - [documentation] documentation/powerpc: Add ELF note documentation (David Gibson) [1725763] - [powerpc] Add PowerPC Capabilities ELF note (David Gibson) [1725763] - [netdrv] mlx5e: allow TSO on VXLAN over VLAN topologies (Davide Caratti) [1780643] - [net] bluetooth: Add debug setting for changing minimum encryption key size (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: Let hidp_send_message return number of queued bytes (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: search for destination address in all peers (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: always check destination address (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: check neighbour table for SLAAC (Gopal Tiwari) [1764976] - [net] bluetooth: Add SMP workaround Microsoft Surface Precision Mouse bug (Gopal Tiwari) [1764976] - [net] bluetooth: Use controller sets when available (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Check bearer type on __l2cap_global_chan_by_addr (Gopal Tiwari) [1764976] - [net] bluetooth: validate BLE connection interval updates (Gopal Tiwari) [1764976] - [net] bluetooth: Add support for LE ping feature (Gopal Tiwari) [1764976] - [net] bluetooth: Check state in l2cap_disconnect_rsp (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: NUL terminate a string in the compat ioctl (Gopal Tiwari) [1764976] - [net] bluetooth: Ignore CC events not matching the last HCI command (Gopal Tiwari) [1764976] - [net] bluetooth: Align minimum encryption key size for LE and BR/EDR connections (Gopal Tiwari) [1764976] - [net] bluetooth: hci_core: Don't stop BT if the BD address missing in dts (Gopal Tiwari) [1764976] - [net] bluetooth: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: Fix incorrect pointer arithmatic in ext_adv_report_evt (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: fix buffer overflow (Gopal Tiwari) [1764976] - [net] bluetooth: Add return check for L2CAP security level set (Gopal Tiwari) [1764976] - [net] bluetooth: Fix not initializing L2CAP tx_credits (Gopal Tiwari) [1764976] - [net] bluetooth: Check address length before reading address field (Gopal Tiwari) [1764976] - [net] bluetooth: Add quirk for reading BD_ADDR from fwnode property (Gopal Tiwari) [1764976] - [net] bluetooth: mgmt: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: a2mp: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: hci_event: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: Fix decrementing reference count twice in releasing socket (Gopal Tiwari) [1764976] - [net] bluetooth: make hw_err static, reduces object code size (Gopal Tiwari) [1764976] - [net] bluetooth: Allow driver specific cmd timeout handling (Gopal Tiwari) [1764976] - [net] bluetooth: Mark expected switch fall-throughs (Gopal Tiwari) [1764976] - [net] bluetooth: Check L2CAP option sizes returned from l2cap_get_conf_opt (Gopal Tiwari) [1764976] - [net] Bluetooth: Fix locking in bt_accept_enqueue() for BH context (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: Fix debugfs_simple_attr.cocci warnings (Gopal Tiwari) [1764976] - [net] bluetooth: Fix unnecessary error message for HCI request completion (Gopal Tiwari) [1764976] - [net] bluetooth: clean an indentation issue, remove extraneous space (Gopal Tiwari) [1764976] - [net] bluetooth: Change to use DEFINE_SHOW_ATTRIBUTE macro (Gopal Tiwari) [1764976] - [net] bluetooth: Remove redundant check on status (Gopal Tiwari) [1764976] - [net] bluetooth: Errata Service Release 8, Erratum 3253 (Gopal Tiwari) [1764976] - [net] bluetooth: Use separate L2CAP LE credit based connection result values (Gopal Tiwari) [1764976] - [net] rfcomm: get rid of mentioning TIOC[SG]SERIAL (Gopal Tiwari) [1764976] - [net] bluetooth: Fix debugfs NULL pointer dereference (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Detect if remote is not able to use the whole MPS (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Derive rx credits from MTU and MPS (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Derive MPS from connection MTU (Gopal Tiwari) [1764976] - [net] bluetooth: Add definitions and track LE resolve list modification (Gopal Tiwari) [1764976] - [net] bluetooth: Remove unnecessary smp_mb__{before, after}_atomic (Gopal Tiwari) [1764976] - [net] bluetooth: smp: fix crash in unpairing (Gopal Tiwari) [1764976] - [net] bluetooth: smp: Fix trying to use non-existent local OOB data (Gopal Tiwari) [1764976] - [net] bluetooth: Use correct tfm to generate OOB data (Gopal Tiwari) [1764976] - [net] hidp: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] hidp: constify hidp_connection_add() (Gopal Tiwari) [1764976] - [net] cmtp: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] bnep: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] bluetooth: Add definitions for LE set address resolution (Gopal Tiwari) [1764976] - [net] bluetooth: remove redundant variables 'adv_set' and 'cp' (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: Fix handling of strncpy for hid->name information (Gopal Tiwari) [1764976] - [net] bluetooth: Add new quirk for non-persistent setup settings (Gopal Tiwari) [1764976] - [net] bluetooth: Handle ADv set terminated event (Gopal Tiwari) [1764976] - [net] bluetooth: Implement secondary advertising on different PHYs (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Set ADV set random address (Gopal Tiwari) [1764976] - [net] bluetooth: Implement disable and removal of adv instance (Gopal Tiwari) [1764976] - [net] bluetooth: Use ext adv for directed adv (Gopal Tiwari) [1764976] - [net] bluetooth: Implement PHY changed event (Gopal Tiwari) [1764976] - [net] bluetooth: Handle extended ADV PDU types (Gopal Tiwari) [1764976] - [net] bluetooth: Use Set ext adv/scan rsp data if controller supports (Gopal Tiwari) [1764976] - [net] bluetooth: Impmlement extended adv enable (Gopal Tiwari) [1764976] - [net] bluetooth: Define PHY flags in hdev and set 1M as default (Gopal Tiwari) [1764976] - [net] bluetooth: Read no of adv sets during init (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Get PHY Configuration mgmt command (Gopal Tiwari) [1764976] - [net] bluetooth: Use selected PHYs in extended connect (Gopal Tiwari) [1764976] - [net] bluetooth: Set Scan PHYs based on selected PHYs by user (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Set PHY Confguration command (Gopal Tiwari) [1764976] - [net] bluetooth: Add defines for BREDR pkt_type (Gopal Tiwari) [1764976] - [net] bluetooth: Use lock_sock_nested in bt_accept_enqueue (Gopal Tiwari) [1764976] - [net] bluetooth: avoid killing an already killed socket (Gopal Tiwari) [1764976] - [net] bluetooth: Use extended LE Connection if supported (Gopal Tiwari) [1764976] - [net] bluetooth: Introduce helpers for le conn status and complete (Gopal Tiwari) [1764976] - [net] bluetooth: Process extended ADV report event (Gopal Tiwari) [1764976] - [net] bluetooth: Use extended scanning if controller supports (Gopal Tiwari) [1764976] - [net] bluetooth: Introduce helpers for LE set scan start and complete (Gopal Tiwari) [1764976] - [net] bluetooth: Store Resolv list size (Gopal Tiwari) [1764976] - [net] bluetooth: Add HCI command for clear Resolv list (Gopal Tiwari) [1764976] - [leds] triggers: let struct (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Skip 1 error print in device_want_to_sleep() (Gopal Tiwari) [1764976] - [bluetooth] btqca: Reset download type to default (Gopal Tiwari) [1764976] - [bluetooth] btqca: release_firmware after qca_inject_cmd_complete_event (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Send VS pre shutdown command (Gopal Tiwari) [1764976] - [bluetooth] btqca: Use correct byte format for opcode of injected command (Gopal Tiwari) [1764976] - [bluetooth] btqca: Add a short delay before downloading the NVM (Gopal Tiwari) [1764976] - [bluetooth] btusb: Fix error return code in btusb_mtk_setup_firmware() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Use kfree_skb() instead of kfree() (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add protocol support for MediaTek MT7663U USB devices (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add protocol support for MediaTek MT7668U USB devices (Gopal Tiwari) [1764976] - [bluetooth] Add new 13d3:3491 QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] Add new 13d3:3501 QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] hci_bcsp: Fix memory leak in rx_skb (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for RTL8723DU (Gopal Tiwari) [1764976] - [bluetooth] btmtkuart: add an implementation for clock osc property (Gopal Tiwari) [1764976] - [bluetooth] btmtkuart: add an implementation for boot-gpios property (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4359C0 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Load customized NVM based on the device property (Gopal Tiwari) [1764976] - [bluetooth] hci_mrvl: Add serdev support (Gopal Tiwari) [1764976] - [bluetooth] hci_mrvl: Wait for final ack before switching baudrate (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Add function to wait for characters to be sent (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: wcn3990: Drop baudrate change vendor event (Gopal Tiwari) [1764976] - [bluetooth] btqca: inject command complete event during fw download (Gopal Tiwari) [1764976] - [bluetooth] Cleanup formatting and coding style (Gopal Tiwari) [1764976] - [bluetooth] btrtl: HCI reset on close for Realtek BT chip (Gopal Tiwari) [1764976] - [bluetooth] hci_ll: Refactor download_firmware (Gopal Tiwari) [1764976] - [bluetooth] hci_ll: set operational frequency earlier (Gopal Tiwari) [1764976] - [bluetooth] btsdio: Do not bind to non-removable BCM4356 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Rename STATE_ to QCA_ (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM2076B1 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Added support for WCN3998 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Fix crash with non-serdev devices (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Give enough time to ROME controller to bootup (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Fix empty regulator supplies for Intel Macs (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM2076B1 UART Bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM43341B (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: add support for SD8987 chipset (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Drop newline with bt_dev logging macros (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Fix hdev->stat.byte_rx accumulation (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Add runtime PM support to SDIO based Bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Add a bit definition for CHLPCR (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Fixed incorrect type in assignment (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: fix spelling mistake "sliped" -> "slipped" (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: fix uninitialized symbol errors in btmtksdio_rx_packet (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Use module_sdio_driver helper (Gopal Tiwari) [1764976] - [bluetooth] mediatek: add support for MediaTek MT7663S and MT7668S SDIO devices (Gopal Tiwari) [1764976] - [bluetooth] btqca: Fix misspelling of 'baudrate' (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add helper function to get the chip family (Gopal Tiwari) [1764976] - [bluetooth] btusb: request wake pin with NOAUTOEN (Gopal Tiwari) [1764976] - [bluetooth] mediatek: add support for MediaTek MT7663U and MT7668U UART devices (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Reduce delay after sending baudrate request for WCN3990 (Gopal Tiwari) [1764976] - [bluetooth] btusb: add QCA6174A compatible properties (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Use msleep() instead of open coding it (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add delay after power-off pulse (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Move boot delay to qca_send_power_pulse() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Pass boolean 'on/off' to qca_send_power_pulse() (Gopal Tiwari) [1764976] - [bluetooth] btqcomsmd: use HCI_QUIRK_USE_BDADDR_PROPERTY (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Set HCI_QUIRK_USE_BDADDR_PROPERTY for wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in hci_uart_set_proto() (Gopal Tiwari) [1764976] - [bluetooth] mediatek: update the common setup between MT7622 and other devices (Gopal Tiwari) [1764976] - [bluetooth] mediatek: pass a pointer to mtk_hci_wmt_sync (Gopal Tiwari) [1764976] - [bluetooth] mediatek: fix up an error path to restore bdev->tx_state (Gopal Tiwari) [1764976] - [bluetooth] mediatek: trivial typo fix (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Initialize hci_dev before open() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Disable IBS state machine and flush Tx buffer (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Deassert RTS while baudrate change command (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: use wait_until_sent() for power pulses (Gopal Tiwari) [1764976] - [bluetooth] remove redundant zero check on count (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add shutdown routine for BTUSB_INTEL_NEW devices (Gopal Tiwari) [1764976] - [bluetooth] btusb: btusb_intel_cmd_timeout: use sleeping functions (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Restore old logic to assume firmware is already loaded (Gopal Tiwari) [1764976] - [bluetooth] btusb: Use the cmd_timeout method to reset the Intel BT chip (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: add support for sd8977 chipset (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: Drop unused GPIO includes (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: lower log level of informational message (Gopal Tiwari) [1764976] - [bluetooth] hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: improve printk messages (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add helper to set device address (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4329B1 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Handle specific unknown packets after firmware loading (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Turn off RTL8723BS on suspend, reprobe on resume (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add suspend / resume ops (Gopal Tiwari) [1764976] - [bluetooth] hci_intel: clean an indentation issue, remove extraneous spaces (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Remove setting of HCI_QUIRK_RESET_ON_CLOSE (Gopal Tiwari) [1764976] - [bluetooth] Remove unnecessary smp_mb__after_atomic() barriers (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add BCM20702A1 variant (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Wait for device to come out of reset after power on (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add support for regulator supplies (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add compatible string for BCM4330 (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM43430A0 (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add support for LPO clock (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Use "txco" and "extclk" to get clock reference (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Simplify clk_get error handling (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Handle deferred probing for the clock supply (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add support for controller debug logs (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add support for 0cf3:535b QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] btsdio: Do not bind to non-removable BCM43430 (Gopal Tiwari) [1764976] - [bluetooth] ath3k: add more information to error message (Gopal Tiwari) [1764976] - [bluetooth] bt3c_cs: Fix obsolete function (Gopal Tiwari) [1764976] - [bluetooth] btrsi: fix bt tx timeout issue (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4335C0 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for RTL8822C with USB interface (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Fixed error space required before open paranethesis (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add poweroff support during hci down for wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add quirk for BTUSB_INTEL_NEW (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Make array extension_sig static, shrinks object size (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Remove serdev_device_open/close function calls (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Remove hdev dereference in qca_close() (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: clear HCI_UART_PROTO_READY to avoid closing proto races (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Add protocol check in hci_uart_dequeue() (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Free rw_semaphore on close (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Fix memory leak (Gopal Tiwari) [1764976] - [bluetooth] Make BT_HCIUART_RTL configuration option depend on ACPI (Gopal Tiwari) [1764976] - [bluetooth] mediatek: pass correct size to h4_recv_buf() (Gopal Tiwari) [1764976] - [bluetooth] Introduce BT_HCIUART_RTL configuration option (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Add protocol support for MediaTek serial devices (Gopal Tiwari) [1764976] - [bluetooth] btqca: Introduce HCI_EV_VENDOR and use it (Gopal Tiwari) [1764976] - [bluetooth] h5: Fix missing dependency on BT_HCIUART_SERDEV (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add support for Qualcomm Bluetooth chip wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Enable 3.2 Mbps operating speed (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add wrapper functions for setting UART speed (Gopal Tiwari) [1764976] - [bluetooth] btqca: Add wcn3990 firmware download support (Gopal Tiwari) [1764976] - [bluetooth] btqca: Redefine qca_uart_setup() to generic function (Gopal Tiwari) [1764976] - [bluetooth] btqca: Rename ROME specific functions to generic functions (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for enable and device-wake GPIOs (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for the RTL8723BS (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add vendor setup, open, and close callbacks (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for serdev enumerated devices (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add support for retrieving the UART settings (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Use rtl_dev_err and rtl_dev_info (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for a config filename postfix (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add support for the RTL8723BS and RTL8723DS chips (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add MODULE_FIRMWARE declarations (Gopal Tiwari) [1764976] - [bluetooth] btrtl: split the device initialization into smaller parts (Gopal Tiwari) [1764976] - [bluetooth] btusb: Release RF resource on BT shutdown (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Replace GFP_ATOMIC with GFP_KERNEL (Gopal Tiwari) [1764976] - [bluetooth] hci_intel: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete() (Gopal Tiwari) [1764976] - [bluetooth] btusb: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete() (Gopal Tiwari) [1764976] - [bluetooth] bfusb: Replace GFP_ATOMIC with GFP_KERNEL in bfusb_send_frame() (Gopal Tiwari) [1764976] - [bluetooth] bluecard_cs: Replace GFP_ATOMIC with GFP_KERNEL in bluecard_hci_set_baud_rate() (Gopal Tiwari) [1764976] - [bluetooth] bpa10x: Replace GFP_ATOMIC with GFP_KERNEL in bpa10x_send_frame() (Gopal Tiwari) [1764976] - [bluetooth] btmrvl_sdio: Replace GFP_ATOMIC with GFP_KERNEL in btmrvl_sdio_card_to_host() (Gopal Tiwari) [1764976] - [bluetooth] btusb: use irqsave() in URB's complete callback (Gopal Tiwari) [1764976] - [bluetooth] Add a new Realtek 8723DE ID 0bda:b009 (Gopal Tiwari) [1764976]- Revert "[redhat] switch secureboot kernel image signing to release keys" (Frantisek Hrbata) - [powerpc] powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable (David Hildenbrand) [1812874] - [x86] kvm/svm: PKU not currently supported (Wei Huang) [1789159] - [x86] Remove the unsupported check for Cooper Lake (David Arcari) [1813921]- [netdrv] net/mlx5e: Show/set Rx network flow classification rules on ul rep (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Init ethtool steering for representors (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Show/set Rx flow indir table and RSS hash key on ul rep (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Introduce root ft concept for representors netdevs (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5: E-Switch, Use vport metadata matching only when mandatory (Alaa Hleihel) [1795156] - [nvme] nvme: log additional message for controller status (David Milburn) [1752952]- [powerpc] powerpc: fix hardware PMU exception bug on PowerVM compatibility mode systems (Desnes Augusto Nunes do Rosario) [1755221] - [mm] powerpc/book3s64/radix: Remove WARN_ON in destroy_context() (Steve Best) [1812821] - [kernel] rcutorture: Upper case solves the case of the vanishing NULL pointer (Waiman Long) [1810247] - [tools] torture: Suppress propagating trace_printk() warning (Waiman Long) [1810247] - [kernel] rcutorture: Dump trace buffer for callback pipe drain failures (Waiman Long) [1810247] - [tools] torture: Add --trust-make to suppress "make clean" (Waiman Long) [1810247] - [tools] torture: Make --cpus override idleness calculations (Waiman Long) [1810247] - [tools] torture: Run kernel build in source directory (Waiman Long) [1810247] - [tools] torture: Add function graph-tracing cheat sheet (Waiman Long) [1810247] - [tools] torture: Capture qemu output (Waiman Long) [1810247] - [tools] rcutorture: Tweak kvm options (Waiman Long) [1810247] - [kernel] rcutorture: Add trivial RCU implementation (Waiman Long) [1810247] - [kernel] rcutorture: Halt forward-progress checks at end of run (Waiman Long) [1810247] - [kernel] rcutorture: Give the scheduler a chance on PREEMPT && NO_HZ_FULL kernels (Waiman Long) [1810247] - [tools] rcutorture: Exempt TREE01 from forward-progress testing (Waiman Long) [1810247] - [kernel] rcutorture: Exempt tasks RCU from timely draining of grace periods (Waiman Long) [1810247] - [tools] rcutorture: Provide rudimentary Makefile (Waiman Long) [1810247] - [tools] torture: Make kvm-find-errors.sh and kvm-recheck.sh provide exit status (Waiman Long) [1810247] - [kernel] torture: Allow inter-stutter interval to be specified (Waiman Long) [1810247] - [kernel] rcutorture: Fix stutter_wait() return value and freelist checks (Waiman Long) [1810247] - [kernel] rcutorture: Add cond_resched() to forward-progress free-up loop (Waiman Long) [1810247] - [tools] rcutorture: Add cpu0 to the set of CPUs to add jitter (Waiman Long) [1810247] - [tools] rcutorture: Select from only online CPUs (Waiman Long) [1810247] - [kernel] rcu/sync: Simplify the state machine (Waiman Long) [1810247] - [kernel] locking/percpu-rwsem: Add DEFINE_PERCPU_RWSEM(), use it to initialize cgroup_threadgroup_rwsem (Waiman Long) [1810247] - [kernel] rcu/sync: Kill rcu_sync_type/gp_type (Waiman Long) [1810247] - [kernel] rcu: Make __call_srcu static (Waiman Long) [1810247] - [kernel] rcu: Upgrade sync_exp_work_done() to smp_mb() (Waiman Long) [1810247] - [documentation] doc: Remove ".vnet" from paulmck email addresses (Waiman Long) [1810247] - [kernel] rcu: Set a maximum limit for back-to-back callback invocation (Waiman Long) [1810247] - [kernel] rcu: Correctly unlock root node in rcu_check_gp_start_stall() (Waiman Long) [1810247] - [kernel] rcu: Dump specified number of blocked tasks (Waiman Long) [1810247] - [kernel] rcu: Remove unused rdp local from synchronize_rcu_expedited() (Waiman Long) [1810247] - [kernel] rcu: Rename rcu_data's ->deferred_qs to ->exp_deferred_qs (Waiman Long) [1810247] - [kernel] rcu: Add checks for dynticks counters in rcu_is_cpu_rrupt_from_idle() (Waiman Long) [1810247] - [kernel] rcu: Avoid self-IPI in sync_sched_exp_online_cleanup() (Waiman Long) [1810247] - [kernel] rcu: Avoid self-IPI in sync_rcu_exp_select_node_cpus() (Waiman Long) [1810247] - [kernel] rcu: Inline invoke_rcu_callbacks() into its sole remaining caller (Waiman Long) [1810247] - [kernel] rcu: Use irq_work to get scheduler's attention in clean context (Waiman Long) [1810247] - [kernel] rcu: Allow rcu_read_unlock_special() to raise_softirq() if in_irq() (Waiman Long) [1810247] - [kernel] rcu: Only do rcu_read_unlock_special() wakeups if expedited (Waiman Long) [1810247] - [kernel] rcu: Check for wakeup-safe conditions in rcu_read_unlock_special() (Waiman Long) [1810247] - [kernel] rcu: Enable elimination of Tree-RCU softirq processing (Waiman Long) [1810247] - [kernel] rcuperf: Fix cleanup path for invalid perf_type strings (Waiman Long) [1810247] - [kernel] rcutorture: Fix cleanup path for invalid torture_type strings (Waiman Long) [1810247] - [kernel] rcutorture: Fix expected forward progress duration in OOM notifier (Waiman Long) [1810247] - [kernel] rcutorture: Remove ->ext_irq_conflict field (Waiman Long) [1810247] - [kernel] rcutorture: Make rcutorture_extend_mask() comment match the code (Waiman Long) [1810247] - [tools] tools/.../rcutorture: Convert to SPDX license identifier (Waiman Long) [1810247] - [kernel] torture: Don't try to offline the last CPU (Waiman Long) [1810247] - [kernel] rcu: Fix nohz status in stall warning (Waiman Long) [1810247] - [kernel] rcu: Move forward-progress checkers into tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Move irq-disabled stall-warning checking to tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Organize functions in tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Move FAST_NO_HZ stall-warning code to tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Inline RCU stall-warning info helper functions (Waiman Long) [1810247] - [kernel] rcu: Move rcu_print_task_exp_stall() to tree_exp.h (Waiman Long) [1810247] - [kernel] rcu: Inline RCU task stall-warning helper functions (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of tree.c (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of tree_plugin.h (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of update.c (Waiman Long) [1810247] - [kernel] srcu: Remove cleanup_srcu_struct_quiesced() (Waiman Long) [1810247] - [kernel] srcu: Check for in-flight callbacks in _cleanup_srcu_struct() (Waiman Long) [1810247] - [kernel] rcu: Correct READ_ONCE()/WRITE_ONCE() for ->rcu_read_unlock_special (Waiman Long) [1810247] - [kernel] rcu: Fix typo in tree_exp.h comment (Waiman Long) [1810247] - [kernel] rcu: Eliminate redundant NULL-pointer check (Waiman Long) [1810247] - [kernel] rcu: Fix force_qs_rnp() header comment (Waiman Long) [1810247] - [kernel] rcu: Update jiffies_to_sched_qs and adjust_jiffies_till_sched_qs() comments (Waiman Long) [1810247] - [kernel] rcu: Do a single rhp->func read in rcu_head_after_call_rcu() (Waiman Long) [1810247] - [kernel] rcu: Default jiffies_to_sched_qs to jiffies_till_sched_qs (Waiman Long) [1810247] - [kernel] rcu: Fix self-wakeups for grace-period kthread (Waiman Long) [1810247] - [kernel] rcu: Report error for bad rcu_nocbs= parameter values (Waiman Long) [1810247] - [kernel] rcu: Allow rcu_nocbs= to specify all CPUs (Waiman Long) [1810247] - [kernel] rcu: Move common code out of if-else block (Waiman Long) [1810247] - [kernel] rcu: Set rcutree.kthread_prio sysfs access to read-only (Waiman Long) [1810247] - [kernel] rcu: Make exit_rcu() handle non-preempted RCU readers (Waiman Long) [1810247] - [kernel] rcu: rcu_qs -- Use raise_softirq_irqoff to not save irqs twice (Waiman Long) [1810247] - [kernel] rcu: Avoid unnecessary softirq when system is idle (Waiman Long) [1810247] - [kernel] rcu: Unconditionally expedite during suspend/hibernate (Waiman Long) [1810247] - [kernel] rcu/tree: Convert to SPDX license identifier (Waiman Long) [1810247] - [kernel] srcu: Remove srcu_queue_delayed_work_on() (Waiman Long) [1810247] - [kernel] sched/fair: Define sched_idle_cpu() only for SMP configurations (Phil Auld) [1419746] - [kernel] sched/fair: Load balance aggressively for SCHED_IDLE CPUs (Phil Auld) [1419746] - [kernel] sched/fair : Improve update_sd_pick_busiest for spare capacity case (Phil Auld) [1419746] - [kernel] sched/fair: Fix find_idlest_group() to handle CPU affinity (Phil Auld) [1419746] - [kernel] sched/cfs: fix spurious active migration (Phil Auld) [1419746] - [kernel] sched/fair: Add comments for group_type and balancing at SD_NUMA level (Phil Auld) [1419746] - [kernel] sched/fair: Fix rework of find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Rework find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Optimize find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Use load instead of runnable load in wakeup path (Phil Auld) [1419746] - [kernel] sched/fair: Use utilization to select misfit task (Phil Auld) [1419746] - [kernel] sched/fair: Spread out tasks evenly when not overloaded (Phil Auld) [1419746] - [kernel] sched/fair: Use load instead of runnable load in load_balance() (Phil Auld) [1419746] - [kernel] sched/fair: Use rq->nr_running when balancing load (Phil Auld) [1419746] - [kernel] sched/fair: Rework load_balance() (Phil Auld) [1419746] - [kernel] sched/fair: Remove meaningless imbalance calculation (Phil Auld) [1419746] - [kernel] sched/fair: Rename sg_lb_stats::sum_nr_running to sum_h_nr_running (Phil Auld) [1419746] - [kernel] sched/fair: Clean up asym packing (Phil Auld) [1419746] - [kernel] sched/fair: Fall back to sched-idle CPU if idle CPU isn't found (Phil Auld) [1419746] - [kernel] sched/fair: Start tracking SCHED_IDLE tasks count in cfs_rq (Phil Auld) [1419746] - [kernel] sched/core: Allow sched_setattr() to use the current policy (Phil Auld) [1419746] - [kernel] sched/fair: Introduce fits_capacity() (Phil Auld) [1419746] - [kernel] sched/core: Provide a pointer to the valid CPU mask (Phil Auld) [1419746] - [x86] x86/percpu: Optimize raw_cpu_xchg() (Phil Auld) [1419746] - [kernel] x86/percpu, sched/fair: Avoid local_clock() (Phil Auld) [1419746] - [x86] x86/percpu, x86/irq: Relax {set,get}_irq_regs() (Phil Auld) [1419746] - [x86] x86/percpu: Relax smp_processor_id() (Phil Auld) [1419746] - [x86] x86/percpu: Differentiate this_cpu_{}() and __this_cpu_{}() (Phil Auld) [1419746] - [kernel] sched/fair: Fix unnecessary increase of balance interval (Phil Auld) [1419746] - [kernel] sched/fair: Trigger asym_packing during idle load balance (Phil Auld) [1419746] - [kernel] sched/fair: Fix rounding bug for asym packing (Phil Auld) [1419746] - [kernel] sched/fair: Fix warning on non-SMP build (Phil Auld) [1419746] - [kernel] sched/core: Create task_has_idle_policy() helper (Phil Auld) [1419746] - [firmware] efi: fix a mistype in comments mentioning efivar_entry_iter_begin() (Vladis Dronov) [1804417] - [firmware] efi: add a sanity check to efivar_store_raw() (Vladis Dronov) [1804417] - [firmware] efi: fix a race and a buffer overflow while reading efivars via sysfs (Vladis Dronov) [1804417] - [scsi] scsi: ibmvfc: Fix NULL return compiler warning (Steve Best) [1810653] - [scsi] scsi: ibmvfc: Avoid loss of all paths during SVC node reboot (Steve Best) [1810653] - [fs] xfs: fix some memory leaks in log recovery (Bill O'Donnell) [1765693] - [fs] xfs: Fix deadlock between AGI and AGF when target_ip exists in xfs_rename() (Bill O'Donnell) [1765693] - [fs] xfs: fix inode fork extent count overflow (Bill O'Donnell) [1765693] - [fs] xfs: change the seconds fields in xfs_bulkstat to signed (Bill O'Donnell) [1765693] - [fs] xfs: assure zeroed memory buffers for certain kmem allocations (Bill O'Donnell) [1765693] - [fs] xfs: removed unused error variable from xchk_refcountbt_rec (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flags arg from xfs_get_aghdr_buf() (Bill O'Donnell) [1765693] - [fs] xfs: Fix tail rounding in xfs_alloc_file_space() (Bill O'Donnell) [1765693] - [fs] xfs: remove unlikely() from WARN_ON() condition (Bill O'Donnell) [1765693] - [fs] xfs: avoid unused to_mp() function warning (Bill O'Donnell) [1765693] - [fs] xfs: log proper length of superblock (Bill O'Donnell) [1765693] - [fs] xfs: revert 1baa2800e62d ("xfs: remove the unused XFS_ALLOC_USERDATA flag") (Bill O'Donnell) [1765693] - [fs] xfs: removed unneeded variable (Bill O'Donnell) [1765693] - [fs] xfs: push the grant head when the log head moves forward (Bill O'Donnell) [1765693] - [fs] xfs: push iclog state cleaning into xlog_state_clean_log (Bill O'Donnell) [1765693] - [fs] xfs: factor iclog state processing out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: factor callbacks out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: factor debug code out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: prevent CIL push holdoff in log recovery (Bill O'Donnell) [1765693] - [fs] xfs: fix missed wakeup on l_flush_wait (Bill O'Donnell) [1765693] - [fs] xfs: push the AIL in xlog_grant_head_wake (Bill O'Donnell) [1765693] - [fs] xfs: Use WARN_ON_ONCE for bailout mount-operation (Bill O'Donnell) [1765693] - [fs] xfs: define a flags field for the AG geometry ioctl structure (Bill O'Donnell) [1765693] - [fs] xfs: add a xfs_valid_startblock helper (Bill O'Donnell) [1765693] - [fs] xfs: remove the unused XFS_ALLOC_USERDATA flag (Bill O'Donnell) [1765693] - [fs] xfs: cleanup xfs_fsb_to_db (Bill O'Donnell) [1765693] - [fs] xfs: fix the dax supported check in xfs_ioctl_setattr_dax_invalidate (Bill O'Donnell) [1765693] - [fs] xfs: Fix stale data exposure when readahead races with hole punch (Bill O'Donnell) [1765693] - [mm] fs: Export generic_fadvise() (Bill O'Donnell) [1765693] - [fs] xfs: reverse search directory freespace indexes (Bill O'Donnell) [1765693] - [fs] xfs: speed up directory bestfree block scanning (Bill O'Donnell) [1765693] - [fs] xfs: factor free block index lookup from xfs_dir2_node_addname_int() (Bill O'Donnell) [1765693] - [fs] xfs: factor data block addition from xfs_dir2_node_addname_int() (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_dir2_addname() (Bill O'Donnell) [1765693] - [fs] xfs: remove all *_ITER_CONTINUE values (Bill O'Donnell) [1765693] - [fs] xfs: remove all *_ITER_ABORT values (Bill O'Donnell) [1765693] - [fs] xfs: log proper length of btree block in scrub/repair (Bill O'Donnell) [1765693] - [fs] xfs: reinitialize rm_flags when unpacking an offset into an rmap irec (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred bmap functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred refcount functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred rmap functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary parameter from xfs_iext_inc_seq (Bill O'Donnell) [1765693] - [fs] xfs: fix sign handling problem in xfs_bmbt_diff_two_keys (Bill O'Donnell) [1765693] - [fs] xfs: don't return _QUERY_ABORT from xfs_rmap_has_other_keys (Bill O'Donnell) [1765693] - [fs] xfs: fix maxicount division by zero error (Bill O'Donnell) [1765693] - [fs] xfs: bmap scrub should only scrub records once (Bill O'Donnell) [1765693] - [fs] xfs: remove excess function parameter description in 'xfs_btree_sblock_v5hdr_verify' (Bill O'Donnell) [1765693] - [fs] fs: xfs: Remove KM_NOSLEEP and KM_SLEEP (Bill O'Donnell) [1765693] - [fs] fs/xfs: Fix return code of xfs_break_leased_layouts() (Bill O'Donnell) [1765693] - [fs] xfs: compat_ioctl: use compat_ptr() (Bill O'Donnell) [1765693] - [fs] xfs: fall back to native ioctls for unhandled compat ones (Bill O'Donnell) [1765693] - [fs] xfs: remove more ondisk directory corruption asserts (Bill O'Donnell) [1765693] - [fs] fs: xfs: xfs_log: Don't use KM_MAYFAIL at xfs_log_reserve() (Bill O'Donnell) [1765693] - [fs] xfs: Fix possible null-pointer dereferences in xchk_da_btree_block_check_sibling() (Bill O'Donnell) [1765693] - [fs] xfs: fix stack contents leakage in the v1 inumber ioctls (Bill O'Donnell) [1765693] - [fs] xfs: sync up xfs_trans_inode with userspace (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_trans_inode.c to libxfs/ (Bill O'Donnell) [1765693] - [fs] xfs: chain bios the right way around in xfs_rw_bdev (Bill O'Donnell) [1765693] - [fs] xfs: bump INUMBERS cursor correctly in xfs_inumbers_walk (Bill O'Donnell) [1765693] - [fs] xfs: don't update lastino for FSBULKSTAT_SINGLE (Bill O'Donnell) [1765693] - [fs] xfs: online scrub needn't bother zeroing its temporary buffer (Bill O'Donnell) [1765693] - [fs] xfs: only allocate memory for scrubbing attributes when we need it (Bill O'Donnell) [1765693] - [fs] xfs: refactor attr scrub memory allocation function (Bill O'Donnell) [1765693] - [fs] xfs: refactor extended attribute buffer pointer functions (Bill O'Donnell) [1765693] - [fs] xfs: attribute scrub should use seen_enough to pass error values (Bill O'Donnell) [1765693] - [fs] xfs: allow single bulkstat of special inodes (Bill O'Donnell) [1765693] - [fs] xfs: specify AG in bulk req (Bill O'Donnell) [1765693] - [fs] xfs: wire up the v5 inumbers ioctl (Bill O'Donnell) [1765693] - [fs] xfs: wire up new v5 bulkstat ioctls (Bill O'Donnell) [1765693] - [fs] xfs: introduce v5 inode group structure (Bill O'Donnell) [1765693] - [fs] xfs: introduce new v5 bulkstat structure (Bill O'Donnell) [1765693] - [fs] xfs: rename bulkstat functions (Bill O'Donnell) [1765693] - [fs] xfs: remove various bulk request typedef usage (Bill O'Donnell) [1765693] - [fs] fs: xfs: xfs_log: Change return type from int to void (Bill O'Donnell) [1765693] - [fs] xfs: poll waiting for quotacheck (Bill O'Donnell) [1765693] - [fs] xfs: multithreaded iwalk implementation (Bill O'Donnell) [1765693] - [fs] xfs: refactor INUMBERS to use iwalk functions (Bill O'Donnell) [1765693] - [fs] xfs: refactor iwalk code to handle walking inobt records (Bill O'Donnell) [1765693] - [fs] xfs: refactor xfs_iwalk_grab_ichunk (Bill O'Donnell) [1765693] - [fs] xfs: clean up long conditionals in xfs_iwalk_ichunk_ra (Bill O'Donnell) [1765693] - [fs] xfs: change xfs_iwalk_grab_ichunk to use startino, not lastino (Bill O'Donnell) [1765693] - [fs] xfs: move bulkstat ichunk helpers to iwalk code (Bill O'Donnell) [1765693] - [fs] xfs: calculate inode walk prefetch more carefully (Bill O'Donnell) [1765693] - [fs] xfs: convert bulkstat to new iwalk infrastructure (Bill O'Donnell) [1765693] - [fs] xfs: bulkstat should copy lastip whenever userspace supplies one (Bill O'Donnell) [1765693] - [fs] xfs: convert quotacheck to use the new iwalk functions (Bill O'Donnell) [1765693] - [fs] xfs: create simplified inode walk function (Bill O'Donnell) [1765693] - [fs] xfs: create iterator error codes (Bill O'Donnell) [1765693] - [fs] xfs: remove XFS_TRANS_NOFS (Bill O'Donnell) [1765693] - [fs] xfs: simplify xfs_ioend_can_merge (Bill O'Donnell) [1765693] - [fs] xfs: allow merging ioends over append boundaries (Bill O'Donnell) [1765693] - [fs] xfs: fix a comment typo in xfs_submit_ioend (Bill O'Donnell) [1765693] - [fs] xfs: remove the unused xfs_count_page_state declaration (Bill O'Donnell) [1765693] - [fs] xfs: fix iclog allocation size (Bill O'Donnell) [1765693] - [fs] xfs: remove unused header files (Bill O'Donnell) [1765693] - [fs] xfs: account for log space when formatting new AGs (Bill O'Donnell) [1765693] - [fs] xfs: refactor free space btree record initialization (Bill O'Donnell) [1765693] - [fs] xfs: always update params on small allocation (Bill O'Donnell) [1765693] - [fs] xfs: skip small alloc cntbt logic on NULL cursor (Bill O'Donnell) [1765693] - [fs] xfs: move small allocation helper (Bill O'Donnell) [1765693] - [fs] xfs: clean up small allocation helper (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_bmap.c into xfs_bmap_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_rmap.c into xfs_rmap_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_refcount.c into xfs_refcount_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_extfree.c into xfs_extfree_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_bud_init into xfs_trans_get_bud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_rud_init into xfs_trans_get_rud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_cud_init into xfs_trans_get_cud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_efd_init into xfs_trans_get_efd (Bill O'Donnell) [1765693] - [fs] xfs: remove a pointless comment duplicated above all xfs_item_ops instances (Bill O'Donnell) [1765693] - [fs] xfs: use a list_head for iclog callbacks (Bill O'Donnell) [1765693] - [fs] xfs: remove the xfs_log_item_t typedef (Bill O'Donnell) [1765693] - [fs] xfs: don't cast inode_log_items to get the log_item (Bill O'Donnell) [1765693] - [fs] xfs: add a flag to release log items on commit (Bill O'Donnell) [1765693] - [fs] xfs: split iop_unlock (Bill O'Donnell) [1765693] - [fs] xfs: don't use xfs_trans_free_items in the commit path (Bill O'Donnell) [1765693] - [fs] xfs: remove the dummy iop_push implementation for inode creation items (Bill O'Donnell) [1765693] - [fs] xfs: don't require log items to implement optional methods (Bill O'Donnell) [1765693] - [fs] xfs: stop using XFS_LI_ABORTED as a parameter flag (Bill O'Donnell) [1765693] - [fs] xfs: fix a trivial comment typo in xfs_trans_committed_bulk (Bill O'Donnell) [1765693] - [fs] xfs: add struct xfs_mount pointer to struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: remove the b_io_length field in struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: properly type the b_log_item field in struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: remove unused buffer cache APIs (Bill O'Donnell) [1765693] - [fs] xfs: stop using bp naming for log recovery buffers (Bill O'Donnell) [1765693] - [fs] xfs: use bios directly to read and write the log recovery buffers (Bill O'Donnell) [1765693] - [fs] xfs: return an offset instead of a pointer from xlog_align (Bill O'Donnell) [1765693] - [fs] xfs: move the log ioend workqueue to struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: use bios directly to write log buffers (Bill O'Donnell) [1765693] - [fs] xfs: make use of the l_targ field in struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: remove the syncing argument from xlog_verify_iclog (Bill O'Donnell) [1765693] - [fs] xfs: update both stat counters together in xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out iclog size calculation from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out splitting of an iclog from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out log buffer writing from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: don't use REQ_PREFLUSH for split log writes (Bill O'Donnell) [1765693] - [fs] xfs: remove XLOG_STATE_IOABORT (Bill O'Donnell) [1765693] - [fs] xfs: reformat xlog_get_lowest_lsn (Bill O'Donnell) [1765693] - [fs] xfs: cleanup xlog_get_iclog_buffer_size (Bill O'Donnell) [1765693] - [fs] xfs: remove the l_iclog_size_log field from struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: renumber XBF_WRITE_FAIL (Bill O'Donnell) [1765693] - [fs] xfs: remove the never used _XBF_COMPOUND flag (Bill O'Donnell) [1765693] - [fs] xfs: remove the no-op spinlock_destroy stub (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_ino_geometry to xfs_shared.h (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flag arguments (Bill O'Donnell) [1765693] - [fs] xfs: remove the debug-only q_transp field from struct xfs_dquot (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_buf_zero and xfs_buf_iomove (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flags arg from getsb interfaces (Bill O'Donnell) [1765693] - [fs] xfs: include WARN, REPAIR build options in XFS_BUILD_OPTIONS (Bill O'Donnell) [1765693] - [fs] xfs: finish converting to inodes_per_cluster (Bill O'Donnell) [1765693] - [fs] xfs: fix inode_cluster_size rounding mayhem (Bill O'Donnell) [1765693] - [fs] xfs: refactor inode geometry setup routines (Bill O'Donnell) [1765693] - [fs] xfs: separate inode geometry (Bill O'Donnell) [1765693] - [fs] xfs: use file_modified() helper (Bill O'Donnell) [1765693] - [fs] vfs: introduce file_modified() helper (Bill O'Donnell) [1765693]- [md] dm: bump version of core and various targets (Mike Snitzer) [1810746] - [md] dm: fix congested_fn for request-based device (Mike Snitzer) [1810746] - [md] dm integrity: use dm_bio_record and dm_bio_restore (Mike Snitzer) [1810746] - [md] dm bio record: save_restore bi_end_io and bi_integrity (Mike Snitzer) [1810746] - [md] dm writecache: verify watermark during resume (Mike Snitzer) [1810746] - [md] dm: report suspended device during destroy (Mike Snitzer) [1810746] - [md] dm thin metadata: fix lockdep complaint (Mike Snitzer) [1810746] - [md] dm cache: fix a crash due to incorrect work item cancelling (Mike Snitzer) [1810746] - [md] dm integrity: fix invalid table returned due to argument count mismatch (Mike Snitzer) [1810746] - [md] dm integrity: fix a deadlock due to offloading to an incorrect workqueue (Mike Snitzer) [1810746] - [md] dm integrity: fix recalculation when moving from journal mode to bitmap mode (Mike Snitzer) [1810746] - [md] dm writecache: improve performance of large linear writes on SSDs (Mike Snitzer) [1810746] - [md] dm mpath: Add timeout mechanism for queue_if_no_path (Mike Snitzer) [1810746] - [md] dm thin: change data device's flush_bio to be member of struct pool (Mike Snitzer) [1810746] - [md] dm thin: don't allow changing data device during thin-pool reload (Mike Snitzer) [1810746] - [md] dm thin: fix use-after-free in metadata_pre_commit_callback (Mike Snitzer) [1810746] - [md] dm thin metadata: use pool locking at end of dm_pool_metadata_close (Mike Snitzer) [1810746] - [md] dm writecache: fix incorrect flush sequence when doing SSD mode commit (Mike Snitzer) [1810746] - [md] dm crypt: fix benbi IV constructor crash if used in authenticated mode (Mike Snitzer) [1810746] - [md] dm crypt: Implement Elephant diffuser for Bitlocker compatibility (Mike Snitzer) [1810746] - [md] dm space map common: fix to ensure new block isn't already in use (Mike Snitzer) [1810746] - [md] dm verity: don't prefetch hash blocks for already-verified data (Mike Snitzer) [1810746] - [md] dm crypt: fix GFP flags passed to skcipher_request_alloc() (Mike Snitzer) [1810746] - [md] dm thin metadata: Fix trivial math error in on-disk format documentation (Mike Snitzer) [1810746] - [md] dm thin metadata: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm snapshot: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm bio prison v2: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm mpath: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm zoned: support zone sizes smaller than 128MiB (Mike Snitzer) [1810746] - [md] dm raid: table line rebuild status fixes (Mike Snitzer) [1810746] - [documentation] docs: dm-integrity: remove reference to ARC4 (Mike Snitzer) [1810746] - [md] dm thin: Flush data device before committing metadata (Mike Snitzer) [1810746] - [md] dm thin metadata: Add support for a pre-commit callback (Mike Snitzer) [1810746] - [md] dm btree: increase rebalance threshold in __rebalance2() (Mike Snitzer) [1810746] - [md] dm mpath: remove harmful bio-based optimization (Mike Snitzer) [1810746] - [md] dm integrity: fix excessive alignment of metadata runs (Mike Snitzer) [1810746] - [md] dm cache: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm bio prison: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm thin: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm raid: streamline rs_get_progress() and its raid_status() caller side (Mike Snitzer) [1810746] - [md] dm raid: simplify rs_setup_recovery call chain (Mike Snitzer) [1810746] - [md] dm raid: to ensure resynchronization, perform raid set grow in preresume (Mike Snitzer) [1810746] - [md] dm raid: change rs_set_dev_and_array_sectors API and callers (Mike Snitzer) [1810746] - [md] dm: introduce DM_GET_TARGET_VERSION (Mike Snitzer) [1810746] - [md] dm bufio: introduce a global cache replacement (Mike Snitzer) [1810746] - [md] dm bufio: remove old-style buffer cleanup (Mike Snitzer) [1810746] - [md] dm bufio: introduce a global queue (Mike Snitzer) [1810746] - [md] dm bufio: refactor adjust_total_allocated (Mike Snitzer) [1810746] - [md] dm bufio: call adjust_total_allocated from __link_buffer and __unlink_buffer (Mike Snitzer) [1810746] - [md] dm crypt: omit parsing of the encapsulated cipher (Mike Snitzer) [1810746] - [md] dm crypt: switch to ESSIV crypto API template (Mike Snitzer) [1810746] - [crypto] crypto: essiv - create wrapper template for ESSIV generation (Mike Snitzer) [1810746] - [security] crypto: drop mask=CRYPTO_ALG_ASYNC from shash tfm allocations (Mike Snitzer) [1810746] - [crypto] crypto: drop mask=CRYPTO_ALG_ASYNC from cipher tfm allocations (Mike Snitzer) [1810746] - [md] dm verity: add root hash pkcs#7 signature verification (Mike Snitzer) [1810746] - [md] dm crypt: reuse eboiv skcipher for IV generation (Mike Snitzer) [1810746] - [md] dm integrity: fix a crash due to BUG_ON in __journal_read_write() (Mike Snitzer) [1810746] - [md] dm kcopyd: Increase default sub-job size to 512KB (Mike Snitzer) [1810746] - [documentation] docs: device-mapper: move it to the admin-guide (Mike Snitzer) [1810746] - [documentation] docs: convert docs to ReST and rename to *.rst (Mike Snitzer) [1810746] - [md] dm crypt: implement eboiv - encrypted byte-offset initialization vector (Mike Snitzer) [1810746] - [md] dm integrity: use kzalloc() instead of kmalloc() + memset() (Mike Snitzer) [1810746] - [md] dm integrity: always set version on superblock update (Mike Snitzer) [1810746] - [md] dm integrity: whitespace, coding style and dead code cleanup (Mike Snitzer) [1810746] - [md] dm integrity: implement synchronous mode for reboot handling (Mike Snitzer) [1810746] - [md] dm integrity: handle machine reboot in bitmap mode (Mike Snitzer) [1810746] - [md] dm integrity: add a bitmap mode (Mike Snitzer) [1810746] - [md] dm integrity: introduce a function add_new_range_and_wait() (Mike Snitzer) [1810746] - [md] dm integrity: allow large ranges to be described (Mike Snitzer) [1810746] - [md] dm ingerity: pass size to dm_integrity_alloc_page_list() (Mike Snitzer) [1810746] - [md] dm integrity: introduce rw_journal_sectors() (Mike Snitzer) [1810746] - [md] dm crypt and integrity: shash - remove shash_desc::flags (Mike Snitzer) [1810746] - [md] dm: fix potential for q->make_request_fn NULL pointer (Mike Snitzer) [1794340] - [netdrv] net/mlx5e: Don't clear the whole vf config when switching modes (mohamad meib) [1811428] - [scsi] scsi: be2iscsi: be_main: Mark expected switch fall-through (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: be_iscsi: Mark expected switch fall-through (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: switch to generic DMA API (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: fix spelling mistake "Retreiving" -> "Retrieving" (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: remove unused variable dmsg (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: Update copyright (Maurizio Lombardi) [1796740] - [security] selinux: fix sidtab string cache locking (Ondrej Mosnacek) [1807001 1806991] - [security] selinux: do not allocate ancillary buffer on first load (Ondrej Mosnacek) [1807001] - [security] selinux: remove redundant selinux_nlmsg_perm (Ondrej Mosnacek) [1807001] - [security] selinux: fix wrong buffer types in policydb.c (Ondrej Mosnacek) [1807001] - [security] selinux: treat atomic flags more carefully (Ondrej Mosnacek) [1807001] - [security] selinux: make default_noexec read-only after init (Ondrej Mosnacek) [1807001] - [security] selinux: move ibpkeys code under CONFIG_SECURITY_INFINIBAND (Ondrej Mosnacek) [1807001] - [security] Documentation, selinux: fix references to old selinuxfs mount point (Ondrej Mosnacek) [1807001] - [security] selinuxfs: use scnprintf to get real length for inode (Ondrej Mosnacek) [1807001] - [security] selinux: remove set but not used variable 'sidtab' (Ondrej Mosnacek) [1807001] - [security] selinux: ensure the policy has been loaded before reading the sidtab stats (Ondrej Mosnacek) [1807001] - [security] selinux: ensure we cleanup the internal AVC counters on error in avc_update() (Ondrej Mosnacek) [1807001] - [security] selinux: randomize layout of key structures (Ondrej Mosnacek) [1807001] - [security] selinux: clean up selinux_enabled/disabled/enforcing_boot (Ondrej Mosnacek) [1807001] - [security] selinux: remove unnecessary selinux cred request (Ondrej Mosnacek) [1807001] - [security] selinux: ensure we cleanup the internal AVC counters on error in avc_insert() (Ondrej Mosnacek) [1807001] - [security] security: only build lsm_audit if CONFIG_SECURITY=y (Ondrej Mosnacek) [1807001] - [security] selinux: clean up selinux_inode_permission MAY_NOT_BLOCK tests (Ondrej Mosnacek) [1807001] - [security] selinux: fall back to ref-walk if audit is required (Ondrej Mosnacek) [1807001] - [security] selinux: revert "stop passing MAY_NOT_BLOCK to the AVC upon follow_link" (Ondrej Mosnacek) [1807001] - [security] selinux: cache the SID -> context string translation (Ondrej Mosnacek) [1807001 1806991] - [security] selinux: sidtab reverse lookup hash table (Ondrej Mosnacek) [1807001] - [security] selinux: default_range glblub implementation (Ondrej Mosnacek) [1807001] - [security] selinux: allow labeling before policy is loaded (Ondrej Mosnacek) [1807001 1777525] - [security] selinux: remove load size limit (Ondrej Mosnacek) [1807001] - [security] selinux: fix residual uses of current_security() for the SELinux blob (Ondrej Mosnacek) [1807001] - [kernel] rcu: Make kfree_rcu() ignore NULL pointers (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of ipc security blobs (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of inode security blob (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of file security blob (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of cred security blob (Ondrej Mosnacek) [1807001] - [security] selinux: kill selinux_sb_get_mnt_opts() (Ondrej Mosnacek) [1807001] - [security] selinux; don't open-code a loop in sb_finish_set_opts() (Ondrej Mosnacek) [1807001] - [security] selinux: expand superblock_doinit() calls (Ondrej Mosnacek) [1807001] - [netdrv] hv_netvsc: Fix unwanted rx_table reset (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix tx_table init in rndis_set_subchannel() (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix send_table offset in case of a host bug (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix offset usage in netvsc_send_table() (Mohammed Gamal) [1805950]- [block] blk-mq: Keep set->nr_hw_queues and set->map.nr_queues in sync (Ming Lei) [1810523] - [block] block: clear REQ_HIPRI if polling is not supported (Ming Lei) [1809506]- [perf] arm_spe: Enable ACPI/Platform automatic module loading (Jeremy Linton) [1501652] - [perf] perf: arm_spe: Don't error on high-order pages for aux buf (Jeremy Linton) [1501652] - [perf] arm_spe: handle devm_kasprintf() failure (Jeremy Linton) [1501652] - [perf] arm_spe: Enable automatic DT loading (Jeremy Linton) [1501652] - [block] blk-iolatency: fix STS_AGAIN handling (Ming Lei) [1764737] - [block] blk-iolatency: only account submitted bios (Ming Lei) [1764737] - [block] blk-iolatency: clear use_delay when io.latency is set to zero (Ming Lei) [1764737] - [block] blk-iolatency: #include "blk.h" (Ming Lei) [1764737] - [block] Blk-iolatency: warn on negative inflight IO counter (Ming Lei) [1764737] - [block] blk-iolatency: fix IO hang due to negative inflight counter (Ming Lei) [1764737] - [block] block: fix blk-iolatency accounting underflow (Ming Lei) [1764737] - [fs] xfs: stabilize insert range start boundary to avoid COW writeback race (Brian Foster) [1728979] - [x86] uprobes/x86: Fix detection of 32-bit user mode (Oleg Nesterov) [1804961] - [ipc] Revert "ipc, sem: remove uneeded sem_undo_list lock usage in exit_sem()" ("Herton R. Krzesinski") [1807627] - [powerpc] powerpc/tm: Fix clearing MSRin current when reclaiming on signal delivery (Gustavo Duarte) [1751116] - [powerpc] powerpc/tm: Set MSRjust prior to recheckpoint (Gustavo Duarte) [1751116] - [arm64] arm64: smp: Increase secondary CPU boot timeout value (Gavin Shan) [1807684] - [fs] ext4: work around deleting a file with i_nlink == 0 safely (Carlos Maiolino) [1801049] - [char] ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier (Waiman Long) [1810638] - [char] ipmi: Revert "fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier" (Waiman Long) [1810638]- [kernel] blktrace: Protect q->blk_trace with RCU (Ming Lei) [1798329] - [drm] drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/dp: Introduce EDID-based quirks (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Auto detect DPCD backlight support by default (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Assume 100 brightness when not in DPCD control mode (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Fix eDP DPCD aux max backlight calculations (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Check backlight type while doing eDP backlight initializaiton (Lyude Paul) [1782671 1773796 1748892] - [tools] selftests: nft_concat_range: Add test for reported add/flush/add issue (Stefano Brivio) [1807892] - [net] nft_set_pipapo: Actually fetch key data in nft_pipapo_remove() (Stefano Brivio) [1807892] - [net] sched: don't take rtnl lock during flow_action setup (Marcelo Leitner) [1804385] - [include] net: sched: refactor ct action helpers to require tcf_lock (Marcelo Leitner) [1804385] - [include] net: sched: refactor police action helpers to require tcf_lock (Marcelo Leitner) [1804385] - [net] sched: lock action when translating it to flow_action infra (Marcelo Leitner) [1804385] - [powerpc] powerpc/smp: Fix NMI IPI xmon timeout (Diego Domingos) [1747320] - [powerpc] powerpc/smp: Fix NMI IPI timeout (Diego Domingos) [1747320] - [powerpc] powerpc: NMI IPI make NMI IPIs fully sychronous (Diego Domingos) [1747320] - [arm64] arm64: select CPUMASK_OFFSTACK if NUMA (Andrea Arcangeli) [1712856] - [arm64] arm64: tlb: skip tlbi broadcast (Andrea Arcangeli) [1712856]- [fs] fs/proc/proc_sysctl.c: Fix a NULL pointer dereference (Vladis Dronov) [1795521] {CVE-2019-20054} - [fs] fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links (Vladis Dronov) [1795521] {CVE-2019-20054} - [ptp] ptp: correctly disable flags on old ioctls (Petr Oros) [1795188] - [uapi] PTP: add support for one-shot output (Petr Oros) [1795188] - [ptp] PTP: introduce new versions of IOCTLs (Petr Oros) [1795188] - [virtio] virtio_ring: fix stalls for packed rings (Eugenio Perez) [1601355] - [virtio] virtio_ring: Fix potential mem leak in virtqueue_add_indirect_packed (Eugenio Perez) [1601355] - [uapi] virtio: drop internal struct from UAPI (Eugenio Perez) [1601355] - [virtio] virtio_ring: advertize packed ring layout (Eugenio Perez) [1601355] - [virtio] virtio_ring: leverage event idx in packed ring (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce packed ring support (Eugenio Perez) [1601355] - [virtio] virtio_ring: cache whether we will use DMA API (Eugenio Perez) [1601355] - [virtio] virtio_ring: extract split ring handling from ring creation (Eugenio Perez) [1601355] - [virtio] virtio_ring: allocate desc state for split ring separately (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce helper for indirect feature (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce debug helpers (Eugenio Perez) [1601355] - [virtio] virtio_ring: put split ring fields in a sub struct (Eugenio Perez) [1601355] - [virtio] virtio_ring: put split ring functions together (Eugenio Perez) [1601355] - [virtio] virtio_ring: add _split suffix for split ring functions (Eugenio Perez) [1601355] - [uapi] virtio: add packed ring types and macros (Eugenio Perez) [1601355] - [x86] x86/mtrr: Skip cache flushes on CPUs with cache self-snooping (Prarit Bhargava) [1724541] - [x86] x86/cpu/intel: Clear cache self-snoop capability in CPUs with known errata (Prarit Bhargava) [1724541] - [documentation] Documentation PCI: Fix pciebus-howto.rst filename typo (Myron Stowe) [1793091] - [tools] tools: PCI: Fix installation when `make tools/pci_install` (Myron Stowe) [1793091] - [tools] tools: PCI: Fix broken pcitest compilation (Myron Stowe) [1793091] - [tools] tools pci: Do not delete pcitest.sh in 'make clean' (Myron Stowe) [1793091] - [pci] PCI: endpoint: Clear BAR before freeing its space (Myron Stowe) [1793091] - [pci] PCI: endpoint: Skip odd BAR when skipping 64bit BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Allocate enough space for fixed size BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Set endpoint controller pointer to NULL (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add support to specify alignment for buffers allocated to BARs (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Use pci_epc_get_features() to get EPC features (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Do not allocate next BARs memory if current BAR is 64Bit (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Remove setting epf_bar flags in function driver (Myron Stowe) [1793091] - [pci] PCI: endpoint: Fix pci_epf_alloc_space() to set correct MEM TYPE flags (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add helper to get first unreserved BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add new pci_epc_ops to get EPC features (Myron Stowe) [1793091] - [pci] PCI: endpoint: functions: Use memcpy_fromio()/memcpy_toio() (Myron Stowe) [1793091] - [pci] PCI: Skip resource distribution when no hotplug bridges (Myron Stowe) [1793091] - [pci] PCI: Simplify pci_bus_distribute_available_resources() (Myron Stowe) [1793091] - [pci] PCI: Reset both NVIDIA GPU and HDA in ThinkPad P50 workaround (Myron Stowe) [1793091] - [pci] PCI: Enable NVIDIA HDA controllers (Myron Stowe) [1793091] - [pci] PCI: Use seq_puts() instead of seq_printf() in show_device() (Myron Stowe) [1793091] - [pci] PCI: Add NVIDIA GPU multi-function power dependencies (Myron Stowe) [1793091] - [pci] PCI: Generalize multi-function power dependency device links (Myron Stowe) [1793091] - [pci] PCI: sysfs: Ignore lockdep for remove attribute (Myron Stowe) [1793091] - [pci] PCI: Decode PCIe 32 GT/s link speed (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-test-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-test-function.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-endpoint-cfs.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-endpoint.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pcieaer-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci-error-recovery.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert acpi-info.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert MSI-HOWTO.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci-iov-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert PCIEBUS-HOWTO.txt to reST (Myron Stowe) [1793091] - [documentation] docs: pci: fix broken links due to conversion from pci.txt to pci.rst (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: add Linux PCI to Sphinx TOC tree (Myron Stowe) [1793091] - [pci] PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary (Myron Stowe) [1793091] - [pci] PCI: Add a stub for pci_ats_disabled() (Myron Stowe) [1793091] - [pci] PCI: Provide pci_match_id() with CONFIG_PCI=n (Myron Stowe) [1793091] - [misc] ocxl: Add PCI hotplug dependency to Kconfig (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Wrap warnings in macro (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Relax check when disabling slot (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Register opencapi slots (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Improve error msg on power state change failure (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Remove erroneous warning (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Find opencapi slot for a device node (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Release opencapi device (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: set up PE on opencapi device when enabling (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Protect PE list (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Fix ref count for devices with their own PE (Steve Best) [1788902] - [of] of: overlay: add_changeset_property() memory leak (Steve Best) [1798483] - [of] of: unittest: initialize args before calling of_*parse_*() (Steve Best) [1798483] - [of] of: unittest: find overlaysentry by name instead of index (Steve Best) [1798483] - [of] of: unittest: allow base devicetree to have symbol metadata (Steve Best) [1798483] - [of] of: overlay: set node fields from properties when add new overlay node (Steve Best) [1798483] - [of] of: unittest: remove unused of_unittest_apply_overlay() argument (Steve Best) [1798483] - [of] of: overlay: check prevents multiple fragments touching same property (Steve Best) [1798483] - [of] of: overlay: check prevents multiple fragments add or delete same node (Steve Best) [1798483] - [of] of: overlay: test case of two fragments adding same node (Steve Best) [1798483] - [of] of: overlay: make all pr_debug() and pr_err() messages unique (Steve Best) [1798483] - [of] of: overlay: validate overlay properties (Steve Best) [1798483] - [of] of: overlay: reorder fields in struct fragment (Steve Best) [1798483] - [of] of: overlay: do not duplicate properties from overlay for new nodes (Steve Best) [1798483] - [of] of: overlay: use prop add changeset entry for property in new nodes (Steve Best) [1798483] - [of] of: Convert to using pOFn instead of device_node.name (Steve Best) [1798483] - [powerpc] powerpc/pseries: add of_node_put() in dlpar_detach_node() (Steve Best) [1798483] - [of] of: overlay: add missing of_node_get() in __of_attach_node_sysfs (Steve Best) [1798483] - [of] of: overlay: add missing of_node_put() after add new node to changeset (Steve Best) [1798483] - [of] of: overlay: add tests to validate kfrees from overlay removal (Steve Best) [1798483]- [kernel] open the RHEL 8.3 development (Frantisek Hrbata) - [netdrv] Revert "r8169: don't use MSI before RTL8168d" (Josef Oskera) [1792839] - [drm] drm/nouveau/kms/gv100-: Re-set LUT after clearing for modesets (Ben Skeggs) [1789026] - [drm] drm/nouveau/disp/gv100-: not all channel types support reporting error codes (Ben Skeggs) [1789481] - [drm] drm/nouveau/disp/nv50-: prevent oops when no channel method map provided (Ben Skeggs) [1789481] - [fs] cifs: don't leak -EAGAIN for stat() during reconnect (Dave Wysochanski) [1769599] - [block] blk-mq: insert passthrough request into hctx->dispatch directly (Ming Lei) [1788728] - [scsi] scsi: megaraid_sas: fixup MSIx interrupt setup during resume (Tomas Henzl) [1805353]- [fs] NFS: Add deferred cache invalidation for close-to-open consistency violations (Benjamin Coddington) [1803162] - [block] nbd: fix stack corruption in nbd_check_sock_type() (Ming Lei) [1803664] - [mm] mm/vmscan.c: don't round up scan size for online memory cgroup (Aristeu Rozanski) [1775691] - [tools] selftests/bpf: fix clearing buffered output between tests/subtests (Yauheni Kaliuta) [1786006] - [tools] libbpf: avoid usage of __builtin_preserve_field_info (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: samples/bpf: fix Split off legacy stuff from bpf_helpers.h (Yauheni Kaliuta) [1786006] - [tools] libbpf: fix Make DECLARE_LIBBPF_OPTS macro strictly a variable declaration (Yauheni Kaliuta) [1786006] - [tools] selftests: fix too long argument (Yauheni Kaliuta) [1786006] - [tools] libbpf: Add BPF-side definitions of supported field relocation kinds (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: add sub-tests support for test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: abstract away test log output (Yauheni Kaliuta) [1786006] - [tools] selftest/bpf: centralize libbpf logging management for test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: prevent headers to be compiled as C code (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: add test selectors by number and name to test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: revamp test_progs to allow more control (Yauheni Kaliuta) [1786006] - [net] core: Don't skip generic XDP program execution for cloned SKBs (Jiri Benc) [1802507] - [tools] selftests/bpf: De-flake test_tcpbpf (Jiri Benc) [1802507] - [net] bpf, sockmap: Check update requirements after locking (Jiri Benc) [1802507] - [net] bpf, sockhash: Synchronize_rcu before free'ing map (Jiri Benc) [1802507] - [net] bpf, sockmap: Don't sleep while holding RCU lock on tear-down (Jiri Benc) [1802507] - [net] net: bpf: Don't leak time wait and request sockets (Jiri Benc) [1802507] - [net] bpf/sockmap: Read psock ingress_msg before sk_receive_queue (Jiri Benc) [1802507] - [net] bpf: Clear skb->tstamp in bpf_redirect when necessary (Jiri Benc) [1802507] - [net] xdp: obtain the mem_id mutex before trying to remove an entry (Jiri Benc) [1802507] - [net] page_pool: do not release pool until inflight == 0 (Jiri Benc) [1802507] - [net] xsk: Fix registration of Rx-only sockets (Jiri Benc) [1802507] - [net] xsk: avoid store-tearing when assigning umem (Jiri Benc) [1802507] - [net] xsk: avoid store-tearing when assigning queues (Jiri Benc) [1802507] - [tools] bpftool: Don't crash on missing xlated program instructions (Jiri Benc) [1802507] - [tools] bpftool: Fix printing incorrect pointer in btf_dump_ptr (Jiri Benc) [1802507] - [tools] bpftool: Don't crash on missing jited insns or ksyms (Jiri Benc) [1802507] - [tools] bpftool: Match several programs with same tag (Jiri Benc) [1802507] - [tools] libbpf: Fix realloc usage in bpf_core_find_cands (Jiri Benc) [1802507] - [tools] libbpf: Add missing newline in opts validation macro (Jiri Benc) [1802507] - [tools] libbpf: Don't attach perf_buffer to offline/missing CPUs (Jiri Benc) [1802507] - [tools] libbpf: Extract and generalize CPU mask parsing logic (Jiri Benc) [1802507] - [tools] libbpf: Fix printf compilation warnings on ppc64le arch (Jiri Benc) [1802507] - [tools] libbpf: Fix sym->st_value print on 32-bit arches (Jiri Benc) [1802507] - [tools] libbpf: Make btf__resolve_size logic always check size error condition (Jiri Benc) [1802507] - [tools] libbpf: Fix another potential overflow issue in bpf_prog_linfo (Jiri Benc) [1802507] - [tools] libbpf: Fix potential overflow issue (Jiri Benc) [1802507] - [tools] libbpf: Fix memory leak/double free issue (Jiri Benc) [1802507] - [tools] libbpf: Fix off-by-one error in ELF sanity check (Jiri Benc) [1802507] - [tools] selftests/bpf: Fix test_attach_probe (Jiri Benc) [1802507] - [kernel] bpf: Fix bpf_event_output re-entry issue (Jiri Benc) [1802507] - [net] bpf: Fix incorrect verifier simulation of ARSH under ALU32 (Jiri Benc) [1802507] - [net] bpf: Fix passing modified ctx to ld/abs/ind instruction (Jiri Benc) [1802507] - [net] bpf: cgroup: prevent out-of-order release of cgroup bpf (Jiri Benc) [1802507] - [net] bpf: Fix precision tracking for unbounded scalars (Jiri Benc) [1802507] - [net] bpf: Fix cgroup local storage prog tracking (Jiri Benc) [1802507] - [net] bpf/stackmap: Fix deadlock with rq_lock in bpf_get_stack() (Jiri Benc) [1802507] - [net] bpf, offload: Unlock on error in bpf_offload_dev_create() (Jiri Benc) [1802507] - [powerpc] powerpc/bpf: Fix tail call implementation (Jiri Benc) [1802507] - [net] bpf: Fix use after free in bpf_get_prog_name (Jiri Benc) [1802507] - [net] bpf: Fix use after free in subprog's jited symbol removal (Jiri Benc) [1802507] - [uapi] bpf: fix BTF limits (Jiri Benc) [1802507] - [net] bpf: fix BTF verification of enums (Jiri Benc) [1802507] - [netdrv] ice: Don't tell the OS that link is going down (Jonathan Toppins) [1792670] - [powerpc] powerpc/powernv: implement opal_put_chars_atomic (Steve Best) [1806254] - [tty] powerpc/powernv: move opal console flushing to udbg (Steve Best) [1806254] - [powerpc] powerpc/powernv: Remove OPALv1 support from opal console driver (Steve Best) [1806254] - [powerpc] powerpc/powernv: Implement and use opal_flush_console (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal-kmsg use flush fallback from console code (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal-kmsg standardise OPAL_BUSY handling (Steve Best) [1806254] - [powerpc] powerpc/powernv: Fix OPAL console driver OPAL_BUSY loops (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal_put_chars partial write fix (Steve Best) [1806254] - [x86] Mark Comet Lake-S as supported (David Arcari) [1805754]- rebuild, due infrastructure issues last kernel build wasn't signed properly [1807216]- [nvme] nvme-multipath: Fix memory leak with ana_log_buf (David Milburn) [1804822] - [powerpc] pci/of: Fix OF flags parsing for 64bit BARs (David Gibson) [1804038]- [pci] PCI: pciehp: Add DMI table for in-band presence disabled (Myron Stowe) [1749528] - [pci] PCI: pciehp: Wait for PDS if in-band presence is disabled (Myron Stowe) [1749528] - [pci] PCI: pciehp: Add support for disabling in-band presence (Myron Stowe) [1749528] - [netdrv] net/mlx5: DR, Handle reformat capability over sw-steering tables (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, Fix matching on vport gvmi (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, use non preemptible call to get the current cpu number (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, Enable counter on non-fwd-dest objects (Alaa Hleihel) [1794997] - [iommu] iommu/vt-d: Simplify check in identity_mapping() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Remove deferred_attach_domain() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Do deferred attachment in iommu_need_mapping() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Move deferred device attachment into helper function (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Add attach_deferred() helper (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Refactor find_domain() helper (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Allow devices with RMRRs to use identity domain (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Call __dmar_remove_one_dev_info with valid pointer (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Fix lock inversion between iommu->lock and device_domain_lock (Jerry Snitselaar) [1797124 1784649] - [ata] ata: ahci: Add shutdown to freeze hardware resources of ahci (David Milburn) [1784955] - [include] redhat: kabi: convert incorrect use of RH_KABI_EXTEND (Jiri Benc) [1715803] - [include] redhat: kabi: macros for intentional kABI breakage (Jiri Benc) [1715803] - [uapi] redhat: kabi: bpf: remove misleading comment (Jiri Benc) [1715803] - [include] redhat: kabi: introduce RH_KABI_HIDE_INCLUDE and RH_KABI_FAKE_INCLUDE (Jiri Benc) [1715803] - [kernel] kernel/module.c: wakeup processes in module_wq on module unload (Prarit Bhargava) [1804209] - [x86] kvm: x86: do not reset microcode version on INIT or RESET (Paolo Bonzini) [1801853] - [x86] kvm: x86: list MSR_IA32_UCODE_REV as an emulated MSR (Paolo Bonzini) [1801853] - [nvme] nvme: prevent warning triggered by nvme_stop_keep_alive (David Milburn) [1799890] - [nvme] nvme: nvme_keep_alive_end_io fixup setting comp_seen flag (David Milburn) [1799890]- [iommu] iommu: don't change default domain if already set by quirk (Jerry Snitselaar) [1786292] - [net] netfilter: ipset: Copy the right MAC address in hash:ip, mac IPv6 sets (Stefano Brivio) [1759422] - [net] ipv6/addrconf: only check invalid header values when NETLINK_F_STRICT_CHK is set (Guillaume Nault) [1802817] - [net] tcp: clear tp->segs_{in|out} in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->data_segs{in|out} in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->delivered in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->total_retrans in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: do not leave dangling pointers in tp->highest_sack (Guillaume Nault) [1802682] - [net] tcp: Fix highest_sack and highest_sack_seq (Guillaume Nault) [1802682] - [net] tcp: do not send empty skb from tcp_write_xmit() (Guillaume Nault) [1802682] - [net] tcp: md5: fix potential overestimation of TCP option space (Guillaume Nault) [1802682] - [net] tcp: fix data-race in tcp_recvmsg() (Guillaume Nault) [1802682] - [net] bridge: ebtables: don't crash when using dnat target in output chains (Andrea Claudi) [1798923] - [net] ip6_tunnel: fix namespaces move (Andrea Claudi) [1798649] - [net] ip_tunnel: fix namespaces move (Andrea Claudi) [1798649] - [net] ipv4: Detect rollover in specific fib table dump (Guillaume Nault) [1801587] - [net] inet: protect against too small mtu values. (Guillaume Nault) [1801587] - [net] icmp: fix data-race in cmp_global_allow() (Guillaume Nault) [1801587] - [net] inetpeer: fix data-race in inet_putpeer / inet_putpeer (Guillaume Nault) [1801587] - [net] ipv4: Fix table id reference in fib_sync_down_addr (Guillaume Nault) [1801587] - [net] dccp: do not leak jiffies on the wire (Guillaume Nault) [1801587] - [net] inet: stop leaking jiffies on the wire (Guillaume Nault) [1801587] - [tools] selftests: fib_tests: add more tests for metric update (Guillaume Nault) [1801587] - [net] ipv4: fix route update on metric change. (Guillaume Nault) [1801587] - [net] iptunnel: Set tun_flags in the iptunnel_metadata_reply from src (Guillaume Nault) [1801587] - [net] flow_dissector: Fix to use new variables for port ranges in bpf hook (Ivan Vecera) [1789862] - [net] net_sched: fix a resource leak in tcindex_set_parms() (Ivan Vecera) [1789862] - [tools] tc-testing: fix eBPF tests failure on linux fresh clones (Ivan Vecera) [1789862] - [net] net_sched: fix an OOB access in cls_tcindex (Ivan Vecera) [1789862] - [net] cls_rsvp: fix rsvp_policy (Ivan Vecera) [1789862] - [net] net_sched: ematch: reject invalid TCF_EM_SIMPLE (Ivan Vecera) [1789862] - [net] net_sched: walk through all child classes in tc_bind_tclass() (Ivan Vecera) [1789862] - [net] net_sched: fix ops->bind_class() implementations (Ivan Vecera) [1789862] - [net] net_sched: fix datalen for ematch (Ivan Vecera) [1789862] - [net] net_sched: use validated TCA_KIND attribute in tc_new_tfilter() (Ivan Vecera) [1789862] - [net] sch_prio: When ungrafting, replace with FIFO (Ivan Vecera) [1789862] - [net] pkt_sched: fq: do not accept silly TCA_FQ_QUANTUM (Ivan Vecera) [1789862] - [net] sched: add delete_empty() to filters and use it in cls_flower (Ivan Vecera) [1789862] - [net] sched: act_mirred: Pull mac prior redir to non mac_header_xmit device (Ivan Vecera) [1789862] - [net] sched: cls_u32: fix refcount leak in the error path of u32_change() (Ivan Vecera) [1789862] - [net] net_sched: sch_fq: properly set sk->sk_pacing_status (Ivan Vecera) [1789862] - [net] net_sched: validate TCA_KIND attribute in tc_chain_tmplt_add() (Ivan Vecera) [1789862] - [net] mqprio: Fix out-of-bounds access in mqprio_dump (Ivan Vecera) [1789862] - [net] sched: allow indirect blocks to bind to clsact in TC (Ivan Vecera) [1789862] - [net] core: rename indirect block ingress cb function (Ivan Vecera) [1789862] - [net] Fixed updating of ethertype in skb_mpls_push() (Ivan Vecera) [1789862] - [net] cls_flower: Fix the behavior using port ranges with hw-offload (Ivan Vecera) [1789862] - [net] sched: fix dump qlen for sch_mq/sch_mqprio with NOLOCK subqueues (Ivan Vecera) [1789862] - [net] Fixed updating of ethertype in function skb_mpls_pop (Ivan Vecera) [1789862] - [net] sched: fix `tc -s class show` no bstats on class with nolock subqueues (Ivan Vecera) [1789862] - [net] sched: act_pedit: fix WARN() in the traffic path (Ivan Vecera) [1789862] - [net] sched: actions: remove unused 'order' (Ivan Vecera) [1789862] - [net] sched: annotate lockless accesses to qdisc->empty (Ivan Vecera) [1789862] - [net] annotate lockless accesses to sk->sk_max_ack_backlog (Ivan Vecera) [1789862] - [net] inet: minor optimization for backlog setting in listen(2) (Ivan Vecera) [1789862] - [net] annotate lockless accesses to sk->sk_ack_backlog (Ivan Vecera) [1789862] - [net] use helpers to change sk_ack_backlog (Ivan Vecera) [1789862] - [net] sched: prevent duplicate flower rules from tcf_proto destroy race (Ivan Vecera) [1789862] - [net] flow_dissector: switch to siphash (Ivan Vecera) [1789862] - [netdrv] macvlan: use skb_reset_mac_header() in macvlan_queue_xmit() (Davide Caratti) [1801128] - [netdrv] macvlan: do not assume mac_header is set in macvlan_broadcast() (Davide Caratti) [1801128] - [net] psample: fix skb_over_panic (Sabrina Dubroca) [1800589] - [net] openvswitch: don't unlock mutex when changing the user_features fails (Davide Caratti) [1799363] - [net] rtnetlink: validate IFLA_MTU attribute in rtnl_create_link() (Guillaume Nault) [1798715] - [net] rtnetlink: fix a typo fbd -> fdb (Guillaume Nault) [1798715] - [net] bpf: Sockmap, skmsg helper overestimates push, pull, and pop bounds (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, msg_push_data may leave end mark in place (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, push write_space updates through ulp updates (Sabrina Dubroca) [1798179] - [net] sk_msg: Don't check if sock is locked when tearing down psock (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, fix pop data with SK_DROP return code (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, skmsg can have wrapped skmsg that needs extra chaining (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, tls_sw can create a plaintext buf > encrypt buf (Sabrina Dubroca) [1798179] - [include] bpf: Sockmap/tls, during free we may call tcp_bpf_unhash() in loop (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap, ensure sock lock held during tear down (Sabrina Dubroca) [1798179] - [net] tls: fix async operation (Sabrina Dubroca) [1798179] - [net] tls: Fix return values to avoid ENOTSUPP (Sabrina Dubroca) [1798179] - [net] skmsg: fix TLS 1.3 crash with full sk_msg (Sabrina Dubroca) [1798179] - [net] tls: free the record on encryption error (Sabrina Dubroca) [1798179] - [net] tls: take into account that bpf_exec_tx_verdict() may free the record (Sabrina Dubroca) [1798179] - [net] bpf: skmsg, fix potential psock NULL pointer dereference (Sabrina Dubroca) [1798179] - [net] tls: enable sk_msg redirect to tls socket egress (Sabrina Dubroca) [1798179] - [netdrv] macsec: fix refcnt leak in module exit routine (Sabrina Dubroca) [1799029] - [netdrv] ppp: Adjust indentation into ppp_async_input (Guillaume Nault) [1798104] - [net] l2tp: Allow duplicate session creation with UDP (Guillaume Nault) [1798104] - [net] Fix bugs introduced by netlink strict checking backport (Petr Oros) [1782172] - [tools] selftests: forwarding: fix race between packet receive and tc check (Hangbin Liu) [1797941] - [tools] selftests: forwarding: tc_common: Add hitting check (Hangbin Liu) [1797941] - [tools] selftests: net: push jq workaround into separate helper (Hangbin Liu) [1797941] - [tools] selftests: loopback.sh: skip this test if the driver does not support (Hangbin Liu) [1797941] - [tools] selftests: pmtu: fix init mtu value in description (Hangbin Liu) [1797941] - [tools] selftests: forwarding: Delete IPv6 address at the end (Hangbin Liu) [1797941] - [tools] selftests: pmtu: use -oneline for ip route list cache (Hangbin Liu) [1797941] - [tools] selftests: net: tcp_mmap should create detached threads (Hangbin Liu) [1797941] - [tools] selftests: net: reuseport_dualstack: fix uninitalized parameter (Hangbin Liu) [1797941] - [net] tipc: fix link overflow issue at socket shutdown (Xin Long) [1798070] - [net] tipc: fix retrans failure due to wrong destination (Xin Long) [1798070] - [net] tipc: fix potential hanging after b/rcast changing (Xin Long) [1798070] - [net] tipc: fix ordering of tipc module init and exit routine (Xin Long) [1798070] - [net] tipc: fix wrong timeout input for tipc_wait_for_cond() (Xin Long) [1798070] - [net] tipc: fix wrong socket reference counter after tipc_sk_timeout() returns (Xin Long) [1798070] - [net] tipc: fix potential memory leak in __tipc_sendmsg() (Xin Long) [1798070] - [net] tipc: fix link name length check (Xin Long) [1798070] - [net] tipc: update replicast capability for broadcast send link (Xin Long) [1798070] - [net] tipc: update cluster capabilities if node deleted (Xin Long) [1798070] - [net] tipc: update mon's self addr when node addr generated (Xin Long) [1798070] - [net] tipc: reduce sensitive to retransmit failures (Xin Long) [1798070] - [net] sctp: free cmd->obj.chunk for the unprocessed SCTP_CMD_REPLY (Xin Long) [1798061] - [net] sctp: fully initialize v4 addr in some functions (Xin Long) [1798061] - [net] sctp: cache netns in sctp_ep_common (Xin Long) [1798061] - [net] sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook (Xin Long) [1798061] - [net] xfrm: support output_mark for offload ESP packets (Xin Long) [1798059] - [net] xfrm: release device reference for invalid state (Xin Long) [1798059] - [net] netfilter: fix a use-after-free in mtype_destroy() (Davide Caratti) [1796361] - [net] netfilter: ipset: avoid null deref when IPSET_ATTR_LINENO is present (Davide Caratti) [1796361] - [net] netfilter: conntrack: Request module if l3proto is unknown (Phil Sutter) [1752765] - [include] tcp: Protect accesses to .ts_recent_stamp with {READ,WRITE}_ONCE() (Guillaume Nault) [1780828] - [include] tcp: tighten acceptance of ACKs not matching a child socket (Guillaume Nault) [1780828] - [include] tcp: fix rejected syncookies due to stale timestamps (Guillaume Nault) [1780828] - [net] SUNRPC: Make "no retrans timeout" soft tasks behave like softconn for timeouts (Steve Dickson) [1801454] - [kernel] genirq, sched/isolation: Isolate from handling managed interrupts (Peter Xu) [1783026]- [nvme] nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info (David Milburn) [1798630] - [mm] arm64: debug: Remove unused return value from do_debug_exception() (Bhupesh Sharma) [1802511] - [mm] arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals (Bhupesh Sharma) [1802511] - [mm] arm64/mm: Reorganize arguments for is_el1_permission_fault() (Bhupesh Sharma) [1802511] - [mm] arm64/mm: Define esr_to_debug_fault_info() (Bhupesh Sharma) [1802511] - [infiniband] IB/mlx5: Do reverse sequence during device removal (Alaa Hleihel) [1801497] - [netdrv] bnxt_en: Fix RDMA driver failure with SRIOV after firmware reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Refactor logic to re-enable SRIOV after firmware reset detected (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix logic that disables Bus Master during firmware reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix TC queue mapping (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix NTUPLE firmware command failures (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix ipv6 RFS filter matching logic (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Do not treat DSN (Digital Serial Number) read failure as fatal (Jonathan Toppins) [1801868] - [netdrv] bnxt: Detach page from page pool before sending up the stack (Jonathan Toppins) [1801868] - [netdrv] bnxt: apply computed clamp value for coalece parameter (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix MSIX request logic for RDMA driver (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Free context memory in the open path if firmware has been reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Return error if FW returns more data than dump length (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix bp->fw_health allocation and free logic (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Add missing devlink health reporters for VFs (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix the logic that creates the health reporters (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Do driver unregister cleanup in bnxt_init_one() failure path (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Send FUNC_RESOURCE_QCAPS command in bnxt_resume() (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Combine 2 functions calling the same HWRM_DRV_RGTR fw command (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Abort waiting for firmware response if there is no heartbeat (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Return proper error code for non-existent NVM variable (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Add a warning message for driver initiated reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Improve RX buffer error handling (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Extend ETHTOOL_RESET to hot reset driver (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Increase firmware response timeout for coredump commands (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix suspend/resume path on 57500 chips (Jonathan Toppins) [1801111] - [netdrv] bnxt_en: Disable/enable Bus master during suspend/resume (Jonathan Toppins) [1801111] - [fs] cifs: fix soft mounts hanging in the reconnect code (Leif Sahlberg) [1795423] - [kernel] audit: CONFIG_CHANGE don't log internal bookkeeping as an event (Richard Guy Briggs) [1798512] - [security] selinux: reorder hooks to make runtime disable less broken (Ondrej Mosnacek) [1778990] - [scsi] scsi: qla2xxx: Fix unbound NVME response length (Himanshu Madhani) [1796480] - [isdn] misdn: enforce CAP_NET_RAW for raw sockets (Andrea Claudi) [1779475] {CVE-2019-17055}- [fs] Revert: f5bcc37b81fc ("namei: allow restricted O_CREAT of FIFOs and regular files") (Eric Sandeen) [1801468] - [fs] Revert: 433cbb6cf0ae ("quota: honor quota type in Q_XGETQSTATcalls") (Eric Sandeen) [1800435] - [infiniband] RDMA/siw: Fix setting active_mtu attribute (Kamal Heib) [1797199] - [infiniband] RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create (Kamal Heib) [1733690] - [scsi] scsi: lpfc: Fix release of hwq to clear the eq relationship (Dick Kennedy) [1798661] - [x86] kvm/hyper-v: don't allow to turn on unsupported VMX controls for nested guests (Vitaly Kuznetsov) [1786288] - [x86] kvm/hyper-v: move VMX controls sanitization out of nested_enable_evmcs() (Vitaly Kuznetsov) [1786288] - [x86] kvm/hyper-v: remove stale evmcs_already_enabled check from nested_enable_evmcs() (Vitaly Kuznetsov) [1786288] - [x86] kvm: svm: relax conditions for allowing MSR_IA32_SPEC_CTRL accesses (Paolo Bonzini) [1796417] - [x86] kvm: x86: avoid incorrect writes to host MSR_IA32_SPEC_CTRL (Paolo Bonzini) [1796417] - [tools] selftests: netfilter: Introduce tests for sets with range concatenation (Stefano Brivio) [1593711] - [net] nf_tables: Add set type for arbitrary concatenation of ranges (Stefano Brivio) [1593711] - [lib] bitmap: Introduce bitmap_cut(): cut bits and shift remaining (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: Support for sets with multiple ranged fields (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: add NFTA_SET_ELEM_KEY_END attribute (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: add nft_setelem_parse_key() (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: validate NFT_DATA_VALUE after nft_data_init() (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: validate NFT_SET_ELEM_INTERVAL_END (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: remove unused parameter ctx (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: remove unused variable (Stefano Brivio) [1593711] - [ptp] ptp: free ptp device pin descriptors properly (Vladis Dronov) [1787568] - [ptp] ptp: fix the race between the release of ptp_clock and cdev (Vladis Dronov) [1787568] - [ptp] ptp: Fix pass zero to ERR_PTR() in ptp_clock_register (Vladis Dronov) [1787568]- [fs] NFSv4: pnfs_roc() must use cred_fscmp() to compare creds (Benjamin Coddington) [1800893] - [drm] drm/nouveau/kms/gv100-: avoid sending a core update until the first modeset (Ben Skeggs) [1801091] - [drm] drm/nouveau/kms/gv100-: move window ownership setup into modesetting path (Ben Skeggs) [1801091] - [drm] drm/nouveau/disp/gv100-: halt NV_PDISP_FE_RM_INTR_STAT_CTRL_DISP_ERROR storms (Ben Skeggs) [1801091] - [drm] drm/nouveau: Add HD-audio component notifier support (Ben Skeggs) [1792191] - [netdrv] net/mlx5: Fix deadlock in fs_core (Alaa Hleihel) [1786630] - [drm] drm/amd/dm/mst: Ignore payload update failures (Lyude Paul) [1773800 1773795] - [kernel] sched/rt: Optimize checking group RT scheduler constraints (Phil Auld) [1797106] - [fs] cifs: Fix mount options set in automount (Dave Wysochanski) [1790922]- [kernel] timers/nohz: Update NOHZ load in remote tick (Scott Wood) [1791434] - [kernel] sched/core: Don't skip remote tick for idle CPUs (Scott Wood) [1791434] - [drm] drm/amdgpu/vi: silence an uninitialized variable warning (Lyude Paul) [1792565] - [drm] drm: panel-lvds: Potential Oops in probe error handling (Lyude Paul) [1792565] - [drm] drm/i915: Fix pid leak with banned clients (Lyude Paul) [1792565] - [drm] drm/amdgpu: allow direct upload save restore list for raven2 (Lyude Paul) [1792565] - [drm] drm/amd/display: Reorder detect_edp_sink_caps before link settings read (Lyude Paul) [1792565] - [drm] drm/i915: Add missing include file (Lyude Paul) [1792565] - [drm] drm/amdgpu: enable gfxoff for raven1 refresh (Lyude Paul) [1792565] - [drm] drm/amdgpu/discovery: reserve discovery data at the top of VRAM (Lyude Paul) [1792565] - [drm] drm/amdgpu: cleanup creating BOs at fixed location (v2) (Lyude Paul) [1792565] - [drm] drm/tegra: Fix ordering of cleanup code (Lyude Paul) [1792565] - [drm] drm/i915/gen9: Clear residual context state on context switch (Lyude Paul) [1792565] - [drm] drm/i915: Add Wa_1407352427:icl,ehl (Lyude Paul) [1792565] - [drm] drm/dp_mst: correct the shifting in DP_REMOTE_I2C_READ (Lyude Paul) [1792565] - [drm] drm/fb-helper: Round up bits_per_pixel if possible (Lyude Paul) [1792565] - [drm] drm/i915: Add Wa_1408615072 and Wa_1407596294 to icl, ehl (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock for vega20 (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock for navi (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock (Lyude Paul) [1792565] - [drm] drm/nouveau/kms/nv50-: fix panel scaling (Lyude Paul) [1792565 1741114] - [drm] drm/nouveau: Fix drm-core using atomic code-paths on pre-nv50 hardware (Lyude Paul) [1792565] - [drm] drm/nouveau: Move the declaration of struct nouveau_conn_atom up a bit (Lyude Paul) [1792565] - [drm] drm/amd/display: Reset steer fifo before unblanking the stream (Lyude Paul) [1792565] - [drm] drm/amd/display: Change the delay time before enabling FEC (Lyude Paul) [1792565] - [drm] drm/amd/display: Fixed kernel panic when booting with DP-to-HDMI dongle (Lyude Paul) [1792565] - [drm] drm/amdgpu: add cache flush workaround to gfx8 emit_fence (Lyude Paul) [1792565] - [drm] drm/amdgpu: add check before enabling/disabling broadcast mode (Lyude Paul) [1792565] - [drm] drm: limit to INT_MAX in create_blob ioctl (Lyude Paul) [1792565] - [drm] drm/amdgpu: Call find_vma under mmap_sem (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix uninitialized variable pasid_mapping_needed (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix bad DMA from INTERRUPT_CNTL2 (Lyude Paul) [1792565] - [drm] drm/amdgpu: Avoid accidental thread reactivation (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix potential double drop fence reference (Lyude Paul) [1792565] - [drm] drm/amdgpu: disallow direct upload save restore list from gfx driver (Lyude Paul) [1792565] - [gpu] gpu: host1x: Allocate gather copy for host1x (Lyude Paul) [1792565] - [drm] drm/tegra: sor: Use correct SOR index on Tegra210 (Lyude Paul) [1792565] - [drm] drm/amd/display: correctly populate dpp refclk in fpga (Lyude Paul) [1792565] - [drm] drm: Don't free jobs in wait_event_interruptible() (Lyude Paul) [1792565] - [drm] drm/gma500: fix memory disclosures due to uninitialized bytes (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix amdgpu trace event print string format error (Lyude Paul) [1792565] - [drm] drm/amd/powerplay: avoid disabling ECC if RAS is enabled for VEGA20 (Lyude Paul) [1792565] - [drm] drm/bridge: dw-hdmi: Restore audio when setting a mode (Lyude Paul) [1792565] - [drm] drm/amd/display: Program DWB watermarks from correct state (Lyude Paul) [1792565] - [drm] drm/amd/display: Fix dongle_caps containing stale information (Lyude Paul) [1792565] - [drm] drm/amd/display: add new active dongle to existent w/a (Lyude Paul) [1792565] - [drm] drm/amd/display: refactor Device ID for external chips (Lyude Paul) [1792565] - [drm] drm/amd/display: wait for set pipe mcp command completion (Lyude Paul) [1792565] - [drm] drm/amd/display: Properly round nominal frequency for SPD (Lyude Paul) [1792565] - [drm] drm/drm_vblank: Change EINVAL by the correct errno (Lyude Paul) [1792565] - [drm] drm/amdkfd: Fix MQD size calculation (Lyude Paul) [1792565] - [drm] drm/bridge: dw-hdmi: Refuse DDC/CI transfers on the internal I2C controller (Lyude Paul) [1792565] - [drm] drm/amd/display: set minimum abm backlight level (Lyude Paul) [1792565] - [drm] drm/amd/display: load iram for abm 2.3 (Lyude Paul) [1792565] - [drm] drm/amd/powerplay: A workaround to GPU RESET on APU (Lyude Paul) [1792565] - [drm] drm/amdkfd: fix a potential NULL pointer dereference (v2) (Lyude Paul) [1792565] - [drm] drm/amd/display: Set number of pipes to 1 if the second pipe was disabled (Lyude Paul) [1792565] - [drm] drm/amd/display: Handle virtual signal type in disable_link() (Lyude Paul) [1792565] - [drm] drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu: grab the id mgr lock while accessing passid_mapping (Lyude Paul) [1792565] - [drm] drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code (Lyude Paul) [1792565] - [drm] drm/bridge: analogix-anx78xx: silence -EPROBE_DEFER warnings (Lyude Paul) [1792565] - [drm] drm/amd/display: verify stream link before link test (Lyude Paul) [1792565] - [drm] drm: Use EOPNOTSUPP, not ENOTSUPP (Lyude Paul) [1792565] - [drm] drm/mipi-dbi: fix a loop in debugfs code (Lyude Paul) [1792565] - [drm] drm: mst: Fix query_payload ack reply struct (Lyude Paul) [1792565] - [drm] Revert "drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper." (Lyude Paul) [1792565] - [drm] drm/amdgpu: add invalidate semaphore limit for SRIOV and picasso in gmc9 (Lyude Paul) [1792565] - [drm] drm/amdgpu: avoid using invalidate semaphore for picasso (Lyude Paul) [1792565] - [drm] drm/amdgpu/gfx10: re-init clear state buffer after gpu reset (Lyude Paul) [1792565] - [drm] drm/amdgpu/gfx10: explicitly wait for cp idle after halt/unhalt (Lyude Paul) [1792565] - [drm] drm/amdgpu: invalidate mmhub semaphore workaround in gmc9/gmc10 (Lyude Paul) [1792565] - [drm] drm/amdgpu: set adev->num_vmhubs for gmc6, 7, 8 (Lyude Paul) [1792565] - [drm] drm/amdgpu: Export function to flush TLB of specific vm hub (Lyude Paul) [1792565] - [drm] drm/amdgpu: add new member in amdgpu_device for vmhub counts per asic chip (Lyude Paul) [1792565] - [drm] drm/amdgpu: rename AMDGPU_GFXHUB/MMHUB macro with hub number (Lyude Paul) [1792565] - [drm] drm/amdgpu: initialize vm_inv_eng0_sem for gfxhub and mmhub (Lyude Paul) [1792565] - [drm] drm/amd/display: add default clocks if not able to fetch them (Lyude Paul) [1792565] - [drm] drm/amd/display: re-enable wait in pipelock, but add timeout (Lyude Paul) [1792565] - [drm] drm/dp_mst: Correct the bug in drm_dp_update_payload_part1() (Lyude Paul) [1792565] - [drm] drm/radeon: fix r1xx/r2xx register checker for POT textures (Lyude Paul) [1792565] - [drm] drm/i915/fbc: Disable fbc by default on all glk+ (Lyude Paul) [1792565] - [drm] drm/nouveau/kms/nv50-: Limit MST BPC to 8 (Lyude Paul) [1792565 1773804] - [drm] drm/nouveau/kms/nv50-: Store the bpc we're using in nv50_head_atom (Lyude Paul) [1792565 1773804] - [drm] drm/nouveau/kms/nv50-: Call outp_atomic_check_view() before handling PBN (Lyude Paul) [1792565 1773804] - [drm] drm/mgag200: Flag all G200 SE A machines as broken wrt (Lyude Paul) [1792565] - [drm] drm/mgag200: Add workaround for HW that does not support 'startadd' (Lyude Paul) [1792565] - [drm] drm/mgag200: Store flags from PCI driver data in device structure (Lyude Paul) [1792565] - [drm] drm/mgag200: Extract device type from flags (Lyude Paul) [1792565] - [dma-buf] dma-buf: Fix memory leak in sync_file_merge() (Lyude Paul) [1792565] - [video] video/hdmi: Fix AVI bar unpack (Lyude Paul) [1792565] - [drm] drm: damage_helper: Fix race checking plane->state->fb (Lyude Paul) [1792565] - [drm] drm/i915: Fix detection for a CMP-V PCH (Lyude Paul) [1792565] - [x86] Mark AMD Ryzen 7 as supported (David Arcari) [1797317] - [x86] Mark AMD Ryzen 5 as supported (David Arcari) [1718051] - [mm] mm/sparse.c: reset section's mem_map when fully deactivated (Pingfan Liu) [1797848] - [drm] drm/mgag200: Don't unpin the current cursor image's buffer (Lyude Paul) [1784290] - [drm] drm/mgag200: Set cursor scanout address to correct BO (Lyude Paul) [1784290] - [drm] drm/mgag200: Pin displayed cursor BO to video memory (Lyude Paul) [1784290] - [tools] Correction to manpage of cpupower (Prarit Bhargava) [1796139] - [fs] cifs: fix soft mounts hanging in the reconnect code (Dave Wysochanski) [1795429] - [net] ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup (Sabrina Dubroca) [1774440] - [net] ipv6: add net argument to ip6_dst_lookup_flow (Sabrina Dubroca) [1774440] - [netdrv] can: peak_usb: fix slab info leak (Guillaume Nault) [1787486] {CVE-2019-19534} - [netdrv] vxlan: fix tos value before xmit (Hangbin Liu) [1786075] - [net] netfilter: nft_tproxy: Fix port selector on Big Endian (Phil Sutter) [1781481] - [net] devlink: Change devlink health locking mechanism (Petr Oros) [1785997] - [net] xfrm: Fix memleak on xfrm state destroy (Xin Long) [1780470] - [net] erspan: remove the incorrect mtu limit for erspan (Hangbin Liu) [1783871] - [net] ieee802154: enforce CAP_NET_RAW for raw sockets (Andrea Claudi) [1779495] {CVE-2019-17053} - [net] netfilter: masquerade: don't flush all conntracks if only one address deleted on device (Patrick Talbert) [1772334]- [mm] memcg: Add preemption point in accumulate_memcg_tree() (Waiman Long) [1795049] - [edac] EDAC: skx_common: downgrade message importance on missing PCI device (Aristeu Rozanski) [1775511] - [infiniband] IB/core: Do not notify GID change event of an unregistered device (Kamal Heib) [1787333] - [infiniband] IB/core: Let IB core distribute cache update events (Kamal Heib) [1787333] - [arm64] arm64: kexec: always reset to EL2 if present (Bhupesh Sharma) [1794805] - [tools] perf header: Use last modification time for timestamp (Michael Petlan) [1791258] - [netdrv] net/mlx5e: Enable all available stats for uplink reps (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Create q counters on uplink representors (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Convert rep stats to mlx5e_stats_grp-based infra (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: IPoIB, use separate stats groups (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Convert stats groups array to array of group pointers (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Declare stats groups via macro (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Profile specific stats groups (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Move uplink rep init/cleanup code into own functions (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Add discard counters per priority (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Add port buffer's congestion counters (Alaa Hleihel) [1786321] - [netdrv] net/mlx5: Expose HW capability bits for port buffer per priority congestion counters (Alaa Hleihel) [1786321] - [netdrv] qede: Fix multicast mac configuration (Manish Chopra) [1784894] - [thunderbolt] thunderbolt: Drop unnecessary read when writing LC command in Ice Lake (Jarod Wilson) [1784568] - [thunderbolt] thunderbolt: Fix lockdep circular locking depedency warning (Jarod Wilson) [1784568] - [thunderbolt] thunderbolt: Read DP IN adapter first two dwords in one go (Jarod Wilson) [1784568]- [pci] PCI/PM: Move pci_dev_wait() definition earlier (Myron Stowe) [1794266] - [pci] PCI/PM: Add missing link delays required by the PCIe spec (Myron Stowe) [1794266] - [pci] PCI/PM: Add pcie_wait_for_link_delay() (Myron Stowe) [1794266] - [pci] PCI/PM: Return error when changing power state from D3cold (Myron Stowe) [1794266] - [pci] PCI/PM: Decode D3cold power state correctly (Myron Stowe) [1794266] - [pci] PCI/PM: Fold __pci_complete_power_transition() into its caller (Myron Stowe) [1794266] - [pci] PCI/PM: Avoid exporting __pci_complete_power_transition() (Myron Stowe) [1794266] - [pci] PCI/PM: Fold __pci_start_power_transition() into its caller (Myron Stowe) [1794266] - [pci] PCI/PM: Use pci_power_up() in pci_set_power_state() (Myron Stowe) [1794266] - [pci] PCI/PM: Move power state update away from pci_power_up() (Myron Stowe) [1794266] - [pci] PCI/PM: Remove unused pci_driver.suspend_late() hook (Myron Stowe) [1794266] - [pci] PCI/PM: Remove unused pci_driver.resume_early() hook (Myron Stowe) [1794266] - [xen] xen-platform: Convert to generic power management (Myron Stowe) [1794266] - [pci] PCI/PM: Simplify pci_set_power_state() (Myron Stowe) [1794266] - [pci] PCI/PM: Expand PM reset messages to mention D3hot (not just D3) (Myron Stowe) [1794266] - [pci] PCI/PM: Apply D2 delay as milliseconds, not microseconds (Myron Stowe) [1794266] - [pci] PCI/PM: Use pci_WARN() to include device information (Myron Stowe) [1794266] - [pci] PCI/PM: Use PCI dev_printk() wrappers for consistency (Myron Stowe) [1794266] - [pci] PCI/PM: Make power management op coding style consistent (Myron Stowe) [1794266] - [pci] PCI/PM: Run resume fixups before disabling wakeup events (Myron Stowe) [1794266] - [pci] PCI/PM: Clear PCIe PME Status even for legacy power management (Myron Stowe) [1794266] - [pci] PCI/PM: Always return devices to D0 when thawing (Myron Stowe) [1794266] - [pci] PCI: PM: Fix pci_power_up() (Myron Stowe) [1794266] - [pci] PCI: Make pcie_downstream_port() available outside of access.c (Myron Stowe) [1794266] - [pci] PCI: Add pci_info_ratelimited() to ratelimit PCI separately (Myron Stowe) [1794266] - [pci] PCI: PM: Simplify bus-level hibernation callbacks (Myron Stowe) [1794266] - [pci] PCI: Do not poll for PME if the device is in D3cold (Myron Stowe) [1794266] - [pci] PCI: PM: Replace pci_dev_keep_suspended() with two functions (Myron Stowe) [1794266] - [pci] PCI: PM: Avoid resuming devices in D3hot during system suspend (Myron Stowe) [1794266] - [pci] PCI: PM: Avoid skipping bus-level PM on platforms without ACPI (Myron Stowe) [1794266] - [pci] treewide: Switch printk users from pf and pF to ps and pS, respectively (Myron Stowe) [1794266] - [sound] ALSA: Use the legacy HDA driver as default for Intel DSP platforms (Jaroslav Kysela) [1793227] - [nvme] nvme: nvme_mpath_init remove multipath check (David Milburn) [1790958] - [mm] mm/page-writeback.c: don't break integrity writeback on ->writepage() error (Christoph von Recklinghausen) [1782117] - [arm64] arm64: Revert support for execute-only user mappings (Jeremy Linton) [1788629] - [powerpc] powerpc/papr_scm: Don't enable direct map for a region by default (Steve Best) [1795706]- [tools] selftests/eeh: Bump EEH wait time to 60s (Steve Best) [1783199] - [tools] tools/kvm_stat: Fix kvm_exit filter name (Gavin Shan) [1780345] - [infiniband] RDMA/bnxt_re: Report more number of completion vectors (Selvin Xavier) [1788037 1753515] - [infiniband] RDMA/bnxt_re: Fix Send Work Entry state check while polling completions (Selvin Xavier) [1788037] - [infiniband] RDMA/bnxt_re: Fix missing le16_to_cpu (Selvin Xavier) [1788037] - [infiniband] RDMA/bnxt_re: Avoid freeing MR resources if dereg fails (Selvin Xavier) [1788037 1737147] - [infiniband] RDMA/bnxt_re: Fix stat push into dma buffer on gen p5 devices (Selvin Xavier) [1788037 1771855] - [infiniband] RDMA/bnxt_re: Fix chip number validation Broadcom's Gen P5 series (Selvin Xavier) [1788037 1783943] - [netdrv] net/mlx5e: Clear VF config when switching modes (mohamad meib) [1787276] - [base] drivers/base/memory.c: cache memory blocks in xarray to accelerate lookup fixup (David Hildenbrand) [1789900] - [base] drivers/base/memory.c: cache memory blocks in xarray to accelerate lookup (David Hildenbrand) [1789900] - [base] drivers/base/memory.c: drop the mem_sysfs_mutex (David Hildenbrand) [1789900] - [base] driver/base/memory.c: validate memory block size early (David Hildenbrand) [1789900] - [fs] block: Don't revalidate bdev of hidden gendisk (David Milburn) [1779342] - [scsi] scsi: virtio_scsi: unplug LUNs when events missed (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: implement request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: fix dh and multipathing for SCSI hosts without request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: fix missing .cleanup_rq for SCSI hosts without request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: add support for request batching (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Use struct_size() helper (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: remove unused 'affinity_hint_set' (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: don't send sc payload with tmfs (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Remove per-target data because it is no longer used (Maxim Levitsky) [1614188] - [powerpc] powerpc/pseries/lparcfg: Fix display of Maximum Memory (Steve Best) [1795622] - [powerpc] powernv: Don't reprogram SLW image on every KVM guest entry/exit (Laurent Vivier) [1751078] - [x86] Mark certain versions of Comet Lake as supported (David Arcari) [1794198] - [s390] s390/dasd: Disable Thin Provisioning to prevent data loss (Philipp Rudo) [1793461]- [x86] kvm: x86/mmu: Take slots_lock when using kvm_mmu_zap_all_fast() (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: x86: disable shattered huge page recovery for PREEMPT_RT (Paolo Bonzini) [1690344] {CVE-2018-12207} - [documentation] documentation: Add ITLB_MULTIHIT documentation (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: x86: mmu: Recovery of shattered NX large pages (Paolo Bonzini) [1690344] {CVE-2018-12207} - [virt] kvm: Add helper function for creating VM worker threads (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: mmu: ITLB_MULTIHIT mitigation (Paolo Bonzini) [1690344] {CVE-2018-12207} - [kernel] cpu/speculation: Uninline and export CPU mitigations helpers (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] cpu: Add Tremont to the cpu vulnerability whitelist (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] bugs: Add ITLB_MULTIHIT bug infrastructure (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: vmx, svm: always run with EFER.NXE=1 when shadow paging is active (Paolo Bonzini) [1690344] {CVE-2018-12207} - [crypto] crypto: hmac - fix memory leak in hmac_init_tfm() (Herbert Xu) [1775858] - [crypto] crypto: hash - fix incorrect HASH_MAX_DESCSIZE (Herbert Xu) [1775858] - [nvme] nvme: Translate more status codes to blk_status_t (Gopal Tiwari) [1781537] - [include] nvme: resync include/linux/nvme.h with nvmecli (Gopal Tiwari) [1781537] - [netdrv] hv_netvsc: Fix memory leak when removing rndis device (Mohammed Gamal) [1733007] - [fs] cifs: Fix memory allocation in __smb2_handle_cancelled_cmd() (Dave Wysochanski) [1793182] - [tools] perf c2c: Fix report with offline cpus (Michael Petlan) [1744903] - [kernel] locking/rwsem: Fix kernel crash when spinning on RWSEM_OWNER_UNKNOWN (Waiman Long) [1793028] - [mm] mm/memory_hotplug: don't free usage map when removing a re-added early section (Pingfan Liu) [1787269] - [netdrv] iavf: remove current MAC address filter on VF reset (Stefan Assmann) [1735725 1738738] - [dma] dma-mapping: fix handling of dma-ranges for reserved memory (again) (Jerry Snitselaar) [1784691]- [fs] pnfs/filelayout: enable LAYOUTGET on OPEN (Steve Dickson) [1756140] - [fs] NFSD fixing possible null pointer derefering in copy offload (Benjamin Coddington) [1763220] - [fs] nfsd: Ensure CLONE persists data and metadata changes to the target file (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix backchannel latency metrics (Benjamin Coddington) [1763220] - [fs] NFSv4.x: Drop the slot if nfs4_delegreturn_prepare waits for layoutreturn (Benjamin Coddington) [1763220] - [fs] NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process() (Benjamin Coddington) [1763220] - [fs] NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid() (Benjamin Coddington) [1763220] - [fs] NFSv4: Don't allow a cached open with a revoked delegation (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix svcauth_gss_proxy_init() (Benjamin Coddington) [1763220] - [net] SUNRPC: The TCP back channel mustn't disappear while requests are outstanding (Benjamin Coddington) [1763220] - [net] xprtrdma: Close window between waking RPC senders and posting Receives (Benjamin Coddington) [1763220] - [net] xprtrdma: Connection becomes unstable after a reconnect (Benjamin Coddington) [1763220] - [net] xprtrdma: Add unique trace points for posting Local Invalidate WRs (Benjamin Coddington) [1763220] - [net] sunrpc: fix crash when cache_head become valid before update (Benjamin Coddington) [1763220] - [fs] nfsd4: fix up replay_matches_cache() (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix leak of clp->cl_acceptor string (Benjamin Coddington) [1763220] - [fs] pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors (Benjamin Coddington) [1763220] - [fs] NFS: Fix O_DIRECT accounting of number of bytes read/written (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix another issue with MIC buffer space (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix buffer handling of GSS MIC without slack (Benjamin Coddington) [1763220] - [fs] Revert "NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated" (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't handle errors if the bind/connect succeeded (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix congestion window race with disconnect (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't try to parse incomplete RPC messages (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't receive TCP data into a request buffer that has been reset (Benjamin Coddington) [1763220] - [net] SUNRPC: Dequeue the request from the receive queue while we're re-encoding (Benjamin Coddington) [1763220] - [net] SUNRPC: Handle connection breakages correctly in call_status() (Benjamin Coddington) [1763220] - [net] xprtrdma: Toggle XPRT_CONGESTED in xprtrdma's slot methods (Benjamin Coddington) [1763220] - [fs] NFS: Ensure O_DIRECT reports an error if the bytes read/written is 0 (Benjamin Coddington) [1763220] - [fs] NFSv4/pnfs: Fix a page lock leak in nfs_pageio_resend() (Benjamin Coddington) [1763220] - [fs] NFS: Fix regression whereby fscache errors are appearing on 'nofsc' mounts (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim() (Benjamin Coddington) [1763220] - [fs] NFSv4.1: Only reap expired delegations (Benjamin Coddington) [1763220] - [fs] NFSv4.1: Fix open stateid recovery (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix a credential refcount leak in nfs41_check_delegation_stateid (Benjamin Coddington) [1763220] - [fs] NFSv4: Handle the special Linux file open access mode (Benjamin Coddington) [1763220] - [fs] nfsd: Fix overflow causing non-working mounts on 1 TB machines (Benjamin Coddington) [1763220] - [md] md: make sure desc_nr less than MD_SB_DISKS (Nigel Croxon) [1769057] - [md] md: raid1: check rdev before reference in raid1_sync_request func (Nigel Croxon) [1769057] - [md] md/raid10: prevent access of uninitialized resync_pages offset (Nigel Croxon) [1769057] - [md] md: avoid invalid memory access for array sb->dev_roles (Nigel Croxon) [1769057] - [md] md/raid1: avoid soft lockup under high load (Nigel Croxon) [1769057] - [md] md: no longer compare spare disk superblock events in super_load (Nigel Croxon) [1769057] - [md] md: improve handling of bio with REQ_PREFLUSH in md_flush_request() (Nigel Croxon) [1769057] - [md] md/bitmap: avoid race window between md_bitmap_resize and bitmap_file_clear_bit (Nigel Croxon) [1769057] - [md] md/raid0: Fix an error message in raid0_make_request() (Nigel Croxon) [1769057] - [md] md/raid0: fix warning message for parameter default_layout (Nigel Croxon) [1769057] - [netdrv] net/mlx5: DR, Init lists that are used in rule's member (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, No need for atomic refcount for internal SW steering resources (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create multiple destination action from dr_create_fte (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Add support for multiple destination table action (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Align dest FT action creation to API (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Pass table flags at creation to lower layer (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create multi-destination table for SW-steering use (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create FTE entry in the FW from SW-steering (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Use attributes struct for FW flow table creation (Alaa Hleihel) [1775986] - [drm] drm/amd/display: fix struct init in update_bounding_box (Don Dutile) [1784621] - [tools] perf/x86/pmu-events: Fix Kernel_Utilization metric (Michael Petlan) [1788434] - [tools] perf vendor events intel: Update all the Intel JSON metrics from TMAM 3.6 (Michael Petlan) [1788434] - [tools] perf vendor events intel: Update CascadelakeX events to v1.05 (Michael Petlan) [1788434] - [tools] cpupower: mperf_monitor: Update cpupower to use the RDPRU instruction (Janakarajan Natarajan) [1766357] - [tools] cpupower: mperf_monitor: Introduce per_cpu_schedule flag (Janakarajan Natarajan) [1766357] - [tools] cpupower: Move needs_root variable into a sub-struct (Janakarajan Natarajan) [1766357] - [mm] coredump: fix race condition between collapse_huge_page() and core dumping (Andrea Arcangeli) [1722986] - [mm] memcg, oom: don't require __GFP_FS when invoking memcg OOM killer (Waiman Long) [1791170] - [uapi] mm: move MAP_SYNC to asm-generic/mman-common.h (Jeff Moyer) [1791539]- [linux] ptr_ring: wrap back ->producer in __ptr_ring_swap_queue() (Lu Lu) [1663784] - [virtio] virtio-balloon: fix managed page counts when migrating pages between zones (David Hildenbrand) [1689800] - [infiniband] IB/mlx4: Follow mirror sequence of device add during device removal (mohamad meib) [1786042] - [netdrv] gve: Fix the queue page list allocated pages count (Patricio Noyola) [1789114] - [netdrv] gve: fix dma sync bug where not all pages synced (David Awogbemila) [1790957] - [netdrv] gve: Fixes DMA synchronization (David Awogbemila) [1789027] - [net] SUNRPC: Ignore queue transmission errors on successful transmission (Benjamin Coddington) [1769367] - [net] Revert "SUNRPC: Micro-optimise when the task is known not to be sleeping" (Benjamin Coddington) [1769367] - [net] SUNRPC: Fix up calculation of client message length (Benjamin Coddington) [1769367] - [net] Merge tag 'nfs-rdma-for-5.1-1' of git://git.linux-nfs.org/projects/anna/linux-nfs (Benjamin Coddington) [1769367] - [char] tpm: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's" (Jerry Snitselaar) [1789088] - [char] tpm: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts" (Jerry Snitselaar) [1789088] - [tools] perf jvmti: Link against tools/lib/ctype.h to have weak strlcpy() (Michael Petlan) [1786048] - [tools] perf jvmti: Link against tools/lib/string.o to have weak strlcpy() (Michael Petlan) [1786048] - [kernel] kprobes: Show address of kprobes if kallsyms does (Michael Petlan) [1747099] - [kernel] genirq/debugfs: Reset domain debugfs_file on removal of the debugfs file (Mohammed Gamal) [1782640] - [powerpc] powerpc: Fix 32-bit KVM-PR lockup and host crash with MacOS guest (Steve Best) [1789594]- [platform] x86: intel_pmc_core: Add Comet Lake (CML) platform support to intel_pmc_core driver (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Fix the SoC naming inconsistency (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core_pltdrv: Module removal warning fix (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Do not ioremap RAM (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Remove dev_err() usage after platform_get_irq() (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Add ICL-NNPI support to PMC Core (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Attach using APCI HID "INT33A1" (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: transform Pkg C-state residency from TSC ticks into microseconds (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc: no need to check return value of debugfs_create functions (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Allow to dump debug registers on S0ix failure (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Convert to a platform_driver (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Don't map non-used optional resources (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Apply same width for offset definitions (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Use BIT() macro (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Mark local function static (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: adding error handling (Lenny Szubowicz) [1773793] - [mm] memory_hotplug: cleanup __remove_pages() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: drop local variables in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't check for "all holes" in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: we always have a zone in find_(smallest|biggest)_section_pfn (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: poison memmap in remove_pfn_range_from_zone() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: shrink zones when offlining memory (Christoph von Recklinghausen) [1766491] - [mm] memmap_init: update variable name in memmap_init_zone (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't access uninitialized memmaps in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: fix try_offline_node() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: fix updating the node span (Christoph von Recklinghausen) [1766491] - [mm] hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span() (Christoph von Recklinghausen) [1766491] - [mm] page_owner: don't access uninitialized memmaps when reading /proc/pagetypeinfo (Christoph von Recklinghausen) [1766491] - [mm] memory-failure.c: don't access uninitialized memmaps in memory_failure() (Christoph von Recklinghausen) [1766491] - [fs] proc/page.c: don't access uninitialized memmaps in fs/proc/page.c (Christoph von Recklinghausen) [1766491] - [base] base/memory.c: don't access uninitialized memmaps in soft_offline_page_store() (Christoph von Recklinghausen) [1766491] - [base] base/node.c: simplify unregister_memory_block_under_nodes() (Christoph von Recklinghausen) [1766491] - [kernel] /proc/kpagecount: return 0 for special pages that are never mapped (Christoph von Recklinghausen) [1766491] - [netdrv] fm10k: fix fm10k_get_fault_pf to read correct address (Neil Horman) [1721716] - [netdrv] fm10k: convert NON_Q_VECTORS(hw) into NON_Q_VECTORS (Neil Horman) [1721716] - [netdrv] fm10k: mark unused parameters with __always_unused (Neil Horman) [1721716] - [netdrv] fm10k: cast page_addr to u8 * when incrementing it (Neil Horman) [1721716] - [netdrv] fm10k: explicitly return 0 on success path in function (Neil Horman) [1721716] - [netdrv] fm10k: remove needless initialization of size local variable (Neil Horman) [1721716] - [netdrv] fm10k: remove needless assignment of err local variable (Neil Horman) [1721716] - [netdrv] fm10k: remove unnecessary variable initializer (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of the ring variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the result local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the local msg variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the local i variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the err variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the tx_buffer variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the q_idx local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of local err variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of qv local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of *p local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of the err variable (Neil Horman) [1721716] - [netdrv] fm10k: Use dev_get_drvdata (Neil Horman) [1721716] - [crypto] crypto: qat - Silence smp_processor_id() warning (Neil Horman) [1723573] - [crypto] crypto: qat - use struct_size() helper (Neil Horman) [1723573] - [crypto] crypto: qat - do not offload zero length requests (Neil Horman) [1723573] - [crypto] crypto: qat - return error for block ciphers for invalid requests (Neil Horman) [1723573] - [crypto] crypto: qat - return proper error code in setkey (Neil Horman) [1723573] - [crypto] crypto: qat - fix block size for aes ctr mode (Neil Horman) [1723573] - [crypto] crypto: qat - update iv after encryption or decryption operations (Neil Horman) [1723573] - [crypto] crypto: qat - add check for negative offset in alg precompute function (Neil Horman) [1723573] - [crypto] crypto: qat - remove spin_lock in qat_ablkcipher_setkey (Neil Horman) [1723573] - [crypto] treewide: Add SPDX license identifier - Makefile/Kconfig (Neil Horman) [1723573] - [crypto] crypto: shash - remove shash_desc::flags (Neil Horman) [1723573] - [crypto] crypto: rsa - unimplement sign/verify for raw RSA backends (Neil Horman) [1723573] - [hv] Revert "hv: vmbus: Implement suspend/resume for VSC drivers for hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Ignore the offers when resuming from hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Suspend/resume the vmbus itself for hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Clean up hv_sock channels by force upon suspend" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Suspend after cleaning up hv_sock and sub channels" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Resume after fixing up old primary channels" (Mohammed Gamal) [1788082] - [hv] Revert "vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP" (Mohammed Gamal) [1788082] - [x86] kvm: vmx: Introduce handle_unexpected_vmexit and handle WAITPKG vmexit (Paul Lai) [1494707] - [x86] kvm: vmx: Emulate MSR IA32_UMWAIT_CONTROL (Paul Lai) [1494707] - [x86] kvm: x86: Add support for user wait instructions (Paul Lai) [1494707] - [tools] tools arch x86: Update tools's copy of cpufeatures.h (Paul Lai) [1494707] - [kvm] KVM: x86: expose AVX512_BF16 feature to guest (Paul Lai) [1642539] - [x86] x86/cpufeatures: Enumerate the new AVX512 BFLOAT16 instructions (Paul Lai) [1642539] - [block] rbd: silence bogus uninitialized warning in rbd_object_map_update_finish() (Jeff Layton) [1777961] - [fs] ceph: increment/decrement dio counter on async requests (Jeff Layton) [1777961] - [fs] ceph: take the inode lock before acquiring cap refs (Jeff Layton) [1777961] - [scsi] scsi: lpfc: fix build failure with DEBUGFS disabled (Dick Kennedy) [1784863] - [scsi] Revert "storvsc: setup 1:1 mapping between hardware queue and CPU queue" (Cathy Avery) [1787594] - [tools] perf session: Return error code for perf_session__new() function on failure (Michael Petlan) [1754995] - [tools] perf header: Fix false warning when there are no duplicate cache entries (Michael Petlan) [1776499] - [firmware] efi/memreserve: Register reservations as 'reserved' in /proc/iomem (Bhupesh Sharma) [1772730] - [firmware] efi/memreserve: deal with memreserve entries in unmapped memory (Bhupesh Sharma) [1772730] - [powerpc] powerpc/powernv: Avoid re-registration of imc debugfs directory (Diego Domingos) [1781098] - [powerpc] powerpc/powernv: Return for invalid IMC domain (Diego Domingos) [1781098]- [tools] perf tools: Allow to link with libbpf dynamicaly (Michael Petlan) [1781570] - [tools] perf probe: Fix spelling mistake "addrees" -> "address" (Michael Petlan) [1760227] - [tools] perf probe: Trace a magic number if variable is not found (Michael Petlan) [1760227] - [tools] perf probe: Support DW_AT_const_value constant value (Michael Petlan) [1760227] - [tools] perf probe: Support multiprobe event (Michael Petlan) [1760227] - [tools] perf probe: Generate event name with line number (Michael Petlan) [1760227] - [tools] perf probe: Do not show non representive lines by perf-probe -L (Michael Petlan) [1760227] - [tools] perf probe: Verify given line is a representive line (Michael Petlan) [1760227] - [tools] perf probe: Show correct statement line number by perf probe -l (Michael Petlan) [1760227] - [tools] perf probe: Skip overlapped location on searching variables (Michael Petlan) [1760227] - [tools] perf probe: Fix to show calling lines of inlined functions (Michael Petlan) [1760227] - [tools] perf probe: Filter out instances except for inlined subroutine and subprogram (Michael Petlan) [1760227] - [tools] perf probe: Skip end-of-sequence and non statement lines (Michael Petlan) [1760227] - [tools] perf probe: Return a better scope DIE if there is no best scope (Michael Petlan) [1760227] - [tools] perf probe: Fix to show ranges of variables in functions without entry_pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to show inlined function callsite without entry_pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to list probe event with correct line number (Michael Petlan) [1760227] - [tools] perf probe: Fix to probe an inline function which has no entry pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to probe a function which has no entry pc (Michael Petlan) [1760227] - [tools] perf probe: Fix wrong address verification (Michael Petlan) [1760227] - [tools] perf probe: Fix to show function entry line as probe-able (Michael Petlan) [1760227] - [tools] perf probe: Walk function lines in lexical blocks (Michael Petlan) [1760227] - [tools] perf probe: Fix to find range-only function instance (Michael Petlan) [1760227] - [scsi] qla2xxx: Fix incorrect SFUB length used for Secure Flash Update MB Cmd (Himanshu Madhani) [1782598] - [scsi] qla2xxx: Added support for MPI and PEP regions for ISP28XX (Himanshu Madhani) [1782598] - [scsi] qla2xxx: Correctly retrieve and interpret active flash region (Himanshu Madhani) [1782598] - [nvme] nvme: Add quirk for LiteON CL1 devices running FW 22301111 (Perry Yuan) [1769179] - [nvme] nvme-pci: Save PCI state before putting drive into deepest state (Perry Yuan) [1769180] - [infiniband] rdma/cxgb4: Fix spelling mistake "immedate" -> "immediate" (Vishal Kulkarni) [1725823] - [infiniband] rdma/cxgb4: Fix null pointer dereference on alloc_skb failure (Vishal Kulkarni) [1725823] - [infiniband] iw_cxgb4: Fix qpid leak (Vishal Kulkarni) [1725823] - [netdrv] net/mlx5e: Use correct enum to determine uplink port (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix concurrency issues between config flow and XSK (mohamad meib) [1786113] - [infiniband] IB/mlx5: Fix steering rule of drop and count (mohamad meib) [1786113] - [netdrv] net/mlx5e: ethtool, Fix analysis of speed setting (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix translation of link mode into speed (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix free peer_flow when refcount is 0 (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix freeing flow with kfree() and not kvfree() (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix SFF 8472 eeprom length (mohamad meib) [1786113] - [netdrv] net/mlx5e: Query global pause state before setting prio2buffer (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix TXQ indices to be sequential (mohamad meib) [1786113] - [infiniband] RDMA/mlx5: Fix a race with mlx5_ib_update_xlt on an implicit MR (mohamad meib) [1786113] - [netdrv] ath10k: Fix a NULL-ptr-deref bug in ath10k_usb_alloc_urb_from_pipe (Jarod Wilson) [1783853] {CVE-2019-15099} - [netdrv] revert "[netdrv] ice: mark driver as tech-preview" (Jonathan Toppins) [1783062] - [netdrv] ibmvnic: Fix typo in retry check (Steve Best) [1783775] - [netdrv] ibmveth: Detect unsupported packets before sending to the hypervisor (Steve Best) [1784904] - [netdrv] igc: add additional delay during phy hw reset (David Arcari) [1782824] - [net] bridge: fix regression in br_mdb_fill_info() (Petr Oros) [1783888] - [net] bpf: Emit audit messages upon successful prog load and unload (Jiri Olsa) [1781266] - [fs] fuse: fix leak of fuse_io_priv (Miklos Szeredi) [1777009] - [fs] virtiofs: Check contents of options string (Vivek Goyal) [1783426] - [fs] exec: Fix mem leak in kernel_read_file (Eric Sandeen) [1683731] {CVE-2019-8980} - [lib] sbitmap: only queue kyber's wait callback if not already active (Ming Lei) [1784544] - [fs] CIFS: Fix NULL-pointer dereference in smb2_push_mandatory_locks (Dave Wysochanski) [1788202] - [kernel] ftrace: Check for successful allocation of hash (Desnes Augusto Nunes do Rosario) [1719414] - [kernel] ftrace: Check for empty hash and comment the race with registering probes (Desnes Augusto Nunes do Rosario) [1719414] - [kernel] ftrace: Fix NULL pointer dereference in t_probe_next() (Desnes Augusto Nunes do Rosario) [1719414] - [iommu] vt-d: Allocate reserved region for ISA with correct permission (Jerry Snitselaar) [1778041] - [iommu] set group default domain before creating direct mappings (Jerry Snitselaar) [1778041] - [iommu] vt-d: Fix dmar pte read access not set error (Jerry Snitselaar) [1778041] - [iommu] vt-d: Set ISA bridge reserved region as relaxable (Jerry Snitselaar) [1778041] - [iommu] fix KASAN use-after-free in iommu_insert_resv_region (Auger Eric) [1777014] - [platform] platform/x86: dell-laptop: fix rfkill functionality (Jarod Wilson) [1725878] - [mm] mm/hugetlb: defer freeing of huge pages if in non-task context (Waiman Long) [1780015] - [mm] powerpc/book3s64/hash: Use secondary hash for bolted mapping if the primary is full (Steve Best) [1783159] - [mm] powerpc/pseries: Don't fail hash page table insert for bolted mapping (Steve Best) [1783159] - [powerpc] powerpc/pseries: Don't opencode HPTE_V_BOLTED (Steve Best) [1783159] - [powerpc] powerpc/perf: Disable trace_imc pmu (Steve Best) [1785573] - [powerpc] powerpc/spinlocks: Include correct header for static key (Phil Auld) [1767529] - [powerpc] powerpc/shared: Use static key to detect shared processor (Phil Auld) [1767529] - [powerpc] powerpc/vcpu: Assume dedicated processors as non-preempt (Phil Auld) [1767529] - [arm64] arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space (Jeremy Linton) [1757828] - [arm64] arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419 (Jeremy Linton) [1757828] - [arm64] arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419 (Jeremy Linton) [1757828] - [arm64] arm64: Handle erratum 1418040 as a superset of erratum 1188873 (Jeremy Linton) [1757828] - [arm64] arm64: errata: Add workaround for Cortex-A76 erratum #1463225 (Jeremy Linton) [1757828] - [arm64] arm64: Kconfig: Tidy up errata workaround help text (Jeremy Linton) [1757828] - [arm64] arm64: Apply ARM64_ERRATUM_1188873 to Neoverse-N1 (Jeremy Linton) [1757828] - [arm64] arm64: Add part number for Neoverse N1 (Jeremy Linton) [1757828] - [arm64] arm64: Make ARM64_ERRATUM_1188873 depend on COMPAT (Jeremy Linton) [1757828] - [clocksource] arm64: Restrict ARM64_ERRATUM_1188873 mitigation to AArch32 (Jeremy Linton) [1757828] - [arm64] arm64: arch_timer: avoid unused function warning (Jeremy Linton) [1757828] - [arm64] arm64: Add workaround for Cortex-A76 erratum 1286807 (Jeremy Linton) [1757828]- [kernel] audit: remove redundant condition check in kauditd_thread() (Richard Guy Briggs) [1716002] - [kernel] audit: Report suspicious O_CREAT usage (Richard Guy Briggs) [1716002] - [fs] namei: allow restricted O_CREAT of FIFOs and regular files (Richard Guy Briggs) [1716002] - [kernel] audit_get_nd(): don't unlock parent too early (Richard Guy Briggs) [1716002] - [fs] namei.c: keep track of nd->root refcount status (Richard Guy Briggs) [1716002] - [fs] namei.c: new helper - legitimize_root() (Richard Guy Briggs) [1716002] - [kernel] kill the last users of user_{path, lpath, path_dir}() (Richard Guy Briggs) [1716002] - [kernel] namei.h: get the comments on LOOKUP_... in sync with reality (Richard Guy Briggs) [1716002] - [kernel] kill LOOKUP_NO_EVAL, don't bother including namei.h from audit.h (Richard Guy Briggs) [1716002] - [kernel] audit_inode(): switch to passing AUDIT_INODE_.. (Richard Guy Briggs) [1716002] - [fs] filename_mountpoint(): make LOOKUP_NO_EVAL unconditional there (Richard Guy Briggs) [1716002] - [fs] filename_lookup(): audit_inode() argument is always 0 (Richard Guy Briggs) [1716002] - [kernel] audit: remove the BUG() calls in the audit rule comparison functions (Richard Guy Briggs) [1716002] - [kernel] audit: enforce op for string fields (Richard Guy Briggs) [1716002] - [kernel] audit: deliver signal_info regarless of syscall (Richard Guy Briggs) [1716002] - [fs] fsnotify: fix unlink performance regression (Richard Guy Briggs) [1716002] - [kernel] audit_compare_dname_path(): switch to const struct qstr * (Richard Guy Briggs) [1716002] - [kernel] audit_update_watch(): switch to const struct qstr * (Richard Guy Briggs) [1716002] - [fs] inotify_handle_event(): don't bother with strlen() (Richard Guy Briggs) [1716002] - [kernel] fsnotify: switch send_to_group() and ->handle_event to const struct qstr * (Richard Guy Briggs) [1716002] - [kernel] fsnotify(): switch to passing const struct qstr * for file_name (Richard Guy Briggs) [1716002] - [kernel] switch fsnotify_move() to passing const struct qstr * for old_name (Richard Guy Briggs) [1716002] - [fs] ovl_lookup_real_one(): don't bother with strlen() (Richard Guy Briggs) [1716002] - [kernel] audit: fix a memory leak bug (Richard Guy Briggs) [1716002] - [kernel] audit: purge unnecessary list_empty calls (Richard Guy Briggs) [1716002] - [security] audit: link integrity evm_write_xattrs record to syscall event (Richard Guy Briggs) [1716002] - [csky] syscall_get_arch: add "struct task_struct *" argument (Richard Guy Briggs) [1716002] - [kernel] audit: Make audit_log_cap and audit_copy_inode static (Richard Guy Briggs) [1716002] - [kernel] audit: connect LOGIN record to its syscall record (Richard Guy Briggs) [1716002] - [kernel] audit: fix a memleak caused by auditing load module (Richard Guy Briggs) [1716002] - [kernel] fanotify: check FS_ISDIR flag instead of d_is_dir() (Richard Guy Briggs) [1716002] - [kernel] fsnotify: report FS_ISDIR flag with MOVE_SELF and DELETE_SELF events (Richard Guy Briggs) [1716002] - [kernel] fsnotify: annotate directory entry modification events (Richard Guy Briggs) [1716002] - [kernel] audit: mark expected switch fall-through (Richard Guy Briggs) [1716002] - [kernel] audit: hide auditsc_get_stamp and audit_serial prototypes (Richard Guy Briggs) [1716002] - [tty] audit: join tty records to their syscall (Richard Guy Briggs) [1716002] - [kernel] audit: remove audit_context when CONFIG_ AUDIT and not AUDITSYSCALL (Richard Guy Briggs) [1716002] - [kernel] audit: remove unused actx param from audit_rule_match (Richard Guy Briggs) [1716002] - [kernel] audit: ignore fcaps on umount (Richard Guy Briggs) [1716002] - [kernel] audit: clean up AUDITSYSCALL prototypes and stubs (Richard Guy Briggs) [1716002] - [kernel] audit: more filter PATH records keyed on filesystem magic (Richard Guy Briggs) [1716002] - [kernel] audit: add support for fcaps v3 (Richard Guy Briggs) [1716002] - [kernel] audit: move loginuid and sessionid from CONFIG_AUDITSYSCALL to CONFIG_AUDIT (Richard Guy Briggs) [1716002] - [kernel] audit: add syscall information to CONFIG_CHANGE records (Richard Guy Briggs) [1716002] - [kernel] audit: hand taken context to audit_kill_trees for syscall logging (Richard Guy Briggs) [1716002] - [kernel] audit: give a clue what CONFIG_CHANGE op was involved (Richard Guy Briggs) [1716002] - [kernel] audit: remove duplicated include from audit.c (Richard Guy Briggs) [1716002] - [kernel] audit: shorten PATH cap values when zero (Richard Guy Briggs) [1716002] - [kernel] audit: use current whenever possible (Richard Guy Briggs) [1716002] - [kernel] audit: minimize our use of audit_log_format() (Richard Guy Briggs) [1716002] - [kernel] audit: remove WATCH and TREE config options (Richard Guy Briggs) [1716002] - [kernel] audit: use session_info helper (Richard Guy Briggs) [1716002] - [kernel] audit: localize audit_log_session_info prototype (Richard Guy Briggs) [1716002] - [kernel] audit: Use 'mark' name for fsnotify_mark variables (Richard Guy Briggs) [1716002] - [kernel] audit: Replace chunk attached to mark instead of replacing mark (Richard Guy Briggs) [1716002] - [kernel] audit: Simplify locking around untag_chunk() (Richard Guy Briggs) [1716002] - [kernel] audit: Drop all unused chunk nodes during deletion (Richard Guy Briggs) [1716002] - [kernel] audit: Guarantee forward progress of chunk untagging (Richard Guy Briggs) [1716002] - [kernel] audit: Allocate fsnotify mark independently of chunk (Richard Guy Briggs) [1716002] - [kernel] audit: Provide helper for dropping mark's chunk reference (Richard Guy Briggs) [1716002] - [kernel] audit: Remove pointless check in insert_hash() (Richard Guy Briggs) [1716002] - [kernel] audit: Factor out chunk replacement code (Richard Guy Briggs) [1716002] - [kernel] audit: Make hash table insertion safe against concurrent lookups (Richard Guy Briggs) [1716002] - [kernel] audit: Embed key into chunk (Richard Guy Briggs) [1716002] - [kernel] audit: Fix possible tagging failures (Richard Guy Briggs) [1716002] - [kernel] audit: Fix possible spurious -ENOSPC error (Richard Guy Briggs) [1716002] - [kernel] audit_tree: Remove mark->lock locking (Richard Guy Briggs) [1716002] - [kernel] audit: print empty EXECVE args (Richard Guy Briggs) [1716002] - [security] evm: fix return value check in evm_write_xattrs() (Richard Guy Briggs) [1716002] - [kernel] audit: fix use-after-free in audit_add_watch (Richard Guy Briggs) [1716002] - [kernel] audit: use ktime_get_coarse_real_ts64() for timestamps (Richard Guy Briggs) [1716002] - [kernel] audit: use ktime_get_coarse_ts64() for time access (Richard Guy Briggs) [1716002] - [kernel] audit: simplify audit_enabled check in audit_watch_log_rule_change() (Richard Guy Briggs) [1716002] - [kernel] audit: check audit_enabled in audit_tree_log_remove_rule() (Richard Guy Briggs) [1716002] - [kernel] cred: conditionally declare groups-related functions (Richard Guy Briggs) [1716002] - [kernel] audit: eliminate audit_enabled magic number comparison (Richard Guy Briggs) [1716002] - [kernel] audit: Fix extended comparison of GID/EGID (Richard Guy Briggs) [1716002] - [kernel] audit: tie ANOM_ABEND records to syscall (Richard Guy Briggs) [1716002] - [kernel] audit: tie SECCOMP records to syscall (Richard Guy Briggs) [1716002] - [kernel] audit: allow other filter list types for AUDIT_EXE (Richard Guy Briggs) [1716002] - [documentation] admin guide/pm: Admin guide for intel-speed-select (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Display TRL buckets for just base config level (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Ignore missing config level (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Increment version (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use core count for base-freq mask (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Support platform with limited Intel(R) Speed Select (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use Frequency weight for CLOS (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Make CLOS frequency in MHz (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use mailbox for CLOS_PM_QOS_CONFIG (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Auto mode for CLX (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Correct CLX-N frequency units (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Change display of "avx" to "avx2" (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Extend command set for perf-profile (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement base-freq commands on CascadeLake-N (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement 'perf-profile info' on CascadeLake-N (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement CascadeLake-N help and command functions structures (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add check for CascadeLake-N models (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Make process_command generic (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add int argument to command functions (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Refuse to disable core-power when getting used (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Turbo-freq feature auto mode (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Base-freq feature auto mode (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Remove warning for unused result (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix perf-profile command output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Extend core-power command set (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix some debug prints (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Format get-assoc information (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Allow online/offline based on tdp (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix high priority core mask over count (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Display core count for bucket (Prarit Bhargava) [1766228] - [platform] x86: isst: Allow additional TRL MSRs (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix memory leak (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Output success/failed for command output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Output human readable CPU list (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Change turbo ratio output to maximum turbo frequency (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Switch output to MHz (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Simplify output for turbo-freq and base-freq (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix cpu-count output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix help option typo (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix package typo (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix a read overflow in isst_set_tdp_level_msr() (Prarit Bhargava) [1766228] - [platform] x86: isst: Use dev_get_drvdata (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add .gitignore file (Prarit Bhargava) [1766228] - [tools] tools/power/x86: A tool to validate Intel Speed Select commands (Prarit Bhargava) [1766228] - [platform] x86: isst: Restore state on resume (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select PUNIT MSR interface (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mailbox interface via MSRs (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mailbox interface via PCI (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mmio interface (Prarit Bhargava) [1766228] - [platform] x86: isst: Add IOCTL to Translate Linux logical CPU to PUNIT CPU number (Prarit Bhargava) [1766228] - [platform] x86: isst: Store per CPU information (Prarit Bhargava) [1766228] - [platform] x86: isst: Add common API to register and handle ioctls (Prarit Bhargava) [1766228] - [documentation] platform/x86: isst: Update ioctl-number.txt for Intel Speed Select interface (Prarit Bhargava) [1766228]- [tools] libbpf: Refactor relocation handling (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix call relocation offset calculation bug (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix bpf_object name determination for bpf_object__open_file() (Yauheni Kaliuta) [1772081] - [tools] libbpf: return previous print callback from libbpf_set_print (Yauheni Kaliuta) [1772081] - [tools] libbpf: fix bpf_object__name() to actually return object name (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Make CO-RE reloc test impartial to test_progs flavor (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Add BPF_CORE_READ and BPF_CORE_READ_STR_INTO macro tests (Yauheni Kaliuta) [1772081] - [tools] bpftool: Allow to read btf as raw data (Yauheni Kaliuta) [1772081] - [tools] bpftool: implement "bpftool btf show|list" (Yauheni Kaliuta) [1772081] - [tools] libbpf: add bpf_btf_get_next_id() to cycle through BTF objects (Jiri Olsa) [1772081] - [tools] libbpf: refactor bpf_*_get_next_id() functions (Yauheni Kaliuta) [1772081] - [tools] bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1772081] - [tools] libbpf: attempt to load kernel BTF from sysfs first (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add getter for program size (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add bpf_get_link_xdp_info() function to get more XDP information (Yauheni Kaliuta) [1772081] - [tools] libbpf: Use pr_warn() when printing netlink errors (Yauheni Kaliuta) [1772081] - [tools] libbpf: Propagate EPERM to caller on program load (Yauheni Kaliuta) [1772081] - [tools] libbpf: Unpin auto-pinned maps if loading fails (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add auto-pinning of maps when loading BPF objects (Yauheni Kaliuta) [1772081] - [tools] libbpf: Teach bpf_object__open to guess program types (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add bpf_program__get_{type, expected_attach_type) APIs (Yauheni Kaliuta) [1772081] - [tools] libbpf: Move directory creation into _pin() functions (Yauheni Kaliuta) [1772081] - [tools] libbpf: Store map pin path and status in struct bpf_map (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix error handling in bpf_map__reuse_fd() (Yauheni Kaliuta) [1772081] - [tools] libbpf: Make DECLARE_LIBBPF_OPTS macro strictly a variable declaration (Yauheni Kaliuta) [1772081] - [tools] bpftool: Fix bpftool build by switching to bpf_object__open_file() (Yauheni Kaliuta) [1772081] - [tools] bpf: Rename pr_warning to pr_warn to align with kernel logging (Yauheni Kaliuta) [1772081] - [tools] libbpf: provide more helpful message on uninitialized global var (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Add field existence CO-RE relocs tests (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add support for field existance CO-RE relocation (Yauheni Kaliuta) [1772081] - [tools] libbpf: Update BTF reloc support to latest Clang format (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add BPF_CORE_READ/BPF_CORE_READ_INTO helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: Refactor bpf_object__open APIs to use common opts (Yauheni Kaliuta) [1772081] - [tools] libbpf: Move bpf_{helpers, helper_defs, endian, tracing}.h into libbpf (Jiri Olsa) [1772081] - [tools] uapi/bpf: fix helper docs (Yauheni Kaliuta) [1772081] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1772081] - [uapi] bpf: fix 'struct pt_reg' typo in documentation (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix BTF-defined map's __type macro handling of arrays (Yauheni Kaliuta) [1772081] - [scripts] bpf: Print an error when known types list needs updating (Yauheni Kaliuta) [1772081] - [scripts] bpf: Emit an #error directive known types list needs updating (Yauheni Kaliuta) [1772081] - [scripts] bpf: Fix xdp_md forward declaration typo (Yauheni Kaliuta) [1772081] - [scripts] bpf: teach bpf_helpers_doc.py to dump BPF helper definitions (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Split off tracing-only helpers into bpf_tracing.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: samples/bpf: Split off legacy stuff from bpf_helpers.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Undo GCC-specific bpf_helpers.h changes (Yauheni Kaliuta) [1772081] - [tools] libbpf: auto-generate list of BPF helper definitions (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add bpf-gcc support (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: bpf_tcp_gen_syncookie->bpf_helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: relicense bpf_helpers.h and bpf_endian.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: introduce bpf_cpu_to_be64 and bpf_be64_to_cpu (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Adjust CO-RE reloc tests for new bpf_core_read() macro (Yauheni Kaliuta) [1772081] - [tools] bpf: fix core_reloc.c compilation error (Yauheni Kaliuta) [1772081] - [tools] libbpf: add bpf_object__open_{file, mem} w/ extensible opts (Yauheni Kaliuta) [1772081] - [tools] libbpf: make libbpf.map source of truth for libbpf version (Yauheni Kaliuta) [1772081] - [tools] libbpf: stop enforcing kern_version, populate it for users (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs misc tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs ints tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs ptr-as-array tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs modifiers/typedef tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs enum/ptr/func_proto tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs array tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs nesting tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs struct flavors tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs testing setup (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add BPF_CORE_READ relocatable read macro (Yauheni Kaliuta) [1772081] - [tools] libbpf: implement BPF CO-RE offset relocation algorithm (Yauheni Kaliuta) [1772081] - [tools] libbpf: add .BTF.ext offset relocation section loading (Yauheni Kaliuta) [1772081] - [tools] libbpf: convert libbpf code to use new btf helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: add helpers for working with BTF types (Yauheni Kaliuta) [1772081] - [gpu] drm/i915: Add new CNL PCH ID seen on a CML platform (Lyude Paul) [1771779] - [gpu] drm/amdgpu: add warning for GRBM 1-cycle delay issue in gfx9 (Lyude Paul) [1771779] - [gpu] drm/amdgpu: register gpu instance before fan boost feature enablment (Lyude Paul) [1771779] - [gpu] drm/amd/swsmu: fix smu workload bit map error (Lyude Paul) [1771779] - [gpu] drm/amdgpu: dont schedule jobs while in reset (Lyude Paul) [1771779] - [gpu] drm/i915/userptr: Try to acquire the page lock around set_page_dirty() (Lyude Paul) [1771779] - [gpu] drm/i915/pmu: "Frequency" is reported as accumulated cycles (Lyude Paul) [1771779] - [gpu] drm/i915: Don't oops in dumb_create ioctl if we have no crtcs (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay: issue no PPSMC_MSG_GetCurrPkgPwr on unsupported ASICs (Lyude Paul) [1771779] - [gpu] drm/amdgpu: disable gfxoff on original raven (Lyude Paul) [1771779] - [gpu] drm/amdgpu: disable gfxoff when using register read interface (Lyude Paul) [1771779] - [gpu] revert "drm/i915/ehl: Update MOCS table for EHL" (Lyude Paul) [1771779] - [gpu] drm/i915: update rawclk also on resume (Lyude Paul) [1771779] - [gpu] dc.c:use kzalloc without test (Lyude Paul) [1771779] - [gpu] drm/amd/display: Passive DP->HDMI dongle detection fix (Lyude Paul) [1771779] - [gpu] drm/amd/display: add 50us buffer as WA for pstate switch in active (Lyude Paul) [1771779] - [gpu] drm/amd/display: do not synchronize "drr" displays (Lyude Paul) [1771779] - [gpu] drm/amdgpu: If amdgpu_ib_schedule fails return back the error (Lyude Paul) [1771779] - [gpu] drm/sched: Set error to s_fence if HW job submission failed (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: do not execute 0-sized IBs (v2) (Lyude Paul) [1771779] - [gpu] drm/radeon: fix si_enable_smc_cac() failed issue (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix error handling in amdgpu_bo_list_create (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix potential VM faults (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix SDMA hang when performing VKexample test (Lyude Paul) [1771779] - [gpu] drm/amdgpu/powerplay/vega10: allow undervolting in p7 (Lyude Paul) [1771779] - [gpu] drm/amdgpu/gfx10: update gfx golden settings (Lyude Paul) [1771779] - [gpu] drm/i915: Fix PCH reference clock for FDI on HSW/BDW (Lyude Paul) [1771779] - [gpu] drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix memory leak (Lyude Paul) [1771779] - [gpu] drm/amdgpu: user pages array memory leak fix (Lyude Paul) [1771779] - [gpu] drm/amdgpu/uvd7: fix allocation size in enc ring test (v2) (Lyude Paul) [1771779] - [gpu] drm/amdgpu/uvd6: fix allocation size in enc ring test (v2) (Lyude Paul) [1771779] - [gpu] drm/amdgpu/vcn: fix allocation size in enc ring test (Lyude Paul) [1771779] - [gpu] drm/amdgpu/vce: fix allocation size in enc ring test (Lyude Paul) [1771779] - [gpu] drm/i915: Favor last VBT child device with conflicting AUX ch/DDC pin (Lyude Paul) [1771779] - [gpu] drm/i915/userptr: Never allow userptr into the mappable GGTT (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1 (Lyude Paul) [1771779] - [gpu] drm/ttm: Restore ttm prefaulting (Lyude Paul) [1771779] - [gpu] drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50 (Lyude Paul) [1771779] - [gpu] drm/amd/display: memory leak (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix multiple memory leaks in acp_hw_init (Lyude Paul) [1771779] - [gpu] drm: Clear the fence pointer when writeback job signaled (Lyude Paul) [1771779] - [gpu] drm: Free the writeback_job when it with an empty fb (Lyude Paul) [1771779] - [gpu] drm/i915: Mark contents as dirty on a write fault (Lyude Paul) [1771779] - [gpu] drm/i915: Whitelist COMMON_SLICE_CHICKEN2 (Lyude Paul) [1771779] - [gpu] drm/i915: Bump skl+ max plane width to 5k for linear/x-tiled (Lyude Paul) [1771779] - [gpu] drm/i915: Perform GGTT restore much earlier during resume (Lyude Paul) [1771779] - [gpu] drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Check for valid number of registers to read (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix KFD-related kernel oops on Hawaii (Lyude Paul) [1771779] - [gpu] drm/i915: to make vgpu ppgtt notificaiton as atomic operation (Lyude Paul) [1771779] - [gpu] drm/i915/gvt: update vgpu workload head pointer correctly (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay: change metrics update period from 1ms to 100ms (Lyude Paul) [1771779] - [gpu] drm/nouveau/kms/nv50-: Don't create MSTMs for eDP connectors (Lyude Paul) [1771779] - [gpu] drm/atomic: Take the atomic toys away from X (Lyude Paul) [1771779] - [gpu] drm/atomic: Reject FLIP_ASYNC unconditionally (Lyude Paul) [1771779] - [gpu] drm/i915/dp: Fix dsc bpp calculations, v5 (Lyude Paul) [1771779] - [dma-buf] sw_sync: Synchronize signal vs syncpt free (Lyude Paul) [1771779] - [gpu] drm/amdgpu/si: fix ASIC tests (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix trigger not generated for freesync (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix MPO HUBP underflow with Scatter Gather (Lyude Paul) [1771779] - [gpu] drm/amd/powerpaly: fix navi series custom peak level value error (Lyude Paul) [1771779] - [gpu] drm/amd/display: support spdif (Lyude Paul) [1771779] - [gpu] drm/nouveau/volt: Fix for some cards having 0 maximum voltage (Lyude Paul) [1771779] - [gpu] drm/nouveau/kms/tu102-: disable input lut when input is already FP16 (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: fix number of sdma5 trap irq types for navi1x (Lyude Paul) [1771779] - [gpu] drm/amd/display: Register VUPDATE_NO_LOCK interrupts for DCN2 (Lyude Paul) [1771779] - [gpu] drm/amd/display: reprogram VM config when system resume (Lyude Paul) [1771779] - [gpu] drm/amd/display: Fix frames_to_insert math (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix issue where 252-255 values are clipped (Lyude Paul) [1771779] - [gpu] drm: radeon: Fix a possible null-pointer dereference in radeon_connector_set_property() (Lyude Paul) [1771779] - [gpu] revert "drm/radeon: Fix EEH during kexec" (Lyude Paul) [1771779] - [gpu] drm/amd/display: Use proper enum conversion functions (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix hard hang for S/G display BOs (Lyude Paul) [1771779] - [gpu] drm/panel: check failure cases in the probe func (Lyude Paul) [1771779] - [gpu] drm/bridge: sii902x: fix missing reference to mclk clock (Lyude Paul) [1771779] - [gpu] drm/tinydrm/kconfig: Select BACKLIGHT_CLASS_DEVICE (Lyude Paul) [1771779] - [video] ssd1307fb: Start page range at page_offset (Lyude Paul) [1771779] - [gpu] drm/amd/display: Copy GSL groups when committing a new context (Lyude Paul) [1771779] - [gpu] drm/amd/display: Clear FEC_READY shadow register if DPCD write fails (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix not calling ppsmu to trigger PME (Lyude Paul) [1771779] - [gpu] drm/amd/display: Power-gate all DSCs at driver init time (Lyude Paul) [1771779] - [gpu] drm/amd/display: add monitor patch to add T7 delay (Lyude Paul) [1771779] - [gpu] drm/panel: simple: fix AUO g185han01 horizontal blanking (Lyude Paul) [1771779] - [gpu] drm/vkms: Avoid assigning 0 for possible_crtc (Lyude Paul) [1771779] - [gpu] drm/bridge: tc358767: Increase AUX transfer length limit (Lyude Paul) [1771779] - [gpu] drm/vkms: Fix crc worker races (Lyude Paul) [1771779] - [gpu] drm/amdgpu/display: fix 64 bit divide (Lyude Paul) [1771779] - [gpu] drm/amd/display: Add missing HBM support and raise Vega20's uclk (Lyude Paul) [1771779] - [gpu] drm/amd/display: dce11.x /dce12 update formula input (Lyude Paul) [1771779] - [gpu] drm/amd/display: Restore backlight brightness after system resume (Lyude Paul) [1771779] - [gpu] drm: fix module name in edid_firmware log message (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2) (Lyude Paul) [1771779] - [gpu] drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines (Lyude Paul) [1771779] - [gpu] drm/amd/display: Don't replace the dc_state for fast updates (Lyude Paul) [1771779] - [gpu] drm/amd/display: Skip determining update type for async updates (Lyude Paul) [1771779] - [gpu] drm/amd/display: Allow cursor async updates for framebuffer swaps (Lyude Paul) [1771779] - [include] sk_buff: fix skb_ext_put() and skb_ext_reset() calls (Ivan Vecera) [1779923] - [net] openvswitch: fix flow command message size (Paolo Abeni) [1776765] - [net] netfilter: nf_tables: add SECMARK support (Phil Sutter) [1715851] - [net] netfilter: nf_tables: add requirements for connsecmark support (Phil Sutter) [1715851] - [wireless] mwifiex: pcie: Fix memory leak in mwifiex_pcie_init_evt_ring (Jarod Wilson) [1781534] {CVE-2019-19057} - [tools] selftests/powerpc: Disable basic EEH selftest (Steve Best) [1782232] - [x86] kvm: x86: Remove a spurious export of a static function (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: vmx: use MSR_IA32_TSX_CTRL to hard-disable TSX on guest that lack it (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: vmx: implement MSR_IA32_TSX_CTRL disable RTM functionality (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: implement MSR_IA32_TSX_CTRL effect on CPUID (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: do not modify masked bits of shared MSRs (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: fix presentation of TSX feature in ARCH_CAPABILITIES (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm/x86: Export MDS_NO=0 to guests when TSX is enabled (Paolo Bonzini) [1779553] {CVE-2019-19338} - [fs] cifs: Close open handle after interrupted close (Leif Sahlberg) [1771691] - [fs] cifs: Do not miss cancelled OPEN responses (Leif Sahlberg) [1771691] - [fs] cifs: Fix NULL pointer dereference in mid callback (Leif Sahlberg) [1771691] - [fs] cifs: add a debug macro that prints \\server\share for errors (Leif Sahlberg) [1772630] - [fs] cifs: add new debugging macro cifs_server_dbg (Leif Sahlberg) [1772630]- [netdrv] wireless: fix nl80211 vendor commands (Jarod Wilson) [1776606] - [net] nl80211: fix VENDOR_CMD_RAW_DATA (Jarod Wilson) [1776606] - [netdrv] rt2x00: initialize last_reset (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't consider IV len in A-MSDU (Jarod Wilson) [1776606] - [net] mac80211: fix station inactive_time shortly after boot (Jarod Wilson) [1776606] - [net] mac80211: fix ieee80211_txq_setup_flows() failure path (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: support new API for scan config cmd (Jarod Wilson) [1776606] - [netdrv] mt76: dma: fix buffer unmap with non-linear skbs (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2e: disable pcie_aspm by default (Jarod Wilson) [1776606] - [net] nl80211: fix validation of mesh path nexthop (Jarod Wilson) [1776606] - [net] nl80211: Disallow setting of HT for channel 14 (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Fix problem of too small skb->len (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: 0x2720 is qu and 0x30DC is not (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: add workaround for power gating in integrated 22000 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: handle iwl_mvm_tvqm_enable_txq() error return (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix all 9460 entries for qnj (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc (Jarod Wilson) [1776606] - [netdrv] rtlwifi: Fix potential overflow on P2P code (Jarod Wilson) [1775223 1776606] {CVE-2019-17666} - [netdrv] iwlwifi: pcie: fix merge damage on making QnJ exclusive (Jarod Wilson) [1776606] - [netdrv] ath10k: fix latency issue for QCA988x (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: change qu with jf devices to use qu configuration (Jarod Wilson) [1776606] - [netdrv] iwlwifi: exclude GEO SAR support for 3168 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix memory leaks in iwl_pcie_ctxt_info_gen3_init (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix memory leak in alloc_sgtable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix rb_allocator workqueue allocation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix indexing in command dump for new HW (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix race in sync rx queue notification (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: force single phy init (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix ACPI table revision checks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't access trans_cfg via cfg (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove input-polldev.h header (Jarod Wilson) [1776606] - [net] mac80211: Don't access sk_queue_head->next directly (Jarod Wilson) [1776606] - [net] mac80211: fix scan when operating on DFS channels in ETSI domains (Jarod Wilson) [1776606] - [net] mac80211: accept deauth frames in IBSS mode (Jarod Wilson) [1776606] - [net] cfg80211: fix a bunch of RCU issues in multi-bssid code (Jarod Wilson) [1776606] - [net] nl80211: fix memory leak in nl80211_get_ftm_responder_stats (Jarod Wilson) [1776606] - [net] cfg80211: wext: avoid copying malformed SSIDs (Jarod Wilson) [1778634 1776606] {CVE-2019-17133} - [net] mac80211: Reject malformed SSID elements (Jarod Wilson) [1776606] - [net] mac80211: keep BHs disabled while calling drv_tx_wake_queue() (Jarod Wilson) [1776606] - [net] mac80211: fix txq null pointer dereference (Jarod Wilson) [1776606] - [net] nl80211: fix null pointer dereference (Jarod Wilson) [1776606] - [net] cfg80211: initialize on-stack chandefs (Jarod Wilson) [1776606] - [net] cfg80211: validate SSID/MBSSID element ordering assumption (Jarod Wilson) [1776606] - [net] nl80211: validate beacon head (Jarod Wilson) [1776606] - [net] cfg80211: Purge frame registrations on iftype change (Jarod Wilson) [1776606] - [net] cfg80211: Do not compare with boolean in nl80211_common_reg_change_event (Jarod Wilson) [1776606] - [net] cfg80211: always shut down on HW rfkill (Jarod Wilson) [1776606] - [net] cfg80211: fix boundary value in ieee80211_frequency_to_channel() (Jarod Wilson) [1776606] - [net] cfg80211: add local BSS receive time to survey information (Jarod Wilson) [1776606] - [net] nl80211: add NL80211_CMD_UPDATE_FT_IES to supported commands (Jarod Wilson) [1776606] - [netdrv] wireless: Fix Kconfig indentation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw: don't send GEO_TX_POWER_LIMIT command to FW version 36 (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix mt7615 firmware path definitions (Jarod Wilson) [1776606] - [netdrv] rtw88: configure firmware after HCI started (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: release tx skbs DMAed when stop (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: extract skbs free routine for trx rings (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix build w/o CONFIG_THERMAL (Jarod Wilson) [1776606] - [netdrv] rtw88: report RX power for each antenna (Jarod Wilson) [1776606] - [netdrv] rtw88: fix wrong rx power calculation (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192de: replace _rtl92d_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: replace _rtl92c_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: replace _rtl92c_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtw88: allows to receive AMSDU in AMPDU (Jarod Wilson) [1776606] - [netdrv] rtw88: add dynamic cck pd mechanism (Jarod Wilson) [1776606] - [netdrv] rtw88: move IQK/DPK into phy_calibration (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add SW DPK support (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add FW IQK support (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: Enable interrupt migration (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update pwr_seq to v13 (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update PHY parameter to v38 (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: rtl8192ce: rtl8192de: rtl8723ae: rtl8821ae: Remove some unused bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Remove unused SET_XXX and GET_XXX macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Remove unused GET_XXX and SET_XXX macros (Jarod Wilson) [1776606] - [netdrv] brcmsmac: Use DIV_ROUND_CLOSEST directly to make it readable (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: make array static const and remove redundant assignment (Jarod Wilson) [1776606] - [netdrv] brcmfmac: don't realloc wiphy during PCIe reset (Jarod Wilson) [1776606] - [netdrv] brcmfmac: split brcmf_attach() and brcmf_detach() functions (Jarod Wilson) [1776606] - [netdrv] brcmfmac: move "cfg80211_ops" pointer to another struct (Jarod Wilson) [1776606] - [netdrv] ath10k: fix channel info parsing for non tlv target (Jarod Wilson) [1776606] - [netdrv] ath10k: adjust skb length in ath10k_sdio_mbox_rx_packet (Jarod Wilson) [1776606] - [netdrv] ath10k: free beacon buf later in vdev teardown (Jarod Wilson) [1776606] - [net] mac80211: allow drivers to set max MTU (Jarod Wilson) [1776606] - [net] mac80211: ibss: send deauth when expiring inactive STAs (Jarod Wilson) [1776606] - [net] mac80211: don't check if key is NULL in ieee80211_key_link() (Jarod Wilson) [1776606] - [net] mac80211: clear crypto tx tailroom counter upon keys enable (Jarod Wilson) [1776606] - [net] mac80211: remove unnecessary key condition (Jarod Wilson) [1776606] - [net] mac80211: list features in WEP/TKIP disable in better order (Jarod Wilson) [1776606] - [net] mac80211: vht: add support VHT EXT NSS BW in parsing VHT (Jarod Wilson) [1776606] - [netdrv] ath9k: release allocated buffer if timed out (Jarod Wilson) [1778582 1776606] {CVE-2019-19074} - [netdrv] ath9k_htc: release allocated buffer if timed out (Jarod Wilson) [1778572 1776606] {CVE-2019-19073} - [netdrv] ath9k: Remove unneeded variable to store return value (Jarod Wilson) [1776606] - [netdrv] ath10k: add reorder and change PN check logic for mac80211 (Jarod Wilson) [1776606] - [netdrv] ath10k: add mic bytes for pmf management packet (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use *ph to print small buffer (Jarod Wilson) [1776606] - [netdrv] hostap: use *ph to print small buffer (Jarod Wilson) [1776606] - [netdrv] rtlwifi: Fix file release memory leak (Jarod Wilson) [1776606] - [netdrv] rtw88: fix seq_file memory leak (Jarod Wilson) [1776606] - [netdrv] hostap: remove set but not used variable 'copied' in prism2_io_debug_proc_read (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add "reset" debugfs entry for testing reset (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add stub version of brcmf_debugfs_get_devdir() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: remove iwl_fw_cancel_dumps function (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove periodic trigger (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix dump structs doc (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: add DRAM buffer allocation command (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove apply point, switch to time point API (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add iwl_tlv_array_len() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: don't log un-decrypted frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add support for single antenna diversity (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: handle BAR_FRAME_RELEASE (0xc2) notification (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: drop BA sessions on too many old-SN frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add sta_id to WOWLAN_CONFIG_CMD (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add support for suspend-resume flow for new device generation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix warning iwl-trans.h is included more than once (Jarod Wilson) [1776606] - [netdrv] iwlwifi: always access the trans configuration via trans (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pass the iwl_trans instead of cfg to some functions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add a pointer to the trans_cfg directly in trans (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pass the iwl_config_trans_params when needed (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: set iwl_trans->cfg later in the probe function (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: move some cfg mangling from trans_pcie_alloc to probe (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: use the cfg we passed to iwl_trans_pcie_alloc() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: separate elements from cfg that are needed by trans_alloc (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use regions ops array instead of switch case in dump flow (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: make a single ops struct for paging collect (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move tx fifo data into fw runtime (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use linked list for dump TLVs during dump creation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: separate cfg and dump flows to different modules (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: look for the first supported channel when add/remove phy ctxt (Jarod Wilson) [1776606] - [netdrv] iwlwifi: allocate bigger nvm data in case of UHB (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove unnecessary IWL_DEVICE_AX200_COMMON definition (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: align wrt log prints to the same format (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove debug flow TLV (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: verify debug TLVs at allocation phase (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use function to check if ini dbg mode is on (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove duplicate FW string definitions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: bump FW API to 50 for 22000 series (Jarod Wilson) [1776606] - [netdrv] iwlwifi: api: fix FTM struct documentation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: support per-platform antenna gain (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove check for lq_sta in __iwl_mvm_rs_tx_status() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: simplify the channel switch flow for newer firmware (Jarod Wilson) [1776606] - [netdrv] iwlwifi: stop passing bogus gfp flags arguments to dma_alloc_coherent (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove periphery phy and aux regions handling (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use linked list to store debug TLVs (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: maintain buffer allocations from trans instead of TLVs buffer (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: add debug periphery registers to 9000 device family (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove unused regdb_ptrs allocation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: align dbg tlv functions names to a single format (Jarod Wilson) [1776606] - [netdrv] iwlwifi: scan: don't pass large argument by value (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove pm_runtime completely (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the d0i3 related module parameters (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: remove some more d0i3 code from the transport (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: remove the refs / unrefs from the transport (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the opmode's d0i3 handlers (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove runtime_pm_mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Set w-pointer upon resume according to SN (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: use FW thermal monitoring regardless of CONFIG_THERMAL (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: name magic numbers with enum (Jarod Wilson) [1776606] - [netdrv] iwlwifi: scan: add support for new scan request command version (Jarod Wilson) [1776606] - [netdrv] iwlwifi: LTR updates (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the code under IWLWIFI_PCIE_RTPM (Jarod Wilson) [1776606] - [netdrv] iwlwifi: trans: remove suspending flag (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove CMD_HIGH_PRIO (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove last leftovers of d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove iwl_mvm_update_d0i3_power_mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove d0i3_ap_sta_id (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: iwl_mvm_wowlan_config_key_params is for wowlan only (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove the d0i3 entry/exit flow (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove the tx defer for d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove all the d0i3 references (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: start to remove the code for d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add the skb length to a print (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix scan config command size (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add ldbg config cmd debug print (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: support debug recording suspend resume command (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move debug recording stop from trans to op mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move monitor recording functionality from header file (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove unnecessary forward declarations (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Block 26-tone RU OFDMA transmissions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove redundant condition in iwl_mvm_set_hw_rfkill_state (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Send DQA enable command only if TVL is on (Jarod Wilson) [1776606] - [netdrv] iwlwifi: bump FW API to 49 for 22000 series (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support to read temperature from mcu (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_txwi_to_txp utility routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use devm_platform_ioremap_resource() to simplify code (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: remove unneeded return value on set channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: remove redundant chandef copy (Jarod Wilson) [1776606] - [netdrv] mt76: make mt76_rx_convert static (Jarod Wilson) [1776606] - [netdrv] mt76: remove offchannel check in tx scheduling (Jarod Wilson) [1776606] - [netdrv] mt76: do not send BAR frame on tx aggregation flush stop (Jarod Wilson) [1776606] - [netdrv] mt76: stop rx aggregation on station removal (Jarod Wilson) [1776606] - [netdrv] mt76: dma: reset q->rx_head on rx reset (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: apply calibration-free data from OTP (Jarod Wilson) [1776606] - [netdrv] mt76: add default implementation for mt76_sw_scan/mt76_sw_scan_complete (Jarod Wilson) [1776606] - [netdrv] mt76: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add BIP_CMAC_128 cipher support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: remove unnecessary mcu queue initialization (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_tx_tasklet in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: enable survey support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: move survey_time in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: enable survey support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: enable multi-vif support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: do not copy beacon skb in mt76x02_mac_set_beacon_enable (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: introduce mt76x02_pre_tbtt_enable and mt76x02_beacon_enable macros (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add Smart Carrier Sense support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rework locking scheme for mt7615_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: switch to SPDX tag instead of verbose boilerplate text (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: Add paragraphs to describe the config symbols fully (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: update cw_min/max related settings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add 4 WMM sets support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix watchdog rescheduling in mt7603_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix MT7615_WATCHDOG_TIME definition (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_mmio_read_copy routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add set_key_cmd and mt76_wcid to mt7615_mac_wtbl_set_key signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove wtbl_sec_key definition (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_mac_wtbl_set_key routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add mt7615_mac_wtbl_addr routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: move mt7615_mac_get_key_info in mac.c (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add missing register initialization (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0u: add support to TP-Link T2UHP (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: usb: remove unneeded {put,get}_unaligned (Jarod Wilson) [1776606] - [netdrv] mt76: usb: fix endian in mt76u_copy (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix invalid fallback rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix invalid fallback rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix PS buffering of action frames (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix using VHT STBC rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: fix typo in mt76u_fill_rx_sg (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: sync with mt7603 rate control changes (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: reset rate index/counters on rate table update (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: move mt7615_mcu_set_rates to mac.c (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: enable hardware rate up/down selection (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_mcu_send_ram_firmware routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: always release sem in mt7615_load_patch (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fall back to sw encryption for unsupported ciphers (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: clean up FWDL TXQ during/after firmware upload (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add radar pattern test knob to debugfs (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add csa support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: do not perform txcalibration before cac is complited (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add hw dfs pattern detector support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_regd_notifier (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: warning: restricted __le16 degrades to integer (Jarod Wilson) [1776606] - [netdrv] mt76: round up length on mt76_wr_copy (Jarod Wilson) [1776606] - [netdrv] ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe() (Jarod Wilson) [1776606] - [netdrv] ath6kl: Fix a possible null-pointer dereference in ath6kl_htc_mbox_create() (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: set ackto to max timeout in ath_dynack_reset (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: set max timeout according to channel width (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: properly set last timeout timestamp in ath_dynack_reset (Jarod Wilson) [1776606] - [netdrv] ath9k: dyanck: introduce ath_dynack_set_timeout routine (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: fix possible deadlock in ath_dynack_node_{de}init (Jarod Wilson) [1776606] - [netdrv] ath9k: add loader for AR92XX (and older) pci(e) (Jarod Wilson) [1776606] - [netdrv] brcmfmac: get chip's default RAM info during PCIe setup (Jarod Wilson) [1776606] - [netdrv] brcmfmac: replace strncpy() by strscpy() (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not set IEEE80211_TX_STAT_AMPDU_NO_BACK on tx status (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove redundant assignment to pointer hash (Jarod Wilson) [1776606] - [netdrv] brcm80211: Avoid possible null-pointer dereferences in wlc_phy_radio_init_2056() (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: enable MSI interrupt (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Move a mass of jobs in hw IRQ to soft IRQ (Jarod Wilson) [1776606] - [netdrv] rtw88: remove redundant assignment to pointer debugfs_topdir (Jarod Wilson) [1776606] - [netdrv] rtw88: drop unused rtw_coex_coex_dm_reset() (Jarod Wilson) [1776606] - [netdrv] rtw88: Fix an error message (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Remove some variable initializations (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Fix memory leak when hardware init fails (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove unused variables 'RTL8712_SDIO_EFUSE_TABLE' and 'MAX_PGPKT_SIZE' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Fix value set in descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: fix non-kerneldoc comment in usb.c (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix infinite loop because supported is not being shifted (Jarod Wilson) [1776606] - [netdrv] mt76: Remove dev_err() usage after platform_get_irq() (Jarod Wilson) [1776606] - [net] mac80211: Do not send Layer 2 Update frame before authorization (Jarod Wilson) [1776606] - [netdrv] revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band" (Jarod Wilson) [1776606] - [netdrv] rt2x00: clear up IV's on key removal (Jarod Wilson) [1776606] - [netdrv] iwlwifi: assign directly to iwl_trans->cfg in QuZ detection (Jarod Wilson) [1776606] - [netdrv] mwifiex: Fix three heap overflow at parsing element in cfg80211_ap_settings (Jarod Wilson) [1776244 1775484 1775475 1776606] - [netdrv] mt76: mt76x0e: disable 5GHz band for MT7630E (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0e: don't use hw encryption for MT7630E (Jarod Wilson) [1776606] - [net] nl80211: fill all policy .type entries (Jarod Wilson) [1776606] - [net] cfg80211: Add support to set tx power for a station associated (Jarod Wilson) [1776606] - [net] cfg80211: Fix Extended Key ID key install checks (Jarod Wilson) [1776606] - [net] mac80211: AMPDU handling for rekeys with Extended Key ID (Jarod Wilson) [1776606] - [net] mac80211: Simplify Extended Key ID API (Jarod Wilson) [1776606] - [net] nl80211: require and validate vendor command policy (Jarod Wilson) [1776606] - [net] mac80211: AMPDU handling for Extended Key ID (Jarod Wilson) [1776606] - [net] mac80211: IEEE 802.11 Extended Key ID support (Jarod Wilson) [1776606] - [net] nl80211/cfg80211: Extended Key ID support (Jarod Wilson) [1776606] - [net] nl80211/cfg80211: Specify band specific min RSSI thresholds with sched scan (Jarod Wilson) [1776606] - [net] cfg80211: Use const more consistently in for_each_element macros (Jarod Wilson) [1776606] - [net] nl80211: use for_each_element() in validate_ie_attr() (Jarod Wilson) [1776606] - [net] cfg80211: add peer measurement with FTM initiator API (Jarod Wilson) [1776606] - [net] nl80211: use netlink policy validation function for elements (Jarod Wilson) [1776606] - [net] nl80211: use policy range validation where applicable (Jarod Wilson) [1776606] - [net] cfg80211: support FTM responder configuration/statistics (Jarod Wilson) [1776606] - [net] lib80211: move TKIP handling to ARC4 library code (Jarod Wilson) [1776606] - [net] lib80211: move WEP handling to ARC4 library code (Jarod Wilson) [1776606] - [net] mac80211: move WEP handling to ARC4 library interface (Jarod Wilson) [1776606] - [netdrv] rt2x00: clear IV's on start to fix AP mode regression (Jarod Wilson) [1776606] - [netdrv] rt2800usb: Add new rt2800usb device PLANEX GW-USMicroN (Jarod Wilson) [1776606] - [netdrv] rt2x00: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [netdrv] rt2x00usb: remove unnecessary rx flag checks (Jarod Wilson) [1776606] - [netdrv] rt2x00usb: fix rx queue hang (Jarod Wilson) [1776606] - [netdrv] rt2800: do not enable watchdog by default (Jarod Wilson) [1776606] - [netdrv] rt2x00: add restart hw (Jarod Wilson) [1776606] - [netdrv] rt2800: do not nullify initialization vector data (Jarod Wilson) [1776606] - [netdrv] rt2800: add pre_reset_hw callback (Jarod Wilson) [1776606] - [netdrv] rt2800: initial watchdog implementation (Jarod Wilson) [1776606] - [netdrv] rt2800: add helpers for reading dma done index (Jarod Wilson) [1776606] - [netdrv] rt2x00: allow to specify watchdog interval (Jarod Wilson) [1776606] - [netdrv] rt2x00: add RT3883 support (Jarod Wilson) [1776606] - [netdrv] rt2x00mmio: remove legacy comment (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove not used entry field (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove last_nostatus_check (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: use timer and work for handling tx statuses timeouts (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: fetch tx status changes (Jarod Wilson) [1776606] - [netdrv] rt2800: move txstatus pending routine (Jarod Wilson) [1776606] - [netdrv] rt2800: new flush implementation for SoC devices (Jarod Wilson) [1776606] - [netdrv] rt2800: partially restore old mmio txstatus behaviour (Jarod Wilson) [1776606] - [netdrv] rt2x00: code-style fix in rt2800usb.c (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not print error when queue is full (Jarod Wilson) [1776606] - [netdrv] rt2x00: check number of EPROTO errors (Jarod Wilson) [1776606] - [netdrv] rt2x00: use ratelimited variants dev_warn/dev_err (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not increment sequence number while re-transmitting (Jarod Wilson) [1776606] - [netdrv] rt2800: comment and simplify AGC init for RT6352 (Jarod Wilson) [1776606] - [netdrv] rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620 (Jarod Wilson) [1776606] - [netdrv] rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove confusing AGC register (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove unneeded check (Jarod Wilson) [1776606] - [netdrv] rt2x00: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [netdrv] rt2x00: Work around a firmware bug with shared keys (Jarod Wilson) [1776606] - [netdrv] rt2x00: reduce tx power to nominal level on RT6352 (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt61pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2800lib: mark expected switch fall-throughs (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2500pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2400pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2800: flush and txstatus rework for rt2800mmio (Jarod Wilson) [1776606] - [netdrv] rt2x00: use different txstatus timeouts when flushing (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not check for txstatus timeout every time on tasklet (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: use txdone/txstatus routines from lib (Jarod Wilson) [1776606] - [netdrv] rt2800: move usb specific txdone/txstatus routines to rt2800lib (Jarod Wilson) [1776606] - [netdrv] rt2x00: use simple_read_from_buffer() (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove redundant functions rt2x00mac_sta_{add/remove} (Jarod Wilson) [1776606] - [net] mac80211: Correctly set noencrypt for PAE frames (Jarod Wilson) [1776606] - [net] mac80211: Don't memset RXCB prior to PAE intercept (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: handle switching killer Qu B0 NICs to C0 (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: improve rate probing for devices with static fallback (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix default max throughput rate indexes (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: reduce unnecessary rate probing attempts (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix per-group max throughput rate initialization (Jarod Wilson) [1776606] - [net] nl80211: Add support for EDMG channels (Jarod Wilson) [1776606] - [net] mac80211: fix possible NULL pointerderef in obss pd code (Jarod Wilson) [1776606] - [net] mac80211: add assoc-at support (Jarod Wilson) [1776606] - [uapi] cfg80211: Support assoc-at timer in sta-info (Jarod Wilson) [1776606] - [net] cfg80211: apply same mandatory rate flags for 5GHz and 6GHz (Jarod Wilson) [1776606] - [net] cfg80211: ibss: use 11a mandatory rates for 6GHz band operation (Jarod Wilson) [1776606] - [net] cfg80211: use same IR permissive rules for 6GHz band (Jarod Wilson) [1776606] - [net] cfg80211: add 6GHz in code handling array with NUM_NL80211_BANDS entries (Jarod Wilson) [1776606] - [net] cfg80211: extend ieee80211_operating_class_to_band() for 6GHz (Jarod Wilson) [1776606] - [net] cfg80211: util: add 6GHz channel to freq conversion and vice versa (Jarod Wilson) [1776606] - [net] cfg80211: add 6GHz UNII band definitions (Jarod Wilson) [1776606] - [uapi] nl80211: add 6GHz band definition to enum nl80211_band (Jarod Wilson) [1776606] - [net] revert "cfg80211: fix processing world regdomain when non modular" (Jarod Wilson) [1776606] - [net] mac80211: add missing length field increment when generating Radiotap header (Jarod Wilson) [1776606] - [net] mac80211: 80Mhz was not reported properly when using tx_status_ext (Jarod Wilson) [1776606] - [net] mac80211: fix bad guard when reporting legacy rates (Jarod Wilson) [1776606] - [net] mac80211: fix TX legacy rate reporting when tx_status_ext is used (Jarod Wilson) [1776606] - [net] mac80211: fix possible sta leak (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix recognition of QuZ devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't switch FW to qnj when ax201 is detected (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix the byte count table format for 22560 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Allow multicast data frames only when associated (Jarod Wilson) [1776606] - [netdrv] revert "mwifiex: fix system hang problem after resume" (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtw88: add BT co-existence support (Jarod Wilson) [1776606] - [netdrv] rtw88: enclose c2h cmd handle with mutex (Jarod Wilson) [1776606] - [netdrv] rtw88: allow c2h operation in irq context (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Remove local configuration variable (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl88188ee: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Remove unused GET_XXX and SET_XXX descriptor macros (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: remove set but not used variable 'ip_sel' (Jarod Wilson) [1776606] - [netdrv] brcmsmac: remove three set but not used variables (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove set but not used variable 'dtim_period' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove unneeded function _rtl_dump_channel_map() (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Use dev_get_drvdata (Jarod Wilson) [1776606] - [netdrv] mwifiex: pcie: Use dev_get_drvdata (Jarod Wilson) [1776606] - [netdrv] mwifiex: make error values consistent in mwifiex_update_bss_desc_with_ie() (Jarod Wilson) [1776606] - [netdrv] rtw88: use txpwr_lmt_cfg_pair struct, not arrays (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix compile time assert build errors (Jarod Wilson) [1776606] - [net] mac80211: HE STA disassoc due to QOS NULL not sent (Jarod Wilson) [1776606] - [net] mac80211: allow setting spatial reuse parameters from bss_conf (Jarod Wilson) [1776606] - [net] nl80211: add strict start type (Jarod Wilson) [1776606] - [net] cfg80211: add support for parsing OBBS_PD attributes (Jarod Wilson) [1776606] - [net] mac80211: reject zero MAC address in add station (Jarod Wilson) [1776606] - [net] cfg80211: use parallel_ops for genl (Jarod Wilson) [1776606] - [net] mac80211: add missing null return check from call to ieee80211_get_sband (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix a use-after-free bug in iwl_mvm_tx_tso_segment (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix an out-of-bound access (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't unmap as page memory that was mapped as single (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix version check for GEO_TX_POWER_LIMIT support (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add 3 new IDs for the 9000 series (iwl9260_2ac_160_cfg) (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix possible out-of-bounds read when accessing lq_info (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix frame drop from the reordering buffer (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: replace RS mutex with a spin_lock (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: send LQ command always ASYNC (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix comparison of u32 variable with less than zero (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix locking in delayed GTK setting (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of debugfs ifdef (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move iwl_dbg_tlv_load_bin out of debug override ifdef (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a wrapper around rs_tx_status to handle locks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a loose synchronization of the NSSN across Rx queues (Jarod Wilson) [1776606] - [netdrv] iwlwiif: mvm: refactor iwl_mvm_notify_rx_queue (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a new RSS sync notification for NSSN sync (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: prepare the ground for more RSS notifications (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: don't send GEO_TX_POWER_LIMIT on version < 41 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: avoid races in rate init and rate perform (Jarod Wilson) [1776606] - [net] revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues" (Jarod Wilson) [1776606] - [net] mac80211: add support for the ADDBA extension element (Jarod Wilson) [1776606] - [net] mac80211: propagate HE operation info into bss_conf (Jarod Wilson) [1776606] - [net] cfg80211: fix dfs channels remain DFS_AVAILABLE after ch_switch (Jarod Wilson) [1776606] - [net] cfg80211: fix duplicated scan entries after channel switch (Jarod Wilson) [1776606] - [net] cfg80211: refactor cfg80211_bss_update (Jarod Wilson) [1776606] - [net] mac80211: don't WARN on short WMM parameters from AP (Jarod Wilson) [1776606] - [net] nl80211: Include wiphy address setup in NEW_WIPHY (Jarod Wilson) [1776606] - [net] mac80211: implement HE support for mesh (Jarod Wilson) [1776606] - [net] mac80211: add IEEE80211_KEY_FLAG_GENERATE_MMIE to ieee80211_key_flags (Jarod Wilson) [1776606] - [kernel] mac80211: he: add Spatial Reuse element parsing support (Jarod Wilson) [1776606] - [net] mac80211: add struct ieee80211_tx_status support to ieee80211_add_tx_radiotap_header (Jarod Wilson) [1776606] - [net] {nl, mac}80211: fix interface combinations on crypto controlled devices (Jarod Wilson) [1776606] - [net] mac80211: propagate struct ieee80211_tx_status into ieee80211_tx_monitor() (Jarod Wilson) [1776606] - [net] mac80211: add xmit rate to struct ieee80211_tx_status (Jarod Wilson) [1776606] - [kernel] mac80211: add support for parsing ADDBA_EXT IEs (Jarod Wilson) [1776606] - [net] cfg80211: give all multi-BSSID BSS entries the same timestamp (Jarod Wilson) [1776606] - [net] cfg80211: don't parse MBSSID if transmitting BSS isn't created (Jarod Wilson) [1776606] - [net] cfg80211: clean up cfg80211_inform_single_bss_frame_data() (Jarod Wilson) [1776606] - [net] cfg80211: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: add tx dequeue function for process context (Jarod Wilson) [1776606] - [net] mac80211: run late dequeue late tx handlers without holding fq->lock (Jarod Wilson) [1776606] - [net] lib80211: use crypto API ccm(aes) transform for CCMP processing (Jarod Wilson) [1776606] - [net] mac80211: remove unused and unneeded remove_sta_debugfs callback (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove unused .remove_sta_debugfs callback (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dvm: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: pass the vif to cancel_remain_on_channel (Jarod Wilson) [1776606] - [netdrv] mwifiex: use eth_broadcast_addr() to assign broadcast address (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove assignment to itself (Jarod Wilson) [1776606] - [netdrv] brcmfmac: don't net_ratelimit() CONSOLE messages on firmware crash (Jarod Wilson) [1776606] - [netdrv] rtw88: debug: dump tx power indexes in use (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: fix issue possible condition with no effect (if == else) (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove unnecessary strlcpy() upon obtaining "ver" iovar (Jarod Wilson) [1776606] - [netdrv] brcmfmac: simply remove flowring if bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: avoid firmware commands when bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: clear events in brcmf_fweh_detach() will always fail (Jarod Wilson) [1776606] - [netdrv] brcmfmac: avoid firmware command in brcmf_netdev_open() when bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: change the order of things in brcmf_detach() (Jarod Wilson) [1776606] - [netdrv] revert "brcmfmac: fix NULL pointer derefence during USB disconnect" (Jarod Wilson) [1776606] - [netdrv] brcmfmac: allow 160MHz in custom regulatory rules (Jarod Wilson) [1776606] - [netdrv] brcmfmac: enable DFS_OFFLOAD extended feature if supported (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add 160MHz in chandef_to_chanspec() (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Use DMA sync instead of remapping in RX ISR (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Rearrange the memory usage for skb in RX ISR (Jarod Wilson) [1776606] - [netdrv] rtw88: Fix misuse of GENMASK macro (Jarod Wilson) [1776606] - [netdrv] rtl8xxxu: Fix wifi low signal strength issue of RTL8723BU (Jarod Wilson) [1776606] - [net] mac80211: don't warn about CW params when not using them (Jarod Wilson) [1776606] - [net] mac80211: fix possible memory leak in ieee80211_assign_beacon (Jarod Wilson) [1776606] - [kernel] fix typos and some coding style in comments (Jarod Wilson) [1776606] - [netdrv] ath10k: work around uninitialized vht_pfr variable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: add support for qu c-step devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 9000 and 20000 series (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: clear rfkill_safe_init_done when we start the firmware (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't WARN when calling iwl_get_shared_mem_conf with RF-Kill (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't service an interrupt that was masked (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix RF-Kill interrupt while FW load for gen2 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix ALIVE interrupt handling for gen2 devices w/o MSI-X (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: delay GTK setting in FW in AP mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove MAC_FILTER_IN_11AX for AP mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: debug recording stop and restart command remove (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: don't stop dbg recording before entering D3 from 9000 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix debug monitor stop and restart in ini mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: make the usage of TWT configurable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: support FSEQ TLV even when FMAC is not compiled (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move trans debug fields to a separate struct (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove redundant checking of ini mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: enforce apply point early on buffer allocation tlv (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: fix debug monitor stop and restart delays (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: increase the size of PCI dumps (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Drop large non sta frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Add log information about SAR status (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Add support for SAR South Korea limitation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix module init error paths (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: convert to FW AC when configuring MU EDCA (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: correctly fill the ac array in the iwl_mac_ctx_cmd (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove some unnecessary NULL checks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: d3: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] iwlwifi: lib: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: support adwell HB default APs number api (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove multiple debugfs entries (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: implement dump info collection (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a debugfs entry to set a fixed size AMSDU for all TX packets (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: support debug info TLV (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use different barker for ini dump (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: add consecutive trigger firing support (Jarod Wilson) [1776606] - [kernel] ieee80211: Add a missing extended capability flag definition (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: abort region collection in case the size is 0 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: update CSI API (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: dump headers cleanup (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: allow dump collection in case of an early error (Jarod Wilson) [1776606] - [netdrv] iwlwifi: iwl_mvm_tx_mpdu() must be called with BH disabled (Jarod Wilson) [1776606] - [netdrv] ath10k: pci: remove unnecessary casts (Jarod Wilson) [1776606] - [netdrv] ath10k: remove unnecessary 'out of memory' message (Jarod Wilson) [1776606] - [netdrv] ath10k: destroy sdio workqueue while remove sdio module (Jarod Wilson) [1776606] - [netdrv] ath10k: Move non-fatal warn logs to dbg level for SDIO chip (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix memory leak in qmi (Jarod Wilson) [1776606] - [netdrv] ath10k: add new hw_ops for sdio chip (Jarod Wilson) [1776606] - [netdrv] ath9k: correctly handle short radar pulses (Jarod Wilson) [1776606] - [netdrv] rtw88: refine flow to get tx power index (Jarod Wilson) [1776606] - [netdrv] rtw88: remove all RTW_MAX_POWER_INDEX macro (Jarod Wilson) [1776606] - [netdrv] rtw88: update tx power limit table to RF v20 (Jarod Wilson) [1776606] - [netdrv] rtw88: correct power limit selection (Jarod Wilson) [1776606] - [netdrv] rtw88: choose the lowest as world-wide power limit (Jarod Wilson) [1776606] - [netdrv] rtw88: fix incorrect tx power limit at 5G (Jarod Wilson) [1776606] - [netdrv] rtw88: remove unused variable (Jarod Wilson) [1776606] - [netdrv] rtw88: unify prefixes for tx power setting routine (Jarod Wilson) [1776606] - [netdrv] rtw88: do not use (void *) as argument (Jarod Wilson) [1776606] - [netdrv] rtw88: resolve order of tx power setting routines (Jarod Wilson) [1776606] - [netdrv] ath: fix SPDX tags (Jarod Wilson) [1776606] - [netdrv] ath10k: Add WMI diag fw logging support for WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: add report MIC error for sdio chip (Jarod Wilson) [1776606] - [netdrv] ath10k: add support for controlling tx power to a station (Jarod Wilson) [1776606] - [netdrv] ath10k: Add peer delete response event (Jarod Wilson) [1776606] - [netdrv] ath10k: wait for vdev delete response from firmware (Jarod Wilson) [1776606] - [netdrv] ath10k: fix PCIE device wake up failed (Jarod Wilson) [1776606] - [netdrv] ath10k: fix failure to set multiple fixed rate (Jarod Wilson) [1776606] - [netdrv] ath10k: Change the warning message string (Jarod Wilson) [1776606] - [netdrv] ath10k: fix fw crash by moving chip reset after napi disabled (Jarod Wilson) [1776606] - [netdrv] ath10k: add missing error handling (Jarod Wilson) [1776606] - [netdrv] ath10k: enabling tx stats support over pktlog (Jarod Wilson) [1776606] - [netdrv] ath10k: acquire lock to fix lockdep's warning (Jarod Wilson) [1776606] - [netdrv] ath10k: change firmware file name for UTF mode of SDIO/USB (Jarod Wilson) [1776606] - [netdrv] ath10k: add support for firmware crash recovery on SDIO chip (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wrapper function to ath10k debug (Jarod Wilson) [1776606] - [netdrv] ath10k: add htt_h2t_aggr_cfg_msg op for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add inline wrapper for htt_h2t_aggr_cfg_msg (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix sparse warnings: warning: incorrect type in assignment (different base types) (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: warning: cast from restricted __le16 (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: incorrect type in assignment (different base types) (Jarod Wilson) [1776606] - [netdrv] mt76: move nl80211_dfs_regions in mt76_dev data structure (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove cfg80211_chan_def from mt7615_set_channel signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: update peer's bssid when state transition occurs (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix incorrect settings in mesh mode (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: take into account extPA when configuring tx power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: init per-channel target power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support for per-chain signal strength reporting (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: simplify mt7615_mcu_set_sta_rec routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: improve hardware rate switching configuration (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: rework and fix tx status reporting (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove key check in mt7615_mcu_set_wtbl_key (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove unused variable in mt7615_mcu_set_bcn (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix slow performance when enable encryption (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: enable support for mesh (Jarod Wilson) [1776606] - [netdrv] mt76: Remove set but not used variables 'pid' and 'final_mpdu' (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_get_rate in mt76-module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rearrange locking in mt7615_config (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: init get_txpower mac80211 callback (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add the capability to configure tx power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: select wifi band according to eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support for mtd eeprom parsing (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_insert_ccmp_hdr in mt76-module (Jarod Wilson) [1776606] - [netdrv] mt76: fix setting chan->max_power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix reading target tx power from eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: do not process rx packets if the device is not initialized (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: add debugfs knob to enable/disable edcca (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add static qualifier to mt7615_rx_poll_complete (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rearrange cleanup operations in mt7615_unregister_device (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: stop mac80211 queues before setting the channel (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: run __mt76_mcu_send_msg in mt7615_mcu_send_firmware (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: init mcu_restart function pointer (Jarod Wilson) [1776606] - [netdrv] mt7615: initialize mt76_mcu_ops data structure (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use standard signature for mt7615_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove unused structure in mcu.h (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: do not use function pointers whenever possible (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: unify __mt7615_mcu_set_dev_info and mt7615_mcu_set_dev_info (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove skb_ret from mt7615_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt7615: remove dest from mt7615_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt7615: remove query from mt7615_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove unused parameter in mt7615_mcu_del_wtbl (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: unify mt7615_mcu_add_wtbl_bmc and mt7615_mcu_del_wtbl_bmc (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl_bmc (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove bss_info_convert_vif_type routine (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: simplify __mt7615_mcu_set_sta_rec (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: simplify __mt7615_mcu_set_wtbl (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: Make mt7615_irq_handler static (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: Use after free in mt7615_mcu_set_bcn() (Jarod Wilson) [1776606] - [netdrv] mt76: Fix a signedness bug in mt7615_add_interface() (Jarod Wilson) [1776606] - [netdrv] mt76: move netif_napi_del in mt76_dma_cleanup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use napi polling for tx cleanup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use napi polling for tx cleanup (Jarod Wilson) [1776606] - [netdrv] wireless/mediatek: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: dynamically alloc mcu req in mt7603_mcu_set_eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: enable/disable pre_tbtt_tasklet in mt7603_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: move pre_tbtt_tasklet in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: move beacon_mask in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: move beacon_int in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: report firmware version using ethtool (Jarod Wilson) [1776606] - [netdrv] mt76: fix endianness sparse warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use sizeof instead of sizeof_field (Jarod Wilson) [1776606] - [netdrv] mt76: add mac80211 driver for MT7615 PCIe-based chipsets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: run __mt76_mcu_send_msg in mt7603_mcu_send_firmware (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: init mcu_restart function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: initialize mt76_mcu_ops data structure (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use standard signature for mt7603_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: remove query from mt7603_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix initialization of max rx length (Jarod Wilson) [1776606] - [netdrv] mt76: use macro for sn and seq_ctrl conversion (Jarod Wilson) [1776606] - [netdrv] mt76: add skb pointer to mt76_tx_info (Jarod Wilson) [1776606] - [netdrv] mt76: move mac_work in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: only schedule txqs from the tx tasklet (Jarod Wilson) [1776606] - [netdrv] mt76: move tx tasklet to struct mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: store wcid tx rate info in one u32 reduce locking (Jarod Wilson) [1776606] - [netdrv] mt76: use readl/writel instead of ioread32/iowrite32 (Jarod Wilson) [1776606] - [netdrv] mt76: fix tx power issues (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_free_device routine (Jarod Wilson) [1776606] - [netdrv] mt76: unify set_tim (Jarod Wilson) [1776606] - [netdrv] mt7603: core: do not use magic numbers in mt7603_reg_map (Jarod Wilson) [1776606] - [netdrv] mt7603: remove mt7603_mcu_init routine (Jarod Wilson) [1776606] - [netdrv] mt76: dma: add static qualifier to mt76_dma_tx_queue_skb (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_tx_info data structure (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_sw_queue data structure (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_complete_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_prepare_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_queue_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: dma: move mt76x02_init_{tx, rx}_queue in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mmio: move mt76x02_set_irq_mask in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: send BAR after powersave wakeup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix sequence number assignment (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: add missing initialization for dev->ps_lock (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use the correct hweight8() function (Jarod Wilson) [1776606] - [netdrv] mt76: fix return value check in mt76_wmac_probe() (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: set moredata flag when queueing ps-filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: clear the service period on releasing PS filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: notify mac80211 about buffered frames in ps queue (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix up hardware queue index for PS filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: clear ps filtering mode before releasing buffered frames (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix tx status HT rate validation (Jarod Wilson) [1776606] - [netdrv] mt76: add driver for MT7603E and MT7628/7688 (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0u: do not reset radio on resume (Jarod Wilson) [1776606] - [netdrv] mt7601u: null check the allocation (Jarod Wilson) [1776606] - [netdrv] mt7601u: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: usb: fix rx A-MSDU support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: get rid of {out,in}_max_packet (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: reduce rx memory footprint (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: fix sparse warnings: should it be static? (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: fix RF frontend initialization for external PA (Jarod Wilson) [1776606] - [netdrv] mt76: generalize mt76_get_txpower for 4x4:4 devices (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix tx reordering on rate control probing without a-mpdu (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix tx status reporting issues (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix edcca file permission (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: run mt76x02_edcca_init atomically in mt76_edcca_set (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2: move mutex_lock inside mt76x2_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2u: remove mt76x02_edcca_init in mt76x2u_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: remove enable from mt76x02_edcca_init signature (Jarod Wilson) [1776606] - [netdrv] mt76: move tx_napi in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: remove useless return in mt76x02_resync_beacon_timer (Jarod Wilson) [1776606] - [netdrv] mt7601u: fix possible memory leak when the device is disconnected (Jarod Wilson) [1776606] - [netdrv] mt7601u: do not schedule rx_tasklet when the device has been disconnected (Jarod Wilson) [1776606] - [netdrv] mwifiex: don't disable hardirqs; just softirqs (Jarod Wilson) [1776606] - [netdrv] mwifiex: dispatch/rotate from reorder table atomically (Jarod Wilson) [1776606] - [netdrv] mwifiex: ignore processing invalid command response (Jarod Wilson) [1776606] - [netdrv] mwifiex: update set_mac_address logic (Jarod Wilson) [1776606] - [netdrv] mwifiex: print PCI mmap with pK (Jarod Wilson) [1776606] - [netdrv] mwifiex: drop 'set_consistent_dma_mask' log message (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add support for hr1 RF ID (Jarod Wilson) [1776606] - [netdrv] iwlwifi: change 0x02F0 fw from qu to quz (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 22000 and change wrong structs (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 22000 and fix struct name (Jarod Wilson) [1776606] - [net] mac80211: notify offchannel expire on mgmt_tx (Jarod Wilson) [1776606] - [net] nl80211: send event when CMD_FRAME duration expires (Jarod Wilson) [1776606] - [net] mac80211: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: extend __rate_control_send_low warning (Jarod Wilson) [1776606] - [net] mac80211: fill low rate even for HAS_RATE_CONTROL (Jarod Wilson) [1776606] - [net] mac80211: use STA info in rate_control_send_low() (Jarod Wilson) [1776606] - [net] mac80211: call rate_control_send_low() internally (Jarod Wilson) [1776606] - [net] cfg80211: Add a function to iterate all BSS entries (Jarod Wilson) [1776606] - [net] mac80211: allow turning TWT responder support on and off via netlink (Jarod Wilson) [1776606] - [net] mac80211: dynamically enable the TWT requester support on STA interfaces (Jarod Wilson) [1776606] - [net] mac80211: add ieee80211_get_he_iftype_cap() helper (Jarod Wilson) [1776606] - [uapi] nl80211: add support for SAE authentication offload (Jarod Wilson) [1776606] - [net] nl80211: add WPA3 definition for SAE authentication (Jarod Wilson) [1776606] - [net] nl80211: add NL80211_ATTR_IFINDEX to port authorized event (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: remove redundant assignment to rtstatus (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove redundant assignment to variable k (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove redundant assignment to variable badworden (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: fix error handle when usb probe failed (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: remove unused function exhalbtc_stack_operation_notify (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: Remove set but not used variable 'len' and 'asso_type_v2' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Remove set but not used variables 'cur_txokcnt' and 'b_last_is_cur_rdl_state' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Remove unused GET_XXX and SET_XXX descriptor macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: use le32 to access cckswing tables (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: Fix used uninitialized variables in power tracking (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: make tables to be 'static const' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: Reduce indentation and fix coding style (Jarod Wilson) [1776606] - [netdrv] rtw88: fix typo rtw_writ16_set (Jarod Wilson) [1776606] - [netdrv] rtw88: rsvd page should go though management queue (Jarod Wilson) [1776606] - [netdrv] rtw88: restore DACK results to save time (Jarod Wilson) [1776606] - [netdrv] rtw88: power on again if it was already on (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: use more accurate ofdm fa counting (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: disable rx clock gating before counter reset (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update channel and bandwidth BB setting (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add rf write protection when switching channel (Jarod Wilson) [1776606] - [netdrv] rtw88: add beacon function setting (Jarod Wilson) [1776606] - [netdrv] rtw88: add support for random mac scan (Jarod Wilson) [1776606] - [netdrv] rtw88: add fast xmit support (Jarod Wilson) [1776606] - [netdrv] rtw88: more descriptions about LPS (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: check if queue mapping exceeds size of ac_to_hwq (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: use ieee80211_ac_numbers instead of 0-3 (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use strlcpy() instead of strcpy() (Jarod Wilson) [1776606] - [netdrv] brcmfmac: fix typos in code comments (Jarod Wilson) [1776606] - [netdrv] brcm80211: select WANT_DEV_COREDUMP conditionally for brcmfmac (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use separate Kconfig file for brcmfmac (Jarod Wilson) [1776606] - [netdrv] brcmfmac: switch source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcmsmac: switch phy source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcmutil: switch source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcm80211: switch common header files to using SPDX license identifier (Jarod Wilson) [1776606] - [net] cfg80211: Handle bss expiry during connection (Jarod Wilson) [1776606] - [netdrv] ath10k: Check tx_stats before use it (Jarod Wilson) [1776606] - [netdrv] ath10k: add peer id check in ath10k_peer_find_by_id (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wmi tlv service map for mesh 11s (Jarod Wilson) [1776606] - [netdrv] ath10k: Do not send probe response template for mesh (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wmi tlv vdev subtype for mesh in WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: change swap mail box config for UTF mode of SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix the wrong value of enums for wmi tlv stats id (Jarod Wilson) [1776606] - [netdrv] ath10k: coredump: use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix encoding for protected management frames (Jarod Wilson) [1776606] - [netdrv] ath10k: rx_duration update for fw_stats debugfs entry (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix the tx stats bytes & packets parsing (Jarod Wilson) [1776606] - [netdrv] ath10k: Modify CE4 src buffer entries to 2048 for WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: Move board id and fw version logging to info level (Jarod Wilson) [1776606] - [netdrv] ath10k: Added support to reset HTT stats in debugfs (Jarod Wilson) [1776606] - [netdrv] ath10k: Extended the HTT stats support to retrieve Mu-MIMO related stats (Jarod Wilson) [1776606] - [netdrv] ath: DFS JP domain W56 fixed pulse type 3 RADAR detection (Jarod Wilson) [1776606] - [netdrv] ath9k: drop redundant code in ar9003_hw_set_channel (Jarod Wilson) [1776606] - [netdrv] ath: drop duplicated define (Jarod Wilson) [1776606] - [netdrv] ath9k: Remove some set but not used variables (Jarod Wilson) [1776606] - [netdrv] ath9k: Differentiate between max combined and per chain power (Jarod Wilson) [1776606] - [netdrv] ath9k: Check for errors when reading SREV register (Jarod Wilson) [1776606] - [netdrv] ath9k: Don't trust TX status TID number when reporting airtime (Jarod Wilson) [1776606] - [netdrv] ath6kl: remove redundant check of status != 0 (Jarod Wilson) [1776606] - [netdrv] ath6kl: add some bounds checking (Jarod Wilson) [1776606] - [netdrv] ath6kl: wmi: use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath6kl: debug: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: fix incorrect multicast/broadcast rate setting (Jarod Wilson) [1776606] - [netdrv] ath10k: enable QCA6174 hw3.2 SDIO hardware (Jarod Wilson) [1776606] - [netdrv] ath10k: add fragmentation handler for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add PN replay protection for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add handler for HTT_T2H_MSG_TYPE_SEC_IND event (Jarod Wilson) [1776606] - [netdrv] ath10k: add struct for high latency PN replay protection (Jarod Wilson) [1776606] - [netdrv] ath10k: sdio: add missing error check (Jarod Wilson) [1776606] - [netdrv] ath10k: add initialization of HTC header (Jarod Wilson) [1776606] - [netdrv] ath10k: fix use-after-free on SDIO data frames (Jarod Wilson) [1776606] - [netdrv] ath10k: htt: support MSDU ids with SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: initialise struct ath10k_bus params to zero (Jarod Wilson) [1776606] - [netdrv] ath10k: htt: don't use txdone_fifo with SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: don't disable interrupts in ath10k_sdio_remove() (Jarod Wilson) [1776606] - [netdrv] ath10k: sdio: workaround firmware UART pin configuration bug (Jarod Wilson) [1776606] - [net] cfg80211: Add airtime statistics and settings (Jarod Wilson) [1776606] - [base] depend on HAS_IOMEM for devm_platform_ioremap_resource() (Jarod Wilson) [1776606] - [base] provide devm_platform_ioremap_resource() (Jarod Wilson) [1776606] - [lib] crypto: arc4 - refactor arc4 core code into separate library (Jarod Wilson) [1776606] - [crypto] export arc4 defines (Jarod Wilson) [1776606] - [crypto] arc4 - convert to skcipher API (Jarod Wilson) [1776606] - [kernel] bitfield: add u8 helpers (Jarod Wilson) [1776606]- [md] raid5: need to set STRIPE_HANDLE for batch head (Nigel Croxon) [1774840] - [scsi] lpfc: remove left-over BUILD_NVME defines (Ewan Milne) [1782235] - [block] fix memleak of bio integrity data (Ming Lei) [1779898] - [fs] xfs: attach dquots and reserve quota blocks during unwritten conversion (Carlos Maiolino) [1782094] - [nvme] nvme-fc: fix double-free scenarios on hw queues (Ewan Milne) [1781390] - [tools] power turbostat: Add Cometlake support (David Arcari) [1759661] - [mm] hugetlbfs: take read_lock on i_mmap for PMD sharing (Waiman Long) [1731295] - [documentation] powerpc/pseries: Add documentation for vcpudispatch_stats (Gustavo Duarte) [1723870] - [powerpc] pseries: Protect against hogging the cpu while setting up the stats (Gustavo Duarte) [1723870] - [powerpc] pseries: Provide vcpu dispatch statistics (Gustavo Duarte) [1723870] - [powerpc] pseries: Move mm/book3s64/vphn.c under platforms/pseries/ (Gustavo Duarte) [1723870] - [powerpc] pseries: Generalize hcall_vphn() (Gustavo Duarte) [1723870] - [powerpc] mm: Move book3s64 specifics in subdirectory mm/book3s64 (Gustavo Duarte) [1723870] - [powerpc] pseries: Introduce rwlock to gatekeep DTLB usage (Gustavo Duarte) [1723870] - [powerpc] pseries: Factor out DTL buffer allocation and registration routines (Gustavo Duarte) [1723870] - [powerpc] pseries: Do not save the previous DTL mask value (Gustavo Duarte) [1723870] - [powerpc] pseries: Use macros for referring to the DTL enable mask (Gustavo Duarte) [1723870] - [powerpc] mm: change #include "mmu_decl.h" to (Gustavo Duarte) [1723870] - [fs] devpts_pty_kill(): don't bother with d_delete() (Eric Sandeen) [1772718] - [fs] devpts: always delete dcache dentry-s in dput() (Eric Sandeen) [1772718] - [infiniband] rdma/siw: Fix post_recv QP state locking (Kamal Heib) [1779625] - [infiniband] rdma/siw: Fix SQ/RQ drain logic (Kamal Heib) [1779625] - [infiniband] rdma/siw: Relax from kmap_atomic() use in TX path (Kamal Heib) [1779625] - [netdrv] nfp: flower: cmsg rtnl locks can timeout reify messages (Pablo Cascon) [1729154] - [netdrv] nfp: Drop unnecessary continue in nfp_net_pf_alloc_vnics (Pablo Cascon) [1729154] - [netdrv] nfp: flower: handle neighbour events on internal ports (Pablo Cascon) [1729154] - [netdrv] nfp: flower: prevent ingress block binds on internal ports (Pablo Cascon) [1729154] - [netdrv] nfp: add AMDA0058 boards to firmware list (Pablo Cascon) [1729154] - [netdrv] nfp: no need to check return value of debugfs_create functions (Pablo Cascon) [1729154] - [netdrv] nfp: flower: encode mac indexes with pre-tunnel rule check (Pablo Cascon) [1729154] - [netdrv] nfp: flower: remove offloaded MACs when reprs are applied to OvS bridges (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: verify pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: detect potential pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: push vlan after tunnel in merge (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS set action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS pop action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS push action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: ensure ip protocol is specified for L4 matches (Pablo Cascon) [1729154] - [netdrv] nfp: flower: fix ethernet check on match fields (Pablo Cascon) [1729154] - [netdrv] nfp: ccm: increase message limits (Pablo Cascon) [1729154] - [netdrv] nfp: Use spinlock_t instead of struct spinlock (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add GRE encap action support (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add GRE decap classification support (Pablo Cascon) [1729154] - [netdrv] nfp: flower: rename tunnel related functions in action offload (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add helper functions for tunnel classification (Pablo Cascon) [1729154] - [netdrv] nfp: flower: refactor tunnel key layer calculation (Pablo Cascon) [1729154] - [netdrv] nfp: flower: extend extack messaging for flower match and actions (Pablo Cascon) [1729154] - [netdrv] nfp: flower: use extack messages in flower offload (Pablo Cascon) [1729154] - [netdrv] nfp: flower: check L4 matches on unknown IP protocols (Pablo Cascon) [1729154] - [netdrv] nfp: print a warning when binding VFs to PF driver (Pablo Cascon) [1729154] - [netdrv] nfp: update the old flash error message (Pablo Cascon) [1729154] - [netdrv] nfp: prepare for more TX metadata prepend (Pablo Cascon) [1729154] - [netdrv] nfp: add tls init code (Pablo Cascon) [1729154] - [netdrv] nfp: parse crypto opcode TLV (Pablo Cascon) [1729154] - [netdrv] nfp: add support for sending control messages via mailbox (Pablo Cascon) [1729154] - [netdrv] nfp: parse the mailbox cmsg TLV (Pablo Cascon) [1729154] - [netdrv] nfp: make bar_lock a semaphore (Pablo Cascon) [1729154] - [netdrv] nfp: count all failed TX attempts as errors (Pablo Cascon) [1729154] - [netdrv] nfp: ensure skb network header is set for packet redirect (Pablo Cascon) [1728773] - [netdrv] nfp: reintroduce ndo_get_port_parent_id for representor ports (Pablo Cascon) [1728773] - [netdrv] nfp: implement PCI driver shutdown callback (Pablo Cascon) [1728773] - [netdrv] nfp: add SR-IOV trusted VF support (Pablo Cascon) [1728773] - [netdrv] nfp: split out common control message handling code (Pablo Cascon) [1728773] - [netdrv] nfp: move vNIC reset before netdev init (Pablo Cascon) [1728773] - [netdrv] nfp: add a mutex lock for the vNIC ctrl BAR (Pablo Cascon) [1728773] - [netdrv] nfp: opportunistically poll for reconfig result (Pablo Cascon) [1728773] - [netdrv] nfp: remove ndo_get_port_parent_id implementation (Pablo Cascon) [1728773] - [netdrv] nfp: pass switch ID through devlink_port_attrs_set() (Pablo Cascon) [1728773] - [netdrv] nfp: implement ethtool get module EEPROM (Pablo Cascon) [1728773] - [netdrv] nfp: nsp: implement read SFF module EEPROM (Pablo Cascon) [1728773] - [netdrv] nfp: do not handle nn->port defined case in nfp_net_get_phys_port_name() (Pablo Cascon) [1728773] - [netdrv] nfp: register devlink port before netdev (Pablo Cascon) [1728773] - [netdrv] nfp: remove defines for unused control bits (Pablo Cascon) [1728773] - [netdrv] replace ndo_get_devlink with ndo_get_devlink_port (Pablo Cascon) [1728773] - [netdrv] nfp: add .ndo_get_devlink (Pablo Cascon) [1728773] - [netdrv] nfp: flower: add rcu locks when accessing netdev for tunnels (Pablo Cascon) [1728773] - [netdrv] nfp: flower: add qos offload stats request and reply (Pablo Cascon) [1728773] - [netdrv] nfp: flower: fix size_t compile warning (Pablo Cascon) [1728773] - [netdrv] nfp: flower: fix implicit fallthrough warning (Pablo Cascon) [1728773] - [netdrv] nfp: flower: offload merge flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: support stats update for merge flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: generate merge flow rule (Pablo Cascon) [1728773] - [netdrv] nfp: flower: validate merge hint flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: handle merge hint messages (Pablo Cascon) [1728773] - [netdrv] nfp: flower: get flows by host context (Pablo Cascon) [1728773] - [netdrv] nfp: flower: allow tunnels to output to internal port (Pablo Cascon) [1728773] - [netdrv] nfp: flower: support fallback packets from internal ports (Pablo Cascon) [1728773] - [netdrv] nfp: allow fallback packets from non-reprs (Pablo Cascon) [1728773] - [netdrv] nfp: flower: allow offloading of matches on 'internal' ports (Pablo Cascon) [1728773] - [netdrv] nfp: flower: turn on recirc and merge hint support in firmware (Pablo Cascon) [1728773] - [netdrv] nfp: flower: reduce action list size by coalescing mangle actions (Pablo Cascon) [1728773] - [fs] xfs: properly serialise fallocate against AIO+DIO (Eric Sandeen) [1765547] - [fs] xfs: fix attr leaf header freemap.size underflow (Brian Foster) [1728989] - [mm] maintain randomization of page free lists (Rafael Aquini) [1620349] - [mm] move buddy list manipulations into helpers (Rafael Aquini) [1620349] - [mm] shuffle initial free memory to improve memory-side-cache utilization (Rafael Aquini) [1620349] - [powerpc] kvm: ppc: book3s hv: Flush link stack on guest exit to host kernel (Gustavo Duarte) [1777686] - [powerpc] book3s64: Fix link stack flush on context switch (Gustavo Duarte) [1777686] - [powerpc] 64s: support nospectre_v2 cmdline option (Gustavo Duarte) [1777686] - [powerpc] fsl: Update Spectre v2 reporting (Gustavo Duarte) [1777686] - [powerpc] fsl: Add nospectre_v2 command line argument (Gustavo Duarte) [1777686] - [powerpc] fsl: Fix spectre_v2 mitigations reporting (Gustavo Duarte) [1777686] - [powerpc] 64: Make meltdown reporting Book3S 64 specific (Gustavo Duarte) [1777686] - [powerpc] 64: Disable the speculation barrier from the command line (Gustavo Duarte) [1777686] - [x86] kprobes: Avoid kretprobe recursion bug (Jiri Olsa) [1779235] - [x86] kprobes: Verify stack frame on kretprobe (Jiri Olsa) [1779235]- [fs] iomap: Fix pipe page leakage during splicing (Andreas Grunbacher) [1622634] - [fs] iomap: fix return value of iomap_dio_bio_actor on 32bit systems (Andreas Grunbacher) [1622634] - [fs] iomap: iomap_bmap should check iomap_apply return value (Andreas Grunbacher) [1622634] - [fs] iomap: Fix overflow in iomap_page_mkwrite (Andreas Grunbacher) [1622634] - [fs] splice: only read in as much information as there is pipe buffer space (Andreas Grunbacher) [1622634] - [fs] gfs2: Always mark inode dirty in fallocate (Andreas Grunbacher) [1622634] - [fs] dax: Fix pmd vs pte conflict detection (Jeff Moyer) [1777250] - [fs] xfs: move local to extent inode logging into bmap helper (Brian Foster) [1737677] - [fs] xfs: remove broken error handling on failed attr sf to leaf change (Brian Foster) [1737677] - [fs] xfs: log the inode on directory sf to block format change (Brian Foster) [1737677] - [block] bfq: deschedule empty bfq_queues not referred by any process (Ming Lei) [1773831] - [scsi] revert "scsi: qla2xxx: Fix memory leak when sending I/O fails" (Himanshu Madhani) [1759275] - [infiniband] rdma/iw_cxgb4: Report correct port speed/width (Vishal Kulkarni) [1757806] - [infiniband] rdma/iw_cxgb4: fix SRQ access from dump_qp() (Vishal Kulkarni) [1779997] - [net] nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds (Vladis Dronov) [1778898] - [atm] iphase: Fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [x86] tls: Fix possible spectre-v1 in do_get_thread_area() (Vladis Dronov) [1778898] - [x86] ptrace: Fix possible spectre-v1 in ptrace_get_debugreg() (Vladis Dronov) [1778898] - [net] atm: Fix potential Spectre v1 vulnerabilities (Vladis Dronov) [1778898] - [powerpc] ptrace: Mitigate potential Spectre v1 (Vladis Dronov) [1778898] - [char] applicom: Fix potential Spectre v1 vulnerabilities (Vladis Dronov) [1778898] - [char] mwave: fix potential Spectre v1 vulnerability (Vladis Dronov) [1778898] - [misc] misc/sgi-gru: fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [usb] gadget: storage: Fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [misc] hmc6352: fix potential Spectre v1 (Vladis Dronov) [1778898] - [s390] qeth: ensure linear access to packet headers (Philipp Rudo) [1781085] - [s390] qeth: guard against runt packets (Philipp Rudo) [1781085] - [s390] qeth: handle skb allocation error gracefully (Philipp Rudo) [1781085] - [s390] qeth: drop unwanted packets earlier in RX path (Philipp Rudo) [1781085] - [s390] qeth: support per-frame invalidation (Philipp Rudo) [1781085] - [s390] qeth: gather more detailed RX dropped/error statistics (Philipp Rudo) [1781085] - [s390] Mark expected switch fall-throughs (Philipp Rudo) [1781085] - [sched] fair: Scale bandwidth quota and period without losing quota/period ratio precision (Phil Auld) [1706247] - [sched] fair: Fix -Wunused-but-set-variable warnings (Phil Auld) [1706247] - [sched] fair: Fix low cpu usage with high throttling by removing expiration of cpu-local slices (Phil Auld) [1706247] - [kernel] sched/core: Remove double update_max_interval() call on CPU startup (Phil Auld) [1757535] - [kernel] sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr() (Phil Auld) [1757535] - [kernel] sched/fair: Don't assign runtime for throttled cfs_rq (Phil Auld) [1757535] - [kernel] cpufreq: schedutil: Don't skip freq update when limits change (Phil Auld) [1757535] - [kernel] sched/deadline: Fix double accounting of rq/running bw in push & pull (Phil Auld) [1757535] - [kernel] sched/fair: Fix imbalance due to CPU affinity (Phil Auld) [1757535] - [kernel] sched/fair: Use RCU accessors consistently for ->numa_group (Phil Auld) [1757535] - [kernel] sched/fair: Don't free p->numa_faults with concurrent readers (Phil Auld) [1757535] - [kernel] sched/fair: Rename weighted_cpuload() to cpu_runnable_load() (Phil Auld) [1757535] - [kernel] sched/topology: Remove unused 'sd' parameter from arch_scale_cpu_capacity() (Phil Auld) [1757535] - [kernel] sched/fair: Don't push cfs_bandwith slack timers forward (Phil Auld) [1757535] - [documentation] sched/fair: Fix "runnable_avg_yN_inv" not used warnings (Phil Auld) [1757535] - [kernel] sched/fair: Clean up definition of NOHZ blocked load functions (Phil Auld) [1757535] - [kernel] sched/core: Add __sched tag for io_schedule() (Phil Auld) [1757535] - [kernel] sched/fair: Remove sgs->sum_weighted_load (Phil Auld) [1757535] - [kernel] sched/core: Remove sd->*_idx (Phil Auld) [1757535] - [kernel] sched/core: Remove rq->cpu_load[] (Phil Auld) [1757535] - [kernel] sched/debug: Remove sd->*_idx range on sysctl (Phil Auld) [1757535] - [kernel] sched/fair: Replace source_load() & target_load() with weighted_cpuload() (Phil Auld) [1757535] - [kernel] sched/fair: Remove the rq->cpu_load[] update code (Phil Auld) [1757535] - [kernel] sched/fair: Remove rq->load (Phil Auld) [1757535] - [kernel] sched/core: Unify p->on_rq updates (Phil Auld) [1757535] - [kernel] sched/core: Remove ttwu_activate() (Phil Auld) [1757535] - [kernel] sched/cpufreq: Fix 32-bit math overflow (Phil Auld) [1757535] - [kernel] sched/fair: Update scale invariance of PELT (Phil Auld) [1757535] - [kernel] sched/pelt: Skip updating util_est when utilization is higher than CPU's capacity (Phil Auld) [1757535] - [kernel] sched/fair: Move the rq_of() helper function (Phil Auld) [1757535] - [kernel] sched/core: Use READ_ONCE()/WRITE_ONCE() in move_queued_task()/task_rq_lock() (Phil Auld) [1757535] - [kernel] sched/numa: Remove unused numa_stats::nr_running field (Phil Auld) [1757535] - [kernel] sched/fair: Add lsub_positive() and use it consistently (Phil Auld) [1706247 1757535] - [kernel] sched/fair: Mask UTIL_AVG_UNCHANGED usages (Phil Auld) [1706247 1757535] - [cpuidle] teo: Avoid using "early hits" incorrectly (Al Stone) [1725618] - [cpuidle] teo: Fix "early hits" handling for disabled idle states (Al Stone) [1725618] - [cpuidle] teo: Consider hits and misses metrics of disabled states (Al Stone) [1725618] - [cpuidle] teo: Rename local variable in teo_select() (Al Stone) [1725618] - [cpuidle] teo: Ignore disabled idle states that are too deep (Al Stone) [1725618] - [cpuidle] teo: Get rid of redundant check in teo_update() (Al Stone) [1725618] - [cpuidle] teo: Allow tick to be stopped if PM QoS is used (Al Stone) [1725618] - [cpuidle] governors: unify last_state_idx (Al Stone) [1725618] - [powerpc] powernv/cpuidle: Fix idle states all being marked invalid (Al Stone) [1725618] - [cpuidle] menu: Avoid overflows when computing variance (Al Stone) [1725618] - [cpuidle] dt: bail out if the idle-state DT node is not compatible (Al Stone) [1725618] - [kernel] cpuidle: use BIT() for idle state flags and remove CPUIDLE_DRIVER_FLAGS_MASK (Al Stone) [1725618] - [cpuidle] New timer events oriented governor for tickless systems (Al Stone) [1725618] - [cpuidle] Add 'above' and 'below' idle state metrics (Al Stone) [1725618] - [cpuidle] big.little: fix refcount leak (Al Stone) [1725618] - [documentation] documentation: admin-guide: pm: Add cpuidle document (Al Stone) [1725618] - [cpuidle] powerpc/pseries/cpuidle: Fix preempt warning (Al Stone) [1725618] - [cpuidle] arm: cpuidle: Convert to use cpuidle_register|unregister() (Al Stone) [1725618] - [cpuidle] arm: cpuidle: Don't register the driver when back-end init returns -ENXIO (Al Stone) [1725618] - [cpuidle] menu: Remove get_loadavg() from the performance multiplier (Al Stone) [1725618] - [kernel] sched: Factor out nr_iowait and nr_iowait_cpu (Al Stone) [1725618] - [kernel] sched/core: Fix comment regarding nr_iowait_cpu() and get_iowait_load() (Al Stone) [1725618] - [cpuidle] menu: Avoid computations when result will be discarded (Al Stone) [1725618] - [cpuidle] menu: Drop redundant comparison (Al Stone) [1725618] - [cpuidle] menu: Simplify checks related to the polling state (Al Stone) [1725618] - [cpuidle] menu: Move the latency_req == 0 special case check (Al Stone) [1725618] - [cpuidle] menu: Avoid computations for very close timers (Al Stone) [1725618] - [cpuidle] menu: Do not update last_state_idx in menu_select() (Al Stone) [1725618] - [cpuidle] menu: Get rid of first_idx from menu_select() (Al Stone) [1725618] - [cpuidle] menu: Compute first_idx when latency_req is known (Al Stone) [1725618] - [cpuidle] menu: Replace data->predicted_us with local variable (Al Stone) [1725618] - [cpuidle] enter_state: Don't needlessly calculate diff time (Al Stone) [1725618] - [kernel] cpuidle: Remove unnecessary wrapper cpuidle_get_last_residency() (Al Stone) [1725618] - [cpuidle] menu: Update stale polling override comment (Al Stone) [1725618] - [cpuidle] menu: Fix white space (Al Stone) [1725618] - [cpuidle] powernv/cpuidle: Use parsed device tree values for cpuidle_init (Al Stone) [1725618] - [powerpc] powernv/cpuidle: Parse dt idle properties into global structure (Al Stone) [1725618] - [cpuidle] arm: cpuidle: silence error on driver registration failure (Al Stone) [1725618]- [documentation] docs: admin-guide: Remove threads-max auto-tuning (Joe Lawrence) [1771270] - [documentation] docs: admin-guide: Fix min value of threads-max in kernel.rst (Joe Lawrence) [1771270] - [kernel] sysctl.c: do not override max_threads provided by userspace (Joe Lawrence) [1771270] - [fs] ext4: fix integer overflow when calculating commit interval (Lukas Czerner) [1775166] - [fs] ext4: fix punch hole for inline_data file systems (Lukas Czerner) [1775166] - [fs] ext4: fix warning inside ext4_convert_unwritten_extents_endio (Lukas Czerner) [1775166] - [fs] ext4: set error return correctly when ext4_htree_store_dirent fails (Lukas Czerner) [1775166] - [fs] ext4: fix warning when turn on dioread_nolock and inline_data (Lukas Czerner) [1775166] - [fs] ext4: use jbd2_inode dirty range scoping (Lukas Czerner) [1775166] - [fs] jbd2: introduce jbd2_inode dirty range scoping (Lukas Czerner) [1775166] - [mm] add filemap_fdatawait_range_keep_errors() (Lukas Czerner) [1775166] - [fs] ext4: enforce the immutable flag on open files (Lukas Czerner) [1775166] - [fs] ext4: don't allow any modifications to an immutable file (Lukas Czerner) [1775166] - [fs] jbd2: fix typo in comment of journal_submit_inode_data_buffers (Lukas Czerner) [1775166] - [fs] jbd2: fix some print format mistakes (Lukas Czerner) [1775166] - [fs] ext4: do not delete unlinked inode from orphan list on failed truncate (Lukas Czerner) [1775166] - [fs] ext4: wait for outstanding dio during truncate in nojournal mode (Lukas Czerner) [1775166] - [fs] ext4: don't perform block validity checks on the journal inode (Lukas Czerner) [1775166] - [fs] ext4: fix block validity checks for journal inodes using indirect blocks (Lukas Czerner) [1775166] - [fs] ext4: fix miscellaneous sparse warnings (Lukas Czerner) [1775166] - [fs] jbd2: fix potential double free (Lukas Czerner) [1775166] - [fs] quota: fix condition for resetting time limit in do_set_dqblk() (Lukas Czerner) [1778119] - [fs] quota: honor quota type in Q_XGETQSTAT[V] calls (Lukas Czerner) [1778119] - [fs] quota: fix a problem about transfer quota (Lukas Czerner) [1778119] - [fs] quota: add dqi_dirty_list description to comment of Dquot List Management (Lukas Czerner) [1778119] - [fs] quota: check time limit when back out space/inode change (Lukas Czerner) [1778119] - [fs] quota: fix wrong indentation (Lukas Czerner) [1778119] - [fs] quota: remove trailing whitespaces (Lukas Czerner) [1778119] - [fs] quota: code cleanup for __dquot_alloc_space() (Lukas Czerner) [1778119] - [fs] quota: Lock s_umount in exclusive mode for Q_XQUOTA{ON, OFF} quotactls (Lukas Czerner) [1778119] - [fs] quota: Replace XQM_MAXQUOTAS usage with MAXQUOTAS (Lukas Czerner) [1778119] - [hv] vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Resume after fixing up old primary channels (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Suspend after cleaning up hv_sock and sub channels (Mohammed Gamal) [1774675] - [kernel] hv: vmbus: Add a helper function is_sub_channel() (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Clean up hv_sock channels by force upon suspend (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Suspend/resume the vmbus itself for hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Ignore the offers when resuming from hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Implement suspend/resume for VSC drivers for hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Fix virt_to_hvpfn() for X86_PAE (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Remove the unused "tsc_page" from struct hv_context (Mohammed Gamal) [1774675] - [hv] tools: hv: Use the correct style for SPDX License Identifier (Mohammed Gamal) [1774675] - [hv] hv_balloon: Reorganize the probe function (Mohammed Gamal) [1774675] - [hv] hv_balloon: Use a static page for the balloon_up send buffer (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Replace page definition with Hyper-V specific one (Mohammed Gamal) [1774675] - [hv] hv: Add a module description line to the hv_vmbus driver (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Fix race condition with new ring_buffer_info mutex (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Set ring_info field to 0 and remove memset (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Refactor chan->state if statement (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Expose monitor data only when monitor pages are used (Mohammed Gamal) [1774675] - [netdrv] hv_netvsc: Fix error handling in netvsc_attach() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix error handling in netvsc_set_features() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Sync offloading features to VF NIC (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Allow scatter-gather feature to be tunable (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix a warning of suspicious RCU usage (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix extra rcu_read_unlock in netvsc_recv_callback() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Set probe mode to sync (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: fix race that may miss tx queue wakeup (Mohammed Gamal) [1774687] - [netdrv] nfp: bpf: fix latency bug when updating stack index register (Pablo Cascon) [1729156] - [netdrv] nfp: bpf: eliminate zero extension code-gen (Pablo Cascon) [1729156] - [netdrv] bnxt_en: Call bnxt_ulp_stop()/bnxt_ulp_start() during suspend/resume (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Call bnxt_ulp_stop()/bnxt_ulp_start() during error recovery (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Improve bnxt_ulp_stop()/bnxt_ulp_start() call sequence (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: flow_offload: offload tunnel decap rules via indirect callbacks (Jonathan Toppins) [1773724] - [netdrv] bnxt: Avoid logging an unnecessary message when a flow can't be offloaded (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Add support to collect crash dump via ethtool (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Add support to invoke OP-TEE API to reset firmware (Jonathan Toppins) [1773724] - [netdrv] broadcom: bnxt: Fix use true/false for bool (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Avoid disabling pci device in bnxt_remove_one() for already disabled device (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Minor formatting changes in FW devlink_health_reporter (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Adjust the time to wait before polling firmware readiness (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Fix devlink NVRAM related byte order related issues (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Fix the size of devlink MSIX parameters (Jonathan Toppins) [1773724] - [nvme] Fix parsing of ANA log page (Ewan Milne) [1769028] - [nvme] nvme-multipath: fix ana log nsid lookup when nsid is not found (Ewan Milne) [1769028] - [nvme] nvme-multipath: fix possible I/O hang when paths are updated (Ewan Milne) [1769028] - [nvme] revert "nvme: update node paths after adding new path" (Ewan Milne) [1769028] - [netdrv] mlx5: Update the list of the PCI supported devices (Mohammad Heib) [1776921] - [netdrv] mlx5: Fix auto group size calculation (Mohammad Heib) [1776921] - [netdrv] mlx5e: Do not use non-EXT link modes in EXT mode (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix set vf link state error flow (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Limit STE hash table enlarge based on bytemask (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix invalid EQ vector number on CQ creation (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Skip rehash for tables with byte mask zero (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix error flow cleanup in mlx5e_tc_tun_create_header_ipv4/6 (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix matcher builders select check (Mohammad Heib) [1776921] - [netdrv] mlx5: Read num_vfs before disabling SR-IOV (Mohammad Heib) [1776921] - [netdrv] mlx5: Clear VF's configuration on disabling SRIOV (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix memory leak during rule creation (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix memory leak in modify action destroy (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix eswitch debug print of max fdb flow (Mohammad Heib) [1776921] - [netdrv] mlx5: LAG, Use affinity type enumerators (Mohammad Heib) [1776921] - [netdrv] mlx5: E-switch, Enable metadata on own vport (Mohammad Heib) [1776921] - [netdrv] mlx5: Correct comment for legacy fields (Mohammad Heib) [1776921] - [netdrv] mlx5: Fixed a typo in a comment in esw_del_uc_addr() (Mohammad Heib) [1776921] - [netdrv] mlx5: Fix rtable reference leak (Mohammad Heib) [1776921] - [netdrv] mlx5: fix a -Wstringop-truncation warning (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix a race with XSKICOSQ in XSK wakeup flow (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix wrong max num channels indication (Mohammad Heib) [1776921] - [netdrv] mlx5e: Add XSK zero-copy support (Mohammad Heib) [1776921]- [mm] memremap: drop unused SECTION_SIZE and SECTION_MASK (Don Dutile) [1754737] - [mm] memremap: Fix reuse of pgmap instances with internal references (Don Dutile) [1754737] - [mm] memunmap: don't access uninitialized memmap in memunmap_pages() (Don Dutile) [1754737] - [mm] memremap: move from kernel/ to mm/ (Don Dutile) [1754737] - [kernel] memremap: provide an optional internal refcount in struct dev_pagemap (Don Dutile) [1754737] - [kernel] memremap: replace the altmap_valid field with a PGMAP_ALTMAP_VALID flag (Don Dutile) [1754737] - [mm] memremap: remove the data field in struct dev_pagemap (Don Dutile) [1754737] - [kernel] memremap: add a migrate_to_ram method to struct dev_pagemap_ops (Don Dutile) [1754737] - [kernel] memremap: lift the devmap_enable manipulation into devm_memremap_pages (Don Dutile) [1754737] - [nvdimm] memremap: pass a struct dev_pagemap to ->kill and ->cleanup (Don Dutile) [1754737] - [kernel] memremap: move dev_pagemap callbacks into a separate structure (Don Dutile) [1754737] - [kernel] memremap: validate the pagemap type passed to devm_memremap_pages (Don Dutile) [1754737] - [mm] remove MEMORY_DEVICE_PUBLIC support (Don Dutile) [1754737] - [mm] migrate.c: cleanup expected_page_refs() (Don Dutile) [1754737] - [mm] migration: factor out code to compute expected number of page references (Don Dutile) [1754737] - [kernel] mm/devm_memremap_pages: fix final page put race (Don Dutile) [1754737] - [kernel] mm/devm_memremap_pages: introduce devm_memunmap_pages (Don Dutile) [1754737] - [kernel] memremap.c: remove the unused device_private_entry_fault() export (Don Dutile) [1754737] - [base] devres: introduce devm_release_action() (Don Dutile) [1754737] - [base] devres: Align data[] to ARCH_KMALLOC_MINALIGN (Don Dutile) [1754737] - [base] devres: provide devm_kstrdup_const() (Don Dutile) [1754737] - [base] devres: constify p in devm_kfree() (Don Dutile) [1754737] - [kernel] mm: move is_kernel_rodata() to asm-generic/sections.h (Don Dutile) [1754737] - [kernel] mm: fix vm_fault_t cast in VM_FAULT_GET_HINDEX() (Don Dutile) [1754737] - [kernel] mm: create the new vm_fault_t type (Don Dutile) [1754737] - [kernel] mm/hmm: convert to use vm_fault_t (Don Dutile) [1754737] - [kernel] mm/hmm: fix memremap.h, move dev_page_fault_t callback to hmm (Don Dutile) [1754737] - [fs] proc/vmcore.c: Convert to use vmf_error() (Don Dutile) [1754737] - [fs] proc/vmcore.c: use new typedef vm_fault_t (Don Dutile) [1754737] - [s390] vdso_fault return type (Don Dutile) [1754737] - [mm] inline vm_insert_pfn_prot() into caller (Don Dutile) [1754737] - [mm] remove vm_insert_pfn() (Don Dutile) [1754737] - [mm] make vm_insert_pfn_prot() static (Don Dutile) [1754737] - [x86] convert vdso to use vm_fault_t (Don Dutile) [1754737] - [mm] introduce vmf_insert_pfn_prot() (Don Dutile) [1754737] - [mm] convert __vm_insert_mixed() to vm_fault_t (Don Dutile) [1754737] - [kernel] mm: remove vm_insert_mixed() (Don Dutile) [1754737] - [fs] cramfs: convert to use vmf_insert_mixed (Don Dutile) [1754737] - [scsi] cxlflash: Change return type for fault handler (Don Dutile) [1754737] - [misc] ocxl: Change return type for fault handler (Don Dutile) [1754737] - [kernel] fs/iomap.c: change return type to vm_fault_t (Don Dutile) [1754737] - [mm] swap.c: remove duplicated include (Don Dutile) [1754737] - [kernel] perf/aux: Fix the aux_output group inheritance fix (Michael Petlan) [1743210] - [kernel] perf/core: Fix inheritance of aux_output groups (Michael Petlan) [1743210] - [kernel] perf/aux: Disallow aux_output for kernel events (Michael Petlan) [1743210] - [kernel] perf/core: Reattach a misplaced comment (Michael Petlan) [1743210] - [kernel] perf/aux: Fix AUX output stopping (Michael Petlan) [1743210] - [tools] perf vendor events s390: Add JSON transaction for machine type 8561 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Fix use of TRUE with SQLite (Michael Petlan) [1743210] - [tools] objtool: Fix build by linking against tools/lib/ctype.o sources (Michael Petlan) [1743210] - [tools] perf list: Allow plurals for metric, metricgroup (Michael Petlan) [1743210] - [tools] perf vendor events: Minor fixes to the README (Michael Petlan) [1743210] - [tools] perf vendor events amd: Remove redundant '[' (Michael Petlan) [1743210] - [tools] perf vendor events amd: Add L3 cache events for Family 17h (Michael Petlan) [1743210] - [tools] tools include uapi: Update copy of files related to new fspick, fsmount, fsconfig, fsopen, move_mount and open_tree syscalls (Michael Petlan) [1743210] - [tools] perf pmu-events: Fix missing "cpu_clk_unhalted.core" event (Michael Petlan) [1743210] - [tools] perf annotate: Fix s390 gap between kernel end and module start (Michael Petlan) [1743210] - [tools] perf record: Fix module size on s390 (Michael Petlan) [1743210] - [tools] perf tools: Fix include paths in ui directory (Michael Petlan) [1743210] - [tools] perf tools: Fix a typo in a variable name in the Documentation Makefile (Michael Petlan) [1743210] - [tools] perf cpumap: Fix writing to illegal memory in handling cpumap mask (Michael Petlan) [1743210] - [tools] perf ftrace: Fix failure to set cpumask when only one cpu is present (Michael Petlan) [1743210] - [tools] perf db-export: Fix thread__exec_comm() (Michael Petlan) [1743210] - [tools] perf annotate: Fix printing of unaugmented disassembled instructions from BPF (Michael Petlan) [1743210] - [tools] perf bench numa: Fix cpu0 binding (Michael Petlan) [1743210] - [tools] perf tools: Fix perf.data documentation units for memory size (Michael Petlan) [1743210] - [tools] perf header: Fix use of unitialized value warning (Michael Petlan) [1743210] - [tools] perf header: Fix divide by zero error if f_header.attr_size==0 (Michael Petlan) [1743210] - [tools] tools perf beauty: Fix usbdevfs_ioctl table generator to handle _IOC() (Michael Petlan) [1743210] - [tools] perf build: Do not use -Wshadow on gcc < 4.8 (Michael Petlan) [1743210] - [tools] perf probe: Avoid calling freeing routine multiple times for same pointer (Michael Petlan) [1743210] - [tools] perf probe: Set pev->nargs to zero after freeing pev->args entries (Michael Petlan) [1743210] - [tools] perf session: Fix loading of compressed data split across adjacent records (Michael Petlan) [1743210] - [tools] perf stat: Always separate stalled cycles per insn (Michael Petlan) [1743210] - [tools] perf stat: Fix segfault for event group in repeat mode (Michael Petlan) [1743210] - [tools] perf tools: Fix proper buffer size for feature processing (Michael Petlan) [1743210] - [tools] perf script: Fix off by one in brstackinsn IPC computation (Michael Petlan) [1743210] - [tools] perf script: Improve man page description of metrics (Michael Petlan) [1743210] - [tools] perf script: Fix --max-blocks man page description (Michael Petlan) [1743210] - [tools] perf vendor events s390: Add JSON files for machine type 8561 (Michael Petlan) [1743210] - [tools] perf cs-etm: Return errcode in cs_etm__process_auxtrace_info() (Michael Petlan) [1743210] - [tools] perf cs-etm: Remove errnoeous ERR_PTR() usage in cs_etm__process_auxtrace_info (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export switch events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export switch events (Michael Petlan) [1743210] - [tools] perf db-export: Export switch events (Michael Petlan) [1743210] - [tools] perf db-export: Factor out db_export__threads() (Michael Petlan) [1743210] - [tools] perf script: Add scripting operation process_switch() (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Use new 'has_calls' column (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Remove redundant semi-colons (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Add has_calls column to comms table (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Add has_calls column to comms table (Michael Petlan) [1743210] - [tools] perf db-export: Also export thread's current comm (Michael Petlan) [1743210] - [tools] perf db-export: Factor out db_export__comm() (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export comm details (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export comm details (Michael Petlan) [1743210] - [tools] perf db-export: Export comm details (Michael Petlan) [1743210] - [tools] perf db-export: Fix a white space issue in db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Move export__comm_thread into db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Export comm before exporting thread (Michael Petlan) [1743210] - [tools] perf db-export: Export main_thread in db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Pass main_thread to db_export__thread() (Michael Petlan) [1743210] - [tools] perf db-export: Rename db_export__comm() to db_export__exec_comm() (Michael Petlan) [1743210] - [tools] perf db-export: Get rid of db_export__deferred() (Michael Petlan) [1743210] - [tools] perf trace: Auto bump rlimit(MEMLOCK) for eBPF maps sake (Michael Petlan) [1743210] - [tools] perf test: Auto bump rlimit(MEMLOCK) for BPF test sake (Michael Petlan) [1743210] - [tools] perf tools: Introduce rlimit__bump_memlock() helper (Michael Petlan) [1743210] - [tools] perf-probe: Add user memory access attribute support (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf intel-bts: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf script: Assume native_arch for pipe mode (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Fix DROP VIEW power_events_view (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Fix DROP VIEW power_events_view (Michael Petlan) [1743210] - [tools] perf hists browser: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf cs-etm: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf parse-events: remove unused variable: error (Michael Petlan) [1743210] - [tools] perf parse-events: Remove unused variable 'i' (Michael Petlan) [1743210] - [tools] perf metricgroup: Add missing list_del_init() when flushing egroups list (Michael Petlan) [1743210] - [tools] perf tools: Use list_del_init() more thorougly (Michael Petlan) [1743210] - [tools] perf tools: Use zfree() where applicable (Michael Petlan) [1743210] - [tools] tools lib: Adopt zalloc()/zfree() from tools/perf (Michael Petlan) [1743210] - [tools] perf tools: Move get_current_dir_name() cond prototype out of util.h (Michael Petlan) [1743210] - [tools] perf namespaces: Move the conditional setns() prototype to namespaces.h (Michael Petlan) [1743210] - [tools] perf tools: Add missing headers, mostly stdlib.h (Michael Petlan) [1743210] - [tools] perf evsel: perf_evsel__name(NULL) is valid, no need to check evsel (Michael Petlan) [1743210] - [tools] perf session: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf inject: The tool->read() call may pass a NULL evsel, handle it (Michael Petlan) [1743210] - [tools] perf map: Fix potential NULL pointer dereference found by smatch tool (Michael Petlan) [1743210] - [tools] perf trace: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf annotate: Fix dereferencing freed memory found by the smatch tool (Michael Petlan) [1743210] - [tools] perf top: Fix potential NULL pointer dereference detected by the smatch tool (Michael Petlan) [1743210] - [tools] perf stat: Fix use-after-freed pointer detected by the smatch tool (Michael Petlan) [1743210] - [tools] perf test mmap-thread-lookup: Initialize variable to suppress memory sanitizer warning (Michael Petlan) [1743210] - [tools] perf script: Allow specifying the files to process guest samples (Michael Petlan) [1743210] - [tools] perf tools metric: Don't include duration_time in group (Michael Petlan) [1743210] - [tools] perf list: avoid extra : for --raw metrics (Michael Petlan) [1743210] - [tools] perf vendor events intel: Metric fixes for SKX/CLX (Michael Petlan) [1743210] - [tools] perf tools: Fix typos / broken sentences (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 L3C PMU aliasing (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 HHA PMU aliasing (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 DDRC PMU aliasing (Michael Petlan) [1743210] - [tools] perf pmu: Support more complex PMU event aliasing (Michael Petlan) [1743210] - [tools] perf diff: Documentation -c cycles option (Michael Petlan) [1743210] - [tools] perf diff: Print the basic block cycles diff (Michael Petlan) [1743210] - [tools] perf diff: Link same basic blocks among different data (Michael Petlan) [1743210] - [tools] perf diff: Use hists to manage basic blocks per symbol (Michael Petlan) [1743210] - [tools] perf diff: Check if all data files with branch stacks (Michael Petlan) [1743210] - [tools] perf hists: Add block_info in hist_entry (Michael Petlan) [1743210] - [tools] perf symbol: Create block_info structure (Michael Petlan) [1743210] - [tools] perf jevents: Use nonlocal include statements in pmu-events.c (Michael Petlan) [1743210] - [tools] perf annotate: Add csky support (Michael Petlan) [1743210] - [tools] perf stat: Fix metrics with --no-merge (Michael Petlan) [1743210] - [tools] perf stat: Fix group lookup for metric group (Michael Petlan) [1743210] - [tools] perf stat: Don't merge events in the same PMU (Michael Petlan) [1743210] - [tools] perf stat: Make metric event lookup more robust (Michael Petlan) [1743210] - [tools] tools lib: Move argv_{split, free} from tools/perf/util/ (Michael Petlan) [1743210] - [tools] perf tools: Drop strxfrchar(), use strreplace() equivalent from kernel (Michael Petlan) [1743210] - [tools] tools lib: Adopt strreplace() from the kernel (Michael Petlan) [1743210] - [tools] perf tools: Ditch rtrim(), use strim() from tools/lib (Michael Petlan) [1743210] - [tools] perf tools: Remove trim() implementation, use tools/lib's strim() (Michael Petlan) [1743210] - [tools] tools lib: Adopt strim() from the kernel (Michael Petlan) [1743210] - [tools] perf tools: Ditch rtrim(), use skip_spaces() to get closer to the kernel (Michael Petlan) [1743210] - [tools] perf report: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf metricgroup: Use strsep() (Michael Petlan) [1743210] - [tools] perf strfilter: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf probe: Use skip_spaces() for argv handling (Michael Petlan) [1743210] - [tools] perf time-utils: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf header: Use skip_spaces() in __write_cpudesc() (Michael Petlan) [1743210] - [tools] perf stat: Use recently introduced skip_spaces() (Michael Petlan) [1743210] - [tools] tools lib: Adopt skip_spaces() from the kernel sources (Michael Petlan) [1743210] - [tools] perf tools: Use linux/ctype.h in more places (Michael Petlan) [1743210] - [tools] tools perf: Move from sane_ctype.h obtained from git to the Linux's original (Michael Petlan) [1743210] - [tools] perf tools: Add missing util.h to pick up 'page_size' variable (Michael Petlan) [1743210] - [tools] perf tools: Remove old baggage that is util/include/linux/ctype.h (Michael Petlan) [1743210] - [tools] perf symbols: We need util.h in symbol-elf.c for zfree() (Michael Petlan) [1743210] - [tools] perf kallsyms: Adopt hex2u64 from tools/perf/util/util.h (Michael Petlan) [1743210] - [tools] tools x86 machine: Add missing util.h to pick up 'page_size' (Michael Petlan) [1743210] - [tools] perf string: Move 'dots' and 'graph_dotted_line' out of sane_ctype.h (Michael Petlan) [1743210] - [tools] perf ctype: Remove now unused 'spaces' variable (Michael Petlan) [1743210] - [tools] perf ui stdio: No need to use 'spaces' to left align (Michael Petlan) [1743210] - [tools] perf ctype: Remove unused 'graph_line' variable (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export Intel PT power and ptwrite events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export Intel PT power and ptwrite events (Michael Petlan) [1743210] - [tools] perf db-export: Export synth events (Michael Petlan) [1743210] - [tools] perf intel-pt: Synthesize CBR events when last seen value changes (Michael Petlan) [1743210] - [tools] perf intel-pt: Add CBR value to decoder state (Michael Petlan) [1743210] - [tools] perf intel-pt: Cater for CBR change in PSB+ (Michael Petlan) [1743210] - [tools] perf intel-pt: Decoder to output CBR changes immediately (Michael Petlan) [1743210] - [tools] perf thread-stack: Eliminate code duplicating thread_stack__pop_ks() (Michael Petlan) [1743210] - [tools] perf thread-stack: Fix thread stack return from kernel for kernel-only case (Michael Petlan) [1743210] - [tools] perf tools: Fix cache.h include directive (Michael Petlan) [1743210] - [tools] tools build: Fix the zstd test in the test-all.c common case feature test (Michael Petlan) [1743210] - [tools] perf build: Handle slang being in /usr/include and in /usr/include/slang/ (Michael Petlan) [1743210] - [tools] tools build: Add test to check if slang.h is in /usr/include/slang/ (Michael Petlan) [1743210] - [tools] perf tools: Don't hardcode host include path for libslang (Michael Petlan) [1743210] - [tools] perf evsel: Make perf_evsel__name() accept a NULL argument (Michael Petlan) [1743210] - [tools] perf trace: Fixup pointer arithmetic when consuming augmented syscall args (Michael Petlan) [1743210] - [tools] perf pmu: Fix uncore PMU alias list for ARM64 (Michael Petlan) [1743210] - [tools] perf tests: Add missing SPDX headers (Michael Petlan) [1743210] - [tools] tools build feature tests: Add missing SPDX headers (Michael Petlan) [1743210] - [tools] perf trace: Streamline validation of select syscall names list (Michael Petlan) [1743210] - [tools] perf trace: Fix exclusion of not available syscall names from selector list (Michael Petlan) [1743210] - [tools] perf intel-pt: Add callchain to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add memory information to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add LBR information to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add XMM registers to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add gp registers to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Synthesize PEBS sample basic information (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out common sample preparation for re-use (Michael Petlan) [1743210] - [tools] perf intel-pt: Prepare to synthesize PEBS samples (Michael Petlan) [1743210] - [tools] perf intel-pt: Add decoder support for PEBS via PT (Michael Petlan) [1743210] - [tools] perf intel-pt: Add Intel PT packet decoder test (Michael Petlan) [1743210] - [tools] perf intel-pt: Add new packets for PEBS via PT (Michael Petlan) [1743210] - [tools] perf tests arm64: Compile tests unconditionally (Michael Petlan) [1743210] - [tools] perf trace: Skip unknown syscalls when expanding strace like syscall groups (Michael Petlan) [1743210] - [tools] perf report: Support s390 diag event display on x86 (Michael Petlan) [1743210] - [tools] perf report: Fix OOM error in TUI mode on s390 (Michael Petlan) [1743210] - [tools] perf test 6: Fix missing kvm module load for s390 (Michael Petlan) [1743210] - [tools] perf time-utils: Add support for multiple explicit time intervals (Michael Petlan) [1743210] - [tools] perf tests: Add a test for time-utils (Michael Petlan) [1743210] - [tools] perf time-utils: Make perf_time__parse_for_ranges() more logical (Michael Petlan) [1743210] - [tools] perf time-utils: Simplify perf_time__parse_for_ranges() error paths slightly (Michael Petlan) [1743210] - [tools] perf time-utils: Fix --time documentation (Michael Petlan) [1743210] - [tools] perf time-utils: Prevent percentage time range overlap (Michael Petlan) [1743210] - [tools] perf time-utils: Factor out set_percent_time() (Michael Petlan) [1743210] - [tools] perf time-utils: Treat time ranges consistently (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for efficient time interval filtering (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for lookahead (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_get_buffer() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add intel_pt_fast_forward() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add reposition parameter to intel_pt_get_data() (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_reposition() (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_8b_tsc() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add lookahead callback (Michael Petlan) [1743210] - [tools] perf report: Set perf time interval in itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf script: Set perf time interval in itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf auxtrace: Add perf time interval to itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf config: Update default value for llvm.clang-bpf-cmd-template (Michael Petlan) [1743210] - [tools] perf cs-etm: Properly set the value of 'old' and 'head' in snapshot mode (Michael Petlan) [1743210] - [tools] perf data: Fix perf.data documentation for HEADER_CPU_TOPOLOGY (Michael Petlan) [1743210] - [tools] perf tools: Apply new CPU topology sysfs attributes (Michael Petlan) [1743210] - [tools] perf header: Rename "sibling cores" to "sibling sockets" (Michael Petlan) [1743210] - [tools] perf stat: Support per-die aggregation (Michael Petlan) [1743210] - [tools] perf header: Add die information in CPU topology (Michael Petlan) [1743210] - [tools] perf cpumap: Retrieve die id information (Michael Petlan) [1743210] - [tools] perf evsel: Remove superfluous nthreads system_wide setup in alloc_fd() (Michael Petlan) [1743210] - [tools] perf record: Add support to collect callchains from kernel or user space only (Michael Petlan) [1743210] - [tools] perf config: Bail out when a handler returns failure for a key-value pair (Michael Petlan) [1743210] - [tools] perf trace: Exit when failing to build eBPF program (Michael Petlan) [1743210] - [tools] perf trace: Associate more argument names with the filename beautifier (Michael Petlan) [1743210] - [tools] perf trace: Consume the augmented_raw_syscalls payload (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Move reading filename to the loop (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Change helper to consider just the augmented_filename part (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Move the probe_read_str to a separate function (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Tell which args are filenames and how many bytes to copy (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Select find text when find bar is activated (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to Call Tree (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to Call Graph Graph (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add CallGraphModelParams (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to the Branch reports (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export IPC information (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export IPC information (Michael Petlan) [1743210] - [tools] perf db-export: Export IPC information (Michael Petlan) [1743210] - [tools] perf db-export: Add brief documentation (Michael Petlan) [1743210] - [tools] perf thread-stack: Accumulate IPC information (Michael Petlan) [1743210] - [tools] perf intel-pt: Document IPC usage (Michael Petlan) [1743210] - [tools] perf intel-pt: Accumulate cycle count from TSC/TMA/MTC packets (Michael Petlan) [1743210] - [tools] perf intel-pt: Re-factor TIP cases in intel_pt_walk_to_ip (Michael Petlan) [1743210] - [tools] perf intel-pt: Record when decoding PSB+ packets (Michael Petlan) [1743210] - [tools] perf script: Add output of IPC ratio (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for samples to contain IPC ratio (Michael Petlan) [1743210] - [tools] perf tools: Add IPC information to perf_sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Accumulate cycle count from CYC packets (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_update_sample_time (Michael Petlan) [1743210] - [tools] perf record: Allow mixing --user-regs with --call-graph=dwarf (Michael Petlan) [1743210] - [tools] perf symbols: Remove unused variable 'err' (Michael Petlan) [1743210] - [tools] perf data: document directory format header: HEADER_DIR_FORMAT (Michael Petlan) [1743210] - [tools] perf data: document clockid header: HEADER_CLOCKID (Michael Petlan) [1743210] - [tools] perf data: document memory topology header: HEADER_MEM_TOPOLOGY (Michael Petlan) [1743210] - [tools] perf data: Add description of header HEADER_BPF_PROG_INFO and HEADER_BPF_BTF (Michael Petlan) [1743210] - [tools] perf intel-pt: Rationalize intel_pt_sync_switch()'s use of next_tid (Michael Petlan) [1743210] - [tools] perf intel-pt: Improve sync_switch by processing PERF_RECORD_SWITCH* in events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Use argparse module for argument parsing (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Change python2 to python (Michael Petlan) [1743210] - [tools] perf top: Lower message level for failure on synthesizing events for pre-existing BPF programs (Michael Petlan) [1743210] - [tools] perf machine: Return NULL instead of null-terminating /proc/version array (Michael Petlan) [1743210] - [tools] perf version: Append 12 git SHA chars to the version string (Michael Petlan) [1743210] - [tools] perf script: Remove superfluous BPF event titles (Michael Petlan) [1743210] - [tools] perf script: Add --show-bpf-events to show eBPF related events (Michael Petlan) [1743210] - [tools] perf tests: Add map_groups__merge_in test (Michael Petlan) [1743210] - [tools] perf script: Pad DSO name for --call-trace (Michael Petlan) [1743210] - [tools] perf dso: Add BPF DSO read and size hooks (Michael Petlan) [1743210] - [tools] perf dso: Simplify dso_cache__read function (Michael Petlan) [1743210] - [tools] perf dso: Separate generic code in dso_cache__read (Michael Petlan) [1743210] - [tools] perf dso: Separate generic code in dso__data_file_size() (Michael Petlan) [1743210] - [tools] perf tools: Remove const from thread read accessors (Michael Petlan) [1743210] - [tools] perf top: Add --namespaces option (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for sync_file_range's 'flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fsmount' arguments (Michael Petlan) [1743210] - [tools] perf trace: Introduce syscall_arg__scnprintf_strarray_flags (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fsmount's 'attr_flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fsconfig' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fsconfig's 'cmd' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fspick' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fspick's 'flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'move_mount' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for 'move_mount' flags argument (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Fix up comment (Michael Petlan) [1743210] - [tools] perf tools: Preserve eBPF maps when loading kcore (Michael Petlan) [1743210] - [tools] perf machine: Keep zero in pgoff BPF map (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix itrace defaults for perf script intel-pt documentation (Michael Petlan) [1743210] - [tools] perf auxtrace: Fix itrace defaults for perf script (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix itrace defaults for perf script (Michael Petlan) [1743210] - [tools] perf-with-kcore.sh: Always allow fix_buildid_cache_permissions (Michael Petlan) [1743210] - [tools] tools build: Check if gettid() is available before providing helper (Michael Petlan) [1743210] - [tools] tools build feature: Check if get_current_dir_name() is available (Michael Petlan) [1743210] - [tools] perf jvmti: Address gcc string overflow warning for strncpy() (Michael Petlan) [1743210] - [tools] perf python: Remove -fstack-protector-strong if clang doesn't have it (Michael Petlan) [1743210] - [tools] perf annotate tui browser: Do not use member from variable within its own initialization (Michael Petlan) [1743210] - [tools] perf thread: Allow references to thread objects after machine__exit() (Michael Petlan) [1743210] - [fs] sysfs: Fix internal_create_group() for named group updates (Michael Petlan) [1743210] - [x86] perf/x86/intel: Support PEBS output to PT (Michael Petlan) [1743210] - [kernel] perf: Allow normal events to output AUX data (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h) (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise RIP validity (Michael Petlan) [1743210] - [kernel] perf/hw_breakpoint: Fix arch_hw_breakpoint use-before-initialization (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Fix sample bias for dispatched micro-ops (Michael Petlan) [1743210] - [x86] perf/x86/intel: Restrict period on Nehalem (Michael Petlan) [1743210] - [x86] perf/x86: Fix typo in comment (Michael Petlan) [1743210] - [kernel] perf/core: Fix creating kernel counters for PMUs that override event->cpu (Michael Petlan) [1743210] - [x86] perf/x86: Apply more accurate check on hypervisor platform (Michael Petlan) [1743210] - [x86] perf/x86/intel: Fix invalid Bit 13 for Icelake MSR_OFFCORE_RSP_x register (Michael Petlan) [1743210] - [x86] perf/x86/intel: Fix SLOTS PEBS event constraint (Michael Petlan) [1743210] - [x86] perf/x86/intel: Mark expected switch fall-throughs (Michael Petlan) [1743210] - [kernel] perf_event_get(): don't bother with fget_raw() (Michael Petlan) [1743210] - [kernel] perf/core: Fix exclusive events' grouping (Michael Petlan) [1743210] - [x86] perf/x86/amd/uncore: Set the thread mask for F17h L3 PMCs (Michael Petlan) [1743210] - [perf] x86/amd/uncore: Do not set 'ThreadMask' and 'SliceMask' for non-L3 PMCs (Michael Petlan) [1743210] - [kernel] perf/core: Fix race between close() and fork() (Michael Petlan) [1743210] - [perf] cgroups: Don't rotate events for cgroups unnecessarily (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get quirk state from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get attributes from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get MSR values from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get rapl_cntr_mask from new probe framework (Michael Petlan) [1743210] - [x86] intel: Aggregate big core client naming (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Use new MSR detection interface (Michael Petlan) [1743210] - [x86] perf/x86/cstate: Use new probe function (Michael Petlan) [1743210] - [x86] perf/x86/msr: Use new probe function (Michael Petlan) [1743210] - [x86] perf/x86: Add MSR probe interface (Michael Petlan) [1743210] - [x86] perf/x86/intel: Disable check_msr for real HW (Michael Petlan) [1743210] - [x86] perf/x86/intel: Use ->is_visible callback for default group (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add IMC uncore support for Snow Ridge (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Clean up client IMC (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Support MMIO type uncore blocks (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Factor out box ref/unref functions (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add uncore support for Snow Ridge server (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Handle invalid event coding for free-running counter (Michael Petlan) [1743210] - [x86] perf/x86/intel: Add more Icelake CPUIDs (Michael Petlan) [1743210] - [x86] perf/x86/intel: Add Icelake desktop CPUID (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for default attributes (Michael Petlan) [1743210] - [x86] perf/x86/intel: Use update attributes for skylake format (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for extra format (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for caps (Michael Petlan) [1743210] - [x86] perf/x86: Add is_visible attribute_group callback for base events (Michael Petlan) [1743210] - [x86] perf/x86: Use the new pmu::update_attrs attribute group (Michael Petlan) [1743210] - [x86] perf/x86: Get rid of x86_pmu::event_attrs (Michael Petlan) [1743210] - [x86] perf/x86/regs: Check reserved bits (Michael Petlan) [1743210] - [fs] sysfs: Add sysfs_update_groups function (Michael Petlan) [1743210] - [kernel] perf/core: Add attr_groups_update into struct pmu (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add new IMC PCI IDs for KabyLake, AmberLake and WhiskeyLake CPUs (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add tabs to Uncore IMC PCI IDs (Michael Petlan) [1743210] - [kernel] perf/core: Allow non-privileged uprobe for user processes (Michael Petlan) [1743210] - [x86] perf/x86: Add Intel Ice Lake NNPI uncore support (Michael Petlan) [1743210] - [perf] arm_pmu: acpi: spe: Add initial MADT/SPE probing (Michael Petlan) [1743210] - [netdrv] mwifiex: fix possible heap overflow in mwifiex_process_country_ie() (Jarod Wilson) [1776210] {CVE-2019-14895} - [kernel] crash_core: Make S390 share the same crashkernel=auto reservation policy as X86_64 (Baoquan He) [1780432] - [s390] kasan: avoid report in get_wchan (Philipp Rudo) [1780112 1780111] - [s390] process: avoid potential reading of freed stack (Philipp Rudo) [1780112] - [fs] cifs: don't use 'pre:' for MODULE_SOFTDEP (Leif Sahlberg) [1767094] - [hwmon] Do not output deprecated warning for hwmon_device_register() (Prarit Bhargava) [1778295] - [scsi] lpfc: size cpu map by last cpu id set (Dick Kennedy) [1778912] - [scsi] lpfc: use hdwq assigned cpu for allocation (Dick Kennedy) [1778908] - [scsi] be2iscsi: Include null char in SET_HOST_DATA (Maurizio Lombardi) [1776358] - [netdrv] vmxnet3: turn off lro when rxcsum is disabled (Neil Horman) [1776056] - [mmc] sdhci-pci: Add another Id for Intel CML (Alexander Beregalov) [1766718] - [x86] kvm: untaint kernel for tech-preview when using nested VMX (Paolo Bonzini) [1726756] - [powerpc] kvm: ppc: book3s hv: xive: Fix potential page leak on error path (Laurent Vivier) [1760202] - [powerpc] kvm: ppc: book3s hv: xive: Free previous EQ page when setting up a new one (Laurent Vivier) [1760202] - [virt] kvm: arm/arm64: vgic: Don't rely on the wrong pending table (Auger Eric) [1777059] - [x86] kvm: x86: remove set but not used variable 'called' (Nitesh Narayan Lal) [1773677] - [x86] kvm: x86: Zero the IOAPIC scan request dest vCPUs bitmap (Nitesh Narayan Lal) [1773677] - [x86] kvm: x86: deliver KVM IOAPIC scan request to target vCPUs (Nitesh Narayan Lal) [1773677] - [kernel] kvm: remember position in kvm->vcpus array (Nitesh Narayan Lal) [1773677] - [kernel] watchdog: Reduce message verbosity (Vitaly Kuznetsov) [1774915]- [fs] binfmt_elf: Do not move brk for INTERP-less ET_EXEC (Waiman Long) [1749633] - [fs] binfmt_elf: move brk out of mmap when doing direct loader exec (Waiman Long) [1749633] - [gpu] drm/i915/cmdparser: Fix jump whitelist clearing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/gen8+: Add RC6 CTX corruption WA (Dave Airlie) [1756805] {CVE-2019-0154} - [gpu] drm/i915: Lower RM timeout to avoid DSI hard hangs (Dave Airlie) [1756805] {CVE-2019-0154} - [gpu] drm/i915/cmdparser: Ignore Length operands during command matching (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/cmdparser: Add support for backward jumps (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/cmdparser: Use explicit goto for error paths (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Add gen9 BCS cmdparsing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Allow parsing of unsized batches (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Support ro ppgtt mapped cmdparser shadow buffers (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Add support for mandatory cmdparsing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Remove Master tables from cmdparser (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Disable Secure Batches for gen6+ (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Rename gen7 cmdparser tables (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] [drm] radeon: fix bad DMA from INTERRUPT_CNTL2 (Sam Bobroff) [1293697] - [netdrv] mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame() (Jarod Wilson) [1776162] {CVE-2019-14901} - [netdrv] mlx4_en: Fix wrong limitation for number of TX rings (Mohammad Heib) [1776822] - [netdrv] mlx4_en: fix mlx4 ethtool -N insertion (Mohammad Heib) [1776822] - [netdrv] mlx4_core: fix wrong comment about the reason of subtract one from the max_cqes (Mohammad Heib) [1776822] - [netdrv] ibmvnic: Serialize device queries (Steve Best) [1778037] - [netdrv] ibmvnic: Bound waits for device queries (Steve Best) [1778037] - [netdrv] ibmvnic: Terminate waiting device threads after loss of service (Steve Best) [1778037] - [netdrv] ibmvnic: Fix completion structure initialization (Steve Best) [1778037] - [netdrv] ibmvnic: Ignore H_FUNCTION return from H_EOI to tolerate XIVE mode (Steve Best) [1778037] - [netdrv] revert "net/ibmvnic: Fix EOI when running in XIVE mode" (Steve Best) [1778037] - [netdrv] cnic: Set fp_hsi_ver as part of CLIENT_SETUP ramrod (Manish Chopra) [1770797] - [netdrv] bnx2x: Fix PF-VF communication over multi-cos queues (Manish Chopra) [1770797] - [netdrv] bnx2x: Enable Multi-Cos feature (Manish Chopra) [1770797] - [netdrv] bnx2x: Utilize FW 7.13.15.0 (Manish Chopra) [1770797] - [fs] seq_file: fix problem when seeking mid-record (Bill O'Donnell) [1753822] - [documentation] fs/seq_file.c: simplify seq_file iteration code and interface (Bill O'Donnell) [1753822] - [scripts] kbuild: replace BASH-specific ${@:2} with shift and ${@} (Jiri Olsa) [1739493] - [scripts] btf: do not use CONFIG_OUTPUT_FORMAT (Jiri Olsa) [1739493] - [kernel] btf: fix return value check in btf_vmlinux_init() (Jiri Olsa) [1739493] - [kernel] btf: rename /sys/kernel/btf/kernel into /sys/kernel/btf/vmlinux (Jiri Olsa) [1739493] - [scripts] btf: expose BTF info through sysfs (Jiri Olsa) [1739493] - [netdrv] qede: fix NULL pointer deref in __qede_remove() (Manish Chopra) [1769203] - [gpu] cleanup: Remove .rej files (Prarit Bhargava) [1779738] - [lib] string: Add strscpy_pad() function (Josef Oskera) [1764588] - [char] virtio_console: allocate inbufs in add_port() only if it is needed (Pankaj Gupta) [1612795] - [fs] xfs: add kmem_alloc_io() (Bill O'Donnell) [1583556] - [fs] xfs: make mem_to_page available outside of xfs_buf.c (Bill O'Donnell) [1583556] - [fs] xfs: get allocation alignment from the buftarg (Bill O'Donnell) [1583556] - [fs] xfs: add kmem_alloc_io() (Bill O'Donnell) [1583556] - [fs] cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs (Leif Sahlberg) [1765979] - [fs] cifs: avoid using MID 0xFFFF (Leif Sahlberg) [1765979] - [fs] cifs: Fix retry mid list corruption on reconnects (Leif Sahlberg) [1765979] - [fs] nfsd: allow fh_want_write to be called twice ("J. Bruce Fields") [1699222] - [net] revert "sunrpc: Fix up task signalling" (Dave Wysochanski) [1776067] - [s390] kasan: support memcpy_real with TRACE_IRQFLAGS (Philipp Rudo) [1777468] - [s390] kasan: add kdump support (Philipp Rudo) [1777468] - [s390] idle: fix cpu idle time calculation (Philipp Rudo) [1777361] - [s390] kaslr: add support for R_390_GLOB_DAT relocation type (Philipp Rudo) [1777467] - [x86] jump_label: Make tp_vec_nr static (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Batch jump label updates (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Batch updates if arch supports it (Daniel Bristot de Oliveira) [1731860] - [x86] alternative: Batch of patch operations (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Sort entries of the same key by the code (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Add a __jump_label_set_jump_code() helper (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Don't warn on __exit jump entries (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Add a jump_label_can_update() helper (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Remove the return value of text_poke_*() (Daniel Bristot de Oliveira) [1731860] - [x86] jump-label: Remove support for custom text poker (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Use text_poke_early() during early init (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Add text_poke_kgdb() to not assert the lock when debugging (Daniel Bristot de Oliveira) [1731860] - [x86] kprobes: Prohibit probing on functions before kprobe_int3_handler() (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Fix NULL dereference bug in __jump_label_mod_update() (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Annotate entries that operate on __init code earlier (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Switch to jump_entry accessors (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Implement generic support for relative references (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Abstract jump_entry member accessors (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Lockdep-enforce text_mutex in text_poke*() (Daniel Bristot de Oliveira) [1731860] - [x86] revert "x86/paravirt: Set up the virt_spin_lock_key after static keys get initialized" (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Initialize static branching early (Vitaly Kuznetsov) [1777260] - [x86] speculation: Fix redundant MDS mitigation message (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation: Fix incorrect MDS/TAA mitigation status (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Fix printing of TAA_MSG_SMT on IBRS_ALL CPUs (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] tsx: Add config options to set tsx=on|off|auto (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [documentation] x86/speculation/taa: Add documentation for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] tsx: Add "auto" option to the tsx= cmdline parameter (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Add sysfs reporting for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Add mitigation for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] cpu: Add a "tsx=" cmdline option with TSX disabled by default (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] cpu: Add a helper function x86_read_arch_cap_msr() (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] msr: Add the IA32_TSX_CTRL MSR (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [powerpc] xive: Prevent page fault issues in the machine crash handler (Diego Domingos) [1756116] - [tools] Fix memcpy_mcsafe_64.S link on selftests (Desnes Augusto Nunes do Rosario) [1775570]- [powerpc] perf: Fix loop exit condition in nest_imc_event_init (Steve Best) [1778609] - [net] netfilter: nf_tables: Add missing nft_tproxy Makefile line (Phil Sutter) [1762977]- [x86] kdump: Remove the backup region handling (Lianbo Jiang) [1730143] - [x86] kdump: Always reserve the low 1M when the crashkernel option is specified (Lianbo Jiang) [1730143] - [x86] crash: Add a forward declaration of struct kimage (Lianbo Jiang) [1730143] - [x86] kdump: Remove the unused crash_copy_backup_region() (Lianbo Jiang) [1730143] - [pci] p2pdma: Fix missing check for dma_virt_ops (Don Dutile) [1754734] - [pci] p2pdma: use the dev_pagemap internal refcount (Don Dutile) [1754734] - [pci] memremap: pass a struct dev_pagemap to ->kill and ->cleanup (Don Dutile) [1754734] - [pci] memremap: move dev_pagemap callbacks into a separate structure (Don Dutile) [1754734] - [pci] mm/devm_memremap_pages: fix final page put race (Don Dutile) [1754734] - [pci] p2pdma: track pgmap references per resource, not globally (Don Dutile) [1754734] - [pci] p2pdma: fix the gen_pool_add_virt() failure path (Don Dutile) [1754734] - [pci] mm, hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL (Don Dutile) [1754734] - [lib] genalloc.c: Add algorithm, align and zeroed family of DMA allocators (Don Dutile) [1754732] - [lib] genalloc.c: include vmalloc.h (Don Dutile) [1754732] - [lib] genalloc.c: use vzalloc_node() to allocate the bitmap (Don Dutile) [1754732] - [md] dm table: propagate BDI_CAP_STABLE_WRITES to fix sporadic checksum errors (Mike Snitzer) [1770210] - [fs] gfs2: fix race between gfs2_freeze_func and unmount (Abhijith Das) [1676972] - [fs] cifs: smbd: Retry on memory registration failure (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Indicate to retry on transport sending failure (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Return EINTR when interrupted (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Don't destroy transport on RDMA disconnect (Leif Sahlberg) [1771772] - [lib] crc-t10dif: crc_t10dif_mutex can be static (Vladis Dronov) [1769462] - [lib] crc-t10dif: Allow current transform to be inspected in sysfs (Vladis Dronov) [1769462] - [lib] crc-t10dif: Pick better transform if one becomes available (Vladis Dronov) [1769462] - [crypto] api - Introduce notifier for new crypto algorithms (Vladis Dronov) [1769462] - [netdrv] e1000e: Drop unnecessary __E1000_DOWN bit twiddling (Ken Cox) [1748256] - [netdrv] e1000e: Use rtnl_lock to prevent race conditions between net and pci/pm (Ken Cox) [1748256]- [powerpc] pseries: safely roll back failed DLPAR cpu add (Steve Best) [1772341] - [powerpc] pseries: address checkpatch warnings in dlpar_offline_cpu (Steve Best) [1772341] - [scsi] storvsc: setup 1:1 mapping between hardware queue and CPU queue (Cathy Avery) [1771503] - [scsi] storvsc: Add ability to change scsi queue depth (Cathy Avery) [1771503] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 320 (Cathy Avery) [1771503] - [scsi] smartpqi: bump version (Don Brace) [1725045] - [scsi] smartpqi: Align driver syntax with oob (Don Brace) [1725045] - [scsi] smartpqi: remove unused manifest constants (Don Brace) [1725045] - [scsi] smartpqi: fix problem with unique ID for physical device (Don Brace) [1725045] - [scsi] smartpqi: correct syntax issue (Don Brace) [1725045] - [scsi] smartpqi: change TMF timeout from 60 to 30 seconds (Don Brace) [1725045] - [scsi] smartpqi: fix LUN reset when fw bkgnd thread is hung (Don Brace) [1725045] - [scsi] smartpqi: add inquiry timeouts (Don Brace) [1725045] - [scsi] smartpqi: fix call trace in device discovery (Don Brace) [1725045] - [scsi] smartpqi: fix controller lockup observed during force reboot (Don Brace) [1725045] - [scsi] smartpqi: clean up an indentation issue (Don Brace) [1725045] - [scsi] smartpqi: remove set but not used variable 'ctrl_info' (Don Brace) [1725045] - [scsi] smartpqi: clean up indentation of a statement (Don Brace) [1725045] - [scsi] smartpqi: bump version (Don Brace) [1725045] - [scsi] smartpqi: update copyright (Don Brace) [1725045] - [scsi] smartpqi: add new pci ids (Don Brace) [1725045] - [scsi] smartpqi: correct REGNEWD return status (Don Brace) [1725045] - [scsi] smartpqi: add gigabyte controller (Don Brace) [1725045] - [scsi] smartpqi: correct hang when deleting 32 lds (Don Brace) [1725045] - [scsi] smartpqi: add bay identifier (Don Brace) [1725045] - [scsi] smartpqi: add sysfs entries (Don Brace) [1725045] - [scsi] smartpqi: add module param to hide vsep (Don Brace) [1725045] - [scsi] smartpqi: add pci ids for fiberhome controller (Don Brace) [1725045] - [scsi] smartpqi: add module param for exposure order (Don Brace) [1725045] - [scsi] smartpqi: unlock on error in pqi_submit_raid_request_synchronous() (Don Brace) [1725045] - [scsi] smartpqi: Reporting unhandled SCSI errors (Don Brace) [1725045] - [scsi] mpt3sas: Bump mpt3sas driver version to 32.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix module parameter max_msix_vectors (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reject NVMe Encap cmnds to unsupported HBA (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use Component img header to get Package ver (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fail release cmnd if diag buffer is released (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add app owned flag support for diag buffer (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reuse diag buffer allocated at load time (Tomas Henzl) [1725737] - [scsi] mpt3sas: clear release bit when buffer reregistered (Tomas Henzl) [1725737] - [scsi] mpt3sas: Maintain owner of buffer through UniqueID (Tomas Henzl) [1725737] - [scsi] mpt3sas: Free diag buffer without any status check (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix clear pending bit in ioctl status (Tomas Henzl) [1725737] - [scsi] mpt3sas: Display message before releasing diag buffer (Tomas Henzl) [1725737] - [scsi] mpt3sas: Register trace buffer based on NVDATA settings (Tomas Henzl) [1725737] - [scsi] mpt3sas: Introduce module parameter to override queue depth (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update driver version to 31.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Run SAS DEVICE STATUS CHANGE EVENT from ISR (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reduce the performance drop (Tomas Henzl) [1725737] - [scsi] mpt3sas: Handle fault during HBA initialization (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add sysfs to know supported features (Tomas Henzl) [1725737] - [scsi] mpt3sas: Support MEMORY MOVE Tool box command (Tomas Henzl) [1725737] - [scsi] mpt3sas: Allow ioctls to blocked access status NVMe (Tomas Henzl) [1725737] - [scsi] mpt3sas: Enumerate SES of a managed PCIe switch (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update MPI headers to 2.6.8 spec (Tomas Henzl) [1725737] - [scsi] mpt3sas: Gracefully handle online firmware update (Tomas Henzl) [1725737] - [scsi] mpt3sas: memset request frame before reusing (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add support for PCIe Lane margin (Tomas Henzl) [1725737] - [scsi] mpt3sas: support target smid for [abort|query] task (Tomas Henzl) [1725737] - [scsi] mpt3sas: clean up a couple sizeof() uses (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix msix load balance on and off settings (Tomas Henzl) [1725737] - [scsi] mpt3sas: Determine smp affinity on per HBA basis (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use configured PCIe link speed, not max (Tomas Henzl) [1725737] - [scsi] mpt3sas: Remove CPU arch check to determine perf_mode (Tomas Henzl) [1725737] - [scsi] mpt3sas: use DEVICE_ATTR_{RO, RW} (Tomas Henzl) [1725737] - [scsi] mpt3sas: make driver options visible in sys (Tomas Henzl) [1725737] - [scsi] mpt3sas: Mark expected switch fall-through (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update driver version to 29.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Introduce perf_mode module parameter (Tomas Henzl) [1725737] - [scsi] mpt3sas: Enable interrupt coalescing on high iops (Tomas Henzl) [1725737] - [scsi] mpt3sas: Affinity high iops queues IRQs to local node (Tomas Henzl) [1725737] - [scsi] mpt3sas: save and use MSI-X index for posting RD (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use high iops queues under some circumstances (Tomas Henzl) [1725737] - [scsi] mpt3sas: change _base_get_msix_index prototype (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add flag high_iops_queues (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add Atomic RequestDescriptor support on Aero (Tomas Henzl) [1725737] - [scsi] mpt3sas: function pointers of request descriptor (Tomas Henzl) [1725737] - [scsi] mpt3sas_ctl: fix double-fetch bug in _ctl_ioctl_main() (Tomas Henzl) [1725737] - [md] revert "dm crypt: use WQ_HIGHPRI for the IO and crypt workqueues" (Mike Snitzer) [1775756] - [md] dm thin: wakeup worker only when deferred bios exist (Mike Snitzer) [1775756] - [md] dm raid: Remove unnecessary negation of a shift in raid10_format_to_md_layout (Mike Snitzer) [1775756] - [md] dm writecache: handle REQ_FUA (Mike Snitzer) [1775756] - [md] dm writecache: fix uninitialized variable warning (Mike Snitzer) [1775756] - [md] dm stripe: use struct_size() in kmalloc() (Mike Snitzer) [1775756] - [md] dm table: do not allow request-based DM to stack on partitions (Mike Snitzer) [1775756] - [md] dm cache: fix bugs when a GFP_NOWAIT allocation fails (Mike Snitzer) [1775756] - [md] dm writecache: skip writecache_wait for pmem mode (Mike Snitzer) [1775756] - [md] dm stats: use struct_size() helper (Mike Snitzer) [1775756] - [md] dm space map common: remove check for impossible sm_find_free() return value (Mike Snitzer) [1775756] - [md] dm raid1: use struct_size() with kzalloc() (Mike Snitzer) [1775756] - [md] dm writecache: optimize performance by sorting the blocks for writeback_all (Mike Snitzer) [1775756] - [md] dm writecache: add unlikely for getting two block with same LBA (Mike Snitzer) [1775756] - [md] dm writecache: remove unused member pointer in writeback_struct (Mike Snitzer) [1775756] - [md] dm: make dm_table_find_target return NULL (Mike Snitzer) [1775756] - [md] dm table: fix invalid memory accesses with too high sector number (Mike Snitzer) [1775756] - [md] dm space map metadata: fix missing store of apply_bops() return value (Mike Snitzer) [1775756] - [md] dm btree: fix order of block initialization in btree_split_beneath (Mike Snitzer) [1775756] - [md] dm raid: add missing cleanup in raid_ctr() (Mike Snitzer) [1775756] - [md] dm kcopyd: always complete failed jobs (Mike Snitzer) [1775756] - [md] dm crypt: remove obsolete comment about plumb IV (Mike Snitzer) [1775756] - [md] dm crypt: wipe private IV struct after key invalid flag is set (Mike Snitzer) [1775756] - [md] dm: update stale comment in end_clone_bio() (Mike Snitzer) [1775756] - [md] dm log writes: fix incorrect comment about the logged sequence example (Mike Snitzer) [1775756] - [md] dm log writes: use struct_size() to calculate size of pending_block (Mike Snitzer) [1775756] - [md] dm crypt: use struct_size() when allocating encryption context (Mike Snitzer) [1775756] - [md] dm thin metadata: check if in fail_io mode when setting needs_check (Mike Snitzer) [1775756] - [md] dm verity: use message limit for data block corruption message (Mike Snitzer) [1775756] - [md] dm log writes: make sure super sector log updates are written in order (Mike Snitzer) [1775756] - [md] dm: fix a couple brace coding style issues (Mike Snitzer) [1775756] - [md] dm crypt: print device name in integrity error message (Mike Snitzer) [1775756] - [documentation] dm integrity: update documentation (Mike Snitzer) [1775756] - [md] dm integrity: don't report unused options (Mike Snitzer) [1775756] - [md] dm integrity: don't check null pointer before kvfree and vfree (Mike Snitzer) [1775756] - [md] dm integrity: correctly calculate the size of metadata area (Mike Snitzer) [1775756] - [md] dm mpath: always free attached_handler_name in parse_path() (Mike Snitzer) [1775756] - [md] dm writecache: avoid unnecessary lookups in writecache_find_entry() (Mike Snitzer) [1775756] - [md] dm writecache: remove unused member page_offset in writeback_struct (Mike Snitzer) [1775756] - [md] dm delay: fix a crash when invalid device is specified (Mike Snitzer) [1775756] - [md] dm: only initialize md->dax_dev if CONFIG_DAX_DRIVER is enabled (Mike Snitzer) [1775756] - [md] dm writecache: add unlikely for returned value of rb_next_prev (Mike Snitzer) [1775756] - [md] dm writecache: remove needless dereferences in __writecache_writeback_pmem() (Mike Snitzer) [1775756] - [md] dm crypt: fix endianness annotations around org_sector_of_dmreq (Mike Snitzer) [1775756] - [md] dm integrity: fix deadlock with overlapping I_O (Mike Snitzer) [1775756] - [md] dm: disable DISCARD if the underlying storage no longer supports it (Mike Snitzer) [1775756] - [md] dm: revert 8f50e358153d ("dm: limit the max bio size as BIO_MAX_PAGES * PAGE_SIZE") (Mike Snitzer) [1775756] - [md] dm integrity: make dm_integrity_init and dm_integrity_exit static (Mike Snitzer) [1775756] - [md] dm integrity: change memcmp to strncmp in dm_integrity_ctr (Mike Snitzer) [1775756] - [x86] platform/uv: Account for UV Hubless in is_uvX_hub Ops (Frank Ramsay) [1757510] - [x86] platform/uv: Check EFI Boot to set reboot type (Frank Ramsay) [1757510] - [x86] platform/uv: Decode UVsystab Info (Frank Ramsay) [1757510] - [x86] platform/uv: Add UV Hubbed/Hubless Proc FS Files (Frank Ramsay) [1757510] - [x86] platform/uv: Setup UV functions for Hubless UV Systems (Frank Ramsay) [1757510] - [x86] platform/uv: Add return code to UV BIOS Init function (Frank Ramsay) [1757510] - [x86] platform/uv: Return UV Hubless System Type (Frank Ramsay) [1757510] - [x86] platform/uv: Save OEM_ID from ACPI MADT probe (Frank Ramsay) [1757510] - [x86] mm: Handle physical-virtual alignment mismatch in phys_p4d_init() (Baoquan He) [1685383] - [x86] mm/kaslr: Reduce randomization granularity for 5-level paging to 1GB (Baoquan He) [1685383] - [x86] mm/kaslr: Use only one PUD entry for real mode trampoline (Baoquan He) [1685383] - [documentation] documentation/stackprotector: powerpc supports stack protector (Bhupesh Sharma) [1714310] - [makefile] kbuild: mark prepare0 as PHONY to fix external module build (Bhupesh Sharma) [1714310] - [makefile] kbuild: fix single target build for external module (Bhupesh Sharma) [1714310] - [arm64] enable per-task stack canaries (Bhupesh Sharma) [1714310] - [powerpc] Fix stack protector crashes on CPU hotplug (Bhupesh Sharma) [1714310] - [powerpc] 64: properly initialise the stackprotector canary on SMP (Bhupesh Sharma) [1714310] - [powerpc] Fix stackprotector detection for non-glibc toolchains (Bhupesh Sharma) [1714310] - [powerpc] 64: add stack protector support (Bhupesh Sharma) [1714310] - [powerpc] 32: add stack protector support (Bhupesh Sharma) [1714310] - [pci] vmd: Fix shadow offsets to reflect spec changes (Myron Stowe) [1757896] - [pci] vmd: Fix config addressing when using bus offsets (Myron Stowe) [1757896] - [pci] Fix typos and whitespace errors (Myron Stowe) [1757896] - [pci] vmd: use the proper dma_* APIs instead of direct methods calls (Myron Stowe) [1757896] - [powerpc] powernv: Disable native PCIe port management (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix eeh eeh_debugfs_break_device() with SRIOV devices (Gustavo Duarte) [1524642] - [tools] selftests/powerpc: Add basic EEH selftest (Gustavo Duarte) [1524642] - [powerpc] eeh: Add a eeh_dev_break debugfs interface (Gustavo Duarte) [1524642] - [powerpc] eeh: Add debugfs interface to run an EEH check (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix debugfs_simple_attr.cocci warnings (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix build with STACKTRACE=n (Gustavo Duarte) [1524642] - [powerpc] eeh: Set attention indicator while recovering (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add attention indicator support (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add support for IODA3 Power9 PHBs (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add a reset_slot() callback (Gustavo Duarte) [1524642] - [powerpc] powernv/eeh: Use generic code to handle hot resets (Gustavo Duarte) [1524642] - [powerpc] eeh: Remove stale CAPI comment (Gustavo Duarte) [1524642] - [powerpc] eeh: Defer printing stack trace (Gustavo Duarte) [1524642] - [powerpc] eeh: Check slot presence state in eeh_handle_normal_event() (Gustavo Duarte) [1524642] - [powerpc] eeh: Make permanently failed devices non-actionable (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix race when freeing PDNs (Gustavo Duarte) [1524642] - [powerpc] eeh: Clean up EEH PEs after recovery finishes (Gustavo Duarte) [1524642] - [netdrv] be2net: disable bh with spin_lock in be_process_mcc (Petr Oros) [1724777] - [netdrv] be2net: Synchronize be_update_queues with dev_watchdog (Petr Oros) [1724777] - [netdrv] be2net: Signal that the device cannot transmit during reconfiguration (Petr Oros) [1724777] - [netdrv] be2net: fix link failure after ethtool offline test (Petr Oros) [1724777] - [netdrv] be2net: Fix number of Rx queues used for flow hashing (Petr Oros) [1724777] - [netdrv] benet: remove broken and unused macro (Petr Oros) [1724777] - [netdrv] benet: use skb_vlan_tag_get_prio() (Petr Oros) [1724777] - [netdrv] benet: use __vlan_hwaccel helpers (Petr Oros) [1724777] - [netdrv] revert "[netdrv] be2net: Disable queue dump in be_tx_timeout handler" (Petr Oros) [1724777] - [infiniband] rdma/i40iw: Set queue pair state when being queried (Stefan Assmann) [1721712] - [infiniband] ib/i40iw: Use kmemdup rather than open coding (Stefan Assmann) [1721712] - [infiniband] rdma/i40iw: Handle workqueue allocation failure (Stefan Assmann) [1721712] - [nvdimm] libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: Fix namespace creation on misaligned addresses (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: stop padding pmem namespaces to section alignment (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields" (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock" (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change" (Baoquan He) [1724969] - [mm] sparsemem: cleanup 'section number' data types (Baoquan He) [1724969] - [kernel] mm/devm_memremap_pages: enable sub-section remap (Baoquan He) [1724969] - [mm] sparsemem: support sub-section hotplug (Baoquan He) [1724969] - [mm] sparsemem: prepare for sub-section ranges (Baoquan He) [1724969] - [kernel] mm: kill is_dev_zone() helper (Baoquan He) [1724969] - [mm] hotplug: kill is_dev_zone() usage in __remove_pages() (Baoquan He) [1724969] - [mm] sparsemem: convert kmalloc_section_memmap() to populate_section_memmap() (Baoquan He) [1724969] - [mm] hotplug: prepare shrink_{zone, pgdat}_span for sub-section removal (Baoquan He) [1724969] - [mm] sparsemem: add helpers track active portions of a section at boot (Baoquan He) [1724969] - [mm] sparsemem: introduce a SECTION_IS_EARLY flag (Baoquan He) [1724969] - [mm] sparsemem: introduce struct mem_section_usage (Baoquan He) [1724969] - [base] base/memory.c: get rid of find_memory_block_hinted() (Baoquan He) [1724969] - [mm] memory_hotplug: move and simplify walk_memory_blocks() (Baoquan He) [1724969] - [mm] memory_hotplug: rename walk_memory_range() and pass start+size instead of pfns (Baoquan He) [1724969] - [mm] hotplug: make remove_memory() interface usable (Baoquan He) [1724969] - [kernel] mm: make register_mem_sect_under_node() static (Baoquan He) [1724969] - [base] base/memory: use "unsigned long" for block ids (Baoquan He) [1724969] - [base] mm: section numbers use the type "unsigned long" (Baoquan He) [1724969] - [base] base/memory.c: Use DEVICE_ATTR_RO and friends (Baoquan He) [1724969] - [mm] sparse.c: set section nid for hot-add memory (Baoquan He) [1724969] - [mm] memory_hotplug: remove "zone" parameter from sparse_remove_one_section (Baoquan He) [1724969] - [base] mm/memory_hotplug: make unregister_memory_block_under_nodes() never fail (Baoquan He) [1724969] - [base] mm/memory_hotplug: remove memory block devices before arch_remove_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: drop MHP_MEMBLOCK_API (Baoquan He) [1724969] - [base] mm/memory_hotplug: create memory block devices after arch_add_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: allow arch_remove_memory() without CONFIG_MEMORY_HOTREMOVE (Baoquan He) [1724969] - [arm64] mm: add temporary arch_remove_memory() implementation (Baoquan He) [1724969] - [mm] sparse.c: clean up obsolete code comment (Baoquan He) [1724969] - [base] base/memory: pass a block_id to init_memory_block() (Baoquan He) [1724969] - [base] base/memory.c: remove an unnecessary check on NR_MEM_SECTIONS (Baoquan He) [1724969] - [s390] s390x/mm: implement arch_remove_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: make __remove_section() never fail (Baoquan He) [1724969] - [base] mm/memory_hotplug: make unregister_memory_section() never fail (Baoquan He) [1724969] - [base] base/memory.c: clean up relics in function parameters (Baoquan He) [1724969] - [base] mm, memory_hotplug: update a comment in unregister_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: release memory resource after arch_remove_memory() (Baoquan He) [1724969] - [kernel] mm, memory_hotplug: provide a more generic restrictions for memory hotplug (Baoquan He) [1724969] - [kernel] linux/memory_hotplug.h: remove duplicate declaration of offline_pages() (Baoquan He) [1724969] - [mm] x86: respect memory size limiting via mem= parameter (Baoquan He) [1724969] - [arm64] Add memory hotplug support (Baoquan He) [1724969] - [arm64] mm: check for upper PAGE_SHIFT bits in pfn_valid() (Baoquan He) [1724969] - [powerpc] mm: Fix section mismatch warning (Baoquan He) [1724969] - [base] mm/memory_hotplug: do not unlock after failing to take the device_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: drop "online" parameter from add_memory_resource() (Baoquan He) [1724969] - [s390] s390x/mm: fail when an altmap is used for arch_add_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: simplify and fix check_hotplug_memory_range() (Baoquan He) [1724969] - [mm] memory_hotplug: add nid parameter to arch_remove_memory (Baoquan He) [1724969] - [mm] sparse: pass nid instead of pgdat to sparse_add_one_section() (Baoquan He) [1724969] - [mm] sparse: drop pgdat_resize_lock in sparse_add/remove_one_section() (Baoquan He) [1724969] - [documentation] memory-hotplug.rst: add some details about locking internals (Baoquan He) [1724969] - [powerpc] powernv: hold device_hotplug_lock when calling memtrace_offline_pages() (Baoquan He) [1724969] - [powerpc] powernv: hold device_hotplug_lock when calling device_online() (Baoquan He) [1724969] - [powerpc] powernv: Allow memory that has been hot-removed to be hot-added (Baoquan He) [1724969] - [powerpc] powernv/memtrace: Remove memtrace mmap() (Baoquan He) [1724969] - [mm] memory_hotplug: fix online/offline_pages called w.o. mem_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: make add_memory() take the device_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: make remove_memory() take the device_hotplug_lock (Baoquan He) [1724969] - [powerpc] memtrace: Remove memory in chunks (Baoquan He) [1724969] - [base] mm/memory_hotplug.c: drop unnecessary checks from register_mem_sect_under_node() (Baoquan He) [1724969] - [base] mm/memory_hotplug.c: make register_mem_sect_under_node() a callback of walk_memory_range() (Baoquan He) [1724969] - [mm] memory_hotplug.c: call register_mem_sect_under_node() (Baoquan He) [1724969] - [mm] memory_hotplug.c: make add_memory_resource use __try_online_node (Baoquan He) [1724969] - [pci] Always allow probing with driver_override (Myron Stowe) [1702178] - [pci] Return error if cannot probe VF (Myron Stowe) [1702178] - [target] scsi: target: core: Do not overwrite CDB byte 1 (Maurizio Lombardi) [1764579] - [target] scsi: target: tcmu: clean the nl_cmd of the udev when nl send fails (Maurizio Lombardi) [1764579] - [target] scsi: target: tcmu: avoid use-after-free after command timeout (Maurizio Lombardi) [1764579] - [target] scsi: tcmu: Simplify tcmu_update_uio_info() (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: fix possible condition with no effect (if == else) (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Make sure PDU processing continues if parsing a command fails (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Make iscsit_map_iovec() more robust (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Handle too large immediate data buffers correctly (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Only send R2T if needed (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Detect conn_cmd_list corruption early (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Make the XCOPY setup code easier to read by inlining two functions (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Simplify LUN initialization in XCOPY implementation (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Remove a set-but-not-used member variable from the XCOPY implementation (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Rework the SPC-2 reservation handling code (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Fix a race condition in the LUN lookup code (Maurizio Lombardi) [1764579] - [target] scsi: target: alua: fix the tg_pt_gps_count (Maurizio Lombardi) [1764579] - [target] scsi: target: iscsi: Free conn_ops when zalloc_cpumask_var failed (Maurizio Lombardi) [1764579] - [target] scsi: target: iscsi: Fix np_ip_proto and np_sock_type in iscsit_setup_np (Maurizio Lombardi) [1764579] - [target] scsi: target: fix unsigned comparision with less than zero (Maurizio Lombardi) [1764579] - [target] scsi: target: Add device product id and revision configfs attributes (Maurizio Lombardi) [1764579] - [kernel] genirq/affinity: Remove const qualifier from node_to_cpumask argument (Ming Lei) [1743064] - [kernel] genirq/affinity: Spread vectors on node according to nr_cpu ratio (Ming Lei) [1743064] - [kernel] genirq/affinity: Improve __irq_build_affinity_masks() (Ming Lei) [1743064] - [kernel] genirq/affinity: Remove unused argument from [__]irq_build_affinity_masks() (Ming Lei) [1743064] - [kernel] workqueue, lockdep: Fix a memory leak in wq->lock_name (Waiman Long) [1736654] - [kernel] workqueue, lockdep: Fix an alloc_workqueue() error path (Waiman Long) [1736654] - [kernel] locking/lockdep: Report more stack trace statistics (Waiman Long) [1736654] - [kernel] locking/lockdep: Reduce space occupied by stack traces (Waiman Long) [1736654] - [kernel] locking/lockdep: Make it clear that what lock_class::key points at is not modified (Waiman Long) [1736654] - [kernel] lockdep: Make print_lock() address visible (Waiman Long) [1736654] - [kernel] locking/lockdep: Clean up #ifdef checks (Waiman Long) [1736654] - [kernel] locking/lockdep: Hide unused 'class' variable (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix lock used or unused stats error (Waiman Long) [1736654] - [kernel] locking/lockdep: increase size of counters for lockdep statistics (Waiman Long) [1736654] - [kernel] locking/lockdep: Move mark_lock() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unnecessary DEBUG_LOCKS_WARN_ON() (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix merging of hlocks with non-zero references (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix OOO unlock when hlocks need merging (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove !dir in lock irq usage check (Waiman Long) [1736654] - [kernel] locking/lockdep: Adjust new bit cases in mark_lock (Waiman Long) [1736654] - [kernel] locking/lockdep: Consolidate lock usage bit initialization (Waiman Long) [1736654] - [kernel] locking/lockdep: Check redundant dependency only when CONFIG_LOCKDEP_SMALL (Waiman Long) [1736654] - [kernel] locking/lockdep: Refactorize check_noncircular and check_redundant (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unused argument in __lock_release (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove redundant argument in check_deadlock (Waiman Long) [1736654] - [documentation] locking/lockdep: Add explanation to lock usage rules in lockdep design doc (Waiman Long) [1736654] - [kernel] locking/lockdep: Update comments on dependency search (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid constant checks in __bfs by using offset reference (Waiman Long) [1736654] - [kernel] locking/lockdep: Change the return type of __cq_dequeue() (Waiman Long) [1736654] - [kernel] locking/lockdep: Change type of the element field in circular_queue (Waiman Long) [1736654] - [kernel] locking/lockdep: Update comment (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unused argument in validate_chain() and check_deadlock() (Waiman Long) [1736654] - [kernel] locking/lockdep: Change the range of class_idx in held_lock struct (Waiman Long) [1736654] - [kernel] locking/lockdep: Define INITIAL_CHAIN_KEY for chain keys to start with (Waiman Long) [1736654] - [kernel] locking/lockdep: Use lockdep_init_task for task initiation consistently (Waiman Long) [1736654] - [kernel] locking/lockdep: Update obsolete struct field description (Waiman Long) [1736654] - [kernel] locking/lockdep: Print the right depth for chain key collision (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove useless conditional macro (Waiman Long) [1736654] - [kernel] locking/lockdep: Adjust lock usage bit character checks (Waiman Long) [1736654] - [documentation] locking/lockdep: Add description and explanation in lockdep design doc (Waiman Long) [1736654] - [kernel] locking/lockdep: Change all print_*() return type to void (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove the unused print_lock_trace() function (Waiman Long) [1736654] - [kernel] locking/lockdep: Don't complain about incorrect name for no validate class (Waiman Long) [1736654] - [kernel] lockdep: Add assertion to check if in an interrupt (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unnecessary unlikely() (Waiman Long) [1736654] - [kernel] locking/lockdep: Test all incompatible scenarios at once in check_irq_usage() (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid bogus Clang warning (Waiman Long) [1736654] - [kernel] locking/lockdep: Generate LOCKF_ bit composites (Waiman Long) [1736654] - [kernel] locking/lockdep: Use expanded masks on find_usage_*() functions (Waiman Long) [1736654] - [kernel] locking/lockdep: Map remaining magic numbers to lock usage mask names (Waiman Long) [1736654] - [kernel] locking/lockdep: Move valid_state() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING (Waiman Long) [1736654] - [kernel] lockdep: Simplify stack trace handling (Waiman Long) [1736654] - [kernel] locking/lockdep: Make lockdep_unregister_key() honor 'debug_locks' again (Waiman Long) [1736654] - [kernel] locking/lockdep: Zap lock classes even with lock debugging disabled (Waiman Long) [1736654] - [kernel] locking/lockdep: Only call init_rcu_head() after RCU has been initialized (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid a Clang warning (Waiman Long) [1736654] - [kernel] locking/lockdep: Shrink struct lock_class_key (Waiman Long) [1736654] - [kernel] locking/lockdep: Add module_param to enable consistency checks (Waiman Long) [1736654] - [tools] lockdep/lib/tests: Test dynamic key registration (Waiman Long) [1736654] - [tools] lockdep/lib/tests: Fix run_tests.sh (Waiman Long) [1736654] - [kernel] workqueue: Use dynamic lockdep keys for workqueues (Waiman Long) [1736654] - [kernel] locking/lockdep: Add support for dynamic keys (Waiman Long) [1736654] - [kernel] locking/lockdep: Verify whether lock objects are small enough to be used as class keys (Waiman Long) [1736654] - [kernel] locking/lockdep: Check data structure consistency (Waiman Long) [1736654] - [kernel] locking/lockdep: Reuse lock chains that have been freed (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix a comment in add_chain_cache() (Waiman Long) [1736654] - [kernel] locking/lockdep: Introduce lockdep_next_lockchain() and lock_chain_count() (Waiman Long) [1736654] - [kernel] locking/lockdep: Reuse list entries that are no longer in use (Waiman Long) [1736654] - [kernel] locking/lockdep: Free lock classes that are no longer in use (Waiman Long) [1736654] - [kernel] locking/lockdep: Update two outdated comments (Waiman Long) [1736654] - [kernel] locking/lockdep: Make it easy to detect whether or not inside a selftest (Waiman Long) [1736654] - [kernel] locking/lockdep: Split lockdep_free_key_range() and lockdep_reset_lock() (Waiman Long) [1736654] - [kernel] locking/lockdep: Initialize the locks_before and locks_after lists earlier (Waiman Long) [1736654] - [kernel] locking/lockdep: Make zap_class() remove all matching lock order entries (Waiman Long) [1736654] - [kernel] locking/lockdep: Reorder struct lock_class members (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid that add_chain_cache() adds an invalid chain to the cache (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix reported required memory size (2/2) (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix reported required memory size (1/2) (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix two 32-bit compiler warnings (Waiman Long) [1736654] - [kernel] locking/lockdep: Rename lockdep_info() to lockdep_init() (Waiman Long) [1736654] - [kernel] locking/lockdep: Add debug_locks check in __lock_downgrade() (Waiman Long) [1736654] - [kernel] locking/lockdep: Provide enum lock_usage_bit mask names (Waiman Long) [1736654] - [kernel] locking/lockdep: Simplify mark_held_locks() (Waiman Long) [1736654] - [kernel] locking/lockdep: Add debug_locks check in __lock_downgrade() (Waiman Long) [1736654] - [kernel] locking/lockdep: Stop using RCU primitives to access 'all_lock_classes' (Waiman Long) [1736654] - [kernel] locking/lockdep: Make concurrent lockdep_reset_lock() calls safe (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove a superfluous INIT_LIST_HEAD() statement (Waiman Long) [1736654] - [kernel] locking/lockdep: Introduce lock_class_cache_is_registered() (Waiman Long) [1736654] - [kernel] locking/lockdep: Inline __lockdep_init_map() (Waiman Long) [1736654] - [kernel] locking/lockdep: Declare local symbols static (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Test the lockdep_reset_lock() implementation (Waiman Long) [1736654] - [tools] lib/lockdep: Add dummy print_irqtrace_events() implementation (Waiman Long) [1736654] - [tools] lib/lockdep: Rename "trywlock" into "trywrlock" (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Run lockdep tests a second time under Valgrind (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Improve testing accuracy (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Fix shellcheck warnings (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Display compiler warning and error messages (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove ::version from lock_class structure (Waiman Long) [1736654] - [init] kconfig: disable io_uring support (Jeff Moyer) [1758680] - [virt] kvm: arm64: pmu: Reset sample period on overflow handling (Auger Eric) [1760872] - [virt] kvm: arm64: pmu: Set the CHAINED attribute before creating the in-kernel event (Auger Eric) [1760872] - [arm64] kvm: Handle PMCR_EL0.LC as RES1 on pure AArch64 systems (Auger Eric) [1760872] - [virt] kvm: arm64: pmu: Fix cycle counter truncation (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Introduce kvm_pmu_vcpu_init() to setup PMU counter index (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Support chained PMU counters (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Remove pmc->bitmask (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Re-create event when setting counter value (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Extract duplicated code to own function (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Rename kvm_pmu_{enable/disable}_counter functions (Auger Eric) [1760872] - [arm64] perf: Hook up new events (Auger Eric) [1760872] - [arm64] perf: Move event definitions into perf_event.h (Auger Eric) [1760872] - [arm64] perf: Remove duplicate generic cache events (Auger Eric) [1760872] - [arm64] perf: Terminate PMU assignment statements with semicolons (Auger Eric) [1760872] - [arm64] Allow CAVIUM_TX2_ERRATUM_219 to be selected (Auger Eric) [1771633] - [arm64] Avoid Cavium TX2 erratum 219 when switching TTBR (Auger Eric) [1771633] - [arm64] Enable workaround for Cavium TX2 erratum 219 when running SMT (Auger Eric) [1771633] - [arm64] kvm: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set (Auger Eric) [1771633] - [arm64] sysreg: fix incorrect definition of SYS_PAR_EL1_F (Auger Eric) [1771633] - [arm64] Force SSBS on context switch (Mark Salter) [1756103] - [arm64] enable pointer authentication (Mark Salter) [1756103] - [arm64] add ptrace regsets for ptrauth key management (Mark Salter) [1756103] - arm64: cpufeature: Rework ptr auth hwcaps using multi_entry_cap_matches (Mark Salter) [1756103] - [arm64] capabilities: Merge duplicate entries for Qualcomm erratum 1003 (Mark Salter) [1756103] - [arm64] cpufeature: Reduce number of pointer auth CPU caps from 6 to 4 (Mark Salter) [1756103] - [documentation] arm64: docs: document pointer authentication (Mark Salter) [1756103] - [documentation] arm64: docs: Document SSBS HWCAP (Mark Salter) [1756103] - [documentation] arm64: docs: Fix typos in ELF hwcaps (Mark Salter) [1756103] - [arm64] ptr auth: Move per-thread keys from thread_info to thread_struct (Mark Salter) [1756103] - [arm64] add prctl control for resetting ptrauth keys (Mark Salter) [1756103] - [arm64] perf: strip PAC when unwinding userspace (Mark Salter) [1756103] - [arm64] expose user PAC bit positions via ptrace (Mark Salter) [1756103] - [arm64] add basic pointer authentication support (Mark Salter) [1756103] - arm64/cpufeature: detect pointer authentication (Mark Salter) [1756103] - [arm64] cpufeature: Convert hook_lock to raw_spin_lock_t in cpu_enable_ssbs() (Mark Salter) [1756103] - [arm64] entry: Allow handling of undefined instructions from EL1 (Mark Salter) [1756103] - [arm64] Fix silly typo in comment (Mark Salter) [1756103] - [fs] smb3: fix signing verification of large reads (Dave Wysochanski) [1753114] - [fs] revert "nfs4: Fix v4.0 client state corruption when mount" (Benjamin Coddington) [1767012] - [kernel] svcrdma: Increase the default connection credit limit (Benjamin Coddington) [1771430] - [x86] quirks: Disable HPET on Intel Coffe Lake platforms (David Arcari) [1773774] - [sched] core: Fix CPU controller for !RT_GROUP_SCHED (Phil Auld) [1774652] - [x86] Add comment for x86 processor OS version support (David Arcari) [1709878] - [x86] kvm: svm: taint module and print taint message iff nested is enabled (Bandan Das) [1775410] - [x86] cpu: Add Tiger Lake to Intel family (Steve Best) [1773790] - [fs] Fix the locking in dcache_readdir() and friends (Miklos Szeredi) [1761746] - [infiniband] rdma/mlx5: Return proper error value (Mohammad Heib) [1772101] - [scsi] mpt3sas: change allocation option (Tomas Henzl) [1770264] - [scsi] qla2xxx: Initialized mailbox to prevent driver load failure (Himanshu Madhani) [1770309] - [mfd] intel-lpss: Add Intel Comet Lake PCH-H PCI IDs (David Arcari) [1773307] - [powercap] intel_rapl: add support for Cometlake desktop (David Arcari) [1759664] - [powercap] intel_rapl: add support for CometLake Mobile (David Arcari) [1746265] - [kernel] intel_rapl: need linux/cpuhotplug.h for enum cpuhp_state (Alexander Beregalov) [1732604] - [thermal] int340x/processor_thermal_device: Fix proc_thermal_rapl_remove() (Alexander Beregalov) [1732604] - [thermal] int340x/processor_thermal_device: add support for MMIO RAPL (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal_device: Fix build warning (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal: Read PPCC on resume (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal: Downgrade error message (Alexander Beregalov) [1732604] - [thermal] intel: int340x: processor_thermal_device: simplify to get driver data (Alexander Beregalov) [1732604] - [thermal] int3403_thermal: favor _TMP instead of PTYP (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: fix mode setting (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: Add additional UUIDs (Alexander Beregalov) [1732604] - [thermal] thermal: int340x_thermal: Fix sysfs race condition (Alexander Beregalov) [1732604] - [thermal] thermal: int340x_thermal: Make PCI dependency explicit (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: Fix a NULL vs IS_ERR() check (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: int3400_thermal: simplify getting .driver_data (Alexander Beregalov) [1732604] - [powercap] Invoke powercap_init() and rapl_init() earlier (Alexander Beregalov) [1732604] - [powercap] intel_rapl: Fix module autoloading issue (Alexander Beregalov) [1732604] - [powercap] intel_rapl: support two power limits for every RAPL domain (Alexander Beregalov) [1732604] - [powercap] intel_rapl: support 64 bit register (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract RAPL common code (Alexander Beregalov) [1732604] - [powercap] intel_rapl: cleanup hardcoded MSR access (Alexander Beregalov) [1732604] - [powercap] intel_rapl: cleanup some functions (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract register access operations (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract register address (Alexander Beregalov) [1732604] - [powercap] intel_rapl: introduce struct rapl_if_private (Alexander Beregalov) [1732604] - [kernel] intel_rapl: introduce intel_rapl.h (Alexander Beregalov) [1732604] - [powercap] intel_rapl: remove hardcoded register index (Alexander Beregalov) [1732604] - [powercap] intel_rapl: use reg instead of msr (Alexander Beregalov) [1732604] - [security] ima: Differentiate auditing policy rules from "audit" actions (Richard Guy Briggs) [1479911] - [security] ima: Do not audit if CONFIG_INTEGRITY_AUDIT is not set (Richard Guy Briggs) [1479911] - [security] ima: Use audit_log_format() rather than audit_log_string() (Richard Guy Briggs) [1479911] - [security] ima: Call audit_log_string() rather than logging it untrusted (Richard Guy Briggs) [1479911] - [security] selinux: avoid atomic_t usage in sidtab (Ondrej Mosnacek) [1741182] - [security] selinux: always return a secid from the network caches if we find one (Ondrej Mosnacek) [1741182] - [security] selinux: policydb - rename type_val_to_struct_array (Ondrej Mosnacek) [1741182] - [security] selinux: policydb - fix some checkpatch.pl warnings (Ondrej Mosnacek) [1741182] - [security] selinux: shuffle around policydb.c to get rid of forward declarations (Ondrej Mosnacek) [1741182] - [security] selinux: fix memory leak in policydb_init() (Ondrej Mosnacek) [1741182] - [security] selinux: check sidtab limit before adding a new entry (Ondrej Mosnacek) [1741182] - [security] selinux: format all invalid context as untrusted (Ondrej Mosnacek) [1479914 1741182] - [security] selinux: remove some no-op BUG_ONs (Ondrej Mosnacek) [1741182] - [security] selinux: provide __le variables explicitly (Ondrej Mosnacek) [1741182] - [security] selinux: avoid uninitialized variable warning (Ondrej Mosnacek) [1741182] - [security] selinux: remove useless assignments (Ondrej Mosnacek) [1741182] - [security] selinux: fix NULL dereference in policydb_destroy() (Ondrej Mosnacek) [1741182] - [security] selinux: convert to kvmalloc (Ondrej Mosnacek) [1741182] - [kernel] lsm: generalize flag passing to security_capable (Ondrej Mosnacek) [1741182] - [kernel] selinux: Remove unused selinux_is_enabled (Ondrej Mosnacek) [1741182] - [kernel] selinux: Remove cred security blob poisoning (Ondrej Mosnacek) [1741182] - [security] selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE (Ondrej Mosnacek) [1741182]- [tools] selftests: mlxsw: Add a test for leftover DSCP rule (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Fix local variable declarations in DSCP tests (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Add counters for GC events (Ivan Vecera) [1737368] - [netdrv] mlxsw: Bump firmware version to 13.2000.1886 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Prevent auto negotiation on number of lanes (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove 56G speed support (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Keep unmatched entries in a linked list (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Further reduce pool size on Spectrum-2 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Fix error path in mlxsw_sp_module_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: fix duplicated check on orig_egr_types (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Fix typo in qos_mc_aware.sh (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Do not process learned records with a dummy FID (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_dcb: Configure DSCP map as the last rule is removed (Ivan Vecera) [1737368] - [netdrv] remove redundant memset (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Apply the PTP shaper enable/disable logic (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Set up PTP shaper when port status has changed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Enable/disable PTP shaper on a port when getting HWTSTAMP on/off (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add new operation for getting the port's speed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Set the PTP shaper parameters (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add QoS PTP Shaper Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add note about the PTP shaper (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add ptps field in QoS ETS Element Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Fix validation in mlxsw_sp1_ptp_packet_finish() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support ethtool get_ts_info (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support SIOCGHWTSTAMP, SIOCSHWTSTAMP ioctls (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Configure PTP traps and FIFO events (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Garbage-collect unmatched entries (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support timestamping on Spectrum-1 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Disable BH when working with PHC (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Add PTP initialization / finalization (Ivan Vecera) [1737368] - [netdrv] mlxsw: pci: ptp: Hook into packet transmit path (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for using SKB control buffer (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Hook into packet receive path (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add support for traps specific to Spectrum-1 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Extract a helper for trap registration (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Global Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Time Precision Packet Timestamping Reading (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Precision Time Protocol Trap Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Time Precision Packet Port Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for negative temperature readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add the hottest thermal zone detection (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend thermal core with per inter-connect device thermal zones (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_flower: Implement support for ingress device matching (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Fix SRC_SYS_PORT element size (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Avoid size check for RX_ACL_SYSTEM_PORT element (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Write RX_ACL_SYSTEM_PORT acl element correctly (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Fix compilation on 32-bit ARM (Ivan Vecera) [1737368] - [tools] selftests: ptp: Add Physical Hardware Clock test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: PTP physical hardware clock initialization (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Add implementation for physical hardware clock operations (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management Pulse Per Second Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management UTC Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: pci: Query free running clock PCI BAR and offsets (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add a new interface for reading the hardware free running clock (Ivan Vecera) [1737368] - [netdrv] mlxsw: cmd: Free running clock PCI BAR and offsets via query firmware (Ivan Vecera) [1737368] - [netdrv] mlxsw: Implement flash update status notifications (Ivan Vecera) [1737368] - [netdrv] mlxfw: Introduce status_notify op and call it to notify about the status (Ivan Vecera) [1737368] - [netdrv] mlxfw: Propagate error messages through extack (Ivan Vecera) [1737368] - [netdrv] mlxsw: Move firmware flash implementation to devlink (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Reduce buffer size in transactions for SFP modules temperature readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend the index size for temperature sensors readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend hwmon interface with inter-connect temperature attributes (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management General Peripheral Information Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Extend sensor index field size of Management Temperature Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Re-order initialization sequence (Ivan Vecera) [1737368] - [netdrv] mlxsw: i2c: Allow flexible setting of I2C transactions size (Ivan Vecera) [1737368] - [netdrv] mlxsw: i2c: Extend initialization with querying firmware info (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Disallow prio-tagged packets when PVID is removed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Reduce pool size on Spectrum-2 (Ivan Vecera) [1737368] - [tools] selftests: tc_flower: Add TOS matching test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_flower: Fix TOS matching (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Test nexthop offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Refresh nexthop neighbour when it becomes dead (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Use different seeds for ECMP and LAG hash (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Prevent force of 56G (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Avoid warning after identical rules insertion (Ivan Vecera) [1737368] - [tools] selftests: Add loopback test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Implement loopback ethtool feature (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Port Physical Loopback Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: split base on local_ports_in_{1x, 2x} resources (Ivan Vecera) [1737368] - [netdrv] mlxsw: resources: Add local_ports_in_{1x, 2x} (Ivan Vecera) [1737368] - [netdrv] mlxsw: Bump firmware version to 13.2000.1122 (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove obsolete dependency on THERMAL=m (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Prevent ipv6 gateway with v4 route via replace and append (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Adjust CPU port shared buffer egress quotas (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Allow skipping ingress port quota configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Split business logic from mlxsw_sp_port_sb_pms_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Use new CPU ingress pool for control packets (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add pools for CPU traffic (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Remove assumption about pool order (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid changing multicast TCs' attributes (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid changing threshold type of first egress pool (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid configuration of multicast pool (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add ability to veto TC's configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add ability to veto pool's configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Use defines for pool indices (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add extack messages for invalid configurations (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Relax FIB rule validation (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Use a stable ECMP/LAG seed (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Test neighbour offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Add neighbour offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Propagate neighbour update errors (Ivan Vecera) [1737368] - [documentation] documentation: networking: devlink-info-versions: Add fw.psid (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for devlink info command (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add MGIR register (Ivan Vecera) [1737368] - [tools] selftests: forwarding: test for bridge mcast traffic after report and leave (Ivan Vecera) [1737368] - [netdrv] mlxsw: switch_ib: Pass valid HW id down to mlxsw_core_port_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove ndo_get_port_parent_id implementation (Ivan Vecera) [1737368] - [netdrv] mlxsw: Pass switch ID through devlink_port_attrs_set() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Rename rehash_dis trace (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Remove failed_rollback dead end (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Move rehash_dis trace call and err msg to vregion_migrate() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Remove redundant failed_rollback from migrate_start() (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove ndo_get_phys_port_name implementation (Ivan Vecera) [1737368] - [netdrv] mlxsw: Implement ndo_get_devlink_port (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Add a new test for strict priority (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Add qos_lib.sh (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: qos_mc_aware: Configure shared buffers (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Add shared buffer helpers (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Simplify deduction of DEVLINK_DEV (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Avoid double sourcing of lib.sh (Ivan Vecera) [1737368] - [tools] selftests: forwarding: Test action VLAN modify (Ivan Vecera) [1737368] - [tools] selftests: forwarding: Add PCP match and VLAN match tests (Ivan Vecera) [1737368] - [infiniband] rdma/mlx5: Use irq xarray locking for mkey_table (Alaa Hleihel) [1724336] - [netdrv] mlx4_core: Dynamically set guaranteed amount of counters per VF (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Initialize on stack link modes bitmap (Alaa Hleihel) [1724336] - [netdrv] mlx5e: fix ethtool self test: link speed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix handling of compressed CQEs in case of low NAPI budget (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Don't store direct pointer to action's tunnel info (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix NULL pointer dereference in extended destination (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only skip encap flows update when encap init failed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Determine source port properly for vlan push action (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix flow counter list auto bits struct (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Clear old rate limit when closing QP (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Remove dead code (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: prevent memory leak in mlx5_fpga_conn_create_cq (Alaa Hleihel) [1724336] - [netdrv] mlx5e: TX, Fix consumer index of error cqe dump (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Zero-memset WQE info struct upon update (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Add missing synchronize_srcu() for MW cases (Alaa Hleihel) [1724307 1724336] - [infiniband] rdma/mlx5: Order num_pending_prefetch properly with synchronize_srcu (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Do not allow rereg of a ODP MR (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix matching on tunnel addresses type (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add device ID of upcoming BlueField-2 (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Free mpi in mp_slave mode (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Use the original address for the page during free_pages (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: FWTrace, Reduce stack usage (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Remove unnecessary clear_bit()s (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix spelling mistake "offlaods" -> "offloads" (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Remove leftover declaration (Alaa Hleihel) [1724336] - [netdrv] mlx5e: ethtool, Fix a typo in WOL function names (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add missing include file to lib/crypto.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: remove self-assignment on esw->dev (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support MLX5_CMD_OP_QUERY_LAG as a DEVX general command (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Fix mlx5_ifc_query_lag_out_bits (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix formats with line continuation whitespace (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix mlx5e_tx_reporter_create return value (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix offset of tisc bits reserved field (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix -Wtype-limits compilation warnings (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support per device q counters in switchdev mode (Alaa Hleihel) [1659186 1724336] - [infiniband] ib/mlx5: Refactor code for counters allocation (Alaa Hleihel) [1659186 1724336] - [netdrv] mlx5: DR, Replace CRC32 implementation to use kernel lib (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Support IPv4 and IPv6 mixed matcher (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Allow insertion of duplicate rules (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: avoid 64-bit division in dr_icm_pool_mr_create() (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5e: Fix traffic duplication in ethtool steering (Alaa Hleihel) [1724336] - [netdrv] mlx5: DR, Allow matching on vport based on vhca_id (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Fix getting incorrect prev node in ste_free (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Remove redundant vport number from action (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: DR, Fix SW steering HW bits and definitions (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix missing assignment of variable err (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Fix rt's type in dr_action_create_reformat_action (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Fix error return code in dr_domain_init_resources() (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Fix addr's type in mlx5dr_icm_dm (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add devlink flow_steering_mode parameter (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add support to use SMFS in switchdev mode (Alaa Hleihel) [1760284 1724327 1724336] - [netdrv] mlx5: Add API to set the namespace steering mode (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add direct rule fs_cmd implementation (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add CONFIG_MLX5_SW_STEERING for software steering support (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose APIs for direct rule managing (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add required FW steering functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering rule functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering action functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering matcher functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering table functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering domain functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add Steering entry (STE) utilities (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose an internal API to issue RDMA operations (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, ICM pool memory allocator (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add direct rule command utilities (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add the internal direct rule types definitions (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add flow steering actions to fs_cmd shim layer (Alaa Hleihel) [1760284 1724327 1724336] - [netdrv] mlx5: Set only stag for match untagged packets (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: Add stub for mlx5_eswitch_mode (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Avoid disabling RoCE when uninitialized (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: Add HW bits and definitions required for SW steering (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Move device memory management to mlx5_core (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5e: Support LAG TX port affinity distribution (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Expose new function for TIS destroy loop (Alaa Hleihel) [1760285 1724336] - [kernel] mlx5: Add lag_tx_port_affinity capability bit (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Add device out of buffer counter (Alaa Hleihel) [1760291 1724336] - [netdrv] mlx5: Fix the order of fc_stats cleanup (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix deallocation of non-fully init encap entries (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only access fully initialized flows in neigh update (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor neigh update for concurrent execution (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor neigh used value update for concurrent execution (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect neigh hash encap list with spinlock and rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor mlx5e_neigh_update_table->encap_lock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend neigh hash entry with rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Always take reference to neigh entry (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extract code that queues neigh update work into function (Alaa Hleihel) [1663231 1724336] - [kernel] mlx5: Add support for VNIC_ENV internal rq counter (Alaa Hleihel) [1760291 1724336] - [netdrv] mlx5e: Use refcount_t for refcount (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Use vhca_id in generating representor port_index (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Simplify querying port representor parent id (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5: E-switch, Removed unused hwid (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Allow concurrent creation of encap entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect encap hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend encap entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Allow concurrent creation of mod_hdr entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect mod_hdr hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect mod header entry flows list with spinlock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend mod header entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Allow concurrent creation of hairpin entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect hairpin hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect hairpin entry flows list with spinlock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend hairpin entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5: E-switch, Tide up eswitch config sequence (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Remove redundant mc_promisc NULL check (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, remove redundant error handling (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Introduce helper function to enable/disable vports (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Initialize TSAR Qos hardware block before its user vports (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Combine metadata enable/disable functionality (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Verify support QoS element type (Alaa Hleihel) [1724336] - [netdrv] mlx5: Make load_one() and unload_one() symmetric (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add flow counter pool (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5: Add flow counter bulk infrastructure (Alaa Hleihel) [1760297 1724336] - [kernel] mlx5: Add flow counter bulk allocation hardware bits and command (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5: Refactor and optimize flow counter bulk query (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5e: Protect tc flow table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Rely on rcu instead of rtnl lock when getting upper dev (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Eswitch, use state_lock to synchronize vlan change (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Eswitch, change offloads num_flows type to atomic64 (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Protect unready flows with dedicated lock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect tc flows hashtable with rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Change flow flags type to unsigned long (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend tc flow struct with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Simplify get_route_and_out_devs helper function (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Improve ethtool rxnfc callback structure (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Avoid warning print when not required (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Print a warning when LRO feature is dropped or not allowed (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Remove ethernet segment from dump WQE (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Add num bytes metadata to WQE info (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix delay in fw fatal report handling due to fw report (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix crdump chunks print (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Block MR WR if UMR is not possible (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix MR re-registration flow to use UMR properly (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Report and handle ODP support properly (Alaa Hleihel) [1724308 1724336] - [infiniband] ib/mlx5: Consolidate use_umr checks into single function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix compatibility issue with ethtool flash device (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix use-after-free error while accessing ev_file pointer (Alaa Hleihel) [1724307 1724336] - [netdrv] mlx5e: Remove redundant check in CQE recovery flow of tx reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix error flow of CQE recovery on tx reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix false negative indication on tx reporter CQE recovery (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix tisn field placement (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix tisn field name (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix progress params context WQE layout (Alaa Hleihel) [1724336] - [kernel] mlx5: kTLS, Fix wrong TIS opmod constants (Alaa Hleihel) [1724336] - [netdrv] mlx5: crypto, Fix wrong offset in encryption key command (Alaa Hleihel) [1724336] - [netdrv] mlx5e: ethtool, Avoid setting speed to 56GBASE when autoneg off (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only support tx/rx pause setting for port owner (Alaa Hleihel) [1724336] - [netdrv] mlx5: Support inner header match criteria for non decap flow action (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Use flow keys dissector to parse packets for ARFS (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Check the correct variable in error handling code (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Fix implicit MR release flow (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5e: always initialize frag->last_in_page (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Release locks during notifier unregister (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix MR registration flow to use UMR properly (Alaa Hleihel) [1764207 1724336] - [netdrv] mlx5e: kTLS, Call WARN_ONCE on netdev mismatch (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Prevent encap flow counter update async to user query (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix matching of speed to PRM link modes (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix modify_cq_in alignment (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add missing RDMA_RX capabilities (Alaa Hleihel) [1724336] - [netdrv] mlx5: Use reversed order when unregister devices (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix RSS Toeplitz setup to be aligned with the HW specification (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Prevent concurrent MR updates during invalidation (Alaa Hleihel) [1724308 1724336] - [infiniband] ib/mlx5: Fix clean_mr() to work in the expected order (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Move MRs to a kernel PD when freeing them to the MR cache (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Use direct mkey destroy command upon UMR unreg failure (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix unreg_umr to ignore the mkey state (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Replace kfree with kvfree (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Replace kfree with kvfree (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Rely on filter_dev instead of dissector keys for tunnels (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Verify encapsulation is supported (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Convert single case statement switch statements into if statements (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Reduce ingress acl modify metadata stack usage (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Fix compilation error in TLS code (Alaa Hleihel) [1724336] - [netdrv] mlx5e: IPoIB, Add error path in mlx5_rdma_setup_rn (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix error flow in tx reporter diagnose (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix return value from timeout recover function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Rx, Fix checksum calculation for new hardware (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix port tunnel GRE entropy control (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Fix default encap mode (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Return in default case statement in tx_post_resync_params (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Register devlink ports for physical link, PCI PF, VFs (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Set RDMA DIM to be enabled by default (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Report correctly tag matching rendezvous capability (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Implement VHCA tunnel mechanism in DEVX (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Introduce VHCA tunnel device capability (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Add kTLS TX HW offload support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Introduce a fenced NOP WQE posting function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Re-work TIS creation functions (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Tx, Unconstify SQ stop room (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Don't implicitly assume SKB-less wqe has one WQEBB (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Make SQ WQE fetch function type generic (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Enforce L4 inline copy when needed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move helper functions to a new txrx datapath header (Alaa Hleihel) [1724336] - [netdrv] mlx5: Accel, Add core TLS support for the Connect-X family (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add crypto library to support create/destroy encryption key (Alaa Hleihel) [1724336] - [netdrv] mlx5: Kconfig, Better organize compilation flags (Alaa Hleihel) [1724336] - [netdrv] mlx5: Accel, Expose accel wrapper for IPsec FPGA function (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Add counter_alloc_stats() and counter_update_stats() support (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support statistic q counter configuration (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Add counter set id as a parameter for mlx5_ib_query_q_counters() (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support set qp counter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Added devlink info callback (Alaa Hleihel) [1724336] - [netdrv] mlx5: Added fw version query command (Alaa Hleihel) [1724336] - [kernel] mlx5: Add rts2rts_qp_counters_set_id field in hca cap (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Use proper allocation API to get zeroed memory (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: DEVX cleanup mdev (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Add DEVX support for CQ events (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Implement DEVX dispatching event (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Enable subscription for device events over DEVX (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Register DEVX with mlx5_core to get async events (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_EVENT_FD (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Properly name the generic WQE control field (Alaa Hleihel) [1724336] - [kernel] mlx5: Introduce TLS TX offload hardware bits and structures (Alaa Hleihel) [1724336] - [netdrv] mlx5: Refactor mlx5_esw_query_functions for modularity (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch prepare functions change handler to be modular (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Introduce and use mlx5_eswitch_get_total_vports() (Alaa Hleihel) [1724327 1724336] - [infiniband] ib/mlx5: Fixed reporting counters on 2nd port for Dual port RoCE (Alaa Hleihel) [1724336] - [kernel] mlx5: Expose device definitions for object events (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report EQE data upon CQ completion (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report a CQ error event only when a handler was set (Alaa Hleihel) [1724336] - [netdrv] mlx5: mlx5_core_create_cq() enhancements (Alaa Hleihel) [1724336] - [netdrv] mlx5: Expose the API to register for ANY event (Alaa Hleihel) [1724336] - [netdrv] mlx5: Use event mask based on device capabilities (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Fix mlx5_core_destroy_cq() error flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Handle UC address change in switchdev mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Consider host PF for inline mode and vlan pop (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use iterator for vlan and min-inline setups (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Reg/unreg function changed event at correct stage (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Consolidate eswitch function number of VFs (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Refactor eswitch SR-IOV interface (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Handle host PF vport mac/guid for ECPF (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use correct flags when configuring vlan (Alaa Hleihel) [1724336] - [netdrv] mlx5: Reduce dependency on enabled_vfs counter and num_vfs (Alaa Hleihel) [1724336] - [netdrv] mlx5: Don't handle VF func change if host PF is disabled (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Limit scope of mlx5_get_next_phys_dev() to PCI PF devices (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move pci status reg access mutex to mlx5_pci_init (Alaa Hleihel) [1724336] - [kernel] mlx5: Rename mlx5_pci_dev_type to mlx5_coredev_type (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Cleanup rep when doing unload (Alaa Hleihel) [1724336] - [infiniband] {ib, net}/mlx5: E-Switch, Use index of rep for vport to IB port mapping (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use vport index when init rep (Alaa Hleihel) [1724327 1724336] - [kernel] mlx5: Added MCQI and MCQS registers' description to ifc (Alaa Hleihel) [1724336] - [kernel] mlx5: Add hardware definitions for sub functions (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Disallow tc redirect offload cases we don't support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Expose same physical switch_id for all representors (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Don't refresh TIRs when updating representor SQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: reduce stack usage in mlx5_eswitch_termtbl_create (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Set drvinfo in generic manner (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Correct phys_port_name for PF port (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Report netdevice MPLS features (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move to HW checksumming advertising (Alaa Hleihel) [1724336] - [netdrv] mlx5: MPFS, Allow adding the same MAC more than once (Alaa Hleihel) [1724336] - [netdrv] mlx5: MPFS, Cleanup add MAC flow (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move queue param structs to en/params.h (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Encapsulate open/close queues into a function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Consider XSK in XDP MTU limit calculation (Alaa Hleihel) [1724336] - [netdrv] mlx5e: XDP_TX from UMEM support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Share the XDP SQ for XDP_TX between RQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Refactor struct mlx5e_xdp_info (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Allow ICO SQ to be used by multiple RQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Calculate linear RX frag size considering XSK (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Replace deprecated PCI_DMA_TODEVICE (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Attach/detach XDP program safely (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Enable vport metadata matching if firmware supports it (Alaa Hleihel) [1724327 1724336] - [infiniband] rdma/mlx5: Add vport metadata matching for IB representors (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Add match on vport metadata for rule in slow path (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Pass metadata from FDB to eswitch manager (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Add query and modify esw vport context functions (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Add match on vport metadata for rule in fast path (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Specifying known origin of packets matching the flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Tag packet with vport number in VF vports and uplink ingress ACLs (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Add flow context for flow tag (Alaa Hleihel) [1724336] - [netdrv] mlx5: Introduce a helper API to check VF vport (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Support allocating modify header context from ingress ACL (Alaa Hleihel) [1724336] - [netdrv] mlx5: Get vport ACL namespace by vport index (Alaa Hleihel) [1724336] - [kernel] mlx5: Introduce vport metadata matching bits and enum constants (Alaa Hleihel) [1724336] - [netdrv] mlx5: Convert mkey_table to XArray (Alaa Hleihel) [1724308 1724307 1724336] - [infiniband] rdma/mlx5: Refactor MR descriptors allocation (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Use PA mapping for PI handover (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Improve PI handover performance (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Remove unused IB_WR_REG_SIG_MR code (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Enable decap and packet reformat on FDB (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Consider eswitch encap mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: add missing void argument to function mlx5_devlink_alloc (Alaa Hleihel) [1724336] - [kernel] mlx5: Expose eswitch encap mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: Declare more strictly devlink encap mode (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: use indirect calls wrapper for the rx packet handler (Alaa Hleihel) [1724336] - [netdrv] mlx5e: use indirect calls wrapper for skb allocation (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report devlink health on FW fatal issues (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add support for FW fatal reporter dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add fw fatal devlink_health_reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report devlink health on FW issues (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add support for FW reporter dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: Create FW devlink_health_reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Issue SW reset on FW assert (Alaa Hleihel) [1724336] - [netdrv] mlx5: Control CR-space access by different PFs (Alaa Hleihel) [1724336] - [netdrv] mlx5: Handle SW reset of FW in error flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add Crdump support (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add Vendor Specific Capability access gateway (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move all devlink related functions calls to devlink.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add EQ enable/disable API (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Use a single IRQ for all async EQs (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Rename mlx5_irq_info to mlx5_irq (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move all IRQ logic to pci_irq.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: Generalize IRQ interface to work with irq_table (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ table creation from EQ table creation (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move IRQ affinity set to IRQ allocation phase (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move IRQ rmap creation to IRQ allocation phase (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ data from EQ table data (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ request/free from EQ life cycle (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Change interrupt handler to call chain notifier (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Introduce EQ polling budget (Alaa Hleihel) [1724336] - [netdrv] mlx5: Support querying max VFs from device (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Return raw output for query esw functions (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Handle representors creation in handler context (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Increase wait time for fw initialization (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move firmware flash implementation to devlink (Alaa Hleihel) [1724336] - [netdrv] mlx5e: TX, Improve performance under GSO workload (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Use termination table for VLAN push actions (Alaa Hleihel) [1722647 1724327 1724336] - [netdrv] mlx5e: Geneve, Add support for encap/decap flows offload (Alaa Hleihel) [1725582 1724336] - [netdrv] mlx5e: Rearrange tc tunnel code in a modular way (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Geneve, Keep tunnel info as pointer to the original struct (Alaa Hleihel) [1724336] - [netdrv] mlx5: Geneve, Manage Geneve TLV options (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Enable setting multiple match criteria for flow group (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Allow matching only enc_key_id/enc_dst_port for decapsulation action (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Generalize vport type in vport representor (Alaa Hleihel) [1724336] - [netdrv] {ib, net}/mlx5: Constify rep ops functions pointers (Alaa Hleihel) [1724327 1724336] - [netdrv] {ib, net}/mlx5: No need to typecast from void* to mlx5_ib_dev* (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Honor eswitch functions changed event cap (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Replace host_params event with functions_changed event (Alaa Hleihel) [1724327 1724336] - [kernel] mlx5: Introduce termination table bits (Alaa Hleihel) [1722647 1724336] - [kernel] mlx5: Add core dump register access HW bits (Alaa Hleihel) [1724336] - [netdrv] mlx5: potential error pointer dereference in error handling (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Support tagged tunnel over bond (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Avoid detaching non-existing netdev under switchdev mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix source port matching in fdb peer flow rule (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace reciprocal_scale in TX select queue function (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid reloading already removed devices (Alaa Hleihel) [1724335] - [netdrv] mlx5: Update pci error handler entries and command translation (Alaa Hleihel) [1724335] - [infiniband] mlx5: avoid 64-bit division (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Disable rxhash when CQE compress is enabled (Alaa Hleihel) [1724335] - [netdrv] mlx5e: restrict the real_dev of vlan device is the same as uplink device (Alaa Hleihel) [1724335] - [netdrv] mlx5: Allocate root ns memory using kzalloc to match kfree (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid double free in fs init error unwinding path (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid double free of root ns in the error flow path (Alaa Hleihel) [1724335] - [netdrv] mlx5: Fix error handling in mlx5_load() (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix possible modify header actions memory leak (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix no rewrite fields with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Additional check for flow destination comparison (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Add missing ethtool driver info for representors (Alaa Hleihel) [1766306 1724335] - [netdrv] mlx5e: Fix number of vports for ingress ACL configuration (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled (Alaa Hleihel) [1724335] - [netdrv] mlx5: Fix peer pf disable hca command (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Correct type to u16 for vport_num and int for vport_index (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add meaningful return codes to status_to_err function (Alaa Hleihel) [1724335] - [netdrv] mlx5: Imply MLXFW in mlx5_core (Alaa Hleihel) [1724335] - [netdrv] mlx5: Set completion EQs as shared resources (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Verify DEVX general object type correctly (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Remove MAYEXEC flag (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Device resource control for privileged DEVX user (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Add steering SW ICM device memory type (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Warn on allocated MEMIC buffers during cleanup (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Support device memory type attribute (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Add missing XRC options to QP optional params mask (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Use atomic rep state to serialize state change (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Fix the check of legal vport (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Use getter to access all vport array (Alaa Hleihel) [1724335] - [netdrv] mlx5: Use available mlx5_vport struct (Alaa Hleihel) [1724335] - [netdrv] mlx5: Reuse mlx5_esw_for_each_vf_vport macro in two files (Alaa Hleihel) [1724335] - [netdrv] mlx5: Remove unused mlx5_query_nic_vport_vlans (Alaa Hleihel) [1724335] - [netdrv] mlx5e: remove meaningless CFLAGS_tracepoint.o (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Put the common XDP code into a function (Alaa Hleihel) [1724335] - [netdrv] mlx5e: ethtool, Add support for EEPROM high pages query (Alaa Hleihel) [1724322 1724335] - [netdrv] mlx5e: Return error when trying to insert existing flower filter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace TC VLAN pop with VLAN 0 rewrite in prio tag mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: ACLs for priority tag mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Turn on HW tunnel offload in all TIRs (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Take common TIR context settings into a function (Alaa Hleihel) [1724335] - [kernel] mlx5: Fix broken hca cap offset (Alaa Hleihel) [1725554 1724335] - [kernel] mlx5: Geneve, Add flow table capabilities for Geneve decap with TLV options (Alaa Hleihel) [1725554 1724335] - [kernel] mlx5: Geneve, Add basic Geneve encap/decap flow table capabilities (Alaa Hleihel) [1725554 1724335] - [netdrv] mlx5: Eswitch, enable RoCE loopback traffic (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add new miss flow table action (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add support in RDMA RX steering (Alaa Hleihel) [1724335] - [netdrv] mlx5: Pass flow steering objects to fs_cmd (Alaa Hleihel) [1724335] - [netdrv] mlx5: Enable general events on all interfaces (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Restrict 'DELAY_DROP_TIMEOUT' subtype to Ethernet interfaces (Alaa Hleihel) [1724335] - [netdrv] mlx5: Separate and generalize dma device from pci device (Alaa Hleihel) [1724335] - [netdrv] mlx5: Get rid of storing copy of device name (Alaa Hleihel) [1724335] - [kernel] mlx5: e-switch: Introduce prio tag mode (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Expose TIR ICM address to user space (Alaa Hleihel) [1724335] - [netdrv] mlx5: Introduce new TIR creation core API (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose TIR ICM address in command outbox (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose SW ICM related device memory capabilities (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Use #define for the WQE wait timeout constant (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused rx_page_reuse stat (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Take HW interrupt trigger into a function (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused parameter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Add an underflow warning comment (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Move parameter calculation functions to en/params.c (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Report mlx5e_xdp_set errors (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused parameter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Inline small packets into the TX MPWQE in XDP xmit flow (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Add TX MPWQE session counter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Enhance RQ indication for XDP redirect flush (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Fix shifted flag index in RQ bitmap (Alaa Hleihel) [1724335] - [netdrv] mlx5e: RX, Support multiple outstanding UMR posts (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Don't create IB representors when in multiport RoCE mode (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Initialize roce port info before multiport master init (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Allow DEVX and raw creation flow on reps (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Add query e-switch vport context to devx white list (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Allow inserting a steering rule to the FDB (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Create flow table with max size supported (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Access the prio bypass inside the FDB flow table namespace (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Check for error return in flow_rule rather than err (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Remove VF representor profile (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move to single device multiport ports in switchdev mode (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move SMI caps logic (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Refactor netdev affinity code (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move default representors SQ steering to rule to modify QP (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move rep into port struct (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Use correct size for device resources (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move ports allocation to outside of INIT stage (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Free IB device on remove (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move netdev info into the port struct (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, add a new prio to be used by the RDMA side (Alaa Hleihel) [1724335] - [kernel] mlx5: E-Switch, don't use hardcoded values for FDB prios (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Remove references to uboject->context (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Unify logic of MTU boundaries (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Obsolete param field holding a constant value (Alaa Hleihel) [1724335] - [netdrv] mlx5: A write memory barrier is sufficient in EQ ci update (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Do not rewrite fields with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Offload TC e-switch rules with ingress VLAN device (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Offload TC e-switch rules with egress VLAN device (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Allow VLAN rewrite of prio field with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Deny VLAN rewrite if there is no VLAN header match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Use helpers to get headers criteria and value pointers (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Return -EOPNOTSUPP when attempting to offload an unsupported action (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Deletes unnecessary setting of esw_attr->parse_attr (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove 'parse_attr' argument in parse_tc_fdb_actions() (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Make the log friendly when decapsulation offload not supported (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Fix double mutex initialization (Alaa Hleihel) [1724335] - [netdrv] mlx5: Handle event of power detection in the PCIE slot (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Cleanup WQE page fault handler (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose MPEIN (Management PCIE INfo) register layout (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add rate limit print macros (Alaa Hleihel) [1724335] - [infiniband] mlx5: Add explicit bar address field (Alaa Hleihel) [1724335] - [netdrv] mlx5: Replace dev_err/warn/info by mlx5_core_err/warn/info (Alaa Hleihel) [1724335] - [netdrv] mlx5: Use dev->priv.name instead of dev_name (Alaa Hleihel) [1724335] - [netdrv] mlx5: Make mlx5_core messages independent from mdev->pdev (Alaa Hleihel) [1724335] - [netdrv] mlx5: Break load_one into three stages (Alaa Hleihel) [1724335] - [netdrv] mlx5: Function setup/teardown procedures (Alaa Hleihel) [1724335] - [netdrv] mlx5: Move health and page alloc init to mdev_init (Alaa Hleihel) [1724335] - [netdrv] mlx5: Split mdev init and pci init (Alaa Hleihel) [1724335] - [netdrv] mlx5: Remove redundant init functions parameter (Alaa Hleihel) [1724335] - [kernel] mlx5: Remove spinlock support from mlx5_write64 (Alaa Hleihel) [1724335] - [kernel] mlx5: Remove unused MLX5_*_DOORBELL_LOCK macros (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Declare devx_async_cmd_event_fops static (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Compare only index part of a memory window rkey (Alaa Hleihel) [1724335] - [infiniband] mlx5: Convert mlx5_srq_table to XArray (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace TC VLAN pop and push actions with VLAN modify (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: Support VLAN modify action (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: Add VLAN ID rewrite fields (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: TX, Add geneve tunnel stateless offload support (Alaa Hleihel) [1722661 1724335] - [netdrv] mlx5e: Take SW parser code to a separate function (Alaa Hleihel) [1722661 1724335] - [netdrv] mlx5e: Fix port buffer function documentation format (Alaa Hleihel) [1724335] - [netdrv] mlx5: Simplify mlx5_sriov_is_enabled() by using pci core API (Alaa Hleihel) [1724335] - [netdrv] mlx5: Rename total_vfs to total_vports (Alaa Hleihel) [1724335] - [netdrv] mlx5: Simplify sriov enable/disable flow (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Use rdma_user_map_io for mapping BAR pages (Alaa Hleihel) [1724333] - [netdrv] mlx5e: ethtool, Remove unsupported SFP EEPROM high pages query (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Switch to Toeplitz RSS hash by default (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Protect against non-uplink representor for encap (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Rx, Fixup skb checksum for packets with tail padding (Alaa Hleihel) [1724333] - [netdrv] mlx5e: XDP, Avoid checksum complete when XDP prog is loaded (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Use fail-safe channels reopen in tx reporter recover (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Skip un-needed tx recover if interface state is down (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update xon formula (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update xoff formula (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, fix syndrome (0x678139) when turn on vepa (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5: E-Switch, Protect from invalid memory access in offload fdb table (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Fix access to invalid memory when toggling esw modes (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5e: Add a lock on tir list (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix error handling when refreshing TIRs (Alaa Hleihel) [1724333] - [netdrv] mlx5: Decrease default mr cache size (Alaa Hleihel) [1748518 1724333] - [infiniband] ib/mlx5: Reset access mask when looping inside page fault handler (Alaa Hleihel) [1724333] - [netdrv] mlx5: Avoid panic when setting vport rate (Alaa Hleihel) [1724333] - [netdrv] mlx5: Avoid panic when setting vport mac, getting vport config (Alaa Hleihel) [1724333] - [netdrv] mlx5e: IPoIB, Fix RX checksum statistics update (Alaa Hleihel) [1724333] - [netdrv] mlx5: Remove redundant lag function to get pf num (Alaa Hleihel) [1724333] - [netdrv] mlx5: ODP support for XRC transport is not enabled by default in FW (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update tx reporter status in case channels were successfully opened (Alaa Hleihel) [1722274 1724333] - [netdrv] mellanox: Switch to bitmap_zalloc() (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Set correct write permissions for implicit ODP MR (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Declare mlx5e_tx_reporter_recover_from_ctx as static (Alaa Hleihel) [1724333] - [netdrv] mlx5: Support ndo bridge_setlink and getlink (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5: E-Switch, Add support for VEPA in legacy mode (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5e: Fix mlx5e_tx_reporter_create return value (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix return status of TX reporter timeout recover (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Re-add support for TX timeout when TX reporter is not valid (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix warn print in case of TX reporter creation failure (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Disable esw manager vport correctly (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Fix the warning on vport index out of range (Alaa Hleihel) [1724333] - [netdrv] mlx5: Delete unused FPGA QPN variable (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Wrap the open and apply of channels in one fail-safe function (Alaa Hleihel) [1724333] - [netdrv] mlx5: Factor out HCA capabilities functions (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Allow transition to offloads mode for ECPF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Load/unload VF reps according to event from host PF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Consider ECPF vport depends on eswitch ownership (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Assign a different position for uplink rep and vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Centralize repersentor reg/unreg to eswitch driver (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Support load/unload reps of specific vport types (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Add state to eswitch vport representors (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Use getter and iterator to access vport/rep (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Split VF and special vports for offloads mode (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Refactor offloads flow steering init/cleanup (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Properly refer to host PF vport as other vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Properly refer to the esw manager vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: Correctly set LAG mode for ECPF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Avoid magic numbers when initializing offloads mode (Alaa Hleihel) [1724333] - [kernel] mlx5: Relocate vport macros to the vport header file (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Normalize the name of uplink vport number (Alaa Hleihel) [1724333] - [kernel] mlx5: Provide an alternative VF upper bound for ECPF (Alaa Hleihel) [1724333] - [kernel] mlx5: Add host params change event (Alaa Hleihel) [1724333] - [kernel] mlx5: Add query host params command (Alaa Hleihel) [1724333] - [netdrv] mlx5: Update enable HCA dependency (Alaa Hleihel) [1724333] - [netdrv] mlx5: Introduce Mellanox SmartNIC and modify page management logic (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Use unified register/load function for uplink and VF vports (Alaa Hleihel) [1724333] - [netdrv] mlx5: Use consistent vport num argument type (Alaa Hleihel) [1724333] - [kernel] mlx5: Use void pointer as the type in address_of macro (Alaa Hleihel) [1724333] - [netdrv] mlx5: Align ODP capability function with netdev coding style (Alaa Hleihel) [1724333] - [netdrv] mlx5: use RCU lock in mlx5_eq_cq_get() (Alaa Hleihel) [1724333] - [infiniband] rdma/mlx5: Fix memory leak in case we fail to add an IB device (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Simplify WQE count power of two check (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Add tx timeout support for mlx5e tx reporter (Alaa Hleihel) [1722274 1724333] - [netdrv] mlx5e: Add tx reporter support (Alaa Hleihel) [1722274 1724333] - [infiniband] ib/mlx5: Advertise XRC ODP support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Advertise SRQ ODP support for supported transports (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Add ODP SRQ support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Let read user wqe also from SRQ buffer (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Add XRC initiator ODP support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Clean mlx5_ib_mr_responder_pfault_handler() signature (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Remove useless check in ODP handler (Alaa Hleihel) [1724333] - [netdrv] mlx5: Set ODP SRQ support in firmware (Alaa Hleihel) [1724333] - [kernel] mlx5: Add XRC transport to ODP device capabilities layout (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Implement DEVX hot unplug for async command FD (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Implement the file ops of DEVX async command FD (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Reuse fold sw stats in representors (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Present the representors SW stats when state is not opened (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Separate between ethtool and netdev software stats folding (Alaa Hleihel) [1724333] - [netdrv] mlx5: Add trace points for flow tables create/destroy (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Expand XPS cpumask to cover all online cpus (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Take CQ decompress fields into a separate structure (Alaa Hleihel) [1724333] - [netdrv] mlx5e: RX, Make sure packet header does not cross page boundary (Alaa Hleihel) [1724333] - [infiniband] mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1724333] - [netdrv] mlx5: Add pci AtomicOps request (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Don't override existing ip_protocol (Alaa Hleihel) [1724333] - [infiniband] rdma/mlx5: Replace kzalloc with kcalloc (Alaa Hleihel) [1724333] - [documentation] netfilter: doc: Add nf_tables part in tproxy.txt (Phil Sutter) [1762977] - [net] netfilter: nft_socket: fix erroneous socket assignment (Phil Sutter) [1762977] - [net] netfilter: nft_socket: Break evaluation if no socket found (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Fix missing-braces warning (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Add missing config check (Phil Sutter) [1762977] - [net] netfilter: nf_tables: Add native tproxy support (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Move nf_tproxy_assign_sock() to nf_tproxy.h (Phil Sutter) [1762977] - [net] sched: ensure opts_len <= IP_TUNNEL_OPTS_MAX in act_tunnel_key (Ivan Vecera) [1774706] - [net] ipmr: Fix skb headroom in ipmr_get_route(). (Guillaume Nault) [1773692] - [net] netns: fix GFP flags in rtnl_net_notifyid() (Guillaume Nault) [1763661] - [net] netns: fix NLM_F_ECHO mechanism for RTM_NEWNSID (Guillaume Nault) [1763661] - [netdrv] ptp: ptp_clock: Publish scaled_ppm_to_ppb (Ivan Vecera) [1772085] - [kernel] rh_features: move rh_features entry to sys/kernel (Hangbin Liu) [1660583] - [net] netfilter: nf_tables: Make nft_meta expression more robust (Phil Sutter) [1725169] - [tools] selftests/tls: add test for concurrent recv and send (Sabrina Dubroca) [1760375] - [net] tls: add a TX lock (Sabrina Dubroca) [1760375] - [net] tls: don't pay attention to sk_write_pending when pushing partial records (Sabrina Dubroca) [1760375] - [net] tls: fix sk_msg trim on fallback to copy mode (Sabrina Dubroca) [1760375] - [net] tls: align non temporal copy to cache lines (Sabrina Dubroca) [1760375] - [net] tls: remove the record tail optimization (Sabrina Dubroca) [1760375] - [net] tls: use RCU for the adder to the offload record list (Sabrina Dubroca) [1760375] - [net] tls: unref frags in order (Sabrina Dubroca) [1760375] - [net] tcp: ulp: fix possible crash in tcp_diag_get_aux_size() (Sabrina Dubroca) [1760375] - [net] tls: dedup the record cleanup (Sabrina Dubroca) [1760375] - [net] tls: clean up the number of #ifdefs for CONFIG_TLS_DEVICE (Sabrina Dubroca) [1760375] - [net] tls: narrow down the critical area of device_offload_lock (Sabrina Dubroca) [1760375] - [net] tls: don't jump to return (Sabrina Dubroca) [1760375] - [net] tls: export protocol version, cipher, tx_conf/rx_conf to socket diag (Sabrina Dubroca) [1760375] - [net] tcp: ulp: add functions to dump ulp-specific information (Sabrina Dubroca) [1760375] - [net] tls: use RCU protection on icsk->icsk_ulp_data (Sabrina Dubroca) [1760375] - [net] core/skmsg: Delete an unnecessary check before the function call "consume_skb" (Sabrina Dubroca) [1760375] - [net] tls, fix sk_write_space NULL write when tx disabled (Sabrina Dubroca) [1760375] - [net] tls: swap sk_write_space on close (Sabrina Dubroca) [1760375] - [net] tls: prevent skb_orphan() from leaking TLS plain text with offload (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a litmus test for the socket reuse through shutdown (Sabrina Dubroca) [1760375] - [net] tls: partially revert fix transition through disconnect with close (Sabrina Dubroca) [1760375] - [documentation] TLS: fix stat counters description (Sabrina Dubroca) [1760375] - [tools] selftests/tls: fix TLS tests with CONFIG_TLS=n (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add shutdown tests (Sabrina Dubroca) [1760375] - [tools] selftests/tls: close the socket with open record (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a bidirectional test (Sabrina Dubroca) [1760375] - [tools] selftests/tls: test error codes around TLS ULP installation (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a test for ULP but no keys (Sabrina Dubroca) [1760375] - [net] bpf: sockmap/tls, close can race with map free (Sabrina Dubroca) [1760375] - [net] tls: fix transition through disconnect with close (Sabrina Dubroca) [1760375] - [net] tls: remove sock unlock/lock around strp_done() (Sabrina Dubroca) [1760375] - [net] tls: remove close callback sock unlock/lock around TX work flush (Sabrina Dubroca) [1760375] - [net] tls: don't call tls_sk_proto_close for hw record offload (Sabrina Dubroca) [1760375] - [net] tls: don't arm strparser immediately in tls_set_sw_offload() (Sabrina Dubroca) [1760375] - [net] tls: add missing prot info init (Sabrina Dubroca) [1760375] - [netdrv] mlx5: Return -EINVAL when WARN_ON_ONCE triggers in mlx5e_tls_resync(). (Sabrina Dubroca) [1760375] - [net] tls: don't clear TX resync flag on error (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add test for poll() with data in TLS ULP (Sabrina Dubroca) [1760375] - [net] tls: add kernel-driven resync mechanism for TX (Sabrina Dubroca) [1760375] - [net] tls: generalize the resync callback (Sabrina Dubroca) [1760375] - [net] tls: add kernel-driven TLS RX resync (Sabrina Dubroca) [1760375] - [net] tls: rename handle_device_resync() (Sabrina Dubroca) [1760375] - [net] tls: pass record number as a byte array (Sabrina Dubroca) [1760375] - [net] tls: simplify seq calculation in handle_device_resync() (Sabrina Dubroca) [1760375] - [net] tls: export TLS per skb encryption (Sabrina Dubroca) [1760375] - [include] net/tls: simplify driver context retrieval (Sabrina Dubroca) [1760375] - [include] net/tls: split the TLS_DRIVER_STATE_SIZE and bump TX to 16 bytes (Sabrina Dubroca) [1760375] - [net] tls: don't pass version to tls_advance_record_sn() (Sabrina Dubroca) [1760375] - [include] net/tls: reorganize struct tls_context (Sabrina Dubroca) [1760375] - [net] tls: use version from prot (Sabrina Dubroca) [1760375] - [net] tls: don't re-check msg decrypted status in tls_device_decrypted() (Sabrina Dubroca) [1760375] - [net] tls: don't look for decrypted frames on non-offloaded sockets (Sabrina Dubroca) [1760375] - [net] tls: remove false positive warning (Sabrina Dubroca) [1760375] - [net] tls: check return values from skb_copy_bits() and skb_store_bits() (Sabrina Dubroca) [1760375] - [net] tls: fully initialize the msg wrapper skb (Sabrina Dubroca) [1760375] - [net] tls: replace the sleeping lock around RX resync with a bit lock (Sabrina Dubroca) [1760375] - [net] revert "net/tls: avoid NULL-deref on resync during device removal" (Sabrina Dubroca) [1760375] - [net] tls: avoid NULL-deref on resync during device removal (Sabrina Dubroca) [1760375] - [net] tls: Add support of AES128-CCM based ciphers (Sabrina Dubroca) [1760375] - [documentation] add TLS offload documentation (Sabrina Dubroca) [1760375] - [documentation] tls: RSTify the ktls documentation (Sabrina Dubroca) [1760375] - [net] xdp: increase kABI version (Jiri Benc) [1749817] - [tools] selftests: bpf: disable test_seg6_loop test (Jiri Benc) [1749817] - [tools] selftests: bpf: fix test_tc_tunnel hanging (Jiri Benc) [1749817] - [tools] selftests: bpf: xdping is not meant to be run standalone (Jiri Benc) [1749817] - [tools] libbpf: Use implicit XSKMAP lookup from AF_XDP XDP program (Jiri Benc) [1749817] - [lib] bpf, testing: Introduce 'gso_linear_no_head_frag' skb_segment test (Jiri Benc) [1749817] - [lib] bpf, testing: Refactor test_skb_segment() for testing skb_segment() on different skbs (Jiri Benc) [1749817] - [tools] selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt (Jiri Benc) [1749817] - [tools] selftests/bpf: test_progs: fix client/server race in tcp_rtt (Jiri Benc) [1749817] - [net] flow_dissector: Fix potential use-after-free on BPF_PROG_DETACH (Jiri Benc) [1749817] - [tools] selftests/bpf: fix race in test_tcp_rtt test (Jiri Benc) [1749817] - [net] xdp: unpin xdp umem pages in error path (Jiri Benc) [1749817] - [net] sock: make cookie generation global instead of per netns (Jiri Benc) [1749817] - [net] bpfilter: add "WITH Linux-syscall-note" to SPDX tag of uapi headers (Jiri Benc) [1749817] - [net] bpf: sockmap, only create entry if ulp is not already enabled (Jiri Benc) [1749817] - [net] bpf: sockmap, synchronize_rcu before free'ing map (Jiri Benc) [1749817] - [net] bpf: sockmap, sock_map_delete needs to use xchg (Jiri Benc) [1749817] - [net] core: page_pool: add user refcnt and reintroduce page_pool_destroy (Jiri Benc) [1749817] - [net] bpf: avoid unused variable warning in tcp_bpf_rtt() (Jiri Benc) [1749817] - [net] xdp: fix potential deadlock on socket mutex (Jiri Benc) [1749817] - [net] bpfilter: print umh messages to /dev/kmsg (Jiri Benc) [1749817] - [net] xdp: fix possible cq entry leak (Jiri Benc) [1749817] - [net] xdp: fix race on generic receive path (Jiri Benc) [1749817] - [samples] bpf: fix tcp_bpf.readme detach command (Jiri Benc) [1749817] - [samples] bpf: add sample program that periodically dumps TCP stats (Jiri Benc) [1749817] - [tools] selftests/bpf: test BPF_SOCK_OPS_RTT_CB (Jiri Benc) [1749817] - [tools] bpf/tools: sync bpf.h (Jiri Benc) [1749817] - [net] bpf: add icsk_retransmits to bpf_tcp_sock (Jiri Benc) [1749817] - [net] bpf: add dsack_dups/delivered{, _ce} to bpf_tcp_sock (Jiri Benc) [1749817] - [net] bpf: split shared bpf_tcp_sock and bpf_sock_ops implementation (Jiri Benc) [1749817] - [net] bpf: add BPF_CGROUP_SOCK_OPS callback that is executed on every RTT (Jiri Benc) [1749817] - [net] init/kconfig: add CONFIG_CC_CAN_LINK (Jiri Benc) [1749817] - [net] page_pool: add helper function for retrieving dma direction (Jiri Benc) [1749817] - [net] xdp: fix hang while unregistering device bound to xdp socket (Jiri Benc) [1749817] - [net] xdp: hold device for umem regardless of zero-copy mode (Jiri Benc) [1749817] - [net] xsk: Change the default frame size to 4096 and allow controlling it (Jiri Benc) [1749817] - [tools] libbpf: Support getsockopt XDP_OPTIONS (Jiri Benc) [1749817] - [net] xsk: Add getsockopt XDP_OPTIONS (Jiri Benc) [1749817] - [net] xsk: Add API to check for available entries in FQ (Jiri Benc) [1749817] - [net] xsk: Properly terminate assignment in xskq_produce_flush_desc (Jiri Benc) [1749817] - [net] xdp: Make __mem_id_disconnect static (Jiri Benc) [1749817] - [net] xsk: sample kernel code is now in libbpf (Jiri Benc) [1749817] - [net] page_pool: fix compile warning when CONFIG_PAGE_POOL is disabled (Jiri Benc) [1749817] - [net] page_pool: make sure struct device is stable (Jiri Benc) [1749817] - [net] page_pool: add tracepoints for page_pool with details need by XDP (Jiri Benc) [1749817] - [net] xdp: add tracepoints for XDP mem (Jiri Benc) [1749817] - [net] xdp: force mem allocator removal and periodic warning (Jiri Benc) [1749817] - [net] xdp: tracking page_pool resources and safe removal (Jiri Benc) [1749817] - [netdrv] mlx5: more strict use of page_pool API (Jiri Benc) [1749817] - [net] page_pool: introduce page_pool_free and use in mlx5 (Jiri Benc) [1749817] - [net] veth: use xdp_release_frame for XDP_PASS (Jiri Benc) [1749817] - [net] xdp: page_pool related fix to cpumap (Jiri Benc) [1749817] - [net] xdp: fix leak of IDA cyclic id if rhashtable_insert_slow fails (Jiri Benc) [1749817] - [net] page_pool: add helper function to unmap dma addresses (Jiri Benc) [1749817] - [net] page_pool: add helper function to retrieve dma addresses (Jiri Benc) [1749817] - [net] page_pool: use DMA_ATTR_SKIP_CPU_SYNC for DMA mappings (Jiri Benc) [1749817] - [net] page_pool: don't use page->private to store dma_addr_t (Jiri Benc) [1749817] - [mm] add dma_addr_t to struct page (Jiri Benc) [1749817] - [tools] bpf: Sync asm-generic/socket.h to tools/ (Jiri Benc) [1749817] - [net] bpf: net: Add SO_DETACH_REUSEPORT_BPF (Jiri Benc) [1749817] - [net] veth: Support bulk XDP_TX (Jiri Benc) [1749817] - [net] flow_dissector: remove unused FLOW_DISSECTOR_F_STOP_AT_L3 flag (Jiri Benc) [1749817] - [tools] selftests/bpf: fix compilation error for flow_dissector.c (Jiri Benc) [1749817] - [net] bpf: Update BPF_CGROUP_RUN_PROG_INET_EGRESS calls (Jiri Benc) [1749817] - [net] signal/bpfilter: Fix bpfilter_kernl to use send_sig not force_sig (Jiri Benc) [1749817] - [net] arch: Use asm-generic/socket.h when possible (Jiri Benc) [1749817] - [net] flow_dissector: correct comments on enum flow_dissector_key_id (Jiri Benc) [1749817] - [net] tcp: add stat of data packet reordering events (Jiri Benc) [1749817] - [net] tcp: add dsack blocks received stats (Jiri Benc) [1749817] - [net] tcp: add data bytes retransmitted stats (Jiri Benc) [1749817] - [net] tcp: add data bytes sent stats (Jiri Benc) [1749817] - [net] tcp: add a helper to calculate size of opt_stats (Jiri Benc) [1749817] - [net] netfilter: Support iif matches in POSTROUTING (Phil Sutter) [1775961] - [tools] selftests: add basic netdevsim devlink flash testing (Petr Oros) [1770359] - [netdrv] netdevsim: implement fake flash updating with notifications (Petr Oros) [1770359] - [net] devlink: allow driver to update progress of flash update (Petr Oros) [1770359] - [net] devlink: Add extack to shared buffer operations (Petr Oros) [1770347] - [net] xfrm: policy: avoid warning splat when merging nodes (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix bydst hlist corruption on hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix infinite loop when merging src-nodes (Sabrina Dubroca) [1758100] - [tools] selftests: xfrm: alter htresh to trigger move of policies to hash table (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix reinsertion on node merge (Sabrina Dubroca) [1758100] - [net] xfrm: policy: delete inexact policies from inexact list on hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: use hlist rcu variants on inexact insert, part 2 (Sabrina Dubroca) [1758100] - [tools] selftests: xfrm: add block rules with adjacent/overlapping subnets (Sabrina Dubroca) [1758100] - [net] xfrm: policy: remove set but not used variable 'priority' (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix policy hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix netlink/pf_key policy lookups (Sabrina Dubroca) [1758100] - [net] xfrm: policy: add 2nd-level saddr trees for inexact policies (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in a tree ordered by source address (Sabrina Dubroca) [1758100] - [net] xfrm: policy: check reinserted policies match their node (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in a tree ordered by destination address (Sabrina Dubroca) [1758100] - [net] xfrm: policy: add inexact policy search tree infrastructure (Sabrina Dubroca) [1758100] - [net] xfrm: policy: consider if_id when hashing inexact policy (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in an rhashtable (Sabrina Dubroca) [1758100] - [net] xfrm: policy: return NULL when inexact search needed (Sabrina Dubroca) [1758100] - [net] xfrm: policy: split list insertion into a helper (Sabrina Dubroca) [1758100] - [net] xfrm: security: iterate all, not inexact lists (Sabrina Dubroca) [1758100] - [tools] selftests: add xfrm policy test script (Sabrina Dubroca) [1758100] - [net] af_packet: fix the tx skb protocol in raw sockets with ETH_P_ALL (Ivan Vecera) [1765561] - [netdrv] mlx5e: Trust kernel regarding transport offset (Ivan Vecera) [1765561] - [netdrv] net/mlx5e: Remove the wrong assumption about transport offset (Ivan Vecera) [1765561] - [net] packet: Remove redundant skb->protocol set (Ivan Vecera) [1765561] - [net] packet: Ask driver for protocol if not provided by user (Ivan Vecera) [1765561] - [net] ethernet: Add parse_protocol header_ops support (Ivan Vecera) [1765561] - [include] net: Introduce parse_protocol header_ops callback (Ivan Vecera) [1765561] - [net] Don't set transport offset to invalid value (Ivan Vecera) [1765561] - [netdrv] Fix Kconfig indentation (Josef Oskera) [1764592] - [netdrv] be2net: make two arrays static const, makes object smaller (Josef Oskera) [1764592] - [netdrv] be2net: eliminate enable field from be_aic_obj (Josef Oskera) [1764592] - [netdrv] Use skb_frag_off accessors (Josef Oskera) [1764592] - [netdrv] Use skb accessors in network drivers (Josef Oskera) [1764592] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 (Josef Oskera) [1764592] - [netdrv] treewide: Add SPDX license identifier - Makefile/Kconfig (Josef Oskera) [1764592] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Josef Oskera) [1764592] - [documentation] networking: switchdev: Update port parent ID section (Ivan Vecera) [1757840] - [net] Get rid of SWITCHDEV_ATTR_ID_PORT_PARENT_ID (Ivan Vecera) [1757840] - [net] dsa: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [drivers] staging: fsl-dpaa2: ethsw: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] mscc: ocelot: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] net/mlx5e: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] liquidio: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [net] tipc: fix unlimited bundling of small messages (Jon Maloy) [1761969] - [net] tipc: clean up skb list lock handling on send path (Jon Maloy) [1761969] - [net] tipc: fix false detection of retransmit failures (Jon Maloy) [1761969] - [net] tipc: reduce risk of wakeup queue starvation (Jon Maloy) [1761969] - [net] tipc: fix changeover issues due to large packet (Jon Maloy) [1761969] - [net] tipc: optimize link synching mechanism (Jon Maloy) [1761969] - [net] tipc: Fix a typo (Jon Maloy) [1761969] - [net] tipc: use rcu dereference functions properly (Jon Maloy) [1761969] - [net] tipc: remove ub->ubsock checks (Jon Maloy) [1761969] - [net] tipc: embed jiffies in macro TIPC_BC_RETR_LIM (Jon Maloy) [1761969] - [net] tipc: add dst_cache support for udp media (Jon Maloy) [1761969] - [net] tipc: rename function msg_get_wrapped() to msg_inner_hdr() (Jon Maloy) [1761969] - [net] tipc: eliminate unnecessary skb expansion during retransmission (Jon Maloy) [1761969] - [net] tipc: simplify stale link failure criteria (Jon Maloy) [1761969] - [net] tipc: check msg->req data len in tipc_nl_compat_bearer_disable (Jon Maloy) [1761969] - [net] tipc: remove the unnecessary msg->req check from tipc_nl_compat_bearer_set (Jon Maloy) [1761969] - [net] tipc: fix issues with early FAILOVER_MSG from peer (Jon Maloy) [1761969] - [net] tipc: include retrans failure detection for unicast (Jon Maloy) [1761969] - [net] tipc: purge deferredq list for each grp member in tipc_group_delete (Jon Maloy) [1761969] - [net] devlink: remove redundant rtnl lock assert (Marcelo Leitner) [1774694]- [gpu] drm/i915/aml: Allow SPT PCH for all AML devices (Lyude Paul) [1761469 1731110] - [gpu] drm/i915/cml: Add second PCH ID for CMP (Lyude Paul) [1731110] - [drm] i915/cml: Add Missing PCI IDs (Lyude Paul) [1727949 1731110] - [gpu] DRM Backport 5.2 -> 5.3 (Lyude Paul) [1731110] - [xen] mm/pgtable: drop pgtable_t variable from pte_fn_t functions (Lyude Paul) [1731110] - [gpu] DRM Backport 5.1 -> 5.2 (Lyude Paul) [1731110] - [s390] bus_find_device: Unify the match callback with class_find_device (Lyude Paul) [1731110] - [kernel] i2c: algo-bit: include main i2c header (Lyude Paul) [1731110] - [extcon] axp288: Add a depends on ACPI to the Kconfig entry (Lyude Paul) [1731110] - [extcon] axp288: Convert to use acpi_dev_get_first_match_dev() (Lyude Paul) [1731110] - [acpi] gpio: merrifield: Fix build err without CONFIG_ACPI (Lyude Paul) [1731110] - [gpio] merrifield: Convert to use acpi_dev_get_first_match_dev() (Lyude Paul) [1731110] - [kernel] proc/sysctl: add shared variables for range check (Lyude Paul) [1731110] - [gpu] drm/i915: Split Pineview device info into desktop and mobile (Lyude Paul) [1731110] - [gpu] snd/hda, drm/i915: Track the display_power_status using a cookie (Lyude Paul) [1731110] - [video] hdmi: Dropped static functions from kernel doc (Lyude Paul) [1731110] - [video] hdmi: Add Unpack function for DRM infoframe (Lyude Paul) [1731110] - [video] drm: Enable HDR infoframe support (Lyude Paul) [1731110] - [kernel] drm: Add HDR source metadata property (Lyude Paul) [1731110] - [gpu] drm: Add colorspace info to AVI Infoframe (Lyude Paul) [1731110] - [gpu] drm: Add HDMI colorspace property (Lyude Paul) [1731110] - [kernel] video/hdmi: Add an enum for HDMI packet types (Lyude Paul) [1731110] - [video] hdmi: Constify infoframe passed to the pack functions (Lyude Paul) [1731110] - [video] hdmi: Constify infoframe passed to the log functions (Lyude Paul) [1731110] - [video] hdmi: Pass buffer size to infoframe unpack functions (Lyude Paul) [1731110] - [video] hdmi: Constify 'buffer' to the unpack functions (Lyude Paul) [1731110] - [video] media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC (Lyude Paul) [1731110] - [media] replace ADOBERGB by OPRGB (Lyude Paul) [1731110] - [dma-buf] add show_fdinfo handler (Lyude Paul) [1731110] - [dma-buf] dma-fence: Signal all callbacks from dma_fence_release() (Lyude Paul) [1731110] - [dma-buf] udmabuf: actually unmap the scatterlist (Lyude Paul) [1731110] - [dma-buf] Make mmap callback actually optional (Lyude Paul) [1731110] - [dma-buf] Remove unused sync_dump() (Lyude Paul) [1731110] - [kernel] dma-buf: explicitely note that dma-fence-chains use 64bit seqno (Lyude Paul) [1731110] - [dma-buf] fix stack corruption in dma_fence_chain_release (Lyude Paul) [1731110] - [dma-buf] add new dma_fence_chain container v7 (Lyude Paul) [1731110] - [dma-buf] add some lockdep asserts to the reservation object implementation (Lyude Paul) [1731110] - [iommu] arm-smmu-v3: Fix build error without CONFIG_PCI_ATS (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Avoid locking on invalidation path when not using ATS (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Fix ATC invalidation ordering wrt main TLBs (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Rework enabling/disabling of ATS for PCI masters (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Don't issue CMD_SYNC for zero-length invalidations (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Remove boolean bitfield for 'ats_enabled' flag (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Document ordering guarantees of command insertion (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Defer TLB invalidation until ->iotlb_sync() (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Reduce contention during command-queue insertion (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Operate directly on low-level queue where possible (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Move low-level queue fields out of arm_smmu_queue (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Drop unused 'q' argument from Q_OVF macro (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Separate s/w and h/w views of prod and cons indexes (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Pass struct iommu_iotlb_gather to ->tlb_add_page() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Pass struct iommu_iotlb_gather to ->unmap() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Remove unused ->tlb_sync() callback (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Replace ->tlb_add_flush() with ->tlb_add_page() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable-arm: Call ->tlb_flush_walk() and ->tlb_flush_leaf() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Hook up ->tlb_flush_walk() and ->tlb_flush_leaf() in drivers (Jerry Snitselaar) [1729845] - [kernel] iommu/io-pgtable: Introduce tlb_flush_walk() and tlb_flush_leaf() (Jerry Snitselaar) [1729845] - [iommu] Pass struct iommu_iotlb_gather to ->unmap() and ->iotlb_sync() (Jerry Snitselaar) [1729845] - [kernel] iommu: Introduce iommu_iotlb_gather_add_page() (Jerry Snitselaar) [1729845] - [kernel] iommu: Introduce struct iommu_iotlb_gather for batching TLB flushes (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Rename iommu_gather_ops to iommu_flush_ops (Jerry Snitselaar) [1729845] - [iommu] io-pgtable-arm: Remove redundant call to io_pgtable_tlb_sync() (Jerry Snitselaar) [1729845] - [kernel] iommu: Remove empty iommu_tlb_range_add() callback from iommu_ops (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Invalidate ATC when detaching a device (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Add support for PCI ATS (Jerry Snitselaar) [1729845] - [iommu] Introduce iotlb_sync_map callback (Jerry Snitselaar) [1742234] - [kernel] dma-mapping: fix page attributes for dma_mmap_* (Jerry Snitselaar) [1754727] - [kernel] dma-mapping: check pfn validity in dma_common_{mmap, get_sgtable} (Jerry Snitselaar) [1754727] - [kernel] swiotlb: checking whether swiotlb buffer is full with io_tlb_used (Jerry Snitselaar) [1754727] - [kernel] dma-direct: fix zone selection after an unaddressable CMA allocation (Jerry Snitselaar) [1754727] - [kernel] dma-contiguous: page-align the size in dma_free_contiguous() (Jerry Snitselaar) [1754727] - [kernel] dma-contiguous: do not overwrite align in dma_alloc_contiguous() (Jerry Snitselaar) [1754727] - [kernel] dma-mapping: fix panic caused by passing empty cma command line argument (Jerry Snitselaar) [1754727] - [iommu] dma: Handle SG length overflow better (Jerry Snitselaar) [1742234] - [iommu] dma: Handle MSI mappings separately (Jerry Snitselaar) [1742234] - [iommu] dma: Apply dma_{alloc, free}_contiguous functions (Jerry Snitselaar) [1742234] - [iommu] dma: Don't depend on CONFIG_DMA_DIRECT_REMAP (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_mmap (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_get_sgtable (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_alloc, part 2 (Jerry Snitselaar) [1742234] - [iommu] dma: Cleanup variable naming in iommu_dma_alloc (Jerry Snitselaar) [1742234] - [iommu] dma: Split iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Merge the CMA and alloc_pages allocation paths (Jerry Snitselaar) [1742234] - [iommu] dma: Don't remap CMA unnecessarily (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_alloc (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Remove __iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor the page array remapping allocator (Jerry Snitselaar) [1742234] - [iommu] dma: Factor out remapped pages lookup (Jerry Snitselaar) [1742234] - [iommu] dma: Squash __iommu_dma_{map, unmap}_page helpers (Jerry Snitselaar) [1742234] - [iommu] dma: Move domain lookup into __iommu_dma_{map, unmap} (Jerry Snitselaar) [1742234] - [iommu] dma: Move __iommu_dma_map (Jerry Snitselaar) [1742234] - [iommu] dma: Use for_each_sg in iommu_dma_alloc (Jerry Snitselaar) [1742234] - [clk] Make clk_bulk_get_all() return a valid "id" (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Support all Mali configurations (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Correct Mali attributes (Jerry Snitselaar) [1722978] - [iommu] vt-d: Fix panic after kexec -p for kdump (Jerry Snitselaar) [1742234] - [kernel] iommu/iova: Fix compilation error with !CONFIG_IOMMU_IOVA (Jerry Snitselaar) [1742234] - [iommu] amd: Check PM_LEVEL_SIZE() condition in locked section (Jerry Snitselaar) [1742234] - [iommu] amd: Fix incorrect PASID decoding from event log (Jerry Snitselaar) [1742234] - [iommu] amd: Lock code paths traversing protection_domain->dev_list (Jerry Snitselaar) [1742234] - [iommu] amd: Lock dev_data in attach/detach code paths (Jerry Snitselaar) [1742234] - [iommu] amd: Check for busy devices earlier in attach_device() (Jerry Snitselaar) [1742234] - [iommu] amd: Take domain->lock for complete attach/detach path (Jerry Snitselaar) [1742234] - [iommu] amd: Remove amd_iommu_devtable_lock (Jerry Snitselaar) [1742234] - [iommu] amd: Remove domain->updated (Jerry Snitselaar) [1742234] - [iommu] iova: Avoid false sharing on fq_timer_on (Jerry Snitselaar) [1742234] - [iommu] Don't use sme_active() in generic code (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix wrong analysis whether devices share the same bus (Jerry Snitselaar) [1742234] - [iommu] amd: Wait for completion of IOTLB flush in attach_device (Jerry Snitselaar) [1742234] - [iommu] amd: Unmap all L7 PTEs when downgrading page-sizes (Jerry Snitselaar) [1742234] - [iommu] amd: Introduce first_pte_l7() helper (Jerry Snitselaar) [1742234] - [iommu] amd: Fix downgrading default page-sizes in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Fix pages leak in free_pagetable() (Jerry Snitselaar) [1742234] - [documentation] documentation: Update Documentation for iommu.passthrough (Jerry Snitselaar) [1745844] - [iommu] Disable passthrough mode when SME is active (Jerry Snitselaar) [1745844] - [iommu] Set default domain type at runtime (Jerry Snitselaar) [1745844] - [iommu] Print default domain type on boot (Jerry Snitselaar) [1745844] - [x86] dma: Get rid of iommu_pass_through (Jerry Snitselaar) [1745844] - [iommu] vt-d: Request passthrough mode from IOMMU core (Jerry Snitselaar) [1745844] - [iommu] amd: Request passthrough mode from IOMMU core (Jerry Snitselaar) [1745844] - [iommu] Use Functions to set default domain type in iommu_set_def_domain_type() (Jerry Snitselaar) [1745844] - [iommu] Add helpers to set/get default domain type (Jerry Snitselaar) [1745844] - [iommu] Remember when default domain type was set on kernel command line (Jerry Snitselaar) [1745844] - [iommu] amd: Flush old domains in kdump kernel (Jerry Snitselaar) [1742234] - [iommu] amd: Fix race in increase_address_space() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove global page flush support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix possible use-after-free of private domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Detach domain before using a private one (Jerry Snitselaar) [1742234] - [iommu] vt-d: Correctly check format of page table in debugfs (Jerry Snitselaar) [1742234] - [iommu] vt-d: Detach domain when move device out of group (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Mark expected switch fall-through (Jerry Snitselaar) [1722978] - [iommu] vt-d: Print pasid table entries MSB to LSB in debugfs (Jerry Snitselaar) [1742234] - [iommu] iova: Remove stale cached32_node (Jerry Snitselaar) [1742234] - [iommu] vt-d: Check if domain->pgd was allocated (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't queue_iova() if there is no flush queue (Jerry Snitselaar) [1742234] - [iommu] amd: fix a crash in iova_magazine_free_pfns (Jerry Snitselaar) [1742234] - [iommu] Use right function to get group for device (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Fix compilation when CONFIG_CMA=n (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Support non-coherent page tables (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Replace IO_PGTABLE_QUIRK_NO_DMA with specific flag (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm-v7s: request DMA32 memory, and improve debugging (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Add support to use system cache (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Increase maximum size of queues (Jerry Snitselaar) [1722978] - [iommu] amd: Flush not present cache in iommu_map_page (Jerry Snitselaar) [1742234] - [iommu] amd: Only free resources once on init error (Jerry Snitselaar) [1742234] - [iommu] amd: Move gart fallback to amd_iommu_init (Jerry Snitselaar) [1742234] - [iommu] amd: Make iommu_disable safer (Jerry Snitselaar) [1742234] - [iommu] amd: Add missed 'tag' to error msg in iommu_print_event (Jerry Snitselaar) [1742234] - [iommu] amd: Remove redundant assignment to variable npages (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup unused variable (Jerry Snitselaar) [1742234] - [iommu] vt-d: Silence a variable set but not used (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove an unused variable "length" (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup after delegating DMA domain to generic iommu (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix suspicious RCU usage in probe_acpi_namespace_devices() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Allow DMA domain attaching to rmrr locked device (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't enable iommu's which have been ignored (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set domain type for a private domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't return error when device gets right domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix a variable set but not used (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Fix typo in SVM code comment (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove static identity map code (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove duplicated code for device hotplug (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove startup parameter from device_def_domain_type() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup get_valid_domain_for_dev() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Implement is_attach_deferred iommu ops entry (Jerry Snitselaar) [1742234] - [iommu] vt-d: Probe DMA-capable ACPI name space devices (Jerry Snitselaar) [1742234] - [iommu] vt-d: Handle 32bit device with identity default domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Identify default domains replaced with private (Jerry Snitselaar) [1742234] - [iommu] vt-d: Delegate the dma domain to upper layer (Jerry Snitselaar) [1742234] - [iommu] vt-d: Delegate the identity domain to upper layer (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add device_def_domain_type() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enable DMA remapping after rmrr mapped (Jerry Snitselaar) [1742234] - [iommu] vt-d: Expose ISA direct mapping region via iommu_get_resv_regions (Jerry Snitselaar) [1742234] - [iommu] vt-d: Implement apply_resv_region iommu ops entry (Jerry Snitselaar) [1742234] - [iommu] Add API to request DMA domain for device (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show scalable mode DMAR table internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Introduce macros useful for dumping DMAR table (Jerry Snitselaar) [1742234] - [iommu] vt-d: Modify the format of intel DMAR tables dump (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unnecessary rcu_read_locks (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix bind svm with multiple devices (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Avoid constant zero in TLBI writes (Jerry Snitselaar) [1722978] - [iommu] vt-d: Set the right field for Page Walk Snoop (Jerry Snitselaar) [1742234] - [iommu] Add missing new line for dma type (Jerry Snitselaar) [1742234] - [kernel] iommu/iova: Separate atomic variables to improve performance (Jerry Snitselaar) [1742234] - [iommu] Remove iommu_callback_data (Jerry Snitselaar) [1742234] - [iommu] amd: Remove amd_iommu_pd_list (Jerry Snitselaar) [1742234] - [iommu] amd: Use pci_prg_resp_pasid_required() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix leak in intel_pasid_alloc_table on error path (Jerry Snitselaar) [1742234] - [iommu] vt-d: Make kernel parameter igfx_off work with vIOMMU (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set intel_iommu_gfx_mapped correctly (Jerry Snitselaar) [1742234] - [iommu] vt-d: cleanup: no spaces at the start of a line (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't request page request irq under dmar_global_lock (Jerry Snitselaar) [1742234] - [iommu] vt-d: Use struct_size() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Flush IOTLB for untrusted device in time (Jerry Snitselaar) [1742234] - [iommu] vt-d: Clean up iommu_no_mapping (Jerry Snitselaar) [1742234] - [vfio] type1: Add domain at(de)taching group helpers (Jerry Snitselaar) [1742234] - [iommu] vt-d: Return ID associated with an auxiliary domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Aux-domain specific domain attach/detach (Jerry Snitselaar) [1742234] - [iommu] vt-d: Move common code out of iommu_attch_device() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add per-device IOMMU feature ops entries (Jerry Snitselaar) [1742234] - [iommu] vt-d: Make intel_iommu_enable_pasid() more generic (Jerry Snitselaar) [1742234] - [iommu] vt-d: Switch to bitmap_zalloc() (Jerry Snitselaar) [1742234] - [iommu] Bind process address spaces to devices (Jerry Snitselaar) [1742234] - [iommu] Add APIs for multiple domains per device (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Log CBFRSYNRA register on context fault (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Don't disable SMMU in kdump kernel (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Disable tagged pointers (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Link domains and devices (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Add a master->domain pointer (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Store SteamIDs in master (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Rename arm_smmu_master_data to arm_smmu_master (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Add ARM Mali midgard MMU page table format (Jerry Snitselaar) [1722978] - [iommu] vt-d: Save the right domain ID used by hardware (Jerry Snitselaar) [1742234] - [iommu] iova: Fix tracking of recently failed iova address (Jerry Snitselaar) [1742234] - [iommu] Fix IOMMU debugfs fallout (Jerry Snitselaar) [1742234] - [kernel] iommu: Document iommu_ops.is_attach_deferred() (Jerry Snitselaar) [1742234] - [kernel] iommu: Document iommu_ops.iotlb_sync_map() (Jerry Snitselaar) [1742234] - [kernel] iommu: Fix flush_tlb_all typo (Jerry Snitselaar) [1742234] - [iommu] io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables (Jerry Snitselaar) [1722978] - [iommu] Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [kernel] iommu: Allow io-pgtable to be used outside of iommu/ (Jerry Snitselaar) [1722978] - [iommu] iova: Allow compiling the library without IOMMU support (Jerry Snitselaar) [1742234] - [iommu] amd: Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [iommu] amd: Remove clear_flush_young notifier (Jerry Snitselaar) [1742234] - [iommu] amd: Print reason for iommu_map_page failure in map_sg (Jerry Snitselaar) [1742234] - [iommu] vt-d: Get domain ID before clear pasid entry (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set context field after value initialized (Jerry Snitselaar) [1742234] - [kernel] pci/ats: Add inline to pci_prg_resp_pasid_required() (Jerry Snitselaar) [1724921 1724927] - [iommu] vt-d: Enable ATS only if the device uses page aligned address (Jerry Snitselaar) [1724922] - [pci] ats: Add pci_ats_page_aligned() interface (Jerry Snitselaar) [1724922] - [iommu] vt-d: Fix PRI/PASID dependency issue (Jerry Snitselaar) [1724921 1724927] - [pci] ats: Add pci_prg_resp_pasid_required() interface (Jerry Snitselaar) [1724921 1724927] - [iommu] vt-d: Allow interrupts from the entire bus for aliased devices (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add helper to set an IRTE to verify only the bus number (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove misleading "domain 0" test from domain_exit() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unused dmar_remove_one_dev_info() argument (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unnecessary local variable initializations (Jerry Snitselaar) [1742234] - [iommu] vt-d: Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove change_pte notifier (Jerry Snitselaar) [1742234] - iommu/vt-d: Implement dma_[un]map_resource() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Support page request in scalable mode (Jerry Snitselaar) [1742234] - [iommu] vt-d: Leave scalable mode default off (Jerry Snitselaar) [1742234] - [iommu] of: Fix probe-deferral (Jerry Snitselaar) [1742234] - [iommu] Check for iommu_ops == NULL in iommu_probe_device() (Jerry Snitselaar) [1742234] - [iommu] of: Don't call iommu_ops->add_device directly (Jerry Snitselaar) [1742234] - powerpc/iommu: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [powerpc] iommu: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [iommu] of: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [iommu] of: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1742234] - [iommu] dma: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1722978] - [acpi] iort: Fix rc_dma_get_range() (Jerry Snitselaar) [1722978] - [kernel] iommu: Change tlb_range_add to iotlb_range_add and tlb_sync to iotlb_sync (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Make arm-smmu-v3 explicitly non-modular (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Make arm-smmu explicitly non-modular (Jerry Snitselaar) [1722978] - [iommu] Audit and remove any unnecessary uses of module.h (Jerry Snitselaar) [1742234] - [iommu] irq_remapping: Remove unused header files (Jerry Snitselaar) [1742234] - [iommu] Do physical merging in iommu_map_sg() (Jerry Snitselaar) [1742234] - [iommu] amd: Remove leading 0s in error log messages (Jerry Snitselaar) [1742234] - [iommu] amd: Fix line-break in error log reporting (Jerry Snitselaar) [1742234] - [iommu] amd: Use pr_fmt() (Jerry Snitselaar) [1742234] - [iommu] amd: Allow to upgrade page-size (Jerry Snitselaar) [1742234] - [iommu] amd: Restart loop if cmpxchg64 succeeded in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Allow downgrading page-sizes in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Ignore page-mode 7 in free_sub_pt() (Jerry Snitselaar) [1742234] - [iommu] amd: Introduce free_sub_pt() function (Jerry Snitselaar) [1742234] - [iommu] amd: Collect page-table pages in freelist (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove deferred invalidation (Jerry Snitselaar) [1724930] - [iommu] vt-d: Shared virtual address in scalable mode (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add first level page table interface (Jerry Snitselaar) [1742234] - [iommu] vt-d: Setup context and enable RID2PASID support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Pass pasid table to context mapping (Jerry Snitselaar) [1742234] - [iommu] vt-d: Setup pasid entry for RID2PASID support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add second level page table interface (Jerry Snitselaar) [1742234] - [iommu] vt-d: Reserve a domain id for FL and PT modes (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add 256-bit invalidation descriptor support (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Move page table helpers into header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Manage scalalble mode PASID tables (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enumerate the scalable mode capability (Jerry Snitselaar) [1742234] - [kernel] iommu/vtd: Cleanup dma_remapping.h header (Jerry Snitselaar) [1742234] - [documentation] dt-bindings: arm-smmu: Add binding doc for Qcom smmu-500 (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add support for qcom, smmu-v2 variant (Jerry Snitselaar) [1722978] - [documentation] dt-bindings: arm-smmu: Add bindings for qcom, smmu-v2 (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add the device_link between masters and smmu (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Invoke pm_runtime across the driver (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add pm_runtime/sleep ops (Jerry Snitselaar) [1722978] - [clk] add managed version of clk_bulk_get_all (Jerry Snitselaar) [1722978] - [clk] add new APIs to operate on all available clocks (Jerry Snitselaar) [1722978] - [clk] bulk: add of_clk_bulk_get() (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Use explicit mb() when moving cons pointer (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Avoid memory corruption from Hisilicon MSI payloads (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Fix big-endian CMD_SYNC writes (Jerry Snitselaar) [1722978] - [iommu] revert "iommu/io-pgtable-arm: Check for v7s-incapable systems" (Jerry Snitselaar) [1722978] - [iommu] Fix a typo (Jerry Snitselaar) [1742234] - [iommu] Tidy up window attributes (Jerry Snitselaar) [1742234] - [iommu] amd: Add default branch in amd_iommu_capable() (Jerry Snitselaar) [1742234] - [iommu] amd: Move iommu_init_pci() to .init section (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show context internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support for Interrupt remapping (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show register contents (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enable base Intel IOMMU debugfs support (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Update register definitions to VT-d 3.0 specification (Jerry Snitselaar) [1742234] - [iommu] vt-d: Relocate struct/function declarations to its header files (Jerry Snitselaar) [1742234] - [of] iommu/of: make of_pci_map_rid() available for other devices too (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Remove unnecessary wrapper function (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Add SPDX header (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Fix a couple of minor comment typos (Jerry Snitselaar) [1722978] - [kernel] iommu/shmobile: Remove unused linux/platform_data/sh_ipmmu.h header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Handle memory shortage on pasid table allocation (Jerry Snitselaar) [1742234] - [iommu] Add sysfs attribyte for domain type (Jerry Snitselaar) [1742234] - [iommu] amd: Add basic debugfs infrastructure for AMD IOMMU (Jerry Snitselaar) [1742234] - [iommu] Enable debugfs exposure of IOMMU driver internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove the obsolete per iommu pasid tables (Jerry Snitselaar) [1742234] - [iommu] vt-d: Apply per pci device pasid table in SVA (Jerry Snitselaar) [1742234] - [iommu] vt-d: Allocate and free pasid table (Jerry Snitselaar) [1742234] - [iommu] vt-d: Per PCI device pasid table interfaces (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add for_each_device_domain() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Move device_domain_info to header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Apply global PASID in SVA (Jerry Snitselaar) [1742234] - [iommu] vt-d: Avoid using idr_for_each_entry() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Global PASID name space (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix dev iotlb pfsid use (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Add definitions for PFSID (Jerry Snitselaar) [1742234] - [iommu] amd: Argument page_size could be uninitialized (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Abort all transactions if SMMU is enabled in kdump kernel (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Prevent any devices access to memory without registration (Jerry Snitselaar) [1722978] - [iommu] [] iommu/arm-smmu-v3: sync the OVACKFLG to PRIQ consumer register (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm-v7s: Abort allocation when table address overflows the PTE (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Fix pgtable allocation in selftest (Jerry Snitselaar) [1722978] - [netdrv] iavf: initialize ITRN registers with correct values (Stefan Assmann) [1721697] - [netdrv] iavf: fix MAC address setting for VFs when filter is rejected (Stefan Assmann) [1721697] - [netdrv] iavf: allow permanent MAC address to change (Stefan Assmann) [1721697] - [netdrv] iavf: remove unused debug function iavf_debug_d (Stefan Assmann) [1721697] - [netdrv] Use skb_frag_off accessors (Stefan Assmann) [1721697] - [netdrv] Use skb accessors in network drivers (Stefan Assmann) [1721697] - [netdrv] iavf: fix dereference of null rx_buffer pointer (Stefan Assmann) [1721697] - [netdrv] iavf: Fix up debug print macro (Stefan Assmann) [1721697] - [netdrv] iavf: use struct_size() helper (Stefan Assmann) [1721697] - [netdrv] iavf: allow null RX descriptors (Stefan Assmann) [1721697] - [netdrv] iavf: add call to iavf_[add|del]_cloud_filter (Stefan Assmann) [1721697] - [netdrv] iavf: Refactor init state machine (Stefan Assmann) [1721697] - [netdrv] iavf: Refactor the watchdog state machine (Stefan Assmann) [1721697] - [netdrv] iavf: Remove timer for work triggering, use delaying work instead (Stefan Assmann) [1721697] - [netdrv] iavf: Move commands processing to the separate function (Stefan Assmann) [1721697] - [netdrv] iavf: Fix the math for valid length for ADq enable (Stefan Assmann) [1721697] - [netdrv] iavf: Change GFP_KERNEL to GFP_ATOMIC in kzalloc() (Stefan Assmann) [1721697] - [netdrv] iavf: wait longer for close to complete (Stefan Assmann) [1721697] - [netdrv] iavf: use signed variable (Stefan Assmann) [1721697] - [netdrv] iavf: Create VLAN tag elements starting from the first element (Stefan Assmann) [1721697] - [netdrv] iavf: update comments and file checks to match iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename i40e_device to iavf_device (Stefan Assmann) [1721697] - [netdrv] iavf: change remaining i40e defines to be iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename iavf_client.h defines to match driver name (Stefan Assmann) [1721697] - [netdrv] iavf: rename iavf_status structure flags (Stefan Assmann) [1721697] - [netdrv] iavf: replace i40e variables with iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename i40e functions to be iavf (Stefan Assmann) [1721697] - [netdrv] iavf: change iavf_status_code to iavf_status (Stefan Assmann) [1721697] - [netdrv] iavf: Rename i40e_adminq* files to iavf_adminq* (Stefan Assmann) [1721697] - [netdrv] iavf: iavf_client: use struct_size() helper (Stefan Assmann) [1721697] - [netdrv] iavf: use struct_size() in kzalloc() (Stefan Assmann) [1721697] - [netdrv] iavf: Limiting RSS queues to CPUs (Stefan Assmann) [1721697] - [netdrv] iavf: Use printf instead of gnu_printf for iavf_debug_d (Stefan Assmann) [1721697] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for ethtool -m issue on X722 NIC (Stefan Assmann) [1721695] - [netdrv] intel: Demote MTU change prints to debug (Stefan Assmann) [1721695] - [netdrv] i40e: implement VF stats NDO (Stefan Assmann) [1721695] - [netdrv] i40e: enable X710 support (Stefan Assmann) [1721695] - [netdrv] i40e: Add UDP segmentation offload support (Stefan Assmann) [1721695] - [netdrv] i40e: prevent memory leak in i40e_setup_macvlans (Stefan Assmann) [1721695] - [netdrv] i40e: Refactoring VF MAC filters counting to make more reliable (Stefan Assmann) [1721695] - [netdrv] i40e: Fix LED blinking flow for X710T*L devices (Stefan Assmann) [1721695] - [netdrv] i40e: allow ethtool to report SW and FW versions in recovery mode (Stefan Assmann) [1721695] - [netdrv] i40e: initialize ITRN registers with correct values (Stefan Assmann) [1721695] - [netdrv] i40e: Extend PHY access with page change flag (Stefan Assmann) [1721695] - [netdrv] i40e: Extract detection of HW flags into a function (Stefan Assmann) [1721695] - [netdrv] i40e: Wrong 'Advertised FEC modes' after set FEC to AUTO (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for persistent lldp support (Stefan Assmann) [1721695] - [netdrv] i40e: clear __I40E_VIRTCHNL_OP_PENDING on invalid min Tx rate (Stefan Assmann) [1721695] - [netdrv] i40e: use BIT macro to specify the cloud filter field flags (Stefan Assmann) [1721695] - [netdrv] i40e: Fix message for other card without FEC (Stefan Assmann) [1721695] - [netdrv] i40e: fix missed "Negotiated" string in i40e_print_link_message() (Stefan Assmann) [1721695] - [netdrv] i40e: mark additional missing bits as reserved (Stefan Assmann) [1721695] - [netdrv] i40e: remove I40E_AQC_ADD_CLOUD_FILTER_OIP (Stefan Assmann) [1721695] - [netdrv] i40e: use ktime_get_real_ts64 instead of ktime_to_timespec64 (Stefan Assmann) [1721695] - [netdrv] i40e: check __I40E_VF_DISABLE bit in i40e_sync_filters_subtask (Stefan Assmann) [1721695] - [netdrv] i40e: Remove EMPR traces from debugfs facility (Stefan Assmann) [1721695] - [netdrv] i40e: Implement debug macro hw_dbg using dev_dbg (Stefan Assmann) [1721695] - [netdrv] i40e: fix hw_dbg usage in i40e_hmc_get_object_va (Stefan Assmann) [1721695] - [netdrv] i40e: simplify Rx buffer recycle (Stefan Assmann) [1721695] - [netdrv] i40e: fix retrying in i40e_aq_get_phy_capabilities (Stefan Assmann) [1721695] - [netdrv] i40e: Persistent LLDP support (Stefan Assmann) [1721695] - [netdrv] i40e: allow reset in recovery mode (Stefan Assmann) [1721695] - [netdrv] i40e: Remove function i40e_update_dcb_config() (Stefan Assmann) [1721695] - [netdrv] i40e: Fix crash caused by stress setting of VF MAC addresses (Stefan Assmann) [1721695] - [netdrv] i40e: reset veb.tc_stats when resetting veb.stats (Stefan Assmann) [1721695] - [netdrv] i40e: Update FW API version to 1.9 (Stefan Assmann) [1721695] - [netdrv] i40e: check_recovery_mode had wrong if statement (Stefan Assmann) [1721695] - [netdrv] i40e: Add drop mode parameter to set mac config (Stefan Assmann) [1721695] - [netdrv] i40e: fix shifts of signed values (Stefan Assmann) [1721695] - [netdrv] i40e: add check on i40e_configure_tx_ring() return value (Stefan Assmann) [1721695] - [netdrv] i40e: Check if transceiver implements DDM before access (Stefan Assmann) [1721695] - [netdrv] i40e: reduce stack usage in i40e_set_fc (Stefan Assmann) [1721695] - [netdrv] i40e: no need to check return value of debugfs_create functions (Stefan Assmann) [1721695] - [netdrv] i40e: Remove unicast log when VF is leaving multicast mode (Stefan Assmann) [1721695] - [netdrv] i40e: verify string count matches even on early return (Stefan Assmann) [1721695] - [netdrv] i40e: Log info when PF is entering and leaving Allmulti mode (Stefan Assmann) [1721695] - [netdrv] i40e: Update visual effect for advertised FEC mode (Stefan Assmann) [1721695] - [netdrv] i40e: fix code comments (Stefan Assmann) [1721695] - [netdrv] i40e: don't report link up for a VF who hasn't enabled queues (Stefan Assmann) [1721695] - [netdrv] i40e: Log disable-fw-lldp flag change by ethtool (Stefan Assmann) [1721695] - [netdrv] i40e: fix incorrect ethtool statistics veb and veb.tc_ (Stefan Assmann) [1721695] - [netdrv] Use skb_frag_off accessors (Stefan Assmann) [1721695] - [netdrv] i40e: Use dev_get_drvdata (Stefan Assmann) [1721695] - [netdrv] Use skb accessors in network drivers (Stefan Assmann) [1721695] - [netdrv] i40e: Add macvlan support on i40e (Stefan Assmann) [1721695] - [netdrv] i40e/i40e_virtchnl_pf: Use struct_size() in kzalloc() (Stefan Assmann) [1721695] - [netdrv] i40e: update copyright string (Stefan Assmann) [1721695] - [netdrv] i40e: Fix descriptor count manipulation (Stefan Assmann) [1721695] - [netdrv] i40e: missing priorities for any QoS traffic (Stefan Assmann) [1721695] - [netdrv] i40e: Add log entry while creating or deleting TC0 (Stefan Assmann) [1721695] - [netdrv] i40e: fix incorrect function documentation comment (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for missing "link modes" info in ethtool (Stefan Assmann) [1721695] - [netdrv] i40e: fix 'Unknown bps' in dmesg for 2.5Gb/5Gb speeds (Stefan Assmann) [1721695] - [netdrv] i40e: mark expected switch fall-through (Stefan Assmann) [1721695] - [netdrv] i40e: Missing response checks in driver when starting/stopping FW LLDP (Stefan Assmann) [1721695] - [netdrv] i40e: remove duplicate stat calculation for tx_errors (Stefan Assmann) [1721695] - [netdrv] i40e: Check if the BAR size is large enough before writing to registers (Stefan Assmann) [1721695] - [netdrv] i40e: Missing response checks in driver when starting/stopping FW LLDP (Stefan Assmann) [1721695] - [netdrv] i40e: add input validation for virtchnl handlers (Stefan Assmann) [1721695] - [netdrv] i40e: Improve AQ log granularity (Stefan Assmann) [1721695] - [netdrv] i40e: Add bounds check for ch[] array (Stefan Assmann) [1721695] - [netdrv] i40e: Use signed variable (Stefan Assmann) [1721695] - [netdrv] i40e: add constraints for accessing veb array (Stefan Assmann) [1721695] - [netdrv] i40e: let untrusted VF to create up to 16 VLANs (Stefan Assmann) [1721695] - [netdrv] i40e: add functions stubs to support EEE (Stefan Assmann) [1721695] - [netdrv] i40e: Use LLDP ethertype define ETH_P_LLDP (Stefan Assmann) [1721695] - [netdrv] r8169: disable TSO on a single version of RTL8168c to fix performance (Corinna Vinschen) [1730024] - [netdrv] r8169: fix sporadic transmit timeout issue (Corinna Vinschen) [1730024] - [netdrv] r8169: inline rtl8169_free_rx_databuff (Corinna Vinschen) [1730024] - [netdrv] r8169: fix performance issue on RTL8168evl (Corinna Vinschen) [1730024] - [netdrv] r8169: allocate rx buffers using alloc_pages_node (Corinna Vinschen) [1730024] - [netdrv] r8169: sync PCIe PHY init with vendor driver 8.047.01 (Corinna Vinschen) [1730024] - [netdrv] r8169: add helper r8168_mac_ocp_modify (Corinna Vinschen) [1730024] - [netdrv] r8169: remove access to legacy register MultiIntr (Corinna Vinschen) [1730024] - [netdrv] r8169: make use of xmit_more (Corinna Vinschen) [1730024] - [netdrv] r8169: don't use MSI before RTL8168d (Corinna Vinschen) [1730024] - [netdrv] revert ("r8169: remove 1000/Half from supported modes") (Corinna Vinschen) [1730024] - [netdrv] r8169: enable HW csum and TSO (Corinna Vinschen) [1730024] - [netdrv] r8169: remove r8169_csum_workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: implement callback ndo_features_check (Corinna Vinschen) [1730024] - [netdrv] r8169: set GSO size and segment limits (Corinna Vinschen) [1730024] - [netdrv] r8169: align setting PME with vendor driver (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_set_rx_mode (Corinna Vinschen) [1730024] - [netdrv] r8169: fix a typo in a comment (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_rx (Corinna Vinschen) [1730024] - [netdrv] r8169: fix RTL8168g PHY init (Corinna Vinschen) [1730024] - [netdrv] r8169: fix issue with confused RX unit after PHY power-down on RTL8411b (Corinna Vinschen) [1730024] - [netdrv] r8169: sync few chip names with vendor driver (Corinna Vinschen) [1730024] - [netdrv] r8169: add random MAC address fallback (Corinna Vinschen) [1730024] - [netdrv] revert "r8169: improve handling VLAN tag" (Corinna Vinschen) [1730024] - [netdrv] r8169: remove not needed call to dma_sync_single_for_device (Corinna Vinschen) [1730024] - [netdrv] r8169: consider that 32 Bit DMA is the default (Corinna Vinschen) [1730024] - [netdrv] r8169: improve handling VLAN tag (Corinna Vinschen) [1730024] - [netdrv] r8169: don't activate ASPM in chip if OS can't control ASPM (Corinna Vinschen) [1730024] - [netdrv] r8169: improve handling of Abit Fatal1ty F-190HD (Corinna Vinschen) [1730024] - [netdrv] r8169: use helper rtl_is_8168evl_up for setting register MaxTxPacketSize (Corinna Vinschen) [1730024] - [netdrv] r8169: add helper rtl_is_8168evl_up (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_coalesce_info (Corinna Vinschen) [1730024] - [netdrv] r8169: let mdio read functions return -ETIMEDOUT (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: remove member coalesce_info from struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: remove callback hw_start from struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: rename CPCMD_QUIRK_MASK and apply it on all chip versions (Corinna Vinschen) [1730024] - [netdrv] r8169: improve setting interrupt mask (Corinna Vinschen) [1730024] - [netdrv] r8169: silence sparse warning in rtl8169_start_xmit (Corinna Vinschen) [1730024] - [netdrv] r8169: factor out firmware handling (Corinna Vinschen) [1730024] - [netdrv] r8169: rename r8169.c to r8169_main.c (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_fw_request_firmware and rtl_fw_release_firmware (Corinna Vinschen) [1730024] - [netdrv] r8169: make rtl_fw_format_ok and rtl_fw_data_ok more independent (Corinna Vinschen) [1730024] - [netdrv] r8169: simplify rtl_fw_write_firmware (Corinna Vinschen) [1730024] - [netdrv] r8169: add enum rtl_fw_opcode (Corinna Vinschen) [1730024] - [netdrv] r8169: use paged versions of phylib MDIO access functions (Corinna Vinschen) [1730024] - [netdrv] r8169: avoid tso csum function indirection (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct jumbo_ops (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct mdio_ops (Corinna Vinschen) [1730024] - [netdrv] r8169: improve r8169_csum_workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: decouple rtl_phy_write_fw from actual driver code (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_fw_format_ok (Corinna Vinschen) [1730024] - [netdrv] r8169: enable WoL speed down on more chip versions (Corinna Vinschen) [1730024] - [netdrv] r8169: fix MAC address being lost in PCI D3 (Corinna Vinschen) [1730024] - [netdrv] r8169: remove 1000/Half from supported modes (Corinna Vinschen) [1730024] - [netdrv] r8169: remove support for RTL_GIGA_MAC_VER_01 (Corinna Vinschen) [1730024] - [netdrv] r8169: improve RTL8168d PHY initialization (Corinna Vinschen) [1730024] - [netdrv] r8169: change type of member mac_version in rtl8169_private (Corinna Vinschen) [1730024] - [netdrv] r8169: remove unneeded return statement in rtl_hw_init_8168g (Corinna Vinschen) [1730024] - [netdrv] r8169: remove rtl_hw_init_8168ep (Corinna Vinschen) [1730024] - [netdrv] treewide: Add SPDX license identifier - Makefile/Kconfig (Corinna Vinschen) [1730024] - [netdrv] treewide: Add SPDX license identifier for more missed files (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl8168g_set_pause_thresholds (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_set_fifo_size (Corinna Vinschen) [1730024] - [netdrv] r8169: move EEE LED config to rtl8168_config_eee_mac (Corinna Vinschen) [1730024] - [netdrv] r8169: simplify rtl_writephy_batch and rtl_ephy_init (Corinna Vinschen) [1730024] - [netdrv] r8169: speed up rtl_loop_wait (Corinna Vinschen) [1730024] - [netdrv] r8169: make use of phy_set_asym_pause (Corinna Vinschen) [1730024] - [netdrv] r8169: remove rtl_write_exgmac_batch (Corinna Vinschen) [1730024] - [netdrv] r8169: remove manual autoneg restart workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_reset_packet_filter (Corinna Vinschen) [1730024] - [netdrv] r8169: add helpers rtl_eri_set/clear_bits (Corinna Vinschen) [1730024] - [netdrv] r8169: make ERIAR_EXGMAC the default in eri functions (Corinna Vinschen) [1730024] - [netdrv] r8169: use pci_dev_id() helper (Corinna Vinschen) [1730024] - [kernel] phy: fix write to mii-ctrl1000 register (Petr Oros) [1772010] - [netdrv] bcmgenet: don't set phydev->link from MAC (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix PTR_ERR applied after initialization to constant (Petr Oros) [1772010] - [netdrv] phy: micrel: add Asym Pause workaround for KSZ9021 (Petr Oros) [1772010] - [netdrv] phy: fix race in genphy_update_link (Petr Oros) [1772010] - [netdrv] phy: consider AN_RESTART status when reading link status (Petr Oros) [1772010] - [kernel] fixed_phy: Add forward declaration for struct gpio_desc; (Petr Oros) [1772010] - [netdrv] phy: fixed_phy: print gpio error only if gpio node is present (Petr Oros) [1772010] - [netdrv] phy: mscc: initialize stats array (Petr Oros) [1772010] - [netdrv] phy: bcm7xxx: define soft_reset for 40nm EPHY (Petr Oros) [1772010] - [netdrv] Add genphy_c45_config_aneg() function to phy-c45.c (Petr Oros) [1772010] - [netdrv] phy: sfp: hwmon: Fix scaling of RX power (Petr Oros) [1772010] - [kernel] hwmon: Fix HWMON_P_MIN_ALARM mask (Petr Oros) [1772010] - [netdrv] phy: rename Asix Electronics PHY driver (Petr Oros) [1772010] - [netdrv] sfp: read eeprom in maximum 16 byte increments (Petr Oros) [1772010] - [netdrv] phylink: avoid reducing support mask (Petr Oros) [1772010] - [netdrv] phy: dp83867: Set up RGMII TX delay (Petr Oros) [1772010] - [netdrv] phy: dp83867: do not call config_init twice (Petr Oros) [1772010] - [netdrv] phy: dp83867: increase SGMII autoneg timer duration (Petr Oros) [1772010] - [netdrv] phy: dp83867: fix speed 10 in sgmii mode (Petr Oros) [1772010] - [netdrv] phy: marvell10g: report if the PHY fails to boot firmware (Petr Oros) [1772010] - [netdrv] phylink: ensure consistent phy interface mode (Petr Oros) [1772010] - [netdrv] phylink: ensure inband AN works correctly (Petr Oros) [1772010] - [netdrv] phy: aquantia: readd XGMII support for AQR107 (Petr Oros) [1772010] - [netdrv] phy: realtek: Replace phy functions with non-locked version in rtl8211e_config_init() (Petr Oros) [1772010] - [netdrv] meson: fixup g12a glue ephy id (Petr Oros) [1772010] - [netdrv] phy: realtek: fix double page ops in generic Realtek driver (Petr Oros) [1772010] - [netdrv] phy: realtek: add missing page operations (Petr Oros) [1772010] - [netdrv] phy: realtek: Change TX-delay setting for RGMII modes only (Petr Oros) [1772010] - [netdrv] phy: realtek: Add rtl8211e rx/tx delays config (Petr Oros) [1772010] - [netdrv] phy: improve pause mode reporting in phy_print_status (Petr Oros) [1772010] - [kernel] phy: improve resuming from hibernation (Petr Oros) [1772010] - [netdrv] phy: fix phy_validate_pause (Petr Oros) [1772010] - [netdrv] phy: micrel: make sure the factory test bit is cleared (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix buffer overrun with stats counters (Petr Oros) [1772010] - [netdrv] phy: avoid unneeded MDIO reads in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: improve genphy_soft_reset (Petr Oros) [1772010] - [netdrv] spi: micrel eth switch: declare missing of table (Petr Oros) [1772010] - [netdrv] phy: marvell: add new default led configure for m88e151x (Petr Oros) [1772010] - [netdrv] phy: vitesse: Remove support for VSC8514 (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8514 PHY (Petr Oros) [1772010] - [netdrv] mdio: rename mdio_device reset to reset_gpio (Petr Oros) [1772010] - [netdrv] phy: add support for reset-controller (Petr Oros) [1772010] - [documentation] dt-bindings: add PHY reset controller binding (Petr Oros) [1772010] - [netdrv] phy: remove dead code from phy_sanitize_settings (Petr Oros) [1772010] - [netdrv] phy: don't set autoneg if it's not supported (Petr Oros) [1772010] - [netdrv] phy: micrel: add Asym Pause workaround (Petr Oros) [1772010] - [netdrv] phy: warn if phylib and ethtool PHY mode definitions are out of sync (Petr Oros) [1772010] - [netdrv] phy: add support for new modes in phylib (Petr Oros) [1772010] - [netdrv] phy: shrink PHY settings array (Petr Oros) [1772010] - [netdrv] phy: switch drivers to use dynamic feature detection (Petr Oros) [1772010] - [netdrv] phy: fix setting autoneg_complete in genphy_update_link (Petr Oros) [1772010] - [netdrv] phy: replace genphy_10g_driver with genphy_c45_driver (Petr Oros) [1772010] - [netdrv] phy: remove unnecessary callback settings in C45 drivers (Petr Oros) [1772010] - [netdrv] phy: improve link partner capability detection (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: clean-up gxl variant driver (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: add g12a support (Petr Oros) [1772010] - [netdrv] phy: add amlogic g12a mdio mux support (Petr Oros) [1772010] - [documentation] dt-bindings: phy: add g12a mdio mux documentation (Petr Oros) [1772010] - [netdrv] phy: realtek: remove setting callback get_features and use phylib fallback (Petr Oros) [1772010] - [netdrv] phy: fix autoneg mismatch case in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: marvell10g: add the suspend/resume callbacks for the 88x2210 (Petr Oros) [1772010] - [netdrv] phy: marvell10g: implement suspend/resume callbacks (Petr Oros) [1772010] - [netdrv] phy: deal properly with autoneg incomplete in genphy_c45_read_lpa (Petr Oros) [1772010] - [netdrv] phy: use c45 standard to detect link partner autoneg capability (Petr Oros) [1772010] - [netdrv] phy: aquantia: add SGMII statistics (Petr Oros) [1772010] - [netdrv] phy: improve genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: aquantia: add suspend / resume callbacks for AQR107 family (Petr Oros) [1772010] - [netdrv] phy: realtek: use genphy_read_abilities (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: remove redundant !timeout check (Petr Oros) [1772010] - [netdrv] phy: marvell: add PHY tunable fast link down support for 88E1540 (Petr Oros) [1772010] - [uapi] ethtool: add PHY Fast Link Down support (Petr Oros) [1772010] - [netdrv] phy: aquantia: inform about proprietary 1000Base-T2 mode being in use (Petr Oros) [1772010] - [netdrv] phy: aquantia: report PHY details like firmware version (Petr Oros) [1772010] - [netdrv] phy: aquantia: print remote capabilities if link partner is Aquantia PHY (Petr Oros) [1772010] - [kernel] phy: bcm54xx: Encode link speed and activity into LEDs (Petr Oros) [1772010] - [netdrv] phy: aquantia: simplify aqr_config_aneg (Petr Oros) [1772010] - [netdrv] phy: don't clear BMCR in genphy_soft_reset (Petr Oros) [1772010] - [netdrv] phy: Re-parent menus for MDIO bus drivers correctly (Petr Oros) [1772010] - [netdrv] phy: Correct Cygnus/Omega PHY driver prompt (Petr Oros) [1772010] - [netdrv] phy: aquantia: add downshift support (Petr Oros) [1772010] - [netdrv] phy: Move Omega PHY entry to Cygnus PHY driver (Petr Oros) [1772010] - [netdrv] phy: Prepare for moving Omega out of bcm7xxx (Petr Oros) [1772010] - [netdrv] phy: Add DP83825I to the DP83822 driver (Petr Oros) [1772010] - [netdrv] phy: aquantia: check for changed interface mode in read_status (Petr Oros) [1772010] - [netdrv] phy: aquantia: check for supported interface modes in config_init (Petr Oros) [1772010] - [netdrv] phy: improve handling link_change_notify callback (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: fix interrupt support (Petr Oros) [1772010] - [gpio] gpiolib: devprop: Fix syntax error (Petr Oros) [1772010] - [kernel] gpiolib: export devprop_gpiochip_set_names() (Petr Oros) [1772010] - [netdrv] phy: mdio-mux: fix Kconfig dependencies (Petr Oros) [1772010] - [netdrv] phy: use phy_modify_mmd_changed in genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_no_soft_reset (Petr Oros) [1772010] - [netdrv] phy: don't export gen10g_read_status (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_config_init (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_suspend and gen10g_resume (Petr Oros) [1772010] - [netdrv] phy: use genphy_c45_aneg_done in genphy_aneg_done (Petr Oros) [1772010] - [netdrv] phy: micrel ksz8061: link failure after cable connect (Petr Oros) [1772010] - [netdrv] phy: phylink: fix uninitialized variable in phylink_get_mac_state (Petr Oros) [1772010] - [netdrv] phy: aquantia: add hwmon support (Petr Oros) [1772010] - [netdrv] phy: aquantia: rename aquantia.c to aquantia_main.c (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use the generic C45 helper to read the 2110 features (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Let genphy_c45_pma_read_abilities set Aneg bit (Petr Oros) [1772010] - [netdrv] phy: dp83867: add soft reset delay (Petr Oros) [1772010] - [netdrv] phy: mdio-mux: Add support for Generic Mux controls (Petr Oros) [1772010] - [netdrv] phy: improve auto-neg emulation in swphy (Petr Oros) [1772010] - [netdrv] phy: marvell10g: add support for the 88x2110 PHY (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Force reading of 2.5/5G (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use a #define for 88X3310 family id (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use 2500BASEX when using 2.5GBASET (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use linkmode_set_bit helper instead of __set_bit (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use get_features to get the PHY abilities (Petr Oros) [1772010] - [netdrv] phy: aquantia: use genphy_c45_read_status (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_read_status (Petr Oros) [1772010] - [netdrv] phy: don't change modes we don't care about in genphy_c45_read_lpa (Petr Oros) [1772010] - [netdrv] phy: aquantia: add support for auto-negotiation configuration (Petr Oros) [1772010] - [netdrv] phy: aquantia: remove false 5G and 10G speed ability for AQCS109 (Petr Oros) [1772010] - [netdrv] phy: check PMAPMD link status only in genphy_c45_read_link (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix use-after-free on device_register fails (Petr Oros) [1772010] - [netdrv] phy: at803x: disable delay only for RGMII mode (Petr Oros) [1772010] - [netdrv] phy: at803x: don't inline helpers (Petr Oros) [1772010] - [netdrv] phy: aquantia: Use get_features for the PHYs abilities (Petr Oros) [1772010] - [netdrv] phy: marvell10g: use genphy_c45_check_and_restart_aneg in mv3310_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_check_and_restart_aneg (Petr Oros) [1772010] - [netdrv] phy: use genphy_config_eee_advert in genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: export genphy_config_eee_advert (Petr Oros) [1772010] - [netdrv] phy: don't use 10BaseT/half as default in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: remove orphaned register read in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: marvell10g: improve mv3310_config_aneg (Petr Oros) [1772010] - [netdrv] phy: disable aneg in genphy_c45_pma_setup_forced (Petr Oros) [1772010] - [netdrv] phy: use mii_10gbt_stat_mod_linkmode_lpa_t in genphy_c45_read_lpa (Petr Oros) [1772010] - [kernel] phy: add helper mii_10gbt_stat_mod_linkmode_lpa_t (Petr Oros) [1772010] - [netdrv] phy: marvell10g: check for newly set aneg (Petr Oros) [1772010] - [netdrv] phy: marvell10g: use genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_an_config_aneg (Petr Oros) [1772010] - [kernel] phy: add helper linkmode_adv_to_mii_10gbt_adv_t (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix PTR_ERR() usage after initialization to constant (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Support generic PHY status read (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Don't explicitly set Pause and Asym_Pause (Petr Oros) [1772010] - [netdrv] phy: use phy_resolve_aneg_linkmode in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: improve phy_resolve_aneg_linkmode (Petr Oros) [1772010] - [netdrv] phy: fix potential race in the phylib state machine (Petr Oros) [1772010] - [kernel] phy: don't use locking in phy_is_started (Petr Oros) [1772010] - [netdrv] phy: fix interrupt handling in non-started states (Petr Oros) [1772010] - [netdrv] phy: simplify genphy_config_eee_advert (Petr Oros) [1772010] - [netdrv] phylink: avoid resolving link state too early (Petr Oros) [1772010] - [netdrv] phylink: add phylink_init_eee() helper (Petr Oros) [1772010] - [netdrv] phylink: only call mac_config() during resolve when link is up (Petr Oros) [1772010] - [netdrv] phy: use phy_modify_changed in genphy_config_advert (Petr Oros) [1772010] - [netdrv] phy: marvell10g: fix usage of new MMD modifying helpers (Petr Oros) [1772010] - [netdrv] phy: add register modifying helpers returning 1 on change (Petr Oros) [1772010] - [netdrv] phy: aquantia: add support for AQCS109 (Petr Oros) [1772010] - [netdrv] phy: disregard "Clause 22 registers present" bit in get_phy_c45_devs_in_pkg (Petr Oros) [1772010] - [netdrv] phy: let genphy_c45_read_link manage the devices to check (Petr Oros) [1772010] - [netdrv] phy: don't double-read link status register if link is up (Petr Oros) [1772010] - [netdrv] fixed-phy: Add fixed_phy_register_with_gpiod() API (Petr Oros) [1772010] - [netdrv] phy: fixed_phy: Fix fixed_phy not checking GPIO (Petr Oros) [1772010] - [netdrv] phy: consider latched link-down status in polling mode (Petr Oros) [1772010] - [netdrv] sfp: do not probe SFP module before we're attached (Petr Oros) [1772010] - [netdrv] phy: make use of new MMD accessors (Petr Oros) [1772010] - [kernel] phy: provide full set of accessor functions to MMD registers (Petr Oros) [1772010] - [netdrv] phy: improve genphy_c45_read_link (Petr Oros) [1772010] - [netdrv] phy: fixed-phy: Drop GPIO from fixed_phy_add() (Petr Oros) [1772010] - [netdrv] dp83640: expire old TX-skb (Petr Oros) [1772010] - [netdrv] phy: aquantia: replace magic numbers with constants (Petr Oros) [1772010] - [netdrv] phy: aquantia: use macro PHY_ID_MATCH_MODEL (Petr Oros) [1772010] - [netdrv] phy: aquantia: remove unneeded includes (Petr Oros) [1772010] - [netdrv] phy: aquantia: Shorten name space prefix to aqr_ (Petr Oros) [1772010] - [netdrv] revert "net: phy: marvell: avoid pause mode on SGMII-to-Copper for 88e151x" (Petr Oros) [1772010] - [netdrv] phy: at803x: Use helpers to access MMD PHY registers (Petr Oros) [1772010] - [netdrv] phy: change phy_start_interrupts to phy_request_interrupt (Petr Oros) [1772010] - [netdrv] phy: start interrupts in phy_start (Petr Oros) [1772010] - [netdrv] phy: warn if phy_start is called from invalid state (Petr Oros) [1772010] - [netdrv] phy: start state machine in phy_start only (Petr Oros) [1772010] - [netdrv] phy: Add SDPX tag based on COPYING file (Petr Oros) [1772010] - [netdrv] phy: Fixup GPLv2 SPDX tags based on license text (Petr Oros) [1772010] - [netdrv] phy: Fixup GPLv2+ SPDX tags based on license text (Petr Oros) [1772010] - [netdrv] phy: Remove redundent License text when SPDX header is present (Petr Oros) [1772010] - [netdrv] phy: Convert some PHY and MDIO driver files to SPDX headers (Petr Oros) [1772010] - [netdrv] phy: at803x: Disable phy delay for RGMII mode (Petr Oros) [1772010] - [netdrv] phy: improve phy_init_hw (Petr Oros) [1772010] - [netdrv] phy: fix issue with loading PHY driver w/o initramfs (Petr Oros) [1772010] - [netdrv] phy: remove phy_stop_interrupts (Petr Oros) [1772010] - [netdrv] phy: ensure phylib state machine is stopped after calling phy_stop (Petr Oros) [1772010] - [netdrv] phy: stop PHY if needed when entering phy_disconnect (Petr Oros) [1772010] - [netdrv] phy: micrel: use phy_read_mmd and phy_write_mmd (Petr Oros) [1772010] - [netdrv] phy: improve get_phy_id (Petr Oros) [1772010] - [kernel] phy: remove state PHY_CHANGELINK (Petr Oros) [1772010] - [netdrv] phy: mdio_bus: add missing device_del() in mdiobus_register() error handling (Petr Oros) [1772010] - [netdrv] phy: check return code when requesting PHY driver module (Petr Oros) [1772010] - [netdrv] phy: Add helpers to determine if PHY driver is generic (Petr Oros) [1772010] - [netdrv] phy: improve logging in phylib (Petr Oros) [1772010] - [netdrv] phy: don't include asm/irq.h directly (Petr Oros) [1772010] - [netdrv] phy: remove preliminary workaround for not loading PHY driver (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: Use the genphy_soft_reset callback (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix deadlock from wrong locking (Petr Oros) [1772010] - [netdrv] phy: marvell: Errata for mv88e6390 internal PHYs (Petr Oros) [1772010] - [netdrv] phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ9031 (Petr Oros) [1772010] - [netdrv] phy: fix too strict check in phy_start_aneg (Petr Oros) [1772010] - [kernel] phy.h: fix obvious errors in doc and kerneldoc content (Petr Oros) [1772010] - [netdrv] phy: mscc: Fix the VSC 8531/41 Chip Init sequence (Petr Oros) [1772010] - [netdrv] phy: Fix the issue that netif always links up after resuming (Petr Oros) [1772010] - [netdrv] phy: print stack trace in phy_error (Petr Oros) [1772010] - [netdrv] phy: improve phy state checking (Petr Oros) [1772010] - [netdrv] fixed phy: Add fixed_phy_change_carrier() (Petr Oros) [1772010] - [netdrv] phy: mdio-gpio: Add phy_ignore_ta_mask to platform data (Petr Oros) [1772010] - [kernel] phy: mdio-gpio: Add platform_data support for phy_mask (Petr Oros) [1772010] - [kernel] gpio: Export gpiod_get_from_of_node() (Petr Oros) [1772010] - [netdrv] phy: Revert toggling reset changes (Petr Oros) [1772010] - [netdrv] phy: sfp: correct store of detected link modes (Petr Oros) [1772010] - [netdrv] phy: micrel: add toggling phy reset if PHY is not attached (Petr Oros) [1772010] - [netdrv] phy: Fix not to call phy_resume() if PHY is not attached (Petr Oros) [1772010] - [netdrv] phy: improve generic EEE ethtool functions (Petr Oros) [1772010] - [netdrv] phy: add workaround for issue where PHY driver doesn't bind to the device (Petr Oros) [1772010] - [netdrv] phy: mscc: fix deadlock in vsc85xx_default_config (Petr Oros) [1772010] - [netdrv] phy: vitesse: remove duplicate support for VSC8574 (Petr Oros) [1772010] - [netdrv] phy: icplus: allow configuring the interrupt function on IP101GR (Petr Oros) [1772010] - [netdrv] phy: icplus: implement .did_interrupt for IP101A/G (Petr Oros) [1772010] - [netdrv] phy: icplus: rename IP101A_G_NO_IRQ to IP101A_G_IRQ_ALL_MASK (Petr Oros) [1772010] - [netdrv] phy: icplus: use the BIT macro where possible (Petr Oros) [1772010] - [netdrv] phy: icplus: keep all ip101a_g functions together (Petr Oros) [1772010] - [documentation] dt-bindings: phy: add bindings for the IC Plus Corp. IP101A/G PHYs (Petr Oros) [1772010] - [documentation] dt-bindings: vendor-prefix: add prefix for IC Plus Corp (Petr Oros) [1772010] - [netdrv] phy: mdio-gpio: Fix working over slow can_sleep GPIOs (Petr Oros) [1772010] - [netdrv] phy: check for implementation of both callbacks in phy_drv_supports_irq (Petr Oros) [1772010] - [netdrv] phy: icplus: add config_intr callback (Petr Oros) [1772010] - [kernel] phy: remove states PHY_STARTING and PHY_PENDING (Petr Oros) [1772010] - [netdrv] phy: leds: Don't make our own link speed names (Petr Oros) [1772010] - [netdrv] phy: improve and inline phy_change (Petr Oros) [1772010] - [netdrv] phy: simplify phy_mac_interrupt and related functions (Petr Oros) [1772010] - [netdrv] phy: don't set state PHY_CHANGELINK in phy_change (Petr Oros) [1772010] - [kernel] phy: improve struct phy_device member interrupts handling (Petr Oros) [1772010] - [netdrv] phy: remove flag PHY_HAS_INTERRUPT from driver configs (Petr Oros) [1772010] - [netdrv] phy: replace PHY_HAS_INTERRUPT with a check for config_intr and ack_interrupt (Petr Oros) [1772010] - [netdrv] phy: use phy_check_link_status in more places in the state machine (Petr Oros) [1772010] - [kernel] phy: remove state PHY_AN (Petr Oros) [1772010] - [netdrv] phy: add phy_check_link_status (Petr Oros) [1772010] - [netdrv] phy: remove useless check in state machine case PHY_RESUMING (Petr Oros) [1772010] - [netdrv] phy: remove useless check in state machine case PHY_NOLINK (Petr Oros) [1772010] - [netdrv] phy: make phy_trigger_machine static (Petr Oros) [1772010] - [netdrv] phy: bcm7xxx: Add entry for BCM7255 (Petr Oros) [1772010] - [netdrv] phy: Allow BCM54616S PHY to setup internal TX/RX clock delay (Petr Oros) [1772010] - [netdrv] phy: mdio-mux-bcm-iproc: simplify getting .driver_data (Petr Oros) [1772010] - [documentation] dt-bindings: add support for Microchip KSZ9131 (Petr Oros) [1772010] - [netdrv] phy: micrel: add Microchip KSZ9131 initial driver (Petr Oros) [1772010] - [netdrv] phy: mscc: fix memory leak in vsc8574_config_pre_init (Petr Oros) [1772010] - [netdrv] phy: mscc: fix signedness bug in vsc85xx_downshift_get (Petr Oros) [1772010] - [netdrv] phy: merge phy_start_aneg and phy_start_aneg_priv (Petr Oros) [1772010] - [netdrv] phy: simplify handling of PHY_RESUMING in state machine (Petr Oros) [1772010] - [netdrv] phy: improve handling of PHY_RUNNING in state machine (Petr Oros) [1772010] - [netdrv] phy: trigger state machine immediately in phy_start_machine (Petr Oros) [1772010] - [netdrv] phy: sfp: remove sfp_mutex's definition (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8574 PHY (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8584 PHY (Petr Oros) [1772010] - [dt-bindings] vsc8531: add two additional LED modes for VSC8584 (Petr Oros) [1772010] - [netdrv] phy: mscc: remove unneeded temporary variable (Petr Oros) [1772010] - [netdrv] phy: mscc: shorten `x != 0` condition to `x` (Petr Oros) [1772010] - [netdrv] phy: mscc: remove unneeded parenthesis (Petr Oros) [1772010] - [netdrv] phy: mscc: Add EEE init sequence (Petr Oros) [1772010] - [netdrv] phy: mscc: add ethtool statistics counters (Petr Oros) [1772010] - [netdrv] phy: mscc: migrate to phy_select/restore_page functions (Petr Oros) [1772010] - [netdrv] phy: phylink: fix SFP interface autodetection (Petr Oros) [1772010] - [netdrv] phy: Convert to using pOFn instead of device_node.name (Petr Oros) [1772010] - [netdrv] phy: improve handling delayed work (Petr Oros) [1772010] - [netdrv] phy: mscc: fix printf format (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: mark PM functions as __maybe_unused (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix build (Petr Oros) [1772010] - [netdrv] phy: marvell: Avoid unnecessary soft reset (Petr Oros) [1772010] - [netdrv] phy: Stop with excessive soft reset (Petr Oros) [1772010] - [netdrv] phy: sfp: Fix unregistering of HWMON SFP device (Petr Oros) [1772010] - [netdrv] phy: fix WoL handling when suspending the PHY (Petr Oros) [1772010] - [net] core: add member wol_enabled to struct net_device (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: Allow configuring MDIO clock divider (Petr Oros) [1772010] - [netdrv] phy: don't reschedule state machine when PHY is halted (Petr Oros) [1772010] - [netdrv] phy: phylink: ensure the carrier is off when starting phylink (Petr Oros) [1772010] - [netdrv] phy: call state machine synchronously in phy_stop (Petr Oros) [1772010] - [net] linkwatch: add check for netdevice being present to linkwatch_do_dev (Petr Oros) [1772010] - [netdrv] sfp: fix oops with ethtool -m (Petr Oros) [1772010] - [netdrv] mdio: remove duplicated include from mdio_bus.c (Petr Oros) [1772010] - [netdrv] phy: et011c: Remove incorrect PHY_POLL flags (Petr Oros) [1772010] - [netdrv] phy: sfp: Handle unimplemented hwmon limits and alarms (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, led-d-mode' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, edge-slowdown' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, vddmac' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: factorize function for getting LED mode from DT (Petr Oros) [1772010] - [netdrv] phy: mscc: factorize code for LEDs mode (Petr Oros) [1772010] - [netdrv] dp83640: Mark expected switch fall-throughs (Petr Oros) [1772010] - [netdrv] phylink: add helper for configuring 2500BaseX modes (Petr Oros) [1772010] - [netdrv] phy: sftp: print debug message with text, not numbers (Petr Oros) [1772010] - [netdrv] phy: Add support for Broadcom Omega internal Combo GPHY (Petr Oros) [1772010] - [netdrv] phy: Add pm support to Broadcom iProc mdio mux driver (Petr Oros) [1772010] - [netdrv] phy: Add support to configure clock in Broadcom iProc mdio mux (Petr Oros) [1772010] - [documentation] dt-bindings: Add clock handle to Broadcom iProc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Use devm api for mdio bus allocation in bcm iproc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Disable external master access in bcm mdio mux driver (Petr Oros) [1772010] - [arm64] dts: Fix the base address of the Broadcom iProc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Fix the register offsets in Broadcom iProc mdio mux driver (Petr Oros) [1772010] - [documentation] dt-bindings: Fix Broadcom iProc mdio mux driver base address (Petr Oros) [1772010] - [netdrv] phy: mscc: the extended page access register is 16 bits (Petr Oros) [1772010] - [netdrv] phy: marvell: Replace mdelay() with msleep() in m88e1116r_config_init() (Petr Oros) [1772010] - [kernel] phy: add helper phy_polling_mode (Petr Oros) [1772010] - [netdrv] phy: prevent PHYs w/o Clause 22 regs from calling genphy_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add GBit master / slave error detection (Petr Oros) [1772010] - [netdrv] phy: sfp: Do not use "imply HWMON" (Petr Oros) [1772010] - [netdrv] phy: sfp: Add HWMON support for module sensors (Petr Oros) [1772010] - [kernel] hwmon: Add helper to tell if a char is invalid in a name (Petr Oros) [1772010] - [kernel] hwmon: Add support for power min, lcrit, min_alarm and lcrit_alarm (Petr Oros) [1772010] - [kernel] hwmon: Add missing HWMON_T_LCRIT_ALARM define (Petr Oros) [1772010] - [netdrv] phy: Drop OF dependency for MDIO_BCM_UNIMAC (Petr Oros) [1772010] - [gpio] gpiolib: Mark gpio_suffixes array with __maybe_unused (Petr Oros) [1772010] - [netdrv] phy: vitesse: Add support for VSC73xx (Petr Oros) [1772010] - [netdrv] phy: dp83tc811: Fix SGMII enable/disable (Petr Oros) [1772010] - [netdrv] phy: dp83tc811: Add INT_STAT3 (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Check read_status results (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Use correct mdio bus (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Check phy_driver ready before accessing (Petr Oros) [1772010] - [netdrv] mdio-mux-gpio: Remove VLA usage (Petr Oros) [1772010] - [netdrv] phy: fixed-phy: Make the error path simpler (Petr Oros) [1772010] - [netdrv] phy: Allow compile test of GPIO consumers if !GPIOLIB (Petr Oros) [1772010] - [watchdog] hpwdt: Reflect changes (Joseph Szczypek) [1769477] - [documentation] watchdog/hpwdt: Update documentation (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Add module parameter kdumptimeout (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Have core ping watchdog (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Advertize max_hw_heartbeat_ms (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Stop hpwdt on unregister (Joseph Szczypek) [1769477] - [watchdog] hpwdt: drop warning after registering device (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Joseph Szczypek) [1769477] - [nvme] make fabrics command run on a separate request queue (David Milburn) [1766361] - [nvme] Restart request timers in resetting state (David Milburn) [1766361] - [nvme] nvme-rdma: fix possible use-after-free in connect timeout (David Milburn) [1766361] - [block] blk-mq: remove blk_mq_complete_request_sync (David Milburn) [1766361] - [nvme] wait until all completed request's complete fn is called (David Milburn) [1766361] - [nvme] don't abort completed request in nvme_cancel_request (David Milburn) [1766361] - [block] blk-mq: introduce blk_mq_tagset_wait_completed_request() (David Milburn) [1766361] - [block] blk-mq: introduce blk_mq_request_completed() (David Milburn) [1766361]- [hwtracing] intel_th: pci: Add Jasper Lake PCH support (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Comet Lake PCH support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix possible memory leak in mode_store() (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix overflow in shift of an unsigned int (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix missing allocation failure check on a kstrndup (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix an uninitialized mutex (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Fix the window switching sequence (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Tiger Lake support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Preserve pre-existing buffer configuration (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Prevent freeing buffers while locked windows exist (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Get rid of the window size limit (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu-sink: An example msu buffer "sink" (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Introduce buffer interface (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Start read iterator from a non-empty window (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Split sgt array and pointer in multiwindow mode (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Support multipage blocks (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Ice Lake NNPI support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix single mode with disabled IOMMU (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Remove set but not used variable 'last' (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix unused variable warning on arm64 platform (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Add current window tracking (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Add a sysfs attribute to trigger window switch (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Correct the block wrap detection (Jiri Olsa) [1771015] - [hwtracing] intel_th: Add switch triggering support (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Factor out trace start/stop (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Factor out pipeline draining (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Switch over to scatterlist (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Replace open-coded list_{first, last, next}_entry variants (Jiri Olsa) [1771015] - [hwtracing] intel_th: Only report useful IRQs to subdevices (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Start handling IRQs (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Use MSI interrupt signalling (Jiri Olsa) [1771015] - [hwtracing] intel_th: Communicate IRQ via resource (Jiri Olsa) [1771015] - [hwtracing] intel_th: Add "rtit" source device (Jiri Olsa) [1771015] - [hwtracing] intel_th: Skip subdevices if their MMIO is missing (Jiri Olsa) [1771015] - [hwtracing] intel_th: Rework resource passing between glue layers and core (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix single mode with IOMMU (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Comet Lake support (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Fix an off-by-one in output unassigning (Jiri Olsa) [1771015] - [hwtracing] intel_th: Don't reference unassigned outputs (Jiri Olsa) [1771015] - [hwtracing] intel_th: pti: Use sysfs_match_string() helper (Jiri Olsa) [1771015] - [hwtracing] intel_th: Only create useful device nodes (Jiri Olsa) [1771015] - [hwtracing] intel_th: Mark expected switch fall-throughs (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix an off-by-one in attribute store (Jiri Olsa) [1771015] - [hwtracing] intel_th: Fix resource handling for ACPI glue layer (Jiri Olsa) [1771015] - [hwtracing] intel_th: Fix device removal logic (Jiri Olsa) [1771015] - [hwtracing] hwtracing/intel_th/msu.c: change return type to vm_fault_t (Jiri Olsa) [1771015] - [scripts] kbuild: modversions: Fix relative CRC byte order interpretation (Don Zickus) [1772940] - [tools] tools x86 uapi asm: Sync the pt_regs.h copy with the kernel sources (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for trace sequences APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for APIs used to extract common fields from a record (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_parse_header_page() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for parse event APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event filter APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event fields APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_read_number_field() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for print field APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for get field value APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for find field APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for libtraceevent event get APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for list events APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event find APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_read_number() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for registering print function (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for function related libtraceevent APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event handler APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_strerror() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for page size APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for host endian APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for file endian APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for get/set cpus APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for header_page APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for tep_handler related APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add support for man pages with multiple names (Michael Petlan) [1743208] - [tools] tools lib traceevent: Introduce man pages (Michael Petlan) [1743208] - [tools] perf/x86/regs: Use PERF_REG_EXTENDED_MASK (Michael Petlan) [1743208] - [tools] perf record: Fix s390 missing module symbol and warning for non-root users (Michael Petlan) [1743208] - [tools] perf machine: Read also the end of the kernel (Michael Petlan) [1743208] - [tools] perf test vmlinux-kallsyms: Ignore aliases to _etext when searching on kallsyms (Michael Petlan) [1743208] - [tools] perf session: Add missing swap ops for namespace events (Michael Petlan) [1743208] - [tools] perf namespace: Protect reading thread's namespace (Michael Petlan) [1743208] - [tools] perf data: Fix 'strncat may truncate' build failure with recent gcc (Michael Petlan) [1743208] - [tools] perf stat: Support 'percore' event qualifier (Michael Petlan) [1743208] - [tools] perf stat: Factor out aggregate counts printing (Michael Petlan) [1743208] - [tools] perf tools: Add a 'percore' event qualifier (Michael Petlan) [1743208] - [tools] perf docs: Add description for stderr (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix sample timestamp wrt non-taken branches (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix improved sample timestamp (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix instructions sampling rate (Michael Petlan) [1743208] - [tools] perf regs x86: Add X86 specific arch__intr_reg_mask() (Michael Petlan) [1743208] - [tools] perf parse-regs: Add generic support for arch__intr/user_reg_mask() (Michael Petlan) [1743208] - [tools] perf parse-regs: Split parse_regs (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Add Cortex-A57 and Cortex-A72 events (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Map Brahma-B53 CPUID to cortex-a53 events (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Remove [[:xdigit:]] wildcard (Michael Petlan) [1743208] - [tools] perf jevents: Remove unused variable (Michael Petlan) [1743208] - [tools] perf test zstd: Fixup verbose mode output (Michael Petlan) [1743208] - [tools] perf tests: Implement Zstd comp/decomp integration test (Michael Petlan) [1743208] - [tools] perf inject: Enable COMPRESSED record decompression (Michael Petlan) [1743208] - [tools] perf report: Implement perf.data record decompression (Michael Petlan) [1743208] - [tools] perf record: Implement -z, --compression_level[=] option (Michael Petlan) [1743208] - [tools] perf report: Add stub processing of compressed events for -D (Michael Petlan) [1743208] - [tools] perf record: Implement compression for AIO trace streaming (Michael Petlan) [1743208] - [tools] perf record: Implement compression for serial trace streaming (Michael Petlan) [1743208] - [tools] perf tools: Introduce Zstd streaming based compression API (Michael Petlan) [1743208] - [tools] perf mmap: Implement dedicated memory buffer for data compression (Michael Petlan) [1743208] - [tools] perf record: Implement COMPRESSED event record and its attributes (Michael Petlan) [1743208] - [tools] perf session: Define 'bytes_transferred' and 'bytes_compressed' metrics (Michael Petlan) [1743208] - [tools] perf build tests: Add NO_LIBZSTD=1 to make_minimal (Michael Petlan) [1743208] - [tools] perf machine: Null-terminate version char array upon fgets(/proc/version) error (Michael Petlan) [1743208] - [tools] perf vendor events intel: Add uncore_upi JSON support (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add 'About' dialog box (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add context menu (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add copy to clipboard (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add tree level (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Fix error when shrinking / enlarging font (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Move view creation (Michael Petlan) [1743208] - [tools] perf tools x86: Add support for recording and printing XMM registers (Michael Petlan) [1743208] - [tools] perf parse-regs: Improve error output when faced with unknown register name (Michael Petlan) [1743208] - [tools] perf record: Fix suggestion to get list of registers usable with --user-regs and --intr-regs (Michael Petlan) [1743208] - [tools] perf tools: Speed up report for perf compiled with linwunwind (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove hard coded install paths from pkg-config file (Michael Petlan) [1743208] - [tools] csky: Add support for libdw (Michael Petlan) [1743208] - [tools] perf test: Fix spelling mistake "leadking" -> "leaking" (Michael Petlan) [1743208] - [tools] perf annotate: Remove hist__account_cycles() from callback (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Silvermont to v14 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update GoldmontPlus to v1.01 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Goldmont to v13 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Bonnell to V4 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update KnightsLanding events to v9 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Haswell events to v28 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update IvyBridge events to v21 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update SandyBridge events to v16 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update JakeTown events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update IvyTown events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update HaswellX events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update BroadwellX events to v14 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update SkylakeX events to v1.12 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Skylake events to v42 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Broadwell-DE events to v7 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Broadwell events to v23 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update metrics from TMAM 3.5 (Michael Petlan) [1743208] - [tools] perf record: Implement --mmap-flush= option (Michael Petlan) [1743208] - [tools] tools build: Implement libzstd feature check, LIBZSTD_DIR and NO_LIBZSTD defines (Michael Petlan) [1743208] - [tools] tools lib traceevent: Rename input arguments and local variables of libtraceevent from pevent to tep (Michael Petlan) [1743208] - [tools] perf tools, tools lib traceevent: Rename "pevent" member of struct tep_event_filter to "tep" (Michael Petlan) [1743208] - [tools] perf tools, tools lib traceevent: Rename "pevent" member of struct tep_event to "tep" (Michael Petlan) [1743208] - [tools] tools lib traceevent: Rename input arguments of libtraceevent APIs from pevent to tep (Michael Petlan) [1743208] - [tools] tools tools, tools lib traceevent: Make traceevent APIs more consistent (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove call to exit() from tep_filter_add_filter_str() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove tep filter trivial APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Removed unneeded !! and return parenthesis (Michael Petlan) [1743208] - [tools] tools lib traceevent: Implement new traceevent APIs for accessing struct tep_handler fields (Michael Petlan) [1743208] - [tools] tools lib traceevent: Coding style fixes (Michael Petlan) [1743208] - [tools] tools lib traceevent: Change description of few APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add more debugging to see various internal ring buffer entries (Michael Petlan) [1743208] - [tools] tools lib traceevent: Implement a new API, tep_list_events_copy() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add mono clocks to be parsed in seconds (Michael Petlan) [1743208] - [tools] tools lib traceevent: Handle trace_printk() "px" (Michael Petlan) [1743208] - [tools] perf list: Output tool events (Michael Petlan) [1743208] - [tools] perf evsel: Support printing evsel name for 'duration_time' (Michael Petlan) [1743208] - [tools] perf stat: Implement duration_time as a proper event (Michael Petlan) [1743208] - [tools] perf stat: Revert checks for duration_time (Michael Petlan) [1743208] - [tools] perf list: Fix s390 counter long description for L1D_RO_EXCL_WRITES (Michael Petlan) [1743208] - [tools] perf tools: Add header defining used namespace struct to event.h (Michael Petlan) [1743208] - [tools] perf trace beauty renameat: No need to include linux/fs.h (Michael Petlan) [1743208] - [tools] perf augmented_raw_syscalls: Use a PERCPU_ARRAY map to copy more string bytes (Michael Petlan) [1743208] - [tools] perf augmented_raw_syscalls: Copy strings from all syscalls with 1st or 2nd string arg (Michael Petlan) [1743208] - [tools] perf trace: Add 'string' event alias to select syscalls with string args (Michael Petlan) [1743208] - [x86] perf/x86: Always store regs->ip in perf_callchain_kernel() (Michael Petlan) [1743208] - [x86] perf/x86: Remove pmu->pebs_no_xmm_regs (Michael Petlan) [1743208] - [x86] perf/x86: Clean up PEBS_XMM_REGS (Michael Petlan) [1743208] - [kernel] perf/x86: Disable extended registers for non-supported PMUs (Michael Petlan) [1743208] - [kernel] perf/ioctl: Add check for the sample_period value (Michael Petlan) [1743208] - [kernel] perf/core: Fix perf_sample_regs_user() mm check (Michael Petlan) [1743208] - [kernel] perf/ring-buffer: Use regular variables for nesting (Michael Petlan) [1743208] - [kernel] perf/ring-buffer: Always use {READ, WRITE}_ONCE() for rb->user_page data (Michael Petlan) [1743208] - [kernel] perf/ring_buffer: Add ordering to rb->nest increment (Michael Petlan) [1743208] - [kernel] perf/ring_buffer: Fix exposing a temporarily decreased data_head (Michael Petlan) [1743208] - [x86] perf/x86/intel/ds: Fix EVENT vs. UEVENT PEBS constraints (Michael Petlan) [1743208] - [x86] perf/x86/intel: Allow PEBS multi-entry in watermark mode (Michael Petlan) [1743208] - [x86] perf/x86/intel: Fix INTEL_FLAGS_EVENT_CONSTRAINT* masking (Michael Petlan) [1743208] - [x86] perf/x86/amd/iommu: Make the 'amd_iommu_attr_groups' symbol static (Michael Petlan) [1743208] - [x86] perf/x86/intel: Add Tremont core PMU support (Michael Petlan) [1743208] - [x86] perf/x86/intel/uncore: Add Intel Icelake uncore support (Michael Petlan) [1743208] - [x86] perf/x86/msr: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel/rapl: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel/cstate: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86: Support constraint ranges (Michael Petlan) [1743208] - [x86] perf/x86/lbr: Avoid reading the LBRs when adaptive PEBS handles them (Michael Petlan) [1743208] - [x86] perf/x86/intel: Support adaptive PEBS v4 (Michael Petlan) [1743208] - [x86] perf/x86/intel/ds: Extract code of event update in short period (Michael Petlan) [1743208] - [x86] perf/x86/intel: Extract memory code PEBS parser for reuse (Michael Petlan) [1743208] - [x86] perf/x86: Support outputting XMM registers (Michael Petlan) [1743208] - [x86] perf/x86/intel: Force resched when TFA sysctl is modified (Michael Petlan) [1743208] - [kernel] perf/core: Add perf_pmu_resched() as global function (Michael Petlan) [1743208] - [kernel] perf/headers: Fix stale comment for struct perf_addr_filter (Michael Petlan) [1743208] - [kernel] perf/core: Make perf_swevent_init_cpu() static (Michael Petlan) [1743208] - [x86] perf/x86: Add sanity checks to x86_schedule_events() (Michael Petlan) [1743208] - [x86] perf/x86: Optimize x86_schedule_events() (Michael Petlan) [1743208] - [x86] perf/x86: Clear ->event_constraint[] on put (Michael Petlan) [1743208] - [x86] perf/x86/intel: Optimize intel_get_excl_constraints() (Michael Petlan) [1743208] - [x86] perf/x86: Remove PERF_X86_EVENT_COMMITTED (Michael Petlan) [1743208] - [x86] perf/x86: Simplify x86_pmu.get_constraints() interface (Michael Petlan) [1743208] - [x86] perf/x86/intel: Simplify intel_tfa_commit_scheduling() (Michael Petlan) [1743208] - [tools] perf evsel: Do not rely on errno values for precise_ip fallback (Michael Petlan) [1715508] - [kernel] redhat: perf kABI-check failure fix (Michael Petlan) [1715508] - [tools] perf vendor events: Remove P8 HW events which are not supported (Michael Petlan) [1715508] - [x86] cpufeature: Fix various quality problems in the header (Michael Petlan) [1715508] - [x86] cpufeature: Add facility to check for min microcode revisions (Michael Petlan) [1715508] - [tools] perf tools: Remove needless asm/unistd.h include fixing build in some places (Michael Petlan) [1715508] - [tools] tools build: Add -ldl to the disassembler-four-args feature test (Michael Petlan) [1715508] - [tools] perf cs-etm: Always allocate memory for cs_etm_queue::prev_packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Don't check cs_etm_queue::prev_packet validity (Michael Petlan) [1715508] - [tools] perf report: Report OOM in status line in the GTK UI (Michael Petlan) [1715508] - [tools] perf bench numa: Add define for RUSAGE_THREAD if not present (Michael Petlan) [1715508] - [tools] tools lib traceevent: Change tag string for error (Michael Petlan) [1715508] - [tools] perf annotate: Fix build on 32 bit for BPF annotation (Michael Petlan) [1715508] - [tools] perf bpf: Return value with unlocking in perf_env__find_btf() (Michael Petlan) [1715508] - [tools] perf bpf: Return NULL when RB tree lookup fails in perf_env__find_btf() (Michael Petlan) [1715508] - [tools] perf tools: Fix map reference counting (Michael Petlan) [1715508] - [tools] perf evlist: Fix side band thread draining (Michael Petlan) [1715508] - [tools] perf tools: Check maps for bpf programs (Michael Petlan) [1715508] - [tools] perf bpf: Return NULL when RB tree lookup fails in perf_env__find_bpf_prog_info() (Michael Petlan) [1715508] - [tools] tools include uapi: Sync sound/asound.h copy (Michael Petlan) [1715508] - [tools] perf top: Always sample time to satisfy needs of use of ordered queuing (Michael Petlan) [1715508] - [tools] perf evsel: Use hweight64() instead of hweight_long(attr.sample_regs_user) (Michael Petlan) [1715508] - [tools] tools lib traceevent: Fix missing equality check for strcmp (Michael Petlan) [1715508] - [tools] perf stat: Disable DIR_FORMAT feature for 'perf stat record' (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-sqlite.py: Fix use of parent_id in calls_view (Michael Petlan) [1715508] - [tools] perf header: Fix lock/unlock imbalances when processing BPF/BTF info (Michael Petlan) [1715508] - [tools] perf pmu: Fix parser error for uncore event alias (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Fix never-ending loop (Michael Petlan) [1715508] - [tools] perf machine: Update kernel map address and re-order properly (Michael Petlan) [1715508] - [tools] tools headers uapi: Synchronize i915_drm.h (Michael Petlan) [1715508] - [tools] tools headers uapi: Update drm/i915_drm.h (Michael Petlan) [1715508] - [tools] perf evsel: Fix max perf_event_attr.precise_ip detection (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix TSC slip (Michael Petlan) [1715508] - [tools] perf cs-etm: Add missing case value (Michael Petlan) [1715508] - [tools] perf bpf: Show more BPF program info in print_bpf_prog_info() (Michael Petlan) [1715508] - [tools] perf bpf: Extract logic to create program names from perf_event__synthesize_one_bpf_prog() (Michael Petlan) [1715508] - [tools] perf tools: Save bpf_prog_info and BTF of new BPF programs (Michael Petlan) [1715508] - [tools] perf evlist: Introduce side band thread (Michael Petlan) [1715508] - [tools] perf annotate: Enable annotation of BPF programs (Michael Petlan) [1715508] - [tools] perf build: Check what binutils's 'disassembler()' signature to use (Michael Petlan) [1715508] - [tools] tools build: Add -lrt to FEATURE_CHECK_LDFLAGS-libaio (Michael Petlan) [1715508] - [tools] tools build: Add test-reallocarray.c to test-all.c to fix the build (Michael Petlan) [1715508] - [tools] perf bpf: Process PERF_BPF_EVENT_PROG_LOAD for annotation (Michael Petlan) [1715508] - [tools] perf symbols: Introduce DSO_BINARY_TYPE__BPF_PROG_INFO (Michael Petlan) [1715508] - [tools] perf feature detection: Add -lopcodes to feature-libbfd (Michael Petlan) [1715508] - [tools] perf top: Add option --no-bpf-event (Michael Petlan) [1715508] - [tools] perf bpf: Save BTF information as headers to perf.data (Michael Petlan) [1715508] - [tools] perf bpf: Save BTF in a rbtree in perf_env (Michael Petlan) [1715508] - [tools] perf bpf: Save bpf_prog_info information as headers to perf.data (Michael Petlan) [1715508] - [tools] perf bpf: Save bpf_prog_info in a rbtree in perf_env (Michael Petlan) [1715508] - [tools] perf bpf: Make synthesize_bpf_events() receive perf_session pointer instead of perf_tool (Michael Petlan) [1715508] - [tools] perf bpf: Synthesize bpf events with bpf_program__get_prog_info_linear() (Michael Petlan) [1715508] - [tools] perf record: Replace option --bpf-event with --no-bpf-event (Michael Petlan) [1715508] - [tools] perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() (Michael Petlan) [1715508] - [tools] perf tests: Fix memory leak by expr__find_other() in test__expr() (Michael Petlan) [1715508] - [tools] perf tests: Fix a memory leak of cpu_map object in the openat_syscall_event_on_all_cpus test (Michael Petlan) [1715508] - [tools] perf evsel: Free evsel->counts in perf_evsel__exit() (Michael Petlan) [1715508] - [tools] perf top: Fix global-buffer-overflow issue (Michael Petlan) [1715508] - [tools] perf maps: Purge all maps from the 'names' tree (Michael Petlan) [1715508] - [tools] perf map: Remove map from 'names' tree in __maps__remove() (Michael Petlan) [1715508] - [tools] perf hist: Add missing map__put() in error case (Michael Petlan) [1715508] - [tools] perf top: Fix error handling in cmd_top() (Michael Petlan) [1715508] - [tools] perf top: Delete the evlist before perf_session, fixing heap-use-after-free issue (Michael Petlan) [1715508] - [tools] perf build-id: Fix memory leak in print_sdt_events() (Michael Petlan) [1715508] - [tools] perf config: Fix a memory leak in collect_config() (Michael Petlan) [1715508] - [tools] perf config: Fix an error in the config template documentation (Michael Petlan) [1715508] - [tools] perf list: Don't forget to drop the reference to the allocated thread_map (Michael Petlan) [1715508] - [tools] perf tools: Add doc about how to build perf with Asan and UBSan (Michael Petlan) [1715508] - [tools] perf vendor events: Remove P8 HW events which are not supported (Michael Petlan) [1715508] - [tools] perf stat: Improve scaling (Michael Petlan) [1715508] - [tools] perf stat: Fix --no-scale (Michael Petlan) [1715508] - [tools] perf script: Support relative time (Michael Petlan) [1715508] - [tools] perf report: Indicate JITed code better in report (Michael Petlan) [1715508] - [tools] perf report: Show all sort keys in help output (Michael Petlan) [1715508] - [tools] perf record: Clarify help for --switch-output (Michael Petlan) [1715508] - [tools] perf record: Allow to limit number of reported perf.data files (Michael Petlan) [1715508] - [tools] perf list: Filter metrics too (Michael Petlan) [1715508] - [tools] perf tools report: Add custom scripts to script menu (Michael Petlan) [1715508] - [tools] perf ui browser: Fix ui popup argv browser for many entries (Michael Petlan) [1715508] - [tools] perf script: Add array bound checking to list_scripts (Michael Petlan) [1715508] - [tools] perf tools: Add some new tips describing the new options (Michael Petlan) [1715508] - [tools] perf report: Implement browsing of individual samples (Michael Petlan) [1715508] - [tools] perf report: Support builtin perf script in scripts menu (Michael Petlan) [1715508] - [tools] perf report: Support running scripts for current time range (Michael Petlan) [1715508] - [tools] perf report: Support time sort key (Michael Petlan) [1715508] - [tools] perf script: Filter COMM/FORK/.. events by CPU (Michael Petlan) [1715508] - [tools] perf tools: Update x86's syscall_64.tbl, no change in tools/perf behaviour (Michael Petlan) [1715508] - [tools] perf script python: Add printdate function to SQL exporters (Michael Petlan) [1715508] - [tools] perf report: Use less for scripts output (Michael Petlan) [1715508] - [tools] perf session: Add process callback to reader object (Michael Petlan) [1715508] - [tools] perf header: Add DIR_FORMAT feature to describe directory data (Michael Petlan) [1715508] - [tools] perf data: Make perf_data__size() work over directory (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__update_dir() function (Michael Petlan) [1715508] - [tools] perf data: Don't store auxtrace index for directory data file (Michael Petlan) [1715508] - [tools] perf data: Support having perf.data stored as a directory (Michael Petlan) [1715508] - [tools] perf vendor events amd: perf PMU events for AMD Family 17h (Michael Petlan) [1715508] - [tools] perf probe: Fix getting the kernel map (Michael Petlan) [1715508] - [tools] perf report: Parse time quantum (Michael Petlan) [1715508] - [tools] perf time-utils: Add utility function to print time stamps in nanoseconds (Michael Petlan) [1715508] - [tools] perf report: Support output in nanoseconds (Michael Petlan) [1715508] - [tools] perf script: Support insn output for normal samples (Michael Petlan) [1715508] - [tools] perf data: Force perf_data__open|close zero data->file.path (Michael Petlan) [1715508] - [tools] perf session: Fix double free in perf_data__close (Michael Petlan) [1715508] - [tools] perf evsel: Probe for precise_ip with simple attr (Michael Petlan) [1715508] - [tools] perf tools: Read and store caps/max_precise in perf_pmu (Michael Petlan) [1715508] - [tools] perf hist: Fix memory leak of srcline (Michael Petlan) [1715508] - [tools] perf hist: Add error path into hist_entry__init (Michael Petlan) [1715508] - [tools] perf diff: Support --pid/--tid filter options (Michael Petlan) [1715508] - [tools] perf diff: Support --cpu filter option (Michael Petlan) [1715508] - [tools] perf diff: Support --time filter option (Michael Petlan) [1715508] - [tools] perf thread: Generalize function to copy from thread addr space from intel-bts code (Michael Petlan) [1715508] - [tools] perf annotate: Calculate the max instruction name, align column to that (Michael Petlan) [1715508] - [tools] perf clang: Remove needless extra semicolon (Michael Petlan) [1715508] - [tools] perf bpf: Automatically add BTF ELF markers (Michael Petlan) [1715508] - [tools] perf beauty msg_flags: Add missing s lost when adding prefix suppression logic (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Add call tree (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out CallGraphModelBase (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Improve TreeModel abstraction (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out TreeWindowBase (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-postgresql.py: Export calls parent_id (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-postgresql.py: Fix invalid input syntax for integer error (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-sqlite.py: Export calls parent_id (Michael Petlan) [1715508] - [tools] perf db-export: Add calls parent_id to enable creation of call trees (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix divide by zero when TSC is not available (Michael Petlan) [1715508] - [tools] perf auxtrace: Improve address filter error message when there is no DSO (Michael Petlan) [1715508] - [tools] perf time-utils: Refactor time range parsing code (Michael Petlan) [1715508] - [tools] tools lib traceevent: Fix buffer overflow in arg_eval (Michael Petlan) [1715508] - [tools] perf probe: Clarify error message about not finding kernel modules debuginfo (Michael Petlan) [1715508] - [tools] replace open encodings for NUMA_NO_NODE (Michael Petlan) [1715508] - [tools] perf script python: Add Python3 support to stat-cpi.py (Michael Petlan) [1715508] - [tools] perf tools: Add perf_exe() helper to find perf binary (Michael Petlan) [1715508] - [tools] perf script: Handle missing fields with -F +. (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__open_dir_data function (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__(create_dir|close_dir) functions (Michael Petlan) [1715508] - [tools] perf data: Fail check_backup in case of error (Michael Petlan) [1715508] - [tools] perf data: Make check_backup work over directories (Michael Petlan) [1715508] - [tools] perf tools: Add rm_rf_perf_data function (Michael Petlan) [1715508] - [tools] perf tools: Add pattern name checking to rm_rf (Michael Petlan) [1715508] - [tools] perf tools: Add depth checking to rm_rf (Michael Petlan) [1715508] - [tools] perf data: Add global path holder (Michael Petlan) [1715508] - [tools] perf data: Move size to struct perf_data_file (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Add top calls report (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove no selection error (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove SQLTableDialogDataItem (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Create new dialog data item classes (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Move report name into ReportVars (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out ReportVars (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out ReportDialogBase (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Move column headers (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Hide Call Graph option if no calls table (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove leftover debugging prints (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Fix missing shebang (Michael Petlan) [1715508] - [tools] perf thread-stack: Hide x86 retpolines (Michael Petlan) [1715508] - [tools] perf thread-stack: Improve thread_stack__no_call_return() (Michael Petlan) [1715508] - [tools] perf tools: Make rm_rf() remove single file (Michael Petlan) [1715508] - [tools] perf cpumap: Increase debug level for cpu_map__snprint verbose output (Michael Petlan) [1715508] - [tools] perf bpf-event: Add missing new line into pr_debug call (Michael Petlan) [1715508] - [tools] perf script: Allow +- operator for type specific fields option (Michael Petlan) [1715508] - [tools] perf evsel: Force sample_type for slave events (Michael Petlan) [1715508] - [tools] perf session: Don't report zero period samples for slave events (Michael Petlan) [1715508] - [tools] perf trace: Allow dumping a BPF map after setting up BPF events (Michael Petlan) [1715508] - [tools] perf bpf: Add bpf_map dumper (Michael Petlan) [1715508] - [tools] perf doc: Fix documentation of the Flags section in perf.data (Michael Petlan) [1715508] - [tools] perf doc: Fix HEADER_CMDLINE description in perf.data documentation (Michael Petlan) [1715508] - [tools] perf report: Don't shadow inlined symbol with different addr range (Michael Petlan) [1715508] - [tools] perf tools: Use sysfs__mountpoint() when reading cpu topology (Michael Petlan) [1715508] - [tools] perf tools: Add numa_topology object (Michael Petlan) [1715508] - [tools] perf tools: Add cpu_topology object (Michael Petlan) [1715508] - [tools] perf tests shell: Skip trace+probe_vfs_getname.sh if built without trace support (Michael Petlan) [1715508] - [tools] perf header: Remove unused 'cpu_nr' field from 'struct cpu_topo' (Michael Petlan) [1715508] - [tools] perf header: Get rid of write_it label (Michael Petlan) [1715508] - [tools] perf list: Display metric expressions for --details option (Michael Petlan) [1715508] - [tools] perf tools: Fix legacy events symbol separator parsing (Michael Petlan) [1715508] - [tools] perf tools: Rename build libperf to perf (Michael Petlan) [1715508] - [tools] perf tools: Rename LIB_FILE to LIBPERF_A (Michael Petlan) [1715508] - [tools] perf tools: Compile perf with libperf-in.o instead of libperf.a (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize auxtrace_buffer fetch function (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize main packet processing loop (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize main decoder function (Michael Petlan) [1715508] - [tools] perf cs-etm: Make cs_etm__run_decoder() queue independent (Michael Petlan) [1715508] - [tools] perf cs-etm: Rethink kernel address initialisation (Michael Petlan) [1715508] - [tools] perf cs-etm: Cleaning up function cs_etm__alloc_queue() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix erroneous comment (Michael Petlan) [1715508] - [tools] perf cs-etm: Introducing function cs_etm__init_trace_params() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix memory leak in error path (Michael Petlan) [1715508] - [tools] perf cs-etm: Introducing function cs_etm_decoder__init_dparams() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix wrong return values in error path (Michael Petlan) [1715508] - [tools] perf cs-etm: Remove unused structure field "time" and "timestamp" (Michael Petlan) [1715508] - [tools] perf cs-etm: Remove unused structure field "state" (Michael Petlan) [1715508] - [tools] perf build: Add missing FEATURE_CHECK_LDFLAGS-libcrypto (Michael Petlan) [1715508] - [tools] perf unwind: Do not put libunwind-{x86, aarch64} in FEATURE_TESTS_BASIC (Michael Petlan) [1715508] - [tools] perf coresight: Do not test for libopencsd by default (Michael Petlan) [1715508] - [tools] perf trace: Filter out gnome-terminal* parent (Michael Petlan) [1715508] - [tools] perf trace: Check if the 'fd' is negative when mapping it to pathname (Michael Petlan) [1715508] - [tools] perf beauty ioctl cmd: The 'fd' arg is signed (Michael Petlan) [1715508] - [tools] perf utils: Silence "Couldn't synthesize bpf events" warning for EPERM (Michael Petlan) [1715508] - [tools] perf cs-etm: Add proper header file for symbols (Michael Petlan) [1715508] - [tools] perf record: Implement --affinity=node|cpu option (Michael Petlan) [1715508] - [tools] perf auxtrace: Add timestamp to auxtrace errors (Michael Petlan) [1715508] - [tools] perf intel-pt: Packet splitting can happen only on 32-bit (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix CYC timestamp calculation after OVF (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix overlap calculation for padding (Michael Petlan) [1715508] - [tools] perf auxtrace: Define auxtrace record alignment (Michael Petlan) [1715508] - [tools] perf thread-stack: Represent jmps to the start of a different symbol (Michael Petlan) [1715508] - [tools] perf thread-stack: Tidy thread_stack__no_call_return() by adding more local variables (Michael Petlan) [1715508] - [tools] perf thread-stack: Tidy thread_stack__push_cp() usage (Michael Petlan) [1715508] - [tools] perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols (Michael Petlan) [1715508] - [tools] perf vendor events intel: Fix Load_Miss_Real_Latency on CLX (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for exception return packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for exception packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Add traceID in packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Change tuple from traceID-CPU# to traceID-metadata (Michael Petlan) [1715508] - [tools] perf cs-etm: Add exception number in exception packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for trace discontinuity (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for instruction range packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Add last instruction information in packet (Michael Petlan) [1715508] - [tools] perf tools: Add documentation for BPF event selection (Michael Petlan) [1715508] - [tools] perf report: Move symbol annotation to the resort phase (Michael Petlan) [1715508] - [tools] perf evsel: Add output_resort_cb method (Michael Petlan) [1715508] - [tools] perf hists: Add argument to hists__resort_cb_t callback (Michael Petlan) [1715508] - [tools] perf record: Apply affinity masks when reading mmap buffers (Michael Petlan) [1715508] - [tools] perf tools: Add fallback versions for CPU_{OR, EQUAL}() (Michael Petlan) [1715508] - [tools] perf record: Bind the AIO user space buffers to nodes (Michael Petlan) [1715508] - [tools] perf record: Allocate affinity masks (Michael Petlan) [1715508] - [tools] perf pmu: Remove set_drv_config API (Michael Petlan) [1715508] - [tools] perf coresight: Remove set_drv_config() API (Michael Petlan) [1715508] - [tools] perf arm cs-etm: Use event attributes to send sink information to kernel (Michael Petlan) [1715508] - [tools] perf pmu: Move EVENT_SOURCE_DEVICE_PATH to PMU header file (Michael Petlan) [1715508] - [tools] perf bpf-loader: Remove unecessary includes from bpf-loader.h (Michael Petlan) [1715508] - [tools] perf powerpc kvm-stat: Add missing evlist.h header (Michael Petlan) [1715508] - [tools] perf kvm stat: Replace kvm-stat.h includes with forward declarations (Michael Petlan) [1715508] - [tools] perf pmu: Remove needless evsel.h only needs one fwd decl (Michael Petlan) [1715508] - [tools] perf tests pmu: Add missing headers (Michael Petlan) [1715508] - [tools] perf hist: Remove the needless callchain.h include from hist.h (Michael Petlan) [1715508] - [tools] perf tools: Add missing include in various places (Michael Petlan) [1715508] - [tools] perf thread: Don't include symbol.h, symbol_conf.h is enough (Michael Petlan) [1715508] - [tools] perf evsel: No need to include symbol.h in evsel.h, symbol_conf.h is enough (Michael Petlan) [1715508] - [tools] perf tools: Add missing include for symbols.h (Michael Petlan) [1715508] - [tools] perf hist: Remove symbol.h from hist.h, just fwd decls are needed (Michael Petlan) [1715508] - [tools] perf tests: Add missing headers so far obtained indirectly (Michael Petlan) [1715508] - [tools] perf map: Move structs and prototypes for map groups to a separate header (Michael Petlan) [1715508] - [tools] pref tools: Add missing map.h includes (Michael Petlan) [1715508] - [tools] perf symbols: Introduce map_symbol.h (Michael Petlan) [1715508] - [tools] perf callchain: Uninline callchain_cursor_reset() to remove map.h dependency (Michael Petlan) [1715508] - [tools] perf srccode: Move struct definition from map.h to srccode.h (Michael Petlan) [1715508] - [tools] perf arm pmu: Add missing linux/string.h header (Michael Petlan) [1715508] - [tools] perf powerpc: Add missing headers to skip-callchain-idx.c (Michael Petlan) [1715508] - [tools] perf augmented_syscalls: Convert to bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf examples: Convert etcsnoop to use bpf_map() (Michael Petlan) [1715508] - [tools] perf trace: Fixup etcsnoop example (Michael Petlan) [1715508] - [tools] perf augmented_raw_syscalls: Use bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf: Convert pid_map() to bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf: Add bpf_map() helper (Michael Petlan) [1715508] - [tools] perf bpf: Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT (Michael Petlan) [1715508] - [tools] perf sched: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf hist: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf symbols: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf util: Use cached rbtree for rblists (Michael Petlan) [1715508] - [tools] perf callchain: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf machine: Use cached rbtrees (Michael Petlan) [1715508] - [tools] Update rbtree implementation (Michael Petlan) [1715508] - [tools] perf callchain: No need to include perf.h (Michael Petlan) [1715508] - [tools] perf comm: Remove needless headers from comm.h (Michael Petlan) [1715508] - [tools] perf namespaces: Remove namespaces.h from .h headers (Michael Petlan) [1715508] - [tools] perf symbols: Remove some unnecessary includes from symbol.h (Michael Petlan) [1715508] - [tools] perf symbols: Remove include map.h from dso.h (Michael Petlan) [1715508] - [tools] perf block-range: Add missing headers (Michael Petlan) [1715508] - [tools] perf tools: Move branch structs to branch.h (Michael Petlan) [1715508] - [tools] perf annotate: Remove lots of headers from annotate.h (Michael Petlan) [1715508] - [tools] perf symbols: Move symbol_conf to separate file (Michael Petlan) [1715508] - [tools] perf color: Add missing stdarg.g to color.h (Michael Petlan) [1715508] - [tools] perf utils: Move perf_config using routines from color.c to separate object (Michael Petlan) [1715508] - [tools] perf top: Synthesize BPF events for pre-existing loaded BPF programs (Michael Petlan) [1715508] - [tools] perf tools: Synthesize PERF_RECORD_* for loaded BPF programs (Michael Petlan) [1715508] - [tools] perf tools: Handle PERF_RECORD_BPF_EVENT (Michael Petlan) [1715508] - [tools] perf tools: Handle PERF_RECORD_KSYMBOL (Michael Petlan) [1715508] - [tools] tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1715508] - [tools] tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1715508] - [tools] perf report: Display names in s390 diagnostic counter sets (Michael Petlan) [1715508] - [tools] perf tools: Remove duplicate headers (Michael Petlan) [1715508] - [tools] perf session: Add reader__process_events function (Michael Petlan) [1715508] - [tools] perf session: Add 'data_offset' member to reader object (Michael Petlan) [1715508] - [tools] perf session: Add 'data_size' member to reader object (Michael Petlan) [1715508] - [tools] perf session: Add reader object (Michael Petlan) [1715508] - [tools] perf session: Get rid of file_size variable (Michael Petlan) [1715508] - [tools] perf session: Rearrange perf_session__process_events function (Michael Petlan) [1715508] - [tools] perf tools: Replace automatic const char[] variables by statics (Michael Petlan) [1715508] - [tools] perf/doc: Update design.txt for exclude_{host|guest} flags (Michael Petlan) [1715508] - [x86] perf/x86/intel/pt: Remove software double buffering PMU capability (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Fix AUX software double buffering (Michael Petlan) [1715508] - [x86] perf/x86/amd: Update generic hardware cache events for Family 17h (Michael Petlan) [1715508] - [x86] perf/x86/amd: Add event map for AMD Family 17h (Michael Petlan) [1715508] - [x86] perf/x86: Fix incorrect PEBS_REGS (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Fix AUX record suppression (Michael Petlan) [1715508] - [kernel] perf/core: Fix the address filtering fix (Michael Petlan) [1715508] - [kernel] perf/core: Fix perf_event_disable_inatomic() race (Michael Petlan) [1715508] - [x86] perf/x86/intel: Initialize TFA MSR (Michael Petlan) [1715508] - [x86] perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS (Michael Petlan) [1715508] - [kernel] perf/core: Restore mmap record type correctly (Michael Petlan) [1715508] - [x86] perf/x86/intel: Make dev_attr_allow_tsx_force_abort static (Michael Petlan) [1715508] - [kernel] uprobes: convert uprobe.ref to refcount_t (Michael Petlan) [1715508] - [kernel] perf, bpf: Consider events with attr.bpf_event as side-band events (Michael Petlan) [1715508] - [kernel] perf/core: Mark expected switch fall-through (Michael Petlan) [1715508] - [x86] perf/x86/intel/uncore: Fix client IMC events return huge result (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Use high order allocations for AUX buffers optimistically (Michael Petlan) [1715508] - [x86] events: Mark expected switch-case fall-throughs (Michael Petlan) [1715508] - [kernel] perf, pt, coresight: Fix address filters for vmas with non-zero offset (Michael Petlan) [1715508] - [kernel] perf: Copy parent's address filter offsets on clone (Michael Petlan) [1715508] - [x86] perf/x86/intel: Add counter freezing quirk for Goldmont (Michael Petlan) [1715508] - [x86] perf/x86/intel: Clean up counter freezing quirk (Michael Petlan) [1715508] - [x86] perf/x86/intel: Clean up SNB PEBS quirk (Michael Petlan) [1715508] - [x86] perf/x86/kvm: Avoid unnecessary work in guest filtering (Michael Petlan) [1715508] - [perf] aux: Make perf_event accessible to setup_aux() (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Convert ring_buffer.aux_refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Convert ring_buffer.refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf: Convert perf_event_context.refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf/uprobes: Convert to SPDX license identifier (Michael Petlan) [1715508] - [kernel] perf/hw_breakpoints: Convert to SPDX license identifier (Michael Petlan) [1715508] - [kernel] perf/core: Convert to SPDX license identifiers (Michael Petlan) [1715508] - [kernel] perf, bpf: Introduce PERF_RECORD_BPF_EVENT (Michael Petlan) [1715508] - [kernel] perf, bpf: Introduce PERF_RECORD_KSYMBOL (Michael Petlan) [1715508] - [kernel] perf: Remove duplicated workqueue.h include from perf_event.h (Michael Petlan) [1715508] - [tools] perf/core: Remove unused perf_flags (Michael Petlan) [1715508] - [x86] perf/core, arch/x86: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE (Michael Petlan) [1715508] - [x86] perf/core, arch/x86: Use PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1715508] - [kernel] perf/core: Add PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1715508] - [kernel] perf/core: Add function to test for event exclusion flags (Michael Petlan) [1715508]- [kernel] mm/hmm: fix ZONE_DEVICE anon page mapping reuse (Jerome Glisse) [1498655 1597758] - [gpu] drm/nouveau/dmem: missing mutex_lock in error path (Jerome Glisse) [1498655 1597758] - [mm] hmm: always return EBUSY for invalid ranges in hmm_range_{fault, snapshot} (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: move hmm_vma_range_done and hmm_vma_fault to nouveau (Jerome Glisse) [1498655 1597758] - [kernel] mm: factor out a devm_request_free_mem_region helper (Jerome Glisse) [1498655 1597758] - [mm] don't clear ->mapping in hmm_devmem_free (Jerome Glisse) [1498655 1597758] - [mm] remove the struct hmm_device infrastructure (Jerome Glisse) [1498655 1597758] - [mm] hmm: Fix error flows in hmm_invalidate_range_start (Jerome Glisse) [1498655 1597758] - [mm] hmm: Remove confusing comment and logic from hmm_release (Jerome Glisse) [1498655 1597758] - [mm] hmm: Poison hmm_range during unregister (Jerome Glisse) [1498655 1597758] - [mm] hmm: Remove racy protection against double-unregistration (Jerome Glisse) [1498655 1597758] - [mm] hmm: Use lockdep instead of comments (Jerome Glisse) [1498655 1597758] - [mm] hmm: Hold on to the mmget for the lifetime of the range (Jerome Glisse) [1498655 1597758] - [mm] hmm: Do not use list*_rcu() for hmm->ranges (Jerome Glisse) [1498655 1597758] - [mm] hmm: Simplify hmm_get_or_create and make it reliable (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: Remove duplicate condition test before wait_event_timeout (Jerome Glisse) [1498655 1597758] - [mm] hmm: Hold a mmgrab from hmm to mm (Jerome Glisse) [1498655 1597758] - [mm] hmm: Use hmm_mirror not mm as an argument for hmm_range_register (Jerome Glisse) [1498655 1597758] - [mm] hmm: fix use after free with struct hmm in the mmu notifiers (Jerome Glisse) [1498655 1597758] - [mm] hmm: Only set FAULT_FLAG_ALLOW_RETRY for non-blocking (Jerome Glisse) [1498655 1597758] - [mm] hmm: support automatic NUMA balancing (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: clean up some coding style and comments (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: suppress compilation warnings when CONFIG_HUGETLB_PAGE is not set (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: convert various hmm_pfn_* to device_entry which is a better name (Jerome Glisse) [1498655 1597758] - [mm] hmm: add a helper function that fault pages and map them to a device (Jerome Glisse) [1498655 1597758] - [mm] hmm: allow to mirror vma of a file on a DAX backed filesystem (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: add helpers to test if mm is still alive or not (Jerome Glisse) [1498655 1597758] - [mm] hmm: mirror hugetlbfs (snapshoting, faulting and DMA mapping) (Jerome Glisse) [1498655 1597758] - [documentation] [documentation] mm/hmm: add default fault flags to avoid the need to pre-fill pfns arrays (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve driver API to work and wait over a range (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve and rename hmm_vma_fault() to hmm_range_fault() (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve and rename hmm_vma_get_pfns() to hmm_range_snapshot() (Jerome Glisse) [1498655 1597758] - [mm] hmm: do not erase snapshot when a range is invalidated (Jerome Glisse) [1498655 1597758] - [mm] hmm: use reference counting for HMM struct (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: convert to use vm_fault_t (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: remove set but not used variable 'devmem' (Jerome Glisse) [1498655 1597758] - [mm] hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL (Jerome Glisse) [1498655 1597758] - [mm] hmm: replace hmm_devmem_pages_create() with devm_memremap_pages() (Jerome Glisse) [1498655 1597758] - [mm] hmm: use devm semantics for hmm_devmem_{add, remove} (Jerome Glisse) [1498655 1597758] - [mm] hmm: invalidate device page table at start of invalidation (Jerome Glisse) [1498655 1597758] - [mm] hmm: use a structure for update callback parameters (Jerome Glisse) [1498655 1597758] - [mm] hmm: properly handle migration pmd (Jerome Glisse) [1498655 1597758] - [mm] hmm: fix utf8 . (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: remove unused variables align_start and align_end (Jerome Glisse) [1498655 1597758] - [hid] hyperv: Use in-place iterator API in the channel callback (Benjamin Tissoires) [1740778 1772010] - [hid] logitech-hidpp: do all FF cleanup in hidpp_ff_destroy() (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: rework device validation (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: split g920_get_config() (Benjamin Tissoires) [1740778] - [hid] fix error message in hid_open_report() (Benjamin Tissoires) [1740778] - [hid] Fix assumption that devices have inputs (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add Trekstor Primebook C11B to descriptor override (Benjamin Tissoires) [1740778] - [hid] apple: Fix stuck function keys when using FN (Benjamin Tissoires) [1740778] - [hid] wacom: Fix several minor compiler warnings (Benjamin Tissoires) [1740778] - [hid] Add quirk for HP X500 PIXART OEM mouse (Benjamin Tissoires) [1740778] - [hid] hidraw: Fix invalid read in hidraw_ioctl (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix crash when initial logi_dj_recv_query_paired_devices fails (Benjamin Tissoires) [1740778] - [hid] logitech: Fix general protection fault caused by Logitech driver (Benjamin Tissoires) [1740778] - [hid] sony: Fix memory corruption issue on cleanup (Benjamin Tissoires) [1740778] - [hid] prodikeys: Fix general protection fault during probe (Benjamin Tissoires) [1740778] - [hid] wacom: correct misreported EKR ring values (Benjamin Tissoires) [1740778] - [hid] cp2112: prevent sleeping function called from invalid context (Benjamin Tissoires) [1740778] - [hid] wacom: Correct distance scale for 2nd-gen Intuos devices (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove support for the G700 over USB (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech-hidpp: add USB PID for a few more supported mice" (Benjamin Tissoires) [1740778] - [hid] sony: Fix race condition between rumble and device remove (Benjamin Tissoires) [1740778] - [hid] hiddev: do cleanup in failure of opening a device (Benjamin Tissoires) [1740778] - [hid] hiddev: avoid opening a disconnected device (Benjamin Tissoires) [1740778] - [hid] input: fix a4tech horizontal wheel custom usage (Benjamin Tissoires) [1740778] - [hid] Add quirk for HP X1200 PIXART OEM mouse (Benjamin Tissoires) [1740778] - [hid] holtek: test for sanity of intfdata (Benjamin Tissoires) [1740778] - [hid] wacom: fix bit shift for Cintiq Companion 2 (Benjamin Tissoires) [1740778] - [hid] quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Really fix return value of logi_dj_recv_query_hidpp_devices (Benjamin Tissoires) [1740778] - [hid] Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add the Powerplay receiver (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add USB PID for a few more supported mice (Benjamin Tissoires) [1740778] - [hid] logitech-dj: rename "gaming" receiver to "lightspeed" (Benjamin Tissoires) [1740778] - [hid] Add another Primax PIXART OEM mouse quirk (Benjamin Tissoires) [1740778] - [hid] wacom: generic: add touchring adjustment for 2nd Gen Pro Small (Benjamin Tissoires) [1740778] - [hid] quirks: Refactor ELAN 400 and 401 handling (Benjamin Tissoires) [1740778] - [hid] video: fbdev: don't print error message on framebuffer_alloc() failure (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix forwarding of very long HID++ reports (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Huion HS64 tablet (Benjamin Tissoires) [1740778] - [hid] wacom: add new MobileStudio Pro support (Benjamin Tissoires) [1740778] - [hid] wacom: generic: read the number of expected touches on a per collection basis (Benjamin Tissoires) [1740778] - [hid] wacom: generic: support the 'report valid' usage for touch (Benjamin Tissoires) [1740778] - [hid] wacom: generic: read HID_DG_CONTACTMAX from any feature report (Benjamin Tissoires) [1740778] - [hid] wacom: Add 2nd gen Intuos Pro Small support (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee Rainbow CV720 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix return value of logi_dj_recv_query_hidpp_devices (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 372 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 307 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 297 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 267 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 265 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix 064d:c52f receiver support (Benjamin Tissoires) [1740778] - [hid] revert "hid: core: Call request_module before doing device_add" (Benjamin Tissoires) [1740778] - [hid] revert "hid: core: Do not call request_module() in async context" (Benjamin Tissoires) [1740778] - [hid] revert "hid: Increase maximum report size allowed by hid_field_extract()" (Benjamin Tissoires) [1740778] - [hid] a4tech: fix horizontal scrolling (Benjamin Tissoires) [1740778] - [hid] hyperv: Add a module description line (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: Add support for the S510 remote control (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: hid: make const array consumer_rdesc_start static (Benjamin Tissoires) [1740778] - [hid] logitech-dj: make const array template static (Benjamin Tissoires) [1740778] - [hid] multitouch: handle faulty Elo touch device (Benjamin Tissoires) [1740778] - [input] treewide: Add SPDX license identifier for more missed files (Benjamin Tissoires) [1740778] - [hid] wacom: Sync INTUOSP2_BT touch state after each frame if necessary (Benjamin Tissoires) [1740778] - [hid] wacom: Correct button numbering 2nd-gen Intuos Pro over Bluetooth (Benjamin Tissoires) [1740778] - [hid] wacom: Send BTN_TOUCH in response to INTUOSP2_BT eraser contact (Benjamin Tissoires) [1740778] - [hid] wacom: Don't report anything prior to the tool entering range (Benjamin Tissoires) [1740778] - [hid] wacom: Don't set tool type until we're in range (Benjamin Tissoires) [1740778] - [hid] wacom: correct touch resolution x/y typo (Benjamin Tissoires) [1740778] - [hid] wacom: generic: Correct pad syncing (Benjamin Tissoires) [1740778] - [hid] wacom: generic: only switch the mode on devices with LEDs (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Add usb-id for the 27MHz MX3000 receiver (Benjamin Tissoires) [1740778] - [hid] rmi: Use SET_REPORT request on control endpoint for Acer Switch 3 and 5 (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for the MX5500 keyboard (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for the Logitech MX5500's Bluetooth Mini-Receiver (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add iBall Aer3 to descriptor override (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix spelling in printk (Benjamin Tissoires) [1740778] - [hid] input: add mapping for KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [1740778] - [hid] input: fix assignment of .value (Benjamin Tissoires) [1740778] - [hid] input: make sure the wheel high resolution multiplier is set (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add usbhid dependency in Kconfig (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 consumer keys reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 extra mouse buttons reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 wheel reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: make hidpp10_set_register_bit a bit more generic (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add input_device ptr to struct hidpp_device (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: do not hardcode very long report length (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: handle devices attached to 27MHz wireless receivers (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: use RAP instead of FAP to get the protocol version (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove unused origin_is_hid_core function parameter (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove double assignment from __hidpp_send_report (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: do not make failure to get the name fatal (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: ignore very-short or empty names (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: make .probe usbhid capable (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: allow non HID++ devices to be handled by this module (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for Logitech Bluetooth Mini-Receiver (Benjamin Tissoires) [1740778] - [hid] logitech-dj: make appending of the HID++ descriptors conditional (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove false-positive error on double queueing of delayed-work (Benjamin Tissoires) [1740778] - [hid] logitech-dj: pick a better name for non-unifying receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: deal with some KVMs adding an extra interface to the usbdev (Benjamin Tissoires) [1740778] - [hid] logitech-dj: replace dev_err calls with hid_err calls (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for 27 MHz mouse-only receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for 27 MHz receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for the gaming unifying receiver (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for non unifying receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add logi_dj_recv_queue_unknown_work helper (Benjamin Tissoires) [1740778] - [hid] logitech-dj: support sharing struct dj_receiver_dev between USB-interfaces (Benjamin Tissoires) [1740778] - [hid] logitech-dj: rename dj_receiver_dev.hdev to dj_receiver_dev.hidpp (Benjamin Tissoires) [1740778] - [hid] logitech-dj: protect the paired_dj_devices access in add_djhid_dev with the lock (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove unused querying_devices variable (Benjamin Tissoires) [1740778] - [hid] logitech-dj: do not schedule the dj report itself (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove USB dependency (Benjamin Tissoires) [1740778] - [hid] logitech-dj: declare and use a few HID++ 1.0 constants (Benjamin Tissoires) [1740778] - [hid] logitech-dj: use BIT() macro for RF Report types (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix variable naming in logi_dj_hidpp_event (Benjamin Tissoires) [1740778] - [hid] logitech-dj: reshuffle logi_dj_recv_forward_* (Benjamin Tissoires) [1740778] - [hid] logitech: Stop setting drvdata to NULL on probe failure and remove (Benjamin Tissoires) [1740778] - [hid] quirks: do not blacklist Logitech devices (Benjamin Tissoires) [1740778] - [hid] u2fzero: fail probe if not using USB transport (Benjamin Tissoires) [1740778] - [hid] u2fzero: fix compiling error in u2fzero_probe() (Benjamin Tissoires) [1740778] - [hid] revert "hid: i2c-hid: Disable runtime PM on Synaptics touchpad" (Benjamin Tissoires) [1740778] - [hid] add driver for U2F Zero built-in LED and RNG (Benjamin Tissoires) [1740778] - [hid] core: Do not call request_module() in async context (Benjamin Tissoires) [1740778] - [hid] macally: Add support for Macally ikey keyboard (Benjamin Tissoires) [1740778] - [hid] core: Call request_module before doing device_add (Benjamin Tissoires) [1740778] - [hid] core: move Usage Page concatenation to Main item (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: change low battery level threshold from 31 to 30 percent (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove hidpp_is_connected() (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: simplify printing of HID++ version (Benjamin Tissoires) [1740778] - [hid] picolcd: Convert to use sysfs_streq() (Benjamin Tissoires) [1740778] - [hid] hid-sensor-custom: simplify getting .driver_data (Benjamin Tissoires) [1740778] - [hid] input: add mapping for Assistant key (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM on Synaptics touchpad (Benjamin Tissoires) [1740778] - [hid] quirks: Fix keyboard + touchpad on Lenovo Miix 630 (Benjamin Tissoires) [1740778] - [hid] input: add mapping for "Toggle Display" key (Benjamin Tissoires) [1740778] - [hid] input: add mapping for "Full Screen" key (Benjamin Tissoires) [1740778] - [hid] input: add mapping for keyboard Brightness Up/Down/Toggle keys (Benjamin Tissoires) [1740778] - [hid] input: add mapping for Expose/Overview key (Benjamin Tissoires) [1740778] - [hid] input: fix mapping of aspect ratio key (Benjamin Tissoires) [1740778] - [hid] logitech: Handle 0 scroll events for the m560 (Benjamin Tissoires) [1740778] - [hid] debug: fix race condition with between rdesc_show() and device removal (Benjamin Tissoires) [1740778] - [hid] logitech: check the return value of create_singlethread_workqueue (Benjamin Tissoires) [1740778] - [hid] steam: fix deadlock with input devices (Benjamin Tissoires) [1740778] - [hid] uclogic: remove redudant duplicated null check on ver_ptr (Benjamin Tissoires) [1740778] - [hid] quirks: Drop misused kernel-doc annotation (Benjamin Tissoires) [1740778] - [hid] quirks: use correct format chars in dbg_hid (Benjamin Tissoires) [1740778] - [hid] Remove Waltop tablets from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] Remove KYE tablets from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] Remove hid-uclogic entries from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] uclogic: Do not initialize non-USB devices (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee G5 (Benjamin Tissoires) [1740778] - [hid] uclogic: Support Gray-coded rotary encoders (Benjamin Tissoires) [1740778] - [hid] uclogic: Support faking Wacom pad device ID (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Deco 01 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Star G640 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Star G540 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee EX07S frame controls (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee M540 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee 2150 (Benjamin Tissoires) [1740778] - [hid] uclogic: Support v2 protocol (Benjamin Tissoires) [1740778] - [hid] uclogic: Support fragmented high-res reports (Benjamin Tissoires) [1740778] - [hid] uclogic: Support in-range reporting emulation (Benjamin Tissoires) [1740778] - [hid] uclogic: Designate current protocol v1 (Benjamin Tissoires) [1740778] - [hid] uclogic: Re-initialize tablets on resume (Benjamin Tissoires) [1740778] - [hid] uclogic: Extract tablet parameter discovery into a module (Benjamin Tissoires) [1740778] - [hid] uclogic: Extract report descriptors to a module (Benjamin Tissoires) [1740778] - [hid] Clarify vendor ID reuse by Ugee tablets (Benjamin Tissoires) [1740778] - [hid] viewsonic: Support PD1011 signature pad (Benjamin Tissoires) [1740778] - [hid] kye: Add support for EasyPen M406XE (Benjamin Tissoires) [1740778] - [hid] wacom: Add support for Pro Pen slim (Benjamin Tissoires) [1740778] - [hid] roccat: Mark expected switch fall-through (Benjamin Tissoires) [1740778] - [hid] wacom: Mark expected switch fall-through (Benjamin Tissoires) [1740778] - [hid] fix Logitech WingMan Formula GP joined axes (Benjamin Tissoires) [1740778] - [hid] multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons (Benjamin Tissoires) [1740778] - [hid] steam: fix boot loop with bluetooth firmware (Benjamin Tissoires) [1740778] - [hid] Add ASUS T100CHI keyboard dock battery quirks (Benjamin Tissoires) [1740778] - [hid] Add support for Toshiba WT10A tablet bluetooth keyboard (Benjamin Tissoires) [1740778] - [hid] wacom: Move HID fix for AES serial number into wacom_hid_usage_quirk (Benjamin Tissoires) [1740778] - [hid] elan: Make array buf static, shrinks object size (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Ignore input report if there's no data present on Elan touchpanels (Benjamin Tissoires) [1740778] - [hid] core: simplify active collection tracking (Benjamin Tissoires) [1740778] - [hid] Support for Maltron L90 keyboard media keys (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM on Goodix touchpad (Benjamin Tissoires) [1740778] - [hid] sony: Fix SHANWAN PS3 GamePad rumble and led settings support (Benjamin Tissoires) [1740778] - [hid] sony: Transform one-time SHANWAN check into quirk (Benjamin Tissoires) [1740778] - [hid] core: replace the collection tree pointers with indices (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add Odys Winbook 13 to descriptor override (Benjamin Tissoires) [1740778] - [hid] lenovo: Add checks to fix of_led_classdev_register (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: add MSI interrupt support (Benjamin Tissoires) [1740778] - [hid] debug: Change to use DEFINE_SHOW_ATTRIBUTE macro (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: fixes incorrect error handling (Benjamin Tissoires) [1740778] - [hid] logitech: Use LDJ_DEVICE macro for existing Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Enable high-resolution scrolling on Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Add function to enable HID++ 1.0 "scrolling acceleration" (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: fix typo, hiddpp to hidpp (Benjamin Tissoires) [1740778] - [hid] input: use the Resolution Multiplier for high-resolution scrolling (Benjamin Tissoires) [1740778] - [hid] core: process the Resolution Multiplier (Benjamin Tissoires) [1740778] - [hid] core: store the collections as a basic tree (Benjamin Tissoires) [1740778] - [hid] cougar: Add support for Cougar 700K Gaming Keyboard (Benjamin Tissoires) [1740778] - [hid] hidraw: enforce minors_lock locking via lockdep (Benjamin Tissoires) [1740778] - [hid] quirks: fix RetroUSB.com devices (Benjamin Tissoires) [1740778] - [kernel] hid: input: support Microsoft wireless radio control hotkey (Benjamin Tissoires) [1740778] - [kernel] hid: use macros in IS_INPUT_APPLICATION (Benjamin Tissoires) [1740778] - [hid] ite: Add USB id match for another ITE based keyboard rfkill key quirk (Benjamin Tissoires) [1740778] - [hid] revert "hid: input: Create a utility class for counting scroll events" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Add function to enable HID++ 1.0 "scrolling acceleration"" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Enable high-resolution scrolling on Logitech mice" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Use LDJ_DEVICE macro for existing Logitech mice" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: fix a used uninitialized GCC warning" (Benjamin Tissoires) [1740778] - [hid] revert "hid: input: simplify/fix high-res scroll event handling" (Benjamin Tissoires) [1740778] - [hid] Add quirk for Primax PIXART OEM mice (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM for LG touchscreen (Benjamin Tissoires) [1740778] - [hid] steam: remove input device when a hid client is running (Benjamin Tissoires) [1740778] - [hid] revert "hid: uhid: use strlcpy() instead of strncpy()" (Benjamin Tissoires) [1740778] - [hid] uhid: forbid UHID_CREATE under KERNEL_DS or elevated privileges (Benjamin Tissoires) [1740778] - [hid] iio/hid-sensors: Fix IIO_CHAN_INFO_RAW returning wrong values for signed numbers (Benjamin Tissoires) [1740778] - [hid] input: Ignore battery reported by Symbol DS4308 (Benjamin Tissoires) [1740778] - [hid] Add quirk for Microsoft PIXART OEM mouse (Benjamin Tissoires) [1740778] - [kernel] hid: fix up .raw_event() documentation (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add Direkt-Tek DTLAPY133-1 to descriptor override (Benjamin Tissoires) [1740778] - [hid] input: simplify/fix high-res scroll event handling (Benjamin Tissoires) [1740778] - [hid] we do not randomly make new drivers 'default y' (Benjamin Tissoires) [1740778] - [hid] i2c-hid: properly terminate i2c_hid_dmi_desc_override_table[] array (Benjamin Tissoires) [1740778] - [hid] alps: allow incoming reports when only the trackstick is opened (Benjamin Tissoires) [1740778] - [hid] revert "hid: add NOGET quirk for Eaton Ellipse MAX UPS" (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add a small delay after sleep command for Raydium touchpanel (Benjamin Tissoires) [1740778] - [hid] usbhid: Add quirk for Redragon/Dragonrise Seymur 2 (Benjamin Tissoires) [1740778] - [hid] wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452 (Benjamin Tissoires) [1740778] - [hid] google: add dependency on Cros EC for Hammer (Benjamin Tissoires) [1740778] - [hid] elan: fix spelling mistake "registred" -> "registered" (Benjamin Tissoires) [1740778] - [hid] google: drop superfluous const before SIMPLE_DEV_PM_OPS() (Benjamin Tissoires) [1740778] - [hid] google: add support tablet mode switch for Whiskers (Benjamin Tissoires) [1740778] - [hid] magicmouse: add support for Apple Magic Trackpad 2 (Benjamin Tissoires) [1740778] - [hid] i2c-hid: override HID descriptors for certain devices (Benjamin Tissoires) [1740778] - [hid] hid-bigbenff: driver for BigBen Interactive PS3OFMINIPAD gamepad (Benjamin Tissoires) [1740778] - [hid] logitech: fix a used uninitialized GCC warning (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: using list_head for ipc write queue (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: use resource-managed api (Benjamin Tissoires) [1740778] - [hid] intel_ish-hid: Enhance API to get ring buffer sizes (Benjamin Tissoires) [1740778] - [hid] input: Set INPUT_PROP_-property for HID_UP_DIGITIZERS (Benjamin Tissoires) [1740778] - [hid] microsoft: the driver now neeed MEMLESS_FF infrastructure (Benjamin Tissoires) [1740778] - [hid] cougar: Stop processing vendor events on hid-core (Benjamin Tissoires) [1740778] - [hid] cougar: Make parameter 'g6_is_space' dinamically settable (Benjamin Tissoires) [1740778] - [hid] microsoft: Add rumble support for Xbox One S controller (Benjamin Tissoires) [1740778] - [hid] microsoft: Convert private data to be a proper struct (Benjamin Tissoires) [1740778] - [hid] logitech: Use LDJ_DEVICE macro for existing Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Enable high-resolution scrolling on Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Add function to enable HID++ 1.0 "scrolling acceleration" (Benjamin Tissoires) [1740778] - [hid] input: Create a utility class for counting scroll events (Benjamin Tissoires) [1740778] - [hid] multitouch: simplify the application retrieval (Benjamin Tissoires) [1740778] - [hid] input: do not append a suffix if the name already has it (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Remove RESEND_REPORT_DESCR quirk and its handling (Benjamin Tissoires) [1740778] - [hid] i2c-hid: disable runtime PM operations on hantick touchpad (Benjamin Tissoires) [1740778] - [hid] sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub report (Benjamin Tissoires) [1740778] - [hid] core: fix NULL pointer dereference (Benjamin Tissoires) [1740778] - [hid] hid-saitek: Add device ID for RAT 7 Contagion (Benjamin Tissoires) [1740778] - [hid] core: fix memory leak on probe (Benjamin Tissoires) [1740778] - [hid] add support for Apple Magic Keyboards (Benjamin Tissoires) [1740778] - [hid] intel_ish-hid: tx_buf memory leak on probe/remove (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: Prevent loading of driver on Mehlow (Benjamin Tissoires) [1740778] - [hid] cougar: Add support for the Cougar 500k Gaming Keyboard (Benjamin Tissoires) [1740778] - [hid] cougar: make compare_device_paths reusable (Benjamin Tissoires) [1740778] - [hid] multitouch: handle palm for touchscreens (Benjamin Tissoires) [1740778] - [hid] multitouch: touchscreens also use confidence reports (Benjamin Tissoires) [1740778] - [hid] multitouch: report MT_TOOL_PALM for non-confident touches (Benjamin Tissoires) [1740778] - [hid] microsoft: support the Surface Dial (Benjamin Tissoires) [1740778] - [hid] core: do not upper bound the collection stack (Benjamin Tissoires) [1740778] - [hid] input: enable Totem on the Dell Canvas 27 (Benjamin Tissoires) [1740778] - [hid] multitouch: remove one copy of values (Benjamin Tissoires) [1740778] - [hid] multitouch: ditch mt_report_id (Benjamin Tissoires) [1740778] - [hid] multitouch: store a per application quirks value (Benjamin Tissoires) [1740778] - [hid] multitouch: Store per collection multitouch data (Benjamin Tissoires) [1740778] - [hid] multitouch: make sure the static list of class is not changed (Benjamin Tissoires) [1740778] - [hid] elan: Add support for touchpad on the Toshiba Click Mini L9W (Benjamin Tissoires) [1740778] - [hid] elan: Add USB-id for HP x2 10-n000nd touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Add a flag for selecting if the touchpad has a LED (Benjamin Tissoires) [1740778] - [hid] elan: Query resolution from the touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Query device max_x and max_y value from touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Hardcode finger-count and usb-interface (Benjamin Tissoires) [1740778] - [hid] elan: Correctly report MT_PRESSURE instead of TOOL_WIDTH (Benjamin Tissoires) [1740778] - [hid] elan: Stop claiming we have TOUCH_MAJOR and then never reporting it (Benjamin Tissoires) [1740778] - [hid] elan: Remove unused max_area_x and max_area_y vatiables (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sc->output_report_dmabuf (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_battery_probe() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_leds_init() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_register_sensors() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_register_touchpad() (Benjamin Tissoires) [1740778] - [hid] wacom: convert Wacom custom usages to standard HID usages (Benjamin Tissoires) [1740778] - [hid] wacom: Move handling of HID quirks into a dedicated function (Benjamin Tissoires) [1740778] - [hid] wacom: Replace touch_max fixup code with static touch_max definitions (Benjamin Tissoires) [1740778] - [hid] wiimote: add support for Guitar-Hero devices (Benjamin Tissoires) [1740778] - [hid] usbhid: use irqsave() in USB's complete callback (Benjamin Tissoires) [1740778] - [hid] redragon: fix num lock and caps lock LEDs (Benjamin Tissoires) [1740778] - [hid] hid-ntrig: add error handling for sysfs_create_group (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add vddl regulator control (Benjamin Tissoires) [1740778] - [uapi] input: document meanings of KEY_SCREEN and KEY_ZOOM (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - avoid processing unknown IRQs (Benjamin Tissoires) [1740778] - [input] revert "input: elantech - enable SMBus on new (2018+) systems" (Benjamin Tissoires) [1740778] - [input] elantech - annotate fall-through case in elantech_use_host_notify() (Benjamin Tissoires) [1740778] - [samples] treewide: Add SPDX license identifier - Makefile/Kconfig (Benjamin Tissoires) [1740778] - [kernel] input: elan_i2c - remove Lenovo Legion Y7000 PnpID (Benjamin Tissoires) [1740778] - [input] synaptics - enable RMI mode for HP Spectre X360 (Benjamin Tissoires) [1740778] - [input] elantech - enable SMBus on new (2018+) systems (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard: Use in-place iterator API in the channel callback (Benjamin Tissoires) [1740778] - [input] usbtouchscreen - initialize PM mutex before using it (Benjamin Tissoires) [1740778] - [input] alps - fix a mismatch between a condition check and its comment (Benjamin Tissoires) [1740778] - [input] psmouse - fix build error of multiple definition (Benjamin Tissoires) [1740778] - [input] alps - don't handle ALPS cs19 trackpoint-only device (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard - remove dependencies on PAGE_SIZE for ring buffer (Benjamin Tissoires) [1740778] - [input] synaptics - fix misuse of strlcpy (Benjamin Tissoires) [1740778] - [input] synaptics - whitelist Lenovo T580 SMBus intertouch (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBUS on T480 thinkpad trackpad (Benjamin Tissoires) [1740778] - [input] joydev - extend absolute mouse detection (Benjamin Tissoires) [1740778] - [kernel] input: elan_i2c - export the device id whitelist (Benjamin Tissoires) [1740778] - [kernel] pm: suspend: Rename pm_suspend_via_s2idle() (Benjamin Tissoires) [1740778] - [kernel] pm: sleep: Add kerneldoc comments to some functions (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus on ThinkPad E480 and E580 (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - remove set but not used variable 'sensor_flags' (Benjamin Tissoires) [1740778] - [input] uinput - add compat ioctl number translation for UI_*_FF_UPLOAD (Benjamin Tissoires) [1740778] - [input] libps2 - mark expected switch fall-through (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - write config register values to the right offset (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fix enum_fmt (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fill initial format (Benjamin Tissoires) [1740778] - [uapi] input: add KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fix possible double free (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard - add module description (Benjamin Tissoires) [1740778] - [input] i8042 - signal wakeup from atkbd/psmouse (Benjamin Tissoires) [1740778] - [input] evdev - use struct_size() in kzalloc() and vzalloc() (Benjamin Tissoires) [1740778] - [input] elan_i2c - add hardware ID for multiple Lenovo laptops (Benjamin Tissoires) [1740778] - [input] wacom_serial4 - add support for Wacom ArtPad II tablet (Benjamin Tissoires) [1740778] - [input] elan_i2c - add id for touchpad found in Lenovo s21e-20 (Benjamin Tissoires) [1740778] - [input] i8042 - rework DT node name comparisons (Benjamin Tissoires) [1740778] - [input] synaptics_i2c - remove redundant spinlock (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for touchpad in Lenovo V330-15ISK (Benjamin Tissoires) [1740778] - [input] revert "input: elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G" (Benjamin Tissoires) [1740778] - [input] elantech - enable 3rd button support on Fujitsu CELSIUS H780 (Benjamin Tissoires) [1740778] - [uapi] input: input_event - fix the CONFIG_SPARC64 mixup (Benjamin Tissoires) [1740778] - [input] uinput - fix undefined behavior in uinput_validate_absinfo() (Benjamin Tissoires) [1740778] - [uapi] input: input_event - provide override for sparc64 (Benjamin Tissoires) [1740778] - [input] soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device (Benjamin Tissoires) [1740778] - [input] soc_button_array - add usage-page 0x01 usage-id 0xca mapping (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus for HP EliteBook 840 G4 (Benjamin Tissoires) [1740778] - [input] synaptics - enable RMI on ThinkPad T560 (Benjamin Tissoires) [1740778] - [documentation] input: add `REL_WHEEL_HI_RES` and `REL_HWHEEL_HI_RES` (Benjamin Tissoires) [1740778] - [uapi] input: restore EV_ABS ABS_RESERVED (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus for HP 15-ay000 (Benjamin Tissoires) [1740778] - [input] synaptics - add PNP ID for ThinkPad P50 to SMBus (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15ARR (Benjamin Tissoires) [1740778] - [input] elan_i2c - add support for ELAN0621 touchpad (Benjamin Tissoires) [1740778] - [documentation] revert "input: Add the `REL_WHEEL_HI_RES` event code" (Benjamin Tissoires) [1740778] - [input] atkbd - clean up indentation issue (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ELAN0620 to the ACPI table (Benjamin Tissoires) [1740778] - [input] synaptics - avoid using uninitialized variable when probing (Benjamin Tissoires) [1740778] - [input] xen-kbdfront - mark expected switch fall-through (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15IGM (Benjamin Tissoires) [1740778] - [input] of_touchscreen - add support for touchscreen-min-x|y (Benjamin Tissoires) [1740778] - [input] elants_i2c - use DMA safe i2c when possible (Benjamin Tissoires) [1740778] - [input] uinput - add a schedule point in uinput_inject_events() (Benjamin Tissoires) [1740778] - [input] evdev - add a schedule point in evdev_write() (Benjamin Tissoires) [1740778] - [input] mousedev - add a schedule point in mousedev_write() (Benjamin Tissoires) [1740778] - [uapi] input: reserve 2 events code because of HID (Benjamin Tissoires) [1740778] - [input] i8042 - enable keyboard wakeups by default when s2idle is used (Benjamin Tissoires) [1740778] - [input] uinput - allow for max == min during input_absinfo validation (Benjamin Tissoires) [1740778] - [input] atakbd - fix Atari CapsLock behaviour (Benjamin Tissoires) [1740778] - [input] atakbd - fix Atari keymap (Benjamin Tissoires) [1740778] - [documentation] input: Add the `REL_WHEEL_HI_RES` event code (Benjamin Tissoires) [1740778] - [input] mark expected switch fall-throughs (Benjamin Tissoires) [1740778] - [input] evdev - switch to bitmap API (Benjamin Tissoires) [1740778] - [input] elan_i2c_smbus - cast sizeof to int for comparison (Benjamin Tissoires) [1740778] - [uapi] input: stop telling users to snail-mail Vojtech (Benjamin Tissoires) [1740778] - [documentation] input: add MT_TOOL_DIAL (Benjamin Tissoires) [1740778] - [input] i8042 - increment wakeup_count for the respective port (Benjamin Tissoires) [1740778] - [input] xen-kbdfront - allow better run-time configuration (Benjamin Tissoires) [1740778] - [xen] Sync up with the canonical protocol definitions in Xen (Benjamin Tissoires) [1740778] - [cpufreq] dev_pm_qos_update_request() can return 1 on success (Al Stone) [1739729 1725581] - [cpufreq] Make cpufreq_generic_init() return void (Al Stone) [1739729 1725581] - [cpufreq] Add QoS requests for userspace constraints (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Reuse refresh_frequency_limits() (Al Stone) [1739729 1725581] - [cpufreq] Register notifiers with the PM QoS framework (Al Stone) [1739729 1725581] - [base] pm / qos: Add support for MIN/MAX frequency constraints (Al Stone) [1739729 1725581] - [base] pm / qos: Pass request type to dev_pm_qos_read_value() (Al Stone) [1739729 1725581] - [base] pm / qos: Rename __dev_pm_qos_read_value() and dev_pm_qos_raw_read_value() (Al Stone) [1739729 1725581] - [base] pm / qos: Pass request type to dev_pm_qos_{add|remove}_notifier() (Al Stone) [1739729 1725581] - [cpufreq] Avoid calling cpufreq_verify_current_freq() from handle_update() (Al Stone) [1739729 1725581] - [cpufreq] Consolidate cpufreq_update_current_freq() and __cpufreq_get() (Al Stone) [1739729 1725581] - [cpufreq] Don't skip frequency validation for has_target() drivers (Al Stone) [1739729 1725581] - [cpufreq] Use has_target() instead of !setpolicy (Al Stone) [1739729 1725581] - [cpufreq] Remove redundant !setpolicy check (Al Stone) [1739729 1725581] - [kernel] cpufreq: Move the IS_ENABLED(CPU_THERMAL) macro into a stub (Al Stone) [1739729 1725581] - [opp] Don't use IS_ERR on invalid supplies (Al Stone) [1739729 1725581] - [kernel] pm: sleep: Update struct wakeup_source documentation (Al Stone) [1739729 1725581] - [base] base: power: remove wakeup_sources_stats_dentry variable (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: Fail initialization if driver cannot be registered (Al Stone) [1739729 1725581] - [opp] Make dev_pm_opp_set_rate() handle freq = 0 to drop performance votes (Al Stone) [1739729 1725581] - [opp] Don't overwrite rounded clk rate (Al Stone) [1739729 1725581] - [base] pm: sleep: Show how long dpm_suspend_start() and dpm_suspend_end() take (Al Stone) [1739729 1725581] - [base] pm / clk: Remove error message on out-of-memory condition (Al Stone) [1739729 1725581] - [base] base: power: clock_ops: Use of_clk_get_parent_count() (Al Stone) [1739729 1725581] - [opp] Allocate genpd_virt_devs from dev_pm_opp_attach_genpd() (Al Stone) [1739729 1725581] - [opp] Attach genpds to devices from within OPP core (Al Stone) [1739729 1725581] - [base] pm / domains: Add GENPD_FLAG_RPM_ALWAYS_ON flag (Al Stone) [1739729 1725581] - [cpufreq] Don't find governor for setpolicy drivers in cpufreq_init_policy() (Al Stone) [1739729 1725581] - [cpufreq] Explain the kobject_put() in cpufreq_policy_alloc() (Al Stone) [1739729 1725581] - [x86] cpufreq: Call transition notifier only once for each policy (Al Stone) [1739729 1725581] - [cpufreq] Fix kobject memleak (Al Stone) [1739729 1725581] - [cpufreq] centrino: Fix centrino_setpolicy() kerneldoc comment (Al Stone) [1739729 1725581] - [base] pm / domains: Allow to attach a CPU via genpd_dev_pm_attach_by_id|name() (Al Stone) [1739729 1725581] - [base] pm / domains: Search for the CPU device outside the genpd lock (Al Stone) [1739729 1725581] - [base] pm / domains: Drop unused in-parameter to some genpd functions (Al Stone) [1739729 1725581] - [base] pm / domains: Use the base device for driver_deferred_probe_check_state() (Al Stone) [1739729 1725581] - [base] pm / domains: Enable genpd_dev_pm_attach_by_id|name() for single PM domain (Al Stone) [1739729 1725581] - [base] pm / domains: Allow OF lookup for multi PM domain case from ->attach_dev() (Al Stone) [1739729 1725581] - [base] pm / domains: Don't kfree() the virtual device in the error path (Al Stone) [1739729 1725581] - [cpufreq] Move ->get callback check outside of __cpufreq_get() (Al Stone) [1739729 1725581] - [x86] tsc: Rework time_cpufreq_notifier() (Al Stone) [1739729 1725581] - [x86] tsc: Fix UV TSC initialization (Al Stone) [1739729 1725581] - [x86] tsc: Prevent result truncation on 32bit (Al Stone) [1739729 1725581] - [x86] tsc: Consolidate init code (Al Stone) [1739729 1725581] - [x86] tsc: Make use of tsc_calibrate_cpu_early() (Al Stone) [1739729 1725581] - [x86] tsc: Split native_calibrate_cpu() into early and late parts (Al Stone) [1739729 1725581] - [x86] tsc: Use TSC as sched clock early (Al Stone) [1739729 1725581] - [x86] tsc: Initialize cyc2ns when tsc frequency is determined (Al Stone) [1739729 1725581] - [x86] tsc: Calibrate tsc only once (Al Stone) [1739729 1725581] - [x86] tsc: Redefine notsc to behave as tsc=unstable (Al Stone) [1739729 1725581] - [x86] platform/uv: Provide is_early_uv_system() (Al Stone) [1739729 1725581] - [base] pm / domains: remove unnecessary unlikely() (Al Stone) [1739729 1725581] - [cpufreq] Remove needless bios_limit check in show_bios_limit() (Al Stone) [1739729 1725581] - [cpufreq] cpufreq/acpi-cpufreq.c: This fixes the following checkpatch warning (Al Stone) [1739729 1725581] - [base] pm / core: Propagate dev->power.wakeup_path when no callbacks (Al Stone) [1739729 1725581] - [base] pm / domains: Add genpd governor for CPUs (Al Stone) [1739729 1725581] - [cpuidle] Export the next timer expiration for CPUs (Al Stone) [1739729 1725581] - [base] pm / core: Introduce dpm_async_fn() helper (Al Stone) [1739729 1725581] - [cpufreq] boost: Remove CONFIG_CPU_FREQ_BOOST_SW Kconfig option (Al Stone) [1739729 1725581] - [opp] Introduce dev_pm_opp_find_freq_ceil_by_volt() (Al Stone) [1739729 1725581] - [base] pm / domains: Add support for CPU devices to genpd (Al Stone) [1739729 1725581] - [base] pm / domains: Add generic data pointer to struct genpd_power_state (Al Stone) [1739729 1725581] - [cpufreq] rhel: cpufreq: switch printk users from pf and pF to ps and pS, respectively (Al Stone) [1739729 1725581] - [base] pm / core: fix kerneldoc comment for device_pm_wait_for_dev() (Al Stone) [1739729 1725581] - [base] pm / core: fix kerneldoc comment for dpm_watchdog_handler() (Al Stone) [1739729 1725581] - [cpufreq] stats: Use lock by stat to replace global spin lock (Al Stone) [1739729 1725581] - [cpufreq] Remove cpufreq_driver check in cpufreq_boost_supported() (Al Stone) [1739729 1725581] - [cpufreq] ppc_cbe: fix possible object reference leak (Al Stone) [1739729 1725581] - [cpufreq] cpufreq: Convert some slow-path static_cpu_has() callers to boot_cpu_has() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Update max frequency on global turbo changes (Al Stone) [1739729 1725581] - [base] pm / wakeup: Use pm_pr_dbg() instead of pr_debug() (Al Stone) [1739729 1725581] - [cpufreq] Add cpufreq_cpu_acquire() and cpufreq_cpu_release() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Driver-specific handling of _PPC updates (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Load only on Intel hardware (Al Stone) [1739729 1725581] - [cpufreq] scpi: Fix use after free (Al Stone) [1739729 1725581] - [base] pm / domains: Avoid a potential deadlock (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Fix up iowait_boost computation (Al Stone) [1739729 1725581] - [opp] pm / opp: Update performance state when freq == old_freq (Al Stone) [1739729 1725581] - [base] pm / wakeup: Drop wakeup_source_drop() (Al Stone) [1739729 1725581] - [base] pm / wakeup: Rework wakeup source timer cancellation (Al Stone) [1739729 1725581] - [base] pm / domains: Remove one unnecessary blank line (Al Stone) [1739729 1725581] - [base] pm / domains: Return early for all errors in _genpd_power_off() (Al Stone) [1739729 1725581] - [base] pm / domains: Improve warn for multiple states but no governor (Al Stone) [1739729 1725581] - [opp] Fix handling of multiple power domains (Al Stone) [1739729 1725581] - [base] pm / qos: Fix typo in file description (Al Stone) [1739729 1725581] - [base] pm-runtime: Call pm_runtime_active|suspended_time() from sysfs (Al Stone) [1739729 1725581] - [base] pm-runtime: Consolidate code to get active/suspended time (Al Stone) [1739729 1725581] - [base] pm: Add and use pr_fmt() (Al Stone) [1739729 1725581] - [cpufreq] Improve kerneldoc comments for cpufreq_cpu_get/put() (Al Stone) [1739729 1725581] - [cpufreq] acpi-cpufreq: Report if CPU doesn't support boost technologies (Al Stone) [1739729 1725581] - [base] driver core: Fix PM-runtime for links added during consumer probe (Al Stone) [1739729 1725581] - [cpufreq] Pass updated policy to driver ->setpolicy() callback (Al Stone) [1739729 1725581] - [cpufreq] Fix two debug messages in cpufreq_set_policy() (Al Stone) [1739729 1725581] - [cpufreq] Reorder and simplify cpufreq_update_policy() (Al Stone) [1739729 1725581] - [cpufreq] Add kerneldoc comments for two core functions (Al Stone) [1739729 1725581] - [cpufreq] scmi: Fix use-after-free in scmi_cpufreq_exit() (Al Stone) [1739729 1725581] - [kernel] pm / core: Add support to skip power management in device/driver model (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Rework iowait boosting to be less aggressive (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Eliminate intel_pstate_get_base_pstate() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Avoid redundant initialization of local vars (Al Stone) [1739729 1725581] - [cpufreq] cpufreq / cppc: Work around for Hisilicon CPPC cpufreq (Al Stone) [1739729 1725581] - [cpufreq] speedstep: convert BUG() to BUG_ON() (Al Stone) [1739729 1725581] - [cpufreq] powernv: fix missing check of return value in init_powernv_pstates() (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: remove unneeded semicolon (Al Stone) [1739729 1725581] - [kernel] pm / domains: Mark "name" const in dev_pm_domain_attach_by_name() (Al Stone) [1739729 1725581] - [kernel] pm / domains: Mark "name" const in genpd_dev_pm_attach_by_name() (Al Stone) [1739729 1725581] - [cpufreq] Replace double NOT (!!) with single NOT (!) (Al Stone) [1739729 1725581] - [base] pm / suspend: Print debug messages for device using direct-complete (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Add reasons for failure and debug messages (Al Stone) [1739729 1725581] - [base] driver core: Fix possible supplier PM-usage counter imbalance (Al Stone) [1739729 1725581] - [base] pm-runtime: Fix __pm_runtime_set_status() race with runtime resume (Al Stone) [1739729 1725581] - [cpufreq] dt: Implement online/offline() callbacks (Al Stone) [1739729 1725581] - [cpufreq] Allow light-weight tear down and bring up of CPUs (Al Stone) [1739729 1725581] - [base] pm-runtime: Take suppliers into account in __pm_runtime_set_status() (Al Stone) [1739729 1725581] - [opp] no need to check return value of debugfs_create functions (Al Stone) [1739729 1725581] - [cpufreq] scmi: Register an Energy Model (Al Stone) [1739729 1725581] - [opp] pm / opp: Introduce a power estimation helper (Al Stone) [1739729 1725581] - [opp] pm / opp: Remove unused parameter of _generic_set_opp_clk_only() (Al Stone) [1739729 1725581] - [cpufreq] scpi: Register an Energy Model (Al Stone) [1739729 1725581] - [cpufreq] dt: Register an Energy Model (Al Stone) [1739729 1725581] - [cpufreq] stats: Fix concurrency issues while resetting stats (Al Stone) [1739729 1725581] - [cpufreq] stats: Declare freq-attr right after their callbacks (Al Stone) [1739729 1725581] - [base] driver core: Do not call rpm_put_suppliers() in pm_runtime_drop_link() (Al Stone) [1739729 1725581] - [base] driver core: Fix handling of runtime PM flags in device_link_add() (Al Stone) [1739729 1725581] - [base] driver core: Do not resume suppliers under device_links_write_lock() (Al Stone) [1739729 1725581] - [base] driver core: Avoid careless re-use of existing device links (Al Stone) [1739729 1725581] - [base] driver core: Fix DL_FLAG_AUTOREMOVE_SUPPLIER device link flag handling (Al Stone) [1739729 1725581] - [base] driver core: Add flag to autoremove device link on supplier unbind (Al Stone) [1739729 1725581] - [base] driver core: Rename flag AUTOREMOVE to AUTOREMOVE_CONSUMER (Al Stone) [1739729 1725581] - [base] pm-runtime: update accounting_timestamp on enable (Al Stone) [1739729 1725581] - [cpufreq] scpi: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] scmi: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] cpufreq-dt: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] Auto-register the driver as a thermal cooling device if asked (Al Stone) [1739729 1725581] - [cpufreq] thermal: cpu_cooling: Require thermal core to be compiled in (Al Stone) [1739729 1725581] - [cpufreq] Use struct kobj_attribute instead of struct global_attr (Al Stone) [1739729 1725581] - [base] pm / wakeup: fix kerneldoc comment for pm_wakeup_dev_event() (Al Stone) [1739729 1725581] - [base] pm: domains: no need to check return value of debugfs_create functions (Al Stone) [1739729 1725581] - [opp] Add support for parsing the 'opp-level' property (Al Stone) [1739729 1725581] - [kernel] cpufreq: Replace open-coded << with BIT() (Al Stone) [1739729 1725581] - [base] pm: clock_ops: fix missing clk_prepare() return value check (Al Stone) [1739729 1725581] - [cpufreq] e_powersaver: Use struct_size() in kzalloc() (Al Stone) [1739729 1725581] - [cpufreq] Don't update new_policy on failures (Al Stone) [1739729 1725581] - [cpufreq] scmi: Fix frequency invariance in slow path (Al Stone) [1739729 1725581] - [cpufreq] check if policy is inactive early in __cpufreq_get() (Al Stone) [1739729 1725581] - [opp] cpufreq: scpi/scmi: Fix freeing of dynamic OPPs (Al Stone) [1739729 1725581] - [base] pm: sleep: call devfreq suspend/resume (Al Stone) [1739729 1725581] - [devfreq] pm / devfreq: add devfreq_suspend/resume() functions (Al Stone) [1739729 1725581] - [base] pm / domains: remove define_genpd_open_function() and define_genpd_debugfs_fops() (Al Stone) [1739729 1725581] - [base] pm / domains: Propagate performance state updates (Al Stone) [1739729 1725581] - [base] pm / domains: Factorize dev_pm_genpd_set_performance_state() (Al Stone) [1739729 1725581] - [base] pm / domains: Save OPP table pointer in genpd (Al Stone) [1739729 1725581] - [opp] Don't return 0 on error from of_get_required_opp_performance_state() (Al Stone) [1739729 1725581] - [opp] Add dev_pm_opp_xlate_performance_state() helper (Al Stone) [1739729 1725581] - [opp] Improve _find_table_of_opp_np() (Al Stone) [1739729 1725581] - [base] pm / domains: Make genpd performance states orthogonal to the idlestates (Al Stone) [1739729 1725581] - [opp] Fix missing debugfs supply directory for OPPs (Al Stone) [1739729 1725581] - [opp] Use opp_table->regulators to verify no regulator case (Al Stone) [1739729 1725581] - [base] pm: Switch to use ptR (Al Stone) [1739729 1725581] - [cpufreq] powernv: add of_node_put() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Force HWP min perf before offline (Al Stone) [1739729 1725581] - [cpufreq] cpufreq: change CONFIG_6xx to CONFIG_PPC_BOOK3S_32 (Al Stone) [1739729 1725581] - [opp] Fix parsing of multiple phandles in "operating-points-v2" property (Al Stone) [1739729 1725581] - [opp] Remove of_dev_pm_opp_find_required_opp() (Al Stone) [1739729 1725581] - [base] opp: Rename and relocate of_genpd_opp_to_performance_state() (Al Stone) [1739729 1725581] - [opp] Configure all required OPPs (Al Stone) [1739729 1725581] - [opp] Add dev_pm_opp_{set|put}_genpd_virt_dev() helper (Al Stone) [1739729 1725581] - [base] pm / domains: Add genpd_opp_to_performance_state() (Al Stone) [1739729 1725581] - [opp] Populate OPPs from "required-opps" property (Al Stone) [1739729 1725581] - [opp] Populate required opp tables from "required-opps" property (Al Stone) [1739729 1725581] - [opp] Separate out custom OPP handler specific code (Al Stone) [1739729 1725581] - [opp] Identify and mark genpd OPP tables (Al Stone) [1739729 1725581] - [base] pm / domains: Rename genpd virtual devices as virt_dev (Al Stone) [1739729 1725581] - [cpufreq] remove unused arm_big_little_dt driver (Al Stone) [1739729 1725581] - [cpufreq] drop ARM_BIG_LITTLE_CPUFREQ support for ARM64 (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Fix compilation for !CONFIG_ACPI (Al Stone) [1739729 1725581] - [base] pm / domains: Deal with multiple states but no governor in genpd (Al Stone) [1739729 1725581] - [base] pm / domains: Don't treat zero found compatible idle states as an error (Al Stone) [1739729 1725581] - [cpufreq] conservative: Take limits changes into account properly (Al Stone) [1739729 1725581] - [opp] pm / opp: _of_add_opp_table_v2(): increment count only if OPP is added (Al Stone) [1739729 1725581] - [cpufreq] dt: Try freeing static OPPs only if we have added them (Al Stone) [1739729 1725581] - [opp] Return error on error from dev_pm_opp_get_opp_count() (Al Stone) [1739729 1725581] - [opp] Improve error handling in dev_pm_opp_of_cpumask_add_table() (Al Stone) [1739729 1725581] - [cpufreq] cpufreq / cppc: Mark acpi_ids as used (Al Stone) [1739729 1725581] - [opp] Pass OPP table to _of_add_opp_table_v{1|2}() (Al Stone) [1739729 1725581] - [opp] Prevent creating multiple OPP tables for devices sharing OPP nodes (Al Stone) [1739729 1725581] - [opp] Use a single mechanism to free the OPP table (Al Stone) [1739729 1725581] - [opp] Don't remove dynamic OPPs from _dev_pm_opp_remove_table() (Al Stone) [1739729 1725581] - [opp] Create separate kref for static OPPs list (Al Stone) [1739729 1725581] - [opp] Don't take OPP table's kref for static OPPs (Al Stone) [1739729 1725581] - [opp] Parse OPP table's DT properties from _of_init_opp_table() (Al Stone) [1739729 1725581] - [opp] Pass index to _of_init_opp_table() (Al Stone) [1739729 1725581] - [opp] Protect dev_list with opp_table lock (Al Stone) [1739729 1725581] - [opp] Don't try to remove all OPP tables on failure (Al Stone) [1739729 1725581] - [opp] Free OPP table properly on performance state irregularities (Al Stone) [1739729 1725581] - [cpufreq] Convert to using pOFn instead of device_node.name (Al Stone) [1739729 1725581] - [cpufreq] remove unnecessary unlikely() (Al Stone) [1739729 1725581] - [base] pm / clk: signedness bug in of_pm_clk_add_clks() (Al Stone) [1739729 1725581] - [trace] cpufreq: trace frequency limits change (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: Disable dynamic scaling on many-CPU systems (Al Stone) [1739729 1725581] - [base] pm / domains: Stop deferring probe at the end of initcall (Al Stone) [1739729 1725581] - [base] driver: core: Allow subsystems to continue deferring probe (Al Stone) [1739729 1725581] - [base] driver core: allow stopping deferred probe after init (Al Stone) [1739729 1725581] - [base] driver core: add a debugfs entry to show deferred devices (Al Stone) [1739729 1725581] - [base] pm / domains: Introduce dev_pm_domain_attach_by_name() (Al Stone) [1739729 1725581] - [base] pm / domains: Introduce option to attach a device by name to genpd (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: use match_string() helper (Al Stone) [1739729 1725581] - [fs] ceph: use ceph_evict_inode to cleanup inode's resource (Jeff Layton) [1767959] - [fs] ceph: return -EINVAL if given fsc mount option on kernel w/o support (Jeff Layton) [1767959] - [fs] ceph: don't try to handle hashed dentries in non-O_CREAT atomic_open (Jeff Layton) [1767959] - [fs] ceph: add missing check in d_revalidate snapdir handling (Jeff Layton) [1767959] - [fs] ceph: fix RCU case handling in ceph_d_revalidate() (Jeff Layton) [1767959] - [fs] ceph: fix use-after-free in __ceph_remove_cap() (Jeff Layton) [1767959] - [block] rbd: cancel lock_dwork if the wait is interrupted (Jeff Layton) [1767959] - [fs] ceph: just skip unrecognized info in ceph_reply_info_extra (Jeff Layton) [1767959] - [fs] ceph: call ceph_mdsc_destroy from destroy_fs_client (Jeff Layton) [1767959] - [net] libceph: use ceph_kvmalloc() for osdmap arrays (Jeff Layton) [1767959] - [net] libceph: avoid a __vmalloc() deadlock in ceph_kvmalloc() (Jeff Layton) [1767959] - [fs] ceph: include ceph_debug.h in cache.c (Jeff Layton) [1767959] - [fs] ceph: move static keyword to the front of declarations (Jeff Layton) [1767959] - [block] rbd: pull rbd_img_request_create() dout out into the callers (Jeff Layton) [1767959] - [fs] ceph: reconnect connection if session hang in opening state (Jeff Layton) [1767959] - [net] libceph: drop unused con parameter of calc_target() (Jeff Layton) [1767959] - [fs] ceph: use release_pages() directly (Jeff Layton) [1767959] - [block] rbd: fix response length parameter for encoded strings (Jeff Layton) [1767959] - [fs] ceph: allow arbitrary security.* xattrs (Jeff Layton) [1767959] - [fs] ceph: only set CEPH_I_SEC_INITED if we got a MAC label (Jeff Layton) [1767959] - [fs] ceph: turn ceph_security_invalidate_secctx into static inline (Jeff Layton) [1767959] - [fs] ceph: add buffered/direct exclusionary locking for reads and writes (Jeff Layton) [1767959] - [net] libceph: handle OSD op ceph_pagelist_append() errors (Jeff Layton) [1767959] - [fs] ceph: don't return a value from void function (Jeff Layton) [1767959] - [fs] ceph: don't freeze during write page faults (Jeff Layton) [1767959] - [fs] ceph: update the mtime when truncating up (Jeff Layton) [1767959] - [fs] ceph: fix indentation in __get_snap_name() (Jeff Layton) [1767959] - [fs] ceph: remove incorrect comment above __send_cap (Jeff Layton) [1767959] - [fs] ceph: remove CEPH_I_NOFLUSH (Jeff Layton) [1767959] - [fs] ceph: remove unneeded test in try_flush_caps (Jeff Layton) [1767959] - [fs] ceph: have __mark_caps_flushing return flush_tid (Jeff Layton) [1767959] - [fs] ceph: fix comments over ceph_add_cap (Jeff Layton) [1767959] - [fs] ceph: eliminate session->s_trim_caps (Jeff Layton) [1767959] - [fs] ceph: fetch cap_gen under spinlock in ceph_add_cap (Jeff Layton) [1767959] - [fs] ceph: remove ceph_get_cap_mds and __ceph_get_cap_mds (Jeff Layton) [1767959] - [fs] ceph: don't SetPageError on writepage errors (Jeff Layton) [1767959] - [fs] ceph: auto reconnect after blacklisted (Jeff Layton) [1767959] - [fs] ceph: invalidate all write mode filp after reconnect (Jeff Layton) [1767959] - [fs] ceph: return -EIO if read/write against filp that lost file locks (Jeff Layton) [1767959] - [fs] ceph: add helper function that forcibly reconnects to ceph cluster (Jeff Layton) [1767959] - [fs] ceph: pass filp to ceph_get_caps() (Jeff Layton) [1767959] - [fs] ceph: track and report error of async metadata operation (Jeff Layton) [1767959] - [fs] ceph: allow closing session in restarting/reconnect state (Jeff Layton) [1767959] - [net] libceph: add function that clears osd client's abort_err (Jeff Layton) [1767959] - [net] libceph: add function that reset client's entity addr (Jeff Layton) [1767959] - [fs] ceph: don't list vxattrs in listxattr() (Jeff Layton) [1767959] - [fs] ceph: fix directories inode i_blkbits initialization (Jeff Layton) [1767959] - [block] rbd: restore zeroing past the overlap when reading from parent (Jeff Layton) [1767959] - [net] libceph: don't call crypto_free_sync_skcipher() on a NULL tfm (Jeff Layton) [1767959] - [net] libceph: fix PG split vs OSD (re)connect race (Jeff Layton) [1767959] - [fs] ceph: don't try fill file_lock on unsuccessful GETFILELOCK reply (Jeff Layton) [1767959] - [fs] ceph: clear page dirty before invalidate page (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in fill_inode() (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in __ceph_build_xattrs_blob() (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in __ceph_setxattr() (Jeff Layton) [1767959] - [kernel] libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer (Jeff Layton) [1767959] - [fs] ceph: fix end offset in truncate_inode_pages_range call (Jeff Layton) [1767959] - [fs] ceph: initialize superblock s_time_gran to 1 (Jeff Layton) [1767959] - [block] rbd: setallochint only if object doesn't exist (Jeff Layton) [1767959] - [block] rbd: support for object-map and fast-diff (Jeff Layton) [1767959] - [block] rbd: call rbd_dev_mapping_set() from rbd_dev_image_probe() (Jeff Layton) [1767959] - [net] libceph: export osd_req_op_data() macro (Jeff Layton) [1767959] - [net] libceph: change ceph_osdc_call() to take page vector for response (Jeff Layton) [1767959] - [kernel] libceph: bump CEPH_MSG_MAX_DATA_LEN (again) (Jeff Layton) [1767959] - [block] rbd: new exclusive lock wait/wake code (Jeff Layton) [1767959] - [block] rbd: quiescing lock should wait for image requests (Jeff Layton) [1767959] - [block] rbd: lock should be quiesced on reacquire (Jeff Layton) [1767959] - [block] rbd: introduce copyup state machine (Jeff Layton) [1767959] - [block] rbd: rename rbd_obj_setup_*() to rbd_obj_init_*() (Jeff Layton) [1767959] - [block] rbd: move OSD request allocation into object request state machines (Jeff Layton) [1767959] - [block] rbd: factor out __rbd_osd_setup_discard_ops() (Jeff Layton) [1767959] - [block] rbd: factor out rbd_osd_setup_copyup() (Jeff Layton) [1767959] - [block] rbd: introduce obj_req->osd_reqs list (Jeff Layton) [1767959] - [fs] libceph: rename r_unsafe_item to r_private_item (Jeff Layton) [1767959] - [block] rbd: introduce image request state machine (Jeff Layton) [1767959] - [block] rbd: move OSD request submission into object request state machines (Jeff Layton) [1767959] - [block] rbd: get rid of RBD_OBJ_WRITE_{FLAT, GUARD} (Jeff Layton) [1767959] - [block] rbd: replace obj_req->tried_parent with obj_req->read_state (Jeff Layton) [1767959] - [block] rbd: get rid of obj_req->xferred, obj_req->result and img_req->xferred (Jeff Layton) [1767959] - [fs] ceph: don't NULL terminate virtual xattrs (Jeff Layton) [1767959] - [fs] ceph: return -ERANGE if virtual xattr value didn't fit in buffer (Jeff Layton) [1767959] - [fs] ceph: make getxattr_cb return ssize_t (Jeff Layton) [1767959] - [fs] ceph: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (Jeff Layton) [1767959] - [fs] ceph: kick flushing and flush snaps before sending normal cap message (Jeff Layton) [1767959] - [fs] ceph: clear CEPH_I_KICK_FLUSH flag inside __kick_flushing_caps() (Jeff Layton) [1767959] - [fs] ceph: increment change_attribute on local changes (Jeff Layton) [1767959] - [fs] ceph: handle change_attr in cap messages (Jeff Layton) [1767959] - [fs] ceph: add change_attr field to ceph_inode_info (Jeff Layton) [1767959] - [kernel] iversion: add a routine to update a raw value with a larger one (Jeff Layton) [1767959] - [fs] ceph: allow querying of STATX_BTIME in ceph_getattr (Jeff Layton) [1767959] - [kernel] libceph: turn on CEPH_FEATURE_MSG_ADDR2 (Jeff Layton) [1767959] - [fs] ceph: handle btime in cap messages (Jeff Layton) [1767959] - [fs] ceph: add btime field to ceph_inode_info (Jeff Layton) [1767959] - [net] libceph: rename ceph_encode_addr to ceph_encode_banner_addr (Jeff Layton) [1767959] - [net] libceph: use TYPE_LEGACY for entity addrs instead of TYPE_NONE (Jeff Layton) [1767959] - [net] ceph: fix decode_locker to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [fs] ceph: have MDS map decoding use entity_addr_t decoder (Jeff Layton) [1767959] - [net] libceph: correctly decode ADDR2 addresses in incremental OSD maps (Jeff Layton) [1767959] - [net] libceph: fix watch_item_t decoding to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: switch osdmap decoding to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: ADDR2 support for monmap (Jeff Layton) [1767959] - [net] libceph: add ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: fix sa_family just after reading address (Jeff Layton) [1767959] - [fs] ceph: remove request from waiting list before unregister (Jeff Layton) [1767959] - [fs] ceph: don't blindly unregister session that is in opening state (Jeff Layton) [1767959] - [fs] ceph: fix infinite loop in get_quota_realm() (Jeff Layton) [1767959] - [fs] ceph: add selinux support (Jeff Layton) [1767959] - [fs] ceph: rename struct ceph_acls_info to ceph_acl_sec_ctx (Jeff Layton) [1767959] - [fs] ceph: fix debug print format in __set_xattr() (Jeff Layton) [1767959] - [fs] ceph: fix warning PTR_ERR_OR_ZERO can be used (Jeff Layton) [1767959] - [fs] ceph: hold i_ceph_lock when removing caps for freeing inode (Jeff Layton) [1767959] - [fs] ceph: ensure d_name/d_parent stability in ceph_mdsc_lease_send_msg() (Jeff Layton) [1767959] - [fs] ceph: use READ_ONCE to access d_parent in RCU critical section (Jeff Layton) [1767959] - [fs] ceph: fix dir_lease_is_valid() (Jeff Layton) [1767959] - [fs] ceph: close race between d_name_cmp() and update_dentry_lease() (Jeff Layton) [1767959] - [fs] ceph: fix improper use of smp_mb__before_atomic() (Jeff Layton) [1767959] - [fs] ceph: fix "ceph.dir.rctime" vxattr value (Jeff Layton) [1767959] - [fs] ceph: remove unused vxattr length helpers (Jeff Layton) [1767959] - [fs] ceph: fix listxattr vxattr buffer length calculation (Jeff Layton) [1767959] - [fs] ceph: add ceph.snap.btime vxattr (Jeff Layton) [1767959] - [fs] ceph: carry snapshot creation time with inodes (Jeff Layton) [1767959] - [fs] ceph: clean up ceph.dir.pin vxattr name sizeof() (Jeff Layton) [1767959] - [fs] ceph: silence a checker warning in mdsc_show() (Jeff Layton) [1767959] - [net] libceph: remove ceph_get_direct_page_vector() (Jeff Layton) [1767959] - [fs] ceph: don't open-code the check for dead lockref (Jeff Layton) [1767959] - [net] ceph: no need to check return value of debugfs_create functions (Jeff Layton) [1767959] - [fs] ceph: fix ceph_mdsc_build_path to not stop on first component (Jeff Layton) [1767959] - [fs] ceph: fix error handling in ceph_get_caps() (Jeff Layton) [1767959] - [fs] ceph: avoid iput_final() while holding mutex or in dispatch thread (Jeff Layton) [1767959] - [fs] ceph: single workqueue for inode related works (Jeff Layton) [1767959] - [fs] ceph: flush dirty inodes before proceeding with remount (Jeff Layton) [1767959] - [fs] ceph: fix unaligned access in ceph_send_cap_releases (Jeff Layton) [1767959] - [net] libceph: make ceph_pr_addr take an struct ceph_entity_addr pointer (Jeff Layton) [1767959] - [net] libceph: fix unaligned accesses in ceph_entity_addr handling (Jeff Layton) [1767959] - [block] rbd: don't assert on writes to snapshots (Jeff Layton) [1767959] - [block] rbd: client_mutex is never nested (Jeff Layton) [1767959] - [fs] ceph: print inode number in __caps_issued_mask debugging messages (Jeff Layton) [1767959] - [fs] ceph: just call get_session in __ceph_lookup_mds_session (Jeff Layton) [1767959] - [fs] ceph: simplify arguments and return semantics of try_get_cap_refs (Jeff Layton) [1767959] - [fs] ceph: fix comment over ceph_drop_caps_for_unlink (Jeff Layton) [1767959] - [fs] ceph: move wait for mds request into helper function (Jeff Layton) [1767959] - [fs] ceph: have ceph_mdsc_do_request call ceph_mdsc_submit_request (Jeff Layton) [1767959] - [fs] ceph: after an MDS request, do callback and completions (Jeff Layton) [1767959] - [fs] ceph: use pathlen values returned by set_request_path_attr (Jeff Layton) [1767959] - [fs] ceph: use __getname/__putname in ceph_mdsc_build_path (Jeff Layton) [1767959] - [fs] ceph: use ceph_mdsc_build_path instead of clone_dentry_name (Jeff Layton) [1767959] - [fs] ceph: fix potential use-after-free in ceph_mdsc_build_path (Jeff Layton) [1767959] - [fs] ceph: dump granular cap info in "caps" debugfs file (Jeff Layton) [1767959] - [fs] ceph: make iterate_session_caps a public symbol (Jeff Layton) [1767959] - [fs] ceph: fix NULL pointer deref when debugging is enabled (Jeff Layton) [1767959] - [fs] ceph: properly handle granular statx requests (Jeff Layton) [1767959] - [fs] ceph: remove superfluous inode_lock in ceph_fsync (Jeff Layton) [1767959] - [kernel] libceph: fix clang warning for CEPH_DEFINE_OID_ONSTACK (Jeff Layton) [1767959] - [block] rbd: convert all rbd_assert(0) to BUG() (Jeff Layton) [1767959] - [block] rbd: avoid clang -Wuninitialized warning (Jeff Layton) [1767959] - [fs] ceph: snapshot nfs re-export (Jeff Layton) [1767959] - [fs] ceph: quota: fix quota subdir mounts (Jeff Layton) [1767959] - [fs] ceph: factor out ceph_lookup_inode() (Jeff Layton) [1767959] - [fs] ceph: remove duplicated filelock ref increase (Jeff Layton) [1767959] - [fs] ceph: fix ci->i_head_snapc leak (Jeff Layton) [1767959] - [fs] ceph: handle the case where a dentry has been renamed on outstanding req (Jeff Layton) [1767959] - [fs] ceph: ensure d_name stability in ceph_dentry_hash() (Jeff Layton) [1767959] - [fs] ceph: only use d_name directly when parent is locked (Jeff Layton) [1767959] - [fs] mark expected switch fall-throughs (Jeff Layton) [1767959] - [fs] ceph: fix use-after-free on symlink traversal (Jeff Layton) [1767959] - [net] libceph: fix breakage caused by multipage bvecs (Jeff Layton) [1767959] - [block] rbd: drop wait_for_latest_osdmap() (Jeff Layton) [1767959] - [net] libceph: wait for latest osdmap in ceph_monc_blacklist_add() (Jeff Layton) [1767959] - [block] rbd: set io_min, io_opt and discard_granularity to alloc_size (Jeff Layton) [1767959] - [block] rbd: advertise support for RBD_FEATURE_DEEP_FLATTEN (Jeff Layton) [1767959] - [block] rbd: whole-object write and zeroout should copyup when snapshots exist (Jeff Layton) [1767959] - [block] rbd: copyup with an empty snapshot context (aka deep-copyup) (Jeff Layton) [1767959] - [block] rbd: introduce rbd_obj_issue_copyup_ops() (Jeff Layton) [1767959] - [block] rbd: stop copying num_osd_ops in rbd_obj_issue_copyup() (Jeff Layton) [1767959] - [block] rbd: factor out __rbd_osd_req_create() (Jeff Layton) [1767959] - [block] rbd: clear ->xferred on error from rbd_obj_issue_copyup() (Jeff Layton) [1767959] - [block] rbd: remove experimental designation from kernel layering (Jeff Layton) [1767959] - [fs] ceph: add mount option to limit caps count (Jeff Layton) [1767959] - [fs] ceph: periodically trim stale dentries (Jeff Layton) [1767959] - [fs] ceph: delete stale dentry when last reference is dropped (Jeff Layton) [1767959] - [fs] ceph: remove dentry_lru file from debugfs (Jeff Layton) [1767959] - [fs] ceph: touch existing cap when handling reply (Jeff Layton) [1767959] - [fs] ceph: pass inclusive lend parameter to filemap_write_and_wait_range() (Jeff Layton) [1767959] - [block] rbd: round off and ignore discards that are too small (Jeff Layton) [1767959] - [block] rbd: handle DISCARD and WRITE_ZEROES separately (Jeff Layton) [1767959] - [block] rbd: get rid of obj_req->obj_request_count (Jeff Layton) [1767959] - [net] libceph: use struct_size() for kmalloc() in crush_decode() (Jeff Layton) [1767959] - [fs] ceph: send cap releases more aggressively (Jeff Layton) [1767959] - [fs] ceph: support getting ceph.dir.pin vxattr (Jeff Layton) [1767959] - [fs] ceph: support versioned reply (Jeff Layton) [1767959] - [fs] ceph: map snapid to anonymous bdev ID (Jeff Layton) [1767959] - [fs] ceph: split large reconnect into multiple messages (Jeff Layton) [1767959] - [fs] ceph: decode feature bits in session message (Jeff Layton) [1767959] - [fs] ceph: set special inode's blocksize to page size (Jeff Layton) [1767959] - [fs] ceph: avoid repeatedly adding inode to mdsc->snap_flush_list (Jeff Layton) [1767959] - [fs] ceph: quota: cleanup license mess (Jeff Layton) [1767959] - [net] libceph: avoid KEEPALIVE_PENDING races in ceph_con_keepalive() (Jeff Layton) [1767959] - [fs] ceph: clear inode pointer when snap realm gets dropped by its inode (Jeff Layton) [1767959] - [block] rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is set (Jeff Layton) [1767959] - [fs] ceph: use vmf_error() in ceph_filemap_fault() (Jeff Layton) [1767959] - [net] libceph: allow setting abort_on_full for rbd (Jeff Layton) [1767959] - [fs] ceph: don't encode inode pathes into reconnect message (Jeff Layton) [1767959] - [fs] ceph: update wanted caps after resuming stale session (Jeff Layton) [1767959] - [fs] ceph: skip updating 'wanted' caps if caps are already issued (Jeff Layton) [1767959] - [fs] ceph: don't request excl caps when mount is readonly (Jeff Layton) [1767959] - [fs] ceph: don't update importing cap's mseq when handing cap export (Jeff Layton) [1767959] - [net] libceph: switch more to bool in ceph_tcp_sendmsg() (Jeff Layton) [1767959] - [net] libceph: use MSG_SENDPAGE_NOTLAST with ceph_tcp_sendpage() (Jeff Layton) [1767959] - [net] libceph: use sock_no_sendpage() as a fallback in ceph_tcp_sendpage() (Jeff Layton) [1767959] - [net] libceph: drop last_piece logic from write_partial_message_data() (Jeff Layton) [1767959] - [fs] ceph: remove redundant assignment (Jeff Layton) [1767959] - [fs] ceph: cleanup splice_dentry() (Jeff Layton) [1767959] - [fs] libceph: assume argonaut on the server side (Jeff Layton) [1767959] - [fs] ceph: quota: fix null pointer dereference in quota check (Jeff Layton) [1767959] - [fs] ceph: add non-blocking parameter to ceph_try_get_caps() (Jeff Layton) [1767959] - [net] libceph: check reply num_data_items in setup_request_data() (Jeff Layton) [1767959] - [net] libceph: preallocate message data items (Jeff Layton) [1767959] - [net] libceph, rbd, ceph: move ceph_osdc_alloc_messages() calls (Jeff Layton) [1767959] - [net] libceph: introduce alloc_watch_request() (Jeff Layton) [1767959] - [net] libceph: assign cookies in linger_submit() (Jeff Layton) [1767959] - [net] libceph: enable fallback to ceph_msg_new() in ceph_msgpool_get() (Jeff Layton) [1767959] - [fs] ceph: num_ops is off by one in ceph_aio_retry_work() (Jeff Layton) [1767959] - [net] libceph: no need to call osd_req_opcode_valid() in osd_req_encode_op() (Jeff Layton) [1767959] - [fs] ceph: set timeout conditionally in __cap_delay_requeue (Jeff Layton) [1767959] - [net] libceph: don't consume a ref on pagelist in ceph_msg_data_add_pagelist() (Jeff Layton) [1767959] - [net] libceph: introduce ceph_pagelist_alloc() (Jeff Layton) [1767959] - [net] libceph: osd_req_op_cls_init() doesn't need to take opcode (Jeff Layton) [1767959] - [kernel] libceph: bump CEPH_MSG_MAX_DATA_LEN (Jeff Layton) [1767959] - [fs] ceph: only allow punch hole mode in fallocate (Jeff Layton) [1767959] - [fs] ceph: refactor ceph_sync_read() (Jeff Layton) [1767959] - [fs] ceph: check if LOOKUPNAME request was aborted when filling trace (Jeff Layton) [1767959] - [fs] ceph: fix dentry leak in ceph_readdir_prepopulate (Jeff Layton) [1767959] - [fs] revert "ceph: fix dentry leak in splice_dentry()" (Jeff Layton) [1767959] - [fs] ceph: check snap first in ceph_set_acl() (Jeff Layton) [1767959] - [block] rbd: add __init/__exit annotations (Jeff Layton) [1767959] - [fs] ceph: reset cap hold timeout only for requeued inode (Jeff Layton) [1767959] - [fs] ceph: don't drop message if it contains more data than expected (Jeff Layton) [1767959] - [fs] ceph: support cephfs' own feature bits (Jeff Layton) [1767959] - [net] crush: fix using plain integer as NULL warning (Jeff Layton) [1767959] - [net] libceph: remove unnecessary non NULL check for request_key (Jeff Layton) [1767959] - [fs] ceph: refactor error handling code in ceph_reserve_caps() (Jeff Layton) [1767959] - [fs] ceph: refactor ceph_unreserve_caps() (Jeff Layton) [1767959] - [fs] ceph: change to void return type for __do_request() (Jeff Layton) [1767959] - [fs] ceph: compare fsc->max_file_size and inode->i_size for max file size limit (Jeff Layton) [1767959] - [fs] ceph: add additional size check in ceph_setattr() (Jeff Layton) [1767959] - [fs] ceph: add additional offset check in ceph_write_iter() (Jeff Layton) [1767959] - [fs] ceph: add additional range check in ceph_fallocate() (Jeff Layton) [1767959] - [fs] ceph: add new field max_file_size in ceph_fs_client (Jeff Layton) [1767959] - [net] ceph: fix whitespace (Jeff Layton) [1767959] - [fs] ceph: adding new return type vm_fault_t (Jeff Layton) [1767959] - [kernel] libceph: remove now unused ceph_{en, de}code_timespec() (Jeff Layton) [1767959] - [fs] ceph: use timespec64 for r_stamp (Jeff Layton) [1767959] - [fs] libceph: use timespec64 for r_mtime (Jeff Layton) [1767959] - [fs] ceph: use timespec64 for inode timestamp (Jeff Layton) [1767959] - [fs] ceph: stop using current_kernel_time() (Jeff Layton) [1767959] - [net] libceph: use timespec64 in for keepalive2 and ticket validity (Jeff Layton) [1767959] - [fs] ceph: add d_drop for some error cases in ceph_symlink() (Jeff Layton) [1767959] - [fs] ceph: add d_drop for some error cases in ceph_mknod() (Jeff Layton) [1767959] - [fs] ceph: return errors from posix_acl_equiv_mode() correctly (Jeff Layton) [1767959] - [net] libceph: amend "bad option arg" error message (Jeff Layton) [1767959] - [net] libceph: stop parsing when a bad int arg is detected (Jeff Layton) [1767959] - [kernel] libceph: change ceph_pagelist_encode_string() to take u32 (Jeff Layton) [1767959] - [net] libceph: make ceph_osdc_notify{, _ack}() payload_len u32 (Jeff Layton) [1767959] - [fs] ceph: restore ctime as well in the case of restoring old mode (Jeff Layton) [1767959] - [fs] ceph: add retry logic for error -ERANGE in ceph_get_acl() (Jeff Layton) [1767959]- [tools] objtool: Support repeated uses of the same C jump table (Yauheni Kaliuta) [1747617] - [tools] objtool: Refactor jump table code (Yauheni Kaliuta) [1747617] - [tools] objtool: Fix sibling call detection (Yauheni Kaliuta) [1747617] - [tools] objtool: Add --backtrace support (Yauheni Kaliuta) [1747617] - [tools] libbpf: Improve handling of corrupted ELF during map initialization (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix negative FD close() in xsk_setup_xdp_prog() (Yauheni Kaliuta) [1747617] - [kernel] bpf: Change size to u64 for bpf_map_{area_alloc, charge_init}() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: Fix btf_dump padding test case (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix struct end padding in btf_dump (Yauheni Kaliuta) [1747617] - [tools] bpf: Allow narrow loads of bpf_sysctl fields with offset > 0 (Yauheni Kaliuta) [1747617] - [tools] bpftool: move "__printf()" attributes to header file (Yauheni Kaliuta) [1747617] - [media] bpf: media: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix format string for p_err() in detect_common_prefix() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix argument for p_err() in BTF do_dump() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix arguments for p_err() in do_event_pipe() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix format strings and arguments for jsonw_printf() (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking of stack slots (Yauheni Kaliuta) [1747617] - [kernel] bpf: handle 32-bit zext during constant blinding (Yauheni Kaliuta) [1747617] - [net] bpf: allow narrow loads of some sk_reuseport_md fields with offset > 0 (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking in presence of bpf2bpf calls (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add config fragment BPF_JIT (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_btf_dump with O= (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_cgroup_storage on s390 (Yauheni Kaliuta) [1747617] - [tools] bpftool: close prog FD before exit on showing a single program (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix "bind{4, 6} deny specific IP & port" on s390 (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools infrastructure (Yauheni Kaliuta) [1747617] - [tools] bpftool: add error message on pin failure (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix error message (prog -> object) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: tests for jmp to 1st insn (Yauheni Kaliuta) [1747617] - [x86] bpf: fix x64 JIT code generation for jmp to 1st insn (Yauheni Kaliuta) [1747617] - [tools] libbpf: set BTF FD for prog only when there is supported .BTF.ext data (Yauheni Kaliuta) [1747617] - [tools] libbpf : make libbpf_num_possible_cpus function thread safe (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix missing __WORDSIZE definition (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix erroneous multi-closing of BTF FD (Yauheni Kaliuta) [1747617] - [tools] libbpf: silence GCC8 warning about string truncation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add another gso_segs access (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix sendmsg6_prog on s390 (Yauheni Kaliuta) [1747617] - [tools] libbpf: Avoid designated initializers for unnamed union members (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix endianness macro usage for some compilers (Yauheni Kaliuta) [1747617] - [tools] libbpf: sanitize VAR to conservative 1-byte INT (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix SIGSEGV when BTF loading fails, but .BTF.ext exists (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_xdp_noinline on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix "valid read map access into a read-only array 1" on s390 (Yauheni Kaliuta) [1747617] - [kernel] bpf: Disable GCC -fgcse optimization for ___bpf_prog_run() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix perf_buffer on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: structure test_{progs, maps, verifier} test runners uniformly (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_verifier/test_maps make dependencies (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix another GCC8 warning for strncpy (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: skip nmi test when perf hw events are disabled (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: remove logic duplication in test_verifier (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add selftests for wide loads (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: rename verifier/wide_store.c to verifier/wide_access.c (Yauheni Kaliuta) [1747617] - [net] bpf: allow wide aligned loads for bpf_sock_addr user_ip6 and msg_src_ip6 (Yauheni Kaliuta) [1747617] - [samples] bpf: build with -D__TARGET_ARCH_$(SRCARCH) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: put test_stub.o into $(OUTPUT) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: make directory prerequisites order-only (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix attach_probe on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: use typedef'ed arrays as map values (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add trickier size resolution tests (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix BTF verifier size resolution logic (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix compiling loop{1, 2, 3}.c on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: make PT_REGS_* work in userspace (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix s930 -> s390 typo (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: compile progs with -D__TARGET_ARCH_$(SRCARCH) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: do not ignore clang failures (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: avoid fall-through warnings (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix bpf_target_sparc check (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix ptr to u64 conversion warning on 32-bit platforms (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision bit propagation for BPF_ST instructions (Yauheni Kaliuta) [1747617] - [kernel] bpf: Fix ORC unwinding in non-JIT BPF code (Yauheni Kaliuta) [1747617] - [tools] objtool: Add support for C jump tables (Yauheni Kaliuta) [1747617] - [tools] objtool: Don't use ignore flag for fake jumps (Yauheni Kaliuta) [1747617] - [tools] objtool: Support per-function rodata sections (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_reuseport_array on s390 (Yauheni Kaliuta) [1747617] - [tools] bpftool: add completion for bpftool prog "loadall" (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup: Fix build error without CONFIG_NET (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_attach_probe map definition (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add verifier tests for wide stores (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [tools] libbpf: add perf_buffer_ prefix to README (Yauheni Kaliuta) [1747617] - [tools] bpftool: switch map event_pipe to libbpf's perf_buffer (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test perf buffer API (Yauheni Kaliuta) [1747617] - [tools] libbpf: auto-set PERF_EVENT_ARRAY size to number of CPUs (Yauheni Kaliuta) [1747617] - [tools] libbpf: add perf buffer API (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add test_tcp_rtt to .gitignore (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_align liveliness expectations (Yauheni Kaliuta) [1747617] - [tools] bpftool: add "prog run" subcommand to test-run programs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert legacy BPF maps to BTF-defined ones (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert selftests using BTF-defined maps to new syntax (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add __uint and __type macro for BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] libbpf: capture value in BTF type info for BTF-defined map defs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert existing tracepoint tests to new APIs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add kprobe/uprobe selftests (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: switch test to new attach_perf_event API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add raw tracepoint attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add tracepoint attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add kprobe/uprobe attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add ability to attach/detach BPF program to perf event (Yauheni Kaliuta) [1747617] - [tools] libbpf: introduce concept of bpf_link (Yauheni Kaliuta) [1747617] - [tools] libbpf: make libbpf_strerror_r agnostic to sign of error (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: fix inlines in test_lwt_seg6local (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: standardize to static __always_inline (Yauheni Kaliuta) [1747617] - [samples] bpf: Add support for fq's EDT to HBM (Yauheni Kaliuta) [1747617] - [tools] bpf, libbpf, smatch: Fix potential NULL pointer dereference (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix GCC8 warning for strncpy (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: add tests for shifts by zero (Yauheni Kaliuta) [1747617] - [x86] bpf, x32: Fix bug with ALU64 {LSH, RSH, ARSH} BPF_K shift by 0 (Yauheni Kaliuta) [1747617] - [x86] bpf, x32: Fix bug with ALU64 {LSH, RSH, ARSH} BPF_X shift by 0 (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking (Yauheni Kaliuta) [1747617] - [tools] bpf: fix uapi bpf_prog_info fields alignment (Yauheni Kaliuta) [1747617] - [kernel] devmap: Allow map lookups from eBPF (Yauheni Kaliuta) [1747617] - [net] bpf_xdp_redirect_map: Perform map lookup in eBPF helper (Yauheni Kaliuta) [1747617] - [net] devmap: Rename ifindex member in bpf_redirect_info (Yauheni Kaliuta) [1747617] - [kernel] devmap/cpumap: Use flush list instead of bitmap (Yauheni Kaliuta) [1747617] - [kernel] xskmap: Move non-standard list manipulation to helper (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix -Wstrict-aliasing in test_sockopt_sk.c (Yauheni Kaliuta) [1747617] - [tools] bpftool: support cgroup sockopt (Yauheni Kaliuta) [1747617] - [documentation] bpf: add sockopt documentation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test that exercises BPF_F_ALLOW_MULTI (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test that exercises sk helpers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test sockopt section name (Yauheni Kaliuta) [1747617] - [tools] libbpf: support sockopt hooks (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [kernel] bpf: implement getsockopt and setsockopt hooks (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix cgroup bpf release synchronization (Yauheni Kaliuta) [1747617] - [samples] bpf: make the use of xdp samples consistent (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix BPF_ALU32 | BPF_ARSH on BE arches (Yauheni Kaliuta) [1747617] - [tools] bpftool: use correct argument in cgroup errors (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix compiler warning with CONFIG_MODULES=n (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: build tests with debug info (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix max() type mismatch for 32bit (Yauheni Kaliuta) [1747617] - [trace] xdp: Add tracepoint for bulk XDP_TX (Yauheni Kaliuta) [1747617] - [tools] selftests, bpf: Add test for veth native XDP (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix spelling mistake "conflictling" -> "conflicting" (Yauheni Kaliuta) [1747617] - [kernel] bpf: precise scalar_value tracking (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add realistic loop tests (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add basic verifier tests for loops (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix tests (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix callees pruning callers (Yauheni Kaliuta) [1747617] - [kernel] bpf: introduce bounded loops (Yauheni Kaliuta) [1747617] - [kernel] bpf: extend is_branch_taken to registers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix tests due to const spill/fill (Yauheni Kaliuta) [1747617] - [kernel] bpf: track spill/fill of constants (Yauheni Kaliuta) [1747617] - [tools] libbpf: constify getter APIs (Yauheni Kaliuta) [1747617] - [samples] bpf: refactor header include path (Yauheni Kaliuta) [1747617] - [samples] bpf: remove unnecessary include options in Makefile (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert tests w/ custom values to BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: switch BPF_ANNOTATE_KV_PAIR tests to BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add test for BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] libbpf: allow specifying map definitions using BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: split initialization and loading of BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: identify maps by section index in addition to offset (Yauheni Kaliuta) [1747617] - [tools] libbpf: refactor map initialization (Yauheni Kaliuta) [1747617] - [tools] libbpf: streamline ELF parsing error-handling (Yauheni Kaliuta) [1747617] - [tools] libbpf: extract BTF loading logic (Yauheni Kaliuta) [1747617] - [tools] libbpf: add common min/max macro to libbpf_internal.h (Yauheni Kaliuta) [1747617] - [net] bpf: fix the check that forwarding is enabled in bpf_ipv6_fib_lookup (Yauheni Kaliuta) [1747617] - [kernel] bpf: Fix build error without CONFIG_INET (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert socket_cookie test to sk storage (Yauheni Kaliuta) [1747617] - [tools] bpf/tools: sync bpf.h (Yauheni Kaliuta) [1747617] - [net] bpf: export bpf_sock for BPF_PROG_TYPE_SOCK_OPS prog type (Yauheni Kaliuta) [1747617] - [net] bpf: export bpf_sock for BPF_PROG_TYPE_CGROUP_SOCK_ADDR prog type (Yauheni Kaliuta) [1747617] - [tools] bpf: Add test for SO_REUSEPORT_DETACH_BPF (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix check for presence of associated BTF for map creation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: signedness bug in enable_all_controllers() (Yauheni Kaliuta) [1747617] - [samples] bpf: fix include path in Makefile (Yauheni Kaliuta) [1747617] - [kernel] bpf: silence warning messages in core (Yauheni Kaliuta) [1747617] - [tools] bpf: use libbpf_num_possible_cpus internally (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: remove bpf_util.h from BPF C progs (Yauheni Kaliuta) [1747617] - [tools] bpf: add a new API libbpf_num_possible_cpus() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf : clean up feature/ when make clean (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix constness of source arg for bpf helpers (Yauheni Kaliuta) [1747617] - [samples] bpf: don't run probes at the local make stage (Yauheni Kaliuta) [1747617] - [tools] libbpf: remove qidconf and better support external bpf programs (Yauheni Kaliuta) [1747617] - [tools] bpf: Add bpf_map_lookup_elem selftest for xskmap (Yauheni Kaliuta) [1747617] - [tools] bpf/tools: sync bpf.h (Yauheni Kaliuta) [1747617] - [net] bpf: Allow bpf_map_lookup_elem() on an xskmap (Yauheni Kaliuta) [1747617] - [documentation] docs: bpf: get rid of two warnings (Yauheni Kaliuta) [1747617] - [net] bpf: allow CGROUP_SKB programs to use bpf_skb_cgroup_id() helper (Yauheni Kaliuta) [1747617] - [samples] bpf: print a warning about headers_install (Yauheni Kaliuta) [1747617] - [kernel] bpf: remove redundant assignment to err (Yauheni Kaliuta) [1747617] - [samples] bpf: hbm: fix spelling mistake "notifcations" -> "notificiations" (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: measure RTT from xdp using xdping (Yauheni Kaliuta) [1747617] - [documentation] bpf: doc: update answer for 32-bit subregister question (Yauheni Kaliuta) [1747617] - [kernel] bpf: move memory size checks to bpf_map_charge_init() (Yauheni Kaliuta) [1747617] - [kernel] bpf: rework memlock-based memory accounting for maps (Yauheni Kaliuta) [1747617] - [kernel] bpf: group memory related fields in struct bpf_map_memory (Yauheni Kaliuta) [1747617] - [net] bpf: add memlock precharge for socket local storage (Yauheni Kaliuta) [1747617] - [kernel] bpf: add memlock precharge check for cgroup_local_storage (Yauheni Kaliuta) [1747617] - [samples] bpf: Add more stats to HBM (Yauheni Kaliuta) [1747617] - [samples] bpf: Add cn support to hbm_out_kern.c (Yauheni Kaliuta) [1747617] - [kernel] bpf: Update __cgroup_bpf_run_filter_skb with cn (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup inet skb programs can return 0 to 3 (Yauheni Kaliuta) [1747617] - [kernel] bpf: Create BPF_PROG_CGROUP_INET_EGRESS_RUN_ARRAY (Yauheni Kaliuta) [1747617] - [tools] libbpf: reduce unnecessary line wrapping (Yauheni Kaliuta) [1747617] - [tools] libbpf: typo and formatting fixes (Yauheni Kaliuta) [1747617] - [tools] libbpf: simplify two pieces of logic (Yauheni Kaliuta) [1747617] - [tools] libbpf: use negative fd to specify missing BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix error code returned on corrupted ELF (Yauheni Kaliuta) [1747617] - [tools] libbpf: check map name retrieved from ELF (Yauheni Kaliuta) [1747617] - [tools] libbpf: simplify endianness check (Yauheni Kaliuta) [1747617] - [tools] libbpf: preserve errno before calling into user callback (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix detection of corrupted BPF instructions section (Yauheni Kaliuta) [1747617] - [tools] libbpf: prevent overwriting of log_level in bpf_object__load_progs() (Yauheni Kaliuta) [1747617] - [kernel] bpf: tracing: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [kernel] bpf: remove __rcu annotations from bpf_prog_array (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add auto-detach test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: enable all available cgroup v2 controllers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert test_cgrp2_attach2 example into kselftest (Yauheni Kaliuta) [1747617] - [samples] bpf: fix a couple of style issues in bpf_load (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fail test_tunnel.sh if subtests fail (Yauheni Kaliuta) [1747617] - [tools] bpftool: make -d option print debug output from verifier (Yauheni Kaliuta) [1747617] - [tools] libbpf: add bpf_object__load_xattr() API function to pass log_level (Yauheni Kaliuta) [1747617] - [tools] bpftool: add -d option to get debug output from libbpf (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix warning that PTR_ERR_OR_ZERO can be used (Yauheni Kaliuta) [1747617] - [tools] bpf: style fix in while(!feof()) loop (Yauheni Kaliuta) [1747617] - [kernel] bpf: check signal validity in nmi for bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpftool: auto-complete BTF IDs for btf dump (Yauheni Kaliuta) [1747617] - [samples] bpf: add ibumad sample to .gitignore (Yauheni Kaliuta) [1747617] - [x86] x32: bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [s390] bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [powerpc] bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: enable hi32 randomization for all tests (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: adjust several test_verifier helpers for insn insertion (Yauheni Kaliuta) [1747617] - [tools] libbpf: add "prog_flags" to bpf_program/bpf_prog_load_attr/bpf_load_program_attr (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: randomize high 32-bit when BPF_F_TEST_RND_HI32 is set (Yauheni Kaliuta) [1747617] - [tools] bpf: sync uapi header bpf.h (Yauheni Kaliuta) [1747617] - [uapi] bpf: introduce new bpf prog load flags "BPF_F_TEST_RND_HI32" (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: insert zero extension according to analysis result (Yauheni Kaliuta) [1747617] - [kernel] bpf: introduce new mov32 variant for doing explicit zero extension (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: mark patched-insn with sub-register zext flag (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: mark verified-insn with sub-register zext flag (Yauheni Kaliuta) [1747617] - [tools] bpf: add selftest in test_progs for bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf uapi header bpf.h to tools directory (Yauheni Kaliuta) [1747617] - [kernel] bpf: implement bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpftool: update bash-completion w/ new c option for btf dump (Yauheni Kaliuta) [1747617] - [tools] bpftool/docs: add description of btf dump C option (Yauheni Kaliuta) [1747617] - [tools] bpftool: add C output format option to btf dump subcommand (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add btf_dump BTF-to-C conversion tests (Yauheni Kaliuta) [1747617] - [tools] libbpf: add btf_dump API for BTF-to-C conversion (Yauheni Kaliuta) [1747617] - [tools] libbpf: switch btf_dedup() to hashmap for dedup table (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add tests for libbpf's hashmap (Yauheni Kaliuta) [1747617] - [tools] libbpf: add resizable non-thread safe internal hashmap (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: use btf__parse_elf to check presence of BTF/BTF.ext (Yauheni Kaliuta) [1747617] - [tools] bpftool: use libbpf's btf__parse_elf API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add btf__parse_elf API to load .BTF and .BTF.ext (Yauheni Kaliuta) [1747617] - [tools] libbpf: ensure libbpf.h is included along libbpf_internal.h (Yauheni Kaliuta) [1747617] - [samples] bpf: Do not define bpf_printk macro (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: Move bpf_printk to bpf_helpers.h (Yauheni Kaliuta) [1747617] - [kernel] bpf: convert explored_states to hash table (Yauheni Kaliuta) [1747617] - [kernel] bpf: split explored_states (Yauheni Kaliuta) [1747617] - [kernel] bpf: cleanup explored_states (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add pyperf scale test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: adjust verifier scale test (Yauheni Kaliuta) [1747617] - [kernel] bpf: bump jmp sequence limit (Yauheni Kaliuta) [1747617] - [tools] libbpf: emit diff of mismatched public API, if any (Yauheni Kaliuta) [1747617] - [tools] bpf, selftest: test global data/bss/rodata sections (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test_tc_tunnel: skip unsupported tests (Jiri Benc) [1749814] - [tools] selftests/bpf: More compatible nc options in test_tc_edt (Jiri Benc) [1749814] - [net] xdp: check device pointer before clearing (Jiri Benc) [1749814] - [net] bpf: udp: Avoid calling reuseport's bpf_prog from udp_gro (Jiri Benc) [1749814] - [net] bpf: sockmap, fix use after free from sleep in psock backlog workqueue (Jiri Benc) [1749814] - [include] bpf: sockmap, restore sk_write_space when psock gets dropped (Jiri Benc) [1749814] - [net] bpfilter: fallback to netfilter if failed to load bpfilter kernel module (Jiri Benc) [1749814] - [net] pass net_device argument to the eth_get_headlen (Jiri Benc) [1749814] - [net] flow_dissector: handle no-skb use case (Jiri Benc) [1749814] - [net] plumb network namespace into __skb_flow_dissect (Jiri Benc) [1749814] - [net] bpfilter: dont use module_init in non-modular code (Jiri Benc) [1749814] - [net] xsk: fix XDP socket ring buffer memory ordering (Jiri Benc) [1749814] - [tools] selftests/bpf: install files test_xdp_vlan.sh (Jiri Benc) [1749814] - [net] fix bpf_xdp_adjust_head regression for generic-XDP (Jiri Benc) [1749814] - [tools] selftests/bpf: reduce time to execute test_xdp_vlan.sh (Jiri Benc) [1749814] - [tools] selftests/bpf: add wrapper scripts for test_xdp_vlan.sh (Jiri Benc) [1749814] - [tools] bpf: fix XDP vlan selftests test_xdp_vlan.sh (Jiri Benc) [1749814] - [net] core: support XDP generic on stacked devices. (Jiri Benc) [1749814] - [netdrv] netvsc: unshare skb in VF rx handler (Jiri Benc) [1749814] - [net] convert rps_needed and rfs_needed to new static branch api (Jiri Benc) [1749814] - [net] core: Document __skb_flow_dissect() flags argument (Jiri Benc) [1749814] - [net] gso: Fix skb_segment splat when splitting gso_size mangled skb having linear-headed frag_list (Jiri Benc) [1749814] - [net] sock_map, fix missing ulp check in sock hash case (Jiri Benc) [1749814] - [net] Fix missing meta data in skb with vlan packet (Jiri Benc) [1749814] - [include] skbuff.h: fix using plain integer as NULL warning (Jiri Benc) [1749814] - [netdrv] netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit (Jiri Benc) [1761359] - [netdrv] netdevsim: Restore per-network namespace accounting for fib entries (Jiri Benc) [1761359] - [netdrv] netdevsim: Make nsim_num_vf static (Jiri Benc) [1761359] - [netdrv] netdevsim: fix fall-through annotation (Jiri Benc) [1761359] - [netdrv] netdevsim: implement ndo_get_devlink_port (Jiri Benc) [1761359] - [netdrv] netdevsim: move netdev creation/destruction to dev probe (Jiri Benc) [1761359] - [netdrv] netdevsim: extend device attrs to support port addition and deletion (Jiri Benc) [1761359] - [netdrv] netdevsim: implement dev probe/remove skeleton with port initialization (Jiri Benc) [1761359] - [netdrv] netdevsim: change debugfs tree topology (Jiri Benc) [1761359] - [netdrv] netdevsim: generate random switch id instead of using dev id (Jiri Benc) [1761359] - [netdrv] netdevsim: merge sdev into dev (Jiri Benc) [1761359] - [netdrv] netdevsim: rename dev_init/exit() functions and make them independent on ns (Jiri Benc) [1761359] - [netdrv] netdevsim: add bus attributes to add new and delete devices (Jiri Benc) [1761359] - [netdrv] netdevsim: use ida for bus device ids (Jiri Benc) [1761359] - [netdrv] netdevsim: add stub netdevsim driver implementation (Jiri Benc) [1761359] - [netdrv] netdevsim: move device registration and related code to bus.c (Jiri Benc) [1761359] - [netdrv] netdevsim: put netdevsim bus code into separate file (Jiri Benc) [1761359] - [netdrv] netdevsim: rename devlink.c to dev.c to contain per-dev(asic) items (Jiri Benc) [1761359] - [netdrv] netdevsim: create devlink instance per netdevsim instance (Jiri Benc) [1761359] - [netdrv] netdevsim: move device registration on bus to be done earlier in init (Jiri Benc) [1761359] - [netdrv] netdevsim: move sdev-specific init/uninit code into separate functions (Jiri Benc) [1761359] - [netdrv] netdevsim: make bpf_offload_dev_create() per-sdev instead of first ns (Jiri Benc) [1761359] - [netdrv] netdevsim: move shared dev creation and destruction into separate file (Jiri Benc) [1761359] - [netdrv] netdevsim: let net core to free netdevsim netdev (Jiri Benc) [1761359] - [netdrv] netdevsim: remove nsim_dellink() implementation (Jiri Benc) [1761359] - [include] driver core: add BUS_ATTR_WO() macro (Jiri Benc) [1761359] - arm64: bpf: do not allocate executable memory (Yauheni Kaliuta) [1762214] - modules: page-align module section allocations only for arches supporting strict module rwx (Yauheni Kaliuta) [1762214] - modules: always page-align module section allocations (Yauheni Kaliuta) [1762214] - modules: fix compile error if don't have strict module rwx (Yauheni Kaliuta) [1762214] - modules: Use vmalloc special flag (Yauheni Kaliuta) [1762214] - modules: fix BUG when load module with rodata=n (Yauheni Kaliuta) [1762214] - x86/modules: Avoid breaking W^X while loading modules (Yauheni Kaliuta) [1762214] - x86/alternatives, jumplabel: Use text_poke_early() before mm_init() (Yauheni Kaliuta) [1762214] - x86/kprobes: Set instruction page as executable (Yauheni Kaliuta) [1762214] - x86/ftrace: Set trampoline pages as executa (Yauheni Kaliuta) [1762214] - [tools] bpftool: Fix json dump crash on powerpc (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix race in flow dissector tests (Yauheni Kaliuta) [1747615] - [arm64] insn: Fix ldadd instruction encoding (Yauheni Kaliuta) [1747615] - [scripts] kbuild: tolerate missing pahole when generating BTF (Yauheni Kaliuta) [1747615] - [scripts] kbuild: handle old pahole more gracefully when generating BTF (Yauheni Kaliuta) [1747615] - [scripts] kbuild: add ability to generate BTF type info for vmlinux (Yauheni Kaliuta) [1747615] - [scripts] kbuild: hardcode genksyms path and remove GENKSYMS variable (Yauheni Kaliuta) [1747615] - [scripts] bpf: fix script for generating man page on BPF helpers (Yauheni Kaliuta) [1747615] - [tools] add smp_* barrier variants to include infrastructure (Yauheni Kaliuta) [1747615] - [tools] tools headers barrier: Fix arm64 tools build failure wrt smp_load_{acquire, release} (Yauheni Kaliuta) [1747615] - [tools] bpf, x32: Fix bug for BPF_JMP | {BPF_JSGT, BPF_JSLE, BPF_JSLT, BPF_JSGE} (Yauheni Kaliuta) [1747615] - [x86] unwind/orc: Fall back to using frame pointers for generated code (Yauheni Kaliuta) [1747615] - [x86] unwind: Add hardcoded ORC entry for NULL (Yauheni Kaliuta) [1747615] - [x86] unwind: Handle NULL pointer calls better in frame unwinder (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix accessing bpf_sysctl.file_pos on s390 (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix narrower loads on s390 (Yauheni Kaliuta) [1747615] - [net] bpf: rename bpf_ctx_wide_store_ok to bpf_ctx_wide_access_ok (Yauheni Kaliuta) [1747615] - [net] bpf: allow wide (u64) aligned stores for some fields of bpf_sock_addr (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: improve unexpected success reporting in test_syctl (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix "ctx:write sysctl:write read ok" on s390 (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix format string for p_err() in query_flow_dissector() (Yauheni Kaliuta) [1747615] - [tools] bpftool: add raw_tracepoint_writable prog type to header (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix NULL deref in btf_type_is_resolve_source_only (Yauheni Kaliuta) [1747615] - [net] bpf: Set sk_bpf_storage back to NULL for cloned sk (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix nested bpf tracepoints with per-cpu data (Yauheni Kaliuta) [1747615] - [net] bpf: Fix out of bounds memory access in bpf_sk_storage (Yauheni Kaliuta) [1747615] - [kernel] sysctl: define proc_do_static_key() (Yauheni Kaliuta) [1747615] - [x86] bpf, x64: fix stack layout of JITed bpf code (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Add missing RCU read lock on flush (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Add missing bulk queue free (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Fix premature entry free on destroying map (Yauheni Kaliuta) [1747615] - [powerpc] bpf: use unsigned division instruction for 64-bit operations (Yauheni Kaliuta) [1747615] - [tools] bpf: fix div64 overflow tests to properly detect errors (Yauheni Kaliuta) [1747615] - [tools] bpf: sync BPF_FIB_LOOKUP flag changes with BPF uapi (Yauheni Kaliuta) [1747615] - [uapi] bpf: simplify definition of BPF_FIB_LOOKUP related flags (Yauheni Kaliuta) [1747615] - [tools] bpf: lpm_trie: check left child of last leftmost node for NULL (Yauheni Kaliuta) [1747615] - [tools] bpf: expand section tests for test_section_names (Yauheni Kaliuta) [1747615] - [tools] bpf: more msg_name rewrite tests to test_sock_addr (Yauheni Kaliuta) [1747615] - [tools] bpf, bpftool: enable recvmsg attach types (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: enable recvmsg attach types (Yauheni Kaliuta) [1747615] - [tools] bpf: sync tooling uapi header (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix unconnected udp hooks (Yauheni Kaliuta) [1747615] - [tools] bpftool: Fix JSON output when lookup fails (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: move test_lirc_mode2_user to TEST_GEN_PROGS_EXTENDED (Yauheni Kaliuta) [1747615] - [tools] libbpf: Return btf_fd for load_sk_storage_btf (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix compiler warning in flow_dissector test (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: complete sub-register zero extension checks (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: move sub-register zero extension checks into subreg.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add zero extend checks for ALU32 and/or/xor (Yauheni Kaliuta) [1747615] - [samples] bpf: suppress compiler warning (Yauheni Kaliuta) [1747615] - [samples] bpf: fix to change the buffer size for read() (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix BTF raw dump of FWD's fwd_kind (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix bpf_get_current_task (Yauheni Kaliuta) [1747615] - [tools] libbpf: move logging helpers into libbpf_internal.h (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add test_sysctl and map_tests/tests.h to .gitignore (Yauheni Kaliuta) [1747615] - [kernel] bpf: relax inode permission check for retrieving bpf program (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add prog detach to flow_dissector test (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add missing \n to flow_dissector CHECK errors (Yauheni Kaliuta) [1747615] - [tools] libbpf: don't fail when feature probing fails (Yauheni Kaliuta) [1747615] - [tools] bpf: test ref bit from data path and add new tests for syscall path (Yauheni Kaliuta) [1747615] - [kernel] bpf, lru: avoid messing with eviction heuristics upon syscall lookup (Yauheni Kaliuta) [1747615] - [kernel] bpf: add map_lookup_elem_sys_only for lookups from syscall side (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync kernel btf.h header (Yauheni Kaliuta) [1747615] - [uapi] bpf: btf: fix the brackets of BTF_INT_OFFSET() (Yauheni Kaliuta) [1747615] - [kernel] bpf: devmap: fix use-after-free Read in __dev_map_entry_free (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix undefined behavior in narrow load handling (Yauheni Kaliuta) [1747615] - [tools] libbpf: detect supported kernel BTF features and sanitize BTF (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: Add files generated after build to .gitignore (Yauheni Kaliuta) [1747615] - [tools] bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix minor issues in documentation for BPF helpers (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix recurring typo in documentation for BPF helpers (Yauheni Kaliuta) [1747615] - [tools] bpf: add various test cases for backward jumps (Yauheni Kaliuta) [1747615] - [documentation] docs/btf: fix the missing section marks (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: initialize bpf_object pointers where needed (Yauheni Kaliuta) [1747615] - [tools] libbpf: add libbpf_util.h to header install (Yauheni Kaliuta) [1747615] - [tools] bpf: fix perf build error with uClibc (seen on ARC) (Yauheni Kaliuta) [1747615] - [tools] bpftool: exclude bash-completion/bpftool from .gitignore pattern (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: set RLIMIT_MEMLOCK properly for test_libbpf_open.c (Yauheni Kaliuta) [1747615] - [net] bpf: Use PTR_ERR_OR_ZERO in bpf_fd_sk_storage_update_elem() (Yauheni Kaliuta) [1747615] - [kernel] bpf: Use vmalloc special flag (Yauheni Kaliuta) [1747615] - [kernel] bpf: Fail bpf_probe_write_user() while mm is switched (Yauheni Kaliuta) [1747615] - [kernel] mm/tlb: Provide default nmi_uaccess_okay() (Yauheni Kaliuta) [1747615] - [kernel] asm-generic/tlb: Guard with #ifdef CONFIG_MMU (Yauheni Kaliuta) [1747615] - [tools] bpf: Add ene-to-end test for bpf_sk_storage_* helpers (Yauheni Kaliuta) [1747615] - [tools] bpf: Add BPF_MAP_TYPE_SK_STORAGE test to test_maps (Yauheni Kaliuta) [1747615] - [tools] bpf: Add verifier tests for the bpf_sk_storage (Yauheni Kaliuta) [1747615] - [tools] bpf: Refactor BTF encoding macro to test_btf.h (Yauheni Kaliuta) [1747615] - [tools] bpf: Support BPF_MAP_TYPE_SK_STORAGE in bpf map probing (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools (Yauheni Kaliuta) [1747615] - [net] bpf: Introduce bpf sk local storage (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: test writable buffers in raw tps (Yauheni Kaliuta) [1747615] - [tools] sync bpf.h (Yauheni Kaliuta) [1747615] - [kernel] bpf: add writable context for raw tracepoints (Yauheni Kaliuta) [1747615] - [arm64] bpf, arm64: use more scalable stadd over ldxr / stxr loop in xadd (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix indendation in bash-completion/bpftool (Yauheni Kaliuta) [1747615] - [tools] bpftool: add bash completions for btf command (Yauheni Kaliuta) [1747615] - [tools] bpftool/docs: add btf sub-command documentation (Yauheni Kaliuta) [1747615] - [tools] bpftool: add ability to dump BTF types (Yauheni Kaliuta) [1747615] - [tools] bpftool: Fix errno variable usage (Yauheni Kaliuta) [1747615] - [tools] bpftool: show flow_dissector attachment status (Yauheni Kaliuta) [1747615] - [net] bpf: support BPF_PROG_QUERY for BPF_FLOW_DISSECTOR attach_type (Yauheni Kaliuta) [1747615] - [samples] bpf: add hbm sample to .gitignore (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix samples/bpf build failure due to undefined UINT32_MAX (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: fix segfault in bpf_object__init_maps' pr_debug statement (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: handle old kernels more graceful wrt global data sections (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand test_tc_tunnel with SIT encap (Yauheni Kaliuta) [1747615] - [net] bpf: update skb->protocol in bpf_skb_net_grow (Yauheni Kaliuta) [1747615] - [tools] bpf/flow_dissector: don't adjust nhoff by ETH_HLEN in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: properly return error from bpf_flow_load (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: run flow dissector tests in skb-less mode (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add flow dissector bpf_skb_load_bytes helper test (Yauheni Kaliuta) [1747615] - [net] bpf: when doing BPF_PROG_TEST_RUN for flow dissector use no-skb mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: drop bpf_verifier_lock (Yauheni Kaliuta) [1747615] - [kernel] bpf: remove global variables (Yauheni Kaliuta) [1747615] - [documentation] bpf: document the verifier limits (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix BPF_LOG_BUF_SIZE off-by-one error (Yauheni Kaliuta) [1747615] - [documentation] bpf: move BPF_PROG_TYPE_FLOW_DISSECTOR documentation to a new common place (Yauheni Kaliuta) [1747615] - [tools] bpf: Increase MAX_NR_MAPS to 17 in test_verifier.c (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix compile errors due to unsync linux/in6.h and netinet/in.h (Yauheni Kaliuta) [1747615] - [documentation] bpf: Document BPF_PROG_TYPE_CGROUP_SYSCTL (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix a compilation error (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap memory prefetchw optimizations for struct page (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap do bulk allocation of SKBs (Yauheni Kaliuta) [1747615] - [net] core: introduce build_skb_around (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap use ptr_ring_consume_batched (Yauheni Kaliuta) [1747615] - [tools] libbpf: optimize barrier for XDP socket rings (Yauheni Kaliuta) [1747615] - [tools] bpftool: show btf_id in map listing (Yauheni Kaliuta) [1747615] - [tools] bpftool: re-organize newline printing for map listing (Yauheni Kaliuta) [1747615] - [tools] bpftool: Support sysctl hook (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix printf formatter for ptrdiff_t argument (Yauheni Kaliuta) [1747615] - [kernel] bpf: use BPF_CAST_CALL for casting bpf call (Yauheni Kaliuta) [1747615] - [uapi] bpf: allow clearing all sock_ops callback flags (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add VRF test cases to lwt_ip_encap test (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: make flow dissector tests more extensible (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: two scale tests (Yauheni Kaliuta) [1747615] - [tools] bpftool: Improve handling of ENOSPC on reuseport_array map dumps (Yauheni Kaliuta) [1747615] - [tools] bpftool: Use print_entry_error() in case of ENOENT when dumping (Yauheni Kaliuta) [1747615] - [tools] bpftool: add a note on program statistics in man page (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix short option name for printing version in man pages (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix man page documentation for "pinmaps" keyword (Yauheni Kaliuta) [1747615] - [tools] bpftool: reset errno for "bpftool cgroup tree" (Yauheni Kaliuta) [1747615] - [tools] bpftool: remove blank line after btf_id when listing programs (Yauheni Kaliuta) [1747615] - [net] bpf: reserve flags in bpf_skb_net_shrink (Yauheni Kaliuta) [1747615] - [tools] bpf: fix whitespace for ENCAP_L2 defines in bpf.h (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: bring back (void *) cast to set_ipv4_csum in test_tc_tunnel (Yauheni Kaliuta) [1747615] - [tools] selftests/btf: add VAR and DATASEC case for dedup tests (Yauheni Kaliuta) [1747615] - [tools] btf: add support for VAR and DATASEC in btf_dedup() (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor "check_reg_arg" to eliminate code redundancy (Yauheni Kaliuta) [1747615] - [kernel] bpf: factor out reg and stack slot propagation into "propagate_liveness_reg" (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor propagate_liveness to eliminate code redundance (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor propagate_liveness to eliminate duplicated for loop (Yauheni Kaliuta) [1747615] - [netdrv] netdevsim: move sdev specific bpf debugfs files to sdev dir (Yauheni Kaliuta) [1747615] - [kernel] bpf: Fix distinct pointer types warning for ARCH=i386 (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: C based test for sysctl and strtoX (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_strtol and bpf_strtoul helpers (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test ARG_PTR_TO_LONG arg type (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Add sysctl and strtoX helpers to bpf_helpers.h (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_strtol and bpf_strtoul helpers (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce ARG_PTR_TO_{INT,LONG} arg types (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test file_pos field in bpf_sysctl ctx (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_sysctl_{get, set}_new_value helpers (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test sysctl_get_current_value helper (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_sysctl_get_name helper (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test BPF_CGROUP_SYSCTL (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test sysctl section name (Yauheni Kaliuta) [1747615] - [tools] libbpf: Support sysctl hook (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add file_pos field to bpf_sysctl ctx (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_{get, set}_new_value helpers (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_get_current_value helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_get_name helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: Sysctl hook (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add base proto function for cgroup-bpf programs (Yauheni Kaliuta) [1747615] - [net] bpf: explicitly prohibit ctx_{in, out} in non-skb BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] selftests_bpf: add L2 encap to test_tc_tunnel (Yauheni Kaliuta) [1747615] - [tools] bpf: sync bpf.h to tools/ for BPF_F_ADJ_ROOM_ENCAP_L2 (Yauheni Kaliuta) [1747615] - [net] bpf: add layer 2 encap support to bpf_skb_adjust_room (Yauheni Kaliuta) [1747615] - [tools] selftests_bpf: extend test_tc_tunnel for UDP encap (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix missing bpf_check_uarg_tail_zero in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [s390] Convert IS_ENABLED uses to __is_defined (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add selftest for __sk_buff context in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] libbpf: add support for ctx_{size, }_{in, out} in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [net] bpf: support input __sk_buff context in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] bpftool: show btf id in program information (Yauheni Kaliuta) [1747615] - [tools] libbpf: Fix build with gcc-8 (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix crash in XDP socket part with new larger BPF_LOG_BUF_SIZE (Yauheni Kaliuta) [1747615] - [tools] bpf, bpftool: fix a few ubsan warnings (Yauheni Kaliuta) [1747615] - [tools] bpf, selftest: add test cases for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [tools] bpf, selftest: test {rd, wr}only flags and direct value access (Yauheni Kaliuta) [1747615] - [tools] bpf: bpftool support for dumping data/bss/rodata sections (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: add support for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: support global data/bss/rodata sections (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: refactor relocation handling (Yauheni Kaliuta) [1747615] - [tools] bpf: sync {btf, bpf}.h uapi header from tools infrastructure (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow for key-less BTF in array map (Yauheni Kaliuta) [1747615] - [kernel] bpf: kernel side support for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [documentation] bpf: add specification for BTF Var and DataSec kinds (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow . char as part of the object name (Yauheni Kaliuta) [1747615] - [kernel] bpf: add syscall side map freeze support (Yauheni Kaliuta) [1747615] - [kernel] bpf: add program side {rd, wr}only support for maps (Yauheni Kaliuta) [1747615] - [kernel] bpf: do not retain flags that are not tied to map lifetime (Yauheni Kaliuta) [1747615] - [kernel] bpf: implement lookup-free direct value access for maps (Yauheni Kaliuta) [1747615] - [net] ipv6: Add neighbor helpers that use the ipv6 stub (Yauheni Kaliuta) [1747615] - [tools] libbpf: Ignore -Wformat-nonliteral warning (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add missed newline in verifier verbose log (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test unbounded var_off stack access (Yauheni Kaliuta) [1747615] - [kernel] bpf: Sanity check max value for var_off stack access (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test indirect var_off stack access in unpriv mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: Reject indirect var_off stack access in unpriv mode (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test indirect var_off stack access in raw mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: Reject indirect var_off stack access in raw mode (Yauheni Kaliuta) [1747615] - [samples] bpf: fix build with new clang (Yauheni Kaliuta) [1747615] - [samples] selftests/bpf: add NULL check for ksym_search (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: ksym_search won't check symbols exists (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: synthetic tests to push verifier limits (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add few verifier scale tests (Yauheni Kaliuta) [1747615] - [tools] libbpf: teach libbpf about log_level bit 2 (Yauheni Kaliuta) [1747615] - [kernel] bpf: increase verifier log limit (Yauheni Kaliuta) [1747615] - [kernel] bpf: increase complexity limit and maximum program size (Yauheni Kaliuta) [1747615] - [kernel] bpf: verbose jump offset overflow check (Yauheni Kaliuta) [1747615] - [kernel] bpf: convert temp arrays to kvcalloc (Yauheni Kaliuta) [1747615] - [kernel] bpf: improve verification speed by not remarking live_read (Yauheni Kaliuta) [1747615] - [kernel] bpf: improve verification speed by droping states (Yauheni Kaliuta) [1747615] - [kernel] bpf: add verifier stats and log_level bit 2 (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: remove duplicate .flags initialization in ctx_skb.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix -Wformat-invalid-specifier for bpf_obj_id.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix -Wformat-security warning for flow_dissector_load.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: tests.h should depend on .c files, not the output (Yauheni Kaliuta) [1747615] - [tools] bpf: add bpffs multi-dimensional array tests in test_btf (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test variable offset stack access (Yauheni Kaliuta) [1747615] - [kernel] bpf: Support variable offset stack access from helpers (Yauheni Kaliuta) [1747615] - [net] ipv6: Move ipv6 stubs to a separate header file (Yauheni Kaliuta) [1747615] - [tools] bpf: generate pkg-config file for libbpf (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: don't depend on hardcoded perf sample_freq (Yauheni Kaliuta) [1747615] - [tools] bpf: test_tc_tunnel.sh needs reverse path filtering disabled (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: tc-bpf flow shaping with EDT (Yauheni Kaliuta) [1747615] - [net] bpf: make bpf_skb_ecn_set_ce callable from BPF_PROG_TYPE_SCHED_ACT (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to encap modes (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to BPF_F_ADJ_ROOM_FIXED_GSO (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to BPF_ADJ_ROOM_MAC (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room encap flags (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_FIXED_GSO (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room mode BPF_ADJ_ROOM_MAC (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: extend bpf tunnel test with tso (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: extend bpf tunnel test with gre (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand bpf tunnel test to ipv6 (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand bpf tunnel test with decap (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: bpf tunnel encap test (Yauheni Kaliuta) [1747615] - [net] bpf: in bpf_skb_adjust_room avoid copy in tx fast path (Yauheni Kaliuta) [1747615] - [samples] bpf: add xdp_sample_pkts to .gitignore (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add tests for bpf_tcp_check_syncookie and bpf_skc_lookup_tcp (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: test references to sock_common (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: allow specifying helper for BPF_SK_LOOKUP (Yauheni Kaliuta) [1747615] - [tools] update uapi/linux/bpf.h (Yauheni Kaliuta) [1747615] - [net] bpf: add helper to check for a valid SYN cookie (Yauheni Kaliuta) [1747615] - [net] bpf: add skc_lookup_tcp helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow helpers to return PTR_TO_SOCK_COMMON (Yauheni Kaliuta) [1747615] - [kernel] bpf: track references based on is_acquire_func (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Add arm target register definitions (Yauheni Kaliuta) [1747615] - [documentation] bpf, doc: add RISC-V JIT to BPF documentation (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1747615] - [uapi] bpf: add documentation for helpers bpf_spin_lock(), bpf_spin_unlock() (Yauheni Kaliuta) [1747615]- [perf] perf: Add CCPI2 PMU support in ThunderX2 UNCORE driver (Robert Richter) [1726054] - [documentation] documentation: perf: Update documentation for ThunderX2 PMU uncore driver (Robert Richter) [1726054] - [scsi] lpfc: Update lpfc version to 12.6.0.2 (Dick Kennedy) [1771674] - [scsi] lpfc: revise nvme max queues to be hdwq count (Dick Kennedy) [1771674] - [scsi] lpfc: Initialize cpu_map for not present cpus (Dick Kennedy) [1771674] - [scsi] lpfc: fix inlining of lpfc_sli4_cleanup_poll_list() (Dick Kennedy) [1771674] - [scsi] lpfc: fix: coverity: lpfc_cmpl_els_rsp(): Null pointer dereferences (Dick Kennedy) [1771674] - [scsi] lpfc: fix: coverity: lpfc_get_scsi_buf_s3(): Null pointer dereferences (Dick Kennedy) [1771674] - [scsi] lpfc: Fix lpfc_cpumask_of_node_init() (Dick Kennedy) [1771674] - [scsi] lpfc: Fix a kernel warning triggered by lpfc_sli4_enable_intr() (Dick Kennedy) [1771674] - [scsi] lpfc: Fix a kernel warning triggered by lpfc_get_sgl_per_hdwq() (Dick Kennedy) [1771674] - [scsi] lpfc: Update lpfc version to 12.6.0.1 (Dick Kennedy) [1771674] - [scsi] lpfc: Add enablement of multiple adapter dumps (Dick Kennedy) [1771674] - [scsi] lpfc: Change default IRQ model on AMD architectures (Dick Kennedy) [1771674] - [scsi] lpfc: Add registration for CPU Offline/Online events (Dick Kennedy) [1771674] - [scsi] lpfc: Clarify FAWNN error message (Dick Kennedy) [1771674] - [scsi] lpfc: Sync with FC-NVMe-2 SLER change to require Conf with SLER (Dick Kennedy) [1771674] - [scsi] lpfc: Fix dynamic fw log enablement check (Dick Kennedy) [1771674] - [scsi] lpfc: Fix unexpected error messages during RSCN handling (Dick Kennedy) [1771674] - [scsi] lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port bounce (Dick Kennedy) [1771674] - [scsi] lpfc: Fix configuration of BB credit recovery in service parameters (Dick Kennedy) [1771674] - [scsi] lpfc: Fix duplicate unreg_rpi error in port offline flow (Dick Kennedy) [1771674] - [infiniband] ib/srp: Add missing new line after displaying fast_io_fail_tmo param (Kamal Heib) [1678461 1720899] - [net] sunrpc: The RDMA back channel mustn't disappear while requests are outstanding (Kamal Heib) [1720899] - [infiniband] rdma/nldev: Skip counter if port doesn't match (Kamal Heib) [1720899] - [rdma] uverbs: Prevent potential underflow (Kamal Heib) [1720899] - [infiniband] ib/core: Use rdma_read_gid_l2_fields to compare GID L2 fields (Kamal Heib) [1720899] - [infiniband] rdma/siw: free siw_base_qp in kref release routine (Kamal Heib) [1720899] - [infiniband] rdma/iwcm: move iw_rem_ref() calls out of spinlock (Kamal Heib) [1720899] - [infiniband] ib/core: Fix wrong iterating on ports (Kamal Heib) [1720899] - [infiniband] rdma/nldev: Reshuffle the code to avoid need to rebind QP in error path (Kamal Heib) [1720899] - [infiniband] rdma/cm: Fix memory leak in cm_add/remove_one (Kamal Heib) [1720899] - [infiniband] rdma/core: Fix an error handling path in 'res_get_common_doit()' (Kamal Heib) [1720899] - [infiniband] rdma/iwcm: Fix a lock inversion issue (Kamal Heib) [1720899] - [infiniband] rdma/siw: Fix serialization issue in write_space() (Kamal Heib) [1720899] - [infiniband] rdma/vmw_pvrdma: Free SRQ only once (Kamal Heib) [1757294 1720899] - [infiniband] rdma: Fix double-free in srq creation error flow (Kamal Heib) [1720899] - [infiniband] rdma/siw: Fix page address mapping in TX path (Kamal Heib) [1720899] - [infiniband] rdma/cma: Fix false error message (Kamal Heib) [1720899] - [infiniband] rdma/{cxgb3, cxgb4, i40iw}: Remove common code (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/core: Fix use after free and refcnt leak on ndev in_device in iwarp_query_port (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/core: Add common iWARP query port (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/i40iw: Associate ibdev to netdev before IB device registration (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/cxgb3: Use ib_device_set_netdev() (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma: Introduce ib_port_phys_state enum (Kamal Heib) [1760097 1745655 1720899] - [sched] topology: Improve load balancing on AMD EPYC systems (Phil Auld) [1757535] - [netdrv] broadcom: Use dev_get_drvdata (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add a new BNXT_FW_RESET_STATE_POLL_FW_DOWN state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.100 (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Increase timeout for HWRM_DBG_COREDUMP_XX commands (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Don't proceed in .ndo_set_rx_mode() when device is not in open state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix compile error regression with CONFIG_BNXT_SRIOV not set (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add FW fatal devlink_health_reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add bnxt_fw_exception() to handle fatal firmware errors (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add RESET_FW state logic to bnxt_fw_reset_task() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Do not send firmware messages if firmware is in error state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Retain user settings on a VF after RESET_NOTIFY event (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add devlink health reset reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle firmware reset (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle RESET_NOTIFY async event from firmware (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add new FW devlink_health_reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add BNXT_STATE_IN_FW_RESET state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Enable health monitoring (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Pre-map the firmware health monitoring registers (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Discover firmware error recovery capabilities (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle firmware reset status during IF_UP (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Register buffers for VFs before reserving resources (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_sriov_enable() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Prepare bnxt_init_one() to be called multiple times (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Suppress all error messages in hwrm_do_send_msg() in silent mode (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Simplify error checking in the SR-IOV message forwarding functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Convert error code in firmware message response to standard code (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Remove the -1 error return code from bnxt_hwrm_do_send_msg() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Use a common function to print the same ethtool -f error message (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix allocation of zero statistics block size regression (Jonathan Toppins) [1724766] - [netdrv] bnxt: no need to check return value of debugfs_create functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add PCI IDs for 57500 series NPAR devices (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Support all variants of the 5750X chip family (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_init_one() and turn on TPA support on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Support TPA counters on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Allocate the larger per-ring statistics block for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor ethtool ring statistics logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add hardware GRO setup function for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add TPA ID mapping logic for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add fast path logic for TPA on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Set TPA GRO mode flags on 57500 chips properly (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor tunneled hardware GRO logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle standalone RX_AGG completions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Expand bnxt_tpa_info struct to support 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor TPA logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add TPA structure definitions for BCM57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.89 (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Suppress HWRM errors for HWRM_NVM_GET_VARIABLE command (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix to include flow direction in L2 key (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Use correct src_fid to determine direction of the flow (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix handling FRAG_ERR when NVM_INSTALL_UPDATE cmd fails (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Improve RX doorbell sequence (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix VNIC clearing logic for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix VNIC accounting when enabling aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add page_pool_destroy() during RX ring cleanup (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: add page_pool support (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: optimized XDP_REDIRECT support (Jonathan Toppins) [1724766 1669220] - [netdrv] bnxt_en: Refactor __bnxt_xmit_xdp() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: rename some xdp functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Device serial number is supported only for PFs (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add support for aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Query firmware capability to support aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Separate RDMA MR/AH context allocation (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: read the clause type from the PHY ID (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Read package version from firmware (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Check new firmware capability to display extended stats (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add support for PCIe statistics (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_alloc_stats() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface to 1.10.0.69 (Jonathan Toppins) [1724766] - [netdrv] bnxt: remove ndo_get_port_parent_id implementation for physical ports (Jonathan Toppins) [1724766] - [netdrv] bnxt: pass switch ID through devlink_port_attrs_set() (Jonathan Toppins) [1724766] - [netdrv] bnxt: move bp->switch_id initialization to PF probe (Jonathan Toppins) [1724766] - [netdrv] bnxt: remove ndo_get_phys_port_name implementation (Jonathan Toppins) [1724766] - [netdrv] bnxt: implement ndo_get_devlink_port (Jonathan Toppins) [1724766] - [netdrv] bnxt: Implement ndo_get_port_parent_id() (Jonathan Toppins) [1724766] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix firmware signaled resource change logic in open (Jonathan Toppins) [1724766] - [netdrv] bnx2x: Mark expected switch fall-thoughs (Jonathan Toppins) [1724766] - [netdrv] bnx2x: Mark expected switch fall-throughs (Jonathan Toppins) [1724766] - [tools] selftests: kvm: vmx_dirty_log_test: skip the test when VMX is not supported (Vitaly Kuznetsov) [1771575] - [tools] selftests: kvm: consolidate VMX support checks (Vitaly Kuznetsov) [1771575] - [tools] selftests: kvm: vmx_set_nested_state_test: don't check for VMX support twice (Vitaly Kuznetsov) [1771575] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Stefano Garzarella) [1769904] - [net] vsock: Send reset control packet when socket is partially bound (Stefano Garzarella) [1769904] - [net] vsock/virtio: fix sock refcnt holding during the shutdown (Stefano Garzarella) [1769855] - [kernel] vsock/virtio: remove unused 'work' field from 'struct virtio_vsock_pkt' (Stefano Garzarella) [1769855] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 482 (Stefano Garzarella) [1769855] - [net] vsock/virtio: set SOCK_DONE on peer shutdown (Stefano Garzarella) [1769855] - [net] vsock/virtio: discard packets if credit is not respected (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: send a credit update when buffer size is changed (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: a better comment on credit update (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: fix locking in virtio_transport_inc_tx_pkt() (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: reduce credit update messages (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: change the maximum packet size allowed (Stefano Garzarella) [1679971] - [vhost] vsock: split packets to send using multiple buffers (Stefano Garzarella) [1679971] - [net] vsock/virtio: limit the memory used per-socket (Stefano Garzarella) [1769744] - [net] vsock/virtio: free packets during the socket release (Stefano Garzarella) [1769744] - [net] vsock: Fix a lockdep warning in __vsock_release() (Stefano Garzarella) [1769714] - [net] vsock: correct removal of socket from the list (Stefano Garzarella) [1769714] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Stefano Garzarella) [1769714] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Stefano Garzarella) [1769714] - [net] Fix ERROR:do not initialise statics to 0 in af_vsock.c (Stefano Garzarella) [1769714] - [net] vsock: bind to random port for VMADDR_PORT_ANY (Stefano Garzarella) [1769714] - [tools] tc-testing: added tests with cookie for conntrack TC action (Ivan Vecera) [1739606] - [net] cls_bpf: fix NULL deref on offload filter removal (Ivan Vecera) [1739606] - [tools] tc-testing: fixed two failing pedit tests (Ivan Vecera) [1739606] - [tools] tc-testing: implement tests for new fast_init action flag (Ivan Vecera) [1739606] - [net] sched: update action implementations to support flags (Ivan Vecera) [1739606] - [net] sched: use temporary variable for actions indexes (Ivan Vecera) [1739606] - [net] sched: extend TCA_ACT space with TCA_ACT_FLAGS (Ivan Vecera) [1739606] - [net] sched: modify stats helper functions to support regular stats (Ivan Vecera) [1739606] - [net] sched: don't expose action qstats to skb_tc_reinsert() (Ivan Vecera) [1739606] - [net] sched: extract qstats update code into functions (Ivan Vecera) [1739606] - [net] sched: extract bstats update code into function (Ivan Vecera) [1739606] - [net] sched: extract common action counters update code into function (Ivan Vecera) [1739606] - [tools] tc-testing: list required kernel options for act_ct action (Ivan Vecera) [1739606] - [net] fq_codel: do not include (Ivan Vecera) [1739606] - [net] sch_generic: Use pfifo_fast as fallback scheduler for CAN hardware (Ivan Vecera) [1739606] - [net] sched: taprio: fix -Wmissing-prototypes warnings (Ivan Vecera) [1739606] - [net] sched: act_police: re-use tcf_tm_dump() (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit TDC tests (Ivan Vecera) [1739606] - [net] sched: Avoid using yield() in a busy waiting loop (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit test cases (Ivan Vecera) [1739606] - [net] sched: etf: Fix ordering of packets with same txtime (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit test cases (Ivan Vecera) [1739606] - [net] taprio: Fix returning EINVAL when configuring without flags (Ivan Vecera) [1739606] - [net] net_sched: fix backward compatibility for TCA_ACT_KIND (Ivan Vecera) [1739606] - [net] net_sched: fix backward compatibility for TCA_KIND (Ivan Vecera) [1739606] - [net] sched: Set default of CONFIG_NET_TC_SKB_EXT to N (Ivan Vecera) [1739606] - [net] sch_netem: fix rcu splat in netem_enqueue() (Ivan Vecera) [1739606] - [net] net_sched: remove need_resched() from qdisc_run() (Ivan Vecera) [1739606] - [net] sched: cbs: Avoid division by zero when calculating the port rate (Ivan Vecera) [1739606] - [net] sched: taprio: Avoid division by zero on invalid link speed (Ivan Vecera) [1739606] - [net] sched: taprio: Fix potential integer overflow in taprio_set_picos_per_byte (Ivan Vecera) [1739606] - [net] sched: cbs: Fix not adding cbs instance to list (Ivan Vecera) [1739606] - [net] Fix Kconfig indentation (Ivan Vecera) [1739606] - [net] net_sched: add policy validation for action attributes (Ivan Vecera) [1739606] - [net] net_sched: add max len check for TCA_KIND (Ivan Vecera) [1739606] - [net] taprio: Add support for hardware offloading (Ivan Vecera) [1739606] - [net] sched: use get_dev() action API in flow_action infra (Ivan Vecera) [1739606] - [net] sched: take reference to psample group in flow_action infra (Ivan Vecera) [1739606] - [net] sched: extend flow_action_entry with destructor (Ivan Vecera) [1739606] - [net] sch_hhf: ensure quantum and hhf_non_hh_weight are non-zero (Ivan Vecera) [1739606] - [net] net_sched: check cops->tcf_block in tc_bind_tclass() (Ivan Vecera) [1739606] - [net] sched: fix reordering issues (Ivan Vecera) [1739606] - [net] net_sched: act_police: add 2 new attributes to support police 64bit rate and peakrate (Ivan Vecera) [1739606] - [net] openvswitch: Set OvS recirc_id from tc chain index (Ivan Vecera) [1739606] - [net] sk_buff: drop all skb extensions on free and skb scrubbing (Ivan Vecera) [1739606] - [net] minor cleanup in skb_ext_add() (Ivan Vecera) [1739606] - [include] net: drop the unused helper skb_ext_get() (Ivan Vecera) [1739606] - [net] fix possible user-after-free in skb_ext_add() (Ivan Vecera) [1739606] - [net] sk_buff: add skb extension infrastructure (Ivan Vecera) [1739606] - [net] sched: cbs: remove redundant assignment to variable port_rate (Ivan Vecera) [1739606] - [tools] tc-testing: don't hardcode 'ip' in nsPlugin.py (Ivan Vecera) [1739606] - [net] sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate (Ivan Vecera) [1739606] - [net] taprio: Set default link speed to 10 Mbps in taprio_set_picos_per_byte (Ivan Vecera) [1739606] - [net] taprio: Fix kernel panic in taprio_destroy (Ivan Vecera) [1739606] - [netdrv] mlx5e: Move local var definition into ifdef block (Ivan Vecera) [1739606] - [net] sched: cls_matchall: cleanup flow_action before deallocating (Ivan Vecera) [1739606] - [net] sched: act_vlan: implement stats_update callback (Ivan Vecera) [1739606] - [net] sched: act_sample: fix psample group handling on overwrite (Ivan Vecera) [1739606] - [net] sched: flower: don't take rtnl lock for cls hw offloads API (Ivan Vecera) [1739606] - [net] sched: copy tunnel info when setting flow_action entry->tunnel (Ivan Vecera) [1739606] - [net] sched: take reference to action dev before calling offloads (Ivan Vecera) [1739606] - [net] sched: take rtnl lock in tc_setup_flow_action() (Ivan Vecera) [1739606] - [net] sched: conditionally obtain rtnl lock in cls hw offloads API (Ivan Vecera) [1739606] - [net] sched: add API for registering unlocked offload block callbacks (Ivan Vecera) [1739606] - [net] sched: notify classifier on successful offload add/delete (Ivan Vecera) [1739606] - [net] sched: refactor block offloads counter usage (Ivan Vecera) [1739606] - [net] sched: change tcf block offload counter type to atomic_t (Ivan Vecera) [1739606] - [net] sched: protect block offload-related fields with rw_semaphore (Ivan Vecera) [1739606] - [net] net_sched: fix a NULL pointer deref in ipt action (Ivan Vecera) [1739606] - [tools] tc-testing: concurrency: wrap piped rule update commands (Ivan Vecera) [1739606] - [tools] tc-testing: use dedicated DUMMY interface name for dummy dev (Ivan Vecera) [1739606] - [net] flow_offload: convert block_ing_cb_list to regular list type (Ivan Vecera) [1739606] - [netdrv] sched: use major priority number as hardware priority (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for matchall filter (Ivan Vecera) [1739606] - [net] taprio: remove unused variable 'entry_list_policy' (Ivan Vecera) [1739606] - [tools] tc-testing: updated skbedit action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update skbedit action for batched events operations (Ivan Vecera) [1739606] - [net] fq_codel: remove set but not used variables 'prev_ecn_mark' and 'prev_drop_count' (Ivan Vecera) [1739606] - [net] flow_offload: support get multi-subsystem block (Ivan Vecera) [1739606] - [net] flow_offload: move tc indirect block to flow offload (Ivan Vecera) [1739606] - [net] cls_api: add flow_indr_block_call function (Ivan Vecera) [1739606] - [net] cls_api: remove the tcf_block cache (Ivan Vecera) [1739606] - [net] cls_api: modify the tc_indr_block_ing_cmd parameters. (Ivan Vecera) [1739606] - [net] sched: sch_taprio: fix memleak in error path for sched list parse (Ivan Vecera) [1739606] - [net] fq_codel: Kill useless per-flow dropped statistic (Ivan Vecera) [1739606] - [net] Increase fq_codel count in the bulk dropper (Ivan Vecera) [1739606] - [include] sched: sample: allow accessing psample_group with rtnl (Ivan Vecera) [1739606] - [tools] tc-testing: updated vlan action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update vlan action for batched events operations (Ivan Vecera) [1739606] - [tools] tc-testing: Clarify the use of tdc's -d option (Ivan Vecera) [1739606] - [net] sched: Fix a possible null-pointer dereference in dequeue_func() (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for [b|p]fifo qdisc (Ivan Vecera) [1739606] - [net] ife: error out when nla attributes are empty (Ivan Vecera) [1739606] - [net] sched: verify that q!=NULL before setting q->flags (Ivan Vecera) [1739606] - [net] net_sched: unset TCQ_F_CAN_BYPASS when adding filters (Ivan Vecera) [1739606] - [net] fix: taprio: Change type of txtime-delay parameter to u32 (Ivan Vecera) [1739606] - [tools] tc-tests: updated skbedit tests (Ivan Vecera) [1739606] - [include] pkt_sched: Include const.h (Ivan Vecera) [1739606] - [tools] tc-testing: introduce scapyPlugin for basic traffic (Ivan Vecera) [1739606] - [tools] tc-testing: Allow tdc plugins to see test case data (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for prio qdisc (Ivan Vecera) [1739606] - [tools] tc-testing: updated mirred action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update mirred action for batched events operations (Ivan Vecera) [1739606] - [net] sched: em_ipt: add support for addrtype matching (Ivan Vecera) [1739606] - [net] sched: em_ipt: keep the user-specified nfproto and dump it (Ivan Vecera) [1739606] - [net] sched: em_ipt: set the family based on the packet if it's unspecified (Ivan Vecera) [1739606] - [net] sched: em_ipt: match only on ip/ipv6 traffic (Ivan Vecera) [1739606] - [net] taprio: Adjust timestamps for TCP packets (Ivan Vecera) [1739606] - [net] taprio: make clock reference conversions easier (Ivan Vecera) [1739606] - [net] taprio: Add support for txtime-assist mode (Ivan Vecera) [1739606] - [net] taprio: Remove inline directive (Ivan Vecera) [1739606] - [net] taprio: calculate cycle_time when schedule is installed (Ivan Vecera) [1739606] - [net] etf: Add skip_sock_check (Ivan Vecera) [1739606] - [include] etf: Don't use BIT() in UAPI headers. (Ivan Vecera) [1739606] - [tools] tc-testing: add ingress qdisc tests (Ivan Vecera) [1739606] - [tools] tc-testing: Restore original behaviour for namespaces in tdc (Ivan Vecera) [1739606] - [include] net: sched: act_ctinfo: tidy UAPI definition (Ivan Vecera) [1739606] - [include] act_ctinfo: Don't use BIT() in UAPI headers. (Ivan Vecera) [1739606] - [net] sched: cls_matchall: allow to delete filter (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: fix policy validation (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: fix action creation (Ivan Vecera) [1739606] - [tools] tc-tests: updated skbedit tests (Ivan Vecera) [1739606] - [tools] tc-tests: added path to ip command in tdc (Ivan Vecera) [1739606] - [net] sched: remove NET_CLS_IND config option (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: use extack error reporting (Ivan Vecera) [1739606] - [net] sched: ingress: set 'unlocked' flag for clsact Qdisc ops (Ivan Vecera) [1739606] - [net] sched: ingress: set 'unlocked' flag for Qdisc ops (Ivan Vecera) [1739606] - [tools] tc-tests: updated fw with bind actions by reference use cases (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: minor size optimisation (Ivan Vecera) [1739606] - [net] flow_offload: use struct_size() in kzalloc() (Ivan Vecera) [1739606] - [net] sched: don't use tc_action->order during action dump (Ivan Vecera) [1739606] - [net] sch_htb: redefine htb qdisc overlimits (Ivan Vecera) [1739606] - [tools] selftests: tc-testing: Add pedit tests (Ivan Vecera) [1739606] - [net] sched: add ingress mirred action to hardware IR (Ivan Vecera) [1757520] - [include] net: tc_act: add helpers to detect ingress mirred actions (Ivan Vecera) [1757520] - [net] sched: add skbedit of ptype action to hardware IR (Ivan Vecera) [1757520] - [include] net: tc_act: add skbedit_ptype helper functions (Ivan Vecera) [1757520] - [net] openvswitch: load and reference the NAT helper. (Flavio Leitner) [1752970] - [net] openvswitch: load NAT helper (Flavio Leitner) [1752970] - [net] netfilter: nf_nat: register NAT helpers. (Flavio Leitner) [1752970] - [net] netfilter: add API to manage NAT helpers. (Flavio Leitner) [1752970] - [net] netfilter: use macros to create module aliases. (Flavio Leitner) [1752970] - [net] xfrm: remove a duplicated assignment (Sabrina Dubroca) [1760002] - [net] xfrm: remove empty xfrmi_init_net (Sabrina Dubroca) [1760002] - [net] xfrm: remove unneeded export_symbols (Sabrina Dubroca) [1760002] - [include] xfrm: clean an indentation issue, remove a space (Sabrina Dubroca) [1760002] - [net] xfrm6: remove BUG_ON from xfrm6_dst_ifdown (Sabrina Dubroca) [1760002] - [net] xfrm: policy: add missing indentation (Sabrina Dubroca) [1760002] - [net] xfrm: Fix bucket count reported to userspace (Sabrina Dubroca) [1760002] - [net] xfrm: use complete IPv6 addresses for hash (Sabrina Dubroca) [1760002] - [net] xfrm: use correct size to initialise sp->ovec (Sabrina Dubroca) [1760002] - [net] xfrm: allow driver to quietly refuse offload (Sabrina Dubroca) [1760002] - [net] esp: remove redundant define esph (Sabrina Dubroca) [1760002] - [net] ip6_vti: simplify stats handling in vti6_xmit (Sabrina Dubroca) [1760002] - [net] xfrm: fix 'passing zero to ERR_PTR()' warning (Sabrina Dubroca) [1760002] - [net] xfrm: remove blank lines at EOF (Sabrina Dubroca) [1760002] - [net] xfrm: don't check offload_handle for nonzero (Sabrina Dubroca) [1760002] - [net] ipv6: xfrm: use 64-bit timestamps (Sabrina Dubroca) [1760002] - [net] devlink: Introduce PCI VF port flavour and port attribute (Petr Oros) [1761495] - [net] devlink: Introduce PCI PF port flavour and port attribute (Petr Oros) [1761495] - [net] devlink: Return physical port fields only for applicable port flavours (Petr Oros) [1761495] - [net] devlink: Refactor physical port attributes (Petr Oros) [1761495] - [net] ipv4: fix race condition between route lookup and invalidation (Guillaume Nault) [1765639] - [net] add {READ|WRITE}_ONCE() annotations on ->rskq_accept_head (Guillaume Nault) [1765639] - [net] ipv4/icmp: fix rt dst dev null pointer dereference (Guillaume Nault) [1765639] - [net] ipip: validate header length in ipip_tunnel_xmit (Guillaume Nault) [1765639] - [net] ipv4: Use return value of inet_iif() for __raw_v4_lookup in the while loop (Guillaume Nault) [1765639] - [net] ipv4: Fix raw socket lookup for local traffic (Guillaume Nault) [1765639] - [net] ipv4: Return error for RTA_VIA attribute (Guillaume Nault) [1765639] - [net] ipmr: fix unresolved entry dumps (Guillaume Nault) [1765639] - [net] ipvs: don't ignore errors in case refcounting ip_vs module fails (Davide Caratti) [1687094] - [net] ipvs: fix tinfo memory leak in start_sync_thread (Davide Caratti) [1687094] - [net] tcp: fix a possible lockdep splat in tcp_done() (Marcelo Leitner) [1764654] - [net] tcp: add rcu protection around tp->fastopen_rsk (Marcelo Leitner) [1764654] - [net] tcp: annotate lockless access to tcp_memory_pressure (Marcelo Leitner) [1764654] - [net] tcp: fix tcp_ecn_withdraw_cwr() to clear TCP_ECN_QUEUE_CWR (Marcelo Leitner) [1764654] - [net] tcp: inherit timestamp on mtu probe (Marcelo Leitner) [1764654] - [net] tcp: remove empty skb from write queue in error cases (Marcelo Leitner) [1764654] - [net] tcp: get rid of tcp_check_send_head() (Marcelo Leitner) [1764654] - [net] tcp: make sure EPOLLOUT wont be missed (Marcelo Leitner) [1764654] - [net] ipv4: set the tcp_min_rtt_wlen range from 0 to one day (Marcelo Leitner) [1764654] - [net] net-tcp: /proc/sys/net/ipv4/tcp_probe_interval is a u32 not int (Marcelo Leitner) [1764654] - [net] tcp: fix a race in inet_diag_dump_icsk() (Marcelo Leitner) [1764654] - [net] netfilter: nft_meta: Add NFT_META_I/OIFKIND meta type (Florian Westphal) [1763657] - [net] netfilter: nft_xfrm: use state family, not hook one (Florian Westphal) [1763654] - [net] netfilter: nf_tables: add xfrm expression (Florian Westphal) [1763654] - [net] netfilter: nf_tables: rt: allow checking if dst has xfrm attached (Florian Westphal) [1763654] - [netdrv] mlx5e: Fix unnecessary flow_block_cb_is_busy call (Ivan Vecera) [1737890] - [netdrv] nfp: flower: verify that block cb is not busy before binding (Ivan Vecera) [1737890] - [netdrv] net/mlx5e: Provide cb_list pointer when setting up tc block on rep (Ivan Vecera) [1737890] - [net] sched: Fix NULL-pointer dereference in tc_indr_block_ing_cmd() (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block structure and use it (Ivan Vecera) [1737890] - [net] flow_offload: rename tc_setup_cb_t to flow_setup_cb_t (Ivan Vecera) [1737890] - [include] flow_offload: include linux/kernel.h from flow_offload.h (Ivan Vecera) [1737890] - [net] flow_offload: remove netns parameter from flow_block_cb_alloc() (Ivan Vecera) [1737890] - [net] openvswitch: rename flow_stats to sw_flow_stats (Ivan Vecera) [1737890] - [netdrv] mlx5e: Fix unused variable warning when CONFIG_MLX5_ESWITCH is off (Ivan Vecera) [1737890] - [netdrv] net: flow_offload: rename tc_cls_flower_offload to flow_cls_offload (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_is_busy() and use it (Ivan Vecera) [1737890] - [net] sched: remove tcf block API (Ivan Vecera) [1737890] - [include] sched: use new symbol for TC kABI version (Ivan Vecera) [1737890] - [netdrv] use flow block API (Ivan Vecera) [1737890] - [net] sched: use flow block API (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_{priv, incref, decref}() (Ivan Vecera) [1737890] - [net] flow_offload: add list handling functions (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_alloc() and flow_block_cb_free() (Ivan Vecera) [1737890] - [net] flow_offload: rename TCF_BLOCK_BINDER_TYPE_* to FLOW_BLOCK_BINDER_TYPE_* (Ivan Vecera) [1737890] - [net] flow_offload: rename TC_BLOCK_{UN}BIND to FLOW_BLOCK_{UN}BIND (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_setup_simple() (Ivan Vecera) [1737890] - [net] openvswitch: free vport unless register_netdevice() succeeds (Stefano Brivio) [1765580] - [net] openvswitch: Clear the L4 portion of the key for "later" fragments. (Stefano Brivio) [1765580] - [net] openvswitch: Properly set L4 keys on "later" IP fragments (Stefano Brivio) [1765580] - [net] openvswitch: Print error when ovs_execute_actions() fails (Stefano Brivio) [1765580] - [net] openvswitch: do not free vport if register_netdevice() is failed. (Stefano Brivio) [1765580] - [net] xfrm: policy: remove pcpu policy cache (Xin Long) [1743519] - [net] netem: correct the parent's backlog when corrupted packet was dropped (Davide Caratti) [1764553] - [net] netem: fix error path for corrupted GSO frames (Davide Caratti) [1764553] - [net] avoid potential infinite loop in tc_ctl_action() (Davide Caratti) [1764553] - [net] act_mirred: Fix mirred_init_module error handling (Davide Caratti) [1764553] - [net] sch_dsmark: fix potential NULL deref in dsmark_init() (Davide Caratti) [1764553] - [net] sch_cbq: validate TCA_CBQ_WRROPT to avoid crash (Davide Caratti) [1764553] - [net] sched: sch_sfb: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: multiq: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: sch_htb: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: fix possible crash in tcf_action_destroy() (Davide Caratti) [1764553] - [net] sch_netem: fix a divide by zero in tabledist() (Davide Caratti) [1764553] - [net] sched: act_sample: don't push mac header on ip6gre ingress (Davide Caratti) [1764553] - [net] net_sched: let qdisc_put() accept NULL pointer (Davide Caratti) [1764553] - [net] tcp: adjust rto_base in retransmits_timed_out() (Marcelo Leitner) [1756775] - [net] tcp: better handle TCP_USER_TIMEOUT in SYN_SENT state (Marcelo Leitner) [1756775] - [include] netlink: use 48 byte ctx instead of 6 signed longs for callback (Petr Oros) [1751273] - [net] rtnetlink: skip metrics loop for dst_default_metrics (Petr Oros) [1751273] - [include] netlink: Add field to skip in-kernel notifications (Petr Oros) [1751273] - [include] netlink: Document all fields of 'struct nl_info' (Petr Oros) [1751273] - [net] ipoib: show VF broadcast address (Petr Oros) [1751273] - [net] remove empty netlink_tap_exit_net (Petr Oros) [1751273] - [net] netlink: make netlink_walk_start() void return type (Petr Oros) [1751273] - [include] net: nexthop uapi (Petr Oros) [1751273] - [net] Treat sock->sk_drops as an unsigned int when printing (Petr Oros) [1751273] - [net] fix two coding style issues (Petr Oros) [1751273] - [net] ipset: drop ipset_nest_start() and ipset_nest_end() (Petr Oros) [1751273] - [net] netlink: make nla_nest_start() add NLA_F_NESTED flag (Petr Oros) [1751273] - [net] netfilter: nf_tables: fix a missing check of nla_put_failure (Petr Oros) [1751273] - [net] ncsi: fix a missing check for nla_nest_start (Petr Oros) [1751273] - [net] genetlink: use idr_alloc_cyclic for family->id assignment (Petr Oros) [1751273] - [net] netlink: Check address length before reading groups field (Petr Oros) [1751273] - [net] core: Fix rtnetlink kernel-doc headers (Petr Oros) [1751273] - [net] rhashtable: Remove obsolete rhashtable_walk_init function (Petr Oros) [1751273] - [net] netfilter: nf_tables: use rhashtable_walk_enter instead of rhashtable_walk_init (Petr Oros) [1751273] - [net] netlink: reduce NLA_POLICY_NESTED{, _ARRAY} arguments (Petr Oros) [1751273] - [net] netlink: rename NETLINK_DUMP_STRICT_CHK -> NETLINK_GET_STRICT_CHK (Petr Oros) [1751273] - [include] netlink: replace __NLA_ENSURE implementation (Petr Oros) [1751273] - [include] netlink: fix typo in nla_parse_nested() comment (Petr Oros) [1751273] - [net] netlink: remove hash::nelems check in netlink_insert (Petr Oros) [1751273] - [net] netlink: Make groups check less stupid in netlink_bind() (Petr Oros) [1751273] - [include] genetlink: constify genl_err_attr() argument (Petr Oros) [1751273] - [net] netlink: do not store start function in netlink_cb (Petr Oros) [1751273] - [include] linux: Add skb_frag_t page_offset accessors (Petr Oros) [1757515] - [include] net: add missing documentation in linux/skbuff.h (Petr Oros) [1757515] - [net] l2tp: Fix possible NULL pointer dereference (Stefano Brivio) [1764185] - [net] l2ip: fix possible use-after-free (Stefano Brivio) [1764185] - [net] l2tp: use rcu_dereference_sk_user_data() in l2tp_udp_encap_recv() (Stefano Brivio) [1764185] - [net] l2tp: fix infoleak in l2tp_ip6_recvmsg() (Stefano Brivio) [1764185] - [net] l2tp: copy 4 more bytes to linear part if necessary (Stefano Brivio) [1764185] - [net] l2tp: fix reading optional fields of L2TPv3 (Stefano Brivio) [1764185] - [net] l2tp: remove ->recv_payload_hook (Stefano Brivio) [1764185] - [net] l2tp: don't export l2tp_session_queue_purge() (Stefano Brivio) [1764185] - [net] l2tp: remove .show from struct l2tp_tunnel (Stefano Brivio) [1764185] - [netdrv] vxlan: do not destroy fdb if register_netdevice() is failed (Stefano Brivio) [1763793] - [net] ip6erspan: remove the incorrect mtu limit for ip6erspan (Stefano Brivio) [1763286] - [net] ipv6: Handle missing host route in __ipv6_ifa_notify (Stefano Brivio) [1763286] - [net] ipv6: drop incoming packets having a v4mapped source address (Stefano Brivio) [1763286] - [net] ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit (Stefano Brivio) [1763286] - [net] mld: fix memory leak in mld_del_delrec() (Stefano Brivio) [1763286] - [net] ipv6: rt6_check should return NULL if 'from' is NULL (Stefano Brivio) [1763286] - [net] ipv6_sockglue: Fix a missing-check bug in ip6_ra_control() (Stefano Brivio) [1763286] - [net] ipv6_gre: Fix GRO to work on IPv6 over GRE tap (Stefano Brivio) [1763286] - [net] ipv4: Return -ENETUNREACH if we can't create route but saddr is valid (Stefano Brivio) [1686686] - [net] netfilter: nft_connlimit: disable bh on garbage collection (Florian Westphal) [1762844] - [net] netfilter: ebtables: Fix argument order to ADD_COUNTER (Florian Westphal) [1762844] - [net] netfilter: ebtables: CONFIG_COMPAT: reject trailing data after last rule (Florian Westphal) [1762844] - [net] netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON (Florian Westphal) [1762844] - [net] netfilter: bridge: set skb transport_header before entering NF_INET_PRE_ROUTING (Florian Westphal) [1762844] - [net] netfilter: ebtables: also count base chain policies (Florian Westphal) [1762844] - [net] netfilter: ebtables: compat: un-break 32bit setsockopt when no rules are present (Florian Westphal) [1762844] - [net] sctp: change sctp_prot .no_autobind with true (Xin Long) [1762625] - [net] sctp: destroy bucket if failed to bind addr (Xin Long) [1762625] - [net] sctp: remove redundant assignment when call sctp_get_port_local (Xin Long) [1762625] - [net] sctp: change return type of sctp_get_port_local (Xin Long) [1762625] - [net] sctp: Fix the link time qualifier of 'sctp_ctrlsock_exit()' (Xin Long) [1762625] - [net] sctp: fix the missing put_user when dumping transport thresholds (Xin Long) [1762625] - [net] sctp: use transport pf_retrans in sctp_do_8_2_transport_strike (Xin Long) [1762625] - [net] sctp: allow users to set ep ecn flag by sockopt (Xin Long) [1762625] - [net] sctp: allow users to set netns ecn flag with sysctl (Xin Long) [1762625] - [net] sctp: make ecn flag per netns and endpoint (Xin Long) [1762625] - [net] sctp: remove net sctp.x_enable working as a global switch (Xin Long) [1762625] - [net] sctp: add SCTP_AUTH_SUPPORTED sockopt (Xin Long) [1762625] - [net] sctp: add sctp_auth_init and sctp_auth_free (Xin Long) [1762625] - [net] sctp: use ep and asoc auth_enable properly (Xin Long) [1762625] - [net] sctp: add SCTP_ASCONF_SUPPORTED sockopt (Xin Long) [1762625] - [net] sctp: check asoc peer.asconf_capable before processing asconf (Xin Long) [1762625] - [net] sctp: not set peer.asconf_capable in sctp_association_init (Xin Long) [1762625] - [net] sctp: add asconf_enable in struct sctp_endpoint (Xin Long) [1762625] - [net] sctp: fix memleak in sctp_send_reset_streams (Xin Long) [1762625] - [net] sctp: fix the transport error_count check (Xin Long) [1762625] - [net] sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions (Ivan Vecera) [1737820] - [net] avoid errors when trying to pop MLPS header on non-MPLS packets (Ivan Vecera) [1737820] - [net] netfilter: connlabels: prefer static lock initialiser (Ivan Vecera) [1737820] - [net] sched: include mpls actions in hardware intermediate representation (Ivan Vecera) [1737820] - [net] sched: Make NET_ACT_CT depends on NF_NAT (Ivan Vecera) [1737820] - [tools] tc-tests: Add tc action ct tests (Ivan Vecera) [1737820] - [net] sched: cls_flower: Add matching on conntrack info (Ivan Vecera) [1737820] - [net] flow_dissector: add connection tracking dissection (Ivan Vecera) [1737820] - [net] sched: Introduce action ct (Ivan Vecera) [1737820] - [tools] tc-tests: actions: add MPLS tests (Ivan Vecera) [1737820] - [net] sched: add mpls manipulation actions to TC (Ivan Vecera) [1737820] - [net] core: add MPLS update core helper and use in OvS (Ivan Vecera) [1737820] - [net] core: move pop MPLS functionality from OvS to core helper (Ivan Vecera) [1737820] - [net] core: move push MPLS functionality from OvS to core helper (Ivan Vecera) [1737820] - [net] sched: Introduce act_ctinfo action (Ivan Vecera) [1737820] - [netdrv] mlx5e: Allow dissector meta key in tc flower (Ivan Vecera) [1762861] - [tools] selftests: tc: add ingress device matching support (Ivan Vecera) [1762861] - [net] flow_offload: implement support for meta key (Ivan Vecera) [1762861] - [net] sched: cls_flower: use flow_dissector for ingress ifindex (Ivan Vecera) [1762861] - [net] flow_dissector: add support for ingress ifindex dissection (Ivan Vecera) [1762861] - [net] udp: only do GSO if # of segs > 1 (Guillaume Nault) [1762357] - [net] udp: fix gso_segs calculations (Guillaume Nault) [1762357] - [tools] selftests: rtnetlink: add small test case with 'promote_secondaries' enabled (Petr Oros) [1759177] - [net] ipv4: fix infinite loop on secondary addr promotion (Petr Oros) [1759177] - [tools] selftests: rtnetlink: add addresses with fixed life time (Petr Oros) [1759177] - [net] ipv4: remove erroneous advancement of list pointer (Petr Oros) [1759177] - [net] ipv4: fix rcu lockdep splat due to wrong annotation (Petr Oros) [1759177] - [net] ipv4: provide __rcu annotation for ifa_list (Petr Oros) [1759177] - [drivers] use in_dev_for_each_ifa_rtnl/rcu (Petr Oros) [1759177] - [net] use new in_dev_ifa iterators (Petr Oros) [1759177] - [net] netfilter: use in_dev_for_each_ifa_rcu (Petr Oros) [1759177] - [net] devinet: use in_dev_for_each_ifa_rcu in more places (Petr Oros) [1759177] - [net] inetdevice: provide replacement iterators for in_ifaddr walk (Petr Oros) [1759177] - [fs] afs: do not send list of client addresses (Petr Oros) [1759177] - [net] sctp: add SCTP_SEND_FAILED_EVENT event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_MADE_PRIM event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_REMOVED event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_ADDED event (Xin Long) [1751129] - [netdrv] team: call RCU read lock when walking the port_list (Hangbin Liu) [1724896] - [net] packet: fix race in tpacket_snd() (Davide Caratti) [1760276] - [net] packet: fix memory leak in packet_set_ring() (Davide Caratti) [1760276] - [net] packet: unconditionally free po->rollover (Davide Caratti) [1760276] - [net] llc: fix skb leak in llc_build_and_send_ui_pkt() (Davide Caratti) [1760276] - [net] af_key: fix leaks in key_pol_get_resp and dump_sp. (Davide Caratti) [1760276] - [net] packet: in recvmsg msg_name return at least sizeof sockaddr_ll (Davide Caratti) [1760276] - [net] packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec (Davide Caratti) [1760276] - [net] packet: fix 4gb buffer limit due to overflow check (Davide Caratti) [1760276] - [net] llc: do not use sk_eat_skb() (Davide Caratti) [1760276] - [fs] proc: fix /proc/net/* after setns(2) (Davide Caratti) [1760276] - [net] Unpublish sk from sk_reuseport_cb before call_rcu (Paolo Abeni) [1760409] - [net] Fix null de-reference of device refcount (Paolo Abeni) [1760409] - [include] ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled (Paolo Abeni) [1760409] - [net] neighbor: Call __ipv4_neigh_lookup_noref in neigh_xmit (Paolo Abeni) [1760409] - [net] ebpf: record usage of flow dissector (Jiri Benc) [1749812] - [tools] selftests/bpf: More compatible nc options in test_lwt_ip_encap (Jiri Benc) [1749812] - [tools] selftests/bpf: Set rp_filter in test_flow_dissector (Jiri Benc) [1749812] - [net] bpf: lwtunnel: fix reroute supplying invalid dst (Jiri Benc) [1749812] - [kernel] rh_features: convert to atomic allocation (Jiri Benc) [1749812] - [net] xsk: lock the control mutex in sock_diag interface (Jiri Benc) [1749812] - [documentation] networking: fix af_xdp.rst Sphinx warnings (Jiri Benc) [1749812] - [documentation] flow_dissector: rst'ify documentation (Jiri Benc) [1749812] - [documentation] flow_dissector: document BPF flow dissector environment (Jiri Benc) [1749812] - [net] xsk: fix umem memory leak on cleanup (Jiri Benc) [1749812] - [net] xsk: fix to reject invalid options in Tx descriptor (Jiri Benc) [1749812] - [net] xsk: fix to reject invalid flags in xsk_bind (Jiri Benc) [1749812] - [net] xsk: fix potential crash in xsk_diag_put_umem() (Jiri Benc) [1749812] - [net] bpfilter: re-add header search paths to tools include to fix build error (Jiri Benc) [1749812] - [documentation] xsk: add FAQ to facilitate for first time users (Jiri Benc) [1749812] - [net] bpf/test_run: fix unkillable BPF_PROG_TEST_RUN for flow dissector (Jiri Benc) [1749812] - [tools] sync uapi/linux/if_link.h header (Jiri Benc) [1749812] - [net] xdp: allow generic and driver XDP on one interface (Jiri Benc) [1749812] - [net] xdp: Provide extack messages when prog attachment failed (Jiri Benc) [1749812] - [net] bpfilter: remove extra header search paths for bpfilter_umh (Jiri Benc) [1749812] - [include] bpf: fix missing prototype warnings (Jiri Benc) [1749812] - [net] xsk: add sock_diag interface for AF_XDP (Jiri Benc) [1749812] - [net] xsk: add id to umem (Jiri Benc) [1749812] - [net] xsk: track AF_XDP sockets on a per-netns list (Jiri Benc) [1749812] - [include] redhat: rh_kabi: introduce RH_KABI_EXTEND_WITH_SIZE (Jiri Benc) [1749812] - [net] tcp: Avoid TCP syncookie rejected by SO_REUSEPORT socket (Jiri Benc) [1749812] - [net] tcp: use monotonic timestamps for PAWS (Jiri Benc) [1749812] - [net] tcp: remove one indentation level in tcp_create_openreq_child (Jiri Benc) [1749812] - [netdrv] ppp: Fix memory leak in ppp_write (Guillaume Nault) [1759312] - [netdrv] ppp: deflate: Fix possible crash in deflate_init (Guillaume Nault) [1759312] - [netdrv] pppoe: fix reception of frames with no mac header (Guillaume Nault) [1759312] - [net] tcp_bbr: fix quantization code to not raise cwnd if not probing bandwidth (Florian Westphal) [1759208] - [net] tcp_bbr: refactor bbr_target_cwnd() for general inflight provisioning (Florian Westphal) [1759208] - [net] tcp_bbr: centralize code to set gains (Florian Westphal) [1759208] - [net] tcp_bbr: apply PROBE_RTT cwnd cap even if acked==0 (Florian Westphal) [1759208] - [net] tcp_bbr: in restart from idle, see if we should exit PROBE_RTT (Florian Westphal) [1759208] - [net] tcp_bbr: add bbr_check_probe_rtt_done() helper (Florian Westphal) [1759208] - [net] xfrm/xfrm_policy: fix dst dev null pointer dereference in collect_md mode (Hangbin Liu) [1734589] - [tools] selftests: forwarding: gre_multipath: Fix flower filters (Hangbin Liu) [1756832] - [tools] selftests: forwarding: gre_multipath: Enable IPv4 forwarding (Hangbin Liu) [1756832] - [tools] set sysctl bc_forwarding properly in router_broadcast.sh (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: enable forwarding before ipv4 from/iif test (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: use pre-defined DEV_ADDR (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: fix local IPv4 address typo (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: print the result and return 1 if any tests failed (Hangbin Liu) [1756832] - [tools] selftests: fib_tests: Fix 'Command line is not complete' errors (Hangbin Liu) [1756832] - [tools] selftests: Update fib_tests to handle missing ping6 (Hangbin Liu) [1756832] - [tools] fib_tests: Add tests for metrics on routes (Hangbin Liu) [1756832] - [tools] selftests: udpgso_bench.sh explicitly requires bash (Hangbin Liu) [1756832] - [tools] selftests/net: add tls to .gitignore (Hangbin Liu) [1756832] - [net] ipv4: avoid mixed n_redirects and rate_tokens usage (Paolo Abeni) [1753092] - [lib] netlink: set bad attribute also on maxtype check (Petr Oros) [1757776] - [lib] netlink: add validation of NLA_F_NESTED flag (Petr Oros) [1757776] - [net] ila: Fix rhashtable walker list corruption (Petr Oros) [1757776] - [lib] ila: make lockdep happy again (Petr Oros) [1757776] - [net] genetlink: do not validate dump requests if there is no policy (Petr Oros) [1757776] - [include] netlink: Fix nlmsg_parse as a wrapper for strict message parsing (Petr Oros) [1757776] - [net] tipc: fix missing indentation in source code (Petr Oros) [1757776] - [net] genetlink: optionally validate strictly/dumps (Petr Oros) [1757776] - [lib] netlink: add strict parsing for future attributes (Petr Oros) [1757776] - [include] netlink: re-add parse/validate functions in strict mode (Petr Oros) [1757776] - [net] netlink: make validation more configurable for future strictness (Petr Oros) [1757776] - [lib] netlink: add NLA_MIN_LEN (Petr Oros) [1757776] - [net] genetlink: make policy common to family (Petr Oros) [1757776] - [net] ila: Flush netlink command to clear xlat table (Petr Oros) [1757776] - [net] ila: Create main ila source file (Petr Oros) [1757776] - [net] ila: Call library function alloc_bucket_locks (Petr Oros) [1757776] - [net] ila: Fix use of rhashtable walk in ila_xlat.c (Petr Oros) [1757776] - [net] rtnetlink: fix rtnl_valid_stats_req() nlmsg_len check (Petr Oros) [1757750] - [net] mpls: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] mpls: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: addrlabel: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: addr: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: ipmr: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] namespace: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] rtnetlink: ifinfo: perform strict checks also for doit handler (Petr Oros) [1757750] - [net] rtnetlink: stats: reject requests for unknown stats (Petr Oros) [1757750] - [net] rtnetlink: stats: validate attributes in get as well as dumps (Petr Oros) [1757750] - [net] netlink: add helper to retrieve NETLINK_F_STRICT_CHK (Petr Oros) [1757750] - [include] linux/netlink.h: drop unnecessary extern prefix (Petr Oros) [1757750] - [net] rtnetlink: avoid frame size warning in rtnl_newlink() (Petr Oros) [1757750] - [net] rtnetlink: remove a level of indentation in rtnl_newlink() (Petr Oros) [1757750] - [net] rtnetlink: Add more extack messages to rtnl_newlink (Petr Oros) [1757750] - [net] netfilter: nf_tables: allow lookups in dynamic sets (Florian Westphal) [1759074] - [net] netfilter: nf_tables: check the result of dereferencing base_chain->stats (Florian Westphal) [1759074] - [net] revert "netfilter: nft_hash: add map lookups for hashing operations" (Florian Westphal) [1759074] - [net] netfilter: nf_tables: don't prevent event handler from device cleanup on netns exit (Florian Westphal) [1759074] - [net] netfilter: nft_ct: enable conntrack for helpers (Florian Westphal) [1759074] - [net] netfilter: conntrack: always store window size un-scaled (Florian Westphal) [1758668] - [net] netfilter: synproxy: fix rst sequence number mismatch (Florian Westphal) [1758668] - [net] netfilter: synproxy: fix erroneous tcp mss option (Florian Westphal) [1758668] - [net] netfilter: nfnetlink: avoid deadlock due to synchronous request_module (Florian Westphal) [1758668] - [net] netfilter: nf_queue: fix reinject verdict handling (Florian Westphal) [1758668] - [net] netfilter: conntrack: Use consistent ct id hash calculation (Florian Westphal) [1758668] - [net] netfilter: ctnetlink: don't use conntrack/expect object addresses as id (Florian Westphal) [1758668] - [net] netfilter: bridge: Don't sabotage nf_hook calls for an l3mdev slave (Florian Westphal) [1758668] - [net] netfilter: avoid using skb->nf_bridge directly (Florian Westphal) [1758668] - [net] netfilter: nat: can't use dst_hold on noref dst (Florian Westphal) [1758668] - [net] netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev (Florian Westphal) [1758668] - [net] netfilter: conntrack: fix removal of conntrack entries when l4tracker is removed (Florian Westphal) [1758668] - [net] netfilter: xt_hashlimit: fix a possible memory leak in htable_create() (Florian Westphal) [1758668] - [net] netfilter: xt_TEE: add missing code to get interface index in checkentry. (Florian Westphal) [1758668] - [net] netfilter: xt_TEE: fix wrong interface selection (Florian Westphal) [1758668] - [net] netfilter: xtables: avoid BUG_ON (Florian Westphal) [1758668] - [net] netfilter: nat: limit port clash resolution attempts (Florian Westphal) [1758646] - [net] netfilter: nat: remove l4 protocol port rovers (Florian Westphal) [1758646] - [net] neighbour: remove stray semicolon (Ivan Vecera) [1757459] - [net] neighbor: Initialize protocol when new pneigh_entry are created (Ivan Vecera) [1757459] - [net] neighbour: register rtnl doit handler (Ivan Vecera) [1757459] - [net] neighbor: Add protocol attribute (Ivan Vecera) [1757459] - [net] neighbor: Add extack messages for add and delete commands (Ivan Vecera) [1757459] - [net] rtnetlink: address is mandatory for rtnl_fdb_get (Ivan Vecera) [1757105] - [netdrv] vxlan: support for ndo_fdb_get (Ivan Vecera) [1757105] - [net] rtnetlink: support for fdb get (Ivan Vecera) [1757105] - [net] bridge: support for ndo_fdb_get (Ivan Vecera) [1757105] - [net] ipmr: remove hard code cache_resolve_queue_len limit (Hangbin Liu) [1631022] - [net] ipv6/addrconf: allow adding multicast addr if IFA_F_MCAUTOJOIN is set (Hangbin Liu) [1740961] - [net] xfrm interface: fix management of phydev (Xin Long) [1727240] - [net] xfrm interface: fix list corruption for x-netns (Xin Long) [1727240] - [net] xfrm interface: ifname may be wrong in logs (Xin Long) [1727240] - [net] xfrm interface: avoid corruption on changelink (Xin Long) [1727240] - [net] netlink: add validation function to policy (Ivan Vecera) [1753333] - [net] netlink: add attribute range validation to policy (Ivan Vecera) [1753333] - [net] sched: police: allow accessing police->params with rtnl (Ivan Vecera) [1731416] - [net] sched: remove block pointer from common offload structure (Ivan Vecera) [1731416] - [net] nfp: flower: add qos offload install and remove functionality. (Ivan Vecera) [1731416] - [net] nfp: flower: add qos offload framework (Ivan Vecera) [1731416] - [net] sched: add block pointer to tc_cls_common_offload structure (Ivan Vecera) [1731416] - [net] sched: allow stats updates from offloaded police actions (Ivan Vecera) [1731416] - [net] sched: extend matchall offload for hardware statistics (Ivan Vecera) [1731416] - [net] sched: add police action to the hardware intermediate representation (Ivan Vecera) [1731416] - [net] sched: move police action structures to header (Ivan Vecera) [1731416] - [net] sched: remove unused functions for matchall offload (Ivan Vecera) [1731416] - [net] dsa: use intermediate representation for matchall offload (Ivan Vecera) [1731416] - [netdrv] mlxsw: use intermediate representation for matchall offload (Ivan Vecera) [1731416] - [net] tipc: disallow enabling of loopback interface bearer (Jon Maloy) [1717305] - [net] tipc: add NULL pointer check before calling kfree_rcu (Jon Maloy) [1747392] - [net] xsk: Return the whole xdp_desc from xsk_umem_consume_tx (Ivan Vecera) [1748497] - [net] devlink: add warning for ndo_get_port_parent_id set when not needed (Petr Oros) [1737133] - [net] devlink: introduce devlink_compat_switch_id_get() helper (Petr Oros) [1737133] - [net] devlink: extend port attrs for switch ID (Petr Oros) [1737133] - [net] devlink: convert devlink_port_attrs bools to bits (Petr Oros) [1737133] - [net] devlink: add warning for ndo_get_phys_port_name set when not needed (Petr Oros) [1737133] - [netdrv] nfp: move devlink port type set after netdev registration (Petr Oros) [1737133] - [netdrv] dsa: move devlink_port_attrs_set() call before register (Petr Oros) [1737133] - [netdrv] mlxsw: Move devlink_port_attrs_set() call before register (Petr Oros) [1737133] - [netdrv] bnxt: set devlink port type after registration (Petr Oros) [1737133] - [netdrv] bnxt: call devlink_port_type_eth_set() before port register (Petr Oros) [1737133] - [netdrv] bnxt: set devlink port attrs properly (Petr Oros) [1737133] - [netdrv] dsa: add missing net/devlink.h include (Petr Oros) [1737133] - [netdrv] bnxt: add missing net/devlink.h include (Petr Oros) [1737133] - [netdrv] revert "devlink: Add a generic wake_on_lan port parameter" (Petr Oros) [1737133] - [netdrv] bnxt_en: Add bnxt_en initial port params table and register it (Petr Oros) [1737133] - [netdrv] mlxsw: spectrum: Assume CONFIG_NET_DEVLINK is always enabled (Petr Oros) [1737527] - [netdrv] netdevsim: assume CONFIG_NET_DEVLINK is always enabled (Petr Oros) [1737527] - [net] devlink: introduce devlink_compat_phys_port_name_get() (Petr Oros) [1737527] - [net] replace ndo_get_devlink with ndo_get_devlink_port (Petr Oros) [1737527] - [net] devlink: select NET_DEVLINK from drivers (Petr Oros) [1737527] - [net] devlink: add port type spinlock (Petr Oros) [1737527] - [net] devlink: warn on setting type on unregistered port (Petr Oros) [1737527] - [net] devlink: disallow port_attrs_set() to be called before register (Petr Oros) [1737527] - [net] devlink: don't pass return value of __devlink_port_type_set() (Petr Oros) [1737527] - [net] devlink: don't take devlink_mutex for devlink_compat_* (Petr Oros) [1737527] - [net] devlink: add couple of missing mutex_destroy() calls (Petr Oros) [1737527] - [net] devlink: fix kdoc (Petr Oros) [1737527] - [net] devlink: require non-NULL ops for devlink instances (Petr Oros) [1737527] - [net] devlink: hold a reference to the netdevice around ethtool compat (Petr Oros) [1737527] - [net] devlink: create a special NDO for getting the devlink instance (Petr Oros) [1737527] - [net] devlink: Add WARN_ON to catch errors of not cleaning devlink objects (Petr Oros) [1737527] - [netdrv] s390/qeth: fix xmit_more support (Ivan Vecera) [1734516] - [netdrv] revert "[netdrv] gve: account for lack of netdev_xmit_more() definition (RHEL-only)" (Ivan Vecera) [1734516] - [netdrv] net/mlx5e: Fix wrong xmit_more application (Ivan Vecera) [1734516] - [include] net: use correct this_cpu primitive in dev_recursion_level (Ivan Vecera) [1734516] - [netdrv] drivers: net: aurora: use netdev_xmit_more helper (Ivan Vecera) [1734516] - [netdrv] drivers: net: sfc: use netdev_xmit_more helper (Ivan Vecera) [1734516] - [netdrv] drivers: mellanox: use netdev_xmit_more() helper (Ivan Vecera) [1734516] - [netdrv] net: move skb->xmit_more hint to softnet data (Ivan Vecera) [1734516] - [net] place xmit recursion in softnet data (Ivan Vecera) [1734516]- [netdrv] net: ena: clean up indentation issue (John Linville) [1770979] - [netdrv] net: ena: Select DIMLIB for ENA_ETHERNET (John Linville) [1770979] - [netdrv] net: ena: fix incorrect update of intr_delay_resolution (John Linville) [1770979] - [netdrv] net: ena: fix retrieval of nonadaptive interrupt moderation intervals (John Linville) [1770979] - [netdrv] net: ena: fix update of interrupt moderation register (John Linville) [1770979] - [netdrv] net: ena: remove all old adaptive rx interrupt moderation code from ena_com (John Linville) [1770979] - [netdrv] net: ena: remove ena_restore_ethtool_params() and relevant fields (John Linville) [1770979] - [netdrv] net: ena: remove old adaptive interrupt moderation code from ena_netdev (John Linville) [1770979] - [netdrv] net: ena: remove code duplication in ena_com_update_nonadaptive_moderation_interval _*() (John Linville) [1770979] - [netdrv] net: ena: enable the interrupt_moderation in driver_supported_features (John Linville) [1770979] - [netdrv] net: ena: reimplement set/get_coalesce() (John Linville) [1770979] - [netdrv] net: ena: switch to dim algorithm for rx adaptive interrupt moderation (John Linville) [1770979] - [netdrv] net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it (John Linville) [1770979]- [fs] autofs: add ignore mount option (Ian Kent) [1743441] - [fs] autofs: improve ioctl sbi checks (Ian Kent) [1672133] - [crypto] crypto: ccp - Retry SEV INIT command in case of integrity check failure. (Gary Hook) [1767627] - [crypto] crypto: ccp - Verify access to device registers before initializing (Gary Hook) [1756867] - [crypto] crypto: ccp - Change a message to reflect status instead of failure (Gary Hook) [1756867] - [netdrv] ixgbevf: Bump version for RHEL 8.2.0 (Ken Cox) [1721701] - [netdrv] ixgbevf: Fix secpath usage for IPsec Tx offload (Ken Cox) [1721701] - [netdrv] ixgbevf: make array api static const, makes object smaller (Ken Cox) [1721701] - [netdrv] ixgbevf: Link lost in VM on ixgbevf when restoring from freeze or suspend (Ken Cox) [1721701] - [netdrv] ixgbevf: fix a compilation error of skb_frag_t (Ken Cox) [1721701] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721701] - [netdrv] ixgbevf: Use cached link state instead of re-reading the value for ethtool (Ken Cox) [1721701] - [netdrv] ixgbevf: fix possible divide by zero in ixgbevf_update_itr (Ken Cox) [1721701] - [netdrv] ixgbevf: fix a missing check of ixgbevf_write_msg_read_ack (Ken Cox) [1721701] - [infiniband] IB/hfi1: Use a common pad buffer for 9B and 16B packets (Honggang Li) [1719676] - [infiniband] IB/hfi1: Avoid excessive retry for TID RDMA READ request (Honggang Li) [1719676] - [infiniband] RDMA/hfi1: Prevent memory leak in sdma_init (Honggang Li) [1719676] - [infiniband] IB/hfi1: remove unlikely() from IS_ERR*() condition (Honggang Li) [1719676] - [infiniband] IB/hfi1: Define variables as unsigned long to fix KASAN warning (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Add a counter for credit waits (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add traces for TID RDMA READ (Honggang Li) [1719676] - [infiniband] infiniband: hfi1: fix memory leaks (Honggang Li) [1719676] - [infiniband] infiniband: hfi1: fix a memory leak bug (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop stale TID RDMA packets that cause TIDErr (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add additional checks when handling TID RDMA WRITE DATA packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add additional checks when handling TID RDMA READ RESP packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Unsafe PSN checking for TID RDMA READ Resp packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop stale TID RDMA packets (Honggang Li) [1719676] - [infiniband] IB/hfi1: Fix Spectre v1 vulnerability (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove unused define (Honggang Li) [1719676] - [infiniband] IB/hfi1: Do not update hcrc for a KDETH packet during fault injection (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop all TID RDMA READ RESP packets after r_next_psn (Honggang Li) [1719676] - [infiniband] IB/hfi1: Field not zero-ed when allocating TID flow memory (Honggang Li) [1719676] - [infiniband] IB/hfi1: Unreserve a flushed OPFN request (Honggang Li) [1719676] - [infiniband] IB/hfi1: Check for error on call to alloc_rsm_map_table (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix variable shadowing issue in rvt_create_cq (Honggang Li) [1719676] - [infiniband] RDMA/rvt: Do not use a kernel header in the ABI (Honggang Li) [1719676] - [infiniband] IB/hfi1: No need to use try_module_get for debugfs (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Add trace for map_mr_sg (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Enhance trace information for FRWR debug (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add missing INVALIDATE opcodes for trace (Honggang Li) [1719676] - [infiniband] IB/hfi1: Reduce excessive aspm inlines (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Add helpers to hide SWQE WR details (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Remove AH refcount for UD QPs (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Set QP allowed opcodes after QP allocation (Honggang Li) [1719676] - [infiniband] IB/{hfi1, qib, rdmavt}: Put qp in error state when cq is full (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fracture single lock used for posting and processing RWQEs (Honggang Li) [1719676] - [infiniband] IB/hfi1: Move receive work queue struct into uapi directory (Honggang Li) [1719676] - [infiniband] IB/hfi1: Move rvt_cq_wc struct into uapi directory (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Add new completion inline (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, qib, hfi1}: Convert to new completion API (Honggang Li) [1719676] - [infiniband] IB/hfi1: Spelling s/statisfied/satisfied/ (Honggang Li) [1719676] - [infiniband] IB/hfi1: Handle port down properly in pio (Honggang Li) [1719676] - [infiniband] IB/hfi1: Handle wakeup of orphaned QPs for pio (Honggang Li) [1719676] - [infiniband] IB/hfi1: Wakeup QPs orphaned on wait list after flush (Honggang Li) [1719676] - [infiniband] IB/hfi1: Use aborts to trigger RC throttling (Honggang Li) [1719676] - [infiniband] IB/hfi1: Create inline to get extended headers (Honggang Li) [1719676] - [infiniband] IB/hfi1: Silence txreq allocation warnings (Honggang Li) [1719676] - [infiniband] IB/hfi1: Avoid hardlockup with flushlist_lock (Honggang Li) [1719676] - [infiniband] IB/hfi1: Correct tid qp rcd to match verbs context (Honggang Li) [1719676] - [infiniband] IB/hfi1: Close PSM sdma_progress sleep window (Honggang Li) [1719676] - [infiniband] IB/hfi1: Validate fault injection opcode user input (Honggang Li) [1719676] - [infiniband] IB/hfi1: Use struct_size() helper (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Use struct_size() helper (Honggang Li) [1719676] - [infiniband] IB/hfi1: Validate page aligned for a given virtual address (Honggang Li) [1719676] - [infiniband] IB/{qib, hfi1, rdmavt}: Correct ibv_devinfo max_mr value (Honggang Li) [1719676] - [infiniband] IB/hfi1: Insure freeze_work work_struct is canceled on shutdown (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix alloc_qpn() WARN_ON() (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove set but not used variables 'offset' and 'fspsn' (Honggang Li) [1719676] - [infiniband] RDMA/rdmavt: Catch use-after-free access of AH structures (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove reference to RHF.VCRCErr (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add selected Rcv counters (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, qib, hfi1}: Use new routine to release reference counts (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Use more efficient allowed_ops (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix ab/ba include issues (Honggang Li) [1719676] - [infiniband] IB/hfi1: Make opfn.h self sufficient (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1): Miscellaneous comment fixes (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add debugfs to control expansion ROM write protect (Honggang Li) [1719676] - [infiniband] hfi1: Convert hfi1_unit_table to XArray (Honggang Li) [1719676] - [infiniband] hfi1: Convert vesw_idr to XArray (Honggang Li) [1719676] - [infiniband] RDMA/rdmavt: Use correct sizing on buffers holding page DMA addresses (Honggang Li) [1719676] - [infiniband] IB/hfi1: Fix two format strings (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add running average for adaptive pio (Honggang Li) [1719676] - [infiniband] mm: replace all open encodings for NUMA_NO_NODE (Honggang Li) [1719676] - [infiniband] drivers/IB,hfi1: do not se mmap_sem (Honggang Li) [1719676] - [infiniband] IB/hfi1: Suppress a compiler warning (Honggang Li) [1719676] - [scsi] qla2xxx: Update driver version (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: don't use zero for FC4_PRIORITY_NVME (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: initialize fc4_type_priority (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: fix NPIV tear down process (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Remove an include directive (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix device connect issues in P2P configuration (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Improve logging for scan thread (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Capture FW dump on MPI heartbeat stop event (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Check for MB timeout while capturing ISP27/28xx FW dump (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Set remove flag for all VP (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Add error handling for PLOGI ELS passthrough (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Dual FCP-NVMe target port support (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix a dma_pool_free() call (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix memory leak when sending I/O fails (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix driver unload hang (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix SRB leak on switch command timeout (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix double scsi_done for abort path (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Do command completion on abort timeout (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Reduce the number of forward declarations (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: fixup incorrect usage of host_byte (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix partial flash write of MBI (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Remove WARN_ON_ONCE in qla2x00_status_cont_entry() (Himanshu Madhani) [1763248] - [scsi] qla2xxx: Fix conflict_port check for NULL (Himanshu Madhani) [1763248] - [netdrv] Bump version for RHEL 8.2.0 (Ken Cox) [1721700] - [netdrv] ixgbe: Fix secpath usage for IPsec TX offload. (Ken Cox) [1721700] - [netdrv] ixgbe: fix double clean of Tx descriptors with xdp (Ken Cox) [1721700] - [netdrv] ixgbe: Prevent u8 wrapping of ITR value to something less than 10us (Ken Cox) [1721700] - [netdrv] ixgbe: use skb_get_queue_mapping in tx path (Ken Cox) [1721700] - [netdrv] ixgbe: fix memory leaks (Ken Cox) [1721700] - [netdrv] ixgbe: sync the first fragment unconditionally (Ken Cox) [1721700] - [netdrv] ixgbe: Use kzfree() rather than its implementation. (Ken Cox) [1721700] - [netdrv] ixgbe: simplify Rx buffer recycle (Ken Cox) [1721700] - [netdrv] ixgbe: no need to check return value of debugfs_create functions (Ken Cox) [1721700] - [netdrv] ixgbe: fix possible deadlock in ixgbe_service_task() (Ken Cox) [1721700] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721700] - [netdrv] ixgbe: fix potential u32 overflow on shift (Ken Cox) [1721700] - [netdrv] ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw (Ken Cox) [1721700] - [netdrv] ixgbe: Check DDM existence in transceiver before access (Ken Cox) [1721700] - [netdrv] ixgbe: implement support for SDP/PPS output on X550 hardware (Ken Cox) [1721700] - [netdrv] ixgbe: Use LLDP ethertype define ETH_P_LLDP (Ken Cox) [1721700] - [netdrv] ixgbe: add a kernel documentation comment for ixgbe_ptp_get_ts_config (Ken Cox) [1721700] - [netdrv] ixgbe: use 'cc' instead of 'hw_cc' for local variable (Ken Cox) [1721700] - [netdrv] ixgbe: fix PTP SDP pin setup on X540 hardware (Ken Cox) [1721700] - [netdrv] ixgbe: reduce PTP Tx timestamp timeout to 1 second (Ken Cox) [1721700] - [netdrv] ixgbe: fix AF_XDP tx packet count (Ken Cox) [1721700] - [netdrv] ixgbe: fix AF_XDP tx byte count (Ken Cox) [1721700] - [netdrv] ixgbe: remove umem from adapter (Ken Cox) [1721700] - [netdrv] ixgbe: add tracking of AF_XDP zero-copy state for each queue pair (Ken Cox) [1721700] - [netdrv] ixgbe: fix mdio bus registration (Ken Cox) [1721700] - [netdrv] nfp: bpf: implement jitting of JMP32 (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: support removing dead code (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: support optimizing dead branches (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: save original program length (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: split up the skip flag (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: don't use instruction number for jump target (Pablo Cascon) [1729067] - [scsi] scsi: target: iscsi: rename some variables to avoid confusion. (Maurizio Lombardi) [1769801] - [scsi] scsi: target: iscsi: tie the challenge length to the hash digest size (Maurizio Lombardi) [1769801] - [scsi] scsi: target: iscsi: CHAP: add support for SHA1, SHA256 and SHA3-256 (Maurizio Lombardi) [1769801] - [scsi] scsi: target: compare full CHAP_A Algorithm strings (Maurizio Lombardi) [1769801] - [arm64] arm64: topology: Use PPTT to determine if PE is a thread (Jeremy Linton) [1721297] - [acpi] ACPI/PPTT: Add support for ACPI 6.3 thread flag (Jeremy Linton) [1721297] - [acpi] ACPI / LPSS: Save/restore LPSS private registers also on Lynxpoint (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [documentation] docs: fix numaperf.rst and add it to the doc tree (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Rename arm_smmu_v3_set_proximity() 'node' local variable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [misc] h8300: pci: Remove local declaration of pcibios_penalize_isa_irq (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [mm] mmc: sdhci-acpi: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [ata] ata: pata_acpi: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [gpu] vga-switcheroo: make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: intel_ips: make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: intel_pmc: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: apple-gmux: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/intel/lpss: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/Kconfig: Select PCI_LOCKLESS_CONFIG if PCI is enabled (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [mfd] mfd: Fix unmet dependency warning for MFD_TPS68470 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] drivers/acpi/scan.c: document why we don't need the device_hotplug_lock (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Fix regression in acpi_device_set_power() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix off-by-one check in iort_dev_find_its_id() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: video: Add new hw_changes_brightness quirk, set it on PB Easynote MZ35 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: blacklist: fix clang warning for unused DMI table (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPICA: Update table load object initialization" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Make acpi_sleep_state_supported() non-static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove needless __ghes_check_estatus() calls (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Unexport acpi_device_get_power() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI / ACPI: Use cached ACPI device state to get PCI device power state (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190703 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update table load object initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for object initialization sequence (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: remove legacy module-level code due to deprecation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: simplify creation of the initial/default namespace (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: intel: Drop double removal of address space handler (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APD: remove redundant assignment to pointer clk (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Introduce "poweroff" callbacks for ACPI PM domain and LPSS (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Simplify and fix PM domain hibernation callbacks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PM: ACPI/PCI: Resume all devices during hibernation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI: PM/ACPI: Refresh all stale power state data in pci_pm_complete() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Add function to return ACPI 6.3 Identical tokens (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Modify node flag detection to find last IDENTICAL (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Introduce concept of a _PR0 dependent device (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Allow transitions to D0 to occur in special cases (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Avoid evaluating _PS3 on transitions from D3hot to D3cold (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: utils: Cleanup acpi_dev_match_cb (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Make AC and battery drivers available on !X86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] coresight: acpi: Support for AMBA components (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of GPEs on first direct enable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: configfs: Resolve objects on host-directed table loads (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: tables: Allow BGRT to be overridden (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / sleep: Switch to use acpi_dev_get_first_match_dev() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] gpio: merrifield: Fix build err without CONFIG_ACPI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: OSL: Make a W=1 kernel-doc warning go away (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: Don't limit named child node matching to data nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPIT: Correct LPIT end address for lpit_process() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/irq: Implement helper to create hierachical domains (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Add memory-side caching attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Add heterogenous memory access attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Link memory nodes to their compute nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [documentation] doc/mm: New documentation for memory performance (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Call pm_set_suspend_via_firmware() during hibernation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PCI: PM: Add missing wakeup.flags.valid checks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix build error when IOMMU_SUPPORT is disabled (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190509 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Linux: move ACPI_DEBUG_DEFAULT flag out of ifndef (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: bus: change _ADR representation to 64 bits (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: fix an uninitialized memory_target (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Update acpi_hmat_type enum with ACPI_HMAT_TYPE_PROXIMITY (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: fix memory leaks in hmat_init() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Check ATS capability in root complex nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / DPTF: Use dev_get_drvdata() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: event: replace strcpy() by strscpy() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for hibernate (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Reject platform device creation on NUMA node mapping failure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: button: reinitialize button state upon resume (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190405 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: add check to avoid null pointer dereference (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190329 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: utilities: fix spelling of PCC to platform_comm_channel (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg length macro/define for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg compare macro for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg copy macro for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Print debug messages when enabling GPEs for wakeup (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register memory side cache attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register performance attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register processor domain to its memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Parse and report heterogeneous memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: Add HMAT to generic parsing tables (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: Create subtable parsing infrastructure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [arm64] arm64: numa: rework ACPI NUMA initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Add support for PMCG (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: video: Use vendor backlight on Sony VPCEH3U1E (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / utils: Remove deprecated function since no user left (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: Clean up whitespace (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Add labels for PNP button devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Simplify acpi_bus_extract_wakeup_device_power_package() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Fix comment typos (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPICA: Clear status of GPEs before enabling them" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: remove address node from global list after method termination (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of GPEs before enabling them (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: use different default debug value than ACPICA (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / utils: Drop reference in test for device presence (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: sysfs: Prevent get_status() from returning acpi_status (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / device_sysfs: Avoid OF modalias creation for removed device (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / configfs: Mark local data structures static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / configfs: Mark local functions static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: tables: Simplify PPTT leaf node detection (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / bus: Respect PRP0001 when retrieving device match data (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190215 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add GTDT Revision 3 support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: HMAT updates (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: PPTT add additional fields in Processor Structure Flags (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add Error Disconnect Recover Notification value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: MADT: add support for statistical profiling in GICC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [clk] clk: x86: Move clk-lpss.h to platform_data/x86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APEI: Fix possible out-of-bounds access to BERT region (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / processor: Set P_LVL{2, 3sc] } idle state descriptions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / CPPC: Add a helper to get desired performance (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: SRAT: add Generic Affinity Structure subtable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: Add Trigger order to PCC Identifier structure in PDTT (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: Adding predefined methods _NBS, _NCH, _NIC, _NIH, and _NIG (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update/clarify messages for control method failures (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: Fix possible fault with the "test objects" command (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Interpreter: Emit warning for creation of a zero-length op region (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove legacy module-level code support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: Make PWM2 device always present at Lenovo Yoga Book (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / video: Extend chassis-type detection with a "Lunch Box" check (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / video: Refactor and fix dmi_is_desktop() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Add support for the SDEI GHES Notification type (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [firmware] firmware: arm_sdei: Add ACPI GHES registration helper (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Add acpi_pptt_warn_missing() to consolidate logs (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Use separate fixmap pages for arm64 NMI-like notifications (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Only use queued estatus entry during in_nmi_queue_one_entry() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Split ghes_read_estatus() to allow a peek at the CPER length (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make GHES estatus header validation more user friendly (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Pass ghes and estatus separately to avoid a later copy (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Let the notification helper specify the fixmap slot (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Move locking to the notification helper (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Switch NOTIFY_SEA to use the estatus queue (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Move NOTIFY_SEA between the estatus-queue and NOTIFY_NMI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't allow ghes_ack_error() to mask earlier errors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Generalise the estatus queue's notify code (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't update struct ghes' flags in read/clear estatus (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove spurious GHES_TO_CLEAR check (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't store CPER records physical address in struct ghes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make estatus pool allocation a static size (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make hest.c manage the estatus memory pool (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Switch estatus pool to use vmalloc memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove silent flag from ghes_read_estatus() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't wait to serialise with oops messages when panic()ing (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Set debug output flags independent of ACPICA (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Get rid of acpi_sleep_dispatch() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for BSG2150 ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPI / EC: Remove old CLEAR_ON_RESUME quirk" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Simplify boot EC checks in acpi_ec_add() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Eliminate acpi_config_boot_ec() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Make acpi_ec_dsdt_probe() more straightforward (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Make acpi_ec_ecdt_probe() more straightforward (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Declare boot_ec as static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / DPTF: remove header search path to the parent directory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Clean up probing for early EC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: debug: Clean up acpi_aml_init() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: no need to check return value of debugfs_create functions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Look for ECDT EC after calling acpi_load_tables() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190108 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: All acpica: Update copyrights to 2019 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpiexec: Add option to dump extra info for memory leaks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Convert more ACPI errors to firmware errors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APEI: EINJ: Use DEFINE_DEBUGFS_ATTRIBUTE for debugfs files (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Fix parsing HEST that includes Deferred Machine Check subtable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: table override from built-in initrd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] APEI / ERST: Switch to use new generic UUID API (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Add generic intel_soc_pmic_exec_mipi_pmic_seq_element handling (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Implement exec_mipi_pmic_seq_element for CHT Whiskey Cove PMIC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix build when CONFIG_IOMMU_API=n (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Fix TS-pin current-source handling (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: NUMA: Use correct type for printing addresses on i386-PAE (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: power: Skip duplicate power resource references in _PRx (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Fix build failure when CONFIG_NLS is set to 'n' (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: Add an ifdef around amlcode and dsdt_amlcode (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Make PCI slot detection driver depend on PCI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Stub out ACS functions when CONFIG_PCI is not set (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSI: Add OEM _OSI string to enable dGPU direct output (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Loop in full LPS0 mode only (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC / PM: Disable non-wakeup GPEs for suspend-to-idle (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Don't call iommu_ops->add_device directly (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Use device_iommu_mapped() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Use helper functions to access dev->iommu_fwspec (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] driver core: Introduce device_iommu_mapped() function (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu/sysfs: Rename iommu_release_device() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu: Consolitate ->add/remove_device() calls (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu: Introduce wrappers around dev->iommu_fwspec (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: add DSDT AmlCode new declaration name support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181213 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: change coding style to match ACPICA, no functional change (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debug output: Add option to display method/object evaluation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: disassembler: disassemble OEMx tables as AML (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Add "Windows 2018.2" string in the _OSI support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Expressions in package elements are not supported (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update buffer-to-string conversions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: add comments, no functional change (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove defines that use deprecated flag (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Add "Windows 2018" string in the _OSI support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [pci] PCI: Remove unused attr variable in pci_dma_configure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Refactor _CCA enforcement (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Ignore acpi_device_fix_up_power() return value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI, APEI, EINJ: Change to use DEFINE_SHOW_ATTRIBUTE macro (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for INT3515 ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix iort_get_platform_device_domain() uninitialized pointer value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: SPCR: Consider baud rate 0 as preconfigured state (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / glue: Add acpi_platform_notify() function (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] drivers core: Prepare support for multiple platform notifications (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / platform: Add SMB0001 HID to forbidden_id_list (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Fix handling of buffer-size in acpi_ex_write_data_to_field() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181031 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: iASL: Enhance error detection (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: iASL: adding definition and disassembly for TPM2 revision 3 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: refactor to fix unused variable warning (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: fix IOSF_MBI dependency (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Add depends on IOSF_MBI to Kconfig entry (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Block P-Unit I2C access during read-modify-write (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] PM / Domains: Document flags for genpd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for INT33FE ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: probe ECDT before loading AML tables regardless of module-level code flag (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove acpi_gbl_group_module_level_code and only use acpi_gbl_execute_tables_as_methods instead (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended opcodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: AML interpreter: add region addresses in global list during initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: TAD: Add low-level support for real time capability (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Export acpi_device_get_power() for use by modular build drivers (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: remove redundant 'default n' from Kconfig (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / SBS: Fix rare oops when removing modules (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / SBS: Fix GPE storm on recent MacBookPro's (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181003 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Never run _REG on system_memory and system_IO (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Split large interpreter file (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for field unit access (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename some of the Field Attribute defines (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for generic_serial_bus and attrib_raw_process_bytes protocol (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / processor: Fix the return value of acpi_processor_ids_walk() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Resume BYT/CHT I2C controllers from resume_noirq (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add a device link from the GPU to the BYT I2C5 controller (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add a device link from the GPU to the CHT I2C7 controller (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make acpi_lpss_find_device() also find PCI devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make hid_uid_match helper accept a NULL uid argument (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make hid_uid_match helper take an acpi_device as first argument (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi:ipmi: Convert ipmi_user_t to struct ipmi_user 0001-x86-smp-fix-non-SMP-broken-build-due-to-redefinition.patch brew_job bzlist bzlist-v2 run.sh testing_desc v4-notes v5-notes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Exclude I2C busses shared with PUNIT from pmc_atom_d3_mask (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Convert drivers to use SPDX identifier (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Sort headers alphabetically (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: Switch to bitmap_zalloc() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: custom_method: remove meaningless null check before debugfs_remove() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Force LPSS quirks on boot (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / bus: Only call dmi_check_system() on X86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: fix menuconfig presentation of ACPI submenu (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] xen/ACPI: don't upload Px/Cx data for disabled processors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/smp: fix non-SMP broken build due to redefinition of apic_id_is_primary_thread (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: CrystalCove: Extend PMOP support to support all possible fields (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of all events when entering sleep states (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20180810 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpiexec: fix a small memory leak regression (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Reference count: add additional debugging details (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpi_exec: fixing -fi option (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: Cleanup interface to the AML disassembler (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Utilities: split hex detection into smaller functions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update an error message for a duplicate table (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: Add ACPI i2c-multi-instantiate pseudo driver (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [kernel] PM / reboot: Eliminate race between reboot and suspend (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: utils: Remove status workaround from acpi_device_always_present() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for fwnodes with multiple i2c devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Initialize status to ACPI_STA_DEFAULT (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / EC: Add another entry for Thinkpad X1 Carbon 6th (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: bus: Fix a pointer coding style issue (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] arm64 / ACPI: clean the additional checks before calling ghes_notify_sea() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Add static attribute to indirect_io_hosts[] (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: Do not export energy_full[_design] on devices without full_charge_capacity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / EC: Use ec_no_wakeup on ThinkPad X1 Yoga 3rd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: get rid of negations in conditions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: use specialized print macros (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: reorder headers alphabetically (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: drop inclusion of init.h (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: battery: remove redundant old_present check on insertion (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Use data node name and reg property for graphs (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Allow direct graph endpoint references (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Make the ACPI graph API private (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Allow making references to non-device nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Convert ACPI reference args to generic fwnode reference args (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: save NVS memory for ASUS 1025C laptop (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / button: fix defined but not used warning (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20180629 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Revert "iASL compiler: allow compilation of externals with paths that refer to existing names" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Revert "iASL: change processing of external op namespace nodes for correctness" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: enable touchscreen on Dell Venue Pro 7139 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Default to s2idle in all machines supporting LP S0 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / button: increment wakeup count only when notified (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [powerpc] powerpc/papr_scm: Fix an off-by-one check in papr_scm_meta_{get, set} (Gustavo Duarte) [1731035] - [nvdimm] libnvdimm/altmap: Track namespace boundaries in altmap (Gustavo Duarte) [1731035] - [powerpc] powerpc/nvdimm: Pick nearby online node if the device node is not online (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Force a scm-unbind if initial scm-bind fails (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Update drc_pmem_unbind() to use H_SCM_UNBIND_ALL (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: Update SCM hcall op-codes in hvcall.h (Gustavo Duarte) [1731035] - [mm] mm/nvdimm: add is_ioremap_addr and use that to check ioremap address (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries/scm: Use a specific endian format for storing uuid from the device tree (Gustavo Duarte) [1731035] - [powerpc] powerpc/nvdimm: Add support for multibyte read/write for metadata (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries/scm: Mark the region volatile if cache flush not required (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/nvdimm: Add an informative message if we fail to allocate altmap block (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Consolidate numa_enable check and min_common_depth check (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Fix node look up with numa=off boot (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/drconf: Use NUMA_NO_NODE on failures instead of node 0 (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/radix: Use the right page size for vmemmap mapping (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/hash/4k: Don't use 64K page size for vmemmap with 4K pagesize (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use the correct bind address (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Fallback to RAM if the altmap is unusable (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use ibm, unit-guid as the iset cookie (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Fix DIMM device registration race (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Remove endian conversions (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Update DT properties (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Fix resource end address (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use depend instead of select (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: Add driver for PAPR SCM regions (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: PAPR persistent memory support (Gustavo Duarte) [1731035] - [mm] mm, vmstat: reduce zone->lock holding time by /proc/pagetypeinfo (Waiman Long) [1770314] - [mm] mm, vmstat: hide /proc/pagetypeinfo from normal users (Waiman Long) [1770314] - [crypto] crypto: chtls - remove cdev_list_lock (Neil Horman) [1737078] - [crypto] crypto/chelsio/chtls: listen fails with multiadapt (Neil Horman) [1737078] - [tools] cpupower : Handle set and info subcommands correctly (Steve Best) [1769973] - [s390] s390/qeth: use IQD Multi-Write (Philipp Rudo) [1731028] - [s390] s390/qdio: implement IQD Multi-Write (Philipp Rudo) [1731028] - [s390] s390/qeth: add xmit_more support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: add BQL support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: when in TX NAPI mode, use napi_consume_skb() (Philipp Rudo) [1731028] - [s390] s390/qeth: add TX NAPI support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: collect accurate TX statistics (Philipp Rudo) [1731028] - [s390] s390/qdio: let drivers opt-out from Output Queue scanning (Philipp Rudo) [1731028] - [s390] s390/qdio: enable drivers to poll for Output completions (Philipp Rudo) [1731028] - [usb] xhci-pci: allow host runtime PM as default for Intel Alpine and Titan Ridge (Myron Stowe) [1769877] - [x86] x86/atomic: Fix smp_mb__{before,after}_atomic() (Prarit Bhargava) [1769789] - [kernel] stacktrace: Don't skip first entry on noncurrent tasks (Waiman Long) [1766681] - [kernel] tracing: Fix user stack trace "??" output (Waiman Long) [1766681] - [kernel] tracing: Fix out-of-range read in trace_stack_print() (Waiman Long) [1766681] - [kernel] stacktrace: Constify 'entries' arguments (Waiman Long) [1766681] - [kernel] stacktrace: Force USER_DS for stack_trace_save_user() (Waiman Long) [1766681] - [x86] x86/stacktrace: Prevent infinite loop in arch_stack_walk_user() (Waiman Long) [1766681] - [kernel] stacktrace: Use PF_KTHREAD to check for kernel threads (Waiman Long) [1766681] - [kernel] stacktrace: Unbreak stack_trace_save_tsk_reliable() (Waiman Long) [1766681] - [x86] x86/stacktrace: Use common infrastructure (Waiman Long) [1766681] - [kernel] stacktrace: Keep stack_trace structure and remove snprint_stack_trace() (Waiman Long) [1766681] - [kernel] stacktrace: Provide common infrastructure (Waiman Long) [1766681] - [kernel] livepatch: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] tracing: Remove the last struct stack_trace usage (Waiman Long) [1766681] - [kernel] tracing: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] tracing: Make ftrace_trace_userstack() static and conditional (Waiman Long) [1766681] - [kernel] tracing: Use percpu stack trace buffer more intelligently (Waiman Long) [1766681] - [kernel] tracing: Simplify stacktrace retrieval in histograms (Waiman Long) [1766681] - [kernel] lockdep: Remove save argument from check_prev_add() (Waiman Long) [1766681] - [kernel] lockdep: Remove unused trace argument from print_circular_bug() (Waiman Long) [1766681] - [drm] drm: Simplify stacktrace handling (Waiman Long) [1766681] - [md] dm persistent data: Simplify stack trace handling (Waiman Long) [1766681] - [md] dm bufio: Simplify stack trace retrieval (Waiman Long) [1766681] - [fs] btrfs: ref-verify: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] dma/debug: Simplify stracktrace retrieval (Waiman Long) [1766681] - [lib] fault-inject: Simplify stacktrace retrieval (Waiman Long) [1766681] - [mm] mm/page_owner: Simplify stack trace handling (Waiman Long) [1766681] - [mm] mm/kmemleak: Simplify stacktrace handling (Waiman Long) [1766681] - [mm] mm/slub: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] latency_top: Simplify stack trace handling (Waiman Long) [1766681] - [fs] proc: Simplify task stack retrieval (Waiman Long) [1766681] - [kernel] backtrace-test: Simplify stack trace handling (Waiman Long) [1766681] - [lib] lib/stackdepot: Provide functions which operate on plain storage arrays (Waiman Long) [1766681] - [kernel] stacktrace: Provide helpers for common stack trace operations (Waiman Long) [1766681] - [kernel] tracing: Cleanup stack trace code (Waiman Long) [1766681] - [kernel] tracing: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [drm] drm: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] latency_top: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/kasan: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/page_owner: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/slub: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] lockdep: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] s390/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] parisc/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] arm64/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] riscv/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] unicore32/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] sh/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] arm/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] [x86] x86/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] um/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [mm] mm/page_owner: clamp read count to PAGE_SIZE (Waiman Long) [1766681] - [kernel] tracing: Export trace_dump_stack to modules (Waiman Long) [1766681] - [kernel] tracing: Have stack tracer trace full stack (Waiman Long) [1766681] - [kernel] trace: Use rcu_dereference_raw for hooks from trace-event subsystem (Waiman Long) [1766681] - [kernel] tracing: Have trace_stack nr_entries compare not be so subtle (Waiman Long) [1766681] - [cpuidle] cpuidle: governor: Add new governors to cpuidle_governors again (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: do not set an owner to allow modunload (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: set haltpoll as preferred governor (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: allow governor switch on cpuidle_register_driver() (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: Add cpuidle.governor= command line parameter (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: vcpu hotplug support (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: disable host side polling when kvm virtualized (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: add haltpoll governor (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: header file stubs must be "static inline" (Marcelo Tosatti) [1759282] - [cpuidle] governors: unify last_state_idx (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: add poll_limit_ns to cpuidle_device structure (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Fix default time limit (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Disregard disable idle states (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Revise loop termination condition (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: menu: Fix wakeup statistics updates for polling state (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: return -ENODEV on modinit failure (Marcelo Tosatti) [1759282] - [cpuidle] add cpuidle-haltpoll driver (Marcelo Tosatti) [1759282] - [mm] mem-hotplug: fix node spanned pages when we have a node with only ZONE_MOVABLE (Baoquan He) [1756210] - [x86] x86, efi: never relocate kernel below lowest acceptable address (Kairui Song) [1747367] - [fs] CIFS: Force reval dentry if LOOKUP_REVAL flag is set (Dave Wysochanski) [1767664] - [fs] CIFS: Force revalidate inode when dentry is stale (Dave Wysochanski) [1767664] - [fs] CIFS: Gracefully handle QueryInfo errors during open (Dave Wysochanski) [1767664] - [block] blk-mq: make sure that line break can be printed (Ming Lei) [1741462] - [block] blk-mq: avoid sysfs buffer overflow with too many CPU cores (Ming Lei) [1741462] - [netdrv] bnx2x: Fix VF's VLAN reconfiguration in reload. (Manish Chopra) [1720393] - [netdrv] bnx2x: Prevent ptp_task to be rescheduled indefinitely (Manish Chopra) [1720393] - [netdrv] bnx2x: Check if transceiver implements DDM before access (Manish Chopra) [1720393] - [fs] xfs: allocate xattr buffer on demand (Eric Sandeen) [1684599] - [fs] xfs: consolidate attribute value copying (Eric Sandeen) [1684599] - [fs] xfs: move remote attr retrieval into xfs_attr3_leaf_getvalue (Eric Sandeen) [1684599] - [fs] xfs: remove unnecessary indenting from xfs_attr3_leaf_getvalue (Eric Sandeen) [1684599] - [fs] xfs: make attr lookup returns consistent (Eric Sandeen) [1684599] - [i2c] i2c: i801: Add support for Intel Comet Lake (David Arcari) [1761547] - [powerpc] powerpc/xmon: Improve output of XIVE interrupts (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Fix output of XIVE IPI (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Add a dump of all XIVE interrupts (Diego Domingos) [1731130] - [powerpc] powerpc/xive: Fix dump of XIVE interrupt under pseries (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL (Diego Domingos) [1731130] - [fs] xfs: convert inode to extent format after extent merge due to shift (Brian Foster) [1745253] - [mmc] mmc: sdhci-pci: Add support for Intel CML (Alexander Beregalov) [1761593] - [powerpc] powerpc/mm/mce: Keep irqs disabled during lockless page table walk (Gustavo Duarte) [1524649] - [tools] seltests/powerpc: Add a selftest for memcpy_mcsafe (Gustavo Duarte) [1524649] - [powerpc] powerpc/memcpy: Fix stack corruption for smaller sizes (Gustavo Duarte) [1524649] - [powerpc] powerpc: add machine check safe copy_to_user (Gustavo Duarte) [1524649] - [powerpc] powerpc/memcpy: Add memcpy_mcsafe for pmem (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Handle UE event for memcpy_mcsafe (Gustavo Duarte) [1524649] - [kernel] extable: Add function to search only kernel exception table (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Make machine_check_ue_event() static (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Fix MCE handling for huge pages (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Schedule work from irq_work (Gustavo Duarte) [1524649] - [x86] x86/boot/64: Round memory hole size up to next PMD page (Frank Ramsay) [1755602] - [x86] x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area (Frank Ramsay) [1755602] - [idle] intel_idle: add support for Jacobsville (Steve Best) [1481744] - [powercap] powercap/intel_rapl: add support for ICX (Steve Best) [1724421] - [block] blk-mq: apply normal plugging for HDD (Ming Lei) [1759380] - [block] blk-mq: honor IO scheduler for multiqueue devices (Ming Lei) [1759380] - [block] blk-mq: simplify blk_mq_make_request() (Ming Lei) [1759380] - [block] blk-mq: remove blk_mq_put_ctx() (Ming Lei) [1759380] - [nvdimm] libnvdimm: Enable unit test infrastructure compile checks (Jeff Moyer) [1724965] - [nvdimm] libnvdimm: Use PAGE_SIZE instead of SZ_4K for align check (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/label: Remove the dpa align check (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pmem: Advance namespace seed for specific probe errors (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/region: Rewrite _probe_success() to _advance_seeds() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Consolidate 'security' operations (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Tighten scope of nvdimm->busy vs security operations (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Introduce a 'frozen' attribute (Jeff Moyer) [1724965] - [nvdimm] libnvdimm, region: Use struct_size() in kzalloc() (Jeff Moyer) [1724965] - [tools] tools/testing/nvdimm: Fix fallthrough warning (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/of_pmem: Provide a unique name for bus provider (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Fix wait_nvdimm_bus_probe_idle() ABBA deadlock (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Stop holding nvdimm_bus_list_mutex over __nd_ioctl() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Prepare the nd_ioctl() path to be re-entrant (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/region: Register badblocks before namespaces (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Prevent duplicate device_unregister() calls (Jeff Moyer) [1724965] - [drivers] drivers/base: Introduce kill_device() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm, namespace: Drop uuid_t implementation detail (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'resource' attribute (Jeff Moyer) [1724965] - [dax] device-dax: Drop register_filesystem() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead (Jeff Moyer) [1724965] - [nvdimm] libnvdimm: Fix compilation warnings with W=1 (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/namespace: Fix label tracking error (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'modalias' attribute to DAX 'bus' devices (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'target_node' attribute (Jeff Moyer) [1724965] - [dax] device-dax: Auto-bind device after successful new_id (Jeff Moyer) [1724965] - [dax] acpi/nfit, device-dax: Identify differentiated memory with a unique numa-node (Jeff Moyer) [1724965] - [dax] device-dax: Add /sys/class/dax backwards compatibility (Jeff Moyer) [1724965] - [dax] device-dax: Add support for a dax override driver (Jeff Moyer) [1724965] - [dax] device-dax: Move resource pinning+mapping into the common driver (Jeff Moyer) [1724965] - [dax] device-dax: Introduce bus + driver model (Jeff Moyer) [1724965] - [dax] device-dax: Start defining a dax bus model (Jeff Moyer) [1724965] - [dax] device-dax: Remove multi-resource infrastructure (Jeff Moyer) [1724965] - [dax] device-dax: Kill dax_region base (Jeff Moyer) [1724965] - [dax] device-dax: Kill dax_region ida (Jeff Moyer) [1724965] - [kernel] memremap: Convert to XArray (Jeff Moyer) [1724965] - [drivers] drivers/dax/device.c: convert variable to vm_fault_t type (Jeff Moyer) [1724965] - [drivers] driver core: Rewrite test_async_driver_probe to cover serialization and NUMA affinity (Jeff Moyer) [1724965] - [drivers] libnvdimm: Schedule device registration on node local to the device (Jeff Moyer) [1724965] - [drivers] PM core: Use new async_schedule_dev command (Jeff Moyer) [1724965] - [drivers] driver core: Attach devices on CPU local to device node (Jeff Moyer) [1724965] - [kernel] async: Add support for queueing on specific NUMA node (Jeff Moyer) [1724965] - [kernel] workqueue: Provide queue_work_node to queue work near a given NUMA node (Jeff Moyer) [1724965] - [drivers] driver core: Probe devices asynchronously instead of the driver (Jeff Moyer) [1724965] - [drivers] device core: Consolidate locking and unlocking of parent and device (Jeff Moyer) [1724965] - [drivers] driver core: Establish order of operations for device_add and device_del via bitflag (Jeff Moyer) [1724965] - [drivers] driver core: Add missing dev->bus->need_parent_lock checks (Jeff Moyer) [1724965] - [drivers] driver core: Move async_synchronize_full call (Jeff Moyer) [1724965]- [scsi] scsi: qedi: update driver version to 8.37.0.20 (Nilesh Javali) [1724588] - [scsi] scsi: qedi: Check targetname while finding boot target information (Nilesh Javali) [1724588] - [scsi] scsi: qedi: remove set but not used variables 'cdev' and 'udev' (Nilesh Javali) [1724588] - [scsi] scsi: qedi: remove memset/memcpy to nfunc and use func instead (Nilesh Javali) [1724588] - [scsi] qedi: Use hwfns and affin_hwfn_idx to get MSI-X vector index (Nilesh Javali) [1724588] - [scsi] scsi: qedf: Update the version to 8.42.3.0 (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Fix race betwen fipvlan request and response path (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Use discovery list to traverse rports (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Decrease the LL2 MTU size to 2500 (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Check for module unloading bit before processing link update AEN (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Initiator fails to re-login to switch after link down (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add debug information for unsolicited processing (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add support for 20 Gbps speed (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Interpret supported caps value correctly (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add shutdown callback handler (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Update module description string (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Fix crash during sg_reset (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Stop sending fipvlan request on unload (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Print message during bailout conditions (Nilesh Javali) [1724589] - [scsi] qedf: Use hwfns and affin_hwfn_idx to get MSI-X vector index to use (Nilesh Javali) [1724589] - [scsi] scsi: bnx2fc: Handle scope bits when array returns BUSY or TSF (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variables 'task', 'port', 'orig_task' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variables 'lport', 'host' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variable 'fh' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix bnx2fc_cmd refcount imbalance in send_srr (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix bnx2fc_cmd refcount imbalance in send_rec (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Update the driver version to 2.12.10 (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Limit the IO size according to the FW capability (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Do not allow both a cleanup completion and abort completion for the same request (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Separate out completion flags and variables for abort and cleanup (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Only put reference to io_req in bnx2fc_abts_cleanup if cleanup times out (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Redo setting source FCoE MAC (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix incorrect cast to u64 on shift operation (Nilesh Javali) [1724598] - [netdrv] qed: Fix build error without CONFIG_DEVLINK (Manish Chopra) [1720392] - [netdrv] RDMA/qedr: Fix the hca_type and hca_rev returned in device attributes (Manish Chopra) [1720392] - [netdrv] qede: qede_fp: simplify a bit 'qede_rx_build_skb()' (Manish Chopra) [1720392] - [netdrv] qede: Make two functions static (Manish Chopra) [1720392] - [netdrv] qede: Handle infinite driver spinning for Tx timestamp. (Manish Chopra) [1720392] - [netdrv] qed: fix spelling mistake "fullill" -> "fulfill" (Manish Chopra) [1720392] - [netdrv] qed: Fix Config attribute frame format. (Manish Chopra) [1720392] - [netdrv] qed*: Fix size of config attribute dump. (Manish Chopra) [1720392] - [netdrv] net: qed: Move static keyword to the front of declaration (Manish Chopra) [1720392] - [netdrv] qede: Add support for dumping the grc data. (Manish Chopra) [1720392] - [netdrv] qed: Add APIs for configuring grc dump config flags. (Manish Chopra) [1720392] - [netdrv] qede: Add support for reading the config id attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add APIs for reading config id attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add cleanup in qed_slowpath_start() (Manish Chopra) [1720392] - [netdrv] qed: Add driver API for flashing the config attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add API for configuring NVM attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add new ethtool supported port types based on media. (Manish Chopra) [1720392] - [netdrv] net/ethernet/qlogic/qed: force the string buffer NULL-terminated (Manish Chopra) [1720392] - [netdrv] qed: RDMA - Fix the hw_ver returned in device attributes (Manish Chopra) [1720392] - [netdrv] qed*: Change dpi_addr to be denoted with __iomem (Manish Chopra) [1720392] - [netdrv] qed: reduce maximum stack frame size (Manish Chopra) [1720392] - [netdrv] qed: Prefer pcie_capability_read_word() (Manish Chopra) [1720392] - [netdrv] qed: Add support for Timestamping the unicast PTP packets. (Manish Chopra) [1720392] - [netdrv] qed: Fix -Wmaybe-uninitialized false positive (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Fix default window size to be based on chip (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Fix tc for MPA ll2 connection (Manish Chopra) [1720392] - [netdrv] qed: iWARP - fix uninitialized callback (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Use READ_ONCE and smp_store_release to access ep->state (Manish Chopra) [1720392] - [netdrv] qed: remove redundant assignment to rc (Manish Chopra) [1720392] - [netdrv] qed: Fix static checker warning (Manish Chopra) [1720392] - [netdrv] qed: fix spelling mistake "inculde" -> "include" (Manish Chopra) [1720392] - [netdrv] qed: Reduce the severity of ptp debug message. (Manish Chopra) [1720392] - [netdrv] qed*: Add iWARP 100g support (Manish Chopra) [1720392] - [netdrv] qed: Add qed devlink parameters table (Manish Chopra) [1720392] - [netdrv] qed: Set the doorbell address correctly (Manish Chopra) [1720392] - [netdrv] qedr: Change the MSI-X vectors selection to be based on affined engine (Manish Chopra) [1720392] - [netdrv] qed: Modify offload protocols to use the affined engine (Manish Chopra) [1720392] - [netdrv] qed*: Change hwfn used for sb initialization (Manish Chopra) [1720392] - [netdrv] qed: Add llh ppfid interface and 100g support for offload protocols (Manish Chopra) [1720392] - [netdrv] qed: Modify api for performing a dmae to another PF (Manish Chopra) [1720392] - [virt] kvm: arm/arm64: vgic: Use the appropriate TRACE_INCLUDE_PATH (Auger Eric) [1749501] - [arm64] kvm: Kill hyp_alternate_select() (Auger Eric) [1749501] - [arm64] kvm: Replace hyp_alternate_select with has_vhe() (Auger Eric) [1749501] - [arm64] kvm: Drop hyp_alternate_select for checking for ARM64_WORKAROUND_834220 (Auger Eric) [1749501] - [documentation] kvm: arm/arm64: vgic: Allow more than 256 vcpus for KVM_IRQ_LINE (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Use a single IO device per redistributor (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Remove spurious semicolons (Auger Eric) [1749501] - [arm64] perf_event: Add missing header needed for smp_processor_id() (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Make function comments match function declarations (Auger Eric) [1749501] - [arm64] kvm: Remove VMID rollover I-cache maintenance (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-irqfd: Implement kvm_arch_set_irq_inatomic (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Check the LPI translation cache on MSI injection (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Cache successful MSI->LPI translation (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on vgic teardown (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on ITS disable (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on disabling LPIs (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on specific commands (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Add MSI-LPI translation cache invalidation (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Add __vgic_put_lpi_locked primitive (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Add LPI translation cache definition (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-v2: Handle SGI bits in GICD_I{S, C}PENDR0 as WI (Auger Eric) [1749501] - [arm64] kvm: Replace hardcoded '1' with SYS_PAR_EL1_F (Auger Eric) [1749501] - [arm64] sysreg: Add some field definitions for PAR_EL1 (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Fix potential deadlock when ap_list is long (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Properly initialise private IRQ affinity (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Reevaluate level sensitive interrupts on enable (Auger Eric) [1749501] - [arm64] kvm: arm64: Don't write junk to sysregs on reset (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Sync ICH_VMCR_EL2 back when about to block (Auger Eric) [1749501] - [arm64] kvm: hyp: debug-sr: Mark expected switch fall-through (Auger Eric) [1749501] - [arm64] kvm: arm64: Update kvm_arm_exception_class and esr_class_str for new EC (Auger Eric) [1749501] - [virt] kvm: arm: vgic-v3: Mark expected switch fall-through (Auger Eric) [1749501] - [arm64] kvm: regmap: Fix unexpected switch fall-through (Auger Eric) [1749501] - [arm64] sve: Fix a couple of magic numbers for the Z-reg count (Auger Eric) [1749501] - [arm64] sve: Factor out FPSIMD to SVE state conversion (Auger Eric) [1749501] - [arm64] kvm: arm/arm64: Initialise host's MPIDRs by reading the actual register (Auger Eric) [1749501] - [arm64] kvm: arm64: Migrate _elx sysreg accessors to msr_s/mrs_s (Auger Eric) [1749501] - [arm64] sysreg: Make mrs_s and msr_s macros work with Clang and LTO (Auger Eric) [1749501] - [documentation] kvm: doc: Add API documentation on the KVM_REG_ARM_WORKAROUNDS register (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Add save/restore support for firmware workaround state (Auger Eric) [1749501] - [arm64] kvm: Propagate full Spectre v2 workaround state to KVM guests (Auger Eric) [1749501] - [arm64] sve: Fix missing SVE/FPSIMD endianness conversions (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Fix kvm_device leak in vgic_its_destroy (Auger Eric) [1749501] - [arm64] kvm: arm64: Filter out invalid core register IDs in KVM_GET_REG_LIST (Auger Eric) [1749501] - [arm64] kvm: arm64: Skip more of the SError vaxorcism (Auger Eric) [1749501] - [arm64] kvm: arm64: Re-mask SError after the one instruction window (Auger Eric) [1749501] - [arm64] Update silicon-errata.txt for Neoverse-N1 #1349291 (Auger Eric) [1749501] - [arm64] kvm: arm64: Defer guest entry when an asynchronous exception is pending (Auger Eric) [1749501] - [arm64] kvm: arm64: Consume pending SError as early as possible (Auger Eric) [1749501] - [arm64] kvm: arm64: Make indirect vectors preamble behaviour symmetric (Auger Eric) [1749501] - [arm64] kvm: arm64: Abstract the size of the HYP vectors pre-amble (Auger Eric) [1749501] - [arm64] assembler: Switch ESB-instruction with a vanilla nop if !ARM64_HAS_RAS (Auger Eric) [1749501] - [arm64] kvm: arm64/sve: Fix vq_present() macro to yield a bool (Auger Eric) [1749501] - [arm64] kvm: arm64: Implement vq_present() as a macro (Auger Eric) [1749501] - [arm64] fpsimd: Don't disable softirq when touching FPSIMD/SVE state (Auger Eric) [1749501] - [arm64] fpsimd: Introduce fpsimd_save_and_flush_cpu_state() and use it (Auger Eric) [1749501] - [arm64] fpsimd: Remove the prototype for sve_flush_cpu_state() (Auger Eric) [1749501] - [scripts] genksyms: Teach parser about 128-bit built-in types (Auger Eric) [1749501] - [tools] kvm: selftests: introduce aarch64_vcpu_add_default (Auger Eric) [1749501] - [tools] kvm: selftests: introduce aarch64_vcpu_setup (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Move cc/it checks under hyp's Makefile to avoid instrumentation (Auger Eric) [1749501] - [arm64] kvm: arm64: Move pmu hyp code under hyp's Makefile to avoid instrumentation (Auger Eric) [1749501] - [documentation] arm64: docs: Document perf event attributes (Auger Eric) [1749501] - [arm64] kvm: Fix perf cycle counter support for VHE (Auger Eric) [1749501] - [arm64] kvm: Avoid isb's by using direct pmxevtyper sysreg (Auger Eric) [1749501] - [arm64] kvm: Enable VHE support for :G/:H perf event modifiers (Auger Eric) [1749501] - [arm64] kvm: Enable !VHE support for :G/:H perf event modifiers (Auger Eric) [1749501] - [arm64] arm_pmu: Add !VHE support for exclude_host/exclude_guest attributes (Auger Eric) [1749501] - [arm64] kvm: Add accessors to track guest/host only counters (Auger Eric) [1749501] - [arm64] arm_pmu: Remove unnecessary isb instruction (Auger Eric) [1749501] - [arm64] perf: Add support for chaining event counters (Auger Eric) [1749501] - [arm64] perf: Disable PMU while processing counter overflows (Auger Eric) [1749501] - [arm64] perf: Clean up armv8pmu_select_counter (Auger Eric) [1749501] - [arm64] kvm: arm: Remove pgtable page standard functions from stage-2 page tables (Auger Eric) [1749501] - [netdrv] e1000e: Add support for Tiger Lake (Ken Cox) [1767480] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (Corinna Vinschen) [1721705] - [netdrv] igb: Use dev_get_drvdata where possible (Corinna Vinschen) [1721705] - [netdrv] net: Use skb accessors in network drivers (Corinna Vinschen) [1721705] - [netdrv] igb: add RR2DCDELAY to ethtool registers dump (Corinna Vinschen) [1721705] - [netdrv] igb: minor ethool regdump amendment (Corinna Vinschen) [1721705] - [netdrv] igb: clear out skb->tstamp after reading the txtime (Corinna Vinschen) [1721705] - [netdrv] igb: mark expected switch fall-through (Corinna Vinschen) [1721705] - [netdrv] igb: mark expected switch fall-through (Corinna Vinschen) [1721705] - [netdrv] igb/igc: warn when fatal read failure happens (Corinna Vinschen) [1721705] - [netdrv] igb: fix various indentation issues (Corinna Vinschen) [1721705] - [netdrv] igb: Exclude device from suspend direct complete optimization (Corinna Vinschen) [1721705] - [netdrv] intel: correct return from set features callback (Corinna Vinschen) [1721705] - [netdrv] net: Use skb accessors in network drivers (Corinna Vinschen) [1721708] - [s390] s390/kaslr: reserve memory for kasan usage (Philipp Rudo) [1725888] - [s390] s390/mem_detect: provide single get_mem_detect_end (Philipp Rudo) [1725888] - [s390] s390/setup: adjust start_code of init_mm to _text (Philipp Rudo) [1725888] - [s390] s390/boot: add missing declarations and includes (Philipp Rudo) [1725888] - [s390] locking/lockdep: check for freed initmem in static_obj() (Philipp Rudo) [1725888] - [s390] s390/kernel: add support for kernel address space layout randomization (KASLR) (Philipp Rudo) [1725888] - [s390] s390/kernel: introduce .dma sections (Philipp Rudo) [1725888] - [s390] s390/sclp: do not use static sccbs (Philipp Rudo) [1725888] - [s390] s390/kprobes: use static buffer for insn_page (Philipp Rudo) [1725888] - [s390] s390/kernel: convert SYSCALL and PGM_CHECK handlers to .quad (Philipp Rudo) [1725888] - [s390] s390/kernel: build a relocatable kernel (Philipp Rudo) [1725888] - [s390] s390/extmem: remove code for 31 bit addressing mode (Philipp Rudo) [1725888] - [s390] s390/setup: remove obsolete #ifdef (Philipp Rudo) [1725888] - [net] net/core: work around section mismatch warning for ptp_classifier (Philipp Rudo) [1725888] - [sound] ALSA: bebob: fix to detect configured source of sampling clock for Focusrite Saffire Pro i/o series (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: link the order of establishing connections and Syt-match clock mode (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: expand delay of start for IR context just for version 3 firmware (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: expand sleep just after breaking connections for protocol version 1 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC/SOF - enable SND_SOC_SOF_HDA_COMMON_HDMI_CODEC (Jaroslav Kysela) [1710702] - [sound] ALSA: timer: Fix mutex deadlock at releasing card (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using pmc_plt_clk_0 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: eve: Enable mclk and ssp sclk early (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: dt-bindings: rt5682: add button delay device property (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: rt5682: improve the sensitivity of push button (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: bxt_rt298: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: add support for snd-hda-codec-hdmi (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: fix include guard name (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: use snd-hda-codec-hdmi (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: hdac_hda: add support for HDMI/DP as a HDA codec (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/hdmi - implement mst_no_extra_pcms flag (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF - remove the dead code (skylake/kabylake) (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel - fix the card names (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pci: Add prepare/complete PM callbacks (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: Add support for DSP D0i3 state when entering S0ix (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: return -ENOTSUPP if D0I3 is not supported (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: implement suspend/resume for S0ix<->S0 transition (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ignore suspend/resume for D0ix compatible streams (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: implement prepare/complete callbacks (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a flag suspend_ignored for sof stream (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a flag to indicate the system suspend target (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: CNL: add support for sending compact IPC (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: add helpers for setting D0 substate for ADSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: configure D0ix IPC flags in set_power_state (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: HDA: add cAVS specific compact IPC header file (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: Don't read mailbox for PM_GATE reply (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: introduce message for DSP power gating (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: rename sof_send_pm_ipc to sof_send_pm_ctx_ipc (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: HDA: use macro for register polling retry count (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: align the comments for D0I3C update (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: parse and store d0i3_compatible flag (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: token: add tokens for PCM compatible with D0i3 substate (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add flag to snd_sof_pcm_stream for D0i3 compatible stream (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: APL: add set_power_state() ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: CNL: add set_power_state() ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: Add helper for setting DSP D0ix substate (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add set_power_state() to dsp_ops for power state update (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: reset default d0_substate at probe() and resume() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a field to store the current D0 substate of DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: eve: implement set_bias_level function for rt5514 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: only support INFO_BATCH for legacy platforms (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: initial support to JasperLake. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for JSL (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: add dev_err() traces for snd_sof_dsp_read_poll_timeout() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: improve error handling (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: sof: include types.h at header.h (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Fix randbuild error (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: check errors when parsing LED tokens (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: remove always-true redundant test (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: bdw: fix operator precedence warnings (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: byt: fix operator precedence warnings (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: imx: Read ESAI parameters and send them to DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: acpi led support for switch controls (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: imx: Describe ESAI parameters to be sent to DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pci: add debug module param (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: acpi: add debug module param (Jaroslav Kysela) [1710702] - [sound] ALSA: Revert "ASoC: SOF: Force polling mode on CFL and CNL" (Jaroslav Kysela) [1710702] - [sound] ALSA: AsoC: SOF: refactor control load code (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: enable dual control for pga (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: enable sync_write in hdac_bus (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: simple_card_utils.h: Add missing include (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: Add context data to any IPC timeout. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: fix reset of host_period_bytes (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: introduce no_stream_position in sof_ipc_stream_params struct (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: core: check for mandatory fw_ready op during SOF probe (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: retain DSP context after FW exception. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: trace: move to opt-in with Kconfig and module parameter (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Fix 2 front mics of codec 0x623 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Add support for ALC623 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Fix mutex deadlock in HDMI codec driver (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Fix pending unsol events at shutdown (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: Correct a typo in the clock proc string (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: add support for MOTU UltraLite (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: code refactoring to handle model specific switch for protocol v2 (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: minor code refactoring for protocol version 2 (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: detect SPH source of sampling clock (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: print for unknown source of sampling clock (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: fix wrong spelling for macro (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: Fix prototype of helper function to return negative value (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: sound: usb: usb true/false for bool return type (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Allow non-Intel device probe gracefully (Jaroslav Kysela) [1710702] - [sound] ALSA: Revert "ALSA: hda: Flush interrupts on disabling" (Jaroslav Kysela) [1710702] - [sound] ALSA: PCI: Fix missing inline for pci_pr3_present() (Jaroslav Kysela) [1710702] - [sound] ALSA: PCI: Add a helper to check Power Resource Requirements _PR3 existence (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Fix copy&paste error in the validator (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Add DSD support for EVGA NU Audio (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: postpone to start IR context (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: handle several AMDTP streams in callback handler of IRQ target (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: cancel flushing isoc context in the laste step to process context callback (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: replace ack callback to flush isoc contexts in AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: replace pointer callback to flush isoc contexts in AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: add irq_target member into amdtp_domain struct (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: tune the minimum available size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: tune the maximum available size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: schedule hardware IRQ according to the size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: use variable size of queue for isoc packets instead of fixed size (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: use the same size of period for PCM substreams in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: add a member into AMDTP domain for events per period (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Enable headset mic on Asus MJ401TA (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Add support for ALC711 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Force runtime PM on Nvidia HDMI codecs (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Add laptop imic fixup for ASUS M9V laptop (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Add Tigerlake/Jasperlake PCI ID (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a driver (Jaroslav Kysela) [1710702] - [sound] ALSA: hdac: clear link output stream mapping (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: dapm: fix a memory leak bug (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: debug: fix possible memory leak in sof_dfsentry_write() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: sof-rt5682: add a check for devm_clk_get (Jaroslav Kysela) [1710702] - [sound] ALSA: Fix Kconfig indentation (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: control: return true when kcontrol values change (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: fix intel DSP config (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: add Intel DSP configuration / probe code (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: core: Fix pcm code debugfs error (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoc: rockchip: i2s: Fix RPM imbalance (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm_adsp: Don't generate kcontrols without READ flags (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: bytcr_rt5651: add null check to support_button_press (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: add remove function to disable jack (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: rt5682: add NULL handler to set_jack function (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: use separate route map for dmic (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: initialise and verify FW crash dump data. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: fix warnings during FW load (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pcm: harden PCM STOP sequence (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pcm: fix resource leak in hw_free (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: fix parse fail issue for byte/bool tuple types (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: loader: fix kernel oops on firmware boot failure (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm_adsp: Fix theoretical NULL pointer for alg_region (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: max98373: check for device node before parsing (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: soc-component: fix a couple missing error assignments (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm8994: Do not register inapplicable controls for WM1811 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: samsung: arndale: Add missing OF node dereferencing (Jaroslav Kysela) [1710702] - [infiniband] RDMA/bnxt_re: Fix spelling mistake "missin_resp" -> "missing_resp" (Kamal Heib) [1724772] - [infiniband] RDMA: Fix goto target to release the allocated memory (Kamal Heib) [1724772] - [infiniband] IB/bnxt_re: Do not notifify GID change event (Kamal Heib) [1724772] - [infiniband] RDMA/bnxt_re: Honor vlan_id in GID entry comparison (Kamal Heib) [1724772] - [infiniband] ib/bnxt: Remove mention of idr_alloc from comment (Kamal Heib) [1724772] - [infiniband] RDMA/bnxt_re: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1724772] - [infiniband] bnxt_re: Clean cq for kernel consumers only (Kamal Heib) [1724772] - [infiniband] bnxt_re: fix the regression due to changes in alloc_pbl (Kamal Heib) [1724772] - [scsi] scsi: lpfc: Make lpfc_debugfs_ras_log_data static (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix NULL check before mempool_destroy is not needed (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix spelling error in MAGIC_NUMER_xxx (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix build error of lpfc_debugfs.c for vfree/vmalloc (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: lpfc_nvmet: Fix Use plain integer as NULL pointer (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: lpfc_attr: Fix Use plain integer as NULL pointer (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.0 (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add additional discovery log messages (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add FC-AL support to lpe32000 models (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add FA-WWN Async Event reporting (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add log macros to allow print by serverity or verbosity setting (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Make FW logging dynamically configurable (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Revise interrupt coalescing for missing scenarios (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Remove lock contention target write path (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Slight fast-path performance optimizations (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix coverity error of dereference after null check (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix hardlockup in lpfc_abort_handler (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix bad ndlp ptr in xri aborted handling (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix SLI3 hba in loop mode not discovering devices (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix lockdep errors in sli_ringtx_put (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix reporting of read-only fw error errors (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix lpfc_nvmet_mrq to be bound by hdw queue count (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Make function lpfc_defer_pt2pt_acc static (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: add support for posting FC events on FPIN reception (Dick Kennedy) [1768102] - [infiniband] RDMA/siw: Mark Software iWARP Driver as tech-preview (Kamal Heib) [1767292] - [crypto] crypto: ccp - Replace dma_pool_alloc + memset with dma_pool_zalloc (Gary Hook) [1724859] - [crypto] crypto: ccp/gcm - use const time tag comparison. (Gary Hook) [1724859] - [crypto] crypto: ccp - Switch to SPDX license identifiers (Gary Hook) [1724859] - [crypto] crypto: ccp - Validate the the error value used to index error messages (Gary Hook) [1724859] - [crypto] crypto: ccp - Make ccp_register_rsa_alg static (Gary Hook) [1724859] - [crypto] crypto: ccp - Update copyright notices and dates (Gary Hook) [1724859] - [crypto] cross-tree: phase out dma_zalloc_coherent() (Gary Hook) [1724859] - [x86] x86/umwait: Fix error handling in umwait_init() (Steve Best) [1724525] - [documentation] Documentation/ABI: Document umwait control sysfs interfaces (Steve Best) [1724525] - [x86] x86/umwait: Add sysfs interface to control umwait maximum time (Steve Best) [1724525] - [x86] x86/umwait: Add sysfs interface to control umwait C0.2 state (Steve Best) [1724525] - [x86] x86/umwait: Initialize umwait control values (Steve Best) [1724525] - [x86] x86/cpufeatures: Enumerate user wait instructions (Steve Best) [1724525] - [fs] virtiofs: Remove set but not used variable 'fc' (Vivek Goyal) [1694161] - [fs] virtiofs: Retry request submission from worker context (Vivek Goyal) [1694161] - [fs] virtiofs: Count pending forgets as in_flight forgets (Vivek Goyal) [1694161] - [fs] virtiofs: Set FR_SENT flag only after request has been sent (Vivek Goyal) [1694161] - [fs] virtiofs: No need to check fpq->connected state (Vivek Goyal) [1694161] - [fs] virtiofs: Do not end request in submission context (Vivek Goyal) [1694161] - [fs] fuse: don't advise readdirplus for negative lookup (Vivek Goyal) [1694161] - [fs] fuse: don't dereference req->args on finished request (Vivek Goyal) [1694161] - [fs] virtio-fs: don't show mount options (Vivek Goyal) [1694161] - [fs] virtio-fs: Change module name to virtiofs.ko (Vivek Goyal) [1694161] - [include] bitops: protect variables in bit_clear_unless() macro (Vivek Goyal) [1694161] - [include] bitops: protect variables in set_mask_bits() macro (Vivek Goyal) [1694161] - [fs] fuse: Make fuse_args_to_req static (Vivek Goyal) [1694161] - [fs] fuse: fix memleak in cuse_channel_open (Vivek Goyal) [1694161] - [fs] fuse: fix beyond-end-of-page access in fuse_parse_cache() (Vivek Goyal) [1694161] - [fs] fuse: unexport fuse_put_request (Vivek Goyal) [1694161] - [fs] fuse: kmemcg account fs data (Vivek Goyal) [1694161] - [fs] fuse: on 64-bit store time in d_fsdata directly (Vivek Goyal) [1694161] - [fs] fuse: fix missing unlock_page in fuse_writepage() (Vivek Goyal) [1694161] - [fs] virtio-fs: add virtiofs filesystem (Vivek Goyal) [1694161] - [fs] fuse: allow skipping control interface and forced unmount (Vivek Goyal) [1694161] - [fs] fuse: dissociate DESTROY from fuseblk (Vivek Goyal) [1694161] - [fs] fuse: delete dentry if timeout is zero (Vivek Goyal) [1694161] - [fs] fuse: separate fuse device allocation and installation in fuse_conn (Vivek Goyal) [1694161] - [fs] fuse: add fuse_iqueue_ops callbacks (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_fill_super_common() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_dequeue_forget() function (Vivek Goyal) [1694161] - [fs] fuse: export fuse_get_unique() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_send_init_request() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_len_args() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_end_request() (Vivek Goyal) [1694161] - [fs] fuse: fix request limit (Vivek Goyal) [1694161] - [fs] fuse: stop copying pages to fuse_req (Vivek Goyal) [1694161] - [fs] fuse: stop copying args to fuse_req (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_req (Vivek Goyal) [1694161] - [fs] fuse: simplify request allocation (Vivek Goyal) [1694161] - [fs] fuse: unexport request ops (Vivek Goyal) [1694161] - [fs] fuse: convert retrieve to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert release to simple api (Vivek Goyal) [1694161] - [fs] cuse: convert init to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert init to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert writepages to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert readdir to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert readpages to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert direct_io to simple api (Vivek Goyal) [1694161] - [fs] fuse: add simple background helper (Vivek Goyal) [1694161] - [fs] fuse: convert sync write to simple api (Vivek Goyal) [1694161] - [fs] fuse: covert readpage to simple api (Vivek Goyal) [1694161] - [fs] fuse: fuse_short_read(): don't take fuse_req as argument (Vivek Goyal) [1694161] - [fs] fuse: convert ioctl to simple api (Vivek Goyal) [1694161] - [fs] fuse: move page alloc (Vivek Goyal) [1694161] - [fs] fuse: convert readlink to simple api (Vivek Goyal) [1694161] - [fs] fuse: add pages to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert destroy to simple api (Vivek Goyal) [1694161] - [fs] fuse: add nocreds to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert fuse_force_forget() to simple api (Vivek Goyal) [1694161] - [fs] fuse: add noreply to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert flush to simple api (Vivek Goyal) [1694161] - [fs] fuse: simplify 'nofail' request (Vivek Goyal) [1694161] - [fs] fuse: rearrange and resize fuse_args fields (Vivek Goyal) [1694161] - [fs] fuse: flatten 'struct fuse_args' (Vivek Goyal) [1694161] - [fs] fuse: fix deadlock with aio poll and fuse_iqueue::waitq.lock (Vivek Goyal) [1694161] - [fs] cuse: fix broken release (Vivek Goyal) [1694161] - [fs] fuse: cleanup fuse_wait_on_page_writeback (Vivek Goyal) [1694161] - [fs] fuse: require /dev/fuse reads to have enough buffer capacity (take 2) (Vivek Goyal) [1694161] - [fs] Revert "fuse: require /dev/fuse reads to have enough buffer capacity" (Vivek Goyal) [1694161] - [fs] fuse: extract helper for range writeback (Vivek Goyal) [1694161] - [fs] fuse: add FUSE_WRITE_KILL_PRIV (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_alloc_inode (Vivek Goyal) [1694161] - [fs] fuse: Add ioctl flag for x32 compat ioctl (Vivek Goyal) [1694161] - [fs] fuse: document fuse_fsync_in.fsync_flags (Vivek Goyal) [1694161] - [fs] fuse: require /dev/fuse reads to have enough buffer capacity (Vivek Goyal) [1694161] - [fs] fuse: retrieve: cap requested size to negotiated max_write (Vivek Goyal) [1694161] - [fs] fuse: allow filesystems to have precise control over data cache (Vivek Goyal) [1694161] - [fs] fuse: convert printk -> pr_* (Vivek Goyal) [1694161] - [fs] fuse: fix writepages on 32bit (Vivek Goyal) [1694161] - [fs] fuse: cache readdir calls if filesystem opts out of opendir (Vivek Goyal) [1694161] - [fs] fuse: support clients that don't implement 'opendir' (Vivek Goyal) [1694161] - [fs] fuse: lift bad inode checks into callers (Vivek Goyal) [1694161] - [fs] fuse: multiplex cached/direct_io file operations (Vivek Goyal) [1694161] - [fs] fuse add copy_file_range to direct io fops (Vivek Goyal) [1694161] - [fs] fuse: use iov_iter based generic splice helpers (Vivek Goyal) [1694161] - [fs] fuse: Switch to using async direct IO for FOPEN_DIRECT_IO (Vivek Goyal) [1694161] - [fs] fuse: use atomic64_t for khctr (Vivek Goyal) [1694161] - [fs] fuse: clean up aborted (Vivek Goyal) [1694161] - [fs] fuse: Protect ff->reserved_req via corresponding fi->lock (Vivek Goyal) [1694161] - [fs] fuse: Protect fi->nlookup with fi->lock (Vivek Goyal) [1694161] - [fs] fuse: Introduce fi->lock to protect write related fields (Vivek Goyal) [1694161] - [fs] fuse: Convert fc->attr_version into atomic64_t (Vivek Goyal) [1694161] - [fs] fuse: Add fuse_inode argument to fuse_prepare_release() (Vivek Goyal) [1694161] - [fs] fuse: Verify userspace asks to requeue interrupt that we really sent (Vivek Goyal) [1694161] - [fs] fuse: Do some refactoring in fuse_dev_do_write() (Vivek Goyal) [1694161] - [fs] fuse: Wake up req->waitq of only if not background (Vivek Goyal) [1694161] - [fs] fuse: Optimize request_end() by not taking fiq->waitq.lock (Vivek Goyal) [1694161] - [fs] fuse: Kill fasync only if interrupt is queued in queue_interrupt() (Vivek Goyal) [1694161] - [fs] fuse: Remove stale comment in end_requests() (Vivek Goyal) [1694161] - [fs] fuse: Replace page without copying in fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: fix leaked aux requests (Vivek Goyal) [1694161] - [fs] fuse: only reuse auxiliary request in fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_find_writeback() helper (Vivek Goyal) [1694161] - [fs] cuse: fix ioctl (Vivek Goyal) [1694161] - [fs] fuse: Fix memory leak in fuse_dev_free() (Vivek Goyal) [1694161] - [fs] fuse: fix revalidation of attributes for permission check (Vivek Goyal) [1694161] - [fs] fuse: fix fsync on directory (Vivek Goyal) [1694161] - [fs] fuse: Add bad inode check in fuse_destroy_inode() (Vivek Goyal) [1694161] - [fs] fuse: enable caching of symlinks (Vivek Goyal) [1694161] - [fs] fuse: only invalidate atime in direct read (Vivek Goyal) [1694161] - [fs] fuse: realloc page array (Vivek Goyal) [1694161] - [fs] fuse: add max_pages to init_out (Vivek Goyal) [1694161] - [fs] fuse: allocate page array more efficiently (Vivek Goyal) [1694161] - [fs] fuse: reduce size of struct fuse_inode (Vivek Goyal) [1694161] - [fs] fuse: use iversion for readdir cache verification (Vivek Goyal) [1694161] - [fs] fuse: use mtime for readdir cache verification (Vivek Goyal) [1694161] - [fs] fuse: add readdir cache version (Vivek Goyal) [1694161] - [fs] fuse: allow using readdir cache (Vivek Goyal) [1694161] - [fs] fuse: allow caching readdir (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_emit() helper (Vivek Goyal) [1694161] - [fs] fuse: add FOPEN_CACHE_DIR (Vivek Goyal) [1694161] - [fs] fuse: split out readdir.c (Vivek Goyal) [1694161] - [fs] fuse: Use hash table to link processing request (Vivek Goyal) [1694161] - [fs] fuse: kill req->intr_unique (Vivek Goyal) [1694161] - [fs] fuse: change interrupt requests allocation algorithm (Vivek Goyal) [1694161] - [fs] fuse: do not take fc->lock in fuse_request_send_background() (Vivek Goyal) [1694161] - [fs] fuse: introduce fc->bg_lock (Vivek Goyal) [1694161] - [fs] fuse: add locking to max_background and congestion_threshold changes (Vivek Goyal) [1694161] - [fs] fuse: use READ_ONCE on congestion_threshold and max_background (Vivek Goyal) [1694161] - [fs] fuse: use list_first_entry() in flush_bg_queue() (Vivek Goyal) [1694161] - [fs] fuse: reduce allocation size for splice_write (Vivek Goyal) [1694161] - [fs] fuse: use kvmalloc to allocate array of pipe_buffer structs. (Vivek Goyal) [1694161] - [fs] fuse: convert last timespec use to timespec64 (Vivek Goyal) [1694161] - [fs] fs: fuse: Adding new return type vm_fault_t (Vivek Goyal) [1694161] - [fs] fuse: simplify fuse_abort_conn() (Vivek Goyal) [1694161] - [infiniband] RDMA/siw: Fix IPv6 addr_list locking (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix 64/32bit pointer inconsistency (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix SGL mapping issues (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix potential NULL de-ref (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Change CQ flags from 64->32 bits (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix a memory leak in siw_init_cpulist() (Kamal Heib) [1725830 1720892] - [infiniband] Do not dereference 'siw_crypto_shash' before checking (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Remove set but not used variables 'rv' (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix error return code in siw_init_module() (Kamal Heib) [1725830 1720892] - [infiniband] RMDA/siw: Require a 64 bit arch (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Mark expected switch fall-throughs (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Remove set but not used variable 's' (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Add missing dependencies on LIBCRC32C and DMA_VIRT_OPS (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Add missing rtnl_lock around access to ifa (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Use proper enumerated type in map_cqe_status (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Remove unnecessary kthread create/destroy printouts (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix DEFINE_PER_CPU compilation when ARCH_NEEDS_WEAK_PER_CPU (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: addition to kernel build environment (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: completion queue methods (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: receive path (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: transmit path (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: queue pair methods (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: application buffer management (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: application interface (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: connection management (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: network and RDMA core interface (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: main include file (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: iWarp wire packet format (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/cma: fix null-ptr-deref Read in cma_cleanup (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Rewrite PID namespace check to be reliable (Kamal Heib) [1720892] - [infiniband] RDMA/counters: Properly implement PID checks (Kamal Heib) [1720892] - [infiniband] IB/core: Fix NULL pointer dereference when bind QP to counter (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Fix MR npages calculation for IB_ACCESS_HUGETLB (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix error code in stat_get_doit_qp() (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Prevent QP counter binding if counters unsupported (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix -Wunused-const-variable warnings (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Added configuration of RDMA dynamic interrupt moderation to netlink (Kamal Heib) [1720892] - [infiniband] RDMA/core: Provide RDMA DIM support for ULPs (Kamal Heib) [1720892] - [infiniband] linux/dim: Implement RDMA adaptive moderation (DIM) (Kamal Heib) [1720892] - [infiniband] IB/mad: Fix use-after-free in ib mad completion handling (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Track driver QP types in resource tracker (Kamal Heib) [1720892] - [infiniband] RDMA/devices: Remove the lock around remove_client_context (Kamal Heib) [1720892] - [infiniband] RDMA/devices: Do not deadlock during client removal (Kamal Heib) [1720892] - [infiniband] IB/core: Add mitigation for Spectre V1 (Kamal Heib) [1720892] - [infiniband] IB/counters: Always initialize the port counter object (Kamal Heib) [1720892] - [infiniband] IB/core: Fix querying total rdma stats (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix race when resolving IP address (Kamal Heib) [1720892] - [infiniband] xprtrdma: Modernize ops->connect (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove rpcrdma_req::rl_buffer (Kamal Heib) [1720892] - [infiniband] xprtrdma: Refactor chunk encoding (Kamal Heib) [1720892] - [infiniband] xprtrdma: Streamline rpcrdma_post_recvs (Kamal Heib) [1720892] - [infiniband] xprtrdma: Simplify rpcrdma_rep_create (Kamal Heib) [1720892] - [infiniband] xprtrdma: Wake RPCs directly in rpcrdma_wc_send path (Kamal Heib) [1720892] - [infiniband] xprtrdma: Reduce context switching due to Local Invalidation (Kamal Heib) [1720892] - [infiniband] xprtrdma: Add mechanism to place MRs back on the free list (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove fr_state (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove the RPCRDMA_REQ_F_PENDING flag (Kamal Heib) [1720892] - [infiniband] xprtrdma: Fix occasional transport deadlock (Kamal Heib) [1720892] - [infiniband] xprtrdma: Replace use of xdr_stream_pos in rpcrdma_marshal_req (Kamal Heib) [1720892] - [infiniband] xprtrdma: Fix use-after-free in rpcrdma_post_recvs (Kamal Heib) [1720892] - [infiniband] RDMA/core: Make rdma_counter.h compile stand alone (Kamal Heib) [1720892] - [infiniband] IB/core: Work on the caller socket net namespace in nldev_newlink() (Kamal Heib) [1663224 1720892] - [infiniband] RDMA/rxe: Fill in wc byte_len with IB_WC_RECV_RDMA_WITH_IMM (Kamal Heib) [1720892] - [infiniband] ibverbs/rxe: Remove variable self-initialization (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow get default counter statistics through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow get counter mode through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow counter manual mode configration through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Allow manual mode configuration support (Kamal Heib) [1720892] - [infiniband] RDMA/core: Get sum value of all counters when perform a sysfs stat read (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Implement counter dumpit calback (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow counter auto mode configration through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Add "auto" configuration mode support (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Add set/clear per-port auto mode support (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Make is_visible_in_pid_ns() as an API (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Add an API to attach a task to a resource (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Introduce statistic counter (Kamal Heib) [1720892] - [infiniband] IB/ipoib: Add child to parent list only if device initialized (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: remove redundant assignment to variable ret (Kamal Heib) [1720892] - [infiniband] IB/ipoib: Remove memset after vzalloc in ipoib_cm.c (Kamal Heib) [1720892] - [infiniband] IB: Remove unneeded memset (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Audit policy settings for netlink attributes (Kamal Heib) [1720892] - [infiniband] docs: infiniband: convert docs to ReST and rename to *.rst (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Use IB_WR_REG_MR_INTEGRITY for PI handover (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Introduce rdma_rw_inv_key helper (Kamal Heib) [1720892] - [infiniband] RDMA/core: Validate integrity handover device cap (Kamal Heib) [1720892] - [infiniband] RDMA/core: Rename signature qp create flag and signature device capability (Kamal Heib) [1720892] - [infiniband] RDMA/core: Add an integrity MR pool support (Kamal Heib) [1720892] - [infiniband] IB/iser: Unwind WR union at iser_tx_desc (Kamal Heib) [1720892] - [infiniband] IB/iser: Use IB_WR_REG_MR_INTEGRITY for PI handover (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Introduce and implement new IB_WR_REG_MR_INTEGRITY work request (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Update set_sig_data_segment attribute for new signature API (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Pass UMR segment flags instead of boolean (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Add attr for max number page list length for PI operation (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Implement mlx5_ib_map_mr_sg_pi and mlx5_ib_alloc_mr_integrity (Kamal Heib) [1720892] - [infiniband] RDMA/core: Add signature attrs element for ib_mr structure (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce ib_map_mr_sg_pi to map data/protection sgl's (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce IB_MR_TYPE_INTEGRITY and ib_alloc_mr_integrity API (Kamal Heib) [1720892] - [infiniband] RDMA/core: Save the MR type in the ib_mr structure (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce new header file for signature operations (Kamal Heib) [1720892] - [infiniband] RDMA/odp: Do not leak dma maps when working with huge pages (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: Use offsetofend instead of opencoding (Kamal Heib) [1720892] - [infiniband] [scsi] scsi: RDMA/srp: Fix a sleep-in-invalid-context bug (Kamal Heib) [1720892] - [infiniband] RDMA: Check umem pointer validity prior to release (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Remove asynchronic QP destroy (Kamal Heib) [1720892] - [infiniband] RDMA: Convert destroy_wq to be void (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Resort policy array (Kamal Heib) [1720892] - [infiniband] RDMA: Report available cdevs through RDMA_NLDEV_CMD_GET_CHARDEV (Kamal Heib) [1720892] - [infiniband] RDMA: Add NLDEV_GET_CHARDEV to allow char dev discovery and autoload (Kamal Heib) [1720892] - [infiniband] ipoib: correcly show a VF hardware address (Kamal Heib) [1720892] - [infiniband] RDMA: Move rdma_node_type to uapi/ (Kamal Heib) [1720892] - [infiniband] rdma: Remove nes (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: Remove check for ETH_SS_TEST (Kamal Heib) [1720892] - [infiniband] RDMA: Convert CQ allocations to be under core responsibility (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Return correct error code from hns_roce_v1_rsv_lp_qp() (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Don't expose DMA addresses (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb4: Don't expose DMA addresses (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Use sizeof() notation instead of plain sizeof (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA: Clear CQ objects during their allocation (Kamal Heib) [1720892] - [infiniband] RDMA: Clean destroy CQ in drivers do not return errors (Kamal Heib) [1720892] - [infiniband] RDMA/i40iw: Remove useless NULL checks (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Delete and properly mark unimplemented resize CQ function (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Avoid memory allocation during CQ destroy (Kamal Heib) [1720892] - [infiniband] RDMA: Move owner into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] RDMA: Move uverbs_abi_ver into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] RDMA: Move driver_id into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] rdma: Delete the ib_ucm module (Kamal Heib) [1720892] - [infiniband] ucma: Convert ctx_idr to XArray (Kamal Heib) [1720892] - [infiniband] ucma: Convert multicast_idr to XArray (Kamal Heib) [1720892] - [infiniband] RDMA/ucma: Use struct_size() helper (Kamal Heib) [1720892] - [infiniband] RDMA/srp: Accept again source addresses that do not have a port number (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: implement ethtool .get_link() callback (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: check for allocation failure in uapi_add_elm() (Kamal Heib) [1720892] - [infiniband] RDMA: Convert put_page() to put_user_page*() (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Remove second wait queue initialization call (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Remove useless NULL checks (Kamal Heib) [1720892] - [infiniband] RDMA/core: Make ib_destroy_cq() void (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: Remove check of destroy CQ (Kamal Heib) [1720892] - [infiniband] RDMA/core: Return void from ib_device_check_mandatory() (Kamal Heib) [1720892] - [infiniband] RDMA/umem: Move page_shift from ib_umem to ib_odp_umem (Kamal Heib) [1720892] - [infiniband] RDMA/qedr: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb4: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix doc typo (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Add info regarding SG count failure (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Print the correct number of sig MRs (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Fix doc typo (Kamal Heib) [1720892] - [infiniband] IB/isert: Remove unused sig_attrs argument (Kamal Heib) [1720892] - [infiniband] IB/iser: Remove unused sig_attrs argument (Kamal Heib) [1720892] - [infiniband] IB/iser: Refactor iscsi_iser_check_protection function (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Entropy in admin commands id (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Print address on AH creation failure (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Be consistent with success flow return value (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use API to get contiguous memory blocks aligned to device supported page size (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove unused includes (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use rdma block iterator in chunk list creation (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove unneeded admin commands abort flow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use kvzalloc instead of kzalloc with fallback (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove check that prevents destroy of resources in error flows (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Handle mmap insertions overflow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Fix success return value in case of error (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove MAYEXEC flag check from mmap flow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add driver to Kconfig/Makefile (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa module (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add EFA verbs implementation (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add common command handlers (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Implement functions that submit and complete admin commands (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the ABI definitions (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the com service API definitions (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa_com.h file (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa.h header file (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add EFA device definitions (Kamal Heib) [1720892] - [infiniband] RDMA: Add EFA related definitions (Kamal Heib) [1720892] - [fs] CIFS: Fix use after free of file info structures (Dave Wysochanski) [1757865] - [mm] mm, memory_hotplug: fix scan_movable_pages() for gigantic hugepages (Rafael Aquini) [1730172] - [char] ipmi: Don't allow device module unload when in use (Tony Camuso) [1759916] - [netdrv] net: phy: Also request modules for C45 IDs (Gary Hook) [1764274] - [s390] s390/dasd: Fix error handling during online processing (Philipp Rudo) [1764492] - [s390] s390/cpumsf: Check for CPU Measurement sampling (Philipp Rudo) [1764490] - [edac] EDAC/amd64: Support asymmetric dual-rank DIMMs (Gary Hook) [1753384] - [edac] EDAC/amd64: Cache secondary Chip Select registers (Gary Hook) [1753384] - [edac] EDAC/amd64: Decode syndrome before translating address (Gary Hook) [1753384] - [edac] EDAC/amd64: Find Chip Select memory size using Address Mask (Gary Hook) [1753384] - [edac] EDAC/amd64: Initialize DIMM info for systems with more than two channels (Gary Hook) [1753384] - [edac] EDAC/amd64: Recognize DRAM device type ECC capability (Gary Hook) [1753384] - [edac] EDAC/amd64: Support more than two controllers for chip selects handling (Gary Hook) [1753384] - [scsi] scsi: fnic: fix msix interrupt allocation (Govindarajulu Varadarajan) [1745083] - [scsi] scsi: fnic: print port speed only at driver init or speed change (Govindarajulu Varadarajan) [1745083] - [netdrv] qmi_wwan: apply SET_DTR quirk to Sierra WP7607 (Lubomir Rintel) [1729083]- [tools] libbpf: remove compile time warning from libbpf_util.h (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove dependency on barrier.h in xsk.h (Yauheni Kaliuta) [1747341] - [kernel] seccomp, bpf: disable preemption before calling into bpf prog (Yauheni Kaliuta) [1747341] - [lib] bpf: test_bpf: turn off preemption in function __run_once (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove unnecessary cast-to-void (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix sysctl.c warning (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix using uninitialized ioctl results (Yauheni Kaliuta) [1747341] - [tools] libbpf: proper XSKMAP cleanup (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix invalid munmap call (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix XDP socket ring buffer memory ordering (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove likely/unlikely in xsk.h (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: xdp_redirect, correctly get dummy program id (Yauheni Kaliuta) [1747341] - [net] bpf: fix access to skb_shared_info->gso_segs (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix out of bounds backwards jmps due to dead code removal (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix use after free in prog symbol exposure (Yauheni Kaliuta) [1747341] - [include] bpf: Fix preempt_enable_no_resched() abuse (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test cases for pkt/null checks in subprogs (Yauheni Kaliuta) [1747341] - [kernel] bpf: mark registers in all frames after pkt/null checks (Yauheni Kaliuta) [1747341] - [tools] libbpf: add binary to gitignore (Yauheni Kaliuta) [1747341] - [net] bpf: Check address length before reading address family (Yauheni Kaliuta) [1747341] - [net] flow_dissector: disable preemption around BPF calls (Yauheni Kaliuta) [1747341] - [net] flow_dissector: switch kernel context to struct bpf_flow_dissector (Yauheni Kaliuta) [1747341] - [net] flow_dissector: fix clamping of BPF flow_keys for non-zero nhoff (Yauheni Kaliuta) [1747341] - [net] flow_dissector: allow access only to a subset of __sk_buff fields (Yauheni Kaliuta) [1747341] - [net] net/flow_dissector: pass flow_keys->n_proto to BPF programs (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix vlan handling in flow dissector program (Yauheni Kaliuta) [1747341] - [tools] bpf, libbpf: fix quiet install_headers (Yauheni Kaliuta) [1747341] - [tools] libbpf: add libelf dependency to shared library build (Yauheni Kaliuta) [1747341] - [tools] libbpf: add xsk.h to install_headers target (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add btf_dedup test for VOID equivalence check (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix btf_dedup equivalence check handling of different kinds (Yauheni Kaliuta) [1747341] - [documentation] bpf, doc: fix BTF docs reflow of bullet list (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test case for invalid call stack in dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: remove incorrect 'verifier bug' warning (Yauheni Kaliuta) [1747341] - [kernel] bpf: Only print ref_obj_id for refcounted reg (Yauheni Kaliuta) [1747341] - [tools] tool: use bpf_program__get_prog_info_linear() in prog.c:do_dump() (Yauheni Kaliuta) [1747341] - [tools] tools lib bpf: Introduce bpf_program__get_prog_info_linear() (Yauheni Kaliuta) [1747341] - [tools] perf tools: Fix errors under optimization level '-Og' (Yauheni Kaliuta) [1747341] - [kernel] bpf: Try harder when allocating memory for large maps (Yauheni Kaliuta) [1747341] - [tools] tools: bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add fwd enum resolution test for btf_dedup (Yauheni Kaliuta) [1747341] - [tools] btf: resolve enum fwds in btf_dedup (Yauheni Kaliuta) [1747341] - [tools] bpf: Add an example for bpf_get_listener_sock (Yauheni Kaliuta) [1747341] - [tools] bpf: Test ref release issue in bpf_tcp_sock and bpf_sk_fullsock (Yauheni Kaliuta) [1747341] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747341] - [net] bpf: Add bpf_get_listener_sock(struct bpf_sock *sk) helper (Yauheni Kaliuta) [1747341] - [kernel] bpf: Fix bpf_tcp_sock and bpf_sk_fullsock issue related to bpf_sk_release (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix to reject unknown flags in xsk_socket__create() (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix segfault of test_progs when prog loading failed (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix replace_map_fd_with_map_ptr's ldimm64 second imm field (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: test_progs: initialize duration in singal_pending test (Yauheni Kaliuta) [1747341] - [tools] libbpf: force fixdep compilation at the start of the build (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: fix compilation with out-of-tree $(OUTPUT) (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test that GSO works in lwt_ip_encap (Yauheni Kaliuta) [1747341] - [bpf] bpf: hbm: fix spelling mistake "deault" -> "default" (Yauheni Kaliuta) [1747341] - [tools] bpf: add test cases for non-pointer sanitiation logic (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - misc (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - spinlock (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - tracepoint (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - stackmap (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - xdp (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - pkt access (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - preparations (Yauheni Kaliuta) [1747341] - [bpf] bpf: HBM test script (Yauheni Kaliuta) [1747341] - [bpf] bpf: User program for testing HBM (Yauheni Kaliuta) [1747341] - [bpf] bpf: Sample HBM BPF program to limit egress bw (Yauheni Kaliuta) [1747341] - [include] bpf: sync bpf.h to tools and update bpf_helpers.h (Yauheni Kaliuta) [1747341] - [net] bpf: add bpf helper bpf_skb_ecn_set_ce (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: silence compiler warning for xdpsock_user.c (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: set unlimited RLIMIT_MEMLOCK for test_sock_fields (Yauheni Kaliuta) [1747341] - [documentation] docs/bpf: minor casing/punctuation fixes (Yauheni Kaliuta) [1747341] - [documentation] docs/btf: reflow text to fill up to 78 characters (Yauheni Kaliuta) [1747341] - [documentation] docs/btf: fix typos, improve wording (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix u64_stats_init() usage in bpf_prog_alloc() (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add btf_dedup test of FWD/STRUCT resolution (Yauheni Kaliuta) [1747341] - [tools] btf: allow to customize dedup hash table size (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix formatting for btf_ext__get_raw_data (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix btf_dedup testing code (Yauheni Kaliuta) [1747341] - [tools] tools: libbpf: make sure readelf shows full names in build checks (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: use libbpf where easy (Yauheni Kaliuta) [1747341] - [tools] tools: libbpf: add a correctly named define for map iteration (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: remove load_sock_ops in favour of bpftool (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: force IPv4 in ping (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: use __bpf_constant_htons in test_prog.c for flow dissector (Yauheni Kaliuta) [1747341] - [tools] bpf: add missing entries to bpf_helpers.h (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: selftests: add map lookup to test_map_in_map bpf prog (Yauheni Kaliuta) [1747341] - [kernel] bpf: set inner_map_meta->spin_lock_off correctly (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: fix: broken sample regarding removed function (Yauheni Kaliuta) [1747341] - [tools] tools/bpftool: recognize bpf_prog_info run_time_ns and run_cnt (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync bpf.h into tools (Yauheni Kaliuta) [1747341] - [kernel] bpf: expose program stats via bpf_prog_info (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix build without bpf_syscall (Yauheni Kaliuta) [1747341] - [kernel] bpf: enable program stats (Yauheni Kaliuta) [1747341] - [kernel] bpf: check that BPF programs run with preemption disabled (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: convert xdpsock to use libbpf for AF_XDP access (Yauheni Kaliuta) [1747341] - [tools] libbpf: add support for using AF_XDP sockets (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: make sure signal interrupts BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Fix dummy program unloading for xdp_redirect samples (Yauheni Kaliuta) [1747341] - [s390] s390/net: convert pnetids to ascii (Yauheni Kaliuta) [1747341] - [net] bpf: add skb->queue_mapping write access from tc clsact (Yauheni Kaliuta) [1747341] - [tools] tools/libbpf: support bigger BTF data sizes (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: test_lwt_ip_encap: add negative tests. (Yauheni Kaliuta) [1747341] - [tools] libbpf: Introduce bpf_object__btf (Yauheni Kaliuta) [1747341] - [tools] libbpf: Introduce bpf_map__resize (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: replace bzero with memset (Yauheni Kaliuta) [1747341] - [net] net: fix GSO in bpf_lwt_push_ip_encap (Yauheni Kaliuta) [1747341] - [net] net: fix double-free in bpf_lwt_xmit_reroute (Yauheni Kaliuta) [1747341] - [net] bpf: fix memory leak in bpf_lwt_xmit_reroute (Yauheni Kaliuta) [1747341] - [net] bpf: make LWTUNNEL_BPF dependent on INET (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add test_lwt_ip_encap selftest (Yauheni Kaliuta) [1747341] - [include] bpf: sync /include/.../bpf.h with tools/include/.../bpf.h (Yauheni Kaliuta) [1747341] - [net] bpf: add handling of BPF_LWT_REROUTE to lwt_bpf.c (Yauheni Kaliuta) [1747341] - [net] ipv6_stub: add ipv6_route_input stub/proxy. (Yauheni Kaliuta) [1747341] - [net] bpf: handle GSO in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: implement BPF_LWT_ENCAP_IP mode in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: add plumbing for BPF_LWT_ENCAP_IP in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: offload: add priv field for drivers (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: doc, add text about feature-subcommand (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: relax sub-register mode compilation criteria (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: centre kernel bpf objects under new subdir "progs" (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: extend sub-register mode compilation to all bpf object files (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add "alu32" to .gitignore (Yauheni Kaliuta) [1747341] - [tools] bpf: Add test_sock_fields for skb->sk and bpf_tcp_sock (Yauheni Kaliuta) [1747341] - [tools] bpf: Add skb->sk, bpf_sk_fullsock and bpf_tcp_sock tests to test_verifer (Yauheni Kaliuta) [1747341] - [nclude] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747341] - [kernel] bpf: Add struct bpf_tcp_sock and BPF_FUNC_tcp_sock (Yauheni Kaliuta) [1747341] - [net] bpf: Refactor sock_ops_convert_ctx_access (Yauheni Kaliuta) [1747341] - [net] bpf: Add state, dst_ip4, dst_ip6 and dst_port to bpf_sock (Yauheni Kaliuta) [1747341] - [kernel] bpf: Add a bpf_sock pointer to __sk_buff and a bpf_sk_fullsock helper (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: remove btf__get_strings() superseded by raw data API (Yauheni Kaliuta) [1747341] - [tools] btf: expose API to work with raw btf_ext data (Yauheni Kaliuta) [1747341] - [tools] btf: expose API to work with raw btf data (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add log_level to bpf_load_program_attr (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add missing strings.h include (Yauheni Kaliuta) [1747341] - [s390] s390/net: move pnet constants (Yauheni Kaliuta) [1747341] - [tools] bpf: test_maps: fix possible out of bound access warning (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: doc, fix incorrect text (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test reading the offloaded program (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add test for mixing generic and offload XDP (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: print traceback when test fails (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix the expected messages (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add const qualifier to btf__get_map_kv_tids() map_name parameter (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add "any alignment" annotation for some tests (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: use localhost in tcp_{server, client}.py (Yauheni Kaliuta) [1747341] - [s390] s390: bpf: fix JMP32 code-gen (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: remove generated verifier/tests.h on 'make clean' (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Check the prog id before exiting (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Add a "force" flag to XDP samples (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Extend RLIMIT_MEMLOCK for xdp_{sample_pkts, router_ipv4} (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Convert XDP samples to libbpf usage (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: xdp_redirect_cpu have not need for read_trace_pipe (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test for BPF_F_LOCK (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync uapi/bpf.h (Yauheni Kaliuta) [1747341] - [kernel] bpf: introduce BPF_F_LOCK flag (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add bpf_spin_lock C test (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add simple BPF_PROG_TEST_RUN examples for flow dissector (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add bpf_spin_lock verifier tests (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync include/uapi/linux/bpf.h (Yauheni Kaliuta) [1747341] - [kernel] bpf: add support for bpf_spin_lock to cgroup local storage (Yauheni Kaliuta) [1747341] - [kernel] bpf: introduce bpf_spin_lock (Yauheni Kaliuta) [1747341] - [net] bpf: Correctly annotate implicit fall through in bpf_base_func_proto (Yauheni Kaliuta) [1747341] - [kernel] bpf, cgroups: clean up kerneldoc warnings (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix bitrotted kerneldoc (Yauheni Kaliuta) [1747341] - [include] bpf: BPF_PROG_TYPE_CGROUP_{SKB, SOCK, SOCK_ADDR} require cgroups enabled (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: mark verifier test that uses bpf_trace_printk as BPF_PROG_TYPE_TRACEPOINT (Yauheni Kaliuta) [1747341] - [net] bpf: add BPF_PROG_TEST_RUN support for flow dissector (Yauheni Kaliuta) [1747341] - [net] net/flow_dissector: move bpf case into __skb_flow_bpf_dissect (Yauheni Kaliuta) [1747341] - [net] Revert "[net] flow_dissector: disable preemption around BPF calls" (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: warn about risky prog array updates (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: remove duplicated include (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up the rest of test_verifier (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_verifier (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: prepare for break up of verifier tests (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: makefile support sub-register code-gen test mode (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: functional and min/max reasoning unit tests for JMP32 (Yauheni Kaliuta) [1747341] - [s390] s390: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [powerpc] ppc: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [arm64] arm64: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [x86] x86_64: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: JIT blinds support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: interpreter support for JMP32 (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: teach cfg code about JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: disassembler support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: refactor verifier min/max code for condition jump (Yauheni Kaliuta) [1747341] - [include] bpf: allocate 0x06 to new eBPF instruction class JMP32 (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: suppress readelf stderr when probing for BTF support (Yauheni Kaliuta) [1747341] - [net] bpf: allow BPF programs access skb_shared_info->gso_segs field (Yauheni Kaliuta) [1747341] - [tools] tool: feature probing, change default action (Yauheni Kaliuta) [1747341] - [kernel] bpf: notify offload JITs about optimizations (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: record original instruction index (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add tests for dead code removal (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: remove unconditional branches by 0 (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: remove dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: hard wire branches to dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: change parameters of call/branch offset adjustment (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: don't hardcode iptables/nc path in test_tcpnotify_user (Yauheni Kaliuta) [1747341] - [tools] libbpf: Show supported ELF section names when failing to guess prog/attach type (Yauheni Kaliuta) [1747341] - [documentation] bpf: btf: add btf documentation (Yauheni Kaliuta) [1747341] - [kernel] perf: Make perf_event_output() propagate the output() return (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix a (false) compiler warning (Yauheni Kaliuta) [1747341] - [tools] tool: add bash completion for peek/push/enqueue/pop/dequeue (Yauheni Kaliuta) [1747341] - [tools] tool: add pop and dequeue commands (Yauheni Kaliuta) [1747341] - [tools] tool: add push and enqueue commands (Yauheni Kaliuta) [1747341] - [tools] tool: add peek command (Yauheni Kaliuta) [1747341] - [tools] tool: don't print empty key/value for maps (Yauheni Kaliuta) [1747341] - [tools] tool: make key optional in lookup command (Yauheni Kaliuta) [1747341] - [tools] tool: make key and value optional in update command (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: support __int128 in bpftool map pretty dumper (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add bpffs pretty print test for int128 (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: refactor test_btf pretty printing for multiple map value formats (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add int128 raw test in test_btf (Yauheni Kaliuta) [1747341] - [kernel] bpf: btf: support 128 bit integer type (Yauheni Kaliuta) [1747341] - [tools] libbpf: don't define CC and AR (Yauheni Kaliuta) [1747341] - [include] bpf: remove leftovers after v5.0 update (Yauheni Kaliuta) [1715770] - [target] scsi: target: cxgbit: add support for IEEE_8021QAZ_APP_SEL_STREAM selector (Vishal Kulkarni) [1725820] - [netdrv] cxgb4i: add support for IEEE_8021QAZ_APP_SEL_STREAM selector (Vishal Kulkarni) [1725818] - [net] SUNRPC: Fix possible autodisconnect during connect due to old last_used (Dave Wysochanski) [1724692] - [fs] NFSv4: Add lease_time and lease_expired to 'nfs4:' line of mountstats (Dave Wysochanski) [1727369] - [scsi] scsi: zfcp: fix reaction on bit error threshold notification (Philipp Rudo) [1764494] - [iommu] iommu/arm-smmu: Error out only if not enough context interrupts (Mark Langsdorf) [1658736] - [netdrv] cxgb4:Fix out-of-bounds MSI-X info array access (Vishal Kulkarni) [1763194] - [fs] vfs: Fix EOVERFLOW testing in put_compat_statfs64 (Eric Sandeen) [1757902] - [security] selinux: fix context string corruption in convert_context() (Ondrej Mosnacek) [1758086] - [fs] cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic (Dave Wysochanski) [1757865] - [kernel] alarmtimer: Use EOPNOTSUPP instead of ENOTSUPP (Vladis Dronov) [1760638] - [netdrv] cxgb4: RHEL-only disable device dump (Jonathan Toppins) [1708456] - [fs] xfs: Fix deadlock between AGI and AGF with RENAME_WHITEOUT (Brian Foster) [1759564] - [x86] x86/stacktrace: Prevent access_ok() warnings in arch_stack_walk_user() (Jerome Marchand) [1757758] - [s390] s390/sclp: Fix bit checked for has_sipl (Philipp Rudo) [1748347] - [fs] dax: dax_layout_busy_page() should not unmap cow pages (Jeff Moyer) [1752109] - [fs] dax: Fix missed wakeup in put_unlocked_entry() (Jeff Moyer) [1752109] - [fs] dax: Fix missed wakeup with PMD faults (Jeff Moyer) [1752109] - [fs] dax: Fix xarray entry association for mixed mappings (Jeff Moyer) [1752109] - [mm] mm: page_mkclean vs MADV_DONTNEED race (Jeff Moyer) [1752109] - [fs] dax: Flush partial PMDs correctly (Jeff Moyer) [1752109 1724979] - [fs] dax: Use non-exclusive wait in wait_entry_unlocked() (Jeff Moyer) [1752109] - [x86] x86/mm: Fix decoy address handling vs 32-bit builds (Jeff Moyer) [1752109 1585079] - [fs] dax: Fix unlock mismatch with updated API (Jeff Moyer) [1752109 1724956] - [fs] dax: Don't access a freed inode (Jeff Moyer) [1752109 1724956] - [fs] dax: Check page->mapping isn't NULL (Jeff Moyer) [1752109 1585079 1724956] - [fs] dax: Avoid losing wakeup in dax_lock_mapping_entry (Jeff Moyer) [1752109] - [fs] dax: Fix huge page faults (Jeff Moyer) [1752109] - [fs] dax: Fix dax_unlock_mapping_entry for PMD pages (Jeff Moyer) [1752109] - [fs] dax: Reinstate RCU protection of inode (Jeff Moyer) [1752109] - [fs] dax: Make sure the unlocking entry isn't locked (Jeff Moyer) [1752109] - [fs] dax: Remove optimisation from dax_lock_mapping_entry (Jeff Moyer) [1752109] - [fs] dax: Convert page fault handlers to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_lock_mapping_entry to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax writeback to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert __dax_invalidate_entry to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_layout_busy_page to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_insert_pfn_mkwrite to XArray (Jeff Moyer) [1752109] - [fs] dax: Hash on XArray instead of mapping (Jeff Moyer) [1752109] - [fs] dax: Rename some functions (Jeff Moyer) [1752109] - [fs] dax: Fix deadlock in dax_lock_mapping_entry() (Jeff Moyer) [1752109 1585079 1641544] - [drivers] device-dax: Add missing address_space_operations (Jeff Moyer) [1752109 1585079] - [x86] x86/mm/pat: Prepare {reserve, free}_memtype() for "decoy" addresses (Jeff Moyer) [1752109 1585079] - [mm] mm, memory_failure: Teach memory_failure() about dev_pagemap pages (Jeff Moyer) [1703560 1752109 1585079] - [fs] filesystem-dax: Introduce dax_lock_mapping_entry() (Jeff Moyer) [1752109 1585079] - [mm] mm, memory_failure: Collect mapping size in collect_procs() (Jeff Moyer) [1752109 1585079] - [mm] mm, madvise_inject_error: Let memory_failure() optionally take a page reference (Jeff Moyer) [1752109 1585079] - [mm] mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages (Jeff Moyer) [1752109 1585079] - [fs] filesystem-dax: Set page->index (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Set page->index (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Enable page_mapping() (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Convert to vmf_insert_mixed and vm_fault_t (Jeff Moyer) [1752109 1585079] - [pci] PCI: Add quirk to disable MSI-X support for Amazon's Annapurna Labs Root Port (Myron Stowe) [1732357] - [pci] PCI/VPD: Prevent VPD access for Amazon's Annapurna Labs Root Port (Myron Stowe) [1732357] - [pci] PCI: Add ACS quirk for Amazon Annapurna Labs root ports (Myron Stowe) [1732357] - [pci] PCI: Add Amazon's Annapurna Labs vendor ID (Myron Stowe) [1732357] - [arm64] arm64: PCI: Preserve firmware configuration when desired (Myron Stowe) [1732372] - [arm64] arm64: PCI: Allow resource reallocation if necessary (Myron Stowe) [1732372] - [pci] PCI: Don't auto-realloc if we're preserving firmware config (Myron Stowe) [1732372] - [pci] PCI/ACPI: Evaluate PCI Boot Configuration _DSM (Myron Stowe) [1732372] - [irqchip] irqchip/gic-v2m: Add support for Amazon Graviton variant of GICv3+GICv2m (Myron Stowe) [1732382] - [pci] PCI: al: Add Amazon Annapurna Labs PCIe host controller driver (Myron Stowe) [1732357] - [netdrv] mlx4: fix spelling mistake "veify" -> "verify" (Alaa Hleihel) [1724340] - [netdrv] IB/mlx4: Fix memory leaks (Alaa Hleihel) [1724340] - [netdrv] net/mlx4_en: fix a memory leak bug (Alaa Hleihel) [1724340] - [netdrv] IB/mlx4: Delete unused func arg (Alaa Hleihel) [1724340] - [netdrv] net/mlx4_en: ethtool, Remove unsupported SFP EEPROM high pages query (Alaa Hleihel) [1724340 1724339] - [netdrv] net/mlx4_core: Change the error print to info print (Alaa Hleihel) [1724340 1724339] - [netdrv] mlx4: Convert pv_id_table to XArray (Alaa Hleihel) [1724340 1724339] - [netdrv] IB/mlx4: Fix race condition between catas error reset and aliasguid flows (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix qp mtt size calculation (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix locking in SRIOV mode when switching between events and polling (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix reset flow when in command polling mode (Alaa Hleihel) [1724340 1724338] - [netdrv] mellanox: Switch to bitmap_zalloc() (Alaa Hleihel) [1724340 1724338] - [netdrv] IB/mlx4: Increase the timeout for CM cache (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: A write memory barrier is sufficient in EQ ci update (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4: Mark expected switch fall-through (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4: remove unneeded semicolon (Alaa Hleihel) [1724340 1724338] - [parport] parport: parport_serial: Add support for Sunix Multi I/O boards (John Linville) [1663781] - [tty] serial: 8250_pci: Add support for Sunix serial boards (John Linville) [1663781] - [scsi] hpsa: update driver version (Joseph Szczypek) [1761968] - [scsi] scsi: hpsa: add missing hunks in reset-patch (Joseph Szczypek) [1761968] - [netdrv] igc: Clean up unused shadow_vfta pointer (David Arcari) [1721713] - [netdrv] igc: Add Rx checksum support (David Arcari) [1721713] - [netdrv] igc: Add set_rx_mode support (David Arcari) [1721713] - [netdrv] igc: Add SCTP CRC checksumming functionality (David Arcari) [1721713] - [netdrv] igc: Add tx_csum offload functionality (David Arcari) [1721713] - [netdrv] igc: Remove unneeded PCI bus defines (David Arcari) [1721713] - [netdrv] igc: Add NVM checksum validation (David Arcari) [1721713] - [netdrv] igc: Remove useless forward declaration (David Arcari) [1721713] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (David Arcari) [1721713] - [netdrv] igc: Add more SKUs for i225 device (David Arcari) [1721713] - [netdrv] igc: Update the MAC reset flow (David Arcari) [1721713] - [netdrv] igc: Remove the unused field from a device specification structure (David Arcari) [1721713] - [netdrv] igc: Remove the polarity field from a PHY information structure (David Arcari) [1721713] - [netdrv] net: Use skb accessors in network drivers (David Arcari) [1721713] - [netdrv] igc: Prefer pcie_capability_read_word() (David Arcari) [1721713] - [netdrv] igc: Cleanup the redundant code (David Arcari) [1721713] - [netdrv] igc: Add flow control support (David Arcari) [1721713] - [netdrv] igc: Remove the obsolete workaround (David Arcari) [1721713] - [netdrv] igc: Clean up unused pointers (David Arcari) [1721713] - [netdrv] igc: Fix double definitions (David Arcari) [1721713] - [netdrv] igb/igc: warn when fatal read failure happens (David Arcari) [1721713] - [scsi] scsi: qla2xxx: Fix different size DMA Alloc/Unmap (Himanshu Madhani) [1753031] - [scsi] qla2xxx: call dma_free_coherent with correct size in all cases in qla24xx_sp_unmap (Himanshu Madhani) [1753031] - [arm64] crypto: arm64/crc32 - remove PMULL based CRC32 driver (Mark Salter) [1742821] - [arm64] arm64/lib: improve CRC32 performance for deep pipelines (Mark Salter) [1742821] - [arm64] arm64/lib: add accelerated crc32 routines (Mark Salter) [1742821] - [arm64] arm64: cpufeature: add feature for CRC32 instructions (Mark Salter) [1742821] - [lib] lib/crc32: make core crc32() routines weak so they can be overridden (Mark Salter) [1742821] - [arm64] arm64: cpu: Move errata and feature enable callbacks closer to callers (Mark Salter) [1742821] - [arm64] arm64: kill config_sctlr_el1() (Mark Salter) [1742821] - [include] ethtool: Add SFF-8436 and SFF-8636 max EEPROM length definitions (Petr Oros) [1757522] - [net] bridge/mdb: remove wrong use of NLM_F_MULTI (Hangbin Liu) [1756799] - [net] bridge: mcast: don't delete permanent entries when fast leave is enabled (Hangbin Liu) [1756799] - [net] bridge: multicast: use rcu to access port list from br_multicast_start_querier (Hangbin Liu) [1756799] - [net] bridge: Fix ethernet header pointer before check skb forwardable (Hangbin Liu) [1756799] - [net] clear skb->tstamp in bridge forwarding path (Hangbin Liu) [1756799] - [net] bridge: br_arp_nd_proxy: set icmp6_router if neigh has NTF_ROUTER (Hangbin Liu) [1756799] - [net] vlan: Inherit MPLS features from parent device (Hangbin Liu) [1724306] - [netdrv] linux/dim: Fix overflow in dim calculation (Ivan Vecera) [1737807] - [lib] dim: Fix -Wunused-const-variable warnings (Ivan Vecera) [1737807] - [lib] linux/dim: Add completions count to dim_sample (Ivan Vecera) [1737807] - [netdrv] linux/dim: Move implementation to .c files (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename externally used net_dim members (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename net_dim_sample() to net_dim_update_sample() (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename externally exposed macros (Ivan Vecera) [1737807] - [include] linux/dim: Remove "net" prefix from internal DIM members (Ivan Vecera) [1737807] - [include] linux/dim: Move logic to dim.h (Ivan Vecera) [1737807] - [tools] selftests: add a test case for cls_lower handle overflow (Ivan Vecera) [1761512] - [net] idr: introduce idr_for_each_entry_continue_ul() (Ivan Vecera) [1761512] - [net] idr: fix overflow case for idr_for_each_entry_ul() (Ivan Vecera) [1761512] - [net] sctp: add chunks to sk_backlog when the newsk sk_socket is not set (Xin Long) [1734271] - [net] netns: enable to dump full nsid translation table (Petr Oros) [1757748] - [net] netns: enable to specify a nsid for a get request (Petr Oros) [1757748] - [net] netns: add support of NETNSA_TARGET_NSID (Petr Oros) [1757748] - [net] netns: introduce 'struct net_fill_args' (Petr Oros) [1757748] - [net] netns: remove net arg from rtnl_net_fill() (Petr Oros) [1757748] - [net] mpls: fix warning with multi-label encap (Hangbin Liu) [1756788] - [net] mpls: Return error for RTA_GATEWAY attribute (Hangbin Liu) [1756788] - [net] macsec: drop skb sk before calling gro_cells_receive (Xin Long) [1745819] - [net] team: add ethtool get_link_ksettings (Hangbin Liu) [1724896] - [net] sched: flower: don't call synchronize_rcu() on mask creation (Ivan Vecera) [1751856] - [net] sched: flower: refactor reoffload for concurrent access (Ivan Vecera) [1751856] - [net] sched: flower: fix filter net reference counting (Ivan Vecera) [1751856] - [net] sched: flower: use correct ht function to prevent duplicates (Ivan Vecera) [1751856] - [net] sched: flower: insert filter to ht before offloading it to hw (Ivan Vecera) [1751856] - [net] sched: ensure tc flower reoffload takes filter ref (Ivan Vecera) [1751856] - [net] sched: flower: set unlocked flag for flower proto ops (Ivan Vecera) [1751856] - [net] sched: flower: track rtnl lock state (Ivan Vecera) [1751856] - [net] sched: flower: protect flower classifier state with spinlock (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent tcf proto deletion (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent filter insertion in fl_change (Ivan Vecera) [1751856] - [net] sched: flower: protect masks list with spinlock (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent mask insertion (Ivan Vecera) [1751856] - [net] sched: flower: add reference counter to flower mask (Ivan Vecera) [1751856] - [net] sched: flower: track filter deletion with flag (Ivan Vecera) [1751856] - [net] sched: flower: introduce reference counting for filters (Ivan Vecera) [1751856] - [net] sched: flower: refactor fl_change (Ivan Vecera) [1751856] - [net] sched: flower: don't check for rtnl on head dereference (Ivan Vecera) [1751856] - [kernel] exit from RHEL 8.2 early ystream mode (Phillip Lougher)- [x86] kvm: svm: Remove unneeded WBINVD and DF_FLUSH when starting SEV guests (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Reduce WBINVD/DF_FLUSH invocations (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Guard against DEACTIVATE when performing WBINVD/DF_FLUSH (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Serialize access to the SEV ASID bitmap (Janakarajan Natarajan) [1762517] - [xen] remove pre-xen3 fallback handlers (Vitaly Kuznetsov) [1759997] - [net] SUNRPC: Count ops completing with tk_status < 0 (Dave Wysochanski) [1636572] - [net] SUNRPC: Use proper printk specifiers for unsigned long long (Dave Wysochanski) [1636572] - [net] SUNRPC: Move call to rpc_count_iostats before rpc_call_done (Dave Wysochanski) [1636572] - [net] SUNRPC: Add tracking of RPC level errors (Dave Wysochanski) [1636572] - [net] SUNRPC: Refactor rpc_restart_call/rpc_restart_call_prepare (Dave Wysochanski) [1636572] - [net] SUNRPC: Fix up task signalling (Dave Wysochanski) [1636572] - [net] SUNRPC: Track writers of the 'channel' file to improve cache_listeners_exist (Dave Wysochanski) [1741333] - [net] sunrpc/cache: handle missing listeners better. (Dave Wysochanski) [1741333] - [pci] PCI/ACPI: Advertise _HPX Type 3 support via _OSC (Myron Stowe) [1712756] - [pci] PCI/ACPI: Implement _HPX Type 3 Setting Record (Myron Stowe) [1712756] - [netdrv] e1000e: Add support for Comet Lake (David Arcari) [1764549] - [netdrv] e1000e: Add support for S0ix (Ken Cox) [1721709] - [netdrv] e1000e: Make speed detection on hotplugging cable more reliable (Ken Cox) [1721709] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (Ken Cox) [1721709] - [netdrv] e1000e: add workaround for possible stalled packet (Ken Cox) [1721709] - [netdrv] e1000e: Use dev_get_drvdata where possible (Ken Cox) [1721709] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721709] - [netdrv] e1000e: PCIm function state support (Ken Cox) [1721709] - [netdrv] e1000e: Make watchdog use delayed work (Ken Cox) [1721709] - [netdrv] e1000e: Reduce boot time by tightening sleep ranges (Ken Cox) [1721709] - [netdrv] e1000e: Increase pause and refresh time (Ken Cox) [1721709] - [scsi] scsi: megaraid_sas: Introduce module parameter for default queue depth (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix a compilation warning (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make a bunch of functions static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make some functions static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fix panic on loading firmware crashdump (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fix spelling mistake "megarid_sas" -> "megaraid_sas" (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.710.50.00 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add module parameter for FW Async event logging (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enable msix_load_balance for Invader and later controllers (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix calculation of target ID (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make some symbols static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.710.06.00-rc1 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Introduce various Aero performance modes (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Use high IOPS queues based on IO workload (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Set affinity for high IOPS reply queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enable coalescing for high IOPS queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for High IOPS queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for MPI toolbox commands (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Offload Aero RAID5/6 division calculations to driver (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: RAID1 PCI bandwidth limit algorithm is applicable for only Ventura (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: megaraid_sas: Add check for count returned by HOST_DEVICE_LIST DCMD (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Handle sequence JBOD map failure at driver level (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Don't send FPIO to RL Bypass queue (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: In probe context, retry IOC INIT once if firmware is in fault (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Release Mutex lock before OCR in case of DCMD timeout (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Call disable_irq from process IRQ poll (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove few debug counters from IO path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for Non-secure Aero PCI IDs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add 32 bit atomic descriptor support to AERO adapters (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Use struct_size() helper (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove unused including (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: use DEVICE_ATTR_{RO, RW} (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: use octal permissions instead of constants (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: make max_sectors visible in sys (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variables 'buff_addr' and 'ci_h' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variable 'sge_sz' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variables 'host' and 'wait_time' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variable 'cur_state' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.708.03.00 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Export RAID map through debugfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix MSI-X vector print (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add debug prints for device list (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add prints in suspend and resume path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print firmware interrupt status (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print FW fault information (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Export RAID map id through sysfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print BAR information from driver (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Dump system registers for debugging (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Dump system interface regs from sysfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add formatting option for megasas_dump (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enhance internal DCMD timeout prints (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enhance prints in OCR and TM path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Load balance completions across all MSI-X (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: IRQ poll to avoid CPU hard lockups (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Block PCI config space access from userspace during OCR (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Rework code around controller reset (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fw_reset_no_pci_access required for MFI adapters only (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove unused variable target_index (Tomas Henzl) [1726251] - [x86] perf/x86/msr: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/intel: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/cstate: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/intel: Update KBL Package C-state events to also include PC8/PC9/PC10 counters (Michael Petlan) [1763290] - [x86] x86/cpu: Add Comet Lake to the Intel CPU models header (Michael Petlan) [1763290] - [s390] s390/qeth: reject oversized SNMP requests (Philipp Rudo) [1726414] - [s390] s390/qeth: serialize cmd reply with concurrent timeout (Philipp Rudo) [1726414] - [s390] s390/qeth: move cast type selection into fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: extract helper for route validation (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate skb RX processing in L3 driver (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate pm code (Philipp Rudo) [1726414] - [s390] s390/qeth: streamline SNMP cmd code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove static cmd buffer infrastructure (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate MPC cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate vnicc cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate diag cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate various cmds with sub-types (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify parameter for simple assist cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate simple IPA cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: allocate a single cmd on read channel (Philipp Rudo) [1726414] - [s390] s390/qeth: command-chain the IDX sequence (Philipp Rudo) [1726414] - [s390] s390/qeth: convert RCD code to common IO infrastructure (Philipp Rudo) [1726414] - [s390] s390/qeth: add support for dynamically allocated cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: remove 'channel' parameter from callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: convert device-specific trace entries (Philipp Rudo) [1726414] - [s390] s390/qeth: remove OSN-specific IO code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove qeth_wait_for_buffer() (Philipp Rudo) [1726414] - [s390] s390/qeth: clean up setting of BLKT defaults (Philipp Rudo) [1726414] - [s390] s390/qeth: restart pending READ cmd from callback (Philipp Rudo) [1726414] - [s390] s390/qeth: simplify DOWN state handling (Philipp Rudo) [1726414] - [s390] s390/qeth: use mm helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: don't mask TX errors on IQD devices (Philipp Rudo) [1726414] - [s390] s390/qeth: handle error when updating TX queue count (Philipp Rudo) [1726414] - [s390] s390/qeth: fix VLAN attribute in bridge_hostnotify udev event (Philipp Rudo) [1726414] - [s390] s390/qeth: check dst entry before use (Philipp Rudo) [1726414] - [s390] s390/qeth: handle limited IPv4 broadcast in L3 TX path (Philipp Rudo) [1726414] - [s390] s390/qeth: trust non-IP cast type in qeth_l3_fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: extract helper to determine L2 cast type (Philipp Rudo) [1726414] - [s390] s390/qeth: cache max number of available buffer elements (Philipp Rudo) [1726414] - [s390] s390/qeth: don't clear Output buffers on every queue init (Philipp Rudo) [1726414] - [s390] s390/qeth: use IS_* helpers for checking device type (Philipp Rudo) [1726414] - [s390] s390/qeth: clean up stale buffer state documentation (Philipp Rudo) [1726414] - [s390] s390/qeth: remove RX seqno in skb->cb (Philipp Rudo) [1726414] - [s390] s390: qeth: address type mismatch warning (Philipp Rudo) [1726414] - [s390] s390/qeth: stop/wake TX queues based on their fill level (Philipp Rudo) [1726414] - [s390] s390/qeth: simplify QoS code (Philipp Rudo) [1726414] - [s390] s390/qeth: add TX multiqueue support for OSA devices (Philipp Rudo) [1726414] - [s390] s390/qeth: add TX multiqueue support for IQD devices (Philipp Rudo) [1726414] - [s390] s390/qeth: don't keep statistics for tx timeout (Philipp Rudo) [1726414] - [s390] s390/qeth: don't bother updating the last-tx time (Philipp Rudo) [1726414] - [s390] s390/qeth: handle error from qeth_update_from_chp_desc() (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify naming for some QDIO helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: send IDX cmds via qeth_send_control_data() (Philipp Rudo) [1726414] - [s390] s390/qeth: use callback to finalize cmd (Philipp Rudo) [1726414] - [s390] s390/qeth: let qeth_notify_reply() set the notify reason (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify default cmd callback (Philipp Rudo) [1726414] - [s390] s390/qeth: don't poll for cmd IO completion (Philipp Rudo) [1726414] - [s390] s390/qeth: convert IP table spinlock to mutex (Philipp Rudo) [1726414] - [s390] s390/qeth: defer IPv6 address notifier events (Philipp Rudo) [1726414] - [s390] s390/qeth: add wrapper for IP table access (Philipp Rudo) [1726414] - [s390] s390/qeth: remove locking for RX modeset cache (Philipp Rudo) [1726414] - [s390] s390/qeth: defer RX modesetting (Philipp Rudo) [1726414] - [s390] s390/qeth: fix race when initializing the IP address table (Philipp Rudo) [1726414] - [s390] s390/qeth: don't erase configuration while probing (Philipp Rudo) [1726414] - [s390] s390/qeth: drop redundant state checking (Philipp Rudo) [1726414] - [s390] s390/qeth: don't special-case HW trap during suspend (Philipp Rudo) [1726414] - [s390] s390/qeth: remove driver-wide workqueue (Philipp Rudo) [1726414] - [s390] s390/qeth: don't defer close_dev work during recovery (Philipp Rudo) [1726414] - [s390] s390/qeth: remove a redundant check for card->dev (Philipp Rudo) [1726414] - [s390] s390/qeth: call dev_close() during recovery (Philipp Rudo) [1726414] - [s390] s390/qeth: unconditionally clear MAC_REGISTERED flag (Philipp Rudo) [1726414] - [s390] s390/qeth: enable/disable the HW trap a little earlier (Philipp Rudo) [1726414] - [s390] s390/qeth: remove RECOVER state (Philipp Rudo) [1726414] - [s390] s390/qeth: split out OSN netdev ops (Philipp Rudo) [1726414] - [s390] s390/qeth: add support for ETHTOOL_GRINGPARAM (Philipp Rudo) [1726414] - [s390] s390/qeth: overhaul ethtool statistics (Philipp Rudo) [1726414] - [s390] s390/qeth: move ethtool code into its own file (Philipp Rudo) [1726414] - [s390] s390/qeth: reduce ethtool statistics (Philipp Rudo) [1726414] - [s390] s390/qeth: use a static Output Queue array (Philipp Rudo) [1726414] - [s390] s390/qeth: allow manual recovery when device is SOFTSETUP (Philipp Rudo) [1726414] - [s390] s390/qeth: convert remaining legacy cmd callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: convert bridgeport callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: allow cmd callbacks to return errnos (Philipp Rudo) [1726414] - [s390] s390/qeth: limit trace to valid data of command request (Philipp Rudo) [1726414] - [s390] s390/qeth: align csum offload with TSO control logic (Philipp Rudo) [1726414] - [s390] s390/qeth: enable only required csum offload features (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate filling of low-level cmd length fields (Philipp Rudo) [1726414] - [s390] s390/qeth: reduce data length for ARP cache query (Philipp Rudo) [1726414] - [s390] s390/qeth: remove VLAN tracking for L2 devices (Philipp Rudo) [1726414] - [s390] s390/qeth: detach netdevice while card is offline (Philipp Rudo) [1726414] - [s390] s390/qeth: delay netdevice registration (Philipp Rudo) [1726414] - [s390] s390/qeth: remove TX disable from online path (Philipp Rudo) [1726414] - [s390] s390/qeth: register MAC address earlier (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate open/stop netdev ops (Philipp Rudo) [1726414] - [s390] s390/qeth: remove bogus netif_wake_queue() (Philipp Rudo) [1726414] - [s390] s390/qeth: streamline TX buffer management (Philipp Rudo) [1726414] - [s390] s390/qeth: don't process hsuid in qeth_l3_setup_netdev() (Philipp Rudo) [1726414] - [s390] s390/qeth: remove unused fallback in Layer3's MAC code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove two IPA command helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: replace open-coded cmd setup (Philipp Rudo) [1726414] - [s390] s390/qeth: remove card list (Philipp Rudo) [1726414] - [s390] s390/qeth: unify transmit code (Philipp Rudo) [1726414] - [s390] s390/qeth: handle af_iucv skbs in qeth_l3_fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: sanitize ARP requests (Philipp Rudo) [1726414] - [s390] s390/qdio: restrict QAOB usage to IQD unicast queues (Philipp Rudo) [1726414] - [s390] s390/qdio: add sanity checks to the fast-requeue path (Philipp Rudo) [1726414] - [s390] s390/qdio: don't touch the dsci in tiqdio_add_input_queues() (Philipp Rudo) [1726414] - [s390] s390/qdio: (re-)initialize tiqdio list entries (Philipp Rudo) [1726414] - [s390] s390/qdio: optimize state inspection of HW-owned SBALs (Philipp Rudo) [1726414] - [s390] s390/qdio: use get_buf_state() in debug_get_buf_state() (Philipp Rudo) [1726414] - [s390] s390/qdio: allow to scan all Output SBALs in one go (Philipp Rudo) [1726414] - [s390] s390/qdio: consolidate index tracking for queue scan (Philipp Rudo) [1726414] - [s390] s390/qdio: limit direct access to first_to_check cursor (Philipp Rudo) [1726414] - [s390] s390/qdio: eliminate queue's last_move cursor (Philipp Rudo) [1726414] - [s390] s390/qdio: simplify SBAL range calculation (Philipp Rudo) [1726414] - [s390] s390/qdio: pass up count of ready-to-process SBALs (Philipp Rudo) [1726414] - [s390] s390/qdio: fix output of DSCI value in debug file (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up qdio_check_outbound_after_thinint() (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up pci_out_supported() (Philipp Rudo) [1726414] - [s390] s390/qdio: make SBAL address array type-safe (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up AOB handling (Philipp Rudo) [1726414] - [s390] s390/ccwgroup: add get_ccwgroupdev_by_busid() (Philipp Rudo) [1726414]- [net] xprtrdma: Remove stale comment (Kamal Heib) [1720891] - [net] xprtrdma: Update comments that reference ib_drain_qp (Kamal Heib) [1720891] - [net] xprtrdma: Remove pr_err() call sites from completion handlers (Kamal Heib) [1720891] - [net] xprtrdma: Eliminate struct rpcrdma_create_data_internal (Kamal Heib) [1720891] - [net] xprtrdma: Aggregate the inline settings in struct rpcrdma_ep (Kamal Heib) [1720891] - [net] xprtrdma: Remove rpcrdma_create_data_internal::rsize and wsize (Kamal Heib) [1720891] - [net] xprtrdma: Eliminate rpcrdma_ia::ri_device (Kamal Heib) [1720891] - [net] xprtrdma: More Send completion batching (Kamal Heib) [1720891] - [net] xprtrdma: Clean up sendctx functions (Kamal Heib) [1720891] - [net] xprtrdma: Trace marshaling failures (Kamal Heib) [1720891] - [net] xprtrdma: Increase maximum number of backchannel requests (Kamal Heib) [1720891] - [net] xprtrdma: Backchannel can use GFP_KERNEL allocations (Kamal Heib) [1720891] - [net] xprtrdma: Clean up regbuf helpers (Kamal Heib) [1720891] - [net] xprtrdma: De-duplicate "allocate new, free old regbuf" (Kamal Heib) [1720891] - [net] xprtrdma: Allocate req's regbufs at xprt create time (Kamal Heib) [1720891] - [net] xprtrdma: rpcrdma_regbuf alignment (Kamal Heib) [1720891] - [net] xprtrdma: Clean up rpcrdma_create_rep() and rpcrdma_destroy_rep() (Kamal Heib) [1720891] - [net] xprtrdma: Clean up rpcrdma_create_req() (Kamal Heib) [1720891] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 502 (Kamal Heib) [1720891] - [infiniband] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Kamal Heib) [1720891] - [net] xprtrdma: Use struct_size() in kzalloc() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Fix panic when port_data isn't initialized (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Pass udata on uverbs error unwind (Kamal Heib) [1720891] - [infiniband] RDMA/core: Clear out the udata before error unwind (Kamal Heib) [1720891] - [infiniband] RDMA/srp: Rename SRP sysfs name after IB device rename trigger (Kamal Heib) [1720891] - [infiniband] treewide: Add SPDX license identifier - Makefile/Kconfig (Kamal Heib) [1720891] - [infiniband] RDMA/core: Change system parameters callback from dumpit to doit (Kamal Heib) [1720891] - [infiniband] RDMA: Directly cast the sockaddr union to sockaddr (Kamal Heib) [1720891] - [infiniband] RDMA/ipoib: Allow user space differentiate between valid dev_port (Kamal Heib) [1720891] - [infiniband] RDMA/device: Don't fire uevent before device is fully initialized (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Remove hugetlb flag (Kamal Heib) [1720891] - [infiniband] RDMA/bnxt_re: Use core helpers to get aligned DMA address (Kamal Heib) [1720891] - [infiniband] RDMA/bnxt_re: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720891] - [infiniband] RDMA/i40iw: Use core helpers to get aligned DMA address within a supported page size (Kamal Heib) [1720891] - [infiniband] RDMA/i40iw: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720891] - [infiniband] RDMA/verbs: Add a DMA iterator to return aligned contiguous memory blocks (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Add API to find best driver supported page size in an MR (Kamal Heib) [1720891] - [infiniband] RDMA/core: Allow detaching gid attribute netdevice for RoCE (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Use rdma_read_gid_attr_ndev_rcu to access netdev (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Use rdma_read_gid_attr_ndev_rcu to access netdev (Kamal Heib) [1720891] - [infiniband] RDMA: Introduce and use GID attr helper to read RoCE L2 fields (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Add vlan enable bit for hip08 (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Update some fields of qp context (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Delete unused variable in hns_roce_v2_modify_qp function (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Add enable judgement for UD vlan (Kamal Heib) [1720891] - [infiniband] IB/mlx5: Consider vlan of lower netdev for macvlan GID entries (Kamal Heib) [1720891] - [infiniband] IB/cm: Reduce dependency on gid attribute ndev check (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Consider skb reserve space based on netdev of GID (Kamal Heib) [1720891] - [infiniband] RDMA: Get rid of iw_cm_verbs (Kamal Heib) [1720891] - [infiniband] RDMA/cxgb4: Use ib_device_set_netdev() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Do not invoke init_port on compat devices (Kamal Heib) [1720891] - [infiniband] IB/core: Set qp->real_qp before it may be accessed (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Initialize uverbs_attr_bundle ucontext in ib_uverbs_get_context (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Initialize udata struct on destroy flows (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Handle page combining avoidance correctly in ib_umem_add_sg_table() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce RDMA subsystem ibdev_* print functions (Kamal Heib) [1720891] - [infiniband] uverbs: Convert idr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Remove rdma_user_mmap_page (Kamal Heib) [1720891] - [infiniband] RDMA/mlx5: Use get_zeroed_page() for clock_info (Kamal Heib) [1720891] - [infiniband] RDMA/mlx5: Do not allow the user to write to the clock page (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Consider scope_id while binding to ipv6 ll address (Kamal Heib) [1720891] - [infiniband] IB/core: Allow vlan link local address based RoCE GIDs (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add a netlink command to change net namespace of rdma device (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce a helper function to change net namespace of rdma device (Kamal Heib) [1720891] - [infiniband] RDMA/core: Avoid freeing netdevs in disable_device() (Kamal Heib) [1720891] - [infiniband] RDMA/ocrdma: Remove use of idr use pci bdf instead (Kamal Heib) [1720891] - [infiniband] RDMA/drivers: Convert easy drivers to use ib_device_set_netdev() (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Use correct value for SG entries in sg_copy_to_buffer() (Kamal Heib) [1720891] - [infiniband] RDMA: Handle SRQ allocations by IB/core (Kamal Heib) [1720891] - [infiniband] qedr: Convert srqidr to XArray (Kamal Heib) [1720891] - [infiniband] qedr: Convert qpidr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Handle AH allocations by IB/core (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Fix bad endianess of port_pd variable (Kamal Heib) [1720891] - [infiniband] RDMA/mad: Reduce MAD scope to mlx5_ib only (Kamal Heib) [1720891] - [infiniband] RDMA/ocrdma: Remove a set-but-not-used variable (Kamal Heib) [1720891] - [infiniband] RDMA/core: Support object allocation in atomic context (Kamal Heib) [1720891] - [infiniband] IB: When attrs.udata/ufile is available use that instead of uobject (Kamal Heib) [1720891] - [infiniband] RDMA/nldev: Return device protocol (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Move debug counters to be under relevant IB device (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Combine contiguous PAGE_SIZE regions in SGEs (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Remove useless zeroing of static global variable (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Set proper port number as index (Kamal Heib) [1720891] - [infiniband] IB: Pass only ib_udata in function prototypes (Kamal Heib) [1720891] - [infiniband] IB: Remove 'uobject->context' dependency in object destroy APIs (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert mmidr to XArray (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert qpidr to XArray (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert cqidr to XArray (Kamal Heib) [1720891] - [infiniband] IB: Pass uverbs_attr_bundle down ib_x destroy path (Kamal Heib) [1720891] - [infiniband] IB: Pass uverbs_attr_bundle down uobject destroy path (Kamal Heib) [1720891] - [infiniband] IB: ucontext should be set properly for all cmd & ioctl paths (Kamal Heib) [1720891] - [infiniband] RDMA/core: Don't compare specific bit after boolean AND (Kamal Heib) [1720891] - [infiniband] RDMA/netlink: Remove unused data structure (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add command to set ib_core device net namspace sharing mode (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add interface to read device namespace sharing mode (Kamal Heib) [1720891] - [infiniband] RDMA/core: Extend ib_device_get_by_index for net namespace (Kamal Heib) [1720891] - [infiniband] RDMA: Check net namespace access for uverbs, umad, cma and nldev (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add module param to disable device sharing among net ns (Kamal Heib) [1720891] - [infiniband] RDMA/core: Support core port attributes in non init_net (Kamal Heib) [1720891] - [infiniband] RDMA/core: Implement compat device/sysfs tree in net namespace (Kamal Heib) [1720891] - [infiniband] RDMA/core: Restrict sysfs entries view to init_net (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce ib_core_device to hold device (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1720891] - [infiniband] RDMA/mthca: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Allow the compiler to verify declaration and definition consistency (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Annotate uverbs_request_next_ptr() return value as a __user pointer (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Add a __user annotation to a pointer (Kamal Heib) [1720891] - [infiniband] IB/rxe: Replace av->network_type with skb->protocol (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add SMP details to MAD tracing (Kamal Heib) [1720891] - [infiniband] IB/UMAD: Add umad trace points (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add agent trace points (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add recv path trace point (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add send path trace points (Kamal Heib) [1720891] - [infiniband] RDMA/vmw_pvrdma: Skip zeroing device attrs (Kamal Heib) [1720891] - [infiniband] IB/iser: remove uninitialized variable len (Kamal Heib) [1720891] - [infiniband] IB/core: Ensure an invalidate_range callback on ODP MR (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Fix slab-out-bounds access which lead to kernel crash later (Kamal Heib) [1720891] - [infiniband] drivers: infiniband: Fix whitespace in kconfig (Kamal Heib) [1720891] - [infiniband] RDMA/nes: remove redundant check on udata (Kamal Heib) [1720891] - [infiniband] cma: Convert portspace IDRs to XArray (Kamal Heib) [1720891] - [infiniband] ucm: Convert ctx_id_table to XArray (Kamal Heib) [1720891] - [infiniband] ib core: Convert query_idr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Convert local_id_table to XArray (Kamal Heib) [1720891] - [infiniband] IB/mad: Convert ib_mad_clients to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Use __packed annotation instead of __attribute__ ((packed)) (Kamal Heib) [1720891] - [char] tpm: Remove a deprecated comments about implicit sysfs locking (Jerry Snitselaar) [1725580 1742257] - [char] tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts (Jerry Snitselaar) [1725580 1742257] - [char] tpm_tis_core: Turn on the TPM before probing IRQ's (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Fix null pointer dereference on chip register error path (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Actually fail on TPM errors during "get random" (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 505 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 399 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Add SPDX license identifier - Makefile/Kconfig (Jerry Snitselaar) [1725580 1742257] - [tools] selftests/tpm2: Open tpm dev in unbuffered mode (Jerry Snitselaar) [1725580 1742257] - [tools] selftests/tpm2: Extend tests to cover partial reads (Jerry Snitselaar) [1725580 1742257] - [tools] selftests: add TPM 2.0 tests (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: fix -Wvarags warning (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: Move trusted.h to include/keys [ver #2] (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: Expose common functionality [ver #2] (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Wrap the buffer from the caller to tpm_buf in tpm_send() (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: correctly initialize digests and fix locking issue (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: allow module init if TPM is inactive or deactivated (Jerry Snitselaar) [1725580 1742257] - [net] net/smc: make sure EPOLLOUT is raised (Philipp Rudo) [1726415] - [net] net/smc: avoid fallback in case of non-blocking connect (Philipp Rudo) [1726415] - [net] net/smc: do not schedule tx_work in SMC_CLOSED state (Philipp Rudo) [1726415] - [net] net/smc: common release code for non-accepted sockets (Philipp Rudo) [1726415] - [net] net/smc: Fix error path in smc_init (Philipp Rudo) [1726415] - [net] net/smc: hold conns_lock before calling smc_lgr_register_conn() (Philipp Rudo) [1726415] - [dma] dmaengine: ioatdma: support latency tolerance report (LTR) for v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: add descriptor pre-fetch support for v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: disable DCA enabling on IOATDMA v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: Add Snow Ridge ioatdma device id (Jerry Snitselaar) [1661996] - [kernel] mutex: Fix up mutex_waiter usage (Waiman Long) [1736609] - [kernel] locking/mutex: Use mutex flags macro instead of hard code (Waiman Long) [1736609] - [kernel] locking/mutex: Make __mutex_owner static to mutex.c (Waiman Long) [1736609] - [kernel] locking/mutex: Test for initialized mutex (Waiman Long) [1736609] - [kernel] kernel/locking/mutex.c: remove caller signal_pending branch predictions (Waiman Long) [1736609] - [kernel] Revert "locking/pvqspinlock: Don't wait if vCPU is preempted" (Waiman Long) [1736609] - [kernel] locking/rwsem: Check for operations on an uninitialized rwsem (Waiman Long) [1736609] - [kernel] locking/rwsem: Make handoff writer optimistically spin on owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Add ACQUIRE comments (Waiman Long) [1736609] - [tty] tty/ldsem, locking/rwsem: Add missing ACQUIRE to read_failed sleep loop (Waiman Long) [1736609] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath sleep loop (Waiman Long) [1736609] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty (Waiman Long) [1736609] - [kernel] locking/rwsem: Don't call owner_on_cpu() on read-owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Guard against making count negative (Waiman Long) [1736609] - [kernel] locking/rwsem: Adaptive disabling of reader optimistic spinning (Waiman Long) [1736609] - [kernel] locking/rwsem: Enable time-based spinning on reader-owned rwsem (Waiman Long) [1736609] - [kernel] locking/rwsem: Make rwsem->owner an atomic_long_t (Waiman Long) [1736609] - [kernel] locking/rwsem: Enable readers spinning on writer (Waiman Long) [1736609] - [kernel] locking/rwsem: Clarify usage of owner's nonspinaable bit (Waiman Long) [1736609] - [kernel] locking/rwsem: Wake up almost all readers in wait queue (Waiman Long) [1736609] - [kernel] locking/rwsem: More optimal RT task handling of null owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Always release wait_lock before waking up tasks (Waiman Long) [1736609] - [kernel] locking/rwsem: Implement lock handoff to prevent lock starvation (Waiman Long) [1736609] - [kernel] locking/rwsem: Make rwsem_spin_on_owner() return owner state (Waiman Long) [1736609] - [kernel] locking/rwsem: Code cleanup after files merging (Waiman Long) [1736609] - [kernel] locking/rwsem: Add rwsem_init.c to keep __init_rwsem() kABI (Waiman Long) [1736609] - [kernel] locking/rwsem: Merge rwsem.h and rwsem-xadd.c into rwsem.c (Waiman Long) [1736609] - [kernel] locking/rwsem: Implement a new locking scheme (Waiman Long) [1736609] - [kernel] locking/rwsem: Remove rwsem_wake() wakeup optimization (Waiman Long) [1736609] - [kernel] locking/rwsem: Make owner available even if !CONFIG_RWSEM_SPIN_ON_OWNER (Waiman Long) [1736609] - [kernel] locking/lock_events: Use raw_cpu_{add, inc}() for stats (Waiman Long) [1736609] - [kernel] locking/lock_events: Use this_cpu_add() when necessary (Waiman Long) [1736609] - [kernel] locking/rwsem: Revert "[kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath ..." (Waiman Long) [1736609] - [block] block: don't release queue's sysfs lock during switching elevator (Ming Lei) [1760151] - [block] blk-mq: move lockdep_assert_held() into elevator_exit (Ming Lei) [1760151] - [block] block: fix race between switching elevator and removing queues (Ming Lei) [1760151] - [md] raid5: use bio_end_sector in r5_next_bio (Nigel Croxon) [1754949] - [md] raid5: remove STRIPE_OPS_REQ_PENDING (Nigel Croxon) [1754949] - [md] md: add feature flag MD_FEATURE_RAID0_LAYOUT (Nigel Croxon) [1754949] - [md] md/raid0: avoid RAID0 data corruption due to layout confusion. (Nigel Croxon) [1754949] - [md] raid5: don't set STRIPE_HANDLE to stripe which is in batch list (Nigel Croxon) [1754949] - [md] raid5: don't increment read_errors on EILSEQ return (Nigel Croxon) [1754949] - [md] md/raid5: use bio_end_sector to calculate last_sector (Nigel Croxon) [1730670] - [md] md/raid1: fail run raid1 array when active disk less than one (Nigel Croxon) [1730670] - [md] md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone (Nigel Croxon) [1730670] - [md] raid5 improve too many read errors msg by adding limits (Nigel Croxon) [1730670] - [md] md: don't report active array_state until after revalidate_disk() completes. (Nigel Croxon) [1730670] - [md] md: only call set_in_sync() when it is expected to succeed. (Nigel Croxon) [1730670] - [md] raid1: factor out a common routine to handle the completion of sync write (Nigel Croxon) [1730670] - [md] md: don't call spare_active in md_reap_sync_thread if all member devices can't work (Nigel Croxon) [1730670] - [md] md: don't set In_sync if array is frozen (Nigel Croxon) [1730670] - [md] md: allow last device to be forcibly removed from RAID1/RAID10. (Nigel Croxon) [1730670] - [md] md/raid10: end bio when the device faulty (Nigel Croxon) [1730670] - [md] md/raid1: end bio when the device faulty (Nigel Croxon) [1730670] - [md] md/raid6: Set R5_ReadError when there is read failure on parity disk (Nigel Croxon) [1730670] - [md] raid1: use an int as the return value of raise_barrier() (Nigel Croxon) [1730670] - [md] md/raid1: Fix a warning message in remove_wb() (Nigel Croxon) [1730670] - [crypto] crypto: ccp - Fix SEV_VERSION_GREATER_OR_EQUAL (Gary Hook) [1754634] - [crypto] crypto: ccp - Do not free psp_master when PLATFORM_INIT fails (Gary Hook) [1754634] - [crypto] crypto: ccp - Use kmemdup in ccp_copy_and_save_keypart() (Gary Hook) [1754634] - [crypto] crypto: ccp - introduce SEV_GET_ID2 command (Gary Hook) [1754634] - [netdrv] e1000e: start network tx queue only when link is up (Oleksandr Natalenko) [1747869] - [netdrv] Revert "e1000e: fix cyclic resets at link up with active tx" (Oleksandr Natalenko) [1747869] - [mm] mm/zsmalloc.c: fix build when CONFIG_COMPACTION=n (Rafael Aquini) [1735181] - [mm] mm/zsmalloc.c: fix race condition in zs_destroy_pool (Rafael Aquini) [1735181] - [mm] mm/zsmalloc.c: migration can leave pages in ZS_EMPTY indefinitely (Rafael Aquini) [1735181] - [mm] mm, page_owner: handle THP splits correctly (Rafael Aquini) [1735181] - [mm] hugetlbfs: fix hugetlb page migration/fault race causing SIGBUS (Rafael Aquini) [1735181] - [mm] mm/usercopy: use memory range to be accessed for wraparound check (Rafael Aquini) [1735181] - [mm] mm/memcontrol.c: fix use after free in mem_cgroup_iter() (Rafael Aquini) [1735181] - [mm] mm/hmm: fix bad subpage pointer in try_to_unmap_one (Rafael Aquini) [1735181] - [mm] mm: vmscan: check if mem cgroup is disabled or not before calling memcg slab shrinker (Rafael Aquini) [1735181] - [mm] mm: revert "kmemleak: allow to coexist with fault injection" (Rafael Aquini) [1735181] - [mm] mm/vmalloc: sync unmappings in __purge_vmap_area_lazy() (Rafael Aquini) [1735181] - [mm] mm/vmalloc.c: add priority threshold to __purge_vmap_area_lazy() (Rafael Aquini) [1735181] - [mm] mm/cma.c: fail if fixed declaration can't be honored (Rafael Aquini) [1735181] - [mm] mm/mmu_notifier: use hlist_add_head_rcu() (Rafael Aquini) [1735181] - [mm] mm/mincore.c: fix race between swapoff and mincore (Rafael Aquini) [1735181] - [mm] mm, swap: fix race between swapoff and some swap operations (Rafael Aquini) [1735181] - [mm] mm/failslab.c: by default, do not fail allocations with direct reclaim only (Rafael Aquini) [1735181] - [mm] mm: vmscan: scan anonymous pages on file refaults (Rafael Aquini) [1735181] - [mm] mm/vmscan.c: prevent useless kswapd loops (Rafael Aquini) [1735181] - [mm] mm/page_idle.c: fix oops because end_pfn is larger than max_pfn (Rafael Aquini) [1760459 1735181] - [mm] mm/mempolicy.c: fix an incorrect rebind node in mpol_rebind_nodemask (Rafael Aquini) [1735181] - [mm] mm/vmscan.c: fix trying to reclaim unevictable LRU page (Rafael Aquini) [1735181] - [mm] mm/mlock.c: change count_mm_mlocked_page_nr return type (Rafael Aquini) [1735181] - [mm] mm/mlock.c: mlockall error for flag MCL_ONFAULT (Rafael Aquini) [1735181] - [mm] mm/list_lru.c: fix memory leak in __memcg_init_list_lru_node (Rafael Aquini) [1735181] - [mm] memcg: make it work on sparse non-0-node systems (Rafael Aquini) [1735181] - [mm] prctl_set_mm: downgrade mmap_sem to read lock (Rafael Aquini) [1735181] - [mm] mm/debug.c: fix __dump_page when mapping->host is not set (Rafael Aquini) [1735181] - [mm] mm/debug.c: fix __dump_page() for poisoned pages (Rafael Aquini) [1735181] - [mm] mm: update references to page _refcount (Rafael Aquini) [1735181] - [mm] mm: lower the printk loglevel for __dump_page messages (Rafael Aquini) [1735181] - [mm] mm: print more information about mapping in __dump_page (Rafael Aquini) [1735181] - [mm] hugetlb: use same fault hash key for shared and private mappings (Rafael Aquini) [1735181] - [mm] mm/hugetlb.c: don't put_page in lock of hugetlb_lock (Rafael Aquini) [1735181] - [mm] mm: fix inactive list balancing between NUMA nodes and cgroups (Rafael Aquini) [1735181] - [mm] mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate (Rafael Aquini) [1735181] - [mm] mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified (Rafael Aquini) [1734286 1735181] - [mm] mm/hotplug: fix offline undo_isolate_page_range() (Rafael Aquini) [1735181] - [mm] mm/sparse: fix a bad comparison (Rafael Aquini) [1735181] - [mm] mm, swap: bounds check swap_info array accesses to avoid NULL derefs (Rafael Aquini) [1735181] - [mm] mm/vmalloc.c: don't dereference possible NULL pointer in __vunmap() (Rafael Aquini) [1735181] - [mm] mm: hwpoison: fix thp split handing in soft_offline_in_use_page() (Rafael Aquini) [1735181] - [mm] hugetlbfs: fix races and page leaks during migration (Rafael Aquini) [1735181] - [mm] tmpfs: fix uninitialized return value in shmem_link (Rafael Aquini) [1735181] - [mm] tmpfs: fix link accounting when a tmpfile is linked in (Rafael Aquini) [1735181] - [mm] mm: migrate: don't rely on __PageMovable() of newpage after unlocking it (Rafael Aquini) [1735181] - [mm] oom, oom_reaper: do not enqueue same task twice (Rafael Aquini) [1735181] - [mm] mm: page_mapped: don't assume compound page is huge or THP (Rafael Aquini) [1735181] - [mm] mm, memcg: fix reclaim deadlock with writeback (Rafael Aquini) [1735181] - [mm] mm, swap: fix swapoff with KSM pages (Rafael Aquini) [1735181] - [mm] mm/huge_memory: fix lockdep complaint on 32-bit i_size_read() (Rafael Aquini) [1735181] - [mm] mm/huge_memory: splitting set mapping+index before unfreeze (Rafael Aquini) [1735181] - [mm] mm/huge_memory: rename freeze_page() to unmap_page() (Rafael Aquini) [1735181] - [mm] mm/page_alloc.c: fix calculation of pgdat->nr_zones (Rafael Aquini) [1735181] - [mm] mm: use swp_offset as key in shmem_replace_page() (Rafael Aquini) [1735181] - [mm] mm: cleancache: fix corruption on missed inode invalidation (Rafael Aquini) [1735181] - [mm] mm/vmstat.c: fix NUMA statistics updates (Rafael Aquini) [1735181] - [mm] mm, swap: make CONFIG_THP_SWAP depend on CONFIG_SWAP (Rafael Aquini) [1735181] - [mm] ARM: 8820/1: mm: Stop printing the virtual memory layout (Rafael Aquini) [1655192] - [netdrv] net: dsa: bcm_sf2: Remove print of base address (Rafael Aquini) [1655192] - [netdrv] net: systemport: Remove print of base address (Rafael Aquini) [1655192] - [netdrv] net: phy: mdio-bcm-unimac: Remove print of base address (Rafael Aquini) [1655192] - [x86] x86/mm: Don't leak kernel addresses (Rafael Aquini) [1655192] - [x86] x86/realmode: Make set_real_mode_mem() static inline (Rafael Aquini) [1655192] - [x86] x86/realmode: Don't leak the trampoline kernel address (Rafael Aquini) [1655192] - [arm64] arm64/vdso: don't leak kernel addresses (Rafael Aquini) [1655192] - [powerpc] powerpc/traps: Fix the message printed when stack overflows (Rafael Aquini) [1655192] - [kernel] kdb: print real address of pointers instead of hashed addresses (Rafael Aquini) [1655192] - [kernel] kdb: use correct pointer when 'btc' calls 'btt' (Rafael Aquini) [1655192]- [fs] signal: Allow cifs and drbd to receive their terminating signals (Leif Sahlberg) [1757670] - [fs] smb3: fix unmount hang in open_shroot (Leif Sahlberg) [1757670] - [fs] cifs: update internal module number (Leif Sahlberg) [1757670] - [fs] cifs: replace various strncpy with strscpy and similar (Leif Sahlberg) [1757670] - [fs] cifs: Use kzfree() to zero out the password (Leif Sahlberg) [1757670] - [fs] cifs: set domainName when a domain-key is used in multiuser (Leif Sahlberg) [1757670] - [fs] SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL (Leif Sahlberg) [1757670] - [fs] smb3: send CAP_DFS capability during session setup (Leif Sahlberg) [1757670] - [fs] SMB3: Fix potential memory leak when processing compound chain (Leif Sahlberg) [1757670] - [fs] SMB3: Fix deadlock in validate negotiate hits reconnect (Leif Sahlberg) [1757670] - [fs] cifs: fix rmmod regression in cifs.ko caused by force_sig changes (Leif Sahlberg) [1757670] - [fs] cifs: update internal module number (Leif Sahlberg) [1757670] - [fs] cifs: flush before set-info if we have writeable handles (Leif Sahlberg) [1757670] - [fs] smb3: optimize open to not send query file internal info (Leif Sahlberg) [1757670] - [fs] CIFS: fix deadlock in cached root handling (Leif Sahlberg) [1757670] - [fs] cifs: fix crash in cifs_dfs_do_automount (Leif Sahlberg) [1757670] - [fs] cifs: fix parsing of symbolic link error response (Leif Sahlberg) [1757670] - [fs] cifs: refactor and clean up arguments in the reparse point parsing (Leif Sahlberg) [1757670] - [fs] SMB3: query inode number on open via create context (Leif Sahlberg) [1757670] - [fs] smb3: Send netname context during negotiate protocol (Leif Sahlberg) [1757670] - [fs] smb3: do not send compression info by default (Leif Sahlberg) [1757670] - [fs] smb3: add new mount option to retrieve mode from special ACE (Leif Sahlberg) [1757670] - [fs] smb3: Allow query of symlinks stored as reparse points (Leif Sahlberg) [1757670] - [fs] cifs: Fix a race condition with cifs_echo_request (Leif Sahlberg) [1757670] - [fs] cifs: always add credits back for unsolicited PDUs (Leif Sahlberg) [1757670] - [fs] fs: cifs: cifsssmb: Change return type of convert_ace_to_cifs_ace (Leif Sahlberg) [1757670] - [fs] add some missing definitions (Leif Sahlberg) [1757670] - [fs] cifs: fix typo in debug message with struct field ia_valid (Leif Sahlberg) [1757670] - [fs] smb3: minor cleanup of compound_send_recv (Leif Sahlberg) [1757670] - [fs] CIFS: Fix module dependency (Leif Sahlberg) [1757670] - [fs] cifs: simplify code by removing CONFIG_CIFS_ACL ifdef (Leif Sahlberg) [1757670] - [fs] cifs: Fix check for matching with existing mount (Leif Sahlberg) [1757670] - [fs] cifs: Properly handle auto disabling of serverino option (Leif Sahlberg) [1757670] - [fs] smb3: if max_credits is specified then display it in /proc/mounts (Leif Sahlberg) [1757670] - [fs] Fix match_server check to allow for auto dialect negotiate (Leif Sahlberg) [1757670] - [fs] cifs: add missing GCM module dependency (Leif Sahlberg) [1757670] - [fs] SMB3.1.1: Add GCM crypto to the encrypt and decrypt functions (Leif Sahlberg) [1757670] - [fs] SMB3: Add SMB3.1.1 GCM to negotiated crypto algorigthms (Leif Sahlberg) [1757670] - [fs] fs: cifs: Drop unlikely before IS_ERR(_OR_NULL) (Leif Sahlberg) [1757670] - [fs] cifs: Use kmemdup in SMB2_ioctl_init() (Leif Sahlberg) [1757670] - [fs] SMB3: retry on STATUS_INSUFFICIENT_RESOURCES instead of failing write (Leif Sahlberg) [1757670] - [fs] cifs: fix panic in smb2_reconnect (Leif Sahlberg) [1757670] - [fs] CIFS: cifs_read_allocate_pages: don't iterate through whole page array on ENOMEM (Leif Sahlberg) [1757670] - [fs] dfs_cache: fix a wrong use of kfree in flush_cache_ent() (Leif Sahlberg) [1757670] - [fs] fs/cifs/smb2pdu.c: fix buffer free in SMB2_ioctl_free (Leif Sahlberg) [1757670] - [fs] cifs: fix memory leak of pneg_inbuf on -EOPNOTSUPP ioctl case (Leif Sahlberg) [1757670] - [fs] cifs: add support for SEEK_DATA and SEEK_HOLE (Leif Sahlberg) [1757670] - [fs] cifs: Allocate memory for all iovs in smb2_ioctl (Leif Sahlberg) [1757670] - [fs] cifs: Don't match port on SMBDirect transport (Leif Sahlberg) [1757670] - [fs] cifs:smbd Use the correct DMA direction when sending data (Leif Sahlberg) [1757670] - [fs] cifs:smbd When reconnecting to server, call smbd_destroy() after all MIDs have been called (Leif Sahlberg) [1757670] - [fs] smb3: trivial cleanup to smb2ops.c (Leif Sahlberg) [1757670] - [fs] cifs: cleanup smb2ops.c and normalize strings (Leif Sahlberg) [1757670] - [fs] smb3: display session id in debug data (Leif Sahlberg) [1757670] - [fs] cifs: update module internal version number (Leif Sahlberg) [1757670] - [fs] cifs: fix crash querying symlinks stored as reparse-points (Leif Sahlberg) [1757670] - [fs] SMB3: Clean up query symlink when reparse point (Leif Sahlberg) [1757670] - [fs] cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() (Leif Sahlberg) [1757670] - [fs] Negotiate and save preferred compression algorithms (Leif Sahlberg) [1757670] - [fs] cifs: rename and clarify CIFS_ASYNC_OP and CIFS_NO_RESP (Leif Sahlberg) [1757670] - [fs] smb3: Add protocol structs for change notify support (Leif Sahlberg) [1757670] - [fs] cifs: fix smb3_zero_range for Azure (Leif Sahlberg) [1757670] - [fs] cifs: zero-range does not require the file is sparse (Leif Sahlberg) [1757670] - [fs] Add new flag on SMB3.1.1 read (Leif Sahlberg) [1757670] - [fs] cifs: add fiemap support (Leif Sahlberg) [1757670] - [fs] SMB3: Add defines for new negotiate contexts (Leif Sahlberg) [1757670] - [fs] cifs: fix bi-directional fsctl passthrough calls (Leif Sahlberg) [1757670] - [fs] cifs: smbd: take an array of reqeusts when sending upper layer data (Leif Sahlberg) [1757670] - [fs] SMB3: Add handling for different FSCTL access flags (Leif Sahlberg) [1757670] - [fs] cifs: Add support for FSCTL passthrough that write data to the server (Leif Sahlberg) [1757670] - [fs] cifs: remove superfluous inode_lock in cifs_{strict_}fsync (Leif Sahlberg) [1757670] - [fs] cifs: Call MID callback before destroying transport (Leif Sahlberg) [1757670] - [fs] smbd: Make upper layer decide when to destroy the transport (Leif Sahlberg) [1757670] - [fs] SMB3: update comment to clarify enumerating snapshots (Leif Sahlberg) [1757670] - [fs] CIFS: check CIFS_MOUNT_NO_DFS when trying to reuse existing sb (Leif Sahlberg) [1757670] - [fs] CIFS: Show locallease in /proc/mounts for cifs shares mounted with locallease feature. (Leif Sahlberg) [1757670] - [fs] cifs: Fix DFS cache refresher for DFS links (Leif Sahlberg) [1757670] - [fs] cifs: don't use __constant_cpu_to_le32() (Leif Sahlberg) [1757670] - [fs] SMB3: Track total time spent on roundtrips for each SMB3 command (Leif Sahlberg) [1757670] - [fs] cifs: use the right include for signal_pending() (Leif Sahlberg) [1757670] - [fs] CIFS: Mask off signals when sending SMB packets (Leif Sahlberg) [1757670] - [infiniband] RDMA/umem: Revert broken 'off by one' fix (Kamal Heib) [1720888] - [infiniband] RDMA/umem: minor bug fix in error handling path (Kamal Heib) [1720888] - [infiniband] RDMA/uverbs: Don't do double free of allocated PD (Kamal Heib) [1720888] - [infiniband] RDMA: Handle ucontext allocations by IB/core (Kamal Heib) [1720888] - [infiniband] cross-tree: phase out dma_zalloc_coherent() (Kamal Heib) [1720888] - [infiniband] RDMA/core: Fix a WARN() message (Kamal Heib) [1720888] - [infiniband] RDMA/uverbs: Store PR pointer before it is overwritten (Kamal Heib) [1720888] - [infiniband] RDMA/core: Cosmetic change - move member initialization to correct block (Kamal Heib) [1720888] - [infiniband] rdma_rxe: Use netlink messages to add/delete links (Kamal Heib) [1720888] - [infiniband] RDMA/core: Add RDMA_NLDEV_CMD_NEWLINK/DELLINK support (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Close a race after ib_register_device (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Add ib_device_get_by_name() and use it in rxe (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Use driver_unregister and new unregistration API (Kamal Heib) [1720888] - [infiniband] RDMA/device: Provide APIs from the core code to help unregistration (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Use ib_device_get_by_netdev() instead of open coding (Kamal Heib) [1720888] - [infiniband] RDMA/device: Add ib_device_get_by_netdev() (Kamal Heib) [1720888] - [infiniband] RDMA/device: Add ib_device_set_netdev() as an alternative to get_netdev (Kamal Heib) [1720888] - [infiniband] RDMA/cache: Move the cache per-port data into the main ib_port_data (Kamal Heib) [1720888] - [infiniband] RDMA/device: Consolidate ib_device per_port data into one place (Kamal Heib) [1720888] - [infiniband] RDMA: Add and use rdma_for_each_port (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Don't expose number of not-visible entries (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Connect QP number to .doit callback (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Provide parent IDs for PD, MR and QP objects (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Share with user-space object IDs (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Prepare restrack_root to addition of extra fields per-type (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Hide restrack DB from IB/core (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Reduce scope of synchronization lock while updating DB (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Add resource tracker doit callback (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Translate from ID to restrack object (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Convert internal DB from hash to XArray (Kamal Heib) [1720888] - [infiniband] RDMA/core: Move device addition deletion to device.c (Kamal Heib) [1720888] - [infiniband] RDMA/core: Introduce and use ib_setup_port_attrs() (Kamal Heib) [1720888] - [infiniband] RDMA/core: Use simpler device_del() instead of device_unregister() (Kamal Heib) [1720888] - [infiniband] RDMA/nes: Remove useless usecnt variable and redundant memset (Kamal Heib) [1720888] - [infiniband] IB/{hw, sw}: Remove 'uobject->context' dependency in object creation APIs (Kamal Heib) [1720888] - [infiniband] RDMA/qedr: remove set but not used variable 'ib_ctx' (Kamal Heib) [1720888] - [infiniband] RDMA/mthca: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Kamal Heib) [1720888] - [infiniband] RDMA/mthca: Clear QP objects during their allocation (Kamal Heib) [1720888] - [include] IB/verbs: Add helper function rdma_udata_to_drv_context (Kamal Heib) [1720888] - [infiniband] IB/uverbs: Add ib_ucontext to uverbs_attr_bundle sent from ioctl and cmd flows (Kamal Heib) [1720888] - [infiniband] IB/ipoib: Use __func__ instead of function's name (Kamal Heib) [1720888] - [infiniband] RDMA/iwpm: Remove set but not used variable 'msg_seq' (Kamal Heib) [1720888] - [infiniband] RDMA/nes: Use for_each_sg_dma_page iterator for umem SGL (Kamal Heib) [1720888] - [net] xprtrdma: Check inline size before providing a Write chunk (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA/vmw_pvrdma: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Re-organize device.c locking (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Use xarray to store the client_data (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Use xarray to store the clients (Kamal Heib) [1720888] - [infiniband] RDMA/device: Use an ida instead of a free page in alloc_name (Kamal Heib) [1720888] - [infiniband] RDMA/device: Get rid of reg_state (Kamal Heib) [1720888] - [infiniband] RDMA/device: Check that the rename is nop under the lock (Kamal Heib) [1720888] - [infiniband] RDMA: Handle PD allocations by IB/core (Kamal Heib) [1720888] - [infiniband] RDMA/hns: fix spelling mistake "reseved" -> "reserved" (Kamal Heib) [1720888] - [infiniband] RDMA/core: Share driver structure size with core (Kamal Heib) [1720888] - [infiniband] IB/cma: Define option to set ack timeout and pack tos_set (Kamal Heib) [1720888] - [infiniband] drivers/IB,core: reduce scope of mmap_sem (Kamal Heib) [1720888] - [infiniband] drivers/IB,usnic: reduce scope of mmap_sem (Kamal Heib) [1720888] - [net] svcrdma: Remove syslog warnings in work completion handlers (Kamal Heib) [1720888] - [net] svcrdma: Squelch compiler warning when SUNRPC_DEBUG is disabled (Kamal Heib) [1720888] - [net] svcrdma: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [infiniband] RDMA/iwpm: move kdoc comments to functions (Kamal Heib) [1720888] - [infiniband] RDMA/cma: Remove CM_ID statistics provided by rdma-cm module (Kamal Heib) [1720888] - [infiniband] scsi: RDMA/srpt: Rework I/O context allocation (Kamal Heib) [1720888] - [infiniband] scsi: RDMA/srpt: Fix handling of command / TMF submission failure (Kamal Heib) [1720888] - [infiniband] RDMA/IWPM: Support no port mapping requirements (Kamal Heib) [1720888] - [infiniband] RDMA/IWPM: refactor the IWPM message attribute names (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Improve loopback marking (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Move rxe_init_av() to rxe_av.c (Kamal Heib) [1720888] - [infiniband] IB/core: Remove ib_sg_dma_address() and ib_sg_dma_len() (Kamal Heib) [1720888] - [infiniband] IB/uverbs: Expose XRC ODP device capabilities (Kamal Heib) [1720888] - [include] IB/core: Allocate a bit for SRQ ODP support (Kamal Heib) [1720888] - [infiniband] RDMA/core: Use the ops infrastructure to keep all callbacks in one place (Kamal Heib) [1720888] - [infiniband] RDMA/cxgb4: Sort SRQ ops alphabetically (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Refactor user/kernel restrack additions (Kamal Heib) [1720888] - [infiniband] RDMA/core: Simplify restrack interface (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Prepare CAP_NET_ADMIN checks for .doit callbacks (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Factor out the PID namespace check (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Dynamically generate restrack dumpit callbacks (Kamal Heib) [1720888] - [infiniband] IB/usnic: Remove stub functions (Kamal Heib) [1720888] - [infiniband] RDMA: Add indication for in kernel API support to IB device (Kamal Heib) [1720888] - [infiniband] IB/mlx5: Introduce async DEVX obj query API (Kamal Heib) [1720888] - [infiniband] IB/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_CMD_FD (Kamal Heib) [1720888] - [infiniband] infiniband: prefix header search paths with $(srctree)/ (Kamal Heib) [1720888] - [infiniband] infiniband: remove unneeded header search paths (Kamal Heib) [1720888] - [infiniband] infiniband: ipoib: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] infiniband: usnic: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] infiniband: ocrdma: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Use PCI-ID as an identification in debugfs (Kamal Heib) [1720888] - [infiniband] IB/umad: Do not check status of nonseekable_open() (Kamal Heib) [1720888] - [infiniband] IB/umad: Avoid additional device reference during open()/close() (Kamal Heib) [1720888] - [infiniband] IB/rxe: Remove unnecessary rxe variable (Kamal Heib) [1720888] - [infiniband] IB/core: Simplify rdma cgroup registration (Kamal Heib) [1720888] - [infiniband] RDMA/device: Use __ib_device_get_by_name() in ib_device_rename() (Kamal Heib) [1720888] - [infiniband] RDMA: Rename port_callback to init_port (Kamal Heib) [1720888] - [infiniband] RDMA: Clear CTX objects during their allocation (Kamal Heib) [1720888] - [infiniband] RDMA: Clear PD objects during their allocation (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Fix out of bounds index check in query pkey (Kamal Heib) [1720888] - [infiniband] IB/{core, hw}: Have ib_umem_get extract the ib_ucontext from ib_udata (Kamal Heib) [1720888] - [infiniband] IB/{core, uverbs}: Move ib_umem_xxx functions from ib_core to ib_uverbs (Kamal Heib) [1720888] - [infiniband] RDMA/core: Don't depend device ODP capabilities on kconfig option (Kamal Heib) [1720888] - [infiniband] IB/srp: Use struct_size() in kzalloc() (Kamal Heib) [1720888] - [infiniband] IB/core: Use struct_size() in kzalloc() (Kamal Heib) [1720888] - [infiniband] IB/usnic: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [infiniband] IB/cm: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [mm] mm: introduce put_user_page*(), placeholder versions (Rafael Aquini) [1746371] - [mm] mm/gup: add FOLL_LONGTERM capability to GUP fast (Rafael Aquini) [1746371] - [mm] mm/gup: change GUP fast to use flags rather than a write 'bool' (Rafael Aquini) [1746371] - [mm] mm/gup: change write parameter to flags in fast walk (Rafael Aquini) [1746371] - [mm] mm/gup: replace get_user_pages_longterm() with FOLL_LONGTERM (Rafael Aquini) [1746371] - [s390] s390/mm: fix pxd_bad with folded page tables (Rafael Aquini) [1746371] - [s390] s390/mm: fix dump_pagetables top level page table walking (Rafael Aquini) [1746371] - [s390] s390/mm: convert to the generic get_user_pages_fast code (Rafael Aquini) [1746371] - [s390] s390/mm: make the pxd_offset functions more robust (Rafael Aquini) [1746371] - [mm] mm/gup: fix gup_pmd_range() for dax (Rafael Aquini) [1746371] - [mm] mm/gup: remove the 'write' parameter from gup_fast_permitted() (Rafael Aquini) [1746371] - [mm] mm/gup: fix follow_page_mask() kerneldoc comment (Rafael Aquini) [1746371] - [mm] mm/gup: fix __get_user_pages_fast() comment (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: prevent integer overflow in ioctl (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: add additional pinning methods (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: time put_page() (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: fix unsigned comparison to zero in __gup_benchmark_ioctl (Rafael Aquini) [1746371] - [mm] mm: remove caller signal_pending branch predictions (Rafael Aquini) [1746371] - [mm] mm: remove unnecessary local variable addr in __get_user_pages_fast() (Rafael Aquini) [1746371] - [mm] mm: change return type int to vm_fault_t for fault handlers (Rafael Aquini) [1746371] - [mm] mm: make mm->pinned_vm an atomic64 counter (Rafael Aquini) [1746371]- [kernel] sched/core: Schedule new worker even if PI-blocked (Waiman Long) [1758629] - [char] random: add a spinlock_t to struct batched_entropy (Waiman Long) [1758629] - [crypto] crypto: chacha20 - Fix chacha20_block() keystream alignment (again) (Waiman Long) [1758629] - [fs] locking/percpu-rwsem: Remove preempt_disable variants (Waiman Long) [1758629] - [x86] x86/tsc: Add option to disable tsc clocksource watchdog (Waiman Long) [1758629] - [x86] x86/irq: Handle spurious interrupt after shutdown gracefully (Waiman Long) [1758629] - [x86] x86/ioapic: Implement irq_get_irqchip_state() callback (Waiman Long) [1758629] - [kernel] genirq: Add optional hardware synchronization for shutdown (Waiman Long) [1758629] - [kernel] genirq: Fix misleading synchronize_irq() documentation (Waiman Long) [1758629] - [kernel] genirq: Delay deactivation in free_irq() (Waiman Long) [1758629] - [kernel] genirq: Remove redundant NULL pointer check in __free_irq() (Waiman Long) [1758629] - [kernel] genirq: Synchronize only with single thread on free_irq() (Waiman Long) [1758629] - [kernel] genirq: Update code comments wrt recycled thread_mask (Waiman Long) [1758629] - [usb] usb: core: remove flags variable in __usb_hcd_giveback_urb() (Waiman Long) [1758629] - [usb] usb: core: remove local_irq_save() around ->complete() handler (Waiman Long) [1758629] - [media] media: tm6000: use irqsave() in USB's complete callback (Waiman Long) [1758629] - [media] media: em28xx-audio: use irqsave() in USB's complete callback (Waiman Long) [1758629] - [x86] x86/mm/cpa: Optimize __cpa_flush_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Factor common code between cpa_flush_*() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move CLFLUSH test into cpa_flush_array() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move CLFLUSH test into cpa_flush_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Use flush_tlb_kernel_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Unconditionally avoid WBINDV when we can (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move flush_tlb_all() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Use flush_tlb_all() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Avoid the 4k pages check completely (Waiman Long) [1758629] - [x86] x86/mm/cpa: Do the range check early (Waiman Long) [1758629] - [x86] x86/mm/cpa: Optimize same protection check (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add sanity check for existing mappings (Waiman Long) [1758629] - [x86] x86/mm/cpa: Avoid static protection checks on unmap (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add large page preservation statistics (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add debug mechanism (Waiman Long) [1758629] - [x86] x86/mm/cpa: Allow range check for static protections (Waiman Long) [1758629] - [x86] x86/mm/cpa: Rework static_protections() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Split, rename and clean up try_preserve_large_page() (Waiman Long) [1758629] - [x86] x86/mm/init32: Mark text and rodata RO in one go (Waiman Long) [1758629] - [mm] mm/kasan/quarantine.c: make quarantine_lock a raw_spinlock_t (Waiman Long) [1758629] - [mm] mm/list_lru.c: fold __list_lru_count_one() into its caller (Waiman Long) [1758629] - [mm] mm: workingset: make shadow_lru_isolate() use locking suffix (Waiman Long) [1758629] - [mm] mm: workingset: remove local_irq_disable() from count_shadow_nodes() (Waiman Long) [1758629] - [iommu] iommu/amd: Remove redundant WARN_ON() (Waiman Long) [1758629] - [mm] mm/list_lru: introduce list_lru_shrink_walk_irq() (Waiman Long) [1758629] - [mm] mm/list_lru.c: pass struct list_lru_node* as an argument to __list_lru_walk_one() (Waiman Long) [1758629] - [mm] mm/list_lru.c: move locking from __list_lru_walk_one() to its caller (Waiman Long) [1758629] - [mm] mm/list_lru.c: use list_lru_walk_one() in list_lru_walk_node() (Waiman Long) [1758629] - [kernel] userns: use irqsave variant of refcount_dec_and_lock() (Waiman Long) [1758629] - [kernel] userns: use refcount_t for reference counting instead atomic_t (Waiman Long) [1758629] - [kernel] bdi: use irqsave variant of refcount_dec_and_lock() (Waiman Long) [1758629] - [mm] bdi: use refcount_t for reference counting instead atomic_t (Waiman Long) [1758629] - [char] random: remove preempt disabled region (Waiman Long) [1758629] - [misc] ocxl: Update for AFU descriptor template version 1.1 (Steve Best) [1751207] - [misc] ocxl: Make ocxl_remove() static (Steve Best) [1751207] - [misc] ocxl: do not use C++ style comments in uapi header (Steve Best) [1751207] - [misc] ocxl: Allow contexts to be attached with a NULL mm (Steve Best) [1751207] - [misc] ocxl: Fix return value check in afu_ioctl() (Steve Best) [1751207] - [misc] ocxl: Provide global MMIO accessors for external drivers (Steve Best) [1751207] - [misc] ocxl: move event_fd handling to frontend (Steve Best) [1751207] - [misc] ocxl: afu_irq only deals with IRQ IDs, not offsets (Steve Best) [1751207] - [misc] ocxl: Allow external drivers to use OpenCAPI contexts (Steve Best) [1751207] - [misc] ocxl: Create a clear delineation between ocxl backend & frontend (Steve Best) [1751207] - [misc] ocxl: Don't pass pci_dev around (Steve Best) [1751207] - [misc] ocxl: Split pci.c (Steve Best) [1751207] - [misc] ocxl: Remove some unused exported symbols (Steve Best) [1751207] - [misc] ocxl: Remove superfluous 'extern' from headers (Steve Best) [1751207] - [misc] ocxl: read_pasid never returns an error, so make it void (Steve Best) [1751207] - [misc] ocxl: Rename struct link to ocxl_link (Steve Best) [1751207] - [misc] ocxl: remove set but not used variables 'tid' and 'lpid' (Steve Best) [1751207] - [misc] ocxl: Fix endiannes bug in read_afu_name() (Steve Best) [1751207] - [misc] ocxl/afu_irq: Don't include (Steve Best) [1751207] - [misc] ocxl: Clarify error path in setup_xsl_irq() (Steve Best) [1751207] - [misc] ocxl: Fix endiannes bug in ocxl_link_update_pe() (Steve Best) [1751207] - [misc] ocxl: Fix access to the AFU Descriptor Data (Steve Best) [1751207] - [netdrv] gve: account for lack of netdev_xmit_more() definition (RHEL-only) (John Linville) [1728864] - [netdrv] gve: Copy and paste bug in gve_get_stats() (John Linville) [1728864] - [netdrv] gve: Fix case where desc_cnt and data_cnt can get out of sync (John Linville) [1728864] - [netdrv] gve: replace kfree with kvfree (John Linville) [1728864] - [netdrv] gve: Remove the exporting of gve_probe (John Linville) [1728864] - [netdrv] gve: fix unused variable/label warnings (John Linville) [1728864] - [netdrv] gve: Fix error return code in gve_alloc_qpls() (John Linville) [1728864] - [netdrv] gve: fix -ENOMEM null check on a page allocation (John Linville) [1728864] - [netdrv] gve: Fix u64_stats_sync to initialize start (John Linville) [1728864] - [netdrv] gve: Add ethtool support (John Linville) [1728864] - [netdrv] gve: Add workqueue and reset support (John Linville) [1728864] - [netdrv] gve: Add transmit and receive support (John Linville) [1728864] - [netdrv] gve: Add basic driver framework for Compute Engine Virtual NIC (John Linville) [1728864] - [mfd] mfd: intel-lpss: Add Intel Comet Lake PCI IDs (David Arcari) [1761586] - [scsi] scsi: core: save/restore command resid for error handling (Ewan Milne) [1760503] - [scsi] scsi: sd: Ignore a failure to sync cache due to lack of authorization (Ewan Milne) [1760503] - [scsi] scsi: core: Add sysfs attributes for VPD pages 0h and 89h (Ewan Milne) [1760503] - [scsi] scsi: core: Log SCSI command age with errors (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_rdac: zero cdb in send_mode_select() (Ewan Milne) [1760503] - [scsi] scsi: sd: Improve unaligned completion resid message (Ewan Milne) [1760503] - [scsi] scsi: core: Reduce memory required for SCSI logging (Ewan Milne) [1760503] - [scsi] scsi: core: Complain if scsi_target_block() fails (Ewan Milne) [1760503] - [scsi] scsi: core: Make scsi_internal_device_unblock_nowait() reject invalid new_state (Ewan Milne) [1760503] - [scsi] scsi: scsi_debugfs: Use for_each_set_bit to simplify code (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_alua: always use a 2 second delay before retrying RTPG (Ewan Milne) [1760503] - [scsi] scsi: sd_zbc: Fix compilation warning (Ewan Milne) [1760503] - [scsi] scsi: devinfo: BLIST_TRY_VPD_PAGES for SanDisk Cruzer Blade (Ewan Milne) [1760503] - [scsi] scsi: core: use scmd_printk() to print which command timed out (Ewan Milne) [1760503] - [scsi] scsi: Avoid that .queuecommand() gets called for a blocked SCSI device (Ewan Milne) [1760503] - [scsi] scsi: core: don't preallocate small SGL in case of NO_SG_CHAIN (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_alua: Fix possible null-ptr-deref (Ewan Milne) [1760503] - [scsi] scsi: st: add a SPDX tag to st.c (Ewan Milne) [1760503] - [scsi] scsi: sr: add a SPDX tag to sr.c (Ewan Milne) [1760503] - [scsi] scsi: sg: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: sd: switch remaining files to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: sd: add a SPDX tag to sd.c (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_srp: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_spi: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_sas: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_iscsi: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_fc: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: core: switch the remaining scsi midlayer files to use SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: core: add SPDX tags to scsi midlayer files missing licensing information (Ewan Milne) [1760503] - [scsi] Revert "scsi: sd: Keep disk read-only when re-reading partition" (Ewan Milne) [1760503] - [scsi] scsi: core: set result when the command cannot be dispatched (Ewan Milne) [1760503] - [scsi] scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT (Ewan Milne) [1760503] - [scsi] scsi: core: don't hold device refcount in IO path (Ewan Milne) [1760503] - [scsi] scsi: sd: Quiesce warning if device does not report optimal I/O size (Ewan Milne) [1760503] - [scsi] scsi: core: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Ewan Milne) [1760503] - [scsi] scsi: core: Avoid that a kernel warning appears during system resume (Ewan Milne) [1760503] - [scsi] scsi: core: Also call destroy_rcu_head() for passthrough requests (Ewan Milne) [1760503] - [scsi] scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c (Ewan Milne) [1760503] - [scsi] scsi: sd: Optimal I/O size should be a multiple of physical block size (Ewan Milne) [1760503] - [scsi] scsi: sd: Fix typo in sd_first_printk() (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: Implement support for write protect (Ewan Milne) [1760503] - [scsi] scsi: sd_zbc: Fix zone information messages (Ewan Milne) [1760503] - [scsi] scsi: sd: Improve sd_print_capacity() (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: fix write_same with virtual_gb problem (Ewan Milne) [1760503] - [scsi] scsi: sd: Protect against READ(6) or WRITE(6) with zero block transfer length (Ewan Milne) [1760503] - [scsi] scsi: core: Remove an atomic instruction from the hot path (Ewan Milne) [1760503] - [scsi] scsi: sd: Rename 'SCpnt' into 'cmd' (Ewan Milne) [1760503] - [scsi] scsi: sd: Clean up sd_setup_read_write_cmnd() (Ewan Milne) [1760503] - [scsi] scsi: sd: Create helper functions for read/write commands (Ewan Milne) [1760503] - [scsi] scsi: sd: Simplify misaligned I/O check (Ewan Milne) [1760503] - [scsi] scsi: sd: Be consistent about blocks vs. sectors (Ewan Milne) [1760503] - [scsi] scsi: sd: Remove a local variable (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: add cmd abort option to every_nth (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: skip long delays when ndelay small (Ewan Milne) [1760503] - [x86] efi/x86: Do not clean dummy variable in kexec path (Bhupesh Sharma) [1724436] - [scsi] scsi: csiostor: create per port irq affinity mask set (Jonathan Toppins) [1725816] - [pci] PCI: let pci_disable_link_state propagate errors (Myron Stowe) [1735834] - [scsi] scsi: scsi_transport_fc: Add FPIN fc event codes (Ewan Milne) [1755587] - [scsi] scsi: scsi_transport_fc: refactor event posting routines (Ewan Milne) [1755587] - [scsi] scsi: fc: add FPIN ELS definition (Ewan Milne) [1755587] - [scsi] scsi: lib/sg_pool.c: clear 'first_chunk' in case of no preallocation (Ewan Milne) [1747162] - [scsi] scsi: core: Run queue when state is set to running after being blocked (Ewan Milne) [1691599] - [scsi] scsi: sd: Fix a race between closing an sd device and sd I/O (Ewan Milne) [1689118] - [net] net/ibmvnic: Fix EOI when running in XIVE mode. (Steve Best) [1761378] - [powerpc] powerpc/mce: Fix SLB rebolting during MCE recovery path. (Desnes Augusto Nunes do Rosario) [1725842] - [powerpc] powerpc/pseries: hwpoison the pages upon hitting UE (Desnes Augusto Nunes do Rosario) [1725842] - [x86] perf/x86/amd: Change/fix NMI latency mitigation to use a timestamp (David Arcari) [1730134] - [arm64] arm64: entry: Remove unneeded need_resched() loop (Mark Langsdorf) [1737075] - [arm64] arm64: preempt: Fix big-endian when checking preempt count in assembly (Mark Langsdorf) [1737075] - [arm64] arm64: preempt: Provide our own implementation of asm/preempt.h (Mark Langsdorf) [1737075] - [include] preempt: Move PREEMPT_NEED_RESCHED definition into arch code (Mark Langsdorf) [1737075] - [x86] x86/intel_rdt: Ensure a CPU remains online for the region's pseudo-locking sequence (Alexander Beregalov) [1724902] - [kernel] perf/core: Add sanity check to deal with pinned event failure (Alexander Beregalov) [1724902] - [arm64] arm64/sve: Fix wrong free for task->thread.sve_state (Andrew Jones) [1756450] - [scsi] scsi: lpfc: Update lpfc version to 12.4.0.1 (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: cleanup: remove unused fcp_txcmlpq_cnt (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Complete removal of FCoE T10 PI support on SLI-4 adapters (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Update async event logging (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix list corruption detected in lpfc_put_sgl_per_hdwq (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix hdwq sgl locks and irq handling (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix spinlock_irq issues in lpfc_els_flush_cmd() (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix list corruption in lpfc_sli_get_iocbq (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix host hang at boot or slow boot (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix coverity errors on NULL pointer checks (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix NVMe ABTS in response to receiving an ABTS (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix discovery failures when target device connectivity bounces (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix GPF on scsi command completion (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix locking on mailbox command completion (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix device recovery errors after PLOGI failures (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix rpi release when deleting vport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix NVME io abort failures causing hangs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix miss of register read failure check (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix premature re-enabling of interrupts in lpfc_sli_host_down (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix pt2pt discovery on SLI3 HBAs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix reset recovery paths that are not recovering (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Convert existing pf users to ps (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: fix 12.4.0.0 GPF at boot (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove bg debugfs buffers (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Resolve checker warning for lpfc_new_io_buf() (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Update lpfc version to 12.4.0.0 (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Merge per-protocol WQ/CQ pairs into single per-cpu pair (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add NVMe sequence level error recovery support (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Support dynamic unbounded SGL lists on G7 hardware. (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add MDS driver loopback diagnostics support (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add first and second level hardware revisions to sysfs reporting (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Migrate to px and pf in kernel print calls (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add simple unlikely optimizations to reduce NVME latency (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix coverity warnings (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme first burst module parameter description (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix BlockGuard enablement on FCoE adapters (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix reported physical link speed on a disabled trunked link (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix Max Frame Size value shown in fdmishow output (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix upcall to bsg done in non-success cases (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix sli4 adapter initialization with MSI (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme sg_seg_cnt display if HBA does not support NVME (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme target mode ABTSing a received ABTS (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix hang when downloading fw on port enabled for nvme (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix too many sg segments spamming in kernel log (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix crash due to port reset racing vs adapter error handling (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix deadlock on host_lock during cable pulls (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix error in remote port address change (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix driver nvme rescan logging (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix sg_seg_cnt for HBAs that don't support NVME (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix propagation of devloss_tmo setting to nvme transport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix loss of remote port after devloss due to lack of RPIs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix devices that don't return after devloss followed by rediscovery (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix null ptr oops updating lpfc_devloss_tmo via sysfs attribute (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix FLOGI handling across multiple link up/down conditions (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix irq raising in lpfc_sli_hba_down (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix Oops in nvme_register with target logout/login (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix issuing init_vpi mbox on SLI-3 card (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix ADISC reception terminating login state if a NVME target (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix discovery when target has no GID_FT information (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix leak of ELS completions on adapter reset (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix failure to clear non-zero eq_delay after io rate reduction (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix crash on driver unload in wq free (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix ELS field alignments (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix PLOGI failure with high remoteport count (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: remove NULL check before some freeing functions (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: use spin_lock_irqsave in IRQ context (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: remove redundant code (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove unnecessary null check before kfree (Dick Kennedy) [1757574] - [scripts] scripts/spelling.txt: drop "sepc" from the misspelling list (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: reduce stack size with CONFIG_GCC_PLUGIN_STRUCTLEAK_VERBOSE (Dick Kennedy) [1757574] - [scsi] lpfc: add sysfs interface to post NVME RSCN (Dick Kennedy) [1757574] - [scsi] lpfc: add support for translating an RSCN rcv into a discovery rescan (Dick Kennedy) [1757574] - [scsi] lpfc: add support to generate RSCN events for nport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: use sg helper to iterate over scatterlist (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Avoid unused function warnings (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Make some symbols static (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove set but not used variables 'qp' (Dick Kennedy) [1757574] - [lib] lib/vsprintf: Reinstate printing of legacy clock IDs (Prarit Bhargava) [1751075] - [lib] vsprintf: fix data type of variable in string_nocheck() (Prarit Bhargava) [1751075] - [scripts] kconfig: tests: fix recursive inclusion unit test (Prarit Bhargava) [1751075] - [kernel] printk: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Prarit Bhargava) [1751075] - [kernel] printk: Add SPDX license identifier for missed files (Prarit Bhargava) [1751075] - [kernel] printk: Add SPDX license identifier for more missed files (Prarit Bhargava) [1751075] - [kernel] panic: add an option to replay all the printk message in buffer (Prarit Bhargava) [1751075] - [kernel] panic: avoid the extra noise dmesg (Prarit Bhargava) [1751075] - [lib] vsprintf: Do not break early boot with probing addresses (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Make function pointer_string static (Prarit Bhargava) [1751075] - [lib] vsprintf: Limit the length of inlined error messages (Prarit Bhargava) [1751075] - [lib] vsprintf: Avoid confusion between invalid address and value (Prarit Bhargava) [1751075] - [lib] vsprintf: Prevent crash when dereferencing invalid pointers (Prarit Bhargava) [1751075] - [lib] vsprintf: Consolidate handling of unknown pointer specifiers (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out pO handler as kobject_string() (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out pV handler as va_format() (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out p[iI] handler as ip_addr_string() (Prarit Bhargava) [1751075] - [lib] vsprintf: Do not check address of well-known strings (Prarit Bhargava) [1751075] - [lib] vsprintf: Consistent pK handling for kptr_restrict == 0 (Prarit Bhargava) [1751075] - [lib] vsprintf: Shuffle restricted_pointer() (Prarit Bhargava) [1751075] - [kernel] printk: Tie printk_once / printk_deferred_once into .data.once for reset (Prarit Bhargava) [1751075] - [lib] lib: Use new kselftest header (Prarit Bhargava) [1751075] - [lib] lib/test_printf: Add empty module_exit function (Prarit Bhargava) [1751075] - [scripts] checkpatch: add pt as a valid vsprintf extension (Prarit Bhargava) [1751075] - [lib] lib/test_printf: Switch to bitmap_zalloc() (Prarit Bhargava) [1751075] - [lib] lib/vsprintf.c: move sizeof(struct printf_spec) next to its definition (Prarit Bhargava) [1751075] - [kernel] printk/docs: Add extra integer types to printk-formats (Prarit Bhargava) [1751075] - [kernel] printk: Remove no longer used LOG_PREFIX. (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Remove pCr remnant in comment (Prarit Bhargava) [1751075] - [kernel] printk: Pass caller information to log_store(). (Prarit Bhargava) [1751075] - [kernel] kernel/sysctl: add panic_print into sysctl (Prarit Bhargava) [1751075] - [kernel] panic: add options to print system info when panic happens (Prarit Bhargava) [1751075] - [include] include/linux/printk.h: drop silly "static inline asmlinkage" from dump_stack() (Prarit Bhargava) [1751075] - [kernel] printk: Add caller information to printk() output. (Prarit Bhargava) [1751075] - [kernel] printk: Remove print_prefix() calls with NULL buffer. (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Print time and date in human readable format via pt (Prarit Bhargava) [1751075] - [kernel] printk: fix printk_time race. (Prarit Bhargava) [1751075] - [kernel] printk: Make printk_emit() local function. (Prarit Bhargava) [1751075] - [documentation] doc: printk-formats: Remove bogus kobject references for device nodes (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Hash printed address for netdev bits fallback (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Hash legacy clock addresses (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Prepare for more general use of ptr_to_id() (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Make ptr argument conts in ptr_to_id() (Prarit Bhargava) [1751075] - [kernel] printk: fix integer overflow in setup_log_buf() (Prarit Bhargava) [1751075] - [kernel] printk: do not preliminary split up cont buffer (Prarit Bhargava) [1751075] - [kernel] printk: lock/unlock console only for new logbuf entries (Prarit Bhargava) [1751075] - [kernel] printk: keep kernel cont support always enabled (Prarit Bhargava) [1751075] - [kernel] printk: Give error on attempt to set log buffer length to over 2G (Prarit Bhargava) [1751075] - [kernel] printk: Add KBUILD_MODNAME and remove a redundant print prefix (Prarit Bhargava) [1751075] - [kernel] printk: Correct wrong casting (Prarit Bhargava) [1751075] - [kernel] printk: CON_PRINTBUFFER console registration is a bit racy (Prarit Bhargava) [1751075] - [kernel] printk: Do not miss new messages when replaying the log (Prarit Bhargava) [1751075] - [kernel] Revert "printk: make sure to print log on console." (Prarit Bhargava) [1751075] - [lib] vsprintf: print OF node name using full_name (Prarit Bhargava) [1751075] - [kernel] printk/tracing: Do not trace printk_nmi_enter() (Prarit Bhargava) [1751075] - [misc] notifier: Remove notifier header file wherever not used (Prarit Bhargava) [1751075] - [init] init: allow initcall tables to be emitted using relative references (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Do not handle pO[^F] as px (Prarit Bhargava) [1751075] - [kernel] console: Replace #if 0 with atomic var 'ignore_console_lock_warning' (Prarit Bhargava) [1751075] - [lib] vsprintf: Use hw RNG for ptr_key (Prarit Bhargava) [1751075] - [kernel] printk: Fix warning about unused suppress_message_printing (Prarit Bhargava) [1751075] - [char] random: Return nbytes filled from hw RNG (Prarit Bhargava) [1751075] - [char] random: Fix whitespace pre random-bytes work (Prarit Bhargava) [1751075] - [kernel] printk/nmi: Prevent deadlock when accessing the main log buffer in NMI (Prarit Bhargava) [1751075] - [kernel] printk: Create helper function to queue deferred console handling (Prarit Bhargava) [1751075] - [kernel] printk: Split the code for storing a message into the log buffer (Prarit Bhargava) [1751075] - [kernel] printk: Clean up syslog_print_all() (Prarit Bhargava) [1751075] - [kernel] printk: Export is_console_locked (Prarit Bhargava) [1751075] - [kernel] printk: Remove unnecessary kmalloc() from syslog during clear (Prarit Bhargava) [1751075] - [kernel] printk: Make CONSOLE_LOGLEVEL_QUIET configurable (Prarit Bhargava) [1751075] - [kernel] printk: make sure to print log on console. (Prarit Bhargava) [1751075] - [lib] lib/test_printf.c: accept "ptrval" as valid result for plain 'p' tests (Prarit Bhargava) [1751075] - [kernel] softirq: Remove tasklet_hrtimer (Prarit Bhargava) [1737073] - [include] list: add function list_rotate_to_front() (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Rename the file for consistency (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Move Kconfig option (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Use tcb as sched_clock (Prarit Bhargava) [1737073] - [kernel] irq_work: Do not raise an IPI when queueing work on the local CPU (Prarit Bhargava) [1737073] - [tty] tty/sysrq: Convert show_lock to raw_spinlock_t (Prarit Bhargava) [1737073] - [net] xfrm: Replace hrtimer tasklet with softirq hrtimer (Prarit Bhargava) [1737073] - [netdrv] mac80211_hwsim: Replace hrtimer tasklet with softirq hrtimer (Prarit Bhargava) [1737073] - [kernel] kthread: Do not use TIMER_IRQSAFE (Prarit Bhargava) [1737073] - [kernel] kthread: Convert worker lock to raw spinlock (Prarit Bhargava) [1737073] - [netdrv] mac80211_hwsim: Timer should be initialized before device registered (Prarit Bhargava) [1737073] - [net] xfrm: use time64_t for in-kernel timestamps (Prarit Bhargava) [1737073] - [x86] x86/intel: Aggregate microserver naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core graphics naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core mobile naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core client naming (Prarit Bhargava) [1725644] - [tools] turbostat: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: update version number (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: rename has_hsw_msrs() (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix Haswell Core systems (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Add support for Hygon Fam 18h (Dhyana) RAPL (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix caller parameter of get_tdp_amd() (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix CPUC1 display value (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: do not enforce 1ms (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: read from pipes too (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Add Ice Lake NNPI support (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: add Jacobsville support (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: remove duplicate pc10 column (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix file descriptor leaks (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix leak of file descriptor on error return path (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix buffer overrun (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Make interval calculation per thread to reduce jitter (Prarit Bhargava) [1725644] - [tools] tools/power/x86: Enable compiler optimisations and Fortify by default (Prarit Bhargava) [1725644] - [x86] x86/cpu: Add Ice Lake NNPI to Intel family (Prarit Bhargava) [1725644]- [tools] perf tools: Fix segfault in cpu_cache_level__read() (Michael Petlan) [1761995] - [scsi] qla2xxx: Update driver version to 10.01.00.19.08.2-k (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix Nport ID display value (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix N2N link up fail (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix N2N link reset (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Optimize NPIV tear down process (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stale mem access on driver unload (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix unbound sleep in fcport delete path. (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Silence fwdump template message (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stale session (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stuck login session (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix driver reload for ISP82xx (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix flash read for Qlogic ISPs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix message indicating vectors used by driver (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: fix spelling mistake "initializatin" -> "initialization" (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a recently introduced kernel warning (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a NULL pointer dereference (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qla24xx_async_abort_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous if-tests (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce qla2x00_els_dcmd2_free() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Inline the qla2x00_fcport_event_handler() function (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Report invalid mailbox status codes (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove superfluous sts_entry_* casts (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Let the compiler check the type of the SCSI command context pointer (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if sp->done() is not called from the completion path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make sure that aborted commands are freed (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce qla2xxx_get_next_handle() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Modify NVMe include directives (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qlt_handle_abts_completion() more robust (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a race condition between aborting and completing a SCSI command (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the function qla2xxx_init_sp() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Enable type checking for the SRB free and done callback functions (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Rework key encoding in qlt_find_host_by_d_id() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Set the responder mode if appropriate for ELS pass-through IOCBs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make it explicit that ELS pass-through IOCBs use little endian (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check secondary image if reading the primary image fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change the return type of qla24xx_read_flash_data() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the be_id_t and le_id_t data types for FC src/dst IDs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a soft reset fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use memcpy() and strlcpy() instead of strcpy() and strncpy() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check the PCI info string output buffer size (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if waiting for pending commands times out (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare fourth qla2x00_set_model_info() argument const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Always check the qla2x00_wait_for_hba_online() return value (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Suppress multiple Coverity complaint about out-of-bounds accesses (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Suppress a Coveritiy complaint about integer overflow (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unreachable code from qla83xx_idc_lock() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix qla24xx_process_bidir_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify a debug statement (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove dead code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if parsing the version string fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a mailbox command times out (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use strlcpy() instead of strncpy() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Do not corrupt vha->plogi_ack_list (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Report the firmware status code if a mailbox command fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix session lookup in qlt_abort_work() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qla24xx_abort_sp_done() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous tests (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a superfluous pointer check (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qlt_lport_dump() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reduce the number of casts in GID list code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Verify locking assumptions at runtime (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change data_dsd into an array (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla_tgt_cmd.cdb const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reduce the scope of three local variables in qla2xxx_queuecommand() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change the return type of qla2x00_update_ms_fdmi_iocb() into void (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare the fourth ql_dump_buffer() argument const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a superfluous forward declaration (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove an include directive from qla_mr.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Include the header file from qla_dsd.h (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use tabs instead of spaces for indentation (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Improve Linux kernel coding style conformance (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Really fix qla2xxx_eh_abort() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_abort_srb() again decrease the sp reference count (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Allow NVMe IO to resume with short cable pull (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix hang in fcport delete path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use common update-firmware-options routine for ISP27xx+ (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix NVMe port discovery after a short device port loss (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Correct error handling during initialization failures (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Retry fabric Scan on IOCB queue full (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix premature timer expiration (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix Relogin to prevent modifying scan_state flag (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reject EH_{abort|device_reset|target_request} (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Skip FW dump on LOOP initialization error (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use Correct index for Q-Pair array (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix abort timeout race condition. (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix DMA unmap leak (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Replace vmalloc + memset with vzalloc (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unnecessary null check (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: remove double assignment in qla2x00_update_fcport (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Add cleanup for PCI EEH recovery (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in tcm_qla2xxx_close_session() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that qlt_send_resp_ctio() corrupts memory (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use __le64 instead of uint32_t[2] for sending DMA addresses to firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the dsd32 and dsd64 data structures (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check the size of firmware data structures at compile time (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Pass little-endian values to the firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla24xx_async_abort_cmd() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unnecessary locking from the target code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove qla_tgt_cmd.released (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a command is released that is owned by the firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: target: Fix offline port handling and host reset handling (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix error handling in qlt_alloc_qfull_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qlt_send_term_imm_notif() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix use-after-free issues in qla2xxx_qpair_sp_free_dma() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a qla24xx_enable_msix() error path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that qla2x00_mem_free() crashes if called twice (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_mem_free() easier to verify (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Increase the size of the mailbox arrays from 4 to 8 (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Log the status code if a firmware command fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that Coverity complains about dereferencing a NULL rport pointer (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Uninline qla2x00_init_timer() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_is_reserved_id() from qla_inline.h into qla_init.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_clear_loop_id() from qla_inline.h into qla_init.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a set-but-not-used variable (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla2x00_find_new_loop_id() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_set_reserved_loop_ids() definition (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a format specifier (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Update two source code comments (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Silence Successful ELS IOCB message (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix device staying in blocked state (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_set_fcport_state() from a .h into a .c file (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous casts (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove qla_tgt_cmd.data_work and qla_tgt_cmd.data_work_free (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move the include directive (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla24xx_build_scsi_crc_2_iocbs() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move the port_state_str[] definition from a .h to a .c file (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Insert spaces where required (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix formatting of pointer types (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Leave a blank line after declarations (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use tabs to indent code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix FC-AL connection target discovery (Himanshu Madhani) [1728845] - [scsi] scsi: tcm_qla2xxx: Minimize #include directives (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Unregister resources in the opposite order of the registration order (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Unregister chrdev if module initialization fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use get/put_unaligned where appropriate (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_process_response_queue() easier to read (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare local symbols static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use ARRAY_SIZE() in the definition of QLA_LAST_SPEED (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a comment that refers to the SCSI host lock (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove useless set memory to zero use memset() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Cleanup fcport memory to prevent leak (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Further limit FLASH region write access from SysFS (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Increase the max_sgl_segments to 1024 (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reset the FCF_ASYNC_{SENT|ACTIVE} flags (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Set the qpair in SRB to NULL when SRB is released (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a small typo in qla_bsg.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix comment alignment in qla_bsg.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: deadlock by configfs_depend_item (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: use lower_32_bits and upper_32_bits instead of reinventing them (Himanshu Madhani) [1728845] - [md] dm snapshot: rework COW throttling to fix deadlock (Mike Snitzer) [1758605] - [md] dm snapshot: introduce account_start_copy() and account_end_copy() (Mike Snitzer) [1758605] - [netdrv] ice: Bump version (Jonathan Toppins) [1721711] - [netdrv] ice: Enable DDP package download (Jonathan Toppins) [1721711] - [netdrv] ice: Initialize DDP package structures (Jonathan Toppins) [1721711] - [netdrv] ice: Implement Dynamic Device Personalization (DDP) download (Jonathan Toppins) [1721711] - [netdrv] ice: Fix FW version formatting in dmesg (Jonathan Toppins) [1721711] - [netdrv] ice: send driver version to firmware (Jonathan Toppins) [1721711] - [netdrv] ice: Rework around device/function capabilities (Jonathan Toppins) [1721711] - [netdrv] ice: change default number of receive descriptors (Jonathan Toppins) [1721711] - [netdrv] ice: Minor refactor in queue management (Jonathan Toppins) [1721711] - [netdrv] ice: Allow for delayed LLDP MIB change registration (Jonathan Toppins) [1721711] - [netdrv] ice: update Tx context struct (Jonathan Toppins) [1721711] - [netdrv] ice: Report VF link status with opcode to get resources (Jonathan Toppins) [1721711] - [netdrv] ice: Check for DCB capability before initializing DCB (Jonathan Toppins) [1721711] - [netdrv] ice: report link down for VF when PF's queues are not enabled (Jonathan Toppins) [1721711] - [netdrv] ice: Reliably reset VFs (Jonathan Toppins) [1721711] - [netdrv] ice: change work limit to a constant (Jonathan Toppins) [1721711] - [netdrv] ice: small efficiency fixes (Jonathan Toppins) [1721711] - [netdrv] ice: move code closer together (Jonathan Toppins) [1721711] - [netdrv] ice: clean up arguments (Jonathan Toppins) [1721711] - [netdrv] ice: Check root pointer for validity (Jonathan Toppins) [1721711] - [netdrv] ice: Add ice_get_main_vsi to get PF/main VSI (Jonathan Toppins) [1721711] - [netdrv] ice: Update fields in ice_vsi_set_num_qs when reconfiguring (Jonathan Toppins) [1721711] - [netdrv] ice: Only disable VLAN pruning for the VF when all VLANs are removed (Jonathan Toppins) [1721711] - [netdrv] ice: Remove enable DCB when SW LLDP is activated (Jonathan Toppins) [1721711] - [netdrv] ice: Report stats when VSI is down (Jonathan Toppins) [1721711] - [netdrv] ice: Always notify FW of VF reset (Jonathan Toppins) [1721711] - [netdrv] ice: Correctly handle return values for init DCB (Jonathan Toppins) [1721711] - [netdrv] ice: Limit Max TCs on devices with more than 4 ports (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup defines in ice_type.h (Jonathan Toppins) [1721711] - [netdrv] ice: print extra message if topology issue (Jonathan Toppins) [1721711] - [netdrv] ice: add print of autoneg state to link message (Jonathan Toppins) [1721711] - [netdrv] ice: update driver unloading field for Queue Shutdown AQ command (Jonathan Toppins) [1721711] - [netdrv] ice: add needed PFR during driver unload (Jonathan Toppins) [1721711] - [netdrv] ice: Deduce TSA value from the priority value in the CEE mode (Jonathan Toppins) [1721711] - [netdrv] ice: Report what the user set for coalesce [tx|rx]-usecs (Jonathan Toppins) [1721711] - [netdrv] ice: Fix resource leak in ice_remove_rule_internal() (Jonathan Toppins) [1721711] - [netdrv] ice: Fix EMP reset handling (Jonathan Toppins) [1721711] - [netdrv] ice: fix adminq calls during remove (Jonathan Toppins) [1721711] - [netdrv] ice: Rework ice_ena_msix_range (Jonathan Toppins) [1721711] - [netdrv] ice: Fix VF configuration issues due to reset (Jonathan Toppins) [1721711] - [netdrv] ice: Alloc queue management bitmaps and arrays dynamically (Jonathan Toppins) [1721711] - [netdrv] ice: add support for virtchnl_queue_select.[tx|rx]_queues bitmap (Jonathan Toppins) [1721711] - [netdrv] ice: add support for enabling/disabling single queues (Jonathan Toppins) [1721711] - [netdrv] ice: fix potential infinite loop (Jonathan Toppins) [1721711] - [netdrv] ice: fix ice_is_tc_ena (Jonathan Toppins) [1721711] - [netdrv] ice: add validation in OP_CONFIG_VSI_QUEUES VF message (Jonathan Toppins) [1721711] - [netdrv] ice: Don't clog kernel debug log with VF MDD events errors (Jonathan Toppins) [1721711] - [netdrv] ice: Introduce a local variable for a VSI in the rebuild path (Jonathan Toppins) [1721711] - [netdrv] ice: shorten local and add debug prints (Jonathan Toppins) [1721711] - [netdrv] ice: Sanitize ice_ena_vsi and ice_dis_vsi (Jonathan Toppins) [1721711] - [netdrv] ice: added sibling head to parse nodes (Jonathan Toppins) [1721711] - [netdrv] ice: Fix ethtool port and PFC stats for 4x25G cards (Jonathan Toppins) [1721711] - [netdrv] ice: Don't allow VSI to remove unassociated ucast filter (Jonathan Toppins) [1721711] - [netdrv] ice: Fix issues updating VSI MAC filters (Jonathan Toppins) [1721711] - [netdrv] ice: update ethtool stats on-demand (Jonathan Toppins) [1721711] - [netdrv] ice: Add input handlers for virtual channel handlers (Jonathan Toppins) [1721711] - [netdrv] ice: Don't clear auto_fec bit in ice_cfg_phy_fec() (Jonathan Toppins) [1721711] - [netdrv] ice: Fix flag used for module query (Jonathan Toppins) [1721711] - [netdrv] ice: silence some bogus error messages (Jonathan Toppins) [1721711] - [netdrv] ice: Rename ethtool private flag for lldp (Jonathan Toppins) [1721711] - [netdrv] ice: reject VF attempts to enable head writeback (Jonathan Toppins) [1721711] - [netdrv] ice: Copy dcbx configuration only if mode is correct (Jonathan Toppins) [1721711] - [netdrv] ice: Treat DCBx state NOT_STARTED as valid (Jonathan Toppins) [1721711] - [netdrv] ice: Don't call synchronize_irq() for VF's from the host (Jonathan Toppins) [1721711] - [netdrv] ice: Account for all states of FW DCBx and LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Allow egress control packets from PF_VSI (Jonathan Toppins) [1721711] - [netdrv] ice: improve print for VF's when adding/deleting MAC filters (Jonathan Toppins) [1721711] - [netdrv] ice: Change type for queue counts (Jonathan Toppins) [1721711] - [netdrv] ice: Move VF resources definition to SR-IOV specific file (Jonathan Toppins) [1721711] - [netdrv] ice: Increase size of Mailbox receive queue for many VFs (Jonathan Toppins) [1721711] - [netdrv] ice: Reduce wait times during VF bringup/reset (Jonathan Toppins) [1721711] - [netdrv] ice: update GLINT_DYN_CTL and GLINT_VECT2FUNC register access (Jonathan Toppins) [1721711] - [netdrv] ice: Do not always bring up PF VSI in ice_ena_vsi() (Jonathan Toppins) [1721711] - [netdrv] ice: allow empty Rx descriptors (Jonathan Toppins) [1721711] - [netdrv] ice: Fix kernel hang with DCB reset in CEE mode (Jonathan Toppins) [1721711] - [netdrv] ice: Set WB_ON_ITR when we don't re-enable interrupts (Jonathan Toppins) [1721711] - [netdrv] ice: fix set pause param autoneg check (Jonathan Toppins) [1721711] - [netdrv] ice: Restructure VFs initialization flows (Jonathan Toppins) [1721711] - [netdrv] ice: Assume that more than one Rx queue is rare in ice_napi_poll (Jonathan Toppins) [1721711] - [netdrv] ice: Use the software based tail when checking for hung Tx ring (Jonathan Toppins) [1721711] - [netdrv] ice: Bump version number (Jonathan Toppins) [1721711] - [netdrv] ice: Remove flag to track VF interrupt status (Jonathan Toppins) [1721711] - [netdrv] ice: Remove unnecessary flag ICE_FLAG_MSIX_ENA (Jonathan Toppins) [1721711] - [netdrv] ice: Don't return error for disabling LAN Tx queue that does exist (Jonathan Toppins) [1721711] - [netdrv] ice: Remove duplicate code in ice_alloc_rx_bufs (Jonathan Toppins) [1721711] - [netdrv] ice: Add stats for Rx drops at the port level (Jonathan Toppins) [1721711] - [netdrv] ice: Update number of VF queue before setting VSI resources (Jonathan Toppins) [1721711] - [netdrv] ice: Set up Tx scheduling tree based on alloc VSI Tx queues (Jonathan Toppins) [1721711] - [netdrv] ice: Only bump Rx tail and release buffers once per napi_poll (Jonathan Toppins) [1721711] - [netdrv] ice: Disable VFs until reset is completed (Jonathan Toppins) [1721711] - [netdrv] ice: Do not configure port with no media (Jonathan Toppins) [1721711] - [netdrv] ice: separate out control queue lock creation (Jonathan Toppins) [1721711] - [netdrv] ice: Always set prefena when configuring an Rx queue (Jonathan Toppins) [1721711] - [netdrv] ice: Move vector base setup to PF VSI (Jonathan Toppins) [1721711] - [netdrv] ice: track hardware stat registers past rollover (Jonathan Toppins) [1721711] - [netdrv] ice: add lp_advertising flow control support (Jonathan Toppins) [1721711] - [netdrv] ice: Use struct_size() helper (Jonathan Toppins) [1721711] - [netdrv] ice: Use LLDP ethertype define ETH_P_LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Trivial cosmetic changes (Jonathan Toppins) [1721711] - [netdrv] ice: Recognize higher speeds (Jonathan Toppins) [1721711] - [netdrv] ice: Use a different ICE_DBG bit for firmware log messages (Jonathan Toppins) [1721711] - [netdrv] ice: Update function header (Jonathan Toppins) [1721711] - [netdrv] ice: Move define for ICE_AQC_DRIVER_UNLOADING (Jonathan Toppins) [1721711] - [netdrv] ice: Align to updated AQ command formats (Jonathan Toppins) [1721711] - [netdrv] ice: Use continue instead of an else block (Jonathan Toppins) [1721711] - [netdrv] ice: Change minimum descriptor count value for Tx/Rx rings (Jonathan Toppins) [1721711] - [netdrv] ice: Add switch rules to handle LLDP packets (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup ice_update_link_info (Jonathan Toppins) [1721711] - [netdrv] ice: Use right type for ice_cfg_vsi_lan return (Jonathan Toppins) [1721711] - [netdrv] ice: Add support for Forward Error Correction (FEC) (Jonathan Toppins) [1721711] - [netdrv] ice: Add support for virtchnl_vector_map.[rxq|txq]_map (Jonathan Toppins) [1721711] - [netdrv] ice: Introduce ice_init_mac_fltr and move ice_napi_del (Jonathan Toppins) [1721711] - [netdrv] ice: Use GLINT_DYN_CTL to disable VF's interrupts (Jonathan Toppins) [1721711] - [netdrv] ice: Add a helper to trigger software interrupt (Jonathan Toppins) [1721711] - [netdrv] ice: Configure RSS LUT key only if RSS is enabled (Jonathan Toppins) [1721711] - [netdrv] ice: Add ice_get_fw_log_cfg to init FW logging (Jonathan Toppins) [1721711] - [netdrv] ice: Minor cleanup in ice_switch.h (Jonathan Toppins) [1721711] - [netdrv] ice: Remove redundant and premature event config (Jonathan Toppins) [1721711] - [netdrv] ice: Change message level (Jonathan Toppins) [1721711] - [netdrv] ice: Check all VFs for MDD activity, don't disable (Jonathan Toppins) [1721711] - [netdrv] ice: Refactor interrupt tracking (Jonathan Toppins) [1721711] - [netdrv] ice: Add handler for ethtool selftest (Jonathan Toppins) [1721711] - [netdrv] ice: Don't call ice_cfg_itr() for SR-IOV (Jonathan Toppins) [1721711] - [netdrv] ice: Set minimum default Rx descriptor count to 512 (Jonathan Toppins) [1721711] - [netdrv] ice: Resolve static analysis warning (Jonathan Toppins) [1721711] - [netdrv] ice: Implement toggling ethtool rx-vlan-filter (Jonathan Toppins) [1721711] - [netdrv] ice: Remove direct write for GLLAN_RCTL_0 (Jonathan Toppins) [1721711] - [netdrv] ice: Fix LINE_SPACING style issue (Jonathan Toppins) [1721711] - [netdrv] ice: Silence semantic parser warnings (Jonathan Toppins) [1721711] - [netdrv] ice: Fix couple of issues in ice_vsi_release (Jonathan Toppins) [1721711] - [netdrv] ice: Reorganize ice_vf struct (Jonathan Toppins) [1721711] - [netdrv] ice: Use bitfields when possible (Jonathan Toppins) [1721711] - [netdrv] ice: Reorganize tx_buf and ring structs (Jonathan Toppins) [1721711] - [netdrv] ice: Format ethtool reported stats (Jonathan Toppins) [1721711] - [netdrv] ice: Gracefully handle reset failure in ice_alloc_vfs() (Jonathan Toppins) [1721711] - [netdrv] ice: Refactor the LLDP MIB change event handling (Jonathan Toppins) [1721711] - [netdrv] ice: Advertise supported link modes if none requested (Jonathan Toppins) [1721711] - [netdrv] ice: Fix hang when ethtool disables FW LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Call out dev/func caps when printing (Jonathan Toppins) [1721711] - [netdrv] ice: Remove braces for single statement blocks (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup an unnecessary variable initialization (Jonathan Toppins) [1721711] - [netdrv] ice: Implement LLDP persistence (Jonathan Toppins) [1721711] - [netdrv] ice: Fix double spacing (Jonathan Toppins) [1721711] - [kernel] sched/debug: Fix potential deadlock when writing to sched_features (Vladis Dronov) [1760060] - [kernel] sched/debug: Use match_string() helper instead of open-coded logic (Vladis Dronov) [1760060] - [hid] HID: intel-ish-hid: ipc: add EHL device id (Tony Camuso) [1716756] - [hid] HID: remove NO_D3 flag when remove driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: fix wrong driver_data usage (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Fix a use after free in load_fw_from_host() (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add SPDX license identifier - Makefile/Kconfig (Tony Camuso) [1716756] - [platform] platform/chrome: Add ChromeOS EC ISHTP driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: prefix header search paths with $(srctree)/ (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add Comet Lake PCI device ID (Tony Camuso) [1716756] - [platform] platform/chrome: cros_ec: Add EC host command support using rpmsg (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: fix spelling mistake "multipe" -> "multiple" (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ISH firmware loader client driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add interface function for PCI device pointer (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Use the new interface functions in HID ish client (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move functions related to bus and device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add interface functions for struct ishtp_cl (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move the common functions from client.h (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Store ishtp_cl_device instance in device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move driver registry functions (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Simplify ishtp_cl_link() (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Hide members of struct ishtp_cl_device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add match callback to ishtp bus type (Tony Camuso) [1716756] - [hid] HID: intel-ish: enable raw interface to HID devices on ISH (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Use VID/PID from ISH (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Switch to use new generic UUID API (Tony Camuso) [1716756] - [hid] HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR busy_clear bit (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function to search client id (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper function for client search (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function to access client buffer (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper functions for client buffer operation (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function for private driver data set/get (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper function for driver data get/set (Tony Camuso) [1716756] - [platform] platform/chrome: Move cros-ec transport drivers to drivers/platform. (Tony Camuso) [1716756] - [tools] tools: PCI: Fix compiler warning in pcitest (Myron Stowe) [1753749] - [iommu] iommu: Fix integer truncation (Myron Stowe) [1753749] - [pci] PCI/P2PDMA: Ignore root complex whitelist when an IOMMU is present (Myron Stowe) [1753749] - [pci] PCI: Cleanup setup-bus.c comments and whitespace (Myron Stowe) [1753749] - [include] CPER: Remove unnecessary use of user-space types (Myron Stowe) [1753749] - [include] CPER: Add UEFI spec references (Myron Stowe) [1753749] - [pci] PCI: Fix comment typos (Myron Stowe) [1753749] - [pci] PCI: Cleanup register definition width and whitespace (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pointless MY_NAME definition (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pointless PCIE_MODULE_NAME definition (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove unused dbg/err/info/warn() wrappers (Myron Stowe) [1753749] - [pci] PCI: pciehp: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI: pciehp: Replace pciehp_debug module param with dyndbg (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pciehp_debug uses (Myron Stowe) [1753749] - [pci] PCI/AER: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI/DPC: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI/PME: Replace dev_printk(KERN_DEBUG) with dev_info() (Myron Stowe) [1753749] - [pci] PCI/AER: Replace dev_printk(KERN_DEBUG) with dev_info() (Myron Stowe) [1753749] - [pci] PCI: Replace dev_printk(KERN_DEBUG) with dev_info(), etc (Myron Stowe) [1753749] - [pci] PCI: Replace printk(KERN_INFO) with pr_info(), etc (Myron Stowe) [1753749] - [pci] PCI: Use dev_printk() when possible (Myron Stowe) [1753749] - [iommu] iommu/dma: Reserve IOVA for PCIe inaccessible DMA address (Myron Stowe) [1753749] - [pci] PCI: Add dma_ranges window list (Myron Stowe) [1753749] - [pci] PCI: endpoint: Fix a potential NULL pointer dereference (Myron Stowe) [1753749] - [tools] tools: PCI: Handle pcitest.sh independently from pcitest (Myron Stowe) [1753749] - [tools] tools: PCI: Add 'h' in optstring of getopt() (Myron Stowe) [1753749] - [tools] tools: PCI: Change pcitest compiling process (Myron Stowe) [1753749] - [tools] tools: PCI: Fix compilation warnings (Myron Stowe) [1753749] - [tools] tools: PCI: Exit with error code when test fails (Myron Stowe) [1753749] - [pci] PCI: Mark Atheros AR9462 to avoid bus reset (Myron Stowe) [1753749] - [pci] switchtec: Fix unintended mask of MRPC event (Myron Stowe) [1753749] - [pci] switchtec: Increase PFF limit from 48 to 255 (Myron Stowe) [1753749] - [pci] PCI/LINK: Disable bandwidth notification interrupt during suspend (Myron Stowe) [1753749] - [pci] PCI/P2PDMA: Allow P2P DMA between any devices under AMD ZEN Root Complex (Myron Stowe) [1753749] - [maintainers] MAINTAINERS: Add Karthikeyan Mitran and Hou Zhiqiang for Mobiveil PCI (Myron Stowe) [1753749] - [platform] platform/chrome: chromeos_laptop: use pci_dev_id() helper (Myron Stowe) [1753749] - [iommu] iommu/amd: Use pci_dev_id() helper (Myron Stowe) [1753749] - [drm] drm/amdkfd: Use pci_dev_id() helper (Myron Stowe) [1753749] - [powerpc] powerpc/powernv/npu: Use pci_dev_id() helper (Myron Stowe) [1753749] - [x86] x86/PCI: Fix PCI IRQ routing table memory leak (Myron Stowe) [1753749] - [pci] PCI: Remove unused pci_request_region_exclusive() (Myron Stowe) [1753749] - [pci] PCI: Mark expected switch fall-throughs (Myron Stowe) [1753749] - [pci] PCI/ACPI: Remove the need for 'struct hotplug_params' (Myron Stowe) [1753749] - [pci] PCI/ACPI: Do not export pci_get_hp_params() (Myron Stowe) [1753749] - [pci] PCI: rpaphp: Get/put device node reference during slot alloc/dealloc (Myron Stowe) [1753749] - [pci] PCI: rpadlpar: Fix leaked device_node references in add/remove paths (Myron Stowe) [1753749] - [pci] PCI: Assign bus numbers present in EA capability for bridges (Myron Stowe) [1753749] - [pci] PCI: OF: Support "external-facing" property (Myron Stowe) [1753749] - [documentation] dt-bindings: Add "external-facing" PCIe port property (Myron Stowe) [1753749] - [pci] PCI: Init PCIe feature bits for managed host bridge alloc (Myron Stowe) [1753749] - [pci] PCI/AER: Change pci_aer_init() stub to return void (Myron Stowe) [1753749] - [s390] s390/zcrypt: CEX7S exploitation support (Philipp Rudo) [1726416] - [s390] s390/pkey: Add sysfs attributes to emit AES CIPHER key blobs (Philipp Rudo) [1726416] - [s390] s390/crypto: Support for SHA3 via CPACF (MSA6) (Philipp Rudo) [1726416] - [s390] s390/crypto: xts-aes-s390 fix extra run-time crypto self tests finding (Philipp Rudo) [1726416] - [s390] s390: vfio-ap: fix warning reset not completed (Philipp Rudo) [1726416] - [s390] crypto: s390 - Rename functions to avoid conflict with crypto/sha256.h (Philipp Rudo) [1726416] - [s390] s390/zcrypt: fix wrong handling of cca cipher keygenflags (Philipp Rudo) [1726416] - [s390] crypto: s390/xts-aes - invoke fallback for ciphertext stealing (Philipp Rudo) [1726416] - [s390] s390/paes: Prepare paes functions for large key blobs (Philipp Rudo) [1726416] - [s390] s390/pkey: add CCA AES cipher key support (Philipp Rudo) [1726416] - [s390] s390/zcrypt: Add low level functions for CCA AES cipher keys (Philipp Rudo) [1726416] - [s390] s390/zcrypt: extend cca_findcard function and helper (Philipp Rudo) [1726416] - [s390] s390/pkey: pkey cleanup: narrow in-kernel API, fix some variable types (Philipp Rudo) [1726416] - [s390] s390/zcrypt: adjust switch fall through comments for -Wimplicit-fallthrough (Philipp Rudo) [1726416] - [s390] crypto: s390/aes - fix name clash after AES library refactor (Philipp Rudo) [1726416] - [s390] s390/zcrypt: new sysfs attributes serialnr and mkvps (Philipp Rudo) [1726416] - [s390] s390/zcrypt: add base code for cca crypto card info support (Philipp Rudo) [1726416] - [s390] s390/zcrypt: move cca misc functions to new code file (Philipp Rudo) [1726416] - [s390] s390: use __u{16, 32, 64} instead of uint{16, 32, 64}_t in uapi header (Philipp Rudo) [1726416] - [s390] s390/zcrypt: remove the exporting of ap_query_configuration (Philipp Rudo) [1726416] - [s390] s390/crypto: sha: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/crypto: prng: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/crypto: ghash: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/pkey: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/zcrypt: support special flagged EP11 cprbs (Philipp Rudo) [1726416] - [s390] s390/crypto: fix possible sleep during spinlock aquired (Philipp Rudo) [1726416] - [s390] s390/crypto: use TRNG for seeding/reseeding (Philipp Rudo) [1726416] - [s390] s390/crypto: rework generate_entropy function for pseudo random dd (Philipp Rudo) [1726416] - [s390] s390: zcrypt: initialize variables before_use (Philipp Rudo) [1726416] - [powerpc] powerpc/pseries: Track LMB nid instead of using device tree (Steve Best) [1758742] - [powerpc] powerpc/pseries/memory-hotplug: Only update DT once per memory DLPAR request (Steve Best) [1758742] - [net] hv_sock: Fix hang when a connection is closed (Cathy Avery) [1739477] - [net] hv_sock: Use consistent types for UUIDs (Cathy Avery) [1739477] - [net] hvsock: fix epollout hang from race condition (Cathy Avery) [1739477] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Cathy Avery) [1739477] - [net] hv_sock: perf: loop in send() to maximize bandwidth (Cathy Avery) [1739477] - [net] hv_sock: perf: Allow the socket buffer size options to influence the actual socket buffers (Cathy Avery) [1739477] - [net] hv_sock: Add support for delayed close (Cathy Avery) [1739477] - [powerpc] powerpc/rtas: allow rescheduling while changing cpu states (Steve Best) [1758651] - [powerpc] powerpc/pseries/mobility: use cond_resched when updating device tree (Steve Best) [1758651] - [tools] selftests/powerpc: Fix compile error on tlbie_test due to newer gcc (Desnes Augusto Nunes do Rosario) [1755707] - [tools] selftests/powerpc: Add test case for tlbie vs mtpidr ordering issue (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/book3s64/mm: Don't do tlbie fixup for some hardware revisions (Desnes Augusto Nunes do Rosario) [1755707] - [scsi] scsi: zfcp: make DIX experimental, disabled, and independent of DIF (Philipp Rudo) [1723829] - [s390] s390: add support for IBM z15 machines (Philipp Rudo) [1757015] - [s390] s390/pci: add mio_enabled attribute (Philipp Rudo) [1757118] - [s390] s390: fix setting of mio addressing control (Philipp Rudo) [1757118] - [s390] s390/pci: correctly handle MIO opt-out (Philipp Rudo) [1757118] - [s390] s390/pci: deal with devices that have no support for MIO instructions (Philipp Rudo) [1757118] - [s390] s390/pci: fix assignment of bus resources (Philipp Rudo) [1757118] - [s390] s390/pci: fix struct definition for set PCI function (Philipp Rudo) [1757118] - [s390] s390/pci: fix MSI message data (Philipp Rudo) [1757123] - [powerpc] powerpc/tm: Add tm-poison test (Steve Best) [1756721] - [powerpc] powerpc/powernv: Add new opal message type (Desnes Augusto Nunes do Rosario) [1706975] - [powerpc] powerpc/powernv: Enhance opal message read interface (Desnes Augusto Nunes do Rosario) [1706975] - [char] hwrng: core - don't wait on add_early_randomness() (Laurent Vivier) [1660802] - [firmware] efi: Export Runtime Configuration Interface table to sysfs (Al Stone) [1665518] - [nvme] nvme: Treat discovery subsystems as unique subsystems (Ewan Milne) [1757525] - [powerpc] powerpc/powernv/opal: Use standard interrupts property when available (Steve Best) [1757173] - [powerpc] powerpc: dump kernel log before carrying out fadump or kdump (Steve Best) [1756922] - [kernel] genirq/affinity: Create affinity mask for single vector (Ming Lei) [1733420] - [virt] kvm: arm/arm64: Only skip MMIO insn once (Andrew Jones) [1733928] - [vfio] type1: remove duplicate retrieval of reserved regions (Auger Eric) [1704597] - [vfio] type1: Add IOVA range capability support (Auger Eric) [1704597] - [vfio] type1: check dma map request is within a valid iova range (Auger Eric) [1704597] - [vfio] type1: Update iova list on detach (Auger Eric) [1704597] - [vfio] type1: Check reserved region conflict and update iova list (Auger Eric) [1704597] - [vfio] type1: Introduce iova list and add iommu aperture validity check (Auger Eric) [1704597] - [iommu] Revisit iommu_insert_resv_region() implementation (Auger Eric) [1704597] - [iommu] vt-d: Differentiate relaxable and non relaxable RMRRs (Auger Eric) [1704597] - [iommu] Introduce IOMMU_RESV_DIRECT_RELAXABLE reserved memory regions (Auger Eric) [1704597] - [iommu] vt-d: Handle PCI bridge RMRR device scopes in intel_iommu_get_resv_regions (Auger Eric) [1704597] - [iommu] vt-d: Handle RMRR with PCI bridge device scopes (Auger Eric) [1704597] - [iommu] vt-d: Introduce is_downstream_to_pci_bridge helper (Auger Eric) [1704597] - [iommu] vt-d: Duplicate iommu_resv_region objects per device list (Auger Eric) [1704597] - [iommu] Fix a leak in iommu_insert_resv_region (Auger Eric) [1704597] - [pci] hv: Avoid use of hv_pci_dev->pci_slot after freeing it (Mohammed Gamal) [1737569]- [x86] kvm: x86: omit "impossible" pmu MSRs from MSR list (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Fix consistency check on injected exception error code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: omit absent pmu MSRs from MSR list (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: Fix libkvm build error (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Limit guest PMCs to those supported on the host (Vitaly Kuznetsov) [1749495] - [virt] kvm: x86, powerpc: do not allow clearing largepages debugfs entry (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: x86: clarify what is reported on KVM_GET_MSRS failure (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Set VMENTER_L1D_FLUSH_NOT_REQUIRED if !X86_BUG_L1TF (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: add test for dirty logging inside nested guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix nested guest live migration with PML (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: assign two bits to track SPTE kinds (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Expose XSAVEERPTR to the guest (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Enumerate support for CLZERO instruction (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use AMD CPUID semantics for AMD vCPUs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Improve emulation of CPUID leaves 0BH and 1FH (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix userspace set invalid CR4 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix a spurious -E2BIG in __do_cpuid_func (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Loosen filter for adaptive tuning of lapic_timer_advance_ns (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: cleanup and fix host 64-bit mode checks (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix build warnings in hv_enable_direct_tlbflush() on i386 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't check kvm_rebooting in __kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Drop ____kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Add error handling to VMREAD helper (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Optimize VMX instruction error and fault handling (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Check kvm_rebooting in kvm_spurious_fault() (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: limit atomic switch MSRs (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Intercept RDPRU (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add "significant index" flag to a few CPUID leaves (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Skip invalid pages during zapping iff root_count is zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Explicitly track only a single invalid mmu generation (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "kvm: x86/mmu: Remove is_obsolete() call" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: reclaim the zapped-obsolete page first"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: collapse TLB flushes when zap all pages"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: zap pages in batch"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: add tracepoint for kvm_mmu_invalidate_all_pages"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: show mmu_valid_gen in shadow page related tracepoints"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Use fast invalidate mechanism to zap MMIO sptes (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Treat invalid shadow pages as obsolete (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Tune lapic_timer_advance_ns smoothly (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add comments to document various emulation types (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Handle single-step #DB for EMULTYPE_SKIP on EPT misconfig (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Remove emulation_result enums, EMULATE_{DONE, FAIL, USER_EXIT} (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Remove EMULATE_FAIL handling in handle_invalid_guest_state() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move triple fault request into RM int injection (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Handle emulation failure directly in kvm_task_switch() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Exit to userspace on emulation skip failure (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move #UD injection for failed emulation into emulation code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add explicit flag for forced emulation on #UD (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move #GP injection for VMware into x86_emulate_instruction() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't attempt VMWare emulation on #GP with non-zero error code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Refactor kvm_vcpu_do_singlestep() to remove out param (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Clean up handle_emulation_failure() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Relocate MMIO exit stats counting (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check Host Address Space Size on vmentry of nested guests (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: hyperv_cpuid: add check for NoNonArchitecturalCoreSharing bit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: hyper-v: set NoNonArchitecturalCoreSharing CPUID bit when SMT is impossible (Vitaly Kuznetsov) [1749495] - [kernel] cpu/smt: create and export cpu_smt_possible() (Vitaly Kuznetsov) [1749495] - [x86] kvm: hyperv: Fix Direct Synthetic timers assert an interrupt w/o lapic_in_kernel (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Manually flush collapsible SPTEs only when toggling flags (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove duplicate guest mode handling (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Introduce VM_MODE_PXXV48_4K (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Create VM earlier for dirty log test (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Move vm type into _vm_create() internally (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: announce KVM_CAP_HYPERV_ENLIGHTENED_VMCS support only when it is available (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: svm: remove unneeded nested_enable_evmcs() hook (Vitaly Kuznetsov) [1749495] - [x86] kvm/hyper-v/vmx: Add direct tlb flush support (Vitaly Kuznetsov) [1749495] - [documentation] kvm/hyper-v: Add new KVM capability KVM_CAP_HYPERV_DIRECT_TLBFLUSH (Vitaly Kuznetsov) [1749495] - [x86] hyper-v: Fix definition of struct hv_vp_assist_page (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add Intel PMU MSRs to msrs_to_save[] (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use IPI shorthands in kvm guest when support (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix INIT signal handling in various CPU states (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Introduce exit reason for receiving INIT signal on guest-mode (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Stop the preemption timer during vCPU reset (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Micro optimize IPI latency (Vitaly Kuznetsov) [1749495] - [x86] kvm: Nested KVM MMUs need PAE root too (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: set ctxt->have_exception in x86_decode_insn() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: always stop emulation on page fault (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: trace nested VM-Enter failures detected by H/W (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: add tracepoint for failed nested VM-Enter (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Fix a check in nested_svm_vmrun() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Return to userspace with internal error on unexpected exit reason (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add kvm_emulate_{rd, wr}msr() to consolidate VXM/SVM code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Refactor up kvm_{g, s}et_msr() to simplify callers (Vitaly Kuznetsov) [1749495] - [documentation] doc: kvm: Fix return description of KVM_SET_MSRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Tune PLE Window tracepoint (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Change ple_window type to unsigned int (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Remove tailing newline for tracepoints (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Trace vcpu_id for vmexit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Manually calculate reserved bits when loading PDPTRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Disable posted interrupts for non-standard IRQs delivery modes (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix and tweak the comments for VM-Enter (Vitaly Kuznetsov) [1749495] - [x86] kvm: Assert that struct kvm_vcpu is always as offset zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add pv tlb shootdown tracepoint (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Unconditionally call x86 ops that are always implemented (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Consolidate "is MMIO SPTE" code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Add explicit access mask for MMIO SPTEs (Vitaly Kuznetsov) [1749495] - [documentation] kvm: x86: Rename access permissions cache member in struct kvm_vcpu_arch (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: eliminate hardcoded RIP advancement from vmrun_interception() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: eliminate weird goto from vmrun_interception() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: remove hardcoded instruction length from intercepts (Vitaly Kuznetsov) [1749495] - [x86] kvm: add xsetbv to the emulator (Vitaly Kuznetsov) [1749495] - [x86] kvm: clear interrupt shadow on EMULTYPE_SKIP (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: propagate errors from skip_emulated_instruction() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: don't pretend to advance RIP in case wrmsr_interception() results in #GP (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix x86_decode_insn() return when fetching insn bytes fails (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use Intel speculation bugs and features as derived in generic x86 code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: always expose VIRT_SSBD to guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix reporting of AMD speculation bug CPUID leaf (Vitaly Kuznetsov) [1749495] - [virt] kvm: Call kvm_arch_vcpu_blocking early into the blocking sequence (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Reintroduce fast invalidate/zap for flushing memslot (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: work around leak of uninitialized stack contents (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: handle page fault in vmread (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't update RIP or do single-step on faulting emulation (Vitaly Kuznetsov) [1749495] - [tools] selftests/kvm: make platform_info_test pass on AMD (Vitaly Kuznetsov) [1749495] - [x86] revert "kvm: x86/mmu: Zap only the relevant pages when removing a memslot" (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: fix state save/load on processors without XSAVE (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: fix vmx_set_nested_state_test (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: provide common function to enable eVMCS (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: do not try running the VM in vmx_set_nested_state_test (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: svm: remove redundant assignment of var new_entry (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: Adding config fragments (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Update gitignore file for latest changes (Vitaly Kuznetsov) [1749495] - [virt] kvm: remove unnecessary PageReserved check (Vitaly Kuznetsov) [1749495] - [x86] kvm: remove useless calls to kvm_para_available (Vitaly Kuznetsov) [1749495] - [x86] kvm: no need to check return value of debugfs_create functions (Vitaly Kuznetsov) [1749495] - [s390] kvm: remove kvm_arch_has_vcpu_debugfs() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix leak vCPU's VMCS value into other pCPU (Vitaly Kuznetsov) [1749495] - [virt] kvm: Check preempted_in_kernel for involuntary preemption (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Don't need to wakeup vCPU twice afer timer fire (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Boost queue head vCPU to mitigate lock waiter preemption (Vitaly Kuznetsov) [1749495] - [documentation] documentation: move Documentation/virtual to Documentation/virt (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add fixed counters to PMU filter (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: dump VMCS on failed entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/vpmu: refine kvm_pmu err msg when event creation failed (Vitaly Kuznetsov) [1749495] - [virt] kvm: Boost vCPUs that are delivering interrupts (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove superfluous define from vmx.c (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Fix detection of AMD Errata 1096 (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Inject timer interrupt via posted interrupt (Vitaly Kuznetsov) [1749495] - [x86] kvm: Don't call kvm_spurious_fault() from .fixup (Vitaly Kuznetsov) [1749495] - [x86] kvm: Replace vmx_vmenter()'s call to kvm_spurious_fault() with UD2 (Vitaly Kuznetsov) [1749495] - [x86] kvm: Fix fastop function ELF metadata (Vitaly Kuznetsov) [1749495] - [x86] paravirt: Fix callee-saved function ELF sizes (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Make lapic timer unpinned (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/vpmu: reset pmc->counter to 0 for pmu fixed_counters (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Ignore segment base for VMX memory operand when segment not FS or GS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: ioapic and apic debug macros cleanup (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: some tsc debug cleanup (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix coccinelle warnings (Vitaly Kuznetsov) [1749495] - [x86] kvm: avoid constant-conversion warning (Vitaly Kuznetsov) [1749495] - [x86] kvm: avoid -Wsometimes-uninitized warning (Vitaly Kuznetsov) [1749495] - [documentation] documentation: virtual: Add toctree hooks (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: Convert cpuid.txt to .rst (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Unconditionally enable irqs in guest context (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: PMU Event Filter (Vitaly Kuznetsov) [1749495] - [kernel] kvm: x86: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1749495] - [virt] kvm: Properly check if "page" is valid in kvm_vcpu_unmap (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Retry tune per-vCPU timer_advance_ns if adaptive tuning goes insane (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: write down valid APIC registers (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: ARBPRI is a reserved register for x2APIC (Vitaly Kuznetsov) [1749495] - [x86] kvm nvmx: Check Host Segment Registers and Descriptor Tables on vmentry of nested guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Stash L1's CR3 in vmcs01.GUEST_CR3 on nested entry w/o EPT (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: add tracepoints around __direct_map and FNAME(fetch) (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: change kvm_mmu_page_get_gfn BUG_ON to WARN_ON (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: remove now unneeded hugepage gfn adjustment (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: make FNAME(fetch) and __direct_map more similar (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Do not release the page inside mmu_set_spte() (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: remove has_leaf_count from struct kvm_cpuid_param (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: rename do_cpuid_1_ent (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: set struct kvm_cpuid_entry2 flags in do_cpuid_1_ent (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: extract do_cpuid_7_mask and support multiple subleafs (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: do_cpuid_ent works on a whole CPUID function (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: remove the trailing newline used in the fmt parameter of TP_printk (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: add nrips module parameter (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: degrade WARN to pr_warn_ratelimited (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Pass through AMD_STIBP_ALWAYS_ON in GET_SUPPORTED_CPUID (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Remove unnecessary sync_roots from handle_invept (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: document CPUID bit for MSR_KVM_POLL_CONTROL (Vitaly Kuznetsov) [1749495] - [documentation] kvm: x86: Expose PV_SCHED_YIELD CPUID feature bit to guest (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Implement PV sched yield hypercall (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Yield to IPI target if necessary (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: list VMX MSRs in KVM_GET_MSR_INDEX_LIST (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: allow setting the VMFUNC controls MSR (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: include conditional controls in /dev/kvm KVM_GET_MSRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix apic dangling pointer in vcpu (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: check CPUID before allowing read/write of IA32_XSS (Vitaly Kuznetsov) [1749495] - [tools] tests: kvm: Check for a kernel warning (Vitaly Kuznetsov) [1749495] - [tools] kvm: tests: Sort tests in the Makefile alphabetically (Vitaly Kuznetsov) [1749495] - [documentation] kvm: fix typo in documentation (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: shadow pin based execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Leave preemption timer running when it's disabled (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Drop hv_timer_armed from 'struct loaded_vmcs' (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Preset *DT exiting in vmcs02 when emulating UMIP (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Preserve last USE_MSR_BITMAPS when preparing vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Explicitly initialize controls shadow at VMCS allocation (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't reset VMCS controls shadow on VMCS switch (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Shadow VMCS controls on a per-VMCS basis (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS secondary execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS primary execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS pin controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Add builder macros for shadowing controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Use adjusted pin controls for vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Copy PDPTRs to/from vmcs12 only when necessary (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't update GUEST_BNDCFGS if it's clean in HV eVMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for MSR_IA32_DEBUGCTLMSR when it's written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for SYSENTER MSRs when they're written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for MSR_IA32_CR_PAT when it's written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't speculatively write APIC-access page address (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't speculatively write virtual-APIC page address (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't dump VMCS if virtual APIC page can't be mapped (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't reread VMCS-agnostic state when switching VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't "put" vCPU or host state when switching VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: simplify vmx_prepare_switch_to_{guest, host} (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't rewrite GUEST_PML_INDEX during nested VM-Entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Write ENCLS-exiting bitmap once per vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Always sync GUEST_BNDCFGS when it comes from vmcs01 (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Always signal #GP on WRMSR to MSR_IA32_CR_PAT with bad value (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Rename prepare_vmcs02_*_full to prepare_vmcs02_*_rare (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Sync rarely accessed guest fields only when needed (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Add helpers to identify shadowed VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Use descriptive names for VMCS sync functions and flags (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Lift sync_vmcs12() out of prepare_vmcs12() (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Track vmcs12 offsets for shadowed VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Intercept VMWRITEs to GUEST_{CS, SS}_AR_BYTES (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Intercept VMWRITEs to read-only shadow VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Handle NMIs, #MCs and async #PFs in common irqs-disabled fn (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move kvm_{before, after}_interrupt() calls to vendor code (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Store the host kernel's IDT base in a global variable (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Read cached VM-Exit reason to detect external interrupt (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: small cleanup in handle_exception (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix handling of #MC that occurs during VM-Entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: move MSR_IA32_POWER_CTL handling to common code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: offset is ensure to be in range (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use same convention to name kvm_lapic_{set, clear}_vector() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: check kvm_apic_sw_enabled() is enough (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: add host poll control msrs (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: segment limit check: use access length (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix limit checking in get_vmx_mem_address() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add Intel CPUID.1F cpuid emulation support (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use DR_TRAP_BITS instead of hard-coded 15 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: clean up conditions for asynchronous page fault handling (Vitaly Kuznetsov) [1749495] - [documentation] docs: amd-memory-encryption.rst get rid of warnings (Vitaly Kuznetsov) [1749495] - [virt] kvm: Convert kvm_lock to a mutex (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: remove unneeded 'asm volatile ("")' from vmcs_write64 (Vitaly Kuznetsov) [1749495] - [virt] kvm: irqchip: Use struct_size() in kzalloc() (Vitaly Kuznetsov) [1749495] - [x86] kvm/vmx: drop bad asm() clobber from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: hide vcpu_setup in processor code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Emulate MSR_IA32_MISC_ENABLE MWAIT bit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Provide a capability to disable cstate msr read intercepts (Vitaly Kuznetsov) [1749495] - [documentation] kvm: documentation: Add disable pause exits to KVM_CAP_X86_DISABLE_EXITS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: refine kvm_get_arch_capabilities() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Directly return result from kvm_arch_check_processor_compat() (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Optimize timer latency further (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Delay trace_kvm_wait_lapic_expire tracepoint to after vmexit (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Extract adaptive tune timer advancement logic (Vitaly Kuznetsov) [1749495] - [x86] kvm/nsvm: properly map nested VMCB (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix reserved bits related calculation errors caused by MKTME (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move kvm_set_mmio_spte_mask() from x86.c to mmu.c (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compile on s390 part 2 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix return value for reserved EFER (Vitaly Kuznetsov) [1749495] - [tools] kvm_stat: fix fields filter for child events (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: aarch64: compile with warnings on (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/pmu: do not mask the value that is written to fixed PMUs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/pmu: mask the result of rdpmc according to the width of the counters (Vitaly Kuznetsov) [1749495] - [x86] kvm/pmu: Set AMD's virt PMU version to 1 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: do not spam dmesg with VMCS/VMCB dumps (Vitaly Kuznetsov) [1749495] - [virt] kvm: Check irqchip mode before assign irqfd (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove duplicated TEST_ASSERT in hyperv_cpuid.c (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Expose per-vCPU timer_advance_ns to userspace (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Fix lapic_timer_advance_ns parameter overflow (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Fix using __this_cpu_read() in preemptible context (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compilation on s390 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Include CPUID leaf 0x8000001e in kvm's supported CPUID (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Include multiple indices with CPUID leaf 0x8000001d (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Fix a condition in test_hv_cpuid() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix spinlock taken warning during host resume (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compilation on aarch64 (Vitaly Kuznetsov) [1749495] - [x86] revert "kvm: nvmx: Expose RDPMC-exiting only when guest supports PMU" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix L1TF mitigation for shadow MMU (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Disable intercept for FS/GS base MSRs in vmcs02 when possible (Vitaly Kuznetsov) [1749495] - [tools] tests: kvm: Add tests to .gitignore (Vitaly Kuznetsov) [1749495] - [documentation] kvm: Introduce KVM_CAP_MANUAL_DIRTY_LOG_PROTECT2 (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix kvm_clear_dirty_log_protect off-by-(minus-)one (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix the bitmap range to copy during clear dirty (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use direct accessors for RIP and RSP (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Use accessors for GPRs outside of dedicated caching logic (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Omit caching logic for always-available GPRs (Vitaly Kuznetsov) [1749495] - [x86] kvm, x86: Properly check whether a pfn is an MMIO or not (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use page_address_valid in a few more locations (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map for accessing the enlightened VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map for accessing the shadow VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm/nsvm: Use the new mapping API for mapping guest memory (Vitaly Kuznetsov) [1749495] - [x86] kvm/x86: Use kvm_vcpu_map in emulator_cmpxchg_emulated (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the posted interrupt descriptor table (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the virtual APIC page (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the L1 MSR bitmap (Vitaly Kuznetsov) [1749495] - [x86] nvmx: handle_vmptrld: Use kvm_vcpu_map when copying VMCS12 from guest memory (Vitaly Kuznetsov) [1749495] - [virt] kvm: Introduce a new guest mapping API (Vitaly Kuznetsov) [1749495] - [x86] kvm: Handle PFNs outside of kernel reach when touching GPTEs (Vitaly Kuznetsov) [1749495] - [x86] nvmx: Update the PML table without mapping and unmapping the page (Vitaly Kuznetsov) [1749495] - [x86] nvmx: handle_vmon: Read 4 bytes from guest memory (Vitaly Kuznetsov) [1749495] - [x86] kvm: Implement HWCR support (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Include architectural defs header in capabilities.h (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: clean up some debug output (Vitaly Kuznetsov) [1749495] - [virt] kvm_main: fix some comments (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Skip delta_tsc shift-and-divide if the dividend is zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Check for a pending timer intr prior to start_hv_timer() (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Refactor ->set_hv_timer to use an explicit expired param (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Explicitly cancel the hv timer if it's pre-expired (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Busy wait for timer to expire when using hv_timer (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Nop emulation of MSR_IA32_POWER_CTL (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add support of clear Trace_ToPA_PMI status (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Inject PMI for KVM guest (Vitaly Kuznetsov) [1749495] - [documentation] revert "kvm: doc: Document the life cycle of a VM and its resources" (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: fix dirty log ioctl arch lists (Vitaly Kuznetsov) [1749495] - [x86] kvm: Make steal_time visible (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Inject #GP if guest attempts to set unsupported EFER bits (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Skip EFER vs. guest CPUID checks for host-initiated writes (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Return -EINVAL when signaling failure in VM-Entry helpers (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Return -EINVAL when signaling failure in pre-VM-Entry helpers (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Rename and split top-level consistency checks to match SDM (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Move guest non-reg state checks to VM-Exit path (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check "load IA32_PAT" VM-entry control on vmentry (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check "load IA32_PAT" VM-exit control on vmentry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: optimize check for valid PAT value (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: clear VM_EXIT_SAVE_IA32_PAT (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: print more APICv fields in dump_vmcs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Raise #GP when guest vCPU do not support PMU (Vitaly Kuznetsov) [1749495] - [documentation] kvm: doc: Document the life cycle of a VM and its resources (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: skip populating logical dest map if apic is not sw enabled (Bandan Das) [1728503] - [powerpc] kvm: ppc: book3s: Fix incorrect guest-to-user-translation error handling (David Gibson) [1749504] - [powerpc] kvm: Fall through switch case explicitly (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Fix CR0 setting in TM emulation (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Invalidate ERAT when flushing guest TLB entries (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Only write DAWR[X] when handling h_set_dawr in real mode (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: xive: Fix spelling mistake "acessing" -> "accessing" (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Make sure to load LPID for radix VCPUs (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Flush TLB on secondary radix threads (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Move HPT guest TLB flushing to C code (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Handle virtual mode in XIVE VCPU push code (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: smb->smp comment fixup (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s: Allocate guest TCEs on demand too (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Avoid lockdep debugging in TCE realmode handlers (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Fix lockdep warning when entering the guest (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Implement real mode H_PAGE_INIT handler (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Implement virtual mode H_PAGE_INIT handler (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s: Protect memslots while validating user address (David Gibson) [1749504] - [pci] PCI: hv: Use bytes 4 and 5 from instance ID as the PCI domain numbers (Mohammed Gamal) [1671288] - [pci] PCI: hv: Detect and fix Hyper-V PCI domain number collision (Mohammed Gamal) [1671288] - [fs] Revert "lockd: Show pid of lockd for remote locks" (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix an Oops in nfs4_do_setattr (Benjamin Coddington) [1732409] - [fs] NFSv4: Check the return value of update_open_stateid() (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix delegation state recovery (Benjamin Coddington) [1732409] - [fs] pnfs/flexfiles: Fix PTR_ERR() dereferences in ff_layout_track_ds_error (Benjamin Coddington) [1732409] - [fs] Revert "NFS: readdirplus optimization by cache mechanism" (memleak) (Benjamin Coddington) [1732409] - [fs] svcrdma: Ignore source port when computing DRC hash (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Use the correct TCP timeout for flexfiles I/O (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix bug only first CB_NOTIFY_LOCK is handled (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Again fix a race where CB_NOTIFY_LOCK fails to wake a waiter (Benjamin Coddington) [1732409] - [fs] SUNRPC fix regression in umount of a secure mount (Benjamin Coddington) [1732409] - [fs] NFS4: Fix v4.0 client state corruption when mount (Benjamin Coddington) [1732409] - [fs] NFSv4: When recovering state fails with EAGAIN, retry the same recovery (Benjamin Coddington) [1732409] - [fs] pnfs: Fix a problem where we gratuitously start doing I/O through the MDS (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure the bvecs are reset when we re-encode the RPC request (Benjamin Coddington) [1732409] - [fs] sunrpc/cache: remove the exporting of cache_seq_next (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a use after free when a server rejects the RPCSEC_GSS credential (Benjamin Coddington) [1732409] - [fs] xprtrdma: Fix an frwr_map recovery nit (Benjamin Coddington) [1732409] - [fs] NFSv4.1 fix incorrect return value in copy_file_range (Benjamin Coddington) [1732409] - [fs] NFS: Fix handling of reply page vector (Benjamin Coddington) [1732409] - [fs] NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. (Benjamin Coddington) [1732409] - [fs] nfsd: Don't release the callback slot unless it was actually held (Benjamin Coddington) [1732409] - [fs] nfsd/nfsd3_proc_readdir: fix buffer count and page pointers (Benjamin Coddington) [1732409] - [fs] sunrpc: don't mark uninitialised items as VALID. (Benjamin Coddington) [1732409] - [fs] SUNRPC: fix uninitialized variable warning (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: Fix layoutstats handling during read failovers (Benjamin Coddington) [1732409] - [fs] NFS: Fix a typo in nfs_init_timeout_values() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't let RPC_SOFTCONN tasks time out if the transport is connected (Benjamin Coddington) [1732409] - [fs] NFS: fix mount/umount race in nlmclnt. (Benjamin Coddington) [1732409] - [fs] NFS: Fix nfs4_lock_state refcounting in nfs4_alloc_{lock, unlock}data() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove redundant check for the reply length in call_decode() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Handle the SYSTEM_ERR rpc error (Benjamin Coddington) [1732409] - [fs] SUNRPC: rpc_decode_header() must always return a non-zero value on error (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use the ENOTCONN error on socket disconnect (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix the minimal size for reply buffer allocation (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a client regression when handling oversized replies (Benjamin Coddington) [1732409] - [fs] pNFS: Fix a typo in pnfs_update_layout (Benjamin Coddington) [1732409] - [fs] SUNRPC: Take the transport send lock before binding+connecting (Benjamin Coddington) [1732409] - [fs] SUNRPC: Micro-optimise when the task is known not to be sleeping (Benjamin Coddington) [1732409] - [fs] SUNRPC: Check whether the task was transmitted before rebind/reconnect (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove redundant calls to RPC_IS_QUEUED() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up (Benjamin Coddington) [1732409] - [fs] nfsd: allow nfsv3 readdir request to be larger. (Benjamin Coddington) [1732409] - [fs] SUNRPC: Respect RPC call timeouts when retrying transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up RPC back channel transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Prevent thundering herd when the socket is not connected (Benjamin Coddington) [1732409] - [fs] nfsd: fix wrong check in write_v4_end_grace() (Benjamin Coddington) [1732409] - [fs] nfsd: fix memory corruption caused by readdir (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow dynamic allocation of back channel slots (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Bump the default callback session slot count to 16 (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert remaining GFP_NOIO, and GFP_NOWAIT sites in sunrpc (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Clean up mirror DS initialisation (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Remove dead code in ff_layout_mirror_valid() (Benjamin Coddington) [1732409] - [fs] NFS/flexfile: Simplify nfs4_ff_layout_select_ds_stateid() (Benjamin Coddington) [1732409] - [fs] NFS/flexfile: Simplify nfs4_ff_layout_ds_version() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify ff_layout_get_ds_cred() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify nfs4_ff_find_or_create_ds_client() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify nfs4_ff_layout_select_ds_fh() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Speed up read failover when DSes are down (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Don't invalidate DS deviceids for being unresponsive (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Remove bogus checks for invalid deviceids (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Avoid unnecessary layout invalidations (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: refactor calls to fs4_ff_layout_prepare_ds() (Benjamin Coddington) [1732409] - [fs] NFSv4: Handle early exit in layoutget by returning an error (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Send LAYOUTERROR when failing over mirrored reads (Benjamin Coddington) [1732409] - [fs] NFSv4.2: Add client support for the generic 'layouterror' RPC call (Benjamin Coddington) [1732409] - [fs] NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated (Benjamin Coddington) [1732409] - [fs] NFSv4/pnfs: Fix barriers in nfs4_mark_deviceid_unavailable() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Fix up sparse RCU annotations (Benjamin Coddington) [1732409] - [fs] NFSv4/flexfiles: Fix invalid deref in FF_LAYOUT_DEVID_NODE() (Benjamin Coddington) [1732409] - [fs] NFS: Add missing encode / decode sequence_maxsz to v4.2 operations (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Don't process the sequence op more than once. (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Reinitialise sequence results before retransmitting a request (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix an Oops in udp_poll() (Benjamin Coddington) [1732409] - [fs] NFS/pnfs: Bulk destroy of layouts needs to be safe w.r.t. umount (Benjamin Coddington) [1732409] - [fs] NFS: Fix a soft lockup in the delegation recovery code (Benjamin Coddington) [1732409] - [fs] nfsd: fix performance-limiting session calculation (Benjamin Coddington) [1732409] - [fs] svcrpc: fix UDP on servers with lots of threads (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove the redundant 'zerocopy' argument to xs_sendpages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Further cleanups of xs_sendpages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert socket page send code to use iov_iter() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert xs_send_kvec() to use iov_iter_kvec() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Initiate a connection close on an ESHUTDOWN error in stream receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't suppress socket errors when a message read completes (Benjamin Coddington) [1732409] - [fs] SUNRPC: Handle zero length fragments correctly (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't reset the stream record info when the receive worker is running (Benjamin Coddington) [1732409] - [fs] nfs: fix xfstest generic/099 failed on nfsv3 (Benjamin Coddington) [1732409] - [fs] NFS: Fix typo in comments of nfs_readdir_alloc_pages() (Benjamin Coddington) [1732409] - [fs] NFS: Remove redundant semicolon (Benjamin Coddington) [1732409] - [fs] NFS: readdirplus optimization by cache mechanism (Benjamin Coddington) [1732409] - [fs] fs/nfs: Fix nfs_parse_devname to not modify it's argument (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove pointless test in unx_match() (Benjamin Coddington) [1732409] - [fs] NFS: drop useless LIST_HEAD (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure rq_bytes_sent is reset before request transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use poll() to fix up the socket requeue races (Benjamin Coddington) [1732409] - [fs] SUNRPC: Set memalloc_nofs_save() on all rpciod/xprtiod jobs (Benjamin Coddington) [1732409] - [fs] NFS: Fix sparse annotations for nfs_set_open_stateid_locked() (Benjamin Coddington) [1732409] - [fs] NFS: Fix up documentation warnings (Benjamin Coddington) [1732409] - [fs] NFS: ENOMEM should also be a fatal error. (Benjamin Coddington) [1732409] - [fs] NFS: EINTR is also a fatal error. (Benjamin Coddington) [1732409] - [fs] NFS: Ensure NFS writeback allocations don't recurse back into NFS. (Benjamin Coddington) [1732409] - [fs] NFS: Pass error information to the pgio error cleanup routine (Benjamin Coddington) [1732409] - [fs] NFS: Clean up list moves of struct nfs_page (Benjamin Coddington) [1732409] - [fs] NFS: Don't recoalesce on error in nfs_pageio_complete_mirror() (Benjamin Coddington) [1732409] - [fs] NFS: Fix an I/O request leakage in nfs_do_recoalesce (Benjamin Coddington) [1732409] - [fs] NFS: Fix I/O request leakages (Benjamin Coddington) [1732409] - [fs] Revert "nfsd4: return default lease period" (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use au_rslack when computing reply buffer size (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add rpc_auth::au_ralign field (Benjamin Coddington) [1732409] - [fs] SUNRPC: Make AUTH_SYS and AUTH_NULL set au_verfsize (Benjamin Coddington) [1732409] - [fs] NFS: Account for XDR pad of buf->pages (Benjamin Coddington) [1732409] - [fs] SUNRPC: Introduce rpc_prepare_reply_pages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove xdr_buf_trim() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Introduce trace points in rpc_auth_gss.ko (Benjamin Coddington) [1732409] - [fs] xprtrdma: Squelch a sparse warning (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use struct xdr_stream when decoding RPC Reply header (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up rpc_verify_header() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use struct xdr_stream when constructing RPC Call header (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add build option to disable support for insecure enctypes (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove rpc_xprt::tsh_size (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove some dprintk() call sites from auth functions (Benjamin Coddington) [1732409] - [fs] NFS: Add trace events to report non-zero NFS status codes (Benjamin Coddington) [1732409] - [fs] NFS: Remove print_overflow_msg() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add trace event that reports reply page vector alignment (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add XDR overflow trace event (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add xdr_stream::rqst field (Benjamin Coddington) [1732409] - [fs] SUNRPC: Display symbolic flag names in RPC trace events (Benjamin Coddington) [1732409] - [fs] rpc: properly check debugfs dentry before using it (Benjamin Coddington) [1732409] - [fs] svcrpc: fix unlikely races preventing queueing of sockets (Benjamin Coddington) [1732409] - [fs] svcrpc: svc_xprt_has_something_to_do seems a little long (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't allow compiler optimisation of svc_xprt_release_slot() (Benjamin Coddington) [1732409] - [fs] nfsd: fix an IS_ERR() vs NULL check (Benjamin Coddington) [1732409] - [fs] nfsd: Fix error return values for nfsd4_clone_file_range() (Benjamin Coddington) [1732409] - [fs] nfs: Fix NULL pointer dereference of dev_name (Benjamin Coddington) [1732409] - [fs] SUNRPC: Address Kerberos performance/behavior regression (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure we respect the RPCSEC_GSS sequence number limit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure rq_bytes_sent is reset before request transmission (Benjamin Coddington) [1732409] - [fs] NFSv4.2 fix unnecessary retry in nfs4_copy_file_range (Benjamin Coddington) [1732409] - [fs] sunrpc: kernel BUG at kernel/cred.c:825! (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix TCP receive code on archs with flush_dcache_page() (Benjamin Coddington) [1732409] - [fs] sunrpc: convert to DEFINE_SHOW_ATTRIBUTE (Benjamin Coddington) [1732409] - [fs] sunrpc: Add xprt after nfs4_test_session_trunk() (Benjamin Coddington) [1732409] - [fs] sunrpc: convert unnecessary GFP_ATOMIC to GFP_NOFS (Benjamin Coddington) [1732409] - [fs] sunrpc: handle ENOMEM in rpcb_getport_async (Benjamin Coddington) [1732409] - [fs] NFS: remove unnecessary test for IS_ERR(cred) (Benjamin Coddington) [1732409] - [fs] NFSv4.2 fix async copy reboot recovery (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix some kernel doc complaints (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify defining common RPC trace events (Benjamin Coddington) [1732409] - [fs] NFS: Fix NFSv4 symbolic trace point output (Benjamin Coddington) [1732409] - [fs] nfs: fixed broken compilation in nfs_callback_up_net() (Benjamin Coddington) [1732409] - [fs] nfs: minor typo in nfs4_callback_up_net() (Benjamin Coddington) [1732409] - [fs] sunrpc: fix debug message in svc_create_xprt() (Benjamin Coddington) [1732409] - [fs] sunrpc: remove svc_rdma_bc_class (Benjamin Coddington) [1732409] - [fs] sunrpc: remove unused bc_up operation from rpc_xprt_ops (Benjamin Coddington) [1732409] - [fs] sunrpc: use SVC_NET() in svcauth_gss_* functions (Benjamin Coddington) [1732409] - [fs] nfsd: drop useless LIST_HEAD (Benjamin Coddington) [1732409] - [fs] SUNRPC discard cr_uid from struct rpc_cred. (Benjamin Coddington) [1732409] - [fs] SUNRPC: simplify auth_unix. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove crbind rpc_cred operation (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove generic cred code. (Benjamin Coddington) [1732409] - [fs] NFS/NFSD/SUNRPC: replace generic creds with 'struct cred'. (Benjamin Coddington) [1732409] - [fs] NFS: struct nfs_open_dir_context: convert rpc_cred pointer to cred. (Benjamin Coddington) [1732409] - [fs] NFS: change access cache to use 'struct cred'. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove RPCAUTH_AUTH_NO_CRKEY_TIMEOUT (Benjamin Coddington) [1732409] - [fs] NFS: move credential expiry tracking out of SUNRPC into NFS. (Benjamin Coddington) [1732409] - [fs] SUNRPC: add side channel to use non-generic cred for rpc call. (Benjamin Coddington) [1732409] - [fs] SUNRPC: introduce RPC_TASK_NULLCREDS to request auth_none (Benjamin Coddington) [1732409] - [fs] NFS/SUNRPC: don't lookup machine credential until rpcauth_bindcred(). (Benjamin Coddington) [1732409] - [fs] SUNRPC: discard RPC_DO_ROOTOVERRIDE() (Benjamin Coddington) [1732409] - [fs] NFSv4: don't require lock for get_renew_cred or get_machine_cred (Benjamin Coddington) [1732409] - [fs] NFSv4: add cl_root_cred for use when machine cred is not available. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove machine_cred field from struct auth_cred (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove uid and gid from struct auth_cred (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove groupinfo from struct auth_cred. (Benjamin Coddington) [1732409] - [fs] SUNRPC: add 'struct cred *' to auth_cred and rpc_cred (Benjamin Coddington) [1732409] - [fs] cred: allow get_cred() and put_cred() to be given NULL. (Benjamin Coddington) [1732409] - [fs] cred: export get_task_cred(). (Benjamin Coddington) [1732409] - [fs] cred: add get_cred_rcu() (Benjamin Coddington) [1732409] - [fs] cred: add cred_fscmp() for comparing creds. (Benjamin Coddington) [1732409] - [fs] SUNRPC: allow /proc entries without CONFIG_SUNRPC_DEBUG (Benjamin Coddington) [1732409] - [fs] nfs: fix comment to nfs_generic_pg_test which does the opposite (Benjamin Coddington) [1732409] - [fs] NFSv4: cleanup remove unused nfs4_xdev_fs_type (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove xprt_connect_status() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a race with XPRT_CONNECTING (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix disconnection races (Benjamin Coddington) [1732409] - [fs] Revert "[net] Revert "sunrpc: Ensure we always close the socket after a connection shuts down"" (Benjamin Coddington) [1732409] - [fs] lockd: Show pid of lockd for remote locks (Benjamin Coddington) [1732409] - [fs] NFSD remove OP_CACHEME from 4.2 op_flags (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't force a redundant disconnection in xs_read_stream() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up socket polling (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use the discard iterator rather than MSG_TRUNC (Benjamin Coddington) [1732409] - [fs] SUNRPC: Treat EFAULT as a truncated message in xs_read_stream_request() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up handling of the XDRBUF_SPARSE_PAGES flag (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix RPC receive hangs (Benjamin Coddington) [1732409] - [fs] nfsd: Return EPERM, not EACCES, in some SETATTR cases (Benjamin Coddington) [1732409] - [fs] sunrpc: fix cache_head leak due to queued request (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a potential race in xprt_connect() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a memory leak in call_encode() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix leak of krb5p encode pages (Benjamin Coddington) [1732409] - [fs] SUNRPC: call_connect_status() must handle tasks that got transmitted (Benjamin Coddington) [1732409] - [fs] nfs: don't dirty kernel pages read by direct-io (Benjamin Coddington) [1732409] - [fs] NFS: use locks_copy_lock() to copy locks. (Benjamin Coddington) [1732409] - [fs] nfsd: clean up indentation, increase indentation in switch statement (Benjamin Coddington) [1732409] - [fs] nfsd: fix a warning in __cld_pipe_upcall() (Benjamin Coddington) [1732409] - [fs] lockd: fix decoding of TEST results (Benjamin Coddington) [1732409] - [fs] nfsd4: fix crash on writing v4_end_grace before nfsd startup (Benjamin Coddington) [1732409] - [fs] nfsd4: skip unused assignment (Benjamin Coddington) [1732409] - [fs] nfsd4: forbid all renames during grace period (Benjamin Coddington) [1732409] - [fs] nfsd4: remove unused nfs4_check_olstateid parameter (Benjamin Coddington) [1732409] - [fs] nfsd4: zero-length WRITE should succeed (Benjamin Coddington) [1732409] - [fs] NFSv4.2 copy do not allocate memory under the lock (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a NFSv4 state manager deadlock (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix an Oops during delegation callbacks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a bogus get/put in generic_key_to_expire() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a Oops when destroying the RPCSEC_GSS credential cache (Benjamin Coddington) [1732409] - [fs] NFSv4: Ensure that the state manager exits the loop on SIGKILL (Benjamin Coddington) [1732409] - [fs] NFSv4: Don't exit the state manager without clearing NFS4CLNT_MANAGER_RUNNING (Benjamin Coddington) [1732409] - [fs] SUNRPC: drop pointless static qualifier in xdr_get_next_encode_buffer() (Benjamin Coddington) [1732409] - [fs] nfsd: COPY and CLONE operations require the saved filehandle to be set (Benjamin Coddington) [1732409] - [fs] sunrpc: correct the computation for page_ptr when truncating (Benjamin Coddington) [1732409] - [fs] NFS: fix spelling mistake, EACCESS -> EACCES (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use atomic(64)_t for seq_send(64) (Benjamin Coddington) [1732409] - [fs] nfsd: Fix an Oops in free_session() (Benjamin Coddington) [1732409] - [fs] nfsd: correctly decrement odstate refcount in error path (Benjamin Coddington) [1732409] - [fs] nfsd: fix fall-through annotations (Benjamin Coddington) [1732409] - [fs] knfsd: Improve lookup performance in the duplicate reply cache using an rbtree (Benjamin Coddington) [1732409] - [fs] knfsd: Further simplify the cache lookup (Benjamin Coddington) [1732409] - [fs] knfsd: Simplify NFS duplicate replay cache (Benjamin Coddington) [1732409] - [fs] knfsd: Remove dead code from nfsd_cache_lookup (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify TCP receive code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Replace the cache_detail->hash_lock with a regular spinlock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove non-RCU protected lookup (Benjamin Coddington) [1732409] - [fs] NFS: Fix up a typo in nfs_dns_ent_put (Benjamin Coddington) [1732409] - [fs] NFS: Lockless DNS lookups (Benjamin Coddington) [1732409] - [fs] knfsd: Lockless lookup of NFSv4 identities. (Benjamin Coddington) [1732409] - [fs] SUNRPC: Lockless server RPCSEC_GSS context lookup (Benjamin Coddington) [1732409] - [fs] knfsd: Allow lockless lookups of the exports (Benjamin Coddington) [1732409] - [fs] SUNRPC: Make server side AUTH_UNIX use lockless lookups (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow cache lookups to use RCU protection rather than the r/w spinlock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert the auth cred cache to use refcount_t (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert auth creds to use refcount_t (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify lookup code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up the AUTH cache code (Benjamin Coddington) [1732409] - [fs] NFS: change sign of nfs_fh length (Benjamin Coddington) [1732409] - [fs] sunrpc: safely reallow resvport min/max inversion (Benjamin Coddington) [1732409] - [fs] nfs: remove redundant call to nfs_context_set_write_error() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a compile warning for cmpxchg64() (Benjamin Coddington) [1732409] - [fs] SUNRPC: use cmpxchg64() in gss_seq_send64_fetch_and_inc() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor sunrpc_cache_lookup (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add lockless lookup of the server's auth domain (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove the server 'authtab_lock' and just use RCU (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix lookup revalidate of regular files (Benjamin Coddington) [1732409] - [fs] NFS: Refactor nfs_lookup_revalidate() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Replace krb5_seq_lock with a lockless scheme (Benjamin Coddington) [1732409] - [fs] SUNRPC: Lockless lookup of RPCSEC_GSS mechanisms (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove rpc_authflavor_lock in favour of RCU locking (Benjamin Coddington) [1732409] - [fs] NFS: Remove private spinlock in struct nfs_pgio_header (Benjamin Coddington) [1732409] - [fs] NFSv3: Improve NFSv3 performance when server returns no post-op attributes (Benjamin Coddington) [1732409] - [fs] NFSv4: Split out NFS v4.2 copy completion functions (Benjamin Coddington) [1732409] - [fs] NFS: Reduce indentation of nfs4_recovery_handle_error() (Benjamin Coddington) [1732409] - [fs] NFS: Reduce indentation of the switch statement in nfs4_reclaim_open_state() (Benjamin Coddington) [1732409] - [fs] NFS: Split out the body of nfs4_reclaim_open_state() (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix the r/wsize checking (Benjamin Coddington) [1732409] - [fs] NFSv4: Convert struct nfs4_state to use refcount_t (Benjamin Coddington) [1732409] - [fs] NFSv4: Convert open state lookup to use RCU (Benjamin Coddington) [1732409] - [fs] NFS: Convert lookups of the open context to RCU (Benjamin Coddington) [1732409] - [fs] NFS: Simplify internal check for whether file is open for write (Benjamin Coddington) [1732409] - [fs] NFS: Convert lookups of the lock context to RCU (Benjamin Coddington) [1732409] - [fs] pNFS: Don't allocate more pages than we need to fit a layoutget response (Benjamin Coddington) [1732409] - [fs] pNFS: Don't zero out the array in nfs4_alloc_pages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Unexport xdr_partial_copy_from_skb() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up xs_udp_data_receive() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow AF_LOCAL sockets to use the generic stream receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up - rename xs_tcp_data_receive() to xs_stream_data_receive() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify TCP receive code by switching to using iterators (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a bvec array to struct xdr_buf for use with iovec_iter() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a label for RPC calls that require allocation on receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert the xprt->sending queue back to an ordinary wait queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix priority queue fairness (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert xprt receive queue to use an rbtree (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't take transport->lock unnecessarily when taking XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Cleanup: remove the unused 'task' argument from the request_send() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up transport write space handling (Benjamin Coddington) [1732409] - [fs] SUNRPC: Turn off throttling of RPC slots for TCP sockets (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow soft RPC calls to time out when waiting for the XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow calls to xprt_transmit() to drain the entire transmit queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Enqueue swapper tagged RPCs at the head of the transmit queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Support for congestion control when queuing is enabled (Benjamin Coddington) [1732409] - [fs] SUNRPC: Improve latency for interactive tasks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Move RPC retransmission stat counter to xprt_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify xprt_prepare_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't reset the request 'bytes_sent' counter when releasing XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Treat the task and request as separate in the xprt_ops->send_request() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up the back channel transmit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor RPC call encoding (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a transmission queue for RPC requests (Benjamin Coddington) [1732409] - [fs] SUNRPC: Distinguish between the slot allocation list and receive queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Minor cleanup for call_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor xprt_transmit() to remove wait for reply code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor xprt_transmit() to remove the reply queue code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Rename xprt->recv_lock to xprt->queue_lock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't wake queued RPC calls multiple times in xprt_transmit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Test whether the task is queued before grabbing the queue spinlocks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a helper to wake up a sleeping rpc_task and set its status (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor the transport request pinning (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify dealing with aborted partially transmitted messages (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add socket transmit queue offset tracking (Benjamin Coddington) [1732409] - [fs] SUNRPC: Move reset of TCP state variables into the reconnect code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Rename TCP receive-specific state variables (Benjamin Coddington) [1732409] - [fs] SUNRPC: Avoid holding locks across the XDR encoding of the RPC message (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify identification of when the message send/receive is complete (Benjamin Coddington) [1732409] - [fs] SUNRPC: The transmitted message must lie in the RPCSEC window of validity (Benjamin Coddington) [1732409] - [fs] SUNRPC: If there is no reply expected, bail early from call_decode (Benjamin Coddington) [1732409] - [fs] nfsd: remove set but not used variable 'dirp' (Benjamin Coddington) [1732409] - [fs] NFSD introduce async copy feature (Benjamin Coddington) [1732409] - [fs] NFSD OFFLOAD_CANCEL xdr (Benjamin Coddington) [1732409] - [fs] NFSD OFFLOAD_STATUS xdr (Benjamin Coddington) [1732409] - [fs] NFSD CB_OFFLOAD xdr (Benjamin Coddington) [1732409] - [fs] NFS: Don't open code clearing of delegation state (Benjamin Coddington) [1732409] - [fs] NFSv4.1 fix infinite loop on I/O. (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a tracepoint Oops in initiate_file_draining() (Benjamin Coddington) [1732409] - [fs] pNFS: Ensure we return the error if someone kills a waiting layoutget (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a tracepoint Oops in initiate_file_draining() (Benjamin Coddington) [1732409] - [fs] sunrpc: Add comment defining gssd upcall API keywords (Benjamin Coddington) [1732409] - [fs] nfsd: Remove callback_cred (Benjamin Coddington) [1732409] - [fs] nfsd: Use correct credential for NFSv4.0 callback with GSS (Benjamin Coddington) [1732409] - [fs] sunrpc: Extract target name into svc_cred (Benjamin Coddington) [1732409] - [fs] sunrpc: Enable the kernel to specify the hostname part of service principals (Benjamin Coddington) [1732409] - [fs] pNFS: Remove unwanted optimisation of layoutget (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: ff_layout_pg_init_read should exit on error (Benjamin Coddington) [1732409] - [fs] pNFS: Treat RECALLCONFLICT like DELAY... (Benjamin Coddington) [1732409] - [fs] pNFS: When updating the stateid in layoutreturn, also update the recall range (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix locking in pnfs_generic_recover_commit_reqs (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a typo in nfs4_init_channel_attrs() (Benjamin Coddington) [1732409] - [fs] NFSv4: Don't busy wait if NFSv4 session draining is interrupted (Benjamin Coddington) [1732409] - [fs] NFS recover from destination server reboot for copies (Benjamin Coddington) [1732409] - [fs] nfsd: use true and false for boolean values (Benjamin Coddington) [1732409] - [fs] nfsd: constify write_op[] (Benjamin Coddington) [1732409] - [fs] fs/nfsd: Delete invalid assignment statements in nfsd4_decode_exchange_id (Benjamin Coddington) [1732409] - [fs] NFSD: Handle full-length symlinks (Benjamin Coddington) [1732409] - [fs] NFSD: Refactor the generic write vector fill helper (Benjamin Coddington) [1732409] - [fs] nfsd: Mark expected switch fall-through (Benjamin Coddington) [1732409] - [fs] nfsd: fix leaked file lock with nfs exported overlayfs (Benjamin Coddington) [1732409] - [fs] NFS add a simple sync nfs4_proc_commit after async COPY (Benjamin Coddington) [1732409] - [fs] NFS handle COPY ERR_OFFLOAD_NO_REQS (Benjamin Coddington) [1732409] - [fs] NFS send OFFLOAD_CANCEL when COPY killed (Benjamin Coddington) [1732409] - [fs] NFS export nfs4_async_handle_error (Benjamin Coddington) [1732409] - [fs] NFS handle COPY reply CB_OFFLOAD call race (Benjamin Coddington) [1732409] - [fs] NFS add support for asynchronous COPY (Benjamin Coddington) [1732409] - [fs] NFS COPY xdr handle async reply (Benjamin Coddington) [1732409] - [fs] NFS OFFLOAD_CANCEL xdr (Benjamin Coddington) [1732409] - [fs] NFS CB_OFFLOAD xdr (Benjamin Coddington) [1732409] - [fs] NFS: Use an appropriate work queue for direct-write completion (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix error handling in nfs4_sp4_select_mode() (Benjamin Coddington) [1732409] - [fs] pnfs: Use true and false for boolean values (Benjamin Coddington) [1732409] - [fs] pnfs: pnfs_find_lseg() should not check NFS_LSEG_LAYOUTRETURN (Benjamin Coddington) [1732409] - [fs] NFS: Mark expected switch fall-throughs (Benjamin Coddington) [1732409] - [fs] NFSv4: Mark the inode change attribute up to date in update_changeattr() (Benjamin Coddington) [1732409] - [fs] NFSv4: Detect nlink changes on cross-directory renames too (Benjamin Coddington) [1732409] - [fs] NFSv4: bump/drop the nlink count on the parent dir when we mkdir/rmdir (Benjamin Coddington) [1732409] - [fs] pnfs: Fix handling of NFS4ERR_OLD_STATEID replies to layoutreturn (Benjamin Coddington) [1732409] - [fs] sunrpc: whitespace fixes (Benjamin Coddington) [1732409] - [fs] NFSv4 client live hangs after live data migration recovery (Benjamin Coddington) [1732409] - [fs] NFSv4.0 fix client reference leak in callback (Benjamin Coddington) [1732409] - [fs] sunrpc: kstrtoul() can also return -ERANGE (Benjamin Coddington) [1732409] - [fs] NFS: silence a harmless uninitialized variable warning (Benjamin Coddington) [1732409] - [fs] net/sunrpc: Make rpc_auth_create_args a const (Benjamin Coddington) [1732409] - [fs] pnfs/blocklayout: off by one in bl_map_stripe() (Benjamin Coddington) [1732409] - [fs] nfs: Referrals not inheriting proto setting from parent (Benjamin Coddington) [1732409] - [fs] nfs: initiate returning delegation when reclaiming one that's been recalled (Benjamin Coddington) [1732409] - [fs] fs: nfs: Adding new return type vm_fault_t (Benjamin Coddington) [1732409] - [fs] nfs: add error check in nfs_idmap_prepare_message() (Benjamin Coddington) [1732409] - [fs] NFS: More excessive attribute revalidation in nfs_execute_ok() (Benjamin Coddington) [1732409] - [fs] NFS: Fix excessive attribute revalidation in nfs_execute_ok() (Benjamin Coddington) [1732409] - [fs] NFS: Ensure we immediately start writeback on rescheduled writes (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix a potential layoutget/layoutrecall deadlock (Benjamin Coddington) [1732409] - [fs] pNFS: Parse the results of layoutget on open even if permissions checks fail (Benjamin Coddington) [1732409] - [fs] NFS: Allow optimisation of lseek(fd, SEEK_CUR, 0) on directories (Benjamin Coddington) [1732409] - [fs] pNFS: Wait for stale layoutget calls to complete in pnfs_update_layout() (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: Ensure we always return a layout if it has layoutstats (Benjamin Coddington) [1732409] - [fs] pNFS: Ignore non-recalled layouts in pnfs_layout_need_return() (Benjamin Coddington) [1732409] - [fs] pNFS: Don't update the stateid when replying NFS4ERR_DELAY to a layout recall (Benjamin Coddington) [1732409] - [fs] pNFS: Don't discard layout segments that are marked for return (Benjamin Coddington) [1732409] - [fs] nfsd: don't advertise a SCSI layout for an unsupported request_queue (Benjamin Coddington) [1732409] - [fs] nfsd: fix corrupted reply to badly ordered compound (Benjamin Coddington) [1732409] - [fs] nfsd: clarify check_op_ordering (Benjamin Coddington) [1732409] - [fs] nfsd: update obselete comment referencing the BKL (Benjamin Coddington) [1732409] - [fs] nfsd4: cleanup sessionid in nfsd4_destroy_session (Benjamin Coddington) [1732409] - [fs] nfsd4: less confusing nfsd4_compound_in_session (Benjamin Coddington) [1732409] - [fs] nfsd4: support change_attr_type attribute (Benjamin Coddington) [1732409] - [fs] nfsd: fix NFSv4 time_delta attribute (Benjamin Coddington) [1732409] - [fs] nfsd4: return default lease period (Benjamin Coddington) [1732409] - [fs] nfsd4: extend reclaim period for reclaiming clients (Benjamin Coddington) [1732409] - [netdrv] i40e: Do not check VF state in i40e_ndo_get_vf_config (Stefan Assmann) [1752498] - [netdrv] i40e: Add support for X710 device (Stefan Assmann) [1752891] - [mm] mm/oom_kill.c: add task UID to info message on an oom kill (Joel Savitz) [1693039] - [pci] ACPICA: Increase total number of possible Owner IDs (Al Stone) [1713050] - [powerpc] powerpc/pseries: correctly track irq state in default idle (Steve Best) [1751971] - [powerpc] powerpc/imc: Dont create debugfs files for cpu-less nodes (Steve Best) [1726031] - [fs] userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx (Alex Gladkov) [1749763] - [infiniband] RDMA/bnxt_re: Fix stack-out-of-bounds in bnxt_qplib_rcfw_send_message (Selvin Xavier) [1643312] - [drm] drm/bochs: Fix connector leak during driver unload (Sam Bobroff) [1463490] - [tools] selftests: Remove forced unbuffering for test running (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Add test plan API to kselftest.h and adjust callers (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Remove KSFT_TAP_LEVEL (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Move test output to diagnostic lines (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Distinguish between missing and non-executable (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Add plan line and fix result line syntax (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Extract logic for multiple test runs (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Use runner.sh for emit targets (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Extract single-test shell logic from lib.mk (Desnes Augusto Nunes do Rosario) [1721461] - [tools] x86/selftests/pkeys: Fork() to check for state being preserved (Vladis Dronov) [1738880] - [x86] x86/pkeys: Properly copy pkey state at fork() (Vladis Dronov) [1738880] - [netdrv] cxgb4: fix a memory leak bug (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Prefer pcie_capability_read_word() (Jonathan Toppins) [1725776] - [netdrv] allocate_flower_entry: should check for null deref (Jonathan Toppins) [1725776] - [netdrv] cxgb4: reduce kernel stack usage in cudbg_collect_mem_region() (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS refcounting for alloc/free mac filters (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS TCAM refcounting for cxgb4 change mac (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS TCAM refcounting for raw mac filters (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Re-work the logic for mps refcounting (Jonathan Toppins) [1725776] - [netdrv] cxgb4/libcxgb/cxgb4i/cxgbit: enable eDRAM page pods for iSCSI (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Set initial IRQ affinity hints (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Make t4_get_tp_e2c_map static (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Revert "cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size" (Jonathan Toppins) [1725776] - [netdrv] cxgb4: offload VLAN flows regardless of VLAN ethtype (Jonathan Toppins) [1725776] - [netdrv] cxgb4: use firmware API for validating filter spec (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Enable hash filter with offload (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Fix error path in cxgb4_init_module (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Delete all hash and TCAM filters before resource cleanup (Jonathan Toppins) [1725776] - [netdrv] cxgb4/cxgb4vf_main: Mark expected switch fall-through (Jonathan Toppins) [1725776] - [netdrv] cxgb4/cxgb4vf: Display advertised FEC in ethtool (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Update 1.23.3.0 as the latest firmware supported. (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Update 1.22.9.0 as the latest firmware supported. (Jonathan Toppins) [1725776] - [netdrv] cxgb4/l2t: Use struct_size() in kvzalloc() (Jonathan Toppins) [1725776] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Jonathan Toppins) [1725776] - [netdrv] crypto/chelsio/chtls: macro correction in tx path (Jonathan Toppins) [1725776]- [kernel] rcu: Add sparse check to rcu_assign_pointer() (Waiman Long) [1737054] - [kernel] rcu: Fix obsolete DYNTICK_IRQ_NONIDLE comment (Waiman Long) [1737054] - [kernel] rcu: Repair rcu_nmi_exit() docbook header (Waiman Long) [1737054] - [kernel] rcu: Remove preemption disabling from expedited CPU selection (Waiman Long) [1737054] - [kernel] rcu: Rename rcu_process_callbacks() to rcu_core() for Tree RCU (Waiman Long) [1737054] - [kernel] rcu: Rename rcu_check_callbacks() to rcu_sched_clock_irq() (Waiman Long) [1737054] - [kernel] rcu: Docbook for rcu_head_init() and rcu_head_after_call_rcu() (Waiman Long) [1737054] - [documentation] doc: Fix outdated links (Waiman Long) [1737054] - [documentation] doc: CPU-hotplug notifiers cannot invoke synchronize_srcu() or srcu_barrier() (Waiman Long) [1737054] - [documentation] doc: Now jiffies_till_sched_qs solicits help from cond_resched() (Waiman Long) [1737054] - [kernel] rcuperf: Stop abusing IS_ENABLED() (Waiman Long) [1737054] - [kernel] rcutorture: Add grace period after CPU offline (Waiman Long) [1737054] - [kernel] torture: Explain and simplify odd "for" loop in mkinitrd.sh (Waiman Long) [1737054] - [kernel] rcutorture: Record grace periods in forward-progress histogram (Waiman Long) [1737054] - [kernel] rcu: Prevent needless ->gp_seq_needed update in __note_gp_changes() (Waiman Long) [1737054] - [kernel] rcu: Do RCU GP kthread self-wakeup from softirq and interrupt (Waiman Long) [1737054] - [kernel] rcu: Add sysrq rcu_node-dump capability (Waiman Long) [1737054] - [kernel] rcu: Protect rcu_check_gp_kthread_starvation() access to ->gp_flags (Waiman Long) [1737054] - [kernel] rcu: Improve diagnostics for failed RCU grace-period start (Waiman Long) [1737054] - [kernel] rcu: Update NOCB comments (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_cpu_kthread_cpu per-CPU variable (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_has_work to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_cpu_kthread_loops per-CPU variable (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_kthread_status to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_kthread_task to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Accommodate zero jiffies_till_first_fqs and kthread kicking (Waiman Long) [1737054] - [kernel] rcu: Remove wrapper definitions for obsolete RCU update functions (Waiman Long) [1737054] - [kernel] rcu: Discard separate per-CPU callback counts (Waiman Long) [1737054] - [kernel] rcu: Inline _synchronize_rcu_expedited() into synchronize_rcu_expedited() (Waiman Long) [1737054] - [kernel] rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu() (Waiman Long) [1737054] - [kernel] rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu_expedited() (Waiman Long) [1737054] - [kernel] rcu: Determine expedited-GP IPI handler at build time (Waiman Long) [1737054] - [kernel] rcu: Inline rcu_kthread_do_work() into its sole remaining caller (Waiman Long) [1737054] - [kernel] rcu: Eliminate RCU_BH_FLAVOR and RCU_SCHED_FLAVOR (Waiman Long) [1737054] - [kernel] rcu: Inline force_quiescent_state() into rcu_force_quiescent_state() (Waiman Long) [1737054] - [kernel] rcu: Make expedited IPI handler return after handling critical section (Waiman Long) [1737054] - [kernel] rcu: Rename and comment changes due to only one rcuo kthread per CPU (Waiman Long) [1737054] - [kernel] sched: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] sched: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [net] net/core: Replace call_rcu_bh() and synchronize_rcu_bh() (Waiman Long) [1737054] - [net] netpoll: allow cleanup to be synchronous (Waiman Long) [1737054] - [net] netfilter: Replace call_rcu_bh(), rcu_barrier_bh(), and synchronize_rcu_bh() (Waiman Long) [1737054] - [kernel] uprobes: Use synchronize_rcu() not synchronize_sched() (Waiman Long) [1737054] - [kernel] rcutorture: Don't do busted forward-progress testing (Waiman Long) [1737054] - [kernel] rcutorture: Use 100ms buckets for forward-progress callback histograms (Waiman Long) [1737054] - [kernel] rcutorture: Recover from OOM during forward-progress tests (Waiman Long) [1737054] - [kernel] rcutorture: Print forward-progress test age upon failure (Waiman Long) [1737054] - [kernel] rcutorture: Print time since GP end upon forward-progress failure (Waiman Long) [1737054] - [kernel] rcutorture: Print histogram of CB invocation at OOM time (Waiman Long) [1737054] - [kernel] rcutorture: Print GP age upon forward-progress failure (Waiman Long) [1737054] - [kernel] rcu: Print per-CPU callback counts for forward-progress failures (Waiman Long) [1737054] - [kernel] rcu: Account for nocb-CPU callback counts in RCU CPU stall warnings (Waiman Long) [1737054] - [kernel] rcutorture: Dump grace-period diagnostics upon forward-progress OOM (Waiman Long) [1737054] - [kernel] rcutorture: Prepare for asynchronous access to rcu_fwd_startat (Waiman Long) [1737054] - [kernel] torture: Remove unnecessary "ret" variables (Waiman Long) [1737054] - [kernel] rcutorture: Affinity forward-progress test to avoid housekeeping CPUs (Waiman Long) [1737054] - [kernel] rcutorture: Break up too-long rcu_torture_fwd_prog() function (Waiman Long) [1737054] - [kernel] rcutorture: Remove cbflood facility (Waiman Long) [1737054] - [kernel] torture: Bring any extra CPUs online during kernel startup (Waiman Long) [1737054] - [kernel] rcutorture: Add call_rcu() flooding forward-progress tests (Waiman Long) [1737054] - [tools] rcutorture/formal: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [tools] tools/kernel.h: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [net] net/decnet: Replace rcu_barrier_bh() with rcu_barrier() (Waiman Long) [1737054] - [net] net/core/skmsg: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] cgroups: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] types: Remove call_rcu_bh() and call_rcu_sched() (Waiman Long) [1737054] - [include] percpu-rwsem: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [net] net/bridge: Replace call_rcu_bh() and rcu_barrier_bh() (Waiman Long) [1737054] - [kernel] srcu: Use "ssp" instead of "sp" for srcu_struct pointer (Waiman Long) [1737054] - [kernel] srcu: Lock srcu_data structure in srcu_gp_start() (Waiman Long) [1737054] - [mm] mm: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] percpu-refcount: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] events: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] workqueue: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] modules: Replace synchronize_sched() and call_rcu_sched() (Waiman Long) [1737054] - [kernel] sched/membarrier: synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] lockdep: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] kprobes: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [init] main: Replace rcu_barrier_sched() with rcu_barrier() (Waiman Long) [1737054] - [kernel] tracing: Replace synchronize_sched() and call_rcu_sched() (Waiman Long) [1737054] - [kernel] tracepoints: Free early tracepoints after RCU is initialized (Waiman Long) [1737054] - [kernel] tracing: Fix synchronizing to event changes with tracepoint_synchronize_unregister() (Waiman Long) [1737054] - [kernel] tracepoint: Make rcuidle tracepoint callers use SRCU (Waiman Long) [1737054] - [fs] fs/file: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [cpufreq] cpufreq/cpufreq_governor: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [cpufreq] cpufreq/intel_pstate: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [vhost] drivers/vhost: Replace synchronize_rcu_bh() with synchronize_rcu() (Waiman Long) [1737054] - [netdrv] ethernet/sis: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [char] drivers/ipmi: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [crypto] crypto/pcrypt: Replace synchronize_rcu_bh() with synchronize_rcu() (Waiman Long) [1737054] - [mm] mm: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [kernel] locking/mutex: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [fs] userfaultfd: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [net] smsc: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [scripts] checkpatch.pl: Suggest lockdep instead of asserting !spin_is_locked() (Waiman Long) [1737054] - [scripts] checkpatch: Create table of obsolete APIs and apply to RCU (Waiman Long) [1737054] - [maintainers] MAINTAINERS: Add Joel Fernandes as RCU reviewer (Waiman Long) [1737054] - [kernel] rcu: Avoid signed integer overflow in rcu_preempt_deferred_qs() (Waiman Long) [1737054] - [kernel] rcu: Replace this_cpu_ptr() with __this_cpu_read() (Waiman Long) [1737054] - [kernel] rcu: Speed up expedited GPs when interrupting RCU reader (Waiman Long) [1737054] - [kernel] rcu: Trace end of grace period before end of grace period (Waiman Long) [1737054] - [kernel] rcu: Adjust the comment of function rcu_is_watching (Waiman Long) [1737054] - [kernel] rcu: Add jiffies-since-GP-activity to show_rcu_gp_kthreads() (Waiman Long) [1737054] - [kernel] rcu: Add state name to show_rcu_gp_kthreads() output (Waiman Long) [1737054] - [kernel] rcu: Parameterize rcu_check_gp_start_stall() (Waiman Long) [1737054] - [kernel] rcu: Avoid double multiply by HZ (Waiman Long) [1737054] - [documentation] doc: Fix "struction" typo in RCU memory-ordering documentation (Waiman Long) [1737054] - [documentation] doc: Correct parameter in stallwarn (Waiman Long) [1737054] - [documentation] doc: RCU scheduler spinlock rcu_read_unlock() restriction remains (Waiman Long) [1737054] - [documentation] doc: Make listing in RCU perf/scale requirements use rcu_assign_pointer() (Waiman Long) [1737054] - [documentation] doc: Remove obsolete (non-)requirement about disabling preemption (Waiman Long) [1737054] - [documentation] doc: Make reader aware of rcu_dereference_protected (Waiman Long) [1737054] - [documentation] doc: rcu: Encourage use of rcu_barrier in checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Remove obsolete checklist item about synchronize_rcu usage (Waiman Long) [1737054] - [documentation] doc: rcu: Remove obsolete suggestion from checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Add more rationale for using rcu_read_lock_sched in checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Update core and full API in whatisRCU (Waiman Long) [1737054] - [documentation] doc: Document rcutorture forward-progress test kernel parameters (Waiman Long) [1737054] - [documentation] doc: rcu: Update description of gp_seq fields in rcu_data (Waiman Long) [1737054] - [documentation] doc: rcu: Better clarify the rcu_segcblist ->len field (Waiman Long) [1737054] - [documentation] doc: rcu: Update Data-Structures for RCU flavor consolidation (Waiman Long) [1737054] - [documentation] doc: Remove rcu_dynticks from Data-Structures (Waiman Long) [1737054] - [documentation] doc: Update information about resched_cpu (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/update.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/tree_plugin.h (Waiman Long) [1737054] - [kernel] rcu: Stop expedited grace periods from relying on stop-machine (Waiman Long) [1737054] - [kernel] srcu: Prevent __call_srcu() counter wrap with read-side critical section (Waiman Long) [1737054] - [include] srcu: Fix kernel-doc missing notation (Waiman Long) [1737054] - [x86] x86/PCI: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [tools] rcutorture: Make use of nolibc when available (Waiman Long) [1737054] - [tools] rcutorture: Import a copy of nolibc (Waiman Long) [1737054] - [tools] rcutorture: Check initrd/init instead of initrd only (Waiman Long) [1737054] - [tools] rcutorture: Always strip using the cross-compiler (Waiman Long) [1737054] - [tools] rcutorture: Add cross-compile capability to initrd.sh (Waiman Long) [1737054] - [tools] rcutorture: Make initrd/init execute in userspace (Waiman Long) [1737054] - [tools] rcutorture: Add initrd support for systems lacking dracut (Waiman Long) [1737054] - [tools] rcutorture: Automatically create initrd directory (Waiman Long) [1737054] - [documentation] doc: Remove rcu_preempt_state reference in stallwarn (Waiman Long) [1737054] - [documentation] doc: Clarify RCU data-structure comment about rcu_tree fanout (Waiman Long) [1737054] - [documentation] doc: Set down forward-progress requirements (Waiman Long) [1737054] - [powerpc] powerpc: Convert hugepd_free() to use call_rcu() (Waiman Long) [1737054] - [s390] s390/mm: Convert tlb_table_flush() to use call_rcu() (Waiman Long) [1737054] - [kernel] sparc/oprofile: Convert timer_stop() to use synchronize_rcu() (Waiman Long) [1737054] - [kernel] sched/membarrier: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] rcu: Consolidate the RCU update functions invoked by sync.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate synchronize_rcu_mult() (Waiman Long) [1737054] - [kernel] rcu: Fix rcu_{node, data} comments about gp_seq_needed (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_state externs (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/tree.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for sync.c (Waiman Long) [1737054] - [include] srcu: Add notrace variant of srcu_dereference (Waiman Long) [1737054] - [documentation] PM/EM: Document the Energy Model framework (Phil Auld) [1718927] - [kernel] sched/doc: Document Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] sched/fair: Remove unneeded prototype of capacity_of() (Phil Auld) [1718927] - [kernel] sched/fair: Skip LLC NOHZ logic for asymmetric systems (Phil Auld) [1718927] - [kernel] sched/fair: Tune down misfit NOHZ kicks (Phil Auld) [1718927] - [kernel] sched/fair: Comment some nohz_balancer_kick() kick conditions (Phil Auld) [1718927] - [kernel] sched/fair: Prune, fix and simplify the nohz_balancer_kick() comment block (Phil Auld) [1718927] - [kernel] sched/fair: Explain LLC nohz kick condition (Phil Auld) [1718927] - [kernel] sched/fair: Simplify nohz_balancer_kick() (Phil Auld) [1718927] - [kernel] sched/topology: Fix percpu data types in struct sd_data & struct s_data (Phil Auld) [1718927] - [kernel] sched/fair: Simplify post_init_entity_util_avg() by calling it with a task_struct pointer argument (Phil Auld) [1718927] - [kernel] sched/fair: Fix util_avg of new tasks for asymmetric systems (Phil Auld) [1718927] - [kernel] sched/fair: Optimize update_blocked_averages() (Phil Auld) [1718927] - [kernel] sched/topology: Introduce a sysctl for Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] Revert "sched/core: Take the hotplug lock in sched_init_smp()" (Phil Auld) [1718927] - [kernel] cpu/hotplug: Mute hotplug lockdep during init (Phil Auld) [1718927] - [kernel] sched/fair: Select an energy-efficient CPU on task wake-up (Phil Auld) [1718927] - [kernel] sched/fair: Introduce an energy estimation helper function (Phil Auld) [1718927] - [kernel] sched/fair: Add over-utilization/tipping point indicator (Phil Auld) [1718927] - [kernel] sched/fair: Clean-up update_sg_lb_stats parameters (Phil Auld) [1718927] - [kernel] sched/toplogy: Introduce the 'sched_energy_present' static key (Phil Auld) [1718927] - [kernel] sched/topology: Make Energy Aware Scheduling depend on schedutil (Phil Auld) [1718927] - [kernel] sched/topology: Disable EAS on inappropriate platforms (Phil Auld) [1718927] - [kernel] sched/topology: Add lowest CPU asymmetry sched_domain level pointer (Phil Auld) [1718927] - [kernel] sched/topology: Reference the Energy Model of CPUs when available (Phil Auld) [1718927] - [kernel] PM: Introduce an Energy Model management framework (Phil Auld) [1718927] - [kernel] sched/cpufreq: Prepare schedutil for Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] sched/topology: Relocate arch_scale_cpu_capacity() to the internal header (Phil Auld) [1718927] - [kernel] sched/core: Take the hotplug lock in sched_init_smp() (Phil Auld) [1718927] - [kernel] sched/core: Disable SD_PREFER_SIBLING on asymmetric CPU capacity domains (Phil Auld) [1718927] - [kernel] sched/fair: Don't move tasks to lower capacity CPUs unless necessary (Phil Auld) [1718927] - [kernel] sched/fair: Set rq->rd->overload when misfit (Phil Auld) [1718927] - [kernel] sched/fair: Wrap rq->rd->overload accesses with READ/WRITE_ONCE() (Phil Auld) [1718927] - [kernel] sched/core: Change root_domain->overload type to int (Phil Auld) [1718927] - [kernel] sched/fair: Change 'prefer_sibling' type to bool (Phil Auld) [1718927] - [kernel] sched/fair: Kick nohz balance if rq->misfit_task_load (Phil Auld) [1718927] - [kernel] sched/fair: Consider misfit tasks when load-balancing (Phil Auld) [1718927] - [kernel] sched/fair: Add sched_group per-CPU max capacity (Phil Auld) [1718927] - [kernel] sched/fair: Add 'group_misfit_task' load-balance type (Phil Auld) [1718927] - [kernel] sched/topology: Add static_key for asymmetric CPU capacity optimizations (Phil Auld) [1718927] - [kernel] sched/core, workqueues: Distangle worker accounting from rq lock (Phil Auld) [1737067] - [kernel] workqueue: Use normal rcu (Phil Auld) [1737067] - [kernel] tick/broadcast: Fix warning about undefined tick_broadcast_oneshot_offline() (Phil Auld) [1737067] - [kernel] timer/trace: Improve timer tracing (Phil Auld) [1737067] - [include] timer/trace: Replace deprecated vsprintf pointer extension pf by ps (Phil Auld) [1737067] - [kernel] timer: Move trace point to get proper index (Phil Auld) [1737067] - [kernel] tick/sched: Update tick_sched struct documentation (Phil Auld) [1737067] - [kernel] tick: Remove outgoing CPU from broadcast masks (Phil Auld) [1737067] - [kernel] timekeeping: Consistently use unsigned int for seqcount snapshot (Phil Auld) [1737067] - [kernel] sched/fair: Robustify CFS-bandwidth timer locking (Phil Auld) [1737067] - [kernel] tick/sched : Remove redundant cpu_online() check (Phil Auld) [1737067] - [misc] sched/swait: Rename to exclusive (Phil Auld) [1737067] - [kernel] sched/swait: Switch to full exclusive mode (Phil Auld) [1737067] - [kernel] sched/swait: Remove __prepare_to_swait (Phil Auld) [1737067] - [netdrv] net: ena: don't wake up tx queue when down (John Linville) [1722628] - [netdrv] Revert "net: ena: ethtool: add extra properties retrieval via get_priv_flags" (John Linville) [1722628] - [netdrv] net: ena: Fix bug where ring allocation backoff stopped too late (John Linville) [1722628] - [netdrv] net: ena: update driver version from 2.0.3 to 2.1.0 (John Linville) [1722628] - [netdrv] net: ena: remove inline keyword from functions in *.c (John Linville) [1722628] - [netdrv] net: ena: add ethtool function for changing io queue sizes (John Linville) [1722628] - [netdrv] net: ena: allow queue allocation backoff when low on memory (John Linville) [1722628] - [netdrv] net: ena: make ethtool show correct current and max queue sizes (John Linville) [1722628] - [netdrv] net: ena: enable negotiating larger Rx ring size (John Linville) [1722628] - [netdrv] net: ena: add MAX_QUEUES_EXT get feature admin command (John Linville) [1722628] - [netdrv] net: ena: use dev_info_once instead of static variable (John Linville) [1722628] - [netdrv] net: ena: add good checksum counter (John Linville) [1722628] - [netdrv] net: ena: optimise calculations for CQ doorbell (John Linville) [1722628] - [netdrv] net: ena: add support for changing max_header_size in LLQ mode (John Linville) [1722628] - [netdrv] net: ena: allow automatic fallback to polling mode (John Linville) [1722628] - [netdrv] net: ena: add newline at the end of pr_err prints (John Linville) [1722628] - [netdrv] net: ena: arrange ena_probe() function variables in reverse christmas tree (John Linville) [1722628] - [netdrv] net: ena: replace free_tx/rx_ids union with single free_ids field in ena_ring (John Linville) [1722628] - [netdrv] net: ena: ethtool: add extra properties retrieval via get_priv_flags (John Linville) [1722628] - [netdrv] net: ena: add handling of llq max tx burst size (John Linville) [1722628] - [netdrv] net: ena: gcc 8: fix compilation warning (John Linville) [1722628] - [netdrv] net: ena: fix ena_com_fill_hash_function() implementation (John Linville) [1722628] - [netdrv] net: ena: improve latency by disabling adaptive interrupt moderation by default (John Linville) [1722628] - [netdrv] net: ena: fix return value of ena_com_config_llq_info() (John Linville) [1722628] - [netdrv] net: ena: fix incorrect test of supported hash function (John Linville) [1722628] - [netdrv] net: ena: fix: Free napi resources when ena_up() fails (John Linville) [1722628] - [netdrv] net: ena: fix: set freed objects to NULL to avoid failing future allocations (John Linville) [1722628] - [netdrv] net: ena: fix swapped parameters when calling ena_com_indirect_table_fill_entry (John Linville) [1722628] - [arm64] arm64: kexec: Add comment to explain use of __flush_icache_range() (Mark Salter) [1757450] - [arm64] arm64: kexec: machine_kexec should call __flush_icache_range (Mark Salter) [1757450] - [arm64] arm64: Do not issue IPIs for user executable ptes (Mark Salter) [1757450] - [arm64] arm64: hibernate: Avoid sending cross-calling with interrupts disabled (Mark Salter) [1757450] - [arm64] arm64: mm: Export __flush_icache_range() to modules (Mark Salter) [1757450] - [arm64] arm64: IPI each CPU after invalidating the I-cache for kernel mappings (Mark Salter) [1757450] - [s390] s390/dasd: Handle out-of-space constraint (Philipp Rudo) [1525398] - [s390] s390/dasd: Use ALIGN_DOWN macro (Philipp Rudo) [1525398] - [s390] s390/dasd: Make dasd_setup_queue() a discipline function (Philipp Rudo) [1525398] - [s390] s390/dasd: Add new ioctl to release space (Philipp Rudo) [1525398] - [s390] s390/dasd: Add dasd_sleep_on_queue_interruptible() (Philipp Rudo) [1525398] - [s390] s390/dasd: Add missing intensity definition (Philipp Rudo) [1525398] - [s390] s390/dasd: Fix whitespace (Philipp Rudo) [1525398] - [s390] s390/dasd: Add dynamic formatting support for ESE volumes (Philipp Rudo) [1525398] - [s390] s390/dasd: Recognise data for ESE volumes (Philipp Rudo) [1525398] - [s390] s390/dasd: Put sub-order definitions in a separate section (Philipp Rudo) [1525398] - [s390] s390/dasd: Make layout analysis ESE compatible (Philipp Rudo) [1525398] - [s390] s390/dasd: Remove old defines and function (Philipp Rudo) [1525398] - [s390] s390/dasd: Remove unused structs and function prototypes (Philipp Rudo) [1525398] - [tools] perf report: Dump s390 counter set data to file (Philipp Rudo) [1731036] - [tools] perf report: Display arch specific diagnostic counter sets, starting with s390 (Philipp Rudo) [1731036] - [tools] perf report: Add s390 diagnosic sampling descriptor size (Philipp Rudo) [1731036] - [s390] s390/cpum_cf_diag: Add support for CPU-MF SVN 6 (Philipp Rudo) [1731036] - [s390] s390/cpumf: Fix warning from check_processor_id (Philipp Rudo) [1731036] - [s390] s390/cpum_cf_diag: Add support for s390 counter facility diagnostic trace (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Handle EBUSY return code from CPU counter facility reservation (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: add ctr_stcctm() function (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: move common functions into a separate file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: introduce kernel_cpumcf_avail() function (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: replace stcctm5() with the stcctm() function (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: add store cpu counter multiple instruction support (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Add minimal in-kernel interface for counter measurements (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: introduce kernel_cpumcf_alert() to obtain measurement alerts (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: move struct cpu_cf_events and per-CPU variable to header file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: rename per-CPU counter facility structure and variables (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: prepare for in-kernel counter measurements (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: move counter set controls to a new header file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Reject request for sampling in event initialization (Philipp Rudo) [1731036] - [s390] s390/perf: Change CPUM_CF return code in event init function (Philipp Rudo) [1731036] - [acpi] ACPI / property: Add two new Thunderbolt property GUIDs to the list (Jarod Wilson) [1483494] - [acpi] ACPI: property: restore _DSD data subnodes GUID comment (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for Intel Ice Lake (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Expose active parts of NVM even if upgrade is not supported (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Hide switch attributes that are not set (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not fail adding switch if some port is not implemented (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Use 32-bit writes when writing ring producer/consumer (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Move NVM upgrade support flag to struct icm (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Correct path indices for PCIe tunnel (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Show key using *pE not *pEp (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Switch to use device_property_count_uXX() (Jarod Wilson) [1483494] - [include] device property: Add helpers to count items in an array (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Implement CIO reset correctly for Titan Ridge (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make sure device runtime resume completes before taking domain lock (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add SPDX license identifier for more missed files (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make priority unsigned in struct tb_path (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: shash - remove shash_desc::flags (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Start firmware on Titan Ridge Apple systems (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Reword output of tb_dump_hop() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make rest of the logging to happen at debug level (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make __TB_[SW|PORT]_PRINT take const parameters (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for XDomain connections (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make tb_switch_alloc() return ERR_PTR() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for DMA tunnels (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add XDomain UUID exchange support (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Run tb_xdp_handle_request() in system workqueue (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not tear down tunnels when driver is unloaded (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for Display Port tunnels (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Rework NFC credits handling (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Generalize port finding routines to support all port types (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Scan only valid NULL adapter ports in hotplug (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for full PCIe daisy chains (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Discover preboot PCIe paths the boot firmware established (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Deactivate all paths before restarting them (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Extend tunnel creation to more than 2 adjacent switches (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add helper function to iterate from one port to another (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Assign remote for both ports in case of dual link (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add functions for allocating and releasing HopIDs (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Generalize tunnel creation functionality (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Rename tunnel_pci to tunnel (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Cache adapter specific capability offset into struct port (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Properly disable path (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Set sleep bit when suspending switch (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Configure lanes when switch is initialized (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Move LC specific functionality into a separate file (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add dummy read after port capability list walk on Light Ridge (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Enable TMU access when accessing port space on legacy devices (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not allocate switch if depth is greater than 6 (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Take domain lock in switch sysfs attribute callbacks (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Block reads and writes if switch is unplugged (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Drop duplicated get_switch_at_route() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Remove unused work field in struct tb_switch (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check the return value of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: property: Fix a missing check of kzalloc (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: xdomain: Fix to check return value of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check return value of ida_simple_get (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check for kmemdup failure (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix a missing check of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: property: Fix a NULL pointer dereference (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Prevent root port runtime suspend during NVM upgrade (Jarod Wilson) [1483494] - [netdrv] net/ibmvnic: prevent more than one thread from running in reset (Steve Best) [1756943] - [netdrv] net/ibmvnic: unlock rtnl_lock in reset so linkwatch_event can run (Steve Best) [1756943] - [netdrv] sfc: don't score irq moderation points for GRO (Jarod Wilson) [1736303] - [netdrv] sfc: Use dev_get_drvdata where possible (Jarod Wilson) [1736303] - [netdrv] sfc: Remove 'PCIE error reporting unavailable' (Jarod Wilson) [1736303] - [netdrv] sfc: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jarod Wilson) [1736303] - [netdrv] sfc: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1736303] - [netdrv] bonding: no need to print a message if debugfs_create_dir() fails (Jarod Wilson) [1756517] - [netdrv] bonding: Add vlan tx offload to hw_enc_features (Jarod Wilson) [1756517] - [netdrv] bonding: fix value exported by Netlink for peer_notif_delay (Jarod Wilson) [1756517] - [netdrv] bonding: add an option to specify a delay between peer notifications (Jarod Wilson) [1756517] - [netdrv] bonding: validate ip header before check IPPROTO_IGMP (Jarod Wilson) [1756517] - [netdrv] bonding/main: fix NULL dereference in bond_select_active_slave() (Jarod Wilson) [1756517] - [netdrv] bonding: Always enable vlan tx offload (Jarod Wilson) [1756517] - [netdrv] bonding/options: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/alb: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/802.3ad: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/main: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding: add slave_foo printk macros (Jarod Wilson) [1756517] - [netdrv] bonding: fix error messages in bond_do_fail_over_mac (Jarod Wilson) [1756517] - [netdrv] bonding: improve event debug usability (Jarod Wilson) [1756517] - [netdrv] net: bonding: Inherit MPLS features from slave devices (Jarod Wilson) [1756517] - [netdrv] bonding: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jarod Wilson) [1756517] - [netdrv] bonding: Replace GPLv2 boilerplate/reference with SPDX - rule 90 (Jarod Wilson) [1756517] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 5 (Jarod Wilson) [1756517] - [netdrv] bonding: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1756517] - [powerpc] powerpc/fadump: support holes in kernel boot memory area (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: remove RMA_START and RMA_END macros (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: update documentation about option to release opalcore (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: consider f/w load area (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: provide an option to invalidate /sys/firmware/opal/core file (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: enable CONFIG_OPAL_CORE for FADUMP (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: export /sys/firmware/opal/core for analysing opal crashes (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: update documentation about CONFIG_PRESERVE_FA_DUMP (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add support to preserve crash data on FADUMP disabled kernel (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: improve how crashed kernel's memory is reserved (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: consider reserved ranges while releasing memory (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: make crash memory ranges array allocation generic (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: process architected register state data provided by firmware (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: make use of memblock's bottom up allocation mode (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Update documentation about OPAL platform support (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: handle invalidation of crashdump and re-registraion (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Warn before processing partial crashdump (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: process the crashdump by exporting it as /proc/vmcore (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: support copying multiple kernel boot memory regions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: define OPAL register/un-register callback functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: reset metadata address during clean up (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: register kernel metadata address with opal (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: improve fadump_reserve_mem() (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add fadump support on powernv (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opal: add MPIPL interface definitions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/powernv: Make possible for user to force a full ipl cec reboot (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: use FADump instead of fadump for how it is pronounced (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] pseries/fadump: move out platform specific support from generic code (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: release all the memory above boot memory size (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add source info while displaying region contents (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] pseries/fadump: define RTAS register/un-register callback functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: introduce callbacks for platform specific operations (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: move rtas specific definitions to platform code (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: define an empty fadump_cleanup() (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: use helper functions to reserve/release cpu notes buffer (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Improve fadump documentation (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: declare helper functions in internal header file (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add helper functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: move internal macros/definitions to a new header (Desnes Augusto Nunes do Rosario) [1524687] - [watchdog] watchdog: iTCO: Add support for Cannon Lake PCH iTCO (Alexander Beregalov) [1724532] - [i2c] i2c: i801: Use iTCO version 6 in Cannon Lake PCH and beyond (Alexander Beregalov) [1724532] - [i2c] i2c: i801: Allow ACPI AML access I/O ports not reserved for SMBus (Alexander Beregalov) [1724532] - [block] loop: set PF_MEMALLOC_NOIO for the worker thread (Ming Lei) [1741392] - [fs] bdev: Fixup error handling in blkdev_get() (Ming Lei) [1741392] - [block] loop: Fix mount(2) failure due to race with LOOP_SET_FD (Ming Lei) [1741392] - [block] block, bfq: handle NULL return value by bfq_init_rq() (Ming Lei) [1741392] - [block] block, bfq: move update of waker and woken list to queue freeing (Ming Lei) [1741392] - [block] block, bfq: reset last_completed_rq_bfqq if the pointed queue is freed (Ming Lei) [1741392] - [block] block: aoe: Fix kernel crash due to atomic sleep when exiting (Ming Lei) [1741392] - [block] rq-qos: use a mb for got_token (Ming Lei) [1741392] - [block] rq-qos: set ourself TASK_UNINTERRUPTIBLE after we schedule (Ming Lei) [1741392] - [block] rq-qos: don't reset has_sleepers on spurious wakeups (Ming Lei) [1741392] - [block] rq-qos: fix missed wake-ups in rq_qos_throttle (Ming Lei) [1741392] - [include] wait: add wq_has_single_sleeper helper (Ming Lei) [1741392] - [block] block, bfq: check also in-flight I/O in dispatch plugging (Ming Lei) [1741392] - [block] block: fix sysfs module parameters directory path in comment (Ming Lei) [1741392] - [block] block: Allow mapping of vmalloc-ed buffers (Ming Lei) [1741392] - [block] block/bio-integrity: fix a memory leak bug (Ming Lei) [1741392] - [block] block: Disable write plugging for zoned block devices (Ming Lei) [1741392] - [block] blk-throttle: fix zero wait time for iops throttled group (Ming Lei) [1741392] - [block] block: Fix potential overflow in blk_report_zones() (Ming Lei) [1741392] - [block] blk-cgroup: turn on psi memstall stuff (Ming Lei) [1741392] - [block] block: init flush rq ref count to 1 (Ming Lei) [1741392] - [lib] sbitmap: Replace cmpxchg with xchg (Ming Lei) [1741392] - [block] block: Remove unused code (Ming Lei) [1741392] - [block] block, bfq: Init saved_wr_start_at_switch_to_srt in unlikely case (Ming Lei) [1741392] - [block] block, bfq: re-schedule empty queues if they deserve I/O plugging (Ming Lei) [1741392] - [block] block, bfq: preempt lower-weight or lower-priority queues (Ming Lei) [1741392] - [block] block, bfq: detect wakers and unconditionally inject their I/O (Ming Lei) [1741392] - [block] block, bfq: bring forward seek&think time update (Ming Lei) [1741392] - [block] block, bfq: update base request service times when possible (Ming Lei) [1741392] - [block] block, bfq: fix rq_in_driver check in bfq_update_inject_limit (Ming Lei) [1741392] - [block] block, bfq: reset inject limit when think-time state changes (Ming Lei) [1741392] - [kernel] cgroup: export css_next_descendant_pre for bfq (Ming Lei) [1741392] - [block] block: update print_req_error() (Ming Lei) [1741392] - [block] block: use blk_op_str() in blk-mq-debugfs.c (Ming Lei) [1741392] - [block] block: add centralize REQ_OP_XXX to string helper (Ming Lei) [1741392] - [block] block: improve print_req_error (Ming Lei) [1741392] - [block] block: rename CONFIG_DEBUG_BLK_CGROUP to CONFIG_BFQ_CGROUP_DEBUG (Ming Lei) [1741392] - [block] bfq-iosched: move bfq_stat_recursive_sum into the only caller (Ming Lei) [1741392] - [block] blk-cgroup: move struct blkg_stat to bfq (Ming Lei) [1741392] - [block] blk-cgroup: introduce a new struct blkg_rwstat_sample (Ming Lei) [1741392] - [block] blk-cgroup: pass blkg_rwstat structures by reference (Ming Lei) [1741392] - [block] blk-cgroup: factor out a helper to read rwstat counter (Ming Lei) [1741392] - [block] block: drbd: no need to check return value of debugfs_create functions (Ming Lei) [1741392] - [block] blk-core: Remove blk_end_request*() declarations (Ming Lei) [1741392] - [block] block: code cleanup queue_poll_stat_show() (Ming Lei) [1741392] - [block] block: use right format specifier for op (Ming Lei) [1741392] - [block] block: get rid of redundant else (Ming Lei) [1741392] - [block] block: use req_op() to maintain consistency (Ming Lei) [1741392] - [fs] blkcg, writeback: dead memcgs shouldn't contribute to writeback ownership arbitration (Ming Lei) [1741392] - [block] blkcg: blkcg_activate_policy() should initialize ancestors first (Ming Lei) [1741392] - [block] blkcg: perpcu_ref init/exit should be done from blkg_alloc/free() (Ming Lei) [1741392] - [block] blkcg: update blkcg_print_stat() to handle larger outputs (Ming Lei) [1741392] - [block] block: bio: Use struct_size() in kmalloc() (Ming Lei) [1741392] - [block] block: genhd: Use struct_size() helper (Ming Lei) [1741392] - [block] block: null_blk: fix race condition for null_del_dev (Ming Lei) [1741392] - [block] blk-mq/debugfs: Fix improper print qualifier (Ming Lei) [1741392] - [block] loop: Don't change loop device under exclusive opener (Ming Lei) [1741392]- [documentation] timekeeping.txt: Correct maxCount of n-bit binary counter (Jaroslav Kysela) [1738610] - [sound] ALSA: clk: Add (devm_)clk_get_optional() functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: uapi: align comments with firmware files (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: rename SOUNDWIRE to ALH (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: add ALH parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: remove SPDX "WITH Linux-syscall-note" from kernel-space headers again (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: fe_compr can be bit field (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: fixup for_each_card_links() macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Define a set of DAPM pre/post-up events (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: use bit field for bus_control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple_card_utils.h: care NULL dai at asoc_simple_debug_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: remove an unused field from struct hda_codec (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Avoid polluting led_* namespace (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add Hiby device family to quirks for native DSD support (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Update DSD support quirks for Oppo and Rotel (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: DSD auto-detection for Playback Designs (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: remove some dead code (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix possible NULL dereference at create_yamaha_midi_quirk() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Clean up check_input_term() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Remove superfluous bLength checks (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Unify the release of usb_mixer_elem_info objects (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Simplify parse_audio_unit() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: More validations of descriptor units (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Check mixer unit bitmap yet more strictly (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix memory leak at line6_init_pcm() error path (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add implicit fb quirk for Behringer UFX1604 (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix a stack buffer overflow bug in check_input_term (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix an OOB bug in parse_audio_mixer_unit (Jaroslav Kysela) [1738610] - [sound] ALSA: hiface: fix multiple memory leak bugs (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add Pioneer DDJ-SX3 PCM quirck (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Skip bSynchAddress endpoint check if it is invalid (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix PCM device order (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Unify audioformat release code (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix gpf in snd_usb_pipe_sanity_check (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Scarlett Gen 2 mixer interface (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: sizeof (byte) is always 1, use that fact. (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix a typo (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix wrong altsetting for LINE6_PODHD500_1 (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix Line6 Helix audio format rates (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix parse of UAC2 Extension Units (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix write on zero-sized buffer (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix sign unintended sign extension on left shifts (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Sanity checks for each pipe and EP types (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Enable .product_name override for Emagic, Unitor 8. (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Use container_of() (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Drop superfluous timer helper function (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: variax: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: podhd: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: pod: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Assure canceling delayed work at disconnection (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 33 (Jaroslav Kysela) [1738610] - [sound] ALSA: sparc: Mark expected switch fall-throughs (Jaroslav Kysela) [1738610] - [sound] ALSA: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: txx9: txx9aclc-generic: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: osk5912: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap3pandora: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: n810: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Fix slot mask settings when using multiple AXRs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Set unused serializers as INACTIVE (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Fix SDMA users not providing channel names (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Support for auxclk-fs-ratio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: ams-delta: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: pass volume min/max linear value to FW (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ignore unrecoverable CTX_SAVE IPC errors at suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Add earpiece (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun4i-codec: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: spdifrx: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: dfsdm: add 16 bits audio record support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add cpu_dai_name for DAIs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add min/max step for volume_table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sof: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: clarify operator precedence (Jaroslav Kysela) [1738610] - [sound] ALSA: ASOC: SOF: ipc: prevent logging trace messages (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add new macro hstream_to_sof_hda_stream() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: make sure RUN bit setting to 0 during clear stream status (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: fix a deadlock with bus->reg_lock (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: modify stream interrupt handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: save handle to sdev in sof_intel_hda_stream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove misleading error trace from IRQ thread (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: dont wake dsp up in kcontrol IO (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: compress: Fix memory leak from snd_soc_new_compress (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sh: sh7760-ac97: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: ssiu: tidyup SSI_MODE1/2 settings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: fixup mod ID calculation in rsnd_ctu_probe_ (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: add missing pin sharing with SSI9 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sh: migor: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tobermory: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: speyside: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994pcm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8580: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_spdif: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smartq_wm8987: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_uda134x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec_tlv320aic23: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec_hermes: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: rx1950_uda1380: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: fix a double-free issue for cpu_dai (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: fix an use-after-free issue for codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: lowland: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: littlemill: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: jive_wm8750: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: h1940_uda1380: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: bells: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip-max98090: Remove MICBIAS as supply of input pin IN34 (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: rockchip: rockchip_max98090: Enable MICBIAS for headset keypress detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rk3399_gru_sound: Support 32, 44.1 and 88.2 kHz sample rates (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: pdm: select CONFIG_RATIONAL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: Fix oops with multiple DAI links (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: tosa: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: hx4700: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: kernel: fix typos and some coding style in comments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Add missing Slimbus0 audio route (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: zylonite: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: z2: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: ttc-dkb: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: spitz: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: pxa2xx-ac97.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: poodle: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: palm27x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: mioa701_wm9713: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: magician: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: imote2: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: em-x270: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e800_wm9712: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e750_wm9705: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e740_wm9705: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: corgi: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: brownstone: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-toddr: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-toddr: expose all 8 inputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: tdmout: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdmout: right_j is not supported (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: tdmin: expose all 16 inputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdmin: right_j is not supported (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm: fix sample clock inversion (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm: consistently use SND_SOC_DAIFMT defines (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: require regmap mmio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: free reset on device removal (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: add reset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-spdifout: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-spdifin: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-pdm: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-frddr: expose all 8 outputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-frddr: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-fifo: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5676: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5514: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt6797-mt6351: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701-wm8960: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701-cs42448: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Add missing newline at end of file (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: jz4740: qi_lb60: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 239 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Fix incorrect capture position reporting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Fix NULL ptr dereference when unloading clk dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Don't return failure on machine driver reload (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Do not disable FW notifications (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof_rt5682: use GFP_KERNEL instead of GFP_ATOMIC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: correct naming for dmic16k (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof_rt5682: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for Irbis NB41 netbook (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: add BE dailink for dmic16k (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add MCLK support for BYT platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_rt286: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_nau88l25_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_common: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5660: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: kbl_da7219_max98927: add dai_trigger function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: haswell: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_nocodec: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_da7213: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_cx2072x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: byt-rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: byt-max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt_rt298: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: broadwell: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bdw-rt5677: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix use-after-free in graph_for_each_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: add missing const at graph_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: phycore-ac97: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card-utils: care no Platform for DPCM (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix use-after-free in graph_dai_link_of_dpcm() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix an use-after-free in graph_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: wm1133-ev1: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: pcm030-audio-fabric: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: mx27vis-aic32x4: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-mc13783: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: mpc8610_hpcd/p1022_ds/p1022_rdk: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: eukrea-tlv320: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: efika-audio-fabric: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm_adsp: Allow bus error handler to be called directly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm_adsp: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: remove multiple defines. (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: add irqflag IRQF_ONESHOT flag (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: Fix misuse of GENMASK macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic31xx: suppress error message for EPROBE_DEFER (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tas571x: Fix -Wunused-const-variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix charge pump source assignment (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix of unmute outputs on probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: add ADC mute control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Improve VAG power and mute control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix definition of VAG Ramp Control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5682: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677-spi: Rename driver to differentiate from main codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5665: remove redundant assignment to variable idx (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5514-spi: don't use snd_soc_lookup_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: simplify the EFUSE read function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Remove executable attribute from source files (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: add silence detection and manual PDB control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Convert headers to SPDX (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: fix DC calibration offset not applying (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Relocate my e-mail to .com domain zone (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nau8825: fix fake interruption when booting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nau8822: support master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: soc: codecs: mt6358: change return type of mt6358_codec_init_reg (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: msm8916-wcd-digital: Add sidetone support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98383: fix i2c probe failure (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 496 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hdmi: report codec link up/down status to bus (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec: hdac_hdmi: fix pin connections at cvt enable (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 463 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: mark PM function as __maybe_unused (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: use mdelay for sdmode-delay (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: avoid speaker pop when playback startup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Fix MFREQ selection issue for async mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cros_ec_codec: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4118: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: spi: AD ASoC: declare missing of table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ab8500: add range to usleep_range (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: snappercl15: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: simone: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: ep93xx-i2s.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: edb93xx: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: bcm: cygnus-pcm: Unneeded variable: "ret". (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: psc-i2s.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: db1200: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: db1000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9g20_wm8731: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: mikroe-proto: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-wm8904: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-pdmic: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-pcm-dma.c: use devm_snd_dmaengine_pcm_register() (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-classd: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp-rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp-da7219-max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 200 (Jaroslav Kysela) [1738610] - [sound] ALSA: ps3: Remove Unneeded variable: "ret" (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 277 (Jaroslav Kysela) [1738610] - [sound] ALSA: rme9652: Unneeded variable: "result". (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 274 (Jaroslav Kysela) [1738610] - [sound] ALSA: hdspm: Fix single speed ADAT capture and playback with RME HDSPe AIO (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 264 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 404 (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es - Remove set but not used variables 'orun_mask, urun_mask' (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es: Remove unneeded variable err (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es - add support for LX6464ESe pci express variant (Jaroslav Kysela) [1738610] - [sound] ALSA: ice1712: Check correct return value to snd_i2c_sendbytes (EWS/DMX 6Fire) (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 29 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 46 (Jaroslav Kysela) [1738610] - [sound] ALSA: emu10k1: Remove unneeded variable "change" (Jaroslav Kysela) [1738610] - [sound] ALSA: echoaudio: Replace kmalloc + memcpy with kmemdup (Jaroslav Kysela) [1738610] - [sound] ALSA: pci: echoaudio: remove variable which is a constant (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 364 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 (Jaroslav Kysela) [1738610] - [sound] ALSA: cs4281: remove redundant assignment to variable val and remove a goto (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 116 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 456 (Jaroslav Kysela) [1738610] - [sound] ALSA: au88x0: Remove unneeded variable: "changed" (Jaroslav Kysela) [1738610] - [sound] ALSA: asihpi: Remove unneeded variable change (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 88 (Jaroslav Kysela) [1738610] - [sound] ALSA: ac97: remove unused variable 'snd_ac97_controls_master_mono' (Jaroslav Kysela) [1738610] - [sound] ALSA: dmasound_atari: Mark expected switch fall-through (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 176 (Jaroslav Kysela) [1738610] - [sound] ALSA: i2c: ak4xxx-adda: Fix a possible null pointer dereference in build_adc_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: isa/wavefront: remove redundant assignment to pointer bptr (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 370 (Jaroslav Kysela) [1738610] - [sound] ALSA: sb: remove redundant assignment to variable result (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: hda: Add codec on bus address table lately" (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Unexport a few more stuff (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Drop export of snd_hdac_bus_add/remove_device() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add codec on bus address table lately (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: readl/writel need linux/io.h (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: intel-nhlt: handle NHLT VENDOR_DEFINED DMIC geometry (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: move parts of NHLT code to new module (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix 1-minute detection delay when i915 module is not available (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix a headphone detection issue when using SOF (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: fix: lock reg_lock before calling snd_hdac_bus_update_rirb (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: add polling mode in snd_hdac_bus_get_response (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sdm845: remove unneeded semicolon (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dmaengine: Replace strncpy() with strscpy_pad() for pcm->name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: remove redundant use of ret variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: Add an op to set callback function for plug event (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_unbind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_unbind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_bind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_link_dais() next to soc_remove_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_probe_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add new soc_link_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_dai() next to soc_remove_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_remove_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_remove_link_components() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_probe_link_components() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1305: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: simple-card-utils: set 0Hz to sysclk when shutdown (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: ignore 0Hz sysclk (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: make two arrays static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Use regmap_multi_reg_write() when initializing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Reset used registers at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Group register initialization at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Fix memory corruption on BE 64b systems (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: support fixed and variable both clock rates (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix redundant codes of clock (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: add DT-bindings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dmaengine: Make the pcm->name equal to pcm->id if the name is not set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix COMPILE_TEST error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Include link-name in error messages (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Fix NULL pointer in of parser (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Mark links as nonatomic (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add comment to jack at soc_remove_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf-audio: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ep93xx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: add clock control of MCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph: indicate rebind issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: indicate rebind issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: fix an use-after-free in simple_for_each_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: fix an use-after-free in simple_dai_link_of_dpcm() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for cpu (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_link_components() position (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add snd_soc_dapm_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: dapm related setup at one place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_component() position (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_rtd_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix space issues (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove forward declaration of headset_init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move headset jack to card-specific storage (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move private structure (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF/Intel: fix selection of SND_INTEL_NHTL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: broadwell: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: haswell: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Haswell: Adjust machine device private context (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: Do not fail if the dai_set_sysclk returns -ENOTSUPP (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: edma-pcm: Fix for legacy dma_slave_map based channel lookup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-i2s: Add S32_LE as support format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-i2s: Move the XSYNCERR workaround to .prepare callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Baytrail: Fix implicit fallthrough warning (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_ssi: Fix clock control issue in master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: Fix primary interpolator max rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix tdm out data is valid on rising edge (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: tdm hw support tdm out and 8ch i2s out (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel_ssc_dai: implement left-justified data mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel_ssc_dai: rework DAI format configuration (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: enable SOC_SSC_PDC and SOC_SSC_DMA in Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Force suspend/resume during system suspend/resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix tdm out data align issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: add mutex protection to set_fmt/set_tdm_slot (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix inverted L/R of headphone mixer volume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix headphone mixer volume table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Release topology when we are done with it (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove memory available check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove MCPS available check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove static table index when parsing topology (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Print module type instead of id (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: NHLT: Fix debug print format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Expose snd_soc_dapm_new_control_unlocked properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: fix memory leaks on sm, se and sbe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: Consolidate and fix asoc_tplg_dapm_widget_*_create flow (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: Consolidate how dtexts and dvalues are freed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: fix modern dai link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use correct function to access iomem space (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix an is IS_ERR() vs NULL check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i: Revert A83t description (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix return value check in imx8_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove unused DAPM-related variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: Revert initial A83t support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmix: register the card on a proper dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Make some functions static (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: rename soc_post_component_init() to soc_rtd_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: initialize list at one place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: fix get control data return type and arguments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: initialize component list (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: use for_each_component_dais() at remove_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_cleanup_card_resources() become void (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add NOTE to snd_soc_rtdcom_lookup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use device_register() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: switch tdm pins gpio function when playback on or off (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701: Fix -Wunused-const-variable warnings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8988: fix typo in wm8988_right_line_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx: Add i.MX8 HW support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add OF DSP device support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: AMD: Fix Kconfig warning without GPIOLIB (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add support for DSP formats (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Replace call to params_width by local variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use the actual format width instead of an hardcoded one (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use the physical / slot width for the clocks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add support for TDM slots (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove unneeded dai_link check from snd_soc_remove_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: merge snd_soc_initialize_card_lists() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for imx8qm (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Fix simultaneous capture and playback in master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Wait for RX/TX RDY only if controller is running (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Fix unprepare of GCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Support more channels (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Pass the channels number as an argument (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Remove duplicated quirks structure (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the LRCK period on A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix MCLK Enable bit offset on A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix WSS and SR fields for the A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the LRCK polarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix LRCK and BCLK polarity offsets on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: RX and TX counter registers are swapped (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the MCLK and BCLK dividers on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use module clock as BCLK parent on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Move the format configuration to a callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Move the channel configuration to a callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Rework MCLK divider calculation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Replace call to params_channels by local variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Switch to devm for PCM register (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Register regmap and PCM before our component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8904: implement input mode select as a mux (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8904: fix typo in DAPM kcontrol name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add all Chromebooks that need pmc_plt_clk_0 quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: Fix double reset assersion when transitioning to suspend state (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: initial support for Intel ALH DAI type (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: Add dummy support for i.MX8 DAIs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmux: Add driver suspend and resume to support MEGA Fast (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for EHL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for Tiger Lake (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Add Cometlake machine driver support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Move pcm_mutex up to card level from snd_soc_pcm_runtime (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: 88pm860x: remove unused variables 'pcm_switch_controls' and 'aif1_mux' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42l56: remove unused variable 'adc_swap_enum' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8328: remove unused variable 'pga_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic31xx: remove unused variable 'cm_m_enum' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic23: remove unused variable 'tlv320aic23_rec_src' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: remove unused variable 'dac_vol_tlv' and 'adc_vol_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98371: remove unused variable 'max98371_noload_gain_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42l73: remove unused variables 'vsp_output_mux' and 'xsp_output_mux' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Print constant literals from format specifier (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt6358: add delay after dmic clock on (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: remove unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: remove unused variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt2701: remove unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: Fix -Wunused-const-variable warning (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8737: Fix copy-paste error in wm8737_snd_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs4349: Use PM ops 'cs4349_runtime_pm' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8328: Fix copy-paste error in es8328_right_line_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: hsw: remove i386 build warning w/ size_t argument (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Fix typos in ti/Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: Set period size to 240 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Allow reconfiguration of tdm_slots and slot_width (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Retain the independence of DAC and ADC side of the codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: make headset codec optional (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max9850: remove unused variable 'max9850_reg' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98926: remove two unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove legacy style of aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun4i-codec: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: speyside: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: support snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hdmi: Offload dapm update at jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: byt: Refactor fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: bdw: Use generic function for fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Remove call to snd_sof_dsp_mailbox_init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ml26124: remove unused variable 'ngth' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt6351: remove unused variable 'mt_lineout_control' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: skl_hda_dsp_common: create HDMI jack kctl (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tscs454: remove unused variable 'PLL_48K_RATE' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: fix module_put() warning in soc_cleanup_component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: dai_link check under soc_dpcm_debugfs_add() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: define soc_dpcm_debugfs_add() for non CONFIG_DEBUG_FS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for card->deferred_resume_work (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove unneeded list_empty() check for snd_soc_try_rebind_card() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: call snd_soc_dapm_debugfs_init() at soc_init_card_debugfs() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_add_card_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_dapm_add_routes() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_add_component_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hda: fix page fault issue by removing race (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Direct MMIO accesses (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for imx7ulp/imx8mq (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: mark regmap as fast_io (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: large_config_get overhaul (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Implement set_bclk_ratio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for SAI new version (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: derive TX FIFO watermark from FIFO depth (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: add of_match data (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Update Tx/Rx channel enable mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add registers definition for multiple datalines (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_dapm_new_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: reuse rtdcom at snd_soc_rtdcom_add() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use for_each_card_links_safe() at snd_soc_find_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: check return value of snd_soc_add_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add comment for for_each_xxx (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: set component->debugfs_root NULL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add a flag for the R0 calibration test (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add R0 temperature and TDM1 ADC2DAT Swap control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: don't call clk_get_rate() under atomic context (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98373: Remove executable bits (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pcm_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pcm_new() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_mmap() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_page() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_copy_user() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_ioctrl() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pointer() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_set_bias_level() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_stream_event() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_seq_notifier() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_of_xlate_dai_name() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_of_xlate_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_remove() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_is_suspended() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_suspend() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_hw_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_hw_params() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_prepare() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_close() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_open() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_get/put() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: add soc-component.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_fill_silence() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_rtdcom_copy_kernel() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_rtdcom_ack() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp3x: use dma address for acp3x dma driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp3x: use dma_ops of parent device for acp3x dma driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: zx-tdm: remove redundant assignment to ts_width on error return path (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: SoC: skylake: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: fill some of the runtime stream parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: remove ephemeral variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: create pcm for codec2codec links as well (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: use common NHLT module (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Merge skl_sst and skl into skl_dev struct (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Limit large_config_get to single frame (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix use of potentially uninitialized variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Update request-reply IPC model (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Common: Fix NULL dereference in tx_wait_done (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix race condition in IPC rx list (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 490 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Read HIPCT extension before clearing DONE bit (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: move NHLT header to common directory (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: psc-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: psc-ac97: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: aio-dma: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: evea: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: inno_rk3036: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: jz4740: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mmp-sspa: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: jz4725b: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: msm8916-wcd: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: sai: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun8i-codec: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun8i-codec-analog: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: xlnx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs4271: Fix a typo in the CS4171_NR_RATIOS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Mark expected switch fall-throughs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: xtfpga-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: spear: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs-saif: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: bcm2835-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_audmix: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmux: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt6797: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt8173: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ep93xx-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra20_das: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: override codec2codec params (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98373: add 88200 and 96000 sampling rate support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Incorrect SR and WSS computation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: fix missing return of error return code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Support for correct symmetric sample bits (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Correct slot_width posed constraint (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: Fix mono capture (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix some acpi vs apci typo in somme comments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Fix clk PDIR handling for i2s master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: deal with params when necessary (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: name link using stream direction (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: run callbacks in order (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: Add uda1334 codec driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Add RT1308 amplifier driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Makefile - fix the top-level kernel module names (add snd- prefix) (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Improve serializer handling in multi AXR setups (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for RIGHT_J format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Cleanup skl_module_cfg declaration (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Make MCPS and CPS params obsolete (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Combine snd_soc_skl_ipc and snd_soc_skl (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Reset pipeline before its deletion (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Strip T and L from TLV IPCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Properly cleanup on component removal (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Initialize lists before access so they are safe to use (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Add function to cleanup debugfs interface (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use recommended SDxFMT programming sequence (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Switch to modern UUID API (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-pcm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8955: Fix a typo in 'wm8995_pll_factors()' function name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Fail card instantiation if DAI format setup fails (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: move snd_soc_dai_stream_valid() to soc-dai.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use existing snd_soc_dai_digital_mute() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compress_new() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_remove() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_suspend() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_delay() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_bespoke_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_prepare() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_shutdown() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_startup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_hw_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: mv soc_dai_hw_params() to soc-dai (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: add soc-dai.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Return -ENOTSUPP from set_channel_map() if no operation provided (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: support dai_link with platforms_num != 1 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: defer card registration if codec component is missing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use soc_find_component() at snd_soc_find_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use soc_find_component() at snd_soc_find_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_find_component() uses snd_soc_dai_link_component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_find_component() uses snd_soc_is_matching_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_find_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: call snd_soc_unbind_card() under mutex_lock; (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: allow no Platform on dai_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove legacy style dai_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: add sound dai_link connection macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: Support hw_free() callback at DAI level (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5665: Fix a typo in the name of a function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Remove dev_err() usage after platform_get_irq() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: recover the channel swap after xrun (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Wrap some operations to be functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Add pm runtime function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ssp: BCLK delay parameter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add DMIC token for unmute gain ramp time (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix stream id setting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix link DMA config (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reset link DMA state in prepare (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reserve host DMA channel for hostless streams (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: assign link DMA channel at run-time (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: initial support for Elkhart Lake (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: initial support for Tiger Lake. (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Use generic function for fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: make sure DMA is start/stop by read the RUN bit (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix HDA direct MMIO access (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated clear WAKESTS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: clear stream status and wakests properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add function for hda stop chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: set position buffer in init chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: correct ROM state mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_window_offset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_mailbox_offset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add runtime idle callback (Jaroslav Kysela) [1738610] - [sound] ALSA: docs: timers: convert docs to ReST and rename to *.rst (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use SOF defined init chip in resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Enable jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce ifdef usage for hda (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: remove unused state variable in suspend function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: implement runtime idle for CNL/APL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the defined stop chip in suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the SOF defined ppcap functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: release link DMA for paused streams during suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: loader: Don't ignore SRAM block types (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: loader: Use the BAR provided by FW (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_bar_index ops (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: increase default IPC timeouts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: use timeout configured at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: add ALH support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: use common code to send PCM_FREE IPC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: reset DMA state in prepare (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: couple host and link DMA during FE hw_free (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pci: mark last_busy value at runtime PM init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fixup HDaudio topology name with DMIC number (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: Add missing include file hdac_hda.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: Initialize hdaudio bus properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix MSI handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Initialize HDA controller after i915 init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add a parameter to disable MSI (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated include from hda.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: disallow building without CONFIG_PCI again (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: intel: extend IPC dump information (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Allow all channels in case of parallel DIN/DOUT setup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Fix a typo in the name of a constant (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Add support for multi DIN/DOUT with TDM slots parameter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Rename min_frame_size to slot_width (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: add dmic dapm widget and route (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: add dependency to dmic driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Match Product Family instead of product (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Invalidate only paths reachable for a given stream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: use set_get_data in process load (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Add compatible string for imx6ull (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: keep analog power register at SND_SOC_BIAS_OFF (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Remove magic number register writes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Revert remove superfluous set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: remove superfluous set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: depop stereo dac (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: handle concurrent interrupts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: clear interrupts by polarity flip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: move jack-detect init to i2c probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: fall back to DT prop names on error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Add component driver name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: use more of the volume range from DACs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: remove w90x900/nuc900 platform drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nuc900: nuc900-audio: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add dmic dapm widget to support dmic PCM (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add for_each_xxx macro for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: remove useless check on codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: fix null pointer dereference in clean up (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sst: fix kmalloc call with wrong flags (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Fix deadlock in snd_soc_instantiate_card() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Remove erroneous soc_cleanup_card_resources() call (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use snd_soc_dai_link_component for CPU (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: move DAI pre-links initiation to snd_soc_instantiate_card (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: fix warning reported by kbuild test robot and minor issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Mark format integer literals as unsigned (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Tell codec that jack is being removed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Change SR and WSS computation (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: rt274: Fix internal jack assignment in set_jack callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 395 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 340 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add offset to RX channel select (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix sun8i tx channel offset mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98090: remove 24-bit format support if RJ is 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: da7219: Fix build error without CONFIG_I2C (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Fix COMPILE_TEST build error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Implement set_tdm_slot callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: Make some symbols static (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: remove set but not used variable 'is_right_j ' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add RT1011 amplifier driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: debug: add new debugfs entries for IPC flood test (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: Introduce SOF_IPC_GLB_TEST_MSG IPC command (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: uapi: mirror firmware changes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: send time stamp to FW for alignment (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: bump to ABI 3.6 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: soundwire: add initial soundwire support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add support for mux/demux component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix DSP oops definitions in FW ABI (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ipc: don't check for HIPCCTL register value (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: re-enable IPC IRQ at end of handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: read all IPC registers first (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: re-enable IPC IRQ at end of handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: move code around for clarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: read all IPC registers first (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Do not send cmd via SHIM register (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add mode parameter for snd_sof_debugfs_buf_item (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ASoC: core: use component driver name as component name" (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: sai: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: replace fw ready bitfield with explicit bit ordering (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Baytrail: add quirk for Aegex 10 (RU2) tablet (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: fix typos of SPDX-License-Identifier (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 162 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the defined ppcap functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add COMPILE_TEST for PCI options (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Add COMPILE_TEST for new machine drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: remove dependency on asm/platform_sst_audio.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoc: fix sound/soc/intel/skylake/slk-ssp-clk.c build error on IA64 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: use common helpers to detect CPUs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Add missing voice activation register definitions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: use component driver name as component name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Fix build error with CONFIG_GPIOLIB is not set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix undefined references with Baytrail-only support (Jaroslav Kysela) [1738610] - [sound] ALSA: wcd9335: fix a incorrect use of kstrndup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-codec: fix first delay on Speaker (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Add support for H6 SoC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Add TX fifo bit flush quirks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Move quirks to the top (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: fix spelling mistake "configued" -> "configured" (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: fix integer overflow on unsigned int multiply (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: force end-of-file for debugfs trace at suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: trace: remove code duplication in sof_wait_trace_avail() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Use struct_size() in kmemdup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: Show KConfig entry (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: Use struct_size() helper (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: remove redundant assignment to pulse_len (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix the hda init chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: fix a race, leading to IPC timeouts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: control: correct the copy size for bytes kcontrol put (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: remove warning - initialize workqueue on open (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: clear hw_params_upon_resume flag correctly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: fix error handling with the probe workqueue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: remove snd_soc_unregister_component in case of error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: remove DSP after unregistering machine driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: fixup references at soc_cleanup_card_resources() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Force polling mode on CFL and CNL (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 119 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 64 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: lock client_mutex while removing link components (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: Restore original configuration of DAI format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qdsp6: q6core: Use struct_size() in kmemdup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use struct_size() helper (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Use struct_size() in krealloc() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: remove unnecessary inclusion of skl.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move card registration to the end of probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove unused DAPM pins (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: enable dev runtime suspend and resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Add machine driver for CX2072X on BYT/CHT platforms (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Add support for Conexant CX2072X CODEC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: Unify the supported input and output rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: fixup try_module_get()/module_put() timing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add newline for clarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: fix compile error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: fix compile error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix AMP quirk support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix for codec button mapping (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 4 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 3 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: Fix configuration of DAI format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: WARN() is not related to component->driver->probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: move pcm_new from snd_soc_component_driver to snd_soc_dai_driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: Remap button control-function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: enable IIR filter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rename functions that pollute the simple_xxx namespace (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: soc-acpi: Fix machine selection order (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677-spi: Handle over reading when flipping bytes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dpm: fixup DAI active unbalance (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic3x: Add support for high power analog output (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Add reset gpio handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Add regcache mask dirty (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: replace the process_option table with function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: Fix the issue about unsupported rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: add g12a tohdmitx control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: add basic codec-to-codec link support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: allow muxes to force a disconnect (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: set link name based on link node name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: set data align (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: add memory interface data align (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4458: rstn_control - return a non-zero on error only (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: re-introduce mutex locking (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: add soc_pcm_components_open() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: add missing cpu_dai->rate = 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: do cpu_dai related operation at same place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use soc_find_component() at snd_soc_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_component_to_node() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup soc_bind_dai_link() comment balance (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use codec_dais on soc_bind_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use i on snd_soc_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: request GPIO when device get probed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ICL add Icelake chip info struct (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ICL: add Icelake SSP count (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: remove runtime PM calls during pcm open/close (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Add Cometlake PCI IDs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add Comet Lake PCI IDs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: Reporting accurate hw_ptr for acp3x dma (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: BE dai needs prepare when pause release after resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4458: add return value for ak4458_probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC : cs4265 : readable register too low (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix error in verbose ipc command parsing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix race in FW boot timeout handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: nocodec: fix undefined reference (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-acpi: fix implicit header use of module.h/export.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Move clock operation to PM runtime (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: i2s: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove ops dependency on the dai id (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove reference to the dai drivers in the private data (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove reference to the current substream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove function name debug traces (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Jaroslav Kysela) [1738610] - [sound] ALSA: xen-front: fix unintention integer overflow on left shifts (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - PCI quirk for Medion E4254 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Apply AMD controller workaround for Raven platform (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix alienware headset mic (Jaroslav Kysela) [1738610] - [sound] ALSA: Add Acer Aspire Ethos 8951G model quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi: remove redundant assignment to variable pcm_idx (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add quirk for HP Pavilion 15 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix overridden device-specific initialization (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix potential endless loop at applying quirks (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Allow runtime PM for controller if component notifier is used (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Blacklist PC beep for Lenovo ThinkCentre M73/93 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Check beep whitelist before assigning in all codecs (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132 - Add new SBZ quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fixes inverted Conexant GPIO mic mute led (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Define a fallback_pin_fixup_tbl for alc269 family (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Expand pin_match function to match upcoming new tbls (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Drop unsol event handler for Intel HDMI codecs (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a generic reboot_notify (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Let all conexant codec enter D3 when rebooting (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/sigmatel - remove unused variable 'stac9200_core_init' (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add quirk for HP Envy x360 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Set fifo_size for both playback and capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a quirk model for fixing Huawei Matebook X right speaker (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add model description for Chrome headset button quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix a typo in model documentation (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Inform too slow responses (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Apply workaround for another AMD chip 1022:1487 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Remove page allocation redirection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Workaround for crackled sound on AMD controller (1022:1457) (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Don't override global PCM hw info flag (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add support of Zhaoxin controller (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/intel: stop probe if DMICS are detected on Skylake+ platforms (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Show the fatal CORB/RIRB error more clearly (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a conexant codec entry to let mute led work (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix intermittent CORB/RIRB stall on Intel chips (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Make hdac_device device-managed (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Flush interrupts on disabling (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Allow audio component for AMD/ATI and Nvidia HDMI (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Don't report spurious jack state changes (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Optimize resume for codecs without jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Don't resume forcibly i915 HDMI/DP codec (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Fix i915 reverse port/pin mapping (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Remove duplicated define (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fixed Headphone Mic can't record on Dell platform (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Simplify snd_hdac_refresh_widgets() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix widget_mutex incomplete protection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132 - remove redundant assignment to variable 'changed' (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Change front mic location for Lenovo M710q (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek: Add quirks for several Clevo notebook barebones (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: hda/realtek - Improve the headset mic for Acer Aspire laptops" (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add Elkhart Lake PCI ID (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: fix a mask for unsolicited event tags (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hda: fix unbalanced codec dev refcount for HDA_DEV_ASOC (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Update headset mode for ALC256 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: move polling_mode flag to struct hdac_bus (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: assign polling_mode after azx_bus_init (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Improve the headset mic for Acer Aspire laptops (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Force polling mode on CNL for fixing codec communication (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Enable micmute LED for Huawei laptops (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Set default power save node to 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Check headset type by unplug and resume (Jaroslav Kysela) [1738610] - [sound] ALSA: hdac: Fix codec name after machine driver is unloaded and reloaded (Jaroslav Kysela) [1738610] - [sound] ALSA: hdac: fix memory release for SST and SOF drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 371 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier for missed files (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier for more missed files (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 130 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 295 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 273 (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix wrong packet parameter for Alesis iO26 (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: check intermediate state of clock status and retry (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: handle error code when getting current source of clock (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: remove WARN_ON() at destruction of AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: add note for FE-8 (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: add support for MOTU 4pre (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix isoc cycle count to which rx packet is scheduled (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix error path for initialization of stream structures (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix to handle correct stream for PCM playback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix NULL pointer dereference to unused stream structure (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: localize kernel APIs to start/stop each AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for bus reset handler (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for initialization/destruction of AMDTP streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to start AMDTP streams in AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to add AMDTP stream into AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to stop a couple of AMDTP streams in AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add AMDTP domain structure to handle several isoc contexts (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: more code refactoring for MOTU data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: process payload of isoc context according to packet descriptors (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for FF data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for MOTU data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for TASCAM data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for DOT data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for AM824 data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass packet descriptor to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to process context payloads (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to process PCM substream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use packet descriptor for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use packet descriptor for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add list of packet descriptor (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass no syt information to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add syt_override member for some protocols (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: operate data block counter in top level of processing for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: operate data block counter in top level of processing for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass data block counter to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass data block count as an argument to tracepoints event (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: obsolete ctx_data.tx.first_dbc with CIP_UNALIGHED_DBC flag (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for local variables (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for post operation to data block counter (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for error path of parser for CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix different data block counter between probed event and transferred isochronous packet (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix initial value of data block count for IR context without CIP_DBC_IS_END_EVENT (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib/fireface: fix initial value of data block counter for IR context with CIP_NO_HEADER (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix invalid length of rx packet payload for tracepoint events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib/fireworks: fix miss detection of received MIDI messages (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix to process MIDI conformant data channel for AM824 format (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: cache next data_block_counter after probing tracepoints event for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify common tracepoints for both direction (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events" (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: minor code refactoring to stop isochronous context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: rename helper functions to begin/finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for condition to stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: add helper function to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify midi callback function (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify the count of subscriber for packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: change the range of critical section for stream data in PCM.hw_free callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring for error path to start duplex stream (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: change the range of critical section for stream data in PCM.hw_free callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring for callback function to rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code rafactoring for callback functions to PCM interface (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix compiler warning due to returning uninitialized value (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: configure stream parameter in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: configure packet format in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: unify substreams counter (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: rename helper functions for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: expand stop procedure for packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: break packet streaming at bus-reset handler (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: start duplex streams if supported (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: set packet parameter according to current configuration (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: code refactoring for stop condition of packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: don't set XRUN in stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: configure stream parameters in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: configure sampling transfer frequency in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for pcm.hw_params/hw_free (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for rawmidi.open/close (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: unify substream counter (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring to initialize/destroy stream data (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: obsolete useless member of private structure (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: don't set XRUN in stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: configure sampling transfer frequency in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring to stop packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: simplify error path to begin streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: refactoring to move timing of registration for isochronous channel (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: allow PCM capture for Stanton SCS.1m (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: minor code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in latter protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in ff400 protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in ff800 protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: add protocol-specific operation to allocate isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: minor code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: update isochronous resources when starting packet streaming after bus reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for release of isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for reservation of isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for registration of isochronous channels (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: fix destruction of data for isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: Use ULL suffixes for 64-bit constants (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: refactoring to obsolete IR packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: refactoring to obsolete IT packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix data block counter for incoming packet without CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use 8 byte packet header for IT context to separate CIP header from CIP payload (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to queueing packets (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify packet handler for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split helper function to generate CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify packet handler for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use 16 bytes IR context header to separate CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split helper function to check incoming CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: compute pointer to payload buffer in context handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: calculate the length of packet payload in packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use clear name for variable of CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use IT context header to compute cycle count for scheduling packet (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: obsolete macro for header of IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add helper function to cancel context inner callback handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use union for directional parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify tracing events to 'amdtp_packet' event (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use dynamic array for CIP header of tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use the same unit for payload argument in tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add data_blocks/data_block_counter parameter to in_packet/out_packet tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use the same type of argument for CIP header for tracing event (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: add stream format parameters for PreSonus FireStudio (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 102 (Jaroslav Kysela) [1738610] - [sound] ALSA: aoa: onyx: always initialize register read value (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 250 (Jaroslav Kysela) [1738610] - [sound] ALSA: ac97: Fix double free of ac97_codec_device (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier - Makefile/Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: add support for 352.8KHz and 384KHz sample rate (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: Fix potential concurrent access to the deleted pool (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: fix lost wakeup event scenarios in snd_pcm_drain (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Be more restrictive about when a drain is allowed (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Don't allow paritial drain operations on capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Prevent bypasses of set_params (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Fix regression on compressed capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: Fix refcount_inc() on zero usage (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: Break too long mutex context in the write loop (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: fix incorrect order of dest_client/dest_ports arguments (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 372 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 (Jaroslav Kysela) [1738610] - [sound] ALSA: control: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 167 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 151 (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: oss: Use struct_size() helper (Jaroslav Kysela) [1738610]- [tools] selftests/powerpc: Retry on host facility unavailable (Desnes Augusto Nunes do Rosario) [1739770] - [tools] selftests/powerpc: Do not fail with reschedule (Desnes Augusto Nunes do Rosario) [1739770] - [tools] libperf: Warn when exceeding MAX_NR_CPUS in cpumap (Frank Ramsay) [1753332] - [tools] perf header: Replace MAX_NR_CPUS with cpu__max_cpu() (Frank Ramsay) [1753332] - [tools] perf machine: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf session: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf stat: Replace MAX_NR_CPUS with cpu__max_cpu() (Frank Ramsay) [1753332] - [tools] perf svghelper: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf timechart: Refactor svg_build_topology_map() (Frank Ramsay) [1753332] - [tools] perf tools: Increase MAX_NR_CPUS and MAX_CACHES (Frank Ramsay) [1753332] - [crypto] crypto: chelsio - count incomplete block in IV (Jonathan Toppins) [1725813] - [crypto] crypto: chelsio - Fix softlockup with heavy I/O (Jonathan Toppins) [1725813] - [crypto] crypto: chelsio - Fix NULL pointer dereference (Jonathan Toppins) [1725813] - [nvme] nvme-pci: Allow PCI bus-level PM to be used if ASPM is disabled (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI/ASPM: Add pcie_aspm_enabled() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Fix async probe remove race (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix controller removal race with scan work (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-rdma: fix possible use-after-free in connect error flow (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix a possible deadlock when passthru commands sent to a multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-core: Fix extra device_put() call on error path (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-file: fix nvmet_file_flush() always returning an error (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-loop: Flush nvme_delete_wq when removing the port (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: Fix use-after-free bug when a port is removed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: revalidate nvme_ns_head gendisk in nvme_validate_ns (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] Revert "nvme-pci: don't create a read hctx mapping without read queues" (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix multipath crash when ANA is deactivated (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix memory leak caused by incorrect subsystem free (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: ignore subnqn for ADATA SX6000LNP (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix NULL deref for fabrics options (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix regression upon hot device removal and insertion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fc: fix module unloads while lports still pending (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: set the STABLE_WRITES flag when data digests are enabled (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: print a hint while rejecting NSID 0 or 0xffffffff (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: don't use sendpage for SLAB pages (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: do not select namespaces which are about to be removed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: also check for a disabled path if there is a single sibling (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: factor out a nvme_path_is_disabled helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: export I/O characteristics attributes in Identify (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: set physical block size and optimal I/O size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: add delete completion and submission queue to admin cmds tracer (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: fix spelling mistake "spcecific" -> "specific" (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check for NULL return from pci_alloc_p2pmem() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: limit max_hw_sectors based on the DMA max mapping size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't fall back to a 32-bit DMA mask (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't create a read hctx mapping without read queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: make nvme_dev_pm_ops static (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: resolve warnings on RCU usage and sleep warnings (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: fix inconsistent lock state warnings (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI: PM: Skip devices in D0 for (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI: PM: Avoid possible suspend-to-idle issue (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add I/O characteristics fields (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: enable to inject errors into admin commands (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: prepare for fault injection into admin commands (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: introduce target-side trace (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: print result and status in hex format (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: support for fabrics commands in host-side (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: move opcode symbol print to nvme.h (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: do not export nvme_trace_disk_name (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: properly report state change failure in nvme_reset_work (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: clean up nvme_remove_dead_ctrl a bit (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: set the errno on ctrl state change error (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: adjust irq max_vector using num_possible_cpus() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use host managed power state for suspend (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove unnecessary zero for static var (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: introduce nvme_is_fabrics to check fabrics cmd (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fc: add message when creating new association (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove queue_count_ops for write_queues and poll_queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix possible io failures when removing multipathed ns (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: export get and set features (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: add transport discovery change op (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: add support for nvmet discovery_event op (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: remove blk_init_request_from_bio (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: initialize the write priority (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: Fix u32 overflow in the number of namespace list calculation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: add transport discovery change event callback support (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't limit DMA segement size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix data_len to 0 for bdev-backed write_zeroes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: fix queue mapping when queue count is limited (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use blk-mq mapping for unmanaged irqs (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: copy MTFA field from identify controller (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: release namespace SRCU protection before performing controller ioctls (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: merge nvme_ns_ioctl into nvme_ioctl (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: remove the ifdef around nvme_nvm_ioctl (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix srcu locking on error return in nvme_get_ns_from_disk (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: Fix known effects (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Sync queues on reset (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Unblock reset_work on IO failure (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Don't disable on timeout in reset state (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Fix controller freeze wait disabling (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: validate cntlid during controller initialisation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: change locking for the per-subsystem controller list (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: trace all async notice events (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fabrics: remove unused argument (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: add known admin effects to augument admin effects log page (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: init shadow doorbell after each reset (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: mark expected switch fall-through (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: mark nvme_core_init and nvme_core_exit static (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: protect discovery change log event list iteration (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: move command size checks to the core (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check more command sizes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fabrics: check more command sizes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove an unneeded variable initialization (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: unquiesce admin queue on shutdown (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: shutdown on timeout during deletion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: set 0 capacity if namespace block size exceeds PAGE_SIZE (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-rdma: fix a NULL deref when an admin connect times out (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-file: clamp-down file namespace lba_shift (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: include (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: rename nvme_completion instances from rsp to cqe (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-rdma: remove p2p_client initialization from fast-path (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: return a specified error it subsys_alloc fails (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix discover log page when offsets are used (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: never fail double namespace enablement (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: log the error status on Identify Namespace failure (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: tidy up nvme_map_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: add safety check for subsystem lock during nvmet_ns_changed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: only call nvme_unmap_data for requests transferring data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove q_dmadev from nvme_queue (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: merge nvme_free_iod into nvme_unmap_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: move the call to nvme_cleanup_cmd out of nvme_unmap_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove nvme_init_iod (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use a flag for polled queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add a rq_integrity_vec helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add dma_map_bvec helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add a rq_dma_dir helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: use zero-sized array and struct_size() in kzalloc() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove unused nvme_iod member (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: avoid double errno conversions (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: avoid double dereference to convert le to cpu (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix error flow during ns enable (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add proper write zeroes setup for the multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: disable Write Zeroes for qemu controllers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: bring Disconnect into compliance with FC-NVME spec (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add proper discard setup for the multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: remove nvme_ns_config_oncs (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: fix issues with targetport assoc_list list walking (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add get-feature to admin cmds tracer (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-loop: init nvmet_ctrl fatal_err_work when allocate (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: put ns_head ref if namespace fails allocation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: fix cdw10 buffer overrun (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: don't warn on block content change effects (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: update comment to make the code easier to read (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: convert to SPDX identifiers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-lightnvm: convert to SPDX identifiers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: return error from (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: avoid that deleting a controller triggers a circular locking complaint (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: introduce a helper function for controller deletion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: unexport nvme_delete_ctrl_sync() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check kstrtoint() return value in queue_count_set() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix indentation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [lightnvm] lightnvm: simplify geometry (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [powerpc] powerpc/tm: Fix FP/VMX unavailable exceptions inside a transaction (Gustavo Duarte) [1750653] - [powerpc] powerpc/tm: Fix restoring FP/VMX facility incorrectly on interrupts (Gustavo Duarte) [1750653] - [block] block: split .sysfs_lock into two locks (Ming Lei) [1697383] - [block] block: add helper for checking if queue is registered (Ming Lei) [1697383] - [block] blk-mq: don't hold q->sysfs_lock in blk_mq_map_swqueue (Ming Lei) [1697383] - [block] block: don't hold q->sysfs_lock in elevator_init_mq (Ming Lei) [1697383] - [block] block: Remove blk_mq_register_dev() (Ming Lei) [1697383] - [x86] KVM: X86: Fix fpu state crash in kvm guest (Prarit Bhargava) [1737070] - [x86] x86/fpu: Don't use current->mm to check for a kthread (Prarit Bhargava) [1737070] - [x86] x86/fpu: Update kernel's FPU state before using for the fsave header (Prarit Bhargava) [1737070] - [x86] x86/fpu: Use fault_in_pages_writeable() for pre-faulting (Prarit Bhargava) [1737070] - [mm] mm/gup: continue VM_FAULT_RETRY processing even for pre-faults (Prarit Bhargava) [1737070] - [x86] x86/fpu: Fault-in user stack if copy_fpstate_to_sigframe() fails (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Add PKRU value to init_fpstate (Prarit Bhargava) [1737070] - [x86] x86/fpu: Restore regs in copy_fpstate_to_sigframe() in order to use the fastpath (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add a fastpath to copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add a fastpath to __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Defer FPU state load until return to userspace (Prarit Bhargava) [1737070] - [x86] x86/fpu: Merge the two code paths in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Restore from kernel memory on the 64-bit path too (Prarit Bhargava) [1737070] - [x86] x86/fpu: Inline copy_user_to_fpregs_zeroing() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Update xstate's PKRU value on write_pkru() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Prepare copy_fpstate_to_sigframe() for TIF_NEED_FPU_LOAD (Prarit Bhargava) [1737070] - [x86] x86/fpu: Always store the registers in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/entry: Add TIF_NEED_FPU_LOAD (Prarit Bhargava) [1737070] - [x86] x86/fpu: Eager switch PKRU state (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Don't check if PKRU is zero before writing it (Prarit Bhargava) [1737070] - [x86] x86/fpu: Only write PKRU if it is different from current (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Provide *pkru() helpers (Prarit Bhargava) [1737070] - [x86] x86/fpu: Use a feature number instead of mask in two more helpers (Prarit Bhargava) [1737070] - [x86] x86/fpu: Make __raw_xsave_addr() use a feature number instead of mask (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add an __fpregs_load_activate() internal helper (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove user_fpu_begin() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized (Prarit Bhargava) [1737070] - [x86] x86/fpu: Don't save fxregs for ia32 frames in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized usage in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Always init the state in fpu__clear() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove preempt_disable() in fpu__clear() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu__restore() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized usage in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/entry: Remove unneeded need_resched() loop (Prarit Bhargava) [1737070] - [x86] x86/uaccess: Introduce user_access_{save, restore}() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Fix i486 + no387 boot crash by only saving FPU registers on context switch if there is an FPU (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove second definition of fpu in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [net] udp: correct reuseport selection with connected sockets (Paolo Abeni) [1665807] - [net] udp6: add missing rehash callback to udplite (Paolo Abeni) [1665807] - [net] udp: add missing rehash callback to udplite (Paolo Abeni) [1665807] - [net] udp6: prefer listeners bound to an address (Paolo Abeni) [1665807] - [net] udp: prefer listeners bound to an address (Paolo Abeni) [1665807] - [net] sched: fix race between deactivation and dequeue for NOLOCK qdisc (Davide Caratti) [1744397] - [net] check extack._msg before print (Ivan Vecera) [1751279] - [net] report invalid mtu value via netlink extack (Ivan Vecera) [1751279] - [net] report min and max mtu network device settings (Ivan Vecera) [1751279] - [net] failover: change mtu has RTNL (Ivan Vecera) [1751279] - [net] neigh: fix multiple neigh timer scheduling (Lorenzo Bianconi) [1730632] - [net] virtchnl: fix 'Unknown bps' in dmesg for 2.5Gb/5Gb speeds (Ivan Vecera) [1748437] - [net] Add a define for LLDP ethertype (Ivan Vecera) [1748428] - [net] devlink: Add support for direct reporter health state update (Petr Oros) [1746363] - [netdrv] Add IANA_VXLAN_UDP_PORT definition to vxlan header file (Ivan Vecera) [1731347] - [netdrv] Move the definition of the default Geneve udp port to public header file (Ivan Vecera) [1731347] - [net] openvswitch: Add a new action check_pkt_len (Numan Siddique) [1700733]- [pci] PCI: Add pci_dev_id() helper (Myron Stowe) [1735874] - [netdrv] ibmvnic: Warn unknown speed message only when carrier is present (Steve Best) [1749873] - [netdrv] net/ibmvnic: Fix missing { in __ibmvnic_reset (Steve Best) [1749873] - [netdrv] net/ibmvnic: free reset work of removed device from queue (Steve Best) [1749873] - [netdrv] ibmvnic: Do not process reset during or after device removal (Steve Best) [1749873] - [cpufreq] cpufreq: intel_pstate: Show different max frequency with turbo 3 and HWP (Alexander Beregalov) [1752053] - [char] hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable (Prarit Bhargava) [1660796] - [hwtracing] intel_th: pci: Add support for another Lewisburg PCH (Jiri Olsa) [1714486] - [x86] x86/entry/32: Fix ENDPROC of common_spurious (Prarit Bhargava) [1730447] - [x86] x86/irq: Seperate unused system vectors from spurious entry again (Prarit Bhargava) [1730447] - [vfio] vfio/type1: Handle different mdev isolation type (Tarun Gupta) [1498341] - [vfio] vfio/type1: Add domain at(de)taching group helpers (Tarun Gupta) [1498341] - [vfio] vfio/mdev: Add iommu related member in mdev_device (Tarun Gupta) [1498341] - [documentation] ipmb: place it at driver-api and convert to ReST (Tony Camuso) [1752071] - [char] ipmi_si_intf: Fix race in timer shutdown handling (Tony Camuso) [1752071] - [char] ipmi_ssif: avoid registering duplicate ssif interface (Tony Camuso) [1752071] - [char] ipmi: Free receive messages when in an oops (Tony Camuso) [1752071] - [char] ipmi_si: Only schedule continuously in the thread in maintenance mode (Tony Camuso) [1752071] - [char] ipmi_si: Remove ipmi_ from the device attr names (Tony Camuso) [1752071] - [char] ipmi_si: Convert device attr permissions to octal (Tony Camuso) [1752071] - [char] ipmi_si: Rework some include files (Tony Camuso) [1752071] - [char] ipmi_si: Convert timespec64 to timespec (Tony Camuso) [1752071] - [char] Fix uninitialized variable in ipmb_dev_int.c (Tony Camuso) [1752071] - [char] fix platform_no_drv_owner.cocci warnings (Tony Camuso) [1752071] - [char] ipmi: ipmb: don't allocate i2c_client on stack (Tony Camuso) [1752071] - [char] ipmi: ipmb: Fix build error while CONFIG_I2C is set to m (Tony Camuso) [1752071] - [char] Add support for IPMB driver (Tony Camuso) [1752071] - [char] drivers: ipmi: Drop device reference (Tony Camuso) [1752071] - [char] ipmi_ssif: fix unexpected driver unregister warning (Tony Camuso) [1752071] - [char] Add SPDX license identifier - Makefile/Kconfig (Tony Camuso) [1752071] - [char] ipmi_si: use bool type for initialized variable (Tony Camuso) [1752071] - [char] ipmi_si: fix unexpected driver unregister warning (Tony Camuso) [1752071] - [char] ipmi: Remove warning if no slave address is present (Tony Camuso) [1752071] - [char] ipmi:ssif: Only unregister the platform driver if it was registered (Tony Camuso) [1752071] - [char] ipmi: Add the i2c-addr property for SSIF interfaces (Tony Camuso) [1752071] - [char] ipmi: avoid atomic_inc in exit function (Tony Camuso) [1752071] - [char] ipmi: Remove file from ipmi_file_private (Tony Camuso) [1752071] - [char] ipmi_si: remove an unused variable in try_smi_init() (Tony Camuso) [1752071] - [char] ipmi: Make ipmi_interfaces_srcu variable static (Tony Camuso) [1752071] - [char] ipmi: Change to ktime_get_ts64() (Tony Camuso) [1752071] - [char] ipmi: Free the address list on module cleanup (Tony Camuso) [1752071] - [edac] EDAC, skx, i10nm: Fix source ID register offset (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Check ECC enabling status per channel (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Add Intel additional Ice-Lake support (Aristeu Rozanski) [1485543 1482412] - [x86] x86/CPU: Add more Icelake model numbers (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx, i10nm: Make skx_common.c a pure library (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_common: Add code to recognise new compound error code (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Fix randconfig builds (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Add a driver for Intel 10nm server processors (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_edac: Delete duplicated code (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_common: Separate common code out from skx_edac (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Let EDAC core show the decoded result for debugfs (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Move debugfs node under EDAC's hierarchy (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Prepend hex formatting with '0x' (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Fix function calling order in skx_exit() (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_edac: Fix logical channel intermediate decoding (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC: Correct DIMM capacity unit symbol (Aristeu Rozanski) [1485543 1482412] - [x86] x86/mce: Add notifier_block forward declaration (Aristeu Rozanski) [1485543 1482412] - [netdrv] net: thunderx: fix NULL pointer dereference in nicvf_open/nicvf_stop (Dean Nelson) [1657380] - [netdrv] net: thunder: fix a potential NULL pointer dereference (Dean Nelson) [1657380] - [netdrv] net: thunderx: remove link change polling code and info from nicpf (Dean Nelson) [1657380] - [netdrv] net: thunderx: move link state polling function to VF (Dean Nelson) [1657380] - [netdrv] net: thunderx: add mutex to protect mailbox from concurrent calls for same VF (Dean Nelson) [1657380] - [netdrv] net: thunderx: rework xcast message structure to make it fit into 64 bit (Dean Nelson) [1657380] - [netdrv] net: thunderx: add nicvf_send_msg_to_pf result check for set_rx_mode_task (Dean Nelson) [1657380] - [netdrv] net: thunderx: make CFG_DONE message to run through generic send-ack sequence (Dean Nelson) [1657380] - [netdrv] net: thunderx: replace global nicvf_rx_mode_wq work queue for all VFs to private for each of them. (Dean Nelson) [1657380] - [netdrv] net: thunderx: set tso_hdrs pointer to NULL in nicvf_free_snd_queue (Dean Nelson) [1657380] - [x86] perf/x86/intel/rapl: Cosmetic rename internal variables in response to multi-die/pkg support (David Arcari) [1616309] - [x86] perf/x86/intel/uncore: Cosmetic renames in response to multi-die/pkg support (David Arcari) [1616309] - [hwmon] hwmon/coretemp: Cosmetic: Rename internal variables to zones from packages (David Arcari) [1616309] - [thermal] thermal/x86_pkg_temp_thermal: Cosmetic: Rename internal variables to zones from packages (David Arcari) [1616309] - [x86] perf/x86/intel/cstate: Support multi-die/package (David Arcari) [1616309] - [x86] perf/x86/intel/rapl: Support multi-die/package (David Arcari) [1616309] - [x86] perf/x86/intel/uncore: Support multi-die/package (David Arcari) [1616309] - [topology] topology: Create core_cpus and die_cpus sysfs attributes (David Arcari) [1616309] - [topology] topology: Create package_cpus sysfs attribute (David Arcari) [1616309] - [hwmon] hwmon/coretemp: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Update RAPL domain name and debug messages (David Arcari) [1616309] - [thermal] thermal/x86_pkg_temp_thermal: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Simplify rapl_find_package() (David Arcari) [1616309] - [x86] x86/topology: Define topology_logical_die_id() (David Arcari) [1616309] - [x86] x86/topology: Define topology_die_id() (David Arcari) [1616309] - [topology] cpu/topology: Export die_id (David Arcari) [1616309] - [x86] x86/topology: Create topology_max_die_per_package() (David Arcari) [1616309] - [x86] x86/topology: Add CPUID.1F multi-die/package support (David Arcari) [1616309] - [x86] x86/smpboot: Rename match_die() to match_pkg() (David Arcari) [1616309] - [documentation] topology: Simplify cputopology.txt formatting and wording (David Arcari) [1616309] - [documentation] x86/topology: Fix documentation typo (David Arcari) [1616309] - [mm] mm: remove stale comment from page struct (Rafael Aquini) [1737065] - [mm] mm/slab.c: fix an infinite loop in leaks_show() (Rafael Aquini) [1737065] - [mm] mm/slub.c: update the comment about slab frozen (Rafael Aquini) [1737065] - [mm] mm/slab.c: remove unneed check in cpuup_canceled (Rafael Aquini) [1737065] - [mm] slub: remove useless kmem_cache_debug() before remove_full() (Rafael Aquini) [1737065] - [mm] slab: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slub: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slob: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slob: respect list_head abstraction layer (Rafael Aquini) [1737065] - [mm] slab: fix a crash by reading /proc/slab_allocators (Rafael Aquini) [1737065] - [mm] mm: add support for kmem caches in DMA32 zone (Rafael Aquini) [1737065] - [mm] mm, slub: make the comment of put_cpu_partial() complete (Rafael Aquini) [1737065] - [mm] mm/slub.c: remove an unused addr argument (Rafael Aquini) [1737065] - [mm] mm/slab.c: kmemleak no scan alien caches (Rafael Aquini) [1737065] - [mm] mm/slub.c: freelist is ensured to be NULL when new_slab() fails (Rafael Aquini) [1737065] - [mm] slab: alien caches must not be initialized if the allocation of the alien cache failed (Rafael Aquini) [1737065] - [mm] include/linux/slab.h: fix sparse warning in kmalloc_type() (Rafael Aquini) [1737065] - [mm] mm/slub.c: record final state of slub action in deactivate_slab() (Rafael Aquini) [1737065] - [mm] mm/slub.c: page is always non-NULL in node_match() (Rafael Aquini) [1737065] - [mm] mm/slub.c: remove validation on cpu_slab in __flush_cpu_slab() (Rafael Aquini) [1737065] - [mm] mm, slab: remove unnecessary unlikely() (Rafael Aquini) [1737065] - [mm] mm: move obj_to_index to include/linux/slab_def.h (Rafael Aquini) [1737065] - [mm] slab: make kmem_cache_create{_usercopy} description proper kernel-doc (Rafael Aquini) [1737065] - [mm] slub: extend slub debug to handle multiple slabs (Rafael Aquini) [1737065] - [mm] mm/slub.c: switch to bitmap_zalloc() (Rafael Aquini) [1737065] - [fs] io_uring: add need_resched() check in inner poll loop (Jeff Moyer) [1706143] - [fs] io_uring: don't enter poll loop if we have CQEs pending (Jeff Moyer) [1706143] - [fs] io_uring: fix potential hang with polled IO (Jeff Moyer) [1706143] - [fs] io_uring: fix an issue when IOSQE_IO_LINK is inserted into defer list (Jeff Moyer) [1706143] - [fs] io_uring: fix manual setup of iov_iter for fixed buffers (Jeff Moyer) [1706143] - [fs] io_uring: fix KASAN use after free in io_sq_wq_submit_work (Jeff Moyer) [1706143] - [fs] io_uring: ensure ->list is initialized for poll commands (Jeff Moyer) [1706143] - [fs] io_uring: track io length in async_list based on bytes (Jeff Moyer) [1706143] - [fs] io_uring: don't use iov_iter_advance() for fixed buffers (Jeff Moyer) [1706143] - [fs] io_uring: add a memory barrier before atomic_read (Jeff Moyer) [1706143] - [fs] io_uring: fix counter inc/dec mismatch in async_list (Jeff Moyer) [1706143] - [fs] io_uring: fix the sequence comparison in io_sequence_defer (Jeff Moyer) [1706143] - [fs] io_uring: fix io_sq_thread_stop running in front of io_sq_thread (Jeff Moyer) [1706143] - [include] io_uring: add support for recvmsg() (Jeff Moyer) [1706143] - [include] io_uring: add support for sendmsg() (Jeff Moyer) [1706143] - [fs] signal: remove the wrong signal_pending() check in restore_user_sigmask() (Jeff Moyer) [1706143] - [fs] io_uring: add support for sqe links (Jeff Moyer) [1706143] - [fs] io_uring: ensure req->file is cleared on allocation (Jeff Moyer) [1706143] - [fs] io_uring: fix memory leak of UNIX domain socket inode (Jeff Moyer) [1706143] - [fs] io_uring: punt short reads to async context (Jeff Moyer) [1706143] - [fs] uio: make import_iovec()/compat_import_iovec() return bytes on success (Jeff Moyer) [1706143] - [fs] io_uring: Fix __io_uring_register() false success (Jeff Moyer) [1706143] - [tools] tools/io_uring: sync with liburing (Jeff Moyer) [1706143] - [tools] tools/io_uring: fix Makefile for pthread library link (Jeff Moyer) [1706143] - [fs] io_uring: use wait_event_interruptible for cq_wait conditional wait (Jeff Moyer) [1706143] - [fs] io_uring: adjust smp_rmb inside io_cqring_events (Jeff Moyer) [1706143] - [fs] io_uring: fix infinite wait in khread_park() on io_finish_async() (Jeff Moyer) [1706143] - [fs] io_uring: remove 'ev_flags' argument (Jeff Moyer) [1706143] - [fs] io_uring: fix failure to verify SQ_AFF cpu (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition reading SQE data (Jeff Moyer) [1706143] - [fs] io_uring: use cpu_online() to check p->sq_thread_cpu instead of cpu_possible() (Jeff Moyer) [1706143] - [fs] io_uring: fix shadowed variable ret return code being not checked (Jeff Moyer) [1706143] - [fs] req->error only used for iopoll (Jeff Moyer) [1706143] - [fs] io_uring: add support for eventfd notifications (Jeff Moyer) [1706143] - [fs] io_uring: add support for IORING_OP_SYNC_FILE_RANGE (Jeff Moyer) [1706143] - [fs] fs: add sync_file_range() helper (Jeff Moyer) [1706143] - [fs] io_uring: add support for marking commands as draining (Jeff Moyer) [1706143] - [fs] io_uring: avoid page allocation warnings (Jeff Moyer) [1706143] - [include] iov_iter: fix iov_iter_type (Jeff Moyer) [1706143] - [fs] block: fix handling for BIO_NO_PAGE_REF (Jeff Moyer) [1706143] - [fs] io_uring: drop req submit reference always in async punt (Jeff Moyer) [1706143] - [fs] io_uring: free allocated io_memory once (Jeff Moyer) [1706143] - [fs] io_uring: fix SQPOLL cpu validation (Jeff Moyer) [1706143] - [fs] io_uring: have submission side sqe errors post a cqe (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after unsetting IORING_SQ_NEED_WAKEUP (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after incrementing dropped counter (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before reading SQ tail (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after updating SQ head (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before reading cq head (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before wq_has_sleeper (Jeff Moyer) [1706143] - [fs] io_uring: fix notes on barriers (Jeff Moyer) [1706143] - [fs] io_uring: fix handling SQEs requesting NOWAIT (Jeff Moyer) [1706143] - [fs] io_uring: remove 'state' argument from io_{read,write} path (Jeff Moyer) [1706143] - [fs] io_uring: fix poll full SQ detection (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition when sq threads goes sleeping (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition reading SQ entries (Jeff Moyer) [1706143] - [fs] io_uring: fail io_uring_register(2) on a dying io_uring instance (Jeff Moyer) [1706143] - [fs] io_uring: fix CQ overflow condition (Jeff Moyer) [1706143] - [fs] io_uring: fix possible deadlock between io_uring_{enter,register} (Jeff Moyer) [1706143] - [powerpc] arch: add pidfd and io_uring syscalls everywhere (Jeff Moyer) [1706143] - [fs] io_uring: drop io_file_put() 'file' argument (Jeff Moyer) [1706143] - [fs] io_uring: only test SQPOLL cpu after we've verified it (Jeff Moyer) [1706143] - [fs] io_uring: park SQPOLL thread if it's percpu (Jeff Moyer) [1706143] - [fs] io_uring: restrict IORING_SETUP_SQPOLL to root (Jeff Moyer) [1706143] - [tools] tools/io_uring: remove IOCQE_FLAG_CACHEHIT (Jeff Moyer) [1706143] - [fs] io_uring: fix double free in case of fileset regitration failure (Jeff Moyer) [1706143] - [fs] io_uring: offload write to async worker in case of -EAGAIN (Jeff Moyer) [1706143] - [fs] io_uring: fix big-endian compat signal mask handling (Jeff Moyer) [1706143] - [fs] block: add BIO_NO_PAGE_REF flag (Jeff Moyer) [1706143] - [fs] iov_iter: add ITER_BVEC_FLAG_NO_REF flag (Jeff Moyer) [1706143] - [maintainers] io_uring: mark me as the maintainer (Jeff Moyer) [1706143] - [fs] io_uring: retry bulk slab allocs as single allocs (Jeff Moyer) [1706143] - [fs] io_uring: fix poll races (Jeff Moyer) [1706143] - [fs] io_uring: fix fget/fput handling (Jeff Moyer) [1706143] - [fs] io_uring: add prepped flag (Jeff Moyer) [1706143] - [fs] io_uring: make io_read/write return an integer (Jeff Moyer) [1706143] - [fs] io_uring: use regular request ref counts (Jeff Moyer) [1706143] - [fs] mm: refactor readahead defines in mm.h (Jeff Moyer) [1706143] - [tools] io_uring: add a few test tools (Jeff Moyer) [1706143] - [fs] io_uring: allow workqueue item to handle multiple buffered requests (Jeff Moyer) [1706143] - [fs] io_uring: add support for IORING_OP_POLL (Jeff Moyer) [1706143] - [fs] io_uring: add io_kiocb ref count (Jeff Moyer) [1706143] - [fs] io_uring: add submission polling (Jeff Moyer) [1706143] - [fs] io_uring: add file set registration (Jeff Moyer) [1706143] - [net] net: split out functions related to registering inflight socket files (Jeff Moyer) [1706143] - [include] io_uring: add support for pre-mapped user IO buffers (Jeff Moyer) [1706143] - [block] block: implement bio helper to add iter bvec pages to bio (Jeff Moyer) [1706143] - [fs] io_uring: batch io_kiocb allocation (Jeff Moyer) [1706143] - [fs] io_uring: use fget/fput_many() for file references (Jeff Moyer) [1706143] - [fs] fs: add fget_many() and fput_many() (Jeff Moyer) [1706143] - [fs] io_uring: support for IO polling (Jeff Moyer) [1706143] - [fs] io_uring: add fsync support (Jeff Moyer) [1706143] - [include] Add io_uring IO interface (Jeff Moyer) [1706143] - [fs] iomap: wire up the iopoll method (Jeff Moyer) [1706143] - [fs] block: add bio_set_polled() helper (Jeff Moyer) [1706143] - [fs] block: wire up block device iopoll method (Jeff Moyer) [1706143] - [fs] signal: Add restore_user_sigmask() (Jeff Moyer) [1706143] - [fs] signal: Add set_user_sigmask() (Jeff Moyer) [1706143] - [net] iov_iter: Fix 9p virtio breakage (Benjamin Coddington) [1734762] - [lib] iov_iter: Add I/O discard iterator (Benjamin Coddington) [1734762] - [fs] iov_iter: Separate type from direction and use accessor functions (Benjamin Coddington) [1734762] - [fs] iov_iter: Use accessor function (Benjamin Coddington) [1734762]- [kernel] ftrace/x86: Anotate text_mutex split between ftrace_arch_code_modify_post_process() and ftrace_arch_code_modify_prepare() (Joe Lawrence) [1696461] - [kernel] ftrace/x86: Remove possible deadlock between register_kprobe() and ftrace_run_update_code() (Joe Lawrence) [1696461] - [kernel] Revert "livepatch: Remove reliable stacktrace check in klp_try_switch_task()" (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: push and pop dynamic debug config (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: add test skip handling (Joe Lawrence) [1696461] - [kernel] module: Fix livepatch/ftrace module text permissions race (Joe Lawrence) [1696461] - [kernel] kprobes: Mark ftrace mcount handler functions nokprobe (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: Add functions.sh to TEST_PROGS_EXTENDED (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: use TEST_PROGS for test scripts (Joe Lawrence) [1696461] - [kernel] livepatch/selftests: use "$@" to preserve argument list (Joe Lawrence) [1696461] - [kernel] livepatch: Module coming and going callbacks can proceed with all listed patches (Joe Lawrence) [1696461] - [kernel] livepatch: Proper error handling in the shadow variables selftest (Joe Lawrence) [1696461] - [kernel] livepatch: return -ENOMEM on ptr_id() allocation failure (Joe Lawrence) [1696461] - [kernel] livepatch: Introduce klp_for_each_patch macro (Joe Lawrence) [1696461] - [kernel] livepatch: core: Return EOPNOTSUPP instead of ENOSYS (Joe Lawrence) [1696461] - [kernel] livepatch: samples: non static warnings fix (Joe Lawrence) [1696461] - [kernel] livepatch: Remove signal sysfs attribute (Joe Lawrence) [1696461] - [kernel] livepatch: Send a fake signal periodically (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: introduce tests (Joe Lawrence) [1696461] - [kernel] livepatch: Remove ordering (stacking) of the livepatches (Joe Lawrence) [1696461] - [kernel] livepatch: Atomic replace and cumulative patches documentation (Joe Lawrence) [1696461] - [kernel] livepatch: Remove Nop structures when unused (Joe Lawrence) [1696461] - [kernel] livepatch: Add atomic replace (Joe Lawrence) [1696461] - [kernel] livepatch: Use lists to manage patches, objects and functions (Joe Lawrence) [1696461] - [kernel] livepatch: Simplify API by removing registration step (Joe Lawrence) [1696461] - [kernel] livepatch: Don't block the removal of patches loaded after a forced transition (Joe Lawrence) [1696461] - [kernel] livepatch: Consolidate klp_free functions (Joe Lawrence) [1696461] - [kernel] livepatch: Shuffle klp_enable_patch()/klp_disable_patch() code (Joe Lawrence) [1696461] - [kernel] livepatch: Change unsigned long old_addr -> void *old_func in struct klp_func (Joe Lawrence) [1696461] - [kernel] livepatch: check kzalloc return values (Joe Lawrence) [1696461] - [kernel] livepatch: Replace synchronize_sched() with synchronize_rcu() (Joe Lawrence) [1696461] - [kernel] livepatch: Validate module/old func name length (Joe Lawrence) [1696461] - [kernel] livepatch: Remove reliable stacktrace check in klp_try_switch_task() (Joe Lawrence) [1696461] - [pci] PCI/LINK: Add Kconfig option (default off) (Myron Stowe) [1748141] - [pci] PCI/portdrv: Use shared MSI/MSI-X vector for Bandwidth Management (Myron Stowe) [1748141] - [pci] PCI: Fix issue with "pci=disable_acs_redir" parameter being ignored (Myron Stowe) [1748141] - [pci] PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller (Myron Stowe) [1748141] - [pci] PCI/LINK: Deduplicate bandwidth reports for multi-function devices (Myron Stowe) [1748141] - [pci] PCI/LINK: Clear bandwidth notification interrupt before enabling it (Myron Stowe) [1748141] - [pci] PCI/LINK: Supply IRQ handler so level-triggered IRQs are acked (Myron Stowe) [1748141] - [pci] PCI/LINK: Report degraded links via link bandwidth notification (Myron Stowe) [1748141] - [pci] PCI/portdrv: Support PCIe services on subtractive decode bridges (Myron Stowe) [1748141] - [pci] PCI/portdrv: Use conventional Device ID table formatting (Myron Stowe) [1748141] - [pci] PCI: Update PCIEPORTBUS Kconfig help text (Myron Stowe) [1748141] - [pci] PCI: Clean up usage of __u32 type (Myron Stowe) [1748141] - [pci] PCI: Move Rohm Vendor ID to generic list (Myron Stowe) [1748141] - [pci] PCI: pciehp: Add HXT quirk for Command Completed errata (Myron Stowe) [1748141] - [pci] PCI: Add ACS quirk for HXT SD4800 (Myron Stowe) [1748141] - [pci] PCI: Add HXT vendor ID (Myron Stowe) [1748141] - [pci] PCI: Use of_node_name_eq() for node name comparisons (Myron Stowe) [1748141] - [pci] PCI: Mark expected switch fall-through (Myron Stowe) [1748141] - [pci] PCI: ibmphp: Turn semaphores into completions or mutexes (Myron Stowe) [1748141] - [pci] x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub (Myron Stowe) [1748141] - [pci] PCI: Rely on config space header type, not class code (Myron Stowe) [1748141] - [pci] PCI: Make pci_size() return real BAR size (Myron Stowe) [1748141] - [pci] PCI/DPC: Fix print AER status in DPC event handling (Myron Stowe) [1748141] - [pci] PCI/ASPM: Save LTR Capability for suspend/resume (Myron Stowe) [1748141] - [pci] PCI/ASPM: Use LTR if already enabled by platform (Myron Stowe) [1748141] - [pci] PCI: Enable SERR# forwarding for all bridges (Myron Stowe) [1748141] - [pci] PCI/AER: Use match_string() helper to simplify the code (Myron Stowe) [1748141] - [fs] gfs2: Use async glocks for rename (Robert S Peterson) [1737561] - [fs] gfs2: create function gfs2_glock_update_hold_time (Robert S Peterson) [1737561] - [fs] gfs2: separate holder for rgrps in gfs2_rename (Robert S Peterson) [1737561] - [netdrv] net: aquantia: reapply vlan filters on up (Igor Russkikh) [1740500] - [s390] s390/setup: Fix kernel lock down for s390 (Philipp Rudo) [1748343] - [powerpc] kvm: ppc: book3s hv: Fix XICS-on-XIVE H_IPI when priority = 0 (David Gibson) [1725800] - [s390] vfio-ap: fix irq registration (Thomas Huth) [1660910] - [s390] ap: kvm: Enable PQAP/AQIC facility for the guest (Thomas Huth) [1660910] - [s390] ap: implement PAPQ AQIC interception in kernel (Thomas Huth) [1660910] - [s390] vfio: ap: register IOMMU VFIO notifier (Thomas Huth) [1660910] - [s390] ap: kvm: add PQAP interception for AQIC (Thomas Huth) [1660910] - [s390] kvm: s390: Do not leak kernel stack data in the KVM_S390_INTERRUPT ioctl (Thomas Huth) [1749503] - [s390] kvm: s390: vsie: Return correct values for Invalid CRYCB format (Thomas Huth) [1749503] - [s390] kvm: s390: vsie: Do not shadow CRYCB when no AP and no keys (Thomas Huth) [1749503] - [s390] kvm: s390: change default halt poll time to 50us (Thomas Huth) [1749503] - [s390] kvm: s390: fix typo in parameter description (Thomas Huth) [1749503] - [s390] kvm: s390: provide kvm_arch_no_poll function (Thomas Huth) [1749503] - [kernel] kvm: polling: add architecture backend to disable polling (Thomas Huth) [1749503] - [s390] vtime: steal time exponential moving average (Thomas Huth) [1749503] - [tools] kvm: selftests: fix ucall on x86 (Thomas Huth) [1730412] - [tools] kvm: selftests: Test invalid bits in kvm_valid_regs and kvm_dirty_regs on s390x (Thomas Huth) [1730412] - [s390] kvm: s390: Disallow invalid bits in kvm_valid_regs and kvm_dirty_regs (Thomas Huth) [1730412] - [tools] kvm: selftests: Add a test for the KVM_S390_MEM_OP ioctl (Thomas Huth) [1730412] - [s390] kvm: s390: Test for bad access register and size at the start of S390_MEM_OP (Thomas Huth) [1730412] - [tools] kvm: selftests: Enable dirty_log_test on s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Implement ucall() for s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Split ucall.c into architecture specific files (Thomas Huth) [1730412] - [tools] kvm: selftests: ucall improvements (Thomas Huth) [1730412] - [tools] kvm: selftests: aarch64: dirty_log_test: fix unaligned memslot size (Thomas Huth) [1730412] - [tools] kvm: selftests: Compile code with warnings enabled (Thomas Huth) [1730412] - [tools] kvm: selftests: enable pgste option for the linker on s390 (Thomas Huth) [1730412] - [tools] kvm: selftests: Move kvm_create_max_vcpus test to generic code (Thomas Huth) [1730412] - [virt] kvm: s390: Do not report unusabled IDs via KVM_CAP_MAX_VCPU_ID (Thomas Huth) [1730412] - [documentation] kvm: move KVM_CAP_NR_MEMSLOTS to common code (Thomas Huth) [1730412] - [tools] kvm: selftests: Add the sync_regs test for s390x (Thomas Huth) [1730412] - [s390] kvm: s390: fix memory slot handling for KVM_SET_USER_MEMORY_REGION (Thomas Huth) [1730412] - [tools] kvm: selftests: Add processor code for s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Align memory region addresses to 1M on s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Introduce a VM_MODE_DEFAULT macro for the default bits (Thomas Huth) [1730412] - [tools] kvm: selftests: aarch64: fix default vm mode (Thomas Huth) [1730412] - [tools] kvm: selftests: Guard struct kvm_vcpu_events with __KVM_HAVE_VCPU_EVENTS (Thomas Huth) [1730412] - [tools] kvm: selftests: Wrap vcpu_nested_state_get/set functions with x86 guard (Thomas Huth) [1730412]- [fs] xfs: fix missing ILOCK unlock when xfs_setattr_nonsize fails due to EDQUOT (Bill O'Donnell) [1739607] - [fs] xfs: fix reflink source file racing with directio writes (Bill O'Donnell) [1739607] - [fs] xfs: implement cgroup aware writeback (Bill O'Donnell) [1274406] - [fs] xfs: simplify xfs_chain_bio (Bill O'Donnell) [1274406] - [fs] xfs: inode btree scrubber should calculate im_boffset correctly (Bill O'Donnell) [1739607] - [fs] xfs: fix broken log reservation debugging (Bill O'Donnell) [1739607] - [fs] xfs: don't reserve per-AG space for an internal log (Bill O'Donnell) [1739607] - [fs] xfs: change some error-less functions to void types (Bill O'Donnell) [1739607] - [fs] xfs: add online scrub for superblock counters (Bill O'Donnell) [1739607] - [fs] xfs: don't parse the mtpt mount option (Bill O'Donnell) [1739607] - [fs] xfs: scrub should check incore counters against ondisk headers (Bill O'Donnell) [1739607] - [fs] xfs: allow scrubbers to pause background reclaim (Bill O'Donnell) [1739607] - [fs] xfs: rename the speculative block allocation reclaim toggle functions (Bill O'Donnell) [1739607] - [fs] xfs: track delayed allocation reservations across the filesystem (Bill O'Donnell) [1739607] - [fs] xfs: fix broken bhold behavior in xrep_roll_ag_trans (Bill O'Donnell) [1739607] - [fs] xfs: unlock inode when xfs_ioctl_setattr_get_trans can't get transaction (Bill O'Donnell) [1739607] - [fs] xfs: kill the xfs_dqtrx_t typedef (Bill O'Donnell) [1739607] - [fs] xfs: widen inode delalloc block counter to 64-bits (Bill O'Donnell) [1739607] - [fs] xfs: widen quota block counters to 64-bit integers (Bill O'Donnell) [1739607] - [fs] xfs: assert that we don't enter agfl freeing with a non-permanent transaction (Bill O'Donnell) [1739607] - [fs] xfs: make tr_growdata a permanent transaction (Bill O'Donnell) [1739607] - [fs] xfs: merge adjacent io completions of the same type (Bill O'Donnell) [1739607] - [fs] xfs: remove unused m_data_workqueue (Bill O'Donnell) [1739607] - [fs] xfs: implement per-inode writeback completion queues (Bill O'Donnell) [1739607] - [fs] xfs: scrub should only cross-reference with healthy btrees (Bill O'Donnell) [1739607] - [fs] xfs: scrub/repair should update filesystem metadata health (Bill O'Donnell) [1739607] - [fs] xfs: hoist the already_fixed variable to the scrub context (Bill O'Donnell) [1739607] - [fs] xfs: collapse scrub bool state flags into a single unsigned int (Bill O'Donnell) [1739607] - [fs] xfs: refactor scrub context initialization (Bill O'Donnell) [1739607] - [fs] xfs: report inode health via bulkstat (Bill O'Donnell) [1739607] - [fs] xfs: report AG health via AG geometry ioctl (Bill O'Donnell) [1739607] - [fs] xfs: report fs and rt health via geometry structure (Bill O'Donnell) [1739607] - [fs] xfs: add a new ioctl to describe allocation group geometry (Bill O'Donnell) [1739607] - [fs] xfs: bump XFS_IOC_FSGEOMETRY to v5 structures (Bill O'Donnell) [1739607] - [fs] xfs: clear BAD_SUMMARY if unmounting an unhealthy filesystem (Bill O'Donnell) [1739607] - [fs] xfs: replace the BAD_SUMMARY mount flag with the equivalent health code (Bill O'Donnell) [1739607] - [fs] xfs: track metadata health status (Bill O'Donnell) [1739607] - [fs] xfs,fstrim: fix to return correct minlen (Bill O'Donnell) [1739607] - [fs] xfs: shutdown after buf release in iflush cluster abort path (Bill O'Donnell) [1739607] - [fs] xfs: wake commit waiters on CIL abort before log item abort (Bill O'Donnell) [1739607] - [fs] xfs: fix btree scrub checking with regards to root-in-inode (Bill O'Donnell) [1739607] - [fs] xfs: dabtree scrub needs to range-check level (Bill O'Donnell) [1739607] - [fs] xfs: clean up xfs_dir2_leaf_addname (Bill O'Donnell) [1739607] - [fs] xfs: zero initialize highstale and lowstale in xfs_dir2_leaf_addname (Bill O'Donnell) [1739607] - [fs] xfs: clean up xfs_dir2_leafn_add (Bill O'Donnell) [1739607] - [fs] xfs: Zero initialize highstale and lowstale in xfs_dir2_leafn_add (Bill O'Donnell) [1739607] - [fs] xfs: fix backwards endian conversion in scrub (Bill O'Donnell) [1739607] - [fs] xfs: fix uninitialized error variables (Bill O'Donnell) [1739607] - [fs] xfs: rework breaking of shared extents in xfs_file_iomap_begin (Bill O'Donnell) [1739607] - [fs] xfs: don't pass iomap flags to xfs_reflink_allocate_cow (Bill O'Donnell) [1739607] - [fs] xfs: fix uninitialized error variable (Bill O'Donnell) [1739607] - [fs] xfs: introduce an always_cow mode (Bill O'Donnell) [1739607] - [fs] xfs: report IOMAP_F_SHARED from xfs_file_iomap_begin_delay (Bill O'Donnell) [1739607] - [fs] xfs: make COW fork unwritten extent conversions more robust (Bill O'Donnell) [1739607] - [fs] xfs: merge COW handling into xfs_file_iomap_begin_delay (Bill O'Donnell) [1739607] - [fs] xfs: also truncate holes covered by COW blocks (Bill O'Donnell) [1739607] - [fs] xfs: don't use delalloc extents for COW on files with extsize hints (Bill O'Donnell) [1739607] - [fs] xfs: fix SEEK_DATA for speculative COW fork preallocation (Bill O'Donnell) [1739607] - [fs] xfs: make xfs_bmbt_to_iomap more useful (Bill O'Donnell) [1739607] - [fs] xfs: fix xfs_buf magic number endian checks (Bill O'Donnell) [1739607] - [fs] xfs: retry COW fork delalloc conversion when no extent was found (Bill O'Donnell) [1739607] - [fs] xfs: remove the truncate short cut in xfs_map_blocks (Bill O'Donnell) [1739607] - [fs] xfs: move xfs_iomap_write_allocate to xfs_aops.c (Bill O'Donnell) [1739607] - [fs] xfs: move stat accounting to xfs_bmapi_convert_delalloc (Bill O'Donnell) [1739607] - [fs] xfs: move transaction handling to xfs_bmapi_convert_delalloc (Bill O'Donnell) [1739607] - [fs] xfs: split XFS_BMAPI_DELALLOC handling from xfs_bmapi_write (Bill O'Donnell) [1739607] - [fs] xfs: factor out two helpers from xfs_bmapi_write (Bill O'Donnell) [1739607] - [fs] xfs: simplify the xfs_bmap_btree_to_extents calling conventions (Bill O'Donnell) [1739607] - [fs] xfs: remove the s_maxbytes checks in xfs_map_blocks (Bill O'Donnell) [1739607] - [fs] xfs: remove the io_type field from the writeback context and ioend (Bill O'Donnell) [1739607] - [fs] xfs: compile time offset checks for common v4/v5 metadata (Bill O'Donnell) [1739607] - [fs] xfs: use buf ops magic to detect btree block type (Bill O'Donnell) [1739607] - [fs] xfs: add magic numbers to dquot buffer ops (Bill O'Donnell) [1739607] - [fs] xfs: add inode magic to inode verifier (Bill O'Donnell) [1739607] - [fs] xfs: factor xfs_da3_blkinfo verification into common helper (Bill O'Donnell) [1739607] - [fs] xfs: miscellaneous verifier magic value fixups (Bill O'Donnell) [1739607] - [fs] xfs: use verifier magic field in dir2 leaf verifiers (Bill O'Donnell) [1739607] - [fs] xfs: distinguish between bnobt and cntbt magic values (Bill O'Donnell) [1739607] - [fs] xfs: split up allocation btree verifier (Bill O'Donnell) [1739607] - [fs] xfs: distinguish between inobt and finobt magic values (Bill O'Donnell) [1739607] - [fs] xfs: create a separate finobt verifier (Bill O'Donnell) [1739607] - [fs] xfs: always check magic values in on-disk byte order (Bill O'Donnell) [1739607] - [fs] xfs: clarify documentation for the function to reverify buffers (Bill O'Donnell) [1739607] - [fs] xfs: cache unlinked pointers in an rhashtable (Bill O'Donnell) [1739607] - [fs] xfs: add tracepoints for high level iunlink operations (Bill O'Donnell) [1739607] - [fs] xfs: refactor inode update in iunlink_remove (Bill O'Donnell) [1739607] - [fs] xfs: refactor unlinked list search and mapping to a separate function (Bill O'Donnell) [1739607] - [fs] xfs: refactor inode unlinked pointer update functions (Bill O'Donnell) [1739607] - [fs] xfs: strengthen AGI unlinked inode bucket pointer checks (Bill O'Donnell) [1739607] - [fs] xfs: refactor AGI unlinked bucket updates (Bill O'Donnell) [1739607] - [fs] xfs: add xfs_verify_agino_or_null helper (Bill O'Donnell) [1739607] - [fs] xfs: clean up iunlink functions (Bill O'Donnell) [1739607] - [fs] xfs: Introduce XFS_PTAG_VERIFIER_ERROR panic mask (Bill O'Donnell) [1739607] - [fs] xfs: remove duplicated xfs_defer.h (Bill O'Donnell) [1739607] - [fs] xfs: check attribute name validity (Bill O'Donnell) [1739607] - [fs] xfs: check directory name validity (Bill O'Donnell) [1739607] - [fs] xfs: fix off-by-one error in rtbitmap cross-reference (Bill O'Donnell) [1739607] - [fs] xfs: scrub should flag dir/attr offsets that aren't mappable with xfs_dablk_t (Bill O'Donnell) [1739607] - [fs] xfs: abort xattr scrub if fatal signals are pending (Bill O'Donnell) [1739607] - [fs] xfs: consolidate scrub dinode mapping code into a single function (Bill O'Donnell) [1739607] - [fs] xfs: scrub big block inode btrees correctly (Bill O'Donnell) [1739607] - [fs] xfs: clean up the inode cluster checking in the inobt scrub (Bill O'Donnell) [1739607] - [fs] xfs: hoist inode cluster checks out of loop (Bill O'Donnell) [1739607] - [fs] xfs: check inobt record alignment on big block filesystems (Bill O'Donnell) [1739607] - [fs] xfs: check the ir_startino alignment directly (Bill O'Donnell) [1739607] - [fs] xfs: never try to scrub more than 64 inodes per inobt record (Bill O'Donnell) [1739607] - [powerpc] powerpc: Allow flush_(inval_)dcache_range to work across ranges >4GB (Steve Best) [1744062] - [scsi] scsi: lpfc: Fix port relogin failure due to GID_FT interaction (Dick Kennedy) [1733217] - [rpmspec] redhat: Fix error messages during build of zfcpdump kernel (Philipp Rudo) [1745652] - [s390] s390/protvirt: avoid memory sharing for diag 308 set/store (Philipp Rudo) [1745614] - [infiniband] IB/hfi1: Remove extra brackets from an if (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Update I/O section to be clearer about CPU vs thread (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Fix style, spacing and grammar in I/O section (Petr Oros) [1737066] - [powerpc] arch: Remove dummy mmiowb() definitions from arch code (Petr Oros) [1737066] - [netdrv] net/ethernet/silan/sc92031: Remove stale comment about mmiowb() (Petr Oros) [1737066] - [infiniband] i40iw: Redefine i40iw_mmiowb() to do nothing (Petr Oros) [1737066] - [scsi] scsi/qla1280: Remove stale comment about mmiowb() (Petr Oros) [1737066] - [netdrv] drivers: Remove explicit invocations of mmiowb() (Petr Oros) [1737066] - [infiniband] drivers: Remove useless trailing comments from mmiowb() invocations (Petr Oros) [1737066] - [documentation] Documentation: Kill all references to mmiowb() (Petr Oros) [1737066] - [riscv] riscv/mmiowb: Hook up mmwiob() implementation to asm-generic code (Petr Oros) [1737066] - [powerpc] powerpc/mmiowb: Hook up mmwiob() implementation to asm-generic code (Petr Oros) [1737066] - [nds32] nds32/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [x86] x86/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [arm64] arm64/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [include] mmiowb: Hook up mmiowb helpers to spinlocks and generic I/O accessors (Petr Oros) [1737066] - [arm64] arch: Use asm-generic header for asm/mmiowb.h (Petr Oros) [1737066] - [kernel] asm-generic/mmiowb: Add generic implementation of mmiowb() tracking (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Rewrite "KERNEL I/O BARRIER EFFECTS" section (Petr Oros) [1737066] - [s390] s390/cpum_sf: save TOD clock base in SDBs for time conversion (Philipp Rudo) [1743504] - [net] netns: provide pure entropy for net_hash_mix() (Paolo Abeni) [1737439] {CVE-2019-10639} - [net] netns: get more entropy from net_hash_mix() (Paolo Abeni) [1737439] {CVE-2019-10639} - [netdrv] net: phy: improve pause handling (Petr Oros) [1735763] - [netdrv] net: phy: fix reading fixed phy status (Petr Oros) [1735763] - [netdrv] net: phy: allow a PHY driver to define neither features nor get_features (Petr Oros) [1735763] - [netdrv] net: phy: Add support for asking the PHY its abilities (Petr Oros) [1735763] - [netdrv] net: phy: use genphy_read_abilities in genphy driver (Petr Oros) [1735763] - [netdrv] net: phy: add genphy_read_abilities (Petr Oros) [1735763] - [netdrv] net: phy: let genphy_c45_read_abilities also check aneg capability (Petr Oros) [1735763] - [netdrv] net: phy: Add generic support for 2.5GBaseT and 5GBaseT (Petr Oros) [1735763] - [netdrv] net: phy: Extract genphy_c45_pma_read_abilities from marvell10g (Petr Oros) [1735763] - [netdrv] net: phy: Move of_set_phy_eee_broken to phy-core.c (Petr Oros) [1735763] - [netdrv] net: phy: Mask-out non-compatible modes when setting the max-speed (Petr Oros) [1735763] - [netdrv] net: phy: don't allow __set_phy_supported to add unsupported modes (Petr Oros) [1735763] - [netdrv] net: phy: remove unneeded masking of PHY register read results (Petr Oros) [1735763] - [netdrv] net: phy: probe the PHY before determining the supported features (Petr Oros) [1735763] - [rpmspec] fix package summary and description for some kernel subpackages ("Herton R. Krzesinski") [1656863] - [fs] mm/huge_memory: fix vmf_insert_pfn_{pmd, pud}() crash, handle unaligned addresses (Jeff Moyer) [1743159] - [mm] mm/huge_memory.c: fix modifying of page protection by insert_pfn_pmd() (Jeff Moyer) [1743159] - [arm64] arm64: disable improved unwind tables (Mark Langsdorf) [1684694] - [arm64] arm64/stacktrace: Export save_stack_trace_regs() (Mark Langsdorf) [1684694] - [fs] nfs4: flex_file: ignore synthetic uid/gid for tightly coupled DSes (Steve Dickson) [1655712] - [include] futex: Update comments and docs about return values of arch futex code (Waiman Long) [1737058] - [arm64] arm64: futex: Avoid copying out uninitialised stack in failed cmpxchg() (Waiman Long) [1737058] - [arm64] arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP (Waiman Long) [1737058] - [kernel] locking/futex: Allow low-level atomic operations to return -EAGAIN (Waiman Long) [1737058] - [arm64] arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value (Waiman Long) [1737058] - [kernel] futex: Ensure that futex address is aligned in handle_futex_death() (Waiman Long) [1737058] - [kernel] futex: Convert futex_pi_state.refcount to refcount_t (Waiman Long) [1737058] - [kernel] sched/wake_q: Reduce reference counting for special users (Waiman Long) [1737058] - [kernel] sched/wake_q: Add branch prediction hint to wake_q_add() cmpxchg (Waiman Long) [1737058] - [kernel] futex: No need to check return value of debugfs_create functions (Waiman Long) [1737058] - [kernel] futex: Handle early deadlock return correctly (Waiman Long) [1737058] - [kernel] futex: Fix barrier comment (Waiman Long) [1737058] - [kernel] futex: Cure exit race (Waiman Long) [1737058] - [kernel] futex: Replace spin_is_locked() with lockdep (Waiman Long) [1737058] - [kernel] futex: Mark expected switch fall-throughs (Waiman Long) [1737058] - [kernel] sched/deadline: Correctly handle active 0-lag timers (Phil Auld) [1735907] - [include] build_bug.h: add wrapper for _Static_assert (Ivan Vecera) [1735752] - [include] build_bug.h: remove most of dummy BUILD_BUG_ON stubs for Sparse (Ivan Vecera) [1735752] - [include] build_bug.h: remove negative-array fallback for BUILD_BUG_ON() (Ivan Vecera) [1735752] - [mm] percpu: remove spurious lock dependency between percpu and sched (Rafael Aquini) [1731180] - [mm] percpu: use chunk scan_hint to skip some scanning (Rafael Aquini) [1731180] - [mm] percpu: convert chunk hints to be based on pcpu_block_md (Rafael Aquini) [1731180] - [mm] percpu: make pcpu_block_md generic (Rafael Aquini) [1731180] - [mm] percpu: use block scan_hint to only scan forward (Rafael Aquini) [1731180] - [mm] percpu: remember largest area skipped during allocation (Rafael Aquini) [1731180] - [mm] percpu: add block level scan_hint (Rafael Aquini) [1731180] - [mm] percpu: set PCPU_BITMAP_BLOCK_SIZE to PAGE_SIZE (Rafael Aquini) [1731180] - [mm] percpu: relegate chunks unusable when failing small allocations (Rafael Aquini) [1731180] - [mm] percpu: manage chunks based on contig_bits instead of free_bytes (Rafael Aquini) [1731180] - [mm] percpu: introduce helper to determine if two regions overlap (Rafael Aquini) [1731180] - [mm] percpu: do not search past bitmap when allocating an area (Rafael Aquini) [1731180] - [mm] percpu: update free path with correct new free region (Rafael Aquini) [1731180] - [mm] mm/percpu: add checks for the return value of memblock_alloc*() (Rafael Aquini) [1731180] - [mm] percpu: km: no need to consider pcpu_group_offsets[0] (Rafael Aquini) [1731180] - [mm] percpu: use nr_groups as check condition (Rafael Aquini) [1731180] - [mm] percpu: convert spin_lock_irq to spin_lock_irqsave. (Rafael Aquini) [1731180] - [mm] mm: percpu: remove unnecessary unlikely() (Rafael Aquini) [1731180] - [fs] /proc/meminfo: add percpu populated pages count (Rafael Aquini) [1731180] - [netdrv] tg3: Use napi_alloc_frag() (Jonathan Toppins) [1724774] - [fs] fuse: fix copy_file_range() in the writeback case (Miklos Szeredi) [1650518] - [fs] fuse: add support for copy_file_range() (Miklos Szeredi) [1650518]- [x86] perf/x86/intel: Fix spurious NMI on fixed counter (Michael Petlan) [1755110] - [x86] perf/x86/intel: Fix race in intel_pmu_disable_event() (Michael Petlan) [1755110] - [netdrv] drivers: tap.c: fix wrong backport causing WARN_ON_ONCE(1) in skb_flow_dissect() (Davide Caratti) [1750711] - [virt] KVM: coalesced_mmio: add bounds checking (Bandan Das) [1746804] {CVE-2019-14821}- [fs] gfs2: clear buf_in_tr when ending a transaction in sweep_bh_for_rgrps (Robert S Peterson) [1750939] - [s390] kvm: s390: kvm_s390_vm_start_migration: check dirty_bitmap before using it as target for memset() (Thomas Huth) [1753260] - [fs] cifs: fix credits leak for SMB1 oplock breaks (Leif Sahlberg) [1752243]- Revert "[redhat] switch secureboot kernel image signing to release keys" (Phillip Lougher) - [iommu] iommu/amd: Add support for X2APIC IOMMU interrupts (Suravee Suthikulpanit) [1734842] - [vhost] vhost: make sure log_num < in_num (Eugenio Perez) [1750882] {CVE-2019-14835}- [kernel] open the RHEL 8.2 development (Phillip Lougher) - [md] Revert "[md] dm: eliminate 'split_discard_bios' flag from DM target interface" (Mike Snitzer) [1749929] - [md] Revert "[md] dm: make sure to obey max_io_len_target_boundary" (Mike Snitzer) [1749929] - [pci] PCI: Restore Resizable BAR size bits correctly for 1MB BARs (Myron Stowe) [1717760] - [net] netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled (Phil Sutter) [1743945] - [net] netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded (Phil Sutter) [1743945] - [drm] drm/qxl: get vga ioports (Gerd Hoffmann) [1728936] - [drm] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe() (Lyude Paul) [1724363]- [md] Revert "[md] dm: eliminate 'split_discard_bios' flag from DM target interface" (Mike Snitzer) [1749929] - [md] Revert "[md] dm: make sure to obey max_io_len_target_boundary" (Mike Snitzer) [1749929] - [pci] PCI: Restore Resizable BAR size bits correctly for 1MB BARs (Myron Stowe) [1717760] - [net] netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled (Phil Sutter) [1743945] - [net] netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded (Phil Sutter) [1743945] - [drm] drm/qxl: get vga ioports (Gerd Hoffmann) [1728936] - [drm] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe() (Lyude Paul) [1724363]- [net] netfilter: nft_set: fix allocation size overflow in privsize callback. (Florian Westphal) [1746338] - [net] net: route dump netlink NLM_F_MULTI flag missing (Stefano Brivio) [1745971] - [net] sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue (Davide Caratti) [1745390] - [net] sched: pfifo_fast: fix wrong dereference when qdisc is reset (Davide Caratti) [1745387] - [scsi] scsi: vmw_pscsi: Fix use-after-free in pvscsi_queue_lck() (David Milburn) [1746597]- [drm] drm/virtio: use virtio_max_dma_size (Gerd Hoffmann) [1739291] - [mm] hwpoison, memory_hotplug: allow hwpoisoned pages to be offlined (Rafael Aquini) [1706088] - [powerpc] kvm: ppc: book3s: Enable XIVE native capability only if OPAL has required functions [BZ1744884] (David Gibson) [1744884] - [scsi] scsi: lpfc: Fix oops when fewer hdwqs than cpus (Dick Kennedy) [1745731] - [scsi] scsi: lpfc: Limit xri count for kdump environment (Dick Kennedy) [1745731] - [scsi] scsi: lpfc: Mitigate high memory pre-allocation by SCSI-MQ (Dick Kennedy) [1745731] - [scsi] scsi: qla2xxx: Fix hardirq-unsafe locking (Himanshu Madhani) [1719941] - [x86] Revert "[x86] x86/kexec/64: Prevent kexec from 5-level paging to a 4-level only kernel" (Baoquan He) [1669088] - [x86] Revert "[x86] x86/boot: Add xloadflags bits to check for 5-level paging support" (Baoquan He) [1669088]- [wireless] mwifiex: fix 802.11n/WPA detection (Jarod Wilson) [1714476] {CVE-2019-3846}- [x86] x86/kdump: Reserve extra memory when SME or SEV is active (Kairui Song) [1728519] - [scsi] scsi: qla2xxx: Fix hardlockup in abort command during driver remove (Himanshu Madhani) [1690041] - [scsi] qla2xxx: Update driver version to 10.01.00.15.08.1-k1 (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix panic from use after free in qla2x00_async_tm_cmd (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: cleanup trace buffer initialization (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: qla2x00_alloc_fw_dump: set ha->eft (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Use mutex protection during qla2x00_sysfs_read_fw_dump() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: move IO flush to the front of NVME rport unregistration (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix NVME cmd and LS cmd timeout race condition (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Complain loudly about reference count underflow (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix race conditions in the code for aborting SCSI commands (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Use an on-stack completion in qla24xx_control_vp() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Change abort wait_loop from msleep to wait_event_timeout (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Set the SCSI command result before calling the command done (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: on session delete, return nvme cmd (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix kernel crash after disconnecting NVMe devices (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Remove the fcport test from qla_nvme_abort_work() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix driver unload when FC-NVMe LUNs are connected (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Set remote port devloss timeout to 0 (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix panic in qla_dfs_tgt_counters_show (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix fw dump corruption (Himanshu Madhani) [1690041] - [x86] kvm: disable nested virt on pre-haswell processors (Paolo Bonzini) [1739739] - [x86] kvm: taint kernel for tech-preview when using nested virtualization (Paolo Bonzini) [1739739] - [x86] kvm: x86: hyper-v: don't crash on KVM_GET_SUPPORTED_HV_CPUID when kvm_intel.nested is disabled (Vitaly Kuznetsov) [1746100]- [char] ipmi: move message error checking to avoid deadlock (Tony Camuso) [1731388 1718699] - [crypto] crypto: testmgr - mark crc32 checksum as FIPS allowed (Neil Horman) [1738887] - [include] dma-mapping: use dma_get_mask in dma_addressing_limited (Don Dutile) [1738631] - [kernel] dma-direct: correct the physical addr in dma_direct_sync_sg_for_cpu/device (Don Dutile) [1738631] - [kernel] dma-direct: only limit the mapping size if swiotlb could be used (Don Dutile) [1738631] - [include] dma-mapping: add a dma_addressing_limited helper (Don Dutile) [1738631] - [kernel] dma-direct: Force unencrypted DMA under SME for certain DMA masks (Don Dutile) [1738631] - [lib] lib/genalloc: introduce chunk owners (Don Dutile) [1738631] - [lib] lib/genalloc: add gen_pool_dma_zalloc() for zeroed DMA allocations (Don Dutile) [1738631] - [lib] lib/genalloc.c: fix allocation of aligned buffer from non-aligned chunk (Don Dutile) [1738631] - [include] dma-mapping: remove dma_max_pfn (Don Dutile) [1738631] - [mmc] mmc: core: let the dma map ops handle bouncing (Don Dutile) [1738631] - [mmc] mmc: core: align max segment size with logical block size (Don Dutile) [1738631] - [kernel] swiotlb: no need to check return value of debugfs_create functions (Don Dutile) [1738631] - [xen] swiotlb: fix phys_addr_t overflow warning (Don Dutile) [1738631] - [kernel] swiotlb: Return consistent SWIOTLB segments/nr_tbl (Don Dutile) [1738631] - [kernel] swiotlb: Group identical cleanup in swiotlb_cleanup() (Don Dutile) [1738631] - [kernel] swiotlb: save io_tlb_used to local variable before leaving critical section (Don Dutile) [1738631] - [kernel] swiotlb: dump used and total slots when swiotlb buffer is full (Don Dutile) [1738631] - [kernel] swiotlb: add checks for the return value of memblock_alloc*() (Don Dutile) [1738631] - [kernel] swiotlb: add debugfs to track swiotlb buffer usage (Don Dutile) [1738631] - [kernel] dma-direct: fix DMA_ATTR_NO_KERNEL_MAPPING (Don Dutile) [1738631] - [kernel] dma-direct: handle DMA_ATTR_NO_KERNEL_MAPPING in common code (Don Dutile) [1738631] - [kernel] dma-direct: fix DMA_ATTR_NO_KERNEL_MAPPING for remapped allocations (Don Dutile) [1738631] - [kernel] dma-mapping: remove a pointless memset in dma_atomic_pool_init (Don Dutile) [1738631] - [kernel] dma-mapping: fix lack of DMA address assignment in generic remap allocator (Don Dutile) [1738631] - [kernel] dma-remap: support DMA_ATTR_NO_KERNEL_MAPPING (Don Dutile) [1738631] - [kernel] dma-mapping: support highmem in the generic remap allocator (Don Dutile) [1738631] - [kernel] dma-direct: handle DMA_ATTR_NON_CONSISTENT in common code (Don Dutile) [1738631] - [kernel] dma-mapping: add a dma_alloc_need_uncached helper (Don Dutile) [1738631] - [kernel] dma-mapping: truncate dma masks to what dma_addr_t can hold (Don Dutile) [1738631] - [kernel] dma-remap: Avoid de-referencing NULL atomic_pool (Don Dutile) [1738631] - [include] dma-buf: add DMA_BUF_SET_NAME ioctls (Don Dutile) [1738631] - [include] dma-buf: give each buffer a full-fledged inode (Don Dutile) [1738631] - [fs] new wrapper: alloc_file_pseudo() (Don Dutile) [1738631] - [kernel] dma-direct: provide generic support for uncached kernel segments (Don Dutile) [1738631] - [include] dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, free}_contiguous() (Don Dutile) [1738631] - [kernel] dma-contiguous: use fallback alloc_pages for single pages (Don Dutile) [1738631] - [kernel] dma-contiguous: add dma_{alloc,free}_contiguous() helpers (Don Dutile) [1738631] - [iommu] iommu/dma: Fix condition check in iommu_dma_unmap_sg (Don Dutile) [1738631] - [iommu] iommu/dma: move the arm64 wrappers to common code (Don Dutile) [1738631] - [iommu] iommu/dma-iommu.c: convert to use vm_map_pages() (Don Dutile) [1738631] - [mm] mm: introduce new vm_map_pages() and vm_map_pages_zero() API (Don Dutile) [1738631] - [mm] arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable (Don Dutile) [1738631] - [arm64] arm64/mm: wire up CONFIG_ARCH_HAS_SET_DIRECT_MAP (Don Dutile) [1738631] - [kernel] mm/hibernation: Make hibernation handle unmapped pages (Don Dutile) [1738631] - [mm] page_poison: play nicely with KASAN (Don Dutile) [1738631] - [mm] mm/vmalloc: Avoid rare case of flushing TLB with weird arguments (Don Dutile) [1738631] - [mm] mm/vmalloc: Fix calculation of direct map addr range (Don Dutile) [1738631] - [mm] mm/vmalloc: Add flag for freeing of special permsissions (Don Dutile) [1738631] - [x86] x86/mm/cpa: Add set_direct_map_*() functions (Don Dutile) [1738631] - [arm64] dma-mapping: add a kconfig symbol for arch_setup_dma_ops availability (Don Dutile) [1738631] - [iommu] iommu/dma: Remove the flush_page callback (Don Dutile) [1738631] - [include] iommu/dma: Cleanup dma-iommu.h (Don Dutile) [1738631] - [dma] dmaengine: Add matching device node validation in __dma_request_channel() (Don Dutile) [1738631] - [dma] dmaengine: dma_request_chan_by_mask() to handle deferred probing (Don Dutile) [1738631] - [include] dma-buf: start caching of sg_table objects v2 (Don Dutile) [1738631] - [kernel] dma-mapping: add a Kconfig symbol to indicate arch_dma_prep_coherent presence (Don Dutile) [1738631] - [iommu] iommu/dma-iommu: Remove iommu_dma_map_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/ls-scfg-msi: Don't map the MSI page in ls_scfg_msi_compose_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-mbi: Don't map the MSI page in mbi_compose_m{b, s}i_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gicv2m: Don't map the MSI page in gicv2m_compose_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-its: Don't map the MSI page in its_irq_compose_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size (Don Dutile) [1738631] - [iommu] iommu/dma-iommu: Split iommu_dma_map_msi_msg() in two parts (Don Dutile) [1738631] - [iommu] iommu/dma: Remove unused variable (Don Dutile) [1738631] - [iommu] iommu/dma: Use NUMA aware memory allocations in __iommu_dma_alloc_pages() (Don Dutile) [1738631] - [kernel] genirq/msi: Add a new field in msi_desc to store an IOMMU cookie (Don Dutile) [1738631] - [pci] PCI/MSI: Remove unused mask_msi_irq() and unmask_msi_irq() (Don Dutile) [1738631] - [include] PCI/MSI: Remove unused __write_msi_msg() and write_msi_msg() (Don Dutile) [1738631] - [include] genirq/msi: Clean up usage of __u8/__u16 types (Don Dutile) [1738631] - [base] platform-msi: Free descriptors in platform_msi_domain_free() (Don Dutile) [1738631] - [base] genirq/msi: Allow creation of a tree-based irqdomain for platform-msi (Don Dutile) [1738631] - [kernel] dma-debug: only skip one stackframe entry (Don Dutile) [1738631] - [dma] dmaengine: idma64: Move driver name to the header (Don Dutile) [1738631] - [kernel] dma-mapping: remove an unnecessary NULL check (Don Dutile) [1738631] - [include] dma-buf: Update [un]map documentation to match the other functions (Don Dutile) [1738631] - [include] dma-buf: Remove leftover [un]map_atomic comments (Don Dutile) [1738631] - [x86] x86/dma: Remove the x86_dma_fallback_dev hack (Don Dutile) [1738631] - [kernel] dma-mapping: remove leftover NULL device support (Don Dutile) [1738631] - [kernel] dma: select GENERIC_ALLOCATOR for DMA_REMAP (Don Dutile) [1738631] - [crypto] crypto: ccp - Ignore unconfigured CCP device on suspend/resume (Gary Hook) [1743999] - [md] dm snapshot: fix oversights in optional discard support (Mike Snitzer) [1744291] - [md] dm snapshot: add optional discard support features (Mike Snitzer) [1744291] - [md] dm snapshot: Use fine-grained locking scheme (Mike Snitzer) [1744291] - [md] dm snapshot: Make exception tables scalable (Mike Snitzer) [1744291] - [md] dm snapshot: Replace mutex with rw semaphore (Mike Snitzer) [1744291] - [md] dm snapshot: Don't sleep holding the snapshot lock (Mike Snitzer) [1744291] - [include] list_bl: Add hlist_bl_add_before/behind helpers (Mike Snitzer) [1744291] - [powerpc] powerpc/rtas: use device model APIs and serialization during LPM (Steve Best) [1741643] - [firmware] firmware/efi: Add NULL pointer checks in efivars API functions (Jarod Wilson) [1741949] - [fs] ovl: fix wrong flags check in FS_IOC_FS[SG]ETXATTR ioctls (Miklos Szeredi) [1724518] - [include] mm: page_cache_add_speculative(): refactor out some code duplication (Michael Petlan) [1738331] - [netdrv] ibmvnic: Unmap DMA address of TX descriptor buffers after use (Steve Best) [1743155] - [fs] NFSv4.1 don't free interrupted slot on open (Steve Dickson) [1708345] - [fs] NFSv4.1: Avoid false retries when RPC calls are interrupted (Steve Dickson) [1708345] - [net] ipv6: Fix return value of ipv6_mc_may_pull() for malformed packets (Stefano Brivio) [1743203] - [net] inet: frags: re-introduce skb coalescing for local delivery (Guillaume Nault) [1719418]- [net] xfrm: fix sa selector validation (Sabrina Dubroca) [1738871] - [net] xfrm: Fix xfrm sel prefix length validation (Sabrina Dubroca) [1738871] - [kernel] locking/rwsem: Prevent decrement of reader count before increment (Waiman Long) [1740338] - [include] include/list: Backport list_cut_before() (Waiman Long) [1740338] - [vhost] vhost: vsock: add weight support (Jason Wang) [1738494] - [vhost] vhost_net: fix possible infinite loop (Jason Wang) [1738494] - [vhost] vhost: introduce vhost_exceeds_weight() (Jason Wang) [1738494] - [vhost] vhost: reject zero size iova range (Jason Wang) [1738494] - [vhost] vhost: silence an unused-variable warning (Jason Wang) [1738494] - [vhost] vhost: correctly check the return value of translate_desc() in log_used() (Jason Wang) [1738494] - [vhost] vhost: return EINVAL if iovecs size does not match the message size (Jason Wang) [1738494] - [vhost] Revert "net: vhost: lock the vqs one by one" (Jason Wang) [1738494] - [vhost] vhost_net: switch to use mutex_trylock() in vhost_net_busy_poll() (Jason Wang) [1738494] - [vhost] vhost: make sure used idx is seen before log in vhost_add_used_n() (Jason Wang) [1738494] - [vhost] vhost: fix IOTLB locking (Jason Wang) [1738494] - [netdrv] tun: wake up waitqueues after IFF_UP is set (Jason Wang) [1738494] - [netdrv] tuntap: synchronize through tfiles array instead of tun->numqueues (Jason Wang) [1738494] - [netdrv] tuntap: fix dividing by zero in ebpf queue selection (Jason Wang) [1738494] - [netdrv] tun: Remove unused first parameter of tun_get_iff() (Jason Wang) [1738494] - [netdrv] tun: Add ioctl() TUNGETDEVNETNS cmd to allow obtaining real net ns of tun device (Jason Wang) [1738494] - [netdrv] tun: add a missing rcu_read_unlock() in error path (Jason Wang) [1738494] - [netdrv] tun: properly test for IFF_UP (Jason Wang) [1738494] - [netdrv] tun: remove unnecessary memory barrier (Jason Wang) [1738494] - [netdrv] tun: fix blocking read (Jason Wang) [1738494] - [netdrv] tun: move the call to tun_set_real_num_queues (Jason Wang) [1738494] - [netdrv] tun: publish tfile after it's fully initialized (Jason Wang) [1738494] - [netdrv] tun: replace get_cpu_ptr with this_cpu_ptr when bh disabled (Jason Wang) [1738494] - [netdrv] tun: remove skb access after netif_receive_skb (Jason Wang) [1738494] - [netdrv] tun: remove unnecessary check in tun_flow_update (Jason Wang) [1738494] - [netdrv] tuntap: fix multiqueue rx (Jason Wang) [1738494] - [netdrv] tun: Adjust on-stack tun_page initialization. (Jason Wang) [1738494] - [netdrv] tuntap: free XDP dropped packets in a batch (Jason Wang) [1738494] - [vhost] vhost_net: mitigate page reference counting during page frag refill (Jason Wang) [1738494] - [vhost] net: vhost: remove bad code line (Jason Wang) [1738494] - [vhost] net: vhost: add rx busy polling in tx path (Jason Wang) [1738494] - [vhost] net: vhost: factor out busy polling logic to vhost_net_busy_poll() (Jason Wang) [1738494] - [vhost] net: vhost: replace magic number of lock annotation (Jason Wang) [1738494] - [vhost] net: vhost: lock the vqs one by one (Jason Wang) [1738494] - [vhost] vhost_net: add a missing error return (Jason Wang) [1738494] - [netdrv] net: tun: remove useless codes of tun_automq_select_queue (Jason Wang) [1738494] - [vhost] vhost_net: batch submitting XDP buffers to underlayer sockets (Jason Wang) [1738494] - [netdrv] tap: accept an array of XDP buffs through sendmsg() (Jason Wang) [1738494] - [netdrv] tuntap: accept an array of XDP buffs through sendmsg() (Jason Wang) [1738494] - [netdrv] tun: switch to new type of msg_control (Jason Wang) [1738494] - [netdrv] tuntap: move XDP flushing out of tun_do_xdp() (Jason Wang) [1738494] - [netdrv] tuntap: split out XDP logic (Jason Wang) [1738494] - [netdrv] tuntap: tweak on the path of skb XDP case in tun_build_skb() (Jason Wang) [1738494] - [netdrv] tuntap: simplify error handling in tun_build_skb() (Jason Wang) [1738494] - [netdrv] tuntap: enable bh early during processing XDP (Jason Wang) [1738494] - [netdrv] tuntap: switch to use XDP_PACKET_HEADROOM (Jason Wang) [1738494] - [netdrv] net: sock: introduce SOCK_XDP (Jason Wang) [1738494] - [vhost] vhost: correctly check the iova range when waking virtqueue (Jason Wang) [1738494] - [vhost] vhost: switch to use new message format (Jason Wang) [1738494] - [vhost] vhost_net: batch update used ring for datacopy TX (Jason Wang) [1738494] - [vhost] vhost_net: rename VHOST_RX_BATCH to VHOST_NET_BATCH (Jason Wang) [1738494] - [vhost] vhost_net: rename vhost_rx_signal_used() to vhost_net_signal_used() (Jason Wang) [1738494] - [vhost] vhost_net: split out datacopy logic (Jason Wang) [1738494] - [vhost] vhost_net: introduce tx_can_batch() (Jason Wang) [1738494] - [vhost] vhost_net: introduce get_tx_bufs() (Jason Wang) [1738494] - [vhost] vhost_net: introduce vhost_exceeds_weight() (Jason Wang) [1738494] - [vhost] vhost_net: introduce helper to initialize tx iov iter (Jason Wang) [1738494] - [vhost] vhost_net: drop unnecessary parameter (Jason Wang) [1738494] - [vhost] vhost_net: Avoid rx vring kicks during busyloop (Jason Wang) [1738494] - [vhost] vhost_net: Avoid rx queue wake-ups during busypoll (Jason Wang) [1738494] - [vhost] vhost_net: Avoid tx vring kicks during busyloop (Jason Wang) [1738494] - [vhost] vhost_net: Rename local variables in vhost_net_rx_peek_head_len (Jason Wang) [1738494] - [mm] x86/mm/fault: Allow stack access below rsp (Waiman Long) [1739341] - [mm] x86/mm: Clarify hardware vs. software "error_code" (Waiman Long) [1739341] - [net] libceph: handle an empty authorize reply (Ilya Dryomov) [1720582]- [drm] drm: Don't retry infinitely when receiving no data on i2c over AUX (Lyude Paul) [1672361] - [scsi] scsi: hpsa: update revision to RH3 (Joseph Szczypek) [1739615] - [scsi] scsi: hpsa: remove printing internal cdb on tag collision (Joseph Szczypek) [1739615] - [scsi] scsi: hpsa: correct scsi command status issue after reset (Joseph Szczypek) [1739615] - [scsi] hpsa: docs: fix broken doc references due to renames (Joseph Szczypek) [1739615] - [scsi] hpsa: docs: pci: fix broken links due to conversion from pci.txt to pci.rst (Joseph Szczypek) [1739615]- [drm] drm/nouveau: Only recalculate PBN/VCPI on mode/connector changes (Lyude Paul) [1734452 1734444] - [drm] drm/nouveau: Only release VCPI slots on mode changes (Lyude Paul) [1734452 1734444] - [infiniband] RDMA/srp: turn off 'use_imm_data' by default (Honggang Li) [1725158] - [gpu] vga_switcheroo: Fix missing gpu_bound call at audio client registration (Lyude Paul) [1739727] - [net] Bluetooth: Fix faulty expression for minimum encryption key size check (Gopal Tiwari) [1743076] {CVE-2019-9506} - [net] Bluetooth: Fix regression with minimum encryption key size alignment (Gopal Tiwari) [1743076] {CVE-2019-9506} - [net] Bluetooth: Align minimum encryption key size for LE and BR/EDR connections (Gopal Tiwari) [1743076] {CVE-2019-9506}- [rpmspec] perf: package tips.txt (Michael Petlan) [1663816] - [mm] mm/memblock.c: skip kmemleak for kasan_init() (Mark Langsdorf) [1722741] - [kernel] mm/resource: Return real error codes from walk failures (Kairui Song) [1740443] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 (Michael Petlan) [1733231] - [tools] selftests/powerpc: Fix Makefiles for headers_install change (Steve Best) [1740127] - [tools] selftests/powerpc: Add more version checks to alignment_handler test (Steve Best) [1740127] - [tools] selftests/powerpc: Skip earlier in alignment_handler test (Steve Best) [1740127] - [tools] selftests/powerpc: Consolidate copy/paste test logic (Steve Best) [1740127] - [s390] s390/bpf: use 32-bit index for tail calls (Yauheni Kaliuta) [1719377] - [s390] s390/bpf: fix lcgr instruction encoding (Yauheni Kaliuta) [1719377] - [tools] selftests/bpf: fix "alu with different scalars 1" on s390 (Yauheni Kaliuta) [1719377] - [net] bpf: fix use after free in bpf_evict_inode (Yauheni Kaliuta) [1719377] - [arm64] bpf, arm64: remove prefetch insn in xadd mapping (Yauheni Kaliuta) [1719377] - [scsi] scsi: lpfc: Fix crash when cpu count is 1 and null irq affinity mask (Dick Kennedy) [1720905] - [md] md: add bitmap_abort label in md_run (Nigel Croxon) [1721944] - [md] md-bitmap: create and destroy wb_info_pool with the change of bitmap (Nigel Croxon) [1721944] - [md] md-bitmap: create and destroy wb_info_pool with the change of backlog (Nigel Croxon) [1721944] - [md] md: introduce mddev_create/destroy_wb_pool for the change of member device (Nigel Croxon) [1721944] - [md] md/raid1: fix potential data inconsistency issue with write behind device (Nigel Croxon) [1721944] - [md] md: fix for divide error in status_resync (Nigel Croxon) [1721944] - [md] md/raid10: read balance chooses idlest disk for SSD (Nigel Croxon) [1721944] - [md] md: raid1-10: Unify r{1,10}bio_pool_free (Nigel Croxon) [1721944] - [md] md: raid10: Use struct_size() in kmalloc() (Nigel Croxon) [1721944] - [md] md/raid1: get rid of extra blank line and space (Nigel Croxon) [1721944] - [md] md: fix spelling typo and add necessary space (Nigel Croxon) [1721944] - [md] md: md.c: Return -ENODEV when mddev is NULL in rdev_attr_show (Nigel Croxon) [1721944] - [md] raid5-cache: Need to do start() part job after adding journal device (Nigel Croxon) [1721944] - [md] drivers: md: Unify common definitions of raid1 and raid10 (Nigel Croxon) [1721944] - [kernel] userfaultfd: use RCU to free the task struct when fork fails (Andrea Arcangeli) [1718498]- [efi] efi/arm: Revert "Defer persistent reservations until after paging_init()" (Mark Salter) [1699961] - [s390] s390/ipl: Fix detection of has_secure attribute (Philipp Rudo) [1740653] - [fs] xfs: don't crash on null attr fork xfs_bmapi_read (Bill O'Donnell) [1719094] - [powerpc] powerpc/mm: Don't report PUDs as memory leaks when using kmemleak (Desnes Augusto Nunes do Rosario) [1716952] - [x86] kvm: x86: introduce is_pae_paging (Vitaly Kuznetsov) [1720556] - [s390] s390/kasan: Fix recursion loop when triggering kdump (Philipp Rudo) [1740249] - [s390] s390/dasd: fix endless loop after read unit address configuration (Philipp Rudo) [1740251] - [tools] selftests/powerpc: Give some tests longer to run (Steve Best) [1740420] - [nvme] nvme-rdma: use dynamic dma mapping per command (David Milburn) [1738252] - [nvme] nvme-rdma: remove redundant reference between ib_device and tagset (David Milburn) [1738252] - [x86] kvm: svm/avic: Do not send AVIC doorbell to self (Janakarajan Natarajan) [1720981] - [net] tipc: initialise addr_trial_end when setting node addresses (Jon Maloy) [1740317] - [net] tipc: ensure head->lock is initialised (Jon Maloy) [1740317] - [net] netfilter: nf_tables: fix oops during rule dump (Stefano Brivio) [1739734] - [include] netfilter: nf_tables: correct NFT_LOGLEVEL_MAX value (Stefano Brivio) [1739734] - [net] netfilter: nft_compat: do not dump private area (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: fix register ordering (Stefano Brivio) [1739734] - [net] ipvs: defer hook registration to avoid leaks (Stefano Brivio) [1739734] - [net] ipvs: Fix use-after-free in ip_vs_in (Stefano Brivio) [1739734] - [net] netfilter: nf_conntrack_h323: restore boundary check correctness (Stefano Brivio) [1739734] - [net] netfilter: fix nf_l4proto_log_invalid to log invalid packets (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: prevent shift wrap in nft_chain_parse_hook() (Stefano Brivio) [1739734] - [net] netfilter: nft_set_rbtree: check for inactive element after flag mismatch (Stefano Brivio) [1739734] - [net] netfilter: nft_compat: use-after-free when deleting targets (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: fix leaking object reference count (Stefano Brivio) [1739734] - [net] ip6_gre: reload ipv6h in prepare_ip6gre_xmit_ipv6 (Stefano Brivio) [1739640] - [net] ipv6: Unlink sibling route in case of failure (Stefano Brivio) [1739640] - [net] ipv6: Default fib6_type to RTN_UNICAST when not set (Stefano Brivio) [1739640] - [net] inet: frags: call inet_frags_fini() after unregister_pernet_subsys() (Stefano Brivio) [1739640] - [net] ipv6: flowlabel: fl6_sock_lookup() must use atomic_inc_not_zero (Stefano Brivio) [1739640] - [net] netfilter: ipset: Fix rename concurrency with listing (Stefano Brivio) [1739578] - [net] netfilter: ipset: Fix error path in set_target_v3_checkentry() (Stefano Brivio) [1739578] - [net] netfilter: ipset: Fix the last missing check of nla_parse_deprecated() (Stefano Brivio) [1739578] - [net] netfilter: ipset: fix a missing check of nla_parse (Stefano Brivio) [1739578] - [netdrv] ipvlan, l3mdev: fix broken l3s mode wrt local routes (Guillaume Nault) [1738329] - [net] sched: use temporary variable for actions indexes (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] sched: cbs: Fix error path of cbs_module_init (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] netem: fix use after free and double free with packet corruption (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] netem: fix backlog accounting for corrupted GSO frames (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [netdrv] macsec: fix checksumming after decryption (Sabrina Dubroca) [1738237] - [netdrv] macsec: fix use-after-free of skb during RX (Sabrina Dubroca) [1738237] - [net] xfrm interface: fix memory leak on creation (Sabrina Dubroca) [1738267] - [net] tls: fix socket wmem accounting on fallback with netem (Sabrina Dubroca) [1739260] - [net] tls: fix poll ignoring partially copied records (Sabrina Dubroca) [1739260] - [net] tls: make sure offload also gets the keys wiped (Sabrina Dubroca) [1739260] - [net] tls: reject offload of TLS 1.3 (Sabrina Dubroca) [1739260] - [net] tls: fix page double free on TX cleanup (Sabrina Dubroca) [1739260] - [net] tls, correctly account for copied bytes with multiple sk_msgs (Sabrina Dubroca) [1739260] - [net] tcp: fix tcp_set_congestion_control() use from bpf hook (Guillaume Nault) [1738272] - [net] tcp: Reset bytes_acked and bytes_received when disconnecting (Guillaume Nault) [1738272] - [net] tcp: Ensure DCTCP reacts to losses (Guillaume Nault) [1738272] - [net] tcp: tcp_v4_err() should be more careful (Guillaume Nault) [1738272] - [net] tcp: avoid resetting ACK timer upon receiving packet with ECN CWR flag (Guillaume Nault) [1738272] - [net] tcp: always ACK immediately on hole repairs (Guillaume Nault) [1738272] - [net] tcp: avoid resetting ACK timer in DCTCP (Guillaume Nault) [1738272] - [net] tcp: mandate a one-time immediate ACK (Guillaume Nault) [1738272] - [net] tipc: fix unitilized skb list crash (Xin Long) [1734298] - [net] tipc: compat: allow tipc commands without arguments (Xin Long) [1738397] - [net] sctp: factor out sctp_connect_add_peer (Xin Long) [1738393] - [net] sctp: factor out sctp_connect_new_asoc (Xin Long) [1738393] - [net] sctp: clean up __sctp_connect (Xin Long) [1738393] - [net] sctp: check addr_size with sa_family_t size in __sctp_setsockopt_connectx (Xin Long) [1738393] - [net] sctp: only copy the available addr data in sctp_transport_init (Xin Long) [1738393] - [net] sctp: drop unneeded likely() call around IS_ERR() (Xin Long) [1738393] - [net] sctp: fix warning "NULL check before some freeing functions is not needed" (Xin Long) [1738393] - [net] sctp: remove rcu_read_lock from sctp_bind_addr_state (Xin Long) [1738393] - [net] sctp: rename sp strm_interleave to ep intl_enable (Xin Long) [1738393] - [net] sctp: rename asoc intl_enable to asoc peer.intl_capable (Xin Long) [1738393] - [net] sctp: remove prsctp_enable from asoc (Xin Long) [1738393] - [net] sctp: remove reconf_enable from asoc (Xin Long) [1738393] - [net] sctp: count data bundling sack chunk for outctrlchunks (Xin Long) [1738393] - [net] sctp: fix error handling on stream scheduler initialization (Xin Long) [1738393] - [net] sctp: not bind the socket in sctp_connect (Xin Long) [1738393] - [net] sctp: change to hold sk after auth shkey is created successfully (Xin Long) [1738393] - [net] sctp: Free cookie before we memdup a new one (Xin Long) [1738393] - [net] Fix memory leak in sctp_process_init (Xin Long) [1738393] - [net] sctp: deduplicate identical skb_checksum_ops (Xin Long) [1738393] - [net] sctp: Check address length before reading address family (Xin Long) [1738393] - [net] sctp: Pass sk_buff_head explicitly to sctp_ulpq_tail_event(). (Xin Long) [1738393] - [net] sctp: Make sctp_enqueue_event tak an skb list. (Xin Long) [1738393] - [net] sctp: Use helper for sctp_ulpq_tail_event() when hooked up to ->enqueue_event (Xin Long) [1738393] - [net] sctp: Always pass skbs on a list to sctp_ulpq_tail_event(). (Xin Long) [1738393] - [net] sctp: Remove superfluous test in sctp_ulpq_reasm_drain(). (Xin Long) [1738393] - [netdrv] ppp: Remove direct skb_queue_head list pointer access. (Xin Long) [1738393] - [net] ipv6: fix neighbour resolution with raw socket (Stefano Brivio) [1728320] - [net] ipv6: constify rt6_nexthop() (Stefano Brivio) [1728320] - [net] openvswitch: fix csum updates for MPLS actions (Marcelo Leitner) [1738654] - [net] udp_gso: Allow TX timestamp with UDP GSO (Paolo Abeni) [1738585] - [net] bpf: udp: ipv6: Avoid running reuseport's bpf_prog from __udp6_lib_err (Paolo Abeni) [1738585] - [net] fix ifindex collision during namespace removal (Paolo Abeni) [1738492] - [net] rtnl: return early from rtnl_unregister_all when protocol isn't registered (Paolo Abeni) [1738492] - [net] neigh: fix use-after-free read in pneigh_get_next (Paolo Abeni) [1738492] - [net] socket: set sock->sk to NULL after calling proto_ops::release() (Paolo Abeni) [1738492] - [net] socket: make bond ioctls go through compat_ifreq_ioctl() (Paolo Abeni) [1738492] - [net] socket: fix SIOCGIFNAME in compat (Paolo Abeni) [1738492] - [net] Revert "kill dev_ifsioc()" (Paolo Abeni) [1738492] - [net] revert "socket: fix struct ifreq size in compat ioctl" (Paolo Abeni) [1738492] - [net] ip6_tunnel: fix possible use-after-free on xmit (Guillaume Nault) [1737105] - [net] genetlink: Fix a memory leak on error path (Guillaume Nault) [1737821] - [net] netfilter: ipset: Copy the right MAC address in bitmap:ip, mac and hash:ip, mac sets (Stefano Brivio) [1723605] - [net] netfilter: ipset: Actually allow destination MAC address for hash:ip, mac sets too (Stefano Brivio) [1723605] - [net] igmp: fix memory leak in igmpv3_del_delrec() (Hangbin Liu) [1736816] - [net] don't clear sock->sk early to avoid trouble in strparser (Hangbin Liu) [1736816] - [net] ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST (Hangbin Liu) [1736816] - [net] ipv4/igmp: fix another memory leak in igmpv3_del_delrec() (Hangbin Liu) [1736816] - [net] route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race (Hangbin Liu) [1736816] - [net] netlabel: fix out-of-bounds memory accesses (Hangbin Liu) [1736816] - [net] ipv4: Fix memory leak in network namespace dismantle (Hangbin Liu) [1736816] - [net] bridge: delete local fdb on device init failure (Hangbin Liu) [1736824] - [net] bridge: stp: don't cache eth dest pointer before skb pull (Hangbin Liu) [1736824] - [net] bridge: don't cache ether dest pointer on input (Hangbin Liu) [1736824] - [net] bridge: mcast: fix stale ipv6 hdr pointer when handling v6 query (Hangbin Liu) [1736824] - [net] bridge: mcast: fix stale nsrcs pointer in igmp3/mld2 report handling (Hangbin Liu) [1736824] - [net] bridge: fix per-port af_packet sockets (Hangbin Liu) [1736824] - [include] ip: fix ip_mc_may_pull() return value (Hangbin Liu) [1736824] - [net] bridge: use struct_size() helper (Hangbin Liu) [1736824] - [net] bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() calls (Hangbin Liu) [1736824] - [net] net/bridge/br_multicast: remove redundant variable "err" (Hangbin Liu) [1736824] - [x86] x86/kdump/64: Restrict kdump kernel reservation to <64TB (Baoquan He) [1669090] - [x86] x86/kexec/64: Prevent kexec from 5-level paging to a 4-level only kernel (Baoquan He) [1669088] - [x86] x86/boot: Add xloadflags bits to check for 5-level paging support (Baoquan He) [1669088] - [tools] perf header: Fix wrong node write in NUMA_TOPOLOGY feature (Michael Petlan) [1722044] - [tools] perf c2c: Fix c2c report for empty numa node (Michael Petlan) [1722044] - [x86] kvm: svm/avic: fix off-by-one in checking host APIC ID (Janakarajan Natarajan) [1720983]- [fs] gfs2: gfs2_walk_metadata fix (Andreas Grunbacher) [1724361] - [netdrv] mlx4/en_netdev: allow offloading VXLAN over VLAN (Paolo Abeni) [1733532] - [fs] xfs: always rejoin held resources during defer roll (Bill O'Donnell) [1706588] - [bluetooth] Bluetooth: hci_uart: check for missing tty operations (Gopal Tiwari) [1734239] {CVE-2019-10207}- [documentation] Documentation: Add swapgs description to the Spectre v1 documentation (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [documentation] Documentation: Add section about CPU vulnerabilities for Spectre (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/entry/64: Use JMP instead of JMPQ (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation: Enable Spectre v1 swapgs mitigations (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/cpufeatures: Combine word 11 and 12 into a new scattered features word (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/cpufeatures: Carve out CQM features retrieval (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [netdrv] ibmveth: fix DMA unmap error in ibmveth_xmit_start error path (Steve Best) [1739431] - [rpmspec] rpmspec: use make macro to do headers_install with rpm CFLAGS/LDFLAGS ("Herton R. Krzesinski") [1738659] - [rpmspec] rpmspec: use tools_make for building tools ("Herton R. Krzesinski") [1738659] - [tools] tools gpio: Allow overriding CFLAGS ("Herton R. Krzesinski") [1738659] - [tools] tools thermal tmon: Allow overriding CFLAGS assignments ("Herton R. Krzesinski") [1738659] - [tools] tools iio: Override CFLAGS assignments ("Herton R. Krzesinski") [1738659] - [fs] NFS: Fix dentry revalidation on NFSv4 lookup (Steve Dickson) [1667774] - [fs] pNFS: Avoid read/modify/write when it is not necessary (Benjamin Coddington) [1680649] - [fs] pNFS: Fix potential corruption of page being written (Benjamin Coddington) [1680649] - [fs] gfs2: Inode dirtying fix (Andreas Grunbacher) [1724361] - [net] sunrpc: make visible processing error in bc_svc_process() ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: remove unused xpo_prep_reply_hdr callback ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: remove svc_tcp_bc_class ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: replace svc_serv->sv_bc_xprt by boolean flag ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: use-after-free in svc_process_common() ("J. Bruce Fields") [1660823] {CVE-2018-16884}- [scsi] scsi: implement .cleanup_rq callback (Ming Lei) [1696256] - [md] blk-mq: add callback of .cleanup_rq (Ming Lei) [1696256] - [block] blk-mq: insert rq with DONTPREP to hctx dispatch list when requeue (Ming Lei) [1696256] - [scsi] scsi: core: Fix race on creating sense cache (Ming Lei) [1696256] - [block] blk-mq: balance mapping between present CPUs and queues (Ming Lei) [1733040] - [block] blk-mq: Fix spelling in a source code comment (Ming Lei) [1733040] - [drm] drm/i915: Don't dereference request if it may have been retired when printing (Lyude Paul) [1715997] - [drm] drm/i915/icl: whitelist PS_(DEPTH|INVOCATION)_COUNT (Lyude Paul) [1715997] - [drm] drm/i915: whitelist PS_(DEPTH|INVOCATION)_COUNT (Lyude Paul) [1715997] - [drm] drm/i915: Support flags in whitlist WAs (Lyude Paul) [1715997] - [drm] drm/i915: Disable SAMPLER_STATE prefetching on all Gen11 steppings. (Lyude Paul) [1715997] - [drm] drm/i915/userptr: Acquire the page lock around set_page_dirty() (Lyude Paul) [1715997] - [drm] drm/i915/perf: fix ICL perf register offsets (Lyude Paul) [1715997] - [drm] drm/virtio: Add memory barriers for capset cache. (Lyude Paul) [1715997] - [drm] drm/amd/display: Always allocate initial connector state state (Lyude Paul) [1715997] - [drm] drm/vkms: Forward timer right after drm_crtc_handle_vblank (Lyude Paul) [1715997] - [drm] drm/crc-debugfs: Also sprinkle irqrestore over early exits (Lyude Paul) [1715997] - [drm] drm/crc-debugfs: User irqsafe spinlock in drm_crtc_add_crc_entry (Lyude Paul) [1715997] - [drm] drm/amd/display: Increase Backlight Gain Step Size (Lyude Paul) [1715997] - [drm] drm/amd/display: CS_TFM_1D only applied post EOTF (Lyude Paul) [1715997] - [drm] drm/edid: Fix a missing-check bug in drm_load_edid_firmware() (Lyude Paul) [1715997] - [drm] drm/amdkfd: Fix sdma queue map issue (Lyude Paul) [1715997] - [drm] drm/amdkfd: Fix a potential memory leak (Lyude Paul) [1715997] - [drm] drm/amd/display: Disable ABM before destroy ABM struct (Lyude Paul) [1715997] - [drm] drm/amdgpu/sriov: Need to initialize the HDP_NONSURFACE_BAStE (Lyude Paul) [1715997] - [drm] drm/amdgpu: Reserve shared fence for eviction fence (Lyude Paul) [1715997] - [drm] drm/amd/display: Disable cursor when offscreen in negative direction (Lyude Paul) [1715997] - [drm] drm/amd/display: Fill prescale_params->scale for RGB565 (Lyude Paul) [1715997] - [drm] drm/virtio: set seqno for dma-fence (Lyude Paul) [1715997] - [drivers] dma-buf: Discard old fence_excl on retrying get_fences_rcu for realloc (Lyude Paul) [1715997] - [drivers] dma-buf: balance refcount inbalance (Lyude Paul) [1715997] - [drm] drm/edid: parse CEA blocks embedded in DisplayID (Lyude Paul) [1715997] - [drm] drm/nouveau/i2c: Enable i2c pads & busses during preinit (Lyude Paul) [1715997] - [drm] drm: return -EFAULT if copy_to_user() fails (Lyude Paul) [1715997] - [drm] drm/vmwgfx: fix a warning due to missing dma_parms (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Honor the sg list segment size limitation (Lyude Paul) [1715997] - [drm] drm/virtio: move drm_connector_update_edid_property() call (Lyude Paul) [1715997] - [drm] drm/amdgpu/gfx9: use reset default for PA_SC_FIFO_SIZE (Lyude Paul) [1715997] - [drm] drm/amdgpu: Don't skip display settings in hwmgr_resume() (Lyude Paul) [1717138 1715997] - [drm] drm/amd/powerplay: use hardware fan control if no powerplay fan table (Lyude Paul) [1715997] - [drm] drm/i915/ringbuffer: EMIT_INVALIDATE *before* switch context (Lyude Paul) [1715997] - [drm] drm/i915: Skip modeset for cdclk changes if possible (Lyude Paul) [1715997] - [drm] drm/i915: Remove redundant store of logical CDCLK state (Lyude Paul) [1715997] - [drm] drm/i915: Save the old CDCLK atomic state (Lyude Paul) [1715997] - [drm] drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled (Lyude Paul) [1715997] - [drm] drm/i915: Don't clobber M/N values during fastset check (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Use the backdoor port if the HB port is not available (Lyude Paul) [1715997] - [drm] drm: add fallback override/firmware EDID modes workaround (Lyude Paul) [1715997] - [drm] drm/edid: abstract override/firmware EDID retrieval (Lyude Paul) [1715997] - [drm] drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define() (Lyude Paul) [1715997] - [drm] drm/vmwgfx: integer underflow in vmw_cmd_dx_set_shader() leading to an invalid read (Lyude Paul) [1715997] - [drm] drm/amdgpu: keep stolen memory on picasso (Lyude Paul) [1715997] - [drm] drm/i915/dmc: protect against reading random memory (Lyude Paul) [1715997] - [drm] drm/i915: Fix per-pixel alpha with CCS (Lyude Paul) [1715997] - [drm] drm/i915/dsi: Use a fuzzy check for burst mode clock check (Lyude Paul) [1715997] - [drm] drm/i915/sdvo: Implement proper HDMI audio support for SDVO (Lyude Paul) [1715997] - [drm] drm/amdgpu/{uvd,vcn}: fetch ring's read_ptr after alloc (Lyude Paul) [1715997] - [drm] drm/amd/display: Use plane->color_space for dpp if specified (Lyude Paul) [1715997] - [drm] drm/amd/display: disable link before changing link settings (Lyude Paul) [1715997] - [drm] Revert "drm: allow render capable master with DRM_AUTH ioctls" (Lyude Paul) [1715997] - [drm] drm/amd: fix fb references in async update (Lyude Paul) [1715997] - [drm] drm/i915/gvt: Initialize intel_gvt_gtt_entry in stack (Lyude Paul) [1715997] - [drm] drm: don't block fb changes for async plane updates (Lyude Paul) [1715997] - [drm] drm/i915/gvt: emit init breadcrumb for gvt request (Lyude Paul) [1715997] - [drm] drm/amdgpu: fix ring test failure issue during s3 in vce 3.0 (V2) (Lyude Paul) [1715997] - [drm] drm/amd/display: Add ASICREV_IS_PICASSO (Lyude Paul) [1715997] - [drm] drm/amdgpu/soc15: skip reset on init (Lyude Paul) [1715997] - [include] drm/i915: Fix I915_EXEC_RING_MASK (Lyude Paul) [1715997] - [drm] drm/amdgpu: remove ATPX_DGPU_REQ_POWER_FOR_DISPLAYS check when hotplug-in (Lyude Paul) [1715997] - [drm] drm/radeon: prefer lower reference dividers (Lyude Paul) [1715997] - [drm] drm/amdgpu/psp: move psp version specific function pointers to early_init (Lyude Paul) [1715997] - [drm] drm: add non-desktop quirks to Sensics and OSVR headsets. (Lyude Paul) [1715997] - [drm] drm: add non-desktop quirk for Valve HMDs (Lyude Paul) [1715997] - [drm] drm/cma-helper: Fix drm_gem_cma_free_object() (Lyude Paul) [1715997] - [drm] drm/lease: Make sure implicit planes are leased (Lyude Paul) [1715997] - [drm] drm: Expose "FB_DAMAGE_CLIPS" property to atomic aware user-space only (Lyude Paul) [1715997] - [drm] drm/atomic: Wire file_priv through for property changes (Lyude Paul) [1715997] - [drm] drm/fb-helper: generic: Call drm_client_add() after setup is done (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Don't send drm sysfs hotplug events on initial master set (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Fix compat mode shader operation (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Fix user space handle equal to zero (Lyude Paul) [1715997] - [drm] drm: Wake up next in drm_read() chain if we are forced to putback the event (Lyude Paul) [1715997] - [drm] drm/drv: Hold ref on parent device during drm_device lifetime (Lyude Paul) [1715997] - [drm] drm/amd/display: Reset planes that were disabled in init_pipes (Lyude Paul) [1715997] - [drm] drm/amd/display: Fix exception from AUX acquire failure (Lyude Paul) [1715997] - [drm] drm: writeback: Fix leak of writeback job (Lyude Paul) [1715997] - [drm] drm/amd/display: Set stream->mode_changed when connectors change (Lyude Paul) [1715997] - [drm] drm/amd/display: half bandwidth for YCbCr420 during validation (Lyude Paul) [1715997] - [drm] drm/amd/display: Re-add custom degamma support (Lyude Paul) [1715997] - [drm] drm/amd/display: Fix Divide by 0 in memory calculations (Lyude Paul) [1715997] - [drm] drm/amd/display: add pipe lock during stream update (Lyude Paul) [1715997] - [drm] drm/amd/display: Reset alpha state for planes to the correct values (Lyude Paul) [1715997] - [drm] drm/amd/display: Update ABM crtc state on non-modeset (Lyude Paul) [1715997] - [drm] drm/amd/display: Link train only when link is DP and backend is enabled (Lyude Paul) [1715997] - [drm] drm/amd/display: fix releasing planes when exiting odm (Lyude Paul) [1715997] - [drm] drm/amd/display: Prevent cursor hotspot overflow for RV overlay planes (Lyude Paul) [1715997] - [drm] drm/amd/display: use proper formula to calculate bandwidth from timing (Lyude Paul) [1715997] - [drm] drm/amdgpu: fix old fence check in amdgpu_fence_emit (Lyude Paul) [1715997] - [drm] drm/nouveau/bar/nv50: ensure BAR is mapped (Lyude Paul) [1715997] - [pci] PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken (Lyude Paul) [1715997] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty (Waiman Long) [1737089] - [tools] perf vendor events power9: Added missing event descriptions (Michael Petlan) [1581405] - [crypto] crypto: skcipher - fix crash flushing dcache in error path (David Gibson) [1724370] - [netdrv] bnx2x: Prevent load reordering in tx completion processing (Manish Chopra) [1729599] - [x86] x86/boot/KASLR: Always return a value from process_mem_region (Baoquan He) [1564822] - [x86] x86/kexec: Add the ACPI NVS region to the ident map (Baoquan He) [1564822] - [x86] x86/boot: Call get_rsdp_addr() after console_init() (Baoquan He) [1564822] - [x86] x86/boot: Use efi_setup_data for searching RSDP on kexec-ed kernels (Baoquan He) [1564822] - [x86] x86/kexec: Add the EFI system tables and ACPI tables to the ident map (Baoquan He) [1564822] - [x86] x86/boot: Fix incorrect ifdeffery scope (Baoquan He) [1564822] - [x86] x86/boot: Correct RSDP parsing with 32-bit EFI (Baoquan He) [1564822] - [x86] x86/boot: Fix randconfig build error due to MEMORY_HOTREMOVE (Baoquan He) [1564822] - [x86] x86/boot: Fix cmdline_find_option() prototype visibility (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Limit KASLR to extract the kernel in immovable memory only (Baoquan He) [1564822] - [x86] x86/boot: Parse SRAT table and count immovable memory regions (Baoquan He) [1564822] - [x86] x86/boot: Early parse RSDP and save it in boot_params (Baoquan He) [1564822] - [x86] x86/boot: Search for RSDP in memory (Baoquan He) [1564822] - [x86] x86/boot: Search for RSDP in the EFI tables (Baoquan He) [1564822] - [x86] x86/boot: Add "acpi_rsdp=" early parsing (Baoquan He) [1564822] - [x86] x86/boot: Copy kstrtoull() to boot/string.c (Baoquan He) [1564822] - [x86] x86/boot: Use CC_SET()/CC_OUT() instead of open coding it (Baoquan He) [1564822] - [x86] x86/boot: Build the command line parsing code unconditionally (Baoquan He) [1564822] - [x86] x86/boot: Clear RSDP address in boot_params for broken loaders (Baoquan He) [1564822] - [x86] x86/acpi, x86/boot: Take RSDP address from boot params if available (Baoquan He) [1564822] - [x86] x86/boot: Mostly revert commit ae7e1238e68f2a ("Add ACPI RSDP address to setup_header") (Baoquan He) [1564822] - [x86] x86/acpi, x86/boot: Take RSDP address for boot params if available (Baoquan He) [1564822] - [x86] x86/boot: Add ACPI RSDP address to setup_header (Baoquan He) [1564822] - [x86] x86/xen: Fix boot loader version reported for PVH guests (Baoquan He) [1564822] - [x86] x86/boot: Add missing va_end() to die() (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Remove return value from handle_mem_options() (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Make local variable mem_limit static (Baoquan He) [1564822] - [crypto] crypto: user - prevent operating on larval algorithms (Herbert Xu) [1728835]- [scsi] scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA (Tomas Henzl) [1734769] - [netdrv] bonding: Force slave speed check after link state recovery for 802.3ad (Jarod Wilson) [1732820] - [pci] PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary (Mohammed Gamal) [1733302] - [pci] PCI: hv: Add hv_pci_remove_slots() when we unload the driver (Mohammed Gamal) [1733302] - [pci] PCI: hv: Fix a use-after-free bug in hv_eject_device_work() (Mohammed Gamal) [1733302] - [pci] PCI: hv: Fix a memory leak in hv_eject_device_work() (Mohammed Gamal) [1733302] - [nvme] nvmet: fix setting ns queue's segment boundary (Ming Lei) [1734458]- [tools] perf script python: Remove explicit shebang from setup.py (Michael Petlan) [1664768 1663814] - [tools] perf script python: Remove explicit shebang from tests/attr.c (Michael Petlan) [1664768 1663814] - [tools] perf script python: Remove explicit shebang from Python scripts (Michael Petlan) [1664768 1663814] - [tools] perf script python: Use PyBytes for attr in trace-event-python (Michael Petlan) [1664768 1663814] - [tools] perf script python: Add trace_context extension module to sys.modules (Michael Petlan) [1663814 1664768] - [tools] perf scripts python: exported-sql-viewer.py: Fix python3 support (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to export-to-sqlite.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to export-to-postgresql.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to exported-sql-viewer.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to intel-pt-events.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to event_analyzing_sample.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: add Python3 support to check-perf-trace.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to futex-contention.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Remove mixed indentation (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to syscall-counts-by-pid.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to syscall-counts.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to stackcollapse.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to sctop.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to powerpc-hcalls.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to net_dropmonitor.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to mem-phys-addr.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to failed-syscalls-by-pid.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to netdev-times.py (Michael Petlan) [1663814 1664768] - [powerpc] mm_iommu: Allow pinning large regions (David Gibson) [1629531] - [powerpc] mm_iommu: Fix potential deadlock (David Gibson) [1629531] - [powerpc] mm/iommu: allow large IOMMU page size only for hugetlb backing (David Gibson) [1629531] - [powerpc] mm/iommu: allow migration of cma allocated pages during mm_iommu_do_alloc (David Gibson) [1629531] - [mm] update get_user_pages_longterm to migrate pages allocated from CMA region (David Gibson) [1629531] - [kernel] mm/cma: add PF flag to force non cma alloc (David Gibson) [1629531] - [net] tcp: be more careful in tcp_fragment() (Marcelo Leitner) [1732103] - [net] tipc: initialize 'validated' field of received packets (Jon Maloy) [1730574] - [documentation] networking: fix default_ttl typo in mpls-sysctl (Hangbin Liu) [1724882]- [powerpc] powerpc/mm: Limit rma_size to 1TB when running without HV mode (Suraj Jitindar Singh) [1723297] - [x86] kvm: nvmx: Set cached_vmcs12 and cached_shadow_vmcs12 NULL after free (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: do not use dangling shadow VMCS after guest reset (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Clear pending KVM_REQ_GET_VMCS12_PAGES when leaving nested (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Change KVM_STATE_NESTED_EVMCS to signal vmcs12 is copied from eVMCS (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Allow restore nested-state to enable eVMCS when vCPU in SMM (Paolo Bonzini) [1732096] - [tools] kvm: nvmx: reorganize initial steps of vmx_set_nested_state (Paolo Bonzini) [1732096] - [x86] kvm: x86: Modify struct kvm_nested_state to have explicit fields for data (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Clear nested_run_pending if setting nested state fails (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: really fix the size checks on KVM_SET_NESTED_STATE (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Set nested_run_pending in vmx_set_nested_state after checks complete (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: KVM_SET_NESTED_STATE - Tear down old EVMCS state before setting new state (Paolo Bonzini) [1732096] - [tools] kvm: selftests: avoid type punning (Paolo Bonzini) [1732096] - [tools] tests: kvm: Add tests for KVM_SET_NESTED_STATE (Paolo Bonzini) [1732096] - [x86] kvm: x86/mmu: Allocate PAE root array when using SVM's 32-bit NPT (Paolo Bonzini) [1732096] - [x86] kvm: lapic: Fix pending interrupt in IRR blocked by software disable LAPIC (Paolo Bonzini) [1732096] - [x86] kvm: x86: Dynamically allocate user_fpu (Paolo Bonzini) [1732096] - [x86] revert "kvm: x86: Use task structs fpu field for user" (Paolo Bonzini) [1732096] - [x86] hyperv: suppress "pci: fatal: No config space access function found" (Raghavendra Rao) [1734265] - [powerpc] [kvm] kvm: ppc: book3s hv: Save and restore guest visible PSSCR bits on pseries (Suraj Jitindar Singh) [1710726] - [powerpc] pmu: Set pmcregs_in_use in paca when running as LPAR (Suraj Jitindar Singh) [1710726] - [powerpc] [kvm] kvm: ppc: book3s hv: Always save guest pmu for guest capable of nesting (Suraj Jitindar Singh) [1710726] - [powerpc] kvm: ppc: book3s hv: xive: fix rollback when kvmppc_xive_create fails (David Gibson) [1731900] - [powerpc] powerpc/pseries: Fix xive=off command line (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: don't use string functions from lib/ (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc: remove CONFIG_CMDLINE #ifdef mess (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc: Move `path` variable inside DEBUG_PROM (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Generate "phandle" instead of "linux, phandle" (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Move a few remaining statics to appropriate sections (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Move prom_radix_disable to __prombss (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Remove support for OPAL v2 (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Replace __initdata with __prombss when applicable (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Make of_workarounds static (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle (David Gibson) [1730183] - [powerpc] powerpc/powernv/idle: Restore IAMR after idle (David Gibson) [1730183]- [kernel] fork: report pid exhaustion correctly (Don Dutile) [1726448] - [lib] idr: Fix idr_get_next race with idr_remove (Don Dutile) [1726448] - [kernel] Fix failure path in alloc_pid() (Don Dutile) [1726448] - [target] scsi: iscsi: set auth_protocol back to NULL if CHAP_A value is not supported (Maurizio Lombardi) [1733498]- [infiniband] IB/umem: Add missing down_read on umem_rwsem (Alaa Hleihel) [1733188] - [fs] gfs2: Fix rounding error in gfs2_iomap_page_prepare (Andreas Grunbacher) [1733621] - [s390] s390/qeth: cancel cmd on early error (Philipp Rudo) [1731430] - [s390] s390/qeth: simplify reply object handling (Philipp Rudo) [1731430] - [s390] s390/qeth: release cmd buffer in error paths (Philipp Rudo) [1731430] - [mm] mm: hugetlb: soft-offline: dissolve_free_huge_page() return zero on !PageHuge (Rafael Aquini) [1706088] - [mm] mm: soft-offline: return -EBUSY if set_hwpoison_free_buddy_page() fails (Rafael Aquini) [1706088] - [mm] mm: soft-offline: close the race against page allocation (Rafael Aquini) [1706088] - [mm] mm: fix race on soft-offlining free huge pages (Rafael Aquini) [1706088] - [pci] PCI: Probe bridge window attributes once at enumeration-time (Myron Stowe) [1730763] - [mm] swap_readpage(): avoid blk_wake_io_task() if !synchronous (Ming Lei) [1724016] - [mm] mm/page_io.c: fix polled swap page in (Ming Lei) [1724016] - [include] fs: fix kABI for struct pipe_buf_operations (Miklos Szeredi) [1705007] {CVE-2019-11487} - [fs] fs: prevent page refcount overflow in pipe_buf_get (Miklos Szeredi) [1705007] {CVE-2019-11487} - [mm] mm: prevent get_user_pages() from overflowing page refcount (Miklos Szeredi) [1705007] {CVE-2019-11487} - [include] mm: add 'try_get_page()' helper function (Miklos Szeredi) [1705007] {CVE-2019-11487} - [include] mm: make page ref count overflow check tighter and more explicit (Miklos Szeredi) [1705007] {CVE-2019-11487} - [fs] fuse: call pipe_buf_release() under pipe lock (Miklos Szeredi) [1705007] {CVE-2019-11487} - [kernel] trace: Fix preempt_enable_no_resched() abuse (Phil Auld) [1705550] - [kernel] sched/numa: Fix a possible divide-by-zero (Phil Auld) [1705550] - [kernel] sched/core: Fix buffer overflow in cgroup2 property cpu.max (Phil Auld) [1705550] - [kernel] sched/fair: Remove unused 'sd' parameter from select_idle_smt() (Phil Auld) [1705550] - [kernel] sched/topology: Remove the ::smt_gain field from 'struct sched_domain' cleanups (Phil Auld) [1705550] - [kernel] sched/numa: Remove unused code from update_numa_stats() (Phil Auld) [1705550]- [s390] virtio/s390: fix race on airq_areas[] (Cornelia Huck) [1733499] - [powerpc] powerpc: ignore __GFP_DMA/DMA32 if we left an empty ZONE_DMA/DMA32 enabled for kABI purposes (David Gibson) [1728314] - [netdrv] bnx2x: Disable multi-cos feature. (Manish Chopra) [1679024] - [char] tpm: tpm_ibm_vtpm: Fix unallocated banks (Jerry Snitselaar) [1726126] - [scsi] scsi: ibmvfc: fix WARN_ON during event pool release (Steve Best) [1731133] - [tools] perf vendor events power9: General metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Branch_prediction, instruction_stats, latency, lsu_rejects, memory, prefetch & translation metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Dl1_reloads, instruction_misses, l[23]_stats & pteg_reloads metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Cpi_breakdown & estimated_dcache_miss_cpi metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Translaton & general metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Branch_prediction, latency, bus_stats, instruction_mix & instruction_stats metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Dl1_reload, instruction_misses, l2_stats, lsu_rejects, memory & pteg_reloads metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Cpi_breakdown & estimated_dcache_miss_cpi metrics (Michael Petlan) [1694638] - [powerpc] powerpc/tm: Fix oops on sigreturn on systems without TM (Steve Best) [1732753] - [net] net/mlx5e: Add ndo_set_feature for uplink representor (Alaa Hleihel) [1727708] - [misc] VMCI: Fix integer overflow in VMCI handle arrays (Cathy Avery) [1729587] - [tools] perf version: Fix segfault due to missing OPT_END() (Michael Petlan) [1732065] - [sound] ALSA: hda/realtek - Headphone Mic can't record after S3 (Jaroslav Kysela) [1727676] - [char] random: fix CRNG initialization when random.trust_cpu=1 (Oleksandr Natalenko) [1728583] - [char] random: move rand_initialize() earlier (Oleksandr Natalenko) [1728583] - [char] random: make CPU trust a boot parameter (Oleksandr Natalenko) [1728583] - [char] random: add a config option to trust the CPU's hwrng (Oleksandr Natalenko) [1728583] - [fs] blockdev: Fix livelocks on loop device (Ming Lei) [1683593] - [block] nbd: Use set_blocksize() to set device blocksize (Ming Lei) [1683593] - [kernel] ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME (Aristeu Rozanski) [1730959] {CVE-2019-13272}- [include] linux/printk.h: use DYNAMIC_DEBUG_BRANCH in pr_debug_ratelimited (Mike Snitzer) [1729301] - [include] dm: use printk ratelimiting functions (Mike Snitzer) [1729301] - [md] dm crypt: move detailed message into debug level (Mike Snitzer) [1729301] - [powerpc] powerpc/xive: Fix loop exit-condition in xive_find_target_in_mask() (Steve Best) [1731838] - [s390] s390/qeth: be drop monitor friendly (Philipp Rudo) [1731200] - [s390] s390/cpumf: Add extended counter set definitions for model 8561 and 8562 (Philipp Rudo) [1731195] - [s390] s390/qdio: handle PENDING state for QEBSM devices (Philipp Rudo) [1731194] - [net] net/af_iucv: build proper skbs for HiperTransport (Philipp Rudo) [1731193] - [net] net/af_iucv: remove GFP_DMA restriction for HiperTransport (Philipp Rudo) [1731193] - [wireless] iwlwifi: mvm: disable TX-AMSDU on older NICs (Jarod Wilson) [1728992] - [wireless] carl9170: fix misuse of device driver API (Jarod Wilson) [1728992] - [wireless] p54: fix crash during initialization (Jarod Wilson) [1728992] - [wireless] p54usb: Fix race between disconnect and firmware loading (Jarod Wilson) [1728992] - [wireless] mwifiex: Don't abort on small, spec-compliant vendor IEs (Jarod Wilson) [1728992] - [wireless] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 507 (Jarod Wilson) [1728992] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 505 (Jarod Wilson) [1728992] - [wireless] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 501 (Jarod Wilson) [1728992] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jarod Wilson) [1728992] - [wireless] brcmfmac: sdio: Don't tune while the card is off (Jarod Wilson) [1728992] - [wireless] brcmfmac: sdio: Disable auto-tuning around commands expected to fail (Jarod Wilson) [1728992] - [mmc] mmc: core: Add sdio_retune_hold_now() and sdio_retune_release() (Jarod Wilson) [1728992] - [mmc] mmc: core: API to temporarily disable retuning for SDIO CRC errors (Jarod Wilson) [1728992] - [wireless] Revert "brcmfmac: disable command decode in sdio_aos" (Jarod Wilson) [1728992] - [net] cfg80211: report measurement start TSF correctly (Jarod Wilson) [1728992] - [net] cfg80211: fix memory leak of wiphy device name (Jarod Wilson) [1728992] - [net] cfg80211: util: fix bit count off by one (Jarod Wilson) [1728992] - [net] mac80211: do not start any work during reconfigure flow (Jarod Wilson) [1728992] - [net] cfg80211: use BIT_ULL in cfg80211_parse_mbssid_data() (Jarod Wilson) [1728992] - [net] mac80211: only warn once on chanctx_conf being NULL (Jarod Wilson) [1728992] - [net] mac80211: drop robust management frames from unknown TA (Jarod Wilson) [1728992] - [wireless] mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies() (Jarod Wilson) [1728992 1721749] {CVE-2019-10126} - [wireless] iwlwifi: mvm: change TLC config cmd sent by rs to be async (Jarod Wilson) [1728992] - [wireless] iwlwifi: Fix double-free problems in iwl_req_fw_callback() (Jarod Wilson) [1728992] - [wireless] iwlwifi: fix AX201 killer sku loading firmware issue (Jarod Wilson) [1728992] - [wireless] iwlwifi: print fseq info upon fw assert (Jarod Wilson) [1728992] - [wireless] iwlwifi: clear persistence bit according to device family (Jarod Wilson) [1728992] - [wireless] iwlwifi: fix load in rfkill flow for unified firmware (Jarod Wilson) [1728992] - [wireless] iwlwifi: mvm: remove d3_sram debugfs file (Jarod Wilson) [1728992] - [wireless] mwifiex: Abort at too short BSS descriptor element (Jarod Wilson) [1728992 1714476] {CVE-2019-3846} - [wireless] mwifiex: Fix possible buffer overflows at parsing bss descriptor (Jarod Wilson) [1728992 1714476] {CVE-2019-3846} - [net] mac80211: free peer keys before vif down in mesh (Jarod Wilson) [1728992] - [wireless] rtw88: Make some symbols static (Jarod Wilson) [1728992] - [wireless] rtw88: avoid circular locking between local->iflist_mtx and rtwdev->mutex (Jarod Wilson) [1728992] - [wireless] rtw88: fix unassigned rssi_level in rtw_sta_info (Jarod Wilson) [1728992] - [wireless] rtw88: fix subscript above array bounds compiler warning (Jarod Wilson) [1728992] - [net] mac80211: mesh: fix RCU warning (Jarod Wilson) [1728992] - [net] nl80211: fix station_info pertid memory leak (Jarod Wilson) [1728992] - [net] mac80211: Do not use stack memory with scatterlist for GMAC (Jarod Wilson) [1728992] - [net] {nl,mac}80211: allow 4addr AP operation on crypto controlled devices (Jarod Wilson) [1728992] - [wireless] mac80211_hwsim: mark expected switch fall-through (Jarod Wilson) [1728992] - [net] mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he() (Jarod Wilson) [1728992] - [net] mac80211: remove set but not used variable 'old' (Jarod Wilson) [1728992] - [net] mac80211: handle deauthentication/disassociation from TDLS peer (Jarod Wilson) [1728992] - [net] wireless: Skip directory when generating certificates (Jarod Wilson) [1728992] - [netdrv] i40e: Check and set the PF driver state first in i40e_ndo_set_vf_mac (Stefan Assmann) [1719538] - [fs] cifs: fix crash in smb2_compound_op()/smb2_set_next_command() (Leif Sahlberg) [1722704] - [firmware] efi/arm: Show SMBIOS bank/device location in CPER and GHES error logs (Robert Richter) [1721386]- [x86] x86/speculation: Allow guests to use SSBD even if host does not (Waiman Long) [1728341] - [block] block: kill BLK_MQ_F_SG_MERGE (Ming Lei) [1716595] - [block] block: kill QUEUE_FLAG_NO_SG_MERGE (Ming Lei) [1716595]- [x86] x86/insn-eval: Fix use-after-free access to LDT entry (Rafael Aquini) [1728561] {CVE-2019-13233} - [arm64] arm64/mm: Correct the cache line size warning with non coherent device (Mark Salter) [1715061] - [arm64] arm64: cacheinfo: Update cache_line_size detected from DT or PPTT (Mark Salter) [1715061] - [base] drivers: base: cacheinfo: Add variable to record max cache line size (Mark Salter) [1715061] - [arm64] arm64: cpufeature: Trap CTR_EL0 access only where it is necessary (Mark Salter) [1715061] - [arm64] arm64: cpufeature: Fix handling of CTR_EL0.IDC field (Mark Salter) [1715061] - [arm64] arm64: cpufeature: ctr: Fix cpu capability check for late CPUs (Mark Salter) [1715061] - [arm64] arm64: cpu_errata: Remove ARM64_MISMATCHED_CACHE_LINE_SIZE (Mark Salter) [1715061] - [fs] gfs2: Clean up freeing struct gfs2_sbd (Robert S Peterson) [1683698] - [target] scsi: target/iblock: Fix overrun in WRITE SAME emulation (Maurizio Lombardi) [1729503] - [x86] kvm/nvmx: fix VMCLEAR when Enlightened VMCS is in use (Vitaly Kuznetsov) [1717785] - [x86] kvm/nvmx: don't use clean fields data on enlightened VMLAUNCH (Vitaly Kuznetsov) [1717785] - [x86] kvm: nvmx: use correct clean fields when copying from eVMCS (Vitaly Kuznetsov) [1717785] - [fs] NFS4: Only set creation opendata if O_CREAT (Benjamin Coddington) [1708471] - [tools] perf test: Fix failure of 'evsel-tp-sched' test on s390 (Michael Petlan) [1729213] - [fs] PNFS fallback to MDS if no deviceid found (Benjamin Coddington) [1708386] - [mm] mm, memcg: add a memcg_slabinfo debugfs file (Waiman Long) [1699202] - [mm] mm: memcg/slab: reparent memcg kmem_caches on cgroup removal (Waiman Long) [1699202] - [mm] mm: memcg/slab: stop setting page->mem_cgroup pointer for slab pages (Waiman Long) [1699202] - [mm] mm: memcg/slab: rework non-root kmem_cache lifecycle management (Waiman Long) [1699202] - [mm] mm: memcg/slab: synchronize access to kmem_cache dying flag using a spinlock (Waiman Long) [1699202] - [mm] mm: memcg/slab: don't check the dying flag on kmem_cache creation (Waiman Long) [1699202] - [mm] mm: memcg/slab: unify SLAB and SLUB page accounting (Waiman Long) [1699202] - [mm] mm: memcg/slab: introduce __memcg_kmem_uncharge_memcg() (Waiman Long) [1699202] - [mm] mm: memcg/slab: generalize postponed non-root kmem_cache deactivation (Waiman Long) [1699202] - [mm] mm: memcg/slab: rename slab delayed deactivation functions and fields (Waiman Long) [1699202] - [mm] mm: memcg/slab: postpone kmem_cache memcg pointer initialization to memcg_link_cache() (Waiman Long) [1699202] - [mm] slub: add comments to endif pre-processor macros (Waiman Long) [1699202] - [mm] mm, slab: shorten kmalloc cache names for large sizes (Waiman Long) [1699202] - [base] mm, proc: add KReclaimable to /proc/meminfo (Waiman Long) [1699202] - [mm] mm: rename and change semantics of nr_indirectly_reclaimable_bytes (Waiman Long) [1699202] - [fs] dcache: allocate external names from reclaimable kmalloc caches (Waiman Long) [1699202] - [mm] mm, slab/slub: introduce kmalloc-reclaimable caches (Waiman Long) [1699202] - [mm] mm, slab: combine kmalloc_caches and kmalloc_dma_caches (Waiman Long) [1699202] - [mm] mm: don't warn about large allocations for slab (Waiman Long) [1699202] - [mm] slab: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1699202] - [acpi] ACPI / PM: LPIT: Register sysfs attributes based on FADT (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Quirk to ignore XTAL shutdown (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Add Package cstates residency info (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Add ICL platform support (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc: Sort headers alphabetically (Lenny Szubowicz) [1493461] - [net] Revert "[net] net: openvswitch: Add a new action check_pkt_len" ("Herton R. Krzesinski")- [nvme] nvme-rdma: use nr_phys_segments when map rq to sgl (David Milburn) [1729113] - [nvme] nvme-loop: kill timeout handler (Ming Lei) [1692744] - [netdrv] bnxt_en: Suppress error messages when querying DSCP DCB capabilities. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Cap the returned MSIX vectors to the RDMA driver. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix statistics context reservation logic for RDMA driver. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix ethtool selftest crash under error conditions. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Disable bus master during PCI shutdown and driver unload. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Reduce memory usage when running in kdump kernel. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix possible BUG() condition when calling pci_disable_msix(). (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix aggregation buffer leak under OOM condition. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Improve NQ reservations. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix uninitialized variable usage in bnxt_rx_pkt(). (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix statistics context reservation logic. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Pass correct extended TX port statistics size to firmware. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix possible crash in bnxt_hwrm_ring_free() under error conditions. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Free short FW command HWRM memory in error path in bnxt_init_one() (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Improve multicast address setup logic. (Selvin Xavier) [1727972] - [net] net: openvswitch: Add a new action check_pkt_len (Numan Siddique) [1700733]- [crypto] crypto: vmx - ghash: do nosimd fallback manually (Desnes Augusto Nunes do Rosario) [1729532] - [crypto] crypto: vmx - CTR: always increment IV as quadword (Desnes Augusto Nunes do Rosario) [1729532] - [net] vsock/virtio: fix flush of works during the .remove() (Stefano Garzarella) [1700312] - [net] vsock/virtio: stop workers during the .remove() (Stefano Garzarella) [1700312] - [net] vsock/virtio: use RCU to avoid use-after-free on the_virtio_vsock (Stefano Garzarella) [1700312] - [net] vsock/virtio: Initialize core virtio vsock before registering the driver (Stefano Garzarella) [1700312] - [nvme] nvme-fabrics: document the poll function argument (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: fix queue mapping when queue count is limited (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: rework queue maps handling (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: implement polling queue map (David Milburn) [1727784 1725132] - [nvme] nvme-fabrics: allow nvmf_connect_io_queue to poll (David Milburn) [1727784 1725132] - [hid] HID: multitouch: Add pointstick support for ALPS Touchpad (Benjamin Tissoires) [1672423]- [tools] perf header: Assign proper ff->ph in perf_event__synthesize_features() (Michael Petlan) [1667983] - [pci] PCI/IOV: Assume SR-IOV VFs support extended config space. (Myron Stowe) [1714978] - [pci] Revert "PCI/IOV: Use VF0 cached config space size for other VFs" (Myron Stowe) [1714978] - [x86] x86/crash: Add e820 reserved ranges to kdump kernel's e820 table (Lianbo Jiang) [1630108] - [mm] x86/mm: Rework ioremap resource mapping determination (Lianbo Jiang) [1630108] - [x86] x86/e820, ioport: Add a new I/O resource descriptor IORES_DESC_RESERVED (Lianbo Jiang) [1630108] - [kernel] resource: Fix find_next_iomem_res() iteration issue (Lianbo Jiang) [1630108] - [kernel] resource: Include resource end in walk_*() interfaces (Lianbo Jiang) [1630108] - [x86] x86/kexec: Correct KEXEC_BACKUP_SRC_END off-by-one error (Lianbo Jiang) [1630108] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.3 (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix kernel warnings related to smp_processor_id() (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix BFS crash with DIX enabled (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix FDMI fc4type for nvme support (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix fcp_rsp_len checking on lun reset (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix poor use of hardware queues if fewer irq vectors (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix oops when driver is loaded with 1 interrupt vector (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix incorrect logical link speed on trunks when links down (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix memory leak in abnormal exit path from lpfc_eq_create (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Rework misleading nvme not supported in firmware message (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix hardlockup in scsi_cmd_iocb_cmpl (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Cancel queued work for an IO when processing a received ABTS (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Prevent 'use after free' memory overwrite in nvmet LS handling (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix PT2PT PLOGI collison stopping discovery (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Revert message logging on unsupported topology (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix nvmet handling of received ABTS for unmapped frames (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Separate CQ processing for nvmet_fc upcalls (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Revise message when stuck due to unresponsive adapter (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Correct nvmet buffer free race condition (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix nvmet target abort cmd matching (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix alloc context on oas lun creations (Dick Kennedy) [1717027]- [virt] kvm: fix guest initialization code mismerge (Marcelo Tosatti) [1726487] - [powerpc] powerpc/watchpoint: Restore NV GPRs while returning from exception (Steve Best) [1728557] - [fs] fs/proc/vmcore: Enable dumping of encrypted memory when SEV was active (Lianbo Jiang) [1646810] - [x86] x86/kexec: Set the C-bit in the identity map page table when SEV is active (Lianbo Jiang) [1646810] - [x86] x86/kexec: Do not map kexec area as decrypted when SEV is active (Lianbo Jiang) [1646810] - [mm] x86/mm: Do not use set_{pud, pmd}_safe() when splitting a large page (Lianbo Jiang) [1646810]- [net] sched: protect against stack overflow in TC act_mirred (Ivan Vecera) [1726399] - [net] sched: refactor reinsert action (Ivan Vecera) [1726399] - [net] mpls: Fix 6PE forwarding (Hangbin Liu) [1726533] - [net] make skb_dst_force return true when dst is refcounted (Florian Westphal) [1704809] - [net] ipv4: Fix off-by-one in route dump counter without netlink strict checking (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6: fix suspicious RCU usage in rt6_dump_route() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4: fix suspicious RCU usage in fib_dump_info_fnhe() (Stefano Brivio) [1725383 1725381 1574290] - [net] ip6_fib: Don't discard nodes with valid routing information in fib6_locate_1() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6: Dump route exceptions if requested (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6/route: Change return code of rt6_dump_route() for partial node dumps (Stefano Brivio) [1725383 1725381 1574290] - [net] revert "net/ipv6: Bail early if user only wants cloned entries" (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4: Dump route exceptions if requested (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4/route: Allow NULL flowinfo in rt_fill_info() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4/fib_frontend: Allow RTM_F_CLONED flag to be used for filtering (Stefano Brivio) [1725383 1725381 1574290] - [net] fib_frontend, ip6_fib: Select routes or exceptions dump from RTM_F_CLONED (Stefano Brivio) [1725383 1725381 1574290] - [tools] selftests: bpf: disable test_lwt_seg6local (Jiri Benc) [1716346] - [netdrv] ipvlan: Fix ipvlan device tso disabled while NETIF_F_IP_CSUM is set (Matteo Croce) [1725125] - [netdrv] ipvlan: disallow userns cap_net_admin to change global mode/flags (Matteo Croce) [1725124] - [net] netfilter: nft_fib: Fix existence check support (Phil Sutter) [1680578] - [net] ipset: Fix memory accounting for hash types on resize (Stefano Brivio) [1714111] - [tools] selftests: pmtu: Make list_flush_ipv6_exception test more demanding (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce list_flush_ipv4_exception test case (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce list_flush_ipv6_exception test case (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Add support for routing via nexthop objects (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Move route installs to a new function (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Move running of test into a new function (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Fix encapsulating device in pmtu_vti6_link_change_mtu (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Simplify cleanup and namespace names (Stefano Brivio) [1725384] - [tools] selftests: pmtu.sh: Remove quotes around commands in setup_xfrm (Stefano Brivio) [1725384] - [tools] selftests: Add debugging options to pmtu.sh (Stefano Brivio) [1725384] - [tools] selftests: pmtu: add explicit tests for PMTU exceptions cleanup (Stefano Brivio) [1725384] - [tools] selftests: pmtu: disable DAD in all namespaces (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce FoU and GUE PMTU exceptions tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce tests for IPv4/IPv6 over GENEVE over IPv4/IPv6 (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce tests for IPv4/IPv6 over VXLAN over IPv4/IPv6 (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Add optional traffic captures for single tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Allow selection of single tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: add basic IPv4 and IPv6 PMTU tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: extend MTU parsing helper to locked MTU (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce check_pmtu_value() (Stefano Brivio) [1725384] - [tools] selftests: pmtu: properly redirect stderr to /dev/null (Stefano Brivio) [1725384] - [tools] selftests: pmtu: detect correct binary to ping ipv6 addresses (Stefano Brivio) [1725384] - [net] ipv6: icmp: Updating pmtu for link local route (Guillaume Nault) [1721961] - [net] bridge: Mark FDB entries that were added by user as such (Ivan Vecera) [1724400] - [net] tipc: change to use register_pernet_device (Xin Long) [1719136] - [net] sched: cls_flower: fix infinite loop in fl_walk() (Davide Caratti) [1712739]- [rpmspec] redhat: fix vmlinux debuginfo on ppc64le (Jan Stancek) [1727638] - [powerpc] powerpc/rtas: retry when cpu offline races with suspend/migration (Steve Best) [1727051] - [kernel] arm64/crashkernel: Reduce crashkernel size to 448M by default (Bhupesh Sharma) [1564422]- [scsi] scsi: libiscsi: Fix race between iscsi_xmit_task and iscsi_complete_task (Chris Leech) [1718875] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.2 (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: add check for loss of ndlp when sending RRQ (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: correct rcu unlock issue in lpfc_nvme_info_show (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: resolve lockdep warnings (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Make lpfc_sli4_oas_verify static (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix a recently introduced compiler warning (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix missing wakeups on abort threads (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Change smp_processor_id() into raw_smp_processor_id() (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Remove unused functions (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Remove set-but-not-used variables (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Move trunk_errmsg[] from a header file into a .c file (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Annotate switch/case fall-through (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix indentation and balance braces (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Declare local functions static (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: avoid uninitialized variable warning (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: change snprintf to scnprintf for possible overflow (Dick Kennedy) [1714795] - [net] Bluetooth: hidp: fix buffer overflow (Gopal Tiwari) [1723654] {CVE-2019-11884} - [s390] virtio/s390: make airq summary indicators DMA (Philipp Rudo) [1651752] - [s390] virtio/s390: use DMA memory for ccw I/O and classic notifiers (Philipp Rudo) [1651752] - [s390] virtio/s390: add indirection to indicators access (Philipp Rudo) [1651752] - [s390] virtio/s390: use cacheline aligned airq bit vectors (Philipp Rudo) [1651752] - [s390] s390/airq: use DMA memory for adapter interrupts (Philipp Rudo) [1651752] - [s390] s390/cio: add basic protected virtualization support (Philipp Rudo) [1651752] - [s390] s390/cio: introduce DMA pools to cio (Philipp Rudo) [1651752] - [s390] s390/mm: force swiotlb for protected virtualization (Philipp Rudo) [1651752] - [s390] virtio/s390: DMA support for virtio-ccw (Philipp Rudo) [1651752] - [s390] virtio/s390: use vring_create_virtqueue (Philipp Rudo) [1651752] - [block] virtio-blk: Consider virtio_max_dma_size() for maximum segment size (Philipp Rudo) [1651752] - [virtio] virtio: Introduce virtio_max_dma_size() (Philipp Rudo) [1651752] - [kernel] dma: Introduce dma_max_mapping_size() (Philipp Rudo) [1651752] - [kernel] swiotlb: Add is_swiotlb_active() function (Philipp Rudo) [1651752] - [kernel] swiotlb: Introduce swiotlb_max_mapping_size() (Philipp Rudo) [1651752] - [mm] x86/mm: Create a workarea in the kernel for SME early encryption (Lianbo Jiang) [1564427] - [x86] x86/mm: Identify the end of the kernel area to be reserved (Lianbo Jiang) [1564427] - [x86] x86/kdump: Export the SME mask to vmcoreinfo (Lianbo Jiang) [1564427] - [fs] proc/vmcore: Fix i386 build error of missing copy_oldmem_page_encrypted() (Lianbo Jiang) [1564427] - [fs] kdump, proc/vmcore: Enable kdumping encrypted memory with SME enabled (Lianbo Jiang) [1564427] - [iommu] iommu/amd: Remap the IOMMU device table with the memory encryption mask for kdump (Lianbo Jiang) [1564427] - [kernel] kexec: Allocate decrypted control pages for kdump if SME is enabled (Lianbo Jiang) [1564427] - [mm] x86/ioremap: Add an ioremap_encrypted() helper (Lianbo Jiang) [1564427] - [documentation] Documentation: Add ARM64 to kernel-parameters.rst (Jeremy Linton) [1640855] - [arm64] arm64/speculation: Support 'mitigations=' cmdline option (Jeremy Linton) [1640855] - [arm64] arm64: ssbs: Don't treat CPUs with SSBS as unaffected by SSB (Jeremy Linton) [1640855] - [arm64] arm64: enable generic CPU vulnerabilites support (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for speculative store bypass (Jeremy Linton) [1640855] - [arm64] arm64: Always enable ssb vulnerability detection (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for spectre-v2 (Jeremy Linton) [1640855] - [arm64] arm64: Always enable spectre-v2 vulnerability detection (Jeremy Linton) [1640855] - [arm64] arm64: Use firmware to detect CPUs that are not affected by Spectre-v2 (Jeremy Linton) [1640855] - [arm64] arm64: Advertise mitigation of Spectre-v2, or lack thereof (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for meltdown (Jeremy Linton) [1640855] - [arm64] arm64: Add sysfs vulnerability show for spectre-v1 (Jeremy Linton) [1640855] - [arm64] arm64: Provide a command line to disable spectre_v2 mitigation (Jeremy Linton) [1640855] - [documentation] powerpc/fsl: Add FSL_PPC_BOOK3E as supported arch for nospectre_v2 boot arg (Jeremy Linton) [1640855] - [documentation] Documentation: Document arm64 kpti control (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Whitelist HiSilicon Taishan v110 CPUs (Jeremy Linton) [1640855] - [arm64] arm64: Add MIDR encoding for HiSilicon Taishan CPUs (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Whitelist Cortex-A CPUs that don't implement the CSV3 field (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Update arm64_kernel_use_ng_mappings() when forced on (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Avoid rewriting early page tables when KASLR is enabled (Jeremy Linton) [1640855] - [arm64] arm64: capabilities: Merge duplicate Cavium erratum entries (Jeremy Linton) [1640855] - [arm64] arm64: capabilities: Merge entries for ARM64_WORKAROUND_CLEAN_CACHE (Jeremy Linton) [1640855] - [arm64] arm64: Use a raw spinlock in __install_bp_hardening_cb() (Jeremy Linton) [1640855] - [arm64] arm64: KVM: Guests can skip __install_bp_hardening_cb()s HYP work (Jeremy Linton) [1640855] - [arm64] arm64: fix SSBS sanitization (Jeremy Linton) [1640855] - [arm64] arm64: don't zero DIT on signal return (Jeremy Linton) [1640855] - [kvm] KVM: arm64: Set SCTLR_EL2.DSSBS if SSBD is forcefully disabled and !vhe (Jeremy Linton) [1640855] - [arm64] arm64: ssbd: Add support for PSTATE.SSBS rather than trapping to EL3 (Jeremy Linton) [1640855] - [arm64] arm64: ssbd: Drop #ifdefs for PR_SPEC_STORE_BYPASS (Jeremy Linton) [1640855] - [arm64] arm64: cpufeature: Detect SSBS and advertise to userspace (Jeremy Linton) [1640855] - [arm64] arm64: move SCTLR_EL{1,2} assertions to (Jeremy Linton) [1640855]- [powerpc] powerpc/mm/64s/hash: Reallocate context ids on fork (Steve Best) [1723808] - [powerpc] powerpc/perf: Use cpumask_last() to determine the designated cpu for nest/core units. (Steve Best) [1725746] - [fs] iomap: fix page_done callback for short writes (Andreas Grunbacher) [1724361] - [fs] fs: fold __generic_write_end back into generic_write_end (Andreas Grunbacher) [1724361] - [fs] iomap: don't mark the inode dirty in iomap_write_end (Andreas Grunbacher) [1724361] - [fs] gfs2: Fix iomap write page reclaim deadlock (Andreas Grunbacher) [1724361] - [fs] iomap: Add a page_prepare callback (Andreas Grunbacher) [1724361] - [fs] iomap: Fix use-after-free error in page_done callback (Andreas Grunbacher) [1724361] - [fs] fs: Turn __generic_write_end into a void function (Andreas Grunbacher) [1724361] - [fs] iomap: Clean up __generic_write_end calling (Andreas Grunbacher) [1724361] - [kvm] KVM: PPC: Book3S HV: Clear pending decrementer exceptions on nested guest entry (Suraj Jitindar Singh) [1718822] - [kvm] KVM: PPC: Book3S HV: Signed extend decrementer value if not using large decrementer (Suraj Jitindar Singh) [1718822]- [hid] HID: chicony: add another quirk for PixArt mouse (Oleksandr Natalenko) [1724967] - [scsi] scsi: smartpqi: properly set both the DMA mask and the coherent DMA mask (Don Brace) [1712272] - [tools] perf beauty waitid options: Fix up prefix showing logic (Michael Petlan) [1715507] - [include] redhat: perf kABI-check failure fix (Michael Petlan) [1715507] - [tools] perf script python: Add Python3 support to tests/attr.py (Michael Petlan) [1715507] - [tools] perf trace: Support multiple "vfs_getname" probes (Michael Petlan) [1715507] - [tools] perf symbols: Filter out hidden symbols from labels (Michael Petlan) [1715507] - [tools] perf symbols: Add fallback definitions for GELF_ST_VISIBILITY() (Michael Petlan) [1715507] - [tools] perf clang: Do not use 'return std::move(something)' (Michael Petlan) [1715507] - [tools] perf tests evsel-tp-sched: Fix bitwise operator (Michael Petlan) [1715507] - [tools] perf script: Fix crash when processing recorded stat data (Michael Petlan) [1715507] - [tools] perf top: Fix wrong hottest instruction highlighted (Michael Petlan) [1715507] - [tools] perf tools: Handle TOPOLOGY headers with no CPU (Michael Petlan) [1715507] - [tools] perf python: Remove -fstack-clash-protection when building with some clang versions (Michael Petlan) [1715507] - [tools] perf script: Fix crash with printing mixed trace point and other events (Michael Petlan) [1715507] - [tools] perf ordered_events: Fix crash in ordered_events__free (Michael Petlan) [1715507] - [tools] tools headers powerpc: Remove unistd.h (Michael Petlan) [1715507] - [tools] perf powerpc: Rework syscall table generation (Michael Petlan) [1715507] - [tools] perf symbols: Add 'arch_cpu_idle' to the list of kernel idle symbols (Michael Petlan) [1715507] - [tools] perf beauty: Switch from using uapi/linux/fs.h to uapi/linux/mount.h (Michael Petlan) [1715507] - [tools] tools include uapi: Grab a copy of linux/mount.h (Michael Petlan) [1715507] - [tools] perf top: Lift restriction on using callchains without "sym" in --sort (Michael Petlan) [1715507] - [tools] tools lib traceevent: Remove tep_data_event_from_type() API (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename tep_is_file_bigendian() to tep_file_bigendian() (Michael Petlan) [1715507] - [tools] tools lib traceevent: Changed return logic of tep_register_event_handler() API (Michael Petlan) [1715507] - [tools] tools lib traceevent: Changed return logic of trace_seq_printf() and trace_seq_vprintf() APIs (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename struct cmdline to struct tep_cmdline (Michael Petlan) [1715507] - [tools] tools lib traceevent: Initialize host_bigendian at tep_handle allocation (Michael Petlan) [1715507] - [tools] tools lib traceevent: Introduce new libtracevent API: tep_override_comm() (Michael Petlan) [1715507] - [tools] perf tests: Add a test for the ARM 32-bitpage (Michael Petlan) [1715507] - [tools] perf tools: Make find_vdso_map() more modular (Michael Petlan) [1715507] - [tools] perf trace: Fix alignment forlines (Michael Petlan) [1715507] - [tools] perf trace: Fix ')' placement in "interrupted" syscall lines (Michael Petlan) [1715507] - [tools] perf test shell: Use a fallback to get the pathname in vfs_getname (Michael Petlan) [1715507] - [tools] perf python: Make sure the python binding output directory is in place (Michael Petlan) [1715507] - [tools] perf strbuf: Remove redundant va_end() in strbuf_addv() (Michael Petlan) [1715507] - [tools] perf annotate: Pass filename to objdump via execl (Michael Petlan) [1715507] - [tools] perf report: Fix wrong iteration count in --branch-history (Michael Petlan) [1715507] - [tools] tools headers uapi: Sync copy of asm-generic/unistd.h with the kernel sources (Michael Petlan) [1715507] - [tools] tools beauty: Make the prctl option table generator catch all PR_ options (Michael Petlan) [1715507] - [tools] perf stat: Fix endless wait for child process (Michael Petlan) [1715507] - [tools] perf session: Add comment for perf_session__register_idle_thread() (Michael Petlan) [1715507] - [tools] perf thread-stack: Fix thread stack processing for the idle task (Michael Petlan) [1715507] - [tools] perf thread-stack: Allocate an array of thread stacks (Michael Petlan) [1715507] - [tools] perf thread-stack: Factor out thread_stack__init() (Michael Petlan) [1715507] - [tools] perf thread-stack: Allow for a thread stack array (Michael Petlan) [1715507] - [tools] perf thread-stack: Avoid direct reference to the thread's stack (Michael Petlan) [1715507] - [tools] perf thread-stack: Tidy thread_stack__bottom() usage (Michael Petlan) [1715507] - [tools] perf thread-stack: Simplify some code in thread_stack__process() (Michael Petlan) [1715507] - [tools] perf c2c: Increase the HITM ratio limit for displayed cachelines (Michael Petlan) [1715507] - [tools] perf c2c: Change the default coalesce setup (Michael Petlan) [1715507] - [tools] perf trace beauty ioctl: Beautify USBDEVFS_ commands (Michael Petlan) [1715507] - [tools] perf trace beauty: Export function to get the files for a thread (Michael Petlan) [1715507] - [tools] perf trace: Wire up ioctl's USBDEBFS_ cmd table generator (Michael Petlan) [1715507] - [tools] perf beauty ioctl: Add generator for USBDEVFS_ ioctl commands (Michael Petlan) [1715507] - [tools] tools headers uapi: Grab a copy of usbdevice_fs.h (Michael Petlan) [1715507] - [tools] perf trace: Store the major number for a file when storing its pathname (Michael Petlan) [1715507] - [tools] perf trace: Move the files table resizing to outside set_pathname() (Michael Petlan) [1715507] - [tools] perf trace: Rename thread_thread->paths to thread_trace->files (Michael Petlan) [1715507] - [tools] perf script: Fix LBR skid dump problems in brstackinsn (Michael Petlan) [1715507] - [tools] perf trace: Use correct SECCOMP prefix spelling, "SECOMP_*" -> "SECCOMP_*" (Michael Petlan) [1715507] - [tools] perf trace: Do not hardcode the size of the tracepoint common_ fields (Michael Petlan) [1715507] - [tools] perf build: Don't unconditionally link the libbfd feature test to -liberty and -lz (Michael Petlan) [1715507] - [tools] perf beauty mmap: PROT_WRITE should come before PROT_EXEC (Michael Petlan) [1715507] - [tools] perf trace: Check if the raw_syscalls:sys_{enter, exit} are setup before setting tp filter (Michael Petlan) [1715507] - [tools] perf symbols: Relax checks on perf-PID.map ownership (Michael Petlan) [1715507] - [tools] perf trace: Wire up the fadvise 'advice' table generator (Michael Petlan) [1715507] - [tools] perf beauty: Add generator for fadvise64's 'advice' arg constants (Michael Petlan) [1715507] - [tools] tools headers uapi: Grab a copy of fadvise.h (Michael Petlan) [1715507] - [tools] perf beauty mmap: Print mmap's 'offset' arg in hexadecimal (Michael Petlan) [1715507] - [tools] perf beauty mmap: Print PROT_READ before PROT_EXEC to match strace output (Michael Petlan) [1715507] - [tools] perf trace beauty: Beautify arch_prctl()'s arguments (Michael Petlan) [1715507] - [tools] perf trace: When showing string prefixes show prefix + ??? for unknown entries (Michael Petlan) [1715507] - [tools] perf trace: Move strarrays to beauty.h for further reuse (Michael Petlan) [1715507] - [tools] perf beauty: Wire up the x86_arch prctl code table generator (Michael Petlan) [1715507] - [tools] perf beauty: Add a string table generator for x86's 'arch_prctl' codes (Michael Petlan) [1715507] - [tools] tools include arch: Grab a copy of x86's prctl.h (Michael Petlan) [1715507] - [tools] perf trace: Show NULL when syscall pointer args are 0 (Michael Petlan) [1715507] - [tools] perf trace: Enclose the errno strings with () (Michael Petlan) [1715507] - [tools] perf augmented_raw_syscalls: Copy 'access' arg as well (Michael Petlan) [1715507] - [tools] perf trace: Add alignment spaces after the closing parens (Michael Petlan) [1715507] - [tools] perf trace beauty: Print O_RDONLY when (flags & O_ACCMODE) == 0 (Michael Petlan) [1715507] - [tools] perf trace: Allow asking for not suppressing common string prefixes (Michael Petlan) [1715507] - [tools] perf trace: Add a prefix member to the strarray class (Michael Petlan) [1715507] - [tools] perf trace: Enclose strings with double quotes (Michael Petlan) [1715507] - [tools] perf trace: Make the alignment of the syscall args be configurable (Michael Petlan) [1715507] - [tools] perf trace: Allow suppressing the syscall argument names (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if the syscall start timestamp should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring default for perf_event_attr.inherit (Michael Petlan) [1715507] - [tools] perf config: Show the configuration when no arguments are provided (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if the syscall duration should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if zeroed syscall args should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow specifying a set of events to add in perfconfig (Michael Petlan) [1715507] - [tools] perf augmented_raw_syscalls: Do not include stdio.h (Michael Petlan) [1715507] - [tools] perf cs-etm: Generate branch sample for exception packet (Michael Petlan) [1715507] - [tools] perf cs-etm: Treat EO_TRACE element as trace discontinuity (Michael Petlan) [1715507] - [tools] perf cs-etm: Treat NO_SYNC element as trace discontinuity (Michael Petlan) [1715507] - [tools] perf cs-etm: Rename CS_ETM_TRACE_ON to CS_ETM_DISCONTINUITY (Michael Petlan) [1715507] - [tools] perf cs-etm: Refactor enumeration cs_etm_sample_type (Michael Petlan) [1715507] - [tools] perf cs-etm: Remove unused 'trace_on' in cs_etm_decoder (Michael Petlan) [1715507] - [tools] perf cs-etm: Avoid stale branch samples when flush packet (Michael Petlan) [1715507] - [tools] perf cs-etm: Correct packets swapping in cs_etm__flush() (Michael Petlan) [1715507] - [tools] perf trace: Switch to using a struct for the aumented_raw_syscalls syscalls map values (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Switch to using a struct for the syscalls map values (Michael Petlan) [1715507] - [tools] perf bpf: Move perf_event_output() from stdio.h to bpf.h (Michael Petlan) [1715507] - [tools] perf trace: Implement syscall filtering in augmented_syscalls (Michael Petlan) [1715507] - [tools] perf trace: Avoid using raw_syscalls in duplicity with eBPF augmentation (Michael Petlan) [1715507] - [tools] perf trace: Rename set_ev_qualifier_filter to clarify its a tracepoint filter (Michael Petlan) [1715507] - [tools] perf tools: Cast off_t to s64 to avoid warning on bionic libc (Michael Petlan) [1715507] - [tools] perf tools: Add missing open_memstream() prototype for systems lacking it (Michael Petlan) [1715507] - [tools] perf header: Fix up argument to ctime() (Michael Petlan) [1715507] - [tools] perf tools: Add missing sigqueue() prototype for systems lacking it (Michael Petlan) [1715507] - [tools] tools lib subcmd: Don't add the kernel sources to the include path (Michael Petlan) [1715507] - [tools] perf trace beauty: renameat's newdirfd may also be AT_FDCWD (Michael Petlan) [1715507] - [tools] perf trace: Beautify renameat2's flags argument (Michael Petlan) [1715507] - [tools] perf beauty: Wire up the renameat flags table generator to the Makefile (Michael Petlan) [1715507] - [tools] perf beauty: Add a string table generator for renameat2's flags constants (Michael Petlan) [1715507] - [tools] perf trace beauty: Beautify renameat2's fd arg wrt AT_FDCWD (Michael Petlan) [1715507] - [tools] perf trace: Allow selecting use the use of the ordered_events code (Michael Petlan) [1715507] - [tools] perf trace: Rename delivery functions to ease making ordered_events selectable (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix processing of dereferenced args in bprintk events (Michael Petlan) [1715507] - [tools] perf stat: Avoid segfaults caused by negated options (Michael Petlan) [1715507] - [tools] perf auxtrace: Alter addr_filter__entire_dso() to work if there are no symbols (Michael Petlan) [1715507] - [tools] perf dso: Export data_file_size() method there are no symbols (Michael Petlan) [1715507] - [tools] perf trace: Add ordered processing (Michael Petlan) [1715507] - [tools] perf ordered_events: Add first_time() method (Michael Petlan) [1715507] - [tools] perf trace: Move event delivery to a new deliver_event() function (Michael Petlan) [1715507] - [tools] perf ordered_events: Add ordered_events__flush_time interface (Michael Petlan) [1715507] - [tools] perf annotate: Introduce basic support for ARC (Michael Petlan) [1715507] - [tools] perf config: Modify size factor of snprintf (Michael Petlan) [1715507] - [tools] perf record: Fix memory leak on AIO objects deallocation (Michael Petlan) [1715507] - [tools] perf vendor events intel: Fix Load_Miss_Real_Latency on SKL/SKX (Michael Petlan) [1715507] - [tools] perf parse-events: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf probe: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf ui helpline: Use strlcpy() as a shorter form of strncpy() + explicit set nul (Michael Petlan) [1715507] - [tools] perf svghelper: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf help: Remove needless use of strncpy() (Michael Petlan) [1715507] - [tools] perf header: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf header: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf dso: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf cs-etm: Add support for PTMv1.1 decoding (Michael Petlan) [1715507] - [tools] perf cs-etm: Add support for ETMv3 trace decoding (Michael Petlan) [1715507] - [tools] perf cs-etm: Add configuration for ETMv3 trace protocol (Michael Petlan) [1715507] - [tools] perf top: Move perf_top__reset_sample_counters() to after counts display (Michael Petlan) [1715507] - [tools] perf top: Display slow reader warning when droping samples (Michael Petlan) [1715507] - [tools] perf top: Save and display the drop count stats (Michael Petlan) [1715507] - [tools] perf top: Drop samples which are behind the refresh rate (Michael Petlan) [1715507] - [tools] perf top: Set the 'session_done' volatile variable when exiting (Michael Petlan) [1715507] - [tools] perf top: Use cond variable instead of a lock (Michael Petlan) [1715507] - [tools] perf top: Add processing thread (Michael Petlan) [1715507] - [tools] perf top: Move lost events warning to helpline (Michael Petlan) [1715507] - [tools] perf top: Save and display the lost count stats (Michael Petlan) [1715507] - [tools] perf ordered_events: Add private data member (Michael Petlan) [1715507] - [tools] perf ordered_events: Rework show_progress for __ordered_events__flush (Michael Petlan) [1715507] - [tools] perf tools: Support 'srccode' output (Michael Petlan) [1715507] - [tools] perf trace: We need to consider "nr" if "__syscall_nr" is not there (Michael Petlan) [1715507] - [tools] perf tools: Allow specifying proc-map-timeout in config file (Michael Petlan) [1715507] - [tools] tools lib subcmd: Fix a few source code comment typos (Michael Petlan) [1715507] - [tools] perf tools: Fix diverse comment typos (Michael Petlan) [1715507] - [tools] perf bpf-loader: Fix debugging message typo (Michael Petlan) [1715507] - [tools] perf tools Documentation: Fix diverse typos (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix diverse typos in comments (Michael Petlan) [1715507] - [tools] perf vendor events intel: Fix diverse typos (Michael Petlan) [1715507] - [tools] perf tests ARM: Disable breakpoint tests 32-bit (Michael Petlan) [1715507] - [tools] perf cs-etm: Support for ARM A32/T32 instruction sets in CoreSight trace (Michael Petlan) [1715507] - [tools] perf beauty mmap_flags: Fixed syntax error Fixed missing ']' error (Michael Petlan) [1715507] - [tools] tools lib traceevent: traceevent API cleanup (Michael Petlan) [1715507] - [tools] perf tools: traceevent API cleanup, remove __tep_data2host*() (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename tep_free_format() to tep_free_event() (Michael Petlan) [1715507] - [tools] tools lib traceevent, perf tools: Rename 'struct tep_event_format' to 'struct tep_event' (Michael Petlan) [1715507] - [tools] tools lib traceevent: Install trace-seq.h API header file (Michael Petlan) [1715507] - [tools] tools lib traceevent: Added support for pkg-config (Michael Petlan) [1715507] - [tools] tools lib traceevent: Implement new API tep_get_ref() (Michael Petlan) [1715507] - [tools] perf report: Documentation average IPC and IPC coverage (Michael Petlan) [1715507] - [tools] perf report: Display average IPC and IPC coverage per symbol (Michael Petlan) [1715507] - [tools] perf annotate: Create a annotate2 flag in struct symbol (Michael Petlan) [1715507] - [tools] perf annotate: Compute average IPC and IPC coverage per symbol (Michael Petlan) [1715507] - [tools] tools lib traceevent: Add sanity check to is_timestamp_in_us() (Michael Petlan) [1715507] - [tools] perf beauty mmap_flags: Check if the arch has a mmap.h file (Michael Petlan) [1715507] - [tools] perf record: Extend trace writing to multi AIO (Michael Petlan) [1715507] - [tools] perf record: Enable asynchronous trace writing (Michael Petlan) [1715507] - [tools] perf mmap: Map data buffer for preserving collected data (Michael Petlan) [1715507] - [tools] tools build feature: Check if libaio is available (Michael Petlan) [1715507] - [tools] perf intel-pt: Fix error with config term "pt=0" (Michael Petlan) [1715507] - [tools] perf top: Allow passing a kallsyms file (Michael Petlan) [1715507] - [tools] perf bpf: Use ERR_CAST instead of ERR_PTR(PTR_ERR()) (Michael Petlan) [1715507] - [tools] tools include: Adopt ERR_CAST() from the kernel err.h header (Michael Petlan) [1715507] - [tools] perf tests record: Allow for 'sleep' being 'coreutils' (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix compile warnings in tools/lib/traceevent/event-parse.c (Michael Petlan) [1715507] - [tools] perf script: Use fallbacks for branch stacks (Michael Petlan) [1715507] - [tools] perf tools: Use fallback for sample_addr_correlates_sym() cases (Michael Petlan) [1715507] - [tools] perf thread: Add fallback functions for cases where cpumode is insufficient (Michael Petlan) [1715507] - [tools] perf machine: Record if a arch has a single user/kernel address space (Michael Petlan) [1715507] - [tools] perf env: Also consider env->arch == NULL as local operation (Michael Petlan) [1715507] - [tools] perf map: Remove extra indirection from map__find() (Michael Petlan) [1715507] - [tools] perf stat: Fix CSV mode column output for non-cgroup events (Michael Petlan) [1715507] - [tools] perf stat: Fix shadow stats for clock events (Michael Petlan) [1715507] - [tools] perf build: Give better hint about devel package for libssl (Michael Petlan) [1715507] - [tools] perf pmu: Move *_cpuid_str() weak functions to header.c (Michael Petlan) [1715507] - [tools] perf symbols: Fix slowness due to -ffunction-section (Michael Petlan) [1715507] - [tools] perf jvmti: Separate jvmti cmlr check (Michael Petlan) [1715507] - [tools] perf vendor events: Add JSON metrics for Cascadelake server (Michael Petlan) [1715507] - [tools] perf vendor events: Add stepping in CPUID string for x86 (Michael Petlan) [1715507] - [tools] perf stat: Use perf_evsel__is_clocki() for clock events (Michael Petlan) [1715507] - [tools] perf pmu: Suppress potential format-truncation warning (Michael Petlan) [1715507] - [tools] perf tools: Add Hygon Dhyana support (Michael Petlan) [1715507] - [tools] perf bench: Add epoll_ctl(2) benchmark (Michael Petlan) [1715507] - [tools] perf bench: Add epoll parallel epoll_wait benchmark (Michael Petlan) [1715507] - [tools] tools build feature: Check if eventfd() is available (Michael Petlan) [1715507] - [tools] perf bench: Move HAVE_PTHREAD_ATTR_SETAFFINITY_NP into bench.h (Michael Petlan) [1715507] - [tools] perf script: Share code and output format for uregs and iregs output (Michael Petlan) [1715507] - [tools] perf bpf: Reduce the hardcoded .max_entries for pid_maps (Michael Petlan) [1715507] - [tools] perf script: Add newline after uregs output (Michael Petlan) [1715507] - [tools] Revert "perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter" (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Remove example hardcoded set of filtered pids (Michael Petlan) [1715507] - [tools] perf trace: Fill in BPF "filtered_pids" map when present (Michael Petlan) [1715507] - [tools] perf trace: See if there is a map named "filtered_pids" (Michael Petlan) [1715507] - [tools] perf trace: Add "_from_option" suffix to trace__set_filter() (Michael Petlan) [1715507] - [tools] perf evlist: Rename perf_evlist__set_filter* to perf_evlist__set_tp_filter* (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Use pid_filter (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter (Michael Petlan) [1715507] - [tools] perf bpf: Add simple pid_filter class accessible to BPF proggies (Michael Petlan) [1715507] - [tools] perf bpf: Add defines for map insertion/lookup (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Remove needless linux/socket.h include (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Filter on a hard coded pid (Michael Petlan) [1715507] - [tools] perf bpf: Add unistd.h to the headers accessible to bpf proggies (Michael Petlan) [1715507] - [kernel] perf/core: Fix impossible ring-buffer sizes warning (Michael Petlan) [1715507] - [x86] perf/x86: Add check_period PMU callback (Michael Petlan) [1715507] - [kernel] perf/core: Don't WARN() for impossible ring-buffer sizes (Michael Petlan) [1715507] - [x86] perf/x86/intel/uncore: Add Node ID mask (Michael Petlan) [1715507] - [kernel] perf core: Fix perf_proc_update_handler() bug (Michael Petlan) [1715507] - [tools] powerpc/perf: Update perf_regs structure to include MMCRA (Michael Petlan) [1715507] - [powerpc] powerpc/perf: Update perf_regs structure to include SIER (Michael Petlan) [1715507] - [include] perf/core: Declare the __percpu attribute on non-deref types (Michael Petlan) [1715507] - [kernel] perf: Fix typos in comments (Michael Petlan) [1715507] - [arm64] arm64: perf: Add support for Armv8.1 PMCEID register format (Michael Petlan) [1715507]- [fs] xfs: abort unaligned nowait directio early (Brian Foster) [1690458] - [fs] xfs: serialize unaligned dio writes against all other dio writes (Brian Foster) [1690458] - [sound] ALSA: hda/hdmi: consider eld_valid also in sync_eld_via_acomp() (Jaroslav Kysela) [1708555] - [fs] Fix error code in nfs_lookup_verify_inode() (Scott Mayhew) [1722315] - [md] dm table: don't copy from a NULL pointer in realloc_argv() (Jerome Marchand) [1571628] - [net] netfilter: ipset: replace a strncpy() with strscpy() (Jerome Marchand) [1571628] - [lib] lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn (Jerome Marchand) [1571628] - [include] netfilter: avoid erronous array bounds warning (Jerome Marchand) [1571628] - [x86] x86/mm/KASLR: Compute the size of the vmemmap section properly (Baoquan He) [1669076] - [security] selinux: fix empty write to keycreate file (Ondrej Mosnacek) [1719067] - [netdrv] net: aquantia: fix vlans not working over bridged network (Igor Russkikh) [1718716] - [s390] s390/jump_label: replace stop_machine with smp_call_function (Philipp Rudo) [1722161] - [s390] s390/dumpstack: print psw mask and address again (Philipp Rudo) [1722157] - [s390] s390/crypto: fix gcm-aes-s390 selftest failures (Philipp Rudo) [1722156] - [wireless] Backport mt76 drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709867 1709828] - [wireless] Add rtw88 driver from linux-5.2-rc5 (Stanislaw Gruszka) [1487086 1709828] - [wireless] Backport mt7601u driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport mwifiex driver from linux-5.2-rc2 (Stanislaw Gruszka) [1709828] - [wireless] Backport rtl8xxxu driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport rtlwifi drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport ath9k driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport ath10k driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport brcm80211 drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport iwlwifi drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1696052 1662020 1662015 1650016 1650015 1650014 1650013 1622445 1494008 1494001 1709828] - [net] Backport mac80211 from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [net] Backport core wireless code from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [include] netlink: add nl_set_extack_cookie_u64() (Stanislaw Gruszka) [1709828] - [netdrv] r8152: Fix an error on RTL8153-BD MAC Address Passthrough support (Torez Smith) [1683883 1683882] - [netdrv] r8152: Add support for MAC address pass through on RTL8153-BD (Torez Smith) [1683883 1683882] - [netdrv] nfp: abm: fix spelling mistake "offseting" -> "offsetting" (Pablo Cascon) [1713258] - [netdrv] nfp: flower: remove vlan CFI bit from push vlan action (Pablo Cascon) [1713258] - [netdrv] nfp: flower: replace CFI with vlan present (Pablo Cascon) [1713258] - [netdrv] nfp: flower: remove double new line (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: fix ALU32 high bits clearance bug (Pablo Cascon) [1713258] - [netdrv] bpf: do not pass netdev to translate() and prepare() offload callbacks (Pablo Cascon) [1713258] - [netdrv] bpf: pass prog instead of env to bpf_prog_offload_verifier_prep() (Pablo Cascon) [1713258] - [netdrv] bpf: pass destroy() as a callback and remove its ndo_bpf subcommand (Pablo Cascon) [1713258] - [netdrv] bpf: pass translate() as a callback and remove its ndo_bpf subcommand (Pablo Cascon) [1713258] - [netdrv] bpf: call verifier_prep from its callback in struct bpf_offload_dev (Pablo Cascon) [1713258] - [netdrv] bpf: pass a struct with offload callbacks to bpf_offload_dev_create() (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: move nfp_bpf_analyzer_ops from verifier.c to offload.c (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: relax prog rejection through max_pkt_offset (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: double check vNIC capabilities after object sharing (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: optimise save/restore for R6~R9 based on register usage (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: fix return address from register-saving subroutine to callee (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: update fixup function for BPF-to-BPF calls support (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: account for additional stack usage when checking stack limit (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: add main logics for BPF-to-BPF calls support in nfp driver (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: copy eBPF subprograms information from kernel verifier (Pablo Cascon) [1713258] - [netdrv] bpf: add verifier callback to get stack usage info for offloaded progs (Pablo Cascon) [1713258]- [rpmspec] Enable kernel signing for ppc64le (Gustavo Duarte) [1504169] - [nvme] nvme: fix memory leak for power latency tolerance (David Milburn) [1724793] - [rpmspec] redhat: fix missing files for mlxsw specific self-tests (Ivan Vecera) [1724735] - [rpmspec] redhat: Package the signing key for s390 (Philipp Rudo) [1714194] - [rpmspec] redhat: Enable kernel signing for s390 (Philipp Rudo) [1714194] - [rpmspec] redhat: Rename secure boot sources (Philipp Rudo) [1714194] - [powerpc] powerpc: fix max_zone_pfns initialization (Laurent Vivier) [1706560] - [crypto] crypto: dh - update test for public key verification (Herbert Xu) [1722692] - [hid] HID: i2c-hid: Don't reset device upon system resume (Perry Yuan) [1715385] - [rpmspec] correct the ghost initramfs attributes (Rafael Aquini) [1678881] - [s390] s390/mm: fix address space detection in exception handling (Philipp Rudo) [1722160] - [s390] s390/zcrypt: Fix wrong dispatching for control domain CPRBs (Philipp Rudo) [1722158] - [virt] kvm: arm/arm64: Fix emulated ptimer irq injection (Andrew Jones) [1716383] - [x86] kvm/nested: mark as TechPreview on first VM creation (Vitaly Kuznetsov) [1723447] - [powerpc] bpf: powerpc64: add JIT support for bpf line info (Yauheni Kaliuta) [1722423] - [fs] cifs: add spinlock for the openFileList to cifsInodeInfo (Leif Sahlberg) [1712197] - [fs] cifs: fix GlobalMid_Lock bug in cifs_reconnect (Leif Sahlberg) [1716743] - [mm] powerpc/numa: document topology_updates_enabled, disable by default (Desnes Augusto Nunes do Rosario) [1705465] - [mm] powerpc/numa: improve control of topology updates (Desnes Augusto Nunes do Rosario) [1705465] - [kernel] bpf: decouple the lifetime of cgroup_bpf from cgroup itself (Jiri Olsa) [1656432] - [netdrv] USB: hso: Fix OOB memory access in hso_probe/hso_get_config_data (Torez Smith) [1689308 1666662] {CVE-2018-19985} - [usb] USB: check usb_get_extra_descriptor for proper size (Torez Smith) [1689308 1666662] {CVE-2018-20169} - [kvm] KVM: PPC: Book3S HV: Restore SPRG3 in kvmhv_p9_guest_entry() (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Fix lockdep warning when entering guest on POWER9 (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Fix page offset when clearing ESB pages (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Take the srcu read lock when accessing memslots (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Do not clear IRQ data of passthrough interrupts (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Introduce a new mutex for the XIVE device (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Fix the enforced limit on the vCPU identifier (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Do not test the EQ flag validity when resetting (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Clear file mapping when device is released (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Don't take kvm->lock around kvm_for_each_vcpu (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S: Use new mutex to synchronize access to rtas token list (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Use new mutex to synchronize MMU setup (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Avoid touching arch.mmu_ready in XIVE release functions (David Gibson) [1719524] - [mm] mm, oom: don't kill global init via memory.oom.group (Waiman Long) [1711604] - [mm] mm, oom: remove 'prefer children over parent' heuristic (Waiman Long) [1711604] - [mm] mm, oom: fix use-after-free in oom_kill_process (Waiman Long) [1711604] - [kernel] fork, memcg: fix crash in free_thread_stack on memcg charge fail (Waiman Long) [1711604] - [mm] memcg: localize memcg_kmem_enabled() check (Waiman Long) [1711604] - [mm] memcg, oom: notify on oom killer invocation from the charge path (Waiman Long) [1711604] - [mm] mm: handle no memcg case in memcg_kmem_charge() properly (Waiman Long) [1711604] - [kernel] mm: rework memcg kernel stack accounting (Waiman Long) [1711604] - [mm] mm/memcontrol.c: convert mem_cgroup_id::ref to refcount_t type (Waiman Long) [1711604] - [mm] memcg: remove memcg_kmem_skip_account (Waiman Long) [1711604] - [mm] mm/memcontrol.c: fix memory.stat item ordering (Waiman Long) [1711604] - [mm] mm: drain memcg stocks on css offlining (Waiman Long) [1711604] - [mm] mm: memcontrol: print proper OOM header when no eligible victim left (Waiman Long) [1711604] - [mm] mm, oom: introduce memory.oom.group (Waiman Long) [1711604] - [mm] mm, oom: refactor oom_kill_process() (Waiman Long) [1711604] - [mm] memcg: reduce memcg tree traversals for stats collection (Waiman Long) [1711604] - [mm] mm/vmscan.c: clear shrinker bit if there are no objects related to memcg (Waiman Long) [1711604] - [mm] mm: add SHRINK_EMPTY shrinker methods return value (Waiman Long) [1711604] - [mm] mm/vmscan.c: generalize shrink_slab() calls in shrink_node() (Waiman Long) [1711604] - [mm] mm/vmscan.c: iterate only over charged shrinkers during memcg shrink_slab() (Waiman Long) [1711604] - [mm] mm/list_lru.c: set bit in memcg shrinker bitmap on first list_lru item appearance (Waiman Long) [1711604] - [mm] mm/memcontrol.c: export mem_cgroup_is_root() (Waiman Long) [1711604] - [mm] mm/list_lru.c: pass lru argument to memcg_drain_list_lru_node() (Waiman Long) [1711604] - [mm] mm/list_lru: pass dst_memcg argument to memcg_drain_list_lru_node() (Waiman Long) [1711604] - [mm] mm/list_lru.c: add memcg argument to list_lru_from_kmem() (Waiman Long) [1711604] - [mm] fs: propagate shrinker::id to list_lru (Waiman Long) [1711604] - [fs] fs: Don't need to put list_lru into its own cacheline (Waiman Long) [1711604] - [fs] fs/super.c: refactor alloc_super() (Waiman Long) [1711604] - [mm] mm/workingset.c: refactor workingset_init() (Waiman Long) [1711604] - [mm] mm, memcg: assign memcg-aware shrinkers bitmap to memcg (Waiman Long) [1711604] - [mm] mm/memcontrol.c: move up for_each_mem_cgroup{, _tree} defines (Waiman Long) [1711604] - [mm] mm: assign id to every memcg-aware shrinker (Waiman Long) [1711604] - [mm] mm: introduce CONFIG_MEMCG_KMEM as combination of CONFIG_MEMCG && !CONFIG_SLOB (Waiman Long) [1711604] - [mm] mm/list_lru.c: combine code under the same define (Waiman Long) [1711604] - [mm] memcg, oom: move out_of_memory back to the charge path (Waiman Long) [1711604] - [fs] fs, mm: account buffer_head to kmemcg (Waiman Long) [1711604] - [fs] fs: fsnotify: account fsnotify metadata to kmemcg (Waiman Long) [1711604] - [include] mm: introduce mem_cgroup_put() helper (Waiman Long) [1711604] - [net] tcp: refine memory limit test in tcp_fragment() (Florian Westphal) [1724584] - [net] tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() (Florian Westphal) [1719923] {CVE-2019-11479} - [net] tcp: add tcp_min_snd_mss sysctl (Florian Westphal) [1719923] {CVE-2019-11479} - [net] tipc: pass tunnel dev as NULL to udp_tunnel(6)_xmit_skb (Xin Long) [1722751] - [include] ip6_tunnel: allow not to count pkts on tstats by passing dev as NULL (Xin Long) [1722751] - [net] ip_tunnel: allow not to count pkts on tstats by setting skb's dev to NULL (Xin Long) [1722751] - [net] netfilter: ipv6: nf_defrag: accept duplicate fragments again (Guillaume Nault) [1717106] - [net] netfilter: ipv6: nf_defrag: fix leakage of unqueued fragments (Guillaume Nault) [1717106] - [net] ethtool: fix potential userspace buffer overflow (Paolo Abeni) [1718393] - [net] net-gro: fix use-after-free read in napi_gro_frags() (Paolo Abeni) [1718393] - [net] ethtool: Check for vlan etype or vlan tci when parsing flow_rule (Paolo Abeni) [1718393] - [include] test nouarg before dereferencing zerocopy pointers (Paolo Abeni) [1718393] - [net] avoid weird emergency message (Paolo Abeni) [1718393] - [net] net-gro: Fix GRO flush when receiving a GSO packet. (Paolo Abeni) [1718393] - [net] sock_diag: fix autoloading of the raw_diag module (Paolo Abeni) [1718393] - [net] make skb_partial_csum_set() more robust against overflows (Paolo Abeni) [1718393] - [net] packets: Always register packet sk in the same order (Paolo Abeni) [1718393] - [net] net-sysfs: call dev_hold if kobject_init_and_add success (Paolo Abeni) [1718393] - [net] gro_cells: make sure device is up in gro_cells_receive() (Paolo Abeni) [1718393] - [net] net-sysfs: Fix mem leak in netdev_register_kobject (Paolo Abeni) [1718393] - [include] avoid false positives in untrusted gso validation (Paolo Abeni) [1718393] - [include] net: validate untrusted gso packets without csum offload (Paolo Abeni) [1718393] - [net] Do not allocate page fragments that are not skb aligned (Paolo Abeni) [1718393] - [net] set default network namespace in init_dummy_netdev() (Paolo Abeni) [1718393] - [net] Fix usage of pskb_trim_rcsum (Paolo Abeni) [1718393] - [net] call sk_dst_reset when set SO_DONTROUTE (Paolo Abeni) [1718393] - [net] net, skbuff: do not prefer skb allocation fails early (Paolo Abeni) [1718393] - [net] ethtool: check the return value of get_regs_len (Paolo Abeni) [1718393] - [net] packet: copy user buffers before orphan or clone (Paolo Abeni) [1718393] - [net] don't keep lonely packets forever in the gro hash (Paolo Abeni) [1718393] - [net] net-gro: reset skb->pkt_type in napi_reuse_skb() (Paolo Abeni) [1718393] - [net] flow_dissector: do not dissect l4 ports for fragments (Paolo Abeni) [1718393] - [net] net-ethtool: ETHTOOL_GUFO did not and should not require CAP_NET_ADMIN (Paolo Abeni) [1718393] - [net] tipc: fix modprobe tipc failed after switch order of device registration (Jon Maloy) [1718064] - [net] tipc: switch order of device registration to fix a crash (Jon Maloy) [1718064] - [net] tipc: fix hanging clients using poll with EPOLLOUT flag (Jon Maloy) [1718064] - [net] tipc: fix missing Name entries due to half-failover (Jon Maloy) [1718064] - [net] tipc: remove rcu_read_unlock() left in tipc_udp_recv() (Jon Maloy) [1718064] - [net] tipc: tipc_udp_recv() cleanup vs rcu verbs (Jon Maloy) [1718064] - [net] tipc: introduce new socket option TIPC_SOCK_RECVQ_USED (Jon Maloy) [1718064] - [net] tipc: set sysctl_tipc_rmem and named_timeout right range (Jon Maloy) [1718064] - [net] tipc: fix link established but not in session (Jon Maloy) [1718064] - [net] tipc: use standard write_lock & unlock functions when creating node (Jon Maloy) [1718064] - [net] tipc: missing entries in name table of publications (Jon Maloy) [1718064] - [net] tipc: adapt link failover for new Gap-ACK algorithm (Jon Maloy) [1718064] - [net] tipc: reduce duplicate packets for unicast traffic (Jon Maloy) [1718064] - [net] tipc: improve TIPC throughput by Gap ACK blocks (Jon Maloy) [1718064] - [net] tipc: add NULL pointer check (Jon Maloy) [1718064] - [net] tipc: fix return value check in tipc_mcast_send_sync() (Jon Maloy) [1718064] - [net] tipc: fix a null pointer deref (Jon Maloy) [1718064] - [net] tipc: fix use-after-free in tipc_sk_filter_rcv (Jon Maloy) [1718064] - [net] tipc: smooth change between replicast and broadcast (Jon Maloy) [1718064] - [net] tipc: introduce new capability flag for cluster (Jon Maloy) [1718064] - [net] tipc: support broadcast/replicast configurable for bc-link (Jon Maloy) [1718064] - [net] sched: avoid double free on matchall reoffload (Ivan Vecera) [1688236 1687456] - [net] taprio: add null check on sched_nest to avoid potential null pointer dereference (Ivan Vecera) [1688236 1687456] - [net] nfp: flower: remove unused index from nfp_fl_pedit() (Ivan Vecera) [1688236 1687456] - [net] mlx5e: Fix calling wrong function to get inner vlan key and mask (Ivan Vecera) [1688236 1687456] - [net] flow_offload: support CVLAN match (Ivan Vecera) [1688236 1687456] - [net] nfp: flower: fix masks for tcp and ip flags fields (Ivan Vecera) [1688236 1687456] - [net] sched: use the hardware intermediate representation for matchall (Ivan Vecera) [1688236 1687456] - [net] sched: add sample action to the hardware intermediate representation (Ivan Vecera) [1688236 1687456] - [net] cls_cgroup: avoid panic when receiving a packet before filter set (Ivan Vecera) [1688236 1687456] - [net] cls_matchall: avoid panic when receiving a packet before filter set (Ivan Vecera) [1688236 1687456] - [net] add a generic tracepoint for TX queue timeout (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: use struct_size() helper (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support for cycle-time-extension (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support for setting the cycle-time manually (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support adding an admin schedule (Ivan Vecera) [1688236 1687456] - [net] taprio: Fix potencial use of invalid memory during dequeue() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Fix taprio_dequeue() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Fix taprio_peek() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Remove should_restart_cycle() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Refactor taprio_get_start_time() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Remove pointless variable assigment (Ivan Vecera) [1688236 1687456] - [net] tc_act: drop include of module.h from tc_ife.h (Ivan Vecera) [1688236 1687456] - [net] fib: drop include of module.h from fib_notifier.h (Ivan Vecera) [1688236 1687456] - [net] ife: drop include of module.h from net/ife.h (Ivan Vecera) [1688236 1687456] - [net] psample: drop include of module.h from psample.h (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: fix build without 64bit div (Ivan Vecera) [1688236 1687456] - [net] revert: "net: sched: put back q.qlen into a single location" (Ivan Vecera) [1688236 1687456] - [net] sched: when clearing NOLOCK, clear TCQ_F_CPUSTATS, too (Ivan Vecera) [1688236 1687456] - [net] sched: always do stats accounting according to TCQ_F_CPUSTATS (Ivan Vecera) [1688236 1687456] - [net] sched: prefer qdisc_is_empty() over direct qlen access (Ivan Vecera) [1688236 1687456] - [net] caif: avoid using qdisc_qlen() (Ivan Vecera) [1688236 1687456] - [net] sched: cbs: fix port_rate miscalculation (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: fix picos_per_byte miscalculation (Ivan Vecera) [1688236 1687456] - [net] selftests: add a tc matchall test case (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Make sure we can write the IP header before changing DSCP bits (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Use tc_skb_protocol() helper for getting packet protocol (Ivan Vecera) [1688236 1687456] - [net] sched: act_sample: fix divide by zero in the traffic path (Ivan Vecera) [1688236 1687456] - [net] sched: don't set tunnel for decap action (Ivan Vecera) [1688236 1687456] - [net] sched: introduce and use qdisc tree flush/purge helpers (Ivan Vecera) [1688236 1687456] - [net] sched: introduce and use qstats read helpers (Ivan Vecera) [1688236 1687456] - [net] sched: fix ->get helper of the matchall cls (Ivan Vecera) [1688236 1687456] - [net] sched: Kconfig: update reference link for PIE (Ivan Vecera) [1688236 1687456] - [net] dev: introduce support for sch BYPASS for lockless qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: add empty status flag for NOLOCK qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: fix cleanup NULL pointer exception in act_mirr (Ivan Vecera) [1688236 1687456] - [net] sched: let actions use RCU to access 'goto_chain' (Ivan Vecera) [1688236 1687456] - [net] sched: don't dereference a->goto_chain to read the chain index (Ivan Vecera) [1688236 1687456] - [net] sched: act_vlan: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbmod: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbedit: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_simple: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_sample: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_police: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_pedit: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_nat: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_connmark: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_mirred: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_ife: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_gact: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_csum: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_bpf: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: prepare TC actions to properly validate the control action (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Interpret fwmark parameter as a bitmask (Ivan Vecera) [1688236 1687456] - [net] net_sched: return correct value for *notify* functions (Ivan Vecera) [1688236 1687456] - [net] sched: fix potential use-after-free in __tcf_chain_put() (Ivan Vecera) [1688236 1687456] - [net] sched: flower: insert new filter to idr after setting its mask (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: Fix double free dst_cache (Ivan Vecera) [1688236 1687456] - [net] sched: avoid unused-label warning (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Simplify logic in cake_select_tin() (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Permit use of connmarks as tin classifiers (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Make the dual modes fairer (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Allow test cases to be skipped (Ivan Vecera) [1688236 1687456] - [net] sched: put back q.qlen into a single location (Ivan Vecera) [1688236 1687456] - [net] sched: pie: avoid slow division in drop probability decay (Ivan Vecera) [1688236 1687456] - [net] netem: fix skb length BUG_ON in __skb_to_sgvec (Ivan Vecera) [1688236 1687456] - [net] revert "net: sched: fw: don't set arg->stop in fw_walk() when empty" (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix 64-bit division (Ivan Vecera) [1688236 1687456] - [net] tc-testing: gitignore, ignore local tdc config file (Ivan Vecera) [1688236 1687456] - [net] sched: fix typo in walker_check_empty() (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix mistake in reference link (Ivan Vecera) [1688236 1687456] - [net] sched: act_csum: Fix csum calc for tagged packets (Ivan Vecera) [1688236 1687456] - [net] sched: pie: update references (Ivan Vecera) [1688236 1687456] - [net] sched: pie: add derandomization mechanism (Ivan Vecera) [1688236 1687456] - [net] sched: pie: add more cases to auto-tune alpha and beta (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change initial value of pie_vars->burst_time (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change default value of pie_params->tupdate (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change default value of pie_params->target (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change value of QUEUE_THRESHOLD (Ivan Vecera) [1688236 1687456] - [net] sched: don't release block->lock when dumping chains (Ivan Vecera) [1688236 1687456] - [net] sched: set dedicated tcf_walker flag when tp is empty (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix metadata handling (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix NULL pointer dereference during init (Ivan Vecera) [1688236 1687456] - [net] Use RCU_POINTER_INITIALIZER() to init static variable (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel replace/delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel add/delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify concurrent delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify concurrent replace (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules replace (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules deletion (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules insertion (Ivan Vecera) [1688236 1687456] - [net] selftests: tdc_batch.py: add options needed for concurrency tests (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbedit: fix refcount leak when replace fails (Ivan Vecera) [1688236 1687456] - [net] sched: act_ipt: fix refcount leak when replace fails (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: Add dst_cache support (Ivan Vecera) [1688236 1687456] - [net] net_sched: initialize net pointer inside tcf_exts_init() (Ivan Vecera) [1687456 1688236] - [net] sched: potential NULL dereference in tcf_block_find() (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a memory leak in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a race condition in tcindex_destroy() (Ivan Vecera) [1688236 1687456] - [net] sched: using kfree_rcu() to simplify the code (Ivan Vecera) [1688236 1687456] - [net] sched: route: don't set arg->stop in route4_walk() when empty (Ivan Vecera) [1688236 1687456] - [net] sched: fw: don't set arg->stop in fw_walk() when empty (Ivan Vecera) [1688236 1687456] - [net] sched: cgroup: verify that filter is not NULL during walk (Ivan Vecera) [1688236 1687456] - [net] sched: matchall: verify that filter is not NULL in mall_walk() (Ivan Vecera) [1688236 1687456] - [net] sched: remove duplicated include from cls_api.c (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix two more memory leaks in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a memory leak in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] sched: unlock rules update API (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tcf_block_find() into standalone functions (Ivan Vecera) [1688236 1687456] - [net] sched: add flags to Qdisc class ops struct (Ivan Vecera) [1688236 1687456] - [net] sched: extend proto ops to support unlocked classifiers (Ivan Vecera) [1688236 1687456] - [net] sched: extend proto ops with 'put' callback (Ivan Vecera) [1688236 1687456] - [net] sched: track rtnl lock status when validating extensions (Ivan Vecera) [1688236 1687456] - [net] sched: prevent insertion of new classifiers during chain flush (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tp insert/delete for concurrent execution (Ivan Vecera) [1688236 1687456] - [net] sched: traverse classifiers in chain with tcf_get_next_proto() (Ivan Vecera) [1688236 1687456] - [net] sched: introduce reference counting for tcf_proto (Ivan Vecera) [1688236 1687456] - [net] sched: protect filter_chain list with filter_chain_lock mutex (Ivan Vecera) [1688236 1687456] - [net] sched: protect chain template accesses with block lock (Ivan Vecera) [1688236 1687456] - [net] sched: traverse chains in block with tcf_get_next_chain() (Ivan Vecera) [1688236 1687456] - [net] sched: protect block->chain0 with block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tc_ctl_chain() to use block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: protect chain->explicitly_created with block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: protect block state with mutex (Ivan Vecera) [1688236 1687456] - [net] Change TCA_ACT_* to TCA_ID_* to match that of TCA_ID_POLICE (Ivan Vecera) [1688236 1687456] - [net] Move all TC actions identifiers to one place (Ivan Vecera) [1688236 1687456] - [net] sched: use struct_size() helper (Ivan Vecera) [1688236 1687456] - [net] documentation: bring operstate documentation up-to-date (Ivan Vecera) [1688236 1687456] - [net] cls_flower: Remove filter from mask before freeing it (Ivan Vecera) [1688236 1687456] - [net] cls_flower: don't expose TC actions to drivers anymore (Ivan Vecera) [1688236 1687456] - [net] drivers: net: use flow action infrastructure (Ivan Vecera) [1688236 1687456] - [net] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1688236 1687456] - [net] net_sched: add performance counters for basic filter (Ivan Vecera) [1688236 1687456] - [net] net_sched: add hit counter for matchall (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: allocate mask dynamically in fl_change() (Ivan Vecera) [1688236 1687456] - [net] selftests: tc-testing: fix parsing of ife type (Ivan Vecera) [1688236 1687456] - [net] net_sched: refetch skb protocol for each filter (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix memory leak in case of action replace (Ivan Vecera) [1688236 1687456] - [net] sch_api: Change signature of qdisc_tree_reduce_backlog() to use ints (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Correctly update parent qlen when splitting GSO packets (Ivan Vecera) [1688236 1687456] - [net] sched: Fix detection of empty queues in child qdiscs (Ivan Vecera) [1688236 1687456] - [net] sched: Avoid dereferencing skb pointer after child enqueue (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Remove old entries from rhashtable (Ivan Vecera) [1688236 1687456] - [net] sched: simplify the qdisc_leaf code (Ivan Vecera) [1688236 1687456] - [net] selftests: Fix test errors related to lib.mk khdr target (Ivan Vecera) [1688236 1687456] - [net] net_sched: fold tcf_block_cb_call() into tc_setup_cb_call() (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Reject duplicated rules also under skip_sw (Ivan Vecera) [1688236 1687456] - [net] tc-testing: gitignore, ignore generated test results (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Implement the TdcResults module in tdc (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Add new TdcResults module (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Add command timeout feature to tdc (Ivan Vecera) [1688236 1687456] - [net] netem: use a list in addition to rbtree (Ivan Vecera) [1688236 1687456] - [net] Prevent invalid access to skb->prev in __qdisc_drop_all (Ivan Vecera) [1688236 1687456] - [net] tc-testing: tdc.py: Guard against lack of returncode in executed command (Ivan Vecera) [1688236 1687456] - [net] tc-testing: tdc.py: ignore errors when decoding stdout/stderr (Ivan Vecera) [1688236 1687456] - [net] etf: Drop all expired packets (Ivan Vecera) [1688236 1687456] - [net] etf: Split timersortedlist_erase() (Ivan Vecera) [1688236 1687456] - [net] etf: Use cached rb_root (Ivan Vecera) [1688236 1687456] - [net] etf: Cancel timer if there are no pending skbs (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Classify packets using port ranges (Ivan Vecera) [1688236 1687456] - [net] act_mirred: clear skb->tstamp on redirect (Ivan Vecera) [1688236 1687456] - [net] core: use __vlan_hwaccel helpers (Ivan Vecera) [1688236 1687456] - [net] sched: Replace call_rcu_bh() and rcu_barrier_bh() (Ivan Vecera) [1688236 1687456] - [net] sched: Remove egdev mechanism (Ivan Vecera) [1688236 1687456] - [net] sched: avoid writing on noop_qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: simplify the hell out u32_delete() emptiness check (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: keep track of knodes count in tc_u_common (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tp_c (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: the tp_c argument of u32_set_parms() is always tp->data (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: pass tc_u_common to u32_set_parms() instead of tc_u_hnode (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: clean tc_u_common hashtable (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tc_u_common ->rcu (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tc_u_knode ->tp (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of unused argument of u32_destroy_key() (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: make sure that divisor is a power of 2 (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: disallow linking to root hnode (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: mark root hnode explicitly (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix coding style issues (Ivan Vecera) [1688236 1687456] - [net] treewide: Replace more open-coded allocation size multiplications (Ivan Vecera) [1688236 1687456] - [net] sched: remove unused helpers (Ivan Vecera) [1688236 1687456] - [net] tc-testing: use a plugin to build eBPF program (Ivan Vecera) [1688236 1687456] - [net] tc-testing: fix build of eBPF programs (Ivan Vecera) [1688236 1687456] - [net] tc: Add support for configuring the taprio scheduler (Ivan Vecera) [1688236 1687456] - [documentation] KVM: arm64: Clarify access behaviour for out-of-range SVE register slice IDs (Andrew Jones) [1550499] - [documentation] KVM: Clarify KVM_{SET,GET}_ONE_REG error code documentation (Andrew Jones) [1550499] - [documentation] KVM: Clarify capability requirements for KVM_ARM_VCPU_FINALIZE (Andrew Jones) [1550499] - [kvm] KVM: arm/arm64: Clean up vcpu finalization function parameter naming (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Explain validity checks in set_sve_vls() (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Simplify KVM_REG_ARM64_SVE_VLS array sizing (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: WARN when avoiding divide-by-zero in sve_reg_to_region() (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Make register ioctl access errors more consistent (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Miscellaneous tidyups in guest.c (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Clean up UAPI register ID definitions (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: sys_regs: Demote redundant vcpu_has_sve() checks to WARNs (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Demote kvm_arm_init_arch_resources() to just set up SVE (Andrew Jones) [1550499] - [arm64] arm64/sve: Clarify vq map semantics (Andrew Jones) [1550499] - [kvm] arm64: KVM: Fix system register enumeration (Andrew Jones) [1550499] - [documentation] KVM: arm64/sve: Document KVM API extensions for SVE (Andrew Jones) [1550499] - [documentation] KVM: Document errors for KVM_GET_ONE_REG and KVM_SET_ONE_REG (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add a capability to advertise SVE support (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Allow userspace to enable SVE for vcpus (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Add pseudo-register for the guest's vector lengths (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Add KVM_ARM_VCPU_FINALIZE ioctl (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Add hook for arch-specific KVM initialisation (Andrew Jones) [1550499] - [arm64] arm64/sve: In-kernel vector length availability query interface (Andrew Jones) [1550499] - [kvm] KVM: arm64: Enumerate SVE register indices for KVM_GET_REG_LIST (Andrew Jones) [1550499] - [arm64] KVM: arm64/sve: Add SVE support to register access ioctl interface (Andrew Jones) [1550499] - [kvm] KVM: arm64: Reject ioctl access to FPSIMD V-regs on SVE vcpus (Andrew Jones) [1550499] - [kvm] KVM: arm64: Factor out core register ID enumeration (Andrew Jones) [1550499] - [kvm] KVM: arm64: Add missing #include of in guest.c (Andrew Jones) [1550499] - [include] KVM: Allow 2048-bit register access via ioctl interface (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Context switch the SVE registers (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: System register context switch and access support (Andrew Jones) [1550499] - [kvm] KVM: arm64: Support runtime sysreg visibility filtering (Andrew Jones) [1550499] - [kvm] KVM: arm64: Propagate vcpu into read_id_reg() (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add a vcpu flag to control SVE visibility for the guest (Andrew Jones) [1550499] - [arm64] arm64/sve: Enable SVE state tracking for non-task contexts (Andrew Jones) [1550499] - [arm64] arm64/sve: Check SVE virtualisability (Andrew Jones) [1550499] - [arm64] arm64/sve: Clarify role of the VQ map maintenance functions (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add missing #includes to kvm_host.h (Andrew Jones) [1550499] - [kvm] KVM: arm64: Refactor kvm_arm_num_regs() for easier maintenance (Andrew Jones) [1550499] - [arm64] KVM: arm64: Delete orphaned declaration for __fpsimd_enabled() (Andrew Jones) [1550499] - [arm64] arm64: fpsimd: Always set TIF_FOREIGN_FPSTATE on task state flush (Andrew Jones) [1550499] - [documentation] KVM: Documentation: Document arm64 core registers in detail (Andrew Jones) [1550499] - [arm64] arm64/sve: Disentangle from (Andrew Jones) [1550499] - [arm64] arm64/sve: ptrace: Fix SVE_PT_REGS_OFFSET definition (Andrew Jones) [1550499]- [fs] xfs: fix reporting supported extra file attributes for statx() (Bill O'Donnell) [1721034] - [scsi] scsi: hpsa: correct ioaccel2 chaining (Joseph Szczypek) [1706121] - [powerpc] powerpc/pseries/mobility: rebuild cacheinfo hierarchy post-migration (Steve Best) [1720929] - [powerpc] powerpc/pseries/mobility: prevent cpu hotplug during DT update (Steve Best) [1720929] - [powerpc] powerpc/cacheinfo: add cacheinfo_teardown, cacheinfo_rebuild (Steve Best) [1720929] - [kernel] cpuset: restore sanity to cpuset_cpus_allowed_fallback() (Joel Savitz) [1677311]- [scripts] scripts: override locale from environment when running recordmcount.pl (Prarit Bhargava) [1721515] - [netdrv] net: aquantia: fix wol configuration not applied sometimes (Igor Russkikh) [1662198] - [x86] x86/resctrl: Prevent NULL pointer dereference when local MBM is disabled (Prarit Bhargava) [1721208] - [fs] inotify: Fix fsnotify_mark refcount leak in inotify_update_existing_watch() (Miklos Szeredi) [1451863] - [fs] inotify: Fix fd refcount leak in inotify_add_watch(). (Miklos Szeredi) [1451863] - [fs] fanotify: Use inode_is_open_for_write (Miklos Szeredi) [1451863] - [fs] fanotify: Make sure to check event_len when copying (Miklos Szeredi) [1451863] - [fs] fsnotify/fdinfo: include fdinfo.h for inotify_show_fdinfo() (Miklos Szeredi) [1451863] - [include] fanotify: introduce new event mask FAN_OPEN_EXEC_PERM (Miklos Szeredi) [1451863] - [include] fsnotify: refactor fsnotify_parent()/fsnotify() paired calls when event is on path (Miklos Szeredi) [1451863] - [include] fanotify: introduce new event mask FAN_OPEN_EXEC (Miklos Szeredi) [1451863] - [fs] fanotify: return only user requested event types in event mask (Miklos Szeredi) [1451863] - [fs] fanotify: support reporting thread id instead of process id (Miklos Szeredi) [1451863] - [fs] fanotify: add BUILD_BUG_ON() to count the bits of fanotify constants (Miklos Szeredi) [1451863] - [fs] fsnotify: convert runtime BUG_ON() to BUILD_BUG_ON() (Miklos Szeredi) [1451863] - [fs] fanotify: deprecate uapi FAN_ALL_* constants (Miklos Szeredi) [1451863] - [fs] fanotify: simplify handling of FAN_ONDIR (Miklos Szeredi) [1451863] - [include] fanotify: fix collision of internal and uapi mark flags (Miklos Szeredi) [1451863] - [fs] fanotify: store fanotify_init() flags in group's fanotify_data (Miklos Szeredi) [1451863] - [fs] fanotify: clean up handling of "mark type" (Miklos Szeredi) [1451863] - [fs] fsnotify: fix false positive warning on inode delete (Miklos Szeredi) [1451863] - [include] inotify: Add flag IN_MASK_CREATE for inotify_add_watch() (Miklos Szeredi) [1451863] - [fs] fanotify: factor out helpers to add/remove mark (Miklos Szeredi) [1451863] - [fs] fsnotify: add helper to get mask from connector (Miklos Szeredi) [1451863] - [fs] fsnotify: let connector point to an abstract object (Miklos Szeredi) [1451863] - [fs] fsnotify: pass connp and object type to fsnotify_add_mark() (Miklos Szeredi) [1451863] - [fs] fsnotify: use typedef fsnotify_connp_t for brevity (Miklos Szeredi) [1451863] - [powerpc] powerpc/pseries: Fix oops in hotplug memory notifier (Steve Best) [1720932] - [netdrv] net: aquantia: tcp checksum 0xffff being handled incorrectly (Igor Russkikh) [1719176] - [netdrv] net: aquantia: fix LRO with FCS error (Igor Russkikh) [1719176] - [netdrv] net: aquantia: check rx csum for all packets in LRO session (Igor Russkikh) [1719176] - [netdrv] net: aquantia: tx clean budget logic error (Igor Russkikh) [1719176] - [security] selinux: log raw contexts as untrusted strings (Ondrej Mosnacek) [1719666] - [kernel] audit: add saddr_fam filter field (Richard Guy Briggs) [1715679] - [kernel] audit: re-structure audit field valid checks (Richard Guy Briggs) [1715679] - [kernel] audit: rename FILTER_TYPE to FILTER_EXCLUDE (Richard Guy Briggs) [1715679] - [kernel] audit: allow other filter list types for AUDIT_EXE (Richard Guy Briggs) [1715679] - [documentation] ovl: doc: add non-standard corner cases (Miklos Szeredi) [1718370] - [fs] ovl: support the FS_IOC_FSETXATTR ioctls (Miklos Szeredi) [1718370] - [fs] ovl: relax WARN_ON() for overlapping layers use case (Miklos Szeredi) [1718370] - [fs] ovl: check the capability before cred overridden (Miklos Szeredi) [1718370] - [fs] ovl: do not generate duplicate fsnotify events for "fake" path (Miklos Szeredi) [1718370] - [fs] ovl: support stacked SEEK_HOLE/SEEK_DATA (Miklos Szeredi) [1718370] - [fs] ovl: fix missing upper fs freeze protection on copy up for ioctl (Miklos Szeredi) [1718370] - [fs] fuse: fallocate: fix return with locked inode (Miklos Szeredi) [1717457] - [fs] fuse: honor RLIMIT_FSIZE in fuse_file_fallocate (Miklos Szeredi) [1717457] - [fs] fuse: decrement NR_WRITEBACK_TEMP on the right page (Miklos Szeredi) [1717457] - [fs] fuse: handle zero sized retrieve correctly (Miklos Szeredi) [1717457] - [fs] fuse: continue to send FUSE_RELEASEDIR when FUSE_OPEN returns ENOSYS (Miklos Szeredi) [1717457]- [mm] mm/mincore.c: make mincore() more conservative (Rafael Aquini) [1664203] {CVE-2019-5489} - [x86] x86/umip: Make the UMIP activated message generic (David Arcari) [1720014] - [x86] x86/umip: Print UMIP line only once (David Arcari) [1720014] - [crypto] crypto: vmac - separate tfm and request context (Desnes Augusto Nunes do Rosario) [1702702] - [crypto] crypto: ccp - Update driver messages to remove some confusion (David Arcari) [1719026] - [block] blk-mq: fix hang caused by freeze/unfreeze sequence (Ming Lei) [1719835] - [block] blk-mq: remove WARN_ON(!q->elevator) from blk_mq_sched_free_requests (Ming Lei) [1719835] - [block] block: free sched's request pool in blk_cleanup_queue (Ming Lei) [1719835] - [block] block: don't protect generic_make_request_checks with blk_queue_enter (Ming Lei) [1719835] - [block] block: move blk_exit_queue into __blk_release_queue (Ming Lei) [1719835] - [block] block: print offending values when cloned rq limits are exceeded (Ming Lei) [1719816] - [block] block: fix page leak when merging to same page (Ming Lei) [1662864] - [x86] RHEL: fix build of spec_ctrl.h for older assemblers (Jeff Moyer) [1719406] - [drm] drm/amd/display: Initialize stream_update with memset (Jeff Moyer) [1719406] - [mm] mm/gup: finish consolidating error handling (Jeff Moyer) [1641506] - [mm] mm/gup: cache dev_pagemap while pinning pages (Jeff Moyer) [1641506] - [rpmspec] kernel packaging: Fix extra namespace collision (Prarit Bhargava) [1699868] - [rpmspec] redhat: kernel-selftests-internal: add dependencies (Jiri Benc) [1717943] - [kernel] kernel/module.c: Only return -EEXIST for modules that have finished loading (Prarit Bhargava) [1666939] - [input] Input: elantech - remove P52 and P72 from SMBus blacklist (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - handle physical middle button (Benjamin Tissoires) [1703157] - [input] Input: elantech/SMBus - export all capabilities from the PS/2 node (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - do not query the info if they are provided (Benjamin Tissoires) [1703157] - [input] Input: elantech - detect middle button based on firmware version (Benjamin Tissoires) [1703157] - [input] Input: elantech - add helper function elantech_is_buttonpad() (Benjamin Tissoires) [1703157] - [input] Input: elantech - query the min/max information beforehand too (Benjamin Tissoires) [1703157] - [input] Input: elantech - enable middle button support on 2 ThinkPads (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - increment wakeup count if wake source (Benjamin Tissoires) [1703157] - [kernel] timekeeping: Update multiplier when NTP frequency is set directly (Prarit Bhargava) [1714164] - [fs] xfs: fix use after free in buf log item unlock assert (Brian Foster) [1666150] - [fs] xfs: add missing error check in xfs_prepare_shift() (Brian Foster) [1699214] - [documentation] Documentation: Fix grammatical error in sysctl/fs.txt & clarify negative dentry (Waiman Long) [1673955] - [fs] fs/dcache: Track & report number of negative dentries (Waiman Long) [1673955] - [fs] fs/dcache: Fix incorrect nr_dentry_unused accounting in shrink_dcache_sb() (Waiman Long) [1673955] - [net] tcp: tcp_fragment() should apply sane memory limits (Florian Westphal) [1719858] {CVE-2019-11478} - [net] tcp: limit payload size of sacked skbs (Florian Westphal) [1719603] {CVE-2019-11477}- [tools] kvm: selftests: make hyperv_cpuid test pass on AMD (Vitaly Kuznetsov) [1718501] - [scsi] vmw_pvscsi: Fixed to work with SG_CHAIN (Ewan Milne) [1717278] - [x86] mark AMD Rome processors supported (David Arcari) [1520002] - [fs] ext4: zero out the unused memory region in the extent tree block (Lukas Czerner) [1715276] {CVE-2019-11833} - [s390] s390/smp: Fix calling smp_call_ipl_cpu() from ipl CPU (David Hildenbrand) [1715041] - [vfio] vfio/type1: Limit DMA mappings per container (Alex Williamson) [1695592] {CVE-2019-3882} - [tools] selftests/powerpc: Remove Power9 paste tests (Diego Domingos) [1662374] - [tools] selftests/powerpc: Remove Power9 copy_unaligned test (Diego Domingos) [1662374] - [tools] selftests/powerpc: Fix ptrace tm failure (Diego Domingos) [1662374] - [netdrv] mlxsw: core: Prevent reading unsupported slave address from SFP EEPROM (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Prevent QSFP module initialization for old hardware (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix autoneg status in ethtool (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Reincrease PCI reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Put MC TCs into DWRR mode (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Add a multicast pool for Spectrum-2 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test VRF MAC vetoing (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not check VRF MAC address (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw ordered workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for EMAD workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add MDB entries in prepare phase (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: mlxsw: core: avoid -Wint-in-bool-context warning (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Initialize base_mac (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Prevent duplication during QSFP module initialization (Ivan Vecera) [1680241] - [netdrv] mellanox: Switch to bitmap_zalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Extend initialization by querying resources data (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Extend input parameters list of command API (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Modify input parameter name in initialization API (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Fix comment misspelling (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Move resource query API to common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Add ethtool support (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Make structures and variables names shorter (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Move ethtool module callbacks to a common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Make mlxsw_sp_acl_tcam_vregion_rehash() return void (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remember where to continue rehash migration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Allow to interrupt/continue rehash work (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Do rollback as another call to mlxsw_sp_acl_tcam_vchunk_migrate_all() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Put vchunk migrate start/end code into separate functions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Put this_is_rollback to rehash context struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Rename variables in mlxsw_sp_acl_tcam_ventry_migrate() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: assign vchunk->chunk by the newly created chunk (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: assign vregion->region by the newly created region (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push code start/end from mlxsw_sp_acl_tcam_vregion_migrate() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push rehash start/end code into separate functions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce new rehash context struct and save hint_priv there (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't migrate already migrated entry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push rehash dw struct into rehash sub-struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Handle SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: remove set but not used variable 'autoneg_status' (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add massive delta rehash test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Check migrate end trace (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add vregion migration end tracepoint (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add IPv6 variant of simple delta rehash test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't take mutex in mlxsw_sp_acl_tcam_vregion_rehash_work() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove RTNL lock assertions from ERP code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't take rtnl lock during vregion_rehash_intrvl_set() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce a mutex to guard objagg instance manipulation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Enable vregion rehash per-profile (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce mutex to guard Bloom Filter updates (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce vregion mutex (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Refactor vregion association code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce a mutex to guard region list updates (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split TCAM group structure into two (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove unused ops field from group structure (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 ASIC support for new port types and speeds (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 ASIC port type-speed operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add new port type-speed fields for PTYS register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: 80 columns wrapping change (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Rename p_eth_proto_adm to full name p_eth_proto_admin (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add port type-speed operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Rename port type-speed functions to ASIC specific (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Query port connector type from firmware (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove unsupported eth_proto_lp_advertise field in PTYS (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove duplicate port link mode entry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Avoid -Wformat-truncation warnings (Ivan Vecera) [1680241] - [netdrv] net: Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Reject overlarge headroom size requests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Update port headroom configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Add Spectrum-2 shared buffer configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_mm in sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_cm in sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_prs in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_pms in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep pool descriptors in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allocate prs & pms dynamically (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add struct mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change IP2ME CPU policer rate and burst size values (Ivan Vecera) [1680241] - [netdrv] mlxsw: __mlxsw_sp_port_headroom_set(): Fix a use of local variable (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add some missing configuration symbols (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: fix spelling mistake "temprature" -> "temperature" (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend thermal module with per QSFP module thermal zones (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Allow thermal zone binding to an external cooling device (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Add QSFP module temperature label attribute to hwmon (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend hwmon interface with QSFP module temperature attributes (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend hwmon interface with fan fault attribute (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Rename cooling device (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Replace thermal temperature trips with defines (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Modify thermal zone definition (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Set different thermal polling time based on bus frequency capability (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Add API for QSFP module temperature thresholds reading (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Fan Out of Range Event Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Management Temperature Bulk Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Move QSFP EEPROM definitions to common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Remove unused variables (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: avoid double sourcing of lib.sh (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Fix VLAN modify action support (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Drop unnecessary WARN_ON_ONCE() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set LAG port collector only when active (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Remove getting PORT_BRIDGE_FLAGS (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add simple delta rehash test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add couple of vregion rehash tracepoints (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: add "acl_region_rehash_interval" devlink param (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement region migration according to hints (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add multi field to PAGT register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Pass hints priv all the way to ERP code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement basic ERP rehash hits creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split entry struct into entry and ventry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split chunk struct into chunk and vchunk (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split region struct into region and vregion (Ivan Vecera) [1680241] - [netdrv] lib: objagg: implement optimization hints assembly and use hints for object creation (Ivan Vecera) [1680241] - [netdrv] devlink: publish params only after driver init is done (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for blackhole routes (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Offload blackhole routes (Ivan Vecera) [1680241] - [netdrv] mlxsw: Implement ndo_get_port_parent_id() (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Trace EMAD errors (Ivan Vecera) [1680241] - [netdrv] drivers: net: use flow action infrastructure (Ivan Vecera) [1680241] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_flower: Fix test result handling (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Ignore ARP (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Enable forwarding (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Flush neighbors (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Fix roaming test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Wait for tardy mirrored packets (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_changes: Fix TTL test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Update ping limits (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Update ping limits (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Make ping timeout configurable (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Add delta two masks one key test (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Fix multiple_masks_test (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Extend and move trace helpers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add C-TCAM spill tracepoint (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Include delta bits into hashtable key (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Use OK instead of PASS in test output (Ivan Vecera) [1680241] - [tools] selftests: net: forwarding: change devlink resource support checking (Ivan Vecera) [1680241] - [documentation] Documentation: add devlink param file for mlxsw driver (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add more extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Fix rul/rule typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Move mr_ruleset and mr_rule structs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove unnecessary arg on action_replace call path (Ivan Vecera) [1680241] - [netdrv] mlxfw: Replace license text with SPDX identifiers and adjust copyrights (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Enable VXLAN on Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add support for VXLAN on Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Breakout common code to a common function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose functions to create and destroy underlay RIF (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for ARP suppression (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VXLAN symmetric routing (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for ARP decapsulation (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VXLAN asymmetric routing (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology with keys test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology with key test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology with keys test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology with key test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP tunneling lib (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add GRE tunnel support for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Update tunnel decap properties (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Support RIF without device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Change mlxsw_sp_ipip_lb_ul_vr_id() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add underlay RIF ID support (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Mark RIF index as taken before creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Adjust loopback RIF configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set RIF ops per ASIC type (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Split RIF ops array for Spectrum-2 support (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add underlay egress RIF field in RTDP register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add fields to RITR - Router Interface Table Register (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for externally learned FDB entries (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test FDB offload indication (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not treat static FDB entries as sticky (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Update dummy FID index (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Return error on PCI reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Increase PCI SW reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Ring CQ's doorbell before RDQ's (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test veto of unsupported VXLAN FDBs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add extack messages to VXLAN FDB rejection (Ivan Vecera) [1680241] - [netdrv] mlxsw: Add extack to mlxsw_sp_nve_ops.fdb_replay (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl_bloom_filter: use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VLAN deletion (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Set PVID correctly during VLAN deletion (Ivan Vecera) [1680241] - [net] net: bridge: Fix VLANs memory leak (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test case for VLAN addition error flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Replace error code with EINVAL (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Avoid returning errors in commit phase (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add VXLAN dependency for spectrum (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Disable lag port TX before removing it (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove ASSERT_RTNL()s in module removal flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add cleanup after C-TCAM update error condition (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: drop useless LIST_HEAD (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add router test with VID 1 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Adjust test regarding VID 1 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove limitation regarding VID 1 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Switch to VID 4095 as default VID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add an helper function to cleanup VLAN entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Store pointer to default port VLAN in port struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Allow controlling destruction of default port VLAN (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set PVID during port initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Replace hard-coded default VID with a define (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test case for L3 VNI (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not force specific configuration order (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add rtnetlink tests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Hold a reference on RIF's netdev (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Make RIF deletion more robust (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Propagate 'struct mlxsw_sp' further (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Properly cleanup LAG uppers when removing port from LAG (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove reference count from VLAN entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Handle VLAN device unlinking (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Remove unused function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not destroy RIFs based on FID's reference count (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Sanitize VLAN interface's uppers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Fix memory leak upon driver reload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add trap for decapsulated ARP packets (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Increase timeout during firmware flash process (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Update the supported firmware to version 13.1910.622 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom delta test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom filter complex test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom filter simple test (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Activate Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Set master RP index on transition to eRP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Update Bloom filter on eRP transitions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Set A-TCAM rules in Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Bloom filter update (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Bloom filter handling (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 Bloom filter resource (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy Engine Algorithmic Bloom Filter Entries Register (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test FID RIF MAC vetoing (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test RIF MAC vetoing (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Veto unsupported RIF MAC addresses (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add mlxsw_sp.mac_mask (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Generalize mlxsw_sp_netdevice_router_port_event() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: extack: Test VLAN add on a port device (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: extack: Test VLAN add on a VXLAN device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack on port VLAN events (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack on VXLAN VLAN events (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add multicast routing test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add Multicast routing support for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Limit priority value (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Support rule creation without action creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add replace rule action operation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add multicast router profile operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Spectrum-2 keys (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change stage of ACL initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy Engine Multicast Router Binding Table Register (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add PVID test case for VXLAN with VLAN-aware bridges (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: vxlan: Test FDB un/marking on VXLAN join/leave (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Un/offload FDB on nve_fid_disable/enable (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add mlxsw_sp_fid_ops.fdb_clear_offload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add mlxsw_sp_nve_ops.fdb_clear_offload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add mlxsw_sp_nve_ops.fdb_replay (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Publish mlxsw_sp_switchdev_notifier (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Track NVE type at FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Fix VLAN device deletion via ioctl (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Relax GRE decap matching check (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Avoid leaking FID's reference count (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Remove easily triggerable warnings (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a new test extack.sh (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add one-armed router test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Mirror loopbacked packets instead of trapping them (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Load firmware version based on devlink parameter (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Reset firmware after flash during driver initialization (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add VxLAN test with a VLAN-aware bridge (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN configuration with a VLAN-aware bridge (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Consider VLAN-aware bridges as valid (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable VxLAN enslavement to VLAN-aware bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Prepare function for VLAN-aware bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Unify VxLAN leave function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Add API to lookup 802.1Q FIDs without creating them (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Flip driver to use emulated 802.1Q FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Introduce emulated VLAN RIFs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Introduce emulated 802.1Q FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Make flood index calculation more robust (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not set field when it is reserved (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Consider VxLAN learning enabled as valid (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Allow VxLAN learning (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Allow deletion of learned FDB entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Process learned VxLAN FDB entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add API to resolve learned IP addresses (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Allow FID lookup by its index (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Store ifindex of NVE device in FID (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add definition of unicast tunnel record for SFN register (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend cooling device with cooling levels (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN flooding (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose discard counters via ethtool (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add simple delta test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Implement delta for ERP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Push code related to num_ctcam_erps inc/dec into separate helpers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Remove mlxsw_afk_encode() block range args and key/mask check (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Don't encode the key again in mlxsw_sp_acl_atcam_12kb_lkey_id_get() (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl: Change order of args of ops->encode_block() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Pass key pointer to master_mask_set/clear (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl_erp: Convert to use objagg for tracking ERPs (Ivan Vecera) [1680241] - [tools] selftests: Adjust spectrum-2 ctcam_two_atcam_masks_test (Ivan Vecera) [1680241] - [tools] selftests: Adjust spectrum-2 two_mask_test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix IP2ME CPU policer configuration (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Add a test for UC awareness (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Tweak for min shaper (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set minimum shaper on MC TCs (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: QEEC: Add minimum shaper fields (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Fix devlink unregister flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Don't ignore deletions of learned MACs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add support for VxLAN encapsulation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable VxLAN enslavement to bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Configure matching local routes for NVE decap (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Clear NVE configuration when destroying 802.1D FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Implement VxLAN operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Implement common NVE core (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Allow querying VR ID based on table ID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Enable local routes promotion to perform NVE decap (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Add APIs to lookup FID without creating it (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Allow setting and clearing NVE properties on FID (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Fix use-after-free when flashing firmware during init (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add NVE packet traps (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add NVE resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Monitoring Parsing State Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add definition of unicast tunnel record for SFD register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE QoS Default Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE QoS Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Decapsulation ECN Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Encapsulation ECN Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Underlay Multicast Table Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunnel Port Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE General Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Seed LAG hash function (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Extend FDB flush types for NVE (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add a new type of KVD linear record (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Move L3 protocol and address definitions to global header file (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not assume notifier information type (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Check notification relevance based on upper device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Prepare for VxLAN FDB notifications (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove misuses of private header file (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Make executable (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Have lldpad_app_wait_set() wait for unknown, too (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Fix a typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Delete RIF when VLAN device is removed (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Derive event type from event queue number (Ivan Vecera) [1680241] - [netdrv] mlxsw: Make MLXSW_SP1_FWREV_MINOR a hard requirement (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Bump required firmware version (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for UC behavior under MC flood (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add mtu_set(), mtu_restore() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add ethtool_stats_get() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Tweak SBMM configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Configure MC pool (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow configuration of static pools (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Pass SBPM min_size in cells (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow an infinite maximum for per-TC pool limit (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow pools of infinite size (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep shared buffer size in mlxsw_sp_sb (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Split TC_COUNT into ingress and egress (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Use devlink pool indices throughout (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Init shaper for TCs 8..15 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Set up a dedicated pool for BUM traffic (Ivan Vecera) [1680241] - [netdrv] mlxsw: remove unused arrays mlxsw_i2c_driver_name and mlxsw_pci_driver_name (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: remove unnecessary function mlxsw_core_driver_put (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose counter for all 16 TCs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Include RFC-2819 counters in stats length (Ivan Vecera) [1680241] - [netdrv] mlxsw: Replace license text with SPDX identifiers and adjust copyrights (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add TC flower test for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Reset FW after flash (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Update the supported firmware to version 13.1702.6 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Disallow usage of vlan_id key on egress (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: use PTR_ERR_OR_ZERO() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: gre_multipath: Update next-hop statistics match criteria (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Configure MC-aware mode on mlxsw ports (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix a typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Switch Traffic Class Table is Multicast-Aware Register (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add test for ip_forward_update_priority (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Move DSCP capture to lib.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Move lldpad waiting to lib.sh (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Handle sysctl_ip_fwd_update_priority (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Extract work-scheduling into a new function (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL team LACP (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL team (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Introduce $ARPING (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Support team devices (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add require_command() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_dscp_bridge: Fix (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add test for trust-DSCP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Support ieee_setapp, ieee_delapp (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Priority to DSCP Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS ReWrite Enable Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Priority Trust State Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Port DSCP to Priority Mapping Register (Ivan Vecera) [1680241] - [tools] selftests: add a selftest for directed broadcast forwarding (Ivan Vecera) [1680241] - [tools] selftests: forwarding: add tests for TC chain get and dump operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Start using A-TCAM (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM rule insertion and deletion (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Pass C-TCAM region and entry to insert function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM region initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Make global TCAM resources available to regions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Encapsulate C-TCAM region in A-TCAM region (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Allow encoding a partial key (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Extend Spectrum-2 region struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add support for C-TCAM eRPs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Enable C-TCAM only mode in eRP core (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement common eRP core (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 eRP resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 maximum large key ID resource (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine eRP Table Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine TCAM Entry Register Version 3 (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Prepare PERERP register for A-TCAM usage (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Propagate extack pointer (Ivan Vecera) [1680241] - [tools] selftests: forwarding: gre_multipath: Drop IPv6 tests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Implement chain template hinting (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Extend to support Spectrum-2 ASIC (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add initial Spectrum-2 ACL implementation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add region association callback (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add support for Spectrum-2 block encoding (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Prepare for Spectrum-2 block encoding (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine General Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region eRP Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region Association Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: acl: Introduce activity get operation for action block/set (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add support for activity information from PEFA register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Introduce flex key blocks for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 variant of flex actions ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_mr_tcam: Add Spectrum-2 stubs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add KVDL manager implementation for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Infrastructure Entry Delete Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose counters for various packet sizes (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Optimize processing of VRRP MACs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add VRRP traps (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Direct macvlans' MACs to router (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable macvlan upper devices (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_nh: Unset rp_filter on host VRF (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_span: Change LAG lower selection (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add couple of Spectrum-2 KVD resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Prepare for multiple FW versions for Spectrum and Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement priority setting for rules inserted to TCAM (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add priority field for PTCEV2 register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Move block items encoding into Spectrum op (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Convert mlxsw_afk_create args to ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add tcam init/fini ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split TCAM handling 3 ways (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_mr_tcam: Push Spectrum-specific operations into a separate file (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Pass entry_count to free function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Pass entry type to alloc/free (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Push out KVD linear management into ops (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Tighten up VLAN capture (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Fix helper to get the first KVD linear index (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Allow the first set to be dummy (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Put pointer to flex action ops to mlxsw_sp (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_keys: Change SRC_SYS_PORT flex key element size (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_keys: Split MAC and IP address flex key elements (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Ignore always-zeroed bits in tp->prio (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Introduce Flex2 key type for PTAR register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change name of mlxsw_sp_afk_blocks to mlxsw_sp1_afk_blocks (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: avoid uninitialized variable access (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add mlxsw-specific test for mirror to gretap (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Allow importing dependent libraries (Ivan Vecera) [1680241] - [tools] selftests: forwarding: test for bridge port isolation (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL 802.1q (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL 802.1d (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add scale test for resources (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for mirror-to-gretap test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add scale test for mirror-to-gretap (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for tc flower test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add tc flower scale test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for router test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add router test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add devlink KVD resource test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add devlink_lib_spectrum.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add devlink_lib.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Parameterize NUM_NETIFS in two functions (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add check_err_fail() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Allow lib.sh sourcing from other directories (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_changes: Fix waiting for neighbor (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Split out setup_wait_dev() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test multipath tunneling (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Unset rp_filter (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test routed bridge interface (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Ban PVID change if bridge has a RIF (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add mlxsw_sp_rif_fid() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Publish mlxsw_sp_rif_find_by_dev() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Allocate FID according to PVID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Propagate extack to .fid_get() (Ivan Vecera) [1680241] - [netdrv] net: phy: realtek: Dummy IRQ calls for RTL8366RB (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add generic Realtek PHY driver (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: use new PHYID matching macros (Corinna Vinschen) [1680528] - [include] net: phy: add macros for PHYID matching (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: load driver for all PHYs with a Realtek OUI (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: fix RTL8201F sysfs name (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: Support RTL8366RB variant (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add missing entry for RTL8211C to mdio_device_id table (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add support for RTL8211C (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add missing entry for RTL8211 to mdio_device_id table (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add support for RTL8211 (Corinna Vinschen) [1680528] - [netdrv] r8169: change irq handler to always trigger NAPI polling (Corinna Vinschen) [1680528] - [netdrv] r8169: create function pointer array for chip hw init functions (Corinna Vinschen) [1680528] - [netdrv] r8169: create function pointer array for PHY init functions (Corinna Vinschen) [1680528] - [netdrv] r8169: disable ASPM again (Corinna Vinschen) [1680528] - [netdrv] r8169: disable tx interrupt coalescing on RTL8168 (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: use netif_receive_skb_list batching" (Corinna Vinschen) [1680528] - [netdrv] r8169: use netif_receive_skb_list batching (Corinna Vinschen) [1680528] - [netdrv] r8169: disable default rx interrupt coalescing on RTL8168 (Corinna Vinschen) [1680528] - [netdrv] r8169: fix cable re-plugging issue (Corinna Vinschen) [1680528] - [netdrv] r8169: use netif_start_queue instead of netif_wake_qeueue in rtl8169_start_xmit (Corinna Vinschen) [1680528] - [netdrv] r8169: don't read interrupt mask register in interrupt handler (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded mmiowb barriers (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: make use of xmit_more and __netdev_sent_queue" (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: remove unneeded mmiowb barriers" (Corinna Vinschen) [1680528] - [netdrv] r8169: Avoid pointer aliasing (Corinna Vinschen) [1680528] - [netdrv] r8169: Load MAC address from device tree if present (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl_wol_pll_power_down (Corinna Vinschen) [1680528] - [netdrv] r8169: improve WoL handling (Corinna Vinschen) [1680528] - [netdrv] r8169: enable EEE per default on RTL8168f (Corinna Vinschen) [1680528] - [netdrv] r8169: add EEE support for RTL8168f (Corinna Vinschen) [1680528] - [netdrv] r8169: enable EEE per default on chip versions from RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: add general EEE support for chip versions from RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out PHY init sequence adjusting 10M and ALDPS (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out disabling ALDPS (Corinna Vinschen) [1680528] - [netdrv] r8169: improve firmware handling (Corinna Vinschen) [1680528] - [netdrv] r8169: remove PCI DAC support (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rx buffer allocation (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out getting ether_clk (Corinna Vinschen) [1680528] - [netdrv] r8169: replace mii_bus member with phy_device member in struct rtl8169_private (Corinna Vinschen) [1680528] - [netdrv] r8169: reset chip synchronously in __rtl8169_resume (Corinna Vinschen) [1680528] - [netdrv] r8169: add helpers for locking / unlocking the config registers (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rtl_pcie_state_l2l3_enable (Corinna Vinschen) [1680528] - [netdrv] r8169: initialize task workqueue only once (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded call in pcierr (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl_get_events (Corinna Vinschen) [1680528] - [netdrv] r8169: load Realtek PHY driver module before r8169 (Corinna Vinschen) [1680528] - [netdrv] r8169: don't try to read counters if chip is in a PCI power-save state (Corinna Vinschen) [1680528] - [netdrv] r8169: Add support for new Realtek Ethernet (Corinna Vinschen) [1680528] - [netdrv] r8169: fix WoL device wakeup enable (Corinna Vinschen) [1680528] - [netdrv] r8169: improve spurious interrupt detection (Corinna Vinschen) [1680528] - [netdrv] r8169: fix crash if CONFIG_DEBUG_SHIRQ is enabled (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded mmiowb barriers (Corinna Vinschen) [1680528] - [netdrv] ethernet/realtek: Replace synchronize_sched() with synchronize_rcu() (Corinna Vinschen) [1680528] - [netdrv] r8169: make use of xmit_more and __netdev_sent_queue (Corinna Vinschen) [1680528] - [netdrv] r8169: replace macro TX_FRAGS_READY_FOR with a function (Corinna Vinschen) [1680528] - [netdrv] r8169: use napi_consume_skb where possible (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify detecting chip versions with same XID (Corinna Vinschen) [1680528] - [netdrv] r8169: remove default chip versions (Corinna Vinschen) [1680528] - [netdrv] r8169: remove ancient GCC bug workaround in a second place (Corinna Vinschen) [1680528] - [netdrv] r8169: improve chip version identification (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify ocp functions (Corinna Vinschen) [1680528] - [netdrv] r8169: remove workaround for ancient gcc bug (Corinna Vinschen) [1680528] - [netdrv] r8169: remove manual padding in struct ring_info (Corinna Vinschen) [1680528] - [netdrv] r8169: remove "not PCI Express" message (Corinna Vinschen) [1680528] - [netdrv] r8169: remove print_mac_version (Corinna Vinschen) [1680528] - [netdrv] r8169: use PCI_VDEVICE macro (Corinna Vinschen) [1680528] - [netdrv] r8169: replace event_slow with irq_mask (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unused interrupt sources (Corinna Vinschen) [1680528] - [netdrv] r8169: use dev_get_drvdata where possible (Corinna Vinschen) [1680528] - [netdrv] r8169: merge rtl_irq_enable and rtl_irq_enable_all (Corinna Vinschen) [1680528] - [pci] PCI: add USR vendor id and use it in r8169 and w6692 driver (Corinna Vinschen) [1680528] - [netdrv] net: ethernet: Convert phydev advertize and supported from u32 to link mode (Corinna Vinschen) [1680528] - [netdrv] r8169: fix broken Wake-on-LAN from S5 (poweroff) (Corinna Vinschen) [1680528] - [netdrv] r8169: add support for Byte Queue Limits (Corinna Vinschen) [1680528] - [netdrv] r8169: handle all interrupt events in the hard irq handler (Corinna Vinschen) [1680528] - [netdrv] r8169: fix NAPI handling under high load (Corinna Vinschen) [1680528] - [netdrv] r8169: re-enable MSI-X on RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded call to netif_stop_queue in rtl8169_net_suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify rtl8169_set_magic_reg (Corinna Vinschen) [1680528] - [netdrv] r8169: Enable MSI-X on RTL8106e (Corinna Vinschen) [1680528] - [netdrv] r8169: set RX_MULTI_EN bit in RxConfig for 8168F-family chips (Corinna Vinschen) [1680528] - [netdrv] r8169: always autoneg on resume (Corinna Vinschen) [1680528] - [netdrv] r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO (Corinna Vinschen) [1680528] - [netdrv] r8169: Disable clk during suspend / resume (Corinna Vinschen) [1680528] - [netdrv] r8169: improve a check in rtl_init_one (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rtl8169_irq_mask_and_ack (Corinna Vinschen) [1680528] - [netdrv] r8169: use default watchdog timeout (Corinna Vinschen) [1680528] - [netdrv] r8169: fix autoneg issue on resume with RTL8168E (Corinna Vinschen) [1680528] - [netdrv] r8169: remove duplicated RTL8169s PHY initialization steps (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify RTL8169 PHY initialization (Corinna Vinschen) [1680528] - [netdrv] r8169: Get and enable optional ether_clk clock (Corinna Vinschen) [1680528] - [netdrv] r8169: enable ASPM on RTL8106E (Corinna Vinschen) [1680528] - [netdrv] r8169: Align ASPM/CLKREQ setting function with vendor driver (Corinna Vinschen) [1680528] - [netdrv] r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED (Corinna Vinschen) [1680528] - [netdrv] r8169: set TxConfig register after TX / RX is enabled, just like RxConfig (Corinna Vinschen) [1680528] - [netdrv] r8169: don't configure max jumbo frame size per chip version (Corinna Vinschen) [1680528] - [netdrv] r8169: don't configure csum function per chip version (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify interrupt handler (Corinna Vinschen) [1680528] - [netdrv] r8169: don't include asm headers directly (Corinna Vinschen) [1680528] - [netdrv] r8169: remove version info (Corinna Vinschen) [1680528] - [netdrv] r8169: restore previous behavior to accept BIOS WoL settings (Corinna Vinschen) [1680528] - [netdrv] r8169: power down chip in probe (Corinna Vinschen) [1680528] - [netdrv] r8169: don't read chip phy status register (Corinna Vinschen) [1680528] - [netdrv] r8169: remove mii_if_info member from struct rtl8169_private (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl8169_set_speed_xmii (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_speed_down / phy_speed_up (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_mii_ioctl (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_ethtool_nway_reset (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_ethtool_(g|s)et_link_ksettings (Corinna Vinschen) [1680528] - [netdrv] r8169: replace open-coded PHY soft reset with genphy_soft_reset (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_resume/phy_suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: add basic phylib support (Corinna Vinschen) [1680528] - [netdrv] r8169: fix runtime suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: remove old PHY reset hack (Corinna Vinschen) [1680528] - [netdrv] r8169: remove TBI 1000BaseX support (Corinna Vinschen) [1680528] - [netdrv] r8169: use standard debug output functions (Corinna Vinschen) [1680528] - [netdrv] r8169: reject unsupported WoL options (Corinna Vinschen) [1680528] - [netdrv] r8169: don't check WoL when powering down PHY and interface is down (Corinna Vinschen) [1680528] - [netdrv] r8169: improve saved_wolopts handling (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: restore previous behavior to accept BIOS WoL settings" (Corinna Vinschen) [1680528] - [netdrv] r8169: improve phy initialization when resuming (Corinna Vinschen) [1680528] - [netdrv] r8169: enable ASPM on RTL8168E-VL (Corinna Vinschen) [1680528] - [netdrv] r8169: align ASPM entry latency setting with vendor driver (Corinna Vinschen) [1680528] - [netdrv] r8169: Reinstate ASPM Support (Corinna Vinschen) [1680528] - [netdrv] r8169: Don't disable ASPM in the driver (Corinna Vinschen) [1680528] - [kernel] kernel/sched/psi.c: expose pressure metrics on root cgroup (Waiman Long) [1678388] - [kernel] psi: introduce psi monitor (Waiman Long) [1678388] - [spi] include/: refactor headers to allow kthread.h inclusion in psi_types.h (Waiman Long) [1678388] - [kernel] psi: track changed states (Waiman Long) [1678388] - [kernel] psi: split update_stats into parts (Waiman Long) [1678388] - [kernel] psi: rename psi fields in preparation for psi trigger addition (Waiman Long) [1678388] - [kernel] psi: make psi_enable static (Waiman Long) [1678388] - [kernel] psi: introduce state_mask to represent stalled psi states (Waiman Long) [1678388] - [kernel] kernel: cgroup: add poll file operation (Waiman Long) [1678388] - [fs] fs: kernfs: add poll file operation (Waiman Long) [1678388] - [documentation] psi: clarify the units used in pressure files (Waiman Long) [1678388] - [kernel] psi: avoid divide-by-zero crash inside virtual machines (Waiman Long) [1678388] - [init] psi: clarify the Kconfig text for the default-disable option (Waiman Long) [1678388] - [kernel] psi: fix aggregation idle shut-off (Waiman Long) [1678388] - [init] psi: fix reference to kernel commandline enable (Waiman Long) [1678388] - [kernel] psi: make disabling/enabling easier for vendor kernels (Waiman Long) [1678388] - [kernel] kernel/sched/psi.c: simplify cgroup_move_task() (Waiman Long) [1678388] - [kernel] psi: cgroup support (Waiman Long) [1678388] - [kernel] psi: pressure stall information for CPU, memory, and IO (Waiman Long) [1678388] - [kernel] sched: introduce this_rq_lock_irq() (Waiman Long) [1678388] - [kernel] sched: sched.h: make rq locking and clock functions available in stats.h (Waiman Long) [1678388] - [kernel] sched: loadavg: make calc_load_n() public (Waiman Long) [1678388] - [kernel] sched: loadavg: consolidate LOAD_INT, LOAD_FRAC, CALC_LOAD (Waiman Long) [1678388] - [kernel] delayacct: track delays from thrashing cache pages (Waiman Long) [1678388] - [mm] mm: workingset: tell cache transitions from workingset thrashing (Waiman Long) [1678388] - [mm] mm: workingset: don't drop refault information prematurely (Waiman Long) [1678388] - [scsi] scsi: ibmvfc: Add failed PRLI to cmd_status lookup array (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Byte swap status and error codes when logging (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Remove "failed" from logged errors (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Clean up transport events (Diego Domingos) [1665716] - [scsi] scsi: ibmvscsi: Don't use rc uninitialized in ibmvscsi_do_work (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: fix tripping of blk_mq_run_hw_queue WARN_ON (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: redo driver work thread to use enum action states (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: Wire up host_reset() in the driver's scsi_host_template (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: change strncpy+truncation to strlcpy (Gustavo Duarte) [1665715] - [fs] ext4: avoid panic during forced reboot due to aborted journal (Lukas Czerner) [1717831] - [fs] ext4: fix use-after-free in dx_release() (Lukas Czerner) [1717831] - [fs] ext4: fix data corruption caused by overlapping unaligned and aligned IO (Lukas Czerner) [1717831] - [fs] ext4: avoid drop reference to iloc.bh twice (Lukas Czerner) [1717831] - [nvme] nvme-tcp: mark NVMe/TCP as a technical preview (Chris Leech) [1696451] - [nvme] nvme-tcp: fix possible null deref on a timed out io queue connect (Chris Leech) [1696451] - [nvme] nvme-tcp: rename function to have nvme_tcp prefix (Chris Leech) [1696451] - [nvme] nvme-tcp: fix a NULL deref when an admin connect times out (Chris Leech) [1696451] - [nvme] nvmet-tcp: don't fail maxr2t greater than 1 (Chris Leech) [1696451] - [nvme] nvmet-tcp: implement C2HData SUCCESS optimization (Chris Leech) [1696451] - [nvme] nvme-tcp: fix an endianess miss-annotation (Chris Leech) [1696451] - [nvme] nvme-tcp: support C2HData with SUCCESS flag (Chris Leech) [1696451] - [nvme] nvme-tcp: use older iov_iter API to fix panic (Chris Leech) [1696451] - [nvme] nvmet: fix building bvec from sg list (Ming Lei) [1690287] - [nvme] nvmet: set loop queue's segment boundary mask as PAGE_SIZE - 1 (Ming Lei) [1690287] - [x86] x86/qspinlock: Fix compile error (Waiman Long) [1709451] - [kernel] locking/rwsem: Prevent unneeded warning during locking selftest (Waiman Long) [1709451] - [kernel] locking/rwsem: Enable lock event counting (Waiman Long) [1709451] - [kernel] locking/lock_events: Don't show pvqspinlock events on bare metal (Waiman Long) [1709451] - [kernel] locking/lock_events: Make lock_events available for all archs & other locks (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Introduce generic lockevent_*() counting APIs (Waiman Long) [1709451] - [kernel] locking/rwsem: Enhance DEBUG_RWSEMS_WARN_ON() macro (Waiman Long) [1709451] - [kernel] locking/rwsem: Add debug check for __down_read*() (Waiman Long) [1709451] - [kernel] locking/rwsem: Micro-optimize rwsem_try_read_lock_unqueued() (Waiman Long) [1709451] - [kernel] locking/rwsem: Move rwsem internal function declarations to rwsem-xadd.h (Waiman Long) [1709451] - [kernel] locking/rwsem: Move owner setting code from rwsem.c to rwsem.h (Waiman Long) [1709451] - [kernel] locking/rwsem: Relocate rwsem_down_read_failed() (Waiman Long) [1709451] - [kernel] locking/rwsem: Optimize down_read_trylock() (Waiman Long) [1709451] - [kernel] locking/rwsem: Remove rwsem-spinlock.c & use rwsem-xadd.c for all archs (Waiman Long) [1709451] - [x86] locking/rwsem: Remove arch specific rwsem files (Waiman Long) [1709451] - [kernel] locking/qspinlock: Remove unnecessary BUG_ON() call (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Track the no MCS node available case (Waiman Long) [1709451] - [kernel] locking/qspinlock: Handle > 4 slowpath nesting levels (Waiman Long) [1709451] - [kernel] locking/pvqspinlock: Extend node size when pvqspinlock is configured (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Count instances of nested lock slowpaths (Waiman Long) [1709451] - [kernel] locking/qspinlock, x86: Provide liveness guarantee (Waiman Long) [1709451] - [kernel] locking/qspinlock: Rework some comments (Waiman Long) [1709451] - [kernel] locking/qspinlock: Re-order code (Waiman Long) [1709451] - [x86] x86/headers: Fix -Wmissing-prototypes warning (Waiman Long) [1709451] - [x86] Revert "x86/refcount: Work around GCC inlining bug" (Waiman Long) [1709451] - [x86] x86/asm: 'Simplify' GEN_*_RMWcc() macros (Waiman Long) [1709451] - [x86] x86/refcount: Work around GCC inlining bug (Waiman Long) [1709451] - [lib] locking/refcounts: Include fewer headers in (Waiman Long) [1709451] - [media] media: stk1160: Set the vb2_queue lock before calling vb2_queue_init (Torez Smith) [1697664] - [usb] USB: typec: fsusb302: Drop empty set_current_limit implementation (Torez Smith) [1697664] - [usb] USB: mark expected switch fall-throughs (Torez Smith) [1697664] - [usb] USB: musb: mark expected switch fall-throughs (Torez Smith) [1697664] - [usb] usb: wusbcore: security: cast sizeof to int for comparison (Torez Smith) [1697664] - [usb] usb: typec: tcpm: Support for Alternate Modes (Torez Smith) [1697664] - [usb] usb: typec: pi3usb30532: Start using generic state values (Torez Smith) [1697664] - [usb] usb: typec: Add driver for DisplayPort alternate mode (Torez Smith) [1697664] - [usb] usb: typec: Bus type for alternate modes (Torez Smith) [1697664] - [usb] usb: typec: Register a device for every mode (Torez Smith) [1697664] - [usb] usb: typec: mux: Get the mux identifier from function parameter (Torez Smith) [1697664] - [usb] usb: update for tcpci drivers moving out of staging (Torez Smith) [1697664] - [netdrv] net: usb: Mark expected switch fall-throughs (Torez Smith) [1697664] - [media] media: tm6000: add error handling for dvb_register_adapter (Torez Smith) [1697664] - [usb] usb: typec: function for checking cable plug orientation (Torez Smith) [1697664] - [include] usb: pd: include kernel.h (Torez Smith) [1697664] - [staging] staging: typec: tcpci: move tcpci drivers out of staging (Torez Smith) [1697664] - [usb] typec: tcpm: add starting value for drp toggling (Torez Smith) [1697664] - [usb] usb: typec: tcpm: support get typec and pd config from device properties (Torez Smith) [1697664] - [usb] usb: typec: add API to get typec basic port power and data config (Torez Smith) [1697664] - [staging] usb: typec: add fwnode to tcpc (Torez Smith) [1697664] - [documentation] dt-bindings: usb: add documentation for typec port controller(TCPCI) (Torez Smith) [1697664] - [documentation] dt-bindings: connector: add properties for typec (Torez Smith) [1697664] - [usb] usb: typec: tps6598x: Remove VLA usage (Torez Smith) [1697664] - [usb] usb: cdc-wdm: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: cdc-wdm: don't enable interrupts in USB-giveback (Torez Smith) [1697664] - [usb] usb: legousbtower: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: ldusb: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: iowarrior: remove intr_idx_lock (Torez Smith) [1697664] - [usb] usb: adutux: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: wusbcore: remove excessive irqsave (Torez Smith) [1697664] - [usb] usb: usb-skeleton: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: usblp: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: usbfs: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: core: use irqsave() in sg_complete() complete callback (Torez Smith) [1697664] - [usb] usb: cdc-acm: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: host: ehci-npcm7xx: Fix some error codes in probe (Torez Smith) [1697664] - [media] media: cx231xx: fix RC_CORE dependency (Torez Smith) [1697664] - [usb] USB: serial: digi_acceleport: rename tty flag variable (Torez Smith) [1697664] - [usb] USB: serial: usb_wwan: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: ti_usb_3410_5052: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: symbolserial: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: sierra: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: sierra: fix potential deadlock at close (Torez Smith) [1697664] - [usb] USB: serial: quatech2: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: mos7840: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: mos7720: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: io_ti: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: io_edgeport: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: digi_acceleport: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: cyberjack: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: chipidea: tegra: Use aligned DMA on Tegra114/124 (Torez Smith) [1697664] - [documentation] dt-bindings: usb: new ehci-npcm7xx dt (Torez Smith) [1697664] - [usb] USB host: Add USB ehci support for nuvoton npcm7xx platform (Torez Smith) [1697664] - [usb] usb: cdc-acm: Decrement tty port's refcount if probe() fail (Torez Smith) [1697664] - [usb] USB: mon: use ktime_get_real_ts64 instead of getnstimeofday64 (Torez Smith) [1697664] - [usb] USB: xhci-hcd: Add get_resuming_ports method (Torez Smith) [1697664] - [usb] USB: ehci-hcd: Add get_resuming_ports method (Torez Smith) [1697664] - [usb] USB: Report wakeup events on root-hub ports (Torez Smith) [1697664] - [usb] USB: serial: cast sizeof() to int when comparing with error code (Torez Smith) [1697664] - [netdrv] net: drivers/net: Convert random_ether_addr to eth_random_addr (Torez Smith) [1697664] - [netdrv] net: usb: rtl8150: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: r8152: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: kaweth: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: hso: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: cdc-phonet: use irqsave() in USB's complete callback (Torez Smith) [1697664]- [net] selftests/tls: add test for sleeping even though there is data (Sabrina Dubroca) [1711821] - [net] tls: fix no wakeup on partial reads (Sabrina Dubroca) [1711821] - [net] selftests/tls: test for lowat overshoot with multiple records (Sabrina Dubroca) [1711821] - [net] tls: fix lowat calculation if some data came from previous record (Sabrina Dubroca) [1711821] - [net] tls: don't ignore netdev notifications if no TLS features (Sabrina Dubroca) [1711821] - [net] tls: fix state removal with feature flags off (Sabrina Dubroca) [1711821] - [net] tls: handle errors from padding_length() (Sabrina Dubroca) [1711821] - [net] tls: avoid NULL pointer deref on nskb->sk in fallback (Sabrina Dubroca) [1711821] - [net] tls: byte swap device req TCP seq no upon setting (Sabrina Dubroca) [1711821] - [net] tls: remove old exports of sk_destruct functions (Sabrina Dubroca) [1711821] - [net] tls: don't log errors every time offload can't proceed (Sabrina Dubroca) [1711821] - [net] tls: fix refcount adjustment in fallback (Sabrina Dubroca) [1711821] - [net] strparser: make it explicitly non-modular (Sabrina Dubroca) [1711821] - [net] strparser: partially revert "strparser: Call skb_unclone conditionally" (Sabrina Dubroca) [1711821] - [net] tls: fix the IV leaks (Sabrina Dubroca) [1711821] - [net] strparser: fix comment (Sabrina Dubroca) [1711821] - [net] tls: prevent false connection termination with offload (Sabrina Dubroca) [1711821] - [net] tls: Replace kfree_skb() with consume_skb() (Sabrina Dubroca) [1711821] - [net] strparser: fix a missing check for create_singlethread_workqueue (Sabrina Dubroca) [1711821] - [net] tls: Fix tls_device receive (Sabrina Dubroca) [1711821] - [net] tls: Fix mixing between async capable and async (Sabrina Dubroca) [1711821] - [net] tls: Return type of non-data records retrieved using MSG_PEEK in recvmsg (Sabrina Dubroca) [1711821] - [net] selftest/tls: Add test to verify received 'type' of non-data record (Sabrina Dubroca) [1711821] - [net] tls: Move protocol constants from cipher context to tls context (Sabrina Dubroca) [1711821] - [net] tls: Do not use async crypto for non-data records (Sabrina Dubroca) [1711821] - [net] tls: Disable async decrytion for tls1.3 (Sabrina Dubroca) [1711821] - [net] tls: Set async_capable for tls zerocopy only if we see EINPROGRESS (Sabrina Dubroca) [1711821] - [net] tls: Add tests for TLS 1.3 (Sabrina Dubroca) [1711821] - [net] tls: Add tls 1.3 support (Sabrina Dubroca) [1711821] - [net] tls: Refactor control message handling on recv (Sabrina Dubroca) [1711821] - [net] tls: Refactor tls aad space size calculation (Sabrina Dubroca) [1711821] - [net] tls: Support 256 bit keys (Sabrina Dubroca) [1711821] - [net] tls: free ctx in sock destruct (Sabrina Dubroca) [1711821] - [net] tls: build_protos moved to common routine (Sabrina Dubroca) [1711821] - [net] tls: Fix recvmsg() to be able to peek across multiple records (Sabrina Dubroca) [1711821] - [net] tls: Make function tls_sw_do_sendpage static (Sabrina Dubroca) [1711821] - [net] tls: remove unused function tls_sw_sendpage_locked (Sabrina Dubroca) [1711821] - [net] Optimize sk_msg_clone() by data merge to end dst sg entry (Sabrina Dubroca) [1711821] - [net] selftests/tls: Fix recv partial/large_buff test cases (Sabrina Dubroca) [1711821] - [net] tls: allocate tls context using GFP_ATOMIC (Sabrina Dubroca) [1711821] - [net] tls: Init routines in create_ctx (Sabrina Dubroca) [1711821] - [net] selftests/tls: Fix recv(MSG_PEEK) & splice() test cases (Sabrina Dubroca) [1711821] - [net] tls: fix currently broken MSG_PEEK behavior (Sabrina Dubroca) [1711821] - [net] selftests/tls: Add MSG_WAITALL in recv() syscall (Sabrina Dubroca) [1711821] - [net] tls: async support causes out-of-bounds access in crypto APIs (Sabrina Dubroca) [1711821] - [net] selftests/tls: Add test for recv(PEEK) spanning across multiple records (Sabrina Dubroca) [1711821] - [net] tls: Add support for async decryption of tls records (Sabrina Dubroca) [1711821] - [net] tls: Calculate nsg for zerocopy path without skb_cow_data (Sabrina Dubroca) [1711821] - [net] strparser: remove redundant variable 'rd_desc' (Sabrina Dubroca) [1711821] - [net] tls: Use kmemdup to simplify the code (Sabrina Dubroca) [1711821] - [net] tls: Use socket data_ready callback on record availability (Sabrina Dubroca) [1711821] - [net] selftests: tls: add selftests for TLS sockets (Sabrina Dubroca) [1711821] - [net] strparser: Call skb_unclone conditionally (Sabrina Dubroca) [1711821] - [net] tls: Remove VLA usage on nonce (Sabrina Dubroca) [1711821] - [net] tls: Removed unused variable (Sabrina Dubroca) [1711821] - [netdrv] veth: use generic helper to report timestamping info (Jiri Benc) [1718938] - [netdrv] veth: Fix -Wformat-truncation (Jiri Benc) [1718938] - [netdrv] veth: Mark expected switch fall-throughs (Jiri Benc) [1718938] - [net] Add extack argument to rtnl_create_link (Jiri Benc) [1718938] - [netdrv] veth: Add ethtool statistics support for XDP (Jiri Benc) [1718938] - [netdrv] veth: Account for XDP packet statistics on rx side (Jiri Benc) [1718938] - [netdrv] veth: Account for packet drops in ndo_xdp_xmit (Jiri Benc) [1718938] - [netdrv] veth: rename pcpu_vstats as pcpu_lstats (Jiri Benc) [1718938] - [netdrv] net: move definition of pcpu_lstats to header file (Jiri Benc) [1718938] - [netdrv] veth: add software timestamping (Jiri Benc) [1718938] - [net] tcp: tcp_grow_window() needs to respect tcp_space() (Marcelo Leitner) [1718344] - [net] tcp: fix a potential NULL pointer dereference in tcp_sk_exit (Marcelo Leitner) [1718344] - [net] tcp: do not use ipv6 header for ipv4 flow (Marcelo Leitner) [1718344] - [net] tcp: Don't access TCP_SKB_CB before initializing it (Marcelo Leitner) [1718344] - [net] tcp: do not report TCP_CM_INQ of 0 for closed connections (Marcelo Leitner) [1718344] - [net] tcp: clear icsk_backoff in tcp_write_queue_purge() (Marcelo Leitner) [1718344] - [net] tcp: allow MSG_ZEROCOPY transmission also in CLOSE_WAIT state (Marcelo Leitner) [1718344] - [net] tcp: change txhash on SYN-data timeout (Marcelo Leitner) [1718344] - [net] tcp: lack of available data can also cause TSO defer (Marcelo Leitner) [1718344] - [net] tcp: fix NULL ref in tail loss probe (Marcelo Leitner) [1718344] - [net] tcp: Do not underestimate rwnd_limited (Marcelo Leitner) [1718344] - [net] tcp: defer SACK compression after DupThresh (Marcelo Leitner) [1718344] - [net] tcp: do not release socket ownership in tcp_close() (Marcelo Leitner) [1718344] - [net] tcp: Fix SOF_TIMESTAMPING_RX_HARDWARE to use the latest timestamp during TCP coalescing (Marcelo Leitner) [1718344] - [net] inet: make sure to grab rcu_read_lock before using ireq->ireq_opt (Marcelo Leitner) [1718344] - [net] tcp/dccp: fix lockdep issue when SYN is backlogged (Marcelo Leitner) [1718344] - [net] xfrm4: Fix uninitialized memory read in _decode_session4 (Sabrina Dubroca) [1718812] - [net] esp4: add length check for UDP encapsulation (Sabrina Dubroca) [1718812] - [net] xfrm: clean up xfrm protocol checks (Sabrina Dubroca) [1718812] - [net] xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module (Sabrina Dubroca) [1718812] - [net] xfrm: Reset secpath in xfrm failure (Sabrina Dubroca) [1718812] - [net] xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink (Sabrina Dubroca) [1718812] - [net] xfrm: destroy xfrm_state synchronously on net exit path (Sabrina Dubroca) [1718812] - [net] esp: Skip TX bytes accounting when sending from a request socket (Sabrina Dubroca) [1718812] - [net] xfrm: refine validation of template and selector families (Sabrina Dubroca) [1718812] - [net] xfrm: policy: increment xfrm_hash_generation on hash rebuild (Sabrina Dubroca) [1718812] - [net] xfrm6_tunnel: Fix spi check in __xfrm6_tunnel_alloc_spi (Sabrina Dubroca) [1718812] - [net] xfrm_user: fix freeing of xfrm states on acquire (Sabrina Dubroca) [1718812] - [net] xfrm: Fix NULL pointer dereference in xfrm_input when skb_dst_force clears the dst_entry (Sabrina Dubroca) [1718812] - [net] xfrm: Fix error return code in xfrm_output_one() (Sabrina Dubroca) [1718812] - [net] vti4: eliminated some duplicate code (Guillaume Nault) [1718443] - [net] vti4: removed duplicate log message (Guillaume Nault) [1718443] - [net] vti4: ipip tunnel deregistration fixes (Guillaume Nault) [1718443] - [net] vti4: Fix a ipip packet processing bug in 'IPCOMP' virtual tunnel (Guillaume Nault) [1718443] - [net] fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv (Guillaume Nault) [1718443] - [netdrv] vxlan: test dev->flags & IFF_UP before calling gro_cells_receive() (Guillaume Nault) [1718443] - [netdrv] vxlan: test dev->flags & IFF_UP before calling netif_rx() (Guillaume Nault) [1718443] - [net] devlink: turn devlink into a built-in (Petr Oros) [1717458] - [net] ipv6: fix EFAULT on sendto with icmpv6 and hdrincl (Stefano Brivio) [1718503] - [net] ipv6: use READ_ONCE() for inet->hdrincl as in ipv4 (Stefano Brivio) [1718503] - [net] ipv6: Fix redirect with VRF (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a raw socket to an address (Stefano Brivio) [1718503] - [net] ipv6: prevent possible fib6 leaks (Stefano Brivio) [1718503] - [net] vrf: sit mtu should not be updated when vrf netdev is the link (Stefano Brivio) [1718503] - [net] ipv6: A few fixes on dereferencing rt->from (Stefano Brivio) [1718503] - [tools] selftests: fib_rule_tests: Fix icmp proto with ipv6 (Stefano Brivio) [1718503] - [net] ipv6: fix races in ip6_dst_destroy() (Stefano Brivio) [1718503] - [net] ipv6/flowlabel: wait rcu grace period before put_pid() (Stefano Brivio) [1718503] - [net] ipv6: invert flowlabel sharing check in process and user mode (Stefano Brivio) [1718503] - [net] route: Avoid crash from dereferencing NULL rt->from (Stefano Brivio) [1718503] - [net] udpv6: Check address length before reading address family (Stefano Brivio) [1718503] - [net] ip6_gre: fix possible use-after-free in ip6erspan_rcv (Stefano Brivio) [1718503] - [net] ip6_gre: remove gre_hdr_len from ip6erspan_rcv (Stefano Brivio) [1718503] - [net] ipv6: Fix dangling pointer when ipv6 fragment (Stefano Brivio) [1718503] - [net] ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type (Stefano Brivio) [1718503] - [net] inet: switch IP ID generator to siphash (Stefano Brivio) [1718503] - [net] sit: fix UBSAN Undefined behaviour in check_6rd (Stefano Brivio) [1718503] - [net] ip6mr: Do not call __IP6_INC_STATS() from preemptible context (Stefano Brivio) [1718503] - [net] sit: fix memory leak in sit_init_net() (Stefano Brivio) [1718503] - [net] ipv4: Add ICMPv6 support when parse route ipproto (Stefano Brivio) [1718503] - [net] ipv6: Return error for RTA_VIA attribute (Stefano Brivio) [1718503] - [net] Set rtm_table to RT_TABLE_COMPAT for ipv6 for tables > 255 (Stefano Brivio) [1718503] - [net] ip6_gre: do not report erspan_ver for ip6gre or ip6gretap (Stefano Brivio) [1718503] - [net] ipv6: route: enforce RCU protection in rt6_update_exception_stamp_rt() (Stefano Brivio) [1718503] - [net] ipv6: route: enforce RCU protection in ip6_route_check_nh_onlink() (Stefano Brivio) [1718503] - [net] ipv6: propagate genlmsg_reply return code (Stefano Brivio) [1718503] - [net] fix IPv6 prefix route residue (Stefano Brivio) [1718503] - [net] ip6mr: Fix notifiers call on mroute_clean_tables() (Stefano Brivio) [1718503] - [net] af_packet: fix raw sockets over 6in4 tunnel (Stefano Brivio) [1718503] - [net] ip6_gre: fix tunnel list corruption for x-netns (Stefano Brivio) [1718503] - [net] ipv6: fix kernel-infoleak in ipv6_local_error() (Stefano Brivio) [1718503] - [net] ip: on queued skb use skb_header_pointer instead of pskb_may_pull (Stefano Brivio) [1718503] - [net] ipv4: fix use-after-free in ip_cmsg_recv_dstaddr() (Stefano Brivio) [1718503] - [net] ipv6: Take rcu_read_lock in __inet6_bind for mapped addresses (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a socket to a v4 mapped address (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a socket to an address (Stefano Brivio) [1718503] - [net] ip: validate header length on virtual device xmit (Stefano Brivio) [1718503] - [net] ipv6: Fix a test against 'ipv6_find_idev()' return value (Stefano Brivio) [1718503] - [net] ipv6: tunnels: fix two use-after-free (Stefano Brivio) [1718503] - [net] ipv6: add missing tx timestamping on IPPROTO_RAW (Stefano Brivio) [1718503] - [net] clear skb->tstamp in forwarding paths (Stefano Brivio) [1718503] - [net] ipv6: sr: properly initialize flowi6 prior passing to ip6_route_output (Stefano Brivio) [1718503] - [net] always initialize pagedlen (Stefano Brivio) [1718503] - [net] ipv6: Fix PMTU updates for UDP/raw sockets in presence of VRF (Stefano Brivio) [1718503] - [net] ipv6: gro: do not use slow memcmp() in ipv6_gro_receive() (Stefano Brivio) [1718503] - [net] xfrm: fix out-of-bounds packet access (Stefano Brivio) [1718503] - [net] ipv6: take rcu lock in rawv6_send_hdrinc() (Stefano Brivio) [1718503] - [net] ip6_tunnel: be careful when accessing the inner header (Stefano Brivio) [1718503] - [net] revert "ipv6: fix double refcount of fib6_metrics" (Stefano Brivio) [1718503] - [net] ipv6: fix memory leak on dst->_metrics (Stefano Brivio) [1718503] - [net] ipv6: fix cleanup ordering for ip6_mr failure (Stefano Brivio) [1718503] - [net] ipv6: fix cleanup ordering for pingv6 registration (Stefano Brivio) [1718503] - [net] ip6_tunnel: collect_md xmit: Use ip_tunnel_key's provided src address (Stefano Brivio) [1718503] - [net] ipv6: fix addrconf_sysctl_addr_gen_mode (Stefano Brivio) [1718503] - [net] ipv6: don't reinitialize ndev->cnf.addr_gen_mode on new inet6_dev (Stefano Brivio) [1718503] - [net] ipv6: reserve room for IFLA_INET6_ADDR_GEN_MODE (Stefano Brivio) [1718503] - [net] ipv6: propagate net.ipv6.conf.all.addr_gen_mode to devices (Stefano Brivio) [1718503] - [net] openvswitch: check for null pointer return from nla_nest_start_noflag (Stefano Brivio) [1718408] - [net] openvswitch: add seqadj extension when NAT is used (Stefano Brivio) [1718408] - [net] netfilter: Replace spin_is_locked() with lockdep (Stefano Brivio) [1718392] - [net] netfilter: ipset: do not call ipset_nest_end after nla_nest_cancel (Stefano Brivio) [1718392] - [net] netfilter: ipset: Fix calling ip_set() macro at dumping (Stefano Brivio) [1718392] - [include] netfilter: ipset: Correct rcu_dereference() call in ip_set_put_comment() (Stefano Brivio) [1718392] - [net] netfilter: ipset: fix ip_set_list allocation failure (Stefano Brivio) [1718392] - [net] netfilter: ipset: Make invalid MAC address checks consistent (Stefano Brivio) [1649087] - [net] netfilter: ipset: Allow matching on destination MAC address for mac and ipmac sets (Stefano Brivio) [1649087] - [netdrv] rocker: Handle SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1717892] - [net] switchdev: Add SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1717892] - [netdrv] rocker: Add missing break for PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [net] bridge: Stop calling switchdev_port_attr_get() (Ivan Vecera) [1717892] - [netdrv] rocker: Check Handle PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [netdrv] mlxsw: spectrum: Handle PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [include] net: switchdev: Add PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [netdrv] rocker: Remove port_attr_bridge_flags_get assignment (Ivan Vecera) [1717892] - [netdrv] rocker: Remove getting PORT_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [net] pktgen: do not sleep with the thread lock held (Paolo Abeni) [1715575] - [include] ipv6: fix the check before getting the cookie in rt6_get_cookie (Xin Long) [1709166] - [net] ipv4: not do cache for local delivery if bc_forwarding is enabled (Xin Long) [1712657] - [net] sctp: avoid running the sctp state machine recursively (Xin Long) [1717316] - [netdrv] netdevsim: use skb_sec_path helper (Hangbin Liu) [1711810] - [netdrv] netdevsim: convert to DEFINE_SHOW_ATTRIBUTE (Hangbin Liu) [1711810] - [netdrv] netdevsim: make debug dirs' dentries static (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: use internal netns switch for ip commands (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: add testcases for vxlan flag sets (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: Add a test case for multipath route get (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink.sh: add testcase for neigh get (Hangbin Liu) [1711810] - [tools] selftests: net: rtnetlink.sh: add fdb get test (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink.sh explicitly requires bash (Hangbin Liu) [1711810] - [net] udp: with udp_segment release on error path (Paolo Abeni) [1718079] - [net] ipv6: explicitly initialize udp6_addr in udp_sock_create6() (Paolo Abeni) [1718079] - [netdrv] geneve: Don't assume linear buffers in vxlan_err_lookup() (Stefano Brivio) [1652222] - [netdrv] vxlan: Don't assume linear buffers in vxlan_err_lookup() (Stefano Brivio) [1652222] - [netdrv] geneve: Initialize addr6 with memset (Stefano Brivio) [1652222] - [net] ip_tunnel: don't force DF when MTU is locked (Stefano Brivio) [1652222] - [netdrv] geneve: ICMP error lookup handler (Stefano Brivio) [1652222] - [netdrv] vxlan: ICMP error lookup handler (Stefano Brivio) [1652222] - [net] udp: Handle ICMP errors for tunnels with same destination port on both endpoints (Stefano Brivio) [1652222] - [net] udp: gro behind static key (Stefano Brivio) [1652222] - [net] bpf: in __bpf_redirect_no_mac pull mac only if present (Jiri Benc) [1687471] - [net] lwt_bpf: remove unnecessary rcu_read_lock in run_lwt_bpf (Jiri Benc) [1687471] - [net] bpf: add End.DT6 action to bpf_lwt_seg6_action helper (Jiri Benc) [1687471] - [net] bpf: fix out-of-bounds read in __bpf_skc_lookup (Jiri Benc) [1687459] - [net] bpf: Check sk_fullsock() before returning from bpf_sk_lookup() (Jiri Benc) [1687459] - [net] flow_dissector: disable preemption around BPF calls (Jiri Benc) [1687459] - [net] bpf: sockmap, only stop/flush strp if it was enabled at some point (Jiri Benc) [1687459] - [net] bpf: Stop the psock parser before canceling its work (Jiri Benc) [1687459] - [net] bpf: only test gso type on gso packets (Jiri Benc) [1687459] - [tools] selftests: add dummy xdp test helper (Jiri Benc) [1687459] - [net] filter: mark expected switch fall-through (Jiri Benc) [1687459] - [documentation] Update references to netdev-FAQ (Jiri Benc) [1687459] - [net] bpfilter: remove trailing newline (Jiri Benc) [1687459] - [net] core: filter: mark expected switch fall-through (Jiri Benc) [1687459] - [net] revert "xsk: simplify AF_XDP socket teardown" (Jiri Benc) [1687459] - [net] bpf/test_run: fix unkillable BPF_PROG_TEST_RUN (Jiri Benc) [1687459] - [net] xsk: share the mmap_sem for page pinning (Jiri Benc) [1687459] - [net] xsk: add missing smp_rmb() in xsk_mmap (Jiri Benc) [1687459] - [net] bpf: only adjust gso_size on bytestream protocols (Jiri Benc) [1687459] - [net] sk_msg: Always cancel strp work before freeing the psock (Jiri Benc) [1687459] - [net] bpf: sock recvbuff must be limited by rmem_max in bpf_setsockopt() (Jiri Benc) [1687459] - [net] bpf: fix SO_MAX_PACING_RATE to support TCP internal pacing (Jiri Benc) [1687459] - [net] bpf: bpf_setsockopt: reset sock dst on SO_MARK changes (Jiri Benc) [1687459] - [net] bpf: correctly set initial window on active Fast Open sender (Jiri Benc) [1687459] - [net] xsk: simplify AF_XDP socket teardown (Jiri Benc) [1687459] - [net] bpf: fix doc of bpf_skb_adjust_room() in uapi (Jiri Benc) [1687459] - [net] bpf: do not blindly change rlimit in reuseport net selftest (Jiri Benc) [1687459] - [net] xsk: proper AF_XDP socket teardown ordering (Jiri Benc) [1687459] - [net] bpf: typo fix in Documentation/networking/af_xdp.rst (Jiri Benc) [1687459] - [net] xdp: split code for map vs non-map redirect (Jiri Benc) [1687459] - [net] xdp: explicit inline __xdp_map_lookup_elem (Jiri Benc) [1687459] - [net] xdp: unlikely instrumentation for xdp map redirect (Jiri Benc) [1687459] - [net] xdp: remove redundant variable 'headroom' (Jiri Benc) [1687459] - [net] xsk: include XDP meta data in AF_XDP frames (Jiri Benc) [1687459] - [net] bpf: Enable BPF_PROG_TYPE_SK_REUSEPORT bpf prog in reuseport selection (Jiri Benc) [1687459] - [net] revert "xdp: add NULL pointer check in __xdp_return()" (Jiri Benc) [1687459] - [lib] test_rhashtable: Make test_insert_dup() allocate its hash table dynamically (Jiri Benc) [1717066] - [lib] test_rhashtable: remove semaphore usage (Jiri Benc) [1717066] - [lib] rhashtable: detect when object movement between tables might have invalidated a lookup (Jiri Benc) [1717066] - [lib] rhashtable: remove duplicated include from rhashtable.c (Jiri Benc) [1717066] - [lib] rhashtable: clean up dereference of ->future_tbl (Jiri Benc) [1717066] - [lib] rhashtable: use cmpxchg() to protect ->future_tbl (Jiri Benc) [1717066] - [lib] rhashtable: simplify nested_table_alloc() and rht_bucket_nested_insert() (Jiri Benc) [1717066] - [lib] rhashtable: simplify INIT_RHT_NULLS_HEAD() (Jiri Benc) [1717066] - [lib] rhashtable: remove nulls_base and related code (Jiri Benc) [1717066] - [lib] rhashtable: split rhashtable.h (Jiri Benc) [1717066] - [lib] rhashtable: silence RCU warning in rhashtable_test (Jiri Benc) [1717066] - [net] devlink: publish params only after driver init is done (Ivan Vecera) [1715929] - [net] iptunnel: NULL pointer deref for ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_gre: Refactor collect metatdata mode tunnel xmit to ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Fix route fl4 init in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Add tnl_update_pmtu in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Add ip tunnel dst_cache in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] vlan: Mark expected switch fall-through (Hangbin Liu) [1664359] - [net] vlan: disable SIOCSHWTSTAMP in container (Hangbin Liu) [1664359] - [netdrv] macvlan: Mark expected switch fall-through (Hangbin Liu) [1664359] - [netdrv] macvlan: disable SIOCSHWTSTAMP in container (Hangbin Liu) [1664359] - [netdrv] macvlan: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to real device (Hangbin Liu) [1664359] - [net] ethtool: add compat for flash update (Petr Oros) [1708339] - [net] devlink: add flash update command (Petr Oros) [1708339] - [net] devlink: Fix list access without lock while reading region (Petr Oros) [1708339] - [net] devlink: Return right error code in case of errors for region read (Petr Oros) [1708339] - [net] devlink: use direct return of genlmsg_reply (Petr Oros) [1708339] - [net] devlink: Rename devlink health attributes (Petr Oros) [1709874] - [net] devlink: Modify reply of DEVLINK_CMD_HEALTH_REPORTER_GET (Petr Oros) [1709874] - [net] devlink: Update reporter state to error even if recover aborted (Petr Oros) [1709874] - [documentation] devlink: Add Documentation/networking/devlink-health.txt (Petr Oros) [1709874] - [net] devlink: Add health dump {get, clear} commands (Petr Oros) [1709874] - [net] devlink: Add health diagnose command (Petr Oros) [1709874] - [net] devlink: Add health recover command (Petr Oros) [1709874] - [net] devlink: Add health set command (Petr Oros) [1709874] - [net] devlink: Add health get command (Petr Oros) [1709874] - [net] devlink: Add health report functionality (Petr Oros) [1709874] - [net] devlink: Add health reporter create/destroy functionality (Petr Oros) [1709874] - [net] devlink: Add devlink formatted message (fmsg) API (Petr Oros) [1709874] - [net] devlink: add hardware errors tracing facility (Petr Oros) [1709874] - [net] cnb: devlink: report cell size of shared buffers (Petr Oros) [1708348] - [net] devlink: skip info_get op call if it is not defined in dumpit (Petr Oros) [1708342] - [include] devlink: add a generic board.manufacture version name (Petr Oros) [1708342] - [net] devlink: don't allocate attrs on the stack (Petr Oros) [1708342] - [net] devlink: fix condition for compat device info (Petr Oros) [1708342] - [net] ethtool: add compat for devlink info (Petr Oros) [1708342] - [include] devlink: add generic info version names (Petr Oros) [1708342] - [net] devlink: add version reporting to devlink info API (Petr Oros) [1708342] - [net] devlink: add device information API (Petr Oros) [1708342] - [net] devlink: Add devlink notifications support for port params (Petr Oros) [1710228] - [net] devlink: Add support for driverinit set value for devlink_port (Petr Oros) [1710228] - [net] devlink: Add support for driverinit get value for devlink_port (Petr Oros) [1710228] - [net] devlink: Add port param set command (Petr Oros) [1710228] - [net] devlink: Add port param get command (Petr Oros) [1710228] - [net] devlink: Add devlink_param for port register and unregister (Petr Oros) [1710228] - [net] ipv6: properly check return value in inet6_dump_all() (Petr Oros) [1714656] - [net] Don't return invalid table id error when dumping all families (Petr Oros) [1714656] - [net] ipmr_base: Do not reset index in mr_table_dump (Petr Oros) [1714656] - [net] ipv6: Fix dump of specific table with strict checking (Petr Oros) [1714656] - [net] ipv4: avoid compile error in fib_info_nh_uses_dev (Petr Oros) [1714656] - [net] ipv4: Bail early if user only wants prefix entries (Petr Oros) [1714656] - [net] ipv6: Bail early if user only wants cloned entries (Petr Oros) [1714656] - [net] mpls: Handle kernel side filtering of route dumps (Petr Oros) [1714656] - [net] Enable kernel side filtering of route dumps (Petr Oros) [1714656] - [net] Plumb support for filtering ipv4 and ipv6 multicast route dumps (Petr Oros) [1714656] - [net] ipmr: Refactor mr_rtm_dumproute (Petr Oros) [1714656] - [net] mpls: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] ipv6: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] netfilter: nft_fib: Convert nft_fib4_eval to new dev helper (Petr Oros) [1714656] - [net] netfilter: rpfilter: Convert rpfilter_lookup_reverse to new dev helper (Petr Oros) [1714656] - [net] ipv4: Move device validation to helper (Petr Oros) [1714656] - [net] ipv4: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] Add struct for fib dump filter (Petr Oros) [1714656] - [lib] iov_iter: Fix build error without CONFIG_CRYPTO (Ivan Vecera) [1714213] - [net] datagram: introduce skb_copy_and_hash_datagram_iter helper (Ivan Vecera) [1714213] - [lib] iov_iter: introduce hash_and_copy_to_iter helper (Ivan Vecera) [1714213] - [net] datagram: consolidate datagram copy to iter helpers (Ivan Vecera) [1714213] - [lib] iov_iter: pass void csum pointer to csum_and_copy_to_iter (Ivan Vecera) [1714213] - [net] datagram: open-code copy_page_to_iter (Ivan Vecera) [1714213] - [include] net: enable mpls_ptr in net_device (Hangbin Liu) [1350011] - [net] netfilter: ipset: actually allow allowable CIDR 0 in hash:net, port, net (Stefano Brivio) [1680512] - [net] netfilter: ipset: fix ip_set_byindex function (Stefano Brivio) [1680512] - [net] netfilter: ipset: Introduction of new commands and protocol version 7 (Stefano Brivio) [1680512] - [net] ipv6: don't return positive numbers when nothing was dumped (Petr Oros) [1700306] - [net] rtnetlink: restore handling of dumpit return value in rtnl_dump_all() (Petr Oros) [1700306] - [net] netlink: fixup regression in RTM_GETADDR (Petr Oros) [1700306] - [net] {ipv4, ipv6}: Do not put target net if input nsid is invalid (Petr Oros) [1700306] - [net] rtnl_dump_all needs to propagate error from dumpit function (Petr Oros) [1700306] - [net] rtnetlink: Move ifm in valid_fdb_dump_legacy to closer to use (Petr Oros) [1700306] - [net] neighbor: NTF_PROXY is a valid ndm_flag for a dump request (Petr Oros) [1700306] - [net] mpls: Implement handler for strict data checking on dumps (Petr Oros) [1700306] - [net] rtnetlink: Update comment in rtnl_stats_dump regarding strict data checking (Petr Oros) [1700306] - [net] ipv6: Put target net when address dump fails due to bad attributes (Petr Oros) [1700306] - [net] ipv4: Put target net when address dump fails due to bad attributes (Petr Oros) [1700306] - [tools] headers uapi: Update linux/netlink.h header copy (Petr Oros) [1700306] - [net] neigh: fix NULL deref in pneigh_dump_table() (Petr Oros) [1700306] - [net] ipv6: Add support for dumping addresses for a specific device (Petr Oros) [1700306] - [net] ipv4: Add support for dumping addresses for a specific device (Petr Oros) [1700306] - [net] ipv6: Remove ip_idx arg to in6_dump_addrs (Petr Oros) [1700306] - [net] ipv4: Move loop over addresses on a device into in_dev_dump_addr (Petr Oros) [1700306] - [net] netlink: Add answer_flags to netlink_callback (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_fdb_dump for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Move input checking for rtnl_fdb_dump to helper (Petr Oros) [1700306] - [net] bridge: Update br_mdb_dump for strict data checking (Petr Oros) [1700306] - [net] Update netconf dump handlers for strict data checking (Petr Oros) [1700306] - [net] ipv6: Update ip6addrlbl_dump for strict data checking (Petr Oros) [1700306] - [net] fib_rules: Update fib_nl_dumprule for strict data checking (Petr Oros) [1700306] - [net] namespace: Update rtnl_net_dumpid for strict data checking (Petr Oros) [1700306] - [net] neighbor: Update neightbl_dump_info for strict data checking (Petr Oros) [1700306] - [net] neighbor: Update neigh_dump_info for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update fib dumps for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update ipmr_rtm_dumplink for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update inet6_dump_ifinfo for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_stats_dump for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_bridge_getlink for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_dump_ifinfo for strict data checking (Petr Oros) [1700306] - [net] ipv6: Update inet6_dump_addr for strict data checking (Petr Oros) [1700306] - [net] ipv4: Update inet_dump_ifaddr for strict data checking (Petr Oros) [1700306] - [net] netlink: Add new socket option to enable strict checking on dumps (Petr Oros) [1700306] - [net] ipv6: Refactor address dump to push inet6_fill_args to in6_dump_addrs (Petr Oros) [1700306] - [lib] netlink: Add strict version of nlmsg_parse and nla_parse (Petr Oros) [1700306] - [net] Add extack to nlmsg_parse (Petr Oros) [1700306] - [include] netlink: Add extack message to nlmsg_parse for invalid header length (Petr Oros) [1700306] - [net] netlink: Pass extack to dump handlers (Petr Oros) [1700306] - [net] neigh: Extend dump filter to proxy neighbor dumps (Petr Oros) [1700306] - [lib] netlink: add nested array policy validation (Petr Oros) [1700306] - [lib] netlink: allow NLA_NESTED to specify nested policy to validate (Petr Oros) [1700306] - [lib] netlink: move extack setting into validate_nla() (Petr Oros) [1700306] - [lib] netlink: make validation_data const (Petr Oros) [1700306] - [lib] netlink: remove NLA_NESTED_COMPAT (Petr Oros) [1700306] - [lib] netlink: add ethernet address policy types (Petr Oros) [1700306] - [net] sched: cls_u32: add res to offload information (Ivan Vecera) [1711377] - [net] sched: gred: support reporting stats from offloads (Ivan Vecera) [1711377] - [net] sched: gred: add basic Qdisc offload (Ivan Vecera) [1711377] - [net] sched: gred: allow manipulating per-DP RED flags (Ivan Vecera) [1711377] - [net] sched: gred: store red flags per virtual queue (Ivan Vecera) [1711377] - [net] sched: gred: provide a better structured dump and expose stats (Ivan Vecera) [1711377] - [net] sched: gred: store bytesin as a 64 bit value (Ivan Vecera) [1711377] - [net] sched: gred: use extack to provide more details on configuration errors (Ivan Vecera) [1711377] - [net] sched: gred: pass extack to nla_parse_nested() (Ivan Vecera) [1711377] - [net] sched: gred: separate error and non-error path in gred_change() (Ivan Vecera) [1711377] - [net] netlink: add NLA_REJECT policy type (Ivan Vecera) [1711377] - [lib] netlink: Return extack message if attribute validation fails (Ivan Vecera) [1711377] - [net] sched: red: notify drivers about RED's limit parameter (Ivan Vecera) [1711039] - [net] sched: mq: offload a graft notification (Ivan Vecera) [1711039] - [net] sched: red: offload a graft notification (Ivan Vecera) [1711039] - [net] sched: provide notification for graft on root (Ivan Vecera) [1711039] - [net] sched: prio: delay destroying child qdiscs on change (Ivan Vecera) [1711039] - [net] sched: red: delay destroying child qdisc on replace (Ivan Vecera) [1711039] - [net] sched: refactor grafting Qdiscs with a parent (Ivan Vecera) [1711039] - [net] sched: add an offload graft helper (Ivan Vecera) [1711039] - [net] sched: set TCQ_F_OFFLOADED flag for MQ (Ivan Vecera) [1711039] - [net] sched: red: remove unnecessary red_dump_offload_stats parameter (Ivan Vecera) [1711039] - [net] sched: add an offload dump helper (Ivan Vecera) [1711039] - [netdrv] netdevsim: Implement ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [netdrv] rocker: Implement ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [net] Introduce ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [net] use indirect calls helpers at early demux stage (Paolo Abeni) [1700747] - [net] use indirect calls helpers for L3 handler hooks (Paolo Abeni) [1700747] - [net] use indirect calls helpers at the socket layer (Paolo Abeni) [1700747] - [net] use indirect calls helpers for ptype hook (Paolo Abeni) [1700747] - [net] add documentation to socket.c (Paolo Abeni) [1700747] - [net] udp: use indirect call wrappers for GRO socket lookup (Paolo Abeni) [1700747] - [net] use indirect call wrappers at GRO transport layer (Paolo Abeni) [1700747] - [net] use indirect call wrappers at GRO network layer (Paolo Abeni) [1700747] - [net] indirect call wrappers: helpers to speed-up indirect calls of builtin (Paolo Abeni) [1700747] - [powerpc] powerpc: bpf: Fix generation of load/store DW instructions (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: propagate liveness on all frames (Yauheni Kaliuta) [1700846] - [net] bpf: do not restore dst_reg when cur_state is freed (Yauheni Kaliuta) [1700846] - [tools] tools lib bpf: Fix the build by adding a missing stdarg.h include (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: fix version info and add it to shared object (Yauheni Kaliuta) [1700846] - [tools] btf: fix bug with resolving STRUCT/UNION into corresponding FWD (Yauheni Kaliuta) [1700846] - [tools] tools/libbpf: signedness bug in btf_dedup_ref_type() (Yauheni Kaliuta) [1700846] - [tools] libbpf: fix libbpf_print (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: simplify libbpf API function libbpf_set_print() (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: move set_max_rlimit() before __bpf_object__open_xattr() (Yauheni Kaliuta) [1700846] - [include] bpf: promote bpf_perf_event.h to mandatory UAPI header (Yauheni Kaliuta) [1700846] - [net] bpf: Avoid unnecessary instruction in convert_bpf_ld_abs() (Yauheni Kaliuta) [1700846] - [kernel] bpf: fix check of allowed specifiers in bpf_trace_printk (Yauheni Kaliuta) [1700846] - [documentation] bpf, doc: Document Jump X addressing mode (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: fix license for a compat header file (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Capitalise document heading (Yauheni Kaliuta) [1700846] - [documentation] docs: Add bpf/index to top level index (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Add toctree to index (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Rename README.rst to index.rst (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip verifier tests for unsupported map types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip verifier tests for unsupported program types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip sockmap in test_maps if kernel doesn't have support (Yauheni Kaliuta) [1700846] - [rpmspec] rpmspec: pack bpf-helpers, bpftool-net, bpftool-feature manpages (Yauheni Kaliuta) [1700846] - [net] bpf, tcp: correctly handle DONT_WAIT flags and timeo == 0 (Yauheni Kaliuta) [1700846] - [kernel] bpf: mark bpf_event_notify and bpf_event_init as static (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap fix msg->sg.size account on ingress skb (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap remove duplicate queue free (Yauheni Kaliuta) [1700846] - [net] net/tls: remove set but not used variables (Yauheni Kaliuta) [1700846] - [media] bpf: add map helper functions push, pop, peek in more BPF programs (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix infinite loop in map create (Yauheni Kaliuta) [1700846] - [net] net/tls: fix build without CONFIG_TLS_DEVICE (Yauheni Kaliuta) [1700846] - [net] net/tls: don't leak partially sent record in device mode (Yauheni Kaliuta) [1700846] - [net] xdp: fix cpumap redirect SKB creation bug (Yauheni Kaliuta) [1700846] - [net] net/core: Document reuseport_add_sock() bind_inany argument (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: clarify bump in libbpf version info (Yauheni Kaliuta) [1700846] - [net] net/tls: Inform user space about send buffer availability (Yauheni Kaliuta) [1700846] - [tools] libbpf: handle BTF parsing and loading properly (Yauheni Kaliuta) [1700846] - [net] bpf: fix warning about using plain integer as NULL (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: fixing leak when kernel does not support btf (Yauheni Kaliuta) [1700846] - [net] tls: Fix write space handling (Yauheni Kaliuta) [1700846] - [net] tls: Fix tls_device handling of partial records (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, fix documentation for attach types (Yauheni Kaliuta) [1700846] - [tools] btf: separate btf creation and loading (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix a selftest test_btf failure (Yauheni Kaliuta) [1700846] - [tools] selftests/btf: add initial BTF dedup tests (Yauheni Kaliuta) [1700846] - [tools] btf: add BTF types deduplication algorithm (Yauheni Kaliuta) [1700846] - [tools] btf: extract BTF type size calculation (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: silence a libbpf unnecessary warning (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: implement libbpf btf__get_map_kv_tids() API function (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: expose functions btf_ext__* as API functions (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add a support for getting xdp prog id on ifindex (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add a helper for retrieving a map fd for a given name (Yauheni Kaliuta) [1700846] - [tools] libbpf: introduce bpf_map_lookup_elem_flags() (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add bash completion for bpftool probes (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for a network device (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add C-style "#define" output for probes (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF helper functions (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF map types (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF program types (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for kernel configuration options (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for /proc/ eBPF parameters (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add basic probe capability, probe syscall availability (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: print out btf log at LIBBPF_WARN level (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: move libbpf pr_* debug print functions to headers (Yauheni Kaliuta) [1700846] - [net] net: tls: Fix deadlock in free_resources tx (Yauheni Kaliuta) [1700846] - [net] net: tls: Save iv in tls_rec for async crypto requests (Yauheni Kaliuta) [1700846] - [tools] bpf: pull in pkt_sched.h header for tooling to fix bpftool build (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: change section name of bpfilter UMH blob (Yauheni Kaliuta) [1700846] - [netdrv] tap: call skb_probe_transport_header after setting skb->dev (Yauheni Kaliuta) [1700846] - [net] Prevent overflow of sk_msg in sk_msg_clone() (Yauheni Kaliuta) [1700846] - [net] tls: Do not call sk_memcopy_from_iter with zero length (Yauheni Kaliuta) [1700846] - [net] net: ipv4: Set skb->dev for output route resolution (Yauheni Kaliuta) [1700846] - [net] bpf: refactor bpf_test_run() to separate own failures and test program result (Yauheni Kaliuta) [1700846] - [include] bpf: fix pointer offsets in context for 32 bit (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: copy a few net uapi headers to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: tcp_bpf_recvmsg should return EAGAIN when nonblocking and no data (Yauheni Kaliuta) [1700846] - [net] bpf: skmsg, fix psock create on existing kcm/tls port (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: remove socket lock assertion on ULP cleanup (Yauheni Kaliuta) [1700846] - [lib] bpf: test_bpf: add init_net to dev for flow_dissector (Yauheni Kaliuta) [1700846] - [net] flow_dissector: lookup netns by skb->sk if skb->dev is NULL (Yauheni Kaliuta) [1700846] - [net] tls: Fixed uninitialised vars warning (Yauheni Kaliuta) [1700846] - [include] cgroup: Simplify cgroup_ancestor (Yauheni Kaliuta) [1700846] - [netdrv] veth: Orphan skb before GRO (Yauheni Kaliuta) [1700846] - [net] net/core/filter: fix unused-variable warning (Yauheni Kaliuta) [1700846] - [net] bpf: fix build error with clang (Yauheni Kaliuta) [1700846] - [netdrv] veth: Free queues on link delete (Yauheni Kaliuta) [1700846] - [net] bpf: fix sanitation rewrite in case of non-pointers (Yauheni Kaliuta) [1700846] - [net] bpf: drop refcount if bpf_map_new_fd() fails in map_create() (Yauheni Kaliuta) [1700846] - [net] bpf: decrease usercnt if bpf_map_new_fd() fails in bpf_map_get_fd_by_id() (Yauheni Kaliuta) [1700846] - [net] bpf, lpm: fix lookup bug in map_delete_elem (Yauheni Kaliuta) [1700846] - [net] bpf: fix lockdep false positive in stackmap (Yauheni Kaliuta) [1700846] - [net] bpf: Fix narrow load on a bpf_sock returned from sk_lookup() (Yauheni Kaliuta) [1700846] - [net] bpf: Fix syscall's stackmap lookup potential deadlock (Yauheni Kaliuta) [1700846] - [kernel] bpf: fix potential deadlock in bpf_prog_register (Yauheni Kaliuta) [1700846] - [net] bpf: fix lockdep false positive in percpu_freelist (Yauheni Kaliuta) [1700846] - [net] bpf: run bpf programs with preemption disabled (Yauheni Kaliuta) [1700846] - [tools] bpf, selftests: fix handling of sparse CPU allocations (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix test_btf for typedef func_proto case (Yauheni Kaliuta) [1700846] - [net] bpf: btf: allow typedef func_proto (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix crash with un-owned prog arrays (Yauheni Kaliuta) [1700846] - [tools] bpftool: fix percpu maps updating (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: Cleanup license mess (Yauheni Kaliuta) [1700846] - [net] bpf: Annotate implicit fall through in cgroup_dev_func_proto (Yauheni Kaliuta) [1700846] - [net] bpf: Make function btf_name_offset_valid static (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: retry tests that expect build-id (Yauheni Kaliuta) [1700846] - [net] bpf: zero out build_id for BPF_STACK_BUILD_ID_IP (Yauheni Kaliuta) [1700846] - [net] bpf: don't assume build-id length is always 20 bytes (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: properly account for libbfd variations (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: retry loading program on EAGAIN (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: workaround clang asm goto compilation errors (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: install with_tunnels.sh for test_flow_dissector.sh (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: disallow to remove bpfilter module while being used (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: Fix type cast and pointer warnings (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: restart bpfilter_umh when error occurred (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: use cleanup callback to release umh_info (Yauheni Kaliuta) [1700846] - [kernel] umh: add exit routine for UMH process (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: Set user mode helper's command line (Yauheni Kaliuta) [1700846] - [kernel] umh: Add command line to user mode helpers (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: use get_pid_task instead of pid_task (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix bpftool map dump with bitfields (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: test btf bitfield with >=256 struct member offset (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpffs bitfield pretty print (Yauheni Kaliuta) [1700846] - [net] bpf: fix panic in stack_map_get_build_id() on i386 and arm32 (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: install files tcp_(server|client)*.py (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: user proper argument index (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [tools] bpf, doc: add note for libbpf's stand-alone build (Yauheni Kaliuta) [1700846] - [documentation] bpf, doc: update design qa to reflect kern_version requirement (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix incorrect users of create_and_get_cgroup (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases for alu op on mixed dst register types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test [::] -> [::1] rewrite in sys_sendmsg in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: Fix [::] -> [::1] rewrite in sys_sendmsg (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases to selftests (Yauheni Kaliuta) [1700846] - [net] bpf: fix check_map_access smin_value test when pointer contains offset (Yauheni Kaliuta) [1700846] - [net] bpf: restrict stack pointer arithmetic for unprivileged (Yauheni Kaliuta) [1700846] - [net] bpf: restrict map value pointer arithmetic for unprivileged (Yauheni Kaliuta) [1700846] - [net] bpf: enable access to ax register also from verifier rewrite (Yauheni Kaliuta) [1700846] - [net] bpf: move tmp variable into ax register in interpreter (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix error printing in test_devmap() (Yauheni Kaliuta) [1700846] - [tools] bpf: fix segfault in test_verifier selftest (Yauheni Kaliuta) [1700846] - [net] bpf: tls_sw, init TLS ULP removes BPF proto hooks (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, sock{map|hash} redirect through ULP (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, zap ingress queue on psock down (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, fix socket data_ready events (Yauheni Kaliuta) [1700846] - [net] bpf: skb_verdict, support SK_PASS on RX BPF path (Yauheni Kaliuta) [1700846] - [net] bpf: skmsg, replace comments with BUILD bug (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, improve offset chk in _is_valid_access (Yauheni Kaliuta) [1700846] - [tools] bpf: sk_msg, fix sk_msg_md access past end test (Yauheni Kaliuta) [1700846] - [net] bpf/cpumap: make sure frame_size for build_skb is aligned if headroom isn't (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: reorder stack size check with dead code sanitization (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: verifier: add tests for JSET interpretation (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: teach the verifier to reason about the BPF_JSET instruction (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add trivial JSET tests (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_LD_IMM64 to the line_info test (Yauheni Kaliuta) [1700846] - [net] bpf: Ensure line_info.insn_off cannot point to insn with zero code (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: do not force gcc as CC (Yauheni Kaliuta) [1700846] - [tools] bpf: fix up uapi helper description and sync bpf header with tools (Yauheni Kaliuta) [1700846] - [net] bpf: log struct/union attribute for forward type (Yauheni Kaliuta) [1700846] - [tools] bpf: sk_msg, add tests for size field (Yauheni Kaliuta) [1700846] - [tools] bpf: add tools lib/include support sk_msg_md size field (Yauheni Kaliuta) [1700846] - [include] bpf: sockmap, metadata support for reporting size of msg (Yauheni Kaliuta) [1700846] - [net] bpf: correct slot_type marking logic to allow more stack slot sharing (Yauheni Kaliuta) [1700846] - [kernel] bpf: support raw tracepoints in modules (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add an option to prevent auto-mount of bpffs, tracefs (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: attempt to mount tracefs if required for tracelog cmd (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: check precise {func, line, jited_line}_info_rec_size in test_btf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: fix memleak by freeing line_info (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: support pretty print with kind_flag set (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: refactor btf_dumper_int_bits() (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: test kernel bpffs map pretty print with struct kind_flag (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add test_btf unit tests for kind_flag (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync btf.h header from kernel to tools (Yauheni Kaliuta) [1700846] - [net] bpf: enable cgroup local storage map pretty print with kind_flag (Yauheni Kaliuta) [1700846] - [net] bpf: btf: fix struct/union/fwd types with kind_flag (Yauheni Kaliuta) [1700846] - [net] bpf: btf: refactor btf_int_bits_seq_show() (Yauheni Kaliuta) [1700846] - [net] bpf: remove useless version check for prog load (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix -Wmissing declaration warnings (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix warning on struct bpf_prog_linfo definition (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add a prog array map update example to documentation (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix examples in documentation for bpftool prog (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add doc for -m option to bpftool-prog.rst (Yauheni Kaliuta) [1700846] - [net] bpf: add self-check logic to liveness analysis (Yauheni Kaliuta) [1700846] - [net] bpf: improve stacksafe state comparison (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: check insn processed in test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: speed up stacksafe check (Yauheni Kaliuta) [1700846] - [net] bpf: verbose log bpf_line_info in verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Create a new btf_name_by_offset() for non type name use case (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix sk lookup usage in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: remove obsolete prog->aux sanitation in bpf_insn_prepare_dump (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: make sure callees don't prune with caller differences (Yauheni Kaliuta) [1700846] - [tools] bpf: sync tools/include/uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [net] bpf: include sub program tags in bpf_prog_info (Yauheni Kaliuta) [1700846] - [tools] bpf: Remove !func_info and !line_info check from test_btf and bpftool (Yauheni Kaliuta) [1700846] - [net] bpf: Remove bpf_dump_raw_ok() check for func_info and line_info (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: dual license all files (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: replace Netronome boilerplate with SPDX license headers (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix SPDX format in headers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add btf annotations for cgroup_local_storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for cgroup local storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: pass struct btf pointer to the map_check_btf() callback (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: use __bpf_constant_htons in test_prog.c (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpf_jit_limit knob for PAGE_SIZE >= 64K (Yauheni Kaliuta) [1700846] - [arm64] bpf: arm64: Enable arm64 jit to provide bpf_line_info (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: use proper type when passing prog_type (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: rename *_info_cnt to nr_*_info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync kernel uapi bpf.h to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: rename *_info_cnt to nr_*_info in bpf_prog_info (Yauheni Kaliuta) [1700846] - [net] bpf: clean up bpf_prog_get_info_by_fd() (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool: Fix newline and p_err issue (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing pointer dereference for map stacktrace fixup (Yauheni Kaliuta) [1700846] - [net] bpf: relax verifier restriction on BPF_MOV | BPF_ALU (Yauheni Kaliuta) [1700846] - [tools] media: bpf: add bpf function to report mouse movement (Yauheni Kaliuta) [1700846] - [include] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: bpftool: Print bpf_line_info during prog dump (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Add btf_line_info support to libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Refactor and bug fix on the bpf_func_info loading logic (Yauheni Kaliuta) [1700846] - [tools] bpf: Add unit tests for bpf_line_info (Yauheni Kaliuta) [1700846] - [tools] bpf: Refactor and bug fix in test_func_type in test_btf.c (Yauheni Kaliuta) [1700846] - [tools] bpf: tools: Sync uapi bpf.h (Yauheni Kaliuta) [1700846] - [include] bpf: Add bpf_line_info support (Yauheni Kaliuta) [1700846] - [net] net/flow_dissector: correctly cap nhoff and thoff in case of BPF (Yauheni Kaliuta) [1700846] - [net] selftests/bpf: use thoff instead of nhoff in BPF flow dissector (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: update testcases for BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [net] bpf: verifier remove the rejection on BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [net] bpf: interpreter support BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [s390] s390: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Yauheni Kaliuta) [1700846] - [powerpc] ppc: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Yauheni Kaliuta) [1700846] - [tools] bpf: Expect !info.func_info and insn_off name changes in test_btf/libbpf/bpftool (Yauheni Kaliuta) [1700846] - [tools] bpf: tools: Sync uapi bpf.h for the name changes in bpf_func_info (Yauheni Kaliuta) [1700846] - [net] bpf: Change insn_offset to insn_off in bpf_func_info (Yauheni Kaliuta) [1700846] - [net] bpf: Improve the info.func_info and info.func_info_rec_size behavior (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add a command to dump the trace pipe (Yauheni Kaliuta) [1700846] - [arm64] arm64/bpf: don't allocate BPF JIT programs in module memory (Yauheni Kaliuta) [1700846] - [net] bpf: add __weak hook for allocating executable memory (Yauheni Kaliuta) [1700846] - [net] bpf: add per-insn complexity limit (Yauheni Kaliuta) [1700846] - [net] bpf: improve verifier branch analysis (Yauheni Kaliuta) [1700846] - [net] bpf: check pending signals while verifying programs (Yauheni Kaliuta) [1700846] - [tools] selftests: add a test for bpf_prog_test_run_xattr (Yauheni Kaliuta) [1700846] - [tools] libbpf: add bpf_prog_test_run_xattr (Yauheni Kaliuta) [1700846] - [tools] tools: sync uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [net] bpf: respect size hint to BPF_PROG_TEST_RUN if present (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: fix: seg fault with NULL pointer arg (Yauheni Kaliuta) [1700846] - [powerpc] bpf: powerpc64: optimize JIT passes for bpf function calls (Yauheni Kaliuta) [1700846] - [tools] bpf: allow BPF read access to qdisc pkt_len (Yauheni Kaliuta) [1700846] - [tools] libbpf: Fix license in README.rst (Yauheni Kaliuta) [1700846] - [net] bpf: Fix memleak in aux->func_info and aux->btf (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: get ifindex from ifname (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: improve xdp1 example (Yauheni Kaliuta) [1700846] - [tools] bpf: Apply F_NEEDS_EFFICIENT_UNALIGNED_ACCESS to more ACCEPT test cases (Yauheni Kaliuta) [1700846] - [tools] bpf: Make more use of 'any' alignment in test_verifier.c (Yauheni Kaliuta) [1700846] - [tools] bpf: Adjust F_NEEDS_EFFICIENT_UNALIGNED_ACCESS handling in test_verifier.c (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_F_ANY_ALIGNMENT (Yauheni Kaliuta) [1700846] - [tools] bpf: Improve socket lookup reuseport documentation (Yauheni Kaliuta) [1700846] - [tools] bpf: Support sk lookup in netns with id 0 (Yauheni Kaliuta) [1700846] - [tools] bpf: Fix verifier log string check for bad alignment (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add owner_prog_type and owner_jited to bpftool output (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: mark offloaded programs more explicitly in plain output (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix bash completion for new map types (queue and stack) (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix bash completion for bpftool prog (attach|detach) (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: use "/proc/self/" i.o. crafting links with getpid() (Yauheni Kaliuta) [1700846] - [arm64] arm64/bpf: use movn/movk/movk sequence to generate kernel addresses (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: make libbpf _GNU_SOURCE friendly (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix a bitfield pretty print issue (Yauheni Kaliuta) [1700846] - [tools] bpf: Fix various lib and testsuite build failures on 32-bit (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add addition type tests to test_btf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix two test_btf unit test cases (Yauheni Kaliuta) [1700846] - [net] bpf: btf: check name validity for various types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add config fragment CONFIG_FTRACE_SYSCALLS (Yauheni Kaliuta) [1700846] - [tools] bpf: test_sockmap, add options for msg_pop_data() helper (Yauheni Kaliuta) [1700846] - [tools] bpf: add msg_pop_data helper to tools (Yauheni Kaliuta) [1700846] - [tools] libbpf: Document API and ABI conventions (Yauheni Kaliuta) [1700846] - [tools] libbpf: Verify versioned symbols (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add version script for DSO (Yauheni Kaliuta) [1700846] - [tools] libbpf: Name changing for btf_get_from_id (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: change selftest test_btf for both jit and non-jit (Yauheni Kaliuta) [1700846] - [net] bpf: btf: support proper non-jit func info (Yauheni Kaliuta) [1700846] - [arm64] bpf, arm64: fix getting subprog addr from aux for calls (Yauheni Kaliuta) [1700846] - [net] bpf, ppc64: generalize fetching subprog into bpf_jit_get_func_addr (Yauheni Kaliuta) [1700846] - [tools] bpf: align map type names formatting (Yauheni Kaliuta) [1700846] - [net] bpf: btf: fix spelling mistake "Memmber" -> "Member" (Yauheni Kaliuta) [1700846] - [net] bpf, tags: Fix DEFINE_PER_CPU expansion (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_MAP_TYPE_QUEUE and BPF_MAP_TYPE_STACK to bpftool-map (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: fix: error handling regarding kprobe_events (Yauheni Kaliuta) [1700846] - [tools] libbpf: make bpf_object__open default to UNSPEC (Yauheni Kaliuta) [1700846] - [tools] bpf: add skb->tstamp r/w access from tc clsact and cg skb progs (Yauheni Kaliuta) [1700846] - [net] bpf: fix integer overflow in queue_stack_map (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix spelling mistake "memeory" -> "memory" (Yauheni Kaliuta) [1700846] - [net] bpf, lpm: make longest_prefix_match() faster (Yauheni Kaliuta) [1700846] - [tools] bpf: adding tests for map_in_map helpber in libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: adding support for map in map in libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: don't specify prog name if kernel doesn't support it (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: remove map name retry from bpf_create_map_xattr (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: introduce bpf_object__probe_caps to test BPF capabilities (Yauheni Kaliuta) [1700846] - [tools] libbpf: make sure bpf headers are c++ include-able (Yauheni Kaliuta) [1700846] - [tools] bpf: fix a libbpf loader issue (Yauheni Kaliuta) [1700846] - [include] bpf: fix a compilation error when CONFIG_BPF_SYSCALL is not defined (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add support for func types (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: enhance test_btf file testing to test func info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: refactor to implement btf_get_from_id() in lib/bpf (Yauheni Kaliuta) [1700846] - [samples] tools/bpf: do not use pahole if clang/llvm can generate BTF sections (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add support to read .BTF.ext sections (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: extends test_btf to test load/retrieve func_type info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add new fields for program load in lib/bpf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync kernel uapi bpf.h header to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce bpf_func_info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: Add tests for BTF_KIND_FUNC_PROTO and BTF_KIND_FUNC (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: Sync kernel btf.h header (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Add BTF_KIND_FUNC and BTF_KIND_FUNC_PROTO (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Break up btf_type_is_void() (Yauheni Kaliuta) [1700846] - [tools] tools: add selftest for BPF_F_ZERO_SEED (Yauheni Kaliuta) [1700846] - [tools] tools: sync linux/bpf.h (Yauheni Kaliuta) [1700846] - [include] bpf: move BPF_F_QUERY_EFFECTIVE after map flags (Yauheni Kaliuta) [1700846] - [net] bpf: allow zero-initializing hash map seed (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: retry map creation without the name (Yauheni Kaliuta) [1700846] - [net] bpf: allocate local storage buffers using GFP_ATOMIC (Yauheni Kaliuta) [1700846] - [net] bpf: fix off-by-one error in adjust_subprog_starts (Yauheni Kaliuta) [1700846] - [net] bpf: fix null pointer dereference on pointer offload (Yauheni Kaliuta) [1700846] - [tools] bpftool: make libbfd optional (Yauheni Kaliuta) [1700846] - [net] net/bpf: split VLAN_PRESENT bit handling from VLAN_TCI (Yauheni Kaliuta) [1700846] - [powerpc] net/bpf_jit: PPC: split VLAN_PRESENT bit handling from VLAN_TCI (Yauheni Kaliuta) [1700846] - [net] net/skbuff: add macros for VLAN_PRESENT bit (Yauheni Kaliuta) [1700846] - [tools] selftest/bpf: Use bpf_sk_lookup_{tcp, udp} in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: Support socket lookup in CGROUP_SOCK_ADDR progs (Yauheni Kaliuta) [1700846] - [net] bpf: Fix IPv6 dport byte order in bpf_sk_lookup_udp (Yauheni Kaliuta) [1700846] - [net] bpf: Extend the sk_lookup() helper to XDP hookpoint (Yauheni Kaliuta) [1700846] - [net] bpf: helper to pop data from messages (Yauheni Kaliuta) [1700846] - [net] bpf: fix wrong helper enablement in cgroup local storage (Yauheni Kaliuta) [1700846] - [include] bpf: sk_msg program helper bpf_msg_push_data (Yauheni Kaliuta) [1700846] - [net] bpf: Fix IPv6 dport byte-order in bpf_sk_lookup (Yauheni Kaliuta) [1700846] - [net] bpf: Allow sk_lookup with IPv6 module (Yauheni Kaliuta) [1700846] - [net] net: core: Fix build with CONFIG_IPV6=m (Yauheni Kaliuta) [1700846] - [net] bpf: Fix dev pointer dereference from sk_skb (Yauheni Kaliuta) [1700846] - [net] bpf: fix building without CONFIG_INET (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Fix bpf_program__next() API (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix uninitialized duration warning (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test narrow loads with off > 0 for bpf_sock_addr (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test narrow loads with off > 0 in test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Allow narrow loads with offset > 0 (Yauheni Kaliuta) [1700846] - [tools] bpftool: support loading flow dissector (Yauheni Kaliuta) [1700846] - [tools] bpftool: add pinmaps argument to the load/loadall (Yauheni Kaliuta) [1700846] - [tools] bpftool: add loadall command (Yauheni Kaliuta) [1700846] - [tools] libbpf: add internal pin_name (Yauheni Kaliuta) [1700846] - [tools] libbpf: bpf_program__pin: add special case for instances.nr == 1 (Yauheni Kaliuta) [1700846] - [tools] libbpf: cleanup after partial failure in bpf_object__pin (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: rename flow dissector section to flow_dissector (Yauheni Kaliuta) [1700846] - [netdrv] bpf: do not pass netdev to translate() and prepare() offload callbacks (Yauheni Kaliuta) [1700846] - [net] bpf: pass prog instead of env to bpf_prog_offload_verifier_prep() (Yauheni Kaliuta) [1700846] - [netdrv] bpf: pass destroy() as a callback and remove its ndo_bpf subcommand (Yauheni Kaliuta) [1700846] - [include] bpf: pass translate() as a callback and remove its ndo_bpf subcommand (Yauheni Kaliuta) [1700846] - [netdrv] bpf: call verifier_prep from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [net] bpf: call finalize() from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [net] bpf: call verify_insn from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [netdrv] bpf: pass a struct with offload callbacks to bpf_offload_dev_create() (Yauheni Kaliuta) [1700846] - [tools] kselftests/bpf: use ping6 as the default ipv6 ping binary when it exists (Yauheni Kaliuta) [1700846] - [tools] bpftool: Improve handling of ENOENT on map dumps (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add a test case for sock_ops perf-event notification (Yauheni Kaliuta) [1700846] - [net] bpf: add perf event notificaton support for sock_ops (Yauheni Kaliuta) [1700846] - [net] bpf: let verifier to calculate and record max_pkt_offset (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: update references to other man pages in documentation (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: pass an argument to silence open_obj_pinned() (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix plain output and doc for --bpffs option (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: prevent infinite loop in get_fdinfo() (Yauheni Kaliuta) [1700846] - [samples] bpf_load: add map name to load_maps error message (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: adjust rlimit RLIMIT_MEMLOCK when loading programs, maps (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: enable (uncomment) all tests in test_libbpf.sh (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpf_prog_get_info_by_fd to return 0 func_lens for unpriv (Yauheni Kaliuta) [1700846] - [net] bpf: show main program address and length in bpf_prog_info (Yauheni Kaliuta) [1700846] - [net] bpf: show real jited address in bpf_prog_info->jited_ksyms (Yauheni Kaliuta) [1700846] - [net] bpf: show real jited prog address in /proc/kallsyms (Yauheni Kaliuta) [1700846] - [tools] bpf: test make sure to run unpriv test cases in test_verifier (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases to test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: don't set id on after map lookup with ptr_to_map_val return (Yauheni Kaliuta) [1700846] - [tools] libbpf: Fix compile error in libbpf_attach_type_by_name (Yauheni Kaliuta) [1700846] - [tools] kselftests/bpf: use ping6 as the default ipv6 ping binary if it exists (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add unlimited rlimit for flow_dissector_load (Yauheni Kaliuta) [1700846] - [net] bpf: add bpf_jit_limit knob to restrict unpriv allocations (Yauheni Kaliuta) [1700846] - [net] bpf: make direct packet write unclone more robust (Yauheni Kaliuta) [1700846] - [net] bpf: fix leaking uninitialized memory on pop/peek helpers (Yauheni Kaliuta) [1700846] - [net] bpf: fix direct packet write into pop/peek helpers (Yauheni Kaliuta) [1700846] - [net] bpf: fix cg_skb types to hint access type in may_access_direct_pkt_data (Yauheni Kaliuta) [1700846] - [net] bpf: fix direct packet access for flow dissector progs (Yauheni Kaliuta) [1700846] - [net] bpf: disallow direct packet access for unpriv in cg_skb (Yauheni Kaliuta) [1700846] - [tools] bpf: fix test suite to enable all unpriv program types (Yauheni Kaliuta) [1700846] - [net] bpf, btf: fix a missing check bug in btf_parse (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add config fragments BPF_STREAM_PARSER and XDP_SOCKETS (Yauheni Kaliuta) [1700846] - [net] bpf: devmap: fix wrong interface selection in notifier_call (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix completion for "bpftool map update" (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: print nb of cmds to stdout (not stderr) for batch mode (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: document restriction on '.' in names to pin in bpffs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix return value comparison for tests in test_libbpf.sh (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: simplify and cleanup perf ring buffer walk (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: avoid retpoline for map push/pop/peek operation (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: remove unneeded flow key in check_helper_mem_access (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: reject xadd on flow key memory (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: fix register type dump in xadd and st (Yauheni Kaliuta) [1700846] - [net] ulp: remove uid and user_visible members (Yauheni Kaliuta) [1700846] - [tools] bpf: test_sockmap add options to use msg_push_data (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf support for msg_push_data (Yauheni Kaliuta) [1700846] - [tools] Sync uapi/bpf.h to tools/include (Yauheni Kaliuta) [1700846] - [net] bpf: add tests for direct packet access from CGROUP_SKB (Yauheni Kaliuta) [1700846] - [net] bpf: add cg_skb_is_valid_access for BPF_PROG_TYPE_CGROUP_SKB (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: use correct barriers in perf ring buffer walk (Yauheni Kaliuta) [1700846] - [tools] tools, perf: add and use optimized ring_buffer_{read_head, write_tail} helpers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add test cases for queue and stack maps (Yauheni Kaliuta) [1700846] - [net] bpf: add MAP_LOOKUP_AND_DELETE_ELEM syscall (Yauheni Kaliuta) [1700846] - [net] bpf: add queue and stack maps (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: add ARG_PTR_TO_UNINIT_MAP_VALUE (Yauheni Kaliuta) [1700846] - [net] bpf/syscall: allow key to be null in map functions (Yauheni Kaliuta) [1700846] - [net] bpf: rename stack trace map operations (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: use 4 context mode for the NFP disasm (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix file resource leak in load_kallsyms (Yauheni Kaliuta) [1700846] - [tools] bpf: sockmap, add msg_peek tests to test_sockmap (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, support for msg_peek in sk_msg with redirect ingress (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, fix skmsg recvmsg handler to track size correctly (Yauheni Kaliuta) [1700846] - [include] bpf: skmsg, improve sk_msg_used_element to work in cork context (Yauheni Kaliuta) [1700846] - [tools] libbpf: Per-symbol visibility for DSO (Yauheni Kaliuta) [1700846] - [tools] bpf, tls: add tls header to tools infrastructure (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add map create command (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, add flag to allow non-compat map definitions (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, add support for attaching programs to maps (Yauheni Kaliuta) [1700846] - [maintainers] bpf, doc: add maintainers entry to related files (Yauheni Kaliuta) [1700846] - [tools] bpf: add tls support for testing in test_sockmap (Yauheni Kaliuta) [1700846] - [net] tls: add bpf support to sk_msg handling (Yauheni Kaliuta) [1700846] - [net] tls: replace poll implementation with read hook (Yauheni Kaliuta) [1700846] - [net] tls: convert to generic sk_msg interface (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: convert to generic sk_msg interface (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: remove ulp bits from sockmap (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: enforce sock_owned_by_me upon ulp init and cleanup (Yauheni Kaliuta) [1700846] - [net] net/tls: Make function get_rec() static (Yauheni Kaliuta) [1700846] - [net] net/tls: Mark the end in scatterlist table (Yauheni Kaliuta) [1700846] - [net] tls: Fixed a memory leak during socket close (Yauheni Kaliuta) [1700846] - [net] net/tls: Removed redundant checks for non-NULL (Yauheni Kaliuta) [1700846] - [net] tls: Add support for inplace records encryption (Yauheni Kaliuta) [1700846] - [net] tls: Remove redundant vars from tls record structure (Yauheni Kaliuta) [1700846] - [net] net/tls: Fixed race condition in async encryption (Yauheni Kaliuta) [1700846] - [net] tls: Fix socket mem accounting error under async encryption (Yauheni Kaliuta) [1700846] - [net] net/tls: Add support for async encryption of records for performance (Yauheni Kaliuta) [1700846] - [net] tls: Remove dead code in tls_sw_sendmsg (Yauheni Kaliuta) [1700846] - [net] net/tls: Fixed return value when tls_complete_pending_work() fails (Yauheni Kaliuta) [1700846] - [net] bpf: wait for running BPF programs when updating map-in-map (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: install script with_addr.sh (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add config fragment LWTUNNEL (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: use proper type and uapi perf_event.h header for libbpf (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add XDP selftests for modifying and popping VLAN headers (Yauheni Kaliuta) [1700846] - [tools] bpf: make TC vlan bpf_helpers avail to selftests (Yauheni Kaliuta) [1700846] - [net] net: fix generic XDP to handle if eth header was mangled (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test_verifier, check bpf_map_lookup_elem access in bpf prog (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test_verifier, change names of fixup maps (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, print strerror when map lookup error occurs (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, split the function do_dump() (Yauheni Kaliuta) [1700846] - [net] bpf: return EOPNOTSUPP when map lookup isn't supported (Yauheni Kaliuta) [1700846] - [net] bpf: error handling when map_lookup_elem isn't supported (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Fix a missing check bug (Yauheni Kaliuta) [1700846] - [net] bpf: allow offload of programs with BPF-to-BPF function calls (Yauheni Kaliuta) [1700846] - [net] bpf: add verifier callback to get stack usage info for offloaded progs (Yauheni Kaliuta) [1700846] - [tools] libbpf: relicense libbpf as LGPL-2.1 OR BSD-2-Clause (Yauheni Kaliuta) [1700846] - [samples] bpf, tracex3_user: erase "ARRAY_SIZE" redefined (Yauheni Kaliuta) [1700846] - [tools] libbpf: Use __u32 instead of u32 in bpf_program__load (Yauheni Kaliuta) [1700846] - [tools] libbpf: Make include guards consistent (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in str_error.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in nlattr.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in libbpf.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Move __dump_nlmsg_t from API to implementation (Yauheni Kaliuta) [1700846] - [documentation] Documentation: Describe bpf reference tracking (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add C tests for reference tracking (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support loading individual progs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add tests for reference tracking (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Generalize dummy program types (Yauheni Kaliuta) [1700846] - [tools] bpf: Add helper to retrieve socket in BPF (Yauheni Kaliuta) [1700846] - [include] bpf: Introduce bpf_skb_ancestor_cgroup_id helper (Yauheni Kaliuta) [1700846] - [tools] bpf: sync include/uapi/linux/bpf.h to tools/include/uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [tools] bpf: sync bpf.h uapi with tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h uapi to tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Add reference tracking to verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Macrofy stack state copy (Yauheni Kaliuta) [1700846] - [include] bpf: Add PTR_TO_SOCKET verifier type (Yauheni Kaliuta) [1700846] - [net] bpf: Generalize ptr_or_null regs check (Yauheni Kaliuta) [1700846] - [net] bpf: Reuse canonical string formatter for ctx errs (Yauheni Kaliuta) [1700846] - [net] bpf: Add iterator for spilled registers (Yauheni Kaliuta) [1700846] - [net] bpf: don't accept cgroup local storage with zero value size (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: cgroup local storage-based network counters (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: extend test_cgrp2_attach2 test to use per-cpu cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: extend the storage test to test per-cpu cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add verifier per-cpu cgroup storage tests (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for PERCPU_CGROUP_STORAGE maps (Yauheni Kaliuta) [1700846] - [net] bpf: don't allow create maps of per-cpu cgroup local storages (Yauheni Kaliuta) [1700846] - [net] bpf: introduce per-cpu cgroup local storage (Yauheni Kaliuta) [1700846] - [net] bpf: rework cgroup storage pointer passing (Yauheni Kaliuta) [1700846] - [net] bpf: extend cgroup bpf core to allow multiple cgroup storage types (Yauheni Kaliuta) [1700846] - [net] bpf/test_run: support cgroup local storage (Yauheni Kaliuta) [1700846] - [net] bpf: harden flags check in cgroup_storage_update_elem() (Yauheni Kaliuta) [1700846] - [net] bpf: permit CGROUP_DEVICE programs accessing helper bpf_get_current_cgroup_id() (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test libbpf_{prog,attach}_type_by_name (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Use libbpf_attach_type_by_name in test_socket_cookie (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support sk_skb/stream_{parser, verdict} section names (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support cgroup_skb/{e,in}gress section names (Yauheni Kaliuta) [1700846] - [tools] libbpf: Introduce libbpf_attach_type_by_name (Yauheni Kaliuta) [1700846] - [tools] bpftool: Fix bpftool net output (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for BPF_MAP_TYPE_REUSEPORT_SOCKARRAY maps (Yauheni Kaliuta) [1700846] - [tools] bpf: test_maps, only support ESTABLISHED socks (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, fix transition through disconnect without close (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap only allow ESTABLISHED sock state (Yauheni Kaliuta) [1700846] - [net] bpf: remove redundant null pointer check before consume_skb (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: fix compilation failure (Yauheni Kaliuta) [1700846] - [net] flow_dissector: fix build failure without CONFIG_NET (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: fix a compilation failure (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: remove duplicated includes (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: improve output format for bpftool net (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix bpf_flow.c build (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test bpf flow dissection (Yauheni Kaliuta) [1700846] - [tools] flow_dissector: implements eBPF parser (Yauheni Kaliuta) [1700846] - [tools] bpf: support flow dissector in libbpf and bpftool (Yauheni Kaliuta) [1700846] - [include] flow_dissector: implements flow dissector BPF hook (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Fix end boundary calculation for type section (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix a netlink recv issue (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: support prog array map and map of maps (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for program array map (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add net support (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add more netlink functionalities in lib/bpf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: move bpf/lib netlink related functions into a new file (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf/test_progs: do not check errno == 0 (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: fix verifier instability (Yauheni Kaliuta) [1700846] - [net] bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, add xskmap in map types (Yauheni Kaliuta) [1700846] - [tools] bpf: add selftest for bpf's (set|get)_sockopt for SAVE_SYN (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: xdpsock, minor fixes (Yauheni Kaliuta) [1700846] - [samples] bpf: add TCP_SAVE_SYN/TCP_SAVED_SYN sample program (Yauheni Kaliuta) [1700846] - [net] bpf: add TCP_SAVE_SYN/TCP_SAVED_SYN options for bpf_(set|get)sockopt (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add btf percpu map formated dump (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add bpffs percpu map pretty print tests in test_btf (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for percpu arraymap/hash/lru_hash (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: display non-spill stack slot types in print_verifier_state (Yauheni Kaliuta) [1700846] - [tools] bpf: use --cgroup in test_suite if supplied (Yauheni Kaliuta) [1700846] - [tools] bpf: sockmap test remove shutdown() calls (Yauheni Kaliuta) [1700846] - [net] bpf: remove duplicated include from syscall.c (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, decrement copied count correctly in redirect error case (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix potential use after free in bpf_tcp_close (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: return from do_event_pipe() on bad arguments (Yauheni Kaliuta) [1700846] - [net] bpf: use per htab salt for bucket hash (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap: write_space events need to be passed to TCP handler (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock hash count in alloc_sock_hash_elem (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock_hash_alloc and reject zero-sized keys (Yauheni Kaliuta) [1700846] - [net] bpf: fix redirect to map under tail calls (Yauheni Kaliuta) [1700846] - [netdrv] veth: Support per queue XDP ring (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add XDP TX and REDIRECT (Yauheni Kaliuta) [1700846] - [net] xdp: Helpers for disabling napi_direct of xdp_return_frame (Yauheni Kaliuta) [1700846] - [net] bpf: Make redirect_info accessible from modules (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add ndo_xdp_xmit (Yauheni Kaliuta) [1700846] - [netdrv] veth: Handle xdp_frames in xdp napi ring (Yauheni Kaliuta) [1700846] - [netdrv] veth: Avoid drops by oversized packets when XDP is enabled (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add driver XDP (Yauheni Kaliuta) [1700846] - [net] net: Export skb_headers_offset_update (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix bpf selftest test_cgroup_storage failure (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix map elem deletion race with smap_stop_sock (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix leakage of smap_psock_map_entry (Yauheni Kaliuta) [1700846] - [net] bpf: fix a rcu usage warning in bpf_prog_array_copy_core() (Yauheni Kaliuta) [1700846] - [tools] bpf: test: fix spelling mistake "REUSEEPORT" -> "REUSEPORT" (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Selftest for bpf_skb_ancestor_cgroup_id (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add cgroup id helpers to bpf_helpers.h (Yauheni Kaliuta) [1700846] - [net] bpf: decouple btf from seq bpf fs dump and enable more maps (Yauheni Kaliuta) [1700846] - [tools] bpf: Test BPF_PROG_TYPE_SK_REUSEPORT (Yauheni Kaliuta) [1700846] - [tools] bpf: test BPF_MAP_TYPE_REUSEPORT_SOCKARRAY (Yauheni Kaliuta) [1700846] - [tools] bpf: Refactor ARRAY_SIZE macro to bpf_util.h (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce BPF_PROG_TYPE_SK_REUSEPORT (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce BPF_MAP_TYPE_REUSEPORT_SOCKARRAY (Yauheni Kaliuta) [1700846] - [net] net: Add ID (if needed) to sock_reuseport and expose reuseport_lock (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add bpffs pretty print btf test for hash/lru_hash maps (Yauheni Kaliuta) [1700846] - [net] bpf: btf: add pretty print for hash/lru_hash maps (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpffs non-array map seq_show issue (Yauheni Kaliuta) [1700846] - [powerpc] powerpc/Makefiles: Convert ifeq to ifdef where possible (Yauheni Kaliuta) [1700846] - [net] bpf: introduce update_effective_progs() (Yauheni Kaliuta) [1700846] - [s390] s390: fix br_r1_trampoline for machines without exrl (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix a typo in map in map test (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: fix BTF code added twice to different trees (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: extend test_cgrp2_attach2 test to use cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add a cgroup storage test (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add verifier cgroup storage tests (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for CGROUP_STORAGE maps (Yauheni Kaliuta) [1700846] - [net] bpf: introduce the bpf_get_local_storage() helper function (Yauheni Kaliuta) [1700846] - [net] bpf: don't allow create maps of cgroup local storages (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: introduce BPF_PTR_TO_MAP_VALUE (Yauheni Kaliuta) [1700846] - [net] bpf: extend bpf_prog_array to store pointers to the cgroup storage (Yauheni Kaliuta) [1700846] - [net] bpf: allocate cgroup storage entries on attaching bpf programs (Yauheni Kaliuta) [1700846] - [net] bpf: pass a pointer to a cgroup storage using pcpu variable (Yauheni Kaliuta) [1700846] - [net] bpf: introduce cgroup storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: add ability to charge bpf maps memory dynamically (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: MOV64 don't mark dst reg unbounded (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test for get_socket_cookie (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add bpf_get_socket_cookie to bpf_helpers.h (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Support bpf_get_socket_cookie in more prog types (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: convert xdpsock_user.c to libbpf (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: convert xdp_fwd_user.c to libbpf (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: add bpf_object__find_program_by_title() (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: handle NULL program gracefully in bpf_program__nth_fd() (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: Add BTF build flags to Makefile (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: ignore build products (Yauheni Kaliuta) [1700846] - [tools] bpf: Add Python 3 support to selftests scripts for bpf (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: fix inconsistent IS_ERR and PTR_ERR (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap: remove redundant pointer sg (Yauheni Kaliuta) [1700846] - [net] bpf: bpf_prog_array_alloc() should return a generic non-rcu pointer (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: don't pass FEATURES_DUMP to libbpf (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: remove libelf-getphdrnum feature detection (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: test_cgrp2_sock2: fix an off by one (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: ensure that we don't load over MAX_PROGS programs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test case for BPF_SOCK_OPS_TCP_LISTEN_CB (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Better verification in test_tcpbpf (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Switch test_tcpbpf_user to cgroup_helpers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix const'ness in cgroup_helpers (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Add BPF_SOCK_OPS_TCP_LISTEN_CB (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: print map dump and lookup with btf info (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: add btf print functionality (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: export btf types and name by offset from lib (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: build and install man page for eBPF helpers from bpftool/ (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1700846] - [include] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1700846] - [tools] bpftool: add bash completion for cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] bpftool: document cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] bpftool: introduce cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test sys_connect BPF hooks with TFO (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: Add xdp_sample_pkts example (Yauheni Kaliuta) [1700846] - [tools] trace_helpers.c: Add helpers to poll multiple perf FDs for events (Yauheni Kaliuta) [1700846] - [net] bpf: deal with kABI breakage in cgroups (Yauheni Kaliuta) [1700846] - [netdrv] nfp: bpf: fix static check error through tightening shift amount adjustment (Pablo Cascon) [1663986] - [netdrv] nfp: disable netpoll on representors (Pablo Cascon) [1663986] - [netdrv] nfp: validate the return code from dev_queue_xmit() (Pablo Cascon) [1663986] - [netdrv] nfp: fix simple vNIC mailbox length (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: set higher timeout for flash bundle (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: allow the use of DMA buffer (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: move default buffer handling into its own function (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: use fractional size of the buffer (Pablo Cascon) [1663986] - [netdrv] nfp: report RJ45 connector in ethtool (Pablo Cascon) [1663986] - [netdrv] nfp: remove ethtool flashing fallback (Pablo Cascon) [1663986] - [netdrv] nfp: Remove switchdev.h inclusion (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: fix code-gen bug on BPF_ALU | BPF_XOR | BPF_K (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: allow flashing the device via devlink (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: include vendor/product info in serial number (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: use the generic manufacture identifier instead of vendor (Pablo Cascon) [1663986] - [netdrv] nfp: flower: cmsg: use struct_size() helper (Pablo Cascon) [1663986] - [netdrv] nfp: Implement ndo_get_port_parent_id() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: complete ALU32 logic shift supports (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: correct the behavior for shifts by zero (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report the running and flashed versions (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: add support for versions command (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report fixed versions (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report driver name and serial number (Pablo Cascon) [1663986] - [netdrv] nfp: use struct_size() in kzalloc() (Pablo Cascon) [1663986] - [netdrv] nfp: flower: enable MAC address sharing for offloadable devs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure MAC cleanup on address change (Pablo Cascon) [1663986] - [netdrv] nfp: flower: add infastructure for non-repr priv data (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure deletion of old offloaded MACs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove list infastructure from MAC offload (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ignore offload of VF and PF repr MAC addresses (Pablo Cascon) [1663986] - [netdrv] nfp: flower: tidy tunnel related private data (Pablo Cascon) [1663986] - [netdrv] nfp: flower: support multiple memory units for filter offloads (Pablo Cascon) [1663986] - [netdrv] nfp: flower: increase cmesg reply timeout (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: optimize codegen for JSET with a constant (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: remove the trivial JSET optimization (Pablo Cascon) [1663986] - [netdrv] nfp: flower: fix cb_ident duplicate in indirect block register (Pablo Cascon) [1663986] - [netdrv] nfp: abm: allow to opt-out of RED offload (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure TCP flags can be placed in IPv6 frame (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Pablo Cascon) [1663986] - [netdrv] nfp: convert to DEFINE_SHOW_ATTRIBUTE (Pablo Cascon) [1663986] - [netdrv] nfp: report more info when reconfiguration fails (Pablo Cascon) [1663986] - [netdrv] nfp: add offset to all TLV parsing errors (Pablo Cascon) [1663986] - [netdrv] nfp: add offloads on representors (Pablo Cascon) [1663986] - [netdrv] nfp: add locking around representor changes (Pablo Cascon) [1663986] - [netdrv] nfp: run don't require Qdiscs on representor netdevs (Pablo Cascon) [1663986] - [netdrv] nfp: run representor TX locklessly (Pablo Cascon) [1663986] - [netdrv] nfp: avoid oversized TSO headers with metadata prepend (Pablo Cascon) [1663986] - [netdrv] nfp: correct descriptor offsets in presence of metadata (Pablo Cascon) [1663986] - [netdrv] nfp: move queue variable init (Pablo Cascon) [1663986] - [netdrv] nfp: move temporary variables in nfp_net_tx_complete() (Pablo Cascon) [1663986] - [netdrv] nfp: copy only the relevant part of the TX descriptor for frags (Pablo Cascon) [1663986] - [netdrv] nfp: flower: prevent offload if rhashtable insert fails (Pablo Cascon) [1663986] - [netdrv] nfp: flower: release metadata on offload failure (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add support for more threshold actions (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add cls_u32 offload for simple band classification (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add functions to update DSCP -> virtual queue map (Pablo Cascon) [1663986] - [netdrv] nfp: abm: calculate PRIO map len and check mailbox size (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add GRED offload (Pablo Cascon) [1663986] - [netdrv] nfp: abm: wrap RED parameters in bands (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add up bands for sto/non-sto stats (Pablo Cascon) [1663986] - [netdrv] nfp: abm: switch to extended stats for reading packet/byte counts (Pablo Cascon) [1663986] - [netdrv] nfp: abm: size threshold table to account for bands (Pablo Cascon) [1663986] - [netdrv] nfp: abm: pass band parameter to functions (Pablo Cascon) [1663986] - [netdrv] nfp: abm: map per-band symbols (Pablo Cascon) [1663986] - [netdrv] nfp: abm: restructure Qdisc handling (Pablo Cascon) [1663986] - [netdrv] nfp: abm: save RED's parameters (Pablo Cascon) [1663986] - [netdrv] nfp: abm: reset RED's child based on limit (Pablo Cascon) [1663986] - [netdrv] nfp: abm: build full Qdisc hierarchy based on graft notifications (Pablo Cascon) [1663986] - [netdrv] nfp: abm: allocate Qdisc child table (Pablo Cascon) [1663986] - [netdrv] nfp: abm: remember which Qdisc is root (Pablo Cascon) [1663986] - [netdrv] nfp: abm: track all offload-enabled qdiscs (Pablo Cascon) [1663986] - [netdrv] nfp: abm: keep track of all RED thresholds (Pablo Cascon) [1663986] - [netdrv] nfp: abm: rename qdiscs -> red_qdiscs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove unnecessary code in flow lookup (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove TC egdev offloads (Pablo Cascon) [1663986] - [netdrv] nfp: flower: offload tunnel decap rules via indirect TC blocks (Pablo Cascon) [1663986] - [netdrv] nfp: flower: increase scope of netdev checking functions (Pablo Cascon) [1663986] - [netdrv] nfp: flower: allow non repr netdev offload (Pablo Cascon) [1663986] - [netdrv] nfp: use the new __netdev_tx_sent_queue() BQL optimisation (Pablo Cascon) [1663986] - [netdrv] nfp: abm: refuse RED offload with harddrop set (Pablo Cascon) [1663986] - [netdrv] nfp: abm: don't set negative threshold (Pablo Cascon) [1663986] - [netdrv] nfp: abm: provide more precise info about offload parameter validation (Pablo Cascon) [1663986] - [netdrv] nfp: parse vNIC TLV capabilities at alloc time (Pablo Cascon) [1663986] - [netdrv] nfp: pass ctrl_bar pointer to nfp_net_alloc (Pablo Cascon) [1663986] - [netdrv] nfp: abm: split qdisc offload code into a separate file (Pablo Cascon) [1663986] - [netdrv] nfp: flower: include geneve as supported offload tunnel type (Pablo Cascon) [1663986] - [netdrv] nfp: flower: use geneve and vxlan helpers (Pablo Cascon) [1663986] - [netdrv] nfp: flower: use the common netdev notifier (Pablo Cascon) [1663986] - [netdrv] nfp: register a notifier handler in a central location for the device (Pablo Cascon) [1663986] - [netdrv] nfp: flower: make nfp_fl_lag_changels_event() void (Pablo Cascon) [1663986] - [netdrv] nfp: flower: don't try to nack device unregister events (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove unnecessary iteration over devices (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: protect against mis-initializing atomic counters (Pablo Cascon) [1663986] - [netdrv] nfp: devlink port split support for 1x100G CXP NIC (Pablo Cascon) [1663986] - [netdrv] nfp: replace long license headers with SPDX (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support pointers to other stack frames for BPF-to-BPF calls (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: account for BPF-to-BPF calls when preparing nfp JIT (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: ignore helper-related checks for BPF calls in nfp verifier (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: rename nfp_prog->stack_depth as nfp_prog->stack_frame_depth (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow control message sizing for map ops (Pablo Cascon) [1663986] - [netdrv] nfp: allow apps to request larger MTU on control vNIC (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: parse global BPF ABI version capability (Pablo Cascon) [1663986] - [netdrv] nfp: warn on experimental TLV types (Pablo Cascon) [1663986] - [netdrv] nfp: remove ndo_poll_controller (Pablo Cascon) [1663986] - [netdrv] nfp: replace spin_lock_bh with spin_lock in tasklet callback (Pablo Cascon) [1663986] - [netdrv] nfp: separate VXLAN and GRE feature handling (Pablo Cascon) [1663986] - [netdrv] nfp: validate rtsym accesses fall within the symbol (Pablo Cascon) [1663986] - [netdrv] nfp: prefix rtsym error messages with symbol name (Pablo Cascon) [1663986] - [netdrv] nfp: fix readq on absolute RTsyms (Pablo Cascon) [1663986] - [netdrv] nfp: make RTsym users handle absolute symbols correctly (Pablo Cascon) [1663986] - [netdrv] nfp: support access to absolute RTsyms (Pablo Cascon) [1663986] - [netdrv] nfp: convert all RTsym users to use new read/write helpers (Pablo Cascon) [1663986] - [netdrv] nfp: convert existing RTsym helpers to full target decoding (Pablo Cascon) [1663986] - [netdrv] nfp: pass cpp_id to nfp_cpp_map_area() (Pablo Cascon) [1663986] - [netdrv] nfp: add RTsym access helpers (Pablo Cascon) [1663986] - [netdrv] nfp: add basic errors messages to target logic (Pablo Cascon) [1663986] - [netdrv] nfp: save the MU locality field offset (Pablo Cascon) [1663986] - [netdrv] nfp: refactor the per-chip PCIe config (Pablo Cascon) [1663986] - [netdrv] nfp: add support for NFP5000 (Pablo Cascon) [1663986] - [netdrv] nfp: abm: look up MAC addresses via management FW (Pablo Cascon) [1663986] - [netdrv] nfp: add support for indirect HWinfo lookup (Pablo Cascon) [1663986] - [netdrv] nfp: interpret extended FW load result codes (Pablo Cascon) [1663986] - [netdrv] nfp: attempt FW load from flash (Pablo Cascon) [1663986] - [netdrv] nfp: encapsulate NSP command arguments into structs (Pablo Cascon) [1663986] - [netdrv] nfp: clean up return types in kdoc comments (Pablo Cascon) [1663986] - [netdrv] nfp: flower: allow matching on ipv4 UDP tunnel tos and ttl (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: xdp_adjust_tail support (Pablo Cascon) [1663986] - [netdrv] nfp: fix variable dereferenced before check in nfp_app_ctrl_rx_raw() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: improve map offload info messages (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: remember maps by ID (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow receiving perf events on data queues (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: pass raw data buffer to nfp_bpf_event_output() (Pablo Cascon) [1663986] - [netdrv] nfp: allow control message reception on data queues (Pablo Cascon) [1663986] - [netdrv] nfp: move repr handling on RX path (Pablo Cascon) [1663986] - [netdrv] nfp: protect from theoretical size overflows on HW descriptor ring (Pablo Cascon) [1663986] - [netdrv] nfp: restore correct ordering of fields in rx ring structure (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow program sharing within ASIC (Pablo Cascon) [1663986] - [netdrv] nfp: add .ndo_init() and .ndo_uninit() callbacks (Pablo Cascon) [1663986] - [netdrv] nfp: add support for simultaneous driver and hw XDP (Pablo Cascon) [1663986] - [netdrv] nfp: avoid using getnstimeofday64() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: migrate to advanced reciprocal divide in reciprocal_div.h (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support u32 divide using reciprocal_div.h (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support u16 and u32 multiplications (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: copy range info for all operands of all ALU operations (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: rename umin/umax to umin_src/umax_src (Pablo Cascon) [1663986] - [netdrv] nfp: make use of napi_consume_skb() (Pablo Cascon) [1663986] - [netdrv] nfp: implement netpoll ndo (thus enabling netconsole) (Pablo Cascon) [1663986] - [netdrv] nfp: fail probe if serial or interface id is missing (Pablo Cascon) [1663986] - [netdrv] nfp: expose ring stats of inactive rings via ethtool (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow source ptr type be map ptr in memcpy optimization (Pablo Cascon) [1663986] - [netdrv] bpf: offload: keep the offload state per-ASIC (Pablo Cascon) [1663986] - [netdrv] bpf: offload: aggregate offloads per-device (Pablo Cascon) [1663986] - [tools] selftests/bpf: add test for sharing objects between netdevs (Ivan Vecera) [1708399] - [netdrv] netdevsim: allow program sharing between devices (Ivan Vecera) [1708399] - [net] bpf: offload: allow program and map sharing per-ASIC (Ivan Vecera) [1708399] - [netdrv] bpf: offload: keep the offload state per-ASIC (Ivan Vecera) [1708399] - [netdrv] bpf: offload: aggregate offloads per-device (Ivan Vecera) [1708399] - [net] bpf: offload: rename bpf_offload_dev_match() to bpf_offload_prog_map_match() (Ivan Vecera) [1708399] - [netdrv] netdevsim: associate bound programs with shared dev (Ivan Vecera) [1708399] - [netdrv] netdevsim: add shared netdevsim devices (Ivan Vecera) [1708399] - [netdrv] netdevsim: add switch_id attribute (Ivan Vecera) [1708399]- [infiniband] IB/mlx5: Remove set but not used variable (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: WQE dump jumps over first 16 bytes (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix false compilation warning (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Remove redundant assignment (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix compilation warning in en_tc.c (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix compilation warning in eq.c (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix the max MTU check in case of XDP (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix use-after-free after xdp_return_frame (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix scatter to CQE in DCT QP creation (Alaa Hleihel) [1691238] - [netdrv] Revert "net/mlx5e: Enable reporting checksum unnecessary also for L3 packets" (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Rx, Check ip headers sanity (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: FPGA, tls, idr remove on flow delete (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: FPGA, tls, hold rcu read lock a bit longer (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Consider tunnel type for encap contexts (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Correctly use the namespace type when allocating pedit action (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: ethtool, Allow legacy link-modes configuration via non-extended ptys (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: ethtool, Fix type analysis of advertised link-mode (Alaa Hleihel) [1691238] - [netdrv] net: mlx5: Add a missing check on idr_find, free buf (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Allow IPv4 ttl & IPv6 hop_limit rewrite for all L4 protocols (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Use mlx5 core to create/destroy a DEVX DCT (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix DCT creation bad flow (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix bad flow upon DEVX mkey creation (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Add support for ODP for DEVX indirection mkey (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Manage indirection mkey upon DEVX flow for ODP (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: DEVX handling for indirection MKEY (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix access to non-existing receive queue (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Properly get the PF number phys port name ndo (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Consolidate update FTE for all removal changes (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Add a locked flag to node removal functions (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Add modify FTE helper function (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix multiple updates of steering rules in parallel (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Validate correct PD before prefetch MR (Alaa Hleihel) [1691238] - [infiniband] RDMA/mlx5: Introduce and reuse helper to identify ODP MR (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Protect against prefetch of invalid MR (Alaa Hleihel) [1691238] - [infiniband] net/mlx5: Make mlx5_cmd_exec_cb() a safe API (Alaa Hleihel) [1691238] - [infiniband] RDMA: Clean structures from CONFIG_INFINIBAND_ON_DEMAND_PAGING (Alaa Hleihel) [1691238] - [infiniband] RDMA/mlx5: Embed into the code flow the ODP config option (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Add missing static function annotation (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Do not use hw_access_flags for be and CPU data (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix code style issue in mlx driver (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix the locking of SRQ objects in ODP events (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Make mlx5_ib_stage_odp_cleanup() static (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Declare local functions 'static' (Alaa Hleihel) [1691238] - [netdrv] RDMA/mlx5: Delete declaration of already removed function (Alaa Hleihel) [1691238] - [netdrv] mlx5-core: Mark ConnectX-6 Dx as unsupported device (Alaa Hleihel) [1691236 1687434] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1691236 1687434] - [infiniband] IB/mlx5: Fix mapping of link-mode to IB width and speed (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: ethtool, Add ethtool support for 50Gbps per lane link modes (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Add support for 50Gbps per lane link modes (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5: Add support to ext_* fields introduced in Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [include] net/mlx5: Add new fields to Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5: Refactor queries to speed fields in Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5e: Set peer flow needed also for multipath (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Update check for merged eswitch device (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Use hint to resolve route when in HW multipath mode (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Always query offloaded tc peer rule counter (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Re-attempt to offload flows on multipath port affinity events (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Emit port affinity event for multipath offloads (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Allow one failure when offloading tc encap rules under multipath (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Don't inherit flow flags on peer flow creation (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Activate HW multipath and handle port affinity based on FIB events (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Add multipath mode (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Use own workqueue for lag netdev events processing (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Expose lag operations in header file (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Use unsigned int bit instead of bool as a struct member (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Don't make internal use of errno to denote missing neigh (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Cleanup attach encap function (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Remove 'parse_attr' argument in mlx5e_tc_add_fdb_flow() (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Introduce mlx5e_flow_esw_attr_init() helper (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Return the allocated flow directly from __mlx5e_add_fdb_flow (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix GRE key by controlling port tunnel entropy calculation (Alaa Hleihel) [1691236 1663240] - [include] net/mlx5: Introduce tunnel entropy control in PCMR register (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Use read-modify-write when changing PCMR register values (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Remove wrong and superfluous tc pedit header type check (Alaa Hleihel) [1691236] - [netdrv] drivers: net: use flow action infrastructure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: support for two independent packet edit actions (Alaa Hleihel) [1691236] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, fix redirect resources availability check (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix a compilation warning in events.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: No command allowed when command interface is not ready (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix NULL pointer derefernce in set channels error flow (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Don't overwrite pedit action when multiple pedit used (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Update hw flows when encap source mac changed (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use the inner headers to determine tc/pedit offload limitation on decap flows (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Properly set steering match levels for offloaded TC decap rules (Alaa Hleihel) [1691236 1663207] - [netdrv] net/mlx5e: Unblock setting vid 0 for VFs through the uplink rep (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move to use common phys port names for vport representors (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Allow MAC invalidation while spoofchk is ON (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Take lock with IRQs disabled to avoid deadlock (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong private flag usage causing checksum disable (Alaa Hleihel) [1691236] - [netdrv] Revert "net/mlx5e: E-Switch, Initialize eswitch only if eswitch manager" (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Fix flow creation on representors (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix how advise_mr() launches async work (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Fix check for supported user flags when creating a QP (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix cb_ident duplicate in indirect block register (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong (zero) TX drop counter indication for representor (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong error code return on FEC query failure (Alaa Hleihel) [1691236] - [infiniband] Revert "IB/mlx5: Fix long EEH recover time with NVMe offloads" (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow XRC INI usage via verbs in DEVX context (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: drop useless LIST_HEAD (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: fix semicolon.cocci warnings (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Signedness bug in UVERBS_HANDLER() (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allocate the per-port Q counter shared when DEVX is supported (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Add user control for XDP TX MPWQE feature (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Support Enhanced Multi-Packet TX WQE (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Add array for WQE info descriptors (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Maintain a FIFO structure for xdp_info instances (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Replace boolean doorbell indication with segment pointer (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Warn upon polling an error CQE (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Change the XDP SQ redirect indication (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Precede XDP-related operations in RQ poll by a loaded program check (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: TX, Print opcode in error CQE warning (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix wrong error unwind (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix long EEH recover time with NVMe offloads (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Simplify netdev unbinding (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use the correct commands for UMEM and UCTX allocation (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use uid as part of alloc/dealloc transport domain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix LAG requirement when CONFIG_MLX5_ESWITCH is off (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix query_nic_sys_image_guid() error during init (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Support tunnel encap over tagged Ethernet (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Support VLAN encap ETH header generation (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Re-order route and encap header memory allocation (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Tunnel encap ETH header helper function (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Fail attempt to offload e-switch TC encap flows with vlan on underlay (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Tunnel routing output devs helper function (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Fail attempt to offload e-switch TC flows with egress upper devices (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Allow vlans on e-switch uplink reps (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Increase VF representors' SQ size to 128 (Alaa Hleihel) [1691236] - [netdrv] mlx5: extend PTP gettime function to read system clock (Alaa Hleihel) [1691236] - [netdrv] mlx5: update timecounter at least twice per counter overflow (Alaa Hleihel) [1691236] - [include] IB/mlx5: Introduce uid as part of alloc/dealloc transport domain (Alaa Hleihel) [1691236] - [netdrv] drivers: net: ethernet: mellanox: use skb_sec_path helper (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix compile issue when ODP disabled (Alaa Hleihel) [1691236] - [include] net/mlx5: Add shared Q counter bits (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add advise_mr() support (Alaa Hleihel) [1691236 1663248] - [infiniband] IB/uverbs: Add helper to get array size from ptr attribute (Alaa Hleihel) [1691236 1663248] - [infiniband] RDMA/mlx5: Fix function name typo 'fileds' -> 'fields' (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Delete unreachable handle_atomic code by simplifying SW completion (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Continue driver initialization despite debugfs failure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Add some ethtool port control entries to the uplink rep netdev (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Expose ethtool pause and link functions to mlx5e callers (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Add sriov and udp tunnel ndo support for the uplink rep (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Handle port mtu/link, dcb and lag for uplink reps (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Uninstantiate esw manager vport netdev on switchdev mode (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Remove leftover code from the PF netdev being uplink rep (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Use dedicated uplink vport netdev representor (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Use single argument for the esw representor build params helper (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5: E-Switch, Remove redundant reloading of the IB interface (Alaa Hleihel) [1691236 1663256 1663207] - [netdrv] net/mlx5: Handle LAG FW commands failure gracefully (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Make RoCE and SR-IOV LAG modes explicit (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Rename mlx5_lag_is_bonded() to __mlx5_lag_is_active() (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Allow co-enablement of uplink LAG and SRIOV (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Allow/disallow LAG according to pre-req only (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Adjustments for the activate LAG logic to run under sriov (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Duplicate offloaded TC eswitch rules under uplink LAG (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Offload TC e-switch rules with egress LAG device (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: In case of LAG, one switch parent id is used for all representors (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Enhance flow counter scheme for offloaded TC eswitch rules (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Infrastructure for duplicated offloading of TC flows (Alaa Hleihel) [1691236 1663230 1663207] - [netdrv] net/mlx5e: E-Switch, Add peer miss rules (Alaa Hleihel) [1691236 1663230 1663207] - [netdrv] net/mlx5: Introduce inter-device communication mechanism (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Fold the modify lag code into function (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Add lag affinity info to log (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Split the activate lag function into two routines (Alaa Hleihel) [1691236 1663230] - [include] net/mlx5: E-Switch, Introduce flow counter affinity (Alaa Hleihel) [1691236 1663230] - [infiniband] IB/mlx5: Unify e-switch representors load approach between uplink and VFs (Alaa Hleihel) [1691236] - [include] net/mlx5: Use lowercase 'X' for hex values (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove set but not used variable 'upriv' (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove duplicated include from eswitch.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use monitor counters for update stats (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Monitor counters commands support (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Avoid query PPCNT register if not supported by the device (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use CQE padding for Ethernet CQs (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Support multiple encapsulations for a TC flow (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Allow association of a flow to multiple encaps (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Change parse attr struct to accommodate multiple tunnel infos (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Support header rewrite actions with remote port mirroring (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Replace the split logic with extended destination (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Annul encap action ordering requirement (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Move flow attr reformat action bit to per dest flags (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Refactor eswitch flow attr for destination specific properties (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5: E-Switch, Rename esw attr mirror count field (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5: Consider encapsulation properties when comparing destinations (Alaa Hleihel) [1691236 1663239] - [infiniband] RDMA/mlx5: Fail early if user tries to create flows on IB representors (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Remove duplicated include from mlx5_ib.h (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add 2X width support to query_port (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Add HDR speed support to query port (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Report CapabilityMask2 in ib_query_port (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5e: Add GRE protocol offloading (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Move TC tunnel offloading code to separate source file (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Branch according to classified tunnel type (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Refactor VXLAN tunnel decap offloading code (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Refactor VXLAN tunnel encap offloading code (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Replace egdev with indirect block notifications (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Propagate the filter's net device to mlx5e structures (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Provide the TC filter netdev as parameter to flower callbacks (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Support TC indirect block notifications for eswitch uplink reprs (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Store eswitch uplink representor state on a dedicated struct (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Remove the get protocol device interface entry (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Support extended destination format in flow steering command (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5: E-Switch, Change vhca id valid bool field to bit flag (Alaa Hleihel) [1691236 1663239 1663207] - [include] net/mlx5: Introduce extended destination fields (Alaa Hleihel) [1691236 1663239] - [infiniband] net/mlx5: Revise gre and nvgre key formats (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Add monitor commands layout and event data (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Add support for plugged-disabled cable status in PME (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Add support for PCIe power slot exceeded error in PME (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Rework handling of port module events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Move flow counters data structures from flow steering header (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use helper to get CQE opcode (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Use helper to get CQE opcode (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: When fetching CQEs return CQE instead of void pointer (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Report packet based credit mode device capability (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add packet based credit mode support (Alaa Hleihel) [1691236] - [include] net/mlx5: Expose packet based credit mode (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enable TX on a DEVX flow table (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Improve ethtool private-flags code structure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: ethtool, Support user configuration for RX hash fields (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move RSS params to a dedicated struct (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Refactor TIR configuration function (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move modify tirs hash functionality (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Cleanup unused defines (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove trailing space of tx_pause ethtool counter name (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow XRC usage via verbs in DEVX context (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Update the supported DEVX commands (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enforce DEVX privilege by firmware (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enable modify and query verbs objects via DEVX (Alaa Hleihel) [1691236] - [include] net/mlx5: Update mlx5_ifc with DEVX UCTX capabilities bits (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Unfold modify RMP function (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Unfold create RMP function (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Initialize SRQ tables on mlx5_ib (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Update SRQ functions signatures to mlx5_ib format (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Use stages for callback to setup and release DEVX (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Remove SRQ signature global flag (Alaa Hleihel) [1691236] - [infiniband] net/mlx5: Move SRQ functions to RDMA part (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove references to local mlx5_core functions (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove not-used lib/eq.h header file (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove dead transobj code (Alaa Hleihel) [1691236] - [infiniband] net/mlx5: Align SRQ licenses and copyright information (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Debug print for forwarded async events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward SRQ resource events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward QP/WorkQueues resource events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove all deprecated software versions of FW events (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Handle raw delay drop general event (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Allow forwarding event type general event as is (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Handle raw port change event rather than the software version (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove unused events callback and logic (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use the new mlx5 core notifier API (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward all mlx5 events to mlx5 notifiers chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use the new mlx5 core notifier API (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Allow port change event to be forwarded to driver notifiers chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Driver events notifier API (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use fragmented QP's buffer for in-kernel users (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use fragmented SRQ's buffer for in-kernel users (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Attach a DEVX counter via raw flow creation (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Improve core device events handling (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Device events, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: CQ ERR, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Resource tables, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: CmdIF, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FWPage, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: E-Switch, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Clock, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FPGA, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FWTrace, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Introduce atomic notifier chain subscription API (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Use the uapi disablement APIs instead of code (Alaa Hleihel) [1691236] - [infiniband] RDMA/uverbs: Use a linear list to describe the compiled-in uapi (Alaa Hleihel) [1691236] - [netdrv] mlx5: use skb_vlan_tag_get_prio() (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow modify AV in DCI QP to RTR (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Make EQE access methods inline (Alaa Hleihel) [1691236] - [netdrv] {net, IB}/mlx5: Move Page fault EQ and ODP logic to RDMA (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Generic EQ (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Different EQ types (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Privatize eq_table and friends (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, irq_info and rmap belong to eq_table (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Create all EQs in one place (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Move all EQ logic to eq.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Remove redundant completion EQ list lock (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, No need to store eq index as a field (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Remove unused fields and structures (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Use the right place to store/read IRQ affinity hint (Alaa Hleihel) [1691236] - [include] net/mlx5: Fix offsets of ifc reserved fields (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove the false indication of software timestamping support (Alaa Hleihel) [1691234 1647734] - [netdrv] net/mlx5: Typo fix in del_sw_hw_rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: RX, Fix wrong early return in receive queue poll (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Cancel DIM work on close SQ (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Remove unused UDP GSO remaining counter (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid encap flows deletion attempt the 1st time a neigh is resolved (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Properly initialize flow attributes for slow path eswitch rule deletion (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid overriding the user provided priority for offloaded tc rules (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Err if asked to mirror a goto chain tc eswitch rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix default amount of channels for VF representors (Alaa Hleihel) [1691234] - [include] net/mlx5: E-Switch, Fix fdb cap bits swap (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Block DEVX umem from the non applicable cases (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Fix XRC QP support after introducing extended atomic (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix failing ethtool query on FEC query error (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix wrong field name in FEC related functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix a bug in turning off FEC policy in unsupported speeds (Alaa Hleihel) [1691234] - [include] net/mlx5: Fix XRC SRQ umem valid bits (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Allocate enough space for the FDB sub-namespaces (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Added 'raw_errors_laneX' fields to ethtool statistics (Alaa Hleihel) [1691234] - [include] net/mlx5: Added "per_lane_error_counters" cap bit to PCAM (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Ethtool driver callback for query/set FEC policy (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add port FEC get/set functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add FEC fields to Port Phy Link Mode (PPLM) reg (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Remove counter from idr after removing it from list (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Take fs_counters dellist before addlist (Alaa Hleihel) [1691234] - [infiniband] net/mlx5: Refactor fragmented buffer struct fields and init flow (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Support offloading tc priorities and chains for eswitch flows (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Use a slow path rule instead if vxlan neighbour isn't available (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Enable setting goto slow path chain action (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid duplicated code for tc offloads add/del fdb rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: For TC offloads, always add new flow instead of appending the actions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add a no-append flow insertion mode (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Add chains and priorities (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Have explicit API to delete fwd rules (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Split FDB fast path prio to multiple namespaces (Alaa Hleihel) [1691234] - [include] net/mlx5: Add cap bits for multi fdb encap (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Split TC add rule path for nic vs e-switch (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Change return type of tc add flow functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Use flow counter IDs and not the wrapping cache object (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Get counters for offloaded flows from callers (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Add support for extended atomic operations (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Allow scatter to CQE without global signaled WRs (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Verify that driver supports user flags (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Support scatter to CQE for DC transport type (Alaa Hleihel) [1691234] - [include] net/mlx5: Expose DC scatter to CQE capability bit (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Add support for flow tag to raw create flow (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Verify DEVX object type (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add new counter for aRFS rule insertion failures (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add extack messages for TC offload failures (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: E-Switch, Add extack messages to devlink callbacks (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Allow reporting of checksum unnecessary (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable reporting checksum unnecessary also for L3 packets (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add ethtool control of ring params to VF representors (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable multi-queue and RSS for VF representors (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Expose ethtool rss key size / indirection table functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Expose function for building RSS params (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Provide explicit directive if to create inner indirect tirs (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Provide flow dest when creating vport rx rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Extract creation of rep's default flow rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable stateless offloads for VF representor netdevs (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Change VF representors' RQ type (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Ethtool steering, Support masks for l3/l4 filters (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Enable DEVX on IB (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Enable DEVX white list commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Manage device uid for DEVX white list commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Expose RAW QP device handles to user space (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set valid umem bit on DEVX (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TD commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of XRCD commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of CQ creation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid upon PD allocation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of RQT commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TIS commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TIR commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of MCG commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of DCT commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of SRQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of SQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of RQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of QP creation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Use uid as part of PD commands (Alaa Hleihel) [1691234] - [include] net/mlx5: Update mlx5_ifc with DEVX UID bits (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of DCT commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of SRQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of SQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of RQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of QP commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of CQ commands (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Enable vport loopback when user context or QP mandate (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Allow creating RAW ethernet QP with loopback support (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Refactor transport domain bookkeeping logic (Alaa Hleihel) [1691234] - [infiniband] net/mlx5: Rename incorrect naming in IFC file (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Use rdma_user_mmap_io (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Allow creating a matcher for a NIC TX flow table (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add NIC TX namespace when getting a flow table (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add flow actions support to raw create flow (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Refactor raw flow creation (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Don't overwrite action if already set (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Refactor flow action parsing to be more generic (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching packet reformat action to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable reformat on NIC RX if supported (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching DECAP action to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable decap and packet reformat on flow tables (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching modify header to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add NIC TX steering support (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5e: Replace PTP clock lock from RW lock to seq lock (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Move Q counters allocation and drop RQ to init_rx (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add flow counters idr (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Store flow counters in a list (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add new list to store deleted flow counters (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Change flow counters addlist type to single linked list (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Extend packet reformat verbs (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add new flow action verb - packet reformat (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/uverbs: Add generic function to fill in flow action object (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add a new flow action verb - modify header (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Export packet reformat alloc/dealloc functions (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Pass a namespace for packet reformat ID allocation (Alaa Hleihel) [1691234 1663215] - [include] net/mlx5: Expose new packet reformat capabilities (Alaa Hleihel) [1691234 1663215] - [netdrv] {net, RDMA}/mlx5: Rename encap to reformat packet (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Move header encap type to IFC header file (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Break encap/decap into two separated flow table creation flags (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Add support for more namespaces when allocating modify header (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Export modify header alloc/dealloc functions (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Add proper NIC TX steering flow tables support (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Cleanup flow namespace getter switch logic (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Change TX affinity assignment in RoCE LAG mode (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add memic command opcode to command checker (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Destroy the DEVX object upon error flow (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, Read capabilities only when it is safe (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, fix udp source port value (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Improve argument name for add flow API (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, l4 proto support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, ip6 support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering flow parsing refactoring (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering flow validation refactoring (Alaa Hleihel) [1691231] - [infiniband] IB/uverbs: Use uverbs_alloc for allocations (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Unexport functions that need not be exported (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Remove unused mlx5_query_vport_admin_state (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: E-Switch, Remove unused argument when creating legacy FDB (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Rename modify/query_vport state related enums (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Mark expected switch fall-throughs (Alaa Hleihel) [1691231] - [netdrv] mellanox: fix the dport endianness in call of __inet6_lookup_established() (Alaa Hleihel) [1691231] - [netdrv] mlx5: handle DMA mapping error case for XDP redirect (Alaa Hleihel) [1691231] - [infiniband] IB/uverbs: Add UVERBS_ATTR_FLAGS_IN to the specs language (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Issue direct lookup on vxlan ports by vport representors (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TX, Use function to access sq_dma object in fifo (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TX, Move DB fields in TXQ-SQ struct (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Add support for XDP_REDIRECT in device-out side (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Re-order fields of struct mlx5e_xdpsq (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Refactor XDP counters (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Make XDP xmit functions more generic (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Add counter for XDP redirect in RX (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Enable driver uapi commands for flow steering (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Add support for a flow table destination for driver flow steering (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Support adding flow steering rule by raw description (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Introduce driver create and destroy flow methods (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Introduce flow steering matcher uapi object (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add support for flow table destination number (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add forward compatible support for the FTE match data (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Support offloading double vlan push/pop tc actions (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5e: Refactor tc vlan push/pop actions offloading (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5e: Support offloading tc double vlan headers match (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5: FW tracer, Add debug prints (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, Enable tracing (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, parse traces and kernel tracing support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, events handling (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, register log buffer memory key (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, create trace buffer and copy strings database (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, implement tracer logic (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Remove set but not used variables (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add XRQ commands definitions (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add core support for double vlan push/pop steering action (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5: Expose MPEGC (Management PCIe General Configuration) structures (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, add hardware structures (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: fix an unused-function warning (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: IPsec, fix byte count in CQE (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Accel, add common metadata functions (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, build TLS netdev from capabilities (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add software statistics (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add Innova TLS rx data path (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add innova rx support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Accel, add TLS rx offload routines (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, refactor variable names (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Check that supplied blue flame index doesn't overflow (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Melt consecutive calls to alloc_bfreg() in one call (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Use 2-factor allocator calls (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Remove unused port number parameter (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Expose dump and fill memory key (Alaa Hleihel) [1691231] - [include] net/mlx5: Add hardware definitions for dump_fill_mkey (Alaa Hleihel) [1691231] - [infiniband] net/mlx5: Limit scope of dump_fill_mkey function (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Add support for drain SQ & RQ (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Support RoCE ICRC encapsulated error counter (Alaa Hleihel) [1691231 1663195] - [include] net/mlx5: Add RoCE RX ICRC encapsulated counter (Alaa Hleihel) [1691231 1663195] - [infiniband] RDMA/mlx5: Refactor transport domain checks (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Expose DEVX tree (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX query EQN support (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX support for memory registration (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add support for DEVX query UAR (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX support for modify and query commands (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add obj create and destroy functionality (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add support for DEVX general command (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Introduce DEVX (Alaa Hleihel) [1691231 1663190] - [netdrv] net/mlx5: Expose DEVX specification (Alaa Hleihel) [1691231]- [virt] kvm: arm/arm64: Don't emulate virtual timers on userspace ioctls (Andrew Jones) [1716066] - [virt] kvm: arm/arm64: Remove unused timer variable (Andrew Jones) [1716066] - [virt] kvm: arm/arm64: Rework the timer code to use a timer_map (Andrew Jones) [1716066] - [powerpc] powernv: Fix compile without CONFIG_TRACEPOINTS (David Gibson) [1524674] - [virt] kvm: ppc: book3s: Remove useless checks in 'release' method of KVM device (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Clear escalation interrupt pointers on device close (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Prevent races when releasing device (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Replace the 'destroy' method by a 'release' method (David Gibson) [1524674] - [virt] kvm: Introduce a 'release' method for KVM devices (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Activate XIVE exploitation mode (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add passthrough support (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a mapping for the source ESB pages (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a TIMA mapping (David Gibson) [1524674] - [virt] kvm: Introduce a 'mmap' method for KVM devices (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add get/set accessors for the VP XIVE state (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to dirty the XIVE EQ pages (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to sync the sources (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a global reset control (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add controls for the EQ configuration (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to configure a source (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: add a control to initialize a source (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Introduce a new capability KVM_CAP_PPC_IRQ_XIVE (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: Add a new KVM device for the XIVE native exploitation mode (David Gibson) [1524674] - [powerpc] xive: add OPAL extensions for the XIVE native exploitation support (David Gibson) [1524674] - [powerpc] powernv: move OPAL call wrapper tracing and interrupt handling to C (David Gibson) [1524674] - [thermal] thermal/intel_powerclamp: fix truncated kthread name (Lihong Yang) [1716810] - [kernel] kernel/signal.c: trace_signal_deliver when signal_group_exit (Waiman Long) [1548279] - [kernel] signal: unconditionally leave the frozen state in ptrace_stop() (Waiman Long) [1548279] - [kernel] cgroup: never call do_group_exit() with task->frozen bit set (Waiman Long) [1548279] - [kernel] kernel: cgroup: fix misuse of x (Waiman Long) [1548279] - [kernel] cgroup: get rid of cgroup_freezer_frozen_exit() (Waiman Long) [1548279] - [kernel] cgroup: prevent spurious transition into non-frozen state (Waiman Long) [1548279] - [kernel] cgroup: Remove unused cgrp variable (Waiman Long) [1548279] - [documentation] cgroup: document cgroup v2 freezer interface (Waiman Long) [1548279] - [kernel] cgroup: add tracing points for cgroup v2 freezer (Waiman Long) [1548279] - [kernel] cgroup: make TRACE_CGROUP_PATH irq-safe (Waiman Long) [1548279] - [tools] kselftests: cgroup: don't fail on cg_kill_all() error in cg_destroy() (Waiman Long) [1548279] - [kernel] cgroup: cgroup v2 freezer (Waiman Long) [1548279] - [kernel] cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock (Waiman Long) [1548279] - [kernel] cgroup: implement __cgroup_task_count() helper (Waiman Long) [1548279] - [kernel] cgroup: rename freezer.c into legacy_freezer.c (Waiman Long) [1548279] - [kernel] cgroup: remove extra cgroup_migrate_finish() call (Waiman Long) [1548279] - [kernel] cgroup/cpuset: Update stale generate_sched_domains() comments (Waiman Long) [1548279] - [kernel] cgroup: saner refcounting for cgroup_root (Waiman Long) [1548279] - [fs] fix cgroup_do_mount() handling of failure exits (Waiman Long) [1548279] - [kernel] cgroup: Add named hierarchy disabling to cgroup_no_v1 boot param (Waiman Long) [1548279] - [kernel] cgroup: fix parsing empty mount option string (Waiman Long) [1548279] - [kernel] cgroup: fix CSS_TASK_ITER_PROCS (Waiman Long) [1548279] - [kernel] cgroup: Fix dom_cgrp propagation when enabling threaded mode (Waiman Long) [1548279] - [lib] lib: objagg: fix handling of object with 0 users when assembling hints (Ivan Vecera) [1704850] - [lib] test_objagg: Uninitialized variable in error handling (Ivan Vecera) [1704850] - [lib] test_objagg: Test the correct variable (Ivan Vecera) [1704850] - [lib] lib: objagg: Fix an error code in objagg_hints_get() (Ivan Vecera) [1704850] - [lib] lib: objagg: add root count to stats (Ivan Vecera) [1704850] - [lib] lib: objagg: implement optimization hints assembly and use hints for object creation (Ivan Vecera) [1704850] - [lib] lib: objagg: fix typo in objagg_stats_put() docstring (Ivan Vecera) [1704850] - [lib] lib: introduce initial implementation of object aggregation manager (Ivan Vecera) [1704850] - [netdrv] ibmvnic: Fix unchecked return codes of memory allocations (Steve Best) [1718919] - [netdrv] ibmvnic: Refresh device multicast list after reset (Steve Best) [1718919] - [netdrv] ibmvnic: Do not close unopened driver during reset (Steve Best) [1718919] - [target] scsi: target: tcmu: Switch to bitmap_zalloc() (Maurizio Lombardi) [1712917] - [target] scsi: target: tcmu: wait for nl reply only if there are listeners or during an add (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Simplify iscsit_handle_text_cmd() (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Simplify iscsit_dump_data_payload() (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Rename a function and a function pointer (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Fix spelling of "unsolicited" (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Convert comments about locking into runtime checks (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Remove an incorrect comment (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Add target_send_busy() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Inline transport_lun_remove_cmd() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify the LUN RESET implementation (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove several state tests from the TMF code (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove the write_pending_status() callback function (Maurizio Lombardi) [1712917] - [target] scsi: target: make the pi_prot_format ConfigFS path readable (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: fix use after free (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: avoid cmd/qfull timers updated whenever a new cmd comes (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: fix error msg typo when create lio_qr_cache failed (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use kmem_cache_free() instead of kfree() (Maurizio Lombardi) [1712917] - [target] scsi: target: perform t10_wwn ID initialisation in target_alloc_device() (Maurizio Lombardi) [1712917] - [target] scsi: target: remove hardcoded T10 Vendor ID in INQUIRY response (Maurizio Lombardi) [1712917] - [target] scsi: target: add device vendor_id configfs attribute (Maurizio Lombardi) [1712917] - [target] scsi: target: consistently null-terminate t10_wwn strings (Maurizio Lombardi) [1712917] - [target] scsi: target: use consistent left-aligned ASCII INQUIRY data (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Reduce the amount of code executed with a spinlock held (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make ABORT and LUN RESET handling synchronous (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Fix TAS handling for aborted commands (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify the code for aborting SCSI commands (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make it possible to wait from more than one context for command completion (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use system workqueues for TMF (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make sure that target_wait_for_sess_cmds() waits long enough (Maurizio Lombardi) [1712917] - [target] scsi: target: Fix target_wait_for_sess_cmds breakage with active signals (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify transport_clear_lun_ref() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use kvcalloc() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: target/tcmu: Fix queue_cmd_ring() declaration (Maurizio Lombardi) [1712917] - [target] scsi: target: replace fabric_ops.name with fabric_alias (Maurizio Lombardi) [1712917] - [target] scsi: target: drop unnecessary get_fabric_name() accessor from fabric_ops (Maurizio Lombardi) [1712917] - [target] scsi: target: drop unused pi_prot_format attribute storage (Maurizio Lombardi) [1712917] - [target] scsi: target: add emulate_pr backstore attr to toggle PR support (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Avoid that a kernel oops is triggered when COMPARE AND WRITE fails (Maurizio Lombardi) [1712917] - [target] scsi: target: Don't request modules that aren't even built (Maurizio Lombardi) [1712917] - [target] scsi: target: Set response length for REPORT TARGET PORT GROUPS (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Always call transport_complete_callback() upon failure (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use sg_alloc_table() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use the SECTOR_SHIFT constant (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove the SCF_COMPARE_AND_WRITE_POST flag (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove an unused data member from struct xcopy_pt_cmd (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Fix spelling in two source code comments (Maurizio Lombardi) [1712917] - [target] scsi: target: stash sess_err_stats on Data-Out timeout (Maurizio Lombardi) [1712917] - [target] scsi: target: split out helper for cxn timeout error stashing (Maurizio Lombardi) [1712917] - [target] scsi: target: log NOP ping timeouts as errors (Maurizio Lombardi) [1712917] - [target] scsi: target: log Data-Out timeouts as errors (Maurizio Lombardi) [1712917] - [include] scsi: target: use ISCSI_IQN_LEN in iscsi_target_stat (Maurizio Lombardi) [1712917] - [target] scsi: target: iblock: split T10 PI SGL across command bios (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: fix spelling mistake "entires" -> "entries" (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: Fix conn_ops double free (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: Set conn->sess to NULL when iscsi_login_set_conn_values fails (Maurizio Lombardi) [1712917] - [target] scsi: target: loop, usb, vhost, xen: use target_remove_session (Maurizio Lombardi) [1712917] - [target] scsi: tcm_fc: use target_remove_session (Maurizio Lombardi) [1712917] - [target] scsi: target: make transport_init_session_tags static (Maurizio Lombardi) [1712917] - [target] scsi: iscsi target: have iscsit_start_nopin_timer call __iscsit_start_nopin_timer (Maurizio Lombardi) [1712917] - [target] scsi: target: fix __transport_register_session locking (Maurizio Lombardi) [1712917] - [target] Revert "scsi: target/iscsi: Reduce number of __iscsit_free_cmd() callers" (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use u64 for dev_size (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use match_int for dev params (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: do not set max_blocks if data_bitmap has been setup (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: unmap if dev is configured (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: check if dev is configured before block/reset (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use lio core se_device configuration helper (Maurizio Lombardi) [1712917] - [target] scsi: target: add helper to check if dev is configured (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: initialize list head (Maurizio Lombardi) [1712917] - [target] scsi: target_core_user: fix double unlock (Maurizio Lombardi) [1712917] - [target] scsi: target: Remove se_dev_entry.ua_count (Maurizio Lombardi) [1712917] - [target] scsi: target: Fix handling of removed LUNs (Maurizio Lombardi) [1712917] - [target] scsi: target: Send unit attention condition even if the sense buffer is too small (Maurizio Lombardi) [1712917] - [target] scsi: target: Do not duplicate the code that marks that a command has sense data (Maurizio Lombardi) [1712917] - [target] scsi: target/tcm_loop: Avoid that static checkers warn about dead code (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Reduce number of __iscsit_free_cmd() callers (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify the code for waiting for command completion (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify transport_generic_free_cmd() (2/2) (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify transport_generic_free_cmd() (1/2) (Maurizio Lombardi) [1712917] - [target] scsi: target: Fold core_tmr_handle_tas_abort() into transport_cmd_finish_abort() (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify core_tmr_handle_tas_abort() (Maurizio Lombardi) [1712917] - [target] scsi: target: Document when CMD_T_STOP and CMD_T_COMPLETE are set (Maurizio Lombardi) [1712917] - [target] scsi: target: Make the session shutdown code also wait for commands that are being aborted (Maurizio Lombardi) [1712917] - [target] scsi: target: Introduce transport_init_session() (Maurizio Lombardi) [1712917] - [target] scsi: target: Rename transport_init_session() into transport_alloc_session() (Maurizio Lombardi) [1712917] - [target] scsi: target: Move a list_del_init() statement (Maurizio Lombardi) [1712917] - [target] scsi: target: Avoid that EXTENDED COPY commands trigger lock inversion (Maurizio Lombardi) [1712917] - [target] scsi: target: Use config_item_name() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: Don't pass KERN_ERR to pr_err (Maurizio Lombardi) [1712917] - [target] scsi: target: remove target_find_device (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: add module wide block/reset_netlink support (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: misc nl code cleanup (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: simplify nl interface (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: track nl commands (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: delete unused __wait (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: remove useless code and clean up the code style (Maurizio Lombardi) [1712917]- [ipc] ipc: do cyclic id allocation for the ipc object. (Waiman Long) [1710480] - [ipc] ipc: conserve sequence numbers in ipcmni_extend mode (Waiman Long) [1710480] - [ipc] ipc: allow boot time extension of IPCMNI from 32k to 16M (Waiman Long) [1710480] - [ipc] ipc/mqueue: optimize msg_get() (Waiman Long) [1710480] - [ipc] ipc/mqueue: remove redundant wq task assignment (Waiman Long) [1710480] - [ipc] ipc: prevent lockup on alloc_msg and free_msg (Waiman Long) [1710480] - [ipc] ipc: IPCMNI limit check for semmni (Waiman Long) [1710480] - [ipc] ipc: IPCMNI limit check for msgmni and shmmni (Waiman Long) [1710480] - [ipc] ipc/shm.c: use ERR_CAST() for shm_lock() error return (Waiman Long) [1710480] - [ipc] ipc/shm: properly return EIDRM in shm_lock() (Waiman Long) [1710480] - [ipc] ipc/util.c: update return value of ipc_getref from int to bool (Waiman Long) [1710480] - [ipc] ipc/util.c: further variable name cleanups (Waiman Long) [1710480] - [ipc] ipc: simplify ipc initialization (Waiman Long) [1710480] - [ipc] ipc: get rid of ids->tables_initialized hack (Waiman Long) [1710480] - [lib] lib/rhashtable: guarantee initial hashtable allocation (Waiman Long) [1710480] - [lib] lib/rhashtable: simplify bucket_table_alloc() (Waiman Long) [1710480] - [ipc] ipc: drop ipc_lock() (Waiman Long) [1710480] - [ipc] ipc/util.c: correct comment in ipc_obtain_object_check (Waiman Long) [1710480] - [ipc] ipc: rename ipcctl_pre_down_nolock() (Waiman Long) [1710480] - [ipc] ipc/util.c: use ipc_rcu_putref() for failues in ipc_addid() (Waiman Long) [1710480] - [ipc] ipc: reorganize initialization of kern_ipc_perm.seq (Waiman Long) [1710480] - [ipc] ipc: compute kern_ipc_perm.id under the ipc lock (Waiman Long) [1710480] - [x86] x86/speculation/mds: Improve CPU buffer clear documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Revert CPU buffer clear on double fault exit (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add 'mitigations=' support for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [s390] s390/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [powerpc] powerpc/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [mm] x86/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kernel] cpu/speculation: Add 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Fix documentation typo (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] Documentation: Correct the possible MDS sysfs values (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/mds: Add MDSUM variant to the MDS documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Fix comment (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add SMT warning message (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Move arch_smt_update() call to after mitigation decisions (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Add mds=full,nosmt cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] Documentation: Add MDS vulnerability documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] documentation: Move L1TF to separate directory (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add mitigation mode VMWERV (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [base] x86/speculation/mds: Add sysfs reporting for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add mitigation control for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Conditionally clear CPU buffers on idle entry (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kvm] x86/kvm/vmx: Add MDS protection when L1D Flush is not active (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Clear CPU buffers on exit to user (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Add mds_clear_cpu_buffers() (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kvm] x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add BUG_MSBDS_ONLY (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add basic bug infrastructure for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Consolidate CPU whitelists (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [tools] x86/msr-index: Cleanup bit defines (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/l1tf: Drop the swap storage limit restriction when l1tf=off (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Cast ~SPEC_CTRL_STIBP atomic value to int (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [tools] tools power x86_energy_perf_policy: Override CFLAGS assignments and add LDFLAGS to build command (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [scsi] scsi: qla2xxx: Fix read offset in qla24xx_load_risc_flash() (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Simplify conditional check again (Himanshu Madhani) [1665555] - [scsi] qla2xxx: Update driver version to 10.01.00.15.08.1-k (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Secure flash update support for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add 28xx flash primary/secondary status/image mechanism (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Simplification of register address used in qla_tmpl.c (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Correction and improvement to fwdt processing (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Update flash read/write routine (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add support for multiple fwdump templates/segments (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Cleanups for NVRAM/Flash read/write path (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Correctly report max/min supported speeds (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add Serdes support for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add Device ID for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Fix routine qla27xx_dump_{mpi|ram}() (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Remove FW default template (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add fw_attr and port_no SysFS node (Himanshu Madhani) [1665555] - [netdrv] e1000e: Disable runtime PM on CNP+ (David Arcari) [1659179] - [netdrv] intel: correct return from set features callback (David Arcari) [1659179] - [netdrv] e1000e: Fix -Wformat-truncation warnings (David Arcari) [1659179] - [netdrv] e1000e: fix cyclic resets at link up with active tx (David Arcari) [1659179] - [netdrv] e1000e: fix a missing check for return value (David Arcari) [1659179] - [netdrv] e1000e: Exclude device from suspend direct complete optimization (David Arcari) [1659179] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (David Arcari) [1659179] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (David Arcari) [1659179] - [netdrv] e1000e: extend PTP gettime function to read system clock (David Arcari) [1659179] - [netdrv] e1000e: allow non-monotonic SYSTIM readings (David Arcari) [1659179] - [netdrv] intel-ethernet: use correct module license (David Arcari) [1659179] - [kernel] sched/cpufreq: Fix kobject memleak (Phil Auld) [1714719] - [kernel] sched/core: Check quota and period overflow at usec to nsec conversion (Phil Auld) [1714719] - [kernel] sched/core: Handle overflow in cpu_shares_write_u64 (Phil Auld) [1714719] - [kernel] sched/rt: Check integer overflow at usec to nsec conversion (Phil Auld) [1714719] - [base] arch_topology: Make cpu_capacity sysfs node as read-only (Phil Auld) [1714719] - [x86] sched/x86: Save [ER]FLAGS on context switch (Phil Auld) [1714719] - [kernel] sched/fair: Remove setting task's se->runnable_weight during PELT update (Phil Auld) [1714719] - [kernel] sched/fair: Disable LB_BIAS by default (Phil Auld) [1714719] - [arm64] sched/topology, arch/arm64: Rebuild the sched_domain hierarchy when the CPU capacity changes (Phil Auld) [1714719] - [base] sched/topology, drivers/base/arch_topology: Rebuild the sched_domain hierarchy when capacities change (Phil Auld) [1714719] - [kernel] sched/topology: Add SD_ASYM_CPUCAPACITY flag detection (Phil Auld) [1714719] - [kernel] sched/fair: Fix load_balance redo for !imbalance (Phil Auld) [1714719] - [tools] cpupower : frequency-set -r option misses the last cpu in related cpu list (Steve Best) [1717841] - [kernel] Uprobes: Fix kernel oops with delayed_uprobe_remove() (Gustavo Duarte) [1608798] - [kernel] trace_uprobe/sdt: Prevent multiple reference counter for same uprobe (Gustavo Duarte) [1608798] - [kernel] uprobes/sdt: Prevent multiple reference counter for same uprobe (Gustavo Duarte) [1608798] - [kernel] uprobes: Support SDT markers having reference count (semaphore) (Gustavo Duarte) [1608798] - [kernel] Uprobe: Additional argument arch_uprobe to uprobe_write_opcode() (Gustavo Duarte) [1608798] - [kernel] Uprobes: Simplify uprobe_register() body (Gustavo Duarte) [1608798] - [pci] PCI: Rework pcie_retrain_link() wait loop (Myron Stowe) [1707902] - [pci] PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum (Myron Stowe) [1707902] - [pci] PCI: Factor out pcie_retrain_link() function (Myron Stowe) [1707902] - [tools] selftests/powerpc: Fix strncpy usage (Diego Domingos) [1662372] - [tools] selftests: Fix test errors related to lib.mk khdr target (Diego Domingos) [1662372] - [nvme] nvme-fc: use separate work queue to avoid warning (Ewan Milne) [1715135] - [scsi] scsi: scsi_transport_fc: nvme: display FC-NVMe port roles (Ewan Milne) [1715135] - [nvme] nvme-fc: correct csn initialization and increments on error (Ewan Milne) [1715135] - [nvme] nvme-multipath: avoid crash on invalid subsystem cntlid enumeration (Ewan Milne) [1715135] - [nvme] nvme-multipath: don't print ANA group state by default (Ewan Milne) [1715135] - [nvme] nvme-multipath: split bios with the ns_head bio_set before submitting (Ewan Milne) [1715135] - [nvme] nvme-multipath: relax ANA state check (Ewan Milne) [1715135] - [drm] drm/i915: Bump gen7+ fb size limits to 16kx16k (Lyude Paul) [1664969] - [drm] drm/i915: Bump fb stride limit to 128KiB for gen4+ and 256KiB for gen7+ (Lyude Paul) [1664969] - [drm] drm/i915: Align dumb buffer stride to 4k to allow for gtt remapping (Lyude Paul) [1664969] - [drm] drm/i915: Overcome display engine stride limits via GTT remapping (Lyude Paul) [1664969] - [drm] drm/i915: Shuffle stride checking code around (Lyude Paul) [1664969] - [drm] drm/i915/selftests: Add live vma selftest (Lyude Paul) [1664969] - [drm] drm/i915/selftests: Add mock selftest for remapped vmas (Lyude Paul) [1664969] - [drm] drm/i915: Add a new "remapped" gtt_view (Lyude Paul) [1664969] - [md] dax: Arrange for dax_supported check to span multiple devices (Jeff Moyer) [1665364] - [mm] mm/memory_hotplug.c: drop memory device reference after find_memory_block() (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Retain security state after overwrite (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/pmem: fix a possible OOB access when read and write pmem (Jeff Moyer) [1665367 1665364 1665362] - [acpi] libnvdimm/security, acpi/nfit: unify zero-key for all security commands (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/security: provide fix for secure-erase to use zero-key (Jeff Moyer) [1665367 1665364 1665362 1584976] - [mm] mm/memory.c: fix modifying of page protection by insert_pfn() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Fix a kmemdup failure check (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/namespace: Fix a potential NULL pointer dereference (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Always dump _DSM output payload (Jeff Moyer) [1665367 1665364 1665362] - [fs] fs/dax: Deposit pagetable even when installing zero page (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/namespace: Clean up holder_class_store() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/of_pmem: Fix platform_no_drv_owner.cocci warnings (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Update NFIT flags error message (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Fix LBA masking during 'free list' population (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Remove unnecessary code in btt_freelist_init (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pfn: Remove dax_label_reserve (Jeff Moyer) [1665367 1665364 1665362] - [drivers] dax: Check the end of the block-device capacity with dax_direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Avoid stale ARS results (Jeff Moyer) [1697175 1665367 1665364 1665362] - [acpi] nfit/ars: Allow root to busy-poll the ARS state machine (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Introduce scrub_flags (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Remove ars_start_flags (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Attempt short-ARS even in the no_init_ars case (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot (Jeff Moyer) [1697194 1665367 1665364 1665362] - [fs] fs/dax: NIT fix comment regarding start/end vs range (Jeff Moyer) [1665367 1665364 1665362] - [fs] fs/dax: Convert to use vmf_error() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Require opt-in for read-only label configurations (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pmem: Honor force_raw for legacy pmem regions (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pfn: Account for PAGE_SIZE > info-block-size in nd_pfn_init() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: Fix altmap reservation size calculation (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pfn: Fix over-trim in trim_pfn_device() (Jeff Moyer) [1665367 1665364 1665362 1662227] - [nvdimm] libnvdimm/dimm: Add a no-BLK quirk based on NVDIMM family (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: Add Hyper-V NVDIMM DSM command set to white list (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: acpi_nfit_ctl(): Check out_obj->type in the right place (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: Fix nfit_intel_shutdown_status() command submission (Jeff Moyer) [1665367 1665364 1665362 1662217] - [nvdimm] libnvdimm/security: Require nvdimm_security_setup_events() to succeed (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] nfit_test: fix security state pull for nvdimm security nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/security: Fix nvdimm_security_state() state request selection (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/label: Clear 'updating' flag after label-set update (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Remove duplicate set nd_set in acpi_nfit_init_interleave_set() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Fix race accessing memdev in nfit_get_smbios_id() (Jeff Moyer) [1665367 1665364 1665362] - [include] libnvdimm/dimm: Fix security capability detection for non-Intel NVDIMMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] nfit: Mark some functions as __maybe_unused (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] ACPI/nfit: delete the function to_acpi_nfit_desc (Jeff Moyer) [1665367 1665364 1665362] - [acpi] ACPI/nfit: delete the redundant header file (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: add MEMORY_DEVICE_PRIVATE support (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] mm, devm_memremap_pages: fix shutdown handling (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: kill mapping "System RAM" support (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: mark devm_memremap_pages() EXPORT_SYMBOL_GPL (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/security: Quiet security operations (Jeff Moyer) [1665367 1665364 1665362 1584976] - [documentation] libnvdimm/security: Add documentation for nvdimm security support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: add Intel DSM 1.8 support for nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: Add overwrite support for nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: Add test support for Intel nvdimm security DSMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm/security: add Intel DSM 1.8 master passphrase support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm/security: Add security DSM overwrite support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add support for issue secure erase DSM to Intel nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add enable/update passphrase support for Intel nvdimms (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add disable passphrase support to Intel nvdimm. (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add unlock of nvdimm support for Intel DIMMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add freeze security support to Intel nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] acpi/nfit, libnvdimm: Introduce nvdimm_security_ops (Jeff Moyer) [1665367 1665364 1665362 1584976] - [security] keys-encrypted: add nvdimm key format type to encrypted keys (Jeff Moyer) [1665367 1665364 1665362 1584976] - [security] keys: Export lookup_user_key to external users (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] acpi/nfit, libnvdimm: Store dimm id as a member to struct nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm, namespace: Replace kmemdup() with kstrndup() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, label: Switch to bitmap_zalloc() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] ACPI/nfit: Adjust annotation for why return 0 if fail to find NFIT at start (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, bus: Check id immediately following ida_simple_get (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Fix user-initiated ARS to be "ARS-long" rather than "ARS-short" (Jeff Moyer) [1665367 1665364 1665362 1662224 1641487] - [nvdimm] libnvdimm, pfn: Pad pfn namespaces relative to other regions (Jeff Moyer) [1665367 1665364 1665362 1662227] - [tools] tools/testing/nvdimm: Align test resources to 128M (Jeff Moyer) [1665367 1665364 1665362 1662227] - [acpi] acpi/nfit: Add support for Intel DSM 1.8 commands (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] Revert "acpi, nfit: Further restrict userspace ARS start requests" (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Fix ARS overflow continuation (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Fix the array size for dimm devices. (Jeff Moyer) [1665367 1665364 1665362 1658918] - [mm] mm: Fix warning in insert_pfn() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Further restrict userspace ARS start requests (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Fix Address Range Scrub completion tracking (Jeff Moyer) [1665367 1665364 1665362 1662224 1641487] - [tools] tools/testing/nvdimm: Populate dirty shutdown data (Jeff Moyer) [1665367 1665364 1665362 1662217] - [acpi] acpi, nfit: Collect shutdown status (Jeff Moyer) [1665367 1665364 1665362 1662217] - [acpi] acpi, nfit: Introduce nfit_mem flags (Jeff Moyer) [1665367 1665364 1665362 1662217] - [nvdimm] libnvdimm, label: Fix sparse warning (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, namespace: Drop the repeat assignment for variable dev->parent (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, region: Fail badblocks listing for inactive regions (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pfn: during init, clear errors in the metadata area (Jeff Moyer) [1665367 1665364 1665362 1641565] - [nvdimm] libnvdimm: Set device node in nd_device_register (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: Hold reference on parent while scheduling async init (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: remove duplicate include (Jeff Moyer) [1665367 1665364 1665362] - [fs] filesystem-dax: Fix use of zero page (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pmem: Restore page attributes when clearing errors (Jeff Moyer) [1665367 1665364 1665362] - [drivers] device-dax: avoid hang on error before devm_memremap_pages() (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: improve emulation of smart injection (Jeff Moyer) [1685043 1665367 1665364 1665362] - [fs] filesystem-dax: Do not request kaddr and pfn when not required (Jeff Moyer) [1665367 1665364 1665362] - [drivers] dax/super: Do not request a pointer kaddr when not required (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pmem: kaddr and pfn can be NULL to ->direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: queue issuing of ars when an uc error notification comes in (Jeff Moyer) [1665367 1665364 1665362 1641487] - [kernel] mm, dev_pagemap: Do not clear ->mapping on final put (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Fix support for emulating controller temperature (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Make DSM failure code injection an override (Jeff Moyer) [1665367 1665364 1665362 1658918] - [acpi] acpi, nfit: Prefer _DSM over _LSR for namespace label reads (Jeff Moyer) [1665367 1665364 1665362 1658918] - [nvdimm] libnvdimm: Introduce locked DIMM capacity support (Jeff Moyer) [1665367 1665364 1665362 1658918] - [drm] drm/nouveau: fix duplication of nv50_head_atom struct (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/disp/dp: respect sink limits when selecting failsafe link configuration (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/core: initial support for boards with TU117 chipset (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/core: allow detected chipset to be overridden (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/gf119-gp10x: push HeadSetControlOutputResource() mthd when encoders change (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/nv50-: fix bug preventing non-vsync'd page flips (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/gv100-: fix spurious window immediate interlocks (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/nouveau: forward error generated while resuming objects tree (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/i2c: Disable i2c bus access after ->fini() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add WaDisableBankHangMode (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/fbc: disable framebuffer compression on GeminiLake (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix setting 10 bit deep color mode (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add missing combo PHY lane power setup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Factor out combo PHY lane power setup helper (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Corrupt DSI picture fix for GeminiLake (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix clockgating issue when using scalers (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Suppress spurious combo PHY B warning (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Disable read only ppgtt support for gen11 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use Engine1 instance for gen11 pm interrupts (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Disable video turbo mode for rp control (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable media sampler powergate (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: introduce REG_BIT() and REG_GENMASK() to define register contents (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1664615 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Apply a recommended rc6 threshold (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use dedicated rc6 enabling sequence for gen11 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Don't warn on spurious interrupts (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Handle rps interrupts without irq lock (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sure we have enough memory bandwidth on ICL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sandybridge_pcode_read() deal with the second data register (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix ONLY icl+ max plane width (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix MG_DP_MODE() register programming (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Really calculate the cursor ddb based on the highest enabled wm level (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Inline skl_update_pipe_wm() into its only caller (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Don't pass pipe_wm around so much (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Move some variables to tighter scope (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Keep plane watermarks enabled more aggressively (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sure cursor has enough ddb for the selected wm level (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Allocate enough DDB for the cursor (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract skl_compute_wm_params() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Don't pass plane state to skl_compute_plane_wm() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Accept alloc_size == blocks (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/cml: Introduce Comet Lake PCH (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/cml: Add CML PCI IDS (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix PSR2 selective update corruption after PSR1 setup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off the CUS when turning off a HDR plane (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix legacy gamma mode for ICL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Refactor icl_is_hdr_plane (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] drm/i915: Add new ICL PCI ID (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix CRC mismatch error for DP link layer compliance (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Prevent incorrect DBuf enabling (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Read out memory type (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract DIMM info on cnl+ (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Clean up intel_get_dram_info() a bit (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i914: s/l_info/dimm_l/ etc. (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Generalize intel_is_dram_symmetric() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use dram_dimm_info more (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract DIMM info on GLK too (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix DRAM size reporting for BXT (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract BXT DIMM helpers (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Polish skl_is_16gb_dimm() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract functions to derive SKL+ DIMM info (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Store DIMM rank information as a number (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Default to Thread Group preemption for compute workloads (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix the state checker for ICL Y planes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: move MG pll hw_state readout (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Finalize Wa_1408961008:icl (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Call MG_DP_MODE() macro with the right parameters order (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Drop redundant gamma mode mask (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Implement new w/a for underruns with wm1+ disabled (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Include "ignore lines" in skl+ wm state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] Revert "drm/i915: W/A for underruns with WM1+ disabled on icl" (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make MG PHY macros semantically consistent (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make combo PHY DDI macro definitions consistent for ICL and CNL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add degamma and gamma lut size to gen11 caps (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable pipe output csc (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable ICL Pipe CSC block (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add icl pipe degamma and gamma support (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/glk: Fix degamma lut programming (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Dump skl+ watermark changes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Update DSPCNTR gamma/csc bits during crtc_enable() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Disable pipe gamma when C8 pixel format is used (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off pipe CSC when it's not needed (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off pipe gamma when it's not needed (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Track pipe csc enable in crtc state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Track pipe gamma enable/disable in crtc state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Populate gamma_mode for all platforms (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: Main backport to rebase from 4.18 to 5.1 (Lyude Paul) [1713573 1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] {CVE-2019-11085} - [include] list: Backport list_is_first() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] lib/scatterlist: Provide a DMA page iterator (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [acpi] ACPI / PMIC: Add support for executing PMIC MIPI sequence elements (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] vfio: add edid api for display (vgpu) devices. (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [mm] mm: don't miss the last page because of round-off error (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [base] PM-runtime: Add new interface to get accounted time (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: move i915_kick_out_vgacon to vgaarb (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [scripts] tracing: Avoid calling cc-option -mrecord-mcount for every Makefile (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/fb_helper: Allow leaking fbdev smem_start (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/fb: Stop leaking physical address (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [video] fbdev: Add FBINFO_HIDE_SMEM_START flag (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] vt: Remove vc_panic_force_write (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] fbdev: Drop FBINFO_CAN_FORCE_OUTPUT flag (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [video] fbdev: fix kerneldoc (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] fbdev: add remove_conflicting_pci_framebuffers() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [media] media: cec-notifier: Get notifier by device and connector name (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [base] driver core: Add device_link_remove function (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] include: Move ascii85 functions from i915 to linux/ascii85.h (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [mm] mm, drm/i915: mark pinned shmemfs pages as unevictable (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] list: introduce list_bulk_move_tail helper (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [fs] sysfs: constify sysfs create/remove files harder (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/selftests: Remove unused dmabuf->kmap routines, fix the build (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] dma-buf: remove kmap_atomic interface (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] include/linux/bitops.h: introduce BITS_PER_TYPE (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] dma_buf: remove device parameter from attach callback v2 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [pci] PCI: Export pcie_get_speed_cap and pcie_get_width_cap (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: Add support for pps and compression mode command packet (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking/mutex: Fix mutex debug call and ww_mutex documentation (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking: Implement an algorithm choice for Wound-Wait mutexes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking: WW mutex cleanup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286]- [netdrv] igb: Fix WARN_ONCE on runtime suspend (Corinna Vinschen) [1659168] - [netdrv] igb: use struct_size() helper (Corinna Vinschen) [1659168] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Corinna Vinschen) [1659168] - [netdrv] igb: Bump version number (Corinna Vinschen) [1659168] - [netdrv] Revert "igb: reduce CPU0 latency when updating statistics" (Corinna Vinschen) [1659168] - [netdrv] igb: Fix an issue that PME is not enabled during runtime suspend (Corinna Vinschen) [1659168] - [netdrv] igb: Change RXPBSIZE size when setting Qav mode (Corinna Vinschen) [1659168] - [netdrv] igb: reduce CPU0 latency when updating statistics (Corinna Vinschen) [1659168] - [netdrv] igb: fix uninitialized variables (Corinna Vinschen) [1659168] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Corinna Vinschen) [1659168] - [netdrv] igb: Fix format with line continuation whitespace (Corinna Vinschen) [1659168] - [netdrv] igb: extend PTP gettime function to read system clock (Corinna Vinschen) [1659168] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Corinna Vinschen) [1659168] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Corinna Vinschen) [1659168] - [netdrv] igb: remove ndo_poll_controller (Corinna Vinschen) [1659168] - [netdrv] intel-ethernet: use correct module license (Corinna Vinschen) [1659168] - [netdrv] igb: Replace mdelay() with msleep() in igb_integrated_phy_loopback() (Corinna Vinschen) [1659168] - [netdrv] igb: Replace GFP_ATOMIC with GFP_KERNEL in igb_sw_init() (Corinna Vinschen) [1659168] - [netdrv] igb: Use an advanced ctx descriptor for launchtime (Corinna Vinschen) [1659168] - [netdrv] igb: e1000_phy: Mark expected switch fall-through (Corinna Vinschen) [1659168] - [netdrv] igb: e1000_82575: Mark expected switch fall-through (Corinna Vinschen) [1659168] - [netdrv] igb_main: Mark expected switch fall-throughs (Corinna Vinschen) [1659168] - [netdrv] igb: Use dma_wmb() instead of wmb() before doorbell writes (Corinna Vinschen) [1659168] - [netdrv] igb: Add support for ETF offload (Corinna Vinschen) [1659168] - [netdrv] igb: Only call skb_tx_timestamp after descriptors are ready (Corinna Vinschen) [1659168] - [netdrv] igb: Refactor igb_offload_cbs() (Corinna Vinschen) [1659168] - [netdrv] igb: Only change Tx arbitration when CBS is on (Corinna Vinschen) [1659168] - [netdrv] igb: Refactor igb_configure_cbs() (Corinna Vinschen) [1659168] - [fs] Revert "[fs] ext4: protect journal inode's blocks using block_validity" (Lukas Czerner) [1716549] - [fs] xfs: don't trip over uninitialized buffer on extent read of corrupted inode (Bill O'Donnell) [1715942] - [fs] xfs: always init bma in xfs_bmapi_write (Bill O'Donnell) [1715942] - [lib] rhashtable: Still do rehash when we get EEXIST (Vladis Dronov) [1712457] - [fs] vmcore: Add a kernel parameter novmcoredd (Kairui Song) [1705864] - [powerpc] powerpc/eeh: Correct retries in eeh_pe_reset_full() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Improve recovery of passed-through devices (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Add include_passed to eeh_clear_pe_frozen_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Add include_passed to eeh_pe_state_clear() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: remove sw_state from eeh_unfreeze_pe() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_pe_clear_frozen_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup control flow in eeh_handle_normal_event() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_ops.wait_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_pe_state_mark() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup unnecessary eeh_pe_state_mark_with_cfg() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_enabled() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup logic in eeh_rmv_from_parent_pe() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup field names in eeh_rmv_data (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup list_head field names (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_add_virt_device() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup unused field in eeh_dev (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup EEH_POSTPONED_PROBE (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Avoid misleading message "EEH: no capable adapters found" (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix use of EEH_PE_KEEP on wrong field (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix null deref for devices removed during EEH (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix possible null deref in eeh_dump_dev_log() (Sam Bobroff) [1352405] - [edac] x86/MCE/AMD, EDAC/mce_amd: Add new error descriptions for some SMCA bank types (Janakarajan Natarajan) [1688469] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new McaTypes for CS, PSP, and SMU units (Janakarajan Natarajan) [1688469] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new MP5, NBIO, and PCIE SMCA bank types (Janakarajan Natarajan) [1688469] - [scsi] megaraid_sas: remove tech preview from Aero series (Tomas Henzl) [1668409] - [scsi] megaraid_sas: sync with mainline (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: fix spelling mistake "oustanding" -> "outstanding" (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Make megasas_host_device_list_query() static (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: reduce module load time (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove a bunch of set but not used variables (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: return error when create DMA pool failed (Tomas Henzl) [1668409] {CVE-2019-11810} - [scsi] scsi: megaraid_sas: driver version update (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Update structures for HOST_DEVICE_LIST DCMD (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add support for DEVICE_LIST DCMD in driver (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rework device add code in AEN path (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rework code to get PD and LD list (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: correct an info message (Tomas Henzl) [1668409] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Tomas Henzl) [1668409] - [scsi] scsi: megaraid: fix out-of-bound array accesses (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: changes to function prototypes (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: NULL check before some freeing functions is not needed (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas_fusion: Mark expected switch fall-through (Tomas Henzl) [1668409] - [scsi] scsi: megaraid: megaraid_sas_base: Mark expected switch fall-through (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: modify max supported lds related print (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: remove unused macro (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: increase timeout for IOC INIT to 180seconds (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove double endian conversion (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Re-use max_mfi_cmds to calculate queue sizes (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rename scratch_pad registers (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove spin lock for dpc operation (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: optimize raid context access in IO path (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fail init if heartbeat timer fails (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: For SRIOV, do not set STOP_ADP bit (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix combined reply queue mode detection (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix module parameter description (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix goto labels in error handling (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Update copyright information (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add check for reset adapter bit (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix msleep granularity (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add support for FW snap dump (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add watchdog thread to detect Firmware fault (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: switch to generic DMA API (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: fix a missing-check bug (Tomas Henzl) [1668409] - [kernel] get_maintainer.pl: Add default .get_maintainer.conf file for RHEL (Prarit Bhargava) [1714630] - [scripts] get_maintainer: allow option --mpath to read all files in (Prarit Bhargava) [1714630] - [scripts] get_maintainer.pl: add -mpath= for MAINTAINERS file location (Prarit Bhargava) [1714630] - [scripts] get_maintainer: allow usage outside of kernel tree (Prarit Bhargava) [1714630] - [scripts] Revert "[scripts] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override" (Prarit Bhargava) [1714630] - [include] signal: Make siginmask safe when passed a signal of 0 (Waiman Long) [1714351] - [fs] signal: Don't send signals to tasks that don't exist (Waiman Long) [1714351] - [kernel] signal: Restore the stop PTRACE_EVENT_EXIT (Waiman Long) [1714351] - [kernel] signal: Better detection of synchronous signals (Waiman Long) [1714351] - [kernel] signal: Always notice exiting tasks (Waiman Long) [1714351] - [kernel] signal: Always attempt to allocate siginfo for SIGSTOP (Waiman Long) [1714351] - [kernel] signal: Guard against negative signal numbers in copy_siginfo_from_user32 (Waiman Long) [1714351] - [kernel] signal: Guard against negative signal numbers in copy_siginfo_from_user (Waiman Long) [1714351] - [kernel] signal: In sigqueueinfo prefer sig not si_signo (Waiman Long) [1714351] - [include] signal: Use a smaller struct siginfo in the kernel (Waiman Long) [1714351] - [include] signal: Distinguish between kernel_siginfo and siginfo (Waiman Long) [1714351] - [kernel] signal: Introduce copy_siginfo_from_user and use it's return value (Waiman Long) [1714351] - [arm64] signal: Remove the need for __ARCH_SI_PREABLE_SIZE and SI_PAD_SIZE (Waiman Long) [1714351] - [kernel] signal: Fail sigqueueinfo if si_signo != sig (Waiman Long) [1714351] - [kernel] signal/sparc: Move EMT_TAGOVF into the generic siginfo.h (Waiman Long) [1714351] - [mm] signal/arm: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Use send_sig_fault where appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_ptrace_errno_trap (Waiman Long) [1714351] - [arm64] signal/arm64: In ptrace_hbptriggered name the signal description string (Waiman Long) [1714351] - [arm64] signal/arm64: Remove arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_mceerr as appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_fault where appropriate (Waiman Long) [1714351] - [mm] signal/arm64: Only call set_thread_esr once in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Only perform one esr_to_fault_info call in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Expand __do_user_fault and remove it (Waiman Long) [1714351] - [mm] signal/arm64: For clarity separate the 3 signal sending cases in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Consolidate the two hwpoison cases in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Factor set_thread_esr out of __do_user_fault (Waiman Long) [1714351] - [arm64] signal/arm64: Factor out arm64_show_signal from arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Remove unneeded tsk parameter from arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Push siginfo generation into arm64_notify_die (Waiman Long) [1714351] - [powerpc] signal/powerpc: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [powerpc] signal/powerpc: Simplify _exception_pkey by using force_sig_pkuerr (Waiman Long) [1714351] - [powerpc] signal/powerpc: Specialize _exception_pkey for handling pkey exceptions (Waiman Long) [1714351] - [powerpc] signal/powerpc: Call force_sig_fault from _exception (Waiman Long) [1714351] - [powerpc] signal/powerpc: Factor the common exception code into exception_common (Waiman Long) [1714351] - [powerpc] powerpc/traps: Print unhandled signals in a separate function (Waiman Long) [1714351] - [mm] signal/powerpc: Remove pkey parameter from __bad_area_nosemaphore (Waiman Long) [1714351] - [mm] signal/powerpc: Call _exception_pkey directly from bad_key_fault_exception (Waiman Long) [1714351] - [mm] signal/powerpc: Remove pkey parameter from __bad_area (Waiman Long) [1714351] - [mm] signal/powerpc: Use force_sig_mceerr as appropriate (Waiman Long) [1714351] - [x86] signal/x86: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [mm] signal/x86: Pass pkey by value (Waiman Long) [1714351] - [mm] signal/x86: Replace force_sig_info_fault with force_sig_fault (Waiman Long) [1714351] - [mm] signal/x86: Call force_sig_pkuerr from __bad_area_nosemaphore (Waiman Long) [1714351] - [mm] signal/x86: Pass pkey not vma into __bad_area (Waiman Long) [1714351] - [mm] signal/x86: Don't compute pkey in __do_page_fault (Waiman Long) [1714351] - [mm] signal/x86: Remove pkey parameter from mm_fault_error (Waiman Long) [1714351] - [mm] signal/x86: Remove the pkey parameter from do_sigbus (Waiman Long) [1714351] - [mm] signal/x86: Remove pkey parameter from bad_area_nosemaphore (Waiman Long) [1714351] - [x86] signal/x86/traps: Simplify trap generation (Waiman Long) [1714351] - [x86] signal/x86/traps: Use force_sig instead of open coding it. (Waiman Long) [1714351] - [x86] signal/x86/traps: Use force_sig_bnderr (Waiman Long) [1714351] - [x86] signal/x86/traps: Move more code into do_trap_no_signal so it can be reused (Waiman Long) [1714351] - [x86] signal/x86/traps: Factor out show_signal (Waiman Long) [1714351] - [x86] signal/x86: Move mpx siginfo generation into do_bounds (Waiman Long) [1714351] - [x86] signal/x86: In trace_mpx_bounds_register_exception add __user annotations (Waiman Long) [1714351] - [mm] signal/x86: Move MCE error reporting out of force_sig_info_fault (Waiman Long) [1714351] - [x86] signal/x86: Inline fill_sigtrap_info in it's only caller send_sigtrap (Waiman Long) [1714351] - [powerpc] signal: Simplify tracehook_report_syscall_exit (Waiman Long) [1714351] - [kernel] signal: Pair exports with their functions (Waiman Long) [1714351] - [kernel] signal: Remove specific_send_sig_info (Waiman Long) [1714351] - [kernel] signal: Use group_send_sig_info to kill all processes in a pid namespace (Waiman Long) [1714351] - [tty] tty_io: Use group_send_sig_info in __do_SACK to note it is a session being killed (Waiman Long) [1714351] - [misc] signal/GenWQE: Fix sending of SIGKILL (Waiman Long) [1714351] - [include] signal: Remove SEND_SIG_FORCED (Waiman Long) [1714351] - [kernel] signal: Use SEND_SIG_PRIV not SEND_SIG_FORCED with SIGKILL and SIGSTOP (Waiman Long) [1714351] - [kernel] signal: Never allocate siginfo for SIGKILL or SIGSTOP (Waiman Long) [1714351] - [usb] signal: Don't send siginfo to kthreads. (Waiman Long) [1714351] - [usb] signal: Remove the siginfo paramater from kernel_dqueue_signal (Waiman Long) [1714351] - [tty] signal: send_sig_all no longer needs SEND_SIG_FORCED (Waiman Long) [1714351] - [kernel] signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid namespace init (Waiman Long) [1714351] - [x86] signal: Properly deliver SIGSEGV from x86 uprobes (Waiman Long) [1714351] - [kernel] signal: Properly deliver SIGILL from uprobes (Waiman Long) [1714351] - [kernel] signal: Always ignore SIGKILL and SIGSTOP sent to the global init (Waiman Long) [1714351] - [iommu] mm: convert return type of handle_mm_fault() caller to vm_fault_t (Waiman Long) [1714351] - [kernel] signal: make get_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make sigkill_pending() return bool (Waiman Long) [1714351] - [kernel] signal: make legacy_queue() return bool (Waiman Long) [1714351] - [kernel] signal: make wants_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make flush_sigqueue_mask() void (Waiman Long) [1714351] - [kernel] signal: make unhandled_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make recalc_sigpending_tsk() return bool (Waiman Long) [1714351] - [kernel] signal: make has_pending_signals() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_task_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_handler_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make kill_ok_by_cred() return bool (Waiman Long) [1714351] - [kernel] signal: simplify rt_sigaction() (Waiman Long) [1714351] - [kernel] signal: make do_sigpending() void (Waiman Long) [1714351] - [kernel] signal: make may_ptrace_stop() return bool (Waiman Long) [1714351] - [kernel] signal: make kill_as_cred_perm() return bool (Waiman Long) [1714351] - [kernel] signal: make force_sigsegv() void (Waiman Long) [1714351] - [kernel] signal: Don't restart fork when signals come in. (Waiman Long) [1714351] - [kernel] fork: Have new threads join on-going signal group stops (Waiman Long) [1714351] - [include] fork: Skip setting TIF_SIGPENDING in ptrace_init_task (Waiman Long) [1714351] - [kernel] signal: Add calculate_sigpending() (Waiman Long) [1714351] - [kernel] fork: Unconditionally exit if a fatal signal is pending (Waiman Long) [1714351] - [kernel] fork: Move and describe why the code examines PIDNS_ADDING (Waiman Long) [1714351] - [kernel] signal: Push pid type down into complete_signal. (Waiman Long) [1714351] - [kernel] signal: Push pid type down into __send_signal (Waiman Long) [1714351] - [kernel] signal: Push pid type down into send_signal (Waiman Long) [1714351] - [tty] signal: Pass pid type into do_send_sig_info (Waiman Long) [1714351] - [fs] signal: Pass pid type into send_sigio_to_task & send_sigurg_to_task (Waiman Long) [1714351] - [kernel] signal: Pass pid type into group_send_sig_info (Waiman Long) [1714351] - [kernel] signal: Pass pid and pid type into send_sigqueue (Waiman Long) [1714351] - [kernel] posix-timers: Noralize good_sigevent (Waiman Long) [1714351] - [fs] signal: Use PIDTYPE_TGID to clearly store where file signals will be sent (Waiman Long) [1714351] - [kernel] pid: Implement PIDTYPE_TGID (Waiman Long) [1714351] - [include] pids: Move the pgrp and session pid pointers from task_struct to signal_struct (Waiman Long) [1714351] - [fs] pids: Compute task_tgid using signal->leader_pid (Waiman Long) [1714351] - [kernel] pids: Move task_pid_type into sched/signal.h (Waiman Long) [1714351] - [init] pids: Initialize leader_pid in init_task (Waiman Long) [1714351]- [s390] s390: enable processes for mio instructions (Philipp Rudo) [1651734] - [s390] s390/pci: add parameter to disable usage of MIO instructions (Philipp Rudo) [1651734] - [s390] s390/pci: provide support for MIO instructions (Philipp Rudo) [1651734] - [s390] s390/pci: improve bar check (Philipp Rudo) [1651734] - [s390] s390/ism: move oddities of device IO to wrapper function (Philipp Rudo) [1651734] - [s390] s390/pci: move io address mapping code to pci_insn.c (Philipp Rudo) [1651734] - [s390] s390/pci: add parameter to force floating irqs (Philipp Rudo) [1651735] - [s390] s390/pci: gather statistics for floating vs directed irqs (Philipp Rudo) [1651735] - [s390] s390: show statistics for MSI IRQs (Philipp Rudo) [1651735] - [s390] s390/pci: provide support for CPU directed interrupts (Philipp Rudo) [1651735] - [s390] s390/airq: provide cacheline aligned ivs (Philipp Rudo) [1651735] - [s390] s390/pci: clarify interrupt vector usage (Philipp Rudo) [1651735] - [s390] s390/airq: recognize directed interrupts (Philipp Rudo) [1651735] - [s390] s390/sclp: detect DIRQ facility (Philipp Rudo) [1651735] - [s390] s390/pci: move everything irq related to pci_irq.c (Philipp Rudo) [1651735] - [s390] s390/pci: remove stale rc (Philipp Rudo) [1651735] - [s390] s390/pci: remove unused define (Philipp Rudo) [1651735] - [s390] s390/pci: mark command line parser data __initdata (Philipp Rudo) [1651735] - [cpufreq] cpufreq: intel_pstate: Ignore turbo active ratio in HWP (David Arcari) [1711970] - [scsi] mpt3sas: remove tech preview from Aero series (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix indentation issue (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Update mpt3sas driver version to 28.100.00.00 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Improve the threshold value and introduce module param (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Load balance to improve performance and avoid soft lockups (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Irq poll to avoid CPU hard lockups (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: simplify interrupt handler (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix typo in request_desript_type (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add missing breaks in switch statements (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Update driver version to 27.102.00.00 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add support for ATLAS PCIe switch (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add support for NVMe Switch Adapter (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Rename mpi endpoint device ID macro. (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: mpt3sas_scsih: Mark expected switch fall-through (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix memory ordering on 64bit writes (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix spelling mistake "manufaucturing" -> "manufacturing" (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix driver modifying persistent data in Manufacturing page11 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Don't modify EEDPTagMode field setting on SAS3.5 HBA devices (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix Sync cache command failure during driver unload (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Call sas_remove_host before removing the target devices (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Refactor mpt3sas_wait_for_ioc function (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Separate out mpt3sas_wait_for_ioc (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Added new #define variable IOC_OPERATIONAL_WAIT_COUNT (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: switch to generic DMA API (Tomas Henzl) [1684444] - [tools] perf tools beauty ioctl: Support new ISO7816 commands (Michael Petlan) [1709243] - [tools] perf tools: Restore proper cwd on return from mnt namespace (Michael Petlan) [1709243] - [tools] perf tools: Fix crash on synthesizing the unit (Michael Petlan) [1709243] - [tools] perf tools: Do not zero sample_id_all for group members (Michael Petlan) [1709243] - [tools] perf beauty: Use SRCARCH, ARCH=x86_64 must map to "x86" to find the headers (Michael Petlan) [1709243] - [tools] perf intel-pt: Add MTC and CYC timestamps to debug log (Michael Petlan) [1709243] - [tools] perf intel-pt: Add more event information to debug log (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Fix table find when table re-ordered (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add help window (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add Selected branches report (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Fall back to /usr/local/lib/libxed.so (Michael Petlan) [1709243] - [tools] perf top: Display the LBR stats in callchain entry (Michael Petlan) [1709243] - [tools] perf stat: Handle different PMU names with common prefix (Michael Petlan) [1709243] - [tools] perf record: Support weak groups (Michael Petlan) [1709243] - [tools] perf evlist: Move perf_evsel__reset_weak_group into evlist (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Start collecting pathnames in the BPF program (Michael Petlan) [1709243] - [tools] perf trace: Fix setting of augmented payload when using eBPF + raw_syscalls (Michael Petlan) [1709243] - [tools] perf trace: When augmenting raw_syscalls plug raw_syscalls:sys_exit too (Michael Petlan) [1709243] - [tools] perf examples bpf: Start augmenting raw_syscalls:sys_{start,exit} (Michael Petlan) [1709243] - [tools] perf intel-pt/bts: Calculate cpumode for synthesized samples (Michael Petlan) [1709243] - [tools] perf intel-pt: Insert callchain context into synthesized callchains (Michael Petlan) [1709243] - [tools] perf top: Start display thread earlier (Michael Petlan) [1709243] - [tools] perf trace beauty: Use the mmap flags table generated from headers (Michael Petlan) [1709243] - [tools] perf beauty: Wire up the mmap flags table generator to the Makefile (Michael Petlan) [1709243] - [tools] perf beauty: Add a generator for MAP_ mmap's flag constants (Michael Petlan) [1709243] - [tools] perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc} (Michael Petlan) [1709243] - [tools] perf cs-etm: Correct CPU mode for samples (Michael Petlan) [1709243] - [tools] perf unwind: Take pgoff into account when reporting elf to libdwfl (Michael Petlan) [1709243] - [tools] perf top: Do not use overwrite mode by default (Michael Petlan) [1709243] - [tools] perf trace: Beautify mount's first pathname arg (Michael Petlan) [1709243] - [tools] perf trace: Beautify the umount's 'name' argument (Michael Petlan) [1709243] - [tools] perf trace: Consider syscall aliases too (Michael Petlan) [1709243] - [tools] perf trace beauty: Beautify mount/umount's 'flags' argument (Michael Petlan) [1709243] - [tools] perf trace beauty: Allow syscalls to mask an argument before considering it (Michael Petlan) [1709243] - [tools] perf beauty: Introduce strarray__scnprintf_flags() (Michael Petlan) [1709243] - [tools] perf beauty: Switch from GPL v2.0 to LGPL v2.1 (Michael Petlan) [1709243] - [tools] perf beauty: Add a generator for MS_ mount/umount's flag constants (Michael Petlan) [1709243] - [tools] tools include uapi: Grab a copy of linux/fs.h (Michael Petlan) [1709243] - [tools] perf script: Support total cycles count (Michael Petlan) [1709243] - [tools] perf script: Make itrace script default to all calls (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add All branches report (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to display all the database tables (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to shrink / enlarge font (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to find symbols in the call-graph (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add support for multiple sub-windows (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Rename to exported-sql-viewer.py (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Refactor TreeItem class (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Add data helper functions (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Factor out CallGraphModel from TreeModel (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Remove use of setObjectName() (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Add a class for global data (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Separate the database details into a class (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Make a "Main" function (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Change icon (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Set a minimum window size (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Provide better default column sizes (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Use SPDX license identifier (Michael Petlan) [1709243] - [tools] perf trace: Introduce per-event maximum number of events property (Michael Petlan) [1709243] - [tools] perf script: Flush output stream after events in verbose mode (Michael Petlan) [1709243] - [tools] perf script: Allow extended console debug output (Michael Petlan) [1709243] - [tools] perf stat: Poll for monitored tasks being alive (Michael Petlan) [1709243] - [tools] perf trace: Drop thread refcount in trace__event_handler() (Michael Petlan) [1709243] - [tools] perf trace: Drop addr_location refcounts (Michael Petlan) [1709243] - [tools] perf evsel: Mark a evsel as disabled when asking the kernel do disable it (Michael Petlan) [1709243] - [tools] perf evsel: Introduce per event max_events property (Michael Petlan) [1709243] - [tools] tools lib subcmd: Introduce OPTION_ULONG (Michael Petlan) [1709243] - [tools] perf arm64: Fix generate system call table failed with /tmp mounted with noexec (Michael Petlan) [1709243] - [tools] perf symbols: Set PLT entry/header sizes properly on Sparc (Michael Petlan) [1709243] - [tools] perf jitdump: Add Sparc support. (Michael Petlan) [1709243] - [tools] perf annotate: Add Sparc support (Michael Petlan) [1709243] - [tools] perf record: Encode -k clockid frequency into Perf trace (Michael Petlan) [1709243] - [tools] perf probe: Support SDT markers having reference counter (semaphore) (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Move struct tep_handler definition in a local header file (Michael Petlan) [1709243] - [tools] tools lib traceevent: Separate out tep_strerror() for strerror_r() issues (Michael Petlan) [1709243] - [tools] perf python: More portable way to make CFLAGS work with clang (Michael Petlan) [1709243] - [tools] perf python: Make clang_has_option() work on Python 3 (Michael Petlan) [1709243] - [tools] perf tools: Free temporary 'sys' string in read_event_files() (Michael Petlan) [1709243] - [tools] perf tools: Avoid double free in read_event_file() (Michael Petlan) [1709243] - [tools] perf tools: Free 'printk' string in parse_ftrace_printk() (Michael Petlan) [1709243] - [tools] perf tools: Cleanup trace-event-info 'tdata' leak (Michael Petlan) [1709243] - [tools] perf strbuf: Match va_{add,copy} with va_end (Michael Petlan) [1709243] - [tools] perf test: S390 does not support watchpoints in test 22 (Michael Petlan) [1709243] - [tools] perf auxtrace: Include missing asm/bitsperlong.h to get BITS_PER_LONG (Michael Petlan) [1709243] - [tools] tools include: Adopt linux/bits.h (Michael Petlan) [1709243] - [tools] perf intel-pt: Implement decoder flags for trace begin / end (Michael Petlan) [1709243] - [tools] perf intel-pt: Add decoder flags for trace begin / end (Michael Petlan) [1709243] - [tools] perf tools: Improve thread_stack__process() for trace begin / end (Michael Petlan) [1709243] - [tools] perf tools: Improve thread_stack__event() for trace begin / end (Michael Petlan) [1709243] - [tools] perf db-export: Add trace begin / end branch type variants (Michael Petlan) [1709243] - [tools] perf script: Enhance sample flags for trace begin / end (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enum filter_trivial_type (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename data2host*() APIs (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename struct plugin_list to struct tep_plugin_list (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to structs filter_type and event_filter (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to various structs filter_arg_*. (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to struct filter_{arg,value_type} (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enums filter_{exp,arg}_type (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enums filter_{boolean,op,cmp}_type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename enum print_arg_type to enum tep_print_arg_type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Add prefix tep_ to all print_* structures (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix TEP_ to all EVENT_FL_* flags (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename enum event_{sort_}type to enum tep_event_{sort_}type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename enum format_flags to enum tep_format_flags (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename struct format{_field} to struct tep_format{_field} (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename struct event_format to struct tep_event_format (Michael Petlan) [1709243] - [tools] perf script: Print DSO for callindent (Michael Petlan) [1709243] - [tools] perf script: Allow sym and dso without ip, addr (Michael Petlan) [1709243] - [tools] tools lib subcmd: Support overwriting the pager (Michael Petlan) [1709243] - [tools] perf tools: Report itrace options in help (Michael Petlan) [1709243] - [tools] perf help: Add missing subcommand `version` (Michael Petlan) [1709243] - [tools] perf tools: Initialize perf_data_file fd field (Michael Petlan) [1709243] - [tools] perf util: Make copyfile_offset() global (Michael Petlan) [1709243] - [tools] perf tools: Add 'struct perf_mmap' arg to record__write() (Michael Petlan) [1709243] - [tools] perf auxtrace: Pass struct perf_mmap into mmap__read* functions (Michael Petlan) [1709243] - [tools] perf tools: Remove perf_tool from event_op3 (Michael Petlan) [1709243] - [tools] perf tools: Remove perf_tool from event_op2 (Michael Petlan) [1709243] - [tools] perf bpf-loader: use PTR_ERR_OR_ZERO inetead of return code (Michael Petlan) [1709243] - [tools] tools include: Adopt PTR_ERR_OR_ZERO from the kernel err.h header (Michael Petlan) [1709243] - [tools] perf ordered_events: Prevent crossing max_alloc_size (Michael Petlan) [1709243] - [tools] perf ordered_events: Add 'struct ordered_events_buffer' layer (Michael Petlan) [1709243] - [tools] perf test: Add watchpoint test (Michael Petlan) [1709243] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo (Michael Petlan) [1709243] - [tools] perf map: Turn some pr_warning() to pr_debug() (Michael Petlan) [1709243] - [tools] perf trace: Use the raw_syscalls:sys_enter for the augmented syscalls (Michael Petlan) [1709243] - [tools] perf trace: Setup augmented_args in the raw_syscalls:sys_enter handler (Michael Petlan) [1709243] - [tools] perf trace: Introduce syscall__augmented_args() method (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Avoid optimization to pass older BPF validators (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Check probe_read_str() return separately (Michael Petlan) [1709243] - [tools] perf annotate: Handle arm64 move instructions (Michael Petlan) [1709243] - [tools] perf trace beauty: Alias 'umount' to 'umount2' (Michael Petlan) [1709243] - [tools] perf stat: Move the display functions to stat-display.c (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_events' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'walltime_*' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Propagate 'struct target' arg to sort_aggr_thread() (Michael Petlan) [1709243] - [tools] perf stat: Move 'no_merge' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'big_num' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Do not use the global 'evsel_list' in print functions (Michael Petlan) [1709243] - [tools] perf stat: Move *_aggr_* data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move ru_* data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'print_mixed_hw_group_error' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'print_free_counters_hint' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'null_run' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Add 'walltime_nsecs_stats' pointer to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Pass 'evlist' to aggr_update_shadow() (Michael Petlan) [1709243] - [tools] perf stat: Pass 'struct perf_stat_config' to first_shadow_cpu() (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_only_len' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'run_count' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use 'evsel->evlist' instead of 'evsel_list' in collect_all_aliases() (Michael Petlan) [1709243] - [tools] perf stat: Pass 'evlist' argument to print functions (Michael Petlan) [1709243] - [tools] perf stat: Add 'target' argument to perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move 'unit_width' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_only' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'interval_clear' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move csv_* to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Pass a 'struct perf_stat_config' argument to global print functions (Michael Petlan) [1709243] - [tools] perf stat: Pass 'struct perf_stat_config' argument to local print functions (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_stat_config' argument to perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move STAT_RECORD out of perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Introduce perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move perf_stat_synthesize_config() to stat.c (Michael Petlan) [1709243] - [tools] perf stat: Add 'perf_event__handler_t' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_evlist' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_tool' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_stat_config' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Rename 'is_pipe' argument to 'attrs' in perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Move create_perf_stat_counter() to stat.c (Michael Petlan) [1709243] - [tools] perf evsel: Introduce perf_evsel__store_ids() (Michael Petlan) [1709243] - [tools] perf tools: Switch 'session' argument to 'evlist' in perf_event__synthesize_attrs() (Michael Petlan) [1709243] - [tools] perf stat: Add 'identifier' flag to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use local config arg for scale in create_perf_stat_counter() (Michael Petlan) [1709243] - [tools] perf stat: Move 'no_inherit' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'initial_delay' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use evsel->threads in create_perf_stat_counter() (Michael Petlan) [1709243] - [tools] perf trace: Show comm and tid for tracepoint events (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Hook into syscalls:sys_exit_SYSCALL too (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Rename augmented_*_syscall__enter to just *_syscall (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Update the header comments (Michael Petlan) [1709243] - [tools] perf bpf: Add syscall_exit() helper (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Split trace-seq related APIs in a separate header file (Michael Petlan) [1709243] - [tools] perf report: Create auxiliary trace data files for s390 (Michael Petlan) [1709243] - [tools] perf trace beauty: Reorganize 'struct sockaddr *' beautifier (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment sendto's 'addr' arg (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment bind's 'myaddr' sockaddr arg (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Add augmented_sockaddr_syscall_enter() (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment connect's 'sockaddr' arg (Michael Petlan) [1709243] - [tools] perf bpf: Add linux/socket.h to the headers accessible to bpf proggies (Michael Petlan) [1709243] - [tools] perf bpf: Give precedence to bpf header dir (Michael Petlan) [1709243] - [tools] perf trace: Add a etcsnoop.c augmented syscalls eBPF utility (Michael Petlan) [1709243] - [tools] perf trace: Augment 'newstat' (aka 'stat') filename ptr (Michael Petlan) [1709243] - [tools] perf trace: Introduce augmented_filename_syscall_enter() declarator (Michael Petlan) [1709243] - [tools] perf trace: Augment inotify_add_watch pathname syscall arg (Michael Petlan) [1709243] - [tools] perf trace: Augment the 'open' syscall 'filename' arg (Michael Petlan) [1709243] - [tools] perf trace: Use the augmented filename, expanding syscall enter pointers (Michael Petlan) [1709243] - [tools] perf trace: Show comm/tid for augmented_syscalls (Michael Petlan) [1709243] - [tools] perf trace: Extract the comm/tid printing for syscall enter (Michael Petlan) [1709243] - [tools] perf trace: Print the syscall name for augmented_syscalls (Michael Petlan) [1709243] - [tools] perf trace: Make the augmented_syscalls filter out the tracepoint event (Michael Petlan) [1709243] - [tools] perf trace: Pass augmented args to the arg formatters when available (Michael Petlan) [1709243] - [x86] perf/x86/intel: Disallow precise_ip on BTS events (Michael Petlan) [1709243] - [x86] perf/x86/intel: Add generic branch tracing check to intel_pmu_has_bts() (Michael Petlan) [1709243] - [x86] perf/x86/intel: Move branch tracing setup to the Intel-specific source file (Michael Petlan) [1709243] - [x86] perf/x86/intel: Fix regression by default disabling perfmon v4 interrupt handling (Michael Petlan) [1709243] - [x86] perf/x86/intel/uncore: Support CoffeeLake 8th CBOX (Michael Petlan) [1709243] - [x86] perf/x86/intel/uncore: Add more IMC PCI IDs for KabyLake and CoffeeLake CPUs (Michael Petlan) [1709243] - [tools] perf tools: Don't clone maps from parent when synthesizing forks (Michael Petlan) [1709243] - [tools] perf top: Allow disabling the overwrite mode (Michael Petlan) [1709243] - [kernel] perf/core: Clean up inconsisent indentation (Michael Petlan) [1709243] - [tools] perf script: Implement --graph-function (Michael Petlan) [1709243] - [tools] tools script: Add --call-trace and --call-ret-trace (Michael Petlan) [1709243] - [tools] perf script: Add --insn-trace for instruction decoding (Michael Petlan) [1709243] - [tools] perf trace: Introduce --max-events (Michael Petlan) [1709243] - [x86] perf/x86/intel: Add quirk for Goldmont Plus (Michael Petlan) [1709243] - [kernel] perf: Suppress AUX/OVERWRITE records (Michael Petlan) [1709243] - [x86] perf/x86/intel/pt: Annotate 'pt_cap_group' with __ro_after_init (Michael Petlan) [1709243] - [x86] perf/x86: Add __ro_after_init annotations (Michael Petlan) [1709243] - [x86] x86/mm/mem_encrypt: Disable all instrumentation for early SME setup (Janakarajan Natarajan) [1679265] - [fs] cifs: fix copy_file_range to allow write on the same file (Leif Sahlberg) [1689100] - [infiniband] Revert "[infiniband] IB/usnic: Remove stub functions" (Jonathan Toppins) [1713753] - [x86] Update stepping values for Whiskey Lake U/Y (David Arcari) [1704801] - [powerpc] powerpc/perf: Trace imc PMU functions (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Trace imc events detection and cpuhotplug (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Declare static identifier a such (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Add privileged access check for thread_imc (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Rearrange setting of ldbar for thread-imc (Jiri Olsa) [1608796] - [powerpc] powerpc/include: Add data structures and macros for IMC trace mode (Jiri Olsa) [1608796] - [scsi] hpsa: correct-static-checker-issue-in-reset-handler (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: update driver version (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct device resets (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: do-not-complete-cmds-for-deleted-devices (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: wait longer for ptraid commands (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: check for tag collision (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: use local workqueues instead of system workqueues (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct simple mode (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: bump driver version (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct device id issues (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: check for lv removal (Joseph Szczypek) [1713772] - [mm] mm, slub: restore the original intention of prefetch_freepointer() (Rafael Aquini) [1714671] - [fs] Revert "add KABI padding to dentry structure" (Waiman Long) [1714253] - [crypto] crypto: drbg - add FIPS 140-2 CTRNG for noise source (Herbert Xu) [1687905] - [infiniband] RDMA/qedr: Fix incorrect device rate. (Manish Chopra) [1713580] - [scsi] scsi: bnx2fc: remove unneeded variable (Nilesh Javali) [1665308] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Nilesh Javali) [1665308] - [char] ipmi:ssif: compare block number correctly for multi-part return messages (Tony Camuso) [1712159] - [kernel] kernel/sysctl.c: define minmax conv functions in terms of non-minmax versions (Alex Gladkov) [1683922] - [kernel] kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv (Alex Gladkov) [1683922] - [tools] tools/testing/selftests/sysctl/sysctl.sh: add tests for >32-bit values written to 32-bit integers (Alex Gladkov) [1683922] - [kernel] sched/nohz: Run NOHZ idle load balancer on HK_FLAG_MISC CPUs (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] nohz_full: Allow the boot CPU to be nohz_full (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/isolation: Require a present CPU in housekeeping mask (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] kernel/cpu: Allow non-zero CPU to be primary for suspend / kexec freeze (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] power/suspend: Add function to disable secondaries for suspend (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/core: Allow the remote scheduler tick to be started on CPU0 (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/fair: Use non-atomic cpumask_{set,clear}_cpu() (Desnes Augusto Nunes do Rosario) [1666614] - [lib] lib: reciprocal_div: implement the improved algorithm on the paper mentioned (Petr Oros) [1706982] - [kernel] kernel/sysctl.c: fix proc_do_large_bitmap for large input buffers (Eric Sandeen) [1667092] - [kernel] tools/testing/selftests/sysctl/sysctl.sh: add proc_do_large_bitmap() test case (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: allow graceful use on older kernels (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: ignore diff output on verify_diff_w() (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: load module before testing for it (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: remove superfluous test_reqs() (Eric Sandeen) [1667092] - [kernel] kernel/sysctl.c: fix out-of-bounds access when setting file-max (Eric Sandeen) [1694160] - [kernel] sysctl: handle overflow for file-max (Eric Sandeen) [1694160] - [kernel] sysctl: handle overflow in proc_get_long (Eric Sandeen) [1694160] - [s390] kvm: s390: Fix potential spectre warnings (Thomas Huth) [1702344] - [powerpc] mm: move warning from resize_hpt_for_hotplug() (Laurent Vivier) [1660737] - [powerpc] pseries: Use pr_xxx() in lpar.c (Laurent Vivier) [1660737] - [infiniband] RDMA/iw_cxgb4: Always disconnect when QP is transitioning to TERMINATE state (Arjun Vynipadath) [1664673] - [infiniband] cxgb4: kfree mhp after the debug print (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxbg: Use correct sizing on buffers holding page DMA addresses (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Make function read_tcb() static (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Remove kref accounting for sync operation (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: cq/qp mask depends on bar2 pages in a host page (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: fix srqidx leak during connection abort (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: complete the cached SRQ buffers (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Remove a set-but-not-used variable (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use tos when finding ipv6 routes (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use tos when importing the endpoint (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use listening ep tos when accepting new connections (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb*: kzalloc the iwcm verbs struct (Arjun Vynipadath) [1664673] - [infiniband] RDMA/iw_cxgb4: Drop __GFP_NOFAIL (Arjun Vynipadath) [1664673] - [infiniband] infiniband: cxgb4: no need to check return value of debugfs_create functions (Arjun Vynipadath) [1664673] - [infiniband] RDMA/iw_cxgb4: Fix the unchecked ep dereference (Arjun Vynipadath) [1664673] - [infiniband] RDMA: Introduce and use rdma_device_to_ibdev() (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Check for send WR also while posting write with completion WR (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: only reconnect with MPAv1 if the peer aborts (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Use proper enumerated type in c4iw_bar2_addrs (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: remove redundant null pointer check before kfree_skb (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Remove pci_unmap_addr() wrappers for DMA API (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Declare ib_post_send() and ib_post_recv() arguments const (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Simplify a structure initialization (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Fix SRQ endianness annotations (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Add support for kernel mode SRQ's (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Add support for srq functions & structs (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Restore the dropped uninitialized_var (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Make c4iw_poll_cq_one() easier to analyze (Arjun Vynipadath) [1664673] - [fs] gfs2: clean_journal improperly set sd_log_flush_head (Robert S Peterson) [1693660]- [netdrv] bonding/802.3ad: fix slave link initialization transition states (Jarod Wilson) [1714387] - [iommu] iommu/vt-d: Disable ATS support on untrusted devices (Jerry Snitselaar) [1649210 1692246] - [documentation] thunderbolt: Export IOMMU based DMA protection support to userspace (Jerry Snitselaar) [1649210 1692246] - [iommu] iommu/vt-d: Do not enable ATS for untrusted devices (Jerry Snitselaar) [1649210 1692246] - [iommu] iommu/vt-d: Force IOMMU on for platform opt in hint (Jerry Snitselaar) [1649210 1692246] - [arm64] arm64: makefile fix build of .i file in external module case (Jerome Marchand) [1713052] - [s390] s390/protvirt: block kernel command line alteration (Philipp Rudo) [1651711] - [s390] s390/protvirt: add memory sharing for diag 308 set/store (Philipp Rudo) [1651711] - [s390] s390/uv: introduce guest side ultravisor code (Philipp Rudo) [1651711] - [netdrv] net: aquantia: fix undefined devm_hwmon_device_register_with_info reference (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Make aq_ndev_driver_name static (Igor Russkikh) [1706905] - [netdrv] net: aquantia: remove outdated device ids (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixups on 64bit dma counters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: get total counters from DMA block (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fetch up to date statistics on ethtool request (Igor Russkikh) [1706905] - [netdrv] net: aquantia: extract timer cb into work job (Igor Russkikh) [1706905] - [netdrv] net: aquantia: introduce fwreq mutex (Igor Russkikh) [1706905] - [netdrv] net: aquantia: user correct MSI irq type (Igor Russkikh) [1706905] - [netdrv] net: aquantia: use macros for better visibility (Igor Russkikh) [1706905] - [netdrv] net: aquantia: improve ifup link detection (Igor Russkikh) [1706905] - [netdrv] net: aquantia: link status irq handling (Igor Russkikh) [1706905] - [netdrv] net: aquantia: create global service workqueue (Igor Russkikh) [1706905] - [netdrv] net: aquantia: link interrupt handling function (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add link interrupt fields (Igor Russkikh) [1706905] - [netdrv] net: aquantia: implement hwmon api for chip temperature (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add infrastructure to readout chip temperature (Igor Russkikh) [1706905] - [netdrv] net: aquantia: enable driver build for arm64 or compile_test (Igor Russkikh) [1706905] - [netdrv] net: aquantia: improve LRO configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Increase rx ring default size from 1K to 2K (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Make RX default frame size 2K (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Introduce rx refill threshold value (Igor Russkikh) [1706905] - [netdrv] net: aquantia: optimize rx performance by page reuse strategy (Igor Russkikh) [1706905] - [netdrv] net: aquantia: optimize rx path using larger preallocated skb len (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix rx checksum offload for UDP/TCP over IPv6 (Igor Russkikh) [1706905] - [netdrv] net: aquantia: use better wrappers for state registers (Igor Russkikh) [1706905] - [netdrv] net: aquantia: replace AQ_HW_WAIT_FOR with readx_poll_timeout_atomic (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed instack structure overflow (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed buffer overflow (Igor Russkikh) [1706905] - [netdrv] net: aquantia: added newline at end of file (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed memcpy size (Igor Russkikh) [1706905] - [netdrv] net: aquantia: regression on cpus with high cores: set mode with 8 queues (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of RSS configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix initialization of RSS table (Igor Russkikh) [1706905] - [netdrv] net: aquantia: increase max number of hw queues (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix RSS table and key sizes (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix rx checksum offload bits (Igor Russkikh) [1706905] - [netdrv] net: aquantia: return 'err' if set MPI_DEINIT state fails (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix spelling mistake "specfield" -> "specified" (Igor Russkikh) [1706905] - [netdrv] net: aquantia: cleanup err handing in hw_atl_utils_fw_rpc_wait (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of rx-vlan-filter offload (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add ethertype and PCP to rx flow filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add vlan id to rx flow filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of L3/L4 ntuple filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add infrastructure for ntuple rules (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add rx-flow filter definitions (Igor Russkikh) [1706905] - [netdrv] net: aquantia: allow rx checksum offload configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: invalid checksumm offload implementation (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed enable unicast on 32 macvlan (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix potential IOMMU fault after driver unbind (Igor Russkikh) [1706905] - [netdrv] net: aquantia: synchronized flow control between mac/phy (Igor Russkikh) [1706905] - [netdrv] net: aquantia: make function aq_fw2x_update_stats static (Igor Russkikh) [1706905] - [netdrv] net: aquantia: remove some redundant variable initializations (Igor Russkikh) [1706905] - [netdrv] bnxt_en: Add device IDs 0x1806 and 0x1752 for 57500 devices. (Selvin Xavier) [1672208] - [scsi] scsi: fnic: Remove set but not used variable 'vdev' (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: no need to check return value of debugfs_create functions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Update fnic driver version to 1.6.0.47 (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Enable fnic devcmd2 interface (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Adding devcmd2 init and posting interfaces (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Add devcmd2 initialization helpers (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic devcmd2 controller definitions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic devcmd2 interface definitions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Impose upper limit on max. # of CQs processed per intr (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: RQ enable and then post descriptors (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: delaying vnic dev enable till after req intr (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Warn when calling done for IO not issued to fw (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic stats for max CQs processed and ISR time (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Add port speed stat to fnic debug stats (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: use fnic_lock to guard fnic->state_flags (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: vnic_rq_clean change BUG_ON to WARN_ON (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: change fnic queue depth to 256 (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: support to display 20G port speed (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Use vzalloc (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: switch to generic DMA API (Govindarajulu Varadarajan) [1656236] - [pci] PCI/PME: Fix possible use-after-free on remove (Myron Stowe) [1701834] - [pci] PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() (Myron Stowe) [1701834] - [pci] PCI: Blacklist power management of Gigabyte X299 DESIGNARE EX PCIe ports (Myron Stowe) [1701834] - [tools] perf arm64: Fix mksyscalltbl when system kernel headers are ahead of the kernel (Michael Petlan) [1709242] - [rpmspec] perf: remove bpf examples (Michael Petlan) [1709242] - [tools] perf tools: Stop fallbacking to kallsyms for vdso symbols lookup (Michael Petlan) [1709242] - [tools] perf report: Don't crash on invalid inline debug information (Michael Petlan) [1709242] - [tools] perf cpu_map: Align cpu map synthesized events properly. (Michael Petlan) [1709242] - [tools] perf tools: Fix tracing_path_mount proper path (Michael Petlan) [1709242] - [tools] perf evsel: Store ids for events with their own cpus perf_event__synthesize_event_update_cpus (Michael Petlan) [1709242] - [tools] perf vendor events intel: Fix wrong filter_band* values for uncore events (Michael Petlan) [1709242] - [tools] Revert "perf tools: Fix PMU term format max value calculation" (Michael Petlan) [1709242] - [tools] tools headers uapi: Sync kvm.h copy (Michael Petlan) [1709242] - [tools] perf record: Use unmapped IP for inline callchain cursors (Michael Petlan) [1709242] - [tools] perf python: Use -Wno-redundant-decls to build with PYTHON=python3 (Michael Petlan) [1709242] - [tools] perf report: Don't try to map ip to invalid map (Michael Petlan) [1709242] - [tools] perf script python: Fix export-to-sqlite.py sample columns (Michael Petlan) [1709242] - [tools] perf script python: Fix export-to-postgresql.py occasional failure (Michael Petlan) [1709242] - [tools] perf Documentation: Fix out-of-tree asciidoctor man page generation (Michael Petlan) [1709242] - [tools] perf tools: Fix maps__find_symbol_by_name() (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/if_link.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/vhost.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copies of kvm headers (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of drm/drm.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of asm-generic/unistd.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1709242] - [tools] perf annotate: Fix parsing aarch64 branch instructions after objdump update (Michael Petlan) [1709242] - [tools] perf probe powerpc: Ignore SyS symbols irrespective of endianness (Michael Petlan) [1709242] - [tools] perf event-parse: Use fixed size string for comms (Michael Petlan) [1709242] - [tools] perf util: Fix bad memory access in trace info. (Michael Petlan) [1709242] - [tools] perf tools: Streamline bpf examples and headers installation (Michael Petlan) [1709242] - [tools] perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx() (Michael Petlan) [1709242] - [tools] perf arm64: Fix include path for asm-generic/unistd.h (Michael Petlan) [1709242] - [tools] perf tests: Add breakpoint modify tests (Michael Petlan) [1709242] - [tools] perf annotate: Properly interpret indirect call (Michael Petlan) [1709242] - [tools] tools/lib/lockdep: Add dummy task_struct state member (Michael Petlan) [1709242] - [tools] tools/lib/lockdep: Add empty nmi.h (Michael Petlan) [1709242] - [tools] tools lib traceevent: Change to SPDX License format (Michael Petlan) [1709242] - [tools] perf llvm: Allow passing options to llc in addition to clang (Michael Petlan) [1709242] - [tools] perf parser: Improve error message for PMU address filters (Michael Petlan) [1709242] - [tools] perf tools: Disable parallelism for 'make clean' (Michael Petlan) [1709242] - [tools] perf auxtrace: Fix queue resize (Michael Petlan) [1709242] - [tools] perf python: Remove -mcet and -fcf-protection when building with clang (Michael Petlan) [1709242] - [tools] perf arm spe: Fix uninitialized record error variable (Michael Petlan) [1709242] - [tools] perf tools: Move syscall_64.tbl check into check-headers.sh (Michael Petlan) [1709242] - [tools] perf tools: Make check-headers.sh check based on kernel dir (Michael Petlan) [1709242] - [tools] perf tools: Fix check-headers.sh AND list path of execution (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename static variables and functions in event-parse.c (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename various pevent APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename internal parser related APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename various pevent get/set/is APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_find_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent field APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_data_ APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_register / unregister APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_filter* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename traceevent_plugin_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_function* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, tools lib lockdep: Rename 'enum pevent_errno' to 'enum tep_errno' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename 'enum pevent_flag' to 'enum tep_flag' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename traceevent_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_set_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_register_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_read_number_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent print APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent parse APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent find APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent alloc / free APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent plugin related APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename 'struct pevent_record' to 'struct tep_record' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename struct pevent to struct tep_handle (Michael Petlan) [1709242] - [tools] perf probe powerpc: Fix trace event post-processing (Michael Petlan) [1709242] - [tools] perf map: Optimize maps__fixup_overlappings() (Michael Petlan) [1709242] - [tools] perf map: Synthesize maps only for thread group leader (Michael Petlan) [1709242] - [tools] perf trace: Wire up the augmented syscalls with the syscalls:sys_enter_FOO beautifier (Michael Petlan) [1709242] - [tools] perf trace: Setup the augmented syscalls bpf-output event fields (Michael Petlan) [1709242] - [tools] perf bpf: Make bpf__setup_output_event() return the bpf-output event (Michael Petlan) [1709242] - [tools] perf trace: Handle "bpf-output" events associated with "__augmented_syscalls__" BPF map (Michael Petlan) [1709242] - [tools] perf bpf: Add wrappers to BPF_FUNC_probe_read(_str) functions (Michael Petlan) [1709242] - [tools] perf bpf: Add bpf__setup_output_event() strerror() counterpart (Michael Petlan) [1709242] - [tools] perf bpf: Generalize bpf__setup_stdout() (Michael Petlan) [1709242] - [tools] perf bpf: Make bpf__for_each_stdout_map() generic (Michael Petlan) [1709242] - [tools] perf bpf: Add bpf/stdio.h wrapper to bpf_perf_event_output function (Michael Petlan) [1709242] - [tools] perf bpf: Add struct bpf_map struct (Michael Petlan) [1709242] - [tools] perf report: Add --percent-type option (Michael Petlan) [1709242] - [tools] perf annotate: Add --percent-type option (Michael Petlan) [1709242] - [tools] perf annotate: Display percent type in stdio output (Michael Petlan) [1709242] - [tools] perf annotate: Make local period the default percent type (Michael Petlan) [1709242] - [tools] perf annotate: Add support to toggle percent type (Michael Petlan) [1709242] - [tools] perf annotate: Pass browser percent_type in annotate_browser__calc_percent() (Michael Petlan) [1709242] - [tools] perf annotate: Pass 'struct annotation_options' to map_symbol__annotation_dump() (Michael Petlan) [1709242] - [tools] perf annotate: Pass struct annotation_options to symbol__calc_lines() (Michael Petlan) [1709242] - [tools] perf annotate: Add percent_type to struct annotation_options (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_PERIOD_GLOBAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_PERIOD_LOCAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_HITS_GLOBAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Switch struct annotation_data::percent to array (Michael Petlan) [1709242] - [tools] perf annotate: Loop group events directly in annotation__calc_percent() (Michael Petlan) [1709242] - [tools] perf annotate: Rename hist to sym_hist in annotation__calc_percent (Michael Petlan) [1709242] - [tools] perf annotate: Rename local sample variables to data (Michael Petlan) [1709242] - [tools] perf annotate: Rename struct annotation_line::samples* to data* (Michael Petlan) [1709242] - [tools] perf annotate: Get rid of annotation__scnprintf_samples_period() (Michael Petlan) [1709242] - [tools] perf annotate: Make annotation_line__max_percent static (Michael Petlan) [1709242] - [tools] perf annotate: Make symbol__annotate_fprintf2() local (Michael Petlan) [1709242] - [tools] perf bpf: Add 'syscall_enter' probe helper for syscall enter tracepoints (Michael Petlan) [1709242] - [tools] perf tools: Drop unneeded bitmap_zero() calls (Michael Petlan) [1709242] - [tools] perf vendor events arm64: Enable JSON events for eMAG (Michael Petlan) [1709242] - [tools] perf report: Add GUI report support for s390 auxiliary trace (Michael Petlan) [1709242] - [tools] perf report: Add raw report support for s390 auxiliary trace (Michael Petlan) [1709242] - [tools] perf auxtrace: Support for perf report -D for s390 (Michael Petlan) [1709242] - [tools] perf trace: Use perf_evsel__sc_tp_{uint,ptr} for "id"/"args" handling syscalls:* events (Michael Petlan) [1709242] - [tools] perf trace: Setup struct syscall_tp for syscalls:sys_{enter,exit}_NAME events (Michael Petlan) [1709242] - [tools] perf trace: Allow setting up a syscall_tp struct without a format_field (Michael Petlan) [1709242] - [tools] perf trace: Rename some syscall_tp methods to raw_syscall (Michael Petlan) [1709242] - [tools] perf trace: Use beautifiers on syscalls:sys_enter_ handlers (Michael Petlan) [1709242] - [tools] perf trace: Associate vfs_getname()'ed pathname with fd returned from 'openat' (Michael Petlan) [1709242] - [tools] perf trace: Do not require --no-syscalls to suppress strace like output (Michael Petlan) [1709242] - [tools] perf bpf: Include uapi/linux/bpf.h from the 'perf trace' script's bpf.h (Michael Petlan) [1709242] - [tools] perf tools: Allow overriding MAX_NR_CPUS at compile time (Michael Petlan) [1709242] - [tools] perf bpf: Show better message when failing to load an object (Michael Petlan) [1709242] - [tools] perf list: Unify metric group description format with PMU event description (Michael Petlan) [1709242] - [tools] perf cs-etm: Generate branch sample for CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Generate branch sample when receiving a CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Support dummy address value for CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Fix start tracing packet handling (Michael Petlan) [1709242] - [tools] perf build: Fix installation directory for eBPF (Michael Petlan) [1709242] - [tools] perf c2c report: Fix crash for empty browser (Michael Petlan) [1709242] - [tools] perf tests: Fix indexing when invoking subtests (Michael Petlan) [1709242] - [tools] perf trace: Beautify the AF_INET & AF_INET6 'socket' syscall 'protocol' args (Michael Petlan) [1709242] - [tools] perf trace beauty: Add beautifiers for 'socket''s 'protocol' arg (Michael Petlan) [1709242] - [tools] perf trace beauty: Do not print NULL strarray entries (Michael Petlan) [1709242] - [tools] perf beauty: Add a generator for IPPROTO_ socket's protocol constants (Michael Petlan) [1709242] - [tools] tools include uapi: Grab a copy of linux/in.h (Michael Petlan) [1709242] - [tools] perf tests: Fix complex event name parsing (Michael Petlan) [1709242] - [tools] perf evlist: Fix error out while applying initial delay and LBR (Michael Petlan) [1709242] - [tools] perf trace beauty: Default header_dir to cwd to work without parms (Michael Petlan) [1709242] - [tools] perf test: Fix subtest number when showing results (Michael Petlan) [1709242] - [tools] perf stat: Get rid of extra clock display function (Michael Petlan) [1709242] - [tools] perf tools: Use perf_evsel__match instead of open coded equivalent (Michael Petlan) [1709242] - [tools] perf tools: Fix struct comm_str removal crash (Michael Petlan) [1709242] - [tools] perf machine: Use last_match threads cache only in single thread mode (Michael Petlan) [1709242] - [tools] perf machine: Add threads__set_last_match function (Michael Petlan) [1709242] - [tools] perf machine: Add threads__get_last_match function (Michael Petlan) [1709242] - [tools] perf tools: Synthesize GROUP_DESC feature in pipe mode (Michael Petlan) [1709242] - [tools] perf script: Show correct offsets for DWARF-based unwinding (Michael Petlan) [1709242] - [tools] perf trace arm64: Use generated syscall table (Michael Petlan) [1709242] - [tools] perf arm64: Generate system call table from asm/unistd.h (Michael Petlan) [1709242] - [tools] tools include: Grab copies of arm64 dependent unistd.h files (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh when event exists (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh to ensure cleanups (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 (Michael Petlan) [1709242] - [tools] perf powerpc: Fix callchain ip filtering when return address is in a register (Michael Petlan) [1709242] - [tools] perf powerpc: Fix callchain ip filtering (Michael Petlan) [1709242] - [tools] perf list: Add missing documentation for --desc and --debug options (Michael Petlan) [1709242] - [tools] perf stat: Add transaction flag (-T) support for s390 (Michael Petlan) [1709242] - [tools] perf json: Add s390 transaction counter definition (Michael Petlan) [1709242] - [tools] perf list: Add s390 support for detailed PMU event description (Michael Petlan) [1709242] - [tools] Revert "perf list: Add s390 support for detailed/verbose PMU event description" (Michael Petlan) [1709242] - [tools] perf cs-etm: Bail out immediately for instruction sample failure (Michael Petlan) [1709242] - [tools] perf cs-etm: Introduce invalid address macro (Michael Petlan) [1709242] - [tools] perf hists: Clarify callchain disabling when available (Michael Petlan) [1709242] - [tools] perf tests: Check that complex event name is parsed correctly (Michael Petlan) [1709242] - [arm64] arm64: perf: Reject stand-alone CHAIN events for PMUv3 (Michael Petlan) [1709242] - [x86] perf/x86/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf events (Michael Petlan) [1709242] - [x86] perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX (Michael Petlan) [1709242] - [kernel] perf/ring_buffer: Prevent concurent ring buffer access (Michael Petlan) [1709242] - [x86] perf/x86/intel/uncore: Use boot_cpu_data.phys_proc_id instead of hardcorded physical package ID 0 (Michael Petlan) [1709242] - [kernel] perf/core: Fix perf_pmu_unregister() locking (Michael Petlan) [1709242] - [kernel] perf/core: Add sanity check to deal with pinned event failure (Michael Petlan) [1709242] - [kernel] perf/core: Force USER_DS when recording user stack data (Michael Petlan) [1709242] - [include] perf/UAPI: Clearly mark __PERF_SAMPLE_CALLCHAIN_EARLY as internal use (Michael Petlan) [1709242] - [x86] perf/x86/intel: Add support/quirk for the MISPREDICT bit on Knights Landing CPUs (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Simplify breakpoint enable in perf_event_modify_breakpoint (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Enable breakpoint in modify_user_hw_breakpoint (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Remove superfluous bp->attr.disabled = 0 (Michael Petlan) [1709242] - [kernel] arm64: perf: Add cap_user_time aarch64 (Michael Petlan) [1709242] - [include] arm_pmu: Add support for 64bit event counters (Michael Petlan) [1709242] - [x86] perf/x86/intel: Support Extended PEBS for Goldmont Plus (Michael Petlan) [1709242] - [x86] perf/x86/intel/ds: Handle PEBS overflow for fixed counters (Michael Petlan) [1709242] - [x86] perf/x86/intel: Support PEBS on fixed counters (Michael Petlan) [1709242] - [kernel] perf, tools: Use correct articles in comments (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Clean up and consolidate modify_user_hw_breakpoint_check() (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Pass new breakpoint type to modify_breakpoint_slot() (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Remove default hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [arm64] perf/arch/arm64: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [powerpc] perf/arch/powerpc: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [x86] perf/arch/x86: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [arm64] perf/hw_breakpoint: Pass arch breakpoint struct to arch_check_bp_in_kernelspace() (Michael Petlan) [1709242] - [kernel] perf/core: Change perf_mmap_fault() return type to 'vm_fault_t' (Michael Petlan) [1709242] - [x86] perf/x86/intel/lbr: Optimize context switches for the LBR call stack (Michael Petlan) [1709242] - [netdrv] cnic: Refactor code and mark expected switch fall-through (Nilesh Javali) [1665302] - [netdrv] cnic: remove use of VLAN_TAG_PRESENT (Nilesh Javali) [1665302] - [netdrv] cnic: use kvzalloc to allocate memory for csk_tbl (Nilesh Javali) [1665302] - [netdrv] cnic: remove redundant pointer req and variable func (Nilesh Javali) [1665302] - [scsi] drivers: Remove useless trailing comments from mmiowb() invocations (Nilesh Javali) [1665307] - [scsi] scsi: qedf: remove set but not used variables (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Update the driver version to 8.37.25.20 (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add return value to log message if scsi_add_host fails (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Print fcport information on wait for upload timeout (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check the return value of start_xmit (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Log message if scsi_add_host fails (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for fcoe_libfc_config failure (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add comment to display logging levels (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add port_id for fcport into initiate_cleanup debug message (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add LBA to underrun debug messages (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Print scsi_cmd backpointer in good completion path if the command is still being used (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add driver state to 'driver_stats' debugfs node (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Change MSI-X load error message (Nilesh Javali) [1665301] - [scsi] scsi: qedf: remove memset/memcpy to nfunc and use func instead (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Remove set but not used variable 'fr_len' (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Update the driver version to 8.37.25.19 (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Fix lport may be used uninitialized warning (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correctly handle refcounting of rdata (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Cleanup rrq_work after QEDF_CMD_OUTSTANDING is cleared (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for tm_flags instead of cmd_type during cleanup (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add a flag to help debugging io_req which could not be cleaned (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Don't send ABTS for under run scenario (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Don't queue anything if upload is in progress (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check both the FCF and fabric ID before servicing clear virtual link (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fc_rport_priv reference counting fixes (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing return in qedf_scsi_done() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Wait for upload and link down processing during soft ctx reset (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add additional checks for io_req->sc_cmd validity (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fixup bit operations (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fixup locking in qedf_restart_rport() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: missing kref_put in qedf_xmit() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for link state before processing LL2 packets and send fipvlan retries (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing fc_disc_init call after allocating lport (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correct the memory barriers in qedf_ring_doorbell (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Use a separate completion for cleanup commands (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Modify abort and tmf handler to handle edge condition and flush (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Modify flush routine to handle all I/Os and TMF (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Simplify s/g list mapping (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload check (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correct xid range overlap between offloaded requests and libfc requests (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Do not retry ELS request if qedf_alloc_cmd fails (Nilesh Javali) [1665301] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Nilesh Javali) [1665301] - [scsi] scsi: stop setting up request->special (Nilesh Javali) [1665301] - [scsi] scsi: qedf: no need to check return value of debugfs_create functions (Nilesh Javali) [1665301] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: NULL check before some freeing functions is not needed (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fully convert to the generic DMA API (Nilesh Javali) [1665301] - [scsi] scsi: qedi: Adjust termination and offload ramrod timers (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Abort ep termination if offload not scheduled (Nilesh Javali) [1665300] - [scsi] scsi: qedi: fix spelling mistake "oflload" -> "offload" (Nilesh Javali) [1665300] - [scsi] scsi: qedi: remove declaration of nvm_image from stack (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Remove set but not used variable 'cls_sess' (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Add ep_state for login completion on un-reachable targets (Nilesh Javali) [1665300] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Update driver version to 8.33.0.21 (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Move LL2 producer index processing in BH. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: add module param to set ping packet size (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Add packet filter in light L2 Rx path. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Check for session online before getting iSCSI TLV data. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Replace PAGE_SIZE with QEDI_PAGE_SIZE (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Fix spelling mistake "OUSTANDING" -> "OUTSTANDING" (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Cleanup redundant QEDI_PAGE_SIZE macro definition (Nilesh Javali) [1665300] - [scsi] scsi: qedi: fully convert to the generic DMA API (Nilesh Javali) [1665300] - [x86] x86/kdump: Fall back to reserve high crashkernel memory (Pingfan Liu) [1682984] - [x86] x86/kdump: Have crashkernel=X reserve under 4G by default (Pingfan Liu) [1682984] - [x86] Revert "[x86] x86/kdump: make the behavior of crashkernel=X consistent with kaslr" (Pingfan Liu) [1682984] - [scsi] scsi: core: avoid pre-allocating big SGL for data (Ewan Milne) [1698297] - [scsi] scsi: core: avoid pre-allocating big SGL for protection information (Ewan Milne) [1698297] - [nvme] scsi: lib/sg_pool.c: improve APIs for allocating sg pool (Ewan Milne) [1698297] - [kvm] KVM: PPC: Book3S HV: Save/restore vrsave register in kvmhv_p9_guest_entry() (Suraj Jitindar Singh) [1700272] - [fs] ext4: avoid kernel warning when writing the superblock to a dead device (Lukas Czerner) [1695021] - [fs] ext4: cond_resched in work-heavy group loops (Lukas Czerner) [1698815] - [fs] ext4: ignore e_value_offs for xattrs with value-in-ea-inode (Lukas Czerner) [1698815] - [fs] ext4: protect journal inode's blocks using block_validity (Lukas Czerner) [1698815] - [fs] ext4: use BUG() instead of BUG_ON(1) (Lukas Czerner) [1698815] - [fs] jbd2: check superblock mapped prior to committing (Lukas Czerner) [1698815] - [fs] ext4: remove incorrect comment for NEXT_ORPHAN() (Lukas Czerner) [1698815] - [fs] ext4: make sanity check in mballoc more strict (Lukas Czerner) [1698815] - [fs] ext4: fix use-after-free race with debug_want_extra_isize (Lukas Czerner) [1698815] - [fs] ext4: fix ext4_show_options for file systems w/o journal (Lukas Czerner) [1698815] - [fs] ext4: actually request zeroing of inode table after grow (Lukas Czerner) [1698815] - [fs] Revert "ext4: use ext4_write_inode() when fsyncing w/o a journal" (Lukas Czerner) [1698815] - [fs] ext4: fix some error pointer dereferences (Lukas Czerner) [1698815] - [fs] ext4: fix special inode number checks in __ext4_iget() (Lukas Czerner) [1698815] - [fs] ext4: prohibit fstrim in norecovery mode (Lukas Czerner) [1698815] - [fs] ext4: cleanup bh release code in ext4_ind_remove_space() (Lukas Czerner) [1698815] - [fs] ext4: brelse all indirect buffer in ext4_ind_remove_space() (Lukas Czerner) [1698815] - [fs] ext4: report real fs size after failed resize (Lukas Czerner) [1698815] - [fs] ext4: add missing brelse() in add_new_gdb_meta_bg() (Lukas Czerner) [1698815] - [fs] ext4: remove useless ext4_pin_inode() (Lukas Czerner) [1698815] - [fs] ext4: avoid panic during forced reboot (Lukas Czerner) [1698815] - [fs] ext4: fix data corruption caused by unaligned direct AIO (Lukas Czerner) [1698815] - [fs] ext4: fix NULL pointer dereference while journal is aborted (Lukas Czerner) [1698815] - [fs] jbd2: jbd2_get_transaction does not need to return a value (Lukas Czerner) [1698815] - [fs] jbd2: fix invalid descriptor block checksum (Lukas Czerner) [1698815] - [fs] ext4: fix bigalloc cluster freeing when hole punching under load (Lukas Czerner) [1698815] - [fs] ext4: add sysfs attr /sys/fs/ext4//journal_task (Lukas Czerner) [1698815] - [fs] ext4: Change debugging support help prefix from EXT4 to Ext4 (Lukas Czerner) [1698815] - [fs] ext4: fix compile error when using BUFFER_TRACE (Lukas Czerner) [1698815] - [fs] jbd2: fix compile warning when using JBUFFER_TRACE (Lukas Czerner) [1698815] - [fs] ext4: annotate more implicit fall throughs (Lukas Czerner) [1698815] - [fs] ext4: annotate implicit fall throughs (Lukas Czerner) [1698815] - [fs] ext4: don't update s_rev_level if not required (Lukas Czerner) [1698815] - [fs] jbd2: fold jbd2_superblock_csum_{verify,set} into their callers (Lukas Czerner) [1698815] - [fs] jbd2: fix race when writing superblock (Lukas Czerner) [1698815] - [fs] ext4: fix crash during online resizing (Lukas Czerner) [1698815] - [fs] ext4: disallow files with EXT4_JOURNAL_DATA_FL from EXT4_IOC_SWAP_BOOT (Lukas Czerner) [1698815] - [fs] ext4: add mask of ext4 flags to swap (Lukas Czerner) [1698815] - [fs] ext4: update quota information while swapping boot loader inode (Lukas Czerner) [1698815] - [fs] ext4: cleanup pagecache before swap i_data (Lukas Czerner) [1698815] - [fs] ext4: fix check of inode in swap_inode_boot_loader (Lukas Czerner) [1698815] - [fs] ext4: unlock unused_pages timely when doing writeback (Lukas Czerner) [1698815] - [fs] ext4: cleanup clean_bdev_aliases() calls (Lukas Czerner) [1698815] - [fs] jbd2: discard dirty data when forgetting an un-journalled buffer (Lukas Czerner) [1698815] - [fs] jbd2: clear dirty flag when revoking a buffer from an older transaction (Lukas Czerner) [1698815] - [fs] ext4: replace opencoded i_writecount usage with inode_is_open_for_write() (Lukas Czerner) [1698815] - [fs] jbd2: fix deadlock while checkpoint thread waits commit thread to finish (Lukas Czerner) [1698815] - [fs] ext4: use IS_ENCRYPTED() to check encryption status (Lukas Czerner) [1698815] - [fs] ext4: track writeback errors using the generic tracking infrastructure (Lukas Czerner) [1698815] - [fs] ext4: use ext4_write_inode() when fsyncing w/o a journal (Lukas Czerner) [1698815] - [fs] ext4: fix a potential fiemap/page fault deadlock w/ inline_data (Lukas Czerner) [1698815] - [fs] ext4: make sure enough credits are reserved for dioread_nolock writes (Lukas Czerner) [1698815] - [fs] ext4: check for shutdown and r/o file system in ext4_write_inode() (Lukas Czerner) [1698815] - [fs] ext4: force inode writes when nfsd calls commit_metadata() (Lukas Czerner) [1698815] - [fs] ext4: avoid declaring fs inconsistent due to invalid file handles (Lukas Czerner) [1698815] - [fs] ext4: include terminating u32 in size of xattr entries when expanding inodes (Lukas Czerner) [1698815] - [fs] ext4: compare old and new mode before setting update_mode flag (Lukas Czerner) [1698815] - [fs] ext4: fix EXT4_IOC_GROUP_ADD ioctl (Lukas Czerner) [1698815] - [fs] ext4: hard fail dax mount on unsupported devices (Lukas Czerner) [1698815] - [fs] ext4: remove redundant condition check (Lukas Czerner) [1698815] - [fs] jbd2: clean up indentation issue, replace spaces with tab (Lukas Czerner) [1698815] - [fs] ext4: clean up indentation issues, remove extraneous tabs (Lukas Czerner) [1698815] - [fs] ext4: missing unlock/put_page() in ext4_try_to_write_inline_data() (Lukas Czerner) [1698815] - [fs] ext4: fix possible use after free in ext4_quota_enable (Lukas Czerner) [1698815] - [fs] jbd2: avoid long hold times of j_state_lock while committing a transaction (Lukas Czerner) [1698815] - [fs] ext4: add ext4_sb_bread() to disambiguate ENOMEM cases (Lukas Czerner) [1698815] - [fs] ext4: remove unneeded brelse call in ext4_xattr_inode_update_ref() (Lukas Czerner) [1698815] - [fs] ext4: fix use-after-free race in ext4_remount()'s error path (Lukas Czerner) [1698815] - [fs] ext4: don't open-code ERR_CAST (Lukas Czerner) [1698815] - [fs] ext4: cache NULL when both default_acl and acl are NULL (Lukas Czerner) [1698815] - [fs] ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR (Lukas Czerner) [1698815] - [fs] ext4: fix setattr project check in fssetxattr ioctl (Lukas Czerner) [1698815] - [fs] ext4: convert fault handler to use vm_fault_t type (Lukas Czerner) [1698815] - [fs] ext4: fix EXT4_IOC_SWAP_BOOT (Lukas Czerner) [1698815] - [fs] ext4: fix argument checking in EXT4_IOC_MOVE_EXT (Lukas Czerner) [1698815] - [fs] ext4: fix reserved cluster accounting at page invalidation time (Lukas Czerner) [1698815] - [fs] ext4: adjust reserved cluster count when removing extents (Lukas Czerner) [1698815] - [fs] ext4: reduce reserved cluster count by number of allocated clusters (Lukas Czerner) [1698815] - [fs] ext4: fix reserved cluster accounting at delayed write time (Lukas Czerner) [1698815] - [fs] ext4: add new pending reservation mechanism (Lukas Czerner) [1698815] - [fs] ext4: generalize extents status tree search functions (Lukas Czerner) [1698815] - [fs] ext4: readpages() should submit IO as read-ahead (Lukas Czerner) [1698815] - [fs] ext4: improve code readability in ext4_iget() (Lukas Czerner) [1698815] - [fs] ext4: use swap macro in mext_page_double_lock (Lukas Czerner) [1698815] - [fs] ext4: fix warning message in ext4_enable_quotas() (Lukas Czerner) [1698815] - [fs] ext4: super: extend timestamps to 40 bits (Lukas Czerner) [1698815] - [fs] jbd2: replace current_kernel_time64 with ktime equivalent (Lukas Czerner) [1698815] - [fs] ext4: use timespec64 for all inode times (Lukas Czerner) [1698815] - [fs] ext4: use ktime_get_real_seconds for i_dtime (Lukas Czerner) [1698815] - [fs] ext4: use 64-bit timestamps for mmp_time (Lukas Czerner) [1698815] - [scsi] scsi: smartpqi: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Don Brace) [1665565] - [scsi] scsi: smartpqi: bump driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add spdx (Don Brace) [1665565] - [scsi] scsi: smartpqi: update copyright (Don Brace) [1665565] - [scsi] scsi: smartpqi: add H3C controller IDs (Don Brace) [1665565] - [scsi] scsi: smartpqi: increase LUN reset timeout (Don Brace) [1665565] - [scsi] scsi: smartpqi: Reporting 'logical unit failure' (Don Brace) [1665565] - [scsi] scsi: smartpqi_init: fix boolean expression in pqi_device_remove_start (Don Brace) [1665565] - [scsi] scsi: smartpqi: call pqi_free_interrupts() in pqi_shutdown() (Don Brace) [1665565] - [scsi] scsi: smartpqi: fix build warnings (Don Brace) [1665565] - [scsi] scsi: smartpqi: update driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add ofa support (Don Brace) [1665565] - [scsi] scsi: smartpqi: increase fw status register read timeout (Don Brace) [1665565] - [scsi] scsi: smartpqi: bump driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add smp_utils support (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct lun reset issues (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct volume status (Don Brace) [1665565] - [scsi] scsi: smartpqi: do not offline disks for transient did no connect conditions (Don Brace) [1665565] - [scsi] scsi: smartpqi: allow for larger raid maps (Don Brace) [1665565] - [scsi] scsi: smartpqi: check for null device pointers (Don Brace) [1665565] - [scsi] scsi: smartpqi: enhance numa node detection (Don Brace) [1665565] - [scsi] scsi: smartpqi: wake up drives after os resumes from suspend (Don Brace) [1665565] - [scsi] scsi: smartpqi: fix disk name mount point (Don Brace) [1665565] - [scsi] scsi: smartpqi: add h3c ssid (Don Brace) [1665565] - [scsi] scsi: smartpqi: add sysfs attributes (Don Brace) [1665565] - [scsi] scsi: smartpqi: refactor sending controller raid requests (Don Brace) [1665565] - [scsi] scsi: smartpqi: turn off lun data caching for ptraid (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct host serial num for ssa (Don Brace) [1665565] - [scsi] scsi: smartpqi: add no_write_same for logical volumes (Don Brace) [1665565] - [scsi] scsi: smartpqi: Add retries for device reset (Don Brace) [1665565] - [scsi] scsi: smartpqi: add support for PQI Config Table handshake (Don Brace) [1665565] - [scsi] scsi: smartpqi: fully convert to the generic DMA API (Don Brace) [1665565] - [net] rtnetlink: always put IFLA_LINK for links with a link-netnsid (Sabrina Dubroca) [1711933] - [net] ipv6: add inet6_fill_args (Ivan Vecera) [1711956] - [net] ipv4: add inet_fill_args (Ivan Vecera) [1711956] - [net] rtnetlink: s/IFLA_IF_NETNSID/IFLA_TARGET_NETNSID/g (Ivan Vecera) [1711956] - [include] if_link: add IFLA_TARGET_NETNSID alias (Ivan Vecera) [1711956] - [net] rtnetlink: move type calculation out of loop (Ivan Vecera) [1711956] - [net] ipv6: enable IFA_TARGET_NETNSID for RTM_GETADDR (Ivan Vecera) [1711956] - [net] ipv4: enable IFA_TARGET_NETNSID for RTM_GETADDR (Ivan Vecera) [1711956] - [include] if_addr: add IFA_TARGET_NETNSID (Ivan Vecera) [1711956] - [net] rtnetlink: add rtnl_get_net_ns_capable() (Ivan Vecera) [1711956] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Fix untagged test (Hangbin Liu) [1710283] - [tools] selftests: forwarding: Tweak tc filters for mirror-to-gretap tests (Hangbin Liu) [1710283] - [tools] selftests: forwarding: lib: Avoid trapping soft devices (Hangbin Liu) [1710283] - [tools] selftests: pmtu: maximum MTU for vti4 is 2^16-1-20 (Hangbin Liu) [1704659] - [net] sched: red: inform offloads about harddrop setting (Ivan Vecera) [1710999] - [net] tls: fix copy to fragments in reencrypt (Ivan Vecera) [1710366] - [net] tls: don't copy negative amounts of data in reencrypt (Ivan Vecera) [1710366] - [net] tls: don't leak IV and record seq when offload fails (Ivan Vecera) [1710366] - [net] tls: avoid potential deadlock in tls_set_device_offload_rx() (Ivan Vecera) [1710366] - [net] tls: prevent bad memory access in tls_is_sk_tx_device_offloaded() (Ivan Vecera) [1710366] - [net] tls: Combined memory allocation for decryption request (Ivan Vecera) [1710366] - [net] tls: Skip zerocopy path for ITER_KVEC (Ivan Vecera) [1710366] - [net] tls: Fix copy-paste error in tls_device_reencrypt (Ivan Vecera) [1710366] - [net] tls: Add rx inline crypto offload (Ivan Vecera) [1710366] - [net] tls: Fill software context without allocation (Ivan Vecera) [1710366] - [net] tls: Split tls_sw_release_resources_rx (Ivan Vecera) [1710366] - [net] tls: Split decrypt_skb to two functions (Ivan Vecera) [1710366] - [net] tcp: Don't coalesce decrypted and encrypted SKBs (Ivan Vecera) [1710366] - [include] Add TLS rx resync NDO (Ivan Vecera) [1710366] - [net] Add TLS RX offload feature (Ivan Vecera) [1710366] - [net] Add decrypted field to skb (Ivan Vecera) [1710366] - [net] tls: Use aead_request_alloc/free for request alloc/free (Ivan Vecera) [1710366] - [net] tls: Refactor tls_offload variable names (Ivan Vecera) [1703389]- [netdrv] qede: use ethtool_rx_flow_rule() to remove duplicated parser code (Manish Chopra) [1663274] - [netdrv] qede: place ethtool_rx_flow_spec after code after TC flower codebase (Manish Chopra) [1663274] - [netdrv] drivers: net: use flow action infrastructure (Manish Chopra) [1663274] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Manish Chopra) [1663274] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Manish Chopra) [1663274] - [netdrv] qede: Populate mbi version in ethtool driver query data. (Manish Chopra) [1663274] - [netdrv] qed: Define new MF bit for no_vlan config (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "faspath" -> "fastpath" (Manish Chopra) [1663274] - [netdrv] qed: Fix the DORQ's attentions handling (Manish Chopra) [1663274] - [netdrv] qed: Fix missing DORQ attentions (Manish Chopra) [1663274] - [netdrv] qed: Fix the doorbell address sanity check (Manish Chopra) [1663274] - [netdrv] qed: Delete redundant doorbell recovery types (Manish Chopra) [1663274] - [netdrv] qede: fix write to free'd pointer error and double free of ptp (Manish Chopra) [1663274] - [netdrv] qede: Fix internal loopback failure with jumbo mtu configuration (Manish Chopra) [1663274] - [netdrv] qed: Read device port count from the shmem (Manish Chopra) [1663274] - [netdrv] qed: Fix iWARP syn packet mac address validation. (Manish Chopra) [1663274] - [netdrv] qed: Fix iWARP buffer size provided for syn packet processing. (Manish Chopra) [1663274] - [netdrv] qed: fix indentation issue with statements in an if-block (Manish Chopra) [1663274] - [netdrv] qede: Add ethtool interface for SmartAN query. (Manish Chopra) [1663274] - [netdrv] qed: Add API for SmartAN query. (Manish Chopra) [1663274] - [netdrv] qed*: Advance drivers version to 8.37.0.20 (Manish Chopra) [1663274] - [netdrv] qed: Change verbosity for coalescing message. (Manish Chopra) [1663274] - [netdrv] qede: Fix system crash on configuring channels. (Manish Chopra) [1663274] - [netdrv] qed: Consider TX tcs while deriving the max num_queues for PF. (Manish Chopra) [1663274] - [netdrv] qed: Assign UFP TC value to vlan priority in UFP mode. (Manish Chopra) [1663274] - [netdrv] qed: Fix EQ full firmware assert. (Manish Chopra) [1663274] - [netdrv] qed: Fix stack out of bounds bug (Manish Chopra) [1663274] - [netdrv] qed: Fix system crash in ll2 xmit (Manish Chopra) [1663274] - [netdrv] qed: Fix VF probe failure while FLR (Manish Chopra) [1663274] - [netdrv] qed: Fix LACP pdu drops for VFs (Manish Chopra) [1663274] - [netdrv] qed: Fix bug in tx promiscuous mode settings (Manish Chopra) [1663274] - [netdrv] qede: Error recovery process (Manish Chopra) [1663274] - [netdrv] qed: Add infrastructure for error detection and recovery (Manish Chopra) [1663274] - [netdrv] qed: Revise load sequence to avoid PCI errors (Manish Chopra) [1663274] - [netdrv] qed: Mark expected switch fall-through (Manish Chopra) [1663274] - [include] qed: remove duplicated include from qed_if.h (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: Fix out of bounds index check in query pkey (Manish Chopra) [1663274] - [netdrv] qed: Fix qed_ll2_post_rx_buffer_notify_fw() by adding a write memory barrier (Manish Chopra) [1663274] - [include] qed: Fix qed_chain_set_prod() for PBL chains with non power of 2 page count (Manish Chopra) [1663274] - [infiniband] infiniband/qedr: Potential null ptr dereference of qp (Manish Chopra) [1663274] - [netdrv] qed: Fix an error code qed_ll2_start_xmit() (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "Dispalying" -> "Displaying" (Manish Chopra) [1663274] - [netdrv] qede: Register l2 queues with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Expose the doorbell overflow recovery mechanism to the protocol drivers (Manish Chopra) [1663274] - [netdrv] qed: Register light L2 queues with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Register slowpath queue doorbell with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Use the doorbell overflow recovery mechanism in case of doorbell overflow (Manish Chopra) [1663274] - [netdrv] qed: Add doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qede - Add a statistic for a case where driver drops tx packet due to memory allocation failure. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "attnetion" -> "attention" (Manish Chopra) [1663274] - [netdrv] qed: Add support for MBI upgrade over MFW. (Manish Chopra) [1663274] - [netdrv] qede: Update link status only when interface is ready. (Manish Chopra) [1663274] - [netdrv] qede: Simplify the usage of qede-flags. (Manish Chopra) [1663274] - [netdrv] qed: Display port_id in the UFP debug messages. (Manish Chopra) [1663274] - [netdrv] qed: Fix QM getters to always return a valid pq (Manish Chopra) [1663274] - [netdrv] qed: Fix bitmap_weight() check (Manish Chopra) [1663274] - [netdrv] drivers/net/ethernet/qlogic/qed/qed_rdma.h: fix typo (Manish Chopra) [1663274] - [netdrv] qed: Fix reading wrong value in loop condition (Manish Chopra) [1663274] - [netdrv] qed: Fix rdma_info structure allocation (Manish Chopra) [1663274] - [netdrv] qed: Fix overriding offload_tc by protocols without APP TLV (Manish Chopra) [1663274] - [netdrv] qed: Fix PTT leak in qed_drain() (Manish Chopra) [1663274] - [netdrv] qed: Fix potential memory corruption (Manish Chopra) [1663274] - [netdrv] qed: Fix SPQ entries not returned to pool in error flows (Manish Chopra) [1663274] - [netdrv] qed: Fix blocking/unlimited SPQ entries leak (Manish Chopra) [1663274] - [netdrv] qed: Fix memory/entry leak in qed_init_sp_request() (Manish Chopra) [1663274] - [netdrv] qed: fix link config error handling (Manish Chopra) [1663274] - [netdrv] qed: Fix static checker warning (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "transcevier" -> "transceiver" (Manish Chopra) [1663274] - [netdrv] qed: Prevent link getting down in case of autoneg-off. (Manish Chopra) [1663274] - [netdrv] qede: Check available link modes before link set from ethtool. (Manish Chopra) [1663274] - [netdrv] qed: Add supported link and advertise link to display in ethtool. (Manish Chopra) [1663274] - [netdrv] qed: Added supported transceiver modes, speed capability and board config to HSI. (Manish Chopra) [1663274] - [netdrv] qed: Align local and global PTT to propagate through the APIs. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "Ireelevant" -> "Irrelevant" (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_ooo_submit_tx_buffers (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: Remove enumerated type qed_roce_ll2_tx_dest (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "b_cb_registred" -> "b_cb_registered" (Manish Chopra) [1663274] - [netdrv] qed: Remove set but not used variable 'p_archipelago' (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt (Manish Chopra) [1663274] - [netdrv] qed: Avoid constant logical operation warning in qed_vf_pf_acquire (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor (Manish Chopra) [1663274] - [netdrv] qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_set_tunn_cls_info (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "toogle" -> "toggle" (Manish Chopra) [1663274] - [netdrv] net: qed: list usage cleanup (Manish Chopra) [1663274] - [netdrv] net: qede: Use FIELD_SIZEOF directly instead of reimplementing its function (Manish Chopra) [1663274] - [netdrv] qed: remove duplicated include from qed_cxt.c (Manish Chopra) [1663274] - [netdrv] qed*: Utilize FW 8.37.7.0 (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: remove set but not used variable 'ctx' (Manish Chopra) [1663274] - [netdrv] qed: Lower the severity of a dcbx log message. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "comparsion" -> "comparison" (Manish Chopra) [1663274] - [netdrv] net_sched: remove list_head from tc_action (Manish Chopra) [1663274] - [infiniband] qedr: Add user space support for SRQ (Manish Chopra) [1663274] - [infiniband] qedr: Add support for kernel mode SRQ's (Manish Chopra) [1663274] - [infiniband] qedr: Add wrapping generic structure for qpidr and adjust idr routines. (Manish Chopra) [1663274] - [netdrv] qed/qede: qede_setup_tc() can be static (Manish Chopra) [1663274] - [netdrv] qede: Ingress tc flower offload (drop action) support. (Manish Chopra) [1663274] - [netdrv] qede: Add destination ip based flow profile. (Manish Chopra) [1663274] - [netdrv] qed/qede: Multi CoS support. (Manish Chopra) [1663274] - [netdrv] qede: qede_fp: Mark expected switch fall-through (Manish Chopra) [1663274] - [netdrv] qed: qed_dev: Mark expected switch fall-throughs (Manish Chopra) [1663274] - [netdrv] qed: Add Multi-TC RoCE support (Manish Chopra) [1663274] - [netdrv] qed: Add DCBX API - qed_dcbx_get_priority_tc() (Manish Chopra) [1663274] - [netdrv] qed: Make some functions static (Manish Chopra) [1663274] - [netdrv] qed: remove redundant functions qed_get_cm_pq_idx_rl (Manish Chopra) [1663274] - [netdrv] qed: remove redundant functions qed_set_gft_event_id_cm_hdr (Manish Chopra) [1663274] - [netdrv] qede: Add driver callbacks for eeprom module query. (Manish Chopra) [1663274] - [netdrv] qed: Add qed APIs for PHY module query. (Manish Chopra) [1663274] - [netdrv] qed: remove redundant pointer 'name' (Manish Chopra) [1663274] - [iommu] iommu: Don't print warning when IOMMU driver only supports unmanaged domains (Jerry Snitselaar) [1707616 1694210 1689183] - [iommu] iommu/vt-d: Check capability before disabling protected memory (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: fix sg->dma_address for sg->offset bigger than PAGE_SIZE (Jerry Snitselaar) [1694210 1694029] - [iommu] iommu/amd: Fix NULL dereference bug in match_hid_uid (Jerry Snitselaar) [1677737 1694210] - [iommu] iommu/vt-d: Fix NULL pointer reference in intel_svm_bind_mm() (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Remove unnecessary WARN_ON() (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Check identity map for hot-added devices (Jerry Snitselaar) [1694210] - [iommu] iommu/dmar: Fix buffer overflow during PCI bus notification (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Fix memory leak in intel_iommu_put_resv_regions() (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: Fix amd_iommu=force_isolation (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Handle domain agaw being less than iommu agaw (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Use memunmap to free memremap (Jerry Snitselaar) [1694210] - [iommu] amd/iommu: Fix Guest Virtual APIC Log Tail Address Register (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Fix NULL pointer dereference in prq_event_thread() (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: Return devid as alias for ACPI HID devices (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Free irqs in shutdown handler (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Move irq request past pm_runtime_enable (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Handle errors returned from PM framework (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: make sure TLB to be flushed before IOVA freed (Jerry Snitselaar) [1694210] - [idle] intel_idle: Get rid of custom ICPU() macro (Alexander Beregalov) [1710976] - [security] selinux: do not report error on connect(AF_UNSPEC) (Ondrej Mosnacek) [1707828] - [security] selinux: Check address length before reading address family (Ondrej Mosnacek) [1707828] - [scsi] scsi: core: add new RDAC LENOVO/DE_Series device (Maurizio Lombardi) [1700912] - [infiniband] i40iw: Avoid panic when handling the inetdev event (Stefan Assmann) [1659180] - [infiniband] cross-tree: phase out dma_zalloc_coherent() (Stefan Assmann) [1659180] - [infiniband] infiniband: prefix header search paths with $(srctree)/ (Stefan Assmann) [1659180] - [infiniband] i40iw: remove use of VLAN_TAG_PRESENT (Stefan Assmann) [1659180] - [infiniband] RDMA/i40iw: Fix incorrect iterator type (Stefan Assmann) [1659180] - [infiniband] infiniband: i40iw, nes: don't use wall time for TCP sequence numbers (Stefan Assmann) [1659180] - [infiniband] i40iw: Reorganize acquire/release of locks in i40iw_manage_apbvt (Stefan Assmann) [1659180] - [netdrv] i40e: Changed maximum supported FW API version to 1.8 (Stefan Assmann) [1659174] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Stefan Assmann) [1659174] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Stefan Assmann) [1659174] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Stefan Assmann) [1659174] - [netdrv] drivers: net: remove inclusion when not needed (Stefan Assmann) [1659174] - [netdrv] i40e: Memory leak in i40e_config_iwarp_qvlist (Stefan Assmann) [1659162] - [netdrv] i40e: Fix of memory leak and integer truncation in i40e_virtchnl.c (Stefan Assmann) [1659162] - [netdrv] i40e: Use struct_size() in kzalloc() (Stefan Assmann) [1659162] - [netdrv] i40e: Revert ShadowRAM checksum calculation change (Stefan Assmann) [1659162] - [netdrv] i40e: missing input validation on VF message handling by the PF (Stefan Assmann) [1659162] - [netdrv] i40e: Add support for X710 B/P & SFP+ cards (Stefan Assmann) [1659162] - [netdrv] i40e: Wrong truncation from u16 to u8 (Stefan Assmann) [1659162] - [netdrv] i40e: add num_vectors checker in iwarp handler (Stefan Assmann) [1659162] - [netdrv] i40e: Fix the typo in adding 40GE KR4 mode (Stefan Assmann) [1659162] - [netdrv] i40e: Setting VF to VLAN 0 requires restart (Stefan Assmann) [1659162] - [netdrv] i40e: add new pci id for X710/XXV710 N3000 cards (Stefan Assmann) [1659162] - [netdrv] i40e: VF's promiscuous attribute is not kept (Stefan Assmann) [1659162] - [netdrv] i40e: Introduce recovery mode support (Stefan Assmann) [1659162] - [netdrv] i40e: print PCI vendor and device ID during probe (Stefan Assmann) [1659162] - [netdrv] i40e: fix misleading message about promisc setting on un-trusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: update version number (Stefan Assmann) [1659162] - [netdrv] i40e: remove out-of-range comparisons in i40e_validate_cloud_filter (Stefan Assmann) [1659162] - [netdrv] i40e: Further implementation of LLDP (Stefan Assmann) [1659162] - [netdrv] i40e: Report advertised link modes on 40GBase_LR4, CR4 and fibre (Stefan Assmann) [1659162] - [netdrv] i40e: ShadowRAM checksum calculation change (Stefan Assmann) [1659162] - [netdrv] i40e: remove error msg when vf with port vlan tries to remove vlan 0 (Stefan Assmann) [1659162] - [netdrv] i40e: change behavior on PF in response to MDD event (Stefan Assmann) [1659162] - [netdrv] i40e: Fix for allowing too many MDD events on VF (Stefan Assmann) [1659162] - [netdrv] i40e: Fix misleading error message (Stefan Assmann) [1659162] - [netdrv] i40e: Able to add up to 16 MAC filters on an untrusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: Report advertised link modes on 40GBASE_SR4 (Stefan Assmann) [1659162] - [netdrv] i40e: The driver now prints the API version in error message (Stefan Assmann) [1659162] - [netdrv] i40e: Changed maximum supported FW API version to 1.8 (Stefan Assmann) [1659162] - [netdrv] i40e: Remove misleading messages for untrusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: Update i40e_init_dcb to return correct error (Stefan Assmann) [1659162] - [netdrv] i40e: Fix for 10G ports LED not blinking (Stefan Assmann) [1659162] - [netdrv] i40e: save PTP time before a device reset (Stefan Assmann) [1659162] - [netdrv] i40e: don't allow changes to HW VLAN stripping on active port VLANs (Stefan Assmann) [1659162] - [netdrv] i40e: Implement DDP support in i40e driver (Stefan Assmann) [1659162] - [netdrv] i40e: Queues are reserved despite "Invalid argument" error (Stefan Assmann) [1659162] - [netdrv] i40e: add tracking of AF_XDP ZC state for each queue pair (Stefan Assmann) [1659162] - [netdrv] i40e: move i40e_xsk_umem function (Stefan Assmann) [1659162] - [netdrv] i40e: fix WoL support check (Stefan Assmann) [1659162] - [netdrv] i40e: fix i40e_ptp_adjtime when given a negative delta (Stefan Assmann) [1659162] - [netdrv] i40e: fix XDP_REDIRECT/XDP xmit ring cleanup race (Stefan Assmann) [1659162] - [netdrv] i40e: fix potential RX buffer starvation for AF_XDP (Stefan Assmann) [1659162] - [netdrv] net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Stefan Assmann) [1659162] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Stefan Assmann) [1659162] - [netdrv] i40e: clean up several indentation issues (Stefan Assmann) [1659162] - [netdrv] i40e: increase indentation (Stefan Assmann) [1659162] - [netdrv] i40e: update version number (Stefan Assmann) [1659162] - [netdrv] i40e: remove debugfs tx_timeout support (Stefan Assmann) [1659162] - [netdrv] i40e: check queue pairs num in config queues handler (Stefan Assmann) [1659162] - [netdrv] i40e: Change unmatched function types (Stefan Assmann) [1659162] - [netdrv] i40e: Add support FEC configuration for Fortville 25G (Stefan Assmann) [1659162] - [netdrv] i40e: Limiting RSS queues to CPUs (Stefan Assmann) [1659162] - [netdrv] i40e: Remove umem from VSI (Stefan Assmann) [1659162] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Stefan Assmann) [1659162] - [netdrv] i40e: extend PTP gettime function to read system clock (Stefan Assmann) [1659162] - [netdrv] i40e: DRY rx_ptype handling code (Stefan Assmann) [1659162] - [netdrv] i40e: fix kerneldoc for xsk methods (Stefan Assmann) [1659162] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Stefan Assmann) [1659162] - [netdrv] i40e: suppress bogus error message (Stefan Assmann) [1659162] - [netdrv] i40e: Allow disabling FW LLDP on X722 devices (Stefan Assmann) [1659162] - [netdrv] i40e: update driver version (Stefan Assmann) [1659162] - [netdrv] i40e: Protect access to VF control methods (Stefan Assmann) [1659162] - [netdrv] i40e: Replace strncpy with strlcpy to ensure null termination (Stefan Assmann) [1659162] - [netdrv] i40e: Add capability flag for stopping FW LLDP (Stefan Assmann) [1659162] - [netdrv] i40e: Use a local variable for readability (Stefan Assmann) [1659162] - [netdrv] i40e: Replace spin_is_locked() with lockdep (Stefan Assmann) [1659162] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Stefan Assmann) [1659162] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Stefan Assmann) [1659162] - [netdrv] drivers: net: remove inclusion when not needed (Stefan Assmann) [1659162] - [netdrv] i40e: Remove unnecessary print statement (Stefan Assmann) [1659162] - [netdrv] i40e: Use proper enum in i40e_ndo_set_vf_link_state (Stefan Assmann) [1659162] - [nvme] nvmet: ignore EOPNOTSUPP for discard (Ewan Milne) [1696369] - [tools] tools: bpftool: fix potential NULL pointer dereference in do_load (Ivan Vecera) [1708560] - [tools] tools lib bpf: Provide wrapper for strerror_r to build in !_GNU_SOURCE systems (Ivan Vecera) [1708560] - [tools] libbpf: Remove the duplicate checking of function storage (Ivan Vecera) [1708560] - [tools] bpf: fix build error in libbpf with EXTRA_CFLAGS="-Wp, -D_FORTIFY_SOURCE=2 -O2" (Ivan Vecera) [1708560] - [tools] tools: include reallocarray feature test in FEATURE_TESTS_BASIC (Ivan Vecera) [1708560] - [tools] tools: bpftool: allow reuse of maps with bpftool prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: allow map reuse (Ivan Vecera) [1708560] - [tools] tools: bpf: make use of reallocarray (Ivan Vecera) [1708560] - [tools] tools: libbpf: move library error code into a separate file (Ivan Vecera) [1708560] - [tools] tools: bpftool: reimplement bpf_prog_load() for prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: add extended attributes version of bpf_object__open() (Ivan Vecera) [1708560] - [tools] tools: libbpf: recognize offload neutral maps (Ivan Vecera) [1708560] - [tools] tools: bpftool: allow users to specify program type for prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: expose the prog type guessing from section name logic (Ivan Vecera) [1708560] - [tools] tools: bpftool: add support for loading programs for offload (Ivan Vecera) [1708560] - [tools] tools: bpftool: refactor argument parsing for prog load (Ivan Vecera) [1708560] - [tools] selftests/bpf: add Error: prefix in check_extack helper (Ivan Vecera) [1708560] - [tools] selftests/bpf: remove duplicated word from test offloads (Ivan Vecera) [1708560] - [tools] tools: bpftool: deal with options upfront (Ivan Vecera) [1708560] - [tools] tools: bpftool: add missing --bpffs to completions (Ivan Vecera) [1708560] - [tools] tools: bpftool: drop unnecessary Author comments (Ivan Vecera) [1708560] - [tools] tools: libbpf: don't return '.text' as a program for multi-function programs (Ivan Vecera) [1708560] - [tools] tools: libbpf: restore the ability to load programs from .text section (Ivan Vecera) [1708560] - [tools] tools: libbpf: allow setting ifindex for programs and maps (Ivan Vecera) [1708560] - [tools] tools: libbpf: add section names for missing program types (Ivan Vecera) [1708560] - [tools] tools: bpftool: use correct make variable type to improve compilation time (Ivan Vecera) [1708560] - [scsi] scsi: lpfc: nvme: avoid hang / use-after-free when destroying localport (Dick Kennedy) [1588024]- [xen] ALSA: xen: Introduce shared buffer helpers for page directory... (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Initialize completion for defer messages (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Remove duplicate assignment (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Fix uninitialized adev deref (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Add pre/post bank switch ops (Jaroslav Kysela) [1683051] - [include] ALSA: soundwire: keep track of Masters in a stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Add support for multi link bank switch (Jaroslav Kysela) [1683051] - [include] ALSA: soundwire: Handle multiple master instances in a stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Add support to lock across bus instances (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix acquiring bus lock twice during master release (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix incorrect exit after configuring stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix duplicate stream state assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix race between creating and refreshing sysfs entries (Jaroslav Kysela) [1683051] - [include] ALSA: ASoC: uapi: fix sound/skl-tplg-interface.h userspace compilation errors (Jaroslav Kysela) [1683051] - [include] ALSA: uapi: #include in asound.h (Jaroslav Kysela) [1683051] - [include] ALSA: timer: fix wrong comment to refer to 'SNDRV_TIMER_PSFLG_*' (Jaroslav Kysela) [1683051] - [sound] ALSA: x86/cpu: Sanitize FAM6_ATOM naming (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: don't select DPCM via simple-audio-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: don't select DPCM via audio-graph-card (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Corrected fixup for System76 Gazelle (gaze14) (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Avoid superfluous COEF EAPD setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixup headphone noise via runtime suspend (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Fix unused variable warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: toneport: Fix broken usage of timer for delayed execution (Jaroslav Kysela) [1683051] - [sound] ALSA: aica: Fix a long-time build breakage (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support low power consumption for ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: update pcm hardware constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codec: hdac_hdmi: no checking monitor in hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: save PGA for mixer control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: save output volume for mixer controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: initialize setting when ramping volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: core: fix undefined nocodec reference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: xtensa: fix undefined references (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Propagate sof_get_ctrl_copy_params() error properly (Jaroslav Kysela) [1683051] - [sound] ALSA: hdea/realtek - Headset fixup for System76 Gazelle (gaze14) (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: add CometLake PCI IDs (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support low power consumption for ALC295 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: Fix an uninitialized variable compile warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Fix a compile warning with CONFIG_PCI=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Fix a compile warning at CONFIG_COMMON_CLK=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sound/soc/sof/: fix kconfig dependency warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: change trace level on iec control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: update pcm hardware constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98090: Fix restore of DAPM Muxes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: RT5677-SPI: Disable 16Bit SPI Transfers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Consider eld_valid when reporting jack event (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Read the pin sense from register when repolling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add reserved DMA memory support (Jaroslav Kysela) [1683051] - [sound] ALSA: synth: emux: soundfont.c: divide by zero in calc_gus_envelope_time() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: Map BTN_0 to KEY_PLAYPAUSE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: add sof-rt5682 machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic:refine code style (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic: add DMIC support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: CNL: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: APL: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: IPC: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: intel: hda: add hw_params_upon_resume flag for hda stream (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: handle real stream interrupts only (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: store stream capabilities (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: simplify handling of IPC IRQ (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: ipc: use snd_sof_pcm_period_elapsed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: use snd_sof_pcm_period_elapsed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: PCM: add period_elapsed work to fix race condition in interrupt context (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-pcm: remove useless dependency on hdac_ext (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: set bus->idx as 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: set I2S slave before enabling DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: add SSP info to the chip info struct (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: add the SSP Host Device memory space (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: cnl: add pointer ops to use DPIB position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: topology: add support for stricter ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASOC: SOF: ipc: add support for stricter ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: add Kconfig option for strict ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: avoid Oops if DMA setup fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: stream is already locked in hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: remove redundant null checks of dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: skip hw_free on codec dai for which the stream is invalid (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix valid stream condition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: unlock the device on startup errors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Update the support rate list (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Use clk_round_rate to handle enabled bclk/wclk case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Fix missing break in switch statement (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct region base typo in wm_halo_setup_algs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: fix spelling mistake "incompatble" -> "incompatible" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Use DSP ops pointers to stop watchdog in error handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix to use list_for_each_entry_safe() when delete items (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix return value check in sprd_mcdt_probe() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7213: fix DAI_CLK_EN register bit overwrite (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix kcontrols for effect widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: cache pdev->dev pointer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix potential uninitialized variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: add I2S2 control path from UL2 and UL3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: change supported formats of DL2 and UL1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: remove "model" attribute (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmix: fix object reference leaks in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs43130: fix a NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: fix a NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add Geminilake Realtek+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Make boards more available for compile test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_dma: Fix invalid license ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_i2s: Fix invalid license ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: tse850: Make some functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx: fix fiq dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: acp3x: Make acp3x_dai_i2s_ops static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Remove set but not used variable 'mclk_rate' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_micfil: Remove set but not used variable 'osr' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: Enable TDM support for DSP_A/B modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Configure wclk and bclk of master codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix build err while CONFIG_I2C set to module (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix spelling mistake "plalform" -> "platform" (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply the fixup for ASUS Q325UAR (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Register irq handler after the chip initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: usx2y: fix a double free bug (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: overwrite hdev type to HDA_DEV_ASOC (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix unregister device twice on ASoC driver (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: use dynamic buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix a memory leak bug (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: fix misuse of x (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - EAPD turn on later (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed Dell AIO speaker noise (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: select relevant machine drivers for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Make sure BDW based machine drivers build for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Build support for SOF core and Intel drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Kconfig: expose common option between SST and SOF drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add platform differentiation for APL and CNL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: add SKL+ platform DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add support for HDAudio codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA trace operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA stream operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add hda-bus support and initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA PCM operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA firmware loader (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PCI device support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add ACPI device support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA IPC mechanisms. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA DSP HW operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add HDA controller for Intel DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add APL/CNL HW DSP support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add legacy IPC support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add BDW HW DSP support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add BYT, CHT and BSW DSP HW support. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add utils (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add xtensa support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Nocodec machine driver support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PM support (Jaroslav Kysela) [1683051] - [include] ALSA: ASoC: SOF: Add userspace ABI support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add firmware loader support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add DSP HW abstraction operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add DSP firmware logger support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add support for loading topologies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PCM operations support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add support for IPC IO between DSP and Host (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add driver debug support. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Sound Open Firmware KControl support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Sound Open Firmware driver core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: simplify dai driver initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Read pin switches conf from devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Add missing return 0 in remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: add asoc_simple_parse_pin_switches() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd fix irq mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: align quirk override handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: align quirk override handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: fix compilation warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Add support for runtime pm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Update is_slave_mode with correct value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum multi-channel data transfer support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: rt5682: initialize mutex before using (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: return the get_irq error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup 6ch settings to 8ch (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Handle the error from snd_usb_mixer_apply_create_quirk() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add new Dell platform for headset mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codec: hdac_hdmi add device_link to card device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: Remove set but not used variable 'stage_type' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: save fixed-up hw_params of BE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: tobermory: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: tm2_wm5110: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: speyside: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: spdif: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: snow: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_wm8994*: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_wm8580: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_spdif: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smartq_wm8987: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx_uda134x: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec*: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c2412-i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: rx1950_uda1380: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c-i2s-v2: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: pcm: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: lowland: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: littlemill: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: jive_wm8750: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: idma: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: h1940_uda1380: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: dmaengine: Convert to SPDX License Indentifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: bells: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: arndale: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ps3: Remove set but not used variables 'start_vaddr' and 'pcm_index' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - add two more pin configuration sets to quirk table (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Don't refer to snd_cards array directly (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Drop superfluous id-uniquification behavior (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Fix card races between register and disconnect (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Fix racy addition/deletion of nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Correct unlock sequence at snd_seq_client_ioctl_unlock() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add quirk for Focusrite Scarlett Solo (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Initialize ext-bus-specific fields in snd_hdac_bus_init(), too (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Initialize power_state field properly (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Protect racy pool manipulation from OSS sequencer (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Simplify snd_seq_kernel_client_enqueue() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Cover unsubscribe_port() in list_mutex (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ALSA: seq: Protect in-kernel ioctl calls with mutex" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix missing regmap requirement (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix racy display power access (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: fix error handling when try_module_get() fails. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix master clock management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl: fix wrong number of channels (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Coding style fixes (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Simplify error path in snd_timer_open() (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix race of get-subscription call vs port-delete ioctls (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Protect in-kernel ioctl calls with mutex (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Remove superfluous irqsave flags (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Align temporary re-locking with irqsave version (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Use kvmalloc() for cell pools (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Revert active callback sync check at close (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add two more machines to the power_save_blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix spacing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: remove headset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: update module refcount if module_get_upon_open is set (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: conditionally increase module refcount on component open (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for the Teclast X98+ II (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for inverted jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm1133-ev1: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: phycore-ac97: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm030-audio-fabric: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: p1022_rdk: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: p1022_ds: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mx27vis-aic32x4: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc8610_hpcd: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_i2s: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_ac97: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_dma: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-ssi: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-spdif: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-pcm-fiq: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-mc13783: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-es8328: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmux: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-dma: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eukrea-tlv320: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-pcm: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: fix sai driver name initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Use the correct dobj to free enum control values and texts (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix OOB-reads from strlcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: change mic bias DAPM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Support synchronous mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix big-endian check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix endianness issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdmout: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: rework quirks settings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-frddr: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-toddr: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-fifo: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: remove link components before cleaning up card resources (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: add remove() callback for component driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l35: Disable regulators on driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add adc volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add support of master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add reset management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add regulator management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Avoid calling snd_compr_stop_error from WDT expiry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98357a: add missing supported rates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Add Playback PowerTune Controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Add Switch for Setting Common Mode Voltage (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Do not use stream buffer size before it is set (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: Mark RXFIFO_DATA as volatile and precious (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix spelling mistake "faied" -> "failed" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: Correct PDM_CTRL0 reg value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: adjust waterlevel in frame unit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: add compatible for rk1808 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: fixup pdm fractional div (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: optimize clear logic (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: add default regs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: using left justified store mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: change dma burst to 8 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: fix regmap_ops hang issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Update copyright and use SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix the smatch warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Change author's name (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add quirk for Tuxedo XC 1509 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Move to ACT_INIT state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix modular build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: Enable codec clock once and keep it enabled (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix build error in mt8183_da7219_max98357_dev_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: TS3A227: fix build error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Make use of local variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Remove redundant NULL check in wm_adsp_buffer_free (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: aic31xx_set_jack() can be static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Check for buffer in trigger stop (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate B114-21 with ALC233 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Align tplg pointer increment across all kcontrols (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: support driver alias names for FE topology overrides (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum audio compress offload support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix SND_SOC_LOCHNAGAR_SC kconfig warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: set power_check callback for widgets that shouldnt be always on (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add button press detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add headphone/headset detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: skip missing substream while applying symmetry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_da7213: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [acpi] ALSA: ACPI / utils: Introduce acpi_dev_get_first_match_dev() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: remove set but not used variable 'dai_name' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add support for inverted jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Fix typo in comment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: fix spelling mistake: "missign" -> "missing" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Add machine driver with DA7219 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Add machine driver with TS3A227 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677-spi: Add ACPI ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add multi endpoint support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix Common Pins (Jaroslav Kysela) [1683051] - [sound] ALSA: us122l: Use alloc_pages_exact() (Jaroslav Kysela) [1683051] - [sound] ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers, take#2 (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Make snd_timer_close() really kill pending actions (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Check ack_list emptiness instead of bit flag (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Make sure to clear pending ack list (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Unify timer callback process code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: Fix kbuild failure (Jaroslav Kysela) [1683051] - [sound] ALSA: emux: Add support of loading GUS-patch (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Add Audio Mixer machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Add Audio Mixer CPU DAI driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: enable S24_LE format support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Only enable with common clock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Allow 192000 Sample Rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Remove mclk references (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Restructure set_dai_sysclk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Dynamically Determine Clocking (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Move aosr and dosr setting to separate functions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Control clock gating with CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model BDIV divider in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model DAC/ADC dividers in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model CODEC_CLKIN in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model PLL in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Initialize private_value in snd_soc_dapm_new_dai (Jaroslav Kysela) [1683051] - [sound] ALSA: aloop: Support S24 sample formats (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Don't suspend stream in unrecoverable PCM state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix NULL pointer dereference in snd_soc_dapm_free_kcontrol (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sirf-audio: Remove redundant of_match_node call (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix incorrect extern (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the issue of 64 bits division (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Fix crash at suspend/resume after failed codec registration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Simplify alt firmware loading code (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix possible OOB access in PCM oss plugins (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: test memory allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: lochnagar: Add driver to support Lochnagar 2 sound card (Jaroslav Kysela) [1683051] - [mfd] ALSA: mfd: lochnagar: Add support for the Cirrus Logic Lochnagar (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Properly Set Processing Blocks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mchp-i2s-mcc: add driver for I2SC Multi-Channel Controller (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: rename asoc_simple_card_xxx() to asoc_simple_() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: separate asoc_simple_card_parse_dai() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_card_init_priv() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_be_hw_params_fixup() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_dai_init() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_hw_param() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_shutdown() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_startup() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: share common priv for simple-card/audio-graph (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: add asoc_simple_debug_info() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Update DA7219 DAI clock name to align with codec updates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Expose BCLK and WCLK control through CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: fix channel swap issue when stream starts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_asrc: add constraint for the asrc of older version (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4270: Set auto-increment bit for register writes (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286 (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: oss: Fix Spectre v1 vulnerability (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: add mmap support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: fix debugfs warnings on entry creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: manage multiple prepare (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct some minor issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Don't use register read to determine slave/master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Break out clock setting into separate function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: jz4740: Depend on MIPS instead of MACH_JZ4740 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add WDT expiry IRQ handling support for Halo core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add HALO MPU fault logging (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add support for new Halo core DSPs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Reduce repititive code on mtk_regmap_update_bits. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Fix UBSAN warning. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out DSP specific operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out parsing of firmware ID header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Refactor firmware status reading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Move wm_adsp2_set_dspclk to CODEC drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Don't export wm_adsp2_lock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Shutdown any compressed streams on DSP watchdog timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add locking to wm_adsp2_bus_error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct handling of compressed streams that restart (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free link string in error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free stream_name of dai_drv (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Don't trigger jackpoll_work in azx_resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph: add graph_parse_mclk_fs() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph: rename graph_get_conversion() to graph_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add simple_parse_mclk_fs() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: rename simple_get_conversion() to simple_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: recording has no sound after booting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: fix jack type detection issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Check JD status when system resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: skip for i2s5 in mck_disable (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: use 8 byte header for IR context to get isochronous cycle (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add support MOTU 8pre FireWire (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and declaration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_JD_NOT_INV quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add support for active-high jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: Make gpio property optional (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: dt-bindings: add regulator property to simple amplifier (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: simple-amplifier: remame dio2125 documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: use 'version' field of unit directory to identify model (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: add a check for request_region (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: add a check for ioremap_nocache (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: create tlv before soc_tplg_init_kcontrol (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: merge alc_fixup_headset_jack to alc295_fixup_chromebook (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: hdmi - add Icelake support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: automatic selecting BCLK in I2S master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the typo of function name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Fix clock configuration for 44100 sample rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the issue of widget with prefixed name (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - add more quirks for HP Z2 G4 and HP Z240 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed Headset Mic JD not stable (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with ALC255 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: avoid build error without CONFIG_PM (Jaroslav Kysela) [1683051] - [sound] ALSA: usx2y: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Avoid NULL pointer dereference at snd_hdac_stream_start() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: axi-i2s: let both capture and playback be optional (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: src: Avoid a potential deadlock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix registers declaration in regmap (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: fix the issue of the widget with prefix name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: prevent snd_soc_dpcm use after free (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:intel:skl:fix a simultaneous playback & capture issue on hda platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:hdac_hda:use correct format to setup hda codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:soc-pcm:fix a codec fixup issue in TDM case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: fix davinci_mcasp_probe dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ams-delta: remove duplicate 'const' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: remove compat dma probing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: use default dai name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: improve channel capabilities handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: change trigger traces (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: add i2c dependency for SND_SOC_SDM845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: src: fix compiler warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix DAPM routes for capture stream (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: Fix probe deferral following prelink failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: avoid limiting params->msbits in hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix set_sync service (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix oversampling mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix race condition in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix exposed capabilities in spdif mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix iec958 controls indexation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ab8500: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix S/PDIF DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add quirk for MOTU MicroBook II (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd add loopback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic3x: fix reset gpio reference counting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: skip useless write in slave mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix race condition in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: remove useless callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix dma configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix stream count management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix 16 bit format support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix IRQ clearing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: fix dependency for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add Maxim98373 support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: gen: fix SSI9 4/5/6/7 busif related register address (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: fix construction of PCM frame for capture direction (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against Liquid Saffire 56 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Extend i915 component bind timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Improve logging messages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add support for multiple compressed buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Refactor compress stream initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Reorder some functions for improved clarity (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out stripping padding from ADSP data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Fix an IS_ERR() vs NULL checking bug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: sound card name from device tree (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Prevent uninitialized variable use (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix of-node refcount unbalance in apq8016_sbc_parse_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Fix of_node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix of-node refcount unbalance in DAI-link parser (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Fix of-node refcount unbalance in fsl_ssi_probe_from_dt() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Allow compressed buffers in any memory region (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Update cached error state on trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: pcm186x: Fix energysense SLEEP bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: pcm186x: fix wrong usage of DECLARE_TLV_DB_SCALE() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix multiple "IIS multi" devices initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix secondary platform device unregistration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk: Add DAI links for Multi-Playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Add Geminilake Dialog Maxim machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Headset button support in broxton machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Rename hpvcc regulator supply to cpvdd (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau1977: Add support for setting MICBIAS via DT (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Potential small memory leak in dapm_cnew_widget() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Add missing DAPM routes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Make function 'wm8741_mute' static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: fix register setting issue in RIGHT_J mode (Jaroslav Kysela) [1683051] - [sound] ALSA: SoC: imx-sgtl5000: add missing put_device() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix missing of_node_put() at simple_dai_link_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix refcount underflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Ensure proper sample rate on pri/sec PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: remove set but not used variables 'mask, cr1' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free created components in tplg load error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Make some symbols static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: select dmic for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: fix sysclk_df type (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: fix TXCLK_DF mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Add support to disable on-chip PLL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Add runtime support for DSP_A and I2S modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Fix frame polarity for DSP_A format (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Set constraint to always have 32 sample bits (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Remove capture support for codecs without ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: fix spelling mistake "doens't" -> "doesn't" (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Expose sample resolution through proc interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Prevent potential NULL platform data dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Remove unused SND_DMAENGINE_PCM_FLAG_CUSTOM_CHANNEL_NAME flag (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Update TDM usage to be more flexible (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add support for master mode BCLK rate adjustment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to SPDX License Indentifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Comments clean up (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Change indentation in SAMSUNG_I2S_FMTS definition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Simplify pri_dai, sec_dai pointers usage (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add missing put_device() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: Specify DMA channel names through custom DMA config (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Add support for secondary CPU DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Get rid of a static spinlock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move quirks data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move IP variant data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Drop spinlock pointer from i2s_dai data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move SFR pointer to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: es1688: Remove set but not used variable 'hw' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Disable PC beep in passthrough on alc285 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Headset microphone and internal speaker support for System76 oryp5 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cros_ec_codec: Make symbol 'cros_ec_dai' static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: make some functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Remove unused including (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move registers cache to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move opclk data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move core clk to the driver common data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Add widgets and routes for DPCM support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move clk supplier data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Restore support for the secondary PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Comment why read blocks when PCM is not running (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: remove new_mach_data field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: cnl-match.c: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: icl-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: hsw-bdw-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: glk-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: cht-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: byt-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: bxt-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: icl-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hsw-bdw-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hda-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cnl-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: byt-match.c: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to single component with multiple DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: dmaengine: Allow to specify custom DMA device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Extend use of chan_names provided in custom DMA config (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Improve of_node test in dmaengine_pcm_request_chan_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix prescaler setting for the secondary DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Use __printf markup to silence compiler (Jaroslav Kysela) [1683051] - [sound] ALSA: tlv320aic32x4: delay i2c access by 1 ms after hardware reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd fix rx stream assign (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Set OSR mode in hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Add digital mute callback (Jaroslav Kysela) [1683051] - [sound] ALSA: PCM: check if ops are defined before suspending PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: use devm_kzalloc for all structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: use pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add clock select (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add soft reset on probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: set .ignore_module_refcount field in component (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: don't increase component module refcount unconditionally (Jaroslav Kysela) [1683051] - [sound] ALSA: gpiolib: acpi: Introduce ACPI_GPIO_QUIRK_ONLY_GPIOIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: convert license header to SPDX (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-analog: add missing license information (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: regulator notifier registration should be managed (Jaroslav Kysela) [1683051] - [sound] ALSA: i915/snd_hdac: I915 subcomponent for the snd_hdac (Jaroslav Kysela) [1683051] - [base] ALSA: components: multiple components for a device (Jaroslav Kysela) [1683051] - [documentation] ALSA: component: Add documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Revert capture stream behavior change in blocking mode (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix function name in kernel-doc comment (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Define snd_pcm_lib_preallocate_*() as returning void (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: fix up for snd_pcm_lib_preallocate_pages_for_all() API change (Jaroslav Kysela) [1683051] - [sound] ALSA: SoC: stm32: i2s: manage clock power (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: Remove unnecessary const qualifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Add support for Cirrus CS35L36 Amplifier (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix implicit fb endpoint setup by quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add quirk for HP EliteBook 840 G5 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: Use C++ style comments in header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: Kconfig: Show knob, and depend on MIPS || COMPILE_TEST (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4740: Add support for devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4740: Use SPDX license notifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: Prevent clk_get_rate() calls in atomic context (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Line Playback Volume, Line Boost Volume, Line Right, Line Left, Line Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add FM Playback Volume, FM Left, FM Right, FM Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic1 Playback Switch, Mic2 Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Merge sun4i_codec_left_mixer_controls and sun4i_codec_right_mixer_controls into sun4i_codec_mixer_controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic1 Boost Volume, Mic2 Boost Volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add sun7i_codec_controls, sun7i_codec_codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic Playback Volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add MIC2 Pre-Amplifier, Mic2 input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: fix spelling mistake "Deemphatize" -> "Deemphasize" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: fix semicolon.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: correct shift bit for ssiu9 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: Add jz4725b-codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup rsnd_ssi_master_clk_start() user count check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: harden use of lookup tables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xtensa: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: txx9: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dwc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix out-of-bounds accesses to DAPM lookup tables (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Clean up proc file creations (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Move card id proc creation into info.c (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Minor optimization (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Drop unused snd_info_entry.card field (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: pcmcia: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Add standard helpers for card proc file entries (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: emux: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: opl4: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssm2602: switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: Add helper functions for component trigger/set_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: Clarify the intent of current compressed ops handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: remove some unnecessary NULL checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssm2602: Fix ADC powerup sequencing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Check for NULL widget in dapm_update_dai_unlocked (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: spi: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: sh: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: parisc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: atmel: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix build error without CONFIG_PCI (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Fix stop handling on compressed capture streams (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for new T+A USB DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Always register entries recursively (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Don't allow NULL device for memory allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4118: fix missing header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd: fix spelling mistake "offest" -> "offset" (Jaroslav Kysela) [1683051] - [sound] ALSA: arm: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: unload physical dai link in remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: add SND_SOC_DOBJ_GRAPH type for dapm routes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: clear platform pointers on error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add warnings for widget overwrite when adding route (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Only power up active channels from a DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix oops/use-after-free case with dai driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix use-after-free issue with dailink sname (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: add btcvsd driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: Add channel numbers to AIFs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup TDM Split mode check for CTU (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: synchronize connection check for simple-card/audio-graph (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup MIX kctrl registration (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: pass struct device to DMA API functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hal2: pass struct device to DMA API functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Serialize codec registrations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use a common helper for hp pin reference (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix lose hp_pins for disable auto mute (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Headset microphone support for System76 darp5 (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: remove a superfluous function declaration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum audio DMA platfrom driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: modify dapm route loading routine and add dapm route unloading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix memory leak in soc_tplg_dapm_widget_create (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Fix memory leak from soc_tplg_denum_create_texts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Remove widgets from dobj list (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Reduce number of dereferences when accessing dobj (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Use standard device registration for beep (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply ALC294 hp init also for S4 resume (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Record the current power state before suspend/resume calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: remove useless test (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed hp_pin no value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cros_ec_codec: Add codec driver for Cros EC (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: Documentation: Add google, cros-ec-codec (Jaroslav Kysela) [1683051] - [maintainers] ALSA: MAINTAINERS: add maintainers for ChromeOS EC sub-drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix missing slimbus dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Cleanup DSD whitelist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: add slim support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add audio routings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add capture dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add playback dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add basic controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add support to wcd9335 codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt_rt298: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_da7213: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bdw-rt5677: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: broadwell: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: haswell: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add helper to change platform name for all dailinks (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: add support for Solid State Logic Duende Classic/Mini (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Variable "ret" in function rt5651_i2c_probe() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: add static inline fallbacks when CONFIG_ACPI=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Fix clocking calculations when not using the PLL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Implement the set_bclk_ratio interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use for_each_link_codecs() for dai_link codecs V2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Fixup build error for mt6358 (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix tight loop of OSS capture stream (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add Opus #3 to quirks for native DSD support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: add codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: add platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Allow soc_find_component lookups to match parent of_node (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use the common error path in __snd_pcm_lib_xfer() (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: Off by one in latter_handle_midi_msg() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: make const arrays static, reduces object code size (Jaroslav Kysela) [1683051] - [sound] ALSA: proc: Avoid possible leaks of snd_info_entry objects (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Simplify proc file destruction (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Drop unused snd_pcm_substream.file field (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: comment cleanup about destination address of async transactions for MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Cleanup snd_pcm_stream_lock() & co (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Remove down_write() hack for snd_pcm_link_rwsem (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: More fine-grained PCM link locking (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Fix multi-CODEC setups (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: support rx MIDI functionality for Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-specific operation to fill transaction buffer with MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add model-dependent parameter for address to receive async transaction for MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: support tx MIDI functionality of Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add model-dependent parameter for address range to receive async transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: change prototype of handler for async transaction with MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Correct the setting while select ASRC clk for AD/DA filter (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: add driver flag for runtime PM (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: implement runtime suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: remove redundant clock enable API (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: add runtime PM callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: get clock handles early in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: runtime power management support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: rename to asoc_simple_card_canonicalize_platform() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use for_each_link_codecs() for dai_link codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add soc_cleanup_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: reduce if/else nest on soc_probe_link_dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: merge card resources cleanup method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add new snd_soc_flush_all_delayed_work() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add .num_platform for dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Avoid confusing loop in snd_pcm_unlink() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Make PCM linked list consistent while re-grouping (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Unify snd_pcm_group initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Call snd_card_unref() inside in_pcm_file() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add mute LED support for HP ProBook 470 G5 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to parse of clock configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring for dump of sync status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to get clock status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to switch mode to fetch PCM frame (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to dump status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: obsolete proc node to leave one node (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: unify protocol layer for FF400/FF800 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: rename protocol layer for former models (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc.h: add explanation of legacy/modern style of dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Remove expensive print in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove error due to probe deferral (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-spdif: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: lower log level for potential probe deferral cases (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: put of nodes if finding codec fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix oops on re-probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add default pdata for i2s mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Set DAI format for dmic codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: select max98927 for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmux: change snprintf to scnprintf for possible overflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514-spi: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: change snprintf to scnprintf for possible overflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix PLL source register definitions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Don't defer probe on optional, NULL components (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Make snd_pcm_suspend() local static (Jaroslav Kysela) [1683051] - [sound] ALSA: pcmcia: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: arm: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: Move PCM suspend/resume code into trigger callback (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Suspend streams globally via device type PM ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Make snd_soc_find_component() more robust (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: fix init platform memory handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: parse AES audio parameters (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: Select REGMAP_MMIO to fix build error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: remove few unused variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4341: fix waring unused-function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: program stripe control for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: program stripe bits for controller (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add verbs for stripe control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add register offset for stripe control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add api to program stripe control bits (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skl: Fix display power regression (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix typo for ALC225 model (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: Hold client_mutex around soc_init_dai_link() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: use correct drvdata in snd_byt_cht_es8316_mc_remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: move the codec PLL configuration to _init (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: SND_SOC_DAPM_MICBIAS is deprecated (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add recalc_rate function to return DAI clock rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: MCLK should be enabled before DAI clocks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: defer card probe until all component is added to list (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Remove set but not used variable 'first_ch_bits' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix a mask wrong issue in snd_hdac_stream_start() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix mismatches for register mask and value in hdac controller (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Disable headset Mic VREF for headset mode of ALC225 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add unplug function into unplug state of Headset Mode for ALC225 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: fix CM6206 register definitions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: Variable "buf" in function rt274_jack_detect() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ADAU7002: Add optional delay before start of capture (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Potential NULL dereference in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirk for PoV TAB-P1006W-232 (v1.0) tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add support for jack-detect using an external GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirks module parameter (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Revert "Fix DMIC map headsetmic mapping" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add support for jack detect using an external GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add ACPI ID 10EC5640 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add quirk for PoV P1006W tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: update BSDSR/BSDISR handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sgtl5000: Allow SCLK pad drive strength to be changed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable SPDIF driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: add SPDIF audio driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Add MICFIL SoC Digital Audio Interface driver. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eliminate left-over from Raumfeld machine driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt298: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rl6437a: use __be32 for a __be32 buf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: store eq kcontrol byte in __be (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: use logical AND (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: fix endianness issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mt6351: remove unneeded variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tscs42xx.c: fix boolean test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: fix boolean assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98927: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5640: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rt286: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4271: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98383: fix boolean assignments to true/false (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5670: remove unused mux/mixer define (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: remove unused mux define (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: fix kernel doc descriptions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: remove unused constant variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98090: remove unused constant variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: declare trigger function as static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4458: Add support for AK4497 (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: fix a missing check of snd_ctl_add (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: fix check on snd_card_register (Jaroslav Kysela) [1683051] - [sound] ALSA: ice1712: fix a missing check of snd_i2c_sendbytes (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: add a check of the status of snd_ctl_add (Jaroslav Kysela) [1683051] - [sound] ALSA: oxygen: initialize spdif_playback_enable to 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: virtuoso: add de-emphasis control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support Dell headset mode for New AIO platform (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix an out-of-bound read in create_composite_quirks (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Always check descriptor sizes in parser code (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Check mixer unit descriptors more strictly (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Avoid access before bLength check in build_audio_procunit() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for GPIO mode of the pins (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: Move context save/restore to runtime_pm callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: No need for IS_MODULE/BUILTIN check for pcm driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirks for ASUS MeMO Pad 7 (ME176C) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: sst: Fallback to BYT-CR if IRQ 5 is missing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: sst: Simplify is_byt_cr() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Add ACPI match table entry for ES8316 codec on BYTCR platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Set card long_name based on quirks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add input-map support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add external speaker mux support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add jack-detect support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add support for SSP0 (BYTCR) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Minor refactoring (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Sort includes alphabetically (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator: fixed: Let core handle GPIO descriptor (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator/gpio: Allow nonexclusive GPIO access (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator: fixed: Default enable high on DT regulators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add DAC mono mix switch mixer control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add jack-detect support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Variable "val" in function rt274_i2c_probe() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: fix error handling in xlnx_formatter_pcm_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add workaround for silence of rk3288 ACODEC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: support ACODEC for rk3328 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: reduce naming prefix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: cleanup DAI link loop method - step2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: cleanup DAI link loop method - step1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add link_info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add 1 CPU : 1 Codec support again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add asoc_simple_card_get_conversion() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: reduce naming prefix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: cleanup DAI link loop method - step2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: cleanup DAI link loop method - step1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add link_info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add 1 CPU : 1 Codec support again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable audio formatter driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: add pcm formatter platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: remove simple-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove audio-graph-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add asoc_graph_card_get_conversion() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: check "reg" property on asoc_simple_card_get_dai_id() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: boards: use snd_mask_set_format in all machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: simplify boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Baytrail: simplify boolean test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Baytrail: remove unneeded variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: assign booleans to true/false (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: remove unneeded semicolon (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: simplify boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: remove useless cast (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: enable MCLK in STANDBY (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: save model id directly in of_device_id.data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: make the driver visible in Kconfig (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4341: Add driver for CS4341 DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix recording no sound issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: atom: Make PCI dependency explicit (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: prevent potential divide by zero bugs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Fix a small memory leak (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Fix a NULL vs IS_ERR() bug (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Off by one in of_q6asm_parse_dai_data() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Fix a double unlock in pcm512x_digital_mute() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: change license header format style (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell/Broadwell: fix setting for .dynamic field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: Grammar s/the the/the/ (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dma-sh7760: cleanup a debug printk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: set jack only for a specific backend (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Revert DSP detection on legacy HD-audio driver (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: clear pending irq handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable the headset mic auto detection for ASUS laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: HD-Audio: SKL+: force HDaudio legacy or SKL+ driver selection (Jaroslav Kysela) [1683051] - [sound] ALSA: HD-Audio: SKL+: abort probe if DSP is present and Skylake driver selected (Jaroslav Kysela) [1683051] - [sound] ALSA: HDA: export process_unsol_events() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX391UA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: fix model-id of unit for Apogee Ensemble (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Use Xen common shared buffer implementation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: Kconfig: Remove the deprecated options (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: Merge davinci and omap directories (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add mute LED support for HP EliteBook 840 G4 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to handle model-specific registers (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for packet streaming on Fireface 800 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: allocate isochronous resources in mode-specific implementation (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to handle multiplier mode (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share helper function to switch fetching mode (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix for state to fetch PCM frames (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: use the same print format for 'without_header' tracepoints (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix wrong assignment for 'out_packet_without_header' tracepoint (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix wrong handling payload_length as payload_quadlet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add display_port_rx port routing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add support to Display port RX dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: qdafe: add support for display_port_rx (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Add support to compress offload (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: add support to MP3 format (Jaroslav Kysela) [1683051] - [sound] ALSA: soc-compress: add support to snd_compr_set_runtime_buffer() (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: make use of runtime buffer for copy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add more platform granularity (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup prefix for snd_soc_codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup convert_rate/channel method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup mclk-fs method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: merge simple-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup prefix for snd_soc_codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup convert_rate/channel method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup mclk-fs method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: merge audio-graph-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fixup asoc_simple_card_get_dai_id() ID method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Invoke pcm_new() for all DAI-link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Implement the digital_mute interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: fix do_div warning in spdifin (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: add error logs on probe, remove dependency on NHLT (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: remove useless tests on HDaudio capabilities (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: stop probe if HDaudio capabilities don't exist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Harden DSP detection with PCI class/subclass info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add CFL-S support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add powersaving widgets for DAC and ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable i2s driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: Add i2s driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_rt5660: Add a new machine driver for kbl with rt5660 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg spdif input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-toddr: add support for spdifin backend (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Dereference pointer for memcpy sizeof in asoc_simple_card_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Fix SND_SOC_EUKREA_TLV320 build error on i.MX8M (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add support for Huawei WMI micmute LED (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix front speakers on Huawei MBXP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove RSND_REG_ from rsnd_reg (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for Fireface 800 with MIDI functionality only (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: localize a handler for MIDI messages on tx transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add driver data for register for MIDI high address (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share register for async transaction of MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for second optical interface for ADAT stream (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share helper function to get current sampling rate and clock source (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share status and configuration dump (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share some registers for status of clock synchronization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: care multi DPCM codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup "convert-rate/channels" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: care link / dai count (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: add dai-link support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - make pci_iounmap() call conditional (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi: Always set display_power_control for Intel HSW+ codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: Add missing display power-off at driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Make snd_hdac_display_power() void function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Properly free the display power at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Drop superfluous AZX_DCAPS_I915_POWERWELL checks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Refactor display power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup asoc_simple_card_parse_daifmt() timing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: use cpu/codec pointer on simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fix build warning without CONFIG_OF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: add rt5663 codec select (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: fix the audio jack button remapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Point of View Mobii TAB-P1005W-232 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Prowise PT301 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX433FN/UX333FA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX533FD with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: ALC294 mic and headset-mode fixups for ASUS X542UN (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Refactoring PM code (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix reference to wrong register for clock configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix the mute LED regresion on Lenovo X1 Carbon (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Add copyright and module author (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add configuration for headset codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add TDM configuration for speaker (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix signal paths (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Calculate LRCLK divider (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Remove useless assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Enable headset button support for new codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add jack button support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add jack pointer and unsolicited event bits to callback (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed headphone issue for ALC700 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5660: Add a new ACPI match ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ak4104: move to GPIO consumer API (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: cs4270: move to GPIO consumer API (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: use dma_ops of parent device for acp_audio_dma (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: use DMA addr rather than CPU pa for acp_audio_dma (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Gnawty (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Remove direct OF name and type accesses (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Fix mic issue on Acer AIO Veriton Z4860G/Z6860G (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Fix mic issue on Acer AIO Veriton Z4660G (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support for Acer Aspire C24-860 headset mic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: ALC286 mic and headset-mode fixups for Acer Aspire U27-880 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added max98373_reset for stable amp reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: care multi DPCM codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: care link / dai count (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fixup asoc_simple_card_get_dai_id() counting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add missing TDM Split mode support for simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup mod ID for CTU regmap read/write (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: indicates Channel and Mode for debug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Add Tegra186 and Tegra194 support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra - Probe up to 8 codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Clapper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove raumfeld machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix UAF decrement if card has no live interfaces in card.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for ICL (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix speaker output regression on Thinkpad T570 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: au8540: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add support for AMD Stoney Ridge (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add SMSL D1 to quirks for native DSD support (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix starvation on down_write_nonblock() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Call snd_pcm_unlink() conditionally at closing (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: compatible string as shortname (Jaroslav Kysela) [1683051] - [platform] ALSA: platform/x86: thinkpad_acpi: Add audio mute LED classdev support (Jaroslav Kysela) [1683051] - [platform] ALSA: platform/x86: dell-laptop: Add micmute LED trigger support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Support led audio trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: Don't disable pcm3168a when CONFIG_PM defined (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: introduce module_param wakeup_delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: introduce mode switch delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: sdm845: Create and setup jack in init callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: sdm845: Add board specific dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Implement configurable dismod handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Update PDIR (pin direction) register handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Clear TXSTAT register before activating serializers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add FW reply for MCLK/SCLK IPC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Make DSP replies more human readable (Jaroslav Kysela) [1683051] - [drivers] ALSA: leds: trigger: Introduce audio mute LED trigger (Jaroslav Kysela) [1683051] - [drivers] ALSA: leds: core: Introduce LED pattern trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup registering method for rsnd_kctrl_new() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support ALC300 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add auto-mute quirk for HP Spectre x360 laptop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix whitespace (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc.h: makes snd_soc_of_parse_audio_prefix() inline (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fix a NULL vs IS_ERR() check in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - fix the pop noise on headphone for lenovo laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: fix spelling mistake "Frequence" -> "Frequency" (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers" (Jaroslav Kysela) [1683051] - [sound] ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: control: Consolidate helpers for adding and replacing ctl elements (Jaroslav Kysela) [1683051] - [sound] ALSA: control: Fix race between adding and removing a user element (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Fix invalid snd_free_pages() at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: wss: Fix invalid snd_free_pages() at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - fix headset mic detection for MSI MS-B171 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add ASRock N68C-S UCC the power_save blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: Fix incorrect bit shift at AC97-SPSA control write (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: notify events of change of state for userspace applications (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: apply small refactoring to handle several type of event for hwdep interface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: queue events for change of control surface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: add new hwdep ioctl command to get state image (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: pick up data of state from tx isochronous pakcets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-dmic: Add pm_qos handling to avoid overruns with CPU_IDLE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcpdm: Add pm_qos handling to avoid under/overruns with CPU_IDLE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Fix latency value calculation for pm_qos (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup define position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup typo SND_AUDIO_GRAPH_CARD (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup asoc_simple_card_parse_daifmt() timing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup "convert-rate/channels" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup "prefix" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup "prefix" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add snd_soc_of_parse_node_prefix() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: add VCC regulator widget (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Add support for cpvdd regulator supply (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: remove "option" from asoc_simple_card_of_parse_routing() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: tidyup asoc_simple_card_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: accept NULL parameter on asoc_simple_card_xxx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: remove asoc_simple_card_clk_register() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: makes rsnd_ssi_is_dma_mode() static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup rsnd_parse_connect_ssiu_compatible() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add support for Secondary MI2S interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Update slot_width for Quaternary TDM port (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use platform_data for machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: fix interface for Chromebook machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: acpi: define common interface for machine driver configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: acpi: fix: continue searching when machine is ignored (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optional (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic3x: Add support for CBM_CFS and CBS_CFM clocking modes (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Use device_type helpers to access the node type (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - fix AE-5 pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add new ZxR quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: clean up indentation, replace spaces with tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Fix error handling of regulator_set_load (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: fix spelling mistake "Inavlid" -> "Invalid" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: fix indentation issue with return statement (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320dac33: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: asihpi: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Convert a few more users to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Add regulator support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4118: Add support for AK4118 S/PDIF transceiver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Fix device reset-registers trigger value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: remove set but not used variable 'dma_buffer' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fixed build errors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Recalculate audio map forcely when card instantiated (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-abe-twl6040: Fix missing audio card caused by deferred probing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: fix memory leak of i2s_data on error return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add DT property for single-ended output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Rename output widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Set dai_link id to each dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: add missing route for ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: enable acp3x drivers build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x system resume pm op (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x runtime pm ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x tdm mode support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x i2s ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x pcm driver dma ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Interrupt handler changes for ACP3x DMA driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add ACP3x PCM platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: create ACP3x PCM platform device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: add ACP3.0 PCI driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: add ACP 3.x IP register header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Power down links before turning off display audio power (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hdac_hdmi: add Icelake support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out common init code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Fix dma-unsafe read of scratch registers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add missing slave_config setting for I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: No need to initialize max_xx_thres when it is not used (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Remove redundant check for mcbsp->pdata (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Re-arrange files for core McBSP and Sidetone function split (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Move out the FIFO check from set_threshold and get_delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Simplify the mcbsp_start/_stop function parameters (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Clean up the interrupt handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Skip dma_data.maxburst initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Clean up dma_data addr initialization code (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: add support for APOGEE duet FireWire (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Call pci_iounmap() instead of iounmap() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add quirk entry for HP Pavilion 15 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Optimize for non-PCI configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use ring buffer for rsnd_mod_name() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: fix crash on module removal (Jaroslav Kysela) [1683051] - [sound] ALSA: oss: Use kvzalloc() for local buffer allocations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_ssi: Change to use DEFINE_SHOW_ATTRIBUTE macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add TDM Split mode support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add SSIU BUSIF support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: handle DPCM converted rate/chan under core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: move HDMI information from ssi.c to core.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use defined io_playback/io_capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: rename rsnd_runtime_is_ssi_xxx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove error check which never happen (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add quirk for APL RVP boards (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add SOF information for APL RVP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: remove GFP_ATOMIC, use GFP_KERNEL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: boards: fix Skylake typo (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use standard interface for Atom machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use standard interface for Hdaudio machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: change ac97 dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap: Remove unused machine driver for AM3517-evm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: remove read-only status register from snd_kcontrol_new (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak5558: Remove redundant snd_soc_component_read32 calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Fix the dai widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Only add routing once. (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Define registers for CM6206 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix incorrect clearance of thinkpad_acpi hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: Fix wrong MI2S SD line mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add quirk for boards using pmc_plt_clk_0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: rsnd_mod_name() handles both name and ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add .get_id/.get_id_sub (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: move .get_status under rsnd_mod_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: cleanup hw_constraint for LEFT_J/I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: On OMAP1 and OMAP2420 only 16bit format is supported (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: constify regulator_desc structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8825: remove unnecessary unlikely() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: mrfld: fix uninitialized variable access (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm97xx: fix uninitialized regmap pointer problem (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: constify snd_soc_ops structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix less than zero comparison on unsigned int (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: rename SND_SUNXI_ADDA_PR_REGMAP to SND_SUN8I_ADDA_PR_REGMAP (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Rip out the lpe audio runtime suspend/resume hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Fix runtime PM for hdmi-lpe-audio (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup clock start checker (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix oops w/ for_each_rtd_codec_dai_rollback() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix insufficient PCM rule for period/buffer size (Jaroslav Kysela) [1683051] - [sound] ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: fix to wait for releases of all ALSA character devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix noderef.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix master clock naming (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: add clock dependency for sai (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Actually fix microphone issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-i2s: move code from startup/shutdown hooks into pm_runtime hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm2000: Remove wm2000_read helper function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: fix mclk support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Log addresses as 8 digits in wm_adsp_buffer_populate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Rename memory fields in wm_adsp_buffer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add mclk support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: set sai as mclk clock provider (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: fix trivial checkpatch issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add support for hw_free on CODEC to CODEC links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: minor white space clean up (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c/cs8427: Fix int to char conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup SSICR::SWSP for TDM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: enable TDM settings for SSI parent (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add hw constraint for capture channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sta32x: Add support for XTI clock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: new codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra_sgtl5000: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: allow the sun8i-codec driver to be built on ARM64 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: Add new driver for Allwinner A64 codec's analog path controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec-analog: split regmap code into separate driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: Don't hardcode BCLK / LRCK ratio (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-i2s: Add compatibility with A64 codec I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: don't pass GFP_DMA32 to dma_alloc_coherent (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add 2 more models to the power_save blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add Kabylake Dialog+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add KBL Dialog Maxim I2S machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add SND_JACK_LINEOUT jack type (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: don't pass GFP_DMA32 to dma_alloc_coherent (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add I2S/Left_J TDM support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add hw constraint for channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add HW constraint for non RIGHT_J (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sta32x: set ->component pointer in private struct (Jaroslav Kysela) [1683051] - [sound] ALSA: au88xx: Add fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: opti92xx-ad1848: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: oss: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: caiaq: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add missing entries to Kconfig (Jaroslav Kysela) [1683051] - [sound] ALSA: isight: fix leak of reference to firewire unit in error path of .probe callback (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort DHT Rot Pnt Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort max98373_bde_gain_tlv in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort BDE Limiter Thresh Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort Digital Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: enable mclk-fs on codec node (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use 32bit TDM width as default (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98988: add I2C dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: simplify cleanup process when failing to register sound card (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob/fireworks: simplify handling of local device entry table (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: release reference count of firewire unit in .remove callback of bus driver (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: block .remove callback of bus driver till all of ALSA character devices are released (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo M715 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix headphone pin config for ASUS G751 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix input effect controls for desktop cards (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add error checking in ca0132_build_controls() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up patch_ca0132() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix microphone inconsistency issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98988: make it selectable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98088: Add master clock handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8782: add support for regulators (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add ASUS G751 quirk model entry (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add quirk for ASUS G751 laptop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Use the standard fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: Add fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau1761: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add custom mixer status quirks for RME CC devices (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: update quirk for B&W PX to remove microphone (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/sigmatel - Disable automute for Elo VuPoint (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: A lightweight function to discard pending bytes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add fault detect recovery property to DT bindings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: enable and disable extclk if given (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: checking NULL vs IS_ERR() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: Add missing break in skl_tplg_get_token() (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: use managed-resource to maintain cache of stream formats (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: use managed-resource to maintain model-specific data (Jaroslav Kysela) [1683051] - [sound] ALSA: fireworks: use managed-resource to maintain response buffer (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use managed-resource to maintain data specific to M-Audio FW-1814/ProjectMix I/O (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: use managed-resource of fw unit device for private data (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Cannot adjust speaker's volume on Dell XPS 27 7760 (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: add PCM rules to obsolete PCM constraints based on LCM of SYT_INTERVAL (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR exit commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR 600 ohm gain control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Remove input select enum for ZxR (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR input/output select commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR DSP post-download commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR init commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DBpro hda_codec_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR quirks + new quirk check function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix surround sound with output effects (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix AE-5 control type (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix mismatch for register mask and value in ext controller. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: qdsp6: remove duplicated include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9712: fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: add SND_SOC_I2C_AND_SPI dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: avoid AC97_BUS build warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils: Rename dummy_dma_ops to snd_dummy_dma_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98088: add OF support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add a MIC pre. route (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_component_dais() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_component() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup SSI clock during suspend/resume modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: qdsp6: remove duplicated include from q6adm.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tidyup for_each_card_prelinks() dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Remove the boost volume in the beginning of playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_dpcm_be() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_dpcm_fe() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_comp_order() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_components() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_rtds() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_links() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_prelinks() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rename for_each_rtd_codec_dai_reverse to rollback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: convert for_each_rtd_codec_dai() for missing part (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 exit function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 specific controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add input selection commands for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add output set commands for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up ca0132_alt_out_select (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DSP setup functions for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Merge post-dsp functions + cleanup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change firmware name and usage (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 regular init setup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 pre-init and ca0113 functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change ca0132_mmio_init for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Set AE-5 bools and select mixer (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add pincfg for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add quirk for Sound BlasterX AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Define new verbs and control params (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Refine indentations and constify snd_pcm_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix the audio-component completion timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677-spi: Drop unused GPIO include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Minor code modification (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix capture unstable in beginning for some runs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix the boost volume at the begining of playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Update calibration function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Remove HP volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Improve HP performance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: remove redundant include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514-spi: Get the period_bytes in the copy work to make sure the value correctly (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add snd_soc_is_matching_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: manage platform name under snd_soc_init_platform() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: remove duplicated include from q6asm-dai.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hisilicon: fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8328: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: fireworks: fix memory leak of response buffer at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak of discovered stream formats at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak for model-dependent data at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: fix memory leak for M-Audio FW1814 and ProjectMix I/O at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Enable runtime PM only for discrete GPU (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-digi00x: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0m: Register irq handler after register initializations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix implicit definition of pci_iomap() on SH (Jaroslav Kysela) [1683051] - [sound] ALSA: don't call skl_init_chip() to reset intel skl soc (Jaroslav Kysela) [1683051] - [sound] ALSA: enable interrupt after dma buffer initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ASoC: Intel: Skylake: Acquire irq after RIRB allocation" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove dai->driver NULL check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to card rebind (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: remove unneeded static set .owner field in platform_driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add missing INTERLEAVED PCM attribute (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove unused num_dai_links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: avoid nested code on soc_remove_dai() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5668: remove empty rt5668_i2c_remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Fix UBSAN warning at snd_soc_get/put_volsw_sx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: switch to new ac97 bus support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix simultaneous playback and capture on different channel (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: fix possible info leak to userspace on SNDRV_EMU10K1_IOCTL_INFO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add missing return value check for snd_soc_dapm_new_dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: skl-topology: Use kmemdup to replace kzalloc + memcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: q6core: Use kmemdup to replace kzalloc + memcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: txx9: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nuc900: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tscs454: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5668: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: bcm: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel_ssc_dai: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Ensure reset bit is cleared before configuring (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: clean up a return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix a couple uninitialized ret variables (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix memory leak in ff400_switch_fetching_mode() (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use address returned by kmalloc() instead of kernel stack for streaming DMA mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Update hardware pointer before start capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: usleep_range() needs include/delay.h (Jaroslav Kysela) [1683051] - [sound] ALSA: regmap: split up regmap_config.use_single_rw (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hdac_hdmi: Limit sampling rates at dai creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Avoid uninitialised variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sgtl5000: avoid division by zero if lo_vag is zero (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: don't use p for dev_dbg() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: don't fallback to PIO mode when -EPROBE_DEFER (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: adg: care clock-frequency size (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: gen: use tab instead of white-space (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: remove redundant check for !port condition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move CODEC to CODEC params from the widget to the runtime (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add support for multi-CODEC CODEC to CODEC links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move connection of CODEC to CODEC DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Cosmetic tidy up of snd_soc_dapm_new_control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move error handling to snd_soc_dapm_new_control_unlocked (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_link_codecs() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add overflow detection support (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: Cleanup indirect PCM helper usages (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: rme32: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix several mismatch for register mask and value (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Convert to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Don't schedule DAPM work if already in target state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Add driver for PROTO Audio CODEC (with a WM8731) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: merge .nolock_start and .prepare (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: Support to init different BUSIF instance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: Support BUSIF other than BUSIF0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rsnd: dma: Calculate PDMACHCRE with consider of BUSIF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rsnd: dma: Calculate dma address with consider of BUSIF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssi: Check runtime channel number rather than hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssi: Fix issue in dma data address assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove is_play parameter from hw_rule function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for 8 bit S8 format (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for the DSP_A/DSP_B formats (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for 16/24 bit slot widths (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add warning message to rsnd_kctrl_accept_runtime() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup not to call clk_get/set under non-atomic (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Initialize allocated buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add short circuit detection support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix soc-core.c kernel-doc warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: q6routing: initialize data correctly (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Add channel fault reporting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Save last fault register even when clear (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Print full register name in error message (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: remove dai_link compatible code for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use snd_soc_dai_link_component for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: remove dai_link compatible code for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: use simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: use simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add a S/PDIF enable switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add native 32bit I2S transport (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: SOC_SINGLE register value error fix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: tas5720: add TAS5722 TDM slot width setting support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: tas5720: add TAS5722 specific volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Add support for FIFO usage caused delay reporting (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix cancel_work_sync() stall from jackpoll work (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Clean up jackpoll_ms option handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg pdm input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: add DT module alias (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: add Kconfig prompt for the generic dmic codec. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau17x1: Unused exported functions changed to internal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Improve legibility of if-statements (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Improve stylistics of file comments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: tse850: switch to SPDX license identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Change MCLK to 48Mhz (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Set constraints for DMIC and MAX98357a codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht-bsw-rt5672: Add key-mappings for the headset buttons (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add quirk for Thinkpad 8 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5670: Add quirk for Thinkpad 8 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau17x1: Implemented safeload support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sigmadsp: safeload should not have lower byte limit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: add asoc extension for legacy HDA codec drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: use hda_bus instead of hdac_bus (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: add HDA BE DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: use HDAudio if ACPI enumeration fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Machine driver for SKL+ w/ HDAudio codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add table for HDA-based platforms (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: move hda_codec.h to include/sound (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8804: Add ACPI support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Update calibration function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Change DAC/ADC volume scale (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added 10ms sleep after amp software reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdm: restrict formats depending on slot width (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-fifo: report interrupt request failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: imply clock and reset controllers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: Properly initialise hw->rate_max (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Don't fail creating new DAPM control on NULL pinctrl (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Remove clock framework ifdefs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Convert to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: intel_hdmi: Use the new non-cached allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Use the new non-cached allocation for 440MX workaround (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Remove substream allocation/free ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Use new non-cached allocation for non-snoop mode (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Check the non-cached stream buffers more explicitly (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Add non-cached buffer type (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Simplify snd_malloc_dev_pages() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Don't align the size to power-of-two (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Do error checks at creating system ports (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: add error check in snd_seq_system_client_init() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: signedness bug in snd_pcm_plug_alloc() (Jaroslav Kysela) [1683051] - [sound] ALSA: hdspm: fix spelling mistake "Initializeing" -> "Initializing" (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Return 0 when size < start_threshold in capture (Jaroslav Kysela) [1683051] - [kvm] ALSA: treewide: correct "differenciate" and "instanciate" typos (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix HP Headset Mic can't record (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix unbalanced pm_runtime_enable (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix check of pm_runtime_get_sync failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix device initialization in the compat layer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514: Fix the issue of the delay volume applied again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added speaker FS gain cotnrol register to volatile. (Jaroslav Kysela) [1683051] - [sound] ALSA: update dell-wmi mic-mute registration to new world order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix NULL pointer deference on CODEC to CODEC DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Fix discarding the unsubscribed output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Acquire irq after RIRB allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9712: fix replace codec to component (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirks for 2 more devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adav80x: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add delays to capture path to remove DC offset noise (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add exit commands for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change mixer controls for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D input and output select commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DSP setup defaults for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D startup functions and setup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add bool variable to enable/disable pci region2 mmio (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add quirk ID and enum for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add alt_functions unsolicited response (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up ca0132_init function. (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Create mmio gpio function to make code clearer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Make DSP name configurable by codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Declare firmware controls from codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added software reset register to readable registers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct DSP pointer for preloader control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677: Fix initialization of rt5677_of_match.data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: make BE and FE order inline with dpcm (Jaroslav Kysela) [1683051] - [sound] ALSA: intel_hdmi: remove redundant variable cfg_val (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Set delay value for the capture case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Modified DMA pointer for capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Make ACP->SYSMEM DMA non circular (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8994: Fix missing break in switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add SLIM tx AIF_IN dapm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: remove unused header files from common.h (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: remove unused header files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: remove unused header files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: make common.c as proper module (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8903: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da9055: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm5100-tables: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7213: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: twl6040: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8996: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4270: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8990: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tda7419: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5631: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9850: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360 (Jaroslav Kysela) [1683051] - [sound] ALSA: seq_oss: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-dmic: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcpdm: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-i2s: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: fix memory leak (Jaroslav Kysela) [1683051] - [sound] ALSA: synth: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: fix spelling mistake "acumulator" -> "accumulator" (Jaroslav Kysela) [1683051] - [sound] ALSA: es18xx: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: opti9xx: mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: opti92x: mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: galaxy: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt: Use refcap device for mono recording (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: remove support for card rebind using component framework (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: remove auto rebinding (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: remove auto rebinding (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix unmet dependency warning for SND_SOC_SDM845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8994: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9081: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8995: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8962: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8996: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8960: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8955: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5640: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8961: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix a typo (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix invalid use of sizeof in parse_uac_endpoint_attributes() (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Drop unused 64bit division macros (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Use no intrruptible mutex_lock (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix leftovers at probe error path (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Remove dead codes (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Minor cleanup of MIDI event parser helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm: Use delay set in component pointer function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix build due to CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: remove redundant pointer 'urb' (Jaroslav Kysela) [1683051] - [sound] ALSA: sonicvibes: remove redundant pointer 'dir' (Jaroslav Kysela) [1683051] - [sound] ALSA: ens137x: remove redundant array pcm_devs (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: remove redundant variable attn (Jaroslav Kysela) [1683051] - [sound] ALSA: cs5535audio: remove redundant pointer 'dma' (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: remove redundant variable max_streams (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: remove redundant pointers 'priv' and 'rtd' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8540: remove redundant variable osrate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: add sdm845 sound card support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Add support to parse common audio device nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add support to wcd9335 codec (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Operate UAC3 Power Domains in PCM callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add UAC3 Power Domains to suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: AudioStreaming Power Domain parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Initial Power Domain support (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Use READ_ONCE/WRITE_ONCE() macros (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Offload the output event processing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: change functions to static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: add support for multichannel output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sirf: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra_alc5632: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Kconfig: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4613: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7210: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4554: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4642: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8988: fix typo in rate constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: i2s: Fix typo/broken macro (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi: Use single mutex unlock in error paths (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Turn CX8200 into D3 as well upon reboot (Jaroslav Kysela) [1683051] - [sound] ALSA: ctxfi: cthw20k2: Replace mdelay() with msleep() and usleep_range() (Jaroslav Kysela) [1683051] - [sound] ALSA: ALSA:: ctxfi: cthw20k1: Replace mdelay() with msleep() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: quirks: Replace mdelay() with msleep() and usleep_range() (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp_modem: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: bt87x: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: maestro3: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0m: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: lola: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: riptide: Properly endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Proper endian notations for BDL pointers (Jaroslav Kysela) [1683051] - [sound] ALSA: trident: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: ymfpci: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: xen: Use standard pcm_format_to_bits() for ALSA format bits (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix PCM format bit calculation (Jaroslav Kysela) [1683051] - [sound] ALSA: wss: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: Fix PCM format notations (Jaroslav Kysela) [1683051] - [sound] ALSA: au88x0: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: ad1816a: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: riptide: Fix PCM format type conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix implicit PCM format type conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: virmidi: Fix too long output trigger loop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Use standard pcm_format_to_bits() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Declare PCM format with snd_pcm_format_t (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Use snd_mask_set_format() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix interval evaluation with openmin/max (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Add snd_mask_set_format() helper for standard usages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Fix snd_pcm_format_t handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Use int for format bit position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Fix missing __user prefix in copy_user callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: zte: Fix incorrect PCM format bit usages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: align axg card driver with DT bindings documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: use IRQ_RETVAL in the fifo irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix build warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add a fix voltage regulator for DA7219 and ADAU7002 (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Fix missing PAGE_SIZE definition (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: declare snd_sgbuf_aligned_pages() unconditionally (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Fix missing __force annotation for user/kernel pointer cast (Jaroslav Kysela) [1683051] - [sound] ALSA: korg1212: Add __force annotation to cast in user-copy callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use standard lower_32_bits() and upper_32_bits() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Declare the common variable in header file (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: Declare common variables properly (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix a sparse warning about snd_ctl_elem_iface_t (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Use NULL instead of 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Use NULL instead of 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Fix the default sample sizes (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Add missing __iomem annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for Encore mDSD USB DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: cs5535audio: Fix invalid endian conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: vxpocket: Fix invalid endian conversions (Jaroslav Kysela) [1683051] - [sound] ALSA: vx222: Fix invalid endian conversions (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix poll() error return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: fix widget handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: fix inversion between __iowrite32 and __ioread32 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: simplify iomem address and casts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: make sst_dma functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: BDL definitions should be __le32 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: fix endianness handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5631: add Volume to the name of volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_utils: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_asrc: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-asoc-card: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to snd_soc_dai_get_channel_map() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514: Fix the issue of the delay volume applied (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-spdifout: select SND_PCM_IEC958 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/i915: Allow delayed i915 audio component binding (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Generic DSD detection for Thesycon-based implementations (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Don't exceed over the requested size (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: catch invalid timer object creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove clock divider and pll setup from zylonite and magician (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg sound card support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: export snd_soc_of_get_slot_mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm input driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm output driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm interface driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm formatter base driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: improve goto error label (Jaroslav Kysela) [1683051] - [usb] ALSA: powerpc/ps3: Set driver coherent_dma_mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the "Connect Tablet 9" tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirk table entries for various devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add mono speaker quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add IN2 input mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Set OVCD limit for VIOS LTH17 to 2000uA (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix using the wrong GPIO for the ext-amp on some boards (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add IN3 Boost volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Parse HOST_BUFFER controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Allow up to 8 channels for voice control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Take prefix into account in control name length (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct algorithm list allocation size (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Ensure DSP boot work complete before preloader_put return (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Allow changing from a bad sample rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg spdif output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg toddr driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg frddr driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg fifo base driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: Add documentation for power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: remove component fw related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to card re-bind using component framework (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Add __force to cast in snd_pcm_lib_read/write() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Nuke snd_pcm_lib_mmap_vmalloc() (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Use kvmalloc() for buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Minor code refactoring (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Simplify error paths (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Tidy up coding styles (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Make audio component support more generic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/i915: Associate audio component with devres (Jaroslav Kysela) [1683051] - [sound] ALSA: drm/i915: Split audio component to a generic type (Jaroslav Kysela) [1683051] - [sound] ALSA: emu8000: Use swap macro in snd_emu8000_sample_new (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1_patch: Use swap macro in snd_emu10k1_sample_new (Jaroslav Kysela) [1683051] - [gpu] ALSA: vga_switcheroo: set audio client id according to bound GPU id (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: use PCI_BASE_CLASS_DISPLAY to replace PCI_CLASS_DISPLAY_VGA (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Tidy up logic for Processing Unit min/max values (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Unify virtual type units type to UAC3 values (Jaroslav Kysela) [1683051] - [include] ALSA: usb-audio: Add support for Processing Units in UAC3 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Processing Unit controls parsing in UAC2 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for Selector Units in UAC3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: For capture have interrupts on I2S->ACP channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Send correct channel for configuring DMA descriptors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add GLK Realtek Maxim I2S machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix routing (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: remove redundant pointer 'ins' (Jaroslav Kysela) [1683051] - [sound] ALSA: ali5451: remove redundant pointer 'codec' (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: remove redundant pointer runtime (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: remove redundant pointer private_data (Jaroslav Kysela) [1683051] - [sound] ALSA: es1688: remove redundant pointer chip (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: remove redundant pointer opl3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: off by one in routing_hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: fix a range check in of_q6afe_parse_dai_data() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: allow soc-core to pick up name prefixes from component nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: add rate merge to the BE stream merge (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: rework runtime stream merge (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix snd_interval_refine first/last with open min/max (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Reporting button presses (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Disable jack-detect over suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add button press support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Allow disabling jack-detect by calling set_jack(NULL) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Fix workqueue cancel vs irq free race on remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add support for externar amplifier enable GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Move getting of codec_dev into probe() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove is_valleyview helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix2 8 tablet (Jaroslav Kysela) [1683051] - [dma] ALSA: dmaengine: add support for reporting pause and resume separately (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau171x1: Connect playback DAI to the DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: make SND_PXA_SOC_SSP depend on PLAT_PXA (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: replace "p" with "pK" (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Allow drivers to set R/W wait time. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: add support for an external clock in devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: cmd: Add missing newline to debug message (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: Use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Do not overwrite slim dai num_channels (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add slim rx routings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add support to slim tx dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: Add missing slimbus capture ports (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sti: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8825: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: do not close port if its not opened (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: do not close port if its not opened (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use snd_pcm_stop_xrun() for xrun injection (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: trace XRUN event at injection, too (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Allow topology to override machine driver FE DAI link config. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel-i2s: Remove unnecessary audio PLL clock (aclk) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: add support for the es7154 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: correct required power supplies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Simplify trigger handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Reset bytescount when starting transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Do not generate interrups for every captured sample (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix Capture DMA channel names (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Always subtract bytescount (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Always stop ch2 first (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7241: add es7241 codec support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add button detection mode control (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-midi: use irqsave() in USB's complete callback (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: caiaq: audio: use irqsave() in USB's complete callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: Add VDD and AVDD power supplies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: check if mclk rate is valid (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: remove 64kHz rate from the supported rates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: remove .set_pll() and .set_clkdiv() callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: select SND_PXA2XX_LIB for drivers that depend on it (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ac97: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-compress: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-topology: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dapm: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-devres.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-jack.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dpcm.h: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-ops.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dai.h: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-io.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: snd-aoa: add of_node_put() in error path (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mt6797: sub dai use list_head (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: sub dai use list_head (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: make SND_PXA2XX_SOC_I2S selectable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove bindings from pxa2xx-pcm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: provide PCM ops for ssp, i2s and ac97 components (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa2xx-pcm-lib: fix indenting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: move some functions to pxa2xx-lib (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: clean up function names in pxa2xx-lib (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fold pxa2xx-pcm into its only user, pxa2xx-ac97 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove the dmaengine compat need (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Don't fall back to generic when i915 binding fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: don't merge format from invalid codec dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: extend channel merging to the backend cpu dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: qdafe: fix some off by one bugs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: improve runtime update predictability (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add AZX_DCAPS_PM_RUNTIME for AMD Raven Ridge (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: add extended ops in the hdac_bus (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: remove memory allocation from snd_hdac_ext_bus_device_init (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: split snd_hda_codec_new function (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: ext: add wait for codec to respond after link reset (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_driver, use hdac_driver instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_bus and use hdac_bus instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_device and use hdac_device instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Move in_pm accessors to HDA core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas517x: add tas5707 support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifer: add simple-amplifier compatible (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: rename dio2125 to simple-amplifer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Sort DMI table entries alphabetically (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_HP_LR_SWAPPED quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Simplify card long-name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix DMIC map headsetmic mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix IN1 map headsetmic mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove IN2 input mappings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix IN1_IN2_MAP quirk not being logged (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Change default input map from in2 to in1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_DEFAULT_QUIRKS define (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Kill snd_hda_codec_update_cache() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC882 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC262 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC268 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC259 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC662 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: Fix references to Documentation/.*/MultiSound (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: remove unused struct q6asm member (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add proper error check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: remove redundant owner assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6adm: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils: Fix unregistration order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cx20442: Don't ignore regulator_get() errors. (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply PRE_PROBE fixup after ALC269 codec variant setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Use standard verb containers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Simplify control management (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Rewrite with error goto (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/cirrus - Simplify creation of new controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/conexant - Clean up beep code (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common helper for creating beep controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common helper for creating ALC268 beep controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common GPIO mask for ALC660VD ASUS fixup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify Dell XPS13 GPIO handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Convert some manual GPIO setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify mute LED GPIO handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify alc885_fixup_macpro_gpio() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Consolidate gpio_data and gpio_led (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add GPIO data update helper (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Manage GPIO bits commonly (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Allow skipping spec->init_amp detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: add codecs devicetree binding (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm: DPCM cares BE channel constraint (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Configure channel 1 or channel 0 for capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Change codec to channel link as per hardware redesign (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: remove redundant check of PLL ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt1305: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: fix missing rename from 'reef' to 'sof' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify alc269_fixup_hp_line1_mic1_led() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Sanity check of unexpected cap_sync_hook override (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/sigmatel - Use common helper for mic mute LED (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Allow multiple ADCs for mic mute LED controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/conexant - Use the mic-mute LED helper (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use the mic-mute LED helper for HP and others (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Use the common helper for thinkpad_acpi mic mute LED handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Move mic mute LED helper to the generic parser (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: rename 'reef' to 'sof' in ACPI matching table (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: Set compressed IRQ to a wake source (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Simplify handling of alg offset and length (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add support for Motu Traveler (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: cancel chunk alignment for protocol version 2 (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add a flag for AES/EBU on XLR interface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add a flag for chunks for main 1/2 out (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: suppless consumption for unused element of array in stack (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: Tidy up open/hw_params handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: fix copy/paste issue with SOF/broadwell topology file (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add entries for SOF-based machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add firmware/topology information for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add Geminilake Dialog+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: move SKL+ codec ACPI tables to common directory (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: cleanup before moving ACPI tables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: broxton: reduce machine name for bxt_da7219_max98357a (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: add fe_ops for kbl Audio Capture Port (Jaroslav Kysela) [1683051] - [sound] ALSA: ARM: pxa: change SSP DMA channels allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: stop using get_seconds() (Jaroslav Kysela) [1683051] - [sound] ALSA: ctxfi: use enum type CT_SUM_CTL where appropriate (Jaroslav Kysela) [1683051] - [sound] ALSA: ice1724: remove unused array (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Fix Acer Iconia 8 over-current detect threshold (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Nuvison/TMax TM800W560 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: add devicetree support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: PCM1789: unconditionally flush work (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add rt5682 codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Add headphone auto switching (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Remove Playback/Capture in names (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Add mic bias boost control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4458: make structure soc_codec_dev_ak4458 static const (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak5558: make two structures static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: twl6040: make pointer dmic_codec_dev static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: set card as device drvdata (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add rsnd_daidrv_get() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add hp and mic detect gpios same as simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: move hp and mic detection to soc_card probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: move hp and mic detect gpios from simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Vi10 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt1305: Use ULL suffixes for 64-bit constants (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add config for rockchip dmaengine pcm register (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: put device_node on remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add iec958 controls support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add NULL pointer check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: SSI parent cares SWSP bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: has .symmetric_rates if SSIs are sharing WS pin (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh7760-ac97: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dma-sh7760: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: migor: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: siu: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hac: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Add callback for DAPM route load/unload (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Give more data to clients via callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix potential DAI widget pointer deref when linking DAIs (Jaroslav Kysela) [1683051] - [fs] gfs2: Fix loop in gfs2_rbm_find (v2) (Andreas Grunbacher) [1690483] - [fs] gfs2: Rename bitmap.bi_{len => bytes} (Andreas Grunbacher) [1690483]- [vfio] vfio/pci: Mask buggy SR-IOV VF INTx support (Myron Stowe) [1678076] - [netdrv] net/ibmvnic: Update carrier state after link state change (Steve Best) [1711282] - [netdrv] net/ibmvnic: Update MAC address settings after adapter reset (Steve Best) [1711282] - [scsi] scsi: storvsc: Reduce default ring buffer size to 128 Kbytes (Cathy Avery) [1691370] - [scsi] scsi: storvsc: Fix calculation of sub-channel count (Cathy Avery) [1691370] - [powercap] powercap: RAPL: Get rid of custom RAPL_CPU() macro (Alexander Beregalov) [1706827] - [tools] tools/power turbostat: Increase default buffer size (Prarit Bhargava) [1711260] - [char] virtio_console: initialize vtermno value for ports (Pankaj Gupta) [1460636] - [rpmspec] redhat: exclude kvm_stat from pathfix.py's tenure (Vitaly Kuznetsov) [1692804] - [virt] kvm: arm: Skip stage2 huge mappings for unaligned ipa backed by THP (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Ensure vcpu target is unset on reset failure (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-v3: Retire pending interrupts on disabling LPIs (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Fix CNTP_TVAL calculation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move RSB stuffing to before the first RET after VM-Exit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Fix size checks in vmx_set_nested_state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Check for in-kernel LAPIC before deferencing apic pointer (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix KVM_CLEAR_DIRTY_LOG for memory slots of unaligned size (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: reset MMU context when 32-bit guest switches PAE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Whitelist port 0x7e for pre-incrementing rip (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Convert guest TSC to host time domain if necessary (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Allow user to disable adaptive tuning of timer advancement (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Track lapic timer advance per vCPU (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Disable timer advancement if adaptive tuning goes haywire (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyper-v: deal with buggy TLB flush requests from WS2012 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Consider LAPIC TSC-Deadline timer expired if deadline too short (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix spectrev1 gadgets (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix warning Using plain integer as NULL pointer (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: add a selftest for SMM (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: fix for compilers that do not support -no-pie (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm/evmcs_test: complete I/O before migrating guest state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Always use 32-bit SMRAM save state for 32-bit kernels (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: clear SMM flags before loading state while leaving SMM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Open code kvm_set_hflags (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Load SMRAM in a single shot when leaving SMM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Expose RDPMC-exiting only when guest supports PMU (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm: move kvm_load/put_guest_xcr0 into atomic context (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: svm: make sure NMI is injected after nmi_singlestep (Vitaly Kuznetsov) [1692804] - [kvm] svm/avic: Fix invalidate logical APIC id entry (Vitaly Kuznetsov) [1692804] - [kvm] Revert "svm: Fix AVIC incomplete IPI emulation" (Vitaly Kuznetsov) [1692804] - [kvm] kvm: mmu: Fix overflow on kvm mmu page limit calculation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: always use early vmcs check when EPT is disabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: allow tests to use bad virtual-APIC page address (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Fix an inverted list_empty() check when zapping sptes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: fix x2APIC VTPR read intercept (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: close leak of L0's x2APIC MSRs (CVE-2019-3887) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: SVM: prevent DBG_DECRYPT and DBG_ENCRYPT overflow (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: fix potential get_num_contig_pages overflow (Vitaly Kuznetsov) [1692804] - [documentation] Documentation: kvm: clarify KVM_SET_USER_MEMORY_REGION (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: complete IO before migrating guest state (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: disable stack protector for all KVM tests (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: explicitly disable PIE for tests (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: assert on exit reason in CR4/cpuid sync test (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: update rip after emulating IO (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: avoid spurious pending stimer on vCPU init (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86: Move MSR_IA32_ARCH_CAPABILITIES to array emulated_msrs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts (Vitaly Kuznetsov) [1692804] - [virt] kvm: don't redefine flags as something else (Vitaly Kuznetsov) [1692804] - [kvm] kvm: mmu: Used range based flushing in slot_handle_level_range (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Fix definition of HV_MAX_FLUSH_REP_COUNT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: remove check on nr_mmu_pages in kvm_arch_commit_memory_region() (Vitaly Kuznetsov) [1692804] - [kvm] kvm: nVMX: Add a vmentry check for HOST_SYSENTER_ESP and HOST_SYSENTER_EIP fields (Vitaly Kuznetsov) [1692804] - [kvm] KVM: SVM: Workaround errata#1096 (insn_len maybe zero on SMAP violation) (Vitaly Kuznetsov) [1692804] - [virt] KVM: Reject device ioctls from processes other than the VM's creator (Vitaly Kuznetsov) [1692804] - [documentation] KVM: doc: Fix incorrect word ordering regarding supported use of APIs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix handling of role.cr4_pae and rename it to 'gpte_size' (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Do not inherit quadrant and invalid for the root shadow EPT (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Comments cleanup in mmu.c (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Make attribute accessors static (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Fix handling of stage2 huge mappings (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Enforce PTE mappings at stage2 when needed (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Take the srcu lock when parsing the memslots (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Take the srcu lock when writing to guest memory (Vitaly Kuznetsov) [1692804] - [virt] arm64: KVM: Always set ICH_HCR_EL2.EN if GICv4 is enabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Reset the PMU in preemptible context (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: fix formatting of a comment (Vitaly Kuznetsov) [1692804] - [documentation] KVM: doc: Document the life cycle of a VM and its resources (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()" (Vitaly Kuznetsov) [1692804] - [documentation] virtio-ccw: diag 500 may return a negative cookie (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Add count cache flush parameters to kvmppc_get_cpu_char() (Vitaly Kuznetsov) [1692804] - [virt] kvm: properly check debugfs dentry before using it (Vitaly Kuznetsov) [1692804] - [powerpc] KVM: PPC: Fix compilation when KVM is not enabled (Vitaly Kuznetsov) [1692804] - [powerpc] powerpc: Avoid circular header inclusion in mmu-hash.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: MMU: record maximum physical address width in kvm_mmu_extended_role (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Return LA57 feature based on hardware capability (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: fix switch between root and guest MMUs (Vitaly Kuznetsov) [1692804] - [virt] KVM: Minor cleanups for kvm_main.c (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2 (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/kvm: Save and restore host AMR/IAMR/UAMOR (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Improve KVM reference counting (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Fix build failure without IOMMU support (Vitaly Kuznetsov) [1692804] - [powerpc] powerpc/64s: Better printing of machine check info for guest MCEs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Simplify machine check handling (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Context switch AMR on Power9 (Vitaly Kuznetsov) [1692804] - [virt] Revert "KVM: Eliminate extra function calls in kvm_get_dirty_log_protect()" (Vitaly Kuznetsov) [1692804] - [x86] x86: kvmguest: use TSC clocksource if invariant TSC is exposed (Vitaly Kuznetsov) [1692804] - [virt] KVM: Never start grow vCPU halt_poll_ns from value below halt_poll_ns_grow_start (Vitaly Kuznetsov) [1692804] - [virt] KVM: Expose the initial start value in grow_halt_poll_ns() as a module parameter (Vitaly Kuznetsov) [1692804] - [virt] KVM: grow_halt_poll_ns() should never shrink vCPU halt_poll_ns (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Consolidate kvm_mmu_zap_all() and kvm_mmu_zap_mmio_sptes() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: WARN if zapping a MMIO spte results in zapping children (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Differentiate between nr zapped and list unstable (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: fast invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Voluntarily reschedule as needed when zapping all sptes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: skip over invalid root pages when zapping all sptes (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: x86: use the fast way to invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: show mmu_valid_gen in shadow page related tracepoints" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: add tracepoint for kvm_mmu_invalidate_all_pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: zap pages in batch" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: collapse TLB flushes when zap all pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: reclaim the zapped-obsolete page first" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Remove is_obsolete() call (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Voluntarily reschedule as needed when zapping MMIO sptes (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: drop kvm_mmu_zap_mmio_sptes" (Vitaly Kuznetsov) [1692804] - [x86] Revert "KVM: MMU: document fast invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Zap only the relevant pages when removing a memslot (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Split remote_flush+zap case out of kvm_mmu_flush_or_zap() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Move slot_level_*() helper functions up a few lines (Vitaly Kuznetsov) [1692804] - [virt] KVM: Move the memslot update in-progress flag to bit 63 (Vitaly Kuznetsov) [1692804] - [virt] KVM: Remove the hack to trigger memslot generation wraparound (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Refactor the MMIO SPTE generation handling (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Use a u64 when passing the MMIO gen around (Vitaly Kuznetsov) [1692804] - [virt] KVM: Explicitly define the "memslot update in-progress" bit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Do not cache MMIO accesses while memslots are in flux (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Detect MMIO generation wrap in any address space (Vitaly Kuznetsov) [1692804] - [virt] KVM: Call kvm_arch_memslots_updated() before updating memslots (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [virt] kvm: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not start the preemption timer hrtimer unnecessarily (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Fix typos in vmentry/vmexit control setting (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: cleanup freeing of nested state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Sync the pending Posted-Interrupts (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: expose MOVDIR64B CPU feature into VM. (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: expose MOVDIRI CPU feature into VM. (Vitaly Kuznetsov) [1692804] - [kvm] kvm, x86, mmu: Use kernel generic dynamic physical address mask (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: remove useless is_protmode check (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Ignore limit checks on VMX instructions using flat segments (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Apply addr size mask to effective address for VMX instructions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Sign extend displacements of VMX instr's mem operands (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix improper check when deactivate AVIC (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: cull apicv code when userspace irqchip is requested (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix AVIC DFR and LDR handling (Vitaly Kuznetsov) [1692804] - [virt] kvm: Use struct_size() in kmalloc() (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: set offset for kvm unstable clock (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Reorder clearing of registers in the vCPU-run assembly flow (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Call vCPU-run asm sub-routine from C and remove clobbering (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Preserve callee-save registers in vCPU-run asm sub-routine (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Return VM-Fail from vCPU-run assembly via standard ABI reg (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass @launched to the vCPU-run asm via standard ABI regs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use RAX as the scratch register during vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Rename ____vmx_vcpu_run() to __vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Fold __vmx_vcpu_run() back into vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move vCPU-run code to a proper assembly routine (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Create a stack frame in vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use #defines in place of immediates in VM-Enter inline asm (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: Explicitly #define the VCPU_REGS_* indices (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Remove unused gpa_end variable (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Fix comment for KVM_PHYS_SHIFT (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: fix spelling mistake: "auxilary" -> "auxiliary" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Prefix header search paths with $(srctree)/ (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Fix TRACE_INCLUDE_PATH (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Mark physical interrupt active when a virtual interrupt is pending (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Describe data or unified caches as having 1 set and 1 way (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Expose sanitised cache type register to guest (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Move kvm_is_write_fault to header file (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Assign the phys timer on VHE systems (Vitaly Kuznetsov) [1692804] - [include] clocksource/arm_arch_timer: Store physical timer IRQ number for KVM on VHE (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: timer: Rework data structures for multiple timers (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: consolidate arch timer trap handlers (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Reuse sys_reg() macro when searching the trap table (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Fix ICH_ELRSR_EL2 sysreg naming (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Simplify bg_timer programming (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm/arm64: Factor out VMID into struct kvm_vmid (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Statically configure the host's view of MPIDR (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Drop VHE-specific HYP call stub (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Allow for direct call of HYP functions when using VHE (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Introduce kvm_call_hyp_ret() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Release all hardware TCE tables attached to a group (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Optimise mmio emulation for devices on FAST_MMIO_BUS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Allow XICS emulation to work in nested hosts using XIVE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Replace kmalloc_node+memset with kzalloc_node (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Add emulation for slbfee. instruction (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Fix entry number check for add_atomic_switch_msr() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Recompute PID.ON when clearing PID.SN (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Restore a preemption timer consistency check (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: read from MSR_IA32_VMX_PROCBASED_CTLS2 only when it is available (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use vcpu->arch.regs directly when saving/loading guest state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Don't save guest registers after VM-Fail (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Invert the ordering of saving guest/host scratch reg at VM-Enter (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass "launched" directly to the vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Update VMCS.HOST_RSP via helper C function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Load/save guest CR2 via C code in __vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Cache host_rsp on a per-VMCS basis (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Let the compiler select the reg for holding HOST_RSP (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Reference vmx->loaded_vmcs->launched directly (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Capture VM-Fail via CC_{SET, OUT} in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Capture VM-Fail to a local var in nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Explicitly reference the scratch reg in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Drop STACK_FRAME_NON_STANDARD from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Remove a rogue "rax" clobber from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Let the compiler save/load RDX during vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Manually load RDX in vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Save RSI to an unused output in the vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Modify only RSP when creating a placeholder for guest's RCX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Zero out *all* general purpose registers after VM-Exit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Check a single byte for VMCS "launched" in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: add selftest for releasing VM file descriptor while in L2 (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm/arm64: Add kvm_ras.h to collect kvm specific RAS plumbing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: work around leak of uninitialized stack contents (CVE-2019-7222) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Forbid kprobing of the VHE world-switch code (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Relax the restriction on using stage2 PUD huge mapping (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Always initialize the group of private IRQs (Vitaly Kuznetsov) [1692804] - [kvm] arm/arm64: KVM: Don't panic on failure to properly reset system registers (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Allow a VCPU to fully reset itself (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Reset the VCPU without preemption and vcpu state loaded (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: fix possible null pointer dereference in pending_irqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: start using the GIB (Vitaly Kuznetsov) [1692804] - [s390] KVM: s390: add gib_alert_irq_handler() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: kvm_s390_gisa_clear() now clears the IPM only (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add functions to (un)register GISC with GISA (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add kvm reference to struct sie_page2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add the GIB and its related life-cyle functions (Vitaly Kuznetsov) [1692804] - [s390] s390/cio: add function chsc_sgib() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: introduce struct kvm_s390_gisa_interrupt (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: remove kvm_s390_ from gisa static inline functions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: use pending_irqs_no_gisa() where appropriate (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: coding style kvm_s390_gisa_init/clear() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: move bitmap idle_mask into arch struct top level (Vitaly Kuznetsov) [1692804] - [virt] virt/kvm: Replace spin_is_locked() with lockdep (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Mark expected switch fall-throughs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix TRACE_INCLUDE_PATH and remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: check returned evmcs version range (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: nested_enable_evmcs() sets vmcs_version incorrectly (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move vmx_vcpu_run()'s VM-Enter asm blob to a helper function (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: Fix region overlap check in kvm_util (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: fix some -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nSVM: clear events pending from svm_complete_interrupts() when exiting to L1 (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix AVIC incomplete IPI emulation (Vitaly Kuznetsov) [1692804] - [kvm] svm: Add warning message for AVIC IPI invalid target (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: WARN_ONCE if sending a PV IPI returns a fatal error (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix PV IPIs for 32-bit KVM host (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: recommend using eVMCS only when it is enabled (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: don't recommend doing reset via synthetic MSR (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86/vmx: Use kzalloc for cached_vmcs12 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use the correct field var when clearing VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix single-step debugging (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: don't announce GUEST IDLE MSR support (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Don't generate UNDEF when LORegion feature is present (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_cpu->ap_list_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_dist->lpi_list_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_irq->irq_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [kvm] KVM: powerpc: remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [documentation] Documentation/virtual/kvm: Update URL for AMD SEV API specification (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Avoid return error when flush tlb successfully in the hv_remote_flush_tlb_with_range() (Vitaly Kuznetsov) [1692804] - [kvm] kvm: sev: Fail KVM_SEV_INIT if already initialized (Vitaly Kuznetsov) [1692804] - [virt] KVM: validate userspace input in kvm_clear_dirty_log_protect() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix bit shifting in update_intel_pt_cfg (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: radix: Fix uninitialized var build error (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: ucall: fix exit mmio address guessing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VM-Enter + VM-Exit handling to non-inline sub-routines (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Explicitly reference RCX as the vmx_vcpu pointer in asm blobs (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use SVM assembly instruction mnemonics instead of .byte streams (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range() (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Flush tlb directly in kvm_set_pte_rmapp() (Vitaly Kuznetsov) [1692804] - [virt] KVM/MMU: Move tlb flush in kvm_set_pte_rmapp() to kvm_mmu_notifier_change_pte() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: Make kvm_set_spte_hva() return int (Vitaly Kuznetsov) [1692804] - [kvm] KVM: Replace old tlb flush function with new one to flush a specified range. (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Add tlb flush with range helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Add hv tlb range flush support (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Add HvFlushGuestAddressList hypercall support (Vitaly Kuznetsov) [1692804] - [x86] KVM: Add tlb_remote_flush_with_range callback in kvm_x86_ops (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Disable Intel PT when VMXON in L1 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Set intercept for Intel PT MSRs read/write (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Implement Intel PT MSRs read/write emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Introduce a function to initialize the PT configuration (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel PT context switch for each vcpu (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel Processor Trace cpuid emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel PT virtualization work mode (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: add new capability for Intel PT (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Add new bit definitions for PT MSRs (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Introduce intel_pt_validate_cap() (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Export pt_cap_get() (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Move Intel PT MSRs bit defines to global header (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: aarch64: dirty_log_test: support greater than 40-bit IPAs (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add pa-48/va-48 VM modes (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: improve mode param management (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: reset guest test phys offset (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: always use -t (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: don't identity map the test mem (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: x86_64: dirty_log_test: fix -t (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix some typos (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: convert to SPDX identifiers (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Remove KF() macro placeholder (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Allow guest read access to IA32_TSC (Vitaly Kuznetsov) [1692804] - [kvm] kvm: nVMX: NMI-window and interrupt-window exiting should wake L2 from HLT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nSVM: Fix nested guest support for PAUSE filtering. (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Remove duplicated include from vmx.c (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: report failed stage when exit reason is unexpected (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix size of x86_fpu_cache objects (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/fsl: Flush branch predictor when entering KVM (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/fsl: Emulate SPRN_BUCSR register (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nSVM: fix switch to guest mmu (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Add trapped system register access tracepoint (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Make vcpu const in vcpu_read_sys_reg (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Simplify kvm_timer_vcpu_terminate (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Remove arch timer workqueue (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix unregistering coalesced mmio zone from wrong bus (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Add support for creating PUD hugepages at stage 2 (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Update age handlers to support PUD hugepages (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Support handling access faults for PUD hugepages (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Support PUD hugepage in stage2_is_exec() (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Support dirty page tracking for PUD hugepages (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Introduce helpers to manipulate page table entries (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Re-factor setting the Stage 2 entry to exec on fault (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Share common code in user_mem_abort() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Log PSTATE for unhandled sysregs (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Consistently advance singlestep when emulating instructions (Vitaly Kuznetsov) [1692804] - [virt] arm64: KVM: Skip MMIO insn after emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L3 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Introduce new hcall H_COPY_TOFROM_GUEST to access quadrants 1 & 2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L2 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Update kvmppc_st and kvmppc_ld to use quadrants (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Add load_from_eaddr and store_to_eaddr to the kvmppc_ops struct (Vitaly Kuznetsov) [1692804] - [powerpc] KVM: PPC: Book3S HV: Implement functions to access quadrants 1 & 2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Add function kvmhv_vcpu_is_radix() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Only report KVM_CAP_SPAPR_TCE_VFIO on powernv machines (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: ucall: improve ucall placement in memory, fix unsigned comparison (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Dynamically allocate guest_fpu (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Use task structs fpu field for user (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for Guest Non-Register States to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for Host Control Registers and MSRs to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Entry Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Exit Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Remove param indirection from nested_vmx_check_msr_switch() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Execution Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Prepend "nested_vmx_" to check_vmentry_{pre, post}reqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Check ept_pointer before flushing ept tlb (Vitaly Kuznetsov) [1692804] - [kvm] KVM nVMX: MSRs should not be stored if VM-entry fails during or after loading guest state (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Don't modify MSR_PLATFORM_INFO on vCPU reset (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: add cpu into VMX preemption timer bug list (Vitaly Kuznetsov) [1692804] - [kvm] x86/hyper-v: Stop caring about EOI for direct stimers (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: avoid open-coding stimer_mark_pending() in kvm_hv_notify_acked_sint() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: direct mode for synthetic timers (Vitaly Kuznetsov) [1692804] - [x86] x86/kvm/hyper-v: use stimer config definition from hyperv-tlfs.h (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: Add hyperv_cpuid test (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: implement an unchecked version of vcpu_ioctl() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: Introduce KVM_GET_SUPPORTED_HV_CPUID (Vitaly Kuznetsov) [1692804] - [kvm] x86/hyper-v: Do some housekeeping in hyperv-tlfs.h (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Mark TLFS structures packed (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: Introduce nested_get_evmcs_version() helper (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyperv: don't retry message delivery for periodic timers (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyperv: simplify SynIC message delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: remove unnecessary recalculate_apic_map (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: remove unused struct definition (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Skip all SYSCALL MSRs in setup_msrs() when !EFER.SCE (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Don't set hardware IA32_CSTAR MSR on VM-entry (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Document the need for MSR_STAR in i386 builds (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Set IA32_TSC_AUX for legacy mode guests (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move nested code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose nested_vmx_allowed() to nested VMX as a non-inline (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose various getters and setters to nested VMX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose misc variables needed for nested VMX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move "vmcs12 to shadow/evmcs sync" to helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Call nested_vmx_setup_ctls_msrs() iff @nested is true (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Set callbacks for nested functions during hardware setup (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move the hardware {un}setup functions to the bottom (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: Allow nested_enable_evmcs to be NULL (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move nested hardware/vcpu {un}setup to helper functions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMX instruction wrappers to a dedicated header file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move eVMCS code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Add vmx.h to hold VMX definitions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move vmcs12 code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMCS definitions to dedicated file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose various module param vars via capabilities.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move capabilities structs and helpers to dedicated file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass vmx_capability struct to setup_vmcs_config() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Properly handle dynamic VM Entry/Exit controls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move caching of MSR_IA32_XSS to hardware_setup() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Drop the "vmx" prefix from vmx_evmcs.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: rename vmx_shadow_fields.h to vmcs_shadow_fields.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMX specific files to a "vmx" subdirectory (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add requisite includes to hyperv.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add requisite includes to kvm_cache_regs.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Alphabetize the includes in vmx.c (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Allocate and configure VM{READ, WRITE} bitmaps iff enable_shadow_vmcs (Vitaly Kuznetsov) [1692804] - [tools] kvm: introduce manual dirty log reprotect (Vitaly Kuznetsov) [1692804] - [virt] kvm: rename last argument to kvm_get_dirty_log_protect (Vitaly Kuznetsov) [1692804] - [virt] kvm: make KVM_CAP_ENABLE_CAP_VM architecture agnostic (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Set hflag to indicate that POWER9 supports 1T segments (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Change to use DEFINE_SHOW_ATTRIBUTE macro (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Don't trap host pointer auth use to EL2 (Vitaly Kuznetsov) [1692804] - [kvm] arm64/kvm: hide ptrauth from guests (Vitaly Kuznetsov) [1692804] - [arm64] arm64: add pointer authentication register bits (Vitaly Kuznetsov) [1692804] - [arm64] arm64: add comments about EC exception levels (Vitaly Kuznetsov) [1692804] - [arm64] arm64/kvm: consistently handle host HCR_EL2 flags (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Add configuration/documentation for Cortex-A76 erratum 1165522 (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Handle ARM erratum 1165522 in TLB invalidation (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Add synchronization on translation regime change for erratum 1165522 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Force VHE for systems affected by erratum 1165522 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Add TCR_EPD{0,1} definitions (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Rework detection of SVE, !VHE systems (Vitaly Kuznetsov) [1692804] - [kvm] nVMX x86: Check VMX-preemption timer controls on vmentry of L2 guests (Vitaly Kuznetsov) [1692804] - [kvm] KVM/nVMX: Remove unneeded forward jump in nested_vmx_check_vmentry_hw asm (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Unrestricted guest mode requires EPT (Vitaly Kuznetsov) [1692804] - [tools] tools/kvm_stat: switch to python3 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Trace changes to active TSC offset regardless if vCPU in guest-mode (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: vmcs12 revision_id is always VMCS12_REVISION even when copied from eVMCS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Verify eVMCS revision id match supported eVMCS version on eVMCS VMPTRLD (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/vmx: fix old-style function declaration (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix empty-body warnings (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Fix kernel info-leak when enabling KVM_CAP_HYPERV_ENLIGHTENED_VMCS more than once (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Replace spin_is_locked() with lockdep (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Move and undef TRACE_INCLUDE_PATH/FILE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Use exported tb_to_ns() function in decrementer emulation (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: Fix -Wformat warnings (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: fix spelling mistake "Insufficent" -> "Insufficient" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "kvm: x86: optimize dr6 restore" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Optimize clearing TCEs for sparse tables (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: tweak shadow fields (Vitaly Kuznetsov) [1692804] - [tools] selftests/kvm: add missing executables to .gitignore (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Don't use streamlined entry path on early POWER9 chips (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Enable 32 bits kvm vcpu events support (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Rename function kvm_arch_dev_ioctl_check_extension() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: enable nested virtualization by default (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use 32bit xor to clear registers in svm.c (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Introduce KVM_CAP_EXCEPTION_PAYLOAD (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Defer setting of DR6 until #DB delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Defer setting of CR2 until #PF delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add payload operands to kvm_multiple_exception (Vitaly Kuznetsov) [1692804] - [x86] kvm: x86: Add exception payload fields to kvm_vcpu_events (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add has_payload and payload to kvm_queued_exception (Vitaly Kuznetsov) [1692804] - [documentation] KVM: Documentation: Fix omission in struct kvm_vcpu_events (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: add Enlightened VMCS test (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: nested state migration for Enlightened VMCS (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: state_test: test bare VMXON migration (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyperv: don't clear VP assist pages on init (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: optimize prepare_vmcs02{, _full} for Enlightened VMCS case (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: implement enlightened VMPTRLD and VMCLEAR (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add enlightened VMCS state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add KVM_CAP_HYPERV_ENLIGHTENED_VMCS capability (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: refactor evmcs_sanitize_exec_ctrls() (Vitaly Kuznetsov) [1692804] - [virt] KVM: refine the comment of function gfn_to_hva_memslot_prot() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: reintroduce pte_list_remove, but including mmu_spte_clear_track_bits (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: rename pte_list_remove to __pte_list_remove (Vitaly Kuznetsov) [1692804] - [virt] kvm/x86 : add coalesced pio support (Vitaly Kuznetsov) [1692804] - [documentation] kvm/x86 : add document for coalesced mmio (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86 : fix some typo (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Change hv flush logic when ept tables are mismatched. (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use 32bit xor to clear register (Vitaly Kuznetsov) [1692804] - [x86] KVM/x86: Use assembly instruction mnemonics instead of .byte streams (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Fix invvpid and invept register operand size in 64-bit mode (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: check if MMU reconfiguration is needed in init_kvm_nested_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: check if tdp/shadow MMU reconfiguration is needed (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: introduce source data cache for kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: make space for source data caching in struct kvm_mmu (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: get rid of redundant kvm_mmu_setup() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: introduce guest_mmu (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu.c: add kvm_mmu parameter to kvm_mmu_free_roots() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu.c: set get_pdptr hook in kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: make vcpu->mmu a pointer to the current MMU (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: optimize dr6 restore (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: optimize sparse VP set processing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: fix 'tlb_lush' typo (Vitaly Kuznetsov) [1692804] - [virt] vgic: Add support for 52bit guest physical address (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: WARN if nested run hits VMFail with early consistency checks enabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add option to perform early consistency checks via H/W (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: write HOST_IA32_EFER in vmx_set_constant_host_state() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: call kvm_skip_emulated_instruction in nested_vmx_{fail, succeed} (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not call nested_vmx_succeed() for consistency check VMExit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not skip VMEnter instruction that succeeds (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do early preparation of vmcs02 before check_vmentry_postreqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: initialize vmcs02 constant exactly once (per VMCS) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: split pieces of prepare_vmcs02() to prepare_vmcs02_early() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: remove ASSERT() on vmx->pml_pg validity (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vVMX: rename label for post-enter_guest_mode consistency check (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: assimilate nested_vmx_entry_failure() into nested_vmx_enter_non_root_mode() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: rename enter_vmx_non_root_mode to nested_vmx_enter_non_root_mode (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: try to set EFER bits correctly when initializing controls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: do not unconditionally clear EFER switching (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: reset cache/shadows when switching loaded VMCS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: use vm_exit_controls_init() to write exit controls for vmcs02 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: move vmcs12 EPTP consistency check to check_vmentry_prereqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: move host EFER consistency checks to VMFail path (Vitaly Kuznetsov) [1692804] - [virt] KVM: leverage change to adjust slots->used_slots in update_memslots() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: implement PV IPI send hypercalls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: optimize kvm_hv_flush_tlb() for vp_index == vcpu_idx case (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: valid_bank_mask should be 'u64' (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: keep track of mismatched VP indexes (Vitaly Kuznetsov) [1692804] - [virt] KVM: x86: hyperv: optimize 'all cpus' case in kvm_hv_flush_tlb() (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86: return meaningful value from KVM_SIGNAL_MSI (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: move definition PT_MAX_HUGEPAGE_LEVEL and KVM_NR_PAGE_SIZES together (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Remve unused function is_external_interrupt(). (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: return 0 in case kvm_mmu_memory_cache has min number of objects (Vitaly Kuznetsov) [1692804] - [kvm] nVMX x86: Make nested_vmx_check_pml_controls() concise (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: adjust kvm_mmu_page member to save 8 bytes (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: support high GPAs in dirty_log_test (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: stop lying to aarch64 tests about PA-bits (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: also test 64K pages on aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: port dirty_log_test to aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: introduce new VM mode for 64K pages (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add vcpu support for aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add virt mem support for aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add vm_phy_pages_alloc (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: tidy up kvm_util (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add cscope make target (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: move arch-specific files to arch-specific locations (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: introduce ucall (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: vcpu_setup: set cr4.osfxsr (Vitaly Kuznetsov) [1692804] - [kvm] KVM: LAPIC: Tune lapic_timer_advance_ns automatically (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Do not flush TLB on L1<->L2 transitions if L1 uses VPID and EPT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Flush linear and combined mappings on VPID02 related flushes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Use correct VPID02 when emulating L1 INVVPID (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Flush TLB entries tagged by dest EPTP on L1<->L2 transitions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: rename KVM_GUEST_CR0_MASK tp KVM_VM_CR0_ALWAYS_OFF (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Remove redundand permission bits removal (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Propagate errors to the guest when failed instead of ignoring (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Provide mode where all vCPUs on a core must be the same VM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Exiting split hack mode needs to fixup both PC and LR (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Remove some extra semicolon in kvm_target_cpu (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Validate all tces before updating tables (Vitaly Kuznetsov) [1692804] - [documentation] arm64: Add silicon-errata.txt entry for ARM erratum 1188873 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: arch_timer: Add workaround for ARM erratum 1188873 (Vitaly Kuznetsov) [1692804] - [virt] signal/arm/kvm: Use send_sig_mceerr (Vitaly Kuznetsov) [1692804] - [arm64] arm64/cpufeatures: Introduce ESR_ELx_SYS64_ISS_RT() (Vitaly Kuznetsov) [1692804] - [kvm] signal/x86: Use send_sig_mceerr as apropriate (Vitaly Kuznetsov) [1692804] - [x86] x86/kvm: Use __bss_decrypted attribute in shared variables (Vitaly Kuznetsov) [1692804] - [x86] x86/mm: Add .bss..decrypted section to hold shared variables (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: Inject #UD for SGX ENCLS instruction in guest (Vitaly Kuznetsov) [1692804] - [x86] KVM: vmx: Add defines for SGX ENCLS exiting (Vitaly Kuznetsov) [1692804] - [documentation] KVM: Documentation: rename the capability of KVM_CAP_ARM_SET_SERROR_ESR (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Mark kvm_get_preset_lpj() as __init (Vitaly Kuznetsov) [1692804] - [virt] kvm: Don't open code task_pid in kvm_vcpu_ioctl (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Share the parts of get/set events useful to 32bit (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: export the capability to set guest SError syndrome (Vitaly Kuznetsov) [1692804] - [kvm] arm/arm64: KVM: Add KVM_GET/SET_VCPU_EVENTS (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Switch kvmclock data to a PER_CPU variable (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Move kvmclock vsyscall param and init to kvmclock (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Mark variables __initdata and __ro_after_init (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Cleanup the code (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Decrapify kvm_register_clock() (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Remove page size requirement from wall_clock (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Remove memblock dependency (Vitaly Kuznetsov) [1692804] - [kvm] kvm/arm: use PSR_AA32 definitions (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Handle Set/Way CMOs as NOPs if FWB is present (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Add support for Stage-2 control of memory types and cacheability (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Handle mismatched cache type (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Fix mismatched cache line size detection (Vitaly Kuznetsov) [1692804]- [lib] rhel-kabi: Add RH_KABI_FORCE_CHANGE() to radix-tree and idr functions (Don Dutile) [1692079] - [lib] XArray: Fix xa_reserve for 2-byte aligned entries (Don Dutile) [1692079] - [lib] XArray: Fix xa_erase of 2-byte aligned entries (Don Dutile) [1692079] - [lib] XArray: Use xa_cmpxchg to implement xa_reserve (Don Dutile) [1692079] - [lib] XArray: Fix xa_release in allocating arrays (Don Dutile) [1692079] - [lib] XArray: Mark xa_insert and xa_reserve as must_check (Don Dutile) [1692079] - [lib] XArray: Add cyclic allocation (Don Dutile) [1692079] - [lib] XArray: Redesign xa_alloc API (Don Dutile) [1692079] - [lib] XArray: Add support for 1s-based allocation (Don Dutile) [1692079] - [lib] XArray: Change xa_insert to return -EBUSY (Don Dutile) [1692079] - [lib] XArray: Update xa_erase family descriptions (Don Dutile) [1692079] - [lib] XArray tests: RCU lock prohibits GFP_KERNEL (Don Dutile) [1692079] - [include] XArray: Fix an arithmetic error in xa_is_err (Don Dutile) [1692079] - [lib] XArray tests: Check mark 2 gets squashed (Don Dutile) [1692079] - [include] XArray: Fix typo in comment (Don Dutile) [1692079] - [lib] XArray: Honour reserved entries in xa_insert (Don Dutile) [1692079] - [lib] XArray: Permit storing 2-byte-aligned pointers (Don Dutile) [1692079] - [lib] XArray: Change xa_for_each iterator (Don Dutile) [1692079] - [lib] XArray: Turn xa_init_flags into a static inline (Don Dutile) [1692079] - [lib] XArray tests: Add RCU locking (Don Dutile) [1692079] - [lib] XArray: Fix xa_alloc when id exceeds max (Don Dutile) [1692079] - [lib] XArray tests: Check iterating over multiorder entries (Don Dutile) [1692079] - [lib] XArray tests: Handle larger indices more elegantly (Don Dutile) [1692079] - [include] XArray: Add xa_cmpxchg_irq and xa_cmpxchg_bh (Don Dutile) [1692079] - [tools] radix tree: Don't return retry entries from lookup (Don Dutile) [1692079] - [lib] XArray tests: Add missing locking (Don Dutile) [1692079] - [lib] XArray tests: Correct some 64-bit assumptions (Don Dutile) [1692079] - [lib] XArray: Correct xa_store_range (Don Dutile) [1692079] - [lib] XArray: Fix Documentation (Don Dutile) [1692079] - [lib] XArray: Handle NULL pointers differently for allocation (Don Dutile) [1692079] - [lib] XArray: Unify xa_store and __xa_store (Don Dutile) [1692079] - [include] XArray: Add xa_store_bh() and xa_store_irq() (Don Dutile) [1692079] - [lib] XArray: Turn xa_erase into an exported function (Don Dutile) [1692079] - [lib] XArray: Unify xa_cmpxchg and __xa_cmpxchg (Don Dutile) [1692079] - [lib] XArray: Regularise xa_reserve (Don Dutile) [1692079] - [lib] XArray: Export __xa_foo to non-GPL modules (Don Dutile) [1692079] - [lib] XArray: Fix xa_for_each with a single element at 0 (Don Dutile) [1692079] - [lib] xarray: Add range store functionality (Don Dutile) [1692079] - [lib] xarray: Move multiorder_check to in-kernel tests (Don Dutile) [1692079] - [lib] xarray: Move multiorder_shrink to kernel tests (Don Dutile) [1692079] - [lib] xarray: Move multiorder account test in-kernel (Don Dutile) [1692079] - [tools] radix tree test suite: Convert iteration test to XArray (Don Dutile) [1692079] - [tools] radix tree test suite: Convert tag_tagged_items to XArray (Don Dutile) [1692079] - [tools] radix tree test suite: Convert regression1 to XArray (Don Dutile) [1692079] - [lib] ida: Convert to XArray (Don Dutile) [1692079] - [lib] xarray: Track free entries in an XArray (Don Dutile) [1692079] - [lib] xarray: Add xa_reserve and xa_release (Don Dutile) [1692079] - [lib] xarray: Add xas_create_range (Don Dutile) [1692079] - [lib] xarray: Add xas_for_each_conflict (Don Dutile) [1692079] - [lib] xarray: Step through an XArray (Don Dutile) [1692079] - [lib] xarray: Destroy an XArray (Don Dutile) [1692079] - [lib] xarray: Extract entries from an XArray (Don Dutile) [1692079] - [lib] xarray: Add XArray iterators (Don Dutile) [1692079] - [lib] xarray: Add XArray conditional store operations (Don Dutile) [1692079] - [tools] xarray: Add XArray unconditional store operations (Don Dutile) [1692079] - [tools] xarray: Add XArray marks (Don Dutile) [1692079] - [tools] xarray: Add XArray load operation (Don Dutile) [1692079] - [documentation] xarray: Add documentation (Don Dutile) [1692079] - [include] xarray: Define struct xa_node (Don Dutile) [1692079] - [tools] xarray: Add definition of struct xarray (Don Dutile) [1692079] - [lib] test_ida: Fix lockdep warning (Don Dutile) [1692079] - [lib] xarray: Change definition of sibling entries (Don Dutile) [1692079] - [mm] xarray: Replace exceptional entries (Don Dutile) [1692079] - [lib] idr: Permit any valid kernel pointer to be stored (Don Dutile) [1692079] - [pci] Update email address (Don Dutile) [1692079] - [lib] ida: Change ida_get_new_above to return the id (Don Dutile) [1692079] - [lib] ida: Remove old API (Don Dutile) [1692079] - [target] target/iscsi: Allocate session IDs from an IDA (Don Dutile) [1692079] - [target] iscsi target: fix session creation failure handling (Don Dutile) [1692079] - [drm] drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's (Don Dutile) [1692079] - [drm] drm/vmwgfx: Convert to new IDA API (Don Dutile) [1692079] - [dma] dmaengine: Convert to new IDA API (Don Dutile) [1692079] - [powerpc] ppc: Convert vas ID allocation to new IDA API (Don Dutile) [1692079] - [media] media: Convert entity ID allocation to new IDA API (Don Dutile) [1692079] - [mm] ppc: Convert mmu context allocation to new IDA API (Don Dutile) [1692079] - [net] Convert net_namespace to new IDA API (Don Dutile) [1692079] - [misc] cb710: Convert to new IDA API (Don Dutile) [1692079] - [block] rsxx: Convert to new IDA API (Don Dutile) [1692079] - [scsi] osd: Convert to new IDA API (Don Dutile) [1692079] - [scsi] sd: Convert to new IDA API (Don Dutile) [1692079] - [fs] devpts: Convert to new IDA API (Don Dutile) [1692079] - [fs] fs: Convert namespace IDAs to new API (Don Dutile) [1692079] - [fs] fs: Convert unnamed_dev_ida to new API (Don Dutile) [1692079] - [lib] test_ida: check_ida_destroy and check_ida_alloc (Don Dutile) [1692079] - [lib] test_ida: Convert check_ida_conv to new API (Don Dutile) [1692079] - [lib] test_ida: Move ida_check_max (Don Dutile) [1692079] - [lib] test_ida: Move ida_check_leaf (Don Dutile) [1692079] - [tools] idr-test: Convert ida_check_nomem to new API (Don Dutile) [1692079] - [tools] ida: Start new test_ida module (Don Dutile) [1692079] - [lib] ida: Lock the IDA in ida_destroy (Don Dutile) [1692079] - [lib] radix-tree: Fix UBSAN warning (Don Dutile) [1692079] - [include] rh_kabi: Indirect EXTEND macros so nesting of other macros will resolve. (Don Dutile) [1692079] - [s390] s390/pkey: add one more argument space for debug feature entry (Philipp Rudo) [1710033] - [s390] s390/zcrypt: fix possible deadlock situation on ap queue remove (Philipp Rudo) [1710033] - [s390] zcrypt: handle AP Info notification from CHSC SEI command (Philipp Rudo) [1710033] - [s390] s390/zcrypt: revisit ap device remove procedure (Philipp Rudo) [1710033] - [s390] pkey: Indicate old mkvp only if old and current mkvp are different (Philipp Rudo) [1710033] - [s390] s390/zcrypt: use new state UNBOUND during queue driver rebind (Philipp Rudo) [1710033] - [s390] s390/zcrypt: fix specification exception on z196 during ap probe (Philipp Rudo) [1710033] - [s390] s390/zcrypt: rework ap scan bus code (Philipp Rudo) [1710033] - [s390] s390/zcrypt: make sysfs reset attribute trigger queue reset (Philipp Rudo) [1710033] - [s390] s390/zcrypt: improve special ap message cmd handling (Philipp Rudo) [1710033] - [s390] s390: vfio-ap: include for test_facility() (Philipp Rudo) [1710033] - [fs] flexfiles: enforce per-mirror stateid only for v4 DSes (Scott Mayhew) [1709556] - [fs] flexfiles: use per-mirror specified stateid for IO (Scott Mayhew) [1709556] - [powerpc] powerpc/pseries: Fix build break due to pnv_npu2_init() (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/sriov: Register IOMMU groups for VFs (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/npu: Allocate enough memory in pnv_try_setup_npu_table_group() (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/npu: Fix oops in pnv_try_setup_npu_table_group() (Sam Bobroff) [1704567] - [mm] mm: defer ZONE_DEVICE page initialization to the point where we init pgmap (Waiman Long) [1666538 1634343] - [mm] mm: create non-atomic version of SetPageReserved for init use (Waiman Long) [1666538 1634343] - [mm] mm: provide kernel parameter to allow disabling page init poisoning (Waiman Long) [1666538 1634343] - [x86] x86/resctrl: Initialize a new resource group with default MBA values (David Arcari) [1688127] - [x86] x86/resctrl: Move per RDT domain initialization to a separate function (David Arcari) [1688127] - [x86] x86/resctrl: Do not repeat rdtgroup mode initialization (David Arcari) [1688127] - [x86] x86/resctrl: Fix rdt_find_domain() return value and checks (David Arcari) [1688127] - [x86] x86/resctrl: Use rdt_last_cmd_puts() where possible (David Arcari) [1688127]- [s390] s390/pci: map IOV resources (Philipp Rudo) [1659411] - [powerpc] powerpc/book3s/64: check for NULL pointer in pgd_alloc() (Steve Best) [1710310] - [md] dm thin metadata: do not write metadata if no changes occurred (Mike Snitzer) [1710030] - [md] dm thin metadata: add wrappers for managing write locking of metadata (Mike Snitzer) [1710030] - [md] dm thin metadata: check __commit_transaction()'s return (Mike Snitzer) [1710030] - [md] dm space map common: zero entire ll_disk (Mike Snitzer) [1710030] - [powerpc] powerpc/tm: Fix stack pointer corruption (Desnes Augusto Nunes do Rosario) [1707635] - [pci] PCI/MSI: Remove obsolete sanity checks for multiple interrupt sets (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Remove the leftovers of the original set support (Prarit Bhargava) [1686678] - [nvme] nvme-pci: Simplify interrupt allocation (Prarit Bhargava) [1686678] - [include] genirq/affinity: Add new callback for (re)calculating interrupt sets (Prarit Bhargava) [1686678] - [nvme] genirq/affinity: Store interrupt sets size in struct irq_affinity (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Code consolidation (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Move allocation of 'node_to_cpumask' to irq_build_affinity_masks() (Prarit Bhargava) [1686678] - [kernel] genirq/irqdesc: Fix double increment in alloc_descs() (Prarit Bhargava) [1686678] - [include] genirq: Fix the kerneldoc comment for struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Add is_managed to struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/core: Introduce struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Remove excess indentation (Prarit Bhargava) [1686678]- [md] dm: make sure to obey max_io_len_target_boundary (Mike Snitzer) [1712607]- [mm] x86/dump_pagetables: Fix LDT remap address marker (Baoquan He) [1639560] - [x86] x86/mm: Fix guard hole handling (Baoquan He) [1639560] - [x86] x86/mm: Move LDT remap out of KASLR region on 5-level paging (Baoquan He) [1639560] - [x86] x86/ldt: Define LDT_END_ADDR (Baoquan He) [1639560] - [mm] x86/ldt: Reserve address-space range on 32 bit for the LDT (Baoquan He) [1639560] - [documentation] x86/mm/doc: Enhance the x86-64 virtual memory layout descriptions (Baoquan He) [1639560] - [documentation] x86/mm/doc: Clean up the x86-64 virtual memory layout descriptions (Baoquan He) [1639560] - [fs] cifs: fix page reference leak with readv/writev (Leif Sahlberg) [1708033] - [fs] cifs: do not attempt cifs operation on smb2+ rename error (Leif Sahlberg) [1708033] - [fs] cifs: fix memory leak in SMB2_read (Leif Sahlberg) [1708033] - [fs] CIFS: keep FileInfo handle live during oplock break (Leif Sahlberg) [1708033] - [fs] cifs: fix handle leak in smb2_query_symlink() (Leif Sahlberg) [1708033] - [fs] cifs: Fix lease buffer length error (Leif Sahlberg) [1708033] - [fs] cifs: Fix use-after-free in SMB2_read (Leif Sahlberg) [1708033] - [fs] cifs: Fix use-after-free in SMB2_write (Leif Sahlberg) [1708033] - [fs] cifs: a smb2_validate_and_copy_iov failure does not mean the handle is invalid. (Leif Sahlberg) [1708033] - [fs] SMB3: Allow persistent handle timeout to be configurable on mount (Leif Sahlberg) [1708033] - [fs] smb3: Fix enumerating snapshots to Azure (Leif Sahlberg) [1708033] - [fs] cifs: fix kref underflow in close_shroot() (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] SMB3: Fix SMB3.1.1 guest mounts to Samba (Leif Sahlberg) [1708033] - [fs] cifs: Fix slab-out-of-bounds when tracing SMB tcon (Leif Sahlberg) [1708033] - [fs] cifs: allow guest mounts to work for smb3.11 (Leif Sahlberg) [1708033] - [fs] fix incorrect error code mapping for OBJECTID_NOT_FOUND (Leif Sahlberg) [1708033] - [fs] cifs: fix that return -EINVAL when do dedupe operation (Leif Sahlberg) [1708033] - [fs] CIFS: Fix an issue with re-sending rdata when transport returning -EAGAIN (Leif Sahlberg) [1708033] - [fs] CIFS: Fix an issue with re-sending wdata when transport returning -EAGAIN (Leif Sahlberg) [1708033] - [fs] CIFS: fix POSIX lock leak and invalid ptr deref (Leif Sahlberg) [1708033] - [fs] SMB3: Allow SMB3 FSCTL queries to be sent to server from tools (Leif Sahlberg) [1708033] - [fs] cifs: fix incorrect handling of smb2_set_sparse() return in smb3_simple_falloc (Leif Sahlberg) [1708033] - [fs] smb2: fix typo in definition of a few error flags (Leif Sahlberg) [1708033] - [fs] CIFS: make mknod() an smb_version_op (Leif Sahlberg) [1708033] - [documentation] cifs: minor documentation updates (Leif Sahlberg) [1708033] - [documentation] cifs: minor updates to documentation (Leif Sahlberg) [1708033] - [fs] cifs: remove unused value pointed out by Coverity (Leif Sahlberg) [1708033] - [fs] SMB3: passthru query info doesn't check for SMB3 FSCTL passthru (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic tracepoints for simple fallocate and zero range (Leif Sahlberg) [1708033] - [fs] cifs: fix smb3_zero_range so it can expand the file-size when required (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_ioctl_init/free helpers to be used with compounding (Leif Sahlberg) [1708033] - [fs] smb3: Add dynamic trace points for various compounded smb3 ops (Leif Sahlberg) [1708033] - [fs] cifs: cache FILE_ALL_INFO for the shared root handle (Leif Sahlberg) [1708033] - [fs] smb3: display volume serial number for shares in /proc/fs/cifs/DebugData (Leif Sahlberg) [1708033] - [fs] cifs: simplify how we handle credits in compound_send_recv() (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic tracepoint for timeout waiting for credits (Leif Sahlberg) [1708033] - [fs] smb3: display security information in /proc/fs/cifs/DebugData more accurately (Leif Sahlberg) [1708033] - [fs] cifs: add a timeout argument to wait_for_free_credits (Leif Sahlberg) [1708033] - [fs] cifs: prevent starvation in wait_for_free_credits for multi-credit requests (Leif Sahlberg) [1708033] - [fs] cifs: wait_for_free_credits() make it possible to wait for >=1 credits (Leif Sahlberg) [1708033] - [fs] cifs: pass flags down into wait_for_free_credits() (Leif Sahlberg) [1708033] - [fs] cifs: change wait_for_free_request() to take flags as argument (Leif Sahlberg) [1708033] - [fs] fs: cifs: Kconfig: pedantic formatting (Leif Sahlberg) [1708033] - [fs] smb3: request more credits on normal (non-large read/write) ops (Leif Sahlberg) [1708033] - [fs] CIFS: Return -EAGAIN instead of -ENOTSOCK (Leif Sahlberg) [1708033] - [fs] CIFS: Only send SMB2_NEGOTIATE command on new TCP connections (Leif Sahlberg) [1708033] - [fs] CIFS: Fix read after write for files with read caching (Leif Sahlberg) [1708033] - [fs] smb3: for kerberos mounts display the credential uid used (Leif Sahlberg) [1708033] - [fs] cifs: use correct format characters (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic trace point for query_info_enter/done (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic trace point for smb3_cmd_enter (Leif Sahlberg) [1708033] - [fs] smb3: improve dynamic tracing of open and posix mkdir (Leif Sahlberg) [1708033] - [fs] smb3: add missing read completion trace point (Leif Sahlberg) [1708033] - [fs] smb3: Add tracepoints for read, write and query_dir enter (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoints for query dir (Leif Sahlberg) [1708033] - [fs] smb3: Update POSIX negotiate context with POSIX ctxt GUID (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: Try to acquire credits at once for compound requests (Leif Sahlberg) [1708033] - [fs] CIFS: Return error code when getting file handle for writeback (Leif Sahlberg) [1708033] - [fs] CIFS: Move open file handling to writepages (Leif Sahlberg) [1708033] - [fs] CIFS: Move unlocking pages from wdata_send_pages() (Leif Sahlberg) [1708033] - [fs] CIFS: Find and reopen a file before get MTU credits in writepages (Leif Sahlberg) [1708033] - [fs] CIFS: Reopen file before get SMB2 MTU credits for async IO (Leif Sahlberg) [1708033] - [fs] CIFS: Remove custom credit adjustments for SMB2 async IO (Leif Sahlberg) [1708033] - [fs] CIFS: Adjust MTU credits before reopening a file (Leif Sahlberg) [1708033] - [fs] CIFS: Check for reconnects before sending compound requests (Leif Sahlberg) [1708033] - [fs] CIFS: Check for reconnects before sending async requests (Leif Sahlberg) [1708033] - [fs] CIFS: Respect reconnect in non-MTU credits calculations (Leif Sahlberg) [1708033] - [fs] CIFS: Respect reconnect in MTU credits calculations (Leif Sahlberg) [1708033] - [fs] CIFS: Set reconnect instance to one initially (Leif Sahlberg) [1708033] - [fs] CIFS: Respect SMB2 hdr preamble size in read responses (Leif Sahlberg) [1708033] - [fs] CIFS: Count SMB3 credits for malformed pending responses (Leif Sahlberg) [1708033] - [fs] CIFS: Do not log credits when unmounting a share (Leif Sahlberg) [1708033] - [fs] CIFS: Always reset read error to -EIO if no response (Leif Sahlberg) [1708033] - [fs] cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED (Leif Sahlberg) [1708033] - [fs] CIFS: Do not skip SMB2 message IDs on send failures (Leif Sahlberg) [1708033] - [fs] smb3: request more credits on tree connect (Leif Sahlberg) [1708033] - [fs] smb3: make default i/o size for smb3 mounts larger (Leif Sahlberg) [1708033] - [fs] CIFS: Do not reset lease state to NONE on lease break (Leif Sahlberg) [1708033] - [fs] smb3: fix bytes_read statistics (Leif Sahlberg) [1708033] - [fs] cifs: return -ENODATA when deleting an xattr that does not exist (Leif Sahlberg) [1708033] - [fs] cifs: add credits from unmatched responses/messages (Leif Sahlberg) [1708033] - [fs] cifs: replace snprintf with scnprintf (Leif Sahlberg) [1708033] - [fs] cifs: Fix NULL pointer dereference of devname (Leif Sahlberg) [1708033] - [fs] CIFS: Fix leaking locked VFS cache pages in writeback retry (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: fix use-after-free of the lease keys (Leif Sahlberg) [1708033] - [fs] CIFS: Do not consider -ENODATA as stat failure for reads (Leif Sahlberg) [1708033] - [fs] CIFS: Do not count -ENODATA as failure for query directory (Leif Sahlberg) [1708033] - [fs] CIFS: Fix trace command logging for SMB2 reads and writes (Leif Sahlberg) [1708033] - [fs] CIFS: Fix possible oops and memory leaks in async IO (Leif Sahlberg) [1708033] - [fs] cifs: limit amount of data we request for xattrs to CIFSMaxBufSize (Leif Sahlberg) [1708033] - [fs] cifs: fix computation for MAX_SMB2_HDR_SIZE (Leif Sahlberg) [1708033] - [fs] cifs: print CIFSMaxBufSize as part of /proc/fs/cifs/DebugData (Leif Sahlberg) [1708033] - [fs] smb3: add credits we receive from oplock/break PDUs (Leif Sahlberg) [1708033] - [fs] CIFS: Fix mounts if the client is low on credits (Leif Sahlberg) [1708033] - [fs] CIFS: Do not assume one credit for async responses (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit calculations in compound mid callback (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit calculation for encrypted reads with errors (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credits calculations for reads with errors (Leif Sahlberg) [1708033] - [fs] CIFS: Do not reconnect TCP session in add_credits() (Leif Sahlberg) [1708033] - [fs] smb3: Cleanup license mess (Leif Sahlberg) [1708033] - [fs] CIFS: Fix possible hang during async MTU reads and writes (Leif Sahlberg) [1708033] - [fs] cifs: fix memory leak of an allocated cifs_ntsd structure (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: Fix error paths in writeback code (Leif Sahlberg) [1708033] - [fs] CIFS: Move credit processing to mid callbacks for SMB3 (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credits calculation for cancelled requests (Leif Sahlberg) [1708033] - [fs] cifs: Fix potential OOB access of lock element array (Leif Sahlberg) [1708033] - [fs] cifs: Limit memory used by lock request calls to a page (Leif Sahlberg) [1708033] - [fs] cifs: move large array from stack to heap (Leif Sahlberg) [1708033] - [fs] CIFS: Do not hide EINTR after sending network packets (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit computation for compounded requests (Leif Sahlberg) [1708033] - [fs] CIFS: Do not set credits to 1 if the server didn't grant anything (Leif Sahlberg) [1708033] - [fs] CIFS: Fix adjustment of credits for MTU requests (Leif Sahlberg) [1708033] - [fs] cifs: Fix a tiny potential memory leak (Leif Sahlberg) [1708033] - [fs] cifs: Fix a debug message (Leif Sahlberg) [1708033] - [fs] smb3: add smb3.1.1 to default dialect list (Leif Sahlberg) [1708033] - [fs] cifs: fix confusing warning message on reconnect (Leif Sahlberg) [1708033] - [fs] smb3: fix large reads on encrypted connections (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] cifs: we can not use small padding iovs together with encryption (Leif Sahlberg) [1708033] - [fs] cifs: Minor Kconfig clarification (Leif Sahlberg) [1708033] - [fs] cifs: Always resolve hostname before reconnecting (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_reconnect_tcon() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in smb2_reconnect() (Leif Sahlberg) [1708033] - [fs] cifs: Only free DFS target list if we actually got one (Leif Sahlberg) [1708033] - [fs] cifs: start DFS cache refresher in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: Use GFP_ATOMIC when a lock is held in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_reconnect() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'sep' (Leif Sahlberg) [1708033] - [fs] cifs: Make use of DFS cache to get new DFS referrals (Leif Sahlberg) [1708033] - [fs] cifs: check kzalloc return (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'server' (Leif Sahlberg) [1708033] - [fs] cifs: Use kzfree() to free password (Leif Sahlberg) [1708033] - [fs] cifs: Fix to use kmem_cache_free() instead of kfree() (Leif Sahlberg) [1708033] - [fs] cifs: update for current_kernel_time64() removal (Leif Sahlberg) [1708033] - [fs] cifs: Add DFS cache routines (Leif Sahlberg) [1708033] - [fs] cifs: Save TTL value when parsing DFS referrals (Leif Sahlberg) [1708033] - [fs] cifs: auto disable 'serverino' in dfs mounts (Leif Sahlberg) [1708033] - [fs] cifs: Make devname param optional in cifs_compose_mount_options() (Leif Sahlberg) [1708033] - [fs] cifs: Skip any trailing backslashes from UNC (Leif Sahlberg) [1708033] - [fs] cifs: Refactor out cifs_mount() (Leif Sahlberg) [1708033] - [fs] CIFS: Fix error mapping for SMB2_LOCK command which caused OFD lock problem (Leif Sahlberg) [1708033] - [fs] CIFS: return correct errors when pinning memory failed for direct I/O (Leif Sahlberg) [1708033] - [fs] CIFS: use the correct length when pinning memory for direct I/O for write (Leif Sahlberg) [1708033] - [fs] cifs: check ntwrk_buf_start for NULL before dereferencing it (Leif Sahlberg) [1708033] - [fs] cifs: remove coverity warning in calc_lanman_hash (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'smb_buf' (Leif Sahlberg) [1708033] - [fs] cifs: suppress some implicit-fallthrough warnings (Leif Sahlberg) [1708033] - [fs] cifs: change smb2_query_eas to use the compound query-info helper (Leif Sahlberg) [1708033] - [fs] Add vers=3.0.2 as a valid option for SMBv3.0.2 (Leif Sahlberg) [1708033] - [fs] cifs: create a helper function for compound query_info (Leif Sahlberg) [1708033] - [fs] cifs: address trivial coverity warning (Leif Sahlberg) [1708033] - [fs] cifs: smb2 commands can not be negative, remove confusing check (Leif Sahlberg) [1708033] - [fs] cifs: use a compound for setting an xattr (Leif Sahlberg) [1708033] - [fs] cifs: clean up indentation, replace spaces with tab (Leif Sahlberg) [1708033] - [fs] smb3: Fix rmdir compounding regression to strict servers (Leif Sahlberg) [1708033] - [fs] CIFS: Avoid returning EBUSY to upper layer VFS (Leif Sahlberg) [1708033] - [fs] cifs: Fix separator when building path from dentry (Leif Sahlberg) [1708033] - [fs] cifs: In Kconfig CONFIG_CIFS_POSIX needs depends on legacy (insecure cifs) (Leif Sahlberg) [1708033] - [fs] cifs: fix signed/unsigned mismatch on aio_read patch (Leif Sahlberg) [1708033] - [fs] cifs: don't dereference smb_file_target before null check (Leif Sahlberg) [1708033] - [fs] CIFS: Add direct I/O functions to file_operations (Leif Sahlberg) [1708033] - [fs] CIFS: Add support for direct I/O write (Leif Sahlberg) [1708033] - [fs] CIFS: Add support for direct I/O read (Leif Sahlberg) [1708033] - [fs] smb3: missing defines and structs for reparse point handling (Leif Sahlberg) [1708033] - [fs] smb3: allow more detailed protocol info on open files for debugging (Leif Sahlberg) [1708033] - [fs] smb3: on kerberos mount if server doesn't specify auth type use krb5 (Leif Sahlberg) [1708033] - [fs] smb3: add trace point for tree connection (Leif Sahlberg) [1708033] - [fs] cifs: fix spelling mistake, EACCESS -> EACCES (Leif Sahlberg) [1708033] - [fs] cifs: fix return value for cifs_listxattr (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number for cifs.ko to 2.14 (Leif Sahlberg) [1708033] - [fs] smb3: add debug for unexpected mid cancellation (Leif Sahlberg) [1708033] - [fs] cifs: allow calling SMB2_xxx_free(NULL) (Leif Sahlberg) [1708033] - [fs] smb3 - clean up debug output displaying network interfaces (Leif Sahlberg) [1708033] - [fs] smb3: show number of current open files in /proc/fs/cifs/Stats (Leif Sahlberg) [1708033] - [fs] cifs: add support for ioctl on directories (Leif Sahlberg) [1708033] - [fs] cifs: fallback to older infolevels on findfirst queryinfo retry (Leif Sahlberg) [1708033] - [fs] smb3: do not attempt cifs operation in smb3 query info error path (Leif Sahlberg) [1708033] - [fs] smb3: send backup intent on compounded query info (Leif Sahlberg) [1708033] - [fs] cifs: track writepages in vfs operation counters (Leif Sahlberg) [1708033] - [fs] smb2: fix uninitialized variable bug in smb2_ioctl_query_info (Leif Sahlberg) [1708033] - [fs] cifs: add IOCTL for QUERY_INFO passthrough to userspace (Leif Sahlberg) [1708033] - [fs] cifs: minor clarification in comments (Leif Sahlberg) [1708033] - [fs] CIFS: Print message when attempting a mount (Leif Sahlberg) [1708033] - [fs] CIFS: Adds information-level logging function (Leif Sahlberg) [1708033] - [fs] cifs: OFD locks do not conflict with eachothers (Leif Sahlberg) [1708033] - [fs] CIFS: SMBD: Do not call ib_dereg_mr on invalidated memory registration (Leif Sahlberg) [1708033] - [fs] CIFS: pass page offsets on SMB1 read/write (Leif Sahlberg) [1708033] - [fs] fs/cifs: fix uninitialised variable warnings (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for sending lease break responses to server (Leif Sahlberg) [1708033] - [fs] cifs: do not return atime less than mtime (Leif Sahlberg) [1708033] - [fs] smb3: update default requested iosize to 4MB from 1MB for recent dialects (Leif Sahlberg) [1708033] - [fs] smb3: Add debug message later in smb2/smb3 reconnect path (Leif Sahlberg) [1708033] - [fs] CIFS: make 'nodfs' mount opt a superblock flag (Leif Sahlberg) [1708033] - [fs] smb3: track the instance of each session for debugging (Leif Sahlberg) [1708033] - [fs] smb3: minor missing defines relating to reparse points (Leif Sahlberg) [1708033] - [fs] smb3: add way to control slow response threshold for logging and stats (Leif Sahlberg) [1708033] - [fs] cifs: minor updates to module description for cifs.ko (Leif Sahlberg) [1708033] - [fs] cifs: protect against server returning invalid file system block size (Leif Sahlberg) [1708033] - [fs] smb3: allow stats which track session and share reconnects to be reset (Leif Sahlberg) [1708033] - [fs] SMB3: Backup intent flag missing from compounded ops (Leif Sahlberg) [1708033] - [fs] cifs: create a define for the max number of iov we need for a SMB2 set_info (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_RENAME and SMB2_OP_HARDLINK to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: remove the is_falloc argument to SMB2_set_eof (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_SET_INFO to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_SET_EOF to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: make rmdir() use compounding (Leif Sahlberg) [1708033] - [fs] cifs: create helpers for SMB2_set_info_init/free() (Leif Sahlberg) [1708033] - [fs] cifs: change unlink to use a compound (Leif Sahlberg) [1708033] - [fs] cifs: change mkdir to use a compound (Leif Sahlberg) [1708033] - [fs] cifs: add a smb2_compound_op and change QUERY_INFO to use it (Leif Sahlberg) [1708033] - [fs] cifs: fix a credits leak for compund commands (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint to catch cases where credit refund of failed op overlaps reconnect (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'cifs_sb' (Leif Sahlberg) [1708033] - [fs] cifs: Use kmemdup rather than duplicating its implementation in smb311_posix_mkdir() (Leif Sahlberg) [1708033] - [fs] smb3: do not display confusing message on mount to Azure servers (Leif Sahlberg) [1708033] - [fs] smb3: fix lease break problem introduced by compounding (Leif Sahlberg) [1708033] - [fs] cifs: only wake the thread for the very last PDU in a compound (Leif Sahlberg) [1708033] - [fs] cifs: add a warning if we try to to dequeue a deleted mid (Leif Sahlberg) [1708033] - [fs] smb2: fix missing files in root share directory listing (Leif Sahlberg) [1708033] - [fs] cifs: read overflow in is_valid_oplock_break() (Leif Sahlberg) [1708033] - [fs] cifs: integer overflow in in SMB2_ioctl() (Leif Sahlberg) [1708033] - [fs] CIFS: fix wrapping bugs in num_entries() (Leif Sahlberg) [1708033] - [fs] cifs: prevent integer overflow in nxt_dir_entry() (Leif Sahlberg) [1708033] - [fs] fs/cifs: suppress a string overflow warning (Leif Sahlberg) [1708033] - [fs] cifs: connect to servername instead of IP for IPC$ share (Leif Sahlberg) [1708033] - [fs] smb3: check for and properly advertise directory lease support (Leif Sahlberg) [1708033] - [fs] smb3: minor debugging clarifications in rfc1001 len processing (Leif Sahlberg) [1708033] - [fs] SMB3: Backup intent flag missing for directory opens with backupuid mounts (Leif Sahlberg) [1708033] - [fs] fs/cifs: don't translate SFM_SLASH (U+F026) to backslash (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number for cifs.ko to 2.12 (Leif Sahlberg) [1708033] - [fs] cifs: check kmalloc before use (Leif Sahlberg) [1708033] - [fs] cifs: check if SMB2 PDU size has been padded and suppress the warning (Leif Sahlberg) [1708033] - [fs] cifs: create a define for how many iovs we need for an SMB2_open() (Leif Sahlberg) [1708033] - [fs] smb3: create smb3 equivalent alias for cifs pseudo-xattrs (Leif Sahlberg) [1708033] - [fs] smb3: allow previous versions to be mounted with snapshot= mount parm (Leif Sahlberg) [1708033] - [fs] cifs: don't show domain= in mount output when domain is empty (Leif Sahlberg) [1708033] - [fs] cifs: add missing support for ACLs in SMB 3.11 (Leif Sahlberg) [1708033] - [fs] smb3: enumerating snapshots was leaving part of the data off end (Leif Sahlberg) [1708033] - [fs] cifs: update smb2_queryfs() to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: update receive_encrypted_standard to handle compounded responses (Leif Sahlberg) [1708033] - [fs] cifs: create SMB2_open_init()/SMB2_open_free() helpers. (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_query_info_[init|free]() (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_close_init()/SMB2_close_free() (Leif Sahlberg) [1708033] - [fs] smb3: display stats counters for number of slow commands (Leif Sahlberg) [1708033] - [fs] CIFS: fix uninitialized ptr deref in smb2 signing (Leif Sahlberg) [1708033] - [fs] smb3: Do not send SMB3 SET_INFO if nothing changed (Leif Sahlberg) [1708033] - [fs] smb3: fix minor debug output for CONFIG_CIFS_STATS (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for slow responses (Leif Sahlberg) [1708033] - [fs] cifs: add compound_send_recv() (Leif Sahlberg) [1708033] - [fs] cifs: make smb_send_rqst take an array of requests (Leif Sahlberg) [1708033] - [fs] cifs: update init_sg, crypt_message to take an array of rqst (Leif Sahlberg) [1708033] - [fs] smb3: fix reset of bytes read and written stats (Leif Sahlberg) [1708033] - [fs] smb3: display bytes_read and bytes_written in smb3 stats (Leif Sahlberg) [1708033] - [fs] cifs: simple stats should always be enabled (Leif Sahlberg) [1708033] - [fs] cifs: use a refcount to protect open/closing the cached file handle (Leif Sahlberg) [1708033] - [fs] smb3: add reconnect tracepoints (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for session expired or deleted (Leif Sahlberg) [1708033] - [fs] cifs: remove unused stats (Leif Sahlberg) [1708033] - [fs] smb3: don't request leases in symlink creation and query (Leif Sahlberg) [1708033] - [fs] smb3: remove per-session operations from per-tree connection stats (Leif Sahlberg) [1708033] - [fs] SMB3: Number of requests sent should be displayed for SMB3 not just CIFS (Leif Sahlberg) [1708033] - [fs] smb3: snapshot mounts are read-only and make sure info is displayable about the mount (Leif Sahlberg) [1708033] - [fs] smb3: remove noisy warning message on mount (Leif Sahlberg) [1708033] - [fs] cifs: add missing debug entries for kconfig options (Leif Sahlberg) [1708033] - [fs] smb3: fill in statfs fsid and correct namelen (Leif Sahlberg) [1708033] - [fs] cifs: Make sure all data pages are signed correctly (Leif Sahlberg) [1708033] - [fs] CIFS: fix memory leak and remove dead code (Leif Sahlberg) [1708033] - [fs] cifs: use 64-bit timestamps for fscache (Leif Sahlberg) [1708033] - [fs] cifs: use timespec64 internally (Leif Sahlberg) [1708033] - [fs] cifs: Silence uninitialized variable warning (Leif Sahlberg) [1708033] - [fs] fs/cifs: Simplify ib_post_(send|recv|srq_recv)() calls (Leif Sahlberg) [1708033]- [edac] EDAC/amd64: Set maximum channel layer size depending on family (Gary Hook) [1690984] - [edac] EDAC/amd64: Adjust printed chip select sizes when interleaved (Gary Hook) [1690984] - [edac] EDAC/amd64: Recognize x16 symbol size (Gary Hook) [1690984] - [edac] EDAC/amd64: Support more than two Unified Memory Controllers (Gary Hook) [1690984] - [edac] EDAC/amd64: Use a macro for iterating over Unified Memory Controllers (Gary Hook) [1690984] - [edac] EDAC, amd64: Add Family 17h, models 10h-2fh support (Gary Hook) [1670609 1690984] - [md] dm mpath: fix missing call of path selector type->end_io (Mike Snitzer) [1686227] - [rpmspec] redhat: do not generate debuginfo for self-tests and samples (Ivan Vecera) [1708375] - [netdrv] broadcom: Mark expected switch fall-throughs (Kamal Heib) [1684380] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Kamal Heib) [1684380] - [netdrv] broadcom: tg3: fix use of SPEED_UNKNOWN ethtool constant (Kamal Heib) [1684380] - [netdrv] tg3: allow ethtool -p to work for NICs in down state (Kamal Heib) [1684380] - [netdrv] tg3: optionally use eth_platform_get_mac_address() to get mac address (Kamal Heib) [1684380] - [netdrv] tg3: extend PTP gettime function to read system clock (Kamal Heib) [1684380] - [netdrv] tg3: Fix fall-through annotations (Kamal Heib) [1684380] - [netdrv] tg3: Mark expected switch fall-throughs (Kamal Heib) [1684380] - [mm] x86/mm/KASLR: Fix the size of the direct mapping section (Baoquan He) [1669075] - [netdrv] net/mlx4_en: fix spelling mistake: "quiting" -> "quitting" (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix error handling when initializing CQ bufs in the driver (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Add masking for a few queries on HCA caps (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Fix using wrong function to destroy sqp AHs under SRIOV (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4: replace pci_{,un}map_sg with dma_{,un}map_sg (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4: Get rid of page operation after dma_alloc_coherent (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: drop useless LIST_HEAD (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Remove set but not used variable 'pd' (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Utilize macro to calculate SQ spare size (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_en: remove fallback after kzalloc_node() (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Remove unneeded NULL check (Alaa Hleihel) [1691235 1691228] - [infiniband] mlx4: Use snprintf instead of complicated strcpy (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix several coding style errors (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix return codes of unsupported operations (Alaa Hleihel) [1691235 1691228] - [netdrv] {net, IB}/mlx4: Initialize CQ buffers in the driver when possible (Alaa Hleihel) [1691235 1691228] - [netdrv] mlx4: use __vlan_hwaccel helpers (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_en: Fix build break when CONFIG_INET is off (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_en: use __netdev_tx_sent_queue() (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_en: add a missing include (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Add port and TID to MAD debug print (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Enable debug print of SMPs (Alaa Hleihel) [1691233 1691228] - [infiniband] RDMA: Fix dependencies for rdma_user_mmap_io (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Remove unnecessary parentheses (Alaa Hleihel) [1691233 1691228] - [infiniband] RDMA/mlx4: Use rdma_user_mmap_io (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_core: Fix warnings during boot on driverinit param set failures (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Use devlink region_snapshot parameter (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Add Crdump FW snapshot support (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Add health buffer address capability (Alaa Hleihel) [1691228] - [netdrv] mlx4: Add support for devlink reload and load driverinit values (Alaa Hleihel) [1691228 1663198] - [netdrv] mlx4: Add mlx4 initial parameters table and register it (Alaa Hleihel) [1691228 1663198] - [infiniband] IB/mlx4: Create slave AH's directly (Alaa Hleihel) [1691228] - [infiniband] IB/mlx4: Add support for drain SQ & RQ (Alaa Hleihel) [1691228] - [net] openvswitch: return an error instead of doing BUG_ON() (Eelco Chaudron) [1700468] - [include] net: add netif_is_geneve() (Petr Oros) [1707002] - [netdrv] team: fix possible recursive locking when add slaves (Hangbin Liu) [1700679] - [netdrv] phy: Fix ioctl handler when modifing MII_ADVERTISE (Petr Oros) [1691676] - [netdrv] mii: Add mii_lpa_mod_linkmode_lpa_t (Petr Oros) [1691676] - [netdrv] phy: marvell: Rename mii_lpa_to_linkmode_lpa_t (Petr Oros) [1691676] - [netdrv] mii: Rename mii_stat1000_to_linkmode_lpa_t (Petr Oros) [1691676] - [include] mii: Fix autoneg in mii_lpa_to_linkmode_lpa_t() (Petr Oros) [1691676] - [netdrv] phy: remove unused code in phy_probe (Petr Oros) [1691676] - [netdrv] phy: check if advertising is zero using linkmode_empty (Petr Oros) [1691676] - [netdrv] phy: marvell: remove set but not used variable 'pause' (Petr Oros) [1691676] - [netdrv] phy: Add support for resolving 5G and 2.5G autoneg (Petr Oros) [1691676] - [netdrv] phy: Add more link modes to the settings table (Petr Oros) [1691676] - [netdrv] phy: Fixup kerneldoc markup. (Petr Oros) [1691676] - [netdrv] phy: Convert u32 phydev->lp_advertising to linkmode (Petr Oros) [1691676] - [netdrv] ethernet: Convert phydev advertize and supported from u32 to link mode (Petr Oros) [1691676] - [netdrv] bonding: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [netdrv] bonding: Give bond_set_dev_addr() a return value (Ivan Vecera) [1705509] - [netdrv] ipvlan: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] bridge: Handle NETDEV_PRE_CHANGEADDR from ports (Ivan Vecera) [1705509] - [net] bridge: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Add NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Add extack argument to dev_set_mac_address() (Ivan Vecera) [1705509] - [netdrv] phy: phy driver features are mandatory (Petr Oros) [1691720] - [netdrv] phy: add missing phy driver features (Petr Oros) [1691720] - [netdrv] phy: Add missing features to PHY drivers (Petr Oros) [1691720] - [netdrv] phy: genphy_10g_driver: Avoid NULL pointer dereference (Petr Oros) [1691720] - [netdrv] phy: phy_support_sym_pause: Clear Asym Pause (Petr Oros) [1691720] - [netdrv] phy: Replace phy driver features u32 with link_mode bitmap (Petr Oros) [1691720] - [netdrv] ethernet: xgbe: expand PHY_GBIT_FEAUTRES (Petr Oros) [1691720] - [net] net: phy: Add limkmode equivalents to some of the MII ethtool helpers (Petr Oros) [1691720] - [netdrv] phy: Add helper for advertise to lcl value (Petr Oros) [1691720] - [net] phy: Add helper to convert MII ADV register to a linkmode (Petr Oros) [1691720] - [netdrv] phy: Add phydev_info() (Petr Oros) [1691720] - [netdrv] phy: Add phydev_warn() (Petr Oros) [1691720] - [netdrv] phy: Move linkmode helpers to somewhere public (Petr Oros) [1691720] - [netdrv] ethernet: dpaa: remove unused variables (Petr Oros) [1691720] - [netdrv] ravb: Disable Pause Advertisement (Petr Oros) [1691720] - [netdrv] ethernet: Add helper to determine if pause configuration is supported (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for set_pauseparam for Pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for set_pauseparam for Asym Pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for MACs which support pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for MACs which support asym pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper to remove a supported link mode (Petr Oros) [1691720] - [netdrv] ethernet: Fix up drivers masking pause support (Petr Oros) [1691720] - [netdrv] bcmgenet: Fix speed selection for reverse MII (Petr Oros) [1691720] - [netdrv] ethernet: Use phy_set_max_speed() to limit advertised speed (Petr Oros) [1691720] - [netdrv] phy: bcm63xx: Allow to be built with COMPILE_TEST (Petr Oros) [1691720] - [netdrv] phy: et1011c: Remove incorrect missing 1000 Half (Petr Oros) [1691720] - [netdrv] phy: ste10Xp: Remove wrong SUPPORTED_Pause (Petr Oros) [1691720] - [tools] selftests: net: ip_defrag: cover new IPv6 defrag behavior (Guillaume Nault) [1660282] - [tools] selftests: net: fix/improve ip_defrag selftest (Guillaume Nault) [1660282] - [tools] selftests: use posix-style redirection in ip_defrag.sh (Guillaume Nault) [1660282] - [tools] selftests: net: Clean up an unused variable (Guillaume Nault) [1660282] - [tools] selftests/net: add ipv6 tests to ip_defrag selftest (Guillaume Nault) [1660282] - [tools] selftests/net: add ip_defrag selftest (Guillaume Nault) [1660282] - [net] ip6: fix skb leak in ip6frag_expire_frag_queue() (Guillaume Nault) [1660282] - [net] IP6 defrag: use rbtrees in nf_conntrack_reasm.c (Guillaume Nault) [1660282] - [net] IP6 defrag: use rbtrees for IPv6 defrag (Guillaume Nault) [1660282] - [net] IP defrag: encapsulate rbtree defrag code into callable functions (Guillaume Nault) [1660282] - [net] ipv4: do not handle duplicate fragments as overlapping (Guillaume Nault) [1660282] - [net] ipv4: ipv6: netfilter: Adjust the frag mem limit when truesize changes (Guillaume Nault) [1660282] - [net] ipv6: remove dependency of nf_defrag_ipv6 on ipv6 module (Guillaume Nault) [1660282] - [net] ipv6: fix typo in net/ipv6/reassembly.c (Guillaume Nault) [1660282] - [net] core: dev: Attach extack to NETDEV_PRE_UP (Ivan Vecera) [1705501] - [net] core: dev: Add call_netdevice_notifiers_extack() (Ivan Vecera) [1705501] - [net] core: dev: Add extack argument to __dev_change_flags() (Ivan Vecera) [1705501] - [net] core: dev: Add extack argument to dev_change_flags() (Ivan Vecera) [1705501] - [netdrv] ipvlan: ipvlan_set_port_mode(): Add an extack argument (Ivan Vecera) [1705501] - [netdrv] vrf: cycle_netdev(): Add an extack argument (Ivan Vecera) [1705501] - [net] net: core: dev: Add extack argument to dev_open() (Ivan Vecera) [1705501] - [net] vlan: conditional inclusion of FCoE hooks to match netdevice.h and bnx2x (Chris Leech) [1685894] - [net] Do not route unicast IP packets twice (Ivan Vecera) [1704923] - [net] skbuff: Rename 'offload_mr_fwd_mark' to 'offload_l3_fwd_mark' (Ivan Vecera) [1704923] - [net] devlink: Add 'fw_load_policy' generic parameter (Ivan Vecera) [1704902] - [net] bridge: Extend br_vlan_get_pvid() for bridge ports (Ivan Vecera) [1704863] - [net] ipv4: Notify about changes to ip_forward_update_priority (Ivan Vecera) [1704697] - [net] ipv4: Control SKB reprioritization after forwarding (Ivan Vecera) [1704697] - [net] dcb: Add priority-to-DSCP map getters (Ivan Vecera) [1704639] - [net] xsk: export xdp_get_umem_from_qid (Ivan Vecera) [1704606] - [net] net: Add lag.h, net_lag_port_dev_txable() (Ivan Vecera) [1704297] - [netdrv] team: Publish team_port_get_rcu() (Ivan Vecera) [1704297] - [net] sched: sch_api: set an error msg when qdisc_alloc_handle() fails (Ivan Vecera) [1677094] - [net] ethtool: Remove unnecessary null check in ethtool_rx_flow_rule_create (Ivan Vecera) [1691738] - [net] flow_offload: fix block stats (Ivan Vecera) [1691738] - [net] sched: flower: only return error from hw offload if skip_sw (Ivan Vecera) [1691738] - [net] flow_offload: Fix flow action infrastructure (Ivan Vecera) [1691738] - [net] ethtool: add ethtool_rx_flow_spec to flow_rule structure translator (Ivan Vecera) [1691738] - [net] flow_offload: add wake-up-on-lan and queue to flow_action (Ivan Vecera) [1691738] - [net] flow_offload: add statistics retrieval infrastructure and use it (Ivan Vecera) [1691738] - [net] cls_api: add translator to flow_action representation (Ivan Vecera) [1691738] - [net] flow_offload: add flow action infrastructure (Ivan Vecera) [1691738] - [net] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1691738] - [net] netfilter: ipv6: Don't preserve original oif for loopback address (Florian Westphal) [1702813] - [net] netfilter: ipv6: Preserve link scope traffic original oif (Florian Westphal) [1702813] - [net] sctp: implement memory accounting on rx path (Xin Long) [1665243] {CVE-2019-3874} - [net] sctp: implement memory accounting on tx path (Xin Long) [1665243] {CVE-2019-3874} - [net] openvswitch: fix flow actions reallocation (Eelco Chaudron) [1700468] - [net] openvswitch: fix missing checks for nla_nest_start (Eelco Chaudron) [1700468] - [net] openvswitch: fix a NULL pointer dereference (Eelco Chaudron) [1700468] - [net] openvswitch: meter: Use struct_size() in kzalloc() (Eelco Chaudron) [1700468] - [net] openvswitch: Fix IPv6 later frags parsing (Eelco Chaudron) [1700468] - [net] openvswitch: fix spelling mistake "execeeds" -> "exceeds" (Eelco Chaudron) [1700468] - [net] openvswitch: remove BUG_ON from get_dpdev (Eelco Chaudron) [1700468] - [net] openvswitch: fix linking without CONFIG_NF_CONNTRACK_LABELS (Eelco Chaudron) [1700468] - [net] revert "openvswitch: Fix template leak in error cases." (Eelco Chaudron) [1700468] - [net] openvswitch: Use correct reply values in datapath and vport ops (Eelco Chaudron) [1700468] - [net] ovs: fix return type of ndo_start_xmit function (Eelco Chaudron) [1700468] - [net] openvswitch: Derive IP protocol number for IPv6 later frags (Eelco Chaudron) [1700468] - [net] openvswitch: kernel datapath clone action (Eelco Chaudron) [1700468] - [net] openvswitch: Avoid OOB read when parsing flow nlattrs (Eelco Chaudron) [1700468] - [net] net/vlan: remove unused #define HAVE_VLAN_GET_TAG (Ivan Vecera) [1700369] - [net] vlan: include the shift in skb_vlan_tag_get_prio() (Ivan Vecera) [1700369] - [net] vlan: introduce __vlan_hwaccel_copy_tag() helper (Ivan Vecera) [1700369] - [net] vlan: introduce __vlan_hwaccel_clear_tag() helper (Ivan Vecera) [1700369] - [net] sctp: initialize _pad of sockaddr_in before copying to user memory (Xin Long) [1699076] - [net] sctp: use memdup_user instead of vmemdup_user (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_STREAM_SCHEDULER sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_EVENT sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_ENABLE_STREAM_RESET sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_PRINFO sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_DEACTIVATE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_DELETE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_ACTIVE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_MAX_BURST sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_CONTEXT sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SNDINFO sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DELAYED_SACK sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SEND_PARAM sockopt (Xin Long) [1699076] - [net] sctp: not copy sctp_sock pd_lobby in sctp_copy_descendant (Xin Long) [1699076] - [net] sctp: get sctphdr by offset in sctp_compute_cksum (Xin Long) [1699076] - [net] sctp: call sctp_auth_init_hmacs() in sctp_sock_migrate() (Xin Long) [1699076] - [net] sctp: move up sctp_auth_init_hmacs() in sctp_endpoint_init() (Xin Long) [1699076] - [net] sctp: sctp_sock_migrate() returns error if sctp_bind_addr_dup() fails (Xin Long) [1699076] - [net] sctp: remove sched init from sctp_stream_init (Xin Long) [1699076] - [net] sctp: call iov_iter_revert() after sending ABORT (Xin Long) [1699076] - [net] ipvs: get sctphdr by sctphoff in sctp_csum_check (Xin Long) [1699076] - [net] sctp: chunk.c: correct format string for size_t in printk (Xin Long) [1699076] - [net] sctp: don't compare hb_timer expire date before starting it (Xin Long) [1699076] - [net] doc: sctp: Merge and clean up rst files (Xin Long) [1699076] - [net] sctp: set stream ext to NULL after freeing it in sctp_stream_outq_migrate (Xin Long) [1699076] - [net] sctp: add SCTP_FUTURE_ASOC and SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_EVENT sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_ENABLE_STREAM_RESET sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_PRINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DEACTIVATE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DELETE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_ACTIVE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_MAX_BURST sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_CONTEXT sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SNDINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SEND_PARAM sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DELAYED_SACK sockopt (Xin Long) [1699076] - [net] sctp: add SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER_VALUE sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_INTERLEAVING_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_RECONFIG_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_PR_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: add SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_THLDS sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_LOCAL_AUTH_CHUNKS sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_MAXSEG sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_ASSOCINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_RTOINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_PARAMS sockopt (Xin Long) [1699076] - [net] sctp: introduce SCTP_FUTURE/CURRENT/ALL_ASSOC (Xin Long) [1699076] - [net] sctp: set flow sport from saddr only when it's 0 (Xin Long) [1699076] - [net] sctp: set chunk transport correctly when it's a new asoc (Xin Long) [1699076] - [net] sctp: improve the events for sctp stream adding (Xin Long) [1699076] - [net] sctp: improve the events for sctp stream reset (Xin Long) [1699076] - [net] sctp: allocate sctp_sockaddr_entry with kzalloc (Xin Long) [1699076] - [net] sctp: initialize sin6_flowinfo for ipv6 addrs in sctp_inet6addr_event (Xin Long) [1699076] - [net] sctp: frag_point sanity check (Xin Long) [1699076] - [net] sctp: kfree_rcu asoc (Xin Long) [1699076] - [net] sctp: update frag_point when stream_interleave is set (Xin Long) [1699076] - [net] sctp: add sockopt SCTP_EVENT (Xin Long) [1699076] - [net] sctp: rename enum sctp_event to sctp_event_type (Xin Long) [1699076] - [net] sctp: add subscribe per asoc (Xin Long) [1699076] - [net] sctp: define subscribe in sctp_sock as __u16 (Xin Long) [1699076] - [net] sctp: process sk_reuseport in sctp_get_port_local (Xin Long) [1699076] - [net] sctp: add sock_reuseport for the sock in __sctp_hash_endpoint (Xin Long) [1699076] - [net] sctp: do reuseport_select_sock in __sctp_rcv_lookup_endpoint (Xin Long) [1699076] - [net] sctp: Fix SKB list traversal in sctp_intl_store_ordered(). (Xin Long) [1699076] - [net] sctp: Fix SKB list traversal in sctp_intl_store_reasm(). (Xin Long) [1699076] - [net] sctp: define SCTP_SS_DEFAULT for Stream schedulers (Xin Long) [1699076] - [net] sctp: clear the transport of some out_chunk_list chunks in sctp_assoc_rm_peer (Xin Long) [1699076] - [net] sctp: use sk_wmem_queued to check for writable space (Xin Long) [1699076] - [net] sctp: count both sk and asoc sndbuf with skb truesize and sctp_chunk size (Xin Long) [1699076] - [net] sctp: use the pmtu from the icmp packet to update transport pathmtu (Xin Long) [1699076] - [net] sctp: fix fall-through annotation (Xin Long) [1699076] - [net] sctp: Use skb_queue_is_first(). (Xin Long) [1699076] - [net] sctp: not traverse asoc trans list if non-ipv6 trans exists for ipv6_flowlabel (Xin Long) [1699076] - [net] sctp: fix invalid reference to the index variable of the iterator (Xin Long) [1699076] - [net] sctp: remove useless start_fail from sctp_ht_iter in proc (Xin Long) [1699076] - [net] sctp: Make wrappers for accessing in/out streams (Xin Long) [1699076] - [net] sctp: whitespace fixes (Xin Long) [1699076] - [net] sctp: check for ipv6_pinfo legal sndflow with flowlabel in sctp_v6_get_dst (Xin Long) [1699076] - [net] sctp: add support for setting flowlabel when adding a transport (Xin Long) [1699076] - [net] sctp: add spp_ipv6_flowlabel and spp_dscp for sctp_paddrparams (Xin Long) [1699076] - [net] sctp: add support for dscp and flowlabel per transport (Xin Long) [1699076] - [net] ipv4: add __ip_queue_xmit() that supports tos param (Xin Long) [1699076] - [net] sctp: add support for SCTP_REUSE_PORT sockopt (Xin Long) [1699076] - [netdrv] pptp: dst_release sk_dst_cache in pptp_sock_destruct (Xin Long) [1671606] - [net] datagram: fix unbounded loop in __skb_try_recv_datagram() (Paolo Abeni) [1692379] - [net] ipv6: route: purge exception on removal (Paolo Abeni) [1669049] - [net] vsock: cope with memory allocation failure at socket creation time (Paolo Abeni) [1671619] - [net] ptp: fix Spectre v1 vulnerability (Hangbin Liu) [1664624]- [infiniband] RDMA/bnxt_re: fix or'ing of data into an uninitialized struct member (Selvin Xavier) [1664798] - [netdrv] RDMA/bnxt_en: Enable RDMA driver support for 57500 chip (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Update kernel user abi to pass chip context (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add extended psn structure for 57500 adapters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Enable GSI QP support for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Skip backing store allocation for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add 64bit doorbells for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add chip context to identify 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: fix a size calculation (Selvin Xavier) [1664798] - [infiniband] infiniband: bnxt_re: qplib: Check the return value of send_message (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Increase depth of control path command queue (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Query HWRM Interface version from FW (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Make use of destroy AH sleepable flag (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Make use of create AH sleepable flag (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid accessing the device structure after it is freed (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix system hang when registration with L2 driver fails (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid resource leak in case the NQ registration fails (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Wait for delayed work to finish before device removal (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Limit max_pkey to 16 bit value (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix qp async event reporting (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Report out of sequence hw counters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Expose rx discards and drop counters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Prevent driver crash due to NULL pointer in error message print (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Drop L2 async events silently (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid accessing nq->bar_reg_iomem in failure case (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid NULL check after accessing the pointer (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Remove the unnecessary version macro definition (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix recursive lock warning in debug kernel (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add missing spin lock initialization (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: QPLIB: Add and use #define dev_fmt(fmt) "QPLIB: " fmt (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Modify a fall-through annotation (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix a bunch of off by one bugs in qplib_fp.c (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix a couple off by one bugs (Selvin Xavier) [1664798] - [powerpc] powerpc/fadump: Do not allow hot-remove memory from fadump reserved area. (Gustavo Duarte) [1524686] - [powerpc] powerpc/fadump: Throw proper error message on fadump registration failure (Gustavo Duarte) [1524686] - [powerpc] powerpc/fadump: Reservationless firmware assisted dump (Gustavo Duarte) [1524686] - [infiniband] IB/hfi1: Fix WQ_MEM_RECLAIM warning (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Implement CCA for TID RDMA protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove WARN_ON when freeing expected receive groups (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Unify the software PSN check for TID RDMA READ/WRITE (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to read next expected psn from hardware flow (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Delay the release of destination mr for TID RDMA WRITE DATA (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Do not flush send queue in the TID RDMA second leg (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix the allocation of RSM table (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Eliminate opcode tests on mr deref (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Clear the IOWAIT pending bits when QP is put into error state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Failed to drain send queue when QP is put into error state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add missing break in switch statement (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix a build warning for TID RDMA READ (Alex Estrin) [1660618] - [infiniband] RDMA/rdmavt: Adapt to handle non-uniform sizes on umem SGEs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prioritize the sending of ACK packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for TID RDMA WRITE protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Enable TID RDMA WRITE protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add interlock between TID RDMA WRITE and other requests (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA WRITE functionality into RDMA verbs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the dual leg code (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the TID second leg ACK packet builder (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the TID second leg send packet builder (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Resend the TID RDMA WRITE DATA packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA RESYNC packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA RESYNC packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA retry timer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA ACK packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA ACK packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA WRITE DATA packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA WRITE DATA packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA WRITE response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID resource timer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA WRITE response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA WRITE request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add an s_acked_ack_queue pointer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Allow for extra entries in QP's s_ack_queue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Build TID RDMA WRITE request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for TID RDMA READ protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Enable TID RDMA READ protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add interlock between a TID RDMA request and other requests (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Integrate TID RDMA READ protocol into RC protocol (Alex Estrin) [1660618] - [include] IB/hfi1: Increment the retry timeout value for TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions for restarting TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA handlers (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA READ response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA READ response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Set PbcInsertHcrc for TID RDMA packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to build TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for flow and TID management functions (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the counter n_tidwait (Alex Estrin) [1660618] - [infiniband] IB/hfi1: TID RDMA RcvArray programming and TID allocation (Alex Estrin) [1660618] - [infiniband] IB/hfi1: TID RDMA flow allocation (Alex Estrin) [1660618] - [infiniband] IB/hfi: Move RC functions into a header file (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for OPFN (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Integrate OPFN into RC transactions (Alex Estrin) [1660618] - [infiniband] IB/hfi1, IB/rdmavt: Allow for extending of QP's s_ack_queue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: OPFN interface (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add OPFN helper functions for TID RDMA feature (Alex Estrin) [1660618] - [infiniband] IB/hfi1: OPFN support discovery (Alex Estrin) [1660618] - [infiniband] IB/{hfi1, qib, rvt} Cleanup open coded sge usage (Alex Estrin) [1660618] - [infiniband] IB/{hfi1,qib}: Cleanup open coded sge sizing (Alex Estrin) [1660618] - [infiniband] RDMA/qib: Use GUP longterm for PSM page pining (Alex Estrin) [1660618] - [infiniband] infiniband: qib: no need to check return value of debugfs_create functions (Alex Estrin) [1660618] - [infiniband] infiniband: hfi1: no need to check return value of debugfs_create functions (Alex Estrin) [1660618] - [infiniband] infiniband: hfi1: drop crazy DEBUGFS_SEQ_FILE_CREATE() macro (Alex Estrin) [1660618] - [infiniband] IB/{hfi1, qib}: Fix WC.byte_len calculation for UD_SEND_WITH_IMM (Alex Estrin) [1660618] - [infiniband] IB/qib: Fix an error code in qib_sdma_verbs_send() (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Reduce lock contention on iowait_lock for sdma and pio (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Close VNIC sdma_progress sleep window (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Allow the driver to initialize QP priv struct (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add OPFN and TID RDMA capability bits (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Unreserve a reserved request when it is completed (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Consider LMC in 16B/bypass ingress packet check (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Limit VNIC use of SDMA engines to the available count (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Correctly process FECN and BECN in packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Ignore LNI errors before DC8051 transitions to Polling state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Dump pio info for non-user send contexts (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix a latency issue for small messages (Alex Estrin) [1660618] - [infiniband] RDMA/qib: Remove all occurrences of BUG_ON() (Alex Estrin) [1660618] - [infiniband] IB/qib: fix spelling mistake "colescing" -> "coalescing" (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Use VL15 for SM packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add mtu check for operational data VLs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for iowait (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prepare resource waits for dual leg (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Error path MAD response size is incorrect (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move UnsupportedVL bits definitions to the correct header (Alex Estrin) [1660618] - [infiniband] IB/hfi1: set_intr_bits uses incorrect source for register modification (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Missing return value in error path for user sdma (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Right size user_sdma sequence numbers and related variables (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move URGENT IRQ enable to hfi1_rcvctrl() (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rework the IRQ API to be more flexible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: PCIe bus width retry (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Make the MSIx resource allocation a bit more flexible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prepare for new HFI1 MSIx API (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Get the hfi1_devdata structure as early as possible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: tune_pcie_caps is arbitrarily placed, poorly (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove duplicated defines (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rework file list in Makefile (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove incorrect call to do_interrupt callback (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Set in_use_ctxts bits for user ctxts only (Alex Estrin) [1660618] - [include] include/rdma/opa_addr.h: Fix an endianness issue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove INTx support and simplify MSIx usage (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Reorg ctxtdata and rightsize fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove caches of chip CSRs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove unused/writeonly devdata fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rightsize ctxt_eager_bufs fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvctrl from ctxtdata (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvhdrq_size (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvhdrsize (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move rhf_offset from devdata to ctxtdata (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move normal functions from hfi1_devdata to const array (Alex Estrin) [1660618] - [infiniband] scsi: RDMA/srpt: Fix handling of TMF submission failure (Jonathan Toppins) [1685313] - [infiniband] scsi: RDMA/srpt: Fix a credit leak for aborted commands (Jonathan Toppins) [1685313] - [net] xprtrdma: Reduce the doorbell rate (Receive) (Jonathan Toppins) [1685313] - [net] xprtrdma: Fix sparse warnings (Jonathan Toppins) [1685313] - [net] xprtrdma: Fix helper that drains the transport (Jonathan Toppins) [1685313] - [netdrv] enic: fix build warning without CONFIG_CPUMASK_OFFSTACK (Jonathan Toppins) [1685313] - [infiniband] IB/usnic: Fix out of bounds index check in query pkey (Jonathan Toppins) [1685313] - [infiniband] IB/usnic: Remove stub functions (Jonathan Toppins) [1685313] - [infiniband] rdma: fix build errors on s390 and MIPS due to bad ZERO_PAGE use (Jonathan Toppins) [1685313] - [infiniband] RDMA/ucontext: Fix regression with disassociate (Jonathan Toppins) [1685313] - [infiniband] IB/iser: Fix dma_nents type definition (Jonathan Toppins) [1685313] - [infiniband] IB/iser: Pass the correct number of entries for dma mapped SGL (Jonathan Toppins) [1685313] - [infiniband] RDMA/rxe: Use for_each_sg_page iterator on umem SGL (Jonathan Toppins) [1685313] - [infiniband] RDMA/vmw_pvrdma: Fix memory leak on pvrdma_pci_remove (Jonathan Toppins) [1685313] - [infiniband] RDMA/vmw_pvrdma: Support upto 64-bit PFNs (Jonathan Toppins) [1683475] - [include] IB/mlx5: Remove dead code (Jonathan Toppins) [1685313] - [infiniband] IB/mlx5: Ranges in implicit ODP MR inherit its write access (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix frwr memory registration (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Add wc_flags and wc_immdata to cq entry trace (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix concurrency panics in QP post_send and modify to error (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix loopback send with invalidate ordering (Jonathan Toppins) [1685313] - [infiniband] IB/hfi1: Add limit test for RC/UC send via loopback (Jonathan Toppins) [1685313] - [infiniband] RDMA/iwcm: Fix string truncation error (Jonathan Toppins) [1685313] - [infiniband] RDMA/iwcm: add tos_set bool to iw_cm struct (Jonathan Toppins) [1685313] - [infiniband] RDMA/cma: listening device cm_ids should inherit tos (Jonathan Toppins) [1685313] - [infiniband] RDMA/cma: Rollback source IP address if failing to acquire device (Jonathan Toppins) [1685313] - [infiniband] RDMA/device: Call ib_cache_release_one() only from ib_device_release() (Jonathan Toppins) [1685313] - [infiniband] RDMA/device: Ensure that security memory is always freed (Jonathan Toppins) [1685313] - [infiniband] RDMA/uverbs: Fix an error flow in ib_uverbs_poll_cq (Jonathan Toppins) [1685313] - [infiniband] IB/ipoib: Make ipoib_intercept_dev_id_attr() static (Jonathan Toppins) [1685313] - [infiniband] RDMA: Provide safe ib_alloc_device() function (Jonathan Toppins) [1685313] - [infiniband] IB/core, ipoib: Do not overreact to SM LID change event (Jonathan Toppins) [1685313] - [infiniband] IB/core: Abort page fault handler silently during owning process exit (Jonathan Toppins) [1685313] - [infiniband] RDMA/core: Verify that memory window type is legal (Jonathan Toppins) [1685313] - [infiniband] IB/core: Don't register each MAD agent for LSM notifier (Jonathan Toppins) [1711086 1685313] - [include] IB/core: Eliminate a hole in MAD agent struct (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Fix potential memory leak while creating MAD agents (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Unregister notifier before freeing MAD security (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Destroy QP if XRC QP fails (Jonathan Toppins) [1685313] - [infiniband] IB/core: Declare local functions 'static' (Jonathan Toppins) [1685313] - [infiniband] RDMA/i40iw: Make sure to initialize ib_device_ops (Jonathan Toppins) [1685313] - [rpmspec] Update the kernel rpm package description to mention backports/bug fixes ("Herton R. Krzesinski") [1701064] - [netdrv] bonding: fix arp_validate toggling in active-backup mode (Jarod Wilson) [1654214] - [scsi] scsi: bnx2i: fix indentation issue, remove a tab (Maurizio Lombardi) [1665626] - [scsi] scsi: bnx2i: remove set but not used variable 'cid_num' (Maurizio Lombardi) [1665626] - [scsi] scsi: bnx2i: add error handling for ioremap_nocache (Maurizio Lombardi) [1665626] - [wireless] iwlwifi: mvm: Send LQ command as async when necessary (Stanislaw Gruszka) [1687265] - [scsi] scsi: bnx2fc: Fix error handling in probe() (Maurizio Lombardi) [1665625] - [scsi] scsi: bnx2fc: Fix NULL dereference in error handling (Maurizio Lombardi) [1665625] - [scsi] scsi: bnx2fc: Remove set but not used variable 'oxid' (Maurizio Lombardi) [1665625] - [scsi] bnx2fc_fcoe: Use skb_queue_walk_safe(). (Maurizio Lombardi) [1665625] - [netdrv] hv_netvsc: Fix rndis_per_packet_info internal field initialization (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Add handler for LRO setting change (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Add support for LRO/RSC in the vSwitch (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix unwanted wakeup after tx_disable (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix IP header checksum for coalesced packets (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: fix typos in code comments (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix hash key value reset after other ops (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Refactor assignments of struct netvsc_device_info (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix ethtool change hash key error (Mohammed Gamal) [1691375] - [netdrv] ice: Disable sniffing VF traffic on PF (Kamal Heib) [1659176] - [netdrv] ice: Use more efficient structures (Kamal Heib) [1659176] - [netdrv] ice: Use bitfields where possible (Kamal Heib) [1659176] - [netdrv] ice: Add function to program ethertype based filter rule on VSIs (Kamal Heib) [1659176] - [netdrv] ice: Separate if conditions for ice_set_features() (Kamal Heib) [1659176] - [netdrv] ice: Remove __always_unused attribute (Kamal Heib) [1659176] - [netdrv] ice: Suppress false-positive style issues reported by static analyzer (Kamal Heib) [1659176] - [netdrv] ice: Refactor getting/setting coalesce (Kamal Heib) [1659176] - [netdrv] ice: Always free/allocate q_vectors (Kamal Heib) [1659176] - [netdrv] ice: Do not unnecessarily initialize local variable (Kamal Heib) [1659176] - [netdrv] ice: Add more validation in ice_vc_cfg_irq_map_msg (Kamal Heib) [1659176] - [netdrv] ice: Don't remove VLAN filters that were never programmed (Kamal Heib) [1659176] - [netdrv] ice: Preserve VLAN Rx stripping settings (Kamal Heib) [1659176] - [netdrv] ice: Fix for allowing too many MDD events on VF (Kamal Heib) [1659176] - [netdrv] ice: Use pf instead of vsi-back (Kamal Heib) [1659176] - [netdrv] ice: Use dev_err when ice_cfg_vsi_lan fails (Kamal Heib) [1659176] - [netdrv] ice: Refactor link event flow (Kamal Heib) [1659176] - [netdrv] ice: Add missing PHY type to link settings (Kamal Heib) [1659176] - [netdrv] ice: Add reg_idx variable in ice_q_vector structure (Kamal Heib) [1659176] - [netdrv] ice: Remove runtime change of PFINT_OICR_ENA register (Kamal Heib) [1659176] - [netdrv] ice: Fix issue when adding more than allowed VLANs (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary wait when disabling/enabling Rx queues (Kamal Heib) [1659176] - [netdrv] ice: Add ability to update rx-usecs-high (Kamal Heib) [1659176] - [netdrv] ice: Add 52 byte RSS hash key support (Kamal Heib) [1659176] - [netdrv] ice: Use ice_for_each_q_vector macro where possible (Kamal Heib) [1659176] - [netdrv] ice: Validate ring existence and its q_vector per VSI (Kamal Heib) [1659176] - [netdrv] ice: Reduce scope of variable in ice_vsi_cfg_rxqs (Kamal Heib) [1659176] - [netdrv] ice: Resolve static analysis reported issue (Kamal Heib) [1659176] - [netdrv] ice: Return configuration error without queue to disable (Kamal Heib) [1659176] - [netdrv] ice: Create framework for VSI queue context (Kamal Heib) [1659176] - [netdrv] ice: Calculate ITR increment based on direct calculation (Kamal Heib) [1700995 1659176] - [netdrv] ice: Bump driver version (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to control FW LLDP and DCBX (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB rebuild (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to get DCB related statistics (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add priority information into VLAN header (Kamal Heib) [1700995 1659176] - [netdrv] ice: Update rings based on TC information (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to process LLDP MIB change events (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 4/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 3/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 2/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 1/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Bump version (Kamal Heib) [1700995 1659176] - [netdrv] ice: Fix incorrect use of abbreviations (Kamal Heib) [1700995 1659176] - [netdrv] ice: Fix typos in code comments (Kamal Heib) [1700995 1659176] - [netdrv] ice: Remove "2 BITS" comment (Kamal Heib) [1659176] - [netdrv] ice: Update comment regarding the ITR_GRAN_S (Kamal Heib) [1659176] - [netdrv] ice: Update function header for __ice_vsi_get_qs (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary braces (Kamal Heib) [1659176] - [netdrv] ice: Remove unused function prototype (Kamal Heib) [1659176] - [netdrv] ice: Add missing case in print_link_msg for printing flow control (Kamal Heib) [1659176] - [netdrv] ice: Audit hotpath structures with pahole (Kamal Heib) [1659176] - [netdrv] ice: Do not bail out when filter already exists (Kamal Heib) [1659176] - [netdrv] ice: Fix issue with VF attempt to delete default MAC address (Kamal Heib) [1659176] - [netdrv] ice: enable VF admin queue interrupts (Kamal Heib) [1659176] - [netdrv] ice: Fix for adaptive interrupt moderation (Kamal Heib) [1659176] - [netdrv] ice: Implement pci_error_handler ops (Kamal Heib) [1659176] - [netdrv] ice: Put __ICE_PREPARED_FOR_RESET check in ice_prepare_for_reset (Kamal Heib) [1659176] - [netdrv] ice: use virt channel status codes (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary newlines from log messages (Kamal Heib) [1659176] - [netdrv] ice: Create a generic name for the ice_rx_flg64_bits structure (Kamal Heib) [1659176] - [netdrv] ice: add and use new ice_for_each_traffic_class() macro (Kamal Heib) [1659176] - [netdrv] ice: change VF VSI tc info along with num_queues (Kamal Heib) [1659176] - [netdrv] ice: Prevent unintended multiple chain resets (Kamal Heib) [1659176] - [netdrv] ice: map Rx buffer pages with DMA attributes (Kamal Heib) [1659176] - [netdrv] ice: Limit the ice_add_rx_frag to frag addition (Kamal Heib) [1659176] - [netdrv] ice: Gather the rx buf clean-up logic for better reuse (Kamal Heib) [1659176] - [netdrv] ice: Introduce bulk update for page count (Kamal Heib) [1659176] - [netdrv] ice: Get rid of ice_pull_tail (Kamal Heib) [1659176] - [netdrv] ice: Pull out page reuse checks onto separate function (Kamal Heib) [1659176] - [netdrv] ice: Retrieve rx_buf in separate function (Kamal Heib) [1659176] - [netdrv] ice: Enable link events over the ARQ (Kamal Heib) [1659176] - [netdrv] ice: use irq_num var in ice_vsi_req_irq_msix (Kamal Heib) [1659176] - [netdrv] ice: Restore VLAN switch rule if port VLAN existed before (Kamal Heib) [1659176] - [netdrv] ice: update VSI config dynamically (Kamal Heib) [1659176] - [netdrv] ice: Get VF VSI instances directly via PF (Kamal Heib) [1659176] - [netdrv] ice: Don't let VF know that it is untrusted (Kamal Heib) [1659176] - [netdrv] ice: Set LAN_EN for all directional rules (Kamal Heib) [1659176] - [netdrv] ice: Do not set LB_EN for prune switch rules (Kamal Heib) [1659176] - [netdrv] ice: Enable LAN_EN for the right recipes (Kamal Heib) [1659176] - [netdrv] ice: Add support for PF/VF promiscuous mode (Kamal Heib) [1659176] - [netdrv] ice: code cleanup in ice_sched.c (Kamal Heib) [1659176] - [netdrv] ice: Remove unused vsi_id field (Kamal Heib) [1659176] - [netdrv] ice: fix some function prototype and signature style issues (Kamal Heib) [1659176] - [netdrv] ice: fix the divide by zero issue (Kamal Heib) [1659176] - [netdrv] ice: Fix issue reconfiguring VF queues (Kamal Heib) [1659176] - [netdrv] ice: Remove unused function prototype (Kamal Heib) [1659176] - [netdrv] ice: fix static analysis warnings (Kamal Heib) [1659176] - [netdrv] ice: Fix issue reclaiming resources back to the pool after reset (Kamal Heib) [1659176] - [netdrv] ice: Enable MAC anti-spoof by default (Kamal Heib) [1659176] - [netdrv] ice: Determine descriptor count and ring size based on PAGE_SIZE (Kamal Heib) [1659176] - [netdrv] ice: Reset all VFs with VFLR during SR-IOV init flow (Kamal Heib) [1659176] - [netdrv] ice: Get resources per function (Kamal Heib) [1659176] - [netdrv] ice: Implement flow to reset VFs with PFR and other resets (Kamal Heib) [1659176] - [netdrv] ice: configure GLINT_ITR to always have an ITR gran of 2 (Kamal Heib) [1659176] - [netdrv] ice: use ice_for_each_vsi macro when possible (Kamal Heib) [1659176] - [netdrv] ice : Ensure only valid bits are set in ice_aq_set_phy_cfg (Kamal Heib) [1659176] - [netdrv] ice: remove redundant variable and if condition (Kamal Heib) [1659176] - [netdrv] ice: avoid multiple unnecessary de-references in probe (Kamal Heib) [1659176] - [netdrv] ice: Fix issue with VF reset and multiple VFs support on PFs (Kamal Heib) [1659176] - [netdrv] ice: Fix broadcast traffic in port VLAN mode (Kamal Heib) [1659176] - [netdrv] ice: fix overlong string, update stats output (Kamal Heib) [1659176] - [netdrv] ice: Fix for FC get rx/tx pause params (Kamal Heib) [1659176] - [netdrv] ice: use absolute vector ID for VFs (Kamal Heib) [1659176] - [netdrv] ice: check for a leaf node presence (Kamal Heib) [1659176] - [netdrv] ice: flush Tx pipe on disable queue timeout (Kamal Heib) [1659176] - [netdrv] ice: clear VF ARQLEN register on reset (Kamal Heib) [1659176] - [netdrv] ice: don't spam VFs with link messages (Kamal Heib) [1659176] - [netdrv] ice: only use the VF for ICE_VSI_VF in ice_vsi_release (Kamal Heib) [1659176] - [netdrv] ice: fix numeric overflow warning (Kamal Heib) [1659176] - [netdrv] ice: fix issue where host reboots on unload when iommu=on (Kamal Heib) [1659176] - [netdrv] ice: fix ice_remove_rule_internal vsi_list handling (Kamal Heib) [1659176] - [netdrv] ice: fix stack hogs from struct ice_vsi_ctx structures (Kamal Heib) [1659176] - [netdrv] ice: sizeof() should be avoided (Kamal Heib) [1659176] - [netdrv] ice: Fix added in VSI supported nodes calc (Kamal Heib) [1659176] - [netdrv] ice: Fix the calculation of ICE_MAX_MTU (Kamal Heib) [1659176] - [netdrv] ice: Mark extack argument as __always_unused (Kamal Heib) [1659176] - [netdrv] ice: add const qualifier to mac_addr parameter (Kamal Heib) [1659176] - [netdrv] ice: Add support for new PHY types (Kamal Heib) [1659176] - [netdrv] ice: Offload SCTP checksum (Kamal Heib) [1659176] - [netdrv] ice: Allow for software timestamping (Kamal Heib) [1659176] - [netdrv] ice: Implement getting and setting ethtool coalesce (Kamal Heib) [1659176] - [netdrv] ice: Add support for adaptive interrupt moderation (Kamal Heib) [1659176] - [netdrv] ice: Move aggregator list into ice_hw instance (Kamal Heib) [1659176] - [netdrv] ice: Rework queue management code for reuse (Kamal Heib) [1659176] - [netdrv] ice: Add ethtool private flag to make forcing link down optional (Kamal Heib) [1659176] - [netdrv] ice: Set physical link up/down when an interface is set up/down (Kamal Heib) [1659176] - [netdrv] ice: Implement support for normal get_eeprom[_len] ethtool ops (Kamal Heib) [1659176] - [netdrv] ice: Add ethtool set_phys_id handler (Kamal Heib) [1659176] - [netdrv] ice: Configure RSS LUT and HASH KEY in rebuild path (Kamal Heib) [1659176] - [netdrv] ice: Refactor a few Tx scheduler functions (Kamal Heib) [1659176] - [netdrv] ice: Fix unused variable build warning (Kamal Heib) [1659176] - [netdrv] ice: Do not enable NAPI on q_vectors that have no rings (Kamal Heib) [1659176] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Kamal Heib) [1659176] - [netdrv] ice: Fix possible NULL pointer de-reference (Kamal Heib) [1659176] - [netdrv] ice: Use Tx|Rx in comments (Kamal Heib) [1659176] - [netdrv] ice: Cosmetic formatting changes (Kamal Heib) [1659176] - [netdrv] ice: Cleanup short function signatures (Kamal Heib) [1659176] - [netdrv] ice: Cleanup ice_tx_timeout() (Kamal Heib) [1659176] - [netdrv] ice: Fix return value from NAPI poll (Kamal Heib) [1659176] - [netdrv] ice: Constify global structures that can/should be (Kamal Heib) [1659176] - [netdrv] ice: Do not set LAN_EN for MAC-VLAN filters (Kamal Heib) [1659176] - [netdrv] ice: Pass the return value of ice_init_def_sw_recp() (Kamal Heib) [1659176] - [netdrv] ice: Cleanup duplicate control queue code (Kamal Heib) [1659176] - [netdrv] ice: Remove ICE_MAX_TXQ_PER_TXQG check when configuring Tx queue (Kamal Heib) [1659176] - [netdrv] ice: Destroy scheduler tree in reset path (Kamal Heib) [1659176] - [netdrv] ice: Fix to make VLAN priority tagged traffic to appear on all TCs (Kamal Heib) [1659176] - [netdrv] ice: Call pci_disable_sriov before stopping queues for VF (Kamal Heib) [1659176] - [netdrv] ice: Increase Rx queue disable timeout (Kamal Heib) [1659176] - [netdrv] ice: Fix NVM mask defines (Kamal Heib) [1659176] - [netdrv] ice: Avoid nested RTNL locking in ice_dis_vsi (Kamal Heib) [1659176] - [netdrv] ice: Calculate guaranteed VSIs per function and use it (Kamal Heib) [1659176] - [netdrv] ice: Remove node before releasing VSI (Kamal Heib) [1659176] - [netdrv] ice: Check for q_vector when stopping rings (Kamal Heib) [1659176] - [netdrv] ice: Fix debug print in ice_tx_timeout (Kamal Heib) [1659176] - [netdrv] intel-ethernet: use correct module license (Kamal Heib) [1659176] - [netdrv] bnx2x: Add support for detection of P2P event packets. (Manish Chopra) [1638306 1663271] - [netdrv] bnx2x: Replace magic numbers with macro definitions. (Manish Chopra) [1638306 1663271] - [netdrv] bnx2x: fix spelling mistake "dicline" -> "decline" (Manish Chopra) [1663271] - [netdrv] bnx2x: Utilize FW 7.13.11.0. (Manish Chopra) [1663271] - [netdrv] bnx2x: Remove set but not used variable 'mfw_vn' (Manish Chopra) [1663271] - [netdrv] bnx2x: Use struct_size() in kzalloc() (Manish Chopra) [1663271] - [netdrv] broadcom: Mark expected switch fall-throughs (Manish Chopra) [1663271] - [netdrv] bnx2x: Bump up driver version to 1.713.36 (Manish Chopra) [1663271] - [netdrv] bnx2x: fix various indentation issues (Manish Chopra) [1663271] - [netdrv] cross-tree: phase out dma_zalloc_coherent() on headers (Manish Chopra) [1663271] - [netdrv] bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw (Manish Chopra) [1663271] - [netdrv] bnx2x: Send update-svid ramrod with retry/poll flags enabled (Manish Chopra) [1663271] - [netdrv] bnx2x: Enable PTP only on the PF that initializes the port (Manish Chopra) [1663271] - [netdrv] bnx2x: Remove configured vlans as part of unload sequence. (Manish Chopra) [1663271] - [netdrv] bnx2x: Clear fip MAC when fcoe offload support is disabled (Manish Chopra) [1663271] - [netdrv] bnx2x: Add storm FW version to ethtool driver query output. (Manish Chopra) [1663271] - [netdrv] bnx2x: Add MBI version to ethtool driver query output. (Manish Chopra) [1663271] - [netdrv] drivers: net: remove inclusion when not needed (Manish Chopra) [1663271] - [netdrv] bnx2x: remove ndo_poll_controller (Manish Chopra) [1663271] - [netdrv] bnx2x: Provide VF link status in ndo_get_vf_config (Manish Chopra) [1663271] - [netdrv] bnx2x: Ignore bandwidth attention in single function mode (Manish Chopra) [1663271] - [block] block: remove CONFIG_LBDAF (Ming Lei) [1708452] - [kernel] sched/pelt: Fix warning and clean up IRQ PELT config (Phil Auld) [1637824] - [kernel] sched/pelt: Fix update_blocked_averages() for RT and DL classes (Phil Auld) [1637824] - [mm] mm, sched/numa: Remove remaining traces of NUMA rate-limiting (Phil Auld) [1637824] - [kernel] sched/fair: Fix cpu_util_wake() for 'execl' type workloads (Phil Auld) [1637824] - [kernel] sched/fair: Consider SD_NUMA when selecting the most idle group to schedule on (Phil Auld) [1637824] - [kernel] sched/numa: Migrate pages to local nodes quicker early in the lifetime of a task (Phil Auld) [1637824] - [mm] mm, sched/numa: Remove rate-limiting of automatic NUMA balancing migration (Phil Auld) [1637824] - [kernel] sched/numa: Avoid task migration for small NUMA improvement (Phil Auld) [1637824] - [mm] mm/migrate: Use spin_trylock() while resetting rate limit (Phil Auld) [1637824] - [kernel] sched/numa: Limit the conditions where scan period is reset (Phil Auld) [1637824] - [kernel] sched/numa: Reset scan rate whenever task moves across nodes (Phil Auld) [1637824] - [kernel] sched/numa: Pass destination CPU as a parameter to migrate_task_rq (Phil Auld) [1637824] - [kernel] sched/numa: Stop multiple tasks from moving to the CPU at the same time (Phil Auld) [1637824] - [kernel] sched/fair: Fix scale_rt_capacity() for SMT (Phil Auld) [1637824] - [kernel] sched/numa: Move task_numa_placement() closer to numa_migrate_preferred() (Phil Auld) [1637824] - [kernel] sched/numa: Use group_weights to identify if migration degrades locality (Phil Auld) [1637824] - [kernel] sched/numa: Update the scan period without holding the numa_group lock (Phil Auld) [1637824] - [kernel] sched/numa: Remove numa_has_capacity() (Phil Auld) [1637824] - [kernel] sched/numa: Modify migrate_swap() to accept additional parameters (Phil Auld) [1637824] - [kernel] sched/numa: Remove unused task_capacity from 'struct numa_stats' (Phil Auld) [1637824] - [kernel] sched/numa: Skip nodes that are at 'hoplimit' (Phil Auld) [1637824] - [kernel] sched/debug: Reverse the order of printing faults (Phil Auld) [1637824] - [kernel] sched/numa: Use task faults only if numa_group is not yet set up (Phil Auld) [1637824] - [kernel] sched/numa: Set preferred_node based on best_cpu (Phil Auld) [1637824] - [kernel] sched/numa: Simplify load_too_imbalanced() (Phil Auld) [1637824] - [kernel] sched/numa: Evaluate move once per node (Phil Auld) [1637824] - [kernel] sched/fair: Remove #ifdefs from scale_rt_capacity() (Phil Auld) [1637824] - [kernel] sched/cpufreq: Clarify sugov_get_util() (Phil Auld) [1637824] - [kernel] sched/sysctl: Remove unused sched_time_avg_ms sysctl (Phil Auld) [1637824] - [kernel] sched/core: Remove the rt_avg code (Phil Auld) [1637824] - [kernel] sched/core: Use PELT for scale_rt_capacity() (Phil Auld) [1637824] - [kernel] sched/cpufreq: Remove sugov_aggregate_util() (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Take time spent in interrupts into account (Phil Auld) [1637824] - [kernel] sched/irq: Add IRQ utilization tracking (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Use DL utilization tracking (Phil Auld) [1637824] - [kernel] sched/dl: Add dl_rq utilization tracking (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Use RT utilization tracking (Phil Auld) [1637824] - [kernel] sched/rt: Add rt_rq utilization tracking (Phil Auld) [1637824] - [kernel] sched/pelt: Move PELT related code in a dedicated file (Phil Auld) [1637824] - [char] ipmi_si: Potential array underflow in hotmod_handler() (Tony Camuso) [1665131] - [char] ipmi_si: Remove hacks for adding a dummy platform devices (Tony Camuso) [1665131] - [char] ipmi_si: Consolidate scanning the platform bus (Tony Camuso) [1665131] - [char] ipmi_si: Remove hotmod devices on removal and exit (Tony Camuso) [1665131] - [char] ipmi_si: Remove hardcode IPMI devices by scanning the platform bus (Tony Camuso) [1665131] - [char] ipmi_si: Switch hotmod to use a platform device (Tony Camuso) [1665131] - [char] ipmi: Fix failure on SMBIOS specified devices (Tony Camuso) [1665131] - [char] ipmi: Consolidate the adding of platform devices (Tony Camuso) [1665131] - [char] ipmi_si: Rename addr_type to addr_space to match what it does (Tony Camuso) [1665131] - [char] ipmi_si: Convert some types into unsigned (Tony Camuso) [1665131] - [char] ipmi: ipmi_si_hardcode.c: init si_type array to fix a crash (Tony Camuso) [1665131] - [char] ipmi_si: Fix crash when using hard-coded device (Tony Camuso) [1665131] - [char] ipmi: Use dedicated API for copying a UUID (Tony Camuso) [1665131] - [char] ipmi: Use defined constant for UUID representation (Tony Camuso) [1665131] - [char] ipmi:ssif: Change some pr_xxx to dev_xxx calls (Tony Camuso) [1665131] - [char] ipmi: kcs_bmc: handle devm_kasprintf() failure case (Tony Camuso) [1665131] - [char] ipmi: Fix return value when a message is truncated (Tony Camuso) [1665131] - [char] ipmi: clean an indentation issue, remove extraneous space (Tony Camuso) [1665131] - [char] ipmi: Make the smi watcher be disabled immediately when not needed (Tony Camuso) [1665131] - [char] ipmi: Fix how the lower layers are told to watch for messages (Tony Camuso) [1665131] - [char] ipmi: Fix SSIF flag requests (Tony Camuso) [1665131] - [char] ipmi_si: fix use-after-free of resource->name (Tony Camuso) [1665131] - [char] ipmi: Don't initialize anything in the core until something uses it (Tony Camuso) [1665131] - [char] ipmi:ssif: Fix handling of multi-part return messages (Tony Camuso) [1665131] - [char] ipmi:dmi: Use pr_fmt in the IPMI DMI code (Tony Camuso) [1665131] - [char] ipmi: Remove platform driver overrides and use the id_table (Tony Camuso) [1665131] - [char] ipmi: msghandler: Add and use pr_fmt and dev_fmt, remove PFX (Tony Camuso) [1665131] - [char] ipmi: Use more common logging styles (Tony Camuso) [1665131] - [acpi] ACPI / glue: Split dev_is_platform() out of module for wide use (Tony Camuso) [1665131]- [scsi] scsi: hpsa: bump driver version (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: remove timeout from TURs (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: clean up two indentation issues (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: mark expected switch fall-throughs (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: switch to generic DMA API (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: Use vmemdup_user to replace the open code (Joseph Szczypek) [1672669] - [netdrv] ibmvnic: Add device identification to requested IRQs (Steve Best) [1665717] - [crypto] crypto: authenc - fix parsing key with misaligned rta_len (Herbert Xu) [1707546] - [block] block: don't drain in-progress dispatch in blk_cleanup_queue() (Ming Lei) [1694879] - [block] blk-mq: move cancel of hctx->run_work into blk_mq_hw_sysfs_release (Ming Lei) [1694879] - [include] blk-mq: always free hctx after request queue is freed (Ming Lei) [1694879] - [block] blk-mq: split blk_mq_alloc_and_init_hctx into two parts (Ming Lei) [1694879] - [block] blk-mq: free hw queue's resource in hctx's release handler (Ming Lei) [1694879] - [block] blk-mq: move cancel of requeue_work into blk_mq_release (Ming Lei) [1694879] - [block] blk-mq: grab .q_usage_counter when queuing request from plug code path (Ming Lei) [1694879] - [block] block: fix use-after-free on gendisk (Ming Lei) [1694879] - [netdrv] bonding: fix event handling for stacked bonds (Jarod Wilson) [1708390] - [netdrv] bonding: show full hw address in sysfs for slave entries (Jarod Wilson) [1708390] - [netdrv] bonding: fix PACKET_ORIGDEV regression (Jarod Wilson) [1708390] - [netdrv] bonding: check slave set command firstly (Jarod Wilson) [1708390] - [netdrv] bonding: count master 3ad stats separately (Jarod Wilson) [1708390] - [netdrv] bonding: add support for xstats and export 3ad stats (Jarod Wilson) [1708390] - [netdrv] bonding: add 3ad stats (Jarod Wilson) [1708390] - [netdrv] bonding: 3ad: remove bond_3ad_rx_indication's length argument (Jarod Wilson) [1708390] - [netdrv] bonding: adjust style of bond_3ad_rx_indication (Jarod Wilson) [1708390] - [netdrv] bonding: update nest level on unlink (Jarod Wilson) [1708390] - [netdrv] bonding: fix indentation issues, remove extra spaces (Jarod Wilson) [1708390] - [netdrv] bonding: convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1708390] - [netdrv] bonding: fix 802.3ad state sent to partner when unbinding slave (Jarod Wilson) [1708390] - [netdrv] bonding: use netpoll_poll_dev() helper (Jarod Wilson) [1708390] - [net] netpoll: do not test NAPI_STATE_SCHED in poll_one_napi() (Jarod Wilson) [1708390] - [net] netpoll: make ndo_poll_controller() optional (Jarod Wilson) [1708390] - [netdrv] bonding: don't cast const buf in sysfs store (Jarod Wilson) [1708390] - [netdrv] netdevsim: fix sa_idx out of bounds check (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: add ipsec offload API test (Ivan Vecera) [1708373] - [netdrv] netdevsim: add ipsec offload testing (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: use dummydev as a test device (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: clear the return code at start of ipsec test (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: use a local IP address for IPsec tests (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: hide complaint from terminated monitor (Ivan Vecera) [1708373] - [powerpc] powerpc/watchdog: Use hrtimers for per-CPU heartbeat (Steve Best) [1708327] - [netdrv] ixgbevf: Update driver version for RHEL-8.1.0 (Ken Cox) [1659166] - [netdrv] drivers: net: intel: use secpath helpers in more places (Ken Cox) [1659166] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Ken Cox) [1659166] - [netdrv] ixgbevf: add support for software timestamps (Ken Cox) [1659166] - [netdrv] ixgbe/ixgbevf: fix XFRM_ALGO dependency (Ken Cox) [1659166] - [netdrv] ixgbevf: off by one in ixgbevf_ipsec_tx() (Ken Cox) [1659166] - [netdrv] ixgbevf: fix msglen for ipsec mbx messages (Ken Cox) [1659166] - [netdrv] ixgbevf: remove ndo_poll_controller (Ken Cox) [1659166] - [netdrv] intel-ethernet: use correct module license (Ken Cox) [1659166] - [netdrv] ixgbevf: enable VF IPsec offload operations (Ken Cox) [1659166] - [netdrv] ixgbevf: add VF IPsec offload code (Ken Cox) [1659166] - [netdrv] ixgbevf: add defines for IPsec offload request (Ken Cox) [1659166] - [netdrv] ixgbevf: VF2VF TCP RSS (Ken Cox) [1659166] - [netdrv] ixgbe: Update driver version for RHEL-8.1.0 (Ken Cox) [1659164] - [netdrv] intel: correct return from set features callback (Ken Cox) [1659164] - [netdrv] ixgbe: don't do any AF_XDP zero-copy transmit if netif is not OK (Ken Cox) [1659164] - [netdrv] ixgbe: fix potential RX buffer starvation for AF_XDP (Ken Cox) [1659164] - [netdrv] ixgbe: fix older devices that do not support IXGBE_MRQC_L3L4TXSWEN (Ken Cox) [1659164] - [netdrv] net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Ken Cox) [1659164] - [netdrv] ixgbe: Use struct_size() helper (Ken Cox) [1659164] - [netdrv] ixgbe: remove magic constant in ixgbe_reset_hw_82599() (Ken Cox) [1659164] - [netdrv] ixgbe: use mii_bus to handle MII related ioctls (Ken Cox) [1659164] - [netdrv] ixgbe: register a mdiobus (Ken Cox) [1659164] - [netdrv] drivers: net: intel: use secpath helpers in more places (Ken Cox) [1659164] - [netdrv] ixgbe: Fix race when the VF driver does a reset (Ken Cox) [1659164] - [netdrv] ixgbe: recognize 1000BaseLX SFP modules as 1Gbps (Ken Cox) [1659164] - [netdrv] ixgbe: Replace synchronize_sched() with synchronize_rcu() (Ken Cox) [1659164] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Ken Cox) [1659164] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Ken Cox) [1659164] - [netdrv] ixgbe: allow IPsec Tx offload in VEPA mode (Ken Cox) [1659164] - [netdrv] ixgbe: don't clear_bit on xdp_ring->state if xdp_ring is null (Ken Cox) [1659164] - [netdrv] ixgbe: fix MAC anti-spoofing filter after VFLR (Ken Cox) [1659164] - [netdrv] ixgbe/ixgbevf: fix XFRM_ALGO dependency (Ken Cox) [1659164] - [netdrv] drivers: net: remove inclusion when not needed (Ken Cox) [1659164] - [netdrv] ixgbe: check return value of napi_complete_done() (Ken Cox) [1659164] - [netdrv] ixgbe: add AF_XDP zero-copy Tx support (Ken Cox) [1659164] - [netdrv] ixgbe: move common Tx functions to ixgbe_txrx_common.h (Ken Cox) [1659164] - [netdrv] ixgbe: add AF_XDP zero-copy Rx support (Ken Cox) [1659164] - [netdrv] ixgbe: move common Rx functions to ixgbe_txrx_common.h (Ken Cox) [1659164] - [netdrv] ixgbe: added Rx/Tx ring disable/enable functions (Ken Cox) [1659164] - [netdrv] ixgbe: Fix crash with VFs and flow director on interface flap (Ken Cox) [1659164] - [netdrv] ixgbe: remove redundant function ixgbe_fw_recovery_mode() (Ken Cox) [1659164] - [netdrv] ixgbe: Fix ixgbe TX hangs with XDP_TX beyond queue limit (Ken Cox) [1659164] - [netdrv] ixgbe: remove ndo_poll_controller (Ken Cox) [1659164] - [netdrv] intel-ethernet: use correct module license (Ken Cox) [1659164] - [netdrv] ixgbe: fix the return value for unsupported VF offload (Ken Cox) [1659164] - [netdrv] ixgbe: disallow IPsec Tx offload when in SR-IOV mode (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec offload request message handling (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec offload enable flag (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec management (Ken Cox) [1659164] - [netdrv] ixgbe: prep IPsec constants for later use (Ken Cox) [1659164] - [netdrv] ixgbe: reload IPsec IP table after sa tables (Ken Cox) [1659164] - [netdrv] ixgbe: don't clear IPsec sa counters on HW clearing (Ken Cox) [1659164] - [netdrv] ixgbe: firmware recovery mode (Ken Cox) [1659164] - [netdrv] ixgbe: fix driver behaviour after issuing VFLR (Ken Cox) [1659164] - [netdrv] ixgbe: Prevent unsupported configurations with XDP (Ken Cox) [1659164] - [netdrv] ixgbe: Refactor queue disable logic to take completion time into account (Ken Cox) [1659164] - [netdrv] ixgbe: Reorder Tx/Rx shutdown to reduce time needed to stop device (Ken Cox) [1659164] - [netdrv] ixgbe: add ipsec security registers into ethtool register dump (Ken Cox) [1659164] - [netdrv] ixgbe: Do not allow LRO or MTU change with XDP (Ken Cox) [1659164] - [wireless] brcmfmac: add subtype check for event handling in data path (Stanislaw Gruszka) [1705386] {CVE-2019-9500} - [wireless] brcmfmac: assure SSID length from firmware is limited (Stanislaw Gruszka) [1705386] {CVE-2019-9500} - [base] driver core: Postpone DMA tear-down until after devres release (Maurizio Lombardi) [1698053]- [of] of: Add missing exports of node name compare functions (Neil Horman) [1665660] - [of] of: add node name compare helper functions (Neil Horman) [1665660] - [include] gpio: Add API to explicitly name a consumer (Neil Horman) [1665660] - [drivers] spi: spi-gpio: fix SPI_CS_HIGH capability (Neil Horman) [1665660] - [drivers] spi: use gpio[d]_set_value_cansleep for setting chipselect GPIO (Neil Horman) [1665660] - [drivers] spi: gpio: Advertise support for SPI_CS_HIGH (Neil Horman) [1665660] - [include] spi: support inter-word delay requirement for devices (Neil Horman) [1665660] - [drivers] spi: dw: Fix default polarity of native chipselect (Neil Horman) [1665660] - [drivers] spi: Support high CS when using descriptors (Neil Horman) [1665660] - [include] spi: Go back to immediate teardown (Neil Horman) [1665660] - [drivers] spi: dw: change snprintf to scnprintf for possible overflow (Neil Horman) [1665660] - [drivers] spi: dw: fix warning unused variable 'ret' (Neil Horman) [1665660] - [include] spi: core: avoid waking pump thread from spi_sync instead run teardown delayed (Neil Horman) [1665660] - [drivers] spi: dw: Convert to use CS GPIO descriptors (Neil Horman) [1665660] - [include] spi: Optionally use GPIO descriptors for CS GPIOs (Neil Horman) [1665660] - [drivers] spi: dw: fix potential variable assignment error (Neil Horman) [1665660] - [drivers] spi: Use of_node_name_eq for node name comparisons (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add ACPI support (Neil Horman) [1665660] - [include] spi: add support for octal mode I/O data transfer (Neil Horman) [1665660] - [drivers] spi: Fix formatting of header block (Neil Horman) [1665660] - [drivers] spi: Fix core transfer waits after slave support (Neil Horman) [1665660] - [drivers] spi: Deal with slaves that return from transfer_one() unfinished (Neil Horman) [1665660] - [include] spi: gpio: Support 3WIRE high-impedance turn-around (Neil Horman) [1665660] - [drivers] spi: Make GPIO CSs honour the SPI_NO_CS flag (Neil Horman) [1665660] - [drivers] dw: spi: add support for Amazon's Alpine spi controller (Neil Horman) [1665660] - [include] spi: Add driver_override SPI device attribute (Neil Horman) [1665660] - [include] spi: make OF helper available for others (Neil Horman) [1665660] - [include] spi: switch to SPDX license identifier (Neil Horman) [1665660] - [drivers] spi: always use software fallback for SPI_CS_WORD when using cs_gio (Neil Horman) [1665660] - [drivers] spi: add software implementation for SPI_CS_WORD (Neil Horman) [1665660] - [include] spi: add new SPI_CS_WORD flag (Neil Horman) [1665660] - [drivers] spi: gpio: No MISO does not imply no RX (Neil Horman) [1665660] - [drivers] spi: dw: support 4-16 bits per word (Neil Horman) [1665660] - [drivers] spi: spi-gpio: Remove set but not used variable 'pdata' (Neil Horman) [1665660] - [drivers] spi: Do not print a message if spi_controller_{suspend,resume}() fails (Neil Horman) [1665660] - [drivers] spi: gpio: Fix copy-and-paste error (Neil Horman) [1665660] - [drivers] spi: dw-mmio: avoid hardcoded field mask (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add MSCC Jaguar2 support (Neil Horman) [1665660] - [include] spi: Introduce one new field to set word delay (Neil Horman) [1665660] - [drivers] spi: Fix double IDR allocation with DT aliases (Neil Horman) [1665660] - [drivers] spi: fix IDR collision on systems with both fixed and dynamic SPI bus numbers (Neil Horman) [1665660] - [drivers] spi: spi-gpio: add SPI_3WIRE support (Neil Horman) [1665660] - [drivers] spi: add flags parameter to txrx_word function pointers (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add MSCC Ocelot support (Neil Horman) [1665660] - [drivers] spi: dw: export dw_spi_set_cs (Neil Horman) [1665660] - [drivers] spi: dw: allow providing own set_cs callback (Neil Horman) [1665660] - [drivers] spi: dw: fix possible race condition (Neil Horman) [1665660] - [acpi] ACPI / APD: Add clock frequency for Hisilicon Hip08 SPI controller (Neil Horman) [1665660] - [md] md/raid: raid5 preserve the writeback action after the parity check (Nigel Croxon) [1702309] - [md] Revert "Don't jump to compute_result state from check_result state" (Nigel Croxon) [1702309] - [md] md: return -ENODEV if rdev has no mddev assigned (Nigel Croxon) [1702309] - [md] md: add __acquires/__releases annotations to handle_active_stripes (Nigel Croxon) [1702309] - [md] md: add __acquires/__releases annotations to (un)lock_two_stripes (Nigel Croxon) [1702309] - [md] md: mark md_cluster_mod static (Nigel Croxon) [1702309] - [md] md: use correct type in super_1_sync (Nigel Croxon) [1702309] - [md] md: use correct type in super_1_load (Nigel Croxon) [1702309] - [md] md: use correct types in md_bitmap_print_sb (Nigel Croxon) [1702309] - [md] md: add a missing endianness conversion in check_sb_changes (Nigel Croxon) [1702309] - [md] md: add mddev->pers to avoid potential NULL pointer dereference (Nigel Croxon) [1702309] - [md] md: batch flush requests. (Nigel Croxon) [1702309] - [md] Revert "MD: fix lock contention for flush bios" (Nigel Croxon) [1702309] - [md] Don't jump to compute_result state from check_result state (Nigel Croxon) [1702309] - [netdrv] bnxt_en: Reset device on RX buffer errors. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Improve RX consumer index validity check. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Drop oversize TX packets to prevent errors. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Wait longer for the firmware message response to complete. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix typo in firmware message timeout logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Return relevant error code when offload fails (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for mdio read/write to external PHY (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Propagate trusted VF attribute to firmware. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for BCM957504 (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.47. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable interrupts when allocating CP rings or NQs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix context memory allocation. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix ring checking logic on 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust default RX coalescing ticks to 10 us. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Support for 64-bit flow handle. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Increase context memory allocations on 57500 chips for RDMA. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add Level 2 context memory paging support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Enhance bnxt_alloc_ring()/bnxt_free_ring(). (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for 2nd firmware message channel. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Introduce bnxt_get_hwrm_resp_addr & bnxt_get_hwrm_seq_id routines. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Avoid arithmetic on void * pointer. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use macros for firmware message doorbell offsets. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Set hwrm_intr_seq_id value to its inverted value. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.33. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix ethtool self-test loopback. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: query force speeds before disabling autoneg mode. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not free port statistics buffer when device is down. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Save ring statistics before reset. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Return linux standard errors in bnxt_ethtool.c (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Don't set ETS on unused TCs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add ethtool -S priority counters. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add SR-IOV support for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable MSIX before re-reserving NQs/CMPL rings. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Reserve 1 stat_ctx for RDMA driver. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not modify max_stat_ctxs after RDMA driver requests/frees stat_ctxs (Selvin Xavier) [1664477] - [netdrv] bnxt_en: get rid of num_stat_ctxs variable (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add bnxt_get_avail_cp_rings_for_en() helper function. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Store the maximum NQs available on the PF. (Selvin Xavier) [1664477] - [netdrv] bnxt: remove printing of hwrm message (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix _bnxt_get_max_rings() for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix NQ/CP rings accounting on the new 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Keep track of reserved IRQs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix CNP CoS queue regression. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix filling time in bnxt_fill_coredump_record() (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add software "missed_irqs" counter. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Workaround occasional TX timeout on 57500 A0. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable RDMA support on the 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix RSS context allocation. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Copy and paste bug in extended tx_stats (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add PCI ID for BCM57508 device. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new NAPI poll function for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Refactor bnxt_poll_work(). (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add coalescing setup for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use bnxt_cp_ring_info struct pointer as parameter for RX path. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add RSS support for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Increase RSS context array count and skip ring groups on 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Allocate/Free CP rings for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Modify bnxt_ring_alloc_send_msg() to support 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add helper functions to get firmware CP ring ID. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Allocate completion ring structures for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Modify the ring reservation functions for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust MSIX and ring groups for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Re-structure doorbells. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add 57500 new chip ID and basic structures. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Configure context memory on new devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Check context memory requirements from firmware. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new flags to setup new page table PTE bits on newer devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Refactor bnxt_ring_struct. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update interrupt coalescing logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add maximum extended request length fw message support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add additional extended port statistics. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.3. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Remove unnecessary unsigned integer comparison and initialize variable (Selvin Xavier) [1664477] - [netdrv] bnxt_en: get the reduced max_irqs by the ones used by RDMA (Selvin Xavier) [1664477] - [netdrv] bnxt_en: free hwrm resources, if driver probe fails. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix enables field in HWRM_QUEUE_COS2BW_CFG request (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix VNIC reservations on the PF. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add a driver specific gre_ver_check devlink parameter. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use msix_vec_per_pf_max and msix_vec_per_pf_min devlink params. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: return proper error when FW returns HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use ignore_ari devlink parameter (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix TX timeout during netpoll. (Selvin Xavier) [1664477] - [netdrv] bnxt: remove ndo_poll_controller (Selvin Xavier) [1664477] - [netdrv] bnxt_en: don't try to offload VLAN 'modify' action (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove set but not used variable 'addr_type' (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove set but not used variable 'rx_stats' (Selvin Xavier) [1664477] - [netdrv] net: bnxt: Fix a uninitialized variable warning. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: take coredump_record structure off stack (Selvin Xavier) [1664477] - [netdrv] bnxt_en: avoid string overflow for record->system_name (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix strcpy() warnings in bnxt_ethtool.c (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not use the CNP CoS queue for networking traffic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add DCBNL DSCP application protocol support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add hwmon sysfs support to read temperature (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Notify firmware about IF state changes. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Move firmware related flags to a new fw_cap field in struct bnxt. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add BNXT_NEW_RM() macro. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for ethtool get dump. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update RSS setup and GRO-HW logic according to the latest spec. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new VF resource allocation strategy mode. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add PHY retry logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add external loopback test to ethtool selftest. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust timer based on ethtool stats-block-usecs settings. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface version to 1.9.2.25. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: combine 'else if' and 'else' into single branch (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove redundant debug register dma mem allocation (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add bnxt_en initial params table and register it. (Selvin Xavier) [1664477] - [netdrv] sfc: mcdi_port: Mark expected switch fall-through (Jarod Wilson) [1685478] - [netdrv] sfc: ensure recovery after allocation failures (Jarod Wilson) [1685478] - [netdrv] sfc: Replace dev_kfree_skb_any by dev_consume_skb_any (Jarod Wilson) [1685478] - [netdrv] sfc: add bundle partition definitions to mtd (Jarod Wilson) [1685478] - [netdrv] sfc: Replace spin_is_locked() with lockdep (Jarod Wilson) [1685478] - [netdrv] sfc: remove ndo_poll_controller (Jarod Wilson) [1685478] - [iommu] iommu/amd: Set exclusion range correctly (Jerry Snitselaar) [1702766] - [iommu] iommu/amd: Reserve exclusion range in iova-domain (Jerry Snitselaar) [1694835] - [scsi] scsi: mpt3sas: Fix kernel panic during expander reset (Tomas Henzl) [1677693] - [mm] mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y CONFIG_SMP=n (Waiman Long) [1705607] - [mm] x86/mm: Drop usage of __flush_tlb_all() in kernel_physical_mapping_init() (Waiman Long) [1705607] - [include] x86/mm: Validate kernel_physical_mapping_init() PTE population (Waiman Long) [1705607] - [include] generic/pgtable: Introduce set_pte_safe() (Waiman Long) [1705607] - [include] generic/pgtable: Introduce {p4d,pgd}_same() (Waiman Long) [1705607] - [include] generic/pgtable: Make {pmd, pud}_same() unconditionally available (Waiman Long) [1705607] - [mm] percpu: stop printing kernel addresses (Waiman Long) [1705607] - [x86] x86/speculation: Prevent deadlock on ssb_state::lock (Waiman Long) [1705607] - [fs] debugfs: fix use-after-free on symlink traversal (Waiman Long) [1705607] - [lib] debugobjects: avoid recursive calls with kmemleak (Waiman Long) [1705607] - [mm] mm/swapfile.c: use kvzalloc for swap_info_struct allocation (Waiman Long) [1705607] - [mm] hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444! (Waiman Long) [1705607] - [include] watchdog/core: Add missing prototypes for weak functions (Waiman Long) [1705607] - [mm] memory_hotplug: cond_resched in __remove_pages (Waiman Long) [1705607] - [kernel] genirq: Fix race on spurious interrupt detection (Waiman Long) [1705607] - [kernel] printk: Fix panic caused by passing log_buf_len to command line (Waiman Long) [1705607] - [mm] mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback (Waiman Long) [1705607] - [mm] mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly (Waiman Long) [1705607] - [mm] hugetlbfs: dirty pages as they are added to pagecache (Waiman Long) [1705607] - [fs] mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range() (Waiman Long) [1705607] - [kernel] sched/fair: Fix the min_vruntime update logic in dequeue_entity() (Waiman Long) [1705607] - [mm] x86/mm/pat: Disable preemption around __flush_tlb_all() (Waiman Long) [1705607] - [x86] x86/corruption-check: Fix panic in memory_corruption_check() when boot option without value is provided (Waiman Long) [1705607] - [x86] x86/time: Correct the attribute on jiffies' definition (Waiman Long) [1705607] - [x86] x86/percpu: Fix this_cpu_read() (Waiman Long) [1705607] - [x86] x86/tsc: Force inlining of cyc2ns bits (Waiman Long) [1705607] - [mm] mm/migrate.c: split only transparent huge pages when allocation fails (Waiman Long) [1705607] - [mm] mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2 (Waiman Long) [1705607] - [mm] mm/mmap.c: don't clobber partially overlapping VMA with MAP_FIXED_NOREPLACE (Waiman Long) [1705607] - [mm] percpu: stop leaking bitmap metadata blocks (Waiman Long) [1705607] - [lib] vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced pointers (Waiman Long) [1705607] - [mm] mm/vmstat.c: fix outdated vmstat_text (Waiman Long) [1705607] - [base] PM / core: Clear the direct_complete flag on errors (Waiman Long) [1705607] - [tools] x86/vdso: Fix vDSO syscall fallback asm constraint regression (Waiman Long) [1705607] - [x86] x86/vdso: Only enable vDSO retpolines when enabled and supported (Waiman Long) [1705607] - [tools] selftests/x86: Add clock_gettime() tests to test_vdso (Waiman Long) [1705607] - [x86] x86/vdso: Fix asm constraints on vDSO syscall fallbacks (Waiman Long) [1705607] - [drivers] clocksource/drivers/timer-atmel-pit: Properly handle error cases (Waiman Long) [1705607] - [mm] mm/vmstat.c: skip NR_TLB_REMOTE_FLUSH* properly (Waiman Long) [1705607] - [mm] mm, thp: fix mlocking THP page with migration enabled (Waiman Long) [1705607] - [mm] mm: migration: fix migration of huge PMD shared pages (Waiman Long) [1705607] - [net] net/smc: improve smc_conn_create reason codes (Philipp Rudo) [1703471] - [net] net/smc: improve smc_listen_work reason codes (Philipp Rudo) [1703471] - [net] net/smc: code cleanup smc_listen_work (Philipp Rudo) [1703471] - [net] net/smc: cleanup of get vlan id (Philipp Rudo) [1703471] - [net] net/smc: consolidate function parameters (Philipp Rudo) [1703471] - [net] net/smc: check for ip prefix and subnet (Philipp Rudo) [1703471] - [net] net/smc: fallback to TCP after connect problems (Philipp Rudo) [1703471] - [net] net/smc: nonblocking connect rework (Philipp Rudo) [1703471] - [net] net/smc: move unhash before release of clcsock (Philipp Rudo) [1703471] - [net] net/smc: fix return code from FLUSH command (Philipp Rudo) [1703471] - [net] net/smc: propagate file from SMC to TCP socket (Philipp Rudo) [1703471] - [net] net/smc: fix a NULL pointer dereference (Philipp Rudo) [1703471] - [net] net/smc: wait for pending work before clcsock release_sock (Philipp Rudo) [1703471] - [net] net/smc: allow pnetid-less configuration (Philipp Rudo) [1700797] - [net] net/smc: allow PCI IDs as ib device names in the pnet table (Philipp Rudo) [1700797] - [net] net/smc: add pnet table namespace support (Philipp Rudo) [1700797] - [net] net/smc: add smcd support to the pnet table (Philipp Rudo) [1700797] - [net] net/smc: rework pnet table (Philipp Rudo) [1700797] - [net] net/smc: cleanup for smcr_tx_sndbuf_nonempty (Philipp Rudo) [1700797]- [tools] tools power turbostat: Override CFLAGS assignments and add LDFLAGS to build command (Steve Best) [1705959] - [tools] tools/power turbostat: update version number (Steve Best) [1705959] - [tools] tools/power turbostat: Add checks for failure of fgets() and fscanf() (Steve Best) [1705959] - [tools] tools/power turbostat: Warn on bad ACPI LPIT data (Steve Best) [1705959] - [tools] tools/power turbostat: Also read package power on AMD F17h (Zen) (Steve Best) [1705959] - [tools] tools/power turbostat: Add support for AMD Fam 17h (Zen) RAPL (Steve Best) [1705959] - [tools] tools/power turbostat: Do not display an error on systems without a cpufreq driver (Steve Best) [1705959] - [tools] tools/power turbostat: Add Die column (Steve Best) [1705959] - [tools] tools/power turbostat: Cleanup CNL-specific code (Steve Best) [1705959] - [tools] tools/power turbostat: Cleanup CC3-skip code (Steve Best) [1705959] - [tools] tools/power turbostat: Restore ability to execute in topology-order (Steve Best) [1705959] - [tools] tools/power turbostat: fix goldmont C-state limit decoding (Steve Best) [1705959] - [tools] tools/power turbostat: reduce debug output (Steve Best) [1705959] - [tools] tools/power turbosat: fix AMD APIC-id output (Steve Best) [1705959] - [mmc] mmc: sdhci-iproc: Add ACPI support (Mark Langsdorf) [1576966] - [mmc] mmc: sdhci-pltfm: Convert DT properties to generic device properties (Mark Langsdorf) [1576966] - [tty] serial: 8250_dw: Add ACPI support for uart on Broadcom SoC (Mark Langsdorf) [1576966] - [watchdog] watchdog: sp805: Add clock-frequency property (Mark Langsdorf) [1576966] - [watchdog] watchdog: sp805: set WDOG_HW_RUNNING when appropriate (Mark Langsdorf) [1576966] - [thermal] thermal: broadcom: Add Stingray thermal driver (Mark Langsdorf) [1576966] - [hv] hv: vmbus: Change server monitor_pages index to 0 (Mohammed Gamal) [1691383] - [kernel] hv: vmbus: Expose counters for interrupts and full conditions (Mohammed Gamal) [1691383] - [kernel] vmbus: Switch to use new generic UUID API (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Check for ring when getting debug info (Mohammed Gamal) [1691383] - [x86] hyper-v: move synic/stimer control structures definitions to hyperv-tlfs.h (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Return -EINVAL for the sys files for unopened channels (Mohammed Gamal) [1691383] - [hv] x86, hyperv: remove PCI dependency (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Offload the handling of channels to two workqueues (Mohammed Gamal) [1691383] - [hv] hv: vmbus: check the creation_status in vmbus_establish_gpadl() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove the useless API vmbus_get_outgoing_channel() (Mohammed Gamal) [1691383] - [hv] hv: kvp: Use u to print U32 (Mohammed Gamal) [1691383] - [hv] hv_utils: update name in struct hv_driver util_drv (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Get rid of unnecessary state in hv_context (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix the recent regression caused by incorrect clean-up (Mohammed Gamal) [1691383] - [hv] hv_balloon: Replace spin_is_locked() with lockdep (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Use cpumask_var_t for on-stack cpu mask (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix two "this statement may fall through" warnings (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix the indentation of some "break" statements (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the descriptions of some function parameters (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Use get/put_cpu() in vmbus_connect() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix synic per-cpu context initialization (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Cleanup synic memory free path (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove use of slow_virt_to_phys() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: add numa_node to sysfs (Mohammed Gamal) [1691383] - [x86] hv: vmbus: Get rid of MSR access from vmbus_drv.c (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the issue with freeing up hv_ctl_table_hdr (Mohammed Gamal) [1691383] - [hv] hv: vmus: Fix the check for return value from kmsg get dump buffer (Mohammed Gamal) [1691383] - [hv] hv: Send one page worth of kmsg dump over Hyper-V during panic (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove x86 MSR refs in arch independent code (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the offer_in_progress in vmbus_process_offer() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Add comments on ring buffer signaling (Mohammed Gamal) [1691383] - [video] use the new async probing feature for the hyperv drivers (Mohammed Gamal) [1691383] - [rpmspec] kernel-packaging: Remove kernel files from kernel-modules-extra package (Prarit Bhargava) [1705216] - [fs] xfs: don't ever put nlink > 0 inodes on the unlinked list (Brian Foster) [1693063] - [fs] xfs: reserve blocks for ifree transaction during log recovery (Brian Foster) [1693063] - [fs] xfs: rename m_inotbt_nores to m_finobt_nores (Brian Foster) [1693063] - [net] xfrm: Honor original L3 slave device in xfrmi policy lookup (Herbert Xu) [1702198] - [net] xfrm: Fix inbound traffic via XFRM interfaces across network namespaces (Herbert Xu) [1702198] - [net] xfrm: Make set-mark default behavior backward compatible (Herbert Xu) [1702198] - [net] xfrm: remove unnecessary check in xfrmi_get_stats64 (Herbert Xu) [1702198] - [net] xfrm: fix gro_cells leak when remove virtual xfrm interfaces (Herbert Xu) [1702198] - [net] xfrm: Make function xfrmi_get_link_net() static (Herbert Xu) [1702198] - [net] xfrm: fix ptr_ret.cocci warnings (Herbert Xu) [1702198] - [net] xfrm: Return detailed errors from xfrmi_newlink (Herbert Xu) [1702198] - [net] xfrm: Allow xfrmi if_id to be updated by UPDSA (Herbert Xu) [1702198] - [net] xfrm: Remove xfrmi interface ID from flowi (Herbert Xu) [1702198] - [net] xfrm: Allow Set Mark to be Updated Using UPDSA (Herbert Xu) [1702198] - [net] xfrm: Add virtual xfrm interfaces (Herbert Xu) [1702198] - [net] xfrm: Add a new lookup key to match xfrm interfaces. (Herbert Xu) [1702198] - [net] flow: Extend flow informations with xfrm interface id. (Herbert Xu) [1702198] - [net] xfrm: Extend the output_mark to support input direction and masking. (Herbert Xu) [1702198] - [fs] xfs: don't account extra agfl blocks as available (Brian Foster) [1656687] - [scsi] scsi: hisi_sas: Some misc tidy-up (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Don't hard reset disk during controller reset (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Support all RAS events with MSI interrupts (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: allocate different SAS address for directly attached situation (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Adjust the printk format of functions hisi_sas_init_device() (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Remedy inconsistent PHY down state in software (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: add host reset interface for test (Xiaojun Tan) [1702614] - [hid] HID: Increase maximum report size allowed by hid_field_extract() (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: remove data[128] usage on stack when sending HBM request (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: move doorbell writing before flush (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Optimize writing ipc message from queue (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: avoid binding wrong ishtp_cl_device (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Enable Ice Lake mobile (Tony Camuso) [1688112] - [hid] HID: increase maximum global item tag report size to 256 (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Enable Sunrise Point-H ish driver (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: remove redundant variable num_frags (Tony Camuso) [1688112]- [s390] Disable kexec_load via kernel_lockdown for s390 (Philipp Rudo) [1659399] - [s390] s390/ipl: Provide has_secure sysfs attribute (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Create ipl report and pass to next kernel (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Signature verification prototype (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Load new kernel to absolute 0 (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Unify loader code (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Simplify parmarea access (Philipp Rudo) [1659399] - [s390] s390/purgatory: Omit use of bin2c (Philipp Rudo) [1659399] - [s390] s390/purgatory: Reduce purgatory size (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Fix detection of text segment in ELF loader (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Fix potential segment overlap in ELF loader (Philipp Rudo) [1659399] - [s390] s390/zcore: Rename ipl_block to mitigate name collision (Philipp Rudo) [1659399] - [s390] s390/boot: pad bzImage to 4K (Philipp Rudo) [1659399] - [s390] s390/ipl: add helper functions to create an IPL report (Philipp Rudo) [1659399] - [s390] s390/ipl: read IPL report at early boot (Philipp Rudo) [1659399] - [s390] s390/ipl: add definitions for the IPL report block (Philipp Rudo) [1659399] - [s390] s390/ipl: provide uapi header for list directed IPL (Philipp Rudo) [1659399] - [s390] s390/ipl: make ipl_info less confusing (Philipp Rudo) [1659399] - [s390] s390: introduce .boot.preserved.data section compile time validation (Philipp Rudo) [1659399] - [s390] s390: move ipl block to .boot.preserved.data section (Philipp Rudo) [1659399] - [s390] s390: introduce .boot.preserved.data section (Philipp Rudo) [1659399] - [mm] s390: clean up redundant facilities list setup (Philipp Rudo) [1659399] - [s390] s390/als: remove duplicated in-place implementation of stfle (Philipp Rudo) [1659399] - [netdrv] fm10k: Fix a potential NULL pointer dereference (Neil Horman) [1659172] - [netdrv] fm10k: use struct_size() in kzalloc() (Neil Horman) [1659172] - [netdrv] fm10k: TRIVIAL cleanup of extra spacing in function comment (Neil Horman) [1659172] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Neil Horman) [1659172] - [netdrv] fm10k: bump driver version to match out-of-tree release (Neil Horman) [1659172] - [netdrv] fm10k: add missing device IDs to the upstream driver (Neil Horman) [1659172] - [netdrv] fm10k: ensure completer aborts are marked as non-fatal after a resume (Neil Horman) [1659172] - [netdrv] fm10k: fix SM mailbox full condition (Neil Horman) [1659172] - [netdrv] fm10k: remove ndo_poll_controller (Neil Horman) [1659172] - [netdrv] intel-ethernet: use correct module license (Neil Horman) [1659172] - [scsi] Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO" (Nilesh Javali) [1701545] - [tools] tools: introduce test_and_clear_bit (Peter Xu) [1694926] - [net] bridge: fix netlink export of vlan_stats_per_port option (Ivan Vecera) [1703551] - [net] bridge: fix vlan stats use-after-free on destruction (Ivan Vecera) [1703551] - [tools] headers uapi: Update linux/if_link.h header copy (Ivan Vecera) [1703551] - [net] bridge: fix a possible memory leak in __vlan_add (Ivan Vecera) [1703551] - [net] bridge: add support for per-port vlan stats (Ivan Vecera) [1703551] - [net] bridge: mcast: Default back to multicast enabled state (Ivan Vecera) [1703551] - [net] bridge: pack net_bridge better (Ivan Vecera) [1703551] - [net] bridge: convert mtu_set_by_user to a bit (Ivan Vecera) [1703551] - [net] bridge: convert neigh_suppress_enabled option to a bit (Ivan Vecera) [1703551] - [net] bridge: convert mcast options to bits (Ivan Vecera) [1703551] - [net] bridge: convert and rename mcast disabled (Ivan Vecera) [1703551] - [net] bridge: convert group_addr_set option to a bit (Ivan Vecera) [1703551] - [net] bridge: convert nf call options to bits (Ivan Vecera) [1703551] - [net] bridge: add bitfield for options and convert vlan opts (Ivan Vecera) [1703551] - [net] bridge: make struct opening bracket consistent (Ivan Vecera) [1703551] - [net] Add netif_is_gretap()/netif_is_ip6gretap() (Ivan Vecera) [1701208] - [net] sched: register callbacks for indirect tc block binds (Ivan Vecera) [1701214] - [tools] selftests: tc-testing: fix tunnel_key failure if dst_port is unspecified (Ivan Vecera) [1701210] - [tools] selftests: tc-testing: drop test on missing tunnel key id (Ivan Vecera) [1701210] - [net] sched: act_tunnel_key: Don't dump dst port if it wasn't set (Ivan Vecera) [1701210] - [net] sched: act_tunnel_key: Allow key-less tunnels (Ivan Vecera) [1701210] - [net] ethtool: Added support for 50Gbps per lane link modes (Ivan Vecera) [1701215] - [net] ip_gre: fix parsing gre header in ipgre_err (Hangbin Liu) [1702212] - [net] vxlan: Free a leaked vetoed multicast rdst (Ivan Vecera) [1691695] - [net] switchdev: Add extack argument to call_switchdev_notifiers() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add extack to switchdev operations (Ivan Vecera) [1691695] - [net] net: Add extack argument to ndo_fdb_add() (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Delete remote after update (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Postpone vxlan_config_apply() (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Inline vxlan_dev_configure() (Ivan Vecera) [1691695] - [netdrv] vxlan: Allow vetoing of FDB notifications (Ivan Vecera) [1691695] - [netdrv] vxlan: Have vxlan_fdb_replace() save original rdst value (Ivan Vecera) [1691695] - [netdrv] vxlan: Split vxlan_fdb_update() in two (Ivan Vecera) [1691695] - [netdrv] vxlan: Move up vxlan_fdb_free(), vxlan_fdb_destroy() (Ivan Vecera) [1691695] - [net] bridge: Add br_fdb_clear_offload() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add vxlan_fdb_clear_offload() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add vxlan_fdb_replay() (Ivan Vecera) [1691695] - [net] route: add support for directed broadcast forwarding (Xin Long) [1562384] - [net] erspan: build the header with the right proto according to erspan_ver (Xin Long) [1663862] - [net] ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL (Xin Long) [1688617] - [net] tipc: handle the err returned from cmd header function (Jon Maloy) [1693452] - [net] tipc: check link name with right length in tipc_nl_compat_link_set (Jon Maloy) [1693452] - [net] tipc: check bearer name with right length in tipc_nl_compat_bearer_enable (Jon Maloy) [1693452] - [net] tipc: change to check tipc_own_id to return in tipc_net_stop (Jon Maloy) [1693452] - [net] tipc: tipc clang warning (Jon Maloy) [1693452] - [net] tipc: fix cancellation of topology subscriptions (Jon Maloy) [1693452] - [net] tipc: allow service ranges to be connect()'ed on RDM/DGRAM (Jon Maloy) [1693452] - [net] net: tipc: fix a missing check for nla_nest_start (Jon Maloy) [1693452] - [net] net: tipc: fix a missing check of nla_nest_start (Jon Maloy) [1693452] - [net] tipc: fix RDM/DGRAM connect() regression (Jon Maloy) [1693452] - [net] tipc: fix race condition causing hung sendto (Jon Maloy) [1693452] - [net] tipc: improve function tipc_wait_for_rcvmsg() (Jon Maloy) [1693452] - [net] tipc: improve function tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: fix link session and re-establish issues (Jon Maloy) [1693452] - [net] tipc: fix skb may be leaky in tipc_link_input (Jon Maloy) [1693452] - [net] tipc: remove dead code in struct tipc_topsrv (Jon Maloy) [1693452] - [net] tipc: mark expected switch fall-throughs (Jon Maloy) [1693452] - [net] tipc: remove unneeded semicolon in trace.c (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_doit (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_name_table_dump (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_link_set (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_bearer_enable (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_link_reset_stats (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in in tipc_conn_rcv_sub (Jon Maloy) [1693452] - [net] tipc: fix memory leak in tipc_nl_compat_publ_dump (Jon Maloy) [1693452] - [net] tipc: fix a missing check of genlmsg_put (Jon Maloy) [1693452] - [net] tipc: fix a double free in tipc_enable_bearer() (Jon Maloy) [1693452] - [net] net/netlink_compat: Fix a missing check of nla_parse_nested (Jon Maloy) [1693452] - [net] tipc: fix uninitialized value for broadcast retransmission (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc bearer (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc node (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc socket (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc link (Jon Maloy) [1693452] - [net] tipc: enable tracepoints in tipc (Jon Maloy) [1693452] - [net] tipc: handle broadcast NAME_DISTRIBUTOR packet when receiving it (Jon Maloy) [1693452] - [net] tipc: check group dests after tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: check tsk->group in tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: compare remote and local protocols in tipc_udp_enable() (Jon Maloy) [1693452] - [net] tipc: use lock_sock() in tipc_sk_reinit() (Jon Maloy) [1693452] - [net] tipc: fix node keep alive interval calculation (Jon Maloy) [1693452] - [net] tipc: fix lockdep warning during node delete (Jon Maloy) [1693452] - [net] tipc: don't assume linear buffer when reading ancillary data (Jon Maloy) [1693452] - [net] tipc: fix lockdep warning when reinitilaizing sockets (Jon Maloy) [1693452] - [net] tipc: fix link re-establish failure (Jon Maloy) [1693452] - [net] tipc: improve broadcast retransmission algorithm (Jon Maloy) [1693452] - [net] tipc: use destination length for copy string (Jon Maloy) [1693452] - [net] tipc: support binding to specific ip address when activating UDP bearer (Jon Maloy) [1677371 1693452] - [net] tipc: remainder of commit ignore STATE_MSG on wrong link session (Jon Maloy) [1693452] - [net] tipc: buffer overflow handling in listener socket (Jon Maloy) [1693452] - [net] tipc: add SYN bit to connection setup messages (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_sk_filter_connect() (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_sk_timeout() (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_msg_reverse() (Jon Maloy) [1693452] - [net] tipc: Add and use skb_mark_not_on_list(). (Jon Maloy) [1693452] - [net] tipc: correct spelling errors for tipc_topsrv_queue_evt() comments (Jon Maloy) [1693452] - [net] tipc: correct spelling errors for struct tipc_bc_base's comment (Jon Maloy) [1693452] - [net] tipc: correct structure parameter comments for topsrv (Jon Maloy) [1693452] - [net] net/tipc: remove redundant variables 'tn' and 'oport' (Jon Maloy) [1693452] - [net] net: tipc: bcast: Replace GFP_ATOMIC with GFP_KERNEL in tipc_bcast_init() (Jon Maloy) [1693452] - [net] net: tipc: name_table: Replace GFP_ATOMIC with GFP_KERNEL in tipc_nametbl_init() (Jon Maloy) [1693452] - [net] tipc: make some functions static (Jon Maloy) [1693452] - [net] tipc: make link capability update thread safe (Jon Maloy) [1693452] - [net] tipc: remove unused tipc_group_size (Jon Maloy) [1693452] - [net] tipc: remove unused tipc_link_is_active (Jon Maloy) [1693452] - [net] tipc: check session number before accepting link protocol messages (Jon Maloy) [1693452] - [net] tipc: add sequence number check for link STATE messages (Jon Maloy) [1693452] - [net] tipc: mark expected switch fall-throughs (Jon Maloy) [1693452] - [net] tipc: extend sock diag for group communication (Jon Maloy) [1693452] - [net] tipc: Auto removal of peer down node instance (Jon Maloy) [1693452] - [net] tipc: optimize function tipc_node_timeout() (Jon Maloy) [1693452] - [net] tipc: eliminate buffer cloning in function tipc_msg_extract() (Jon Maloy) [1693452] - [net] netfilter: nf_conncount: fix argument order to find_next_bit (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: speculative garbage collection on empty lists (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: move all list iterations under spinlock (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: merge lookup and add functions (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: restart search when nodes have been erased (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: split gc in two phases (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: don't skip eviction when age is negative (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: replace CONNCOUNT_LOCK_SLOTS with CONNCOUNT_SLOTS (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: use rb_link_node_rcu() instead of rb_link_node() (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: remove wrong condition check routine (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: fix unexpected permanent node of list. (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: fix list_del corruption in conn_free (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: use spin_lock_bh instead of spin_lock (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Add list lock and gc worker, and RCU for init tree search (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Split insert and traversal (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Move locking into count_tree() (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Early exit in nf_conncount_lookup() and cleanup (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Switch to plain list (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Early exit for garbage collection (Florian Westphal) [1531074] - [net] ptp: uapi: change _IOW to IOWR in PTP_SYS_OFFSET_EXTENDED definition (Hangbin Liu) [1677215] - [net] ptp: check that rsv field is zero in struct ptp_sys_offset_extended (Hangbin Liu) [1677215] - [net] ptp: deprecate gettime64() in favor of gettimex64() (Hangbin Liu) [1677215] - [net] ptp: add PTP_SYS_OFFSET_EXTENDED ioctl (Hangbin Liu) [1677215] - [net] ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl (Hangbin Liu) [1677215] - [net] ptp: reorder declarations in ptp_ioctl() (Hangbin Liu) [1677215] - [net] tuntap: fix multiqueue rx (Guillaume Nault) [1686563]- [edac] EDAC/amd64: Add Family 17h Model 30h PCI IDs (Aristeu Rozanski) [1696603] - [x86] Update stepping values for coffee lake desktop (David Arcari) [1704800] - [security] KEYS: trusted: allow trusted.ko to initialize w/o a TPM (Jerry Snitselaar) [1694208] - [security] tpm: pass an array of tpm_extend_digest structures to tpm_pcr_extend() (Jerry Snitselaar) [1665130 1665129] - [security] KEYS: trusted: explicitly use tpm_chip structure from tpm_default_chip() (Jerry Snitselaar) [1665130 1665129] - [char] tpm/ppi: Enable submission of optional command parameter for PPI 1.3 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: Possibly show command parameter if TPM PPI 1.3 is used (Jerry Snitselaar) [1665130] - [char] tpm/ppi: Display up to 101 operations as define for version 1.3 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: rename TPM_PPI_REVISION_ID to TPM_PPI_REVISION_ID_1 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: pass function revision ID to tpm_eval_dsm() (Jerry Snitselaar) [1665130] - [char] tpm: Fix the type of the return value in calc_tpm2_event_size() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: fix an invalid condition in tpm_common_poll (Jerry Snitselaar) [1694208] - [char] tpm: turn on TPM on suspend for TPM 1.x (Jerry Snitselaar) [1694208 1665130] - [char] tpm: move tpm_chip definition to include/linux/tpm.h (Jerry Snitselaar) [1665129] - [char] tpm: retrieve digest size of unknown algorithms with PCR read (Jerry Snitselaar) [1665130 1665129] - [char] tpm: rename and export tpm2_digest and tpm2_algorithms (Jerry Snitselaar) [1665130 1665129] - [char] tpm: dynamically allocate the allocated_banks array (Jerry Snitselaar) [1665130 1665129] - [char] tpm: remove @flags from tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: take TPM chip power gating out of tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: introduce tpm_chip_start() and tpm_chip_stop() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: remove TPM_TRANSMIT_UNLOCKED flag (Jerry Snitselaar) [1665130 1665129] - [char] tpm: use tpm_try_get_ops() in tpm-sysfs.c. (Jerry Snitselaar) [1665130] - [char] tpm: remove @space from tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: move TPM space code out of tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: move tpm_validate_commmand() to tpm2-space.c (Jerry Snitselaar) [1665130 1665129] - [char] tpm: clean up tpm_try_transmit() error handling flow (Jerry Snitselaar) [1665130 1665129] - [char] tpm: encapsulate tpm_dev_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: access command header through struct in tpm_try_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: declare struct tpm_header (Jerry Snitselaar) [1665130 1665129] - [char] tpm: print tpm2_commit_space() error inside tpm2_commit_space() (Jerry Snitselaar) [1665129] - [char] tpm: return 0 from pcrs_show() when tpm1_pcr_read() fails (Jerry Snitselaar) [1665130] - [char] tpm: fix invalid return value in pubek_show() (Jerry Snitselaar) [1694208 1665130] - [char] tpm: use tpm_buf in tpm_transmit_cmd() as the IO parameter (Jerry Snitselaar) [1665130 1665129] - [char] tpm: don't return bool from update_timeouts (Jerry Snitselaar) [1665130] - [char] tpm: don't print error message in tpm_transmit_cmd when tpm still testing (Jerry Snitselaar) [1665129] - [char] tpm: add _head suffix to tcg_efi_specid_event and tcg_pcr_event2 (Jerry Snitselaar) [1665129] - [char] tpm: Fix off-by-one when reading binary_bios_measurements (Jerry Snitselaar) [1694208 1665130] - [char] tpm: Simplify the measurements loop (Jerry Snitselaar) [1665130] - [char] tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete (Jerry Snitselaar) [1694208] - [char] tpm: Unify the send callback behaviour (Jerry Snitselaar) [1665129] - [char] tpm: Fix some name collisions with drivers/char/tpm.h (Jerry Snitselaar) [1694208] - [char] tpm/tpm_crb: Avoid unaligned reads in crb_recv() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: add support for partial reads (Jerry Snitselaar) [1665129] - [char] tpm: tpm_ibmvtpm: fix kdoc warnings (Jerry Snitselaar) [1665129] - [char] tpm: fix kdoc for tpm2_flush_context_cmd() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: tpm_try_transmit() refactor error flow. (Jerry Snitselaar) [1694208 1665129] - [char] tpm: use u32 instead of int for PCR index (Jerry Snitselaar) [1665130 1665129] - [security] ima: Get rid of ima_used_chip and use ima_tpm_chip != NULL instead (Jerry Snitselaar) [1665130 1665129] - [security] ima: Use tpm_default_chip() and call TPM functions with a tpm_chip (Jerry Snitselaar) [1665129] - [char] tpm1: reimplement tpm1_continue_selftest() using tpm_buf (Jerry Snitselaar) [1665130] - [char] tpm1: reimplement SAVESTATE using tpm_buf (Jerry Snitselaar) [1665130] - [char] tpm1: rename tpm1_pcr_read_dev to tpm1_pcr_read() (Jerry Snitselaar) [1665130] - [char] tpm1: implement tpm1_pcr_read_dev() using tpm_buf structure (Jerry Snitselaar) [1665130] - [char] tpm: tpm1: rewrite tpm1_get_random() using tpm_buf structure (Jerry Snitselaar) [1665130] - [char] tpm: tpm-space.c remove unneeded semicolon (Jerry Snitselaar) [1665129] - [char] tpm: tpm-interface.c drop unused macros (Jerry Snitselaar) [1694208 1665130] - [char] tpm: add tpm_auto_startup() into tpm-interface.c (Jerry Snitselaar) [1665129] - [char] tpm: factor out tpm_startup function (Jerry Snitselaar) [1665130 1665129] - [char] tpm: factor out tpm 1.x pm suspend flow into tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm 1.x selftest code from tpm-interface.c tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: factor out tpm1_get_random into tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm_getcap to tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm1_pcr_extend to tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: factor out tpm_get_timeouts() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: add tpm_calc_ordinal_duration() wrapper (Jerry Snitselaar) [1665130 1665129] - [char] tpm: factor out tpm 1.x duration calculation to tpm1-cmd.c (Jerry Snitselaar) [1665130 1665129] - [char] tpm: sort objects in the Makefile (Jerry Snitselaar) [1665129] - [char] tpm2: add new tpm2 commands according to TCG 1.36 (Jerry Snitselaar) [1665129] - [char] tpm: tpm_i2c_nuvoton: use correct command duration for TPM 2.x (Jerry Snitselaar) [1665129] - [char] tpm: add support for nonblocking operation (Jerry Snitselaar) [1665129] - [char] tpm: add ptr to the tpm_space struct to file_priv (Jerry Snitselaar) [1665129] - [char] tpm: Make SECURITYFS a weak dependency (Jerry Snitselaar) [1665129] - [char] tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/deactivated (Jerry Snitselaar) [1665130] - [char] tpm: fix response size validation in tpm_get_random() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: replace TPM_TRANSMIT_RAW with TPM_TRANSMIT_NESTED (Jerry Snitselaar) [1665129] - [char] tpm: Convert tpm_find_get_ops() to use tpm_default_chip() (Jerry Snitselaar) [1665129] - [char] tpm: Implement tpm_default_chip() to find a TPM chip (Jerry Snitselaar) [1665129] - [char] tpm: rename tpm_chip_find_get() to tpm_find_get_ops() (Jerry Snitselaar) [1665129] - [char] tpm: Allow tpm_tis drivers to set hwrng quality. (Jerry Snitselaar) [1665129] - [char] tpm: Return the actual size when receiving an unsupported command (Jerry Snitselaar) [1694208 1665129] - [char] tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (Jerry Snitselaar) [1665129] - [char] tpm_tis_spi: Pass the SPI IRQ down to the driver (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_get_random() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_get_tpm_pt() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_probe() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_shutdown() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [pci] PCI: Fix __initdata issue with "pci=disable_acs_redir" parameter (Myron Stowe) [1704979] - [s390] s390/pci: skip VF scanning (Myron Stowe) [1704979] - [pci] PCI/IOV: Add flag so platforms can skip VF scanning (Myron Stowe) [1704979] - [pci] PCI/IOV: Factor out sriov_add_vfs() (Myron Stowe) [1704979] - [pci] switchtec: Add MRPC DMA mode support (Myron Stowe) [1704979] - [pci] switchtec: Improve MRPC efficiency by enabling write combining (Myron Stowe) [1704979] - [pci] switchtec: Fix SWITCHTEC_IOCTL_EVENT_IDX_ALL flags overwrite (Myron Stowe) [1704979] - [pci] switchtec: Set DMA coherent mask (Myron Stowe) [1704979] - [pci] switchtec: Remove immediate status check after submitting MRPC command (Myron Stowe) [1704979] - [pci] PCI / PM: Allow runtime PM without callback functions (Myron Stowe) [1704979] - [pci] PCI/P2PDMA: Clean up documentation and kernel-doc (Myron Stowe) [1704979] - [pci] PCI: Remove unnecessary space before function pointer arguments (Myron Stowe) [1704979] - [maintainers] MAINTAINERS: Add x86 early-quirks.c file pattern to PCI subsystem (Myron Stowe) [1704979] - [pci] PCI: Expand the "PF" acronym in Kconfig help text (Myron Stowe) [1704979] - [x86] x86/PCI: Fix Broadcom CNB20LE unintended sign extension (redux) (Myron Stowe) [1704979] - [pci] PCI/ASPM: Remove unused lists from struct pcie_link_state (Myron Stowe) [1704979] - [pci] PCI / ACPI: Identify untrusted PCI devices (Myron Stowe) [1704979]- [documentation] x86/resctrl: Update Documentation/x86/resctrl_ui.txt (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Remove unnecessary check for cbm_validate() (Prarit Bhargava) [1504489] - [maintainers] MAINTAINERS: Update resctrl filename patterns (Prarit Bhargava) [1504489] - [documentation] Documentation: Rename and update intel_rdt_ui.txt to resctrl_ui.txt (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Introduce AMD QOS feature (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Fixup the user-visible strings (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Add AMD's X86_FEATURE_MBA to the scattered CPUID features (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename the config option INTEL_RDT to RESCTRL (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Add vendor check for the MBA software controller (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Bring cbm_validate() into the resource structure (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Initialize the vendor-specific resource functions (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Move all the macros to resctrl/internal.h (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Re-arrange the RDT init code (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename the RDT functions and definitions (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename and move rdt files to a separate directory (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Prevent pseudo-locking from using stale pointers (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix initial allocation to consider CDP (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: CBM overlap should also check for overlap with CDP peer (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce utility to obtain CDP peer (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix out-of-bounds memory access in CBM tests (Prarit Bhargava) [1504489] - [x86] perf/x86: Add helper to obtain performance counter index (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Switch to bitmap_zalloc() (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Re-enable pseudo-lock measurements (Prarit Bhargava) [1504489] - [x86] x86/cpu: Sanitize FAM6_ATOM naming (David Arcari) [1504489] - [x86] x86/intel_rdt: Use perf infrastructure for measurements (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create required perf event attributes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Remove local register variables (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix incorrect loop end condition (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix exclusive mode handling of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix incorrect loop end condition (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Do not allow pseudo-locking of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix unchecked MSR access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix invalid mode warning when multiple resources are managed (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Global closid helper to support future fixes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix size reporting of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix data type in parsing callbacks (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Disable PMU access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix possible circular lock dependency (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Make CPU information accessible for pseudo-locked regions (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support restoration of subset of permissions (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix cleanup of plr structure on error (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Move pseudo_lock_region_clear() (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Limit C-states dynamically when pseudo-locking active (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support L3 cache performance event of Broadwell (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: More precise L2 hit/miss measurements (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create character device exposing pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create debugfs files for pseudo-locking testing (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create resctrl debug area (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Ensure RDT cleanup on exit (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Resctrl files reflect pseudo-locked information (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support creation/removal of pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Pseudo-lock region creation/removal core (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Discover supported platforms via prefetch disable bits (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utilities to test pseudo-locked region possibility (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Split resource group removal in two (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Enable entering of pseudo-locksetup mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support enter/exit of locksetup mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add check to determine if monitoring in progress (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Utilities to restrict/restore access to specific files (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Protect against resource group changes during locking (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utility to restrict/restore access to resctrl files (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utility to test if tasks assigned to resource group (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Respect read and write access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce the Cache Pseudo-Locking modes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Display resource groups' allocations' size in bytes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce "bit_usage" to display cache allocations details (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Ensure requested schemata respects mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support flexible data to parsing callbacks (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Making CBM name and type more explicit (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Enable setting of exclusive mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce new "exclusive" mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Initialize new resource group with sane defaults (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Make useful functions available internally (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce test to determine if closid is in use (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce resource group's mode resctrl file (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Associate mode with each RDT resource group (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce RDT resource group mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Provide pseudo-locking hooks within rdt_mount (Prarit Bhargava) [1504489] - [x86] perf/x86: Make perf callchains work without CONFIG_FRAME_POINTER (Jiri Olsa) [1699780]- [kernel] sched/fair: Do not re-read ->h_load_next during hierarchical load calculation (Phil Auld) [1701762] - [s390] kvm: s390: enable MSA9 keywrapping functions depending on cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: add deflate conversion facilty to cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: add enhanced sort facilty to cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: provide query function for instructions returning 32 byte (Thomas Huth) [1660913] - [s390] kvm: s390: add MSA9 to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add vector BCD enhancements facility to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add vector enhancements facility 2 to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add debug logging for cpu model subfunctions (Thomas Huth) [1660913] - [s390] kvm: s390: implement subfunction processor calls (Thomas Huth) [1660913] - [powercap] powercap: intel_rapl: add support for Jacobsville (Steve Best) [1482401] - [x86] x86/cpu: Add Atom Tremont (Jacobsville) (Steve Best) [1482401]- [crypto] crypto: qat - Remove unused goto label (Neil Horman) [1660313] - [crypto] crypto: prefix header search paths with $(srctree)/ (Neil Horman) [1660313] - [crypto] crypto: qat - no need to check return value of debugfs_create functions (Neil Horman) [1660313] - [crypto] cross-tree: phase out dma_zalloc_coherent() (Neil Horman) [1660313] - [crypto] crypto: qat - move temp buffers off the stack (Neil Horman) [1660313] - [crypto] crypto: qat - Remove VLA usage (Neil Horman) [1660313] - [include] block: kill all_q_node in request_queue (Ming Lei) [1702865] - [block] bfq: update internal depth state when queue depth changes (Ming Lei) [1702865] - [fs] block: fix the return errno for direct IO (Ming Lei) [1702865] - [block] block: do not leak memory in bio_copy_user_iov() (Ming Lei) [1702865] - [nvme] nvme: cancel request synchronously (Ming Lei) [1702865] - [block] blk-mq: introduce blk_mq_complete_request_sync() (Ming Lei) [1702865] - [scsi] scsi: virtio_scsi: limit number of hw queues by nr_cpu_ids (Ming Lei) [1702865] - [block] virtio-blk: limit number of hw queues by nr_cpu_ids (Ming Lei) [1702865] - [block] block, bfq: fix use after free in bfq_bfqq_expire (Ming Lei) [1702865] - [block] paride/pcd: Fix potential NULL pointer dereference and mem leak (Ming Lei) [1702865] - [block] blk-mq: do not reset plug->rq_count before the list is sorted (Ming Lei) [1702865] - [block] paride/pf: Fix potential NULL pointer dereference (Ming Lei) [1702865] - [block] blk-mq: add trace block plug and unplug for multiple queues (Ming Lei) [1702865] - [block] block: use blk_free_flush_queue() to free hctx->fq in blk_mq_init_hctx (Ming Lei) [1702865] - [block] paride/pcd: cleanup queues when detection fails (Ming Lei) [1702865] - [block] paride/pf: cleanup queues when detection fails (Ming Lei) [1702865] - [crypto] crypto: chelsio - Fixed Traffic Stall (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Fix passing zero to 'PTR_ERR' warning in chcr_aead_op (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Inline single pdu only (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - avoid using sa_entry imm (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - remove set but not used variables 'adap' (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - check set_msg_len overflow in generate_b0 (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Fix wrong error counter increments (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Reset counters on cxgb4 Detach (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Handle PCI shutdown event (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - cleanup:send addr as value in function argument (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Use same value for both channel in single WR (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Swap location of AAD and IV sent in WR (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - remove set but not used variable 'kctx_len' (Arjun Vynipadath) [1664679] - [crypto] drivers: chelsio: use skb_sec_path helper (Arjun Vynipadath) [1664679] - [crypto] crypto: chcr - ESN for Inline IPSec Tx (Arjun Vynipadath) [1664679] - [crypto] crypto: chcr - small packet Tx stalls the queue (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - clean up various indentation issues (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Update ntx queue received from cxgb4 (Arjun Vynipadath) [1664679]- [platform] platform/x86: intel_pmc_core: Convert to INTEL_CPU_FAM6 macro (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Avoid a u32 overflow (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Include Reserved IP for LTR (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix file permissions for ltr_show (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix PCH IP name (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix PCH IP sts reading (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Handle CFL regmap properly (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: convert to DEFINE_SHOW_ATTRIBUTE (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Decode Snoop / Non Snoop LTR (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix LTR IGNORE Max offset (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Show Latency Tolerance info (David Arcari) [1658080] - [platform] platform/x86: intel_pmc: Convert to use SPDX identifier (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Add CNP SLPS0 debug registers (David Arcari) [1658080] - [x86] x86/cpu: Introduce INTEL_CPU_FAM*() helper macros (David Arcari) [1658080] - [include] locking/atomics, asm-generic: Move some macros from to a new file (David Arcari) [1658080] - [s390] s390/kasan: fix strncpy_from_user kasan checks (Philipp Rudo) [1665182] - [s390] s390: correct some inline assembly constraints (Philipp Rudo) [1665182] - [s390] s390/kasan: improve string/memory functions checks (Philipp Rudo) [1665182] - [include] compiler: remove __no_sanitize_address_or_inline again (Philipp Rudo) [1665182] - [s390] s390/kasan: increase instrumented stack size to 64k (Philipp Rudo) [1665182] - [mm] s390/kasan: support preemptible kernel build (Philipp Rudo) [1665182] - [mm] s390/kasan: add support for mem= kernel parameter (Philipp Rudo) [1665182] - [mm] s390/kasan: optimize kasan vmemmap allocation (Philipp Rudo) [1665182] - [mm] s390/kasan: avoid kasan crash with standby memory defined (Philipp Rudo) [1665182] - [s390] s390/head: avoid doubling early boot stack size under KASAN (Philipp Rudo) [1665182] - [mm] s390/mm: improve debugfs ptdump markers walking (Philipp Rudo) [1665182] - [mm] s390/mm: optimize debugfs ptdump kasan zero page walking (Philipp Rudo) [1665182] - [s390] s390/kasan: add option for 4-level paging support (Philipp Rudo) [1665182] - [mm] s390/kasan: free early identity mapping structures (Philipp Rudo) [1665182] - [s390] s390/kasan: enable stack and global variables access checks (Philipp Rudo) [1665182] - [s390] s390/dumpstack: disable __dump_trace kasan instrumentation (Philipp Rudo) [1665182] - [s390] s390/kasan: reipl and kexec support (Philipp Rudo) [1665182] - [s390] s390/smp: kasan stack instrumentation support (Philipp Rudo) [1665182] - [include] compiler: introduce __no_sanitize_address_or_inline (Philipp Rudo) [1665182] - [s390] s390/kasan: use noexec and large pages (Philipp Rudo) [1665182] - [mm] s390/kasan: dynamic shadow mem allocation for modules (Philipp Rudo) [1665182] - [mm] s390/mm: add kasan shadow to the debugfs pgtable dump (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid user access code instrumentation (Philipp Rudo) [1665182] - [s390] s390/kasan: double the stack size (Philipp Rudo) [1665182] - [s390] s390/kasan: add initialization code and enable it (Philipp Rudo) [1665182] - [s390] s390: add pgd_page primitive (Philipp Rudo) [1665182] - [s390] s390: introduce MAX_PTRS_PER_P4D (Philipp Rudo) [1665182] - [s390] s390/kasan: replace some memory functions (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid instrumentation of early C code (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid vdso instrumentation (Philipp Rudo) [1665182] - [s390] s390/mm: add missing pfn_to_kaddr helper (Philipp Rudo) [1665182] - [s390] s390/cpum_cf: Add support for CPU-MF SVN 6 (Philipp Rudo) [1683278] - [s390] s390: report new CPU capabilities (Philipp Rudo) [1685086] - [net] net/smc: fix smc_poll in SMC_INIT state (Philipp Rudo) [1700812] - [net] net/smc: fix byte_order for rx_curs_confirmed (Philipp Rudo) [1700812] - [net] net/smc: check port_idx of ib event (Philipp Rudo) [1700799] - [net] net/smc: check connections in smc_lgr_free_work (Philipp Rudo) [1700799] - [net] net/smc: reduce amount of status updates to peer (Philipp Rudo) [1700799] - [net] net/smc: no delay for free tx buffer wait (Philipp Rudo) [1700799] - [net] net/smc: move wake up of close waiter (Philipp Rudo) [1700799] - [net] net/smc: reset cursor update required flag (Philipp Rudo) [1700799] - [net] net/smc: correct state change for peer closing (Philipp Rudo) [1700799] - [net] net/smc: delete rkey first before switching to unused (Philipp Rudo) [1700799] - [net] net/smc: fix sender_free computation (Philipp Rudo) [1700799] - [net] net/smc: preallocated memory for rdma work requests (Philipp Rudo) [1700799] - [net] net/smc: fix use of variable in cleared area (Philipp Rudo) [1700799] - [net] net/smc: use device link provided in qp_context (Philipp Rudo) [1700799] - [net] net/smc: call smc_cdc_msg_send() under send_lock (Philipp Rudo) [1700799] - [net] net/smc: do not wait under send_lock (Philipp Rudo) [1700799] - [net] net/smc: recvmsg and splice_read should return 0 after shutdown (Philipp Rudo) [1700799] - [net] net/smc: don't wait for send buffer space when data was already sent (Philipp Rudo) [1700799] - [net] net/smc: prevent races between smc_lgr_terminate() and smc_conn_free() (Philipp Rudo) [1700799] - [net] net/smc: allow 16 byte pnetids in netlink policy (Philipp Rudo) [1700799] - [net] net/smc: fix another sizeof to int comparison (Philipp Rudo) [1700799] - [net] net/smc: move code to clear the conn->lgr field (Philipp Rudo) [1700799] - [net] net/smc: use client and server LGR pending locks for SMC-R (Philipp Rudo) [1700799] - [net] net/smc: unlock LGR pending lock earlier for SMC-D (Philipp Rudo) [1700799] - [net] net/smc: use smc_curs_copy() for SMC-D (Philipp Rudo) [1700799] - [net] net/smc: postpone release of clcsock (Philipp Rudo) [1700799] - [net] smc: move unhash as early as possible in smc_release() (Philipp Rudo) [1700799] - [net] net/smc: fix TCP fallback socket release (Philipp Rudo) [1700799] - [s390] s390/ism: ignore some errors during deregistration (Philipp Rudo) [1700799] - [infiniband] mlx4: trigger IB events needed by SMC (Philipp Rudo) [1700799] - [s390] s390/smp: fix CPU hotplug deadlock with CPU rescan (Philipp Rudo) [1700836] - [block] s390/dasd: fix panic for failed online processing (Philipp Rudo) [1700811] - [netdrv] s390/qeth: fix use-after-free in error path (Philipp Rudo) [1700803] - [netdrv] s390/qeth: cancel close_dev work before removing a card (Philipp Rudo) [1700802] - [netdrv] s390/qeth: conclude all event processing before offlining a card (Philipp Rudo) [1700800] - [scsi] scsi: zfcp: fix posting too many status read buffers leading to adapter shutdown (Philipp Rudo) [1700775] - [fs] xfs: prohibit fstrim in norecovery mode (Bill O'Donnell) [1697749] - [x86] perf/x86: Fixup typo in stub functions (Waiman Long) [1688789] - [x86] perf/x86/intel: Fix memory corruption (Waiman Long) [1688789] - [x86] perf/x86/intel: Implement support for TSX Force Abort (Waiman Long) [1688789] - [x86] x86: Add TSX Force Abort CPUID/MSR (Waiman Long) [1688789] - [x86] perf/x86/intel: Generalize dynamic constraint creation (Waiman Long) [1688789] - [x86] perf/x86/intel: Make cpuc allocations consistent (Waiman Long) [1688789] - [x86] perf/x86/intel: Delay memory deallocation until x86_pmu_dead_cpu() (Waiman Long) [1688789] - [x86] perf/x86/intel: Export mem events only if there's PEBS support (Waiman Long) [1688789] - [x86] perf/x86/intel: Add a separate Arch Perfmon v4 PMI handler (Waiman Long) [1688789] - [x86] perf/x86/intel: Factor out common code of PMI handler (Waiman Long) [1688789] - [x86] perf/x86/intel: Introduce PMU flag for Extended PEBS (Waiman Long) [1688789] - [x86] x86/speculation: Add PR_SPEC_DISABLE_NOEXEC (Waiman Long) [1671512]- [kernel] exit from RHEL 8.1 early ystream mode ("Herton R. Krzesinski") - [net] Bluetooth: Verify that l2cap_get_conf_opt provides large enough buffer (Gopal Tiwari) [1700507] {CVE-2019-3459} - [target] scsi: target: iscsi: cxgbit: fix csk leak (Arjun Vynipadath) [1664683] - [target] scsi: target: iscsi: cxgbit: add missing spin_lock_init() (Arjun Vynipadath) [1664683] - [scsi] scsi: cxgb4i: fix incorrect spelling "reveive" -> "receive" (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: update route finding logic (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: find cxgbi device by MAC address (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgbi: remove redundant __kfree_skb call on skb and free cst->atid (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: remove uninitialized variable len (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: validate tcp sequence number only if chip version <= T5 (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: get pf number from lldi->pf (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: add wait_for_completion() (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: fix thermal configuration dependencies (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: add DCB support for iSCSI connections (Arjun Vynipadath) [1664685] - [netdrv] cxgb4: Don't return EAGAIN when TCAM is full. (Arjun Vynipadath) [1664670] - [netdrv] chelsio: use BUG() instead of BUG_ON(1) (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/chtls: Prefix adapter flags with CXGB4 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Call netif_carrier_off properly in pci_probe (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: Revert force link up behaviour (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: Add VF Link state support (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Prefix adapter flags with CXGB4VF (Arjun Vynipadath) [1664682] - [netdrv] cxgb4vf: Enter debugging mode if FW is inaccessible (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: Enable outer UDP checksum offload for T6 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Fix up netdev->hw_features (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: Mask out interrupts that are not enabled. (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Export sge_host_page_size to ulds (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add capability to get/set SGE Doorbell Queue Timer Tick (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Add support for SGE doorbell queue timer (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: Few more link management changes. (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: add tcb flags and tcb rpl struct (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T6 PCI device ids 0x608b (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Program hash region for {t4/t4vf}_change_mac() (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: smt: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: sched: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: cxgb4_tc_u32: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Update port information in cxgb4vf_open() (Arjun Vynipadath) [1664682] - [netdrv] cxgb4/cxgb4vf: Link management changes (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: TLS record offload enable (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: clip_tbl: Use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] net: cxgb4: fix various indentation issues (Arjun Vynipadath) [1664670] - [netdrv] net: chelsio: Add a missing check on cudg_get_buffer (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove DEFINE_SIMPLE_DEBUGFS_FILE() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: number of VFs supported is not always 16 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove set but not used variables 'multitrc, speed' (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: use new fw interface to get the VIN and smt index (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Fix mac_hlist initialization and free (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: fix memleak in mac_hlist initialization (Arjun Vynipadath) [1664682] - [netdrv] cxgb4vf: free mac_hlist properly (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: free mac_hlist properly (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix thermal zone build error (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix thermal configuration dependencies (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add thermal zone support (Arjun Vynipadath) [1664670] - [infiniband] cxgb4: use __vlan_hwaccel helpers (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T6 PCI device ids 0x608a (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix the error path of cxgb4_uld_register() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: use FW_PORT_ACTION_L1_CFG32 for 32 bit capability (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove the unneeded locks (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Use proper enum in IEEE_FAUX_SYNC (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Use proper enum in cxgb4_dcb_handle_fw_update (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove duplicated include from cxgb4_main.c (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: add per rx-queue counter for packet errors (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Fix endianness issue in t4_fwcache() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix abort_req_rss6 struct (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove redundant assignment to vlan_cmd.dropnovlan_fm (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect hardware queue descriptors (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T5 PCI device ids 0x50af and 0x50b0 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove set but not used variable 'spd' (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: add support to display DCB info (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/t4_hw: mark expected switch fall-throughs (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/l2t: Mark expected switch fall-through (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix endian to test F_FW_PORT_CMD_DCBXDIS32 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: print ULD queue information managed by LLD (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: move Tx/Rx free pages collection to common code (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add support to read actual provisioned resources (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T5 PCI device id 0x50ae (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect number of free PSTRUCT page pointers (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: display number of rx and tx pages free (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect ASIC LA dumps from ULP TX (Arjun Vynipadath) [1664670] - [netdrv] libcxgb: replace vmalloc and memset with vzalloc (Arjun Vynipadath) [1664670] - [netdrv] enic: fix checksum validation for IPv6 (Jonathan Toppins) [1685309] - [infiniband] RDMA/vmw_pvrdma: Return the correct opcode when creating WR (Jonathan Toppins) [1688010 1685309] - [infiniband] RDMA/vmw_pvrdma: Use atomic memory allocation in create AH (Jonathan Toppins) [1685309] - [infiniband] IB/usnic: fix spelling mistake "miniumum" -> "minimum" (Jonathan Toppins) [1685309] - [infiniband] RDMA/drivers: Fix spelling mistake "initalize" -> "initialize" (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Reuse code which sets port state (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Make counters thread safe (Jonathan Toppins) [1685309] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Jonathan Toppins) [1685309] - [infiniband] IB/{mlx5, ocrdma, qedr, rxe}: Omit port validation from IB verbs (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Fix incorrect cache cleanup in error flow (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Utilize generic function to validate port number (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Make function rxe_pool_cleanup return void (Jonathan Toppins) [1685309] - [infiniband] rxe: IB_WR_REG_MR does not capture MR's iova field (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: make rxe_unregister_device void (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: move the variable into the function that uses it (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Add link_down, rdma_sends, rdma_recvs stats counters (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Distinguish between down links and disabled links (Jonathan Toppins) [1685309] - [infiniband] rxe: fix error completion wr_id and qp_num (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: clean skb queue directly (Jonathan Toppins) [1685309] - [net] xprtrdma: Make sure Send CQ is allocated on an existing compvec (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Rework SCSI device reset handling (Jonathan Toppins) [1685309] - [infiniband] IB/ipoib: Fix for use-after-free in ipoib_cm_tx_start (Jonathan Toppins) [1685309] - [net] xprtrdma: Double free in rpcrdma_sendctxs_create() (Jonathan Toppins) [1685309] - [net] xprtrdma: Fix error code in rpcrdma_buffer_create() (Jonathan Toppins) [1685309] - [infiniband] IB/ipoib: drop useless LIST_HEAD (Jonathan Toppins) [1685309] - [net] xprtrdma: Prevent leak of rpcrdma_rep objects (Jonathan Toppins) [1685309] - [net] xprtrdma: Don't leak freed MRs (Jonathan Toppins) [1685309] - [net] xprtrdma: Add documenting comment for rpcrdma_buffer_destroy (Jonathan Toppins) [1685309] - [net] xprtrdma: Replace outdated comment for rpcrdma_ep_post (Jonathan Toppins) [1685309] - [net] xprtrdma: Update comments in frwr_op_send (Jonathan Toppins) [1685309] - [net] xprtrdma: Trace mapping, alloc, and dereg failures (Jonathan Toppins) [1685309] - [net] xprtrdma: Add trace points for calls to transport switch methods (Jonathan Toppins) [1685309] - [net] xprtrdma: Relocate the xprtrdma_mr_map trace points (Jonathan Toppins) [1685309] - [net] xprtrdma: Clean up of xprtrdma chunk trace points (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove unused fields from rpcrdma_ia (Jonathan Toppins) [1685309] - [net] xprtrdma: Cull dprintk() call sites (Jonathan Toppins) [1685309] - [net] xprtrdma: Simplify locking that protects the rl_allreqs list (Jonathan Toppins) [1685309] - [net] xprtrdma: Expose transport header errors (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove request_module from backchannel (Jonathan Toppins) [1685309] - [net] xprtrdma: Plant XID in on-the-wire RDMA offset (FRWR) (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove rpcrdma_memreg_ops (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove support for FMR memory registration (Jonathan Toppins) [1685309] - [net] xprtrdma: Reduce max_frwr_depth (Jonathan Toppins) [1685309] - [net] xprtrdma: Fix ri_max_segs and the result of ro_maxpages (Jonathan Toppins) [1685309] - [net] xprtrdma: Don't wake pending tasks until disconnect is done (Jonathan Toppins) [1685309] - [net] xprtrdma: No qp_event disconnect (Jonathan Toppins) [1685309] - [net] xprtrdma: Replace rpcrdma_receive_wq with a per-xprt workqueue (Jonathan Toppins) [1685309] - [net] xprtrdma: Refactor Receive accounting (Jonathan Toppins) [1685309] - [net] xprtrdma: Ensure MRs are DMA-unmapped when posting LOCAL_INV fails (Jonathan Toppins) [1685309] - [net] xprtrdma: Yet another double DMA-unmap (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Use kmem_cache_free() instead of kfree() (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Rework the srpt_alloc_srq() error path (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Remove driver version and release date (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Make kernel-doc headers complete (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Join split strings (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Improve coding style conformance (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Fix a use-after-free in the channel release code (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Rework handling of the maximum information unit length (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Move srp_rdma_ch.max_ti_iu_len declaration (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Propagate ib_post_send() failures to the SCSI mid-layer (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Handle large SCSI CDBs correctly (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Document srp_parse_in() arguments (Jonathan Toppins) [1685309] - [infiniband] include/scsi/srp.h: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] include/scsi/srp.h: Move response flag definitions into this file (Jonathan Toppins) [1685309] - [net] svcrdma: Optimize the logic that selects the R_key to invalidate (Jonathan Toppins) [1685309] - [infiniband] IB/srpt: Drop pointless static qualifier in srpt_make_tpg() (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix OOPs in uverbs_user_mmap_disassociate (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix ioctl query port to consider device disassociation (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix OOPs upon device disassociation (Jonathan Toppins) [1685309] - [infiniband] RDMA/umem: Add missing initialization of owning_mm (Jonathan Toppins) [1685309] - [infiniband] RDMA/device: Expose ib_device_try_get(() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Mark ioctl responses with UVERBS_ATTR_F_VALID_OUTPUT (Jonathan Toppins) [1685309] - [infiniband] RDMA/cma: Add cm_id restrack resource based on kernel or user cm_id type (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Don't expose unsafe global rkey to regular user (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Fix post send success return value in case of error (Jonathan Toppins) [1685309] - [infiniband] IB/core: Add advise_mr to the list of known ops (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Signedness bug in UVERBS_HANDLER() (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Start using dev_groups of class (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Use class_groups and let core create class file (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Refactor code to use cdev_device_add() (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Avoid destroying device while it is accessed (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Simplify and avoid dynamic allocation of class (Jonathan Toppins) [1685309] - [infiniband] RDMA/iwcm: Don't copy past the end of dev_name() string (Jonathan Toppins) [1685309] - [infiniband] IB/core: Move query port to ioctl (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Expose port_cap_flags2 (Jonathan Toppins) [1685309] - [infiniband] IB/core: uverbs copy to struct or zero helper (Jonathan Toppins) [1685309] - [infiniband] RDMA: Mark if destroy address handle is in a sleepable context (Jonathan Toppins) [1685309] - [infiniband] RDMA: Mark if create address handle is in a sleepable context (Jonathan Toppins) [1685309] - [infiniband] RDMA/restrack: Resource-tracker should not use uobject pointers (Jonathan Toppins) [1685309] - [include] IB/uverbs: Add support to advise_mr (Jonathan Toppins) [1685309] - [include] IB/uverbs: Add helper to get array size from ptr attribute (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add an ioctl method to destroy an object (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add a method to introspect handles in a context (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Delete RoCE GID in hw when corresponding IP is deleted (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Implement an ioctl that can call write and write_ex handlers (Jonathan Toppins) [1685309] - [infiniband] RDMA: Start use ib_device_ops (Jonathan Toppins) [1685309] - [infiniband] RDMA/rdmavt: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/vmw_pvrdma: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/usnic: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/qib: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/qedr: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/ocrdma: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/nes: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mthca: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mlx5: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mlx4: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/i40iw: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/hns: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/hfi1: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/cxgb4: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/cxgb3: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/bnxt_re: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Introduce ib_device_ops (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Optimize clearing of extra bytes in response (Jonathan Toppins) [1685309] - [infiniband] IB/core: Add new IB rates (Jonathan Toppins) [1685309] - [include] IB/core: Add 2X port width (Jonathan Toppins) [1685309] - [include] IB/core: Add CapabilityMask2 to port attributes (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Validate port number in query_pkey verb (Jonathan Toppins) [1685309] - [include] RDMA/uverbs: Fix typo in string concatenation macro (Jonathan Toppins) [1685309] - [infiniband] IB/core: Enable getting an object type from a given uobject (Jonathan Toppins) [1685309] - [infiniband] IB/core: Introduce UVERBS_IDR_ANY_OBJECT (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Export to user space number of contexts (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Annotate alloc/deallloc paths with context tracking (Jonathan Toppins) [1685309] - [include] RDMA/restrack: Track ucontext (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use only attrs for the write() handler signature (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Do not check the input length on create_cq/qp paths (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use the iterator for ib_uverbs_unmarshall_recv() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add a simple iterator interface for reading the command (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Simplify ib_uverbs_ex_query_device (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Fill in the response for IB_USER_VERBS_EX_CMD_MODIFY_QP (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_request() and core for write_ex handlers (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_request() for request copying (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_response() for remaining response copying (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Get rid of the 'callback' scheme in the compat path (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass ucore for write/write_ex (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Remove out_len checks that are now done by the core (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: fix ptr_ret.cocci warnings (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for ioctl() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for write (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for write_ex (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Prohibit write() calls with too small buffers (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add structure size info to write commands (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Do not pass ib_uverbs_file to ioctl methods (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Make write() handlers return 0 on success (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Replace ib_uverbs_file with uverbs_attr_bundle for write (Jonathan Toppins) [1685309] - [include] RDMA/uverbs: Add missing driver_data (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Sync unregistration with netlink commands (Jonathan Toppins) [1685309] - [infiniband] RDMA/cma: Move cma module specific functions to cma_priv.h (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Check for NULL driver methods for every write call (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Make all the method functions in uverbs_cmd static (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Convert the write interface to use uverbs_api (Jonathan Toppins) [1685309] - [infiniband] RDMA/verbs: Store the write/write_ex uapi entry points in the uverbs_api (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Require all objects to have a driver destroy function (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add helpers to mark uapi functions as unsupported (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Factor out the add/get pattern into a helper (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use a linear list to describe the compiled-in uapi (Jonathan Toppins) [1685309] - [infiniband] IB/core: Make function ib_fmr_pool_unmap return void (Jonathan Toppins) [1685309] - [include] RDMA/core: Remove unused header files mm.h, socket.h, scatterlist.h (Jonathan Toppins) [1685309] - [include] IB/uverbs: fix a typo (Jonathan Toppins) [1685309] - [fs] coredump: fix race condition between mmget_not_zero()/get_task_mm() and core dumping (Andrea Arcangeli) [1696081] {CVE-2019-3892} - [scsi] scsi: csiostor: fix missing data copy in csio_scsi_err_handler() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: drop serial_number usage (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix calls to dma_set_mask_and_coherent() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: Remove set but not used variable 'pln' (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: no need to check return value of debugfs_create functions (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix NULL pointer dereference in csio_vport_set_state() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix incorrect dma device in case of vport (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: switch to generic DMA API (Arjun Vynipadath) [1664680] - [netdrv] thunderx: eliminate extra calls to put_page() for pages held for recycling (Dean Nelson) [1644011] - [netdrv] thunderx: enable page recycling for non-XDP case (Dean Nelson) [1644011] - [cpufreq] cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency (Prarit Bhargava) [1696131] - [acpi] ACPI / CPPC: Fix guaranteed performance handling (Prarit Bhargava) [1696131] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Corinna Vinschen) [1659169] - [netdrv] igbvf: Replace spin_is_locked() with lockdep (Corinna Vinschen) [1659169] - [netdrv] intel-ethernet: use correct module license (Corinna Vinschen) [1659169] - [netdrv] igbvf: netdev: Mark expected switch fall-through (Corinna Vinschen) [1659169] - [x86] x86/MCE: Initialize mce.bank in the case of a fatal error in mce_no_way_out() (David Arcari) [1698959] - [x86] x86/mce: Restore MCE injector's module name (David Arcari) [1698959] - [x86] x86/mce: Streamline MCE subsystem's naming (David Arcari) [1698959] - [x86] x86: Fix various typos in comments (David Arcari) [1698959] - [x86] x86/MCE/AMD: Fix the thresholding machinery initialization order (David Arcari) [1698959] - [x86] x86/mce: Fix -Wmissing-prototypes warnings (David Arcari) [1698959] - [x86] acpi/nfit, x86/mce: Validate a MCE's address before using it (David Arcari) [1698959] - [x86] acpi/nfit, x86/mce: Handle only uncorrectable machine checks (David Arcari) [1698959] - [x86] x86: Clean up 'sizeof x' => 'sizeof(x)' (David Arcari) [1698959] - [x86] x86/mcelog: Remove one mce_helper definition (David Arcari) [1698959] - [x86] x86/mce-inject: Reset injection struct after injection (David Arcari) [1698959] - [mm] x86/mce: Fix set_mce_nospec() to avoid #GP fault (David Arcari) [1698959] - [x86] x86/memory_failure: Introduce {set, clear}_mce_nospec() (David Arcari) [1698959] - [x86] x86/mce: Cleanup __mc_scan_banks() (David Arcari) [1698959] - [x86] x86/mce: Carve out bank scanning code (David Arcari) [1698959] - [x86] x86/mce: Carve out the crashing_cpu check (David Arcari) [1698959] - [x86] x86/mce: Always use 64-bit timestamps (David Arcari) [1698959] - [x86] x86/mce: Remove !banks check (David Arcari) [1698959] - [md] dm cache metadata: Fix loading discard bitset (Mike Snitzer) [1701618] - [block] null_blk: prevent crash from bad home_node value (Ming Lei) [1696951] - [powerpc] powerpc/security: Fix spectre_v2 reporting (Gustavo Duarte) [1694456] - [powerpc] powerpc/powernv: Query firmware for count cache flush settings (Gustavo Duarte) [1694456] - [powerpc] powerpc/pseries: Query hypervisor for count cache flush settings (Gustavo Duarte) [1694456] - [powerpc] powerpc/64s: Add support for software count cache flush (Gustavo Duarte) [1694456] - [powerpc] powerpc/64s: Add new security feature flags for count cache flush (Gustavo Duarte) [1694456] - [powerpc] powerpc/asm: Add a patch_site macro & helpers for patching instructions (Gustavo Duarte) [1694456] - [powerpc] powerpc/64: Call setup_barrier_nospec() from setup_arch() (Gustavo Duarte) [1694456] - [powerpc] powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC (Gustavo Duarte) [1694456] - [powerpc] powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 (Gustavo Duarte) [1694456]- [kernel] sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup (Joel Savitz) [1695651] - [crypto] crypto: ux500 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: talitos - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: sun4i-ss - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: stm32 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: rockchip - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: qce - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: picoxcell - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: omap - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: n2 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: marvell - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ixp4xx - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: hifn_795x - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ccree - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ccp - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: cavium - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: caam - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: bcm - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: atmel - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: sparc - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [s390] crypto: s390 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: des_generic - Forbid 2-key in 3DES and add helpers (Herbert Xu) [1687908] - [crypto] crypto: mxc-scc - Remove broken driver (Herbert Xu) [1687908] - [kernel] ntp: Audit NTP parameters adjustment (Ondrej Mosnacek) [1680034] - [kernel] timekeeping: Audit clock adjustments (Ondrej Mosnacek) [1680034] - [kernel] ntp: Remove duplicated include (Ondrej Mosnacek) [1680034] - [kernel] timekeeping/ntp: Constify some function arguments (Ondrej Mosnacek) [1680034] - [kernel] ntp: Use kstrtos64 for s64 variable (Ondrej Mosnacek) [1680034] - [kernel] ntp: Remove redundant arguments (Ondrej Mosnacek) [1680034] - [kernel] timekeeping: Use ktime_get_real_ts64() instead of getnstimeofday64() (Ondrej Mosnacek) [1680034] - [netdrv] hinic: Add pci device ids (Xiaojun Tan) [1662040] - [netdrv] net-next/hinic:add shutdown callback (Xiaojun Tan) [1662040] - [netdrv] hinic: optmize rx refill buffer mechanism (Xiaojun Tan) [1662040] - [netdrv] net: hinic: remove redundant pointer pfhwdev (Xiaojun Tan) [1662040] - [netdrv] net: hns: fix unsigned comparison to less than zero (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix sparse: some warnings in HNS drivers (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix WARNING when remove HNS driver with SMMU enabled (Xiaojun Tan) [1661885] - [netdrv] net: hns: fix ICMP6 neighbor solicitation messages discard problem (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix probabilistic memory overwrite when HNS driver initialized (Xiaojun Tan) [1661885] - [netdrv] net: hns: Use NAPI_POLL_WEIGHT for hns driver (Xiaojun Tan) [1661885] - [netdrv] net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw() (Xiaojun Tan) [1661885] - [netdrv] net: hns: use struct_size() in devm_kzalloc() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fixes the missing put_device in positive leg for roce reset (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix object reference leaks in hns_dsaf_roce_reset() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Restart autoneg need return failed when autoneg off (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix for missing of_node_put() after of_parse_phandle() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Use struct_size() in devm_kzalloc() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix use after free identified by SLUB debug (Xiaojun Tan) [1661885] - [netdrv] net: hns: make function hns_gmac_wait_fifo_clean() static (Xiaojun Tan) [1661885] - [netdrv] net: hns: use eth_get_headlen interface instead of hns_nic_get_headlen (Xiaojun Tan) [1661885] - [netdrv] net: hns: Mark expected switch fall-through (Xiaojun Tan) [1661885] - [netdrv] net: hns: remove redundant variables 'max_frm' and 'tmp_mac_key' (Xiaojun Tan) [1661885] - [netdrv] net: hisilicon: hns: Replace mdelay() with msleep() (Xiaojun Tan) [1661885] - [netdrv] net: hns: make hns_dsaf_roce_reset non static (Xiaojun Tan) [1661885] - [netdrv] net: hns: Make many functions static (Xiaojun Tan) [1661885] - [bluetooth] Bluetooth: btusb: Add support for Intel bluetooth device 8087:0029 (Gopal Tiwari) [1678084] - [bluetooth] Bluetooth: btusb: Use bt_dev_err for Intel firmware loading errors (Gopal Tiwari) [1678084]- [vfio] vfio/pci: Restore device state on PM transition (Alex Williamson) [1700254] - [vfio] vfio/pci: Parallelize device open and release (Alex Williamson) [1700254] - [pci] Revert "PCI/ASPM: Do not initialize link state when aspm_disabled is set" (Myron Stowe) [1694143] - [pci] PCI: Fix incorrect value returned from pcie_get_speed_cap() (Myron Stowe) [1694143] - [x86] x86/PCI: Apply VMD's AERSID fixup generically (Myron Stowe) [1694143] - [pci] PCI/IOV: Remove unnecessary include of (Myron Stowe) [1694143] - [pci] PCI: pcie: Remove redundant 'default n' from Kconfig (Myron Stowe) [1694143] - [documentation] NTB: switchtec_ntb: Update switchtec documentation with prerequisites for NTB (Myron Stowe) [1694143] - [pci] PCI: Fix Switchtec DMA aliasing quirk dmesg noise (Myron Stowe) [1694143] - [pci] PCI: Add macro for Switchtec quirk declarations (Myron Stowe) [1694143] - [pci] PCI: Add Device IDs for Intel GPU "spurious interrupt" quirk (Myron Stowe) [1694143] - [pci] PCI / ACPI: Mark expected switch fall-through (Myron Stowe) [1694143] - [pci] PCI: Remove set but unused variable (Myron Stowe) [1694143] - [pci] PCI: Fix pci.c kernel-doc parameter warning (Myron Stowe) [1694143] - [pci] PCI: Allocate dma_alias_mask with bitmap_zalloc() (Myron Stowe) [1694143] - [include] PCI: Remove unused NFP32xx IDs (Myron Stowe) [1694143] - [maintainers] maintainers: Add Hyper-V IOMMU driver into Hyper-V CORE AND DRIVERS scope (Vitaly Kuznetsov) [1663292 1669989] - [iommu] hyper-v: Add Hyper-V stub IOMMU driver (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyper-v: Set x2apic destination mode to physical when x2apic is available (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyper-v: Enable PIT shutdown quirk (Vitaly Kuznetsov) [1663292 1669989] - [clocksource] clockevents/drivers/i8253: Add support for PIT shutdown quirk (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Enable PV qspinlock for Hyper-V (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Add GUEST_IDLE_MSR support (Vitaly Kuznetsov) [1663292 1669989] - [x86] hv: vmbus: Make TLFS #define names architecture neutral (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Add interrupt handler annotations (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Refactor hv_irq_unmask() to use cpumask_to_vpset() (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Replace hv_vp_set with hv_vpset (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Add __aligned(8) to struct retarget_msi_interrupt (Vitaly Kuznetsov) [1663292 1669989] - [vfio] vfio-pci/nvlink2: Fix ancient gcc warnings (Sam Bobroff) [1524679] - [vfio] vfio/pci: Cleanup license mess (Sam Bobroff) [1524679] - [vfio] vfio/pci: set TRACE_INCLUDE_PATH to fix the build error (Sam Bobroff) [1524679] - [vfio] vfio_pci: Add NVIDIA GV100GL [Tesla V100 SXM2] subdriver (Sam Bobroff) [1524679] - [vfio] vfio_pci: Allow regions to add own capabilities (Sam Bobroff) [1524679] - [vfio] vfio_pci: Allow mapping extra regions (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Fault user page into the hypervisor's pagetable (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Check mmio_atsd array bounds when populating (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Add release_ownership hook (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Add compound IOMMU groups (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Convert NPU IOMMU helpers to iommu_table_group_ops (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Move single TVE handling to NPU PE (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv: Reference iommu_table while it is linked to a group (Sam Bobroff) [1524679] - [powerpc] powerpc/iommu_api: Move IOMMU groups setup to a single place (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/pseries: Rework device adding to IOMMU groups (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries: Remove IOMMU API support for non-LPAR systems (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries/npu: Enable platform support (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries/iommu: Use memory@ nodes in max RAM address calculation (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Move OPAL calls away from context manipulation (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv: Move npu struct from pnv_phb to pci_controller (Sam Bobroff) [1524679] - [powerpc] powerpc/vfio/iommu/kvm: Do not pin device memory (Sam Bobroff) [1524679] - [vfio] powerpc/mm/iommu/vfio_spapr_tce: Change mm_iommu_get to reference a region (Sam Bobroff) [1524679] - [powerpc] powerpc/ioda/npu: Call skiboot's hot reset hook when disabling NPU2 (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/ioda: Allocate indirect TCE levels of cached userspace addresses on demand (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/ioda1: Remove dead code for a single device PE (Sam Bobroff) [1524679] - [rpmspec] redhat: add TC selftests to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: add net selftests to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: add pktgen samples to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: rename bpf_samples to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: remove bpf_samples dependency on glibc-static and build it by default (Ivan Vecera) [1691376] - [tools] selftests: bpf: modify urandom_read and link it non-statically (Ivan Vecera) [1691376]- [netdrv] ibmvnic: Fix netdev feature clobbering during a reset (Steve Best) [1699018] - [netdrv] ibmvnic: Enable GRO (Steve Best) [1699018] - [x86] x86/perf/amd: Remove need to check "running" bit in NMI handler (David Arcari) [1640238] - [x86] x86/perf/amd: Resolve NMI latency issues for active PMCs (David Arcari) [1640238] - [x86] x86/perf/amd: Resolve race condition when disabling PMC (David Arcari) [1640238] - [netdrv] qed: Fix qed_mcp_halt|resume() (Manish Chopra) [1697310]- [x86] x86/kexec: Fix a kexec_file_load() failure (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: include linux/vmalloc.h (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: handle empty command-line (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: return successfully even if kaslr-seed doesn't exist (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: Refactor setup_dtb() to consolidate error checking (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: add kaslr support (Bhupesh Sharma) [1666078] - [char] random: Make crng state queryable (Bhupesh Sharma) [1666078] - [include] include: pe.h: remove message[] from mz header definition (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: invoke the kernel without purgatory (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: allow for loading Image-format kernel (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: load initrd and device-tree (Bhupesh Sharma) [1666078] - [arm64] arm64: enable KEXEC_FILE config (Bhupesh Sharma) [1666078] - [arm64] arm64: cpufeature: add MMFR0 helper functions (Bhupesh Sharma) [1666078] - [arm64] arm64: add image head flag definitions (Bhupesh Sharma) [1666078] - [kernel] kexec_file: kexec_walk_memblock() only walks a dedicated region at kdump (Bhupesh Sharma) [1666078] - [kernel] powerpc, kexec_file: factor out memblock-based arch_kexec_walk_mem() (Bhupesh Sharma) [1666078] - [kernel] s390, kexec_file: drop arch_kexec_mem_walk() (Bhupesh Sharma) [1666078] - [kernel] kexec_file: make kexec_image_post_load_cleanup_default() global (Bhupesh Sharma) [1666078] - [include] asm-generic: add kexec_file_load system call to unistd.h (Bhupesh Sharma) [1666078] - [include] asm-generic: unistd.h: Wire up sys_rseq (Bhupesh Sharma) [1666078] - [fs] xfs: don't overflow xattr listent buffer (Bill O'Donnell) [1683531] - [drm] drm/i915/gvt: Add in context mmio 0x20D8 to gen9 mmio list (Paul Lai) [1651589] - [fs] copy_mount_string: Limit string length to PATH_MAX (Miklos Szeredi) [1655272] - [include] redhat: Reuse other arch's cpuhp_state to protect kABI (Robert Richter) [1658476] - [drivers] drivers/perf: Add Cavium ThunderX2 SoC UNCORE PMU driver (Robert Richter) [1658476] - [documentation] Documentation: perf: Add documentation for ThunderX2 PMU uncore driver (Robert Richter) [1658476]- [arm64] arm64: apply workaround on A64FX v1r0 (Mark Langsdorf) [1692306] - [fs] kernfs: fix xattr name handling in LSM helpers (Ondrej Mosnacek) [1558179] - [include] LSM: lsm_hooks.h - fix missing colon in docstring (Ondrej Mosnacek) [1558179] - [security] selinux: Make selinux_kernfs_init_security static (Ondrej Mosnacek) [1558179] - [fs] kernfs: initialize security of newly created nodes (Ondrej Mosnacek) [1558179] - [security] selinux: implement the kernfs_init_security hook (Ondrej Mosnacek) [1558179] - [include] LSM: add new hook for kernfs node initialization (Ondrej Mosnacek) [1558179] - [fs] kernfs: use simple_xattrs for security attributes (Ondrej Mosnacek) [1558179] - [security] selinux: try security xattr after genfs for kernfs filesystems (Ondrej Mosnacek) [1558179] - [fs] kernfs: do not alloc iattrs in kernfs_xattr_get (Ondrej Mosnacek) [1558179] - [fs] kernfs: clean up struct kernfs_iattrs (Ondrej Mosnacek) [1558179] - [fs] kernfs: allow creating kernfs objects with arbitrary uid/gid (Ondrej Mosnacek) [1558179] - [tools] tools/power turbostat: Add Icelake support (Steve Best) [1698546] - [tools] tools/power turbostat: consolidate duplicate model numbers (Steve Best) [1698546] - [mm] s390/mm: silence compiler warning when compiling without CONFIG_PGSTE (Thomas Huth) [1698848] - [scripts] unifdef: use memcpy instead of strncpy (Thomas Huth) [1698848] - [s390] s390: align struct lowcore to double page size (Thomas Huth) [1698848] - [powerpc] KVM: PPC: Book3S HV: Perserve PSSCR FAKE_SUSPEND bit on guest exit (Suraj Jitindar Singh) [1689768]- [virtio] virtio: Honour 'may_reduce_num' in vring_create_virtqueue (Cornelia Huck) [1697505] - [s390] setup: set control program code via diag 318 (Thomas Huth) [1592336] - [s390] kvm: s390: set host program identifier (Thomas Huth) [1592336] - [edac] EDAC, skx: Fix randconfig builds in a better way (Aristeu Rozanski) [1501612 1649988 1571534] - [edac] EDAC, skx: Fix randconfig builds (Aristeu Rozanski) [1501612 1649988 1571534] - [edac] EDAC, skx_edac: Add address translation for non-volatile DIMMs (Aristeu Rozanski) [1501612 1649988 1571534] - [acpi] ACPI/ADXL: Add address translation interface using an ACPI DSM (Aristeu Rozanski) [1501612 1649988 1571534] - [x86] x86/mce: Add macros for the corrected error count bit field (Aristeu Rozanski) [1501612 1649988 1571534] - [x86] x86/mce: Use BIT_ULL(x) for bit mask definitions (Aristeu Rozanski) [1501612 1649988 1571534] - [crypto] crypto: ecc - regularize scalar for scalar multiplication (Neil Horman) [1687888] - [crypto] crypto: ecc - check for invalid values in the key verification test (Neil Horman) [1687888] - [crypto] crypto: dh - make crypto_dh_encode_key() make robust (Neil Horman) [1687888] - [crypto] crypto: dh - fix calculating encoded key size (Neil Horman) [1687888] - [crypto] crypto: ecdh - fix typo of P-192 b value (Neil Horman) [1687888] - [crypto] crypto: ecdh - add public key verification test (Neil Horman) [1687888] - [crypto] crypto: dh - fix memory leak (Neil Horman) [1687888] - [crypto] crypto: dh - add public key verification test (Neil Horman) [1687888] - [scsi] scsi: hisi_sas: Add softreset in hisi_sas_I_T_nexus_reset() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of HiLink (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP target port (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Set PHY linkrate when disconnected (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Change return variable type in phy_up_v3_hw() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: fix calls to dma_set_mask_and_coherent() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Do some more tidy-up (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Issue internal abort on all relevant queues (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: change queue depth from 512 to 4096 (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add manual trigger for debugfs dump (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for DIX feature for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add missing seq_printf() call in hisi_sas_show_row_32() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix to only call scsi_get_prot_op() for non-NULL scsi_cmnd (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Some misc tidy-up (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Correct memory allocation size for DQ debugfs (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix losing directly attached disk when hot-plug (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Remove unused parameter of function hisi_sas_alloc() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: remove the check of sas_dev status in hisi_sas_I_T_nexus_reset() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: shutdown axi bus to avoid exception CQ returned (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: send primitive NOTIFY to SSP situation only (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs ITCT file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix type casting and missing static qualifier in debugfs code (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: No need to check return value of debugfs_create functions (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Set protection parameters prior to adding SCSI host (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs IOST file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs DQ file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs CQ file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs for port registers (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Debugfs global register create file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Take debugfs snapshot for all regs (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Alloc debugfs snapshot buffer memory for all registers (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Create root and device debugfs directories (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for DIF feature for v2 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Make sg_tablesize consistent value (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Relocate some code to reduce complexity (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix warnings detected by sparse (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: change the time of SAS SSP connection (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Relocate some codes to avoid an unused check (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for interrupt coalescing for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for interrupt converge for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Create separate host attributes per HBA (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: use dma_set_mask_and_coherent (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Remove set but not used variable 'dq_list' (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix NULL pointer dereference (Xiaojun Tan) [1662038] - [nvme] nvme-pci: add missing unlock for reset error (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix rapid add remove sequence (Gopal Tiwari) [1665354] - [nvme] nvme: remove the .stop_ctrl callout (Gopal Tiwari) [1665354] - [nvme] nvme: add support for the Write Zeroes command (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: fix null dereference under heavy load (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: fix timeout handler (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix timeout handler (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: fix uninitialized variable access (Gopal Tiwari) [1665354] - [nvme] nvme: don't initlialize ctrl->cntlid twice (Gopal Tiwari) [1665354] - [nvme] nvme: introduce NVME_QUIRK_IGNORE_DEV_SUBNQN (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: remove dead code (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: don't ask if controller is fabrics (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: unset write/poll queues for discovery controllers (Gopal Tiwari) [1665354] - [nvme] nvme: pad fake subsys NQN vid and ssvid with zeros (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix out of bounds access in nvme_cqe_pending (Gopal Tiwari) [1665354] - [nvme] nvme-pci: use the same attributes when freeing host_mem_desc_bufs. (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix the wrong setting of nr_maps (Gopal Tiwari) [1665354] - [nvme] nvme-pci: rerun irq setup on IO queue init errors (Gopal Tiwari) [1665354] - [nvme] nvme-pci: trace SQ status on completions (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user to pass in nr_poll_queues (Gopal Tiwari) [1665354] - [nvme] nvme-core: optionally poll sync commands (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix spelling mistake "attepmpt" -> "attempt" (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix endianess annotations (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: fix endianess annotations (Gopal Tiwari) [1665354] - [nvme] nvme-pci: refactor nvme_poll_irqdisable to make sparse happy (Gopal Tiwari) [1665354] - [nvme] nvme-pci: only set nr_maps to 2 if poll queues are supported (Gopal Tiwari) [1665354] - [nvme] nvmet: use a macro for default error location (Gopal Tiwari) [1665354] - [nvme] nvmet: fix comparison of a u16 with -1 (Gopal Tiwari) [1665354] - [nvme] nvme: fix kernel paging oops (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: support separate queue maps for read and write (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: support separate queue maps for read and write (Gopal Tiwari) [1665354] - [include] block: make request_to_qc_t public (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user to set nr_write_queues for separate queue maps (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: add missing nvmf_ctrl_options documentation (Gopal Tiwari) [1665354] - [nvme] blk-mq-rdma: pass in queue map to blk_mq_rdma_map_queues (Gopal Tiwari) [1665354] - [nvme] nvmet: update smart log with num err log entries (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for file backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log page cmd handler (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for bdev backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for admin-cmd (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for fabrics-cmd (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for rdma backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support in the core (Gopal Tiwari) [1665354] - [nvme] nvmet: add interface to update error-log page (Gopal Tiwari) [1665354] - [include] nvme: add error log page slot definition (Gopal Tiwari) [1665354] - [nvme] nvmet: add error-log definitions (Gopal Tiwari) [1665354] - [nvme] nvme: remove nvme_common command cdw10 array (Gopal Tiwari) [1665354] - [nvme] nvme: provide fallback for discard alloc failure (Gopal Tiwari) [1665354] - [nvme] nvmet: remove unused variable (Gopal Tiwari) [1665354] - [nvme] nvme: add __exit annotation (Gopal Tiwari) [1665354] - [nvme] nvmet: allow configfs tcp trtype configuration (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: add NVMe over TCP host driver (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: add NVMe over TCP target driver (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user passing data digest (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user passing header digest (Gopal Tiwari) [1665354] - [nvme] nvmet: Add install_queue callout (Gopal Tiwari) [1665354] - [nvme] nvmet: use unlikely for req status check (Gopal Tiwari) [1665354] - [include] nvme-tcp: Add protocol header (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: Add unlikely for response allocated check (Gopal Tiwari) [1665354] - [nvme] nvmet: fix the structure member indentation (Gopal Tiwari) [1665354] - [nvme] nvme: implement Enhanced Command Retry (Gopal Tiwari) [1665354] - [nvme] nvme: remove unused function nvme_ctrl_ready (Gopal Tiwari) [1665354] - [nvme] nvmet: support fabrics sq flow control (Gopal Tiwari) [1665354] - [nvme] nvmet: enable Discovery Controller AENs (Gopal Tiwari) [1665354] - [nvme] nvmet: expose support for fabrics SQ flow control disable in treq (Gopal Tiwari) [1665354] - [nvme] nvme: disable fabrics SQ flow control when asked by the user (Gopal Tiwari) [1665354] - [nvme] nvmet-fc: remove the IN_ISR deferred scheduling options (Gopal Tiwari) [1665354] - [nvme] nvme: Remove unused forward declaration (Gopal Tiwari) [1665354] - [nvme] nvmet: allow host connect even if no allowed subsystems are exported (Gopal Tiwari) [1665354] - [nvme] nvmet: don't override treq upon modification. (Gopal Tiwari) [1665354] - [nvme] nvmet: mark nvmet_genctr static (Gopal Tiwari) [1665354] - [nvme] nvmet: add defines for discovery change async events (Gopal Tiwari) [1665354] - [nvme] nvmet: support for traffic based keep-alive (Gopal Tiwari) [1665354] - [nvme] nvmet: make kato and AEN processing for use by other controllers (Gopal Tiwari) [1665354] - [nvme] nvmet: change aen mask functions to use bit numbers (Gopal Tiwari) [1665354] - [nvme] nvmet: provide aen bit functions for multiple controller types (Gopal Tiwari) [1665354] - [nvme] nvmet: add support to Discovery controllers for commands (Gopal Tiwari) [1665354] - [nvme] nvmet: use IOCB_NOWAIT for file-ns buffered I/O (Gopal Tiwari) [1665354] - [nvme] nvmet: allow Keep Alive for Discovery controller (Gopal Tiwari) [1665354] - [nvme] nvme: support traffic based keep-alive (Gopal Tiwari) [1665354] - [nvme] nvme: cache controller attributes (Gopal Tiwari) [1665354] - [nvme] nvme: introduce ctrl attributes enumeration (Gopal Tiwari) [1665354] - [nvme] nvme: consolidate memset calls in the nvme_setup_cmd path (Gopal Tiwari) [1665354] - [nvme] nvme: warn when finding multi-port subsystems without multipathing enabled (Gopal Tiwari) [1665354] - [nvme] Revert "nvmet-rdma: use a private workqueue for delete" (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: move controller options matching to fabrics (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: always have a valid trsvcid (Gopal Tiwari) [1665354] - [nvme] nvme-pci: remove duplicate check (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix hot removal during error handling (Gopal Tiwari) [1665354] - [nvme] nvmet-fcloop: suppress a compiler warning (Gopal Tiwari) [1665354] - [nvme] nvme-core: make implicit seed truncation explicit (Gopal Tiwari) [1665354] - [nvme] nvmet-fc: fix kernel-doc headers (Gopal Tiwari) [1665354] - [nvme] nvmet: avoid integer overflow in the discard code (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: declare local symbols static (Gopal Tiwari) [1665354] - [nvme] nvmet: use strlcpy() instead of strcpy() (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix nvme_suspend_queue() kernel-doc header (Gopal Tiwari) [1665354] - [nvme] nvme-core: declare local symbols static (Gopal Tiwari) [1665354] - [nvme] nvme-core: rework a NQN copying operation (Gopal Tiwari) [1665354] - [nvme] nvmet: use strcmp() instead of strncmp() for subsystem lookup (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: check for timeout in nvme_rdma_wait_for_cm() (Gopal Tiwari) [1665354] - [nvme] nvmet: remove unreachable code (Gopal Tiwari) [1665354] - [nvme] nvme: update node paths after adding new path (Gopal Tiwari) [1665354] - [nvme] nvme: remove ns sibling before clearing path (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: use a private workqueue for delete (Gopal Tiwari) [1665354] - [nvme] nvmet: don't split large I/Os unconditionally (Gopal Tiwari) [1665354] - [nvme] nvme-core: add async event trace helper (Gopal Tiwari) [1665354] - [nvme] nvmet_fc: support target port removal with nvmet layer (Gopal Tiwari) [1665354] - [nvme] nvmet: remove redundant module prefix (Gopal Tiwari) [1665354] - [nvme] nvme: fix typo in nvme_identify_ns_descs (Gopal Tiwari) [1665354] - [nvme] nvme: register ns_id attributes as default sysfs groups (Gopal Tiwari) [1665354] - [block] block: genhd: add 'groups' argument to device_add_disk (Gopal Tiwari) [1665354] - [nvme] nvme: count all ANA groups for ANA Log page (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: fix possible bogus dereference under heavy load (Gopal Tiwari) [1665354] - [nvme] nvmet: free workqueue object if module init fails (Gopal Tiwari) [1665354] - [nvme] nvme-fcloop: Fix dropped LS's to removed target port (Gopal Tiwari) [1665354] - [nvme] nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event (Gopal Tiwari) [1665354] - [nvme] nvmet: add ns write protect support (Gopal Tiwari) [1665354] - [nvme] nvme: set gendisk read only based on nsattr (Gopal Tiwari) [1665354] - [include] nvme.h: add support for ns write protect definitions (Gopal Tiwari) [1665354] - [nvme] nvmet: use Retain Async Event bit to clear AEN (Gopal Tiwari) [1665354] - [nvme] nvmet: support configuring ANA groups (Gopal Tiwari) [1665354] - [nvme] nvmet: add minimal ANA support (Gopal Tiwari) [1665354] - [nvme] nvmet: track and limit the number of namespaces per subsystem (Gopal Tiwari) [1665354] - [nvme] nvmet: keep a port pointer in nvmet_ctrl (Gopal Tiwari) [1665354] - [nvme] nvmet: check fileio lba range access boundaries (Gopal Tiwari) [1665354] - [nvme] nvmet: don't use uuid_le type (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: centralize admin/io queue teardown sequence (Gopal Tiwari) [1665354] - [nvme] nvmet: fix file discard return status (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: centralize controller setup sequence (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: unquiesce queues when deleting the controller (Gopal Tiwari) [1665354] - [nvme] nvme: add disk name to trace events (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: mark expected switch fall-through (Gopal Tiwari) [1665354] - [nvme] nvme: add controller name to trace events (Gopal Tiwari) [1665354] - [nvme] nvme: use hw qid in trace events (Gopal Tiwari) [1665354] - [nvme] nvmet: add buffered I/O support for file backed ns (Gopal Tiwari) [1665354] - [nvme] nvme: move init of keep_alive work item to controller initialization (Gopal Tiwari) [1665354] - [nvme] nvmet: add commands supported and effects log page (Gopal Tiwari) [1665354] - [nvme] lightnvm: limit get chunk meta request size (Gopal Tiwari) [1665354] - [nvme] lightnvm: Remove redundant rq->__data_len initialization (Gopal Tiwari) [1665354] - [block] nbd: restrict use to AF_UNIX sockets (Mike Christie) [1673307] - [block] nbd: don't allow invalid blocksize settings (Mike Christie) [1673307] - [documentation] doc, block, bfq: add information on bfq execution time (Ming Lei) [1686682] - [block] block, bfq: save & resume weight on a queue merge/split (Ming Lei) [1686682] - [block] block, bfq: print SHARED instead of pid for shared queues in logs (Ming Lei) [1686682] - [block] block, bfq: always protect newly-created queues from existing active queues (Ming Lei) [1686682] - [block] block, bfq: do not tag totally seeky queues as soft rt (Ming Lei) [1686682] - [block] block, bfq: do not merge queues on flash storage with queueing (Ming Lei) [1686682] - [block] block, bfq: tune service injection basing on request service times (Ming Lei) [1686682] - [block] block, bfq: do not idle for lowest-weight queues (Ming Lei) [1686682] - [block] block, bfq: increase idling for weight-raised queues (Ming Lei) [1686682] - [block] block/bfq: fix ifdef for CONFIG_BFQ_GROUP_IOSCHED=y (Ming Lei) [1686682] - [block] block, bfq: fix in-service-queue check for queue merging (Ming Lei) [1686682] - [block] block, bfq: do not overcharge writes in asymmetric scenarios (Ming Lei) [1686682] - [block] block, bfq: port commit "cfq-iosched: improve hw_tag detection" (Ming Lei) [1686682] - [block] block, bfq: reduce threshold for detecting command queueing (Ming Lei) [1686682] - [block] block, bfq: fix queue removal from weights tree (Ming Lei) [1686682] - [block] block, bfq: fix sequential rq detection in rate estimation (Ming Lei) [1686682] - [block] block, bfq: unconditionally plug I/O in asymmetric scenarios (Ming Lei) [1686682] - [block] block, bfq: do not plug I/O of in-service queue when harmful (Ming Lei) [1686682] - [block] block, bfq: split function bfq_better_to_idle (Ming Lei) [1686682] - [block] block, bfq: consider also ioprio classes in symmetry detection (Ming Lei) [1686682] - [block] block, bfq: remove case of redirected bic from insert_request (Ming Lei) [1686682] - [block] block, bfq: make sure queue budgets are not below service received (Ming Lei) [1686682] - [block] block, bfq: avoid selecting a queue w/o budget (Ming Lei) [1686682] - [block] block, bfq: do not consider interactive queues in srt filtering (Ming Lei) [1686682] - [net] net: switchdev: Add extack to switchdev_handle_port_obj_add() callback (Ivan Vecera) [1690125] - [net] switchdev: Add extack to struct switchdev_notifier_info (Ivan Vecera) [1690125] - [net] vxlan: Add a function to init switchdev_notifier_vxlan_fdb_info (Ivan Vecera) [1690125] - [net] switchdev: Add extack argument to switchdev_port_obj_add() (Ivan Vecera) [1690125] - [net] bridge: Propagate extack to switchdev (Ivan Vecera) [1690125] - [net] ndo_bridge_setlink: Add extack (Ivan Vecera) [1690125] - [net] rocker, dsa, ethsw: Don't filter VLAN events on bridge itself (Ivan Vecera) [1690125] - [net] switchdev: Replace port obj add/del SDO with a notification (Ivan Vecera) [1690125] - [net] ocelot: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] mlxsw: spectrum_switchdev: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add helpers to aid traversal through lower devices (Ivan Vecera) [1690125] - [net] staging: fsl-dpaa2: ethsw: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] staging: fsl-dpaa2: ethsw: Introduce ethsw_port_dev_check() (Ivan Vecera) [1690125] - [net] dsa: slave: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] rocker: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add SWITCHDEV_PORT_OBJ_ADD, SWITCHDEV_PORT_OBJ_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add a blocking notifier chain (Ivan Vecera) [1690125] - [net] switchdev: SWITCHDEV_OBJ_PORT_{VLAN, MDB}(): Sanitize (Ivan Vecera) [1690125] - [net] selftests: forwarding: Fix test for different devices (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add learning test (Ivan Vecera) [1693316] - [net] bridge: Allow querying bridge port flags (Ivan Vecera) [1693316] - [netdrv] vxlan: Allow changing ageing time (Ivan Vecera) [1693316] - [netdrv] vxlan: Add hardware FDB learning (Ivan Vecera) [1693316] - [netdrv] vxlan: Don't override user-added entries with ext-learned ones (Ivan Vecera) [1693316] - [netdrv] vxlan: Mark user-added FDB entries (Ivan Vecera) [1693316] - [netdrv] vxlan: vxlan_fdb_notify(): Make switchdev notification configurable (Ivan Vecera) [1693316] - [netdrv] vxlan: __vxlan_fdb_delete(): Drop unused argument vid (Ivan Vecera) [1693316] - [netdrv] vxlan: support NTF_USE refresh of fdb entries (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d_port_8472: New test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add an ECN decap test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add an ECN encap test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add a TOS test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add a TTL test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Reconfigure & rerun tests (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add unicast test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add flood test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add ping test (Ivan Vecera) [1693316] - [net] selftests: forwarding: Add a skeleton of vxlan_bridge_1d (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Add link_stats_rx_errors_get() (Ivan Vecera) [1693316] - [net] selftests: forwarding: ping{6, }_do(): Allow passing ping arguments (Ivan Vecera) [1693316] - [net] selftests: forwarding: ping{6, }_test(): Add description argument (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Add in_ns() (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Support NUM_NETIFS of 0 (Ivan Vecera) [1693316] - [net] skb_scrub_packet(): Scrub offload_fwd_mark (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: extract ping and ping6 so they can be reused (Ivan Vecera) [1693316] - [net] selftests: forwarding: README: Require diagrams (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Extract interface-init functions (Ivan Vecera) [1693316] - [net] selftests: forwarding: tc_rule_stats_get: Parameterize direction (Ivan Vecera) [1693316] - [net] selftests: forwarding: multipath_eval(): Improve style (Ivan Vecera) [1693316] - [net] selftests: forwarding: Move multipath_eval() to lib.sh (Ivan Vecera) [1693316] - [net] selftests: Add test_vxlan_fdb_changelink.sh (Ivan Vecera) [1690309] - [netdrv] vxlan: changelink: Fix handling of default remotes (Ivan Vecera) [1690309] - [netdrv] vxlan: Fix error path in __vxlan_dev_create() (Ivan Vecera) [1690309] - [netdrv] vxlan: Unmark offloaded bit on replaced FDB entries (Ivan Vecera) [1690309] - [net] bridge: switchdev: Allow clearing FDB entry offload indication (Ivan Vecera) [1690309] - [netdrv] vxlan: Notify for each remote of a removed FDB entry (Ivan Vecera) [1690309] - [netdrv] vxlan: Support marking RDSTs as offloaded (Ivan Vecera) [1690309] - [netdrv] vxlan: Add vxlan_fdb_find_uc() for FDB querying (Ivan Vecera) [1690309] - [netdrv] vxlan: Add switchdev notifications (Ivan Vecera) [1690309] - [netdrv] net: Add netif_is_vxlan() (Ivan Vecera) [1690309] - [net] inet: Refactor INET_ECN_decapsulate() (Ivan Vecera) [1690309] - [netdrv] vxlan: Export address checking functions (Ivan Vecera) [1690309] - [net] vxlan: Remove duplicated include from vxlan.h (Ivan Vecera) [1690309] - [netdrv] geneve: correctly handle ipv6.disable module parameter (Jiri Benc) [1692390] - [net] ipv6: sit: reset ip header pointer in ipip6_rcv (Lorenzo Bianconi) [1691626] - [net] vxlan: Don't call gro_cells_destroy() before device is unregistered (Andrea Claudi) [1692499] - [net] xsk: do not remove umem from netdevice on fall-back to copy-mode (Petr Oros) [1690568] - [net] xsk: Check if a queue exists during umem setup (Petr Oros) [1690568] - [net] xsk: simplify xdp_clear_umem_at_qid implementation (Petr Oros) [1690568] - [net] ethtool: don't allow disabling queues with umem installed (Petr Oros) [1690568] - [net] ethtool: rename local variable max -> curr (Petr Oros) [1690568] - [net] xsk: fix bug when trying to use both copy and zero-copy on one queue id (Petr Oros) [1690568] - [net] add umem reference in netdev{_rx}_queue (Petr Oros) [1690568] - [net] xsk: remove unnecessary assignment (Petr Oros) [1690568] - [net] xsk: fix return value of xdp_umem_assign_dev() (Petr Oros) [1690568] - [net] xsk: don't allow umem replace at stack level (Petr Oros) [1690568] - [net] xsk: refactor xdp_umem_assign_dev() (Petr Oros) [1690568] - [net] update real_num_rx_queues even when !CONFIG_SYSFS (Petr Oros) [1690568] - [net] core: add __netdev_sent_queue as variant of __netdev_tx_sent_queue (Petr Oros) [1690127] - [net] net: do not abort bulk send on BQL status (Petr Oros) [1690129] - [net] net: bql: add __netdev_tx_sent_queue() (Petr Oros) [1690129] - [net] net: ip6_gre: fix possible NULL pointer dereference in ip6erspan_set_version (Lorenzo Bianconi) [1666315] - [net] net: ip6_gre: initialize erspan_ver just for erspan tunnels (Lorenzo Bianconi) [1666315] - [net] net: ip6_gre: always reports o_key to userspace (Lorenzo Bianconi) [1666315] - [net] net: ip_gre: always reports o_key to userspace (Lorenzo Bianconi) [1666315] - [net] tcp: handle inet_csk_reqsk_queue_add() failures (Guillaume Nault) [1690157] - [net] ip_gre: use erspan key field for tunnel lookup (Lorenzo Bianconi) [1664570] - [net] ip6_gre: simplify gre header parsing in ip6gre_err (Lorenzo Bianconi) [1664570] - [net] ipv4: use a dedicated counter for icmp_v4 redirect packets (Lorenzo Bianconi) [1664209] - [net] virtchnl: Fix off by one error (Ivan Vecera) [1690114] - [net] virtchnl: white space and reorder (Ivan Vecera) [1690114] - [net] i40e: Update status codes (Ivan Vecera) [1690114] - [net] ethtool: Add WAKE_FILTER and RX_CLS_FLOW_WAKE (Ivan Vecera) [1690091] - [net] geneve: allow to clear ttl inherit (Hangbin Liu) [1671251] - [net] geneve: add ttl inherit support (Hangbin Liu) [1671251] - [net] tipc: fix a double kfree_skb() (Jon Maloy) [1684290] - [net] vxlan: Fix GRO cells race condition between receive and link delete (Andrea Claudi) [1687046] - [net] sock: consistent handling of extreme SO_SNDBUF/SO_RCVBUF values (Guillaume Nault) [1686564] - [net] tun: implement carrier change (Guillaume Nault) [1686566] - [net] ip6_tunnel: respect ttl inherit for ip6tnl (Hangbin Liu) [1664944] - [net] ip6_gre: update version related info when changing link (Hangbin Liu) [1664900] - [net] ipv4/route: fail early when inet dev is missing (Paolo Abeni) [1685424] - [net] bonding/802.3ad: fix link_failure_count tracking (Matteo Croce) [1657905] - [net] bonding: avoid possible dead-lock (Matteo Croce) [1657905] - [net] bonding: fix length of actor system (Matteo Croce) [1657905] - [net] bonding: fix warning message (Matteo Croce) [1657905] - [net] bonding: pass link-local packets to bonding master also. (Matteo Croce) [1657905]- [infiniband] IB/usnic: fix spelling mistake "unvalid" -> "invalid" (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Get rid of ucontext->tgid (Jonathan Toppins) [1685307] - [infiniband] RDMA/usnic: Do not use ucontext->tgid (Jonathan Toppins) [1685307] - [infiniband] infiniband: remove redundant condition check before debugfs_remove (Jonathan Toppins) [1685307] - [infiniband] RDMA/rdmavt: Fix rvt_create_ah function signature (Jonathan Toppins) [1685307] - [infiniband] RDMA/drivers: Use core provided API for registering device attributes (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Remove unnecessary enum values (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move ruc_loopback to rdmavt (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move send completion logic to rdmavt (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move copy SGE logic into rdmavt (Jonathan Toppins) [1685307] - [infiniband] RDMA/rxe: Remove unused addr_same() (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: avoid srq memory leak (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: replace kvfree with vfree (Jonathan Toppins) [1685307] - [infiniband] RDMA/drivers: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/drivers: Use dev_err/dbg/etc instead of pr_* + ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] IB/rxe: fixes for rdma read retry (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: avoid back-to-back retries (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Refactor lookup memory function (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Avoid NULL check when search is successful (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Change pool state enums to capital letters (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Replace spinlock with rwlock (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Simplify rxe_find_route() to avoid GID query for netdev (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: remove redudant qpn check (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: vary the source udp port for receive scaling (Jonathan Toppins) [1685307] - [infiniband] iser: set sector for ambiguous mr status errors (Jonathan Toppins) [1685307] - [net] svcrdma: Remove try_module_get from backchannel (Jonathan Toppins) [1685307] - [net] svcrdma: Remove ->release_rqst call in bc reply handler (Jonathan Toppins) [1685307] - [net] xprtrdma: Clean up xprt_rdma_disconnect_inject (Jonathan Toppins) [1685307] - [net] xprtrdma: Add documenting comments (Jonathan Toppins) [1685307] - [net] xprtrdma: Report when there were zero posted Receives (Jonathan Toppins) [1685307] - [net] xprtrdma: Move rb_flags initialization (Jonathan Toppins) [1685307] - [net] xprtrdma: Don't disable BH's in backchannel server (Jonathan Toppins) [1685307] - [net] xprtrdma: Remove memory address of "ep" from an error message (Jonathan Toppins) [1685307] - [net] xprtrdma: Rename rpcrdma_qp_async_error_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Simplify RPC wake-ups on connect (Jonathan Toppins) [1685307] - [net] xprtrdma: Re-organize the switch() in rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Eliminate "connstate" variable from rpcrdma_conn_upcall() (Jonathan Toppins) [1685307] - [net] xprtrdma: Conventional variable names in rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Rename rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] sunrpc: Report connect_time in seconds (Jonathan Toppins) [1685307] - [net] sunrpc: Fix connect metrics (Jonathan Toppins) [1685307] - [net] xprtrdma: Name MR trace events consistently (Jonathan Toppins) [1685307] - [net] xprtrdma: Explicitly resetting MRs is no longer necessary (Jonathan Toppins) [1685307] - [net] xprtrdma: Create more MRs at a time (Jonathan Toppins) [1685307] - [net] xprtrdma: xprt_release_rqst_cong is called outside of transport_lock (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Log sysfs 'dev_id' accesses from userspace (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Use dev_port to expose network interface port numbers (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Ensure that MTU isn't less than minimum permitted (Jonathan Toppins) [1685307] - [infiniband] IB/srp: Remove unnecessary unlikely() (Jonathan Toppins) [1685307] - [infiniband] IB/core: Fix oops in netdev_next_upper_dev_rcu() (Jonathan Toppins) [1685307] - [infiniband] IB/umem: Set correct address to the invalidation function (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Add GIDs while changing MAC addr only for registered ndev (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Fix comment for hw stats init for port == 0 (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Refactor ib_register_device() function (Jonathan Toppins) [1685307] - [infiniband] IB/mlx4: Refer to the device kobject instead of ports_parent (Jonathan Toppins) [1685307] - [include] RDMA/core: Allow existing drivers to set one sysfs group per device (Jonathan Toppins) [1685307] - [infiniband] RDMA/umad: Use kernel API to allocate umad indexes (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use kernel API to allocate uverbs indexes (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Increase total number of RDMA ports across all devices (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rename ports_parent to ports_kobj (Jonathan Toppins) [1685307] - [infiniband] RDMA/nldev: Allow IB device rename through RDMA netlink (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Implement IB device rename function (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Annotate timeout as unsigned long (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Align multiple functions to kernel coding style (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Remove unused timeout_ms parameter from cma_resolve_iw_route() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cm: Respect returned status of cm_init_av_by_path (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Protect from reentry to resource return path (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Release task struct which was hold by CM_ID object (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Consolidate task name updates in one place (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Un-inline set task implementation (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Check error status of rdma_find_ndev_for_src_ip_rcu (Jonathan Toppins) [1685307] - [include] IB/mlx4: Avoid implicit enumerated type conversion (Jonathan Toppins) [1685307] - [infiniband] RDMA/netlink: Simplify netlink listener existence check (Jonathan Toppins) [1685307] - [infiniband] RDMA: Remove unused parameter from ib_modify_qp_is_ok() (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Fix RCU annotation for radix slot deference (Jonathan Toppins) [1685307] - [infiniband] RDMA: Fix building with CONFIG_MMU=n (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Introduce and use cma_ib_acquire_dev() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Introduce and use cma_acquire_dev_by_src_ip() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Allow accepting requests for multi port rdma device (Jonathan Toppins) [1685307] - [infiniband] IB/rdmavt: Rename check_send_wqe as setup_wqe (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Acquire and release mmap_sem on page range (Jonathan Toppins) [1685307] - [infiniband] IB/sa: simplify return code logic for ib_nl_send_msg() (Jonathan Toppins) [1685307] - [infiniband] RDMA/ulp: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Use dev_err/dbg/etc instead of pr_* + ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA: Fully setup the device name in ib_register_device (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/umem: Fix potential addition overflow (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Minor optimizations (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Avoid synchronize_srcu in the ODP MR destruction path (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Handle a half-complete start/end sequence (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Get rid of per_mm->notifier_count (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Use umem->owning_mm inside ODP (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Move all the ODP related stuff out of ucontext and into per_mm (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Get rid of struct ib_umem.odp_data (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Make ib_umem_odp into a sub structure of ib_umem (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Use ib_umem_odp in all function signatures connected to ODP (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Do not use current->tgid to track the mm_struct (Jonathan Toppins) [1685307] - [infiniband] RDMA/ucontext: Get rid of the old disassociate flow (Jonathan Toppins) [1685307] - [infiniband] RDMA/ucontext: Add a core API for mmaping driver IO memory (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Fix error unwind in ib_uverbs_add_one (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Properly return the error code of rdma_set_src_addr_rcu (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Remove is_closed from ib_uverbs_file (Jonathan Toppins) [1685307] - [include] IB/rxe: Revise the ib_wr_opcode enum (Jonathan Toppins) [1685307] - [include] RDMA: Remove duplicated include from ib_addr.h (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Consider net ns of gid attribute for RoCE (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Introduce rdma_read_gid_attr_ndev_rcu() to check GID attribute (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Simplify roce_resolve_route_from_path() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Protect against changing dst->dev during destination resolve (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Refer to network type instead of device type (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use common code flow for IPv4/6 for addr resolve (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rename rdma_copy_addr to rdma_copy_src_l2_addr (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Introduce and use rdma_set_src_addr() between IPv4 and IPv6 (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Let protocol specific function typecast sockaddr structure (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Avoid unnecessary sa_family overwrite (Jonathan Toppins) [1685307] - [infiniband] RDMA/core Introduce and use rdma_find_ndev_for_src_ip_rcu (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Schedule multi RC/UC packets instead of posting (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Move flow resources initialization (Jonathan Toppins) [1685307] - [infiniband] IB/uverbs: Add IDRs array attribute type to ioctl() interface (Jonathan Toppins) [1685307] - [include] RDMA/core: Document QP @event_handler function (Jonathan Toppins) [1685307] - [include] RDMA/core: Document CM @event_handler function (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Assign device ifindex before publishing the device (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Follow correct unregister order between sysfs and cgroup (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Restore lockdep check while downgrading lock (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Define client_data_lock as rwlock instead of spinlock (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use simpler spin lock irq API from blocking context (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Remove context entries from list while unregistering device (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use simplified list_for_each (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: No need to protect kfree with spin lock and semaphore (Jonathan Toppins) [1685307] - [infiniband] RDMA/{cma, core}: Avoid callback on rdma_addr_cancel() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rate limit MAD error messages (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Fail early if unsupported QP is provided (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use device.groups to initialize device attributes (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use cdev_device_add() instead of cdev_add() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Depend on device_add() to add device attributes (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Replace open-coded variant of get_device (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Declare closing variable as boolean (Jonathan Toppins) [1685307] - [infiniband] IB/core: Add an unbound WQ type to the new CQ API (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Add generic function to fill in flow action object (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Add UVERBS_ATTR_CONST_IN to the specs language (Jonathan Toppins) [1685307] - [netdrv] ibmvnic: Fix completion structure initialization (Steve Best) [1697103] - [rpmspec] redhat: limit headers_install_all to arches we care about (Denys Vlasenko) [1692404] - [lib] ida: Add new API (Jonathan Toppins) [1697588] - [edac] EDAC: Drop per-memory controller buses (Frank Ramsay) [1686477] - [edac] EDAC: Don't add devices under /sys/bus/edac (Frank Ramsay) [1686477] - [x86] x86/platform/UV: Use efi_runtime_lock to serialise BIOS calls (Frank Ramsay) [1677695]- [pci] PCI: pciehp: Fix re-enabling the slot marked for safe removal (Myron Stowe) [1695922] - [rpmspec] redhat: Enable gdb_index (Juri Lelli) [1696747] - [fs] ovl: Do not lose security.capability xattr over metadata file copy-up (Vivek Goyal) [1694757] - [fs] ovl: During copy up, first copy up data and then xattrs (Vivek Goyal) [1694757]- [netdrv] mark the intel igc driver as tech preview (David Arcari) [1495358] - [netdrv] igc: Remove unneeded hw_dbg prints (David Arcari) [1495358] - [netdrv] igc: Fix the typo in igc_base.h header definition (David Arcari) [1495358] - [netdrv] igc: Add support for the ntuple feature (David Arcari) [1495358] - [netdrv] igc: Add support for statistics (David Arcari) [1495358] - [netdrv] igc: Extend the ethtool supporting (David Arcari) [1495358] - [netdrv] igc: Add multiple receive queues control supporting (David Arcari) [1495358] - [netdrv] igc: Use struct_size() helper (David Arcari) [1495358] - [netdrv] igc: Add ethtool support (David Arcari) [1495358] - [netdrv] igc: Remove the 'igc_get_phy_id_base' method (David Arcari) [1495358] - [netdrv] igc: Remove the 'igc_read_mac_addr_base' method (David Arcari) [1495358] - [netdrv] igc: Remove unneeded code (David Arcari) [1495358] - [netdrv] igc: Remove unused code (David Arcari) [1495358] - [netdrv] igc: Fix code redundancy (David Arcari) [1495358] - [netdrv] igc: Remove unreachable code from igc_phy.c file (David Arcari) [1495358] - [netdrv] igc: Remove obsolete IGC_ERR define (David Arcari) [1495358] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (David Arcari) [1495358] - [netdrv] igc: Clean up code (David Arcari) [1495358] - [netdrv] igc: Tidy up some white space (David Arcari) [1495358] - [netdrv] igc: fix error return handling from call to netif_set_real_num_tx_queues (David Arcari) [1495358] - [netdrv] igc: Remove set but not used variable 'pci_using_dac' (David Arcari) [1495358] - [netdrv] igc: Remove set but not used variables 'ctrl_ext, link_mode' (David Arcari) [1495358] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (David Arcari) [1495358] - [netdrv] igc: Add watchdog (David Arcari) [1495358] - [netdrv] igc: Add setup link functionality (David Arcari) [1495358] - [netdrv] igc: Add code for PHY support (David Arcari) [1495358] - [netdrv] igc: Add NVM support (David Arcari) [1495358] - [netdrv] igc: Add HW initialization code (David Arcari) [1495358] - [netdrv] igc: Add transmit and receive fastpath and interrupt handlers (David Arcari) [1495358] - [netdrv] igc: Add support for Tx/Rx rings (David Arcari) [1495358] - [netdrv] igc: Add interrupt support (David Arcari) [1495358] - [netdrv] igc: Add netdev (David Arcari) [1495358] - [netdrv] igc: Add support for PF (David Arcari) [1495358] - [netdrv] igc: Add skeletal frame for Intel(R) 2.5G Ethernet Controller support (David Arcari) [1495358] - [s390] virtio-ccw: wire up ->bus_name callback (Cornelia Huck) [1695630] - [s390] s390/virtio: handle find on invalid queue gracefully (Cornelia Huck) [1695630] - [s390] virtio/s390: fix race in ccw_io_helper() (Cornelia Huck) [1695630] - [s390] virtio/s390: avoid race on vcdev->config (Cornelia Huck) [1695630] - [kvm] KVM: s390: make bitmap declaration consistent (Thomas Huth) [1695090] - [kvm] KVM: s390: drop obsolete else path (Thomas Huth) [1695090] - [kvm] KVM: s390: clarify kvm related kernel message (Thomas Huth) [1695090] - [kvm] s390: vsie: Use effective CRYCBD.31 to check CRYCBD validity (Thomas Huth) [1695090] - [kvm] KVM: s390: fix kmsg component kvm-s390 (Thomas Huth) [1695090] - [kvm] KVM: s390: unregister debug feature on failing arch init (Thomas Huth) [1695090] - [kvm] KVM: s390/vsie: avoid sparse warning (Thomas Huth) [1695090]- [powerpc] powerpc: use mm zones more sensibly (David Gibson) [1654978] - [s390] s390/mem_detect: add missing include (Philipp Rudo) [1695615] - [s390] s390: avoid vmlinux segments overlap (Philipp Rudo) [1695615] - [s390] s390/decompressor: add missing FORCE to build targets (Philipp Rudo) [1695615] - [s390] s390: move ipl block and cmd line handling to early boot phase (Philipp Rudo) [1695615] - [s390] s390/sclp: introduce sclp_early_get_hsa_size (Philipp Rudo) [1695615] - [s390] s390/mem_detect: add info source debug print (Philipp Rudo) [1695615] - [s390] s390/mem_detect: replace tprot loop with binary search (Philipp Rudo) [1695615] - [s390] s390/mem_detect: use SCLP info for continuous memory detection (Philipp Rudo) [1695615] - [s390] s390/mem_detect: introduce z/VM specific diag260 call (Philipp Rudo) [1695615] - [s390] s390/mem_detect: introduce SCLP storage info (Philipp Rudo) [1695615] - [s390] s390: introduce .boot.data section compile time validation (Philipp Rudo) [1695615] - [s390] s390/mem_detect: move tprot loop to early boot phase (Philipp Rudo) [1695615] - [s390] s390/sclp: move sclp_early_read_info to sclp_early_core.c (Philipp Rudo) [1695615] - [s390] s390: introduce .boot.data section (Philipp Rudo) [1695615] - [s390] s390/decompressor: clean up and rename compressed/misc.c (Philipp Rudo) [1695615] - [s390] s390: rescue initrd as early as possible (Philipp Rudo) [1695615] - [s390] s390/sclp: simplify early hsa_size detection (Philipp Rudo) [1695615] - [s390] s390/decompressor: get rid of .bss usage (Philipp Rudo) [1695615] - [s390] s390/decompressor: rework uncompressed image info collection (Philipp Rudo) [1695615] - [s390] s390: remove decompressor's head.S (Philipp Rudo) [1695615] - [s390] s390: clean up stacks setup (Philipp Rudo) [1695615] - [s390] s390: add initial 64-bit restart PSW (Philipp Rudo) [1695615] - [s390] s390/hibernate: fix error handling when suspend cpu != resume cpu (Philipp Rudo) [1695615] - [s390] s390/decompressor: support extra debug flags (Philipp Rudo) [1695615] - [s390] s390/build: add *.o.chkbss files to targets list (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid packing *.o.chkbss files into startup.a (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid constant startup.a rebuilds (Philipp Rudo) [1695615] - [s390] s390/boot: block uncompressed vmlinux booting attempts (Philipp Rudo) [1695615] - [s390] s390/decompressor: correct EXCLUDE_FILE construct (Philipp Rudo) [1695615] - [s390] s390: move _text to an actual .text start (Philipp Rudo) [1695615] - [s390] s390: correct _stext offset (Philipp Rudo) [1695615] - [s390] s390: get rid of the first mb of uncompressed image (Philipp Rudo) [1695615] - [s390] s390: remove unused _ehead symbol (Philipp Rudo) [1695615] - [s390] s390: put expoline execute-trampolines into .text section (Philipp Rudo) [1695615] - [s390] s390/decompressor: discard ___kcrctab section (Philipp Rudo) [1695615] - [s390] s390/setup: do not reserve the decompressor code (Philipp Rudo) [1695615] - [s390] s390/decompressor: support uncompressed kernel (Philipp Rudo) [1695615] - [init] init/Kconfig: add an option for uncompressed kernel (Philipp Rudo) [1695615] - [s390] s390/decompressor: allow to pack uncompressed vmlinux.bin into piggy.o (Philipp Rudo) [1695615] - [s390] s390/decompressor: allow preprocessor in piggy.o linker script (Philipp Rudo) [1695615] - [s390] s390/decompressor: extend .bss check for early code (Philipp Rudo) [1695615] - [s390] s390: add custom target and make path extension optional for .bss check (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid repeating objects list in Makefile (Philipp Rudo) [1695615] - [s390] s390/decompressor: reuse lib/mem.S for mem functions (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid reusing uncompressed image objects (Philipp Rudo) [1695615] - [s390] s390/als: avoid .init.* sections usage (Philipp Rudo) [1695615] - [s390] s390/decompressor: rename entry point to startup_decompressor (Philipp Rudo) [1695615] - [s390] s390/boot: make head.S and als.c be part of the decompressor only (Philipp Rudo) [1695615] - [s390] s390/decompressor: trim the kernel image up to 1M (Philipp Rudo) [1695615] - [s390] s390: remove uncompressed kernel image build (Philipp Rudo) [1695615] - [s390] s390/decompressor: correct build flags (Philipp Rudo) [1695615] - [s390] s390/build: remove obsolete -mkernel-backchain flag (Philipp Rudo) [1695615] - [tools] tools/power turbostat: return the exit status of a command (David Arcari) [1642739] - [misc] misc: hpilo: Do not claim unsupported hardware (Joseph Szczypek) [1665635] - [misc] misc: hpilo: Exclude unsupported device via blacklist (Joseph Szczypek) [1665635]- [fs] xfs: set buffer ops when repair probes for btree type (Bill O'Donnell) [1689281] - [fs] xfs: end sync buffer I/O properly on shutdown error (Bill O'Donnell) [1689281] - [fs] xfs: xfs_fsops: drop useless LIST_HEAD (Bill O'Donnell) [1689281] - [fs] xfs: xfs_buf: drop useless LIST_HEAD (Bill O'Donnell) [1689281] - [fs] iomap: fix a use after free in iomap_dio_rw (Bill O'Donnell) [1689281] - [fs] xfs: reallocate realtime summary cache on growfs (Bill O'Donnell) [1689281] - [fs] xfs: stringify scrub types in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: stringify btree cursor types in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: move XFS_INODE_FORMAT_STR mappings to libxfs (Bill O'Donnell) [1689281] - [fs] xfs: move XFS_AG_BTREE_CMP_FORMAT_STR mappings to libxfs (Bill O'Donnell) [1689281] - [fs] xfs: fix symbolic enum printing in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: fix function pointer type in ftrace format (Bill O'Donnell) [1689281] - [fs] xfs: Fix x32 ioctls when cmd numbers differ from ia32. (Bill O'Donnell) [1689281] - [fs] xfs: Fix bulkstat compat ioctls on x32 userspace. (Bill O'Donnell) [1689281] - [fs] xfs: Align compat attrlist_by_handle with native implementation. (Bill O'Donnell) [1689281] - [fs] xfs: require both realtime inodes to mount (Bill O'Donnell) [1689281] - [fs] xfs: cache minimum realtime summary level (Bill O'Donnell) [1689281] - [fs] xfs: count inode blocks correctly in inobt scrub (Bill O'Donnell) [1689281] - [fs] xfs: precalculate cluster alignment in inodes and blocks (Bill O'Donnell) [1689281] - [fs] xfs: precalculate inodes and blocks per inode cluster (Bill O'Donnell) [1689281] - [fs] xfs: add a block to inode count converter (Bill O'Donnell) [1689281] - [fs] xfs: remove xfs_rmap_ag_owner and friends (Bill O'Donnell) [1689281] - [fs] xfs: const-ify xfs_owner_info arguments (Bill O'Donnell) [1689281] - [fs] xfs: streamline defer op type handling (Bill O'Donnell) [1689281] - [fs] xfs: idiotproof defer op type configuration (Bill O'Donnell) [1689281] - [fs] xfs: clean up indentation issues, remove an unwanted space (Bill O'Donnell) [1689281] - [fs] xfs: libxfs: move xfs_perag_put late (Bill O'Donnell) [1689281] - [fs] xfs: split up the xfs_reflink_end_cow work into smaller transactions (Bill O'Donnell) [1689281] - [crypto] crypto: testmgr - add AES-CFB tests (Neil Horman) [1687897] - [scsi] scsi: iscsi: flush running unbind operations when removing a session (Maurizio Lombardi) [1695007] - [crypto] crypto: vmx - fix copy-paste error in CTR mode (Herbert Xu) [1693350] - [rpmspec] Fix cross builds (Jiri Olsa) [1694956] - [lib] sbitmap: order READ/WRITE freed instance and setting clear bit (Ming Lei) [1694521] - [block] blk-mq: fix sbitmap ws_active for shared tags (Ming Lei) [1694521] - [block] blk-mq: update comment for blk_mq_hctx_has_pending() (Ming Lei) [1694521] - [block] blk-mq: use blk_mq_put_driver_tag() to put tag (Ming Lei) [1694521] - [include] sbitmap: trivial - update comment for sbitmap_deferred_clear_bit (Ming Lei) [1694521] - [block] blkcg: Fix kernel-doc warnings (Ming Lei) [1694521] - [block] block: Unexport blk_mq_add_to_requeue_list() (Ming Lei) [1694521] - [block] block: add BLK_MQ_POLL_CLASSIC for hybrid poll and return EINVAL for unexpected value (Ming Lei) [1694521] - [include] blk-mq: remove unused 'nr_expired' from blk_mq_hw_ctx (Ming Lei) [1694521] - [block] loop: access lo_backing_file only when the loop device is Lo_bound (Ming Lei) [1694521] - [block] blk-mq: use blk_mq_sched_mark_restart_hctx to set RESTART (Ming Lei) [1694521] - [kernel] blkcg: annotate implicit fall through (Ming Lei) [1694521] - [block] block: Replace function name in string with __func__ (Ming Lei) [1694521] - [block] block: fix NULL pointer dereference in register_disk (Ming Lei) [1694521] - [fs] fs: fix guard_bio_eod to check for real EOD errors (Ming Lei) [1694521] - [block] blk-mq: use HCTX_TYPE_DEFAULT but not 0 to index blk_mq_tag_set->map (Ming Lei) [1694521] - [include] block: remove bvec_iter_rewind() (Ming Lei) [1694521] - [block] block: don't use bio->bi_vcnt to figure out segment number (Ming Lei) [1694521] - [fs] btrfs: look at bi_size for repair decisions (Ming Lei) [1694521] - [block] block: avoid setting none scheduler if it's already none (Ming Lei) [1694521] - [block] block: avoid setting wbt_lat_usec to current value (Ming Lei) [1694521] - [block] blk-sysfs: Rework documention of __blk_release_queue (Ming Lei) [1694521] - [block] blk-cgroup: Fix doc related to blkcg_exit_queue (Ming Lei) [1694521] - [block] block: kill QUEUE_FLAG_FLUSH_NQ (Ming Lei) [1694521] - [block] block: avoid setting nr_requests to current value (Ming Lei) [1694521] - [block] blk-mq: save default hctx into ctx->hctxs for not-supported type (Ming Lei) [1694521] - [block] blk-mq: save queue mapping result into ctx directly (Ming Lei) [1694521] - [block] block: mq-deadline: Fix write completion handling (Ming Lei) [1694521] - [crypto] crypto: user - fix leaking uninitialized memory to userspace (Herbert Xu) [1657880] {CVE-2018-19854} - [char] ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier (Xiaojun Tan) [1689480] - [infiniband] usnic_verbs: fix deadlock (Govindarajulu Varadarajan) [1688505] - [infiniband] IB/usnic: Fix locking when unregistering (Govindarajulu Varadarajan) [1688505] - [infiniband] IB/usnic: Fix potential deadlock (Govindarajulu Varadarajan) [1688505] - [netdrv] net: hns3: fix improper error handling in the hclge_init_ae_dev() (Xiaojun Tan) [1687060] - [netdrv] net: hns3: fix netif_napi_del() not do problem when unloading (Xiaojun Tan) [1687060] - [netdrv] net: hns3: Fix NULL deref when unloading driver (Xiaojun Tan) [1687060] - [netdrv] net: hns3: Modify the order of initializing command queue register (Xiaojun Tan) [1687060] - [netdrv] net: hns3: remove the Redundant put_vector in hns3_client_uninit (Xiaojun Tan) [1687060] - [netdrv] net: hns3: reuse reinitialization interface in the hns3_set_channels (Xiaojun Tan) [1687060]- [powercap] powercap/intel_rapl: add Ice Lake mobile (Steve Best) [1483427] - [x86] x86/CPU: Add Icelake model number (Steve Best) [1483427] - [watchdog] watchdog/hpwdt: Update Kconfig documentation (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Update driver version. (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Do not claim unsupported hardware (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Exclude via blacklist (Joseph Szczypek) [1664861] - [fs] autofs: add strictexpire mount option (Ian Kent) [1672134] - [fs] autofs: change catatonic setting to a bit flag (Ian Kent) [1672134] - [fs] autofs: simplify parse_options() function call (Ian Kent) [1672134] - [fs] autofs: add AUTOFS_EXP_FORCED flag (Ian Kent) [1672134] - [fs] autofs: make expire flags usage consistent with v5 params (Ian Kent) [1672134] - [fs] autofs: make autofs_expire_indirect() static (Ian Kent) [1672134] - [fs] autofs: make autofs_expire_direct() static (Ian Kent) [1672134] - [fs] autofs: fix clearing AUTOFS_EXP_LEAVES in autofs_expire_indirect() (Ian Kent) [1672134] - [fs] autofs: fix inconsistent use of now variable (Ian Kent) [1672134] - [md] md: Fix failed allocation of md_register_thread (Nigel Croxon) [1665346] - [md] It's wrong to add len to sector_nr in raid10 reshape twice (Nigel Croxon) [1665346] - [md] raid5: set write hint for PPL (Nigel Croxon) [1665346] - [netdrv] amd-xgbe: Fix mdio access for non-zero ports and clause 45 PHYs (Gary Hook) [1669565]- [x86] x86/retpolines: Disable switch jump tables when retpolines are enabled (Waiman Long) [1688258] - [x86] x86, retpolines: Raise limit for generating indirect calls from switch-case (Waiman Long) [1688258] - [net] vsock/virtio: fix kernel panic from virtio_transport_reset_no_sock (Stefano Garzarella) [1676595] - [net] vsock/virtio: reset connected sockets on device removal (Stefano Garzarella) [1676595] - [net] vsock/virtio: fix kernel panic after device hot-unplug (Stefano Garzarella) [1676595] - [powerpc] powerpc/livepatch: return -ERRNO values in save_stack_trace_tsk_reliable() (Joe Lawrence) [1659856] - [powerpc] powerpc/livepatch: small cleanups in save_stack_trace_tsk_reliable() (Joe Lawrence) [1659856] - [powerpc] powerpc/livepatch: relax reliable stack tracer checks for first-frame (Joe Lawrence) [1659856] - [powerpc] powerpc/64s: Make reliable stacktrace dependency clearer (Joe Lawrence) [1659856] - [powerpc] powerpc/64s: Clear on-stack exception marker upon exception return (Joe Lawrence) [1659856] - [infiniband] iw_cxgb4: Support FW write completion WR (Arjun Vynipadath) [1671320] - [infiniband] iw_cxgb4: RDMA write with immediate support (Arjun Vynipadath) [1671320] - [infiniband] rdma/cxgb4: fix some info leaks (Arjun Vynipadath) [1671320] - [infiniband] rdma/cxgb4: Add support for 64Byte cqes (Arjun Vynipadath) [1671320] - [pci] pci: remove unused functionality (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] aacraid: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] be2iscsi: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] mpt3sas: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] qla2xxx: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] qla4xxx: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] megaraid_sas: add removed id table" (Tomas Henzl) [1622638] - [scsi] lfpc: remove Lancer FCoE (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] lpfc: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] lfpc: add Lancer FCoE to the removed devices" (Tomas Henzl) [1622638]- [kernel] printk: Export console_printk (Prarit Bhargava) [1642870] - [video] fbcon: Silence fbcon logo on 'quiet' boots (Prarit Bhargava) [1642870] - [scsi] scsi: ibmvscsi: Fix empty event pool access during host removal (Steve Best) [1692463] - [scsi] scsi: ibmvscsi: Protect ibmvscsi_head from concurrent modificaiton (Steve Best) [1692463] - [scsi] scsi: ibmvscsi: Improve strings handling (Steve Best) [1692463] - [x86] x86/mce: Handle varying MCA bank counts (David Arcari) [1668779] - [block] virtio_blk: add discard and write zeroes support (Stefano Garzarella) [1692939] - [arm64] arm64: kaslr: ensure randomized quantities are clean also when kaslr is off (Mark Salter) [1673068] - [arm64] arm64: kaslr: ensure randomized quantities are clean to the PoC (Mark Salter) [1673068] - [tools] perf annotate: Fix getting source line failure (Michael Petlan) [1614435] - [infiniband] IB/hfi1: Remove overly conservative VM_EXEC flag check (Alex Estrin) [1680018]- [scsi] scsi: qla2xxx: Fix NULL pointer crash due to stale CPUID (Himanshu Madhani) [1685013] - [scsi] scsi: core: Avoid that system resume triggers a kernel warning (Ewan Milne) [1691903] - [scsi] scsi: core: reset host byte in DID_NEXUS_FAILURE case (Ewan Milne) [1691903] - [scsi] scsi: core: Synchronize request queue PM status only on successful resume (Ewan Milne) [1691903] - [scsi] scsi: sd: Fix cache_type_store() (Ewan Milne) [1691903] - [scsi] scsi: sd: use mempool for discard special page (Ewan Milne) [1691903] - [scsi] scsi: core: Remove scsi_block_when_processing_errors: message (Ewan Milne) [1691903] - [scsi] scsi: core: Allow state transitions from OFFLINE to BLOCKED (Ewan Milne) [1691903] - [scsi] scsi: core: remove unnecessary unlikely() (Ewan Milne) [1691903] - [scsi] scsi: st: remove redundant pointer STbuffer (Ewan Milne) [1691903] - [scsi] scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock (Ewan Milne) [1691903] - [fs] scsi: sysfs: Introduce sysfs_{un,}break_active_protection() (Ewan Milne) [1691903] - [scsi] scsi sg: remove incorrect scsi command checking logic (Ewan Milne) [1691903] - [scsi] scsi: read host_busy via scsi_host_busy() (Ewan Milne) [1691903] - [scsi] scsi: sd: Remove a superfluous assignment (Ewan Milne) [1691903] - [scsi] scsi: don't add scsi command result bytes (Ewan Milne) [1691903] - [scsi] scsi: core: check for equality of result byte values (Ewan Milne) [1691903] - [scsi] scsi: scsi_transport_fc: use 64-bit timestamps consistently (Ewan Milne) [1691903] - [scsi] scsi: sg: clean up gfp_mask in sg_build_indirect (Ewan Milne) [1691903] - [scsi] scsi: core: remove Scsi_Cmnd typedef (Ewan Milne) [1691903] - [netdrv] ibmvnic: Report actual backing device speed and duplex values (Steve Best) [1691862] - [kernel] sched/fair: Fix O(nr_cgroups) in the load balancing path (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Fix insertion in rq->leaf_cfs_rq_list (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Add tmp_alone_branch assertion (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f6544b9c (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] tracing: Do a WARN_ON() if start_thread() in hwlat is called when thread exists (Jerome Marchand) [1693050] - [kernel] ftrace: Add missing check for existing hwlat thread (Jerome Marchand) [1693050] - [kernel] tracing: Do not call start/stop() functions when tracing_on does not change (Jerome Marchand) [1693050]- [scsi] scsi: lpfc: Fixup eq_clr_intr references (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix build error (Dick Kennedy) [1692882] - [scsi] scsi: be2iscsi: lpfc: fix typo (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.1 (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Update Copyright in driver version (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Enhance 6072 log string (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix duplicate log message numbers (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Specify node affinity for queue memory allocation (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Reduce memory footprint for lpfc_queue (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Add loopback testing to trunking mode (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix link speed reporting for 4-link trunk (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix handling of trunk links state reporting (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix protocol support on G6 and G7 adapters (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct boot bios information to FDMI registration (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix HDMI2 registration string for symbolic name (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix fc4type information for FDMI (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix FDMI manufacturer attribute value (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix io lost on host resets (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix mailbox hang on adapter init (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix driver crash in target reset handler (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct localport timeout duration error (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: nvmet: avoid hang / use-after-free when destroying targetport (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Convert bootstrap mbx polling from msleep to udelay (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Coordinate adapter error handling with offline handling (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Stop adapter if pci errors detected (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix deadlock due to nested hbalock call (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix nvmet handling of first burst cmd (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix lpfc_nvmet_mrq attribute handling when 0 (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix nvmet async receive buffer replenishment (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix location of SCSI ktime counters (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix use-after-free mailbox cmd completion (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Resolve irq-unsafe lockdep heirarchy warning in lpfc_io_free (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Resolve inconsistent check of hdwq in lpfc_scsi_cmd_iocb_cmpl (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix error codes in lpfc_sli4_pci_mem_setup() (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix 32-bit format string warning (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix unused variable warning (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: resolve static checker warning in lpfc_sli4_hba_unset (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct __lpfc_sli_issue_iocb_s4 lockdep check (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix calls to dma_set_mask_and_coherent() (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: use dma_set_mask_and_coherent (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Remove set but not used variable 'phys_id' (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix a handful of indentation issues (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix error code if kcalloc() fails (Dick Kennedy) [1692882] - [security] security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock (Ondrej Mosnacek) [1683296] - [security] selinux: add the missing walk_size + len check in selinux_sctp_bind_connect (Ondrej Mosnacek) [1683296] - [security] selinux: fix avc audit messages (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: replace BUG_ONs with WARN_ONs in avc.c (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: log invalid contexts in AVCs (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: replace some BUG_ON()s with a WARN_ON() (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: inline some AVC functions used only once (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: do not override context on context mounts (Ondrej Mosnacek) [1683296] - [security] selinux: never allow relabeling on context mounts (Ondrej Mosnacek) [1683296] - [security] selinux: stop passing MAY_NOT_BLOCK to the AVC upon follow_link (Ondrej Mosnacek) [1683296] - [security] selinux: avoid silent denials in permissive mode under RCU walk (Ondrej Mosnacek) [1683296] - [security] selinux: fix GPF on invalid policy (Ondrej Mosnacek) [1683296] - [security] selinux: overhaul sidtab to fix bug and improve performance (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: use separate table for initial SID lookup (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: make "selinux_policycap_names[]" const char * (Ondrej Mosnacek) [1683296] - [security] selinux: always allow mounting submounts (Ondrej Mosnacek) [1647723 1683296] - [security] selinux: refactor sidtab conversion (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: fix non-MLS handling in mls_context_to_sid() (Ondrej Mosnacek) [1683296] - [security] selinux: check length properly in SCTP bind hook (Ondrej Mosnacek) [1683296] - [security] selinux: policydb - fix byte order and alignment issues (Ondrej Mosnacek) [1668222 1683296] - [security] selinux: Add __GFP_NOWARN to allocation at str_read() (Ondrej Mosnacek) [1683296] - [security] selinux: refactor mls_context_to_sid() and make it stricter (Ondrej Mosnacek) [1683296] - [security] selinux: fix mounting of cgroup2 under older policies (Ondrej Mosnacek) [1683296] - [security] selinux: cleanup dentry and inodes on error in selinuxfs (Ondrej Mosnacek) [1683296] - [security] selinux: constify write_op[] (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netnode (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in avc (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netif (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netport (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in sidtab (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netlink (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in selinuxfs (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in services (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in avtab (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in hooks (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in policydb (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in ebitmap (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in conditional (Ondrej Mosnacek) [1683296] - [fs] fs/proc/kcore.c: fix invalid memory access in multi-page read optimization (Bhupesh Sharma) [1627539] - [fs] proc/kcore: add vmcoreinfo note to /proc/kcore (Bhupesh Sharma) [1627539] - [kernel] crash_core: use VMCOREINFO_SYMBOL_ARRAY() for swapper_pg_dir (Bhupesh Sharma) [1627539] - [fs] proc/kcore: optimize multiple page reads (Bhupesh Sharma) [1627539] - [fs] proc/kcore: clean up ELF header generation (Bhupesh Sharma) [1627539] - [fs] proc/kcore: hold lock during read (Bhupesh Sharma) [1627539] - [fs] proc/kcore: fix memory hotplug vs multiple opens race (Bhupesh Sharma) [1627539] - [fs] proc/kcore: replace kclist_lock rwlock with rwsem (Bhupesh Sharma) [1627539] - [fs] proc/kcore: don't grab lock for memory hotplug notifier (Bhupesh Sharma) [1627539] - [fs] proc/kcore: don't grab lock for kclist_add() (Bhupesh Sharma) [1627539]- [net] Merge branch 'linus/master' into rdma.git for-next (Jonathan Toppins) [1685304] - [netdrv] net: cisco: enic: Replace GFP_ATOMIC with GFP_KERNEL (Jonathan Toppins) [1685304] - [infiniband] RDMA/providers: Remove pointless functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/usnic: Suppress a compiler warning (Jonathan Toppins) [1685304] - [infiniband] IB/usnic: usnic should not select INFINIBAND_USER_ACCESS (Jonathan Toppins) [1685304] - [infiniband] RDMA/vmw_pvrdma: Delete unused function (Jonathan Toppins) [1685304] - [infiniband] IB/usnic: Update with bug fixes from core code (Jonathan Toppins) [1685304] - [infiniband] RDMA/providers: Fix return value from create_srq callbacks (Jonathan Toppins) [1685304] - [infiniband] RDMA/rxe: Simplify the error handling code in rxe_create_ah() (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: avoid unnecessary NULL check (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: increase max MR limit (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: Do not hide uABI stuff in memcpy (Jonathan Toppins) [1685304] - [net] rpc: remove unneeded variable 'ret' in rdma_listen_handler (Jonathan Toppins) [1685304] - [net] svcrdma: Clean up Read chunk path (Jonathan Toppins) [1685304] - [net] svcrdma: Avoid releasing a page in svc_xprt_release() (Jonathan Toppins) [1685304] - [net] sunrpc: remove redundant variables 'checksumlen', 'blocksize' and 'data' (Jonathan Toppins) [1685304] - [scsi] scsi: target: srp, vscsi, sbp, qla: use target_remove_session (Jonathan Toppins) [1685304] - [target] scsi: target: add session removal function (Jonathan Toppins) [1685304] - [target] scsi: target: rename target_alloc_session (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Fix check for return code from ib_create_srq (Jonathan Toppins) [1685304] - [infiniband] IB/ipoib: Fix error return code in ipoib_dev_init() (Jonathan Toppins) [1685304] - [infiniband] IPoIB: use kvzalloc to allocate an array of bucket pointers (Jonathan Toppins) [1685304] - [infiniband] ib_srpt: use kvmalloc to allocate ring pointers (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Fix return code from ipoib_cm_dev_init (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Remove set-but-not-used variables (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Prefer unsigned int to bare use of unsigned (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Use min_t() macro instead of min() (Jonathan Toppins) [1685304] - [infiniband] IB/srp: Remove driver version and release data information (Jonathan Toppins) [1685304] - [target] scsi: target: Remove second argument from fabric_make_tpg() (Jonathan Toppins) [1685304] - [infiniband] IB/iser: set can_queue earlier to allow setting higher queue depth (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Set right entry state before releasing reference (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Free uapi on destroy (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Fix error cleanup path of ib_uverbs_add_one() (Jonathan Toppins) [1685304] - [infiniband] IB/core: Release object lock if destroy failed (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: fix UCM link error (Jonathan Toppins) [1685304] - [infiniband] IB/core: Change filter function return type from int to bool (Jonathan Toppins) [1685304] - [infiniband] IB/core: Update GID entries for netdevice whose mac address changes (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add default GIDs of the bond master netdev (Jonathan Toppins) [1685304] - [infiniband] IB/core: Consider adding default GIDs of bond device (Jonathan Toppins) [1685304] - [infiniband] IB/core: Delete lower netdevice default GID entries in bonding scenario (Jonathan Toppins) [1685304] - [infiniband] IB/core: Avoid confusing del_netdev_default_ips (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add comment for change upper netevent handling (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: Fix compiling ucm.c (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not check for device disassociation during ioctl (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove struct uverbs_root_spec and all supporting code (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_api to unmarshal ioctl commands (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_alloc for allocations (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a simple allocator to uverbs_attr_bundle (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove the ib_uverbs_attr pointer from each attr (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Provide implementation private memory for the uverbs_attr_bundle (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_api to manage the object type inside the uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Build the specs into a radix tree at runtime (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Have the core code create the uverbs_root_spec (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Fix reading of 32 bit flags (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: Initialize sgid request GID attribute pointer (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow all DESTROY commands to succeed after disassociate (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not block disassociate during write() (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not pass struct ib_device to the ioctl methods (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not pass struct ib_device to the write based methods (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Lower the test for ongoing disassociation (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow uobject allocation to work concurrently with disassociate (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow RDMA_REMOVE_DESTROY to work concurrently with disassociate (Jonathan Toppins) [1685304] - [include] IB/uverbs: Convert 'bool exclusive' into an enum (Jonathan Toppins) [1685304] - [include] IB/uverbs: Consolidate uobject destruction (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Make the write path destroy methods use the same flow as ioctl (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove rdma_explicit_destroy() from the ioctl methods (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Prefix _ib to IB/RoCE specific functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Simplify gid type check in cma_acquire_dev() (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Return bool instead of int (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Get rid of 1 bit boolean (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Constify path record, ib_cm_event, listen_id pointers (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Constify dst_addr argument (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Simplify rdma_resolve_addr() error flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Initialize resource type in __rdma_create_id() (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Check for verbs callbacks before using them (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove {create,destroy}_ah from mandatory verbs (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add UVERBS_ATTR_FLAGS_IN to the specs language (Jonathan Toppins) [1685304] - [infiniband] RDMA, core and ULPs: Declare ib_post_send() and ib_post_recv() arguments const (Jonathan Toppins) [1685304] - [infiniband] IB/mlx5, ib_post_send(), IB_WR_REG_SIG_MR: Do not modify the 'wr' argument (Jonathan Toppins) [1685304] - [net] net/xprtrdma: Restore needed argument to ib_post_send (Jonathan Toppins) [1685304] - [net] net/xprtrdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [nvme] nvmet-rdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [nvme] nvme-rdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/srpt: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/srp: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/isert: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/IPoIB: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] RDMA: Constify the argument of the work request conversion functions (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Inline two work request conversion functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Consider netdevice for RoCE ports (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce and use sgid_attr in CM requests (Jonathan Toppins) [1685304] - [infiniband] IB/core: Remove extra parentheses (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Fix locking around struct ib_uverbs_file ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Move the FD uobj type struct file allocation to alloc_commit (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Always propagate errors from rdma_alloc_commit_uobject() (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Rework the locking for cleaning up the ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Revise and clarify the rwsem and uobjects_lock (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Clarify and revise uverbs_close_fd (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Revise the placement of get/puts on uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Clarify the kref'ing ordering for alloc_commit (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Handle IDR and FD types without truncation (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Get rid of null_obj_type (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [include] IB/core: Allow ULPs to specify NULL as the third ib_post_(send|recv|srq_recv)() argument (Jonathan Toppins) [1685304] - [include] IB/mlx5: Introduce driver create and destroy flow methods (Jonathan Toppins) [1685304] - [infiniband] IB: Support ib_flow creation in drivers (Jonathan Toppins) [1685304] - [infiniband] IB/mlx5: Introduce flow steering matcher uapi object (Jonathan Toppins) [1685304] - [include] IB/uverbs: Move ib_access_flags and ib_read_counters_flags to uapi (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove cma_multicast->igmp_joined (Jonathan Toppins) [1685304] - [infiniband] RDMA/umem: Refactor exit paths in ib_umem_get (Jonathan Toppins) [1685304] - [infiniband] IB: Enable uverbs_destroy_def_handler to be used by drivers (Jonathan Toppins) [1685304] - [include] IB/uverbs: Pass IB_UVERBS_QPF_GRH_REQUIRED to user space (Jonathan Toppins) [1685304] - [infiniband] RDMA: Validate grh_required when handling AVs (Jonathan Toppins) [1685304] - [infiniband] RDMA/hfi1: Move grh_required into update_sm_ah (Jonathan Toppins) [1685304] - [infiniband] IB/core: Simplify check for RoCE route resolve (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not use uverbs_cmd_mask in the ioctl path (Jonathan Toppins) [1685304] - [infiniband] RDMA/rw: Fix rdma_rw_ctx_signature_init() kernel-doc header (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove set-but-not-used variables (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove ib_find_cached_gid() and ib_find_cached_gid_by_port() (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove unused and erroneous msg sequence encoding (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace ib_ucq_object uverbs_file with the one in ib_uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove ib_uobject_file (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Tidy up remaining references to ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace file->ucontext with file in uverbs_cmd.c (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace ib_ucontext with ib_uverbs_file in core function calls (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Move non driver related elements from ib_ucontext to ib_ufile (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a uobj_perform_destroy helper (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Combine MIN_SZ_OR_ZERO with UVERBS_ATTR_STRUCT (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Use UVERBS_ATTR_MIN_SIZE correctly and uniformly (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Remove UA_FLAGS (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Get rid of the & in method specifications (Jonathan Toppins) [1685304] - [infiniband] IB: Improve uverbs_cleanup_ucontext algorithm (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify UVERBS_OBJECT and _TREE family of macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify method definition macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify UVERBS_ATTR family of macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Split UVERBS_ATTR_FLOW_ACTION_ESP_HANDLE (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Store the specs_root in the struct ib_uverbs_device (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove now useless rcu_lock in dst_fetch_ha (Jonathan Toppins) [1685304] - [infiniband] IB/core: Check for rdma_protocol_ib only after validating port_num (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Remove redundant check (Jonathan Toppins) [1685304] - [infiniband] RDMA/umem: Don't check for a negative return value of dma_map_sg_attrs() (Jonathan Toppins) [1685304] - [infiniband] RDMA/verbs: Drop kernel variant of destroy_flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/verbs: Drop kernel variant of create_flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Check existence of create_flow callback (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove unused ib cache functions (Jonathan Toppins) [1685304] - [infiniband] Revert "[infiniband] RDMA/hns: Only assgin the fields of the av if IB_QP_AV bit is set" (Jonathan Toppins) [1685304] - [infiniband] RDMA: Convert drivers to use the AH's sgid_attr in post_wr paths (Jonathan Toppins) [1685304] - [infiniband] IB/mlx4: Use GID attribute from ah attribute (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: Use rdma GID API (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Use sgid_attr from the AV (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Replace members of sa_path_rec with 'struct sgid_attr *' (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Pass the sgid_attr through various events (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Keep track of the sgid_attr that created the cm id (Jonathan Toppins) [1685304] - [infiniband] IB: Make init_ah_attr_grh_fields set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Make ib_init_ah_from_mcmember set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Make ib_init_ah_attr_from_wc set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB/core: Free GID table entry during GID deletion (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Consider net namespace while leaving multicast group (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Delete type and id from uverbs_obj_attr (Jonathan Toppins) [1685304] - [infiniband] IB/rdmavt, IB/hfi1: Create device dependent s_flags (Jonathan Toppins) [1685304] - [infiniband] IB/core: Expose ib_ucontext from a given ib_uverbs_file (Jonathan Toppins) [1685304] - [include] IB/core: Introduce DECLARE_UVERBS_GLOBAL_METHODS (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow an empty namespace in ioctl() framework (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a macro to define a type with no kernel known size (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add PTR_IN attributes that are allocated/copied automatically (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Refactor uverbs_finalize_objects (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Export uverbs idr and fd types (Jonathan Toppins) [1685304] - [infiniband] IB/mad: Use IDR for agent IDs (Jonathan Toppins) [1685304] - [infiniband] RDMA: Hold the sgid_attr inside the struct ib_ah/qp (Jonathan Toppins) [1685304] - [infiniband] RDMA: Convert drivers to use sgid_attr instead of sgid_index (Jonathan Toppins) [1685304] - [infiniband] IB{cm, core}: Introduce and use ah_attr copy, move, replace APIs (Jonathan Toppins) [1685304] - [infiniband] IB/core: Tidy ib_resolve_eth_dmac (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add a sgid_attr pointer to struct rdma_ah_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Ensure that all rdma_ah_attr's are zero initialized (Jonathan Toppins) [1685304] - [infiniband] IB/mad: Agent registration is process context only (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Refactor flow_resources_alloc() function (Jonathan Toppins) [1685304] - [infiniband] RDMA/nldev: Return port capability flag for IB only (Jonathan Toppins) [1685304] - [net] RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr (Jonathan Toppins) [1685304] - [include] IB/cache: Restore compatibility for ib_query_gid (Jonathan Toppins) [1685304] - [infiniband] IB: Replace ib_query_gid/ib_get_cached_gid with rdma_query_gid (Jonathan Toppins) [1685304] - [infiniband] IB/core: Make rdma_find_gid_by_filter support all protocols (Jonathan Toppins) [1685304] - [infiniband] IB/core: Provide rdma_ versions of the gid cache API (Jonathan Toppins) [1685304] - [infiniband] IB/core: Replace ib_query_gid with rdma_get_gid_attr (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce GID attribute get, put and hold APIs (Jonathan Toppins) [1685304] - [infiniband] RDMA: Use GID from the ib_gid_attr during the add_gid() callback (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce GID entry reference counts (Jonathan Toppins) [1685304] - [infiniband] IB/core: Store default GID property per-table instead of per-entry (Jonathan Toppins) [1685304] - [infiniband] IB/core: Do not set the gid type when reserving default entries (Jonathan Toppins) [1685304] - [include] IDR: Expose the XArray lock (Jonathan Toppins) [1688319] - [x86] x86/cpufeatures: Enumerate MOVDIR64B instruction (Steve Best) [1482754] - [x86] x86/cpufeatures: Enumerate MOVDIRI instruction (Steve Best) [1482754] - [nvme] nvme: allow ANA support to be independent of native multipathing (Ewan Milne) [1690940] - [nvme] nvme: multipath: Change default of kernel NVMe multipath to be disabled (Ewan Milne) [1690940] - [nvme] nvme: convert to SPDX identifiers (Ewan Milne) [1690940] - [nvme] nvme-multipath: round-robin I/O policy (Ewan Milne) [1690940] - [nvme] nvme-multipath: drop optimization for static ANA group IDs (Ewan Milne) [1690940] - [nvme] nvme-multipath: zero out ANA log buffer (Ewan Milne) [1690940] - [nvme] nvme-fc: fix numa_node when dev is null (Ewan Milne) [1690940] - [nvme] nvme: add a numa_node field to struct nvme_ctrl (Ewan Milne) [1690940] - [nvme] nvme: update node paths after adding new path (Ewan Milne) [1690940] - [nvme] nvme: take node locality into account when selecting a path (Ewan Milne) [1690940] - [s390] s390/mm: Fix ERROR: "__node_distance" undefined! (Ewan Milne) [1690940] - [nvme] nvme: call nvme_complete_rq when nvmf_check_ready fails for mpath I/O (Ewan Milne) [1690940] - [nvme] nvme: properly propagate errors in nvme_mpath_init (Ewan Milne) [1690940] - [nvme] nvme: fixup crash on failed discovery (Ewan Milne) [1690940] - [nvme] nvme: add ANA support (Ewan Milne) [1690940] - [include] nvme.h: fixup ANA group descriptor format (Ewan Milne) [1690940] - [include] nvme.h: add ANA definitions (Ewan Milne) [1690940] - [nvme] nvme: remove nvme_req_needs_failover (Ewan Milne) [1690940] - [nvme] nvme: simplify the API for getting log pages (Ewan Milne) [1690940] - [include] nvme.h: add support for the log specific field (Ewan Milne) [1690940]- [md] dm writecache: set "Tech Preview" taint using mark_tech_preview() (Mike Snitzer) [1690587] - [md] dm integrity: limit the rate of error messages (Mike Snitzer) [1690105] - [md] dm snapshot: don't define direct_access if we don't support it (Mike Snitzer) [1690105] - [md] dm cache: add support for discard passdown to the origin device (Mike Snitzer) [1690105] - [md] dm writecache: fix typo in name for writeback_wq (Mike Snitzer) [1690105] - [md] dm thin: add sanity checks to thin-pool and external snapshot creation (Mike Snitzer) [1690105] - [md] dm block manager: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm verity fec: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm integrity: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm switch: use struct_size() in kzalloc() (Mike Snitzer) [1690105] - [md] dm: remove unused _rq_tio_cache and _rq_cache (Mike Snitzer) [1690105] - [md] dm crypt: don't overallocate the integrity tag space (Mike Snitzer) [1690105] - [md] dm: eliminate 'split_discard_bios' flag from DM target interface (Mike Snitzer) [1690105] - [md] dm: always call blk_queue_split() in dm_process_bio() (Mike Snitzer) [1690105] - [md] dm: update dm_process_bio() to split bio if in ->make_request_fn() (Mike Snitzer) [1690105] - [md] dm rq: remove unused arguments from rq_completed() (Mike Snitzer) [1690105] - [md] dm integrity: replace open-coded allocation size multiplication (Mike Snitzer) [1690105] - [md] dm: Remove VLA usage from hashes (Mike Snitzer) [1690105] - [crypto] crypto: hash - Remove VLA usage (Mike Snitzer) [1690105] - [md] dm: Avoid namespace collision with bitmap API (Mike Snitzer) [1690105] - [md] md/dm-writecache: Don't request pointer dummy_addr when not required (Mike Snitzer) [1690105] - [scsi] scsi: qla2xxx: avoid printf format warning (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix issue reported by static checker for qla2x00_els_dcmd2_sp_done() (Himanshu Madhani) [1664534] - [scsi] qla2xxx: Update driver version to 10.00.00.14.08.1-k (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Avoid PCI IRQ affinity mapping when multiqueue is not supported (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add new FW dump template entry types (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix code indentation for qla27xx_fwdt_entry (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move marker request behind QPair (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent SysFS access when chip is down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add support for setting port speed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent multiple ADISC commands per session (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Check for FW started flag before aborting (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix unload when NVMe devices are configured (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add First Burst support for FC-NVMe devices (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: remove redundant null check on pointer sess (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move debug messages before sending srb preventing panic (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Use complete switch scan for RSCN events (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix fw options handle eh_bus_reset() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Restore FAWWPN of Physical Port only for loop down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent memory leak for CT req/rsp allocation (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix SRB allocation flag to avoid sleeping in IRQ context (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: allow session delete to finish before create. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fix fcport null pointer access. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: flush IO on chip reset or sess delete (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix session cleanup hang (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Change default ZIO threshold. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add pci function reset support. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix N2N target discovery with Local loop (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: no need to check return value of debugfs_create functions (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix DMA error when the DIF sg buffer crosses 4GB boundary (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add protection mask module parameters (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix for FC-NVMe discovery for NPIV port (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix NPIV handling for FC-NVMe (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Enable FC-NVME on NPIV ports (Himanshu Madhani) [1664534] - [scsi] Revert "scsi: qla2xxx: Fix NVMe Target discovery" (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: NULL check before some freeing functions is not needed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Split the __qla2x00_abort_all_cmds() function (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Introduce a switch/case statement in qlt_xmit_tm_rsp() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix a typo in MODULE_PARM_DESC (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove two arguments from qlafx00_error_entry() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Make sure that qlafx00_ioctl_iosb_entry() initializes 'res' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove a set-but-not-used variable (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Make qla2x00_sysfs_write_nvram() easier to analyze (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Declare local functions 'static' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Improve several kernel-doc headers (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Modify fall-through annotations (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fully convert to the generic DMA API (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Simplify conditional check (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove unnecessary self assignment (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Return switch command on a timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move log messages before issuing command to firmware (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix for double free of SRB structure (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix recursive mailbox timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix NVMe Target discovery (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: don't allow negative thresholds (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix comment in MODULE_PARM_DESC in qla2xxx (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove set but not used variable 'ptr_dma' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fix typo "CT-PASSTRHU" -> "CT-PASSTHRU" (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix an endian bug in fcpcmd_is_corrupted() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix double increment of switch scan retry count (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix duplicate switch's Nport ID entries (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix premature command free (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Reject bsg request if chip is down. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: shutdown chip if reset fail (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix stuck session in PLOGI state (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix early srb free on abort (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add mode control for each physical port (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix race condition for resource cleanup (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix dropped srb resource. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix port speed display on chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Check for Register disconnect (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Increase abort timeout value (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Allow FC-NVMe underrun to be handled by transport (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move ABTS code behind qpair (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove stale ADISC_DONE event (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix Remote port registration (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove ASYNC GIDPN switch command (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Reduce holding sess_lock to prevent CPU lock-up (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move {get|rel}_sp to base_qpair struct (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add support for ZIO6 interrupt threshold (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix out of order Termination and ABTS response (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add logic to detect ABTS hang and response completion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add appropriate debug info for invalid RX_ID (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix deadlock between ATIO and HW lock (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Serialize mailbox request (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Terminate Plogi/PRLI if WWN is 0 (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Defer chip reset until target mode is enabled (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove all rports if fabric scan retry fails (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Force fw cleanup on ADISC error (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Turn off IOCB timeout timer on IOCB completion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Decrement login retry count for only plogi (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move rport registration out of internal work_list (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove redundant check for fcport deletion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Update rscn_rcvd field to more meaningful scan_needed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Use correct qpair for ABTS/CMD (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix process response queue for ISP26XX and above (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Migrate NVME N2N handling into state machine (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Save frame payload size from ICB (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix race between switch cmd completion and timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix Management Server NPort handle reservation logic (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Flush mailbox commands on chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix session state stuck in Get Port DB (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix redundant fc_rport registration (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Silent erroneous message (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent sysfs access when chip is down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add longer window for chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix login retry count (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix N2N link re-connect (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Cleanup for N2N code (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: remove irq save in qla2x00_poll() (Himanshu Madhani) [1664534] - [netdrv] ice: Do autoneg based on VSI state (Jonathan Toppins) [1687903] - [fs] xfs: use the latest extent at writeback delalloc conversion time (Brian Foster) [1661968] - [fs] xfs: create delalloc bmapi wrapper for full extent allocation (Brian Foster) [1661968] - [fs] xfs: remove superfluous writeback mapping eof trimming (Brian Foster) [1661968] - [fs] xfs: validate writeback mapping using data fork seq counter (Brian Foster) [1661968] - [fs] xfs: update fork seq counter on data fork changes (Brian Foster) [1661968] - [fs] xfs: eof trim writeback mapping as soon as it is cached (Brian Foster) [1661968] - [perf] drivers/perf: hisi: update the sccl_id/ccl_id when MT is supported (Xiaojun Tan) [1677815]- [x86] x86/hyperv: Fix kernel panic when kexec on HyperV (Kairui Song) [1684451] - [rpmspec] apply linux-kernel-test.patch when building ("Herton R. Krzesinski") [1690534] - [netdrv] net: ena: update driver version from 2.0.2 to 2.0.3 (John Linville) [1690106] - [netdrv] net: ena: fix race between link up and device initalization (John Linville) [1690106] - [netdrv] net: phy: add phy_speed_down and phy_speed_up (Petr Oros) [1690131] - [netdrv] net: phy: add helper phy_config_aneg (Petr Oros) [1690131] - [nvme] nvme-fabrics: convert to SPDX identifiers (Ewan Milne) [1690909] - [nvme] nvme-fabrics: fix ctrl_loss_tmo < 0 to reconnect forever (Ewan Milne) [1690909] - [nvme] nvme-fc: reject reconnect if io queue count is reduced to zero (Ewan Milne) [1690601] - [nvme] nvme-fc: use nr_phys_segments to determine existence of sgl (Ewan Milne) [1690601] - [include] nvme-fc: convert to SPDX identifiers (Ewan Milne) [1690601] - [nvme] nvme-fc: initialize nvme_req(rq)->ctrl after calling __nvme_fc_init_request() (Ewan Milne) [1690601] - [nvme] nvme-fc: fix request private initialization (Ewan Milne) [1690601] - [nvme] nvme-fc: rework the request initialization code (Ewan Milne) [1690601] - [nvme] nvme-fc: introduce struct nvme_fcp_op_w_sgl (Ewan Milne) [1690601] - [nvme] nvme: cache struct nvme_ctrl reference to struct nvme_request (Ewan Milne) [1690601] - [nvme] nvme-fc: fix kernel-doc headers (Ewan Milne) [1690601] - [nvme] nvme_fc: add 'nvme_discovery' sysfs attribute to fc transport device (Ewan Milne) [1690601] - [nvme] nvme-fc: fix for a minor typos (Ewan Milne) [1690601] - [crypto] crypto: arm64/aes-ccm - fix logical bug in AAD MAC handling (Neil Horman) [1689185] - [mm] mm: enforce min addr even if capable() in expand_downwards() (Rafael Aquini) [1687667] {CVE-2019-9213} - [pci] PCI/VMD: Configure MPS settings before adding devices (Prarit Bhargava) [1659270] - [pci] PCI: vmd: Detach resources after stopping root bus (Prarit Bhargava) [1659270] - [char] tpm: separate cmd_ready/go_idle from runtime_pm (Jerry Snitselaar) [1677735] - [block] loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part() (Ming Lei) [1683593] - [block] loop: do not print warn message if partition scan is successful (Ming Lei) [1683593] - [block] loop: drop caches if offset or block_size are changed (Ming Lei) [1683593] - [block] block: loop: remove redundant code (Ming Lei) [1683593] - [block] block: loop: check error using IS_ERR instead of IS_ERR_OR_NULL in loop_add() (Ming Lei) [1683593] - [block] loop: Fix double mutex_unlock(&loop_ctl_mutex) in loop_control_ioctl() (Ming Lei) [1683593] - [block] loop: Get rid of 'nested' acquisition of loop_ctl_mutex (Ming Lei) [1683593] - [block] loop: Avoid circular locking dependency between loop_ctl_mutex and bd_mutex (Ming Lei) [1683593] - [block] loop: Fix deadlock when calling blkdev_reread_part() (Ming Lei) [1683593] - [block] loop: Move loop_reread_partitions() out of loop_ctl_mutex (Ming Lei) [1683593] - [block] loop: Move special partition reread handling in loop_clr_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_change_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_set_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_set_status() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_get_status() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down into loop_clr_fd() (Ming Lei) [1683593] - [block] loop: Split setting of lo_state from loop_clr_fd (Ming Lei) [1683593] - [block] loop: Push lo_ctl_mutex down into individual ioctls (Ming Lei) [1683593] - [block] loop: Get rid of loop_index_mutex (Ming Lei) [1683593] - [block] loop: Fold __loop_release into loop_release (Ming Lei) [1683593] - [block] block/loop: Use global lock for ioctl() operation. (Ming Lei) [1683593] - [block] block/loop: Don't grab "struct file" for vfs_getattr() operation. (Ming Lei) [1683593] - [crypto] crypto: cfb - fix decryption (Herbert Xu) [1653188]- [misc] VMCI: Support upto 64-bit PPNs (Cathy Avery) [1683479] - [mm] mm, page_alloc: fix has_unmovable_pages for HugePages (David Gibson) [1688114] - [pci] PCI: pciehp: Disable Data Link Layer State Changed event on suspend (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Assign ctrl->slot_ctrl before writing it to hardware (Myron Stowe) [1688393 1537397] - [pci] PCI/AER: Queue one GHES event, not several uninitialized ones (Myron Stowe) [1688393 1537397] - [pci] PCI/AER: Refactor error injection fallbacks (Myron Stowe) [1688393] - [pci] PCI/AER: Reuse existing pcie_port_find_device() interface (Myron Stowe) [1688393] - [pci] PCI/AER: Use managed resource allocations (Myron Stowe) [1688393] - [pci] PCI/AER: Use threaded IRQ for bottom half (Myron Stowe) [1688393] - [pci] PCI/AER: Use kfifo_in_spinlocked() to insert locked elements (Myron Stowe) [1688393] - [pci] PCI/AER: Use kfifo for tracking events instead of reimplementing it (Myron Stowe) [1688393] - [pci] PCI/AER: Remove error source from AER struct aer_rpc (Myron Stowe) [1688393] - [pci] PCI/AER: Remove unused aer_error_resume() (Myron Stowe) [1688393] - [pci] PCI: pnv_php: Use kmemdup() (Myron Stowe) [1688393] - [pci] PCI: cpqphp: Remove set but not used variable 'physical_slot' (Myron Stowe) [1688393] - [pci] PCI/ERR: Remove duplicated include from err.c (Myron Stowe) [1688393] - [pci] PCI: Equalize hotplug memory and io for occupied and empty slots (Myron Stowe) [1688393] - [pci] PCI / ACPI: Whitelist D3 for more PCIe hotplug ports (Myron Stowe) [1688393 1537397] - [acpi] ACPI / property: Allow multiple property compatible _DSD entries (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Implement runtime PM callbacks (Myron Stowe) [1688393 1537397] - [pci] PCI/portdrv: Resume upon exit from system suspend if left runtime suspended (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Do not handle events if interrupts are masked (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Disable hotplug interrupt during suspend (Myron Stowe) [1688393 1537397] - [pci] PCI / ACPI: Enable wake automatically for power managed bridges (Myron Stowe) [1688393 1537397] - [pci] PCI: Do not skip power-managed bridges in pci_enable_wake() (Myron Stowe) [1688393 1537397] - [pci] PCI: Unify device inaccessible (Myron Stowe) [1688393] - [pci] PCI/ERR: Always report current recovery status for udev (Myron Stowe) [1688393] - [pci] PCI/ERR: Simplify broadcast callouts (Myron Stowe) [1688393] - [pci] PCI/ERR: Run error recovery callbacks for all affected devices (Myron Stowe) [1688393] - [pci] PCI/ERR: Handle fatal error recovery (Myron Stowe) [1688393] - [pci] PCI/ERR: Use slot reset if available (Myron Stowe) [1688393] - [pci] PCI/AER: Don't read upstream ports below fatal errors (Myron Stowe) [1688393] - [pci] PCI/AER: Take reference on error devices (Myron Stowe) [1688393] - [pci] PCI/DPC: Save and restore config state (Myron Stowe) [1688393] - [pci] PCI: portdrv: Restore PCI config state on slot reset (Myron Stowe) [1688393] - [pci] PCI: portdrv: Initialize service drivers directly (Myron Stowe) [1688393] - [x86] x86/intel_rdt: Show missing resctrl mount options (David Arcari) [1689043] - [xen] xen/balloon: Fix mapping PG_offline pages to user space (David Hildenbrand) [1652790] - [kernel] PM/Hibernate: exclude all PageOffline() pages (David Hildenbrand) [1652790] - [kernel] PM/Hibernate: use pfn_to_online_page() (David Hildenbrand) [1652790] - [hv] hv_balloon: mark inflated pages PG_offline (David Hildenbrand) [1652790] - [xen] xen/balloon: mark inflated pages PG_offline (David Hildenbrand) [1652790] - [kernel] kexec: export PG_offline to VMCOREINFO (David Hildenbrand) [1652790] - [include] mm: convert PG_balloon to PG_offline (David Hildenbrand) [1652790] - [include] mm: balloon: update comment about isolation/migration/compaction (David Hildenbrand) [1652790] - [mm] mm/page_alloc.c: memory hotplug: free pages as higher order (David Hildenbrand) [1652790] - [mm] mm/memory.c: do_fault: avoid usage of stale vm_area_struct ("Herton R. Krzesinski") [1684734] - [kernel] cpuset: remove unused task_has_mempolicy() (Waiman Long) [1548268] - [kernel] cpuset: Remove set but not used variable 'cs' (Waiman Long) [1548268] - [kernel] cgroup: Add .__DEBUG__. prefix to debug file names (Waiman Long) [1548268] - [kernel] cpuset: Minor cgroup2 interface updates (Waiman Long) [1548268] - [kernel] cpuset: Expose cpuset.cpus.subpartitions with cgroup_debug (Waiman Long) [1548268] - [documentation] cpuset: Add documentation about the new "cpuset.sched.partition" flag (Waiman Long) [1548268] - [kernel] cpuset: Use descriptive text when reading/writing cpuset.sched.partition (Waiman Long) [1548268] - [kernel] cpuset: Expose cpus.effective and mems.effective on cgroup v2 root (Waiman Long) [1548268] - [kernel] cpuset: Make generate_sched_domains() work with partition (Waiman Long) [1548268] - [kernel] cpuset: Make CPU hotplug work with partition (Waiman Long) [1548268] - [kernel] cpuset: Track cpusets that use parent's effective_cpus (Waiman Long) [1548268] - [kernel] cpuset: Add an error state to cpuset.sched.partition (Waiman Long) [1548268] - [kernel] cpuset: Add new v2 cpuset.sched.partition flag (Waiman Long) [1548268] - [kernel] cpuset: Simply allocation and freeing of cpumasks (Waiman Long) [1548268] - [kernel] cpuset: Define data structures to support scheduling partition (Waiman Long) [1548268] - [kernel] cpuset: Enable cpuset controller in default hierarchy (Waiman Long) [1548268] - [kernel] cgroup/tracing: Move taking of spin lock out of trace event handlers (Waiman Long) [1548268] - [powerpc] powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables (David Gibson) [1674410] - [pci] PCI: dwc: Fix MSI-X EP framework address calculation bug (Myron Stowe) [1687935] - [pci] PCI: cadence: Correct probe behaviour when failing to get PHY (Myron Stowe) [1687935] - [pci] PCI: mvebu: Fix PCI I/O mapping creation sequence (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Remove obsolete drivers/pci pattern from ACPI section (Myron Stowe) [1687935] - [pci] PCI: dwc: Fix scheduling while atomic issues (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Move mobiveil PCI driver entry where it belongs (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Update PPC contacts for PCI core error handling (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Add Gustavo Pimentel as DesignWare PCI maintainer (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Add entries for PPC64 RPA PCI hotplug drivers (Myron Stowe) [1687935] - [pci] PCI: mvebu: Drop bogus comment above mvebu_pcie_map_registers() (Myron Stowe) [1687935] - [pci] PCI: mvebu: Convert to use pci_host_bridge directly (Myron Stowe) [1687935] - [pci] PCI: mvebu: Use resource_size() to remap I/O space (Myron Stowe) [1687935] - [pci] PCI: mvebu: Only remap I/O space if configured (Myron Stowe) [1687935] - [pci] PCI: mvebu: Fix I/O space end address calculation (Myron Stowe) [1687935] - [pci] PCI: mvebu: Remove redundant platform_set_drvdata() call (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Add Kconfig/Makefile entries (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Add missing ../pci.h include (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type (Myron Stowe) [1687935] - [pci] PCI: endpoint: Add MSI set maximum restriction (Myron Stowe) [1687935] - [tools] tools: PCI: Add MSI-X support (Myron Stowe) [1687935] - [documentation] pci_endpoint_test: Add 2 ioctl commands (Myron Stowe) [1687935] - [documentation] pci-epf-test/pci_endpoint_test: Add MSI-X support (Myron Stowe) [1687935] - [misc] pci-epf-test/pci_endpoint_test: Use irq_type module parameter (Myron Stowe) [1687935] - [misc] pci-epf-test/pci_endpoint_test: Cleanup PCI_ENDPOINT_TEST memspace (Myron Stowe) [1687935] - [pci] PCI: dwc: Add legacy interrupt callback handler (Myron Stowe) [1687935] - [pci] PCI: dwc: Rework MSI callbacks handler (Myron Stowe) [1687935] - [pci] PCI: dwc: Add MSI-X callbacks handler (Myron Stowe) [1687935] - [pci] PCI: Update xxx_pcie_ep_raise_irq() and pci_epc_raise_irq() signatures (Myron Stowe) [1687935] - [pci] PCI: endpoint: Add MSI-X interfaces (Myron Stowe) [1687935] - [pci] PCI: dwc: Fix EP link notification implementation (Myron Stowe) [1687935] - [pci] PCI: spear13xx: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: qcom: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: histb: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: designware-plat: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: artpec6: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: armada8k: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: keystone: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: imx6: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: exynos: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: kirin: Add MSI support (Myron Stowe) [1687935] - [pci] PCI: pcie-cadence-ep: Remove redundant variable mmc (Myron Stowe) [1687935] - [pci] PCI: cadence: Add shutdown callback to host driver (Myron Stowe) [1687935] - [pci] PCI: cadence: Add Power Management ops for host and EP (Myron Stowe) [1687935] - [documentation] dt-bindings: PCI: cadence: Add DT bindings for optional PHYs (Myron Stowe) [1687935] - [pci] PCI: cadence: Add generic PHY support to host and EP drivers (Myron Stowe) [1687935] - [pci] PCI: cadence: Update cdns_pcie_writel() function signature (Myron Stowe) [1687935] - [pci] PCI: aardvark: Convert to use pci_host_probe() (Myron Stowe) [1687935] - [pci] PCI: aardvark: Size bridges before resources allocation (Myron Stowe) [1687935] - [pci] PCI: aardvark: Remove PCIe outbound window configuration (Myron Stowe) [1687935] - [pci] PCI: aardvark: Introduce an advk_pcie_valid_device() helper (Myron Stowe) [1687935] - [pci] PCI/xilinx: Depend on OF instead of the ARCH (Myron Stowe) [1687935] - [md] md: convert to kvmalloc (Nigel Croxon) [1661200] - [md] raid1: simplify raid1_error function (Nigel Croxon) [1661200] - [md] md-linear: use struct_size() in kzalloc() (Nigel Croxon) [1661200] - [md] md/raid5: fix 'out of memory' during raid cache recovery (Nigel Croxon) [1661200] - [md] md: Make bio_alloc_mddev use bio_alloc_bioset (Nigel Croxon) [1661200] - [md] raid10: refactor common wait code from regular read/write request (Nigel Croxon) [1661200] - [md] md: remvoe redundant condition check (Nigel Croxon) [1661200] - [lib] lib/raid6: add option to skip algo benchmarking (Nigel Croxon) [1661200] - [include] lib/raid6: avoid __attribute_const__ redefinition (Nigel Croxon) [1661200] - [include] lib/raid6: add missing include for raid6test (Nigel Croxon) [1661200] - [md] md: remove set but not used variable 'bi_rdev' (Nigel Croxon) [1661200] - [md] MD: Memory leak when flush bio size is zero (Nigel Croxon) [1661200] - [md] md: fix memleak for mempool (Nigel Croxon) [1661200] - [md] md-cluster: remove suspend_info (Nigel Croxon) [1661200] - [md] md-cluster: send BITMAP_NEEDS_SYNC message if reshaping is interrupted (Nigel Croxon) [1661200] - [md] md-cluster/bitmap: don't call md_bitmap_sync_with_cluster during reshaping stage (Nigel Croxon) [1661200] - [md] md-cluster/raid10: don't call remove_and_add_spares during reshaping stage (Nigel Croxon) [1661200] - [md] md-cluster/raid10: call update_size in md_reap_sync_thread (Nigel Croxon) [1661200] - [md] md-cluster: introduce resync_info_get interface for sanity check (Nigel Croxon) [1661200] - [md] md-cluster/raid10: support add disk under grow mode (Nigel Croxon) [1661200] - [md] md-cluster/raid10: resize all the bitmaps before start reshape (Nigel Croxon) [1661200] - [md] MD: fix invalid stored role for a disk - try2 (Nigel Croxon) [1661200] - [md] md/bitmap: use mddev_suspend/resume instead of ->quiesce() (Nigel Croxon) [1661200] - [md] md: remove redundant code that is no longer reachable (Nigel Croxon) [1661200] - [md] md: allow metadata updates while suspending an array - fix (Nigel Croxon) [1661200] - [md] MD: fix invalid stored role for a disk (Nigel Croxon) [1661200] - [md] md/raid10: Fix raid10 replace hang when new added disk faulty (Nigel Croxon) [1661200] - [md] raid5: block failing device if raid will be failed (Nigel Croxon) [1661200] - [md] md-cluster: release RESYNC lock after the last resync message (Nigel Croxon) [1661200] - [md] RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0 (Nigel Croxon) [1661200] - [md] md/raid5-cache: disable reshape completely (Nigel Croxon) [1661200] - [md] md/raid5: fix data corruption of replacements after originals dropped (Nigel Croxon) [1661200] - [md] drivers/md/raid5: Do not disable irq on release_inactive_stripe_list() call (Nigel Croxon) [1661200] - [md] drivers/md/raid5: Use irqsave variant of atomic_dec_and_lock() (Nigel Croxon) [1661200] - [md] md/r5cache: remove redundant pointer bio (Nigel Croxon) [1661200] - [md] md-cluster: don't send msg if array is closing (Nigel Croxon) [1661200] - [md] md-cluster: show array's status more accurate (Nigel Croxon) [1661200] - [md] md-cluster: clear another node's suspend_area after the copy is finished (Nigel Croxon) [1661200] - [powerpc] KVM: PPC: Book3S HV: Add KVM stat largepages_[2M/1G] (Suraj Jitindar Singh) [1581563] - [tools] perf mem/c2c: Fix perf_mem_events to support powerpc (Steve Best) [1685084] - [powerpc] powerpc/perf: Add mem access events to sysfs (Steve Best) [1685084] - [netdrv] net-next/hinic: replace disable_irq_nosync/enable_irq (Xiaojun Tan) [1668958] - [powerpc] Fix access_ok() fallout for sparc32 and powerpc (Joe Lawrence) [1673980] - [x86] Remove 'type' argument from access_ok() function (Joe Lawrence) [1673980] - [arm64] arm64: move untagged_addr macro from uaccess.h to memory.h (Joe Lawrence) [1673980] - [powerpc] powerpc/uaccess: fix warning/error with access_ok() (Joe Lawrence) [1673980] - [netdrv] igb: shorten maximum PHC timecounter update interval (Corinna Vinschen) [1637098] - [netdrv] igb: shorten maximum PHC timecounter update interval (Corinna Vinschen) [1637098]- [rpmspec] redhat: speed up binary rpm compression (Denys Vlasenko) [1686921] - [netdrv] net/mlx5e: RX, Verify MPWQE stride size is in range (Alaa Hleihel) [1683589] - [fs] debugfs: Fix EPERM regression from kernel lockdown check (Lenny Szubowicz) [1686755] - [infiniband] IB/hfi1: Close race condition on user context disable and close (Alex Estrin) [1682927] - [rpmspec] redhat: parallelize modules compression (Denys Vlasenko) [1686404] - [arm64] arm64: Add workaround for Fujitsu A64FX erratum 010001 (Mark Langsdorf) [1666951] - [s390] vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem (Cornelia Huck) [1686044] - [drm] drm/cirrus: fix connector leak at unload (Rob Clark) [1685773] - [powerpc] powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area callback (Steve Best) [1685181] - [netdrv] net/mlx4_en: Force CHECKSUM_NONE for short ethernet frames (Alaa Hleihel) [1663914 1651509] - [netdrv] net/mlx5e: Force CHECKSUM_UNNECESSARY for short ethernet frames (Alaa Hleihel) [1651509] - [include] Fix RH_KABI_SET_SIZE to use dereference operator (Tony Camuso) [1670118]- [x86] x86/tsc: Make calibration refinement more robust (David Arcari) [1686254] - [powerpc] powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR configuration (Steve Best) [1686756] - [rpmspec] parallelize "make mrproper" (Denys Vlasenko) [1686865] - [rpmspec] use "make -jN" (via _smp_mflags) for modules_install (Denys Vlasenko) [1686308] - [fs] xfs: zero length symlinks are not valid (Carlos Maiolino) [1589618] - [drm] drm/bufs: Fix Spectre v1 vulnerability (Rob Clark) [1663467] - [drm] drm/ioctl: Fix Spectre v1 vulnerabilities (Rob Clark) [1663467] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.0 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Update 12.2.0.0 file copyrights to 2019 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix nvmet issues when link bounce under IO load (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct upcalling nvmet_fc transport during io done downcall (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix default driver parameter collision for allowing NPIV support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Rework locking on SCSI io completion (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Enable SCSI and NVME fc4s by default (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Resize cpu maps structures based on possible cpus (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Utilize new IRQ API when allocating MSI-X vectors (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Rework EQ/CQ processing to address interrupt coalescing (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: convert eq_delay to usdelay (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Support non-uniform allocation of MSIX vectors to hardware queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix setting affinity hints to correlate with hardware queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Allow override of hardware queue selection policies (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adapt partitioned XRI lists to efficient sharing (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Synchronize hardware queues with SCSI MQ interface (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Convert ring number to hardware queue for nvme wqe posting. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Move SCSI and NVME Stats to hardware queue structures (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adapt cpucheck debugfs logic to Hardware Queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: Remove unused FCP_XRI_ABORT_EVENT slowpath event (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Partition XRI buffer list across Hardware Queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Replace io_channels for nvme and fcp with general hdw_queues per cpu (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove extra vector and SLI4 queue for Expresslane (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Implement common IO buffers between NVME and SCSI (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: Remove excess check on NVME io submit code path (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: remove nrport from nvme command structure (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: no need to check return value of debugfs_create functions (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Update lpfc version to 12.0.0.10 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adding ability to reset chip via pci bus reset (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Add log messages to aid in debugging fc4type discovery issues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix discovery failure when PLOGI is defered (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update fault value on successful trunk events. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct MDS loopback diagnostics support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix link state reporting for trunking when adapter is offline (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: do not set queue->page_count to 0 if pc_sli4_params.wqpcnt is invalid (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.9 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix dif and first burst use in write commands (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix driver release of fw-logging buffers (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct topology type reporting on G7 adapters (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct code setting non existent bits in sli4 ABORT WQE (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Defer LS_ACC to FLOGI on point to point logins (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: ls_rjt erroneus FLOGIs (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Cap NPIV vports to 256 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix kernel Oops due to null pring pointers (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix a duplicate 0711 log message number. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix panic when FW-log buffsize is not initialized (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix block guard enablement on SLI3 adapters (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Use dma_zalloc_coherent (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.8 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: add Trunking support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Implement GID_PT on Nameserver query to support faster failover (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix odd recovery in duplicate FLOGIs in point-to-point (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct LCB RJT handling (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fcoe: Fix link down issue after 1000+ link bounces (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct errors accessing fw log (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Reset link or adapter instead of doing infinite nameserver PLOGI retry (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix LOGO/PLOGI handling when triggerd by ABTS Timeout event (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix lpfc_sli4_read_config return value check (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct speeds on SFP swap (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix remoteport access (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variables 'tgtp' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variable 'psli' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variables 'fc_hdr' and 'hw_page_size' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix spelling mistake "Resrouce" -> "Resource" (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: remove a bogus pci_dma_sync_single_for_device call (Dick Kennedy) [1665288] - [netdrv] PCI/AER: Remove pci_cleanup_aer_uncorrect_error_status() calls (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Synchronize access to remoteport via rport (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variable 'sgl_size' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.7 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: add support to retrieve firmware logs (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: reduce locking when updating statistics (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix errors in log messages. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct invalid EQ doorbell write on if_type=6 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct irq handling via locks when taking adapter offline (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct soft lockup when running mds diagnostics (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct race with abort on completion path (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Raise nvme defaults to support a larger io and more connectivity (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: raise sg count for nvme to use available sg resources (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix GFT_ID and PRLI logic for RSCN (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: remove an unnecessary NULL check (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Default fdmi_on to on (Dick Kennedy) [1665288] - [powerpc] powerpc/mm/hash: Increase vmalloc space with hash translation mode (Steve Best) [1676974] - [net] sunrpc: fix 4 more call sites that were using stack memory with a scatterlist (Scott Mayhew) [1679183] - [net] sunrpc: Don't use stack buffer with scatterlist (Scott Mayhew) [1679183] - [powerpc] powerpc/pseries: Perform full re-add of CPU for topology update post-migration (Steve Best) [1678209] - [fs] proc/stat: Make the interrupt statistics more efficient (Waiman Long) [1675168] - [kernel] genirq: Avoid summation loops for /proc/stat (Waiman Long) [1675168] - [powerpc] powerpc/pseries: fix EEH recovery of some IOV devices (Steve Best) [1676889] - [block] nvme: lock NS list changes while handling command effects (David Milburn) [1672759] - [powerpc] powerpc/radix: Fix kernel crash with mremap() (Steve Best) [1674186] - [crypto] crypto: ccp - fix the SEV probe in kexec boot path (Gary Hook) [1658806] - [netdrv] HDLC Frame Relay: mark driver unsupported in RHEL8 (John Linville) [1660627] - [netdrv] DLCI: mark driver unsupported in RHEL8 (John Linville) [1660627] - [netdrv] ethoc: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] dnet: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] dl2k: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] mark qla3xxx driver as unsupported (John Linville) [1658840] - [netdrv] sfc: initialise found bitmap in efx_ef10_mtd_probe (Jarod Wilson) [1668656] - [netdrv] sfc: suppress duplicate nvmem partition types in efx_ef10_mtd_probe (Jarod Wilson) [1668656] - [netdrv] sfc: extend MTD support for newer hardware (Jarod Wilson) [1668656] - [netdrv] sfc: add missing NVRAM partition types for EF10 (Jarod Wilson) [1668656] - [netdrv] ibmvnic: Fix non-atomic memory allocation in IRQ context (Steve Best) [1671474] - [netdrv] ibmvnic: Convert reset work item mutex to spin lock (Steve Best) [1671474] - [powerpc] powerpc/pseries: Export raw per-CPU VPA data via debugfs (Steve Best) [1608797] - [powerpc] powerpc/pseries: Export maximum memory value (Steve Best) [1608797] - [netdrv] ibmveth: Do not process frames after calling napi_reschedule (Desnes Augusto Nunes do Rosario) [1635577] - [cpufreq] cpufreq: powernv: Remove global pstate ramp-down timer in POWER9 (Steve Best) [1670030] - [of] of: __of_detach_node() - remove node from phandle cache (Steve Best) [1669198] - [of] of: of_node_get()/of_node_put() nodes held in phandle cache (Steve Best) [1669198] - [edac] EDAC, sb_edac: Fix signedness bugs in *_get_ha() functions (Aristeu Rozanski) [1641574] - [edac] EDAC, sb_edac: Fix reporting for patrol scrubber errors (Aristeu Rozanski) [1641574] - [documentation] proc.txt: Adding 'HardwareCorrupted' field and description. (Prashant Dhamdhere) [1658233] - [netdrv] qed: Fix command number mismatch between driver and the mfw (Chad Dupuis) [1663500] - Revert "[redhat] switch secureboot kernel image signing to release keys" ("Herton R. Krzesinski")- [arm64] revert "arm64: tlb: Avoid synchronous TLBIs when freeing page tables" (Christoph von Recklinghausen) [1685697]- [firmware] drivers/firmware: psci_checker: stash and use topology_core_cpumask for hotplug tests (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: re-introduce numa mask check for scheduler MC selection (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: rename llc_siblings to align with other struct members (Josh Poimboeuf) [1687101] - [arm64] arm64: smp: remove cpu and numa topology information when hotplugging out CPU (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: restrict updating siblings_masks to online cpus only (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: add support to remove cpu topology sibling masks (Josh Poimboeuf) [1687101] - [arm64] arm64: numa: separate out updates to percpu nodeid and NUMA node cpumap (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: refactor reset_cpu_topology to add support for removing topology (Josh Poimboeuf) [1687101]- [fs] gfs2: Fix missed wakeups in find_insert_glock (Andreas Grunbacher) [1678907]- [firmware] efi: Reduce the amount of memblock reservations for persistent allocations (Bhupesh Sharma) [1682988] - [firmware] efi: Permit multiple entries in persistent memreserve data structure (Bhupesh Sharma) [1682988] - [kernel] cpu/hotplug: Create SMT sysfs interface for all arches (Josh Poimboeuf) [1686068] - [net] netfilter: nft_set_hash: bogus element self comparison from deactivation path (Florian Westphal) [1678574] - [net] netfilter: nft_set_hash: fix lookups with fixed size hash on big endian (Florian Westphal) [1678574]- [security] revert "Add a SysRq option to lift kernel lockdown" (Lenny Szubowicz) [1684348] - [s390] s390/setup: fix boot crash for machine without EDAT-1 (Philipp Rudo) [1677357] - [s390] s390/setup: fix early warning messages (Philipp Rudo) [1677357]- [netdrv] net: hns3: add 8 BD limit for tx flow (Xiaojun Tan) [1676771] - [netdrv] net: hns3: fix a SSU buffer checking bug (Xiaojun Tan) [1676771] - [netdrv] net: hns3: aligning buffer size in SSU to 256 bytes (Xiaojun Tan) [1676771] - [netdrv] net: hns3: getting tx and dv buffer size through firmware (Xiaojun Tan) [1676771] - [net] netfilter: nf_nat_snmp_basic: add missing length checks in ASN.1 cbs (Florian Westphal) [1676602] - [char] ipmi: fix use-after-free of user->release_barrier.rda (Xiaojun Tan) [1677550] - [char] ipmi: Prevent use-after-free in deliver_response (Xiaojun Tan) [1677550]- [x86] revert "cpu/hotplug: Add SMT policy options" (Josh Poimboeuf) [1683690] - [crypto] net: crypto set sk to NULL when af_alg_release (Neil Horman) [1679450] {CVE-2019-8912} - [drm] drm/i915/gvt: update force-to-nonpriv register whitelist (Paul Lai) [1643972] - [kernel] MODSIGN: Also check platform keyring in mod_verify_sig() (Lenny Szubowicz) [1568532] - [kernel] Fix for module sig verification (Lenny Szubowicz) [1568532] - [security] efi: Lock down the kernel if booted in secure boot mode (Lenny Szubowicz) [1568532] - [firmware] efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode (Lenny Szubowicz) [1568532] - [x86] Copy secure_boot flag in boot params across kexec reboot (Lenny Szubowicz) [1568532] - [fs] debugfs: Restrict debugfs when the kernel is locked down (Lenny Szubowicz) [1568532] - [mm] x86/mmiotrace: Lock down the testmmiotrace module (Lenny Szubowicz) [1568532] - [kernel] Lock down module params that specify hardware parameters (eg. ioport) (Lenny Szubowicz) [1568532] - [tty] Lock down TIOCSSERIAL (Lenny Szubowicz) [1568532] - [pcmcia] Prohibit PCMCIA CIS storage when the kernel is locked down (Lenny Szubowicz) [1568532] - [acpi] acpi: Disable ACPI table override if the kernel is locked down (Lenny Szubowicz) [1568532] - [acpi] acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down (Lenny Szubowicz) [1568532] - [acpi] ACPI: Limit access to custom_method when the kernel is locked down (Lenny Szubowicz) [1568532] - [x86] x86/msr: Restrict MSR access when the kernel is locked down (Lenny Szubowicz) [1568532] - [x86] x86: Lock down IO port access when the kernel is locked down (Lenny Szubowicz) [1568532] - [pci] PCI: Lock down BAR access when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] uswsusp: Disable when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] hibernate: Disable when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] kexec_load: Disable at runtime if the kernel is locked down (Lenny Szubowicz) [1568532] - [char] Restrict /dev/{mem, kmem, port} when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] MODSIGN: Enforce module signatures if the kernel is locked down (Lenny Szubowicz) [1568532] - [security] Add a SysRq option to lift kernel lockdown (Lenny Szubowicz) [1568532] - [security] Add the ability to lock down access to the running kernel image (Lenny Szubowicz) [1568532]- [net] tun: forbid iface creation with rtnl ops (Sabrina Dubroca) [1680969] - [net] revert "bridge: do not add port to router list when receives query with source 0.0.0.0" (Hangbin Liu) [1679896] - [net] sctp: walk the list of asoc safely (Marcelo Leitner) [1679920] {CVE-2019-8956} - [net] netfilter: nf_nat: skip nat clash resolution for same-origin entries (Florian Westphal) [1677647] - [net] netfilter: nf_conntrack: resolve clash for matching conntracks (Florian Westphal) [1677647] - [net] netfilter: nf_tables: fix flush after rule deletion in the same batch (Phil Sutter) [1677672] - [net] gro_cell: add napi_disable in gro_cells_destroy (Stefano Brivio) [1674408] - [net] sctp: call gso_reset_checksum when computing checksum in sctp_gso_segment (Xin Long) [1669386] - [net] ipvs: fix dependency on nf_defrag_ipv6 (Andrea Claudi) [1660808] - [net] sctp: check and update stream->out_curr when allocating stream_out (Xin Long) [1651877]- [x86] cpu/hotplug: Add SMT policy options (Josh Poimboeuf) [1677405]- [kernel] open the RHEL 8.1 development ("Herton R. Krzesinski") - [pci] pci/quirks: Add quirk to reset nvgpu at boot for the Lenovo ThinkPad P50 (Lyude Paul) [1677022] - [arm64] arm64, vmcoreinfo : Append 'MAX_USER_VA_BITS' to vmcoreinfo (Bhupesh Sharma) [1672962] - [md] dm thin: fix bug where bio that overwrites thin block ignores FUA (Mike Snitzer) [1679211] - [pci] PCI: Fix "try" semantics of bus and slot reset (Myron Stowe) [1662901] - [acpi] acpi/nfit: Fix bus command validation (Jeff Moyer) [1673958] - [pci] PCI/MSI: Return -ENOSPC from pci_alloc_irq_vectors_affinity() (Myron Stowe) [1667773] - [fs] NFS: Don't use page_file_mapping after removing the page (Benjamin Coddington) [1664190] - [fs] NFS: Fix up return value on fatal errors in nfs_page_async_flush() (Benjamin Coddington) [1664190] - [md] md: fix raid10 hang issue caused by barrier (Xiao Ni) [1630921] - [md] md/raid1: don't clear bitmap bits on interrupted recovery. (Xiao Ni) [1677360] - [virt] kvm: fix kvm_ioctl_create_device() reference counting (CVE-2019-6974) (Paolo Bonzini) [1673843] {CVE-2019-6974} - [block] blk-mq: fix a hung issue when fsync (Ming Lei) [1674399] - [block] Revert "block: cover another queue enter recursion via BIO_QUEUE_ENTERED" (Ming Lei) [1673966] - [tools] perf tools: Check for null when copying nsinfo. (Jiri Olsa) [1676451] - [iommu] iommu/amd: Fix IOMMU page flush when detach device from a domain (Suravee Suthikulpanit) [1672476]- [kernel] namespace: Add padding fix to user_table[] (Prarit Bhargava) [1677103] - [x86] KVM: nVMX: unconditionally cancel preemption timer in free_nested (CVE-2019-7221) (Paolo Bonzini) [1673841] {CVE-2019-7221} - [scsi] scsi: sd: fix entropy gathering for most rotational disks (Ewan Milne) [1676735] - [scsi] scsi: sd: Contribute to randomness when running rotational device (Ewan Milne) [1676735] - [rpmspec] Revert "Drop -doc subpackage" (Prarit Bhargava) [1657609] - [net] svcrdma: Remove max_sge check at connect time (Don Dutile) [1638869] - [net] svcrdma: Reduce max_send_sges (Don Dutile) [1638869] - [arm64] arm64: mm: Introduce MAX_USER_VA_BITS definition (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Rewrite stale comment in asm/tlbflush.h (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Avoid synchronous TLBIs when freeing page tables (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Remove redundant !CONFIG_HAVE_RCU_TABLE_FREE code (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlbflush: Allow stride to be specified for __flush_tlb_range() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Justify non-leaf invalidation in flush_tlb_range() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Add DSB ISHST prior to TLBI in __flush_tlb_[kernel_]pgtable() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Use last-level invalidation in flush_tlb_kernel_range() (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: EXPORT vabits_user to modules (Christoph von Recklinghausen) [1672997] - [arm64] arm64: fix ARM64_USER_VA_BITS_52 builds (Christoph von Recklinghausen) [1672997] - [arm64] arm64: Kconfig: Re-jig CONFIG options for 52-bit VA (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Allow forcing all userspace addresses to 52-bit (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: introduce 52-bit userspace support (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Prevent mismatched 52-bit VA support (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Offset TTBR1 to allow 52-bit PTRS_PER_PGD (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Define arch_get_mmap_end, arch_get_mmap_base (Christoph von Recklinghausen) [1672997] - [firmware] arm64: mm: Introduce DEFAULT_MAP_WINDOW (Christoph von Recklinghausen) [1672997] - [mm] mm: mmap: Allow for "high" userspace addresses (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: apply r/o permissions of VM areas to its linear alias as well (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: purge lazily unmapped vm regions before changing permissions (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Don't wait for completion of TLB invalidation when page aging (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: Use __pa_symbol() for set_swapper_pgd() (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: Drop the unused cpu parameter (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: move runtime pgds to rodata (Christoph von Recklinghausen) [1672997] - [mm] arm64/mm: use fixmap to modify swapper_pg_dir (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: Separate boot-time page tables from swapper_pg_dir (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: Pass ttbr1 as a parameter to __enable_mmu() (Christoph von Recklinghausen) [1672997] - [mm] arm64: fix erroneous warnings in page freeing functions (Christoph von Recklinghausen) [1672997] - [mm] arm64: Implement page table free interfaces (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlbflush: Introduce __flush_tlb_kernel_pgtable (Christoph von Recklinghausen) [1672997] - [lib] ioremap: Update pgtable free interfaces with addr (Christoph von Recklinghausen) [1672997] - [mm] x86/mm: Disable ioremap free page handling on x86-PAE (Christoph von Recklinghausen) [1672997] - [arm64] arm64: KVM: Enable Common Not Private translations (Christoph von Recklinghausen) [1504991] - [arm64] arm64: mm: Support Common Not Private translations (Christoph von Recklinghausen) [1504991] - [kernel] cpu/hotplug: Fix "SMT disabled by BIOS" detection for KVM (Igor Mammedov) [1668147] - [tools] perf tools: Compile perf with -g instead of -ggdb3 to workaround gdb crash (Jiri Olsa) [1667109]- [fs] Revert "gfs2: Fix loop in gfs2_rbm_find" (Andreas Grunbacher) [1658528] - [net] bpf: fix sanitation of alu op with pointer / scalar type from different paths (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: prevent out of bounds speculation on pointer arithmetic (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: move {prev_,}insn_idx into verifier env (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf/verifier: per-register parent pointers (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: restrict unknown scalars of mixed signed bounds for unprivileged (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: Simplify ptr_min_max_vals adjustment (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: fix inner map masking to prevent oob under speculation (Jiri Olsa) [1673631] {CVE-2019-7308} - [include] KABI: struct class padding (Prarit Bhargava) [1670035] - [include] KABI: struct timer_list padding (Prarit Bhargava) [1670035] - [include] KABI: struct irq_domain padding (Prarit Bhargava) [1670035] - [nvdimm] libnvdimm, pmem: Fix badblocks population for 'raw' namespaces (Jeff Moyer) [1672315] - [netdrv] net/mlx5e: FPGA, fix Innova IPsec TX offload data path performance (Alaa Hleihel) [1648230] - [kernel] exec: increase BINPRM_BUF_SIZE to 256 (Oleg Nesterov) [1447445]- [include] KABI: struct kset padding (Prarit Bhargava) [1669796] - [include] KABI: struct kobject and kobj_type padding (Prarit Bhargava) [1669796] - [include] KABI: struct delayed_work padding (Prarit Bhargava) [1669796] - [include] KABI: struct work_struct padding (Prarit Bhargava) [1669796] - [include] KABI: struct hrtimer padding (Prarit Bhargava) [1669796] - [include] KABI: struct user_namespace padding (Prarit Bhargava) [1669796] - [include] KABI: struct resource padding (Prarit Bhargava) [1669796] - [include] KABI: Protect device_driver struct (Prarit Bhargava) [1666316] - [include] KABI: Protect radix functions (Prarit Bhargava) [1669079] - [char] ipmi: msghandler: Fix potential Spectre v1 vulnerabilities (Tony Camuso) [1672582] - [vhost] vhost: fix OOB in get_rx_bufs() (Jason Wang) [1668665] {CVE-2018-16880}- [md] dm: don't use bio_trim() afterall (Mike Snitzer) [1673657] - [md] dm: add memory barrier before waitqueue_active (Mike Snitzer) [1673110] - [x86] x86: uaccess: Inhibit speculation past access_ok() in user_access_begin() (Joe Lawrence) [1670113] {CVE-2018-20669} - [kernel] make 'user_access_begin()' do 'access_ok()' (Joe Lawrence) [1670113] {CVE-2018-20669} - [drm] i915: fix missing user_access_end() in page fault exception case (Joe Lawrence) [1670113] {CVE-2018-20669} - [drm] drm/i915: Force the slow path after a user-write error (Joe Lawrence) [1670113] {CVE-2018-20669} - [x86] x86/microcode/amd: Don't falsely trick the late loading mechanism (David Arcari) [1654904] - [fs] iomap: get/put the page in iomap_page_create/release() (Artem Savkov) [1664298] - [scsi] scsi: qla2xxx: Add new FC-NVMe enable BIT to enable FC-NVMe feature (Himanshu Madhani) [1671569] - [message] mptsas: pci-id table changes (Tomas Henzl) [1666730] - [message] mptsas: Taint kernel if mptsas is loaded (Tomas Henzl) [1666730] - [kernel] genirq/matrix: Improve target CPU selection for managed interrupts. (Gary Hook) [1669557] - [kernel] irq/matrix: Spread managed interrupts on allocation (Gary Hook) [1669557] - [kernel] irq/matrix: Split out the CPU selection code into a helper (Gary Hook) [1669557] - [net] sit: check if IPv6 enabled before calling ip6_err_gen_icmpv6_unreach() (Stefano Brivio) [1671680] - [net] geneve: should not call rt6_lookup() when ipv6 was disabled (Stefano Brivio) [1671680] - [net] netfilter: physdev: relax br_netfilter dependency (Phil Sutter) [1650382] - [net] netfilter: nf_tables: add NFTA_RULE_POSITION_ID to nla_policy (Phil Sutter) [1670563] - [net] netfilter: nf_tables: Support RULE_ID reference in new rule (Phil Sutter) [1670563] - [net] rtnetlink: fix incorrect handling of device stats passed to userspace (Ivan Vecera) [1668298] - [net] netfilter: nf_tables: handle nft_object lookups via rhltable (Phil Sutter) [1659725] - [net] netfilter: nf_tables: prepare nft_object for lookups via hashtable (Phil Sutter) [1659725] - [net] netfilter: nf_tables: selective rule dump needs table to be specified (Phil Sutter) [1659725] - [net] netfilter: nf_tables: Fix for endless loop when dumping ruleset (Phil Sutter) [1659725] - [net] netfilter: nf_tables: Speed up selective rule dumps (Phil Sutter) [1659725] - [net] exclude sock_reuseport from kABI protection (Paolo Abeni) [1665984] - [include] KABI: struct device padding (Don Dutile) [1664445] - [include] KABI: struct dma_map_ops padding (Don Dutile) [1664482] - [kernel] swiotlb: clear io_tlb_start and io_tlb_end in swiotlb_exit (Don Dutile) [1664484] - [kernel] dma-mapping: remove a few unused exports (Don Dutile) [1664484] - [include] dma-mapping: properly stub out the DMA API for !CONFIG_HAS_DMA (Don Dutile) [1664484] - [kernel] dma-mapping: remove dmam_{declare,release}_coherent_memory (Don Dutile) [1664484] - [kernel] dma-mapping: implement dmam_alloc_coherent using dmam_alloc_attrs (Don Dutile) [1664484] - [include] dma-mapping: implement dma_map_single_attrs using dma_map_page_attrs (Don Dutile) [1664484] - [include] dma-mapping: fix flags in dma_alloc_wc (Don Dutile) [1664484] - [include] dma-mapping: deprecate dma_zalloc_coherent (Don Dutile) [1664484] - [arm64] arm64: default to the direct mapping in get_arch_dma_ops (Don Dutile) [1664484] - [kernel] dma-mapping: fix inverted logic in dma_supported (Don Dutile) [1664484] - [include] dma-mapping: bypass indirect calls for dma-direct (Don Dutile) [1664484] - [kernel] dma-direct: merge swiotlb_dma_ops into the dma_direct code (Don Dutile) [1664484] - [kernel] dma-direct: do not include SME mask in the DMA supported check (Don Dutile) [1664484] - [kernel] dma-direct: use dma_direct_map_page to implement dma_direct_map_sg (Don Dutile) [1664484] - [kernel] dma-direct: improve addressability error reporting (Don Dutile) [1664484] - [kernel] dma-direct: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [xen] swiotlb: remove dma_mark_clean (Don Dutile) [1664484] - [xen] swiotlb: remove SWIOTLB_MAP_ERROR (Don Dutile) [1664484] - [xen] xen-swiotlb: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [kernel] swiotlb: Skip cache maintenance on map error (Don Dutile) [1664484] - [kernel] swiotlb: add support for non-coherent DMA (Don Dutile) [1664484] - [kernel] swiotlb: mark is_swiotlb_buffer static (Don Dutile) [1664484] - [kernel] swiotlb: remove a pointless comment (Don Dutile) [1664484] - [kernel] swiotlb: clean up reporting (Don Dutile) [1664484] - [kernel] dma-direct: reject highmem pages from dma_alloc_from_contiguous (Don Dutile) [1664484] - [kernel] dma-direct: provide page based alloc/free helpers (Don Dutile) [1664484] - [include] dma-direct: Make DIRECT_MAPPING_ERROR viable for SWIOTLB (Don Dutile) [1664484] - [kernel] dma-direct: respect DMA_ATTR_NO_WARN (Don Dutile) [1664484] - [kernel] dma-direct: document the zone selection logic (Don Dutile) [1664484] - [kernel] dma-direct: fix return value of dma_direct_supported (Don Dutile) [1664484] - [kernel] dma-direct: always allow dma mask <= physiscal memory size (Don Dutile) [1664484] - [kernel] dma-direct: implement complete bus_dma_mask handling (Don Dutile) [1664484] - [kernel] dma-direct: refine dma_direct_alloc zone selection (Don Dutile) [1664484] - [kernel] dma-direct: add an explicit dma_direct_get_required_mask (Don Dutile) [1664484] - [kernel] kernel/dma/direct: take DMA offset into account in dma_direct_supported (Don Dutile) [1664484] - [kernel] dma-mapping: factor out dummy DMA ops (Don Dutile) [1664484] - [mm] arm64: dma-mapping: Fix FORCE_CONTIGUOUS buffer clearing (Don Dutile) [1664484] - [iommu] iommu/dma-iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/vt-d: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/intel: small map_page cleanup (Don Dutile) [1664484] - [iommu] intel-iommu: mark intel_dma_ops static (Don Dutile) [1664484] - [iommu] ia64: remove iommu_dma_supported (Don Dutile) [1664484] - [iommu] iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/dma: Use fast DMA domain lookup (Don Dutile) [1664484] - [x86] x86/amd_gart: fix unmapping of non-GART mappings (Don Dutile) [1664484] - [x86] x86/amd_gart: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [mm] arm64: remove the dummy_dma_ops mapping_error method (Don Dutile) [1664484] - [powerpc] powerpc: Do not redefine NEED_DMA_MAP_STATE (Don Dutile) [1664484] - [powerpc] powerpc/iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [s390] s390: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [kernel] dma-mapping: always build the direct mapping code (Don Dutile) [1664484] - [kernel] dma-mapping: move dma_cache_sync out of line (Don Dutile) [1664484] - [kernel] dma-mapping: move various slow path functions out of line (Don Dutile) [1664484] - [base] dma-mapping: move dma_get_required_mask to kernel/dma (Don Dutile) [1664484] - [base] dma-mapping: move dma_default_get_required_mask under ifdef (Don Dutile) [1664484] - [include] dma-mapping: merge dma_unmap_page_attrs and dma_unmap_single_attrs (Don Dutile) [1664484] - [include] dma-mapping: simplify the dma_sync_single_range_for_{cpu,device} implementation (Don Dutile) [1664484] - [include] dma-mapping: return an error code from dma_mapping_error (Don Dutile) [1664484] - [pci] dma-mapping: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [include] dma-mapping: provide a generic DMA_MAPPING_ERROR (Don Dutile) [1664484] - [kernel] dma-mapping: move the arm64 noncoherent alloc/free support to common code (Don Dutile) [1664484] - [mm] arm64: fix warnings without CONFIG_IOMMU_DMA (Don Dutile) [1664484] - [arm64] arm64: use the generic swiotlb_dma_ops (Don Dutile) [1664484] - [kernel] swiotlb: don't dip into swiotlb pool for coherent allocations (Don Dutile) [1664484] - [kernel] swiotlb: refactor swiotlb_map_page (Don Dutile) [1664484] - [kernel] swiotlb: use swiotlb_map_page in swiotlb_map_sg_attrs (Don Dutile) [1664484] - [kernel] swiotlb: merge swiotlb_unmap_page and unmap_single (Don Dutile) [1664484] - [kernel] swiotlb: remove the overflow buffer (Don Dutile) [1664484] - [kernel] swiotlb: do not panic on mapping failures (Don Dutile) [1664484] - [mm] arm64/dma-mapping: Mildly optimise non-coherent IOMMU ops (Don Dutile) [1664484] - [iommu] iommu: Add fast hook for getting DMA domains (Don Dutile) [1664484] - [iommu] iommu: Remove the ->map_sg indirection (Don Dutile) [1664484] - [iommu] kernel/dma: remove unsupported gfp_mask parameter from dma_alloc_from_contiguous() (Don Dutile) [1664484] - [mm] mm/cma: remove unsupported gfp_mask parameter from cma_alloc() (Don Dutile) [1664484] - [kernel] dma-mapping: move the remap helpers to a separate file (Don Dutile) [1664484] - [include] dma-mapping: fix return type of dma_set_max_seg_size() (Don Dutile) [1664484] - [include] dma-mapping: translate __GFP_NOFAIL to DMA_ATTR_NO_WARN (Don Dutile) [1664484] - [include] dma-debug: Check for drivers mapping invalid addresses in dma_map_single() (Don Dutile) [1664484] - [base] dma-mapping: make the get_required_mask method available unconditionally (Don Dutile) [1664484] - [xen] dma-mapping: support non-coherent devices in dma_common_get_sgtable (Don Dutile) [1664484] - [kernel] dma-mapping: consolidate the dma mmap implementations (Don Dutile) [1664484] - [kernel] dma-mapping: merge direct and noncoherent ops (Don Dutile) [1664484] - [include] dma-mapping: move the dma_coherent flag to struct device (Don Dutile) [1664484] - [include] dma-mapping: remove dma_deconfigure (Don Dutile) [1664484] - [base] dma-mapping: remove dma_configure (Don Dutile) [1664484] - [include] dma-mapping: relax warning for per-device areas (Don Dutile) [1664484] - [kernel] dma-mapping: add the missing ARCH_HAS_SYNC_DMA_FOR_CPU_ALL declaration (Don Dutile) [1664484] - [kernel] dma-noncoherent: add a arch_sync_dma_for_cpu_all hook (Don Dutile) [1664484] - [block] deprecate elevator= kernel parameter (Jeff Moyer) [1665295] - [rpmspec] kernel.spec: disable kabi checks until RC (=?UTF-8?q?=C4=8Cestm=C3=ADr=20Kalina?=) [1671007] - [iommu] iommu/amd: Unmap all mapped pages in error path of map_sg (Jerry Snitselaar) [1668448] - [iommu] iommu/amd: Call free_iova_fast with pfn in map_sg (Jerry Snitselaar) [1668448]- [arm64] arm64, vmcoreinfo : Append 'MAX_PHYSMEM_BITS' to vmcoreinfo (Bhupesh Sharma) [1666679] - [kernel] sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK (Joe Lawrence) [1667840] - [init] Small change to the message about certified hardware (Steve Best) [1671765] - [x86] x86/kdump: make the behavior of crashkernel=X consistent with kaslr (Pingfan Liu) [1640799] - [x86] Add back support for Intel processors (Steve Best) [1670529] - [net] SUNRPC: Clean up initialisation of the struct rpc_rqst (Benjamin Coddington) [1650494] - [x86] KABI, x86/paravirt: Protect paravirt ops structures (Waiman Long) [1669957] - [include] KABI: struct module padding (Prarit Bhargava) [1669480] - [include] KABI: struct stack_trace_struct padding (Prarit Bhargava) [1669480] - [documentation] iommu: Fix passthrough option documentation (Gary Hook) [1658391] - [iommu] iommu: Add config option to set passthrough as default (Gary Hook) [1658391] - [kernel] redhat: kernel: clean up taint flags (Jiri Benc) [1654313]- [scsi] scsi: qedi: Add the CRC size within iSCSI NVM image (Charles Rose) [1670186] - [fs] iomap: don't search past page end in iomap_is_partially_uptodate (Eric Sandeen) [1657588] - [netdrv] cxgb4: update supported DCB version (Arjun Vynipadath) [1668571] - [x86] kexec, KEYS: Make use of platform keyring for signature verify (Kairui Song) [1640486] - [security] integrity, KEYS: add a reference to platform keyring (Kairui Song) [1640486] - [security] efi: Allow the "db" UEFI variable to be suppressed (Kairui Song) [1640486] - [security] efi: Import certificates from UEFI Secure Boot (Kairui Song) [1640486] - [security] efi: Add an EFI signature blob parser (Kairui Song) [1640486] - [include] efi: Add EFI signature data types (Kairui Song) [1640486] - [security] integrity: Load certs to the platform keyring (Kairui Song) [1640486] - [security] integrity: Define a trusted platform keyring (Kairui Song) [1640486] - [security] security/integrity: remove unnecessary 'init_keyring' variable (Kairui Song) [1640486] - [x86] Fix kexec forbidding kernels signed with keys in the secondary keyring to boot (Kairui Song) [1640486] - [crypto] Replace magic for trusting the secondary keyring with #define (Kairui Song) [1640486] - [acpi] acpi/nfit: Fix command-supported detection (Jeff Moyer) [1665812] - [acpi] acpi/nfit: Block function zero DSMs (Jeff Moyer) [1665812] - [md] dm: add missing trace_block_split() to __split_and_process_bio() (Mike Snitzer) [1645283] - [md] dm: fix dm_wq_work() to only use __split_and_process_bio() if appropriate (Mike Snitzer) [1645283] - [md] dm: fix redundant IO accounting for bios that need splitting (Mike Snitzer) [1645283] - [md] dm: fix clone_bio() to trigger blk_recount_segments() (Mike Snitzer) [1645283] - [block] block: cover another queue enter recursion via BIO_QUEUE_ENTERED (Mike Snitzer) [1645283] - [md] dm thin: fix passdown_double_checking_shared_status() (Mike Snitzer) [1668039] - [tools] bpftool: Fix prog dump by tag (Jiri Olsa) [1667305] - [arm64] arm64: ftrace: Fix to enable syscall events on arm64 (Don Dutile) [1668035] - [arm64] arm64: implement syscall wrappers (Don Dutile) [1668035] - [arm64] arm64: convert compat wrappers to C (Don Dutile) [1668035] - [arm64] arm64: use SYSCALL_DEFINE6() for mmap (Don Dutile) [1668035] - [arm64] arm64: use {COMPAT,}SYSCALL_DEFINE0 for sigreturn (Don Dutile) [1668035] - [arm64] arm64: remove in-kernel call to sys_personality() (Don Dutile) [1668035] - [include] kernel: add ksys_personality() (Don Dutile) [1668035] - [arm64] arm64: drop alignment from syscall tables (Don Dutile) [1668035] - [arm64] arm64: entry: remove unused register aliases (Don Dutile) [1668035] - [arm64] arm64: convert native/compat syscall entry to C (Don Dutile) [1668035] - [arm64] arm64: svc: Ensure hardirq tracing is updated before return (Don Dutile) [1668035] - [arm64] arm64: convert syscall trace logic to C (Don Dutile) [1668035] - [arm64] arm64: move sve_user_{enable,disable} to (Don Dutile) [1668035] - [arm64] arm64: kill change_cpacr() (Don Dutile) [1668035] - [arm64] arm64: convert raw syscall invocation to C (Don Dutile) [1668035] - [arm64] arm64: introduce syscall_fn_t (Don Dutile) [1668035] - [arm64] arm64: remove sigreturn wrappers (Don Dutile) [1668035] - [arm64] arm64: rseq: Implement backend rseq calls and select HAVE_RSEQ (Don Dutile) [1668035] - [sound] ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock (Jaroslav Kysela) [1664249] - [infiniband] IB/hfi1: Fix an out-of-bounds access in get_hw_stats (Alex Estrin) [1667104] - [infiniband] IB/hfi1: Incorrect sizing of sge for PIO will OOPs (Alex Estrin) [1667095] - [drm] drm/nouveau: register backlight on pascal and newer (Ben Skeggs) [1664899] - [drm] drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for LVDS/eDP panels (Ben Skeggs) [1664899] - [drm] drm/nouveau/disp: move eDP panel power handling (Ben Skeggs) [1664899] - [drm] drm/nouveau/devinit: don't fail when PMU/PRE_OS is missing from VBIOS (Ben Skeggs) [1664899] - [kernel] locking/rwsem: Fix (possible) missed wakeup (Waiman Long) [1668014] - [kernel] futex: Fix (possible) missed wakeup (Waiman Long) [1668014] - [kernel] sched/wake_q: Fix wakeup ordering for wake_q (Waiman Long) [1668014] - [kernel] sched/wake_q: Document wake_q_add() (Waiman Long) [1668014] - [kernel] sched/wait: Fix rcuwait_wake_up() ordering (Waiman Long) [1668014] - [kernel] sched/Documentation: Update wake_up() & co. memory-barrier guarantees (Waiman Long) [1668014] - [kvm] KVM: PPC: Book3S HV: Flush guest mappings when turning dirty tracking on/off (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Book3S HV: Cleanups - constify memslots, fix comments (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Book3S HV: Map single pages when doing dirty page logging (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Pass change type down to memslot commit function (Laurent Vivier) [1650386] - [vhost] vhost: log dirty page correctly (Jason Wang) [1657578] - [netdrv] netxen: taint as unsupported in RHEL8 (Tony Camuso) [1654825] - [hid] HID: hiddev: fix potential Spectre v1 (Benjamin Tissoires) [1664611] - [net] resort to custom code for sk_buff padding (Paolo Abeni) [1665984] - [net] add padding to cipher_context (Paolo Abeni) [1665984] - [net] add padding to tls_crypto_context (Paolo Abeni) [1665984] - [net] add padding to ipv4_devconf (Paolo Abeni) [1665984] - [net] ip6mr: Fix potential Spectre v1 vulnerability (Stefano Brivio) [1663472] - [net] ipv4: Fix potential Spectre v1 vulnerability (Stefano Brivio) [1663472] - [include] add KABI padding to file_system_type (Eric Sandeen) [1665320 1650565] - [include] add KABI padding to multiple fs ops vectors (Eric Sandeen) [1665320] - [fs] add KABI padding to dentry structure (Eric Sandeen) [1665320] - [fs] add KABI padding to inode structure (Eric Sandeen) [1665320] - [include] add KABI padding to file_lock structure (Eric Sandeen) [1665320] - [include] KABI: add an iopoll method to struct file_operations (Eric Sandeen) [1665320] - [sound] ALSA: emux: Fix potential Spectre v1 vulnerabilities (Jaroslav Kysela) [1663477] - [sound] ALSA: pcm: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1663477] - [sound] ALSA: rme9652: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1663477] - [sound] ALSA: emu10k1: Fix potential Spectre v1 vulnerabilities (Jaroslav Kysela) [1663477] - [powerpc] powerpc/tm: Unset MSR[TS] if not recheckpointing (Gustavo Duarte) [1663853] - [netdrv] r8152: Add support for MAC address pass through on RTL8153-BND (Perry Yuan) [1658433] - [hid] HID: debug: fix the ring buffer implementation (Tony Camuso) [1669469] {CVE-2019-3819}- [netdrv] net: hns: Fix WARNING when hns modules installed (Xiaojun Tan) [1662120] - [netdrv] net: hns: Fix ping failed when use net bridge and send multicast (Xiaojun Tan) [1662120] - [netdrv] net: hns: Add mac pcs config when enable|disable mac (Xiaojun Tan) [1662120] - [netdrv] net: hns: Fix ntuple-filters status error. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Free irq when exit from abnormal branch (Xiaojun Tan) [1662120] - [netdrv] net: hns: Clean rx fbd when ae stopped. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Some registers use wrong address according to the datasheet. (Xiaojun Tan) [1662120] - [netdrv] net: hns: All ports can not work when insmod hns ko after rmmod. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Incorrect offset address used for some registers. (Xiaojun Tan) [1662120] - [include] ipmi: RH_KABI macros to pad kabi exposed structs (Tony Camuso) [1658175] - [scsi] reserve space in structures for KABI (Ewan Milne) [1664397]- [include] PCI: Add reserved fields to 'struct hotplug_slot' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct hotplug_slot_ops' (Myron Stowe) [1663534] - [pci] PCI: Add reserved fields to 'struct pci_sriov' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct pci_driver' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct pci_bus' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields, and extension, to 'struct pci_dev' (Myron Stowe) [1663534] - [pci] PCI: Add missing include to drivers/pci.h (Myron Stowe) [1663534] - [pci] PCI/IOV: Use VF0 cached config space size for other VFs (Myron Stowe) [1663534] - [include] PCI: always include 'p2pdma' in 'struct pci_dev' (Myron Stowe) [1663534] - [ata] PCI: Remove pci_set_dma_max_seg_size() (Myron Stowe) [1663534] - [pci] PCI: Remove pci_set_dma_seg_boundary() (Myron Stowe) [1663534] - [include] PCI: Remove pci_unmap_addr() wrappers for DMA API (Myron Stowe) [1663534] - [pci] PCI/AER: Abstract AER interrupt handling (Myron Stowe) [1663534] - [pci] PCI: Uninline PCI bus accessors for better ftracing (Myron Stowe) [1663534] - [pci] PCI/portdrv: Add runtime PM hooks for port service drivers (Myron Stowe) [1663534] - [pci] PCI: Make link active reporting detection generic (Myron Stowe) [1663534] - [block] block: don't lose track of REQ_INTEGRITY flag (Ming Lei) [1665684] - [nvme] nvme-pci: fix nvme_setup_irqs() (Ming Lei) [1661439] - [lib] sbitmap: Protect swap_lock from hardirq (Ming Lei) [1666192] - [lib] sbitmap: Protect swap_lock from softirqs (Ming Lei) [1666192] - [scsi] scsi: isci: initialize shost fully before calling scsi_add_host() (Ming Lei) [1664918] - [nvme] nvmet-fc: Mark NVMe/FC target mode driver as unsupported (Ewan Milne) [1664838] - [netdrv] bnx2x: Assign unique DMAE channel number for FW DMAE transactions. (Jonathan Toppins) [1638306] - [fs] block: don't use un-ordered __set_current_state(TASK_UNINTERRUPTIBLE) (Ming Lei) [1664580] - [netdrv] qed: Wait for ready indication before rereading the shmem (Chad Dupuis) [1652417] - [netdrv] qed: Avoid sending mailbox commands when MFW is not responsive (Chad Dupuis) [1652417] - [netdrv] qed: Wait for MCP halt and resume commands to take place (Chad Dupuis) [1652417] - [netdrv] qed: Prevent a possible deadlock during driver load and unload (Chad Dupuis) [1652417] - [fs] gfs2: Fix loop in gfs2_rbm_find (Andreas Grunbacher) [1658528] - [fs] gfs2: Get rid of potential double-freeing in gfs2_create_inode (Andreas Grunbacher) [1658539]- [vhost] vhost/vsock: fix vhost vsock cid hashing inconsistent (Stefan Hajnoczi) [1619848] {CVE-2018-14625} - [vhost] vhost/vsock: fix use-after-free in network stack callers (Stefan Hajnoczi) [1619848] {CVE-2018-14625} - [netdrv] bnx2x: Add VF spoof-checking configuration (Jonathan Toppins) [1646842] - [netdrv] net-next: hinic: fix a problem in free_tx_poll() (Xiaojun Tan) [1642016] - [netdrv] net: hns: fix for unmapping problem when SMMU is on (Xiaojun Tan) [1640526] - [netdrv] net: hns: add netif_carrier_off before change speed and duplex (Xiaojun Tan) [1640526] - [netdrv] net: hns: add the code for cleaning pkt in chip (Xiaojun Tan) [1640526] - [netdrv] net: hns: modify variable type in hns_nic_reuse_page (Xiaojun Tan) [1640526]- [irqchip] Mark GICv2 deprecated (Wei Huang) [1609391] - [scsi] qla2xxx: Use correct number of vectors for online CPUs (Himanshu Madhani) [1644058] - [scsi] megaraid_sas: mark Aero controllers as tech preview (Tomas Henzl) [1659972] - [scsi] megaraid_sas: add retry logic in megasas_readl (Tomas Henzl) [1659972] - [scsi] scsi: megaraid_sas: Introduce new Aero adapter type (Tomas Henzl) [1659972] - [scsi] scsi: megaraid_sas: Fix Ventura series based checks (Tomas Henzl) [1659972] - [scsi] scsi: libfc: retry PRLI if we cannot analyse the payload (Chris Leech) [1631843] - [scsi] scsi: libfc: check fc_frame_payload_get() return value for null (Chris Leech) [1631843] - [scsi] scsi: libfc: hold disc_mutex in fc_disc_stop_rports() (Chris Leech) [1631843] - [scsi] scsi: libfc: fixup lockdep annotations (Chris Leech) [1631843] - [scsi] scsi: libfc: fixup 'sleeping function called from invalid context' (Chris Leech) [1631843] - [scsi] scsi: libfc: Add lockdep annotations (Chris Leech) [1631843] - [md] dm crypt: fix parsing of extended IV arguments (Mike Snitzer) [1665290] - [kernel] redhat: kabi: reserved padding for kernel sched data structures (Rafael Aquini) [1664858] - [kernel] redhat: kabi: reserved padding for MM related data structures (Rafael Aquini) [1664858] - [vfio] vfio/type1: Fix unmap overflow off-by-one (Alex Williamson) [1662291] - [message] mptspi: pci-id table changes (Tomas Henzl) [1651803] - [message] mptspi: Taint kernel if mptspi is loaded (Tomas Henzl) [1651803] - [block] kabi: reserve space for public data structure (Ming Lei) [1551939] - [block] kabi: reserve space for blk-mq related structure (Ming Lei) [1551939] - [block] kabi: reserve space for bsg related structure (Ming Lei) [1551939] - [block] kabi: reserve space for integrity related structure (Ming Lei) [1551939] - [block] kabi: reserve space for CONFIG_BLK_DEV_ZONED (Ming Lei) [1551939] - [ata] ata: Disable AHCI ALPM feature for Ampere Computing eMAG SATA (David Milburn) [1663347] - [kvm] KVM: x86: Add CPUID support for new instruction WBNOINVD (Andrew Jones) [1659491] - [x86] KVM: x86: Use jmp to invoke kvm_spurious_fault() from .fixup (Andrew Jones) [1659491] - [virt] kvm: Change offset in kvm_write_guest_offset_cached to unsigned (Andrew Jones) [1659491] - [virt] kvm: Disallow wraparound in kvm_gfn_to_hva_cache_init (Andrew Jones) [1659491] - [kvm] KVM: x86: svm: report MSR_IA32_MCG_EXT_CTL as unsupported (Andrew Jones) [1659491] - [virt] arm/arm64: KVM: Add ARM_EXCEPTION_IS_TRAP macro (Andrew Jones) [1659491] - [arm64] arm64: KVM: Avoid setting the upper 32 bits of VTCR_EL2 to 1 (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Fix unintended stage 2 PMD mappings (Andrew Jones) [1659491] - [virt] arm/arm64: KVM: vgic: Force VM halt when changing the active state of GICv3 PPIs/SGIs (Andrew Jones) [1659491] - [arm64] KVM: arm/arm64: Fixup the kvm_exit tracepoint (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Consider priority and active state for pending irq (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Fix off-by-one bug in vgic_get_irq() (Andrew Jones) [1659491] - [kvm] KVM: X86: Fix NULL deref in vcpu_scan_ioapic (Andrew Jones) [1659491] - [kvm] KVM: Fix UAF in nested posted interrupt processing (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Cap SPIs to the VM-defined maximum (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Do not cond_resched_lock() with IRQs disabled (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic-v2: Set active_source to 0 when restoring state (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Fix VMID alloc race by reverting to lock-less (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Free the VMREAD/VMWRITE bitmaps if alloc_kvm_area() fails (Andrew Jones) [1659491] - [kvm] arm64: KVM: Install stage-2 translation before enabling traps (Andrew Jones) [1659491] - [kvm] arm64: KVM: Make VHE Stage-2 TLB invalidation operations non-interruptible (Andrew Jones) [1659491] - [arm64] arm64: entry: Remove confusing comment (Andrew Jones) [1659491] - [kvm] arm64: entry: Place an SB sequence following an ERET instruction (Andrew Jones) [1659491] - [arm64] arm64: Add support for SB barrier and patch in over DSB; ISB sequences (Andrew Jones) [1659491] - [kvm] kvm: nVMX: Set VM instruction error for VMPTRLD of unbacked page (Andrew Jones) [1659491] - [kvm] kvm: svm: Ensure an IBPB on all affected CPUs when freeing a vmcb (Andrew Jones) [1659491] - [kvm] kvm: mmu: Fix race in emulated page table writes (Andrew Jones) [1659491] - [kvm] KVM: nVMX/nSVM: Fix bug which sets vcpu->arch.tsc_offset to L1 tsc_offset (Andrew Jones) [1659491] - [kvm] KVM: VMX: Update shared MSRs to be saved/restored on MSR_EFER.LMA changes (Andrew Jones) [1659491] - [kvm] KVM: x86: Fix kernel info-leak in KVM_HC_CLOCK_PAIRING hypercall (Andrew Jones) [1659491] - [kvm] svm: Add mutex_lock to protect apic_access_page_done on AMD systems (Andrew Jones) [1659491] - [kvm] KVM/nVMX: Do not validate that posted_intr_desc_addr is page aligned (Andrew Jones) [1659491] - [kvm] KVM: arm64: Safety check PSTATE when entering guest and handle IL (Andrew Jones) [1659491] - [virt] KVM: arm64: Fix caching of host MDCR_EL2 value (Andrew Jones) [1659491] - [kvm] x86/kvm/nVMX: allow bare VMXON state migration (Andrew Jones) [1659491] - [kvm] x86/kvm/lapic: preserve gfn_to_hva_cache len on cache reinit (Andrew Jones) [1659491] - [kvm] KVM: hyperv: define VP assist page helpers (Andrew Jones) [1659491] - [kvm] KVM: nVMX: move check_vmentry_postreqs() call to nested_vmx_enter_non_root_mode() (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Always reflect #NM VM-exits to L1 (Andrew Jones) [1659491] - [kvm] KVM: x86: hyperv: consistently use 'hv_vcpu' for 'struct kvm_vcpu_hv' variables (Andrew Jones) [1659491] - [kvm] KVM: x86: hyperv: enforce vp_index < KVM_MAX_VCPUS (Andrew Jones) [1659491] - [kvm] KVM: nVMX: restore host state in nested_vmx_vmexit for VMFail (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Clear reserved bits of #DB exit qualification (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Ensure only THP is candidate for adjustment (Andrew Jones) [1659491] - [kvm] x86: kvm: avoid unused variable warning (Andrew Jones) [1659491] - [kvm] powerpc64/ftrace: Include ftrace.h needed for enable/disable calls (Andrew Jones) [1659491] - [kvm] x86/kvm/vmx: Remove duplicate l1d flush definitions (Andrew Jones) [1659491] - [tools] perf kvm: Fix subcommands on s390 (Andrew Jones) [1659491] - [arm64] arm64: add PSR_AA32_* definitions (Andrew Jones) [1659491] - [pci] PCI: hotplug: Document TODOs (Myron Stowe) [1664454] - [pci] PCI: hotplug: Embed hotplug_slot (Myron Stowe) [1664454] - [pci] PCI: hotplug: Drop hotplug_slot_info (Myron Stowe) [1664454] - [pci] PCI: hotplug: Constify hotplug_slot_ops (Myron Stowe) [1664454] - [pci] PCI: pciehp: Reshuffle controller struct for clarity (Myron Stowe) [1664454] - [pci] PCI: pciehp: Rename controller struct members for clarity (Myron Stowe) [1664454] - [pci] PCI: pciehp: Unify controller and slot structs (Myron Stowe) [1664454] - [pci] PCI: pciehp: Tolerate Presence Detect hardwired to zero (Myron Stowe) [1664454] - [pci] PCI: pciehp: Drop hotplug_slot_ops wrappers (Myron Stowe) [1664454] - [pci] PCI: pciehp: Drop unnecessary includes (Myron Stowe) [1664454] - [pci] PCI: pciehp: Differentiate between surprise and safe removal (Myron Stowe) [1664454] - [pci] PCI: Simplify disconnected marking (Myron Stowe) [1664454] - [tools] perf vendor events arm64: Revise core JSON events for eMAG (Jiri Olsa) [1663353] - [tools] perf vendor events arm64: Enable JSON events for eMAG (Jiri Olsa) [1663353] - [perf] drivers/perf: xgene: Add CPU hotplug support (Jiri Olsa) [1663349] - [scsi] mpt3sas: mark Aero controllers as tech preview (Tomas Henzl) [1663281] - [powerpc] KVM: PPC: Book3S HV: Keep rc bits in shadow pgtable in sync with host (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Introduce kvmhv_update_nest_rmap_rc_list() (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Apply combination of host and l1 pte rc for nested guest (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Align gfn to L1 page size when inserting nest-rmap entry (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Hold kvm->mmu_lock across updating nested pte rc bits (Suraj Jitindar Singh) [1662029] - [tools] perf python: Do not force closing original perf descriptor in evlist.get_pollfd (Jiri Olsa) [1659445] - [mm] mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings (Andrea Arcangeli) [1613993] - [rpmspec] spec: Add libperf-jvmti.so into perf debuginfo rpm (Jiri Olsa) [1653570] - [scsi] scsi: hisi_sas: Fix spin lock management in slot_index_alloc_quirk_v2_hw() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Update v3 hw AIP_LIMIT and CFG_AGING_TIME register values (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Use block layer tag instead for IPTT (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: unmask interrupts ent72 and ent74 (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Free slot later in slot_complete_vx_hw() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Fix the race between IO completion and timeout for SMP/internal IO (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Move evaluation of hisi_hba in hisi_sas_task_prep() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Feed back linkrate(max/min) when re-attached (Xiaojun Tan) [1642819] - [hwtracing] intel_th: pci: Add Ice Lake PCH support (Jiri Olsa) [1485529]- [kernel] userns: also map extents in the reverse map to kernel IDs (Chris von Recklinghausen) [1652679] {CVE-2018-18955} - [net] ipv6: route: Fix return value of ip6_neigh_lookup() on neigh_create() error (Stefano Brivio) [1662789] - [net] ipv6: frags: Fix bogus skb->sk in reassembled packets (Herbert Xu) [1645839] - [net] redhat: blacklist auto-loadable net modules in modules-extra (Marcelo Leitner) [1642795] - [net] redhat: move sctp modules to kernel-modules-extra (Marcelo Leitner) [1642795] - [net] add reserved fields to neighbour (Paolo Abeni) [1655084] - [net] add reserved fields to rtnl_link_stats* (Paolo Abeni) [1655084] - [net] reserve bits in netdev_features_t for future features (Paolo Abeni) [1655084] - [net] add reserved fields to sk_buff (Paolo Abeni) [1655084] - [net] add reserved fields to ipv6_devconf (Paolo Abeni) [1655084] - [net] add reserved fields to fib_rule (Paolo Abeni) [1655084] - [net] add reserved fields to sock (Paolo Abeni) [1655084] - [net] add reserved fields to genl_family (Paolo Abeni) [1655084] - [net] add reserved fields to proto_ops (Paolo Abeni) [1655084] - [net] add reserved fields to proto (Paolo Abeni) [1655084] - [net] add reserved fields to genl_ops (Paolo Abeni) [1655084] - [net] add reserved fields to dst_ops (Paolo Abeni) [1655084] - [net] add reserved fields to dst_entry (Paolo Abeni) [1655084] - [net] add reserved fields to lwtunnel_state (Paolo Abeni) [1655084] - [net] add reserved fields to packet_type (Paolo Abeni) [1655084] - [net] add reserved fields to napi_struct (Paolo Abeni) [1655084] - [net] add reserved fields to net_device (Paolo Abeni) [1655084] - [net] exclude wireless_dev from KABI protection (Paolo Abeni) [1655084] - [net] add reserved fields to dcbnl_rtnl_ops (Paolo Abeni) [1655084] - [net] add reserved fields to xfrm_* (Paolo Abeni) [1655084] - [net] add reserved fields to switchdev_obj (Paolo Abeni) [1655084] - [net] add reserved fields to switchdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to l3mdev_ops (Paolo Abeni) [1655084] - [net] exclude ndisc_ops from kABI protection (Paolo Abeni) [1655084] - [net] add reserved fields to xfrmdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to tlsdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to netdev_rx_queue (Paolo Abeni) [1655084] - [net] add reserved fields to netdev_queue (Paolo Abeni) [1655084] - [net] add reserved fields to rtnl_link_ops (Paolo Abeni) [1655084] - [net] add reserved fields to ethtool_ops (Paolo Abeni) [1655084] - [net] add reserved fields to header_ops (Paolo Abeni) [1655084] - [net] add reserved fields to net_device_ops (Paolo Abeni) [1655084] - [net] add reserved fields to flowi* structs (Paolo Abeni) [1655084] - [arm64] KVM: arm64: Clarify explanation of STAGE2_PGTABLE_LEVELS (Christoph von Recklinghausen) [1643586 1643522] - [arm64] KVM: arm/arm64: Rename kvm_arm_config_vm to kvm_arm_setup_stage2 (Christoph von Recklinghausen) [1643586 1643522] - [virt] KVM: arm64: Drop __cpu_init_stage2 on the VHE path (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Allow tuning the physical address size for VM (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Limit the minimum number of page table levels (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm64: Set a limit on the IPA size (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Add 52bit support for PAR to HPFAR conversoin (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Switch to per VM IPA limit (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Configure VTCR_EL2.SL0 per VM (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Dynamic configuration of VTTBR mask (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Make stage2 page table layout dynamic (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Prepare for dynamic stage2 page table layout (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm/arm64: Prepare for VM specific stage2 translations (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Configure VTCR_EL2 per VM (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Allow arch specific configurations for VM (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Clean up VTCR_EL2 initialisation (Christoph von Recklinghausen) [1643586 1643522] - [arm64] arm64: Add a helper for PARange to physical shift conversion (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Add helper for loading the stage2 setting for a VM (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Remove spurious WARN_ON (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Fix stage2_flush_memslot for 4 level page table (Christoph von Recklinghausen) [1643586 1643522] - [hv] hv_balloon: avoid touching uninitialized struct page during tail onlining (Vitaly Kuznetsov) [1662277] - [x86] Mark AMD EPYC guests as supported (David Arcari) [1663356] - [netdrv] be2net: Disable queue dump in be_tx_timeout handler (Petr Oros) [1646838] - [vhost] vhost: Fix Spectre V1 vulnerability (Jason Wang) [1663469] - [mm] mm/hugetlb.c: teach follow_hugetlb_page() to handle FOLL_NOWAIT (Andrea Arcangeli) [1575028] - [tools] cpupower: Fix AMD Family 0x17 msr_pstate size (Prarit Bhargava) [1659883] - [tools] cpupower: Fix coredump on VMWare (Prarit Bhargava) [1659883] - [scsi] scsi: csiostor: remove flush_scheduled_work() (Arjun Vynipadath) [1663973] - [powerpc] KVM: PPC: Book3S HV: Fix race between kvm_unmap_hva_range and MMU mode switch (David Gibson) [1663225] - [fs] userfaultfd: check VM_MAYWRITE was set after verifying the uffd is registered (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: UFFDIO_COPY: set the page dirty if VM_WRITE is not set (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: add i_size checks (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem/hugetlbfs: only allow to register VM_MAYWRITE vmas (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: allocate anonymous memory for MAP_PRIVATE shmem (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: use ENOENT instead of EFAULT if the atomic copy user fails (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: allow get_mempolicy(MPOL_F_NODE|MPOL_F_ADDR) to trigger userfaults (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] userfaultfd: clear flag if remap event not enabled (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] userfaultfd: disable irqs when taking the waitqueue lock (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] fs/userfaultfd.c: remove redundant pointer uwq (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] NFS: nfs_compare_mount_options always compare auth flavors. (Steve Dickson) [1661619] - [infiniband] RDMA/hns: Bugfix for RoCE loopback test (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Update posting & querying mailbox (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Fix the bug while use multi-hop of pbl (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Init qp context when modify qp from reset to init (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Bugfix pbl configuration for rereg mr (Xiaojun Tan) [1663359] - [security] selinux: add support for RTM_NEWCHAIN, RTM_DELCHAIN, and RTM_GETCHAIN (Ondrej Mosnacek) [1660564] - [scsi] scsi: megaraid_sas: driver version update (Tomas Henzl) [1656261] - [scsi] scsi: megaraid_sas: Use 63-bit DMA addressing (Tomas Henzl) [1656261] - [x86] x86/kvm: mark as TechPreview when running as a nested hypervisor (Vitaly Kuznetsov) [1519039] - [rpmspec] kernel.spec: Fix kernel-tools files section logic (Prarit Bhargava) [1661247] - [crypto] crypto: ccp - Make function sev_get_firmware() static (Gary Hook) [1632894] - [crypto] crypto: ccp - Allow SEV firmware to be chosen based on Family and Model (Gary Hook) [1632894] - [crypto] crypto: ccp - Fix static checker warning (Gary Hook) [1632894] - [crypto] crypto: ccp - add timeout support in the SEV command (Gary Hook) [1632894] - [nvdimm] nvdimm: Use namespace index data to reduce number of label reads needed (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Split label init out from the logic for getting config data (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Remove empty if statement (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Clarify comment in sizeof_namespace_index (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Sanity check labeloff (Jeff Moyer) [1634345] - [nvdimm] libnvdimm, dimm: Maximize label transfer size (Jeff Moyer) [1634345] - [mm] mm/page-writeback.c: fix range_cyclic writeback vs writepages deadlock (Brian Foster) [1659528] - [input] Input: elantech - disable elan-i2c for P52 and P72 (Benjamin Tissoires) [1658602] - [fs] cachefiles: avoid deprecated get_seconds() (David Howells) [1655613] - [fs] fscache, cachefiles: remove redundant variable 'cache' (David Howells) [1655613] - [fs] cachefiles: Explicitly cast enumerated type in put_object (David Howells) [1655613] - [fs] fscache: fix race between enablement and dropping of object (David Howells) [1655613] - [fs] cachefiles: Fix page leak in cachefiles_read_backing_file while vmscan is active (David Howells) [1655613] - [fs] fscache: Fix race in fscache_op_complete() due to split atomic_sub & read (David Howells) [1655613] - [fs] cachefiles: Fix an assertion failure when trying to update a failed object (David Howells) [1655613] - [fs] fscache: Fix out of bound read in long cookie keys (David Howells) [1655613] - [fs] fscache: Fix incomplete initialisation of inline key space (David Howells) [1655613] - [fs] cachefiles: fix the race between cachefiles_bury_object() and rmdir(2) (David Howells) [1655613] - [kernel] ebpf: record usage of eBPF (Jiri Benc) [1654279] - [kernel] add rh_features to /proc (Jiri Benc) [1654279] - [kernel] add support for rh_features (Jiri Benc) [1654279] - [fs] fs/lock: show locks taken by processes from another pidns (Miklos Szeredi) [1616125] - [iommu] iommu/arm-smmu: Support non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm-v7s: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu: Add "iommu.strict" command line option (Xiaojun Tan) [1643114] - [iommu] iommu/dma: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu: Ensure that page-table updates are visible before TLBI (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Implement flush_iotlb_all hook (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Avoid back-to-back CMD_SYNC operations (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Fix unexpected CMD_SYNC timeout (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm: Fix race handling in split_blk_unmap() (Xiaojun Tan) [1643114] - [infiniband] RDMA/hns: Update some attributes of the RoCE device (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Limit the size of extend sge of sq (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Bugfix for CM test (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Submit bad wr when post send wr exception (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Bugfix for reserved qp number (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Refactor the codes for setting transport opode (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Move all prints out of irq handle (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix an error code in hns_roce_v2_init_eq_table() (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix usage of bitmap allocation functions return values (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Support flush cqe for hip08 in kernel space (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Program the tclass and flow label into the hardware (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Use macro instead of magic number (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Modify qp will return errno when qp type is illegal (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Assign the value for vlan field of qp context (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Only assgin the fields of the av if IB_QP_AV bit is set (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Enable modify_cq for uverbs. (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the data type of immediate data (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Use delay instead of usleep (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add illegal hop_num judgement (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add 50GE type of hnae3 device match (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Do not overwrite the error code during error unwind in hns_roce_init (Xiaojun Tan) [1639578] - [infiniband] hns: Remove a set-but-not-used variable (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the implementation of set_mac (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the implementation of set_gid (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add TPQ link table support (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add TSQ link table support (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix endian conversions and annotations (Xiaojun Tan) [1639578] - [scsi] scsi: hisi_sas: Add SATA FIS check for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: add memory barrier in task delivery function (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Tidy hisi_sas_task_prep() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Implement handlers of PCIe FLR for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: relocate some common code for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: tidy host controller reset function a bit (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Fix the failure of recovering PHY from STP link timeout (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: tidy channel interrupt handler for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Drop hisi_sas_slot_abort() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Update a couple of register settings for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Add missing PHY spinlock init (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Pre-allocate slot DMA buffers (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Release all remaining resources in clear nexus ha (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Add a flag to filter PHY events during reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Adjust task reject period during host reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Fix the conflict between dev gone and host reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Use dmam_alloc_coherent() (Zhou Wang) [1639541] - [netdrv] xen/netfront: fix waiting for xenbus state change (Petr Oros) [1638456]- [x86] expand cpu feature/bug bits (David Arcari) [1662434] - [x86] add kabi support for cpuinfo_x86 (David Arcari) [1662434] - [init] Display a message about certified hardware (Steve Best) [1660523] - [scsi] scsi: t10-pi: Return correct ref tag when queue has no integrity profile (Ming Lei) [1660719] - [scsi] scsi: storvsc: Fix a race in sub-channel creation that can cause panic (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: set callbacks on open (Mohammed Gamal) [1650149] - [hv] vmbus: fix subchannel removal (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: defer opening vmbus until first use (Mohammed Gamal) [1650149] - [hv] vmbus: split ring buffer allocation from open (Mohammed Gamal) [1650149] - [hv] vmbus: pass channel to hv_process_channel_removal (Mohammed Gamal) [1650149] - [hv] Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind() (Mohammed Gamal) [1650149] - [uio] hv_uio_generic: map ringbuffer phys addr (Mohammed Gamal) [1650149] - [uio] uio: introduce UIO_MEM_IOVA (Mohammed Gamal) [1650149] - [hv] vmbus: add driver_override support (Mohammed Gamal) [1650149] - [hv] vmbus: keep pointer to ring buffer page (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: increase size of receive and send buffers (Mohammed Gamal) [1650149] - [uio] uio: add SPDX license tags (Mohammed Gamal) [1650149] - [fs] gfs2: take jdata unstuff into account in do_grow (Robert S Peterson) [1660519] - [drm] drm/dp_mst: Check if primary mstb is null (Lyude Paul) [1658711] - [tools] perf tests: Use shebangs in the shell scripts (Michael Petlan) [1613523]- [mm] mm: put_and_wait_on_page_locked() while page is migrated (Baoquan He) [1649214] - [netdrv] i40e: define proper net_device::neigh_priv_len (Stefan Assmann) [1658743] - [netdrv] i40e: fix VLAN.TCI == 0 RX HW offload (Stefan Assmann) [1658743] - [netdrv] i40e: fix mac filter delete when setting mac address (Stefan Assmann) [1658743] - [netdrv] i40e: prevent overlapping tx_timeout recover (Stefan Assmann) [1658743] - [netdrv] i40e: Use correct shift for VLAN priority (Stefan Assmann) [1658743] - [netdrv] i40e: always set ks->base.speed in i40e_get_settings_link_up (Stefan Assmann) [1658743] - [netdrv] i40e: don't restart nway if autoneg not supported (Stefan Assmann) [1658743] - [netdrv] i40e: enable NETIF_F_NTUPLE and NETIF_F_HW_TC at driver load (Stefan Assmann) [1658743] - [netdrv] i40e: restore NETIF_F_GSO_IPXIP[46] to netdev features (Stefan Assmann) [1658743] - [acpi] ACPI/APEI: Clear GHES block_status before panic() (David Arcari) [1662442] - [misc] VMCI: Resource wildcard match fixed (Vitaly Kuznetsov) [1652868] - [mm] mm/page_alloc.c: don't call kasan_free_pages() at deferred mem init (Waiman Long) [1655964] - [block] block/bio: Do not zero user pages (Ming Lei) [1662502] - [vhost] disable zerocopy by default (Jason Wang) [1582756] - [block] kyber: use sbitmap add_wait_queue/list_del wait helpers (Ming Lei) [1661426] - [lib] sbitmap: add helpers for add/del wait queue handling (Ming Lei) [1661426] - [net] Revert "sunrpc: Ensure we always close the socket after a connection shuts down" (Dave Wysochanski) [1657449] - [vhost] vhost/vsock: fix reset orphans race with close timeout (Stefan Hajnoczi) [1660445] - [misc] genwqe: Fix size check (Steve Best) [1660126] - [fs] aio: fix spectre gadget in lookup_ioctx (Jeff Moyer) [1660963] - [block] block: save irq state in blkg_lookup_create() (Ming Lei) [1660299] - [md] dm: don't reuse bio for flushes (Ming Lei) [1660401] - [wireless] mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom (Stanislaw Gruszka) [1637113] - [wireless] nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT (Stanislaw Gruszka) [1637113] - [wireless] nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds (Stanislaw Gruszka) [1637113] - [block] blk-mq: enable IO poll if .nr_queues of type poll > 0 (Ming Lei) [1660826] - [powerpc] powerpc/rtas: Fix a potential race between CPU-Offline & Migration (Desnes Augusto Nunes do Rosario) [1639266] - [x86] kvm: x86: Add AMD's EX_CFG to the list of ignored MSRs (Eduardo Habkost) [1625111] - [scsi] scsi_sysfs: make unpriv_sgio queue attribute accessible for non-block devices (Paolo Bonzini) [1584504] - [block] scsi_ioctl: introduce unpriv_sgio queue flag (Paolo Bonzini) [1584504] - [block] scsi_ioctl: pass request_queue to blk_verify_command (Paolo Bonzini) [1584504] - [fs] ext4: missing !bh check in ext4_xattr_inode_write() (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in __ext4_read_dirblock() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_xattr_move_to_block() on error path (Lukas Czerner) [1659481] - [fs] ext4: release bs.bh before re-using in ext4_xattr_block_find() (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_xattr_get_block() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix possible leak of s_journal_flag_rwsem in error path (Lukas Czerner) [1659481] - [fs] ext4: fix possible leak of sbi->s_group_desc_leak in error path (Lukas Czerner) [1659481] - [fs] ext4: avoid possible double brelse() in add_new_gdb() on error path (Lukas Czerner) [1659481] - [fs] ext4: avoid buffer leak in ext4_orphan_add() after prior errors (Lukas Czerner) [1659481] - [fs] ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty() (Lukas Czerner) [1659481] - [fs] ext4: fix possible inode leak in the retry loop of ext4_resize_fs() (Lukas Czerner) [1659481] - [fs] ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while resizing (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() update_backups()'s error path (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() add_new_gdb_meta_bg()'s error path (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path (Lukas Czerner) [1659481] - [fs] ext4: avoid potential extra brelse in setup_new_flex_group_blocks() (Lukas Czerner) [1659481] - [scsi] scsi: lpfc: Enable Management features for IF_TYPE=6 (Dick Kennedy) [1658755] - [scsi] scsi: mpt3sas: Update driver version to 27.101.00.00 (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Replace readl with ioc->base_readl (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Add separate function for aero doorbell reads (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Introduce flag for aero based controllers (Tomas Henzl) [1659035] - [md] dm: do not allow readahead to limit IO size (Mike Snitzer) [1658757] - [md] dm raid: fix false -EBUSY when handling check/repair message (Mike Snitzer) [1658757] - [block] blk-mq: change blk_mq_queue_busy() to blk_mq_queue_inflight() (Mike Snitzer) [1658757] - [md] dm rq: cleanup leftover code from recently removed q->mq_ops branching (Mike Snitzer) [1658757] - [md] dm verity: log the hash algorithm implementation (Mike Snitzer) [1658757] - [md] dm crypt: log the encryption algorithm implementation (Mike Snitzer) [1658757] - [md] dm integrity: fix spelling mistake in workqueue name (Mike Snitzer) [1658757] - [md] dm flakey: Properly corrupt multi-page bios. (Mike Snitzer) [1658757] - [md] dm: Check for device sector overflow if CONFIG_LBDAF is not set (Mike Snitzer) [1658757] - [md] dm crypt: use u64 instead of sector_t to store iv_offset (Mike Snitzer) [1658757] - [md] dm kcopyd: Fix bug causing workqueue stalls (Mike Snitzer) [1658757] - [md] dm snapshot: Fix excessive memory usage and workqueue stalls (Mike Snitzer) [1658757] - [md] dm bufio: update comment in dm-bufio.c (Mike Snitzer) [1658757] - [md] dm writecache: fix typo in error msg for creating writecache_flush_thread (Mike Snitzer) [1658757] - [md] dm: remove indirect calls from __send_changing_extent_only() (Mike Snitzer) [1658757] - [md] dm mpath: only flush workqueue when needed (Mike Snitzer) [1658757] - [md] dm: avoid indirect call in __dm_make_request (Mike Snitzer) [1658757] - [md] dm thin: bump target version (Mike Snitzer) [1658757] - [md] dm thin: send event about thin-pool state change _after_ making it (Mike Snitzer) [1658757] - [md] dm cache metadata: verify cache has blocks in blocks_are_clean_separate_dirty() (Mike Snitzer) [1658757] - [md] dm writecache: remove disabled code in memory_entry() (Mike Snitzer) [1658757] - [md] dm raid: avoid bitmap with raid4/5/6 journal device (Mike Snitzer) [1658757] - [md] dm crypt: make workqueue names device-specific (Mike Snitzer) [1658757] - [md] dm: add dm_table_device_name() (Mike Snitzer) [1658757] - [md] dm ioctl: harden copy_params()'s copy_from_user() from malicious users (Mike Snitzer) [1658757] - [md] dm: remove unnecessary unlikely() around WARN_ON_ONCE() (Mike Snitzer) [1658757] - [md] dm thin: use refcount_t for thin_c reference counting (Mike Snitzer) [1658757] - [netdrv] nfp: provide a better warning when ring allocation fails (Pablo Cascon) [1645456] - [netdrv] nfp: use kvcalloc() to allocate SW buffer descriptor arrays (Pablo Cascon) [1645456] - [scsi] scsi: lpfc: rport port swap discovery issue. (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: Fix discovery failures during port failovers with lots of vports (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: refactor mailbox structure context fields (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: Correct loss of fc4 type on remote port address change (Dick Kennedy) [1656635] - [hid] HID: multitouch: Add pointstick support for Cirque Touchpad (Perry Yuan) [1656673] - [powerpc] KVM: PPC: Book3S HV: Fix handling for interrupted H_ENTER_NESTED (Suraj Jitindar Singh) [1649980] - [powerpc] powerpc: Select CONFIG_SWIOTLB (Gustavo Duarte) [1648466] - [fs] nfs: Fix a missed page unlock after pg_doio() (Benjamin Coddington) [1651287] - [arm64] arm64: fix possible spectre-v1 write in ptrace_hbp_set_event() (Mark Salter) [1637585] - [fs] fsnotify: Fix busy inodes during unmount (Lukas Czerner) [1650462] - [tools] perf vendor events arm64: Update ThunderX2 implementation defined pmu core events (Robert Richter) [1501638] - [tools] perf tools: Fix undefined symbol scnprintf in libperf-jvmti.so (Jiri Olsa) [1579484]- [block] blk-mq: export hctx->type in debugfs instead of sysfs (Ming Lei) [1660040] - [block] blk-mq: fix dispatch from sw queue (Ming Lei) [1660040] - [block] blk-mq: skip zero-queue maps in blk_mq_map_swqueue (Ming Lei) [1660040] - [nvme] nvme-pci: don't share queue maps (Ming Lei) [1660040] - [block] blk-mq: only dispatch to non-defauly queue maps if they have queues (Ming Lei) [1660040] - [x86] KVM: LAPIC: Fix pv ipis use-before-initialization (Paul Lai) [1657702] - [fs] autofs: fix directory and symlink access (Ian Kent) [1611967] - [infiniband] IB/iser: Fix possible NULL deref at iser_inv_desc() (Don Dutile) [1657574] - [infiniband] RDMA/core: Fix unwinding flow in case of error to register device (Don Dutile) [1657574] - [infiniband] IB/rxe: fix for duplicate request processing and ack psns (Don Dutile) [1657574] - [infiniband] IB/ipoib: Clear IPCB before icmp_send (Don Dutile) [1657574] - [infiniband] RDMA/core: Do not expose unsupported counters (Don Dutile) [1657574] - [infiniband] IB/ucm: Fix Spectre v1 vulnerability (Don Dutile) [1657574] - [infiniband] RDMA/ucma: Fix Spectre v1 vulnerability (Don Dutile) [1657574] - [infiniband] RDMA/uverbs: Don't overwrite NULL pointer with ZERO_SIZE_PTR (Don Dutile) [1657574] - [infiniband] RDMA/cma: Do not ignore net namespace for unbound cm_id (Don Dutile) [1657574] - [net] xprtrdma: Reset credit grant properly after a disconnect (Don Dutile) [1657574] - [input] Input: hyper-v - fix wakeup from suspend-to-idle (Vitaly Kuznetsov) [1588888] - [kernel] kernel: hung_task.c: disable on suspend (Vitaly Kuznetsov) [1588888] - [kernel] redhat: add a comment with warning about RH_KABI_EXCLUDE usage (Jiri Benc) [1656933] - [rpmspec] Sign the aarch64 kernel (Jeremy Linton) [1659158]- [netdrv] nfp: flower: add geneve option match offload (Pablo Cascon) [1655604] - [netdrv] nfp: flower: add geneve option push action offload (Pablo Cascon) [1655604] - [netdrv] nfp: flower: offload tos and tunnel flags for ipv4 udp tunnels (Pablo Cascon) [1655604] - [netdrv] nfp: flower: set ip tunnel ttl from encap action (Pablo Cascon) [1655604] - [netdrv] nfp: flower: extract ipv4 udp tunnel ttl from route (Pablo Cascon) [1655604] - [net] sctp: hold transport before accessing its asoc in sctp_transport_get_next (Marcelo Leitner) [1656271] - [net] sctp: fix the data size calculation in sctp_data_size (Marcelo Leitner) [1656271] - [net] sctp: fix race on sctp_id2asoc (Marcelo Leitner) [1656271] - [net] rtnetlink: ndo_dflt_fdb_dump() only work for ARPHRD_ETHER devices (Hangbin Liu) [1657120] - [netdrv] mlx5e: fix csum adjustments caused by RXFCS (Hangbin Liu) [1657120] - [net] drop skb on failure in ip_check_defrag() (Hangbin Liu) [1657120] - [net] rtnl_configure_link: fix dev flags changes arg to __dev_notify_flags (Hangbin Liu) [1657120] - [net] socket: fix a missing-check bug (Hangbin Liu) [1657120] - [net] rtnetlink: Disallow FDB configuration for non-Ethernet device (Hangbin Liu) [1657120] - [net] rtnetlink: Fail dump if target netnsid is invalid (Hangbin Liu) [1657120] - [net] rtnetlink: fix rtnl_fdb_dump() for ndmsg header (Hangbin Liu) [1657120] - [net] rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096 (Hangbin Liu) [1657120] - [net] socket: fix struct ifreq size in compat ioctl (Hangbin Liu) [1657120] - [net] fix pskb_trim_rcsum_slow() with odd trim offset (Hangbin Liu) [1657120] - [net] gso_segment: Reset skb->mac_len after modifying network header (Hangbin Liu) [1657120] - [net] Use __kernel_clockid_t in uapi net_stamp.h (Davide Caratti) [1638022] - [net] tun: Consistently configure generic netdev params via rtnetlink (Matteo Croce) [1657910] - [net] tun: napi flags belong to tfile (Matteo Croce) [1657910] - [net] tun: initialize napi_mutex unconditionally (Matteo Croce) [1657910] - [net] tun: remove unused parameters (Matteo Croce) [1657910] - [net] team: Forbid enslaving team device to itself (Matteo Croce) [1658725] - [net] sched: Remove TCA_OPTIONS from policy (Davide Caratti) [1658516] - [net] sched: cls_api: add missing validation of netlink attributes (Davide Caratti) [1658516] - [net] sched: gred: pass the right attribute to gred_change_table_def() (Davide Caratti) [1658516] - [net] sched: cls_u32: fix hnode refcounting (Davide Caratti) [1658516] - [net] sched: Add policy validation for tc attributes (Davide Caratti) [1658516] - [net] bpf: use __GFP_COMP while allocating page (Andrea Claudi) [1658231] - [net] xsk: do not call synchronize_net() under RCU read lock (Andrea Claudi) [1658231] - [net] bpf: fix partial copy of map_ptr when dst is scalar (Andrea Claudi) [1658231] - [net] bpf: Fix bpf_msg_pull_data() (Andrea Claudi) [1658231] - [net] bpf: fix shift upon scatterlist ring wrap-around in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix sg shift repair start offset in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix several offset tests in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] vlan: add support for tunnel offload (Andrea Claudi) [1656804] - [net] 8021q: move vlan offload registrations into vlan_core (Hangbin Liu) [1657658] - [net] ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are called (Stefano Brivio) [1658010] - [net] ipv6: Allow onlink routes to have a device mismatch if it is the default route (Stefano Brivio) [1658010] - [net] ipv6: Fix index counter for unicast addresses in in6_dump_addrs (Stefano Brivio) [1658010] - [net] ipv6: mcast: fix a use-after-free in inet6_mc_check (Stefano Brivio) [1658010] - [net] ipv6: rate-limit probes for neighbourless routes (Stefano Brivio) [1658010] - [net] ipv6: stop leaking percpu memory in fib6 info (Stefano Brivio) [1658010] - [net] ipv6: Remove extra call to ip6_convert_metrics for multipath case (Stefano Brivio) [1658010] - [net] ipv6: Display all addresses in output of /proc/net/if_inet6 (Stefano Brivio) [1658010] - [net] ipv6: do not copy dst flags on rt init (Stefano Brivio) [1658010] - [net] ipv6: Only update MTU metric if it set (Stefano Brivio) [1658010] - [net] ipv6: don't get lwtstate twice in ip6_rt_copy_init() (Stefano Brivio) [1658010] - [net] ipv6: Put lwtstate when destroying fib6_info (Stefano Brivio) [1658010] - [net] ip6_tunnel: Fix encapsulation layout (Stefano Brivio) [1658008] - [net] vxlan: fill ttl inherit info (Stefano Brivio) [1658008] - [net] ip_tunnel: be careful when accessing the inner header (Stefano Brivio) [1658008] - [net] vti6: remove !skb->ignore_df check from vti6_xmit() (Stefano Brivio) [1658008] - [net] ip6_vti: fix a null pointer deference when destroy vti6 tunnel (Stefano Brivio) [1658008] - [net] ip6_vti: fix creating fallback tunnel device for vti6 (Stefano Brivio) [1658008] - [net] ip_vti: fix a null pointer deferrence when create vti fallback tunnel (Stefano Brivio) [1658008] - [net] l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache (Stefano Brivio) [1658008] - [net] macsec: let the administrator set UP state even if lowerdev is down (Sabrina Dubroca) [1645540] - [net] macsec: update operstate when lower device changes (Sabrina Dubroca) [1645540] - [net] tcp: do not restart timewait timer on rst reception (Paolo Abeni) [1657988] - [net] tcp: really ignore MSG_ZEROCOPY if no SO_ZEROCOPY (Paolo Abeni) [1657988] - [net] tcp, ulp: add alias for all ulp modules (Paolo Abeni) [1657988] - [net] tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach (Paolo Abeni) [1657988] - [net] ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT state (Paolo Abeni) [1657988] - [net] neighbour: Avoid writing before skb->head in neigh_hh_output() (Stefano Brivio) [1643336] - [net] ipv6: Check available headroom in ip6_xmit() even without options (Stefano Brivio) [1643336] - [net] ipv6: fix possible use-after-free in ip6_xmit() (Stefano Brivio) [1643336] - [net] openvswitch: Fix push/pop ethernet validation (Hangbin Liu) [1657226] - [net] cgroup, netclassid: add a preemption point to write_classid (Hangbin Liu) [1657226] - [net] ethtool: fix a privilege escalation bug (Hangbin Liu) [1657226] - [net] llc: set SOCK_RCU_FREE in llc_sap_add_socket() (Hangbin Liu) [1657226] - [net] dcb: For wild-card lookups, use priority -1, not 0 (Hangbin Liu) [1657226] - [net] packet: fix packet drop as of virtio gso (Hangbin Liu) [1657226] - [net] netlabel: check for IPV4MASK in addrinfo_get (Hangbin Liu) [1657226] - [net] netfilter: seqadj: re-load tcp header pointer after possible head reallocation (Florian Westphal) [1654259] - [net] netfilter: nf_tables: avoid BUG_ON usage (Florian Westphal) [1654259] - [net] netfilter: nf_tables: deactivate expressions in rule replecement routine (Florian Westphal) [1654259] - [net] netfilter: nat: fix double register in masquerade modules (Florian Westphal) [1654259] - [net] netfilter: add missing error handling code for register functions (Florian Westphal) [1654259] - [net] netfilter: nf_tables: fix use-after-free when deleting compat expressions (Florian Westphal) [1654259] - [net] netfilter: xt_RATEEST: remove netns exit routine (Florian Westphal) [1654259] - [net] netfilter: nf_tables: don't use position attribute on rule replacement (Florian Westphal) [1654259] - [net] revert "netfilter: nft_numgen: add map lookups for numgen random operations" (Florian Westphal) [1654259] - [net] netfilter: xt_IDLETIMER: add sysfs filename checking routine (Florian Westphal) [1654259] - [net] netfilter: conntrack: fix calculation of next bucket number in early_drop (Florian Westphal) [1654259] - [net] netfilter: conntrack: get rid of double sizeof (Florian Westphal) [1654259] - [net] netfilter: nft_set_rbtree: add missing rb_erase() in GC routine (Florian Westphal) [1654259] - [net] netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for NF_REPEAT (Florian Westphal) [1654259] - [net] netfilter: nf_tables: release chain in flushing set (Florian Westphal) [1654259] - [net] netfilter: xt_checksum: ignore gso skbs (Florian Westphal) [1654259] - [net] netfilter: xt_cluster: add dependency on conntrack module (Florian Westphal) [1654259] - [net] netfilter: fix memory leaks on netlink_dump_start error (Florian Westphal) [1654259] - [net] netfilter: x_tables: do not fail xt_alloc_table_info too easilly (Florian Westphal) [1654259] - [net] ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest() (Florian Westphal) [1654259] - [net] netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses (Florian Westphal) [1654259] - [net] xfrm: policy: use hlist rcu variants on insert (Sabrina Dubroca) [1657272] - [net] xfrm: validate template mode (Sabrina Dubroca) [1657272] - [net] xfrm: Fix NULL pointer dereference when skb_dst_force clears the dst_entry. (Sabrina Dubroca) [1657272] - [net] xfrm: reset transport header back to network header after all input transforms ahave been applied (Sabrina Dubroca) [1657272] - [net] xfrm: reset crypto_done when iterating over multiple input xfrms (Sabrina Dubroca) [1657272] - [net] xfrm: Validate address prefix lengths in the xfrm selector. (Sabrina Dubroca) [1657272] - [net] tls: fix currently broken MSG_PEEK behavior (Sabrina Dubroca) [1657225] - [net] tls: zero the crypto information from tls_context before freeing (Sabrina Dubroca) [1657225] - [net] tls: clear key material from kernel memory when do_tls_setsockopt_conf fails (Sabrina Dubroca) [1657225] - [net] tls: don't copy the key out of tls12_crypto_info_aes_gcm_128 (Sabrina Dubroca) [1657225] - [net] tls: Set count of SG entries if sk_alloc_sg returns -ENOSPC (Sabrina Dubroca) [1657225] - [net] tls: possible hang when do_tcp_sendpages hits sndbuf is full case (Sabrina Dubroca) [1657225] - [net] tls: Fix improper revert in zerocopy_from_iter (Sabrina Dubroca) [1657225] - [net] tls: Fix zerocopy_from_iter iov handling (Sabrina Dubroca) [1657225] - [net] netfilter: conntrack: reset tcp maxwin on re-register (Florian Westphal) [1647310] - [net] configs: Enable CONFIG_IP_SET_HASH_IPMAC as a module (Stefano Brivio) [1655301] - [net] udp: fix handling of CHECKSUM_COMPLETE packets (Paolo Abeni) [1655656] - [net] udp: Unbreak modules that rely on external __skb_recv_udp() availability (Paolo Abeni) [1655656] - [net] udp6: fix encap return code for resubmitting (Paolo Abeni) [1655656] - [net] team: no need to do team_notify_peers or team_mcast_rejoin when disabling port (Hangbin Liu) [1653197] - [net] sctp: not increase stream's incnt before sending addstrm_in request (Xin Long) [1651428] - [net] sctp: not allow to set asoc prsctp_enable by sockopt (Xin Long) [1647272] - [net] revert "sctp: remove sctp_transport_pmtu_check" (Xin Long) [1643330] - [net] fix XPS static_key accounting (Ivan Vecera) [1651781] - [net] restore call to netdev_queue_numa_node_write when resetting XPS (Ivan Vecera) [1651781] - [net] allow fallback function to pass netdev (Ivan Vecera) [1651781] - [net] allow ndo_select_queue to pass netdev (Ivan Vecera) [1651781] - [net] Add generic ndo_select_queue functions (Ivan Vecera) [1651781] - [net] Add support for subordinate traffic classes to netdev_pick_tx (Ivan Vecera) [1651781] - [net] ixgbe: Add code to populate and use macvlan TC to Tx queue map (Ivan Vecera) [1651781] - [net] Add support for subordinate device traffic classes (Ivan Vecera) [1651781] - [net] net-sysfs: Drop support for XPS and traffic_class on single queue device (Ivan Vecera) [1651781] - [net] Provide stub for __netif_set_xps_queue if there is no CONFIG_XPS (Ivan Vecera) [1651781] - [net] allow to call netif_reset_xps_queues() under cpus_read_lock (Ivan Vecera) [1651781] - [net] documentation: Add explanation for XPS using Rx-queue(s) map (Ivan Vecera) [1651781] - [net] net-sysfs: Add interface for Rx queue(s) map per Tx queue (Ivan Vecera) [1651781] - [net] Enable Tx queue selection based on Rx queues (Ivan Vecera) [1651781] - [net] Record receive queue number for a connection (Ivan Vecera) [1651781] - [net] sock: Change tx_queue_mapping in sock_common to unsigned short (Ivan Vecera) [1651781] - [net] Use static_key for XPS maps (Ivan Vecera) [1651781] - [net] Refactor XPS for CPUs and Rx queues (Ivan Vecera) [1651781] - [net] devlink: Add helper function for safely copy string param (Ivan Vecera) [1647914] - [net] devlink: Fix param cmode driverinit for string type (Ivan Vecera) [1647914] - [net] devlink: Fix param set handling for string type (Ivan Vecera) [1647914] - [net] devlink: Add Documentation/networking/devlink-params-bnxt.txt (Ivan Vecera) [1647914] - [net] devlink: Add Documentation/networking/devlink-params.txt (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter msix_vec_per_pf_min (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter msix_vec_per_pf_max (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter ignore_ari (Ivan Vecera) [1647914] - [net] devlink: double free in devlink_resource_fill() (Ivan Vecera) [1647914] - [net] devlink: Add extack for eswitch operations (Ivan Vecera) [1647914] - [net] devlink: Add generic parameters region_snapshot (Ivan Vecera) [1647914] - [net] devlink: Add support for region snapshot read command (Ivan Vecera) [1647914] - [net] devlink: Add support for region snapshot delete command (Ivan Vecera) [1647914] - [net] devlink: Extend the support querying for region snapshot IDs (Ivan Vecera) [1647914] - [net] devlink: Add support for region get command (Ivan Vecera) [1647914] - [net] devlink: Add support for creating region snapshots (Ivan Vecera) [1647914] - [net] devlink: Add callback to query for snapshot id before snapshot create (Ivan Vecera) [1647914] - [net] devlink: Add support for creating and destroying regions (Ivan Vecera) [1647914] - [net] devlink: fix incorrect return statement (Ivan Vecera) [1647914] - [net] devlink: Add enable_sriov boolean generic parameter (Ivan Vecera) [1647914] - [net] devlink: Add generic parameters internal_err_reset and max_macs (Ivan Vecera) [1647914] - [net] devlink: Add devlink notifications support for params (Ivan Vecera) [1647914] - [net] devlink: Add support for get/set driverinit value (Ivan Vecera) [1647914] - [net] devlink: Add param set command (Ivan Vecera) [1647914] - [net] devlink: Add param get command (Ivan Vecera) [1647914] - [net] devlink: Add devlink_param register and unregister (Ivan Vecera) [1647914] - [net] ipvs: call ip_vs_dst_notifier earlier than ipv6_dev_notf (Xin Long) [1645064] - [net] ipv6: fix a dst leak when removing its exception (Xin Long) [1645064] - [net] netfilter: ipset: list:set: Decrease refcount synchronously on deletion and replace (Stefano Brivio) [1649089] - [net] bridge: remove ipv6 zero address check in mcast queries (Hangbin Liu) [1639666] - [net] bridge: do not add port to router list when receives query with source 0.0.0.0 (Hangbin Liu) [1639666] - [net] netfilter: ipv6: fix oops when defragmenting locally generated fragments (Florian Westphal) [1642341] - [net] xfrm6: call kfree_skb when skb is toobig (Sabrina Dubroca) [1628851] - [net] sched: act_police: fix memory leak in case of invalid control action (Ivan Vecera) [1638022] - [net] sched: act_police: add missing spinlock initialization (Ivan Vecera) [1638022] - [net] netfilter: xt_socket: check sk before checking for netns. (Ivan Vecera) [1638022] - [net] sched: act_police: fix race condition on state variables (Ivan Vecera) [1638022] - [net] sched: cls_flower: validate nested enc_opts_policy to avoid warning (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix memory leak when IDR allocation fails (Ivan Vecera) [1638022] - [net] configs: disable CAKE, ETF & SKBPRIO qdisc in config (Ivan Vecera) [1638022] - [net] tc-tests: test denial of 'goto chain' for exceed traffic in police.json (Ivan Vecera) [1638022] - [net] tc-tests: test denial of 'goto chain' on 'random' traffic in gact.json (Ivan Vecera) [1638022] - [net] sched: act_police: disallow 'goto chain' on fallback control action (Ivan Vecera) [1638022] - [net] sched: act_gact: disallow 'goto chain' on fallback control action (Ivan Vecera) [1638022] - [net] net_sched: fix a crash in tc_new_tfilter() (Ivan Vecera) [1638022] - [net] core: make function ___gnet_stats_copy_basic() static (Ivan Vecera) [1638022] - [net] net_sched: convert idrinfo->lock from spinlock to a mutex (Ivan Vecera) [1638022] - [net] loopback: clear skb->tstamp before netif_rx() (Ivan Vecera) [1638022] - [net] skbuff: preserve sock reference when scrubbing the skb. (Ivan Vecera) [1638022] - [net] netfilter: check if the socket netns is correct. (Ivan Vecera) [1638022] - [net] sched: make function qdisc_free_cb() static (Ivan Vecera) [1638022] - [net] sched: use reference counting for tcf blocks on rules update (Ivan Vecera) [1638022] - [net] sched: implement tcf_block_refcnt_{get|put}() (Ivan Vecera) [1638022] - [net] sched: protect block idr with spinlock (Ivan Vecera) [1638022] - [net] sched: implement functions to put and flush all chains (Ivan Vecera) [1638022] - [net] sched: change tcf block reference counter type to refcount_t (Ivan Vecera) [1638022] - [net] sched: use Qdisc rcu API instead of relying on rtnl lock (Ivan Vecera) [1638022] - [net] sched: add helper function to take reference to Qdisc (Ivan Vecera) [1638022] - [net] sched: extend Qdisc with rcu (Ivan Vecera) [1638022] - [net] sched: rename qdisc_destroy() to qdisc_put() (Ivan Vecera) [1638022] - [net] core: netlink: add helper refcount dec and lock function (Ivan Vecera) [1638022] - [net] sched: act_ipt: check for underflow in __tcf_ipt_init() (Ivan Vecera) [1638022] - [net] sched: Add hardware specific counters to TC actions (Ivan Vecera) [1638022] - [net] core: Add new basic hardware counter (Ivan Vecera) [1638022] - [net] net_sched: change tcf_del_walker() to take idrinfo->lock (Ivan Vecera) [1638022] - [net] sched: Use FIELD_SIZEOF directly instead of reimplementing its function (Ivan Vecera) [1638022] - [net] sched: act_sample: fix NULL dereference in the data path (Ivan Vecera) [1638022] - [net] sched: act_police: don't use spinlock in the data path (Ivan Vecera) [1638022] - [net] sched: act_police: use per-cpu counters (Ivan Vecera) [1638022] - [net] net_sched: notify filter deletion when deleting a chain (Ivan Vecera) [1638022] - [net] htb: use anonymous union for simplicity (Ivan Vecera) [1638022] - [net] net_sched: remove redundant qdisc lock classes (Ivan Vecera) [1638022] - [net] sched: cls_flower: dump offload count value (Ivan Vecera) [1638022] - [net] net_sched: properly cancel netlink dump on failure (Ivan Vecera) [1638022] - [net] sched: fix memory leak in act_tunnel_key_init() (Ivan Vecera) [1638022] - [net] sched: action_ife: take reference to meta module (Ivan Vecera) [1638022] - [net] act_ife: fix a potential use-after-free (Ivan Vecera) [1638022] - [net] sched: act_nat: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_skbedit: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: null actions array pointer before releasing action (Ivan Vecera) [1638022] - [net] sched: fix type of htb statistics (Ivan Vecera) [1638022] - [net] net_sched: add missing tcf_lock for act_connmark (Ivan Vecera) [1638022] - [net] revert "net: sched: act: add extack for lookup callback" (Ivan Vecera) [1638022] - [net] tc-testing: add test-cases for numeric and invalid control action (Ivan Vecera) [1638022] - [net] net_sched: reject unknown tcfa_action values (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix dump of extended layered op (Ivan Vecera) [1638022] - [net] sched: return -ENOENT when trying to remove filter from non-existent chain (Ivan Vecera) [1638022] - [net] sched: fix extack error message when chain is failed to be created (Ivan Vecera) [1638022] - [net] sched: Fix memory exposure from short TCA_U32_SEL (Ivan Vecera) [1638022] - [net] net_sched: fix unused variable warning in stmmac (Ivan Vecera) [1638022] - [net] sch_cake: Fix TC filter flow override and expand it to hosts as well (Ivan Vecera) [1638022] - [net] sch_cake: Remove unused including (Ivan Vecera) [1638022] - [net] act_ife: fix a potential deadlock (Ivan Vecera) [1638022] - [net] act_ife: move tcfa_lock down to where necessary (Ivan Vecera) [1638022] - [net] revert "net: sched: act_ife: disable bh when taking ife_mod_lock" (Ivan Vecera) [1638022] - [net] net_sched: remove unused tcfa_capab (Ivan Vecera) [1638022] - [net] net_sched: remove list_head from tc_action (Ivan Vecera) [1638022] - [net] net_sched: remove unused tcf_idr_check() (Ivan Vecera) [1638022] - [net] net_sched: remove unused parameter for tcf_action_delete() (Ivan Vecera) [1638022] - [net] net_sched: remove unnecessary ops->delete() (Ivan Vecera) [1638022] - [net] net_sched: improve and refactor tcf_action_put_many() (Ivan Vecera) [1638022] - [net] sched: always disable bh when taking tcf_lock (Ivan Vecera) [1638022] - [net] sched: act_ife: always release ife action on init error (Ivan Vecera) [1638022] - [net] cls_matchall: fix tcf_unbind_filter missing (Ivan Vecera) [1638022] - [net] sched: act_ife: disable bh when taking ife_mod_lock (Ivan Vecera) [1638022] - [net] sched: act_mirred method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_vlan method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_skbmod method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_skbedit method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_simple method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_police method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_pedit method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_nat method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_ipt method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_gact method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_sum method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_bpf method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_connmark method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_police: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] core: protect rate estimator statistics pointer with lock (Ivan Vecera) [1638022] - [net] sched: act_mirred: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: extend action ops with put_dev callback (Ivan Vecera) [1638022] - [net] sched: act_vlan: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_tunnel_key: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_skbmod: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_simple: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_sample: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_pedit: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_ipt: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_ife: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_gact: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_csum: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_bpf: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] tc: Update README and add config (Ivan Vecera) [1638022] - [net] sched: fix block->refcnt decrement (Ivan Vecera) [1638022] - [net] tc-tests: initial version of nat action unit tests (Ivan Vecera) [1638022] - [net] sched: allow flower to match tunnel options (Ivan Vecera) [1638022] - [net] flow_dissector: allow dissection of tunnel options from metadata (Ivan Vecera) [1638022] - [net] tc-testing: remove duplicate spaces in skbedit match patterns (Ivan Vecera) [1638022] - [net] tc-testing: remove duplicate spaces in connmark match patterns (Ivan Vecera) [1638022] - [net] tc-testing: flush gact actions on test teardown (Ivan Vecera) [1638022] - [net] tc-testing: fix ip address in u32 test (Ivan Vecera) [1638022] - [net] sched: cls_flower: Fix an error code in fl_tmplt_create() (Ivan Vecera) [1638022] - [net] sched: fix flush on non-existing chain (Ivan Vecera) [1638022] - [net] sched: make tcf_chain_{get, put}() static (Ivan Vecera) [1638022] - [net] sched: fix notifications for action-held chains (Ivan Vecera) [1638022] - [net] sched: change name of zombie chain to "held_by_acts_only" (Ivan Vecera) [1638022] - [net] act_mirred: use TC_ACT_REINSERT when possible (Ivan Vecera) [1638022] - [net] tc: introduce TC_ACT_REINSERT. (Ivan Vecera) [1638022] - [net] tc/act: remove unneeded RCU lock in action callback (Ivan Vecera) [1638022] - [net] sched: user-space can't set unknown tcfa_action values (Ivan Vecera) [1638022] - [net] Add and use skb_mark_not_on_list(). (Ivan Vecera) [1638022] - [net] sch_netem: Move private queue handler to generic location. (Ivan Vecera) [1638022] - [net] sch_htb: Remove local SKB queue handling code. (Ivan Vecera) [1638022] - [net] act_bpf: Use kmemdup instead of duplicating it in tcf_bpf_init_from_ops (Ivan Vecera) [1638022] - [net] cls_bpf: Use kmemdup instead of duplicating it in cls_bpf_prog_from_ops (Ivan Vecera) [1638022] - [net] act_pedit: remove unnecessary semicolon (Ivan Vecera) [1638022] - [net] sched: don't dump chains only held by actions (Ivan Vecera) [1638022] - [net] sch_cake: Make gso-splitting configurable from userspace (Ivan Vecera) [1638022] - [net] sched: unmark chain as explicitly created on delete (Ivan Vecera) [1638022] - [net] sched: cls_api: fix dead code in switch (Ivan Vecera) [1638022] - [net] sched: cls_flower: Use correct inline function for assignment of vlan tpid (Ivan Vecera) [1638022] - [net] sched: fix trailing whitespace (Ivan Vecera) [1638022] - [net] cbs: Add support for the graft function (Ivan Vecera) [1638022] - [net] sched: add skbprio scheduler (Ivan Vecera) [1638022] - [net] selftests: forwarding: add tests for TC chain templates (Ivan Vecera) [1638022] - [net] selftests: forwarding: add tests for TC chains creation adn destruction (Ivan Vecera) [1638022] - [net] selftests: forwarding: move shblock tc support check to a separate helper (Ivan Vecera) [1638022] - [net] sched: cls_flower: propagate chain teplate creation and destruction to drivers (Ivan Vecera) [1638022] - [net] sched: cls_flower: implement chain templates (Ivan Vecera) [1638022] - [net] sched: cls_flower: change fl_init_dissector to accept mask and dissector (Ivan Vecera) [1638022] - [net] sched: cls_flower: move key/mask dumping into a separate function (Ivan Vecera) [1638022] - [net] sched: introduce chain templates (Ivan Vecera) [1638022] - [net] sched: introduce chain object to uapi (Ivan Vecera) [1638022] - [net] sched: Avoid implicit chain 0 creation (Ivan Vecera) [1638022] - [net] sched: push ops lookup bits into tcf_proto_lookup_ops() (Ivan Vecera) [1638022] - [net] nfp: bring back support for offloading shared blocks (Ivan Vecera) [1638022] - [net] sched: use PTR_ERR_OR_ZERO macro in tcf_block_cb_register (Ivan Vecera) [1638022] - [net] tc-tests: initial version of fw filter unit tests (Ivan Vecera) [1638022] - [net] sch_cake: Fix tin order when set through skb->priority (Ivan Vecera) [1638022] - [net] sched: act_skbedit: don't use spinlock in the data path (Ivan Vecera) [1638022] - [net] sched: skbedit: use per-cpu counters (Ivan Vecera) [1638022] - [net] tc-testing: add geneve options in tunnel_key unit tests (Ivan Vecera) [1638022] - [net] sched: fix unprotected access to rcu cookie pointer (Ivan Vecera) [1638022] - [net] sched: act_ife: fix memory leak in ife init (Ivan Vecera) [1638022] - [net] sched: refactor flower walk to iterate over idr (Ivan Vecera) [1638022] - [net] sched: flower: Fix null pointer dereference when run tc vlan command (Ivan Vecera) [1638022] - [net] sched: Fix warnings from xchg() on RCU'd cookie pointer. (Ivan Vecera) [1638022] - [net] cls_flower: fix error values for commands not supported by drivers (Ivan Vecera) [1638022] - [net] nfp: handle cls_flower command default case (Ivan Vecera) [1638022] - [net] bnxt: simplify cls_flower command switch and handle default case (Ivan Vecera) [1638022] - [net] sch_cake: Conditionally split GSO segments (Ivan Vecera) [1638022] - [net] sch_cake: Add overhead compensation support to the rate shaper (Ivan Vecera) [1638022] - [net] sch_cake: Add DiffServ handling (Ivan Vecera) [1638022] - [net] sch_cake: Add NAT awareness to packet classifier (Ivan Vecera) [1638022] - [net] netfilter: Add nf_ct_get_tuple_skb global lookup function (Ivan Vecera) [1638022] - [net] sch_cake: Add optional ACK filter (Ivan Vecera) [1638022] - [net] sch_cake: Add ingress mode (Ivan Vecera) [1638022] - [net] sched: Add Common Applications Kept Enhanced (cake) qdisc (Ivan Vecera) [1638022] - [net] Use __u32 in uapi net_stamp.h (Ivan Vecera) [1638022] - [net] sched: flower: Add supprt for matching on QinQ vlan headers (Ivan Vecera) [1638022] - [net] sched: flower: Dump the ethertype encapsulated in vlan (Ivan Vecera) [1638022] - [net] flow_dissector: Add support for QinQ dissection (Ivan Vecera) [1638022] - [net] sched: flower: Add support for matching on vlan ethertype (Ivan Vecera) [1638022] - [net] flow_dissector: Save vlan ethertype from headers (Ivan Vecera) [1638022] - [net] sched: change action API to use array of pointers to actions (Ivan Vecera) [1638022] - [net] sched: atomically check-allocate action (Ivan Vecera) [1638022] - [net] sched: use reference counting action init (Ivan Vecera) [1638022] - [net] sched: don't release reference on action overwrite (Ivan Vecera) [1638022] - [net] sched: implement reference counted action release (Ivan Vecera) [1638022] - [net] sched: add 'delete' function to action ops (Ivan Vecera) [1638022] - [net] sched: implement action API that deletes action by index (Ivan Vecera) [1638022] - [net] sched: always take reference to action (Ivan Vecera) [1638022] - [net] sched: implement unlocked action init API (Ivan Vecera) [1638022] - [net] sched: change type of reference and bind counters (Ivan Vecera) [1638022] - [net] sched: use rcu for action cookie update (Ivan Vecera) [1638022] - [net] sched: Make etf report drops on error_queue (Ivan Vecera) [1638022] - [net] sched: Add HW offloading capability to ETF (Ivan Vecera) [1638022] - [net] sched: Introduce the ETF Qdisc (Ivan Vecera) [1638022] - [net] sched: Allow creating a Qdisc watchdog with other clocks (Ivan Vecera) [1638022] - [net] packet: Hook into time based transmission. (Ivan Vecera) [1638022] - [net] ipv6: Hook into time based transmission (Ivan Vecera) [1638022] - [net] ipv4: Hook into time based transmission (Ivan Vecera) [1638022] - [net] Add a new socket option for a future transmit time. (Ivan Vecera) [1638022] - [net] Clear skb->tstamp only on the forwarding path (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix possible memory leak in tcf_pedit_init() (Ivan Vecera) [1638022] - [net] net sched actions: add extack messages in pedit action (Ivan Vecera) [1638022] - [net] net:sched: add action inheritdsfield to skbedit (Ivan Vecera) [1638022] - [net] tc-testing: initial version of tunnel_key unit tests (Ivan Vecera) [1638022] - [net] net sched actions: avoid bitwise operation on signed value in pedit (Ivan Vecera) [1638022] - [net] net sched actions: fix misleading text strings in pedit action (Ivan Vecera) [1638022] - [net] net sched actions: use sizeof operator for buffer length (Ivan Vecera) [1638022] - [net] net sched actions: fix sparse warning (Ivan Vecera) [1638022] - [net] net sched actions: fix coding style in pedit headers (Ivan Vecera) [1638022] - [net] net sched actions: fix coding style in pedit action (Ivan Vecera) [1638022] - [net] netem: slotting with non-uniform distribution (Ivan Vecera) [1638022] - [net] check tunnel option type in tunnel flags (Ivan Vecera) [1638022] - [net] sched: act_tunnel_key: add extended ack support (Ivan Vecera) [1638022] - [net] tc-tests: add an extreme-case csum action test (Ivan Vecera) [1638022] - [net] net_sched: remove unused htb drop_list (Ivan Vecera) [1638022]- [rpmspec] always run make with HOSTCFLAGS/HOSTLDFLAGS set (Jiri Olsa) [1624124] - [rpmspec] Pass global build flags to tools build (Jiri Olsa) [1624124] - [rpmspec] Pass global build flags to bpftool build (Jiri Olsa) [1624124] - [kernel] kbuild: Use HOST*FLAGS options from the command line (Jiri Olsa) [1624124] - [scripts] kbuild: Rename HOST_LOADLIBES to KBUILD_HOSTLDLIBS (Jiri Olsa) [1624124] - [tools] kbuild: Rename HOSTLDFLAGS to KBUILD_HOSTLDFLAGS (Jiri Olsa) [1624124] - [scripts] kbuild: Rename HOSTCXXFLAGS to KBUILD_HOSTCXXFLAGS (Jiri Olsa) [1624124] - [tools] kbuild: Rename HOSTCFLAGS to KBUILD_HOSTCFLAGS (Jiri Olsa) [1624124] - [tools] tools cpupower: Override CFLAGS assignments (Jiri Olsa) [1624124] - [tools] tools cpupower debug: Allow to use outside build flags (Jiri Olsa) [1624124] - [tools] perf tools: Pass build flags to traceevent build (Jiri Olsa) [1624124] - [tools] tools lib traceevent: Use LDFLAGS in the build commands (Jiri Olsa) [1624124] - [tools] perf tools: Link libperf-jvmti.so with LDFLAGS variable (Jiri Olsa) [1624124] - [tools] bpftool: Allow add linker flags via EXTRA_LDFLAGS variable (Jiri Olsa) [1624124] - [tools] bpftool: Allow to add compiler flags via EXTRA_CFLAGS variable (Jiri Olsa) [1624124] - [block] blkcg: handle dying request_queue when associating a blkg (Ming Lei) [1655485] - [block] block: deactivate blk_stat timer in wbt_disable_default() (Ming Lei) [1655485] - [lib] sbitmap: flush deferred clears for resize and shallow gets (Ming Lei) [1655485] - [md] dm: fix request-based dm's use of dm_wait_for_completion (Ming Lei) [1655485] - [nvme] nvme: fix irq vs io_queue calculations (Ming Lei) [1655485] - [md] dm: fix inflight IO check (Ming Lei) [1655485] - [md] dm: remove the pending IO accounting (Ming Lei) [1655485] - [block] block: return just one value from part_in_flight (Ming Lei) [1655485] - [block] block: switch to per-cpu in-flight counters (Ming Lei) [1655485] - [block] block: delete part_round_stats and switch to less precise counting (Ming Lei) [1655485] - [block] block: stop passing 'cpu' to all percpu stats methods (Ming Lei) [1655485] - [md] dm rq: leverage blk_mq_queue_busy() to check for outstanding IO (Ming Lei) [1655485] - [md] dm: dont rewrite dm_disk(md)->part0.in_flight (Ming Lei) [1655485] - [lib] sbitmap: silence bogus lockdep IRQ warning (Ming Lei) [1655485] - [scsi] scsi: Fix a harmless double shift bug (Ming Lei) [1655485] - [block] blk-mq: re-build queue map in case of kdump kernel (Ming Lei) [1655485] - [block] blkcg: put back rcu lock in blkcg_bio_issue_check() (Ming Lei) [1655485] - [block] block: convert io-latency to use rq_qos_wait (Ming Lei) [1655485] - [block] block: convert wbt_wait() to use rq_qos_wait() (Ming Lei) [1655485] - [block] block: add rq_qos_wait to rq_qos (Ming Lei) [1655485] - [block] blkcg: rename blkg_try_get() to blkg_tryget() (Ming Lei) [1655485] - [block] blkcg: change blkg reference counting to use percpu_ref (Ming Lei) [1655485] - [block] blkcg: remove bio_disassociate_task() (Ming Lei) [1655485] - [block] blkcg: remove additional reference to the css (Ming Lei) [1655485] - [block] blkcg: remove bio->bi_css and instead use bio->bi_blkg (Ming Lei) [1655485] - [block] blkcg: associate writeback bios with a blkg (Ming Lei) [1655485] - [block] blkcg: associate a blkg for pages being evicted by swap (Ming Lei) [1655485] - [block] blkcg: consolidate bio_issue_init() to be a part of core (Ming Lei) [1655485] - [block] blkcg: associate blkg when associating a device (Ming Lei) [1655485] - [block] dm: set the static flush bio device on demand (Ming Lei) [1655485] - [block] blkcg: introduce common blkg association logic (Ming Lei) [1655485] - [block] blkcg: convert blkg_lookup_create() to find closest blkg (Ming Lei) [1655485] - [block] blkcg: update blkg_lookup_create() to do locking (Ming Lei) [1655485] - [block] blkcg: fix ref count issue with bio_blkcg() using task_css (Ming Lei) [1655485] - [block] blk-mq: remove QUEUE_FLAG_POLL from default MQ flags (Ming Lei) [1655485] - [block] block: enable polling by default if a poll map is initalized (Ming Lei) [1655485] - [block] block: only allow polling if a poll queue_map exists (Ming Lei) [1655485] - [block] block: remove ->poll_fn (Ming Lei) [1655485] - [nvme] nvme-mpath: remove I/O polling support (Ming Lei) [1655485] - [nvme] nvme-rdma: remove I/O polling support (Ming Lei) [1655485] - [nvme] nvme-pci: remove the CQ lock for interrupt driven queues (Ming Lei) [1655485] - [nvme] nvme-pci: don't poll from irq context when deleting queues (Ming Lei) [1655485] - [nvme] nvme-pci: refactor nvme_disable_io_queues (Ming Lei) [1655485] - [nvme] nvme-pci: consolidate code for polling non-dedicated queues (Ming Lei) [1655485] - [nvme] nvme-pci: only allow polling with separate poll queues (Ming Lei) [1655485] - [nvme] nvme-pci: cleanup SQ allocation a bit (Ming Lei) [1655485] - [nvme] nvme-pci: use atomic bitops to mark a queue enabled (Ming Lei) [1655485] - [block] block: move queues types to the block layer (Ming Lei) [1655485] - [fs] aio: clear IOCB_HIPRI (Ming Lei) [1655485] - [lib] sbitmap: fix sbitmap_for_each_set() (Ming Lei) [1655485] - [block] blk-mq: don't call ktime_get_ns() if we don't need it (Ming Lei) [1655485] - [block] block: add cmd_flags to print_req_error (Ming Lei) [1655485] - [lib] sbitmap: optimize wakeup check (Ming Lei) [1655485] - [lib] sbitmap: ammortize cost of clearing bits (Ming Lei) [1655485] - [block] block: avoid extra bio reference for async O_DIRECT (Ming Lei) [1655485] - [lib] sbitmap: don't loop for find_next_zero_bit() for !round_robin (Ming Lei) [1655485] - [block] blk-mq: use plug for devices that implement ->commits_rqs() (Ming Lei) [1655485] - [block] blk-mq: use bd->last == true for list inserts (Ming Lei) [1655485] - [block] ataflop: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [block] virtio_blk: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [nvme] nvme: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [block] blk-mq: add mq_ops->commit_rqs() (Ming Lei) [1655485] - [block] block: improve logic around when to sort a plug list (Ming Lei) [1655485] - [block] blk-mq: Add a NULL check in blk_mq_free_map_and_requests() (Ming Lei) [1655485] - [block] ataflop: fix error handling in atari_floppy_init() (Ming Lei) [1655485] - [block] block: add io timeout to sysfs (Ming Lei) [1655485] - [block] block: use rcu_work instead of call_rcu to avoid sleep in softirq (Ming Lei) [1655485] - [block] blk-mq: fix failure to decrement plug count on single rq removal (Ming Lei) [1655485] - [block] sunvdc: Do not spin in an infinite loop when vio_ldc_send() returns EAGAIN (Ming Lei) [1655485] - [block] block: sum requests in the plug structure (Ming Lei) [1655485] - [block] blk-mq: Simplify request completion state (Ming Lei) [1655485] - [scsi] scsi: Do not rely on blk-mq for double completions (Ming Lei) [1655485] - [block] blk-mq: Return true if request was completed (Ming Lei) [1655485] - [block] blk-mq: never redirect polled IO completions (Ming Lei) [1655485] - [block] blk-mq: ensure mq_ops ->poll() is entered at least once (Ming Lei) [1655485] - [block] block: make blk_poll() take a parameter on whether to spin or not (Ming Lei) [1655485] - [nvme] nvme: remove opportunistic polling from bdev target (Ming Lei) [1655485] - [block] blk-mq: remove 'tag' parameter from mq_ops->poll() (Ming Lei) [1655485] - [block] blk-mq: when polling for IO, look for any completion (Ming Lei) [1655485] - [block] block: fix attempt to assign NULL io_context (Ming Lei) [1655485] - [block] block: Initialize BIO I/O priority early (Ming Lei) [1655485] - [block] block: prevent merging of requests with different priorities (Ming Lei) [1655485] - [fs] aio: Fix fallback I/O priority value (Ming Lei) [1655485] - [block] block: Introduce get_current_ioprio() (Ming Lei) [1655485] - [block] block: Remove bio->bi_ioc (Ming Lei) [1655485] - [fs] aio: Comment use of IOCB_FLAG_IOPRIO aio flag (Ming Lei) [1655485] - [nvme] nvme-fc: remove ->poll implementation (Ming Lei) [1655485] - [block] block: have ->poll_fn() return number of entries polled (Ming Lei) [1655485] - [block] block: avoid ordered task state change for polled IO (Ming Lei) [1655485] - [nvme] nvme: default to 0 poll queues (Ming Lei) [1655485] - [block] floppy: remove now unused 'flags' variable (Ming Lei) [1655485] - [mmc] mmc: stop abusing the request queue_lock pointer (Ming Lei) [1655485] - [block] ide: don't acquire queue_lock in ide_complete_pm_rq (Ming Lei) [1655485] - [block] ide: don't acquire queue lock in ide_pm_execute_rq (Ming Lei) [1655485] - [block] pktcdvd: remove queue_lock around blk_queue_max_hw_sectors (Ming Lei) [1655485] - [block] floppy: remove queue_lock around floppy_end_request (Ming Lei) [1655485] - [block] block: remove the rq_alloc_data request_queue field (Ming Lei) [1655485] - [block] block: don't plug for aio/O_DIRECT HIPRI IO (Ming Lei) [1655485] - [block] block: for async O_DIRECT, mark us as polling if asked to (Ming Lei) [1655485] - [block] block: add polled wakeup task helper (Ming Lei) [1655485] - [block] blk-rq-qos: inline check for q->rq_qos functions (Ming Lei) [1655485] - [block] block: add queue_is_mq() helper (Ming Lei) [1655485] - [nvme] nvme: provide optimized poll function for separate poll queues (Ming Lei) [1655485] - [block] ide: clear ide_req()->special for non-passthrough requests (Ming Lei) [1655485] - [nvme] nvme: fix handling of EINVAL on pci_alloc_irq_vectors_affinity() (Ming Lei) [1655485] - [block] block: add wbt_disable_default export for BFQ (Ming Lei) [1655485] - [block] block: remove the queue_lock indirection (Ming Lei) [1655485] - [block] block: remove the lock argument to blk_alloc_queue_node (Ming Lei) [1655485] - [mmc] mmc: stop abusing the request queue_lock pointer (Ming Lei) [1655485] - [mmc] mmc: simplify queue initialization (Ming Lei) [1655485] - [block] umem: don't override the queue_lock (Ming Lei) [1655485] - [block] drbd: don't override the queue_lock (Ming Lei) [1655485] - [block] blk-cgroup: move locking into blkg_destroy_all (Ming Lei) [1655485] - [block] blk-cgroup: consolidate error handling in blkcg_init_queue (Ming Lei) [1655485] - [block] block: remove a few unused exports (Ming Lei) [1655485] - [block] block: update a few comments for the legacy request removal (Ming Lei) [1655485] - [block] block: remove the unused lock argument to rq_qos_throttle (Ming Lei) [1655485] - [block] block: remove queue_lockdep_assert_held (Ming Lei) [1655485] - [block] block: use atomic bitops for ->queue_flags (Ming Lei) [1655485] - [block] block: don't hold the queue_lock over blk_abort_request (Ming Lei) [1655485] - [block] block: remove deadline __deadline manipulation helpers (Ming Lei) [1655485] - [block] block: remove QUEUE_FLAG_BYPASS and ->bypass (Ming Lei) [1655485] - [nvme] nvmet-rdma: fix response use after free (Ming Lei) [1655485] - [nvme] nvme: validate controller state before rescheduling keep alive (Ming Lei) [1655485] - [block] block, bfq: fix decrement of num_active_groups (Ming Lei) [1655485] - [ata] libata: whitelist all SAMSUNG MZ7KM* solid-state disks (Ming Lei) [1655485] - [nvme] nvme-rdma: fix double freeing of async event data (Ming Lei) [1655485] - [nvme] nvme-pci: fix surprise removal (Ming Lei) [1655485] - [nvme] nvme: Free ctrl device name on init failure (Ming Lei) [1655485] - [nvme] nvme-fc: resolve io failures during connect (Ming Lei) [1655485] - [nvme] nvme: make sure ns head inherits underlying device limits (Ming Lei) [1655485] - [nvme] nvmet: don't try to add ns to p2p map unless it actually uses it (Ming Lei) [1655485] - [nvme] nvme-pci: fix conflicting p2p resource adds (Ming Lei) [1655485] - [nvme] nvmet: Optionally use PCI P2P memory (Ming Lei) [1655485] - [nvme] nvmet: Introduce helper functions to allocate and free request SGLs (Ming Lei) [1655485] - [nvme] nvme-pci: Add support for P2P memory in requests (Ming Lei) [1655485] - [nvme] nvme-pci: Use PCI p2pmem subsystem to manage the CMB (Ming Lei) [1655485] - [infiniband] IB/core: Ensure we map P2P memory correctly in rdma_rw_ctx_[init|destroy]() (Ming Lei) [1655485] - [block] block: Add PCI P2P flag for request queue (Ming Lei) [1655485] - [documentation] PCI/P2PDMA: Add P2P DMA driver writer's documentation (Ming Lei) [1655485] - [documentation] docs-rst: Add a new directory for PCI documentation (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Introduce configfs/sysfs enable attribute helpers (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Add PCI p2pmem DMA mappings to adjust the bus offset (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Add sysfs group to display p2pmem stats (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Support peer-to-peer memory (Ming Lei) [1655485] - [nvme] nvmet-rdma: support max(16KB, PAGE_SIZE) inline data (Ming Lei) [1655485] - [nvme] nvme-rdma: support up to 4 segments of inline data (Ming Lei) [1655485] - [fs] aio: fix failure to put the file pointer (Ming Lei) [1655485] - [lib] scsi: Remove percpu_ida (Ming Lei) [1655485] - [scsi] scsi: target: Convert target drivers to use sbitmap (Ming Lei) [1655485] - [scsi] scsi: target: Abstract tag freeing (Ming Lei) [1655485] - [block] mmc: block: Fix unsupported parallel dispatch of requests (Ming Lei) [1655485] - [scsi] scsi: target: sbitmap: add seq_file forward declaration (Ming Lei) [1655485] - [mm] mm, memory_hotplug: do not clear numa_node association after hot_remove (Waiman Long) [1657422] - [fs] iomap: partially revert 4721a601099 (simulated directio short read on EFAULT) (Brian Foster) [1654713] - [fs] splice: don't read more than available pipe space (Brian Foster) [1654713] - [fs] vfs: allow some remap flags to be passed to vfs_clone_file_range (Brian Foster) [1654713] - [fs] xfs: fix inverted return from xfs_btree_sblock_verify_crc (Brian Foster) [1654713] - [fs] xfs: fix PAGE_MASK usage in xfs_free_file_space (Brian Foster) [1654713] - [fs] fs/xfs: fix f_ffree value for statfs when project quota is set (Brian Foster) [1654713] - [fs] iomap: readpages doesn't zero page tail beyond EOF (Brian Foster) [1654713] - [fs] vfs: vfs_dedupe_file_range() doesn't return EOPNOTSUPP (Brian Foster) [1654713] - [fs] iomap: dio data corruption and spurious errors when pipes fill (Brian Foster) [1654713] - [fs] iomap: sub-block dio needs to zeroout beyond EOF (Brian Foster) [1654713] - [fs] iomap: FUA is wrong for DIO O_DSYNC writes into unwritten extents (Brian Foster) [1654713] - [fs] xfs: delalloc -> unwritten COW fork allocation can go wrong (Brian Foster) [1654713] - [fs] xfs: flush removing page cache in xfs_reflink_remap_prep (Brian Foster) [1654713] - [fs] xfs: extent shifting doesn't fully invalidate page cache (Brian Foster) [1654713] - [fs] xfs: finobt AG reserves don't consider last AG can be a runt (Brian Foster) [1654713] - [fs] xfs: fix transient reference count error in xfs_buf_resubmit_failed_buffers (Brian Foster) [1654713] - [fs] xfs: uncached buffer tracing needs to print bno (Brian Foster) [1654713] - [fs] xfs: make xfs_file_remap_range() static (Brian Foster) [1654713] - [fs] xfs: fix shared extent data corruption due to missing cow reservation (Brian Foster) [1654713] - [fs] xfs: fix overflow in xfs_attr3_leaf_verify (Brian Foster) [1654713] - [fs] xfs: print buffer offsets when dumping corrupt buffers (Brian Foster) [1654713] - [fs] xfs: Fix error code in 'xfs_ioc_getbmap()' (Brian Foster) [1654713] - [fs] xfs: cancel COW blocks before swapext (Brian Foster) [1654713] - [fs] xfs: clear ail delwri queued bufs on unmount of shutdown fs (Brian Foster) [1654713] - [fs] xfs: use offsetof() in place of offset macros for __xfsstats (Brian Foster) [1654713] - [fs] xfs: Fix xqmstats offsets in /proc/fs/xfs/xqmstat (Brian Foster) [1654713] - [fs] xfs: fix use-after-free race in xfs_buf_rele (Brian Foster) [1654713] - [fs] xfs: Add attibute remove and helper functions (Brian Foster) [1654713] - [fs] xfs: Add attibute set and helper functions (Brian Foster) [1654713] - [fs] xfs: Add helper function xfs_attr_try_sf_addname (Brian Foster) [1654713] - [fs] xfs: Move fs/xfs/xfs_attr.h to fs/xfs/libxfs/xfs_attr.h (Brian Foster) [1654713] - [fs] xfs: issue log message on user force shutdown (Brian Foster) [1654713] - [fs] xfs: fix buffer state management in xrep_findroot_block (Brian Foster) [1654713] - [fs] xfs: always assign buffer verifiers when one is provided (Brian Foster) [1654713] - [fs] xfs: xrep_findroot_block should reject root blocks with siblings (Brian Foster) [1654713] - [fs] xfs: add a define for statfs magic to uapi (Brian Foster) [1654713] - [fs] xfs: print dangling delalloc extents (Brian Foster) [1654713] - [fs] xfs: fix fork selection in xfs_find_trim_cow_extent (Brian Foster) [1654713] - [fs] xfs: remove the unused trimmed argument from xfs_reflink_trim_around_shared (Brian Foster) [1654713] - [fs] xfs: remove the unused shared argument to xfs_reflink_reserve_cow (Brian Foster) [1654713] - [fs] xfs: handle zeroing in xfs_file_iomap_begin_delay (Brian Foster) [1654713] - [fs] xfs: remove suport for filesystems without unwritten extent flag (Brian Foster) [1654713] - [fs] xfs: remove XFS_IO_INVALID (Brian Foster) [1654713] - [fs] xfs: remove [cm]time update from reflink calls (Brian Foster) [1654713] - [fs] xfs: remove xfs_reflink_remap_range (Brian Foster) [1654713] - [fs] xfs: remove redundant remap partial EOF block checks (Brian Foster) [1654713] - [fs] xfs: support returning partial reflink results (Brian Foster) [1654713] - [fs] xfs: clean up xfs_reflink_remap_blocks call site (Brian Foster) [1654713] - [fs] xfs: fix pagecache truncation prior to reflink (Brian Foster) [1654713] - [fs] vfs: clean up generic_remap_file_range_prep return value (Brian Foster) [1654713] - [fs] vfs: hide file range comparison function (Brian Foster) [1654713] - [fs] vfs: enable remap callers that can handle short operations (Brian Foster) [1654713] - [fs] vfs: plumb remap flags through the vfs dedupe functions (Brian Foster) [1654713] - [fs] vfs: plumb remap flags through the vfs clone functions (Brian Foster) [1654713] - [fs] vfs: make remap_file_range functions take and return bytes completed (Brian Foster) [1654713] - [fs] vfs: remap helper should update destination inode metadata (Brian Foster) [1654713] - [fs] vfs: pass remap flags to generic_remap_checks (Brian Foster) [1654713] - [fs] vfs: pass remap flags to generic_remap_file_range_prep (Brian Foster) [1654713] - [fs] vfs: combine the clone and dedupe into a single remap_file_range (Brian Foster) [1654713] - [fs] vfs: rename clone_verify_area to remap_verify_area (Brian Foster) [1654713] - [fs] vfs: rename vfs_clone_file_prep to be more descriptive (Brian Foster) [1654713] - [fs] vfs: skip zero-length dedupe requests (Brian Foster) [1654713] - [fs] vfs: avoid problematic remapping requests into partial EOF block (Brian Foster) [1654713] - [fs] vfs: strengthen checking of file range inputs to generic_remap_checks (Brian Foster) [1654713] - [fs] vfs: exit early from zero length remap operations (Brian Foster) [1654713] - [fs] vfs: check file ranges before cloning files (Brian Foster) [1654713] - [fs] vfs: vfs_clone_file_prep_inodes should return EINVAL for a clone from beyond EOF (Brian Foster) [1654713] - [block] blk-mq: not embed .mq_kobj and ctx->kobj into queue instance (Ming Lei) [1653124] - [fs] fs: fix lost error code in dio_complete (Ming Lei) [1655364] - [iommu] iommu/iova: Optimise attempts to allocate iova from 32bit address range (Robert Richter) [1639202]- [drm] drm/nouveau/drm/nouveau: Check rc from drm_dp_mst_topology_mgr_resume() (Lyude Paul) [1658810] - [x86] Mark Intel Apollo Lake supported (David Arcari) [1653799] - [infiniband] IB/mlx5: Fix implicit ODP interrupted page fault (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Improve ODP debugging messages (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Use multi threaded workqueue for page fault handling (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Return success for PAGE_FAULT_RESUME in internal error state (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Lock QP during page fault handling (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Enumerate page fault types (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Add interface to hold and release core resources (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Release resource on error flow (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Correctly set PFC param if global pause is turned off. (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_en: Change min MTU size to ETH_MIN_MTU (Alaa Hleihel) [1658085] - [netdrv] mlx5: fix get_ip_proto() (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Fix page fault handling for MW (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Initialize return variable in case pagefault was skipped (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Skip non-ODP MR when handling a page fault (Alaa Hleihel) [1658085] - [net] net/dim: Update DIM start sample after each DIM iteration (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Avoid load failure due to unknown link width (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Fix fence type for IB_WR_LOCAL_INV WR (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Removed unnecessary warnings in FEC caps query (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Fix selftest for small MTUs (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: RX, verify received packet size in Linear Striding RQ (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Apply the correct check for supporting TC esw rules split (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Adjust to max number of channles when re-attaching (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Always use the match level enum when parsing TC rule match (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Claim TC hw offloads support only under a proper build config (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Don't match on vlan non-existence if ethertype is wildcarded (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: IPoIB, Reset QP after channels are closed (Alaa Hleihel) [1658085] - [netdrv] net/mlx4: Fix UBSAN warning of signed integer overflow (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Fix uninitialized variable compilation warning (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Zero out lkey field in SW2HW_MPT fw command (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Fix MR cache initialization (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Remove extraneous error check (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Fix memory leak when setting fpga ipsec caps (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Unmap DMA addr from HCA before IOMMU (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Remove superfluous version print (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Allow transition of DCI QP to reset (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Don't hold spin lock while checking device state (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Move mlx5e_priv_flags into en_ethtool.c (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Fix atomic_mode enum values (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Delete unneeded function argument (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: RX, Prefetch the xdp_frame data area (Alaa Hleihel) [1658085] - [drm] drm/i915: Synchronize hpd work in i915_hpd_storm_ctl_show() (Lyude Paul) [1658376] - [drm] drm/i915: Add short HPD IRQ storm detection for non-MST systems (Lyude Paul) [1658376] - [drm] drm/i915: Clarify flow for disabling IRQs on storms (Lyude Paul) [1658376] - [drm] drm/i915: Fix threshold check in intel_hpd_irq_storm_detect() (Lyude Paul) [1658376] - [drm] drm/i915: Fix NULL deref when re-enabling HPD IRQs on systems with MST (Lyude Paul) [1658376] - [drm] drm/i915: Fix possible race in intel_dp_add_mst_connector() (Lyude Paul) [1658376] - [x86] kvm: x86: bump KVM_(SOFT_)MAX_VCPUS to 384 (Radim Krcmar) [1635205] - [block] blk-mq: punt failed direct issue to dispatch list (Ming Lei) [1656653] - [block] blk-mq: fix corruption with direct issue (Ming Lei) [1656653] - [pci] PCI: Add support for Immediate Readiness (Myron Stowe) [1483409] - [x86] x86/PCI: Remove node-local allocation when initialising host controller (Myron Stowe) [1483409] - [arm64] arm64: PCI: Remove node-local allocations when initialising host controller (Myron Stowe) [1483409] - [cpufreq] cpufreq: intel_pstate: Add base_frequency attribute (Prarit Bhargava) [1648207] - [acpi] ACPI / CPPC: Add support for guaranteed performance (Prarit Bhargava) [1648207] - [block] block: fix single range discard merge (Ming Lei) [1654096] - [scsi] SCSI: fix queue cleanup race before queue initialization is done (Ming Lei) [1642404] - [netdrv] net: hinic: fix null pointer dereference on pointer hwdev (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic: fix a bug in rx data flow (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:fix a bug in set mac address (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:add rx checksum offload for HiNIC (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:replace multiply and division operators (Xiaojun Tan) [1654207] - [netdrv] hinic: Fix l4_type parameter in hinic_task_set_tunnel_l4 (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic: add checksum offload and TSO support (Xiaojun Tan) [1654207] - [netdrv] cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size (Arjun Vynipadath) [1651082]- [x86] kvm: x86: Report STIBP on GET_SUPPORTED_CPUID (Eduardo Habkost) [1644870] - [kernel] power: remove possible deadlock when unregistering power_supply (Benjamin Tissoires) [1657623] - [md] dm: call blk_queue_split() to impose device limits on bios (Mike Snitzer) [1657340] - [pinctrl] Revert "pinctrl: intel: Do pin translation when lock IRQ" (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variant (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Do pin translation in other GPIO operations as well (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix gpio base for GPP-E (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Don't shadow error code of gpiochip_lock_as_irq() (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix community ordering for H variant (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Do pin translation when lock IRQ (Benjamin Tissoires) [1658075] - [firmware] efi: Prevent GICv3 WARN() by mapping the memreserve table before first use (Bhupesh Sharma) [1638640] - [firmware] efi: Permit calling efi_mem_reserve_persistent() from atomic context (Bhupesh Sharma) [1638640] - [firmware] efi/arm: Defer persistent reservations until after paging_init() (Bhupesh Sharma) [1638640] - [firmware] efi/arm: Revert deferred unmap of early memmap mapping (Bhupesh Sharma) [1638640] - [arm64] arm64: memblock: don't permit memblock resizing until linear mapping is up (Bhupesh Sharma) [1638640] - [arm64] arm64: Fix /proc/iomem for reserved but not memory regions (Bhupesh Sharma) [1638640] - [tty] tty: wipe buffer. (Christoph von Recklinghausen) [1655051] - [tty] tty: wipe buffer if not echoing data (Christoph von Recklinghausen) [1655051]- [powerpc] powerpc/perf: Remove sched_task function defined for thread-imc (Steve Best) [1657153] - [s390] Add reserved fields to mm_context_t (Philipp Rudo) [1656874] - [s390] Add reserved fields to thread_struct (Philipp Rudo) [1656874] - [documentation] kdump: correct crashkernel=auto threshold (Raghavendra Rao) [1656698] - [fs] NFSv4.x: fix lock recovery during delegation recall (Steve Dickson) [1656410] - [x86] x86/spec_ctrl: Synchronize RHEL8 percpu SPEC_CTRL MSR states with new STIBP logic (Waiman Long) [1655662] - [x86] x86/speculation: Provide IBPB always command line options (Waiman Long) [1655662] - [x86] x86/speculation: Add seccomp Spectre v2 user space protection mode (Waiman Long) [1655662] - [x86] x86/speculation: Enable prctl mode for spectre_v2_user (Waiman Long) [1655662] - [x86] x86/speculation: Add prctl() control for indirect branch speculation (Waiman Long) [1655662] - [x86] x86/speculation: Prepare arch_smt_update() for PRCTL mode (Waiman Long) [1655662] - [x86] x86/speculation: Prevent stale SPEC_CTRL msr content (Waiman Long) [1655662] - [x86] x86/speculation: Split out TIF update (Waiman Long) [1655662] - [x86] ptrace: Remove unused ptrace_may_access_sched() and MODE_IBRS (Waiman Long) [1655662] - [x86] x86/speculation: Prepare for conditional IBPB in switch_mm() (Waiman Long) [1655662] - [x86] x86/speculation: Avoid __switch_to_xtra() calls (Waiman Long) [1655662] - [x86] x86/process: Consolidate and simplify switch_to_xtra() code (Waiman Long) [1655662] - [x86] x86/speculation: Prepare for per task indirect branch speculation control (Waiman Long) [1655662] - [x86] x86/speculation: Add command line control for indirect branch speculation (Waiman Long) [1655662] - [x86] x86/speculation: Unify conditional spectre v2 print functions (Waiman Long) [1655662] - [x86] x86/speculataion: Mark command line parser data __initdata (Waiman Long) [1655662] - [x86] x86/speculation: Mark string arrays const correctly (Waiman Long) [1655662] - [x86] x86/speculation: Reorder the spec_v2 code (Waiman Long) [1655662] - [x86] x86/l1tf: Show actual SMT state (Waiman Long) [1655662] - [x86] x86/speculation: Rework SMT state change (Waiman Long) [1655662] - [x86] sched/smt: Expose sched_smt_present static key (Waiman Long) [1655662] - [x86] x86/Kconfig: Select SCHED_SMT if SMP enabled (Waiman Long) [1655662] - [x86] sched/smt: Make sched_smt_present track topology (Waiman Long) [1655662] - [x86] x86/speculation: Reorganize speculation control MSRs update (Waiman Long) [1655662] - [x86] x86/speculation: Rename SSBD update functions (Waiman Long) [1655662] - [x86] x86/speculation: Disable STIBP when enhanced IBRS is in use (Waiman Long) [1655662] - [x86] x86/speculation: Move STIPB/IBPB string conditionals out of cpu_show_common() (Waiman Long) [1655662] - [x86] x86/speculation: Remove unnecessary ret variable in cpu_show_common() (Waiman Long) [1655662] - [x86] x86/speculation: Clean up spectre_v2_parse_cmdline() (Waiman Long) [1655662] - [x86] x86/speculation: Update the TIF_SSBD comment (Waiman Long) [1655662] - [x86] x86/retpoline: Remove minimal retpoline support (Waiman Long) [1655662] - [x86] x86/retpoline: Make CONFIG_RETPOLINE depend on compiler support (Waiman Long) [1655662] - [x86] x86/spec_ctrl: Temporarily remove the IBRS code from process.c & bugs.c (Waiman Long) [1655662] - [nvme] nvme: flush namespace scanning work just before removing namespaces (Ewan Milne) [1656028] - [netdrv] i40e: Fix deletion of MAC filters (Stefan Assmann) [1646847] - [scsi] mpt3sas: Display message on Configurable secure HBA (Tomas Henzl) [1649314] - [scsi] scsi: mpt3sas: Add support for Aero controllers (Tomas Henzl) [1649314] - [scsi] scsi: mpt3sas: Update MPI headers to support Aero controllers (Tomas Henzl) [1649314] - [scsi] megaraid_sas: Add support for MegaRAID Aero controllers (Tomas Henzl) [1649384] - [netdrv] nfp: flower: enabled offloading of Team LAG (Pablo Cascon) [1649876] - [netdrv] net/mlx5: IPSec, Fix the SA context hash key (Alaa Hleihel) [1645857] - [hwmon] hwmon/k10temp: Add support for AMD family 17h, model 30h CPUs (Gary Hook) [1640681] - [x86] x86/amd_nb: Add PCI device IDs for family 17h, model 30h (Gary Hook) [1640681] - [x86] x86/amd_nb: Add support for newer PCI topologies (Gary Hook) [1640681] - [hwmon] hwmon/k10temp, x86/amd_nb: Consolidate shared device IDs (Gary Hook) [1640681] - [net] tipc: fix info leak from kernel tipc_event (Jon Maloy) [1643279] - [net] tipc: eliminate message disordering during binding table update (Jon Maloy) [1643279] - [net] tipc: fix unsafe rcu locking when accessing publication list (Jon Maloy) [1643279] - [net] tipc: queue socket protocol error messages into socket receive buffer (Jon Maloy) [1643279] - [net] tipc: ignore STATE_MSG on wrong link session (Jon Maloy) [1643279] - [net] tipc: fix failover problem (Jon Maloy) [1643279] - [net] tipc: eliminate possible recursive locking detected by LOCKDEP (Jon Maloy) [1643279] - [net] tipc: lock wakeup & inputq at tipc_link_reset() (Jon Maloy) [1643279] - [net] tipc: reset bearer if device carrier not ok (Jon Maloy) [1643279] - [net] tipc: fix flow control accounting for implicit connect (Jon Maloy) [1643279] - [net] tipc: check return value of __tipc_dump_start() (Jon Maloy) [1643279] - [net] tipc: call start and done ops directly in __tipc_nl_compat_dumpit() (Jon Maloy) [1643279] - [net] tipc: orphan sock in tipc_release() (Jon Maloy) [1643279] - [net] tipc: switch to rhashtable iterator (Jon Maloy) [1643279] - [net] tipc: fix a missing rhashtable_walk_exit() (Jon Maloy) [1643279] - [net] tipc: add missing dev_put() on error in tipc_enable_l2_media (Jon Maloy) [1643279] - [net] tipc: initialize broadcast link stale counter correctly (Jon Maloy) [1643279] - [net] tipc: set link tolerance correctly in broadcast link (Jon Maloy) [1643279] - [net] tipc: extend link reset criteria for stale packet retransmission (Jon Maloy) [1643279] - [crypto] crypto: ccp - Add support for new CCP/PSP device ID (Gary Hook) [1634201] - [crypto] crypto: ccp - Support register differences between PSP devices (Gary Hook) [1634201] - [crypto] crypto: ccp - Remove unused #defines (Gary Hook) [1634201] - [crypto] crypto: ccp - Add psp enabled message when initialization succeeds (Gary Hook) [1634201] - [crypto] crypto: ccp - Fix command completion detection race (Gary Hook) [1634201] - [crypto] crypto: ccp - Check for NULL PSP pointer at module unload (Gary Hook) [1634201] - [net] sctp: increase sk_wmem_alloc when head->truesize is increased (Xin Long) [1645419] - [net] sctp: count sk_wmem_alloc by skb truesize in sctp_packet_transmit (Xin Long) [1645419] - [net] ipv6: re-do dad when interface has IFF_NOARP flag change (Hangbin Liu) [1644594] - [net] netfilter: nf_tables: don't skip inactive chains during update (Florian Westphal) [1643746] - [net] inet: frags: better deal with smp races (Sabrina Dubroca) [1645397] - [net] geneve, vxlan: Don't set exceptions if skb->len < mtu (Xin Long) [1642842] - [net] geneve, vxlan: Don't check skb_dst() twice (Xin Long) [1642842] - [net] sctp: fix strchange_flags name for Stream Change Event (Xin Long) [1641852] - [net] sctp: update dst pmtu with the correct daddr (Xin Long) [1644478] - [net] sctp: not free the new asoc when sctp_wait_for_connect returns err (Xin Long) [1644155] - [net] l2tp: fix a sock refcnt leak in l2tp_tunnel_register (Xin Long) [1642749] - [net] sctp: check policy more carefully when getting pr status (Xin Long) [1637786] - [net] sctp: get pr_assoc and pr_stream all status with SCTP_PR_SCTP_ALL instead (Xin Long) [1637786] - [net] ipv4/igmp: fix v1/v2 switchback timeout based on rfc3376, 8.12 (Hangbin Liu) [1638598] - [net] netfilter: nft_compat: ebtables 'nat' table is normal chain type (Florian Westphal) [1645377] - [net] sched: exclude TC from kABI guarantee (Ivan Vecera) [1628454] - [net] netfilter: nft_set_rbtree: allow loose matching of closing element in interval (Phil Sutter) [1641993] - [net] netfilter: xt_nat: fix DNAT target for shifted portmap ranges (Paolo Abeni) [1634258] - [net] sched: Fix for duplicate class dump (Phil Sutter) [1631179] - [x86] KVM: X86: Fix scan ioapic use-before-initialization (Bandan Das) [1653835] {CVE-2018-19407}- [scsi] scsi: vmw_pscsi: Rearrange code to avoid multiple calls to free_irq during unload (Cathy Avery) [1590875] - [netdrv] net/ibmvnic: Fix RTNL deadlock during device reset (Steve Best) [1656076] - [s390] s390/qeth: fix length check in SNMP processing (Philipp Rudo) [1655612] - [s390] s390/ism: clear dmbe_mask bit before SMC IRQ handling (Philipp Rudo) [1655611] - [net] net/smc: use after free fix in smc_wr_tx_put_slot() (Philipp Rudo) [1655611] - [net] net/smc: atomic SMCD cursor handling (Philipp Rudo) [1655611] - [net] net/smc: add SMC-D shutdown signal (Philipp Rudo) [1655611] - [net] net/smc: use queue pair number when matching link group (Philipp Rudo) [1655611] - [net] net/smc: abort CLC connection in smc_release (Philipp Rudo) [1655611] - [net] net/smc: unregister rkeys of unused buffer (Philipp Rudo) [1655611] - [net] net/smc: add infrastructure to send delete rkey messages (Philipp Rudo) [1655611] - [net] net/smc: avoid a delay by waiting for nothing (Philipp Rudo) [1655611] - [net] net/smc: cleanup listen worker mutex unlocking (Philipp Rudo) [1655611] - [net] net/smc: short wait for late smc_clc_wait_msg (Philipp Rudo) [1655611] - [net] net/smc: no link delete for a never active link (Philipp Rudo) [1655611] - [net] net/smc: allow fallback after clc timeouts (Philipp Rudo) [1655611] - [net] net/smc: remove sock_error detour in clc-functions (Philipp Rudo) [1655611] - [net] net/smc: make smc_lgr_free() static (Philipp Rudo) [1655611] - [net] net/smc: cleanup tcp_listen_worker initialization (Philipp Rudo) [1655611] - [net] net/smc: fix smc_buf_unuse to use the lgr pointer (Philipp Rudo) [1655611] - [net] Revert "net: simplify sock_poll_wait" (Philipp Rudo) [1655611] - [powerpc] powerpc/pseries: Fix unitialized timer reset on migration (Steve Best) [1655053] - [powerpc] powerpc/pseries/mobility: Extend start/stop topology update scope (Steve Best) [1655053] - [x86] Mark Intel Cascade Lake supported (Steve Best) [1641425]- [x86] KVM: VMX: re-add ple_gap module parameter (Gary Hook) [1652953] - [netdrv] tg3: Add PHY reset for 5717/5719/5720 in change ring and flow control paths (Steve Best) [1655515] - [pci] PCI/ASPM: Do not initialize link state when aspm_disabled is set (Myron Stowe) [1655246] - [pci] PCI/ACPI: Allow _OSC presence to be optional for PCI (Myron Stowe) [1655246] - [pci] PCI/ACPI: Correct error message for ASPM disabling (Myron Stowe) [1655246] - [pci] PCI/ASPM: Fix link_state teardown on device removal (Myron Stowe) [1655246] - [netdrv] ice: Change req_speeds to be u16 (Jonathan Toppins) [1644403] - [netdrv] ice: Fix the bytecount sent to netdev_tx_sent_queue (Jonathan Toppins) [1644403] - [netdrv] ice: Fix tx_timeout in PF driver (Jonathan Toppins) [1644403] - [netdrv] ice: Fix napi delete calls for remove (Jonathan Toppins) [1644403] - [netdrv] ice: Fix typo in error message (Jonathan Toppins) [1644403] - [netdrv] ice: Fix flags for port VLAN (Jonathan Toppins) [1644403] - [netdrv] ice: Remove duplicate addition of VLANs in replay path (Jonathan Toppins) [1644403] - [netdrv] ice: Free VSI contexts during for unload (Jonathan Toppins) [1644403] - [netdrv] ice: Fix dead device link issue with flow control (Jonathan Toppins) [1644403] - [netdrv] ice: Check for reset in progress during remove (Jonathan Toppins) [1644403] - [netdrv] ice: Set carrier state and start/stop queues in rebuild (Jonathan Toppins) [1644403] - [netdrv] virtchnl: Added support to exchange additional speed values (Jonathan Toppins) [1644403] - [netdrv] ice: Poll for link status change (Jonathan Toppins) [1644403] - [netdrv] ice: Allocate VF interrupts and set queue map (Jonathan Toppins) [1644403] - [netdrv] ice: Introduce ice_dev_onetime_setup (Jonathan Toppins) [1644403] - [netdrv] ice: Use capability count returned by the firmware (Jonathan Toppins) [1644403] - [netdrv] ice: Update expected FW version (Jonathan Toppins) [1644403] - [netdrv] ice: Change device ID define names to align with branding string (Jonathan Toppins) [1644403] - [netdrv] ice: Make ice_msix_clean_rings static (Jonathan Toppins) [1644403] - [netdrv] ice: Update version string (Jonathan Toppins) [1644403] - [netdrv] ice: Use the right function to enable/disable VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Add more flexibility on how we assign an ITR index (Jonathan Toppins) [1644403] - [netdrv] ice: Fix potential null pointer issues (Jonathan Toppins) [1644403] - [netdrv] ice: Add code to go from ICE_FWD_TO_VSI_LIST to ICE_FWD_TO_VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Fix forward to queue group logic (Jonathan Toppins) [1644403] - [netdrv] ice: Extend malicious operations detection logic (Jonathan Toppins) [1644403] - [netdrv] ice: Notify VF of link status change (Jonathan Toppins) [1644403] - [netdrv] ice: Implement virtchnl commands for AVF support (Jonathan Toppins) [1644403] - [netdrv] ice: Add handlers for VF netdevice operations (Jonathan Toppins) [1644403] - [netdrv] ice: Add support for VF reset events (Jonathan Toppins) [1644403] - [netdrv] ice: Update VSI and queue management code to handle VF VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Add handler to configure SR-IOV (Jonathan Toppins) [1644403] - [netdrv] ice: Add support to detect SR-IOV capability and mailbox queues (Jonathan Toppins) [1644403] - [netdrv] ice: Fix error on driver remove (Jonathan Toppins) [1644403] - [netdrv] ice: Add support for dynamic interrupt moderation (Jonathan Toppins) [1644403] - [netdrv] ice: Align ice_reset_req enum values to hardware reset values (Jonathan Toppins) [1644403] - [netdrv] ice: Implement ethtool hook for RSS switch (Jonathan Toppins) [1644403] - [netdrv] ice: Split irq_tracker into sw_irq_tracker and hw_irq_tracker (Jonathan Toppins) [1644403] - [netdrv] ice: Check for actual link state of port after reset (Jonathan Toppins) [1644403] - [netdrv] ice: Implement VSI replay framework (Jonathan Toppins) [1644403] - [netdrv] ice: Expand use of VSI handles part 2/2 (Jonathan Toppins) [1644403] - [netdrv] ice: Expand use of VSI handles part 1/2 (Jonathan Toppins) [1644403] - [netdrv] ice: Change pf state behavior to protect reset path (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 7/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 6/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 5/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 4/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 3/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 2/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 1/7 (Jonathan Toppins) [1644403] - [netdrv] ice: fix changing of ring descriptor size (ethtool -G) (Jonathan Toppins) [1644403] - [netdrv] ice: Update to capabilities admin queue command (Jonathan Toppins) [1644403] - [netdrv] ice: Query the Tx scheduler node before adding it (Jonathan Toppins) [1644403] - [netdrv] ice: Update comment for ice_fltr_mgmt_list_entry (Jonathan Toppins) [1644403] - [netdrv] ice: update fw version check logic (Jonathan Toppins) [1644403] - [netdrv] ice: update branding strings and supported device ids (Jonathan Toppins) [1644403] - [netdrv] ice: replace unnecessary memcpy with direct assignment (Jonathan Toppins) [1644403] - [netdrv] ice: use [sr]q.count when checking if queue is initialized (Jonathan Toppins) [1644403] - [netdrv] ice: remove ndo_poll_controller (Jonathan Toppins) [1644403] - [fs] fanotify: fix handling of events on child sub-directory (Miklos Szeredi) [1652432] - [fs] fsnotify: generalize handling of extra event flags (Miklos Szeredi) [1652432] - [netdrv] net: hns3: add common validation in hclge_dcb (Xiaojun Tan) [1640945] - [netdrv] net: hns3: fix for multiple unmapping DMA problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: rename hns_nic_dma_unmap (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add handling for big TX fragment (Xiaojun Tan) [1640945] - [netdrv] net: hns3: move DMA map into hns3_fill_desc (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove hns3_fill_desc_tso (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Resume promisc mode and vlan filter status after loopback test (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Resume promisc mode and vlan filter status after reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Enable promisc mode when mac vlan table is full (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for rx vlan id handle to support Rev 0x21 hardware (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add egress/ingress vlan filter for revision 0x21 (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Optimize for unicast mac vlan table (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix loss of coal configuration while doing reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Modify hns3_get_max_available_channels (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Change return type of hclge_tm_schd_info_update() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for netdev not up problem when setting mtu (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for packet buffer setting bug (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set extra mac address of pause param for HW (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix speed/duplex information loss problem when executing ethtool ethx cmd of VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add get_media_type ops support for VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove print messages for error packet (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add nic state check before calling netif_tx_wake_queue (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add handle for default case (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Unify the prefix of vf functions (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix tqp array traversal condition for vf (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix ets validate issue (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix parameter type for q_id in hclge_tm_q_to_qs_map_cfg() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix client initialize state issue when roce client initialize failed (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Clear client pointer when initialize client failed or unintialize finished (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix cmdq registers initialization issue for vf (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for setting speed for phy failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Check hdev state when getting link status (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set STATE_DOWN bit of hdev state when stopping net (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove packet statistics of public (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove tx budget to clean more TX descriptors in a napi (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Refine hns3_get_link_ksettings() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove redundant codes of query advertised flow control abilitiy (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Change the dst mac addr of loopback packet (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Only update mac configuation when necessary (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Preserve vlan 0 in hardware table (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix ping exited problem when doing lp selftest (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for loopback selftest failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix error of checking used vlan id (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for multicast failure (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for vf vlan delete failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: modify variable type in hns3_nic_reuse_page (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add vlan filter setting by ethtool command -K (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set tx ring' tc info when netdev is up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix desc num set to default when setting channel (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for information of phydev lost problem when down/up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add support for serdes loopback selftest (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Refine the MSIX allocation for PF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix MSIX allocation issue for VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: fix return value error while hclge_cmd_csq_clean failed (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Modify inconsistent bit mask macros (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for using wrong mask and shift in hclge_get_ring_chain_from_mbx (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Correct reset event status register (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Prevent to request reset frequently (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Prevent sending command during global or core reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add configure for mac minimal frame size (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for l4 checksum offload bug (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for waterline not setting correctly (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix tc setup when netdev is first up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: modify hnae_ to hnae3_ (Xiaojun Tan) [1640945] - [netdrv] net: hns3: simplify hclge_cmd_csq_clean (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove some redundant assignments (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove back in struct hclge_hw (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add unlikely for error check (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add l4_type check for both ipv4 and ipv6 (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add vector status check before free vector (Xiaojun Tan) [1640945] - [netdrv] net: hns3: rename the interface for init_client_instance and uninit_client_instance (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove hclge_get_vector_index from hclge_bind_ring_with_vector (Xiaojun Tan) [1640945] - [kernel] redhat: Enable -Werror for architectures (Laura Abbott) [1582754] - [drm] drm/atomic_helper: Remove dangling variable (Laura Abbott) [1582754] - [s390] s390/tools: fix gcc 8 stringop-truncation warnings (Laura Abbott) [1582754] - [tty] kgdboc: Fix restrict error (Laura Abbott) [1582754] - [misc] misc: kgdbts: Fix restrict error (Laura Abbott) [1582754] - [scsi] scsi: ibmvscsis: Fix a stringop-overflow warning (Laura Abbott) [1582754] - [s390] s390/extmem: fix gcc 8 stringop-overflow warning (Laura Abbott) [1582754] - [s390] s390/perf: fix gcc 8 array-bounds warning (Laura Abbott) [1582754] - [kernel] kdb: Use strscpy with destination buffer size (Laura Abbott) [1582754] - [fs] configfs: replace strncpy with memcpy (Laura Abbott) [1582754] - [fs] kernfs: Replace strncpy with memcpy (Laura Abbott) [1582754] - [kernel] disable stringop truncation warnings for now (Laura Abbott) [1582754] - [sound] ALSA: intel_hdmi: Use strlcpy() instead of strncpy() (Laura Abbott) [1582754] - [sound] ALSA: trident: Suppress gcc string warning (Laura Abbott) [1582754] - [lib] kobject: Replace strncpy with memcpy (Laura Abbott) [1582754] - [tty] TTY: isdn: Replace strncpy with memcpy (Laura Abbott) [1582754] - [target] scsi: target/iscsi: Make iscsit_ta_authentication() respect the output buffer size (Laura Abbott) [1582754] - [fs] fuse: don't need GETATTR after every READ (Miklos Szeredi) [1650538] - [fs] fuse: allow fine grained attr cache invaldation (Miklos Szeredi) [1650538]- [mm] mm: mremap: properly flush TLB before releasing the page (Rafael Aquini) [1645122] {CVE-2018-18281} - [x86] x86/spec_ctrl: Change default Skylake Spectre v2 mitigation to retpoline (Waiman Long) [1651806] - [fs] gfs2: write revokes should traverse sd_ail1_list in reverse (Andreas Grunbacher) [1652763] - [fs] gfs2: Fix marking bitmaps non-full (Andreas Grunbacher) [1652762] - [fs] GFS2: Flush the GFS2 delete workqueue before stopping the kernel threads (Andreas Grunbacher) [1652761] - [fs] gfs2: Don't leave s_fs_info pointing to freed memory in init_sbd (Andreas Grunbacher) [1652759] - [fs] gfs2: Use fs_* functions instead of pr_* function where we can (Andreas Grunbacher) [1652757] - [fs] gfs2: slow the deluge of io error messages (Andreas Grunbacher) [1652757] - [fs] gfs2_meta: ->mount() can get NULL dev_name (Andreas Grunbacher) [1652754] - [powerpc] powerpc/vdso: Correct call frame information (Steve Best) [1651281] - [i2c] i2c: i801: Add support for Intel Ice Lake (David Arcari) [1637435] - [usb] xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc (Robert Richter) [1649829] - [x86] x86: numa_emulation: fix uniform-split numa emulation (Rafael Aquini) [1620341] - [x86] x86: numa_emulation: introduce uniform split capability (Rafael Aquini) [1620341] - [kernel] perf/hw_breakpoint: Modify breakpoint even if the new attr has disabled set (Mark Salter) [1643174] - [x86] KVM: vmx: hyper-v: don't pass EPT configuration info to vmx_hv_remote_flush_tlb() (Paolo Bonzini) [1636610] - [x86] KVM: x86: support CONFIG_KVM_AMD=y with CONFIG_CRYPTO_DEV_CCP_DD=m (Paolo Bonzini) [1636610] - [x86] kvm: nVMX: fix entry with pending interrupt if APICv is enabled (Paolo Bonzini) [1636610] - [x86] KVM: VMX: hide flexpriority from guest when disabled at the module level (Paolo Bonzini) [1636610] - [x86] KVM: VMX: check for existence of secondary exec controls before accessing (Paolo Bonzini) [1636610] - [x86] KVM: x86: fix L1TF's MMIO GFN calculation (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: cut down decimal places in update interval dialog (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix emulation of VM_ENTRY_LOAD_BNDCFGS (Paolo Bonzini) [1636610] - [x86] KVM: x86: Do not use kvm_x86_ops->mpx_supported() directly (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Do not expose MPX VMX controls when guest MPX disabled (Paolo Bonzini) [1636610] - [x86] KVM: x86: never trap MSR_KERNEL_GS_BASE (Paolo Bonzini) [1636610] - [x86] KVM: LAPIC: Fix pv ipis out-of-bounds access (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix loss of pending IRQ/NMI before entering L2 (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: re-animate display of dead guests (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: indicate dead guests as such (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: handle guest removals more gracefully (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: don't reset stats when setting PID filter for debugfs (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix updates for dead guests (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix handling of invalid paths in debugfs provider (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix python3 issues (Paolo Bonzini) [1636610] - [x86] KVM: x86: Unexport x86_emulate_instruction() (Paolo Bonzini) [1636610] - [x86] KVM: x86: Rename emulate_instruction() to kvm_emulate_instruction() (Paolo Bonzini) [1636610] - [x86] KVM: x86: Do not re-{try, execute} after failed emulation in L2 (Paolo Bonzini) [1636610] - [x86] KVM: x86: Default to not allowing emulation retry in kvm_mmu_page_fault (Paolo Bonzini) [1636610] - [x86] KVM: x86: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE (Paolo Bonzini) [1636610] - [x86] KVM: x86: Invert emulation re-execute behavior to make it opt-in (Paolo Bonzini) [1636610] - [x86] KVM: x86: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation (Paolo Bonzini) [1636610] - [x86] KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr (Paolo Bonzini) [1636610] - [x86] KVM: SVM: remove unused variable dst_vaddr_end (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: avoid redundant double assignment of nested_run_pending (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix bad cleanup on error of get/set nested state IOCTLs (Paolo Bonzini) [1636610] - [tools] kvm: selftests: Add platform_info_test (Paolo Bonzini) [1636610] - [x86] KVM: x86: Control guest reads of MSR_PLATFORM_INFO (Paolo Bonzini) [1636610] - [x86] KVM: x86: Turbo bits in MSR_PLATFORM_INFO (Paolo Bonzini) [1636610] - [x86] nVMX x86: Check VPID value on vmentry of L2 guests (Paolo Bonzini) [1636610] - [x86] nVMX x86: check posted-interrupt descriptor addresss on vmentry of L2 (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Wake blocked vCPU in guest-mode if pending interrupt in virtual APICv (Paolo Bonzini) [1636610] - [x86] KVM: VMX: check nested state and CR4.VMXE against SMM (Paolo Bonzini) [1636610] - [x86] kvm: x86: make kvm_{load|put}_guest_fpu() static (Paolo Bonzini) [1636610] - [x86] x86/hyper-v: rename ipi_arg_{ex, non_ex} structures (Paolo Bonzini) [1636610] - [x86] KVM: VMX: use preemption timer to force immediate VMExit (Paolo Bonzini) [1636610] - [x86] KVM: VMX: modify preemption timer bit only when arming timer (Paolo Bonzini) [1636610] - [x86] KVM: VMX: immediately mark preemption timer expired only for zero value (Paolo Bonzini) [1636610] - [x86] KVM: SVM: Switch to bitmap_zalloc() (Paolo Bonzini) [1636610] - [lib] bitmap: Add bitmap_alloc(), bitmap_zalloc() and bitmap_free() (Paolo Bonzini) [1636610] - [x86] KVM/MMU: Fix comment in walk_shadow_page_lockless_end() (Paolo Bonzini) [1636610] - [tools] kvm: selftests: use -pthread instead of -lpthread (Paolo Bonzini) [1636610] - [tools] kvm: selftest: add dirty logging test (Paolo Bonzini) [1636610] - [tools] kvm: selftest: pass in extra memory when create vm (Paolo Bonzini) [1636610] - [tools] kvm: selftest: include the tools headers (Paolo Bonzini) [1636610] - [tools] kvm: selftest: unify the guest port macros (Paolo Bonzini) [1636610] - [x86] KVM: x86: don't reset root in kvm_mmu_setup() (Paolo Bonzini) [1636610] - [x86] kvm: mmu: Don't read PDPTEs when paging is not enabled (Paolo Bonzini) [1636610] - [x86] x86/kvm/lapic: always disable MMIO interface in x2APIC mode (Paolo Bonzini) [1636610] - [s390] KVM: s390: Make huge pages unavailable in ucontrol VMs (Paolo Bonzini) [1636610] - [s390] s390/mm: Check for valid vma before zapping in gmap_discard (Paolo Bonzini) [1636610] - [tools] selftests: add headers_install to lib.mk (Paolo Bonzini) [1636610] - [tools] selftests: kselftest: Remove outdated comment (Paolo Bonzini) [1636610] - [tools] selftests: android: move config up a level (Paolo Bonzini) [1636610] - [md] md: Avoid namespace collision with bitmap API (Paolo Bonzini) [1636610]- [cpufreq] cpufreq / CPPC: Add cpuinfo_cur_freq support for CPPC (Prarit Bhargava) [1654361] - [netdrv] nfp: flower: add ipv6 set flow label and hop limit offload (Pablo Cascon) [1651639] - [netdrv] nfp: flower: add ipv4 set ttl and tos offload (Pablo Cascon) [1651639] - [netdrv] ibmvnic: Update driver queues after change in ring size support (Steve Best) [1651947] - [netdrv] ibmvnic: Fix RX queue buffer cleanup (Steve Best) [1651947] - [netdrv] net/ibmnvic: Fix deadlock problem in reset (Steve Best) [1651947] - [netdrv] ibmvnic: fix accelerated VLAN handling (Steve Best) [1651947] - [netdrv] ibmvnic: Add ethtool private flag for driver-defined queue limits (Steve Best) [1651947] - [netdrv] ibmvnic: Introduce driver limits for ring sizes (Steve Best) [1651947] - [netdrv] ibmvnic: Increase maximum queue size limit (Steve Best) [1651947] - [netdrv] ibmvnic: remove ndo_poll_controller (Steve Best) [1651947] - [powerpc] powerpc/powernv/npu: Remove atsd_threshold debugfs setting (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Use size-based ATSD invalidates (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Reduce eieio usage when issuing ATSD invalidates (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Add a debugfs setting to change ATSD threshold (Steve Best) [1653661] - [net] libceph: fall back to sendmsg for slab pages (Ilya Dryomov) [1653395] - [s390] s390/qeth: utilize virtual MAC for Layer2 OSD devices (Philipp Rudo) [1653246] - [fs] vfs: fix FIGETBSZ ioctl on an overlayfs file (Miklos Szeredi) [1651362] - [fs] ovl: fix decode of dir file handle with multi lower layers (Miklos Szeredi) [1651362] - [fs] ovl: fix missing override creds in link of a metacopy upper (Miklos Szeredi) [1651362] - [fs] ovl: automatically enable redirect_dir on metacopy=on (Miklos Szeredi) [1651362] - [fs] ovl: check whiteout in ovl_create_over_whiteout() (Miklos Szeredi) [1651362] - [fs] ovl: fix recursive oi->lock in ovl_link() (Miklos Szeredi) [1651362] - [fs] ovl: fix error handling in ovl_verify_set_fh() (Miklos Szeredi) [1651362] - [mm] mm, memory_hotplug: check zone_movable in has_unmovable_pages (Baoquan He) [1643839] - [netdrv] hv_netvsc: fix vf serial matching with pci slot info (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: remove ndo_poll_controller (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: pair VF based on serial number (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: fix schedule in RCU context (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: Fix return value check in hv_pci_assign_slots() (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: support reporting serial number as slot information (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: Replace GFP_ATOMIC with GFP_KERNEL in new_pcichild_device() (Vitaly Kuznetsov) [1637519] - [char] ipmi: Fix timer race with module unload (Robert Richter) [1649812] - [arm64] arm64: hugetlb: Avoid unnecessary clearing in huge_ptep_set_access_flags (Christoph von Recklinghausen) [1635192] - [arm64] arm64: hugetlb: Fix handling of young ptes (Christoph von Recklinghausen) [1635192] - [mm] mm: Preserve _PAGE_DEVMAP across mprotect() calls (Jeff Moyer) [1647647]- [crypto] crypto: vmx - Fix sleep-in-atomic bugs (Steve Best) [1653662] - [netdrv] net: ena: update driver version from 2.0.1 to 2.0.2 (John Linville) [1634044] - [netdrv] net: ena: fix crash during ena_remove() (John Linville) [1634044] - [netdrv] net: ena: fix crash during failed resume from hibernation (John Linville) [1634044] - [netdrv] net: ena: enable CONFIG_ENA_ETHERNET for aarch64 (John Linville) [1634044] - [netdrv] net: ena: enable Low Latency Queues (John Linville) [1634044] - [netdrv] net: ena: Fix Kconfig dependency on X86 (John Linville) [1634044] - [netdrv] net: ena: fix indentations in ena_defs for better readability (John Linville) [1634044] - [netdrv] net: ena: update driver version to 2.0.1 (John Linville) [1634044] - [netdrv] net: ena: remove redundant parameter in ena_com_admin_init() (John Linville) [1634044] - [netdrv] net: ena: change rx copybreak default to reduce kernel memory pressure (John Linville) [1634044] - [netdrv] net: ena: limit refill Rx threshold to 256 to avoid latency issues (John Linville) [1634044] - [netdrv] net: ena: explicit casting and initialization, and clearer error handling (John Linville) [1634044] - [netdrv] net: ena: use CSUM_CHECKED device indication to report skb's checksum status (John Linville) [1634044] - [netdrv] net: ena: add functions for handling Low Latency Queues in ena_netdev (John Linville) [1634044] - [netdrv] net: ena: add functions for handling Low Latency Queues in ena_com (John Linville) [1634044] - [netdrv] net: ena: introduce Low Latency Queues data structures according to ENA spec (John Linville) [1634044] - [netdrv] net: ena: complete host info to match latest ENA spec (John Linville) [1634044] - [netdrv] net: ena: minor performance improvement (John Linville) [1634044] - [netdrv] net: ena: fix auto casting to boolean (John Linville) [1634044] - [netdrv] net: ena: fix NULL dereference due to untimely napi initialization (John Linville) [1634044] - [netdrv] net: ena: fix rare bug when failed restart/resume is followed by driver removal (John Linville) [1634044] - [netdrv] net: ena: fix warning in rmmod caused by double iounmap (John Linville) [1634044] - [netdrv] net: ena: remove ndo_poll_controller (John Linville) [1634044] - [netdrv] net: ena: fix incorrect usage of memory barriers (John Linville) [1634044] - [netdrv] net: ena: fix missing calls to READ_ONCE (John Linville) [1634044] - [netdrv] net: ena: fix missing lock during device destruction (John Linville) [1634044] - [netdrv] net: ena: fix potential double ena_destroy_device() (John Linville) [1634044] - [netdrv] net: ena: fix device destruction to gracefully free resources (John Linville) [1634044] - [netdrv] net: ena: fix driver when PAGE_SIZE == 64kB (John Linville) [1634044] - [netdrv] net: ena: fix surprise unplug NULL dereference kernel crash (John Linville) [1634044] - [s390] s390/zcrypt: reinit ap queue state machine during device probe (Philipp Rudo) [1653668] - [s390] s390/kdump: Make elfcorehdr size calculation ABI compliant (Philipp Rudo) [1653245] - [s390] s390/kdump: Fix elfcorehdr size calculation (Philipp Rudo) [1653245] - [block] block: fix 32 bit overflow in __blkdev_issue_discard() (Ming Lei) [1638826] - [ata] libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD (Ming Lei) [1638826] - [block] block: copy ioprio in __bio_clone_fast() and bounce (Ming Lei) [1638826] - [trace] kyber: fix wrong strlcpy() size in trace_kyber_latency() (Ming Lei) [1638826] - [block] floppy: fix race condition in __floppy_read_block_0() (Ming Lei) [1638826] - [block] block: make blk_try_req_merge() static (Ming Lei) [1638826] - [block] block: remove dead queue members (Ming Lei) [1638826] - [block] block: clean up dead code that is now redundant (Ming Lei) [1638826] - [nvme] nvme: fix boot hang with only being able to get one IRQ vector (Ming Lei) [1638826] - [block] ide: don't clear special on ide_queue_rq() entry (Ming Lei) [1638826] - [block] null_blk: remove unused nullb device (Ming Lei) [1638826] - [block] ide: don't use req->special (Ming Lei) [1638826] - [block] pd: replace ->special use with private data in the request (Ming Lei) [1638826] - [block] aoe: replace ->special use with private data in the request (Ming Lei) [1638826] - [block] skd_main: don't use req->special (Ming Lei) [1638826] - [block] nullb: remove leftover legacy request code (Ming Lei) [1638826] - [scsi] fnic: fix fnic_scsi_host_{start,end}_tag (Ming Lei) [1638826] - [block] block: remove set but not used variable 'et' (Ming Lei) [1638826] - [block] block: remove the BLKPREP_* values. (Ming Lei) [1638826] - [scsi] scsi: return blk_status_t from device handler ->prep_fn (Ming Lei) [1638826] - [scsi] scsi: return blk_status_t from scsi_init_io and ->init_command (Ming Lei) [1638826] - [scsi] scsi: clean up error handling in scsi_init_io (Ming Lei) [1638826] - [scsi] scsi: push blk_status_t up into scsi_setup_{fs,scsi}_cmnd (Ming Lei) [1638826] - [scsi] scsi: simplify scsi_prep_state_check (Ming Lei) [1638826] - [block] ide: cleanup ->prep_rq calling convention (Ming Lei) [1638826] - [block] block: remove req->timeout_list (Ming Lei) [1638826] - [block] blk-mq: provide a helper to check if a queue is busy (Ming Lei) [1638826] - [block] blk-mq-tag: change busy_iter_fn to return whether to continue or not (Ming Lei) [1638826] - [block] ms_block: remove unused pointer 'set' (Ming Lei) [1638826] - [block] sunvdc: fix compiler warning (Ming Lei) [1638826] - [nvme] nvme: add separate poll queue map (Ming Lei) [1638826] - [block] block: add REQ_HIPRI and inherit it from IOCB_HIPRI (Ming Lei) [1638826] - [nvme] nvme: utilize two queue maps, one for reads and one for writes (Ming Lei) [1638826] - [block] blk-mq: initial support for multiple queue maps (Ming Lei) [1638826] - [block] blk-mq: improve plug list sorting (Ming Lei) [1638826] - [block] blk-mq: cleanup and improve list insertion (Ming Lei) [1638826] - [block] blk-mq: cache request hardware queue mapping (Ming Lei) [1638826] - [block] blk-mq: separate number of hardware queues from nr_cpu_ids (Ming Lei) [1638826] - [block] blk-mq: support multiple hctx maps (Ming Lei) [1638826] - [block] blk-mq: add 'type' attribute to the sysfs hctx directory (Ming Lei) [1638826] - [block] blk-mq: allow software queue to map to multiple hardware queues (Ming Lei) [1638826] - [block] blk-mq: pass in request/bio flags to queue mapping (Ming Lei) [1638826] - [block] blk-mq: provide dummy blk_mq_map_queue_type() helper (Ming Lei) [1638826] - [block] blk-mq: abstract out queue map (Ming Lei) [1638826] - [block] blk-mq: kill q->mq_map (Ming Lei) [1638826] - [kernel] genirq/affinity: Add support for allocating interrupt sets (Ming Lei) [1638826] - [kernel] genirq/affinity: Pass first vector to __irq_build_affinity_masks() (Ming Lei) [1638826] - [kernel] genirq/affinity: Move two stage affinity spreading into a helper function (Ming Lei) [1638826] - [kernel] genirq/affinity: Spread IRQs to all available NUMA nodes (Ming Lei) [1638826] - [block] block: kill request ->cpu member (Ming Lei) [1638826] - [block] block: get rid of q->softirq_done_fn() (Ming Lei) [1638826] - [block] block: get rid of blk_queued_rq() (Ming Lei) [1638826] - [block] blk-merge: kill dead queue lock held check (Ming Lei) [1638826] - [block] block: remove req_no_special_merge() from merging code (Ming Lei) [1638826] - [block] block: kill request slab cache (Ming Lei) [1638826] - [block] block: remove request_list code (Ming Lei) [1638826] - [block] bsg: move bsg-lib parts outside of request queue (Ming Lei) [1638826] - [block] block: kill legacy parts of timeout handling (Ming Lei) [1638826] - [block] block: remove __blk_put_request() (Ming Lei) [1638826] - [block] block: get rid of MQ scheduler ops union (Ming Lei) [1638826] - [block] block: remove dead elevator code (Ming Lei) [1638826] - [block] block: remove legacy IO schedulers (Ming Lei) [1638826] - [block] block: cleanup kick/queued handling (Ming Lei) [1638826] - [block] block: remove non mq parts from the flush code (Ming Lei) [1638826] - [block] block: remove legacy rq tagging (Ming Lei) [1638826] - [block] blk-cgroup: remove legacy queue bypassing (Ming Lei) [1638826] - [block] blk-wbt: kill check for legacy queue type (Ming Lei) [1638826] - [block] block: remove blk_complete_request() (Ming Lei) [1638826] - [block] bsg: convert to use blk-mq (Ming Lei) [1638826] - [block] bsg: provide bsg_remove_queue() helper (Ming Lei) [1638826] - [block] bsg: pass in desired timeout handler (Ming Lei) [1638826] - [s390] dasd: remove dead code (Ming Lei) [1638826] - [block] block: remove q->lld_busy_fn() (Ming Lei) [1638826] - [scsi] scsi: kill off the legacy IO path (Ming Lei) [1638826] - [scsi] scsi: provide mq_ops->busy() hook (Ming Lei) [1638826] - [block] blk-mq: provide mq_ops->busy() hook (Ming Lei) [1638826] - [block] blk-mq: remove legacy check in queue blk_freeze_queue() (Ming Lei) [1638826] - [block] blk-mq: remove the request_list usage (Ming Lei) [1638826] - [block] ide: convert to blk-mq (Ming Lei) [1638826] - [block] mspro_block: convert to blk-mq (Ming Lei) [1638826] - [block] ms_block: convert to blk-mq (Ming Lei) [1638826] - [block] sunvdc: convert to blk-mq (Ming Lei) [1638826] - [block] null_blk: Add conventional zone configuration for zoned support (Ming Lei) [1638826] - [ata] libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9 (Ming Lei) [1638826] - [block] block, bfq: fix asymmetric scenarios detection (Ming Lei) [1638826] - [cdrom] gdrom: fix mistake in assignment of error (Ming Lei) [1638826] - [block] blk-mq: place trace_block_getrq() in correct place (Ming Lei) [1638826] - [block] block: Introduce blk_revalidate_disk_zones() (Ming Lei) [1638826] - [block] block: add a report_zones method (Ming Lei) [1638826] - [block] block: Expose queue nr_zones in sysfs (Ming Lei) [1638826] - [block] block: Improve zone reset execution (Ming Lei) [1638826] - [block] block: Introduce BLKGETNRZONES ioctl (Ming Lei) [1638826] - [block] block: Introduce BLKGETZONESZ ioctl (Ming Lei) [1638826] - [block] block: Limit allocation of zone descriptors for report zones (Ming Lei) [1638826] - [block] block: Introduce blkdev_nr_zones() helper (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Fix sd_zbc_check_zones() error checks (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Reduce boot device scan and revalidate time (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Rearrange code (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Remove an assignment from sd_zbc_setup_report_cmnd() (Ming Lei) [1638826] - [scsi] scsi: sd: don't crash the host on invalid commands (Ming Lei) [1638826] - [pci] PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice (Ming Lei) [1638826] - [fs] f2fs: remove request_list check in is_idle() (Ming Lei) [1638826] - [scsi] scsi: osd: initiator should use mq variant of request ending (Ming Lei) [1638826] - [scsi] scsi: fnic: replace gross legacy tag hack with blk-mq hack (Ming Lei) [1638826] - [infiniband] ib_srp: Remove WARN_ON in srp_terminate_io() (Ming Lei) [1638826] - [scsi] scsi: ufs: Disable blk-mq for now (Ming Lei) [1638826] - [block] sx8: convert to blk-mq (Ming Lei) [1638826] - [block] z2ram: convert to blk-mq (Ming Lei) [1638826] - [cdrom] gdrom: convert to blk-mq (Ming Lei) [1638826] - [block] floppy: convert to blk-mq (Ming Lei) [1638826] - [block] ataflop: convert to blk-mq (Ming Lei) [1638826] - [block] ataflop: fix error handling during setup (Ming Lei) [1638826] - [block] ataflop: fold headers into C file (Ming Lei) [1638826] - [block] amiflop: convert to blk-mq (Ming Lei) [1638826] - [block] amiflop: clean up on errors during setup (Ming Lei) [1638826] - [block] amiflop: fold headers into C file (Ming Lei) [1638826] - [block] swim3: convert to blk-mq (Ming Lei) [1638826] - [block] swim3: add real error handling in setup (Ming Lei) [1638826] - [block] swim: convert to blk-mq (Ming Lei) [1638826] - [block] swim: fix cleanup on setup error (Ming Lei) [1638826] - [mtd] mtd_blkdevs: convert to blk-mq (Ming Lei) [1638826] - [block] xsysace: convert to blk-mq (Ming Lei) [1638826] - [block] paride: convert pf to blk-mq (Ming Lei) [1638826] - [block] paride: convert pd to blk-mq (Ming Lei) [1638826] - [block] paride: convert pcd to blk-mq (Ming Lei) [1638826] - [block] ps3disk: convert to blk-mq (Ming Lei) [1638826] - [block] blk-mq: provide helper for setting up an SQ queue and tag set (Ming Lei) [1638826] - [block] null_blk: remove set but not used variable 'q' (Ming Lei) [1638826] - [cdrom] cdrom: don't attempt to fiddle with cdo->capability (Ming Lei) [1638826] - [block] block: remove bogus check for queue_lock assignment (Ming Lei) [1638826] - [block] null_blk: remove legacy IO path (Ming Lei) [1638826] - [block] um: Convert ubd driver to blk-mq (Ming Lei) [1638826] - [block] skd: fixup usage of legacy IO API (Ming Lei) [1638826] - [block] aoe: convert aoeblk to blk-mq (Ming Lei) [1638826] - [block] ide: remove redundant variables queue_run_ms and left (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion convert BUGs to WARNs (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion hints on fastpath (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_reprep helper (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_action helper (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_nz_result function (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion: rename variables (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion: comment on end_request return (Ming Lei) [1638826] - [scsi] scsi: core: use blk_mq_run_hw_queues in scsi_kick_queue (Ming Lei) [1638826] - [scsi] scsi: sg: remove bad blk_end_request_all() call (Ming Lei) [1638826] - [block] blk-mq: complete req in softirq context in case of single queue (Ming Lei) [1638826] - [block] block, bfq: improve asymmetric scenarios detection (Ming Lei) [1638826] - [block] block: remove redundant 'default n' from Kconfig-s (Ming Lei) [1638826] - [block] blk-mq-debugfs: Also show requests that have not yet been started (Ming Lei) [1638826] - [block] block: Finish renaming REQ_DISCARD into REQ_OP_DISCARD (Ming Lei) [1638826] - [block] kyber: fix integer overflow of latency targets on 32-bit (Ming Lei) [1638826] - [block] kyber: add tracepoints (Ming Lei) [1638826] - [block] kyber: implement improved heuristics (Ming Lei) [1638826] - [block] kyber: don't make domain token sbitmap larger than necessary (Ming Lei) [1638826] - [block] block: export blk_stat_enable_accounting() (Ming Lei) [1638826] - [block] block: move call of scheduler's ->completed_request() hook (Ming Lei) [1638826] - [block] blk-mq: Enable support for runtime power management (Ming Lei) [1638826] - [block] block: Make blk_get_request() block for non-PM requests while suspended (Ming Lei) [1638826] - [block] block: Allow unfreezing of a queue while requests are in progress (Ming Lei) [1638826] - [lib] percpu-refcount: Introduce percpu_ref_resurrect() (Ming Lei) [1638826] - [block] block: Schedule runtime resume earlier (Ming Lei) [1638826] - [block] block: Split blk_pm_add_request() and blk_pm_put_request() (Ming Lei) [1638826] - [block] block, scsi: Change the preempt-only flag into a counter (Ming Lei) [1638826] - [block] block: Move power management code into a new source file (Ming Lei) [1638826] - [block] Blk-throttle: update to use rbtree with leftmost node cached (Ming Lei) [1638826] - [block] block: use bio_add_page in bio_iov_iter_get_pages (Ming Lei) [1638826] - [block] blok, bfq: do not plug I/O if all queues are weight-raised (Ming Lei) [1638826] - [block] block, bfq: inject other-queue I/O into seeky idle queues on NCQ flash (Ming Lei) [1638826] - [block] block, bfq: correctly charge and reset entity service in all cases (Ming Lei) [1638826]- [rpmspec] redhat: fix bpf_samples build (Jiri Benc) [1611579] - [fs] mnt: fix __detach_mounts infinite loop (Benjamin Coddington) [1628736] - [pci] pcie: Enable Broadom iProc PCIE and mark it is as tech preview (Mark Langsdorf) [1576958] - [pci] PCI/ACPI: Add iProc PCIe MCFG quirk (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Add ACPI/ECAM support (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Remove PAXC slot check to allow VF support (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Reduce inbound/outbound mapping print level (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Reject unconfigured physical functions from PAXC (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Disable MSI parsing in certain PAXC blocks (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Fix up corrupted PAXC root complex config registers (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Activate PAXC bridge quirk for more devices (Mark Langsdorf) [1576958]- [s390] s390/mm: fix mis-accounting of pgtable_bytes (Joe Lawrence) [1644481] - [mm] mm: add mm_pxd_folded checks to pgtable_bytes accounting functions (Joe Lawrence) [1644481] - [mm] mm: introduce mm_[p4d|pud|pmd]_folded (Joe Lawrence) [1644481] - [mm] mm: make the __PAGETABLE_PxD_FOLDED defines non-empty (Joe Lawrence) [1644481] - [x86] x86/cpu/vmware: Do not trace vmware_sched_clock() (Vitaly Kuznetsov) [1650273] - [fs] fuse: fix possibly missed wake-up after abort (Lukas Czerner) [1649244] - [fs] fuse: fix leaked notify reply (Lukas Czerner) [1649244] - [fs] fuse: fix blocked_waitq wakeup (Lukas Czerner) [1649244] - [fs] fuse: set FR_SENT while locked (Lukas Czerner) [1649244] - [fs] fuse: Fix use-after-free in fuse_dev_do_write() (Lukas Czerner) [1649244] - [fs] fuse: Fix use-after-free in fuse_dev_do_read() (Lukas Czerner) [1649244] - [fs] fuse: Add missed unlock_page() to fuse_readpages_fill() (Lukas Czerner) [1649244] - [fs] fuse: Don't access pipe->buffers without pipe_lock() (Lukas Czerner) [1649244] - [fs] fuse: fix initial parallel dirops (Lukas Czerner) [1649244] - [fs] fuse: Fix oops at process_init_reply() (Lukas Czerner) [1649244] - [fs] fuse: umount should wait for all requests (Lukas Czerner) [1649244] - [fs] fuse: fix unlocked access to processing queue (Lukas Czerner) [1649244] - [fs] fuse: fix double request_end() (Lukas Czerner) [1649244] - [fs] fuse: fix use-after-free in fuse_direct_IO() (Lukas Czerner) [1599195]- [firmware] efi: Fix debugobjects warning on 'efi_rts_work' (Waiman Long) [1652190] - [rpmspec] kernel.spec: Do not zip modules on noarch builds (Prarit Bhargava) [1646471] - [iommu] iommu/amd: Clear memory encryption mask from physical address (Gary Hook) [1640384]- [powerpc] powerpc/mm/radix: Only need the Nest MMU workaround for R -> RW transition (Steve Best) [1651276] - [powerpc] powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid (Steve Best) [1651276] - [powerpc] powerpc/tm: Fix HFSCR bit for no suspend case (Steve Best) [1651275]- [powerpc] powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage (Steve Best) [1651267] - [tools] perf tools: Remove ext from struct kmod_path (Jiri Olsa) [1581390] - [tools] perf tools: Add gzip_is_compressed function (Jiri Olsa) [1581390] - [tools] perf tools: Add lzma_is_compressed function (Jiri Olsa) [1581390] - [tools] perf tools: Add is_compressed callback to compressions array (Jiri Olsa) [1581390] - [tools] perf tools: Move the temp file processing into decompress_kmodule (Jiri Olsa) [1581390] - [tools] perf tools: Use compression id in decompress_kmodule() (Jiri Olsa) [1581390] - [tools] perf tools: Store compression id into struct dso (Jiri Olsa) [1581390] - [tools] perf tools: Add compression id into 'struct kmod_path' (Jiri Olsa) [1581390] - [tools] perf tools: Make is_supported_compression() static (Jiri Olsa) [1581390] - [tools] perf tools: Make decompress_to_file() function static (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in __open_dso() (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in symbol__disassemble() (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in read_object_code() (Jiri Olsa) [1581390] - [rpmspec] redhat: Enable kernel-tools (for kvm_stat) on s390x, too (Thomas Huth) [1631222]- [drm] drm/atomic_helper: Stop modesets on unregistered connectors harder (Lyude Paul) [1631575] - [drm] drm/nouveau: Fix nv50_mstc->best_encoder() (Lyude Paul) [1631575] - [drm] drm/atomic_helper: Allow DPMS On<->Off changes for unregistered connectors (Lyude Paul) [1631575] - [drm] drm/i915: Fix intel_dp_mst_best_encoder() (Lyude Paul) [1631575] - [drm] drm/i915: Skip vcpi allocation for MSTB ports that are gone (Lyude Paul) [1631575] - [drm] drm/i915: Don't unset intel_connector->mst_port (Lyude Paul) [1631575] - [drm] drm/atomic_helper: Disallow new modesets on unregistered connectors (Lyude Paul) [1631575] - [s390] s390/qeth: fix HiperSockets sniffer (Philipp Rudo) [1649773] - [s390] s390/qeth: report 25Gbit link speed (Philipp Rudo) [1649772] - [s390] s390/qeth: sanitize strings in debug messages (Philipp Rudo) [1649770] - [s390] s390/qeth: fix initial operstate (Philipp Rudo) [1649769] - [s390] s390/qeth: unregister netdevice only when registered (Philipp Rudo) [1649769] - [powerpc] powerpc/64s: consolidate MCE counter increment (Steve Best) [1633550] - [powerpc] powerpc/64s: move machine check SLB flushing to mm/slb.c (Steve Best) [1633550] - [powerpc] powernv/pseries: consolidate code for mce early handling (Steve Best) [1633550] - [powerpc] powerpc/pseries: Dump the SLB contents on SLB MCE errors (Steve Best) [1633550] - [powerpc] powerpc/pseries: Display machine check error details (Steve Best) [1633550] - [powerpc] powerpc/pseries: Flush SLB contents on SLB MCE errors (Steve Best) [1633550] - [powerpc] powerpc/pseries: Define MCE error event section (Steve Best) [1633550] - [powerpc] powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX (Steve Best) [1633550] - [powerpc] powerpc/pseries: Defer the logging of rtas error to irq work queue (Steve Best) [1633550] - [powerpc] powerpc/pseries: Fix endianness while restoring of r3 in MCE handler (Steve Best) [1633550] - [cdrom] cdrom: fix improper type cast, which can leat to information leak (Maurizio Lombardi) [1650476]- [drm] drm/amdgpu/pm: Fix potential Spectre v1 (Rob Clark) [1637115] - [drm] drm/i915/kvmgt: Fix potential Spectre v1 (Rob Clark) [1637115] - [fs] gfs2: Fix metadata read-ahead during truncate (2) (Andreas Grunbacher) [1647982] - [block] block: make sure writesame bio is aligned with logical block size (Ming Lei) [1648750] - [block] block: cleanup __blkdev_issue_discard() (Ming Lei) [1648750] - [block] block: make sure discard bio is aligned with logical block size (Ming Lei) [1648750] - [block] block: Clear kernel memory before copying to user (Ming Lei) [1648752] - [block] block: respect virtual boundary mask in bvecs (Ming Lei) [1648756] - [block] xen: don't include from and (Ming Lei) [1648756] - [block] block: remove ARCH_BIOVEC_PHYS_MERGEABLE (Ming Lei) [1648756] - [block] xen: provide a prototype for xen_biovec_phys_mergeable in xen.h (Ming Lei) [1648756] - [block] xen: remove the xen_biovec_phys_mergeable export (Ming Lei) [1648756] - [block] arm: remove the unused BIOVEC_MERGEABLE define (Ming Lei) [1648756] - [block] block: don't include bug.h from bio.h (Ming Lei) [1648756] - [block] block: don't include io.h from bio.h (Ming Lei) [1648756] - [block] block: remove bvec_to_phys (Ming Lei) [1648756] - [block] block: merge BIOVEC_SEG_BOUNDARY into biovec_phys_mergeable (Ming Lei) [1648756] - [block] block: add a missing BIOVEC_SEG_BOUNDARY check in bio_add_pc_page (Ming Lei) [1648756] - [block] block: simplify BIOVEC_PHYS_MERGEABLE (Ming Lei) [1648756] - [block] block: move req_gap_back_merge to blk.h (Ming Lei) [1648756] - [block] block: move req_gap_{back,front}_merge to blk-merge.c (Ming Lei) [1648756] - [block] block: move integrity_req_gap_{back,front}_merge to blk.h (Ming Lei) [1648756] - [fs] gfs2: Fix iomap buffer head reference counting bug (Andreas Grunbacher) [1647073] - [scsi] qla2xxx: Update driver version to 10.00.00.07.08.0-k1 (Himanshu Madhani) [1615896] - [scsi] scsi: qla2xxx: Initialize port speed to avoid setting lower speed (Himanshu Madhani) [1615896] - [scsi] scsi: qla2xxx: Fix incorrect port speed being set for FC adapters (Himanshu Madhani) [1615896] - [block] block: brd: associate with queue until adding disk (Ming Lei) [1644602] - [block] block: call rq_qos_exit() after queue is frozen (Ming Lei) [1641558] - [block] block: fix the DISCARD request merge (Ming Lei) [1646776] - [block] blk-mq: fallback to previous nr_hw_queues when updating fails (Ming Lei) [1642218] - [block] blk-mq: realloc hctx when hw queue is mapped to another node (Ming Lei) [1642218] - [block] blk-mq: change gfp flags to GFP_NOIO in blk_mq_realloc_hw_ctxs (Ming Lei) [1642218] - [block] blk-mq: adjust debugfs and sysfs register when updating nr_hw_queues (Ming Lei) [1642218] - [block] block: remove bio_rewind_iter() (Ming Lei) [1642208]- [fs] jbd2: fix use after free in jbd2_log_do_checkpoint() (Lukas Czerner) [1644694] - [fs] ext4: initialize retries variable in ext4_da_write_inline_data_begin() (Lukas Czerner) [1644694] - [fs] ext4: fix build error when DX_DEBUG is defined (Lukas Czerner) [1644694]- [pinctrl] pinctrl: intel: Add Ice Lake PCH pin controller support (David Arcari) [1483413] - [netdrv] nfp: flower: fix vlan match by checking both vlan id and vlan pcp (Pablo Cascon) [1645220] - [netdrv] nfp: flower: reject tunnel encap with ipv6 outer headers for offloading (Pablo Cascon) [1646644] - [netdrv] nfp: populate bus-info on representors (Pablo Cascon) [1643998] - [powerpc] KVM: PPC: Validate TCEs against preregistered memory page sizes (David Gibson) [1625821] - [powerpc] KVM: PPC: Inform the userspace about TCE update failures (David Gibson) [1625821] - [powerpc] KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages (David Gibson) [1625821]- [kernel] locking/lockdep: Fix debug_locks off performance problem (Waiman Long) [1647560] - [kernel] locking/lockdep: Remove duplicated 'lock_class_ops' percpu array (Waiman Long) [1647560] - [kernel] locking/lockdep: Make class->ops a percpu counter and move it under CONFIG_DEBUG_LOCKDEP=y (Waiman Long) [1647560] - [kernel] locking/lockdep: Add a faster path in __lock_release() (Waiman Long) [1647560] - [kernel] locking/lockdep: Eliminate redundant IRQs check in __lock_acquire() (Waiman Long) [1647560] - [kernel] locking/lockdep: Remove add_chain_cache_classes() (Waiman Long) [1647560] - [fs] gfs2: Put bitmap buffers in put_super (Andreas Grunbacher) [1647073] - [scsi] scsi: hpsa: limit transfer length to 1MB, not 512kB (Joseph Szczypek) [1643956] - [netdrv] nfp: report FW vNIC stats in interface stats (Pablo Cascon) [1645032] - [rpmspec] spec: Add bpftool debuginfo package (Jiri Olsa) [1633018] - [crypto] crypto: chelsio: Fix memory corruption in DMA Mapped buffers (Arjun Vynipadath) [1631750] - [cdrom] cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status (Maurizio Lombardi) [1627732] {CVE-2018-16658}- [kernel] srcu: Make early-boot call_srcu() reuse workqueue lists (Waiman Long) [1644375] - [tools] rcutorture: Test early boot call_srcu() (Waiman Long) [1644375] - [kernel] srcu: Make call_srcu() available during very early boot (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_state.ofl_lock to raw_spinlock_t (Waiman Long) [1644375] - [kernel] rcu: Remove obsolete ->dynticks_fqs and ->cond_resched_completed (Waiman Long) [1644375] - [kernel] rcu: Switch ->dynticks to rcu_data structure, remove rcu_dynticks (Waiman Long) [1644375] - [kernel] rcu: Switch dyntick nesting counters to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch urgent quiescent-state requests to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch lazy counts to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch last accelerate/advance to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch ->tick_nohz_enabled_snap to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Merge rcu_dynticks structure into rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Remove unused rcu_dynticks_snap() from Tiny RCU (Waiman Long) [1644375] - [kernel] rcu: Convert "1UL << x" to "BIT(x)" (Waiman Long) [1644375] - [kernel] rcu: Avoid resched_cpu() when rescheduling the current CPU (Waiman Long) [1644375] - [kernel] rcu: More aggressively enlist scheduler aid for nohz_full CPUs (Waiman Long) [1644375] - [kernel] rcu: Compute jiffies_till_sched_qs from other kernel parameters (Waiman Long) [1644375] - [kernel] rcu: Provide functions for determining if call_rcu() has been invoked (Waiman Long) [1644375] - [kernel] rcu: Eliminate ->rcu_qs_ctr from the rcu_dynticks structure (Waiman Long) [1644375] - [kernel] rcu: Motivate Tiny RCU forward progress (Waiman Long) [1644375] - [kernel] rcutorture: Dump reader protection sequence if failures or close calls (Waiman Long) [1644375] - [kernel] rcu: Provide improved interrupt-from-idle check in rcu_check_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Make need_resched() respond to urgent RCU-QS needs (Waiman Long) [1644375] - [kernel] rcu: Inline _rcu_barrier() into its sole remaining caller (Waiman Long) [1644375] - [kernel] rcu: Define rcu_all_qs() only in !PREEMPT builds (Waiman Long) [1644375] - [kernel] rcu: Remove !PREEMPT code from rcu_note_voluntary_context_switch() (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in update.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree_plugin.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree_exp.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tiny.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in srcutree.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcutorture.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcu.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in Kconfig (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcupdate_wait.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rculist.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcupdate.h (Waiman Long) [1644375] - [kernel] rcu: Remove now-unused rcutorture APIs (Waiman Long) [1644375] - [kernel] rcuperf: Remove the "rcu_bh" and "sched" torture types (Waiman Long) [1644375] - [kernel] rcutorture: Remove the "rcu_bh" and "sched" torture types (Waiman Long) [1644375] - [kernel] rcu: Stop testing RCU-bh and RCU-sched (Waiman Long) [1644375] - [kernel] rcutorture: Add RCU-bh and RCU-sched support for extended readers (Waiman Long) [1644375] - [kernel] rcu: Consolidate RCU-sched update-side function definitions (Waiman Long) [1644375] - [kernel] rcu: Consolidate RCU-bh update-side function definitions (Waiman Long) [1644375] - [kernel] rcu: Pull rcu_gp_kthread() FQS loop into separate function (Waiman Long) [1644375] - [kernel] rcu: Inline increment_cpu_stall_ticks() into its sole caller (Waiman Long) [1644375] - [kernel] rcu: Fix typo in force_qs_rnp()'s parameter's parameter (Waiman Long) [1644375] - [kernel] rcu: Eliminate initialization-time use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate RCU-barrier use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate quiescent-state and grace-period-nonstart use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate callback-invocation/invocation use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate grace-period management code use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate stall-warning use of rsp (Waiman Long) [1644375] - [kernel] rcu: Restructure rcu_check_gp_kthread_starvation() (Waiman Long) [1644375] - [kernel] rcu: Simplify rcutorture_get_gp_data() (Waiman Long) [1644375] - [kernel] rcu: Remove for_each_rcu_flavor() flavor-traversal macro (Waiman Long) [1644375] - [kernel] rcu: Remove last non-flavor-traversal rsp local variable from tree_plugin.h (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_data structure's ->rsp field (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_node tree accessor macros (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from expedited grace-period functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from no-CBs CPU functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_cpu_stall_info() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_spawn_one_boost_kthread() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from dump_blkd_tasks() and friend (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_print_detail_task_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_init_one() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_boot_init_percpu_data() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from _rcu_barrier() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __rcu_pending() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __call_rcu() and friend (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __rcu_process_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_gp_start_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from force-quiescent-state functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_do_batch() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from CPU hotplug functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_quiescent_state() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_kthread() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_slow() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from note_gp_changes() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __note_gp_changes() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_advance_cbs() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_accelerate_cbs_unlocked() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_accelerate_cbs() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_kthread_wake() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_future_gp_cleanup() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from check_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_other_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_stall_kick_kthreads() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_dump_cpu_stacks() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_gp_kthread_starvation() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from record_gp_stall_check_time() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_get_root() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_in_progress() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rdp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_unblock_qs_rnp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rsp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rnp() (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_data_p pointer to default rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_state_p pointer to default rcu_state structure (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_state structure's ->rda field (Waiman Long) [1644375] - [kernel] rcu: Eliminate rcu_state structure's ->call field (Waiman Long) [1644375] - [kernel] rcu: Remove RCU_STATE_INITIALIZER() (Waiman Long) [1644375] - [kernel] rcu: Express Tiny RCU updates in terms of RCU rather than RCU-sched (Waiman Long) [1644375] - [kernel] rcu: Define RCU-sched API in terms of RCU for Tree RCU PREEMPT builds (Waiman Long) [1644375] - [kernel] rcu: Fix typo in rcu_get_gp_kthreads_prio() header comment (Waiman Long) [1644375] - [kernel] rcu: Drop "wake" parameter from rcu_report_exp_rdp() (Waiman Long) [1644375] - [kernel] rcu: Update comments and help text for no more RCU-bh updaters (Waiman Long) [1644375] - [kernel] rcu: Define RCU-bh update API in terms of RCU (Waiman Long) [1644375] - [kernel] rcu: Report expedited grace periods at context-switch time (Waiman Long) [1644375] - [kernel] rcu: Apply RCU-bh QSes to RCU-sched and RCU-preempt when safe (Waiman Long) [1644375] - [kernel] rcu: Add warning to detect half-interrupts (Waiman Long) [1644375] - [kernel] rcu: Remove now-unused ->b.exp_need_qs field from the rcu_special union (Waiman Long) [1644375] - [kernel] rcu: Allow processing deferred QSes for exiting RCU-preempt readers (Waiman Long) [1644375] - [kernel] rcutorture: Test extended "rcu" read-side critical sections (Waiman Long) [1644375] - [kernel] rcu: Defer reporting RCU-preempt quiescent states when disabled (Waiman Long) [1644375] - [kernel] rcu: Refactor rcu_{nmi,irq}_{enter,exit}() (Waiman Long) [1644375] - [documentation] doc: Fix broken HTML directive (Waiman Long) [1644375] - [documentation] doc: Update removal of RCU-bh/sched update machinery (Waiman Long) [1644375] - [kernel] rcutorture: Maintain self-propagating CB only during forward-progress test (Waiman Long) [1644375] - [kernel] rcutorture: Check GP completion at stutter end (Waiman Long) [1644375] - [kernel] rcutorture: Print forward-progress test interval on error (Waiman Long) [1644375] - [kernel] rcutorture: Adjust number of reader kthreads per CPU-hotplug operations (Waiman Long) [1644375] - [kernel] rcutorture: Reduce priority of forward-progress testing (Waiman Long) [1644375] - [kernel] rcutorture: Limit reader duration if irq or bh disabled (Waiman Long) [1644375] - [kernel] rcutorture: Increase rcu_read_delay() longdelay_ms (Waiman Long) [1644375] - [kernel] rcutorture: Add self-propagating callback to forward-progress testing (Waiman Long) [1644375] - [kernel] rcutorture: Vary forward-progress test interval (Waiman Long) [1644375] - [kernel] rcutorture: Avoid no-test complaint if too few forward-progress tries (Waiman Long) [1644375] - [kernel] rcutorture: Also use GP sequence to judge forward progress (Waiman Long) [1644375] - [kernel] rcutorture: Add forward-progress tests for RCU grace periods (Waiman Long) [1644375] - [tools] rcutorture: Remove TREE06 and TREE08 from the default test list (Waiman Long) [1644375] - [kernel] rcuperf: Warn on bad perf type for built-in tests (Waiman Long) [1644375] - [kernel] rcutorture: Warn on bad torture type for built-in tests (Waiman Long) [1644375] - [kernel] rcutorture: Force occasional reader waits (Waiman Long) [1644375] - [tools] torture: Stop overwriting Make.out file with obsolete version (Waiman Long) [1644375] - [documentation] doc: Improve rcu_dynticks::dynticks documentation (Waiman Long) [1644375] - [documentation] doc: Fix broken RCU-requirements link to LKML archive (Waiman Long) [1644375] - [documentation] doc: Add design documentation on interruption of NMI handlers (Waiman Long) [1644375] - [kernel] rcutorture: Fix rcu_barrier successes counter (Waiman Long) [1644375] - [kernel] rcutorture: Add support to detect if boost kthread prio is too low (Waiman Long) [1644375] - [kernel] rcutorture: Use monotonic timestamp for stall detection (Waiman Long) [1644375] - [kernel] rcutorture: Make boost test more robust (Waiman Long) [1644375] - [kernel] rcutorture: Disable RT throttling for boost tests (Waiman Long) [1644375] - [kernel] rcutorture: Emphasize testing of single reader protection type (Waiman Long) [1644375] - [kernel] rcutorture: Handle extended read-side critical sections (Waiman Long) [1644375] - [kernel] rcutorture: Make rcu_torture_timer() use rcu_torture_one_read() (Waiman Long) [1644375] - [kernel] rcutorture: Use per-CPU random state for rcu_torture_timer() (Waiman Long) [1644375] - [kernel] rcutorture: Use atomic increment for n_rcu_torture_timers (Waiman Long) [1644375] - [kernel] rcutorture: Extract common code from rcu_torture_reader() (Waiman Long) [1644375] - [kernel] rcuperf: Remove unused torturing_tasks() function (Waiman Long) [1644375] - [kernel] rcu: Remove rcutorture test version and sequence number (Waiman Long) [1644375] - [kernel] rcutorture: Change units of onoff_interval to jiffies (Waiman Long) [1644375] - [kernel] rcu: Assign higher prio to RCU threads if rcutorture is built-in (Waiman Long) [1644375] - [documentation] rculist: Improve documentation for list_for_each_entry_from_rcu() (Waiman Long) [1644375] - [kernel] srcu: Add grace-period number to rcutorture statistics printout (Waiman Long) [1644375] - [kernel] rcu: Print stall-warning NMI dyntick state in hexadecimal (Waiman Long) [1644375] - [maintainers] MAINTAINERS: Update RCU, SRCU, and TORTURE-TEST entries (Waiman Long) [1644375] - [kernel] rcu: Make rcu_seq_diff() more exact (Waiman Long) [1644375] - [documentation] doc: Update synchronize_rcu() definition in whatisRCU.txt (Waiman Long) [1644375] - [kernel] rcu: Check the range of jiffies_till_{first, next}_fqs when setting them (Waiman Long) [1644375] - [kernel] rcu: Add diagnostics for rcutorture writer stall warning (Waiman Long) [1644375] - [kernel] rcu: Add comment to the last sleep in the rcu tasks loop (Waiman Long) [1644375] - [kernel] rcu: Speed up calling of RCU tasks callbacks (Waiman Long) [1644375] - [kernel] rcu: Add comment documenting how rcu_seq_snap works (Waiman Long) [1644375] - [kernel] rcu: Use RCU CPU stall timeout for rcu_check_gp_start_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove __maybe_unused from rcu_cpu_has_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from rcu_perf_print_module_parms() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from rcu_torture_print_module_parms() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from panic_on_rcu_stall() and rcu_blocking_is_gp() (Waiman Long) [1644375] - [kernel] rcu: Remove unused local variable "cpu" (Waiman Long) [1644375] - [kernel] rcu: Remove unused rcu_kick_nohz_cpu() function (Waiman Long) [1644375] - [kernel] rcu: Clarify and correct the rcu_preempt_qs() header comment (Waiman Long) [1644375] - [kernel] rcu: Inline rcu_dynticks_momentary_idle() into its sole caller (Waiman Long) [1644375] - [kernel] rcu: Mark task as .need_qs less aggressively (Waiman Long) [1644375] - [kernel] rcu: Improve RCU-tasks naming and comments (Waiman Long) [1644375] - [kernel] rcu: Use pr_fmt to prefix "rcu: " to logging output (Waiman Long) [1644375] - [kernel] rcu: rcupdate.h: Get rid of Sphinx warnings at rcu_pointer_handoff() (Waiman Long) [1644375] - [kernel] rcu: Improve rcu_note_voluntary_context_switch() reporting (Waiman Long) [1644375] - [kernel] rcu: Make rcu_read_unlock_special() static (Waiman Long) [1644375] - [kernel] rcu: Add diagnostics for offline CPUs failing to report QS (Waiman Long) [1644375] - [kernel] rcu: Record ->gp_state for both phases of grace-period initialization (Waiman Long) [1644375] - [kernel] rcu: Add CPU online/offline state to dump_blkd_tasks() (Waiman Long) [1644375] - [kernel] rcu: Add up-tree information to dump_blkd_tasks() diagnostics (Waiman Long) [1644375] - [kernel] rcu: Remove CPU-hotplug failsafe from force-quiescent-state code path (Waiman Long) [1644375] - [kernel] rcu: Remove failsafe check for lost quiescent state (Waiman Long) [1644375] - [kernel] rcu: Move grace-period pre-init delay after pre-init (Waiman Long) [1644375] - [kernel] rcu: Add RCU-preempt check for waiting on newly onlined CPU (Waiman Long) [1644375] - [kernel] rcu: Fix grace-period hangs due to race with CPU offline (Waiman Long) [1644375] - [kernel] rcu: Fix grace-period hangs from mid-init task resume (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive splats from mid-init task resume (Waiman Long) [1644375] - [kernel] rcu: Suppress more involved false-positive preempted-task splats (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive preempted-task splats (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive offline-CPU lockdep-RCU splat (Waiman Long) [1644375] - [kernel] rcu: Prevent useless FQS scan after all CPUs have checked in (Waiman Long) [1644375] - [kernel] rcu: Replace smp_wmb() with smp_store_release() for stall check (Waiman Long) [1644375] - [kernel] rcu: Fix typo and add additional debug (Waiman Long) [1644375] - [kernel] rcu: Make rcu_report_unblock_qs_rnp() warn on violated preconditions (Waiman Long) [1644375] - [kernel] rcu: Make rcu_init_new_rnp() stop upon already-set bit (Waiman Long) [1644375] - [kernel] rcu: Fix an obsolete ->qsmaskinit comment (Waiman Long) [1644375] - [kernel] rcu: Clean up handling of tasks blocked across full-rcu_node offline (Waiman Long) [1644375] - [kernel] rcu: Identify grace period is in progress as we advance up the tree (Waiman Long) [1644375] - [kernel] rcu: Use better variable names in funnel locking loop (Waiman Long) [1644375] - [kernel] rcu: Rename the grace-period-request variables and parameters (Waiman Long) [1644375] - [kernel] rcu: Regularize resetting of rcu_data wrap indicator (Waiman Long) [1644375] - [kernel] rcutorture: Correctly handle grace-period sequence wrap (Waiman Long) [1644375] - [kernel] rcu: Make rcu_start_this_gp() check for grace period already started (Waiman Long) [1644375] - [kernel] rcu: Fix cpustart tracepoint gp_seq number (Waiman Long) [1644375] - [kernel] rcu: Produce last "CleanupMore" trace only if late-breaking request (Waiman Long) [1644375] - [kernel] rcu: Don't funnel-lock above leaf node if GP in progress (Waiman Long) [1644375] - [documentation] doc: Update RCU CPU stall-warning documentation (Waiman Long) [1644375] - [documentation] doc: Update memory-ordering documentation for ->gp-seq (Waiman Long) [1644375] - [documentation] doc: Update data-structure documentation for ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make simple callback acceleration refer to rdp->gp_seq_needed (Waiman Long) [1644375] - [kernel] rcu: Remove ->gpnum and ->completed (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_fqs tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_quiescent_state_report tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_unlock_preempted_task tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_preempt_task tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_grace_period_init tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_future_grace_period tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_grace_period tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make rcu_nocb_wait_gp() check if GP already requested (Waiman Long) [1644375] - [kernel] rcu: Move from ->need_future_gp[] to ->gp_seq_needed (Waiman Long) [1644375] - [kernel] rcutorture: Convert rcutorture_get_gp_data() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make RCU CPU stall warnings use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert grace-period requests to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert ->completedqs to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert ->rcu_iw_gpnum to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_gp_in_progress() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_nocb_gp_get() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_try_advance_all_cbs() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_implicit_dynticks_qs() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_gpnum_ovf() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move RCU's grace-period-change code to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert conditional grace-period primitives to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make quiescent-state reporting use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_check_gp_kthread_starvation() to GP sequence number (Waiman Long) [1644375] - [kernel] rcu: Make rcutorture's batches-completed API use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_gp_slow() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Introduce grace-period sequence numbers (Waiman Long) [1644375] - [kernel] rcu: Make rcu_gp_cleanup() write only once to ->gp_flags (Waiman Long) [1644375] - [kernel] rcu: Diagnostics for grace-period startup hangs (Waiman Long) [1644375] - [kernel] rcu: Exclude near-simultaneous RCU CPU stall warnings (Waiman Long) [1644375] - [kernel] rcu: Use the proper lockdep annotation in dump_blkd_tasks() (Waiman Long) [1644375] - [kernel] rcu: Add debugging info to assertion (Waiman Long) [1644375] - [kernel] torture: Keep old-school dmesg format (Waiman Long) [1644375] - [kernel] torture: Make online/offline messages appear only for verbose=2 (Waiman Long) [1644375] - [tools] rcutorture: Make kvm-find-errors.sh find close calls (Waiman Long) [1644375] - [tools] rcutorture: Remove obsolete TREE08-T.boot file (Waiman Long) [1644375] - [tools] torture: Use a single build directory for torture scenarios (Waiman Long) [1644375] - [kernel] srcu: Introduce srcu_read_{un,}lock_notrace() (Waiman Long) [1644375] - [kernel] srcu: Add address of first callback to rcutorture output (Waiman Long) [1644375] - [kernel] srcu: Document that srcu_funnel_gp_start() implies srcu_funnel_exp_start() (Waiman Long) [1644375] - [kernel] srcu: Fix typos in __call_srcu() header comment (Waiman Long) [1644375] - [kernel] rcu: Make expedited grace period use direct call on last leaf (Waiman Long) [1644375]- [netdrv] nfp: flower: use offsets provided by pedit instead of index for ipv6 (Pablo Cascon) [1645132] - [netdrv] nfp: flower: fix multiple keys per pedit action (Pablo Cascon) [1645132] - [netdrv] nfp: flower: fix pedit set actions for multiple partial masks (Pablo Cascon) [1645132] - [netdrv] nfp: flower: ignore checksum actions when performing pedit actions (Pablo Cascon) [1644400] - [kernel] sched/fair: Fix throttle_list starvation with low CFS quota (Phil Auld) [1638526] - [net] tipc: fix the big/little endian issue in tipc_dest (Jon Maloy) [1640712] - [rpmspec] kernel.spec: Include kernel-signing-ca.cer public key (Prarit Bhargava) [1638465] - [block] block: don't deal with discard limit in blkdev_issue_discard() (Ming Lei) [1631255] - [powerpc] powerpc/mm: Check memblock_add against MAX_PHYSMEM_BITS range (Gustavo Duarte) [1561402] - [powerpc] powerpc/mm: Increase MAX_PHYSMEM_BITS to 128TB with SPARSEMEM_VMEMMAP config (Gustavo Duarte) [1561402]- [s390] s390/crypto: Enhance paes cipher to accept variable length key material (Philipp Rudo) [1644387] - [s390] s390/pkey: move pckmo subfunction available checks away from module init (Philipp Rudo) [1644387] - [s390] s390/pkey: Load pkey kernel module automatically (Philipp Rudo) [1644387] - [s390] s390/zcrypt: fix broken zcrypt_send_cprb in-kernel api function (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for transforming key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for random protected key verification (Philipp Rudo) [1644387] - [s390] s390/pkey: Add sysfs attributes to emit secure key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Add sysfs attributes to emit protected key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Define protected key blob format (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for random protected key generation (Philipp Rudo) [1644387] - [s390] s390/zcrypt: add ap_adapter_mask sysfs attribute (Philipp Rudo) [1644387] - [s390] s390/zcrypt: provide apfs failure code on type 86 error reply (Philipp Rudo) [1644387] - [s390] s390/zcrypt: zcrypt device driver cleanup (Philipp Rudo) [1644387] - [s390] s390/zcrypt: multiple zcrypt device nodes support (Philipp Rudo) [1644387] - [s390] s390/zcrypt: enable AP bus scan without a valid default domain (Philipp Rudo) [1644387] - [s390] s390/zcrypt: Use kmemdup to replace kmalloc + memcpy (Philipp Rudo) [1644387] - [s390] s390/qeth: add TSO support for L2 devices (Philipp Rudo) [1644381] - [s390] s390/qeth: add support for IPv6 TSO (Philipp Rudo) [1644381] - [s390] s390/qeth: enhance TSO control sequence (Philipp Rudo) [1644381] - [s390] s390/qeth: make TSO controls protocol-agnostic (Philipp Rudo) [1644381] - [s390] s390: qeth: Fix potential array overrun in cmd/rc lookup (Philipp Rudo) [1644381] - [s390] s390: qeth_core_mpc: Use ARRAY_SIZE instead of reimplementing its function (Philipp Rudo) [1644381] - [scsi] scsi: mpt3sas: Remove unnecessary parentheses and simplify null checks (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Use dma_pool_zalloc (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove unused macro MPT3SAS_FMT (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert logging uses with MPT3SAS_FMT without logging levels (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove KERN_WARNING from panic uses (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert logging uses with MPT3SAS_FMT and reply_q_name to s: (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert mlsleading uses of pr_ with MPT3SAS_FMT (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert uses of pr_ with MPT3SAS_FMT to ioc_ (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Add ioc_ logging macros (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix calltrace observed while running IO & reset (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Improve kernel-doc headers (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Split _base_reset_handler(), mpt3sas_scsih_reset_handler() and mpt3sas_ctl_reset_handler() (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix a race condition in mpt3sas_base_hard_reset_handler() (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix _transport_smp_handler() error path (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Introduce struct mpt3sas_nvme_cmd (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Annotate switch/case fall-through (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove set-but-not-used variables (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix indentation (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Update driver version "26.100.00.00" (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: As per MPI-spec, use combined reply queue for SAS3.5 controllers when HBA supports more than 16 MSI-x vectors (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix, False timeout prints for ioctl and other internal commands during controller reset (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Don't access the structure after decrementing it's instance reference count (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Incorrect command status was set/marked as not used (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Don't abort I/Os issued to NVMe drives while processing Async Broadcast primitive event (Tomas Henzl) [1638649] - [netdrv] net/mlx5e: Do not ignore netdevice TX/RX queues number (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Use non-delayed work for update stats (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Initialize all netdev common structures in one place (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Always initialize update stats delayed work (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Gather common netdev init/cleanup functionality in one place (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Fix netlink support in IPoIB (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Hoist alloc_netdev_mqs out of the driver (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Consolidate checking of the proposed child interface (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Maintain the child_intfs list from ndo_init/uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Do not remove child devices from within the ndo_uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Get rid of the sysfs_mutex (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Use priv_destructor for netdev cleanup (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Move init code to ndo_init (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Move all uninit code into ndo_uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Use cancel_delayed_work_sync for neigh-clean task (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Get rid of IPOIB_FLAG_GOING_DOWN (Alaa Hleihel) [1643103] - [infiniband] RDMA/ipoib: Fix use of sizeof() (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Do not recycle RX pages in interface down flow (Alaa Hleihel) [1643103 1643047] - [netdrv] net/mlx5e: Replace call to MPWQE free with dealloc in interface down flow (Alaa Hleihel) [1643103 1643047] - [net] net/xdp: Fix suspicious RCU usage warning (Alaa Hleihel) [1643103 1643047] - [netdrv] net/mlx5: WQ, fixes for fragmented WQ buffers API (Alaa Hleihel) [1643103 1636183] - [netdrv] net/mlx4_en: Use minimal rx and tx ring sizes on kdump kernel (Alaa Hleihel) [1643103 1615267] - [x86] mark coffeelake-s/h 8+2 as supported (David Arcari) [1575461 1575460] - [x86] x86/spec_ctrl: Synchronize STIBP changes with RHEL IBRS code (Waiman Long) [1643233] - [x86] x86/speculation: Propagate information about RSB filling mitigation to sysfs (Waiman Long) [1643233] - [x86] x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation (Waiman Long) [1643233] - [x86] x86/speculation: Apply IBPB more strictly to avoid cross-process data leak (Waiman Long) [1643233] - [x86] x86/speculation: Add RETPOLINE_AMD support to the inline asm CALL_NOSPEC variant (Waiman Long) [1643233] - [x86] x86/CPU: Fix unused variable warning when !CONFIG_IA32_EMULATION (Waiman Long) [1643233] - [x86] x86/pti/64: Remove the SYSCALL64 entry trampoline (Waiman Long) [1643233] - [x86] x86/entry/64: Use the TSS sp2 slot for SYSCALL/SYSRET scratch space (Waiman Long) [1643233] - [x86] x86/entry/64: Document idtentry (Waiman Long) [1643233] - [x86] x86/asm-offsets: Move TSS_sp0 and TSS_sp1 to asm-offsets.c (Waiman Long) [1643233] - [x86] x86: Add entry trampolines to kcore (Waiman Long) [1643233] - [kernel] kallsyms, x86: Export addresses of PTI entry trampolines (Waiman Long) [1643233] - [kernel] kallsyms: Simplify update_iter_mod() (Waiman Long) [1643233] - [scsi] scsi: csiostor: fix incorrect port capabilities (Arjun Vynipadath) [1628866] - [scsi] scsi: csiostor: add a check for NULL pointer after kmalloc() (Arjun Vynipadath) [1628866] - [scsi] scsi: csiostor: update ingress pack and pad boundary value (Arjun Vynipadath) [1628866]- [netdrv] nfp: flower: use host context count provided by firmware (Pablo Cascon) [1639609] - [netdrv] nfp: flower: use stats array instead of storing stats per flow (Pablo Cascon) [1639609] - [netdrv] nfp: flower: use rhashtable for flow caching (Pablo Cascon) [1639609] - [netdrv] nfp: avoid soft lockups under control message storm (Pablo Cascon) [1639609] - [kernel] sched: disable autogroups by default (Phil Auld) [1568166] - [s390] s390/keyboard: sanitize array index in do_kdsk_ioctl (Steve Best) [1637591] - [char] ipmi:ssif: Add support for multi-part transmit messages > 2 parts (Tony Camuso) [1622053] - [scsi] scsi: libsas: fix a race condition when smp task timeout (Zhou Wang) [1640426] - [scsi] scsi: libsas: check the ata device status by ata_dev_enabled() (Zhou Wang) [1640426] - [scsi] scsi: libsas: always unregister the old device if going to discover new (Zhou Wang) [1640426] - [scsi] scsi: libsas: dynamically allocate and free ata host (Zhou Wang) [1640426] - [scsi] scsi: libsas: remove irq save in sas_ata_qc_issue() (Zhou Wang) [1640426]- [video] fbdev: make FB_BACKLIGHT a tristate (Rob Clark) [1643333 1589158] - [netdrv] Taint kernel if e1000 is loaded (Neil Horman) [1643617] - [netdrv] iavf: fix a typo (Stefan Assmann) [1627882] - [netdrv] i40evf: remove ndo_poll_controller (Stefan Assmann) [1627882] - [netdrv] intel-ethernet: use correct module license (Stefan Assmann) [1627882] - [netdrv] iavf: finish renaming files to iavf (Stefan Assmann) [1627882] - [netdrv] iavf: rename most of i40e strings (Stefan Assmann) [1627882] - [netdrv] iavf: tracing infrastructure rename (Stefan Assmann) [1627882] - [netdrv] iavf: replace i40e_debug with iavf version (Stefan Assmann) [1627882] - [netdrv] iavf: rename i40e_hw to iavf_hw (Stefan Assmann) [1627882] - [netdrv] iavf: rename I40E_ADMINQ_DESC (Stefan Assmann) [1627882] - [netdrv] iavf: rename device ID defines (Stefan Assmann) [1627882] - [netdrv] iavf: remove references to old names (Stefan Assmann) [1627882] - [netdrv] iavf: move i40evf files to new name (Stefan Assmann) [1627882] - [netdrv] iavf: rename i40e_status to iavf_status (Stefan Assmann) [1627882] - [netdrv] iavf: rename functions and structs to new name (Stefan Assmann) [1627882] - [netdrv] iavf: diet and reformat (Stefan Assmann) [1627882] - [netdrv] configs: enable CONFIG_IAVF=m (Stefan Assmann) [1627882] - [netdrv] intel-ethernet: rename i40evf to iavf (Stefan Assmann) [1627882] - [netdrv] i40e(vf): remove i40e_ethtool_stats.h header file (Stefan Assmann) [1627882] - [netdrv] i40evf: cancel workqueue sync for adminq when a VF is removed (Stefan Assmann) [1627882] - [netdrv] i40evf: Don't enable vlan stripping when rx offload is turned on (Stefan Assmann) [1627882] - [netdrv] i40evf: set IFF_UNICAST_FLT flag for the VF (Stefan Assmann) [1627882] - [netdrv] i40evf: Validate the number of queues a PF sends (Stefan Assmann) [1627882] - [netdrv] i40evf: Change a VF mac without reloading the VF driver (Stefan Assmann) [1627882] - [netdrv] i40evf: update ethtool stats code and use helper functions (Stefan Assmann) [1627882] - [netdrv] i40e: Add AQ command for rearrange NVM structure (Stefan Assmann) [1627882] - [netdrv] i40e: Add additional return code to i40e_asq_send_command (Stefan Assmann) [1627882] - [netdrv] i40e/i40evf: remove redundant functions i40evf_aq_(set/get)_phy_register (Stefan Assmann) [1627882] - [netdrv] cls_flower: fix error values for commands not supported by drivers (Stefan Assmann) [1627882] - [init] init/main.c: Enable watchdog_thresh control from kernel line (Prarit Bhargava) [1643161] - [s390] s390/purgatory: Remove duplicate variable definitions (Philipp Rudo) [1642447] - [s390] s390/purgatory: Add missing FORCE to Makefile targets (Philipp Rudo) [1642447] - [s390] s390/purgatory: Fix crash with expoline enabled (Philipp Rudo) [1642447] - [s390] s390: disable asm code expolines if cc does not support it (Philipp Rudo) [1642447] - [netdrv] Revert be2net: remove desc field from be_eq_obj (Ivan Vecera) [1639867]- [rpmspec] redhat: add optional bpf_samples package (Jiri Benc) [1611579] - [powerpc] powerpc/time: Fix clockevent_decrementer initalisation for PR KVM (Steve Best) [1641615] - [net] ip: frags: fix crash in ip_do_fragment() (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipfrag: let ip(6)frag_high_thresh in ns be higher than in init_net (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv6: discard IP frag queue on more errors (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: fail fast on IP defrag errors (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: process in-order fragments efficiently (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: add helpers to process in-order fragments faster (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv6: defrag: drop non-last frags smaller than min mtu (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv4: frags: precedence bug in ip_expire() (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: use rb trees for IP frag queue (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] modify skb_rbtree_purge to return the truesize of all purged skbs (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: discard IPv4 datagrams with overlapping segments (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [fs] ovl: fix format of setxattr debug (Miklos Szeredi) [1636875] - [fs] ovl: fix access beyond unterminated strings (Miklos Szeredi) [1636875] - [fs] ovl: make symbol 'ovl_aops' static (Miklos Szeredi) [1636875] - [fs] vfs: swap names of (do,vfs)_clone_file_range() (Miklos Szeredi) [1636875] - [fs] ovl: fix freeze protection bypass in ovl_clone_file_range() (Miklos Szeredi) [1636875] - [fs] ovl: fix freeze protection bypass in ovl_write_iter() (Miklos Szeredi) [1636875] - [fs] ovl: fix memory leak on unlink of indexed file (Miklos Szeredi) [1636875] - [fs] ovl: fix oopses in ovl_fill_super() failure paths (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fadvise() (Miklos Szeredi) [1636875] - [fs] vfs: implement readahead(2) using POSIX_FADV_WILLNEED (Miklos Szeredi) [1636875] - [fs] vfs: add the fadvise() file operation (Miklos Szeredi) [1636875] - [fs] Documentation/filesystems: update documentation of file_operations (Miklos Szeredi) [1636875] - [fs] ovl: fix GPF in swapfile_activate of file from overlayfs over xfs (Miklos Szeredi) [1636875] - [fs] ovl: respect FIEMAP_FLAG_SYNC flag (Miklos Szeredi) [1636875] - [fs] ovl: Enable metadata only feature (Miklos Szeredi) [1636875] - [fs] ovl: Do not do metacopy only for ioctl modifying file attr (Miklos Szeredi) [1636875] - [fs] ovl: Do not do metadata only copy-up for truncate operation (Miklos Szeredi) [1636875] - [fs] ovl: add helper to force data copy-up (Miklos Szeredi) [1636875] - [fs] ovl: Check redirect on index as well (Miklos Szeredi) [1636875] - [fs] ovl: Set redirect on upper inode when it is linked (Miklos Szeredi) [1636875] - [fs] ovl: Set redirect on metacopy files upon rename (Miklos Szeredi) [1636875] - [fs] ovl: Do not set dentry type ORIGIN for broken hardlinks (Miklos Szeredi) [1636875] - [fs] ovl: Add an inode flag OVL_CONST_INO (Miklos Szeredi) [1636875] - [fs] ovl: Treat metacopy dentries as type OVL_PATH_MERGE (Miklos Szeredi) [1636875] - [fs] ovl: Check redirects for metacopy files (Miklos Szeredi) [1636875] - [fs] ovl: Move some dir related ovl_lookup_single() code in else block (Miklos Szeredi) [1636875] - [fs] ovl: Do not expose metacopy only dentry from d_real() (Miklos Szeredi) [1636875] - [fs] ovl: Open file with data except for the case of fsync (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_inode_realdata() (Miklos Szeredi) [1636875] - [fs] ovl: Store lower data inode in ovl_inode (Miklos Szeredi) [1636875] - [fs] ovl: Fix ovl_getattr() to get number of blocks from lower (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_dentry_lowerdata() to get lower data dentry (Miklos Szeredi) [1636875] - [fs] ovl: Copy up meta inode data from lowest data inode (Miklos Szeredi) [1636875] - [fs] ovl: Modify ovl_lookup() and friends to lookup metacopy dentry (Miklos Szeredi) [1636875] - [fs] ovl: Use out_err instead of out_nomem (Miklos Szeredi) [1636875] - [fs] ovl: A new xattr OVL_XATTR_METACOPY for file on upper (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_already_copied_up() (Miklos Szeredi) [1636875] - [fs] ovl: Copy up only metadata during copy up where it makes sense (Miklos Szeredi) [1636875] - [fs] ovl: During copy up, first copy up metadata and then data (Miklos Szeredi) [1636875] - [fs] ovl: Provide a mount option metacopy=on/off for metadata copyup (Miklos Szeredi) [1636875] - [fs] ovl: Move the copy up helpers to copy_up.c (Miklos Szeredi) [1636875] - [fs] ovl: Initialize ovl_inode->redirect in ovl_get_inode() (Miklos Szeredi) [1636875] - [fs] ovl: fix documentation of non-standard behavior (Miklos Szeredi) [1636875] - [fs] ovl: obsolete "check_copy_up" module option (Miklos Szeredi) [1636875] - [fs] vfs: remove open_flags from d_real() (Miklos Szeredi) [1636875] - [fs] Revert "fsnotify: support overlayfs" (Miklos Szeredi) [1636875] - [fs] Partially revert "locks: fix file locking on overlayfs" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: do get_write_access() on upper layer of overlayfs" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: add flags to d_real()" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: update ovl inode before relatime check" (Miklos Szeredi) [1636875] - [fs] Revert "ovl: fix relatime for directories" (Miklos Szeredi) [1636875] - [fs] vfs: fix freeze protection in mnt_want_write_file() for overlayfs (Miklos Szeredi) [1636875] - [fs] Revert "ovl: don't allow writing ioctl on lower layer" (Miklos Szeredi) [1636875] - [fs] Revert "ovl: fix may_write_real() for overlayfs directories" (Miklos Szeredi) [1636875] - [fs] vfs: don't open real (Miklos Szeredi) [1636875] - [fs] ovl: add reflink/copyfile/dedup support (Miklos Szeredi) [1636875] - [fs] ovl: add O_DIRECT support (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fiemap() (Miklos Szeredi) [1636875] - [fs] ovl: add lsattr/chattr support (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fallocate() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_mmap() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fsync() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_write_iter() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_read_iter() (Miklos Szeredi) [1636875] - [fs] ovl: add helper to return real file (Miklos Szeredi) [1636875] - [fs] ovl: stack file ops (Miklos Szeredi) [1636875] - [fs] ovl: deal with overlay files in ovl_d_real() (Miklos Szeredi) [1636875] - [fs] ovl: copy up file size as well (Miklos Szeredi) [1636875] - [fs] Revert "Revert "ovl: get_write_access() in truncate"" (Miklos Szeredi) [1636875] - [fs] ovl: copy up inode flags (Miklos Szeredi) [1636875] - [fs] ovl: copy up times (Miklos Szeredi) [1636875] - [fs] vfs: export vfs_dedupe_file_range_one() to modules (Miklos Szeredi) [1636875] - [fs] vfs: export vfs_ioctl() to modules (Miklos Szeredi) [1636875] - [fs] vfs: make open_with_fake_path() not contribute to nr_files (Miklos Szeredi) [1636875] - [fs] ovl: fix wrong use of impure dir cache in ovl_iterate() (Miklos Szeredi) [1636875] - [fs] new helper: open_with_fake_path() (Miklos Szeredi) [1636875] - [fs] now we can fold open_check_o_direct() into do_dentry_open() (Miklos Szeredi) [1636875] - [fs] lift fput() on late failures into path_openat() (Miklos Szeredi) [1636875] - [fs] fold put_filp() into fput() (Miklos Szeredi) [1636875] - [fs] introduce FMODE_OPENED (Miklos Szeredi) [1636875] - [fs] ->file_open(): lose cred argument (Miklos Szeredi) [1636875] - [fs] security_file_open(): lose cred argument (Miklos Szeredi) [1636875] - [fs] get rid of cred argument of vfs_open() and do_dentry_open() (Miklos Szeredi) [1636875] - [fs] pass ->f_flags value to alloc_empty_file() (Miklos Szeredi) [1636875] - [fs] pass creds to get_empty_filp(), make sure dentry_open() passes the right creds (Miklos Szeredi) [1636875] - [fs] alloc_file(): switch to passing O_... flags instead of FMODE_... mode (Miklos Szeredi) [1636875] - [fs] make sure do_dentry_open() won't return positive as an error (Miklos Szeredi) [1636875] - [fs] create_pipe_files(): use fput() if allocation of the second file fails (Miklos Szeredi) [1636875] - [fs] turn filp_clone_open() into inline wrapper for dentry_open() (Miklos Szeredi) [1636875] - [fs] fold security_file_free() into file_free() (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: extract helper for a single dedup (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: rationalize args (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: return int (Miklos Szeredi) [1636875] - [fs] vfs: limit size of dedupe (Miklos Szeredi) [1636875] - [fs] ovl: set I_CREATING on inode being created (Miklos Szeredi) [1636875]- [rpmspec] redhat spec: Add new perf tools file (Jiri Olsa) [1579484] - [tools] perf tools: Fix use of alternatives to find JDIR (Jiri Olsa) [1579484] - [net] net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd() (Paolo Abeni) [1637576] - [thunderbolt] thunderbolt: Add Intel as copyright holder (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Convert rest of the driver files to use SPDX identifier (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Print connected devices (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Make the driver less verbose (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Remove a meaningless NULL pointer check before dma_pool_destroy (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Initialize after IOMMUs (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Do not handle ICM events after domain is stopped (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Add support for runtime PM (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Remove redundant variable 'approved' (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Use correct ICM commands in system suspend (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: No need to take tb->lock in domain suspend/complete (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Do not unnecessarily call ICM get route (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Use 64-bit DMA mask if supported by the platform (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Fix small typo in variable name (Jarod Wilson) [1588929] - [mm] Revert x86/e820: put !E820_TYPE_RAM regions into memblock.reserved (Baoquan He) [1639450] - [mm] mm: return zero_resv_unavail optimization (Baoquan He) [1639450] - [mm] mm: zero remaining unavailable struct pages (Baoquan He) [1639450] - [mm] mm: skip invalid pages block at a time in zero_resv_unresv() (Baoquan He) [1639450] - [mm] docs/mm: memblock: update kernel-doc comments (Baoquan He) [1639450] - [mm] mm/memblock: add a name for memblock flags enumeration (Baoquan He) [1639450] - [block] blk-wbt: wake up all when we scale up, not down (Ming Lei) [1640035]- [video] fbdev: make FB_BACKLIGHT a tristate (Rob Clark) [1589158] - [kernel] EDAC: Raise the maximum number of memory controllers (Aristeu Rozanski) [1634077] - [netdrv] i40e: disallow changing the number of descriptors when AF_XDP is on (Stefan Assmann) [1630760] - [netdrv] i40e: clean zero-copy XDP Rx ring on shutdown/reset (Stefan Assmann) [1630760] - [netdrv] i40e: clean zero-copy XDP Tx ring on shutdown/reset (Stefan Assmann) [1630760] - [netdrv] i40e: Remove unused msglen parameter from virtchnl functions (Stefan Assmann) [1630760] - [netdrv] i40e: fix double 'NIC Link is Down' messages (Stefan Assmann) [1630760] - [netdrv] i40e: add a helper function to validate a VF based on the vf id (Stefan Assmann) [1630760] - [netdrv] i40e: use declared variables for pf and hw (Stefan Assmann) [1630760] - [netdrv] i40e: Unset promiscuous settings on VF reset (Stefan Assmann) [1630760] - [netdrv] i40e: Fix VF's link state notification (Stefan Assmann) [1630760] - [netdrv] intel-ethernet: use correct module license (Stefan Assmann) [1630760] - [netdrv] i40e(vf): remove i40e_ethtool_stats.h header file (Stefan Assmann) [1630760] - [netdrv] i40e: fix possible compiler warning in xsk TX path (Stefan Assmann) [1630760] - [netdrv] i40e: add AF_XDP zero-copy Tx support (Stefan Assmann) [1630760] - [netdrv] i40e: move common Tx functions to i40e_txrx_common.h (Stefan Assmann) [1630760] - [netdrv] xsk: i40e: get rid of useless struct xdp_umem_props (Stefan Assmann) [1630760] - [netdrv] i40e: add AF_XDP zero-copy Rx support (Stefan Assmann) [1630760] - [netdrv] i40e: move common Rx functions to i40e_txrx_common.h (Stefan Assmann) [1630760] - [netdrv] i40e: refactor Rx path for re-use (Stefan Assmann) [1630760] - [netdrv] i40e: added queue pair disable/enable functions (Stefan Assmann) [1630760] - [netdrv] i40e: Prevent deleting MAC address from VF when set by PF (Stefan Assmann) [1630760] - [netdrv] i40e: hold the rtnl lock on clearing interrupt scheme (Stefan Assmann) [1630760] - [netdrv] i40e: Check and correct speed values for link on open (Stefan Assmann) [1630760] - [netdrv] i40e: report correct statistics when XDP is enabled (Stefan Assmann) [1630760] - [netdrv] i40e: static analysis report from community (Stefan Assmann) [1630760] - [netdrv] i40e: use correct length for strncpy (Stefan Assmann) [1630760] - [netdrv] i40evf: Change a VF mac without reloading the VF driver (Stefan Assmann) [1630760] - [netdrv] i40e: move ethtool stats boiler plate code to i40e_ethtool_stats.h (Stefan Assmann) [1630760] - [netdrv] i40e: convert queue stats to i40e_stats array (Stefan Assmann) [1630760] - [netdrv] i40e: fix condition of WARN_ONCE for stat strings (Stefan Assmann) [1630760] - [netdrv] i40e_txrx: mark expected switch fall-through (Stefan Assmann) [1630760] - [netdrv] i40e_main: mark expected switch fall-through (Stefan Assmann) [1630760] - [netdrv] i40e: fix i40e_add_queue_stats data pointer update (Stefan Assmann) [1630760] - [netdrv] i40e: Add AQ command for rearrange NVM structure (Stefan Assmann) [1630760] - [netdrv] i40e: Add additional return code to i40e_asq_send_command (Stefan Assmann) [1630760] - [netdrv] i40e: fix warning about shadowed ring parameter (Stefan Assmann) [1630760] - [netdrv] i40e: remove unnecessary i variable causing -Wshadow warning (Stefan Assmann) [1630760] - [netdrv] i40e: convert priority flow control stats to use helpers (Stefan Assmann) [1630760] - [netdrv] i40e: convert VEB TC stats to use an i40e_stats array (Stefan Assmann) [1630760] - [netdrv] i40e: Set fec_config when forcing link state (Stefan Assmann) [1630760] - [netdrv] i40e: add helper to copy statistic values into ethtool buffer (Stefan Assmann) [1630760] - [netdrv] i40e: add helper function for copying strings from stat arrays (Stefan Assmann) [1630760] - [netdrv] i40e: Remove duplicated prepare call in i40e_shutdown (Stefan Assmann) [1630760] - [netdrv] cls_flower: fix error values for commands not supported by drivers (Stefan Assmann) [1630760] - [netdrv] net: drivers/net: Convert random_ether_addr to eth_random_addr (Stefan Assmann) [1630760] - [net] ipv4: don't let PMTU updates increase route MTU (Sabrina Dubroca) [1638845] - [net] ipv4: update fnhe_pmtu when first hop's MTU changes (Sabrina Dubroca) [1638845] - [net] xsk: add a simple buffer reuse queue (Ivan Vecera) [1634774] - [net] samples/bpf: add -c/--copy -z/--zero-copy flags to xdpsock (Ivan Vecera) [1634774] - [net] add napi_if_scheduled_mark_missed (Ivan Vecera) [1634774] - [net] xsk: expose xdp_umem_get_(data, dma) to drivers (Ivan Vecera) [1634774] - [net] xdp: export xdp_rxq_info_unreg_mem_model (Ivan Vecera) [1634774] - [net] xdp: implement convert_to_xdp_frame for MEM_TYPE_ZERO_COPY (Ivan Vecera) [1634774] - [net] xdp: Helper function to clear kernel pointers in xdp_frame (Ivan Vecera) [1634774] - [net] xsk: i40e: get rid of useless struct xdp_umem_props (Ivan Vecera) [1631809] - [net] xdp: fix uninitialized 'err' variable (Ivan Vecera) [1631805] - [tools] headers uapi: Update tools's copy of linux/if_link.h (Ivan Vecera) [1631805] - [tools] selftests/bpf: add test for multiple programs (Ivan Vecera) [1631805] - [net] netdevsim: add support for simultaneous driver and hw XDP (Ivan Vecera) [1631805] - [net] xdp: support simultaneous driver and hw XDP attachment (Ivan Vecera) [1631805] - [net] xdp: factor out common program/flags handling from drivers (Ivan Vecera) [1631805] - [net] xdp: don't make drivers report attachment mode (Ivan Vecera) [1631805] - [net] xdp: add per mode attributes for attached programs (Ivan Vecera) [1631805] - [net] sched: cls_flower: set correct offload data in fl_reoffload (Ivan Vecera) [1631522] - [net] sched: call reoffload op on block callback reg (Ivan Vecera) [1631522] - [net] sched: cls_bpf: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_u32: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_matchall: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_flower: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: add tcf_proto_op to offload a rule (Ivan Vecera) [1631522] - [net] sched: pass extack pointer to block binds and cb registration (Ivan Vecera) [1631522]- [rpmspec] kernel.spec: s390/zfcpdump: add -zfcpdump kernel variant (Philipp Rudo) [1567291] - [kernel] rh_taint: correct loaddable module support dependencies (Philipp Rudo) [1567291] - [powerpc] KVM: PPC: Book3S HV: Avoid crash from THP collapse during radix page fault (David Gibson) [1639555] - [irqchip] irqchip/gic-v3-its: Allow use of LPI tables in reserved memory (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Register LPI tables with EFI config table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Check that all RDs have the same property table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Use pre-programmed redistributor tables with kdump kernels (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Allow use of pre-programmed LPI tables (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Keep track of property table's PA and VA (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Move pending table allocation to init time (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Split property table clearing from allocation (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Simplify LPI_PENDBASE_SZ usage (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Change initialization ordering for LPIs (Jeremy Linton) [1625746] - [firmware] efi: add API to reserve memory persistently across kexec reboot (Jeremy Linton) [1625746] - [firmware] efi/arm: libstub: add a root memreserve config table (Jeremy Linton) [1625746] - [firmware] efi: honour memory reservations passed via a linux specific config table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Cap lpi_id_bits to reduce memory footprint (Jeremy Linton) [1625746] - [infiniband] RDMA/bnxt_re: Fix system crash during RDMA resource initialization (Selvin Xavier) [1637122] - [infiniband] RDMA/bnxt_re: Fix couple of memory leaks that could lead to IOMMU call traces (Selvin Xavier) [1637120] - [arm64] arm64: KVM: Sanitize PSTATE.M when being set from userspace (Wei Huang) [1635721] {CVE-2018-18021} - [arm64] arm64: KVM: Tighten guest core register access from userspace (Wei Huang) [1635721] {CVE-2018-18021} - [fs] fs/cifs: require sha512 (Leif Sahlberg) [1610619] - [fs] smb3: simplify code by removing CONFIG_CIFS_SMB311 (Leif Sahlberg) [1610619] - [fs] smb3: add support for statfs for smb3.1.1 posix extensions (Leif Sahlberg) [1610619] - [fs] cifs: allow disabling insecure dialects in the config (Leif Sahlberg) [1610619] - [fs] smb3: if server does not support posix do not allow posix mount option (Leif Sahlberg) [1610619]- [security] cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias() (Joe Lawrence) [1638647] - [powerpc] powerpc/cacheinfo: Report the correct shared_cpu_map on big-cores (Steve Best) [1639265] - [powerpc] powerpc: Use cpu_smallcore_sibling_mask at SMT level on bigcores (Steve Best) [1639265] - [powerpc] powerpc: Detect the presence of big-cores via ibm, thread-groups (Steve Best) [1639265] - [x86] mark amd rome as unsupported (David Arcari) [1638506] - [netdrv] qed: Add support for virtual link (Chad Dupuis) [1638013] - [netdrv] qede: Add driver support for 20G link speed (Chad Dupuis) [1638013] - [netdrv] qed: Add driver support for 20G link speed (Chad Dupuis) [1638013] - [netdrv] qed: Fix shmem structure inconsistency between driver and the mfw (Chad Dupuis) [1638013] - [netdrv] qed: Add missing device config for RoCE EDPM in UFP mode (Chad Dupuis) [1638013] - [netdrv] qed: Add a flag which indicates if offload TC is set (Chad Dupuis) [1638013] - [netdrv] qed: Do not add VLAN 0 tag to untagged frames in multi-function mode (Chad Dupuis) [1638013] - [netdrv] qed: Fix populating the invalid stag value in multi function mode (Chad Dupuis) [1638013] - [tools] perf python: Fix pyrf_evlist__read_on_cpu() interface (Jiri Olsa) [1628229] - [tools] perf mmap: Store real cpu number in 'struct perf_mmap' (Jiri Olsa) [1628229]- [fs] gfs2: Fix iomap buffered write support for journaled files (2) (Andreas Grunbacher) [1637944] - [xen] xen/manage: don't complain about an empty value in control/sysrq node (Vitaly Kuznetsov) [1623344] - [drm] drm/amdgpu: Silence harmless WARN_ON() during MST disable (Lyude Paul) [1638137] - [netdrv] net: macb: Fix regression breaking non-MDIO fixed-link PHYs (Petr Oros) [1638259] - [netdrv] net: macb: do not disable MDIO bus at open/close time (Petr Oros) [1638259] - [fs] proc: restrict kernel stack dumps to root (Waiman Long) [1638044] - [base] firmware: Always initialize the fw_priv list object (Waiman Long) [1638044] - [base] firmware: Fix security issue with request_firmware_into_buf() (Waiman Long) [1638044] - [fs] sysfs: Do not return POSIX ACL xattrs via listxattr (Waiman Long) [1638044] - [fs] vfs: don't evict uninitialized inode (Waiman Long) [1638044] - [fs] new primitive: discard_new_inode() (Waiman Long) [1638044] - [arm64] arm64: jump_label.h: use asm_volatile_goto macro instead of "asm goto" (Waiman Long) [1638044] - [kernel] sched/topology: Set correct NUMA topology type (Waiman Long) [1638044] - [kernel] bpf: 32-bit RSH verification must truncate input before the ALU op (Waiman Long) [1638044] - [mm] mm: madvise(MADV_DODUMP): allow hugetlbfs pages (Waiman Long) [1638044] - [x86] x86/pti: Fix section mismatch warning/error (Waiman Long) [1638044] - [kernel] uaccess: Fix is_source param for check_copy_size() in copy_to_iter_mcsafe() (Waiman Long) [1638044] - [x86] x86/mm: Expand static page table for fixmap space (Waiman Long) [1638044] - [fs] fs/lock: skip lock owner pid translation in case we are in init_pid_ns (Waiman Long) [1638044] - [x86] perf/x86/intel/lbr: Fix incomplete LBR call stack (Waiman Long) [1638044] - [kernel] perf/hw_breakpoint: Split attribute parse and commit (Waiman Long) [1638044] - [kernel] bitfield: fix *_encode_bits() (Waiman Long) [1638044] - [kernel] posix-timers: Sanitize overrun handling (Waiman Long) [1638044] - [kernel] posix-timers: Make forward callback return s64 (Waiman Long) [1638044] - [kernel] alarmtimer: Prevent overflow for relative nanosleep (Waiman Long) [1638044] - [x86] x86/entry/64: Add two more instruction suffixes (Waiman Long) [1638044] - [powerpc] powerpc/kdump: Handle crashkernel memory reservation failure (Waiman Long) [1638044] - [s390] s390/mm: correct allocate_pgste proc_handler callback (Waiman Long) [1638044] - [x86] x86/numa_emulation: Fix emulated-to-physical node mapping (Waiman Long) [1638044] - [x86] x86/paravirt: Fix some warning messages (Waiman Long) [1638044] - [kernel] sched/fair: Fix vruntime_normalized() for remote non-migration wakeup (Waiman Long) [1638044] - [kernel] bpf/verifier: disallow pointer subtraction (Waiman Long) [1638044] - [mm] mm: shmem.c: Correctly annotate new inodes for lockdep (Waiman Long) [1638044] - [kernel] sched/core: Use smp_mb() in wake_woken_function() (Waiman Long) [1638044] - [kernel] bpf: fix rcu annotations in compute_effective_progs() (Waiman Long) [1638044] - [x86] x86/mm/pti: Add an overflow check to pti_clone_pmds() (Waiman Long) [1638044] - [x86] x86/pti: Check the return value of pti_user_pagetable_walk_pmd() (Waiman Long) [1638044] - [x86] x86/pti: Check the return value of pti_user_pagetable_walk_p4d() (Waiman Long) [1638044] - [powerpc] powerpc/pseries/mm: call H_BLOCK_REMOVE (Steve Best) [1637116] - [powerpc] powerpc/pseries/mm: factorize PTE slot computation (Steve Best) [1637116] - [powerpc] powerpc/pseries/mm: Introducing FW_FEATURE_BLOCK_REMOVE (Steve Best) [1637116] - [watchdog] watchdog/hpwdt: Disable PreTimeout when Timeout is smaller (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Update Driver Documentation (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Update version number (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Module parameter alias (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Display module parameters (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Claim NMI from iLO (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Initialize pretimeout from module parameter (Joseph Szczypek) [1632945]- [mm] mm/sparse: delete old sparse_init and enable new one (Baoquan He) [1625105] - [mm] mm/sparse: add new sparse_init_nid() and sparse_init() (Baoquan He) [1625105] - [mm] mm/sparse: move buffer init/fini to the common place (Baoquan He) [1625105] - [mm] mm/sparse: use the new sparse buffer functions in non-vmemmap (Baoquan He) [1625105] - [mm] mm/sparse: abstract sparse buffer allocations (Baoquan He) [1625105] - [mm] mm/sparse: optimize memmap allocation during sparse_init() (Baoquan He) [1625105] - [mm] mm/sparse.c: add a new parameter 'data_unit_size' for alloc_usemap_and_memmap (Baoquan He) [1625105] - [mm] mm/sparsemem.c: defer the ms->section_mem_map clearing (Baoquan He) [1625105] - [mm] mm/sparse.c: add a static variable nr_present_sections (Baoquan He) [1625105] - [mm] mm/sparse.c: make sparse_init_one_section void and remove check (Baoquan He) [1625105] - [target] scsi: target: iscsi: cxgbit: fix csk leak (Arjun Vynipadath) [1628864] - [target] scsi: target: iscsi: cxgbit: use pr_debug() instead of pr_info() (Arjun Vynipadath) [1628864] - [infiniband] iw_cxgb4: only allow 1 flush on user qps (Arjun Vynipadath) [1628865] - [infiniband] iw_cxgb4: pass window scale in flowc work request (Arjun Vynipadath) [1628865] - [infiniband] iw_cxgb4: remove duplicate memcpy() in c4iw_create_listen() (Arjun Vynipadath) [1628865] - [netdrv] mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge (Petr Oros) [1638268] - [tty] tty: vt_ioctl: fix potential Spectre v1 (Prarit Bhargava) [1637123] - [powerpc] powerpc/time: Add set_state_oneshot_stopped decrementer callback (Steve Best) [1638287] - [powerpc] powerpc/time: Use clockevents_register_device(), fixing an issue with large decrementer (Steve Best) [1638287] - [hwmon] hwmon: (nct6775) Fix potential Spectre v1 (Dean Nelson) [1637464] - [vfio] vfio-pci: Disable binding to PFs with SR-IOV enabled (Alex Williamson) [1637871] - [netdrv] net: hns3: fix page_offset overflow when CONFIG_ARM64_64K_PAGES (Petr Oros) [1638385] - [netdrv] net: hns: fix skb->truesize underestimation (Petr Oros) [1638385] - [netdrv] net: hns: fix length and page_offset overflow when CONFIG_ARM64_64K_PAGES (Petr Oros) [1638385] - [netdrv] net: hns3: Fix get_vector ops in hclgevf_main module (Petr Oros) [1638385] - [netdrv] net: hns3: Fix warning bug when doing lp selftest (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for mac pause not disable in pfc mode (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for mailbox message truncated problem (Petr Oros) [1638385] - [netdrv] net: hns3: Fix return value error in hns3_reset_notify_down_enet (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for reset_level default assignment probelm (Petr Oros) [1638385] - [netdrv] net: hns3: Reset net device with rtnl_lock (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for phy link issue when using marvell phy driver (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for command format parsing error in hclge_is_all_function_id_zero (Petr Oros) [1638385] - [net] xprtrdma: Fix disconnect regression (Don Dutile) [1635418] - [infiniband] RDMA/uverbs: Fix validity check for modify QP (Don Dutile) [1635418] - [infiniband] IB/srp: Avoid that sg_reset -d $srp_device triggers an infinite loop (Don Dutile) [1635418] - [infiniband] ucma: fix a use-after-free in ucma_resolve_ip() (Don Dutile) [1635418] - [infiniband] RDMA/uverbs: Atomically flush and mark closed the comp event queue (Don Dutile) [1635418] - [infiniband] RDMA/mlx4: Ensure that maximal send/receive SGE less than supported by HW (Don Dutile) [1635418 1623100] - [infiniband] RDMA/cma: Protect cma dev list with lock (Don Dutile) [1635418] - [infiniband] IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler (Don Dutile) [1635418] - [infiniband] RDMA/ucma: check fd type in ucma_migrate_id() (Don Dutile) [1635418] - [infiniband] RDMA/rxe: Set wqe->status correctly if an unexpected response is received (Don Dutile) [1635418] - [infiniband] IB/IPoIB: Set ah valid flag in multicast send flow (Don Dutile) [1635418] - [infiniband] RDMA/core: Avoid holding lock while initializing fields on stack (Don Dutile) [1635418] - [infiniband] IB/rxe: Drop QP0 silently (Don Dutile) [1635418] - [infiniband] RDMA/umem: Don't hold mmap_sem for too long (Don Dutile) [1635418] - [infiniband] IB/srpt: Fix srpt_cm_req_recv() error path (2/2) (Don Dutile) [1635418] - [infiniband] IB/srpt: Fix srpt_cm_req_recv() error path (1/2) (Don Dutile) [1635418] - [infiniband] RDMA: Fix storage of PortInfo CapabilityMask in the kernel (Don Dutile) [1635418] - [infiniband] IB/core: type promotion bug in rdma_rw_init_one_mr() (Don Dutile) [1635418] - [infiniband] RDMA/i40w: Hold read semaphore while looking after VMA (Don Dutile) [1635418] - [infiniband] vmw_pvrdma: Release netdev when vmxnet3 module is removed (Don Dutile) [1635418] - [infiniband] ib_srpt: Fix a use-after-free in __srpt_close_all_ch() (Don Dutile) [1635418] - [infiniband] ib_srpt: Fix a use-after-free in srpt_close_ch() (Don Dutile) [1635418] - [infiniband] IB/srpt: Support HCAs with more than two ports (Don Dutile) [1635418] - [infiniband] IB/rxe: don't clear the tx queue on every transfer (Don Dutile) [1635418] - [infiniband] IB/core: add max_send_sge and max_recv_sge attributes (Don Dutile) [1635418 1623100] - [infiniband] IB/rxe: support for 802.1q VLAN on the listener (Don Dutile) [1635418] - [netdrv] cxgb4: impose mandatory VLAN usage when non-zero TAG ID (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: when max_tx_rate is 0 disable tx rate limiting (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: do not return DUPLEX_UNKNOWN when link is down (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: expose stats fetched from firmware via debugfs (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: remove stats fetched from firmware (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: specify IQTYPE in fw_iq_cmd (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Fix the condition to check if the card is T5 (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Support ethtool private flags (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Add support for FW_ETH_TX_PKT_VM_WR (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Add flag tc_flower_initialized (Arjun Vynipadath) [1628863] - [s390] s390/zcrypt: remove VLA usage from the AP bus (Philipp Rudo) [1637865] - [s390] s390/ap_bus: replace PTR_RET with PTR_ERR_OR_ZERO (Philipp Rudo) [1637865] - [s390] s390/crypto: fix gcc 8 stringop-truncation warning (Philipp Rudo) [1637865] - [s390] s390/zcrypt: code beautify (Philipp Rudo) [1637865] - [s390] s390/zcrypt: add copy_from_user length plausibility checks (Philipp Rudo) [1637865] - [s390] s390/zcrypt: Show load of cards and queues in sysfs (Philipp Rudo) [1637865] - [s390] s390/kvm: fix deadlock when killed by oom (Philipp Rudo) [1638264] - [fs] xfs: fix data corruption w/ unaligned reflink ranges (Brian Foster) [1633476] - [fs] xfs: fix data corruption w/ unaligned dedupe ranges (Brian Foster) [1633476] - [fs] xfs: update ctime and remove suid before cloning files (Brian Foster) [1633476] - [fs] xfs: zero posteof blocks when cloning above eof (Brian Foster) [1633476] - [fs] xfs: refactor clonerange preparation into a separate helper (Brian Foster) [1633476] - [netdrv] nfp: avoid buffer leak when FW communication fails (Petr Oros) [1638233] - [netdrv] nfp: don't fail probe on pci_sriov_set_totalvfs() errors (Petr Oros) [1638233] - [netdrv] nfp: wait for posted reconfigs when disabling the device (Petr Oros) [1638233] - [netdrv] liquidio: fix hang when re-binding VF host drv after running DPDK VF driver (Petr Oros) [1638224] - [netdrv] r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices (Petr Oros) [1638210] - [netdrv] r8169: add support for NCube 8168 network card (Petr Oros) [1638210] - [netdrv] r8169: don't use MSI-X on RTL8106e (Petr Oros) [1638210] - [netdrv] r8169: don't use MSI-X on RTL8168g (Petr Oros) [1638210] - [powerpc] KVM: PPC: Book3S HV: Fix guest r11 corruption with POWER9 TM workarounds (David Gibson) [1637766] - [drm] drm/amdgpu: Suppress keypresses from ACPI_VIDEO events (Lyude Paul) [1631918] - [infiniband] IB/hfi1: Remove race conditions in user_sdma send path (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Eliminate races in the SDMA send error path (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix destroy_qp hang after a link down (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix context recovery when PBC has an UnsupportedVL (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Invalid user input can result in crash (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix SL array bounds check (Alex Estrin) [1637068] - [powerpc] powerpc/fadump: re-register firmware-assisted dump if already registered (Steve Best) [1637383] - [powerpc] powerpc/fadump: cleanup crash memory ranges support (Steve Best) [1637383] - [powerpc] powerpc/fadump: merge adjacent memory ranges to reduce PT_LOAD segements (Steve Best) [1637383] - [powerpc] powerpc/fadump: handle crash memory ranges array index overflow (Steve Best) [1637383] - [scsi] scsi: qedi: Initialize the stats mutex lock (Chad Dupuis) [1637245] - [fs] gfs2: Fix iomap buffered write support for journaled files (Andreas Grunbacher) [1637944] - [fs] gfs2: eliminate update_rgrp_lvb_unlinked (Andreas Grunbacher) [1637944] - [fs] gfs2: Fix gfs2_testbit to use clone bitmaps (Andreas Grunbacher) [1637944] - [fs] gfs2: Get rid of gfs2_ea_strlen (Andreas Grunbacher) [1637944] - [fs] GFS2: rgrp free blocks used incorrectly (Andreas Grunbacher) [1637944] - [fs] gfs2: remove redundant variable 'moved' (Andreas Grunbacher) [1637944] - [fs] gfs2: use iomap_readpage for blocksize == PAGE_SIZE (Andreas Grunbacher) [1637944] - [fs] gfs2: Use iomap for stuffed direct I/O reads (Andreas Grunbacher) [1637944] - [fs] gfs2: fallocate_chunk: Always initialize struct iomap (Andreas Grunbacher) [1637944] - [fs] gfs2: Remove gfs2_write_(begin,end) (Andreas Grunbacher) [1637944] - [fs] gfs2: iomap direct I/O support (Andreas Grunbacher) [1637944] - [fs] gfs2: gfs2_extent_length cleanup (Andreas Grunbacher) [1637944] - [fs] gfs2: iomap buffered write support (Andreas Grunbacher) [1637944] - [fs] gfs2: Further iomap cleanups (Andreas Grunbacher) [1637944] - [fs] fs: gfs2: Adding new return type vm_fault_t (Andreas Grunbacher) [1637944] - [fs] gfs2: using posix_acl_xattr_size instead of posix_acl_to_xattr (Andreas Grunbacher) [1637944] - [fs] gfs2: Don't reject a supposedly full bitmap if we have blocks reserved (Andreas Grunbacher) [1637944] - [fs] gfs2: Eliminate redundant ip->i_rgd (Andreas Grunbacher) [1637944] - [fs] gfs2: Stop messing with ip->i_rgd in the rlist code (Andreas Grunbacher) [1637944] - [fs] gfs2: call ktime_get_coarse_real_ts64() directly (Andreas Grunbacher) [1637944] - [fs] gfs2: Minor clarification to __gfs2_punch_hole (Andreas Grunbacher) [1637944] - [fs] gfs2: Don't withdraw under a spin lock (Andreas Grunbacher) [1637944] - [fs] gfs2: eliminate rs_inum and reduce the size of gfs2 inodes (Andreas Grunbacher) [1637944] - [drm] drm/nouveau/drm/nouveau: Grab runtime PM ref in nv50_mstc_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/disp: fix DP disable race (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Don't forget to cancel hpd_work on suspend/unload (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Prevent handling ACPI HPD events too early (Lyude Paul) [1628749] - [drm] drm/nouveau: Reset MST branching unit before enabling (Lyude Paul) [1628749] - [drm] drm/nouveau: Only write DP_MSTM_CTRL when needed (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_enable() call in drm_load() (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_disable() call in switcheroo_set_state() (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_enable() call in switcheroo_set_state() (Lyude Paul) [1628749] - [drm] drm/nouveau: Fix deadlocks in nouveau_connector_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Use pm_runtime_get_noresume() in connector_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Fix deadlock with fb_helper with async RPM requests (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement (Lyude Paul) [1628749] - [md] dm table: require that request-based DM be layered on blk-mq devices (Mike Snitzer) [1637682] - [md] dm: rename DM_TYPE_MQ_REQUEST_BASED to DM_TYPE_REQUEST_BASED (Mike Snitzer) [1637682] - [md] dm: remove legacy request-based IO path (Mike Snitzer) [1637682] - [md] dm linear: fix linear_end_io conditional definition (Mike Snitzer) [1637682] - [md] dm linear: eliminate linear_end_io call if CONFIG_DM_ZONED disabled (Mike Snitzer) [1637682] - [md] dm: fix report zone remapping to account for partition offset (Mike Snitzer) [1637682] - [md] dm cache: destroy migration_cache if cache target registration failed (Mike Snitzer) [1637682] - [md] dm cache: fix resize crash if user doesn't reload cache table (Mike Snitzer) [1637682] - [md] dm cache metadata: ignore hints array being too small during resize (Mike Snitzer) [1637682] - [md] dm raid: remove bogus const from decipher_sync_action() return type (Mike Snitzer) [1637682] - [md] dm mpath: fix attached_handler_name leak and dangling hw_handler_name pointer (Mike Snitzer) [1637682] - [md] dm thin metadata: fix __udivdi3 undefined on 32-bit (Mike Snitzer) [1637682] - [md] dm thin metadata: try to avoid ever aborting transactions (Mike Snitzer) [1637682] - [md] dm raid: bump target version, update comments and documentation (Mike Snitzer) [1637682] - [md] dm raid: fix RAID leg rebuild errors (Mike Snitzer) [1637682] - [md] dm raid: fix rebuild of specific devices by updating superblock (Mike Snitzer) [1637682] - [md] dm raid: fix stripe adding reshape deadlock (Mike Snitzer) [1637682] - [md] dm raid: fix reshape race on small devices (Mike Snitzer) [1637682] - [md] dm: disable CRYPTO_TFM_REQ_MAY_SLEEP to fix a GFP_KERNEL recursion deadlock (Mike Snitzer) [1637682] - [md] dm verity: fix crash on bufio buffer that was allocated with vmalloc (Mike Snitzer) [1637682] - [md] dm writecache: fix a crash due to reading past end of dirty_bitmap (Mike Snitzer) [1637682] - [md] dm crypt: don't decrease device limits (Mike Snitzer) [1637682] - [md] dm cache metadata: set dirty on all cache blocks after a crash (Mike Snitzer) [1637682] - [md] dm snapshot: remove stale FIXME in snapshot_map() (Mike Snitzer) [1637682] - [md] dm snapshot: improve performance by switching out_of_order_list to rbtree (Mike Snitzer) [1637682] - [md] dm kcopyd: avoid softlockup in run_complete_job (Mike Snitzer) [1637682] - [md] dm cache metadata: save in-core policy_hint_size to on-disk superblock (Mike Snitzer) [1637682] - [md] dm thin: stop no_space_timeout worker when switching to write-mode (Mike Snitzer) [1637682] - [md] dm kcopyd: return void from dm_kcopyd_copy() (Mike Snitzer) [1637682] - [md] dm thin: include metadata_low_watermark threshold in pool status (Mike Snitzer) [1637682] - [md] dm writecache: report start_sector in status line (Mike Snitzer) [1637682] - [md] dm crypt: convert essiv from ahash to shash (Mike Snitzer) [1637682] - [md] dm crypt: use wake_up_process() instead of a wait queue (Mike Snitzer) [1637682] - [md] dm integrity: recalculate checksums on creation (Mike Snitzer) [1637682] - [md] dm integrity: flush journal on suspend when using separate metadata device (Mike Snitzer) [1637682] - [md] dm integrity: use version 2 for separate metadata (Mike Snitzer) [1637682] - [md] dm integrity: allow separate metadata device (Mike Snitzer) [1637682] - [md] dm integrity: add ic->start in get_data_sector() (Mike Snitzer) [1637682] - [md] dm integrity: report provided data sectors in the status (Mike Snitzer) [1637682] - [md] dm integrity: implement fair range locks (Mike Snitzer) [1637682] - [md] dm integrity: decouple common code in dm_integrity_map_continue() (Mike Snitzer) [1637682] - [md] dm integrity: change 'suspending' variable from bool to int (Mike Snitzer) [1637682] - [md] dm delay: add flush as a third class of IO (Mike Snitzer) [1637682] - [md] dm delay: refactor repetitive code (Mike Snitzer) [1637682] - [md] dm cache: only allow a single io_mode cache feature to be requested (Mike Snitzer) [1637682] - [md] dm thin: update stale "Status" Documentation (Mike Snitzer) [1637682] - [pci] PCI: Reprogram bridge prefetch registers on resume (Myron Stowe) [1637155] - [input] Input: xen-kbdfront - fix multi-touch XenStore node's locations (Benjamin Tissoires) [1637027] - [input] Input: elantech - enable middle button of touchpad on ThinkPad P72 (Benjamin Tissoires) [1637027] - [hid] HID: i2c-hid: Use devm to allocate i2c_hid struct (Benjamin Tissoires) [1637027] - [hid] HID: input: fix leaking custom input node name (Benjamin Tissoires) [1637027] - [hid] HID: core: fix grouping by application (Benjamin Tissoires) [1637027] - [hid] HID: multitouch: fix Elan panels with 2 input modes declaration (Benjamin Tissoires) [1637027] - [input] Input: do not use WARN() in input_alloc_absinfo() (Benjamin Tissoires) [1637027] - [s390] s390: vfio-ap: setup APCB mask using KVM dedicated function (Cornelia Huck) [1508118] - [s390] KVM: s390: Tracing APCB changes (Cornelia Huck) [1508118] - [s390] KVM: s390: fix locking for crypto setting error path (Cornelia Huck) [1508118] - [s390] s390: doc: detailed specifications for AP virtualization (Cornelia Huck) [1508118] - [s390] KVM: s390: CPU model support for AP virtualization (Cornelia Huck) [1508118] - [s390] KVM: s390: device attrs to enable/disable AP interpretation (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-1 CRYCB on host FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow CRYCB FORMAT-0 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow CRYCB FORMAT-1 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Allow CRYCB FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Make use of CRYCB FORMAT2 clear (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Do the CRYCB validation first (Cornelia Huck) [1508118] - [s390] KVM: s390: Clear Crypto Control Block when using vSIE (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: zeroize the AP queues (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement mediated device open callback (Cornelia Huck) [1508118] - [s390] KVM: s390: interface to clear CRYCB masks (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interface to view matrix mdev matrix (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure control domains (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure domains (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure adapters (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: register matrix device with VFIO mdev framework (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: base implementation of VFIO AP device driver (Cornelia Huck) [1508118] - [s390] KVM: s390: refactor crypto initialization (Cornelia Huck) [1508118] - [s390] KVM: s390: introduce and use KVM_REQ_VSIE_RESTART (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: simulate VCPU SIE entry/exit (Cornelia Huck) [1508118] - [s390] s390/zcrypt: hex string mask improvements for apmask and aqmask (Cornelia Huck) [1508118] - [s390] s390/zcrypt: AP bus support for alternate driver(s) (Cornelia Huck) [1508118] - [s390] s390/zcrypt: switch return type to bool for ap_instructions_available() (Cornelia Huck) [1508118] - [s390] s390/zcrypt: fix ap_instructions_available() returncodes (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Integrate ap_asm.h into include/asm/ap.h (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Review inline assembler constraints (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Add ZAPQ inline function (Cornelia Huck) [1508118] - [net] ipv6: use rt6_info members when dst is set in rt6_fill_node (Xin Long) [1625864 1625803 1625117]- [netdrv] amd-xgbe: use dma_mapping_error to check map errors (David Arcari) [1637666] - [crypto] crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe() (Waiman Long) [1629547] - [powerpc] powerpc: fix csum_ipv6_magic() on little endian platforms (Diego Domingos) [1625579] - [net] smc: generic netlink family should be __ro_after_init (Philipp Rudo) [1632435] - [net] net/smc: fix sizeof to int comparison (Philipp Rudo) [1632435] - [net] net/smc: no urgent data check for listen sockets (Philipp Rudo) [1632435] - [net] net/smc: enable fallback for connection abort in state INIT (Philipp Rudo) [1632435] - [net] net/smc: remove duplicate mutex_unlock (Philipp Rudo) [1632435] - [net] net/smc: fix non-blocking connect problem (Philipp Rudo) [1632435] - [net] net/smc: send response to test link signal (Philipp Rudo) [1632435] - [net] net: simplify sock_poll_wait (Philipp Rudo) [1632435] - [net] net/smc: Simplify ib_post_(send|recv|srq_recv)() calls (Philipp Rudo) [1632435] - [net] net/smc: Remove a WARN_ON() statement (Philipp Rudo) [1632435] - [powerpc] KVM: PPC: Book3S HV: Add NO_HASH flag to GET_SMMU_INFO ioctl result (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add a VM capability to enable nested virtualization (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add nested shadow page tables to debugfs (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Allow HV module to load without hypervisor mode (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle differing endianness for H_ENTER_NESTED (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Sanitise hv_regs on nested guest entry (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add one-reg interface to virtual PTCR register (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Don't access HFSCR, LPIDR or LPCR when running nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Invalidate TLB when nested vcpu moves physical cpu (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use hypercalls for TLB invalidation when nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Implement H_TLB_INVALIDATE hcall (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Introduce rmap to track nested guest mappings (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle page fault for a nested guest (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle hypercalls correctly when nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use XICS hypercalls when running as a nested hypervisor (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Nested guest entry via hypercall (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Framework and hcall stubs for nested virtualization (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use kvmppc_unmap_pte() in kvm_unmap_radix() (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Refactor radix page fault handler (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Make kvmppc_mmu_radix_xlate process/partition table agnostic (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Clear partition table entry on vm teardown (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Use ccr field in pt_regs struct embedded in vcpu struct (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add a debugfs file to dump radix mappings (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle hypervisor instruction faults better (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Streamlined guest entry/exit path on P9 for radix guests (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Call kvmppc_handle_exit_hv() with vcore unlocked (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S: Rework TM save/restore code and make it C-callable (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Simplify real-mode interrupt handling (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Extract PMU save/restore operations as C-callable functions (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Move interrupt delivery on guest entry to C code (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Remove left-over code in XICS-on-XIVE emulation (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S: Simplify external interrupt handling (Suraj Jitindar Singh) [1505999] - [powerpc] powerpc: Turn off CPU_FTR_P9_TM_HV_ASSIST in non-hypervisor mode (Suraj Jitindar Singh) [1505999] - [powerpc] powerpc/64s: Remove POWER9 DD1 support (Suraj Jitindar Singh) [1505999] - [netdrv] net/mlx5: Add Fast teardown support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Set vlan masks for all offloaded TC rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: E-Switch, Fix out of bound access when setting vport rate (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Avoid unbounded peer devices when unpairing TC hairpin rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Cache the system image guid (Alaa Hleihel) [1636554] - [netdrv] mlx5: remove ndo_poll_controller (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Check for SQ and not RQ state when modifying hairpin SQ (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix read from coherent memory (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: don't set CHECKSUM_COMPLETE on SCTP packets (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Set ECN for received packets using CQE indication (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix possible deadlock from lockdep when adding fte to fg (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Check for error in mlx5_attach_interface (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Consider PCI domain in search for next dev (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix not releasing read lock when adding flow rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: E-Switch, Fix memory leak when creating switchdev mode FDB tables (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use u16 for Work Queue buffer strides offset (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use u16 for Work Queue buffer fragment size (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix debugfs cleanup in the device init/remove flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix use-after-free in self-healing flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Make function mlx5i_grp_sw_update_stats() static (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Use priv stats in completion rx flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Add ndo stats support for IPoIB child devices (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Add ndo stats support for IPoIB netdevices (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Initialize max_opened_tc in mlx5i_init flow (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: Fix leaking stack memory to userspace (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Reorganize the makefile (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: clock.c depends on CONFIG_PTP_1588_CLOCK (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: vxlan.c depends on CONFIG_VXLAN (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Move flow steering declarations into en/fs.h (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add CONFIG_MLX5_EN_ARFS for accelerated flow steering support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add CONFIG_MLX5_EN_RXNFC for ethtool rx nfc (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Ethtool steering, move ethtool callbacks (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Reduce command polling interval (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use max_num_eqs for calculation of required MSIX vectors (Alaa Hleihel) [1636554] - [netdrv] RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq (Alaa Hleihel) [1636554] - [netdrv] overflow.h: Add arithmetic shift helper (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Fix uninitialized variable (Alaa Hleihel) [1636554] - [netdrv] RDMA: Fix return code check in rdma_set_cq_moderation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, move vxlan logic to core driver (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, add sync lock for add/del vxlan port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, return values for add/del port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, rename from mlx5e to mlx5 (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, rename struct mlx5e_vxlan to mlx5_vxlan_port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, move netdev only logic to en_main.c (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, add direct delete function (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, cleanup an unused member in vxlan work (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, replace ports radix-tree with hash table (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, check maximum number of UDP ports (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, reflect 4789 UDP port default addition to software database (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Move XDP related code into new XDP files (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Restrict the combination of large MTU and XDP (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Gather all XDP pre-requisite checks in a single function (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: avoid excessive warning msgs when creating VFs on 2nd port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Use PARTIAL_GSO for UDP segmentation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Remove redundant WARN when we cannot find neigh entry (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix tristate and description for MLX5 module (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Better return types for CQE API (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use ERR_CAST() instead of coding it (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Add missing SET_DRIVER_VERSION command translation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: fix uaccess beyond "count" in debugfs read/write handlers (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: Honor cnt_set_id_valid flag instead of set_id (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: Fix GRE flow specification (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: Remove set-but-not-used variables (Alaa Hleihel) [1636554] - [infiniband] RDMA/mlx5: Don't leak UARs in case of free fails (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Update NIC HW stats on demand only (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add counter for total num of NOP operations (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add counter for MPWQE filler strides (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add channel events counter (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add a counter for congested UMRs (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add NAPI statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add XDP_TX completions statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add TX completions statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: RX, Use existing WQ local variable (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Convert large order kzalloc allocations to kvzalloc (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add UDP GSO remaining counter (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add UDP GSO support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Rate limit errors in command interface (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Prevent warns in dmesg upon firmware commands (Alaa Hleihel) [1636554] - [netdrv] mlx4: remove ndo_poll_controller (Alaa Hleihel) [1636553] - [netdrv] net/mlx4: Use cpumask_available for eq->affinity_mask (Alaa Hleihel) [1636553] - [netdrv] net/mlx4/en_rx: Mark expected switch fall-throughs (Alaa Hleihel) [1636553] - [netdrv] net/mlx4/mcg: Mark expected switch fall-throughs (Alaa Hleihel) [1636553] - [infiniband] IB/mlx4: Use 4K pages for kernel QP's WQE buffer (Alaa Hleihel) [1636553] - [netdrv] net/mlx4_core: Allow MTTs starting at any index (Alaa Hleihel) [1636553] - [infiniband] IB/mlx4: Test port number before querying type (Alaa Hleihel) [1636553] - [powerpc] powerpc/numa: Skip onlining a offline node in kdump path (Steve Best) [1637118] - [netdrv] net: aquantia: Make function aq_fw1x_set_power() static (David Arcari) [1636533] - [netdrv] net: aquantia: memory corruption on jumbo frames (David Arcari) [1636533 1630377] - [netdrv] net: aquantia: bump driver version (David Arcari) [1636533] - [netdrv] net: aquantia: renaming for better visibility (David Arcari) [1636533] - [netdrv] net: aquantia: whitespace changes (David Arcari) [1636533] - [netdrv] net: aquantia: implement EEE support (David Arcari) [1636533] - [netdrv] net: aquantia: implement WOL support (David Arcari) [1636533] - [netdrv] net: aquantia: definitions for WOL (David Arcari) [1636533] - [netdrv] net: aquantia: fix hw_atl_utils_fw_upload_dwords (David Arcari) [1636533] - [netdrv] net: aquantia: Make some functions static (David Arcari) [1636533] - [netdrv] net: aquantia: bump driver version (David Arcari) [1636533] - [netdrv] net: aquantia: Add renegotiate ethtool operation support (David Arcari) [1636533] - [netdrv] net: aquantia: Implement rx/tx flow control ethtools callback (David Arcari) [1636533] - [netdrv] net: aquantia: Improve adapter init/deinit logic (David Arcari) [1636533] - [netdrv] net: aquantia: Ethtool based ring size configuration (David Arcari) [1636533] - [wireless] ath10k: fix memory leak of tpc_stats (Petr Oros) [1637528] - [wireless] ath10k: snoc: use correct bus-specific pointer in RX retry (Petr Oros) [1637528] - [wireless] ath10k: fix incorrect size of dma_free_coherent in ath10k_ce_alloc_src_ring_64 (Petr Oros) [1637528] - [wireless] brcmsmac: fix wrap around in conversion from constant to s16 (Petr Oros) [1637528] - [wireless] mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status() (Petr Oros) [1637528] - [wireless] ath10k: transmit queued frames after processing rx packets (Petr Oros) [1637528] - [wireless] ath10k: protect ath10k_htt_rx_ring_free with rx_ring.lock (Petr Oros) [1637528] - [wireless] ath10k: use locked skb_dequeue for rx completions (Petr Oros) [1637528] - [wireless] ath10k: sdio: set skb len for all rx packets (Petr Oros) [1637528] - [wireless] ath10k: sdio: use same endpoint id for all packets in a bundle (Petr Oros) [1637528] - [wireless] iwlwifi: cancel the injective function between hw pointers to tfd entry index (Petr Oros) [1637528] - [wireless] ath10k: disable bundle mgmt tx completion event support (Petr Oros) [1637528] - [wireless] ath10k: prevent active scans on potential unusable channels (Petr Oros) [1637528] - [wireless] ath9k_hw: fix channel maximum power level test (Petr Oros) [1637528] - [wireless] ath9k: report tx status on EOSP (Petr Oros) [1637528] - [wireless] iwlwifi: pcie: don't access periphery registers when not available (Petr Oros) [1637528] - [wireless] brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference (Petr Oros) [1637528] - [netdrv] be2net: don't flip hw_features when VXLANs are added/deleted (Petr Oros) [1637133] - [netdrv] be2net: Fix memory leak in be_cmd_get_profile_config() (Petr Oros) [1637133] - [netdrv] be2net: Mark expected switch fall-through (Petr Oros) [1637133] - [netdrv] be2net: fix spelling mistake "seqence" -> "sequence" (Petr Oros) [1637133] - [netdrv] be2net: Update the driver version to 12.0.0.0 (Petr Oros) [1637133] - [netdrv] be2net: gather debug info and reset adapter (only for Lancer) on a tx-timeout (Petr Oros) [1637133] - [netdrv] be2net: move rss_flags field in rss_info to ensure proper alignment (Petr Oros) [1637133] - [netdrv] be2net: re-order fields in be_error_recovert to avoid hole (Petr Oros) [1637133] - [netdrv] be2net: remove unused tx_jiffies field from be_tx_stats (Petr Oros) [1637133] - [netdrv] be2net: move txcp field in be_tx_obj to eliminate holes in the struct (Petr Oros) [1637133] - [netdrv] be2net: reorder fields in be_eq_obj structure (Petr Oros) [1637133] - [netdrv] be2net: remove desc field from be_eq_obj (Petr Oros) [1637133] - [netdrv] be2net: remove unused old custom busy-poll fields (Petr Oros) [1637133] - [netdrv] be2net: remove unused old AIC info (Petr Oros) [1637133] - [x86] x86/spec_ctrl/compat: Call IBRS_ENTRY only after valid kernel stack (Waiman Long) [1636843] - [acpi] ACPI/PPTT: Handle architecturally unknown cache types (Jeremy Linton) [1636567] - [base] drivers: base: cacheinfo: Do not populate sysfs for unknown cache types (Jeremy Linton) [1636567] - [fs] getxattr: use correct xattr length (Lukas Czerner) [1637049] - [x86] Mark Intel Cascade Lake supported (Steve Best) [1636651] - [x86] x86/boot: Fix kexec booting failure in the SEV bit detection code (Kairui Song) [1632514] - [scsi] scsi: megaraid_sas: driver version upgrade (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Support FW provided TM timeout values (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Return immediately from wait_for_adapter_operational after kill adapter (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Update controller info during resume (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Do not do Kill adapter if GET_CTRL_INFO times out (Tomas Henzl) [1635565] - [scsi] qla2xxx: Update driver version to 10.00.00.07.08.0-k (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Check for Register disconnect (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix re-using LoopID when handle is in use (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix duplicate switch database entries (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix NVMe session hang on unload (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix iIDMA error (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix stalled relogin (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix unintended Logout (Himanshu Madhani) [1633373] - [powerpc] powerpc/pseries: Disable CPU hotplug across migrations (Steve Best) [1633587] - [block] blk-mq: I/O and timer unplugs are inverted in blktrace (Ming Lei) [1634330] - [block] block: fix deadline elevator drain for zoned block devices (Ming Lei) [1634333] - [block] blk-mq: Allow blocking queue tag iter callbacks (Ming Lei) [1634328] - [block] block: use nanosecond resolution for iostat (Ming Lei) [1634329] - [block] null_blk: fix zoned support for non-rq based operation (Ming Lei) [1634324] - [block] blk-cgroup: increase number of supported policies (Ming Lei) [1634335] - [block] block: bfq: swap puts in bfqg_and_blkg_put (Ming Lei) [1634334] - [block] block: don't warn when doing fsync on read-only devices (Ming Lei) [1634331] - [block] blkcg: use tryget logic when associating a blkg with a bio (Ming Lei) [1634332] - [block] blkcg: delay blkg destruction until after writeback has (Ming Lei) [1634332] - [block] Revert "blk-throttle: fix race between (Ming Lei) [1634332] - [block] blk-wbt: remove dead code (Ming Lei) [1634326] - [block] blk-wbt: improve waking of tasks (Ming Lei) [1634326] - [block] blk-wbt: abstract out end IO completion handler (Ming Lei) [1634326]- [dma] driver/dma/ioat: Call del_timer_sync() without holding prep_lock (Waiman Long) [1607654] - [netdrv] bnxt_en: Fix VF mac address regression (Jonathan Toppins) [1635846] - [netdrv] bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA (Jonathan Toppins) [1635846] - [netdrv] bnxt_en: Clean up unused functions (Jonathan Toppins) [1635846] - [fs] fsnotify: fix ignore mask logic in fsnotify() (Lukas Czerner) [1635537] - [net] net/af_iucv: locate IUCV header via skb_network_header() (Philipp Rudo) [1635332] - [net] net/af_iucv: drop inbound packets with invalid flags (Philipp Rudo) [1635332] - [net] net/af_iucv: fix skb handling on HiperTransport xmit error (Philipp Rudo) [1635332] - [hid] HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen (David Arcari) [1635746] - [i2c] i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return value (David Arcari) [1635746] - [i2c] i2c: designware: Re-init controllers with pm_disabled set on resume (David Arcari) [1635746] - [i2c] i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes (David Arcari) [1635746] - [fs] fs/quota: Fix spectre gadget in do_quotactl (Lukas Czerner) [1635521] - [fs] xfs: fix error handling in xfs_bmap_extents_to_btree (Brian Foster) [1633171] - [fs] xfs: remove invalid log recovery first/last cycle check (Brian Foster) [1633171] - [fs] xfs: validate inode di_forkoff (Brian Foster) [1633171] - [fs] xfs: skip delalloc COW blocks in xfs_reflink_end_cow (Brian Foster) [1633171] - [fs] xfs: don't treat unknown di_flags2 as corruption in scrub (Brian Foster) [1633171] - [fs] xfs: remove duplicated include from alloc.c (Brian Foster) [1633171] - [fs] xfs: don't bring in extents in xfs_bmap_punch_delalloc_range (Brian Foster) [1633171] - [fs] xfs: fix transaction leak in xfs_reflink_allocate_cow() (Brian Foster) [1633171] - [fs] xfs: avoid lockdep false positives in xfs_trans_alloc (Brian Foster) [1633171] - [fs] xfs: refactor xfs_buf_log_item reference count handling (Brian Foster) [1633171] - [fs] xfs: clean up xfs_trans_brelse() (Brian Foster) [1633171] - [fs] xfs: don't unlock invalidated buf on aborted tx commit (Brian Foster) [1633171] - [fs] xfs: remove last of unnecessary xfs_defer_cancel() callers (Brian Foster) [1633171] - [fs] xfs: don't crash the vfs on a garbage inline symlink (Brian Foster) [1633171] - [fs] iomap: set page dirty after partial delalloc on mkwrite (Brian Foster) [1633171] - [fs] xfs: sanity check ag header values in xrep_calc_ag_resblks (Brian Foster) [1633171] - [fs] xfs: recalculate summary counters at mount time if icount is bad (Brian Foster) [1633171] - [fs] xfs: fix a null pointer dereference in xfs_bmap_extents_to_btree (Brian Foster) [1633171] - [fs] xfs: remove b_last_holder & associated macros (Brian Foster) [1633171] - [fs] xfs: repair the AGI (Brian Foster) [1633171] - [fs] xfs: repair the AGFL (Brian Foster) [1633171] - [fs] xfs: repair the AGF (Brian Foster) [1633171] - [fs] xfs: remove dead error handling code in xfs_dquot_disk_alloc() (Brian Foster) [1633171] - [fs] xfs: use WRITE_ONCE to update if_seq (Brian Foster) [1633171] - [fs] xfs: fix a comment in xfs_log_reserve (Brian Foster) [1633171] - [fs] xfs: only validate summary counts on primary superblock (Brian Foster) [1633171] - [fs] xfs: substitute spaces with tabs (Brian Foster) [1633171] - [fs] xfs: fold dfops into the transaction (Brian Foster) [1633171] - [fs] xfs: always defer agfl block frees (Brian Foster) [1633171] - [fs] xfs: pass transaction to xfs_defer_add() (Brian Foster) [1633171] - [fs] xfs: replace xfs_defer_ops ->dop_pending with on-stack list (Brian Foster) [1633171] - [fs] xfs: cancel dfops on xfs_defer_finish() error (Brian Foster) [1633171] - [fs] xfs: clean out superfluous dfops dop params/vars (Brian Foster) [1633171] - [fs] xfs: drop dop param from xfs_defer_op_type ->finish_item() callback (Brian Foster) [1633171] - [fs] xfs: automatic dfops inode relogging (Brian Foster) [1633171] - [fs] xfs: automatic dfops buffer relogging (Brian Foster) [1633171] - [fs] xfs: add missing defer ijoins for held inodes (Brian Foster) [1633171] - [fs] xfs: replace dop_low with transaction flag (Brian Foster) [1633171] - [fs] xfs: pass transaction to dfops reset/move helpers (Brian Foster) [1633171] - [fs] xfs: remove unused __xfs_defer_cancel() internal helper (Brian Foster) [1633171] - [fs] xfs: use transaction for intent recovery instead of raw dfops (Brian Foster) [1633171] - [fs] xfs: refactor internal dfops initialization (Brian Foster) [1633171] - [fs] xfs: check da node magic in _node_lookup_int (Brian Foster) [1633171] - [fs] xfs: use a local variable for magic number in xfs_da3_node_lookup_int (Brian Foster) [1633171] - [fs] xfs: refactor log recovery check (Brian Foster) [1633171] - [fs] xfs: move extent busy tree initialization to xfs_initialize_perag (Brian Foster) [1633171] - [fs] xfs: avoid COW fork extent lookups in writeback if the fork didn't change (Brian Foster) [1633171] - [fs] xfs: maintain a sequence count for inode fork manipulations (Brian Foster) [1633171] - [fs] xfs: check for unknown v5 feature bits in superblock write verifier (Brian Foster) [1633171] - [fs] xfs: verify icount in superblock write (Brian Foster) [1633171] - [fs] libxfs: add more bounds checking to sb sanity checks (Brian Foster) [1633171] - [fs] xfs: refactor superblock verifiers (Brian Foster) [1633171] - [fs] xfs: refactor the xrep_extent_list into xfs_bitmap (Brian Foster) [1633171] - [fs] xfs: introduce a new xfs_inode_has_cow_data helper (Brian Foster) [1633171] - [fs] xfs: remove the xfs_ifork_t typedef (Brian Foster) [1633171] - [fs] xfs: simplify xfs_idata_realloc (Brian Foster) [1633171] - [fs] xfs: remove if_real_bytes (Brian Foster) [1633171] - [fs] xfs: move the repair extent list into its own file (Brian Foster) [1633171] - [fs] xfs: pass transaction lock while setting up agresv on cyclic metadata (Brian Foster) [1633171] - [fs] xfs: remove deprecated barrier/nobarrier mount (Brian Foster) [1633171] - [fs] xfs: clean up IRELE/iput callsites (Brian Foster) [1633171] - [fs] xfs: kill IHOLD (Brian Foster) [1633171] - [fs] xfs: bypass final dfops roll in trans commit path (Brian Foster) [1633171] - [fs] xfs: drop unnecessary xfs_defer_finish() dfops parameter (Brian Foster) [1633171] - [fs] xfs: remove unnecessary dfops init calls in xattr code (Brian Foster) [1633171] - [fs] xfs: remove all boilerplate defer init/finish code (Brian Foster) [1633171] - [fs] xfs: use internal dfops during (b|c)ui recovery (Brian Foster) [1633171] - [fs] xfs: use internal dfops in attr code (Brian Foster) [1633171] - [fs] xfs: use internal dfops in cow blocks cancel (Brian Foster) [1633171] - [fs] xfs: support embedded dfops in transaction (Brian Foster) [1633171] - [fs] xfs: pack holes in xfs_defer_ops and xfs_trans (Brian Foster) [1633171] - [fs] xfs: reset dfops to initial state after finish (Brian Foster) [1633171] - [fs] xfs: remove unused deferred ops committed field (Brian Foster) [1633171] - [fs] xfs: make deferred processing safe for embedded dfops (Brian Foster) [1633171] - [fs] xfs: fix transaction leak on remote attr set/remove failure (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in log recovery intent processing (Brian Foster) [1633171] - [fs] xfs: pull up dfops from xfs_itruncate_extents() (Brian Foster) [1633171] - [fs] xfs: force summary counter recalc at next mount (Brian Foster) [1633171] - [fs] xfs: refactor unmount record write (Brian Foster) [1633171] - [fs] xfs: detect and fix bad summary counts at mount (Brian Foster) [1633171] - [fs] xfs: fix indentation and other whitespace problems in scrub/repair (Brian Foster) [1633171] - [fs] xfs: shorten struct xfs_scrub_context to struct xfs_scrub (Brian Foster) [1633171] - [fs] xfs: shorten xfs_repair_ prefix to xrep_ (Brian Foster) [1633171] - [fs] xfs: shorten xfs_scrub_ prefix (Brian Foster) [1633171] - [fs] xfs: clean up xfs_btree_del_cursor callers (Brian Foster) [1633171] - [fs] xfs: trivial xfs_btree_del_cursor cleanups (Brian Foster) [1633171] - [fs] xfs: return from _defer_finish with a clean transaction (Brian Foster) [1633171] - [fs] xfs: check leaf attribute block freemap in verifier (Brian Foster) [1633171] - [fs] libxfs: Fix a couple of sparse complaintis (Brian Foster) [1633171] - [fs] xfs: use swap macro in xfs_dir2_leafn_rebalance (Brian Foster) [1633171] - [fs] xfs_bmap_util: use swap macro (Brian Foster) [1633171] - [fs] xfs_attr_leaf: use swap macro in xfs_attr3_leaf_rebalance (Brian Foster) [1633171] - [fs] xfs: don't assume a left rmap when allocating a new rmap (Brian Foster) [1633171] - [fs] xfs: kill __xfs_buf_submit_common() (Brian Foster) [1633171] - [fs] xfs: combine (a)sync buffer submission apis (Brian Foster) [1633171] - [fs] xfs: use sync buffer I/O for sync delwri queue submission (Brian Foster) [1633171] - [fs] xfs: refactor buffer submission into a common helper (Brian Foster) [1633171] - [fs] xfs: remove xfs_defer_init() firstblock param (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in inode inactivate (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in extent swap (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in reflink cow block cancel (Brian Foster) [1633171] - [fs] xfs: replace no-op firstblock init with ->t_firstblock (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in dq alloc (Brian Foster) [1633171] - [fs] xfs: remove xfs_alloc_arg firstblock field (Brian Foster) [1633171] - [fs] xfs: remove xfs_btree_cur private firstblock field (Brian Foster) [1633171] - [fs] xfs: remove bmap format helpers firstblock params (Brian Foster) [1633171] - [fs] xfs: remove bmap extent add helper firstblock params (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmalloca firstblock field (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in bmap extent split (Brian Foster) [1633171] - [fs] xfs: remove bmap insert/collapse firstblock param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bunmapi() firstblock param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_write() firstblock param (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in insert/collapse range (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in xfs_bmapi_remap() (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock for all xfs_bunmapi() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock for all xfs_bmapi_write() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in xattr ops (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in attrfork add (Brian Foster) [1633171] - [fs] xfs: remove firstblock param from xfs dir ops (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in dir ops (Brian Foster) [1633171] - [fs] xfs: add firstblock field to xfs_trans (Brian Foster) [1633171] - [fs] xfs: allow null firstblock in xfs_bmapi_write() when tp is null (Brian Foster) [1633171] - [fs] xfs: refactor dfops init to attach to transaction (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in reflink cow recover path (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in cancel cow blocks operation (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for rmap extent swap operations (Brian Foster) [1633171] - [fs] xfs: remove unused btree cursor bc_private.a.dfops field (Brian Foster) [1633171] - [fs] xfs: remove xfs_btree_cur bmbt dfops field (Brian Foster) [1633171] - [fs] xfs: remove dfops param from internal bmap extent helpers (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for collapse/insert range operations (Brian Foster) [1633171] - [fs] xfs: remove struct xfs_bmalloca dfops field (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_remap() dfops param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bunmapi() dfops param (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for all xfs_bunmapi() callers (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_write() dfops param (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for all xfs_bmapi_write() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in dqalloc transaction (Brian Foster) [1633171] - [fs] xfs: replace xfs_da_args->dfops accesses with ->t_dfops and remove (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in extent split tx and remove param (Brian Foster) [1633171] - [fs] xfs: remove dfops param in attr fork add path (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for attr set/remove operations (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for recovery of (b|c)ui log items (Brian Foster) [1633171] - [fs] xfs: remove dfops param from high level dirname calls (Brian Foster) [1633171] - [fs] xfs: remove dfops parameter from ifree call stack (Brian Foster) [1633171] - [fs] xfs: rename xfs_trans ->t_agfl_dfops to ->t_dfops (Brian Foster) [1633171] - [fs] xfs: cow unwritten conversion uses uninitialized dfops (Brian Foster) [1633171] - [fs] xfs: update my copyrights for the writeback and iomap code (Brian Foster) [1633171] - [fs] xfs: add support for sub-pagesize writeback without buffer_heads (Brian Foster) [1633171] - [fs] xfs: allow writeback on pages without buffer heads (Brian Foster) [1633171] - [fs] xfs: refactor the tail of xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: remove xfs_start_page_writeback (Brian Foster) [1633171] - [fs] xfs: move all writeback buffer_head manipulation into xfs_map_at_offset (Brian Foster) [1633171] - [fs] xfs: don't look at buffer heads in xfs_add_to_ioend (Brian Foster) [1633171] - [fs] xfs: remove the imap_valid flag (Brian Foster) [1633171] - [fs] xfs: simplify xfs_map_blocks by using xfs_iext_lookup_extent directly (Brian Foster) [1633171] - [fs] xfs: remove xfs_reflink_find_cow_mapping (Brian Foster) [1633171] - [fs] xfs: remove the now unused XFS_BMAPI_IGSTATE flag (Brian Foster) [1633171] - [fs] xfs: make xfs_writepage_map extent map centric (Brian Foster) [1633171] - [fs] xfs: rename the offset variable in xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: remove xfs_map_cow (Brian Foster) [1633171] - [fs] xfs: remove xfs_reflink_trim_irec_to_next_cow (Brian Foster) [1633171] - [fs] xfs: don't use XFS_BMAPI_IGSTATE in xfs_map_blocks (Brian Foster) [1633171] - [fs] xfs: don't clear imap_valid for a non-uptodate buffers (Brian Foster) [1633171] - [fs] xfs: do not set the page uptodate in xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: move locking into xfs_bmap_punch_delalloc_range (Brian Foster) [1633171] - [fs] xfs: simplify xfs_aops_discard_page (Brian Foster) [1633171] - [fs] xfs: use iomap for blocksize == PAGE_SIZE readpage and readpages (Brian Foster) [1633171] - [fs] iomap: fix WARN_ON_ONCE on uninitialized variable (Brian Foster) [1633171] - [fs] iomap: Switch to offset_in_page for clarity (Brian Foster) [1633171] - [fs] iomap: add support for sub-pagesize buffered I/O without buffer heads (Brian Foster) [1633171] - [fs] iomap: add inline data support to iomap_readpage_actor (Brian Foster) [1633171] - [fs] iomap: support direct I/O to inline data (Brian Foster) [1633171] - [fs] iomap: refactor iomap_dio_actor (Brian Foster) [1633171] - [fs] iomap: add initial support for writes without buffer heads (Brian Foster) [1633171] - [fs] iomap: add an iomap-based readpage and readpages implementation (Brian Foster) [1633171] - [fs] iomap: add private pointer to struct iomap (Brian Foster) [1633171] - [fs] iomap: add a page_done callback (Brian Foster) [1633171] - [fs] iomap: generic inline data handling (Brian Foster) [1633171] - [fs] iomap: complete partial direct I/O writes synchronously (Brian Foster) [1633171] - [fs] iomap: mark newly allocated buffer heads as new (Brian Foster) [1633171] - [fs] fs: factor out a __generic_write_end helper (Brian Foster) [1633171] - [netdrv] amd-xgbe: mark driver as tech preview (David Arcari) [1633209] - [fs] ext4, dax: set ext4_dax_aops for dax files (Lukas Czerner) [1633239] - [fs] ext4, dax: add ext4_bmap to ext4_dax_aops (Lukas Czerner) [1633239] - [fs] ext4: don't mark mmp buffer head dirty (Lukas Czerner) [1633239] - [fs] ext4: show test_dummy_encryption mount option in /proc/mounts (Lukas Czerner) [1633239] - [fs] ext4: fix online resizing for bigalloc file systems with a 1k block size (Lukas Czerner) [1633239] - [fs] ext4: fix online resize's handling of a too-small final block group (Lukas Czerner) [1633239] - [fs] ext4: recalucate superblock checksum after updating free blocks/inodes (Lukas Czerner) [1633239] - [fs] ext4: avoid arithemetic overflow that can trigger a BUG (Lukas Czerner) [1633239] - [fs] ext4: avoid divide by zero fault when deleting corrupted inline directories (Lukas Czerner) [1633239] - [fs] ext4: check to make sure the rename(2)'s destination is not freed (Lukas Czerner) [1633239] - [fs] ext4: remove unneeded variable "err" in ext4_mb_release_inode_pa() (Lukas Czerner) [1633239] - [fs] ext4: fix spectre gadget in ext4_mb_regular_allocator() (Lukas Czerner) [1633239] - [fs] ext4: check for NUL characters in extended attribute's name (Lukas Czerner) [1633239] - [fs] ext4: use ext4_warning() for sb_getblk failure (Lukas Czerner) [1633239] - [fs] ext4: fix race when setting the bitmap corrupted flag (Lukas Czerner) [1633239] - [fs] ext4: reset error code in ext4_find_entry in fallback (Lukas Czerner) [1633239] - [fs] ext4: check allocation failure when duplicating "data" in ext4_remount() (Lukas Czerner) [1633239] - [fs] ext4: sysfs: print ext4_super_block fields as little-endian (Lukas Czerner) [1633239] - [firmware] efi/x86: Handle page faults occurring while running EFI runtime services (Bhupesh Sharma) [1627557] - [firmware] efi: Make efi_rts_work accessible to efi page fault handler (Bhupesh Sharma) [1627557] - [firmware] efi: Remove the declaration of efi_late_init() as the function is unused (Bhupesh Sharma) [1627557] - [firmware] efi: Use a work queue to invoke EFI Runtime Services (Bhupesh Sharma) [1627557] - [firmware] efi/x86: Use non-blocking SetVariable() for efi_delete_dummy_variable() (Bhupesh Sharma) [1627557] - [fs] gfs2: Special-case rindex for gfs2_grow (Robert S Peterson) [1628360] - [fs] GFS2: Fix recovery issues for spectators (Robert S Peterson) [1628298]- [powerpc] powerpc/pkeys: Fix reading of ibm, processor-storage-keys property (Steve Best) [1633551] - [powerpc] powerpc/pseries: Remove unneeded uses of dlpar work queue (Steve Best) [1633544] - [powerpc] powerpc/pseries: Remove prrn_work workqueue (Steve Best) [1633544] - [pci] ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot is not bridge (Myron Stowe) [1634816] - [pci] PCI: Fix enabling of PASID on RC integrated endpoints (Myron Stowe) [1634816] - [pci] IB/hfi1,PCI: Allow bus reset while probing (Myron Stowe) [1634816] - [pci] PCI: Fix faulty logic in pci_reset_bus() (Myron Stowe) [1634816] - [pci] PCI: pciehp: Fix hot-add vs powerfault detection order (Myron Stowe) [1634816] - [pci] Revert "PCI: Add ACS quirk for Intel 300 series" (Myron Stowe) [1634816] - [powerpc] powerpc/numa: Use associativity if VPHN hcall is successful (Steve Best) [1633569] - [pci] PCI: vmd: White list for fast interrupt handlers (Myron Stowe) [1632816] - [pci] PCI: Add function 1 DMA alias quirk for Marvell 88SS9183 (Myron Stowe) [1632816] - [pci] PCI: Rename pci_try_reset_bus() to pci_reset_bus() (Myron Stowe) [1632816] - [pci] PCI: Deprecate pci_reset_bus() and pci_reset_slot() functions (Myron Stowe) [1632816] - [pci] PCI: Unify try slot and bus reset API (Myron Stowe) [1632816] - [pci] PCI: Hide pci_reset_bridge_secondary_bus() from drivers (Myron Stowe) [1632816] - [pci] IB/hfi1: Use pci_try_reset_bus() for initiating PCI Secondary Bus Reset (Myron Stowe) [1632816] - [pci] PCI: Handle error return from pci_reset_bridge_secondary_bus() (Myron Stowe) [1632816] - [pci] PCI/IOV: Tidy pci_sriov_set_totalvfs() (Myron Stowe) [1632816] - [pci] PCI: Enable PASID only if entire path supports End-End TLP prefixes (Myron Stowe) [1632816] - [pci] PCI: Expand documentation for pci_add_dma_alias() (Myron Stowe) [1632816] - [pci] PCI: Add DMA alias quirk for Microsemi Switchtec NTB (Myron Stowe) [1632816] - [pci] switchtec: Use generic PCI Vendor ID and Class Code (Myron Stowe) [1632816] - [pci] PCI: Make pci_get_rom_size() static (Myron Stowe) [1632816] - [pci] PCI: Add check code for last image indicator not set (Myron Stowe) [1632816] - [pci] PCI: Avoid accessing memory outside the ROM BAR (Myron Stowe) [1632816] - [pci] PCI: Make early dump functionality generic (Myron Stowe) [1632816] - [pci] PCI: Cleanup PCI_REBAR_CTRL_BAR_SHIFT handling (Myron Stowe) [1632816] - [pci] PCI: Restore resized BAR state on resume (Myron Stowe) [1632816] - [pci] PCI: Clean up resource allocation in devm_of_pci_get_host_bridge_resources() (Myron Stowe) [1632816] - [pci] PCI: Add ACS Redirect disable quirk for Intel Sunrise Point (Myron Stowe) [1632816] - [pci] PCI: Add device-specific ACS Redirect disable infrastructure (Myron Stowe) [1632816] - [pci] PCI: Convert device-specific ACS quirks from NULL termination to ARRAY_SIZE (Myron Stowe) [1632816] - [pci] PCI: Add "pci=disable_acs_redir=" parameter for peer-to-peer support (Myron Stowe) [1632816] - [pci] PCI: Allow specifying devices using a base bus and path of devfns (Myron Stowe) [1632816] - [pci] PCI: Make specifying PCI devices in kernel parameters reusable (Myron Stowe) [1632816] - [pci] PCI: Hide ACS quirk declarations inside PCI core (Myron Stowe) [1632816] - [pci] PCI: Document ACPI description of PCI host bridges (Myron Stowe) [1632816] - [pci] PCI/MSI: Set IRQCHIP_ONESHOT_SAFE for PCI-MSI irqchips (Myron Stowe) [1632816] - [pci] PCI: Limit config space size for Netronome NFP5000 (Myron Stowe) [1632816] - [pci] PCI: Add PCI_DEVICE_DATA() macro to fully describe device ID entry (Myron Stowe) [1632816] - [pci] PCI: Unify PCI and normal DMA direction definitions (Myron Stowe) [1632816] - [pci] PCI: Use IRQF_ONESHOT if pci_request_irq() called with no handler (Myron Stowe) [1632816] - [pci] PCI: Call dma_debug_add_bus() for pci_bus_type from PCI core (Myron Stowe) [1632816] - [pci] PCI: Mark fall-through switch cases before enabling -Wimplicit-fallthrough (Myron Stowe) [1632816]- [s390] s390/sclp: Allow to request adapter reset (Philipp Rudo) [1635273] - [char] ipmi: Fix NULL pointer dereference in ssif_probe (Tony Camuso) [1635366] - [char] ipmi: Fix I2C client removal in the SSIF driver (Tony Camuso) [1635366] - [char] ipmi: kcs_bmc: don't change device name (Tony Camuso) [1635366] - [kernel] timers: Clear timer_base::must_forward_clk with timer_base::lock held (Waiman Long) [1632820] - [pci] switchtec: Fix Spectre v1 vulnerability (Waiman Long) [1632820] - [kernel] cpu/hotplug: Prevent state corruption on error rollback (Waiman Long) [1632820] - [kernel] cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun() (Waiman Long) [1632820] - [base] memory_hotplug: fix kernel_panic on offline page processing (Waiman Long) [1632820] - [mm] mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported (Waiman Long) [1632820] - [lib] debugobjects: Make stack check warning more informative (Waiman Long) [1632820] - [fs] fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot() (Waiman Long) [1632820] - [x86] x86/process: Don't mix user/kernel regs in 64bit __show_regs() (Waiman Long) [1632820] - [x86] x86/dumpstack: Don't dump kernel memory based on usermode RIP (Waiman Long) [1632820] - [x86] x86: Avoid pr_cont() in show_opcodes() (Waiman Long) [1632820] - [x86] x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit() (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+ (Waiman Long) [1632820] - [x86] x86/spectre: Add missing family 6 check to microcode check (Waiman Long) [1632820] - [x86] x86/nmi: Fix NMI uaccess race against CR3 switching (Waiman Long) [1632820] - [x86] x86/vdso: Fix lsl operand order (Waiman Long) [1632820] - [x86] x86/vdso: Fix vDSO build if a retpoline is emitted (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Suggest what to do on systems with too much RAM (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Fix off-by-one error when warning that system has too much RAM (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Exempt zeroed PTEs from inversion (Waiman Long) [1632820] - [x86] x86/mm/pti: Clear Global bit more aggressively (Waiman Long) [1632820] - [x86] x86/paravirt: Fix spectre-v2 mitigations for paravirt guests (Waiman Long) [1632820] - [target] scsi: target: iscsi: Use bin2hex instead of a re-implementation (Maurizio Lombardi) [1632184] {CVE-2018-14633} - [target] scsi: target: iscsi: Use hex2bin instead of a re-implementation (Maurizio Lombardi) [1632184] {CVE-2018-14633}- [netdrv] ibmvnic: Include missing return code checks in reset function (Steve Best) [1633553] - [netdrv] ibmvnic: Update firmware error reporting with cause string (Steve Best) [1633553] - [netdrv] ibmvnic: Remove code to request error information (Steve Best) [1633553] - [s390] s390/qeth: remove duplicated carrier state tracking (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up drop conditions for received cmds (Hendrik Brueckner) [1633841] - [s390] s390/qeth: re-indent qeth_check_ipa_data() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: consume local address events (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove various redundant code (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove CARD_FROM_CDEV helper (Hendrik Brueckner) [1633841] - [s390] s390/qeth: pass card pointer in iob callback (Hendrik Brueckner) [1633841] - [s390] s390/qeth: re-use qeth_notify_skbs() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove additional skb refcount (Hendrik Brueckner) [1633841] - [s390] s390/qeth: replace open-coded skb_queue_walk() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: on gdev release, reset drvdata (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix discipline unload after setup error (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use DEFINE_MUTEX for qeth_mod_mutex (Hendrik Brueckner) [1633841] - [s390] s390/qeth: convert layer attribute to enum (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reduce 0-initializing when building IPA cmds (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fine-tune spinlocks (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix typo in return value (Hendrik Brueckner) [1633841] - [s390] s390/qeth: invoke softirqs after napi_schedule() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: uninstall IRQ handler on device removal (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove qeth_hdr_chk_and_bounce() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed up TSO transmission (Hendrik Brueckner) [1633841] - [s390] s390/qeth: prepare for copy-free TSO transmission (Hendrik Brueckner) [1633841] - [s390] s390/qeth: check size of required HW header cache object (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix up protocol headers early (Hendrik Brueckner) [1633841] - [s390] s390/qeth: limit csum offload erratum to L3 devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove qeth_get_elements_no() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove unused L3 xmit code (Hendrik Brueckner) [1633841] - [s390] s390/qeth: run non-offload L3 traffic over common xmit path (Hendrik Brueckner) [1633841] - [s390] s390/qeth: move L2 xmit code to core module (Hendrik Brueckner) [1633841] - [s390] s390/qdio: reset old sbal_state flags (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't dump past end of unknown HW header (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use vzalloc for QUERY OAT buffer (Hendrik Brueckner) [1633841] - [s390] s390/qeth: switch on SG by default for IQD devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: indicate error when netdev allocation fails (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use true and false for boolean values (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't restrict qeth_card to DMA memory (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up card initialization (Hendrik Brueckner) [1633841] - [s390] s390/qeth: do basic setup for data channel (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use qeth_setup_ccw() to set up all CCWs (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reduce hard-coded access to ccw channels (Hendrik Brueckner) [1633841] - [s390] s390/qeth: extract helper for MPC protocol type (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed up L2 IQD xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add support for constrained HW headers (Hendrik Brueckner) [1633841] - [s390] s390/qeth: merge linearize-check into HW header construction (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add statistics for consumed buffer elements (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use core MTU range checking (Hendrik Brueckner) [1633841] - [s390] s390/qeth: simplify max MTU handling (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't cache HW port number (Hendrik Brueckner) [1633841] - [s390] s390/qeth: allocate netdevice early (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove redundant netif_carrier_ok() checks (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reset layer2 attribute on layer switch (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix race in used-buffer accounting (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed-up IPv4 OSA xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed-up L3 IQD xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add a L3 xmit wrapper (Hendrik Brueckner) [1633841] - [s390] s390/qeth: increase GSO max size for eligible L3 devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up exported symbols (Hendrik Brueckner) [1633841] - [s390] s390/qeth: consolidate ccwgroup driver definition (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up Output Queue selection (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fine-tune RX modesetting (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove unused buffer->aob pointer (Hendrik Brueckner) [1633841] - [s390] s390/qeth: various buffer management cleanups (Hendrik Brueckner) [1633841] - [powerpc] powerpc: Avoid code patching freed init sections (Steve Best) [1633545] - [powerpc] powerpc/tm: Fix userspace r13 corruption (Steve Best) [1633543] - [powerpc] powerpc/tm: Avoid possible userspace r1 corruption on reclaim (Steve Best) [1633543] - [drm] drm/i915/cfl: Add a new CFL PCI ID (Rob Clark) [1626883] - [drm] drm/i915/aml: Introducing Amber Lake platform (Rob Clark) [1626883] - [drm] drm/i915/whl: Introducing Whiskey Lake platform (Rob Clark) [1626883] - [char] ipmi: Move BT capabilities detection to the detect call (Frank Ramsay) [1618774] - [char] ipmi: Rework SMI registration failure (Frank Ramsay) [1618774]- [s390] s390: detect etoken facility (Thomas Huth) [1634069] - [s390] s390/lib: use expoline for all bcr instructions (Thomas Huth) [1634069] - [documentation] vm.txt: Adding 'nr_hugepages_mempolicy' parameter description (Prashant Dhamdhere) [1626547]- [scsi] scsi: ipr: System hung while dlpar adding primary ipr adapter back (Steve Best) [1633217] - [target] scsi: iscsi: target: Don't use stack buffer for scatterlist (Maurizio Lombardi) [1631342] - [rpmspec] Forward port weak-modules support from RHEL 7 to RHEL 8 ("Herton R. Krzesinski") [1596884] - [fs] xfs: Close race between direct IO and xfs_break_layouts() (Eric Sandeen) [1622191] - [fs] xfs: remove unused iolock arg from xfs_break_dax_layouts (Eric Sandeen) [1622191] - [fs] ext4: Close race between direct IO and ext4_break_layouts() (Eric Sandeen) [1616303] - [fs] ext4: handle layout changes to pinned DAX mappings (Eric Sandeen) [1614154] - [fs] dax: dax_layout_busy_page() warn on !exceptional (Eric Sandeen) [1614154] - [fs] dax: mark tech preview (Eric Sandeen) [1627455] - [mm] usercopy: Allow boot cmdline disabling of hardening (Christoph von Recklinghausen) [1589928]- [s390] s390/crypto: Fix return code checking in cbc_paes_crypt() (Philipp Rudo) [1633266] - [drm] amd/display/dc/basics/logger.c: fix build error with CONFIG_FORTIFY_SOURCE=y ("Herton R. Krzesinski") [1548068] - [acpi] ACPICA: AML Parser: skip opcodes that open a scope upon parse failure (Jeremy Linton) [1609885] - [acpi] ACPICA: ACPICA: add status check for acpi_hw_read before assigning return value (Jeremy Linton) [1609885] - [acpi] ACPICA: AML Parser: ignore all exceptions resulting from incorrect AML during table load (Jeremy Linton) [1609885] - [rpmspec] spec: Add missing BuildRequires for bpftool (Jiri Olsa) [1632756] - [powerpc] KVM: PPC: Avoid marking DMA-mapped pages dirty in real mode (David Gibson) [1628412] - [powerpc] powerpc/powernv/ioda: Allocate indirect TCE levels on demand (David Gibson) [1628412] - [powerpc] powerpc/powernv: Rework TCE level allocation (David Gibson) [1628412] - [powerpc] powerpc/powernv: Add indirect levels to it_userspace (David Gibson) [1628412] - [powerpc] KVM: PPC: Make iommu_table::it_userspace big endian (David Gibson) [1628412] - [powerpc] powerpc/powernv: Move TCE manupulation code to its own file (David Gibson) [1628412] - [net] net_sched: fix NULL pointer dereference when delete tcindex filter (Andrea Claudi) [1627648] - [net] net_sched: Fix missing res info when create new tc_index filter (Andrea Claudi) [1627648] - [samples] samples/bpf: xdpsock: order memory on AArch64 (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_redirect_cpu load balance like Suricata (Jesper Brouer) [1615959] - [samples] samples/bpf: add Paul Hsieh's (LGPL 2.1) hash function SuperFastHash (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_redirect_cpu handle parsing of double VLAN tagged packets (Jesper Brouer) [1615959] - [samples] samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_rxq_info action XDP_TX must adjust MAC-addrs (Jesper Brouer) [1615959] - [samples] samples/bpf: extend xdp_rxq_info to read packet payload (Jesper Brouer) [1615959] - [powerpc] KVM: PPC: Book3S HV: Use correct pagesize in kvm_unmap_radix() (David Gibson) [1625498] - [net] igmp: fix incorrect unsolicit report count after link down and up (Hangbin Liu) [1625538] - [net] igmp: fix incorrect unsolicit report count when join group (Hangbin Liu) [1625538] - [netdrv] cxgb4: update 1.20.8.0 as the latest firmware supported (Arjun Vynipadath) [1622555] - [virt] svm: nested virt support off by default (Bandan Das) [1571993]- [powerpc] KVM: PPC: Book3S HV: Don't use compound_order to determine host mapping size (David Gibson) [1625860] - [virt] arm64: KVM: Remove pgd_lock (Wei Huang) [1627474] - [virt] KVM: Remove obsolete kvm_unmap_hva notifier backend (Wei Huang) [1627474] - [virt] arm64: KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Clean dcache to PoC when changing PTE due to CoW (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Skip updating PTE entry if no change (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Skip updating PMD entry if no change (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Move DEBUG_SPINLOCK_BUG_ON to vgic.h (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Do not use spin_lock_irqsave/restore with irq disabled (Wei Huang) [1627474] - [virt] KVM: arm: vgic-v3: Add support for ICC_SGI0R and ICC_ASGI1R accesses (Wei Huang) [1627474] - [virt] KVM: arm64: vgic-v3: Add support for ICC_SGI0R_EL1 and ICC_ASGI1R_EL1 accesses (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic-v3: Add core support for Group0 SGIs (Wei Huang) [1627474] - [virt] KVM: arm64: Remove non-existent AArch32 ICC_SGI1R encoding (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix potential loss of ptimer interrupts (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Fix possible spectre-v1 write in vgic_mmio_write_apr() (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Update documentation of the GIC devices wrt IIDR (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Let userspace opt-in to writable v2 IGROUPR (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Allow configuration of interrupt groups (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Return error on incompatible uaccess GICD_IIDR writes (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Permit uaccess writes to return errors (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Signal IRQs using their configured group (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Add group field to struct irq (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: GICv2 IGROUPR should read as zero (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Keep track of implementation revision (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Define GICD_IIDR fields for GICv2 and GIv3 (Wei Huang) [1627474] - [virt] arm64: KVM: Cleanup tpidr_el2 init on non-VHE (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic-debug: Show LPI status (Wei Huang) [1627474] - [virt] KVM: arm64: vgic-its: Remove VLA usage (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix vgic init race (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Enable adaptative WFE trapping (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Remove unnecessary CMOs when creating HYP page tables (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Stop using the kernel's (pmd, pud, pgd)_populate helpers (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Consolidate page-table accessors (Wei Huang) [1627474] - [virt] arm64: KVM: Avoid marking pages as XN in Stage-2 if CTR_EL0.DIC is set (Wei Huang) [1627474] - [tools] radix tree test suite: Enable ubsan (Waiman Long) [1630244] - [tools] radix tree test suite: Fix compilation (Waiman Long) [1630244] - [block] blk-wbt: don't maintain inflight counts if disabled (Ming Lei) [1622790] - [block] blk-wbt: fix has-sleeper queueing check (Ming Lei) [1622790] - [block] blk-wbt: use wq_has_sleeper() for wq active check (Ming Lei) [1622790] - [block] blk-wbt: move disable check into get_limit() (Ming Lei) [1622790] - [block] block/DAC960.c: make some arrays static const, shrinks object (Ming Lei) [1622790] - [block] blk-mq: sync the update nr_hw_queues with (Ming Lei) [1617959] - [block] blk-mq: init hctx sched after update ctx and hctx mapping (Ming Lei) [1617959] - [block] block: remove duplicate initialization (Ming Lei) [1622790] - [block] tracing/blktrace: Fix to allow setting same value (Ming Lei) [1622790] - [block] pktcdvd: fix setting of 'ret' error return for a few cases (Ming Lei) [1622790] - [block] block: change return type to bool (Ming Lei) [1622790] - [block] block, bfq: return nbytes and not zero from struct cftype (Ming Lei) [1622790] - [block] block, bfq: improve code of bfq_bfqq_charge_time (Ming Lei) [1622790] - [block] block, bfq: reduce write overcharge (Ming Lei) [1622790] - [block] block, bfq: always update the budget of an entity when needed (Ming Lei) [1622790] - [block] block, bfq: readd missing reset of parent-entity service (Ming Lei) [1622790] - [block] block: don't warn for flush on read-only device (Ming Lei) [1622809]- [kernel] locking/rwsem: Make owner store task pointer of last owning reader (Waiman Long) [1631842] - [kernel] locking/rwsem: Exit read lock slowpath if queue empty & no writer (Waiman Long) [1631842] - [x86] x86/microcode: Update the new microcode revision unconditionally (Prarit Bhargava) [1630931] - [x86] x86/microcode: Make sure boot_cpu_data.microcode is up-to-date (Prarit Bhargava) [1630931] - [arm64] arm64: tlb: Provide forward declaration of tlb_flush() before including tlb.h (Waiman Long) [1630521] - [x86] x86/mm: Only use tlb_remove_table() for paravirt (Waiman Long) [1630521] - [mm] mm: mmu_notifier fix for tlb_end_vma (Waiman Long) [1630521] - [mm] mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE (Waiman Long) [1630521] - [mm] mm/tlb: Remove tlb_remove_table() non-concurrent condition (Waiman Long) [1630521] - [mm] mm: move tlb_table_flush to tlb_flush_mmu_free (Waiman Long) [1630521] - [kernel] clocksource: Revert Remove kthread (Waiman Long) [1628402] - [cpuidle] cpuidle: menu: Retain tick when shallow state is selected (Waiman Long) [1628402] - [cpufreq] cpufreq: governor: Avoid accessing invalid governor_data (Waiman Long) [1628402] - [cpuidle] cpuidle: menu: Handle stopped tick more aggressively (Waiman Long) [1628402] - [kernel] sched: idle: Avoid retaining the tick when it has been stopped (Waiman Long) [1628402] - [net] netfilter: xt_hashlimit: do not crash when reading proc file (Florian Westphal) [1630131] - [x86] x86/boot/KASLR: Skip specified number of 1GB huge pages when doing physical randomization (KASLR) (Baoquan He) [1564824] - [x86] x86/boot/KASLR: Add two new functions for 1GB huge pages handling (Baoquan He) [1564824] - [mfd] mfd: intel-lpss: Add Ice Lake PCI IDs (Gopal Tiwari) [1483477] - [mmc] mmc: sdhci-pci: Add support for Intel ICP (Gopal Tiwari) [1483496]- [mm] mm: get rid of vmacache_flush_all() entirely (Waiman Long) [1631297] {CVE-2018-17182} - [mm] mm, vmacache: hash addresses based on pmd (Waiman Long) [1631297] {CVE-2018-17182} - [mm] mm: Allocate the mm_cpumask (mm->cpu_bitmap) dynamically based on nr_cpu_ids (Waiman Long) [1631297] {CVE-2018-17182} - [infiniband] IB/hfi1: Invalid NUMA node information can cause a divide by zero (Alex Estrin) [1622222] - [nvdimm] libnvdimm: Export max available extent (Jeff Moyer) [1627874] - [nvdimm] libnvdimm: Use max contiguous area for namespace size (Jeff Moyer) [1627874] - [netdrv] ice: Fix and update driver version string (Jonathan Toppins) [1611786] - [netdrv] ice: Introduce SERVICE_DIS flag and service routine functions (Jonathan Toppins) [1611786] - [netdrv] ice: Enable VSI Rx/Tx pruning only when VLAN 0 is active (Jonathan Toppins) [1611786] - [netdrv] ice: Enable firmware logging during device initialization (Jonathan Toppins) [1611786] - [netdrv] ice: Implement ice_bridge_getlink and ice_bridge_setlink (Jonathan Toppins) [1611786] - [netdrv] ice: Add support for Tx hang, Tx timeout and malicious driver detection (Jonathan Toppins) [1611786] - [netdrv] ice: Clean up register file (Jonathan Toppins) [1611786] - [netdrv] ice: Implement handlers for ethtool PHY/link operations (Jonathan Toppins) [1611786] - [netdrv] ice: Refactor VSI allocation, deletion and rebuild flow (Jonathan Toppins) [1611786] - [netdrv] ice: Refactor switch rule management structures and functions (Jonathan Toppins) [1611786] - [netdrv] ice: Code optimization for ice_fill_sw_rule() (Jonathan Toppins) [1611786] - [netdrv] ice: Prevent control queue operations during reset (Jonathan Toppins) [1611786] - [netdrv] ice: Update request resource command to latest specification (Jonathan Toppins) [1611786] - [netdrv] ice: Updates to Tx scheduler code (Jonathan Toppins) [1611786] - [netdrv] ice: Rework flex descriptor programming (Jonathan Toppins) [1611786] - [netdrv] net/mlx5: Fix SQ offset in QPs with small RQ (Alaa Hleihel) [1623367] - [x86] x86/spec_ctrl: Make IBRS code work with SSBD mitigation (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Auto-enable IBRS on Skylake (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Extend spectre_v2 boot option to support IBRS (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Boot time IBRS initialization (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Add IBRS code to the 64-bit assembly entry code (Waiman Long) [1565180] - [x86] x86/cpufeatures: Increase NCAPINTS for future extension (Waiman Long) [1565180] - [netdrv] ice: Trivial formatting fixes (Jonathan Toppins) [1611783] - [netdrv] ice: Change struct members from bool to u8 (Jonathan Toppins) [1611783] - [netdrv] ice: Fix potential return of uninitialized value (Jonathan Toppins) [1611783] - [netdrv] ice: Fix a few null pointer dereference issues (Jonathan Toppins) [1611783] - [netdrv] ice: Update to interrupts enabled in OICR (Jonathan Toppins) [1611783] - [netdrv] ice: Set VLAN flags correctly (Jonathan Toppins) [1611783] - [netdrv] ice: Use order_base_2 to calculate higher power of 2 (Jonathan Toppins) [1611783] - [netdrv] ice: Fix bugs in control queue processing (Jonathan Toppins) [1611783] - [netdrv] ice: Clean control queues only when they are initialized (Jonathan Toppins) [1611783] - [netdrv] ice: Report stats for allocated queues via ethtool stats (Jonathan Toppins) [1611783] - [netdrv] ice: Cleanup magic number (Jonathan Toppins) [1611783] - [netdrv] ice: Remove unnecessary node owner check (Jonathan Toppins) [1611783] - [netdrv] ice: Fix multiple static analyser warnings (Jonathan Toppins) [1611783] - [virt] KVM: VMX: fixes for vmentry_l1d_flush module parameter (Waiman Long) [1616248] {CVE-2018-15572} - [virt] KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled (Waiman Long) [1616248] {CVE-2018-15572} - [virt] x86/kvm/vmx: Fix coding style in vmx_setup_l1d_flush() (Waiman Long) [1616248] {CVE-2018-15572} - [x86] x86/speculation: Support Enhanced IBRS on future CPUs (Waiman Long) [1614144] - [x86] x86/speculation: Protect against userspace-userspace spectreRSB (Waiman Long) [1616248] {CVE-2018-15572} - [x86] x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation (Waiman Long) [1616248] {CVE-2018-15572} - [cpufreq] cpufreq: Fix a circular lock dependency problem (Waiman Long) [1599154] - [kernel] cpu/hotplug: Add a cpus_read_trylock() function (Waiman Long) [1599154] - [virt] xen/spinlock: Don't use pvqspinlock if only 1 vCPU (Waiman Long) [1618486]- [mailbox] mailbox: PCC: handle parse error (David Arcari) [1630382] - [hv] vmbus: don't return values for uninitalized channels (Vitaly Kuznetsov) [1617954] - [mm] kernel/memremap, kasan: make ZONE_DEVICE with work with KASAN (Bill O'Donnell) [1629578] - [mm] mm: fix BUG_ON() in vmf_insert_pfn_pud() from VM_MIXEDMAP removal (Jeff Moyer) [1622171] - [mm] dax: remove VM_MIXEDMAP for fsdax and device dax (Jeff Moyer) [1622171]- [i2c] i2c: i801: fix DNV's SMBCTRL register offset (David Arcari) [1628861] - [fs] ceph: avoid a use-after-free in ceph_destroy_options() (Ilya Dryomov) [1629884] - [fs] ceph: fix incorrect use of strncpy (Ilya Dryomov) [1629884] - [block] rbd: support cloning across namespaces (Ilya Dryomov) [1629884] - [block] rbd: factor out get_parent_info() (Ilya Dryomov) [1629884] - [block] rbd: support for images within namespaces (Ilya Dryomov) [1629884] - [block] rbd: pass rbd_spec into parse_rbd_opts_token() (Ilya Dryomov) [1629884] - [net] libceph: weaken sizeof check in ceph_x_verify_authorizer_reply() (Ilya Dryomov) [1629884] - [net] libceph: check authorizer reply/challenge length before reading (Ilya Dryomov) [1629884] - [net] libceph: implement CEPHX_V2 calculation mode (Ilya Dryomov) [1629884] - [net] libceph: add authorizer challenge (Ilya Dryomov) [1629884] - [net] libceph: factor out encrypt_authorizer() (Ilya Dryomov) [1629884] - [net] libceph: factor out __ceph_x_decrypt() (Ilya Dryomov) [1629884] - [net] libceph: factor out __prepare_write_connect() (Ilya Dryomov) [1629884] - [net] libceph: store ceph_auth_handshake pointer in ceph_connection (Ilya Dryomov) [1629884] - [pci] PCI: pciehp: Deduplicate presence check on probe & resume (Myron Stowe) [1583983] - [pci] PCI: pciehp: Avoid implicit fallthroughs in switch statements (Myron Stowe) [1583983] - [pci] PCI: Whitelist Thunderbolt ports for runtime D3 (Myron Stowe) [1583983] - [pci] PCI: Whitelist native hotplug ports for runtime D3 (Myron Stowe) [1583983] - [pci] PCI: sysfs: Resume to D0 on function reset (Myron Stowe) [1583983] - [pci] PCI: pciehp: Resume parent to D0 on config space access (Myron Stowe) [1583983] - [pci] PCI: pciehp: Resume to D0 on enable/disable (Myron Stowe) [1583983] - [pci] PCI: pciehp: Support interrupts sent from D3hot (Myron Stowe) [1583983] - [pci] PCI: pciehp: Obey compulsory command delay after resume (Myron Stowe) [1583983] - [pci] PCI: pciehp: Clear spurious events earlier on resume (Myron Stowe) [1583983] - [pci] PCI: portdrv: Deduplicate PM callback iterator (Myron Stowe) [1583983] - [pci] PCI: pciehp: Avoid slot access during reset (Myron Stowe) [1583983] - [pci] PCI: pciehp: Always enable occupied slot on probe (Myron Stowe) [1583983] - [pci] PCI: pciehp: Become resilient to missed events (Myron Stowe) [1583983] - [pci] PCI: pciehp: Tolerate initially unstable link (Myron Stowe) [1583983] - [pci] PCI: pciehp: Declare pciehp_enable/disable_slot() static (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop enable/disable lock (Myron Stowe) [1583983] - [pci] PCI: pciehp: Enable/disable exclusively from IRQ thread (Myron Stowe) [1583983] - [pci] PCI: pciehp: Track enable/disable status (Myron Stowe) [1583983] - [pci] PCI: pciehp: Publish to user space last on probe (Myron Stowe) [1583983] - [pci] PCI: hotplug: Demidlayer registration with the core (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop slot workqueue (Myron Stowe) [1583983] - [pci] PCI: pciehp: Handle events synchronously (Myron Stowe) [1583983] - [pci] PCI: pciehp: Stop blinking on slot enable failure (Myron Stowe) [1583983] - [pci] PCI: pciehp: Convert to threaded polling (Myron Stowe) [1583983] - [pci] PCI: pciehp: Convert to threaded IRQ (Myron Stowe) [1583983] - [pci] PCI: pciehp: Document struct slot and struct controller (Myron Stowe) [1583983] - [pci] PCI: pciehp: Declare pciehp_unconfigure_device() void (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop unnecessary NULL pointer check (Myron Stowe) [1583983] - [pci] PCI: pciehp: Fix unprotected list iteration in IRQ handler (Myron Stowe) [1583983] - [pci] PCI: pciehp: Fix use-after-free on unplug (Myron Stowe) [1583983] - [pci] PCI: hotplug: Don't leak pci_slot on registration failure (Myron Stowe) [1583983] - [pci] PCI: hotplug: Delete skeleton driver (Myron Stowe) [1583983] - [netdrv] be2net: Use Kconfig flag to support for enabling/disabling adapters (Petr Oros) [1611768] - [acpi] ACPICA: Reference Counts: increase max to 0x4000 for large servers (Frank Ramsay) [1618760]- [net] udp6: add missing checks on edumux packet processing (Paolo Abeni) [1625954] - [net] udp4: fix IP_CMSG_CHECKSUM for connected sockets (Paolo Abeni) [1625954] - [s390] s390/pci: fix out of bounds access during irq setup (Hendrik Brueckner) [1627462] - [nvdimm] libnvdimm: fix ars_status output length calculation (Jeff Moyer) [1616307]- [scsi] scsi: lpfc: Correct MDS diag and nvmet configuration (Dick Kennedy) [1628323] - [iommu] iommu/arm-smmu: workaround DMA mode issues (Mark Salter) [1624077] - [x86] x86/microcode: Allow late microcode loading with SMT disabled (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] tools headers: Synchronise x86 cpufeatures.h for L1TF additions (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/mm/kmmio: Make the tracer robust against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/mm/pat: Make set_memory_np() L1TF safe (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Invert all not present mappings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Fix SMT supported evaluation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation: Simplify sysfs report of VMX L1TF vulnerability (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation/l1tf: Remove Yonah processors from not vulnerable list (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86: Don't include linux/irq.h from asm/hardirq.h (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond' (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: detect SMT disabled by BIOS (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation/l1tf: Fix typos (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Initialize the vmx_l1d_flush_pages' content (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation: Add section about CPU vulnerabilities (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/bugs, kvm: Introduce boot-time control of L1TF mitigations (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Expose SMT control init function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Allow runtime control of L1D flush (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Serialize L1D flush parameter setter (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Add static key for flush always (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Move l1tf setup function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/l1tf: Handle EPT disabled state proper (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Drop L1TF MSR list approach (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/litf: Introduce vmx status variable (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Online siblings when SMT control is turned on (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add find_msr() helper function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest numbers (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D flush logic (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D MSR based flush (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D flush algorithm (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add module argument for L1TF mitigation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Boot HT siblings at least once (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Revert "x86/apic: Ignore secondary threads if nosmt=force" (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Fix up pte->pfn conversion for PAE (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect PAE swap entries against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpufeatures: Add detection of L1D cache flush support (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Extend 64bit swap file size limit (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/apic: Ignore secondary threads if nosmt=force (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/AMD: Evaluate smp_num_siblings early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/CPU/AMD: Do not check CPUID max ext level before parsing SMP info (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/intel: Evaluate smp_num_siblings early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/topology: Provide detect_extended_topology_early() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/common: Provide detect_ht_early() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/AMD: Remove the pointless detect_ht() call (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu: Remove the pointless CPU printout (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Provide knobs to control SMT (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Split do_cpu_down() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Make bringup/teardown of smp threads symmetric (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/topology: Provide topology_smt_supported() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/smp: Provide topology_is_primary_thread() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] sched/smt: Update sched_smt_present at runtime (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/bugs: Move the l1tf function and define pr_fmt properly (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Limit swap file size to MAX_PA/2 (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Add sysfs reporting for l1tf (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Make sure the first page is always reserved (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect swap entries against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Change order of offset/type in swap entry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646}- [pci] PCI/DPC: Remove indirection waiting for inactive link (Myron Stowe) [1485556] - [pci] PCI/DPC: Use threaded IRQ for bottom half handling (Myron Stowe) [1485556] - [pci] PCI/DPC: Print AER status in DPC event handling (Myron Stowe) [1485556] - [pci] PCI/DPC: Remove rp_pio_status from dpc struct (Myron Stowe) [1485556] - [pci] PCI/DPC: Defer event handling to work queue (Myron Stowe) [1485556] - [pci] PCI/DPC: Leave interrupts enabled while handling event (Myron Stowe) [1485556] - [net] net/mlx5e: Offload TC matching on tos/ttl for ip tunnels (Erez Alfasi) [1615121] - [net] net/mlx5e: Support setup of tos and ttl for tunnel key TC action offload (Erez Alfasi) [1615121] - [net] net/mlx5e: Use ttl from route lookup on tc encap offload only if needed (Erez Alfasi) [1615121] - [net] net/sched: cls_flower: Support matching on ip tos and ttl for tunnels (Erez Alfasi) [1615121] - [net] flow_dissector: Dissect tos and ttl from the tunnel info (Erez Alfasi) [1615121] - [net] net/sched: tunnel_key: Allow to set tos and ttl for tc based ip tunnels (Erez Alfasi) [1615121] - [net] net/sched: act_tunnel_key: disambiguate metadata dst error cases (Erez Alfasi) [1615121] - [net] net/sched: add tunnel option support to act_tunnel_key (Erez Alfasi) [1615121] - [iommu] iommu/amd: Add support for IOMMU XT mode (Suravee Suthikulpanit) [1504485] - [iommu] iommu/amd: Add support for higher 64-bit IOMMU Control Register (Suravee Suthikulpanit) [1504485] - [x86] x86: irq_remapping: Move irq remapping mode enum (Suravee Suthikulpanit) [1504485] - [firmware] dcdbas: Add support for WSMT ACPI table (Charles Rose) [1502286]- [documentation] scsi: documentation: add scsi_mod.use_blk_mq to scsi-parameters (Ewan Milne) [1600014] - [scsi] scsi: core: Update SCSI_MQ_DEFAULT help text to match default (Ewan Milne) [1600014] - [scsi] scsi: core: switch to scsi-mq by default (Ewan Milne) [1600014] - [pci] PCI: Match Root Port's MPS to endpoint's MPSS as necessary (Myron Stowe) [1502324] - [pci] PCI: Skip MPS logic for Virtual Functions (VFs) (Myron Stowe) [1502324] - [pci] PCI: Check for PCIe Link downtraining (Myron Stowe) [1502324] - [pci] PCI: Workaround IDT switch ACS Source Validation erratum (Myron Stowe) [1502324] - [of] OF: Don't set default coherent DMA mask (Mark Salter) [1581822] - [acpi] ACPI/IORT: Don't set default coherent DMA mask (Mark Salter) [1581822] - [iommu] iommu/dma: Respect bus DMA limit for IOVAs (Mark Salter) [1581822] - [of] of/device: Set bus DMA mask as appropriate (Mark Salter) [1581822] - [acpi] ACPI/IORT: Set bus DMA mask as appropriate (Mark Salter) [1581822] - [kernel] dma-mapping: Generalise dma_32bit_limit flag (Mark Salter) [1581822] - [acpi] ACPI/IORT: Support address size limit for root complexes (Mark Salter) [1581822] - [of] of/platform: Initialise default DMA masks (Mark Salter) [1581822] - [net] Bluetooth: hidp: buffer overflow in hidp_process_report (Gopal Tiwari) [1623073] {CVE-2018-9363} - [irqchip] irqchip/gic-v3-its: Reduce minimum LPI allocation to 1 for PCI devices (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Honor hypervisor enforced LPI range (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3: Expose GICD_TYPER in the rdist structure (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Drop chunk allocation compatibility (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Move minimum LPI requirements to individual busses (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Use full range of LPIs (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Refactor LPI allocator (Mark Salter) [1550500]- [netdrv] hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe() (Vitaly Kuznetsov) [1625609] - [netdrv] hv_netvsc: ignore devices that are not PCI (Vitaly Kuznetsov) [1625609] - [netdrv] hv/netvsc: Fix NULL dereference at single queue mode fallback (Vitaly Kuznetsov) [1625609] - [netdrv] hv_netvsc: Add per-cpu ethtool stats for netvsc (Vitaly Kuznetsov) [1625609] - [pci] PCI: shpchp: Separate existence of SHPC and permission to use it (Steve Best) [1622953] - [powerpc] KVM: PPC: Book3S HV: Don't truncate HPTE index in xlate function (David Gibson) [1625513] - [kernel] rh_kabi: Add macros to size and extend structs (Prarit Bhargava) [1564570] - [pci] PCI: Remove unnecessary include of (Myron Stowe) [1622672] - [wireless] iwlwifi: Remove unnecessary include of (Myron Stowe) [1622672] - [wireless] ath9k: Remove unnecessary include of (Myron Stowe) [1622672] - [netdrv] igb: Remove unnecessary include of (Myron Stowe) [1622672] - [pci] PCI/ASPM: Convert to use sysfs_match_string() helper (Myron Stowe) [1622672] - [virt] KVM: s390: Properly lock mm context allow_gmap_hpage_1m setting (Thomas Huth) [1623513] - [virt] KVM: s390: vsie: copy wrapping keys to right place (Thomas Huth) [1623513] - [virt] KVM: s390: Fix pfmf and conditional skey emulation (Thomas Huth) [1623513] - [virt] KVM: s390: Fix storage attributes migration with memory slots (Thomas Huth) [1623513] - [virt] KVM: s390: a utility function for migration (Thomas Huth) [1623513]- [lib] vsprintf: Add command line option debug_boot_weak_hash (Prarit Bhargava) [1625687] - [netdrv] i40e: Fix for Tx timeouts when interface is brought up if DCB is enabled (Stefan Assmann) [1616147] - [misc] ocxl: Fix page fault handler in case of fault on dying process (Steve Best) [1624644] - [edac] EDAC, sb_edac: Add support for systems with segmented PCI buses (Aristeu Rozanski) [1621849] - [netdrv] xen-netfront: fix warn message as irq device name has '/' (Vitaly Kuznetsov) [1576160] - [arm64] arm64, kaslr: export offset in VMCOREINFO ELF notes (Bhupesh Sharma) [1624246] - [rpmspec] redhat: Move gfs2 and dlm out of kernel-modules-extra (Andrew Price) [1623511] - [powerpc] powerpc/topology: Get topology for shared processors at boot (Steve Best) [1620039] - [fs] gfs2: Don't set GFS2_RDF_UPTODATE when the lvb is updated (Robert S Peterson) [1622057] - [fs] gfs2: improve debug information when lvb mismatches are found (Robert S Peterson) [1622057] - [fs] gfs2: cleanup: call gfs2_rgrp_ondisk2lvb from gfs2_rgrp_out (Robert S Peterson) [1622057] - [x86] Fix x86 32-bit invalid cpu boot failure message (Prarit Bhargava) [1571456] - [net] net/ipv6: init ip6 anycast rt->dst.input as ip6_input (Hangbin Liu) [1615671] - [pci] PCI/AER: Don't clear AER bits if error handling is Firmware-First (Myron Stowe) [1621933] - [pci] PCI/AER: Remove duplicate PCI_EXP_AER_FLAGS definition (Myron Stowe) [1621933] - [pci] PCI/portdrv: Remove pcie_portdrv_err_handler.slot_reset (Myron Stowe) [1621933] - [pci] PCI/AER: Clear device status bits during ERR_COR handling (Myron Stowe) [1621933] - [pci] PCI/AER: Clear device status bits during ERR_FATAL and ERR_NONFATAL (Myron Stowe) [1621933] - [pci] PCI/AER: Remove ERR_FATAL code from ERR_NONFATAL path (Myron Stowe) [1621933] - [pci] PCI/AER: Factor out ERR_NONFATAL status bit clearing (Myron Stowe) [1621933] - [pci] PCI/AER: Clear only ERR_NONFATAL bits during non-fatal recovery (Myron Stowe) [1621933] - [pci] PCI/AER: Clear only ERR_FATAL status bits during fatal recovery (Myron Stowe) [1621933] - [pci] PCI/AER: Honor "pcie_ports=native" even if HEST sets FIRMWARE_FIRST (Myron Stowe) [1621933] - [pci] PCI/AER: Add sysfs attributes for rootport cumulative stats (Myron Stowe) [1621933] - [pci] PCI/AER: Add sysfs attributes to provide AER stats and breakdown (Myron Stowe) [1621933] - [pci] PCI/AER: Define aer_stats structure for AER capable devices (Myron Stowe) [1621933] - [pci] PCI/AER: Move internal declarations to drivers/pci/pci.h (Myron Stowe) [1621933] - [pci] PCI/AER: Adopt lspci names for AER error decoding (Myron Stowe) [1621933] - [pci] PCI/AER: Expose internal API for obtaining AER information (Myron Stowe) [1621933] - [kernel] rcu: Make expedited GPs handle CPU 0 being offline (Gustavo Duarte) [1610262] - [rpmspec] Generate BootLoaderSpec config fragments ("Herton R. Krzesinski") [1619766]- [net] erspan: set erspan_ver to 1 by default when adding an erspan dev (Xin Long) [1619118] - [hv] x86/hyper-v: Fix wrong merge conflict resolution (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others() (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Check cpumask_to_vpset() return value in hyperv_flush_tlb_others_ex() (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Trace PV IPI send (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use cheaper HVCALL_SEND_IPI hypercall when possible (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use 'fast' hypercall for HVCALL_SEND_IPI (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Implement hv_do_fast_hypercall16 (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use cheaper HVCALL_FLUSH_VIRTUAL_ADDRESS_(LIST, SPACE) hypercalls when possible (Vitaly Kuznetsov) [1597652] - [netdrv] xen-netfront: fix queue name setting (Vitaly Kuznetsov) [1576160] - [scsi] lfpc: add Lancer FCoE to the removed devices (Tomas Henzl) [1602033] - [scsi] megaraid_sas: add removed id table (Tomas Henzl) [1602033] - [scsi] aacraid: add removed id table (Tomas Henzl) [1602033] - [scsi] qla4xxx: add removed id table (Tomas Henzl) [1602033] - [scsi] lpfc: add removed id table (Tomas Henzl) [1602033] - [scsi] qla2xxx: add removed id table (Tomas Henzl) [1602033] - [scsi] mpt3sas: add removed id table (Tomas Henzl) [1602033] - [scsi] be2iscsi: add removed id table (Tomas Henzl) [1602033] - [scsi] rh_taint, pci : add information about removed hardware (Tomas Henzl) [1602033] - [kernel] kernel: add SUPPORT_REMOVED kernel taint (Tomas Henzl) [1602033] - [net] sunrpc: Change rpc_print_iostats to rpc_clnt_show_stats and handle rpc_clnt clones (Dave Wysochanski) [1610373] - [net] sunrpc: Add _add_rpc_iostats() to add rpc_iostats metrics (Dave Wysochanski) [1610373] - [net] sunrpc: add _print_rpc_iostats() to output metrics for one RPC op (Dave Wysochanski) [1610373]- [net] xdp: exclude XDP from kABI guarantee (Jiri Benc) [1568551] - [kernel] rh_kabi: introduce RH_KABI_EXCLUDE (Jiri Benc) [1568551] - [powerpc] powerpc/powernv/pci: Work around races in PCI bridge enabling (Steve Best) [1620035] - [block] blk-wbt: fix IO hang in wbt_wait() (Ming Lei) [1614198] - [block] blkcg: Make blkg_root_lookup() work for queues in bypass mode (Ming Lei) [1614198] - [block] null_blk: add lock drop/acquire annotation (Ming Lei) [1614198] - [block] Blk-throttle: reduce tail io latency when iops limit is (Ming Lei) [1614198] - [block] block: paride: pd: mark expected switch fall-throughs (Ming Lei) [1614198] - [block] block: Ensure that a request queue is dissociated from the (Ming Lei) [1614198] - [block] block: Introduce blk_exit_queue() (Ming Lei) [1614198] - [block] blkcg: Introduce blkg_root_lookup() (Ming Lei) [1614198] - [block] block: Remove two superfluous #include directives (Ming Lei) [1614198] - [block] blk-mq: count the hctx as active before allocating tag (Ming Lei) [1614198] - [block] block: bvec_nr_vecs() returns value for wrong slab (Ming Lei) [1614198] - [block] drivers/block/drbd: remove the null check for (Ming Lei) [1614198] - [block] drivers/block/aoe/aoedev: NULL check is not needed for (Ming Lei) [1614198] - [block] drivers/block/mtip32xx: remove the null check for (Ming Lei) [1614198] - [block] cfq: Suppress compiler warnings about comparisons (Ming Lei) [1614198] - [block] cfq: Annotate fall-through in a switch statement (Ming Lei) [1614198] - [block] blk-wbt: Avoid lock contention and thundering herd issue in (Ming Lei) [1590363] - [block] target/loop: depend on SCSI (Ming Lei) [1614198] - [block] xen-blkfront: use true and false for boolean values (Ming Lei) [1614198] - [block] lightnvm: remove minor version check for 2.0 (Ming Lei) [1614198] - [block] scsi: Check sense buffer size at build time (Ming Lei) [1614198] - [block] libata-scsi: Move sense buffers onto stack (Ming Lei) [1614198] - [block] cdrom: Use struct scsi_sense_hdr internally (Ming Lei) [1614198] - [block] ide-cd: Remove redundant sense buffer (Ming Lei) [1614198] - [block] block: Switch struct packet_command to use struct (Ming Lei) [1614198] - [block] target: don't depend on SCSI (Ming Lei) [1614198] - [block] scsi: build scsi_common.o for all scsi passthrough request (Ming Lei) [1614198] - [block] scsi: cxlflash: Drop unused sense buffers (Ming Lei) [1614198] - [block] ide-cd: Drop unused sense buffers (Ming Lei) [1614198] - [block] blk-mq: fix updating tags depth (Ming Lei) [1611900] - [block] block: really disable runtime-pm for blk-mq (Ming Lei) [1611902] - [block] aoe: mark expected switch fall-through (Ming Lei) [1614198] - [block] block: make iolatency avg_lat exponentially decay (Ming Lei) [1614198] - [block] blk-cgroup: clear the throttle queue on fork (Ming Lei) [1614198] - [block] blk-cgroup: hold the queue ref during throttling (Ming Lei) [1614198] - [block] blk-iolatency: fix blkg leak in timer_fn (Ming Lei) [1614198] - [block] block/bsg-lib: use PTR_ERR_OR_ZERO to simplify the flow path (Ming Lei) [1614198] - [block] t10-pi: provide empty t10_pi_complete() for (Ming Lei) [1614198] - [block] block: blk_init_allocated_queue() set q->fq as NULL in the (Ming Lei) [1614198] - [block] nvme: use blk API to remap ref tags for IOs with metadata (Ming Lei) [1614198] - [block] block: move dif_prepare/dif_complete functions to block layer (Ming Lei) [1614198] - [block] block: move ref_tag calculation func to the block layer (Ming Lei) [1614198] - [block] block: don't account for split bio's size in cgroup stats (Ming Lei) [1614198] - [block] pktcdvd: Fix possible Spectre-v1 for pkt_devs (Ming Lei) [1614198] - [block] partitions/aix: append null character to print data from disk (Ming Lei) [1614198] - [block] partitions/aix: fix usage of uninitialized lv_info and lvname (Ming Lei) [1614198] - [block] readahead: stricter check for bdi io_pages (Ming Lei) [1614198] - [block] scsi: virtio_scsi: fix pi_bytes(out, in) on 4 KiB block size (Ming Lei) [1614198] - [block] block: move bio_integrity_(intervals, bytes) into blkdev.h (Ming Lei) [1614198] - [block] xen/blkfront: remove unused macros (Ming Lei) [1614198] - [block] block: allow max_discard_segments to be stacked (Ming Lei) [1614198] - [block] block: unexport bio_clone_bioset (Ming Lei) [1614198] - [block] md: remove a bogus comment (Ming Lei) [1614198] - [block] block: remove bio_clone_kmalloc (Ming Lei) [1614198] - [block] exofs: use bio_clone_fast in _write_mirror (Ming Lei) [1614198] - [block] bcache: don't clone bio in bch_data_verify (Ming Lei) [1614198] - [block] block: bio_set_pages_dirty can't see NULL bv_page in a valid (Ming Lei) [1614198] - [block] block: simplify bio_check_pages_dirty (Ming Lei) [1614198] - [block] block: Rename the null_blk_mod kernel module back into (Ming Lei) [1614198] - [block] blk-mq: fail the request in case issue failure (Ming Lei) [1614305] - [block] blk-rq-qos: make depth comparisons unsigned (Ming Lei) [1614198] - [block] blkcg: Track DISCARD statistics and output them in cgroup (Ming Lei) [1614198] - [block] block: Track DISCARD statistics and output them in stat and (Ming Lei) [1614198] - [block] block: Add and use op_stat_group() for indexing disk_stat (Ming Lei) [1614198] - [block] block: Define and use STAT_READ and STAT_WRITE (Ming Lei) [1614198] - [block] block: Add part_stat_read_accum to read across field entries (Ming Lei) [1614198] - [block] block: make bdev_ops->rw_page() take a REQ_OP instead of bool (Ming Lei) [1614198] - [block] pktcdvd: remove assignment in if condition (Ming Lei) [1614198] - [block] blk-mq: issue directly if hw queue isn't busy in case of (Ming Lei) [1614305] - [block] blk-iolatency: truncate our current time (Ming Lei) [1614198] - [block] blk-iolatency: don't change the latency window (Ming Lei) [1614198] - [block] block: remove blkdev_entry_to_request() macro (Ming Lei) [1614198] - [block] block: skd: Use pad printk format for dma_addr_t values (Ming Lei) [1614198] - [block] bsg: remove read/write support (Ming Lei) [1614198] - [block] blk-iolatency: fix max_depth comparisons (Ming Lei) [1614198] - [block] block: iolatency: avoid 64-bit division (Ming Lei) [1614198] - [block] block/DAC960.c: fix defined but not used build warnings (Ming Lei) [1614198] - [block] null_blk: add zone support (Ming Lei) [1614198] - [block] null_blk: move shared definitions to header file (Ming Lei) [1614198] - [block] block: Add default switch case to blk_pm_allow_request() to (Ming Lei) [1614198] - [block] block: fix infinite loop if the device loses discard (Ming Lei) [1614198] - [block] block, mm: remove unnecessary __GFP_HIGH flag (Ming Lei) [1614198] - [block] null_blk: remove NULLB_DEV_FL_CONFIGURED on turning off nullb (Ming Lei) [1614198] - [block] mm: skip readahead if the cgroup is congested (Ming Lei) [1614198] - [block] Documentation: add a doc for blk-iolatency (Ming Lei) [1614198] - [block] block: introduce blk-iolatency io controller (Ming Lei) [1614198] - [block] rq-qos: introduce dio_bio callback (Ming Lei) [1614198] - [block] block: remove external dependency on wbt_flags (Ming Lei) [1614198] - [block] blk-rq-qos: refactor out common elements of blk-wbt (Ming Lei) [1614198] - [block] blk-stat: export helpers for modifying blk_rq_stat (Ming Lei) [1614198] - [block] memcontrol: schedule throttling if we are congested (Ming Lei) [1614198] - [block] blkcg: add generic throttling mechanism (Ming Lei) [1614198] - [block] swap, blkcg: issue swap io with the appropriate context (Ming Lei) [1614198] - [block] blk: introduce REQ_SWAP (Ming Lei) [1614198] - [block] blk-cgroup: allow controllers to output their own stats (Ming Lei) [1614198] - [block] block: introduce bio_issue_as_root_blkg (Ming Lei) [1614198] - [block] block: add bi_blkg to the bio for cgroups (Ming Lei) [1614198] - [block] blk-mq: dequeue request one by one from sw queue if hctx is (Ming Lei) [1614305] - [block] block/loop: mark expected switch fall-through (Ming Lei) [1614198] - [block] drbd: mark expected switch fall-throughs (Ming Lei) [1614198] - [block] blk-mq: only attempt to merge bio if there is rq in sw queue (Ming Lei) [1614305] - [block] blk-mq: use list_splice_tail_init() to insert requests (Ming Lei) [1614305] - [block] blk-mq: fix typo in a function comment (Ming Lei) [1614198] - [block] blk-mq: code clean-up by adding an API to clear set->mq_map (Ming Lei) [1614198] - [block] paride: remove redundant variable n (Ming Lei) [1614198] - [block] partitions/ldm: remove redundant pointer dgrp (Ming Lei) [1614198] - [block] loop: remove redundant pointer inode (Ming Lei) [1614198] - [block] block/floppy: remove redundant variable dflags (Ming Lei) [1614198] - [block] Block: blk-throttle: set low_valid immediately once one (Ming Lei) [1614198] - [block] Blktrace: bail out early if block debugfs is not configured (Ming Lei) [1614198] - [block] block: Document how blk_update_request() handles (Ming Lei) [1614198] - [block] drbd: Do not redefine __must_hold() (Ming Lei) [1614198] - [block] blk-mq: avoid to synchronize rcu inside blk_cleanup_queue() (Ming Lei) [1597067] - [block] blk-mq: remove synchronize_rcu() from (Ming Lei) [1597067] - [block] blk-mq: introduce new lock for protecting hctx->dispatch_wait (Ming Lei) [1597067] - [block] blk-mq: don't pass **hctx to blk_mq_mark_tag_wait() (Ming Lei) [1597067] - [block] blk-mq: cleanup blk_mq_get_driver_tag() (Ming Lei) [1597067] - [block] block, bfq: give a better name to bfq_bfqq_may_idle (Ming Lei) [1614198] - [block] block, bfq: fix service being wrongly set to zero in case of (Ming Lei) [1614198] - [block] block, bfq: do not expire a queue that will deserve dispatch (Ming Lei) [1614198] - [block] block, bfq: add/remove entity weights correctly (Ming Lei) [1614198] - [block] block: Make struct request_queue smaller for (Ming Lei) [1614198] - [block] block: Inline blk_queue_nr_zones() (Ming Lei) [1614198] - [block] block: Remove bdev_nr_zones() (Ming Lei) [1614198] - [block] include/uapi/linux/blkzoned.h: Remove a superfluous __packed (Ming Lei) [1614198] - [block] block: Remove a superfluous cast from blkdev_report_zones() (Ming Lei) [1614198]- [net] tls: mark as Tech Preview (Sabrina Dubroca) [1570255] - [pci] PCI/VPD: Check for VPD access completion before checking for timeout (Myron Stowe) [1618820] - [rpmspec] redhat: remove bootwrapper subpackage (Gustavo Duarte) [1578399] - [virt] kvm: x86: Set highest physical address bits in non-present/reserved SPTEs (Paolo Bonzini) [1614808] - [virt] KVM/x86: Use CC_SET()/CC_OUT in arch/x86/kvm/vmx.c (Paolo Bonzini) [1614808] - [virt] KVM: X86: Implement PV IPIs in linux guest (Paolo Bonzini) [1614808] - [virt] KVM: X86: Add kvm hypervisor init time platform setup callback (Paolo Bonzini) [1614808] - [virt] KVM: X86: Implement "send IPI" hypercall (Paolo Bonzini) [1614808] - [virt] KVM/x86: Move X86_CR4_OSXSAVE check into kvm_valid_sregs() (Paolo Bonzini) [1614808] - [virt] KVM: x86: Skip pae_root shadow allocation if tdp enabled (Paolo Bonzini) [1614808] - [virt] KVM/MMU: Combine flushing remote tlb in mmu_set_spte() (Paolo Bonzini) [1614808] - [virt] KVM: vmx: skip VMWRITE of HOST_(FS, GS)_BASE when possible (Paolo Bonzini) [1614808] - [virt] KVM: vmx: skip VMWRITE of HOST_(FS, GS)_SEL when possible (Paolo Bonzini) [1614808] - [virt] KVM: vmx: always initialize HOST_(FS, GS)_BASE to zero during setup (Paolo Bonzini) [1614808] - [virt] KVM: vmx: move struct host_state usage to struct loaded_vmcs (Paolo Bonzini) [1614808] - [virt] KVM: vmx: compute need to reload FS/GS/LDT on demand (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: remove a misleading comment regarding vmcs02 fields (Paolo Bonzini) [1614808] - [virt] KVM: vmx: rename __vmx_load_host_state() and vmx_save_host_state() (Paolo Bonzini) [1614808] - [virt] KVM: vmx: add dedicated utility to access guest's kernel_gs_base (Paolo Bonzini) [1614808] - [virt] KVM: vmx: track host_state.loaded using a loaded_vmcs pointer (Paolo Bonzini) [1614808] - [virt] KVM: vmx: refactor segmentation code in vmx_save_host_state() (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Fix fault priority for VMX operations (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Fix fault vector for VMX operation at CPL > 0 (Paolo Bonzini) [1614808] - [virt] KVM: try __get_user_pages_fast even if not in atomic context (Paolo Bonzini) [1614808] - [virt] KVM: vmx: Add tlb_remote_flush callback support (Paolo Bonzini) [1614808] - [virt] KVM: x86: Add tlb remote flush callback in kvm_x86_ops (Paolo Bonzini) [1614808] - [virt] X86/Hyper-V: Add hyperv_nested_flush_guest_mapping ftrace support (Paolo Bonzini) [1614808] - [virt] X86/Hyper-V: Add flush HvFlushGuestPhysicalAddressSpace hypercall support (Paolo Bonzini) [1614808] - [virt] x86/kvm: Don't use pvqspinlock code if only 1 vCPU (Paolo Bonzini) [1614808] - [virt] KVM/MMU: Simplify __kvm_sync_page() function (Paolo Bonzini) [1614808] - [virt] kvm: x86: Remove CR3_PCID_INVD flag (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add multi-entry LRU cache for previous CR3s (Paolo Bonzini) [1614808] - [virt] kvm: x86: Flush only affected TLB entries in kvm_mmu_invlpg* (Paolo Bonzini) [1614808] - [virt] kvm: x86: Skip shadow page resync on CR3 switch when indicated by guest (Paolo Bonzini) [1614808] - [virt] kvm: x86: Support selectively freeing either current or previous MMU root (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add a root_hpa parameter to kvm_mmu->invlpg() (Paolo Bonzini) [1614808] - [virt] kvm: x86: Skip TLB flush on fast CR3 switch when indicated by guest (Paolo Bonzini) [1614808] - [virt] kvm: vmx: Support INVPCID in shadow paging mode (Paolo Bonzini) [1614808] - [virt] kvm: x86: Propagate guest PCIDs to host PCIDs (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add ability to skip TLB flush when switching CR3 (Paolo Bonzini) [1614808] - [virt] kvm: x86: Use fast CR3 switch for nested VMX (Paolo Bonzini) [1614808] - [virt] kvm: x86: Support resetting the MMU context without resetting roots (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add support for fast CR3 switch across different MMU modes (Paolo Bonzini) [1614808] - [virt] kvm: x86: Introduce KVM_REQ_LOAD_CR3 (Paolo Bonzini) [1614808] - [virt] kvm: x86: Introduce kvm_mmu_calc_root_page_role() (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add fast CR3 switch code path (Paolo Bonzini) [1614808] - [virt] kvm: x86: Avoid taking MMU lock in kvm_mmu_sync_roots if no sync is needed (Paolo Bonzini) [1614808] - [virt] kvm: x86: Make sync_page() flush remote TLBs once only (Paolo Bonzini) [1614808] - [virt] KVM: MMU: drop vcpu param in gpte_access (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Separate logic allocating shadow vmcs to a function (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Mark vmcs header as shadow in case alloc_vmcs_cpu() allocate shadow vmcs (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Expose VMCS shadowing to L1 guest (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Do not forward VMREAD/VMWRITE VMExits to L1 if required so by vmcs12 vmread/vmwrite bitmaps (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: vmread/vmwrite: Use shadow vmcs12 if running L2 (Paolo Bonzini) [1614808] - [virt] KVM: selftests: add tests for shadow VMCS save/restore (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: include shadow vmcs12 in nested state (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Cache shadow vmcs12 on VMEntry and flush to memory on VMExit (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Verify VMCS shadowing VMCS link pointer (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Verify VMCS shadowing controls (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Introduce nested_cpu_has_shadow_vmcs() (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Fail VMLAUNCH and VMRESUME on shadow VMCS (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Allow VMPTRLD for shadow VMCS if vCPU supports VMCS shadowing (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Change vmcs12(read, write)_any() to receive vmcs12 as parameter (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Create struct for VMCS header (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add test for nested state save/restore (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Introduce KVM_CAP_NESTED_STATE (Paolo Bonzini) [1614808] - [virt] KVM: x86: do not load vmcs12 pages while still in SMM (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add basic test for state save and restore (Paolo Bonzini) [1614808] - [virt] kvm: selftests: ensure vcpu file is released (Paolo Bonzini) [1614808] - [virt] kvm: selftests: actually use all of lib/vmx.c (Paolo Bonzini) [1614808] - [virt] kvm: selftests: create a GDT and TSS (Paolo Bonzini) [1614808] - [virt] KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd (Paolo Bonzini) [1614808] - [virt] KVM: vmx: remove save/restore of host BNDCGFS MSR (Paolo Bonzini) [1614808] - [virt] KVM: Switch 'requests' to be 64-bit (explicitly) (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add cr4_cpuid_sync_test (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Read kvm->arch.emul_smt_mode under kvm->lock (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Allow creating max number of VCPUs on POWER9 (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Pack VCORE IDs to access full VCPU ID space (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Fix constant size warning (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Add of_node_put() in success path (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S: Fix matching of hardware and emulated TCE tables (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Remove mmio_vsx_tx_sx_enabled in KVM MMIO emulation (Paolo Bonzini) [1614808]- [net] tcp: Add tcp_clamp_rto_to_user_timeout() helper to improve accuracy (Michael Cambria) [1605024] - [net] tcp: Add tcp_retransmit_stamp() helper routine (Michael Cambria) [1605024] - [net] tcp: convert icsk_user_timeout from jiffies to msecs (Michael Cambria) [1605024] - [kernel] Revert sched/fair: Consider SD_NUMA when selecting the most idle group to schedule on (Lauro Ramos Venancio) [1585746] - [kernel] redhat: makefile: adjust KBUILD_CFLAGS to reflect kernel.spec for powerpc builds (Gustavo Duarte) [1582568] - [rpmspec] redhat: spec: build ppc64le kernel with -O3 (Gustavo Duarte) [1582568] - [scsi] scsi: csiostor: update csio_get_flash_params() (Arjun Vynipadath) [1503574] - [scsi] csiostor: Add a soft dep on cxgb4 driver (Arjun Vynipadath) [1503574] - [firmware] dell_rbu: make firmware payload memory uncachable (Charles Rose) [1584401]- [scsi] scsi: lpfc: update driver version to 12.0.0.6 (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Remove lpfc_enable_pbde as module parameter (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Correct LCB ACCept payload (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Limit tracking of tgt queue depth in fast path (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix driver crash when re-registering NVME rports (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix list corruption on the completion queue (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix sysfs Speed value on CNA ports (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix ELS abort on SLI-3 adapters (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: remove null check on nvmebuf (Dick Kennedy) [1613913] - [arm64] arm64: fix ACPI dependencies (Bhupesh Sharma) [1556832] - [arm64] arm64: acpi: fix alignment fault in accessing ACPI (Bhupesh Sharma) [1556832] - [firmware] efi/arm: map UEFI memory map even w/o runtime services enabled (Bhupesh Sharma) [1556832] - [firmware] efi/arm: preserve early mapping of UEFI memory map longer for BGRT (Bhupesh Sharma) [1556832] - [acpi] drivers: acpi: add dependency of EFI for arm64 (Bhupesh Sharma) [1556832] - [arm64] arm64: export memblock_reserve()d regions via /proc/iomem (Bhupesh Sharma) [1556832] - [arm64] arm64: kconfig: Ensure spinlock fastpaths are inlined if !PREEMPT (Waiman Long) [1607924] - [arm64] arm64: locking: Replace ticket lock implementation with qspinlock (Waiman Long) [1607924] - [arm64] arm64: barrier: Implement smp_cond_load_relaxed (Waiman Long) [1607924] - [scsi] scsi: lpfc: Revise copyright for new company language (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: update driver version to 12.0.0.5 (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: devloss timeout race condition caused null pointer reference (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix NVME Target crash in defer rcv logic (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Support duration field in Link Cable Beacon V1 command (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Make PBDE optimizations configurable (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix abort error path for NVMET (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix panic if driver unloaded when port is offline (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix driver not setting dpp bits correctly in doorbell word (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Add Buffer overflow check, when nvme_info larger than PAGE_SIZE (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: use monotonic timestamps for statistics (Dick Kennedy) [1600946] - [x86] mark intel knights landing and knights mill unsupported (David Arcari) [1610493] - [netdrv] igb: Remove superfluous reset to PHY and page 0 selection (Corinna Vinschen) [1612824] - [tools] selftests/powerpc: Fix ptrace-pkey for default execute permission change (Steve Best) [1498799] - [tools] selftests/powerpc: Fix core-pkey for default execute permission change (Steve Best) [1498799] - [powerpc] powerpc/pkeys: make protection key 0 less special (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Preallocate execute-only key (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Fix calculation of total pkeys (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Save the pkey registers before fork (Steve Best) [1498799] - [powerpc] powerpc/pkeys: key allocation/deallocation must not change pkey registers (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Deny read/write/execute by default (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Give all threads control of their key permissions (Steve Best) [1498799] - [s390] KVM: s390: Add huge page enablement control (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge page gmap linking support (David Hildenbrand) [1508102] - [s390] s390/mm: hugetlb pages within a gmap can not be freed (David Hildenbrand) [1508102] - [s390] KVM: s390: Beautify skey enable check (David Hildenbrand) [1508102] - [s390] KVM: s390: Add skey emulation fault handling (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge pmd storage key handling (David Hildenbrand) [1508102] - [s390] s390/mm: Clear skeys for newly mapped huge guest pmds (David Hildenbrand) [1508102] - [s390] s390/mm: Clear huge page storage keys on enable_skey (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge page dirty sync support (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd invalidation and clearing (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd notification bit setting (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd linking (David Hildenbrand) [1508102] - [s390] s390/mm: Abstract gmap notify bit setting (David Hildenbrand) [1508102] - [s390] s390/mm: Make gmap_protect_range more modular (David Hildenbrand) [1508102] - [s390] KVM: s390: Replace clear_user with kvm_clear_guest (David Hildenbrand) [1508102] - [hwmon] hwmon: (ibmpowernv) Add attributes to enable/disable sensor groups (Steve Best) [1524684] - [powerpc] powerpc/powernv: Add support to enable sensor groups (Steve Best) [1524684] - [net] net/smc: improve delete link processing (Hendrik Brueckner) [1548452] - [net] net/smc: provide fallback reason code (Hendrik Brueckner) [1548452] - [net] net/smc: use correct vlan gid of RoCE device (Hendrik Brueckner) [1548452] - [net] net/smc: fewer parameters for smc_llc_send_confirm_link() (Hendrik Brueckner) [1548452] - [net] net/smc: remove local variable page in smc_rx_splice() (Hendrik Brueckner) [1548452] - [net] net/smc: use DECLARE_BITMAP for rtokens_used_mask (Hendrik Brueckner) [1548452] - [net] net/smc: add function to get link group from link (Hendrik Brueckner) [1548452] - [net] net/smc: eliminate cursor read and write calls (Hendrik Brueckner) [1548452] - [net] net/smc: provide smc mode in smc_diag.c (Hendrik Brueckner) [1548452] - [s390] s390/ism: add device driver for internal shared memory (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D diag support (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in af_smc (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in data transfer (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in CLC messages (Hendrik Brueckner) [1548452] - [net] net/smc: add pnetid support for SMC-D and ISM (Hendrik Brueckner) [1548452] - [net] net/smc: add base infrastructure for SMC-D and ISM (Hendrik Brueckner) [1548452] - [net] net/smc: add pnetid support (Hendrik Brueckner) [1548452] - [net] net/smc: determine port attributes independent from pnet table (Hendrik Brueckner) [1548452] - [x86] mark whiskey-lake processor supported (David Arcari) [1609604] - [s390] KVM: s390: add etoken support for guests (Thomas Huth) [1612110] - [char] ipmi: do not configure ipmi for HPE m400 (Tony Camuso) [1583537] - [scsi] scsi: ipr: Format HCAM overlay ID 0x41 (Steve Best) [1498222] - [x86] x86/stacktrace: Enable HAVE_RELIABLE_STACKTRACE for the ORC unwinder (Joe Lawrence) [1587952] - [x86] x86/unwind/orc: Detect the end of the stack (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Do not fail for ORC with regs on stack (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Clarify the reliable success paths (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Remove STACKTRACE_DUMP_ONCE (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Do not unwind after user regs (Joe Lawrence) [1587952] - [infiniband] IB/rxe: Mark Soft-RoCE Transport driver as tech-preview (Don Dutile) [1605216] - [scsi] scsi: smartpqi: bump driver version to 1.1.4-130 (Don Brace) [1503736] - [scsi] scsi: smartpqi: fix critical ARM issue reading PQI index registers (Don Brace) [1503736] - [scsi] scsi: smartpqi: add inspur advantech ids (Don Brace) [1503736] - [scsi] scsi: smartpqi: improve error checking for sync requests (Don Brace) [1503736] - [scsi] scsi: smartpqi: improve handling for sync requests (Don Brace) [1503736] - [netdrv] ice: mark driver as tech-preview (Jonathan Toppins) [1495347] - [init] init/Kconfig: remove EXPERT from CHECKPOINT_RESTORE (Adrian Reber) [1568995 1557617 1525389] - [scsi] be2iscsi: remove BE3 family support (Maurizio Lombardi) [1598366] - [x86] update rh_check_supported processor list (David Arcari) [1595918] - [kernel] kABI: Add generic kABI macros to use for kABI workarounds (Myron Stowe) [1546831] - [pci] add pci_hw_vendor_status() (Maurizio Lombardi) [1590829] - [ata] ahci: thunderx2: Fix for errata that affects stop engine (Robert Richter) [1563590] - [pci] Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon (Robert Richter) [1563590] - [kernel] bpf: set default values for bpf_jit_harden and bpf_jit_kallsyms (Eugene Syromiatnikov) [1569061] - [kernel] bpf: Add tech preview taint for syscall (Eugene Syromiatnikov) [1559877] - [kernel] bpf: set unprivileged_bpf_disabled to 1 by default, add a boot parameter (Eugene Syromiatnikov) [1561171] - [kernel] add Red Hat-specific taint flags (Eugene Syromiatnikov) [1559877] - [tools] perf tests: Add Python 3 support to attr.py ("Herton R. Krzesinski") [1561505] - [tools] perf scripts python: Add Python 3 support to stat-cpi.py ("Herton R. Krzesinski") [1561505] - [kernel] kdump: fix a grammar issue in a kernel message (Dave Young) [1507353] - [scripts] tags.sh: Ignore redhat/rpm (Prarit Bhargava) [1582586] - [kernel] put RHEL info into generated headers (Prarit Bhargava) [1544999] - [kernel] kdump: add support for crashkernel=auto (Dave Young) [1507353] - [kernel] kdump: round up the total memory size to 128M for crashkernel reservation (Dave Young) [1507353] - [arm64] acpi: prefer booting with ACPI over DTS (Mark Salter) [1576869] - [acpi] aarch64: acpi scan: Fix regression related to X-Gene UARTs (Mark Salter) [1519554] - [acpi] ACPI / irq: Workaround firmware issue on X-Gene based m400 (Mark Salter) [1519554] - [x86] add rh_check_supported (David Arcari) [1565717] - [scsi] qla2xxx: Remove PCI IDs of deprecated adapter (Himanshu Madhani) [1572233] - [scsi] be2iscsi: remove unsupported device IDs (Chris Leech) [1574502] - [scsi] Removing Obsolete hba pci-ids from rhel8 (Dick Kennedy) [1572321] - [scsi] hpsa: modify hpsa driver version (Joseph Szczypek) [1471185] - [scsi] hpsa: remove old cciss-based smartarray pci ids (Joseph Szczypek) [1471185] - [kernel] rh_taint: add support for marking driver as unsupported (Jonathan Toppins) [1565704] - [kernel] rh_taint: add support (David Arcari) [1565704] - [scsi] qla4xxx: Remove deprecated PCI IDs from RHEL 8 (Chad Dupuis) [1518874] - [scsi] aacraid: Remove depreciated device and vendor PCI id's (Raghava Aditya Renukunta) [1495307] - [scsi] megaraid_sas: remove deprecated pci-ids (Tomas Henzl) [1509329] - [scsi] mpt*: remove certain deprecated pci-ids (Tomas Henzl) [1511953] - [kernel] modules: add rhelversion MODULE_INFO tag (Prarit Bhargava) [1544999] - [acpi] ACPI: APEI: arm64: Ignore broken HPE moonshot APEI support (Al Stone) [1518076] - [rpmspec] compute content hash for kernel-headers (Rafael Aquini) [1613003] - [rpmspec] compress modules on all architectures ("Herton R. Krzesinski") [1614556] - [rpmspec] add gcov rpm packaging support (Jan Stancek) [1601733] - [rpmspec] don't ship spdxcheck.py (Jakub Racek) - [rpmspec] clean stray bpf files (Jakub Racek) [1593309] - [rpmspec] Copy symvers.gz to /lib/modules (Eugene Syromiatnikov) [1609695] - [rpmspec] Add kabi-dup related code into specfile (Petr Oros) [1585672] - [rpmspec] kernel spec: Add and enable kabi check (Petr Oros) [1585672] - [rpmspec] Enable warning checks for configs in rpm build (Prarit Bhargava) [1589858] - [rpmspec] remove workaround for rst2man-3 from python3-docutils ("Herton R. Krzesinski") [1602148] - [rpmspec] fix dist tag used for hardlink in kernel-devel post ("Herton R. Krzesinski") [1596397] - [scripts] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override (Prarit Bhargava) [1595727] - [rpmspec] drop kernel package dependency on python2 ("Herton R. Krzesinski") [1561505] - [kernel] Makefile: Move RHEL definitions down (Jakub Racek) [1576568] - [rpmspec] eBPF: Add bpftool package to spec file (Jerome Marchand) [1559607] - [rpmspec] fix conflicts with COPYING file while installing newer 4.17 kernel ("Herton R. Krzesinski") [1579563] - [rpmspec] do not build kernel meta-package on noarch ("Herton R. Krzesinski") [1579512] - [rpmspec] kernel spec: remove copy of arch/x86/purgatory/sha256.* ("Herton R. Krzesinski") - [rpmspec] spec: Add new arch/powerpc/kernel/module.lds file to kernel-devel rpm (Steve Best) [1572553] - [rpmspec] kernel spec: fix recent build errors from brp-mangle-shebangs ("Herton R. Krzesinski") [1575966] - [rpmspec] Add i386 to ExclusiveArch to fix noarch package build ("Herton R. Krzesinski") [1575152] - [rpmspec] Build kernel-abi-whitelists package (Petr Oros) [1571189] - [rpmspec] kernel spec: build bzImage for s390 (Hendrik Brueckner) [1570041] - [rpmspec] kernel spec: arm64: package module.lds in kernel-devel (Mark Salter) [1569014] - [rpmspec] Re-enable debuginfo packages and fix build with current dist tag ("Herton R. Krzesinski") [1568901] - [rpmspec] kernel spec: build kernel-debug on all architectures ("Herton R. Krzesinski") [1567367] - [rpmspec] don't build kernel meta-package if we are only building kernel headers ("Herton R. Krzesinski") - [rpmspec] remove use_vdso macro ("Herton R. Krzesinski") - [rpmspec] build perf and tools man pages instead of relying on a separate tarball ("Herton R. Krzesinski") - [rpmspec] disable debug build if arch is in nobuildarches list ("Herton R. Krzesinski") - [rpmspec] remove fedora changelog from spec file ("Herton R. Krzesinski") - [rpmspec] only support ppc64le builds ("Herton R. Krzesinski") - [rpmspec] remove x86 32-bit package support ("Herton R. Krzesinski") - [rpmspec] remove arm 32-bit package support ("Herton R. Krzesinski") - [rpmspec] remove configuration generation support from kernel spec file ("Herton R. Krzesinski") - [rpmspec] remove broken out patches from kernel spec file ("Herton R. Krzesinski") - [rpmspec] import kernel spec from rhel8 bootstrap dist-git ("Herton R. Krzesinski")/bin/sh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  !!!!!!!!!! ! ! ! ! !!!!!!!!!!!!!!!!!!! !!!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""" " " " " """"""""""""""""""" "!"""#"$"%"&"'"(")"*"+","-"."/"0"1"2"3"4"5"6"7"8"9":";"<"=">"?"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""########## # # # # ################### #!#"###$#%#&#'#(#)#*#+#,#-#.#/#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~#################################################################################################################################$$$$$$$$$$ $ $ $ $ $$$$$$$$$$$$$$$$$$$ $!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%% % % % % %%%%%%%%%%%%%%%%%%% %!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%{%|%}%~%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&& & & & & &&&&&&&&&&&&&&&&&&& &!&"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?&@&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z&[&\&]&^&_&`&a&b&c&d&e&f&g&h&i&j&k&l&m&n&o&p&q&r&s&t&u&v&w&x&y&z&{&|&}&~&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''' ' ' ' ' ''''''''''''''''''' '!'"'#'$'%'&'''(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9':';'<'='>'?'@'A'B'C'D'E'F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'w'x'y'z'{'|'}'~'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''(((((((((( ( ( ( ( ((((((((((((((((((( (!("(#($(%(&('((()(*(+(,(-(.(/(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z({(|(}(~((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))) ) ) ) ) ))))))))))))))))))) )!)")#)$)%)&)')()))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z){)|)})~)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))********** * * * * ******************* *!*"*#*$*%*&*'*(*)***+*,*-*.*/*0*1*2*3*4*5*6*7*8*9*:*;*<*=*>*?*@*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*[*\*]*^*_*`*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*{*|*}*~*********************************************************************************************************************************++++++++++ + + + + +++++++++++++++++++ +!+"+#+$+%+&+'+(+)+*+++,+-+.+/+0+1+2+3+4+5+6+7+8+9+:+;+<+=+>+?+@+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+[+\+]+^+_+`+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+{+|+}+~+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++,,,,,,,,,, , , , , ,,,,,,,,,,,,,,,,,,, ,!,",#,$,%,&,',(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,{,|,},~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---------- - - - - ------------------- -!-"-#-$-%-&-'-(-)-*-+-,---.-/-0-1-2-3-4-5-6-7-8-9-:-;-<-=->-?-@-A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z-[-\-]-^-_-`-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z-{-|-}-~---------------------------------------------------------------------------------------------------------------------------------.......... . . . . ................... .!.".#.$.%.&.'.(.).*.+.,.-.../.0.1.2.3.4.5.6.7.8.9.:.;.<.=.>.?.@.A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.[.\.].^._.`.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.{.|.}.~.................................................................................................................................////////// / / / / /////////////////// /!/"/#/$/%/&/'/(/)/*/+/,/-/.///0/1/2/3/4/5/6/7/8/9/:/;/</=/>/?/@/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/[/\/]/^/_/`/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/{/|/}/~/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////0000000000 0 0 0 0 0000000000000000000 0!0"0#0$0%0&0'0(0)0*0+0,0-0.0/000102030405060708090:0;0<0=0>0?0@0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)1*1+1,1-1.1/101112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111112222222222 2 2 2 2 2222222222222222222 2!2"2#2$2%2&2'2(2)2*2+2,2-2.2/202122232425262728292:2;2<2=2>2?2@2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{2|2}2~2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222223333333333 3 3 3 3 3333333333333333333 3!3"3#3$3%3&3'3(3)3*3+3,3-3.3/303132333435363738393:3;3<3=3>3?3@3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3[3\3]3^3_3`3a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3{3|3}3~3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333334444444444 4 4 4 4 4444444444444444444 4!4"4#4$4%4&4'4(4)4*4+4,4-4.4/404142434445464748494:4;4<4=4>4?4@4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z4[4\4]4^4_4`4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4{4|4}4~4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444445555555555 5 5 5 5 5555555555555555555 5!5"5#5$5%5&5'5(5)5*5+5,5-5.5/505152535455565758595:5;5<5=5>5?5@5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z5[5\5]5^5_5`5a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5{5|5}5~5555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555556666666666 6 6 6 6 6666666666666666666 6!6"6#6$6%6&6'6(6)6*6+6,6-6.6/606162636465666768696:6;6<6=6>6?6@6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6[6\6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6{6|6}6~6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666667777777777 7 7 7 7 7777777777777777777 7!7"7#7$7%7&7'7(7)7*7+7,7-7.7/707172737475767778797:7;7<7=7>7?7@7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z7[7\7]7^7_7`7a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7{7|7}7~7777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777778888888888 8 8 8 8 8888888888888888888 8!8"8#8$8%8&8'8(8)8*8+8,8-8.8/808182838485868788898:8;8<8=8>8?8@8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z8[8\8]8^8_8`8a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}8~8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888889999999999 9 9 9 9 9999999999999999999 9!9"9#9$9%9&9'9(9)9*9+9,9-9.9/909192939495969798999:9;9<9=9>9?9@9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z9[9\9]9^9_9`9a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9t9u9v9w9x9y9z9{9|9}9~999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999:::::::::: : : : : ::::::::::::::::::: :!:":#:$:%:&:':(:):*:+:,:-:.:/:0:1:2:3:4:5:6:7:8:9:::;:<:=:>:?:@:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:[:\:]:^:_:`:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:}:~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;;;; ; ; ; ; ;;;;;;;;;;;;;;;;;;; ;!;";#;$;%;&;';(;);*;+;,;-;.;/;0;1;2;3;4;5;6;7;8;9;:;;;<;=;>;?;@;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;[;\;];^;_;`;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z;{;|;};~;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<<< < < < < <<<<<<<<<<<<<<<<<<< =?=@=A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=[=\=]=^=_=`=a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z={=|=}=~=================================================================================================================================>>>>>>>>>> > > > > >>>>>>>>>>>>>>>>>>> >!>">#>$>%>&>'>(>)>*>+>,>->.>/>0>1>2>3>4>5>6>7>8>9>:>;><>=>>>?>@>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R>S>T>U>V>W>X>Y>Z>[>\>]>^>_>`>a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v>w>x>y>z>{>|>}>~>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>?????????? ? ? ? ? ??????????????????? ?!?"?#?$?%?&?'?(?)?*?+?,?-?.?/?0?1?2?3?4?5?6?7?8?9?:?;?<?=?>???@?A?B?C?D?E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?[?\?]?^?_?`?a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?s?t?u?v?w?x?y?z?{?|?}?~?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????@@@@@@@@@@ @ @ @ @ @@@@@@@@@@@@@@@@@@@ @!@"@#@$@%@&@'@(@)@*@+@,@-@.@/@0@1@2@3@4@5@6@7@8@9@:@;@<@=@>@?@@@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@[@\@]@^@_@`@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@{@|@}@~@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AAAAAAAAAA A A A A AAAAAAAAAAAAAAAAAAA A!A"A#A$A%A&A'A(A)A*A+A,A-A.A/A0A1A2A3A4A5A6A7A8A9A:A;A<A=A>A?A@AAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZA[A\A]A^A_A`AaAbAcAdAeAfAgAhAiAjAkAlAmAnAoApAqArAsAtAuAvAwAxAyAzA{A|A}A~AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBB B B B B BBBBBBBBBBBBBBBBBBB B!B"B#B$B%B&B'B(B)B*B+B,B-B.B/B0B1B2B3B4B5B6B7B8B9B:B;B<B=B>B?B@BABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBUBVBWBXBYBZB[B\B]B^B_B`BaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzB{B|B}B~BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCC C C C C CCCCCCCCCCCCCCCCCCC C!C"C#C$C%C&C'C(C)C*C+C,C-C.C/C0C1C2C3C4C5C6C7C8C9C:C;C<C=C>C?C@CACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC[C\C]C^C_C`CaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzC{C|C}C~CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD[D\D]D^D_D`DaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzD{D|D}D~DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEE E E E E EEEEEEEEEEEEEEEEEEE E!E"E#E$E%E&E'E(E)E*E+E,E-E.E/E0E1E2E3E4E5E6E7E8E9E:E;E<E=E>E?E@EAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE[E\E]E^E_E`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzE{E|E}E~EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFF F F F F FFFFFFFFFFFFFFFFFFF F!F"F#F$F%F&F'F(F)F*F+F,F-F.F/F0F1F2F3F4F5F6F7F8F9F:F;F<F=F>F?F@FAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF[F\F]F^F_F`FaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF{F|F}F~FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGG G G G G GGGGGGGGGGGGGGGGGGG G!G"G#G$G%G&G'G(G)G*G+G,G-G.G/G0G1G2G3G4G5G6G7G8G9G:G;G<G=G>G?G@GAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG[G\G]G^G_G`GaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG{G|G}G~GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHH H H H H HHHHHHHHHHHHHHHHHHH H!H"H#H$H%H&H'H(H)H*H+H,H-H.H/H0H1H2H3H4H5H6H7H8H9H:H;H<H=H>H?H@HAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH[H\H]H^H_H`HaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzH{H|H}H~HH4.18.0-516.el84.18.0-516.el84.18.0-516.el84.18.0-516.el8.ppc64le          !!""#$%%%&&''(())**+++,,---..//0001122233445566667788999:::;;;<<<==>>>??@@AABBCCDDEEFFGGHHHIIJJKKLLLMMNNOOPPQQRRRSSTTUUVVWWWXXYYZZZ[[\\]]^^___``aabbccddeeffggghhhiiijjkkllmnopqqrssttuuvvwvxyz{|}}}}}~~}}}}}}}}}          !!!"!#$$$%&'''(')'*+++,,-+.+/+01234555657589::;<<<=<>??@@AABACDEEFGHHIJJJKJLJMJNOPPPQPRPSPTPUVWWXWYWZ[[[[\\][^^_[`[abbbbccdbebfbgbhhiiijkiliminooooppqorosotouovwwwwwxwywz{{{{{{{{{{{{{{|}}}}|~~~~~~~~~~~~~~~~~~||{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{zzwwwwwwwwwwww      !!"##$#%#&''(')'*+++,+-./00102033435363738090:;;<=>>?@ABCCDCECFCGCHCCIIJCKLCMCNCOCPCQCRSTUVVWXYYYZY[\]]^^^^__`_a_b_c^d^e^f^g^hihjhkllllmmnnoooppoqqrrrssstruuuvuwwuxxuyyuzzu{{u||r}}r~~rrrrrrrrrrrrrrrrrrrrrrr       r  rrrrrrrr  r!!"""#$$#%%#&&#'''('))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H'IJ'KLKMKNKOKP#QQRQSSTSUQVVWVXVY"ZZ"[["\\"]]"^^"___``_aa_bb_cc_dd"ee"ff"gg"hh"ii"jj"kkkllkmm"n"oo"ppppppq"rr"ss"tt"uu"vv"ww"xx"yy"z"{{{||{}}"~~"""""""""""""""""""""""""""!!!rrrrrrrrrrrrrrr  r                rrrrrr  r!!!""!###$$#%%#&&#''#((!))!***++*,,!--!.../.00.11.22.3.44.55!66677!888998::8;;8<<8==8>>8??8@@8AA8BB8CCDD8EE8FF8GG8HH8II8JJ8KK8LL8MM8NN8OO8PP8QQ8RR8SS8TT8UU8VV!WWWXXWYYWZZW[W\W]]W^W__W``WaWbWcWdWeWffWgWhihjWkkWlmWnWoWpWqWrWssWtutvvtwtxtyWzW{W|W}}W~~WW!!!!!!rrrrrrrrr              ! " # $%%%&%'%(%)%***+*,%-..///0011223334455666778899:::;;:<<:==>>???@AAABACCDCEFFGGGHHIIJJJKJLLMMMNMOMPMQMRMSMTMUMVMWMXMYZZZ[\\]]]^^]_```a`b`ccd`e`f`g`h`i`j]kk]ll]mmnnoopppqrrsstttuvvwwwxyyyzz{z|z}}~z     r  !!""##$$%%&&''r((()))**)++),,)--)..(//r0r11r22233244r55r6667r88r99r::r;;;<<<==;>>>??;@@;AA;BBrCCrDDDErFFFGGFHHFIIFJJFKKFLLFMMFNNFOOFPPFQQFRRFSSFTTFUUFVVrWWWXXWYYWZZW[[W\\W]]W^^W__W``WaaWbbWccWddWeeWfWggWhhWiiWjjWkkWllWmmWnnWoorpppqqprrpsspttpupvvvwvxxxyyxzzx{{x||x}}r~~~~~rrrrrrrrrrrrrrrrrrrrrrrrrrr                     !!!""!##!$$!%%!&&!''!(())**++,,--../001122334455667788999::;;;<==>>???@?ABBCCDDEEFFFGGFHHFIIJJKKKLLKMMNNOOPPQQRRSSTTrUUUVVVWWUXXUYYUZZr[r\\\]]r^^^__^```aa^bb^cc^dd^ee^ffrggrhhhiihjhkkhlmmlllnlohprqqrrrrssrtruurvvrwwrxxryyrzzr{r|||}|~~|rrrrrrrrrrrrrrrrrrrrrrrrrrrrr         !""##$$%%&&'(())**++,------------------------------.......---,/////////////////000000000000000000000///////////////////////////////////////////////////////////////////////////////////////////////////////////1/////,222222,333334355363733839:3;333<33=3>3?@A?BCD?EFEGGEHI?JKLJMNJOJPJQRJSJTUJVJJWJXJYJZ[JJ\]^J_`JJaJbJcJdJeeJfgJhJi?jkl?m?n?opq?r?stuu?vwwxxwyyzz??{|?}}?~~~~~?????333333333333333333333333333333333333333333333333333333333333333333333 333                              3 33 3   3                  33   3 !3 " " # $ # % " " & ' (3 )3 * * * * * * + + * * * * *33 ,3 -3 .3 / 0 / 1 / / / / 23 3 4 4 43 533 6 7 8 6 6 9 6 6 : 6 6 ; < 63 =33 >3 ?3 @ A A3 B33 C33 D E33333 F G F H F I3 J33 K L L K K3 M N M3 O33 P Q R S33 T3 U U V W X V Y Z Y Y Y Y Y Y Y V U U [ \ \ U U ] U333 ^3 _ _3 ` ` a `333 b333 c d33 e e e e e e e e e e f e e e e e e e g e e h e e e e e e e e e e e e e e e e e i i i j i i k k l l i i m e e n n n n e e e e e e e o e e e e e p e e e e e e e e q q e e e e e e e r e e e e e e e e e e e s e e e e e e e e e e e e e e e t e e u u v v v v e e e e e333 w x y w w w333 z33 { { { {3 |33 }3 ~ 33 3 33 3 3 3 3 333 333 33 3 3 33333 3 3 3 3 3 333 3 3333 3 3 3 33 33 33 3 3 33 3 3 3 33 3333 3 333 3 33 3 3 3 33 33  3      33                           3 33 3 3  33   3 33   3   3 3 3       333 ! "33 #333 $ % $3 & ' &3 (33 ) ) * ) )33 +3 , , - - .3 /33 03 1 1 1 1 2 1 3 1 1 4 4 1 1 1 5 5 5 5 6 1 7 1 8 1 9 1 : 1 ; < 1 = > 1 ? 1 @ 1333 A B C3 D D E F3 G G G G33 H H H H33 I J I3 K3 L33 M3 N N O3 P Q3 R3 S S S T3 U V3 W X X Y X X Z [ [ \ X ] X ^ X X _ W ` a W b W c c W d d e f W g W h i W j W k l W m n m W o W p q W r s W t W W u W v W w x W y y W W z { W W | | } | | | ~  W W W W W W W W W W W W W W W W W W W 33 33 33 33 3 3 3 3 3 3 33 3 33 3 33 3 333 33 33 33 33 3 33 333333 3 3 33 3333 3333 33 33 3 33 3 3 3     3 33                       33        3  3 3  3       33 3        !   "  # $ # # # # # # % % % % # # # # & & & & & & &  ' '  ( ( (    ) * * * ) + + + + + + + + + + + + ) , )   - - - - - - - - - . / - - - - 0 - 1 1 2 1 1 1 1 - - - - 3 4 - 5 - -3 6 7 7 7 7 8 8 8 8 8 8 8 8 8 7 7 7 7 9 9 9 93 :3 ; < ; ; = = ; > ; ; ; ; ;3 ?33 @ @ @ @ A B @ C @ D @ E @ F @ G @ H @ @ I @ @333 J K K J J J L L J M J N O J J P J Q J R J S J J T J J U J J V J J3 W X W Y W W Z W W33 [ \3 ] ^ ] ] _ ]33 ` ` ` a a a b a ` ` c d d d d c c ` ` ` ` ` e ` f333 g33 h h h33 i333 j j k l33 m m n3 o3 p q p r p33 s s333 t t3 u33 v33 w x w w y w3 z33 { |3333 } ~ } }  }33 33 3 3 3 333333 33 33 333 33 33 3 3 3 3 33 3 33 33 33 3 3 3 3 33 3333 3 3 3 3 33 33 3 3 3 333 3 3 3 333 3 3 3 3 3 3 333 3 33 3 3 33 33 333          3       33  33                             3333  3 33   3   33  3  3 33 ! " " ! # $ % % % ! & ! ' ! ! ( ) ( *33 + , -33 . .33 /3 0 0 0 03 1 2 3 1 4 1 5 6 7 8 1 9 :33 ; < < < < < < < < < < < < < < = < ; ; > > > > > > > > > > > > > ; ; ; ? ; ; ; @ @ @ @ @ @ @ ; ; ; A ; ; B ; ; C C ; ; ; ; D ; E F ; G ; ; ; H ; ; I ; J ; ; K L ; M M M M M M M M M M M M N M M M M M M M O M M M M M M M M M M M ; ; P ; ; Q R ; ; S T T T T T ; U ; V V V V V V V V V V V V V V V V V V V V V V V ;33 W3 X Y Z3333 [ [ [ \ \ [ [ [ ] ^ ] ] [ [ _ _ _ ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` _ _ _ a a a a a a a a a a a a a a a a a a a a a a a a [33 b33 c c d c3 e3 f3 g g h h h h h h h h h i h h h h h h h h h h g j j k k j l l l l g m m g n n n g o o p p p g q q q q g g r r r r r r r r r r s r g g t t g u u g g v v v v v v v g w w33 x y z y3 { | { { { { { } ~ { {  { { 33 3 3333 3 3 3 3 3 3 33 33 3 3 3333 33 3 3 3 33 333 3 3 33 33 3 3 333 3 3 333 3 33 33 333 3 3 3 33 3 3 3 33 33 33 3 3 3 3 33 33   333        33333    33  3 3 3 333      3 3             333  33  33        3 !33 "33 # # # # # #3333 $3 %33 & ' &333 ( (3 )3 * * +3 , -333 . /3 03 1 2 1 1 1 13 3 4 5 3 6 3 7 3 83 9 9 9 9 9 93 : :3 ; ;3 < < = =33 >333 ?3 @ A33 B B3 C3 D E F G3 H3 I I J K J3 L M L L L N L L L L L L L L3 O33 P Q333 R S R3 T U T T3 V V W W W W W W W W W W W W W X W W W W W W W Y W W W W W W W W W W W W W W W W V V Z V [ \ V ] ] ] V V ^ _ V ` V3 a b3 c d e33 f f g f f h i f333 j k3 l l l l l m n l l33 o33 p p q p r p s p p t p p p u u u v u p p p w p p p x p p p p y y p z p p p p p p p { | p p } ~ p p  p p p p p p p3 3 33 3 33 33 3 3 33 33 3 3 3 3 33 333 3 3 333 33 33 3 33 3 3 3 3 33 3 3 33 3 33 33333333333333333     33 3333 3 3333333333333    33!3"#"$"3%&%'%(33)))**+++**,)3----3.////////////////.303111121133333334567489:4;<;=443>3?3@@33A3BC33D33EEEFF33G33HIH3J3KKKLL3MMN33OPO33QQ3RRS3TT33U3V333WXY33Z[ZZ\ZZZZZ3]333^^^_^`^33aa3b3c3d333eeefeegheeijeeekeeeeelemmnommpqmreeeeseteeeuuuuuuuuuuuuuuvuuuuuuuuuuuuuuuuuuuuuuuuuuuwueeexeeyeeeeeeeeeez{eeeeee|}||~~~~~||||||||||||||||eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee3333333333333333333333333333333333333333333333333333333333333333333,,,,               ,!!!!!!"#!,$$$$$$$$$$$$$,%%%%%,&&&&&&,''''''''''''''''''''(((((((((((''''''''''''''''''''''''''''''''''''''''')''''''''''''''*********''''''''''''''''''''''''''''''''''''''''''''''''+++'''',,,-,,....,,''''''''///////////////////////''''''''''0000000000''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''111''''''''''''''''''22222222'''''''''''''''''''''''''''''''''''''''333333333'''''''''''''''4'''''''''''''''''''''''''''''''''''''''''''5''''''''''''''''''''67768869''''''''':::::'''''''''''''''''';<<<<<<;;;;'''''''''''''''''''''''''====''''''''''''''''''''''''''''>>'''''''''''''''''''''''''''''''''''''''''''''''''?@?AA?????BBBBB???CCCCC???DD?E???F???G????HH?????''''''''''''''''IIIIIIIIIIIIIIIIIIIIII''''''''''''''''''''''''''''''''''''''''''''JJJJJJJJJJJJJJJJJ''''''''''''KKK'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''LLLLLLL''''''''''''''''M'''''''''''''''''''''''''''''''NNNNNNOOOOOONNNNPPPNNNNNNNNNNNNNNNQQQNRRRNSSNTTTNUUNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNVVNWWNNNXXXXXXNNNNNNNNNNYYYYYYYYYYYNNNNNNNNNNNNNZZZZZZZNNNNNNNNNNNNNNNNNNNNNNNNNNN[[[[[[[[[[N\\\\\\\\NNNN]]]]N''''''''''''''^^^^^^^'_________________''''''''````````````''''''''''''''''''''''''aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa''bb''''''''''cdd''''effffffffffeeeeeeeeeeeeeeeeeeeeeee'g''hh''''i''j'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''k''''''''l''''''''mmmmmmnm'''''''oooooooo'''''pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppqqqqqqqqqqqqqpppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppprrrrrp'''''''''''''''''''''''''ssssssssssssssss''''''''''''''''''''''''''''''''''''''''''''tttttttttttttttttttt''''''uuuu'''''''''''''''''''''''''''''''vvvvvvvvvvvvvvvvvvvvvvvvvvvvvv'''ww'''''x''''''''''''''''''''''''yy'''zzzzz''''''''''''''''''{{{{{{{{{{{{{{{{{{{{{{{{{{{{{'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''|}|~|||||||'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''',,,,,,,,,,,,,,,,,        !! "" ## $$   % && '' (( )))**)++),,)-- . // 00011 22 33 44 5 66 7778 999:: ;; << = > ?? @AA@@ BB CCCDCEE FFFGFHH II JJ K LL MM NN OO PP QQ RR SS TT UUUVVUWW XX YY Z [[[\\[]] ^^ __ `` aa bb cc dd ee f gg hh ii jj kk lllmln oo pp qq rr ss tt uu vv ww xxyyyzy{{y|y}y~yyyyyyyyyyyyyyyyyyyy         !! " # $ % & '(())**++,,--..//00112223342556627728292:2;<<==>>>?>@>A>B>CDDEEFFGGGHIIJJKKKLMMMNNMOOMPPMQQQRQSMTTUUVVWWXXYYZZ[[\\]]^^__``aabbcccdefeeegeheiejjekelmmnnooppqprstpuuvwvuxuypzzzzz{z|}p~pppppppppppppppppp        !"#$%&p'(p))*+,*-.)//0/1p2232425p6p78899::9;;4.18.0-516.el8.ppc64le.configKconfigKconfig.redhatMakefileMakefile.rhelverModule.symversSystem.maparchKconfigalphaKconfigKconfig.debugMakefilebootMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilearcKconfigKconfig.debugMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplat-axs10xKconfigMakefileplat-eznpsKconfigMakefileplat-hsdkKconfigMakefileplat-simMakefileplat-tb10xKconfigMakefilearmKconfigKconfig-nommuKconfig.debugMakefilebootMakefilebootpMakefilecompressedMakefiledtsMakefilecommonKconfigMakefilecryptoKconfigMakefilefirmwareKconfigMakefilekernelMakefilelibMakefilemach-actionsKconfigMakefilemach-alpineKconfigMakefilemach-artpecKconfigMakefilemach-asm9260Kconfigmach-aspeedKconfigmach-at91KconfigMakefileMakefile.bootmach-axxiaKconfigMakefilemach-bcmKconfigMakefilemach-berlinKconfigMakefilemach-clps711xKconfigMakefilemach-cns3xxxKconfigMakefilemach-davinciKconfigMakefileMakefile.bootmach-digicolorKconfigMakefilemach-doveKconfigMakefileMakefile.bootmach-ebsa110MakefileMakefile.bootmach-efm32MakefileMakefile.bootmach-ep93xxKconfigMakefileMakefile.bootmach-exynosKconfigMakefilemach-footbridgeKconfigMakefileMakefile.bootmach-geminiKconfigMakefilemach-highbankKconfigMakefilemach-hisiKconfigMakefilemach-imxKconfigMakefileMakefile.bootdevicesKconfigMakefilemach-integratorKconfigMakefilemach-iop13xxKconfigMakefileMakefile.bootmach-iop32xKconfigMakefileMakefile.bootmach-iop33xKconfigMakefileMakefile.bootmach-ixp4xxKconfigMakefileMakefile.bootmach-keystoneKconfigMakefilemach-ks8695KconfigMakefileMakefile.bootmach-lpc18xxMakefileMakefile.bootmach-lpc32xxMakefileMakefile.bootmach-mediatekKconfigMakefilemach-mesonKconfigMakefilemach-mmpKconfigMakefilemach-moxartKconfigMakefilemach-mv78xx0KconfigMakefilemach-mvebuKconfigMakefilemach-mxsKconfigMakefilemach-netxKconfigMakefileMakefile.bootmach-nomadikKconfigMakefilemach-npcmKconfigMakefilemach-nspireKconfigMakefilemach-omap1KconfigMakefileMakefile.bootmach-omap2KconfigMakefilemach-orion5xKconfigMakefilemach-oxnasKconfigMakefilemach-picoxcellKconfigMakefilemach-prima2KconfigMakefilemach-pxaKconfigMakefileMakefile.bootmach-qcomKconfigMakefilemach-realviewKconfigMakefilemach-rockchipKconfigMakefilemach-rpcMakefileMakefile.bootmach-s3c24xxKconfigMakefileMakefile.bootmach-s3c64xxKconfigMakefilemach-s5pv210KconfigMakefilemach-sa1100KconfigMakefileMakefile.bootmach-shmobileKconfigMakefilemach-socfpgaKconfigMakefilemach-spearKconfigMakefilemach-stiKconfigMakefilemach-stm32KconfigMakefileMakefile.bootmach-sunxiKconfigMakefilemach-tangoKconfigMakefilemach-tegraKconfigMakefilemach-u300KconfigMakefilemach-uniphierKconfigMakefilemach-ux500KconfigMakefilemach-versatileKconfigMakefilemach-vexpressKconfigMakefileMakefile.bootmach-vt8500KconfigMakefileMakefile.bootmach-w90x900KconfigMakefileMakefile.bootmach-zxKconfigMakefilemach-zynqKconfigMakefilemmKconfigMakefilenetMakefilenwfpeMakefileoprofileMakefileplat-iopMakefileplat-omapKconfigMakefileplat-orionMakefileplat-pxaKconfigMakefileplat-samsungKconfigMakefileplat-versatileKconfigMakefileprobesMakefilekprobesMakefileuprobesMakefiletoolsMakefilevdsoMakefilevfpMakefilexenMakefilearm64KconfigKconfig.debugKconfig.platformsMakefilebootMakefiledtsMakefileactionsMakefilealMakefileallwinnerMakefilealteraMakefileamdMakefileamlogicMakefileapmMakefilearmMakefilebroadcomMakefilenorthstar2MakefilestingrayMakefilecaviumMakefileexynosMakefilefreescaleMakefilehisiliconMakefilelgMakefilemarvellMakefilemediatekMakefilenvidiaMakefileqcomMakefilerealtekMakefilerenesasMakefilerockchipMakefilesocionextMakefilesprdMakefilesynapticsMakefilexilinxMakefilezteMakefilecryptoKconfigMakefilehypervMakefilekernelMakefileprobesMakefilevdsoMakefilevdso32MakefilekvmKconfigMakefilehypMakefilenvheMakefilevheMakefilelibMakefilemmMakefilenetMakefiletoolsMakefilexenMakefilec6xKconfigMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileplatformsKconfigMakefileh8300KconfigKconfig.cpuMakefilebootMakefilecompressedMakefiledtsMakefilekernelMakefilelibMakefilemmMakefilehexagonKconfigMakefilekernelMakefilelibMakefilemmMakefileia64KconfigKconfig.debugMakefiledigMakefilehpcommonMakefilesimKconfigMakefilebootMakefilezx1MakefilekernelMakefileMakefile.gatelibMakefilemmMakefileoprofileMakefilepciMakefilesnMakefilekernelMakefilesn2MakefilepciMakefilepcibrMakefileuvMakefilekernelMakefilem68k68000MakefileKconfigKconfig.busKconfig.cpuKconfig.debugKconfig.devicesKconfig.machineMakefileamigaMakefileapolloMakefileatariMakefilebvme6000MakefilecoldfireMakefileemuMakefilefpsp040Makefilehp300Makefileifpsp060MakefilekernelMakefilelibMakefilemacMakefilemath-emuMakefilemmMakefilemvme147Makefilemvme16xMakefileq40Makefilesun3MakefilepromMakefilesun3xMakefiletoolsamigaMakefilemicroblazeKconfigKconfig.debugKconfig.platformMakefilebootMakefiledtsMakefilekernelMakefilecpuMakefilelibMakefilemmMakefileoprofileMakefilepciMakefilemipsKconfigKconfig.debugMakefileMakefile.postlinkalchemyKconfigMakefilecommonMakefiledevboardsMakefilear7Makefileath25KconfigMakefileath79KconfigMakefilebcm47xxKconfigMakefilebcm63xxKconfigMakefileboardsKconfigMakefilebmipsKconfigMakefilebootMakefilecompressedMakefiledtsMakefilebrcmMakefilecavium-octeonMakefileimgMakefileingenicMakefilelantiqMakefilemsccMakefilemtiMakefilenetlogicMakefileniMakefilepic32MakefileqcaMakefileralinkMakefilexilfpgaMakefiletoolsMakefilecavium-octeonKconfigMakefilecryptoMakefileexecutiveMakefilecobaltMakefilecryptoMakefiledecMakefilepromMakefileemmaMakefilecommonMakefilemarkeinsMakefilefwarcMakefilecfeMakefilelibMakefilesniMakefilegenericKconfigMakefilejazzKconfigMakefilejz4740KconfigMakefilekernelMakefilekvmKconfigMakefilelantiqKconfigMakefilefalconMakefilexwayMakefilelasatKconfigMakefileimageMakefilelibMakefileloongson32KconfigMakefilecommonMakefilels1bMakefilels1cMakefileloongson64KconfigMakefilecommonMakefilecs5536Makefilefuloong-2eMakefilelemote-2fMakefileloongson-3Makefilemath-emuMakefilemmMakefilemti-maltaMakefilenetMakefilenetlogicKconfigMakefilecommonMakefilexlpMakefilexlrMakefileoprofileMakefileparavirtKconfigMakefilepciMakefilepic32KconfigMakefilecommonMakefilepic32mzdaMakefilepistachioKconfigMakefilepmcs-msp71xxKconfigMakefilepnx833xMakefilecommonMakefilestb22xMakefilepowerMakefileralinkKconfigMakefilerb532Makefilesgi-ip22Makefilesgi-ip27KconfigMakefilesgi-ip32MakefilesibyteKconfigMakefilebcm1480MakefilecommonMakefilesb1250MakefileswarmMakefilesniMakefiletxx9KconfigMakefilegenericMakefilejmr3927Makefilerbtx4927Makefilerbtx4938Makefilerbtx4939MakefilevdsoMakefilevr41xxKconfigcasio-e55MakefilecommonMakefileibm-workpadMakefilends32KconfigKconfig.cpuMakefilebootMakefiledtsMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefilenios2KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmMakefileplatformKconfig.platformMakefileopenriscKconfigMakefilebootdtsMakefilekernelMakefilelibMakefilemmMakefilepariscKconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilepowerpcKconfigKconfig.debugMakefileMakefile.postlinkbootMakefilecryptoMakefileincludeasm8xx_immap.hKbuildaccounting.hagp.harchrandom.hasm-compat.hasm-offsets.hasm-prototypes.hasync_tx.hatomic.hbacklight.hbarrier.hbitops.hbook3s32hash.hmmu-hash.hpgalloc.hpgtable.h64hash-4k.hhash-64k.hhash.hhugetlb.hkup-radix.hmmu-hash.hmmu.hpgalloc.hpgtable-4k.hpgtable-64k.hpgtable.hradix-4k.hradix-64k.hradix.hslice.htlbflush-hash.htlbflush-radix.htlbflush.hpgalloc.hpgtable.hbootx.hbpf_perf_event.hbtext.hbug.hbugs.hcache.hcacheflush.hcell-pmu.hcell-regs.hchecksum.hcmpxchg.hcode-patching-asm.hcode-patching.hcompat.hcontext_tracking.hcopro.hcpm.hcpm1.hcpm2.hcpu_has_feature.hcpu_setup_power.hcpufeature.hcpuidle.hcputable.hcputhreads.hcputime.hcrashdump-ppc64.hcurrent.hdbdma.hdbell.hdcr-generic.hdcr-mmio.hdcr-native.hdcr-regs.hdcr.hdebug.hdebugfs.hdelay.hdevice.hdisassemble.hdma-direct.hdma-mapping.hdma.hdrmem.hdt_cpu_ftrs.hdtl.hedac.heeh.heeh_event.hehv_pic.helf.helfnote.hemergency-restart.hemulated_ops.hepapr_hcalls.hexception-64e.hexception-64s.hexec.hextable.hfadump-internal.hfadump.hfb.hfeature-fixups.hfirmware.hfixmap.hfloppy.hfs_pd.hfsl_85xx_cache_sram.hfsl_gtm.hfsl_hcalls.hfsl_lbc.hfsl_pamu_stash.hfsl_pm.hftrace.hfutex.hgrackle.hhardirq.hhead-64.hheathrow.hhighmem.hhmi.hhugetlb.hhvcall.hhvconsole.hhvcserver.hhvsi.hhw_breakpoint.hhw_irq.hhydra.hi8259.hibmebus.hicswx.hide.hidle.hima.himc-pmu.himmap_cpm2.hinst.hio-defs.hio-workarounds.hio.hio_event_irq.hiommu.hipic.hirq.hirq_work.hirqflags.hisa-bridge.hjump_label.hkdebug.hkdump.hkexec.hkexec_ranges.hkeylargo.hkgdb.hkprobes.hkup.hkvm_asm.hkvm_book3s.hkvm_book3s_32.hkvm_book3s_64.hkvm_book3s_asm.hkvm_book3s_uvmem.hkvm_booke.hkvm_booke_hv_asm.hkvm_fpu.hkvm_guest.hkvm_host.hkvm_para.hkvm_ppc.hlibata-portmap.hlinkage.hlivepatch.hlocal.hlppaca.hlv1call.hmachdep.hmacio.hmc146818rtc.hmce.hmediabay.hmem_encrypt.hmembarrier.hmm-arch-hooks.hmman.hmmiowb.hmmu-40x.hmmu-44x.hmmu-8xx.hmmu-book3e.hmmu.hmmu_context.hmmzone.hmodule.hmpc5121.hmpc52xx.hmpc52xx_psc.hmpc5xxx.hmpc6xx.hmpc8260.hmpc85xx.hmpic.hmpic_msgr.hmpic_timer.hmsi_bitmap.hnmi.hnohash32pgalloc.hpgtable.hpte-40x.hpte-44x.hpte-8xx.hpte-fsl-booke.hslice.h64pgalloc.hpgtable-4k.hpgtable.hslice.hpgalloc.hpgtable.hpte-book3e.hnvram.hohare.hopal-api.hopal.hoprofile_impl.hpaca.hpage.hpage_32.hpage_64.hparavirt.hparport.hpasemi_dma.hpci-bridge.hpci.hpercpu.hperf_event.hperf_event_fsl_emb.hperf_event_server.hpgalloc.hpgtable-be-types.hpgtable-types.hpgtable.hpkeys.hplpar_wrappers.hpmac_feature.hpmac_low_i2c.hpmac_pfunc.hpmc.hpmi.hpnv-ocxl.hpnv-pci.hpowernv.hppc-opcode.hppc-pci.hppc4xx.hppc4xx_ocm.hppc_asm.hprobes.hprocessor.hprom.hps3.hps3av.hps3gpu.hps3stor.hpte-common.hpte-walk.hptrace.hqspinlock.hqspinlock_paravirt.hreg.hreg_8xx.hreg_a2.hreg_booke.hreg_fsl_emb.hrheap.hrio.hrtas.hrunlatch.hscom.hseccomp.hsections.hsecure_boot.hsecurity_features.hsecvar.hserial.hsetjmp.hsetup.hsfp-machine.hshmparam.hsignal.hsimple_spinlock.hsimple_spinlock_types.hslice.hsmp.hsmu.hsparsemem.hspinlock.hspinlock_types.hspu.hspu_csa.hspu_info.hspu_priv1.hsstep.hstackprotector.hstacktrace.hstring.hsvm.hswab.hswiotlb.hswitch_to.hsynch.hsyscall.hsyscalls.hsystbl.htask_size_32.htask_size_64.htce.htermios.hthread_info.htime.htimex.htlb.htlbflush.htm.htopology.htrace.htrace_clock.htsi108.htsi108_irq.htsi108_pci.htypes.huaccess.hudbg.huic.hultravisor-api.hultravisor.hunaligned.huninorth.hunistd.huprobes.huser.hvas.hvdso.hvdso_datapage.hvga.hvio.hword-at-a-time.hxics.hxilinx_intc.hxilinx_pci.hxive-regs.hxive.hxmon.hxor.hxor_altivec.hgeneratedasmdiv64.hexport.hirq_regs.hirq_work.hkmap_size.hkvm_types.hlocal64.hmcs_spinlock.hmsi.hpreempt.hqrwlock.hvtime.huapiasmbpf_perf_event.hparam.hpoll.hresource.hsiginfo.hsockios.hstatfs.huapiasmKbuildauxvec.hbitsperlong.hbootx.hbyteorder.hcputable.heeh.helf.hepapr_hcalls.herrno.hfcntl.hioctl.hioctls.hipcbuf.hkvm.hkvm_para.hmman.hmsgbuf.hnvram.hopal-prd.hpapr_pdsm.hperf_event.hperf_regs.hposix_types.hps3fb.hptrace.hsembuf.hsetup.hshmbuf.hsigcontext.hsignal.hsocket.hspu_info.hstat.hswab.htermbits.htermios.htm.htypes.hucontext.hunistd.hvas-api.hkernelMakefilemodule.ldsptraceMakefiletraceMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilecrtsavres.Smath-emuMakefilemmMakefilebook3s32Makefilebook3s64MakefilenetMakefileoprofileMakefileperfMakefileplatforms40xKconfigMakefile44xKconfigMakefile4xxMakefile512xKconfigMakefile52xxKconfigMakefile82xxKconfigMakefile83xxKconfigMakefile85xxKconfigMakefile86xxKconfigMakefile8xxKconfigMakefileKconfigKconfig.cputypeMakefileamigaoneKconfigMakefilebook3sKconfigMakefilecellKconfigMakefilespufsMakefilechrpKconfigMakefileembedded6xxKconfigMakefilemapleKconfigMakefilepasemiKconfigMakefilepowermacKconfigMakefilepowernvKconfigMakefileps3KconfigMakefilepseriesKconfigMakefilepurgatoryMakefilesysdevKconfigMakefilegeMakefilexicsKconfigMakefilexiveKconfigMakefilexmonMakefileriscvKconfigMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefiles390KconfigKconfig.debugMakefileappldataMakefilebootMakefilecompressedMakefilecryptoMakefilehypfsMakefilekernelMakefilesyscallsMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemmMakefilenetMakefilenumaMakefileoprofileMakefilepciMakefilepurgatoryMakefilescriptsMakefile.chkbsstoolsMakefileshKconfigKconfig.cpuKconfig.debugMakefileboardsKconfigMakefilemach-ap325rxaMakefilemach-caymanMakefilemach-dreamcastMakefilemach-ecovec24Makefilemach-highlanderKconfigMakefilemach-hp6xxMakefilemach-kfr2r09Makefilemach-landiskMakefilemach-lboxre2Makefilemach-microdevMakefilemach-migorKconfigMakefilemach-r2dKconfigMakefilemach-rskKconfigMakefilemach-sdk7780KconfigMakefilemach-sdk7786Makefilemach-se7206Makefile7343Makefile770xMakefile7721Makefile7722Makefile7724Makefile7751Makefile7780MakefileMakefilemach-sh03Makefilemach-sh7763rdpMakefilemach-x3protoMakefilebootMakefilecompressedMakefiledtsMakefileromimageMakefilecchipsKconfighd6446xMakefiledriversKconfigMakefiledmaKconfigMakefilepciMakefilesuperhywayMakefilekernelMakefilecpuMakefileirqMakefilesh2Makefilesh2aMakefilesh3Makefilesh4Makefilesh4aMakefilesh5MakefileshmobileMakefilevsyscallMakefilelibMakefilelib64Makefilemath-emuMakefilemmKconfigMakefileoprofileMakefiletoolsMakefilesparcKconfigKconfig.debugMakefilebootMakefilecryptoMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefilenetMakefileoprofileMakefilepowerMakefilepromMakefilevdsoMakefileumKconfig.charKconfig.commonKconfig.debugKconfig.netKconfig.restKconfig.umMakefileMakefile-os-LinuxMakefile-skasdriversMakefilekernelMakefileskasMakefileos-LinuxMakefiledriversMakefileskasMakefilescriptsMakefile.rulesunicore32KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmKconfigMakefilex86KconfigKconfig.cpuKconfig.debugMakefileMakefile.umMakefile_32.cpubootMakefilecompressedMakefilecocoMakefiletdxMakefilecryptoMakefilesha1-mbMakefilesha256-mbMakefilesha512-mbMakefileentryMakefilesyscallsMakefilevdsoMakefilevsyscallMakefileeventsKconfigMakefileamdMakefileintelMakefilehypervMakefileia32MakefilekernelMakefileacpiMakefileapicMakefilecpuMakefilemceMakefilemicrocodeMakefilemtrrMakefileresctrlMakefilesgxMakefilefpuMakefilekprobesMakefilekvmKconfigMakefilelibMakefilemath-emuMakefilemmMakefilepatMakefilenetMakefileoprofileMakefilepciMakefileplatformMakefileatomMakefilece4100MakefileefiMakefilegeodeMakefilegoldfishMakefileintelintel-midMakefiledevice_libsMakefileintel-quarkMakefileMakefileirisMakefileolpcMakefilescx200MakefilesfiMakefilets5500MakefileuvMakefilepowerMakefilepurgatoryMakefilerasKconfigrealmodeMakefilermMakefiletoolsMakefileumKconfigMakefileos-LinuxMakefilevdsoMakefilevideoMakefilexenKconfigMakefilextensaKconfigKconfig.debugMakefilebootMakefileboot-elfMakefileboot-redbootMakefiledtsMakefilelibMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplatformsissMakefilext2000MakefilextfpgaMakefileblockKconfigKconfig.ioschedMakefilepartitionsKconfigMakefilecertsKconfigMakefilecryptoKconfigMakefileasymmetric_keysKconfigMakefileasync_txKconfigMakefiledriversKconfigMakefileaccessibilityKconfigMakefilebrailleMakefileacpiKconfigMakefileacpicaMakefileapeiKconfigMakefilearm64KconfigMakefiledptfKconfigMakefilenfitKconfigMakefilenumaKconfigMakefilepmicKconfigMakefileambaKconfigMakefileandroidKconfigMakefileataKconfigMakefileatmKconfigMakefileauxdisplayKconfigMakefilebaseKconfigMakefilefirmware_loaderKconfigMakefilepowerMakefileregmapKconfigMakefiletestKconfigMakefilebcmaKconfigMakefileblockKconfigMakefileaoeMakefiledrbdKconfigMakefilemtip32xxKconfigMakefileparideKconfigMakefilersxxMakefilexen-blkbackMakefilezramKconfigMakefilebluetoothKconfigMakefilebusKconfigMakefilefsl-mcKconfigMakefilemhiKconfigMakefileepKconfigMakefilehostKconfigMakefilecdromMakefilecharKconfigMakefileagpKconfigMakefilehw_randomKconfigMakefileipmiKconfigMakefilemwaveMakefilepcmciaKconfigMakefiletpmKconfigMakefilest33zp24KconfigMakefilexilinx_hwicapMakefilexillybusKconfigMakefileclkKconfigMakefileactionsKconfigMakefileat91MakefileaxisMakefileaxs10xMakefilebcmKconfigMakefileberlinMakefiledavinciMakefileh8300MakefilehisiliconKconfigMakefileimgtecKconfigMakefileimxMakefileingenicMakefilekeystoneKconfigMakefileloongson1MakefilemediatekKconfigMakefilemesonKconfigMakefilemicrochipMakefilemmpMakefilemvebuKconfigMakefilemxsMakefilenxpMakefilepistachioMakefilepxaMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipMakefilesamsungKconfigMakefilesirfMakefilesocfpgaMakefilespearMakefilesprdKconfigMakefilestMakefilesunxisunxi-ngKconfigMakefileMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefileux500MakefileversatileKconfigMakefilex86MakefilezteMakefilezynqMakefileclocksourceKconfigMakefileconnectorKconfigMakefilecounterKconfigMakefilecpufreqKconfigKconfig.armKconfig.powerpcKconfig.x86MakefilecpuidleKconfigKconfig.armKconfig.mipsKconfig.powerpcMakefilegovernorsMakefilecryptoKconfigMakefileamccMakefileaxisMakefilebcmMakefilecaamKconfigMakefilecaviumMakefilecptKconfigMakefilenitroxKconfigMakefilezipMakefileccpKconfigMakefileccreeMakefilechelsioKconfigMakefilechtlsMakefileinside-secureMakefilemarvellMakefilemediatekMakefilenxKconfigMakefileqatKconfigMakefileqat_4xxxMakefileqat_c3xxxMakefileqat_c3xxxvfMakefileqat_c62xMakefileqat_c62xvfMakefileqat_commonMakefileqat_dh895xccMakefileqat_dh895xccvfMakefileqceMakefilerockchipMakefilestm32KconfigMakefilesunxi-ssMakefileux500KconfigMakefilecrypMakefilehashMakefilevirtioKconfigMakefilevmxKconfigMakefiledaxKconfigMakefilehmemMakefilepmemMakefiledcaKconfigMakefiledevfreqKconfigMakefileeventKconfigMakefiledioMakefiledmadma-bufKconfigMakefileheapsKconfigMakefileKconfigMakefilebestcommKconfigMakefiledwdw-axi-dmacMakefileKconfigMakefilehsuKconfigMakefileidxdMakefileioatMakefileipuMakefilemediatekKconfigMakefileppc4xxMakefileptdmaKconfigMakefileqcomKconfigMakefileshKconfigMakefiletiKconfigMakefilexilinxMakefileedacKconfigMakefileeisaKconfigMakefileextconKconfigMakefilefirewireKconfigMakefilefirmwareKconfigMakefilearm_scmiMakefilebroadcomKconfigMakefilecirrusKconfigMakefileefiKconfigMakefilelibstubMakefiletestMakefilegoogleKconfigMakefilemesonKconfigMakefilepsciKconfigMakefilesmcccKconfigMakefiletegraKconfigMakefilefmcKconfigMakefilefpgaKconfigMakefilefsiKconfigMakefilegpioKconfigMakefilegpuMakefiledrmKconfigMakefileamdacpKconfigMakefileamdgpuKconfigMakefileamdkfdKconfigMakefiledisplayKconfigMakefileamdgpu_dmMakefiledcMakefilebasicsMakefilebiosMakefileclk_mgrMakefiledceMakefiledce100Makefiledce110Makefiledce112Makefiledce120Makefiledce60Makefiledce80Makefiledcn10Makefiledcn20Makefiledcn201Makefiledcn21Makefiledcn30Makefiledcn301Makefiledcn302Makefiledcn303Makefiledcn31Makefiledcn314Makefiledcn315Makefiledcn316Makefiledcn32Makefiledcn321MakefiledmlMakefiledscMakefilegpioMakefilehdcpMakefileirqMakefilelinkMakefilevirtualMakefiledmubsrcMakefilemodulescolorMakefilefreesyncMakefilehdcpMakefileinfo_packetMakefilepowerMakefilepmMakefilelegacy-dpmMakefilepowerplayMakefilehwmgrMakefilesmumgrMakefileswsmuMakefilesmu11Makefilesmu12Makefilesmu13MakefilearmKconfigMakefilearmadaKconfigMakefileaspeedKconfigMakefileastKconfigMakefileatmel-hlcdcKconfigMakefilebridgeKconfigMakefileadv7511KconfigMakefileanalogixKconfigMakefilecadenceKconfigMakefileimxKconfigMakefilesynopsysKconfigMakefiledisplayKconfigMakefileetnavivKconfigMakefileexynosKconfigMakefilefsl-dcuKconfigMakefilegma500KconfigMakefilegudKconfigMakefilehisiliconKconfigMakefilehibmcKconfigMakefilekirinKconfigMakefilehypervMakefilei2cKconfigMakefilei915KconfigKconfig.debugKconfig.profileKconfig.unstableMakefilegvtMakefileimxKconfigMakefilekmbKconfigMakefilelogicvcKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemgag200KconfigMakefilemsmKconfigMakefilemxsfbKconfigMakefilenouveauKconfigomapdrmKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilepanelKconfigMakefilepl111KconfigMakefileqxlKconfigMakefileradeonKconfigMakefilercar-duKconfigMakefilerockchipKconfigMakefileschedulerMakefileshmobileKconfigMakefilesolomonKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesun4iKconfigMakefiletegraKconfigMakefiletestsMakefiletilcdcKconfigMakefiletinyKconfigMakefilettmMakefiletve200KconfigMakefileudlKconfigMakefilev3dKconfigMakefilevboxvideoKconfigMakefilevc4KconfigMakefilevgemMakefilevirtioKconfigMakefilevkmsMakefilevmwgfxKconfigMakefilexenKconfigMakefilehost1xKconfigMakefileipu-v3KconfigMakefilevgaKconfigMakefilehidKconfigMakefileamd-sfh-hidKconfigMakefilei2c-hidKconfigMakefileintel-ish-hidKconfigMakefilesurface-hidKconfigMakefileusbhidKconfigMakefilehsiKconfigMakefileclientsKconfigMakefilecontrollersKconfigMakefilehvKconfigMakefilehwmonKconfigMakefilepmbusKconfigMakefilehwspinlockKconfigMakefilehwtracingKconfigcoresightKconfigMakefileintel_thKconfigMakefilestmKconfigMakefilei2cKconfigMakefilealgosKconfigMakefilebussesKconfigMakefilemuxesKconfigMakefileideKconfigMakefileidleKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileafeKconfigMakefileamplifiersKconfigMakefilebufferKconfigMakefilechemicalKconfigMakefilecommonKconfigMakefilecros_ec_sensorsKconfigMakefilehid-sensorsKconfigMakefilems_sensorsKconfigMakefilessp_sensorsKconfigMakefilest_sensorsKconfigMakefilecounterKconfigMakefiledacKconfigMakefiledummyKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefilehealthKconfigMakefilehumidityKconfigMakefileimuKconfigMakefilebmi160KconfigMakefileinv_mpu6050KconfigMakefilest_lsm6dsxKconfigMakefilelightKconfigMakefilemagnetometerKconfigMakefilemultiplexerKconfigMakefileorientationKconfigMakefilepotentiometerKconfigMakefilepotentiostatKconfigMakefilepressureKconfigMakefileproximityKconfigMakefileresolverKconfigMakefiletemperatureKconfigMakefiletestKconfigMakefiletriggerKconfigMakefileinfinibandKconfigMakefilecoreMakefilehwMakefilebnxt_reKconfigMakefilecxgb4KconfigMakefileefaKconfigMakefilehfi1KconfigMakefilehnsKconfigMakefileirdmaKconfigMakefilemanaKconfigMakefilemlx4KconfigMakefilemlx5KconfigMakefilemthcaKconfigMakefileocrdmaKconfigMakefileqedrKconfigMakefileqibKconfigMakefileusnicKconfigMakefilevmw_pvrdmaKconfigMakefileswMakefilerdmavtKconfigMakefilerxeKconfigMakefilesiwKconfigMakefileulpMakefileipoibKconfigMakefileiserKconfigMakefileisertKconfigMakefileopa_vnicKconfigMakefilesrpKconfigsrptKconfigMakefileinputKconfigMakefilegameportKconfigMakefilejoystickKconfigMakefileiforceKconfigMakefilekeyboardKconfigMakefilemiscKconfigMakefilemouseKconfigMakefilermi4KconfigMakefileserioKconfigMakefiletabletKconfigMakefiletouchscreenKconfigMakefileiommuKconfigMakefileamdKconfigMakefilearmMakefilearm-smmuarm-smmu-v3MakefileMakefileintelKconfigMakefileipackKconfigMakefilecarriersKconfigMakefiledevicesKconfigMakefileirqchipKconfigMakefileisdnKconfigMakefilecapiKconfigMakefiledivertMakefilegigasetKconfigMakefilehardwareKconfigMakefileavmKconfigMakefileeiconKconfigMakefilemISDNKconfigMakefilehisaxKconfigMakefilehysdnKconfigMakefilei4lKconfigMakefileisdnloopMakefilemISDNKconfigMakefileledsKconfigMakefiletriggerKconfigMakefilelightnvmKconfigMakefilemacintoshKconfigMakefileamsMakefilemailboxKconfigMakefilemcbKconfigMakefilemdKconfigMakefilebcacheKconfigMakefilepersistent-dataKconfigMakefilemediaKconfigMakefilececKconfigMakefilecommonKconfigMakefileb2c2KconfigMakefilesaa7146KconfigMakefilesianoKconfigMakefilev4l2-tpgKconfigMakefilevideobuf2KconfigMakefiledvb-coreKconfigMakefiledvb-frontendsKconfigMakefilecxd2880KconfigMakefiledrx39xyjKconfigMakefilefirewireKconfigMakefilei2cKconfigMakefileadv748xMakefilecx25840KconfigMakefileet8ek8KconfigMakefilem5molsKconfigMakefiles5c73m3MakefilesmiappKconfigMakefilesoc_cameraKconfigMakefilemmcKconfigMakefilesianoKconfigMakefilepciKconfigMakefileb2c2KconfigMakefilebt8xxKconfigMakefilecobaltKconfigMakefilecx18KconfigMakefilecx23885KconfigMakefilecx25821KconfigMakefilecx88KconfigMakefileddbridgeKconfigMakefiledm1105KconfigMakefiledt3155KconfigMakefileintelMakefileipu3KconfigMakefileivtvKconfigMakefilemantisKconfigMakefilemeyeKconfigMakefilenetup_unidvbKconfigMakefilengeneKconfigMakefilepluto2KconfigMakefilept1KconfigMakefilept3KconfigMakefilesaa7134KconfigMakefilesaa7146KconfigMakefilesaa7164KconfigMakefilesmipcieKconfigMakefilesolo6x10KconfigMakefilesta2x11KconfigMakefilettpciKconfigMakefiletw5864KconfigMakefiletw68KconfigMakefiletw686xKconfigMakefileplatformKconfigMakefileam437xKconfigMakefileatmelKconfigMakefilecadenceKconfigMakefilecec-gpioMakefilecodaMakefiledavinciKconfigMakefileexynos-gscMakefileexynos4-isKconfigMakefilemarvell-ccicKconfigMakefilemesonMakefilemtk-jpegMakefilemtk-mdpMakefilemtk-vcodecMakefilemtk-vpuMakefileomapKconfigMakefileomap3ispMakefileqcomcamss-8x16MakefilevenusMakefilercar-vinKconfigMakefilerockchiprgaMakefiles3c-camifMakefiles5p-cecMakefiles5p-g2dMakefiles5p-jpegMakefiles5p-mfcMakefilesoc_cameraKconfigMakefilestibdispMakefilec8sectpfeKconfigMakefilececMakefiledeltaMakefilehvaMakefilestm32Makefiletegra-cecMakefileti-vpeMakefilevimcKconfigMakefilevividKconfigMakefilevsp1MakefilexilinxKconfigMakefileradioKconfigMakefilesi470xKconfigMakefilesi4713KconfigMakefilewl128xKconfigMakefilercKconfigMakefileimg-irKconfigMakefilekeymapsKconfigMakefilespiKconfigMakefiletunersKconfigMakefileusbKconfigMakefileairspyKconfigMakefileas102KconfigMakefileau0828KconfigMakefileb2c2KconfigMakefilecpia2KconfigMakefilecx231xxKconfigMakefiledvb-usbdvb-usb-v2KconfigMakefileKconfigMakefileem28xxKconfigMakefilego7007KconfigMakefilegspcaKconfigMakefilegl860KconfigMakefilem5602KconfigMakefilestv06xxKconfigMakefilehackrfKconfigMakefilehdpvrKconfigMakefilemsi2500KconfigMakefilepulse8-cecKconfigMakefilepvrusb2KconfigMakefilepwcKconfigMakefilerainshadow-cecKconfigMakefiles2255KconfigMakefilesianoKconfigMakefilestk1160KconfigMakefilestkwebcamKconfigMakefiletm6000KconfigMakefilettusb-budgetKconfigMakefilettusb-decKconfigMakefileusbtvKconfigMakefileusbvisionKconfigMakefileuvcKconfigMakefilezr364xxKconfigMakefilev4l2-coreKconfigMakefilememoryKconfigMakefileMakefile.asm-offsetssamsungKconfigMakefiletegraKconfigMakefilememstickKconfigMakefilecoreKconfigMakefilehostKconfigMakefilemessageMakefilefusionKconfigMakefilemfdKconfigMakefilemiscKconfigMakefilealtera-staplKconfigMakefilec2portKconfigMakefilecardreaderKconfigMakefilecb710KconfigMakefilecxlKconfigMakefileechoKconfigMakefileeepromKconfigMakefilegenwqeKconfigMakefileibmasmMakefilelis3lv02dKconfigMakefilelkdtmMakefilemeiKconfigMakefilehdcpKconfigMakefilepxpKconfigMakefilemicKconfigMakefilebusMakefilecardMakefilecosmMakefilecosm_clientMakefilehostMakefilescifMakefilevopMakefileocxlKconfigMakefilesgi-gruMakefilesgi-xpMakefileti-stKconfigMakefilevmw_vmciKconfigMakefilemmcKconfigMakefilecoreKconfigMakefilehostKconfigMakefilemtdKconfigMakefilechipsKconfigMakefiledevicesKconfigMakefilelpddrKconfigMakefilemapsKconfigMakefilenandKconfigMakefileonenandKconfigMakefilerawKconfigMakefileatmelMakefilebcm47xxnflashMakefilebrcmnandMakefilegpmi-nandMakefileparsersKconfigMakefilespi-norKconfigMakefiletestsMakefileubiKconfigMakefilemuxKconfigMakefilenetKconfigMakefileappletalkKconfigMakefilearcnetKconfigMakefilebondingMakefilecaifKconfigMakefilecanKconfigMakefilec_canKconfigMakefilecc770KconfigMakefileifi_canfdKconfigMakefilem_canKconfigMakefilemscanKconfigMakefilepeak_canfdKconfigMakefilercarKconfigMakefilesja1000KconfigMakefilesoftingKconfigMakefilespiKconfigMakefileusbKconfigMakefilekvaser_usbMakefilepeak_usbMakefiledsaKconfigMakefileb53KconfigMakefilemicrochipKconfigMakefilemv88e6xxxKconfigMakefileethernet3comKconfigMakefile8390KconfigMakefileKconfigMakefileadaptecKconfigMakefileaeroflexKconfigMakefileagereKconfigMakefilealacritechKconfigMakefileallwinnerKconfigMakefilealteonKconfigMakefilealteraKconfigMakefileamazonKconfigMakefileenaMakefileamdKconfigMakefilexgbeMakefileapmKconfigMakefilexgenexgene-v2KconfigMakefileKconfigMakefileappleKconfigMakefileaquantiaKconfigMakefileatlanticMakefilehw_atlMakefilearcKconfigMakefileatherosKconfigMakefilealxMakefileatl1cMakefileatl1eMakefileatlxMakefileauroraKconfigMakefilebroadcomKconfigMakefilebnx2xMakefilebnxtMakefilegenetMakefilebrocadeKconfigMakefilebnaKconfigMakefilecadenceKconfigMakefilecalxedaKconfigMakefilecaviumKconfigMakefilecommonMakefileliquidioMakefileocteonMakefilethunderMakefilechelsioKconfigMakefilecxgbMakefilecxgb3Makefilecxgb4Makefilecxgb4vfMakefileinline_cryptoKconfigMakefilech_ipsecMakefilech_ktlsMakefilelibcxgbMakefilecirrusKconfigMakefileciscoKconfigMakefileenicKconfigMakefilecortinaKconfigMakefiledavicomKconfigMakefiledecKconfigMakefiletulipKconfigMakefiledlinkKconfigMakefileemulexKconfigMakefilebenetKconfigMakefileezchipKconfigMakefilefaradayKconfigMakefilefreescaleKconfigMakefiledpaaKconfigMakefilefmanKconfigMakefilefs_enetKconfigMakefilefujitsuKconfigMakefilegoogleKconfigMakefilegveMakefilehisiliconKconfigMakefilehnsMakefilehns3Makefilehns3pfMakefilehns3vfMakefilehpKconfigMakefilehuaweiKconfigMakefilehinicKconfigMakefilei825xxKconfigMakefileibmKconfigMakefileeheaMakefileemacKconfigMakefileintelKconfigMakefilee1000Makefilee1000eMakefilefm10kMakefilei40eMakefileiavfMakefileiceMakefileigbMakefileigbvfMakefileigcMakefileixgbMakefileixgbeMakefileixgbevfMakefilemarvellKconfigMakefilemvpp2MakefilemediatekKconfigMakefilemellanoxKconfigMakefilemlx4KconfigMakefilemlx5coreKconfigMakefileaccelMakefilediagMakefileenMakefilexskMakefileen_accelMakefileeswMakefilefpgaMakefileipoibMakefilelibMakefilesteeringMakefilemlxbf_gigeKconfigMakefilemlxfwKconfigMakefilemlxswKconfigMakefilemicrelKconfigMakefilemicrochipKconfigMakefilemicrosoftKconfigMakefilemanaMakefilemoxaKconfigMakefilemsccKconfigMakefilemyricomKconfigMakefilemyri10geMakefilenatsemiKconfigMakefileneterionKconfigMakefilevxgeMakefilenetronomeKconfigMakefilenfpMakefilebpfMakefileflowerMakefilenfpcoreMakefilenfp6000MakefilenicMakefileniKconfigMakefilenuvotonKconfigMakefilenvidiaKconfigMakefilenxpKconfigMakefileoki-semiKconfigMakefilepch_gbeKconfigMakefilepacketenginesKconfigMakefilepasemiKconfigMakefilepensandoKconfigMakefileionicMakefileqlogicKconfigMakefilenetxenMakefileqedMakefileqedeMakefileqlcnicMakefileqlgeMakefilequalcommKconfigMakefileemacMakefilermnetKconfigMakefilerdcKconfigMakefilerealtekKconfigMakefilerenesasKconfigMakefilerockerKconfigMakefilesamsungKconfigMakefilesxgbeMakefileseeqKconfigMakefilesfcKconfigMakefilefalconKconfigMakefilesienaKconfigMakefilesgiKconfigMakefilesilanKconfigMakefilesisKconfigMakefilesmscKconfigMakefilesocionextKconfigMakefilestmicroKconfigMakefilestmmacKconfigMakefilesunKconfigMakefilesynopsysKconfigMakefiletehutiKconfigMakefiletiKconfigMakefiletoshibaKconfigMakefiletundraKconfigMakefileviaKconfigMakefilewiznetKconfigMakefilexilinxKconfigMakefilexircomKconfigMakefilexscaleKconfigMakefilefddiKconfigMakefileskfpMakefilefjesMakefilehamradioKconfigMakefilehippiKconfigMakefilehypervKconfigMakefileieee802154KconfigMakefileipvlanMakefilenetdevsimMakefilepcsKconfigMakefilephyKconfigMakefileplipKconfigMakefilepppKconfigMakefileslipKconfigMakefileteamKconfigMakefilethunderboltKconfigMakefileusbKconfigMakefilevmxnet3MakefilewanKconfigMakefilelmcMakefilewimaxKconfigMakefilei2400mKconfigMakefilewirelessKconfigMakefileadmtekKconfigMakefileathKconfigMakefilear5523KconfigMakefileath10kKconfigMakefileath11kKconfigMakefileath12kKconfigMakefileath5kKconfigMakefileath6klKconfigMakefileath9kKconfigMakefilecarl9170KconfigMakefilewcn36xxKconfigMakefilewil6210KconfigMakefileatmelKconfigMakefilebroadcomKconfigMakefileb43KconfigMakefileb43legacyKconfigMakefilebrcm80211KconfigMakefilebrcmfmacKconfigMakefilebcaMakefilecywMakefilewccMakefilebrcmsmacMakefilebrcmutilMakefileciscoKconfigMakefileintelKconfigMakefileipw2x00KconfigMakefileiwlegacyKconfigMakefileiwlwifiKconfigMakefiledvmMakefilemeiMakefilemvmMakefileintersilKconfigMakefilehostapKconfigMakefileorinocoKconfigMakefilep54KconfigMakefileprism54MakefilelegacyKconfigMakefilemarvellKconfigMakefilelibertasKconfigMakefilelibertas_tfKconfigMakefilemwifiexKconfigMakefilemediatekKconfigMakefilemt76KconfigMakefilemt7603KconfigMakefilemt7615KconfigMakefilemt76x0KconfigMakefilemt76x2KconfigMakefilemt7915KconfigMakefilemt7921KconfigMakefilemt7996KconfigMakefilemt7601uKconfigMakefilequantennaKconfigMakefileqtnfmacKconfigMakefileralinkKconfigMakefilert2x00KconfigMakefilerealtekKconfigMakefilertl818xKconfigMakefilertl8180Makefilertl8187Makefilertl8xxxuKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8188eeMakefilertl8192cMakefilertl8192ceMakefilertl8192cuMakefilertl8192deMakefilertl8192eeMakefilertl8192seMakefilertl8723aeMakefilertl8723beMakefilertl8723comMakefilertl8821aeMakefilertw88KconfigMakefilertw89KconfigMakefilersiKconfigMakefilestKconfigMakefilecw1200KconfigMakefiletiKconfigMakefilewl1251KconfigMakefilewl12xxKconfigMakefilewl18xxKconfigMakefilewlcoreKconfigMakefilevirtualKconfigMakefilezydasKconfigMakefilezd1211rwKconfigMakefilexen-netbackMakefilenfcKconfigMakefilefdpKconfigMakefilemicroreadKconfigMakefilenfcmrvlKconfigMakefilenxp-nciKconfigMakefilepn533KconfigMakefilepn544KconfigMakefiles3fwrn5KconfigMakefilest-nciKconfigMakefilest21nfcaKconfigMakefilest95hfKconfigMakefilentbKconfigMakefilehwKconfigMakefileamdKconfigMakefileepfKconfigMakefileidtKconfigMakefileintelKconfigMakefilemsccKconfigMakefiletestKconfigMakefilenubusMakefilenvdimmKconfigMakefilenvmeKconfigMakefilehostKconfigMakefiletargetKconfigMakefilenvmemKconfigMakefileofKconfigMakefileunittest-dataMakefileoppKconfigMakefilepariscKconfigMakefileparportKconfigMakefilepciKconfigMakefilecontrollerKconfigMakefiledwcKconfigMakefileendpointKconfigMakefilefunctionsKconfigMakefilehotplugKconfigMakefilepcieKconfigMakefileswitchKconfigMakefilepcmciaKconfigMakefileperfKconfigMakefilehisiliconMakefilephyKconfigMakefileallwinnerKconfigMakefileamlogicKconfigMakefilebroadcomKconfigMakefilehisiliconKconfigMakefilelantiqKconfigMakefilemarvellKconfigMakefilemediatekKconfigMakefilemotorolaKconfigMakefilequalcommKconfigMakefileralinkKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefiletiKconfigMakefilepinctrlKconfigMakefileactionsKconfigMakefileaspeedKconfigMakefilebcmKconfigMakefileberlinKconfigMakefilefreescaleKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemvebuKconfigMakefilenomadikKconfigMakefilepxaKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilesh-pfcKconfigMakefilesirfMakefilespearKconfigMakefilesprdKconfigMakefilestm32KconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefilevt8500KconfigMakefilezteKconfigMakefileplatformKconfigMakefilechromeKconfigMakefilegoldfishKconfigMakefilemellanoxKconfigMakefilemipsKconfigMakefileolpcMakefilex86KconfigMakefiledell-wmi-sysmanMakefileintelKconfigMakefileifsKconfigMakefilepmcKconfigMakefilepmtKconfigMakefilespeed_select_ifKconfigMakefileuncore-frequencyKconfigMakefilepnpKconfigMakefileisapnpKconfigMakefilepnpacpiKconfigMakefilepnpbiosKconfigMakefilepowerKconfigMakefileavsKconfigMakefileresetKconfigMakefilesupplyKconfigMakefilepowercapKconfigMakefileppsKconfigMakefileclientsKconfigMakefilegeneratorsKconfigMakefileps3MakefileptpKconfigMakefilepwmKconfigMakefilerapidioKconfigMakefiledevicesKconfigMakefileswitchesKconfigMakefilerasKconfigMakefileregulatorKconfigMakefileremoteprocKconfigMakefileresetKconfigMakefilehisiliconKconfigMakefilestiKconfigMakefiletegraKconfigMakefilerpmsgKconfigMakefilertcKconfigMakefiles390MakefileblockKconfigMakefilecharKconfigMakefilecioMakefilecryptoMakefilenetKconfigMakefilescsiMakefilevirtioMakefilesbusMakefilecharKconfigMakefilescsiKconfigMakefileaacraidMakefileaic7xxxKconfig.aic79xxKconfig.aic7xxxMakefileaicasmMakefileaic94xxKconfigMakefilearcmsrMakefilearmKconfigMakefilebe2iscsiKconfigMakefilebfaMakefilebnx2fcKconfigMakefilebnx2iKconfigMakefilecsiostorKconfigMakefilecxgbiKconfigMakefilecxgb3iKconfigcxgb4iKconfigcxlflashKconfigMakefiledevice_handlerKconfigMakefileesas2rKconfigMakefilefcoeMakefilefnicMakefilehisi_sasKconfigMakefileibmvscsiMakefileibmvscsi_tgtMakefileisciMakefilelibfcMakefilelibsasKconfigMakefilelpfcMakefilemegaraidKconfig.megaraidMakefilempi3mrKconfigMakefilempt3sasKconfigMakefilemvsasKconfigMakefilepcmciaKconfigMakefilepm8001MakefileqedfKconfigMakefileqediKconfigMakefileqla2xxxKconfigMakefileqla4xxxKconfigMakefilesmartpqiKconfigMakefilesnicMakefilesym53c8xx_2MakefileufsKconfigMakefilesfiKconfigMakefileshKconfigMakefileclkMakefileintcKconfigMakefilemapleMakefilesuperhywayMakefilesioxKconfigMakefileslimbusKconfigMakefilesnKconfigMakefilesocKconfigMakefileactionsKconfigMakefileamlogicKconfigMakefileatmelKconfigMakefilebcmKconfigMakefilebrcmstbKconfigMakefilepmMakefiledoveMakefilefslKconfigMakefileqbmanKconfigMakefileqeKconfigMakefilefujitsuKconfigMakefilegeminiMakefileimxKconfigMakefilelantiqMakefilemediatekKconfigMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefilefuseMakefiletiKconfigMakefileux500KconfigMakefileversatileKconfigMakefilexilinxKconfigMakefilezteKconfigMakefilesoundwireKconfigMakefilespiKconfigMakefilespmiKconfigMakefilessbKconfigMakefilestagingKconfigMakefileandroidKconfigMakefileionKconfigMakefileboardKconfigMakefileclocking-wizardKconfigMakefilecomediKconfigMakefiledriversMakefilekcomedilibMakefiledgncKconfigMakefileemxx_udcKconfigMakefilefbtftKconfigMakefilefsl-dpaa2KconfigMakefileethernetMakefileethswMakefilertcMakefilefsl-mcKconfigMakefilebusKconfigMakefiledpioMakefilefwserialKconfigMakefilegdm724xKconfigMakefilegoldfishKconfigMakefilegreybusKconfigMakefiletoolsMakefilegs_fpgabootKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileaddacKconfigMakefilecdcKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefileimpedance-analyzerKconfigMakefilemeterKconfigMakefileresolverKconfigMakefileks7010KconfigMakefilemediaKconfigMakefilebcm2048KconfigMakefiledavinci_vpfeKconfigMakefileimxKconfigMakefileimx074KconfigMakefilemt9t031KconfigMakefileomap4issKconfigMakefiletegra-vdeKconfigMakefilezoranKconfigMakefilemostKconfigMakefilecdevKconfigMakefiledim2KconfigMakefilei2cKconfigMakefilenetKconfigMakefilesoundKconfigMakefileusbKconfigMakefilevideoKconfigMakefilemt29f_spinandKconfigMakefilemt7621-dmaKconfigMakefilemt7621-dtsKconfigMakefilemt7621-ethKconfigMakefilemt7621-gpioKconfigMakefilemt7621-mmcKconfigMakefilemt7621-pciMakefilemt7621-pinctrlKconfigMakefilemt7621-spiKconfigMakefilenetlogicKconfigMakefilenvecKconfigMakefileocteonocteon-usbKconfigMakefileKconfigMakefileolpc_dconKconfigMakefilepi433KconfigMakefilertl8188euKconfigMakefilertl8192eKconfigMakefilertl8192eKconfigMakefilertl8192uKconfigMakefileieee80211Makefilertl8712KconfigMakefilertl8723bsKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8822beMakefilerts5208KconfigMakefileskeinKconfigMakefilesm750fbKconfigMakefilespeakupKconfigMakefileunisysKconfigMakefilevisorhbaKconfigMakefilevisorinputKconfigMakefilevisornicKconfigMakefilevboxvideoKconfigMakefilevc04_servicesKconfigMakefilebcm2835-audioKconfigMakefilebcm2835-cameraKconfigMakefilevmeMakefiledevicesKconfigMakefilevt6655KconfigMakefilevt6656KconfigMakefilewilc1000KconfigMakefilewlan-ngKconfigMakefilexgifbKconfigMakefiletargetKconfigMakefileiscsiKconfigMakefilecxgbitKconfigMakefileloopbackKconfigMakefilesbpKconfigMakefiletcm_fcKconfigMakefiletcMakefileteeKconfigMakefileopteeKconfigMakefilethermalKconfigMakefilebroadcomKconfigMakefileintelKconfigMakefileint340x_thermalKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefileti-soc-thermalKconfigMakefilethunderboltKconfigMakefilettyKconfigMakefilehvcKconfigMakefileipwirelessMakefileserdevKconfigMakefileserial8250KconfigMakefileKconfigMakefilecpm_uartMakefilejsmMakefilevtMakefileuioKconfigMakefileusbKconfigMakefileatmKconfigMakefilec67x00MakefilechipideaKconfigMakefileclassKconfigMakefilecommonKconfigMakefilecoreKconfigMakefiledwc2KconfigMakefiledwc3KconfigMakefileearlyMakefilegadgetKconfigMakefilefunctionMakefilelegacyKconfigMakefileudcKconfigMakefileaspeed-vhubKconfigMakefilebdcKconfigMakefilehostKconfigMakefilewhciMakefileimageKconfigMakefileisp1760KconfigMakefilemiscKconfigMakefilesisusbvgaKconfigMakefilemonKconfigMakefilemtu3KconfigMakefilemusbKconfigMakefilephyKconfigMakefilerenesas_usbhsKconfigMakefilerolesKconfigMakefileserialKconfigMakefileMakefile-keyspan_pda_fwstorageKconfigMakefiletypecKconfigMakefilealtmodesKconfigMakefilemuxKconfigMakefiletcpmKconfigMakefiletipdKconfigMakefileucsiKconfigMakefileusbipKconfigMakefilewusbcoreKconfigMakefileuwbKconfigMakefilei1480MakefiledfuMakefilevdpaKconfigMakefilealibabaMakefileifcvfMakefilemlx5Makefilevdpa_simMakefilevirtio_pciMakefilevfioKconfigMakefilemdevKconfigMakefilepciKconfigMakefileplatformKconfigMakefileresetKconfigMakefilevhostKconfigKconfig.vringhMakefilevideoKconfigMakefilebacklightKconfigMakefileconsoleKconfigMakefilefbdevKconfigMakefileatyMakefilecoreMakefilegeodeKconfigMakefilei810MakefileintelfbMakefilekyroMakefilematroxMakefilemb862xxMakefilembxMakefilemmpKconfigMakefilefbKconfigMakefilehwKconfigMakefilepanelKconfigMakefilenvidiaMakefileomapKconfigMakefileomap2KconfigMakefileomapfbKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilerivaMakefilesavageMakefilesisMakefilevermilionMakefileviaMakefilelogoKconfigMakefilevirtKconfigMakefilecocosev-guestKconfigMakefiletdx-guestKconfigMakefilenitro_enclavesKconfigMakefilevboxguestKconfigMakefilevirtioKconfigMakefilevisorbusKconfigMakefilevlynqKconfigMakefilevmeKconfigMakefileboardsKconfigMakefilebridgesKconfigMakefilew1KconfigMakefilemastersKconfigMakefileslavesKconfigMakefilewatchdogKconfigMakefilexenKconfigMakefileeventsMakefilexen-pcibackMakefilexenbusMakefilexenfsMakefilezorroKconfigMakefilefirmwareMakefilefs9pKconfigMakefileKconfigKconfig.binfmtMakefileadfsKconfigMakefileaffsKconfigMakefileafsKconfigMakefileautofsKconfigMakefilebefsKconfigMakefilebfsKconfigMakefilebtrfsKconfigMakefilecachefilesKconfigMakefilecephKconfigMakefilecifsKconfigMakefilecodaKconfigMakefileconfigfsKconfigMakefilecramfsKconfigMakefilecryptoKconfigMakefiledebugfsMakefiledevptsMakefiledlmKconfigMakefileecryptfsKconfigMakefileefivarfsKconfigMakefileefsKconfigMakefileexportfsMakefileext2KconfigMakefileext4KconfigMakefilef2fsKconfigMakefilefatKconfigMakefilefreevxfsKconfigMakefilefscacheKconfigMakefilefuseKconfigMakefilegfs2KconfigMakefilehfsKconfigMakefilehfsplusKconfigMakefilehostfsMakefilehpfsKconfigMakefilehugetlbfsMakefileiomapMakefileisofsKconfigMakefilejbd2KconfigMakefilejffs2KconfigMakefilejfsKconfigMakefilekernfsKconfigMakefilelockdMakefileminixKconfigMakefilenfsKconfigMakefileblocklayoutMakefilefilelayoutMakefileflexfilelayoutMakefilenfs_commonMakefilenfsdKconfigMakefilenilfs2KconfigMakefilenlsKconfigMakefilenotifyKconfigMakefilednotifyKconfigMakefilefanotifyKconfigMakefileinotifyKconfigMakefilentfsKconfigMakefileocfs2KconfigMakefileclusterMakefiledlmMakefiledlmfsMakefileomfsKconfigMakefileopenpromfsMakefileorangefsKconfigMakefileoverlayfsKconfigMakefileprocKconfigMakefilepstoreKconfigMakefileqnx4KconfigMakefileqnx6KconfigMakefilequotaKconfigMakefileramfsMakefilereiserfsKconfigMakefileromfsKconfigMakefilesquashfsKconfigMakefilesysfsKconfigMakefilesysvKconfigMakefiletracefsMakefileubifsKconfigMakefileudfKconfigMakefileufsKconfigMakefilexfsKconfigMakefileincludeacpiacbuffer.hacconfig.hacexcep.hacnames.hacoutput.hacpi.hacpi_bus.hacpi_drivers.hacpi_io.hacpi_lpat.hacpi_numa.hacpiosxf.hacpixf.hacrestyp.hactbl.hactbl1.hactbl2.hactbl3.hactypes.hacuuid.hapei.hbattery.hbutton.hcppc_acpi.hghes.hhed.hnfit.hpcc.hpdc_intel.hplatformacenv.hacenvex.hacgcc.hacgccex.hacintel.haclinux.haclinuxex.hprocessor.hreboot.hvideo.hasm-generic4level-fixup.h5level-fixup.hasm-offsets.hasm-prototypes.hatomic-instrumented.hatomic-long.hatomic.hatomic64.haudit_change_attr.haudit_dir_write.haudit_read.haudit_signal.haudit_write.hbarrier.hbitopsbitops-instrumented.hbitops.h__ffs.h__fls.harch_hweight.hatomic.hbuiltin-__ffs.hbuiltin-__fls.hbuiltin-ffs.hbuiltin-fls.hconst_hweight.hext2-atomic-setbit.hext2-atomic.hffs.hffz.hfind.hfls.hfls64.hhweight.hle.hlock.hnon-atomic.hsched.hbitsperlong.hbug.hbugs.hcache.hcacheflush.hchecksum.hcmpxchg-local.hcmpxchg.hcompat.hcurrent.hdelay.hdevice.hdiv64.hdma-contiguous.hdma-mapping.hdma.hearly_ioremap.hemergency-restart.herror-injection.hexec.hexport.hextable.hfb.hfixmap.hftrace.hfutex.hgetorder.hgpio.hhardirq.hhugetlb.hhw_irq.hhyperv-tlfs.hide_iops.hint-ll64.hio.hioctl.hiomap.hirq.hirq_regs.hirq_work.hirqflags.hkdebug.hkmap_size.hkprobes.hkvm_para.hkvm_types.hlinkage.hlocal.hlocal64.hmcs_spinlock.hmemory_model.hmm-arch-hooks.hmm_hooks.hmmiowb.hmmiowb_types.hmmu.hmmu_context.hmodule.hmshyperv.hmsi.hnuma.hpage.hparam.hparport.hpci.hpci_iomap.hpercpu.hpgalloc.hpgtable-nop4d-hack.hpgtable-nop4d.hpgtable-nopmd.hpgtable-nopud.hpgtable.hpgtable_uffd.hpreempt.hptrace.hqrwlock.hqrwlock_types.hqspinlock.hqspinlock_types.hresource.hseccomp.hsections.hsegment.hserial.hset_memory.hsignal.hsimd.hsizes.hspinlock.hstatfs.hstring.hswitch_to.hsyscall.hsyscalls.htermios-base.htermios.htimex.htlb.htlbflush.htopology.htrace_clock.huaccess.hunaligned.hunistd.huser.hvdsovsyscall.hvga.hvmlinux.lds.hvtime.hword-at-a-time.hxor.hclocksourcearm_arch_timer.hhyperv_timer.hpxa.hsamsung_pwm.htimer-sp804.htimer-ti-dm.hconfig64bit.h6lowpan.h8139cp.h8139too8139too.h8129.h842compress.hdecompress.hac97bus.hadvisesyscalls.haio.halim7101wdt.hallowdevcoredump.halterastapl.haltivec.halx.hamdphy.hapds9802als.haperturehelpers.haquantiaphy.harchcpuproberelease.hdmaaddrt64bit.henablehugepagemigration.hmemoryhotplug.hhotremove.hsplitpmdptlock.hhasdevmemisallowed.hdmamapdirect.helfrandomize.hfastmultiplier.hforcedmaunencrypted.hfortifysource.hgcovprofileall.hgiganticpage.hhugepd.hkexecpurgatory.hmemencrypt.hmembarriercallbacks.hmemremapcompatalign.hmmiowb.hnonoverlappingaddressspace.hphystodma.hpkeys.hpmemapi.hptespecial.hsgchain.htickbroadcast.huaccessflushcache.hmcsafe.hubsansanitizeall.hwalkmemory.hzonedevice.hhavenmisafecmpxchg.hhibernationpossible.hkeepmemblock.hmayhavepcfdc.hmemoryprobe.hmighthavepcparport.hserio.hmmaprndbitsbits.hmax.hmin.hcompatbitsbits.hmax.hmin.hrandom.hselectmemorymodel.hsparsememdefault.henable.hsupportsatomicrmw.hdebugpagealloc.hmemoryfailure.hnumabalancing.huprobes.hsuspendnonzerocpu.hpossible.husebuiltinbswap.hcmpxchglockref.huseshighvmaflags.hwantcompatipcparseversion.hipcparseversion.hirqsoffactivatemm.holdcompatipc.hweakreleaseacquire.harmgicmaxnr.hasn1.hassociativearray.hasymmetrickeytype.hpublickeysubtype.hasynccore.hmemcpy.hpq.hraid6recov.htest.htxdma.hxor.hataata.hbmdma.hgeneric.hpiix.hsff.hverboseerror.hatl1.hatl1c.hatl1e.hatl2.hatmatm.hbr2684.hclip.hlane.hatomic64selftest.hauditaudit.harch.hauditsyscall.hauto.confauto.conf.cmdautofsfs.hautofs4fs.hauxiliarybus.hbacklightclassdevice.hlcdsupport.hlp855x.hpwm.hballooncompaction.hbareudp.hbasefull.hsmall.hbcmnetphylib.hbcm7xxxphy.hbcm87xxphy.hbcmabcma.hdrivergmaccmn.hgpio.hpci.hhostpcipci.hpossible.hpossible.hbe2iscsi.hbe2netbe2net.hhwmon.hlancer.hskyhawk.hbfqgroupiosched.hbigkeys.hbinaryprintf.hbinfmtelf.hmisc.hscript.hbitfieldkunittest.hbitreverse.hbitskunittest.hblkcgroupcgroup.hfcappid.hiolatency.hrwstat.hdebugfs.hdevdev.hbsg.hbsglib.hdmdm.hbuiltin.hinitrd.hintegrityintegrity.ht10.hiotrace.hlooploop.hmincount.hmd.hnbd.hnullblk.hnvme.hpmem.hramram.hcount.hsize.hrbd.hrsxx.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.hblockblock.hcompat.hbnx2.hbnx2xbnx2x.hsriov.hbnxtbnxt.hdcb.hfloweroffload.hhwmon.hsriov.hbonding.hbootparamhardlockuppanicvalue.hhungtaskpanicvalue.hsoftlockuppanicvalue.hbootxtext.hbounce.hbpfbpf.hevents.hjitjit.halwayson.hdefaulton.hlsm.hstreamparser.hsyscall.hunprivdefaultoff.hbql.hbranchprofilenone.hbridgebridge.hebt8023.hamong.harp.harpreply.hbroute.hdnat.hip.hip6.hlimit.hlog.hmarkmark.ht.hnflog.hpkttype.hredirect.hsnat.hstp.htfilter.hnat.hvlan.higmpsnooping.hnetfilter.hnfebtables.hvlanfiltering.hbroadcomphy.hbsddisklabel.hprocessacctacct.hv3.hbtbt.hath3k.hbcm.hbnepbnep.hmcfilter.hprotofilter.hbredr.hcmtp.hdebugfs.hhcibcm203x.hhcibfusb.hhcibpa10x.hhcibtsdio.hhcibtusbhcibtusb.hautosuspend.hbcm.hmtk.hrtl.hhciuarthciuart.hath3k.hbcsp.hh4.hhcivhci.hhidp.hhs.hintel.hle.hmrvlmrvl.hsdio.hmtk.hrfcommrfcomm.htty.hrtl.hbtree.hbtt.hbugbug.hondatacorruption.hbuildbin2c.hbuildtimeextablesort.hcachefiles.hcancan.h8devusb.hbcm.hccancan.hpci.hplatform.hcalcbittiming.hcc770cc770.hplatform.hdev.hemspci.husb.hesdusb2.hgw.hkvaserpci.husb.hleds.hpeakpci.hpciec.husb.hplxpci.hraw.hsja1000sja1000.hplatform.hslcan.hsofting.hucan.hvcan.hcapiavm.hcardbus.hcaviumptp.hcb710core.hdebugassumptions.hcccanlink.hhaskasangeneric.hsancovtracepc.hstackprotectornone.hworkingnosanitizeaddress.hisgcc.hoptimizeforperformance.hcdromcdrom.hpktcdvdpktcdvd.hbuffers.hceccore.hplatformdrivers.hcephfsfs.hposixacl.hsecuritylabel.hliblib.husednsresolver.hcfsbandwidth.hcgroupbpf.hcpuacct.hdevice.hfreezer.hhugetlb.hnetclassid.hprio.hperf.hpids.hrdma.hsched.hwriteback.hcgroups.hchargersmb347.hchecksignature.hcheckpointrestore.hchelsioinlinecrypto.hipsecinline.hlib.ht4.ht4vf.htlsdevice.hchrdevsch.hsg.hst.hcicadaphy.hcifscifs.hallowinsecurelegacy.hdebug.hdfsupcall.hposix.hsmbdirect.hupcall.hweakpwhash.hxattr.hclangversion.hcleancache.hclkbldi8253.hclonebackwards.hclsu32mark.hperf.hclztab.hcmacma.hareas.hcmdlinecmdline.hkunittest.hcmm.hcnic.hcompaction.hcompatcompat.h32bittime.hbinfmtelf.holdsigaction.hconfigfsfs.hconnector.hconsolelogleveldefault.hquiet.hpoll.htranslations.hcontextswitchtracer.htracking.hcontigalloc.hcordic.hcoredumpdefaultelfheaders.hcoredump.hcortinaphy.hcpufreqfreq.hdefaultgovperformance.hgovattrset.hcommon.hconservative.hondemand.hperformance.hpowersave.hschedutil.huserspace.hstat.hidleidle.hgovhaltpoll.hmenu.hisolation.hlittleendian.hrmap.hcpusets.hcramfscramfs.hblockdev.hcrashcore.hdump.hcrcccitt.hitut.ht10dif.hcrc16.hcrc32crc32.hsliceby8.hcrc7.hcrc8.hcrossmemoryattach.hcryptocrypto.h842.hacomp2.haead.haead2.haes.hakcipher.hakcipher2.halgapi.halgapi2.hansicprng.hanubis.harc4.hauthenc.hblkcipher.hblkcipher2.hblowfishblowfish.hcommon.hcamellia.hcastcommon.hcast5.hcast6.hcbc.hccm.hcfb.hchacha20.hchacha20poly1305.hcmac.hcrc32.hcrc32c.hcrct10dif.hcryptd.hctr.hcts.hdeflate.hdes.hdevchelsio.hnitroxnitrox.hcnn55xx.hnxnx.hcompresscompress.hpowernv.hpseries.hvmxvmx.hencrypt.hdrbgdrbg.hctr.hhash.hhmac.hmenu.hecb.hecdh.hechainiv.hessiv.hfcrypt.hfipsfips.hname.hgcm.hgf128mul.hghash.hhashhash.hinfo.hhash2.hhmac.hhw.hjitterentropy.hkhazad.hkpp.hkpp2.hlibarc4.hsha256.hlrw.hlzo.hmanager.hmanager2.hmd4.hmd5.hmichaelmic.hnull.hnull2.hpcbc.hpcrypt.hpoly1305.hrmd128.hrmd160.hrmd256.hrmd320.hrngrng.hdefault.hrng2.hrsa.hsalsa20.hseed.hseqiv.hserpent.hsha1.hsha256.hsha3.hsha512.htea.htest.htgr192.htwofishtwofish.hcommon.huseruser.hapiapi.haead.hhash.hrng.hskcipher.hvmac.hworkqueue.hwp512.hxcbc.hxts.hcuse.hcxlcxl.hafudriverops.hbase.hbimodal.hlib.hcxlflash.hcyclades.hcypressfirmware.hdamondamon.hdbgfs.hpaddr.hreclaim.hvaddr.hdavicomphy.hdaxdax.hdriver.hdcachewordaccess.hdcb.hdeaoc.hdebugbugverbose.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hlist.hmemoryinit.hsectionmismatch.hshirq.hstackoverflow.hdebugger.hdecompressbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hdefaultcubic.hfqcodel.hhostname.hhungtasktimeout.hmmapminaddr.hnetsch.hsecurityselinux.htcpcong.hdetecthungtask.hdevcoredump.hdaxdax.hpmempmem.hcompat.hdeviceprivate.hdevmem.hdevtmpfsdevtmpfs.hmount.hdimlib.hdlcidlci.hmax.hdlmdlm.hdebug.hdmbioprison.hbufio.hcachecache.hsmq.hcrypt.hdebug.hdelay.hera.hflakey.hintegrity.hloguserspace.hwrites.hmirror.hmultipathmultipath.hhst.hioa.hql.hst.hpersistentdata.hraid.hsnapshot.hswitch.hthinprovisioning.huevent.hverity.hwritecache.hzero.hdmaengineengine.hraid.hof.hopsops.hbypass.hsharedbuffer.hdmadevices.hdmatest.hdnet.hdnotify.hdnsresolver.hdp83640phy.hdp83822phy.hdp83848phy.hdp83867phy.hdp83tc811phy.hdql.hdrmdrm.hamdacp.hdc.hamdgpuamdgpu.huserptr.hast.hbochs.hbridge.hbuddy.hcirrusqemu.hdisplaydphelper.hhdcphelper.hhdmihelper.hhelper.hdpauxchardev.hexportfortests.hfbdevemulation.hoveralloc.hgemshmemhelper.hi2cch7006.hsil164.hkmshelper.hkunittesttest.hhelpers.hlibrandom.hloadedidfirmware.hmgag200.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvirtiogpu.hvkms.hvramhelper.hdstcache.hdtc.hdtl.hdummydummy.hconsoleconsole.hcolumns.hrows.hdvba8293.haf9013.haf9033.hatbm8830.hau8522au8522.hdtv.hv4l.hav7110av7110.hir.hosd.hb2c2flexcopflexcop.hpci.husb.hbcm3510.hbt8xx.hbudgetbudget.hav.hci.hcore.hpatch.hcore.hcx22700.hcx22702.hcx24110.hcx24116.hcx24117.hcx24120.hcx24123.hcxd2099.hcxd2820r.hcxd2841er.hddbridge.hdib3000mb.hdib3000mc.hdib7000m.hdib7000p.hdib8000.hdm1105.hdrx39xyj.hdrxd.hdrxk.hds3000.hdummyfe.hdynamicminors.hec100.hfiredtvfiredtv.hinput.hgp8pskfe.hhopper.hisl6405.hisl6421.hisl6423.hix2505v.hl64781.hlg2160.hlgdt3305.hlgdt3306a.hlgdt330x.hlgs8gxx.hlnbh25.hlnbp21.hlnbp22.hm88ds3103.hm88rs2000.hmantis.hmaxadapters.hmb86a16.hmb86a20s.hmn88472.hmn88473.hmt312.hmt352.hmxl5xx.hnet.hngene.hnxt200x.hnxt6000.hor51132.hor51211.hpll.hpluto2.hpt1.hrtl2830.hrtl2832.hs5h1409.hs5h1411.hs5h1420.hs921.hsi2165.hsi2168.hsi21xx.hsp8870.hsp887x.hstb0899.hstb6000.hstb6100.hstv0288.hstv0297.hstv0299.hstv0367.hstv0900.hstv090x.hstv0910.hstv6110.hstv6110x.hstv6111.htc90522.htda10021.htda10023.htda10048.htda1004x.htda10071.htda10086.htda18271c2dd.htda665x.htda8083.htda8261.htda826x.hts2020.httusbbudget.hdec.htua6100.htunercx24113.hdib0070.hdib0090.hitd1000.husbusb.ha800.haf9005af9005.hremote.haf9015.haf9035.hanysee.hau6610.haz6007.haz6027.hce6230.hcinergyt2.hcxusb.hdib0700.hdib3000mc.hdibusbmb.hmc.hdigitv.hdtt200u.hdtv5100.hdw2102.hec168.hgl861.hgp8psk.hlme2510.hm920x.hmxl111sf.hnovatusb2.hopera1.hpctv452e.hrtl28xxu.htechnisatusb2.httusb2.humt010.hv2.hvp702x.hvp7045.hves1820.hves1x93.hzl10036.hzl10039.hzl10353.hdwdmacdmac.hcore.hdynamicdebug.hftraceftrace.hwithregs.he1000e.hearlyprintk.hedacedac.hatomicscrub.hcpc925.hlegacysysfs.hsupport.heeh.heeprom93cx6.hat24.hlegacy.hmax6875.hefipartition.helfcore.helfcore.henablemustcheck.henclosureservices.hencryptedkeys.henergymodel.henic.hepaprboot.hparavirt.hepoll.hethernet.hethoc.hethtoolnetlink.heventtracing.heventfd.hevmevm.hattrfsuuid.hexclusivesystemram.hexportfsexportfs.hblockops.hext4fsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextrafirmware.htargets.hfadump.hfailover.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.hfbfb.hbacklight.hcfbcopyarea.hfillrect.himageblit.hcmdline.hdeferredio.hibmgxt4500.hmacmodes.hmatroxmatrox.hg.hmodehelpers.hnotify.hnvidianvidia.hbacklight.hof.hradeonradeon.hbacklight.hssd1307.hsyscopyarea.hfillrect.hfops.himageblit.htileblitting.hvga16.hfcappid.hfhandle.hfibrules.hfilelocking.hfipssignatureselftest.hfirewirefirewire.hnet.hohci.hsbp2.hfixedphy.hfm10k.hfont8x16.h8x8.hsupport.hforcemaxzoneorder.hsmp.hfortifysource.hframewarn.hframebufferconsoleconsole.hdeferredtakeover.hdetectprimary.hrotation.hfreezer.hfrontswap.hfsdaxdax.hpmd.hiomap.hmbcache.hposixacl.hfscachefscache.hstats.hfsnotify.hftraceftrace.hmcountrecord.hsyscalls.hfunctiongraphtracer.htracer.hfusefs.hfusionfusion.hlogging.hmaxsge.hsas.hspi.hfutexfutex.hpi.hfwloaderloader.hsysfs.huserhelper.hgactprob.hgarp.hgccversion.hgenericallocator.hbug.hclockeventsclockevents.hbroadcast.hcmosupdate.hcpucpu.hautoprobe.hvulnerabilities.hhweight.hiomap.hirqinjection.hmigration.hshowshow.hlevel.hisadma.hmsiirq.hnetutils.hpciiomap.hsmpidlethread.hstrncpyfromuser.hstrnlenuser.htimevsyscall.htracer.hgeneve.hgenwqegenwqe.hplatformerrorrecovery.hgfs2fsfs.hlockingdlm.hgigasetbase.hcapi.hm101.hm105.hglob.hgpiopca953x.hpcf857x.hsysfs.hviperboard.hgpiolibgpiolib.hfastpathlimit.hirqchip.hgraceperiod.hgrocells.hgve.hhangchecktimer.hhardenedusercopyusercopy.hfallback.hhardirqsswresend.hhardlockupdetector.hhasdma.hiomem.hioportmap.hhashkunittest.hhavearchauditsyscall.hjumplabel.hkgdb.hmmaprndbits.hcompatbits.hseccompfilter.hsoftdirty.htracehook.htransparenthugepage.hbootmeminfonode.hcontexttracking.hdebugkmemleak.hstackoverflow.hdynamicftraceftrace.hwithregs.hebpfjit.hefficientunalignedaccess.hfastgup.hftracemcountrecord.hfunctiongraphtracer.htracer.hgccplugins.hhardenedusercopyallocator.hhardlockupdetectorarch.hhwbreakpoint.hide.himakexec.hioremapprot.hirqtimeaccounting.hkernelgzip.hxz.hkprobeskprobes.honftrace.hkretprobes.hkvmeventfd.hirqbypass.hirqchip.hirqfd.hvcpuasyncioctl.hlddeadcodedataelimination.hlivepatch.hmemorypresent.hmemorylessnodes.hmodarchspecific.hnetdsa.hnminmi.hwatchdog.hoprofile.hoptprobes.hpcspkrplatform.hperfeventsevents.hnmi.hregs.huserstackdump.hregsandstackaccessapi.hreliablestacktrace.hrseq.hsetuppercpuarea.hstackprotector.hsyscalltracepoints.hvirtcpuaccountingaccounting.hgen.hhdlchdlc.hcisco.hfr.hppp.hraw.hhdmi.hheaderscheck.hhidhid.ha4tech.hacrux.happle.happleir.haureal.hbatterystrength.hbelkin.hcherry.hchicony.hcypress.hdragonrise.helan.helecom.hezkey.hgeneric.hgreenasia.hgyration.hholtek.hicade.hite.hjabra.hkensington.hkeytouch.hkye.hlcpower.hled.hlogitechlogitech.hdj.hhidpp.hmagicmouse.hmicrosoft.hmonterey.hmultitouch.hnti.hntrig.hortek.hpantherlord.hpetalynx.hpicolcdpicolcd.hbacklight.hcir.hfb.hlcd.hleds.hpid.hprimax.hprodikeys.hrmi.hroccat.hsaitek.hsamsung.hsmartjoyplus.hsony.hspeedlink.hsteelseries.hsunplus.hthingm.hthrustmaster.htivo.htopseed.htwinhan.huclogic.hwacom.hwaltop.hwiimote.hzeroplus.hzydacron.hhidraw.hhighrestimers.hhisax163.h1tr6.havma1pcmcia.hbkma4t.hdiehldiva.helsa.heuro.hfritzpcipnp.hgazel.hhfcsx.hhfc4s8s.hmaxcards.hni1.hniccy.hnokeypad.hllc.hsendcomplete.hs0box.hsctquadro.hsedlbauer.hst5481.hw6692.hhisttriggers.hhmmmirror.hhotplugcpu.hpcipci.hpowernv.hrparpa.hdlpar.hshpc.hhsaamdamd.hsvm.hhugetlbpagepage.hsizevariable.hhugetlbfs.hhvperfctrs.hhvcconsole.hdriver.hirq.hopal.hrtas.hhvcs.hhwconsole.hrandomrandom.hpowernv.hpseries.htimeriomem.htpm.hvirtio.hhwlattracer.hhwmonhwmon.hvid.hhwpoisoninject.hhwspinlock.hhysdnhysdn.hcapi.hhzhz.h100.hi2ci2c.halgobit.halgopca.hboardinfo.hchardev.hcompat.hdesignwarecore.hplatform.hdiolanu2c.hhelperauto.hhid.hmpc.hmuxmux.hmlxcpld.hnforce2.hopal.hparportparport.hlight.hpcaplatform.hsimtec.hsmbus.hstub.htinyusb.hviperboard.hi40ei40e.hdcb.hi40evf.hi6300esbwdt.hi8253lock.hiavf.hibmbsr.hibmveth.hibmvio.hibmvmc.hibmvnic.hiceice.hswitchdev.hicplusphy.hidlepagetracking.hieee802154ieee802154.h6lowpan.hdrivers.hfakelb.hsocket.hifb.hifcvf.higbigb.hhwmon.higbvf.higc.hikheaders.hillegalpointervalue.himaima.happraiseappraise.hbootparam.hmodsig.harchpolicy.hdefaulthashhash.hsha256.htemplate.hkexec.hlsmrules.hmeasurepcridx.hreadpolicy.hsecureandortrustedboot.hsigtemplate.htrustedkeyring.hwritepolicy.hinetinet.hah.hdiagdiag.hdestroy.hespesp.hoffload.hespintcp.hipcomp.hmptcpdiag.hrawdiag.hsctpdiag.htcpdiag.htunnel.hudpdiag.hxfrmtunnel.hinet6ah.hespesp.hoffload.hespintcp.hipcomp.htunnel.hxfrmtunnel.hinfinibandinfiniband.haddrtranstrans.hconfigfs.hbnxtre.hcxgb4.hipoibipoib.hcm.hdebug.hirdma.hiser.hisert.hondemandpaging.hqedr.hsrp.hsrpt.huseraccess.hmad.hmem.hvirtdma.hinitenvarglimit.hinitramfssource.hinlinereadunlockunlock.hirq.hspinunlockirq.hwriteunlockunlock.hirq.hinotifyuser.hinputinput.hatiremote2.hcm109.hevdev.hffmemless.hgpiorotaryencoder.hkeyboard.hkeyspanremote.hleds.hmisc.hmouse.hmousedevmousedev.hscreenx.hy.hpolldev.hpowermate.hpwmbeeper.hsparsekmap.htablet.htouchscreen.huinput.hyealink.hintegrityintegrity.hasymmetrickeys.haudit.hplatformkeyring.hsignature.htrustedkeyring.hintelxwayphy.hintervaltree.hioeventirq.hiommuapi.hdefaultdmastrict.hhelper.hiova.hsupport.hionic.hioschedbfq.hipadvancedrouter.hfibtriestats.hmroutemroute.hcommon.hmultipletables.hmulticast.hmultipletables.hnfarpmangle.harpfilter.harptables.hfilter.hiptables.hmangle.hmatchah.hecn.hrpfilter.httl.hnat.hraw.hsecurity.htargetecn.hmasquerade.hnetmap.hredirect.hreject.hsynproxy.httl.hpimsmv1.hv2.hrouteclassid.hmultipath.hverbose.hsctp.hsetset.hbitmapip.hipmac.hport.hhaship.hipmac.hipmark.hipport.hipportip.hipportnet.hmac.hnet.hnetiface.hnetnet.hnetport.hnetportnet.hlistset.hmax.hvsvs.hdh.hfo.hftp.hipv6.hlblc.hlblcr.hlc.hmhmh.htabindex.hnfct.hnq.hovf.hpesip.hprotoahah.hesp.hesp.hsctp.htcp.hudp.hrr.hsed.hshsh.htabbits.htabbits.hwlc.hwrr.hip6nffilter.hiptables.hmangle.hmatchah.heui64.hfrag.hhl.hipv6header.hmh.hopts.hrpfilter.hrt.hnat.hraw.hsecurity.htargetmasquerade.hnpt.hreject.hsynproxy.hipcns.hipmideviceinterface.hhandler.hpanicevent.hstring.hplatdata.hpowernv.hpoweroff.hsi.hssif.hwatchdog.hipppfilter.hipv6ipv6.hgre.hmip6.hmroutemroute.hmultipletables.hmultipletables.hndiscnodetype.hoptimisticdad.hpimsmv2.hrouteinfo.hrouterpref.hsitsit.h6rd.htunnel.hvti.hipvlan.hipvtap.hirgpiocir.htx.higuana.himonimon.hdecoder.hraw.hjvcdecoder.hmcekbddecoder.hmceusb.hnecdecoder.hpwmtx.hrc5decoder.hrc6decoder.hredrat3.hsanyodecoder.hserialserial.htransmitter.hsir.hsonydecoder.hstreamzap.httusbir.hirqallcpus.hbypassmanager.hdomain.hforcedthreading.hpoll.hwork.hirqchip.hisadmaapi.hiscsibootsysfs.htargettarget.hcxgb4.htcp.hisdnisdn.haudio.hcapicapi.hcapi20.hcapidrvcapidrv.hverbose.hmiddleware.hdiversion.hdrvavmb1b1pci.hb1pciv4.hc4.ht1pci.hgigaset.hhisax.hhdlc.hi4l.hmpp.hpppppp.hvj.httyfax.hisl29003.hisl29020.hiso9660fs.hixgbeixgbe.hdcb.hhwmon.hipsec.hixgbevfixgbevf.hipsec.hjbd2.hjoliet.hjumplabellabel.hfeaturechecks.hkallsymskallsyms.hall.hbaserelative.hkarmapartition.hkdbcontinuecatastrophic.hdefaultenable.hkeyboard.hkernelkernel.releasegzip.hstart.hkernfs.hkexeckexec.hcore.hfile.hkeyboardatkbd.hkeyskeys.hcompat.hkgdbkgdb.hhonourblocklist.hkdb.hserialconsole.htests.hkprobeevents.hkprobeskprobes.honftrace.hkretprobes.hksm.hkunitkunit.halltests.hdebugfs.hexampletest.htest.hkvmkvm.hbook3s6464.hhandler.hhv.hhandler.hhvpossible.hcompat.hguest.hvfio.hxics.hxive.hl2tpl2tp.hdebugfs.heth.hip.hv3.hlcdclassdevice.hplatform.hledtriggerphy.hledsblinkm.hbrightnesshwchanged.hclass.hlm3530.hlp3944.hlp5521.hlp5523.hlp5562.hlp55xxcommon.hlt3593.hmlxreg.hpowernv.htriggerbacklight.hcamera.hdefaulton.hdisk.hgpio.hheartbeat.honeshot.htimer.htransient.htriggers.hlibcrc32c.hlibfc.hlibfcoe.hlibfdt.hlibnvdimm.hlinearrangesranges.hkunittest.hliquidioliquidio.hvf.hlirc.hlistkunittest.hlivepatch.hllc.hloadppckeys.hlocalversion.hlockdebuggingsupport.hdownkernel.hspinonowner.htorturetest.hlockdlockd.hv4.hlockdepsupport.hlockupdetector.hlogbufshift.hcpumaxbufshift.hlogitechff.hlogologo.hlinuxclut224.hloopbacktarget.hlparcfg.hlsiet1011cphy.hlsmlsm.hmmapminaddr.hlwtunnellwtunnel.hbpf.hlxtphy.hlz4decompress.hlzocompress.hdecompress.hmacemumousebtn.hpartition.hmac802154.hmacintoshdrivers.hmacsec.hmacvlan.hmacvtap.hmagicsysrqsysrq.hdefaultenable.hserial.hmantiscore.hmarvell10gphy.hphy.hmaxrawdevs.hmaxlineargphy.hmdmd.hautodetect.hcluster.hfaulty.hlinear.hraid0.hraid1.hraid10.hraid456.hmdiomdio.hbcmunimac.hbitbang.hbus.hcavium.hdevice.hgpio.hhisifemac.hmsccmiim.hocteon.hthunder.hmediaalteraci.hanalogtvsupport.hattach.hcamerasupport.hcecsupport.hcommonoptions.hdigitaltvsupport.hpcisupport.hradiosupport.hsubdrvautoselect.hsupport.htunertuner.he4000.hfc0011.hfc0012.hfc0013.hfc2580.hit913x.hm88rs6000t.hmax2165.hmc44s803.hmt2060.hmt2063.hmt20xx.hmt2131.hmt2266.hmxl5005s.hmxl5007t.hqm1d1b0004.hqm1d1c0042.hqt1010.hr820t.hsi2157.hsimple.htda18212.htda18218.htda18250.htda18271.htda827x.htda8290.htda9887.htea5761.htea5767.htua9001.hxc2028.hxc4000.hxc5000.husbsupport.hmegaraidsas.hmemsoftdirty.hmembarrier.hmemcgmemcg.hkmem.hswap.hmemcpykunittest.hmemfdcreate.hmemoryballoon.hfailure.hhotplug.hhotremove.hisolation.hmemregion.hmemstickmemstick.hjmicron38x.hr592.hrealtekpci.htifmms.hmessagelogleveldefault.hmfdcore.hsm501sm501.hgpio.hviperboard.hvx855.hmhibusbus.hpcigeneric.hmicrelphy.hmicrochipphy.ht1phy.hmicrosemiphy.hmigration.hmii.hminixsubpartition.hmiscfilesystems.hrtsxrtsx.hpci.husb.hmisdnmisdn.havmfritz.hdsp.hhfcmulti.hhfcpci.hhfcusb.hinfineon.hipac.hisar.hl1oip.hnetjet.hspeedfax.hw6692.hmlx4core.hdebug.henen.hdcb.hinfiniband.hmlx5bridge.hclsact.hcorecore.henen.hdcb.hipoib.henarfs.hipsec.hrxnfc.htls.heswitch.hfpga.hinfiniband.hmpfs.hsfsf.hmanager.hswsteering.htcct.hsample.hvdpavdpa.hnet.hmlxfw.hmlxswcorecore.hhwmon.hthermal.hi2c.hminimal.hpci.hspectrumspectrum.hdcb.hswitchib.hswitchx2.hmmcmmc.hblockblock.hminors.hcb710.hcqhci.hrealtekpci.husb.hricohmmc.hsdhcisdhci.hpci.hpltfm.htifmsd.hushc.hviasdmmc.hvub300.hmmiowb.hmmummu.hgathermergevmas.hpagesize.hrcutablefree.htablefree.hnotifier.hmoduleforceload.hrelcrcs.hsigsig.hall.hformat.hhash.hkey.hsha256.hsrcversionall.hunload.hmodulesmodules.htreelookup.huseelfrela.hmodversions.hmouseappletouch.hbcm5974.hcyapa.helani2ci2c.hi2c.hsmbus.hps2ps2.halps.hbyd.hcypress.helantechelantech.hsmbus.hfocaltech.hlogips2pp.hsentelic.hsmbus.hsynapticssynaptics.hsmbus.htrackpoint.hserial.hsynapticsi2c.husb.hvsxxxaa.hmpic.hmpilib.hmplsmpls.hiptunnel.hrouting.hmprofilekernel.hmptcpmptcp.hipv6.hkunittest.hmqioscheddeadline.hkyber.hmrp.hmsdosfs.hpartition.hmsibitmapselftest.hmsproblock.hmtdmtd.hcfii1.hi2.hmapbankwidth1.h2.h4.hofparts.hpowernvflash.hubiubi.hbeblimit.hwlthreshold.hmultiuser.hmutexspinonowner.hmyri10ge.hngsm.hhdlc.hnamespaces.hnationalphy.hndblk.hbtt.hclaim.hpfn.hneeddmamapstate.hmultiplenodes.hpercpuembedfirstchunk.hsgdmalength.hnetnet.hactbpf.hcsum.hct.hgact.hmirred.hmpls.hnat.hpedit.hpolice.hsample.hsimp.hskbedit.hskbmod.htunnelkey.hvlan.hclscls.hact.hbasic.hbpf.hcgroup.hflow.hflower.hfw.hmatchall.hroute4.hrsvp.hrsvp6.htcindex.hu32.hcore.hdevlink.hdropmonitor.hegress.hematchematch.hcmp.hipset.hmeta.hnbyte.hstack.htext.hu32.hfailover.hfc.hflowlimit.hingress.hiptunnel.hipgreipgre.hbroadcast.hdemux.hipip.hipvti.hkeykey.hmigrate.hl3masterdev.hmplsgso.hns.hnsh.hpacketengine.hpktgen.hpollcontroller.hptpclassify.hredirect.hrxbusypoll.hschatm.hcbq.hcbs.hchoke.hcodel.hdefault.hdrr.hdsmark.hets.hfifo.hfqfq.hcodel.hgred.hhfsc.hhhf.hhtb.hingress.hmqpriomqprio.hlib.hmultiq.hnetem.hpie.hplug.hprio.hqfq.hred.hsfb.hsfq.htbf.hteql.hsched.hsockmsg.hswitchdev.htcskbext.hteamteam.hmodeactivebackup.hbroadcast.hloadbalance.hrandom.hroundrobin.hudptunnel.hvendoramazon.haquantia.hatheros.hbroadcom.hbrocade.hcavium.hchelsio.hcisco.hdec.hemulex.hgoogle.hibm.hintel.hmellanox.hmicrosoft.hmyri.hnetronome.hoki.hpensando.hqlogic.hrealtek.hrocker.hsolarflare.hvrf.hnetconsolenetconsole.hdynamic.hnetdevaddrlisttest.hnetdevices.hnetdevsim.hnetfilternetfilter.hadvanced.hconncount.hfamilyarp.hbridge.hingress.hnetlinknetlink.hgluect.hlog.hqueue.hsynproxy.hxtconnmark.hmark.hmatchaddrtype.hbpf.hcgroup.hcluster.hcomment.hconnbytes.hconnlabel.hconnlimit.hconnmark.hconntrack.hcpu.hdccp.hdevgroup.hdscp.hecn.hesp.hhashlimit.hhelper.hhl.hiprange.hipvs.hlength.hlimit.hmac.hmark.hmultiport.hosf.howner.hphysdev.hpkttype.hpolicy.hquota.hrateest.hrealm.hrecent.hsctp.hsocket.hstate.hstatistic.hstring.htcpmss.hu32.hnat.hset.htargetaudit.hchecksum.hclassify.hconnmark.hconnsecmark.hct.hdscp.hhl.hhmark.hidletimer.hlog.hmark.hnetmap.hnflog.hnfqueue.hnotrack.hrateest.hredirect.hsecmark.htcpmss.htcpoptstrip.htee.htproxy.htrace.hxtables.hnetlabel.hnetlinkdiag.hnetpoll.hnetworkfilesystems.hphytimestamping.hsecmark.hnetxennic.hnewleds.hnfconntrackconntrack.hamanda.hbroadcast.hevents.hftp.hh323.hirc.hlabels.hmark.hnetbiosns.hpptp.hprocfs.hsane.hsecmark.hsip.hsnmp.htftp.htimeout.htimestamp.hzones.hctnetlinknetlink.hhelper.htimeout.hprotodccp.hgre.hsctp.hudplite.hdefragipv4.hipv6.hdupipv4.hipv6.hnetdev.hflowtabletable.hinet.hipv4.hipv6.hlogarp.hipv4.hipv6.hsyslog.hnatnat.hamanda.hftp.hh323.hirc.hmasquerade.hneeded.hpptp.hredirect.hsip.hsnmpbasic.htftp.hosf.hrejectipv4.hipv6.hsocketipv4.hipv6.htablestables.harp.hbridge.hinet.hipv4.hipv6.hnetdev.hset.htproxyipv4.hipv6.hnfpnfp.happabmnic.hflower.hnfsaclsupport.hcommon.hdebug.hfs.hfscache.husekerneldns.hv3v3.hacl.hv4v4.h11.himplementationiddomain.h2.hsecuritylabel.hnfsdnfsd.hpnfs.hscsilayout.hv2acl.hv3v3.hacl.hv4v4.hsecuritylabel.hnftbridgereject.hcompat.hconnlimit.hcounter.hct.hdupipv4.hipv6.hnetdev.hfibfib.hinet.hipv4.hipv6.hnetdev.hflowoffload.hfwdnetdev.hhash.hlimit.hlog.hmasq.hnat.hnumgen.hobjref.hqueue.hquota.hredir.hrejectreject.hinet.hipv4.hipv6.hsocket.htproxy.hxfrm.hnlattr.hnlmon.hnlsnls.hascii.hcodepage1250.h1251.h437.h737.h775.h850.h852.h855.h857.h860.h861.h862.h863.h864.h865.h866.h869.h874.h932.h936.h949.h950.hdefault.hiso88591.h13.h14.h15.h2.h3.h4.h5.h6.h7.h8.h9.hkoi8r.hu.hmacceltic.hcenteuro.hcroatian.hcyrillic.hgaelic.hgreek.hiceland.hinuit.hroman.hromanian.hturkish.hutf8.hnmiipi.hnohzhz.hcommon.hfull.hnodesshift.hnonstatickernel.hnoptracer.hnouveaudebugdebug.hdefault.hnozomi.hnrcpus.hirqs.hnumanuma.hbalancingbalancing.hdefaultenabled.hkeepmeminfo.hnvdimmdax.hkeys.hpfn.hnvmecore.hfabrics.hfc.hmultipath.hrdma.htargettarget.hfc.hfcloop.hloop.hrdma.htcp.htcp.hverboseerrors.hnvmem.hobjagg.hocxlocxl.hbase.hofof.haddress.hdynamic.hearlyflattree.hflattree.hgpio.hiommu.hirq.hkobj.hmdio.hnet.hpmem.hreservedmem.hoidregistry.holdsigsuspend.hopalcore.hprd.hopenvswitchopenvswitch.hgeneve.hgre.hvxlan.hoprofile.hoptprobes.hosfpartition.hosnoisetracer.hoverlayfs.hpacketpacket.hdiag.hpadata.hpagecounter.hextension.hoffset.howner.hpoisoning.hpool.hreporting.hpaniconoopsoops.hvalue.htimeout.hpaprscm.hparman.hparportparport.h1284.hnotpc.hpc.hserial.hpartitionadvanced.hpataofplatform.hplatform.hpccard.hpcipci.hats.hdomains.hiov.hmsimsi.harchfallbacks.hpasid.hpri.hquirks.hstub.hsyscall.hpciedpc.hecrc.hpme.hpcieaerpcieaer.hinject.hpcieaspmpcieaspm.hdefault.hpcieportbus.hpcipcwatchdog.hpcspkrplatform.hperfevents.hpersistentkeyrings.hpgtablelevels.hphylib.hphysaddrt64bit.hphysicalstart.hpidns.hpkcs7messageparser.hpldmfw.hpluginhostcc.hpmpm.hdebug.hgenericdomainsdomains.hof.hsleep.hsleepsleep.hdebug.hsmpsmp.hnonzerocpu.hpmbus.hpmusysfs.hpnfsblock.hfilelayout.hflexfilelayout.hposixmqueuemqueue.hsysctl.htimers.hpowerresetreset.hgpio.hsupply.hpowernvcpufreq.hcpuidle.hoppanel.hppcppc.h64kpages.hbarriernospec.hbook3sbook3s.h64.hcoprobase.hdawr.hdenormalisation.hdisablewerror.hdoorbell.hdtcpuftrs.hemulatedstats.hfpu.hhavepmusupport.hi8259.hicphv.hnative.hicsrtas.hindirectpio.hmemkeys.hmmslices.hmsibitmap.hnative.hofboottrampoline.hp7nap.hperfctrs.hpowernv.hpseries.hradixmmummu.hdefault.hrtasrtas.hdaemon.hfilter.hscom.hsecureboot.hsecvarsysfs.hsmlpar.hsmpmuxedipi.hsplpar.hstdmmu.hsubpageprot.hsvm.htransactionalmem.hudbg16550.huv.hvas.hwatchdog.hxics.hxivexive.hnative.hspapr.hppc64ppc64.hbootwrapper.hsupportsmemoryfailure.hppdev.hpppppp.hasync.hbsdcomp.hdeflate.hfilter.hmppe.hmultilink.hsynctty.hpppoatm.hpppoe.hpppol2tp.hppspps.hclientgpio.hldisc.hparport.hpptp.hpreemptnotifiers.hvoluntary.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hstackdepth.hprinter.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hvmcorevmcore.hdevicedump.hprofiling.hpsample.hpseriescpuidle.henergy.hpsipsi.hdefaultdisabled.hpstorepstore.hcompresscompress.hdefault.hdeflatecompresscompress.hdefault.hram.hptp1588clock.hpwmpwm.hsysfs.hqedqed.hfcoe.hiscsi.hll2.hooo.hrdma.hsriov.hqede.hqedf.hqedi.hqfmtv2.hqsemiphy.hquotaquota.hnetlinkinterface.htree.hquotactl.hr8169.hradioadapters.htea575x.hraidattrs.hraid6pqpq.hbenchmark.hrandomtrustcpu.hras.hrationalrational.hkunittest.hrawdriver.hrcatiremote.hcore.hdecoders.hdevices.hmap.hrcucpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.hrdbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hrdmarxe.hsiw.hrealtekautopm.hphy.hreedsolomonsolomon.hdec8.henc8.hregmapregmap.hi2c.hrelay.hrelocatable.hrenesasphy.hresourcekunittest.hrfkillrfkill.hinput.hleds.hrfsaccel.hrhkabisizealignchecks.hrheldifferences.hringbufferbuffer.hallowswap.hbenchmark.hrmi42dsensor.hcore.hf03f03.hserio.hf11.hf12.hf30.hf34.hf3a.hf55.hi2c.hsmb.hrockchipphy.hrocker.hrpcsecgsskrb5.hrps.hrseq.hrtgroupsched.hmutexes.hrtaserrorlogging.hflash.hproc.hrtcclass.hdrvbq32k.hbq4802.hcmos.hds1286.hds1307.hds1374.hds1511.hds1553.hds1672.hds1742.hds2404.hds3232ds3232.hhwmon.hem3027.hfm3130.hgeneric.hisl12022.hisl1208.hm41t80m41t80.hwdt.hm48t35.hm48t59.hmax6900.hmsm6242.hopal.hpcf8523.hpcf8563.hpcf8583.hrp5c01.hrs5c372.hrv3029c2.hrx8025.hrx8581.hstk17ta8.hv3020.hx1205.hhctosyshctosys.hdevice.hi2candspi.hintfdev.hproc.hsysfs.hliblib.hkunittest.hmc146818lib.hnvmem.hruntimetestingmenu.hrwsemspinonowner.hsamples.hsataahciahci.hplatform.hhost.hmobilelpmpolicy.hpmp.hsbitmap.hscanlog.hscftorturetest.hschedautogroup.hdebug.hhrtick.hinfo.homitframepointer.hsmt.htracer.hschedstats.hscomdebugfs.hscsiscsi.haacraid.hbnx2iscsi.hbnx2xfcoe.hchelsiofcoe.hconstants.hcxgb4iscsi.hdebug.hdhdh.halua.hemc.hhpsw.hrdac.hdma.henclosure.hfcattrs.hhpsa.hibmvfcibmvfc.htrace.hibmvscsi.hibmvscsis.hipripr.hdump.htrace.hiscsiattrs.hlogging.hlowlevel.hlpfc.hmod.hmpi3mr.hmpt2sasmpt2sas.hmaxsge.hmpt3sasmpt3sas.hmaxsge.hnetlink.hprocfs.hqlafc.hiscsi.hsasata.hattrs.hhostsmp.hlibsas.hscanasync.hsmartpqi.hspiattrs.hsrpattrs.hvirtio.hsctpcookiehmacmd5.hsha1.hdefaultcookiehmacsha1.hsdiouart.hseccompseccomp.hfilter.hsectionmismatchwarnonly.hsecuritysecurity.hinfiniband.hnetworknetwork.hxfrm.hpath.hselinuxselinux.havcstats.hbootparam.hcheckreqprotvalue.hdevelop.hdisable.hsid2strcachesize.hsidtabhashbits.hwritablehooks.hyama.hsecurityfs.hselectmemorymodel.hsensorsad7414.had7418.hadm1021.hadm1025.hadm1026.hadm1029.hadm1031.hadm1275.hadm9240.hads1015.hads7828.hadt7410.hadt7411.hadt7462.hadt7470.hadt7475.hadt7x10.hamc6821.hapds990x.hasc7621.hatxp1.hbh1770.hds1621.hds620.hemc1403.hemc6w201.hf75375s.hg760a.hgl518sm.hgl520sm.hibmaem.hibmpex.hibmpowernv.hina209.hina2xx.hjc42.hlineage.hlis3i2c.hlis3lv02d.hlm25066.hlm63.hlm73.hlm75.hlm77.hlm78.hlm80.hlm83.hlm85.hlm87.hlm90.hlm92.hlm93.hlm95234.hlm95241.hlm95245.hltc2978.hltc4151.hltc4215.hltc4245.hltc4261.hmax16064.hmax16065.hmax1619.hmax1668.hmax197.hmax34440.hmax6639.hmax6642.hmax6650.hmax6697.hmax8688.hmcp3021.hntcthermistor.hpcf8591.hpmbus.hsht15.hsht21.hsis5595.hsmsc47m192.hthmc50.htmp102.htmp401.htmp421.htsl2550.hucd9000.hucd9200.hvia686a.hvt8231.hw83781d.hw83791d.hw83792d.hw83793.hw83795.hw83l785ts.hw83l786ng.hzl6100.hserial82508250.hconsole.hdma.hexar.hextended.hfsl.hmanyports.hnruarts.hpci.hrsa.hruntimeuarts.hshareirq.harcarc.hnrports.hcorecore.hconsole.hearlycon.hicom.hjsm.hnonstandard.hofplatform.huartliteuartlite.hnruarts.hserioserio.halteraps2.harcps2.hi8042.hlibps2.hraw.hserport.hsfcsfc.hmcdilogging.hmon.hmtd.hsienasiena.hmcdilogging.hmon.hmtd.hsriov.hsriov.hsgpool.hsgetmasksyscall.hsgipartition.hsglalloc.hshmem.hshufflepageallocator.hsignalfd.hsignature.hsimplegpio.hskbextensions.hslabfreelisthardened.hrandom.hslhc.hslipslip.hcompressed.hsmart.hslubslub.hcpupartial.hdebug.hkunittest.hsmp.hsmssdiodrv.hsianomdtv.hrc.husbdrv.hsmscphy.hsndsnd.hac97codec.hpowersavesave.hdefault.had1889.hali5451.haloop.hatiixpatiixp.hmodem.hau8810.hau8820.hau8830.hbcd2000.hbebob.hbt87x.hca0106.hcmipci.hcs46xxcs46xx.hnewdsp.hctlfastlookup.hctxfi.hdarla20.hdarla24.hdice.hdrivers.hdummy.hdynamicminors.hecho3g.hemu10k1emu10k1.hseq.hemu10k1x.hens1370.hens1371.hes1968es1968.hinput.hradio.hfireface.hfirewirefirewire.hdigi00x.hlib.hmotu.htascam.hfireworks.hgina20.hgina24.hhdapreallocsize.hhdsp.hhdspm.hhrtimer.hhwdep.hice1712.hice1724.hindigo.hindigodj.hindigodjx.hindigoio.hindigoiox.hintel8x0.hintel8x0m.hisight.hjackjack.hinputdev.hkorg1212.hlayla20.hlayla24.hlola.hlx6464es.hmaestro3maestro3.hinput.hmaxcards.hmia.hmixart.hmona.hmpu401mpu401.huart.hmtpav.hopl3liblib.hseq.hossemul.hoxfw.hoxygenoxygen.hlib.hpci.hpcmpcm.htimer.hpcxhr.hppc.hprocfs.hrawmidi.hrme32.hrme96.hrme9652.hseqdevice.hdummy.hhrtimerdefault.hmidimidi.hemul.hevent.hvirmidi.hsequencersequencer.hoss.hsynthemux.htimer.htrident.husbusb.h6fire.haudio.hcaiaqcaiaq.hinput.hhiface.hline6.hpod.hpodhd.htoneport.hua101.husx2y.hvariax.hverboseprocfs.hvia82xxvia82xx.hmodem.hvirmidi.hvirtio.hvirtuoso.hvmaster.hvxlib.hvx222.hsockcgroupdata.hvalidatexmit.hsoftwatchdog.hsoftlockupdetector.hsolarisx86partition.hsoundsound.hosscorecore.hpreclaim.hspaprtceiommu.hsparseirq.hsparsememsparsemem.hextreme.hmanual.hvmemmapvmemmap.henable.hsplitptlockcpus.hsquashfssquashfs.hdecompmultipercpu.hfiledirect.hfragmentcachesize.hlzo.hxattr.hxz.hzlib.hsrcu.hssbpossible.hstacktracer.hstackdepot.hstackprotectorstackprotector.hstrong.hstacktracestacktrace.hsupport.hstandalone.hste10xp.hstp.hstreamparser.hstrictdevmem.hstripasmsyms.hsunpartition.hsunrpcsunrpc.hbackchannel.hdebug.hgss.hxprtrdma.hsuspendsuspend.hfreezer.hswap.hswiotlb.hswphy.hsymbolicerrname.hsyncookies.hsyncfile.hsynclinksynclink.hgt.hsynclinkmp.hsyssupportshugetlbfs.hsysctlsysctl.hexceptiontrace.hkunittest.hsysfssysfs.hsyscall.hsystemblacklisthashlist.hkeyring.hdataverification.hextracertificatecertificate.hsize.htrustedkeyring.hkeys.hsysvipcsysvipc.hcompat.hsysctl.htabletserialwacom4.husbacecad.haiptek.hgtco.hkbtab.htap.htargetcore.htaskdelayacct.hioaccounting.hxacct.htasksrcugeneric.hrudercu.htracercu.htaskstats.htcgibmvtpm.htistis.hcore.hi2catmel.hinfineon.hnuvoton.hst33zp24st33zp24.hi2c.htpm.htcmfileio.hiblock.hpscsi.huser2.htcpcongadvanced.hbbr.hbic.hcubic.hdctcp.hhstcp.hhtcp.hhybla.hillinois.hlp.hnv.hscalable.hvegas.hveno.hwestwood.hyeah.hmd5sig.hteraneticsphy.htestbpf.hhmm.hkstrtox.hlistsort.hlivepatch.hvmalloc.htextsearchtextsearch.hbm.hfsm.hkmp.hthermalthermal.hdefaultgovstepwise.hemergencypoweroffdelayms.hgovfairshare.hstepwise.hhwmon.hof.hthreadshift.htickoneshot.htifm7xx1.hcore.htigon3tigon3.hhwmon.htimekunittest.htimerfd.htimerlattracer.htipctipc.hcrypto.hdiag.hmediaib.hudp.htlstls.hdevice.htmpfstmpfs.hposixacl.hxattr.htorturetest.htouchscreenelo.hproperties.hwacomi2c.hw8001.htraceclock.hirqflagssupport.htracepoints.htracermaxtrace.hsnapshot.htracingtracing.hmap.hsupport.htransparenthugepagehugepage.hmadvise.htreercu.hsrcu.htristate.conftrustedkeys.httpcieeprom.htty.htuntun.hvnetcrossle.htypectypec.hdpaltmode.hfusb302.hmuxpi3usb30532.hrt1711h.htcpci.htcpm.htps6598x.hucsi.hudffs.huhid.huiouio.haec.hcif.hpcigeneric.hpdrvgenirq.hsercos3.hunixunix.hdiag.hscm.hunix98ptys.hunixwaredisklabel.huprobeevents.huprobes.husbusb.hacm.hadutux.halim5632.han2720.hannouncenewdevices.happledisplay.harchhashcd.harmlinux.hatm.hautosuspenddelay.hbelkin.hcatc.hcommon.hcxacru.hdefaultpersist.hehcihcdhcd.hppcof.hpci.hroothubtt.httnewsched.hemi26.hemi62.hepson2888.hezusbfx2.hftdielan.hgl860.hgspcagspca.hbenq.hconex.hcpia1.hetoms.hfinepix.hjeilinj.hjl2005bcd.hkonica.hmars.hmr97310a.hnw80x.hov519.hov534ov534.h9.hpac207.hpac7302.hpac7311.hse401.hsn9c2028.hsn9c20x.hsonixb.hsonixj.hspca1528.hspca500.hspca501.hspca505.hspca506.hspca508.hspca561.hsq905.hsq905c.hsq930x.hstk014.hstv0680.hsunplus.ht613.htopro.htv8532.hvc032x.hvicam.hxirlinkcit.hzc3xx.hhid.hhiddev.hhsicusb3503.hhso.hhwahcd.hidmouse.hiowarrior.hipheth.hisightfw.hkaweth.hkc2190.hlan78xx.hlcd.hld.hledstriggerusbport.hlegotower.hm5602.hmdc800.hmicrotek.hmon.hnetax88179178a.hax8817x.hcdceem.hmbim.hncm.hsubsetsubset.henable.hcdcether.hch9200.hcx82310eth.hdm9601.hdrivers.hgl620a.hint51x1.hkalmia.hmcs7830.hnet1080.hplusb.hqmiwwan.hrndishost.hsmsc75xx.hsmsc95xx.hzaurus.hohcibigendiandesc.hmmio.hhcdhcd.hpci.hppcofof.hbe.hle.hlittleendian.hpci.hpegasus.hprinter.hpulse8cec.hpwcpwc.hinputevdev.hrainshadowcec.hroleswitch.hrtl8150.hrtl8152.hs2255.hserialserial.haircable.hark3116.hbelkin.hch341.hconsole.hcp210x.hcyberjack.hcypressm8.hdebug.hdigiacceleport.hedgeportedgeport.hti.hempeg.hf8153x.hftdisio.hgarmin.hgeneric.hipaq.hipw.hir.hiuu.hkeyspankeyspan.hpda.hklsi.hkobilsct.hmctu232.hmos7715parport.hmos7720.hmos7840.hmxuport.hnavman.homninet.hopticon.hoption.hoti6858.hpl2303.hqcaux.hqt2.hqualcomm.hsafesafe.hpadded.hsierrawireless.hspcp8x5.hssu100.hsymbol.hti.hupd78f0730.hvisor.hwhiteheat.hwwan.hxircom.hxsensmt.hsevseg.hsierranet.hsisusbvga.hspeedtouch.hstkwebcam.hstoragestorage.halauda.hcypressatacb.hdatafab.heneub6250.hfreecom.hjumpshot.hkarma.honetouch.hrealtek.hsddr09.hsddr55.husbat.hstv06xx.hsupport.htmc.huas.hueagleatm.huhcihcd.husbnet.huss720.hvideoclassclass.hinputevdev.hvl600.hwdm.hwusbwusb.hcbaf.hxhcihcd.hpci.hxusbatm.hzr364xx.husb4usb4.hnet.husbpcwatchdog.husepercpunumanodeid.huserns.huserfaultfd.hutsns.huvccommon.huwbuwb.hhwa.hi1480u.hwhci.hvdpavdpa.hsimsim.hblock.hnet.hveth.hvfatfs.hvfiovfio.hiommuspaprtce.hpcipci.hintx.hmmap.hnvlink2.hspapreeh.hvirqfd.hvgaarbarb.hmaxgpus.hconsole.hvgastate.hvhostvhost.hcrossendianlegacy.hiotlb.hmenu.hnet.hring.hvdpa.hvsock.hvideoau0828au0828.hv4l2.hbt848.hcs3308.hcs5345.hcs53l32a.hcx18cx18.halsa.hcx231xxcx231xx.halsa.hdvb.hrc.hcx2341x.hcx23885.hcx25840.hcx88cx88.halsa.hblackbird.hdvb.hmpeg.hdev.hem28xxem28xx.halsa.hdvb.hrc.hfbivtv.hhdpvr.hiri2c.hivtv.hm52790.hmsp3400.hnomodeset.hpvrusb2pvrusb2.hdvb.hsysfs.hsaa6588.hsaa6752hs.hsaa711x.hsaa7127.hsaa7134saa7134.halsa.hdvb.hrc.hsaa7146saa7146.hvv.hsaa7164.hsaa717x.htda7432.htm6000tm6000.halsa.hdvb.htuner.htvaudio.htveeprom.hupd64031a.hupd64083.husbvision.hv4l2.hvp27smpx.hwm8739.hwm8775.hvideobufdmasg.hgen.hvmalloc.hvideobuf2core.hdmasg.hdvb.hmemops.hv4l2.hvmalloc.hvirtcpuaccountingaccounting.hgen.hdrivers.hvirtiovirtio.hballoon.hblk.hconsole.hfs.hinput.hmenu.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvpvdpa.hvsocketsvsockets.hdiag.hloopback.hvsockmon.hvsx.hvtvt.hconsoleconsole.hsleep.hhwconsolebinding.hvxlan.hwan.hwantdevcoredump.hwatchdogwatchdog.hcore.hhandlebootenabled.hopentimeout.hrtas.hsysfs.hwdtpci.hx509certificateparser.hxarraymulti.hxdpsocketssockets.hdiag.hxfrmxfrm.halgo.hespintcp.hinterface.hipcomp.hmigrate.hoffload.hstatistics.hsubpolicy.huser.hxfsfs.hposixacl.hquota.hxilinxgmii2rgmii.hxmonxmon.hdefaultromode.hdisassembly.hxorblocks.hxps.hxzdecdec.harm.harmthumb.hbcj.hia64.hpowerpc.hsparc.hx86.hyentayenta.henetune.ho2.hricoh.hti.htoshiba.hzbud.hzisofs.hzlibdeflate.hinflate.hzonedevice.hdma.hdma32.hzpool.hzramzram.hwriteback.hzsmalloczsmalloc.hstat.hzswap.hcryptoacompress.haead.haes.hakcipher.halgapi.harc4.hauthenc.hb128ops.hblowfish.hcast5.hcast6.hcast_common.hcbc.hchacha20.hcryptd.hcrypto_wq.hctr.hdes.hdh.hdrbg.hecdh.hengine.hgcm.hgf128mul.hghash.hhash.hhash_info.hhmac.hif_alg.hinternalacompress.haead.hakcipher.hgeniv.hhash.hkpp.hrng.hrsa.hscompress.hsimd.hskcipher.hkpp.hmcryptd.hmd5.hmorus1280_glue.hmorus640_glue.hmorus_common.hnull.hpadlock.hpcrypt.hpkcs7.hpoly1305.hpublic_key.hrng.hscatterwalk.hserpent.hsha.hsha1_base.hsha256_base.hsha3.hsha512_base.hskcipher.hsm3.hsm3_base.hsm4.hspeck.htwofish.hxts.hdrmdrm-backportREADME.txtlinuxmmu_notifier.hamd_asic_type.hbridgeanalogix_dp.hdw_hdmi.hdw_mipi_dsi.hmhl.hdisplaydrm_dp.hdrm_dp_aux_bus.hdrm_dp_dual_mode_helper.hdrm_dp_helper.hdrm_dp_mst_helper.hdrm_dsc.hdrm_dsc_helper.hdrm_hdcp.hdrm_hdcp_helper.hdrm_hdmi_helper.hdrm_scdc.hdrm_scdc_helper.hdrm_accel.hdrm_aperture.hdrm_atomic.hdrm_atomic_helper.hdrm_atomic_state_helper.hdrm_atomic_uapi.hdrm_audio_component.hdrm_auth.hdrm_blend.hdrm_bridge.hdrm_bridge_connector.hdrm_buddy.hdrm_cache.hdrm_client.hdrm_color_mgmt.hdrm_connector.hdrm_crtc.hdrm_crtc_helper.hdrm_damage_helper.hdrm_debugfs.hdrm_debugfs_crc.hdrm_device.hdrm_displayid.hdrm_drv.hdrm_edid.hdrm_encoder.hdrm_encoder_slave.hdrm_fb_dma_helper.hdrm_fb_helper.hdrm_fbdev_generic.hdrm_file.hdrm_fixed.hdrm_flip_work.hdrm_format_helper.hdrm_fourcc.hdrm_framebuffer.hdrm_gem.hdrm_gem_atomic_helper.hdrm_gem_dma_helper.hdrm_gem_framebuffer_helper.hdrm_gem_shmem_helper.hdrm_gem_ttm_helper.hdrm_gem_vram_helper.hdrm_ioctl.hdrm_kunit_helpers.hdrm_lease.hdrm_legacy.hdrm_managed.hdrm_mipi_dbi.hdrm_mipi_dsi.hdrm_mm.hdrm_mode_config.hdrm_mode_object.hdrm_modes.hdrm_modeset_helper.hdrm_modeset_helper_vtables.hdrm_modeset_lock.hdrm_module.hdrm_of.hdrm_panel.hdrm_pciids.hdrm_plane.hdrm_plane_helper.hdrm_prime.hdrm_print.hdrm_privacy_screen_consumer.hdrm_privacy_screen_driver.hdrm_privacy_screen_machine.hdrm_probe_helper.hdrm_property.hdrm_rect.hdrm_self_refresh_helper.hdrm_simple_kms_helper.hdrm_syncobj.hdrm_sysfs.hdrm_util.hdrm_utils.hdrm_vblank.hdrm_vblank_work.hdrm_vma_manager.hdrm_writeback.hgma_drm.hgpu_scheduler.hgud.hi2cch7006.hsil164.htda998x.hi915_component.hi915_drm.hi915_mei_hdcp_interface.hi915_pciids.hi915_pxp_tee_interface.hintel-gtt.hintel_lpe_audio.hspsc_queue.htask_barrier.httmttm_bo.httm_caching.httm_device.httm_execbuf_util.httm_kmap_iter.httm_placement.httm_pool.httm_range_manager.httm_resource.httm_tt.hdt-bindingsarmux500_pm_domains.hbusti-sysc.hclkti-dra7-atl.hclockactions,s900-cmu.halphascale,asm9260.ham3.ham4.haspeed-clock.hat91.hath79-clk.haxg-aoclkc.haxg-clkc.haxis,artpec6-clkctrl.hbcm-cygnus.hbcm-ns2.hbcm-nsp.hbcm-sr.hbcm21664.hbcm281xx.hbcm2835-aux.hbcm2835.hberlin2.hberlin2q.hboston-clock.hclps711x-clock.hcortina,gemini-clock.hdm814.hdm816.hdra7.hefm32-cmu.hexynos-audss-clk.hexynos3250.hexynos4.hexynos5250.hexynos5260-clk.hexynos5410.hexynos5420.hexynos5433.hexynos5440.hexynos7-clk.hgxbb-aoclkc.hgxbb-clkc.hhi3516cv300-clock.hhi3519-clock.hhi3620-clock.hhi3660-clock.hhi6220-clock.hhip04-clock.hhistb-clock.hhix5hd2-clock.himx1-clock.himx21-clock.himx27-clock.himx5-clock.himx6qdl-clock.himx6sl-clock.himx6sll-clock.himx6sx-clock.himx6ul-clock.himx7d-clock.hjz4740-cgu.hjz4770-cgu.hjz4780-cgu.hlpc18xx-ccu.hlpc18xx-cgu.hlpc32xx-clock.hlsi,axm5516-clks.hmarvell,mmp2.hmarvell,pxa168.hmarvell,pxa1928.hmarvell,pxa910.hmaxim,max77620.hmaxim,max77686.hmaxim,max77802.hmeson8b-clkc.hmicrochip,pic32-clock.hmpc512x-clock.hmt2701-clk.hmt2712-clk.hmt6797-clk.hmt7622-clk.hmt8135-clk.hmt8173-clk.hnuvoton,npcm7xx-clock.homap4.homap5.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-clk.hpxa-clock.hqcom,gcc-apq8084.hqcom,gcc-ipq4019.hqcom,gcc-ipq806x.hqcom,gcc-ipq8074.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,gcc-msm8994.hqcom,gcc-msm8996.hqcom,gcc-msm8998.hqcom,gcc-sdm845.hqcom,lcc-ipq806x.hqcom,lcc-mdm9615.hqcom,lcc-msm8960.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hqcom,mmcc-msm8996.hqcom,rpmcc.hqcom,rpmh.hqcom,videocc-sdm845.hr7s72100-clock.hr8a73a4-clock.hr8a7740-clock.hr8a7743-cpg-mssr.hr8a7745-cpg-mssr.hr8a77470-cpg-mssr.hr8a7778-clock.hr8a7779-clock.hr8a7790-clock.hr8a7790-cpg-mssr.hr8a7791-clock.hr8a7791-cpg-mssr.hr8a7792-clock.hr8a7792-cpg-mssr.hr8a7793-clock.hr8a7793-cpg-mssr.hr8a7794-clock.hr8a7794-cpg-mssr.hr8a7795-cpg-mssr.hr8a7796-cpg-mssr.hr8a77965-cpg-mssr.hr8a77970-cpg-mssr.hr8a77980-cpg-mssr.hr8a77990-cpg-mssr.hr8a77995-cpg-mssr.hrenesas-cpg-mssr.hrk3036-cru.hrk3066a-cru.hrk3128-cru.hrk3188-cru-common.hrk3188-cru.hrk3228-cru.hrk3288-cru.hrk3328-cru.hrk3368-cru.hrk3399-cru.hrockchip,rk808.hrv1108-cru.hs3c2410.hs3c2412.hs3c2443.hs5pv210-audss.hs5pv210.hsamsung,s2mps11.hsamsung,s3c64xx-clock.hsh73a0-clock.hsprd,sc9860-clk.hste-ab8500.hstih407-clks.hstih410-clks.hstih416-clks.hstih418-clks.hstm32fx-clock.hstm32h7-clks.hstm32mp1-clks.hstratix10-clock.hsun4i-a10-ccu.hsun4i-a10-pll2.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun7i-a20-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra114-car.htegra124-car-common.htegra124-car.htegra186-clock.htegra194-clock.htegra20-car.htegra210-car.htegra30-car.hvf610-clock.hzx296702-clock.hzx296718-clock.hdisplaytda998x.hdmaat91.haxi-dmac.hjz4780-dma.hnbpfaxi.hsun4i-a10.hgpioaspeed-gpio.hgpio.hmeson-axg-gpio.hmeson-gxbb-gpio.hmeson-gxl-gpio.hmeson8-gpio.hmeson8b-gpio.htegra-gpio.htegra186-gpio.htegra194-gpio.huniphier-gpio.hi2ci2c.hiioadcfsl-imx25-gcq.hadi,ad5592r.hqcom,spmi-vadc.hinputgpio-keys.hinput.hlinux-event-codes.hti-drv260x.hinterrupt-controllerarm-gic.hirq-st.hirq.hmips-gic.hmvebu-icu.hledscommon.hleds-netxbig.hleds-ns2.hleds-pca9532.hleds-pca955x.hmailboxtegra186-hsp.hmediac8sectpfe.homap3-isp.htda1997x.htvp5150.hxilinx-vip.hmemorymt2701-larb-port.hmt8173-larb-port.htegra114-mc.htegra124-mc.htegra186-mc.htegra20-mc.htegra210-mc.htegra30-mc.hmfdarizona.has3722.hatmel-flexcom.hdbx500-prcmu.hmax77620.hpalmas.hqcom-rpm.hst-lpc.hstm32f4-rcc.hstm32f7-rcc.hstm32h7-rcc.hmipslantiq_rcu_gphy.hmuxmux.hnetmicrochip-lan78xx.hmscc-phy-vsc8531.hqca-ar803x.hti-dp83867.hti-dp83869.hphyphy-pistachio-usb.hphy-qcom-qusb2.hphy.hpinctrlam33xx.ham43xx.hat91.hbcm2835.hbrcm,pinctrl-stingray.hdm814x.hdra.hhisi.hkeystone.hmt6397-pinfunc.hmt65xx.hmt7623-pinfunc.hnomadik.homap.hpinctrl-tegra-xusb.hpinctrl-tegra.hqcom,pmic-gpio.hqcom,pmic-mpp.hr7s72100-pinctrl.hrockchip.hsamsung.hstm32-pinfunc.hsun4i-a10.hpowerimx7-power.hmt2701-power.hmt2712-power.hmt6797-power.hmt7622-power.hmt7623a-power.hmt8173-power.howl-s500-powergate.howl-s700-powergate.hpx30-power.hr8a7743-sysc.hr8a7745-sysc.hr8a77470-sysc.hr8a7779-sysc.hr8a7790-sysc.hr8a7791-sysc.hr8a7792-sysc.hr8a7793-sysc.hr8a7794-sysc.hr8a7795-sysc.hr8a7796-sysc.hr8a77965-sysc.hr8a77970-sysc.hr8a77980-sysc.hr8a77990-sysc.hr8a77995-sysc.hraspberrypi-power.hrk3036-power.hrk3128-power.hrk3228-power.hrk3288-power.hrk3328-power.hrk3366-power.hrk3368-power.hrk3399-power.htegra186-powergate.htegra194-powergate.hpwmpwm.hregulatormaxim,max77802.hresetaltr,rst-mgr-a10.haltr,rst-mgr-a10sr.haltr,rst-mgr-s10.haltr,rst-mgr.hamlogic,meson-axg-reset.hamlogic,meson-gxbb-reset.hamlogic,meson8b-clkc-reset.hamlogic,meson8b-reset.haxg-aoclkc.hcortina,gemini-reset.hgxbb-aoclkc.hhisi,hi6220-resets.himx7-reset.hmt2701-resets.hmt7622-reset.hmt8135-resets.hmt8173-resets.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-resets.hqcom,gcc-apq8084.hqcom,gcc-ipq806x.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hsnps,hsdk-reset.hstih407-resets.hstih415-resets.hstih416-resets.hstm32mp1-resets.hsun4i-a10-ccu.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra124-car.htegra186-reset.htegra194-reset.htegra210-car.hti-syscon.hsocqcom,apr.hqcom,gsbi.hrockchip,boot-mode.hzte,pm_domains.hsoundadi,adau1977.hapq8016-lpass.haudio-jack-events.hcs35l32.hcs42l42.hfsl-imx-audmux.hqcom,q6afe.hqcom,q6asm.hrt5640.hrt5651.hsamsung-i2s.htas2552.htlv320aic31xx.hspmispmi.hthermallm90.htegra124-soctherm.htegra186-bpmp-thermal.hthermal.hthermal_exynos.husbpd.hgeneratedasm-offsets.hautoconf.hbounds.hcompile.htimeconst.huapilinuxversion.hutsrelease.hkeysasymmetric-parser.hasymmetric-subtype.hasymmetric-type.hbig_key-type.hceph-type.hdns_resolver-type.hencrypted-type.hkeyring-type.hrxrpc-type.hsystem_keyring.htrusted-type.htrusted_tpm.huser-type.hkunitassert.hresource.htest-bug.htest.htry-catch.hkvmarm_arch_timer.harm_hypercalls.harm_pmu.harm_psci.harm_vgic.hiodev.hlinux8250_pci.ha.out.hacct.hacpi.hacpi_dma.hacpi_iort.hacpi_pmtmr.hadb.hadfs_fs.hadxl.haer.hagp_backend.hagpgart.hahci-remap.hahci_platform.haio.halarmtimer.haltera_jtaguart.haltera_uart.hambabus.hclcd-regs.hclcd.hkmi.hmmci.hpl022.hpl080.hpl08x.hpl093.hserial.hsp810.hamd-iommu.hanon_inodes.haperture.hapm-emulation.hapm_bios.happle-gmux.happle_bl.harch_topology.harm-cci.harm-smccc.harm_sdei.hascii85.hasn1.hasn1_ber_bytecode.hasn1_decoder.hassoc_array.hassoc_array_priv.hasync.hasync_tx.hata.hata_platform.hatalk.hath9k_platform.hatm.hatm_suni.hatm_tcp.hatmdev.hatmel-mci.hatmel-ssc.hatmel_pdc.hatmel_tc.hatomic.hattribute_container.haudit.haudit_arch.hauto_dev-ioctl.hauto_fs.hauxiliary_bus.hauxvec.haverage.havfvirtchnl.hb1pcmcia.hbacking-dev-defs.hbacking-dev.hbacklight.hbadblocks.hballoon_compaction.hbcd.hbch.hbcm47xx_nvram.hbcm47xx_sprom.hbcm47xx_wdt.hbcm963xx_nvram.hbcm963xx_tag.hbcmabcma.hbcma_driver_arm_c9.hbcma_driver_chipcommon.hbcma_driver_gmac_cmn.hbcma_driver_mips.hbcma_driver_pci.hbcma_driver_pcie2.hbcma_regs.hbcma_soc.hbinfmts.hbio.hbit_spinlock.hbitfield.hbitmap.hbitops.hbitrev.hbits.hblk-cgroup.hblk-mq-pci.hblk-mq-rdma.hblk-mq-virtio.hblk-mq.hblk-pm.hblk_types.hblkdev.hblkpg.hblktrace_api.hblockgroup_lock.hbma150.hbottom_half.hbpf-cgroup.hbpf-netns.hbpf.hbpf_lirc.hbpf_local_storage.hbpf_lsm.hbpf_trace.hbpf_types.hbpf_verifier.hbpfilter.hbpfptr.hbrcmphy.hbsearch.hbsg-lib.hbsg.hbtf.hbtf_ids.hbtree-128.hbtree-type.hbtree.hbtrfs.hbuffer_head.hbug.hbuild_bug.hbuildid.hbvec.hbyteorderbig_endian.hgeneric.hlittle_endian.hc2port.hcache.hcacheinfo.hcancore.hdevdev.hpeak_canfd.hled.hplatformcc770.hmcp251x.hrcar_can.hsja1000.hrx-offload.hskb.hcapability.hcb710.hcc_platform.hcciss_ioctl.hccp.hcdev.hcdrom.hcephauth.hbuffer.hceph_debug.hceph_features.hceph_frag.hceph_fs.hceph_hash.hcls_lock_client.hdebugfs.hdecode.hlibceph.hmdsmap.hmessenger.hmon_client.hmsgpool.hmsgr.hosd_client.hosdmap.hpagelist.hrados.hstring_table.hstriper.htypes.hcfag12864b.hcgroup-defs.hcgroup.hcgroup_rdma.hcgroup_subsys.hcirc_buf.hcleancache.hclkclk-provider.hclk.hat91_pmc.hclk-conf.hdavinci.hmmp.hmxs.hrenesas.hsunxi-ng.htegra.hti.hzynq.hclkdev.hclock_cooling.hclockchips.hclocksource.hcm4000_cs.hcma.hcmdline-parser.hcn_proc.hcnt32_to_63.hcoda.hcoda_psdev.hcompaction.hcompat.hcompat_time.hcompiler-clang.hcompiler-gcc.hcompiler-intel.hcompiler.hcompiler_attributes.hcompiler_types.hcompletion.hcomponent.hconcap.hconfigfs.hconnector.hconsole.hconsole_struct.hconsolemap.hconst.hcontainer.hcontainer_of.hcontext_tracking.hcontext_tracking_state.hcookie.hcordic.hcoredump.hcoresight-pmu.hcoresight-stm.hcoresight.hcount_zeros.hcounter.hcounter_enum.hcper.hcpu.hcpu_cooling.hcpu_pm.hcpu_rmap.hcpufeature.hcpufreq.hcpuhotplug.hcpuidle.hcpuidle_haltpoll.hcpumask.hcpuset.hcrash_core.hcrash_dump.hcrc-ccitt.hcrc-itu-t.hcrc-t10dif.hcrc16.hcrc32.hcrc32c.hcrc32poly.hcrc4.hcrc7.hcrc8.hcred.hcrushcrush.hhash.hmapper.hcrypto.hcryptohash.hcs5535.hctype.hcuda.hcxl_err.hcyclades.hdamon.hdavinci_emac.hdax.hdca.hdcache.hdccp.hdcookies.hdebug_locks.hdebugfs.hdebugobjects.hdecompressbunzip2.hgeneric.hinflate.hmm.hunlz4.hunlzma.hunlzo.hunxz.hdelay.hdelayacct.hdelayed_call.hdell-led.hdev_printk.hdevcoredump.hdevfreq-event.hdevfreq.hdevfreq_cooling.hdevice-mapper.hdevice.hdevice_cgroup.hdevm-helpers.hdevpts_fs.hdigsig.hdim.hdio.hdirent.hdlm.hdlm_plock.hdm-bufio.hdm-dirty-log.hdm-io.hdm-kcopyd.hdm-region-hash.hdm9000.hdmadma-buf.hdma-contiguous.hdma-direct.hdma-direction.hdma-fence-array.hdma-fence-chain.hdma-fence-unwrap.hdma-fence.hdma-iommu.hdma-map-ops.hdma-mapping.hdma-resv.hdw.hhsu.hidma64.hipu-dma.hmmp-pdma.hpxa-dma.hqcom_bam_dma.hsprd-dma.hxilinx_dma.hdmaengine.hdmapool.hdmar.hdmi.hdnotify.hdns_resolver.hdqblk_qtree.hdqblk_v1.hdqblk_v2.hdrbd.hdrbd_genl.hdrbd_genl_api.hdrbd_limits.hds2782_battery.hdsalan9303.hdtlk.hdw_apb_timer.hdynamic_debug.hdynamic_queue_limits.hearlycpio.hecryptfs.hedac.hedd.hedma.heeprom_93cx6.heeprom_93xx46.hefi-bgrt.hefi.hefs_vh.heisa.helevator.helf-fdpic.helf-randomize.helf.helfcore-compat.helfcore.helfnote.henclosure.henergy_model.herr.herrname.herrno.herror-injection.herrqueue.herrseq.hetherdevice.hethtool.hethtool_netlink.heventfd.heventpoll.hevm.hexport.hexportfs.hext2_fs.hextable.hextconextcon-provider.hextcon.hextcon-adc-jack.hf2fs_fs.hf75375s.hfalloc.hfanotify.hfault-inject.hfb.hfbcon.hfcdevice.hfcntl.hfd.hfddidevice.hfdtable.hfec.hfile.hfilter.hfips.hfirewire.hfirmwarefirmware-map.hfirmware.hcirruscs_dsp.hwmfw.hintelstratix10-smc.hstratix10-svc-client.hmesonmeson_sm.hfixp-arith.hflat.hflex_array.hflex_proportions.hfmc-sdb.hfmc.hfont.hfortify-string.hfpgaadi-axi-common.haltera-pr-ip-core.hfpga-bridge.hfpga-mgr.hfpga-region.hfreezer.hfrontswap.hfs.hfs_context.hfs_enet_pd.hfs_parser.hfs_pin.hfs_stack.hfs_struct.hfs_uart_pd.hfscache-cache.hfscache.hfscrypt.hfscrypt_notsupp.hfscrypt_supp.hfsi.hfslfsl-diu-fb.hbestcommata.hbestcomm.hbestcomm_priv.hfec.hgen_bd.hsram.hedac.hguts.hmc.hptp_qoriq.hfsl_devices.hfsl_hypervisor.hfsl_ifc.hfsldma.hfsnotify.hfsnotify_backend.hftrace.hftrace_irq.hfutex.hfwnode.hgameport.hgcd.hgenalloc.hgeneric-radix-tree.hgenetlink.hgenhd.hgenl_magic_func.hgenl_magic_struct.hgetcpu.hgfp.hglob.hgoldfish.hgpiogpio-pxa.hgpio.hconsumer.hdriver.hgpio-reg.hmachine.hgpio_keys.hhardirq.hhash.hhashtable.hhdlc.hhdlcdrv.hhdmi.hhid-debug.hhid-roccat.hhid-sensor-hub.hhid-sensor-ids.hhid.hhidden.hhiddev.hhidraw.hhighmem-internal.hhighmem.hhighuid.hhil.hhil_mlc.hhippidevice.hhmm.hhost1x.hhp_sdc.hhpet.hhrtimer.hhrtimer_defs.hhsihsi.hssi_protocol.hhtcpld.hhuge_mm.hhugetlb.hhugetlb_cgroup.hhugetlb_inline.hhw_breakpoint.hhw_random.hhwmon-sysfs.hhwmon-vid.hhwmon.hhwspinlock.hhyperv.hhypervisor.hi2c-algo-bit.hi2c-algo-pca.hi2c-algo-pcf.hi2c-dev.hi2c-mux.hi2c-pxa.hi2c-smbus.hi2c.hi8042.hi8253.hicmp.hicmpv6.hide.hidr.hieee80211.hieee802154.hif_arp.hif_bridge.hif_eql.hif_ether.hif_fddi.hif_frad.hif_link.hif_ltalk.hif_macvlan.hif_phonet.hif_pppol2tp.hif_pppox.hif_tap.hif_team.hif_tun.hif_tunnel.hif_vlan.higmp.hihex.hiioaccelkxcjk_1013.hadcad_sigma_delta.hstm32-dfsdm-adc.hbuffer-dma.hbuffer-dmaengine.hbuffer.hbuffer_impl.hcommoncros_ec_sensors_core.hssp_sensors.hst_sensors.hst_sensors_i2c.hst_sensors_spi.hconfigfs.hconsumer.hdacad5421.had5504.had5791.hmax517.hmcp4725.hdriver.hevents.hfrequencyad9523.hadf4350.hgyroitg3200.hhw-consumer.hiio.himuadis.hkfifo_buf.hmachine.hmagnetometerak8975.hsw_device.hsw_trigger.hsysfs.htimerstm32-lptim-trigger.hstm32-timer-trigger.htrigger.htrigger_consumer.htriggered_buffer.htriggered_event.htypes.hima.himx-media.hin.hin6.hindirect_call_wrapper.hinet.hinet_diag.hinetdevice.hinit.hinit_ohci1394_dma.hinit_task.hinitrd.hinotify.hinputinput-polldev.hinput.had714x.hadp5589.hadxl34x.has5011.hauo-pixcir-ts.hbu21013.hcma3000.hcy8ctmg110_pdata.hcyttsp.helan-i2c-ids.hgp2ap002a00f.hili210x.hkxtj9.hlm8333.hmatrix_keypad.hmt.hnavpoint.hsamsung-keypad.hsh_keysc.hsparse-keymap.htouchscreen.htps6507x-ts.hinstrumented.hintegrity.hintel-iommu.hintel-ish-client-if.hintel-pti.hintel_rapl.hintel_th.hinterrupt.hinterval_tree.hinterval_tree_generic.hio-64-nonatomic-hi-lo.hio-64-nonatomic-lo-hi.hio-mapping.hio-pgtable.hio.hioasid.hioc3.hioc4.hiocontext.hiomap.hiommu-helper.hiommu.hiopoll.hioport.hioprio.hiosys-map.hiova.hip.hipack.hipc.hipc_namespace.hipmi-fru.hipmi.hipmi_smi.hipv6.hipv6_route.hirq.hirq_cpustat.hirq_poll.hirq_sim.hirq_work.hirqbypass.hirqchipirqchip.harm-gic-common.harm-gic-v3.harm-gic-v4.harm-gic.harm-vgic-info.harm-vic.hchained_irq.hingenic.hirq-bcm2836.hirq-omap-intc.hirq-partition-percpu.hirq-sa11x0.hmmp.hmxs.hversatile-fpga.hxtensa-mx.hxtensa-pic.hirqdesc.hirqdomain.hirqflags.hirqhandler.hirqnr.hirqreturn.hisa.hisapnp.hiscsi_boot_sysfs.hiscsi_ibft.hisdnisdn.hcapilli.hcapiutil.hhdlc.hisdn_divertif.hisdn_ppp.hisdnif.hisicom.hism.hiversion.hjbd2.hjhash.hjiffies.hjournal-head.hjoystick.hjump_label.hjump_label_ratelimit.hjz4740-adc.hjz4780-nemc.hkallsyms.hkasan-checks.hkasan.hkbd_diacr.hkbd_kern.hkbuild.hkconfig.hkcore.hkcov.hkcsan-checks.hkcsan.hkdb.hkdebug.hkdev_t.hkern_levels.hkernel-page-flags.hkernel.hkernel_stat.hkernelcapi.hkernfs.hkexec.hkey-type.hkey.hkeyboard.hkfifo.hkgdb.hkhugepaged.hklist.hkmemleak.hkmod.hkmsg_dump.hkobj_map.hkobject.hkobject_ns.hkprobes.hkref.hks0108.hks8842.hks8851_mll.hksm.hkstrtox.hkthread.hktime.hkvm_dirty_ring.hkvm_host.hkvm_irqfd.hkvm_para.hkvm_types.hl2tp.hlapb.hlatencytop.hlcd.hlcm.hled-class-flash.hled-lm3530.hleds-bd2802.hleds-lp3944.hleds-lp3952.hleds-pca9532.hleds-regulator.hleds-tca6507.hleds.hleds_pwm.hlibata.hlibfdt.hlibfdt_env.hlibgcc.hlibnvdimm.hlibps2.hlicense.hlightnvm.hlimits.hlinear_range.hlinkage.hlinkmode.hlinux_logo.hlis3lv02d.hlist.hlist_bl.hlist_lru.hlist_nulls.hlist_sort.hlivepatch.hllc.hllist.hlocal_lock.hlocal_lock_internal.hlockdbind.hdebug.hlockd.hnlm.hshare.hxdr.hxdr4.hlockdep.hlockdep_types.hlockref.hlog2.hlogic_pio.hlp.hlru_cache.hlsm_audit.hlsm_hook_defs.hlsm_hooks.hlz4.hlzo.hmISDNdsp.hmISDNhw.hmISDNif.hmailboxbrcm-message.hmailbox_client.hmailbox_controller.hmaple.hmarvell_phy.hmath.hmath64.hmax17040_battery.hmbcache.hmbus.hmc146818rtc.hmc6821.hmcb.hmdev.hmdio-bitbang.hmdio-gpio.hmdio-mux.hmdio.hmei_aux.hmei_cl_bus.hmem_encrypt.hmemblock.hmemcontrol.hmemfd.hmemory.hmemory_hotplug.hmempolicy.hmempool.hmemregion.hmemremap.hmemstick.hmfd88pm80x.h88pm860x.haat2870.hab3100.habx500abx500.hab8500-bm.hab8500-codec.hab8500-gpadc.hab8500-sysctrl.hab8500.hux500_chargalg.hac100.hadp5520.haltera-a10sr.harizonacore.hpdata.hregisters.has3711.has3722.hasic3.hatmel-hlcdc.haxp20x.hbcm590xx.hbd9571mwv.hcore.hcros_ec.hcros_ec_commands.hcros_ec_lpc_mec.hcros_ec_lpc_reg.hda8xx-cfgchip.hda903x.hda9052da9052.hpdata.hreg.hda9055core.hpdata.hreg.hda9062core.hregisters.hda9063core.hpdata.hregisters.hda9150core.hregisters.hdavinci_voicecodec.hdb8500-prcmu.hdbx500-prcmu.hdln2.hdm355evm_msp.hds1wm.hezx-pcap.hhi6421-pmic.hhi655x-pmic.hhtc-pasic3.himx25-tsadc.hintel_msic.hintel_soc_pmic.hintel_soc_pmic_bxtwc.hipaq-micro.hjanz.hkempld.hlm3533.hlochnagar.hlochnagar1_regs.hlochnagar2_regs.hlp3943.hlp873x.hlp87565.hlp8788-isink.hlp8788.hlpc_ich.hmax14577-private.hmax14577.hmax77620.hmax77686-private.hmax77686.hmax77693-common.hmax77693-private.hmax77693.hmax77843-private.hmax8907.hmax8925.hmax8997-private.hmax8997.hmax8998-private.hmax8998.hmc13783.hmc13892.hmc13xxx.hmcp.hmenelaus.hmotorola-cpcap.hmt6323core.hregisters.hmt6397core.hregisters.hmxs-lradc.hpalmas.hpcf50633adc.hbacklight.hcore.hgpio.hmbc.hpmic.hqcom_rpm.hrave-sp.hrc5t583.hrdc321x.hretu.hrk808.hrn5t618.hrt5033-private.hrt5033.hsamsungcore.hirq.hrtc.hs2mpa01.hs2mps11.hs2mps13.hs2mps14.hs2mps15.hs2mpu02.hs5m8763.hs5m8767.hsi476x-core.hsi476x-platform.hsi476x-reports.hsky81452.hsmsc.hsta2x11-mfd.hstm32-lptimer.hstm32-timers.hstmpe.hstw481x.hsun4i-gpadc.hsysconsyscon.hatmel-matrix.hatmel-mc.hatmel-smc.hatmel-st.hclps711x.himx6q-iomuxc-gpr.himx7-iomuxc-gpr.ht7l66xb.htc3589x.htc6387xb.htc6393xb.hti-lmu-register.hti-lmu.hti_am335x_tscadc.htmio.htps6105x.htps65010.htps6507x.htps65086.htps65090.htps65217.htps65218.htps6586x.htps65910.htps65912.htps68470.htps80031.htwl.htwl4030-audio.htwl6040.hucb1x00.hviperboard.hwl1273-core.hwm831xauxadc.hcore.hgpio.hirq.hotp.hpdata.hpmu.hregulator.hstatus.hwatchdog.hwm8350audio.hcomparator.hcore.hgpio.hpmic.hrtc.hsupply.hwdt.hwm8400-audio.hwm8400-private.hwm8400.hwm8994core.hgpio.hpdata.hregisters.hwm97xx.hmhi.hmhi_ep.hmic_bus.hmicrel_phy.hmicrochipphy.hmigrate.hmigrate_mode.hmii.hmii_timestamper.hmin_heap.hminmax.hmisc_cgroup.hmiscdevice.hmlx4cmd.hcq.hdevice.hdoorbell.hdriver.hqp.hsrq.hmlx5cq.hdevice.hdoorbell.hdriver.heq.heswitch.hfs.hfs_helpers.hmlx5_ifc.hmlx5_ifc_fpga.hmlx5_ifc_vdpa.hmpfs.hport.hqp.hrsc_dump.htransobj.hvport.hmm-arch-hooks.hmm.hmm_inline.hmm_types.hmm_types_task.hmman.hmmap_lock.hmmccard.hcore.hhost.hmmc.hpm.hsd.hsdhci-pci-data.hsdio.hsdio_func.hsdio_ids.hsh_mmcif.hslot-gpio.hmmdebug.hmmiotrace.hmmu_context.hmmu_notifier.hmmzone.hmnt_namespace.hmod_devicetable.hmodule.hmodule_signature.hmoduleloader.hmoduleparam.hmount.hmpage.hmpi.hmpls.hmpls_iptunnel.hmroute.hmroute6.hmroute_base.hmsdos_fs.hmsdos_partition.hmsg.hmsi.hmtdbbm.hblktrans.hcfi.hcfi_endian.hconcat.hdoc2000.hflashchip.hftl.hgen_probe.hinftl.hlatch-addr-flash.hlpc32xx_mlc.hlpc32xx_slc.hmap.hmtd.hmtdram.hnand-gpio.hnand.hnand_bch.hnand_ecc.hndfc.hnftl.honenand.honenand_regs.hpartitions.hpfow.hphysmap.hpismo.hplat-ram.hqinfo.hrawnand.hsh_flctl.hsharpsl.hspear_smi.hspi-nor.hsuper.hubi.hxip.hmutex.hmuxconsumer.hdriver.hmv643xx.hmv643xx_eth.hmv643xx_i2c.hmvebu-pmsu.hmxm-wmi.hn_r3964.hnamei.hnd.hnetnet.hinteli40e_client.hiidc.hnetdev_features.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_comment.hip_set_counter.hip_set_getport.hip_set_hash.hip_set_list.hip_set_skbinfo.hip_set_timeout.hpfxlen.hnf_conntrack_amanda.hnf_conntrack_common.hnf_conntrack_dccp.hnf_conntrack_ftp.hnf_conntrack_h323.hnf_conntrack_h323_asn1.hnf_conntrack_h323_types.hnf_conntrack_irc.hnf_conntrack_pptp.hnf_conntrack_proto_gre.hnf_conntrack_sane.hnf_conntrack_sctp.hnf_conntrack_sip.hnf_conntrack_snmp.hnf_conntrack_tcp.hnf_conntrack_tftp.hnf_conntrack_zones_common.hnf_osf.hnfnetlink.hnfnetlink_acct.hx_tables.hxt_hashlimit.hxt_physdev.hnetfilter_arparp_tables.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebtables.hnetfilter_defs.hnetfilter_ingress.hnetfilter_ipv4netfilter_ipv4.hip_tables.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hnetlink.hnetpoll.hnfs.hnfs3.hnfs4.hnfs_fs.hnfs_fs_i.hnfs_fs_sb.hnfs_iostat.hnfs_page.hnfs_xdr.hnfsacl.hnitro_enclaves.hnl802154.hnls.hnmi.hnode.hnodemask.hnospec.hnotifier.hns_common.hnsc_gpio.hnsproxy.hntb.hntb_transport.hnubus.hnuma.hnvme-fc-driver.hnvme-fc.hnvme-rdma.hnvme-tcp.hnvme.hnvmem-consumer.hnvmem-provider.hnvram.hobjagg.hobjtool.hof.hof_address.hof_clk.hof_device.hof_dma.hof_fdt.hof_gpio.hof_graph.hof_iommu.hof_irq.hof_mdio.hof_net.hof_pci.hof_pdt.hof_platform.hof_reserved_mem.hoid_registry.holpc-ec.homap-dma.homap-dmaengine.homap-gpmc.homap-iommu.homap-mailbox.homapfb.honce.hoom.hopenvswitch.hoprofile.hosq_lock.hoverflow.hpadata.hpage-flags-layout.hpage-flags.hpage-isolation.hpage_counter.hpage_ext.hpage_idle.hpage_owner.hpage_ref.hpage_reporting.hpageblock-flags.hpagemap.hpagevec.hpagewalk.hparman.hparport.hparport_pc.hparser.hpata_arasan_cf_data.hpatchkey.hpath.hpch_dma.hpci-acpi.hpci-ats.hpci-dma-compat.hpci-ecam.hpci-ep-cfs.hpci-epc.hpci-epf.hpci-p2pdma.hpci.hpci_hotplug.hpci_ids.hpcspcs-xpcs.hpda_power.hpe.hpercpu-defs.hpercpu-refcount.hpercpu-rwsem.hpercpu.hpercpu_counter.hperfarm_pmu.hperf_event.hperf_regs.hpersonality.hpfn.hpfn_t.hphonet.hphyphy.homap_control_phy.homap_usb.hphy-qcom-ufs.hphy-sun4i-usb.hphy.htegraxusb.hulpi_phy.hphy_fixed.hphy_led_triggers.hphylink.hpid.hpid_namespace.hpim.hpinctrlconsumer.hdevinfo.hmachine.hpinconf-generic.hpinconf.hpinctrl-state.hpinctrl.hpinmux.hpipe_fs_i.hpkeys.hpktcdvd.hpl320-ipc.hplatform_dataad5449.had5755.had5761.had7266.had7291.had7298.had7303.had7791.had7793.had7879.had7887.hadau17x1.hadp5588.hadp8860.hadp8870.hads1015.hads7828.hapds990x.harm-ux500-pm.hasoc-imx-ssi.hasoc-kirkwood.hasoc-mx27vis.hasoc-palm27x.hasoc-s3c.hasoc-s3c24xx_simtec.hasoc-ti-mcbsp.hasoc-ux500-msp.hat24.hat91_adc.hata-pxa.hata-samsung_cf.hatmel.hb53.hbcmgenet.hbd6107.hbh1770glc.hbrcmfmac.hbrcmnand.hbt-nokia-h4p.hclk-da8xx-cfgchip.hclk-davinci-pll.hclk-fch.hclk-integrator.hclk-u300.hcpuidle-exynos.hcrypto-atmel.hcrypto-ux500.hcyttsp4.hdavinci_asp.hdb8500_thermal.hdma-atmel.hdma-coh901318.hdma-dw.hdma-ep93xx.hdma-hsu.hdma-imx-sdma.hdma-imx.hdma-mmp_tdma.hdma-mv_xor.hdma-s3c24xx.hdma-ste-dma40.hdmtimer-omap.hds620.hdwc3-omap.hedma.hefm32-spi.hefm32-uart.hehci-sh.helm.hemif_plat.heth-netx.hfsa9480.hg762.hgpio-ath79.hgpio-davinci.hgpio-dwapb.hgpio-htc-egpio.hgpio-omap.hgpio-ts5500.hgpio_backlight.hgpmc-omap.hhsmmc-omap.hhwmon-s3c.hi2c-cbus-gpio.hi2c-davinci.hi2c-gpio.hi2c-imx.hi2c-mux-gpio.hi2c-mux-reg.hi2c-ocores.hi2c-omap.hi2c-pca-platform.hi2c-pxa.hi2c-s3c2410.hi2c-xiic.hina2xx.hintel-mid_wdt.hintel-spi.hinvensense_mpu6050.hiommu-omap.hirda-pxaficp.hirda-sa11x0.hisl9305.hitco_wdt.hkeyboard-pxa930_rotary.hkeyboard-spear.hkeypad-ep93xx.hkeypad-nomadik-ske.hkeypad-omap.hkeypad-pxa27x.hkeypad-w90p910.hkeyscan-davinci.hlcd-mipid.hleds-kirkwood-netxbig.hleds-kirkwood-ns2.hleds-lm355x.hleds-lm3642.hleds-lp55xx.hleds-omap.hleds-pca963x.hleds-s3c24xx.hlm3630a_bl.hlm3639_bl.hlm8323.hlp855x.hlp8727.hlp8755.hltc4245.hlv5207lp.hmacb.hmax197.hmax3421-hcd.hmax6639.hmax6697.hmax732x.hmcs.hmdio-bcm-unimac.hmdio-gpio.hmediacamera-mx2.hcamera-mx3.hcamera-pxa.hcoda.hmmp-camera.homap1_camera.homap4iss.hs5p_hdmi.hsi4713.hsii9234.hsoc_camera_platform.htimb_radio.htimb_video.hmfd-mcp-sa11x0.hmicrochip-ksz.hmlxcpld.hmlxreg.hmmc-davinci.hmmc-esdhc-imx.hmmc-mxcmmc.hmmc-omap.hmmc-pxamci.hmmc-s3cmci.hmmc-sdhci-s3c.hmmp_audio.hmmp_dma.hmouse-pxa930_trkball.hmtd-davinci-aemif.hmtd-davinci.hmtd-mxc_nand.hmtd-nand-omap2.hmtd-nand-pxa3xx.hmtd-nand-s3c2410.hmtd-orion_nand.hmv88e6xxx.hmv_usb.hnet-cw1200.hnfcmrvl.hntc_thermistor.hnxp-nci.homap-twl4030.homap-wd-timer.homap1_bl.homapdss.hpca953x.hpca954x.hpcf857x.hpcmcia-pxa2xx_viper.hphy-da8xx-usb.hpinctrl-single.hpixcir_i2c_ts.hpm33xx.hpwm_omap_dmtimer.hpxa2xx_udc.hpxa_sdhci.hregulator-haptic.hremoteproc-omap.hrtc-ds2404.hrtc-v3020.hs3c-hsotg.hs3c-hsudc.hsa11x0-serial.hsc18is602.hsdhci-pic32.hserial-imx.hserial-omap.hserial-sccnxp.hshmob_drm.hsht3x.hshtc1.hsi5351.hsimplefb.hsky81452-backlight.hspi-clps711x.hspi-davinci.hspi-ep93xx.hspi-imx.hspi-mt65xx.hspi-nuc900.hspi-omap2-mcspi.hspi-s3c64xx.hssm2518.hst33zp24.hst_sensors_pdata.hsyscon.htc35876x.htda9950.hti-aemif.hti-sysc.htouchscreen-s3c2410.htsc2007.htsl2563.htsl2772.huio_dmem_genirq.huio_pruss.husb-davinci.husb-ehci-mxc.husb-ehci-orion.husb-musb-ux500.husb-mx2.husb-ohci-pxa27x.husb-ohci-s3c2410.husb-omap.husb-omap1.husb-pxa3xx-ulpi.husb-s3c2410_udc.husb3503.hux500_wdt.hvideo-clcd-versatile.hvideo-ep93xx.hvideo-imxfb.hvideo-mx3fb.hvideo-nuc900fb.hvideo-pxafb.hvideo_s3c.hvoltage-omap.hwiznet.hwkup_m3.hx86apple.hclk-lpss.hclk-pmc-atom.hpmc_atom.hsoc.hzforce_ts.hplatform_device.hplatform_profile.hpldmfw.hplist.hpm-trace.hpm.hpm2301_charger.hpm_clock.hpm_domain.hpm_opp.hpm_qos.hpm_runtime.hpm_wakeirq.hpm_wakeup.hpmbus.hpmu.hpnfs_osd_xdr.hpnp.hpoison.hpoll.hposix-clock.hposix-timers.hposix_acl.hposix_acl_xattr.hpowerab8500.hbq2415x_charger.hbq24190_charger.hbq24735-charger.hbq27xxx_battery.hcharger-manager.hgeneric-adc-battery.hgpio-charger.hisp1704_charger.hjz4740-battery.hmax17042_battery.hmax8903_charger.hsbs-battery.hsmartreflex.hsmb347-charger.htwl4030_madc_battery.hpower_supply.hpowercap.hppp-comp.hppp_channel.hppp_defs.hpps-gpio.hpps_kernel.hpr.hprandom.hpreempt.hprefetch.hprime_numbers.hprintk.hprmt.hproc_fs.hproc_ns.hprocessor.hprofile.hprojid.hproperty.hpsci.hpseudo_fs.hpsi.hpsi_types.hpsp-platform-access.hpsp-sev.hpsp-tee.hpsp.hpstore.hpstore_ram.hpti.hptp_classify.hptp_clock_kernel.hptr_ring.hptrace.hpurgatory.hpvclock_gtod.hpwm.hpwm_backlight.hpxa168_eth.hpxa2xx_ssp.hqcom-geni-se.hqcom_scm.hqedcommon_hsi.heth_common.hfcoe_common.hiscsi_common.hiwarp_common.hnvmetcp_common.hqed_chain.hqed_eth_if.hqed_fcoe_if.hqed_if.hqed_iov_if.hqed_iscsi_if.hqed_ll2_if.hqed_nvmetcp_if.hqed_rdma_if.hqede_rdma.hrdma_common.hroce_common.hstorage_common.htcp_common.hqnx6_fs.hquicklist.hquota.hquotaops.hradix-tree.hraiddetect.hmd_u.hpq.hxor.hraid_class.hramfs.hrandom.hrange.hras.hratelimit.hratelimit_types.hrational.hrbtree.hrbtree_augmented.hrbtree_latch.hrbtree_types.hrcu_node_tree.hrcu_segcblist.hrcu_sync.hrculist.hrculist_bl.hrculist_nulls.hrcupdate.hrcupdate_trace.hrcupdate_wait.hrcutiny.hrcutree.hrcuwait.hreboot-mode.hreboot.hreciprocal_div.hrefcount.hregmap.hregset.hregulatorab8500.hact8865.harizona-ldo1.harizona-micsupp.hconsumer.hda9211.hdb8500-prcmu.hdriver.hfan53555.hfixed.hgpio-regulator.hlp3971.hlp3972.hlp872x.hmachine.hmax1586.hmax8649.hmax8660.hmax8952.hmax8973-regulator.hmt6311.hmt6323-regulator.hmt6380-regulator.hmt6397-regulator.hof_regulator.hpfuze100.htps51632-regulator.htps62360.htps6507x.huserspace-consumer.hrelay.hremoteprocremoteproc.hqcom_rproc.hst_slim_rproc.hresctrl.hreservation.hresetreset-controller.hreset.hbcm63xx_pmb.hresource.hresource_ext.hrestart_block.hrfkill.hrh_flags.hrh_kabi.hrh_kabi_attributes.hrh_kabi_aux.hrh_kabi_memcg.hrh_tasklist_lock.hrhashtable-types.hrhashtable.hring_buffer.hrio.hrio_drv.hrio_ids.hrio_regs.hrmap.hrmi.hrndis.hrodata_test.hroot_dev.hrpmsgrpmsg.hqcom_glink.hqcom_smd.hrslib.hrtcrtc.hds1286.hds1307.hds1685.hm48t59.hsirfsoc_rtciobrg.hrtmutex.hrtnetlink.hrtsx_common.hrtsx_pci.hrtsx_usb.hrwbase_rt.hrwlock.hrwlock_api_smp.hrwlock_rt.hrwlock_types.hrwsem.hs3c_adc_battery.hsa11x0-dma.hsbitmap.hscatterlist.hscc.hschedsched.hautogroup.hclock.hcoredump.hcpufreq.hcputime.hdeadline.hdebug.hhotplug.hidle.hinit.hisolation.hjobctl.hloadavg.hmm.hnohz.hnuma_balancing.hprio.hrt.hsignal.hsmt.hstat.hsysctl.htask.htask_stack.htopology.htypes.huser.hwake_q.hxacct.hsched_clock.hscif.hscmi_protocol.hscpi_protocol.hscreen_info.hscs.hsctp.hscx200.hscx200_gpio.hsdb.hsdla.hseccomp.hsecurebits.hsecurity.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselection.hsem.hsemaphore.hseq_buf.hseq_file.hseq_file_net.hseqlock.hseqno-fence.hserdev.hserial.hserial_8250.hserial_bcm63xx.hserial_core.hserial_max3100.hserial_pnx8xxx.hserial_s3c.hserial_sci.hserio.hset_memory.hsfi.hsfi_acpi.hsfp.hsh_clk.hsh_dma.hsh_eth.hsh_intc.hsh_timer.hshdma-base.hshm.hshmem_fs.hshrinker.hsignal.hsignal_types.hsignalfd.hsiox.hsiphash.hsirfsoc_dma.hsizes.hskb_array.hskbuff.hskmsg.hslab.hslab_def.hslimbus.hslub_def.hsm501-regs.hsm501.hsmc911x.hsmc91x.hsmp.hsmp_types.hsmpboot.hsmsc911x.hsmscphy.hsocactionsowl-sps.hbrcmstbbrcmstb.hdovepmu.hmediatekinfracfg.hmtk_wed.hqcomapr.hmdt_loader.hqmi.hsmd-rpm.hsmem.hsmem_state.hwcnss_ctrl.hrenesasrcar-rst.hrcar-sysc.hsamsungexynos-pmu.hexynos-regs-pmu.hsunxisunxi_sram.htiknav_dma.hknav_qmss.hti-msgmgr.hti_sci_protocol.hsock_diag.hsocket.hsockptr.hsonet.hsony-laptop.hsonypi.hsort.hsound.hsoundcard.hsoundwiresdw.hsdw_amd.hsdw_intel.hsdw_registers.hsdw_type.hspiad7877.hadi_spi3.hads7846.hat73c213.hat86rf230.hcc2520.hcorgi_lcd.hds1305.heeprom.hflash.hifx_modem.hl4f00242t03.hlibertas_spi.hlms283gf05.hmax7301.hmc33880.hmcp23s08.hmmc_spi.hmxs-spi.hpxa2xx_spi.hrspi.hs3c24xx.hsh_hspi.hsh_msiof.hspi-fsl-dspi.hspi-mem.hspi.hspi_bitbang.hspi_gpio.hspi_oc_tiny.htdo24m.htle62x0.hxilinx_spi.hspinlock.hspinlock_api_smp.hspinlock_api_up.hspinlock_rt.hspinlock_types.hspinlock_types_raw.hspinlock_types_up.hspinlock_up.hsplice.hspmi.hsram.hsrcu.hsrcutiny.hsrcutree.hssbssb.hssb_driver_chipcommon.hssb_driver_extif.hssb_driver_gige.hssb_driver_mips.hssb_driver_pci.hssb_embedded.hssb_regs.hssbi.hstackdepot.hstackprotector.hstacktrace.hstart_kernel.hstat.hstatfs.hstatic_call.hstatic_call_types.hstatic_key.hstddef.hstm.hstmmac.hstmp3xxx_rtc_wdt.hstmp_device.hstop_machine.hstring.hstring_helpers.hstringhash.hstringify.hsudmac.hsungem_phy.hsunrpcaddr.hauth.hauth_gss.hbc_xprt.hcache.hclnt.hdebug.hgss_api.hgss_asn1.hgss_err.hgss_krb5.hgss_krb5_enctypes.hmetrics.hmsg_prot.hrpc_pipe_fs.hrpc_rdma.hrpc_rdma_cid.hsched.hstats.hsvc.hsvc_rdma.hsvc_rdma_pcl.hsvc_xprt.hsvcauth.hsvcauth_gss.hsvcsock.htimer.htypes.hxdr.hxprt.hxprtmultipath.hxprtrdma.hxprtsock.hsunserialcore.hsunxi-rsb.hsuperhyway.hsuspend.hsvga.hsw842.hswab.hswait.hswap.hswap_cgroup.hswap_slots.hswapfile.hswapops.hswiotlb.hswitchtec.hsxgbe_platform.hsync_core.hsync_file.hsynclink.hsys.hsys_soc.hsyscalls.hsyscore_ops.hsysctl.hsysfs.hsyslog.hsysrq.hsysv_fs.ht10-pi.htask_io_accounting.htask_io_accounting_ops.htask_work.htaskstats_kern.htboot.htc.htca6416_keypad.htcp.htee_drv.htextsearch.htextsearch_fsm.htfrc.hthermal.hthinkpad_acpi.hthread_info.hthreads.hthunderbolt.hti-emif-sram.hti_wilink_st.htick.htifm.htimb_dma.htimb_gpio.htime.htime32.htime64.htime_namespace.htimecounter.htimekeeper_internal.htimekeeping.htimekeeping32.htimer.htimerfd.htimeriomem-rng.htimerqueue.htimex.htnum.htopology.htorture.htoshiba.htpm.htpm_command.htpm_eventlog.htrace.htrace_clock.htrace_events.htrace_seq.htracefs.htracehook.htracepoint-defs.htracepoint.htransport_class.hts-nbus.htsacct_kern.htty.htty_driver.htty_flip.htty_ldisc.htypecheck.htypes.hu64_stats_sync.huaccess.hucb1400.hucs2_string.hudp.huidgid.huio.huio_driver.hulpidriver.hinterface.hregs.humh.hunalignedaccess_ok.hbe_byteshift.hbe_memmove.hbe_struct.hgeneric.hle_byteshift.hle_memmove.hle_struct.hmemmove.hpacked_struct.hunits.huprobes.husbusb.hassociation.haudio-v2.haudio-v3.haudio.hc67x00.hccid.hcdc-wdm.hcdc.hcdc_ncm.hch9.hchipidea.hcomposite.hehci-dbgp.hehci_def.hehci_pdriver.hezusb.hfunctionfs.hg_hid.hgadget.hgadget_configfs.hgpio_vbus.hhcd.hinput.hiowarrior.hirda.hisp116x.hisp1301.hisp1362.hm66592.hmusb-ux500.hmusb.hnet2280.hof.hohci_pdriver.hotg-fsm.hotg.hpd.hpd_ado.hpd_bdo.hpd_ext_sdb.hpd_vdo.hphy.hphy_companion.hquirks.hr8152.hr8a66597.hrenesas_usbhs.hrndis_host.hrole.hserial.hsl811.hstorage.htcpci.htcpm.htegra_usb_phy.htypec.htypec_altmode.htypec_dp.htypec_mux.htypec_retimer.htypec_tbt.huas.hulpi.husb338x.husb_phy_generic.husbnet.huvc.hwusb-wa.hwusb.hxhci-dbgp.husb_usual.husbdevice_fs.huser-return-notifier.huser.huser_namespace.huserfaultfd_k.husermode_driver.hutil_macros.huts.hutsname.huuid.huwbuwb.hdebug-cmd.hspec.humc.hwhci.hvbox_utils.hvdpa.hverification.hvermagic.hvexpress.hvfio.hvfs.hvga_switcheroo.hvgaarb.hvhost_iotlb.hvia-core.hvia-gpio.hvia.hvia_i2c.hvideodev2.hvirtio.hvirtio_byteorder.hvirtio_caif.hvirtio_config.hvirtio_console.hvirtio_dma_buf.hvirtio_net.hvirtio_pci_modern.hvirtio_ring.hvirtio_vsock.hvisorbus.hvlynq.hvm_event_item.hvmacache.hvmalloc.hvme.hvmpressure.hvmstat.hvmw_vmci_api.hvmw_vmci_defs.hvringh.hvt.hvt_buffer.hvt_kern.hvtime.hw1-gpio.hw1.hwait.hwait_bit.hwanrouter.hwatchdog.hwimaxdebug.hwin_minmax.hwireless.hwkup_m3_ipc.hwl12xx.hwm97xx.hwmi.hworkqueue.hwriteback.hww_mutex.hxarray.hxattr.hxxhash.hxz.hyam.hz2_battery.hzbud.hzconf.hzlib.hzorro.hzpool.hzsmalloc.hzstd.hzutil.hmath-emudouble.hop-1.hop-2.hop-4.hop-8.hop-common.hquad.hsingle.hsoft-fp.hmediacec-notifier.hcec-pin.hcec.hdavinciccdc_types.hdm355_ccdc.hdm644x_ccdc.hisif.hvpbe.hvpbe_display.hvpbe_osd.hvpbe_types.hvpbe_venc.hvpfe_capture.hvpfe_types.hvpif_types.hvpss.hdemux.hdmxdev.hdrv-intfcx2341x.hcx25840.hexynos-fimc.hmsp3400.hrenesas-ceu.hs3c_camif.hsaa7146.hsaa7146_vv.hsh_mobile_ceu.hsh_vou.hsi476x.hsoc_mediabus.htea575x.hdvb-usb-ids.hdvb_ca_en50221.hdvb_demux.hdvb_frontend.hdvb_math.hdvb_net.hdvb_ringbuffer.hdvb_vb2.hdvbdev.hframe_vector.hi2cad9389b.hadp1653.hadv7183.hadv7343.hadv7393.hadv7511.hadv7604.hadv7842.hak881x.hbt819.hcs5345.hcs53l32a.hir-kbd-i2c.hlm3560.hlm3646.hm52790.hm5mols.hmt9m032.hmt9p031.hmt9t001.hmt9t112.hmt9v011.hmt9v022.hmt9v032.hnoon010pc30.hov2659.hov7670.hov772x.hov9650.hrj54n1cb0c.hs5c73m3.hs5k4ecgx.hs5k6aa.hsaa6588.hsaa7115.hsaa7127.hsmiapp.hsr030pc30.htc358743.htda1997x.hths7303.htvaudio.htvp514x.htvp7002.htw9910.huda1342.hupd64031a.hupd64083.hwm8775.himx.hmedia-device.hmedia-devnode.hmedia-entity.hrc-core.hrc-map.hrcar-fcp.hsoc_camera.htpgv4l2-tpg.htuner-types.htuner.htveeprom.hv4l2-async.hv4l2-clk.hv4l2-common.hv4l2-ctrls.hv4l2-dev.hv4l2-device.hv4l2-dv-timings.hv4l2-event.hv4l2-fh.hv4l2-flash-led-class.hv4l2-fwnode.hv4l2-image-sizes.hv4l2-ioctl.hv4l2-mc.hv4l2-mediabus.hv4l2-mem2mem.hv4l2-rect.hv4l2-subdev.hvideobuf-core.hvideobuf-dma-contig.hvideobuf-dma-sg.hvideobuf-vmalloc.hvideobuf2-core.hvideobuf2-dma-contig.hvideobuf2-dma-sg.hvideobuf2-dvb.hvideobuf2-memops.hvideobuf2-v4l2.hvideobuf2-vmalloc.hvsp1.hmemoryjedec_ddr.hmiscaltera.hcharlcd.hcxl-base.hcxl.hcxllib.hocxl-config.hocxl.hnet6lowpan.h9p9p.hclient.htransport.hSpace.hact_api.haddrconf.haf_ieee802154.haf_rxrpc.haf_unix.haf_vsock.hah.harp.hatmclip.hax25.hax88796.hbareudp.hbluetoothbluetooth.hhci.hhci_core.hhci_mon.hhci_sock.hl2cap.hmgmt.hrfcomm.hsco.hbond_3ad.hbond_alb.hbond_options.hbonding.hbpf_sk_storage.hbusy_poll.hcaifcaif_dev.hcaif_device.hcaif_hsi.hcaif_layer.hcaif_spi.hcfcnfg.hcfctrl.hcffrml.hcfmuxl.hcfpkt.hcfserl.hcfsrvl.hcalipso.hcfg80211-wext.hcfg80211.hcfg802154.hchecksum.hcipso_ipv4.hcls_cgroup.hcodel.hcodel_impl.hcodel_qdisc.hcompat.hdatalink.hdcbevent.hdcbnl.hdevlink.hdn.hdn_dev.hdn_fib.hdn_neigh.hdn_nsp.hdn_route.hdrop_monitor.hdropreason.hdsa.hdsfield.hdst.hdst_cache.hdst_metadata.hdst_ops.herspan.hesp.hespintcp.hethoc.hfailover.hfib_notifier.hfib_rules.hfirewire.hflow.hflow_dissector.hflow_offload.hfou.hfq.hfq_impl.hgarp.hgen_stats.hgenetlink.hgeneve.hgre.hgro_cells.hgtp.hgue.hhwbm.hicmp.hieee80211_radiotap.hieee802154_netdev.hif_inet6.hife.hila.hinet6_connection_sock.hinet6_hashtables.hinet_common.hinet_connection_sock.hinet_ecn.hinet_frag.hinet_hashtables.hinet_sock.hinet_timewait_sock.hinetpeer.hip.hip6_checksum.hip6_fib.hip6_route.hip6_tunnel.hip_fib.hip_tunnels.hip_vs.hipcomp.hipconfig.hipv6.hipv6_frag.hipv6_stubs.hipx.hiucvaf_iucv.hiucv.hiw_handler.hkcm.hl3mdev.hlag.hlapb.hlib80211.hllc.hllc_c_ac.hllc_c_ev.hllc_c_st.hllc_conn.hllc_if.hllc_pdu.hllc_s_ac.hllc_s_ev.hllc_s_st.hllc_sap.hlwtunnel.hmac80211.hmac802154.hmanagdma.hhw_channel.hmana.hmana_auxiliary.hshm_channel.hmip6.hmld.hmpls.hmpls_iptunnel.hmptcp.hmrp.hncsi.hndisc.hneighbour.hnet_failover.hnet_namespace.hnet_ratelimit.hnetevent.hnetfilterbr_netfilter.hipv4nf_conntrack_ipv4.hnf_defrag_ipv4.hnf_dup_ipv4.hnf_nat_masquerade.hnf_reject.hipv6nf_conntrack_icmpv6.hnf_conntrack_ipv6.hnf_defrag_ipv6.hnf_dup_ipv6.hnf_nat_masquerade.hnf_reject.hnf_conntrack.hnf_conntrack_acct.hnf_conntrack_core.hnf_conntrack_count.hnf_conntrack_ecache.hnf_conntrack_expect.hnf_conntrack_extend.hnf_conntrack_helper.hnf_conntrack_l4proto.hnf_conntrack_labels.hnf_conntrack_seqadj.hnf_conntrack_synproxy.hnf_conntrack_timeout.hnf_conntrack_timestamp.hnf_conntrack_tuple.hnf_conntrack_zones.hnf_dup_netdev.hnf_flow_table.hnf_log.hnf_nat.hnf_nat_helper.hnf_nat_redirect.hnf_queue.hnf_reject.hnf_socket.hnf_tables.hnf_tables_core.hnf_tables_ipv4.hnf_tables_ipv6.hnf_tables_offload.hnf_tproxy.hnfnetlink_log.hnft_fib.hnft_reject.hxt_rateest.hnetlabel.hnetlink.hnetnsbpf.hcan.hconntrack.hcore.hdccp.hgeneric.hhash.hieee802154_6lowpan.hipv4.hipv6.hmib.hmpls.hnetfilter.hnftables.hpacket.hsctp.hsmc.hunix.hx_tables.hxdp.hxfrm.hnetprio_cgroup.hnetrom.hnexthop.hnfcdigital.hhci.hllc.hnci.hnci_core.hnfc.hnl802154.hnsh.hp8022.hpage_pool.hphonetgprs.hpep.hphonet.hpn_dev.hpie.hping.hpkt_cls.hpkt_sched.hpptp.hprotocol.hpsample.hpsnap.hraw.hrawv6.hred.hregulatory.hrequest_sock.hrose.hroute.hrsi_91x.hrtnetlink.hsch_generic.hscm.hsctpauth.hchecksum.hcommand.hconstants.hsctp.hsm.hstream_interleave.hstream_sched.hstructs.htsnmap.hulpevent.hulpqueue.hsecure_seq.hseg6.hseg6_hmac.hseg6_local.hslhc_vj.hsmc.hsnmp.hsock.hsock_reuseport.hstp.hstrparser.hswitchdev.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_police.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_wrapper.htcp.htcp_states.htimewait_sock.htipc.htls.htls_toe.htransp_v6.htso.htun_proto.hudp.hudp_tunnel.hudplite.hvsock_addr.hvxlan.hwext.hwimax.hx25.hx25device.hxdp.hxdp_priv.hxdp_sock.hxdp_sock_drv.hxfrm.hxsk_buff_pool.hpcmciaciscode.hcisreg.hcistpl.hdevice_id.hds.hss.hrasras_event.hrdmaib.hib_addr.hib_cache.hib_cm.hib_hdrs.hib_mad.hib_marshall.hib_pack.hib_pma.hib_sa.hib_smi.hib_sysfs.hib_umem.hib_umem_odp.hib_verbs.hiba.hibta_vol1_c12.hiw_cm.hiw_portmap.hlag.hmr_pool.hopa_addr.hopa_port_info.hopa_smi.hopa_vnic.hrdma_cm.hrdma_cm_ib.hrdma_counter.hrdma_netlink.hrdma_vt.hrdmavt_cq.hrdmavt_mr.hrdmavt_qp.hrestrack.hrw.hsignature.htid_rdma_defs.huverbs_ioctl.huverbs_named_ioctl.huverbs_std_types.huverbs_types.hscsifcfc_encaps.hfc_fc2.hfc_fcoe.hfc_fcp.hfc_fip.hfc_ms.hfc_frame.hfcoe_sysfs.hiscsi_if.hiscsi_proto.hiser.hlibfc.hlibfcoe.hlibiscsi.hlibiscsi_tcp.hlibsas.hosd_attributes.hosd_protocol.hosd_sec.hosd_sense.hosd_types.hsas.hsas_ata.hscsi.hscsi_bsg_iscsi.hscsi_cmnd.hscsi_common.hscsi_dbg.hscsi_device.hscsi_devinfo.hscsi_dh.hscsi_driver.hscsi_eh.hscsi_host.hscsi_ioctl.hscsi_proto.hscsi_request.hscsi_tcq.hscsi_transport.hscsi_transport_fc.hscsi_transport_iscsi.hscsi_transport_sas.hscsi_transport_spi.hscsi_transport_srp.hscsicam.hsg.hsrp.hviosrp.hsocarcaux.hmcip.htimers.hat91at91sam9_ddrsdr.hat91sam9_sdramc.hatmel-secumod.hatmel-sfr.hbcm2835raspberrypi-firmware.hbrcmstbcommon.hfslbman.hqeimmap_qe.hqe.hqe_ic.hqe_tdm.hucc.hucc_fast.hucc_slow.hqman.himxcpuidle.hrevision.htimer.hmediateksmi.hnpscommon.hmtm.hqcomcmd-db.hrockchiprockchip_sip.hsa1100pwer.htegraahb.hbpmp-abi.hbpmp.hcommon.hcpuidle.hemc.hflowctrl.hfuse.hivc.hmc.hpm.hpmc.hsoundac97codec.hcompat.hcontroller.hregs.hac97_codec.haci.hacp63_chip_offset_byte.had1816a.had1843.hadau1373.haess.hak4113.hak4114.hak4117.hak4531_codec.hak4641.hak4xxx-adda.halc5623.hasequencer.hasound.hasoundef.hcompress_driver.hcontrol.hcore.hcs35l33.hcs35l34.hcs35l35.hcs35l36.hcs35l41.hcs4231-regs.hcs4271.hcs42l42.hcs42l52.hcs42l56.hcs42l73.hcs8403.hcs8427.hda7213.hda7218.hda7219-aad.hda7219.hda9055.hdesignware_i2s.hdmaengine_pcm.hemu10k1.hemu10k1_synth.hemu8000.hemu8000_reg.hemux_legacy.hemux_synth.hes1688.hgraph_card.hgus.hhda-mlink.hhda_chmap.hhda_codec.hhda_component.hhda_hwdep.hhda_i915.hhda_register.hhda_regmap.hhda_verbs.hhdaudio.hhdaudio_ext.hhdmi-codec.hhwdep.hi2c.hinfo.hinitval.hintel-dsp-config.hintel-nhlt.hjack.hl3.hmax9768.hmax98088.hmax98090.hmax98095.hmemalloc.hminors.hmixer_oss.hmpu401.homap-hdmi-audio.hopl3.hopl4.hpcm-indirect.hpcm.hpcm_drm_eld.hpcm_iec958.hpcm_oss.hpcm_params.hpt2258.hpxa2xx-lib.hrawmidi.hrt1015.hrt286.hrt298.hrt5514.hrt5659.hrt5660.hrt5663.hrt5665.hrt5668.hrt5682.hrt5682s.hs3c24xx_uda134x.hsb.hsb16_csp.hsdw.hseq_device.hseq_kernel.hseq_midi_emul.hseq_midi_event.hseq_oss.hseq_oss_legacy.hseq_virmidi.hsh_dac_audio.hsh_fsi.hsimple_card.hsimple_card_utils.hsnd_wavefront.hsoc-acpi-intel-match.hsoc-acpi.hsoc-card.hsoc-component.hsoc-dai.hsoc-dapm.hsoc-dpcm.hsoc-jack.hsoc-link.hsoc-topology.hsoc.hsofsof.hchannel_map.hcontrol.hdai-amd.hdai-imx.hdai-intel.hdai-mediatek.hdai.hdebug.hext_manifest.hext_manifest4.hheader.hinfo.hipc4header.hpm.hstream.htopology.htrace.hxtensa.hsoundfont.hspear_dma.hspear_spdif.hsta32x.hsta350.htas2552-plat.htas5086.htea6330t.htimer.htlv.htlv320aic32x4.htlv320dac33-plat.htpa6130a2-plat.huda134x.huda1380.hutil_mem.hvx_core.hwavefront.hwm0010.hwm1250-ev1.hwm2000.hwm2200.hwm5100.hwm8903.hwm8904.hwm8955.hwm8960.hwm8962.hwm8993.hwm8996.hwm9081.hwm9090.hwss.htargetiscsiiscsi_target_core.hiscsi_target_stat.hiscsi_transport.htarget_core_backend.htarget_core_base.htarget_core_fabric.htracebpf_probe.hdefine_trace.hevents9p.hafs.halarmtimer.hasoc.havc.hbcache.hblock.hbpf_test_run.hbridge.hbtrfs.hcachefiles.hcgroup.hclk.hcma.hcompaction.hcontext_tracking.hcpuhp.hdamon.hdevlink.hdma_fence.hext4.hf2fs.hfib.hfib6.hfilelock.hfilemap.hfs.hfs_dax.hfscache.hfsi.hfsi_master_gpio.hgpio.hhost1x.hhuge_memory.hi2c.hib_mad.hib_umad.hinitcall.hintel-sst.hintel_ifs.hintel_iommu.hintel_ish.hio_uring.hiocost.hiommu.hipi.hirq.hirq_matrix.hiscsi.hjbd2.hkmem.hkvm.hkyber.hlibata.hlock.hmce.hmdio.hmigrate.hmlxsw.hmmc.hmmflags.hmodule.hmptcp.hnapi.hneigh.hnet.hnet_probe_common.hnetlink.hnfs.hnilfs2.hnmi.hobjagg.hoom.hosnoise.hpage_isolation.hpage_pool.hpage_ref.hpagemap.hpercpu.hpower.hpower_cpu_migrate.hpreemptirq.hprintk.hpwc.hqdisc.hqla.hqrtr.hrandom.hrcu.hrdma.hrdma_core.hregulator.hrpcgss.hrpcrdma.hrpm.hrseq.hrtc.hrxrpc.hsched.hscsi.hsctp.hsignal.hsiox.hskb.hsmbus.hsock.hsof.hsof_intel.hspi.hspmi.hsunrpc.hsunrpc_base.hsunvnet.hswiotlb.hsyscalls.htarget.htask.htcp.hthermal.hthermal_power_allocator.hthp.htimer.htlb.hudp.hufs.hv4l2.hvb2.hvmscan.hvsock_virtio_transport_common.hwbt.hworkqueue.hwriteback.hxdp.hxen.hperf.hsyscall.htrace_events.huapiasm-genericKbuild.asmauxvec.hbitsperlong.hbpf_perf_event.herrno-base.herrno.hfcntl.hhugetlb_encode.hint-l64.hint-ll64.hioctl.hioctls.hipcbuf.hkvm_para.hmman-common.hmman.hmsgbuf.hparam.hpoll.hposix_types.hresource.hsembuf.hsetup.hshmbuf.hshmparam.hsiginfo.hsignal-defs.hsignal.hsocket.hsockios.hstat.hstatfs.hswab.htermbits.htermios.htypes.hucontext.hunistd.hdrmamdgpu_drm.harmada_drm.hdrm.hdrm_fourcc.hdrm_mode.hdrm_sarea.hetnaviv_drm.hexynos_drm.hhabanalabs_accel.hi915_drm.hivpu_accel.hlima_drm.hmsm_drm.hnouveau_drm.homap_drm.hpanfrost_drm.hqxl_drm.hradeon_drm.htegra_drm.hv3d_drm.hvc4_drm.hvgem_drm.hvirtgpu_drm.hvmwgfx_drm.hlinuxKbuilda.out.hacct.hadb.hadfs_fs.haffs_hardblocks.hagpgart.haio_abi.ham437x-vpfe.handroidbinder.hapm_bios.harcfb.harm_sdei.haspeed-lpc-ctrl.hatalk.hatm.hatm_eni.hatm_he.hatm_idt77105.hatm_nicstar.hatm_tcp.hatm_zatm.hatmapi.hatmarp.hatmbr2684.hatmclip.hatmdev.hatmioc.hatmlec.hatmmpc.hatmppp.hatmsap.hatmsvc.haudit.hauto_dev-ioctl.hauto_fs.hauto_fs4.hauxvec.hax25.hb1lli.hbatadv_packet.hbatman_adv.hbaycom.hbcache.hbcm933xx_hcs.hbfs_fs.hbinfmts.hblkpg.hblktrace_api.hblkzoned.hbpf.hbpf_common.hbpf_perf_event.hbpfilter.hbpqether.hbsg.hbt-bmc.hbtf.hbtrfs.hbtrfs_tree.hbyteorderbig_endian.hlittle_endian.hcaifcaif_socket.hif_caif.hcancan.hbcm.herror.hgw.hnetlink.hraw.hvxcan.hcapability.hcapi.hcciss_defs.hcciss_ioctl.hcdrom.hcec-funcs.hcec.hcfm_bridge.hcgroupstats.hchio.hcifscifs_mount.hcifs_netlink.hclose_range.hcm4000_cs.hcn_proc.hcoda.hcoda_psdev.hcoff.hconnector.hconst.hcoresight-stm.hcramfs_fs.hcryptouser.hcuda.hcyclades.hcycx_cfm.hdcbnl.hdccp.hdevlink.hdlm.hdlm_device.hdlm_netlink.hdlm_plock.hdlmconstants.hdm-ioctl.hdm-log-userspace.hdma-buf.hdn.hdqblk_xfs.hdvbaudio.hca.hdmx.hfrontend.hnet.hosd.hversion.hvideo.hedd.hefs_fs_sb.helf-em.helf-fdpic.helf.helfcore.herrno.herrqueue.herspan.hethtool.hethtool_netlink.heventpoll.hfadvise.hfalloc.hfanotify.hfb.hfcntl.hfd.hfdreg.hfib_rules.hfiemap.hfilter.hfirewire-cdev.hfirewire-constants.hflat.hfou.hfpga-dfl.hfs.hfsl_hypervisor.hfsmap.hfuse.hfutex.hgameport.hgen_stats.hgenetlink.hgenwqegenwqe_card.hgfs2_ondisk.hgigaset_dev.hgpio.hgsmmux.hgtp.hhash_info.hhdlchdlc.hioctl.hhdlcdrv.hhdreg.hhid.hhiddev.hhidraw.hhpet.hhsics-protocol.hhsi_char.hhsr_netlink.hhw_breakpoint.hhyperv.hhysdn_if.hi2c-dev.hi2c.hi2o-dev.hi8k.hicmp.hicmpv6.hidxd.hif.hif_addr.hif_addrlabel.hif_alg.hif_arcnet.hif_arp.hif_bonding.hif_bridge.hif_cablemodem.hif_eql.hif_ether.hif_fc.hif_fddi.hif_frad.hif_hippi.hif_infiniband.hif_link.hif_ltalk.hif_macsec.hif_packet.hif_phonet.hif_plip.hif_ppp.hif_pppol2tp.hif_pppox.hif_slip.hif_team.hif_tun.hif_tunnel.hif_vlan.hif_x25.hif_xdp.hife.higmp.hiioevents.htypes.hila.hin.hin6.hin_route.hinet_diag.hinotify.hinput-event-codes.hinput.hio_uring.hioctl.hiommu.hip.hip6_tunnel.hip_vs.hipc.hipmi.hipmi_bmc.hipmi_msgdefs.hipmi_ssif_bmc.hipsec.hipv6.hipv6_route.hipx.hirqnr.hisdnisdn.hcapicmd.hisdn_divertif.hisdn_ppp.hisdnif.hiso_fs.hisst_if.hivtv.hivtvfb.hjffs2.hjoystick.hkcm.hkcmp.hkcov.hkd.hkdev_t.hkernel-page-flags.hkernel.hkernelcapi.hkexec.hkeyboard.hkeyctl.hkfd_ioctl.hkfd_sysfs.hkvm.hkvm_para.hl2tp.hlibc-compat.hlightnvm.hlimits.hlirc.hllc.hloop.hlp.hlwtunnel.hmagic.hmajor.hmap_to_7segment.hmatroxfb.hmax2175.hmdio.hmedia-bus-format.hmedia.hmei.hmembarrier.hmemfd.hmempolicy.hmeye.hmic_common.hmic_ioctl.hmii.hminix_fs.hmman.hmmcioctl.hmmtimer.hmodule.hmount.hmpls.hmpls_iptunnel.hmptcp.hmqueue.hmroute.hmroute6.hmrp_bridge.hmsdos_fs.hmsg.hmtio.hn_r3964.hnbd-netlink.hnbd.hncsi.hndctl.hneighbour.hnet.hnet_dropmon.hnet_namespace.hnet_tstamp.hnetconf.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_hash.hip_set_list.hnf_conntrack_common.hnf_conntrack_ftp.hnf_conntrack_sctp.hnf_conntrack_tcp.hnf_conntrack_tuple_common.hnf_log.hnf_nat.hnf_osf.hnf_tables.hnf_tables_compat.hnfnetlink.hnfnetlink_acct.hnfnetlink_compat.hnfnetlink_conntrack.hnfnetlink_cthelper.hnfnetlink_cttimeout.hnfnetlink_log.hnfnetlink_queue.hx_tables.hxt_AUDIT.hxt_CHECKSUM.hxt_CLASSIFY.hxt_CONNMARK.hxt_CONNSECMARK.hxt_CT.hxt_DSCP.hxt_HMARK.hxt_IDLETIMER.hxt_LED.hxt_LOG.hxt_MARK.hxt_NFLOG.hxt_NFQUEUE.hxt_RATEEST.hxt_SECMARK.hxt_SYNPROXY.hxt_TCPMSS.hxt_TCPOPTSTRIP.hxt_TEE.hxt_TPROXY.hxt_addrtype.hxt_bpf.hxt_cgroup.hxt_cluster.hxt_comment.hxt_connbytes.hxt_connlabel.hxt_connlimit.hxt_connmark.hxt_conntrack.hxt_cpu.hxt_dccp.hxt_devgroup.hxt_dscp.hxt_ecn.hxt_esp.hxt_hashlimit.hxt_helper.hxt_ipcomp.hxt_iprange.hxt_ipvs.hxt_l2tp.hxt_length.hxt_limit.hxt_mac.hxt_mark.hxt_multiport.hxt_nfacct.hxt_osf.hxt_owner.hxt_physdev.hxt_pkttype.hxt_policy.hxt_quota.hxt_rateest.hxt_realm.hxt_recent.hxt_rpfilter.hxt_sctp.hxt_set.hxt_socket.hxt_state.hxt_statistic.hxt_string.hxt_tcpmss.hxt_tcpudp.hxt_time.hxt_u32.hnetfilter_arpnetfilter_arp.harp_tables.harpt_mangle.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebt_among.hebt_arp.hebt_arpreply.hebt_ip.hebt_ip6.hebt_limit.hebt_log.hebt_mark_m.hebt_mark_t.hebt_nat.hebt_nflog.hebt_pkttype.hebt_redirect.hebt_stp.hebt_vlan.hebtables.hnetfilter_decnet.hnetfilter_ipv4netfilter_ipv4.hip_tables.hipt_CLUSTERIP.hipt_ECN.hipt_LOG.hipt_REJECT.hipt_TTL.hipt_ah.hipt_ecn.hipt_ttl.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hip6t_HL.hip6t_LOG.hip6t_NPT.hip6t_REJECT.hip6t_ah.hip6t_frag.hip6t_hl.hip6t_ipv6header.hip6t_mh.hip6t_opts.hip6t_rt.hip6t_srh.hnetlink.hnetlink_diag.hnetrom.hnexthop.hnfc.hnfs.hnfs2.hnfs3.hnfs4.hnfs4_mount.hnfs_fs.hnfs_idmap.hnfs_mount.hnfsacl.hnfsdcld.hdebug.hexport.hstats.hnilfs2_api.hnilfs2_ondisk.hnitro_enclaves.hnl80211.hnsfs.hnubus.hnvme_ioctl.hnvram.homap3isp.homapfb.hoom.hopenat2.hopenvswitch.hpacket_diag.hparam.hparport.hpatchkey.hpci.hpci_regs.hpcitest.hperf_event.hpersonality.hpfkeyv2.hpfrut.hpg.hphantom.hphonet.hpkt_cls.hpkt_sched.hpktcdvd.hpmu.hpoll.hposix_acl.hposix_acl_xattr.hposix_types.hppdev.hppp-comp.hppp-ioctl.hppp_defs.hpps.hpr.hprctl.hpsample.hpsci.hpsp-sev.hptp_clock.hptrace.hqemu_fw_cfg.hqnx4_fs.hqnxtypes.hqrtr.hquota.hradeonfb.hraidmd_p.hmd_u.hrandom.hraw.hrds.hreboot.hreiserfs_fs.hreiserfs_xattr.hresource.hrfkill.hrio_cm_cdev.hrio_mport_cdev.hromfs_fs.hrose.hroute.hrpmsg.hrseq.hrtc.hrtnetlink.hrxrpc.hscc.hschedsched.htypes.hscif_ioctl.hscreen_info.hsctp.hsdla.hseccomp.hsecurebits.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselinux_netlink.hsem.hserial.hserial_core.hserial_reg.hserio.hsev-guest.hshm.hsignal.hsignalfd.hsmc.hsmc_diag.hsmiapp.hsnmp.hsock_diag.hsocket.hsockios.hsonet.hsonypi.hsound.hsoundcard.hspispidev.hstat.hstddef.hstm.hstring.hsunrpcdebug.hsuspend_ioctls.hswab.hswitchtec_ioctl.hsync_file.hsynclink.hsysctl.hsysinfo.htarget_core_user.htaskstats.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_ematchtc_em_cmp.htc_em_ipt.htc_em_meta.htc_em_nbyte.htc_em_text.htcp.htcp_metrics.htdx-guest.htee.htermios.hthermal.htime.htime_types.htimerfd.htimes.htimex.htiocl.htipc.htipc_config.htipc_netlink.htipc_sockets_diag.htls.htoshiba.htty.htty_flags.htypes.hudf_fs_i.hudp.huhid.huinput.huio.huleds.hultrasound.hun.hunistd.hunix_diag.husbaudio.hcdc-wdm.hcdc.hch11.hch9.hcharger.hfunctionfs.hg_printer.hg_uvc.hgadgetfs.hmidi.htmc.hvideo.husbdevice_fs.husbip.huserfaultfd.huserio.hutime.hutsname.huuid.huvcvideo.hv4l2-common.hv4l2-controls.hv4l2-dv-timings.hv4l2-mediabus.hv4l2-subdev.hvbox_err.hvbox_vmmdev_types.hvboxguest.hvdpa.hveth.hvfio.hvfio_ccw.hvfio_zdev.hvhost.hvhost_types.hvideodev2.hvirtio_9p.hvirtio_balloon.hvirtio_blk.hvirtio_bt.hvirtio_config.hvirtio_console.hvirtio_crypto.hvirtio_fs.hvirtio_gpu.hvirtio_ids.hvirtio_input.hvirtio_iommu.hvirtio_mem.hvirtio_mmio.hvirtio_net.hvirtio_pci.hvirtio_ring.hvirtio_rng.hvirtio_scsi.hvirtio_snd.hvirtio_types.hvirtio_vsock.hvm_sockets.hvm_sockets_diag.hvmcore.hvsockmon.hvt.hvtpm_proxy.hwait.hwanrouter.hwatchdog.hwimaxwimax.hi2400m.hwireless.hwmi.hx25.hxattr.hxdp_diag.hxfrm.hxilinx-v4l2-controls.hzorro.hzorro_ids.hmisccxl.hocxl.hpvpanic.hmtdinftl-user.hmtd-abi.hmtd-user.hnftl-user.hubi-user.hrdmabnxt_re-abi.hcxgb4-abi.hefa-abi.hhfihfi1_ioctl.hhfi1_user.hhns-abi.hib_user_ioctl_cmds.hib_user_ioctl_verbs.hib_user_mad.hib_user_sa.hib_user_verbs.hirdma-abi.hmana-abi.hmlx4-abi.hmlx5-abi.hmlx5_user_ioctl_cmds.hmlx5_user_ioctl_verbs.hmthca-abi.hocrdma-abi.hqedr-abi.hrdma_netlink.hrdma_user_cm.hrdma_user_ioctl.hrdma_user_ioctl_cmds.hrdma_user_rxe.hrvt-abi.hsiw-abi.hvmw_pvrdma-abi.hscsicxlflash_ioctl.hfcfc_els.hfc_fs.hfc_gs.hfc_ns.hscsi_bsg_fc.hscsi_bsg_mpi3mr.hscsi_netlink.hscsi_netlink_fc.hsoundasequencer.hasoc.hasound.hasound_fm.hcompress_offload.hcompress_params.hemu10k1.hfirewire.hhdsp.hhdspm.hintelavstokens.hsb16_csp.hsfnt_info.hskl-tplg-interface.hsnd_sst_tokens.hsofabi.hfw.hheader.htokens.htlv.husb_stream.hvideoedid.hsisfb.huvesafb.hxenevtchn.hgntalloc.hgntdev.hprivcmd.hvdsobits.hclocksource.hconst.hdatapage.hhelpers.hjiffies.hktime.hlimits.hmath64.hprocessor.htime.htime32.htime64.hvsyscall.hvideoatmel_lcdc.haty128.hbroadsheetfb.hcirrus.hcvisionppc.hda8xx-fb.hdisplay_timing.hedid.hgbe.hhecubafb.hili9320.himx-ipu-image-convert.himx-ipu-v3.hkyro.hmach64.hmaxinefb.hmbxfb.hmetronomefb.hmipi_display.hmmp_disp.hneomagic.hnewport.hnomodeset.hof_display_timing.hof_videomode.homap-panel-data.homapfb_dss.homapvrfb.hpermedia2.hplatform_lcd.hpm3fb.hpmag-ba-fb.hpmagb-b-fb.hpxa168fb.hradeon.hs1d13xxxfb.hsa1100fb.hsamsung_fimd.hsh_mobile_lcdc.hsisfb.hsstfb.htdfx.htgafb.htrident.hudlfb.huvesafb.hvga.hvideomode.hw100fb.hxenacpi.harmhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hballoon.hevents.hfeatures.hgrant_table.hhvc-console.hhvm.hinterfacecallback.helfnote.hevent_channel.hfeatures.hgrant_table.hhvmdm_op.hhvm_op.hhvm_vcpu.hparams.hstart_info.hio9pfs.hblkif.hconsole.hdisplif.hfbif.hkbdif.hnetif.hpciif.hprotocols.hpvcalls.hring.hsndif.htpmif.hvscsiif.hxenbus.hxs_wire.hmemory.hnmi.hphysdev.hplatform.hsched.hvcpu.hversion.hxen-mca.hxen.hxenpmu.hpage.hplatform_pci.hswiotlb-xen.htmem.hxen-front-pgdir-shbuf.hxen-ops.hxen.hxenbus.hxenbus_dev.hinitKconfigMakefileipcMakefilekernelKconfig.freezerKconfig.hzKconfig.locksKconfig.preemptMakefilebpfKconfigMakefilepreloadKconfigMakefileiteratorsMakefilecgroupMakefiledebugMakefilekdbMakefiledmaKconfigMakefileeventsMakefilegcovKconfigMakefileirqKconfigMakefilekcsanMakefilelivepatchKconfigMakefilelockingMakefilepowerKconfigMakefileprintkMakefilercuKconfigKconfig.debugMakefileschedMakefiletimeKconfigMakefiletraceKconfigMakefilelib842MakefileKconfigKconfig.debugKconfig.kasanKconfig.kcsanKconfig.kgdbKconfig.ubsanMakefilecryptoMakefiledimMakefilefontsKconfigMakefilekunitKconfigMakefilelivepatchMakefilelz4MakefilelzoMakefilemathKconfigMakefilempiMakefilepldmfwMakefileraid6MakefiletestMakefilereed_solomonMakefilevdsoKconfigMakefilexzKconfigMakefilezlib_deflateMakefilezlib_dfltccMakefilezlib_inflateMakefilezstdMakefilemmKconfigKconfig.debugMakefiledamonKconfigMakefilekasanMakefilenet6lowpanKconfigMakefile802KconfigMakefile8021qKconfigMakefile9pKconfigMakefileKconfigMakefileappletalkMakefileatmKconfigMakefileax25KconfigMakefilebatman-advKconfigMakefilebluetoothKconfigMakefilebnepKconfigMakefilecmtpKconfigMakefilehidpKconfigMakefilerfcommKconfigMakefilebpfMakefilebpfilterKconfigMakefilebridgeKconfigMakefilenetfilterKconfigMakefilecaifKconfigMakefilecanKconfigMakefilecephKconfigMakefilecoreMakefiledcbKconfigMakefiledccpKconfigMakefileccidsKconfigdecnetKconfigMakefilenetfilterKconfigMakefiledns_resolverKconfigMakefiledsaKconfigMakefileethernetMakefileethtoolMakefilehsrKconfigMakefileieee8021546lowpanKconfigMakefileKconfigMakefileifeKconfigMakefileipv4KconfigMakefilebpfilterMakefilenetfilterKconfigMakefileipv6KconfigMakefileilaMakefilenetfilterKconfigMakefileiucvKconfigMakefilekcmKconfigMakefilekeyMakefilel2tpKconfigMakefilel3mdevKconfigMakefilelapbKconfigMakefilellcKconfigMakefilemac80211KconfigMakefilemac802154KconfigMakefilemplsKconfigMakefilemptcpKconfigMakefilencsiKconfigMakefilenetfilterKconfigMakefileipsetKconfigMakefileipvsKconfigMakefilenetlabelKconfigMakefilenetlinkKconfigMakefilenetromMakefilenfcKconfigMakefilehciKconfigMakefilenciKconfigMakefilenshKconfigMakefileopenvswitchKconfigMakefilepacketKconfigMakefilephonetKconfigMakefilepsampleKconfigMakefileqrtrKconfigMakefilerdsKconfigMakefilerfkillKconfigMakefileroseMakefilerxrpcKconfigMakefileschedKconfigMakefilesctpKconfigMakefilesmcKconfigMakefilestrparserKconfigMakefilesunrpcKconfigMakefileauth_gssMakefilexprtrdmaMakefileswitchdevKconfigMakefiletipcKconfigMakefiletlsKconfigMakefileunixKconfigMakefilevmw_vsockKconfigMakefilewimaxKconfigMakefilewirelessKconfigMakefilex25KconfigMakefilexdpKconfigMakefilexfrmKconfigMakefilesamplesKconfigMakefileauxdisplayMakefilebpfMakefileMakefile.targetconfigfsMakefileconnectorMakefilehidrawMakefilehw_breakpointMakefilekdbMakefilekfifoMakefilekobjectMakefilekprobesMakefilelivepatchMakefilemeiMakefilemicmpssdMakefilenitro_enclavesMakefileqmiMakefilerpmsgMakefileseccompMakefiletimersMakefiletrace_eventsMakefiletrace_printkMakefileuhidMakefilev4lMakefilevfio-mdevMakefilevfsMakefilewatchdogMakefilescriptsKbuild.includeKconfig.includeLindentMakefileMakefile.asm-genericMakefile.buildMakefile.cleanMakefile.dtbinstMakefile.extrawarnMakefile.gcc-pluginsMakefile.headersinstMakefile.hostMakefile.kasanMakefile.kcovMakefile.kcsanMakefile.libMakefile.modbuiltinMakefile.modinstMakefile.modpostMakefile.modsignMakefile.ubsanadjust_autoksyms.shasn1_compilerasn1_compiler.cbasicMakefilefixdepfixdep.cmodules.orderbin2cbin2c.cbloat-o-meterbootgraph.plbpf_doc.pycc-can-link.shcheck_00index.shcheck_extable.shcheckincludes.plcheckkconfigsymbols.pycheckpatch.plcheckstack.plchecksyscalls.shcheckversion.plclang-toolsgen_compile_commands.pyrun-clang-tools.pyclang-version.shcleanfilecleanpatchcoccicheckcoccinelleapiallocalloc_cast.coccipool_zalloc-simple.coccizalloc-simple.coccicheck_bq27xxx_data.coccid_find_alias.coccidebugfsdebugfs_simple_attr.coccidrm-get-put.coccierr_cast.coccikstrdup.coccimemdup.coccimemdup_user.cocciplatform_no_drv_owner.coccipm_runtime.cocciptr_ret.cocciresource_size.coccisimple_open.coccivma_pages.coccifreeclk_put.coccidevm_free.cocciifnullfree.cocciiounmap.coccikfree.coccikfreeaddr.coccipci_free_consistent.cocciiteratorsdevice_node_continue.coccifen.cocciitnull.coccilist_entry_update.cocciuse_after_iter.coccilockscall_kern.coccidouble_lock.cocciflags.coccimini_lock.coccimiscarray_size.coccibadty.cocciboolconv.cocciboolinit.cocciboolreturn.coccibugon.coccicond_no_effect.coccicstptr.coccidoubleinit.cocciifaddr.cocciifcol.cocciirqf_oneshot.coccinewline_in_nl_msg.coccinoderef.cocciof_table.cocciorplus.coccireturnvar.coccisemicolon.cocciwarn.coccinullbadzero.coccideref_null.coccieno.coccikmerr.coccitestsdoublebitand.coccidoubletest.cocciodd_ptr_err.cocciunsigned_lesser_than_zero.cocciconfigconmakehashconmakehash.cconst_structs.checkpatchdecode_stacktrace.shdecodecodedepmod.shdiffconfigdocumentation-file-ref-checkdtcMakefileMakefile.dtcchecks.cdata.cdt_to_configdtcdtc-lexer.ldtc-lexer.lex.cdtc-parser.tab.cdtc-parser.tab.hdtc-parser.ydtc.cdtc.hdtx_difffdtdump.cfdtget.cfdtput.cflattree.cfstree.cinclude-prefixesarcarmarm64c6xdt-bindingsh8300microblazemipsnios2openriscpowerpcshxtensalibfdtMakefile.libfdtfdt.cfdt.hfdt_addresses.cfdt_empty_tree.cfdt_overlay.cfdt_ro.cfdt_rw.cfdt_strerror.cfdt_sw.cfdt_wip.clibfdt.hlibfdt_env.hlibfdt_internal.hlivetree.cmodules.ordersrcpos.csrcpos.htreesource.cupdate-dtc-source.shutil.cutil.hversion_gen.hyamltree.cexport_report.plextract-certextract-cert.cextract-ikconfigextract-module-sig.plextract-sys-certs.plextract-vmlinuxextract_xc3028.plfaddr2linefile-size.shfind-unused-docs.shgcc-goto.shgcc-ldgcc-plugin.shgcc-pluginsMakefilecyc_complexity_plugin.cgcc-common.hgcc-generate-gimple-pass.hgcc-generate-ipa-pass.hgcc-generate-rtl-pass.hgcc-generate-simple_ipa-pass.hgen-random-seed.shlatent_entropy_plugin.crandomize_layout_plugin.csancov_plugin.cstructleak_plugin.cgcc-version.shgcc-x86_32-has-stack-protector.shgcc-x86_64-has-stack-protector.shgdbMakefilelinuxMakefile__init__.pyconstants.py.incpus.pydmesg.pylists.pymodules.pyproc.pysymbols.pytasks.pyutils.pyvmlinux-gdb.pygen_initramfs_list.shgenksymsMakefilegenksymsgenksyms.cgenksyms.hkeywords.clex.llex.lex.cmodules.orderparse.tab.cparse.tab.hparse.yget_dvb_firmwareget_maintainer.plgfp-translateheaderdep.plheaders.shheaders_check.plheaders_install.shinsert-sys-certinsert-sys-cert.ckallsymskallsyms.ckconfigMakefileconfconf.cconfdata.cexpr.cexpr.hgconf-cfg.shgconf.cgconf.gladeimages.ckconf_id.clist.hlkc.hlkc_proto.hlxdialogBIG.FAT.WARNINGchecklist.cdialog.hinputbox.cmenubox.ctextbox.cutil.cyesno.cmconf-cfg.shmconf.cmenu.cmerge_config.shnconf-cfg.shnconf.cnconf.gui.cnconf.hpreprocess.cqconf-cfg.shqconf.ccqconf.hstreamline_config.plsymbol.ctestsauto_submenuKconfig__init__.pyexpected_stdoutchoiceKconfig__init__.pyalldef_expected_configallmod_expected_configallno_expected_configallyes_expected_configoldask0_expected_stdoutoldask1_configoldask1_expected_stdoutchoice_value_with_m_depKconfig__init__.pyconfigexpected_configexpected_stdoutconftest.pyerr_recursive_depKconfig__init__.pyexpected_stderrerr_recursive_incKconfigKconfig.inc1Kconfig.inc2Kconfig.inc3__init__.pyexpected_stderrinter_choiceKconfig__init__.pydefconfigexpected_confignew_choice_with_depKconfig__init__.pyconfigexpected_stdoutno_write_if_dep_unmetKconfig__init__.pyconfigexpected_configpreprocessbuiltin_funcKconfig__init__.pyexpected_stderrexpected_stdoutcircular_expansionKconfig__init__.pyexpected_stderrescapeKconfig__init__.pyexpected_stderrvariableKconfig__init__.pyexpected_stderrpytest.inirand_nested_choiceKconfig__init__.pyexpected_stdout0expected_stdout1expected_stdout2util.czconf.lzconf.lex.czconf.tab.czconf.ykernel-docksymoopsREADMEld-version.shleaking_addresses.pllink-vmlinux.shmakelstmarkup_oops.plmkcompile_hmkmakefilemksysmapmkuboot.shmodMakefiledevicetable-offsets.cdevicetable-offsets.c.000i.ipa-clonesdevicetable-offsets.hdevicetable-offsets.selfconfig.hempty.cempty.c.000i.ipa-clonesfile2alias.cmk_elfconfigmk_elfconfig.cmodpostmodpost.cmodpost.hmodules.ordersumversion.cmodule-common.ldsmodules.ordernamespace.plobjdiffpackageMakefilebuilddebbuildtarmkdebianmkspecsnapcraft.templateparse-maintainers.plpatch-kernelpnmtologopnmtologo.cprofile2linkerlist.plprune-kernelrecordmcount.crecordmcount.hrecordmcount.plselinuxMakefileREADMEgenheadersMakefilegenheadersgenheaders.cmodules.orderinstall_policy.shmdpMakefiledbus_contextsmdpmdp.cmodules.ordermodules.ordersetlocalversionshow_deltasign-filesign-file.csortextablesortextable.csortextable.hspelling.txtsphinx-pre-installsplit-man.plstackdeltastackusagesubarch.includetags.shtest_fortify.shunifdefunifdef.cver_linuxxen-hypercalls.shxz_wrap.shsecurityKconfigKconfig.hardeningMakefileapparmorKconfigMakefilebpfMakefileintegrityKconfigMakefileevmKconfigMakefileimaKconfigMakefilekeysKconfigMakefileencrypted-keysMakefiletrusted-keysMakefileloadpinKconfigMakefileselinuxKconfigMakefileincludeclassmap.hinitial_sid_to_string.hsmackKconfigMakefiletomoyoKconfigMakefileyamaKconfigMakefilesoundKconfigMakefileac97KconfigMakefileaoaKconfigMakefilecodecsKconfigMakefilecoreMakefilefabricsKconfigMakefilesoundbusKconfigMakefilei2sbusMakefilearmKconfigMakefileatmelKconfigMakefilecoreKconfigMakefileossMakefileseqKconfigMakefileossMakefiledriversKconfigMakefilempu401Makefileopl3Makefileopl4MakefilepcspMakefilevxMakefilefirewireKconfigMakefilebebobMakefilediceMakefiledigi00xMakefilefirefaceMakefilefireworksMakefilemotuMakefileoxfwMakefiletascamMakefilehdaKconfigMakefileextMakefilei2cMakefileotherMakefileisaKconfigMakefilead1816aMakefilead1848Makefilecs423xMakefilees1688MakefilegalaxyMakefilegusMakefilemsndMakefileopti9xxMakefilesbMakefilewavefrontMakefilewssMakefilemipsKconfigMakefileossdmasoundKconfigMakefilepariscKconfigMakefilepciKconfigMakefileac97Makefileali5451MakefileasihpiMakefileau88x0Makefileaw2Makefileca0106Makefilecs46xxMakefilecs5535audioMakefilectxfiMakefileechoaudioMakefileemu10k1MakefilehdaKconfigMakefileice1712Makefilekorg1212MakefilelolaMakefilelx6464esMakefilemixartMakefilenm256MakefileoxygenMakefilepcxhrMakefileriptideMakefilerme9652MakefiletridentMakefilevx222MakefileymfpciMakefilepcmciaKconfigMakefilepdaudiocfMakefilevxMakefileppcKconfigMakefileshKconfigMakefilesocKconfigMakefileadiKconfigMakefileamdKconfigMakefileacpKconfigMakefilepsMakefileravenMakefilerenoirMakefilerplMakefilevangoghMakefileycMakefileatmelKconfigMakefileau1xKconfigMakefilebcmKconfigMakefilecirrusKconfigMakefilecodecsKconfigMakefiledwcKconfigMakefilefslKconfigMakefilegenericKconfigMakefilehisiliconKconfigMakefileimgKconfigMakefileintelKconfigMakefileatomMakefilesstMakefileavsMakefileboardsKconfigMakefileboardsKconfigMakefilecatptMakefilecommonMakefilekeembayMakefileskylakeMakefilejz4740KconfigMakefilekirkwoodKconfigMakefilemediatekKconfigMakefilecommonMakefilemt2701Makefilemt6797Makefilemt8173Makefilemt8183MakefilemesonKconfigMakefilemxsKconfigMakefilepxaKconfigMakefileqcomKconfigMakefileqdsp6MakefilerockchipKconfigMakefilesamsungKconfigMakefileshKconfigMakefilercarMakefilesofKconfigMakefileamdKconfigMakefileimxKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemt8186Makefilemt8195MakefilextensaKconfigMakefilespearKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefiletxx9KconfigMakefileuniphierKconfigMakefileux500KconfigMakefilexilinxKconfigMakefilextensaKconfigMakefilesparcKconfigMakefilespiKconfigMakefilesynthKconfigMakefileemuxMakefileusb6fireMakefileKconfigMakefilebcd2000MakefilecaiaqMakefilehifaceMakefileline6KconfigMakefilemiscMakefileusx2yMakefilevirtioKconfigMakefilex86KconfigMakefilexenKconfigMakefiletoolsMakefileaccountingMakefilearchx86intel_sdsiMakefilebpfMakefilebpftoolDocumentationMakefileMakefileresolve_btfidsMakefilerunqslowerMakefilebuildMakefileMakefile.buildMakefile.featureMakefile.includefeatureMakefiletestsexMakefilecgroupMakefilefirewireMakefilegpioMakefilehvMakefileiioMakefileincludetoolsbe_byteshift.hle_byteshift.hio_uringMakefilekvmkvm_statMakefilelaptopdslmMakefilefreefallMakefileledsMakefilelibapiMakefilebpfMakefilelockdepMakefileperfDocumentationMakefileMakefilesubcmdMakefiletraceeventDocumentationMakefileMakefilepluginsMakefileobjtoolMakefilepciMakefilepcmciaMakefileperfDocumentationMakefileMakefileMakefile.configMakefile.perfarcharmMakefilearm64MakefilecskyMakefilemipsMakefilepowerpcMakefiles390MakefileshMakefilesparcMakefilex86MakefilextensaMakefilescriptsperlPerf-Trace-UtilMakefile.PLpoweracpiMakefileMakefile.configMakefile.rulestoolsacpidbgMakefileacpidumpMakefileecMakefilecpupowerMakefilebenchMakefiledebugi386MakefilekernelMakefilex86_64Makefilepm-graphMakefilex86intel-speed-selectMakefileturbostatMakefilex86_energy_perf_policyMakefilescriptsMakefile.archMakefile.includespiMakefiletestingnvdimmMakefileradix-treeMakefilescatterlistMakefileselftestsMakefileandroidMakefileionMakefilebpfMakefileMakefile.docsbpf_testmodMakefilebreakpointsMakefilecapabilitiesMakefilecgroupMakefilecoreMakefilecpu-hotplugMakefilecpufreqMakefiledamonMakefiledriversnetbondingMakefileteamMakefileefivarfsMakefileexecMakefilefilesystemsMakefilefirmwareMakefilefpuMakefileftraceMakefilefutexMakefilefunctionalMakefilegpioMakefileia64Makefileintel_pstateMakefileipcMakefilekcmpMakefilekexecMakefilekmodMakefilekvmMakefilelibMakefilelivepatchMakefilelockingMakefilemedia_testsMakefilemembarrierMakefilememfdMakefilememory-hotplugMakefilemountMakefilemqueueMakefilenetMakefileforwardingMakefilemptcpMakefilenetfilterMakefilensfsMakefilepowerpcMakefilealignmentMakefilebenchmarksMakefilecache_shapeMakefilecopyloopsMakefiledscrMakefileeehMakefilemathMakefilemceMakefilemmMakefilepapr_attributesMakefilepmuMakefileebbMakefilesampling_testsMakefileprimitivesMakefileptraceMakefilesignalMakefilestringloopsMakefileswitch_endianMakefilesyscallsMakefiletmMakefilevphnMakefileprctlMakefileprocMakefilepstoreMakefileptpMakefileptraceMakefilercutortureMakefileformalsrcu-cbmcMakefiletestsstore_bufferingMakefilerseqMakefilertcMakefileseccompMakefilesgxMakefilesigaltstackMakefilesizeMakefilesparc64MakefiledriversMakefilespliceMakefilestatic_keysMakefilesyncMakefilesysctlMakefiletc-testingMakefiletdxMakefiletimensMakefiletimersMakefiletpm2MakefileueventMakefileuserMakefilevDSOMakefilevmMakefilewatchdogMakefilex86MakefilezramMakefilevsockMakefilethermaltmonMakefileusbMakefileffs-aio-examplemultibuffhost_appMakefilesimplehost_appMakefileusbipMakefile.amlibsrcMakefile.amsrcMakefile.amvirtioMakefileringtestMakefilevhost_testMakefilevirtio-traceMakefilevmMakefilewmiMakefileusrKconfigMakefilevirtMakefilekvmKconfigMakefile.kvmlibKconfigMakefilevmlinux.hvmlinux.id/usr/src/kernels//usr/src/kernels/4.18.0-516.el8.ppc64le//usr/src/kernels/4.18.0-516.el8.ppc64le/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/alpha//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/alpha/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/alpha/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/alpha/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/alpha/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/alpha/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/alpha/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/plat-eznps//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/plat-sim//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/boot/bootp//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/firmware//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-actions//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-alpine//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-artpec//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-at91//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-axxia//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-bcm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-berlin//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-davinci//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-dove//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-efm32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-exynos//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-gemini//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-highbank//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-hisi//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-imx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-integrator//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-keystone//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-meson//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-mmp//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-moxart//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-mxs//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-netx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-npcm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-nspire//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-omap1//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-omap2//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-prima2//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-pxa//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-realview//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-rpc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-spear//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-sti//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-stm32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-tango//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-u300//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-ux500//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-versatile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-zx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mach-zynq//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/net//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/nwfpe//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/plat-iop//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/plat-omap//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/plat-orion//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/plat-pxa//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/plat-samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/plat-versatile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/probes//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/vfp//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm/xen//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/hyperv//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/net//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/arm64/xen//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/c6x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/c6x/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/c6x/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/c6x/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/c6x/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/c6x/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/c6x/platforms//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/h8300//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/h8300/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/h8300/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/h8300/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/h8300/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/h8300/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/hexagon//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/hexagon/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/hexagon/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/hexagon/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/dig//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/hp//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/hp/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/hp/sim//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/sn//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/sn/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/uv//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/68000//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/amiga//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/apollo//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/atari//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/bvme6000//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/coldfire//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/fpsp040//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/hp300//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/mac//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/mvme147//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/mvme16x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/q40//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/sun3//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/sun3x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/microblaze/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/alchemy//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/alchemy/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/ar7//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/ath25//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/ath79//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/bcm47xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/bcm63xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/bmips//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/boot/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/cobalt//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/dec//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/dec/prom//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/emma//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/emma/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/emma/markeins//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/fw//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/fw/arc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/fw/cfe//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/fw/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/fw/sni//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/generic//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/jazz//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/jz4740//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/lantiq//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/lasat//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/lasat/image//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson32/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson64/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/mti-malta//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/net//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/netlogic//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/netlogic/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/paravirt//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pic32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pic32/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pistachio//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pnx833x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/power//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/ralink//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/rb532//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sibyte//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sibyte/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/sni//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/txx9//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/txx9/generic//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/vr41xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nds32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nds32/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nds32/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nds32/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nds32/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nds32/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nios2//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nios2/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nios2/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nios2/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nios2/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/nios2/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/openrisc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/openrisc/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/openrisc/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/openrisc/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/openrisc/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/parisc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/parisc/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/parisc/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/parisc/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/parisc/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/parisc/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/parisc/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/asm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/asm/book3s//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/asm/book3s/32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/asm/book3s/64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/asm/nohash//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/asm/nohash/32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/asm/nohash/64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/generated//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/generated/asm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/generated/uapi//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/generated/uapi/asm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/uapi//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/include/uapi/asm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/net//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/purgatory//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/sysdev//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/powerpc/xmon//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/riscv//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/riscv/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/riscv/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/riscv/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/appldata//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/hypfs//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/net//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/numa//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/purgatory//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/scripts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/s390/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/boot/romimage//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/cchips//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/drivers//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/drivers/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/drivers/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/lib64//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sh/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/net//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/power//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/prom//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/sparc/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/um//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/um/drivers//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/um/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/um/kernel/skas//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/um/os-Linux//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/um/scripts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/unicore32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/unicore32/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/unicore32/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/unicore32/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/unicore32/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/boot/compressed//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/coco//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/coco/tdx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/crypto/sha1-mb//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/crypto/sha256-mb//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/crypto/sha512-mb//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/entry//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/entry/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/events//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/events/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/events/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/hyperv//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/ia32//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/apic//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/mm/pat//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/net//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/atom//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/efi//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/geode//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/iris//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/olpc//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/scx200//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/sfi//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/platform/uv//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/power//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/purgatory//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/ras//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/realmode//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/realmode/rm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/um//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/um/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/video//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/x86/xen//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/oprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/platforms//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-516.el8.ppc64le/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-516.el8.ppc64le/block//usr/src/kernels/4.18.0-516.el8.ppc64le/block/partitions//usr/src/kernels/4.18.0-516.el8.ppc64le/certs//usr/src/kernels/4.18.0-516.el8.ppc64le/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/crypto/asymmetric_keys//usr/src/kernels/4.18.0-516.el8.ppc64le/crypto/async_tx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/accessibility//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/accessibility/braille//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/acpi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/acpi/acpica//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/acpi/apei//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/acpi/arm64//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/acpi/dptf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/acpi/nfit//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/acpi/numa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/acpi/pmic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/amba//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/android//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ata//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/atm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/auxdisplay//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/base//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/base/firmware_loader//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/base/power//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/base/regmap//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/base/test//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/bcma//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/block//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/block/aoe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/block/drbd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/block/mtip32xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/block/paride//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/block/rsxx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/block/xen-blkback//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/block/zram//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/bluetooth//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/bus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/bus/mhi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/bus/mhi/host//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/cdrom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/agp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/hw_random//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/ipmi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/mwave//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/pcmcia//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/tpm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/char/xillybus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/actions//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/at91//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/axis//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/axs10x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/bcm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/berlin//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/davinci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/h8300//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/hisilicon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/imgtec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/imx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/ingenic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/keystone//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/loongson1//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/meson//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/microchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/mmp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/mvebu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/mxs//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/nxp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/pistachio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/pxa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/renesas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/sirf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/socfpga//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/spear//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/sprd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/st//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/sunxi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/uniphier//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/ux500//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/versatile//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/zte//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clk/zynq//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/clocksource//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/connector//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/counter//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/cpufreq//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/cpuidle//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/cpuidle/governors//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/amcc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/axis//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/bcm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/caam//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/cavium//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/ccp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/ccree//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/chelsio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/marvell//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/nx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/qce//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/stm32//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/ux500//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/virtio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/crypto/vmx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dax//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dax/hmem//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dax/pmem//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dca//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/devfreq//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/devfreq/event//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma-buf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/bestcomm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/dw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/hsu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/idxd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/ioat//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/ipu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/ptdma//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/sh//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/dma/xilinx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/edac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/eisa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/extcon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firewire//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/broadcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/cirrus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/efi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/efi/test//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/google//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/meson//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/psci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/smccc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/firmware/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/fmc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/fpga//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/fsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/display//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/host1x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/gpu/vga//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hid/surface-hid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hid/usbhid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hsi/clients//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hsi/controllers//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hv//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hwmon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hwspinlock//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hwtracing//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/hwtracing/stm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/i2c/algos//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/i2c/busses//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/i2c/muxes//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ide//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/idle//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/accel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/adc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/afe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/amplifiers//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/buffer//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/chemical//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/common//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/counter//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/dac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/dummy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/frequency//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/gyro//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/health//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/humidity//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/imu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/light//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/magnetometer//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/multiplexer//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/orientation//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/potentiometer//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/potentiostat//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/pressure//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/proximity//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/resolver//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/temperature//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/test//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iio/trigger//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/core//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/sw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/ulp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/gameport//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/joystick//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/keyboard//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/misc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/mouse//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/rmi4//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/serio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/tablet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/input/touchscreen//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iommu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iommu/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iommu/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/iommu/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ipack//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ipack/carriers//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ipack/devices//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/irqchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/capi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/divert//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/gigaset//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/hardware//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/hisax//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/hysdn//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/i4l//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/isdn/mISDN//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/leds//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/leds/trigger//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/lightnvm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/macintosh//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/macintosh/ams//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mailbox//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mcb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/md//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/md/bcache//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/md/persistent-data//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/cec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/common//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/common/b2c2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/common/saa7146//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/common/siano//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/dvb-core//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/firewire//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/mmc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/mmc/siano//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/cx18//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/cx88//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/mantis//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/meye//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/ngene//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/pt1//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/pt3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/tw68//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/am437x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/atmel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/cadence//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/coda//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/davinci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/meson//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/omap//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/sti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/stm32//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/vimc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/vivid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/radio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/radio/si470x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/radio/si4713//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/rc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/spi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/tuners//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/airspy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/as102//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/au0828//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/go7007//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/gspca//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/pwc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/s2255//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/siano//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/uvc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/media/v4l2-core//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/memory/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/memory/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/memstick//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/memstick/core//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/memstick/host//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/message//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/message/fusion//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mfd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/c2port//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/cardreader//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/cb710//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/cxl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/echo//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/eeprom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/genwqe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/ibmasm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/lkdtm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mei//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mic/bus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mic/card//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mic/host//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mic/scif//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/mic/vop//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/ocxl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/ti-st//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mmc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mmc/core//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mmc/host//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/chips//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/devices//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/lpddr//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/maps//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/nand//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/parsers//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/tests//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mtd/ubi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/mux//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/appletalk//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/arcnet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/bonding//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/caif//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/c_can//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/cc770//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/m_can//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/mscan//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/rcar//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/sja1000//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/softing//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/spi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/dsa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/dsa/b53//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/google//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/via//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/fddi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/fjes//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/hamradio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/hippi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/hyperv//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ieee802154//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ipvlan//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/netdevsim//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/pcs//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/phy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/plip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/ppp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/slip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/team//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/thunderbolt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/vmxnet3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wan//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wan/lmc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wimax//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/st//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/net/xen-netback//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/fdp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/microread//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/pn533//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/pn544//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/st-nci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nfc/st95hf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ntb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ntb/hw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ntb/test//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nubus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nvdimm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nvme//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nvme/host//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nvme/target//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/nvmem//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/of//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/of/unittest-data//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/opp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/parisc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/parport//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pci/controller//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pci/endpoint//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pci/hotplug//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pci/pcie//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pci/switch//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pcmcia//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/perf/hisilicon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/allwinner//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/amlogic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/broadcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/hisilicon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/lantiq//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/marvell//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/motorola//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/qualcomm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/ralink//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/renesas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/st//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/phy/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/actions//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/meson//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/spear//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pinctrl/zte//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/chrome//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/goldfish//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/mellanox//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/mips//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/olpc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/x86/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pnp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pnp/isapnp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/power//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/power/avs//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/power/reset//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/power/supply//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/powercap//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pps//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pps/clients//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pps/generators//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ps3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ptp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/pwm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/rapidio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/rapidio/devices//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/rapidio/switches//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ras//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/regulator//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/remoteproc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/reset//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/reset/hisilicon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/reset/sti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/reset/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/rpmsg//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/rtc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/s390//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/s390/block//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/s390/char//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/s390/cio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/s390/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/s390/net//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/s390/scsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/s390/virtio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sbus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sbus/char//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/aacraid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/bfa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/csiostor//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/device_handler//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/esas2r//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/fcoe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/fnic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/isci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/libfc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/libsas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/lpfc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/megaraid//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/mvsas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/pm8001//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/qedf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/qedi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/snic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/scsi/ufs//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sfi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sh//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sh/clk//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sh/intc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sh/maple//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sh/superhyway//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/siox//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/slimbus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/sn//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/actions//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/amlogic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/atmel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/bcm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/dove//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/fsl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/fujitsu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/gemini//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/imx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/lantiq//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/renesas//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/sunxi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/ux500//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/versatile//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/xilinx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soc/zte//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/soundwire//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/spi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/spmi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/ssb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/android//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/android/ion//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/board//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/comedi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/dgnc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fbtft//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/fwserial//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/gdm724x//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/goldfish//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/greybus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/accel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/adc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/addac//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/meter//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/ks7010//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media/imx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media/imx074//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/media/zoran//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/most//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/most/cdev//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/most/dim2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/most/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/most/net//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/most/sound//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/most/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/most/video//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/netlogic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/nvec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/octeon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/pi433//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtl8712//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/rts5208//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/skein//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/sm750fb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/speakup//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/unisys//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/vc04_services//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/vme//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/vme/devices//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/vt6655//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/vt6656//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/wilc1000//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/staging/xgifb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/target//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/target/iscsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/target/loopback//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/target/sbp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/target/tcm_fc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tee//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tee/optee//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal/broadcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal/st//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/thunderbolt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty/hvc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty/ipwireless//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty/serdev//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty/serial//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty/serial/8250//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/tty/vt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/uio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/atm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/c67x00//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/chipidea//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/class//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/common//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/core//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/dwc2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/dwc3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/early//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/gadget//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/gadget/function//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/host//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/host/whci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/image//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/isp1760//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/misc//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/mon//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/mtu3//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/musb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/phy//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/roles//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/serial//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/storage//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/typec//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/typec/mux//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/usbip//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/usb/wusbcore//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/uwb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/uwb/i1480//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vdpa//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vfio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vfio/mdev//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vfio/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vfio/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vhost//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/backlight//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/console//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/core//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/fbdev/via//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/video/logo//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/virt//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/virt/coco//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/virt/vboxguest//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/virtio//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/visorbus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vlynq//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vme//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vme/boards//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/vme/bridges//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/w1//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/w1/masters//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/w1/slaves//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/watchdog//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/xen//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/xen/events//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/xen/xenbus//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/xen/xenfs//usr/src/kernels/4.18.0-516.el8.ppc64le/drivers/zorro//usr/src/kernels/4.18.0-516.el8.ppc64le/firmware//usr/src/kernels/4.18.0-516.el8.ppc64le/fs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/9p//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/adfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/affs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/afs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/autofs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/befs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/bfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/btrfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/cachefiles//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ceph//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/cifs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/coda//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/configfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/cramfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/debugfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/devpts//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/dlm//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ecryptfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/efivarfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/efs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/exportfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ext2//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ext4//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/f2fs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/fat//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/freevxfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/fscache//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/fuse//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/gfs2//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/hfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/hfsplus//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/hostfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/hpfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/hugetlbfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/iomap//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/isofs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/jbd2//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/jffs2//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/jfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/kernfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/lockd//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/minix//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/nfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/nfs/blocklayout//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/nfs/filelayout//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/nfs_common//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/nfsd//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/nilfs2//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/nls//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/notify//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/notify/dnotify//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/notify/fanotify//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/notify/inotify//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ntfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ocfs2//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ocfs2/cluster//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ocfs2/dlm//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/omfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/openpromfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/orangefs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/overlayfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/proc//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/pstore//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/qnx4//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/qnx6//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/quota//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ramfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/reiserfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/romfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/squashfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/sysfs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/sysv//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/tracefs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ubifs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/udf//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/ufs//usr/src/kernels/4.18.0-516.el8.ppc64le/fs/xfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include//usr/src/kernels/4.18.0-516.el8.ppc64le/include/acpi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/acpi/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/include/asm-generic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/asm-generic/bitops//usr/src/kernels/4.18.0-516.el8.ppc64le/include/asm-generic/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/include/clocksource//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/8139too//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/842//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ac97//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/advise//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/alim7101//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/allow//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/allow/dev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/altera//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/aperture//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/aquantia//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/cpu/probe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/dma/addr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/enable//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/enable/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/enable/split//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/devmem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/dma/map//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/elf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/fast//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/force//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/fortify//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/gcov//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/kexec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/mem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/memremap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/memremap/compat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/non//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/phys//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/phys/to//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/pmem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/pte//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/sg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/tick//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/walk//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/has/zone//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/have//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/have/nmi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/hibernation//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/keep//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/may//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/may/have//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/might//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/might/have//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/mmap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/select//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/select/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/sparsemem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/supports//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/supports/debug//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/supports/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/supports/numa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/suspend//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/suspend/nonzero//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/use//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/use/builtin//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/uses//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/uses/high//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/compat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/ipc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/ipc/parse//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/irqs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/irqs/off//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/irqs/off/activate//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/old//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/weak//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arch/weak/release//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arm/gic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/arm/gic/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/associative//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/asymmetric//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/asymmetric/key//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/asymmetric/public//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/async//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/async/raid6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/async/tx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ata//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ata/verbose//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/atm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/atomic64//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/audit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/autofs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/autofs4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/auxiliary//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/backlight//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/backlight/class//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/backlight/lcd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/balloon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/base//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcm/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcm7xxx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcm87xx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcma/driver//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcma/host//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bcma/host/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/be2net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bfq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bfq/group//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/big//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/binary//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/binfmt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bitfield//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bitfield/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bits//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bits/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/cgroup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/debug//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/dev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/dev/dm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/dev/io//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/dev/loop//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/dev/null//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/dev/ram//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/mq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/scsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/blk/wbt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/block//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bnx2x//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bnxt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bnxt/flower//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootparam//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootparam/hung//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bootx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bpf/jit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bpf/jit/always//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bpf/jit/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bpf/stream//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bpf/unpriv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/branch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/branch/profile//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bridge//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bridge/ebt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bridge/igmp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bridge/nf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bridge/vlan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/broadcom//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bsd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bsd/process//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bsd/process/acct//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bt/bnep//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bt/hciuart//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bt/mrvl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bt/rfcomm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bug//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bug/on//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/bug/on/data//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/build//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/buildtime//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/buildtime/extable//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/8dev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/c/can//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/calc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/cc770//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/ems//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/esd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/kvaser//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/peak//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/plx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/can/sja1000//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/capi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cavium//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cb710//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cb710/debug//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/can//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/has//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/has/kasan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/has/sancov//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/has/working//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/is//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/optimize//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cc/optimize/for//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cdrom//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cec/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ceph//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ceph/fs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ceph/fs/security//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ceph/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ceph/lib/use//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cgroup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cgroup/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/charger//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/check//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/checkpoint//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/chelsio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/chelsio/inline//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/chelsio/tls//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/chr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/chr/dev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cicada//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cifs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cifs/allow//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cifs/dfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cifs/smb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cifs/weak//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/clang//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/clkbld//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/clone//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cls//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cls/u32//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/clz//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cmdline//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cmdline/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/compat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/compat/32bit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/compat/binfmt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/compat/old//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/configfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/console//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/console/loglevel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/context//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/context/switch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/contig//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/core//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/core/dump//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/core/dump/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cortina//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu/freq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu/freq/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu/idle//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cpu/little//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cramfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crash//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crc/itu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crc32//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cross//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cross/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/ansi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/blowfish//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/cast//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/dev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/dev/nx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/dev/nx/compress//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/dev/vmx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/drbg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/fips//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/hash//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/michael//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/rng//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/twofish//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/user//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/crypto/user/api//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cxl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cxl/afu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cxl/afu/driver//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/cypress//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/damon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/davicom//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dax//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dcache//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dcache/word//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/de//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/debug//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/debug/info//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/debug/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/debug/section//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/decompress//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default/fq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default/hung//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default/hung/task//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default/mmap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default/mmap/min//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default/security//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/default/tcp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/detect//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/detect/hung//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dev/dax//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dev/dax/pmem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/device//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/devtmpfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dlci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dlm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dm/bio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dm/cache//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dm/log//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dm/multipath//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dm/persistent//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dm/thin//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dma/engine//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dma/ops//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dma/shared//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dns//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dp83640//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dp83822//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dp83848//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dp83867//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dp83tc811//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/amdgpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/cirrus//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/display//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/display/dp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/dp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/dp/aux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/export//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/export/for//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/fbdev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/gem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/kms//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/kunit/test//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/load//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/load/edid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/nouveau//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/panel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/radeon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/ttm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/virtio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/drm/vram//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dst//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dummy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dummy/console//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/au8522//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/av7110//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/b2c2//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/budget//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/dummy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/dynamic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/firedtv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/ttusb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/tuner//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dw/dmac//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dynamic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/early//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/edac//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/edac/atomic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/edac/legacy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/eeprom//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/efi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/elf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/enable//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/enable/must//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/enclosure//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/encrypted//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/energy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/epapr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ethtool//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/event//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/evm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/evm/attr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/exclusive//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/exclusive/system//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/exportfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/exportfs/block//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ext4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ext4/fs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ext4/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ext4/use//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ext4/use/for//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/extra//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fair//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fair/group//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fanotify//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fanotify/access//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fat/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fat/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb/cfb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb/deferred//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb/ibm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb/matrox//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb/mode//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb/nvidia//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb/radeon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fb/sys//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/file//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fips//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fips/signature//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/firewire//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fixed//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/font//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/force//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/force/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fortify//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/frame//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/framebuffer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/framebuffer/console//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fs/dax//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fs/posix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fscache//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ftrace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ftrace/mcount//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/function//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/function/graph//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fuse//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fusion//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fusion/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/futex//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fw/loader//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/fw/loader/user//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gact//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gcc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/clockevents//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/cmos//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/irq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/irq/show//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/isa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/msi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/smp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/smp/idle//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/strncpy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/strnlen//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/generic/time//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/genwqe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/genwqe/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/genwqe/platform/error//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gfs2//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gfs2/fs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gigaset//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gpiolib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/grace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/gro//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hangcheck//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hardened//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hardened/usercopy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hardirqs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hardirqs/sw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hardlockup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/has//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/has/ioport//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hash//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hash/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/arch/jump//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/arch/mmap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/arch/soft//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/arch/transparent//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/bootmem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/bootmem/info//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/context//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/debug//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/dynamic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ebpf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/efficient//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/fast//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ftrace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/function//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/function/graph//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/gcc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/hardened//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/hardlockup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/hw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ima//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ioremap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/irq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/irq/time//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/kprobes//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/kprobes/on//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/kvm/irq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/kvm/vcpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/kvm/vcpu/async//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ld//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ld/dead//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ld/dead/code//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/ld/dead/code/data//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/memoryless//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/mod//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/mod/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/nmi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/pcspkr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/perf/events//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/perf/user//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/regs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/regs/and//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/reliable//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/setup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/setup/per//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/syscall//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/virt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/virt/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hdlc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/headers//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hid/battery//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hid/logitech//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hid/picolcd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/high//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/high/res//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/16//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/avm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/bkm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/fritz//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/hfc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/no//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hisax/sct//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hist//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hmm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hotplug//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hotplug/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hotplug/pci/rpa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hsa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hsa/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hugetlb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hugetlb/page//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hugetlb/page/size//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hv/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hvc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hw/random//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hwlat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hwmon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hwpoison//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hysdn//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/hz//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i2c/designware//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i2c/diolan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i2c/helper//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i2c/mux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i2c/parport//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i2c/pca//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i2c/tiny//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i40e//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i6300esb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/i8253//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ibm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ice//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/icplus//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/idle//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/idle/page//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ieee802154//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/igb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/illegal//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/illegal/pointer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/appraise//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/default/hash//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/lsm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/measure//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/read//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/secure//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/secure/and//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/sig//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/trusted//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ima/write//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet/diag//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet/esp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet/mptcp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet/raw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet/sctp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet/tcp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet/udp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet/xfrm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet6/esp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inet6/xfrm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband/addr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband/on//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband/user//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/infiniband/virt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/init//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/init/env//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/init/env/arg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/initramfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inline//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inline/read//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inline/read/unlock//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inline/spin//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inline/spin/unlock//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inline/write//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inline/write/unlock//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/inotify//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input/ati//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input/ff//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input/keyspan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input/mousedev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/input/pwm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/integrity//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/integrity/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/integrity/trusted//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/intel/xway//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/interval//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/io//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/io/event//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/iommu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/iommu/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/iommu/default/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/iosched//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/advanced//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/fib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/fib/trie//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/mroute//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/multiple//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/nf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/nf/arp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/nf/match//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/nf/target//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/pimsm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/route//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/set//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/set/hash//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/set/list//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs/mh//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs/pe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs/proto//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs/sh//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip/vs/tab//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip6/nf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip6/nf/match//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ip6/nf/target//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipmi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipmi/device//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipmi/panic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipmi/plat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ippp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/mroute//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/multiple//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/route//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/router//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ipv6/sit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/imon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/jvc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/mce//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/nec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/pwm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/rc5//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/rc6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/sanyo//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/serial//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ir/sony//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/irq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/irq/all//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/irq/bypass//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/irq/forced//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isa/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/iscsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/iscsi/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/iscsi/target//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isdn//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isdn/capi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isdn/drv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isdn/ppp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/isdn/tty//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/iso9660//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ixgbe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ixgbevf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/jump//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/jump/label//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/jump/label/feature//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kallsyms//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kallsyms/base//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/karma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kdb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kdb/continue//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kdb/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kexec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/keyboard//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/keys//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kgdb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kgdb/honour//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kgdb/serial//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kprobe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kprobes//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kprobes/on//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kunit/all//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kunit/example//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kvm/book3s//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kvm/book3s/64//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/kvm/book3s/hv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/l2tp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lcd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lcd/class//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/led//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/led/trigger//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/leds//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/leds/brightness//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/leds/lp55xx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/leds/trigger//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/leds/trigger/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/linear//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/linear/ranges//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/liquidio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/list//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/list/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/load//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/load/ppc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lock//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lock/debugging//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lock/down//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lock/spin//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lock/spin/on//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lock/torture//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lockd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lockdep//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lockup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/log//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/log/buf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/log/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/log/cpu/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/logitech//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/logo//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/logo/linux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/loopback//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lsi/et1011c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lsm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lsm/mmap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lwtunnel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lxt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lz4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/lzo//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mac//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/macintosh//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/magic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/magic/sysrq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mantis//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/marvell//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/marvell/10g//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/max/raw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/maxlinear//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/md//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mdio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mdio/bcm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mdio/hisi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mdio/mscc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/altera//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/analog//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/analog/tv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/camera//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/cec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/common//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/digital//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/digital/tv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/radio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/subdrv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/tuner//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/media/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/megaraid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mem/soft//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memcg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memcpy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memcpy/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memfd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memstick//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memstick/jmicron//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memstick/realtek//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/memstick/tifm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/message//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/message/loglevel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mfd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mfd/sm501//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mhi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mhi/bus//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/micrel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/microchip//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/microchip/t1//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/microsemi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/minix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/misc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/misc/rtsx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/misdn//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx4/en//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5/cls//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5/core//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5/core/en//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5/en//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5/sf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5/sw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5/tc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlxsw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlxsw/core//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmc/block//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmc/realtek//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmc/ricoh//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmc/sdhci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmc/tifm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmc/via//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmu/gather//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmu/gather/page//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mmu/gather/table//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/module//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/module/force//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/module/rel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/module/sig//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/module/srcversion//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/modules//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/modules/tree//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/modules/use//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/modules/use/elf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mouse//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mouse/elan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mouse/ps2//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mouse/synaptics//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mpls//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mprofile//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mptcp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mptcp/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mq/iosched//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/msdos//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/msi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/msi/bitmap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mspro//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/cfi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/map//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/map/bank//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/of//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/powernv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/ubi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mutex//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mutex/spin//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/mutex/spin/on//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/n//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/national//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/dma/map//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/multiple//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/per//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/per/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/sg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/need/sg/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/act//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/act/tunnel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/cls//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/drop//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/ematch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/flow//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/ip//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/ipgre//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/key//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/l3//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/l3/master//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/mpls//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/packet//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/poll//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/ptp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/rx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/rx/busy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/sch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/sch/fq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/sock//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/tc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/tc/skb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/team//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/team/mode//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/udp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/net/vendor//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netconsole//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netdev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netdev/addr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netdev/addr/list//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netfilter/family//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netfilter/netlink//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netfilter/xt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netlink//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/network//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/network/phy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/netxen//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/new//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/conntrack//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/ct//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/ct/proto//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/defrag//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/dup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/flow//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/flow/table//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/log//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/nat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/reject//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/socket//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/tables//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nf/tproxy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfp/app//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfp/app/abm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/acl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/use//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/v3//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/v4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/v4/1//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfs/v4/security//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfsd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfsd/v2//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfsd/v3//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfsd/v4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nft//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nft/bridge//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nft/dup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nft/fib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nft/flow//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nft/fwd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nft/reject//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nls//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nls/codepage//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nls/iso8859//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nls/koi8//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nls/mac//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nmi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/no//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/no/hz//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nodes//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nonstatic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nop//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nouveau//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nouveau/debug//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/numa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/numa/balancing//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/numa/balancing/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/numa/keep//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nvdimm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nvme//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nvme/target//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/nvme/verbose//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ocxl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/of//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/of/early//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/of/reserved//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/oid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/old//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/opal//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/openvswitch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/osf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/osnoise//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/overlay//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/packet//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/page//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/panic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/panic/on//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/panic/on/oops//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/papr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/parport//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/parport/not//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/partition//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pata//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pata/of//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pci/msi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pci/msi/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pcie//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pcieaer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pcieaspm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pcspkr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/persistent//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pgtable//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/phys//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/phys/addr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/phys/addr/t//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/physical//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pkcs7//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pkcs7/message//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/plugin//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pm/generic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pm/generic/domains//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pm/sleep//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pm/sleep/smp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pm/sleep/smp/nonzero//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pmu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pnfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pnfs/file//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/posix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/posix/mqueue//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/power//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/power/reset//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/powernv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/powernv/op//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/64k//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/barrier//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/book3s//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/copro//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/disable//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/dt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/dt/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/emulated//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/have//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/have/pmu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/icp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/ics//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/indirect//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/mem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/msi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/of//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/of/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/p7//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/radix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/radix/mmu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/rtas//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/secure//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/secvar//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/smp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/smp/muxed//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/std//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/subpage//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/transactional//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/udbg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc/xive//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc64//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc64/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc64/supports//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppc64/supports/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ppp/sync//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pps//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pps/client//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/preempt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/prevent//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/prevent/firmware//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/prime//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/print//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/print/quota//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/print/stack//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/printk//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/printk/safe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/printk/safe/log//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/probe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/proc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/proc/page//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/proc/pid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/proc/vmcore//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pseries//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/psi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/psi/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pstore//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pstore/compress//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pstore/deflate//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ptp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ptp/1588//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/pwm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/qed//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/qfmt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/qsemi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/quota//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/quota/netlink//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/radio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/raid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/raid6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/raid6/pq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/random//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/random/trust//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rational//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rational/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/raw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rc/ati//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rcu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rcu/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rcu/need//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rcu/nocb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rcu/stall//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rdma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/realtek//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/reed//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/reed/solomon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/regmap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/renesas//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/resource//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/resource/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rfkill//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rh//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rh/kabi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rh/kabi/size//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rh/kabi/size/align//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rhel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ring//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ring/buffer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ring/buffer/allow//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rmi4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rmi4/2d//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rmi4/f03//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rpcsec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rpcsec/gss//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rt/group//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtas//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtas/error//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/drv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/hctosys//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/intf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rtc/mc146818//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/runtime//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/runtime/testing//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rwsem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rwsem/spin//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sata//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sata/ahci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sata/mobile//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scf/torture//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sched//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sched/omit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sched/omit/frame//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scom//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/bnx2//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/chelsio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/dh//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/fc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/ibmvfc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/ipr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/iscsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/proc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/qla//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/sas//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/sas/host//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/scan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/spi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/scsi/srp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sctp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sctp/cookie//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sctp/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sdio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/seccomp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/section//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/section/mismatch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/network//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/selinux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/selinux/avc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/security/writable//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/select//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/select/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sensors//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sensors/lis3//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sensors/ntc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/8250//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/8250/many//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/8250/nr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/8250/share//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/arc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/arc/nr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/core//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/of//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/uartlite//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serial/uartlite/nr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serio/altera//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/serio/arc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sfc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sfc/mcdi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sfc/siena//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sgetmask//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sgi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sgl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/shuffle//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/shuffle/page//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/simple//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/skb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/slab//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/slab/freelist//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/slip//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/slub//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/slub/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/slub/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sms//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sms/sdio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sms/siano//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sms/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/smsc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/ac97//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/ac97/power//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/atiixp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/cs46xx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/ctl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/dynamic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/emu10k1//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/es1968//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/firewire//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/hda//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/jack//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/jack/input//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/maestro3//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/mpu401//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/opl3//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/oxygen//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/pcm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/proc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/seq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/seq/midi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/sequencer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/synth//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/verbose//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/via82xx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/snd/vx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sock//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sock/cgroup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sock/validate//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/soft//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/softlockup//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/solaris//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/solaris/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sound//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sound/oss//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sound/oss/core//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/spapr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/spapr/tce//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sparse//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sparsemem//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/split//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/split/ptlock//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/squashfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/squashfs/decomp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/squashfs/file//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/squashfs/fragment//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ssb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/stack//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/stackprotector//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/stacktrace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/stream//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/strict//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/strip//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/strip/asm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sun//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sunrpc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/suspend//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/symbolic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/syn//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sync//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/synclink//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sys//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sys/supports//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sysctl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sysctl/exception//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sysctl/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sysfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/system//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/system/blacklist//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/system/data//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/system/extra//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/system/extra/certificate//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/system/trusted//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/sysvipc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tablet//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tablet/serial//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tablet/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/target//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/task//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/task/delay//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/task/io//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tasks//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tasks/rcu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tasks/rude//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tasks/trace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tcg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tcg/tis//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tcm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tcp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tcp/cong//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/teranetics//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/test//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/test/list//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/textsearch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/default/gov//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/emergency//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/gov//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thermal/gov/step//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/thread//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tick//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tifm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tigon3//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/time//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/time/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/timerlat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tipc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tipc/media//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tls//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tmpfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tmpfs/posix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/torture//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/touchscreen//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/trace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/trace/irqflags//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tracer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tracer/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tracing//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/transparent//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/transparent/hugepage//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tree//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/trusted//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/ttpci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tun//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tun/vnet//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/tun/vnet/cross//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/typec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/typec/dp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/typec/mux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/udf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/uio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/uio/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/uio/pdrv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/unix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/unix98//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/unixware//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/uprobe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ali//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/announce//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/announce/new//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/arch/has//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/autosuspend//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ehci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ehci/hcd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ehci/hcd/ppc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ehci/root//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ezusb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ftdi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/gspca//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/hsic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/hwa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/leds//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/net/cdc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/net/qmi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/net/rndis//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ohci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ohci/big//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ohci/big/endian//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ohci/hcd/ppc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ohci/hcd/ppc/of//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/ohci/little//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/pulse8//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/pwc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/pwc/input//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/rainshadow//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/role//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/digi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/mct//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/safe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/sierra//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/storage//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/storage/ene//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/uhci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/video//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/video/class//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/video/class/input//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/wusb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb/xhci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/usb4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/use//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/use/percpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/use/percpu/numa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/user//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/uts//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/uvc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/uwb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vdpa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vdpa/sim//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vfat//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vfio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vfio/iommu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vfio/iommu/spapr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vfio/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vfio/spapr//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vga//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vga/arb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vga/arb/max//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vhost//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vhost/cross//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vhost/cross/endian//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/au0828//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/cx18//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/cx231xx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/cx88//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/em28xx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/fb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/ir//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/pvrusb2//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/saa7134//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/saa7146//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/video/tm6000//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/videobuf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/videobuf/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/videobuf2//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/videobuf2/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/virt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/virt/cpu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/virtio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/virtio/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/virtio/vsockets//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vitesse//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vlan//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vlan/8021q//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vm/event//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vsockets//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vt//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vt/console//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vt/hw//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/vt/hw/console//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/want//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/want/dev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/watchdog//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/watchdog/handle//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/watchdog/open//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/x509//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/x509/certificate//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xarray//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xdp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xdp/sockets//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xfrm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xfrm/sub//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xfs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xfs/posix//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xilinx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xmon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xmon/default//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xmon/default/ro//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xor//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xz//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/xz/dec//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/yenta//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/yenta/ene//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/zlib//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/zone//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/zram//usr/src/kernels/4.18.0-516.el8.ppc64le/include/config/zsmalloc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/include/crypto/internal//usr/src/kernels/4.18.0-516.el8.ppc64le/include/drm-backport//usr/src/kernels/4.18.0-516.el8.ppc64le/include/drm-backport/linux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/drm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/drm/bridge//usr/src/kernels/4.18.0-516.el8.ppc64le/include/drm/display//usr/src/kernels/4.18.0-516.el8.ppc64le/include/drm/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/drm/ttm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/bus//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/clk//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/clock//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/display//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/iio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/input//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/leds//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/media//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/mfd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/mips//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/mux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/phy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/power//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/pwm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/regulator//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/reset//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/soc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/sound//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/spmi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/thermal//usr/src/kernels/4.18.0-516.el8.ppc64le/include/dt-bindings/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/generated//usr/src/kernels/4.18.0-516.el8.ppc64le/include/generated/uapi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/generated/uapi/linux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/keys//usr/src/kernels/4.18.0-516.el8.ppc64le/include/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/include/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/amba//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/avf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/bcma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/byteorder//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/can//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/can/dev//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/can/platform//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/ceph//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/clk//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/crush//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/decompress//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/dsa//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/extcon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/firmware//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/firmware/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/firmware/meson//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/fpga//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/fsl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/hsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/accel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/adc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/common//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/dac//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/frequency//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/gyro//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/imu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/iio/timer//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/input//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/irqchip//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/isdn//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/lockd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mailbox//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/abx500//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/arizona//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/da9052//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/da9055//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/da9062//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/da9063//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/da9150//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/syscon//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mlx4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mlx5//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mmc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mtd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/mux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/net/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/netfilter_arp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/pcs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/phy//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/phy/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/pinctrl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/platform_data//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/platform_data/media//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/platform_data/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/power//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/qed//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/raid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/regulator//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/remoteproc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/reset//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/rpmsg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/rtc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/sched//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/actions//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/dove//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/renesas//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/sunxi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soc/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/soundwire//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/spi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/ssb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/sunrpc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/ulpi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/unaligned//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/uwb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/linux/wimax//usr/src/kernels/4.18.0-516.el8.ppc64le/include/math-emu//usr/src/kernels/4.18.0-516.el8.ppc64le/include/media//usr/src/kernels/4.18.0-516.el8.ppc64le/include/media/davinci//usr/src/kernels/4.18.0-516.el8.ppc64le/include/media/drv-intf//usr/src/kernels/4.18.0-516.el8.ppc64le/include/media/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/include/media/tpg//usr/src/kernels/4.18.0-516.el8.ppc64le/include/memory//usr/src/kernels/4.18.0-516.el8.ppc64le/include/misc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/9p//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/bluetooth//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/caif//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/iucv//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/mana//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/netns//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/nfc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/phonet//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/sctp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/net/tc_act//usr/src/kernels/4.18.0-516.el8.ppc64le/include/pcmcia//usr/src/kernels/4.18.0-516.el8.ppc64le/include/ras//usr/src/kernels/4.18.0-516.el8.ppc64le/include/rdma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/scsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/scsi/fc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/arc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/at91//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/bcm2835//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/brcmstb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/fsl//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/fsl/qe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/imx//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/nps//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/sa1100//usr/src/kernels/4.18.0-516.el8.ppc64le/include/soc/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/include/sound//usr/src/kernels/4.18.0-516.el8.ppc64le/include/sound/ac97//usr/src/kernels/4.18.0-516.el8.ppc64le/include/sound/sof//usr/src/kernels/4.18.0-516.el8.ppc64le/include/sound/sof/ipc4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/target//usr/src/kernels/4.18.0-516.el8.ppc64le/include/target/iscsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/trace//usr/src/kernels/4.18.0-516.el8.ppc64le/include/trace/events//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/asm-generic//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/drm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/android//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/caif//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/can//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/cifs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/dvb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/hsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/iio//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/isdn//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/mmc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/raid//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/sched//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/spi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/linux/wimax//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/misc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/mtd//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/rdma//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/scsi//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/scsi/fc//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/sound//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/sound/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/sound/sof//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/video//usr/src/kernels/4.18.0-516.el8.ppc64le/include/uapi/xen//usr/src/kernels/4.18.0-516.el8.ppc64le/include/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/include/video//usr/src/kernels/4.18.0-516.el8.ppc64le/include/xen//usr/src/kernels/4.18.0-516.el8.ppc64le/include/xen/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/xen/interface//usr/src/kernels/4.18.0-516.el8.ppc64le/include/xen/interface/hvm//usr/src/kernels/4.18.0-516.el8.ppc64le/include/xen/interface/io//usr/src/kernels/4.18.0-516.el8.ppc64le/init//usr/src/kernels/4.18.0-516.el8.ppc64le/ipc//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/bpf/preload//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/cgroup//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/debug//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/debug/kdb//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/dma//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/events//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/gcov//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/irq//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/kcsan//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/livepatch//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/locking//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/power//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/printk//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/rcu//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/sched//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/time//usr/src/kernels/4.18.0-516.el8.ppc64le/kernel/trace//usr/src/kernels/4.18.0-516.el8.ppc64le/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/842//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/crypto//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/dim//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/fonts//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/kunit//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/livepatch//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/lz4//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/lzo//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/math//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/mpi//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/pldmfw//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/raid6//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/raid6/test//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/reed_solomon//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/vdso//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/xz//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/zlib_deflate//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/zlib_dfltcc//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/zlib_inflate//usr/src/kernels/4.18.0-516.el8.ppc64le/lib/zstd//usr/src/kernels/4.18.0-516.el8.ppc64le/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/mm/damon//usr/src/kernels/4.18.0-516.el8.ppc64le/mm/kasan//usr/src/kernels/4.18.0-516.el8.ppc64le/net//usr/src/kernels/4.18.0-516.el8.ppc64le/net/6lowpan//usr/src/kernels/4.18.0-516.el8.ppc64le/net/802//usr/src/kernels/4.18.0-516.el8.ppc64le/net/8021q//usr/src/kernels/4.18.0-516.el8.ppc64le/net/9p//usr/src/kernels/4.18.0-516.el8.ppc64le/net/appletalk//usr/src/kernels/4.18.0-516.el8.ppc64le/net/atm//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ax25//usr/src/kernels/4.18.0-516.el8.ppc64le/net/batman-adv//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bluetooth//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bluetooth/bnep//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bluetooth/cmtp//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bluetooth/hidp//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bpfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bridge//usr/src/kernels/4.18.0-516.el8.ppc64le/net/bridge/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/net/caif//usr/src/kernels/4.18.0-516.el8.ppc64le/net/can//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ceph//usr/src/kernels/4.18.0-516.el8.ppc64le/net/core//usr/src/kernels/4.18.0-516.el8.ppc64le/net/dcb//usr/src/kernels/4.18.0-516.el8.ppc64le/net/dccp//usr/src/kernels/4.18.0-516.el8.ppc64le/net/dccp/ccids//usr/src/kernels/4.18.0-516.el8.ppc64le/net/decnet//usr/src/kernels/4.18.0-516.el8.ppc64le/net/decnet/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/net/dns_resolver//usr/src/kernels/4.18.0-516.el8.ppc64le/net/dsa//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ethernet//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ethtool//usr/src/kernels/4.18.0-516.el8.ppc64le/net/hsr//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ieee802154//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ife//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ipv4//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ipv4/bpfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ipv4/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ipv6//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ipv6/ila//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ipv6/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/net/iucv//usr/src/kernels/4.18.0-516.el8.ppc64le/net/kcm//usr/src/kernels/4.18.0-516.el8.ppc64le/net/key//usr/src/kernels/4.18.0-516.el8.ppc64le/net/l2tp//usr/src/kernels/4.18.0-516.el8.ppc64le/net/l3mdev//usr/src/kernels/4.18.0-516.el8.ppc64le/net/lapb//usr/src/kernels/4.18.0-516.el8.ppc64le/net/llc//usr/src/kernels/4.18.0-516.el8.ppc64le/net/mac80211//usr/src/kernels/4.18.0-516.el8.ppc64le/net/mac802154//usr/src/kernels/4.18.0-516.el8.ppc64le/net/mpls//usr/src/kernels/4.18.0-516.el8.ppc64le/net/mptcp//usr/src/kernels/4.18.0-516.el8.ppc64le/net/ncsi//usr/src/kernels/4.18.0-516.el8.ppc64le/net/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/net/netfilter/ipset//usr/src/kernels/4.18.0-516.el8.ppc64le/net/netfilter/ipvs//usr/src/kernels/4.18.0-516.el8.ppc64le/net/netlabel//usr/src/kernels/4.18.0-516.el8.ppc64le/net/netlink//usr/src/kernels/4.18.0-516.el8.ppc64le/net/netrom//usr/src/kernels/4.18.0-516.el8.ppc64le/net/nfc//usr/src/kernels/4.18.0-516.el8.ppc64le/net/nfc/hci//usr/src/kernels/4.18.0-516.el8.ppc64le/net/nfc/nci//usr/src/kernels/4.18.0-516.el8.ppc64le/net/nsh//usr/src/kernels/4.18.0-516.el8.ppc64le/net/openvswitch//usr/src/kernels/4.18.0-516.el8.ppc64le/net/packet//usr/src/kernels/4.18.0-516.el8.ppc64le/net/phonet//usr/src/kernels/4.18.0-516.el8.ppc64le/net/psample//usr/src/kernels/4.18.0-516.el8.ppc64le/net/qrtr//usr/src/kernels/4.18.0-516.el8.ppc64le/net/rds//usr/src/kernels/4.18.0-516.el8.ppc64le/net/rfkill//usr/src/kernels/4.18.0-516.el8.ppc64le/net/rose//usr/src/kernels/4.18.0-516.el8.ppc64le/net/rxrpc//usr/src/kernels/4.18.0-516.el8.ppc64le/net/sched//usr/src/kernels/4.18.0-516.el8.ppc64le/net/sctp//usr/src/kernels/4.18.0-516.el8.ppc64le/net/smc//usr/src/kernels/4.18.0-516.el8.ppc64le/net/strparser//usr/src/kernels/4.18.0-516.el8.ppc64le/net/sunrpc//usr/src/kernels/4.18.0-516.el8.ppc64le/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-516.el8.ppc64le/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-516.el8.ppc64le/net/switchdev//usr/src/kernels/4.18.0-516.el8.ppc64le/net/tipc//usr/src/kernels/4.18.0-516.el8.ppc64le/net/tls//usr/src/kernels/4.18.0-516.el8.ppc64le/net/unix//usr/src/kernels/4.18.0-516.el8.ppc64le/net/vmw_vsock//usr/src/kernels/4.18.0-516.el8.ppc64le/net/wimax//usr/src/kernels/4.18.0-516.el8.ppc64le/net/wireless//usr/src/kernels/4.18.0-516.el8.ppc64le/net/x25//usr/src/kernels/4.18.0-516.el8.ppc64le/net/xdp//usr/src/kernels/4.18.0-516.el8.ppc64le/net/xfrm//usr/src/kernels/4.18.0-516.el8.ppc64le/samples//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/auxdisplay//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/configfs//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/connector//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/hidraw//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/hw_breakpoint//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/kdb//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/kfifo//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/kobject//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/kprobes//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/livepatch//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/mei//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/mic//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/mic/mpssd//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/nitro_enclaves//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/qmi//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/rpmsg//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/seccomp//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/timers//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/trace_events//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/trace_printk//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/uhid//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/v4l//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/vfio-mdev//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/vfs//usr/src/kernels/4.18.0-516.el8.ppc64le/samples/watchdog//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/basic//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/clang-tools//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/api//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/free//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/locks//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/misc//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/null//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/coccinelle/tests//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/dtc//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/dtc/libfdt//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/gcc-plugins//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/gdb//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/gdb/linux//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/genksyms//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/ksymoops//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/mod//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/package//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/selinux//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/selinux/genheaders//usr/src/kernels/4.18.0-516.el8.ppc64le/scripts/selinux/mdp//usr/src/kernels/4.18.0-516.el8.ppc64le/security//usr/src/kernels/4.18.0-516.el8.ppc64le/security/apparmor//usr/src/kernels/4.18.0-516.el8.ppc64le/security/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/security/integrity//usr/src/kernels/4.18.0-516.el8.ppc64le/security/integrity/evm//usr/src/kernels/4.18.0-516.el8.ppc64le/security/integrity/ima//usr/src/kernels/4.18.0-516.el8.ppc64le/security/keys//usr/src/kernels/4.18.0-516.el8.ppc64le/security/keys/encrypted-keys//usr/src/kernels/4.18.0-516.el8.ppc64le/security/keys/trusted-keys//usr/src/kernels/4.18.0-516.el8.ppc64le/security/loadpin//usr/src/kernels/4.18.0-516.el8.ppc64le/security/selinux//usr/src/kernels/4.18.0-516.el8.ppc64le/security/selinux/include//usr/src/kernels/4.18.0-516.el8.ppc64le/security/smack//usr/src/kernels/4.18.0-516.el8.ppc64le/security/tomoyo//usr/src/kernels/4.18.0-516.el8.ppc64le/security/yama//usr/src/kernels/4.18.0-516.el8.ppc64le/sound//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/ac97//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/aoa//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/aoa/codecs//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/aoa/core//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/aoa/fabrics//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/aoa/soundbus//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/atmel//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/core//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/core/oss//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/core/seq//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/core/seq/oss//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/drivers//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/drivers/mpu401//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/drivers/opl3//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/drivers/opl4//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/drivers/pcsp//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/drivers/vx//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire/bebob//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire/dice//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire/digi00x//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire/fireface//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire/fireworks//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire/motu//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire/oxfw//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/firewire/tascam//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/hda//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/hda/ext//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/i2c//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/i2c/other//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/ad1816a//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/ad1848//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/cs423x//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/es1688//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/galaxy//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/gus//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/msnd//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/opti9xx//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/sb//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/wavefront//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/isa/wss//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/mips//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/oss//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/oss/dmasound//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/parisc//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/ac97//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/ali5451//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/asihpi//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/au88x0//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/aw2//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/ca0106//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/cs46xx//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/cs5535audio//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/ctxfi//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/echoaudio//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/emu10k1//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/hda//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/ice1712//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/korg1212//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/lola//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/lx6464es//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/mixart//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/nm256//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/oxygen//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/pcxhr//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/riptide//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/rme9652//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/trident//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/vx222//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pci/ymfpci//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pcmcia//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/pcmcia/vx//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/ppc//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/sh//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/adi//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/amd/acp//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/amd/ps//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/amd/raven//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/amd/renoir//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/amd/rpl//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/amd/yc//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/atmel//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/au1x//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/bcm//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/cirrus//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/codecs//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/dwc//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/fsl//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/generic//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/hisilicon//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/img//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/atom//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/avs//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/boards//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/catpt//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/common//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/keembay//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/intel/skylake//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/jz4740//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/kirkwood//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/mediatek/common//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/meson//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/mxs//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/pxa//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/qcom//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/rockchip//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/samsung//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sh//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sh/rcar//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sof//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sof/amd//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sof/imx//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sof/intel//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/spear//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sprd//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sti//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/stm//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/sunxi//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/tegra//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/ti//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/txx9//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/uniphier//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/ux500//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/xilinx//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/soc/xtensa//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/sparc//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/spi//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/synth//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/synth/emux//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/usb/6fire//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/usb/bcd2000//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/usb/caiaq//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/usb/hiface//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/usb/line6//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/usb/misc//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/usb/usx2y//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/virtio//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/sound/xen//usr/src/kernels/4.18.0-516.el8.ppc64le/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/accounting//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/arch/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/bpf/bpftool//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/bpf/runqslower//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/build//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/build/feature//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/build/tests//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/build/tests/ex//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/cgroup//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/firewire//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/hv//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/iio//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/include//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/include/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/io_uring//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/laptop//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/laptop/dslm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/laptop/freefall//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/leds//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/api//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/lockdep//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/subcmd//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/traceevent//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/objtool//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/pci//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/pcmcia//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/Documentation//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/arm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/arm64//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/csky//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/mips//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/s390//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/sh//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/sparc//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/scripts//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/scripts/perl//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/acpi//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/acpi/tools//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/cpupower//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/cpupower/bench//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/cpupower/debug//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/pm-graph//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/x86/turbostat//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/scripts//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/spi//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/nvdimm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/radix-tree//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/scatterlist//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/android//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/core//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/damon//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/exec//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/futex//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/lib//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/locking//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/mount//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/net//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/proc//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/size//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/splice//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/sync//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/timens//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/timers//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/user//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/vm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/x86//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/selftests/zram//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/testing/vsock//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/thermal//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/thermal/tmon//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb/usbip//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/usb/usbip/src//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/virtio//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/virtio/ringtest//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/virtio/vhost_test//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/vm//usr/src/kernels/4.18.0-516.el8.ppc64le/tools/wmi//usr/src/kernels/4.18.0-516.el8.ppc64le/usr//usr/src/kernels/4.18.0-516.el8.ppc64le/virt//usr/src/kernels/4.18.0-516.el8.ppc64le/virt/kvm//usr/src/kernels/4.18.0-516.el8.ppc64le/virt/lib/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -funwind-tables -fstack-clash-protectioncpioxz3Tppc64le-redhat-linux-gnu                                   !  "# $ %&  ' ()directoryLinux make config build file, ASCII textASCII textmakefile script, ASCII textemptyOS/2 REXX batch file, ASCII textAlgol 68 source, ASCII textC source, ASCII textC source, UTF-8 Unicode textUTF-8 Unicode textOS/2 REXX batch file, UTF-8 Unicode textISO-8859 textPOSIX shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=b3a9a37ab956097ced61c809cc01a44c9c203131, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=f5eafc1186a26ba5e072a7f94321fde4c383a03b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=3fcec225ebc3823f0611a20086bcc0da53bbc85a, strippedPython script, ASCII text executablePerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=1123a4936c8fefd282edaf5a8167c35e5ebfc853, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=28d9d7921bdeecc9ce778b0336c61a3acc343793, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=8e963fe95d0d2e775369daf0c40e20031bfd67f0, strippedC++ source, ASCII textexported SGML document, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=0a098da766d148aca7389af5382e3f1dc95b398a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=a618a74a4606512a2589a12f3ea8fc30d450f25a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=f81531ad9cc5197029bc00ee23d50063b450a7e0, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=2e2ee4717f143376fa847f793767447426e41370, strippedXML 1.0 document, ASCII textawk script, ASCII text executableassembler source, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=7505d72d63159a4af0f1cc8a9c43ef8943f3910f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=1a5c61bb7ec23865fa4bc76d1fe4fc27fe7d065f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=b8de25a23b522c6a933486701c8f5a17ce2bc254, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=064ec05b9ff30aa9678247709dcaf19e4f6b0348, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=8c929a878359f7adee0640e8d420298dbf1842dc, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=32aeaf08b4f18257f7262154dcc473eb693a7599, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=a99dafa989d0fb12db345447bdc0472925477fd6, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=8f6598bf6543669dab567b511e6da47482ad5390, strippedASCII text, with very long linesautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-86ac85a6e9ce7fe86c4f96494deb3d0450b9b532c5aed7151ebd288e05c3a5093? 7zXZ ו!+:] b2u jӫ`(y/؃dڒQVon2~? _~;M' !tVC*X5vjFWm;*Eޚ.RbSH^Ή0b*shIgubG-CֆlbsxY5bx5ٲ]}{_ bMl9ͼ "0 FYju[!xbx0`2ˍmQLX,)j>@R9ï-pjoӘ" n"(Lx1L;~#r讔.aAxMXxbg1L/BYZȯ^iϣ {5J7-'-8 g3m ɌLITGe _~Ak!1|P,>?QPIWO@;PHoao[_S11&Bk(Ɣz!mq(D$_A8pb :G50 4ӵ[ xdeu)Z71%1r&YZϹр>@5Kh)L7.%*tSa:;e tSwm e;~T*#R)ch\SJeHGyt)X/(_ף] DOn%H#4M fOgv^jol3mzvOǸ~4i-Q->L"Yeýh\׉O8ZZ0'>&O5MɺGcE}GzW "5Q&qZSZuZ75HO%ع'+Y-gE L`2^%jJw3z{ ˥_AҪ]J{JiX{ *ܯdOyٚ^,X4n}s^eTL?cMVbm% _,!ʃ$8iUdq%E+܅ݐC@ :?arOCզl"M5aVw|ƉX[ [h_M"F@!_ϗT;UQ ܠ*G5rq }P"c92iB6r*8+u|h $*7 kBt%A`D@ˁ=X_3 '/Z[h<1s[|^&>Ӽ'1o7j2]w )qdQRHp;'gԦuJH[ ']팣HZ650z P^ȻH'ڞ; Ab;T]r{G(hT^0teؚ,K.僴XŒZ5o.@۲ @|b\@ԗJJ0᫐w7Ge6zmHtWe2433)ƣFG#r˖I""zfȎ %iy֔jSi=87TAeg^dG^#0ie!~}^+A(Bpqmvε:M!darg>gKђjszZXE R[ebdӏLMр9iLsù^y$ 蚖PΏ qq::Td%]GDͧLXyf&W"Qgj (,aOB?bYy%6zK@?f9y/"*T|`Cv RrUfpRlǛz~m DGvք)3EB &]o m5W!]`J rMa-l27%)hbԳ4YJ9hU>i%ψv6 @:9pJI.(wBkS;L!.`;K1039]i–ZP1E"^w+', w'\0DG󷞝T?..!&Tѭ3@SoW@ڽ9Fgί _+nsTLhh20bg7+F DN&_ࣹ# E!Ȯ`ozmҲ4ˆ^#[ cwaMo\& a0fg|N_6*0SRN&ÁAM(~< 2rbʇr`g7;+Bs -QC i e-/+d *"-Ztb(lS؎AMw8VnLdDZ:m/Fwɺnϴr^RwOyxs'O40rt`:c'`MU '-yBQyog`cr-DweVuI %$-|G{O:164d_ lH[EߌsS'inZ'(Լ\]VyLZ0-?313atV5>2Ú.ohLlŊ an~ Ӝ儐V|!56KZ~"SKUVzc+ #L opXV .\4}/ѮB6G.i%֖WGyfѷ`Qw_I/T;t ɳWЀ Z<&-V Xreu,T=w4|*QW8;R5-H8IVa?%MoIJo}E=AT:jCԐBlJ$hP#CW]q(E Zb!SX Nx?8w2V>-8TZЛU橬ljdTTLDPYxjV{C^nX2$Sebh؋JkQ.i$Y6RF̮_lz RUHD{~JQ_!?MvվkV<;B|HB6a4~LJ\-툮'M2W '$&|וPty?IP"X^,늤[|s?+*XZ~/EcЍ{9qP[Ȥ*v"̷"Ӷ,O)Zh@)]aP3gν-˝s/ }To~V0qc uBDYGySؼT>|~d"P(U&@!pqe`y^M^ou){D})FKsK+V >r+ FR)q M_ݮWnX hti 6m1pŮUo30UT ΂(9@Eթ6I*|O4[Fѫ螣%'HSte뮱5\`}H{,듥67lVO*1?]B+҂7U_Ía zBr-рAlprG&o@ xroP υZ`wɳRU*;!q\ߘ]m%%G dNS<8M"*#H_w:#tw6.عG,BՌ9F!?=u9~CzSc4{ppq4v$m_VZ%l2 m;WI A`4Si2ծG)g^Y\8j(k!~̯k(➶ཚ{?LnVŶ<<yä2p]zX._\]cFt3ѓS^+ܼE9a LQ9 t'Ș tv+r,xkS̞S$(ԞݛG/'$Sv@Qx\T)%N 1Eǿa(vLKC3mBcrlfqF/E \-gEm&2?pޝbAFh6b` A:!b5f qnH䣬+M[xf$z `_Svl0OZd:H6O˨!YgLdY@Q(bJhstm T\IȁAeli9KyW%W,L~aY$c:doPy0m.^h*' \!"~.ɪrHAz+u:  .'> ;kSA@/#bodLTP+Q@)5Cmbl-h8_.W^oᮜ/Ӑʛ+#71%yϛ/!%ەڰe;4.snt*-f+PF 5,S Jڥ ~pIgVe{Ix6nT/3orPLz=j`Nμ5 !3;'.=Bu"f;k@Xo֧CS\Hjg7nƒP![>% WHY\r^•;댩u\za2P9pay! +8y݃$ϲ0xE :&ht؉ɜ-kIZ}*b(2#ga J )8Q-oc4c/;0 P#fQ괂JӶ) Lrl}kC#BꇪC#+vGw5÷3 WKeA@ltr ՠٝsxP=< BUѧ)$81giWTdHtSK1?ZB:rb^yvYf0! n~+Zk9Wb=sI66$o:|J*6A E# r^BtݒE9p.}O>U82r!Ih tټ7}_jb&\U 6q/9УDѕSU ;cWBk>1fwW%4yLbV,JLNx~7÷ϫ0ݱ8m(7p_{ Ir3 jf[hyLb{jQ5)ǛsI !<5godhD9Ԏ {2'X_),iwU"PdH)6C?e`PA=g~n ܔRD(S>W t"AKBƯQd/>FZ= [+q^oSFz1̋TZ!F8cMHXN&)} " JXa՝j(tT* wT<9w^}hZCF]%DQZ/:bLZ'_yon2 ;@8)&M3A\7[|PSb"ŜB=eu}o|*v9,X^FY5?$ "oTAn*)=w^ "P$Mٳ;ZIpof ׊V9E)R}U5I #Pmګ1jXx>)@"Ev;ja 7ez=lI<'(5:URBfF95~0-\ڰfOXgI"0aL Ğ }395ne[U}˰sF;dhf|p]vX0Ӳ >A:Or 8ݬqWb>Զ7s6#N0woO?!2C?H{Jwb=!*VJtñJ?IwJtR>,[uWmp? mJS8EiLߢh5avD$lmzy9lej}&"))421Đ ]J;2^Ǭ.1}hвY]X,V!sR?qSŨМsZԘT(}@Xٗrޟ8yk[<. ,-=g8Eg*4І;[&)=؋߀78Rxfe{O+f&ntEQV [曁ǰ >p ,5op UP,M# :t3(@f Eo;%JaD]k\7rgƘs0k:B]kk4 iO"a+k>B' `RMa$Uԧ i@beRVoP$)GS2MW!f(}X{Vp־haQg@Ϻ@7OM \LƤ*%.RJ3󒦔G#j1U]-ҐSZw{L 9{(Ӹ8fn8۽ .gm|PK89^* #۟\L9}ZлD}S_6K􍌈BMβL"<=J*쬑;x-:pgG(`ʲ}.I<oe-MbˁkDܭV#Q]`c78O׺N˙q+('ߣAh[AcJ9rQ9`dh$̧eڟ7w#xwˊwSOpTgiD.$nL?F)K|)$!@:,.6 yc#o=C>v+3vN6;ߌC4n ZƂcg_wB(X} LǃrRX:OB棱YݓIEaָ'^ɘޤDLP-@?ҺRdyMFzUho4!иE~fP3:-P~k|:8&XY#IKSƀ Z탤՗tmjP2Ϟ3BڬZH=JhgO?oWg԰D'&ZIHI usYJoKԙtQFocƩw]d1\N8{z{XowqEtRΖfl/U?ZߍKFcIE?KI7X?]'-!0 ]:]6& (?NZQE\ S$rH}fZ<S<ۋ .ъDăb<{1 w&_ԝqCr0J< X6~c8S[V\I\< +>DU%JuJ #VXy3>g0fWa# ~;a&gUhpoi#3\4[Tw2Ra|'N!I Mz磕*L;۽@A9<(Jr HbŤB`L ҩh <=ߊpQǚ΂_\u0]bm; Z9/A:]a5V_.Vr$1%_c>C֨C`<$(GtF;ad7~'j8 L;ۛ5AJ; GۺԁDTsEqT=X7y%KcfޟlF"Aq*9 ;=~(omoX'wPM"٬9} q^r@Nu 156# TR'DZ}Z <$-zjjՉa3~ UAOAJRף?VA# e[;Y獌8oz>BٱRpVſGcM[I#*!Mϧ"0fփ :ki݌s7m)ޭD}i[c$,(NA_E#+û ʟ{ъɅ E1>lZ{!/ĞQ&=ߛp(&MjC(PH>׾R~w;~D˶~.:I dV3_ $Kmr3 t*HQ 2^T%:d:^`d\&Id=(u§^x*a~I-.)XEK@GR]`v*SSd{BkZ ;7hJڔRX/;lZlx a7$Uhn΁+{<=>[Na,4CL(깬ˈEBypTv_`}5Ԏ7Z`-L6u,(D=ԁ0ƿJ>a2Ѭ(gUoO5g{jo: 2=d hg66#׉>1"z e%h">Ie Nw l wQIjP|R !r6bX(QLi>פ1mFW /2.= H׳zHA5AO-)7bus^A]z27F~L'`F0ֆs9~IG&,~f_K?O0O -8A,~4GWREI*aݏN YyEwZԴQґo7o/9aٯ=#:ͱgN9zKexԂD(:? aC:l3$E 'j>Xנ14}K΢A[=1SqdeA2~!?P oQ x@Idя !3X0kU t46hN&@)/F8Լ]/{.l V/ aw=AVFAfRVCZeuon?Ĥ2y_N{bL=EqW^3.e/e˧*)&~ͩ1^%?|wZүKC.8C/|:F54!۰sO+zG"ȏ@YL.,p=E[W)j磡m"̞[L_Uߝ˜ VXJ4+[p@#& Vlk+}<6dIrr,)~:xd|dlQ}xrA[YV7lܢ~3Dc<jPлKɰӋOGšx,NB ӚvQ7%M9kCN~n-Xra@kW*}h0(DrA\nQ[*#wln&V z&/h?յ%3@Z>HK[翲05T=t eD}*I_/0KO-},*02eҡVhܒ\ACWM;K] Zbt7;rqyCؑ(h;?T"P)v䅘&_st#2gAWu%Ǥ^:)s%Uަsj5&ip TX]z-'~{鄈6){I[Nl7BHb mJAi;Q[@<},0|3^ؔ+}_vZ4,n{2C ^ԯgɸOMȒOm.rOغ>pCnh7`XwL1o7a!D=~ Y89 yG` }{S/}H{J_]:34տ9JThL"s~]6lTh/Rn*#,x+ {CM}@[gj= L+E-@9=z<Y kF /U['ri]*KX@OC#} % N\$yNa =-If!u1Չy;ѿ+jJ3 3C*/aO(V8X&P3ꓝKs܅" s{fM &?k+fיRS9δٍ=`ܝ : ]ۀ2Ė5G&X}?O) ?rQ_pKU+jjB XK3Ijp 2bSoov%;+ҞmisndHMj:mmw~ =un+ /K0Ĩ̮3,kA]!CtJ */{P=暧 - J5'4 ZAwHaʗ 3   ~uNsmkq %?6Į# h̜N ]!N0dLX < g44&)tz©˹ڈ_@O TѴnK=r.%MŃr5m<@yҌgxRoUv .sd">"*GO,m3 8WaVh]D߲ Yoqg[2,cHpwhƲ=gA%"ÈkDL~;*e v891.6P/,#Kx4.9maE' j\PV-*[NLZN 2-b NWNmLV&kb`/^Xjs(Yx$^$YI!L ]#9SZF>LJh*=A/Rt; 8a)ŧŮx(w`DⅳEj +`O6e%(`L]W`!]xy6_aBޭaa9b-A<΋%bgͫ)ŵ|c7 m.3@?  7yisW9,OSָ UL{xwT鞰̈&>^,jb=_ , ܌[LlcW[LHnKlr+k =6_HQinoؙR=9> HAI IҚ48<{A_!.OL{6QO975FQ&"Bcg-ӑspx4)vR@tֹi4WA'(QݢCɼR䜯¸`Xs,J3ťD~D^XS`H()r؂ –Q.?$''4Z+.ttj!Z5`$ᇤiڇ=ijk}N6Rӡ%q {>мNFғ:p?L-⺮0=l`(Zvsv`K+|(G*jt&k$sՋwۤ:Z Z4@:ù~X"@nD?E-\XEkf1t aJB`E-9 FI,F|iPq++ս(H:8>QI Ou `;F3/ ط`Ynm J6,PtҰYrӡY#F >f7ZFΓ7rr|rO(-M-x䫭Dj%Lk!}0kPWY#]`_J|VCD%l9èvc\/l1RZU\pݣF=l d.eAX߀-˟S"Yi3P {л~So  XWd]К:GL+\YA aIZ`Z4dVtXLTI% riK:_=dPHYE'w~!v@|@0W@R6AߊYB٧8JOK U rFcL3=ӊ }Fg'dD7;$ԲJmG7$\慠t&ey+,;íal:ڜzV /`h d?RM n`(%_@)mC79Z7%GZ+t[ z)%Lu3MOԏK65] Ez=W`'k};iAG(}΄ҝ#(-!I& pp#p=@AAِ+F{D(=w?fQqDcD")];ViSt[OnD=.oeIhB~I,`*/ 9?wC=5 EH|%*)EuC@ tǔrС:jkn _)xM$ٔyG\lḧ_v`c8u^pjR1XCa}Yb-R:);ˡqz&NJTE6|LL 57 QMOpyH50܇YtO4qHEȇrcW%@h`N6ԛbuKZ( }ZkP|A.Ou8{>մbO9%U4Plw (XG?`o#n[mxDwnsb,!P>gWl zKwq>KZUHfr2*JRC @7_1V-lb%x)yCy9AN\SYJOOj&i{68zm2C>ǒt(1u7x=O^gk3,Git*5%3tdw({$T">e9Y@[2f08 @ƴQ-#ɱ.%\h/HTvrЮﱞ Zo[EEu]sQ8)?jB^j͹܇:źD S>`;@>>EXR8SA`.sA ]wyG5ڴw:N>`y{7@#C:66 s+ܟ"%_}tX[ W+38ylԱWYjܶ`[;^Js*#=fmo6&D"#k -*_ 4UwqAzAnhZߨvV?kmh.u4ބݺ-`+!_n~L>r'v͞x\۵b~da3!,& ~^^(>%qwNy_V69Q)SD GsΞK߽ƥ}ȋmy-]Tﻱ)KH&oα Jc=ATcn%( +l}[on 9ig8w*IlXPL#@QȜRêĨ(Dixgyv 6ay_1_  a:¨;8|(/qk@JQ5}TCO{j1YBC(^CZ{}6H&fH}睿Oys riC.'&Wu2 I;}XբT9) e&ҭI 6j0X[LbOw"1Yv_ȱ">PDo{!׹*<uTHjq,a(Uxd;Hb)"5^L'O&(QMD>s8] i5I"ȓ.g֍ʌPz(؀TD~Ĭ-ZOƞ#9Dy诛 A`(y|4&uc(fC&XҦiiF!rT.)yuR,Tld3۷1KeY+)Bn$w;}tW"1wH1fK]ta7J1Q` W H Ɵ޶nV?I((Ţw,Ify} ^`߆ pgo 2ƭ)22K cED&I$@w5C:6)&o۝X ;t&:Ҕ5{YG &~] o޲z?2%8ƕ}rη_^˲W3x&M$96K9$&kiwe 4:9יl?+6:΍_mL4 (eqS-,q>ww+QDž )yF$.Z Ҽ3iyT "'n[7^p?*G%HTEI1sTX`h`*Fop]׊{I-odЛ $ ^F]*8X6Ӡca¡tnhQ6>KѻM:r|z@,Α J arڨ$ 9Hstd/A +H,,IPǴqa~4bF4 iVߐxaQiVm#V[P7YiR%tr156qY@,B;oԄBȳڭ}B{eL'{ـKieE_#z)YaHD:nqoު TSFx&UYzuU^Y5]J`| : 9M8KZCFV/T/<61|XgAIb[ bv Rf!{GS4˴ >i?Gg"rWa٠|hWTvp*__0|CG&2T$M2=Vsyʿ ,3+}kzowKk{G>3ސFP8@˛R wZÎ\{WPĀvS]Űi A+"3[?g>%L}ɣRd`P,TAޖ&xHrEIL[b`h>')Њ{PLK{\` XW@0m-we\ZdHXaj%J |#yB#qú)>M䛾Pz{mɞIZ  8:i'zv5{0KCĦ[r^B3[oYml+OYm3t#0=7ՈY+#L*lfhWqK{bjXg%3cɒ(]D]5&S$c P+QFe0Tk/r2)Fu &+B%Qqph}=HRAk>J/^J  ܣ{2ݵF߹TO:z [*8@ `vGlyz)DoiN<4_4w6ijKL|5DanE /jILA\KmG5C<1]zZϱFZp`eΏatO"glz0CgBqSÉ Ӫr{4_PK<+ङeRRr"L)^yr}U),V # AFՈ']3N6D\~rKweo?rQ4$8hrԛؖV3xþcƀaP Aq:ep/GUb+n7im C`՝H \=Uٞ\h( T5XmՙOrWTT_c_ܧ=Dôsн!E$Ʃd?%}'$RxlA}om)(t'T&"Gk n|]o1+J>=kԚԀ8~u?] p n$mq#CrˆzkRͳHuP^?}`VtDýGL@>ھE;@PN{NHTZ]-"dDp=Qt@69Je:Ǟ^# rHXN#QxTkj&UJSJs>I({ɷPP3{?,C[U~)RS<ކ'?YaKyvC7赔L9Ag%r#% ZQݸo0PM$u UVu@6>K5m)<~RQ*)GGouoG>i\[ f<;{uY?F'Ɗ;Df[>ix?'xrG!:MgwS~`AwPdb/\L8RnE/t| A R?Ŝ/6>Wr-%\zBƆЇ=.2~kmZ&K1Q,ۭL=hkDjB`6sgNrكӜ C%I pLʜN[1A(%laVL($BtLa.v6+GYc-0H`=h8a ÐFw+:v`}/N>jCևw *:U֤)ko?RB2R&\B40߾%YAk&~pCOpttțOX Zvak,F4{uD`烲@"Cݒ ]O,.z)-";rdBbh.;&F=&{{2 &혊vq&;ˤ{{uD-f -<va& /"*cpf]wԄh"^؝Juu[Lt6I!OWOvc1Yx˝r ~pS)4e^* nZī@R rT.,..n7~̺hW"~eЊ{mgH!U6{ttk\vxC\a{EvCVne}I-{]^jPbOKF*i.a.oPZkI,;8!'z%]FU/;zPK9אnH?ؼ%2bQ̘kUe@wh_=hoQb0ore E=j lLho)ڀ[\ŸGg<>"sy@Lg ?o׀z\rQuU9s9&>cTHܛ1,ހDgbXX:QwKu&hoe*ďWNgk/.©Ҁ`c=#9Xp AOp^O#rrպ/&X\q2Z% !֟`\:&sa>y  ܣ-_ ~pn>fvj?De`(jFj!}*1QϭrJ|[Ca캩Ѫxw;+.Y{pX[ud<:v%sJ  XGJ]R+` ^JX寃 fۗG{#eOoڶz(5}ө?>H^,XsV(so_8M-%F5a4?o2%u؉odb&!HE}/ .MtsٽP^v5lOW?a}ύd\無aF#êj%1=j2#lwzLinl|v#Ln bTUx*\BIEUYC u?tHz$/rfۅ,ln*[\r cuzdK8q33hJ6@⺒PKH|9=|U.V8'|N7&gE[+\W{G6/99P,t[ac{C٥;cLz0%?L|p+7kS`C6L=.ahqgq-3*R]eEΕV1Sd3授gƩ>"͍h28T2 Rle| KPQ/Y>C(A)HiL4f:kI X;'Ȫԋ%#GR 'r%4~;fȇ)d=lj;#HKdpsPaąk76ACrnM]Ds4;^rZ5Fe-qw^dy MdK+]MҤYcxVw KSX̢EVM!i/b!UYq}ֈ=͛$JFxfbpgym\*K:Vꮥ 7&8jHE M0?iZx\aȥjfvߗdͱ"rjMoR`hgt [r!g}܉ya˝X3 Xp4"mF;w [xW5s\:6 1j;h2Nwz@o(o!&On4La-6Ԑ<4 ɭ^1Udj$1OH:f@*Ŷ6UdzcaY߃@` n$&vxi(n!m,a#:G(6Q_d [.bJcԻ3){zhՀ+yu 9)8eZq u=BT]Xk7YXYvCO3hvvٵi-毌aqONq~!ejWoS!P2!)iO.YfҬ=e}i;Y B4$\tk," ]>XOWq%"tnRμC`N QK6,"dz=_ןgrjiG"߀DOM&x,Vhn=;Z=zD}?]%M#%>5}p. 9Y(iɟ>RCһ&u~qvTwp?^SP@JZ^}RL 4u,!9ZۣGr !Nh1rBb n]Xl?!#tYPq_ef%Ih>׃m$йO%5˯wI\[^@r ;J+|%eGɞRbqټ-VfRJydHDAA\bT$ jjA6wfWsc['lFЎD2OekmCyC]yNjG̓J G/`>5'+;@|:+2<^ {D ЃG`mJ*?#.&?iDY O.ق3"f&jIRH?E qEd{5y|rSy^Fv .p>UH-BXO*U3mwsB\[HQHl |ʊ`(iUM1qA3͝avv@Gb\-:M*55/_ZǠ2G;G8uKIF* < UV5e/F"M v}YNauЌUR ; R'~~p0s;xnq]^S+* <']1ֵQȯaO%6C}׭S_$b>R9glIhOA[{a⯦Ci2ę5_OBuч~o|*:ųk8@'0ȴ30RzXQtK"$ݡeQ)~?8+~IV:j*gl=5H%AcvUo~mrGtm\A=%G?,8V)b`*eHE؊|:!HtS:ug$i.W]]-FhTDE+whde{EXRbd4z?6Rj@!cq-/3cZ3e"IدAQ[ V&A]6jL>#]Û=w/ps{`V3v -h9NII~i/o97X^k]2RUe_uPzI4j icg2#Ãb,YoG/̎'Vru#$ǘ)=$v&*FiLy;oNд2Kp:u#DVw\>҈Ny{Bb'g#).'[#"5$aE÷ Y'82 }8G) _TlPY5fΫ`KKKjixKT _^ p ΰNtݵz-`~*zQ'&E~R]"!"vœ,` 9Ec(>Gv/&5ڪ%3 tUC T UCgצ3s~o# zS*]U1я"O HG &&W}(_%49I- fq 9F⑔,7,J*tyPI7R,;#eTI;Po.c|o[sb :9 Bd8j ov^#KX?3}Ҩ t1CT.'`le&}iYkl,7Pϋk;u"q?%`E_\EtFJ!F dWmӸ>@^K;3r@>r^ %@Pjo[;$gM uRH S?w0 xS#g{rZ. GfM&D1ʈՅ݉ $L[?ZNgm6ȔJZ6~N)౓ Cs׶`GވW>RA '^ϰzlb+߻J0 ^N0# F',a A4iAx;h{Ƣ;tlF@!Iqv7v v 'ٞ&j]V| `3Vx]E doqeھl3%x$Jpő[\օS.Yo&] VͩΜwA3 k4c-'0IU=pƵ>e{ `-8.AdJn2D*,=ͥx3(Ãg҃TI<uNWxky[ѐ̹)j$|_ZsQTpT/I^97UzMHN% -)9.Xmr7ƚ욊PO*jZda|N2/k'Mto-F@r%xx*&G!JOն_'M{TOry(`\iV5[{\Cd;!Х to v^ڤNh{s)yŪhd)gDlEoe,wLx&Oc `Y02Q|]g4r(ʀ0TmS5A$'FۦT!I5mcB`IVO~VqOض vk{. Mk{W0 {cD6Fp2 Gq47;]QM9&GBbIFėv' ?{(+VdX0eLSU. (R+@= k*`^-s7=&="/㩉~af9?R<3>(EpW aV.eׅ ],S p^b }$^#[zT.%<&k\{kEzsVCgzixD\i ҄G`㚀_Qi15H(~ S$[ﭲNߧLQSI.~JscҾta(fS `%ϳn1FH6KK<Ü`f_W>?:]߽ΧcԹ"mZ1$5U;ZNT&6iM0,0y-qe?)lTd-w].cJ, "+ӛ=ZP+kBNu[C( @ dz㉮Ӑj3|'W&xKԽx z%-vIs;8#Pԃ)<+ѿ\WTv@]?`˴a!8(ົ z=ptZ-<[rC xRFۯx9CMbvaiPkM+ھ iF!fAI<V͹x|×$x b4`п J9n/ԤwF?X@*MY'iC!v6k%>:xs6`Q]iZ'|h8pE4EB呪};ܶ YaAFVɻt1STsglZU{էQG;}]ヶUr''@Z[GQ:'bh^l!i3 LYAj-̡}<;N$\ W7KDZg+ F~>3j}BʢAt7jf:P*dU@朗q~!n2NmSʞ]kbͥ=[J*y_.NEYI`^$Rly$[-2/wyl/׬8l#Bh'J5:GL`Lǰ<ƅb(eB *Iľ=\/pN).B XP%Rgp7贶fх69Q\lUL!QƦ ٺ'ڳaKaA&-4Cı3ŝMkj9&QJ ;!vX.[ vz_]pbjfN!dԍOGnoW% 啧.jLhtRqP<$DJo=魞AߨFAZBmQ&"1`5sQqeyFG0>"q’|:_v>ʥ`gAJ7 @a /_" ,Tѝ*iw١Vw '/ * So4,g0e I403@ $Vec#g!oێ4/^+/U(~2b,cMiܕ]\3 ])1 čqt9̣hI,+*P6îD( Cp*a= y\I!?C?NMmXq49.`KLmsodAbi4.T~{sC?$^=f]W,oT6Gƍf>fKh ªvymBJbkf+]T6o=n0v,;7 fT#M:E)_T\/Ɂ7Z i,l{4OEgm>;R=Rɲg:.Ax0 Ø_*qD<(I?.`L "2F[6ᔜi $t0G Ko!gR2/>sV&/1kceݜ,7%+n-,C&1HZ9OEw|\D4#Gײ@kXZ<eb<^YZQ~7]5r QE7[%Ë /n])f qlrHTkv̬ C `V؉ Cf&hI$&OEK:mtF٘M|cIYX1:KBo:z$oC5qqp-๔}$=JQDOB5Fk%3_0ErԢKhL(zԕj0W [.kSԝ%s9`م$i#ePC36R^b IJN!gI ~3v&t@R띤z8REм :5wo!"r#Kc\aϟDŽV1*UQ/>hFO"$y|g٠K> TOXwؿ ՗U2YJJx!( |Ë=ߐ64bNPjTq똴> ")7DѸ6pf/vPt ,_C _x8_rƝp9BfaH"c<zQ)'Ed Cb whwz9[k y^EH?|N޲.Fv.FIls6&o[7+>,6=Mn~Ӎ:qwї0jv"S)\jfemX*hB< 4wOa62rtlNTހT& hm ~`k2 4>!H@,zAW#Ӟ _2'^D "rA{4 w[%nV o|gdz1ʭZWB^:Ig>/adݐLGiR8{ts1cP:Lhn Lj'zenA4bX^u59٘7~Pd'0DJӔ_ҿпJbYGtsLZW#1C$ "kFԋL@՟DD BjL)*-gi?_X7+EčGV 0-Cr&ᘍ \ e"Ko[<Do="mI2' F*x 8 e|A*ہ4ƸD |>i8_sN}}>/Ƒ~^^F%rWE!$xOp92,sQ?mpzt_772>ihZxk=O~&EM8mXMD a;ݳ1x*v 8Ĵ,U2J媵 <#Nf)y&B*{.ny<+eǿwPE˕65X+PNGºe3:''%E3&[MSmY^$[ :YݜA$8w}Ǒ+BM0!*%0{~Z0݇RfDBQq2I*Pt"`Dr͝' |Q8 vbI¦"_Nz ފO\&:-uH;: TFyqV@Q :˞3T&6R\0쩐)ڍQ6!QLʷ\Wkz(u6N IHbR&:R8 oiTL zt#L ZsuJT60 kR-~77@1 Xw o[3z߹zwUT#۔d!eM`_5[c&F ȻW^E j4NUʆ |vpJ;Fu鷫~wz }P '.d, Rj_ӷ+8*ܧמ>}0\,8\t&ȡٕ1rt1C[D?/ go1ɞ흚٪1π吝)u([?5{D(RUH :y M[a"1[g ؕ]0NԊ#QamΑ16%Dba3hoCv~Ojy9yHw"OxӦxT]Su&Xf--#w1 aKeQ=MG:L#M̒dNVs/5S]U(4I顟诒8'jp B2~=od[>.+ƺ̞R7xOeKTÃgd=Á%0JHR  FÑZOOOs"&/z8B΁3ҀX4Fb7'TY.Μ,  k0~%7Q2 bDZDCbb3y +jj9їqڷ`7⨞-a\|GgTH/eL`4˄FAMn4켮G-VDTwq[3`(qq}p #glvt.(Hi/ʥ8: Uq*+YA:%_#_?+jx}Bͪx'-b/Ws`@[d13o};L1wL@AKEd1!}{T$Shc ZI0 ,!59ĜAw܁Fu͋z61DMq߭&UїpnҮ}RPO2NPzUmLgĎ,rj!mZ Jȳ~tv!C3{woэ|:MoyIMu|(8ϋVB8A2QAnd7y-1VdW72 ڜ\y*V,nNAf+yj 9FG 't"@ȗ4hH#Urr=q4h=CE3t0Qg%nF/,-i"a_ty7,k@aA#  ș*,\dbB눔wurei@XX(9f5lzH]ނT4oG#HGfpo-6/s d:RfNU24^<}CLRa7JA PLQEA\(o5d(*.wϓF h֯cn*Za)Hx(mA3weO’D_A/L抃*W)W#uT*mI(VVɳrMg:gf,0gk0)ZUJL\[_ obC{P6%ɺ3&qs"@pRiۇV w/c%5;q J@"/'1o )A YΰԢβ!#R"_M:e)Їp 3s (z?X sd?,^~S s9'RW0lD'jj}QqPU" AE(+|agJ&DqxrϢRhlv=[pXA.^1ڇ8 9 ,^[W6<Ƒ:7orFzDŽV~ez 4sNF6$=zPBC;L~26Kta!FE ]9G?QᗙWP0zCiQ!%h@IJ?H؛}&[_-'mW j#`WhEToL[itv1Fz3mrJ9Xx<.]ü."&IbEh½"D=0\.j6}mha2wtdFčvWVe^l#IPP9s,/TPU$5 #r7懓^꣥_LjeM%"x= ۑ6TFgbPtif8T|'qz%K3a DcITaV S2:S.8K±ҴW x@f"ZcƷN}plȼʃ]Q{9${`,Pi#mA︷QA9inCCm@]%!Ux]gIi 0< _+`'F` {o:4! 9͌Ñ(-*H A~cyҜ8^_ 2E3WefX,[_QЙk gʶlⳋᩅ1/GΓev19š5Cє~T K9nK/?%X+@a* .f?01Β_T*lM{`Β<Cix*Ē,7VW3MS^Y(] pm7 oҵ/6H1_6m_6$|ؓ#LJpr{Jx#n/*+`ǰa=gmT4%y4\xybKPxIa4bP&jm$K6Y3\Cl2k"Ⴏ+2 13=fS! q9"Ni6Sa%z/Mъ*ڶ6MbRQ_=/z,*^&ob xS} ,18QTz9GQ_<ޖ.A7i|;_#*q+W?kYBNw] x.KOɀ)$IF%=47&:B(]W*n(6/Ya[/@Azcu*ۦhwQҧd|!n! 6ey$tET 4 &xK0b*a_Fi d",f,+oޤsi*#5<0@PEÔǕ哇~(E,\Nl@\z [q.e6Bbq$~TKBW0S&ͩfi`SU>?Ve (nZi3KL$Pو5cGIJ }D$L6UɅ\]w8:\v*i*xH?}7;^4Sx":̟k=4z/m evr#~(8s:0҅Gk!݀SZ.|x9YX/ T7&N=&O<٭2 .kKd} 6fƳ­q Wr39+ U9a->#kաZ@33d䎇Y)n zI3ʑ"1p25C[=17ɽŏA!,}JrJʜ6ɱAwsg9d>LƗ[54TQvMN]rlk΍ii ! w|XcoYrAY'ުt_Hқ=CLC"WEbҴI<FVFBczINiBk7Q)I[(k?3IjD<_9,}҈߷<o"$:Cb([f>bu.Pu*i+Cbټ7ipެ u 2 Mߊ=C-k(xVS㏩R /%-ҘX_cdF-IxXJQ >– My3֏*-FEXyj[Z p%V8 ra^LX\&b.^T/aυ8>hBST=>g$c8dkU^g(҈g'(xc܅w_<Mg`˵Aʵb_h@X=o'ɹZZtAb/E8 A֜F-6%4lҍ\?6DJKK&u@4J[XFu7-zT{fLΧٴ%ԯ߰ 1;%<>$N{cF{jF3C?dnF [?)$ wsYP;hȞTg_/zD0um;rZ(rCB MymyEK*Y /pԏm:\p--M'BpUݍ0E, M_\I̒ 7rW|\hq6ӄib5aFosDmHZ/1V2 ܣUM zn6|کcԋZcñkS,{JH),2T L–To5^}$+S 1AFsaR'n! (vdȀ!ȜӓL%8yt'ۄ.oahP9uO^Ĝ qֈY.\b6'(CÚA#Cn8ö) C̡jypop,(T/_);"_z?,Ml@Ex|K4Xp5- !<<$p vl:ttW1XhZ+V*d0w0Ilci}mg-+M:1jT*L8Gq۳kόSَ8ꨧh``L0ucG)T& 6^_(m,`̑ka~#s%Fcc֩].Et!YOTzQĐ8t7S;f 8KS-N1ou,KWڗdm{1U%]J,1%&Pu2`cxJê㑰ե$n8we\ xpϕUp90n kHƪ?B$sv*9蔬K*6 EѓE5^_B0Fc#`_CEğSכ{yٌmx D. jfv=adݵbC3Xk(3K S]3׍ +l>,SJJj7< unr PA%~(5 _SEA0J 1b ׯ#d#dG\Z#Lp%tDo D'zesdߌ6Go0+@=MBY,a-pT7ٷҊut4}]Z=zڔtEa,0 ~]ri ![k=byl ]Blѹfqz#/´d(A[pw*j sWR h"KdqpFپ<U.Q7EXfb 6ǽ#txᴇF&LW 6f3l4nF.淉|{(&woD$f\(e2hmu38/xtc|° rl۟j#[ B9JaDxzAE!(^7H23 ־l>ԹJwqRӚ/RzY pvm^yz1?kvaPu|б} BFv`ॆcۣʌz'pS'ouY>p5oxc0ak-Mt0t#NcAeQ45kvp #Dϴ~~le8-xyiߕ//q/M(Wjq t%HIL"O%DyxgQa517(ȯʙe&Mۉ8EJ>2DEEp!VRײj۩i"!'@U?3@0[$|9ۤ׀l7W=Lg".$O(MzV5 _ԊePO4pfpAUXSWxz*_\A-ٓsfH ޗʜ2sȓ)[uO{!zǿ*0HOfUGQU_`XF/ppE|.`sn˲m(@:*]xq\sϹP诽qdp m!ИagΑ`'IT$MS*4dQ#3^PQ۫X$֑} GI''U zfn@ `ʥTH6j\&XH"T4OC ?PP2d++L+]qS+t3u Zo1nuv~R48PkjM̓[ s8 :&\7wϏj-!Y_qwBB(J/}p 7/{ )9_<ij(kS̶-$6;**.= k3D2DŒ"Wrfr*Pev_!T>WK[^?6cuT~ h nJGکf!]l)wƈQsx PIҋUlcJ w I/M^ ++2[+;KbӮv - oG6ĩFpI ^qg"<xtVε"WrP\c=bFy%RѺ_ǯlw A:ȒCɨ=$#6z]2kLGL#-tGiw[nU"Mˋ@{뽍UFo8AmzpuD[/-lF#|><=(՟`ڎu׫W$VKfih֜&NTYhCYS\\X{a%) ^ͷ~={-²(!Ì[]5aA0ndV2Z@Se<_KqZmr>IgTv\Zn\vxk8_bk>Oo47By\C5v zÉW.2RT]k`sC'U ]1%^c'b]vU51-Q qN,%VƖ5m(YKd!W74BBr?VNgp6 oPC q uʶ)è6Z@ hdiqcMSPo%r8aXg[wSDk;10qk+ 5wZrz҆ Xko̿耆x5li-$1෎JTDl/=`jh~9 f0ﵙĴ .Wu /ltd~WoN5"<}K%Ja I\6 d*UgHlj'r]bGG B0BkedxA&d݁kQ mCG᧬/֊W[.?"!YtvMΘR ;| N|TM`XO(m$_v=x/0q2.+t"\mehD, 3 afvkBb.`j~EVEe=h..М)"#j \z]-/OjYZD&99##k8הMk[bu#T>఻fCphD|3E`~K7oRy-:U/lp{q_Ճv~s[ʬ:Ubʉ7n?Vf%KM 3Xn\v@3o7~nIVF> *s]!~D)yɣ6.^MT+_n,&w;saT/fj#煗I@_)i`[GɓSDZ.q[Qzc,k\u"RS c<iQ9l`"޿KP*+OyjM .l$Vfϭoc-olP/BO!6=4jXvZ/!έ!Rv—!7xBmlq "_x14.; _+ 7T3$v!l:QDbߙ_խEe"E=k5{eRSЮ. ,`9OF\U$!gF6ЙZA@=WmCFVO-cVC?&ɧ tkjx$ry/bz8OkqA741 ur4hL#])8QWcVqӨoZbG_X M.:+7Lh7nEFtg?#;o{ha|Ŧc<,GR6V1{aYtq5R2dYBF5%#6D uCJ1'GNJ51A3jJ]$ZFqk`'k#Ħ_N\{VKA47Ba_GH_0|>VNyHc/11B7wb+7[odo1&x-}x:O,$ڄ> ٧cRBpPuk*d {M0sB2'=s.^-:xb a*W5 5,X未4H-εwM`Cuw.')GTjLujZ-Q4SswBYB.kOzZX(yn܎_!"xE1z9Vw~Am?Ǘ.Rj䗏\ ==Sޮ2i^ b'g{Mel!oZw`٠eJAE_bnΌJѳ#a'ڀ)`??GfSAغyA!폧4f Q3pzc;؜*[jf's Ϋ. @X%Tp_ r/7گn)i¹N8BRA`l3n;-Ȁ #-{LoMϳBko 'lg ~k%e9kMd9N >g]'{uK|7EPgp?P9Ndsl;I)uw傹32f}\ْ%;7v6{rFdwr{=~J@ÞU-;P&y ,k5^,&*ogXe[o4ܹaAfC+M`kw[d7]05 &9Ͼ3?]K7P1f3q&A'pDݼ `N@[h7mjH27(X$э %x\gO멀 c] Naws&`&~Ɨ:5c>pu΅dpC47W#HT|[B=I+q %-P/}Y6I9}FD!gxtEJE2I#rddd)K %cBbn -y%-DM?tEC<]q]/yzmŜ4w0cP=%*3thzv/bA~j`֙H["y6>'.awSi'2oc91i..\sB%Mgx`P/ql]pU,!TGA {0 ǚ/ 9^|y} v(̘߻y?_8h!Ulv"h(~k˕ ӄKyQyoڎV%'M3w_WVa66~]br@fВr8 o@VdV z[~$B:g=1nm$2%$c})8dTuo<&'3MGUGf nqbڔ*zQ"C='koJ,e0S-lr[2FJo(c7ԺmdÁjjz ?TWdAaGxށHZp=tR{eFۣokr#[Ft6 *$4ED%jMgdֆ6hT6?*XOX$EÑ6/yvddBhLltn&ݮĤ(yIH껑20b9 {z S{Q1v c.ƺv@ƷHz* \^At@/ [J0*f&ɀ$d2[q83E۱nLJR$mhA\%E(|'Otg=Ők֚Qs':3tw4d^\)Vrڻ/$ E2@IM &JP~G7>l$38VSߡhKK5Ww7Dnjz$?KE /Fa !G2yh98 ȣo+fUe1k5u?-L+ Kdz󻧚ܚĐ!f*%A61-Ήw t  ۈdܗ3_.eY^iEz lp7}jd"A2Ҙ"wK]#E /"OAfcҙ﹛\ܭIͺZ4Ef ZspGeNIJMށ@%tKQ{f7 קZ)+|c bf^^s',WCOG&d v8#k ୨LPg)9/N<ߚ42.2&njBƨhK pYn4Buԝ;%/鞳C53lmrռ;"KN-G)1͚|׭}Ƴ$v"2iJI4myi'i!&s4̴,\9C6 yf 4nD<~&?}m nt-p( Xzs!ԉE+@OH<)&z iLQNY5- %,שymy/6ɥͨd;ŕ6NOKEw1'<İĒT8Y|XBԨ{Zh$UuF9 Tp;s7t1qAx3]ձMP#v3'b3Åg6]0w(b6^Tdp{[{] ("ȃ0VMn3Ƌiqߢ=*O  Ƿg Xy'ޅxjn)pX*y9l5|0Ӧ~ݮEE)Wn5;ϲwB^s2- nOuNِ9[Sꢫ%ְI[T^5th>?(l8ƣٹwؐ麇%'Xs w~:aA. kLhxVM T`xe@^ۼ+aÀ W#Tьaks9ic6M>HW{X?|[GUo ]!%٫$_BoPlϕAT؞O>_?Nۑ#|J@'/;H㐨]\k.l=/%} i4vNW>R)0zs܊v^_Ug7 ֤dDwaqܛE ?n$zL HFa$P. :iޣ5uypZ+->_q㊗i ؀ג h'鰍6%Tt٥$?XmS)0f괌Lt3;Z gxtlyKWl3̓fq&@W U/3_~U])H-sn,:DL/7foU˗&dntqJp 1>!j-"b;=Fdᇍ QBz d^RS_U6E_cBbN%+mЈPH2mحu_+/ ^#5-e*@à{TabK*D`AE=**$эP5|D[ s(\*xnwXTfzl8(yLE؉I.EP5vP~<.xmi,I5Cg?pXPӇ*i?ޫ'(m'/ z%NIp<ѩ֎ },D u LOg cR0 9| .rJրBq+(T&zN U|wr+w! p"~!<Ţ ]Oy`0Ұ|XRMpR-7P.ֲ%RJr;i-.zdͿ܏hZx*v}xaCsP`vpDSL˪zP0J|\AmW@"v;z׆>nuI!y* Z06:ܫ{Oݷ Gʇ3ۦ"N]Sl+4ſ,E@^ 锡1Р )Hd%ѿZqLzY{[#D@ΰ]wsTcCcʬg~|T t4K>#nuGH{~$ mks7UQB-PCơ4?aP:#edO#"9)L1x>^j#ZkOn!FD cmJRc`ܧ#IkwgI!`@`bP].;z2ңӒ55ThDtp,߯-CX%P?qV^e}ۄ1(iJh=M;#qQv܅zVgʥ&|, :^6Zb]䏝aT5܋Ra]91t)C}pJcǘ(u#F,]+NYs;NAS0+hlAwQkPRCsW{O*k %AfNQ"N sfRsdlK hy.I|P ]ThzX^ 7Bx$y< Fiճ0T6Vn& wy2s% YmocT!<Юҁ]yGUQ,H=TQޓKLdqF-87;AɌ2;n>C' ~meItv6LdމQ&4] *VdR,ቦSGfB̬bf=e]}z tQ<0LWuۘZ+xyU1PtM 3rH 8" gM7]#%H_ѰjI}b7Qͅj: qz"Ut2!:aϯxo^ay.MrJ.[H4'k RN@GݨO5UeWWʆ#U =W!`lrzajSjWsj:̳+Q.֡X{o!jN%u]x|Ӵ യѬنEN_"+-D3z֘g5 ڎTw9bԀ͑TO L76*Bc]o[<~?艼 XSUZOBfCe/w p3>Gh8;m-2#Zͷ8V]h N';ϫy)\x>qUusasdǞiA9r t$%9F.d>^uki{]z_&ZyT"8H,?(qn4t }o,HJ3Õ:ƳtA{"vd9"-UL-]qG 4.*lZf5_MzmYD3JK0-u'얣r4٧啨7”wa\w !#FLc&,if`44{N,UP! F0\PRChz˫Io,aZSם]Y`R2](NyfU ~Hs5;WQ)"@=cxi<<n3|bYi H ,:8Ӳ_&!ǍBYUE$';q#^lLКdFtfYnFazE"G@ 7=dH(V Ƌ+jQ .{䋤(QLM!6EF5|5udyjqx68'>Xtޏ?Ƶ>gN:KR4ܿ}?d Bt5`C@luE|i&(e 2-~ 0L:F`"']ni^ʒfsSu"K=m,H ǯ -Hj eOj|"L?ۆdRVXFCgݖ4G赔NeBr0~0;Cr9UX̰cWqlD*ћ`? mZ,#zv]u;tUṲcwZ *0&,z6GaI֕U`_[bY_";RI*&fe`>U5AhHKL0ūW* 4 ^UpƊ`к,7=+^C. VH'ҸnMV0 >[ DI?)$knmF]-$@.i1G!4 CwӚ?suh [;?-* `o'E]`q&HKj$p5y!uLjn%?*#&yKznPXmq G±䆻5]E4s60l[[(؀+{ 7eQ`ELs|gP6*YK)\]ˀr3#\wg(3!(lU)x^OMx4Wd18 'sNjB:-G?аY)s6J^7q #RGewcK0G85+n_CN gL|UvmDxyTocbzvBO@$KѺJB [Rg++TSOYxV#s1@`yph8VM7|yG({  2/7W揻HzQ^Fz*YJz+ ˆ Z)X f/LƿS^1įXtP_G5;ۏ|O`.8s_T!C?bwK>XUl|ISlQ XA>&+雋I4Zѧ}xqP<./Bkg,2S<3m sRCbTLsBF  'OK" 'sm\|M1kqi1%;im9ycKƽ"s/'SW vst*0X=wj]׽6*EQB4KQwq.'99d~\/ E[ RG0>Krx'V\.Mkf4kFNu'Yt-F$\-ZNq 'Lꚸ%ai ׳{t]HYHd;v _HiAp#HwhxN4I>Q.6MC϶PEhblΔg=e # ~XC2]*Xݗ,Չ>[#=ɧ%q^Qډhzp&oCsa#V $:׵/JUY 4NR'G_ig+=w|1Ax%eS;n(58u.Ӽe4<,CrEDN^Y>KRG}ls`p(I6}1r0uzee(Н3m4us}>ߒ)וTpMGXk ip\>$ @rF#WzЭ<5Eݵ{P}T[?[h }2j0zy'oW ܞD)9C 52&zC0MjoBFj5+$~QnsI~n!lW"vh{S$6g]Vp0í@`^&+k=2=7Lʾ@BgvLnv3r pSR~.jPJڷ 0?kN`g/>iĐO o,9 l֙pؕ~G £Q"0ĉ,i2֎25?vDz0'zE{ D0;Q۲؊+0(Vq4MPXDZlTYCeHckxM=O["USAM7*˗oE_RKqnk@*¯3_ĆO7E1uԴJ&@ wkH>Aj:n >~᎓U».ʬr1&[7Ȧ}5%HͮȮ0SMxB!'qrbo˙ljSwL(nݠT+Ra$.T=XE@))O=:tft^8juz;:Bȋm&` -@9 A 9^2ΎOa&bym~R:ݥ [iW%x͟ΞWBuIߎ=;+A-OcŭuK-k֊fM[z;BL&ΡJ=5?)xvo{S%:g4v]njq gcq@X><+ߐ*}BHؿA #*n:L>! bݺT6`V2>GS2BFU,Q3}qYA]}.p;yքp,RU1a8o_|(<6ku~`欢)뤙%QIԾɿV:&n,(&Q}Tj >,X4Ո}a SMʘɑ:~Y~B`m\{?@L<L:WPw!^MwluNܟ<㕮:-U-)n@ o݄TβS U\ k ^i-sx&rr/ 7ػW /%OS35;EMGSi{!R,0h5X{-7n-K1P/$l[~0GgyxVw"YճSEmՈ# 5E}(rYyשnȺhJNN?L? lrQ>JK:!KY롛 uFnc1Ir q9 #fiW>j.3vYꥀ!-?;U~i^\[1٤xr[b7s׸<@H 7{-SM9դ;V"^ Zs@2Șlg˘(O\[C5@EW5:4P8^jeOWv窱b5iA]Io. a&kVl?19_KT,"5;r,xwIQqG'U4IedmjIiq&U (qlk,5 (L47W$tM9 j}niTU|mEci:잁ӿl҉9c_eJ{jzW,O8Ǣd}H  4f]Ǧ~^a 7Ĉ~ŷ0AɆ+4v 0ɨPO)ovr߻i{oXvz0\C۸sN\ѭ%j]Ar!<{fM+KaP^p409YrG} &8oij89IIZC?_842Vx;|mLو C]UI+y_U_=Nžk2|-ȺuFwޖWCDHjRg3i=WAv֮A'&AȻI2W"k!p1+HYm'z'tJ43w} obl])@(LgK9 Wo8mRtj3e1=+'qX!B ywݗrT;q@0< n;6v[i۳]ÍWL]3n:(2g).ϓĐz$8jb"?vڳfb4 <[ sr۱ݐ݌"0-B 4$nF{. "V iƚkӠ$nEGXT! zq%f_YE%)2!pmy$5 (F;} BZ'Z3-8&W%+;VJk0N1'"a=&g1y* YS-X.r;@&/˭E0{9U CI@I rԅ*Qd^O; #>S'׆oUiJDK{@pC2 b5XL h֜\(fL,Õ%6B\Xi31pO)y!}5ϖb3^mz_eea5 1ѝr.ƊSgm[5'ۙ!x;JVp3Ÿ"O^~'FRI#saw=#t/}Вw$r0pQ/>.ϊ)? gB2~H;  ;a_-ZV| QƛN]lܨ\{_ Lf7J @!Ӣaȓs|:c%tVQ:.杍hǤ*^˄P-c7ua&N1s+59I"oZ:=\qo(fZ%D}pY-LT^>mv2^rS [?KWu;nZC^oXwlԠht_~g]D$4CY'?B:f˪ݵIJ1Fh]k ov|s+l7Q(Nd sć $'=d 5D0% F٫B$Vw|\qyu>{.;zC$nb,WB&߯@ lq#&HUXK MΠ"{ЁR$T*ӜSC *{L䪛 WLb AO%NUyUW0:_]7)]xrqg*̂}6hM|tMX8nboYVͺAn1풶Z ]RSix'\F&,sT\U Yoaj\J2Q&wKUc1FiBcvUھ1{AnYw%"3jTe=;,b{r/GO͟nG&.z}atIn&YugdΈQcnm~%>k0!|Kyʔp$f 4H"%l_s&2- ƇuւiE/5jX,HMwƕ6OtLeB%;_\{߽Lz* wZ" &j-IDqL*{d\k6;f9pZfK9\WOS뛷&+^rM)@QQDF@CQZ9xԈnLv?psPtOY}l8y6І5*Q`m/ z>,+#Na?St(Đ-v kj4 HE[u)8zh*LOh)d%Tlj3 Nk?J)¾[~U) 9=/F8<0;/sOBfPKʸa,]yt&'662681P6N*š}(ܡq =\kC%# xz`ڒ?l/I,[.qX[|,ƴ-ǝ͛Gx'N_)qVtuJױ[bfԨovq?P{R d?EI-[Y@Ps~f1XՌ^goE;0,)9ˀ ]NYLК OJj`=_ ͶzEĺܑfjQ}w[ q!hw-̋͞(exU7bgHvII܊%L)LmwY,TT(X=5G62y v }H|.?5%/]6q^֧(җ,TS YCR[9G${>O6CS0^+FȜpbF>hXaңnw~Lɳ?эlBlx(:Ze\IvD\ͤkj̧nτ4ЩF:F\"?\?DvlMGA=ot79צqQGٲ?Q9ԗ+9 7:ЭE1.?g Xe+-o<[ vFQ_ *#jo DYuu3: )Cuje%#K_\ B'Zidd@S_S$5[u_rίB瞡/lE@xIuT:%3U--zL&~ 64cH@I`Hq#d[Fn*@Z^^6Ӫ7uPCLF65S)Kbq,'UzGNdS Gd12ǠZV 3J}}^< pG G}498,ײB>2(wQflF}u [K𗊶nS8{TGkV*}_A+r1d,U1Uh*Oĵlk&>vS׬i]꾥lݞ!c6 vṪ}`V)x(8gfɃ)=<4&=xiMsޭ9ߌ.(S?̤JbsntrH|'.(\[>"#ޏ2.pfd;|.B K"҄-L±pUJcB۪dtzMؐmxjg1\C8A#i'́ r4_4 ^z7p.Yp1FKJ"ɴ,aثw|r<ʊE a3تrHSJfbʿC{ܖd&!Ac'\4kz!3d".|K,r^k? J[m [#в^unvHWlJbp3 8V`QI-VbV.{GOd-⵾k@q3ikFcK<Ɏvz8#[dxV7 *v!IP8Qz2rNN*顪_\`x`a13 Tj4!#?"9׻9tʉU10qRFBdUf F.Ů?Gr@ sC6(s,$ KV< ։,s-LbF )u/h>X}᨜˯{=%ڰ;5&nl>"i?o3aO~o:U(t!vni@@('ڜ-ԭQxRٽm$ FҊ pQ=UCϾj-[-&@ċ%`_мHz^ygtΎ!P @g"'0 ~?epP[mS_ݓ40[}'lױQ.~ ^ !7~S- e}%γ6LVKRZ.K!xȂbJ]EkAR v5C(1Ҥ>xY!=g[2 ^-*V?JW?)m +V[pe6@vC~N+${ް;M%tPW fNٻzε7$WfA) p= 4SDsZ#֠9ce޺Ii:% P lnȋ2t&ᱲq~)~c0 ClJ$Hf;RwIve :sGE0\XkΆo4;uPݲDiㆱzewK>s," ֜TBXn3E3 W|FfmW?uAga2z{ T<5!1tGE:yqZ:VahP4[i3yM*8|%]_k /sF7Zma'x/>zC^shmLTQ"t͒ޘTl`[Z\ ;6FMԙn)KcզU|* ] : 7u>t-~ݦy5 X*R~9Rw`g+{BN Q[Ei KViEYG=("*eGR4 9~-D̳+̾XRm1I< i=E!6Z}%7܇u.$MJ<_ o#^UuD߂_'?B4R[˳I#܍j[_e JC[񽇻mF P)KOf1S=,X oy·3 + z;_E,S&dG5wsZT{9z}X3n\H[m_>g5|bþ_+h66EƇ5)_WV!'05;Ly\H=TCG;㻱5mZJNh De\?b=lgh.QRT5d|<* `O, ,箶7~dWg1zDt^狲m8 _T/̰Ԧ⹼LFe'/䍞2inC;H^ yɚ`U1!+ qTǴ_GN3N#x%߯8nu^gnj3qg)"RAmc ̥42%H pZYA{c/T8-&G*a=v_pH1aI=qi|'&wda/xD?3'IpΚOij;XP>uqό_ i\3v!{Va5Evx%,0.zwkeJ[ߗт}h9ڷ^:41^KEc" ӺewܺN;߮OarSȻJk#swH?kBl!j||,#Is) -S%UNyMԚcm&P ]mF 3A9^R} Y@!F%% 6ءAtw[#GƃI ͎F(䭈6f^[?*SͼaƕrޮQhr Yo#g҉D켈GyQ92bo0 ѺА>}dPTw=3j}0Fso M 5h>Sθyy~)ebvNݩ\h~GDčaVf l/jemj#b,$yCHW| [6>G>] лU2]H_fK!121o˾}ת|*C ~K5bzbѬw6 0 /cM!J~_$T\. )۾w r^H>~`&'5
P#WYꂪn\QZ )+ !jnݸ,>tȉ3ĆL~JT *׋2Aē<뉚-?߄Qfp&Pa=X̀|߂MBU^S(mh/p%6y?ى7t sYNtkⶒ}M@bru2k߽- NW79què__4x7gpbcJM>(%1n؆)a#ypW+̝X`WBh Y_u;- 쪵Lc5Zm v:_YRINW)cB R\˯ʓqUyxmN㊲G`8HC-{j"d]!]/zCp |>4ABI@pɯlJu܍Xg*H0TMu$ ]j5p:oR &zz˕LFv ~r =+ ?'_E\nmt l^lc[PzZv/ 7Qn)Atnh>TVi ϡAס'oswHB"U9ez}=?~WF Z铘 ֥^9 UN"bY0&5Nuu hZ Y]ٺ W{7x'H_q*dcc+Zf=G#<%tݷ+b.DDzhd:4o7 ,˗@X~}UOdN^V=(%i"YB;ٶ&*"l@ߤ0Q/z>#QEgj&jN$ĝ? !%:' 7ng2D̯n06Ked@ M7B5eNPǵ/QO0GZ+j}|UR;5)V6+lf<*rT|FMb*{of݉jK2%{K$#&6Z詏K^=;tKvuwyjy/>?+EiI+ig$x6_vu#׆F8QN=8),~͑eV\8r _a?4=i^JP,q|uj-:zZμ P|d+u M B MxatqsIֺv5fۈ)$hhdL/CN1C,iy H %G˜6-LFVC596]XR yUN ZUm3-B_/_ή;H*VX ~=1pUtN[@rK.GaaUbveE>M 4t"3&].^I758YG9Xn_h/:*^ @ dqFXoC{M6Fa`}D{@k m2P+eߧ0mq,?o5s6+~rk!GA8;Y gHmz~vFRŕF6byЂCǞ,2'6g5eDQ00sHKDeIx$q)qD&5~b?OoQ?^L$ʽ4# e 7bS^/fL Yz5\c:'kjKLv\Cn&JSGgKPhkt[PhTE},8 cF<<2߁6\TӲ 4Rh%JqS[r{Nm!sjS*w*QbEFA¶+nOt!GV2ˁtJS沴$ o%A`y2N _>6 I**mvfԖ}y8 {WFv3itҹ]V-K"xHTt[w>BT1p"`3.Pꙋx\ۗ6gP] dKOFT:*MF Rhi >vpSBHAf"S!eAJ vjKD֫;k疼'ϫL%WURZLnzc bppa@fX r<>~2fpsJ;pHh r{ZKfBN,11jM mefS'AE六;[\w{$c9X#9;c`%PpwR[B{nh[,G`+7ẹx0*S`4LkTBW}^&p+ 3yָ[ ֑©vPIJ.^.aͤ^x}h zUbG1u:~s}IEmb-p^AGO` }C'.YTNbfB#bgW c0zH /~|(KONgt޵Ur#%  w a$# w42݃9UQ/Z`84fuRHm_+ %C!/pa#h Ug-)1y8/,V zʿp)Τy*UvoՑ;S)IZ)72vO5cRFiK%c!(Eیcp1+ѝ ;?3,#UbomE0ɗ la(!11tؕ(pTD>64?@5gEPDUaq]eL1GN7O&w(rPX&6X:}d I*A7o&4&-_S+10]EVO8f@ޡBU4)[)}/1?~ԇ*`" NeR; }(w כ wH(>%U49ϊCwu~J/hdl,n,/=EPȤgQgSff'36MvZ!ή0Q^+o(%g2 #>P<9xm [J#D T%4GȐ+oKPj>LZe7ezṀrr24)9 7(ě kii!w,` c/ V6Dnb3gfjb<[Ŕ6FKpIA+7v|}R>U M `n|˟pn$4D!'$4 5un4Z7\ FL]d"95b~qJ>?AW̐Q-Icrѿ ϴ0F6f+Y(4 oDL .EoUϵ~!,t.?C#`6=<\OkUSb=+|Yev$o=A'/gцNtIfXʨ (Ub@EYՋMO2 oGsҪ mltiζFjp7#{\Œ>Qp_r @0Tu"ïJ]D ό){0Ȥ(N}S|" b& jdA?ckĨw#5!~$ 4 yC=eXԳ7|B6hVIԿbF{zno^1W].QB7O,vf]µϷ|b$[ZekDeq4ZTMMp$0h/WDYYh]usMUsJPI] z)nm'Ҡ@a@Mmg~H6^inV ArmaZk_h-ՉvګsjX=PK|p@Uf= kAU/݈^DeН"j=qGIhk8՜Ή$$F~^$RkPᮡ\OjDl_ _ >Im5lG[9/y$vy@x V&4"ߢ/je!K1e:-iuwPsőِtĈg&fל'BW3y]&)|mGs,gI$Jv+џHFy4̫/1xReNt$ą@<^X]Yrxt|dSa>M˂Qz-; %M,$8wjlbԫ9!n~*75{GZW(N덢n(&'lCU`;jZ恝5h J)v0Y!%SX#:E98mSw&áEM riTӼD4o 8xt5lV4בt7:(@R&7?b:lc$U85V3,M$^ԭS=76HAAqGS v'~8:ǟz"_tHEXOFBYz2>|W358Se6v*nq ,J.Z_ךiX I`^.{x0NVF8x!_9IG:]m_R"#ǂY* p'ɂ"2nMŠ鎍 Tˆڄppg5\bj!a/%1iKX *& t)!o)A0k#SbFIJ)NCTCȚLPl$qSR-޺ *2udw C XIqq`jfbЊ(K&XF*]fHwe b)X&nl=7 ?g5ශ.L%r\&ejtb?a<](lS`:Bj>?Ȱ(Lkj4ؚ…B$wN1JFj5s٬`zz{.y L)8>|ˆ^/;lPTZtd?Ge#&"5wrOd*L`d.H$vףg/$Js؍qrӑ!s uO#єLEu6K3j--Y%*ᱭ5{ˁYB )3W q 5jw֔i\78sl:Is!=g()&2I&r*@Ub*@P{ѭꑑ׺ M]Cw-=av~@*( H b%j&r9q4-6W *),u8T5un02ͬЍVNy!E}؂@Z.Z7rPfA4P.L,r 8%mڇ"HS}) VDQ'lB&}o)+lk5XN푮2$l5\2yOr8K}kpJ kIt}"2,S^%꓃? R1*)>6¬yE$c):" 'L^.145itخFtmmZ$HbQza} 8-zjqF#+z",7zb|U}*XnԴ \@Ypa6Ds^$cU6JgW{^>3ji0v&]2+mi~iV_εn&I虷 xׄ1_3Ե5 Mkם% 35;x|R"x! VxQ<3wZq@ߍ#c]vFr⧜^}߽ΧflHSϕb,}A,oMVFN8ݮFm^\MGA@=Lh؀L(~* ˑXE{.u}cB݁%kJpJ aKI k}j֖| #owHBna[awD-n!+h@d':}s :~G&.&>e!rkTMZ RgF i=cgȦhr#=+̐UpH1[ S g ᄀ ?d\tHQ?b! _+)fdnlV0R"df v7[3*vI-z=E߲'XK;&C|-2^sl֋)嬾!ݨ[IpUq(.QCH7]LL| C5W!/ vgbUݞ6 tMLmoCq:2:LS9Qv.€4? הyf?6rv 03M:cuA. XL0Z 8kˋBzRV^)Ɗ>o&^Ys`0DGJʹ&#!8T$B>ݴ9 XhA1W7_llI ԇD ^mmU9'(U;arÅ 8{ Z>ǔ|zk:ou yziRy]P5W$wws9U7 & VPm d7F&r-5dai j?.XԭvrqYܕL @jFsRs;;4.&Τ0N* IjFHtkAoTKv3>v/֜Xn\HQk4_@#򉈘5JY\u|͕ "nd6#IV\Ln tO\ ;aB-'{]=< =ܞ薘X0jUVrYʏU9n7$ŠJ`3%̹kώ{i f\0{b $ |S5 ay]@t6fƁFHhhL v/9w} =a[DαhXGU%@r#Ǫ\& [RW1\.nFѤ O2*qVOډӤ1VFc?.\>+6-MH&zga%WFH/עUSBMB$J*Q#.T jhmaHV7H.|7i%WT3a4V5f=B3{C ==i {^MګQsSk{ꪼ+Ԃ3FOв, }PdD0JtF Tc :s_I#rj&a[]l(?v]f*e?W~t]#C(g NK4Qi&_q>2Ypkbld]'Ő]xܮ+ߛċp3QL.څe7bZMWuѡ՝Um18eh-gd>cBsi%j-\]ͺ^ r|3^KZ/܇' [A op~ꕵJMӔ?%&?%M'we lL0Mg0Z8{?Y; h3PbHۂPN]u:h!ߝlk\jm]ey|ۺE$<:SMD(FW"`=̆`6]^=шs aw|}Ӟ9Y4t^A"uǼ^s;\ <&բĪoMuRfx~nMJH#/G`4nWluo[Hp6|̿'s.lt¸~ ~Y2@֢ݭ#ݚw`5a: TqM2Zk6^!^:QaJSӯ-ATW!Pw%RBdcYAIj`0Gڑ!s@RZ('8'V¶ GB+["ȱ~ *pa33cܒ?2x5+8yY,}@l~ Y0aSO5n24K)r4= AA)0_Xx)~Mi޶jTq'}ݵ5>O /bfcJ[leB܄KP㩼'g6&zt k-Az}E^?2<gvo0h,{0]=I8G3=h994—'(ԏ!Jo,, &m;4-65\:Io`2 V6d遌Q y,>.sӶ焱Y,@ !c%_ɾmJRX "&"&O[a9Bc{i-$;?؄rzuD~>,& c]MF1DA~7+<ۑҸ2z/S3s /%{.„d‡-TS&Tk D ɴ%0kH{^bb%3K*l??8 L^Hf.~2h3R0(V r:\"yN^ 7%ɻZ]QG)ղS|>H\b*4YHm#a|LI<J'm3bмZκ/\qrXX`ޥykٌɅ{/k&:yj+òӦH v&v"#0AoHE@MLd8PlD׹)T`k>BT@^Z1uAw>Tfuh$Hs$Ct{ãɦbkeٯduBtȓf#%  %~^ J.sQNcͰ81SJvҨWG&0s2w]8ii@kAh0~Ǖǘ̜ y ߒ#ZdKT1x+u4?3&TS=k z)X:~/c$D6?0NyU[}kH{tSjF>f|Fk:a9R62.TRܓ^0[B=[Yd=/~d(~2CCMooT_qDۧ; D# ϯ*:v_VFI>Ɵ}OŨ|j>d 2n(磒`l-0`P<_PI r%.DXxRUO3jDzb FQQb('{" t֨Ma k7~EcWngaݽ\tɾr'uQMuXP{YݺN rBm D51ӳZwbӷ睩1O T̫^6C$a Y+犎UhzI2Kܼҥ l4㦬rmoN+yNg`'tK ]:BO >3 e^ qurЍݙMȤdrzRA<9%}I*m ہD I&7IBw=|ҝęKWM)3Y:*h8/?-5tV4vg"A-ƢPzjV]׉lڇ6պSm[&X̅I[줮iޡ6q_r񈼩[WP$lKLܮ&f(1O5Iz|kΌN؆}XRWBw,z)+GxSYHk枀ݖqXkRiY|t&~"+k`!FhbǷ~'nLy[ k-$N9(Q}Q\<`*ж:B8 eG׫ρnKS7Rko<̰!?nžͯgQ&X[1 le F+0w_ +2Hzu z,){ P8kևQP64X\ăb[(52/Nڎ 3/Oż%rҒ"(FWL'vtN`nc) jbާ8XPq΁һkXuӔ\@pKh1ZXB@)8.,yEZ1>('U)/=`F^C"לգO:E::>tt9˖3}e߁Ss> Xh~."a '%%v扉]6wf`. `V (d$!n M&|ڤ` iP-i34dY^1ӊ2(R.fl֟΢8GZ;nK?zdr>k\[`! :" -6qQ8%xd8/'FH ńmuy9> 멗1̔/4U2_yϴRD q]Fsi;d\~{̆UqCFk( c"' ^YL+lK1CeUrY>Q RKl~V1*=RYN|ɯNE7]"@r.BHL=82Ss>g~mwPQv*דAtT4JFup1G?d62;ED!VYɎ4gg.yJ,tsէoR Ll%?8%@r<ԍ 2} ک=Z\,a)k>C0M[9D% - ά VgI<( z0 N\0)_`є\m [z(mr)zP|SF@Dd(|&A`a6K gyK Y#֡T/=.]Su,_d7=W"\!d] Zx8]Jk* {pl?f_NY:=w94ް^LU3%ZqCStx;M%$3s+F#+뺽ce۫&"t~ W=D?Km#r)}0 ?V햟=v ٨HۄUll`.DC/@<T~X MmM{<ˎB+#]eeE $tTP:"MnY,˛D ^؝N50ƈ2MQ@1"Ac X[ۢRX:b_%txNM؀rmqV"Ld5! f~f]1#y XOeXW)k(A'U7SI3@c3H[eOQGf0Ed%x12H71geܑ@kyi/o˶,\ #o]j팘Zn ߯f|}OSm"8B # O((*H5%Blm˥\&2@AGƌ!! 5D//%HFчk]gigB[r|cv )T\"Y ܺp |Ѿ;Qs%ˢ';ԡEGZ+ ک[/bv V+܁bf|oFcY ̳l6 tPt8h2vQJ(5Wu+HJ>̰1` G+.5a5a*HAKw#19w-m@G=zW`nd7 ӭ R6.Tr+x֕W3d>lܓa,aQSU[)巨<1sA3} ?GU5*W*yߙ,|e0`l&[(Lh6f^֯K]t fS` JNd5qxþ&V 77B5:Z5s,>.i{ԅLPDfֳ>* AW9=۝6 rJNe?t[OLI9ר3DԘfsjٙ3 's|s NHoz*NPl28KSfDQԲ 4;Ϫs,Y@ 抲F{bm@}ʠa&j#&=ͭN>gQL oPDI&*۾7]L+*xjʚv7,yp;d :nkz_(N}#0Q7wtfNͭĻMGA"wWm^7r +Q$Jɾa"VziG\Dl`]=K#z[-70ݯ^htG9+XƊPX7b *'kV/p/l~ӎ]{`-H.1_0V.fEW-A>}$یkUIvXlP bĺfLn\%!܁ %{5/ `po#nכt\%ğmNxP 0a^0AS!($7nn{ kfVn$:vd9%]O 3ͦ>żgl[v@PsʔXZ5 + u<7]TE%> CD2Hu$lDH>>\yMtGjmT#>"˦=BGB ҝyT 2ccEcʇ0ZA񎢝qV4 ~ۅhn3ػY{&8DU_x:ϧ"9đ(2\82 _# ͬ`h`[ $Tj͑5K ->:u >]fl"-;:DF?ƜN^N\1{_r^+`ЄS6ޡo2.1_۪y+Gg+ G@]9HS=/N2 1 CF/T΋Ll41/š(I_w1U&Su&(Ŷsvwj \;%= 'rQIsNt/!&  b 0gZ6 JX\SjVF+!Х4kA?s&|evkR\$L=|5 9 {rxF80Z@v9-iUܭ:$1KP)"  SK6c&t9s K쭦gBIIajo&g]D2$cVS!E{u_T=f:OVk\_DED6X{X?%n!f_7\Wy=Cî KHeǗQ /Hvے{ǁ]udw} 8λ"H"GA1pṠ`nRx4TP ۢMOfh@Ể[v:p㍎Ɖ!])i 5n;f#o#4n?Ɋt~Q ?RqRd7of^7N6V>߃3nQ#[CEz9޶:{N@ۼwJ7!RNsŎYÎ3A^܊Bݧu!1>GG%LlHύ̚j]v)ɘV@i|6IY%9L{j>+yb7x~8~fM1Zַ_7?=G%k{,6,zN+eowݢIx-/[fVwS9YrA2㹝'?,Nw *.W 4$[lQo %Q4ŗxu$vc 1J%G>qN߭W2iKr]6{fT!$J%sJO}Rx0@e wcr;R"&c42,zڎJ5ۡ3u|ȋo7=iov{0MՈYQlM'I N݋OhRG!hJKƏ6^ jni!449[aM UG Y>IvnC'rl{xJL# LcrY"LڳlAp\_N0Ml H[VKy|:/c5a} A^lZW@ pDJ:ez.jO`> doCv̟. Hr0:yVnZlꂍ7NyX7Gl Xl n[Kx(\K9:/o߱!pkR6R"<˧!]ILsM,ۧAo_tU2\Dd n0Dy -_V%l˚ *vԺ"O_n..1̹q@ϵj4Ɖ#Er]ۅna-U#'߭I~gd٠7`Zn;td9$%uhq c~av#IuqlzWĂp9czg|e[щrSJED(/mK3J7m9Pvvzˑo2X/"S?"4scFJx!qv1JzRjDWKzᠦz:>)H1Xm*Ҧ!-#R;BΣy0p`^D~UFq_Y0 ӎNnAGΨ'Hr:DVf2sWw. {] $~euHJFS7r_f1rVZ! \͝߀ ӝ,JZڹxAYT\?j;*L>x:?JW ו>Tߥshs;p!pp6j'r~QX0LƟ9'ygB. i$ /]Zӥ_.֫p쪹 tpg6 DGH`{ *FL!K}(cC75FDfx*|d]n ГThT+YHF THG"ӊߧϛYNy^v,† B<{o>;;lҘ4 6o(Mdzz y]}XsJ6 P -Шk"/U4?hnk/3MWJFp\Ĺ":Lo̱Z}C9rՅ->6 9!vXo϶p&rqDm>aսvSaXj og]ⱱܡ^,}I$P)sŗ<wS<ǍMXjЦgPq _Az}@ڰ;&V]-찵5L1U\AL^^l>\|W̯GαӧxuPdD9Pm5+bKSC+m%3Q(7P6_mDm5@vtى7]cJC<{_|#ᶠ|M\B42,jOh,l-zȕr־r`P_ck"^fŊ.~-sN .ɲt't;}zo!τ=ev'@dU?}ڌp^l }(_ (AaF.J1Hg`P/Hn\~Zu?pť5ȺHRZfԯ~6ihgi9Ҏ A+h_;ҳgTE\{1$"?vz'?,\ڥRyIc<7-ފMmɔWxIS8q%rEl3*w$0e56G[XD XXs,oC-ug26z@j_۟pxAlv1h ^l9&ߋlmfzݟ\{fW9ZfH ʅR첐8/Ϸ<9J 8p,fvxfb gx녳pDZhpjR`(Q7Θ"ܳ1FD¥зffesDGoruwT A#0 JÒ@⿯-f0_6 H;Ҥ }~!0ф<]u-@Ъ.e砩L]j4*G>ӆM={ CCOeTΧ{>*湼&PHt zVcXJ9r*<blT?6qe~gc-;YCY>c@Ե'({X.[8 ;Ouý#Bh}V fxm'MjPP`"e[L[iiZ=p)ALtp >Ml=T셉57 S5m]p5rJI0&b \S֊^uĞR+ReuĺwJp¹i Ǡ0<S8 )X`H&Q(Ft@+Datp1qh.-8buo^JuFs ߒifKypWwL D1xfx*Ļ {el6l/ĝGs(}ҙu1$zMz |-;Y;֌3l[ rv/ےf]h<̀N3((#? ǰJ@[c#R`mΦ6(̕3 \+}ReH66m e&3Rz) zX2ecKfa2`G5wAbЫyDt?_yv3,q ]>f6}RSThur41ޑMuMM>cyH(<ݖAl~->mm L;1{@7+f7[8bi 2 t/jf8;b%wI!<6k4}ʄG:0"ύUHx#"gpwȩmE-cܢVdbdnWK@%^9ݱ<m3N (]ke]r*m<2:ʁcP/_=OՈSyiCA)Mq(>Na<$< !y6$YÃb:g%y`d;zrb/l)T¶85'%%jfdP$p+٦ɴ 3]#U,ЍIDO|Ȯi [eu{ NJ_"eUc `;fլD/3xa@^D9FYRI5z"x,!t-x6!?7Z͗:ʠ X,7@5er.W*.*K=\Uq[E"۹k4 H*rc"vh͐xؾ%;t0ޡvK"Cj`DLF1s 'zggY1Y@7 7bXguW݇fs]X'EwZ?go\R|˳j aL?c^ɭ@p ] {ГX̲_.;tUԝ8k )qr!~t-Gm`J;$$|7ƷH%t,ڤ! YzF ׃f](}LΧ(6o؉5Ĝn[sfߎy/DMiOۢV"بs }|*iY Ő"~GH;69L?P*~vp۷]NE0c0͙v`ƍn݂=*cA>R_P*F.ފ !9IR[KMl>=;gݍFAS&x7C6Px(p0ui?WTQb#9=UPqx]g {"MNBfG&R ;j햅ԗmpIx0޼MiׄW㲢< %<إ-|J]EZI= gchQFL5epǦm='$l-K8('cj FaD//G[gp`\UR# [9my|;bǞNҐKY)}7jU`G xYp+( "Ju4;$@B`_=$;v 0.`re/8,L y!`GTw{&+c˄Zo_q9YdJ iI Z DT(!+r"\n:EQQ.ވ٬Ɏ/mڡKvЖP5,I?.?:B89 6n∋k/M ,tn}pՃswP4Hh1MNZE TT8*9jVɔwU0)U G@;Ve<(K~]kR&ֱY(N$ 6\,Cq`o ^\k r&xJo[ؒ2L0Y u-v,9܊-mtp3nӱufSBhpd"|L53q[OI8͟T$*OYlQÆ c~\˜5X~&_s&K8e||:w(Y qvBx9\ޚQs܎ xt$g!B) fmC(k,^7 bFLswIBYcqk_ki/k lvYLb>UQQ6& }~OC(:75IIg.# n,O +-o)a ٱd%HQM+94]8`G. O'GcjrPI:qmC] ˋdf,BOE^mP5 *7h3e[p}Xir>߉TyyQ /apZHlO'!AIk RPl jIy@ ~[GnG 4aڍIj;fGnt$+i(ooT")pnsg;ǐNpcxIz57LPkJ8UDK2 4h[Vi{ ZpcB`JPД[3 >I#78d.3+ԧqQZw?YãC {0hB%rb:*KWrIiYAR h=)s^cE."3ﵛT^ˍr ic03v$uFr ua& -hBB1I)^(pX\ϊ -V\8'M?-Nu>[d$ "R,QY;ehÇ'Oi4fv֜>-R/Z"lir Lya>RYyhU̺_S5(֘y! FR( 0ã.lQx,'#t55m z;cmRe{w 5N V,g9n|NVZ91 .eJ cGV<ĝoO 7ek C]-%Po]HЇ0F1>tLŸ b6撍iA̸wBh'4:)~K}Ɩ86TV‘kw{u_dbsق //Oܛp:r})6f1Xy#qcיYlw3#'V^+3 U!fĩjVW( ݂fO IgpbVd ;Olҟ(uJh47xfƫ7.+ڼ K'R zKv>˄H; O" Ѿm#ЯO3@)2b/ͼ~Y \QXF ȿu '6!/uFc;@D4jP36 9^ .<7k Խhk.%}*"CmA4] ң;ηs AcQ,=fKE1 E<|(~4@Uq>l%aޣ vgi*jј' F`C`G|cL܄|7 /H}8*ls'8ʦ&eF;Hown>(mw?hy|s'pn)q1qZk(tAWV*\r"R=_G޺rJb]@/K4g{No Σ)eNo#OLoHU;yJhU! zop1KBqlr'X+07378ңUd̏K3яaWM paGyc!L~ޫa9C~һCt{q%Un@ KY_CȦ42lӷ2AZf!dFPlUh;rusQth]L bb_-Za<0%{$o4mKlҞ(g8೵;)x^rcHuh-GzG.pX}1^Oo$NW[q2QO'66ѱ̌9Yvj`ʤI~9E-k$=1w^6Gx@S3N0t`T̓#Wv 9 Jzzc~tzAs׸v-mcT O_\T?X:wTUW8dQ{u-%g5hXybHt\N{:l=\ꎟOV4vy a)%̯1[冚a3y˄cʤ ZBI|?0  Ap tW>1I 7`Fo&v1}-#o4Ϲ)C/V,{y:}0cBs_'dѬmj'vN'wlnuumIL]3+> Ö ! o.C]Q-!P:d?@Vi69 A},3= zCZ? n6fHUqzmj ztg͘z@MH7Ţ/h!p/*;h%tFx|ρ'ĐwT7V`w0*u}AI> ~1ͥ\m3쟏4t3eK8v$^ ]ts5ѲTq䤢hlYhyVݮ!uJXȲǏ%TC3wCs2!qF!)iJćU8HwYEPI&}BuM\7bK ǰ[As/ONh},Пs/< 51E,IO#DPdgQ˵$;Bbq baB j0Tm.ܑxl%LZt[tSܕ3g{DGU*ó ƻ]z]oBg;Ը>ZCCI>[[hAyNi1'\o[??ۜՔ#]޾);4C724hgjG^6XzA@?(L"`ApPE) k_~}H=wuj}{&aKI ,o7`TNo)3/t]$" ω}ϙȠE2[5٣'e}U>LAI%[[T`4;=. "8L"KK#-YYK_PՇE;+Hj)g{<\ 쇂y5|!w\$z;7Xvrq\(,|.qvZFIYeao];dQ-w 07B {ܥUk5>" 5LQ#V+s-ٶh<(I/+vZ\ >dX;'Nyܾu{MX_Y06d"t"c3WPG-M8 :Z[L:p] t}* [eK@< xD:W'̭CZ͌ONnxzV'f"N;UGڢ,@V Ãw(i,6iߴJC؃bd)pd+Am(% xAuxB_[ߗx]AOS̫#O{??)'}n1ƾF-KSK2Zxs&(BE*76ӟCM^䴻;zv2j1oqGQyy>5"tjnUiPX w!x3 nznj^k$c9v8gHu6u%ME4aX]$akN8\yȄ"`tuMmaGCv޸/(uZ+lkGmyATAVѢ;ڳ,FK6C7w뵓e K Io+Nݹ!$2vA=SK(=lug$؉2aA:lg,2> o x!*:3$trG5߷  ,5}9BcQ;{zNԆa 'ӂz~t}K$>±΁j8C4 awV[ꯔPH1=]2LZ% az?KzTKGףwfTaӗ1/˦4`VGۡfA< %c+^\:PIyƎ c2+Wդ*gpptv`5n_ķЃ.ﱠAt^ddgHSQɕB~-&b `'N(yy̔mE`=ݿQJߓ]!a,e8j]nu!s&xbN²z3Ho;MQk58$+d0ntDqX?|._oҽWV$Jn*x%RƽkQD271KyI\*`/l j!W}ܴCW|6ZYĀrG?n"{&f#I?xpܑCS;>4h]ݸ^,x%? p.ZFOĜ[r Q"xUWp[RD!Ku2i* (3'CAٖC 뜶Uފ7/)7x Œ49jtl?C=r\"b!C* jHBсPo9?Ā0D _3 uۖ OQApa0q{Dۡg5z&ӌmzh % LYh^Nq!ob,BI[j1Dup: .dcJLs0M$AyɈdhAEw)UI]L:G-TL7Pn8( Sqxe79פN_7ksu-9V"%v]W5y &|{N3mU o yz74דsc)x@+2})oi(Z^-@= $Y!klPN'Plf٠ ޘ^lAiP@'+sB3 tЦحnn~[K0U'ơ1D8S@-͡}"J LfԦ2g.n.@VȇN3h+RB7[TP73ֻm07t1˱+מAUnap[NZ e'[l!/S@)K9حh*6n-qBוZW$섧*-1pm (.>(;m^X*l.[g|ӝ|4[Nt#! p/f魧Ka 8-krf8:X/0ucbF+~x(GK 0b0C"we3`y ~ns #WM3纚Q kx.0< >N杊cMQ'!2.b ^lC2͙G+m`@'{X eD=)a%`%"~gSyI"=ƮrHB/7IpN"GE&S0ߓ1l2ߩUk =O؛<٦yGuP㽮}?; E&x RAz{*@YDR~Âӆ bʼn)Л+ѹW3t\|W@ӎVS~!{lhb5)&t\SasArߐ@{Ό.'ǒr-9B|~q&w y07[[SXR5ihBl DZ<(yĪT(B)G+'Y˜yqYnVQ/6} <}$ 1^l0"gZ֩F A 7,}"p6k a7CO|w(U Vb=(w/"#ָ@ǂfXcv>D<,mw[ť0zQrɤܗ|9Zϟ*yhK&,p_r]"L,nS<.yUW (5~=CAyQ9:02J[7TjWq].o?)4X cNnmO Xxz*B@ dl:"f͏Wl;_Z۝2x)TB [~] (\x"фvK#)Or (`;%{UF._'bHW/7-)=m}-{aq Ref;e*j3M;WAXe Ot<ƣ ^T.Nif1~8T(\Ԗ;fKƣE^'x8?Z 5טn㙹DP9:9T_(qn"XGoy d¼chiTqhv"auVHPݦ,B۹ĿuWjbP=D;d?Cˠ ,04Ecl0*PEvTt[j*Ԕf1ONiEH1\ 5~{[) sn+Cd5e1!y4;y %$P0<|2#">.t~|$W7a}TOe'fl_LyB ւ}⹫4o> ێIօ+]JrJ+q7nB'TOaȄɯqT+c<bm(5q\m㣁.JStRPVW Kxo&d] # _WnR\ M6UB~t; 9)+I.;H]vAɿhV4,\5 6jE*u30mu+z^;6Rޮ}#,.],D]_iNz![.}lv=Ic߂L%=誺~!:A.$ݩglZf*1~9 <yDkoeR|CsN'ͬndW[,Cy\K,K3뻈{d8rao̐H{)$^r,dˊC4SH"ZRɮ:I$ |5ℂ#5k8VCH0 isثpȏuɺN hlLR}XԚ8LRbl}įNԗOҦױS5TbGE=?=vI8e2 Q잱0<@G4SKXLKVW]]\- Ó==9#1tvSWCmTWqwSƜm ;q; ""fj-^~8^%FvfVS"ŏ˟I/t~)Z^ ֌2N&FǻE¸e!ӥEV,|7jdI ᤬(^8˷]8XvOcJC jD? @΂Ҫ谛`?FϓYTAiRI?Շ~aT%)zDݴ Φ~xdo8zu lխӅ*dL妛w RWڻ0 rD\V0Ka3 qĮ #!WF:ǨA^*Zx!8?˄yې7GT.fx뢿NYmH6 $"ıZji(j[dDWKqYn5GCxʲ%kLḡ;WAkF}ױ^+t 0WhpΏ%&gi gTkPz] 6\2fBY5v|{m-Z aϘm:zHFM(9zj$c )6W aulk \x<fRxއ|~~\+Ԓ[>dal%i2W @Wt_1žUt._Nuu gHO]Lamӻ-r3SCn[B:& HgE--U¼k~mI(.r}y;niw]Jct3+^iS{B<+P? \+_ؗ{OO"z u^`x3k`UỈ0һ RDCQj ?}{S^1D[vvM6ejR/ +t^QbwpV鳴! iNJ^VL[@ I|ofolCl<)[Țn4wTsu](GAxW8 9'K9[M=r9S߄.CO>#'pbg!6Asb<{C7"i|TK-Mêa2.rޝ68dt̀m7*1XK(SXZ7Dp"%5Ir aQ6@&_^6&&ҎD񅝢gb/T8Mbw+5ݗfZ2ݼmWd`^\={Lr%ޖNʁBxwH@o0顰tU rkn4Ӫ^:dx:q~2Y9HxL_Ad M-PڝfF f󣰣;t( -R FQȷNyYꤎ';V:%߮%cDΟX;f[O[esګ%r; WxqYG0"p@`U{Svdl)ڣirs.@8arkSPu+`6 oaLPTH21C{ DS;!7VH~`C+IXЈ*beycQ \¤*d&agNq%2D>F^D#55qwRR6 ׮@QD4t'rVpA XY#J6/T2aZ|.d/ݐ%1QhKqY |ӨƢSX*o XQs`\)w8,!*nدIJb>˔DfPEL_DZ<` gvJ?|ckȹS&NkcD`# IHT s5lS3T=ZO%[0{X /[L*$#[iyEVX:upz_ E}K!Џ#y1vf~+gVEt:e} #iF4W-}eD8\4 zy5]Q1u.d\b>%+F> R=&K‘p/.3D4QT%2 zpr[trgL hpg*ˠ3`k^JV\Ӹ}H0\>5Qe2ŃӢB`}TLIa NeSޙ+T;-jn[fU3aBjC+wiS{Mm^RS$gB;Ny}!"JPMKno_SMI`8eoD Y*~rڄv3L}XŚTNXcoEi/+]S}L s}A3 ̃eԱb?^%ͨ"P&iUTUhžBZm3bEL+-J߻kI< s] RdOb\`Q2٬5񐁔T퓥?GĜkki8fF'ĿJZ~GKب.c\6I_ GT3q4'f†+W0,_|FBIYv(?kg_ i**g뱃f _TO1R!],㡌͎;"\8č_;E{/]lyg`S=,W7ZgW^&$]u-S7K\k* m"ᔽTB!| ~d[4o~CUM<ʂoN"Oia:kR2mh#⥔,jzcA ň3AᅪrP79&c+8Xt/B1YW؝`ADV&=|#gY`@*Zp9qTK>zUoq9' 5DBe)\|}EZ%gqݙ'd<.S)..U\\X>m~Egъe©tuX?Ut Zb JB"hQ3rZW[8MסO%5xOqD y[ w̭ф>UXIcLMsBǰ|=ib$$?3 6q0\:9t|i6Ki*KHcQ=v\htŎ0 K %_m2@3Y44&u0Dm"h~{8Xt'_d: EzI-v'Έ(ˤJ9U)  -{"*3r{-((DL8˹R'"lm֕wu6ҡ:δy[o^ dePԥ W`e)rH`Y:GZƿi52\̊-u^wޔ^'Bѿ%^4") "a c:#R?-?rY_nm\1f鯞 lkl&!cI@6E(r0W> c:3g z;Oa1@ijP5V55]uWr3E%?c8.]\$ӹm$A!F^VJq[v v8Jd4pȆDH llb}Ɂ4ltiDTeh/LjՊ["A΀WEu>u$cȞfߜiJ̳)GQԈҶ˫"^L|m&j; 9i<̆>Qh_ "a)gl -D3֕ÖD4=hO2]G_V|;(Pw9uEy;Eѧ"6L}9<SAhma{b}̦#/j諒-v=I%>Lcf@z` $6jӍ5!ޕ9KvTW{Z1>+%Ro/jAֱ}?fkᣘm~ȟ_^:b.Rzܪ*E z a5GS9X/ 5䦆zi/iۣ?]a>@n<ɜY53`F $B{d Z.C"u zS3Fs&o!5+M9Hz*tcg =1zL Uwv,8I(عxւ_\TO@w` ֟Dvg%ֆ!9T_#ns#(* /MLۥ0$K Ek7 w(m| ; Z"j``*:Cz@B|zD:BIΜ{2q(yU{'v԰1xǧ m$5ljT9^s2CDχm?:]pS@ݼȋ\*)-[%1o)9y<|[ o!ɜJ^8>H)yf[RϤ>)jq:OfL=J Ro7~̡Wq`i |?nh{+ e>5͞SڛrzY [083rqݾIi%:oyRAP^@6gbA{+] +ϡ#-3^'H\y/s'ʳrb)$M1 cѦpkX+`b oA KE.׺K+-+6QW.2 ]O׷^~ɤEwԥz7SRˮŸޅNJ'-,i'ZH*^'STolȳ GFzA"l1\!(e֏Щ^V lQjB5/t84|p4UҸ,f}6q&ɂr)+~D(rp+GL=c5v/$'Wkg!J:oѻWWlt_zdLD*KsΊ!( `y-2Dp2Oj+K]l}$])˒FI/#3 BлuFEu5EG]mn?/K#Eڍ//u+R#״0'jjN9'<*~N/~տL/ggJV=8<Pw?Z1A[L ߈$&MۃP1[bMZ;n(m AФm{j@ -b3s2>&$ Ɔc4ubz:-|Ox]ڔ +)5C Z婧wHqS EwR(kM쐮ȃ9͎Dn2*7[$Jڽ r\D'1M(<Int_C3b3,y\Hg92A/$6&WDiИFR wgP C,⎘!D$c*"Jd^6%e}x<2'ql1 ?R֫Ue3J*67H<5br?Ly-35@UmP7w\9e̜u l^7"!ͩ=aԭr ܰ)J nd}M9 _|c"]ʥSMn1mRW.azۂs\ؿ$ ű]*g_xYh[%w4u29J 9F΀ߎ1;:->`G5c'2R ye.cMPƍ]׽K2~.\)CXIhXd":w|7ua>5 pf;5-R/}tx'M%w sjԵ=$ͲyA36$uJ=##{/;׶[g B-|1O- ƽ`gO"ǚ5ş,o8'OEt2l*ug#$GqWb0hM/()0 u|sJU,1m%C6/|a@.<>7 y8(nyKj б鶭7V T4'{:wu?m P[ 0{58ng 17 ޮ#dDg-P<%9ydnoĽ8:Xa0*!GH])//̖$~xӣ+4To }\5mɄÇl5sCcE{{a Nc _G>/R$$ jL@qP^ bhDŶ{Mg ./ sW{dc/n imDE'Y~ FGSjSv mq=i0*qDp]0#B&v̀ZuZ`K8~M3|FJMn3^迏JR`Cwjjvo X/N)D*"ڭ@QIH^tW5o*q8ڣFsj;yD j!1sg0tlTY=C림vr}C!NN :Łz@AC£M."mA=9Zd {{%\z03rN {eOcYt{k"VӒ&ȔMjGoV{`Uxdե${CLWgKW۳! d6XēNb kATrc+ F]P ?FBe^CO, f0}oNPbߏ\XO+ S ˪=ʌ_1&GxgɎGt|/^@M-\e{~WaD5oaTD˜x9fų%>9% f/@T kӑXcHtK׳^.@N=`*C@37:aEr#H\xNMɱ$p}%o{@uLwKSdS%D]hEn2pt;ҤrypSOz ЪS=Fzy(#I#Vpޘ]UB@Ʌb \  B7GĒh&oD|?D.X-S'EZPz"\G v_Y 1 31A `RAR'mLZ׌MRK]ek} #h=# 5n*G1G,`BC =lٌ6R@pQfffPɚR:\F|Ր׌ zJ!˛1|}7d~JT%y$eF )הj[VG/R@k&Sar/;ZtJլ.yWRzW(tF)n|=>28ֱ N 0 'sl%X'5oɦo)8?e^%*A-;_b4c_ץCܩҔkjh)?n5瞉晏%cۊzm~g Y =izS%Din-օ -|p5<*B_ GG'X%C("sź׹zH"d$k\ٟE587SZ(seNChwi"%=e9W1?(s8k ?LKvYdzSy6kӪwOYѪlY3g{+t!3E.cq[$I'fon4c:GҝXƿqRۗQZmGհKz] a*=Q72ץ)%Ҧ] X7UNnn ,Ł5]ʅ& 'G-#sf  <xu|Vu$q 0l 712jeT+=, vm.6{ݧwev;#5?semŭnn$?BaՋzFhDB۷N᠎k{7aHFS_T[ͅwMkqrCQ4W0pнQ 9R4*xUR?@ܑ 7BNGD1Cpnt!\WH0Mim;59ίD{P<':Ŏ =ƫsڐ4_*x  tsF2gEm[k 9G:rO= bgεh+KKٔ^r0(D /{%QeqesoɦA0cQ{ S;}:FJ֨I40FV=c#hgD2aS QcQh[14lHJ_xʫv+K6ͅ)~ꋧשɳmܢU_ 6) K<籄%_jUX[ 4n5UATL["ʠҴq? $h vA$*P0$gmUb|f-U庫Ӆ4U o6L,^6MϴO̔xI8Ї:qSҐcZIGgż%|szֵU/#)`$2`D ?be ^L|B.hnr<$Һ.w=ŕ{-? ^TwIj$D kXF"wU2S2L POHSzM/9a.'l@\<{ydvC~dO(%Qh~ǎ5@N;-І†ZH"71QlV:FChJ4ڇeX;5rMD&KfH؆vѹ<N;FL8$?٘N؉ 43B`3GK"Mve%~FaxUz^6VP|ZQ!P`8D(5{I#z{ xӶqKZHw&V ns#ɾaF9ѳoƒZڊM|%*.T ![b{ɯ9EPwDRv"5Z"a,Ιb7͛l*/DYth0in[+N YggkH.j)u o&-dXkOhF$e W,Tgl?-Gf|UpwqXRWѱ!cpQNEh]b WoVTޢĀP\8mb,$C+лj!,:hVS87*' ͋ ꙩ}<6`^ faJo}ƪƓ ٳ6oc<EyAf;' Ѧ܄޷wnOłdLNYb^ m g 3f\`z"XwjBΙYR'\ .3`n1au7mvKF!3xeGkQ[΅xy)zbJ:âcK`.p'RL:"|%-kRީvTcFUƂ➢r:iq35|xPI#]C dѦjUigaXPb$qpwǵmP!)^Z|giB VH=9}|5-/S-HrcҤ?9&]zO;4#Ë[pҦ\@y d*߯_4 Bx_iilkc,t .K/m>q=uL.\'W`ZL9ڲP' 5j%NepAOj ^(O0h;cvnPLs@)$`)d- 3T݈TޏVm S Nl:gdCw` %Ah0S]H h<2ArcpR#s]Ǘ)wh~b#l~yWK ]ED\g'Ky9JÓtr*]R3Q]nCjZ2 >l+)BњTP2:}ǿT7҅Rn#om`$guvQa0}}1ELT'02tpeD-S{f͆B |m8T*oSE͕GJ^ kR4#9&./rT ?C"t3wfE~v`)ڔ0xG>PLLo=!rnv@5`D>̯k{O*+{DnUXV &R c9GR#vP iCV@"ɭG-P/ I&p%3eu' 23'¸I0cT smf^$ lP.YYF*ޣEzd∼U~oJ(lU ^aNm I§VPؗU C|pO%$fd&蟐D> f"x5k~#άAIzo][@Vf9.9 xOfF\@"14yt3 ѝ)'oJi+=ˮЃU/XjkT|Zk& \m&| Ǘ5k') Sى֓Wit5@iN" -nK͑>q( kIQLm5oke1k=v:[JDAZĈ85kqZri׷g,فpؖ$Z,P* ˓O; h3^[K`zw>ݥC8}\䰅?7_(oȓ4B:_8Q3@lu8E9;\\x\XÚ"O@` jU2HP>nܴpV Ko]F 3D5¿(ƭf@㨕,9p?`:zs0;T8ӂ';gҾ25%Qv\VYO:J 1zmG` ݻ aF&[ OuMlGJBVڅˬ. l7!{y.R߶ٳnd=A';ٌ_uA-,c)wkg"`Ŗ,iNh.zÞӯka|p>Ee*o=Yc~f/HFRѩKp*t'/lm&[N1o.k6 2XE(k'|Tߌ ׉lJ5\.?~"AŁv+K#֖cƿ Ekй_C}X ubCq(;JbU X8VXr˺I ȔZ(}c^uӾ.z[3[M,1?}Z4FyN\cy3̷߹gSr'WXI;u>`mT#:?7OV@7 (,hCnʗ5hL"vCsIwȵfͩmPxav dsSN2@?@C%uYaSR)3/ޜm+I2^(SZOoHATˢeNc^np)D/(`1kFRsZhDgrovϐ t>ÍRO $k_@Z+ȴa'RΫB9+lDu v**Aֱ.7=}hӰ7l9ký2Tl;wnq7ޤuA ˍ$5۳wr"H5aK'_%+Ѽ/xz\xh`@6O;Pfu%dR YdxӔIF ߶ l k64I@G`s] G߬nLŽ[j`!+O j_T% ܒ@a׳λk6Jh\e[5^mYAC7l'͢8A {0\@h-ߪ8 ~-j}Ujns>Q\\[Ejo\YV2gr|~ym`f_?N0$K=~_lIc=#!U: d١R{ю"C]`t/a/94i%ykVR̿Eh~1Z?n/ /O(y2Ml Ȩj9:WB( *m0Ѷ mی6Q͏K,L~gyRCoz-Ƨt Wg&_T-2E@1ZUY>l|AAz_n1ocm-p<*Oe*ы%qӧ䂍۹)n!ˀrQ7"blD/ss9,GP5p]_"Z>*I.S1r{!٘#S9E6~Dcχ (Eg'`fc lT Yh=46lP<2J17;?`$3MY-AWS+~3Aނ 8 >Th[®]ίSo4rﺋ7@9ri}Xg(!urDԥtYO__~) 7~)mvm42]OC5@ilCh[0hxDbn4;o\3s IpզF H3l(a'yde 5<`xMn6kR*h9!ίw6gO4æ~1_q;LjNv WL;YEHy[)5BxMG/&Y{X}k~cRv ^.%|@ca.r*:-HD,u,QՇ.bFȃ]w66>(|=spfR+%^dϢgzvn_cȍg^ϻz7*nEGRNx_& k'mM"3+/u`?)S<4 ,`VH' @ a#o<&:*^ߞdQJ).y¶ѢRWjxs@kAuVIIvy/{AO9LռbJ!R8_CO䖈&Tsaek'ui6HW e"mXR&>K6;t5 IT0IaSf̃:tE+j=egօHzr0K&HL{$Kuo=8L0b瑋n.qHԪ!T/@; ?/OKpraZuej&CxB^l0  Ddҙidl3`~4 V)h$D12oםFVPW*o?}jˆ1cEwAT#z *T<_${vW4d=h`R=ӽU2YTg +ڑ\CziOl'{9ńyov4Ͻ%͍Hk[4LY[Sѷܻ|@U?u+ws)ő$L8kgp=A˂=h{+ Qh Мc`LqJ?*HxӅFA1CX'k~9>̟PK6pBҩLD$8by4ok3a-qhCnA\ڻ*%Q7ShƲQBe|Wl⪱!`p5M%n-A▿p4W BlI(CLg.9~4Uk 2LX)OwɞLaeAx37^װ%C굕Vuoo`TAC{=+4ftY˝{z$S;]|'@(:t(|dCQ\"I3gO#TȀXl]j/UNqHL2h4zQ\c%m.aLteS`Ix:2b+@>#v< G^GO6_ !iS/z+.9<΂shna%WBTѪ >`bάd?#SF"oѸs{PH9F;v P D? CNLw b oI{,)jf/٭}ٜ݉쀎pGaE[>8y|H  ^I^eGqHJyj~TUl)gC0"PÍ<EV<]Wǣ'mgMxF$ccA;>~>庆g'؀0lԋzz'u8{M|6ȓ[\ ڜr@SM5SY rw^L|@"V m%ڦϩ ׻s` pܙ  䐞3; =l!Һ^{#`S[bG,޼L/o;^ÔfIlW|hH sWyߏcA0NԀ2F\J8Hs k~ddl̄|XœfYD-`"삅`ss.zDog/zC"9此)8˿ټ"TUbSPuo S$Od0=pPY,#Ű1- Vf~ c5CD5x.uK@ :{9*ZzP85o!-~pw11jJx,,hԶ~؏ {eȭUt"_B˚$ ҪMMY93Uuz.CؽCZض I(W3L{ A>#] I(U=a]z:C *@2a˓)`^ fhۮJmU=øTYOz&bVm+= K. $?kɃ:)SJK\ϔi"ŴɼB d)W{`7`D(L9GCުm*SAS݊eb[غvX9Eǯc6ێ~Ⱥ-)xO{$֘#'7?ׁ&)IVE3ؠj2Un9%bpҩǤko&F N~6{)[<<ةUgT7nU{ņ@`q;tLr9PX&{ﳕH)n- b|Z9ٶ+*}|qC1=Ӂ5CTiSl({˄o2} fQ6y*t W*g)MV[®&*H#rXw_m3_]Uu˂ꞤL!iua}=c3f4R 9Dv9&pz̘")ע'Ƹ rZ -T*~\?_28GPRtG{<+彙<(#<6yz80I^>?%$5Ag3yN,cѝW.ךюLtv6tu)%M oeZ [WNO턠ewVw'?ԏ rŹhcΑ\n"VPOaZ/x3*‹261t!Z$`#dq%&8,ȹN\7Ӟ<_D*7 AWz4iE'$=P QgX.X_qz[^l|`}sfʭ<$80n sFpl-Z\Hl`+fPru0q}6eT47voY933:.U5L\<"yb K恤63x)s6Atx>rx+NM$x~PFx=v4uwr\BPCh0<3"nO5anu'؏ M؃$h=9;+G\h١֋YLBqb{Lkgt*@G(>O8b34M'`l.'ʌ`PNW~Ŏ]gBuO6Αwo,{ҪUGk3i 3eT3>RkfJ{Å-Hj [ߧz#/J]x"hGGj&/ u=NmSe:bZ&WCjB{D>dw}t زw3~ O{rNPvIr^MpzCWQ Uٺm3=ozF i){,}(T]:iI33B$e&p f(Q C pčgyC˱r 0s\k'Yk0-維kgț񧙭<(EL5dl*L hϡSƒq7F Z]ꈸ1NEC#J[ U&^{wO -h\9_8 ܟi4*9sOLm| )t[R!%+ e-/\2Kir \ҮGߕg8]x@`-U&gݿfČӀ#dp :UKSðcw:fK{R;VY{\iQ:X( PF8/홸 |b^įn{@s^S!32Mû.ՇLE ]p풇Š@o'K0,( C&> E(?lr sLKsoۗbdfeIy(I۴(o9f&lq@Fz*VRQm<cC?^ؒKC * wnN߮Ô<-7~;]ݭR3+u]?@'4JpeBLq'd%/V0*ߦ qVu(al{rhrݿILE)Ы)"Rw3 W6g\:gPAbJ]ǎ"Óݢ(9ܪJx؏971lAN.'<_e~0V=p' 8y,4JGMbL7><.?3= yj[vZ  Tf80H^Ipƭ9K}t| UТ-0/{L07 :B%ΒaɝYK+,ɊX8\d¤*;9|*u_]inH/?`eݖm4\k&˖(@䔟xKc_כr]ÈfI!yȧDh]ĺꊫLb:,8K"[֊4sQ!X)Aqi4-\vhh$hƖܯ%Fׇ~tq|M6M;1JQ\qpC ¯7_ؔAtHۺ֑fŇ3%V;a_$3MWV 0Af+vA7/jNl xpER֘µۯޞ1󎬅OkB2ٿ W@yvV)tK;蕜훴b?5ZEy}FRCP)\bcuq!߄Q75oI^VuM bB`;(d7UVǟy[t =G"u?PM+/( +0C8@;w6duT*5Hrw$4t/ȡ! X/-U !B-;6Te[NsJ} QvDQ4=A$$xNdTk"'I /C0 ݪ,S7~8+Ih{>_++(Y*D>[^k"j||{aU,}\0rd)9&޾Os:OPmt(tjF`4"dn˦[yjRt,(뇉 L뾭DnJ AY`xfZNyh~z 4IUD)Ig|˒@}{j@`Yy;Y_RM(k ޟe4(`sGb,Ug^>KRm5 6B KQX-3X"u'3R^rƉn !p. /7 4#E˼/ OtmЬ;f a<0x~ r) 'Hu{rLY&vJ:BbYǔ1Z~&!@HfVF0 9./ߓ?:L5zt9btBe3IrSnج!rJ<_5p:7,T\(^q8 ø{$ tVU(ܡk~}P&aik_0$}L5_yW"fgN8H Lzn \OJ!aYV گRi9ojO:+P&ry:b8ş6ʸ9 ) cZJZMegp d%udx.#liDgy%-8G\R.,JOdj6 < \aˣ/|VlSm> N+B:E4.wyϙx&5ynvXN;r~@͊<~9LRgzLsժ4:Ya!hjxgKz>%a-CFm_exxCaiD0!;N w~{41ʹH|n9c^_{+Che䗦=-;ޟ-Ud"Z+ e,;g?@s\/كHk̘U}δq8΍>Vɴl W35yu/We@Jv+aׇBI=n01l3#As$(Ns=i,Åʦeܐd~7h"˪eBF2O D&+r%ȼHyMjyGp. :D㳧1lr0U-)uddi16а|t)D )7')To2qs՚ʠǔ,@8wK|b-L:%{=uS7?h!܎+dMSZlt}&Y/pL1<QlzU=w]>lkԉ֌VcԪJW2ݩlN1ڭGC@i$~0@Wa0&>SrCI̫.hWU^aWɪFwx|ZeLK.|'dc`h0?=ʏFCeFВ-G-.ͧy]O >pV@cҹxLk ld vU.Vo7Gob|**%u !SA<۴<$Q(q(mG#-= < Po %R-S9޷_c0r}wRλ|َ&RY2tI3&Fv7Fvw 9*8ACv:q L]mA㵻AH*sJލGR#[¸_"i=`$Z& Jn/ C0WsW}T1h1!q0~G>~aFz`e=<2/X*#Evbvlg d~6Xg6R72qi>Bm6 %"8&bHF0:؋IȸJΡTSR`M!ۃW/9٤~m'V  )X(E|# v*6,ex-h+alE")ֶhlJ7Ȥ70͖G1/( @Exn{Rrӓտ qջ>LL(ck._J.@odu"ojN}hi k%B8%J c%hc|mQ q'<`ǥ%ab-J&o K)V99.l>1 6`,Y&Do BCiIW Ru)* û1j ]Mql~?L.VIs}̿||h0b7:;Ip5`6}7"m1JjEY,lX/>L\·˖ @<i@UuFz_ b*5.X'EF  ѿ|2ŹKKeL.hyTD)*DX|/lJͽpd$7P'~WFƧ+/ =J(/tjh Ru3ںtkj  F9ir [j*x,ɘbpIH\k)r$+Xb%N|ՁU)/gz&S3RA?m|U,-l+] nݻӹs8`_Ćo5Lڢ;NʹɄ 'UD@-cWNH-n}mGR܄{sǙt~&(ZO(gq{B\8z.<6$JyW6mrdS,Pr/?5Aqj"1zD}6zΒS5v ZHi)HB`bwctc@K$i0җ 0 :}k|@TR)!SOuSUYYK/S VֲyuFV}$X&يЫ<:\;˂cO ή\(胪)&vmSoʦ1I [}rK:s|-KؘA< ZD\Wi.71:bjz܇PG.Her##NP Q2΍IpL/-fIs*.c͈VV  EF.d{1 ]tfS0Ɲz92vf(u2њBY}yc(([> ʹw}^wo*uJBw} B(Y@펊2@%dF=w$C9jI!߽}Z{K=s Bj$ݒ ^PaXțzd@<{+:D_vyfdyX &p(qw`w@vv`bAxɗ v,s3m`rUJ3;SwĥF,YÒ5̚œ|.Cl0Q ?BjФkj -wWN[{z$wtmH] ";O؟O`&CmzҦ0PX&~5WeAO/Gde3$y0K˽ 6I=k'uZ;yI)])l6/ӟ99+Bbd o\Oy{US2!&ȎT淩 6!oˋH?Q'˔]>, 5#in](?FQGXJ&(`_Fݗ) z 9 fU<50It憊R 5;lZ,3k|O5։+X opMdhȏ[Y0a5a<:AzRYOv~%Б]Y0,؏c֎^)@[Cm5J#KbXވDm2tu yP+.K?mTCul]uMc |@Y?]AUt'_0l%4IKh| 䉻=5B8GgQi`ibQW%#^)AcQ%c Ug{xd%AS)EIS }}/K ae0XMnh}.jы̨w)]Pң:lZ%$儶ۄXCAޓtTl&5}:4 yxC~wBܥu$2 =ɻP9C$;>6`oV cKՋM {$Vx VL A5{@>]k8!EQv#;d,">aGI@}&I5V5R f`. Wy5@s66m l=7hz5knRKv~oNySt39 G\q( nHvܐt(;VlI@q62!ejr :<3qBZ*?֜ 2wI.2VP9Z Ԅ2M MIR jOø niNq ?&zCED; u{֝)ܷʼny/'Os{]鲑 LL6-:Uؒ>˱̌#4PG]&;ZCd;\5>.sL|/ BVj~0^ cc-:7AE\?Yk4f=%6!g3weŚ#뢝FԀ!~XGӏj׸85@NeR1,ObU8& !@L/>M(օĀnlGKv's [rծO| Щp ޣ9\OC8dUf"^m[Q|ln9.nsW36#p4bw֖`Wՠ/WThi&޷5DY+nv-Nd=s$6lOai"ߩ+nS~|yI hQt=?^n;Jbw܌f}J4i uz^ vo PUysN.ajo9jW.Ld"*ssM'H }?&;g>GLǴLԙ%0PܠOхz'6$A`he2UT8(Ezngim{4YUP\oRr#v*h.9&G5 7{͵?a v]b?!h4%IrUF)JxЅզ7 'b`Gޱp8pѢ^ɩB TZk/U)pz"2E,'Sy?ԗ9$ %oxClX%n=$fOKy;4㋩zش(FьAܼlFs|ť"?@PBW0ĨF!O% T,,@$anX]N1qͫai՘;m "T@Tm(:`h^GZ9;;"+8s Okc ¦x]rxǧC F^EJ?*68JF>=*2Yr@|/ QZR;F :ǁc ͏o* ,(̮A6nSa061R%pI|s8$cmu6qm<[zyRnQiB''4Z,Ck"2N$s# 6!sTN'Ɏww e#xg*R_/Jצ˭ܶb 3 ({_|Vu6Pc6%V" 5ޏ*rzҙ˭c?Gx,( ^`רvp*!sDJ0=Y$bSO_&JPMN@/+zH7ݻx(iWNkދm5:G,Wud*>2o[w9Ql@֏w8˛A/QuY<o Q3{ّ$9H )Mp_SO5)zms:H;Ų]p@Pz5!Cdo;FUumsT]qBjvT QR6z)JV#gpBeI84I%b4cRك*j$se 99y%"  ,qyy"I|]j+7=v//np1ffv4>/lmm βWcY}_7h#ynb`8@d$ۮu966e8 *(n*^ښ'F?B3c :Ĥ\-lRs 1ګ)+=a2HE9.cdʌߴI5O3YyimDUz_p20:Iᅤ}rkG@]Ad7/4݂+=OScnP?ys ݹf0WGXJRĄm~/M?ŝm:w#sY^] xPYC%Uf\|oТ% j0&lBf(( cbD—H9n tXLRua5X"]K:EtoL…Li.L_6)}BpلOiQbrQ?Dc# ,#i%wyr˸ $I$Fkt}ZKuqc[$ \#3:5d*P.#i-o=G_^ \c[6⬘AzHlIAr2Lz8 J7p+s'}*=We^nG'̓tzo:FNWyP!kǺ{ecd&UvBxUFѽЧnnhx㓰pওL^Țݕ}yH)\ם}0WKr/Ǔ|=<n.g5vCp@c^&whH3k ( ~kQ0y|t0 7WRkͳ3°%>`.~nKʈbg)A$I Y @I0@$y]凡T1vW ,E#&^ImMEVR(!R tq)zHAw5<@9_i9eRDǯ,r{5]i?"|QwHKjيm ƾyZ8+=??-3cǢѳ;j'c{#_f3W9!0\0NpќtDbkO~8V^k {iNĸؙfRȑW#EA9nY!1%ϩ#ݐc9D}o }FHޣ$N=>q p7zq ՁN܈w_*Q ,t1b7܄þ4J}R w%R^o!b1A[G&vpO,|DAT(%ڨ?[,nfG::{Oh OBp֝4o(%6Vb NW҈s 8GaiWIcW̡VƻAZ9w[o3MR>O);FOcCg֋*T\_[)1ߢ<҆*q$Z;5iUQAfCZfj5,{ fgol謖˗1n @_S@wlR^kK;cUqW 1P=N<-8YU,`OJ %ʴ01'9 }^ k U#B2 DTJ֠"\ ¦ K~+?n" M 'XKǪQzAqEo$ۡ={cُc|w.ż# EgiZ.@Ű1K3WscZ9Ipӆd;MZHYџt%lr0M_>Lam8K2KnZR@/̘o&&.JѮ %e&.蟛Q_V,SH/[N!@BS3cBZnN.]=orTSMd{pSw?^˗&e]`$ Gt?zP[`b"qbq&A;2&U* :_ #yt Qnp1"JDJଶz=Mn\J L7dbZL#W{'4jNpAilin`b{^el=O/zbT厙Z3ۂUymZpelm4+#@ 't85.L;\08Qo%)/G]|D:ILOt-qj3B@S(y):ryE ړK6L@|wFWk/Fǯd4ϗJNL'8|<ҼWVSp![App:-ERn>o I|O'=cD2y7AP6l- 2^MnD7ڄhzJ1LmEc5ądګvGxw.1:R)0&fM`EL~l3l;=>ten6H2nWY \r9^7OcXXx0BrzE98,'jb}Han xoѯBwݍ@ܑ"a\뽢 x(Y8)͐[##)ib1: o qbF9c+!E˞3 r9Yz%DK&9ٲ&󂞷 c:0塞u )- @D &hmˁّNMyŖR*q.\zE&\v3G/5ƷַhH闤 2 ڮ칺pM5D篏H]J8>zmxhe^c~_xv,~_gAeld}_Χ{)Td^6Ln}Ðs%Gؠ9 ּUaܰť'ױYAOjsGDbOrΚ U1g]_:#m\e~;Ptɛa7+Z~†G#<|L'}тz#hvշܕ8;I߲>c?OMk@.8Zg#(i̎oa3`JGf}~,zc‡Y!:FNy7,fF1$3rk7짣'MpX=Slz i9E1=ThC]$I"TF4&Wt#5ao5ʷ5jCv}/l56HP:c(en d9-,+iV)A߬{8Eo_xȴr+1&YOB?^26Ek|Ѳ=?1t<ލ[Ą~Gnڵ:P pO]\$B52|PRUD*%l(Au{@r'rDdxsA񒃙`.7pDǁ2b0_R`VMާ;-3ӼCSLEbS y!EjapKH#V2w>2I{̀&AL$G6=Abl`0l =Ys Ux 7Rف'HvG9 *IVRf@ǨB쌘^f7kRQ_1tEɧQGmZyܖcE;=fL:d`(H'W7b_1^Z=qt>x6}&4=X2o3w,շzURχagR,e\t9$њ,oiJȩZEPDiܪ3wjԟDk->~qv1Xe q;V0n9Z6]<2Jg"1.ަGpnޒ?",f++~E#vS}1-`}c,4:v@OItEӦKThI"gUtk=~;@ (*A{x]&WD i:d%=EKM>ϛ )4R?oS$Iv,^"()wz]9ӧ$׈$qf|T[,,VMԢ|@BF߆a%xg+ӌ14(glN**MeA]'~lc{}:20N  )'i嫳`M٦0*BR wPEe,`۠;bF0! lsOڤTyI'V`"NIhWRjnhּPvOoւ2s1E +zݹ 5ɤrʰmH`‘W\/ԡNDt&| m?Owua0Mo 4˥'L7j\# Fr^}f/p_!sZ*Sv,w7`0'So[y5!Vn!< }oxBуfSG~Ջ#$`*Ev皘NXD;$i1);dWbsVsoLY|k I^Q~(mǾuMAd Qp#0Y/`wߙ1NyθR*$G3C6J,aOq.Lt[Zo<%))SI]:VNϷ94~\$:B1@֔PP$f܅șR)\OYp ],ve=w<\K}ju4ߦ됿}K-b` eP2~؋oUYgz_VѵvE_Y9b=edil+0:.Xi){7)R<{H>r@%L1-Z H11O\U8xMߚN4gf9lplvuQ'ʠѻl9|LR~#^:|0VYc_;\.>d) JXD&CXᢩ2U7v^ cF㒪6i0`(+Q}xHCZaL%L{SN4?`,|Ùj?t-1;JVY&l.@:ut:\&̫dxr4ϋk…<jFBn\!Bj ΀.: egu #Q>$ZΚ` \ gB|̿+=+8e;fa*Wi:QCͧoџzZ%`JpovV Qi )i0Y@!`5-h ՠ9/=]~74{z/m\Lb4FceJX%**=NrdI~34=7R{iNM.9ᩈȜ7[}Jq2I<"τ}2U:ZP9/-K qi4{fv)|VIH됕CZB&+3J5rK#ܡGQm[P7>ẻ{cSF?Q1~J" c2ŃON($-K^AInIh |&'.zfDI89fbWFcD;J.HEdN]D-)$7E‘5L&S>0E|C! +qN.Vs,tI? -jyfQ%PBb>`mbTEύr6YUSL1Q3a1Utڐ7K;:&=N/5%\} 67&Qn1fC }{l1s3rx_[u8xBOmv>q)#"5GL\YhќZfQn~(_pήBe}:Ơ ibhmkB葻q rsZfDR+G]aHS0땿|4v."԰ ;*U%MOxawga?LbHuT7X~#4&GJYSR)#Lgh78M_/`#Bݰ^J$086jY s/jrQulַ^ϨG:4,K7-&Eѳc΂EZeҕVlO0!L'!Afm>QqBqal-T6ۄ(,/wz*ro]Fhfx,*D2|-z0Ncɽ“/.=ˊs!'@xׯb{Ɇ*G%Y\]1d)W~a*|:yo {Yuw5Y w]`a?|!t{!mik5'4S}ۆѐZ[ks'Ѩ}a}i8/G@#ۆHꪴ KƑЦK]Kr tģ$Y`Iڸ W]@xLJPg1V30剦. q*&ST['( PSmsl{sPoŔ:`૕ᷥ ]3R)J(8QL ܆~Kz Ughn|c?n]́v#C㸁C\5g"\@ ?@@YxCR]L1%o͉H 9FR`JydiVw %T"r͊0[2jTV6 u 񧾴SfBh"e=AtDgщ>4)?K7"lQUx:='+C\6"E؞+9 H(әmO ;̿oX:7NQR Bj=-ҋ_'Y:UK 0#dIU]KDPP׽kh(5Epǖ+9 GenL*r 7* Fsm ĨIժڙZ߃9o4P,]FჃhu' SiN9b@|x(![ve8>)/c6?XNJ'S]Ae|&٘]gQM2Wb:apD 4̬< b\XZUv?*1<󬔤''Njd]H/JBk%ҙg_2JGe&X՜W+/0O;3suw$ךW-g_-'%e֛7܃ Af\4DT E$#je&KO_-q2~ [;ε>"h>(,R$u;_QvЏB6G˪uԤOmভҎ8tnTs@0 ZxJs?2'x{rYӤ7a_fHxetIKi$z[wYs}aɐ HX.JdV^j(＀J5؅`i4М jy(JhDl> ;k@mF y+ɥU`_ͽe^xmԃܓ?;C8ĵ¿[tiD2qv ؠP7Ec[+Dj{;`&JwIXIB4GuUYHs1bZ̈́"Jw+N:=vD禨ZCHPfzdߏ)=J>,&%+䠙+GKm(3ǟ WMF e˜Ǽק'j7dvͶ|")| [5U:n1pr6QG}XH;}e:כ^D>]\tǺ|8X\ \nY\븕ȧoHsQ=SʿX L#\xƱ$wӠB;ռ?v8(iwGRVq8vU`f̑.m+[zҖ6UY-r|idn+tŰ6uwffZHEgBF"1?SHNAR3>]0CFo::GY0I\S*[>YbCvOo1ĵܓs g?ި9MY^BL'gD7Gx{\ĝl5{nyNȩ@o0%z&oJWunCi*se#ѐ80#H-Mj&upTs5?Q35~KΒIVnm]A9A(ըE~(DA/z̧=2a>]#R]1Q{(j!IW`s~Kێ7)9`SM֞<NB[A%2k暭yVUfq K8Px} TfI6Q:A69~dg+GEoE8%눔׹![ Pڋ<\ڹ7${X6*STi qu(V$]; N&2+fK3QD>?@K#q*!;Ig2LiEgA5tC64A)FJ\YCrN~"jF'0kA4oIA*I.p~߲,(Njqs7֗Er|8 !eysrF YF50 9dѴ[@-~NF-?9xvG:}Q6,O)X}Z6sNXG-a`.lkGѻo@} DӾ_Ҁ6e#)KA*,Oh*nuI8Q4P!\s cߓ`;y*~XqU c~GcSR1= U>3 .^Bw{`nzxm˗4m;!A!CΕc:gyY@NC1=}FbҞ :ٓL-GԞ%g"n"tŚū8n $C9Rpa~ٌU"/xeB(/KCa/Ç]cz7l94|Dm~. zE5gT«gY',}n`|pRlf(=lts=T+0lF@D=ez6g;Z_F6N?&:z5m[GR٥4Rz1'BtI܊hfk䓏{<OEoGC/퉅8Yh]_=&4)A _)PI!߿l~=邑aK"Jh$ O*wԢnIeM[ oBvW#}vb%T1 ;Yph@2aWx\lq7n_R)fq*삹 f: Daײƚ B^= Yr<\xHV,ToDK Q{ fA=d4VdP%¶Ce\BGt\5M~M#?kE^d~ nds܃φ}ӭQOA7lcM}TUb0s!~K|Pi r?Ԛbr:u&z||v|f\@< ќ.8Ͽݚݘq-W4)Yg[̗$T$%<ES"# ʛ{[2t,;ӓ4NHYܾ~T|ryF~҇[Is6߯HSw@걧/k*T,$kڋVK-:1 .}R o϶ 9!ʿEPpDF`ld8̱Y~ʍV#1&r6 &}8Re.zz 䛐aci2/.ݑŪ&T(zχ#̥5D#؝ƀ(x2kKĵ %v4_d:e4vB^zߪI[\ m)|4n2“NJ}oRRGNGn @#?gŚ*b+ {L~u/A8Nq-,RwPV@yN#ϲ%$\ ۔.q3jPexlZLkx G쁐Jc7KpKs`D\~Yܫ9!j~jvU ~'25$]LC鿽0Аc9K^.[S0z~Ś'zxܷ̌"5[_iV,.nMKr .(épBn >v.JT9S5~_+QZ棰$=K 퍐0V\ yMެ8i$3 >N:%N"XC-{[O'ܥ)/tGD EAu"1HLƦ9T7ki%0C]Ϙ;\\,a1w m.|H\a$Eg LRKL@1c 9kҥU*PLcbR;ׯe9ZZ6Ȋᙶ@!>u`qmZaOXFoE4(!؟+%v<"@ rTm,N]-)hO^1ݱ݈r7Feʕurg zVNǤTR Ӏ$t4^h6?Smc%:~9(WݥSA OkreVRO>'ģX,~uCd"3U%h1THd WVWnua(f ۶>GDj3'BZY8hEmXEv8هVG(VqTFePO+h(C-6zb΄ fu'\71nq=̺wMĸ<%DD7tL7ڼ}M٪PJ!/AC˞Nc؎fٻ \Cx[FfQR&UgT=]ǹRuɖy `[HbdИdýFi r]\Se="7A^@ݳ&U3~D2Q;/C 㨣7P'W@?D+7-qLs{^)n,(k| Ze&CHTI 0mud*ʞ"ے+ڰ m#O}__Lٛ;z Ue;QU`@ELAIb|;{r]VݓNW%DxsU4ՊÂHQ[)M=zn 0H@Nsg՞@%s. %X͑+YPC񞴭ö`,+]> fFYgeh4*kIL5_Pg2~A L==ĶX„oi-r]i"#kZk(SaxQX>؞[:8z&D^o23G_HqG;Vi|%>{#VژXbl,o*H{mqs!*c6/XVC,ʹf H ok6-clWF3blX+/֐ݺ_Ê y *NXŅp~O> CcؓP/3C&}*C*HG -P2FJ7#? VVRY3AR,.65/JA B~!|)SnlFg=<ƲH)2E&fJk/oig{coT*mANˑ&I=L$1䶭LI4*85-$xsL RG&K<}cfŴ|z/NuޅZrɚ/lɒcb|^[vOBDdfDp ֱnҞoHJ^e h^d]\,B V64X3brvPh[_Zfnə&l$/Hㆪ,@M 4;9 #aϔU}n Bzr5dkYƕ$ ®Dt5=6Ò'v qs#AR[vۺqDb&N)KEȳ l¦l*eY68Ey^;1/|GHEB\5LHmu (\2|բYP%?LDqY,OE&kpMokӰ_씊 %j"j }zܽ-&aG-0??5u km@ANNOw*&A+pw\>;vUr uReC\tP2o-R!"R3߯ıh!bOuޡu5a2}4 JI+qB.靥]/c(+* $ ȼ$j󂮈'HDţ8*ri2;?rߚAm[1Y,ߔyWsl!< RE~cFS,pq4j0$`Q-t;Tn|eʄ@U8rMp AS(o& ܔdR\x)N-Yؒ;m$lS蘻xvFLhpЊd^Kui)02՟~U*^W SO.S0>>qߔ`[ \kMk([sfh@d2`>Q-<@-wݲѠy߾ʽՀKFu\7Гf%l[ Xn&FO.ڤN^ÝU}j8#լ9XYI|y;U%<.RTh4&"pB`鵕jK;5vvc|`~`+vKe5=w^@xO0[ $n`K "QWezFq>ȃuOxd@*YO}ś" Dv;\$J: <!By[*Zފ aZ- 1va1IC4[s wazu׃sGԥ~嫈OŽi)ydr"T-)wuśIY̛+Q׼5qs{j&M4}h˩Z'̈́ܒo+ ctm/U?(^~cxp+ehPk& JI*B9@FC" Cܳ-03շ-H[N3EzځjrB8[1Q+*0Lu4zՒVAv0ˋ]6HḰ:z;6!)S'B}K5݂54Y&Ҽw%ёz`e}( ?bM ΜjyȤKTe˥ QS; F`fHbXqo% aGR+ %[צ6NxoYsc{OgIuY!\(NawzXNv]$Dw+PGM) }OT rҩA,;cH8Øw""5v3b;]f$K^ @B.H[h$Efj?<բ"OgMvNt^{*y`}>> |C-pĭ(odH%_@(Lawj050KnZ%GFgڌgl߂7}\=/'EJ,:\1>gOfyAg`j6nI)ve5NEnthctRTjYN&$K #p0OZ {!XA4 9CjB &r ߜ!מeMvLovQ‰?.tZ4"dFaKE)l{v`bRZbAf4`=W:\T~qKYˆzAоuQP<,VuHlZ`ޞdB_8ȳIT‡*C*@l*bNVak1 OmjP&ۅi [8Fbx: [J\n<i'\5"̥^84r>=]{$Kwf "$b k9<;u!%c ~q]Cy<CDXy/f;֎ݔD B_\amrF`a\B p4R_>vv1Ĭ1 G,q{!D75k{>!/e ︜1 xt73RtuUz⴯ je1Pt_%\1@-ɠCVzRqj3W‚mвFnpy͐dSt,qasՙнFU^Kd1!f*K8+qm拷օm)lHPΩ[Y)m",V:@Tl[.Y̢;q[c)uJ O.(tY> U`}@{7z4&:Ȫ6tw a{ υ1[QSòXK+bX}hU0ykkZ>QP`z#DIL=[i1?/jbSJz6}V&h^`c(-h/7KEk .+ݐ1w.5s;{b5Ex%F~ ~2/f>gkq`N4BVrq~LjvcQ2 r2a/>TD)ROO< IqtTQѤI@g!h+ )v[fآ*m)q#\2ܹQ9AAsљW 4@M<4ܡNȮ/F%9.{2J%M 5Yod2j1 ?▗S2^4f#'"(Fv\\JC'ҰNz0ygCH߸)VqZEr<߹hLBgd>,Q Yϙ6J=5Hm9 3zD_S_A}?xSՍ"l2Įz)"wzXƾ% `H^\/4:2Ei!ggYzpH|DF"Jpă[JxFMgr?'#J#՞]I' #'% (пo"\U[W=CQ- :6Bfރ41TfIԀ;ɂ*`_dSf}U1NLysOֻ h)[5 #YD\ wm#ͦ gȣWq6edI_?zmŪ %) \s.NcVߋh<[.#[=<-Ij]m{4]s8H(+*I f!f9 ͩfY@Y- "ۤ /#PVrd}NT gI6"$:*$E{SA!͆Sv5aAnƫkX}QraXn"ʔ ߅NB.1KyQ9)N~5Do)l5\Rt=@c)G4T,~r[9Q"uY%F j  J.wT6b$UHX 3R., Ș݆Y!; alpnm- qTt+*&G63!Ucmn\x.e}q?3I@ZJ'%˕ߠɹq!" ;k`_l-j e^CMN֓X~WGw`ʐr }LJbg:g`Wg`Bq>B&6㌔O!!vZv@H|O*BJJǎu93,`AEʁni"=[ޟR#YF߱FŇΛ hQ+FPH\$aV?Mкqz52ro$ḧ6e=&v=u,T\61[<P憧 ы̏ Jxsٸ =i '" Ğ((-/hE&p7W.@S\nlqX&hwO@[KSlEoX7y}+ydpc)rJ]! Bm-F7td9jon,vəX |.Hד3?n|3 :}єg%޷7ՔeL#|_2[Fc;h1KytRYGP?ݴPZ&-f 1\Q'(& qa8ȟUTwYഫʹeÕpգ'hl \dB1?"v([s-)YX SHΌq .ܞ{Ab+Z!e}xO<6SY ^G(:|D>e}v/W[86f!靈,$N8|sK`~Xx;rXo-z'].\H +i:ֆru\d0"GIl$Nhqsyu75g*OXO9Ap_Y4CKt"/sm˨TPueH:n*'YA BjbQO BOٍv@܁0C_<=E2i5V,Zo7`c7UtxmC~%+S1qf(ypQ>C&c]-P| rfnqKJlbzATwD^}/&RYA@ܸ&4d`HyhC.kuZfmfGŖqp/4w.!{+Tr\.=haSN=FPNok|L ]i?U{g97Ol_yhO|\H돎N6W˲ ƊSnv?yF&a׼5Z+ji= 4S+i {O`DV%5P4 7W< 46ZҦgBI DF֔[b)Psݠ})UgǶhbӮkׁV n'ΟAF`@r!߫MihA<##:m?Hz:+Uӧ{Q$b\4v'#-cuEM}G,qQ$0H'u싻{F  ŔS&8 PRcvRx(p[-9'* }dC=&>xeqv$y7x0n̉0Hp@cb8ԷopkiIqq?RܰlsU/?į_(ۃwQ$AVGl@IkY;C-H:@) Oh0G*z2j|]<+D+D67w|?Fa^c/S}mU*k^̓vU V.*]rLgAH0kB#)Ic׋˃4V \^F*V6XU˝B+~aAOnIfDa+a`gdYbB.PȉÝfXG ! gɣwi]#T][r6K=1 uڂ;ǴW2) 1߳*ڇ5-~[$bWT%~_}o*.Z[Ym޶[pH"3|SH7^|9@5-\1ϋN0sHά/hf0G]{v%{  8rUa2<{p3V₡ OW|+Rƺ7ƳaJh8\&kXiiX)=(^;eyW _AL|It2ЫxJt3=KI6H5e\[Q2  J8gv~ApkܶQ9(x O pD4xWJwRx-ֵCc~![%\wO*d#m;PGzͩab !PCE(M۴<`.%ECXk@ F3O̵fخ`c!:>d$JCuR6G n'Ʊۼ+x\fCU!> f~#~OQ}r iv;::D)S Vv.Ubl~Pe7|KPp+ _߱6:(4@L0o`2 GBPƏkSW1H^2\mdE}6'k۴nu`jmySWP?pv.({϶*x)XV¨Lٝ&k*Aw_M+T) 7D ^<"*n"kӽARL8aAG[z]jclBb|9+%hoI)4QUl`-dGd "E~}.dJƕW.R0&!yE-u9G[MI$~׈/V!2}jhVW}u\ p7dl*JQXgwG"-[xe'QߗCL][1WDyPIn``+nc1ՉcDLKa,9ĕby$ue-pk@RSL܊Xh*l~2̽~w2ct c8xIB^i5%Hp^TuƀhEڈ2zkƲ08NHH`Dk(sX)SKKKs=B2rMlUs!v'+3c( A=!+ver{,$ܶu0 s\gMNu3r:tT,KC8y'Lc KrZI%ES{1ʓI`Hb&J; ;a;嵦43qJ44_'k\KGU׊Zd`v\. 7k$Sϔ:١F ķv3 eQvm) {< WÆc hW$+ x2o]Y,uZnV 5 ,랁7'?bg0iGוHUr[~=evfU St,uV/PbF*L B)r !ow6m$>Bvq*A_L ˰ƄymH9)NI$b1\ U5lz.`6IH`؞Fg޲UxjhbVE_񶢔('kd;{edݯG 87֮Ag7*{N| fp~6(j^p9xtܟ`p3$AȭX|2bFJ*aomJUĹ\j%[f̪P F9Gx'AAM']$pQ#> KC|4/. sȢx4)̪sM<@R02,&T20Tvv/YV_J @>αhB~)AnF .Է:}w:׾;7C{8zQR™-]щrݎɬ|Q[(*߆OC#7nLj`,ls~VUw&Lk4\oH 1(gI8GhgϦ9L,XI~~D pX\wnS>BYط#I}:4W_ :LCgytl^$kZ@ʒ=zQIب=-zj EV*?[ `\Og$)BuaG"NYLL'8|]Q<r 9 TO7 I?n3( ă]R|%ǶN[G /1h`C!<)$>)8Brq\$%Uz4ؾ,2bQE\8+k:' ^/03}TGg~HZ<Dݩ/&LXDs-lNAS'*- Wg=1E*JL@&I j^*uK %3B_0CPE5zwP7cxh  TK)DYj @4uX8 ?ޛNՂhjJWRkZ^E"f 'H:ދM*8b ]Yj^o0qgIov3UV|E TpXr50(nDHW&eO]A6c 0Zt풵UMxɃJ>B1rrvO"oE؝g:AƽhMDKuVIt'( ]m`r!gLC _܋ Kp&I 4a]]z񂼮av-G錼<#ݐٯSQ u4MS^ѬcvHN|DSť![s̒bưh2P' kؚw0#JWQ%MKNEL(6z~'c3;'^a@xxPe&|-TB섗,P?p6C~!ߊA?WD S0lx 1>#RW[X&:X,m(Jq/-ϸVb UAhZIQ4Y]ɪ?5耙7l+PfɦJU*h/Nʦ'"ީڪ * ջ `De+Sfg;4 prA W8h/=2 %cӊFDf%=DtBau(`IFRoȻ&utWP(3:={ w-61vJ~׀*CCE7әyn<ä/phY{^~_ ]}D"o\J!nrIPWB-#uJ>h>}R)GFuf6~0i_h%Y ȈcM^NC?5z[V=50uPF[@L+G._ V-4P ebÀ4Je}ЏbS_*zTtxju Q WmŌTXcdgeۤd|%hYK{eA3kMmkֿ5u,y Ĩ7 W`OC2S'ōJQ.6օl{+pH/OXw6={(848q7=K; ޶,S+8&(S1l;HO]XQ"24Cu}P9(YǽH2~1 K9Lw^uW^nŲCYc?,eH-%7h[`lAs2(5=Av޿rMm 3ggt]TIz'=XRi+_䚤Rwĵ1sҟv.HCEz7 cPr*0gLzX.{$oA1 &$ѐMJ )p^Aη6 EHVE9ׇ}FSg(P-/RgNx0:}%$[m,RꓫN<y+z89J,mZc$VS6 y]4jĥᠩ3\ c:׍Ɛl?ac3 'Oz1{-mA~M 폯dyn3] g m- 򒱊AC& ڎ.8-edlN@N )~9F mWF+)@{ޮ@Ch~@"j U@CJ#7:EP?$`ش9;Oԭ93TIN>v? ֋EBΨ4 1f<#$cƧ1cDTyOԑǼ~=y~FwPWDֺlti'%?t؛=%6=L 6La6ȋfLҮpi{ѹwEэoS>}g#iAOʐe;,g!4;DB((>!#.[E $mu ykvi28 d)BM۳oF;\'EoG2J7.! 0Ը/CR 1F]}%߀B%%'\ڳf7Kq?2bW@18I8G/ 6_O .gW0i_țzxȳo O,nyOWHBjNuų1b<$ 6)cgB쵗n֠Qh'Gar:tG -T@ORYQErZR\>#1;aV Dd7~uxUXp4X`h:%eQcI~֩.$={3I5trN_sطE).$q+)p[rvy 86 ADzS(N; & ]ZHJa&^QNWeA P-+ Vu3E~?j b{-i #E? BI 7YSN kπ0*dhseוEV`cC;lP6H5T`1K{~Iτni`qS^ e[1{*02z  HJEdiVЩ7L4mv]B(Tfרus%^ZA&}C7<'(^.40M;I|f_DRfU&5^\ `TO9c)yi-)alGudaS_SXUP_o؝l@P7tb7 \_MCJ9p_؛$d,`#њ5z⒌w/t\u Ry|"6|w#R ؓQ LO6oLl@aDl_|,T:,;m2Rp* z PՐ#xTո,?ӶDVw=*Y R~q^)L h@"1_Q;WuTb!$3Qi6.0Yt'؜&ِe4x10i>^[Ȯ՝7RxdRÿKтi0j4#AL! {' ׌fȤGTڐpEo}ț@A|~z9tZE̝;._ݿ 8^cwIFL\0yw&cȁwk~sL+84KdctNR*;R41hC3u)#-Te'=$pQ>x>PuĻX~A.`Ipo%G;~sI8 @r=.g"8"?5ъ,+M^[;ytdEM?jF>࣬%"T2=X72`XAM3ȶpȸz-SS(3շ~fyP)A(~ڎw)s6xзSm}ev>_3FUd䂼3Q~/!37"3C P>;3OJR@sucS+܀r鐤" CPUH+I<"] &ANZ"=yۨ $uTڽwJB2O% lK|!HqC#}!%PY$D;c^+ڒħ&<|)JQR.<@m̉F.VPOM,_ja(&cHa -M+@p3IS,6\8&~fDS 7͗u<掲28v!UcB|j+ 4kԅ 3_gc9 ip JʊoTOTμO&w9Ѥ~d->eOq(Ĕ\|[,bB'xةTl.:2uk!sUx?h+`wd%\)!Ax}_cN/ m*ԔHTϿnKL+bϒKSCt.fF"3@?} n(*ele q7&$L/laz5  FW wUՏ,D:]5rʯ ч_XGHj0̈!oT-7G5RN$U񚌆=ڛk# JhQ@c(Tz[ErrZd &KWgW5.:~NAܥE:C7jҽx5OZp3<_wOPu/WJCIRG1&7Ҧ#m('c1/6C)79ėՕ5:;ކܭL`*Sz6w^'0ّ.S5#`٫BdXIuG'ۣрU*x谼nܪuXd)!zJ,<'u嫆nvJF,]6jb&%܃]>ۥ3a+}+Ş;Zˮ1g+;t8lXp2g>D5: P{S! D60[ } xcX>o5;>"vΡj1a?e)"9=F0.Hy 2 L9DڑP"d|m*7*JK]qU]xΟsF\2[4R$O`땧]q`qELKA)(5'YKx->PN}5s~_h)v-k/GU7L w<j~Ьfr{re\8@ϊCsժJH,of/‰@zq$qFT_P.N` vy'B/ )ѬFz6#a#)hh=9X$z>l; M9d}~ݹsCxdјsZ0/0 ɋA4)Eו}gy k./ɑ2`/eZȗ~&% 7BbR%Hu!+EҤ~; k;0V/+i9XX2Izxl", 9YjCv%H$* ﹬FņXq ݚ_+p2&mK1xN/z+$$2`"Pu%䊮"d&ς 0>JGEyNuszp8K}36Za}H;H=y8ڴ)$KOKS,՘E D%|]{eKjQ, 08[LǑǪu/fJ@Ȅ`veEn,(Gȃi'uuX\r86Q`Dq ^pX[Zx @v5!1Zmõ'޲diMR~Y X5oWԯ6 e]H}e1[IdnWMlU^ET7{v߃bPЋQȠ ؕ845ٔ3pXF,ޤo|0knQeKB̕SjTPX*F}l]Ld718~X}N'uaL:ȱ+s݊@r/(MO_oSVecs+,Fؘ8/<)÷Ko^ʢMJ4/XCK##Aw8 {sP78[%" /,cK(} \itȦAv4ɣ[EYH|c45pl &MS[]4X3s^aj7m9vNʯ+dխyj-73gyTă1ûd|BWw>%Otià g6'zV5x j=aJD4m$8>Ŧr,Z8,DN9#OM=d~ YRR3@=uW|oVS2lh<*jev"iG,F)u֝ U]ف5@=!a!𠿴Uz)4xʳ%y*bM;kF4,9otQu H'#:P|~2419$"-3ٙ_||ݖ7) qJ0Hb|s2}ap^hCg}ή_g pQ֤"DțScd{i j|LG6n iPP;¥V527)xU`A_Zӕ ()?3D(YhxҢrf07ELte&mH&1rL`[8K0Xw_!a[ dVG5\]2C" P^3EA hi8Џ\{{#Bt{{R8:>ƧuZdR_-lݫ%D7~,}`O+:?SԽyNr6ܒR=~91X˼~f}AZuwe;-x^ +KèMV'6J}'E羹ںI*nhT ڠ@ FQwqj:@Tb|v 4O^E@ĸ^Co͖ 6MңIeMuX CeHߧ4گvnS.azI*L]xNY2e!,iNH 5-_n_$Ҹ$ &9̀ro$v=HMЀlY0pIBݿ,V3 h w)Mla!={m++=Uh;A{#%XN4my#"d5UQlMb\Y)4wɐO4&JEJDcOQ,a`kRDҼ a vHG6 {aU$io<'AP.-9lsDq=6D/-֖_r;s,şXK2 tƃw/A&ܙ})L0W/PNiuk0_-gTm|E7nVjn[K#=gQ1wxO";[vw8w v x[__EyI"6,0'jtGEϊk3q7vi@EީJ%2')knjJSR'Rd޼옍ˢz 8Y{N &Ir&uVe^>xz GVwqI}CtO'n:|cv\Rj )ʁqC V whV5V0\\* q|d1ǧBLFT4J ڄ{89rWg{?K5:;< ֯iۮ%wf> R 88,b>L{Xw~,k8md`KiB!cwF^V#˩Fx7LA݊RH *U rsiaSbMȳA/}sGrftSqt鈅jYZ7 Q1Lɰ奐D zi*{P˷.:? S}9]u-7I7ndu<6 xVhU2|LJWS"zC$VM٬Leܩ gi7p j_7_&~)Fe$7CEEǣu|1OjylD.]|gp]{{aDFKǟ?+/ je6Nx?q̳s޼-+y#c,uXtq[*qd#<D?aUȝg := _HTƔg,b/]aK!m}:ЖK乁46ׯ [܎:SeKӥU3/EaAqgpsې](ppԧոַ3jf0Y9l^\b AXb/` )`i+4׿vw$igv ڌb+`6A)lߢb&x>)}zTۑ`^ȍ@H7uGhR?X9s2v>7!idqc ;bN |/7:R5+N(F7Z@X{lޏŮ:D]"^m-;*,>Q6/vxй373DУ>Yv $*dcpy^_H2`NdsN_Τ.>LC^Oz?, E*YOEb6ᐣM#6wT(s^Gꀃdgcw+x`U#Ӏ-_ZBV*_iu[{l|b5D/ HlOqL s i'y+8ӶXL}Hķ30}[SeݬeDhNŷJ8gՅX T{,s=.6yk4,LmɖHo\,9v%>.waˇ E7ڗ+ @;kЋ,дa[$ [TNu{oŷZ*lbם } x:OpU~ufm~\sy::s $4}`>}jZrS|78hQ+|K'!@ cNS6 /wتObZuCh);Ig4P0BEbJӯ㡙;L)٫"C6h6b:ѣG*bg/ϝ-u}>Y pp`$ymz .'`m[> {CdX DH>|JG̚{V L4&B yоewљ6J@ڵ%+3Ď! pP2+&ъ˥CI TTgg \v zAdwOK11õ^BQ=idL[G2Hd &{鉸]AY[m1D.x\46|{|,o:#ul\X"yUlsPnEg 7i(Z|u|Hw@t8tDG"rflp%gZNԏi=F`0ѻxG,|44XM{&:>O*-w5R"3x8yш@ DSdRY%XS@ X<<> _{"N 4~/ZLQHP"ϷܳTk -RIykA er&P8;+["i90f ^uZH k23/Q) `0 ^\TɫV: L'&*%sV9 y/n5vS;{)Iru~I :WuD686^%IX!!g9~<:##,ΛR]t4Dt[\CzXP\m-QPot*wߢbg:XaKVx _[SL2{)qRlY%Dy~[^3 ui$sYV0YiCM]ˎ:n  %ڴ3&utB掎ܠVx  ̯<%+iWw﫟$")k r{*ܰ B.̼۴d Zz'| MI g .8'|Rp,օJג)6{H6:F35"<韼;_= gϤ-:KEwA-LU#SٖdH`maWR".<bs2b@gZo&Qj}4l͎$@E"q2Pkˠ0r0-eg~ox˶*D=7_oO^kǭ0U(!ơ%PKe(0t\5!GHzq6z0o?zvD.^W$󊘾]ZL) xFYzQEh|+#:0b<'pj06f 40VLM* .[j\ ~1Nѩ+Bɲ~a?\#CgVi|AC_.X ˛0?Q<ț .0cJ-arR-^IMb( q@C2oQ?O \?|euQrظƉVPʁq%d Td_ϲH,S JDup#]DgTX: &l5FYuWh33}Z̩c D(0Xiq7C 35a fK`،X& Q1J˛ˆA7/uduD*K%sd$>WZH2uOsCT_\,1oi̍=YĺyY& S/=4N\Y#B'gZѠI?A9jm$_QTnZ ܼneV~Up$8>B71L'Y_3e'[z,QO)ką4!h1ҩ|A^I{O(R]!,ӹS֓P;{ <9m̰u5`4rcΞ: k1D'S3ah3þޞ~@IKèk'ɐSU4HW"jku3ԩ:mu*:bΥU֡\eWT7e@Ky:KLBKW?yP3QOSj~8@Ő<P@&gcWߡdXy:Ь%m^n=T 2ubPNZ9=6ذ0b9Q w(1÷A|nnrd൭Mt-&>u,/H|}9(^4Nɖkd<,\(Jrӽ%( r4%.>fm ^Kik7,UYKUe0œyƟ>vsta"(E*)  `{׷ ^Guc#6w'U#=yrU5>s~EKu' :NMD \ؠس00qNBHysP'^ͨ[-@[ߞw} Żh ٥VZ-ŨxJ5H dE"4}wBV9_,-6RpBp?!R~>AZUT{OnTKV'm[!a\&߻\ixXFHjؾ !a/cvY3oQ$s j71HA.=>IpwOl\֣) e|NtjN8sBAcNZ;79OJ^[NT򣞓 jYa._i.#rnc+Wk] _7pbۆ zt4Ȭn4'|O$vU $)(̲"t ,͈{.Yy7@$kna1k#a{mE!g<5JLwíyOdjEm/BpY nvK7'Rb&Z +$ a {Y&C:%%L[ѹe=- BD7#:6|kQY!'[0xFF[7M%i]\FhAV%EN)d=&ZsGv5$dFm<݊Os 6d$uP+|ZKł|w*-Av'+fLBP%y NzcR\ޢGu=I OMwn5އ{e;%˸Cmд!dQB] 8L~mB;DZ~0 .8v,, rWIu.ΘVKOXS1 -kف3,?m,X8-(XۢR[ɸEn2A?_B !H޹ oh>Kϑ -|Xѿ(u,bΟ.LH8 ֎`\I*6vDS f=cHXsXu[z~ye{ ^+$& (Ðc9EVt, i \9A&ـE|\twr|C \Wf7 uUߌ%%n.mŸUR%q3%]4\(98{g3z|:x<z#)rP!+D%C? +}eD 6qݢ>])?< s-X::kbLMDh87B瘌%~ǧA)LTζfUqJ ~ h r{R3k4FzYV_8aiC?fS*KJKE;õwŲssP=tR)Sq kQk.a[G7p V=ZdRک|^,^by& ٪.^5q|( 0'9/8~]z z2 V-UKS}*9OvX"Ԡ/QcfIduh DC=\E2qɾb}\dInJ!<CẎr3\)6¹рTPO-1BApC{*E#ΓW[X87ᥑpq* '[)|*;  #i4^iP1R)RM8r91|8xHFCƖ3|~t9燤4g߾Jpn4x/zumt`']:ƤD Chrz4+.V|ȖBQ|̊B#}ZT J"19ensU;H~~vb*l U׆fߛFVWKsWPjkyEx{UFUs\O E.='\곴Xt[niog}3;FW>(xUZ)rB٦"`Hڍ RF՘|$Op_ κf&jI=[-"uѪ¥eQ;>xi+>ȚϹ(F1q饳H7EPN~\e,4mTԬ^RQ I52M^ jxDѭW$ zrêiu;("{@^QC͎~@ik ? tav?Gd^==tm8 $(|Dg(ocUZ 7逷jK H5|qWl^na3SbEzoɜVωƣxOmǝգ.G@NєBa9K(ҵ3@p['Ut6οjl3 iiv/|ԋvWr:;|z`9wM}QkѐM} lqP  zLˆI5A2r@%⽖ Կ.o9ɉSrGTgG`cwgu_/q1@d٢YRb@BuSċ^v'youH`$dyP RB?_aS]?8UϞ侈= 5&OeKva>Z?-ㆬ %fϖvN`}ڑΤm=d yXPӺZtuNp_T4$ʍR7ALh_٧,`){Jm}%鄦Pű@drz!~ښ ܵb~q63D/OpL'% RGHqƬW=E"NxMvGb\S^vׯdF]/}%8P򴴸 !C.20aާQÅ;?=G_82C($3 V0:,%3}J>߈N+]vMȘh 3I4VcyPm bQG5Sا"A/&kKlA2{OKIG3N#6BW0 5,Ya_^)kASDU-T )Ȣ܈<A/k>xm7IBԁv=_L_о]T[bk#F1DzVٶC+ 1-R 9\=QkB)7jk/Le;l@r:*dQ ͱͅ`z<"TuTad_tZ`Hw #Rb}Ŋ[8X` Ć !/nTm9cylvu\W(F 13`hO2Fƭsqs1 "J?ǭĹDLǮKqk[~ ۮ)/ο+rrp cgC8~a@DUҊM%h}~MZɉ犘s ۸+.r ހ)yWH uMޅ46OƋUc6ePh)S9^SFi<}o$o|EYuB㗟^',QA);W` cS?*PEܐ"1-ntt::.5BH&~YloV]b& ]h2BH4U͞%nk9o6vc.l(#6i|UޚoSt0(.Hjxu+)A{P츘^Ǡ.3C|oTɮ&ۺkWnqsuZV ނ Id ?/y3 b߈̷)a9}["n˧>'˥讆ӰxDѓ1DD _~ 6hJ9rHbmUO ]K!59U)NZOOHgk9I)Ahy ڑSNnxMR#$?ʪD55@Nd۔F'gQV4'SrE<^@~YoT#A~`jԊԗɗ&1:5͑}5}3,:?wO_.vSb8ҎJ0 )[L]KϪ1FAM%iDk1 4s$t1bD(\j,Px''S@Wg[-ӄꬷr!_{X[¹X&L{ڭ(,hNQطFF_y$CJ DWb\z],ke „op"'8T Aο)U u U$:GgWo!$Īn_, bqAsbˡ]<>1{Q'Jq!,e"ޏ8_aQe>O*;f52hDJѼ~Q<8B^]m]ħͺ ] gR/,XBPZaAX,'~Xl]-] Gld F%iG=Vwwe$u!SY ԎPuƗx#"5?I6J>Z$!d+e;JDL .?d ji(}桼UMB $'P0? C-:b}da<`b`,5)W `]1raz~lH7eCoT ϱUgI ppn:]?7a7A( ~01rx/?p(i ͔NwNLD;[(Wvm' {)sJ';m݌V mwB8ڍbiC2v V{JsVVnI%Rܡ 5p'Dhwuq `~ht|O!by5 %^>mۖ󪶍7@=D>u쬠" R:*FՂ ?(,->4A"H$Z<*Duk _K;ho; ͫpCC xyB#5S%Pr%킛[{D24ܤGڕ@?:b _&kdD.?FM%3s>L5!̀XidͨyR$4c]B! "]_' w= # ԒaRR7ӵk':i} H/NXs/Q6Tg'\ܸiDy, 52,#^yɯ[8OoKnJPNw^|r%[?}(3Co.pqoAO'[pJH)5כ.CBg%E aͼ1TԷ crKI6 ཯>.yGMkv s&[t-URbAnGq*'`6;NGIuGFU,KAR&7I_Ж.|uu$={/#UԞcJ!IR*N%*[n;k͖d|jSclw/ H2$I}XN/F<@ۏ"Z5ɻj=L_5Gj>P ;tp$R{_s1&_r>B--YYcxt6fe~zN3St{U[%fEszX+md7rlW@Hߺgаx |+o[O*-5Y-8{YnKLV/X.p+Tp(B!7bsTohBRr)l "a!1  Xi?3}1t˛%s|9ݏS3ٱ'{ɬCaC$mcn' )W~q6*MWۆ( 3JE_+}g4[IJfP%-ǻ?/ ֈQr~ ]fr(Vx$bS}fD Pm>h@+h)B鳋B@n __f9}^V ,ŷq^ZΦd^&na?mͪŶfǜ  ]s>QD9+*XdRHN2uƻS?(/4lx_9^r|ǾrIÙN@9oH%&`KЈpS'J\WWmLY.$*7 [X X-L:EeD֊Tx*845}O?Pϳ gL,"7ZKTnq*4&zr!nʷdX&Sr8q{#2hέlړU4@Gm-sGo#0UZ㸇xAG\*_J:7ꤙp!W4ZҼ >K)ƹ&gu.п .Ch  !v.[Xv XJ_M.` ,N zX;l+bǹ.3NjL#O~Ѹ6ZHW"]2ƭB"9{{~ƦZX꓀YQ<SIs}BcH4l^!kw\E('$ Z l}R'ua_ 1)7VOlu`i*ۏqpHk* P-7iGH!Ej!TRzt(?bM`'uW5k ;SCCC=( xWꇦz~^5/ ]pLhVf#\A OUqI,ډA]W#tZí^ "V)4Nű˔w/+|␊R- Tt{%$V;Nm#9R!p} O½ϘZ>AuWcrsY`S* k~=U~=P3O}U&"@!*2B J_{ii㡫uƂ$4߱ބ[: ôTVHJL+1F֊ęȝF?]G?e'my D2#Tu)Rݩ1W0nt̫8+@v' t>Ujb pr&:5.LzN ktN? x@Je΍\p+5LB(gbOq0>'H&UIՒ ۸92,?]7϶jx}O5ќ4jᱜ[X/k=&|HW._6}%]8\pyF+$F=K?7sb]b&RWCsL9fJF0:JR[.8 H WS2Inٓ`oI /"ced5?UAt,;E>WpG Im}@> C.N99.(v#]%|^)>Djw3Ow3(|RjD(qǞ8>v۞*P@BחR)th0MgeINd ?KmP}r"p z<48˥`wP|F&W!8o (ScK{=ҏx# ɩ V1$[dȻYƌT`9SƲHL3Z+Cy1@~=5-W#Kk j+CS@-͛-Pf1Z=P^vָe*nG,=UgD[ XKICAJ¤wS+!|:`9y^Z]B>!U c=pPmSnܻ.ɷjG'clpV4"$V]NԹVLq.jfǨײkT LpIXDV%@;,SJ^k3 Tz9"~\5;d˷eϬLpvzO5~!mRBо4g}b& w뛊'߽S'2)W.dа 7+ x \x]P&Ր q2*ZYpEuM֞$HHxC8hPw"k'F3 XXwr̩bTkr]>[o^6y{ Z, ;t KeVq)T Ѹzm@7s;/q1jZD7꬙OTUz[jٲ @\}!INS`KU9Hɉq0&2rϣ}N;P3'vMZF\L𭸫v]?s6*Rн%D{t?$Ae n,"} πz&xf0[fqn+1H8l`1e/@=vٌp[t\jp4X&*X@X57\&~~ҿ*stߔoaVejh ,NP<}&FI>,-T@z n@|"pBY#JwzC :mi rVH<ۇ=}|^B=qq.bb|("36u.rذeɻ:!J:* Ӝ\|c'LZcyM zE$_bFUmgw]pߵzעPmqEO f_'!r$P$UX 9^/`+X2.:퀮CaMSnȖ_ U+;MCؓlB5$z|T٧͗ 4qW񓽷@?N,-[U*wÄ`ז\j/t=88ϲN=:O\{H57[ A:"̦%*<|53$K.%f4v󊉹ceRk{N]ZVi+('*_*V:A'B8> M]V6m"&[107Eo"X`|J b苪3KuMPDVn00s9S:j]poBT$dXM9GDO,u$CfUy\]UK_Kkj$=du3%Bf9 \읗SxJS#EwC'H[lcd٥HHPjw9p +ol֬ҶwuqFegP*=\|tT4ƒg<2n[%-[- Taq-+.Eٞ0Da$&{8'#^jzfu;?Nh*soŊ<ح-YF1K|5a@L_rpGHfW-!5 BoLort*r'ޖE]/1]q6*&^{r9$ШnK'fY9~$̫5vii̫[Ѹ1?4xf< zv@UA`^haD!/fDjKRW.ē~pa5qU<@̜d ]EjjUFQT η~6pmzU& l"6x&-w'JB-ᥱ-$9.vtC&DkS9,b 53O( Ĭ}$ـ2zP4LlKFi<]HTJg' %DgAVwSʸv8[D<`# hoM:F ֗MZ8͠7 &ӽ 6q ,ˍb:?{$=5R1=4fI_߱Z~w'1qVD֣_F}xV?$b ;B?eC?T_/ oPi0Wןzp4Zvihi+t$^]?6r޹:ióoԼsa*%꾮 ӏCoHqhpR-C~ȗ@#cȖ{ j<6^S(CVږ6pbHJB`ƹFt z ArgJ%s1T/zTB~>/e a?.pY' _ RC simq]!&R/V x)Trߝgڲ'XnDӷIK\RQ}'Xb'ӻq.a{zϝpc#U6:\!=IR1a5¬7RcRr& W"bW_hSSJ& ճ)oxՕ*-/NHet+a#y%yW$^HkD=ċM R%/Cz'61jcv _AEsZ!9)%?. txe& D  -EzoSj kt̢̟h.7=;2g -X2/6JF$%=ץ U_je/rd\D/U/pڊ2:T0@CSEZUиwp$p4`skr> hAцğ9%d%>) {$m3HIO_m#ET _TP6Y'|r7AUZAs+źTjӉ{ADo츸ï$5vl3jPsy]1n:%c^=z&D;e8F5*@%.jy&襣x ;EER6 |tCelq# oY0i8ʫOlN<Ǥ)-3kWpZ6ۖylPv`K QkTpmwtYE7O"bJ`4UPf "H}MĒka, 2bE1QE> {|+^1IF e-#A~U m{PR^w OM%k(Nue7U~L"jMpVa{l}b0++'* :ctz§|M&ej8ܧN](fƃ"Y*Je320أPO2qO x% PYG%v`520M'܌~-\.5M $"1:d$F)HS\40s<'H\h&~;B#fnq4[igixnyJkݩ٭(0<a4!!5@O]53pPt41\(RĘv8b8Ll&x|ԋuK:eӪ]lrad wqXWx0ܛdqئVCZ?v4cctM"qtGLk)>e$'NiX t%4`H9b>iATϨU8oH;t?x{Nrtug>:(L.O M>}ҹ$s9 xG,ͥxL^K- ]:صCdE6vh|4qb9:\Fֵ/0_RѺۢZ(Y"ٓ3"{`؉{&^\杗jQqPv=14@!.q.)߰ Ge=59 }?=8W^!ri E^|iRWjۣ"< e]X#7&s*"Մdz⃽NokE`NKֺ{ =Ou+lεVj3)Lui[Pl?t녺m^fAaVJ6@%.L s=`د|Cְ!W\rvXFc`V9ҋhAoTk-﯉Ӳ)q)\Vf7g`٤v XT:qjS1q(crC"N rӏIBWI<22 ђX95R\}JNuŬ=Rh3Χ?;l5i7d.5 {8<ъ.cۂ6y5t[`ڃu&.).*u䅾mk$݁[5^č=#Uasq*K*m5L.7 ^]Ǜ<9sXg{KEJFG)?(chQ=t&߃ud$>@`]ήAngHסtB Lp'3NBDV\|&դYx}a@[kQ_⡧ ;y4|$Fn48J_HHeԓ$,z@[ą:Y4jy4H67͚ FJԧeyO XJbI7POUJF1 SrƬUFjZtWC,o㧗Ϲ.s-d WğX%O .Z/W$Iɝ9M:Җy@0# uVpluؽvcJ8u=FUpA*c A(*+>)2t"iW2 㿇x^|ste@љI`jNF2d!]֞%V$#wbV.1})xCs3QGK6Pe/J!@jfTW dp3l Rt"ʏOt}I?v8qi:7ru_Ens\˝e?ݑإ\_!L )Yߩfx|9 S ZߨZؑ~6YHx7ޜ6-?Vmw"A-_(w<];pQ$s9אA- UB2D719m3<XJ%73dB7oB9cΈueepcƋamR/Yf wj =FEbO43ayY뀎4<İ.j I?"E2z7׀dxZ/JfW6_7GUǟ M$K瓄Q'!ct7ecXe9H,L%+3. P/IvIm*s=_xgC^B@ _z#xr|%D@gSA<9ѢKDp6_^sh]7U_:m=lq !p1E w 2!q)GKEe/ J\C!*Iiv:>1(XܹǸ'NZ{\u$B%so #Q2f2 2]֑y*Ho޽97i=oK3w/G[BoGoki;%)d=.*rw0`Qrn@2 DTުB؛\w43C؄2rPP`*6rޣs, v(i>x ʻ[hƃF2)(LKLyJ8؇$Uy]nLר!+]љh23&L V4 țȼVA|:G~*kC~;Drp7rMA$/lmLc{v7p|"ZѰ5sݏr&FN|7DC3PT?ùҀZ ~=izaFj͙6|]9z8Q;M@UO)d`u}&A$)Vp 0 y.A#IpJa%Rhpt3J 'Sm/of⍦ hyGrtEEgXMHB %+} 2hz|?\&M6XIk(O>QN@զPEMJ\-Ě=.&m4< eIfC?A.?qr{\^ta%rzX2K~=v?/l3Gof0x 4ev ЪQn2k 2ۅ+qUY&+OA 8=IRG>YWz)hrDݳ8D]}]#]yQL8!r)C7ZZM729`Q 􉬿9͕1 H5BHvDU.>9s_I3,t.jr8fns͟-9g ଜ҉1 T9PW ^ 0kKgpȅWoq -2zq}L00+zO[c/3ZH [wxBpEJzk{M;#6q7JǼV'TZ("h%W#/]@mtgLkC@pX1y<);-!?赢#:OC~_UBlϳ A@<\LW" [1P3G%?+n"RI0`m> bp̔b`x/da.{k (z1tRi=>HIsM2[`LLM'$Im89qAt0 UtճB9\t\uؓxVQӄŇ\ıή}x)j9I.7slJ oWs /vUyvUϣ~*J G|>bmgkMUMZ+ Z҉S'd[bؓG[`VkMW0X սG(`jl^^4#flP8jFdy|KEt˺hnӸ c,F79dq%B2;U5>?Myw YvœUR'0Tƕ #2?O&ޔqkgnLLVm37. Vݫyw>8fVDB /5i`(W;/~ pYpoH I_LN@ %Hr@B[:Ҟ/]R?SGTwyCg]tknE%<\.u?X. de$ B7>NYIJ !FRG/rF2: \KU⸱ oE 0?T-)HxXvkmi@  r9e6c2ުƐ+/d~"Nu (KZPHjBߵ06JDhx8=SoG{a:3J q (]y6g9QGd ĕ^.>EJ2^I{?&d_9^Go~*Cti.ƝcڧpUZ2ab6 Έھ QޑZ1 {Ya}arB3[H> 8XLL=ϥ)Ӿ)FtYtvbP7pjʤ { 0U/~a>;fO4#0<10 $6`9(C& i6gt le.0b4[z6>y/roƸnY<2_5 +E0WbE/SDNq3СB@v1ƛZ,y\@%pj]os26ӕѕ@NF@;F%w"8G+>]5`7<:RTo$XDaE1Y4Q9X+-hj # c(kO > `SKܴ̽L?K@_b9{7Xi0G Au6NߊF~]8YxE/&ox_ޯk۱PA/+A\-}Rg DZND<_H4{&T^kMu (-Wg HMPG%*2Y@lUiLnٌ *~byd;F 3Ӻ" x/H@+@B0Q{}ȚM1ny]X#~?[0Jav;J Icy5u"E'SKA bd$fJщ I%wkz btX*l.4SN> fكVKqsRh-[=>o1tߔ8Qm+VyUxzDguVn^ x:C'4A|yd)P+KԨIOs!Q>O>~%TF^xG" o$`/. "),TצFsp^E8ژC~, Ma`rx4yeXks:5ˉW)ǯӕ@d6a]_͵SIrwI_z'PعWWCN>&`|e]xJ,Z2(zu-ŰƶWKv*nfOvS%X&P V^YJӣ5Nq; mD0!$0"z ,P)(Nfީ'>ƣĸCN HW٩50 xu$K S\vQ6#Gi9n/X%#Ź9|qa"cNOWؑRNf9xe%քXB1O^QIC? ߢ҄,q]gjѪ 7q.}m\hIZK$ "L{zִwT'/gP)6gi&Z@/.p`h.0|d䭹jrCcr\%A+frOֽb)p/_u'1 ՇOX<;| /(xF˨s-WT ;ztle**e` ᐆsڣ}'oՔ'#-RڒٓwMnuTE7zVMZՏ˫o^wMUZ_vͶ!ȎQ >\]k*Ct[v9G4vi~zg|Ѯ?Qͦ;MMqZIuz#4"E')=<0IqA2(`#9|"Bc?ހcopm]'Pm2x[Xrarv1izcU|1?nY9bd9\+U&벚i̢x♺d"f'@{vD)ˑSA8,^]ERGo-$ ӉT6\UaJ>tOmT.1wrڟ1HƟ_vy qO _g sb'"4I`ܿ}tE[z[9fݥwy%=X;QڡO:i{H(I{>ڭMWJ?` g} Z #7 |SiӦpjDEq#չ&.ni?8̨3d7&f]qY ۼ9DefAo0 ;]c4`B̌e[al)}wqUfėD%Tz0=e <ЯA&"׼* 4 BSIǯ s ɐݓ'IDlk}Sclwr@'"G%WJ;7gzy/GݝSAe81tn;76i>Nm@cbc)TtP5\֮r!lR@vݓwǻQμx2i:1?{=K[Udw&a(ֿ3j]ǃr,[C E4kѴm}/B"qqAOB|@r7{fV8Ijޜ0U%hW4~>}"N4&^68>őވe>!||f\$]:^gf>>LR&%K/ OlgA\wwmBP+p|0-05:99aV& qWAS|A}8L[5^H0 Ke,tFkd_H1R`ˤ1l1;lkcFN(Џ,Å !}QE6.+|iS s\DӿE4L` H^|p 5XS-J^x(be;`U?3UJDH_e$GmFr8yIsX>|ї!')[ ycs兑%ĿJ+4T1'WJx z'wʘO^lŊII UQYjv-\ %edXץl&q$0[jݳRu40{{ /eFG6>mY?81as1;bt{lOJǓ_Q xJ h$Ք_@՝EDE{$<=؟AٮXJCr.30v70@s4iuMgQMVE g{# OôęJHi[G,F /6Z|zIFIF>o9ЎQ{&5wfZ GJۦ6b2G-I5Y3CqZ(w[1چsb8`Ԭ.(n(-g4_a4(qP_%4Xo|oRWdSFd}W/SIFA{#XX:ºc$ z<g7ǽax> Z5UT1uan9 t=w ϐ9*[aF脍H[%Lnr&ͽ&ŒsxV1$4ۖ7[Pa3՚ˆ_Dz ٷܘ:8zM.qj#QɶXZ*mIMY/J9p@S*Rp/ ʯo ({,4=)7?-C=铏'.Ih$nQڀisN4(cn<$8k_L=< +)Vi]GEQ *3{1Nrr!o@%fė.>?` `e2Q=H-qxfa@ /ˌiO?(*o/h^`DaE0Hi7˽h~y͋kLx2E*l{,ʾY+)ebe34K0`uL P0T[.lƔr+{P&3hm;e%M?p0\,B'#QIvp@r<= BXjr<)c;Oaqa=3Do,ޛjZ;dcdz)i$v/nN!ݖX!;|0ſ{9Ġâ;Uc͡SpU[q+/@T|j8 ۿH;oju\eD3=m?1Mv`UŒ?cjS|͹hM/ hyTFט|3XvǬSg\Ux_c8&S$^>yEY%_Չ_טdWy-.@$]cu^® lu4{㦐KO~Ďi 8|R @;, BDeMڷ ͕J3q0 /^N7I]۬ j)$ߺ'L5Ve)ß2H+,FM@Y_2@.>ɽnY_:vv\0%$.)"12Jb-g@˔|zWHxP-KA7q<ƈz( k 2U)޻>j[Fܽ)pbE+}/NTh2&3kH4cl[ 8&]ᾈ-=>aq$Kh@kw+9N}KV<Ӓ AmT#4T | EԖiLEacǹ0%N4嬃N:8!(Wes8zИ {lS?g? T4Ei\”OĒ{dx-#K f72zC>G1Wrڍ_`ߓdqdP9{dLwav Os.𰖨$ Oy̏\[#:\ßjw`C< `]iPushvH6f˜Iؐ/ aV0ڭ/{d!J9jj}{x;.'*zC n +mБr7f uo2c d0)M 0$ 8 1Ip!`fϬtU@j{lh#ZtM4Hz{CYŌF[\rv{+a^35u(-IFay)/eopp`b>SqS$$XRAc35e&j[,͢b1DPY"?+( Q[{Mh@> a sTg4z^,[ ,aT3 ~ *}F f.졇rՐpf=5ZNTO_'`W]w.R^9} dvIhhRn?gޟ7z#!yp ~ Qف%3b};;VҹcՃO), QYH*RoxCw?Y2_WŗV64$诜vܛbn M'3:}X%A 6 Uʾs<˯3!IHA=1ǻU22yP2s&(E6tY'n+üw?e͑]i( Gz5 Ÿ$tJ W} mcRg.Mwd/S6[˪iHIS;@1(M?܌F=#Oу?,bȏF /qTaVbi-I{YpTk5v@+18s[ky&븴4yl|Zp~OATk5ǛYCdhoNI|5f-WװZ_lNt5)c p)'( I\< ǻa)ADZ|$b8ztJ##8af"M6Σxy njCA圛%KG-+öHhEM|dlsBjGL\^bcs4f8l݂aC Avrt.!j ⻕|øoJnN@GE9Y uD c#OOUM`L6ZXsm:cn-g4dWufrq@ol;.}9yLE (HB9Jy?kuH\DT2~E͖x*)(0r1_UrGR =qSۘ+E+M;ɜ7N88{)Ep)9Am|0q̈́hEՀe/'gk.!‰6HL>>}=l__gȔ}p$rogk9Ve%yNQɾzYgT8iUǻ"~C{=m=:bYl\aL #A~N{z TцD54+DHd)bk>mt&c!-ٙznU CdyJZ񭯫{:_yhOS9==<_u0{8p.x~/:07SH""uȶ  VKp/O7 /sNa)@3iR&Tz^%'%U9YgImMrKH@@d X]eYk8H$r7r/{R 5Bv exQE w6ǜ]V̤kq2d)jI9P$m}{O|5Sn/n{]79j[-pU0wkCVۦ9U,1.[!LJ: hNb\{ w<݃?>?ѷ.=U"²˭EA(A)Pb%&⋑<'6p_bvD13&gQUӛNXpˮzIMf@ ~6S= LVf1=c M(θ_͐S/\SFE - O\DL # >|t,`q=V<mHԬ=|iP:RsQLљt\%\LLlTx1L {s"Y&ܔ>"g>_ۛۨ*b#mKz?:KnU}wX:1T=HmhXPny+Ly )Q!O¤ Z5U<py ş5unfM:!ӋѼ?(YR97?⍑ߓ14Fq\|yزZUQjɲFEv:`oE,Fێ$J^#I5PR2@LǶO}j8Thp^g>ng+9Q %3-d5=̳.U/]`ϳ. %ykY'XEvs>%i$T=.I*.h2+}87.qW.t~WYDJlm>`t2vuqLR=*ݍK)<2e k_%}wE=/r&7ěך9\Swh{Q/״m rg03#_lubZ&#,7DR]"$mGb&LU_ cR@vjsox{I_L; cVфm)}"Q($to'&bm-2}jQ -7 7 ݫa_F/*UVi-F)s=1 |k Fpjv6iw i;"}D #y.-tqL&76A4?UI*4(@,-M& ړ*~jR2)ZP)m}vX񖏆",fťm5_=U׻]Fޭ=T+VA#ULHā[X'o{`zntsXz)h46%&bNJpe V~T7Xǀ^#K23~vg ' H&"Q )h~"/) wf.Ca"ĒTWiov"O" fa*ȑ|7AB2X4cefoɆ:J6 ڶI.fP7#_,9r͘Z'Gmu'u:tlT`B߀i^'(`-dEBwàcLcvx#e@h@+rtH Vot2٣w=dkv},p$>kS=.gVlԵz覟|!G:,qmdq.NɮJ\$gνgܾQ@>dݪ9zP4JjjA_qD+ʀ@jA[=r]RLjN_!J3MMtE^m"k03߸ɤ>4!q 氟Q 1W/ntGYYk>S K0D.\ԌNn y ݜ/[Ӫv@Iɧ>+gmzo >่ʦr(ϰج|Vj,cʡ}:w8 BSE UWPu㣟J5ArQG Q(#Fyl5;$l[+W=e3ԣJ! `ւ.g=ꕞ4&_n'iWtjejRv8uc$D 3Ll?ҿH~A*/lP7'].Hpۄ2SYv#RvD1,gK8w??BW,#t 8&s/ל0xۮe>މ*tںě%V,fn԰I W6N*|6^+NN]~ba77*nVF.\Lja@ t%n"g7X -fB F߽U5qk;FwTIuS(Hǖ"ii[/9pe>(J$ӱԏߔÛkt= [1KPeR{ S&m?HӐ^DFmZe"x\V8n\ф>h*BYRGP˵KM.ZIqi`_19/z/߹[C#`.ZAj0?/6>L@V AfoU%s=u0m;g=7<ٍh#zLeIs#%6؝a j6{'VW{v*T) z9Hv:_ʁ렸5s^|* LF#ϮI3U H6҅WotY4$ƨcO3tḘ;1Mg[1<DM: |~2D/c呦!#}ÔL6U($Pj,|S~uK!"KibuCHҫtڝQc08iS`/4s`S8c/ݯx&Re]Wb1'FD[RߤY1i?,jNjȟq<"d{IRYM)mvϻmxAz.:rNdhc.׺JBiBGpc֥?ͣm^e?ЀgN*nڦQqSу l&2z PRE,YuTPʇGBwd0eSh% -^0eJrgWoi$|T j,B--Z.OBOE0* b.ۣnU1m=9i=]2#V2a9Kdϻ+y{,F?eTwVaC$*Ub6w/ԁb+~@3$?WcfU K> X7B. &TX \͎4#zH7o?n9靡kߵ}YT»>ͽ*H+mR3/#c'?}L{Bn0-2,)p#N5u^ε7m%䀔1% WlHleNڙ R3o(+5IQR"֟J5zZ~&8l 䓚:0O 6mpzܨd*k6@OD%c}m\vҿ2he{b=v&FәVd_]p{ N(d]aQ1jY+Bfufl}t=R<M2N V +m VSЉwu 'ޣE=b;N5WDDlG󄂖ןm2Xr(޹hu*/v-qyv& }N)̊lgK,ZX}Z 6׈TD}P;𱊋#`4_:왃[ næx0;r>0 6HFٸYZ1u&]oz"22di%uqwZD*{W_mDNtyٜ{gadDaei[ feKNI5g sk$E|oW4;꾃cZp#Ӵ\{.yGoh)v[VD4klD[D7C/cq\qG6M~M|"qgXa |6"ZAl].c:VS5W7BB%楪1RׄQ g0!W$uD'kutb}lMXfj]h2FT`ƉE1ypJgD/0uye WtS]cfS5ERQJ_`vcD;9М ȵh~r6P |\1Aumc`~,KQu߬#_38Eq^V/m ȴ? o|hG.gw' NdC<󙃨G?_",s,AB/C=Lu@V=vQ8J^P{dA9DH|0l۔L"|̲4qIv/{RO9?xLLcfgG(Ge^ ́sZ0^CI lÉRSҊͣcoVoN+*[56rH8zc/*\Jп&}n0.Ȏu=]Z }hãG?3ϰBΠyKsO08[FaLZ*Į_Q7~-lDqE%jiy'vȥ[Kt74{|B=@/7Z%_|yrK5 쐨Ll~/zWaBR(n&9b &}+m1Ec^X˵ :4úX;خZ iVч_6S27/-Vg\ifH5~UhVbtrQj?Xy=jӔ9'pc֥.f}718%B;,:֭_ex:A7O`M1E:%?V0.3X ǼB*-W%t!)OwWT7Kv. U7E/#>j9zb/be3z<-qІFSϑIDrq"}@$-7vc1,#Tt( Xx<pDhL2vUDص'>f:۔ypl`sT$hJgC/ =;ho5άUNsBIB 0r6F" pA? @Q17cu3񛓡F4,}c'ûyμS*9Uٗ~^5҇8RRUYbb5Jq9K>ӤUf jKpƲ?S}&8~-o-@7Z;_C&gdlVK9w>8~x +Zǁq*a _0]dOk{M5$ 'ڤ/QOw[8pE(/jOEk0PH=u58O٤o4Վj!C=AKNӲc%27;AmfATrAo]|3 ,@cox챘Ow3e$bj9>:ѵn}IC˶2VA\lW~%| .>s&{װ4o"R'&][6}g W/RݵlR~J*BMBBWYS҉h@ǀo1eҞ"FTs`@etIQjG15u8#]"3CQވ&BI`4_beɵDqvi&.ӅQxxt{h x =[8g5 <#7[V:nD $9уYW-.ẴH!DL8m/btp6?By?~7 CĹ3CJG`KلeU<'ѾrCR_ ۴X ނ7JHcA[dG嶨⏲uDߖ -~,9ܛ&BcܢJ8 ~@+ƛd Aۍ?&Էw}ŷW ɾ~6 ;jED*i{m[bi>Z;~rjxMuѻ*gHym;4՜e&P8T 7a uM#9㊆W 5P&o!O'PC#/֤w@Tw;F @6NV'eָV#ai:ef38i!G~PbPM= UpRПvrha%^!Gt*QsMj)+x#!jsNҜ3p+~hm 1%x${pU62uF,ǟJd6`uj'J Z0\h}jR^ؽ=f"1{(BBMLfJycvQAuiw/RxZ?8E0@`97yrFBe ieUhGWZW5P|)k\E<|.g*`ު;n͙BSVսl*p2c; zo! wZM kÁ@\QLH!T%Tc[bo9{1D3s$.GI(m[frzk0u~gj˓VLo ƙmez[!0dMMpLuL[ހ;HC/OmȬb."iRI0> `Ě)~ofYfS&KE)VqAU ;ywpj ǯ?n[.f$4-W +B?H>?-ۃ[e?,Hx jּ0H]JO弮ltDiZY5>v  "ChrKJ|CjC˼]5*KQi+mH0Z>$;` B|[ȏi fϤuZ_cH61$HG"$LF3|蓂݃Ʊ.ɾH`V.uGҺהzʔ'rLһ (u.KsFQ .57'~/1>c+,2+SUZBKyjERp:,TMᚼg7[- |a\ד  *& 'ڊuC.qb_#}͚F( Β*,tI0_$Z>$KO T[R(qSK8\ Ƈ\hfR.,QmOCZjUY 'eo[ iC$YYbP|m]iAv|*sBzBPGVBҞU6l$~ڦ>KfqԱJDgJ2ee\s^hRʉ(<9ݶȼboq!Ƥֶ ØgK:5;eG<3pNa֧*ᔗxJgT,Gl޳g?/#|d4L9mBQgF<%j-ve?Llò2t>\M|jli(Sjv8E`˗&Э3U9=sH vzfj}!p@iP8пĊm73Ȟc8RR+E0esϿL6t%X#LӚ촜r2 rnl\=1%/ YL$H#_c87TmvZ`N@ڻ& byjVCS*?K Jdb9!~oA'KYj(vdp@8Ļm J>[9 zk5(ea^4eC<^NrzHԗ[;L ľݗTs-{}>c@Jܦf],-9ڤ h%SZ-=U{a.Kt*,y0FWt%fP9/O<uRSCJ,}A@0*MA3*K"ph +Lr2w#ćk~xE !p{ 9I;T}\e#=g^X}{@$edymY\38^+@L<3cӄ?p`~LrdcO3ADf[\M|Vi |к=]HAZLs1cH=7#| q| \ Qse:#S(1%x5Y4]-kdzT-Gumyk9dl7p_@pӑHK}ܛUFZ3vB ȡh:|ٿE*l0Gx5W]t62]9.X\W.X x V†&NE3?oһ?fkӤn>TdX1_G! U.vS n"O*)&m9+ ӣ ^ss.P 7ç`](@? *={Z`93,1ڿ Fs&}Q3~*'kX> &4 .C5XOI/ JkEp fm@ ˣٍn ceH~?ҢQ@Ӓ3pDy, MFRZV #;1m,^yO83SŪ*#-^UTGq_$_58}5#!CRLEQa9>ƓIJ/S0llj[jEKؒ2}-NnsnjH_2lK..tя~?pO_˜;5I{tR *B )Txɧ#&Ave^pvj"ŀ :A W؊K^?4aYC⣛sxU#y>b"ę{VP}UrZ1궯gv~za١Nnq\#:!Mݏ SƓK-jr>1? _+܊!)ev2k!*G[)YBWvD4\ЋVT3weER o 8^ZҎbK;z9oKi;/ǾELp.k(EOςLFFW _Ȁ =_$ΈJq-&rM7DWh*oh6$`}O'@ plD5(ӆ`8ÓRw9\PDH瓡eSڅL[D%b}Rx#qʨ( 6=Iy}閠7e~ed);S&bV("8mqp6LMִ( r| Ɉ-nqp|wCѢg6-@4 {65X ZQZl:;n`q]ŠRxnh# L{wOą`Pqhx!r6ؤGN-D TJͮt|ˡ,))FE$aen*BbܡH8PQ]1;kVF&uoM.P~`9n֜="C@}F?;j/G˚)EH h4 >: Pxc%nmH Q+n՚ QTbmh07 *_9`ľE 6U=0k\sF\_ ݦ2B8s<<+-w""D|JVKe9Vt9WnyevhRe-~5Ch btɗ;Kk*jE}^sظ7x#jzB-E2m0 Lu_1`[5m G %*Z?zd}|KaPU@ɬ/kLautwZ(.@f> E嶷`Im \QD@z}2.YfU2B_F@vB.jx 7!!*uGĦ N36G1!tx:H~!\B<|(i+ODThޱe x_ֽ͠ÅiNJ\PyzA1UbM@GKP58U h,5)bxNgaf Ӄ!P=ݬ 'iCtEٝ4Z)A3N8zX*ggڲ^kiVeFjzmmm^\K)r޲9!_hfC)Dx{p.bcwk#9dEОUFc2N[}mc(xܡ\dž턶V.&#E,du7R `Pś懓WvO?#NǔRǚh}'>-ҬS?:rx:aC 1'"*J\9܅< z8m ~2{B؄%vЀAzˁÕUnfqfK]rֽT2(qSj`A_[^P0;eUATּ@(5w/iqK'[V¯WBX'qqX ޔE֍xzؒA.$eS/rGʆ4NV'_L]N9wPOZ%'ֱ}Wwh]wଧ :- W-\ʽY;m:?!gpAVJjHyr<$ nvy[Fj\cgAgl@~sTnZ7K(t 0dh-Ѡtжe-ѾBk jyQ9r͸gpݍvˮ/Έ*lwѣkӰw7RSI]zk0XT'>Eɗ0*µY6i9`k/ڠ8孤XuwOdDxCoj!YzitX3Y@WW0=PgQ뼧 J+TܴuanL5}SoWI`p;Z<~!nXc]i< G-?[" d hIw[5qgeU\^#W|M\\}TNh>(Q05"w{ " EwuYLWWFލS{򅋽܃څQ@ɵ}OghiˡoJKw׿?WBNWfm>3%j~F3qޏefEqkk2/]Q|<4 VL) /\3қT ZS6[O6LvU)= s];9KF1 ŝ~Q>I ~I% SͺǦ<X{Bѹ/`..m`WR=ԙN*iZjBS]kZQVpOJPs-)k`J5ga=<Ȑ˝Y1,e,.%IB$+\B8 `=%"GQ~orwNC15jgKzN748nI/-hN&(!(DH;u;ؑPA0_.1gέB?SY2"y`Ȳ.!<[;>cfXNjC{4WO>a'}EWƩQ'MS܍+%xTٻ<:N,Lك|^0. $%W 0LN_1TJ=[{`pb⎾aWF5gr)l 6IW~_ՈgݩeS׉eR7)bM&(Ό Wo[檧#rʬf0%BN=D!8bG^$Nq;0,Ȼyٍkbݨl16)$U[#$t,xSMoZڠLoz>]d)YpSt[QQ,-A,JpM 5) i@+9?N{d%x4^ACMۮD}\/Ai_I[CڃB|< (46 \[@ƸKwIb$sAìbN g d" ֖ןq|*3h_zǶ)-y?Ƨ` -ю/Fe,]q, ˘OTL/=eCHO(^Ͱҟ>QN5f3g0 9J=J84k`1HAب̯p~߇%װDžJS͖ ҿY w< ؎u -k/\)pA+o{QRoMb hđavpӎV:BB)B4t$} XR&Tha>BgЮR!0JdNLc;F!Y3 `aOƀ"m2 =;HL# /Ҕ&cCF ?d bR%$ ^5.FߚִJj]˝h6h2\BQ#/3ʣŧJ1Y4㝵AlDL`?eW[gi ?Sx#cggﺛ4S+_CmHA?c'3k l07Iސ >gەxœ>U E) gH_ҎCr! kfaP0Y%-Ҩn>YPYoˆU{k߅_iDjgQxw]X~p%VVb1+zy$@M9'YrosYb' ;:|)I0Yx6qJiIK&1;߉ @v0 wE>51nX5-˳CZl#*(لm^JE"$a区}r*ޫ慶](^NG!(M瀳? e()H]aęQVF*"+rBy"F~2nM;mCNKߴLBl_lHY"*mԕuň'ɬYhovj͝H9vU$D~i`i=ۀ SmfR_4=uƒtl^'&RhcpŦDd!Zq6"Y >b\vmrn-9rq#)RϝF&P3=.N0K u0|x-@⇊<Ѫy}%d M[ wLE Ұ@>7E26^$s0&o䱬8X@CANE5IE}?H˽9O̤f\9grpa|فai FMPmzd΄MѦƗ5Msk_ȒW M1aHQ֟ЁmNa5#(ӣo'uS}RRnlC _pdk✰a2x_㐻i:=pX ]orcoZRt1&Л])sk Q tJAN EN dc<,JmC)!O;)6Q}\/Tk,\ᵽ]\H{N؀Ƹ{ ua[v%z&ElEQ/ #`+RrZ JX2nzuDRY*--w_gQ漻j<8ެ%`:#Z3G#i CM!qh~d팋8[:U&vUuE@[EֹyajUUQ>G |i_k+@/}@ ϝ(y&#V^E/Ɇ}0v(-`uvα0jEua=h^mKFOzn18Dt,1g}Ҧ'~ZSaK s&(:">!{ iSTNK>hX|ZATEhjK Zc|@j:R Wr;_XD-oFkѵo~ Ɏ?hX_w{6hw'ܮ̸x> ,;~$R"J-$!> Xl[?s1KzpW!W!b~{0 ^WE&w !*$>0+ql{]Ua6Uu!tӞc+EZ.KiE[ gANJc/IY,CU29QeոAuAfm,K۝"֬Rmv 51Ve }B`%%-PY(S!ظ\M$^@a/> Upgb'OT-9ْSo=n?2mvˮZ)'8Q)-F3zŴʑ=|zLP dH fvhC8w9ӑcۼYK Er_to5VV탑oVc3o&}JJ9cCF)-֛ϻC,0!JI?: t%Z;iEfŸ/qoF3bgyǶ 8|^P!AO-^n_+7X*iX J)t8)76R iQ:Mj:˘eݹ$(?ŰNe1Yh+ ӮVL$"C97)t9 f 7EDIՋ e .=0C۟S7d"nHn%tĨ[vdE~JdPq,N7l~sh[LQ¡Ŀ}UX@@xwug|pE Kpp]82"ׅD j {w #6zc>!n^vJ@MR ZJ`%N+̶ L)Y4|:zm#(D9U!Ce>KQ 6߁]L},-)otYLƐ8c D=k=:)atX}?\&6-GƠJCiַ~gr/t'U+M8>dҷ͢cIxP~e%76nܿ?[cw3uxGjDsHؒ:jlOOE]abyмbקb#6V:*M D8ua32 0Ŷ?m咒O^U A LpMn2]APólxlib>:|2Vnz}N'Vd 1E*/`~_lL$IҸ©j/KbvDV2#q'$VQ6RrɄnEgQK^^U~NK_-"igwseCDm~{* \4Oib`ҶDvkã߹TK!fYA!f9FR7͢1>Id+ ɀ{0< qROATA#gO]岝m|_mZ;?T7A]LW+Qbw1}$N;zvFmehC f^εbau+6gAdg]iԍϻ y`8WU姲Ll@-Ȓog V3kP<>K. VDBXZsY"`O)waO Edp{¾:F2kp(F1Y!n[ T&&MB%VPw1{@zv l#coX\-g:'ǕdG][[2KDCd ]tjكr1? OM+ ԭ[wº3L=G5-7)Aٱz1.RȪzȪTuCF0N*1,=(UD)cbD]t {7,i&3;BsO%MR9y`͜# cH\%mA,JgAlGEGqpe'U&TFns^Y= &q \R@`ʡ02 ]`ئ46 N ssJ_S8%=4;T.eHMx{X̤^17c#"MC鬵ys!E$ԙ4Q83]x"|ܬ9B'w$+ZS 'o;=A[؉!09{7#~whׇ9YfSVW1<^V}Ka5K(7O !/g5< -FS"I.Nd$Ռ$@泂Z5q A8T6N],YbTVg4|mg,&?9P<55 y/$JA[ڙ .3TҶ)&X>0i:3[ -?A8Gf3*69?wur'a|d57}xCgG{T5jq"$}]*Ʈ1dUbJA~# omh6u&G@#O!cfQ׿'处luR 9R{=8dD~7} ( e.a1h~w lˑiHW0>YǺfKV^}uɡ\ "iyV.V܉ 0 +9+xQm3h3KETjgp})/sN!ja \_hf.,p2$((˜bseZ/-@i*tկ_D8v"柝⏻oSw>3AZҌsqqb" Ys cNJ+0nǶ$ELq31L&h7-{r/8V-OsEjɌOvN@V|8"τd0^ 0ܿNMwHBcf)O,g;A0:OhvvFkRpU{B_M2QiL@ReG(մFi 򹙫%1@u7H۰piw^^hm&ժ;jgٺϠ 9DȌ oY\~x) n_ƿX"ȍHl1,- #:rhr=V$SPY%U~?XLjXo}YY(RsNsw\3I'' i2eQ|?ϝ`[L`x^mVK66Ub?;{%O=!Ct w| -p$G[BQ \2bzAFQpWav׬ǕqE?".hh43;Ǹ-EM/'R'cVU'`@1ʤ=4w+bȺvyP(@ ߢf=f}hbM0Y,p7j;2&owJrfЙ_O<j([n-U)ٛyݢWb$ׂsdc rLO璑؍1r~WCI]M(EU!e]M bD[sf;Qj Kl-{ [}}D]JnD0'O`QW y/pE4|Q C/s=hG^B%QK:\bYT ~e Ji5UN:O`V:Ol[LU8~ֶ|46u:g3|bQQ?8E#8.>w\:KafRbXh*կ[|n5q J{-+ݽPdnZ*7Ti:3{s[XZ{#PGp@MqvW9  _$v^.".iXDMMq1>`@iMrjāˆ>k[400j o A 2կIsCI=]1WpaW ,U`cM2*Dxq_ R'Xv >:@elZR @3̱ +W7l2K+E 9#I*brz6t*t{wEoܷı%|̋SnT*p|{\Oe2m<%l~WaraaO+B´МkS}یvnA~!y)ϩ%[z&!Okr"0JjI 5R ҟ-r|to0x/sia,pR~[WMpZhtc^GC`밀/-Q!=_vE7eDgn8YzcÆ"͑ EtyMd$6t-;^x5eu׫b͖_q!SҚ%<.9Y~w(;r2&dR;uQ5rj NM1f *B?ەR) R/'L.m%lGeݦCE l Eֳ=Zr;Qko<rK+ǻyqEY{S#`jv i˷0* .LN6s;M,:ZV"5[ *G,M֢ᯐ3z\ձmm?j:zq8}Û'_RAZ' "_$%dU&f_C8vsx>mC)rvsțh%Eit")(o?nias5ҡ# 5:Iph+%UNلPOiL,ਸxx>\5, řh"'+~kc)k?ݎΐH[`]Y:Undhp;<.&aljlS:yPYlP.$5HUNؾ kxH!O y1%g lqD1P+^JZ?EN35Y -܄>Mew=Oi4i^m* {# 6oJvjO_ )c0P9t8}2(QgZGU`FH.폛;VN17]6?d`HSR* eP;_@_: w0*ַ*x`{[.ڿ#mw(p>v8$RI( NH/# G7p%pi5I07O-4mh C 񖫁)R8%_R( _֮r($  ؖᾔ- V,PE!>M$xG@iTS<*a*m)jo''Z|^z9n$> 4^kF@y[6EvC,k +r5x+@@SAӦZN1k6$Ub"G1Tglsݝ2\ -8E=iD>qtQG(^d E -=KqSmPBAqYo6sķҲ񃴰}۽*mv3i~. gtbC% Sm>zm9)Am0un$ Na ~jiCg%n-2ʌ I5gRye)5>}ĝ5 纉Ǻr$_,)Ɯ𐢇ogM8>"o] ^>(NgYknV\/DfnYQicƝz&oHoֆI (7aqnG0rppE4{H49 rGvz,Q?CND qMd]@ijJY˲ $R cia7 K݅ 85y!S:|}_2Ş u CvQ0~8Xj)׳CX1"SW'uOAxX粏3}lojl|=f.~cx<;/]we5C` Z'ǾOWq=zܣ^cjP_J~afsZcitB.DA3Be7qpryƶ:CSF^`9ԨGh[{:B|8,JTƏ?Q:u' 5ۭW<b(;ϡO+Ë8U%Hʐ?7x )1nh BYaCAm!FYI zl?3ڗ"ԻXwC9X"q;0$κitfC'W;ǴN=n@{ ecPAkn/Zw:z7([wBGh_C*r&p6$rʳCTs a'@9:hifjAxB`?Ck<(2㪴TmVTF,<)$絤\⹠aBKkE72g|m'f6,DQihDCN x>%ާ Yl@ªX>3QEO;m$'B?r3 \vsV=u~ #TP $>H*j>I>%6 4ߜlNt/2_ XӜ2Q^_JF7PMчQJȇ?ݽ@ubZ̬z>SrVƙ#Tuybձw=:Goj^f}7?TX.K8۷DZ߁9⏂cqA)$FE O4˰ps>!x#/62{i8~*SYE9!OlF(Khb[ 4gU8*@6;/J'`Ep!w) `:D35XXp=*o&K/Yi3HZUX7={ 3%A3EJRkaU|ӍM+csRصMsꖆ;W> (3!L|jcD.FlXOԨ|t7Gq2.;ePvjQJvGT5EdC2|VwjXn kԐYj('<")s-i* s H( EUroW@oGy42`i'SmeNOˌ61e' (Nзg1H ۞e м(vg+iw~X%" BR#.:jG]YALq3㜯n$C[_=|-E)΀D5CwW~M>(}ߠ7@o<޵cψm("BD NyK{~y6QP3 >icsA{H':/!C* &٭w`!խa)HJlѕڵ֫=zIm\ưƢ**X% Bbze$&)Nd:u.G1,Jy#̽BP:R\}APF^aBtV] qW" n aՍaJ+Dߗ(PZSyr-3YDIE2ߵ] _IL,9SX=/<GK7|X8>i?:пbÌ %Lu8ΈƉ"2XVXydYKtV2Չyz71.~-ᅥ?"*Oh[Gx0 ij}KF$CgULH )xQkD-%|Tܪ6L-bhsc"g1-̌6A c}=4zlfh OEfbC~23A|Cc)ٲu"a ,]O!=zxQP7oI4޴1NdF@h [lN^7qQxӇL%k.;0p OL΢tRK:X3T s=In?ӭ8&`<΃Įx E<ѿ)+ u% dO7/HM_fʇ56xG<=Mֈ!PUR_A*J`. -_}K)Df "RrQ=Et.IlXKI < bӹ,iȚXh6||tSwocE[;UjM| k[s{inr;ǽs׌:/hg.GD&Jg$Htt%$ӹ2a2@QF<.y#uݦ-zP(jr6]ٵd~;~c7}ʱŇwZE f}>yk);\Pb,fQ-{~˓ٟiHcx(/1<HMb]zR1@ zW6+O7LZ>>h$BŇ o ڊӝ;)X%"lVߋ^n_oIOv\ly Fo%ȞQj="ndjRjZ!ڔ֩׋ƘQ qaEA*:ؼ PM5,#ivӧ4gX ÷#gЬ+o䓁/+/ڣ72XWLsE &2%q`s(f;tnqg+s[by;=翼akJG)G$HO~̌</uv _GPz Kztx3%C}c`u,S1wdKs;HYn2 Tl&ݚrG (9q}0xscX4q9iPhŢ0# t o b-f,.:P!VK2@2V۬InN&e%s&B!ZBӣ(uaM Sǒ.Fq  a~ʡÑRk1k3N?;nuFu02߻uF[%t$ ~[yUӘodVWr^??HΎe-ԅ/J ɴD]QOe!S1m`=ҧ+굦 q+ķp{bO3;N/?̩6a)qa7BQ{:&6zs_?ܢbyCϋ:pq5y&]m|L谄dKocNѰcjKD H2 |Ğ>x+b]|eݬs ~]xtq3GT=zvh-Ȼg2Fdwm1`S<Έ\`{_lAϷQgI;zcks@lj9]OM,}8nQ>\:4Uk`T8` &Jf9E@ƣai9o{kŽǠ KXta<pv6p@p)>yIG@0)|YM >  xg/mWZMxs!gUPXbF̄ĮM~A`VRf~1iRf[$cђE ^ŪGs<I% Qdno kj\Ft29.8A0|d9F%++f5 ٬H ->+F'z١#+H.DpK<\ ޱka`֦QʋӌVi7H#1c P_9oO⏵Ŀ4̄ō~1O1Yj&{3Pb% ?p/(eI P[T`LgAҼ-6D Ɋ|V`}#&}b6"L<&j WEVL~4m@{QAZ5ml̈́l* 5Kulu1K7XMFWfZkH{,TVF`rff=>y|}S Q~k"PUYU*dSAIݯt`m߽NCF|<e6W7N4~o^GCMw::xқ[Zz8<3li@V7LnjrZ&1/}%:C9w;6zBJ v6}ۤbqӃyuQ.TS۩;Ё=w!RMd)N&PԆԱvۣDO&?~c ;-ߒ5Qi]w_ uv#eT0Cm膇Hvv(xdǙvB`oOR. Y?/@:<>K4%$xyY4j{_crCݸ<<9A9iW跈bsE=߇#L)?868$M-#+C U-lp}yv-wbojWFԱc>,QBa@!Qo󶑫L}VUlxppTҋD`-Q }_ xid$i2ATgX3b)<$b{$Ζ3{š'ܛѵ&;([.n+)I"kPs|y39r3b ]ªsz>'HM9!IJgln TҒ.!s>.3z(҅Y` ZZ; XD;1\of{Cbsc篺AV\ B?tSx6dWsa>kQq8m1+,EFFT-@yܥB,@sbxY20 .C;'ĝxz'CR]FSv4]ni$OqZ"L :;FXb_y BoH ;"Ӟd"=F{xU];BS#7?ԓڥs }I"+daG)bqx?iW#gO.®s)އb @[M%,6&c]89j mL~M3LR.# ˫&I8) E whIU܎^ L.] uA֨[N77Ϻ dډ }N6TߦoD+-9SmC(=G$xMq[&~o巌ڮoBgW?<.Ez"b\6ݸ %mb 5a_y|;qiD5VqÚhD0Aޱj[H9l!ON~ZS%#C"`]P9UVø3502,=@R&oK ښpj!w>L*gAv05K9,^>QO߉X1Dݥ՞ӐC#0UB ^3O5%Ky$Y1`ѿH'-e%35dA{M{V IvRZ0i=<<r%ly_ob?F'Un*=+bܘCEmMn8vW6  svɋVr*BC*Q8s]dx+Ik-n/t?W!wd̲# uV\?e),Ԇ>}) FM~nfnc*e*:ifؖ`t6TxoRBfZ}YQDz\oi~HN<C}9[1MaZa87g~Vx8$nuPיߪ,|J:. xS<͞>P)+"6&DWP=jo?0)|`© eTPkBfܻr.bO$":ӣ4YQV2U1:I@r/wԛ,*t-#8CZgkd<߄2?~e֠9{ BgyE U<DLbǪbasVռ"\H;v9Lp:CSYN>=X" ķ:->_w%b@]u61W".w2cxGi:>7 'R%%esV}=b'V~΢g—Sh"To ^77~Eyy.fV6opAW»uN!kcש êLoATN^V~\~AaH`8Hq;??<.fDgh<NYo`j<-aZP&D`9P XǬ҅iYM=tt r^:*Yv@۱[>\B ,ȰNN9hȘ4ruH%M %jymV5!`8J-LkM±`[@%%RY60? 83<"3:Dj9k~ ~r<o3XǠ䖊S2XlW) ]%nj{2[Nm7_2>jr],P+UMɕ,{d?ǝ_>Fg/ >4uĝО}Imzt",>@zEnNmwnZz<,Tښa}ڱvfOЍHFe%R}q_+t5` ET-k.p"kA>^Jy3G5We2~*a/;GVSgt>BBxDU$AAjw̠IU1qoJ2?+l>*Wf vQ`͍SӶӤ>qiw͸_|a> њ,)VqLz?d)s(ʆc`Ee!Y_D3d9$'oF_IGR$d`6,TP?JND }FWfke=I1_hz`]j$8h6kPх W+BHS!lTq᲼#E{:1Qb4ߴb̚ V\) *+_Ozl &d: 5wy(5"6`@c/CkG5>J/ԫ?fd8Z<.,ZTȜJ _`."%2D^opf T6柳c7+ͿXF!Pŋ*%f_N S&<pS?(Ʒ[s3[N[h%Rpqd ݷTguL6S(!4l5 4Pؿ}$Q_7wj4G 6&qWep&\Ie$pvxotV)2C z,:;xӦ ?萹e<)DbJ&er[TlT( 15TǏѾ!'5YЀ%l<:Nߛ|G\w"sxw%Lq,zpȐkl /){xQb˂R;jPYMru"OkOfA!7?d|yA逩2?Lj3>ĻZ鄷+rgT@t>AyƯsұ~36Tݘ"gazڲ>>&4@|V@x`ל7U SX9s ~_/4Z[ L%J0G;`&{na/Mo@F- %RU|眝 觜rh1؈"g'[ B^/Y$fZ32[NHo3z@Ok*t9(GЪkvR#z&]8Iw.Yj 3uzItS)TO'2$5|Aǜ1,vURnA *}堨PiL'1Uu%5>.UfϠmIԌ!6_' ()'U1䌺(jl r6b*?Mg/u#/F` ɫSt6"$U jdhI1f Wu&/z/V#A.SK'ڦ5M|ON (W(j\$ʰҲIP#AmNֽ3{mܺҌ~#"1MMK0uH >Kw?Fi^H.+9Lz#b/ :;ވ:6 0 mlitY,uE/ Ѡ|`~tc+ u+B]^79viN1#~>-&2w-hmk*чkDcW٩)U28=zF,Y`)i۫$B{k)ȡ3lH}8Xs۔zےCw@X ߀fG\1ѿm~_U1ɂ{gcql(CM{*xCeC49)~ O{Tu"؀++X*ƤPGVD4/NJlgRP&eNqx/84m;+#dwfЄ-*%]8l)Y)Mk|G^ OR%\ ؄ rԮ,`J[@\AAB9/ny-D@6 Z$X]3B୅c3JGQc!j_  k*ٗh;T3JrM$p7F +.mde";i!HeFP&z5ۣd؍d9Y+w*~Pcʵ@ J,@$ğ6ƻ3#<@yPiw-f\Aumz+4jB'1xp'Zֵ"oxg#BG9 &$\gƸq|&2Yyn#itn%GМ뺕3l(F܌oC_HS|~ 3e] >z&.@#Z*:f21_q /*}CidOjl'#g"<ʇ?qI탔- ,Z baEJm sũܾrb{*>D:JTjk(0+j#ஜX5XEE|<]ģ(uF3J}C'7mlsT!Gg"=&Ǯz߰2_^RrQN` *5UaM{?>$y%޷HTf"KzˈGwo2pwg /ΘP4>rx<6 (R GM!ݩ>e 4f\m{/>o_QxȚp4=A4QU@8>xYkR srqFj? =/TMLļ*5q,ԼVX>3R2[G"g[] HcUvZqCѪd<P'SI3ZLpۧ<;"l.+Q7@yWz<*3ARW,{`2c>U mtq~:?Y_G~]!wX!",UQ~j 0Ӭȋwg`]juv}l;<*mQu.k#l,itt1Vi !6WΜvjTfDc˟N'aL#;+}{1>Qn\:,pwZf#dncf0U?>xn4RI!s99Fݧɥ8>`FCˆU?z^ZbZƆUT9s=ېED#Gz5>MJ Ɂhŷ~Dn[xӒc:ݓu^|;a7&)bqJ7%SQ:ؔsp4{1Zp9N&7?*eINeޗ B:%+rlDE[20uPyȼ:oFCQ$xq{>/#?Wso)kq3=yppփIԓm9+ e_=P ۉS~E/qer:4-{E6dJG1Fa)"75[k(v̽:Z9^IXpx[b wkO.#Z,`2bUީ" hB~?CꋏEj̼P`pzJYn]Bm#t2Y.gbBW]]3PD7YəTWT\tb:&8"<3A=3TiϝEE bZ9Pk"7_]VLܒgqS0fC ޑrKrNH)e3 ҫ_ЫVY,) E1L/|eSw@b>f~v 齇-(%ɪOpr;EMz@a3,PvH,O;O\$*6@t7PUmvB{2߫&DdzOjGVj2;o.(_?8)lIinKSQ6aM* Z ٞȉ3a;;.Z$8a6|Ev-Pj^6൸TB=~o/~fJA`ئC2GHízx x|:Sm5qI72Wbo:^ѿZYɿzDh\bxÔZt>FWE\⹾MS HU%{ fh W1V[|¦f)lzrϬدM j,+1ުGΐ=i$m 򷊔lZp u5{(^㵝lFu"Rv>ij?l況aL,c29ma`g-?=[ gۨi)E&`O݀}3ӛqu:=oNhcf\ld舽 P-iD _&$IdŋƂ=FuVM.v]4CAۻ[UwѮ8=o/]}AuZ!Cן@I8NXE*Z2*܁ԼwqL 1UC@Oemh;_W2ؕZ->c^q}݈gX[A.<42Y y N'ݢTu k)c U1CKLG6Rz$Mrzc'-bM[ S"4zsd`"=ۉbn&HІ:cK5ifsJW'}y=Tv5ȿG*p1\Պ!CqÕ$Cs~F*>3`ߜM,IK)Y{O9OF,8etrcò;a?YRwY{Ow CEQ^`Mc:gPwmʻO2M~ *c-^[d,9jhR҃6g۽-RMD! IG8C.EYh*xMoŠ%|ZṈ[RT2kEq؏5;"4HV^XAy;ӌq-`dU(@O-m'y{i+MZtW8HI7: N ֎&ڿrz}1wO|9QAk`;QO^WJQ8%[Wi'3COclJ6De2L.&(+^6M'0ʵ-޹)yKYcLW1`”(7o`\p!ᰰz&#WM[?ٷRGˢR~$WtV9W=1']*ȗpAȷ:M{j\Ďz/1?4st O]Bƒ9PvwAt[C6SffL:2G{U/Su|\] W;UbNCm_Bb*FpUt<9$K\JNz;NQ;we "6ghA#T" }@H J4ecSiìBqA@.iG3*gnZZy4.P`)zA8sh$Ws͂5@9DhP3}Z]a*ΰ6sU̶I6.-n~xeQw〄Rb z5Sl uck4TQ+iLf#~{*IҽBT ZƆx5IMGe 5vkߘӤXTڌ+-nsƤ\gVorU ')L(*0>%#+y[aJ G^uRH<>}ؙj}ZqXoџ8Ƣ䦟 rOٹTQ:E%;9uq$ϴо#>n׈z;czJ8ykc&歲(|{;%]keA;k7xRR!& YfgW]\&M|}U .3gTm()۲yoGVhca fR꣥ʵQdOã@>P'XD~ӽ Ckk Z-wnWZۓf=OC]OڄK^b%GH3h=aKͨEfJ[!UT$ z[hWtsl5Bk@.<wh{WN ́8O˞G}֣U;+f*h{2m@mrE\"H%L+Z ^ަhu$1.gM8]጑8*.(E[//pA.ÎzrԎj& wU6}R2 ʳ`&w*cSx%lp@. ,Sb&8+ 9U͏xXC T-xW j LF>],'#S9ND6=bH~={P}>-J]܃ʍ"b[=V!.֡emgiڙa""wⷩ4l=FF /ʼglqeF|ie;@J"X]+ysp 1>]q19&6>äLO:8%^r&$ Z%kX;aQ","C42>nX%e\M:Ȱ4S8y1Zo)4?MM%C YN*]s@ J nF$|_D9tOH9ߕ&^Y@*HE:G ǪկXO/{D8(W{}s&4H+;.:#36Z,uȨ &YVM7JioETBA]ω듌"~i4No[&2IxЋ"-(>uT#ش_nN3ԉ BSaP#IHn1%rrGX":&OyE#;n8p6ii} [/ DdaP#%{-m.b#1 `?TGN -ܪFȦ : &/jO+tƉTҘcwbHoI+K }֔ g#}B)\jBrB)p]p0[U>`ZYfVZvF1Q>Cl(_ݻ):e0;HPk; d U: %TbgmVZ IQ-Lf5m| zHW:䡼ZFo&{4=î(fN}TZҕ-VlǀFWj顀4GUx#@q[!:lv8;&YB7FM؋w;b:W niBvFإ-Rа<Λ= S?T![\#WdU^왵Tf2g&6<ّ0#I\Va }b=D/q͗-@UJPW#yU-#{_1}{7>z93UdcJ62s>IpuƒUw`hC!Ճz-BAuiTzrY'mF% Scu[dXo߲胺uxf:İ1?ܷtŷ6+,ݲo":}pw Z"ǡ& \&RmM 32EڼI&!|53 o TW(- oyO v72n&uvKh*nӗ%%}А\:%asv&hs잂%gY'.̻mLϛxnC$) 1rFB̄dY@ajKZWhhM 6lOD{]U>Ɲ3$hutjJVQԳgu+&,udkߨOg,5iؼE%cnퟦB͌TUʳX'/xs[U2WȬނO^h|e_Mo5qH6> @ۊ5llq@SPF;ԑnV۠QH}!s S>bqf$5uvg$*( ;map#c "7cX@BaW~E/f@HdW$&C`K#逕aJKtbӌƞ.O)dhk:*Z-a,O9G0U Pl=ÌneOa7ײ @c+OqP0aEEvy66UA󂑝ѡI i$lB"^1GcBêˬ0#8R9Fyo*{-@RhMqҢ$lG,OK!:"omr 'ܘ.пjBrQv:)Vl L05Yqe?3#R9nf׼G+ VRǑUvSѿ sJQ͕C޲) HI)&ΌA\ZBے3L!e 'J"ZPPⳈw@7v݊HC}Vu3*E5nɕmPetA%^@cVRαf?7wuQN㌓~S{{dH6DPm5aSn %˼ݒYoPimV%t)eM_3u)@Lť[$SBhߛsPeUwVFp%e6vMjz)IfW5= sxNiNf"ȓ/tES]+uy`|EWEl(نl?hD0io٣X,Vx|H2oJwFdr>Tw@I1H /c_|Npv2f 'U3:P %+pV)B=둎:xnjȖ&}.Dԗ[0XZLӟdG]$C[rW x-<23-X\q䲲*˼a ~V2 xih]{ ěb1״ <19$ClԋVບDU#Ă_هLlE.? `z q8?ػfh_MkY)0*L*'8J#y$zTY7_*qIH-첃Xsg2˟TM#)j9DEi#h=yIѾ~qu01O ȄX2&bIqHMBz$]>SLujV|ԫٓl ʯKmJ:3ܦ4SV#ZQMQSbgV(ډoeSkw 3mgjpTqp]Zq M o STјKf|.n46Ȫ.)(@qS\?}s;TE$9b'٫W?UzfAr nڔ6.v nJ9 $xi*)eN40Bš!SU͌IV]i = Ǯq$vvKe w\&GX$xhC6t8]Fgp竫d^?)FEKb;Z9NA79uYf\6Ut)ZEG9c<gh]=g7:}RS h`XfvP|[C}?JK@ܫ@:S?E:!.5Z1@`¥ucj0^tjt^P3 Xt:ZsZaJKB#1e sN2{ֽܴgLK:y)8QE|P `Ƒ6z/2"\|L:<+ڒln v i0SAxCZc,[OHItU#ZzmG@YmhnBϧ@e%s[CxodpLԌ ~~YsdTyN݊H;Pq}K_ǝrBٶe.Rus8INZX$9#rtaĭٳv&EC,?398_?[ %1.ޝwG'՛xguĢP%rK y箎|3KgZًVm,wBX0F0HQ6Ҥ@h"Z ʳHX:;GFd#M4ciy2t:`BД&@ 'Έ奈XQfJ'C3βj(g<0ش.4&莕Ɉ7Sl,u#Gc#Ƹ.F&LNBwqT72ƖfGmW0gRWtFb~lA-RlQ)DUWӻ$ N@9']AmbX3$G9CV^0Jgo1Fkqj/JJz\FP \3YndOn84)qa9*Qs{.3uP_#f)Qtv/yzB027Jx\A~p#/P7jM*cЮ9‡<˹HwBp7"E` FJF%rb:} VxږQH;I L)+T{JF8g`CÆsʻXOc Mw*d<:T.{U6.ۊmqlv01;IRZp\IcKZ86*0-lSBA} `\W\/ۂLBwódֶXoOx>5F7 RկD*i.) ad VżmZn&N̹(ù|fc]tVQ6/E0% Jk½rݽq⻔H9!^c / sg(M B';?up w@@6B'd> BMl Hx Lj{r}Ϭ+T id}DVr(AqjVCM }- j 1A؀<ޱq߃p竑#>,1G52b#I@"i⢚4`K\gk]醂/Q6MmJJ T:p-`d-^0sN}'V}o٦TF~Kr@d3>Bhj"/:!Bad?h6^oq%Hqʮ1?Vb4WXgEU뗐 ?ץvG`KHiU)h\w!Xg/ŽRcc?QXTZ)M I/ZlJ')†XwY7 QBVLLz%eW ÔDw TLܸjuPsMwUn HB4"ewN ]p~∼7puX-kK3n(7؛L-m:"E{T9Z׾@kO}z53eFNz䆝ռBǘvpN۴C;љڔ青9| =t'Zy x"?}w"/Ym9ӓFjG5xtʙ[nN+32M?f2CC*)?+@Tb"&nk)yߡ0ި~ة=ۨL / USʁ{1RBeˍs 7!(y]|SOTQ 40~ȓ gAyg&jB͘܁ Z$5@_ghN~uaِW?EHF(0)EFph]aXңaVm3hh9x^Dna!DgBG֧$ZWٝb Rh;!yNE"{;_+|TkeWb0[^'-οL ކKJn~\h p/%3p*V1$ >Ο$,rTw4U^sU8"瞄a9@AF t#?}~\GEl!ǫQ*j R0#n#yPtR_ xEj뱳(_`]PDFz ?p{qߏ^NuZL۴"ej;fcRb x8BIzDk*uF{)KfwziLӐX14H:ִIpt3nծM+'e~;jh-#z4a6;e{pKi+vF"I8EZfc;,q#ɥ~b;*wb-q5`a3P}$ cT`UfL(gVQ$>P8f8&+o5N oe _O*O8w}XH5<Ò>4b`ackbWpv<ⱅؓ&]q l1\.LjKYPs{=겚Tnyj#z:keѕ9hZr=Ҿ, 5`Xk *g{ۖ-vau ]M ej~5L9L쳊Y'h6:~u#]S l ] D1TYL~'+{YgooSyھZMVѯ YiXP`0)Oաmu{m/m< h'^Wj cڽ[j7d^.\hak:q'`㭪]lKbwk%ƀ> &>Ά̂u R4խXakRU{a,BڌH_vHG=<.8{Y=/=6{|M{uT#*RUY<iLB)PƜ3'; 8Xf5$X\U7@tK!U?'؄!*i9Eɑ13^ ۻeRB&G<Kv v]iw;N7DAL$8\]ܲ>l^O8@IN`1IJFRE216#q*܏SPOWƎm ÕKtSj*z\ga٭R>Qu)6#@_O`1! =)W xh>)"Dٟkn&9%ͣs Bߕ>\% wUUt9RhB+?d}F;Z1k#ܰW8] 4+UMW{vOR}A 'mȎN[QWṤё2#,W%g 8qUZYz=SRfo YҍȠM3t貰~nVR6z j5 o*;RB]8S;8?OE~Y0Dz0q+? eAE'a{|3b ÕURJ|$B^.cz(zʍXFڋ{m>'ءкi*zҪ6MYTӲ+N5 ^!~Y:ù&_gm:BϨRP`'t4`]B=Τ"y)_K^j5]7j  gD-3b,p b`4lbBW"wIhōK^xYV(DJ!#Ǩ7пy.?S>|?) =Qa\A|djIشx[{#MȐ=rJ:h-~_%ٸhl=^s6 *e$iF|[O09\ 'y3SE:]\Z Hzv?yfeEDM#U~9bYbU4Ws 5dO| k_ zr(iʣ!<# ֈgpy`Z O,0*Qt#" vdx*oׇ~Y/iu xݿ}f[s: }J>$ܲ8en?ʬ:]ȯf yQ:A{5Bz YrZ&PU%j&PQڏcd޵DѓϰVk&f}4ZQC?i7?˹4wvR%M&%v<Ң zxbQ=ɞ+`o< FNYsp)T+d'&s/;aƺ5,;@?J0aVrOZuD~~Qo93,_xWq"]U=ձt^>!# *yИ}h}fL8"Hʪ|@oʟ8:ZLH6B{ii+ޡUƾ#V*i4K*1vH^jp˄UۿA2jwrm&>4~g o@Բ.t} ~2/XS1lU BXo'K iQZN4'q{Qs#0bQ =5EH8=j^ˉnmQdE6(n zxHSLiD45gD8ۑJ", Ȣ7 '>5XrioD]֋ǀ.gH_z4"X/q|bϷJӵ,'i b)69G肃@B a3-V1S?K_Q~zz06~^'-s2_J Kf(޽-w1@7 l-~}$H3GCB'ZGQҊH?3 uO{--|Cp&km>ۃd$>w(W〛C EPJ5<Z5 !^|}>9ˀ ,K {MiCGqP%ߟ/b!-17r h#QfCr &NG !rMtYN>Ma 1rm9cG^u W}Ym?W#+=Uo35Iɓʈrs%1 2y͗Xib(ƱQQY!^3#kaN{;Տ,lx 7vo]!dzN1&_ 9?&h00.²^t0#B۰o]ʏƫ63we0Qu)~k?%o6vqZSv)DĘx@i(m[uE * w=I 9F>*#yIXH85 ;[t Lw kZT]`-,w[D296ZecNS$rubfrEaNr.PDRlg<[AxآvV8${K LEV"\X(iٍIMDu {\R?kYLܗLp(қ#l4n`\G .r2`ʵq;{4dn uڎ0A|hǵ_6V~hohq+^[.wsYb]=VƋP&]FtBI%r.#G)uygܬjx{%^Fq{x2X#K̦A$Cj΄ްتOǿsyW 98UHd UL˼? bRwW^ ecb4U8{&-9.Ҿkj(99p, W>p&g6HRrYjj!BFa>|Biq؀ߚ?g]lbϒAuǩqQSЋО=:D2 p];$*!S9Twm*ev^Vb]Nʹa&C xU͆x:5F|GPN);.mK"SBsD/iw'cbzH{|ڣYiϲ|gd OX"yg0ؓ1#G~V=VJ,,'aL|W1*7ٮ%j{E L\{M]:cI,sMW@Ӟs$XҞsja(h۰#;DSQkgv:W._u_Eb2SÆVi5KpdFz^Jr0)|96+sx@,IeNRg , -8쀾GZ('ɂ`8 ?I,>O&^0Bw DEFIxIFiC ^G@\oܘg?{x*>Ԧi]P"q-m{Sr@E`5DR1Sm `N8bz,lG m4mu#PݳP-/a ^pBiy*#$EO&Mvh^]Tߐ֠v:שf.h?I%3VSJ߶Ivv ="~|֨+ DLSٳ{Tfl:wNiH !Lqgk]X:xCGգq_z s(膨.=3êoGk)ě!Qq,s9Պ@uqm 8 뜷u9BH[vknTQ9P"zP>i8lJR$.~_g9KLFaZ:W7̎1/K?V*d{:CZ3s{4ZE-yM&<`QXMr.#2!B0<1{mXhYn= Ż/֠1QY`Zeꤚ7uONUBÅ!_y -L8Իw9Z[z]lfH?6l7j}@;=xxQ͢E)BKE*b"U0s7oJ󵋥D,Kߐ@7J8ڤ@_$ ;wcA翌$R>ݮu Rj[P4 G)<;%<eatts:Z!tM]Ro #BDw΃/dBzVRg;^I{f?v+/,{Qu?ü݆Q|AySO0Jbo-{_BH݋VYeֿ\U8d&~Bo: dTgh t{}”47Ð]7DZ2%/ER2 [|mxc_BLSedFA,hfؿ |ݛw=<,R~l4;A f@|S_g4=zQj,Men]-m 83Y1>+NvmcEP=z9Mӟ򚽏ة) b[-9ζiR)6iZi:ɽ #WՀ)7YX~I>t,dITOv[ٱ/p 9^kfxCmಐ>LRʻ.U %z(ԡb~}Mj"j]ɄC2>-X'AYXy|[qە<ȴ1AWkE"엔]~ K*qR_ 3t/c%TT@=592nfh6h|-e1D:J ~YCd:ՍouGn.$C&N$wPQ*e+Ո ,c=Q,٧V :ǎ-Gĺ!Pݪ˟eFR,k cS_ ļ'G ᐉQ߳adɛduٌwoD jORQR>ط e┝G@&JؿE28/Tm=H<;:v?~$>QʆހE1\"!EW!,x =)2~)1?ϜߍG0l]x"¹ ;#Hpx&thZ=iI-ZO!HÕtvB;BjLϥxTv[J 1q!2N i{Xk\ ]eS[ܧHD}+?)Av(%@Qr8szb@A_>4ieL_YVg}CD0ݰm҈rш+"1%w p| 5͞&B;x<uCo[Aium($L`:Hy?]inܚO;ƹ ɶ' s _h$Il[FII9MK!mE/J1):nᭊWzy 㔍5Kzyq_ F-`d S./WH&O7s|?b[ܬ e t!ℂ:Ջ_@Z!`4ŒQAV;7NY#y~Q (-G`Ņ엄Ι$[cA-E#D.%d|0Y-́w,W ĆԤ|"^|#6:lv%泘}sUUI Y}7 a?Exwjr.iZ]Uߦ;1L!ҕ~%] Ch \18ܑq$vQ˝1Suw8ΌݐZ6?:_7j W搷 `Th]YN:?t53y@ӿF"VLظUiD [$ ۥjx%q3pR KiR WWhO]ؚ >,$P&m)5M:OМ  tk;5 \߯.cbV}v/b+<8k1۷sق8 6D4G?Ꙝ\>GfEFncX[p?'p^le_ SeAdrZwSOx~vVJek0 I?O΍lLnkor3KZ/G)ڻB$M,H_IEwRVI ^ٙVV t'mEX{C6 AZ&Y}HoJTf],s2>ͬCQNwZ;"-CB 9; ;?> G &0RD"J⤸ǿ|LrU'}-lԁgՋ;.xV8cC:LzM%i ʷo ,MFu=M?&HmsJS;68M4|!O^k{AGsU߻Jx"N= ^x'\)sF#FXӷSbxN ] Y8޵bCFAgʮ-_]%C_vXΛ$ с~*-E ?JF8nO%{*vm<q5=#V )q>qOapUXyqe7b!hI ,8G#C g*nK #i,&ڥOŜc^h=%xg%+[NGxA\Y)JNQ>=oր"u9"+6a;GHzdip+Y\?"0ךkߒp:l-Sz6$q8ok~bAXJλJzQ*C~R"GV;0сqo~TEOiQ&(G' Jx;aO0mGzxQ2?kw5"iPB"Y+I.QuwHi_棜0k%Dd=gӶ%o] W`tAjE_G*(`7[$5  K|=_#Iəb.tWNt BmeS\CZb{[܄rTAiTE5iN2-^Aq_1!t Arզ!\{;9GhDɊbxySAp\tb4`1huU\ A\C:Y2Ƥ"L l]Aƒ7)阂[Z @ToJvx9cT.?Xy▮O%mZ1Xbsywj)rX:%"? A/ Ȟ+[yɣ{}E$~6]^df߹(l+Cm"Fe檝++im^#e;O.*ETZ_+* lAydeD%]Srw E*='?G Q¢+{^ⓞ{?cg(,r)s_ QQVKN8s*0y{қGn®gyl"l' dz0S^^jYq߽1#B19fn:'^eVWW~⻃7tD6;P {U|@)5Ť`AKfk(4Q آN_r-%cPݞVΉ5s`Y,"+'\:<{)ygL35aIHLб~eBdl,ߗ}lj|l; bP|!lQ{,")OUHqQDuWfRUƭ:qvSAZmڛ,*:%I_4%bH8Kj-D𕇆:Mb6po ''C>Z( ,S .6ɛ\Heԋrm<Z'6#MJe&ž&/SӇ(wl|aGý)|PI C^:$TR5g __#l|ы=0L*$2]FJWٚ@i {0>ɁM^T*w/\)O~=Fʢ{3%77 6'MnAA~(@eN ,;'扶8vj 6$liN."+ cKk/caGvĹtRQFsdK&TU\/L;9؏O}GP_K%.uJ5עq.jY {XCԋ0f 2A9C8>ɳI4z\14Ch-VA6@lE&ﳃ4zyb4CxЕ6E#˙VzYtǘ5hZ!UaXԠݤ >XSrȍkڝyG GX]+v| l F "8v([ 5B_2яFzκoj;yW.|d!Iz(՛L r->(٦vN q.53: iRR@L$!CnNtQrE?9+GNZ?|v?}HQS <&~G Jl1aQhˏ|tyV@@"FNUyÝ䉛EOOӮP% )+v*!$mИ-ӷ Y&B*Μ8rUBJB7y!xYl+id9*-U[R[/.Q,׈$782m|zđ8a4 HEw8$x)e7+Ķ٦rm2 $0vsuٽ&(.T f ~tѮM7j{3/z z+i7+:(>欮{Gn_#Rq;N0mޔBG}(Vu+y=+pD$tpDjdGI.B{c(<9נ=s Vo >9};_N "&-=͜|6gm$*fu:SD ,զf8EXtuڲ8Vj kj"ƛ8L|3@.>[([ۍue67J 4rJ|c>m߽ MP%Ė&{st>!@xϓ/P9kL!;بĈI lXkքwwQc=mu8=*Aߛ?-ӲtQp>x/kЗ-kL=tfC<<c hݷ@Lyi~N !~jdEC_%ڱ&Z4!6+,IH(1!C1_p\R{6Vh&{=}f3/'>[ ng;T73>Ĵ`TΠ*OQ@X[}H\BK?P . ͍*; EI+tdOPnzHoCV[)1l@ eh e]P=8e*t .FO@\HT6 fGg܆ W={x<2NzxYƷxZ q؃^ ɫ%'R#"wnaަ #>oz*NVч ?E6l0S&z0;Vq7Q}프+{X$R+яe^YXW)^{5UxZet9U,:~0iN#Sy4|"]L\2ϹT?AIW^ ;u~4jaxPHx 18<=Lp] []cD|0/y뛖,Gu ,KҊ mGxJ&QIQ\z[4!)ۉ68%Az66K>{%4ÃK<)؜XNaF8z43KeRW68KZ8ZJR}z!l@ ? s C&ەZdc\s2L 㱗xVm~e}з6[bݓz ]wH`.Q &V؉Ad Xp2g6܏=F%E?QvY+ez\Dv~[WȀ#eΐ?GoY2ӫ5&E=@5fsX K cM9cUv>C G4KKmݏKɓVeGlFjDg?*0lr~ hk0fhrQ]PRԲcRƻgrETQ61ȵz  0iXtݳADNOw6ZA镟h6*`mO44|&⭵pdK 󀻏nroOڕ;<DX@!SbIV$ޣևN4i楷-zD-A[,T 2 6<7t_zp6$M?QPг -D5NKoDx;`N;v,9argh R6͒إqiClaXֿg[VLy~IydFM)$h|(].!i抿R(.@ۖm2Z>9" V!j<3.Eq_FƐšY} ٸpkc"1 $]MwP@lVw%pnD*u,71 T6j֦esjc?0Åy6Y{_"Nv1ٗ޺0YL~J◠W?fRtlw:¸p^J^ypwFbȩAtOLJ"Sht~kVΘh]}ۊFuo<7Bc0 BbD pcoWHvI/3w@;=}Rr P桸H1'2Y)W3mľ"H0ŮpB@KW#s]"M۴F~cͮuL1Oh m%^ WzX4 :Ok &)5bDc).&todN'LfW:pG!9C ~ɪl6z믟2`ÆuyQ0hoO&)X$G-;FÇ~3]vQc=T؟7/mbW;qF!K27-Z_޼Aǣ4 EӒǹbDخ)q$O|sp| (tGfMc3ďʙ:c<fdLJ5X/T۷ ˗.%0&l` |zq\W &у,"3d,-  ^4i>]/3!|p&CX2~eHT ?sPTogJ77_.xKƔih}VQJs |JrCYwq7OgB5#U@-D ogRq YN͝2jqfLNf|PJEl,!Nâ}f6I5Lux1JWGaBjms6I?nSli.+rɀ,+A1CS _qbKȥ=&XUs(i˕[(ԥY0¾%lD?ϧw$0) V™RwH^/hZdg^\IL>)r#B>U(.+PQgMضRܚErCBR2;w1,]JQ[^dmS򊦠A9mQ@\nj:706ӄo5<440At!C tO?o+W.Vw\6S} H7E_0[x`uLi[hQW1G-5 E^>{ԓʟi?.FI~KIͶM)Ȉ3ꍚp:E2@"^V( m ՕD0.ӱdx$^g=󶍘7«Y*>KYt:0VM#zCuO[ƐY3W>BIH `d wLS^azuiv X KCzjz7ABO(Ɋ?MDLBꜫ6\vN 镰3@N(Ȼ^!+,jh:}_L?cRߠ\q/ry(ǵ3bpBL>ݗYӸdFfM 1i \rc(妩jw| 8y / {&aMH.F_U'b]hX+3a!}Sn_WpZjge5k Ar"`}K1}°m&M+FW;YGقK >x3m1SG>W4 G3 D@%|յ)Y)G:>Xb6i&?\ T$l7}W 2!x?~%ʌiv)ޤ >Y72rJCPFy Sup;Po  $F+>oƓ>_gV9}z ]uL v e"g6# ;>u)F$Tn(Xh<ij t:iѷsB S.6@u/qozNXؒ *nK6|Wf DP(٤nZh^ߦs1,\SI$t )*WI,^p}̸mpT7JW14u0"z3&7';u\CȼB*qs>ҁcj)KSGܖԇÒ2cѶ%'ˑq5e sJ$4i1v5*PP`S}Cvrۭ?eMk^2/M^3 qN 8_ u':.#:q>\;v.s&'s7($Am#&sU }J@4=p=f@˥U Cz]2ṕ6eDlε\lޱ~oS]f"E_rֆG~"wWڥ^}+mgl]Tp8('},m+M!텆.F=^4.t-ǔ3}?~E3`Ll~Y{dsO6p-gQhB.-Aw;˻P,pɭalQ&ޟאDۿ՛`X֒C8yZdUuj7p x(k rK?x ܩ'ju~Ki\-D`QĬy3>lqzM? RG&̕zpVaG r$),/3~N#>Ezy p!Vp \ڤx-ŭ6L-3 s|+f'bΊ[[s{IddC|pYhѝ&fթqO[o-Z=<2]1DO23#˖߰qh6]ΦQ? V\ԊR>|1.( _­9\DʗoDb"Gn 3.[{-nwX:o EϞOD/8bOh% # }_ Ν暼DʈVBz?>O['$˪œĥ.MrI_\L%T4;[,"KWSK20fڣ/@%h jkfP`<Ҝn]0Ijι/N%}L|U?yLVRCi.^l^g)vͭ<8c啰JPBs6]W+xz 4(šPc1v#j/y!Fx/-e~)7I@8&}Rۈ9%Z!W-RDHbX>0?xW(:E]P:+!)^(٣|1P8]yX]ؤH] & y0E4n^BǗKwL>"So`vҐ &)Ǥo /I˟\}LkLIi1)@oDw]jQTe)eNfq.8ٯ#g:|5ϗ0k\z&KZ%ĭ ͒ɶ\UJ')ˏZ֦wI8ngX?\˯hKC?CAMopxrBfA;ݺA-?zoc%$ ' Jsa7@^38 Q ],f;:pT١/qI"-E:e =WC 6Lۻ`v3o_A:. >ϼ \e'8 [NZBKd4V ʖ-XYKfSd& B8c,Ϯ̦#5-/֢A ci,<e.m7W[`*zJfm4pl|c嶾]TXmmj8Pkl`;ڄ $qrZ1 }#>$G J(NL˸۬.ޭ,h,.RU?|KݸK jutd R!S;zCɄ/Rk6}#GM'`UVrY;A&D## UVLpr~f>{ pe:$Xkߺ^|c92Y0R'' ׳d'Ӷx(PƂtdi+sD mb۟?MݽgM{0)YcćP"8ȯi+-[K 4A bA85'\G1A!g~s밬tخV(`q/l.*Xi }aG3 LhnoR_GҚQt"fY%F&&ڪz[78d;V'~˳{1˻g=BV<] y[ZBH􌍉d l^i2QnCWP0yT!@"6*[Q(]ʳ C!^!䕫H3n7.!f,GH^ES}gc!68.  <ٰ|)H7NoN))QV? (7IL)=&ٶiƐKz#Yd =[eC#5WĀŖa1(xhxAIyk~z?La1ҿ_dmg8ӍZgx BZ&`}3\N򺨀@ީ㛓+MP~=h<dX:uömR5UgLQ|VP"'PL)܅ Q8/y8=(+ sL﵍ˉ(0 9(n >t1UΣvl,oq|x雋;}l96 9)R6z{;SC /b2'KŠy7|\(eSu_m&R fz1 T˾D՞Lx,̮Bx4keߔ/ezX!6?ƹ\|ގCD ႆ5):[NAtm*qD3rhmG~dC=_ ($yJ;ULHExX>_H?kHv1iͮRk?R\ Qd hji{羕^T-P4}C;5EHQ@i _qd+>+yk4ntDzȜ+PfO$Iu2`B3SY`Db7y}}pwCqQqe)AB5FROÛyP&zEa yPbG3òp5],/beXLDއE@jDBfQh~11nz^mjfRs e-vԂF@+S J~ŸEޠ~>nW^)ee]䯆J+d@:"j_HGqC]5I}r<6/?:X}-0?"/W-񶒂%vGcj?)c]ɱ|T E_OhՏႭ'^1ki}v`vjkk 0 @ef3ѮJ`-;) 㰈2p:ծ@Ȁax\ wwaIwEwK/9wsߥwv QޛG(6=n,1'j2ts(wO #*0:{V9 QÓ#"?{@$hphCiMROUB z'W$/6>ϕ@KQی5 7y)%tA$pJ-h|xc{&'i~˵5s 6^+u)eӬWudWw@ɸ?\mݲrs%|o>krn FKR;-zFb]7٢b3%\DXhi|2OO _ǂܰ6p8[Yz*c36^ &`[28 ]_rj oQ_bt~v는 Z3~]Cu32SYeK O&Gg@J_M30}FÜNP_7aLwYb'm t#w1QV9M\)HmQxT#JlE-"ۦQI^Ea ef]SOƈߵďkyy5b "iJ{B[i^)~˦7>Blb-ð,,2kF0+ƢPgq6ꡮ@VGFLYSQϋ*Zz~1$7({9 cD 9wg%,QS)UN4i\炡;*o1wG` \UU=UfuTV#]xX-(Օ1 $)F%j&@V31vB 5Z&"p۳{*K ^g~5봦Ks(f3CoEMǐU8=ψ؍o ͬgeҰكN#F3(KQ>DD8<=T59m[72gRhe (`aevS㛣Á5%E*qf|3OA`ڄ k6gkx7]Pf,}w@ޚ l0~ZKp7yAI6|W:_ b,<RX.벳8@{ƪMdm~n' ߐC(1 a@Y9xowJ UDD5s) !_= vqU iK_ IL!þh Xus0:h%t% % <^Da^|nTW6)8$:ahdBvc&NnZBz\B~Ef\ C[¡ȈӚMEqg%_ٕ  :-K;/ǎ9U9HGNܢ@x<|.ZUMBUE a^鵼+؇du2{sfT5#-ěE IW:@N;вz)54?xcNl+˹^Z(afӠ#JT%c)' 3uQ߷A46n4[7Վ'>LVdadxMH˓@YM&98Ln7vf4xk'CJ=y㒞[8Wvbía~&!$>TN+$~\anDXvaHPb)cBp* vj}䒱]Dovz>Q H[]BaoDc}I6ݛ#=?+fC1K6(`vQtPDPf[>g}T鮦 ٱZrr|Q{v- ]l `F.Liײӹ--A727(+վbEF3gnαU+z"u e;ɢ'0iEIٛ8\4wtC8Βȍs٧&:Ghycj7!ašDPGĦasL~Whzy! Jt&ܶ^Aۖylt(T#9qW;%I:#^M,EQDU\%v!lX(-YHKPpl?`Qw.FlQdҜ1MdQ?ccb6M\p񍨢/EQh>+c9Y\tE ^) 3o]OdO - G]cjD830ʼl@J15 : +mFz5,uAhP7$2n{o80Ac 2pvvl>Vh<9l\3{VϼND*-N6m: ѵ7'C4 )bq*>Qz >Y7hґ>RzPCx@Ra'Mjп89i9?YcsFwdʎ /W<4FO롦JV9.!{iPF0g߼rtC\3zTmkG][t1w.^Y'Cs>C$ q(-Ґ_N!ehhfRpm?>Hn4_^1^C(r7,SMP.JyYaV9'pʭ̚a9X?b׀v̼c *<.'4=CHem;H?~M *VW2pPK1qO.wD .9!VTʨ 4Rh#[_9f@ְ8&|hq ѓvs(M،} ʯFP>,|EZjةEF95W( PUjeSYMW0ߟ1)CDhOx['WaeuaIEwـv(12Z>K/ek5cnz C6# mM//%orH CX~@H@Νt|mfO-Cm]uS=>(Z-wZ evĉ4Vm?SN<'rS,~:V3M̳}]TE1 B!KSҭ#LRo[zqP]PR޽sD cW_K()]z9!1M}oYQKP?vw?ZV;nqe8=$y2Π@y%<Y⩲1$<,$;Tt>4~ 47vԚX3TG7J'uݤR>аK` B ͤvU; )Y ޏb}Mf[L)"RT겲Rתu_1[ HBL}}u[:e.%]qeV5FgTs";4/QK$2S՜=g,E>6DSF2żl '+%6}1`s?R~j[zqi5]Wv;%>. hsYхeT BB7.b/rZaFՕL".Fk>ƕ c>`,ܹ͙G'=0‚yF֏0A-EsR(C xfA2%GVDS\rǕ 4ȩMix!h4s.]NeJa`vR`O18n_=T& QKlDLRas<7FR:ACW=ţdǮ q:c*ĸ!Re2j!PI!I$*rTdnW?Ad  A'Gv72ht[SB?5aR>RxgMeګaVD'i-5Qk2*l. ",4piN>nMCIk/Gf=8.C}j~#REa]ڋNV0!OXqmoU0oڬ*>{Y{ZҫfZy{TGqZf  mR('P7;J54bmZX@->KÛe'RRo5,ҞRJ^(U!YJv/s񨶑dU%LցdUt\VGh1h3 %rZeRf7/@P^ ͮ͂|4zNX胼z9&d6bIoN9Nj8T&_o#%1͇Dg-hO+"#{SsRX(ΗHw\mXSU5 ]8 ϭXg I<NU_0~[9;vEӵhvnr`j)e_\<Ъm]Ͻc!gt?w!(E|REP9ȝd nO^BϓO梒59nk?]?{B̖ۃ!ʹ5 =,c=9;^Oy.cu# r)$\"DR> /uwAIDxhW'{ Pd"ssLS]EW`e^U(ns ?x boh#.:ՌAT6U֨zwXm5!@Hό4RRՉ+ |U1{q澓\ܰPI򭤘f rW 3K\a[My8q;\eXFE,o8[hז&5Y LTs[_ 7ʟI<{;;R(cʍo,|gL[,Q)VUC#ZՐa)ԯ>lS6dzp0Q6O]*0R[vJSx&1,;JvkQ܆sgLuh+FYע뿱O+I{OӾ訑 t1HOd0Bj4 Ciikx6(}8kf<9S]T_*g \ fq $. Rf{Qܿ>3v؟4aTuKsy@P9:x4%mvwWn:H ]l(x +Myp S hNU3w:ׅB֧ۨbʇǝ뻽k g> /Gx8J}KN)#>5^0&]}Q~FCB,!ALT(`E`5_ޔʴ9v̖HH!-#i-St)PI7W?x3;Vڒ6x|@)2ٚn-đ1{2H]fۭW="tjb݁T\8 NEgR]ooʩ% #CPCk+(~壚LSlP~2.|T՚CX#1Zܣ7Hf dv ]xe&rv= x4Äh!?eGt:&-]_!ZJ)y|go1Ԯiy ,r1sdWsϡ?]tz;{"X"b~jaK\~mWI2)LbZ(Y;3&n9^7)fsF\`9p{KTQii"sOu* hHא@r7e]v]9 ͻZQs3MMG-V&-zLMV<Ā)qǧ"aLA0B66"d\nĀ[ چ{ژ#jjo, @K,k~=fMOt^A@p ^nm&HPT}@5/L-;%=w©9FsQOKVAƣ!?Á/2h5{m*tQK|^sw W⃔I,W͂b-뎖 .{gF̴ЍMCF/K[uQn^(8ff W9H|P]7& 2Ls08l=:(;(@[m&Ij'ԝ)vi25 4 g'8w .4PG 0Y/GGT`G'~*&GXPX@&[MjuN.cJ x_!Oǭ@n p6,C25hCH(BFƂ" 9-e<{6/W(sEH44.vh۰c يag^%vTq&2Wd(%f,У&*! k_Dm>xͩJG+Qz2b'Bh CaFUo>)/>v|r p5y7'RfGB*:8א2N3k>1ֺ6rNe^'XB6Y+#tByêŻ!Zϳ ̨&e@]9 Pքb)ʈ0@$rq lY Wt\(UI r4g~$D[_PI"%9EԔ$xVq/p@)~vg*cj_-Q $IVqxjJUl@7 ?g¤J F GLuL8SOc[з"Ɲzo /m{.t7_ˑ'HGp]e_YUrj\Ԧh1^ e>h#t ~A]ܶ8z=tQZ;:u1! 6 f(*h^NsaFMUQW;Olp0gps{H7h`*Tƨ|G Q0sn G,IcJ3}#.~D1| ;$0Q~p`% :JL]B$D锡bP+t^nVħP1mwf,^ÎĨM3p1#JA\nh-I iAt4AzR_f d=h# C2Ҵ4=~%j+C녂%sS;ozzf$FYA.;v/_J 6 {ޘ"XH='7: y1~ŧLRkA*7N[ݾu0>%ɺ/"I$zsp{w,Z3?$!hI5I:afamBBWXo34Pb P򑥪d)׳1Qۗ:\|3tBZ}b3$YxdUq6ZKcaڬ|fT%8K5n4>q'N.09kL‡wM~$OcIO]a8^w@bڢ|9M#$C78^GL-!ph<J\H <* {es |B.3˅mo脯lӀQ88&aFl4ekx^Waq--.L )n Vl~f6"\[rufjqZU*RJe[D$S?91|˿]sf&xq ~U2Q.Mtޑ_̭1`#--bD,!n'V``ѱ?WތG#)-+Hm#/N܆'2fo.tBZv^;m]6R(f᯿NO3v0{vȒ+6k`6|483 K [Zn8} !%C/ҏn;W%XI nNPӱRHO3"&?RFA5G(;K@H%nMCb4n=Vj Y[M Rz>5Cl8A6:2 爏؉}K57f*^RRNg -߱jk>+? -u^7@0}9'͕pQ=ƖVP u}l\ ꭶ?)VHN̐p?VE{[DH|ҟٚ-G&5Gh!'.#Q6Faս/ŒN_ozSF6}Ti6; }\}GҢ2uKLsA:H,Pz[>L' ۳ڪF?-pwځ! WROlq_%Ai;eUW_営5ڠUG}GUo +Cn3UDhMf$I6S #y!C ׼MqG I&*ێKֲ-d=B9~_“֏ɓ#H/A&E$Er̔bU)AG1 jԤ3I&w\3y$uhfHe~y6,W=j[j>ӏ;Ŭsv4Ҧ\ۙ^)=isQ" ^\Վ"tt7wi^HqJBy?cĵАyKn(_ *N$U5t~ݳH49ZÔjB~l.zF츲tyJ8c cg%LC*eRAb4r"Y@;*($DI-;"Bu,sCu5d]Q"AU%1 n2A%ʘϲyUkԻ=[*ě8j:A*ɵ,ahQ')!GIZO܍#YyQ N| ^*AE/C I|l^ ޶`<1]$z{HSy txtP5~[%:/-vzM*rǖ@\F5CfS4Dg[#[R$G LX<}{b8HZ$+x&@^,(42|KhKp~WU4?ԈJ۪rK|j>Ϗk ƭvMn_?އYYcFL[ q+n2\K(X~X( f Fy\5c:-<" fkR-Vx[,>N:zƸy('u"4Ҫ(Z~2AWJw/T&'{ΜfdsR| VֱL[=Tyh_YT+S\5f(uUzZ/$~EeY|i;8Ԏ)8KLP kaū'"'UaGDRsh*Hw)["֊o 9nO/fVϼ$tIMLjI; 9ѾfGf荾M_H2H76`:,*rp57q2^6 }t_eEk 0!p"$6j&R[)taێF\vf>n 4 Hg+E&>cǙW EsR;N1)¤j~JLf4C$Ղ>ӟY/P4~"yUO@Gy,Bo4-M-'iac{*hy\5V ny* apT vTǥ m2E5d)a脎~(Ϳ:RBo|z\>g(M=C8nk'J?wzuYy }ߋ~TI /(my?{p4IxݟaToP^PPsywk~WT~Po($>uÖDI/1C~3ٯ}Lq# 9 2XdKdGI.a/2+u-ҳ8Cl6dqZ—Sv?꫙RFѰAښ!͑w3?^(0$qn  C3Yaz.!q5R×mfoϴ߼kJ&J+6@ULs/jʸ NMg*;ř1 {.% ݶzshn JM(t: W,]ɶ\WwѬD ;1"s ]%9V)QM&Ƭv6˔7PyU 2kKWBh =8h*U8T +[^)ힷOLg(9LZDҝ-PV MR$[PVBۚ> |N]`%m KХPN.9 з=ln疹N2 @ =祶cfiCէEy-RCMvdV)WMs7A=V޼QSq)J^oR`cZ]^12|i̭*chK{;ul*XĦvʺ%)j6I>қ7yG8_ڏt' MY"pfCWZzo Ȍ9TӁIP_&xP},ŌY:1P m-)Úv-+2DeD5.c[Ȅ7 pAF烛csE3$[H>ABI(?Afw36~lAh'5) qC^|,lN/%c}|y]:%ʃ4G"meSZ/jC2Y%8p@٦" c=o* _!vwMzR5-a `ULq#Ľ-M(m1@:oqw0bOttPTq, Ag;M3 S+8QlwԱ%7׹.P2  .Gj5_)IJV'{lȘnn1[\ұD2B'ܖ:'_AgzXb?T3޽G^_D)1הv)Y@nBù0]i0ҟKÆk# QkV|rKd$RQi r<^%~}pLֱx<`g"z?Mt ("ys }PMaU: @ ʬ7[qKd, X td~k1PV5bߎzAy%Cp\ddC$8aKE'ߛ۸DH6ñpq{ߊ*0"L+;Js󕕰eEm ss|4Œ>g%d62Sr KTɗ |zq! t#AE:]/̚$jui7,#7$ 0DFbv=(`]@meW1{Ì88+7f {:ѫfO="Brv&tW`$Ӎ<F7w%H}@j U G&ĉljtGI?H*qxD{=1h~} N,n{rܓsE ! jоp C# 2‡BxbA;N δ@- Б8XzR%S#FUX+{%3UA4e.ż-Et0(彡bDE'$bOA/5H V.9, ڒC_An/{29#}P7gI86FV'!V2 zYp=ȷc:?T"9J,XW9 j)賱Ԟ?&X#ɐU0 16=7RN;yz'p2nCM t+ӹK '#(l^_Yb:$֦ʀ-b [)Kji:v/Alh }e=5ͱ28r5˙}k5t_-)Qiޥ6@8`ɞT:_ S˽v o vw2 ΏyT4؎LV4H`1K{2+Q5Hmٔhcmf}n;N7as"yh>Ҁ88O$6LEl\p|HNAsGëzn8O,΍ޮ^ut_'.EU|5: 1Qtw ՘ᑫ:<:<Ώl"0:dQa`#wʂnmSso+Ffܼ ?_5 Lx޹TQ O q;NAN%F& Jph#-R<'/r|N 7f1FO}<1˿?ň())UP{ɣ1OD7jAD,:JUU#spq1'.;!75<#jr?ߏ(; &n;|34y!QXyx]ȉUL5VK2(UOـ>,c1e)NfR4!^%֊l0W/5@&^G7-8W&{ ʣv; J֧e2Y%緗~ +)h8Jz!Qwk 6&7$-Z+Cwfd80!ӷY$BG:{721jT^/ichZ37Y՗_ܕ6bB@\`.C O?U0bna(tTi] ȕ[|S>dZn.B|:@ݓ,h̷R[U=>hX?]g[+5uduyd*٤p̴3^R""lakju(?Ø|J ӊRb#‘I{pִ1L sq0V xǏ' L*G:G[V^wf+tĩf^zR-pi5xH9m"yXFfv \ER;(2?UtZ}#A[T!jHnX5˼N mͳEE;-K5.Ӧ4Jcv<;4or֡6շmn T>3u>vCYaܱ|mմ'֋#evPTh'+ׅt~ފ mY,Hݻ`e94r`49:^#١rj^4(}C?ϷNN6DE2ѵ襙 Wsx,0_A+,&,u-zU)8v4 J iC-tY~?i׻D_0iCYQ$YZB ZὢLLE'2*?Ս,_#3">\?]%+S'X`bqfpCmX=%cYgߜVW"!mM̳כ},@4iT>ƃf2S'W*t{޴n Ie)}rƞDETqʀ6oYށbjrW*CןN!#G9$`xyPRaޤ䉑!đdN? f-04´?(ēV`j+WiD}0Кu$t(_nNNe }%@@J&ϷSIU-\CVbgK(}IrA`=.tǯ6|}xj )w`Ho[Z*AT=2-y G'-4vtՁF<DF  *S\E]EXKr?!Эúr`w;ۆSaϧEL ̏]-*8=;OghWկØz#ۤFI\r/U2J:`l]"Utֿ{E/95c΍ НX%#7܃0#5$\{L t X(ulMs*$gFT($DMmFS˖`:^B:"n1 ZG瞑HXsx읍&m]45Od2~J8wf\Ơ]9~vmNjb >Cmy+A|498w~MJsf.;cHFG@ e iXԵ&w,&7p9>RH+AfyB1rc5vl3mTp)-]-^ZRe]4Yҫ@'b) <9>gwyBǬt0XiG|V% zG z# =I&Vt0_cDHo5Ӄ)NI~hKi >@:UI %&11&(qwx) CzKmp-(S=0V޸6XZc 5"7<ſ,ܑ, 6gJ * mhGk'@?4׆.&^64z!-r?Ȕs1TR.8+$X5rVVqY$F"]c~P ~:5hiXM%Rw<"}P7#401hcOWcCmIW_:6;R4\wQj>{4g7=N4VW9}37-ꩂX,THD5!Gqb+1Mv- |ĺCU, OC_ IQk1켝!FP2=6lP%h(h(Y{~'>Pv[bԽ:XET:wMuifRjWZo:̣ʬPf:HC9Bzj\R [{ɧϻ;մ¶0 <}1W.mY2 PBq>˙"::_腑Ad}y^vTſ!y3ևV$Zxp ` }튶.P:V3S%0Who!FkGXxgYq13uEi`"fq{F@(*ꊉ(,Օϋkz kVC é*JtU-Մ;7}Ly{l^Kk ]nkzjЊ啞icDnuLBg{Wk mބpѺ.>Jݢ,!mU'SU-IL8-˯"WȠװLɠ&DȣTjb@Oo~LʽUc0TȥqգP@Z XXz_)'M2M'Ti! OQU6T6S =E{ʈ6cODz!ɡk&r4NLOĴ}IgO !rU}J\^FK19ā`Zdk~;4oq2T1/I{x78݌@(N[1|%X/CB 6zF}>Dss;Lۺ>߮8⃰aLdvD5 sa~ι)oYx^0 }J.+<bПIv\@'U/&5mcn(I WJ}Zs*:Z7w,dovC'Z>RT Ac;z.u 9Jr1ke<:_X&T(i7ԴMA}pe^ex̿Y&YƦٌ؂H)͓gzr8nH"qJL,wF>vr P{q|"iy|QA I٢>uKy}(q&{abOްm7;M 2܅aV,Qr&7{c>N)_An¿hg%Nc:""ֽ>`oȕFNTI[C9/h.gU[;zhʃQ"?3q3jN7|95>8Z'oSdBTN,E[j*!)+|e8pE*N[,@iҜgSS V/,X}Yp-#f'O3&'S'UƢm;Jscoሷ~hu{iH.FZ<%4VX?5XmQ1oBfR~ȻbVpeQYC2|f-d2DP&*Zmc@@wC@`oSwpWW|9RTw? suja-9 vˈ?oaqW%P0ڸ&8B_'N꼳13[+ 2`iă$߸Rm6%a oNa"٥i1ʰJteu[s)l[˰N6甧$iܭ+r$='m|~RQWA$_zSU Bceėdv:c#Q"tDFT}@)MT>yrD_Qi+!VQ:}C<^[ cdb_5\sr sk5; 4UG(,z_)]Ps ekymlo[弣ESQ>iܔ8+6kruU1ϻ: ΑA]64,ת4it^]jSH7RWRXI9nEYBK7i10䠽_nNz0N'x] *_$㻸o-unc4GALU+bvwn`64DN#yP-/>710&M/ N Q >\WpJ-ى!bz\D"`$P"5MjS 1!BpZxGjF&5e4VcwrJ5 l^VbYqb9~ 6{7G-]pۦ[\zÙp'!Y s;+.ya{yz5F|W]@#" B`lT=25+HSn4c{&5,grOVQ0ͩ@Z -9N[wU\y~oʲClREC9* 2WGxC _gE fk8Vd~/{Ǵ*X?e])W` `RS@n{9ͽM4Ǒd36ix#h wN1Κ`xdiwRYVBRF;@s[,QggM-qܽI1K(߭C*^|ch=GtR ;n7ѡWH"2͠e|ZOp[U=C" ,%@fx99%][_'7Q$|.m+ &|¬ nDTuӷnevHh#*'BGbѭ2^uTRu#H TYhliOU>HA?΂Z@nAL dI)OG q %jal>}r|WQŚns\P,8xABR0>xLt ޫ^~WK2gzԙ4[}T{wV *V;=iJe),5+DI{ܛ[C4ݜ4: HlQ|cYHjyagDBXV)>O~1woohc"gl%3#lEh՗5M1"d%IZV9d^0?#zp:C> p",Itl$B 0Q5Srs29336H ~j @stQcp!g~tY>l$%0!~ð\nV墪^31Ɫe;|X!@)H:ٝO٣]$OREيoHj<]l(I_?7>E߹ֿ VF?E <ޤ>Vb,u@l*w4l2^TG%6> o[vpHbpnWu}%4e:ƐSۃRж҃dHFY_V3I ~yU@L1)S#گ!o(EG- b(D9@W}t'81'9Q}Vv|FgTߔDL|,H/bW*R r2Wq/7}ql=!dغQtջxqoQ|G`I!N( Ռ-X[g١T?%K\;5sa'\=okDY!/eiЧ js? K0twww8"TbL1BE24eք=ڌA1\]г4(16v VH<`3뼍+~7Dcu;YJ{J'WXh707+pcnxEzvt^([JdG5[ hD|}>n(_H}*/kʯf PA<]7x0 Η W0zc{T&@];%}9L(*U[U7J'Xz0y/+iRy3;'T߃Hs(e\íEfD e|>?6msh|iA{SzbpGKO ^,igMrg.mA7%cs>ߡ&Ǧ$uw3qg;_@f-IcF}"0aqOs|4زDF}h&uG4mXY1z iC%6ўMm}-wiVǪ QGvQz W I?e x-|n𙉤sB@>pEVWdpVƧ3e%D>J+&8<{/NuZS4} l5%#MmƇ >59tXC94Vh]P]tR:/;2z>->:m{~w'6j ,&lWBT)kz?I+:U "ΛpNW;VO)9I\Vog(.kr!Ns7x(R祆G0>4>QP6=բ Ӛ{k娒y{ ~=0+[(FRl*c4v,K5=|Ml%10(/9άHN-gvXl(} ^H?vXX6큣1ך +i3 44vN李P`Wmt+Hggϭ> \%wEj⟤Re>l[q{C/ڔ~Ulmk:tn fy@Rv5֚Dk?κUpK #d'w$} g& <(nDM<ג*c3eȚޜ~81Iz̶&1;;.Dy:i32]XɆu*K?Hl)(![bfb@XB[އZyGnG {g e-v#wWn2S^>.w,f=fYJnꩾ6E:II6< o Zn|)$D@ja}SkQ0!G ֫kU|%a;.[٤E ĺKVI@Jj ?Ik%a`A[;)Sbˠ{oLPFpwf2aHU`X|osCpCŹLne$o)bw n1[xCvg뤶yr1lQƲ/nn̗17s}iE&=" j3$ Wo(rQǛ$Q:\$ MlIy+~-d ;yP+kآ#*ۨB*d0U}\`^5 ӟJۈwkh# FvY)",qI_1 _-GJ-@h#v/g6ӱsa> ْd,7Q@bTFfNU8GuL/9aqh9gԠ4\}3+ywΙL=/t7ݣ0p!zKBNc3)$Cߞbz+>O)]e.FpfL@u.vSaWE{f/ڼ0IGeF Vz”rŌS ӎz⺖\uv8:m %mu l晢~kSj*jjzG~L-Q6D: 9} k?7.l?@[ |?8_f#xȧ5bw0NdT3kLq:<3ӂG+`a`?Zˌ,,rC}Уİ>7&+7Gg9r0 PE;YSYmz$)RuZz?s2^ᄞ͉WI I:?&|/AV˟o)wB%r'rLC굞Uv1딈C k%]\x%7Sooޛp*G٫K&o +8gNO`ӋqA{_kqFs!-5x%I~yո YXj\MHNX=s_] vk}~QT,aALx +7Mߌ)lL5t=dU[k[7.lrIT#o0P Z%WbF:ǣq|$:hNóx ܋$^u Qq\6tkX5qغk & ;ƷYl|%q4+uK? r!.uzQs+G ՔK۷QߌMmR?a8kR}ڨF=S>p[LfR81ţ:@K ]9>N6a^ecIWY]]GyQjjpFa86@'TjPĢ͸9dI⻜.S62_5TTZ34B@OlJj<p {z|N!("4-އMuXMqu3դ\ˋE.'ւrk/Rn Ks7\G|Ӄ5˞;i3傋TBO ơNHﭪsֆy/V5]0o܌(aq 0*o¿G IƼi*>y22.0.8tA>qsKzUeicH._ LӟD~\3ϳ(绮1`yЂIₐg(|tÈɗYثKNUǶg-vj,n@ LKC,Цhk =+ӟ-ө*0 .+$!Ĩ 4nA~|8n m6jv U@d+P}5!{Jk gS?:&Y1 9x4%OJ; R33c _G X:Q.T&+^Mv"a/xxcmSu~#yp4ɟ.W696@nzE..mnYo½+Ac p0G e%d~ _2_U)D`Vi}P $Db.% )=W/Q[Ey)>E:`JS4a,{髹{[OV8_ Da iϢ ;i!iL^XW%=\!s(Ga)e>)[]ٍAQ eى-i!og@!:ahGud1NzGugҐ̌䇶 ?Ov"ı}֓{vc_'p|ޠ]%›Mƨa'R &gG! O~W:}\|0+¦:yn{%19߾iAV K}>7O{6I+G}3. =Gɑ+%Zh}2/f$@{2: W8h5czJsǾ1n7e݊X B%U/0H"儌qoϺW{h(a3ſ4W"bm=$f\'9FònmLŽ.M/Gh!"OLAq &Q$您\`iL0Rӥ`5҄I,C3yck-nb,Xզ0T!/a$W ,͊$ARl)OoJRT Lŋ#GT^f$*2( &ҀJKH=xxͫ 0x@j h49o-`K9Hs3-ϵaicOM'leB͖O[^jm?K/';@í8t \vʲ5-{єBm).|i>Wa xf,>najS? 0ӵuYQFXd-?\A;፵l5|vE.J#};&*55xSNMInЈ( 7۫qnxyOֽ0NE~~8%k}/+0.vI 9M[vew^}63~A+DD@0eѩxxICY|AN L߽.3"g+ $g=$Nꊜ3ese[|"i%o;4_9w5j4k\AƦ{ :Ŝ9IyE`wpBeN鴩nQZBj"jvX٠$T5=' w9r?ΑqG-d ㋇Eqﲔ i]BFeIb`cǁ$Jup *foqa?5G8{aS =H]KN`A·ɋ}@ T3T3-{d`d)cY m73\EŰLu 碝I*4b.iB,D[rNh@ CM1-RSTוּәl/0jl熩i ܜ;~  nHyju(v=8 }֪ pA:YNOLAX-r:T+I%ޠ/QM*PCM@ ?8?<1ID8-sRbvM)/^m &l$5{~(a(wAG\lZϴAgLO>ʯ*qw8H7E܀ s*ZgjWwdl T0 JےDOΑom|l&Nj t_;9{bX#T _Zdy@tJ#pOOAv 5Eel1Dj6,gX4 v~khߏmC4nj!)s]䔧-*yQE|i"$v69?c3j :;-E k4L2b =`(?!2_Di9Rk]"s4Acm*ZyGNYN HC>Whzq-EBJ'<#UL2̯^IUhegC9Mu0/i*9JGEAi;b_' NP ~w! oP5$\PHLlrS <31F'Ě e0Z-~{BXBcRgk6Nb3KpۛB1aU;!5nlqEuKEKmW]Ԙ9>  mC rj+52cInQg h[ T|> !moj@) CDՏvX#,j#ɺ&2ÖGZW)Yzr vRidWXT3LRWDޢsyF i#,FOAt'2[fP%NTX,jGgAj0u##/& x0 CWO'i?|%caXiЖs}3mUS)yb(\Bg:w*LԔ;#2{,,:0Q\d|:51VE<_Y-:msU46s4iO+Lkj{*eYWԤb~i" `,@ԟ ~k ϶X*a`(WVR(ӆ,z:-J#}: Mƹ`P  ~0<+ o%kѪGjHP`53";)[r-le3o>|~ɗg.ppXJtTYl*K۫-a͓Ղ7$[d vy5Cy- @[\9k)3p ʵ4K01+.u:̄e$c ]E[u׎Jy^dd*#dX3:V//Fӌ61iۻru,ꭘ-TVRؽ:so=/xCar3;oUtW̬&i`a\/>BNS".'Gĝ f&)24/k{VX:FpP{P?-vj]7Kא/R}6 f-CH!d^$I;ƌwd[=琵'/p0.9X4WSzesӖȍͻIH`i벹}yW/ɧ/bPNB'@+'hQ槁M`X=ptϚW>iiҹDy[;o(TO1 Oqe}I*E.½lA隼m \˯y:OL{ S6LT7hջJk+4kW OJ9i?K&TN0& RR %^a9hq@ZH3u%K/ sR¼9s):FiWOIO0_`D? 0,tjKS+n7Lv4WKuZp7lqdo#P9:XfH=뉍 vjidInB;R XI +Bcަ9}1z-EIۊVju05ZˇUTSeE7MxcNi|ʾJar;Tv~.RնTP#N*YSNnHkBk%TQyG4a٬{k S \ '5L9gL9GR,#3dK1NR:!15UqYGrcˢ ǡKY̏JMMͥSsKig.qVRyӝZmYdj`Ov*M9 2 o~( GQK&o=1W!02%jM5uZ&(-Mx2%8>㤸iW_c069N\IrZBB"ֻ xC#DԷ3CT#m_>VS)]7bt@Ӂ<q |8B1>0OQ/) ӆP_/]ISuƼeH t;$u9Xhq(8ѲBgMZl.hj/, gJ8[,ɻgVTi_KfÿBzo=*?4ԯmF݁ml#vF1vԮVqЂ!zݨĞ|tSz;d #K=2`c_|ɝTMb.#4򹴵T)+ |yB/\,CW@qNa &>qՐ,2pk5юI, ?A 2>[j /K|7\,1#2Igl &ceR ͨAV2:s_z @V%f,H.m+^` 鋲g7)>{K*`VJ:2%Ie5f4/QU":2/"s,IsWvLץ\bP2c^FE?"){$0a<簦UIZM`ghr @;G𒃕gؤX7r1h9w%jC6vƈ@s4-%fM`A.1?:OE2TmU|"9Dn<-_F zR?jS]hbI?kX I50oYo]Go} [K]+ ⇷3~#亼,]9Ofx޽z NeXb} z -i0 9ZY8NbjҘ6+q/6 $[2>ɭ29R~PQ*;|#C]NV|{'OPuOA_q*R\#f~ET,Z/T[(\2+ٛR{(`=O1d]~,rX!ʒH<\Pb% Ԗ*o<TDšJ9~X+ЇGr`dj`/*FJ`"ү ^;rV˽?Oqѿ?=Ā[Cz>;f'<z1 wkNWtKgE')Xn +ܲmxnGk2텧s JFB_*|4k:͑ɧ"/1s5?]XB$dlw)!E-IgR$[#nK^(j TU 6\}_WOݨpRʥyV3ɣ_z_8f9ߟ*/L~5 !Á?bVev[D^z84La(EXf9jW;&L;Pq7{_kdTbu>钡|Sa>86jMѝ <{C( +< k8Om|쓜P$o}WI ?zIYQi u1JP(Xp[N"T?Z=Eox`m=l"Lcdw@?|Lw{-frB"UÄz*,1]}|Xle.Ku0+0PTfƵsגޘH\uBJbdvvlk{GJD .I}J>M/l2 'Eo=V%6^ RVl¥ÏGg*҃'R1p3q⨣[.$芝e-35BBxdj!"fwhkeC/2XZBh`)Y:2SL%BdfjاuoB~^g$X]iDwv^2, wEBO v"9_V} 3{G&g -LFh>r+VLYuUG~h 0ssq8m&+P'E![J8%_}6ghHh h]{Y3_d8F` C4je%e܅A4ZPV*uQ)rRsF q8g%%1ŃzO,V J/qjqP>:37kZYJߡzۋ '*; PBݖ%NXȜltKnz_Tp85ʍp#S4otZC|2^F˼5_TEY`TVS_<W1W1NOǹZWr'R?iEMK(!$m i;ۻ|>FF2㴘8'[v)R9@~su4Nq#eL4Wv@A?.ՂO8bz,AS*sF p5eMip(1ɳiy.7bGBEy\=au X6sCc*|%(b fNn J'*h 6 Ls1E ]xn0,F2F%$Y`csoHjnP;x,uMQ_hU2N|@cbJ_J8PM6t5Ek qDC3n_$m3'9j -N ZGhzP㜎,fYU(ieٵ2r,bgmEv:d<2%4KWMxVnQq?o/%:~FSXm%Ȕ[?2^b,Ws oJ3Tͷ4bj1T)ն.Cٗ#yQ( 5qRgJO# Yfҧե/*Gs䥼modEYv<_O<6`͢P-6 _Eߢ|M^6sgIf̪ 2PĺWx:EݩZ-T")PhEW k3,1nk\2füj`x714rбj70._٭; 4DXY5$Wlj:j!Fh[uvC>KˡG1Diy_mcFMo?(#0TJNniYFMTCsF+Se/XȫZ&W#)K,PNȑƢqW&i pdz7qc[z2ax rgqG itHz& mFB(K_=yV×m0H+lg'o drmT`;;фͿZM 6-Zcv^ *0uW|24Ȫ,(e74%}#M [C2!(Bo4B5Qj#0kL9oJ3(U6tZ9Q zJT nj❩LijFFPalmio'H9EyQ=`u #N)P}~KL,&;5(ndF )Wv$K_vzzHP<ݒ3r@gx[4ɅTr!V;#f8}f9 c:r!Tj֦p;뉕>(j Dž:"Ey=ԔMC*h)УHe*0L'kAMb[V#GL?.Hӷ`Kc.9nXww{M=X(cU9z+c{1J6A)a!߿MYH1!_SҥbYΉx61(paEA̜?t7H/詼+ݿߚp8Ն M081>`fOx$kowQU7M=;g JTgN2O, *pJlgU%^sm V'Cr,J/uږ_6V$wٙA=!V(D0ӷY:f=%KTʹ$fX q+hr(XʢTɼNzhYk`Pm?!fZMrEmR$ո]>ګܖ:vp|V/h`)捭(>VN(㌠eІqpS~U%q+C2O ro6kGܑkF;Tà'RxNDGiۖX zk/xc2ql/\(X5]!^JҦ#CN&9di4Ng@BoӥJbX2g\eAsGeo@oro@Q`^F\ÝH"Dp2(ŠWm4̎D`"u` llWӾpPp li;+3JNe6%L Y߾!9uStlӿL;b0wQk6,VʧV@i7ɸd+_1䖬:HQcFbY T3;"S P"ݴtj0K?d51Ț F^"myՆ7.gYhc_6|}$2:/-ȃ 7פQǧKx*;R!;mh"Lt^:x-d`cGToHTWY=YA]b/1 n4f3H!hRA z'?#|N"KU6㽪xU䡖NX`?,i2i4<7!k3#|+f\й)3ij6Jz-v OcS ]MZ.^;-.{2Xgfb,/RdذSS.A/|qZOSXEPW7W8%:sCJ5LRz](DEŎsc{SF[鄙C;+,GWS#xh]n6KrJ}FCun< ӤKt@Rc?nh.T]V]r6Ň|1lc\#:Yt%y_ߧLLbh-5ldV1UQR<i8&M鲝NS`)_ ?PvXK>U0~b@HwT-~4B}8h-;5I_uUXdbrNCѿK ƛ 0ϧ #Caq(YoGXIG F%P5)uiizlj|1$E0Rd}e0%NjW6P4}2 +wB%7S 5{|}t11Ǫ/* ǻLZ NۀC/ exxI}=Abd uw)SG-edZᨣ*$_,}r j-|!do$w?΂c+z^|pS!+BT+~ i0 y 2y:ULԦc SI.K&Xѳsps$^. ЋgU0AZXolzEO  P*i'AJٙ%-tQ]_V(1@a˞Bw)]n>&]FT "05P#[#Y˳ؿxI,~Odl(x@ž*twϫɀ0DD3J~Z:7Lm=LDh9&12p,P5q%h*J{t7Y4ˬi8b>}>ƴkrb QA,Gu>eK3S]@ yt|Fm?`۠1v/M]z12HH;wTKY8(b[!15182[FΛ >,M&;(O%Z } $m >!e ̟ hm=( Q5 %CfzZN43On6-| I X :9K$ 3МыyfSQܔf2HDF$:u%_]u.pQCؖao'&AhsBMgqYfIk$kퟹvjw` 42FܰģbS"V6sZ:DVuy)K,B7*ܷ9?+s>7v^m(sADuVij]5B%m쾱H|-0>]}$ 9= [xК-*GW!mG@ncv o *̷ n\ h7 T]%Xor6NGۊ-'y%3o7DV]G$.L& 3ѱ1t#l>0]hT)YBXؽ]UXߕ֍.Ag Yn ^MHhq7i:b26Jf5MGG\wXZZPXԖrV>ϭԄY uzWk}r+2 EwBNWjU÷y(9ksb[0Moqi]j>?\ъ0, #1a hWNc(T/Ѻhc4eҫNj5fHDU^?۫ oT]3' 3Ȯ i qٱ(ɦYB}AkZN= c1]( [Uߑci'-]*SWV^lWrFwCyKۥ(P_(icIh`BmJ2U`Ma3ER~HAQ͘Y`Gc@Sh;xmOGDy_g>JYmq+0B kD2BBh=?ӄـs{4:#[wJPZ!K{i26mxO :?%bܢd{BXxI[r GXT7-V;-6E&F7'ɓcy4I#a,puV/g=R`!z)3f'0T.;Mtb؁Pwܣt_caӶyA-C?\1yMؕ|Βo9)m&]Ypi !~WaP՚+W`f$ņ]W-S|3d 3hV%J6(8q4|࠶%{g̙c7lhv.BygxaVV<".}J3`ӏ)GFkn_|XѲjuZ$SH~_fmycktHM`0I;"GpD}sܑdV/jgoKǝ6hx8v#QɖrZOgVOi'gK(Zf}|>9񘹐;`ڙjP%1`Awf72w(c:rc&A$ej߉Cwqv+N{b&rȹ ,a);ϲTt:԰UGFqk0$ +чhdQ vnY&6M%!k樼v K4; DcʼbQg}wnזK\ ]YP`q!ԁOparBReY31-HfHфL2eMy@;$еLT?TSBy>)Űak~7R\rT5 CM-Q _Qj6w|BS҂Cs2ɨpWƨ&?7;ƅZ}pa#ot&e0|;;5ϳτq >8h| A,V\jÃEIV{ Oz%;Wx؏|jϓu}6`*&gĿ=. xUZ-N{HHU'K6(-h}q_ JWAנO׈_z͋-&: xt*Gu"qX}m$1mݑx.sl'1^u([ڟn< 地O("a<^NEa(@@Ƿ37`BDҙ>"z3ji(vt,\=IE?irof"~8) ٽ O4p@9EE}p:Dެn-)pSż8=kF|AC["sZ} 2QGSn'5-5!y7"M9L:B\%0D,W•BЋ5{`R nj8FY_( f+M%Ɛ1}N,ӊVt,CyxC!s,?Q[-N_\Ċ",!I)ZxhaLz *tvTddMd 0͠qްU |3 G Y`lݞrf-iu#z $U>O ɫs^8E~Q0 T8"X3$)RT3MeJbs֯w{R@]ol雩:3/K>|}HQG@Cdw(مKq3ހ ֧sDXv{zPPQԚWvz.lQ~+ Dsq\C] LjY/Eſb,$1θf\7n^5#l Լ/V"OROfozb,`elu?g'KjaxԠ4amg!^N36NtpdIU,rt5 ^bTmKIn#WNue4c@fAMyY$yܗ޺ |.ai;B oIcs|Z'pDAuUY[Fx%U-DƹgU}@ȄI-UbsʔDhޮCK1b2Gj'`  %Wpw#3LUNCINܑ)Zh\`N-ȇBB٬MH5c禋q9]X\fm'[D-Uap빕ɝ$\B3QbWS3i; 2ԭ(΄iuŠ_pj |/JW|><$ ،LQ/+1)%.cU M̥h (^i @F{5]u=ս|Qm SBϕzg LY5a."VP;gukyh/QߓW]&OY. {yS87~ɯ<>:ՙfd R򕐗l+~ff QZf{ٕ{ѮRx<tg͍\T,=: ^8lY:{&H&>~-yP+0u$ywg3C=P{wި4_>I%sG}6ɚ),0.Tyu<}*vϊKHu3sn2 MrfnSխQw(F"1I,Doo]@v'PKM2W jG4mM-wv'ܸad UӂVP:"2Y(#g: 's[f*9)gyeV#'(8P{p5u|'sGé"xwT1kNyBpIq21F.̠v _ԅ~E`H˒OǭX8m },J o^KU9 UN`w%qD,Ș$LڄJbCnuG;4t C6:YI$y\c+yeK:O 73|51w9va{;}Ä28Z$x@[u֙{Q(Ef>)n3zU2 `2zVn#TEhyo==5Y"qmXs{AC65MۓEOP&$>fК%;~W6MUtBodQ=iSLӟC"M_类*]Trb4R [lN;_p  oHN=c&--JE#:ڠ&]`BeHx[_T4uaG{^56\cZypg#{K˞ \?0n0Lq-T 3@P3HQ^f|VIZC[E49^]A31h#/:y4|xۮs$,I ȯoTAj|M(, *z_Hh-oVN% hB0Җ[N(+ jgGs1rp8oF>b1cvًsرt_ZHAa̘(*'Nw(}qFD_LæyNh!wOt~9/jNnj'v:i[ܤ95P_J<a grbpIN!FfqM: aصK`F/8 ( +1-I\H %ϓ~-$O] @$͐V)E{BptRG"0R_˒Dq3۩T`ecrjh|Qg@ϡ yH}㕌pbhډ6g{Yl0$55FYNE;/Ҋ{KZ( Bn %pEj>]J)p$ޘ^YbPgx0 Net3{B-UT ⫲Ө'!Yͤ1"n9g1IqXjY2xK|~ BòZb#q?<1!Bi7ǚv]CJ0F8cyj*j|sZV[Txۗn&8g_`OH(lǓ2tD-7*,{`!jż lQxJjbC>Gnq :IdY"7g1PQzeNy oMM?/ƒ:7/+h.Ћ"{ ]pI],cwt/ޛwpEL˫=9S]ڍ#DaRTݯ4KCtc}KT"dnU3CzkpE͊֐JHo+1 {Q, 3En|>b)#-QjB.Z,/Ͻ.ڐ3טGG[_0-T|)~I_'XGsIW+-%4ujaKdlhfבL8RM @_dG$!BInsM** m0A惇0"܁H_'/ zr̭b%ѳ5,M ``g Tb} v0}Cݞ79oY8,-4nXfsi* w2g-'WQXrLg_VE$:աLz>+.-UTI[?Yz8ѽxYF鵐xj7㘩Q8)߱s͇1pƒYMd$W8ʥV&ijQo#(v>TkrySBWl= !`4M(Gs ̕WTx HC^~D 2B%5jNsPʩ{+kS;OT_44f+$.!epU'SŝJ@~ )} /w{Y:?i3BS%#[(QzR65 :gIg*Qp6}ը_IpGlҡRi bA;Xcvd*~B9=0+%^/>95q4Q\=9^M:\FYO=v??d5H2]Km JzԿ G$b b5̆k(*b삳2P$WEJJMVS\[5V3W "#KnvឫHU/ESE3*ʢV5*ÐZwݠ٧4y!+@6~"vojdVRCjxެSiD; 4X\{׭̀ dwA,Ʒ'@j4Q{=I0тZFiM?ʇ%hd~W53:>Sd~-xYF0*?á@ѕ| VP\lJSdŅ'V/[H-'rt+m1ƫJ|F$Z"z_ >Q7xo5]4Y|eKq=^_n0dq.afj&Ȃ%4af ,!ԉM {j[rUoKC4cj 'l pS?b.>? o*ҕ&waNJ7Yҋ)|'njlS"+jv>z6Dβ [.?YE+D'Ӭb(CN#qRғL w 5?ivb\2̷۴F 4,r3`X <\EC%vJ#I-F/ {1j-=T&Ҳ1f=qVxE MBdw򡺀} %a!τ']>˚s@i5Iv=PC?-7%OXJWz *jvJqBCP@y`;*d8Ċ6jaRFӳ2`L@FB:6 (myjjB}/Y.PImD?.2}u M̸p=L֪0QQԈ>318 _)iP=4^߰RF*зBx׊}lF5?ErP)P@S~/-w ,ҭ݇Q-ʚj7u숧YHe|4&ZœĚFuq=`j)nL*RԦK 1I@^Hlc+9s1USoC_^WђxtPuR %?lV"bRYo>>~XuwP^ 2aof[.#D7?]lSeTu)A #4*4 :yj|ߍLX[`h*56ɽ4qCV5wVYcj#hѾB f/;tQiW@)+'<ʙY׼JӒ<ĺ@ B$]vUk϶ԺVc1U&C9-DuUt76έnTYh{8q, J-O/t:OGuB/cxhe*I. taN_(ߋ콍*,vEϮO1Ef/Ѓ$>cq}Cu|NH#9AEjD Ydp: ~N_FcEik68I9o=~TlTDjk&'+ۧ% C C3@{H,D/lOicv !y]/U܋x{Vr 4(D֍3:obV,; u}E-cC =ZwӭkH.Fwm`ݥqN,RLYwwR:=.(1:RҶiSyJ1S|^T?7( jX/8X(sau|8 2)N==ʂ3a|FJ#4ȣ懋NVH—}@YJ0]}1 mݢ#6vgj}B;Nÿq qː7^D(02"A-܅ێ9'|vL@rӠ;F\-'*NSO!pS"Vܹ݅C%*roB 3%̴mlmo=c(>v36}hZ5kd<,t7SAθrӳ 2(ٿ<`)@6S֔DȩE^Ɣ ̥֬/5}nK]m ޴rѹN2-D7З^ 5P.|{VHy'ؠB ~&|lٶJl*,mS鰪lx7 ZfuA<LAn$ wh3j(%JU۞e׷!GU\s胍+ ȧdMޔ%k-vrLfs0(Z7bjC; 9:z4"{*z]ڡB 'mɬm4]GtW E 3o,6V%^c)="(QcZ1^䷐Gɬ$|{ޘ~@EjW2 G3[UG4 Vbvn)Y{"YWg siFͫm5p !3/[j({2]C%FDdƑicãGd_+իn}`\) vPz@b.bbRq:/Hަ.Y]~8c& IS΍5UIRtyV E;Al]ﰚNN fc6oֿ6=@21`Is=\Zz6 ym~C|D@rr5bvmX(\J< 'DžIq/1^9H&5Ml-PLؖz˭ .b"{;5`޿=s1th0B#awjZXf½4` Uެ*G@S4Q9=ښKf4 sk7).Q,;)ٟ.Ocp{E,{6GˁT5Z_;wL==ޏ`*5 eUj=~BXeW@C-YBBf,3dbҥ'ҡƈkL)N$Z~4[Qn3Kb%,=~:3yl ˙)nfETa?=I)8XQ=Z-Dٛw ղĦ!P̃MLEyíjdC]u q ډ7.| $a~I7S% 5,1亵&! =2>E@ ME >ii~iùg7Ba]i޽d3^1J"|/`"I9Ev ĶWP$<"?Hܲt'"㿡!GVȴ'TCe^PON'Of{(4m㌮[gіBФMJNNCebo?; fpto}`ʫabou5a%'%IAX^刍m6,!6Ji2[wk=)|>ܷ.~{^qTz (3BŃcQ΋@iuaFǐK%NzJq+Oq8iC5[ʺ^&fFc2p 3}G2aEmݙdcJ8M]q'jújD8[ IߺERjo[a'k0L ]2N*DwiĽk!A-4rՂTvdwy>tJ040H"wK 脜ij|E'Ol9,ڻrښ\10hT޹zJvzWHsyDuGy0R\N)Uڐ߽z?q4 5G>Qv>{5 ^PS(~Imc&`㴵yYKJf\laRfIZtv4*7iO EVzg ȫi0&UO ! m$!'츜$E VOC.nmd12`#I5XX5$ArlؑOd$b,chI݃5d440vZ-B \eCEdLw|~s`)ՈV#F2E3@MmC= GK|QO}7gu>ڼX-ʑEDgq_y@nQ?_ү*SK'%e&)iw4Z3f3AhruXFeNy&\0%r7WS"pm-,6!f_oGqISh'2/㝥$(Datـ`4㍖ϧpX=̕Qg<z@&lqU%[BeLͰ=ʰ ~[@C1$bFZTV_ԣE(6˥ Kܜ|II/.[B#a|m \i;'ח^*gPht=h^2Hvb\i׊'&*8J: zhvOqam|-#:?Y-rC#K eoi,G:FG ‡.jU{`yQ5^΀o2ad!Og],\[%mY3@V8Vʵ%kQt&PW/b3KdixB!#{GYI@ڈ% IMkyPj4bwwB@p^)xD8ig C}<|%](X#pIx27;lW|?l.tA3uD(^^N53Yƀ't(UelѮ3I9ӵϽ,DD#A"|nB&sv 4W ^}OSDR~ f-0:0u(7#ˤBUElCO_De߈@J/y5ͽ5t%_?7AC6/M˨ oޢw&4\x*[Ѻ^JǛq?y+ 36]*:) O(,I./#i`D^XKmكr DSmቋV^t!3p#p@:+Bvȃe^I&@";*n6l߇lI U&J0s ʼnYu&f^}h}.0sn)ZI;xi7(wV6WnEt!H=*az+o]{*`W=cėZ~ᆯ%XzCUΈx KJ ո= *B:V\>oŤ9b btjU]Qs숿pVn^6^`mB4ӫ9-`? Krad^]R/-K>9'(B!!=ׄvJ:5)pr(6:x ?6,zXdW1^NEH#Bv#q/Kox;oHҝq׈#PJQ]3_u-8JZDai͔Yzoz\}|PفU {/FS@HCĊsvXS,+B;byUW<(6 ߦ^E LP^ȓ6e.6vCaZauLw]Z2z&hfSW+}9ҝA709*}HQgճ6cIu@`W4,Y;1s4(>Ӧ5mE7О"0UXX f(DM R/<:NMP8XrZt zA GfpExb\"t+^hzẌlƃwBQBGOKN9O18]_P r|;tWe 茆FLNG7% s<^p$&|]Y#B+msUbf} vCwi 'uU9K 0$yWƏ-|ytp;յƶP+oq2g;(>:3ֱHy5^{v {q5(`xv|ekAx(xPjڃ؟Yy4|+(ɒ-&:u@6Ps". kS_{o4KQ'zF{m@Xgk}p2}oo82J,5 ߓBKVi@Asnɱ xIF9Yu=* ׈jcj|Ͱ˨E+NK6 hx0U냕 !;IvͮnS$S`pFHWKy`9nW1n\Y2s{tjف#Lb6D}6DwѢ0f0a ,JY$؂jϘB=ÚA!86GG岊xsCzi6,HAEZBqyGTjt32CgxW08W,n>hbQ(##XKef ұˇThO 5Iȯ×0&9<1\B\F6"x YB?`&SGL}KJhs0Q\nOZ.dKs]9:6[1IͭPjT04H/FM UOQg#)ٖDݫ94"߲83%sBa9M65yÃzY|!@p\[ *G}R[p瓜NbgTe:nUkdڕ׀9̶9])psTTN뵕@*|YSCRq~.,ͨS HJLC$vBek\!4[*𪑉"ybqԸ [§ &l3* ~wE_]-1 ]p]ƒ!푻+?Pp+EfNϩE%*Yb'u'ٽ O9Qܝ&d}7WF؎݄I{hs ANaM;*|1؝-Ey!\TOʹTy–L*qR8 cKB?#xlx*”21{'_/qcv3\W6iHޝ,6W K8+Tx:UO4TbaWߜKUOtxVhE>y__ *{mc0 T=& Iva0-qDŽd\P!wJ,zkMCDaM_F*qIԘk?3XURH9k 7uWmlupŸqEURmYb/HCDf*iXI弽%&to~zQTZR/P0Z|e,B6<"L@ºUՐ{-R$|Vuo۶@V?8JG3`o~ vUNkK@U *`Ճr+egQh Ejc{瑬*2* tosi*W 8GZk! '/3, zeQv({>[Vg'ИDrhJlu~0OXB:'ad{axǖ!nxοkOq-7:9{YCvG>6WoW-8v08'X4#X;w"B# ͥ2v:ƑD%>%U:HݹՓ/1a-Y  .`N Fc`!~<0%ԪnQ8P-_n nEPYFS; Wl%̀` l{D8? b<[J!IK)/LfMuGGH#rW;5MƪQ,6Ge79LH\(6~hl=UUXyuA@ DR4P=cJ -q}7g//s@2Oo $f+-QclțHR$4Tg6_oz6_;InM:Xszpaz|J,MuFF41UYsRRG=O `bsޑM\~#Ftdr;IhE] $Bc*MHD%`c. :dz.8z _[9TlG`uy&` )x6m^AE{#r6KQyjڋ&Cɼ?JI=! \GPa֧Qzo\ȪPR5T]Kc ' [Ɯ_wqL|_M$f5Q󑭅}9dA֧WWE{X,12,+0/lC~G3hPeE0iN?phx!A\!T(p mĐ&\ hk')ύ;_-E@[)ӧQIA\nTTv-]<{"`ÃN[:g>*si8LrU~KkĒ Wu&\!=4C:[D#{DkCWJy{R[B{UB%N~lRƜs IPɊ%ѵǠ=fiz)'p@kG8]?uL$ա~eIKT&2԰W7_P wAB"欆y;l{O";tW]<!: ]$p(R.wrs}ykaٍ E241"-AB+t}R PWڤCDFTۈ֬9<?ľs వ/ov<3C4vMEU'Sr\឵x:pB)U*Cap.^nŰ騙ɲIJëoq=t ve*a߻t% #1_W[ .?+ uU~qk{9 oX=݅| yԙV!T lXxܾ m }HE%aQO6lb@[sY}8WBa_;wUVȠr*pSF]qpJW4ڹc#pWaĿ)bbr+tm֢SM``ފY^{B$7%i$d % mMPLʬJ$$d+pp9JaJXCkD17\=y0r XsrwŶKe^2sM'\*Le2-aHr.IרlOhf#mt"@ezjl~6# bREgh>W0fkG EsUMs,<ʣbT!y=/jo[q-mBP!3l T^Sl:Pf3rV!#u)KI38]xX8-ixC 9^PѠn&lgJ `̭7l8`U f+èA[%2}3 [{_!K- o& @1 R?VUq8 ^06 ~vW/+zY+х G EY̾^̦L&<h4 rGC' EVa5긕sr&|\6#-F "z~l ICeL|dQF3hAc? C]l3 \Zs|)& `|v=0۞ BįM(?1cGl! tRLC# 6*s!ӎ}RF=\h1 DTiOM8g %|\'E^<$ tK/n0pyA#ZnGF[j*PXP0Q.mB :ûUmu*MdFH O DJ) K#& ;,(*&9U#7j]4fWuƒv^V0恤f?>ҳ6Ͽ 7'o|%@%`CȶaAھxdK Rge;$q]PV M\8']aLlOL?gɅ;Ra-{(q>:%Nװv~!V%p D'>'tɨȈ5jOfki̋-?#X*1,g-Y ziZdy*HXƕy86Ϡ⛲g`~O8I:tİ# X/Zh'aaNu\o"bdrO?ǙiPR܈brG1l㽼@4Sȗm(JŨJfG&{SVfPSB#E6r{|'1C`Mn *aH,vC ;~xCk0s® خ H3HCeq u0g5 f\dd<5Hk陥qn76L~F(q4~i4dbu ^%JxZyd%!rk`̭wG/$X=?V۴s,o&D9R= gxRsӀ,y4|mX7uZLf\Miap۠) E2URp.ikhC'A ,6uQl/Aʱ M׎y\?zA-zn×v!mpKBŴmF蔚-QUrRy0\^m!xtt&QR\jox%'̫l4{(H/bwEZC<̦T]r!y8:tbiUВ`;ՑisTgNn)99%[dɉaё{eA_^e^*rN6x87)BJ.2 ksNVЖ,D4Ύ;m:܄:CᄈO6׀5&zq;oE~!&cpv8{RPYQi>\D#۩-[:Y"|sq s+옜ѓhy;aN9`(fEܐS̓nBY*I ?N!!a'rY3NcW*W/D)r=PB%Af;^^m3Q}őQ9bV4^  襕b. H@"`=Cd *YD oެ0ǜx9hΘ@z'`PT.ib` :.^tM%czdQTSeA2Q )pw(f-#A4'_7 F@xe>|!54L'ש'ne1xUPj`/m ҕ[? =Z##nH+qY(;ΥmLpM򛙿/YQk_l߉i_E-hP$K蟌~Me|E`No OX 9/ 8n]'5&9vem0\p`Q~NH?`kڽX#F5*{P5FºIJ j^qPku p"4[C 5a- M) /.ѳgHO?ΊyV5hAk,e= g\@w^,{ġ eo.5iZ){#4m#y`#ఖ<%, +oYX [Q`$R&$4}oq\ײ0ZRȾBn~/ڈa=9mTݨeqA46Yzn֬Dbb䙆9xB5uh/-jW͡CN/l$ d7FטRf6w$@ ʑX6L֐lG0*^Vc+lѦ+J7+-$ԫ[˕O+h^:w/P = 6D+ x궾05%'WhnM^y%)!={D?(U \^6᧼G~o1~WfRni/bt=YdrG^d}^0:\Iy3k|;"uLW?Du`8TpS3f7o5Rcl!|Wv+J,op#iMh>΢0ftl`5RvOX o<70XQG4Նw3́kk#Hymi#bz9#DRZ7բ<(?bU] yWqXIGvV#1fj=蹿q'$/opMRZT 'E}#7HK3*g7>49?ۀZY^?syv^ '-igztpKG5U@컙 t}ALظS9.$<%iʖFm-L'}֮཰CiNB3U>Gw,95$1`ȱ^@`OdݵٰUU?`+yeeʊ1 *EK#'Rό]k.RFSݐAUo95ģBKeHUO-p~-}MQ=oVjvc+@3yCdEdUQvnx#ÓR))L8BC i2B58)-aJt؛9M嬲#t.EL@l zi(*+&yEl3XΗ]Fd@a~_6Q3LxCʌXb'%-2qBU.̽BP`: ]RN+^cFF nDdaͱBFIzUK̂ ^Q\H/{) H mYɣKR魛~?ls?-,gwRج(SO' tF Ƨdܠ﵃bBPXKG'r6?WG+dKq5C`ѕkgM L R י=B>,TpWƜjH*o¹XjvD;'bNM͟O/!kw3:#[DYխ$+,O90eTӿ8-׬n4Ep9$ ADk2EwByڭYw fyd"{vuP5ؼ" Ho5?T mL㭻ť$.8% NE>+-  Z /d{(Mڟ_ǎtT1:-~ǣ,;RVSGf!lY._Aj/o \cP6DZ'P8rǾ|e8tGѺvC_t +h0uQ&]snvNjn&L5c@+Fxr'˿Št\ImMQAcDte#9@ B¡ChB<;ٔ&5  ɝ$VEˠ"(~k95_x4"]` tY] ąg˞4#.$#GQu?Cp+=ԅw/Y A*ZϯkxKQ~D}SwD$W_BCK~ЦW "Dv1D ;(nõ>mvRMλ^KAHr%WC#hB,˘bzCrːpf8zg92Z/)byH*Hxd@NNJf]v&8t^-Uʅl!C+ȴUVb' &y4fj ƃڹ0JE9y&W鞴 b(Nbj(_ji5ACXRz*~x!A&KR8|=à5D;%~0Cd/mlKYgdhnHqZJ@ԇM;^3?q[~o;ˡ$3=IL[ h,)A@i#t\Ǣ_oK! B>8QŨJ@-bO1 A­4Kz*0O`(,xbl<1A!ؐidEv{ _Il-"V YJ \l9ߪ[wbfj wVBNɓmp_;`,,lZft'}ψff o!h,jBxӴj8%|gh9dsJyf4tE7X 6M @ru#A^6)<:%46EAiIa^DF8{~Mʭ8碈 p<x&M$f5@b'k8:7e\Z'd9z??+N >=Hse 4&WP֢Vu=ڶ^q.Jtv\߾vWsù75CAΚHzqpebruFwǻvRM=Du';q & + O֬z-&7a]apuhȊEoOr3A\g)ϔDmn,-{{1pS1 7jAHPeFf$Ҷo.66|Xg1> Lb6ڋ8FD]hpH7IҴQu^ Lw<6}X7:)oYJ 0Ehlňw $42onnq2p_xW]JejD4FpךS:q=<ܓe2hm\+IRFі6V&}dGb:D2+MGq`Ux!Jˎϊ>JVŃ$xZ-S *]]̶oqe;Fp!qh~rjE0Fk= jfq6M| XhRڣ_WFN +q:e:9&`1 WgSQvbVQϮ 迀FV10oJF%sk ǰ {lk_ eQ$Uv33܂ݑ A; 7r#Q*brg [E0e/Ϳ8A&thhX?ewr._ݒ]"8UsF3?р^ c[<7 ިF6^@9μ%J/ovfŖ{dQH9CiQ{Q&IWkw 2Vڽ)gIdgCS>G(>~*oQQʇjX"{89KzJN-4hi`? z[:2=Ev(\=E{}:e$O$iKjEeDAK;Qˍ se +UNQ9BY{JA]k)b'wyP槞܇psʆmz*$hAlN&$u9gt4g60 [й2Zur=x/% NjĻLU4R%1| NؽbI#C a :߭'}_Nc 4FZDwamId1CRmuIBtR:n:ХO{q>nNu75m`TEoEKh˱U"hY]&Yp#e<sjۜloNɶa`WWPaf6cr k w>m䯈dQ)`OӔvn~_}_0hxx޸Xo@ǦJ ^/p^/I4rdq_ɞi z:ѡMQ\VNJ̿͗W"&0$ UOm_醏qķyňayU6zVs`Jq{f%A>4:c\rIT,WN<5m(9p i\2޺aݍ2$J叞rC$V9y:x+~ )wrY7 pbx ۥ;'6Ae"$ʃ1T:8'_EpA,H,_KiۡnV@2tѹ[K'&;Pܯt9v2whh]] 5KW*"msKڋd4pPY ɬD{EIێn&fÙH<4S㊹ 9Njhvkb#ws|RNT۾' H38l30 O]o\+iMyUZ-g_'j:Dֿto?&^_oxz8! (pd)|Bkb0@wTQg}lt'`g7mɗ0 !B4jwTaN'bh];*b"OTIx6 !-53O(8lr9g]VjgaVqd%pbt2:侮C{[0f~Uk; 麩zi8QSi1\'|w"iJ{3^\-LS_N~? s_TuC]יSVKyfQbjb#;0mtL/1*Y_].s!.ƁoOQLU|B5` /_< cdv(z]K&\OQj 4ohF)"?^H"\L`}0po&_ u[=L-[ɓPǮm+DSf;xs~U\Du/-1>2Eݒ'ϸ8r˥dg~PĞ7kGo9],.+O//f%UP 3Q?wS@߳щE 젟#sҧx 4)B(y>d'_WnDa-!} 5K 腒)L7w|KN3Z1ڭ6 .Tʤv@P>{D^cZ$;b' ҶѪd~PnC(VcGj:U`r=ɭ]U棎GBnC gAH?>6~Ri \H/Nai-&ZL0' BЀqJK=^!8 Yxc뺔E HF64-aMPWApؿZq VH[#*"QYamUT+!ӂjdO€Ĥlgl?ad9$oE``s'UpV̤$5kIpfQ ifshaYLH8:4NQY!g`Mߏ;q~WqWWFVipDUPȑ_lpnaW9(v5`Eq^NLIq߮Sܷ9,鲲ٳ I~+ I O.  ֙5,x,eba/f|Syxd}LMEe++d^fdn@ k.opR-h?yb{Q'O4s C VcpQ<"mװԝn] xg .b D&dU6lpXCdʅ {e8a#RTT߈K'tl N 'Ò"Oj"|_cx ! 4ԠvP"U 6y94.1lk9t.^`XwmrТ I )jf>%-N7c_dzNjUxTD'n$$)aq썯1<4,h=N P‡oMT) &yE,tL3 ,;+?ˑYY/ c=g'] Vx'R߾2$C5X2z89eyFֽy_r`y?Ido roP+ &Hwi}\T0߾JX)cm5s*6# N2,sLQx @%k/80Bo5]-ARRqSN=w5哚@4 x(FAv-AVqTN5gLv0y!DL~LevשևoP{̃U"Ϣ c4UyOp {[n)|½hlF[OR l6M"dJ@Zvx[Bwm`FRcn6jAA5:UGnB "(<%$5BļB#62/1?>&nHL|cXC}ޖ5=jRd!eB+v]RDtR"9Wx{LYNoBsa܈GZ %mO ,)[7?n"m n8QalG3SYH-6ojHtwYp|= @C{C럚xOO|G&PЯ=Z/{4]4ֲny,-̫B:!v~$ *ɐ>*$T"Uxrc罏#  /GhX𪅽heEf*f_ks~"!qbPָsˌSՍIj2Lωu7һt!e.1ɴ=:y@G vda`a /-͊~] -C+h:d]$gESnJvN%V/4 ݴäSS4CLwNZS̪Vع!:`l>xPYK~^\X5c*e}nNE2"\^.cu,x G.mym5LިXϷRO/㥵]k*֛t"17A@?K?o)(M W^zPZ{J=~ǸHRM-?eM!pB_L.@iPU\mvۖz7k÷oG/pֱUUM#%e/1V,. B]*i h]Y3 ?ߓu`Q~j0cPCQ fjA9BŇM2+IWV#d@ mpLش1=c<{Lvc_G&bwk1!j z$t#sf{),_١_Dflփ3о?|Ւ+h"j`%Irov5,V^P\Ѱ- ]b߂BS ai{e3iY;#X-HyiGW԰Y[ZDԴFĞ_ !-[k)+SkaLF>CC^2۞!xhE2o˃ _ҁckNreaRƐ3s&en@=zvz S|Ȋ\6Y2V8m-SN?3̴D)l HYg\ӊ8ɷpɉmh(p"Q#BqS[RAkb /T5BJ4uɋ-m"/~-TΊAnp'9N3%JiwOzXᄯY$|aMĦccUbNFuFXхJeT`Ủ~}hFøZH n=a_Ώ9;Jc}!D'еN>:ѓiBqaaBVD;c_?>|OOȑڠ{*:m701) .4 4Go~Zv:޶x.zZޅ1DnST\}X7,x_V>IpHYDxU֘كxgNW$ظsg/|ja5i,u\:[ 8=^mu Ss\wFLsƢ Tx{}ɼJFlTxY[4|"#"Sx$}~%v9w="q֘u,HZsX7O'KoEVDX9GW"}M2Ъ5_:֣ؖiCN3r삂% [ b`k<Ӽ U\;P8))i aMBNSt3>`ZYc/MkSS|@ ~RV0-F6j#Q G(ӑˆUa q!ku}>p}x#jXk N\_4؛/[ؓU^|o?Kzw(o Axb]Gǜ]C/6dw0P 2a9OOppIGvS(v<1o{}ɀVȈZ./akWycw$3u)X:wU%5=Ue=+$jh*m%)kXXkj@4+NqsAcECS9E-F̻,DHk a%ieɡao?8U nͪUQNQ"ljU-MC\e(Z4@ wăՠ4K*J[ͩ^1 ;#c{r{v)\޿n|S Ɓb( u4`M<6'# f䓜2Xu!FW3U4 VI:J@9mᖛ_V^>IO{dm;\81*% `aJ#71n w,qu\5/h-u[Cx&5GpNAG)u^}(7/5)|eHL0qBؗb!j97!ڄgovԁ5+co#JAWUy#{ bvz#eVb!"0> Ս /ͽw[)T/kƬs K[sOl"AK.]J>q,YvĀ6$Jjѱ,m[-Z(91a G8F8ze-ItQmc9+n +Sg"o?lȲ LS|t2%ޭ-.d66`~ "q8t`UY&4U#Hݲpr&z9fr QIh~ *,rY7 )%]G(߬N7ƍKUp!}q;<̖(p' #JcG plTUBMXcH#Ѻ''@(~`HH LH4p<v2mC`}4H=uz^] ;yulIAYaúl3 >@o3hP357 X=#:Pj7Ig 鏃YHڒ,EGq)h.4~6bտ4ʸU32^ęG3\A sdOr<ۂ-za>O6[搝Y:\.sa#z!0q1!}AUꎘ:IZ {/BxpǤq2ɀ_Ђuf9[& ̍"tH\pp"}2; 7HeaKM)(ͧ;UpW6ʽ{xzu}%ʇKvN <^8_ KhP Eeu/F{]l+0,w|f]H'6TQ 3kyZ! 't fEN G/y8jDLW %]TO :M=(YL?0x.4uc9_PVͬ/$'>;0E3^ _MzЎcM-@R{`OŹX:bX"39{S_rΕtf~ Anvң#%hX`RΫFB3J5 ?|D'%fp!@^ b^Z"ޛW`iפu#pfoxs"y "3+MʫSվФvtAjD`( W w3 }Zpy`bݱs`)6,y A,W6P):hи,8k_A>DIԤX0B'p@u#-I%x6}(2rؔi$ z>o ɛVID$ iźwm.$lyi#hh=0<[r0P=)zl~0RP I!zzjn)"G(kVxP Z'`C6nP XNjkD?SB(3 I TF Ap2O=miCX_1q]&!55'46@y+7(|6&@ W 0['|T*iV4y$=# YIIlP+|K.RV?`S?8Y2;<Lj[h7Ξt4-p'5RFbsN1E뜦$]c{"NZ ^}1tCiaTc&$vۢzSbU}۸*N50,_ p:Bm/ϱ4y8,X%}G]8yBn,$w%%l؃4:^µ~ԩ_MOpy,1&in(I"sz]=N[E]wGJ@9K:8HT奮q * !e>2<瞲擮~݅ߨ`oNf&6*G\&%oY5uQgj}d|{0Ba]vb7hfP"S,/0%2Y"\ä(t@jƗ !Jԋ>-+/3bbm~w{VB:P(nxIbs@fz>ƿ?ayhYEĮBe@i>'Ac%Dyot(PGD j\Ç ɹ?B=JK&%!䖶D^"s\O!,IJk$=N\Yhi]C=`:^; Z( nK{||RoqYz7\l}$f(+(A=עPlM"7W (K (|C--v>7VFRttlo22JNZN䑮\eX彆-]kԩZ\ԟ%7 iC>h696;hsdV,bl5kܼ]<ɓ@R4 .̫8)_5Dzv(c-I+hb1 IjeI=)6-r{ƹ.`G҈=,x4I3 43ۄA??fƲ8 O6<[ ,GD[<H3G)@¤=`> NcM[ua K|DRP4㜫h26RNYX6٣x܊&"Ou=쨍/ȺM2HG{hasWJ@$R])uV¯ Z0@rqQTBª2"쭣L˙=H."yS($2bP&H($ϧDz/9]%5` 218`hư߁6`kYfq>${D<T_brcTn++FI &"\oAg*0Cܗ _dT*ʮ=oud\ׇ'nVgb$gCR\P!4?3;]:W,`846WJ싟X+ugkݵIRHawTBUg{ ,˿ 7z̻=B-й~V|*MR&6\.8Seat^$B~IF̈́&T6~;VPyczwޛaENVPx(AvS54Ű6z4g(O/*e$nKSo0Jo ~2D <9SA_&jA`yv疤l[ۭk,2.Y޵E$@&2.^%ly%ag7m~$NH4`܄Sc9hGAT>LܹY!n5n1y} ӻf {h.ayzUz`U3dM4hw`2 Ԛ.h3[(IˆyqM6OJvY"v?T%i> tR3'c vgL$0hm+!Pd, EڲMՒvm.QH;auTr @&D<<2kC8.rA'Gǁwup*/خh|[,?f/$ϗG 6_jb_nx, j תxUeGvgU 2Hg6T-y=6vjyc<(I2z7[nOH6n'8Uc\YVtl4`Bn\_]0R$9M`X-aͱCz0*6){\e,LDikTXOҊAu<>_zRR2=|v~zlf߶G)G N`RFu˧w >Lzu/BZ {G0 3SS:'z"~bgy 4j(HS7Id,#('_ LP[VЛ)sDh=HoT:Cɳ pYDMPx*j^ E-si-s5 dzmPM]|!KRWn5&(m9:nM^=[>٨,f }H@M# BBݧDEDi&szfy}DDfFwcG+V~SQG_wDC=]4TUa^cgJ<sO׫ 8@Uʐ1@u_,wfTTKmNADX0RŐ%e`Iz wi9_<7h7}?_~_x2( &gXc،{ĕ1؀n%?[6X_X#<_h}t i+rɔ٨$)xPK!0^7+>U+ ^m#~ڶ{oB SHܮdOl^ ?4oŸjtat遞%CRZf6@GtT7lB '3Xz3U7+$,0Gia27yktnNAF;Tse(/SߝsI-^[dE%I}Yf x_Y}IR{'0MI\M73W4@Rq ׀$3U&GW(Dm\4QT{UIt]GpA ce>Zί&hQ^%ZWKp)]1$죾eF3^J؉'ЗJhUWqІ8"I\g~A1^.3+.+}Y!"EUZMtL(-}cV2!ٝߣQa-gf#bYVoD5Ns%?Y8?Ӹ~W*3'D3U2o\w|aղ`Kt]OɳdҀ?r_q3$X8y̌{ܑziJo5eiܯW,\AONAF,ɷ*0y!g!b@8$[ Zjb., lO?i19@Cv +Vl ҧ2]WYD_ҸՕ[cG mz8>yyhXOIu V>vjk4Ev6_6 7fK5y`Yf׎|V婯.%/ya2ou)]y|nyޅE_q>YTJX=G#t>F.R(i ZiA+ixFBJeHf՝`ӱq)5DtzZPh➢LB1w]2a9Ti;ڧS ZV fӱqG22;Hs?'6TB0NN9DF:hEi\ 8&9fǭwnp#ZGCqh3 _'q6n>V1UrޡX%rHƋU}7ZJ~׻[Y}lߥOb2Nq_+N;2{jmrLޙ#hF}:Qߙ"e#(ܹnw`@Y)=<޿0amS:n`\pƯ9 tŨ0nV]S7jcKxr} *_ʴM U!L91 RM -z=X' ?z1EZZUn.pt֣*QQॊ{6&\q@n:WsKA950ghlr $> QD@z;|yƼj Z.T"F&:Ez=ZDz\lj+]*><2 8Ok4&kgJA M٠߉űTbHf*0V ԍ&x}@-Nvk.>I"^nvM;?p4IN}5ȱBGjĈ xȄRx:l,9ZsBYC%E N4z$̡if]Hf~'@/ :VÄȟZ[teZkS_udrg2D]1 ɋlxGey.3!z GrJQ`cB2##JyeS{WvFWJE Bݽ&vٕ9e^Ř^裆Ul=Ƨb h>,闂[q c;SpQ'! όs^Q7~[ATǥW7҅  C2E  末hG(MH%=$ӦH| RBc>b (!3;)pTi/8M)C_#HE:*-ڃJW)$#`PO(嘍t.iSxxħyJ8ZSɼI=(^q{*jb}aŮM5FRD4#禁ѫ˓-ŪB2iT@^We V~$ 7#?gCkop]Tnx$BtQZ4}Geå6@4TQ?[P\|:hb9' EH>)k]+uYXȯ>4f@X5 tVAIΣQNV#B"دz[u~N$;~RKu_¦V!mj@٥Sh#`Hg3.``|ЁvgٹCaՌ=lveuV&4J#$]-vT̟^w\R'Kf*,wf 1<jǴ8aD1A zdfqp#=ӆ}2S$/>4f-5N];|M_~n;9 %.čƜ"Mq(VW W˵$ ΉV^z\Ք|A\,hշ3 0GJdhCz2T~: ؼQG6镼 &e?l‘=oYie1L \o03krrRTcErMXt'HU"]rușY>`1vElul9g{?]mC )9ZuҘNYa#>k5=-ũ >$% mV͂(W-*(wy~J1Z 7R*^踎)Ah 3н4I ]# fQd\mI6Ѕ7QRy j*2a= OrZ"uMYlgP,dg^a h~?7G[5Nzw~BܡՎ9ma_̋JyU/^=ݧ CWi񤖲f"x?^O\i%=:PUCͧA AF Lo杯:O;AyGʹm6Л JCsM&?PV4~grحԗӺue>oMgr$8F DWM+_8$ MmE=4Q˘~EZ+lvK | 3F-֑ ]-{fnuK\Ԅ(WKS}!~%{]i΂੎(Ϊ]C xdzZWɹÅ|`LӺg@g\C·i !c;<>I6 o_]F^R:hT4J(v8R[O4!E>7a$#;F'Qg<{^3iGymTb,5!+?Ix>re8m7:l&G9Kxe1A|\lo/>5kv+˳y=$8޵ԇ X&N}!3R3c]2W}/E 'Ҡȡ+V 5uyJ)8H')˗nLGQ\C Kdf"=aHhnM1T&4k"UW?=I$F&&X/ 8sUݻ)BDCʰyy P AWK1Gb,{JPgO /ţ=Y~wY"DTz'oR̉j} Zt,b,\aW.2A38N ێ.@,rzĩ4+tM]}(R"jIb??@ js=C3 [|&ZPNr)a[savx 𳃭Il}MMuugP^O8\w!bUoUt+\OiL|qm(_jnHV9HNsZ[xvnT+qN{2(I, d1"'< c-lb'e[?lc i0g̗ jܶ[BJNZshfe~5 IRoBO;%C*AdG- qtb7 C1u2w|Q ZUBa/^R_=CWf|ᆮ|%EKoբS FmT5$ZG8N'b )eZ]c2Y1|0^B,[*ҡXi.+95|nFRɕ֐8A$gl)=0DʧJK{TUv>zbap`!\n#uUrɶhLط`dGYVC0 k[ .G~z8{E!ҥpJդBU::ky꿎hYgymHgQ Tyٸ̓ܽ]Dd[@b_&5J0-7Me悄2n oP>qFTtWK l߱_oD3 bRz 5?@h7`bE$,ȥ6n;`Qtđ|v",(ڻ;Tr+0\LJ&HؾU%AoyQKKngXѨ_xnJ)m#Ȣ*F :F#q S<Z6XP&hՑ' li3XۨFv۹ͧwf Zz̬<)?θN Ax<{n4-W>r< Ny q8^r6dNqCeeOv+G)+~%Jg.ynq֜"NiIWe6?g̚beif|"% Wp<!Jg|}Q>|/xA4Fo6lچ{΅NGSwѿyS00L};Hzf-Aӟ!:lpzjn'XYA]cyllvŜB s :ФkСumkr$~p"v'p}\p c]b>D9>52]H}!CݚP&O-q$N0-U&~wP)B.(Į&=vT9a&?8z.3ae_įYfDdue)snS9CXO1=sB !6Бf/&,8|wK[=G "p5mդK!w'#-KI 9o@:_u bs z|f^4Bry@=O6Le؀Fg} U{/fqM|(go܃VR@'aQsB^DAR:.'_3Dz= 1HI7@]^(jJh>|. f'yYF7׵)@-a%c ǨaFC lwX(Dcڒ`وq2,zḟ>tz> ܥ 1])e耳 } =JO`w^ @vk+0$ Wc ֗ܗS< ;Э0gvi6.Te[39-n[M?HiJXށZ9C]-CB#^LxtKXT1fPVCP he!% ɚp嘗Wـe:wX/sMsuVuK wb({ֱm]om?Ǜ6Fک`/9LE6hT25Ra݄&ՌvJŜOH. e`,:~nl%Ls ‰9gv2kH;sb^jWWߞyN$C.mƪs%&ߟ{)P-Oߨ7>0|ު̓qW\$톐MUV 89]i;3c '~/zr dȀ`ۓK\kTuN4Κ:830sn$ќ^(TϐKi(aѽf%(Sbg,We-v='DyyIC~Nx$V ~Vh u{aϷIÚG%#__>j n_9*@k&Iљ~P s&kMLzγ&8?t[5΂{1SkgO%%1:\LF7 ļ- 5X  DĽa2Jw!"Q2d` 5+}!7O)4eTRY\4<%f_y9fe{ˌ0t r/$nEn @ , jhpm6[{.-u视Yw9(X]}S@pKjV> Ò HV>H,T D;Ca`+ /'nƐ\)} rx8C9q`bg8,cP^ۮeK:kNBwE_?{֪@5,$qO7g h4 /3 qηJ I6GY`WOuME8ᔯթK>DD:V,,Qz&Re0]kHqcJFr2(hfjX}I930KH>fv_[iEz2Ƶ^12S[~E\}?Sqk:3-dAWZ]|gBx#M̺187Ч6=,^k"-@r~\ʃQPcZP rqm4;T ݪߨJG:8Шk=Nv|m29Zw}xJsQˍXwHͰ2`=.s =7<6.r@`܎'- pŴ)n 'n83ljGL7LA~9{ebVr@~]sl;J_^i6Vĺ Α¿Lkw|R p dٖuPu<~p ́\k֘>5DA;VDC~,u*t /]#9J&VXu3J,~$9֗ۆ>8NcߒzLךP|s[]$Ñy/!HJW5'QC1UqA[P: %2Y+r]qGׇv;]yL]u@͞rUlEJ`)Ӫ8K4V~ 0$bGF ʶkGUnMHzCs&߫L2 vsR;[},0Ѱ]TKX kygQbpܤ>-fX=}@U[pRy1P9zp8:%Xy a!@8ߘuJ5:}R5]u([&E^#{ikRےS#*lRymn\'H3UѹHL6U WYY/mb>a ?z(R%yxhйH~?$ob&s;j.>lfW\kH]-;٥ZG`C~@N@prG̖sؠ@zG\yzōBe)FUMaҀGtk%1.aA_5&T@iX\1=k|'Z3pœ]|O8$4z)pQ^֚ }֫2*UT3PS:B{$69nur?(\Exl3No# :ifj%W6y G4)YpU_FĀwJLsK1SP(:_.5typFvͪ VT Z7&&GւZ$DJp970c$s-@o@?hs~M.fS` wJtC~@<%0-it-o8R1p *saDu )H[AJP[eR%waX1O*Qۛ+\@?1R{4=!eJ !PT.Vu.]8DwDArMr󜻨Gz΋0컿s2:lgcRqcHyYh2?9k-t.p8Bjb84qh/QzkтuuxKqM蔱ގ/Zd.r9tid1Dj;eeBCF0S9d9+. &49@w< iC}5CC|YbݲU,A !].H2eclz8j>ҍB-̮F7,Bf{֌S Hy C?L 8āa?zQ|v!\i2C}A?Gcn].[Aɬ઄Eg*V(j cS73}H3b6#5b~9>&*fF 2G.w,ۂr5v(x=bEiI16J/xawUb$ t^h[=GYe/$ꯖjq sum5 | g=F,S7;R0M[~x7cSgEHMZΝodT{MbE#2ZN񻙴Z<;p-ms2}$mٳ#Pz rglXZ$GxScd]ϕPI2jSALldk G+Ǡ ڙKgu9 u ˜^G" TqW'ەLe߻\*pc? ꊙ3/9T7GvvΞO1#s9NLj|mRכxƈpfS$/)Y4>j9}_gX?\HA-.u*q[e3Uǻkq'x,jK4_WiuLyCdoZK+E]t )i~?< '19g0R{JnFa͆ P鼍JGhWKCX_QiYo`5r4UpAi:%"3AdHD%XܑIKz'X>GbK$J]Ӆn`k w J8z5|Wq 匊>Vvg\fMԑ ZGYxܪBf^ȪVPEUhdBy ´oMb--#!H3'pxL\6OT0TVxtKyL-ٻsx4 ^ NMް| U}R+o.n=(dQj z&dəetMW4/5ʄl8 Ggb1S I_P/.+Q8?`u,{nȯC7,v[,(jS騯c5Dߋ|'Eh1>r+EkJho *40bywi>߱7C.1P)l]&Sɉm)3+ \ՅoewbUz{^/K0::s\.ښM 6\_W~&0y:M;x(#,d+vԫɳ'_zߕ`&ʃ3:+'PHWeiAVxvBPTr WRβ"^rU0/Ѓc.Ī\V/g+#<)oSLJDĢ+\Ǣs. BR1 M}Tw=͵@1?YDJ;V h|VIs w,][ 2FnKi<3̝sAsDa=I/br-=;T cm{9*,Iثn jff>c }E5 ̅B"\ؐĈER[A2@(^r[Q߭[Pb3Rx0y1| /qKҡ.?S%劅h2x$X!XKVgv0Vq:tf|"l-PoW5ZZU]9^ 0ZSjOT=L|-^7Ywq =Ns%JWح}w=g NNc(.2xQȖgUmRҴ֍Otȵt2+a3/dܹzvWU1c`̕s#胍ĵZ_Nb*} i±JJ buh`f[& wv<^\^O8vFylOE )+ E`uE=EAm+T$ztAgZ!4/d]h&?[Iȫ HjT V#Pim4ͪ)717qI" 4P0(W4_ʱE U+HMQ v_ܘǠk" b@~A)wUS% ր'(Z]{M7F=D|ֿ_&h1|@ކ {d]+6+=ZۭvM;E\Ag(g־! .mR Lsk{m'4t/bdibϥ"vXU>gN\`t˦3yFZ%LYMaD&3#n!2Iמn&Ҍe*_l6. ‹a7pZb #t:~a3nL>um}(.c%#@IE{i%}C']v]XqÂT~o7_ZwxHzxZm_ޯDoUj́7$.\ C_Ul8NH0V|VQEQNM0;MN/:H@8N>gڣ"A3Wx/ͻ#,<f҆u6ߓ7 s7 º D6٤Oh_}}h֞ofn.$QE@~ax]M3Re׎i:!롧u6u@csSb8M2[5NvBeeh-ty vwmID/~|O\T3sIVfzAÉE6  ^YY$ F>$dށ6\!O(qPv$r| ť8K'h)Py>$8o^~ӓݵ]y_3+ps:[YRuD"^oጆ ,#(I0AݫbESL1sN#377J_&qWv5QD7fqbGGԤxq7K'}T"l.^'ަxEzN!VK#Ş 㷲,E[K Ծb爨ߚ6J+n"1" ;Z_>Gy+hr?ASMC6\Z (xK{]GV;IfNhdjv^҆r| ^,B'^vSP˸)xynpM[ zo᥷(j0J3,@^sJH-K ܲTϤ~b)?sA]`B+W_1!WD6vavބ9 uo:odR}-5a2*6V%0†8>\`]pu!epDq[#27m|NZ淩Ԕ9M]KUM,\fP¡w`ObB_>KؖV~I+ ك"wm)7'j7P&C,\Q˸A/Ѣ%2:6y(lPHǩp&=!CMO-;D0I\ꭦAsGu*P0 Gsc.ڗ1$Ao |Ak'"f".uƺ@ In57~ڱU neWBr咉)a`Ia\ꕸòRm+lFX%;=sIV u A|'Ӡv1+492?I&H͒OY?4_iT'mz\Lw7=nUx\0qPYO뛞GtN( ;~z:Ws2Ggۆk}VY3j.#i5<@!B3џk>΢q)[6I8`uX֑GxGJUNN8]o e ST7=Fɔy0\3xVj>"JFЏ緱NhQZgç#&-YOqU@#L>rYEPA.@WofdZjyI`6@gl]aܒm7v Eul#Rltu|C|o,#Z  rEXٶi# IDEE9Az=02 뉭fnh&bf{QR>x%swH[jf~6{HBqLE2" 8F'lb"4eVꨍjq:hhڿMv)*l\N2(TWk <2*u+rZu7"~ f0;%i9W;{* o~ O wi1*ؘo\œZx[[|~5b=A- sS$dP5$XASNڣ?\C%6#'+Cz@=\Fǜ_Pgj 3H@> ) W8|D%_\G G.rGQ]V7|`!;6'XY mUJt܇@Ӹ X yleiP05\W&kSϏ]_?pceׯz:GDvP0 SɍؑEPk* q_6Q ^LRy^͸rLt6H>DdKԬ$/LAM$譵JܸXf2,{Π6=i:5aoOsY츒Qӡ3딱k(3V/17c:@euRYZ 3t wFn^_s^>D^ ܔ~OMSWŹf{{sIM0PwvE{]x1BRLD#VJX5MM5%L3SLKRŻy;,x\:A U"e9$y{;ϬO2  6-zMu;!0UMP&Do-`C K9<A8p'&fϚ *ws` NR116uK^A/Z]PM⋱3abxzxhO8D\2n._ EByw)% *HnW[;L$(QY(U&DHXD3ky֊;mI- <'P\)t˹G7ݖ?R'EZ6 cO`\pkma>VR? 0]|LRx3c{bݤ|E[vHڻ?U?SdEj*j'~B uźy ]-%k@X{C^KЕ3Z̴bؕsDHWޒGb麢]q|~i:Aȳb'InدN!&c}? OѬj&5 GT$anfN2`{(px"dT|tJZ`l@iSe) h en3@ +֮ԠHgKEtO$>@J}([ASnt\:_厳o1kiow|tѯ24i5AIciwZ56J9HtJ^]]?I+Nxw&R~>NpehyAe4y6&ez0sb?Ti!rp1V.<^8ѹn` PPedSqٸ$+"V!m9(Yi3 /b?D}cioG=kH'aVaćLN0 ݌FUa0iƿ-Z%,:+\˫z[Fr/e74eԔjSJZ3-L/zT$Rɠ-7  /@RD (v|Ixhi.ɴJXҥxlWtϺ;MLn@fXHԤ_sQ?wk,%XU*i C:9SlkⱿ 'JU.’=\ޜN;mz<@UJd&@?yS~%bq2F;w%|^Yҽ-5$@>GsW}WXNiFdW(sk! t _qLE'6f>H9PsBhIr3{ο9d:ovTDoT ֍ȼV.9Ⓛ&T1 ZwDNJsrg;k4(2&йuhpY\$F0!{NY@L rдSȜe/ԕ0?]^/YO\ O+Yw_]`K?Z~;-ktq1@v͠f0r[ ֠o΂dgtgUyR4\\ ^,Ua{6*$wqY"6`o +fNBZhT9a^KQ}*Y^6(%Rxs}:ԇ|]mIü M6\:1Ys#WB7uV#NV,1TRi ' UPuc}v At< J<}uޔ4NW9ϔЫWQU@"ozgͤGKgЫPK{%)~3pmߏ6Ĉؚc>zRBrlZRbD6tj|AM=ÓڊP WS0|OlEZŠLFd12"p_&wSF'\WJoQr-昘qr'18ђMSv#6 7SToY$Sﵲ1cE4 ܶ;NɏRLgټHb/D-wWׁb<aB@,; @6=;WtܻV)B5|S᳈7 7r[0GZw WҳVPR2MDgOGb g_P[cH뙸$L))7,NC=E/uX_} *B {:ÿ9yt K" -7K0/ r6/a}eBUغ-.gm&FL[>QqR}2O: #`t_w<#] ?o A#:̿{tu-8'#/ۉcAݾc*dAZ;tNn)D ~6QˮlflkoX|8si {6CYŸ2q+JN[2xry$=;D.HlH+:Cv}wi*Ìe&KU6AhE8̄b;κxVBLɍjCr( ,\u xuy"A)"FhfC`C~%l߈2 B²C{yRØE,e]█ʙX&S%}'V'–Vn T=nc>^XƕiA9RP|I"z<3=ymz 7Q2R XuDD~'y,,\A6~ 0So{@#$\!>\-N7נ_H_CM6w͠n_`TbIJB؋$k/`-qaO*՝ j11:{qI:!֕ lI*Ac `aW ";6UxJԢ!myz8m/pAZgBZTc%sӉ) kJK|.]]jVGs'Aq+~V2ajNV>Pfw@soJ~ x7MB>Q>R|p_wޟ0r.sШ;y峣:zxΑa]`:8PSYҗR 3޽zi#3hlUɖXF@͊yYYQS 0Ҽ *8-*h"l(m{!cm߱ ŗ w[13)TQGU%jpOׯ*2.=PEN?D z.&FZd?!B6we<)O$JٌmQWțVU.nҳ(bG`' _m<4#v'>r]BBa;[T"i#gdRGF%QiXf/pHmHiAdĢfhu_x5K@SǢIO0Z>^Wz?qO]q!Xc_BBN 25e6erךp9[Sst4PS}PUr[gL]! ㆊt8Y-e 1p-DxT6xf,Q#? 03]#l`cP:CWf\jGlDm;#ޑ;K"BR҂9\,-_gd.荍\yхNpVt 俙/ۗ"|!;ʜX I>C\nշaԒ&D=S*PGMDmYq{{$peM0;ѰN.k@ ęrVmg[v4M/"{ s"._MBVAJ |da9 5JM}d1^iB89j4YYEgsJPX^R=cnчi UUPgVhz:p\h$pl`QqrCU)>֏I^3#҆uL!N8 UZ'*m1^NfUXMʼn@/G9*~1'E일j-% XP }KI`UhvN )cv =&u .,$ĄV %>8^I7^"̧׾,?zFuF^,VKi/G[3W~V ITiWFjc5p/CC $|!IV5 NPܘZ]ưsJOvLcUnwKj˴E/#:ǎ/қXjBAM+.VVFԛ5!r$ 2Y6[Tlc|afOSS^7]MQrqb8ImӃȚGt`2;6cF(1#΂6ކ*ֹvMii;iQh󈌖KBɸ %\];؋LQ#C9-wO 6R~K[?X6{8!GnoA|{ 7UËzܰUnY {s/><.-!}w̽0h!-/ȐazZ{U `$֧ASuDN$]K1Ҧ(ល$fRkbaȇcQ \*KiSę.νAa}:L^D^X#J;/P D;at_?bYJvI{|)z,w2ڳbX'L+%&jBj2;f ;As"O(jYK C0Yo%>Ԁ~kpxgl[E?M߄}bUm5phi.OIe:nԄ[Ã'kk`bJ9s=2q{/{+Ҷ͐$Qw6lwQ"rJxYˤ 8!/ lnйI4d ׷Fpfb][sOW2 >]uָT1I*1r3"Pz6>KSKYF1ijU*2bEU(]dfd~bIh{:]:񓳝ydEk^v^NRh¶Sf{=/+T*_ՅϋIC/N'ǿ:gI_?WJɊ9җTbGjoYq#sշenHw{`20/GAp-SƟ*"=1ip<b n*&Hg @? S *0TNKgc{f|lQr\YgdxdVZؓx7s#uk0T{\eݞIHxq|Ȁ~9h4{t0-VϿMhUc!Fz9zhEB ">8bgF7n\͞->l\0+.$bxꪴ |j }DWq'?a0;"j ZI-!Qpl9{u=RG77F'T*’.(2yނc%!5& -C7{|*V"Rʖvhp- @fYՊ Xm7SDS{ZU#Rw0lQ0g:qĺO0r'0]NC4Rnȝ!PA"0R@>?Q XQ_ۓ3>: 0S7qEs>2!UOB[EsOpwQ*ܽ?|9e!6xKB$n*kK8.uؑ‹BL6{9Tu<4 w4>Z_"'=|ÄQ; `6x6'約Ɯ׏A4É=Ū/5H'X$ P!&G<_N T7X6|S! 5PXRCZsJ:7+?>f-:6EGۑ&BQn#O3Ojw|3>zw G a!x83 qyʪXKÏA$XjfMU}w$b1%WaA"Q ;3C<ܴ̣~f;Mh!n)5-c݈;ު9JTRrOpDؓLPYFQ^k_[iI05_BIprW'0:[2 < \7:IJpq)]nۃCw\?;4emyWݜOCUxf8(FXcf Ngk3{9jyFóJK[9xE"QU5(*:klpOTyҰ># n$._~3}=For,N]ӿHY :&xdt=f OF0zȅfZР{ܠ2I5%^jh]b>)s@ :LESr9),V\寝Pt~)܎Mc)骽,fgL&p)ҹއ k/Zt49"Ea?x\mُQ;~zGov YLĀUCUs*="^eAD<fJ6nˤ!l]Cր&8A+]$ A%뎍~.Fоup37EVI1cmR}QKӯ2}6ݴw{ FRuNj Y;2f ^(]`KY^0@U* /mz}(K|u$r^CHPa h o :vJS/qddQD@ܦuwͪȵ0Uy#ߋdUu\ Lhbyٽ* $f[68gZ~?5ӻDlt[oG2n"ENZmĐhJyx ӍW y6T C5e#e4 *Fl(YЃ+9ts8$U*ʘ!֕d؛31؅N%8G/T >Mm^9^ )D~p6 IBu.jajn˸m765b0rQ$yՁ=/.( as{@F(G$r[Ad*x @/CAĿ*gJ 'v,~l2$G|u4; y3EL͜,WfW3NAC*:!2VeP?DAbsb?t`kUh &^(fgY`. &~XL]tj uc*(6Y_4,6O+zmr ޒMbv $<<@ϵ!ȟm8ā4g!r͖֗X|a3;]mwW+GOT>GojԆjhn=X 0taf"G,s.t)vJFUwAS_I[wYI8J16ᨿYU7=ܝ'D c^ zq2%g9d{ kqy ě-MJT@ [o{6`B(6)g ?!`*hPj47)D>bzEs2B;GPȳgMdgVYYä7f!ǭ"n@gTk;#CT8Ux+F?9JSk(he&v7}=b.^7=2B}`z:Z2{ V * knJ,-q,h *NG( yX`L : bP.GI.*y ψU- ՞C*lZ#\vMDA+2PwT?_C%9`(,UtQ4"b+ҢկkذW& 3kB k::e6^ J!EJ;"1>y?hNj]a/L4N xEFxx٫L/#x>C+\#lJ; l"|;`VeȪ}&i Vئ)IK-׼/Sg Dƭ}y5H$GcJvD#(ƭJbneM6\\pʠ3Ff"cK3.Xqi kaAJ8+ _8>3 ̱BdUCooVH# zh/IyK$ҍm^z%?+j+c$kK`WD Y#[G5΂'ܴ%;UZ Je3XH _ֆ%CI?H_L:b)aL)m/DlNN@Ʊe-L ^K-RQ|$v.X;|zc,!Ykɻ".)Et܋Dhwvi`r*!lcty4^~D2V $0UJR7S>VG퀥49r,%w]Mc~n\(գÊ2Q"quh>_NEs@ L.Qo@J~&d#LAhSxhq,dk_yך_ )\tXPG{&iP#򇡎94;)ř{wn #DOwSuHZ`NLX_1=4gA{;".#BneIOWk)6x͙Ѣo_l_PQO0]t ; z9Uw~"4Q 'jLr0Qu\d] N;OoT]Xb)4RO#ކW=w=tiU֨*~ik{!։{}^`4Yh?6MFeˊV9rf Xc3 $܉1Pso` @x7>tL-h21?WHH'%8 6t}V'2pŦf6FfOD"evo68Z/I>D_)rFSDV] m_:Q9zBvgaŠ\V d(%v"f0n7L y#vūEFs%Tx & ƞoheڍ`&071 NNMKF>0kH얈A|k A)DpP,5]AA7 [׌piC♯OQJr晫j$^^bT'm%}Z/ QAryp!MKv@ Hdѡa];2!KiXs y .>s.m ?.i/X-c5Xϙ z);]^ wF խ#]my+دTL,h9DF|@>v*P>d'j2ox^D&;az鬣y-ūJ́N5˄n:F%,༹K[#39'Twn:LJEב5)Z\V]RϠbх}bH_?16Su[TY,vU6Fk5o*䩯-C7v=wJ#9dT(O!U*>IkojJSOe:UT3t'js5,F]Bv@_>#,r}!1{c/~/xȟdE?N:,pdiYp]W|q`f;l?xBIs_9~ǧyB|ZW| ޺w`'j5%z@?f53Tz*?aR2Tk x53N usw5)b02?,@_vEjZ>qx|_-f(oC>TT\S]d_y4{Ho}>/_!,nzJvvH[eT^ǫNQ @ M<jJhzLqԣE#gxHZGP1J? ZӔ?\PI5˪UÂ;TE6HֽMfQގ\Hl3$U?cв,伆*?qs~ QYoU&Wm zq,F_XeXuN0˿,gbPԓAFtVY!"L paAnڄ` !tV;#oPw,ZVբ\i}UxZA&P*CW5r7Hy8HuGo/ut.vя"# ^mWr#)CA Q7|Ƕ95jh+9o*d/9)CA;B3E9`pwʒ0*{lz:nrphM+?zb2|b0G҇B"P7 ؘNmt3Dj<M 跐J}ٱġ5wUp~y\G۞ڡB@փY.67:kVPZr}[`;Jw2{8_M@8|RQAPȻ]z=)G|gPV|"v8mZC"yݤ`$釱^@K1'Zʠ$)|6JAlm탆 Kr,ñSkm xTtKn34r5bǁ <[*`|Dz?<]h$뻶.R3x.U)o0;mX7ɃXjd6ѭUr6 zot؝o,2HA+8tnՐ '1nBrU)-87h-\;Fn<Y s.$Q6e7`6v.^:#PDwB"?+l϶opV_}6N83$vz &=WձP`*\}zi @/uz@+.QY?E-|۷ 53xu`l3 C_n5GDpL^)E㽸yWM~ZO__W!kj.x܁\}u$ocژ#1d*5@\ 2-H_qxXtpk**A|uڇL$=HռYE//l)ۻK 8%Fv9 Agm Sʟ f鍜 U=EHౚesdrɺ_slWҨ*։^axnoE2PN.q(A 2g:$7錿E1"-mho ,38'|'!uJRj^PfĴ1^VE Vuܓ.6/=#~GF`&f&V|c=|bR 7);wk2k#A4I[4^GX!AnD(؛nQ)j(~dJڭGR5~֒"j4`>kh$iPR؜fZUEk15B0W2CYp,$ a)x`TZf`\Q dkM S{t$v;v[-G,.)&cF |(9\H4_ѠDҠHW eHoacc]LT0d`=ӯr^.ZS & mR ͨ W\kkч@6/KF{=.E[VҙG=b8 I!ً'eH74ؖE=5dCyðRWN_qj3cWʉ_#WX~̑1}Q%ՍNr! :B_ʦ;QJg\eX.wCnctQ=9)!a3狞wgrmӻ}O~x |\oj3 J3?a(D HGq&.+P:e[+{N!\6ӿ+ǪP ZDidK)8_{b7E4pkW جM@ Ei]ù݄+H: yi浝^;>9v0 i"钨4Iuu"U8A1.h\1}J 8N;Kz`X?SH_0;Nݎ;oY"| ѕ +mrKP'0ɨY Ym*m(4T+l{޷p $2÷% B fAۣ1awdEя*[^!(^D;6"cF\f#<ۖڧ4P[TXXL/qpӅ㪚sT< gvkK6u+XoSd0 '<ĒNJ1& ap7ϓH. /?dG7e~('VӍ\Ftz )}/}+1oGTIߞ e̞:)UĈ`43& zy3I~xC :Hd6rpfNs8h͝ݐS @ ,'bZ$ fcCVJν08,c9E=((VeWjp}B>T*fT湁yO`;:v,шFwW]\*NSSL\0g9G>!\'t"z$bx"lmBY9t?緓IK/^Ϥ? Hd',/NP <'hX+] T_,bͱMuW ' VQ@ f麲 ۛae2GkY M kG~Wqw Zk?^>)VBNѫI YD}ʑGr7%rbVl 0s+ps+!EYbmùZŏ[y7^r݉u0+xSA>$}X1-#Pgj/_GUwJL8' F@em}CW/ΌDE0ua@ 0,砋uGB5vé*#ѳ1bnО S,YqOa҅#B$c$n^Ͻf8Q-1G*9"|0,uj=c7t?UQy׺E4v<5lBw%DcYi%@[4l(0 9dxp{P} +V->F104¶cS7 N,^'&/kY]%B'2i5> ^fx' Y-{8Z@il"K_)#a C`?]hsb`Tq|f\۟c;74GGTV\FBe؈S(ҡ ^i&Ѝ ?0"`dPd@Șx&q@BtN)vR=P[ɪ$#*<77=r<3lQ uPd]nEgWmijӶVu_<={$b }qb,)"\rDm!VKR`/=enR,~X'-R e𝜕n~[T%XVVm9Bhg[B9у^8c@[4}~G+]W. ?K7|6&1ਚD_ `7M5 ao&\Q6.ac^7}pe6@-"uDܑOY v!(" oUMiُC~_;mZr?U7zlu% {!'~RtӘI~zX S|X ,x绹R鷪{#-0?1Z2Uy\"^BN햞.f^nޓܤ{ZB=೘ٍ,"sk¼ -;R7 ŰpA!0=}Z=nK-t/@zT/p.wF_|w9]}a6o90ܯAu8QeLbG#7» ,sv!߉1eaN0ZS0EoEF;E\CԽz"TY9GWǧYA=xqd* x/@5W34&3\"Ʌl_RaXrc#"u>h@BhT)6J(&R>XTMF<*݊B{G9l3Nٹ;ʰӱO}R$9Yh*+xSoNY ˨v&BdmL\eCU~ .0qe|f&m!#, 046Q7J "T1! k>FewEA1 ޫl4 fkXiuٯ|ojmwonS,RŁu1ig_Q߼,޴bR=HxY1?X$VFHH[W\_gj$}S!ɨQ/n~|3x`^g>6tog=gr ^)`Ї% 5`A:<0v~-Az叼uB_ )%$b+4 Gp 4"vetPv5e \i"|=Ȅٜkˊ(Oȉ^|6VtW,w5,T2S\$pdiw:7X5n2I;lMeMQaLpNrcA֌`qm?w!3M`.qVh5IyakR1=ž:+zenJbgU)n̠FX#&""~n fį説~)냂T8>'z4촱qm`u ߈wY^ >CG@NM~gIU*2nFQ_JTBC;X֟ڰU"j1wCе7lR "Xa^_Ae v?"G2 iG "_$T^&{cJWFu5,8RP(~S1{)0)aU5d "<1lpWqoy%\K7}(y$A)cG٤:"s$Iއ/&ǚ (aBTI32N-})@QUrcJƳ/q5,obt3wn93iV?P®#H0W6Nف|IWڗ!Ԑb^o[~仲Ci3; Szrݳ3ӆdѬj?>quzPD!e$+&>(G/ļZlۓ>}6)ՎȝtZi\T\MliT#; tjԔkʼF4Qa~>yzsTNK)z0jZЍ'2XfUyPgvGG;9G[u0v^bFE&^{iw7`(\q)24"5/8#">'}sQ}CC BWxzwX4Aƕ|[a .W.D붰pŴ-b(?[^/ [*aZJ?IуW8d ȣfؗn&=5VYdvBB:RxtGD>73h*iydTͧl}eof*,9FQEULM\/K@SEv(ۊ6n#yM ݇D0}˒wO& Ѭ޴Y]6Bg9,)o?WsM[e='-?f7@]c&CʅqN5tW y]m(#Vs㮇T[#'ÕtT~tE2F/ p[t,հtVwNW)c+pyߩj#uߗ * t lFX :E soGB!l:5bGs$g"%AG FA>6\Yp6ߠYl庥k, )& u؛R+З?ԘPnHy eU18{PiEO ?"<d@kgU *9GXWs8jm4tK"s6|]/)3K,T;\Ձy*l?0ؼsdc>f&kIZe_#ZK3 |92+$,I*Z5qjeV) 1+yMņ7đ3am^3,,pmMkdq,FFƓv#50+ L{5ʛخx{ 3`&22RzF5HD)o$J%)t!OA`YPF˒SmC~eKJ^"Cexa͆_ܻF}<'=:T06Vj7?ᘣf:jR t2Hj~Uh B'bhAƽimt."*Xtȸ'P!J-q&2\⏛pcGf~@Hz]ϏԹ ~y:.Nt:#0 qydn2СAD_QZl4,ӫMgm|l9<^*6&fSF%,I0 NX d ^354*e}1=a*̣hI K{itNu #E^UFbΚ 3}6HI1KN\(} -pB _(mu}bփ0+B&-= VԞa Ԯ[S59E{>xBX(On%ionA},S㗷>߆=6#T&!kf1JiEK 0дS6888U]01nenԱ: Ga#ՅָQy[?=H,6<@kM}ҟӳњ4{􍈩4k%)I3~*I N ,rv{,6B%Hj=>WPIyЋ%WuS۩ě)[h7o<0ZޑTӄݱ w7d 44ŬzKgCͫqm}` C+EcB,Z.Wpqjqm7ʙQ6܀;KA #,렳[a E⸊ZEd #ͫ ^2Oល҅WmMN|C-߈yB#W``kNC]6g:mS>sAamMrsp%4O/maq"vt_gpϱvn)ރ}tMěERRv~i`'dN#RZդtqwpKrު-z<ԙC'o&Yŀb E1bPlDi){q^W l\}bWSk^ P— {?ErmU\z & :hM¯ʾ>28FDWuaL ͽrR/ 6>G|ي~6J_,I1~seLtgz,z]\f:b`YG qu#4kIJUЙw. HvGRN>?yߨ κDur1例Z. l/#lZ E$NXvC.]m)o&靘,'xQ~A[I+h> ]ͯ Qwٽ\Qbvq`Xa,[ym3ϊ_U=gX#FT) - 0pKbrx`%#%1Q+FyXoE (6s6n d{_!롥"G ; MiEXWc8u4p}"qׯA+̰D"ܠNJ3K/5C.~8)nA\(]t`7BWuūd3Ydb*{t^EOJ $MXtDg)H͓0=! i6RPy!1~`דF+}ߑ<).U {4y*gxa?9?2Es~ C -`b4xE+vrb ,/'~Sx%|f~,+m"uɍV;}YgM1`Uql] !~Xs=ьnX/iwԱl j`+ppM;k,mѐ cĺQ\^=+!4_P`|߀kɢ"Dxj[&VK[Kg^4(l Nr\U(*)>}\S\Gj_@""V"U  bj>kPrt htA&{=t ]࣓Va=T/7VUʢwo'y0>p sXâs@[DZ] FG_|GջfAT箾%S@u'MxN*V&mph'Øtⵤ@hƐ,NGCC d]BhH|C 8[QJrrҤ (DuOWD$ ^?S={xdq֠k(9qMQ$8U}ϠWnLϴ#QK*iCrXgUˮMg΃7DqHj㤑)ǵxf$ٻ 3lbOpFe|2%\6#ho4A#ܮ`. E"?J>E[khHn#-,P"8({5awBJ~J]0-hD]cʸUy%sS8$*IEz]ҨLw^_hw搝NlW5 -.ye7[آ~doMʪ\>3DP.Ro+ IKM^;kk#1΢:\RQI^ gv-j8i>~p L?[[Xq z *:!\u$ Ê՗O #v8YY/,I]wkjŞgof4`:>u`"\᭚ӂdVBdS)V` eC47]۞]5c?xdcEVBB. v$ _㭩ALfK Z4-&j!#~M쟒N?iQM\M5Դ㬆4e}ckcvtQ~TXq|#DKTb+Dht# }TC3M H&)ynkGC' qHr.-4Su._6̺2qehِ +TOq`6u 1O\: .N `bN@*+,6=>kEm"Ri EVZ=*^< SDR;} r{ +9n-[M%"JfPVb~ўl\YR5)g: W;^B ^4ė1ɉڴA=Twq;yee&8i8T݃H|mtA)?I޾0y 1_ Q9զHQIy0?xPƥꘌ,X, 6[L4Xob^<`[]!k7PCU:r#޵߶{. pL7e $wA]So{QZ` .6X~Q3uڊ]SF@IB{HVV{Ru8e\v? rbϾ\S軪 L #>K=OX3T.w{, o%f#x*jpBRjzQ x)ŋ~Z$lJ˗Ru/CE3#]LIBh1:$T{9Xy6' Vgwrm,q$~n;#g*q$`a2AT+ vsD=R^BHpS,bV t3EJ IthUsy3W$p-L͕30a(q _S[;i}Uk+AJM,Z7u W"ƈ3"r5N}#k:mm޴YK2/Z{HjRχL+Wୱv ]ݻs#q^Pxff|Q[cl!"rGEZ%+/Gvrj9>}{MI'vv٠t;!w?-hHdlZrr)>d7u|78"` ϗ]ؚƝwPWGMP1ݳKJpXtPчR{=B̊\1 yŮE 05i-`ǓR@N<}I'ly8iBh~@5fd%3٭ "G@ (h]S\;7FHMIPS[ӂ̯E*]qЫ%x,'\|T<kfeqeK"# zoMҞϰag ءҙD."p``X/IĀȫGG$֩J9i$~^gؽ#d&Wu-/?VÝ27fH !U^tnzPU!p<MSh>65uZ7ӷA ?Ҝ6cU2&ps Ȱ,kU%O%ĕd2O{:]dT3$kVVםf 8]3QfR7YJB.){XsšV߀)o՗YbEg#5suZܦ> "am1 /aV1vcN3iy-_ƒVpRȼ.+.ZKLW愳% xj1Jk$+w@e_9 6tGbbJym([p,ev?1 b߳+BAAdMز~'ԚK\EY\E&Ͼ q !՜ZB͋Эb/]Ԑq2Θ]n >a}Z+rqUz:L \Z3 c ^sQ76P>/v7b|dAVP#+eF9>Xǚސ2rFG%P0Q: v6ʖ4+{asIG&Vt0zOJ"Ugq"k|\ QCϷNyI} t yL _ բ4~ %&fcyB{S5)l>I^lDO4ʇ\>,"`$[Ԁ |F[@XP(ma +-WIE9- OX)R:R8I-P^D1H3v0%I>+Lٓ:9 V@MO :ԙσvc 0W}6>*tMl^<ˬ$ǰl|ӼEqgjWʣqK>6kg4=&5oM9[2?ӑ`l ]Hjq1 Xh T&7L")[JYqPHqXg9uј dwu eF8ÍwdLg2PR32άUX| RnNfrwA|q9\,*l~V9Ӎ T;/jdìfwR%pq׳KLx~p; e3TRii5w0?M^|lPI 1u HpAյ2ƵBOE1~H_b֍&L ya%B0R|hO\(<ސ6^#&vMn,v֛Ĩw]"M G ()dc嫿gTR R2cbE'7ZE׭=z鍆] 8ڍ#ٽ&[+CdҷN3}4&"bo2q<gjU֖&{FG!!˞;']5Fp3qN3M"ґ_7VejhK{ xax@Zޙm4OGl8hJa- yg5Brn+xݷbԽdT[oh! 8eop(%R]oOU ߪˤ,׿JF /ݚhD",hC|Vld-rCR䎣k^ 2d=)Jq8W9E*o\gn+Y1j'<,x^2u{w@虹~jvlVӢL#3p+qS)̢ZS!@uèOE使-!>0pfuT[o)wx̯Qe)_iZjq8~LAJ`[^}ҍ{s_ ޻rI+y6=#/i7B6@aD xݢDqNA Dnrބ7 XDlk.vC̿"2KZ&5R cI`2ڏHk1~¤xL aoA5YE[󸸊H;u%ldnRM%7_±xIi#gq58el;ÇI\:,Th|t5 # bx69;y(g'G @>[nߔgnC^0*ZDvA~w$×{FѭwYP$jI9h2 92e jz?Xpy5a0Oe_sJ\ 'h# #t'Vq>'o:W#o_܋)Uvc Z:!$툧k\&~*>vOs3,-6ϕՕ|KrUzmk߀tNNppp#pϦ ߹>wըdf`=uRrtI+\OxI+I?8^C>Lrhߣ$p]3Y1sı ʩ@`صզJTZ NJ"vZМgy^A6(O{iyv2(LZȶWG0l1K2gEz/=q6߽˙g,m 68&g4&gMM &;†F.R>LF4š7Mo8:[ljұ߳ C a:&kh.6i `FD3z/_B>;|)2$Dώ3X xv\֩IdZQRͣ8~XTfyꮣ j]i.l|mk} 骓IBhm3݁Y':ߣPJ]=fZ{>X]Iƶ8˙т=1Y0'N^>aUQ ?rqx`։9"2gVԗFzӬA="A2&i>ܜڧoL>4ՕwG:eze4X)H~Qj:x3?*{H1tmAXUN(jN)".pTdMMcC5[|9&;03,گ3yr& |deg5|xln1/9F}~l<]{?jBnAi䱳ݟ2 ^ FIUS@5' ̏R9&Ahp~{K _bi+*컈˛𸓦+`|ԋa\%T\G4Yvဎ1s7#%BŧODgk-zq6Ƕ 6"A6w;?jfiaik\¨Sxq9`vݔ` l)9JKA`w`BZtV8+K_U3ڿ0=#]XWcbjX1} riF&};D"š1tuxxWuZ0Ӻ;o1]- Ϊl :@a [346Qn1!SpK!R.ÞA "Z4x+ʃDJsrۉ!x:",p)QTHH[yi]}l>T#y{)<A;jL])cu rqa1=UѳRAJ0an`nY'O)IY>5I!\L*c;BiG"arEvNbXI+uw3|})˹Z n/T<] 9Ks1UB=OsZܪJ"g8\nٗq3 ! 'S*Pŭ}zA?4Ҍ*E`7#I /30"(lrG;5)9HU^ r%9+3~#+9]nbiZ[P{W&d"+cCp+y@$HOMO9>BbWzs]E/椮[\V1/K5vك^+ѣÚZ-Kl&rceO lV9l\QBimxZ;SJpz^~8WIZs}xc*En (HQc@&YW)7?_.bgpT$G>.[2Iz`{;ZM1Qtæfuj]d,YoH6Abn'oa[;6H!]9U"!$_ku.?!}R+1יs+6W_Q2{(=a*vqEHN N7:ʏ҉킦%$9{ovh#AIΦ"s$HAȾMn`^]f\%ȿJgvAC/2zp_Aqm6LCl Y? rCM֩C}ؕ_m&ʢǧakWOy|"UIߐ.m*"[pҶܝ&/Xd_@1WD9Z[I{?wLd16#%he-jVVa>lwH=A˜%`Cq#:ENC1 Qͫb%='X@nl*$H [/@!{Yz@h%,р5L:qBqf0!WEu.Xyio/agN,rr5A$#?aq4ngΒȉ({eQ'żAo9+|N?Ty*r-:R([*ǚlM5hT^tI X  cáڊpWc. aM[$`#`%8)->x#%߼g<0_/h] 'c>aW~dq^c%;zA=Pb>Zŗ v>m~BG6ln;@iMv()%vą &ig* 1f9h0?[4ȣ1=;G7CŊ8ۥ5BUM1h_ޝ9/Gt+P}vk<1?A}^o/pE捏ߴG>Ɲں@|NW5,XVWg( C,&7˚@&g|…GGL[Nj}F__k2T.&T?!xѨ$#Vq@=ip7.w=AG?Y{N E~gdN_v}O1^O)GJ*lXXMΗagc:w,`2ۉ+Rp MCHņx:D*㦿?#qXqX QOYF֗c,f!u;oGށWY#_OSv((uD"DNy\CPJ"I-39gR1 Ĩ!2RlkQ.coLF/j.]݇ѼW9,${ه\ZeښvZi"ŕ6I5GWzmݡfБ"$-}t36(4NX' 4Dv8_0Ine_MwC9oٶW4`+FZVz 6GrG4;SB/e\ d(s8#~9,*7>+lXxQi>0|w:h9Qm@djC¥" ^VQ:qgD> }wdx׫-|;!yyKmO6$S֍u{Bt}p`ȍp\5B͞k =S@w]E%/EZa1/ػ`Zvu^Ҷm*Y>zB`yvik}5sN~rayw6Šh>7~P)n(u7e:i[ՍyJˌ8` ӽwA'v%>ʪ^M8۝p9og0'>yGX8> \Ȱj\1R^$dZK)A>1y ]퇹ķ &u藺uP߷y(F,NDK+@Y!oA B-ΊbT+?fϻ%_vv//~rx =plnn<$O钭<"}(/ G])Ezx^5]c7Gq֝!:2kJ &xšE<#Sq^ LqmnB|40.]ϏNlc3p+8 /SycOqOቂRtxp@J Jl b&fHCo liDFX95^H߿\bh,iX@GlfYI ա n*S?o[:9".v3*.K|lO?,;D6kI5&4?,9U!]VIpL˖+)_@R nN ? :GkZuiX9fuK Đq">y_`Ugl}= .Khx`f\-@-Bk"dxL*ɋÐD-g,!))p OP2mYCemE5.+d0ފU_O[2_B5H< )fq6 gТmUJ۶^={QNeor0N' oNNc|7SK/1|0%QVmOӘ?$w$dj  p6Y3yR4: St\E2;;NV(i-tqQPg<$je%ek(a貸 #֡a^VY.p#6.EPׯ,ierFT S!1i@y Qo,XRk!(\ҵ!!J:Nj6+C`0 i@ yӊ]:J_](Ɠ&~$&Q`vX x1ԊaX^x#5| 78@.T }8'Փ=B8wW^=8=Rfև0y&: Tqd]|]A4QwXF|NM hZ)2)M'nΒi}#9C3wW`Աsq!>J'-k7-,C2[!3UY!m*$yOnfr`"3WT X'x@%I 4 IZFXƍ\ 338)3MmuZ%}Am0\]2͞:viYauR7_)00×Q̜mi Kgo@JуZ2@'74ݟ A}kmsvULU.Dz5 Gt#u?N07X<,MXN|a 1b|6aR-^=a?Mn<Q| 55[7,1`\ mž _k12TxH lZӪbsBhݒo!-a &:$n7_Oپ]7?4|]tu5l=>BX\NR^Kf-?nY&_Oy{쏈EL#^;1Kfo"?=w*}pfva4=vL;#U.BAaӰ%-P rcd܏( rk!J38;XO>F,dAטB.Pn-=ӣ;hADɦ |pV缃?;ߋ 3MyzS3F@\@1{0Z~bPBsX"{]?l85FJz>B=5`"e?t]mlJlygdMaQ .gm_/%gLHFgY3i* hקmBBl{M~&uYTQ;igBjkGGNJ6j* Cmˡɺ^ϷٶnUik Rjr ?, z.ߪ7Evz8O q;?=Q? ̈(/gDWSx VmMϞ| }$= /4 b& T* jP0Q">r#=+|~B|EhTL+OhCv`x;R ( ^h>oHE8%or 7~-(TZȬ|- l 04$`vBӜŕ}pZMr1 Cs?춆"(ImaCg!Q/)@)nC9_:\u>ӭMwM,wDp2:,FufTb'*A' #pA+ܪs4[/ϔYՅuə>w}ݾxa|>,NcA@7YPlsNWI !Zs x#k)+"3fk"s IJMrmOow^{PW  j] SJ *#F P4+`Yit_혝Pi*c{f{8^f?y{J9)8-*R醰݀vg>lS wкפ*UBfq`7ZFEbkr- 0wn]#O.ݛ_ , xVFG!lSs:X'g@ѓzRS 0z?akqqEޱUQ΃_rgbC0!]n:p 25,XZ. 7U|(\#`[Nt^}{%^Z!)*w׍HEߨ@;Ө[ub L72?j FV}CjP4a\hq yIYqLs$:nYHuewlErT䆥SZV$@': ة׫0(9:!$V(͸>pN=Xϻ ۭn+Ŗ܎bUw6$jP _`YpN:]PaֿqKߊew<4Z{%ĩ Pr?5w)"Z:'SV|̤ܣ״45^hXTRrҒ?X"B)M `rbXmcIO % JXShn_"S~ y1#c/u=:tnZnTz5?P2/0ES 7P|4G_m&fs?mlfRr$6p(8HJje11uz,U^D^"r7e=3w*ϯ7qs:[{8Rd֭oץn֯ Ap ΞX)7)z FQ٭)XyV7L(¢ jƥ{ vhF<6ZMCZ%[96]*4F1#Mvw6+ern-~u p3d࿅9$y)-S9h#*7k%Fݲ}"}ŋʘ5t'SEd뵚CY$t6y{4L@/rߥtE2"qXK:>\sr?Kȅqîpņ?Fc FG1%lxy) p{\ kJn^xx:ܰܞ(֭P?XLKW(i+@59,:OS+)45Lyy^*Y.K:OtDt#4y\ݭHO$;'exWջko!j.a-*@/M 1G\幥nr0eEYPǗkaEF!!q]~ľs1DǵpQR) JfKHOŊe.!lrҼmp=D= )W~s} ::#-vE~ eh'Ĥyu<nn?5s9ZO֙8R{y@<ƂèV|/ ة ;JlіUʿB 0gcSQېl^<mDNC.bB$f5-0- %2$%t^>>1Kmɱi6z$% 'ߙ8 䴌lp51|I'j_{8Tp]' TS-\\3Sh AгG85ewA>0Fk > bAQ`=/W3a[_m8+EI gFa\&r hX._f≍DncٝJp\Klސv#߈H)׶&wrs_> X[: G|9;d\خW5 ic Q=Fu!VdyZݮO3ѻN1L#iE /Y߷*no3-t:+l]i4or OQK}":!>BW"'UF%RicҌ}Q9H䨤莬qӗH#0,1dѩpMƏ70!eIZGpk܊Uoys/ՉsQT@9*~D~RYeW ~NXu&M$z>WbmtVJlB1d}38ڀX(|0~4af*EDa"Cv!sbUŧ 8 _H3a~ɮɠt<$kMR-ybWTIv˹=DžSB1RMJn <'7bX:@#99bL S&9 'CL%R~OE ,7ADϠc n<  0Xx[ 4Le;/9"o C㈬ 7q3)W-ocV>{z4qF2\8UzC5#f8R)ۘR/ '- M#| J[i@5qcĒ ,Ù۴d Q_Dz%(.hwSժCRR)]C2]Gvl.=@ZNԪT{´M!^c>&H h/){ vuPjsyv>ff`戴y8=*~˶_1 olw*`g\/P wܪW `BM1Lat2%*.c_ΏPTB {HCEiA}Mu^7gjrF߳_ޗICx]F\ Oջ+N<85KDQvE")\ϴ/*kqZi_QB:3.*&%ۚ%Lԋi|vʂ[Eg}204o֝P)qlV _d^ &Jia;Uq崲J^ L' dL~mEku*`Ӯ4RwfKsaHkRb}VLl~%h!‡;ǗP|{:֒)BUޏaQqP&wT#6pohi0¿#u,,;pK=D9nW+U#Y/a3JJ2g CnTuUO} % doE hF`au6KZIn%cS3 xq D^(RT:F2c*b \vgg2nU39OѨeKDbOb񩒓07l+oĎecNjcA0wdM&MkL`;chg`#%3jeZsF>v[PNp-Yd[_wKP<7ơ_{ݳ5T&P K ;e#QM\_g2)aJH/@2tj Dch2 gXkˢ%7׍9+׳m3"cϐi02UՇfԵ8)U#PR>y-3ۦ0c5\+ɐZK bB@0>?Dž?*fkE7. hJ'=R^)qGT '8-VBN؎ &1iAUZaAg=uW|FCC/_^.Jԥ1wL(aY|oKDbT,2𠗉.Evt߶l%.2"[[>cbrIC˃*kN駵GyE!e@绺oW2fH#|}aW ]ƴ0D~xGƕk* -> //ջ.cͣ'9/u +|!0g/ܻHbMdIiFkq7f2=裠e:H2[3Xқ7.Y<[=@_!127E>0Ɋ<η:Y!~&VZq!S`SXok fc\5[% cO6Z%'\ > B{5EoP:)u~'O omRs=&+ӚaH:*q7rCDW>*t !"aw+OeS=gVg }GG&>/PL0o}[d86d ZV= mj9 =qB+y!v5z#ٶu {*H31]䚍OcUPll8co<Ƃr0۳4XO.v쒚M=i+YƠUhYoBx5۰D,my\dڢvrut3^DMJBtץr-i8y磝bJTұ>Ңa40 M ԽQ/|@lǜ@.v DPʆ6]kcêKVݣ_b;e8~k͞x5; 9^+"`Ư~\?ڪm0>o)TW~&Ur 7M ^fA_:Fu)`ܫ!Y $%vLQ_Ƿ(lF2AQcJ>c8eA95aeP@;C[56󯵏u-TPǾ\\j}_O7yj22ļv!k36OY1.[k ;Ot3SCG27vhp4.5Bw~'d0>E>fCjQΊW*7AM)xr9ǠO>XY)nOȱ点 \j&)02&J.rEu L88a)xSM)| Z(u4 - n,1ąN/BM=! WH *MGۡ&ҊEFAN刌Ij)0;:AơQty\oäB83[Og_ĆҘMmwY6U-OL#11i.7A`4rt-'R|9 wjHA |TxX~ ! 1m2e#?&R5e~cO] i>fKtcl/- tkeUI8hjTd gILY^Ѡ xv S&Hps|ȫ>˶ J;8\=sPp?0~cf7wIO @9WȲn[@(v`NҮ9)ZV;zeI ,`[L!bp%>Њ-@/S.0v=? { 9>خ 8,n/j֮Xi했Ն`+uQΤ1TS: MNXs/\=^#dQ 7} Ew/ovIFCJNkEpϏ}nDN &$$HHH(oGxsx1]O]Y}7h_sC@B.LWI-E(GAODNN&]z?,.x {v-z8uSx>BskicWb}%Sr=5SHӑ-԰GXc&Š xFNS"/lO1@2On\W,;vG 533U} vӟ@k zAZuO9uƿШRcF8]2OӀ{: D=BGy?vT q2+ KӼak13L. 4奕73E/Z-7i˦Ħ،hS shd(*Lz{`+bum ]%07􂂄`Y {TWzj?0<ӷ?|e[  mȹV3aMʏ,2b"j4n3pR:"|[o[$N3wF!$XZ faLXxdNmVz"TY A|6c [iIETϺw>E6erq.Ÿpʫ둀> 7Cr&F1͎ʫ5&umFMUp$gB䌴Z\mZLOR>MZ3/p2h3",?kU%c7x~&as#5'\tDeYÝBu{a1G$Т\Z7a8o?ߖo*z{Hh{xrcY(֧|\G_¬T3[?!"kGM G/scUhI} ;Cũ8<0)Uw :䧞BJʦb!6_k1e>Yn^ӳ`AM M.ǘ~$N**aW>-Q6Y._l7%#ʇo/(_q`se >{yXv|vlmǡd{#H59 J!<%΋_L4?Fmr( PzhF:>9`4WG&"}r*CH2KI1hR$. e2\_GaS/!7ƕNV|NYO{Ҳ)h~n`H.G,*G=F.b%httOf#OǿnLf Ray[xx` I&;g~e$]̏%`~fSާv4UuFΣgjB.u{ۿ#ꟽ'Y%R5RRggh%٣bso>FZ-&aH?{m+H*H)z޾ 67;L95z\؎;kA?~/;P%.c)ZWH֟-.j#E;{}t@UH)4v=uAQ31 |dȻ>Q`%z*B 1(Ci J;dxЙ2PU|7#'߭!([u?`l$!An u2w`Q;$}ڪPs /?m +0۲>2?+$Yl,!m2 )^|fݠ<, ܕ8g{:]"/%%@pyφiϖjg_V]cZyr f"rc+u҂4zђdyg%Figc}AQp/ҹ=ø 2x.9H" ?jdV2X%UnW?c46pЁ [aup 1q]TEmH]V%/78. hۣq5Z]O?Ww\=:ܟmjز[zvdeQ,6pۺ}۴ȍ?/2,]L15DR`X%ք\fm@*OvYL֧ /SkpKiXNmWJ! .!Nf FyH33B).Rޏ-bH?EGC q?n/XUN.9{9eP=s-m @En!յIz dC@/?'Q\R:?UF޸ PpV'b|4yBR~XWP`|ml)ͬr\4Qu6%EйזF\Zrj~K~AМph^:}sk(D0#wrDmo!4F)Ov[TG0R5'ڳ\{;c1 7*"CiIgтtN4^G 8A@ 񱧄¿:T.PpuJ.aBjc{eP 2k(Fp5-LsȮ @7YND'3ڕ@jjBej rKҵY /@mǁSD W8wXH<`!jS,'Ue;CEKڀ\49",8$OAK5 bɐ%QLjD,L/5ґ1XG$Zb2oMQ${'ci4njL\yiKE"'"iC5{ aSX\)ZB]5A$L K Af]ԄY3"h X~\,ZHi1;x A[4"% %Pt0N-B*َO1;! ᡊsʫS4 E9!{| g;ٿ)N{),JɈ̃>pRut .5~rme(\Kխv&X Rͩݻ#mQ.ώO5we *zƲ}Cʘ$V+ѿ2sFuqY/WJ"z%,5ф&@BO<0yj<3b!Z0[Tݧ K[ُH2%_3/jDlJIN¦uЗ~p nfobV5RępW=03LZDKf9}9^Wk|ŮErz}@hɇ$Yޠci Σx׶XGPp`5pnovQ_%|_ 7mAu!P⥮曫Z~(cν8eS oL_n:RQL9+v s/93؝ow ZcmXVPɥA5nv@Y#gjXyU:SS|E鞏`Bp 1~`MҊ_$%y1=L-5TwFxޙ(Nr~ F3MiiS"=uOG@~s>jC{#R5'd't3bP$/>VH#$iF op)ǫ߶ϰc(&;$ϑWLT t.EMpf\".=x-P|~#y _lv$BYYr%PZhWp1]Q#F>#EѴfx!̀{9Lk;?Mq.q.j<1t(M ܬ:cXQjqJ)V)QuA۴}D̤ޛ $նayŝ`vhK^ ! wyUҨi1-NE@0,94mW[XԀU.ؚ)oΆu3K*'Vah$xicSj]4.;of(x \K2'L|6"%K} xk<~( k"-Yu.xiF;Yc/xh)i\8Y&EnGs78,EEGNU9:M5~i!K3[c5h^K fߧ{9!1w8לNPd.=x'Fi󊉀=mxAkt+ MkqN ֡`Djp2v)!5El"BWOsdqOe%P~#&>WXr=} SùsymxBR=6W?ؽ\ [7/<C$nlp0(Th o"CS u6o~n \Emd@ +lsHvAlOh>Oɏm~(au&q5 }$#P+kpu4U>8TyɗĆܯdANU~rEK/E}rw GNs| Yty솞ݼ: yP7)'mm43Uǔw:|kȲwVؘ'n1Z'k8lz\_2_c?$|/E-9e.>*_r_"}4P\Ńϴ[Fz"z,&Dž+.ƛ ^"ءy` aF+Q5Lw{,,tYP[Y`Vj!8wg_ GsMJ$}ӒIvT"nNЩ9܎Z|b|dM=`)QVlb:%psChZ@۪{^gΕv= ;?I| W >Q`2he$9c]$LD -ԥSKr.N1@+\`zتMۊ(T7fm0dj͢ 1u ?\yWD,7)$ fG@C"[-V򮈻+AKLuDrnj(NDZo'9,*)Ji_=}ݷc#9JL՟ʦ(r~K ##DozvVW)plVMzCgGĩX҅qH4otH" &B6$n OT,k,UE|PWYG_=M"Wl <>J9(oSDQs8hfpg-,@ 9QUwϤFP/xґ,:mjs;t|ZA?t:cPb>3Ur&ά/ mx3na̬u9~yDFT/mŚL;k%hQiG-b>CMArO$ݷ.|'4,zDXHɉtsݬ 7 օ%X$P21}n-PJZBsCzG =]&w/هF66q}Siz77@0t#2?Snsfvֳ 7*}*s2kf,C'lJcwܝvU- GSȍlχ<=_TR,Mq/˵ qC&@\?g!Z).eꊯ8i"=5AmN@Kv,ڿjGDDe+iVgN*˧ԓn ʀ6O uU _6-C~1Zkg'^yDTcqlg;=8Kv+A󩓘D1:# au!ZBSN=#h\=C#@T zP ŽCWI1;;H?ä )sX~,\J55DrG_LlavBRs 0`& $Fhu[ H^1E[ ȧg Uh_jz:ij8gJ~-F;2{U5 b$^fuuhGA 7ȷs_ Mr%yz^L2;˩q  g(4iF @?5} O 2bԬqClXBo/&XHˉ,s=$ʂЈѹq0F*ظ3`IWy*X$p)BMji}w3*revnv$"q0U|rȡPF\Sy=[O;uBۄG" _gvc:%S x#9%o+M\ou~Unt{VHTӹ= FIqD񊊓(Zj !ǴpQ.d?@ҳuF@OP/tF.%}QyB5Nqv6aӀwËVU;>hl&=3;m0So_|!6`NzND.2lAN=BI,9DWl7,¼5lΗϚE[u &Hz>tB H@-PMR yȸ3Ƚ8|oxAvE&r+{U5)Mzep\%_&s=C".wYq4|5>֡qj- =fIQ$Z8Tmvzqߕ@'ctӢZnmem_VrO hT-XJE0|gm\*oHscH& (M*u*#l%r̕%Ϭh EHMc|3cy\h1~ױ_&Hly )pe5ǾDuFv)?~UPc}q+!nK<W!2"C(g6{svߴ4|Wm0m疑׉{[gҧ{T"SKԫځeKxwkb l 9Lǚ|_{ 9x;5{xw өʊG_*:C?]h٠!!4*@~ a`d=GelmC,[Fy 35AOMz;4~X1|Vf1i5kBFRJ9| 鐫TPKt&pF?d@ 0#'@ꝲ~⹐Q mf*+<.qekL)*uCZ;p꟝!k}s|Z@=&gmNUQU߫@uV%7\ArqVTiXS"A \:nULcO'iNjFf$"*Iѱy8z~:I>  "O:Mf /R (V j'yON QBOUӠ/G'XP5O 52(ta:6uH ʂYqők[klR\I"M$.@񺚧2ψ?FmWlL_ +V4#q㼗qۚ/  Nۆ5biI2 )Tb&7<vq%{Sp%0oW<$!\y6-#i+lT*L D}? e]RE27α &Vj%估@(pƴ<2`O;?Տ b%R&LH8z]б冊WcvX\YN48cNFAD+= }W IĥO q}'z;pl#0rR #Zm-Cyh%lm33YT' d:![{AP $Tsa _ce~-" 8:m8*̹67}pÇƞ2T׭LU|T%rךD !&Na5(hey1ϐgXY=hl0ae$"9p0 Q$x=Gq% i5:W5[[R4P7OVm%oaiP\%Vnv&xf 9sۃ}؝ =\_A*H5ѽRxN:5ܐՑm5qwғ-wtcmHJPhΤ|N7<_'CL!5c]˾cﺆm JIfVZM~bu?o/<k6/IKCp"Tmu¡D?22"VvQ/O$7М!fb; wX$$V;sRhwT=wGDs+9^m¡WaE0WjuGhy$qUbqv%߳I%@RI=0SAҾЏ:5Oj9A[sƺ]ͱ8]1%}}V<0R#oR0IΘfᗞ»/ *حDŽznͮOYPӾJ\]L>yQW^jT5 qmM?Juew!:NAD9d}Gz־5B;majd62aWX?R@Yg[7#dwGl|\!XJ4`[*,\/|12A]Q {Bۺk0:ic0{OG:*Z7uBRgdID7 7M~ o(WQJZ!+R:?#9ߏ%=[`)Zp/PޛTкizwH> KS?wEd5)K{:P43gӔvDMC Wڏ \ wdaTQj;\y5JAU2w?A*P^M7$bULmɂj fڣmqm63F˷u9^2}&_D&ȳAŹ&gEy%G9Q`\zQ\~l2zZ u Ym7Ibgs'ɧ䓇'l,)/m';#wJA,gQ)PU[d˕bAQࡤuJ rq1 'M3~ r^N6G_l3NwaS 0f[vo > Hk_BȖ' AkW urC=~-5=C"E;oZGoCW'jt"5tُdTF|M9˼rqrt!aB?o =v$1 sY"[ܱBlZ&绚G }!<1_UM*U0=?[;'FWl0~F")`{H$?cpi*{neCG5}/0RLTI7 "(?ɂx b_}:! ˺ Q(1Bq#hMHƎwuؑ1dKW#@u])|RR] u=KJaCN17oִŸ ^sQV]D?i k&__+/Y3,oi+,惣C|V0^ Ŵmk g徖>8?876YJ";,nTOH/ )4w1Ӝ-eͺ+◷seȷѴ!l)*oF}[4_u,CÆODHˇnZk>+8]N6JZtYCa͆ "ty~a{]^p2ӆDmI#ongfp͒1A彳 LCAsW]5Tinm~bLxM3"&l9ՓPrcRz!+ĽVF(!"O9c6Q0%́1T "DmP [HVU"u>FK\$D͹A:TqdSw˦qW[>7P ?cy6]T=! H a wIOJ!B3̲HR뭝az 藥U$`$؎^sp3xCumq2DXFJ&ɇ_/7Iw ʲ7bqgمa~)W "Emb]ģ39+^N0%[f<{|a(<'A=hdz.Wre3(4g}veGB$qH$kOrSzII$_VL;#??Q|L%O[=[hGbJiPlRaXs'`QJ *0pfKFTeY,3Z+Vʻ61nG CFul9c0P#`L<+<`Kݕ!L,A6Veo̜PsU)zgT;Q&|]&8w8䛭fG\I}I\GA+ݤhZ1S(9 g-̴RFp8fNC=ᴟnXH/اkbX?/ wJTS z 5AvqkRf1r.Ʊ\ þLv}Vή+nNp=)]"\#qa{,$RVj-iLLj7rꤡ HV~lF>5hہh<}^b *7w8Įڎ9i#_rP``\~73@oek #vy>k&>5cVL>v]NT.>ZSgPdm٣yIzlfIoYHRЩOQё@f:j>0O;%xzynncVT± $uÂS֍  AY[nV!$sFHC c.ѓ0lݨH2H4VQNsΦfY6 ~b``f>c>-F* |nItvoHMv1я~ `$'2T'Cƻ轝UGI2:,~:r]?4Q_|3yx.Ci9>8kvv*>K 4_$]ޚztyMQG X!(@Ln/\uyi Fm沼67^*82/p1&+ye2?Nn@Bך`F3|,D(yѭj T;p&'^vh6N+l.5fibIlMYE![kr> K.Y+ķMOP|f?UZWhI..ǚ <˟[Ú pS*i8%%y7?poDFJ8\+p\3q Vw&Pė -h~bXBz}_b(7YYb@Yxaak5%tȑ`˄bV%Sskhvj(۳1u K8̏k҆Ls3DSǵ|h6 %#Ql={zɽ`%A/@ò iK@rj@"rQ3Ņheߖ<.k-76;^B%\ҍ&yD&Uע58s؆8,9I-J eߊ繶L "!ui/.);?5apD7E$U`|}E?НָAb%Eql=RBhys2^=ͿEchipUmC/gdlc" QxUl(BT`=#QYEr E3x^(O$mY>*eе:4l&(\|7QA "t$CZ^,b7Bh]p?/w̕u?m%%}]=iȵ٧CJ;ʾm_<V"U><9ꎋ'dx#˜,LN!\5i2q NqV[ԁCMws 5$n@ 3l0=g޳1v~A60vN\mć>%_O4y3!QIrbt>e*fsuW@͏ꟌlWHsȤ4sr%w_Szޒsڄ{ }P)5L[!xNBg3axQRvڿ?%F5?R.Dq<@*^Ɩ,̬J'A~]JH(>%1,w3_J m/eQP0/.5 ;o7+4(^0u&& *4{{m1ir3bQKfPhe'+p>hlt?ԛ?=6i.6EiM}ǒFr㶛ojra : [E~^U>ukKlh|ae ǘ`z$Qs5$>P!5YGg-J*Ap}N5d^tK |4-5v!%篕U}qlr*a:Q9&G' M劣S|/HQApFB~:Τޭp֍] '9a zbL; 7֜), ('b8Int8dFۖ4ThyQ]>Le - T9+ bZ H|ǹ lUrت`y$Ar<zV9Ll<âs)ˣI=0*p!# IY^kk^a] \)KAX:8YODˀ?/;DlNqqK+wդkb1(->ܢ J'VjK{Iٶ &Y+^ hf "l $M zիڝav8-:.vt3$ 3(l6D(vS7y?Dc &mɪ}^Ȍ(*v1Vm0 Wxp$!cJf2J{>zp?BiK9R~̛*=}szo+movѫ}bI6*/A7fOJ lc<.J%HFZwc)%f%ˏ2a +dx"+x:cJ= yeٽ sѪ?IT<* |ڴJ wYq5GCou}FW]{O7T(k=@XN bEYM2#؜UԙVq# /Da aBK * N=Ohub*inv|F:sDƅת#R8L:NKM>2zĴ4b igͫ1 Sb6ftz=OuReȯ=!fO܁郴'[.QZ:nFgK̿=ѥHOKzdbsYH$䏒r[lqKpxB'92lTGD\iiA"5ȿm~_ׂq \HI/XI~[&zѤ>i;/G%y;h-BykX >jr]) x |;' rp6פ~ܦB0+hgк*y>j+H.+'1As-R9{{IC8 UP,@jCo&X#wT*P$}vE[# zS9tf}>6n*(Q{yf@flX]yJ\~)X!9L$r}ǁv|oI9 VRK'63zsH5:P*Ӎr̟E{3L\G/]uDRAt8q]VYZ0E;_K(kRJ\= [{ZhR5)*HfaymLASK#gwlTu>;IP[&s?z?||9sJb x,n5 "C7mk [nNw晘Yזe |lG+ګK1eлHvmH+#5<НNr$.:<7`dmdr?TjK Q5I3:j:{ౣV_αg) ֜봈 L+" M0M{ݟa`YIysաN*`OQѸ6ꪝnTs:ec`Ǝ); 2yԲB1K\཭pIXo#j#,=Pa]1,}K5/, zTؔL&w+!Я[W ZH&u)[ap&AOoXuyV@tLH/':e[@K_-GQJh5Z*xZ-87lkE4w[[s`t. ^T7KaЅJX ke]!^L<qw[!Ƥ,$$3N}I0nt]e_^r }?̕ Evf,=-B#'MA|YxL*^b]^(w/o' uKFߵ2: jfJ/kSh6]Qݧd/<7Ѯ{aO'IbDv0d`/9*ݽnQmy8tIpA (>d\׶EGL*D&A쌢BF:ҍFTwZ86̹ V~XfyL[M:>EO?,@ĮxEjHz9tzt^Urc34hWsBf«9FU} NX]Cty\L{ć[b\RQ7$̟1B1fpv!!tP]9d$d*dpgQ=6$z8=[VAmg!lHp1?>3uux*tR )XsAۅśɱR"<1S5̾b .RquF(.%z<'(Y!Nj#nY3UG75Y\)OTmK{8` > z0ۧ./߹YVjE@4 $9&q֜1OZitv|WcFC=ymhJW|as=U* 1?[`  d77ndEѳTsDkyv7w1 Mݥ0Dg-_:1\\ ꁪD-bSJKr<ყ+{e+s$-)ƪķ J[Y{NԫyxVarazGd5<b 'b+R7/ZX[/v~YXM6u9orI*2 *@{q*]R5;y*6a1N-w@&AR!\UV:UqD-EXR P+rJO2eA@}vE~7GF)N@- nCJ@?UmH}Q45`wМ܆M5hR i݋YҥۀsA7;["s1Ѳހ00=fhp.px5tjVs7_Ä=+jKE*h |Ehs܇Am13*l׉š܍#x=.?(?&[0zLYMO u|.ՄUJcb_ YOݫfz1ɉ \Sdyi3lĪFmy@@Zgr?@)~$t\P|3z-?Ҭ[Y |DYǹԞ)x kbD!-G(WӁjϚ uxj" HFu욽kP!dq  lf 93OT2^Rbը>˗ 4e&c8=?C:wd ޵-Kbc ˆ?|GTˣ(f8&j-zJ1e;v]cdv?Nyayɞۤ9xς gvÄ 7 Ve~IJ9aMXZl3؉ꫭy[F\&l s0 ftgYnW2*ʛ39!(@x2!<{iˢ$f;:ACJIGSiSԖQ7%keHw)cN̨Ms販m־u` I-@to}5L:"ƒ&JT4-GȀJT0+}e<2΁0&B^|`CmGRQ7-(]uuY_ῄ1\[]D>]@l,ap+]Ch'|[K;ޭLz8M(^b`KE!^g<8L<)UH|[u*.Jֽxpp#BDEڗ$7l>Ӿkw|Eo1˒ g6sF{McW"`z#: ne%tM`D^ k#%.f`ט& N<}ޙq@)3 z-3x>e(ڣ`sǺ't9`ոX\n{WWD4OR[Ѩ52.!ĩ\U4/1u?RJWw3Ѱ `(ɩDY~^WЧb(!9Wp:d($&g'q֓ouA„NeOT`=CL'Vh=|9ʀ9A/kLA5,(UW;]y~V7\,9mwc} EȪ h~Y!l,jOn[RXaT1+~-;J5=<'ژ<= _*EY(y QigM;Fdi׿1E1p6lʝs;Ob7eZ,B:}uN@L T%o,sZ6SvE@0/R1ja8^Z "]V%ZnAX'#b&Id|JyUjb\*23qL{N$z਽Hŗ<`2?w~yċեZ?cE0!XXpp)zDţ=d7h雦k/i zbΥKP-f[w7'6- HkFVyVKAFdg^:d8QJ6h?D`[%a :\p)ҢPfA=|`o\O % \^R|w5HXn߽ǎ<,HH N*C7X*1zۤ{]fuYEk& j"~ LNY3Q< &W`(H)r:*W=e*j' fLt+S#Nx : I'Rע!/&JtjM opBMSra;E.eo䲢 *R#^=[7HT0N'^OF yVBy+eX57B9B(yܾ?Aeƚ$$tV{MH%\(,ճ1{zQR[R&2WgVy\ &m(b-R'l57G HZ:."( R耕wbK1a/ }L fO8@lXA9bpgc aaB:R=2͒ETavMR-L9i @&(} (Y8XI.|4}lX#\ȁ ]D7R*1ޢbTRj$? eZdAaOm/mAO*9dw]C=OMm&pXd.FIdQCռrJsJ`ro&J?<9KXəvnŭI&ԛ[b{5ƭlňpe+ky6v d{7)<)VL ݣNzǹV;."y%u\Sg:`kPIwRc* ]ƓTf]ez%a3Ēn+%~Stl<DےuP Jר1Y B$Awy?EpjET SVO}k=q}CpGQ>* .?_4ታn2zdo!HAn{кAGM:H:~V!2(TkZݦ(Lp"&F2JS)t̂qz6Mq/؉\yh+u.Q!MAjvFJ)/ɥ 8\%^[!܏E@Y@.',fǪ[e[ ZY*c|'A =_oVՑsƮ` uAM ʷJD kh-H/,1,gYЎ(\H]ARP#xT6>$0yik/YM3et)_=B s!MFc~n杼C[rk>`^̸<&t% s: hKId4[ŷ_\pR\ݳl!iS~iDK:iq9>G׫:?&7}.j8c";nspZoVW z >uf<+jNzKngB,5>R;% zģZM!?}cst𪒏m9|g_/3~2л]=rh\%A,َ9AOAh=SkЍ3_FT7OT΢xq!)3V{_O?; ŜrVW[)Sޅrd{#ϼa2, 0<Se[V\n3d~̰Oz=~'O(VIXF;!H60Tm d.5|V)(Ekm'sV$eb jimEF&+drPNv!-ƫ-|aJoVWHx|/!תNoFu"Q.'c S?@"P3l?R4*$'*'dL|w&.<(unҫqm?W]!(W"6k? cZ"A;hR%~uaDPt+:xxDHOK@Ђd޶og:$%4PqBBNV/LpU~ߔ\`Y旜7%-*R/ޠe* frwL+Ķq$=.tf5uxTnZi֗x^FO\uo)|\R$fO J[<%<ÿin& ݏXSt$G.3ވrw$$Sa1 uȲ]b:oMو DooeӲnXn^NOjWEGUˆF0%rv[GMFGY(tmMewBR?d H:]р&$'v#S|z*) Z%6#J̝67Y*n`3?|!}d%^$d.FZ:B9E`X<x6o O|>Qԭ.ۅ]XNy@P_»t_01^#n/8s6"Lj+)53J T/ݳ\|D1<*g2 ma.fmA"q6[G_VF [ זeJ4e>WUV1dXv7 >/+n"8סۤ9lBhѿ\x6zP> ZS,;%'ͣ ^J%@b"ߗ"=O:jz>&pFk|]:;d\ZÙ lV}rcINT-֩bx֦$%2|HI4)C`KT6ģdIAEBuv\6ສv3 P sڳr *w\ȴ*Id 7?&zZW'gagmevD"5{SnE]8</HXЯaDtPRNN-GGZ, [a.|C[c#%Hd[̫ݺF]׈[3|s\P(u/qBenQ뒫E0u\Ws1Oʯ꒘`/̰رN M<)u;Њt<uQ%8%Hm@J\?k\Ez YCDAĊsHʝԂϔDJCaC'_wlN81@~C3VRe}+M:]#Ƒى<ķ^etYNr52kiԑq.ݜX̅L$gˍzR1φ?c#Aк4H4 ر<2Hmq `HE B"7[ȀtoXjn /cn,ҠN@|Ec|ӽTQD;pJѮkE yQ_οc-'&5AL:eJBzܟQ0񚪳ʋ *Ah̿u"%0J/zl&@m*x S Cj/5n{=txu0}?ɸrJDI)W=Hؓ9TViIb+ KC[$:˲0{vmJ?{9fU!W z^qՠ%Q%@9>1U@:P<L$XkjaDnLuKR<+;K3.UysUM"?"ʚ6a BMgKHfR;+9##=)T<0`QƽǕ \%QIf=@걹wH\(+͛ށ5iExdyьZ&! GFx0+!5܄;oB2aA94uUnV#/xoPMΕMYu.֠>R!+X|ٰ$Rװ-±[wUPt$սBO GYwzxgJk`n:+ːdjD|r*:xu*g&,rj4I|⸋]/5fYT&} Oa *z @b7.Ue'fppwiIWڂ9f>P_H}IkVgEQ/P(f檁 qȬtEC 9J|.gd){؏ )/&_ۥm ̶Q8$ZZw[B-Q?3UZ/|!W?8Q[\7K2a_h %^f>Ytn CbaS OѥSvо)p $Q݁wˬGoM $>fi ¦F^kQ/Bsy?g!( < [ m-[36 PsX5f)n۶8|$4H :0xy$zǒ))Os~³TZ޹' 6cFmFC!F%3sKX#/WV z(fumQOq@nX=2~ת*]2^Tm; '!Pզrr\3NysXRt 9re o6 ͆6Ui\Pu$H9GK D;!nP::>r) ήY|U`sI{[MBPiQWp?Mˑ0sr67u[yCn=fώmݹ\XF?(2O/ހS`}0GSy>R߬&Tu ꦣu!2XM!̇Q8[#wm6C"tÿpH/骺sdWU#N3P?њvoڵBKGjF|NzY pC- "ә<^JH**)hz8P+GMT\J:YA_g9ͨ5~ T٥ ؆' o7@%v6 çZ, grW|WtJݔ`渚<(j:pa=mf&S2u2"<-Pv $"&[eEBy0(nQGV?+*%YCmoX4 7=6(եz_ m: 9wDpnthvUC+r@ -g+p6XJ.KTK.ެ󨓻uc4E>7g[Å=k=ܜ:!T6-L嶚N_@%ӐN@v74@]*X+ [w VLH0 NǡHeՁ.m.E ,=%fo :n 8pOնW`[ǡXm A v̰*pjQrUŸĶ\ Vd"AHkG$0p0tNya'Vg:$W)cɇoقXDFGN ~ܼ\s M{"* #@û1Mղ,Xb.#ΨXSfBRcZ]_EҐJʞ } Mi=--).ykNFᦷRpJ{U 鏜KvH9UU KuIi\}hfD~X Y~+/=7q4ڹ׏ s8"b 8MT <A]6§1+{ B* 5>_Y,pxl lnyd-蒠fIG.ۮY_mf^SloBY2Es5OhT~Gkۚ)~Uq)KRݨw03m-[DeY:'ok!Rz%^*ghQy'6y :b d_Ku};[(F9S @ZHʽΘ07({>=7=ԇD5IZЇKT8[XW)f ȌugnyL FQ!Ō@J6̟ܙwĝJ=3Q|^xt\mu'&%G@^LBA5=XY.ŞfUEiv/7I7\b xsf|s"/sלV8}\,aHDЩy{eCEXRHxɂ!yekq/Htw"/`cf3lE(PO~hk8 ~J~FCLJoVf7ٱPY dVX{Ʈ|s9*HSYXΖ6k kvp貽B–s5/Z+PCʋQ` Gћԍǯc]D=^7CQ6Ҭ}{D?-d[͐etv>[ ^grG'N,M~aN6Miq(k}اʃ@mp7ӓ 8=Yg컸{?^+q~BG`f:HbY-FP~0|ROK"U fb4T0j#F럑u/X+cb,z`6{54N/6F6KKoӕn FVS[¤el L񂙛Z͞eTdPL^d=}jb\ב $Nǭo JoV>[?&3@HyʝH4>4#lHz}͊r{ JC=BwP]'`p R#zi✀C}BrɉH-+ETnߚqSd!rJQKyîeG1"UXk_;[,3ꂧ+pFpQi_[@Ns\h\܄qKp? c٥g܀l$v㭖avT6+IztؔPt]uUf)yKCgN|} 2I2{Ok+noMe)Ƚ(GzO,fa.V '>qy5K!DIzkEIo'ƀS.$Y 9ߵJ;+JEa_lu8ɪ &lC;;E}uՋ&xZsP.yCMgI' %bfNUw דe݃‡k/K' Hco\gC^rs'-×(5Q}J.mnjyG)$C( KX`2;txetIXɚ6E).Jw\~'M [dWiN~0#eµOϽxY} zp=u's\P$1V޼R{` ]m# uSWvEC!;=~7 yab(L+9tW.\tL NhvRރ j 7̸]Eij%Ћ9@ȉ\~qſF j&ZcA+U ~l2qTf{ ~ q|<"oˍ#yo5QkF--|WwL“%Ͱ96 ~{ۡ[nImZm5iq-d`Xwag0]%οh۲eەV֡`CHG4 #ϷkuG$[-8zMq?H"qءu 澱Y&#чE=Gf^CtEy^lֱ362{ j*, lHSgP'Bܙgx9I/ +92gԳxj47Wgg,qZzX--+'h dTI(QJ zt^@?o Y1Bm>4,<1b¼bbٟD͜!%(#UcnLޝ,!Ssƾe؈6$%ykzx̀,9i{sxЮn?Iz6/˾}́`A?t8$7;B x.U-#䐰m%RRJ=ll2=OP'7f_ɖRFRD*3W4 ;"oM]*wF(DaYeMf#tbp9@`%; UuY&4S ȳ:[4M(GT~we[ .ş*Th?όVIb$KX't apyZLa>Bve6FTI y:Ap6|"l\<,tﯣQ3 1TAtFOJ j2 PlP4[vK^̜K o4F6"uTO2Pje4=& ʿ`_Y"X$McHJ ?~ ƕPc[oOz\cmh,ڌuKO4o4W*N[F\ %V wA;yGK{ԕ@= ~+Wz,jL~aQъ? .h+sX.AO&d}I Eh}ދM ;&O(n7x2DȹPML;QTgDΛ8 itr Tf87/ BnL엖ْ̰ҵ8|/z٢oT8/ q6eq`IhYƪL =rFJxq\+T Y$bgx?aPVW$g{fb7mnxtFysҁIՑgNi!Adt}aIog#a$6م_jg-͇Nhe L3LGi}H&]?LO1W0|(tIC$6@X PuϦ=\qPuh>Jrx92\Ji@ /)z#)io0+C+d{xFk֋'vF>`E_C>w*1-خ̷C$SSm84~8T`ge{YRHgԏ|w,Tʁn NXxY8LE[dX9,FP oG._=zksI7I X%II3Őt#ό}k xXau㸣mϔ{w 6J1Zɫ|IBk[0eɊw;U+s.3 $7?>_;Sm*v~g'ۺXUz 2?_C OJp6Ox+xʨ lEI Rjws%fc [OwjVJ(h!A`#45Tz9nx6e漆TKqK нd9càCŁ &fPLIǡ+f4%Q(spQ݁ہ_8opوBﳹ1򃀺w]'y@_Gbywv 7%*'܋&sq) ,^3ڞs65ϗw:&PGW`q3,5, YʍE**NS ?PiV!@fh֯AlUjMS[- JX%Kk?oUcLe2Z`c2SGhZEr=*홈oɢ?0D8!8Li2JLWmh0TMPcGrF]"3Hh~kx_ [&9.woK- `c38 _{kEKZbI5#AFWJ"D8:3d+cm$-N \h} &AF'בg> *@jχ@d&B{d#o5." e&Aվ*Ӓh9—JR=rAVh9LѯN<5;o2UF;m۬_1~k NJkmx%xA jq*-O6>gXh9UJ)M JD4B); 1YŇq])ms"Ǒ%9H< Ux΅iy{㲆=C``~1 ˚8M`RM=uh>gRfOȵAǚHƺrûd 6@3PTCn5ʱYvhh +2 ܃sC}#Z@MҡAAۧj$'^ΰ =5BUCM.^/ZECuR ZtX!~a =(L_H3.y"t: !3ߏ{ ;nOB O^6>ع${hq75ɜ iw # \][ƧN}`X R!6!W%y/gV;gۖ[8Je{HbdFpg0cviE sE2@_o%Np ^ʖ@̮i0X,p2> ѫ{y1eLu͜' k]/wFLGH 4F7!qFUH Bz24Q bߘրn>QoGxكz]M(Y\Nɉ8d׮Wlwip ~pٚ8 eH: ! C^}8ݶ[U8=Xiϡ%# *Cцi#hKv[-_XN.O{Xrx-4sPY ϋ0 4!e'}g] YV\n|l*eP!cxX# r>zY# N:#hiX~FY?lQP1uC%7Aa[wwU\&}y+n3r:@, ijk :;5%+P+6it\r$\,@% z^QTpʼI1Mfxo*K}jdว28PDž3yb hu.UOd',xk[j╺~ lnRx(Z4{mQPHI!42 i|kF Xb5J%[)HW4Ť _JHSHCMǯWU[ spD1ת@9Oș7k/Hɘ1^T T$\-Pw{c%H\5A>~n`F0u4Jm"0=ҴjQ<5S]^q2Rt$]zosGW`͏z,*f@Y 2Ky%Gކ&gUԪ ~ @Zjova?Fsl J~#zDD;pMZl]kH)0?ڪpRIv24e/ڕhm$?*[QwxdCAb)),`źu;1A I,̯#@,{ {*-ͳgFohzJD1#rHߺc,tĭ Sl 3[ޛ,!p  FY@B>Ct s4j,>/ho!ԂY&{RFe-\_2k3@u?M@bfF\5Nb,L= 4|m iov;T~L(J~љvgTM19Ҍx7S k:Z'tUTqQ]ئZ0רQ>9%qxKGrE.&[Bc8/R&ym߹E,6nA!]4w*/`RKTlʩ}|J 6n4̻_cTv /IPB _ 8P:E:14qX\6=`VOJY!*۟t6촌fL9(eGM?vH~lh6lbysX@ 1.孎^ Z^̏;ޭ9` [FfOzž(s8~o pd_,[ӫ﷜b'&y-ŒQko.uFa m!vM>נ ooe`3IWZsÑ3D] ٪mrw!C/^gKC+C'yOt|$=a!g2LDEIbW.9qr?i5,i%95{#[_  ;đMpo ' 0!JqĊTvHzO5:.8PUprPerbjFF)-m Æ͋mT~<@+29$"g.;,VލIrkD_/$!Fy"Ҡ\ܝ껣?ލ ڭlD x2qP҉L0-20,cwdl( @~k)}Z#ڗ>ya/ 2Mr]]!͗)Ī.&l̔Yx>I+XzmJ;^H ;{HYl|y~x\ VvF+R>>wDu];8pq ̛qޔgu"4(gqr>"#eAYut{-6; ?'3Le܃/@L8(T^ {P!+~{TNgi̎j@Q FyAFznȟf(ȒX])3ً`I]5ؽ͝†f_ j[Ԯgcڀ5(IB'PTqV.yWņ}/U>rÙGG [N% ;T9X%qqTL{] yk–;Vˈi-tvK#!pr##h?jc}~k5(^Ӷ˷mB;ʾXCtno$WD)Ge4vуV3Y1)/cr뱴3`E\gd\_g4'kgyJƳѓ>A"xVj=@nvhQµm sb讕ւ|:ۨSgCh&6v_pI?8Q:4) 04.rq3#zWL2R~v@M *6Zy"ԽdrRP ɠ1IؓL@NRތ% z6,;NHЀ oKQG|r$Fp%l4l#_8rB VwqTG#f$EC#+΀26F$`%6iL?YteiuiI媖R;ʇ;\6@& 'VzKT1(\RnuV[A <^T*D(ze4}_M\|jg݉ijsNfYo[ 4؂v3P6HR4^MJ."l?V_:*,;|#>pmtCU3wB*@tzn!u*H Vqb3 #gάH`]ө_,!tY7gPҫəl$::Kn*"h{,qe,bH Zh <$&Up O5B8jٰ((a:\Kl 6c;F]ޏ* wA>m*-iiD'idK x̓r8ɪ*9îJ4uW(9!yك1Ma~7 ؼ;xIy8)rlǜĈܥ<ieINv'^, OFHI2d@ͼ{ҤB*ЫN7 ˨H4" d ,z!LȦ>'KtnܹY>TW4 ɚ`i?>*LƐ1.8I?>r SVm֜Ry^a2դMT`WZA!-Y1~&̐XWBH`GX KihQXlv VIs'YW %f)b&sp9I^ k_5'Cb,;rT@VN61(X ?T'28+/xbCwv+?TWt)>.O0mdW|!B`%<ܴ6مq&MEZ4q2? 0W`T/3W^"hԘ;F0dEXq\kχ=:;#fQpig" " %g]>uz.ѥp/Mn~] Ԅ&-QcNL~+LakɊJt08$FQ)SJc).n(T_MM!>ëoJD1lcҥt6JgluIM!80c+`@:=NY3fXf72d\T BkeP CY8%`yϑzy 셤SxgCgRGGӈsTl)ӕ{sj~FaC&e7ҢU5Hrg@7Rpz5_!0E8Ai?c~(sϙYxD;B3O솊 .!5@31&YW`t䠮~CP^Q8K !sE Nă';2Gq{4[ogަHrX)(I<+=߉_X84E~{8H 'lt@S!T2胼6v͝y`9@rN~YJ*Ha#cJ゚GLwzАu{5,TB,ư6U.t~`O(ԋ5-{?z,pfymaA^)&Q. ݈XC2p1yu.;P0=Of@1vp"xHǩUȽz/φ 5kY0]xz( š8q9=MygۈLOQN WU@xHu2S롼@u{)Yu" /RXNxz \@sS7ggT O1GZS+z\5^(:ĭ8* ד\g͸gKjy%-"QwUVP]FLq2n5m0<7] >Ax>ZB2@ƶ!*!Vdy%"hp}p]I'<_H+^# b7@ACvQ/{sVa%r|DY-BS {$?!7W5Ԅ;}=Lu=KO= Vo2 PP'jd;yf l1Z9^*.c J4gsa ^5bז󢋹{%=h (&%}0=Pl>;7:NJp]o" NgxH(2f. ×NOd\ŧuq# stDg1D7}|g |ݥEg^5bE ɫJT3J)"Lcm8ƈ(I}h*m0#ݮg}`!su6`fh}]D`.g M驞|~8 \kU1oJѠH?ecbY'F4]zʶM q!SH膄0,a _d Zը~':C߀_hTny׋6P5Id]|4Jfgׄyv,J: )ȺM1|)7u"ܸJGHǸH@Nx#"FsUŽ- Uq3%sԘ ns̴JLn]`y^S4i]x^*6ga^63^{aA"GSOps!gMAW>5KB9khaw 4!ndA?9üTUxo0?6 YGV\wВmla5'N,Pn'FδHBMOZ $:Џ:B+ٶyzm {H@sT{ZTs2t 9W."/-z(gpԽ=ܸ P,#6o[Z! *ƈQ#<sփ hY\Iy0tbϳ{`.3cE1_sCSU߼fb;a!y㊁2fTkp?y2h?$*s͋X?ZO#0rE]/PG/pí Qc= gb|&(pk>["c8J%XFP KReU5<X[te;]+ֈ :ff$Hv"Rql 0/+EnPRjr}M5}wwZ~r{ 2F> zi0DN9{լ*@232u\&IopZ=:߲^NLH%ܙVH `r|YeGu: ad3f0 #$;)I m6FN.:>:pw(/ȢUelP>nGl.:zkF`.Y!*$?k{X8!zL}p4+-|?v$7 $cpOaکGrkjC;jG2'7ktK#UQî=_)G7&^`ڣgur!J?=#°VYk,WĊ<1z;-FFj ڌ։]#" ijRN5ҪE a9O^7BǝwEc *a>N~ pmZ=`涰֯;<~X88&pH)'uvL5 kއ^KP$an(W*Y.[8 ވO'2t#c& k9GbR()'$j|$P{5O>ITŇɼϲoۗ3j¢ P\:cdj9jɟo(ϔEx f[YD1U9sٴcbS 34;k0]A)y $S'HVDP Ow,?o:Q8ϗ9\6iE bUaUk eeKY/'>"9mt^xq7KPվ捓52(~Q\bn\2 'ԇ#ZI"1$_"v80s/|T11;[Ίtl{.kwdC8ӝT Z'݂{Z9ol[=|fd6UI'5.QԼ7P|H'3DJ]"n_)jK%ePBPnY_$0t-6|/%wu,i}VX 4V1fpqkP_ A)q糌K2E̫i 58̬TXz$VT|rfdƏ3 I +H |RF땹Dfw>kq,Kx`4$,6"! ֭u}EbǶ ; aGD, {MNփL5ru $Ǽ2-1Wss1 75z(}Rsp<ՌΦtSJ_#jxbyϸ*>Ea|v!XIwo-hs4hݢZatbS_-?Ђ3T"W̼iЬq&eֺbA $?KA 拧[简x|v,jG=1;83gaj%c/^BHawlD _oɔq"TU$,EP[e^D] '=[ ۖb:NLeQA*0֍#|mB|=8S͛e=Sa#nWє iw:yH= *%]8@qr[޸v5qɠg,JLmI=WKǑ"MLDΣgU?}eK'JդAg2(dR,2P|z7O8uT҈Ӗ%]FgkZrgsH7„[N<j2QL$MHE PƐ=a[nY"U*2(j}#""T/\}]m /̓!`6]XHЧ]]dZvcz :5v[PSSjujP 3L- ߰J|_^QL(:Sg3)Y0;5IOb%w(X^^|X\`8 e~3q5@C;eyQѫ#y6CgY Z|"?,qpxQ?F˽70';:2厶5nM؏Y~!0+7I Po dlaMV/egYK[Mo_ eMh9[…h +DՌ3XA~lڪR8&QLr8tvw{vbkYl{QBsfQ7[JÚ4"kk?ehR̓b-|L^bhCދ{?fU? `KF +CpbHSCBU?nwۖ$ 2Ǚ>:c'ǁ^YL}2m"rar 2:UV8zhl^$('@`~x3Z,=.8p=?E͟0f{$?bm֞wdRjK%`!~mc [μIzɣpiƣ^OIXeb=z+ YlZQfB%=*hAyݿ BFq>3C ',AIr<;Qd8m9˒E3lv-۴]ќ;{*DɦΛt!3atOYzp'XS@elX-xݯ >2+&Fk7)y<_Y=855 9]Q,t.@b =;QH~9u<2ju,ߗzzOz7epPK* B5 dM>n M. 1ڞ4฼(CD,G,\+Ϙ4 }KO: ))'DSDZNI)O>˚N) cHym #+I2I^%b$[kiSkzmrzD4XV\{*֦"dG^ZaJYQx4u榞NTBslqmI oEkRY"s0Gi=`ʼ Y\E.XiC#`3R8җzRTx:V)tX+.'Lŧiq ye]3C^{l;S("g,F6Oz4<ռ+'hTrr f^tfK\TY݀b2cXbW| Dd2nM|䇈t GX:+١tL@>JZ$R#Nޞd4ҳF!^ۤvTHw8]|4>meyNNp: 'fPU4ł|H ҵikK$26ht?g- = &lцw Rxb~Ūg5JL+g(&{'Z$B{~IkId:H"ԑEʡKJIcuQӊjBܛm [-vb$d8{oa:dl!Ю}xM_M|܈pwT,7Mlt'\ _@6VCVs68AJ;mgf0(U ;* T&ꌾds"X>!tYTQ)L i/oWRwsj1 v#&|>V8k k)gzfo,W3X?Ǵ$p[7rDOquZT)!PQTJzXh{sA1/D8{ C n%Z|g~zlup%3(O%o@hFюL5Q:Eb %{Q77<Lw^՟R-v"kWI$<N {Oϒ[}PA'.ބPNRxFW2"Wݤ/쪑9o5FbCLִ*˪s$=C#9RganjOwGOӷeR+BDaj#DodzDRōp ٯi&u(f}%Z;IU0Ng,/ (8B "P鎈bBж(tg a=U<~Kجz7}Uv[`s mTő qNMJVk!`dyQij5bJR\SVdGBp=Y rak J !FԈv'ڣ.Fh@o,ܘx޶w0FS<ź[;\P~zyv -,=#H9V`APW4wGor!]S IzR5Ws !E>Nq'I-_=?<0 -3L w65Q~ ^WQŪPps R^ Ͽy) ɑW ] >O=e]/t^U~\ep@#!s?c(4S.tOowO(ԔO"FFl,}gIö8X^W.A79?ٖeJ$vJ LO7B`kDnG>]^#SJ.Q_).J ݧ}5p yo @jҬ?={/KzY᷄܇ !?"gŵY+DhW0 TƟ5GZm'zl/KYv rrg_k4#b =`Pz`D Y2։1ic_׹CȘ#͋ zǫHG >YFrt>!=&TD,l/,N[Em%.Ø>}M[=Aw圕S:"6CdBgk@`C1PCk%ʖm~Q6c XgK&m^%ۇ $t22~Zĕ[%mP5#},Û%\ybVz+u!_Y ~G$HX]igşv]O }#Y/x?=x̛cq@GJ]m6k6`ǁG'͞H Fӏ_g=x17zuW$igJ'!{reS~P#ԩcs Jczt{b@t@Os2ݨ94UkKz;3EX$fV彤r#~~/rx+;Kcj *(5]St!R=Âg iG1V[H)wHS?uZF|wyrH c/H`{Z&9ܪ>#T"?#[4JM]N:3c~ .FP[ ;~5ĂnIxwf/$u*2eK|.C,;q`)ĎM!JdVF۾#scGtS*9fD4t \{9a "B# pDĈH/Ĩ  h-Xp O}HXS tz5myn=V܅ |H B}S,.UM sȝ?(w~i(]A`?mbAO #6$_o }zN:xp Cmv:BN hdJm6(<(+7.6푪[^OWhmwXhT5 /;y2ޙʞp͜uNqx+mDy^AwN{Z&]L.A%^3V::>Dszui{_EHxED7i|XKS來PaDH<.s<4&.UIKj'3: L`^B8.+޺2տ5jsZX|5Icm_ES^N:z][kqޮ*.eDz%u‡Lva}Lg桯] |23lCp9Mc)|h]%4p []@lO}Sq}h˨ӘCދ1i@b&uF`LVWx9J0vϣy %(͎ͧcJj۹GzN_aR>c c⣜I0xuNϽG$fƂ 3ģ Fʱn@{ذl?Ke'FUbIɳ^rn_%L(E~\|0B=mNM?ˁ4'pѹb?b==+A\ .)GagHy(z C 6*W3K{繀U9G/tBry%E}Eo K4EVmYO`s }{Zw"']4$ÍNܨ=9#}$j\0.tM<=Q~aP_rG( A<|<_@S`2oIG,Eu:D,op&BBEUDmz/YT)\X!BF,S`0~InfuQ)gVyhڀw7A(;CʧH%.kR> Qsxe2%XžWbYfݣ: M jh f2)-8fUWWWjKh.Н +ӁwUc1R%/%=_'AF՘ɂ>w1@eѼ܁ÄJ-!4*iǕv滢5XltE&+M nj\~<-IUࠢK#T#Jb{KUb;8,`ڑ;o*bneAtcRS5s~˂@!r!RIE@dŜ1ӛ}cPk \ƶa!8hU)Ծ"]Qn 5S^6҆jS0KBa]x-glƷ~uxLD#] P``ٳ4}Q9|t}G+wUZ=*H/*v\5E^u-.FvCPf,V܇M&21Fq4=VYQ3<N:ew?Nlh^$I1E*G)7!1V|b`#yD2/7g2p} (3[G(GOd 2!Wd!#;m_QǑmv<DFa89q2қ0x#.:$>k8gCedTmr%jhn+P/|}UV0Qۭ 5<I"祰QvgM{?m5ɷFBntaʨM[(1 ̰tvw"pk!SSŵU^VM HńO<ϛY ^ZuhQTF4 {&r5C; b,2#yeފ]+6ګc) HDhRۭIKܞ2S/,˰?fs'jEP嶽Ig*mlߪ(=.wQ O@d5U?(s  15Ƈi{}miô"j[=aPe:)Kˮ-i[ɮPzp2t2?#nհn|2_i;8""+ DS/>n"A_DcQ̬QYx1UB>1}EjNη@E+T$b%~6h)YZ Y@Wյ;r(н~BZn`뵱- T#=\iDoF׋o&p˄z@m^Trdw4pDU[5p#>8v4$ƾ7 ɝOҭ_µJள / K8PK,Bɝl7R{UU)]}Z<98;GMi N<,񰨐>֝YVoTaB'uCO!SY բYnk1}H;ksS/o&y7>>b ┣A@,1+F8},6~O,n,265ClJ ( "pK$)hս?8Tzȏ7:Ev+| ]`x5bf6I3C,vHϝHa~_\!@)Q9t$]GHbSw})FD"S͢;:*~X혤vAa7lsJsF ƼddjI<#H9F37Q"=}(SpF\_ 8ˆC /lN#&BN)"?aj%꣍ct6[z2-(itÊ3zWґ7`JgpZi.Vۉ*@˶zl +<ܑƏz8.o5TIYP! tbٚI=} (AZ]ca(§x/^ Q8JpHBۨvLBe W ]+ Ì} i::5%x.5㑂s.6{"J4bx"gEt}{] ؀P>6RgƏڻDUogЅ'Wë w eyo S`9hО->?x|kEU,kN/=HDX\|*5;y?~4l,v~ @|̀'9ɝyj?Ԭ6Ti0'17w! [͐ ㅳ̛h/,Av5/2q-I& V~bMξ--6Ul\}V<-q:Qjx&D٦.&ZBo "uF@0Jڙ݁TdFҊSNlne ni|pvY~pCXbAP[вjx\C sR"Br}09c_ԓ"EN6Q:x_86sXm!&\L4iɖf4{ rډ|XFKAowO3 w|o ` >q`cWHwnR%]8+X嵩li[͈緜Ħ4&S>V}hM`Q! qC9I]ʻ^6,fVP!1X &ߞƹi}R|k;VNG"Fih˭a|1٘;kA) ]~:JB*:  ;חQ(dE _&H#~sjj^+AQS:辯m/cXCm {a 3άr!Fo; ڨ^6#[]ZcIn-1yV]%~ha#f5)!fi.%b\qR{->n JB,3R#R -| !?z|VxJ&M?*sJz BD|Yav{ҁ&Ѹ%U σ~\'9'Lx*dĬ4GŇ¹Ӥ̤N႘ͱbq>rhFE yVN.u_uK0|\umcqp:/ou]rZ1'~S#iEണb$6jt\IBUI}*BK/a ]ç^M˴,̗˚NNJz Yor-}ZCŖgԧBOZAٹ4Ak-7uũ*LDԦD8_.xL$l#-*^m´~<{5-/".G%Ƚ.'FȲ$$F54bs?DFs^6c!UT'7" S{n[)uD4~xvV Yo\{ }ʃF3G"K?{3}oB.>*?2[?LտOI  0R 9c/S0E*=*'bB>Us],2J B-z\/<`rVSѨ 6 (Tfq#^fikIe|@cWH@.̯)5ⷵ`yҀ?Y&/.梶 }TV'$sf))wȁ?>kjB@9#̵=l耴6Yd\pk7Su~`xrta䟺Bz>bޛlm9ӸL9j6[1k@ 7uOkyGkkQ&<"aKs0|~ ֔RsyVMQxeJGaEwhH<'U`C&_Xw67x&]Tjۛש Fc\]4T;& $G!BLn18=!ηf5㖵z5;Dosd6٘…Ovm;OkfJ *FC%7z4<4d?n37>{VA4ko8'P9Xt:7Uei^hrhfGy\+,||F 79񱘩E?&o*AG4dٸULqoڡޮIUӑAMPTaPr s/t ޱ٤oRpKh ![kşwf59qVIf0Pˀ)QiCAJeK9/V@քl\*t6vkHB楸MK%ak%;''xX.wy qP]XYV1@of^dW'V-64aw!T(477䉼R((XҔ.ݕ{HawEd#då5qa#|j%;Q}G0=^$fGAaz:l\WU!eGe^8jen,T,NR2^R[gQ̑5!L+&4Ǝ;M KV5yi#"oZ"„0FQ5gSS a)qA߾Y5ct0tk;~irGֺج߾{@oR"Y='9^ K&[Ej49} FiA'$By&OD?Ct17TWB"̈ YBfc[A1ii?I:;sěGZW@1OYqɭو3( />tTS?Ϲ'\FI zV"= 1_* (@p-A R`y(ŋvO[(9 %B7d7=oTu/O߉/]ŋ;U?:{ \B=bf6p04ˏ1x&#i!;Zgvb.>GGzV^JJy?} i>YQۘaZXF֯`ƶ9Qr Ӵ/hR P#-n*0'4%;8 >bwk-awZj^| - g _�=]auѦ*+A.?ݫOvEN$Dߎ/=28bh+%[*X2Xk9Oo zTaW^ܯHe\ )E[?}ϒVR?ަ 2>DcnkbvPAʇ8ĴETfPHB]:Jb:rBg6C,:`~xeIj *ji" PRyrMZ Ggtoo' xk>Jp?WF<l~PGrӊ`FLi!˽l> 2\E7\u>OQŠs89t  =i6g9s! pM=@0ګȏky+]o>119š)ӝz7堽)OfU3u8Bܨ#c_pҢ #/=M!kdZ>m3TOH g#VuPH. {ٲK(6ɽ[p&He#~6 c}S6eD'W)GoX6U56ZC9^(po$ؚŠJmP'MCtGߛB}RY61H-&%*}:vIa2}oBLpE.|& VԢ~A}I1\̣hK\&t~FDq.Y}\IKzȼsR Ɣg{j;pLjkC AHh{#Ϯo?]GϷtm *2r\S_6GP Ėt&H|sHXU5A#isIT~dޣb3{mHD +#}J#51k"F/P#/r'LG'7d K1d= 靮ṉ?QdBtz!J^٬j⺓B\dwUԑ历uJoeltcPqG4hU00 hwM_@YhܚG;`#!jؚd.fJYͨ| Wa\:u(e{6a ;ߎuow:ܸ+ F/HD3 2vdۀ|Nph24=,WT~ǻ?!y!A̻KnI#jz{'SBPqq,j"&Q8=L[}"zt6N'Њ^ё~L Ò0&^ȗ|Z&SI3![ @-HT,V}o*4 \G~ dMIh%RaVJR/ҭ,K6 yUH):T[¥GL*cRRN` Pi_NHsA2KVm$x$İ2:@6\VpzGc< OCu tYtv^/kHO z!X`B&w .ójw6g{kjAoNQ|gAbDk-X+QBWyc7h-R?m)A]fp*z<7acaK(; nim#~:ԡ<껮λbqXE_fwG ,^fO!nݖK+roſpUjPPy4_m/<HzjVi=f=RnL]__eje%sX3(?Y 7|؟Ti ~<(y>BjwS4|onLSb,XidR0buFr?*ZƸ#1鬔=Z#r효YRT&O}3Ɵ:vwb5Yw}l8!oAHJ/gGM|}GtF|H2{#)HFp\Qm(_ _^=tؒåX_~+6{[F?S݉"oTwWaFlY&۲ˣE %;ŕ  KC/*&Pĵzh]ѐbQ&WձsʋdGiG(Fw_q)*Dz|\Xu;YvS"A :Ih*2wRY{b;;- M;_֠ޠ\43j]gc9lLonɛ po.5У'yL to7當*e3 y~G9Dx)Sx5w3"BsV%Dah*Joj1V#DgWT`ZZx%8!O)hפ['5'k乿МrمP $r7?WO$ð"'ÌQPg87!PXu;_hEM{S"XN{*k-eYKXQLw~v]2@p;7N3G:t[A.@4kYXe+n>Ũ7 %޾'֢/9ό4\+GglY43Q7,C,~ufYshCeچ}~|w2¶~C_r/h+=*ׂ0V/ld?UQ, m)\F/nTT_{>̨ZPL-ۊN51\+|5tAiI' ],b0JTT8wt[}uOH:r͐?/ K|[J:@# ݴgnq}J^[dP ew@mwnc!A !UmLK3<z Bg?%~g1=PO}q!ƍg8=끌}Z# ZFD"bWx3%K-3aƧ %\D|޲J` WL?<61|ɻsJcl [O?(u~JT`BƷW}cF( G yxk~ˑT>W2l t蜧tS2 EUf<1, Z0auNߚcm5UNq( |Uku\±P1Wb :܅Zy?7ıؾE)|= ᷺.B2wX4:67ڛ_ 92!t.<:r.8v^h̸Ŗ.k Oz.XCqH>vE))"E-mj*=mz/!zf!H.eq#r{J$,ӁGbwW0t]< l!}a+Ʃvdf9$MJM}2{SFz)Suz ]\}k}NmE}IX:ZWuD"2Zt䈣 cXwʿb<^6qL𮠽~ &h1Vx*,ۖ5}$+J(gD\{SN;65~kBݤz]C-H$3\VW|k]z3aSv Кv/ٰuQ}Y̡6}F}&ly7VT1IŊ(>^  %Კ#sS,?X&cڝH\}^\v}asVu "zg!:a+sr(kJ8Ac!Jx{DUf P_F˙ZМg[ur`1B}_`&yǎ5S^Z,m'jrׄBSư J` pg|N%=^P9j0X(ԡiU@rd%sDf1)6Aor'ìk0 |o(f1E2 O쪗w1+רѝ0bBCQdl'1.RzFp\{H SZXDK}Pueseb~;,6Wpđ"k+-I+X"Hqt\3g\h%6Fjr FOR!%" 𚹰Za73oٗdimqo: kͺz\K9Nat:QX]Bȩ} AEhn_ԇbT]eԏ>?X j1?ӺۣV% 7fY`_vD)$ 턿:$,4gĂʲS PvyptNsRjQZ҃TW3_"4}kh|/M޵;hƁyg!HkOwMqE,NasuRH<#Vߠ a[*x&ƥ̣2^jWꑾmtէN.-+tid;0Eluy{}q3pjk@FVNW6ry is D\6RtIz T$݆@pm?hK1.b9'm-ƍ}lKQ#xV䭽+O*cժ^GM"}gRJF$6As[M\JxrŦmm[ ݥ';Hf3a9"ÝU?ʀİ2R}/,_08#\ X]P 9e9[)&ݨs^KYfifj+R>תυA⬈8qT|ppEL.nK5@*LV"BSV2(d,NC$^˖b$MRDtd3 4ֹ澵8ja9! C Q"EW35,%&ҤN&nNϜv,٦X󲼱ڴjPxKJm TWva ϻPmGTN/^RnȣiJdr滭$l(8a8{J nEl6hCV )Sh>_XE``!5cN;i*h)Y5?=M"_1{#$ەJnٟLLx@LҶ5h %Ep̡ 5@p W}Q;޸**՜4oq=2)vgzU=O2j+m_tr@]+O.햲4ψWfNGX}\r7 ѴQ"RQYb~}uUT:&k^Rꀨ|TY{+yqq(?CЛ"^Ⱦ0uP%>Y+[عq_|e[KXez򢗣eztJ]f@kG4hJҹVM~jv[?o4{8z4gɜa^4d I1,,n鋽bB` D0,o'xambf|SV[l8nCFL@U@V$"Q*)QL U~,0e^.-Ք.Ō~Ը@t)Yd|i׳Ƿcϫg4Y~ח ; -`j$l5uC Ӂ<`y4^„f pA-WR5ܨI ycGW[Mugw#t1eGR5wG;"''^ғk>O'kyWBOr2MWX@:5h6ctu`<1\[7WE]9&S]SC)PNJ=teί #'sW‘10I|ƚdw[t2^e ۄ:Dtcp)+D/il(PNȈrAaU̯thPJh^qM"2~E$vfvz5e UXWAWmT}da߾ߴ**?[ x}p)c͖bI}lc wD=M2ی [0L^5f#IҶ,`1Uq5m yagGz47^AܮYv~YzaX OuRe䅂eǟjГ" 绠 9?ޜr`fE޸ owW{n񲵧ѤǼ N>oduzŃi>92a{.MD >*s`Ts\0P3OVF ܡetrNHce&@ uhj\bӎJ 4_ӡm̑eBSnT"DV3倓B&VYb– eiPQeBr&_ C*cĪJ,%7˔212pf$K6KfAmڽ`S{Ԥ,蟌LB^-zK!1U_: s\NDM<V16|z,C}NfDb/q"ٝ7.-p9bXv 7 /_Kab=`{!h,_ !p0W}^v6]6fytSôb:"B= zn,͚B(qi37Uhڈjbp&J%~LۨHp@{=uhc+k !j\ab #qo[.XB?}1{fDX AO)k([ [q N|0q\ P.&8G4rHG DFTPBɡ$"!Yd!$ݸ_~--X[Q$kM.# dՖ߲gqnව+#zvUaQe7dd$=oC_SbɇŒ+}j mbEz 7kN):O"L.vjcN$wA>Pkx;drʗKgRC5讗&CIA,hؼ t ~S&wl30Drs{^嚀C*^P+,q]ڛlR+_&fb9uj-CIyI9&b\e 8ݥrAy&}N+7Z*ɸs8H_a~bVs2$BH+u[ U=)afuODsd lϬп~t&㧥֜Ds)/y+aّ^wqG5hi'V!ǝŐnY>E>:nkJ_`RL @')oejQnA;g1YNbz;hiw+L ++Q} dLjX}9:PIB'k>@~] >:REI2VV7E =RŚ Izw۸, Si՟{HfyR3jS߮#3:PG7 ߀GH-rǑk[:[:0)8іU= 7M=/RǹbNg>=;KH6 ̍x s6|x8,{$-8">DEqCn`54y|!eD kР= ,+7*ƓKĞ_\ pשbJʹi"Iᔋ&S"u=PKXL+XVjQ?=7.Y]W6'p9B*bNȃ3?s#,V Mw/ tNT[e*h|Xo@xE.m9ӂ:q!M,~G fp_/|3s]( NxJbxtwa3˵\'oĊД^~wdj1ۤeBX۹9#QCH̀=ޜic\ڎ5#})vL =yF>ՅX9peW1"z zhb`|i)9d@|N!>B=%"w)IJ.6㉉w.!. ViK:ZY%$okSe%8A[<^"z?Z)(?tcaIm;Qa:CؠB?\gAL|Ƕ:27VX|d1)Y Ҡ% QՖ~0 8\$I1ӞRɊR<f"\t"FWt-lhx ;?@NOWVmLq!.L&/5EQ7($)e'>l/VIefc L!wd dãcu,?JMAXne*%Rō5[A-7ronb~[ CE/ڌ#@2M̳4ykT;DMBL'MhŜmwPт `MYK $54@v{ryᘪ*_~V8(E`] HDvPO].IT GS`;J|Ӓ8ۮpZ*ڦHq/BͣC)Oe^YC.zao3#$A0j_ /oWGB*NvBV!/"cL?ՌqM݆r WTSVkJ'^B~v@r]~@~7$]&VRIO"xOv~A5J̌9r߄Y:>7dM]+ߐsn}a.i)X['>gI 8f X^10U*i}:ڇ.n0‹̙rGq а8GR!sSV<+k֎#J7 nR!R{\ĿMFj'[HjMBt{ۑp"Ƀwvr~n{&gh;~dʶ!{3#NWD.>*hTĹpq⋊@rrޮҫvr$ߢ;i7)^5\k2FX6W>pJK5#80xTW+}Us@c&r)H 8$Ai'JMͬ(MpƅMV&vò!Obݟs{$IVFOo9o03nŴVQZ$BO5\|p (8pL'W< kgkol^X; q_ ut)@.TY!^ڿI~mQ>o 6`Ņ~kQ]aH31+PP-ZZI*ooD.J48)2,Ȕ0ѧ/"dSh(TE7.ɒ$4n&=iFI}BH81QCȄDhAa9T8?V8+b7bMu R;|[C /#5B%o5Ѵb`+ޓסɶ6KW V~Fl6Vϫ5`ÉxBOgfAXE&㟰rVxqyV+"UcÂ\Zn 3C+cZw3{kwcAr<ٓmA&W pԸI-f!2ƄR`{:e6- 7F@8}/`N^4dqE|/8-(V_^z&˽0?oEa3r4[7t4\04R`ǿ1L;yVtf>(Y,*\'3.y8 *zT*b{>J9(䇷n6Yȃ'n)EF(z5\"sx+juu͸gLQ˵#˫n&%8؋"ݡksʨ-.<_+? lqyx Rյ#Ov. ]Z[.Ď ql'.+{n$j"K.&*תQy5K̰=#9YNi1iKޞ];oyרE`Ja0VfC-Q7a(+|U˞CZ6i1%8A%DZJm.c,)f=8Pkl8%>@UjʂA=Wэo|ׄxys3 iI0mZ?' + -/V*}NRv٦1^V!;p"> Mg=:Ϧrk*C|b2~ B2 ᒲ߯!=~L$4~A?7>Y'U+% .`]Oh>'s0/%j`.LrY |P Abjߴ=Ƣ9,rrTGLG!b&!F ,^F))aDA o|KGJJҎa%gU>^-35DIٍR2wCp0&VaEtYێ zǙ-͊lK|gBs)45֩ ?Hݵǚ?d>%mcۦ%V@X j묱w*Z>XP=1r}W^02AxmW|ᑗ㱘vk{4u\ibM W(}?ph_M?2B$#P+JGoX3fW@ڪx/쯅yJJGOtx#[/K05fR|:'|k NXc8o{v^Nx%JO&4sg(2L|&q\?xX1DzvE+KDZXys5]WI7ṕm00TI XSco³5&!"*+n皠[uT]>;(zTtݜY;eK Nz'ͳł}eN9*Z0ʫH#JޫR%# g@-b(y6Z0L1kgk' P d[P r=iY:Y.ޟ,lT-]09hAC =G mo}pNMu3ЃF<%mj{gs Ufp b Иנ௃/:ʦ"RlQ.J-]&AS9!~MpZ11ɾ@yӬ<ۇ)¹y7s1 i}_Wm1*fkk=KBxn5iu+Ďo?lA.\n=:߉QOEjs2tA%6*$;X]['`'CK^8Mg:1i*ޫT{|D"n’,Qu*/'+Oa 0砥&7"=e Vsv]M2-J?d* 5' ^y+Ik<7w ?:N^/|Ņ^qS# BO^Tite[N'y6 n*3%`nnT̐gLTW6>Ʃ]. F7()Pރѣvl+_Áxv߇ҥR9W(7q2{Omk ; ]·Po*H=cUW]T pV- pe3Xò#\C 7AY̅\Tr0"ngզ<I'4WP2u[0mŧ*FdrK?Lj-T=s~]堳0ӮUEbnWv` ܐ| gYJlw<([*f?D}RC]1vnfp+Kl.bّ_+@Q Lt( g j ӏlڈnLYcvdtS^npu'\ ]Odf Vԛ K%:)k͋E[Fݑ0G{TGB+vC+./{cw0oX,އ'OYp`%+9L̐ ]S<.,E؜ T[ TTG[:=_qNȘp&/-|y+[> •}vĀ]vbyUĈ;j./`b֤d !Ư!Txկ F7%嫂˧تjo%`A -NS%!]5p.$:l(\Dym2aۢ\_]L{tj]mJO@n-m\FiMEdA?e-YzW! t,a xc&%,b_Dw iy>%/ȮutthElQ/õ(o5p!ӹN NE&{̄׋}t?_«!LZ6pN0!ev} W 6C2"}-pծ*ŽA%Sqj1v +?&\cYx$v1:I3cO@MQAZ-4|!ZV2\DRfE_DE_K2HP zP Q@oVz-$Э(1%ʔ$fԟ+nvb_Sҕuש!L)NU-|p*# mζ#s7cAB^J7ǝ[nˀ+ ) 9EB̓X##o3-at GY:k1DCy8{숻?0Ǧ4K`~+<Õ^=ԈI9y}XN/n0/>a13,iflи)T80Z&asc:E~r 9]|#>NMHGd5Le:If39 # DrJNpIIQvvX @fԎ,ϼz \wWIRm*zm 0&) OnUK&CRN&n_5:ۀF0@oQ(ͧ<3C#,ȷ1h8\6+H*}ޠgM\+EtkS-lJ ;Ȕ/R>+5 O@zrɁy[a )ѻ?؁XgCjᕗMWl iaXýt*xTh<5P" 5IMV"d詻.c*2J%?4#!K=]n { f5M}RwA± jGڢ;?,JSrUa4-%˺&+,C/'g6,6]12 ܅6LY_3W.+ 4PtQS3"p3vdu,Aw9Û -*qWa1si|?)D+Ӣ(.}$][U1=bC)'@'5։zVjpM|o%.t` Hy]7ؼb 9wba1s趔6==XǿnR.@Q" '߫iAZiGH_aʖꑮQrkfw޷pV 0Ւo !OůCc*VS7VCpkݖmT}=uHry0cՖլ ݑXᔡIN"uaG@gHߘ9<1墄z*{Щyv`OwR/+΄g!;hz:Qc:c\^ԧ3rU NfMn;-^W%?sN`dH1"Vwckp +p퍑*eO _m9KS)˰]|%J#e3pQ.զF2 i?秐Y0~fD7 9%5[tC|!'bol\Okq$a!$(O~(I,YZY$NiJ:Aw6 'y WJP*г@kf?|# '|go҄ 'H֎(%}IB9vau,#uvv ߎ%Ri67RʩL)!'AcOw~*tv"9>jrx ȀS;jV1oS3MdFjgMH@N-4p+)zRڗcO8ptzBr(a䃑+6Ӧ^ dYfl$e֧*F›%!GCwNRBUG0QP&sQ`BE SWH!$|t"l(tNL+1mXQB\ *<̄n#&#-<^#S۲˓ߌP K[/u릳Az"d F4}.zN7l<6Awd$DTP&2ք(qjR1oҴgzM3o"6!eaXrΟui-ʏ()7¬ ߖ G6єtK*̍mIr$ȼ"'vbΆ͌A 1%nzR'[Cv^Hƭq[\5Pau*]kV(tx#|TXD.nf>g aĸ)ǫ.0k 0Î@/0Hxp%ˉ?||5!DI(rTQG7&2v&cFNt@t+RVߵhcgt#-oqmG`C`֝mo2xJZLlDa$6"*3uq! 3:I})`5U |2?mSriFEoYGT'-/ !=R+Ud!W,Q8\⏪fTc` b#qmsۃ'giJe! kHzʑ\$`]}pK8vP>)CL+ p*o.H}3jV8ᡔQ{:ҽ!l3Ulʑv%cUm0 KRŁ3Ɖn$/jq`$5Hq::>A$B]Rj|'IAX[ l'ŹHuO4%{C>E.2։Q3EɁLZɈDS/Wڜq=tൊp1ܗ,i;2[~Lh>G+(!:,R'7"6la~AH9GQ}Inp%)#ɾfpC}9)[ɍzPD< i76Q?q=_5oB2^v8f=]'S4o󏚥o25J,YsId32tY ?9o@B˄p:jCNXj|Cf ;>'GcikF+u(R8 c,v$:$>s,:Ype!7`kO"Ledp%obPZP2_-M89Efm }*I"O+o!eu=ӆu:䅹8@d>m.rm l٠~j}F4} :H#Ҡ ڗQPqbͲ\G~}Nkvq:!QiF`ќ stQS+X&[eRw1(PHL!@z>w6փOty ߸ϪP&juq. _j6A,vӎYlO\ZNпli@OKsUMBJB_|ըl2Dt xċ{H`fȼ* kLn P#YjRCBɜgW?$,2}G߰T̞*/J̷/"$B:޷Ů^Lcԍ,b8b5x SEX C/Jz\t+<ڬ``n4RGrv+j)q{[4XƋx Oo-{>΍#*~!6FGnM­D6w}v*]lK}zZf_ykٽS A5I}_vP/Kȫ熘ߐ<Ɔ!k'F7'cm&!ut3\c}*x<1`#dqzG+NM v`v{(B5<{/{)c.&mlu/"A=eGp1z.3AZvXު.bu洖bQ'$܄+ U;q=( ?Zp {[M,..,՗+v_5E rk1 mvD…"̥ ZEfch"mMɤ ! Q<%-b<)+!Ц ug,eMb(v/yV9굴:'x4lDqN(ICPq\fʼn-Fzcj BS+Q+>q1^͢ 4C SLJhyM>j%>86Bݿl3T4!qא(hFv~=x3{7& ؎tCd6d da;8fCzNصR1wӡ- %/$M>)JOTcd'@${}tđwjXkD5V8M7bxK=lPI80Gŋ>C5@d q?SY<"Ď72p, >LDƺz|t' ޸E&1F1`!=zW!y/P|y} UitP [hR1 )`PWdc}>PhĎ?/c:V ܵc$r!qG]dd')x2l)ee,RXeɜT!WHGf?bH?y5$Zr@E "wV}ߙ Ksph}Uʃ.ĵ<ڶ<\XKzk<F]7`n쇛A+@W#iJ{V@x(m~lNK`5V,9RWz%1Y?5vt-QIp'yߧ#O,&1DҼUCFk qӦ@; B{.t ZΥ"vR= pZکp<YC EzGm3$miVLȖkǬQ9݃<̲.imNI4 k+=s* n}! rOއ$r ]tGHr6):ũu۲== N4?iv ۓp#CR"-kƌnJMjŇ Ԍ-e)rtA/I.G}- *6HVyžz%hare<Ϋnb+@45oWDۥE$\iP$;T;\8O2nB>{݅%UBG `nO)x:+4h3\J:NBցwޥQ3"O\bȒ 4أ^ #2¡|ڌ>!WzSEz.Sdi\K3b6}#͜X PkH.Z*u#]^.fP¹GՅ`m".}%RA;-݉ըh p*J!G񤭇8ꎾ: *ؗ{T6L[ TDo(9O_ R=gg!7JXTXktL5/ms@i#kyk-%թi׽17aWˆt@ %*IDlF lu2m86PEfʧZԜn>^ױ5Re9 YձV/>Y'dޔUM %+0ƶn`жKjf)rAIb|Xր0q+WIa\˫4C^?cYuږ/Jy⣔ӥVc(Q)3'4+Zh&јd̓@mH+%QشyY\+- jA,|`;IjdzpaFaq<|o2I:3d&;d<́%΀_gF'Mc.InT[H2!YEp]̬V? wĚR(+67_m0Qd/*HM{x~|Bs6w9<]MhK"lk3X. gJB)_yoFTv%/Ɔ8ZhNWX!ʁoEB`4u-Vx1_hzC_ GXyxW?B/%0<٪ycE@j.iҊ.0]@aSBVf $<+Gg;i0`MU*aLawס: 6_pFH[} ?ۃW$[bu6-uO~!QÇJjݏFK9ovhnT}0.A Jkk]}sLgjVwL:҄%Ԗ"+_^òeX9fĀI|zfub3OǢ{'UT<{+ ۢo!9d? :>[wr ހqRK]g{Ճ8(CHQsz괄󥤣Z$r[co V&h<(ElEźf2 aWֿ Ugj*5 8w'-H X"fL' %&L "3 na+uUn UI:7cUoɦZ:?G6(XFE &* q;K#balR,Rp)|%1_Q'\!`SNvRv`S3]n*ĚF.r4#qm\)kH zo{C;M'{U hwB1Gl?oCb4)]j NN"N(/Ih&ti`&{j@即o%R>maVl5q%p4, ۛХ^(gfDGc|csAmu#gUE@0 Lǭgj!xO/)f;.@M<ץ |[dH^5FN!cn kѱkc/*HBޢ(^kY< ,aj!i|@w e'eG%$"t}#X2#jT'= †ꎗ;;2@I5)?32ee?=G%~z3@1n7Q_yY$3COqT, P%{-j %~=yo粨aA i/:ܤ 8s{xMg`V;!]ypZB,C yfL k /TKK|qת( <%lxߪHz&( 0O,frs4aqgP'̮N5@[RS!btv;(+>6Ň Z@"T<jʰbjfE!GV0b@[,@}cJ 6)JpR;h\KY,m΃e-w΃,wҔt%ZP >TrU$RY4F_MXFyjuP0P" w1hvnt.'-jyGӱ~<3UH,7 !m \T#|Tm}/nar4~Gpx8@\%@9=4ہZ MC{Vyמkm<< {.8zdd!kBxk }IeT!JY(ro+J2ܔ7谗{0y|o^9izl3944@1+A\ܳc5z@Vς[bZjՋ$願U>" X؄ | %=h'J{yxiEL] Dl'lы~ۙɛ7ޮ6k(G"b?Cq@1(c|}rɀی;Go0Y!L&S@uw91Ww7|\0 9b,^Wl *Ͼ*&z%!N&IxR ƕxT/ꈚoCTݽ!C! E} E]GH;oʷ;fO0돌U] 9Og0+E2Q.$u6Ǝc,o8Q? yEqz2XpZX㕥HeÙ', 0Y/rة2b~Mfk/3 JI[OB/mVn0cӃ蠄KVp^u}[&+C|Jg0!$3waB;:hAF#BIlsSyά>0ShQ8U}y$OX5.)VT ޓSmޖ+a$*[UlWvlQo_wCfՃ}ӥc%sqԇ뼸OIE1\АY# 5&  Wp4Wx 6@UG!v1;hi7B=ԆH E1#]T˶gN6I=:훤/kv"mL|>Kcatmd;z,[x= >}8ef "2/7 42 JSvgXy(a;e_Zk[e:ÔWl ~\+g~1ŏ:JʮEnJbJ@٣`lU`\.Fd ߺn|riB~rVJ3J?R}GR|m}0Z/4x5)č~Xh5blD!a,FKJTxQ#z`Gx[13kƳ# j%ku(RIHp% H`({/9 HiX"^WW5 Q\xhhG2>q*V ~mQ}I/ 7h>!99aCl~Ce,3 ZRu7]":܋@ƭXOϷ⯚`?@f? ]vV{%q;R^bm/h`Iބ0k k)&e4|A;{Pan.!_,֭,fލQ` yh b(&|/ƃ?+܂ +s_cq +‘k~'rrrv夙&u5P^B@ [XM=z.nh`kD\&9;;a_T) sq9諽St,Pݫ#`Fw(pӛ"LԔݤR-|6tkl^fe}騙׼H׍6 )a?i @;HkXKݜMAg$'Q>Ru 4?}%&sfKiUTZ|3H3CB`=0?T8 e&ՋAoo(~$aTB՝#d?mRIT2ڽIxˁoBiYշS)#Vҿ_$,:HQWrlcn%jf(~Xo qz[q9]3PXUgЋ)q#8^kA%% 0> U猒Ĭ_VMuӘҢBKG$Y!j'Nc< ~-lQpZB6N.&bk]uET>7Dpp v .xH 4$a4)'ڤȸԇg0:2LP_#W;'g@%_„M^,RE|? 89`;"E/2@OÎE \|LӅUC1o^ʨ(o7|hXqN!FJMw0t~s[iX^` E;)3w+@ g3X,f*Uy "vTL Ýai4ѵ3(vcxWji CI4LdP8QH==GXd2^ԪbC0Exts}<--cS¹x-BPG\A۪ fyT f7uaV';$'1}kkN&& Q_)$O-N F{S_w(<#),gKȬ|VĤ<5befV+wk*{/w2̬ɴT}"NXJl MeŌwlJA:.u, ]10+<`Y_2 ʢgF=ԶǯTU5m-Uu}7I婐Hڵo{&pj#A3Uw+;ް )z-Fdo6`e%*_ (|eV?"-4τ/١G>WUY{۰o#"E_<2Sԝޒ\F'|sNR}q5 hZD~{",`JJ^~4r.OR"M&}GE W* bbD]D( c|rx5%u*$GϟJ8 e `ǝEPxs$|Ipgοxsgֻ , } 97 :6}gUA'&_i0Y?Js.<~8h46WaЧ6Z'3@~[5- (JNIi{QBWOX~۸̀IEX:td}k6pƙ}_#̘nmZ0D;'w~DABvJnSyV%X NެHe&}߯#CWP Z4g`y\CI?&y7@p]w͎f*C 38*TCsm\#Jh,cv^6R;,!"$zesmҊoKN+ sAM 7j4&*>2ԯi3壚{Ul6 e҉_5uU*ՏtO-.Uqqr Td?LiФ$x찬[cr\49&vVU;T!/Crl'V0#- ,:2ef{Ng]b]Fery&*1E3" $t[4)@Ţ+^Q;o B&:JvJ`d =φ3VO -aW`Rx*Gj̐h<ėÙ"GHrRZl[fSu,uFpQ$Ncf-Ο&szE845,)zc6&.gGra2 !(C(f vq,*>Jh14[OrN-B0DvZu//^'A54Bӟ 5]/iŪ'g%ZP%ںJ>~; 0;(?r9%K;nМ9t<,VƤ^ !FA&Ѳb ﵭfYʋp){.X&WZG# M&e%)#r5S yw(ROy=M } :&h^Sl`ڭ'V~)uɔy \It}Vߎgcmu!!>rmW%].c^ypTS/^6Pj!}U\IӆtmTCd IAѽ/1m"tYG:Os=f}m,8Nt? .dD,Ñ.ٲw,_U+RsJ﹩1,J UJÜOw?鸧P&U1E| uCblY=oVP_ [4fO3ܽz[A5^y¤D0/NTC lBJgW)uI籩S-[.r1rPAƻt$ >FyҦ-. Ww;\ŭ6Ue>Ջ߾G/kr?}-%M,z`iw9Gd٥%Cjh[ľ B{h_QSeWW|1F\ӊN[8;،Qt3+NI0s!q\O@?{XO>2M|jdB%:\'TɑJP,jaxR-c`jFKwg$$]!ԥoC6Cg0ݮ7,lVT$ w`qk+PV;stѿ<#Ts??m+w_!E(-D7D^"F59ƤJSw L&$RK]ju-w*xykw҇4rB G0ju;^Z-(d^"c 1ea LB*sqa#5һ&!l'E!v'WP">JtJ؆RA bU&Z/X{v- -ר:GpH.<)D p¼.BHsF)Tœ炿,xcD9L5osMO5TjڐvsJO{2i|~ BxyJiYSM8dγwà:&o+2b|aحDՁ3NzP>đbB3Q* 19ZZEmIʉ!t]Ҡ&R_r;ȀtLkh{5<8-xx=IzlFw'Tlƿ֡<>~-Gғ9I(d69Z"fUs(bgwP[`a5Op('yX0! _WcgJfQt$}*iitݘZTμ86?VO|s,5Pv= !*52pTI\&|kG)a^"ɥ'T -;K3R:1` oHRh7Hw9?f&DAYZv$T .&L;ӕڈOwF;nx- 񻷶P&dQg~$EHбDSXSй]K.Dr9w#4?9ww4IY'qHq!|;qi*Cp f">'Pg쉥*5~hTw=W#DOH) "ZU"_|nmN Kx.ALj;I xna){G G"6 ZͳO 0C{p$N$ζGr*Sn}Mh{‡ eYiL;-{WHAf蕽%-IE=ٓg;W9t5>7i8ixFtYwϋ $f[,?6ҼVP 5zpKglJNA"<)s'? ߅;EKuAuM1F煙~篰T^3霱rUS:zhuPE(f(Xm8=:NP2g "x-8VEekkVWO%g>*aqlaIܧghUzslSmZ[Qc26&`}}<55Y2ќ" dEO7 _LIf\eFz<8xCiK<`{Ke h2Ḫh$'yRU/֕>4MEŰ,[]}-D|,LHCCf^+D: GEw;Zf'~5ftBK`ӆM )Awhw6;5f5C0TyIep뜆Ɠ Kldj)JzT-nUt$`_w]s[7B.vhI_* u@zti9V^Sܟs5ܥ"0pzԡU[N];)@3,Rx4_w{Zg]j_'%$'E|7Z*% [R9h%z8ҙBM_/Y8dz}_^Q{pu[Hd5 i&G7;+ 5#hK#lBu߇N|x)`cLOˎ O%R_+ [0al[QI,$YDԛOq/D}7+FfQ#nYmk19> $#>98&?G( 66bT? @n1IJ81Y?lh{m]x.`Nh /=6@\@~6|y'ɛg2)A%~Fr :|rRhe-Ts%K7T<?A$[uA|r,ev涖= ĦܩVx_k[im\Sl.=(8˳l6yl~ 7umЩ iFd<{Q#([&zA/lpJMV v,8gKf{=J(9ܦ, S|J)A >2%JUdI+[6 =Оd!vCu5YĶb>ANwMe}tt #<%@ACc x¯|i׃WTL!֔VaEGw}$3F@adMtc45zsEMA)YFI*Fmu9=)D/قˢ<e5[4E¬k彖[g5#f ZՊ$;#=!wRE7dwsY&@ܗVL.l g|yd[b<{ɼەt$]5Xf:Z͹[8x\Ll \my-?] 3xVn"Lnг>S08Hu<5A/T&}?ˎ؞ Bta]`,N}Cj_)KIIVS@"PHB*$$;w742tIFn|| zPekˇr8KLjUF 4݊zVۻ!t2)/z8+կoڠ Z-MˠRA[Pîo91hgr0M?Khfp&:bt5(O_/g߇pdft&.dLT.ޙP8ЖU!#g,arWlۘ)fvJ\V  8w{ŖZENWvCLP'Ntl~{BbBup׷뎺=-hrK'fy nu֭EUl]*Xe<h4ҖWOB?;-Bu 3zFAY|ΡnJ=P~l#n~ؒJ-(DG(/U G8Rܾ("Zف^کAhOK@%Hl~vpa㤉? 4y< "Kx7[ˊ.V_NvWHڱf|A2IIXp;5zB7FE @GbVvqQW&mDt1aqD'4Qet}+~)wSHFugAFx wM)\5. cT,ʑx~]EDnZ1^/uE15%d\Ĵ" zY2IIAׂ_X\O{ KB4Tۅ/Tlr uUrsUD|dc;'4ڷҰ֔3 ;2 D];c[VD 6xBIR/UcҝV%7؎^ሒ٠ \8 ,i}TÒ;0w2*_txaJ~7`xc H0ctLfmh/pI]9is&݂Go>Zt`t#BޮŚ,c;F\z0w'v=j=N;p=^eSn(Bէ-{P(@eǬ{n-{Eء2a)+.btar4bÏ8!r՛2N>qcB:UH8dZ\˵jpQdӯFqHY$([Xk0hd9 7%Qvc6_j\koQ8K8{+VW&*!V4^Щb6sݿw1W| !5\wT%^~74 pwXAA낫ry1<"[Ql@##{kX'%Lyw^9 B7k $@3Z8H^D1gÐ"%( ot'^ Fћ`3-HpeZx[פޜk-5h+nc]T_ýF6/5Zzf8EwnVlWlS^8rQzA>wP[X$OEbQEڝ(NeEɁE8 =&2MTjOO6| PD#Gr&* 5rO lubdWv4tc T]&~@(eaU'E0 \<Du;/J,K?\F' 2e] +.A LI8xr|7/] &MYos ukB-ST3{[b # mwPt4h,Da#,nK@%5n#/L% 8ܑ"y@ew`,K&gIAb$;޸*3i͚ҖU+UG3o|5phE#NlDv3-nXL-8k PD\C(N!aZa8 !JԚd6)^^,q0.ց <3(b0]dڈZSױ81?SLqmxR{c(s@RwˆfAJV,D{b<*jйw`ΐ${C\h)`*ݪ Ќ#h `DkDu kA H!ԁR˯8$ʩ?uߡ'Сn0WzFLjdִYy)- jK٤1(!^k,~'ZmNɾb,.v~dcC\a|R W7N#?'M υ5)Uu M87x͍ܘlЖ6[H!Z+`0%)ޠ5_t!Kmރ"*qTڐZr6xyRk+[g |3DT\Oq c):K\u Iͦ?gT%TI]v,j~4ɽkjzNZ;%Ep98`JG m^3;lC.0os0"DW 2 wU!LYh;ccLG*\D}K6 ^B |咶r̂B*32O~$m&Gdy\ kqO4Y 'qu ZP|D YiڙJTd.a<BxR$"2rwE8ݺWG+z~ܯϼ%7D{GCǂ|}qx6tQض0R+K}Cf)}]=l=aqoĨ @?kG5&1^=QuW^2Sk D_ VaYn"س:!/c 6#N=z˛\ H3|K &spRCS@x%t8XTE]9O{lyuXmkT쿻z"yT9=q&`ؗUgCk]'/jCiswK:b4 %{(S(\XjZVfgGH{Ͼ({B@{`D2(%I0a}_'K?lɐ|"m$!V/Id^s[d7y޶ "].6.%Y|s* ,4Is+䓗o^ 󔂢úsQ—m3La}soHȌ*Z w {9`j@I:m~LuXpsJ'2>"6Z&8(ˉ-KEՑ?9A8vW;k;9M},x+Jb]Mo|9ufxQL-ŹP9>w]\o& e&:QA |zlRӖɿ(>j>P 'ИRLܥ#u|09 7}Qm?]®MIa҉'י+,ڸyjL㻦ijSj%&~sƶS(Q-i,7  VS@PR}9mқv>:1åRl_kv4؁ ЋabԮ=Kx9WPhShj cr<i +rum+QtbaH1 0uN ےb iWZ *kil1 _Ė='<;+|M!4e2VaBE4(rT['j8V~w 7"J*,[*9r+v^s@Z1ÀpiIK;e:]"eU(gzSJ!nb2Ypf9 9*xDԎ,&۹\rdݨiD}y^c>ͭ&3%#+.\B QfO+UU؂.DCfRUA'|4|WR-wЮk\刺.t-Bn,ԞrMf~T~ +4fœʩ7Icz4N"'FHZ7tt7(FL c+QŰ3t'.>mGWwYA2Q֬ (.ۈj2KM!Zrz/'mBiB{kG~[joz!,XX FfkmyrfC#zҬ:e%p*N],HP\A]Ϭ'<3+@18]KPOE`jy$) *Q- '+=#4ŧqtx1?%EdaA2ȫ˥'&-,q4+09m?A'}C<#M^fb̄)H1P_b]S.}wP'CpoZk5aN.Sj+~IwvaqdZ+mI}T4e c s6P0 Ћ\)IXlć"u=Ul{WfL4cfi?ItՠG`Ӝ Cet2LWBbA55Q:’xFg\X2| \ ec}w<PQo^+Q=ïQS즼nSx,JSXSh^2Ff _KDs75mR'Mf|FG(3e 4t !o n"X8efBH7%AŨ_MȪ*aΗ0#>&Mgޠq*COJF;j(*R *7}NoV(gMdP JUp$,"L[Ɏ{S&ب ֊#hiT| ycT-؋t+6 < dJrPws? fI`.7cRM :Diـɉ%a~ eⅥOř+Ia~Fk s {n6A?v} S&9I ^SG#V\Y27̠gQ>Xnmu_S7PpݫVY?]RcrX#I#0w)kM|zp q_s # 6TL`s`} 0\[ՕBrbdƐE?P H}nMs,Ս<̩n^\qw'\y0 C]G|ϙ0N6-+zTHSnOө]:vYaZŸ܆ ~"McI7jxߙثP1@' a?Au#nSO^$q3 v{A@c?k'!c&sxeĊ}9Hq!ڸp/ךn&<̰rDb'610&>v:'=&TcӈJ~nܑ lˏAL\ 8bnvegVp IY9&MnnqzšI28&i$$m_bFozRc`5HF\*Yr|i/_Zlc _8f|W0e>Խ G(Ϫ4ܤM;8W%cz] hÄt>Y'p~Ql~.V6t 6Wu&'VVpNASg26sbNxD 0ȴf0y |bU"Dʼ#*x|Bk: yFǀ,CQ~/?DJB@2gL8=Pॣ,=ѣ:?xCw؂EA!Յi YW؜pYO~XPcwz"ҫ>8qT8lI>e$ъnS#7ANpeQ4k~B)Թ1x?vfH8[Vo <- DK{u: їytPTcƘG/ozMp<|"w*=wjXĤ^T}"ҪKÄ.s#VGw 3iG'8oSXRN'>bP97 _ 7k5.ZGV 7Kn{@wc:ҩ?th9քz%TgtkS 0Rm8\pClp [EfDD~t}zp$znl$^۱KU9s98Q m)!om Jj(8+7ONs , Գ6c;ztL ݟ 'EDaOEnuY϶`m%?))GPT1Bq uYx[^CuߜdN* Aqy[cRp&$LY^^mxTf]WgM.^&lWS/ Ȃ!N@^ܪ &Ƹh( `Jv^Ճ.)EUFXC!6xf .AANa!L vV =xţZCKِ<Ȝ{k%+%፾/ڎ|9 wԲɌMj n vptnrw{.\@CjKug̾J5ժo 6mgVfI'эK ~XHfysD8||AKc% B)h5LA=ӹO\j:\<k3K8qO$G\"3oǙ/?Ā= YcZpdx`etJmB齱Y=` BLW$}a waD*Ơ{oPk@7p|τ74 m 2;@\tz{g,;"_ǾHlSv[ͲCu?6-d{u?FU4άZ 4\,*Myټ1?ԊęC6xQ>KwEY\ccHJ3')ڎ椑0]Fa '{ Z2`ۍi}l*ǐTM$j=$T~6.8Ɨ:Q_]q Gb^(4g[ۂk~8.ݏLZ# 'e=zj&n\<6R qEl`*T!\z}\ ^.F /sA~-fb?/$-DO߸{`r͌VQr,|Y0S HyNnNw$xϊnCvRDŽbpjE \qx},1~%,@fٮ^kp'I־`nBY > WwoؑaĵWب?2?=͈`m/ vIV! K<=<3zWܿK3'P@vT`hCάW qD,I fP}pm.~+`>@l4lp)F=kn$4 ڀ5%WIj/vLj ]LfXEr$mSPs_x,)sĵL@)f:/Rj5O_I1$!.a\\oL|4]?"z?Ov?MUm\V!v!B-QJoRy{Qu!1 +ۯ _-R>3Sk@U&H3йeX$} &٢>W>t!USh(rrԥo?[o8GXwWKr-6/`Tڨ f]Tǖ7IAN6q.Qӧ^ψ%AwͼudxNnrLiUWrHd[]wGFl#wQ4?WXȘ #JZ8s!"pwA.'X!!>͔r}ѫ?9/5mjW58Pkx|s:W* @Du !W1菔*neP9hG3ex=ŋ( Nϵ@c/dאat{{>Dz*:bφ|RHw!_q ci{M> ӄ:&Cd3h% EI 7bk2=?N@ rX⼩ƑqJ!DAkb2Jq:Si! F+̙t`a$I?߻4'5<,ɐi-oP>2?*D%`Ame4%7sIl.2ϯ3m!.2-Dh'6FћWl>k+ߦnеt+AMO9KAK,v5$4*#j>AK+"sžU?$JQJ$lMqad^U-Q|6(;azoK\$ oe}bNVUcirevpX%N (jg UGȫ_dS>UdS,BԌ.\aᬟ* W5o '͘Im,Sæ_):"ZfWZk?[ZxX3 y1nP ^ZWxSZNc3Sۼ6%4U)?4j3'40P-e-4IBG$A`"AVQ.KC q|M"f8`"ѽ[שmpXELś[{#Bb'&Qb(1# ON)'HPdn1d*DRP0$Ca4;y9ht߮htN^96rN_0Ujy:/2@D~gԴ(bc -*=.PМ7Uk/_k77Vƪ9:||;ȶTi~uΪo/a0hA~M-U B-wǘb$6)J -/(D۫ԟ+iNv|wo(yD,]~w0[nԬ+g~Sqwm& i$ffn .;zŁA=pU(`V&lʇ|@s bkQ4yѢҹQxдM9g"Y) č^fU,g|]όښ  Ou",5f5_`I v}u$b~BHP^\&Mr.]-K [Ku2OR*awېl0v5й_z5}oWDU^X]FSg`$29L%&wK٠ϛVB-axYl{'<}3z_Z<}Vwp1Բ z-E$|Ū zo<җx{fv{gx3墫` _,ӃQȘ}^u}1TWZc*ZkmǴ:gfm1YւR,UX!{wJNH{tv_6;L*\<,+~?1mz86c^SJ;yo N FuҗA&[lMyٞ 1H$2R!z/0[R"w|ޙEwm֓6%Dͮvi"7e6QGYKwߊ9փp4?W48&XǼtI odO@`~X!N<t;1kۭaS7[; B۰|CBE\ijX+s s[j)ۧf3B;FbV5`.oķKv/%?YI[y&gdݸ3CS1bcF,d=LHJ5njl/YNK8Fp ๩;C!@"Grb!'-z `p@>Z yn[s[ _"R[@arMemo>QĆi)?eeR (GiWˉ{aY2g3%`P 8 \QPOu:%?ɡg-H_z:/{f+0B $`;C 0~o9Q5uAqi Q SkeS 5ܓν4L0I8s;!PV T&x1C F*C5xwd[۰hфob9+Wd5pLpRsVocsq板&aK=d=ˍL[$ۊ4`+Gt1LuE oد'%*Mi bpMʟnM`l:I x͂WzS,^)\/k/LB(5x12lYpt om Mp˓&0sUku r /pQ K-!k2Ҥ=_wJ5wB3A^dFuDWK%MXƇR56-rS(@c'цf,M0VDUYmb Y1^LiC/ O!Vz"@%wjaəMUKǣY!=sİ&K8 WV32C$X4<֦Mݘ8+DIn`:n刕١O*qT~aX[JjcF[%}fP^A, ZK6,V:0%@KZ~`$0)27EKf& E̼/b#Lxຒr' u#h69t#{&yiVXAK\hct LJa ϞpJaY1V@p(!],@ݢP}V]uYE-HTbeOT/;-{]Cҟݽ#1+hBzU"_/` c㈔ԏfk D(nӰ1jZ.pwl|T y;(ӱzX>9;S-NJhw-yD}O}bOءfy;ևMsLjśfjEc])t^pW)Mgx> U9) =P/UyMaW%.Pzէ46TkdKOq ȃ̓*Qd Q6ƺZP25$^7:B7LprE/S[By1Ω'6"`PHX 4gV ȧdA3S@s+;\8!ZU^3͉=}7/ڦi:=)ԨRn qXZ-` 1l}9F*p,T4󋶕y5 ʬ`諡vZީ˙Hy!c,. h!8θv /XI8#6tj)E"KԌJ>EgtP 𴋫nzsy&eON/Z0ӄӂr-Ӌ- %@NɳlϏ1̴BJ- c /I ya\3!U P9o(Vr0w'}1hlDZQf/49hjҷa?@>\jK(^jM K$Y 9zvTU3?]\Yx+V4l3F&t]MK@F#ak$ YkzAWrw99H~Yv0W1LH-j-|cO5EG"!@#ag0a^deC,3f$ddʾ5Dϻ L3 y@@+`Tދ. ;Ho_wG.y{ks2~VRTr S-?Y$k};l d;5VcNkW^!h<cLh|laGVؐlMpɋ}!|Ѝ,3/D;6-kj@! -鴱 =ߺS*@:rCڰvF~o{IO aGp<~B˦3 KcQ\m -u15f>zE:ߠ%MR;]7b>,*|hc6RO!xk}3#>[G,&%TpQW(ltQ_(M asQ{HHZI/XaZ+J#c7CCtZ Fݩ Y#SxgA6}% GyGGPA|qڏ"[!M@u(#׈@P= X4SzIK g속7҃ OGvt'-ܡ,)fiՋW 2l{mhk}n2>Y:lp18!`q 6pGO8>Ǣ4\Œ3n䩮BӽyKJGRF&G&I A/]xn76Df-.#" ڀ&pI ');x%Tץ}^%2ݲ= 1;)>%=͈kpNFޫu8)gJ}s. '_ ף_lN8F+v5zͷ\_HL^n!Ġfp"}빧Ȧtuw/mswi83i|z 7X[z9WRˁDwaiOE;BIKG$Lui &0G ~g9pïvS!m2s  HlWݧ*\2?8E-}fI'1D/7KP2PaiChң񆈜n+|uYSH*I0ϱj9E'gx|7|?@k[: h7bOۚǩ1a8V%m~CV}L&Kf4y"ʶl;~ߊI1ɞ+nD ;҄5i+[/ִ#9hepD_޴ߪ*1+WdJevVӆzj1CnSo4`QP"ma;#ЗR2ѶeAKLs l,j @#2;Yόvˠ$=Pѻä|Z1OG`0FD' fn$[i5@wFڡAj@LGn04nXFHBJRE04FQ\bBuvG"T5Ks/-+05YC7z2-qJOtquJģQZu>#UQVNhM8} _Eᨌ2 ΅ 62TX]5ȸ#4|C}JS\al!k͑UJUYc# PySLH_r¡ kaWφww.鎓[BU e!Ȋ4Ǘ87bk]܅]scCr2%s'VX:i)8"#!)RCD ַ_/B^b@AtK{kLQ:JSC7oש3 btt+ ^ʟhr9>v;ǀ&cjOޝ:0H2% Zn(9$Y.(1eIH78, zb? zm'R&_1 wيA$W s\3OvGK[ԑ3SljF+g+tsiFz\GAkb$ z!@hÿEʲҖ""Y&E ;ښm^Uj)x3!@+x[jAC' @]MBGG JN#I!,]^"vT-)nx=z񃚘0\i\w/0?XqPCG ϴ9z;\Z;$›Z d|xG.p}1[wqT'Um[\Tʚ۴Xnͥ*AxlLtU^ɖSrkon{Gզ5Q:@x|:|IQ[-Qۏ 4H=>D43Šnb))*j *`v.̻0&R%"*'@KǑؼ>i9QT_jhO4D~Il|yвC[M e3Cs]%4yŤ՚S-uŶk.vL vNJ4[:>io tN4^.ok}'I!ms2cR, 읡CJzE[߄+ȓ߮!B%ٷC#SqN}o(s!e QK(#=2LZ_dtqV6'/b"ooa{2ZŗEQnَ3FF9k55|Mbwh[Pe[3 Vhf`pKɭ!{vCl=yg4v+XH( 4pXyzWn )Wv 灩ڮ!eCHAhgիF6fgr% әŋh=Yr0v"`vg4Ӳ*CPr, @90-kΔʨvM6󀆇 .xmk>jE{OnroY `}N$D2j@uĂ`BOy'U.P⑯t7ftֽk5pK7`GlފRi|^᝻gp3GËxWM*~$EQsùefȁ\:GAFɥxpx9swT|C$Qkl$` \ʭj#AWIlVwr}DŽCvjf ndf֙OweLū6%G=L00<׵a9sE 4`OB?sj+/"O~q L-MN4ʤ1E2wLTFeKTesK6{hs6!Z|nmߤ{-@\(< W`;T>/$*<",rA3Y^|mNAV|)@,ݸڸ3M6'4ڭ,wpaӛdgHJ\W#"CCAK=a=kyA}r}36!#YΆk߸ԞD];[CPkmv(+C.[EEM,aJofZ= $-RtiwP!|Ul5.SuT?6} WBi^ìtFm4*'^7ŝ 3r8 #s@xK\]]5|%`I֫(.Q!4#IbFY_Ud8ҀSdfz؛Ma6AV~-!ݷѿf* G⌺=ٻ䶕 e‰Be-v,IpꧨciKCB1e;?F}U2.uO#hjuD UdwSZmrU [u6A9D' azęNoc9țaKԌyXH6UP.>c+D x;4} m\(HBS"k82Cc9X-t|7Aw5&C Hh)3N>6.}1sуqile Zuk%CNuek쇊9|eD! :UFtkb JWN xCL@( |Xdxǃ:넃 Ja/ t#WA}/h{f)a0CGB-s'+2{۔11!d__0A! (y͝jJQpԡS>,쓉n'!ئw+FA㜱a(xz d a+ESi+N0{ڌ U : <̚EKޖ)3a5x^ ` yTp2)&sCԞ۟' 3fFl50 8%?I# ? 3ѿ 3NrD]&7wV1FEpW03H` 5#Z=9q!CxDtnCD.f cx`MGB}NZ%x~^Vi=fOUf +ʴjlxaezYy)Nn%D'yݎy?jTPX°/՜9B|;K{IH"z&1 0mF .{O ~2mN)q֜C=]mO?%ž  ~[ $3aKAGRI:?WMDP,vnGBM?2!Pe y)v[wQ5bg@T㨒AĜ̞h29W WqkԐBpOA ~3g1Z71/+W|tLmo֢)kwY3UcyWK\n3yɶz?༒ &_Q)~<%O;0ԵI1صj1>Wj|n02v牤'3#l_<' + .Ok]x6Ƣm I!~<`: W/p3{kQe/caSXhl|'ulF>֝GǚL_6mxV=Zp+kfT9DNҘ1 q_Ij>jUlm m~@/5JkSyV9AL =P:*ybkҊQ8 m&iMl0Ȍ:c7LxsNȼ8j0Py79%ITPt u0TKM=;HqsqJ7Nl>É)Haxd. ,Lƺ , sE'smocM?S!‘^Tn*c2Uors""lbkCKA^"ZaHe#/Œ>J4b(}cLEbro5@cŁE!VBBa^i\V"C@?~m4:H:P3n΀6BEKuM5:Pnx O >PprժGY/^( `q$ ;ԜC~[դSWB_]~G- "t 슋U.㠞s^Q MΚ2|@N' 8Jh*0O%,<-Zֆ }UelPG>$1> oBQk*XآH@fc}z'!H@mm7,򪔝dz >,kS\b9X{IRlX}zBRm`]ƃ6,JXVxEdIRm U|GboNs)abP W8w`_L>Bˢn, ѓ}b>^trO7E3B}@bB:KIIg,@euMF›HLi/(*T5CRO=Ff!s;a({ 2AcQ:AxGfnT[8?J@Sgf"K"|S$]yXĽ%^gs?U88Sung$ǡ":'6wr9=_GS]:@#$zeC)6l̞&^v\&&v axń+4q<.\#uN-xoZ?nqVUjTYMMnֿ)2&/5yXm"/wQ'cr(w6@aڤs绀*۳?_._ƶϛ:&|ծz`Ă~ʬy:#4AkOqrk*Wy/}kKMZ!^I5o1Y٩83[F\'չ_r);„}!p],^GH+b֘Q$c2fϧvq΀v1oNh.&Cs]I?;}7\ސsQSY PкD]gd3 M! OF}t/y-Mj٣TɃMUӪo @QL.U3Ж:g-:#tcp;֯=%=xy`GA;/RP|0yDYh:8|9*J-i9hbyivƽÝB+})a0횅EG ]>@U &Ǭ_x 8f÷yC` qgJ:GaQ_w1*O.1% ^fmnA2ŕNα/2$)Buд!ʖ_D<*r{f1mH';M@F9 ̀&pzڧ7IEkDgdJs$O^{5ofga2|U/"çX3R/O-y` B_t['G2[&?OкO;\XP5ћs.3"sEZ.q_uXN mC>>f8 fsx!tTO[zR B3#wn|h"j5{ߨaX磘sÐ+H*ʀߌL2@Fo`[ޏ94'`jF3hBܰ8~ErfYH|S6VO9} G2w]\ѐv, =n[F_*2ޑOѧuo>ed5IzϏ9ZSj,|˛Q61':"d_<\QLsS|W/w.~ND 7!sqzlk7 ]7WF/yWZS>+.{&fw´(:gD*f/rutP[Fw+߁_Fsp 8C@wވPƕx_=I 8[4W:7&ߌrKp$:\؉,90rH`&f0Hkf4? mL.$,&Cx ;"ŸqLvQSg [)|ml諴?j0>)5 ^GWNy0W6*^waF*et1.oEb?(dܿpy7o✎'dQ+( `un^9(fDjO&jumaVU.>ymSPTsA9iQȱ}z%?ky.w*;Npw yCʘ ~a)ZY\Yz \ a,x3&y|D/zwjp\8:D-UQ0.KmZ)yxfo˕tW(bQo* f!FnO(',PUiDų4rbpV({vt @L;PWR?=BxD-WX^2O0y㘍#qTo3[oltTM>€8ϯdQmyUhaҮ`H^ 3ۣ0M2Bԯb7yzՖ ifAEw[2Q:qЌ̗:ߴ:Π `@3._Yzm;O] *#"VZS),D{ B5!${*~*G8t~uI1\ =;fDTEoZKw1'J3H#<`W 6:U6` *~ Qr#OmGU R(knM^&'p + I>;IGN'T";TR"bQIʉWLJA9A[ :J#L*: xT\‡JO"c,; !B(|,]}} {B_u6+NcpfI(J L \mZαzZ>Al . DSSMn?qob.Ǚu_e +<_loj*`I46N"ENY0j.'mKUR0 xLyRO;Z5Zi-֤|#ٸRzME?WblUYbb-eK=K #nZRπl;2'gA0VB#꣡,9$Gl^ܦdہ¶wxF4 tGՁM$C%Rܳ a#6W| (#r[%Z 7Y`Qh "?Q GĭV7erauy WLva«_. :)>|E.`Y7)\5'S@-9FR'ujDq1Z/'^εY(sFI],ΠrI2e . Cz&ڎxz&雕@QnT$ [EEe#vҦ9ے uTL~%*tiX(}0 '%76nNߠ׵{3:6592BCB oFClRcHߛKeGhM^u~%`l-:hʍ"!{o-=pFFK*{y齄1z2[I<8d% }۱߻]Y;ᮀO>} hgFS* M'cz\%N%Rx)FAμ_!7kO^WDvqL&6b?K^dRjB[03[`3p=iJfEk]u0"o@~1lB*~/{f!H[$AwV'I΅WЩO 1)nY34=q.&47L9|8Q:aH<<4Ad">A 1 (Q҂AOsiv| [xvYWJ2E<\o=\9Uz'ɥ{fHwۄGح`"` gLғ#hA7) dw}H.վgԍ9^OLR)J ?]W$liRj_2NDr:^ܭW!~)78˗q+"i'OwT+Mc0zTf $Ue{-YiNpRO&K& jv0]C-| ) 0v9l K/N#B ; XiVa`/Et0NĬNIX(|Q@dvNs1A/#I3( ֛ٓ)SA^Ga)'m," Ve}zT?ͼx{^yҪĦZS7P^3}OϛUe+O>\i] LDV[~׆ڸXR ,X1+ݹP3a3[PY2C5ATiŠ )c+% mCW"u$$R+#K(E>:q0Ha->4Z*KnsblVb{ j} .QLЭF\W !M-ktة,һD7q4 "<ZAvZOЈ9mCP9@5j%Mzݙ'DS^*.!K=Z qz=3idyN!0+$eoS| C o{!= 2-(ϯCA,m?JO n?pz!{m{mi c/|,+w?nsݜ,}"0]#{p\5 kr>P>L<9hB 8yf|`"_i?mG/y 8}5U~*}U7n۟vɗA4䄉Py~|K쾘׋|B$.R<ێVyb^n':H.?k+ZnxIς<=yfv{E<PI»2j1E'/y2lX R8vgA'v!V.'sZqUxttJDuwZwu`m:n; ȏ2Fmg|Mi=i'VcG#JLB}<.TJ]U=MY\hf?ǴsǤRe˱mO0x f~3R[ԓEDQFҵ0I+{ wڙ^'4O P6_JZowi2~o='}6v5Ĺf *'X;;,ώV]c=>a1).BjiˮN,.rܔ}#k>o;xQ)k/t6 IHTv[^>p\[mپv BMU۵RJ >L9b]'m^_|CL hs[,d/{X?et,̘,Vmo4VH;<.oMqDoXBoX'3`{fYRuܱ͈Nn?3p63GJx'\v+$nFvVQM/MW1(,7-BE1dedyr/8N%tU;b Iq!Z^rau5W+ppGA+U(JS[p}o,+aby uԭ?IߋB[M4%%NYzMtWh>Q:ukHlw:&δtlD_[')n\ZŸ8Pb!!\džTwbW1+1l0_c!\&(3B"nfCM7lxBc]UL2` 7||̙C'I7g*u^J\*I)|{\#IiINds^K=H>iz9VLJ"|e効exůuuS>;_j􂺷Bq~oDp› s~ߑl!64;7]ae[g4,|äͰEy]}*n\OeiɴκOYC5-B=qyعƂ{ꮐ=[ZkPy?}n8͎'i⪮F>I@Cw*'Hˆ !F{ ʡAsB߮;`SF^eXl6ןJF)?<?UC`ĜP@*U-X aOOɦhp۞`'c[UƄSJ#3 ڐxa#py$hȌCu#JU2}Kg[^$YnΗxRiFэ6dӸ+ 촣Ľf0~X` m/X5MFh>|llۢSά7 ˻%i7}]:iVwA<6( 3pXԑ ;X9]8=Ꭰ4{}&6 dlg`+hmqM*jyWt@нٰtDσsfu rL; aWPB`&ϭMj;x'<vOôȹJxZv3BΜŞ׃UHx!,lWe ͕ru5dzo^0w82){gUi"kVz.ߑ'ʤY\"`SU!?Y׮ Voùm-HC4Ak?5]J`ǪQwQ"_Q=MA(IJROjЖR=j7-xEa4ׄͫv45q<|TA=PߜH@nJC%s * NsYĀtOO44 × (1nL~R)3t.-l}+R.Յ'].F wsڎ6MWlh[Po0=+lQpрDˀ=j/5ɶ3[R`Ыo.q7Jٓ9'FO<;eG炗7Gh=|g[>'|~'.fNB8aujh%&[ܵtIt 30Pޥ]s ݉oJ{7ߩ.f(ȪY ~jYGiG"Tr {<HWi~90 2l>4f=+YuIv̔4-{Rn?n|"-z5pS3WБYyPֵ(USAHU Bz5>} Q"l^sC1{7iRFU ۖ6k*6!%/ &G9c${RFFt"[(5I?MԺT ~fxL}!6&9pFAi,l'e'-Dpy8_7S Xcw 0&ѫp N՜u\bR1}w8 0*)5;t?W2pDBQuCz: 4Г3zvMqLΎe ՃCH-]ȕAxMcQՊ&kPn'Q6I6`MgG//0EC]0BCa^ kZ;4K gW3Zd9_Aѭz=sH9 H,IC^Xts' }e]_ԓB2h>C` k/kr|#A<^Tep3=,1"l4rYCr) ӯ⏹y;H U )/e5A6=1H~S~ : [938'x%Vk n1 55-4`6OTq CyoQ¡qkĆt ٜcQcu%~kVP5%/%ʠ2䍾9 IfA6ۺmMذ$S¹vQwXp[M!14b5Y:%f(xf%;5LY(?WWlFLל }^?8w ?g_P诪"3` _~ǪZdƎd87ʴ-g#P ΂d:#L,Mbe5Q0Sbz*mtE +1u DR<@NkOؙڿF܏)Ȝ tQ3HքIO^AȺ9>$jj=HzWGU'wforA|=otϣS{Tq 衊uF41ZٙPo _.cAH_| LAEר6,F43 mHuOp{4hKev|r0p]ꆊ n1Vtk0)XM[KΛ^yj1,Hg_݂ 99%/32C|Qug(1w'iv^09]m}X!^4Frx!Y$Nq*T4ݫS08 [5^.{.0 jwyl wrJ0c/h Axkaj u!T*ӾXxdn {ybӤ 2(Fmj-e/tF7t$9!Z5PF>E8iDpC9H:ic~>v];@&ÌV}t1sYܥ^g `u3ur9ew]ll Mjdv Y;)ot\E eup Gn.9P OpCq_D"oC?{NBO ˥AD r] P=;n?0IjݥqN7EtG'PZƮCa}n%N10|0 w6ZK>o>OTl 5to~*AiRFME)5_ߘmo(<$ HX^:$SAt\bc>"Hckd1ϋR(0W;DC'dT;Q}C]P{=竻0o5vrK\$ρ~>C5(jrN^'EWȞ|k4ƟϾNqB.ųvlu쳞 gf=Wn'U E ,B(`4 1x=l;C,51tW}CX=;6FRa^"e""0l@ߡ9:L,7T!* ûD.'{ҕ1[R~!APݦQZR9ؕ".&05lghv~5YXB\1>MY}EZj@P&N~pL" \<Ыv/,{h27d)K/*1EXNC&𜂐=Sb۸6<|\?San?R_UB<|`;rȢ%3VQ+;M;sS)WX鯃(Zzwp{Ӳn^&k]J]qDARg (I{+o{&)rq9#>xx)~, >i|7W`1ng䶴(E?`dH6-o%&)cxsj"8_VRtx?cQžh0 e|CW0)&nM刨Q5`;-ӛKΈZI7(=;>LW!ozJ d+nsD?1>Рjk{"* B] ;:,YϺoK9qd7;DNǶJ]0Yh-tR>NHS;A 7mOVz[~DDk0k;XLP~R7ޮ ,yS瘛]_uJInov;3d>[\qFЏxzC`_{(-`>#4;v,UG W7yR-|פd_0فMh>L*1 ̉Itg=MgIqʠ9PdpGoh;om([@?h) ,ЭUFEY` d\ZI#mEހBl+Sg:&ut(MWCuW&X !;2Js]m#- 盦t[ T *RGi-j9kp`yxzC;\Z,aIjk5[imbIEsg#`?J[=!j/@2%@`Z8)Mn?sЪe0G{ ѣvU(M6PtX_oNn 2gYmI>r klp|-ˡXM _U^zzCșn?DE6N&^+ZFACs0vs wBYbZ 0t}vJfVf5@+>Tؿ|=Sxz @}{Wyj&}ͺx=}W%3t{\XZm,mqZ]M/=-)O o?d57Iv뗗ɧ5@a ;UVi8/j("I7f\bZ>/|1Z[0&'5"E%̭̽9nQ7UuR i_FHfT3evуP22&Ȩx`% FkXP+V1s;V4a'U: V>d0'Xٻ=Zd\ 4ߧ=s8?[U/c%7Y |8<Vl%rB.$=K* W3J0K+~tmsdddg+ @?2CP]3 ۩+RYfذ9;s H / (vG%b۴A{ KKE4)ØR_a^ٝxΨ 1ֹFϗ }1 XV@Z "pHMM#532Kyֱ {Fr/2fu&]j_"ȟ=Bd댇s!>V iU#;3/td.P0#%V:r"W, -?~`,Cn4 D+Ioq68_ ` ?p\?E`.MO9ɇ Vqѥ8&.b}%[~6ifk2Ǣb K͙q3tq(J pGуyLJkQdPa ށ1ZI8 R!u1r/E[*xQC:#fCsb2jztmâm"0JkQ*PhE֋io>R\je ^'Iu^ j/K=Į$QDj\l ž / Bg{X05Jkt,e34CZHݐ$7Kk fPDKk?Mߞ~ R*A^nM፣7Ot:H l( =S>40()MN4aY+GgY|Ù5I $-&OaqF G#+=Qbxa93\y)p`aģNdPݪ_#!Z6iZEZ-IQ+%; bbלrr N Mr5FyJq40#b^M GdoTz'y00E)=csݞN!tgft{vBՂUg#>Y@~UYiitb %G#c퓹A,49SFسLQ*[]u"_Վ]9Fs;bR.ob/ mNexk?|[uH:gxtW `q*$DrL%̯4o2LaK.ObkøHkhf/&oӡ$G8Q9l{^M(9lx`/eOD!SX=C=MoJR4Zeoe 9^YbL\I$;Ͼc*=Y\h]]*4 ]_ umGUw=4pCmScWN E5;֫zq/2EʑnWĄeVpqj#33kC?܃g[08!ᖽ$Eދ,JLDc- 0)֦`;&|acaNX.ҿQnD$w _\.VG˴ WbVXyeGDJ)oC'6p, -"#2Q'HӽT&z$>直!;x@/ _%?g!;T]4O;s&{(27eՏΟ t-%嶁׫UM)/z5Fciг/9^9 fgߵu|Y(#,.:)Kɱcq? 坱rHu"l:uERNyuR<%U1$B_@FK-y|LIrQGn'\˂۾Ohp"{S3>/u$Aȕ,z z^L= U{h n\UJ(bّ?"l |xJm[rӶ @mcIAFP|䱖?bHn4XϕAq=qJwƾJ0Pq{.qTc)7+MmS^,*uZSeuClVX|.O{%l@,DDamuGmdдk5q1VHK4"k&0>/Nx ?8Uy=S[i*^xQtDL"06QJsG8/)vZ ѶŸ2!шx\f;/hΎYGm$ d5 eJ[X2)רc;lshrHu̘MYS{X.PEw1IQo1rFQ{\BӋ2mNU ;{1wF8"n7_~ "v-7 8TH [.=\uubHJZ-ҚB|7%[ʸLx&؈3:Ѻo9z,;MAvtxg( f&.v4]_6'İ~!?bL/,[G5ȵų^h96W>G$y}/q;18_D^I(hu )hw'ƁMMb"X{;ҎDkr']j\xTs%mݳEM6k|$_K@CW7Ujc} Uc!pwí!ɀaz p.duCr8K`-g{Y8;(MBuԹnYPQ>?M "^c< *k1t_*kRf-/^~hЮgK tÀ8P۠ OsW_ܥ3߯9DCq&O}196B GOOfaR >cVd!aN$D}3{rbvFPwIK u.q;/ Zg\QnXpAJ{\"ڎUPڙt23[xdϫ|$|RnVOB<3SlRAlS* +Q/ßKKߠ}Ԋɞx3ZJrC\W`BAΑ@[$4 fWQD~ԿEnzI@Hݖ'b_ YCkjlL"9Pxh>n'g?$˯ǹՖi Aev5~td , 5:Mc!b{evj NЍ[z/ELEt 1a?Q:ڢcvnfpLH莑XlE>dt ۵Dɿj8R|UR hiu-;v]CSqF^mn$ } jA"j+jpo].:~zu&i?p mA cm}/jF-855/[J;Q[ 5 l?)s wO7ةS=0^lzF&4M$pw>Uj x,2}v+ds'2,1E;ҩS$YJ-͓]) 3L.Lt9s1' VL?mB.=ER%3X,,?Y1J_n^ }nzc g:gώŽ1dm_ZJP*VjqqV Ep* lF&ʒ^1~ayD%{L 'na2S>|gqLucR-K]heF xN# s7ڂF6rC^*$ձ#co<}-*M[ɰrw&VQx?e2m̈K=$1v+F5lg#($<W2>4FY4,lT1qT(Rm0;1и8'p Q."$>lGKmP+e.VbE'?CLb)Y`*sdpoWdh8: _z߾'@i:7\U 1G o훝c7}E[QQW9Of5N);RG%-IYɜ۸8tCFMJ#9ѡf5='>`#.,%d鲔lhmgA5f":yTץ{ネZH49u.5uvܲ`28׿pmh|0 2Go1WBSv-Ćʍnkmm F(8^4;U|Uq/דͫc( {GDσ0vGcb`j c!pE_XCgk]?G#/c\"Z … Vl(; L,tfeTC|~or>:q۩,*Ŗ!UY^Try+Ʈ$=p wV?bB:RƌOІP43ۦ"}9RF \U21 09 _N%i ®Gq֖KЇ';'&y!tPGٳwGHn;h-6B!ɓ:s$L|ߓ$#0,YǤaP3jPUz2$wDȱӋRm7R JIkKn@ȚK ^^ǚ~?qP"%.8 8"1ydcH}PW;bHOQ>%1o:#pZ^] i\JF8 lޡff&L mz7z4 ;?V1ؘjM9U3I@T8N@ͧ)kCe$HjcO@pUo0 0(xZ iUDIgR2jiwM-Sp3E3.R9)yVR ߛk"J b8I; Y2++7y*oJrv9zx܄=@®r!t"]vv;COMs) l΁,ToXE2l7q$jC+d=_ɫ=1b;  z43SeDLN=%Yj4|˚P2Y~VJ U?x:6go"¢ ( K܂hoZ(m_^w*.I]Ai>2ysҾvkx>9koa\(-[uלjb?*}u$DG2^MVGb{[Xe$A▰ixzV![ `aBL-Jc'eytKmE\^ `#Y&>9֦\x= yWGAFzm#F>}I̖'gp^>6|@g0kf2kׁ&/ A9WGSxwyKx谦N{IZ_jFI]WP+C#G= S>;ç& xI 7ؚ|WawEPQㇷ:⡍@UIx>Jg@OcP<B3]q"kߨ^腕Y"0J>NS,'; R=M8f$Ng3U(y5͊5~mt~#ܷ}dַ0.$A,vV&'I9=Q}W+2Qj <7 WN `\b$; \jFDۘ9}$A0cޯ׋,% Z+[S،9zVkH* X;ȍx#"9o XWXh;Idwi,;[׹~1@o!?qto\ey_(2Xn cR[ w;QB5PmrC YQ RIg, %Yavv1QY#e`)kRwf:U^db.d%$هchȮ,!Vbaf AI"VY-C7ya"6̀mqY <_3alǃ^-2^sj=]$:[]vWәR|yuPo 3eI7iJIƍ]Z;AKf OijrA߲Fm/k{^0 Dܛ7[Ƕ,TSzY0^x4\odGď3WICaiݣ;]L=c ۟ m1צm7nQMC{YP8࡜n9X+X˶Lw:6R-$}[*Aܑ Bf Bjxt9' 5i|aTvI! bC Xnoum6H;XG0Fzv fxS?ݾ{$.Mk1{c @q#C`A֍'{ѡ賈!Li: Ԫ$%qG]ff\ _[1d_\5G4Wts]X#2AʕFןV+)k_+Wtg‰^m/n_$__TٝQ]#5"΄6O.YebB:8, kEPӶ8840 LA҉>X& \$u&;dz|.B0Q:7G˻P%Di IYq%n9f']`>Ũ΋5DI(N p5%Å8TLrPq~NN pW"uϐ{ [.9=0yoU'wQ8UX%?܅Ҕ}b&HŎI 'I:BS^4ڌA$&Яb\ V#͘>B 廖Z/IGd#_Ew>Wr1l883`J)%*RI^."rC/^ފ vmN@%hSCR5p7<aCl&2&#~;Oy=f[D^(gͲ *yO9 ԘڈJۑHgh&>e)PՁWh;m6I2>kza_C1c[i+࿹o',ͭptIfRv9!=$%(1欜hp#<:=/*"JI(3ߎx. Z&b+)!C~57p& GTEKlr zL$i>Jv t#2m Vh=?P3Č;2fUjUVb A-4%;S.F#V['8sO+dyf52텢y訦K%wlwT3y*}*b(jo?48dKbpl`yyI޿JH?mApsdNm?1B<\ ,:#?-fb OrJ:CEG`_;v i#\ͤyG/x_#ѻHM:+E Io RſıttIkZ):hj1rm,ۥ^gqsqv4=R2OCa@F&Y7ze"( ܏r|4雖/-_u]uDML\[YKN6@p3ٷo-C;0PM3e!K` Y8B+,As@P2Kr:PI9'Bp:DQeܘHsv:Y Udb AS=] ]-nf8qh.3;m#~L!9 a1Dffv>}ډ9'`fC85 Vbe.?٤Q :r}i[zk荈&HtJ[VwPPWmW9j!4(D)Vw&1L+ᅧcj Jokn \HrIⲗkJWƇ[yGŴG,V6x챈yo3KP:YThc*~݋!fH-n#d2\?Q .qvH;O˱@iUP\4Qa XT4 д*䈍H.`I2P[UV"My[3j&Ґ*Z>$[ PXJ]Fl=}C5$TYk}|YlẸmD8 "i$Γ+=l^}0hAbeס")~>%pի׏w*Ö!{zv1"}}9>U}uQ8`6;R`[&a C ];(ԭ"jˎASWėhg-&0.R (41dI<6sC Ѯ>py2~wFw2(ͷR<{2(?V?'1XɟYh mE O{JCQ;xIDl㼘(, ˹)H $<̻h/7ajG{42ЄJOYW <Οr"A9vaWtMQ쥽0wORMWE$OE*Des;ȱA~c["_m;IP8IʣяQc굹Zˉ-py IeE^cQ sOdw(j`!wlX_ J J`$~<{H]YC4l_rOK1-`r21.vߩAJY|Y]!=޾E$}SursQaLJT*o#y1^pH@~%OmMRR64l(xP{6P Xp^[/С V!$OsP|wE3m`;iS.w_#(dcy&D Cn/^EtS w>zt~q:җJd-.l&Kd R֘MdX|S@/wW^&CUK4>!(ƌ6w~oib>]^1w(y !\IFJAc>ƚÞx/:@Ky Ͽ.2J*{`cRMݺk(RT銕=9S2 lc!!}`쫽31U SLtm9)NS6cWJUz64:5/U}lT&ec`5W䭪\)ӽ̄WIUڹ8‚lusgdWXt=C9D!vG̣榡VmϩZ"}zd7]2&dV0>OiŤ1$>Л+,]{K쏜[//لwNu]rkWFم+puH:ĀۂʒJ"})5"n!q(c,!mH[rȴ4A o=!rp8/@&u6r^ $a Px$ MP .M x2,..`R4qo+I$ ^s> MN@l)gwn`G*+Iw c#=^$}%NKۍ;҆g%HW6z%SoD2;ciИT1ׂW괫66_Lzːm©yl!2tDCSEiF0! ,g7lͿλHn&"2`| Pi^l-ݚ̅ ~B|atfUl;V.{|RWu2؟XEMC]G_Ζ۶AwPG,|}_[d!{M1pƬ2UCVxoI,WK26]ekip e FXȆO k,Gl"~N %rRTRW {LT> Èbvdg4sY֡t34FK?= 7ˡaTC$Y @crT~'UA+dKtAni|$ r:]7z}LWhᐧ a`Usy/J%R?㦹/| RB3ZFh`Cܓy>?* \t~P $ 2w=@,t*:, L^N\Dʇ8<jA>!z~Z-*EH- #DV?G""MsPu& ?<Փ-o3,NS,)qWKxvUU[ bMQlPNv>/lBZ CQlZ@?Í~@2w $@ۧle3).bSȉ_Wa#(DCG_6* U+ZqmLQ8}K2%pfpholڏۄ/f J^-Kc/:q˧eP*GzEn 5pY=: "̹k_ r>ۢyHKsʍ)aB,JBrQRx7naPa`[cDйoT7 xRd{Nڢ91 g#vmhOh$=ꪠ&8덇kyw,E*\9VzChI0K.u*ck)6&bv4`QB/{^D#4!Nk`Ye$ࠂ??S>. ):/>Bg4~ivvLНj fàT_gCoG? X̓OJpNg\ڙ+y|HHwo:L1|<S|>Ӯk݈'.$w$-X[(D'df=B'##{%[A+F[IUuw ('łx\^hCJ S(":jl[I)\}b, f"X_/z6I,DbUYvcl,v) iHVs@;%Qç*nkp4wʖ_ň=&#,qNP:"=F7pJQA3RqI3Vc+Ȣk!7U E?sf> K ѿ-SpjPVr'!w!2'3 ~IN-N3kVmlÈ*\zxf1 Mምrsmm;Zl*( pĻyx8A_ 㯸@L. fZOeFsW:5Q(Hs~dR0Q"M^\8we?S6"nZa0ѰHQeM#S Ve)035咮|{hoQLI麑&3▔kFc{dϯ혒ء,(8Wt}@iSEu)*_HQf{ǘ!aė?JBʘáʸߓrxb䬍Vy>;YA[0wh$A~}x oʄR. 8܇ T:%GBz&Ky\!:6dHR$JU |Q1M%W-.U#Ye2VNg KGm-d _r6`H̱Ѹ*A~s1UzfOo3Ul$TΕ.Bvo?`ϱNfEH\?**E@Rum+hHA:ab ƪ5`[!lQɉ_N51B J"nGzUv<gG%DZ8;?@+''Va= w8ad qIup@NFm<|ϨJfutv&{؛mif-Zza8#)/Qd w([('<"?X%ُM@erO1mRB07$PΛGB k PuWK(a} 'Xeg2"*"Ih ~GFk&MYH#rfrG0 Ͷ$)Xs!v 9%=<:߽fHfls:.tX->L[Σ a{aErHyw 2"'mW[xڇV µ_)?JƖ%d^T0FgUb]p| i0~82۳ LRXX2:ZnۻQ?O%pSZG򴓩"ݏX,f8i7=pC՞-ً*KeH_6'cZpbQZQM b*2^wG%^a)F\U$f8o9s(6s{ar0NnZnx>{kD}%V=5AO5XJLr[4_Xl3aZ f ;0<k:S`eY0cXIJ`Sz\h]e%0t!Un0d'/zA#mjX$Gy9ޭv+SŋOɰG/vX̀O&bA0l_IZEQ$q.&᎚csu: S}~Q7'FD3BCm~kX4ƾmz[Ka2&C4 G- N@ 1 2ppivY3Z\)`rNk2k}I+wi7tl5vTh@yO-a[_2%̓wתm{F%v^pP{t}i^wP+5E{TӸ0VӮ6Q H;s F 2;xFJ=Љ$4IKB$OL̦T xK39G:G4-dTq8AF=qS`Pk繸[mN㗎 kY: SX4 C]_5D|L44_*[%.XO %\q?v!0+4w~ٌni}3 yɰM.y.5O٣{G5 т X2B64 O6<ȳƁZ^c;2`ў vYc|/d*V:ل *bT~Ȗ:ֶǐss>B#Bxx)`ߢrb ̐4ŕuӰwi.ێ4$iȧ`aV3}e>¾ f.:>kv"rTjoqZ+F̥Dw-͝hsuW@pd}զ!(]x-[ؽV5U uC~ꉾZswDDh {>r_?VcVuNGh'Y˛>ȴ}b?_f8G)Pv }BHe6$e \)45xF9jfl PIU=60|A eM 8[C/ʾ̬Ikӣڥ,`@#wڗC)% @;C}Ʀ9$W/SDLm'}ɪ۳k"܄1Fp ̌3K_CS&tԽKTfA~ \fH;0Ղºw`P:Ԭp{*\[X&5/=TQ i0qYùLi9/ fvUi} A.f$"b`%G&^@ ?;u:Yp=3hEA7# ؍tDrVډg+(=,^9FQ9xiGI +RZ*",Z%@-H fz^r dV?U\)&& b^d{h鶷Ӳa-}yusVC኷ŬܨL6hX,FL.l^9:o}fP$.:ɉd-Bl`;YoXCdʉ-Gs-'3?%h:Yjz\nE~.{X5{&iZY0` XN?a3dMj\KqT /!DW)WqN@ˆۭ2-eE %ll4KO(dc!=mKOM4$/]8ʞBjW `DTp]B{^s0 ԒK(iH" A~._%&n75W/t>k(Zo\A*߭ņmRiVgB탛B0 j__<)- jC## 5~_oqAB?bQ9u$VK咐~r{@YuRw,?!nuH%|YJzW{/w\O(LŁAƲ%mJ?O?B؈ɤfa"N Hz͍sc Q9cNiSbt @{Ԭ|"&3*X=t(d@!y#@nt"]?Ke0L4쎠]tNB&GQḛPBk !q:N(kY$ObE/Re>Y\@ s,/O2JGq-m8"(U|&Vbe|8.'֧>@)6BNᑱy1lqnEqw<47N rg9jq1d/'v-[_#}KSk!+VKu Jbqiv膴-ɭ ?a> WJ }TBYv8JGrXI쨯n8htoQJ_Jo^u# mO`K&NVi{*cq瞌^;]+*JE|49#N)ZK1`$OޮƛSG].:%ANŽ,v;eJ-#?mgVFWuW\p9עlUv$ umI_mJFfH)3uS⚎)LfX h%vKWL!0qhz u=y*#ѱJ iŕ =GC'`):w0ճ$Q!i^$r#qDҠ7\l088wpwRNWާs,dJ^>*[,j)&d6|'Z_mƄuWb-d.BJ @Yʊxs擒_ ɘig.6iIG/4UkD\>6G]3T2OPNIA4$#4"ilW}[[zFoGw|wV<|J$F>4- CG iWucQe)Ӳ.CN\B3&*sȫ'T폟'H˜86V= i6zV6_kcVSA'Ƚ^@j&[CKKHcԹ@R=t]hS=q{},yZC4B5W浲i[.zevVz0XFs닢[Pnh80lwiP3r$C@\AkF_نmQK6NTEn<*׼-!&\7RpmL֓VE؁A8J K3c6/rBũ=_B<ggCgCH|n0YKbROq!(\MKH+PYgNK}A AnL>ԝά}G8 ^ ߮6܉D&#]0+pUéN\ NIA7Ct|腮#6= {V_Dc ^.{bGe<ҧcR=иIaw!iJWOc]α56 Ѧh3x (8<"FފQ/HYȨ'w-bq՞\Ӫr Tpe>sF aD4^ B{6z%J { u +`~㸨-_%}L=|WPzeUR#:a^nO?#S~Xu@/LK瑘dOw$W_hb?uOflE7*h"8cREZ'РO^2GQy&.c[68&v%TqoU% Ҹ1/|c?I,¹H7;&U7lJcdVuHof6Q{þK1} ^n{Q_ \&TaUX5-kt-a)Zö ۲5ffj2}-4S#Jh"e4"!uGjgey3Y=֋d_1<`}t3j7s=y: 0K 'z8M(ר1Oԕ=b# w: qHYC=ccn =ۓQGz~ȸ (F6렛(5:vm _[ge@+K&OiTWQ+qW51pdj: GTnMtp@, ka5wC hByp8'ϨuGE a78uK<[MT:kPB$3|rlJ(d!x^ ߼F~0>)ZMF6~1$lژ !'+x Ek(|:"#II.g?>D/;B#*NP^n͎/nLTy Emg4:+g=Yܿ\:%*QS-R{t IbʾϨ6v4ƨem^ B\P\Sz^9?xVb) m)9#hyN;S|M(5V2ԪzbVJ ^i]h&R+UOwW }sGG7AM#M&вL ʡ1 Fݸ`s/fo.F!Py{"6=6c䖷4vϠI_Z^ Tb(-j ^_t$ nEH%<+5 .A.]Yj~|6kuZT[q(YQmUuUlFEXѮˆ v5PT' IK\Ș?XAp|ݺ9^Hѣ8a`b^G3ػõ\x(Vk8Α0Ф4{'+Fe każG[W@4M(ØNp^JsmJRJbcEbTQ Rf]/(…j~@kmsja1㶪]KŇIToRܖ<-23gK`|,q=d j8 6:PC").1| O|<d(*[P>Iu 6QnȪq QinKbmf:ŕglpbdPƐҖEG:Z](|>pה"/u%X@ۗp:hp4gM)b_$.{f s.a(R&<֖&5["AEPO?QH›Ke),YjoXCvFYL:TMQ5[Nh1h- {Y8"O.m@ _(zYHL7JmN:3Ps 'v6#;.5͡NLa4LI MCTRN,tW?iN}[߮= ڂszI}yV MY,fZ%#sM*Aa?wqr^2Cv ywVnh5(DϑD^5{]\0[,22wC޸dW 6MF2.HO_gƽMԱ5->`gC&$~WM|۝4^POρ NOo@5[+fNcVS@ }F"9>HJZ~X+EkYU9;hM:F圵V1Q΃2s);mʕNg$"^b5@OOI'p̠?m)!{IT2OHvWﲗXBvMi|]Ƀc"@d:V؜#UyBROɉbќցSePV[i&2_6eFoq R:4<(mSIIT KeiI[_#@V젡.xtkdDdg\0vDx!Hi9ULb( O6܃,BJ`Ąb!^xaPVWB\43;Y%|S%Q'ђ@L3J{z\[b$/< 葸NYE@zDziz;r1t֍ۻB P *(kSG-yرF#d@7s7Rz8~߅G~~j 0v9fPPc쓢L ŤJ"hx!JB*LSi jN.QjXaxuJ}Uf=Xc>20+n ;_`Ʉb6k"4'0A-4)j1tZTaݾV2a5t–uTi,`LpO5Ȅ4Dg Z{klZWP)GR)I{#X)NlH ԷY$/U,UCيX-Q؊e 0OkVԮ/$#Hvzg4V]錶5J3m˽‹ 6c?1HAD,ȭ ֹO"J6ѽK8҄b8f?LK8_MlO4.nCzH{0[f[>R뽮.ɧ<~R-|@ZqЄM7ۆ@{ O`0 'd8U1Bڋoi2}V gL=)Zq;1H% ,!54`Qs8 73.1oo?L3fg^!~  U~ٌLn`\H\R@zbl`UlNLêA>݋|GSL\+YUER 1/x= c:6w*uQr *+?xĐU^Kh,\W\ӷ<Hr&&!&Amªh.pMU#xMY_77lT-k$\+03sl@:C"?lP5 >i)'^EmD*d2Fֿ 4* 'agU$ G3~|SƝyq/Q,-}oR l4"-bh<(RY]5ER@ Ll1{4#qr&rA:A.CiMz)':T@:3xݯ翧 5P D?AX l WTaxZvJ8&60@^8zKHGb#|ͱ{/]Kz)i7lR7h ОЮjepUPf l6~$1\Idh+t)H%mw̙C5 L],T)Go,MpIbgA?1v!nWWV()[vsgVf;S&w(s.1mpֈʡhu?;Wq_JfgZ KKM&Cq@#\N]k9mRl/#p3i^8gy@[.աU)OmtBe).}ig4Γ5XS)Ȅ"-j)]M]6zFc`Ƿ'rA2GM4#F*a7GpNc}i"@a5"Z;/T{@8%aHFHfO\?=~R5 8¶<6,;gۛ x.UOVP% #dY"ƾ1 5 6(dM˸pB)nDsq7Om~#$LF|0hDXt@Ll:ʚXF5` Y~ybq7zPW,\d,Y sܯGu;|wf,Fc 1^v‹zIn ]6QN՞sՈ%9D|C"GvGe^MxgU>My]kAge_7``ՔQibα( [2htXfVwz$]LJ?)4dPBlq FQo"N7`"bFIS[8}p7񎷮x!L=`ϓ$y%DKg)oO fUM8?;>[rPMH@tYBcfݪvq˻ H,TY3W"tsdۑNɉ?Mw]z&J'h]TÜ(UY*R!֐kaBqR8U;1xJE~]:farp5cϒlSHk(%/y ȫE] ѕW(֚/>|&kPs!$y8ZW37 br|A3¬^H7Ū/ٛЂiFŃ mߎ6(ZNFf#kldg8 F;] SX';>48udns1g93CVif*sÍG/~z&/4l:*/*"4q`aF8/~[\fFeMӆ/CL!KaéK1F[o i R0OPRm:m n]nE`X"Z&A?L/ j C]cԢ(9pT8FT%9,#yG$<6ߑ$|jϞu8 y=53735! k 4KZYέ_3/HIߑHXI6f?i}tUT]-c #?K}.~LkAOo``Jifybvಅ58.:lhj(i3 ?4ԒCoݑ(AEL)"-K,WbO6Z<7;VMߍw뵈Yd-&ZOP8r}=u>[*%X:Kk$J-ZT@ p%zk;,zϲi#LFmEYMIjTH\))Ƭ23AEɑ+d.[cIH}>A)9:f}\V+#.ױ3P !;׫˕Xk .k\O{@迺?8M~VY3PP0,𝒹<ب'R$ZƞcLN&S1dcAYn"BPSzHST"!%:Qݞ0Y7}M^pMP*eI6Z xd hɺk؋qS œ,I*2@2}Lu\ZH+%Âz,q6dO^r4Füy z WVM0HrֆW@)о`κ65wxJIúɬnl+c'8dKLbaZ; y[INRJ1ťbF3p Ds9 Z۲Vr0 %0$+7h0lgz[(aXxVDVϼK-C* pb?')m\Q<.k2d'5=|][flCdeǗ`yuEa>DrTLDRC"؁(t߷8_"l|O}b|@Po'01cꤪقk.dQc1amBֽbroP_z 5QrA}/Foh+Knc>|fOm bƘIN]H[ \ٮ>@Z gj'r⢍B6ı\26'o_5!4A 15u=$aZ%8g×Ѣw͍Z7^o&5f %D*I9oaK*25tv@C^F5 nJv . ՝Jk!x->p {P;I֧&SYjekk>vJV_C"d`v]W?om4x4b'f7d`5 =$ܞ1/1w/#+wdW늌PD]{׈:?XYy0rټĐ*@@Q` =VEy3N*5r1:"5z[~6藽3t^3_6KFHlSAxOӧ YpK'O*DsG5qlE$9e3CU֭=W;WѮn^ uzeF'VCjb8t-?Ȳ% 3(31A3$7a%bC4t:Le'DLݰtǞY P,5Me}v 9 6ҫ#ْ٪?[u}`BG>$>.X{leX&Qaޔ70ic2+= 1A MQlm)ggX('j؎r9N@#7!ZЧ;H&'+ߨ-ZgE [Ux0*Z9M{K^Q '@X_ހ9tQp_sDp~A5L,-NӵkCޢ]uڰ\V!So݋Y碮~)J˫KZg!L*JHyT>d'i@1|4vwH1]U adsj6׻>DnkD#y5_y1_5PnbK/]N}C@vnm~XNNFna'&ҋ fb%TN- pKpcШbYr-RX-I} wͲD.ȷ_-U\KӂOH:g'v>鐎İgM #?`z:;\+\i^>V[ř)r}Uoӏ'HqH>'9I K8F]an.fh~euz8F /$wWЀy2"xu= {Z3"4%%535`Q& n>~#0ǔa:ޠ 4+!""n,D!mZvGȈsut6KLD_GnZ0lp!>3(@{J?G.XMX) A9[},`aUBo& (ӉyU,.k2 o}^ 0^؀i6nA@7*^GouMXW'tѬHakm,KJݔD&xCXoOm~*ҥاko\ )3}y}͓Gna/ rl'Gm̮Llo ,q cƦT 4m ܢĕR\ٰn(mP>Ϗ$,-{\_w,&g3 :\szւ$E:$=ܘviZb.roLtN$E,M.• $Ph?S{MEwM!hݗqot;u.J~2▪F?j WZ+CE4 }}P]1'3\E\ЅVo<#>:H'&Mfw>2,~h3!V3r0ϱ cF}CBȮsqSxZxB9[$ז6o,Z.VU+JPy%epֺ;FYVuq{~\Mbe#`F:LIXXBX6ٜ>n?Bj + fBlOFK*X(Az3Un+tϞ=2< \5|@~ ݔLd~]Dž WuW|JBe)rg#IK{"iS8XYV&ǘARGat*`7Bc[!6fZ=uf Ŏ(ؒPaS*_2+<3,t#hOI:I\Zt"R%9*b3 TK@ <)U:5C~mBvFJ: .ՎmbG}>wiR+E_5"ܸZ ث!;3T+&`R%k%%|:H=G e kC #'#ehM ٍDU-lVD@y?Ne4KL'IUTd+ߺ(!P#/W ҾK&;jH46l_3+rʠݥP2hR4#Q_&kV]FWc/{=a)$<$S17ގܐ1ԸQO}Ÿ 02k~LbMC^ cT[' +"؝Cp9[* %g|@lc/> @f 5Cg^PYpk,ryjVٞTqYH $q٢xBѓc9l*?߳j,VGnS'Ԕ:Q)ED*KP"^9Fl8`UFBqФ?3BZrgέ.c5FWppPn/WcdBu3D:_T.,!X4>?\MGFg>J· I۩0) L* [RUi> :Y~5`K}3٪c8 4:^s&UQc+Op^eysbQw4c[]ٷF|û NW`UD#MD"acl&BD=VNB`SL}Z@A}-ס)'5ҟE>vMa.R>{i][{bƥGk蹓L?.)< dX8 w@EsNLH G¾S/^ng }aMsCG⬻ 9F% tMrhSiͥǞ; UQ߾S_voΆ[,m8)j#E#;KJK4nDRVRhɻR~ {헥#r*(`*Vy6c9qN7e_yڠ;/R[}z竰kFWDI\H[8HH%R]o)1j1hk+R<\V38 3[ҁ*Ϩ- Ug3+`#Ð6$-vȿ~MR.(39B_FޛPJDأ/c*Wjnt{&z N!7MKF gt~7yvhNp^!@վX2SSYwE .g/)%X 0wC(< U%G G ܀z}o/8`9m`Ll]]4n}%|5=`F`n}D>A6EktY8-5뿝W@ *Y)cz^{Sq1n);:?KDy&kdgtcp~CF+iA !&W;ԛ/ءh)Ɓh?tHNf"0鳪KfU~kk֍ﯼHcׁIͭC{J}>d/60~#&.h7}mުӀ)Ǥ?Oӫx!\1H-r;0!.]G(Q8Xe! m8[v>PJLKeJt߾x9ߪĻQn2~xD!̡`B k/m츋cB>Y7zeHtA#I7)q|򓂝R`;_SZџ/:?Po ntGtkP6&v+qBj6ZRTm#Q Yg241hFTQsy5A}pAwVFEhm3P]_sV O8Eoke@꟩TI]R QŨǎRtQJktb @}. k[.{9:@֫DE_» 4еe:3m+,2u 14!Qn5[csxpR~1[x/JȖ9[c Oӱf^h𳦓v:VӻDC|@)čcR{}v$ يRU}p.TbD9,Ь0yQ |Y[AHf0 P-&;< +:ͿA k]H]"ox'U6E~{ ;9b^I70f=h$:r^$phf>8גD ,slϻS"}W1➬߳t Nrė+5fd;QZra?QHlT%b|C^0fH7Yoԗf(vj9,i2>qI!gap^0_r.*1UKZJ Ygk 409OJJ2!G],PDFJ[KwQxx["\F B'S˘~6KnӢth._%vh:qώhz=C<1 rgvs;û1[<,,Pe^Iơ~|,2¼ )*Q,BR~d_k4G˥S#uL^*ݽ6$ fmnMVS  i:r҂a5srGKiEabF XVMnߕ3hl -x  ôrzho֨A%}MISKJ;>>DxDzyykuײ#oO:=Ҽ_ VdkbC4.0z/g^ `Կ%,3qz5H'`Q%o)ޘs1 EVCK~Ow< @2I-tM(H#!0zʤeXB cOA FXi=ȥTwAN:` \7E:*5bkZU-[gs2U j8U~,uwIVT=HÕѵ y1*-"z}C|(Ae}B~uS'ac44EQxّw% ݒ֖9i՟Af^ ,a}DEIyĽ߷O|{ӗ I=wK;دOș`m!w g;HdcމэV=aHhPp`^7WR[`>A'$!%Dw n]DM$YΪ:2㦂Egϖe!>υcʒLOCho4I)]qFLw& P. ֪ۙ1坭.K)#Ly?lOqƟA} D1Јp0ɦ U7{l*6/S-pٮճ@aiVO6lcGTާqlL_ z,^83 kJ i@m'$*ޞ <>mo3F c*(a)dyxx5a[jEUi_eQXv".*3hSluj3 $u v+6 0!܉?0Ra -Ea fb/A?\ѼI"7IsE/5=? 0T Izg 2^L }.tCυ%_"~ycKQ.j b ~*d 1ۦ 5\\ 2ڌ@T+$Rۃ cm>vG^'/MR&(> pƼ|(gYay<9jN8Fkn wZh#-2ɀhߏxq pJZp{5!F 0M QfXPN-͎`A˞0\Ĕy:4|/)w-X p;Oqt^6ƽ)b@H N6Υ&8ZM: *RHDm8* 6=sS{^G{Df3Jxv8kȞG5̮lUbqpӫ)`7q8 [Q ):L0F#+t'R7̾}JA$į1م9#IiL2Qf67Vj7e.Ճyie酢TW +Zdc!e6 %j0lPrK el"S_Xgnˋ}x ȝ|sWG]G];Ds(g:S^Ku0]w_2wgyHTbe]^̘@P}*icőؿPIK>k,?H5;37e2)v_B ?/R͖%AoD,-DΒQCgRQ6 HA·Fmh:9 ?MiO6pJ>[F;oFL }/kM#2swCI#o6;1q˧w4v D)6U7>w R*+߫%fLp&qI/g$ҋgy35(rW/5 /O?攰pu '@4LFo(^zoSUD["rҝ}3! I~q@EcuwpY̼5ِY|Ц')峞1[\MBƇK2ښgXl`*M)Ji{"Sll2f4lt%rR2~OD;q>俬G--T9ؘoF%aϽVggT jb l!? ~xa5{uqt)8xT@N32{k ݰc ȦWG|鰣#)D@ ^@ )Fcem)-4ꭗSɂL$`igAIH۫(*CRf=bl =t30i12^KH*az,jc]~ْ~ AjSP-X>v&e07: )Xٴ'ĸާk4lS  sWx_Tb t+FETh58'U&ZBGGZZZ,Y}s|r 5w]߼bi$φ~9zmUƓKponk?&#nQo9XP68նy;˜tm]T BFܑSKJ;2].d"|Qn?KP*v"ǒ5_[ёD4Az%{w$}18ǁ㐸/n )yl3DCmHhrA;@;quH;w1:_d QqgOVs@r^`td<+^E_}5YtN+>V\FQuuoW/Oߑ3sM`xk3%"%8z++n/TlkJi* {$IiVUoT]*QnDWkℎy,s\x| nFesn6kSA!/Nh˫owf;5$zSrT|p VvG Le=;-=p*Oޤ$#G\A>.13%~8Gcr 7bHy6,t#b![_!XI]|pChi[3ژ`h)*v̤3nls$tbZ?&9CE `W!y!fK9&2T4v9/fA A\"i9D`GJ8p_q/"ڀ]\^< ̘TGMTVyH̨Ҁ ]0ՖSA@Nb[ O压S r{3.O *rHG(Q-0dU>E 0`綝Bzt!-'!rÕvDsO| ?U_@J+\dM'I"'rlR\6=~Pn;)5I S#|? ,[(s2~ueᜫ@> Cv#Ry ' PYA"6~Rېu]RW'Cb%MpUo)pCGZV皀aJÑm;DV{5*6ojR N@`9` h'[9H?*nEW|F"E#@J{VsTou7N"w x)+yƐZvO8m[3d~t&F'@0^QlLqvFB`Oz kVfm\"pQ1)VeN! RgNdIJb9P$ZraqM0v %s{ss>c}sԓ=FJEtdt0TܠeNt :LeOCcbUVidQ_| |-OSȿ'mC';0 [*H.Ǔg'0]U 5F[xC^5DŽX%R@^+ڍ) ScBMI~U }phĖoQQܴ 6Ɯ ^8õA)Ւ_7V̷1[@i!z$n đRUW<vq-8g>Exz3\12gfͯlCi IsMtu_#2x'\3vzhbxe63vZG)Fo <캉ćeА6d.;Y&e,r" rLX jn@8XHUHe0،}nOXUz+"s}If"{đ jt,K,xUppas? épQQ7KNSTF !|%[(%{Gf>GXJwϟsȢ@O al9(szzCF|rs\M9;\Q; De茰x^P! @*r%f*@`2dz/O&.TݠJ4v'r\Dƻ>Q 7 n_)2@;u7Wn64EgW(t[]G3IZ8gZ"JF.dr#$ ͅn#TVeq*\ׯYzK VU{d;̎&nG p4 YAOXJBg{$q?줽bWZN|gLƴxG!٨ZBOTѕ:h5XE->9,4Tc(GO] G?ۓ~e%B`,l;i[N؜Ty1MF9sVDil;8#y. r g(\o`u$j| 6>"JŐ^1!@,A7Ym"lc~a's:|OG!5OϽ{26XFd I )Z%CȦse2?W]UAUC͉,Kńq*iX0OXPoZ;I|"e_L1 rCOX֖F6q"LW fNS:f@%d>{i1+&9t\D>&m֋ȫ ,;:\3㻦}pȡ꙱gvB=mexYHnjMo}kXMddհK3Az1c\meeH=GQI<4`Qߔ\c{зgNC$=5Ey xEퟣ{Dn3K+9пudlVr'{ևanj|P 5aCpFE"z %v;pbVAt/!t9.&՝^g#JSZ%-,ǽZ<'BGISZه iBT5~\6XkzN7Rjۧʬ(=AƧ59WmR4/Ap݊ianZTJ}.Vc΂(F39W~ c=5g$`PLn;!D4J?خxcmD?@5 LH$7)r%U`(11'-]Ȗ5)䄻ʃur9qb:!&jL%/".?DkC^K rLQ4I+odfbiޣlq]yu/ɿL|sOERH9**|,|Efj))gjN͹S#ƌٜdkPsE֢3+ 61Z?) Y⛿e+g%@?]=!e,w:CA/EF]L4[kD€y,Gʂ|#jZX@1my6S`?p`H:JZ+' *tp]ʽx=_euJMR^㸣ZaF'/9ۙ7mdjޔFf}76T3LR8-+.i_RGdl8qC }MffB`ÐS'Yν|!۴v{⪘ú]R.frT 6Jz9H:=17YRbH tM]pȜ) O}/ ,uS7snBy=lΦiW3-Yz!E_1Yͧ)DǢM"JMgƽܱn[ e_Eb=f9B^\' 1QjO\iy ހ^QD@A쁄. L,&H}gkw)ƙ4|JxJo {'whkZq!{-XxG9+~j}euڏ UT,[q &{g-mxÐmnb)+M)#iextJ gꗵYS%Ġ{c'Uy[ެ,3嶉&>$`~BOlK ?{P.i[4^|aFEK9[G&bQ{OI{9FO7~|Nߩ~M9 jt \9_9T;삳n:j8ڢҥݟ ۼ:5sqeZϑ@ɽ+X4eߚ Ry 7Sr:  xZ8{E;ޑ;{e]l2SKаyiˬ]>)j8{))tYB$a 5>&8̃LvJ,YnߔL'@!;=jټ0=efk&Ui*N ' ;iwQ̏gYH򉯨Z?G\ Y`AiuM[ZbQ܄+ _t)k%S;XEl&_FOY;Dvqt< ;tl_훻IO K$! N 3gy RH}n~p)>pNw־]ϗo]ei5cG $kR|H0uS&\|٥;|.2DŽG?[Ԭ9@?eRTnȠzC,fhJ[ t6p51h Z_ürUVw{38( ot#pSQH*_Uc_ESdV3bڗAp5S0SF-(MN, &\'c81Ù!_hD$U:jTԾuhG’21.F5NU'cKbZh&Kx}jÐ%9SWry5[.)m6:j'nqE,\zB8!7i2C߿I w0DpJp#-łMΩ0%f9AGc.e^[Įb 's9% S8m#,7N;D/!g-?7C^nÆss`]%>`5ݵ6 tf-tJ$S&XH Eqk3Gr*FBdӖuD (U;ρKLvAu#eёQp+6'qk:c9:O ʿ dg8vfBN|Urʺ`0?i ֑+fB"XBjw ?lBx{vi.-)zj[ȯAޖuW'#mcx&T+A fi>s@іNqi>CZ4#+|s]r kRybzIgjs(^͊T*d5i;џȜmeRsm۶Y {l` SZl&oaݩ盛/t)?'E|A8a Pvzȅ{98"lPkctD*Nr:kA~KB<.qe Yly ż1/B4? ?yMdÐHBb#d긯~t&^Vp2r;h LD )(Rc!LKfQʾ)JnO_4.Z]z@ìp7kÜҔRw!>VWx c>[0tOdl2&7RAqڗ&޴Ĕ,; 2QjiheQ81N REK}QsԲ|Ap`u #yy`j Hd؆7u#@lKd4';}D4᫰U iz?gLTO1A郦_s-ҽDe{$k]ё($A^x7n'h!0-SzvTߎᲵB cA&bY}d%;P`1%jV9"h\w^J[eQִVА߁'3t+ h/:]e\>D)"3pٍ\ ׾zrm&=~t#! iw?`a}=ϕZ^%.#sGŎf=zݞw04,1 C h4H%HT_q3BLQNN%1@4ڢ>ĺJy ¼xn jiۻy(:oL{L]65Mj;_='/*z!ɔRJٌ馀Mc .R$'3t6ml89Cф(Pΰ᪲ C>q3Ϝo -JF%ؽɕ9@&aeX*g U-x 3V{eځFW@2RasT7]3I-2P]#򭹳v85%z)y5Ҿj }s61.+![h v A~P`$:jeÂX[pJQ_n !^5+ L 1`iIwaP |K1zbD=7'{Wb/?A{;7)>L ?0"#pVPAFM޹? cI!]+QIp,>Õc@\MrwoJhOVz)7Gj{*'h\B "E|E78hߨ ^ΒuɊGEW>Ag%>asw$Ti<^LR6aC'~OU?ބx:^g&Zoo"tYʙŲ}*R@ ~[)BDr)7ǒBp!!}|Dn`dKzW.6AR:R|7爦94ධV#GzVMK(vUQ~`1/T5=>bwV%O ԇ,Q 4FVi)T-[ujcJRsM2kG} 3[[s>TUVEa+8vⴑMbDweAݥĖ2Ev]ڹ2 :|ZF<48RfCi-V*x^2zBP{U@ o?j՚~K!eoBbѕ?|@a>5P)e3X (pzY_N8<%%Nr}1kjX{ERX%tɭd( 9qП`+3T+ ;t8;3YǗa7*t筹>ώѰ= -@9kr;rU&x"%\&V1<'*=֒ԧr.~KV1=8v~k^,JRg8КP'^ HqŵrUlnji"Yol޿RN#騁4>0b4_&u p9/w`?b@smR:fY#®YlTYnT,;dy}]E i ӝ.&ĭZrߺ=w \l id PB>6RdaL1~+-I?k ?ZG(Tr m# r*$RZI!Vg=9pQo::J{EV8߮Wy^%6Gڳ鼱 /KuZl^9-%yY9.c6i@ȅ66*KɋiR 8Jf%Va*clِa1^ C[2q?[@mkҗ-2J\E,z1#?hfwa0ÞeD_d{b(""8,4 3%4[jA,͌'PVBZ;_UƇ5ALo`Y86w-~ܣ,<`?yaMoҩlj%Di=`5-.յJtl|=72p{Lx ~9 yf%w1M}Oɹ.!,{%ou0#}sNV.Pmj -̣I%TdͼSb$"ߑS9cZq4VbOpN|kw,0'mT]ƷYtI1 OHFوH`E5`=VB$?MD4CCب)N:[\]7;:gN9)>Ry(}wR'.X F Iֵ,_Y3-@Tѽj b]f>>#9ӔC1t\,wO{׷"dp@44P< $_p&3S`T.#=鍁㘙>Z|L\R%1nZ M~/ʨQ? >(nƑXl6!-/u6Ju=%(mv;]x-cCynwHhIɗQVfJ߲tkO!$c}3wmw=! CcrXڤEh~W=$$ƦM wŃ,IθWmDsX!|A1Y"D`FC*,ӆJ@TYQY82+JQ|f?C(@Cgy)WI X EWCG{E'0{U^?2B_op8zV56 2544EWCd~RC TD$]d*W* R 狐zdB]_l;},*H; Hcd;K%HۓŸwʮ )2K{#St8p)6/#[IX:۳O "A2C /rpiHXRhKKx`n-t lt9IS1vz%TYa[x3#gLY[!k]"RT&n`_;@>,M>JET+AMfoD M<G=(PZ *}g'>V.8rү {؞ou~X%g5Ǭ IGY|Ej9^rk4l#{Qw?P'7l.8̇'IOnew**ƲL{Rȓzrsg:&i`:%¸U[q92iճDa'u66$!er.zə!nL-Hi/#yKݔ#iEю+F(D uy70"af^w?8U=2SX\2*L0^E} QjRA 'rJR\/?1Ѣ;^qIh˾8$H)\s%?+sK4?ѹI!?uDwWrM< L*PYad\ 7o:^s}۠zt{5ųu)/|~Fg4B+&WK!⊸=xpWv aorZ\dD4i\6[I4PߋO65[|~j@@:'1>IYIޫtȻ,.uG2=u< R!7r8iVͫ4S gȱԜ2cKJ 3d5jfEX9;lQMTX”>l 0rEi}dGMFn7,Xc-uUyLA9aFG~M<6F`Pvtib3,,\LQMTCZ+RLv~_KQ 7<qMY+QGI…0Ц?8xJ.ij8DzX-,d@ch?pEz+]eLjEfIWmTߔRZ"Zj+Bn@L [ǪoۙT*^bdJx ؊L0]*&ΝQK}Dê+ 2%ikī4D4>>%ȻO[xcOoZcH̶iӡz8=gfSCr1Eh:$ؕ2#W)Zv"ZKv|?kFI^sygd/&e[ t XK~Sw+Sb) 'm\9FA50ER%y"*G͖=Gn w\:HPnLL4NRxLfxUWSk[wdWK@E:mȶe=ș`3Ʃ4"% bHaLGAjD\ DDYC}YlʎIFv"%O (P(bq6qAؕ>c4r _d^#(;y>Io*Ɩ^>`MpB16r= %l9{& F.iﹾdB*J޽<T崿o'5$T@0֖Vua!֧Dznf+1l>2Xѯ˳o|Ws.-VX|62Ǚ&L  a;$BPľpz[֡`@R "N}fw-83rG5~*WѧπŊw޿ Y|ފ@.f]2>r$x5>sX̀ :Ty Qdɭ+#`Z: ',еGĄ? `0]j@mHI4JDRKW 14MD1.t0^Ӻz ns12菇$w<皷T=N(13\Yay~O(`v hԹ9=[uM84oⓑbts0k kE0W\Y.@ YM_hhDu60Щ??[qW2lZB"mPu P䍫FF~(#A3*|ЄjX]sh5k&i;$.ג8pem6#h'Gނ Y1+r!@*lWs00> g&{ldQE ߕ4Qpc_\JWj-QFXECQHijx4^Ny4&\:/1He 5_ޮ7=A}@_wP!252^{*'7%fNsRrnƊio|i338ғ\ԊIZFEm/:痋>FqP!j$^ZfLJG%S:P ˷F-GاZ7!<vsCl kɵ4Tߩ;t43 ;L8ܨk}V=ں@$Y#<6K)Ei*!?!i1ȃnQ!m~ɤe_rV)3PI ;M5^CSJA $૪eD)%G+s9xF#·uXϢ=7ixߨ{1f.<݁`hǝ88Dp'p`It &To^3~UL+:lI1/I2}ݧc:OarkSWg10>v==㿃zB2uvg-Qh;ת95M6mY0A&/`: ]T 44M:vɯ pыaB/@Yi}BE[ݚ)'EFV)iSMoKKM{8/jh;q,0 LJ޳% .t39_[C3xa8'p5Ehsgk;ft!BSfHNy]UY3E]_ ^=Z;޿9D0}SQ&dO$*1a Xp;#f+BzOص |`b1wH^!*A~Go&ZUH.ƄWu{$NO<2ܢ{oZآ)`;&R\)+ oS'T7|-fP-2JQ/,E*Ccka #/J9ڭW$;J!E4̜3?>OQ)FfٸOu**45 E r%Q%^^?̩ܟݐ3KYƂ`F̗Zg}j9~*Jq߷ GA"%Ǭx!8PmT .MgqA.ƠVqPY`T42FhB&7kFy"pg( lrL0KNٳ=5`:Y1o>-I2o\K ndS!?þ_+4:Zeòg4}osinqQu.IZ+lkgc'fO7]Y0@>O(_᝗uV+mX@ 'ОZŨ~ǜG {Gיe>./&`h\i5#9;C7tk7\ ]8F&&(p-V*%L Iw5(@ NwFoXw( i }ê t|!n1HNgȂz#Pa g#EO@'$''ow?'ZC_ c:{hea3W3$i%vҷRa'i=R 0TN$Wr1?Cde*I(D_!7e AQge6]>\ţJz9>ҷ( _Oo#c5XEܛ+y3&!7"L,(+9Uٓ7[ﰋ&>&?\%;Bv’ W~-hS#ή ߯:,;1"k6هJgP՚' ƳFd̖.:8obqg(f4*^s2o4N{p ('KR*JyAJH|ږf*tnsM3ؤ`".7"Ӗv={B> r^v`[S0dg3]tA@3wmg]T.NیWqz>k/ǠPW ݷs[p2KY|d{Mj0x2ߦY*¡Bα¼Vl%vdhNfD"بUIxߍ&QjB%6#!* I!bK'+ l:sI{'h3[;Ӕ lڃedߵce0e(0VBY@(]嬝@\ڃպ_0ak>&z>ǶsLUgb/bn{NZٓJ9Y6ֱ*wXhb¿ [sꖼv??q(ZQ|)4Ԣ[Me5L_{CJǶsgN]e0)v^cBC @ Mp3@ w2Z:˚8T 2-<] qϐ ޢ0˲l|ݩB=ۄ($7Q;̜95NA[o4hװGEؤ,3^1jK#b z@^Ɵ:?ȮdCE'̊!dH1KMoJp3b4aօrPmFVP +~]Uqdc!4T3lɂ=tBeP&㩼8i\Vs_{/iդRRqג|t*1b@ =Ԥq6Qޢ9)7$!QZ;=]<0 ye[6_nDK;f9뚖)TPaKg5C/@3j[:IٛYZewGr+lG+x3I'GT sf|>g*L5ǡ] o8̷ Y.ר(޹u0 VݲጺrxgB6gnvihjtuYzk# ODV 7HlWF&\8\tO~h7h사T;cl;Aѝj).iGRsgԊZV#UF9gY"~yEc yBvDoϓ~xX)T?P\5iX^h !b"x^U!V.f0:{B/7&d¨J^+OiN*\e4[MrPuzU9'NOa0ntvkv*{LJliKC'HJh.F=Pq)]K}sܪQbWiUɉp A<B#>>% ƷmW6zm=NF9Wb=I1QrM_tn2 }D}6kǣQB86xQ}T,ZuHIy x\ך Sz 7a$>6T{%X˽7>E;Vmb#ᙕt ^uA]oA͂E-7Ym*(~(@>P+2H!W"V \p44  3וB'ߒzf@v@[_ W}pOzAV"a]k?@Uwyw \k@fL*jHD[&O SXSܽ(Q_K槊'1rAQfT\uBʐ9 H7\`<+q&gDB4x&XY:t"PgUUQ\٭_ (QI:%$YJ<%,<1'Z4FgfJ3sz}{1'_:oQ'wE5_JkNj@>05 nIsSTFZbn)mn}rսݚS27AW=NSp2 'ǒ䟩(Zuk8 X|N뙩zowF0DdI|.˃jU4@?F(2k݇)V)g,,@{k#h ]xx'^bvlwRnS5ps;gnF~ [ aJ),BgOxo7WE:N*Ӯq*&j/murNw$N >H>ſT0:%NwID8˲)\^H=d^@<::<{h"+} %-! ̩;E0;yqߍͿ7@0ZBpF'"%]t;|T(RYTYkUh?NP ?JwC{իg久"5Fk&lM&̔tL C(pGσx@+WYRn;̨@$J 9%ӷ\kC5BLpjOxeFoT @\@]94zŗ_9 [ h/XHua(,m e#_vH$oD{i.Y۟|@ Y#P1qO_[ZDg<ю/ZkEpɁZ6;hںeޤ~B{?5GmqogaZ“ZNCU;6 =A.gf, ;8e֔x,3}$}"#OY$B-F3_- |*6IA΃MYC/}-'fxسIüC7Q<.߳l;  ɵ^ćcv#_)؀y09+2o>ZBb=uټg>=.#LF!ǻa*1LTUEEFڈ߲=fAM2b,f=ڢ g4r0kXW_*Mɴ؎RT@p.ym"Y8j9c0FBuALۮmb~#D> "-8( ӷnaH\IV2}0 g=B+HW|ŴFq2@\:Ķԝ{"j5Az\؝`U]6deΰCZқ4btcbMB_7Xc\o)u9EE+&qcwHEVɋ*&uʠ~u .%2:[2q_2vLhj`N.<˭UٜJc(Ew-!!2-$BDH_%R SW SEl|\ 7y/F l-6> B7Dj+pf "d #|GLPqٰ>ŠMQAf̷DO ig(>9q' Ն!41_\(ոꛒ!z;^ $?5?Y2]՝6cyÝ(!ˏi9&B?| 1v"Rw|E5~q'/JM|} 4nvp-h!m.%ANigKM,fNca9DxwiD.d4,%qΖ-,'Kf,8xؖDF̨8Rɵpb sR7Bٓ)/rς9EMP]^?T/ܴD5׭ӟS" +׿4!oޡM7bv)]ĕ?1U#<3!:Fe PPP_SBwHd3O= pCb3>{HF;Z;vZ&sV/X䁬<&c^,Qܷc-eY݌|[q"Pmo'  oM`Ƞ)SO&ID’{P./SKRKOcp˗ @߽g Wԅ?àb}0mm2R"p(3TQ3D,{a^6Ls 9z٨ ;޼ W:I?̼Y$g>]nABo->U%#Ba|:̙j,i$K :^r>Dvc (ÅIxF5oî̈́V2Y" bJ0gep2jxarsIIY%hcFF^I2e6n X V\q8 A'&ֱyW߱j)`ް [2k䧅[Yt$Oی;gN*~Wb1[ Q6氜BeD9ƈ69 UbsF?QEJl4-&-EGm$L;DvD$ :q uYuF?K}MlF mG7:*S`fHOC؍U!CP^V߶#ԝ1eo {i=Ր뽚qr!HiJ}=CgĈJ\͵5Sg+*p\ƚpUIe #OHv*99 |~Y ӌxJjz^ɡ5fbskq5X0W͆j* d} dM3H\Z7+0>aіIy { 2HJa#Z=7յ(X[C 3<+d_E5 xz+Y%uVy=!SŻ ր&>/4e{qGz[vr=t~g8Uơ@~i Baa: /tf'&IUVu8gLT(䴄l~jaNz_:1J0m0?6uE)? *2]t_I2x RP]P#WxBF~,K.(FBp+{Zɞ׏VKw]#ډ'RYfRg![ƫ+UN0Jʞ:Rq]ׁ'-U Z7X b+B7x[W+ME+ls=kכ"E~Yn!`+7?o<})?KK5dkxqsBqᶑAOd# Nk_ R@ZgqK0Jkm^ p;WS FOueʆày8j B{(]iHkBZ@r6WXΈVfEraꦻ7%ϭ.090KcOE? Îϩ5YFkoT6'F& 3i2^E3N1ɜ^lehA8W @3 ޶_GD F y!v1Ycj[WM$ELjnePM<4C6aހ8 uk`5o@@Rd/R.xu~uڽFnGEZEF?q 1yεn ДIhޣ63{OTe)o{vbwIUB%?eWfQS[e"g9mM!S"Ifie][Eۇ x9jdwpD€w<+o1MEKi|yqN$7/*'&a9-)$e灦udQ}0 (D-1?>ҕ8nd0CYŏDЭ5uA`Gӻl)b*W 03%#(og RhS2gr ȃS\0.ODF[i{0]%֠5qe)֞&ntNoIG5vo{4sXGNt}JV-o1PPY{U9rmX2WDLO@RC8Kl%muNl :$[1MiMj:3<=V5x_Ոp/"iex/$fmzEQ^Ğ[Q{euMB{-E$HSM|z."~?2bc1$Ma?X ¸!*--;ft qփV' m"Fu>_Z{^QL+.dRb_7]TAdS D^`_> F$A>h 4,'8UrTNk{G:~@ =|3%c;矅lBΉ]!e bǛ=|{W{2ɨ}eS8w1'OJ =IWE(xݤ-=ˀc(b*1|1G@Ftd9j~˄1ţ VWWkXdsI HZp =nov`""츗 I* EIV`=lId&lS+rEk\XW`RXAPhq2pabߏJO1i5 V[䷬Ȓ ;8. ~Zםv5䳹SJI"3@F<Ѕ{Ӕ ^ORES -sۅ#gaR܅ƱMdl>sN 9-Tto>8K<2+O&LZ $G"Erה? ItλlSF^f\۷9"zSfmeۋP'9aTg)?Ez1IڧZ1ٻo1ROKt %B z}4;ݼ7JRy+I~{6FvfsާޞLf|TR:-B'2Q}aXl?C?VC &Yn5!\!+tIzrb*_JΖQ$A¡OTV-+ryJ{f:H3F>Ri / dG5+{&]n %*EL;At蟤NŲ3/Ȁ hq?ކUX ϠQQM3Se͂36+zLS֓/@]шP$zlfوF=p MD)"oB+.Œ^U-r773(F`z^-waԛ&u&u(ϒӸV@.~ 7M@he\0-,wJ~ݯeJyIlnXw"f3\d`|c`PY43f_Y' Qi>xhnIֵoJUcLP,֭ 5sÙ.) Pa>?>bCOA>9-,"!Chh&W+ mjC6$lM$9~pe)Lה38/X!(5<FU^O&oȤ[W*P|!^خ[~̓]]dlXti7!hG1IG|'annt gc͡[/&57Nߧu[YBS |'D;r&6`]S}},q#ྛXU5Str I`:ʐ0$tTTtyDo0iܾN@pe \OZœݒ^ +w3,t$ޕw" mxs[L@-98_ܝV!&-D iḺ˷)Q in\t]d}])SA\r5*VU>h/~ۯ46Hw}zŸ@(,湦6d%Yjn),Q1@߽XgVm:h\XiWF-{Wg<#hPeM:\|1̇S Swlyj;!rM[2g Ӑq+;]28c!sB|EȨkZ,og,!usfz߼fLw XMU-A ErAB:ӧNPRK~.~5~\wD$y\Ul$UdyƇB&$K5,VOOhQET1q1կ Sؼ':WAsf;ڹ|Q%?M;JrGbpPjNwUG]V,TpPK#+O\} z龽` (F*8D9QRFB+}H5?m;Eqʶ+L"*f$%ޓ' 麈@A,8^ .H5r;c$fǮqvE`Uю" |RCbcW7*?wI׊~8HJmTFxCotAGΕ<)'ⷦ-晤0m C$]h<)]TKP+!@?P~r3#_͒cЫ?nO,qGhUHYg6xKR~K'QKEErz~0@y榱.tFڠeC\&1Nf<W)W=tWCyHb垞#hl!6`O&~ګ!2jJ`;XklD @{ƬiY>1aSת)c7WT_:Et8pUr|Ņ$ wI1T('|䂰!\>1 ,JE;g)k~UT5mtpݿ i"Rh1z =+?%R %?`"dGz&!eDä(CQ_hT bYjKi+u8U$DI7C;(N߽D D1$e9pէ2o+VꀘA]$6?$RG~ 0i:) r*OţF[!cK'Y6ʺ5YzZ(,FWR>ŏ&Tc,V4,Iuc{Ÿ3n4 }s3Յ4m E(|9U|r~T  ڷMC0>2lhbn ʩP8= 歺Y~h 1*&/ -i$KRt W*Xg{Bͥ,/gzv'jE|K:&ީ*__p_e3bWPdO|Szc_e X[OZtDVDa&gu/}wo@N  p'KdjVrǕ5%D; i 2 /Oa8(Z,.:x;?q JS/sdfZyӺFM6 CU)P':^rk,aPb@QҽEZ D)k}bNq{X34{厜_{ra¼? XL&hA,Cn&o٥[ŏpxuN;*.W#cas܎cv$Ɋ5}-Ke/>Dnl5˫Jeߒ Ka{ǝNxu9> ܅L2P.xYC]yܠ?J^<M];76ܡBXlSP$&֦ ,`+SsNH!+T ^u @ -ex"=]_@|其]kgZyFF$3oMvLwQ~-J5Oǟ@GKAO4D_%2ui4:i6 oNaq\.P*uutЖ:>H6ciIyD`c7[@2dMnGNl`-2/~!b#WsV}R-Tşt*Yĺ HMF 0rs(HHY#w.}hu+TM%cHxΔ"0%Da SE`58( h!] 6)OiQ?#>Nf[X!J4B9e Uߎ0!"dӚv3~uI@n$Eb"cbumzDJ$ѕ*x̦hϻk,7sDS>V=3ҊBw{!VS՗@_9#m7p~ۅ2nD#.^\Rc_Wo=Ncc~e@;$Gb֠= K|-JS5Rg1l #&45PnZݑDW'~UGNVQnsr3nt|[aqkg(DB"zܬ=K ~9lt[.@gwj|ıQ z"ub>" OMMhHCዖ [ kRZsZ*887>3AȖ!]q#0Stv~U\>xaEyW}u?ԅ]d ;0# \d$ebayޓ߳;&`g2++ ^Phv!TLZPCXa!.MkGѲ3Fꪌ`RBYT_ uf MxY+ Lŭ4?0RSs[ :)zsh׵Զp.4l@WF ݦ?~ח?. ~LJ۾s`#4kPN?)!OHIB3mjASLbЌQisAh$Y >ּ qji؃jؿ!s!v6wŘWp5L6v`*XcHt%-BPQ/ ic:Q0a^G0%AJ4QZ*Ϊy64G|]cgh^`҃;>Jb'&0b9x1`U* }yBljAC yTB<6oiˮ 1 [!E EFOEgzyJ(hA6.)Bx\Y@I=9Хz `F.$}P_4ǐV`DO7(N~SFȔKX+O1AZ'ߓinQMǏ"Sbh"E=z?[q=96Dfս9MF`jD&6)%LK0.nz; +q 2J!-M~>GTE6"`} !kO 5p"73\77#2ْX3ssEUB.a7Ƶ!L n| o1%uK J&#= I>N~Ř|ai8L;MsLwĭx]/By+x4^ Zp&%tؔ(gnƄ z8bZ/+lbfA) +/ÆHc$Iä7%3n4'6:Y~=mR*{zBs/EN56![ (t*YY0dL2t+ ##6"Cn/C[{|۴M,zf}:Xw1pa23ESq90-İ̻L(" 3ۆ]]%0a>۞-9$&s&K)1GmXt f~7)%Vn`qUEY`Ss-s&a`',clId- RM7yfD6?F$-;KHP2a5F22$;0*=JǸ0L@ztJBC$=4G,O^eʴUChTjb-,n9*926'B'޹2y߃糌X^I8@+y39zwEx!;e; Mpÿ`}ܯ鉂0 R m k۽?5W f^g{Pt M⑮L/LI'-g7'd[w!N% ȏT<A_cGb:*5:"^,zjODp> 8bO_KgzTmzM{{:-y_\U\\V + !C9%͔^yp_IB̙;g'܅LIWr+g `]+$P‰/ "$uo ڬ Ōx ePI%\?4x]tPFՏ$ ~zi 3 PKCS㺠.N y֛{'o'uiEHpyn[I=2NΗ}(!A_{ yi8gk )fQbRэV{3/;s:SMV @-ɍkfQyti3|31bVOS!2fȺy=)iJ+6HUcT߉Fοf|`hf%d3*o5a=X&]/ MR(*&s'r$TӒ3K VXmWA⛴f^Ϯ3C_%a8s>9=)rA^0T w Ғ;DJgd$}i$KJf.> VL5*q$i!m oM]+{ݞpAZZziя_h}0n)FƇKֻxgtE3X5eԍT*OVPzh*I#oa?!`ݎ?/JZDPSSA@cB^.2L\Pxp$Gk\YM0ے ޢ{"+CQO~v]g6nq6Rcl:3KE-&(z̨$ 08f6ݕ {7 Р^I7/>Tp"s[Ӟk [j+tĊG b Z}~UĔg?Rg1U ϑސ|y 2!ND %K+!B,qrZ$| R\9MSgBVpq^'tly6~l-# 젅c|d} v3;킾'NE w{4>GyT`I$ctA<]QZ`bPx'k>|Oac>*a"{6 )* ]+Cv>wx-^M`.^y)f  _,. W;^/mj!U#Ǻ.J P^b_Nf$-vaՕȟDr5vAx[OKC+n"PytE.l 4ApM"6Gk&6zOyYpV\[ۛL"8mN(_.\QPVӏ`>߁c?,\1)Gнc}eĤu<=u r:^Fy"2FxI)crӱ!uJu|HA7dIͣD7v1`7f1Feg_@\fHUdpb>jMΩՁႢB$ G)T?{c< l'\?870vPIk:mg3f"ϰpЏ|BV~ۥSo&_l6-F=6ٙx2Gxհ7~ɢq῱'Mr+*ϓmhi+~]1=wCG-Z 2h5O\ו}29+NFR,f Y,7TawQ"8JbN޲N/rG֚tI#u "ON@" -rI>cMX.\.Λskn-'I/ 7Pv|9y5/~A'p-~J5Q^zbexL ܿ2 af!p&NLfNgz<ݸϬr,EġVPhٛ!H>4^[cJҋ`u ,\Uo&d)JkL-ٺ:8vvqiUŽ?ޅ  ף?-,0W)zۦzB* 0W$7Rms 'N|,wn^P#] X^Ɵ@DgRB#DgHqYQ0f3K3S./q'>*/ W"r$(E9}A;T>6nE@z +}hÉ#{?# gJjU#P6/cL(V/ֶR>z\x\'eHZ]/:5Â8ԝKlBxl^/XEmqۄox( O &iH l>ɧ5w1KU}S'DNjoBHer8YBgVFO1E.EB7}uB[NJh,-ʟxEbK$_ ݗn>UiPRI[g^Ѹ~ 77L?3)'axwpz1M1, f3v{]SbbɓO:I<5}+JO|F#s.PK6X{ })[ KX7D_93$VMU˒y͟79R#SY+o,i4. /\SO]:F`$1v7NrA XBռd>d3e8*TK)rxm|N1aO=av:i;gbz?Mlt Ik}P甠꿌wk|Lϝ{J6J!h?@)*vTQ/:VPNg:5Lk!.^{`Ddv$X؋,5  t^VPWj  d (_H嬻K2;p9n˾{z BiIq:X+9ęUM+#@j@ز'ƪ:lW&/`jtC*,cf/f!Z6et3jgfͩ Z8e$6խ [2h-%3TD&dYRizB%ϊ4ތ Pn(hzb!~b]{[g`7t}a[-j:8ÖHkCcQFr(MPzG~)wr\,&@EFXv,J$SZ?Sf FŌ2Ω?@u]تNԚRwG~f ^*É6l6քXGM:'mf`%)ĭel #J ^}+xp @$GE3bwMVxS'α +uoAhfZ4M%Q~2Ћes;IoVġi[hb6$QX !U1l()5JkCXA`DnA45ϐM'NXH*_bX2L`_w8:z( >AȜH5&R9ՏILӻ^Z _IkdHSoiTX8Z~%p0K)F?[`Dc0 }6d8xTUBqPj C3k\F;q/I0%^^, rT.ώlّD"u+=n#(̹9:.jGsՂtFVno ੦Vr7$)0l'-^=Zq֘es)Oogzj|=J泰ٿ+%H!b R M]r L5A(mJsX5rM'> F@"h3HլkT_kw]l>u;0I [!|_a\_CW]2W3ûOkVClD܀.qWdxUh 6]d=Gh3h,điy)i4k̄")|W}P d>/Z32׷xa, l`@ {%ME袜苫Gc 쇄mWDI) ?VPW?.5.Щe.z0mm%o#׾kU) c&|a7(eTϯԂ/dI3S%d8599&;N,GMϸ7yr886ER'< P\)ua*A]VnWc8xyt\Vˑzbr}HRd%܀@+ S'+H+6,}ծt<g%=P %{#MsG\69귨oS,/wJxi.s28Jl]@8kڐ)Rg 9.k 'a{{<Ŏ?8@ZOZjx*ё>`So(%5E68PޞU<=RZ+>q/mmgWځ_s6yԆ?[mI3!Au#*]5xAUsa997$P&X2a~!`nɺ vܖqiGЧ0?S<[ :*orlXv4+^!Q%z`0܄Z@Q˳YCiܫ\`t[ K`@PzP߃vNgHA\}Jۙ ƿc"l ǖ!ק1 VWJ_dwa˷m8)eL˖uH~%-@ht4 jΌQzZ᪥~ OvٌʊjCj|qq^rgUU|徭'n$TOHYG+]۝9?V( m8%Ua>{z"* <ٔYc&HpL#g.2)[aH7WA5E/0Y{]AS PqU0@q܉8ѫ1;`%Vca ˣ:^bދqO[{h>#'$ͪ5^!' UJ3!Sץ|&Y6´~@},!WӉ\~ǘBt@2s?1nĩy qa iEV*J@G5̫S+r @+$FԵ{B)nff-FuUN^nZe_v{Mlgk1qO4Dx YIO9t-oQP*;Έʠ~jקdUNo^d$#ri;HLsl!SjKV%Lc 3,nZlPM_0p)q`&7xˤYtF'gƑsQ$ $?3?Jh޷)ӛttE#H>/u$ S݄Kjc-(v ɀJUfߐ ZgHB t xf^ $ǕKpV~1: 1  "])LbV9r,{ E=vSsZ.R;I,$ ,XL`٠Gi:j䵧a%*DN]ܵhJ!:EC'js͛D0OkatA_ /^zGeM3+oCf͚ޫ ~xFU. {H%/X"' k0!o˄ MqФx}݀zNy02Raԃf<_l!$fq%75?sVaHvV_޷vHK9 Q@GֿqǘR)Aj=Fnh;ͧʛ {T0}?,*JLqW肈3JNt_euR9;{"ny󛠑`m,`_+Fzk7|ʜֳ\ĝ{ &jNKh\ҩ<4tGrQ4=s Hյ hWܻAӱ<Sh/¿Orb*&apMz6?tRg+JU =?6A7 [kbx<39 b͸ V b/SBpmy+<hyZ<⋤{"/=)Qo5OjaZqQ˜П`| z{(k6]q0xOҿ]^ "{!w#qҹ4lQ̓ݥ#-x0TGzg QUo |}X͚]g㘭㌁'%5q{Vz":AvmYSFoD/]")>J0e8s\a6{%m$w2 ^eڹv.zA_q:䔚Dc,T0,Ы8(I .nl=˝AQ%oTpO?;@{|ZzT Q*4\zҥi,::&iBDXU<ܿ>qfwXsc}if +eop&'Υ5/8 YhGK R `dxÇ-S%vP1 5"Ξ9qև_aQ8rcvOЖ9ۤ=L ƃЈq , gM5#3krexOqxY)`H (Eo.@{Z'N[u, ;Z{>*x|q6` _b/pY0;"a)#kش֮]_ Ӄ;!d׽)7]l~+7dhd '=Si.oȯD1,Ҩ4ͻ)D$g"¾wNAՖwX';:T-{j`\'Xb.ʉq.0wSaq Ҩ: jmm퇩9+,6;/cԡ͆d &gIx3;|r'/6XME8dzG f DZh.dAaҡ,;sI΃`n? R׏]og<q,meA(Zj򡈐L$w0]!{O\=Ξ_vvn|*C @PXWtRAı?c-%hUxGq66s[fֈ&@^ a6N4s.%i5  h.{Je#h'ŭ8G`!k{ln:ۺO,[Fb=Tϰ:gF0!#l?TxlC1 !]9.*V~FmXa,Cm5[_Co^ +Y$XF]P)TT ,PMhV2`/TAdHSSytjJԎ]Tq&dywQ- %Ia0w"'WpQ"LCE';4U |.z|bD6gtKSqUtių]=R+&@K#i22 DXbY iMKl}JBj{IHzYܿj$R`ek4HN J/ }TY,5x}Lh7 oJ;rr\s .K2xnԛF% \ӆUdf-NJR&e˨BdpA H`ѽAN7#qOnݳp1ȼ̡t7^TQbožK磜- 6PAW]ς@bITln 6.ڿf7Iܲ{w4УG@1> )+o$!A<,S8ve5Pe+!f=8~lc t8kⱹs,ʯks_wDVSIv'Y1xnf^FQ,kc v\)!Y()ub@(pclJRUVਅ`wq5WCU [϶2PEv!ZA $g1y>NaZv += Q;\(z^9UF-Mݼ1 Ѻչ$6a:TM^u:^QVMVo["S=s_z[̶=ƺu{|bRtPZBZW!~J&RCڵodg} oD^ qmșٟN΂VYc|oi/a\u!gAI`R 14{_$"^9n0H;<`B.(uڜիHaj/zd#ONfSa:Jܷf/獬LXTZc_՛{JexOïSLݢtmZ! sZGR^C.M[ȥ a~Je27GZ'a D2 wlp GXU2~JqwZ`d(b0k'ou1EþLryTq. %AͲ fIeVK&>D.Bp9f+)AMbLa'" "pt+nB :($,h:w>?h^5 i32 (s;g(gm\`ILe fg T_6,†gk?L14t>{dxJGP4WDD@gPqH~|rlHw1騿***h$i.T)O[b6 eYe7A'NfG7;fOtq샖 ?6~Ю3.xFY o& IJatd`xm ސ.NK~4v(S6 AsD,͢ԞJf FABVKfԅ?9OBOZU؋KV⽣ > C&!Ŀ=ĕ)+VSz|WR BGبᘠ}#h` h"m+gJԢ㟫>51 D:B|E0EQ.Jf9Ly#\ShV`[w]jɛWN^}K?YwƇ:XXz67>lɎD"lRz ^eL(_e ϨnE'qwa5\i? ~FN"ӄ9E?sٲO_٬ىV<(ߣVܐyw&D%)a?S,dq7;$Zn /2Aߏ dnfCZ\bZN􃾿2;'=u] {-pMó攈0AEYgl}-P!M= dk`3:uy]`v?IeEF~\A qs+oPUC$5`D۶ ".d 5L=tŮn _<1FzD]/kPF6,P7R fa|h0$8g *V+u[ّ=>>Ts2O^U>⃧Ͻ%a^74 l B7f[@gO ޖ)+4)C!RXjQ+\ TfD^HA_9F8bIѵCrb80?9=fIrMēIjΪ7=ꪦ"kИemNe{*g,qyxH3Tc)[yoD*bu:);cQގ(:jŋZq:3mb_ ՂfAyV*+MxxHɱ {)ձSucٹwh[7)__X/vQQ0߁x03o6L1^p-/9٩уS%>HL" R&8eŵz-qJ!S}kqt,3*;L fiVѡڈ w- Wgwݟ| .]:<@9y=C!]Cɂb~y -P"ȩn*kP3S/^u#-Y#BQx}<t2b |"_JH #ZUZ6{$n};z L9!^?'`΄4怒cn1#HD :+W sPy9@"m"C?t^Xm $ ֮ksbJqo7"'иrQ6PCj!{98gQ[r@֍d~2K#Y\g <@a $2Dd r_4;T#Gy Wb]N+NKЬ@Gh I1FM^ė,7~3Kz)Cz bnՖA*:)* c`åmoBv#K#S`)c]qVӕL)G?AlLGh@Rc4΢М&f]z^'pMwz σ@Iϸ7q43pa*vNFFɽИ)7oQ _}P7%&/Iz cpTqy!K@e"PT8M|a-҂힎וvW Y P>2.kyםOB<Y!b?43Y)":'c)s5Ixiݒ%d˔tq =$N}k/UH>A7š)pf 6m ~ HT\L{Q'(P[!Glw<%|Sqª& _()TI"[`ujs 0O37.0td 9Pm77XnN>jTD*FY?hL"Uƙ*D@fp޴ֻ+?*VNl]!+ pL E9'F UHz~9R<1|GFd/Aԋ'PmL8FѱɔsR\6șb|R!_yd ,9Zœo [`tC)RXr-O"TK YVHp`YC wJ:ubCvpf7@Q+S_fid~W㷘IJzK3FTB/4&lF-< tnx5Mv\-B=Bmgt ȍ0"`=dA(g'~̗) )( +lIUjW x*Y"G"l|e*jʸReͤ͡4Z]iG[rV;oDVv[d4`Rqoktl b -jc+ӿsobe@$Rś|hY9WeFks[_mu"v"j-W ZJz0BzAXi\+Ⱦ{RD7w  53_s"C2 za-R}EnBvǬ1)+G؇QPyaLǜ|`늂=/:|I۱yuȁn'cx|-lXnvvihH&CFdK'622^Yw..9:$ 2 \fզ5`8US4pHZXoԾ`-)3BIbsiu6E^D{k/&(v L9"Yz< +`H`k &&Mh%aN+"UPЛ~B EpR Z׏&j9dھvU7`uԍpTck`Y*}*({L,>t[I WK3A루v6Y :kkg B  _X.0T. )KN@o84[i~ s ˵@ ] Q z3_-H4z<.aEN/ 9 .aVR׮h)Y5VRq ?x-N!(}X 4/-%Q/}G,uF, jױ71TbDk8rO92 _0cK5Bjpv{ fp"#{t9Oop}vD9 la PEr*|v).yyii+x܎Kgi`H0hg^ ;g{vv ʱćzYzZH bPw+NRBq'aH,0&]3*)wd4YkT:װ7Ύ[Z+CQ ԯRueֺv@U7TJ_x7z}#/, ƻ1= iGi$+A$<IC@(7jD'F:Q$0H~ytlA;qy"75!#]!zfJW3& ٩``~ 2S//](T%Xľٜr?r8^?wu +${"#$\K?!LndSoƥ[j/=Bq]["4kd2f鐼e#g59WHJ%[O}0m ęCV(_y0Rd]޶mr}~rpŕBv.Yh-{Q&xk w_n=JvjJ s]  tn]s:>~|Z]o}>D^#9HG<왠Xn^ k-CW烛A_ )H,aD~&,l+<1 ֮ Ndn~:m7ȄiJ@{V8[g!74\m F?Xh.|b`fdca΍@Ǡ/V2rrvEm&pl+TA+t[C>Ӝq]1,spƯsi!!5k|$X+ԅz'p>WZtq;@]*ZEĈ6NK:wq%|ުB Ag:2W$+'q 3iH6]O:3MO*ɔ qp("P%r͹l[/͝M)g뎨JnnQ)bn?i]gsYxX_kSTMZ '`ݮU< k;EnA2zn`!TQݿ_볗6L%#>c4S^eS!&X1|K-ʷoELQ$%}u}ov!ʢde: TiٻH9j<+Vh=#~ AU\ ̒Gg!9 @ "%b :K|B{&S3Ƚ`2z[~ O!)?UTt m!|8%h0VN#?alJ~PB(F}1r`f bF&T$IX(|ߺLh[u⃙|?(N#%ښ@bQ^I!vˌME<+9j0&`b|鵴:yfڐe'JhJh7f" X 2p0#uiA'D;J@ő ܡ0h}%1Q~@[!A5ӓS29orZ=(q3L׺= CBG tN: +؈iv1-Xpf) b/O\~b݆"o ]\#IҞ k\j%?IeBj=~$WS@yen8OZbᘊ%̳`^M,F*{ 0"<ޖ)C^b+D5//(qګ@2îȶ(7%,mˠ|{ [dMI9=*2C\ s<7@XWZ@e[6#v{d9:@ܘ ɛ B^D_y>@]CIО= ؽrU1ߙ$)Mr$O=9tgJrOh"İP1)ʫo9 4BRvEפ.7G`FZ[!YV˺"NmnT,; ~@I6u^f5iQ-0Je?]ilo@mbzPd#ךxRԀ [ty Y^1\m6Aӈgkۛ0xTmcN@\ي;v_RImowh(g"jt ^ύӇ q. x ):>- NHi%.#BY]YRIdns+\tyPLfs ߜ$Gcyu^ r p+XoG+>Ύe*6Uooѕ\cȰ8/1V|xQϸgJsa/*U,-2^@[i$bEuEJYgU˯ nG$(0DR*Fo6ϔN+v N".կ =ެJjNi Z +=20\s.W+%=Iն~?S (wTO?&`YlUϰ5).QStˈɈj@"9)zuH^wTZ@}|Z%\;v^D' ^#5D0mX)_8O`܎v܌|Rɜr1؇b1?elpqf29UXQ6G'ihv6z{erTBDͮBjkC \` +&R᦬XeG'QkyTB2 &y ޗ (q~#pZ("Zr|~R2d=z~k~;85Nl>vmRVaGӯwA΀Q1nG#rg4ÿWƻ*:rZKv{pp*$ Oz>z$oC2v|V`W M SތcPؿlL5 G#t#a6җho';EW֖QFrH26 ؿe]wx]kh 檒rɽt.Uirn,NS382QO1v ~9^Jk7GOzWd3»!Fg `hݘU۟ΨL?mw@/5 })ii96[Feo7U\S2B_ ӏc  +yO!6G(1n5镩?J C9K˜OP-ߌKǥNPW(ZL4k0(S2v!e{m:LOeSOXh4ᱏ12,t2|{(OSW+ذk8=P)9FtJqPC}pY_ XxX`ppx={)bF ˭0F+jxoHCgeG7){>g9 y1 X_1ꭿ$NAZ2ͻY=(3WTv#sRk7R#Hա?;oO{orl15A>`_a@CM,1D]r k1C))~C]3k7 4;bF7R*cqh/YcUԸ:HyKzmu!Ȃy:@>BN23d'X=5aDzU#P5␵SY޻Uʯ'VG2M5$"@3ˬS`̠^AL";jėBC-c Dп@C#bd D!̟{Y$ *_NdoՓr^aI!ZBwEyfOڸ:[V2IJX\5ڶ_]3F~0n+~NTI7t<`9衊*skmӨR '5w^sxB'x!b!0_M.V->IcJ<4Dd^#Cjx0pG !5N+>3&J\ʀӅ̉T@F}g$ eZ,:17DSeM%+շ&l9kDpCD!9 kG;獆pCY\D*Qʎpwejp?D,nbq!08T`h]m4ozjz`#;͂ ~ϙXº?9[KMiˆHZT촙1pYNɶ-N3h!@U녥mS84/ Fh%at +7 a+2yl(Zֆ$ کxd-#dnތ]n]$},~(*qxTw„1 ȆxE_(M֒w΄uOa6 ,iOAYL E&G=k9δ}sf\w ҮZ7>g7rȒ_aomGuy̮GNԒiAx^Ŗ uyfOƅ-T}^P pIP};-ߏk,ϕߴe9e4NەMi@ a.ulS? &XP";3cjy:/e:1bY1%Lb]=z~g$o]W8 W Yl(W۲SG0Īqj,.3e_ѣ8A,iu[yafrGMϩU4(?dƆ]: ɤ.{7hƌKpn}֝$T5m J (kA+eP;/E{ =!jiN;\q5 }a¹% ҋGsކ"ȼ | ;6VsHmF2s6?za'`f 6:y!80r@dfN<`SUVGUHe9^-qˎDb}MSc/ ^*nd}"d ;=P!GJ'{@򎈧ESHS/2R:Uk9 i=־Hh܊")xK|:P0 MH OLιbv v C%Q>pU:j.!W\"UpbRYcXly(֮c>$ɿvZ y1qB`c:#!^Dٗt+U[m}41St!`KіdOS~b.R|&&L*`u N)Kk+¦ /&$d@C2!Yx)B]q,9D74ₜ lTiHvX8T(_/dQ[*a->2QëJBT[H=eMRDYهa/eTv`-wFϰ͋\]mdd~rBPлy5Oۻv}/8ri5mlqtz_\;r WSbQW0AaF]L:QAc@}{?X=**[XʡDHy9g~|5(x59Mf#e!;坼M@sBvZs5<IߢFQ/SЇYJ̛݃GE$Ckg&w@W`-Pn0^`HmzG8VZQ5f ; oNqD@Ϛym[cuVɴG`d]Kٱ:@F6ԒuLPƃϛq%`_,tBc!| ?%iZ͚_Wt &Ͷ.Q5 Ƚ(ȊZISD)2LUW~5hNa~I43."R$WLϕ"{ƪ& /.oo;S8SFD4qċڠmoeSt ϘܥH4uEw8 BuYd<[ | gʣ nrkfXԕ4vP6P$_C^^=S~{yߕWI+fg=/Bf\_m8i.jD37 )X^ zs7J WhB"Bg(+[P'؟t5Wp X_qA}B} P]EQYg/^K+{̗IvH{aeD/bQĸ-ѕXY,ף|w_/ 6~otL8 NQ&+nĜTǠ]9HW='^,R K[cH~@}'@7ZDhDs9HH Dt~"Ʌ޷ půd9S+Kk^3~QV tr9X [>||?9ngMj@X$` 3LJ7ݞ60F/ND?THq}1x>iĢ9&@*a8xD=Q5fa \A=$ +MM5ʰW `TIڛ8c|gȘ7Rد"gVׁ;Ԡ٣x$~E_ᄡV*&|} xx~SiZX_U<2P2̙P@:)ǾoF,-.]ha):q_.vdKɦRQ%4Nub/EV4s0ηx,өX4 0fPlBO駖{J$wbO'[} do%725 :;U,N(P΁۳.GH xInT}_46;o+:nv=Gj\5pJamB!Wg*v#(5pv$Sͤ&ib/L~ `f~#g<2BdTvHhDVF=fൢ {Ϝ n0bott/kEm 阍xMS$ ؈u0XljWD ]pRnO<7D]-yV _+} 8( L5C.ALeC"MŽZ%$>H< gݍ~ ?@b!x˦`hԲ* l5WԕJVg0B3πyR-a5o3ٵ7a:٬еFv7E~Lmg"eeʺ0sb>;TjYFdL/Q_l$(ؿ$Ch~h_Ċپ>_6-ZeR1("Qe.̀۶2 k6!҄1G|@zϣ*^st wi]1lk\nFspK$}^yh)J~.&~x}_C(k]7B]N4I1Dtqu'KYILi˦hހ'Þ!\NzmU&0 ō"ֲCXsC,԰ 0}#ЯoLEvRr{1W 3[a`0y"ȎoS^t+6"dxa.a%C_k%$-Y%`ԏjJKq&&=x&/m4ܠp1t$xxάM[[VQn'P[/IP-,rNxQ,8R? α22yri*\e}NbF6/ٵPRjکnܚ{`]bjDd eМ{꿅HB=hDѿyȂչr3(Rsw}qysLIZkN@]$mYA)M Tqn0҈')ؒ;t^єN;o1ΡW>4+~7u1TG'w9jд#pJ"ͤq3OuJ vA LP[*(&ºj /rHB`'_{3;}s, Y9gw3Q2hn&MCVHa&B|ל t^5O63 avMtGpz>!Č=,(s*B$7ImY)I)C^%ܪB󆨯kN7^c4^Hũq2J*gIP$ (ƁWyKVrpnFq79&T7գ<BgHt&d_rx!mf"V=T3:saok 2z;D=|"6{ww^$YS,7|z a1 M} %)rZ4?ʎ8 SLOvrBgsIx|SæRvZ' PQizyDQυwS^ TH0$}8Y믖ayMg Pf K=ڬVgYkj$`RmYʜ阙msP<' o;GeTSR e7ݏ[j ;"SLm:{ {QjӤ0?t |6HPꞃ中/rl>@ 9" RF\XikNRm^Z@w<wRiߠe,FWԟ~-5O oYTAZ~K'QiaWc ` [co~PHļmiakފPtD6 #qG:p"sKFUUFa(n@T'zqEN\EU/$ӷxz2Qej71 9(k%dGʘھ;G0/bo܍IĦGVI1 <8;7*6"8}pn98}[s.gD}؍ˎə Gh])% f !=#HZ=_f2$Խ8b<&J5jzTNKG@TNuy ;k5v~&GM4IӅ[i1o_LͲRb{9Vٕ^M?/q؎gS Qi:g"\?.v2MQ7oN:J4sٯmbd|bQ~ #Y@g-^XLG> 6cʸox 쥃(|CSW݆YJ{s/ל+. "—ج+cj~ܸopӸE"c (q^si…XYֱ5yM1*^Ovyp7^nO "|x̗ϢF(Ũx yR!4pF<\`ڳjjЧ GZz(UViU"V.L_9J!O@w*n(RqUD&0ԶWsK cN#UPV^wm1VqW!jٻ+Q0DU^:'UR'B[ [(>JߒXuwQe,c #ԷGMud=U\JZ$N/ytBQ& 7ELnв 6BcS{`0aO-^ZǨ!Ϩ8:f>RMmWjP:ѭ\C6UQ{vN23Soh C*{/-DMBMTSsm=d’Jn&jP6wLm k,BACbi,ٲ}n/`1 0ӳݹ9z*Leu%)S=]kS(ҙvSHDjԜSS&l a5Uoeƫ]B,2#dա/oN5yLkreݭ~+3= HTm^ 'QWsI"y.;4kcKr\lcYy|vb^RKbCy_lkvփ%~Aq+3^6Oz"RأxK8U˹vt}ަmb{~>Vq M5ƱW!1&,>Eh6Z5\A"iM׵"_8D c= r(k|vi/` )g*]i$P8Xtgp4^1* ;yfnjD(#$H12Q;\rQ9J=Z#t %E1xxZh5`r;A64V*DOj_Kr6V 0qG27gpPI7O/ zڏ׀ZzσHTeȏ4uNSjYM6#j|uevNM 27Qw+uA.xrY`雼w<+%S4)ӣCm6heϘF{Bq aQ I|$<T2ف뼗 4Z%;J^SX2Nz(l:HtɼB\4Uv^Mỵ_,{ݠvט'>ICcMO Ni[–G‰mJ@VJ 8ںwWVd|P#0UO=4Ő W};Z21F0t59{6/qAF+R1xBpv[_[ݛ::8^]x/ĸk7Qa#˕Bd?'+({nȨ- ZYrӄzPV{QM<:KeINaV'Z&M@)E!̡zU'Նh1Y/X͈ eyZ)%2B%sy A| 1ZQxXn-x#QD8ri@r n~5k5і.VG:6g$K5tnOqj}œy^JP!r e--}B `py|0'{y Pk'$ ua=vʁ |g=_[;{͟|hB~fcN\[`HvubLQ57s$}ey5㑧%=΄.@Ԯ(o(X(PеwF#ے .'b+p[k Ee/|Kyzfo[6xtZ~RC(&fKz% -}i=6SV#&G]T| 1Z~>JjZ`HkX f(${qF9-SD  |Yɴ;-S Xz~Qu?tfkf"k{K Wɬ0ys<^N4PVN6Đ)Wgj=-|5nm?`H8 y]/(ZsB`b+ل|;9o_;` b͟j]x -hHo[Dq&<Ѕ k:U2.Vl܇Mf~(ٷRX[Oհ@ZR!}p/"?DKA6-T;UuL2W*ݠ>ͥA3KML$E}€X'_Re]?|\1RY1NQ [)}Q#3ii&7r4р\U y_Yg3OZ.a3w;z 2)r=)n=3~oKW}=)m:g6M1 iZXjb65'H'v2e{|Q F 4e03 '|4KE␎l?+Lmvstd[SQ@$NlQ LL,`knE*cz^V닠Xl F(!W9"t`sۢ۠_3R4}C5O˙TY`f )RG)qլ$I?o!΍)J% KDM%B%q`*(]BgH/^6U-:0G&oH jlhwpԋ9L0P ,.g֒~ڷOy?r_)1O.];h=:J!~G#ڝ(H ހV̹ÄUIYjXhަ`-ً;.Q?s}m1VAʛ9ފq1&}l֦QE9lVw$ߙ$M>D{\ jn?2VT~Sk@$phr+?)bɍ`(9ws-H4c&ul`j=6 , }cDNTc\o`,q$T.g/*%{xJtY?u /nQM5te &. VN2{HՇs LjISׂTjDr:`v!no7IU-|t)LC#W0Eካ˩l${k;v2)z6edm;rh ' D7ydCJD-s,2~ `@4#g@Ovg-8>L2rlN*zâDK"9p) !#- \BX\YTͤhRN>An* 6JPB(g=-;(\?L9_L?;?@?I1ǀ}w:-lq&UOgӐE_0l+׬=9@tq<D'y?u "{n4 1lA-ࡦ$3ߦǣ]P*XLWQ$p JUoLiP_,tFV470iH9}୎7?Uz`#P3aK#C8Rr5#_ߔ"<(pjJzڜ2m"QX= }fauVpZˊDdH^2@o]ե:H%Դ X|y;` 7>єsۺ[Sq{[+cZͻ(k*yzC[*/ۛ*b)\FۑKoimtl%Ia]" t1[#mWgmϠ_U ͵=uG'Ơ}AW/))-/A`aQhekDmS? ڑ9x=Rm~XoG#^Y-:pE;RIKFcArDLKp)1%Hu)}qMoEiyE\;{Rsk]Ý3vLG rIoP ːi'蛌)D[nC,#S9/rw1뾑Ʊ U۬Dqj*7(>*KQ#oEpYʆ#uFӷ#Ds,(kSl+jL~ ߊOt~_(0=S"a9sq~eAeGW5 U>v GA `!JEۄaalR97+!day~}'N/X51o RB?XRgm_8} PhqǍAL h4%.ik)!v|%$<= 7q:ƫ4]UxuoH.'X4{@|wJ0̯975) 3iD/M#IehyV+84FFI ě*ϙY=N5¶#7!BZgL*McAzQ 1`"](M|( &20)?+qϰkV<]ԹADna:V ' :-͔\֠@F!K}(uZ쿔E痶M#U K2Z/B360К\IrY1; x+gX*hwr*C_m ]҃^@,d2PERv;gsyK7Jp`y+~qX@aJh9Im 0j/%luyt`6촃Uj8fuS TFcVt0ީ Y7L*! ct{H*O_0e ~el;IlD<3?AS%_Z.Bwb(܊Î.m~?S Պ궏Ԯ*3k̅)D!:fhlasK{Ys@u0H8Ŋ)0Q%s扠 rwĠW5cMsI& *V3ct^Sb.6ȏS]H ;]':!ƘoX5DCkMٓlHuuHj=|WǂiXֽg.Q3֝w FTZݳ^s{AL .bQ4hA 2DYq%Lѯ2k;S7[o2;#FOv4v.B|5PoyM&~&`~q4M_57?Zy"OWp0ɨy.k[d3d ^m\|]ƭ_s*eoIs습0FqC&n.pMIFq¡)f>TIIYtk #tO7ܟb0/]M<^qR 2xt11ZFf%}xW*0Zk 2kiaͨ)R$_ '׊"NhÜĻاɃ3!53ɠ!=Lpkk}k xsz醚+f2h f[15{zsBX{KTRi*(&(xڤ7i.#źH^QK#N+c'D 4Md+o!G _.-oTfv_O2F-ų0\iJMCo )$q\ Hk/_&t ³ &" D}/gKYs[~R$Ѩv*dx_I 5Ұ_Qox& 9D3h;2BHeMϙ%..쥂<(Y|>i8b vG0.fȕnl<O{t'9q8k簛Q8h(Whh]좦v =SmBƋztw,67`d&֟X< _Z[{vLwȣHձ~=+{UӎN:z1 Y؏BdM3^nɗ9vS3Xy ҤG127K.l34M&P-cڲ2V&ݴ?=HbݸރD1!/kPnE(}L#A _yWVYJhn6o _)vZxˠT$DPe$lհ貾F@ĒwyZ0Y.h%B(e-dy:R}&7Eżn Up*] usѷWG~49],ByC֟P_/hP d{)FDogKIP˾}Ncy?PTe@w8bp3$9 }fGTA8֌k`NX]`ZՄXأ[m(cc%n,a !$اT~?AI+OL-mLՄf\JK>_&yE*g e>b^9؈﵌YӞK! Fz;M(ߚf?_-4b{a)k',:f ^.3.Ge E93Ore/~$2Ә6k?v0%l7[HW`1'ü-vP&(Wm ^CzM ڲj 9l>}"ڗ_bR>&a0,=\J+ߦ:EM~Hg;1P^x"- V?$ɂa|`ͅ|5 lmcRLX:z4_~(=?|KM]z#xn% r7cD32H^QG+2A)oB‚5F\wUںz~ⳟ3T?]s0V7g ԙ[EؾkVMrIQ#cȢLzAo(J f21J Dd!nR2S:tXx|$PA )jdOh0ȕ{w.VEb}q]D\ gO1~n4{vq)n$`mTx{RtBJ]P <-kNLtf/ A}7,n1 Np4A&#<{1%LKkÉӄ4O6lԤDe$ )[q?iF`wBǩg/{FAdZ& =JQWd{D+!ő[f,|+젣t_{:j Zc4}2cQ KfOTo'lvD=u/nuQXiG AM%*8c y|7qYIJpf=D_2"X[7`41Jbk<)r~3dD5iHCHx ghXrD1V5B?8svoIK7%~m^>z <6T!,j2|4BV7>]Tν]ѯP%d{EƄi@M)&|WD0_cKrxzU_N#|m-`)ETu >u+p: SHl.R;3'cv !f7_&ޜR.Fc i#NHܦ@eY.RomqIޗa G\Y "d5LA~`NT-m @ڄTi+KS͆v%芺wzw4|wez4j;]8Ǣh? 7K,]? Q60U1CnX[cRq|_Ǐ5Cp ?y㋧JEAAIĬh&$6d6&)ZsDH xb&rD {f$٫bomt p 5ګq]@Ʒx+DIZW; k-Qp$*x7]akub o[ @ҋ۳OO2gYCTk^B%}'rU%>?.lG4| 8` =I ^rю0A1N ciQSl 8 !-os]GPUOFt0ևIno5} VM<IJtUsfO.>)xħݸaK ^1o6XkO_/6KH(@R{c4=6c4mp> X E _{hWέn\_MgmXt<p@E?STCed*zaN2,:1[Аdyp6Zjn#2*iSU-O(UTK44 aL/?1D@ؘuԏSz.^[YMu$[߷%FI{!49*#`8r flfIJM#[q.@XK 'QU [ѿT5iR&~a;%usvه|`R4vUXqgV!@뛦N1iLT?W@t@C Ze>h1V'@ _P]trʊ m.諻 C cׯ]F {=f=$(V9Hyh/UΠFf/sr;MgԶ4ҙFdI?lSЂ8^$ O΢'i"J#=4мg$.QÝNqh 㑂NU6S>{N?bF,*7>E&S>=ghL5xRPx!#>4*U J&&:<{& Ѳ=V28r=& PHw?@ƖڸÚw_>xڴ.L 1yܑ(uY6qn^3lWz^8;[lNq {2R|O3 9G֏r$74jۿ bYilCG9兪|>AI6S/wPJ> 6IWtdG_P#T3Ńd=hCWH?N *adxt1'K rXDvi.HNӹBIm{Tzhjn:5=) (D3Ⱦ"^C6 6 5#clHW}TL;JWGCʹ"</i%@IB hÇ!&YEZʠ7 k)[kTʮBТޛ *%09~)7ߝ\@ Lȧ`[@5[B`qE+/Eˬ pCRZP($w*A̩ݓ"N?7FX& 'Xɝ4}T ǩ\烉-dljM-Գ(+XS|Q"%pZO1zyбl.Jmsx=on* Y<2Yn;X0oӶhCj_Xf}I+>翂kjZ.D 8UoůZLp!0{̧Dm%R.YK0VA'4Co*C! W,uxPNqٷOs2zt1Vi {5g}[(&a+寇$ME"]%&ٽ9|cX;Ț2? ;SA}#W\q+CKMlؾ ;PLtJ?e:c~n.~st1|t*c_0b7}ce{\ vuLgybwȆ=,/;*cm) hB٦RzdI*i3TEZ,LT7Tro:9U${J/5[$ѣ/WN0Y؂gaJX3InR2dTgֽ+Rd~I! lcG C"lG;ƍ.!7±;4ZH=W zJP#燏R48z$Qs&/z91g3\Àw] -X9L") $'̳ߛ(P qwަjE)XO+A`ܷ͔afݶ-OZ(* Y;Ӹ9ouӶ]+m۰Xg7'FhYM?AEN~q//x}Xk86=9x?ӢeY$ Ju`L.\R(/YRѫ*GFV"4 mZ[ "U<4>tix!20QFǕvŹSЂ8b %ien(bApc~N9&VHؒ?XmĒ2$듀hJLaODӡtŒb\L?1樲xo)zb_̀[/SJ4V6R>Z0|L3TO] ?a _(]ꯗw+n'J  "K-}Qo쵺SKo5wJRxEjuЗ.b.XeŒ^tY $k_97Ќ5p7F3:` +sWY(-zEAJgԫ8قԗo*ܜN2cV=\c<>1?E`ݙ{//t-uNqZ>knucjA_ŋJUQu 1޿+Rxli{HRD"s8 o塱)=hRaM\s im"+UU鵝ί𮶕ȇp\?[N3`v{@a1MoZS,w,ݖ ㄲ`[R%83tDun#ۘ*Emgg䣴^GopC E :Wp ɗ(2΃ خE_{,VqWXw%4DX{l,Nzp͐P^s)hy٦CG1|憯pxYcQ\.$U9+/{A8?ϨCqK9 ~pŽ[ɿ_֒GTtVifbrQֻ hS6 _(n?,gH|NƖLD<fCR JKҔ॓XZ[~Lqc]gĺ}o;K]&? >}MלRa1O5_7I3DO9 O=4$9 as[E9Ļ2qpn,rV#,zE_S"`K$ @`}\j4@3gG9m=PV}JP9gP|D?JZ21JWZga.ESat4m5L<_$cȨSMslSY&72`I1Ȱw&צ„H:ӂgS{j`ߣ:wfлʶ'?'S8wwo&!iXǐx{0t%͗%sC]Qcd3Z!/\&yd+< v=Fkx){}gy}ӻ#iSi,!XJ !J-b,ݽ)|>Teن3#O#phzeK Sja[wh@KW/Ǣ.]#hiG6iU'ѡ9r5 xUzQ4'+D?lXF8C"F\M8uX)r R/m dno"&U5Qje8Lvc.4,]w*c'd$ۅ%`-`I4C5u"}9_uk֋,MqJ@"I*_Q/BPF #<ڈ'Ҏ3U\," zbt|~%uMc~bMwwQ}Ro!1fs $U0.p\o X]D+]3?#Oۄ(p~u`ԡ2+MHde9a%mzrniN mbis3!|7,n4hQ3UM5AI٦/t7hTC1$-\ ȅ#!ۃmQ #3Y OkZvA3rP%U9&oL]]'nhnhU]YQkϿ.s(Bɡi%  c r {ʲgүe+FF.\=4]BG6:V3kwRϠU_Ù.9ٶf3lsBʒZҕ۱M1@6eLE+߆| Zn5 _ͦnܨ#m4]tP^d-{I0{ JLj'R9G{j|sdyYP[ji2\>MkGM8!qP>L,:EqP*$.PZ`!$2-!hS0M!)U}=Qv\hwmbpaGe`7'˴aƼc('W>{(2P{G¦D|U󃹎 #M*b bQ0AR J9Lk dy'V{e\/'yΛ`K]d ٭8nhcI [?p^ Z!!?t{ę'VbG$rU19ru!WclilA{GHXR'\R,iJA |׾lL3:,cK>H#bj)%l'ޕRueeTN_0ɬ s}aE`rfV>!`xUJ{fzRӥ 84*/L4"J[|Sf ATЯ]/lOG f^dHH{%Md?9#9qZZ@f[d<ߢDԌϲW7~롻6'q2"U= lͯ\ א wWj 6MVW lq͊=Mgha fJPs (7v(٧v t$-Q>_ޫ5 y$l fN"+U=6Z\ rIjpuV tOPeFM0 GH|*ۚGHmI8U{LEla9(Ŷm"яa4K}_1V޻ heZs-fVU|徍^<%'En?ۜ}:Cz=JvNsY9eL^D 9fE PpVOqo:P}}pD$"8H9l#ӟ&sK 1DZV! `лYo*9fEIlZY2a cT'מo|5*dklou ^4ځ;t"0z8u} Y;>$Tpj4V2?l"U -xbsl7p { EZЧ];"[ZAǼ­MC]X3f^8>Ыh2Vf/ Z '=``.&T3RF 6ҜmJ&i$)l|E&OWwVw&lY(\wFBB}C1Z#ICF-}Fz39Nm[A)'o#ȶz@GNRڐfp3"}#ebN60JYXTVݓ78fm^Y[1"Kݗd-w2;^znh#ıdLܔwϟKD-@͐+s6 +g&7%ohaݖBHɵ0BuvSȽ]iMUPw"3'4׎iGˣ@}}!y*VyknÉCZWġcpCo%z޸&Q~= @"TSԴ c4Tu^̢<(/ƀA&Rp|sl-h'[BZd }b&Pft U*#hMdpԘ@Cs9\O*Up]57b5jIe^-|g k. ) =z*VQ`>L*-`,%lBojWyyo.-jc[}*]Hz;>a_Ԧ 1 gԭGJU,/)o/uI5r܊|ψ.4<+)>c?/-Zua&2.#(j#T&_̥3I)&}bpa^XP+ysƎyfշn)/|'RVIW6@~C_1<*e uk+$qё dcCT!jIB~;~`~F7k8#|֋QQt}=ZsM*E#҃}iƑfxGn->\3ƥn:KCIeni|mdƵ7[2K\J80^IaptrQ!CGGӚ@zg RGRY?I9Ï&ourvRf "͝di*07==ɜM&(V РD`޼o%s$[-Qr3Y9]ȸP`X` M-rƒc\R(gUkNUPیFxvbrښ lW3e0ijZZ éKPNͳm0(eIBr:S-|X (NYIN(5Hߨs詬Z+>X.]*oXdhnm LZoL"E7 Ϭ7B֒!3xrDƶh+'_mSgCQhH?Al90{,^y9QHu>~APt.up, 1e^NS?pu13[ϑ)yЎ<]ċCtT䗹дAC}17S*5&GPI4zgu,Hhu듧M? ? j,nQ*/W&xhz'{]74+Q ]s>]d5(Y;0SY\̐ieLUhr}CORX֚D\F_3;,& ~ܣ1oc>(J8zd~sM',{Ƶ=@@΍DsKc! ]K]y*d3[BieM^!b"y p$ivר~>ìhz?ğlAnnEzb4YVDK%ބ.L1 o6Z VeH9 P$|tv`#X!b4#+6{v 7|Np$;ؿ|*(iJUZMN O.` O3>LG7O7"qސR/l tpבb^IQkZopa*LՄOQHêO`𦫇7q:0O%DB` rŐD XTl6FcmRC$R<pi]NF8%eKȼ/gË08ߞwS}5hwv!h+V)g Qb w .(*[cRE1o3)7AEϢ;msjd#JѶy42q|!zhݍk=5)ZH,q^,'Xg[`4*R|Esȕ_\1 AB4ƾDJEA&?%i)U{7w&ۋYkC5uٞ5U`VU=tڧ5@ZI :OA؁,Qbg>?{1; hPlZk_ їI S $C,u Wg}Z[PUA.)'1`Z_2@^dGϕb]v6lt-ه `G+j쇉Qc{2s-y;3:ЌkUNE~#Eܻ`1G2##5≈%w3;'8衩7[5F~ J\d)=ĮUS)Z[X]:3 ecN3 >.rER NJF1j8v Wwʖ#5C">kq_*0c[Vs8,Cͯ| h|`팑:Z@&5Vk<+X.}Pai$Dt_"FE?/z륬|@oK\]o.R w* 4j[K?vC#VK2L;C?";.}lL( qdT*nI }:p48wi6?l0ƞ \y7+RϺU7aޔü$ts`hYu'pƕQc -I,9gYR &"GLlLh> [X<'3sFQY7%Z ;䓥5wWwQRB'x/K% | ~l$q1].01.?YVrޗ~2MBScUOl9=ډԔo%O-VEuH) \mhHc:%񌓸a3{=xRQ}x "z< ւET5*9ňvK #Mz9 |rnϫ7ƚ}p,B Mdѵ! }6dQLDVz)T[WΨ,ٙ(ZL6 pg;zЗ$tTbn[|8?qn0RyOLjcS;kGу6&}7ƒV $YqVdP6!?V!\MV{a*MAtmf, iBb5ZX=+q Vo85Q Jpcٗr>y"[UwT2.;cJZ!MM$ݫ)Ck2nʈQmj'gxbwo  ojZ$\Um)`Ż5/ơY6A#?sT1 n F?[m6[7_f=}b=ʯyǪ6k=+;Y I"qPv)}KdBѬ~]ڼ<:5C l$ėF;߽>J{cVj腂L\>e&_!.SEC)oh fL מx)|͎8U x]:' gs_s;@lCHǼK<6Lq1?Oyy{wG"pT#M߈[Գ DScKu/ /G(V՞—dolǼad>&,jc?B9YC*>d=ԓnXˎ}_>ڢ z7^lがO<:87ey< )4DѢUrB#?Dy`O9d~FyA{]\&}%aX0Koԧ'ü !#czz9υ3k|$2xq*Ux^>u: :8ƥVy|ǣ6sBm4"qݨrXT oĊ'{.jY fbn)xAA:k6/z#v.; U|tqz qvAhu ru [`| Xd}FwԌs2ޘ1eUh2TQ1 l97Ser{d# nbͷ8.x5? *JȪ}8=f9":_SQJWDogz?#OT V3'8sSb*?cswSO7d2p uV^$L1}bvESN8'af?$L6`cX=W{жS;gQBw=!"g-!4YE2O-BrFdw'gYS6aXͧ9pO魢(Tv4) pʭKJc\cMj` RUЬ!b0?GKIa6h vTy+]䁓m¸%C,]e.oo upǦ#ar~uZIdlLt GNG[? 084!ކ`k3ܻ'xd2WKвZlǛ";t@рC}s}L hA0\FSl mj `j_5<vM*>x8eJ(p.|d&-hŐh@fʐy4Al'r +A/&Y[ ђ|{ L&&'YmB'ڥkRU.˔:X{j2G<XJ]PMK”,WڏV(Ŷd0<\H =us)_rd2.C/ Yh5.*yY1̦wS !^mUXpJgoʕ۔ތ 2/3✌-"«r QhDVB 'n"9gPW,F_ANX*v=#âe׳K` P(vJDcK|Gbżkq %D,BqcJ/^muZa7 2+@e@d^r_:.>ny8K%Vp55B%^Pve$ kB6 R==61N#]g[};T"}~Bg+D.OV%GcqKVY T8jkw*@#^DdR3v_}QGWz82bqj0]ԥ^~l'( —O26Wb\T6B՘RIPAsbЕ4F885[fc5Z2d 3&2Z!8Ѥt jGJr)`L]q clp)Y A&i!UR fzi^ç.M4SH[?E鲹/ިIK3FWƮw~!|@\  =bJ+zY?ApKG>XH2 l2f89{Z4?^v/ryɨGD##At贚dTb1ľa߃+ e$ jhpt^U7bt^iq)w*d )!uRnQ#^=y{ >ԣ^sm7x*^ ve*|: &6O{TW 8tHVJۧ{GV^#`J>Ϻ@: jd7o҉ٵ 2Xw'm[Sv* [$!Y?{"Anc PȬ~t,+Ԟxky7+JZ . ҌIt/ 4I2ϊŝV'85szM(\42:Ra9Ig' u7%oy G=@;6HiЫjqtѨ^ަz*OJ|L)6=7㕣;@B":2K.@ny>Y7IoԕԦS=fPv-$(G7x,(8I.jJ7^ ty= ^uU񔊆ObCnP1gqd3 9? &bx"6ܮg۱g2vUB@ Zm7Tt~*;_/[Ggm;K/2-L{;lnkבRkhq?^ְZ]6wlʿ[)Z.&idvM P/9N lP<ԈUK5e sy(lN4)Ue%WR^eo.CԾgGp)9äH/NUJ1/%R8g**ȋU(ӝ}X_ O v<4'7ehf$0K\ u{~?=ȭ+ 0 ,(޳!ss2 Yhx .f$ck?͖G,,mx bjf3Zt2k@3" *M|PF4YAT5yY|.R\~q;8F);dۮFD;jA7do4dXNj-5mG.Ff잶 Hq* L^[^IX?ۗK<)4 ȷ# aI+6 } ^`1̤nQ#cz[o%RGr-eb#N3 =0PkfK?Rq(9mFaO::<"$E;nCV tHi@WyA>d"`~ۜty2Цtb\7@(Hr\$6Raš(@ejM%G*LzM9sst\SҦ..aݿgn{ ͔.qm$/l+~ uW5FCRܥd0Z)7sC2Ċ1nB޾x|N.rlW=גmyv&J-9t}ȱϠ WlsjP*΀S%$Lt˞?eJy T..F+;?nq4֝/hadz dy֧ eEyzp(ZOUzK_Ku/{ASQ^BExȷ$`w)Xwi OFFЄ|1u!#.yu0oh[ v%w&ujO*HK H;^/9Bf#Mԉ0+rgɛ lvQ0':QzUޫ3QYpL91_בIӥ }݌[xX}[!~884nu!aA)HmQ\\|N*O" `OQz@Tl $OG::x֩Z:)Պhk\u3AxA*^gwA҄/R1%⑀Lx4MʢT2<ޏ;R!"!2:X`iAV@ TgY~@DK DkSx'Iu.w7%ZP$%:P;TZS)Vi(0 Hǫ{M? ,MtlmVWPWY>qAo˱HˇT[g?̖Sa3?O>:Pn4Lc.Y0x,BW{'6E%5T fuR3:z6I/ӋM#b@u7ۏO ;by;des=$u0{RC._p? w ~U~ܙ 咜Os,e/rڞsr׉ /Pű*cugdÐNp\Y^ ,rn!{"Ȥutľ/Ot̗ޮ"o r[NÙNBڵ&k#$ؤlDӚo\Vb Ͽu7n.Xp_pօӜʄ׊R:Mݚ k9S>hB`\8Rc |GÖIp[/DNp`~&gnESzBA{|e6k)$`4$F( U Zhq[q]#f\#n[{KK.8*Tͳh2ﱬC0{ Fvyǩd+p{fbOh4^lmDo:yxҨy%4~')*&܇NMsw;ĊZ5&ad%: Srq׃/%ٗno#Y8+0vx_1_ .oj7%G@ol%mE0[\w?e$8C`lд*3нL$qw,w &GL5%<~l-7R~Ro3cxiFFӝ2wCQTgBP˪RB b kᲅ_Y!  wBwwURyai=eUN s1M~3Ih ᢬yQsf|ÈN ylD7C<]rﺳx{#@<ӂ,^EʏHH ^DDcuܸFиnR4KVl'&>kנ,M@ag֢feu &Q!yJSl+d v?W!?.0xP(jpv g8}zg@A4]!>"SDi$nSKC%&rU;xo侃ZFy@'ea~`[ [zCơ+'J/IgBGH=Y$j o.5ͫ8{ 4{u4ەKonf`bmZ22W3ˋ~#?Y<jEd۬c' Ԕ dZJ$R]DIT@rQ%Z_]K(;xTID {زLZBLlP5.א@?`1g"`]aM{4ߊg^n|ZV$ƀ?XV$]BXo# $!.1}ܕZ1&/D``hj ]4Ȝwp [+qnxl>;cYE"Z} UȚ$?Vh}p6 HCO|_g}e|j.Ziz4|^Ph&1f+æg?gfBaSUy|O!֮37;I޷@|Mr6ܮ=EKSo{K"J2LRp=daB0Y>oW="u܅݄q+ ;4Z"!mCS0Tw5ؾsނ@5VN2x2owgk%A,Rq}R`cbeKNYw?-jGѲ^^@%zd¢)4Tj5[>_\p/tL#-=}cT9Q/ŜGZ=+ƞMܥ8X,hj }Jya8AA /d=cxHt>Topj{@h!Ai*KJ2H6> tQwx{ɺ]\\JI_^>Hg?p8Weմ_e&(rKR]_(q4duY}`| ژع/!G q>t ?}YǦ&&yYqUCg{kwVOmna/eBc @]k jWiSp1=/ȃZd Ju\'$s^<@gCASRA+Ch؟BV5dˤl+djϩηluC=_?ie"fiY%}ji&F zK<Ē-]=4#ЫF[/B@{!rS% Q퇋ġVp7pjs3覺يͽUoȫ؄PcXml1Bu_ 8gDVZdIaTU `|2!ˉjE6"BUi k3*ȝxjz0ty e(!~[ m 2j鷴!'0iV!6TfXRG.5,J ,ޒѩ1g\C]JX  T+xm˳p9Dc~Lgu*D[;}TDzSF@P[E+${0Ŧ)ΒՔ NȥLG$NEcbl-F= ϯ'1\,,yflT "کmsq, S})up8ZrԺh}/+džuT#f}Ajj–e x ι7rSXW,q~ViUL&۞+zbInA8_J8-s͏PWDZLNY8딨%MiwΠjm)NY!P/-4mf3?sO6~neU^4{ޫ>Hq}?-{E756$j ζ- !GmYz5o:0fsf)\%x ,I32/5u0k(r)3oF P 'M}$"3떏 *46 ѱ~"a*(`pަ .NKR7Q :\y"_F.CXGS"+{&=zޑyc+˜+Hy 6[>42dq I5ҀDhb'~H*ŕ[q@!z9;ovzpwGf ek҇Y+T.Qf ! ix#HHXbX*|1Ʌ6;&T>$$6z0 }o*%4 o qv/e"- #+1 Ӄ)oD2,ZCB&lv 80d'ҫ_'׮ U9lބ0 R͔ ?bU<9]b Dh0d)6û(ڟu0A&/5In4hzRû<L7Iف 0?]Fzԁ,R 'cnBJp#($\/?Q):N ygH,ȤײJ]EDDhɥmrK+"YT^yOmjP,r=q`ظ5p8h͠qӠ55txb*,:H˃?Oz0gYTDRZ$/d!A5|d4dtJܤww}9. L9LE~;_uӃB!fA*1,P(t "^%_.cnܓWj}>TWa06{;ӑӲ>~D3[l6"8*D߮5 !|%.[K`GVV~_0-ؼF/gq7ArMKdYjo.R0F_C}71x71Ƒfx>?m{DVUz`2h]L_[ %hÊ)@v5p{[Á15ODQqބUe!R2EJr q*%@t|NӻSπez Z|qm˖sv'ڶCnwG=T]A/˜!m!1^ᘏOsLn^#/TCEG(:O?_M?Jl)u%:S]QV%LَM;rp5IUP@Q:EOlI"N9YM<2(ڻ"RcO>{=Ά *둹 :[M{ {`VcbfjSEaa )mp-#V'L"KoU9k7Ւ9 .ݩN#(rxψ-2N.0moc.RsGG 9tLK"Sx@03E%8GtxS17 '9+EkBW=IBlv?u<-M+/"wh'Sk 7I|GkNJؒ*k9zc{Fi0B`͆> j-pnedRo~+ +{]NcHf29! ٲ꿢 {@3/vm%zFJ uZM)❇(E`ZOgT?L;+ l/^xgX! *rtk\;_2mzl -D_\ECMYus1_ghK̜xk;feʧ* `1$f<*s{I ~&"H)UUs=0o2w_K`7a$HyyApu7ܞKP{OmN++rjE7ZAt9_Uح+M<5r w#l8tSe+Rm'2GAߵ fḦuŽ:g@ #go@Qxz%0%^\0[ W ԭvm4k(pnj[ˬ q(ZF`f6un/BrC} /WOsX43ҷt!8P:^o5c? $usmߞ?Vƌ 3uG.%/ɢCDtTni+J{4⡉M2pi˩/(wΖI*^~J $?  OyP7|prGRڪHktwӿEgs_ǐkn%JAxŃ".{pF0y8*sg4kt;I6tpb @/N?wYIuwJ`ƕxXtKi2ibGib^bNLU \vۂEר 586qs(Nm;cN'0`o > ]P>-LVY/}ob/B"Z\L홈n4$AKn^Q=]B60>e)W=|n<ӗ6~"%4֓ӖXjI ӭ@A6-C"9σ4L4F{e3ζύ@.k3WP{\ٝ]l~U7,ӬͤgY}zUJO9EJ#f#~ ~ָ;LN1F[yqy!" Os5[INw ܽi0u^jk;M0~m^+geb'_%w0jOõ0xsѳ4lC٢n+n̒Waibƀ+Kp3`2mVq+&bKQÊlRsY$"פ|⢨"D>ֶ\+kA(+aGߙm6+(D-`L] TZ YHTB3{4>WDZ&Dx,m(=z!p>* fM[N͙ߘ< m=$["0UМWǘCɲe en*om a HJjvV0$gHQg&vqzT39ˊǼ7e{N=,a^gq_!ܩ^ϹG-94#F$if!ʨ5>gfٰ6vq4$*zD_+IZ # ۇ"@6[ /]#}B;en^v:(.lEA!1sPK.YEek*o`qԊPLӮX:D#V=)kVJ5:oսő?)*Q4@ CRMI:s>zN]D|P C@IopHʊ \/w&U=;Q#Zdtj#mFSO|3A${,$u5AfJq+u.Pe(p/4ϝè{UX*p\恎!~t}Olv ( 'Ay4HF+y~sL[>-˞AhϱIy줶_pr{H%7Hb3\aG5ź*,0By/"u/nǸ#,AvRRSjJ+*G`Ͱ=n En$Ӌ*M/h{S lD lίrίW H,C~wq:FKarA lt+92bM|kYGzi/w>(J y}U_%VI6rxbp7Xʣ$DJRS :|zǦ`/ LWHwgU' X&QÉP }jqHG;_qIZ01–sSa>B@2/Dayj5= *x92kX?;Ԣ`{ Q%˞y5 ǎd/99,Qf,G(;)Z@S_gf 'ܧc¸5$OD$f7aER:I`Ϥ˫.r]n ATc* :~kh1$ NXJ_vS}!ˆl(|FBz6u9fgqT̴`q2ڣ͢sH7 kεA+1׈1lcsIX_2|j1mq%QTxFcCBOX@ثCM*@7~CqS()sYH$46+{7gnRpHeh,U',wZ/0u6ϳ^~d+[%tO| hddZ܉$Rsqf.)E@խf=$|#9WXc"Q̿DO.]uLjy[b-fW!Naȟ"+|dKkxeX<Qrd.K׽/5Mqw[9!8uWƄ5ȯ*5͈dhegczwODŽTM3q6^ž[ю9ӉsM cˊ;7&49PXfIdS#QϮ?qX]nUN1BZk0N;ؿeɮA{ޕK/Ia:OFW*agV? !uip|"m9E@D1(rIdV#@%{$O{M-IJ0nXvˌZy"l푥iI@ '=mqlnQ.cs>!+IF9_XVˑip:;oVdr7ʤpDÿQ9fjYܸ|qhPԞБӑڎ [{G/`(RZ8/﹚@^,U)>N+"׻/y k^i+]F&޽W`MrČVXiZU50CCKu(vvo,oB=LNڳ J*y֤~#_{]*`%+2n}XL~FS̵/ZKzq LZ6&%Ȣ)V$(= N2FF ]Ț8 2r{JȔ-){؟)1{1:)v*hL} uh6Vw M ؑ*IāC?؛ٟ~kVw7~c%m9~g5{b8}ʱ'b)]2s 4IEKAq )g8,`t nYxG/BƳOM;aj{XݛI$EBPAňM H64!25-kW#bU."MAl^x:?5as$iSsPh^!8"jȓ7zrt$3 jMDAyl86rOucK/| C[nPOFR{jr5nx]fX%aGw웧9@\ȉIxWd[o3O^j'`Gc[Vj|p JA;uBbZ3mgÈ6$q^ ]0"Rk$=4HE*K.Pt%NN{c|=sE6T?IHi,$M#J Rj3 ^ImTPS 6cs\fQT%k,sGҚe鍮 B8xLCNR픪V6 /+ )cba5wkyrTi7H f2AϘ? %t_[v3"0VgD˛lb&V-ID/TJ榆@0R~.J[PTݹcF8k29/Ixgl೨= $|KKo=@2øYABbX `)q *M 4'z= H/e(sxϽFZ{p86lݘ"l*02Yg]Ӣ(uO>m&fZ[Ju^kr9ƗK:*!85 g~(O-k9v ߠ<49ў<볰4rpIe+[.dy?X+%Xf$Y1l!}UUQ,eϐX:q4и])7/hE\rFTX?ލC䚕ev ^f8J~պ3@ދ[&/`/$OS| P\[x9 jXL|_OYȰ$h1l 򥀎WS׎U`iЬw-(Z*49r3]ZY@35wO"s_[oWU3f[64m b @i?g eIִE:]zl1k 39^E`|LuRIWR#/+w9q% /}dPc|ȶԄnwG,y3lgLi,bxٵI԰m-Zs# N0`ঽBC]Zڃ Q4N N}kmgzViBI5NXn{(HN9륚@z6PNo1j>\1?IFNg.ą4mǝ!jejPigKsWqAƈtHG~]v.;@ *%Z7su֢AJK J쮭,w $Ig_ōb"`LvjpkQX00"Pmŧ5vLJo; lpzm}wEOth>vg2}:2z(<gu!qDe[>o~{܄-E h!̶&VS/t2T-y ccĚ#S<-u\ TGm.tV8yaMkeKӎ\FqN7aEnZz^?ť1@o$)6MFem &j저:9iÊ":aE_e -ۆ+-Mӣ}k}F*x .mn8 DI.xɋ 7R1"qBa);O'oɔN}|^MLA Л`H^QE)$R5t%V zKרXs&Q̘Um>vxPˋCBذCulbR) "*gt#_/+am8^8WބY?I]trTiOY~hye|YX@xHr `8QJQW'{6Ksd]I\긂Qz__XOj󈦰,έD55ctBDܲ3 AdT OKe@Uz\fK |"鈎|h>|bI$1ܸZ7؊.!Զkr@۰'lr2^%<\A10YĮdkTE0{e~"&r}RdO#Drњ9%'inʴosSs!&`7܈U>R${],XbWkj>!3JxxlvҝSiD,Cp0rdjDJ]7#P]xW·H^OJfEF&^Q0sZsa 3u !Z/vz _V~F~_F=zSżDO;~pGe^#8^_ LJ7ώ4Lgھ_˸ ! rO9hq X$v'9Ak2uݷ^e,ϯLX&pf;d +PnI]<ȵ0QS7c!ϖ|I С}YOիɱY!6邹lɇ?&xj9|Qc衽ʱÌ׏nKf7KC-!4`mG\L \14K6(bVbgz29pc!JSpse,>0s#S,ej74`YdAq5jI,ۻ)/Qi5#3)ʴRd&UkXc[g9~L#]7k}lrn0>L͂9=́aSN(JՅ}m cMbbW˥9XU:}q;kruG)S{kuڠцzDc['C0l'ke쪡iΔ;{pA7e"ky60] ńVpuV]9 w ?;EiXt EZ[㌞#9x|\k zKӜ3-/$Y4}D^ybza- ;/ j^$4f%^,B?SO8-^)RsmK_+i܃]OwpFRi MMu`BNʟYF87q=mI0͢mdJ\b_!Vr8t0wIHoG06߲^@ 2FQ<gdXDŽ k)qm4b-pRnKoh/8.ub-Zw"Gj_@ DMD0ficHd H|hdU;pdTBǤfe*lh{,X\MeS0 iY[ȯW<"WNB1떞s~h3GL@ 4IFm<ϴ)GJZv zS(>ȈשEc h ray"/$x kf4d=v5zԏ"0KV*qGN8e/\*[+p99d NI%?N__*9R u#m;hD;`._ O;F䋣Qlѧ^>@1=pl?zm!E=}IR?/D(HFSjePLhDݝ/ۙb|f-c0+ Ci4ٜŧ;ʯlz[LM$QHvo'0 v2"O@K`L۪n@52c;qm!C,.H|s@e[AnV1#c9oՍJ7IP*XeUn~: 俺}V/$. P(^S'x|KYQh4 N.Iz1-`qW.?*g 94-MW/&. V2InH"rkKoX<#UP5b&h~~LKft}g3dy>N9^d G$vO`WR͛ha9,dƎݫ Q[@n\MqQyxͅP@& /ZhU:/ݪS\VJ׳&8&%KvY_зs1)CHQ)]|8KbҚ LrRq}>y].quT ^g%`SAвۙ)!>)]+JL!*q7 Df iUy#0ٲ|[mF-[+/Rjq(w%N>h wYHD`TˋeJ17Jӻ+l] a?U#2pܼ-> bZ;k L]qWNiv {Jd{J!]J;h fs8XMO)eOB295"b_ zTt+pȸ`VTh@T_^)ZRrV\Nb`!0ndOȠN, 3ɣ͗RG};"hr's*/ 2 bw"fh%ƝM-fB#i$Q@\ߋ.SSgMAa؄ /u Ը̝Z \ yȸdc7bTh4!L\SB]<{ nܼ/QƿUdӤfhiΔ͟NObXMW*uH25٣ KPdCATn+_eP3K `6 Q>d3C=v|dq :-N3:5V|{45@~ Kk(p(֐_ v|.> NGtŲx%2&FhP=:m6fMyp~a?2fەSIəXЮ=km%ݱqRmBz?" 1s7/(W["ykD|^uҚvX* HIfg;v哲ܱ/+C!,Zs ]#--YX+dr=Y1Zڲ&3n\ZfⅢQE,39Aқ2~M M\нd\z6-qA]Yn5^SX\+@-&Y$@!aRrdfLYdž>q}Hşͺi3>$âlv2{o+V^g85]u8#l@S t6b)@Mx,hjXIYkR9.j,,K7}[=#įswKx)}h7DZ@6B@ U|տΏmZUڛEfإ 7:X*͊Xd;1JDbԚ31UkHzy,x^HI7N!m1`w7}ɇc[Xz{4sN~-v&rf tjnY=弝pH}REJ/ HBg^X(z)3# .մtc j] ]<-C?@ĺϹ׿zK-38*Z>- \S>jGBٌPKF"erDJ1ѫpl պ6eHf1V>qXڭ}N,*lsFIcaM0W㏒,"WC}U6}GZgːե)dRD6[MOsy-ZLӅ6uᛃmF)`FW%j1c +vzik'$"w.r}ղϢC)BGЫIXPI LybFuA1d"(o2DRb6o s ND{?EM9AYg_#7|PwhS*0,?wXů%rNACd5%l@+"Nt ,yJmч7Xsh+yZv͇]ը/2\vyy#ϼ<1 e&tT]N\YtIeބtX{>SC5[Frwڸ*olw^lz:ߴ]PP멹9STԚX*chb cPd|Np"ꗒq6]tw>"iɇ;>H3Z0NR@|Jd+%T۶{ IRNC_{xtﱴDر6ϑފF _44VLeYvNtaŹr~ni :Bmр/우6&A v>Xݬ=OKpFqy/ 6Kͮ`]a^<q58fxyyIu=j h -|+C峍,K7q8$2lR'92 -j,.y2n?:nP .Y'}BgW?JBE=`)}ϸ Yߵr4'c u"-iieO8j GL)rP+W>B6{T0f3D_EY2s̼ۡ~A|?zН@Jh̙;k m nc'6TQE:~P:{y,NnE%|Ez ZƼdhx'$ ĭ#!bƶUa9}vE Z:F@0 >i,*ہ-H|u$'lnho345RZRtJ7)!V[vhTg)}X˿q#]xh~n9{ č )h=v(lY2xƒ17Y|~ UØc} r.io;Ɋ;%ר.$F%jXD |YN+_3(6P@+jyfswu3ZK&ݼɼVpc'!"?h"@(IA a^|aSy>!4WaH9n>q6藨nvys%"V,y7*<#V5 p6Vz~ 1k68A HFQ/Sߞ)M'9,Y^d/bD6ub Zeʓr.U] cuDUJ.]O3abcKRGkTI}8I-D3OTQ,-[w2h.(u*ŧy SJǦ.QF τٝi=qi*Vf Xp+ cJ5=RchJ*u[G; 3u?&gBAlx|m2L*nDrίU3$(\ =0n*-9-TVa^a1 x/5:!jD3dH%o0 5u(yUF\ƼaF݁Zv5%};=CVbhbqw,kKz`cub;*LN0 _5ig -wjfΓN׳Z#Ko uªO9) Ö[/ǒr0IG\\B-GE\]{'y_UbB4':VԈ2k (pGߞ`Bϑ_cobIjJ#wD`Z,+~E^@y<|{˖t" wlgOׯ$ab`&W$kJSԛyr*\^-Ĉ1eˣ]J938%zj6PK%4(+ gBv'?s1X Dv{CgJ0Z6PgU٘YUHʤȾf 08ڀ[hpffNjrY*>؆wYy/n_R>vK:"Ĉ ǃ~^9Vm'Qnu {$Ok#SsQJaR/rp|U3R\7B*"Α+H7 E'@UFk,ͅHi9z~M:1L>EHAS3T)EȉSQct^FeK77OۡϬ%u-=06j&p #}̊af(AB!gT c5 oV20: n_nUόsiq3Q*REQtL h磟МHWk;mC 9>?RA-P`"th}4 6lï߀rze eMx@hp9פAtuMLʞ?f uul]G *2\RL}:Sάb) vz X R0v\'iL8&.|t%-oz4*P9jyX̜UDKg9;>rD ar~f Xqbp_T̥8bD,$WhX|S>8#,9!(4Q-jvІd/lîg)g7c I?肛3&?BHCtd]Dž~Zͤ7p;XϲBuiuRMYQ(Z2Rh{b5FE4;PIQNk1+Mhֈ)k^ t(;琑dn[qx¸AG+Je*jJ,:0OwVCJ9].Hʎz OMU?.} ?'1fRsw/p=~lT}+^Vj9xp&@}FÆUZFՍ#V(B+ozbo?=]QZc 3%%[U)Ҥ[ l[]_cgsƙ]_M#} ]+L5:/L>i 3yQȧ BxnDgi_BMᶝ<,8OEOO{8$I.s_7xE\7"5 7A^%߈j 1Ա '_JB)\%!ռ,-v\~a3(pJ @g6%ʑ* ,n|xzXa7mؽ6@9V I@s|: c=Þ, <'`2~?| j8b2&@3V7ā_JK%Ȟ#AIjߺv-\L^'!r{d͏}ul:_ ?`i{i| PF͑ò!OEbsdEc~Qg&zL+_!\b;r+YۜM0?5BY|cmlX}ԹKx 7h![齟{XǪ$hS3fw[XJQ^Fo|5('9aH*uH } _rd͋쬮f!謁<^jQ"ۚ[,VS챡ײOcq7$X5/X&̆7+kg5'!8NULqqH/]U o&cӿVd9S>e*tq-T5g+JB!AkN,n'jtz. J&@g, 5!k\j1L}hhn树dK3h#F8f0oe^{x1DಝOHfx9AvtY-.YJA(?$WRIXUT#ق r?JҕQk`K>~ Ts̓wܽ"/OVB!N\=w֌o0 .a Mz}h+4U0$g&!7j䦻M<Yz"B tFžlL"*~∲Gne);`0]wP5[wl_Ύ,x\UO.ə]4P`.t"0Q ]-(ƞsEmks)ݥ3{`jrnVUbS')3:Cim^2g~8bl(ypLD[{;*ԄGrW餋%4@!'}W{üzsl=RfAV)dPۜ.r`iJEEv0{?x\?lew'V$Ha.EX)z" \ؗ4to@^L5 %cpn|mkoQ8׾{5XL#G{(7qeJ/t1R3&(TTCiF(9I*NY-uX"̾ eϭn~JQ֕k{^9AJ j߁g M?v VĜ%Gg*6G#0zA#XT^.duOllRn=ڣ>}vE+g"V_3D͖ }KB]HQ#Bʑ '%2(G-K5k [8~uj3:)d\=B$8Xx}]'أڏu{@t8juL߬v`R!} -gQdBfɏN$Ա,|Xk;E -;p=ȴ$zwZ˽a'"YgF%_ܑ{vFۢmnns)2#-oc̳o֏M"睑*l^l'y1e:,l;w?Η$B<ʟ.~ό|Wn^HCt )l_DK%בnZ/mPWt%NcɴN! -3]سLV BJ!E~G0,-sv^i._]ڔeOb`AeưNј$]пwV~:ho֍8xWz2ȴY`} phHt)$ HeGQvVW8_f1"D$Gzz3ǁzoPvO}ym4vR-+^$_QPlΏ(VIs\NJۯ)fRJ>)@."4ٴTG=f,AKBhpO+S#NLs^nx0y}dqߍG~m|?Sc ` XsIЌ6XҌeju]|:U"%(jv5zfnG^V{km+nYdiM,vA]пx_kUMV_ݸ!Ļ%S;U,* U^ƼX*BXFx.#_C(Fh| $\9@!1Fk뒥SIlE_yvkt fXzL)D5M _W{oCj wjN;pH3 ڞg#^}H Rp*,jS!eO@n i̡j|d; {Z}&&Q/Foxk|uA5JqtcL)v LmGaÌPDUC=ZT0Q@滕p)@̈́0xgځ1mN|ڮDB|que]8MsLe:z?fH $s/L1Tv-!eV\̇q&\ETKvW[(YkW7$"aCҮо֍L}̈́ S[g jhӘ u|TI%Y{r q1/}idh鈜8xsN h}xe/q~V@0qʣoIgM^(~U/}U2gӳ;ҋy5uSp#^Fđ @sѝo)ؽZk5Z6]2úD8H-V%^=R|c4v5o/ܣ~WөL="O2R:մ8-=M9lE42m/\c<2>XC\|;F]IgP8@@o&NA R0w .65NVQ9gL\z0Y{`q4dTٷ~l:8&]IuU]f2/딮ys^J4TNyJMX\~6d)e1ėhԠȏ:KVlr`:-]3|0%ڙJ7+hr͕&AaH/bNy*rHWV:iG7'㝊򀤩x?%xm,|rw=r> .YP?DyTh37+ycKt4%⬼C3"2i}wpVUD!H"t#ދXf5 d0@D [U QY+^Cz]#NS&n2ĽŝPxFmr Vs^)f&!T;]-rWZhr+)sY7҃S.b#C)XW!uo %bgD&m-;qu/0 ?RC,@O.ӻSD-G:jyXY9`N!+Fqb|GA9 =8G*Y6-]> X}8m52۾9+iGK4GUD^6Qg^!?y EW-/Etc:\ˎS>d"׃dD/83ɑ$BBk.-r&! 6j)д<*ZWT 1q؇Rs _?uUBa[eػS*U{ 6-O&Ҕ `U0\VX ,i;ReZ+e2ƣb<[_ O粊#Pb/3)rPc"%Fb e3ZzT>;jpM5VB=`vmG)IW).(> ۚ{J[$|X]M!&(ͯlg5>n.(Ӟ%@־7MܘN-j8Բ@FQ-r%u|8a8(F8Nx$TK/ |:~1& K 禭x[ D,tZE)Vϓ!;jK+l%imGLo}p8B\2Q%@%Sv(_Q$$ȵA}v^Oi4hj Ngm\1\1RWE} |U:oۊJܪ( F+vg A1_ݣO̅]aGzԆ)DVűyiFHoT㺉'C"#G!*W{;/Zł ->Z[؄]Kh ':B1&yoE٠|Goa?|9ş"q^=)&r,տ9HE>*-溠Q#2R:+ZN QqL`tbv Z}\oE>@dWhltm! 9G}zU1zIuzu`Tw Ы۾ɧ1FAg<!t@H?mP8T/eLnZ>}tNn_Ki,O =K"?m"nlxe-%ӈT֋~#?­#pJwQm9Kw!~ (ˈt$"5$\6%J-D.[Q4 E'jQvOzX<*q\׫H.t&nٮ(x9{N(iVHqZ:].$L0znY!f§[2BQ[ܾ]Fx# _ { G?{}M r2ejRb օ[NAt 8 veyxX l:Z<&$?r/B9C;IK&u {;oP.DmK8 Џ`uY2fA>:ZHs^RU>NiA˴;LRCDAALSp~ U. RM:N:zoux-f%bHNWZ!-)cY2*|9T! [U+9l;šnpVܝmXJgoDmOoآDA16iQNS”7?Z[hݽVIiNe$ 3)n]G~1]ҙ6S! [ 8R- :QFfY7PN_S'poNFi]s1Mv#%W4B ԚF%YQ' E1:Ԡ*׬-Bt2Sen"!8*:toiٷL"MkOڒ)t̝PLXYI91ӬB.qW[NDjX.okr݉ kzM{\@( +T q 9^*pEv.[W'{59yJ ~:!D.X#6AZzA1+:n(jaҋC03yG$M*QN!~}r,Cu \#$xY5dsFm 01a<z*@P45Ȣ" 7E1;$^, HN?BRB? 4x,/7-@x^ʕOm:ܳ. Ak<>Ym>|*MШOzqZ YĠ9OlO 岜yz*|Q8ٗ4茬#KVIrnhby$MBô|cWŸo,af>ͮ -C%4F,1c!\DqXѥTStzM.X*y6#c6>.]N8`uY4`-ab`|N1"p.r"tĎmF̝1˿(;y"+Mc_T!vVNGH 3x@E0tȯC67` V?x A'YgV:հzE#yY] g.y xM'OY|ϿHئ໯Jm]=r! As8F!>vxM`ΆСQ6:J *vuzFŦńܦ@ѰӤGF6FITj k߁ ׍eM:ڀ4)` +{鷪vsФ+m;r"L^a_&8&vKsX_rtz+[>F ,*B,?TjeO6ӑ̇%PA=l| W!ͲAO<]Yk!whY&$CS;nd:=;P;x %_a(=EH|庥] ӛПXz nF).2-ohjvHˆ}L42$AFmV[Y1(> N'6`PKCq,k5g\5'D \vHs|.֒98LG4$&T{ir 37S6Ԥ@N4*v)ѿn&C@ou$~|~'xnn#(<CRhBC Tia^$W3( MP?SC +ĮRڵNNyH'ʇ}.ZW*˂L^2?~f?r`{FCaz(8H~јF'hq̭0+/oj-z[ܚ |iO,DɊk4)BcY80ǓK;U ,G@ʖ9u-Xլ+d#kE;E!l!L:mV*vD\b34on;p_bZ8bU6<V2DMy1]TP3F-/Fwd ?y`VȤAU=u 305N*뽫>1'”58g.:YZ'#'cz唘K+G4]îBFB5 NS }_v ~x-(vN܄g?-a]ƌ+/?$ן b-|G~46Os#>ɧg̗~Vw4ipxXMK]^{n6r M0/#aN ^FjzMsƲD!AA!wjiRO0J @AS}c/(aG$ 9&}\*X '*Xua Oy_ Z&MdL dc M[X.jX)#"(pἓ_ҿmB]`~g `D^O9=ʣ X$VGZ,-a3=962sOD6Bo?W"`3(8ϼ>ub* [rie4`5jׯ=X oTŝo|МmW vA>SVXCD{yCE+ws&]G3xLY3{gً 39Z@W٘gBY6[lܚ}iϋ3SWxrמ; Lo vYRkGV SOY h]p5Zn8. 'tgz7 `훥^/߻B`uAUx}%/]ЛH^Ǡ;&ӥFzH[Ho:UpxU6%#yF: & șq$_YV LMmEe $*}^2XZвܲIZX:)4ةbOgǼt֔IҒ x$ߙvS.jyKvU? Dh៯_޾:eI®#6!wS4]%o$'tԽt}V0y-b9uYjeptyKep[;w-p'#Lsprk D(S*<LP( `|RŖ[#;PK&Mo~ :9XN׃h([JqkafJY*Aq`D:CiQ1^=`] F:Ubl$ 5~R9ąqu)ck5ozZʫR/Vv$b|rwRx8Us@4goX(C \@LjxMˎڹlo'5L_fB "/=kUU"*Y.`+}F0:Sړky^<m* Z0Kve$TR$fVK|fqA)ةү&Vjܾ2NJSrreIzdQn1a/"Z,Ċe/_MyEcvWłFG$c.Jçb['/fF"ﻌE8 /8Dw& ȥ"lƝp"u؞(Z|;Z؂/`Ƅڝ p9gfF)pJ'r)`CWx."Đhw.y2Dm\qspVјWP M+3mzo H/EӭuM&| PC-oz*RnőݷZG@ŪʫPk'S@Q=&VZG{-A(= 2p(uxzfu|ԠH -ů_HYԧV nNejYמ=FĖkTPN=eOy,xjebqTDw )n5I?"诂*U֥n?gkx|Be*֍*q(W 6UI{z" |Rz$ӮLPWE@RW#ըIfE]= Vj+G^dΡ i}Gnz-#}=zTZvH|g͵uiR2;)vlV2DO 6u7l~*Ug(: ǃhg=@rN6ͫʿXxl[1?Żj#Em @\,l%-YV-FJwԢYUz! W8DŽ\l'wSyb(FcY%㨝ƬYLoՖ^snI2iz퇹>Nvd_a Z8޿s3P!2`@sGYP|_b}^䭬|[hzn|_UoiĻ#5Q]aO@mAE&◘j0" % jsJ%K#Nn Ć,ԐKQfo&"y$u_MTe)! Y2zX|eG0WhB*/ QoZ5qabu]Guqa.dTA9uaZNF!Ӈ,q'M@ɲLN @3YLaAtxs&%nߣjC6XuY4{_3 @j8 J zFV@H*Yu8gXTcp1쟝zVk_8׌~zustDWGMv\ "lTmb%U^se:xDL-Xe6C' gL |n<.*ofTؒ39s4W髦`N㓰#Ѿ̿b?@P!ϱ<6OTaaC5TGGZ,M'kYȢ1G~BːU~ sdGVV@!d?h BKA IlDgN$vm/uJnV!e s,2I3sa$oŒ_[%È3\ VgZ.23;eH+TI}9D[)kq ηC2omB꡶ͳH&iD9ZIO I-CQ{jZ~:-^??rx}{N*0C<(qc =Ub5Ò>ݔ/ȏ0]>:bS3?ugCoډ}~?M!GG@%O{[&RkWu",$#ޚu)vw+~m|%ty_ki85Ro|wf 3P\Oo#k!77ߎXi%ZMǤ0I)ίfokv;\s%Q{Z,F"<HjUY Q>Tc[V/\Ja w!~.ynŀњ̵ }?bΠ~7$/ݭì7)_e[uNY! 78JM|CO3~B(\US:[a/F޹:}fsE~3뫫Hz/IeC ؏wD/*FᦚV1Cז@˭ 0"']jwCL_2wZI~"3?BqVqKͲn3xZڃ TퟧIoD smqgצqX =DZn2" t& Yg "M)~RɃFO/!BBS&OVjyu]r4k`~/ڭv^TBgE! 㕨mO)  602X= 7'> S)wL"q>[rA_\ { q9xnZ>qSc7qNϱa1P Os2\)`rNߛs g{h:Z?9(0.^6Z!lvSWKr@),c*ҔPIaBd%r9>8fY@{YԹmYA9?ŷVe~IZj] =i7\j)φS9e'y+K E^5qL Mu%XiЫyk8M}Va˃FcM'sTl d1 8ivk5x#=Yz?4/WM5/:( ņϔ@ /<;zVcW[w\9T.Ymu;Kix=yo`חOZny#eEBp1R bwޫ+\ANMmd uqVmF6uZ|OfQpM#me$mm+׎(H 8Kj2rc0ߊ[FEG6j1gc\: RajRh_J~`E]W( 3p:#B1;ؚ|[c񄪦q"Nm  Y {<ɋ[ E% N,m-/wݗ3J]Za֑)y.d[0QI38zW|9׶!٤ 9OA8<$Z#VEN,7ĬL2Ҡz2DZ H S[5(.*13A,v;ӻ$31AYNI؎!"&*+FO%@bi=IK??2(xK.`)UG:p|$FE"tOuOhk+o;P@ qx]+/AW}C ddSn:WvKd'f;C2|N'_N۳Z檃Ed]ۧQTI\TŻѮ'ǦdG [XŗSD cL#pңԹvaDKJp,%4sQ(}0Ы7/vI%*g,M+^9 1@#y-DSF1:q0ke} D+%7úU&ly4GT/V42&%qe%ҊH=FZɔp=*}9[[>%ކ]V=9xЛrSsҬ8RUibBI}\6*ZAj"*鱻%1r\^`+o4 WE)2C SB0kg#'UqdRU4@r9 3I%6E jt\1ECW3ۆ/Q29(ɐ߻y{ ұıbl]4T6)X51p^HzD m|?ە䃼9FGMj9wu+PT)[|zU,f;n_,}mIGG2/a"S;7"z˾ųvkuȑ ]ҭHyFؚ 2QN`!PikNJpU0qʩM0!$\R[/]Tayv^Qፈd! ~_?~G+:BT2HqZ B}wlGXSLJg-ec-!W!:̮(JY^ΧlfBRk=ԦaEYۣG9+9Ȋ`I?qJ C@?40]iЯ6|LSVS1X9({$yP"I0əCa|.]3(p Kˎ2l'd7jJPD'3߳n\ޏ4}95t.ϋ{}.QjtpYS9!XFٍC`VCemf=6]ln̬Z;uL =l]?"8&߇aw)&W@Jh> qyh-eɒ,$Jj \1m~إnBud_]?ȴd^U5q+Jر2BXȩZifz@@ 5Ϯe 'SydVqZ(F!f Hgð(8;yYsS1A -NC*S ,Kq5==*A 8G6@Zzւ>Xq0(܀> -iÜ0s-{0p6{3.E3 >5ơ Q<ɴ<A^u3@X/Pt17Aay0,A5Oh0Z5)_{Uryw:0wD /]hF*h~F.+{od"JYu"/ߒ.ZZV Yx#*r-XR՝r4'T8&H=կnXKl^d:"הrk;1LXhҬNm9R 22,c {vfWԎ0nYΜpQb/`GDž:mACiL3YBs%M=ciboԥ1[,:%y:8һnl.%D䈱fGahwA@Cb/ = CG.ϫKs̾z6w9{>[W1HL\{&z1 &$4Zя.#TϽpβ}YSᾚ^z~JOz'R4#oޯ GQC%Z˄f8:<-5bR;b8= 6awK&U :32d!*)Aa.<__֔LA\Ev{+WC;" sXHY;ƮktAB<ڤM?sSQ,QN*语v"6lFn:hϔBk^_&I=#ĬlqTu 5yQ[nÈ@1Wᓡ\R =մȝ-~ 'LaGcbg{+[tgMɔ۩48N2&Fœ$O lI'޽4}߅QXnlx-`󾪡GmcSR0xw@dV9*ǜw3u;A(/2E@udX ?꜍ׇqrQ-Pa͢jxږAE1ڄY}s쀗=GhjSz(#Tq:EX`(mJ+7"\HEb@uWH͑0VAE:(kM|wҬito2Ո戜6RN(1+i"8ׁ`Ɲ%1)op*f, ]+EL| DqZ樉F*ju]u 2@w-ۚ:3fʉ5oRn&H>KqxXeAI`3{6+vӧ9c>O;~җo3NFRlcr,g|J@KHC%aӻ#U`AQ& D<Ԍ/VvݷU"2έ:y3K H3{47Bo!+ao5u!g{d|ޫ]rxg9`7R@:|oc@"w14VyVcLv%: 84kڳ:@s rLN8|VOއأqKi02O{t7 `v _s\Nݨ.z=jv>+c9`a>Ur:[P &XFxo []?0CĘ mh9WZl&O;&{<߹Jv̑(؉a'_U>1dK57ڃL1m!wuqFㅬV3w!* %5ϭ\y+N wf5z<0M60U[ۣº+,Ձp'ǼE@S{UM>ehg!/]#, u׊m+44}45Zi8Y>˚H;zxo|Υ,#VH؁oa`OT UNa@aYCu = xD7 Rg_i&6U4 E`fZ{hw4E&YO CT0yjg%فDŽQr g=g̖|:nӒcꭖ <`νyR7(?C 4fn0G&  VM%KTL@Bd;: 7zS2C3X-xi/v?K"L9S)a%&n `:&& 6l8>W$މys~TN;oςC4c;Vs###:S؅jQ/cu?o΂}״{}pJ(Ʉb59p #l8 #>D.c&]LZ .%m(`Rjy 챜' q/ӆ3aͣRJOüwiG&c<#̺<_p a~0Hεmd :T&PaD K_V 8Rи}g\eJN{šK8qt9!!׺Ɗ:kS7h5as+W^B*(<]%% ]:ðwA`,(]a#5-szEC\6qhD\)ELz>TsMmKbpvыrP}%jg07-{_F#d"m'p7r%N&UŐx-g^(F )$_m; )T6䗈4鐚Οn}Ijf#y{v%αXG| ?Ϡzo ̪8E67">vb=4| f_q>%\-Z&+?'G29wLSԂ+%|*O"Fäq"6sɗbğe#t7*dʀy2u؂L;cȄg( tC-FE-v;G8fѼDnX$&A⚂ЗoRI [E;2^cP g]/{{o3! &[ϑPw,y%*z~;5(cϣ?$TJls\6RK3 (iVm ت].k{^.ǽndI9RJo5ݸ#;f- RΏ ZՊO܉e3|"唇"dD@W{\nH(p(n]Z⸝c\KF].cy ڳ؄]XP .hݯҀ@ي&:Mh7=L˴H(w:D潫*M{KwpM(~,W+7I'F+ 9FXrk[آNᮿYjƔOF%ݚx#>oA8 b3z\v;!/ܷ7*a={ EzwR`UЧ dYsﻘ'Ǘa>g p]3]|KZ!6}MnT0ǃmq#xR n=DL?[B/9lilzdM;ܱ݉گm6EQ\M>%+-^̜ͨV6r@J$(f.#R};#v3fWC_#0G/(8 ~)Z C, ݘ``rixG*O18>~볂fX=  $_*0w%$/p7UѫҶLZ^v_amLUa{ړdxMM8F ;rckBf}  W}'%An [HIUY*f"6rJr(4[)D'9va ".w w }4 DI۸BPXayxwyy;u8::\7퇟U"3ldzL6dE"H4 :0m'ۭ*R^cB%KbANZL&ɌcL"DIZ{ub)iU%#.y6#YH4!8"/a?Q2YÁz!%4!oo3 < ZO"P"hR0UuZ" y&:=&Dd/~}pȄ%$T$b] ʊTR܃1VDe0x4>o%Y"*Qt 5P&7fÞ~ЈuN!©qswG6cX85q8F`?Xp:}.4f: b&6 WɒMI8c"']m 2P1LƃOzp,:xQt I]cHLu|-Re@Q鐸W38۞҂ hXx0B%$#L@jlB_- eC S'CUhE3By_N?SHh=U+5fݖ aM=.oY)c|< &J|(Eq;5/T̿^DX#?8WaA:^#u_F!0>ij;ͦ˥ .s fL }dYX\@=3G\E5lr7N=)fLnTf-$0 Q2)j} Y؉@?EFmW(ˍܲ65Z:qyK+WtV Wlhz?1OoqKv>@.>v$)i֮~ PݺzJ0hb|OXbN0A١_%Ъ o'1mI(db=N((*1/p`u0! 3mP#9lRL T g711Wx(r`9.hc*7 ]H>>̠uj۽[F|T@{WHp,&D'>9oh@p묂:b +s9+$R&`1'XT+8n_AJR1kLNF"VT`W]JM%,n;EIWG(n>kMǞ y]jT'E@$\dW0Bi9̞* ri["Id9P*v[?H3 P;+R^[0JT[.>Uj!ca:"6L$~;pA[O[5ON|#Eh\wml42*}t8iH x:ˆ[w>͘}CT[3ֳ4Hr":fF%[Z`)xG.*$TD ٩vr mY6vhX'g ۓ̮n7VHJX ZbMdH/]yO@KyK9Å)T> X'Ma_É.g'Jѿx$$pzO@׍-oj\ľdk4U*o v8IcF6Ue$=V.6-*zR>:>hhӚ}D)7BS$EPT/Wec"h3SLnO cg?>Oo 142ӓW= S>iaR{[m+mcFv?'.6\#/wXϤ mNB`tmjhmW_fY` /1{D*0Բi+.m@k,u(Ӟm[U;Y]]Zc`q&~cִ+#T GqIvviR85d_=Ùh}'dalgn02.6+| ;<~̬q4>H'x9Mtw,ÜMkq[],7dۏrݤ ]tn#< pf X_y]aܥW]bq,L0V]I潕/eg;]no9\ AW]u\ }KjG݈wcVͽÉf_jBF%sOA4`}5C~..k_!7X,0sca)Ӥjk&vٖ VaF{A}dz3!~Qnb:p#{..o%n!LS}^׈$9{S7Ԕ {XlB޵3Bm$ʥhi\r ݴT@j_:5!5. rS$`yj[Nzw<&1'd]6`;H16j;K%dM"x?U-"dG݇(eS|OkzЙcqW&r3?,dqy̏?HkEb8:z|}Gi`))c ?;d?` @- B~yQK5Կ:$? %l $e7CxN] }o,YΎ[vO,Eʣj`KQmǃNk4@GeO{T*d]ӝi,S{}&nSof~(T4 7>!XnogLf62Y"c8̑EشϞ̹3ѦrՐQb3 l{~TR{o5. i0W͋}Y]KRkq)W=k͜=g^GH?e%0.W`aZUXݥ+ٵGl%KY` ~u[ڒ PKSe & -ն&cM\9NǢ!`wJlyK\R3xu=|/NNbgHPX]1@xi.$&-̯2ِFɦ,RNGV"5n}AG 9!_ $9\e@lS. ʹ7EB$ՠv e\m9[% tnv:8bmIvSvHN 6O+%b$O;(nx/.Okgz(4%v\9LPx4Xg.ˉ>Rr[T jtZiVumE=g5vU.<`֪o%[̻,u+r* ;I\"1;y8Cp"0 Is, `گWΠp$ǘWF £xš~+U!$wq0t|sy##D'X灛A$.;KٚdpLpi #7^$b㿁Rv?F|FKb1cGuN`BN-l %d~9C6Tk,{*,.h$L_BפyŤ`i#k^Fy?6!a_g!Xxb #5Wo<^ֆ~ׁ ]6E갵{F:_`^g DhWY̍c|EaG, 17TO:9}q]5^>)r->.Wl8jZ'$O-!yND||ZOrEV'_ôՐ!S. pV2s2k<:l)obܼX!+ͷOQ3|\(Vy&bْ^jNWpនF:li8E-ѵ8֞=q9v$7wev(lT@Mp9G V?o#gZOˣ v#ߌJk+w󽶎*T9!LfvG_Mԉ Jb85ar3V_U| I/m{ LFc0C#pyS~c;Јd+σqVx g efD6݃-n+$N`%߇y |9Gh&JB7Dz4GT?8 ː:sh"򊫽R`Q^erӺKxcA57[%퀊0Md&mENieT(){cϴs*86GW$'ɺX/50۱H(HGG`W <, ˨ G b\CJ+sپ7;eZ[#'㑃<{T٢M]0/t&WS(6N3rO$|+#Gϭ۲ޑ ,F<߻Oal_.cu{`LU44oŒOzڃOhCB@Dheܜ§@USҳi:^;Wb[j™aե^"k*P!`IL}(腦##S<'y)k m8A Dh_]sPEq(Uv:P #]U,4zYH$аKwxt}Ga!el;M%O=)-Eo &t$Kλ":WJ>q~z?|^ ~3L:] ZS5|`—w4`Le |+aI"y)rH&6=4$=nHc*K}ڔĮ^r>b ~y[AHD-QZ*D I^uM^yX:z -16˱*.~K~$N啨߯]5UA܊!@ F ~z$Khmq]{Dxf)e!N |K[ޅ $ĚE|kިg:\lʝ2݉s8 l%/䠷Mfu|g˦|N&~m@C*bOJ%'jfIj԰44OJ`v"A4]+M ?Sn&)&˵gwjAX&%ФyG x g8 gKw} #TbN#J^xI]1ۆ1A^P~[! 20굠\]P?LjZ^)M]xB$DYO 4lO1HUO _|i`fp̅)ߎ4k>z[)1ĺ?e U~QL{4X2j2oK!P> +RAQxQH3*khdҎlE%I=29Qk+J*oUn mVse(.]sΜџ%~++&+哈XNaU2\IsZ. &sZ#X?Xv.h&1C"8yÁC `ia Qe[? dvv}tWT2&ίM \hNwA_ZbttlY`y;/KJYZW}b ~fws-ej.gc)nB;@NP:{[/S3cev2o$v=OԽëe}1zm9L 1N34ދHo$\tPC2HH@vz r ~ƖZW:6s<=ۨ{TAHbp-+cF uY͘V#^-X22s: @TCvNk<Gyo)$$qvA\[=;!rxۼ /ǿ+qEvH0&DpY! :8)Cw(q.>irQ (v,ٴ Ӗ/(T\!w\KBwtژ;ƙ3{I`B[*u( b[=QyBIBW=[.jA[ ʂ,;.Sz#|hȢߍ~"7T}0N;3=ȺƳˀI2 %qnsPJA{W~dO8ÖS[${NW@"E`kD?گ8J#s;} @TzdZ6lxiCZ_2=؛>ܦ ^iuNx ==h:o9cɥ Rt)v4MD݀뤟yJ+(% {*]$,blN5bIc6S)ZYYS oE.4D({4؅z1Ay*! *=-23<;M&PW=\ Al*}hニ*&4|ڨR_DI e4HV{=|P{4HeP'V9CvE(իYqfMDàtRq9! 3k̅팋Јq ]6+DS委"Tؘ-҂ hՄ*=/RY~+J+Ӯh;ǃ抺0'(mr[@\íRX?c"#֑ly7|I 0ۢ&./:!#&@#fZ}NM*{,5Ç&5Z&(a98f,fZbpF?S z+0t^/;@ti'V2#UygL<-L'eVz!,ѭg2M]^6qnVǚҴ- ,5ȫ ^s| }PgEW)ٚ.Ⱦ( 0ma)){xS}8YVX8O0xX*dﺈrFQ ]9c|v_YV-bM$:ErC 9prk@r^.LN'[m 7cG9G'%'~m%g :666rY#ɕMt0Iށ>YU7m쟓o%N/W6/2`Š͸LUk|O~SrƍlSPd^s?ζPQͧ,yz|nre"^6L=)C+dO\KG*iJF GQc.0Եd]Xsh;uĂɿi[Q; QY`&NW+ju5MwRBHqύX6bfo|kw;3>$a)uxhrY+mQIw{+OO4o=%_?@gu 6Rp=!4a=H.EcO7/VޛǠ33+JOGR_BIq{6ʷp*j2Q#M3$ljZ C} M-sk43Y: t)<"͞dj0ߍq  -3&yQ{R+ ,Xu)G$+ڄX_j$0 Ę߼o G1Zb/nns>Qejj{.%#XEХゎ([dv$.'0@|zQj$ƒ;P"tnAOrlL9SG}!咅l~Pu gzWaiGr4% %?i[xz>.mG֛iMS҄SEgAlW۞R"Gn/yf)6#cZo ^B*SV* t< Sg&:DYm#lmYiuD3 nPmlCGSLaa)J8{sS1d@-]a 0v;fT]O$%z Eme&B 〣ISpAH֚M3Сݵu5u.>O f t,;Qy/sĨdK8 k R~ m]fdA96H!9m[glP*v 2OVI}:I;nᅨX}hL.*v\$3$ˣ<'!47K3lͅy?l "@#@j2CႥE'e >x/M`Q!F:+0>?NU'+ % C M$x2q#> dP{DJN8BX)-5eqRd ABS\^e1rސ̭lh- #:t8vaT*Zh'm)c#KuC̛?#n|{:҂.gn$[*gz7L; V(Mo2t=Uf!XFPgKxo<p٭}f!IO6'dР3_N16p`c-BU6Wx,-ONp\UGwI̿ f TpIgYBXna0rmp~ѹq6}3i肇|5wQFKGuFk mc˼Aayo U53ZRJKsZP}-k{H0U+ zY(BॷGd<pIlavm,qc1;+GRS% Uh#%jL$x-: &!Si_sSF/W&J~{qv$oE tDfAL(ݲ75X#c5\C؝̇ՠ/,x4K9k '$zD)|^-dzG (KA8j x ܞ'tat N)nZξx-,Հ)g{kD1xDU/A'#-+)"oY*㖱@" VWAۯ+wnl.zJz^xwUU s%qWKp>Hܠi\I,{9_}j8 j ~*~-3 $\a3K$x@=*ʏ{5+`$=8>h)$l\^J(a#F\OG -90S% p, k6mcH# +2wAxIwo|.UVȔU(R___qa32;ӳDM.^WCUY1 E=aw0i6|X#^{.tzɋt&4Cy@<ardc(ԳgZP0A,:ѕY G-7vv' F\MY3[x&A,OssV[rr%Bf>h4:-~74i)،4T/39MleͼQP/Bjk}2ZG09fx6F!d*cϬO*&q#90k3Z,Z%No5!܃kU`1o[!} VK":Mc*!f_(L`F?kGcֲF;{ I-oХiJp}@0(ʺ 8Mұ` HLakVI/v$/o=z? r=stp1YOToy}Z۱9:,84F85s2ֻi#҉-ӯ6՛0rNldAV||.*Sບ՞JC,BW}# #1"`8jBEb٨nrd2tX%.FPr9PzAZiljq/g'Z1o{4B <ۘFTbev|~98@:XF~N:oF1hcytXVȟw6Ffy$xmI0 ^8J`C ̆gI4^9h֘ [@d|W ؚ6 ?MПD;#<ip['*Z[]iQ+W-j&/szG'By-N̎Nf(kH S"4Z~,ݺ\v)P>]t[EUO8]O{BSZ%(v ~m-*Huvd}U3{eyъ  .~ &dV…ڝ$kcgT7R-=?iB܂Nm+a?7 )#<矅<7es:gV9E>}i^G0q3"ı5VФwgpuFXb쇫kx &ᖻP2*)(&7tJnXWW( A:N|%~@'tįQ@*|5^VnH@D+[#ܨ ?gsd0AhDezc+j"r?-^[mr;7M^>2ZwlC"zsՈn>>M'iCZ 1F' nWkU:.c=#KHW`^d- Ctn([]Ԁ˽f>1p->aW VɱZ8 =G mEL/&ZL rb*O}Uf12%)UwG3\[pAل(s᷸[DZRT7HIu.{W~sZu敶pژ%TAm< PX Xgۆc {." VF{8_*e.I~ڎ6lh ̉KvK0=&eyËT4573/^UJy JAކ%v\s:y:` %yβZx]hQMΤb4X{ 4GדjO$z jz9s04B7vR?[ ^bC((D Mzv8, -&s NPb‰-Jqy: 0vrS/n@ܜФՅɓI? #qVuE7d@[ qd0bnH*zI:aFxFT9h$7AĥSk*U^㞺 Mք9ykIZnȍN >+&vKC)|zи.&6/[eLiaUg_7Qa ǖu>CP,SK8B(nVGaҶ$}xD@bV>x[tfWwۢO[*6T3ANE" ؜fX]VG$@MƉCJ…)%xiȉwO8e-ۘQUS~YHӏb=RHQZ:}m{I@ `s/Vơ%5{/Tథ|p:;"c-a82{z{4\y,BA/N\t, <(k9C#Sҭpbk DfCI7ǯJDo5& il.3KJvEHoVmIm2w=?c;=cb+OZcՈ#C>}: 9ݖ+[tu<~M;] AX$t~ҡbN@Ɂ#f'LCJ&Mõ!"#*T)2:O~xߚ"dJ@`YZ34"(/u}1sigÚ&,D)*YuZRpneY}"q8++N|i?V!I2CYVa7Rp, a XE.zk,DĩgڈwC -,bj? atMc+i[QdcKyWvvS0VrTL492='#kXsئx)Mia`MpΟ*&V*ED%1gc ~]pEvQGXȫ#+/gy) { #rIJrwo .Sxsx[7D!HDXlE.WDf@b2!RX,ͥWY }M,ݲ /@XO|fఎN(,ݴ\zxml.EuZI͓>q(>y3+@g&3ᗔoG&ޝc@^# QXV^=-=ȮfHȾ"IkB ٴ[#6o}dIZ_m=?.>ƸI9,XGRF;[& Œ eYOP[zz'Ǿ%,T{9ܩv5RFw1:k4}ɰ%%р+ɼOu,2[0;-30.a4e قĔnXe .@7 jYݰFeIu˧gOS^]]-9a1u65`KE% JU)1.8Fz&U}ĦRpD}QVdۉ*sDOL:1c+IRvGSGd^&C7W7⠠X6Gׁ@R 0 1I0>Ⱥ= O Ha*sS9xZr#'KA\ώ΋ S?h׌5f:1wr/`l?^gv~E@u֛U!:B*\ԺhLo™4"-\J"Mj ]m?*TWN%#8" Ȋ4 nd"/tۦkKW0 "8oγbhHwI:}/{hFKY{B"GU@J~3}yXUB!WM ʡ|=wa{L7ʙ'%ٱ8V}hK;)]V!2'o''-$b)Kl 1x8WB)\ B|h$ޔJGm:n>)0s,#W֢89ɞ^J/8,3؀/3B9>&%0{T81υp4W/sK6%*a(c.팃ܢ855vI뫫Res(@[~BWs)B|L;Y3##VsPH&)! b5*e6Xs`J/8)렧n3JÑKPјk  l%ӽmѮ>NuaڍT~SFt b-gGF揉Ñ6Y[\5gNa`nCAԚtA hqY YF y`9Hi_PUhI*#ݿ2=8Ԏ;E _%lYpe@݈@K$}wTMjl.Ħ28щNa=B {Nf`4KşN:TJNLد)33}ܶwǃWBUl{D"ZFm@? 7kL 밚?W 9F==)4{LȦ%8*V&&W8qA"Oh|36ϻti74?NQ;>^dUq}\,Q}@ضA\ ߏm~d 1OhZwYN|$\K N5l9۔;cQ$=2/Dn\M"FCFT hI؝a璙Tu$O FkH@hp rXʮ~TPmVf#Xh-Yu8cGvKn5Vb"YLviاm8G0K^D߈_`dUc4fNhMR?:.Hsq&ƶ 8G$pUm9N(%(؆ױw/nɑcc1wRW0Go]q~:YLem(x֥W$7kV.UטGk眬LO/0U.SsM 1q9(-5l xFɉTi 74Ъ{;M,Xnjepd^Zeob!;3 Tw~^)N#TJ*cHs (,߳w}чR3s[LvD}IհNR6V>vZWC,uS 7^#~A2^xg3$9ļYgUrKQ,w!H6rK2,;f8ىEQR 9ߩqT6=qLtL6rc~}X7 |4a++;Z\̪nih6VQaJQ_{/ߨ ;0HSu y=;C="G7dv~G'?.-T:dbeEڎsBnD킀;e?$0kXZMOm1Xm=Kp w4//Bm,Wx Q/9S -|JUքufR 窅aIoQ͚HfJ'P;3urB!sĻE_|,(]84޿񔻙[s.Txv GT C9= 7-kLuZD4S29<'C<ⱻޠtbbCq8$0fӷyYDEڈQkivMߦbq oZ'6 xVBq]ˬfbxAqR>3m+G #+1C*qҤPTyo-*q;4q:@,0_S+ fn8Q5vBr"BbGjn A+,$b4 @g΂Vi>(h=yqbȂPHhca/Ɛ!$2^YbAwmBxEDBCks+r:OV[ZN}ᮽZW%VS}%T.FdRkԐYfc~tr!{$'9c9nFN"T!ߢ'Y_zWmd2wj+oP nR ,Q7ؖ'>9K |*13RK@^;B ԡ{wmd/jfet"Tcq;x7e&(PY|9sﵙŖ{vvzˡ5TG.`SDX'KkL.S-E hkի Bcjv/\o˟kv%r'\wn6o |h;' i2&?,z6.<W8*,4M Ul_1!¸p%Imt7I |계dq|AU o/Ǧ:Yj[sW_^A6X g`Vrz׋]֟x"«b 멖xM*aɽHUY3s fF)Eʏad zkbLG%*,p78.l}\:kWNn]\cwe 5ؑVw#4_UQQƽLZ21mcV:U|Չq;ggptRE8e.U զAW}yί_\B8LK㔀^n8m֒B[7p6*#,.@b iz S+>@U$]cLi Ӡ1qq.;* TyTgyj@D<\ɚo[lI\gQbw7Y*%b4Nڤԗ1q5h"x7R< u)¡ѺK| VΡrPNɓswmQ<d6TJmk~!wx_/_&$B&Al3H@86Po\?HT]32w~\6/SCRPYվVQ<#"h1@ϟ ;Qa6S} mٌ_ YW$[t0zQ>?a{p^f"`EEf+b?oZE] C097 s}_B 25cDtλynuYW듒HJ~~ iFG&<2"\X2&Qo=¬g)<2ncj -׏>n~$i '',uob7x؅&>gM˻E4=r~T";+wڡ->94㍣R<&jSܓ\ƻdv׬A/87% N=>ͩq#$W(ڂtMt")SͳƤ/a%az쵀Z&RJh Uà?%H_~4-Qr_C}a>','tp?YJ!lUgw4J `nY};Bw͖ a~]qoLI})$ݶ">8J13{ -DV\^A@0ww?zqRZHQeU'Agf"W[߱RH=u] W@%Ϭg-l@&3"zT ٔtGw:YH:;O{WzSЋa 27!vo$zF.V\zG*i o=\Gr;BqMI2uAa8ծ~bf%Q¯21E qR^㥳_Eo5)$(a3XPS0i4hq~ 21 Iį$C5E_L5s[I:E[9Xćeu R&D'RQ{̎F2OAEƢ[$W8iPqΊ0|;cDhAHPJ vM:҂k= UԳػivD4Hm(T T+]ܞ j&Z6n3T*. ߃j! 4>7O觗-Rd6= >}͍a%D-R npM *{ͦ^:ԛ<5}~=p)U |_>; #&@;?g&uk4b9ٺ 4*<8vDb;5FMo_tKdDs7P"?~sD" 7gVȝ ]imukU _#p<9|CcҺHgbG?l}3Zѐ^SBEZx*,yTQVP0WLnԋ|{Y~%)ywK|e$f=ˉɓ=41IgB| =l2KUv@-;&S/<-tq VĜ(mm!F__mqRy{rS-I 9ӓVzT D$7@ ix817#4{.upOZb/ )nX_ǽ↚pt EcHߘ䘪춑QP~eQ.iOGdr֔1l_uDڼ0FgQF2빷3N0>Ů>VpHxx/XſifS r)«A=w]G ]Gd.+W)T9ka`W~`hEJDĿv0qUcQQ3. zs׷JrMh~|gbfxq -I i@=GAX;pVbz;4dwC)m`,2 9ULv+@K]>mCf~߂&}eIFkۊ.c?rC^h䇟Le ZX0o)3[+FhAO"#h?"a*d,u.X;"qtje2v 7L9u`- Qy aooJ3Qwyvݸr)X# uN`)9Scuy=͵鹫n1E E1hLMƔB_sJyЍE1 SO2% ?8?d1ΠmÓ / X%^mܤ^#n1+.6 wC舦2>AN vED(%`!y'V.DQ1UriRA/Wuٸ|X9Gl b*6,z3`- ۺ^x7p}@XՇ5/4pᓜ’e'2~8(hW0y9tͦD<;`+ӡ MӀ8V}TTL!V(33(?K\AÿTj1DA${rV%Xt6r 7 rj^`MH}荴=7ؘ-90nd6$Qg`91W??/F0ߞ~?O,A쵓W* ^TΩWtlkX)/YB }=̄ uNƱuRpfl o>mxDA'K{$/A㢥ůWd vt=Iq٠OoWi9@f'ԁ;EXp8ibBgULdRRS JQ.W_AT;Ms`%R]nԔp-|FG,¾9_og,~`ּ{g+C9X*s0 wө%,N*IZ] Jx5݄/Nl$ZP?{ďVJ?oCUUǩXS&no?9:"(Ğ`^[.jy 0g+Ĝ{ũ;bmx-ygKpn xDYM dg\vCE{ W=ipA1 1Xe: PQ$]kZa0]NSO8I,řOrEPw[WcZNx.;z6*fG)mlK>tQcYkPDoI3Ӻ!b__.H Z`M>\Np2Rnj}΍J= ?h\?ڶ2Q.&e z\* H*\c6jIK9ŷ[bBUE88Q܎@ք9,StĪYãUEkc*ؘy#SF>!u*O#B$5[:ᘸ.֢Dsձ4aQ*O>GQtת~_M8?@亮nk.Hc YSG\V=޵nh/<N;O-172'˥_!&f]2Aԛx2FdMWQX**h2V;M ЍpUUqa9Ӡ樓F"{KfIEDB@r+hT"xnIcJmuwn3ggTd)8ٔ}_*m'«yv!z=j[B~ 󢉛ANpϖZGʤKA')J|?}6ϤZ"Zime;'/P3&\ݺ" 'Oެ? z {AiȋRV"$,e#hb:+3=lQXVbgiM9-T2^kˌRVt D&sGjVݢ:_ӓ_D|L7)>[\t?.Kv]x@CNJF~>bd-LMrʐhx4?+1?oˍEwX %]ӟba_GxW/U}ޤ\b*F K閳"d~p:;7r298fŻQX0_Gt>ҒzL:=. YøEX|_<94OK?T-?V{F`JT= '? ;$,~9-%11U&`L44, {h(!@C[܊u_Eˉ6"7,F9Cw#XN~|yb N؊p8C#)zZW>d pŠkuP/ a4L9Vèsm!1I(,N] зG^4>yLsն7z!DIRӨ-8NqEu<1ܐ>AY&I[1_:g^}r{3mXhR.$[`Xز'xᄅ[| $絯~ x:.ksF 2h7 Y#'xPrD?YaH5" ro%{-~}/w&!$]+ɭ̙($Z!3][?1oL,#Ix eʝZ:P3jC*2(|C+./]=Ω,7mAFX@J~9 ";B ^hZFU_!&} $YD n`q'jInkk 9SJ]qf*H=lKRAb&(4 hɴ4j~y5o٢Xyb+mR TCfc~g]iܻ/N R-"'͜><:u@Ld왚@xwK(pDHCUV˦쪝f3NBҔLM +W`eX&Z Oy/mA#Н@Ҭ5}Mp1{*+A>1['Cjpꎰ]"죠%)D r;֙g;>1mwF5 #aޢZ1b3SmZ/iIDH'gK™j&2ytY(B B_j(6PNMbƁ2? xt r4 Lw סTMu륛U[Х\3{̅Nx:W s[_CKo)*Pg8^(6>nm,x%fMbMhls95N"Y L( #c8L w߹FtAv]㜨{p7`<||w۵d;)Ѝ?)nv+&Uj x :2vd.^y; \EvzbAvǬiϔʂY5٥~׀!?@ndڮ7cՕK@HDɎˤlhk\k)ێ0ɩ7H\n.;=M~OLWMhve:6\B'~h>~00렠-*@3mҷ*XLT<Fvm]]LSySYU2W(>Lh&MnL]@{#FXiVΞzI+pmb- BF˿ =fTS"ذ$VfV NI^qzo˫ lFljoCP߾7 % 8E;UL"6"@TSf@6Q8(0 57th⿶o n*{=fnal@t36-"& `T 2Ҝj, \W#?鮒Qp"Ŕ ޑ vbBS" S:r sR)t4o4y2:&v4P4>I~Z_>8N(H)C:U]Vq1$B(xNhGVL /m:$Dp[j}qeAz>HLCݠ~!͙n/BJʡQQs&T6u`.]G󞭼mmo_)oV.~j ῆ$DR1'E] _']I۫ob{KȹCt0/@WǗ GPU[5{&1,e!iE_[#k::~E )"F$O 7hGRJHg/"%< wVm&R P ]R_SC>طXXPJ8yd 멗`P7iĥ+xl-8V\OpUqAH$5@)jXGGHn"4 _jMFIpȌsnSSG5ne rΥnq1Av1W7@ңT{`ș+C>@ VW<\9|uM i2ItRAeasvyrPGBɍ@;^ g# Xn.q7u7Cc(d9'I`t[1hUNlD,ZUPȰ;Ma B5eKcoSE2AaBऄdžʴl>rG<7r?? )vh@ w6%".>+t^.STGԡywoFf^q)VyAD=2HST Ex! "'LSOoo$Liڶ+?i;k= E2WЍ;d!k )&n|ӘRFTIEkKh>DO77G/*qhQPFK~{Z}8H(C?D'N* f~Q}ZQ l/% b=PL5z;]4KzOS v::2e(0V%5{k>@ACR5䈋HKfU"5ֻ|TX>B\u]ޛKRx?c/=v1kg}@{{{CC}eV`nՙsm2%j|j2tGo_1_t9e=v1D rV^mC8J{;x3MQ9xL~Ґ;jQ+HܶME4:H:o)m' 1 Qi=㯬=1'@r>vqWw~%Bᜃ鰔+{|T P)W<VQuDdu/8}7>jQEs,'YFSl5S(x$ a -0:y8ɑ<3!Agͽq>AW5(=.e`o?yenQ@bkI}`;Pjjzъ+ԄƯ PtYHtҿAʜXzm 3@mNދvB5X`~A-#.lrvRI]qdHCH@BH7o+}"Ӡ( # E.2XiS-(|~}x&!OPRXBM)C(#4W DPq0Æ61Cx<6pU) ЯjTR6>ݪ}u"LdU#)w\f .^b,;cIݹ? `d'[Pj57x'W_I D-4@gyZuWI\(Q;U1eSV4u> [m,nN>+22P6sJ&erH30YӞ{%Z[s1~U[Z;T2o\*g8d+ P!+iR9R7R mQj*W'!/qT2nW۩][^OB 1Z++9|NN- :d'4dxto嚐B Rɮ9 ! 7 6j1OFPsWCM#*QbN' !=ʝĕYuxQS:=r†-R/MI|]t*3=f)dM¡5u 9i\+h^5X1'6ZЫNÃa$+kd=Ds|B ߚԨ(MH*Ǻ!fH}aa t++Tk|rab|?IӻQfaO5OUIlqT =T4¼P5 ?3]ege枢)va;mZ@,> MTAN,(|,^pKPTC(^M%9xSviX#&෿h@(d@^ٖ//C3lm+NؠN_|>*GXslTW_ZNb~Xև8.>QNBt EMosK#QahhYS2@'P/C.cfYq "q5-K\)³G?H9HgŌNA՘ og{}4knめi-mL +Sm? ] b[ ;axqo(At:lNP2f:M *}}̉3;}x7k7jKy܍phb c"0;gіpTZE@,qj-ei:ѱM]c… |=W٦uW/9K\F̤JU _kitp_82bi1@qCO"l xͧPm~2[O0K4YlI2RX:>z 0cq+ԓ+t0fŻ.}~3U1g3zKjL:Vv .P'_b('I=n_hnkF%)Yء9Bk|Qf0,ox8G.1geㆻ!cA1;*ǀE'X('190I oe}Y,x"Y KNZ{g!Di0n$sgǪToy1-0|H:Ӡ{f+ fе5t\j^`{09DT#tQb(ByTB1/  wLAKTzKVZB*XemJS")1k-Ff8ѤTb4^O)7z-GB߹R:^fdHgmCHOk,] a;W19<*0P貍ܴrMiX(8 )w`%+L厗txԦ (\OVmXgs>r{wm!~vyF7? Zk:0T FcF5|}Ԇ>Ƒ[,vMXID . 5-6 je-4~mfRogZmȳƙ.QOV䫇"<@y3?ɿPUI٢m_=/AZpWG fg-d]cQ8ƑAGXw7vDSݡ=vsǧ|[\g.C 1xDlj;KKr\ri`9} %{'pqVI _p{3\O>"Bt=eU*=(ax`>-z=&C:"5@ڟoîl{=fXx)/d.LIy}hЦ8=KP⹧Щe u姦3/f?E,M_L#{ I 1#GqPqI۱>)/¿370] b<cP4ξ#d`+ڃW$ @ K҄ZZzs+ M2nN34J1 FYj #a/D]US 8sLB#"b45af\`{M-yT&D+P5$?Qz##p +Ia߃`Q }@%#ѰD5 Gڞp\uD)h'ROHƞU3 5e4.Cȡ ?ZʏLkdK袪t5i| H0+i"\soax/*XZ?x`- [tj(f7_zJo}~ |'ĩoqC ̶uhsFT{oB2(kPtjo |dWڅSᗎ6a״R%.KoentJzjCicY",6p`R;{M"}dXVZK Ui{L=S)~6Xcm^'ydu^޻W25s."8rk3]|;#fih"5OBHaT+qA"Yoҟ6A'0u,_)<fTa:3Gls+lؑɹ5e+L R<#4Lz)awB-slM(%Ul3'iaӈߺSķwA̹5rȩ+p,Eg Yu C fb힦ACx_J+#4];HӼ#y7(0?:X[*AsA}W7#(āȏ"& Px-WWciXco MjuڪVGL$Wk01Afc<운] s\Fk,-J}]$ Yx5beW4֌ҭawOfGq 'ޠtDe&'A@>鶇%,Z_P/D)cg0lŁE1fbGGoxȀ1pηgc׾B ZP)مnH\读uB`Hܩ7?821 U i_{̑Y,Ͱv_M42uUXXءuGƀ4]2s,YZĚKe"T͐k+@O "zxIqxnnt LH'lhs1;NTBv-(E>[]_v 7s"Mb-uўfImgouY6)tO],"vE>J 0־qo<>R8XBj2$q;~a`tm>J4GuȨ]$]o>,s9&HTKR hKk)OOZ\)NyDcmʻăbW%wp=նsu@T5S(q2=3yTL*!rkv!+Ր4xD:A":aW _ %uж3^F3?,8Sm=L:1{lQ}D?D E@B0{|w?'ݩM-5WX%lk|p&{),wRODdFYRzZ#e]3"q Y +}|(¸.kdf篣kYV:R_/IB@zJZcGfKC'@SB kC(׭'P^Ӫx9E5k8i׎.ʎ?dhLF_E\TFPF(Cv/}2 &c= ^* }}xgSW "֡O;4~ws_ ,/"0haq@ j:aB`3 u9^˺~[0F[ŕt<܂e2 y?IU]o[5"@ y_xF(`FaO9fQHѴc33-`B0#3'mHHp͙ۉ[S!pO1>|cNa82Jucu=UcrK4h2$2?Wˋ [z 0g^`A82'7cV:cW,?#~zp}z݈yU @dB{caEҗ)vY] c&*mgwc}2¾LRk78lVR3VU3 GBpY/ӿیp:Q{ߖ/N%UvVf0X"UQ/\hFI`pl, 1Y~}?=(IeBvPP6naq_4'r7ӌ*эTʦT8LzSzRИ_!"ps@٧veY7lLi;1Y!_!q*Gf$ړE.{Pӱ{-d<.Lb,Wܔ7umS(y_JC^ȿX͒KC\goJsP*RRI%|hf j͟z,KfL6GqUvS'%{<nj1"j}͝qv}*{z>sϒ&{=Z;ogl*Ejs~@f؋ \H$y[[݌##6HoIշ^>RNI[`1,֚^@Us g14+Qr~G o7@VY{b JVE8FGmG^0B>ngikm~./ 7DrvPqDcُկfBNjEfxִY05ze,2 ̄ gX+Moû/™ wfK!QH){;)6i)zomR{Z"y4 ]Nl, ;[=18CJ jߛ-LBAyoʑ9OA׾ѲAI$ĴJ$\jL< xbVx@YoI" YE2lk~wѶ}1dG <ӧzK-QNHM}~37yK5G3~YTW2$?>A﯏ICɠ&gv:T0v+}$6f_#fAu߬@ru=asJ+=L[ei#G1E^Nh EI_$C- _||^y+߁Ts"V[~YOeӏL2T~H`:!sˇe%~6i+#2*߬o^L(Lk􋟍~ L;.̂8d5=% ^azv,,9E{F\~\y(n+uH;ٸ#{e?%w7C$:E/GGEn'P4MUcVFZ*Ss1ae \QjWK49ֆo_\ZW1p[ zjLzwϘ(-Ћ 9H;419 8"~Nyi5Mj<˝'e bD| nz*gqbT A1 `H $Lj ρĆLt"2]bJ=iJb ؤwf ֪ul5W9r1=%_PǕxEV ^ɹviNϼV9|]7y<+nέ΢4@~kԉsm{2ܽlR6:-XtQLfoI+pIEìU<lH-yx(eBSu͢>h[ak 9GO PVnDBoۀܬv먣b`3%Uϛ\b6S0]_`㯎1c"E&f|Wb/bMЍk5O#ǽ_\{Rv܌zW^b~Ǫ頌yQmp;,F*Ά&>ޣ( JO{ gTTU|A׆a1?)F(ժqf]oh͉9yxwVNx$H]n%D害 Б(ׅ0:TOt+nwIEdТL$}R\8sD^o@>`6pt-[{\9 ?+}nIEܹ<` tCæv1(_4XJ͌y S֍⩉zg-FHɆYj*8"YdpcQܳh~7QzNt3?6P+T#- h%if|ڬD YNJb/@j shn{1sQw5=ld(p;o|J>ZŸ[ D*Vj%9G7ҏMD˭K]Gxx%4X ]즩̵PlŇ[hѹ)jT^t&ԉٝD,Bd c*J4id=i\.ԋ$/g4B?Wrn͊¾n<&JbcWz Z@¶S3ߖRNBxc5M\4=}4]xNrmW I`r)E܅xzd퐒5;t DtEVL<̑|˜aB ,n!Nlkg*]_>jF%/z  "6=1ȣ}_I^Ί%Wd7kLtK)noe_U~_/@_ҒbE"HV8ά1HӁOF03s?tn=#g3$*{Ah.^Y8F TJr ɘ!aau}XN~kx4d lvq%>oU%a,@c4WD! Γ > U ҃s&x<ͮZ8nX>]ܕRnc!;6|> K7L(a`${5gכG&Uk%9A3]iA{R/ڐw($`j*}"oI#b4v͢,b }í}"07@N <ݨ[_<QhGDxx> !(++^H=|QVte΋RyZ҅=D^Vc;!s[[AoݧTcZ' w%Z})3^ t"wyEUf4zќ* 8f0[4̯,sBm:zdQn`?;#^5]y2OsCflvrD}O7K!PAfKT T ŇHS"dq\[}A:*H 2{cHGAY cӜ Z6?ߟM #Ky^`VUM;´ '?q!q5weCзJ4wŸ6=(V() /#>CVǹr90vMp8b?r`TA5숬}*y~on id>mڡgg <\w(b2Ӈ.*T)yk8(g>"` .—4BR @Au5g@hQoߦ#8c;kB_yS_mk`H,<}uq@2k ٰue,2GLzzBzt %JNp BN6ɚ`8K\U'!]d܏^3ZoD eޛ="9E֨Aa5lwˏE-pRo؉_<Ô$B@7c`hhLAB낛!МMa֢đ1^ KR*&<b&"ޥ> 0WxP#26VgZZ;nc3cÏ#ϴMH O1gɣN_r.}2l(g^~RVԃ IPOc5z_jH/t8dyՋvQ~t Th!`8x0cuq!(j> tq ^D-q{uH0{ VTGtO%/<P2xZ4܈6L\D8OBU9RoA\vAc~D,Gc$"# c`#jł_]|BlBb(XfϷo?]1*V{c^slRTfXBtP8ؑ 44.vO1Md]'PPo8%fk9G 0>9e|.96UM!'nJ b ďY-h* v%lđ,gS6.u I{vaq%r yA0=P!&otfmqρ3FNޮO| Y@0PvDiHɸm#\'%s?CC0b%' _Ue2N5"c nQ*^̹٬?(EYfe"hWsvIOVejtm*d<&h_dbۅ `YX6izk3 2aߝtY_̜q%X7(h:#Orf{s(j#6viX1MPSnHOZhFsv"}OQQL,8UtKbp_BeVu|^(kLs1Dh7a?H iMċݑ/VqNx,7heyI=.yKk{bVL@2 QIpDJ"dFAv1džēߨE̩wG?oNyK=|mglW| ]I~dZ(R HhaZ˓ kyڮ(V;^H#t4fLFJ8yMB-uG_(Ʈf$}ff!\K>`⁩BouEoW wD-,5GDq&6. )~=8!_>>KM5Kb.qPϝa}C͔k~ ?]oV߱`tv_s+^.t4?]܂LZqz`[O>kQ-۔2cIZh#5,zOwpunp"$^d&ZHV~#0y;94@GI=ܟ8^lK/ٌhΕC@X^~rܨsYlw[ỹy+CHXOh%5;HD"gCSسW*v9X =w>ꗵ*xكױQ*O;nw)F$ !?SR4`ρt"C ($V\ ɭx$.l+!yNIy &Dr|8jNG&)b26h 0]}d$sQC[Z^E?]SsL5ğ"޵/MZ!7e`&v^T}ߨKЬSLN8V>|]/ =41o0tjwmز|0EK%@'\1կLz}2GE!n :U7Ew˟dF0vlahWj b ;  8D}/DVX6թ?M ?aOrseA3;Z~M$|b)%\!jd΂eէS8@α{(/4\Ha_'4qER}V"pE;M|2^ d " Eֹ,!݄v"tԡ{ zt'^{ -Z̧7_n-U. VOt)FQu -P{(腔 Mk8#lgA~-Rgdn,8aB[o2a9j4 #'DouVȆcZwrA{ZU;xUscY9.L ~^m5}-A "*u^9Q|f$ݗVv,Q~7A>s6L0bϽwr6 Bls"]һ^apm5l'>A-$3ȕb -~RN [q>Iop^p5^⛔0 B0Ԝ9v3qWjn])Esf5O@luIOQR*hiM%'%r9RMߖ|œP l8SKa%fe7LbI YF7!+-V'ed2c9*.;1!8d/E҄e#ezZ'E Uaj"fÁI?U,qbĺU\(oUou:: 5n)O+ݷ@/NHb-Z[R+|7ٿHnN4;CCR1Zx Ό0uhMA 34)īBGۘ1,"%.ˮc2vHc v'QVmF(GlܳArR8gZWULJdCŭbSPMK&P0+1D}\0Phv\ji[ )RD_&>d/6{89C_2o7H*)2{)A3MxgqxNc rvq֍#B0<x% R X""aVGGsA,gA< ρ0q@  nK6lG$ +GN씝Veg밡p4$O-^Ey TNY -tc+6B*AOc֋N ת lD/Fy"uB9 RTv."Ҿ'=E #.S\z 6IEQ%/?A `Vk~>kX Y MO }]#1o8} ߣGZ?$rntLm 3>nanM >LC ~31> k|QJMfhm bSW#ȠI r-6Tn`%Y_M߳Re)x~R!%7BOa.4,_⋤|qL]%;=Qk3γ[gqhDk4nD!ԥH6C7Auc [([= r.G%g8bEIuŜo'M3:fN ]-c1X2ԁG &L:mZcF^; 𜓉Y]!|S |(/GmN U5: >k /Ic33v-dRf£42)ylu."~s:T*$Le۽'4OoBlyz1 Y467j9=Rdd뷠b*Lg>i'{L9'nTϽRF_!GhJ~ *:D3V4JC? ~`$. G}Ў(0bfkR-#;k,~(>S[:eOHj!H'mYM 0BiL2~xaSOWQ4QϠd͘N{K9 ,'mcvsR/hbb=f]E kjKfpxnlIJ:5 -#jǪ">( '&V޶ T-a9©`wx4\'9{I:4 ¬krP:2JlkS}[\?wdVE͡vSNt҇]~B4M^;'-q>WŒro䭐nUfWӕD3}x,0sI}kiW|9c|<|" [5Iy7pPxd+uڹD0 +b:ex^W2XB92kָCd˕Avd ufCM 7hb„>]`a o^kM2f% @3!$i)F-GD$A?p>b?K?jfԉ HR-ڜSn0o!5dZD:Ƕ1~&u.M]CB?La-_1En+_ָߺGini (M% '튳Tb¸J:؇5_GvrG0PpEj{P_#01לREXuo(?$dFؾUʠ5o[dycv=M8-_`bZ/\G~t!İ?fH1PXae1 @wyaYɕμu@ه1H,AR$j1ED>*u$|kO~c7hMs ᪣UD-Uܷ{@f/G7U= vTKHm>CfrK/әq)%R9o<ӣ/Ա362^VC4  j?"a[yؑ7oSɻ< ǓêS >"'Kܢ,`h6 ;NhaJ2;iY61<́6/K %[h"әT\̓6sn~?h3ܑ,s"p^)\Ltn?Wx~ԇFf≆-vfeRKǤJcWDdHbu-$4=NADÃPOfY`E;fOT2ͤ]9gc_ M[X4EepnE/o :>BȄHLm_`ڍ+Ҳ˚Vtd(!K$=@:  5  F̍FvDh_9%& įWO~yUў4[U!KC{B1paFyB`R pN-}~XjA-]=!~Y creS!ьrJϫR@<_<@d1ոY"b Ur7oWMsVm. `a|ePjnDׁx;lЭs`L.IH^'nsܢ̷~ŰV}Vk:SQHTT+c9 z=,3~dA݋4op)Į#!3IB/aZ}+9Th̒-1⥾g?aK6cQGؑ2+saTf !z@ 85kąPz9m y.6i EC洏 |)Lm4+fj` :M~Bx˽[{U_UϢ {Q$PP2Hn=)v-HSjnO&ClQQ=TYy=$BC*D '샥*Sӹb G' b~޶(BqmYH@ĵ96gm.[jc春( 4ȏ<< a_ﻇ+jsH ݯ؇|O%e,Zbőÿ6`Y6s|@&v7a̿[\waS;L :]g(0"S _d\osRGs<'}Gg(U{+<<E }6R]%H6?w8-Hx 6Idu;[eeMxlu mQÆ'&Gq- Rrf]<._cƫvqRsc"_=NRsTI(LDϵq$\:yqU$Mq>{Lz$y0,XdAS|' 8ONqbIUE7UH0\s^BYlȁ/ξr8w i5ٗz"ZiKZV;}WaUYA4eu"Yn)wdtjj^>l ]$7O9S- v(=g!AQ/+Bx anm2ټ ߧ@Sy Vr#&\;'b?=,R5('gUg2_kYԂ.*6ogCWWX$ʎF;H?sWUmfڅy+dj*_!6jYy:Fq ݡ l%>d~t0u#. L-ʩЂ.^tW$-6ĕh!#q #?ŊDYC`.? %Aϲ#JzDq.QOlyg̹ KҌcb!csP壘QrHK$,7<" 4X=Ty P3tl p2QsVI/Кcf+  N=4:q?ɂڍ0` +v*7'`i)jZFi_4msӡ3tI^4x҅ILˁH}νu %ŕؓ@|QNҨ8YS"c)7y{6aE<p`C=8 `AFI '?tO_: Z B%a-fIOrgfYU}15.-a$!]S)WRwiԞfT/ypq蝈q'x3;B/@Vj@X_dCvOyr .+?}u>\P,dU8ƱC!JVjoQk.6t•ZMF X\ٵD< kpUWy1} |0Kǘ~sGf/'S֘/ qDb͉k3VYO㍤f_Kܐj=J04B(!am i#1IF]!ba~E(㠾.\Hdf:cq͚Dfp!Ey.yj^V o7%ǒCev}lHrE;a&R!/1m9ߘˏLc=%zn= Ύ{S k16!!c-i>Ŧ_'T5uUq4L>Dx~R:6fOcoIOe5;u(G '9CXĽP W\R,Hʅ>2+)u Z|[Ci|0ց?|Ā;AjrV7V1cHI0eWf.lYu8ZL$n*XѮpg(+7_b yZ{ei[8`I"(K/F !kæqJ,|t1XXx]9()slj -ňplKfkgInA()z1M…j OݪEܳU6(y7 j&B/ %N(/1pf3}At= Jʞq[CڽcS(>EōOUOt9F"N>_9E5DMeֵ3 &QPy/b0r.eŁo1\YY;º߃9U=3<6بxݪSw7Y6ͅHW $e\VǤyjH*W3 Px5 ƹrȍ2fg'ΓTQ5ø.f3ƉP$*ɿm `(RJLa/Z̯ , @Yxdɺq1 -Gg)YRVHݗKm|3xJsTȼxH& bsG3?s2G@`c=+dNP_Θ[5k۬FϫVʏ7PL6z;)c]654 B:HkB=@Ph|$Se8C~uq,qMx qDgRkWHuH?dm@SWp 2qϐ|TZO0W.9b]oؿُ_#)W#|(E]1EJG|C,4ט惉tPx i J!XĎw#^ rdޤ Yҩ-]ZABraS`6f= y I=\b5ҜQ,& b@9-[͙8SN푛-.fe+V.=uԅu h]_7mf!BQQ˙Udqy+Yc>.iaPlkJ0=Jq:/8XGdҩ#W0b4J8f 9јL|M @\Ķ(:z[b21aV_u8{DؐsREq%^u!sb)΃@INϪ?։~_6.Qܸ1bd (AԹ9 iLgJdors̒a+ư6z? ^.h3sp!1upPgH-5#<șOZu(8nʎKL2noQ'6/ƫQQۃBy!PWܲd1jB8ɥrB;YukOw0s&'lFˢ7 C@~ڐ9GճUf_KD < ͋>'Cl4#:΍P"[7^Ͷ#iO>~~e%a1EL#7v&D$t'HŽwkaDF?NH|\Ԕ_0oQ#|#S3bsl90qڠ{" [q_qm -?aŢ^ Q$c4n\%^ѶF ]A8HUӵxG`GK]"t>lM#k94U.)qYO߷@ 1"<*fy-$ i8V""XT Dc]2Sr d)==ϓ۷j1o^>ИߖYn}r3L#6CB]i 1QJfKh-A~:K\t8ǭ/㽧uEhx{G?HY2y&gB%|Ia}ђ %>#}xcJć>(P㋁p +^)Oj| pyE沑4Gn%mf?EE2bؚj@++6tI 外aҺ7"GCziMPJQqt!̖g-r GS϶ZddD֪̆mp\b:[^"Sz gQɡ)0DÖR# kӔ[PH4,lȽOF%jr҂ QZj}鐒HS'H~>8Aaz #kY*b/~!҈nI% [wS*{&NNS{K׆Mx$;?ɛ9Z*z_1lb%x@nASM9aJPʒ9M2r Y:[|k%@7G*!iK}<0.fAqr^q }{<\KaZv{Lj{h[wRX?-נyY0*ǾI"RE~lJ7lm2XUcl5 iL3 /3vCأ^UVo Ft9r;={^&u0(%~~($bYi)U# ׷~Rĸ[w-w#"!u}c3゚st"Ff/m G G] 6^6$μR48#E2$\꜏a)PFz,dz.n%ÙJJf ֳX_c_MpM Y$h;ZS# ,tF;ؚ0o6w@o1YDY(̡>T쁇bzczXX]mŗj:n*B5zEN{jȢ\frޘ|"r*!.dj˚/)0< #>3orSH;OGn:.@eȞ= \MPi{y2ҧ x3^=T=ef![CETN%ӼfSoA%Z)E5i2 YEY51V̟4ɦ S1&Q~#܉ XrxffFAbzWE}I?Ms+U⏱i'*9]B{ւב|np-6!i,7FÒg: 'V#$|S١PO>]'-g(~N2 k,Ɇ&D7xdσ&TgcvL-Ҿͣ0ּ76Rn)'"=0> k 8)I%〰[Jø3 -zg2^urUD%xcLQ"ﳂvɿKElCšSd4#hr}'n\vwi?ּws1FqIcvjAPq^YĔR}!1Kao :"`htQE+ r$vɸi79tǿvIb5]DT>k`7|#:I9TTbaġ!_l~UO}ap IܟTM/QxYZR\f |{jģ.2R}"E 5g&+S5WWгmLw]Bw/3*/h00xf1!r\^ނNh;؅E hGi1NͿS@J1a[q1i:j0  PE 8WzJUvI2CPX}}GaJH8p_`QR_̎>3غG»޷esa@.BݿDgGs^,}9F)%5"A8 |ߞÒ GAEs֞G[Lp:&:I aN)6ygUY)$O 2B/'9sgbᾮVPXQf!1v۲CTnaT _Lh*l4]?E#;g^ /tMTwB:%RN*=KO8Sf[z^?rF(-_PPZukRRiTsIЃbEfqb-Y\yǦ tlJxV<nd$G5ԣGZvo|Cpԫl֙$v ?p T̺<e0g?pEqb WFtg6{9(jmFՒOqscw67*uMcYvR!Q&NHDj|7``ĔNč(aOo\ܞ[4?X݇<0)e0d$h4k27&S< G~E_\x]7@>H8yWZ9<5*`NX}_ o,qm-j3@6Ax5H}pݓ7XD]^yv\}PvJ7.Qm6jVXz~si9Hz,/X*¸("?W0{lR̐G<1*vLzǑ)m־\`&0FzAI|Eļ[w>Na3ttcT䂤MB֮’.XM |3:%]w/lhed-*z2xq ӎ%w \B}m1` .Ϙ;6f6k}H^Jn#܈[2n~qu| 肌"5׃HL=@MH[ ^^{[ @@}}"L RGTn2F/K+'q4Ȳ$-eY8s`vxE]n[hi;Q`4IEoI;*FH!L4'pŤ43%dq^UI=`#,cBY~620KMG$ )geTQWOڂVӕsow )a:d]"?|*^]j[ryuAI> SI^H18*+${B{[7'~}J)&u\:_w0c@/LWgj=xbt ̉*`.Qa_!u0z^§uHnwc(J9҆@D aL7aFk4$IO;{qBs5+!800Q'](م–Ut;b  Ȱcw0"1/GF@Zw6]\|RN;u)D%;@oRPA-x9h(%]\u9/\3CZ C*Ea\\44'Ӽ;lk6X7%'gBۇ%f/?ZVIq‹3_5T+!՝َk]gMTkm7.~_Jzc bGL(Gyr-̄eYq3u}V:-H`Eou$%gXebto2M{ ]Ҫ(f %K !\gy?%h0-(u/U5BʼnA8hfyWk]G'q2p=dd %6f"Lv{QҰh1.(;t#tpy앋&'Xܒnm:Y 4;ؔJ]jtgR\cidSdt7QgA> $p?.^ɉU?./At k*/Ç9:8W0c!XAՔ]Eڒ4p'']klWBN#Y7^*\EWep ^o84Pg~)`q]~w~ubp\:B9! dl $rAxF-Q#:b2h?֗rywp|"'h e'6c]{. [ɉ6hr٘Њ/*Pݻr "qoza>[]ww 9ői(;`ep53UvTY jL%#o%a<豱Y&{JF-lzqсo%mKLztfve$LއԠNjx5Wgdnޯ7:=!FXr "&tTպCEHtʛln5@n>H.AeV u{B3$kƻ| }@O68m!'w(愐70;BͻC4kVe0A !i"IKN!Cr0}Vo~V\0)0xx~n=P˂p VrYz0 0a·b-n@_z*S,R6=9Sm,W7hMu,$أWr/iEvW;(7ʬ]Ruos =>||P6 7'&SzzM#ߌk4D+ cƎ{J \qCÛP8Cg05\mԠyIx%E|H(-km2V}{pE~l]>=s8[5{(~ݓCy ./V x۲,6L]=NNbQVguf--deaA?ԣOeVԵw V\jʵ2_}yH6RB@,&=An}K8X_;5 63e',wJzz!n4Jo3!6x}m>:mw`i dY/=>/#)60AyeX8?mo;Fh}d[G}b5b)B|v=.f\2y'l(q4 5%}waeu &T ,$4g-1v)_.ZW*?[3c;-WfUf!`2 ŭ翜E,9Q[5$V!R:( 9ɵ2hsuFՕp&ϐe$Ŀ_61&;a&&!dKGW_j7> *7D,g7xe|ZiU"p(@ l[~'ܕ8,Ϝˢ`Vq\\whxD:ݒeQɭ]nvƲ޽e "3J#$3)EY>m V-R+!ʱKCv)dZ_xx}0CE{L7w"O%$ߔRCA!}7'LL CJ!m %>YS^`5) ,}&%,P.nSD,TI7GUÏ#yeʽ{r^J Zڥk0O`̝~qb\ա7J6ԸMKӐ\kgT<gS.+w`kf=yGsUң`hs/G ao ,]Jcw$L~q\YGuwte .:I_5~GwV(${u^F^@ܖ(%tɃJ@{6ר~!tsYT /RtehCr?LǢavxfC .(l |7'\l%Ad}l7J\{N3 SN|fVV ! m!INv$eS"*Oael 髉!oIО-c:[^D?˾a(NOBĪDxe3U3ڟ(}$T#1J.-9ٕ]I\{DixxNQ :}{:Jt(LZHc5qx}s1lqg|' Q UXy eF|oT"`NAg{7'Ѳg΄w1=JEA du!ޱLuJ>$X?5#{τVw ً$3^EK@2?;#lڍٮ~Z ÓQN7>XXĨN-WRㆼ< N ;0(_0GXo0}8Iԇ1k?H;%yߊrY>#cэY]9g tyna Z:6k{Q!PRHL?\M.Z:EaI,iT|o_z݆헑'G>"2e:GkHE> ۱[U?Oe!A%jP3Zܑ>ffWZwɞB nC+̘?uJFշ&1G溦)VkoGUJ#t(5E"˟4A!\}.{i2sR ͏_+NkWS+r yEE=l^z ׵O7'eccfDj[Ay&`1 *q8j::zS$XGAtb{rx6XzvN3`ku! uVSHd !DN靜M}'f^HHN}i?sm lҿn<)KL>"1$:aRjuI1\kvw4BW@9)|jn] s'bK lŪ| ^LLJy@?n&5KEawRC>iH=z wMnACIĿ\_|S鲣IiH$ɬr{rzX1qjWXU{R=CXw(OL|6K#ͪvY4}a|;aqJFWT=F0@Iv8t>R lS\X={ F7SH#Dsf"!=:3qξY #ߺ HCYO5>;ʽ%TP\5\m"5ҭRmW˟8{$pOd'b<U^A {4[ݭs`dAbn{mLjDs,12!u,DIE = 0CHby5ks$EPRV%)"}VsUE^ܭMA~B%XӺT֟r_@űԔڶ)Pf')ҏ\Y30~)6SK jλ\IYM 6[ue5wc_8 M J']S?u+E;un! YbZot,c# 0WمuX"yz$GIrg?.aވ IѴ"t .(s H-nGZ3q)rm^hIW9rP"s TSH}mIS'Y6 )4dYEY_:`+cUnꝐ߆/Y cSh5(kɪi $mpX(Р_tc.ȣ$*܍mԩ 2R9OUl1wЍ~K^iysܡWFälsgX+   dPxOԝ @/yPrBup3~] F k 3^ձkX]4wbUŸ0fxS=.H2`]%N4@!=䩧89ɷ$9 =P1`)Iir)ynrG]x} Di߻ī[rmbfA) *iCOo弜m^k^ :pNp.ұC,^DyUF C4kQ g4^4OA ByvE2I쪗p֭rĹu1R^K:,nŒMT"(%\ Ϯ!7>qr' A0wc ?pDD]*Ew< ƥeŹڴv R$$/vmzȂ(<22{,ڤMCF,))3TG*B"_mi20ಞfV)*H2O2v^sjpHߕyM4:gYܥB|csDVTv̭v>(J[-Y9%*x*(m+v(!Yky+^C^Juި' .DHQe)$ WoЅv<K:jaWbf$r3cQo"glV̳DT~ƎMP/TY^`bAJpO x 3pYTρ✻Tݨ9Uٰ=L[uF_GB9SEem?6D1 hb@7يUH;]JʕQ/ݾӎhH宨A~YGef~72<,u$>CbCb &YգDZ#?잲K-L m?^)x;#~X髹 /Ry>:'wh|.9J =]JP#< ^:BsjCžb3ү2lo+H [uӗ٬DPz[F|wӰjc2gִ7%% 8|6.-guH>E"t™H^v~E¥?]0P9u7ޮT ƿ6T$I1Zv5X 7~ARP;#ʼn1A9qϴE|c spʨY82V [QTw_VKС 8!ذqC3]^Vk /ʿW3(7lYW1Kޗ@naagSο\o4~Nh &:ROEQf {U| Y/M-6."̨/h >]@> p0;yvW*IK#8F3l >JRekLj Qd8Fb Q3 rv#CXpڂjX7F6VK|ź:uBTTkI ̓* zrz6-߭zAPz+YԘRRş~z$J]% c3LR;u!n9ߪ ͱdlnƶp{ 05Bԣ@T뗼x%ȳz f`bq-25IPI ӷ}E S48YIw1^iqd+̕lO]"(wuwm5qNeP(p%&[_η:W1N1rXi\ymoyY89 . ۶ʤ͌it9ܧ0΁=|KPt(Z~a:.8@b[F/)uFvhfo W#x%TqRŃчߥS4>8}y(J+ZqJ̕gly}&;૸^>Uodrr\">8ƈuHjJe&ʳI!_9% eD\K 0@1Æf4 H'jNz^3H=[u{+y RRZA"WKJhʉS_OrCuӧ?}_/c%j^ QV|QL`yTDLm#+K%i_? I还"Yڭ4UGZRꢒHgl;+bJo~pzC5ɭɸ_p^ESf /6 +LrCw&J ~6FR "˷˧2d;Fa(3PGgS!޻AÊɏ#U@3'}.n%-a><-P%6*.3 0H3M>Ll{ohNNM.֠ՀZ:lfP4 NxL6Q}vF π##)#'qBdEZ:xgX'W UjOJO{g(;@Ղ(ԮbG4lΪGg5' 2qJZRU^{tge2V7*!Up Nl#K|Ys>>mXr(^<) ^ߑFkϳj<ĥO! 8C= #a 13R xixbb4&捇_~ EMg1b>մ= [ω G[7&U"XtUpu@ыbVS\ևJ"ebzxxx̝'LTF -nȜV?_7M2H cCZę.\TPYyqv ik4bGwp#/uLgJa9_}BdUPgi_;.KRf~(c=W eK.\d!|m,q璈0I&9,IUVkaT,٭8zsIoybijG7'I]&HbPȟ\ld lJ\8oZQ/ɞ6r&(]N$\D-LPu+b3n}wηm /2cYd9\..uK7.Di*p*(iF5 ‚uQu uҤI#{c5%ް qh $'ӴΘm'G~AP}-Ew1jGjU%,~]NIe7L.jW;5zڬ8u #P.K׻FC|&'"B:LF-RHrv4;K \ OY@qw6l"w4h.F!-+"mik k9/\k@d&;?VU2zjE3.( n?gK. yo Ô#^$Lw['P`xidZ tDjd2S~_]Ek 6lamxhXG?̹2<& EZ,`0+)!c2'U }rDm5A|/nC h2qh6'ڸzmetD|sZ,+rߜ%Q [6 sѐ.+\p3c/MF_L%'n0.=D.@B(R?p԰IG1o}viP-tւX+v!yCc'fR궶0 @0DoFAn'nXTmH. X?yvk\Ӷнo8c}?f W0VPS62$D|3`4{H:'5]Ul*$W6\FyyC ?%-nS{'y--ǞDž}>J-P=|PU¬q+|(iXb$hm64HWWu$ث^^1zz#^ar۾ 2"R}Tz"v\[:LnnCBN^r7[ U/8wVD@W!ٖ^aa{J!g@~/p aV[w}S̯diuՃYGnOgtP/=.-;fT1Xrz Bcq:sH0WǑHcbz^Ku^弝km}5(IZfx Rx(̏@D`gZrMܬtfjT D0 AjÁTإ/4ζ'/L$ODzKTOMZ?8[} )Hnv%/ "LNs& o5-)釖3Ud>ML0B'JHOldqirTK # 〾Cq̭ͼUJ @2QT%-xIk lg|a$?5Y@\S7- 6)$5N,g`j+ݜkL-ohmi727$}SʶϽhw}(#x27]2U0e$/QfUC.DD5=E$>kFs<^i&]p\/+lh ɴz#N WbfýQU7ҚK{aTwjTT:`eێ:>"mN9XTn_}:P#6=EiT,7j-eSnci H~pu˽˳u7 NP~$Ađ) ~<>OJ^4"a:*@W>lGʅ[7P\,0Z;:X<mq]1LmnM61V[ĕE=fxєrz#}yڊq_sLEzє3YlՑtPs)C/u ݋|E ]1'3XDA]4Jli7,RuL|"@B^%2uH:QbhLam{k1H`JѻZ52qQT/L}Co U΋01gq3cОmUIk9[S+ VdKM04ϴ'tv]nڋkńgz&L#`\q-U+pEf &dMAOXDa"ZXçFƬ@#xҦ15kr.b{)c>Tؙ+6\6$ @g ńG-ܷ1mRY"!C hkι7]PL| ζR4+iMS;] Z]90ezi)9nOZĉ׹x:WC=0uS(;S!oca C xMy[@TTNKhxe5+g59D-u3"w 0ZDT/oINQ+240zK.sYƆ_OH_+L~,t+(uxqlTYsT]$ f;^kxdz0|e)% v%q̚8<&&4,?ccɑK蹗X$GZ ]+ekQ>DD_`k`eoTO~_"}fEh/?CbyPYP4]y4௕yk +&^V\uyau6sԔͫ[sKi>ΰѶIxoAQCsӟ73 ]ue?C}0}>pqח4nINˀN/F3WԍxU(>]vؐbpV7w9Ve6qϯmBKTK3 u9{J?M>u کSVn%(9.Uv |g tF&B+҇:˺֛8uAs`wp&[*-l1J!udDijԴKyv;p1":Nm{^nGhwYUugH :v}N:۰NDF8](BM81~'zMWf:jX_(TVQ*T>AA8{p CA=~#ݠ+??~?np(j4B!`P*I`Ο_nVJS柲Vٜ-l?ʰ{qvlOXw\11IZkնuM'ߪX pd {S:57ܘse%L6"ZxW+ n__\V77J:daQ>"϶WF5ƄuCDs QpVeFdZaQ@J䆑X|TdNҕJf]nCo+B&b 1I',Cp##Y`~ISӟ"^Et5)]G}}芤Y6W6)hr?M7%eyx{'P01&tMtyB'vLnu9O8,xĚE;mDZi0 ."f\ 3n63q8S8u܃CnRePs = nnE[W1)BnfNR@Q qM @.PwIeVx,_J̰j. Y¤x pI'MPᒓ|u?M M̾bv_.4_.6rDʣt GQmPt0y~v*j9ѫ:xitd/xZ;`Nl۵1}=o$6Ա!/zv¢bÏټa*Re>MU!CDxP>bzK"sOr̶#z!{2}_U#S>bBE2+=i%*ż>q`Ch)N,GWڬF$Aј5R9y<1G2r;ږQPe Wu;L<&Љ2%ݟu2a\~[zDU[i ªc_aP]n(NkKT|gj^%M鲧ζW%oNv˩ݷX\+-EĜt#Z- Œ1W*hfmݒ)V) 7 ]"-E,7-كCS'A;#FJ}Q2A8݈ͦ\/Y,~CM Ws~N0kw  /.(Ѽ0?6-mD l 2 р~ʸQ)[0_NiLb5zS*ݝ z9Wç:beNqΦ6+&Py(saаSxeN}!6k =b+M0&Kǹ^v#X!j0n !|󪣑.+5/bA*‹m<`c+$?*doGٚoSJT:SsL-sC }%"CS=~*ӌ4l_dHTok\@_iQXVڞeпx@:u6V73ŢQfk*%#L(ͷ$FY# ٫;/4,HVPf `39 0Ј߈)qbA7f<#yOUڔ?M-;5ߖ|bsa_dUò >]#9ę{IS$+R0[2sc_-f>3⃞l_:QGYq:x*3GV2${(Kb p8JaJaUe,!E&G_+0Fnȑ4aLLNSrd76HvAx=So9DZTkR'kJȎj$J$io N.4SbY `==)1ŔZ|k5a4 %+Z,I.=#̵u mx*Ast(l`½"I@Ƣ8nhyH;Bw[MwFFF~T,(0\_%nv-\ إ&pwyGz_r,t0R|w:n mމuYZSŀG.|Z86 %1bxn*:PߛƋuZvtҩq.㤚gq;0.1p&x\=S$!wG!og&.'Ŵ՗n9)> n̏=dFWK{aȺ Ǜ@` 22=~U_zŖ-R[&'3O{&&mg%w4ؽwEDz5 ('($Ս>A?\EWJngDVH_hͅo|39r7AEGca3uo!HLOa -)}_WYfV?.NG.ůZXVbKOiE5xtZo `')%u5(ظF ߊcsarъS1i Ș)8xdžD:0pDx`ts/Yor{Y#+g~3ش(1 :^th,x>S{tscM^Q2Ҩ?3|;ޕJUora6&5^c( q桡(PY&>/ bbޚ6 Z9=M7edў/tqU~ip5'a{}s,UH|b7hn[M7Ft~%~e;_O""6w Dt|a _}Lɷ'!:W&9K_50xe-vxS_LC)/|=Fsĩ%b~R'gƪ23JGJpg;$bS$ڏ 5f1iGżhY>\RD=E_ȻZ+3T8]X5nOcl#FmiKZ?=.B>ىr@kZJm}8=!woAu^/4#%1>)fj`?yϢC_K"$>ji9_l) _ aס(; /=z /{#q5NFoQ8h@}GZ+9"gd4(ٶ՚I%/ʫeP5Xh>>P b 1 y"kLWe!}O~< ߤVNj'"/ 5Qg~>Ef¢>_nfu$ ^*՗OGxV ްӋϿE"*EkEu_ѯJ,Ժuh UJtf){0CE8&Qz?3`o (..yyd+٢V㥹zNwp6I,CZ{%X2͟> 9nia))hv`r~}K*+6Mitc/5~ٓ;Ґ $xžJ(,m'X4ZDSɚ.` IQ[aDrZS~w9r9';khpt[;GHZ?+J>ſŮ*HEkAͧ I=V6$EHIH-dA{]S?hq7k@'ć>3˚U%/γ^yQ<)y?Y?54!ɿGfx ֲpiU{_cقܮ+-.6ѮLNo˃6iX]́EYMvWg mPj|J< IO$IH TS"Q)\a \7AZˇBMs&o:hRAxT;aշB$* nxzI-a%eFW9 Ou q kg:G1_I1bL5$ΜF,ǣv7lgGxJ0lKTgx|R#s)MtkņWay6ڂbu"=;eoeA|}k2??yE֊ 180ky",@WR;."pyFM>çoE}N y׭a!;I'Q'~Tþ"pM."kW% 3kЏWWBRiM?^6q YQjn_7L i,"GuQ]>AЖn7L􉨚fZ"HUQ,04&>fx`$[51ҿݤf:y@[B \g f]|`׫{RB=ML/KjImlg=:Yokz28Mr#%g%zϜ 9Ӂ9Kڶt :bIצ:['a`Lj=WLՕ.zGŞX|Z'sT֪6w,'Q4d~ȘZԪ wi %̳=6}"Z}0őދ岡*PgP\dkKL6~R趧Ez5 kݩ{SJhOBM}^<74#|5my`j(<[̌ŕƙf-i\FyXl(vIU2LՔv[17,PɀAWaA6Ptdr 5TH;@EVBp=_+ʉUC܈+_TjZOnKS|Ӂ{"SA(@K\+:;Q}: N{7H vO9St_p98cz0(KOjL3:c^M ozv>%M2gYl8 g& 8t!븙}_ je;̗I{v"ޗ;SoHdQvycjD-#S>(ǛldXB"D2W y2Toөą]՚GXE%`L>)}o#nnjߴTL߾բ4Q͓+/@fNG77@:Z14ާ0 C5Kj1whܮ2yJf# Tל[C7SbOKe8ef4#"ڣQ+жξ.l>l9l$Mr@zeuPҨΖWcdci1mj$,)\;bq+H Z#wݠ?jq'[Ihhrrf_ʯӭ.F9RK"h9٠œ*tekkUfJ vj>WV쾈D:r͝ʇ+SuJD}_Eca&~ryɈU ̥nxn*KK |A7[}/Jq{m|l:- nz!bd:tEGpD6ٲRx9ZIPlofx,=YXѳ72bCᆑ=ۯy] f'8FGg+3`l8,Lj2<⡯ Ή0iV?)[T1vqXnN.tSq?;5à҃RoAvJa< MZ6!kV#,$SX OIBO?d3x@| sm-T9?A@rmvPGw"ĥ?7Nq @c=<0̈́qpgJa(:-y [m Rt&H\XD 'ߞ,+ :=0kSU$K$YOE%=Vai 95ʎ׻?cM(\͢1i{1f:OVg%UbWyP ϸănk;m?4e{Sye`M/X /KUW<ڵExac )T|ۓnDžS>\=a/XZg$&8 Gp[J~D[U2sc/hG3^?UJ6ndOĺ/ "LM!mYc%t}s#!O4>~ [O+%q5&P{EӰJӝ|f˟ m#XyhJK ])^ӂ)talm bpd:neëyJfUo5e9>(^3o".<ӤU#'r*znkTTJU3쑄=Pav#Jp*#E/ЇCe0"_(sk1+I5#4HPzaLf|2)7JW*N 7֫E\EothQ*,) f?NuDB tH L>`1*1k9<\2?>xt|5 ZMH6 $bH4 XحOs1^BAG=-`5D Ս~#tFb( @',O1bnq 3%æu)cQK"hUmdn*4_ˁz/}.I1\~Λf_{DKU G$EC /7Y,0:ަ'9Q$ y;Nx1bg-ց/Ҡ5 eUGIyq+);> `f?ʹe&tcD 34p JCH%~{wAhN̵ȥ  9EUE$6eb^ˌ60WX?_fL%F#xQ;\Yߐ.CȺߪx;Խsya|DQbloT %[TM+:?y/?ERt8I^Ǯ[#z L*:K,:5g#ZP-Ņ̯($a.9__L4,`8l Z0jEV1;#ch'O#<"ל_kT /hsإs~1DyEb⿩ ,x15V޲ղ6\{IpiH53+6|L7 䥃6I)+fF!6Cq!\uiZY.W6ArH;o,Mm|[f .kQ/}Mm`W>WU•hyQnV-0llY^݉kG_i@}'@0e##:>_a>2aKĈI;߲oD7աd>NڇSk3աH@p0%Mht>F!yvvNo"- ZřJ0=Xu>3{Dw5 D gƺЫ*0DMZ.rݭ_ya':! F*k s*C[AT#,ogc >=5 DOJ ^&<}D5`PqOQvqu͙{rw48# JUyc#VXz)h5>a2ë҈[s aOVD6}+/Z\S띞!y~~myoq {E;waB>jd-k*t~1!2p>m:A^T9ìA1;MmZ:֟̊";"l_= ⍻1h2r֙ʛȰ6s@C=ݗ&3JU'ZHCޥMDћ7о08E|h6rI)R鰙E[v gE\πJ ZfZi*|Z3vxX^[ze9Dy)22jHΊGvy8;2-|D50xq ?T W,g3`CKsӗH: fxAT<f[eܻЭ)S!}RMAsxtb~<>q i;KҚhjr鋰*St/B A` 'iNӹ &|uZeCDf&Jz*cSa ?VCO[_c2Nj# ٙB^=hL)יяM׀NkKifcS邦7` .8/% KȶqGyjcuLHH+*vFYUca~nEś_o[mBv#|f0;Ap iOVJb7C~T(ԖsKxُ͑+xwXH$wkZCZߢEo@GijÜ_Ey*D#Wr}aZ_<][ YD5.Xi7|; *t.w' <%# vgn@N,MNM$;|=6ݢYW $ OPsz͏}ϲ\q )^Dyf;S ۗ kb C=D%Dk7d ~KPpk@P!Aw^\mc0R<^>))sGދyk@fHHGW0i0V\l[5\",xe& :ۺu.Фu&ˎÿqYxzeʅn̝۱4[R=5'aRޡ$JWIr-[Wʲlk9/Ck*Ѷu oX( 'gdr/ʬXd~{ xR&th %e)lRA8Qiv%z T1Aː*`Vu4"o.oS͎(-^ܑe3Aw:2S9j(< @@?)u/'\oN藽 ٝcsZ|%;)ꛥkMUۄR/k L3fPZZ8cm{8p}k<'Zb2,X,|A.g<6x?X|)GM?)Ze_لYR Hُ׭-D\iqxfW!8s`J-GC h:)>75\ո}7Xk[ӺFq ZE%)W޼4 EԴxTZ/K /zp8o Ⅲ 1Yt:%Դ:`.CYCcI:RW`ز \(1gjEmf1? fE6!hCl_'Ji4#J!(O¡ *}@` Kz)lڊaC9j1i Id*i\a9YqG2+{$Gm?zm;ѝ ELm$^*Uw-\`޶ۛOת0UAEBz"u C^JyHOEΗD nxml*s M`k-4T`:[0].e7τ+fNR{MKn-[V]# L^P*hj ? ^kX<.2* 1ͬT8w \ r --־rrɾ\HE~X' :| Q.#h[Hc8d^^ IY0:}%n_CoUn&B s- fGHe@/4y8t/Lvs4 ]}۵534Pr,R`L[bد&lcc4Aޓ_'̈́w ʵ&(}AH8_ 1 g'Ktz!RlZ5쾱s'!ï'Tt! :"}u5.6莛$F<ѻ8xa OmClwb IgЀ9`W Zo}tsIӦ%#0@gQe58 +IgF ${B"ՓK(68ypPl.G b$sa|$Dީ6OFr[ܞe~I__{3B,!MDRWM3Z7\gFU#B6/W"tJMUqCJ?i+6-CAI౵#^9 ~rOPX,a[#ηT7{736&dXYMTk68lfc#lò +Do&+v&)\K?G 6k,$YsiX\TPE 0^kFeMK_M*VbzȸǜҀi6X9,:5xl r%Z7i[k&َȫ20zb,: ڟSRnQ RQWZ^t[JaEf),o0E`/s]I9S\~kR-d H_:$<,FC&`?) iݦbR#V|[lyJánewG noSyB+]|-jz&T'@w%*DžWC!'-ģ\=H"hJ(}_L<|WxF Y!821yq#ZFB͜A2Me<$W7_KVuМ| ao?xj}tzȣhGWk4elh;8J󥳸;}{2rz?@ (1L!+fB!.@w`׆-ѯDI̯p!ph!V7A2%A!jl:܁M|sZ{ow3jz_f: .YTW$:9S1Cl?`^eOangF5٥E˟:r6^n("CIv'0 <.SO) ܙ frULôr W -re)JU̲_"JZ񲀲Y5+Q1ugO,'}= *շJFȺg$p>gDb`Vx:iCȟ|ܸBi>NtCY ,PFu~b]&d򑆋J˺s.̫yeZJng?#G_q;ek4E^ Kaۻ w; ez WPʓG~ y(|Wd"]6Y*zR") ^h@%'œ4N#غϨz{E>Eɍ 1,xF9?οݧVz\#oj*p\Mk#2˝}Ki?UAGl3slI(/=-iꫲ`qK9c]H{Ηn-Aw2 K "5rc]z:Q_̛{+B֚>n>+-<)c">!~.8ϧjz"j?מTᶅPC{+})A:T UȌjkOoŇVz OːTW#ړCjk ALlB;\2Fx<)׋G.D0I)D 9-0q}rV'\4xLN |:ٳ㑮*ϳa;$/7cPv8@[M;drgi7 4#~2iW`ѮotƲqLz.1앃&$?¯瘰D_*rh>'.Pl|ѕWcO{Jumrٝ(Q_W*9A=i 6b"QiM=^jҍ %se T?dA g`>2C+%Y7lɸY/"b6T$AdSu_ $!̑4j=aXXi%kG4B꓿ب<8%H.'V?>U/@Y~{}|M Y!MGV-rNg!"aSVh:c)9xLO b4+C䜨KVX(L7Jz@r׉WQrl!˗˱b )WwP j+Bu 8 NN'd_|BިdZ#3^o0GԅhS'T݃E+$TSoV; Ԁ0*%U[ s;U]T=$%^ 0t@dY&Y۷T6dYJ5 P@^Ź\YhFYq6XصLvԘ(詅E%MvWB͞uu}O%$V8oSw\5QďaxMGo9AO^'<,Y BfRqt^G}/4``l4NQ<@Vt&81Ͷ'9ϳk g;fdglGC+~Nj? BnD-cGl!Jaͺ0{)0;S ! mHK:D;!->hXc` F<67ґJ/jYM놨CFsP=%+ič$<2s) Ri(bQo @6[MF:6U".eJޅ7C+*0c 0ը:}׽T &MC+@)iLC@)O+Øͧ*DXTt21wjMu5=сL434d"괐/'>MgAc!!1!bMzxOl"9z"׋$-ٔ>tAv,|9=-,|;P“1h%|G MA;aFo>u!-&HLE+)/!1{ܒ"j!HSlsWIl٥g&׭əLRM6F:5+.(D3ZTK*1A2鬆Ad^ғs-7r >`/L,g9M Au`ǧ&0) (ƕGU< qdyk&rSQ3ӒFZ\8uMЊnʙn,rݥ"U녏xҖ; ?*VV^U$M +S)O(`g$a2*ڙ$|q=(L̻WcJ -&xVK<ܨ#%f}*Z\m DZ:ayfvu O302/@b3TwTFpwj'MȩI"_kFY@ErEŦl[ JoAZ#:(,A/m:z;f̆9$TDeg 3tr/tG;x.">JeKbb[G^9!-ތ-9Ͳ ;{> \H~BTz9?J>[xlM\Íg!ݢGZ%P,j: @ث[6 /)(Ds|Xojn PR3}&rOhAW8O-ny%W `-(0IťAxw|s +YiANuU/f:D%%cL_3 F70g"wvHo:6eE&uX8iAh`yu*sP:eXՃkP)WD(,ȝTx+Nw^z2rZ }2RFpY0e};Ϻ ג\yΝRfv < B,cz`rSrIbci4܍JJ@P7tD)9 PJbM|eU3ٿo W/ʚgS}D|JqS#x߮98M|*u3Q,q!ԝl@ui'f˞p;́<sͶnb9"#yݱ7!,hHM-/4h~lЊ(Qv6*Z ,%7 0Ԫva%]̈́mJȹhu7v9BLV_;_xO^kSgއ$Z;ӜwroV܁l틞Cf僽1 aAu bXŕBqGf躢0@TUdaGh~nlD/3PaK0=*.q.WS+ k 鐞M4s۵pC8c l01rJoF 1OJRݯŨ" p\qE0 GM^~B|==:җ_H\(ZVrOLF!ߨclq+KtfܲUd[s%KCYE0`M~, 鏶 9&p鋒~;8h-Oyg%z|Վ[Gs@su .EG~@_r~a5M y&,* XJcwy(F u.&r"j]Rs|΀_UTj4T'8fI< 1{RT"|L_bn{ӍH'#Oe~TZOp5szӐAOo4WNwDC?[z,3$2Y[ʏi>-[Zz?b yYK4oEj;A b{35bc#s픇,njZk EfY0PN Pswh =MnA#_Q$f0=gSx)i?(A$-#j*ci߼A|ֶ(PoTld %!ݾx%е9l㱧lw1)i@5$-fx tFë?u3d? UO)`P}'Âj0&9dWϬo 'tK"ow8bܲa߱ȵU2.Wӧz z[fIh@p5'dC%xHpP`x4Њg_2ODWU EK'_6$%1hhŴO*?\sM| 2Q L7d~duldMYm,F@[:^- D*o8q@K$ٸ R %Mൻ Gm2+ f o^Ҏq4I!p.gnի@ݔJz:PmY=LO:>@HRRѸHjƭ2MF}ڔ<-RQ}JXn@% wv#8@c;R8V _C'(;iJ $"* )ZԿF9[CQ۬Grz4 F喝D[gnݞ/CIgqsK-9;=֏V^ 2X1*;|j%]|VH䭯nO4Sg8+74Pnl_8^HVN@A`UtWwo>R,ٓ9Ee%"J@2R+#߶{檍O{믱i%SE>=)/q8jykA>|EỊ9 =| pXb:@7s4'o&;|`uO'F.ӏC\kYi6}OXUIJZM4DB`3pX*4Il!2R kiBkv偅iQ}G[MN/wC ^7 1KƶJ,'Ԗl{< p@Ъ '/Qzא dV -w ssRx=R f\3]x:җ:{(?̢ )N^I׮ۧ r{OF^"Ű2kיn9^H_:辌)OD|YU*Ba+0$RDHc4-R3w_ȩ!b%5ϸ9"}+db@-T FC߾SɅnCN9(/i4 =' Qj6k$'{SڐB)̫XBѠSf X1臨K}v*OF;5}I(qQQN۴]7u9ף2QXcbg2|4jSZ\PD2' ɽbY:vs&MEãzr왎.آr('?o;O ݅]H/UܢP(鑉PY|$E^4ͥV4~Yw+o32G)xh`gt l 3̔7~%ZL)KB@zW5·$OuM|˖ -TD0A8c {y!}4噵?|>+}Z{5"KT?ܣbΏ LnnD q cvjq~=s+RޒVg?g.q >cxes`mU)2_c9ʭ\,,= V3_*-~/uթ>á@x.u6M OTInR6̣*iomnr0NSsFBߣPW]^ilÞ"Xk9?c=24OEq6r; 7O υgֶ#Ev`ioY (nYτѬ#wQKNZ̎'ȡFE_:#dk~}$5>J@Wo*GHfM'=*$5 (2g؋˺2Gn.з!.x'Np>y&jG7z8n ְiqG \OfQ}+ClL'v=dfy.wfvßm6=t#mH7yg T&jH3KКd!_E-W:q`10+E8ݸyfvj^>L0^צ^I'Z}t*/\kn)qGF dpE]<~P3I"ΏJHK٥wIՆV6IPi'1V)Do%D0BV[]!g@6o~-B"VYVp-.f3>eρ@s|MSc_{_қ{ Kb>Z@0{&lZR؏(ˀ{-· |9EAX*}@Xy 8 .kk@IБ>Md{BRo*pmw<+ep(0_.(Ot+l}@dto ?q՛p4m'ۃQP8;xrxh k(ccq,c%m}Tac#of xt;0*&F*f oDHIJ8kP}*徥DگݚK`!?~ًMU,GbX'ONgW&)ת? K7n?'וx@e|_ݗ+j! HZ7|^zp ϼ9#n zNrj=o@%pv"?ju^aTZaۓ,OՁq'1jiOqc~Vqg0Wynڌ)Nz kHŰ\D`o/.Q΃|/v 5g1ꉰ@Q~/_ ; NR178bKĢs8 d:s̯a;81>sa}0B7n!%TʙK?8h|`WPVXFXL^UnRG:tE~˹[ymMJ1]V+I4hYI|Z-n#5hA`dEs>Q7^INSA-[ ͭ>na|pklh c@]y$c؛*LLМp0RC6ȥWbRuIkTTzܨ3Wn=P>NC7xQy'Akj):N*ii.dV=AdH4?P "m?rm1dF sxhoe֗ZljiFS֕ƙǑ|`:RBp)xKI!pCn{"\~ 6$jyZa8[]U9|3跠IX481VESjGLmu`cDd(FLGp^ユmܮ6&. @OP>] [*/2l__|94܋{G,`9/Wx#*iIݮ'b!P ?o +!m=1AZS$ 9:/R/[)⮹nH tDgƏBfPqL̠ &#ŋ&\3 < b.A)PTrۡvBdXq$u>֫Ru`ɮg?7>MsoF*b^9Z2E"ٻ 9Uĺ&WYN!}zմf͜3Qw2 !?΃oDd殷MESVND{ed8h+\S Ge)>JLh:L$L|}ʉ#6`eQ'GZG14ܪWFO(>z"W|tyDtm f=rѷEo(pJ\O"Wo٪vO/(jO 2DZC%=3sl_K~KV"h0/R\tYe@mZOU=wP oGldڡ.'ӓp%SD}oZ<z_Z3$1 (2 b}uH3I&I^N߹ (k_i96אw8wDZQŐ@q%^!% .}naT'HgV@=Bc:jAdJDƷf&l'\λdgcBڅ~  X\fB+'@\U\)Ao@N6K9v/&,UtܣoX~G5psEsWu5I|5D>+b7*nqC1P'F?w( (i<3G?Ur* + )|8M_ :CB. o;h6g f7A=uC^[F dgeZ2?0U4 H*o$K %8Xi4tDڱ:^/޽6&Ec6)PodT_ zJV^Y uQZu7ĩtvҽ8gBִȟj7RSc4lS+u.@N*vZ!Y|raMx6ndNEGYt圧w<5a6 aǠdtDzY;Iz KP{0U,FaO-uo]3ّ֝Q+4Y2.WQ´*u#ގ4!|]t|7[᥽EK+#UËu},u=cHbF/M4B@ov{Dj\F2~U Qgԙ$.^|4ߞ9C!flIs& .pd)Z9"]. l/< őkXe_TĀ"Ar;Oҗ HC0MV7vl>C*506r%ƕ$-A'#Oc=9b+(yl-q1s M+[Th/[ʕn!fDN8`u]7 /d%hdFZ+ڨpR g##P5_Q2TFJ9DÉ?z>*ɮ1O]4G.\2׉/66__#YoǽdO$a…jZtYP Ը%ݛM Տ%[XM%6$Ɍt(wi3El ɠhs3fbԊ?*@+@oepN%!+{pYOкGV }F$doW3R&ez1vTŸƢ@ 423ҁw TBџ70:EV!KU;ymy/d ͔7+O܎!7aU[Aeʒ𗷙Img't ]z1Sęp,WNm_6k©M,mh?2`@t?DŽ>K3؈[ U(X<ԠsD/ǍAߴ ›2$yB|l H? ?ܒ)s?B<)9,VԈ kq0 6C|JKOmG3VԘwϼ}Qp#CϽ JeUˆU9G%q\ ?go[>]yM$t!l@mRF:(gUPUЗllqy ǓG>SzpJ}U/]XW1"PK* o0n+2@VrcZܥCЈ4U,!@A0[|LXϸٞzEv}љnq4-~Lҍ0j˨-!&6˟|lZs$/k}${¯_Y:'9g͠³\{r&Ė 0QPӴ^N.Зb6G$}qOGq z6+K '=y?T&+ Sogj ˍ)FϨxGOħR" 0&w<]} DgY7(mǰ)!dm_Aoh*=Გ 7|[83;"%9xB]s\Աߢb6sDJ)0QP*ҾZ;{:S낿 7$:7]sh2i ?oPy' h-E 8D0E7+ DWꝢ>J:Nh<2Qip_Um?0"eQ0 vGݵziixD@(; m9hA\zȏҠҕ7 a\<~8b`^RK9_?ȈEJ$;V.Bѿf1z&(%=|0 iD ZsYKuHxaWFuP{ܙrk9](ոbQS1fmʄtR8-!J i)C髴gEpH+d =sRA3[F w51?"1Ꜹ-al,ђZ;OsW5oBUIr VkI¿ N}*?__a ~@ ,| UV[wHan;sdOº1S}ěi}n@5LwAfXeAxNu.X l>3RHw&Ђ7` 4U mZw9- `,y C$qNFDG;jo`{k*AᜳBB&G%È6X,!֠ gOY $wq6$T=lD n@$Zɓ@}u8F&R+됍iU3ڱϥ+{ŒT, [5b6&dUh[WT%$}QoOme k\VqDn6udA8 .tPd-D\g:u䪭pgr̬:\v=grTAG W/YXTjmn{y?5H(PHT6=h0R4%i[똎Oa~ͯ;G{0aDLaΞ(C-W<٣ܺ@U.f "C@l |ds/]f +KD5eZw4+ +i`J@bO6lT7yh{rHR$9=a~eQk/^g`3mȰ!ŶEӒ1aβ8q?ێ!>)Rx ߆b;p:5<J5mW(RSg-b= +~u $%IkL30q]'.d^D+7=+scߞ茵9kW8I'^a`|i?ڒ<޳+Y0}ΉR81S:|Uܻ3PEC/~ T0Y]b3*(_ ;7H|S"ӛKEtzs=&L>HKiF,D\GzZE!Y+g5}b^5t &}t{L;5+RI\dpuz Dt2XY%f ap=hF{}-5!ڍ\Ȕ@ָҹƟH?%.Cm?צVsOҗ-$ٛ@Ĥigl:< \7;' O=v)cfTk 8tgx:H3d 8 }٭1OL**d"v.MGXv \dZB:sɧpdf#_+:QBf`M!RD N帣vny@1<7 jr[5ǂ\/BaVygNLWbI2m_06^rL:NfiMzcPg3۾a{VI6~xHI N{ Љ[! <{sKAJp_ ո~)*;΄|Ro[8DuaW ?q|̅B:-EKNX:c dM աڑAH`gft}Ye{+IʣKO"tC@@(+0ǓLB8 s頧Ww¿k_'g$l * ck"v/v9W2t/ɾDIDl Vf i3:~^($*2`װGd{9`wCet&G#V|4a "pjs͕[$ ͐U7zq`gy/M7W6]10`\pC+?)k9'8PGϧFB m*f:z'0!>z ދ`"Htn7ߘiWQ?sQR%J7.X=q% 5<θCLW7?j^Hyw?iJ 謪 pTAҬb! HG}Z̀O @i?c.'/˜# Vh7i{_ c fS?#YFp6J{@賤^%vtlݱCnT@8&J?a\snQ7TeĂ#ß 8df* ; 1*̮U3HZgɎ]0Bj67D@e3zաhjZJ aSeq[]䈎KqֽSܭS:!`SwF +._{Pr˛*(f`1hvdΧqf3 u0{j;o_QW #Q3ݱ?wߎW ?5Zaca,6+I)y˦uےe_/r{W` -1׭E!BhW$VstDޢ|?j"*2O/=>+"[b zqV,rn:plؐA"R: < s2Aaae >PMW/ǻCh)2x/ v5$ HgXꔳêe4"d! w B x9tѯ*b x3&:>b[sd4{KrmEx| D}T0(~ĬAlIG[z \:31C`+m)#~s|5[fqV# o(|9pgh`9o'1J))Z[-,ȼbUGwRJv4x6 ԕr.wcZ88i9<4.@]C9צlFD..e8 -)अlpۘO''Z81R^CqEeKg PDr7Dw]nөӥ㓝[iL_ y Q߻$`z8r%qap7a^#_u L˱=@\ !@!#) oILq ͎EVqȧ ʿh"EEO J=3U%`K7z>AEqK̾?{J|3Q-h5luV;_/}e#pR>nCfMery[eJ\-UCHt롅O/ԗ0jTW;KyL;f.XPTxZgT?horC p?MhkWAl[#k5h|dD^G@UF@3pD]ǩ?][FzqW-5t5Q$cYI?|ؘғyn*u[[B5ZSo GGKf!bϔ=K@t ߤkH+z 5r(0rd=U#Yԭ#ͧ4O4g3C m@0 wr%:Ds xm:7.6$K>bHa!iJC厈&vn C,74 ƽ3Oư% %;&d%0}2K_rW09%bf2hw# 9^Ouߋ?C4sF˵"kHjBص=QJ٫4(tA!zxu{=1bSJ9\ j^ɡ '|p(KbA]:cK# I#ĥ:54W.4s>T3pjytw4Hj\'*M!U±YJ*9 ?Nuy62vfԅow#ݴ?PEU,lV {BL`kNux:,[vF+YP14 E^;%=iHsi ǃg]f)(#M~L>)F\adUj1R亯0UI-.X!}/@<#~]QSHEJr ƣ5& PRD0,ڪ JsZ5#N~.g!>44>6 $cCrs{? W"IF]/+r_иBtW4XjuoN쐾רǁ-)aA:n 4"%]Ln#1J f܋{MgdQa8tX^8"iM:+ԃb{b:͍)jkiC! ˚-q9}&Il=95)5ڔpg+EGJ7/ىU0pNB$:Bp5:و: ֗V nMᣮ /s:Nd %fe&BjήW#i3^_ ZƏPvt9Ju4CPm1ܳaהw7maWhA'T:BȁՀLU#@4އzQC-`!=wi - 9߼ 1*% M>ո3m#"Z&L}M XxDy<]ylx&\y$$U&@/6`AQ#*%X F-d0%vmf'Qlʌ_l\jl[؋j{< c@O{E. =DAz^ۊ:($6͢-m}Y J6Q xx"X%yEiXQ~K'ܑ,0ذ)ªC,s6KMg%$޼(D )vόbL ٗؽcj^!7)y ;2XVHbc&WObח3sxadKGMÉvjIa<0鼈Qw~k'"VC V ÈNܯuJI Ɨb*-e"}] 8,rhDh$UAd%ع_7@GYP GP;)KވC)t@| c %M{'?gĎcjʻ▊:,s+>?c|'?A톄a4豚 kG8z&ђNrJHTd<:&NRKO5bƐKMuI~2TD[HK%kŒ#tkP]{Zkss?B-@{,;:Iڎ wBun0wGOA3E>W53( A1]bߒb.Ġ0:A&KTfJu(J "5cv})3mLSHCaiZz3 1.Dv" eWϨ'0-$( "ֹs2-c/s,-DgVD?E`-/L1䭑0:FʞM,m#Shz$_Q\e*{뮬e9*mk{PGTw5ˑ UƚFa{*g͟5@~Q4,K7m)@+pv<ȩ+Zlݟ `A"8yaS%l5{QE)aQK9fv0Ez!| m_Fp#ohW!$X@ȓN|3~q>>ٴV-BQ;Lj弘t2zU3m08Ih 3D[G׽9z@4\SganPX}wo:*69#`9KaEbG.-X*fЏ0xG6aWFn!Ÿ1fBdѲx!@!ϰcY`)KlVԉE]7[9 pS37CY̓faQ`*J GY5Ă^sm݁B|(WV2_)pw<Fme\i%: d)%cYRD1~F˫4͛q B^HaLhؠX>㍓Yx%̗T>O1RZs,6?ek55.vF6:{v,)/K8o0]I9{4V <5A?@XBS߇E)'`HmTBPdZ󵚡ɤ?$XkiSb[#)?Z7UÛRYp{Q:/:|՚8HQ#+¦K;tՂ1#4 X9wPuZBz(_*j j7R5 F2N (Ɵs vS"i}:s ΁GHb,C{[l6p6S0cΞ|Y9 [F"o{:42^@1[[lvsɓXm@:k_ͽfT;ևkrApG_.M"}MX`Xx2YKC&Rn\PZyǒrC=Fo.$4$%ˎ{[執h/h9t\#dmSXD"$ŏ[ svh."XI2p"{UTb J'Jh1w6y@e8x EF"/kbr ek2u?Nx=PN5<^^yNܼdg6:@?pղ=JQSI/_!Aӿ85Qs,@ u9~ՖQ>ӐB+ \~q7sS;i|T5R Qknƕ9"Ŏhpѥ&Y)k~1Ø+t8]4͉|ubtTpNݞl\[ [Ə!hj=}r>b6M]"U% &'V5t~Vh Uqg1]}G;>}nܤ_Hn_ NӼ9]\uFSD部[ڛX'O+DsG"ߐBTE8"V_d 8hڑPFwo&d6x?Ca>㌬lŕ?8Я:0\JYdlƁ^/N.mJtU^XcfQB/kf]v%ViLDHF깁M*` h8{~ y̗q{ϟF#_ r VcMQ_iPQ' z[?ţʁ RfoʏjRߤ[Z$]蟭4)U&>k׊y/nG4Kf`t7A䣋um`R6*vj:0 @цPfjuWc? 3!S[,SD[j(.*BYw͹'*mUް:vikp:^>[I &',T"fbӔe)4qn~xrA8 oWm yAG,̨Yo˵1\g78GTgW *hNmKZ%]FN.oXf?" YbU'z;@t XхAqCL REH2 ޙ?Iek BĹ@KM΁@=[\Wq!a8Mr-p)M;uyզ V8UikлDM3w3Se1*ʈ["Y5n[`MAt?ȵvǭQjKcw&q ad4x\|v?ofq)vEPOp\P6H`kT R|6le79uwj:M[~-:D8jB siɟ9y]>hsN0(֋>CpL N-.J+e;S82(s.9чS0Ee'";%%ٷ 1eihX^IǂWI-X`o]ѪӘf(Mu;?%I*|;e=.&t#/_.U'PR_e3 e@Y%^r7D aGtG`JGvƒ;sɗ @p$1zoiƾfmŁWv uL"~eg~Bs鲵oNKlah#ʁG&uw8UTЌSM)F,WsuTZڊ%b03WXGPQrn1}3`I&I}__Dj|/X?SrJ,T3-unKxE+{Tod.beI_žxfMn$}V)!|x? M"o'눀ف%`,ᦺOC3K?d'%D\z?^?:)&mK} ]242Q,tٞ :BLC+P J. _e,# s+-;) 9&psB{ӭ{8M7H;laXZ.NeM9#H7]_辽QƠc1H!pQOGovkf-A^GOfoB;1EӀ4ìus?W)ʃkPڻSԧwb /ª-&MK61c n-3,E{;`Hę̃@jYNIofI~82R$dCuOdl,&6DeXƇ.p̿BY) tFaVRAR+p+&m)|% )ϜBҐ w|k0/cW֠{&w]R3q~"bu( M z5|y&{ 7:ΙR<0kL p9NGF ގk~|r:'-n ߪԫ:{_e"{0 Lg{?7EK0DBy{pn.0D_N:2TjptG2jw Wq#~SvC[="daIL!VoCۘ]u"S0\)d_x<+5Nֆ5 !meeJ̸=մ*VvC<*06g^8r2TgoZ1Gp 6YstmwFpD1MP^J:I$_u`kW/H:vA*2So09ֳiJK%fӖ&ǰx.imaECMw8C_}ӭM?ǿdP6cUV<{qD'ہؽ{U3;&ǁmZ[oJ@?Oi s #fMԩm tM66S7 01R0$J s?"ؒ#4aT#-ZZɽg .U嫯8,Kf\v6}/?A Y8/D*B جD$ZɇA-FvzyɟL<_ˆtYf@t4P(1|9nlso=j(!o ЙpV哶; k{pܵ B O$\eTG r2", mTrvԿsE0Ҡ_:2^dٷA̝h<E\`ZMîu4^]ֻxg>A$d,g4 oh?j>d9#@;8eJ}tObk2aP!.rZg}j(tu>]yo=T*V%F/0ziQR3%oGk)y3қT>FѵWwS?Vʇx-kKv]H̝%Mo}Y=*6mTTy%yղ. 7)I.pfs&AzD^CI02tI}~^>s3hu[uԄ` (c"ɞv\n_h:Ur##yL٢%B)i^&Z0rKŎj!-BVB+ 4`Ԏvk9å%DyBgkM֧R`@0Q$A7 z(}= xJ=C<.s(oRF۞Y`pu'*#ۛrmZoM4QC;3$pQ$LJ+ݒUIȭ nϸ6tE= c쎁Aȵ4DCAj@,ē½f;Z{ "mg$A63  gc}w"Vf_ Gim6fCʚ\6%5O>1tso5 "cGD'CB .OCyej 4\_)vf#< S ȵ7>ʑnΙd9GVT/9Xؤ+A:i_`X+?ԱUd'C2SV_( م P*ċ;[XzMȿg;d\3`o<,sH6RR1>Lf/֔fc  [%}հAҢ&Z7$u['ZۓپԇfZtM!M& Y lPO᫡!&}Lp^vO~k+HMJvo75n=7JwLVZ3)Q۝] ׸џ|MxI5Ŗ :JV]C ^[ZvoOHk6)=-"V r̾`7R3FN4'% *h+w_#2>[cJ2Qt4Hy^y9#q](nY+sy5r5*Dx:X)}1&nT'Tc4m>+O'+@s C$دj >ulwZhsJX:Qat&+j߉7/*%n^9q zu61d$sCRtC6JgZ9tV1; /SOe:A(^ ~3{f 6}a$߱Y!!J&X}Zō,aW G!X }G5{9--m`"1/0`7\н /N'EIQa^Q!o`w2^(f7ѯCg1Yڭk5&7FH\,~4m*cdb)aez$X <J_Bb%F/!,$2mOI4ZqD1t~hI\tg $ywDJgBrA}o΁iuf~xM д{麕@ȩk|D(bͳANW{kd7`3iQ|1%Ep ,js 4HOc(lqE`h__*3 )"E(H$90Λj]=%"Fc[H('&S'R{|~]' qd<4klf5L6ޫoeUWYiO}ddR$a)]0Ǔ<^WS(zq @]{(3}pE{.~V!TNB\^ɑ@Ʈ w2Z3oB1f{nLܞ;@oEo0q2pv{"a| DC%Fhq@+P`R0u(.xCK0  ]akvT|L&]D} XE ! `jڼ&G~aY67gmYi(NBI2p0q(Le  scwyol M$b|O6#Af9XDqNGَQ&E Alxrz  Eմp׳ \$M6+ 'Z(7O6BsQd6Mf|-cphJ-d;:*"N,AJ % 8}N%՘6*$3]P9@M[RFV/@]iK_cra_mGn!Q{w'~K E@7eɠ aAdHVV>GH]L;`0 ځMYMsϱ;{︐`;;0d$bzp'[x[\+oJ R b9'IiwXI妮Ο'^Z)2A@=tT`B%u](c _~Z \DxDY ɩ+=oЕ Ou`>4kr"FJ VB)4랮.3xnVVkh}:>H6{&^ܬ;5?, Ч8F&U*dmGN&=8_P^O7ichO:D̀i}>%* a["#P{v]|eo7RQνYuxOiӯ9i/6`5coٌrBR*\#wZ@b;+LUiT$eW~ o}-ڨR =O(γkBjI$QP[-R@ZB։rRV|xf 0BƟ;c  [+A5xơ=b"BUĽ7뺋~'t6r4>Xƣ 4V-zwNY2͡_V^6WGW&-[dS}H7܈ RĉdVeb,ۻ͒) ySQ &?ma)L/D;D2JDp5cX$^҇rdSK׾6m$* TQ:iK%$元oQr 1P(K JoMľ&p, W# g gz5kQUn$FXzы :Ïsnxۘ6b_0.We=.t4΋P?)K㨱dNOHvjV-Z3&8汪z*S-䠞aI eM-²ɀ2CRaW Rpy,DNF7~@Z, ۭVT~YP:G;HkrA喿EG9"bcݰtq;9E7gZ..SL%l8%HFpnR!N!}uu†QڴgtI +z'8誤A  fKˏ)! V{;}ZNo^}K-vɀ kWm3qlӡis+^wH$n u&2bhLܢ`st"]{i:^"a2}º= ss p-pI'hs}$ EB|ƌO9on޹`6Ω+2.c{Yba\Ӣ޺= 198#qY1~S\6b$4}̤:6¸ ͗fB;ul"qUsj:_Ӗuj3Ku٧^=BÇ jh{҅XoWz\G?XWF+pDZ@ʐHCN(EW0rCt#K(;|x 'd 4"[u8ˉ7`pYޞoNj$ M-vzzv!KR3lwGTvJ0NWFPNM/y/BhX 5 ڻ:4I\ǖ pbA7x+OԹ d-=/&1a gU(Uv:Q9MȎq;iwQ\"4r]ǭ kU?7zNgEW)ւlVzW,M|~pr8x  `Q&,)^ 3KW~8PO=cm.刐yKl+1}JC>츴N8:u? _.~i~2a5]d3*36c1# 'o+վFV6~%~_lyRXHǓ$P3sY@5B*p&x>t ~ؖK.S6}xq|H|.{ g~a6 ٫G;xG4X-'ݜ0c!YaϐֿRߔC%B#Dl_!lׅ&v0؎&PBy4UjY'|z b6 Ņ!</qL"7H;"2!-6p&'%^S'D4skvBZ(X vyZIKcq ė톂RMi9úe*FO]G]TcmI>Lڢ *E@8/  {R-NhlNyq1ʂt^aFwւߛnSUr֨^u2WȖ$NjĐvfq6{4Hf}g 1F{Ў: 0q Obl%t 8u: 9;O]l\Qj:/ nʑ+v y1]'  $0)#ik[[8q=vٮp9NKnZ&`[!vvӚg5 b,UM)T*g oi԰iܻ ϴt-a^oQ j%ք=|7{]Mr/0I>%y/ $RGΔ%r*QZ[%L:z -,2*XqP5RS̀,-CGs dY&#+1/x/8:S}J*ِOp! 8sVb|39o2[8>ƛ=*nJFNt-:dvtŠHtiI"6=3:`kC[J(VIvud96Ehkm4V۟Yͣlk4."W\JUHAicJ6sJ@/3HP TQM|*S:g d_Vp70UL#O786ڜmZ]ņKx` Wʣ=qp:5PdC4>*lX} ]Bˀ֍Fu 5ZGi+7p:DB-ETtw 4=8RڀJ^"2k]Tײn=SY< d+ZٜW~A:/H5 Ĭ9M!:xgc9m)|?@<+ 3:ga#yw %6ΒXB(axH=FCv;;YejZ1b%"2/xjOzK"U/l{ #Qe`g%d@dj"4 pcȈX18mTR`}TCT.M05q~~#Ki17AEff9A(y涯X48[[lȗM1q=FYVQHZ+=b5s$Jhnu,4> i祖Y]6QUIMMbY,p$4[F=֨Rǎ*bq:;Cl}Vewz(ֳN 40=~Qg]S3$(΀rԄZIK=S`\g/[o$Lw- pi]UY3+4#2Y`-y>4^_h &/2cleZG:"1c疣M saiqH%{aT! ҆wJK?n[ЗWNa*ŠPy -sՎ%ዣL-qMoTHzdB~NT P10 3Pf!lLT,viJ U`9_IUdϖ@<0*ܫ%WV )+{"}PG|FV>$]ߤ *(j#OW]2(\6v:PkrsOLh SCp|Z'lf=hw]@IGXD5%?HJ.&Fa,jr~g€($]wH5hB6geWs?EVsL ӥR=e.nZ8әpuwhw<(z +q`)8&g8U/6)X%l}X[.xQU;`SHLDUDNWẌ,"<-^kT>@oQIXR~E IԳQ/¼_;?d["kvbMU[, m %tHh)i-73U7Y3F~ &nC{+g`h[43Onal!cd޺^>#..| 1SI T/uM/Ͽɂ$l\F ս`m PŠ'%?:PW >/_YPzЁϡn:FLJNCjݷA'f Tg6Xpd #ψ&<~mek7 ̥p޿,))\>6 G^b-9Kb8QQ\fz6A V6 !p'juOtu`9xIˉYMG,M15AW^e"%d%6l n9aj1Dw 4 h/CgxXXw9gЇәCHz ,VznZ6Iو:`)2Yz gWCD̮I /9|bMBʩm:v8&3щ8 umբ^k0@K=(kXFo QKV:8tF&oe?Y@_z.sSEgĂ,ګ,0(SZ@!I 9nk*&O+C G:綈p}pX՛q[\4n7SlHkSzV'pDO aeo.ܝOo KWf >[]5QGքQ(7D{qrtR&[@'C^>3i_&СM2}K?]7- 9(+yI6짂5|'~"0ۡtbX^9?:~a38 GՔd60įnw63ЌJS%UՆX g>=az?u%ۋ3q2_OOŸ㧾班yJ&M]!jJ1d"2eqR5A/鼐ZŰ۵IM*P ư9\QJˡBln).By9~yBDIOz3ơp:h|ozܠJa oศ\A_)5u^ĭ]É 1@؍i>S)!qȶhn̵PhψN ;/w3VPTN%5E-F0{gHxxwg%}Kyj3&R莈(("o|/X/>/]-JY$C@g(%IJXSѣ,qު`GS'0ȬE(jEr%eqi/ p;m2Q)fyStB\ёuUaZ >fx BJ(xG:u| ^%K(\ $^!udi{(x" X6`Pb4'?nu3v3m^@Ӯq -vG*Hta=cn|=ġ`)2'+wՌp%=`T\3R;A@#UTG#Y!=Y'u2b"dlAI JW 9*\L} )}d7Nn7@Cp)vK$ ll?# N$L_hVl 2~o ٖ=8>.8LdoJ}ZBݒz䣀!pwIfW+M"RlU43ˏW"hbp"/OkL߁ >9{+43zW@rq ESFKDavwPP+ ̡f6: Bxlpn$c…=&fsdtu ^M9So\WVHsy9x,fpڮ@QozJws/$6 ʆU'Z|f~tN#м:Fi9a,JGnur=#8ʫ_%dcn Ӷc YOCnfR^dLjZ#h1K*ݴA{yPg { /w H+v:66[eO؟le}3$wtrQr߀I)+9dýgu㐇Q"ͱi9# '#9vھMr⃘s9:DxU2_ 1Vgp?r-tZUP7f)4 /-r^x -21 {w\A{$-|%kBH ,TK3W?tLϣe"7g ~+X9SRF;5/V d![Rɯ R ҕa7%dl:3uak!J1XJ,a4X=T.V:HY(Q".A\hռO~W égzmR 2Yu GB#'/B@*;_1Am"MxQF UɃFѼt6eB< (.0570 7h? Lg-Yz>>"`Z׊!k9=rAOC ~ΓG1`. OC N?n-`|LULm-J4~Y 04  :Ҝ.]4w#MrvO=aqUBSEͣ_֝j0sNq䫲J c`5C\cͦҶ-G8ݑGkA.~N^K a[Vс4ۙ}w-iI<1Xj&G`+;nh׸Bmsr-{O/SG[Q93g&S&&B%?}mfj)TY9R>0ATexjQ2G?+j(Yn2gX:s,\{Ϸ B2|?9 ¡ھ!SJc$3P< - Vu2ѐPJ!8w@kj Xf+gY=^@~i ^?`~i՗ ӇV**X1j$=>/؋K5&̌W; h߳A\}bw(*wҠbS=$xdP0O4݌V6,[Z,R $~:aa J%2V_<97^Q/y7'҆,W[b\5;˂{.Ӧ97y!ƻMtyc%x >z۠S}mA!Ҩc^.iDOo2<,œ *|=K)7W޼Joɷ0fʜV)7LshxpL5X 'wr ĺr"w >!IhCZHu``dv%+ocӓX%ޮ&#Y<&z`RC\mWᄂH@~uhBx]dSi@~Ow6sAH~%Br H>S$T[n<f4"6C =_(;e La]33d;& O3#tB +AL+(63pڟyX%,/:ATK z#%l`{oE~C]n](l=]vIb$~w|sWTՁ=>(.vR| n XDq fn:=mNS4xdP`dt`[!?@dR!ex%.q[k5/S~l)dU}@ZOڎל;И5VL4SE[L惫v ¤L {#a+5ꄽc&pNBtUJY~(ӱ䴩1Jrɸȏ1p/ &~uQv>462eZx*' 8r0Y[\X;&ތN6^\C1jK" n3+Tf,?vݵVTYlS*diR>.\w$9 i'{Ԍ^^R*"eJ<-:yly;&Jw960+TWwJ^9ƪR͊T3θMu9Q-~CPpZ!n6aA1{r{:P7;SbўtEUH>&h'ގ- xne!Uܼx l"XI%YMk4+^'F |\.~0M>k8V:#NM&̧x <"MBh\jzn#$;^[T_NpQWUDw&H#qEjH &8HD?!3ZQ=,&jޛ?u5 "T 6q8r!Ǵ@5Iظ,CG&YGK?N`5|yCNq_ɣ[O7jtm~hλǭLOIc0(9ZJNjL~=\W["*;|?CfsKf'i& Ta(E(֊_6p&J%1k3r> l>|ƞ`]R^)`*x&Oj0[H`So&=[z~{--3LvI59)>dׅG7x{rM!W$LP7'PgGd[:źoFLW &Dmr%[p i[F%2İY83x}l2>uw׍.b7ٷs6jhF*$|u;U;)7f+DIoixr֮7>C+*t%]Ų55U lX%FPvJb`eWG, _.z$azDy4 `5{x fUu^,SO^Ӊ2"BуCj oJ!>{#Vt#Ҩضc3>:sj(C =?`ӭ}$BsS3_4@6w͐HyXbs o.beBZDs]':˅+A(@ bT$ xuǬL, G+mWgXlk% vnF4HEN*_+),y.6ȋF|grmy3(6 Ili<6`c49{qr& CS%: ȃ!X{#[u[v+(w7[umtN}zb]a&Fspձ|42"I9|ՀM`YGޑ=++R9f[BM`kI7Wo:\Pb?ܳ" 22OAGb FyҙGo=VG9 a,ft.q9|{_wN12%I >&r QKPޏ7.ma?^#=S(ҭNL'N[ӻe 9_ÐX+̮J'HѮ}[>i)0SC 'I3ʜۧ$VԴo0 ҡ 64Xn 4$ř &Gopyc+ ďd7Y(PF:^@LB^n}AYU852Q/tU8%,yR 灏 M7{uVQOS(uڣ F_"D B z}3;ј0P`lc3ڬ,0ײT TXsJZL8Įvx1  ۧY#o?YdL :˘7}[31oMM) ;mEv\ @divDh爑ҫ`O"t2ɋອ߱E,C "هZ2 >2'bpfO1}/In{žV%#B:͡ ^<B#d \׿A9CmdͿB0Hā}EܛzO&ͰG5Qp*@eFڒ%q,K~N]l?U 煹5eՁ,L騽][kʎ^4_Notx;ONqk׺8q43|)Jf# Z*sܿ񳶄VPH+0k+ZJo 5ȼ[ ?1!ƚxhU~qE@禄x2 I*KV)nr*qU}Y{!6QQ8$ \/nz pX>H8nKg#33ɜmDUٹJmfI!=tc^bY_V'ʽƭSٟZb*.i{\_B˫- 4HD@o9 ɖWS2Oow>RnkutRU6&U̇~r4)T>M]Fk8l݄3[N" 7_ó&tSDc-*~Af`ǸGC ǴL|0WI=`΢gsV0ctꏸV`tǫ[R9)pwb3Ā:9l)7ϞjE`֋M`C]H)9ܐ_bΐ{ϏVv{'`Ro=d3S5x p~=@W Q3E|On#9\$_{NB#L돰u#|I.G"axxDCQOYt~o5 0a~NSBsUxͳ.f,8o?XXB1/7!Z{q慮!CYm3PhwxdEC5ikΉMQRzh4[#^I?|*m.;_' 1܈WKK]OhHQ)vd>1<b4`(#JBw¶T,o"5[n:~} 9Kst3qcЬ1h]}㑟SmygBf|XjZnAXpm!K?8fB< W+gޕw솊`~UVwє:JԃA3ῨQBҝ%QN 6iM8 4Я<p~[/cd[]l))5+K,vVt;'& .x>E~sUi<}m7E; ZKQQcFFi%SP>N&sk-C e^g7OL_s˓Ro#mq8ҥ1uK*JeTF^z҂ξ"aX"bӅN-nTUV(WOԘRGwަMПRv /G1QB։,ӊ≭ڈޙIE$a$?$D~YC閎x0v٘I5;I%7z% v~A$0 SN}X\(TCϕKEvދe ڪBcG:XPw5KRY$UX[sef=_-0F@-\{}:_hD&؄  $F A"Gu&0j 1ֆ<`=fjxqN6tXF< ak7A;i ג:q0ΪGRjɩuuC㍊ \+r'2%eجVÍ^`k].yans(I2x 2(v;C,%y?\u>%%uޣwA)( ,,C;'@"WzTM?󴶱t`{1aX3U`r&PN0}dPeddi! $FLYӖ$Xv\2)Ud Ş'1;_%hVrマ%~cV4鉏?jfl4 1@1PTM$@lUq!_!LO[#[%H}WPCl5=8emD(! r#&'F"0I+q}ݱ7dJ,\~':[/Z*-Ka{>_I+N!>s+0r^6w4_]pX}LDwVT?~CvZ !A%<;܊TO`@6i-dKcf<1M`5p 20^タnqnE*  np \#-Wÿ 4ckϗ_CI^8^6/Ihu ŝUSP9<:A U7X% Irutk A[ ɨpf 6dC5w5N[teuHWdLd< H:Fۺ:F?3ϻ҉8)<|Ad}m!-t~<%;JRq}t)SV=޸ .H&y%ԣJ6ے`Iil8g\!hp~пBw L`@kU[a2NqrܱGď@GY#<2̕64Cj 'hgy2Oo}⿁`$˅>pPd&ž8rڿ֬w믾 M-&PjB~B[N*&%W޼0~)z@Uq\0$12;߁@\Xc&mI`;jX!@*>{MMtYD=5139v>%nGknGv8Zᾬ;KNju7 D_OK]`YQ0$KZT;9m-T`9Ch{SdF. ˤ0j* aW"'j]^DvZurz- /E|{`.;@U]o00NV46 օPk!R;~ph %Ǧ׸ACn+ $Q hix0|wfcHmQ[gc'm#ۗ1(H-'dtA+~PU+@-g5G,`{ElP(0W zen\O^xp|Y4| jS,]S{\oݺ+ m$2^w˲j 8PeCǢ,Δ/si_R&_]K?pFxqm>N9}9grЇ:J,H=d?LĴ-3/b=LMWw#.ZwĎN'SICsUHlk9`e#l69X}@r G E[ywÕiLt_} :\}$Ӏ ,Ӥ}Y ˊ<2޾.2aaLJe@qL=ۿ ތmMpt> ӘFh$rzΒIK#Snx5D2d 4(*1R_y2TwPh~;X\v٣ @r\h~H b6Jnjdk0Ihxl9ړ7}< Qrr׍1xOikTIV_Z &iF.%nD9.qYYM_K.\![Klc/(b;Di 0Os?$Ywvrk(@2 *) />}˟l\R 4_/O!=v%+U{́F$ՋnR3y5*y6:.K* c+B1!-" %qU@]}_s9An)IK/ޘY;yD!xndԥ"5ڈ+%1]r 0zm.u V(hytft6^pE |_ XF:뇢pA/=tL@OzBJ:7bFBiFj6 #ւ.,_ `0\6 U;GnULJZg7nHCx-)XGeEP";r;} +4qE¾v\_Lb.r⮭Y  <|:[At؈n`pV+kf)ظtkr`GoVDj@.`H韛G[(zeF!:%hg_%?Vd++U]yY [~<#g}a[n+KE$W LJTgd?,pH@p߿XRD$*5ᓮ;9Zϳ/ 2@rPPyzg4#7W+T18@WC yz<&Ԙ-tDci1v,=F u6CPq혌&&/[hD&] [B`Oq,نeNb j^{nY[Wq#|D8u`0PS"1 R]%6.0 0{:M ~Z U1āh3۸Z|aY#= j0'M/B*o\S ip澸;;:GZA*'p9CWm{4KEF%*lvMmq_Drrqve˓9gWht'v:=ycHaKS5@_< :{} aC$WL*uk&zDMyW^!>֞BJOqI:Y9/MTYR˰mv *&m$ qYvettL/\<3$<]JD+wECR<2>v O@ ܇q#jMe?RPwQh`{T#*cUM#ZsNCuEHK)]!yhmwƯ-e3/&=$x]1?j;,~SbXvK7*$ HO`Q[ b-~ #YpJP{"=3BUR2alb8LZ09S HhP)<ֿm5+$0AJu-vOɩxɌ=4bɤN_&t<5IDrZ^.Ca{偢`m@ps2\8Ԝ.πsCo$t9b?sq#CcUX RrKv66;dw"'lt@/.ލ%JɡJI/}[Sx۽,4$ vRǯOaῦ} j^f" ^I#ݸ> '1 )_WO(a )Wm䟾'E0Bl&UbNKO:gN>Ku"v67;϶j Ǘ:1 NY/Z:z` !K%' $c@^w۶lsCjRwOV.pc}nZظ,4ݞKk=gW1fNU58mut.y!#ejBR(@ O) Ij}rPkf n#4˽Hju~}^=E.vŒ{5"bDxL>LC. [rD 6JϿ)i,͵̈8h^h_X5H'>y$&8oُ֦)d !K,j+17djE࿉Pc3 #0n᠋'ȑ^JAUq_b";ie\π3?4-j#S'.WPV`b{2!U!a<Χ B/_?kimr%{Y$1vtW6u=EO \ R)w2s CJc]X|6b}S֙"/vN?N1R,fGl~ +1%EV2R5pa$;ۀدu=О>\Y\R["tVX΀˩rkY %PRKp<+͗eyd;CЭp Ĵ 4lU62Wŀ9;Q3t-JE. k=K}'Z2&LK>glISw>b,s5mEUTR4X*cx_.ZнTNUn$ru(jI09|z T5O=輍d^c|+1^ pb3w 9$߶tAZL?AJYL{|vGT8E6+XHv0U_/b#giƘ7᷆ ' &*X Ar`⫕]?̃ nmģ=4ߎأ}( A]]>[~x2 `6,*Q#?r"7Z ;44 W Nu~+,z /2;ٯ!1D? O~Kwb7lj^eDwY#=\b)닊 ؜Rw*[>7⏫䠞&Ny f2[s+ӷj@w0)?xc0)1ZԣM/ov;Wpsey11r{hMXNNp&hnxz9Vg]Î#{5eT'BYPJp/)>KfP%Ie.iRe*#chϤIa H٨ۦ8HU_+[P>ұxoJB8g٫y%"t=tSŋT"y&u?e*pg^qDаE (IPN͸}'ېܥOwp [!'I GLPif.oM?1w+oN~;SפEqbN04$e&$- Vl̥vOn_7¿v89VAI᷐s=@VI`,8eox-ܻ3'1~K~OyZj?`?P!V(s4^?+v'07^GT?ʚXC'"5S&!&ly˺Aٔo:aGV+}_ϹZ>̉]H_q.?J4zZ,BH扲MR z{#=U$1["<-#Q&:2^Te!tUUMʗП9-=nD>uikFLٗYfH+=iũ0ӟ| BLvήML:ܶc}WP c:\w ,,gh7ZJ"M[=td6}J}ݪk"c#mF%=}grÛ7qa.C a+x+R3!xۮ|ˡՏuF@.A~^}zp8v*L\Mb[j?tWE/t#h9IqHgF8~T Q#h2U~춢Ĝ4O/ H8!xd5Yhw CPX"1]_^*cUq]QƑ8C| PQrh~'߇xXtXhAO$^4L3ֵpEq*+tn3 ]n7p9M_-h ql x(L*Bdn`y 38 oA?ߗk}:*D(P'vH3zx E5߳ƁCS51 D|?2 {ވMSm;ɏE(Wu,/yvfz ҈ii Q\@Рbߣ'SCt{^hԼGuzijǿ QYr6]FC1;|_ % $1qZw4RѤ!*O%ǵѭ7H&#EdĻJxQؼQԃ,˼/AVl%>eLJN/)ޡ7W+gnoL9/,Kyik:+?#}ٟGAHkaxrw`.moeGLoX&ֱdFZ(`FS4rjΏ&s`}&T䢅 Ɲ)'cԱcvCDty_MaGV Ԯ;mFMyPI;u]]#oR8>L2R?z﷨~.#\3! m]9Qtͨ/~]KZkESvp쫳r\ԁѬTel@M!5;Y!ܳK`>4l%Σ_w99boSlћp2yys?sS1g `cY/w~JwÏ_ ;Jsp]+zXʁB*}V] 6wKa Rˮxy)SX ʫ|t u3 ej;NQ'e/oïu=0>$,T:Ї4@cX9̒($l.!멚FݯW4FR۠D1DVL}R:8t*S):(}< &5`AVùj,7Χ6# s[<[&h"TQKEWRfcw;t|eʵXn2rB.1H!k)|&h:d^J/)PO6emǶvq#E*K)mQ[9V}8NULZcxZ_coN`08sF=f8]FJF>?r(e!^n< G46tl ],B2nyiAμnr Zo(/eÔܰ Z4m XpB~V)WJ!r}#W1 gv&F|3bqFH; ?%cl1 Z8lg*mzw6 %|p\CaJǎ݊w8[6>m Չ$bQ.mVF8"$$Ff`rfY;7lO^cTˀV)4e(\n.晑&j.; Ānm^HqZewP<T̸G*+<Di0Oj!o)<28Is ăɻEmfDz9yz,o-Rw ۂ9G;!"3>}{zeZzw6ŽF8_v[xh oF8+0}~sKգZ/כqʷ ӧ}l哞q &\NebOfO!?<2ֳC%4|*0UHyϜ#*cƽ_rM_;yH{[m@]Kf?,63Ÿ~9'^eot^b"<M&8O"xj߾2 ,eQtKl8lHm,hqd!q/7I$[O5Kt_-9DEŹnXVCHY*wio+[79:DX!f7? nDktbpDc@^-m(es{ mv,ZP*Onqg\MԪ^| ` jS~9a,vAt;D;,Hd7^;|9`W ?4h#u` c~$Oo)xN9q,J#}HMA(xDaSdfV}-_ÿmtR I j.|xYiޔr>wp6xa\?JD']=r靴y#טkrHoFt) vWZœ.sDJ ǎfU?,o.wy}ϖAiOTgEgC}P"_3i`O6,4J53ʽGPױ?VG*fX@QJ]apc$Lc2/.csO` {F3 P+_Y&xsz\>xyӢ . %TdIe_R^[Éܝt&kސs\Z fxPiD]\Mɢ*MOW'͋#\e+"O:;{Bh6(b'T#|]o#d?R2!R-cxıw8Y9wќcCK\ZA9Y iK?a=;Ic˴BG6#6S5#ES?溚Xhck3*rCڮ58Q=udm5jGSrIa.mzy& m@(E+Ө-Rݬ0#|/4E별&#ɠ*CmQ*EZ?Q YT4rņ.@T5ƫLiO,|N+チ:wcP\ewEhSOn̥/U,ˁ&oAgM RkK؊-Z/`~%@eG IzrkS#5!_uAl_zSjT u}Q2raވjb+l82T{m&JoRӽTܒUzȌik{2q[v k 6~Ls=j峘qyMʇCΎ:aXsAr2{g%5}:sc욨(z~6Ò4-JWyΦAg U|TߋΎ^G!jDw,qZ o8@ 4 m#^]RVY5T5,j2,nzPj@}cq) p ra !$T4 J!Xwatl|g_eu<DRƩmM"O hLw"{אk*p?2s' 8TD1GCp"%az_Sw|[!\52@\4Fj^A.՞+.mWbkYTA)[no(ܛKXS Z(/֔ݗ{*ivhN`,CW.V,.,͈lX<디up=7r}MZNh_ 5e'k|"==J=`5(oS>hޝGly@'-~c@ZQ"W6̂䎩rHQwQHz8x߄^%3N% R.\8ƶ ^Fw2-Fl %P@^ˆ /b?Bh2_P4d QRʕv#;+Ue oEzKމ*ezPV['+WilPS' Og 4z&Xm[_?h"QQШ/'^VFaCRKsb<T}8b>3U\_EAVb, _H?/X;41Bh c%Lkq2 ")LQ{[bg% ٥ 'S1T] -q[r!CD e5b_kS8ʔK#$4+W[(Csi,jo*?HfҳWo~yL fR}r8NX<"kn% GpּIʑ[QȹWSA5H_Ezz-c=&G 34RRO1jTZ;7=rG\!?D!rd! ֊ٜ!Yfq7"A8~1W?ɈkǾא3@nVJ`zSoM.SPc3kjqVsSk@DY#A̠ami6r˷2cf|S3BWo@yrca'l,ոLa`DqqNA _t<3mܦ[sQ3[hQCNAH¶f'%ߓb \$yfq4Kw bmWt٧ Yv+}{nH9<e >%xtF$R^* ԥ');Eo򞙱?73W9'EC!0;BXQ߸Zr`~y4fZ2A.&=!rt*0(uI5E,K"jʰ`ʥn)jJ|>D|L8>@GN~o!#v絺":52XsG`!Qr= JZ[wf\{d:~}!+y!KFXg[LiVe'b%PeTrFB7磡#\ R+!AL" 0f=ZC=ݙ9SƍM >?0ZfHra! 6v9Å38Lz(,ܕצ+R3p7F8j' Ѥ)<04~={^`kЦ}ƒ]YŨx/Y$Gb;BZjlaLVh Z7_^iE 2,zH+wqCN] UesWp\uv/pCa^"<l\>MCvxlnYtq+L?,tIb_%a%5 $A-)(m؍i+nķX< DS^=74 '`Άn_,rB cqjŹ|s%9ӃY[GLUhQPo+C`uU}H)]WG(c}ӏd CkXymjUDc'ɟ.>ؘfǴw^ Jr$FE~ɣ_a[ \Cswa1<<0J:w| B(bPjlVTghzX' H^RʠxPt/O9,b"ΒpOZsnX{?+61hO`ku2 \%7Qyb9̕ӃDGHę4Q˴B-{3z#wKr.|{] |p ۚ.DN7HoܰzlTS;ܷEdX 1~V,ue>^dmApZ~~ Jd@B iՌ ʠD)\iJ^0͠C,JIG⳧X&甶urnzFN@0>Ӣk|6׻c7:}@ݖҗ%atz!քE["f  Ys4J*+!ԜQU'{yň;!ziCTCbN('(Y,UAOשh)8t-"C^`jxW(0'"inC[x6YrwkUT[-gQWm{Ddb(-li}XZjs٩ב} $Drv1(nC(k3+M/!ek#@P-ʜ0P-[&JaEHWnB(H bGy-L%K!<فnR>ZrMϥF?di0 6vë}X2HؤqWA -b6]R!a"F>\r~\0+{@[ %oPKEiFڷK~U0EMI7u5rK5qpᛶ/QD4o=gI# D=Ff!vyt!r;8?ar?Z5~L)";N$'.x,'WsRWk4'_j)wck|5wg"vՄ3MM4b9~y/O |%%pJXh'"=@TZ"--9d%Y;hjw(jc|~CehZB 66'z}:Ó+hs e(5D Λn`[HvW#FKND~bO,|GV6A/ ̷/ Ը(:XC vy{"(g8,,EjrGo[< 8K =qd/bvy떾^4VT@trOEy aDYM=I+6wN,h|*ˢx[, Lis̩"i6 S&*UX Fnz;܂B@?!:͆gЮ}g}H/Ǹ@nS`x~MITvSa2{-`|Ɖ5^\Yi6H6w?pt& `2w% <Ցʀ@LC"q8ǃ &ԻIlSČ7QhFi@7c@;_F5P~(?m\txȔ VB[o#1⇘~1XP~/iեR%ƘK}߂pM pU"|c&N7ӣ0FThlqK #oi 4=rNq(U *tj1Iqf;fSu\0F.>On5ou` z=)mAYIϜuxZΚ\<,G|rk_x&$fV#Da1!l8NW4U[]ƎmUa)ˆu1~䱴/խM3 jC]5 l)W[&$br5N) %]oS =:/!yϨN`J"&t겋Q&9w6~buL09=(X; |.X"1"R%rOnewH: 9f $FI*E?VOv*4իqzgnJNbqLb)0c $ cOS;e(AعK+@gĉQƝj5zWh]A#6křh`E^Uk_)%{Ÿ]V 9uuPpw5ZQ`3ەbDeA3 .2 qcL{]nqw.'7h ݖƞR)< D89D9Qp=m؎1c^q€]e 1E)j=gyg^>>x0 Օӄ+sr**eZRv:!J-; AX*JȯlMm: 2[[ce^s lYx݌w&PطD~Wwޱ{YO30u!h==_g%-9y VS Q0j&cI2*qV7%\]!VV:$ v{!|cs pf4^vBiL=4z0[tP'FlWKz}ZMtUk(FC"jT|rTюq-4d._͡i[F..K JEߧ+x.C-ZGa?7.(s)5ƂS)vE?C1b^rKs(jiA>ɚZc 6,#4qsN|b[SEy/TBpiw;O-%8qd_n2!gE0ԮkU=0缏"4XXI`:m&-sRf[m*_3)4@5nx ޥ \4IK%|ۚ}Ȱޭts %ptx㤉6ᝁO #X>-aEqRilc9ݮAagj_ިD"5#XI-`SD bh3Y)^g,GlY"CȇB(znoIYikpĘ=0@5gãBF3B+^5?[A{b'T`1?rDu\,3,+#E͵՘!od jy ʅ.b$Sx p֪mݽ.uV#uPE@>('G$T} N/п7ݚxe8#J,030qVͻpHKhbiS}$7~ܘi\wxF֪_EVL_W93 c5D]A3ܨj+q ǵݻ!>2;rR] 3n2WMzF`ͼ7(*(4 {Vd%,BoF׼)7ˆ/@dcK_.lTnUmj/ 1I96LQRn`$ : 9Ģ[a xW0Fnx=q>eϹ t|ъG},Y?& 9Av9>b7dXBCs^E:p蛖BR_*~)歁ޯM :ynjroD!s@CŨ]-imh+ cz*#v}w("Ry ~,`FGX!6XIeQ|ۮ*~?0 g:|jp%s&0{Y+yT2 &? DVh|DK#1ȯ>{"7&rq펻̂cJ^^ % ZDu|5[uZ7Qxz/q*M_'\D)=V7[ -|B_1 e)Y}dO͔m$GsveycPRs:rp[0XN1Rr*wfBOꟀMyF4%]>ۓuMHZIe&s]ijŮ-!ͽIBҡ+,!ELBl߻L])dx󗚬^@Vc@`3 i6N&䓔SD-J<#Q42?e# l;S\uPRQн3_˶- vВ6A+2 ]MŃoF)Lk7RoS ΆK.\TlV{rm VX6&G V&~h4B.=3+Po[&' 5yiIa }屑 SPm%(iīfMqk'/ldz5 5V{r*wظ 1QOag |0+Y'ukEhT:wË& lwp(( |H:1>_Ȧcc FQj>$c\E\^rZKxVηK ϡAQ=s9 7z|=I}OLM<;N{h5GjRxM84oP^a3 \Fn鸞i<*_A'C.ϒ=_inPj v4ɱ%&b?m#y׌IɆP;6Ph~ #8U=T@iCvt"xV:bxf¢T.wr|υ6DɬE+ i+_ J,sKiX΋|vF*]xY vF+SguN{Bo"nӱaG Z[<0)Ly,w16cZ mð4QE<<LzB% 0z0.=[FA&}*{gM4?"J_{ 惗0Q-O@PrO:YJ_H/p ;aL6#7Z׳E1[{E/iG%I$xqϙ,?HcqTDٞUzYk*g diHy172evҨpMb_Fyv`z:@~9I"EI ٝC ^N>͖Yv<֥i|eV"S7U٬[i܆0HBt3EJV.S MZa§%1+וuNt9my#_K˕ܕ<P9b$}U|m@x&&*qΘFs&1Zlo%1-i)Ű%'\NałwN zsQ$ z$ꋆYJA[@ 0HSXQ_{GA](D`~JCP( Q%z7_\[Dۄ.ó/+~.8xibz(J0/PwuF!;_1YrK@)AG; 4Vh975T@SWhhϼZ:ZEN`H{ 0֟7rC (Н#Wwu!mF!eGFr^Dz氤W8!z.!t#_ ]%]M0{ː4ۊ$tUW?a7bDdEMBAѶj=9`;o'jxWK6f3M,e}26cOd JMFfș+vb;$uw}Jn\]Z#]pƱajb}[ϺvnCU{`G2w|V u+ۅ̳T1f9;M ʃS; ŪoHJE5ڹFz,ׅm9I'aŢɝ){}= Ԑ=t%aE4zE,J5{M=GMTc)@JKLY<1@:F_j0A:r+ ViTCI)Q'IT .yXI@W-yJ^ƖF^u.mtg 3Ό#%Um⌺C} @r SH Q1yeej~־M7v="H8RLJP֓IސaPf׶N Bj{"/3qY&axoz}:yY%ܣ,ڎ)]:4w٘J*9*`GZ7l쑫/o V=$0B z1/LMؼʒeuqU1xğ#$Xhn]2^{hӆ*YJ6I-|c8QCE2v7BuH"7kڟ.~N~kC8emȠnC>i@+^&hXg1^vÊSy432.Ӣ2JDbGQn#h]GLnEtedQ]Ck`u7a;'F鲭!h7@$p'5} FM7F>q6%)+w̖ߊAϱGbr^9ZO %e#i7w94="73&;j0W u|Xc7M:8ٓGZ 0O:5Yt-Q̝zLQl[܆ efأ}@M/sJHdPb ߘQb1KUb{W@QL;O_p:GN/~CQ.4r%`){lsT" qX9 wݡLyVoŃiN lIf32Ǡ3GTr1+T~tUuE{|މNO & j5;Dú[5Z' vXᚸ7aN6B!bm(Tyo uIȖ Wv7_w`#r]%Ȝp_*tN=iaT 5ge}cTl! '57O tūy =%*ʨsL\$__m "$j$Вtl !y)ΟxD ? ~p9 :Yj,Y{Jӱ>尔I{T\7H#N̷:Cs‼A'.[@S,^15?*\i-D)\]Z@XZ䭼~ z=hJbs:ˍC׸j5aD(a5DifI0)pR[A=Tش-y#=WB6LB(J'9khsڲy}Qg)Чi!x+#6[PBc}r+ö >m8iN=P.{XldyiT6]$K3?8Hs+U|쪹z ٬0bߢ\yf$@+OG*P]R:]ޒH2W>a-sWC5S|>syݳixm+gZUoauɸ8WītH? ϑH]sT"t-a1t]["MɔӺr&-,2<T5G#dLZ΂ _iޛ$;a$ `fr#មo=8ƙA&j$݄ ` T㓢-D Y^ k&aJg,6~59ʛp^QC}.td l5VNv48SE`8))L%#II`1;HtONAG|AZ ;U"XpBQ_k V x3SrIcRotBG,Lj*Q) Wq<ق}^eS3!/Dv5iN yJOqM\NەA{7M)>%t8lao5‚'{Yжߒ@Zf_F KpŹjgNYDШ\4$=H5e;ܘgk7fTO(4G#RxX|q6y w`<ڢojkR1~s}o-?t,G/d@;Tgt d̢r{+p.Wm(?2ea1a/N>wإìV޴*Z1?&nU Vkޓ'aR!tvŁ2úg,ĝ$&쓥I2 SV6R:Z[J.k_> j@'pn 6/}曷8WΦ::gƛŦ9f I0zxވJ N 映E\I ~vf4/"5kK'8ȍ~NGxxLlFt.+fق/8X}1A~=[ `ˮ9}Ix|vRn9zyǝ^,7W:q W~';9 fcagcv62K~8E xY˨N;g,Ys%>DYh7vA13Tmv!?D)8>Ʈ#)1B8% OnyNI~D~Vbz{C}S(^B5 Aa›V?dƖ 4@`¿~k&sq+}DDB ޞ~n&`2Xx1ڪH#2V_T,1wl R:d{"SB!1_AN ]K9~# E1tO,x ?g`{? _ ApdoX/hƵQh\ǪkqXvz ݶM \vZ*<ڐrhV3*?U8,7O``xQǞ!NL ߔHFoj) 0ha M쉁I4$<)DcXRe ]q( H) fVY TDaByn+3"dHJ#+ ɉ侹b0K7#28% .]XVˀw^N 2YGt{yYIq\m69mnQU.6X`_E7d\ٹfx?&Uzsք#A :8 T<াJ/bwUKk]LW4ub?f)2$([3<9RN*xDZT{\C6){Q{kCqOAlŝ_@ 𲹇7:0Wow5X 6V惙8QC/Ή#UenEh5?0/)AwK8#B1 o'jA+i>#ZÔ6A,/UwRhD `{";d0Qo̲,zhc^%d/4*]sjI-NՉ}t"ɧBxϕNK;0ì`k zϡ #7볧;co6ՐW%IŐ9yJ& 633ynз ds!A\U+3QºHLz i6;YXKG7T m:kK:4;RVftz 60g+$J:TNW|*X##f~z-oVETH?@khSXRBT&BQ# !@$1+{'^~{Z'U>m;"Z&Ol9(yݝ6d-Q jc۫Q*2HTV^/*<⽘%X^nN~ oF1bܕ+8Ĝ%"=ǺPؘYYf[|F/+GB14Iuk8JSUBB^v ?(M>Dm>$Y"z(0zG+ @BS]m?XPUD uKM߁C]k0O`Z>7iS^=0U)+FpQ\bF W(Eq$ý 0 8-4 ׍m FoNto6Q)LN,UVQMCcokрvpoޝUJ˽Tvc V8aRLݪJ?'25" Km0 *}cq;G>|oMUFK  H`guפk;w>(m~Uw]eg;0Ta9;MN +n̕fFVGڢJ|lHMa$@HN%i,hׄ`Ef-`7"GkwC Xs~,#DU3ϭV^Gwjj"m1 9d^z;JSC;59b:ʙd8w W0* ~b7>2EOcDoDd^Ὲ!Pѓaa.VHlMb~:aD, 6B9 f),1}&Ah_$TSNX17꒔BD-A# ,.@*KzvZy$" c@|Pݩu]1,:@Z}F*.C0{CD`jm̔vyySDCQRF`!IX楚YJ(()ߦt"W/Cmfw14=yƊO%/K۞wHSGCGʋk.lojvwO:Wo/|]z9/995pY9޲D*a1?)j&^(YDx0a~<]Z5JE1)8SϢMDH z229btP}ir&+neڃ zh2IDoJn-' SRh.Aqo *R0ղNWs@A?SpIUS_ )j"2i-OgIz_)nڹ2 ah,B#8m{o7I+Vt6,Փ%ɀܷb SYGyV7۾>΂>(k4w̞F'a/u h1ބ.Jwc|~~p@LVaS :Jr3Tg=i?\+]n*?w\&I CWcu]Z'kOR}\(%&ᇮW< "[Roe[0mQ=~?ų0P9f[G1SQy3q"zi @P+49Jg@")-Oe/efj`p{]\scvp?d50xYT%GLFynauC WG{vl%x""tv $=[dw|n]sH/":El^kCaAo:\VG>Pg|F+wW? z ܫ"ҽS~$.[]mǘ5 ѻQ[ \% pZQ{睦@}ٽm*쾱PlXH}PKB'OO6VOp2v!!SE ?G@6_ Uiۖ#İ# _*e'K/1?N3[nת(;3EhD#3~;R66+﷯:kzp_Hŷ(ND'Dp2EMHچ|& W.gn$E>.Nx XU6`Oݞ݋1&.| _O3շ26Tފi  w'qi(DFjg3r AJj8rāp5K ̺;#+0\[m-hl G 慞{)0jz"wUiF9W,@|'-GUr\MIbSN-X+~ ,|@ؾ嬴=W3:h-{2H]{ >3& 0&K?X$"gU Yx H-MaQA˺>RI)\B먕gҤ֝9ݢDf5㥃@hB#'>~{ZIj )iԊZmsڻVx_s3C)QsM*K<_pS LX0mㅤ]OϚcL*4"2;#rg(%Ҫ̮RW:zkA(1Dln zbMq ­Aώe ff(ORXIUW xh3t^Zh#7u!TLӘc+K9~م&񤧾j %J\7Qd^:@ֵV[kbНtwa~1gfvTX5q6 2Jz K;Ig|뾧I`k:) n1eсDGMxWu*9~-/H?Py?ЩOLstHo2HVj™JcR)8RS)t"ḇwjԭ %Ǵ!N0O=j+)yU#t-ȶv^`7bH8oxBgԿj On3"ݟFcNw GkuEyDَqJmꨰ3jD c%caP{k}M6սG f -Q=.l~6L.=j ֧21Et,}|1+~f>Q  |ּgEX$mG)#"Qfn&]нǹdaA֠#]c5ieo'V%cZozLݙ1`-ҧ<Ծ=?;T]ވJ4[~k3dfet * pD-Gwhc2NT*2a?aJWׄ2~jBs`qOR?799v:;5X 쮏sql'f~fgziU W*k Jm@VU"z@5pJp@q\b(2);_3T-}JK*_H1f!3(XH6;xܘ^ll-471s wW\e6ˤZ vRJϕޥ dg(peGr&&v,KJ@n,xCqe#   2j[EJ^hMQ+p7u͉DG@$Eq4OƳSIҍϥMQ!y!RZ fDbSVkr9}R2zq%o Z9kh/^oln6dZ"Eiz?& "޻>Zk8l3.IK9NSm?+*3 s+ŖA#MOqy1G7kg_k%wJsCX.螰Ǽu0Tԯ8saFi4iZl@EFƃoG(t h@X-!E5:Tvb0T;spLC<kH"|@ +#FZ]'-QG$pqQAQ29Jn3!hY"kβEEeN ^UV+}n\,3מͩ _lH~L,b`2ȏFiP|*I]֓- ?(%-┵glUݒeoЅ$W3`z1w9J5&.AZCݗ[H rxXX7Wɮajpj)VVV?=xWeԖ z+{Kw );ky:MYQ')Gti5IHq$E-a_yS[? 2j`{y̍b98| xLv" 0wR'50'3 Ma\KBy< <ذ*:6e2 @Lʫ+$˟7}h~]^~pz.F w8`<'Ga D'cy?'Av' ^.~4}L8F%:Ύ:.FtIC,FW1&MB9. l~PD(3I7u]Ŧ-zBz(S4y0ޢ? J TC^ͺVC!-HD5G,jt/&SPqC:L32ݻ(kvc|&مaB-!/$4cE4IY=4T  a!̕*񒻆W|Q^(SB@2'KEʝᾲ?$cˠ90lܴ>dM.nl@w+9]" ҆vG::7(S3>?쀁ȀzA TD^$(ci&Qp/\@3uuPgC΅9H o@4L%YAZ]?VX[w9b>l>4esd '̄ lwt y+ꨥ#rcf̈@4SutdQ?U?SBBږ`k*w(s({Ox,MythtT{ {jx9މtM Rm«BN|OA 7:ӀuɊELL&޹Mٌ bۥc sQ*L s=acCcabVzh `ʤ?4He&qt@}[/A\Ilt(R!,l{1kjab8#Obq|#AQw&8Vϡ!ڈ 1UX>8`Te^9oGUϹ Co~\9Dj,5l/}n 0 {~&VJP+eP5 D4x9ἇ1HMq{a|E=m{z~T<0ә OS]1a4y ~:eIw_>yUj}u1zЛV-ib"R"u Ɓ?WDvȼ}d "ͣ=RO<7T#S_t!L4&Fj%᣽&R}4R>S%37r3F+m KH4i m(tr8eq$5nn6:UM,ރwn懊UQ\0֘G:ݎ&z h+EǙ7/cˁWrZ#d1u ū/c <oi&烍 =[t.+!/f zhΕqDYuU+Wt\ x>DkEnD @̷A$SϑlaV椤=v)4>?h: mF*PqŸ C+OOS.Pa-H\a.ȖcT @?QOnJ;0ÑտH_`/Mȸ+L]6) earO:& %!e$TiB[<կn*0-PdK%|ՒzL˹, 㫮Y]]q{#s5-i 3kiT-&fɄ';Qo^=k2i}3Md܈S?S6r#N}D`B8CyB"c|TgQ;9p?wČsp*1_t"%^q"![`/?k j0_9'ϒxVj$MkDdkҶB80Vl`xjosOIf٣s- 8b> 7JSMnϐ p#5Nq4 ۉ0R8YT仮6z&鍚sCK*z0@Bck7I5oɖ@M7_OSǶg}q5U@59452UD 5Iz)#ĸKjGe9R.k'{!lpk0tĬ$|f֞1(] Æ)g[%>l[~&063 B]zWmo70mD]yA;XIpxGYy' _J>fpKUT7&3fNL=LBa/#8VY* W3H8e<O}gn}Y0DEp:aǝH`1t[s1ٽPF<#&Xw";:.f81<XP5n˺̇Ĉ/2N )-D=2,j&t?ڝ;}B.hiaD?0[{ ?8]zC-E<]h$&Fl| )qNx&Qi4G[#^+O1|n&JZmP(ʉ f1&w#n=Ǻl~\D:EOtz?>XQ~5W7r06#NJnrt,=(vۊ u;#>`Y7=@EW*{$L`{TcԚ93"#%f-fY&Fdp7=_:1XhQҗA|Բ[ou eINWX2(߲RFK: ߽Wl4y@MqWzrIP~x^QXaO`[`_~YY0r| [JX(w ю-2 H?+9VoSgL# !&< Z&\UY> 5m|gABC&eq˲[jyT~I|x7tTl9M,[qgE`\jU;G/ :ŝg;oC(#BvoT8(nh3ɪT$4v#|uQf$_ccGr#c` W;nB"g y+DdCR& HzjY9^~(3h=rkaAz*i?=_XKE ̣VY 0}p;UٔueBbtOo*IYw |WUR?NZ`; );M~הӹ=GF*p{vm̲Jfts9g&q6rl.U}WO\) 7&;3ښ\$zu4$?@?d@)ȟv[q&OR\ţⱑyߖRFGFrPu":C xs\I*.h}TWk5qҰE@>t5 晢޺+,)ݸs! r)O9(gQx([> t]U G9 7}G6թ`Z;ߺ7f+\/ ;H;9 ;Dߨhk @8lIٮ*OdLNt*ץuX 6Ԋ8F`s:Šm hxo[%K;8^IwP+y%pxӄ+btRU'&Fq]L4/[Y: FYbutW,dz v&Z kK<^1wX03.]&WZ?4kiA}x=Ļ/S 4:bfu77x.jN<_J{+NՖ)YLC~RKZ赚~qD2L_AcbL (?~yK=HcUA.\J(qr{NwHor O&`NǤ hP@Dn2H`܀zKr7^kk/+wRPx'_c#IZh4_?d@e/|рy 7ޣ;~-4:mpe>΃u1,Ct!͇i(8{nǣ4{n|PH eqX@A4^jyN6 Cۥl>?9 Zڦcr"ej/ DNwqZ΍ Zj 8bqm^WL(v7SGOt9>q4PllN&,œ/En4t|o6%Z3F۷9ˤgGhh+WqiBY7􍬯¾9hn;Cp2}j6l[rwIdGM7_|@KNWKjHíe+WٰNqf~qi|*8; s=Ej+D&a2@@_I΍5ӛ*4^GJ>{e޻ >Є8:O#vS@]8nB$&6EAvA8([z\RVC|lbBv[ߌogi /P麓Cװ`xJ7iEsWy X8v&eyǍlTt6mSkeKM98+<=i%{_vS+%7ͼߵalE-6@o&췪D. >fuPes*L^h /\N)p3 e~W,.bҨLj,6z@hx-h1`XL. 䎡<~~Tf P|j`զEˬ[\ `. HLw\.U'c4_*L??`\/7H] ?{ ?>% _N gHe>cŸ!4BOsNA/JRi*LbV$(BCס LlO;>oFa%vus-[[r! q0Q{_': |,N"7k6)HGHʠ2$YZ;gLI%<]s =0҆3tw!\Ýyxg7HҘg\bDƨ_ L!=b!RfUO;gh&,y;/<ZPUmK(HU{?k]wR \էt}reY6-YIu1B-[O0zJZ4GQF# _} @e7)glR3mɒizHigF_)*!3h!) %gXJKiOL%!&]6nPS9C+5O}n'J%o"x&89A gjzOpw7}W9 P҂S<t_y$] _O=jH#}Grfw$p 9Ql f#pM?jwq o_?d#zO 6.-aeVK%L;E{`T]T+Dn"aYHߡ=<$Ճ*s@]`3KÖu,w6<-Ps<*9bUK@;#$FCW"skd>,a%N ;t'eF#Dg=c&XIUQѐjVh}ϭOKQhF{" &&l7[#+c卍7. )% A Lk UR1K?4Z/o/@#0ZN5UάB ͬsx$:vȓL`>#ٍ8#sTQUmng (H[ا (º^ 6{f>~+x}l}%5h"ezq?W2 ,Ay`:{4CCL{~r9,a 0 !=UhɑTzk彂N:|?+EaPGG8.+N,Y{@cBƧl#1fl)^k(-fMX5Z>qJ նƢ8XPYtNLdJ` hzb.GZӠ%drI8ȡ ?fIaX}hr_>8+;UlzdlP :Bn1g ~zM+rv' >&8[/\ Π*ٯj ].1 m2>`q'| ># łx|An°ҽ$ 3Xɪ8pL?VxƩ HmnD 4f0`ڛH01#gY _ h8'6+ϴ{w܆uޒ N;[鷧z\k,eB%|Tq$яQ)P>IdJݽw9j37҈d ]Զ0Eso41iW3I,`9J NCLV{ v9$&JeN/F"JσAJ}z}yAo(fCH!6ʌ /,"lLFhqj5Nq iS[3kD'O8S%"L~1\H qp<}%TwVoj ̜=A ^8}Z_&cERqm y@N+iUi߿{C3 vtxJxó(:H8SG,%a jr+@3-M fTNNCM7f>[RAYHG )MS\ٺǑVkc;^hΫ5ds2aA7Lj44 z%i͑Aޘk#GV'[} :V xo`{-d&ݖE* ; ߓ^71~7ӯ~!lz!:y} +e 񢴃iFE#ybU/vak0)%dPYYyNu V5 ,hK$ì!V$F*BˉKΏبHFqؤ>LXs6fVD<'vIKSUWzFdhj f[l)”cg ‚w5]%kBu>Hq@MsSg謇N=hq,DBuةGt̼%\? Lo=8ⶤ΍P޼}u| І*(DX ):-Tt7߇])V7PȃEGqS ߍ@ n!n'cLr E=JJtHY'k&DPE+P\Чj_XS*/! [!~%q& *ޙw8r ՕXac(& f*я٤dy%%P(FPdYkq ,o"U;wt|1PxxVod,y qY1JkuL MNu+FܞM!~|hF'3{YW}|4džp`^'K.@ x8cJ0'`BU4&$tOIоh,Z&H<8 m2vM/+5su=/w){*JGcab]ؙ3uM_O;P7z]9VJMTmGjnW4+ۆ(҉-qǙ k#m '\lZl'cD–;rJ6mi?I;8jhdHa=";ʑJ +Kk[b6!Dch&4rt]5%+\Naũn uF UfTϜ;">' ɖMdk.KTTUenհQ ҆D9 m֨ D|u5z;7%Xc9|HѸ w}T8[Gs- ]QKnÑ@刃Mٷ;Ypt*!lcNƽJXkM4/FX\\ PŔ2tN9VSwE.՟'qCMіаήٲqŋ jynX%c=m \۠]=7+ Â2q(˫/#&EoH]]/{5 0*cHRZNY%zi )G:⹧|'0PQ/,CM-}=[ό8g$`tܒԢ7 1YcHc@]P$8hGU**rzoS,3ƩP]Y4iW,S'e3Dd b ۷&Hc`h+Voia\q N?(&fbTt~ HԶpNAEg`*[٥ym;/q02B_MHWΫ>2- k)vrF? 2#qҁ_+ݪ5]}^z!'㬳ϓ0Y=34b~ϬhwE+?; CZsS{0ӏ:$D8Ea[#cWnT?aa;Vu'YWm~#/h4ׄ[A- .lXOgLO?N~x%ZS^1hcrhQGVi얅cG4dUH)oϜ.fʹ Eyi@EuXm~و6g*ޘپ> 40׼uIǡ}~*ND* SS\Qu32ZL#8:=^چ{AMkiB-l< &\}|Ϯ"NV|$6 w3"6҂;_8!saw!BbyAGע_6)VY Ț7Xgu3exaJRѾjq4R}mdK[MгoNmFnfU:UƢ @]bOIo}JEWffiKk֗r|a="VK q4}hwL}~(6=]p^dU 7Fe4Ɠ/)w]b'?LS 7Y{ݵXj},%rB>'(t9YϠ-+a>ՃаN7U@'B!L/ o4fvt<1fP mv7 d] ܟ|X)k[-!vev{ QS+Hd!]> )V>GLƍ<ۈR<3/y"CaRNMD)Z:ǩ5W*`.ѡlJq_7gfH}뵌)q;fqsˮ*{& yO/-kT< ) %): 4 {5g<޻/-lǍI;g|O)ղ{O uf~"H")%%/X-d(b'= U{2e'l!V))ϪQFeXg;3}BRkaKb+'mXJ"|zTJyD$4`I&{,&e̛VBoOy\>aτK~BzM 9~UCeFxF*7wyk9NXCج kf\e|ݬ=KX`~ \yH0_ h5:2ɸ% w!DU}pҥɁ%03\!=Tg;d'Ix|;p:P",BYrMpMiSkS bxDCW=V\HV6"^/]/B-!.AFԿR2B؅)^cPc)k_2M2_IE9t[[ߦQ mwuVs|rp^(A־B- Z Hu!uգ]Гɦ!H<NDNI|]U?? 3F&>Ճaߍ^RG)d@CnZ~qj^$  bFD~QJ]{֦'^B%_䥽62ie 3 xZǩ[1^]E8r&. L-0+DLCL5"1׻Hds-`,,6 ϋ_x8:~"XrV}7n20Sn9:;X8AJz+qj$ @Tr( <̛E8|d6)SMʇ*'k*Cⲻw!t&3ZR}ur-Zp UjtY!ر6NAsϵo*CI/A1a4^rCJ3^e(醞YG 6"G-4Mn*'=HotZ=勯xض9 2#' . %{+^#]rPEGm(970.,{q><]m%aJRѪy ֚qRc9;,GS}}e}:!G;oA<2r421'BR05'Q\ WA^p k)]I0.@7:<1%m팤VJFK?xYR0(MT vQ^ LL>OZ)e7|{zЅ*l]`e3 c m ȓ_ҳ`(8$,LM]Ң- XCZ$&Q_< х=NkɍҩE%oK:!NEC>-U.Kv>]|xTOgv"ALZ|OusJB̕;eX,8wjV):5EIa'E9#6) _5c,r: gM ҵaw~ ׄa,rK?mfd5 ;z5a?YЍxȗkˀ_# Tr.Mrj&e"7u7ٍ^f7n5.%բ&F RA_VM"U`3x0MHFZ:$Ū|lyu9Qek'琱\TlZD3)2;9Ryk!k i5g20ZAlZyK@N|Ƒ -ޯڳY6tUO|B*aR~L6fa Lp(3dp|uZ 5P)pKҋ?.u-q[1,i%U{X5H-KU~Lڮv3 .ƊaHrrc{"ͰYMy"y%Uyw 8"CE5{!%PΏ2!kdGaɧY4SyZr^+գm99l 9YU:QC͈Iϙ.t0ywr8tQ E(9vs3{1 Y"/>B)ښ= T(^d%-y3vr]89 GAh<i iٕ@Bm/8}eE_J &.G7ԪU ]3dVlHˇSȢtҸÁ:5j[KRHO~#41M8:z2dՙ+kDQINE܎L*6H x`YKeü`NkW{d-['7sEp tw8h-QlDvkڰ*6x27tʂ7,rπh[ #uZ'G8?GJID˱ G“a]:%#DR|.q;YLۦ{wW@H9γ8L)>>tN퉤c#>fJm5o=2$]MҰU*%!)z|WNH=ߡIp󨼸R[qddWLn?hc0]?NN2ok]a㗥6!FįXbO^&fdj|?B,-r'?A3^ <&i,1s&j_ (h,~#0pzJyR Xȕ3QA6ϒև7Pf#=k3LlXZ:hB=TūCB*Ø鵃(AZyYG}ŐTG'Q,2)>oΫ\(R۪x96)jʖFvuˏk(&h,(z -ha ?w as M d3et`Eۺn߿7{eOˡߥ7+fK FXAYyr$2db5ߊ;i+,D ])8bXc*Kc/IWL)l3񢵓 .Q`Ar'D՝ =HUo/Jz!].Or$ehՌ nXdyŮf7 Hº6y l5jƜEpSg!qJT"5|ل!¹Qn2&so|,@Տ<|F8&͋.hڶACRxs5*Y[v9b)!DSH8 f`{6cTe,7J~FVxݟ=m$E'Iu t 6} cҫJeYYSa<-)BB c" Dck]OaYz02f:%Hx<|͠3'{S+7[xWFQ1%N$u3U6UXX~>8c*,Ps8K}}B%Y/K">>~It5.+}y= YLJjByp8ᢿزtyy#%#l6l21znp6`1 ژjezfJ#D~ڱZңA >.}F ~SGP?2zjxF/xYjHu`b Dcr̊3u&&(ն&kH;? BfF`Ŏ_5aCF4ظ?TnLԫ&) | &W6ԉ~ ˵ :k5Rc'N'ogHqMvnhdqOUW,;b%5LH"'G |5Uف蒫cJxabV5&_.756ش*t󣓫S נ@?bo0o16 pAYU#xF1 RL_0Ghc_tZ{.swV{ꙛ$ʌ=V`35D] ^c6tdH l "~$_]XR,A*E xqƉ/=-Sk$$F5|ֻ)89:m?3Y5@ni84s]'tO RW EtXXZKH̜&zrACoSbe ~ۧÃc–!Lm+ Rg)eT{fT[ %ɰf!Y2T?,=Z@vDM JONIs |TʏofydG4l 4%P*֐o|$0[B)Rb&xq$z܍S0^ FB kVɌh(GJ)dO\O.@I1ќ6Rs$ i{f's=[K؄[7C:cyyv\# LiiZY+cN.sʬJ7Ejr?#R+)dmo㚢m}qn-b;X省$*4K\6pu/*#0kzer22 nyk׷]u4Kms-K/7tg$b@AUrK'ޞTk!.`pD^Uq N9 %XAZIUKkYR>nˁÅW6m:tK2q5B[nv[UBXh{=WD4Tbۣ5Hȭ[EBK&d=t!ȳ5 8)ly6Q^u%4Q\ 㐗pSA0v\0rX$1'+{&jXwբ`'0\](ս?1X`[F$0fKӦ{fʣU,f^suAguuLt35ZK~IH'3FWB2͋0;I]-;$5!jY“Qj`#gFo`a;/ ŔEJ,"!BXԸc:e4>\h/^! !īFʆX[4ϦՓZ x#68%y~ 蟿v}gegK3IF扻a+ CS `Y9GUe!O,J&/>ױQZ遺ƒF(vQ4&>fp7h~]hb*E]TwQ&a sֈw4/mɂ-\ q}T2.FU` HGXkVY(vq*`c+%W-:dսP.> -S>]-`:eqļ)旭ူbSX8-Nm2hӼ悻 >߄q˗OyN%ۑޟ$fil=6Cf۰ z20 +" y#h4\1HmeW|J(Jφ9+w9X!aIEŜ3{nFTR`|<{pXb0)5ݯ5~na 3ǛLWher'3:]&jh D cT؝ƛ$NvPG_pEeF殫' U5/'uvmx|6g遅hMS-9Rf%,l1&d){zJ&łP"/)V}'OQS{ fGXU,\-*5|]"DAo&JfPw84i]jAVJ. dv2ɲˠfsy@JPU;_Y{ޢo!ά"XTNtUMkXY3K˶ [$Qɀ'|fKE{TTNV9}|zU2oȀmRWI$4^L+Uxi9\X6>X.6#9H1겘Q=^Ig ?Y--pk'1qlZ%8*$эNs2k[L\O' 1H* O/EO-sD!ygd-331klfuY-SUuьufz =X3D7qQdx`]G7c۠LA{I( x]5{o9$`X]5M< 1]0p3::z}'Ėn+~˭{sLo 86:xiӖIfuT5z 1tZ2/Ȝ5䏭Se#I,UyG[]D^@e\]ϧYfj f7!IS7Z;\)&FZ^2l?×2ݪὦ~ %trB/b?b6F}o)"!iߣs/C)W=ݯ f}Ѷ9XE4B-5ۊp{ʀ0ְ:j“yV9NCZ-._}`@?+y;˭PѡnkXbaF]-|VY9cYlNYuy8^تF؏{坛Qmʏs]JUa} @FH[v<1_`5xgQ'2rJ·cS ^(C l|s ƫ%*\+e%l"&KbH+`j7)O=mSX`nVQ܀NvZĸhN#f K|oРww d| ݉׼VfNB3d1fop;ߨY_@\ƜBh2}߿m)IKBݝe]&Uum7< ]Fо\?ZyTc _qqdB;Kyp%m?^ά"L3D4p"Bxqlx?(|PY~#s.,fxdgmh6&1r~Ra9եWv3Q5H؈6oJVa;a!$S\>z" s`>}14Q}/1Aڡ}plzbsgRd&TzV<[)֑4 4UNTxhs)5=QnsVQ1o~ x=iPLԏx%TKsLy]W۷wd+TH{2.)3ysZ"'6)k@''a%ϿHתĨIՎK87TNUFύ[ۃI͈gT E%#TrTo/x۩rdŘ-SO;Jt@v{tpR(wBAa/K?#N]fEZΘџEBy1 ͚S!%i;x6!Dtf rPD5r:1S0L2&ȹJ0u &ev-a׏uQbApn|C\yDU=HnBFzUg1jۄCG͗h [fuVtzB pB0/ꔒOU]"76dCȮ'b{}؞'MٽQ&ܣ֒x${|Hy\8)cHiE' 출>4 .;K yaH0Ee!a؀DHȌ (_hGUUkG,♝jZ_%,,wS+;?̢{xn`k^6QÞЎu.ճ~M/+҅rEgY.}Jn%5Ѕn(Q/;=.{2O ; du 0 3o1?㌂M9 (=J#ԃW&qr)/q=#\GAGF\RپjZݦ1͛'m.AG6u&vf{>702u3c,'ʀK.XDDG>5rtGN9rx`Ǖ(fP+Re+@E?MEVT0n^DvQyR2 h!6vۅƤ[Xv(4_\7d?+3UzVgLIǑp/:#\Lv)e&ll؛SuT폅>g<>QJj.]mz>[jAx3e} x51WDs؊{陖3;#L+pF7$SvvbҁaHWGz<C]\^߲6*[!*i{:hy /Jw ,x"mF`aǯIki7VWRֆN2I }E$7d47} $M](0\gl 9"mqxq7bbӕ`r˒PtM (pyeUM1,*ECobS "nzh򯳛m{*VKwds™CM+qJ ,:̾R+8 1B+K.ēa!_S{qHW0)4ӣ; 4i MRE)79m65jlJD8Q72jv2Q=Z B)&9 #^/2oG3QXA Ѐ p ~qPB,(]ºtE~Juadl}e-c)N⎔㌲)ſR"C'DX|@t2?C|0xU萖*c^y%wT{{*#ڬqo;{u8V- $YvͻN4#b6,W=1-AP2~&,a?,;{pg?|Gj;(+Rvq4_C XjO6UXFZLܑ,+0[9K.ͫK$=ӔOsX͵lx]b׻4 = Oz3SvW\nH|--$]|dn]-3؀%í2r7-aA ֯GFF'#_|!ܾAYkEub(U YU zMܥ0kHxi%n ]kGSC/B4w_+C({'c)L+b/J^5\u-5T=VeÛ.ŰW’EH<$E'¦nL2ʠf{z 0Qy29ʭh%|7t|zٸ\ӵ1p g,?WU׶x *'n"ONeS iCoĿ}s[ZOݗ`ݳ6|F_5 /*AH(" #Ysk b04k\Jxjl,P,i1v={0ڽ׌ vePRlgd "Pb^WiI &@Hȝ8g)_QK'j ] Q1x`0jHv@gp@Wv ]׬dxC JӅIޑiBseT4G!CM+w.Nz-$hI.,}o'*3˵LIQ6fj89hO4<\$=;tJƩek֌-W嫠>EzIWPp_!+pݎu>n~:gc* T$Ѐ)H}A{}u\}}{DUι7ؔ1u`İ'Pb. [}tBZ%zY\3W՞cˡu6+swVNHh*:Z7TmNբ 7U>=>7=rWv4]/趔kivFQA xt\CqJ4Z6e"Wg/Yͬ/ܕ0Ru6R&._ SB` {$N1ċ:;DohMߛmqC*2ǂ(OP_uuK;U>Wˀ,SԟzB F#aUX!xVlVi:~ǵVsGG PJذr)[5*Wk.xx~TU>b[9lbB00?Zݰ~\LNc~׈ p?1 saodοՅ}IuiL"ϙm>8WkC{_Hd-2>5f "#$MzX 4)^Z@rwBC9( ?2YZ4ZvgX~HJ"]\' ӅTvx/7&]-gZITs Ih,DD |A(Ӽ/1XFROK &/qɮX^)iDUĕD2*Qhm꽧\r@ OY"tO!❑]zKؖ:E50Y'aGWrHUMbnQ8y,~Qk}0O4牯ՙ.h-`DJSS84(OJ#6"ˉ k$ծ . XRMxj=-6d$7)X- {݉HB-9ɰ&?IږJI,~ ,E㸯aD/bEbD{0>O*\$ܡx"ϝCEcDTԖdrj/  FtYG.^aNV6{-/РI1 -ŰX{*cƴ[ƪkP%#TBXVȘzh/?HOckwJnB &om_@I}S]i~sO润iٓޱ􊋝%Dq)O͒* z ׸Ůac~j5miҲLv0Dz<ڸ>*r E/öWX"zD{鱶FN};n E::KrtSMU컅6xЁ!̼*H[Ydž%#Svew&>mxqpUXe"lQ>@mnk\zaIWӠfR3s & op"K3:᪭DHgsڅL_z;mGAEy<VRrūu2w^^2z;Y};!^RHݥ+֑fqۥ{4D](r5X,JQf"DZ7X>6a5pp ݼ-aCt|v6)Vhe9hȨBd*JdDw/:7j} >Ҕ\#&*ۊיִEKڄX!Pޏ-;|j6FTr8.n5amB[1,ss]Ldqs-@GfN X,Xď{WZdQ"e_:_ϸ_U0t$#LPw #n5B?\mǵ3T- 1B(]CC >D_+/3sOR(%8?~cSܱVCӽ>z2  $W Xu;Xq[ T~-Z#+?ް9DTār؃^KNH`1WGPzNQ]}&?ϩ'"q# J84O=s>툺~^qqWC_mMv$/H2Q1e^%+ϑfzoCP~ sID@ p ׶'m'=V[#%_QxNeYr]Zy CX”Tw Cq[wVɞTpWY$1N-{-U*z7O9+gWh0>$]DsA"T@7% 1[b^Ԁsb_akTGT˗xՠGr24b}&$ OE"(\[/k2HD@"'yUN" ˘ l.v, 4 x̥LJL"JBr ;Osp^n,5 =P2Z˰md]H4X7+"{-E 0L?\P)OBDqx%Vp]~aQK]fJhP\uƲU5< 'w,jD;q-[L*z}%I02!;D䷠rGHv~A-gO=`GYTbS§7Z[(rtց+cQ}bF'lHCns:BO-{Rj,VO"bQ 䖅 !WW:|ЕiexARURJ$Pt v/|;P"(؁$RH#.# OI640r_ q hhaPS ނ|)X(Of־TN5oMa`bB&tt9Z;=$dZfry0 9f#VJy^--}`˔ q̉JEn ׀ 0rԕ=ǺXȂ=ЈiDI~c{RLF})dB.%euu|0S^9\v |ߨ9_GH/-*ဣo:_; FcX;83l<(뫶s&OWFIj/GiR*~@DSv9ϖtiM9hV t[ȏjt&@7 Mg:ͺ~wV156I!Qpe$bJ Ym7uBA)/dU#*QQuE6Ѝ ݉R0i9͘fߐ,㏶we:='8ُJ p0>E o#YFàHȓ>z>3 |Ij[*'{ vgpa"͋ݣ~J=K_R~O3yO} 0"„f٨g0+^$9$Q~7aptujD̢et䜈?=˖ )Z*Ӕoz`U#pj>[9CU'o Jo{Y{ٍQ]8v@_bxQ•dd0-~>ׇBw<[|X$"˙cɎ!@FNST.^`[것Z#iL[e,(8@9GfϕF"|F뜂K#q7Ιeg] +,_؞mx0So%5sn6@&J(6U=nŦ~,ۮH.Y2ZQ\*!l`E,ny?\A̞. 0s[Į}y'pXTܧ I{0UC P߁ щL G Lz*MFͻh4SՃbVJ\'zGMuЫI-A7˅r qq S&r]G\ *w_." `7fD4e?* ]RazZۼ2!!a'z!Js@z} 8ۂmM9ȓHO|lLL ĸP qlfPvm42NX. f/NrFZKeYBE_i"8ـȁZT5:cTF# )m^1꧊wnGby$7 ɠU'lGaԮD:_!<34囗Wz d(2pW~?NJg8}A_ ^ u~3+;^W=wvʎV&˔#Q+f(cހ851FQڼq{cB`yڑ 4Ad؇:C>/wBYj!%7 XvoOs\68fW `0q[&X5Bsg{OuvJz-$4n;Fm7MQ}7yK?k*C?yA)HDMt{4TK Zԙaϯ80fr~P.}xjus'xOXv[kvh'#sV8N2Z;[1+a:dl8&;rh@V)ub" e.=)~X˜Cy[9)G΃W‘E _:/Y$RS9;ΒA!#S5KC8%r_[+g#FavFeqM\u@T mո0RvJ"ҷ,ge_*|d]& 凛NGݽGi}Vu8j?X9+FjR2hv[Ni !߬݊h&$0}׻ppbrV])t1]d͔g@夞Ɲ)wfvRYǭa|q-ĕXs._+,#yk(MKgJ l%^YUXo3 AF nuR=oB% X_e6-[<3~E|9Z+UTye)"'C#*4OOYj)yZ`NI 4RD$wx=dVV?Za9DZK_u9}k"!XU{Ҁҕ/jw- B[b 绡wWƧ蕦[^uU=|\+_\,Q1NaiHϮ"^ (1ň=ɶXc{G/}L5Ab֛V_8+*=u8L<^N^өdW7nOJR`?+,V@;FR.gzx' \Û,GnC,2f-یme: 0c_0U~226ǛBl88z }1w#Ĵ_Vivعf`mÓ{Fie l9> .stL :MQm vjn% M+HDžf+UOuyys~?Wvs* |ShI3Mp p{*qd%dA z|Lac&VO8,<:iר&&}p/?ζ 'IѰh7:iJ\i?f0hIVhR4 dcl,@IZLn/ۮLU OhQ8"QlJrBKC@w͘3YHk՜:!~o,~a`46V2ي1j/zR1_<)A95z",83zQ?V^?W:e$jp6@*)F1&CM~;lnnP^j~<%m4NEZ :Sm Z>ݧ`L6gጫP<$ [N]'Lz~3Ut FoД rl>\*',0ae!A_xrN?r '\I{|}gі%=ŸdLeoXPћw:XT?h}>ufBavL.-$Z Z}* uwFNI^j.f$4A9͓rKd)ˡ- ٪2-&nDߥeZ?;LkVk͉'(޲^<,@xգ(s0i_b{Xo}٢ʲ%-9y;, *\ۉ/z#J,o6H]pɋ[.\ 6o+$hqvTq!b=a)O|R*n4X3׎vA؉"SDx?gX}zAtU:G YEgŢ͘| +yF1hw'b- "<ѣiٝ#򏢑+M<9#W!;s;RB ED/kC`\Jg<<^/Vhm(kXlMdۣ}*9^@ f#nx3ܺ# dUIr<(3Hyﻊ`W'FwSY Rq@^քՓښW7q8swu%pDYGeަBy]]/ U v6?}! G6Iy=*s^Ut7ȮY;EI3I'ue[im\Nx\Ec-ǃpFM6trMgp,fEAY QYw1R-W%3+GҸ yK9! f}05>C 8K& 3h&5vѽ _KW%LRNZ9GEyh JÄg/@*7wEsMeyMi8x `ed (̊%<ĺ `s(DZ!Ђ?6WrtAf+ޞ}s\(&}'-[{)_<#%ZYE2E?0|nwlZ 5Bf`Vb٬!0do BNģOx0qj ߊ=k _diM0 )Th @AD(NLwWjIߪAd0WߞLe!ee~}B9ʹzaWES͸DǴy1s+UZd{kg`S.dę{-jt5-nϼ ? P^a- Ism_?񿋱agn |rDPgIG_#d^ QŠ?;jkP+9f6$wx%c7zzcŊ l?-2*E^^G2}gwT׼N1ՙ\>6~;/{_K3, f'Fe! Eq䖉G*~FRK4o { D3v {@@iknqV}}M;D!2Pw5EVC-~&I 颪S^ L-gף%KAp.7_ݥkl,9҂y |D?$xb䠅4ӺC5lPm&=$!Ugnű2ݼ,8]<)F~jH. l}qMV#=ٱBn|`msƼqP} 4G-~e|;vFѧ ^*WcD3 M% /r;`uf' '}@]1ANdiFl'^Ïw`|3|OCDgT_z* tY#j"SedQ VDvHυ;pEE4޺^D\SšݞywsLqyXJT;7 F@Y`9Xͷ$;ȶv-+x.]^mUgԪyD}_NK~ּU!IueBk_㲻8<i| E0 Y(ˌ 5j?KkAMxc\ /橍XBb yΓq^/} Sp ]*ZȸWC}am/D31ҳ}b:"/Lsu .s, 巃7Uzl-gca @x.C|Fݾ5;]XX!ؗmIj&9VU'aQRDU svKi<ݿg& uȫB^j ue`Ăˁo&}d Z7!@9XĆ"MtQRgU!/4{}uoK{\:C'A=*`7] mgT3Ɋt^ZoU>k8dE!;~\&}` . DN-~?}L~JHo%ljyoU+Qr!BolkX_wi'F)b ,_G׫=.3F޳'H1 zMm3)CAYomQY65JZ1zA_~W3=yǗuCVjs-[bAsd]iJO$6#a!R>Bdy&# 0#4ႷX_Є=I .T8+S9Wkk6,h ٩]^V ^ԫ<{ <'@4[L tq^#7#o&&SmhvaMCˣlG`rjLr}\Ѵ98 )W8i٫gN9n Acsdys'eN -vc`>Xs"C =:h𺚤Iz>5 72 ӦzAzc#IQBζ?Yf,ݨ m k3AZ_'Men$/1 ᝟ǡyZ%:;Z;"asU/.òxtA \,&7dh[~mk1 eq<%;I _8e,H5pl*`yn{}_[םY3GF QF\bMV9y&theP;{6 ~ %6   :.Dq&2R~fǙ¬N "+ @$Z~>i^P%~PA1ͨŸ;PfyYڝ* E>CBbpm?ݬY&7K)LfF,$ʠjJho\ le7 @ ׆K8E)Ge_uIT%dLMq_ʭxwUC]hh);fYI Fl$MRBH5A߲ShAPg2@psڬ:ۛ\wDT'] :D;Z!MBPJfoM/gRt78Vg"P]NΨF㠔V[\6QU9S5_ uvY%?>WIY=iUzԭFδ8ovCpRhZqcyQNoja-XS wPc,:cSR|Վc(VLF<ħ(PA;;n4wPD3A^z*/X> ž`.nq,D Q⥁Q/Z@9˜‰)n.s="eTy7^ _r0ashW [Zu#*Θ=M_03Mr0:X@'雘? %t٧ـD0dfu,Hh`HnW֮X$ +6Ü1hnn)JA7ec&cTDFGZ4Ou+!jzDalm39 ^Hu68 ~.iN11}]n5fu&e`L}U5> >JG%NZ|xy4K4.jtmyoZN-Dv^g k3][9$fY]={|Ԛx~o [HTJ' U=2eU[b 9u@Ӥ\ kA"Zuo]<܄ ^+˪A LQppGтH[66y\8g0yɫFtp.1 e0Lʼ9ڳE ě]`=) .a ȞLB WPnPK\= dډ}˞;Z &v*jF!d1WNdy:x˕}ԝCїlqR?{ؒw_ΝGP&ԻiI>CxS`OۍxTL6f_=}0ܳ:iuFz'O+XibyQ &nze>TQh(lmiu^VoW/-F #gF;R㽾F"= +[k\ ^М#ջX|хbzRdoꨉd+Z4Xr308  f fo}z;%qQYn Y]zЇpqΓ6?XpWE1hG_L>xyŝG`ek ?G­y)p(O Bf *Sc~cbxwZ?w@Og6.BERCnXR9,'bD5A0?gSA j^գ{m^V}~A{f.gL54?V 8[[<.`"TW6h*#BcBn/z#1ӱ*v=DYxW.߁x:XocuU5:0A~j[K)97\)8D&Lz$ʤ>Kgs* mDPD]v{%Q?w SO<~]CoF4Lu0B?:k$J[R 7ùh3+k"7+Jp-$qbƓ0t@t8@e J _d:LA3smS\*>BLoL#. +4=Y%h* sCVιX*uEsX  ]n83zK"|+PdMd#Z9cS;$+'}-O^r 3k|"rؚm7⋬̪Lq-9^ldH=8YH#` ./kذ^}9˙4͢:.+0'A8lޱ')&uK2n ED=@oZ $870$5>RƏG~I /MʉioQFux#}4!2`<|3O页 &y^-1(AC`=]ώgsJSmI=ʧOUw?|PM0+0r,L3W<%Fs2β } ZeJjSqt/DĈƝPNu>cBa US/XL;8zq|e<m7(<{^kt]͘lRmńD|#x.fO%)z"vXiEciTo_C5}E_ h9f<2uM{r 9'cdz4Ԩ0 WQÑ, &T/k^)ǿP9U[3JRՓ"J.B){'8Te恂r@~FdHΥ,EaĐf\.,(Dťh.qcKlYdš(74Q3|Q?Ѿ\yDw\q(>]g; WّGE.yHJ?dɕJ?U(Θa%$fXɒ ky9{68 ,ttR<,]v䅸> h'J.4x7aUBx*bTdtGޓ1%gZՅ8ݸ Y3U%/ۚ9_vlڥ|b4"/2u^D0DKvfj<k=4kՄyлe kȢk pfWZ]9U(u.ƋIT]Qٮ9t"_ l>^ cttu΋ߦjJ{ȱN1 D$Ai<2hOJDRE)rQ@^g2;zz`D?#Cce߫/^r8b :JBͱ%Pfٌ;fئ)%zdڸC?9_=kY 3[ȾI>҄h|/U$hp ˶0ct66WVZ2M[]Լ2+N~:I6zS*A 6شd=uĚf L,D[F^s@eQq9ج-wG]AXmE(1&Z7d4ٷdT>q۽0M]߰Y%ǰ:uRw,K=μ69'mp *X+&CHI_@[ cF=V?t{re\yq;UA'6U]6ϭkSNʖA#ZGնio/z 9,M͑dV(i m.>s/. )h {GEf1G䗨ʨ部=e+zJE,S%^ F u4/JȔ'W8|p`v{hJ 4ocmHUCx,0b[ 8pq}A$K.!w*pai,Klpϑ^ Ds{:R'A_}4Colgqq̛5ǹe+W%t}7y݂Y𛆝11;P gg{0["j畅{TDYj6k܁O:ZaHYjtmSK$8&~e[oؽy$e(aW7+ YS^W踳e߼ƥ"^p!|a^Be@!9^`O`n q)p0ZI s!b'z;Ic>"k_LX(CSLN9FDYDRG\UV؜GBigV}_DiϢQ>MP3Q $W8b%2^ w6!ݼY"_R6,tG'z^:F$5!k C/dbG52voD("獽FNydQ{>1o~^\RiT )RfV_b5[+E``Ǔh=,8*m0YVi1|۝dCcL5zFq$hNq\Aδ݈n B)?uݹY']_TãEKj0P;lW` k#*Noh,b]I"1]<]쳝kۜgVavn]5q`mOʹU Էټk¹k"C(b) hZv=uXබd?+ H Зu[4ej$AI/{ X/lUZSO71Y)e,ѷu!_-K /~~yFQDžDzUͱ;, Vtks$9q|%+Ќ'w.>[e^!箈՚6 |fR6oۤ` gz`uk n>)˜א<чZ.t4;R t?w}ݽx<a2/E1Ӣ'BR )vNnj/ChwE዁.. 64E~Nd& t'DVxh$}|Fk~LڢiBnE[]x4\(Xap ]hɮZL̋t  CZ<>Y8diwJB"c0!a?+g:>+4u^=*a% 'z-sx8ZKI#h$2_3<Aۛ0ɉs僸so+Z*0(_[= > a֡ "UtbоvF5K+Dч&kC;`YQwnI~].AV /EbNihMdkɑ=GڠM`T"B7޿C¯#jp}q{r ^R=uqy~z2->Y1ܑ(k4]0OgeqeCOР%5]#pj!ɥ  VL7oCm {1rw.<^-Ӯj&^W@5x236[aŅ: fVSk"V`W #\|*ʠ‚Ư~U1H=\e}NAsaц{N>u+Ŧo Yܷ"[pfGlx:rzlf:N㜕ɶQ@VR1~R<|.Pр%4>*]q`/XQoB1>!Sjše :=dkk VYVjvf <92Jk`rza/%"\+ף|/NTI7$i}` dOS$3gZWv茊CMl;YT緣8dŪZa4?QQv岴!T}03r0T֡HRE{ExXH1k]k~`TsKnqQ$NĉmGTY #'J$д5 5O/™/W2VD!ʙ?Z{(4oF!ΟqˉJAm>j(eݺ'W:}4ܻ ]\e2.-oeo(˺U,[rq;:ʻ^(<~ '?i$OrñGc}eݍpGV_Hßg`$ ://·m O=H|]0C%^u" (Ra/4),<+l8-|T(Rn@v2aY lu"JeB=oSu+O+ǥft[eh` [o۠Gg*,^PğI-o28Ȫ~|m+;-|1~_+NTs"2W3Dأc{MXMIΐzކ>ꀚrQ%?43cweiA͡H{Ith'ѐ2Il0S53*aQ><bQGsPsOU&$fx2o{ޥ7񝃨#\eZQgjgqiTtGvM]wFӭͶft]l<-@-dv*o+SUc,{k k_N)+_"8pgՆ]tl?L1cϷCI;@}cR:)YJ:LؘIֺkJQoTْ͈"TELBLso iDxsG|ի+ "Qm 6=od=j2'Q.r^ # hŖbJޑSQ5=DR.!9cN uNUL˪ZŲʇ# JQܐu3oC nn÷ (,fLUG9 ևeȌYLM,9Q*]s}n.cxAEqGIcҺλi(2ott bš˂ܔt8|čߔj K%>3abSDFAP8ۇ.F*~#匃AT+sp{Qx/1l7pr| QM"=,۰حtrBsIph a0cUA[f ]T3~bkG 2Og}ޫYE8Rx]a2{ >C Ić<%sms[]~?#H- *p}N@I7G &EAS々)!ve wO_x` ~#}LZRh7\?7&֧vߪ4X'ƎV G)`.E#~XFޢ 9 fi@zYƂ+e=]bX׌=vd( ,uBT~?$!1u"o̤ѥD%μ3~>wc.FlDIɠ~un8Sz@=st)Ƀֿp{i",瓤m@צwX0-q!Gw-xJQ+$D?V\5~hn"ó,p\]p`@Kb7Пp c\d'gXiU#Ocf.wBa+\[b 3Ryɢ~hᑜSOm0hSܜ3+@m6o 0[ 9 &,R'/sysW" 칉_"6ࢀES.q0IiϨ%!qBm!'VduF=AHu ݐDhePt dWZ Z2y^Sw>+0u #ƪ&%>^Uk3hDɓnngqc]l+gC8H̙~y-xZ۝Me>E\B4:&HJpзH!(?<., yBV^Oί- "@!vw2xݡPF Y]7'@ foo B9 w%;xsSAw=WQSbeXnʚ芵otok[-rB]bk1&KdaGq 7@"p6G -(\ʄ٭jęRP⯐w+|:O6%'T7a۳l΂6IV{⎄0VF써+'abFu=6ZBfMa4]ʲ<.}"ᨓӉX(_pۄa>ܧ6Lz8{S<@pi7my.LDZqC|ܬh ~E(Eu)hTJΣOO+>;N㡳B.*L4έ7(Td$aO}ak9@sF?Y Q.+s͆&憊 VA*Lo6Z7|zdDj}0>BR'(X6-UNYcxiE-Vךf`v#ipϧf''B\ķ[μ⻶:5jIV:m{JEC٤W~Щ]|cPmb[膿4%I6: 3yPc‡Z;2a6C}%Wu55/*A_Iğ9^f0@͉׺]uzGI7P]<ESi0S>egNҭᦸ*[T̽$>`ygŝCvk%RvjMX7<M˴AzA.O (QC}Sjc˯+,OJHp)䊬^=`"ޅ|)2:ܜȢ~lbmҼ) QC^:"3\(ǐLNà>[Y.Tȹ~*QVnf:,AOVcRbjhQcf!81#ϚA?7%+r8N*rB =:i5: 6Q[ay9ARC]ױ1WmAF {oQ&ǢcY1>ZV-o219ؓT|(KoRO-*XOGڛY{|֝ټuD i~ SI r۰W N lOaȺ2O B޻NB]ÛAs@Zu^$OcqD_lbS7 d~.挆ʌ :hHJQZ?`{:1{ED[ȉ@b s٧XA _Ie3ʫQmc_|Aq3 E%b?eN$QZ.$.m~u82nպPZ ZscnroXٛޱ2>/9m:$>Xe[j?S2ıLWkߎͮL}9X`S\'hګ&3= J+,Zչ~2Xu!,[t)2UYs b~XK\6aWҟ}׌*0 yВT tac2Ԕ5Jǒ`!Y C3^ @|qqk Z!֒xӏ:[H妃˩ j*%¨Q<\lI CX{!bhɡ 5d=gnrEI[~H&%֔C{n:BI7_;-=<9d]p",A6Gۊ!qJI*P(v?[xWϓڏ.BNTqJ?XmJkD6nBw p0%%,3/ﺒ2(x4F |pݽ,f2#7Zcڐ[J~yOr'lrp 5QSCatԛr%KLpanL\C5*@DVOSaN_]-7¨oҬ/݇܁\yczUAT7u9U`Z apD|ߟBhibp=a!wt~:q|ÕtHc9 ȵ{{1 y;>2ݴ#zDQJP{*gkLT}UNc ta[jV=wGW11hY$S*4@kԶ@\T])YnvLrqA"}.Jto/C *8J@^V+tKHԱ% P$4A+ŏf}CacZ}e{qU=:s=|=GąD/iqJ~h6Ak/%jZa)+ul(:!ƝKT9K}.մ_J9FKmwA28t+m>Vm!o$]}Af;=8Ul|z!E62t⥠4yaknMUo`3&?A$}x?ɨ8`=+jvC" KxU#4,S%TZGK6 pQ3y},s)&U4_AXJ]fCsb#B'"59]bp?9U;$4c_e=lUaPri3)]vftRH_ x\^l [g@Qקt2ULӗvPib M >1NW2e{,ioKN{HۼQ3NY/n5COQ@bKY]vV[H(f*G 2TKVzK5Y]Ay[;R>P!x7j$V&.:=*6-6"2:?:Lk x*똈s -#Gn4, :xE (UDοgbr:Hľ6iyvM”\QRq\Am\xF/MJ haNt2` 6v&og5?~(% b%ĖT_A?KBbQX5B;ILGۛ>Ա ڀ],4_ۗTh$fmlz` Ό>6aDN`ҋh:m{/XFtyN0U_aWS7}酫vMzb-7A '+!-N6 lGT͆xQke!s=m f@0X;zPR`I">2۴7dz^mpsd!)υL@([$я|t 9]x#4#?clMܨ XE\*cVxlm:;^eH)ivLNCȥPc Eh{ > EڌyZ2e)I;NTc\LNh- s75/l18]lvXce}Uwޙ 0pjҤ/&/F9m) kwQ^2Ʈf%_bܔak}V!8[uXEs̴%tԪ2G߁ v/YV0r@O1WIo?,p{J3 H~5} T }O9Kͧ6;c| ֏*2UJϖT%nZdsԱge*-Q_ZB|W[VXy`kvL"O4P_")usܚ-8$i=!}>^ *|T*m SnVmC+7a|W;lM ߂RNz,!6ʛ*,?=v+or};q %Go 0Չ(}XѪ|$蔞Z¶G)_XQ춁7ҥih50xÿcXl#:.]-Qfp^G5Xi)[8Y3mUW\EP*& 7L?ectH,;kAyՏ?PU" %+N&&&Ή>v$mEʰI>xWBQ c35wr !0bf6k}&,GcNׁBoN۩XRқ2PAa:Kq-T \0}2G6I?:CXjQ^Ȕ^f#!;P˗jp{ױro.\a&De+ r.yUXvkQeej5VѦ`J帺zG{1ĸSt4~JT9"sγF^uS))ˑ9KLcPR;}zFrJ^^vb L0FJZ[pRZ%dޡLN%@)DX;d/Vg}.<> Yڡ`Z,ON& 7Q).:68nRa[=^h&S{>ou:H.UaAomSc_r? Y] nґ7bJ: ʇK΋=vI'eROf jpC#k9sYef,wbHMt㾭̇d딏8̀$j}<]W/RGH>Y1nG GUGEڲܺ!9>Vݣy S%_ %DT3jzkSoM5q^hX8v! e2K+4]hѫ`=DɆxѐ^4K{:j<A#cRapv@M !0-}L]zZ_ I\8lg=lu7'h&" $`~7.WMLi-SSD+#;vMɩvmB#\]'(`{U?PbK>Lll@NL4wC(CF!c>\T~ D.Ŧ:y++9M`F۟) : NJZeK:LyЍ}r W%MWTY# H HMQ##P5e3rgѽƧ}K I3$#DwLp[fL DQ;4=m' e 4 YbπtmGΨ=2p>I*gbG6s G\C|xl}x<=){%ٸԼ<Ea{X> ^vIΫqk~7A[ xt?ga7FDƓ"cɠ*STftg9!He-A_ A 2IyDgI"Vy|$(&P~~IF1ZR)#!~*Ӈ볕%\#A F]YI[jZVP?MN4wZٱPwmRO/,췑$ҐjbȒoZ=cP F&ݝ;/~uUO-9O2 z8]gbXCřqĞieRݡp1͸Sti:)ۂK8 HUVFdB%>d$Mi&i1Yl4i_M-hcǩWC[sznR b츂0]T]SToLVzlV ~3^'[Xn [eƈ`"rl<4Buܽ,"ՅFb㨰٭]eX`Saۉm]l IQy=E"˫fDӽGd adg]I bYu;TM%^ aIƄaTϭ(~r=U;ك}fu$8! D6N1ҦeS47w |UoԌeP'(6=$ _:x쓗slS*7R uӮ0@d`ܲ^6ih,#=SpghbE!(W߷2S=2nږO'et#9u!E,TX2(B vDVY/QDv$)f'&e P^k|ך<eESx;t4aq KszFgioe;i٠ Efp\&  "JzءbR+8i&A!GF_P~ $'0sֽ&c>_e%MyE:F7)Q>7ft]ߡ~RGŜ]/3|?nUՎx$&?8 q9 ՗<ްd U6sZ]_3n E:4ke(6:݉ȂWPvM+%Pfš9.9=)֚^b<Șg߁0T(yLqs$ L_56_2dbt' Z Wv3u!CX X ut& sev>í&:?'KU;ⵒx@V:ṿpBdYIWՑ va(cu3KH=)okO~e<_O%BMꍥG|%tk`+s@]Ǿd0i? ˃غZ&*[3lL%!-d*J$5r TiXܳU(!o.s@[3D}Mx[ ][RG5 [1RaJ x_4̕)w=xO=M--n㡙D4 =wV鮂8kjޫD8J܄gGoe9 ~ $OrN\KD}2l\ &aJ0t 6IX!Ƭ.#A#I*}{>).|H8  т^4ZiM3 t9ry@ki6㍕ߔzr&|"Tҝ[#=c1ȼw?QoRc3>$GIY-\ClcΙ a8[B<6e#̐SoOJޣ3&blܷi&ITf_s$FKړ~hp X(V!wd 10M„(Ao?/JM|i+-,/"|%fXl_Hz#xw=Bv׋u|$p=8=BLk,-lD6eƚư.׳hyhSeV$(Dz!"z=Y2h,Ts֦6 ~Y5;d3na a$zoˢ@y) oa̡BZ\LAy[W_0kX W(lD7|9w# ooݵ+;UZ6]Y"y7ƵP\پ9.Ui;k0ijJ(/WRYşt)tI1KOch k9|Lf{k"e6X'olNO*."ӘC⏰sGG(cVp]c@%ٍbLH'G4=QD lK UƉ &g 7r arCG׳6AUsҿ@/2"|/%{iˬA/a[Y_1#&4:HWR?Z\3kB!x@f#LtuRj!bUN%T^ >[g?=_TN5c`s-,^qi*K&bj]([P&o+:~ҤhA;砱6Ǟ64K/;qyLw:7df~&2OGO@DgB{۲n}Bm({f<{ЉCWd DVϏ#BA:) xI~Rlfy%tQG!Ϡ8,QWP#.c%$ `d"kOuՑ,gO$4ɴja|,`ѱG_"XNLJj\j*cޒk d;ە! 7 $?U|NfK@@7z,5F &Xu,'s+ )!彶$c*u [`a6#wxn |,Ej Y0n@с(9œS ')8VA}^+~GˣC4RSPj⮇dLkݞ.;G1ds@w- h>GuL+|)owE_oMH4I;*!jp퀯Oz[ZêPȻ|- _M&2HFvqT֯X_? a;w i۔sn1d'J6wBr:C=cP=2XFI. KqŤThdv[|_I#؍W9;qN1qZ'_Ɨ`zZ;E1yό΍e']gr RX6ˡY4NգϠTnFPbd7u$𯽱!0r8HouYHD^'I!wʥ|:qɾxBV~h]P:hf,#cnڐFZ`0y?CpDDli8h"nQE 2p/I7OcHVEK#-؃_+hیYyל$@:s}JH<.u5}6!@ U?G187/*oS(n[jeǘI+æqQד{Y~Dix}_KB<): )AY-:m&M?-""{*PYOBiVKӜws%Zft\ )K>Z~_;A4[v$1+o*)ńJv!wB7Gyr E!-H̍ktZ0pA3QYH1[C<ٖX֞[E:^Nj\?L U)ju5دtjuڇ"e<;)FoTA݃-ybӡVD9뱇>W~; f9Wo_-s`QgGH HHVd#0fKR>7L+upFW#1-@@OZ멠#Q8P #`,\zB8jdk)nwR!>7Ql~hkw<9jRYZ#N (R4 {73-i*ƺ?~2-@]\ G'-iIRw8 Vӊ /gɩ kV̱o5i_ltș)auJ NqC _-K Y$ {%Zznum,[5,m"! w^AELeriOy0X.*|R'F/ȅ*DcdžļZ:'u;u(.LF3d#۰}E):C|ٌ[Mrul쎵1Yt;~_cF*0$C 0q#qX{#/=;|9oDqD8tшZQu&$uN &:uO34T RG:^Dy,y$dVK=;P, rVjF(:4 ^P2z; R4kh/ZzC8!H)óCe }7K rAr*@} 9Sx.%YCh߿ц f'b#t1(b~sVF(Ht8;UJyّdԀ15U\|9^CB|k~Y" $ :mĽB96~*=ZF_^pڄk\RM! ?T={ , W8=%Tc" !L՛UotR^P!hJtB0UН|̇Ff󊚑q(ža9D5#?*:sCS0`K4D,U=in]/ (8goaTX"uV8C&8a9S(2] !'aMMDy5 tIfkg6-$)G -GT8z7kZƭ *|akC;޽kphϱ 4EhB#{Et;Fop#A(pƛE9Hy7;W~3C^`t /M5KUx5--."p2z- xɩCkȰo>n,fzt-m|UJe *ze6Ԓi[2t g}W-sܣ}j. ˌW9j j Kcﵑ޸2ÜȢ1v5Ъ'QD"f9VkI5J}(5Rk2+rec*Y dl;kҾ`BmeF'{{]BW;\T>Tdj>Lk ;5(q/ʌOS^GaeFGxt¬d4G?4q2I~X . $) k>4xƦ m#rH$z>[OJ}* )[T&n)~jmiuH6K̆E$KͩuR%+{W-NgzѦD] D|k.^w5حԨjW.nf,Ѻ*U/|!F FnبOimitg@Zllts' CI~eg%l~ l1,aYMYh)v:G gaۍ\SzkH圧X܌Yg> !nJ㓠$up0ŰA WU`x$@5 g-yo:DS7Oi0[:=jX`o7J N7TpPĊ3lC:ω|k8 =C~^ub8hgŮ$0rgRbڦ2`W, sD7)qu[ӆ (7٢4+uWp>YTA@{1z| [a6?x-V~$q/=dl'Hx^6﻽>럇hP<"QsB~/lqug/6z5X0H̀!|@ ڨœƚP 8X86w,axȘ|i7NBc4E&TCBMK@F>j;O"v)X.Ye7- =X:;vu+Pa5AN2.J|׽z9 F ngzv#sٚ8ݙ%kDhN53DݼL|>« =]جr\:KCfXDp-2.-hQ{DbѝuN)$GD" k W_z}mGel1#dAZf,b:*Yo ֦\3#`=RqRpc < ciMQs+8"NyU1p!\HI}O mH@,cӬ@M+iKѓЅF{Tq!Moq T]c\ tzPX9)wW҅J%ڈr.K.ޱ[RB!ng), j﬋ilPwMUr&T. WJ?wͿC:=sM[& KQ0ڠ*z84!| g ;^^o2} ч"+9fVPILEh+/IE[¼߃ĹH-f5 JV!Q1Q`J+䢀-$brx)(ׅS煒Hi&o&i4vR(HGeCm>L T` ^ n[+>0,8}uC &FԵW/Xb!1'XF]ZQ 4AmpO$[u)vx{|Fַlfq{Wy7@?.EˢSy%p,Y@"PvtfD%>Ƹ.zM⻡3R5Zn}Y# >g EyU7#;lא@|x:eZM*"[Y1"623iA夨2RGH`^5 ˵RLHA 3=+ Mlܷi4$,Zawf,ĎY$=9g_JkP^KfB;2ua!sD.,4ͥRrG$QϕMTJȧU3蝨 ag+ *#wne麻?o '鏽iv4&(a#|mcwHA/a8GZ ұ%F-[+m^u1/ >:dtﮅI֔R>uC-+]\ doO/-?ڢ;n.߮>yV|V/ܼ=(bW-@"`-tO.8vPMpePVxc\X Qo'9J^R(&uYT-hLƎV?(27:3v9iՑ죿ܡ '#GӂϞ^[~j5)d6$< 1?~trb #TÓk]p2֭OPrC#-8{ 1F6)dujn߭]N]:%&ggh"]X $y4q9r zL4~I8$n=P=M&Yrx7 ]C4dp` A>Fy.E.z#P5KtWD@ofK)jGf?diΉU,Ƅ] ybH>TMs1c|< Mb^Efm~0aQd=2Ǘ\AY GY!^X,/ap etT"]Gµ]2fr!|X5PļeL )#?R IgL5zGb4j 7WΎ2MF1u+[Ȣ.>Ֆ&l~6Wo : i%UkWUf9*ToDFdw$m`tp4LBMXHfUDkT6XGߙ^-* LK}8[1/tsp,Y(M,غR3FYˑVgׂ8q>kc͸4Z"DKØpC¿_W% 21Z{y?Р%`H`UWx y MB~qUo;c?g N/аu\4EXlM~٧i*VA٣˕o撪0L*E LBeS*a~0!iYbw WLJlr DiH>eec&+;$az0YWbOqc{OPSȷDYHd~l4Ql8u݄HR%fɒ*sQ r$'GpspmH6g'ّ5h{C0Dh Ҝj!$j lZ?Cț򟕢Pf@iݔXڨ*ktA՘VE=E|U' zs+e3dSIMwL ZbA.yYWpg޴Ɉ:^!;rEZ-L`n-]Ir0Rs ;E҇QĬ$L!Y6cFG#f-25?anΩR들3.…HuזBIj-h: 9*1lI6Ec2eXSRW뉾ۣ0%ߪܶG>+4w3U,(E}|Q }&$&LA7|}ddo(|N YXvo2p$<|G'.TFI.ԩ&j5|gI~?lI1Bϐm k$+?dI&*N/F}zAo y@\Pqb^Y^[)8{jT2wc{@F y?z=_g̨JHFWe֘.;}%] 1_'JlC{|̉gl~dEj%ٛ;1}#&ш8UFcbXh+6MIw=2Gșq0JOpgӸ @$9Rc18M@D|ES\kDw4JYj!_s|/eyIGZ.qb mYsI Wvәwf 0{)"<--ja|(5Fu~Zbf>@ɯO=F}H FO+=?sY T2"׫<8yց'xGMUe9+OAƤ<PP \U6|B:D*cϨKz-p,&wB3ymUġr3[opIO,4Rⷯ%A~!s-A7Xr݁B<$2g-2w?#͉2Xs^LiA~9=N-"ϼ38/ǣ⿙كnK-N0S/k^:.QlJ~0B`Ch&~*Zk =_>zҮcxc )- |uR61-L?C[MpK*ݠg' }//u(.whAV1QxnYUTfcFx ~FOBm "E~}?9zȝ23'g_'1&3,sLh԰~lC40A56vGvPBڡi'e W`JUsא`6yCxj;M US2g {mjL%.DW {p4rBc7wulF@!]Os4G!IIkq;a;t(h yUb9b&;]9猵ba}F'_'  QK(C2 b!3:ߚ6 -VŬ)T@|W8i;mD8_5 GMT6@4U괄@ _LQɸ@WzGPoA00| q8ùoD\ rFNiP!WBd}ߔaHwҋZPbE[DDuTjX!~N: 8dc" ;Qs:4?]o|_"G! 36mJcbu0lx"V+c^0\GwhP51SFPdt]J/*g Kx"W"E5}WۈB3} v6dD%ړSWTx+FNy6S>j:Pa- rߕ/AjP"qƧL<2eE{[1qma tZ^rDSn ]6G2 eչywL}FSr$!E-j5 ޓxqޜ{ukmMD[;d$S^ޭ<^r30+NL8joe=Yf+:%ZX$%uP7uR\v `FJSs>`-a=Ip-MS,iJGx) 8dqYlYV.STIZJ#H聇ʖVwoS6mѥ9r@ƾ=}ǣiqw8<)-/6!o6<uѝ1ɾŕ>U ۠',mf*6 aZ(H! <pǪ|/n YC5$+x ]U s -ғm3dP<6:Aa6CSG  wZFa6R(fkAh؞ [ GI} JȪz>p8J:inzz2>th7^1OIE0͓I M撵ohO-BF,E*hoYer<cBGtOqT38EK7\6,(W7y9WK_V'MkQ~`M痢m3:edoXn0J#ln*ba¦u;Pa..@=TҲ-pu8` 9K}_d3;% 숷_c LS0ϐ2Lڐ,4>V9bQ@a8rv>Z&v,Br흝h-(Suxf=K=,tkE댎Ӕ/ro<,@ m,cw]&nO9k ݬ'(Zt70ʟ9=|h}SIݩY{}RmЖQP0G+ [w^0I>3L$0^I+4Iz ֧|m_e!9.Zhˆ-/c/\.1v]/_W[,&y=!e-\ekz>u;UUUVD5o<. %Hlѿ0f&rft*Uvb4*hL 88:x47o2raKz#Acw&uh̜%.ȘݖWeWչu@Q-LqW69T:T:Ou:pgScr}Mϣd ϩNH^vg/Hg\ąn-$|'!#e\fI~ܺx,hF^i ˥MF'yМVY[̡e7XX,h3vjƋf^s}V.* #P37IϙQD jҲv ˲sLrwu|Kq`X6pjAO8%: hiK 88!eb\3oMΡ)8;dHpũ|[c>߯ 3<(wE:^,Hw_Z "(ɍ zTbem$;D|De-c]&3E%8 C۠7Xr'iVʏf7M{⭋|gXV,Nux:4iORZ΍YZ'ѠਅzU @k)ZB(\s*N( Q˱ED@%NF2{9UPӯ SYA53Pv^M wuriC;kAHFUn" raSh#v*Ly+Epvms5PVyTa]('`@s6kNMK2OѼA6f,w]ȰT2ӭPwhX݌2:LfW1b 5``)g9|hYRe*cϘm70ZTHZ ;j'3[ 'iw'hüAVm2Иٿ2(dx;E4+)_N!8H;WοJ5J^XTK5~Q4%ӆzȭ~4[#f۽ҧ&'m9߼_gwʀRy7QoR9UYLBQ{ #6@ã'5KP -3|?WdL`4:I!XlDlNMn9]MvTL/, |_h1(3O߲*sc0r TŹ 7EYڌ#_4 i.6IDyBfr&^?άȓ R1RUy[E8]pV*R|] #[G$՛x iؘQ1$a;H#9W!oGHǪB||SCJ(imY8K2̇N|̔Qh<R@OL&4x.^^ZY/+Ӑfkk -Kvl(+sƝAA]oN\15O;a[o-#u%)o[0Z 15}bJ`خ/$xbI=o}TuTc3t2\&sk2;;Mys>s!0{! RPwyzN´jLsqW [\OϫvwhOE3єSHFMg,bbpz$VԱsfRtK'0p QE1kb8 4JC{yKw66闌qfb j&GrT)&깜ԅ㊅ݸ7b~0-3~*Mv%U \|t%4Z]U,_M8RXXϕB89!4]Q^ægs/^Q-H쨬R<;eCU %ATvL1ikkxJ3<:a/uYue9d ݆ ~=dɠE Ts켦1ΉΑI"05,]d>F鵔;?0@}$2.]vZ1E% |?BrM}>-[ a3 t>7 dJ.%גCB\{R"7gSl~K-0/|aؔrudhVC^E}J$SYt3`6kXJX10} +(nNYM͊$뇞υ`}RG('pK%'eiI-m9"ArQ<6L0.&pAw J: f]]q~@:d5~0KCy\~w[y!IJ<SgҮ(cJ$y ;02U~@<  ,aRnS2.rm|z_2~nd t[Fc 7'U2nՌl!*{劔9:J.o>-}r*:Y9 ](L7:?sQŦf@ßQ@5_< *aNsͻ ]|lm/B!2_/7*YtTW&7uLiL?~<+`,+ vfU۶i $d^xe&g$iSDn qfDI.B&M! {;D[E|AȍrONDOɡoG3d/&z{ؑ%v=K^%k;9PQ9=n@t&Ϻ82"$r6 YX}1U4QK/H㋭N(-|VWaRAo$=tJN\ĚA41>EU@DC²Եa1ک*z\'W/8?o| "%Nd'0`}P,l iGx C=>x?(MZk+JL#ƽ, {>X50SΞJ1^WwP&xV+獊ICi0NnFo(kX ;zjJ{+)ckS^m0!M4x 3ml4Ҹͅ%޽1dM7QpU?:pT}dMT(X\)>@!}J)#sL ЫZc, S8E"9t7jJ SFFbĽmI;wDyLÕ}n3ZȲ#S~Y F 7;D7궁vMII9MCVk-1>OXk>w_hvzk>9l{z0ǴtTBIܔF;pjbYa[ {DS KPa$Ӫ:ҥmMKm(P#6LGs%֡EcHgrEZQz=(>)3qHvX!MWY7x |tذ"J JnC"4Bc&As,`}6 A(^־/ˇٌRJ2xJr,mK#6ZlAJR^`Iݭ҈9tt-P|L[܈hY(_  ! ,;F]ۏOHěTs,3Z+߽Q~rE6> Jc9 7[Vviα! =4{IH /9ӭΦR:% dz;#4 L5Kw[,S VBisSh>t#L%E H}U0y*|ᕫ?2XewK~lsUdmv^}e\ٹ2`B]Tj \7ʲn)B6E'5JB5`6PaMʛNV~] c 3cN v|rH>s ,xl&nw&:iQ$4Ď_s.j-NG/- bĦxLS 1bLApV5O,kZQUF5rQD*ý: ܱENȲa{]w,+yͩǓM BZ >z߻G }01;I-2WNf  ~\Ȯ6Z2/H~k&1R~ViX9BewR#;zJ1q+O4W E`:e 1-+)]ca9ujoS Aޢ_cT0 $DH7=QF +u]P*v5c~&?iz3" 2c ז4gk!/^w$ \A)Uʖ':]AP| ]$' T¢51Je@K5Cˇ'7[z= s̜/]jbJ*P_/O,?d?? Th)O2^mhbI缠~%U.ʟ^M¿1 ?=5geq*o0,dq˙ܗA9@~6{6hwaN[23˹RA| a Z>xfK%B)#ĢDtCb TQe4i0VC8dhǎ {h(0\e^uq6ZՏ(/B]_q}H!^k*S(JL.aN'`b^X?k-L(fO1* u/r"!E &^2[E<إnF_ rXO\C ~[\yB[Ӈj@Nb N EB+R&r4Hx(7ϯ{ȒHyOIu986' WuF+d~[RW@}CɓKsjkR0FV&z92g^._v㸽3o'-csFVc$xyqKpa Ծ#.@8eBzpy@M aXu U{)*|zpfF:fx?P_q Joe5?B^e1d_?>b,;)" .VPSpZ~$j˩˩KE,.D埇 Ieڝ^)t/// D۹3wb{n^m$yš2u`lpKeK8^v':,>a#JdB;žӫJ痝]>䡔uF-ă>q-2v_jhx_7PL{Ox_qh5?\JpDvOؙ7ع11h)/Gm)6/^כΥY  컁<:l ' K(SEOxpd4ns;șs?C*s$W Iy unD_,C#Y~YL@:k|d쁉ѱ`US~5CRiu V816!-?ܴ1: ^$W |Mc>T]}DkEPeoux5媌cꍇ+b(3Y0|uRZ-q.ύL:Y͋ o<* hz"JB`*.7Aߠ֭@?RO5G;̵U/ܤX`vڹ#%$4d9Fg4>tAN'] Y={ hhv`"<ÂPu%В8w:UrjM ֬BX[=K# zఀۂ"֥@xw u[U\EԃA+Fse I{M_FC.+cA۪ɰBF|K 1`E-$/|q]>VcQ\{.N&6>5 qMX7'LƣDKrAȠ dmn6dm$xf{@ʕ◧Uㆺzt 2 WÍBٖ BXE^p<[7lj`k$4\BrZ> `5TT=7zѮ$/}A^kUIPD)k wR72 n![Tg>k&>T]׶C`q#%3-HDت!' ʲwcnޅT68փ1W4 z؅BwoRTh>fd35Էj? QERIvyϮBݪ3R=Fxsh t;jaSpRIr=CG(VrLtɵJ>n|-7U@<+#=t4P(nj5I]7d|{3ԬzpCbNty? ,N1j >QsFf;FK]]4y1@ ?\;zh܅-+S'_\,/ti,L>O4XL;]sͲ[zWG d|/-E/oJF%?BU{C5> SfJ H9{h*8,X *L;$6M΀Ngp&~ nL6ʎk,+ظO fϝ*zyCĬuTv y.Hf, TuDӺzojwZ i"J>m R\P'g%Hq?ďx89?W*=E=}qduۋpB!RSjnjR?MR\r(kA #w9*>#e` qĿCp<pØKk`۩gM7BdoF.璈v\v{⺰7[  I*'܆)Vi9\ 15BADQLpxv[A7h& }"ӷh3:iך,v\? ìxrFY,8E op+>PT+cs@"Α=+j({?*ús]I(UtBY@ϙ}VѕEŚ$$;+a/d4-ćr_:W{R&$L7})l'8C ^uX MW+]^w҅_QzMAdj$i+"S JptQemu:?Ysc|>ygN 3sCa%W`W`5 0 md< /d@cQkJ]B_!B4xQV'bƏԜw[UR\&8iX1 j~ѴlPE$(weR)<^P yX eYi *c+JtAv>M;IbgTL$<~AEΆ)I&Cd@d8l V : z[Ӳ#jHY6\P5 <;ED)0Z#,T6R7!)jy+=_/7z 킯ltcyu>p]: C˱u¾πltZ.j@KQ/*vKީ5k5+wo+ew 2L%v:pe)(r}1Q$I rpܗ#mAw0஑ytli`ka?#Z`*["@Hو P\4QHXh D 5.<=Hw쨫kpȶ9\q{per2~Z}MOv9PvA Y"&x情.B$)"X3xWGGg =g O85Ư0<iA"KAyVhoKfmc19[|M${FL/~]$ŇzĶtf́f́B}4&ne^R<ͫmɆ rONJV"aLX1EʙcNQOqhkB$HyyWGR)T08-dewf-fF!rbLG aPߙp [%5?}*Ņ*a@ dr,lv&Oyf~0Xl5y9c  ~=v%)oik~e^vD"hx * .\c ֯C'Z%4@auxV>nn`b}KSŒ0RjgGKP hg_kŒSPgap/wY {ԡ]N|TEFbcT!:rF2<'+ՖJ+'UXV,DEhӶ>qJՈwߚ:rf3_Zu^ViPDåER偢'OZ[{ôeK7QG/P?;›$Oz2\#DžƒՇ $0=it2dڇt5~t?PI M8VeDk6аGjv"EKSHL"OCAI{/[T{0>0kA!|eOO(.ߥ<,t]2.;=! b^}9z}$lgcN4Rhgbj/~"1Y&$qar÷(tZ0$@!7 wzxNWW]y;}0Py&#Ԏ^QW]kh|ޣp 2!o%9TLdO3 (i5=~E x7O(@`t@ɏRQ{O$}]L,<H8/=ǖ2d'"r(ڹ 59oV"׹Ku<4RS #i~ 0b=̛w%,fNޔO-蝮̙@cî )ęO~4gcXA{qkK#ݰjZ=d&y_,ɨH;| :T)ڑ,䁚Nx|@S:1Wo/++&Ixva,SwP; )SH>:̥q) I 1,BR=MQs,ovAX.v&U迕NdSZij0T8K8‰5߳ȿ빲/#ئx0.RdAC%wE&_lXWFzrSH#דe(Wi-=Kaf}%G_sњg1A-*FCc LZ7Wё&`m q.^YtzdZ@*jC` % ̻?8Amǖ䑐2|Hft~ x0C}]γ)Öq-A[bZ4#j`!%ك=uHӦR~ObN]zOm:>8-:{T_o|09=cfv^mGgIN~(.P* %9@-jągMW顾+w/.h[ 6ͅW+Y5 Ul7V-Oƒ #pl]ly\N{8}J .zVT*A#Z 7ྺfHcQj C5g9]7HrVbYOm9z`a\ (X;#p;OV/p:T=& |O e۲u߻:>!"ບ,>txS#`4U!04&qY<6.o$쨞Kcju>%oX_,zgs^P8y`H_ѝHNɩKX"E`NN#Qys}]Lx(+_VSav#W3fő)8~BRҨ!]^aި̜ *7aCNیk/ ^-Rzi$nNښ)0U}l W+P4 ޳>"f􎒢jҼ󀨸sŗrCR4-ji\~nBj( M"ɖ3jqZﰮ:2)rL]̭l;t\I$ޤv}D*RLX'ʉ-:Jp@%Ei2t2de I?kSKJm4鐧}Pn[R>ptjehIVv竰WPYqrj'I#_'xc.垊F͜q D8*I84͍ΈAo1k.j,28Dr`1BsʼnYdнnoyŌAGI{ L`}RIuEv}Ʋ͘ ['ByBe&|yV8K _n>vj63 2V(z `!c^شnFWN=ƦZ90{(-IL|R+:z"j Gd`S߳x$GYH=}дha݋IHY*Z@_ "[%";vݗ4}Rfi%du=0] Fp]qu=jv;B>3Bl1Q?w4ZFEs =T|!$ =B,#SVS M,82%)JTMHQ/QB(LT O/TJ&X+Ql{_4mI~Ck,'[FMZYsW7@¾;0<_cq -$E-Wojc>;:ؓ <|EdefȑGt@{BH]% "3NN%d%ȕ: I"(Fay^R j8Mڪuu-2$Z1N\$ &UϏhߵخ#Amoa5c3K^ CWzChuD[݄BKdD#sfE{Ĺ5" y* (!k8gB*tf9\Je`TX:Oml50B@t%״ETz:?\p٧>+8K}@0u?"|RHuU?X/hc8)iZA>qx9$)ե΍XY1Wcorf]ZD"۟mFё{t $;AFd<4QJ6# bmt[ծIMgj}|{ζj|~JPsAj [إa&p*ĵM[?gteămf-е=-^RRS/ ě's N$/>XXZ}'̛ #QaRvє&d#Y3 Y]>mBl;b)LvoOjȆSpvrKAgimM%[ц>[AZ2eu%5@NH)^}&ö6$LiC=֟RuUOn:B*}Ja(.0 #&o&ʑr?h~͍# Da獤|(wipFzξp\@uuwHݻvu)uWL]#\N'nDž̤UvWN\!F""@gTSv J+(huW:ڿ9܊K8agek"?X QY}ğghYSqNcUrkYQ :SR 2c+m(`A T 7e2GPU鞲 1 cn]nO:7K[W QXMkKS x$50tjTD$\`:jj5`$L{;i30[yE<6鑾 1fv\uFۺƆ?J6 BΟmҌDo8UGnJ"Jw :8J8ٞ\vt7' a˙;eϸBy{D=ԻNFJXc!P*Ļ!!J_eߵ-}Z zio& v1aY`xw1J(oo޼⯞L22>:Y\hIEOh1E.?vDž~7>XBa#]c+B SpCP+2>_}c#a EŎkx:![9gxS@A @Mzl~Y&;`g GwۂYR4& px16&+d^Q %e #':yByó!G(e@[J7oeN>:Y@1e89J?CsG E+2*8a;ݵ}aBYi50Ѝ+<3F5!'b zDXbMo0uaaEmwlAi8e pmIiڲj#$rE|ŦT <~f(8ȴRj a[zI{UШU;ܵ`8puLH`WՖYYC@:pv}/ZaDֆ|``R7!]&Rυ :W1GI|B]S /8i=p7Dz*=}ǨzNCw0/2J-3AFhm,*lm-R xV)5qw.oV՗VM}C$#yуQwfeU d ]4YSJjA»`.6NFR&'Sq[LTf?P/xIj2n" o*+Cl_! O3u"Fq"ۿV%PX pǡK8FSKYd@ Tx  սs6{%[1ka&=VAͫsA;s{eLK~soǬفNrSyOSGл,]W[vӤ"u:QiM[ ޜ۶t&mhcUiI]ihPbgt %- gjS 6 ~.TmW?]6-\~<"caj ^TVQF2yRCq!̳ ،tӌCoSYKp[Y43#t /^nImmŏӪp[br>{cOQ {!_9_{3H+6cpz5~3`@.+pU)$ 9l Խo^XPkCrBM! (<)u;V(*qU@垎򺟾8Q!mL H d({:@9چ!T+!"8B^}̆ .fزT7 q@~+ko'`H%rչeZg)G5!K"H9.cY/Q$r@W1'f.5͵xn6@ѻh68,"Fӑ!6xy F$"S^{EKqqT©^ODKWUJJ *O0BHx2 ϶5lE\x"OkB.E|eز驪z-${Po)xc)#mwY.KgU2郎^%Z$+^!<|9h sELLVkQ ?S\fm<1:bՀn*FigM#m !d5cն8,ldC/\}ިukW>JmC>T E0M|Tc,}cٿ[Ɛ[6pWa4~"WpşwkLG !I8iv7LL=ܷGp\, ~.dUl8n_Gxh1STJuI,ɢ_-‰dX1 v{S\pNqP8ى(* q`qG7_;e+ajl$TKFȆ}PIh#ߡ]?P<0&,̐q7'I'4۪Ztc0$#Ȱf[Չ2I¹q;A8xyRl S|oW)Jv]x򟬆J-#P=&jknƨюMJKmT>}?>MA9>rsxds!XO-}fYȻ$*뜱! է ⡱l-Tg<ߣF0S-F6]=y"LԹi7齺 $@OBn$}$ԣ״F?`hy,^y_𺈈k:Si,Bcu?@L.nsF OE&4!,'k'[ǿ#f+ "Aꯝ ̍Vsi$JNgA9=&A`C!B:(IŁ^8P=U<}} 8e5Zh2;~ J&nb~!dS5Dƀl;k̫KV )Ca7ğإ4j ,K|/$&_./<*ȕQ|3;sE4ZȝkOaY)C(chܼ$?6˲}n5<}؏p_ݩw[&9(Y0-Gn4Th'&,{{"ԇGdMpm+](Ԛ9h±g-ц!AuTn ;T="4:q lq "MGE?-Sf/#`N'm ),e3[qrljL(Ĥ2T 'EI7QB~,}~pU]Iɦ@& tp:.XñpT{}$p~-+fI7 7) ϳq~Ӫ ^` k5'(|HSkM`Xly]LۈP2fi\wr{U#dw'fN6(XЕ7g,&SiukBM_K.+wftVr Au&L1MMe *!?BlEmRmǰʟ/j% >)C`2sR–gTCP~?#>^^ݯێCCM2"1zrpEy.JR (5!QKr>|0LFgZRd$>qd$yvd|YBjƒROډԷqx#B 1RH:oNff :*+@\/z!LAdɀzt' 68\0cE6covB,a|PY uu|? _/PBNz@ۮ^H Ivs%2bOU#'ݶ7tiz L <1sTY͓݃Ff_[~;~ W>0Jvk@ 8OtU%M]z1[:$֗wǩ_>]1?L\7f/Uz2b@,+ %&{ ( S,pba/;1$a&{=go-\46.HcvD,gȊ90/9ư#'oy"Z* I;B:c}g׺Wn &|Sn־!yJ_){8oePf:<jX_UIjR⌤jg6C Z &k}"7:&&Hy@gjd$7u*gGhpB٧UcU(aIv}Lz\i{]gXF (nMVTG'!"Kۄgv3},AGCO Pf fQY1. ;Ǭ)gLU62JbMWN@:lZ.UA_"q\7\Pz8"[{yЛ%\:;m%s)^d獩)0ݪ&Q=Q2|u(90J@ѽڌ2B=A\|>󼓳h TSEQFSr{Z9i!_?$[ڎK g oFZ2k%R n+h|:im4 r{_+@hzBLYwdx= mlo =k+jULG߭mAXƶwλŏ;95D{[ҿXbh?J@#K ~XJ$U0XbTU9==T tL h]SgBf'iǷ-6uX]q*l \=.0}G!%ީ+BoھMpn ”vxr-7S^`GlPc:Bli/.@=DnKc풌?3ep1I}#A{zNܗy)M\fGXpV'SO&}BǠ*^\$aIn^"QBk&2+Læv^vgoB[ORR{IC5\$[?.'[`&TNG ;ҕ: 2v 9\_˥cWJ咁%_[G,5 =Q^YjHz/ĝjQ6(K[~/JmA6tc`v6 j'IQۺSC]/Dup%520?zлjmNBKUHZ*YhJƃ-L( >x dΉE-kiGh7;'cauL&xDc؎+JNCd&RVF+B@{Kiq dOܡ,79\*hG(LKt\?`9 :9ѷxH3Z݃JּnŜMiݤ:2otK!ǑeAPw7ST %(A͢7/մQz_ء5AϯJ+I2&#Z&r!Vn*h!2.Y3$"ϺCYؿr?TB(*m3V pD{r9IrBVWW~F0@5iRUi\̺=CkMAgT&'#׍i El["Q)xFB@~mL%~IP ];)wZ $W@P yR0i[fֳ (*SYRPӇ#%~+EAY%,={ϱI[bE|hK}%q_we)]OлG>G_\:hbx@5@^J4O{_2<D*G6~Gvă ʳU< tkoJxꌹa= D4SZI*0=H CJMJ4s\\F+͜>to՛5wjXt@O(-lNyn\FCé=A'XG}WErREMߙ'? 38@"".˒Ap+5nnQ*Ln| &# dqf|9AeBR6;~TX >"-`lAYI{+=JƋjY(>@bo).#.P Rr03ϘXcO9iQ^ k<,H$8>XpѽV S& |N'K%'3We)Q+-jD,!Ol h;| (^vP"hVݰI lO,$6sZ~6Ԏ˩xr_MD4%['R:kې3#ⵄs*s/*|Xs9 GşINE:O8 Ӧ0AvMԓiXذe9>rtW j6L EkԳ_ޑ;2QnJӟ|Mү3!>Ds±_sld,}{`IF!vcxQ@Dm&z=ͭ.,$J7x\ܸ]XLn$j[L|0`6y@S@˭y 7)ph QHlwgvGyz"$A9id{DYyѣ7 YFN}ዚsd#T:!!1(=/YYn k-ع0Dhf#F>3ϬSze̺W -6f%u u#9F WVBWǑx #|q`)Zʡ;@!M* 6rҳ $ 84yȸ*FڸK. P f1A]]⋈ShKv(>x1ѻHtrJyuꓭ6=w/.pgj)ҟn6ߪ~_Ӣ2 fxc][|fHVg F..)"<{"K t `v_I:a#el=ui?AR6'\)7%J{Kʞ38= _]2LnЅ&3uuqE N Dk.X//v j<'|j{-a@l@wsvأ=Dh5ÓB6` >i9?I??Cޭr #j)\gKmك0[6?#@gXVw![ Ͼ06 v?-r iҫ^e'QIOк`FUe(i(34\N7wFDbtM'sY9g=Ώ3}( mVⱆv fPK̿Nsn>2mvIԁaICf할/g?2mJ9y vEp0ŏŝѠ(rZCSH\Wsܑ)Bt7z|w}m q#xL`1J8wޭبuBU-N+o2pGpxkEXOdJʷQ V 8AڊQ zHDϒO){+If7'yL 5t)M1u/UӼU9%e~̮N}g|R(oCX9rG6y7KT*d۫z@04r?gQ ;VxS5%%m0 .5}ލ3 ځQ`(⟻mCe.g)}@ZEԣ`8z%$$/oI S Blm#>V`/%x|oF}3!?m` L?vOG< {*9nigS+:=m8?n24 1"`YEzvZa]5K3xv SEE_ psq@XՎ5 {e>_r<"7kh#z+hg#6Gc@pB~ENvZb.{:P5N 9fc2oG9s}04RouT`6xt¤崌Π$4M?ÜjqRLG*䃋)=) q nxXHqyZ]/&`'$\ E{bgZQiTwPMsHyKݪ5{RRv0YKwkx>AQ 4t_e"bPlc UL8D|$*e5D]tCnjPG1I^>U5BQn(Ű^HM>c@W cGLUq UIhY0dzB_tiҢD]mN$Ѹ_=ٝ \(S_'QokmxW8nDԿK}vh|@ߐΰ4?͉ $Mդ]صϻQ&1vXfǥKD"O(%fiXEe48 sUٌxJ4BZZ"Ծoni\tWLywbC$0CoXtt["5n⥦y f|0߬yM))wKT?2bRY-Xw$~#q+໎0&C!!tNK++bq|ӑ Hk Q"Lc,`@@) n)vk17# }/ne\],YdIpGOTȖ|IZMQ[y f;[QK,ux w2PCGɢiX.4c^cU%Zw=:@`lBE")TQV{Nd M\/%q>@2G0Qm62/!W(Dhb;GGF_ &={yH-v:TGE4LFZڵԯޛc#n잷t~[ ùJ\ŷ_1Bq 4@8mWeD5Jƿ I0o^Gx8fQ%B|}m0hJ>Y ? = AS՛xBo6tě{>roE_KsSmW2cV 8.9$(!DL4gpEהXɭ{ lGxXl 93 pG3; Ȩ˻XaSz*1G}?]o%fHQ3vd w2ʽK+?5j(uӆG7*P Ձ]s=|&,TUgzm~3^Q\Nh`1+\{xJ ¢t%sU脃U0Rk FH<)MA^:ݒ,1&Plh/'{xg/Zgշ3n*SJ/}Qq]x4ĝE V_: yXXj(KL"dg' أmOGJPv "%㑶gǯOCƷ5EERHk)X dʘVԏyT2 ,U s`o]$[}§q\S7ݧlY[T7`eÑ=Η^h:Љ=| 'b/QY-䑾O>rn iЗe9b[tX2@8!,,ɪZG}B3 =x/x \1G_i(6gE*C*3d'cȆ)E?x=@ gf+~~2ŏ*`ӳUЈ1A۵"qTA<>8&o0eet*nMCq}]}@6. NF/FW}C5 }+X&v9n 4ڷ*{iHajcCDPp;X,$ Ms_;o;uc?Uֱ PLL.ƌ/7T;P *~M![^Hlf{q53U8 kVe:!A>2$_1֑7C*Isu$s7+,,κÕиmH:.6"o{4:2FT*{aAԴ5âFZ]5<f[#Wwl'NtpțzrO}i9 x@0U7E܀#64:ssNq`:yl}Sl.w ߒBVe Jyu+xMDܝY,l(]\dm!j'f :˄۸q߹ c$zRLιx?Q;a;iĺ-/6#WA !WZqh$ZJu]&ԻE~p26 (")a)f]zrJMm3/Ri$W8wy}UXQ?B(Yc( 4t:">~ĥCoi~?b/ 4>^c[D0s(uj`؅K& .1aW<<&t}[_,Ga^g/ϔIy)юbBT]v+ ʰ[AKK(0!fkJu~d"t7hIm!-ej\A6 0w VJa!wzq鄢j\dT3)!eX8\Iu?ܒihN#Мc<Q#`*#S95V8cp,[X&(kX^~j#FLQ =2BHH:2aJ%pXae=-S8?U7fwN$ӟ ,4Aoۑ)a37OT M5qa*e{yGdn("gs?GYhj8)uv"` 9(63i_p!QMeTF٢q{CBmyO BwK>M:]|9LZhblxu/c}вݔl dI':45|h=GsD0o*GKd ŷ\ ECG@1guVrl;>UQ6ED^5㺴om7\vZZCq%p$*x!XyW{Fu{ `:b{/ 4EBt] Pd_}A.Bw^uxJ9ocx yUWZrg]-Nͥ`&rh2S% ;7 R [tMؓ?v~r Gϙ*(xbjPKBؖQVc%php-w=,S3bmtr婯N @q9hh 4pӅ4l'=>8ݡ3Fm"cF~.CkyK] d܉z-p!||)C"\W?fҘ0&Z毻t\@uH8`гcbw>籶NW4kr2(90 h<BFuarmr+?g"#It V9Mʒ6V,|x xxr뮈)dVg,{aIfFإ"Yӱ礉A <4բoG9DHR^z$557bB"*Ṁgd΅МEhqaQ (nqi'Йr00j0Ӯ4M_nSsJbN}>JvG3DZ]wx꣤QJ_*xZ0E{)AmI}(YLkgq;M6hGT95$*st (3- dw2g ~76nN3Kfۍ{oU;9b Vaξ"* njv'̙C){<6Bk/t:xF12> 387VE\ΐahӝǞmJF6w`LZĨ-u0eY7e]OcMRRU!~m.pyyvL/O[ÛF:OMQL݇'džUz`0 Y%V뚒WQs%BF9ӑ9Eb룀G]'P3૟?ZBg>"[SCξDeAL8qti{D8QY_Gݰo…9)=A;U=*+Kr(fKFx~)U{2ϗGY)O`=|Nfxױd%hmQJZt-US0Mbeĉh`wvB<*0[9GxY +RĿ+*OVGY0z!DlW4\ENX?D[P!8Rީ)kjKjAQֽduAI5`K2T/~CanVP!zI9p :QL#IA$#Z[LLa a5CE_M,X9ig̀^Z9.8`dJzXV k|s[:Vg\Uxn륒{Ko5#j.wpn)q+J1H#+m#9e&sNdԂC7791A,~2Tߩ4ݽ$zՀ;%ӛ=i 9NfTC=HW7֞E_Z:?m0ޔ V_Q7juS0qc8^$#oh;2Yu3%R:#:℞tW]aq 7'_`':mrVݱ#(TmWMo9{NVd>%C#$=0ݾ >k\>!DO<  wxM&!xRJZN}ӷn3m `!*?e=J:EGq=JW22:c@gj|%Lt"wj=H ??wO#6[$zw7'|IJ 8 3ya>`Í_,"&unbe7w7{f|1/ .E}#'Ol자 wˣ V21/fhzh csWA-Ru6iMì ?l-<*OV]i qǘ\N'w!CA:$8Fk0:q`҅9bH b613+ť<7]lt5@PZ\]gVΌ`6GSm@)u5sHJ mOwg.〟2\DjF17,՗ɶ@KYGr8eR c"ſ?3M-ω%k:p5y\ [R#n93k*z?sE(o 1]ek4 Zf&sf>و1WJVV.;^xb@Ѭ?)/Hw4IhQ)I]٫2չ>l6]cPb]b84.ObC}8'dGJ͏6]*WҀNsA)ǽ5+ a@3Ȫh,=|o^To!ЮutZcst5j/b'{)*na2,$dUFFDڢaƓs<R`:SڿAƠġ'Uz-R4HU4fvНKMt"lB': -.[pg~З5}CYs^1hu%_0 i11?ř7撝@°R@k|ı"0_P@~~"шwԴ #5m$nE{C MRV\j<v|•^q[L4N@xX>2 Q/5f*(0v{AVʂnd8&:5gI:p~o_cZ۠#J~M V:R޶e IڤqYֹ#RfBNP]]zh~'m )] q>1ڋjόo5 J9Se8pw3̴̀^I$3[% aYL^CITdQdLTA?bΦSsd[DʘD %q)$NRXWz:$n1wQ_\vTܚq4g>D%w_~f Oo6[+B(9 JI|۱R%P'UJ ]RfHjs Ԟ/8#?Q{@v.ײfQÆ BެH5&.<F9i [ԁ},L.7!#ZOTw+!YV;{.2Lw\Ǔ aGVEo N.ӨQ>2b>~}J\hKeġ~ϯ􃲡p<c(&;(NP֚HGV]?V;Ӣ'|UTb*~X ̆΄#X˿2]|:3~׸|KC|/DÂyDbx Ĥ,~mk@.aRXy0&: .(LE5q}QٱǨp%Z浣5u.׃szsL@E>]* I#>;goŮzr! e,QM$i`}h9H̟<@ny^(Gv^H(zoy"\ToE/z*}T 3D #? uT{^,N v2p%D0JQ\ӎBX9 B·9R4_szGŇ,*FU=EـL7 2 843>EgvE"@e ޲"[_[ vfW+gq!L9w3 2uy&rmBI*4`zq$ NCa٣rI'P2&EG v]o>U@NQc(rR̦'#[KuBکtH«9?өkvt Fv𶌦]#b]\2B͍0HB^Z{1%ibҡqT@[Qf]+7slWNA"$%wzBLo;_j؞ZV?0ȿD1Тz<՚bu j:HXm3f \.8ƗyMw0g.$ ڂ@Χ^r|ic#Q[*dݒ;*T.1}֞|}buCjFFcMQzUy*_g(- ڒ (_z|ABX!Izz{ox?Cr UI?43YaA=f)(KľC9z T]V~bܹڙvB_/SoȅaCHf1/]a6_ s&LԔT=I0My}rp~楁LFRL jxhԾMߝĝ'kw`{"A$_\-Ÿ<ΚyRbCy!g#oAߤ+ɔęC*&̃Z0%D5^b6V㳯,9b\ѿљI\o,0a?3L}kULC/ ,%B*>;t"1)CM؃5Ru9V`~9zC1/9xzԩarBK''-@  ,@9#A]հWo0M\YP-WqE@@C7D/K|ޣ掍Rϵ)%3,iU|m>`G@]eS(Erp^l#/!.=rR(2bo+ĕ;?ΈA EBV}0ͺr߾[ J֝Lk 5d' UB={J㢊UN90m@'%C~~z`$N Ðr ka8q ok01U S-6UW.C*ZC١ÌI-{yDBⓢX\QDR{`SM^و*P}~z"3G H/z6A"N ݘt '.j&sƊOkp@ޢwu r^yAUTCdJ?VZ~|rMA,p}Jjhp$x@sU4@&B=JzQIs82ē(0s *=_g_cF4D ܉qt M! &NTcWduDDAsC̅hC_%i7]A2Lwѐ VY_.1VURIZ|';y'씇C?Cp^)TƑAV|\_Z{g|Z)ۋZoKPϪдTjNFhUsJߔ uSmBPQ =0puy~JEJMk&"i F. nJx3lBBS%g@X79]x5.mVd}n.Sx ˸\ޚzzX|QDAdinkp7bWH+S&(|8XGz1k.2Lw59 mH#Vź`ņ:e sJM wez1K-?upmc8B c0:R&LܙO""Y|`[&gr^Sz>G =z/6§Oh%n;YF$SWqyr(rNoeOsZR }Y1S~%A"_lJDc9/Q̊1HqICka |.7G['G۾NE`r>Lԛ PT1*SVJx3E_9Ɠԁ7BD'|O5jR i&\vc~2)5 .2anUm'o0NdʷJR#їG4(-Ǽ|2V<-P!ij*<y9OPG f'H0ð H*oIHmxi'|(ԁwZV;L K?L 3:.;bH`ڷ5CgƧq -'=7O +!ǩGS9mQ/Skݬ,0CO2Q$}ZdžytDٍ꥗x`wѮ^rւe{+&mug;,*8Gߝmcd9xکuF"լ:zD =1R"o:.9Iټ=Z[E[Cѐṫ5@a 6,@ ;#VhôxoMǿ519|)˗"TmF /H w';B^/=fLNݴ-n; w 6wu.ƾ!pkM]m]~?*kcSv(QEJRJ+:V@Hkc4!oi 7= DO<]]3;'iD8)N\It_dIV-^:֩_?Hى01,\,]e$dEBN5`#A`-;Go[& T=y+JM0^ʥ:uZl0`\q؁跙j1o֑KB򽑆+xaFQe_ Tbg8%@@qLNZ qrJ1:7Y n<[uF&NJ2 >KbqgHˊ`Mo"@d 7ҷ(F . qnpS 8-'a%f!YĽhp9`U/.7Xc_=Vk 1[GfxP[ݦ[3x7Ņ/=G>An"nTZ% ׁL΋ROA.̉}X_b)~ЄwƊcKkE0:vPWjPnd8  ^n&$-1vPH*;ןyѾibo%ܻ>ٴQ>sQ``F7 dv xdb900ӑS ™vrL̅![32ЃsQX4f[Edԕ]^fXvXP=4*0Y /ڏsOoW ƞ a>'2a?m};1H(r3S0L5`+BF 1h; &AO$ZUiN,rMwhg)qL.TjfIM8!Xٶٰx$%n?&9Lڐ]O6 N_с9k6Tfhuu,7UQBhTvhc!1F ̔p]8 *lTEE[XԃZB/)]^?bB[1$~ BgIbX)<ΦhrZ2q&.Čf |TO)wͦ5&P3@t\f݉[ j*TtsljZd7|!|̦'CySp?`|Q; 7m}U1H V``WҬ}bC5ᅅ>^%FL'޸)Z'Gb ig OEQթ센 weO֫mdrwDR @}tf(j\ͺI sJUh`l"4J=sxVTS ֔twabBCO:dZvƷ4bkm%=O-3,HFm0B"  ԣc0jjd# -S#s6lqVTEM5&RX_cD'-SHa./~S@79ۂד|X⮆ŔG'>4/-{E=<< Y慆tje"U>GnjQVP{c=zw_)Xy & )7gEAJ;oNQ"E:9Y&h.H^<_|*E./ Ժǘ0LZ=( NPi>tnva9!Sg,ҟ#`g%w1\;_:+.!L4+`%2W,z.V^V]7;s FXOVႱ7Ő/V¨pRo䚆!rj|2׽Gjnz0 jS+ǹ"7wi`|Dw! u1tsV}BOyIhVF@cr:73[Q0,#e.55z›GWRQ)Oi{$jZ!glHLVX$Ñ痪"ҪCVa?+T?3̤禽apA54s)PFE>`l%U9%N=[7%"g'-Rf_xTv Aü(ӏ1WdħKP@F_!'fahX;a}YW8K!/v[`4#%ikqb|in&j :gk9T^sjVtxil. PMa.>\L~-eWU(AE' 0OHyeDP2vJ݀]˜/ ':%zsTIrQ !6|1?6Ż0BJ}\Pg\ :^;0cZk7F{%s3AmFפlA@˧kIy$[^Vy6USsM_&fg{ 6mhB'b5m?I C? ٤K鱜u,,!&[`7*hE::! G_;_|9 V o=.-hCˌ/ 7C߯oֺ!pkcޮa6L+N` 9v.f%zk+t`pu4=[5a%d4!!SNGٛw:"oVcg]OJ_(xf fwbNvPb2vr]I,KAӿe{AoVYQu{B-ĕ9=1@;Ԉ(b2#kT1)[*!U/byN z2tFbۇ D43UxNi)Aq[-e-3J2N5䮽?I?evAjY*I2@ ;V'T-_w9,EˈjfnԷu,Bx;XL: hac@\) Xgdɰ6'ٍ< 2IZ+ ds2ѻ8q;Kgj]&jZ;ar<^Ǻu&vu$ 1(B! $R :%Ϻe~\2F"LS*dڠh4ϞK|@΄Q\IMƭ+I |W)z9Z(W4_ڊ\)rݠ1\Pq0ZseyB7BAm- fF$n.J.DqdWLy0B_G dǴi;HmD{Q|ލ\y-#,A'.Nmg BjĢ~'d r#%P\&)A}x]Xsi[U\ϵɐ E]""k5Q"'1Lbk/,yTiM @%r_ւy1KR۔$h`IϞoI#BxoNt$\KIc ;%"8E%:oB'Er7wsh]qG?$e&ڿ8U2,Pc{u2|ќ|I~Lټ+C`Vfq&L[pnyfd5eS9dTcDRL{)`ހS3zeWDL n&&ô>k')\vkͥ˲@n)ilA4gf#Q Lsq#ȿA4:"?uߦ;w.lAsmd]aE"KB@)W:| rC7||%ެ͡3WZI몷Zuۻ<ĎExqX;l͗fZw5heM[ߨ7k`..2d*åNx(i0⦎c^?X fe?ML(GLL(cg0䅒 @T'4wENH hK8~j5k4/OjkbX`9h<Ʌ_rcpj>4Z={H Zm_3pb # Ι0!hL &UD 54y@:b0=XS[vVV(%* ֘WM-3 h抻Q9dl0wO%7?QoA_'ru80c>[̪3)kGy\6FPj cޒV>x8@^&ov~avZd y[vtq!$Z?=I5 ůն&j&z;NAz!ƞ{C /` cW,#t鮓GЏI`E&M-4-2SV\9~%8Le*GMBnuzEڂ$_hZw~͘mp^1n;1М|n @"`Y,f)V5cX""~8$np?ʪ]YmSZp,N:{q~ṙ՚VshE|(jIloG2o޵wcOzB^@30_^sF"s˫GO]7Rt( Lt8 bz(8ZWv" =/goX X F}l9s|~Ã.&0DZĿOrukMu^EB9pr}f0"eC誽mفU#o#M_6lρXL dR.ck2)$j4e9SA9#HQEW~+,lc\KMW_a}uV^vxL **…r\=m.`yϨ"a9/(̥C]vba?CF'EU/\?dg[ڽ"/ÀZ[=wmz+1hؑK.zm[ T#[`DY̓Cl++h4_пKlQx##7ڝ5?]c;0.v3@F1VrBvLGfNy>TYC_^Pnҏ;NBE>;%vA3F$1JiݰAvw ;OmPoW.5. \ McQ2آO}!kF1(TQO>fnij-K =>vI"|}+tS? 6I]P(Nb"~q~pVؐN /FTwzpR_0q`|V"~ၥOJ9Nn5awt#’(/1):'UȲX>ς7ˢEy'|x1WEA]{]'~H3WUc aw}ؓP)5ڱ1r-&m+mMHqmDRzd\$Oû4 )s-+`\{}eG0_Rl-йFCՒCȥg!%LK18]pIH[5+MfWFIyW~y!ZVwtey=0|(OOS`(*hn3~}Y3Ane W 4AYjշ.)Ph"#[<EZϑpk0es0g _\p o%Ҭܪmo-=pa$Lfܾr$WfM9I Gwf (?ia Bn RZ (TN8fڄ;%ө`}xZ~'QmTGh 8j`f&+No*Ӆss i;B=;f6/:ynRr;1fQ'Ҽym>GH(6GJT޲B`B63X1GqKVXkG 2 fMHxpAjӑVcTZuؕiMoឡ--H-V<V,ԤU gG/\}!DorG@R5}nRHSH3΢s uIڭPQr/<}qg}dӌf%H轜wx0 \zUnc<Bc$[g;̛SFoNAP'];Y*,:rr%u7Ez 0P \\v)$k6"ZS(< o=;S 2A=.11\8PВIVPAB%E2Heox)͡)֧Jy=V b's7j MA51N>"yEN =aXYqNɥ+.F55g r0UZo"b;Ӗe{N>n/$xkCtĭ. nhK9?Mx$յS!0 _??e)o; Y[1)2I7k=\{*- fg+2Y3}! d Q.iמ8)-41k), WpF'=#6Q2 'fQ(8武Fۊt{hZIQy#5Ŭ,Tj?0y fOٮ q4]!M0N)>HVJE1P֜d[{ߒc+kWP楍3ֹYmK˶DLOTHj e@31BPf 64< oY5niNc &V*E=0(b=P>U:6/=!!lɫXS(ҺVe^ۢwck qѷKVMM@MgUz(l}ҦF=r%S{Ht JÛk(#-OILQtݮ[~6HBMc=L_]LH󷱶Xs΀n2I#QvaܦBס+Y2BQoz-$ݩy[3bDe,jh@E!gͶ%`OQ<^Ki!k*u+neƠT@x)s:!ksʛ)s(E,'_a`0QyY6ֈXumOH,L*veM?y\K_BP}{#U|:Hl^cw0=hz3·?-y+3=-G oaS+_d6#R#[lmJXI&m}kNb1I iD l;W_tSF*$7C-ה?x):EeAcI?tvJ>VfWRgX(20:~`eb yxh~R/YdQe&7b*,>\ x|*MU=AX?.l_),O'1cĵ]yc)5Om:3¥ö %cfOlSdRş?TaDvE{͛z0afoKa6G,843ù_/vg+S o٨I֒!(岥;Nu/vܾl MJAIL}qPMGA)DW1 s?7/ҖIoSq'(燥 J7l%0v;[ֵ(ӲVo€~;A{5{)mRgqNAu:?R&k0zfVݞ~r4-/Y*Fl`TZ sek;Ç-XB#Mv+UO1sBpfôo'S͠n;RA1gFTIƥ]7 *g.,@^`]:M`"mjaGy{@^܊ Wu>BۇtR8qyU(3L#zF-lcOve>0ԫC+ĠhW~.>T jZL?z_riY%x4 9d9hH.[aڙ2U@Х)._$P2tr|UQ vJYe[69!<Ã|>)Ɠ?$#0K"É믳SY\ \i*z({&r]aj,M}BrL},Tx3>Hǽq6&Hg/ DTixҮ=T2 W{8|gvzp8ߜY6=UY"RHXݓQ2~lW123-0FE &:PYHP Ơ|^*-?o=,_"u4󼉺{#W+`!.v0.Ҳ '"{Fxx4/<3(N}Nw֛3#8˭{_HTs~A.d5˒zXMf1mդ)bW{` xa~3?n$uWv%e/]م%@wi̭ @E^xH+3>BD?7}xEv-w32]6A0De5*:$R Ϯaμ3N4Zk&gc8~.pX%_垡a3dal[Paĥ>;"ىKRV7idc)گ8MV X杩Lu R(O o#ǘ i=UZ'!ڔh@>pjd(a{*\xq=\\UG+rV/?86dy:62l8W=s$_ l%y3C|F6LEpHɵjw)&o`h`IRne4ʋIk>[XRe"ٚ5&qpDJ桛:U-zθ@$/Y6\s 6ʽ1Soxc} mU F(& i;}l*ATc&_f+4M$m4ةGh%wSJp2z3pϨR.7ͣ, Iz8/J ֐`=KJ0Ռɲ36.@!⧘y`uDEo͘0l)_JDs/tdRQIy65c 23eQ AHd/*O 8OT!Qnj%X|Ml2fcpȦzyJqrV`zo|,83]芷B%Pńx1\vUh!L~ei6U(ocC'nCגp#vRy$pg t~P6qg%N.zp!4gL78s'ܐy)11w$يƤc$8;6@` dh-w7g ^M/Us(')nPkd31gc$+%J^o"O Aה(*{9 ֛Ze/WZU?I'i+؆3 uC&e8렺Z)If[qSl3٭ 6l_ Tw v'n7 *ۚ 5/E)!)4?xsIh*{gRc":cp_lg] |h=iqqgu@. 48ťHXlqNM9S=GH!~CYh{؎]Tv Q=yh#p9+Vn qGςe ьcCW"[ *׳AZ3w$eay,1jbXSgő!ك"GX2fԔ}1MX案UUaR֜C)R:V̊[?+(,~sk4G|>Le0md}-Z.D+n=6$7 `JfϾX!W i6 :bWDddNm/UFEDj (氽q)lEge6o}5>IM=!XSS64UKד|UNAu+[w%Aysji([^l6$~T01F߻L"Uz”;/.HsrO^u \lYXkÿm 8oFb- ּK\vq"AuUDNW:yDTz+Ջq̚%,qs[Qb^År]!M]st= 9GH2A1.{9/?渐m 1iԿ`/U({Dдš=n !Њk{ >?gMa% s3,y/쉯"t5'c=vFNy82ϖ8uk.O,d'.=F tiPSR"8aG/:ҐSFP]e\P^|V!!cI]]cbzujCw=?vKH.c#WE4&FTC0mkash_6puX4؜Kih #u>Iˑ-/W [;9;12ޒZ#~ @$h|!> KG;\e4dMiFZ@lJsi#;Xl*+w:YF)_hsKJ8WgA Mv*C&vT+11P升&BH9E'E}. UrA DVXI:UGJYavZF#;s*56Ί&t5['!eUagx clQM+ӫB7$@'㧴M˸!uL/R졔ASEZ"YG}{李-6~b3G`o`?:Lx12ޓ9%Mgwd r1,lF{x|-['BhUT;-eAaI2& R KoTKU =e*M暨|[zHᡉ Ha䀘 \6`$B'0G3s~? 6g"TJ2{_e$sbz]5du!xK$Mnϴ@ h)m1X9)Ce@:s@l.ʼn^[f@ϧl 'H&O@NcE*t+,UZ4]"!H@zJw]N9}'jʐ.CgpګAM˥ClYPy< t@F[՗on 0xͣ8=84vEQjLS\T+w(ۑ'Cuͫ{PEҾ[*̓Tuw.gD~&5GZF`ΓOf%N?&y5]1J=Z6%5sm4mxkT  0[9{ mJK sčՅ%BVұ+V7ՃqXWiGzz*% :Ϋzmg(&rt>VȈ=K ?% y$Qt (Zwi{uws{׾=ET|;"Otd|U+;J{92SCS0{&І/ߩ8Ðsu\d-ftag, >{v,Շ‹q@~+rߕeu˘Udn)ůc gylPQfi&oaotq!AYPNΚ҄mW4$ݙ(pnZaVV*K {b{p~vƖo3%KzؕP77 4XѺQsGjL nx.q`6B ,r"K-Ƙ󳫊I(B'\Okb/ld>kKM`Z̟P}E8a-$$,V{mPʆU>bY?& !7][l=FʳS|A(~a d*8ӵњWmfE\)WcDG6U0aWjlיYVN崧yrnU@!tF  >bOqJe_ ^cX\xuXEF۩+f%M~Arw0"mZaӌ@и8SQe)\-G*~p47,i%E/yRC,T_h0g˧k`O0ED֦N%X `>֞*e%(G8*Oً#V1ݽv\3JIM\or6ز0cf'sJtXGЩ Sk%~{#"+Q -gGm^ ];G~<@c °8{T~!ygE:~m|C%Ba)FHgAtJ_ RdYشmʎ#3]k$!>{YVConub-)ڝ7n |1dP]GĝR䰞Eؑ$Ĕ`ᘉs{7 bGrB "FJ^M+w2ql﯁Vy:5cz&{fҝj 9M ͈E"65pQCerH|L ,HNdQ[[Q^J^DчռJ 'QT>\*N?j ԏJ5`}%kOu. u|c ԓt M-:)VJ`"$;ӻ_>uªPͬqzvQ^ӰOUNw|@sGQÀ:R2pFCUsh H)Lk":;D ckvkzlާJ ☃ #\*p2a0 l3I"!ƉxIl+RMsەSOHJfzL.a͕k`Ja)) /iF[Vs؇Go騕 [Dv?%2oߠUҬ}/_`XPOcjʁ#jζiٯqqɰl/`HTӠ$6}RX$n YRbӉK™2}S5d8lvbMqTE˄bqn L!mC$UDn(~J[QfI 0@mk@G=Q P98͍$2wjGQ6ZNn_!855sڋ|Ҏuy$ ImM:ۜg6 1;*?4c~syLAOCʸ-L! /eTl\;[Np*{laX$i;BYJ,=:O'C7qLCBmC\?Lfw`j,nth˴5t=|u[aozEİ8 ܂\1gG 9$voP`6z:_4?ATdMc`%PKQ5xv޳q5 2n.?~6~%0}&4s2yWvo=Pq&l!9 Fn&xtUR yKfF o_,;3// R2Y,>'0aϋ؏w,ۜl0#*'pDK<rYdq|&9On&8|RhcÕiwcJ<+Kr sA LEb~ 2></9fnӄRث(⓪3]Bi t1!*gXz;8ÞS i5]bfޓIqݻ07Vg4nB_%y)('oN90=tדm͚U*Fg*j!i}TiM8'S%hS:)\Y!S%f4QɰO:z =m}CWk< DS§;- 0PcӀ\$Zux$BAוJ"MҴoJ\kkɗ}󯮒/xFS<t*#$׹00Ƹ0KP,Bzć^VXt-HrX9-_uC2Fix@ `vgYˏRb @&M=sSe#/@31.sP>+8KUam^PJJד`t(PqNo#CI{C#K7Y6 Ra&.O'$爞E+j/E'axqʝ ]I,AgFR9N 6Pg#]ȑPy 4 5s  obך~XM8Oz@#fXNp &I$vbr=o;57*rm!l2@\S$WL>w+8L)p*ȻklKWi29N Ĭq.q#^!Zi:#YSؾO6 u~+UlhqWP~*2be,1[m4\}Б+dFÚi uY(TFt1ͱ`xه@p175䯎Wf60>00CpFtMdk0 o]5V 4ِwqR/XʌQܫEO7b%~TJX,T( aY=Zbc |\6`&F?rZmf~Wf"|]mz⃲}_8Ѡy^(E1`,h*w/Gm q!݉m39~B-i;J1^>)\閽:U7 w`D8w=[ⓒfrU81<%Κqy3 HUvOPq[ foEw*%,?_иq.lRxU&OG#Z4| 0[q!]JuRӝЄhSMm׏DtHh1K jߏpl\Ի;'ՙ1P('M~ȒNA"XqD#T@<}o5e6 i[~kOPo֒6mukԿ̾/9%xغ. ;6$K`fqL"(M&'(;O6ʽR,z, zv|)?aVZ\0t'6de/׎5G!:d(zQ)"95fpuK37˜=[.lQs{VLՔVƈ+I1Iz;)K>!f׍44#i)<}ffWt4mpP(<ɧf@I}L::GFmXg'}!@! SǠB_;Vg,q:lC1\*8i=$^nc#(>+Vm1K =mwc n ='pO#[k &hG~@Q㮧jU½AWUJc'Q:Nj)8(=<n<< V% q8%QS+^;5EA5/ƿ?OH7svMHZ00hl[?">[k/B[ް KOW֦`J,,]hYb]~(t8ѺsF1^z %ы$( Bsd=2 ՟MZ\aZѣja^߰}}k l xj?@q۾J24(؁Aﰶ`$;Eej-"ﻖzH%)uq N1a)h\ɲΣgÿÖeDnq/R-~ cx>"c!ܑ nzZKL{D)qOfߒ0WY4-ma]MV6ZZfi::+aFSxsI"jXUX+R8o>ahԎDM!)͢!STbDە8(lSz! ݅ < ̹ 񿴅2z0=on|mtiFTdA>PG?>{\׃)9&+<ʰlCL}۹Kwb1)ڢS!OݐսiqLNs{\S쳇FXd|;qWä _@O}N;OZC;2AQ;^+c,kp}6~Kb.:7/VJQ$)yc ^pkE\ԯ_<5~rFt[mxTpjz\1V3+ShϻѤ7>uJlr_{OB\,1ugM!e9`F|^}ON%%@~fN:uC!H &\.EuoM eC]Lv8+ :H&M/e הS930u2j:WTZS&rs4"@,n.>1%Iʱٟ Y:Ta^+|[(qszޛL{A(M% kR qxX`'*z%c~b1p[cM()ї T3:v.$Y$OѯܓnLɬ?Lw{{EOg6n:ȠJ{K|Ւm$##CFY}CyL /e(aTqn;@JIB.ƦYR=Do-r[dֳ9m+ P3)H4(+@UMQIR(|ژU2}9xUzJi=m݄L/g ˤ~(\ NrF:3vE1$=}/6n,ɫ8 &_ꈁd/=L?U챮ĬߕVCZ~5Dt jR{ #Yt+Oczmޑfy !}s>#:)cxwz<(zAhO== AߊrgXin. Y??g@Pޜ+JrD!R((RX!* A$^J * [Gmyh$ _:;PDr/=;бr5 \7>xqtC[jKgxCB-'"]EỽZO-1.qjJ5B~R<#rLp {6F:(?(MLCO`HVOpAGas.ל >R$042B#`,Olf{BF3=KAexD l;ȃn> pwnLn8zn"쌀j<zvNԬ>I1uπH_-oMR>֜bs./]LyD:]}I,GiP?|R3HhVJ['I`Cg[S"ԃ?I{m4b@(x`&gSB5;3/Ԥ%ʏbUG8Վ,0)WG.`DfA'SO2Q)XBl:(U 2$<˰#6% 0v%.<1F*={L!>m+YKщmhgP/2dRSSR:IϏ^y@h3TGvʭfgꝧBL\_S`]筞1` e`M{!ԜQMabymI[w9w$0[&:WxCPG" S ąW&J iG~O@Yj1. l'hv+\DAM9TZƤyJӸi?37ehtN !P=Cn>pr{i\ N2BxLWLubTq#ͼ%*fNEiJ(@Rֲcz,[Rɫ,gRJ#=t 1r!S7,'/'dqQ<>m@M!̓1n˭3n8@eZm~=7Fa~t2㹰B:9E *wݜ:=$cms vd2lr){K9e?OH h `93˃;3{{O Bxջ_7jJ ht!(YCn7LA:x vBa6aV6X@InT8{G}%J ۤ)E.uisRX֥_RV9'.oDzh%w\ aN l9f 4VyRe|:OQ]!"!Qs;z բEC䋵q5K̰ݨac@x_6"?8#MVx0d\Em(Xٷǂ/?s4@旨Hy#nLv/*mە{y{Ԡ 2C!Uee gzrrw``zfCB@B_vmA#u?R3莸5Z yD{'Y~tccvXP_p?"!<-  tc:O>ޕΓS;]8(3V8!_ -C岛Z~.>/Kݰ e'F < г @U?(%Kgזlj)) <=L a^/ 7?,(f78ܰ&H5$pFVܕ~{JOrW8qRa x-[k2K|g[\8'M@b) . t5d OἔlRxs@bGc-2֙6[w iU3{QVchbqR+Gr=q߅ڈo$,LuGBf8KfJ9si1ؐe 864𨪾vDߟBPWAQ쯝2Upt. pեy-Լrpl!_Ys(ARz~ gE_o>%ok8/(?(^sH@{9vѝQAfdҎVO-+ILy/ʡyߐ}H8nf_fLl%9ҫ&y6]X -:[YGA'_j_}_ wy,m㣃{P;1*AnWG }AAɵ#l(KG5(@^; QQnn݅=-cjR<]lg}H$@(Ir !J -U7g+k9TZ)'vm(%e3,kn~xKW 1i VA1FRAqX;wfs^!KP5~hAIi|F#u닷K(pT+wihSRcE|c@M o/9ߚCcܛk,,^nL>O̓A*0.>U$Wle$VKheM,&[W;H%ޫ|Xj*hH3Gp F6?XXni"vb⇞wg ~-haHTZ C4.?JE+{> {d]#P`N\bS'kVUaj'nm5#9O&9hu.=R) 0<ۂ$7/V> \Kn?:b%o JB6sIS^p*RJ)f`Hͦl(xd(A@ZY>xJr孺|'ҍBѣAOE+uWƵ֝,2a^ՋSoPJ w:;叮oJDGPz`@=ǺB5 /#ͺ,=f4.*O)n;NK2CEaS5.i23BQP+`msfftP~GO,Ts%Mvi;z;FōCT=Cz莒cϖu:a_퉙b0NKO%”bUt`@%`ϲ/t9&@0AovíWHJ6yUJvdUr0 D 9y'&0HL`0iҙ=3 eQܷcLJ)֔Hyr.7|fmd}:r*N=K4b1…(.Yx258vRU%W]&}&(TvjEg3B~ P۲bYbI8uP`Nz{~\72m(w]Oo,S+s1\+;E!n%kuqo^#٠zB;+ ev LoPM |ϛz:9B\wI q@ RU6ES_k ueRY/4'2F iGu>s;INE6}8|^ފCFDo}F~LsMYٸnu aX;*YdzEavua!"Xҷ]/ZfN$fAn-n-vQ!z'_~Loi{i(zfh* < |{E)8FA]+p_K S݆=z%+NFKe,(߀W D(X$yH+[o21+ wj,8JO:/?=C^K2RvG-~bz8ڼcOr'r1 +kU+C!spOyi{'JF1 (xc\/XZyfT,;. x.zrroG~lA\4.^&@V+fW=d#6Rw誶J:Z(QA~}-5;5CxcaFbBOCO΋Y{ 0miC:E>RtrJ- 3 ps)[st`F 0a\Xl0^ H66(*jv ,Sڮ aIɓVӕH&(6 G[{wemY ywϲgn9 Vm-މJǟ3uQ'B3ZЋfI>iQ-&ջtxT:B]@E!.Oo҂Z!om[0P ̹NPu3YZ*rL%[; oa# [G)&PVJCrBe;xsja5\w{rc&:K_ފB^nKŝ-4WcK-.bB0 j| W4w vsau\Н,vv&9ty+^z=, FᎥޑU#؆?)pC1uWB|m>˄-n8OT猭Q#B'`8NX"YmFvTN.]ܾ2 `5=4`cdEWv5ܜ|f ΋p.Pd2r3 j)QV_Mz2>- +]g _T~ES@t)"a!/O 'SO_}`$HB>Em,w9\mj7r{&G,:[ԏG`Pd[HnW/a\XNDj"ze kϞ3j?.ؼOS|#SqahO[9]wzv 8Mi&}Y8}sd;.!L.kMbbcJ-KnmF:Dž c>N[<+6Z'KY[HZ..&&anD\-ZءYcb`ߌ}CZ/R}-cJ#<"n9נ5H5F4,!F[G!Bg*|؏;G"N[ZG]O qjd"͖0L^8~RbT1m܊ %{ #;Z~QsZ z$C(TzkYf7'?Rʱ#oɺN̡ FK[xQ3c ܘ#r"K8kmMW~8}fN-=F}0+vx|MO@jǐ:NaɐjzU-E֐ Y,xB} Fj{͂c=\u2^DG-?8pFsH|)ZJC8Ry'FlJV0QEq #m89* 9͛@bznn:/a:ƄS oVG#䘚|S-22b IJ l"L* <TXWʤ)ɰÑfuYf%hQiӘF]]2PJ+Bp NT?6\\0/vҜ~B;]Z!x#oz N&TR7-<(>%R\ kq/,?a띎ۅlte6n#cksu'#F~n4C: [v5 K&1\twV`>{t .D /^P}b*H1n8]JM!]vd'FTj̊c\Ө+V&|&{WGCmo-,=~UInDLsHeU%[1f~2+mye1bF &ò^ɇ@.ET89tW)ji3">HI1ހ'#!_w1&$VS9-mS?дJp=O1kLt"@pB];3/OՌ9oBoDe|8a^yٖ= /W<@[[Gf30B4b3/_Ől;@=ywB ,+Cu@! .kj%`\Smb.ӈH5ٕEWܳ Gc+QIY쒫7NnN&jbm)sJ >tp¾ރذ::5Xa,mF B8gɯvA@:!DƜ;KCaEGUCu:(4 ߀@8*(o?+l,YAH?JӮr0u49"ع敶@(ɑST<̫P $ m?KIWhWGDg1-zU|Wᵰ3,^ܭ`4vFC:#L=|=B)azY >yjTB2R=GPoe(uu[8%IG+dGaTa9E?-ڳta^ʿSo|;פh]([S԰lpC%n6^%W{ZETlecRogǛIcfjz[Yi'4;KgHKk hq.мDZ >d|'U*!&K< Q %(T6ldX12ES鳜vHe]eerLÑLfH[=hDXs ?QUkc$c3P*H iQMBhfg~4Q~ͣ[ y7$PFq:)vP$sa|i)>H[;Ji/0V:Hս*43msVa*ớ ܹXQs)Hɦ% \#sϞvR~O&,)ܨ/'5!wV*"Ӯj$}Nl@/v | `@F`ܒcG?bcչs=h-,4R??>̽rP2R/}C"W隀BPmϷ-D9ǔnՒc``*F:~^qh4s: |F J7g`6Y0vP\y}鳿5ۃ.Exʟ*ʄ0la}\d2q>.Zӂ``|:(⽐FF:9wW2{T߼.!#lplGNRNx r=eƸQC?TC<(zaA¥K~UsVNNJRͩbP'R:5Rn$cRlgEabp~yqhL)W6X1cqaTTkZ69(@y2Y[~`ܧt!l+iȇ.ر%6ZCYuk e^Ʀ%Z@3aq묃|(7Un |>'O!D>yR@I´Œ|&ѷԔKyS̅6+2MJ<̃,r8m+v7%j/3R]4B3nL,2‰a#u/K)H0O0ɠ"1=h롻Gv<[q3*Zd_6 iZ2. a"y@̍=n4^'D ?3~g˄VN"Uqp/I5u5Ig\bO55pYZw,2zjU^^Ns܉MQxfԆbll+v'hj }9+1YZ E$dB;q`寺^(^f̦NJdBږm'*f7&,9s֥D^'_zH[SNk!0%+_oM׬[.vG^,ο1Ǵն[{9o%t,Ql,:/![k:2akn#u$_t ƒubg7;M3Uf0=idʛzHk`C_dѿ1BwCf6}c{Dw I|_E,|Imt"ꍷL">cs #uSHAuUUQBwhҢ$r!W-}NJVڛds!jID,H*FPPBiЊS={zaSGS{$d~.5\‘Oi?e$tu~) ќ',+7w3(A+$ 9 Az8O8jwX3y5 ʰK {aI0)@>q wQ,,Z0b$C/r.Y KG7y [6-eW/Vnornc/LI^|_.KmPvS8q㲳xU9ipaww>x{D]Ŕ0ɱ֐C#pq H#un($"jske~RBaK#gԺ{l<RgVRҕu6heBbY")IbXG {i3|,B,i 3=1<+**tl /Sck` gIZvq/P;$"mZ'2:jhQ+5gE}E#c &hsUf/q68^ws3UK߃9z#S&aF4VPvҫvμp\%mZ*56*7hqM$7HL Aчkw&M?ZďBYTݜp|O%庨j~_9l1?Ĭ aM^Q4 K6Z-z-͞ Z_Sw32Y{Vζn fc<P/3'q"( bPoFT 4T7 Q3tas11^y, 8j/Sc$bYH2_J+OF q0j–et@E *moo0Sw6U_O>[@:I| oAT:s.(@Ԅ:h#*5'in)KN\su6_pJ:@lSepAnl#uUR o $:H7Awk;o4XYaZ*( jВ0jҌހ[Ll20ٵ{D}Y*g0njlU5[vS}>)Qi5˄#дeC/0cJ(Fdsz3^@Aob8(G̕`Am3]GqZ1JMD7R6C(PV>'av('Q_EDM<=@ ?o`ƦD;U"2{ŬTW`/aGWOzp6Q=zbYiXwoP[O:UqQPKӇ{J]i, M Ģ Y2 ȮLeCW*| a.$bE&wذRO?CŐپ#dG-Aܞ{mI.:&(lnMs!&լHB&2 Dn}: zS$$*E+_KU쾃){CԤR2Q#?Dlb>7M> %zs&!璿a?-`3# ¿[G05|"" ejs¶_դ'4V`Ӣx}v8l1Oc nTt]s61U#6=]9!@½$D^t@2CΤҡ==nPDJlMig3l,SLOTý]C0ۣ +GNaҢ*p*{Kt7ڣOiAw˘s-BxQ<-:HcF'>+,3ՐеnիcNTYχG oS{=pbG>fz ҍBG|5V 6x LҦD_&CFsӮLר^/#v6?Gc?9VaG "]Kv.[C hle- 8RK*ku%Z٪@ &ݒd~ⵧ")Ik2ƲRkYSDmQrDˠ۷;XؖlG, |r!EZZ/7엵ܓuv%_x>l"çzrIYp-g?!FpMQ3zo3kݡ "/y7\E]%.1 _/Yj*k\sP٨VX'kEqGW?7+,(y޾OEW+ 2?"j98`h™N' U"ц(o0qnIC W*Bg/S}ٞ`!mFOY |¡gp!sÝl@ʀVkHKW< ֈdǢ܏E7.Y}ě1<H;Q>Ǯc.mC@fcfgW[+c&D_E@Y+,ȡ4-=dK3x}υ2IZMZLny;*K;"a%NuBޞvиK Ļ/ãXdLhNgdfg[QF7èBt'}!*($TÍ̄uGf uL_Ku/oO[%~}( *eTv!(c  @H\g}[Q}s Oس*Tv-9#WY+5t{?n7[ Pu ;Jnϥu۝ -$k\wDRk^8++.bj$ehaHcsS㹸dw2uO<rQ"%yziexN-mqgF"n_H j>ut0w%VR%K# 2k\m#7 C] heͿ\ Q8_\Fᒾ%I oX:X-t줳R/g2Jc@yU\ e鐆vJ3 ,QYV4ChM ekt2e+ ӥ,IVݔ7›H_rus ˣ]Ȫ ((l7ǐ)wqy쀢~%jm.][fM[Zo tJ]nD[4PZo:Fjqܺ s7iaƶR1c1T]Czo^`@cC%$Z]iVz\.U:z^Ў٠H.04kUov`:$M;Y@ay@r崣S܅xqV ApX];qÎFFMCgQjiASn+uxBm񨣋ECuQSJ=GB$d(QЊdu9Mqk]?W8Ľh9FiJ$)lx:BUo^5dg,PK1Vjn_0=E c3,qBV⫥QnӐH&HM$5-QxJP(H~VanڬHRgD#r 8$.+8:-=pKםйt7_ˊA/}_q֋Zoj(llflZC54x֊Q8=f|t%֧U-ASlb{bHcFox&>`CB)2>kVY9ܨ}NzYQ+nmo(kػR:IhCNVcʋj跑;e X,ڔ&0!?@ƭHgvr@mt"(,ka'}=s/?yG%5cG®;CfMEgD jB q# n%I c`g#Qb"xN 27K[dM@XZ1(XiQJ__-ў ?kK0(ݵ+H8Q@l'YSwbX*8$asaU^5 бу!AHw&NM>|16”W?rRhr7V8[A?KzH۱ڬLg"qLfBTنZ ~ܪvq:ItCqehlWgn-iԘ!q0KɆ(ԱVNY=Q-\4P󀸏ޯ|35LBͤ/C0=M* j8߶}8-SN\Iv2:^*䄺AR"3 Zs& e- )G;JyLE ~c,kG/l BT'p~Hu-ZX\ZAuY8{ |[tQP~~ldhu寳Z BZJ=h8+ 4TMg %w`l{~I}IḏߘY\A _tR~-5Jn )gX.dDa%'(TeFT]>~W+wNv6y99(|Ɍ'(^̹fȅ z ?W)pV6}Øs"fuiv!7:4'6юf;H:."@&5=Kf141UKzK#_ ѓUpgFI&K-jKJyP?cė >eSRy Ďi8.0 _1P/H<\s鯧#.}AsDڹ$e#0duƖ[ȸzsۺO +/>*"JQ LiBu`!G3G)m\'!{QZyжA6R0`ܴ (ŗioęߣ)) ͩO>u2""gbQE<gh):٩A8]_?^Za Z0\t_=.GnBJB&0dSښ~ CTAUvw=O zM5 hMASVfXSuG4>zx[*h=6gP=e q5ЖCe}Wj9R1e0-`~fJӇ44If*R%s{pwX0;gqG;Fn#Q"ƻR{!"DSp^$*g lʱ?Ҫr3ƨΗ+S|:Q g܅ά-ZJuљ\ EN439_hP@NS7rh? 8$ #Zմ]3xռ~+1_rڼ*nÀ.K%'|E/VHdJ-d~ѽs"S\-U?*NQZs֠FP2Zkxr3*IQI$,&G@+@r"wl4W.,iy|5ٯ!]`KM67;W$$ZlCd/@F[GU%b6[qMFT_IݮD$sxO2 %J./vVyj2~-qз3g^v&)sUn|<](J dF cїSsdiz>P \(^R-fdٛct=ʆGmaYr+oǚ#},xw! XU&:h4zX#sP2)]3Z#zsF#(OS;nU +p{Ww? ,*!wn`A[㷆X 3n{z ܋:d/absHeפ]P$pNh\)1b+1qY`E91AgDRk8JsJA:OArwQ\U Rn[fcy|bjݟٔQ}F7ېy;È1D ,4Я0.kY ӬN@2Uq-P !CY|) uw|zAq$~1Z{5a_ CȟA(u /"I$mXlvGTkS1OGbqrpF1B-,z<GQєNBzMjː&lqU)uAȾ(!A<wU`,R8+ 6(FoK;^=!^=&y/ ^Үz+6Ny_MR<we[bnjC0fn &MjWȪ]n.}2KXX48,.s׶b. ϿIz3A*= ϼ5٘A=QASoZ,]i)>"ųo)%: ѩ`5ot#pv Qh` , @w5 VI iavsr-qMce:x*f9M,"%ۺ$3Z'qл%?Su&"=π+f'@XeB>T؂ݏ ĉO)P~uY'[}.I2@A -jt|8Xn;˃F<-P_ͯo._'kO@;Eojþt/ O9B3.lS<|V.۴2`(A㒘]vBMRI hi:Ğxo Znt`|!J4RdA뀸'3na7=5݋ ٶ4,GCiݕFO6pmA2ϒES@h|lsq2_lJ\)d7p6Ҁ?Jf  5a78ֿX3ZҰsh1qH; L–66c,8LѠCD˧5I6{WH` Zo.Ҡ+n.-RfO6HKnpx~9=>3ov$t V3DK@I4!Y GhRWn<,$靪iLp-o{a4-^LJ{$뱔MNz,q8sn0" -2N҃U6\ù3C6k%|-MNOim.8zPr9ԣt\fͰ59ޗM-fh5u'ȣsp_}T+;DR;E4lܗ!Ci 6GUyNbO/Z;IVY>rUo.}Hjz\`<26y`Ifh_9<f vk*I j<{= Q W>X\ro z!{sAW=qiż3|7A*xÁV0?57SdS[dudxS&t54Ĵ: _u,wRVm͜nUU+.5LbXB Q>rYKz寒ȹs,ˡP_'Սc x+~1 ~>.yQIێ|rS=BU9" Zir&(nԘQo|] лAUC|[afO͚N{̙؃{v | ORN;(\YyS޳[iSNav\h<,mAd|Ua{fQ^4Y`i%tƆ46BS24Nw;PQˏ`''У}c]'͆FKanh|k`hȔ8[k "`s>X< oC#F^ws$9:P؝cHR>YHU!8`:XI͘ U[M6|݇#vMR:ߵK{鱈0f[g7^,qăN~ރتڿE>F>xK2;6@T"Ό3| WG yJvKC뀾y7RRbP*+h4Αlc͋?.j07pȵJwUVײJݤkgP풡2,ˢ22j8Wwo^Ae3Mv0I]YD͔^'JyٴU+tTRC8kKGU AבlWuA3*e.ٽT.5CUyOxZ=e~ݽɸ3vYش33v{%2@# Bx/ ]Vӛ̣SliŧUzoa@F-)Q8_+7s~¸^|:Taiأt` N}nf5-*UKNML[ع䚽nŖ., tmHMXwTXpUN/NM]\ C*׺ebn&1f}BԴSR12C%5KSEX}zQ\+@]Y*AnV?c1 U&6]Yh/'tV2p]v;Ȁq-RiK:cݟ#{ֵ >*ndfOYTY] Zc(}a mM:ol#)wD- i 6b{[- vU) vE:쏫Xmni;k$~]:vb=7OM=IKicFM `_йbqfoV ]_e)["J\|>볕_G| '+~Ipz"Ff"8FJގBzoryѽԠ:\8^#/X&3<%1H7 uVk %@ly{jZfpwB߂)$M}lhp?gB 4[pc<~K hb# ,B(E@Jf&5i?Q HiɷIgj'\͔H]"l2ebRnOwϋo^6lYMOeNbjL!'c 54fŋ)"U>`zZFph7BIx$^_~7îDi\Siq0\MoñۜЖLyqkָ qHId%隫Y+ ޙa e-bdφ\Z{?ޙgfAܔg,VF!Uzn d`R pWq9d̿!x^J_cy `$'g&k\.@kDfR@S9M'T籁6DP[SA#%DK|${/Z‚Ӂ:"Uͫ L@R?>,  M*QpJq}@ƨ/SWʵųS[Tj 3]9"#7{rۄ|1C9Ĝp+C0sr,Xg8g$+ChhCObd|= Is"r @1FD cϘ4;ZZ+<"nL@7$J:8;ʃ|q5!(b䬻]PiNxJrHusMe!-q K/s#>T5F&)QĺYքAWU쵄o` 8nᅓ355Kɕ| ,'j⎯f3i{< jTl4KCzbn{P>H"Y?@Y;l2@rb ;9p 3A8͝7E_;_*2=T]˲tA,>.21.fev涧GGp4aޚ[Vһ/K44]:>:* ٻWXΘ(wD^V{IN{?i/^E5SCBکNm:G:>`gLl1|" QYg<`W3#_-p>Ka94 :;BSC2~l䢆P1pRl.55@m"4kv $5c^ 9VPC޷#˞&BY"3V}t?Nc~{V/'iTAZ׹YC]Q;8ܬ?/mFVօT4(>W=$TCC.{wQx.Hz͸)G,SXf%h1e;V(쫵~ %dmaxr\- qԇZ[?}iɑSC\B~-q>'CŸ뉭햓3v:NWOnɿJLqR& }ohau xk{! `3:tn+K-mͩxZHڔT9\[KLWċ}C"D'(ctnmsZ ;4 :'J28v˅3e Vp8knG(4oKڶISHS*ǂG@uGKٝZfE4gfLF~_AM}b;K"޹#@Tws Ch>)@ .Zy a] {mFvkkZx{Bt]Pg+tJ|+6 #,+6EηmP),sJfjKQƍ^~Z? ȫ&\\g;#X?"Ug_s1>F=/؝a gUXPT`\|пWOkle pߢ"z7'ٚ >ʰ=U4 @h&4@s:kOghjfrtXNҁL|$H6Jn\ySȉ)|G~6ЇzUqDRE1"\_hԭzcBPjhJ LQ)Őc5 y#TawR BUav!@:)Ocv7=?jͣ {LG6LwX%sGŲA?/P]R HnTO\'E{3vcSӵV+}Z#Ͳ ݐ*(ojHRr\}qI Of~`^v vw(P5JA/ 8#UZTk9ꧭao*^LxUYD̺{ż)cD!1:%6/I:ӸGM*isrOQ7f.U`0 cLx}hzFsnNhgqNKl%ЦGX\b&ŗt/sHnM((܊YHB?ꂌRi -< F|bb(k[ɟNgS6^!jТ}y9@_hldtA^sd㗗?_rљח-gE(8x/v>L |#{([^izΆՏc`BT=m{qh:YON}Ew2^<ƞy,yamPP6j;i"۟3 cږBSg;!,⌧ZAa!I#Q2Qj".vf6ٶyXN M dMUW7H.yZJ E>Bp/ [UwDޱhll@\3_ `馹`_O\\aA`D@)}dQȌELӎ7ة>@ LZPmMj)!Dj7 HpiuДC~*8Ǐr8Zq5~/@U}Z(!Lp+!  )n'] }Y9zńlVe)s\6z!Vk CU!G !lVgZdu₲.W{! dhd3-G?O1βY#!{G;yؔTUf[1j͛( |H"s8Iews⾻oˇNK89Y ID0Pl(ƃѻyQRyC|p( |>=9IA9WJ6 z#&[wlyHߏ$#4@}w Zf/ܠ?4`(tcՕ;U&[4jZ.:zf;^"DȲDDX s \?.[!@zC28O^ 1kSW6ϥ1 z:d% TU,m3kqgW׹TC4[ kw5FrMH^Bꦣ6|e%FejV&oqB$5 A?S6(u;G7 lwI$撍8L:O{"+A&ݽ) ֦mL]i~W^ "nVvVAZ]9itksL|R .Iڠ%+ װ pᶱƦ?~>k7Ť1hX< p6M)K5N G}6F\?z}7e\ 8{وHd$:ES0wrKߡO,GS{|_1`^v8YF.> RwX3Itu.ؑxޮrg%b0p%ܤNYBNAyؔYR"2MI_ =^bɡ\8G@${SoU<6ᖅJ-3fAh"'+73m]Xb̀-PthNݧYפ|AiH:} %ۅ0OXr;KF(>$tlCې6u{s2ԅߑQ-+9؞&d!&nA~q;bU/\rFA+d-\ީu`ٚ=BJPO¾ ]1V<Lt@Dwmeٞ)H!98A:]jkUTb*x!aT՚QWkp;䎄>,~w% \V7EFЏw sMl|!\hP?w 59N0|n]<-ÞO]k xAH@>7ۧ[ Z%&[<\Lr`j E^w:>J0& 4tG?;  '[=Rs?i)d(hP+!/MxPM} ~UHx&6V¿-<.BRiWNˣSMA` Z + Ҋj|cdP?Iɚ((qWk nc$ɛ:B8qUVIN4q86?ن?]M 3.=`;:[~2D@?"UBq_[B|K Rqqh( r9y=f}0@kUB+SGb^fWi;$eZ.~xK=~Kv* jƏu1X@ )2G~N^H9 .&Wwn^xٰ͉vFe/KWL|IO+\ ij7R,ݜDp3;5x F)Z鞰k%<~u/nb`8 DqW`O8,/!F ~ Rli<=%g`|.hNÂ8+fpV|ٷ2oGߑ!<9%l|htSVjNm< U<Y9bZEVcn.h#vz"v Dʉq&gПF C'z)!C@Xyt a./_g s?=i^B Jg!YJ^IƯxj c{׿287S_:u;5on;H\i@*cjFY89dt!Uyc[WT"JGr1A>}<9:Hɠ1#^\Hxn&*2Q][ZqG#/R>rUF{Vޥ' Z{.kQ?Z˭q:QC91mTyz-WVc6Yt n){ " Z\pG[\sޔPFꕹ`{/T<1]Y TOk*Ŷܻ,\0=|cCyC-vnjaba( zTշc-b5eONѝO fz[o+=Or?'83E652h([.LD|R!j:L_%6~zwpIa]LUڹi:i0@JHќ-),'jrZ:+66t)0~>E`@֕,-=yLmiHÓ䜵2_}-{Z-^;B &*_l|+CՀKupTSg&(Z8~ s О3Hԓ϶šu͔tX6h_.nZX1ɨZ4fjky2nOm3=(35'34ӻOgzӛe ߢRy5ye? pBKZ!l)zG#~!;WJd1!e2VX>)yl6|.}T]lkٶCwW?E8O馩lJX&o|*bNUdT,^C2;;-yai3}0Ku>c HTf'qojW9;СqD :ܕf눮~/?l?J0#c RPvιWp9E\ ܗ4_:{G|M_g>bזv&tap\s%8,zͧz,WY/'vJ0䪮G65(;5֑@!u8^3a s({;1 bB5V0mpX}ݒ5:`904z o%$Z>mͷ [xL ؊a/kx{ZĘ PĂM@ᰃIZAMЦ9fzcTHbw{KVMSۖ7_lV] .p@3xLI%NܝZԗ (Dq\]T3<,*GА- U9:, ]2,pvֵ#-t6adRBdvHQ`Lߊ_&7OZ jn8Er0ި&P-DqVaoq#, ޵A3}v^o\dNM2so!54hJu-DwPL>-=G&h¶QࠣNH ap9ٕ6W؃)<( Sy^{\) (e~rQg1ɏ'?G2R4S w]y/'Jp싄Ϊ1V]ދ}d=G| uy H@Bwz_ %O W! jCő@1v\界t, 7rR> ׌6P1E5*~@wYHdž)ס}H(.(B:&ם:*4Fqn5:_sBvև CpW\T6,9I|^p%` Xå4"wEq Z7I/H͟'JۀP#ؐw/JhWt[6;nnaYBhSp"k[QXr.Fڥ7CWu~g pbn(Iy"F\D bkly&C뚝s)7bٕ!f\<t-0{Heivo,3@wک,|Q8̨\g#mSRE(p7ifP +%9fHI`0g>]ꍡLZT d9FP`4 ;YE6KIJ_/֢ALm&B,$bkİkO3G[@ާ#7>T^=AmVuyti2 !#I } d{l\:dtYZ2\޶%9~lDPWd{):n10P7rМ0]gLg61bc7oihPSHҚ4DgiKLj;ۄ Ka3]{8Ra*|)@tȕ~[m8a]P>MҴ 4=hH~HᙂK*"!M 3*5j_Mv2 I+~ȗ/,(, k,|G$b/A?›@<'@'CXbxhAh׿ 8BX*H <1}y*`˴t‹aE9[ ̴C<ﺝWagXҤŷs"OFsO=KrۡWίTN tp濠>rqZfdv Wc'k&PO!nR1vj^; S7tcP_<Ⱦ|e#Wrk[()@Ap_T8n[ 1G8^:=xr MpɱEuOAxګzم>ڑ;4m> jǷ><S盚OOrd XlkȚM׉,TF gˊ g Fg/d }`C$(?:g6F&@x,NcDDP؝V-DW[1s ;`۪a_䂢A{aቦQpk1|4Ú>$2BW̏~kK%zpx~hm;$FohCTf]}$8^pqh p옣.'? 3a4Rf)-:pN"gJ0Jb:#ہ?i$ mCcnc`PA`鈋yo ɶhBVlrﬥMS;RmQ9&WuWU.ȁۭ[" 9_l-Z=uwX51"JB{ 缔F%?u`9;Of(:bɫ-W;4AI[CT-X{@P]-wO/(S>Ƶnq,}1l|p'5Gς!v$.ஏ2ڋbTٮ+^:3 re(ffv<^娤0YLax=-ˍh]1+_CmȤ7@zsFL@,3=ǣT^O^T#"apN8,* /a9B%@MkI}:2g!=pqm bl5*5^G$Du{?x0*h+,KebͲfqjw[ IєN8HUy^EuL"zJleK}pWy3mPS8_F_(Eê^; 5m{fWǡ\"wG1Zh9ؐ^=Uen|@a\k|)l$(AҒ5.li>`bzq]5ӰG ٔ1uɶd2_enEt XVĴ~2q|FKj  .]7$2)VMlީDī^3T7qB 0 DTY:vЁ"U쒛0vG~ylyntEnh^SȻFB1Μލx(  6ZOx#X"aqF8'鴆azcn|4U=o̶_ aQTYQ\y%< a6` y#tctAYAznRyY"Pbd-3R67mQLז/.}Ia!>Un?Yn˺gapz.b4tݽ<èV%Zc/I|<[> ;Kc\8`B+QJjjXSST~!y._>_jT P:@)dAq[ogtӲIT=TT!o!V +{yudHJCsTrs(uJ_fnO%M zd3&\7(w aǣP4uM)gTWL V]H(; ` oў*lĚɐhۙ0LsUɪ霳areS 8f{s/y\N ᡬ?W#;z+s J Ezv{U< 0&?Ŭ -3_[?^_ʧߤ2*|gkY&yD@lG4qq㢮8/R׳1G6bqFk466{lQ,lDR,"P$)@6?g{EYk 4w&7#Hp䱍Xg;"mT٫J`dq4_1z#hcJ,F7|Er у`3xjN̉#"|Ts>!- Z 9,ou~M&hl Ყ4( 3&6*%O*M>N9?GE}r:A38xz^pGD_gToiߏҴ |{ܗ[=+CETV!cyA(~zç9smk+T0w zDK HT_d,6tN*tc>9/њj~n% ؞(qlE|3BJFpec!l{_DQ4i8U ۴HHP,f}Eq=I gaqԶjbl۽K(.ZE]3CN} 4Rwp:d6l1[ܸ3A0s[\s-k2GtyΧF;XM3-n$4:Ɠ`ۙº`>flΐ ڕʼnwXT4&,3n.K |Bj>`\ƶ_y5jTP9qlL~Px7ݗL0Sy>K|:")L8=Cbݤzok|ܕi)i2;k"W{Y9(Le&/ϭaQİ~dL B~G4|FeCcVgÉP&^́e1R˕Q T=V z.ced HcWhL>&À_ܽf!CHڨ 8V_ eL`pY!J/k8a%~Aw#N&KTIo-rw+8M"^o~Xb0~J%oui^_Y!K2A ^ɴ{Brʁf$/7pt=چsLwUtg-nѭA5IڤvgousCiSu[ǰR ב Rݲ I샇Pۆiy ث{ƒWݢAdda#T+AC>{蟸gP ݚH[z g"|'0Y 4+5{s#]Uܳz@X*` "l.$R'37B#Q=},QTAHr;1jsPY6ow&?M RXC@hњ^Vz ~^\M'ovuOХ0A{kU['/̟Q|k62)Sb_sNG`k|rx}mlN7PC89_C@ l岍,.+V=N9nb$u'"7P=;|e_fM',^;JEİ} W^69 *mWwtfEP;W*yyvg&r@zMWUO˃/4Q_` \mc*,3 T%!%]1լn-k>;ܰΣt;b(k$ "*X[omVN<쭤ٖl־@%=λK>-k^~)XN+s^\&E|i l]Va 4`܀_wx|f,EBQK24V`D9Hա#8aB^Xoc8πE2y䇾#.>aIDTa|vE>왋J N[HQY0P^@EĊSoasM`7"WV@$c ;+o/=쓧Bnu%YK9$ۢ= 0(sрSLQi{ޅa8%6ym)KXnhS^ÖwjN-=nb AhVփ< [Qe@Lg 24%ZrM/7E0R@b gy6jCR#9ê0Rkk}sJm $^ []}RBUJ/j*yԟ1R-}F{":z1@ƒS [mr]kZ*U,C/~ČᅽXc :[(rs6S`yh\˥[g)>')i?<y-Pt t \Ȗ&s`Ԅ@*24"5-8y?X.k,6,YcSҁ#}zH1C5]Z%.\pzf{>bC=&gkOem(D e˽u#3'z/0;mțCW2a\)D%E̝M 5#I~j*>:$'1ޢz zhqeZYDzt|QOwُ\Jzu.#S@b#76oihL{mR(j>F/dG ЈAkKLrrkiԚ;lTLGP}@76K]= - օM- ig_bѪ^:DOIDxAhr #12(;\L ն\\{MrV;857%{G;ݔڡV -g v"m9^ֈ`>)65Hg>>^. 2݉ɣE~2\(%utUbIǔ})|tV͗3+H J Ҵ3c7[;.47$* y]".LfRѥ}m#¸ lWȦRҚ.X76*GLL+a)oY 7 IV30 Рx$$t7Cm89]idbInMPv)0wgi^g"vNվu9_'x8 x?Z}DZ5SOP1;̃n,It*nhuu1-=xt$_m SwT]8;PG7Ac{?Ӝŝr:Rm>Dn-qgp47Cj@|g_j%̪xm)uxJ2e> L`j` -!qIE H$# g:V5&ҦFjt4wk_>:m7Q&-.P_P_M9큠3l}Jhrڸkrʅҍg0IXz'! 2pxoԢY1rk+"nwPTss1(2e-0Se!lb=)YXbelZ;qsC yXƝ_Ƽ ﷶ5 E8(lZ%~n깃ϱuz׎ TMgDAcL҃a3^B bX|{ޑJ`H @eIsZC,mM ̴_?oTD.z^NxTW:3mwv/֠/6/"9dL:MT( V7/w@ ce6Pz5q u9inrW5}n˩ >ll6K`۹o ִVWXa(zP0l\5ZeՊSn #E-Hnq|y9NCL)r2K%"!~,[}֝*rq#?+[C2Ŵ@W&1? D: b8:zdVͨb`QP޾Wb'u^yhdɝ ~>Ռ&١']a {93l~RuehfM5-[eUogo>msiآ8 KW56]K52}Q7 X/;'H,|QMҮcD 4e!s>O3 *2;]i3pOP94p /=U5z2l \5_0*̽(KW·ˋ xc*57.'%8qX3 l@Ax+ߵ{Y6,t<%99`hO}5q33쐧M!|-4眫ND)Z#=g[jo; l`P1۫| 'Kwu>:h2 7H2x.3Q xc^5J@cK\N }f,-vHn-I QÖHB8uAb%T1pnuF54nkIG|Ui$39SLTO W!+pk+@TyY|@Y 6=tT.F~RZO a8 ֝$t'- Zj>+| D$KU[@rIf8W0'f̕ġ26E~i^dD |>O*5Ry϶>ziJ#㗇*!S&N7)B}xo/0/3H=X@f.蹖<}PŧQ~$5+?Bm=!b~+2\gC32c!GI.FGtH=Z6m\ ߓ_$ BaeZ23nnG@υ2WO( PS.ZwZ5cXf$BYx#GÍD {n{rV3ޯ j gSLj;YҎz 9GʃuoϚh9Tsd0TtifOK, 4d"hY唋Z3׍@WQ9Rye.?+g^u@}ԓE]AJS&rW'q3M3H(E9uYU$7u_(m!8mg®`mG) :ǹLFB5VϟG19-82gJx%aݞ΄?>[+2Rˁ.*U 9+8]QNf]QɌuwfb ϛ8^[]:LL`tm0!(ANSq nt0m%4{Ggas7N@U@l߇[RA+''31)],Gban$& 3/iPYFiduIb3ΧjF%/:. @;nk=@G]4}LåU<(A[On-y]y?Qʋ rq0:p&Ƶ4n %xp1eݼ +I5Go/3NqTο佂LQd0] Q>zA%7Gc S`mwڰ}o< I+4'}.F8ϲu)qZB)OuFhgE.1p2K?ʫ'uLav]쐂xx~fIq*qW0rCou ŨhIO; јC/-7x(@~=m00wa9L4˫b!Y1c?+-pK_*(NY=p7|7F/*Ef3 oy"'k:Jw-pv%Av[Dg¼UJGU茉i \GoW D%qVTKeZQ5[ިȜtUs@>Rf6Ŕ5QIG)ϕu(-& }rM!BN@>- 0x5QEax)N.~Sdn}ZY1$@k"W:ԊdaqfCSBЇ>v QW7lu&=N F/zh-`*{ki9#Pr%r-z%i(X^[)<(a7`KH}T``@ƆbPuyS?ˑ=p0 Bg2_}u0R\WP|$1q,T@I `/pFvً"5ŽfڊE` RmV#}d{E-$`Z7ȷŌ+wh0wE˓,.Eژrk-xhk?va5k{e ĭ-]SUZNd e7;>읻'S/]$/| %M8}9뮯`K-Xl a](NՀďnbŨ|:v_24/GSEmˏfs?D d}GBo v!C.yM-Ha&=Xփ^7CCM@-eAs\1D2Jg 7[ijI4LkBB`v(k OM.Q*1 | Fꐂ#`D'A(3p P| G t` B PİMB^"g8@\_WF C}tLٚ$,^ PŁ~rӯf ~FIq0CqT Gjy\8הu*{ qE~yiǬ _ḑEK㔁<"69{Rjf~h#Th HMCo'рFXv<,MU4En/@rs昦Gn"%XS@ ҉{O̤:}nu 8{hRU|gg BB .p87<6M7=~{xCt~3ּV vP KX{GT]2!r׽­j?5*!,D{pyh' wc_DS˜> e DD{:mE nQmӪy͙gv,%51?DiXOdm<Ʋ!" %' }ѐV5 b@\)74<< [9#Ms^C:"&Ϟ߇uUZX~fjW+n} 8mUQ!!un2iG␝Ak( d,X٧(ȍ]rٍ%HCzlɽ):ҝgSn53X بb}}E%9{C%G\܇M5<^?}:P7 Af1QDKJh z jZZj 糓m8j̈́яdGS,ͮu3fU]DWl-:q#xniծ#ҿu'3`i2:ZT_l xo7b8#-AqB+!M;Fl&&}u bۆA1M%P.Jc *)hȔϲ!#OeQQ cٮēbY")FU>&a^bDI¨ Q`#+qp6PT:7$fhffb XNj=\9 6&>]3Cн̟GEv<}T!v5۶\ = {;–E(ŎUѹȓjl5# /mʢH8vGAi:8j䡨Ih?޵YתC1ن{cTC?#嫝W-P۵ kr&t)&PɢfZNb-?8`l"U5ĐuKbυ)ՠ9h T`Z.c\b )QWX?ƶIKԗfEQk2( J~n;L{7=vJ럕oZvJ _y~- qor~:0([ hط̸~i xmŜZchH~ꄢ!&l>t\a~v3Zˋ םBNޠ cd&V=o[XTIҤaALy;jdPjmW|,ucnՄildZzX9՟͟jiK}vɀ-={8 ά^@cJ5Ĺӥ\Z5e-9u8eub0-39 MiXvZ6n&TMyR4UȪ s)Hwͼ=-J _syzaA% N6T\ XfIǫ,|H-ŽQ!/MQJe{i+ oz8URw&T޻ "dcvmO qA  p&60v$a8^ڗ2?(Ya-7K4 #a/hBRx,xSdt=Ew7ZR/F5pʓb5Β$Ey>}*BzuR uqiX~o2AgTG Rԩ}=\=m߂fh_eϡct['Qۋ}ӣTrT4NOGՈY"ѯqKv3ɠ fq}0IByץyEe.}^}GbRj€{E;u,Z)܀nD{pd%<їBbȻ9+Z'Ɋ?V [kVa {#pL[ӓGۦeBwK <{g>Onށx_[;Dz-h: OQj0x ϖH%zRc -Mr[Fqt^9-RiIetr<JZ!ڰķҘoR"{Ka]҃:;!I?m%6cxƠt!Usu\??[ώh?h\a[[3ZFI m񇱥"jHM ,2q v5YV:l:xE$A, gא|ge%~EA?0P=.Ӫ(#,k! B4N cr6ml4Y'A0jTJk{꯮gq1㧢LUEq(m6x92yŃ >I$Uh#v] 䛀Xjy\jf|һr]dR3+8rMڻ5C'eCwY"jU)I+P`LjGE#ΪxW-4t]+Ԡ;erpި/TErǪ<,zVh3lJ04ք'[~I@6XVd1rhd3%/}j]5c#CP貾[(44c||7ClYx9I^s ȐM X;?DNXOJ[k@0jPByxDk!#AFg|0z.WYk8_OF/=Xp=oFoNt}Hq-p6~3I=b{;RU }nZx[3^|_tk2 m.Phb>@Mx/vgqPqv_YJi3q [s @* 3ڳP!{0R9Ȳ|<: >8hjST:7tH7N$ T ?1O+T^BbhNIro3# ۖSVE.R*4nO#6(fV+0*.J2Hu4REX}Ay@HQXT\2S` eD /|I,U^|E3,ߓ * =V.y AbL˧Uڀr]YqKi^ʨU0. ~*[>H)Jפۯ~mo%s s# F@DK7Tuie`j'PXsG6M0;j;@zNJnCVZZG]WM$ar"tkZLU6-y8> gozT鳴MČKq9n@ga&Ex{aط^@]'Xq䧺bƤ02!zHgˠ]`z/At^h͸)ǘ1g?8(j#hǯYS̼8BK9NwF]wo BjŹ|̃!SAh֢HF'ˇ& H頹th?Qo`c1[UmyA6N*0 P2@(ټlm &DH D 4[㉎Qh\ZXA.CdsyC/mr$ n~z{]| _uO6bVVKc,U\Ɣ.Qcҝ ~ΐͪ}Ht"?]Řiom.c-?% 5x.iylaxek t\ZȤh%x{q5%QkeECV0l+&[x4AB.nfV4B,8XFip)ICgLӈd>>vM&R%s#"+F춟'C!=Zz=nl p7>0?s!.]>+Q vƼ` .2WYV+E/r9tc$]p,۩ٴldgg$B/zZ7lb^i͈5vRgspaȸŽv{DKFrckcZx6d\zmxeyOr4ŘPhG6{Hfamkr4~@leI'O{nFtHՕ҈rBg-AVXZiE9ޏadUά@< һp5Mv/Iб׀}_<$TZ`XXa=9 ߓ8Ga dyڰh6a*F[H:QWh ; ruXq4V 5]D#d{ G)ow45^6ѵaZЬ& OjH-KQ|F&x7i mEI!K8BJ}I-bDо3˖^mjfH,;f/p (/29+֨y職[mxEe2gwȠE] Jefͯ 09$0oCuޘ/!5]`)p3O*dS!94gA*˗ 9CdzmdɋSP7)XRpy7u C E&9H:(;V6Audo*tV _D"ϖG"!daRU8)Y =^tdKҳ ގԣ)f2/ gl@]Ls/9Ȳou 6O Qw wBlv0lojԇz퍇AtQ,6 ƭ@eũYAž2.+qD;s輹Y`T]r8&{e|:9^yGlICa۷cA?^$7҈*&92:+GH<} n##Hu)~ve`h8n)k;^7AlybYi;έGDK1t"PU[+,^s9i:7[4TZ&YD~I O@Ӌ Cuu# RU?n#ރ.VF%Kx4 !CRFۯ! $>WZ?Qhibo:<Nփ/'T1aOQX}G(h<͓>` IWmmا8z*e[3 MagAiQJr/&%yB.G؆9_[g˦ȡ-r/Ȅņ2buNOYFt4~lZ~Y3 9]z4, uÄ?gh) ͐D3&A6#o`Ezuj:,i4c PN*]̆ jzr;9âXX_XjR=ͼ% Ҕ[o'[,fSUxD#d=M%4lH_)9~Dt"g@Gr (uz 2ioLDMUOF;E{'$`bM KdyҗqҘO T(n4H`3 ɡFNyA,E\D^w%"ܼ0{L7R:t$̢/TL0uf$ gJhp>T,S]JxHF!.CS_MXMX_Uz&$h&/A*ABJuh(z+arQ4!Zo'.%5Z%\usތfEK~z`9*w-(ר,h](~aiL+o\kVcB]͔;N"iк_eH3qfK V.-׹DȭXiglkWI dN3PEuGrZ1Ζ6 ġ 8Z!\iDl?|=`Ԛ&xÜRD mMf6ͮ/]$""~wy&[;T 9;@{|hbP@N~`5#C1r2bM;;xd|uo-kFHGATϬt/\B"D fƥ.6>+⩡cT!)[jZy:S״w&J" x'9|EE(h}aڦ@?\@kE2"NJO0`]|ano#F}B;<`hZ6V!^8`hQ Wrcք?Y}Rv;e:$Ӊ3&~oqzt-̣DKNNNmX zu5lۅ"`ظVӔ=@adaZbOϕ=GobI;a+ogy:i\rO_fA1WWSj_$b:Rtl-5{XILt&< V>wCҬvQom.B,\;ܚ oAur# (?]U~[A_sӻқe}Ȇ0\*nT al,CeK!eg 9G+3*ratF0yc2[:.l A>wA5xu[OO΀F~vnOҞ`o*RhX&?WHG4r8ԫut?%PSX,Ycl,; HުO`x| gz D"!k>'r"d+g >ҚKiR&8gb1\jZj{c7gH{^z:G6"uKU#dCQ%K4|h#Vp>{e#ɫclt`5xCHG˶nu0 &taid`l܅Dn|iǚ}ĵ+2-^ߦ)l_3|C-o_G\n0̸DOl\CWAC,qvDf"u,☹Q;1 31WD_vv㼓 }ut1HӏلrGjKsȐhq9Eʈ`XUўe3SV(mܛ#Fc}vʟi^/ r6w< m\wmՄKFG? )Ӧ !޼E?HYv`v=%WܫP!S}9HKo8S=*ZN^~bb=S ,n{*F''9H;5_d4Vp` [@_JD/xbizp!&XG\$?1=ҖeZԸTAl8 uD_rrKQ-P0_Шx4'%Z%Z>:1(zwlҍ(=?>VjdF?MC5,6OXNE(ηBy9p;l&,b [5M/?zh8K䛄E519J/&r#Zh]?>.tYzUݔ4[& ^(W۝{x귯X)G[cG1P0—oEAj!y#0i?I.v8^KpTɼB5^sV֊ f )Vܭ oB#+#^D(Gu#!v.y.~h9vCR<}:MJSJaVLz-=c`Q{Ť66iy$b4?'9%\]cM`u<훗<ֶ*"O!֊_7t_)D^ӈi"׬OgJUR30Ɲ3"aboQ~KLW b s <%VoiY2X=o7-"7GE rht._/텖/9&G7e_{2 aVڕ}qztU7KRjiO |4B <@#7= Ghlˊ ed~D C1)ϣ??7-;/IGNyV_)'f Fs0rR<҂=αk~dvYa,]q/p`j2:eu"8S AEȎ|*֙D璔HhHa;i=%2E9]r 'b,sS|~*j,t8T >r_=Iq?>:s}21xdfU);m%BW}zg *1(bXIܯ6U>:oRmI/,͓uwO,҆|R!W ݵ/X:m!sM7Ҍ [@f/EW^tLS`L}pQ}>F<̬sawc29cٺn[2&nrp`:YyfƏ%@u9&rů |M|<ّ4~.83/[]FrDP[֑ƚ \_S|# ojlܭRmVUvuؼx5lO{e$&kQI3\qhNX`X%ï-egvsdY.iz>;٭zݴG,[\ÐnH#M7aoo 2 #Dّ[6 \!+?=4܀@>A“1ty[xCxZV9P"*M}+] C~cwJRqxQm2IohW@zdrkYxa$R߁gdCd q4,s QaZ#w.۹&7o\'A{+'t}d|Qj|$P6T8R)}잊;jHcʆʁ,Qx bW-ɇ?.#R!{ݗ2~:}YNVɄaO%kG DХ\5I7E@x򱄋F¥ Z_f@LTSȁL6Kԛ 2\)O4 L৕gA_!n6Vl }Zx/! MFp[Z'M4 M~ U`{K B.ǛHRCCjGkѾwAU`# e!ٕ;2e#٣ԏȟak27Wd,%=yw;0E ȿx~&P7XxRo4ra&JI Q X\*ZrsM'X ٙ" :uW6^{{o꘳J@Û%@/qCaOYNJ|qRi܇|-yT:ʓDSLO^"i|=mQUyj2eJyبf5[ 1{iI=^x\S~ޤ ?;ʗ})PЬ(g.Gibtb +;DvAtCGgE&ߛz-gddm80%K34o|C縑)ES774S5M5Ҕ|gb!0~Jl7E8( ذE|bxD=<5k{ 2i[f#s+ 󺧼՗͏mnX3S Rbw(};t<T`GS2"^BEA\yuC Xxz)YJ;h49O&S=jׇ9)GKtj-"U%5\/eF:{Q!/;)E~3i+``O^=6C< aA7@…ҽl}rmL[K3L%,lf3*^csvS"L!VŸϗ'5#%6-Zs&/YYϝUQ^DX+ }F*= G|.XIrZ\!92JII"Z(BinX8*>KP4nVJU@\)q8[1!yES%$؃_0.نNZV|:ꫜ˩7%ogZ{yUbRb`chbѥ& Bfw:R-?S께WTE+yEs(c~kY:+ў4Q깘T`7ɐͱ8S, y/ʸoCzYd"$^(.F)EU*0[16>obTeI lj0G@umbP-S XSGn,Ai'/1Lz.~=*NXC2š"\?b`:;XLtQt*YЋ4B-ގ{^^%uF+9 w!4 ̵![5^ Ǡ.{Mo 2ԕcg&^5TySx_֡{\%+m=('?OFvQzHFC=Ղ̔ar[YÜsSG82V3DOpJ^_K߰DG2Zts6cFCW̐Z?,K ˉdSSGO,97ȋ:rjN3,w!@ /0"_ fV0 Mt4 BA~E4GBǣRsy.kSWhUhzI6J gm$5>v/92QLO;!B?Yi8хO]*m-+ Ε1'XfU4_6CG;x`o ^yqk#="Zm 6PMCF慐Oe뚱 TeQ's#P+m͘$c=gr1l; _{Tjv+H[1F8bgKJ鈋l6bdpaz` .3B??}R_C|ҕF6_e6VءV:lsF\XOOdSh*#GS*y_ZPϞ;sO#^廬`.&%b[sZ6yq+FZ8)Qiu["<NJ>%'ʌ VŒ!J!5.$v%L3/ Sغ糃=RvT}Ze>qNqn8B?9~N)A6fxRzHHIMxyzA)S;usGc> cr/!mS Duw}߻SoYtjwWvt W}+QjvH$vP*nLiͤ".}sݲ.ҏ~TeOAƯt3Z5E( R]hvlT@r֝E$beD=<-#NQ`nverøp>6ԟC3"<#OK8Go;b Z)u\@lZ 8I޴;`]Ƃ#~{x5֯m \H&rl!jܼzRD"Z?1B @pWO GOe3"kӳ5밺11mXΏfDrmE{[T'2]۽.8MG-MtɍH}^YB0waR[9BFZY{x yK($ >ȳRBYr<@W)(bH\Ou|ݍva'[|Ȟqx7 &ZQ${J@,ƼKec]ݵF65Ka:n4ץp| ߷'0\ ,9`LQ~oHC󃨧Tgq$(R!ϲvؙNs %>t9!r;cڰ63?\Ka~w"\kоoEO Cڧw5M(K`ok$(BecPژ"U "MI9!XlNtHMV nd&O+4u[GQ׮Q, F[mIu.RpVb^-Ou8Uj8㙩0ZH?kڛAbڽݺ F/03a!yb> 9UnRK;Z $P\ a?j}!aݧض0aP<=ӻ_-6ӝw43jbQ>nIILqbn5'ӃAM]q,24t@M#號8sljϾĬp1>"C)\_Z= *$+~vЀ31VuA`NgӭUjgy {r#ch. x*ǔM|-՜B ]ӿ LھڐP"@lV_"qyo8鼪's: ȦJ|0O9En>oh1&fJ/Yg)Uјaԕ,s;)?ahq4 {a[n59΃T<}o-G׋ w)'3.`Cɪ]5߻`3q7̓KRCBx'ի28D5c(PB.?'y <Wbg{N[7\#u˨~@x'W+1:yҡfXNAܺ9*n?{/_tΪq; EBd/}̈)QFW+V,n7cUBj֤XX&[-+z=-b_ˢfBAϻTSD P)7 ?4kmrNŸ=+[')#$S r-v@Tws;ȍmȂaڶS1:4cbA3J6&6ګ. J)ɂL{{yNYqo_Ю!?J g:%mJ^^F9wdEP]Rp]Eݕt52@p 僂h؃ZўӍ\.f̓ çMAj 8|R,Y,I< ۝36j9K(" N&+V*y?Urq>v! z97'sNf_c`.=$S{J\H_gT9 ïK8~jѬCjYbG$298-zlܡ h9Ksp~cGn4G?@Sa{/FH%SrD Ge=ƈpg/;m(pwqW9: `h]Wkz)j6U+>4+w g85J9)q9 oIO齍ݨH ńq:ha0.A [c~Nnu6n!4P&BM%Hmc+5zL~tӫQXl L;5P]?kk4$"q^pb",R՝5\e 2, Ը i.3ҙ؂:,wRTʎp-Tg892}sBh-2 mËԗG>{rP9m1gi\c0ehOEa3+kkja ;Ctdn6i-F75''nP)Vl?RGwUE\fzg׳gfTErL~`wc1"6 wF9{"+e,4?NL-4?5[|&ʺb Q>5YɆOH5`7-T$\L:L'XI>}zE3y B/ LHuv6Dĕ0v=Nxs!NF~'@weϸo]:膄]G5 @!ak7VN ޱRd *pnvFK&uYX /Vn?xa|@` U"sO5v!cu^cN/vP~nM% 3‹aWd:6јYv)X[ި)ym҆Kr7tj 1F. ^|.L\ %k/%-~}E& :ϥּ`> XVĊJ/2d ̑~vxUjV~٦MQ2&F7Io0m#r..>}|I05V2,E=;Pyg̼o 8bvE?GƱJLE0@L"EG/+7dg\SO*fUX @ f@өvU?gF{{I2]aCewPFwoYY<:P3'v#s#c5A)L/kxOE|f}!y@O~nōYMb.-7utp4м֜ -*R[|?Ogv ӲA r=3/'uha0p]+FxNߟGs>.Jk2FL@}hQh_OU +padܨ;'0|@Y ;y/sqv}_InBK?9luFtE5a F5ǀ9${26%gW8D801ܞ۬hYgz$;ܵ>2dxego_y'1qwg}7Տڥ-|v8:Y`:QB-gK9.^<\-f@u[fRwœ+ flQ/Xg4Id{t.%2`b >EmX:BN\|K6[KaI?l(8H]L?듽C&{A0!Κŵ8qjw%v|e)Ni4vҧT0b,Ҟŧ)i;(Qكʼnab3d*d&%p@iy U7;_԰J66!SVѢcX2bxƪt +37'13(VSĬ%QͮdeV:FQ^>'͹dB&mBF *#j2.ɮނ/wF" h1$MnUmqS@^H[|~YɩN@hXV-BB$j9 oo4/Q(`Ɛczߢߴ˦ʦ8`dvJsb2DS^+d{.5 v~+ꍺ԰YqO0!<e:eD\ZC`NKM{7M -!&0X4oCSSRO]}?-dx?}9;p*׃#E1#'ͻ=y*S엉&`RዦzT. wQ"k;{A<ghb}cytÐɫ WnS<3j{D^&n`;!Q70"Kv\?Cl~_˂^0WWx2BYZ.q@j)+^?5D}6Mf67ԬjS*0DƆ϶ђ)^3?SBitg)rdzݘ_YŸ,wDZy-8t{&͐v$(f:€/3lGov3 ;[(1"\Y6v S?Ws ר f~f*-4ӄ- пhEGD`ߔ$#Ô{|`o=\͘u;E']F=& ^I֑9ţX WL3.>ٗyH|IΜ20~BRXeA@sAzoI/=ЁD4g)w/ׇ0`ܗ"b|k<_&#LYMPI=\, 6)l]޾h9չ勓Nȋ!;)z?o)CKٰ.(wm (lEP~ E FY(ed:(GmL9%pB"kch7i±ҝױc2ӎ䚥j& ՚fE>B;HjϸZvU/Mh.CP6aaDfhOCtʵwc$&:$! fʂChf _sDظƂܚxO#,v*ibP{50Nk73( P=ib`o+NQE±%KpV'!#_E:gMBԞZ'eDеlkp Lle^W#i uNv/7_R߃ ˜?C-L(c>\{@<sGP` Q7q!ϐҍjGJFYP@ ˸LGp;5 MGMNkzz|p7$40lA>8j*j$3Y 90XjHuqhSwR2ʊ2 鎄2,GR&}>>Ʀ0~V{>UUf' Cga-pۜC~FU-^Hwzhr O(fR/L7A3]mFrR<ќx*]q:^*G@"ڱi %p^/ ,n,d"SҙM\iCH%#]M4L೴ J%17u|0K392ؙU$(./)ë | wixC o =p{ Di +c "ISY6Ʈ/o+'f)⡊P 1`Xu~HbI:XA(4Xj7#s3v\5~C~B#Zւ .x3aP|ꃎJ|$+!СLB*~ SgFcp$3>N-Vk׫OmwvA3<-U|1) gbU HhcT82: eFөA bkk%(|aǰ+a~n^Ƀ o>5s%B=V)ÚOJJNxlbnTYsWl5`5S*.VqxGJ3_Y>875?Ydmß }ƍw4SHRgx Nô2@ێ8A0={EslOC 5s9"τ1q?k}b[JƵmd{7"Rt ׫B$8ؒ&R{'dvA_ 7˴HiUpkBjGǜLӃ,Ht4wIoy"uVFyC9X=ϴVy6E䃄|Hǎm2bzҲ Je?/R#6c>s^2)(+ڎFKM2J3&(쨞_F4<q'ƌKwOC2Ղ(5VVl%F5:J17ze5-]B&u2}uQ'~TX(cH.yv|a%%n%3Q2''(-5DR hBT>='Rnx cN{{~'eQR'p9<2MYHg󠽑[YR+Njg)}8Ӹ=?b3WQ ͩiԪ۲U2ᕁL·ڢh@ g>`ZN6}ɾ˵ Teê$oa᳹O~”gAg>^c!I7GPbH~T0r:5cM] gUj$rVʲ@^L;4H;@CRpbϢ[k yj-E5tdnƫA'Kys{ƪl$>3kb9 9dS+1Eo/[ ,ztۼHCP B<՛S!s5nk74%>K X˜ 97q;B#Mg Kc;Z'ܣ WFz?\&b)=/IPv+<*|8YyZcYEX],%w<9%I@nZtz*g3%%!)R܁rũ'fD"77J[/vyKrN,Xģ09be~`ܻވ=_m;jP2?W}q1~sD{WLxLMҢ];^zw,*QDoho͇i5l.^Zq8vK}߾UG1]<ϥ t0x&?a>VwWЄq;l0jJAiXN\Ei): 1Coi]4\2Ļ'uᭊZwUwn&`=SKǞeÁxI\MgdkErΒ ˿]7Y#$m%u e3~BQᅤЎ cv1@K(|T=ƶ{? +P쮦=ؕmu8CZPJAytO0ͅǠd#N6~( }[MO[ Cf2(?M@@JQ:D^٠)6=JAI74u2 ebe(ngP';XA+q =v_ִos:&Ы7 H3fF5ElE`$Y  BGe@?2^z$au2eSbkKkECCKTO6v>oPl|I[5-NMr,-$W;(\<*qޙRnwZ6&[ԪgI>2 LnV45ެDL6Rչ҃þ2]#B 骥YlPB%g#9zCyZ+Dj aكgd5\*f{4s4͊-|}t5B$6Jҗ"uw|idoacvT}O1u&Po7ҁ$9»쀓KuyHm-z5sGOQGʁkzQ*,j҈vV4^&$ER/1B͵װls$Xi9@)ς, U)vE7P`K:F2Wc;^vOlrKG"EI+qƟ[u3# /q`L8jW&SX3ZMU殊"8R;c;w:$!!."kdܥ!57lfv?M_n8"7v'N|# O5͉Lsjv885k^=YE !&jVEQ,~SV!`+X=!s wfñ]5l >f'ܲ|## .R薅VpHפ;{:{",:eoaW>ny1J'e@9Ȱ%vuk>E=9ϐ"G .3f]'JLOPx]#SD,X^n0i:L :/Uct&HFQG6UK i`vF: `WxbZߊP,\C/||{Zƿ*46Uj&kƋ [62y I|1B0$m[J0Qb\q\CnNFhLmf 69 D# fY9$ߵ v >:xXI^z9g$"oKa|dIL+`C@0 o]i0p-Q6΀B!-jMRdO䔑Qp9YqEh M{a!>~9a[Ezّ7{Kxyxh`Bސ<5H0{ԟ5bq"RV4fvFy*;E~(^p ܄j6eëAS%cWNT('oN ͍&\}|z:Y&j@SȈconԬs,vRi/%!w oz>BË/uvwdFm2|bp@zy`!p6UxFRV!뮙Cp'8U {٭RAm53! ~k]gtF Xm'ˑER \)g0Z-#VX\q7j" ХfVR,hR[OEP)khC5N!¶ǡ˪Q:swan 7 reU)"$5 !dKXȬ?y-'m޻`,6DaC'p&P_G%A0dr}gXAke6vTCgK-bshq\S aʓ&ОOL߭Eb!  ӨW+frxԚøgH h]^ NĔ1aү `S4H_#/9h &z0)M6}rqR?id?1L1`q!̉>3I);{oT`T78]@< \ PxoZy,޿xx*e\Un+? ⋯2ߠOG1gas8,[Ωy1L|t[%Y|cOC@msv7ֱزcH@"٨?1>!"£ Bba\kKTDYA< Fb}4 r-MYA$wEKN|*%ET>yeNK{R 1@?"Bі?J[R+Cs}&I`&.Krk+vAf$ l$k+:9֋t dT baq}Y5nSz5|? z AKb/f< "3JZo7{Q:VUͫбDצP*̻)/g5snߋ`vui"<\$+C%PY?!x$33\G[ tL.͛ѝzEiv寴DJrupn_ .! fNP lM'>no7H܈wf1`UKP.%i@x?cLKƬ~8ϛ6:l:mR`խEPG=Riw#H9|n5ǭG‹5= a2j(7dQ@vdF'LmVqA`3[OVZ$նDB67(^X~n͘=H0ZQNz6b(d*WBR7?Dg4WSTxDmL81h1|C߼/0~g=j>+>>4 5:Fz.o'3S$ǸމRqC5EiR_Jg.!s6wg'ӤYMOoeS+n^7o%h#:]d%fBs_Ne-Z;6e,ċ ~#.BF f 4Af®1#(OQE?]Crluȝ;(3b-.m aΚ'72zZRq"`Q +|%=.q392e0k[>D(g7Dz T u^).4y Y*[?9g%ARm0YUY/hT|1WϠd{A7VhxDz_i+21!_m$3FM.%SŻdj2-3A. N;+%J/蟷MšHMpbW!FpabMS VaRHw5A+!i#+ TdomcD>c3$e}]5DS:4+C8$)YϏp&eD\#5ﰸuuS3!p z.yeƧ Sf>,p棢9PYNAL.G|| 5Ӻ?{װhfSDMHOR+|>k@iͣ5Bx]uTlR.-p.};yq]V0|?/j8 BF{Z\iǀ[euHbًN i{69!3FPv]gI;'؀\%^s7^vb ddu4Cto`+ {;*.mJn3lPRɀ,ޒ4Tk@QV"]VHY\."r)kU$ /]pE)9_| ioەhU$vۓ.:w(ND7邗5uDMCC{%ٸRs9N'x%!L_ eˮOMȧ  mp-"]Umhw\3̡/ pGʸjakzg(s=kE=p1.qp o2mh'5t]Eޑn?s+j ]cɟhmUG^oq[#۟VȠVjm}4wRFkǘ82d2J>Y_h8,@MT߃!JglLyG; ,i׿Neɗh2bqa?\|Y ^0:X(=4.v͏E6n } oBm_]ZLXquJSНU8&I bioV\8_!f)>h8y21ۯcī7ݟSlÊT#qG2Rc^1503Fw8A`<L=\Ǣjr! [ΟW4&);\Kia(r$"D-/˝i(HfJ ȚN=pp}3cWQL GVr`m( &QJ;'+P)4 p {+&L/nLM|-vH'( Jy$~;\ -d&ñXcrAxKW7Jf6*l~4'@FӪ4ljhR~irGw%fs/3vm?]X<|Ae;%>2t]s'iMƦV] }'~-Ƃi`;Nm N= pDh mZ'fآ MP<<{d˰z1,׸2otG[ T"6=>JݥS9s s *EKc.m;D@m WԻ;.EhG[m}{&]_qP!JD^5CY> p&]@kwc$[^KqmR #klcXg^lS`H|A4:|zWz ז+r}QHcF)K8Cr~m&ۼs]-'MCLɠyU7rʛWd`J]Pt4̨R%NdЀrL1.18ި6p0Te1EW^GӑaĆln.]üi( g-bN~fT5Sb&@"UŧG իi ]&rLCaH?//h)z]RiZ /GmNV`9g+ @ufpbL--&UI܅q599 ՙ@s6WꌺM4qJߏl_}#7ޡm(8BL !2bwY c~ aډ*YKSq7S IٲG#Dq4J}p#]q0JtX gZ[IW¦*_#C(ޅ Έˤo%V6\@R_ύ5É^*VpWe a&9G߼} 6Eł-Üx"=U~ؐL8Zm~X{5|k4U{l,Vt!t?r`AiIi+2$PN]\(Hqll>єcu.gFEjⵆSz+^6M=>zCSx5 aZoZ髞GfPh1CXu;ɢ 2#͹\_ҠAzmB.udUG-Yq׼Es) ^iƌ%tA.f`.tby ]>f~8AЏ_?$%6BL9y,(Lv=NT݉(U>&@vbOVn+"5.Cc?ZlK\QFgUv~kE]-}7Dd7JʍhĢ5l);?H}GVn/y'd=: eGcڬ_KO$hVWA aV&Z %da+/IsuHObM1]x/U/51U1<ʦ%U;ɆGKOC'nMZ8<i* JԷ0UfK^s QۈJ MϠ~iMƫ\QDC_`HؒT8E~2cꜹmCSVL GȮ8s]O |O.*2J.̱|d a G(P8077#Go(!pl#o$U[(M跦i)"8:s qA'%4j1g𻓷5=-M%,j3Ao݅Oyy!n.N/7Yw?T/Еɒ$qTne5KОq|}Kv.ϩ7z/ ܅;0G: hjAt!e[OYgyidƐkFŠ)ց>a*]MքKtEEN9~2Lܤ+E=a2s( \7S 2~L$f z|htjt7ü.k+GDK y 7:^j$5pӫϫF>`z(覀euZ}UytJz}Z&m3ƹw']=c[EZ9J@p ٱe*,i"rF`+"fsfVe Js!*2C<ݵlySt*]dDTy^H.03F'3˹L!^?zُnw6kz.lpR_0 Tؤl E<*fSAowj{Rb^;S{fI͢' qMIVe١#mMH޶YYe:]SbW_b 8jV ߿Od;~ǹ%!l%Ѭpߍ)'@fb_7!K9(Z{Hum_ڊ̩__[ ]mߖ4( B[~( ;`n2cy@JbnޓՍH'_.~ry2 ه ̃)rTXKPw\ !+*VáZ=KJ2=@}NkGϾKYBv=r}HqկiH-8ߞõD$k HF >ڢx`"c6PC,uv\=פZ-Qar׭MoDmw٬ԏ\[Twc$aW w.nUq_rZBUTiTyY// J:KalX,l#/qɪ+S^|A&庇 24#M1^fnٶL3Ծ&p"8\/8a_+mZ~qhDe+Mc_61|%T79tt'zDTjގu{ѯV=~=+2>l%#ᑇ6nQi Zswu;3ѱ(\V aA4/ZYwHPv1x?E$+hV)ax-"PzjIl?,5=]]v +*~ &4,pE6ݛ{ȭ↽u ௐ^$z(b)W4+aJCu <5.}me3Br%ze[a./)Ї{zr7 w݀) N s:R$Uc:>1~](]R:ҭPl Wmyf~'f%dzN8Wxe͓)։'eLZVZ;P"DMfNh%Ֆ6Im% |q)s4%]^t8 ֦8ÚY.rol8|I1'`{:>Vǿ3ĨD"9&݈Ľ|gzq; LTjp]4f"V"Y^DF,O SwSzJǎU7!XKE joY9ܯXjKl;[MQYi2:Ӿ[|Q(hD :،q-H}6~ ɹxIM?oV.CI?М8Jn}K.ToxK F`3v~cp ɑӥP6Uzsx8Ul쉔tMTp\3b5-T工( qw'ck]kBȉ7$i7/,90Zcs":(3(,=[0[BWEѼ(>&b޴ۺC4y˺BWQqVUp$z}6leG2GBi$4El"eS"i("yebvٯK$DK%`)2v_!u)k9ѻ,@_:`,4eka7]A֍J FJQ4)Yhhx0CAر [7+#:XQ;Ƣ{ר4!Y>뇦 ~s k Tx_JZTu(:[xno%)S's^͊MN El| И{`W [ٰV4A*x*Ǯ0% ̜nM޽@F!靹-He{V e]+AЃn#CVNx}7zf) 2 yZzSxƉ:&qp.Ƿ VUt؜Ľj ]z1xkRw>G6V)v+D^y_(!5/P4+# =%<$|hs:%ln"Y::ndC|kHS_p0KlYB0mFfzmY<R(d11b,7܄J+) { NHUaIMx1^y?/ Y i%_ ~|E>`u ؖhTHvOe4~o$[a._7Jl ++*Ϻ2fc,g#k4 tؠ[s&G \lfouTݲ!|ުO4/7aOU`u. y{Ukɋ=]a^P_@U Vpd=җC@[ }tbp\eݟ6HRԢt{ߩ^LvTHi9c+_p?+c$71ON4Ua#M)5XpDb=.6.6-{AgSܠU,&c7 T7aú>1\B~>u-(&j2-y%+nu:S[4uts8.16Ü$RwMmL˜C֨; ҆z ƚ嘇.oeZqcJDP~saJPߑd3V4']OC1 j$EsU5A"uT% /fM&-ݾ0lw['[yՖª$=8!4A"Nu.3iw/V{m#d@^G?~\(~fָW-.L[=M1KqX&n4Nb1(ݛ]Z;W W)&%]Dxl|?a%k89z+* 9FG*%lx`YhѠOw)_QߧȐBP#O=u*\OiaͿE$pׯF($jG3O@#s__&-)5+ܷT¢kbj_yEdi禦;9HGi::(M{>bZāH4oB6.ϳ#tr~6'X %cO^'BM$W4A8>,&kk؋ qSAZuFKqo}4`} f36ا՘=Td =/x}P TN@`ꐗ &:ݟVUe ?!´uәnj%) H;qA*@D2K /ny`kUnyG~)F;hr Mo+ *AZc:0V*I~ A +.'&9K|4=(Oq*T}}W F+ 㗓Bh>R Ԝk]B%úr;(ˍnA-ݸ7Kaz1w}p(#/]p٪]E!dSF]Gq bӥ+7_@A8.̷ҠgK:a=ʞiIN uHyEƪD]fsqdoMZhYS 5,\~rX_ll`0bo4sr "! 096*;W|TL5p=}b.B /+7QnهICRlCEo7ඍ0<1 ``*gDe*5}&gܯB'rtjT~m>>+yNscJeQ<)T&Pp;6%cabh"i(YX*DRfSH.O/$-Cǃ5.D;CƄluč_m.f֗xMj5z ;WL("nz\R{&%P <ѡY133HrR)o8⭶iH,Tl@O!;TKzRUOe$\%0|Fp}|{jdU)nǣFNMԸJy[D@iA9G$=hg45ޜӺAXX|x路1s@1uRhN;%6QO"-Jr7'Y*ýߘmf0ХCC8m}_&P{`'GB3ѯ[0 gP ~-O׽y]ݍ?lH3Q/IxmSn h-Ť5qk֥\HbZMuoG9 ͭKV8~cAVd"2QwdϹ=SS9$agR/n> pɔW}O`wQ"6P[E4[?V7N KE{`ݵ. ֵLkSv+,{#Y/{_<9ts ȧj[a5XwpS>0ώchE&eY5,"9OC&fge݌oh jzJԄVdS !72cx^qY-Ry/>f]~=zi iH@0[ВIOӆ&N+|k]T'8 hÉȲPk\%iwP=eФ6QǦb5 ěx#愤wΓ'13ZbO퓊+>FWPO%}|_f. x(&h/y,[֭Y0{M0Hf([^'bzceXzp5tkh FbZA-L\I_ONSpD KJl2 @EȾX;|˱쒅n[UAhjo#?X1U*Ha$-T>]փlq2K]A&GS̡ }fr _צG4HN"5JD#O~@?Op>\6Fx}~ ^3Z/'G8,쾓/T5_>:k[:{Pin'l 3wVƐ<>-~cF0&K}f5&J6Ҿ(_dQN}\P9d)%Hc"R.&kqX f82Jh:#+Pа.G?b:`BU `U =rATi*#j{$3WD jg1MR46g0\{,%:aorrGy7m-Y, Kd[*b+:D@;( vߏϴ %f/( ,g\M21l8gP4u뛙MTJW9ÿ+|E\n J~"Js~Ͷ,),Ϊ,\ WO,s q,:Ip] Qz\kh}]xnyWlzݠ?A}!{:'2ai:3jDo,F:$-^t&/F <:zqR|J[4K TB&LƆfl=r~&bX6rRt!?X=OXEIipe)c, B*2+ }ԥQ38mR |#{?d8ܪ2"w| hJXqniI%T\ O+MMV/* VuaA0Ȁyvm _a;d>ʝx@1 )k31"wa2P@';6=S@ط}k4|g0W a#Ud=CWwp#ƈc/`kI1;!'j zLW0ו ,諀=.ӳIJd53w\$bW6)a;<#\]k޾T3#BXA;Tpp30nm_G|_t,:B;E *@֍҉ˣ֊pGKa?#utŜxfW"NI@z3pjJ##p5DA5]ƈ|ʬx1KzXK۫2 /iNZy"6CK0^ q/28^l?Bu}+ЊOţb1ȗYsV"b@4A4243)N4n*Z`KSp2BĚ#0:gPNvM2Dy]'n0ܤ!}:S:4rqߵf.PoIl>ޥDR?o(VH@CRBNkDx@ݽT6c*ImfW'*a-Cu|И llCgnԱΩ)oF4g5PTh}t4Rè]G[1^ҋI+9F+􃌕 TSo+AD\dfC.B:ڣi0Uk3mI ]V9}ΦwGP iL(Ka8(߷YuŎf-+2IG99qs!UEb o`@nDߋ ӂS78>SR_zNjhŷtڄاkgnȲ,W2RFJ!gΰ;;N# %%PaB/$3\hLӄpdKϳ 7BBX-_gW]9D:󵁾N!#M$ןJDf=K(BӨ(OM4Tos4;2zpã)ۛԨ]trPߎA牍ٌxw"=8F:NNrM9oV*CespfӾo FTmR(+Mb~P18;FG@Lke (cH9.Kz@-D:4Qs<'3uW蝹&c҆by `l]kP.IHvlS}FͰ]^lrVݵg1fݫ}I bAܝ @ rmaSYKqF߷z QD(pQmaD4J]v>FS>9<@ы>Em1 qeyDKА}JRrW/U8;d㒪fD{N Lrh<껆 mUM/uC8JnAӇA_-+ pe %EE4F0_v ,|27mҟRM2i->lʃ`U`EfA; 4I GpH:ߟM)os,L9S;t @[PɟBHʧ -CoMu t|:=dk CyAK+|xWBYqU9KT0ǯ|rhOnWq^bl`uKсKJ\WP0Ѩ-d Q`mb] 9)-*9f]9]Μ/>fJ{9 յ?͏<^Kv6\!aI{ Q<;>t D܍#tXu׈l`QۏsԢ6\fG}ڽD76p2l/i{⿨Umso7`SeQu]/l^$[ZT-,ԯK[e{5Q}Y(~tzҜ]\, qě]O,'(dLeQcx _'4z!f+ 8y}hkwˬw $b k+5ԡZ>V:ϳu]D3qR=J[rwC EOdY%5,zItuhZY̹ہQ-+bۛJx(^bA I~|+-ȴȰ!+)NeLd:?5º#k\ 2V}샪#d/kG#r9լ% v Gz*R,eI 4<\>vU(Ƶ*6SsrLL uiQA^]z(7`a;KHV<0NC3zY®rJ-pZA%kp^ ‡i@CN?CD}r gQ6tC!D??2$9L\cuⓗrW=3?{Bd!ɴ {(=xlnjH+U76P}s o: D:WT8& VچsGGLbT~#S~kZtLk œǖ9*IMZ4f@A{YK} ;q`V~$kt# aq29Vk4zIĶKgXlaӥ$` %6{eE[&6dU܎@Ym1؈uW8$.j5o"([!>D4Z}bTRx;)jẉBz?OKJZB5 Zz6p*@8(?Z ŕdM݀I#JΜO%GQ~[(U4঩#e٦!Vd(]0`u]N֢uJia9@8HBy/RrV`qmkm \#vb",q"#H{/tqԾI f?VRMIH17 D*r#~a KM?[ ɾ8@A~*tlyc>-g֊yX߲Upj7&1Һ/ݷ#n;QD|Wrzmj!soq΃L^" 4^ㅨF1hE0/~&Ң[!{~#ScЬOn^w%wnj{( CL4 : v0dkǜ7zA1s9$W+]~을Y#NV$ ^SRdZU87tcNGF#ta_^`dv`/ޗD貽'v |jJc*!\$16̘ EKY#6h+ըL-a't lOVMs LC?%cmvA3ts"ΰ&H?D6^љh-%V:|B"+v2\> XqiPF7x7Xܤn9\]U.Z¸FBoD=k b4S*iEgAN]ձjMcV!^ }Y伍0W ,ly|ȯ[Ѵ 'Zז,8h@E_H8r0}G#Y6SnoV8EK&v%L`EuM<(]dn V}VwQr{EZ+q0NH=;x_Ԫ<ʺu97_5|0ﶚI bLVS98VE@tfUe^7 H>1e0| j0%Aˢvt_v3zi(u[HF9 ^jK͊6>|{ VNGmL?D~T mPj6E?HІCZbJ jhXu鹣NRcྶ=HxP건Y|K&tLy#} BkĉszwY<\>]ֶ|lu6D!nķF^/=;=^ey")'`0V鉇 B7keu vꚿJe@vG37n!D5:Ud3?H0īE1V.ϗ^%阜 9j˪dU4; %2(f"[@n/YI~* ʼnUMUQDڻxluyW8 dl1Ahh |W~g溨>3B7?uZzfRߓx,8p R?\2J]c`SnZ+UUu IGP޿A|,pDlc#¤pY7}oV訾E'lqh) /E-bdًмȓ}U]Ze˽vgN.5F-we(&h hm%4\ t+[ìY[!+S5x7EI&IyڝN>V8%֌m)N;׊[.֑8˞ 04Lg6d$`1=€9xZ c^(vq2a 6Pd$L mKKUpq%ÁMһ` cГ7tx.fۚe9}$ag- PP&eǷṱk `Kxa+94;ޓ*&a.Cݒ[2PHP tFzKo dD.룘mK6Z5?OKbB>{4=hܣ,Ƌ+/a"l nJ԰9-,|HA&RVٓ|>ӉqPw7&a@϶42bݚ>0,ǂ zkaYJ9wU 7"fdhոAqUb8 wcω9$t }iME r/[|ܖFjT˦/2!DpyWzٲsʘ:Ǧ=b#-dgęnjncOȪg_/]5"?A?1sҡm'͖ SqPNb&XLW(̗5я5l)Nㅰq^B%WoձE1A%95Uc P"ߢ.KFXL| ׬RD2ZㄸAc/"Jr!~|ښ;^mgZ$aYd($MKb%N ,hq3/eMh4*{DDO 4CN_H<Ԍj_TZ`*+HVyQ@ѕ6wU#}OsaIL5Mu ׫t8t#^/@V^G֥,z#RK-mo/(\}(6f'4Y 5 h<+M+`ԌVnL%َ U~(nF0Ѐ sZŔ(&H0 Q7J/w3,|,[lKY u4;'׋$ۙGZǶBqsDkKuЕ@H޼mET-9?b3 !(%.t*rr10zκP˙S#sKM+Kl-l>N5ym8ݩқ!KJIuZfܷ\72#̻ aaSDw!L/'KKg? ?<54S/6\ ʈd#5G"/"ODZ!0=赂svIpyE^͖ ۰Nw- SȟO{PCVjV5QeLŹObY*8O0+A|ogA= c>c{ikm*r,E1) y7Ă ҡJgLY*`]}@!Ub/ .|BpOJv?;.fG5-E~۸hR>R9qP7V!1f/ꦀtR@@霠S_+يD%^(L1lDS=\5nZrl]n%PqkcaS?M؆;w@3n~]&F6pf+#O:᭥n+Xc33ṋ_/"-R-G[8:&4 ZC#zٛ7XW ? dp`ܺUt t7L6K|N ށ KKK\3֎H(e3hT[Y(@Oi/ XLNƽLmݭ|Vq s=Ţv,L縗k=ą;`g8LsL3l,+2XK;ۧ8>J,2Ԋ '7T3\ E.4>%ϳ\#0(ebòve-'a[$l4O\YwLߞ`WR@YfCyp"`Xik]M)Q*FW]bzJ " :c` H8QNNn^͙h3n"Zqϭ-c@ˡ!Q\a %z3ݓ'OmSZ52#fwNa? ^E^(c?VjEGIJjGvZ,Xw]=*{m[#fH~@.zhYs V<$E"\r[,E9W0mFzWD~jR_PI7}w[%v.aURȈt~)I9Pfm\]ej_^:Ix庁-$bV-87|7s6!Ǧ?T</oθ>y!*E4n!~oqdJZ l]:|{ $Wzu}Ca8З|AƊtp s ]~c9rLУ^`RXf͈7Cq}J *NTgYjej r&|OwkOd!j0 >>~_bH Mhd:ZJIa7+XL<|ɏKxfHa2_*ႭM~tnS5iүZqᷠO?+D|o:3V|z۱ naOS"FQi!=$z Cm1\Qs'lom'$)/Xe;B)QJ{sUtE(7? PȀWj*~g;GrS |v7 X]<om4XjBShLd[z4##9@֚:j 9S% ?pm=@!Y6o3Z><MVʭ-BY,-9qZM t7i!pWu3@y{ܱ'W 24e y4N}F)GF\&=zӱYlcT,].2+l葕D˨kzcލ?eHNy'&m]=2e҇</oX1?P-7ߌW1T AfM& 5:="D8?@}c*K ^fʌ\) b."̏UҼiiLnt+;[9bNBԔsZA7snl$#O2},n`?6?L :ʚ;DWtՊ\+ڞfi@MQWiiE&cs`XJIdIhԉ kta)^ų;‘<@8ԬބwF 0.8~V1^7rh42+$XqdF'R#B֜Or0M};,i!?mti>O})BSWn1;%z F5Ǖ2✛ʼSW)i9{~|Vd5hYTczkdIn{3U'{L[gN / ݑ&4_}jlo(iVw性eaX'3/!Ξr4rv֖U|Kg9ދƼ1pј-a(8 Oh}={ &DX[%"]@)hrcF ,ݞA+Qǣ퇻D +G%7 E2d*$܃ʤt/S)Rߦ{evXi}1&&n^3\;XLEZcYYs u%Ԛ)dyJ@zk6#N*zՋbw*RQ't;75cZl?n6z&H:LYY" ">sD9DBX H1QOi2eY-zP%`9:瘥?y`MΓgu=2-^.њxndCŅ)~a*^Cr[`#Xq%LԥOzsVQp0^(- JuVJV:tJ޲p Gat8Z%y }q*t*xvD>e#8*Dm_ݕO(ɞ@Ǣ5CP:E1SR\7ζW߿P` ]K&h5cɸX&4#A%z} $SUo$0+>A"OMB)\$B7ҠW_vA;Oi|~/=ƘI:AmqKFo8V8g;\]=Zlv;Cz)hGt2QMiP#"vwP;%r*V9 PVt F1+q{6Oif2x\jWCD&2_ll]d$5i'֥ 犙a-K<_Hu>[S^`sY "Q3s&knx~)B>s$aL;$6cNչ]T\ZaI5\bysu:Խ,eRhb_gCqc1%-4O* +uR!2@E3JE'T-/'vI\ц ;h8m-r4 w)0!)z:Z0bo4U3U Jنg[/y6N=@<@0^z QiB,{EOxbP>_CJ^5WAO,#k=iXFpC^6Mfa LQ&f#'5<>.M}Yl!a}Zg^h{5ON{g+f&T q|hԦ\>ȿ5\VybGsgb s1U+mwcolu^舫ᣬD!hD8k6MagXz}w76d\=e5C7*]- P/^0忐h")ԕtWО E3A0WPZܳUBD_ܪ˰"ge@:9 a$9G$aL׵8:Vx@vQ!*$0:agKY^X%7M8^Qx bQ(TLQ2r ǖ4caFze ZW)[0ͨІk]=KGm#o~!*%Yxݾ\F\;9qJ7-P-Y@X[ 3݆|K9zu *!B ՍQMу(/u`zss4c-݉ew(* kԢ;]ۮ{fhh#wfwMK:7g+f">.VDې,9W!#=Q^/f_w Q;PrHdEi. &K]sAdZcЁa2|{ƅ!!sa]&?!8['-]bM.iXm#H"|v /!~'2K`@/ڂJz3e#)1~SjRR X&Ob={iPgķ$~2di[j 'VunSaN菕,G14%]y5[F[56*U`~_:}+O?;-Z_` e٫6Џҹڥ>X߮#J|YxLVeL,6v8J) ڔiC5?dRA!2s-zH2:T/W7!, NOXEn-zT< TdTކ[WEʟrx7S 吀&M࣒]b,\Umz.|~\t4'xھO)Oai%]0܀lZI; 줮Y4PT݈d?[ -h >8 #/>Gإ PIe$|%ۛU_g<-: W-ӭ˫, ǰ 1|F6"e:P6禆 \nk T*C{chJK>"9gl{$ȞJ V`6imkFoR޲9)*2%f?Æa8 fwmxlɂ_J cL17*j;WMMM%eox]NH#~ig [$X7 A;LƲR*ފ:K!SAi>KTf1o|wxآ<)kA {ǰj`>PIZЫyF>i<$4Sdo5!WIΨCwxPhsȴ MЫX5GAzLuzFtN~UC84z U4ay ;kD0Xx>'FDoN " m}#(5Uk^`tP&!%aW~<1%#諭Q6NVuq{OX y˫U<2 3Šo4 @ 5Aq.$f0Ā$D#!= Criv/O2J*ɪ|o ȻFkuX);k |;>$ؼ5ln'=ڪKy{^H"#t$t\:y{`߲R?4AvA`OǬ\P+OlգΡp$ @wाP@:;ׯ4[e%J>29|Z, 0&FIfg!mG9lU7ѩv/rR]XvhoV;ݶZ#ɐu4xNB:F$#rQfɺT 0y44+HpViq@1P\'TR n2/Gj? %c~%/`D}HmVy9j ÜMVAϵ||#f$n](g2N\)?X??b:{hNM fNl00xȰ0%ђmܲ^ A56&vDBqpU@`m/"¾X>>u7$6 ~HoD Vl=:Ep`OJg Gi LPvFEOɦZmCz #IuLoX()fh04<;3o̠08qK>5i,'k 8Zoi%';Kx#E'7Q W+چz%ƺs;>qy]"ui*AEAΒW 9ROag,Ronox#nnF}u1}&ֱoA:v 7r\6#yu'?%d 3nշ wV?\ʮN#}ijpPbj7h" F,iomqWNNV)s3YfN/== 8-#+Y87#򤃀ͬyg Q/w*Y)T@͒dUeV'}uqL\0Fb7&v>՛Uo8Gc{4DFUmTGu_)T%DwLW4Vx[⽁#yYC^8H%ŋ.$&(VtkU1ޗ/8į3\ wNo`_s7+L /Z1x⥦ ڞ%Ԧ`Oi'zIa(.^{! ԏ)͂x#%DRk9MA< ZC;Ӯ* 5K-0ŖӊQx$XKH+߷o:s`K3LRX riPceWN.{&ajܟ 9I?~2_I1\#|:ߔgg%Cc{FeON75bJ% ȉP *i"?D)3gV4?ZLL PCw6 =@C3}nb0@yEono**ױ! 88n!oڙ> ==;|,?w_\~<2iײi=35픫ꐷPU:Q1 YZR蘬ciՀt`ʰPdT'(+G8N[p{5}SwVg}]FrK ̟$ѱ-"ZNhAM0HeSZ5Vɍo5wNOo+ V=;}ow K` dP(gxn4a|O(=`X":*V[( ±25s!+9h}q,*pSW45%Łϵx(O(N\H_kB?aUm@D*EIm[b[=?sr-(qH76z${Է%|fݺ|P1m}L͒58REdj676m6R1P*B",5KGsA6?WÇeӐmd5I14kq:baNNqpTD_VC |<T? 7oB 0Qcza =D`:Ƚ408ImPaMn5iiJe[.S9TS9a@\` Iui>jɕ،@Ts}zF1Er\,J2`r(G_>me+R梏d>ǿ?= l%+ dz@rͭ뒛 Q)G-e|9.տdt`ަA"UWm*6>Q9Q,o.K? HH݇:.6W})[?WAbUD`j ٝqRڱ| OM &0mnQdъ'="3 )Q]D)-bc?O-?ª.@FxSjuѓ#K%mV$\#Ϸxn Q"']yD:2-qxWSDd{$(;M I.q& .U⨊[pD 7sh<37Ӹ֎}GlSzwԂ߄낉z.)dצԳ1Jɿ9-pz ܣ82#*FG]Z?˦ B( ;zfK;1V1L)4=}Ӧ#q֓d2yȋ7o3 HG1 *K:9_"V`騌#x/xCMu7 j,P#*&eahG~JE*9x)^@H )20&!wW|L+: ¡D *Mdlkӹ =*ijw_+Œj>q w;˙ObŚ*O?j| C5j*ǨSz@Kh\4K}oeub_!<9U_ʄdQ0՟`oJU%?\u un6@5z3>%TRn9@<;Un\Jͺp@R0gQ`%꟥H][/(l\*>:RSbWOF-RCwկ R>D6Nb%Yk"~yhBO 2b#Wl0c:7SJGtN]DXY00~e0!r|XUku.p *6`Cef|mA.ײBy$`FӅ|͵8b0Ev$;ufń0 ؃$K\ln[;u(/#wڤq@NOnu$.V `a3#^D*?nogIyNI( Gjwb;U6cL)KA4p)ض1\4OMI'n,>eٺU#' NP TWPYLot|Wwz,,.vҋ¹tb^z|H)(Lj =ɂ(2_Ϋ/nK.Yg#? ~JbJ,E/捭"wg޵C5=q䦴`7$b~B)$pLpHb8o=M%fĩ{= VwD <-i>gDa83&vrdo2g}S*K6r- r4>7u_K}{A[X9svL5PЩ FIH8i ٴ6ҺAԗ9.}<`՟HKV?v OwbLf+368P9{WUW,ױ<2_ dABkCarFgGhml" _TԢYM gρwFqۤD}i8f4@"4d#244  j*IkV]M6Oq.-O>r.pևV ̕?'K}85NU#|!*tfŽҩhߒw37-TreYp>|òe11[LWQs jx6*v3ί+|IModkTPQmrTghA>g&9;8p k4ZEK})͋)zXyS[OI8l!9,1V+kљM7ovYY TɭUU!R CۖɊ?ʃI0ȫǹ<e~ 'yƯ%kU̚խHUJB"14v^Π$S-cAоLuU+14*ױCq5Mpe忎.s0:e⿌=c1ւY1L{)OrMuYN7wsxGz&YI+\,M&-nQ?,͒S^z]g ]xucu`BSzq8yy!}iH(QEIG^ (VChk&1(Nz,, GkE(J G})_XƣnNWҶç@)@~QҸrF0BxR~tw14@Z!,O :1ԟ ,v\F]G$oPn&E79YgøA5Ŕ7 "6tV8OG : Ѥ zvFTc2oLb|yr6!zBJ pP|u:Ittf-C7}3lLK$ѳIs+Q]Dž [J`;˜>$mE)d؝ֹ@|*"qb*Ans;GBweb7㣛Yԗ O`Gi rƁs G Ο쉞.Ͱ 's&v?/eskr ^ mqpy"qS ,s KsVIJv!֔pfW15nΊ׷{RD^E^ 3T =c,$XX\R0Vlѹ3qyOkZKd9TU-cH=%yHqoEAI%~8vÞ]]6:THG y[Guqo z~?w6Xp\ȃ= .QfZB ɇtem@̷[8 9?>L׎ ~íFTl#Œ94٠ ])$RljpT hN߂%ձۦ_MXcjO*eHȀ_˃ĔQ .+n7spYM CfŅNYJE^J}ݕ3: JCC8LòjCj:'^F^aPDRF+U;> o]5;bdi]^S2] IJq-U{6zhS߉-h G! 4OZ8%"؞@u3 ]rOicVʨt!yY54SJz6SweӖb;0|{]{#U pkl6' V r!k[Mb,BDGZ|`&gMLF#rlY(xp= 6+^v {b= K W8ny11mP@:m]>E4 ])+-.ߖyD *0T.K|rp ѐF!Ud%cvyZ:{B> hHĎ|%(| 87qEO)P[+ a58eG6c󼽾 Wn`.>C5Vo Yay vkoQgqۃL8_l^XˆvwĴ ٦fLm.Q!ǨO1IRSUQ]8=Úo3zX.YMaIE3n#SNcYr`m1ɦVC lpBG9hz$qSXQ0AiR1 Bjӡf_Uҹ#ETd="3`U~mRhk|clit5T?;mkfhG2xa D1R ҩ.Vm1Wo[r DĶ0CzQ1RqԹ޺H},K{r a) ؀ρûsH%J{H=G޸#&J( yL|4@#3R8Iڞ8S5cHk_"[*נ \yItδ{ 1Wu EatmLj3L.q[j ]c7;c.#Ì&vV9a%UԾ%(4ӈd9cK}PPܿQ݆B3Vƙ++,vܜT\m:S a"e6Gݒ;:l0,@|i=7&rJTKs'&ZZ1w<>Z! gX06"a]&3T(x%`G;R؇H[ǀR|/gw(F QK*f)|5evBV#a>IŸ slunszgJ:6<,Cĺ(QT<h9uU*RƋݒ ˬs $}!! :2-Dՠ ڂ|£SSI]NSi&.4GfLOk9'g+I1RJY~ UR .DŽKS}yc\9< ruuBo^U`[[aPLuph\M&`8Ƕ!sy ԟ#$}1h&Z J=4QlΔRƌdVo~>cTra"RYڲ9M?ȯ^sjf>YtvaPTޓQx3w~:FpW`⸄ذ_`]J &kY9#Sƚy( g~u҂0{Le3T?d[%1)+!PH\±"0-D)12RB eHN'-}b˦BN,9Yh&mS~o v:OS W9tĔ(0,M>*=(HՃqFxr!'|UVY/B)]'$lbէ*+QM6CRӔ8Ku{)fO5o2b΀0P"_~$p{5Y E/zioʊŜKrKИך8pkb>ؤZdVDR ve-Mj<ʽngN0ml*&Q5C/zV*+ U* AjIORɶB?uba$PqsJZG B!UUK{3!mns֤p4Eнf~${B#3*\lرŲqrS$!.f0L<vݑE0y,2c;1қi{ěo#É*\%Gd$)Llb,2 (G_ޜ(8 Be'$?HuU}?Ew:wR|4/?`<;fH 6i`,>n uneCbCO :.r|e*>ѝkѯP.x.0d]hLwHlJ |ntV%|-Mkmm =w^~=p8.:jo~[./a<|mx ۴<$U7{jܗFJ(г<%w~l0KcU:Š]Nm0^0] 鏶 ?|3U/Fζ\e -\L02@/qbz,wO\LAt'rJs9q mEF5Ȗ u%%nқD AkW4mˊ&ĺ~ w<{/|3 PZ̎TXXP10*BGRAI6;n;l膰od]Pq9DYT3%X.+hE6bZ|4T|!H5M}]B"mfYO#=)gؘD(@4 $Odߎ*J 6rы ZXǓ0,.pmr e}Dʹ v]PwbUpʭq/N67O)}Y77#yoi#Pv@INq o=gM  g.-N|Ze'q/MAM)0Y> Eˈ|]~ :PȀq\V%a8zhb]\䵙d] ojJ})GTvӓT 9o4C bYa:Ƌ/kag;N a8Y` j8t#֍ C;F8ibUHB5G7ֲćk`bD-g!!v?}@™~Vw[ 81eJoJ6-|Cdk wS0O>`5{^"/KL޹7Ü ܙ6 e[%Wf[nlg[s=~֍1L&Wm FJ2Y<ΆܴA'v5nj*Z>>ӦLW@5y"/E(Q sh;3U@8n\[2B31UN>U*8z֙dРRw̨! &dHp*L,G+F{#D%pQʎLf;)gP 0w'wnF5^A#OICanȘ{ 'Tunq˚n$`"geoz-DQ*SAս]_N,.i7ҌdQT7XuM #AKyKJ4.KkGxj"*?0@iY^8EP{o:1lU %K{}do E v}X(4{^ue@s"??ndK6̵ ~mScH_;,2}5Fap;" Mc%nWpԩ Vtp1(ax>+di@=d~mFPGY+i%F;Rv>O`dF)q9jLN[pthnca!Ƽl@ΙJx+,)"t _h]K'3Tw0H1ۖg9]n$nfN5x*χ_ܡ:C, ߼bp2BΘOoda{22!? %r "P3cR@?-h(~睉6x6X'جO4'y~İq-uFVN stF(lJ*}Ċ^{;GRq/GR@cejx4n"x~NY4R^`Qv.SHw R= D^~ǼCϖy՘_5̛ژLM` \iڜA̺CeA\lX h\NN0)fx7";?%}2,=E#\XVd f߫r?CQ*zLʟģҮ%C"V#``M.䭉M6C@{/}g^Lv"Wސ|N&v;L1iyxvlwpcm!-3 /BSj%@Q6ÞYY9#qI@?P+)~(rsO3_us5S9 h_Qje^(4TٓZ?~*ʞģQ+_-xzȞ Xy̞u@ܼ iZ"Yy9pqu][h([ybx0'/(Ng@r(ô'2c' /n E)(}V ,54d}/xLܸoEh *g ikN &ǣ h[L0?r|C?)]p.\P+5ɿmR~iZZ *Un:Խ`r>:M]u5"?~DQ 80+W$i,l2nPRhy9#y'S_&RH_=j^]*C5HD^͵Uċ?o~M{c 8E^ocp]5}Z\`=_­BIA*tD=T; Hkr">Gf{\*q99r %CV@A4X|]"I'}1͖:gUHkpt"f])z{؊@%L0݇Ka5ooYĴ%MS;xf۞ rV@$> pOLc:x ۡt9esHnJ`jFX(NK@ őux4_]08c54?[m翡Yox1n{Y;ޛ,}mP4]}:.n{?$_gxn,YRDŃ 2NZ?*/jz(,s猃d 4(l(rr/a Qm RӇNeYkgPF88,p F֭=3>u֙X 6^{5K:Uò*$dSqAaQռ6qaFf޽~[@.?- +__X{Ƨ(݋{e PݸFxT )a$,.Cu-22:>_a#%hMo+A;;4WZH&hv^bmezg :vBh8yĤN6@T j8QE“>qh8oc`\@Ӟݵ6~©ةo*nEFs9WX'dҎFVmށvZxf/.x`9,zxkK|ԛv*xw*fN&H੭g/4:]j1ϳC:ZIM2^&1"5*DJ'!+g^ʃzi*epX;u@P0 <60f*w}0UIM!^k=*Zg6Wr}<l hHw H8:`NҎXY5S=Tqg#823VDNXBޖ)aΙ| "TVA Dp. c&>Ӧ->F %>Q8HSo:4F\wW2c*o4Fofv:)tB {!\_"im֨tnYrii FgYy3۩նG8>b7e%c7],O^Ӎ=;:BF5fPߡ,+d *ÀbhHRhW32|Nsݦ6|چE[W㥈C$0` ݷ!K-WݙW W7ʒkV厳G7 }N+;"d8f:X }ӊ#MbJ s[ 9JMX^hf'EHqΠRp&RDŽ n-]agQyN2Z4LV5׆"ƚ8Bo2\`aOU?+Ɖ5]Z9&%~zpEh:~5YdOO޼~o+pha><==VV +ц+ںfߧ^aVeZet+xvk,^9gJc$nbnNď"!_7yиz5OU2\d@TE^6J]S'uBQsAʕnP/&8qe8\bv\(EVk@|31*aj~F2QZоZ)=hacΡ M-{Jj)zy*ԵwIwG-۩Sc$O*R^2J@ "3* 9H(#Ģ/Eݷ2UHёXKflxix[M#bNYZjBxU=hi`pG8^#'bPe˦Hl[|4ԤPs4_6R_( RH:k8`&52( z4 g~u&R6v;a&Z=ky8'xs-,RZ4!8h{̇ |UKsT|%@Zr-BOur>::MR.]?OӨ Q_ջ)uyd_g)81Uߌ9Tt/KzQ$5\73qІk|]7uoޱި‰-oI-Xq&UR2Lv3!( N1O{1/AZdb+3G]'2U''+~e8KꪵD:!hZwl$R2T~2H9;?t ~ w8 wj8'J:A &\:{N~zёKoן|hyC'ͯ-N m!AXJ z4 Mf$BW1R6Rͳ NݒК yqiZaL -eI2&^'Qq& Q?ʳQc b\eìw'+O^zUZ;f艳HSe=׶ p! bŮ*A]tǣ/5:0Q9']& qcTF&!V})@iE:1+=2d^0J HN-eLO2L[:E9VUif'$srFS` ߁#c1 r .娝u,7zPP }`0@rs#Yh^U!^SkQ*B {d*6|WƇAw8\|bTP4RycFxsJc 0lmq8~Cd1:/% ?Rʦ%È e:')Mx2:v / UɛР?bbA. q&PKE=o$ݶ|>!'wEfaD[k!b ZC,0lLPFA4h0]P4)Owc?@e;[u:r =ֆi}'_*ۚgA1QGkL/SҫuQ]>A*U'wo屈ڶn{3nI))#J?,B޷PdzſY#-rִ,3axFyuKR䪕lJvYծzI:5?ZI)z9j9 `@4v E3bk]h<4E~-^&)nV1uVi1sͭ\{U6ƿƄC6//R!s[98nwNl{BK14-S[ xW1RxS F^G.1k%`ǪR{*Vr7P3?E4=&=43p)nmm7:8=>f!j#DO7#q;\Y߸d v܃x)ڲ-9Y=|*z)L'ab>ru/ 2YAF.Cpʸ:*Q*sWnЃ | EZjz{)=(Nd}[.`{b3B.s +&!śzTiu(IE:p`t]ZJf:[RD4=v-zCrg<omS4e?jNqbҹ謳w"y? ]U^wv!XIEL׮l0تܥ`EEqB%oju2;T?>syhUmAQͻU9oFݩ&J(e2mrF[WGN6#wqD,6f)x6y8*%Hf0S7"yw5 +XWJ0듊 {zqm(+OTeK[N\*}G0.-(ENͱ {wL=ݙuSWntu  ?0\ۘͷJ{k-Z$1Ԃ* ǏHD{Y49HާcbXݨ>]N#\T.):=RºLK_^%=r9C}q@yk4fJ\~+VE>&Wڔ%'ٗ9)xH6U;6J 3hťX|"5zӣ*.2\(]䠝[8hU}`; kJ Sޏ1k|s QgcL4;]Z`,t!=T睜%ʤY~}{;J8A&ʘ;Ea1TjP;g}e`0z{Pc.}1C+`p7,xTN ~[߀챒̦;A ônZy-&ܖf$JoC <9ƨtN毢 AQ_U7ք X)TX|]c  \c%Cd(ѺG'G\ꆥȚ0% Ȫh +g3E.O!(^c,9ܻr,zB:`3ݵ7(V&ۯ&i{M>?LU7o D\}WvOw kx KckΗp#DWW}ԀlMB~ıI913JOƝU"?Dsa襥 DxY] pA7 3$+HoQ8^<z]>Bb4 JVIߝ*\4V+P)sz8g i;~ 6kReBl%R\Z'n,xfqOoX8T&P_*BS|.qa픺 <Oy\+X}n ~tuS"m63{9׹MRoKQu.XX@B$JsҰ6DX^zc~4q]xbIV4XVʏw^ 9 PiJEʺR|}~& d UhS%z7>|'Rˣ 2} }*c޽iPmS!?tq'Sx+9BEUͶG2"@@Иa7fhM6zfF[I$MV>\AVLO(o*uكP>+|r>}کBw3ԥЏMt)5|uLo뭧gS}aŁm@1rZC:}qS#cvǬFPև ~*΁>y\"MO[sT`^iof-ˣcE ['Vy8_i3#rݘ(K ڥQw69C@ZtkaOC/C:1bxz51OR1w'2-1q>wC|hUrl/'~gC#Vu@>07' B#&lPCp+)/8=_"ײhONWM6]5:{{RzmKa\ cf{ ~ ":1MK򹩡皻7@Dhk3B^sp9Hg']SWL~͢+6Iع'ja*fy8@'NFgJ䎘#oQVv6dmVE8w%VFbLS 3êI.TJ(-vrIױz}pIĴɜ@t 61WUIPw [P-L55Ò9 5gx&VĐOr2xx?>V4l8 h+8ᨱ?5Aԉ㕟'/Z#T"vv>S|&JtP|8F[WC+; /s^k u[D>/8{S%US_6D?#\3b%xP3 Q̀`7 hDžlgS (GvnQz}Vk֩Mxfo`;{\= ϗtucפJUn4LXg] @?bU|V|<:A+qMR)l]jL}5 pS*ȺN0CsF4/U``i@;'sѢyn)^':5u\z&/k޸7oRwߐ;_m(4Ztlp_T=p/˻#X(6Kj\.}`.o۞HoGjt-2}1Mg=N~_Y%\nfB*s,fyG\C7֏".jy\iB g5TcSy$1BzBbڒ~+ҼS՘ıVcXHl'&TEZ@k%]W&ܺ-);DǍq:(3@̘̀}[S:Wx23˭z.7 Y7F UGdU`TK {6G`VXZŴ]!a\ +If9KN͆6r0I<7z^#C[s 3|x.E<󓦾 @>5]YY4:F|DI`E -h><3D*8Dnu޺6&I]Y ưzc ?"Adz]\`|y+=2luH?9r##pY/W;) GIш;ج_iv_ǎSMCGu ς0h`lgs4/ `{NlMBJў~TL>B>IYhLISz&8q)>Vf/)% V1_rX (]grIRݜQOg<7΢]api,2c(6pD6#>T 9 89ժ7ƺ,Il<#3U5?0;WE4BLW$P\ݓ0W t/Ske 3Z,F7BE}]]d6:'K쭧fÝhUqʨǽ?tg{ȤANM6Q^,đj:\XkW"dKL)o63)ʂU! S[2͗Tߩt,Fk8 0Eu5>!GɦP?0 4{9dz&ahVxtnN2GiNj>Nԑ@zE n|.˦⛖&{RQnX t%Aꨋr?x¶"5tLŅԦdư*P(BsY-v˚tơf0|B8 0',c>1R9x\?c,AP*ߪ ?#8Qb~X\8b/kD"zf9?љ?R̨cжvEYOR㵑r|q,n㇟ ~UEb%g;G Am&s=1gKD}PVgT0(]&/ƣb.< y(q4HƍsvNQ_k4 lt(O2dԃIׁ">oIόqj͘t塇o&șR\@^|#|UwI}~Z^#Bb@c]AǷY-l\[0htc-lg78W [2Z("7좃{bf#ɑ19{Q%4H!.&p/RJ* 7kqe/~/OA5sIeg> ZGDXрՓIc(lqb> "n%/tͥmC#^.P{6(yf08T˟{0fss*Y![`2a!4}`?ȰmJ  "'X}FYZ'QIeSFUh,`4ğ@:U )ҴR#+ Uowpi$!P1`06bEXۘнY0 5>6ݹFRD{2hsu >jO{?Yu@=!vR!=Hg <IHAN#wn+xns-z‰17O'U 0AUSr!xvXmDz|ݲQxy:QFp0@7 S[d6ظA"#)tPbfx~ܹ1$Du˛kS}Q c UvNyKV]M&ɴJLMi;盢Z/^HZ.E3?d? acjy*(퇫RQ6 &δSd ݻCsX%X?NûUh-Am5 ! 1@ֽ| ڤ?,5P4Tx䮡6*{[}VZDλaSbB<~ӎ}l_A"s,ja/x@t>F"y)[_yυ\U0b&Vbm=\L971 kqGb\*}Z$ӚǖfZgyzم47ːBxհK1%5Yx'm5]YVXKx6rq̏6@sj:sȿmW+MMߘ-b 3vdkn:69a)2$|:\qoQu56m3Y`@(hs#j]ѿnG\q#=ی\#mcT/IWmqbЬ[9è5H(&~ԩgR AfizB [7r" &Ui-ؼ==f18_37;"5C&0pU+bGYxslm Go6 9rdžeo?Nw Jq=ԚAŸ2{MwK!teT#h̔oawfJ*e oe ȯ?B u8';Sppq8 x,7C99'OW)tfzpY.e&;Οu~rX;҉#)-=lgEHsjcr P*d(Ԑ!4 NSsjm?핆BSop$}~s%-A(8S|feHƄB}R|2W@P2|QE9V~Jv.u8jxrjؐw6R]]]&'χ6ϸdg"k-Fxn:J}@&bMU g=CgE9vUh)W- TJ#[^N&iah0`[tֈV B9Vk2˟xlZ d󵔸2;(J֓9o41r_M#XOMkΙƚV2^ar',܆3Nȝ( S%ID5=YM2( "߱6l;`<-[Rsw"gZxs/X{-ӡTזG3(n@=*Jg pY{V.M8D4>$%fB%c@INiguBÕ. }a?N*X PksϏ͉Rj @w%dԟoGՃF=ŧkFPW쥀-Q٢6Cjղ~W"w +?j5dhLGq+E,lQm'Xk I2aˆx² QtwDs,h.|= 4ڙ,}?QM(blgs?Ooq}gL'y/mQLW\)Kn].oF8Sf'JB6@6 DǼ ϵPS*ZbyMoRQȡFk`o%ٮ $˩sedkcN>/x9hjúp4&HԥZ 8Ѝt@WQ͓fU: hi=kO!%?`p#vδ!2^q֫[)+uXDFN@k7ŒƔ+6 _6Zh0r XIРwM}.TF65XnY~B[}t1': @A>0+4e`i{DD{մoq_&&} XSu&|Zc^D{Z`B01T"?;9w$l;-J"DP(0dI٤zlVvZ[Z&g3e46ܬYnۨ9kJ!#|kWX BR-> xO|-e0X+ڏ`L+ބs9X U\tèL"{rwPeKP=/$F_ [;4Y|=S*g$2nNU%'ZȼG><& 'k@eJu <ɽC\/ENq ^btiFn`Կi{hw搦nE\Hauo)sZ¶@5Ո ?TCQ/!3嗵w*g"?Y QK9N)vXs `Ygvcվ,%yP)r@@ q4$3MzQQ?^ ƨ)`Y-uPӷF@Lv=a}a+Vz닰ӕ}<[Q:ps7շ$ ٻ}H\)>` cEIQn D)NN= _b:e?`@8%\dn,5._ٱ:o.G#cF#爾+B"|P#}$WYռSCtXiyuZF}& CF彴c\@؛C>ZdΩ7b#ū\/-&/Y!pMwW'"[̮ݺ.ݩDGZ (XT@կBe n~v2p5/^R,t)Xa)cuP"aE29 ]rx1qtI^n4ah&瞅p2R[/y'or 5&.Ǽf ]3~Xk,`!_-! = 3 xgdkGķzYWFP/ B{ltP%~eh~iQ'.8~fB\ k a"`W8>,"87rƕ0W {)A p^<¸v.q&ȊP$TvU@XrCaLK,a+Mtc&]ώVeïd  S*.4P 3btmCs.P#nojvhcK8Ћaֲ!d&#bQO)%He[s)<9y{obyijc(xk4g"CxSCLr|84cȫ 0wE˾<С4^f6|r6;^rm1Wo`xoꙅ̯u1Q(MZ[{*&0AYS4[d!~/ `H'2rR$YBx|! TuF$c8U8؊[-!PBQ"pT*LNX n5E?ǯ- W>y !,l6jBZSiOǧ/ꔸL "mn{ q(Eǔ#Ka Gk)|mݺ[֓VqqZ 9a7ty՘·]?CoT#JT-#ټPblTr'Q0+ G~NLAgV^-2HU e4FC&YP9?cu(q.=vў>g{v;i:Q8Zu}&ciɲ4N,- w#2 )--)Ic=6 iQB'WȎ`L$,lovZaZ.@nP-."i)ŝi&)o.A.]1U)(!9䚵8*ci.t;KA&C uSD2B5ʱנJuҡp7_E'Jf] 6}{kqwJ#J_V䰜bѱqgN.L?S]ي[q[PѭrpN0!⛮dľEΧ`VnK!Xe ):.Y@'UPǕIi;K>4 TRVv?]?V!d/u߆ڭ.3QA8'jŎCƳ mkAW1w' =ed{2J0 CbiW\DaL25.. Fa}"y0gN)W>rE@xDo<|[1@(cϱ:eQga$c٫W/ĔSkv=bU -4mO&b^a)rQoWUHV;Ōk;M  YQWV|cVz{άjbXg.qHCdfrU7<@Qbꛭt`Z0'aMqgfj{7/u:n56H}2v!>L!0J [ؒxlKNݚO ?eNYu^2+aǓ. @Sa,V{Q, FKO d\$is48R%Lݚ tbjc .BSs.HD~8T|@rltZq폋_ \BЬ4^L0Xt$_FD (Õr7Y|US3$6Z^M{ 7Z:eO6?+S[:}" .z/84+%Ml( |ƀm`hN`AP|Y?VDe #{j&0o͊G'S^,=iV# 032xnvnkEKT; 8}z0GcEۜ;֡C,:z -!Idߎgؘ=⩵E.o3m3E`afԨPɉQfYd}m܏U6W_#P -MƆGe{1lG2&~+Og6vgYCU{ja(G\e>DPhG.L ҀҖ3NC[tHr]$k"d.cb5Yꈝ/c_'i߳=iLx?ۧí̧Wy-ъʾ=VW|EYpEys/QvcsG&-(F_; iH}UW H"yQMy_#k%+& r'C8:´C} &s,ʆ6G{Ō?-2 #_źZJj6V;OLCȵ~ibm@B(4s.TxMx;Yj^Ec1$)FA4gh'\3]:c BbE?w!1GzJ^OVlP g]ŎMӕ򖷪XrφA^/[~k /Lɕoe6>ZOǽw41LNGqmfCK f؜'B Tt դ݋5t3fzkJyO%g/{>1yB:tA^IZ6)~Ƕf]iK}('69wMQ=ĕHڭb&B.^'+'X>l#j|fh؟+d6E7~VY2690KܯmAKWlx\@z"tTyWqQAGK%^6*Ex!/CFUmgX:lSd8xT;eƨ)X^#XMC^a˽Hʶ9eK?:YWyNW2@Ee*˯Wm^шAO@Z5vx$^jÒ]\%1$*ƞ3uGIkG#7N~78Cu%=Hp'!YdmርM[S>-s̻C]z{{x>*t\+({/a Y5KB*t~ jaf8p|-{W1&mEbFOsii' 0e3~m8QST"]:FCD]\}ZȰS{S)dq8zK}Tg˙ƲuÙ)h7db/Ɉ.4..q8Tc|Wy,`+'Z\"H)}n.ݰԲ)N偒v.fVŐA!jH@AvNTa4g tnl`1Ba2\/kn݇ 4Ob[6-Sin$Ӭ 69r]K>ٶ< krڙgkwD寣`uS$=[O04h6 _1 >x9`,R)ӝ0fˇ4AU':SҔ-4y˱AӔʩX N&_ݾ+avzlC~_$+$mP?GR]Q  V "f_cCN0bTK|WeϳፐxagJ[)i^`'ѳV[}x>IC$7$)[A߸aUܛHaF[62(mM_w( { [혝'q+޶&Ǧ!ؘ,Hve94k͢QW@;Vպ?\P*$TX$StNSKBׯ)>91sѺ_hR@g1ut˨W.Du|Qp/.'qpR@&7ȐtF+w,$QvG+pFoDK M7?Qrl=Yc0 !.k<9i*e\T RD┚cKym7˪mr( Z<R{yy6(1jkyAk[PW%>)ڻV`'edm$BŖ._;%uVFBM;UJ<G#jtz2p>ѩ]w6%fP8oؤ<4Dw+E9ESJdu {W6!ыRVqA˸k^]|`F%`yZ,LzPAl][; r]{8"V/F/)GkX[3H׳?C҉3@M SUU%&>`&X%v )|- l5CmrC\Xe#g 깏PZA |c6a}YW$^yȅfq\Rz:R*j9Eġ!ΉvPZ[ㅡ2:z|C4(b7w^|DdUFF[pab_y^FvFPSP4nGZwLqnDApv+ǶZL&Y֛xoxŵ58"k!GF`y$e6[ˬЋ)lNT"̞.?%r"||P%rm5cVl ]VsyU+ 1YGH\#.#Mkr)ІnXDۮ&='UL#8k]) ]`|K DhvpxbBf ʭWE-z>=} 48}bv$~aޢKh8Tw-/*iH&/;L,X2jPk~ 84tDp[V8NՉ5#IW]ƱwPͣgu= V jv,L}2ES/NEv@FpCk24q`K܏/'^vo`)C{Wj[/kcTPM ㍏&WnwH@_lu+;<~۫(_޺LOgsS6jCP] f&χ6Aċj@nZo>BPc\Jڀ1wA7Pi١,NhvvJtLaLZ"GXWp~ycpj8j'+`Vlp#\8[Co9c@ݸ'fnJlHPp"QkrJ_fo dc# Nf`Gz*Y]YQ)rx/%k0s;f)_gP S)jAN7&YL@)D#+ څάvOR+bsk0X>˹'aT(qh8~_ . 2MKw[ň$ g8DpLXBh4LmZ)9~xȡڑF ܄5!f0EwoZmdqmOzrtw[vxWo/\ԁH ,lz>^ _WjEJnҚ"WrĶsjK6fD~O_ebrd[4fXf`&o4?U -CӘz x Rq+x{{k ?8ʕ0UԫCu6{/5|sQ{cb~pxl~}K <^":lÿkN0ۜ]Yn#Qo*N*0q$Is@3ز_r|Labs*JAˢ2~)<BP )uVhȂ~iEn6 ' 6$+*)Î) T6ձDQoPGn:>R"߇ uU9P *A =mPs nЁq!˱PCFO3w`J]F?O8Kv%3Z-:^BZfo+_Sa w|]P B }v܃>i <Pↂ3ʘ#V/I2]1$jᴻXhl:tDbJd$}ûj{j S b̆$}00H+[0P+ 4k^AIW򬾼m l4ˊz>UfFhR@ 4ObD5"XkSH>}LhĊn'X"a'hj=LjҔRQ;88$klX-߄pRQm~nq;AiIWq+g‘I;Ӱ LwdQݠd 9Qi:hg[m'~P`[ [hht:f/Lc%HTC^(<@c0#ш5%3=ybRI2*3/:ܝRY ?dz_t%m0oǩgG25̑wZJ;K$B͘'h<:\{/B0O)DC .[RbmJ&*R#GΧ):"K%R6IDA+tg2a~jj^ax6|@]X}.)< Dx:}H&[`>0M~R~NtJmDsvpƼ]3XqEy󰎔4^a_C߮A"'F#C){KM.; HB<'ьbC2!sLB*|t#s@ V1nI[SLz3DhVFr秛̞k.X"lS bڊ -e*臷ޅh)Vw?"e*!g@O#(zq"fbӛJSh@CloEK c qjڎ? %J C}qR~2297CATz΀w+iaRe"6O]j1yeE՘^>U a(0 I+g-^Ji>sjz%l{>k2g&)D_27=28eiTg} dה6TSUH1$0?aBSk&$@xOPXfg =ɂ '©'hj?%̨7U5Zюixd &d ~y7ɳٜ<8Rz9^$ >]|G]gu/lęco5VmV=&tq\/"(jc11ߒV$uA׃:y;Hn' Tϡf{]_`g+Ӓhw%`` [kdG6,Ν{f+dt5-%Ķ ;̴; Զ5keɹ]3_=6 !bے%vk^!*=e[ꬡԉ~mp'|l,a䶲p+/4s)h"Y9ۗ%?{׀"gltPGo?8 u^)E P̸7.!y-nںD6l[n{8qQpK X~_)"#pVKםP6  l(n{xL֨'Lv] !9qw *[׆åTÓ[c PhsU<+F¡X #ଅu˰҉7n3P4Gpm'+d= NSd"ܗz`Z]9Y7ԧ+%fں+3yFQ;[p;u9PVe^Q@Tz^&0l}TM ,ng }ݦ5ޗ1g18 /2螧a93N~~FzLQ6}s7Fo;bcBm'hYYo\QTV#t* 6e+"Zv:TɥXw-vORDw;R^' [E vpՈjr!lޠHڰb{QBb>",S ˆ7h iOwZ ?(c`XfƼdgu^kڨ?o=u & ޻kd;Wk xt>.tmiW4'=(k sf廮 @kO$3b7L=#sry`8T3JPI$%ɏOW()cFŮsjJ΅Ok y|R%#^[dЗ$OfjS~6Tr;{s􎓼g'JXaF9 6H@0ϕ}9% Ti]2RCQVz:?ћѷz>wDsJί$C1i+pqVR4D.j~4~Lj+PS#%&!~gh_;|FtBf¥QVڟ~/U.C2$ĢK D\D:î |Ŭ7$(#bͶAQ3Y v5)P>g%^MJ5rCxVȝd#CLqU^FaJ73aE^@딃)\Q_\np a\RdQkB(!]*yP8d݀gKsxj܆a۽tQ_© p 6q͎CSA(Gq$4kk>O%,TZ!,hIڱg&C)`MEe+Ed]Q +#>͡ )_D'\rl@O _ײQQc4] A&B+ST!LpR0|$Q-# x4(\!%wr n#{M"V>”7߮17Iu/`^2zf0l$uC'=C}K[wzB @XRHU2; iJ8IˊNF3x W@4w4n>/$ hruK P,BJIqA=Lb9;Nږ5޸9wj8n[+N^ilD!rE"`]kw.-K$Lpfdޙf2E'BEڎJ m.2:VN)/lkNuGlh.Ozs3vk73U_\פB(nA'JYD!]\͓~$w;f[0_ &&l4N:j7#㞧Ȏ jd|/e^^(d4&bw 1>>``q.9ы MD>37aN(L8Wy9qsR} 1}Oԓj=I5AI؊i{G ؕRrs/BfCDG(E)8f)>雁'㪃>{8s+ tp R񂹤f\ߔ3ƮJko#VTBlR88{%/nqPH8 Xr܏qoAvR KF[T3|sQ.7>{Ήpتuu`İ-S XS}4gUiG\/jytԬB@0SLHgA'j&Ybr>_:E&1fvJPO<~1a#z @Yx:CR]inz/q9֫ t<GU#.{Y00usdn 1G.L-E`7, %/}&6Ho&giꪵIC :zY]HBI\<5VmRNm8, =^>yҦ>@AwA]5g9PK_4‚yY+^DJAvd~b ~1ͥY56- žc}Lo--8d[1{ɮٿ[oWA9: 5ɜ'EGgT&\Qe+X z]s>f =v2cg{ @Q?:/8CviGxd C?^ 5ez\ Y)9w2%a5*LOC8m~* ˭+wXnjIN6Epd|$׆mrz[ѸT0!MluhI5 D1Zy>3 ^2ē#4QT/=hU{s )S;#qQhLtfDBP sΈŤq \szsj;H+ Nm!ra+-6p0ղLH9#Hu`yl{ט!IV)\o@=3pW w`N,ԔY.o|njeN?pXS &ҪH#G 9 `#"uwDo78`4?|XE>lTg}ҖD\AimB™#"saWOI?bEgA +]Wf&-Pi 'E|Tw$Lc2 , MbSH< P*z П L}kК&1n-~v.->CLy/PF1L˪eÉ"3%'Y`ܗ6懲Z[Ls*˫wr Y{J^[z[*gV]:vW`˺KYբy'WQ#NQ<7p]W\S(}awf5&k-JdDI;9E e#2r0"~ O$tα<}X9(rz5gpօҾ;E %!ʐRN2:\q1}dI|U{'bO(nU׉oӈE|q$4-rob?dxb K˅&wd&YېJ@ о~[5)5IJC ~CXy& ] %@[ǦP_ؑ~?c&qv=mA o7ڹNK+]p<\17Lgߎ;^BؙWv%*E|a7~ZByY5p+֌R%kK#lJ~[(!h& XcP}|+.9PpLw  C?YYx&l1s6u[oOBǫYƾCYPhOUeK:3\cPk@ߒzd7ŽDIȌu2nb=$xWAЭ@lhMƸTɇ΄zֺ("j՘Zu)x͜|W 8#ǑCÕJ b8%.tUѴYidD'^<]_˯jV;._m+:,ar\u8S:я-%׽'Uۓ5%b;oH%;} Xs'UK+"wAHe!QL_P )3['qYZuOQg_ v_!pm=*ϡ3E;s&l]vgtPrgF(,)u%3-ɒ^SZb\`dոeEwſ q.3iR f!'o3U.S{u.$EIX3qge irsWJ(G\Rz5P3 \:/_*#[KEeE6{-ZQ$iEwz6n@E j-*'_(# b=cc/Y wb ޒHRVqtNǽbE,|yvtb{FtXr%uHВԂSsx'8s(_~,Arz[9ٴ~3re'+:Ri.|o,C^!i4sM= Jj;*HAK!e ._4ƹ6.Ֆ۶cXyC,`]'W;;# nLWtM3av]0>y :rrtC)Af 'bB4s4Ġ~KJ_ij[j(]g-WТ#PԚkmy.`r7>%FKQ mpJU"U8YiXO^.wX_QǬC.:n $Y77]K:g!fods旬~~s.ri hfvgµ(Mhe2lqGf|oè51N085Z4P^_t6U@эg'Lw(@Z3ӃH7B˴ysś̉/^ߪg]z{fFg*v~ՊWg’fN844}Ml|M&q lၳ5ЬZE^EC{ D, p쉱cueD\Ǖ1,NM"p2l} t< i Cgi)6BYⴡwoΤLE͑UoKIӳJv5ܾ\SL,΄Z !C_Y/+yPR)itoNu'˒a~Pvh8?'^ߊ8S[2Փ X@1j1x7C'8(WlTr⒯ȳ>/$\hW4MMP9z[[̮ޯ"O&[LY#3}+tF> [pu;7q1` G7r,GR"nb}}b@9ʇLCl~Ʉwf1Ϧ^ߎQ4<׃&P07,H:0X Aef{;U]eL`Y#R (psǿ-M1*ō<`R#x# -TB*Ëg/}ā(g,2sbZ¨i;<9уgK|PX3pr/ݮiW&%8ȳ3pN!gV oMտ"ٝLVOje5$8[됨J9oLe(tHP !tZ}(g@X|jW0h;,BKmQ zYu3p^ƨ2ѨH\Qï> ]^:l䫶SBQfdksMyI|`[V Ȭ2S.<Ç15#Kwkh@!카w+Hj5'mV$r:jKvR˺T%csV{lm> (R-&(.hܑ];u6: y]wٌzt~>stP;їpupO= Άe@w%6B\E9& k&YZ$ Q9?ĭ5EQd=Bs4ڞI綴WYqe ~+nL{t5ewӶr6@6V:_`teUXE#J;w^s-|Ki.WRȇ0}i gdֵKp.6$vk][Er x2>SCo C|B-f:,uu>1\e|>d֤cG'Ƽ96Ћ|W[)'ad*+oH]I$sݱ)ry2Y$u*6VA. Y6~EB!0'|ߦ&Y;\5g'? b}q98B7 9tb6M]7ui+@K23[+zA=ޱPv֢'GuFx|.Gp/V=CfiT>UND6>iVv!/+H\uj#:,-_Im]֝P*i #^M27 '^5? z1Lo"9Er_s1Q̂-/RrNAטkl\+ orsl(R6J }''Z?0:nɧs-x Ud1  Zw{H ( k> D0@?q"VER $T^Y5A,毕-Bp8u64rcN&Tolw4& 0Z.j6VS룇F.uy76Q ܓզҶD䛩 &uB:HAX(HH%0[xIL{vԺBKQl7?"=$.Au*l]dtKMrH}  Y:JR:hG@h2#;^I\xPڜ5 A_)WE15.պA-dE:x󖒨S韻oxbDY/P7SK3 ɾ0C4DcUMvbE >JG /v7P̝yQRp~[vaF&F+K1bq4lXRmopyKwp!KyHa'@dwD,?i-ھ)bпvDp"n<FP &-u֬0{ZK*Ak;zlڭt݃ ~l5 M''4P Xq yeU+_]BxT+kk1Otɷ wQ6b=\.Q.VWBnSݿ?4X-P"Qs}hp71us o2{eD+_] y}o%Qv`_R R!g˛(&"y|@Uq^ V*Z pF|y 4VeU`4jU(6dC=4y ;9DKKl>&Y>p3wH+{ǸKN5C Hp31zmYGVt Y8Ay"w3-]bTͲ ڊfOCqRpv@͊eXL_4r|㵁s@CϯEV;G `6t.RT 8˷x&h\*ޠeXBŲ#B'Bw ^ey \@:geYm(6ss 'LK]\ @/%S\Sφܜ<)AX}˔QHK*THu ן#VѳD".cM㪃XC"g*([?%:7|>;Bgh&"9#-*}_xY&. v1AA>G"Mф錄rϊyP|$&ar~AgvSƓBGfAO#^ a=>+GJy: kN6N^ c8F/EZL y  u17]@MոoH=Q`< ^o ,#goh#ԅRxB9@kٛV.+U|?ǗygY5z͞_]7GH3⁏a|3gxS!2)".d B`?%x턹 ̶j9W/a/ 㓠WbUv" <;aatz6`)p")W2:c\ԸnO'yo!SRM81dZ[+v%6S3~"0ڱo%\>*p~ͧzyvT( WL6'MH 8lR#xg`" 򥆠&JPQ5NRӠCjݿ>ޖHiKiL7HtFȜ=˶+ԓQ [%7jW?HO(_hO+8ND mmh<ƅ+`u*Rl{@x+1J3=5\DF椵 BAC, l@.lp bhZ<BLlYP]OO阖 5aw:; 6n)ipEK0KLJfl P1(if(O)OTC?:y} %!UQp!ަݪq_@ߥdw*^]) I|*_AۿP#w~{e@z PdK(L=CP0C=_jEgt}:(N\ Cѵs1.,.zF|qT|򠨾A;ǃ JXPwtTUR7y;(AԦ8X*6n%yXJܩu<^t)@rc"yo`b'!N[0AQPM >,~}LxLAsL{Hq>3j#ϢWZSY`5 )Gj(F+ K4lsj_O$%D ኇcua _Mp۔NT#6J AI]fqfF:PA4 =K Ύ/oX9ڢVoLh'}JrJXKq*sM`3}#Ҁ8i[2t8UHÄ;>^c*y] (oxpAV*곀~%ΖZ+mڟ\~yDd,Rr{PTѐ35)2a!ُ޻z_&=oCD:@}HWkxHTu:FÛmo &yҔx7g`nӦIM\(kѧ$&}a@q\sw#%A>RI#2A\A>kV=żyI"x /d.)jn\d`۵u9b瞚- +PVX;jV 9?~s8ˊ\ApO$qS]ͬDDZG$$2W+D6#nD{АD6{3I?Pъ ֌M0IsRoWIQ7y;GX txqIaRd)IgHnxo!׽Lhu,Xx0W[DٖA )/C[)æ /,-aւRnAwBUWE<ꪩjd@S'VC0CLp O~?6qV XꖊwH€ ɝ*`PoIm$V8QT*vxRecE&wk|:$EtaV :8Sm%ΕDFh04|_ȮL$ dnu Vb:K _IH܇Pぃe& F7G2vք J=avX{]k wBᛪZ>'eϹamÆ'*cK"?mm,>:E}$EF}NiOf>w}obd ,QBC'*z6 ^jc6{afgBPNDyV^GdgaTǼ zA`ß3pO0;ݹm*䬵zMMm+Ey^;<F>:_COb&`"_@W|>LS=?r7%?`1n }~cП~q{itdgyݭcNOV#ppCyR|i=:ۻu2& V'ꮓgVn0܅-ǧj&'k8]f Ͷ6 g C36|7[b.|u* 3JX ,/HRpZ$'p%UH/EᕬLF??=Ecb j3%H뎆T~yL 2Tvbg2K9&b4`h w R ?*f$GZb),W5oT/a3 xUudS@sLMbF Cο e[Ŕڵg@/~ʿ7qWw^_c~+Nózq7 >u6k탶|azӬv>=r@-wPrtm#AZEf\aqd(c ?S xgS~d@K?אX5uB&h7sQujR?j?F=QYD]hZ a"n'N3f~?)ѼM9.S1K,7u‡؁;wc$dAcd%pimX{\it^%(,ʲ.Ae&CIFgSen;ÐX EmUqIםGяzh0|)o!)Jܢ$rmɡSMo{&c[}"u䈣ωw4C }haMY|/BQr.·aLJiXW|6xgNz_JʌPPw%;.8l:*P-M7Di^#S9?uY6'g]o#$^p Z+VP.6;dc.?_Sh3Y1axXwD\>TIV9dN !o`T́Q r%WW96M.h CŒH G*~8qd-\NdVA; 0Xtnxoy gsT#J r5-=1mjDG26G=pb󇂅KDo hZnΜ(פ 3qIm=5ك`dK4& hdO)ύt(bihO5ޛ{9|˖XwtA\idBo?rF% J0k]O,ܨ?V3P?"w"Ĝ`O-oT =Zx qb:v#bfhKXht kB[![ xPҸ'W^[9@㦓Fb4TNQb]eꆷa}8{x,tzc01O4{jJYxT3dEN9!dST¦%I.Xu粮^ ? S$z }׎g5[C HVщ: x9KAlSg>~miԗ&Ej_u=l"H+%ҳ Z=;3꩙[<sg_4*Ng{N@J_ Sb~]"3)zsZilwL Y9@%[wFRXZiZuge*V W 6>icv oe'I=}WAg! ܈T LmGm_EbE O)+<3dH 'Y>zjmiV4Fs3n\Xjq^\VS$D RUHNgI4^3hp|n| Ch:$̈́uoq0)ԇܧ*ELI<|ḓg}\'1S'qb, _1N,{fXde$ԎK>F%T0 MmWc QGqDΤO2>Us70!S?*Su'4wsLY Tj lNHʀruM #BR 9;m2oe: + ޕ-;e$~eM= TV0Et3 ļ^QI'%|}eZ=Sl-*(;B'hjMJlqDFy\$_HH-q:kq[(i c gBo{XG.9.tyDZ }TL=*pwqƴR/ HC3lc!0a/Ep:1 <طMkHN5^ sl@aGTܒi5a}"*E%:ц]eSpuQÜmPqYO ꘈy5 oˢbt0ܠ W+]&Fzi+̝eFZ M݁pulX= Q}ǂy[񳩩 "#`_^cgY"fqHpiWF̢ ?\ zBU&.ia]Ky{C\¦Q֨sFLԷ!wZ[*#tF)+j4XUVkExћkn?^}l80oIo@>{/EW]%ѩq3P:UY@mE[_uJ\̀gmK< s)c&%"$658`Qjw.9>i:gG2&8MΨ<~:ĠSM]| xTǡâ툝Ҹ gP(F_汋^Kp̗)-ݡ-uDgdmoV`|As\f4~^n*Ma ,p=F"n}rg*DxM@)0bwN:m-w3ӿ Hʔ0beZ 7{a i~xÉK {힁? רOPS׊/ȑ(`!G-o w;jVQ "CN]8Ae{{P;|ed-38` kZFC0x\Y9g&6?vɞI#)j#=$^â \*:׼ca \5kA4amX7?ՕyHBۦjaw[P]cɎTZn?.cLn5?-ܗ+;IBlV]2;349)^9@;bҹRo$4d.}mSTMBJ =WYW`ssRńrCڻٸ=#Szj!MsCQO\?>sIpȃ?۔b'P솇KI#1$ʤaY&5P-9[e`ǩrЗ? Do=dY՝@<뚀zd2Ez}CD_Q]Xt#P<\ S3Чw '/m_U떂vhSGG~deB'sLWXQ'3О}x+Pr܈P3rŽ F|i>+Ǖ{H=^E Z&[, nfY_[8`]]퉘"R̳t4;<.y^H]:w+ABD׸59gQWJAqڏ*N/q]=a1  ǴzrMM-3Cl4?J([kWVQwj7}y=29˖K _|%4S3>;f2 eVM:C9P;]Y"Ⱦ V`艠5P]jOs\kp@vi\~7Yn\FB!7>>q~_ċIgгQ732X֞M-I|?\07tgB_|cJ-&K c\(Fg1=5' rudm߾yQ$ L-rPbVc9Xm2M/Vwi\W> Iv:|W7ʜi|yFBܫTQ(Ăc!^Bs + ^*-ʓc@9 +ӝՕR9Bآ(~^[Lj͎zB`Eu{pO)S3>^g<%bNZGuH,1߈Ih'V-]D^R>iM>u  t?]2C2vެ- VexYv)*(ltYcJ4?K|K%>')Wj6Wf{4=攳> UF5;zf7 x0RI1yU-M4;` (Qo@tӸ٧N}m'{?~UiPE77/|㒓 f$:Yf>9T p~|E[iE6̨K oLjےPKB2UxDj{V7-5A2/ t19x=yW3J} # )Rc~UN(.LBB*CYq ډT-qO/j p/b_} h#_blKB?7 ӫiVkե7Ab_7.D5#=OUV.}5Y,: 8]΁K2vYBP0Fq"Ae$xhq5im·e>hL-v8Vi!gkb7Y<k e-[“lZ/4 O;F0K|7(P$w55)񚆐Q:Li/B"Tݸ|q/fڵ l IX?,?#x~OҡB _ySZ&QXqߖ3a]$\2<^gVXJ3^?&RuIB3v -E1ZuіQL-wOaXuV,-DCmkrk=G*r*4ށHQ-N̼_ (A0AE?G gxSEڄz q`@])('Çb(iCQ,Be i )6 ;MA5Y(a(rF%7D D͡$Mîbx :mYadKcM%rfE'w^F+Ud+ F&0iR}> J2彏iM bJ>ker@bx>$bK_v{F"C ˟|Z]9QI[z0?K#&! @[3iAny8)jLv*!Fwdtp|dmTԍ %@lrA;]IENODEi|t)x#(5o X;"ўonq+M{&s"AA]æ)9n/U鍈FRvK51V  cY'H9 GӔ$l?!"^CDiw'KނZLӒӵ4e*ުqN#6-g .zHȳYή#CgOiS|ܲ$\{ȶn N̘4k h(L_ߏ_Y[XċE<PP'4; \<)i+ ]:>Aq-OּE9-<ƿN:h/NCx-XY>,ߟ qJ$5Yzs؄T Us9&Pj=K: )dR fMy,g mLQ%EpA&|{(Ŵ=aۚ]krnmIJ:5|Y j[QDuԼFӲ஽* 9IdqڋEoEp[d&~T e[B S,L)t" E 'O.s zN61SGQ 6#H,c 8‹~ۑZ`]{.Tk.'93M98~`nb?*5 '$_RdI8pqB4w$(f?,m$iE2 @%/O6˺Ban>SIFGxݒF8di\KC Uɰ4?<ٽy!y3y,:F|;&[?}!^ x4f,w]Yq[w]$Z8 >~6vgdDUI@0S2(0ٕg_(_"B3y/X/\ 4/qռwGK aq^\eW7hE/!8OG9wIcp@WN˸0E3xU#>V h`4ĎP`EZEƹ~"5(1p§\o?3.Γ Aokd$F!QYFhgFq5E8Ƨ4K)rs?B{zWK0i#O\hbߓSwL?^JL^j/$дDX`YDAB [ɦI<Co{ƺoRW@z>iooFNpRn[CJ} O<̲z{ǨtKlqٿT~'fIhrOҀ;KF,gh@cx9Z 7?'Hn2c4)GTwĶE:}p騺?Biz7dC$up ]}$`2qw\tK.[sD|}։V!M7ahC0{=`X a*u~Հڸs8'#RDhq61vJCƁo. Abб@ڴNC ɂhHj*CۅB'g4e =l}RM eG35潙\.( 2LL>8 ]6t#whAxAfACܒ8 GxdZ%Z7z#%k0r&ky%,޽xO3En\ nIGp?4G)9́B?&x}k {57 Sq&)]HL#ye >2Pl%qI{FҕfKB3[1m@UYV %d+{DkkG]G~CRb EKͶ6Q\7s qTOFCF2G)qo^ 1n opջkBn[mN$nSCwUc[{5HwE{ d-ZEd.$V< E}$$n'd:3\23ןtibZx3g|Kؗ7]?ubqII)G8#+:ZX^P#0,<L!SA^+T Uz hǺ80һJC>X[n -F};elޕq(Şygo97R+#T>rSٝKcɛ]_g-LP A<ZYJR}0PmEK!O;K 1WRp%a_ԐL_a.mMW+;ACo#+7f9/h@ҧjӫ#&]|Tl,DhWZ@K. 8?`kjhi3GZD܋'R]Fy'BZ@> \ wo2^5Kbqt]:-g*HKD“R0ja m `TͫOnXMO,dXIk~R`zȊO񔅮1_?GC=7k#5OL_嗤k*v9(MF 1RB^nX!l&@Rdui#Wo|{:Jt>ݲ-PC=Ë9Ыf2׵TiaS>TX?M:(c3@~cizք~t)1cMo)hD) ^%H8&q(0jL ?( \AT49ˤ98Zu-o Hi吡PCJ)R_bNP}ex:s 9:bo@ŶF^'eモ#o W_(N#/jrBuxm3cQ΍*8zג"6[WPjU]㓂ϪO4A~tc[ h^hrƴ:r&QT Al\uQL-QMxg?zKR-is K=i1CT&ަȈ,Ybx-|!MT''rr ! M}-ÜoUP~9>}iƖ{A)y̨g@ehq7^r܀msrGm+DdVf}tLYaW"p! i& i(F@8Yk2%{8z #i/߰ hq*V "TbORixCFSm̐bݲf"b)SV vUȝ@gw\i"O:;'4 K9Ā+a|FR$'jSkCs8z^X$YAAElAZ'u~夘{l-FQN+:J1co _hONq4#J=8/' @3{pKKm'q(K^ZFhu||:"R{r תռAa=yVJ[u[2@u(@RyJ \izt?00rL21KV8:zXG5U4>4H/W^m|Bft/a oZ^؝ 3R=Mawջc{D[F ?19h8J9d |Gj .ώp^l]_4_rWf6V<5;v{!R5jlٗ\X8`I diJ%᷶# %ˎ^1m\2^j_J2\ҽ\GlF7 O5agH.' 2Rp+!wĊy&DVY}w'?\$?AɐuFC8[t>izzBv[N`{ExuȤ D;^e7" /u#Z⇹ذbd؛" E3~iF5G=nj(wPS_f/mɾldk ^ ,h9r2mDsSTUAz 90^U+b#_V+Y.}5qAbdj /u)H3~mFs/XWzg(.b߅r%”ҒMŴ(XCm p 1owR&gsa+RK0%Eㇸq_7Gw(2M覩 %B*FOġ !FpBX#CE\&VH Xҍ߁{—^@5zݧnӗWS&ǝHZIŹTv[~'/&FRHM7DFx;i=nz%6fQhhۛ,Ox5Ğ 9<4_٠݂ukG{ozbfu>zcnb$ܾ؁Yxnx",nx ,[9dKZ(_լ)zJHU.MZ\Ƚu qtw+^hwB@ w_IAZTg+jn^ '0ŧjUw3FdL T#Z769t,x6+ՊWʠ3Z/Q{;(X>TsxpMxTʕ_i yivv 1&1bN+xFɨكMeYFk?zmuK7lFmH18 VXa7\߳/hv=M(h@^aSvMۓ۾̹k}vr x_FVZ Ғz W|WiOC||i*ŴA||??x e3tfN5a ;Û{ D#ΰJ}WQ!eVaRz˂L< 81סq?C<+F{jc r=pFm,bsS|@d]0㸚 #u[m37җ#Īw!Ji1`TB@ oN2j : NJ(;: :dxkOE1nP)bW;]! WkQmyK;`畁Um{?B Ͳ?I]jr,;AfdQ&z eMBv"ڌ#Bp˂$LRI9<[p LfT[B7$=N[a%F\5*SS> v ĉ8 >"Seu3:AP rϲ6=̹n%q✢4!0^yl?oS ~CSwe3X\Ap$ܙ}+ڎ\zN-'rC.$rp{ *ɌɄOk.ɋ:tB+`M+d$`ҷfBPܓ6TcDzYfϏ1ɧGnnӧv_oWG,TXWxvH֪ʗ 5bJ'T'T@効MNƪI7S &ذAN7ka8mr̨rp?lMp"-ͭ \c^VE;N7x -K4gScy YiKO9(o08*B_͕(yFtE! MKZ+lJnC?kۥH2JSDO#&Lg~Dz]+w>9%ue~l{jҾT3[Vz)${  EU .%h6֤qIxD%lC3"lWݿ3^w3AG ޞFFCL_!s2X孖n%ٖBX;c%aR ̇Or_ 's7 + O!f:^r-/4x+Ϟx7K =N+iV 斾ЄTY so2lc"x+h,&.щH2X0¢䱦_/Л ߬)K݉I<#r'q~ν d`x(Wft}4.EW*m^+zdmVX#bQN@|2Y94 ',n-襫-01vQ-׬BcpfDjMi qڀd} G<)>Vv'ibr,W|݄%1ѲJG³&8/,σˉS*ц ;3[nr=X|#$'|xqȘNQ< [dە"9:(T*o!&d.R+l$p/qos?PnG )ǘ=κ^E+6u9aɎuv*,xl &hgi@7hu)ğ +vP<^C4=LEî.ꈉڦ 1tx0[wV!0(l==v=3t]: J/V**mW}fnR]ȕb7 TLs`mBJgt#忠/TH%ݑߐNt JX&2q-=GWG~&fX0| #{?g;Hxi# Eymk;Ŷ͈LezJni drK,.L7Q)Süo|Fe*4S1+38O,L0_46xH8XM.ϲ<> cUB/<^j-cܪZih1nq,0gP7Rl&8h dg n<5UUɇՌW6i?>)^򳝕oQ}WwhjUVy C˱Re13X8<,,m ҟwxYF<*?i1nqӻ\p@,vOcf0 6f=WRHKx,KeUHXDܪD;Dj~\67+eLQɈܷL1,Z[ű`1My?BP;)MD^?*]!}`'"H!w>2CiL145u/BGj| 3>oiz!NX VkK,<8`'T>ʼn8 iCӂ(cHv2/ƹL+F58@ZdoGl(؉0cJk ;X>5~ / ݡXLXO +{Ln1CB.~y f&1iT7/ڜfϾ(p2RB(U2#HԴ`vvJ[QSɉ2$}x)tsX1ʭm /@fGAPý9F3}gL1USeƃ_ G(ebkDC`jIGݰq+BtfBѧ1.T ;ZŀL"졆mKTpBn@υ9ޭsٳ0gyKz^ 7dz)7[C+ Z{fl5ɋb 6E?^7t(&NY3 ^ܐ_~R\{OO牡H4I) QfS,ۨ(^iC&ނs/K{k)XV/sD ?bTo2'"-Nf$p.RDG݄ Gv^4?16Ye9^ajk^ !z)EdW!=+;!a֘,a̵I.+]% I"Ŏ==@4bD@%4 )EGavxd%lb rkIa fNro| vCwl@(7@]dwjF#q!VGkMP[d=!{nœL[@-P21Y_kKև kp<ү!unПDS]$IwLLwN,VѧVRsMši}ϛN)6:20YZ5"l5{=m 2: 67<i "#{/!sj3%YvJAz Ʋr TdU` eSC4qaUK"l [+9wƆ:XCNvFk;B|}رl:w-rNc ٴPɚg~ p(f]s!lm| ރ8mqn<ĝU[abމCn;[۟:<-LN'ѱVy~Ա K7jW,gQ~iybZ*sб| Gb[!-jUa!Dr&'w ujGVi$VH?Y^R1v[yO}1-5[2 qf$,G,bX CCf3XIVuz-H'aXM[8g0rb8$Oꙇt\ wtz]铫CLGxߙy<@];=&VW.^5e*%8)4bk%@0Gi멌b+YC!  6O3^t|DX/CZ#_.`U<ڧǨ~W\M̵~ 0}W;=9X y A:{3lDXVƼj%_NRW _*uJ+Nݱh<3A5IJ"ƓWW2c¯}t6N[Bd/@_)XV:SRsyGk*.R%BhzzېmkPe\# J{؜2P fgE_6'8+meD1bt'|1v-xYb2yijJB)7 ]fW eAYuD:Z5Kixi=_suE4&#ⴇD "hmmT)wXڻ/ m #]UUgcL M t!@k$E=%z c礅mO$8 p~@juҁ,gJ7:Nt6Z;ڭ A&m돗kP%Qəp* Nʤr0=1wdݸ׿hs;l2A^[dmjdw/P$I{3 'PCNeSƦɼ]ֈ#8P9p E"wyuSXD2 WɌO!ߦRI,UDr-] iOu g"饵5H(A;7\ d]nȬi ʷ"ELE.y4ku`>e.ЁG<u's:0xtWpARt zv9Կw?dp#&3DA(iA$+.bOQ:)-_7`Tlkv|UV7e_7Isa",$ S|ԍ*FD ΰؾP3 9? 1iثlW.`کrv)}4Q ?S}OR5AARmxp7E&"E5hV*ιLOpPsfwJ4o-E4"j=MgbRώrH {Y2Q m#;zGMm]݃SSt䗏b#mdI R9ʠz<+Q0тPԱMqGvC0g 6yS[͏$؂ޝ2(S*kHͮ0"f:$$D# Śg vyv"{/ RPlt͙W~H'&Ãm' E,֌7q<2B ah؛򓜚;gC{t? &)䡏:8}Y 1֦ \rՔש_tz;ClCs!}-?,Φ_q6|TնZHԧ3j?#s~Cf4v !tC%JFAڵ NX +α}َhGPIE"rS mZ <ڻ*[O0GPƂLb هZ&gf"szK ׼ ʂXdnPV&a/lGƉ* _ȗ:6D0BSTߘXs؊-^yfyUıš[l%—EO;H֙SeFGWT2t]S578[<<$Rjf 3o34} 'tn>qi|>q*kA{@e5:'kI!1g_94$=o,ݾg` 2Ck3Qꔇ3ǹK]qT8M^yuLl,L ǪȾv#f*qng\kj5Bs _w,J7 ZY?yu5AFAS6=#XC7inwQovFӋ1IӮZ *Ǘ1 Z7!Vhfz( (àqӯ4lI|>^@g50p~X‰IGa̹^?EkM0hMvt[2$m{ת9bb_}leVy?m 0ix@m b3.ՠXZEpyO9`ڞ 12 wќIG0s5@Pcp.=)M ȢC <^ $!KpDHE?;ьT4xgNj Q@{Z*tN(we3 2edCϣ;1.J6nyp`{f-#_v?$!qt#RuUΨ3Dͷ'P/7j GWcm=p#]D. 5mp|(^&1J{J>+หD* _c2V -ζI6η:BӾ|lxzx[rǚ($N0.ӂ^:גO# +}Kꌪ`3)>M"eF0#<5T*/ݤy%}Ypܠиr5d!Φm 6o MZf +2mb%\r."$k)dZ"\ݔHP(V0)cPiyucá]OP(j@N!0}鸶Am K߸$WcОwG#\phT˗t!1CmoE 9gɜtְbօޮӇ5%_+?1=R@Tբ\dܞ<:'J,]v-ثmOVxǕUST;Z^1+_Lf_r+-=&d^(| z%6G,1S]ٷ@˘LS8Rr͟nJRQ)&ao—qJAJ5%?uXp"M_1yJxL,ŻV+.iN7 қ8mōT;d`OcYDXcCkp<(VDzjKߒ?A#T>yOXs,,٧}jw,$~DM&$m`>_!ė[/dN ]uu.4.I ^O崛c 87x6FA |hVsYű$WIG\ܘ0$|;1nq-X 3ه,&Ͽ*RIP6棱OM̊=Wf!w̮@c)=%6jTp%Y;oXU_@P'f\` Kdܵ0'b!u)9SVmr@ۀ b] ꝉ`mt!Ңm&$"# 3В" OY,|y++%]N BXO  jy~ޱ7k5|5ռuS*p5A܅ݮ-F9`Iza 4wh3[,MB @vn%"i1G #z{n^WKIKD:2H Z;֡^vw\*M@A{[];4,%^ix GIKz9gǀz0-} 0) Ƒ J4T:bxjvVR3ǵE2IQ_[VqM6#}+sAVfg  1x Dljڷ\Q*i[stԕCK'}m{z` 71'w|: Jz#%oRjLR-I;hn~t˜wgqD+kd7Y (p%v}. JIDdk9 L⣇!<_dx0h$9BFW/-enFW]h |yA?pD$ k"4۪nPS xZ4T*]y⡐=,2끽< GT F@0E'-̖"Kn !g!,x`i?Q^V-M~h%SH9g)eT4W"_Ё7A`6mc,}?muhNO1imbB n '>LvJI[!٨dq0)txD4Ek.Bnwa O*\2o>FmD1'r2E}ϙ8Q w#H}^"_ނ]"zx.M{i?Sy^bj=ٚ^">`8VR)anb՘kwJDTR8Du:SW8`vd^*W: .Wf|S$^Hqkj[Of>$\{`έRe 7W1]eBϙ|$1[¨Ѹ˒N89QcRr٥@)I{¨x-C%&p5o5"kC}EAp[@ڍGq*gC4n[VE 8z%"zF{4X~g:ݮ,-X|sauf(_t'`DG)y!\%Ybn7gN wUD 9ۧ+#(ɋTW@ &T) Ekm#|"Pl6 db 7=1"YՁs`P{hY}#z=+dmcbazh(u;2YnG"@0-(KI"q '&9RɎ΢`.0$hٽ.\ͼȃ[֒p -{,o* {6FDn35'톒*硪˝u7Á>ByLt=8!![B9Tr u h7SNr+7(rfQۮY~:xiCne+2ТrGZDWgT[hP8kBXAHxJ<ȴܡ*kx%Y=m-7^2ʊu3/!>'"ƉܹmWn)? 41:wAA y7GT/P|#Er2KnuDTfX$kR0ΆQ:k㕖.t+[ʨ ]8~Mx A pJֿTZkDUTߕ2+m͹ h wgk'K9>i6üL/cҀui0OOb$M6b/CN]"m Y MZҫ]ÙD:!G分5B{{R5=NnYA&vTc)S1s%WAN:2Tv=Q'0fI+1 7&T8 xyexUGI0`6_y oU6E;+0*gvJ( }5-!]0tS@{?(2/)s KyEC!xx&?!dZ3lf!*OxQRT<4 ^ֈ~ZLb1׍:g~Nd&yGFO 0tXC=F-#,V.4$Hq3@."647`$}f^-m ς ,F8[ȸd@]qLiosRq9Nn>s>}FŽ BfAdl8}MŦ͝^FPSO "?ǞN->[$yۇ17)^ۆ`y4ǒ^/9V\IZVua7yj^`}ۭLmTĥUAqSIw\pW}Os6{j%h>,ж|Iԟ:,? &-myMxc{蓜dT2YM+~F0if/۪'~c#;` %ɰ}Ѿ{oJ J'tnME#*.=wm395V/#0H<X$<$ۦ޶L0"k^ kDঙD ^.y tCU)K_$l&u\1Iċp$0rbXSTC+p m;9)4#D%U ԏ6!C.Vv _3݌sޔ3XVRdE170pt TIȒo)lsVPIQ%{/TT% o0M+4Dt*_nɴLy-heb2,fGWtGxRZ>J|)/v!wKVMv EfU_'DW%Ahf;?&I00] Z_@nB@[Ըzeu;]i粧 <0Imd2bt~܆骉)믚ßO-l:tr> jiF˱7~\"V?`a2IpՅW9yI%[(FD?4mlR8V3zz zG5E%Es!qV0'M%5&[0YY"s[u] I{ jVZ Щpk}dH>p y_iu"EG)ZC拮1# ^$J= ,O kf1.XbY8|nR}NӒhE(g[He4Qqz4vLz |+ YXS4h V~ Msa 2ٱ#1J)a9Q'C푒4r29O5rX^rjИȈ}qbF1oN?_`Uzµ[|pe)fx F-v/G&<-V ԇ̊M:h, Ma,}š9wKH~ގ>:Yyղ6~( 7KIh okԵ|~ӯL ޗcn0{a bz8i{_ ]'8+3 KԎ& G>?b(Ǹ[[h:N-[imG^+ݨ@-PW0]b>XEĽTVGhQ`6Z ƘvX}^\V&WFU%-'*Z~~ N^ +;7!Ifxį+3')܎ᚣUαi7?U?bys}',mM ~Ls\;{8j D2 ~=)EusQK5sv8ǏS܌UޫVtePYD= $%؟I^JXH5j(9?x4 #ni7n[Y%Up`¼&`W,HuuFd:?x xS,M:21A6PmDT0K-5W\9N)hەp 7@xu~T_Vt2) $Qs01bd/mYmdLjA1#8M3NklpG=Vsn*l" \⺮V Lh myś^;ƬcuJe 7{&5B4͉FN{ 8+Q۹n_o𼇻OZ֝mjrW~b 4"Lـ%MW~nFA`< $E*'c{Oij3S.X脺jנ`FF{EJs}x6h0Q>&EFJ)S+ӂ8Hc< e~2+,qcKr_4EE3HopSnFj^^2j] #Mb;uW|/{V6O -ְnT %ɑZk@y߱KoV;Mk+*y'8k3~hv/k:kC)]ALom(H29Äա|w`RNoR(E{BNpҩP)~~ݳqoMxP>IUFa,c!0m1=+NB}86s26iR-B"a3>iE<:/ᅸ.͝Ѿm]M\M"unfyK@PKVvRS͟ #M*ZBRIl]^)"*3׳_Zyf2Ў*6".px_ɡ ?.%1|f6BV~Nb*|\}`<)M7wj3 ~uJ3]!^)kL HY*t)T4K^:$2^Qr[xe;H ACeԐ)UdOcF3c^Qu|ط7h: qeТ ƄjJ&0/c#3|F?Q\j|{?6?Wv$@ 6B]tlGAbqce9JfB6r{>`1anSYd{ L]r*teCfk>Ɨ&hT!ق+1p@Q޲ytΐZ6&lvBW׸,NnPb:BEM){ssT~(՗j7'|k!o$ޠ~|` C]9u{\9+o`C5MsԵD۫%%7&B$_)1( fi*Ùښ qhT H[_7Q4(4aldA\ƒn~Ɯ#aT~> 4{~ ɰd1(q6n\6\oӛj#2vuɌX۟UX m;1ѦꚂxu ($~=h2Aٶ@aoe# iw⇃i!VS"(qbQy͕Ag#Yt>5 X ,KeJR&l(L0N爑?G>J ^ Uh =S3f7$3G(F#F丧E.z2BwG@gDyS<0l9q~cbkg^}{Pvz# W\G>s;lT -Ҳ Η%?\p> K(r v,Mhۿz~!C b֕!i HsulŘEYKzϨ97lY50 Q3,~6Vŭ[\܋Y3Fϸ@v݌7+֮@1 "DF^嫲p m/q&O#Ҫ,iJ ̑>3pPG$*WƤ5 hoM0!簓Ư΀1ܱ- k,hffrI+߽~}Rfهj< ?,e1_h|1D`!*I&$;o0̬&jov6oQ8y/k&z 6< .KfYqBSeTֻ|:=LGd-a3P-TKJR SeDN|K!5R#ghN EQIr5r4YG9$Ly>&pĵrPaAU_^M2)ާhm- ;R3:-ERA[c>IzW"6ah܈p:z'VMCW]\GjPo QMehϟ$Ls󎱐ͪE3wP| ='z*n, W#l݉1ϵ7Qr%k `.t1Qo1Y*ʚ+lztlg|%7y*yMǺߛ+b\=4qp e6e:}0 1I_U_k`TΚdwtVI(E#1crh(TXK]dgא7 â1TqGh}gVPy320"y"z4 `C7GfP &J>v=U>ߜyN k`PG)k 7|ͭ5 ̔ٝa9~:yQ Phq n- e7~&j8 0rb~@߃ Ur*wf)ns܄"`uZx+rv'RKlOcw]˻WCό`.xlTtH =L.ky3̼͛B5FwǡT)V#,Iga7~'hO kfM "ūAJX ɀ~׃0וMhlE@7Yɉt랻x9NLl,3'NMMmQb3'I>m-)`)u~d7S>wb8oz.Vq_TP?N&yA5~Z>  ^4z !=<˾5sSL,,89N9q;^= R7fam6Waf*y7j;K!B*HVE V{:i^.Tlb"Ĵrz Q0MHEu vPY6i0rߚO`=aYoWG@آYɒ9dSHGhȫvٷ]1; <1KyP5 =Mn<ԶbQ\|gD\5&|! R.)BR6Vre/Fgi#޵޴5r?ף6]QݳǤIksU*;|>*5 |qq뜲?=~4 [Mk F kU"tgCWy!8%g+3 fy`w۹mNa:$lS157jLtU;jlwAdHT*Doڙ\8*'czvS Q1HIt OhlF5k^? ?dmt1ӑ&FrڜBx7ԏ1gF$khd\3Zc0mH#^~vNO:Hqoxn>GYV9z;ϴDEmHK;;\R@y͡qfVt&ǠB$c"JFOnr. cmfXGl#TWNࣤA,gJXAJ}lU;盨AvUj Y3e_:@łDߴ/$2SP//ފ9ۡ *3t[UO& 4٨X?,j#AWu#tO5v($g (_c&/uq3QöR*/2%U@ؑH,Rm~Ɏ?ܣs\OL3*ߖ4E͐e7眏eO,xYϢ 4d1$G|!)TRD>ӽ2+K.Deܼ^x@rT[.-8;`,Vv¾~ғhz t] 9B0(~Ycݐ] 6+e%~Nll3~ WPyba8+x5Gz׭/6F{ٍ o.1mpUtXGOk;Y3bHN lNQ3+1 T״$Wlevqt dȮbrP? " }?м*?UDrV&i8S,w>A^nEICUx'xaljxXG­S5cFې8o4P H1cXcR[ ͨxNdռ7'WNaTg󤙼~&!P/<΋@\WrpUmGM4v-uihqLw(ȬǽW Xnm$,~|k@EFo|ϥN;!%N[C cwQq9}TBiTZjsGheR<M;eOcm/du襆+ԡF?&nSpaߖ"WrKvf2L)Jd6Uǹ_ڵ-7=("R~9y3H&WUGahHT o9雾 / U'9cf>wr0ᅞ9}dHmXUaFL2Vt鋠̄6GU.YtY E0}*`bl9(knU(=ٸ~-a(&[K,9LZl8C϶yCҘ- E:5KdHRdl c$^DjbֈuEHT;>C;gr9bUN (%*)p W ȁz{2`/íFpCˌ(@i k}Yz#5#aa>i~=c\[+,hCi {]jwF|`Ku%W?n'; JI:"`2xuߎY E줷c<Dʬ,Hl`kJ%,i/쬻Y`ﴮ 9]#Y&6\'R EmFU1~Aw߲O7/T`wi=DZ=wT&*(|A2'K$S`gvݿ[9Y}tNMliplfjL4W܎7%߇ˍ`Nڣ;q$SCn7ɿ7+~ 'dɤHD,ؙRUK? h8eژcrI39ɜy7L,fC_YشX( m+*yzOOU=t<|1+3lMûa7=IY겺w%)eL6 ??'C]CwQ=HRm҉dnkv6L# tg9_,O: Q$'R7T@dA?:4DtJU (/1(:xRu ]w$.ui&KEqb=M'np1D=lƵy(} ZC 6=9A;?酆F,823h0, pf;k@ЦLJ =m!0SѠNN 8E!fqIg <`?%,#ϾߜEճH@@|Ld2= +D[Z/%wrz}F tzʷBׂT0=.C^;v9ssE .Vﰏ3O}d47dcr)S]GaNk n؜o +:e*ЍGDz*9\chkjvLf 瞩^ɓFR"qMiAa T>mEVW|HPEGZ<{N& R jBTn@'0UMAjG㢺J%=)mIr/ sTx=`ׁc\AQ w9ҶkD1Zm|T3k/i#Yp2DO-CjFɃNtٮ#.~4" n ,U {C8劶1aaTt0nc6ı5ѧ&urf5&Nqk_cr!3O״^[AjT 4Q߽2`kW"4o zwFl #yfPo/O84C;i67iqf${cm<:OCMsʄ5pxP*x5=4SK b8Zf-G'I)r(v/HWս.[p=Z?DʷkN_ͩdNEg ^eJ7F$uWonoVҎa=گiVL--J d46RaKkzM>4hn$]qyl.ZW PVl̽K,/Tjs-$qkҤߎ!?ʄ|8"n@7u?5Xg6=n(N—Eopp1k*.۩Q,P2 7'qb`g*fw?-,V3^/(|'J`;qzT>B>A̦hd؋E 7&,rOQ CL/!…4[A_TIsOׯbޠ1ɒ/ TЍi3Q\6; b# [n&|gcWg[Fԅ~'SL ¦BDl@` A+ %sWqJ9عapO9b0I?ƿ/AC[*u-`L_Ҙ(j ' գdw}<7IE]/גZ:SMUflqRU xOhAY`KtFϑKDw_f[R-9K2 g 0NY7HYdĘ"CvYIUs8݂-ߦuZވ!BK*VZz6?M&Md }yF)O wܣ$-;0\kh~!ҎLw<1[,?2{bpߐB( S,;y4 c6δ$9/4U!qui.ɑߋ/-py[#c /FZ|X*ຓ $xhldp3m^wA<#\#fB1vM]ozK5z'xʰ+rY![Ha݁k!j#aN6,4+䢮^&_@s MX/J+nOH{>ܐ$ep1k|i5=D?oƒ,Vg#ue/ o6zk#9~1+Ơ\Pw!p lA':.l`Ip jc;>d_"W6^ Vg 703f{R-qodWGG1_Ft^fEXkKHg IPU gS_tZS\Z!#pmO$r#2"2F|t#> `~69ƦZ6CND0BY8V+ҭhb 'EH:kZxꝒ3dy_ ue͕W#w ؚM}bY% pK9!#g<ԡ܏ ,/ܭYwgBSaZLAEᲟM!k_U&zƇ;ٺR aA}Oe.^=A߽YG *23csYϑ sF&VDV2Ԗsك-3}?F)guH LC5&KoAyL6a@.GY~XUWBp2NN^J=Nv#,*8 0h`f3+A^sl,2gbC9+=D)%QȌP0nyWsLb!GBH.E9"Æ1PaFEK8dE ;8%N*\Yn9Uq!OKN9 tOo6-z8[>~}mEjo#\!x Q1tYLjCiIYE[P`rpL{W-t9}3B5@JAmûr)'v)BiXޅ D8eh2Yh^vdCH(D3ڂw|L.G E&l#h*P7'WF7MyP>=E*4At0!=̀dig(;V <{ sV%ay@f|h{sΟ6Il[M6u㪣>arkXb[ENprU kذ151,.UYfKaD Ӗe F0N}a W mk3B' ,~ |\&G=J=R5Mr7*sȝۜ(I>06%|=6X_-$Yeo>U1m j@V-8gj68cV"jni z8aGN XGJ6Yf/z y?ohU=+:Kj8!"@8tqDt𩁾ٛoZ9JKhb0Q\$&(M 5eG[T[xi|!7 o;%s\-eW>vQ1֜uKkf{P)zJxD((vNip&2BuZ+IB)RGY˼s[z܍y?,ߚ{ſ"2'Ry gNH%6:23s4xϿnҖ3~=ᵅ%AcӮЫ+˥"d#parXՋ:4.19gJ䒍ىdl[ pumoV(8j N8p&͂%ʀ&2\j`_>!}r5,Ω#rtxKSmEp=Vyqai}Ey^.RmU!ϰVdo_-GVT5@s* sG/jz);vd38yA ^Q+w>>5{A& Cs++/)X*#En?O/y="Dy+*K@;MFՒ̑w3NN$Dž E d$O ٻ">}yvh\C P$%bañF$uC;1MK6l_6B_/ƻM2N|d<@LT]9M)zl^Nz ̮Ce=!a=a`أ2ɴQ8$G7o"4{Sl:#ʴ]$tdoJ{%3$0VY ;ӮN/S2Wtq*U9iܻ3PaqodS|tB9PMMR6C\[@#`FRS*XX%1/aS\zQ(U9T/ 4$&?ϮmYC+4qrpe)s۠vs.f/eF"+N1WZd=NN8 tv؍VUJC![7%Ō 7f'h2VhZo<¸Tԁ%LgS4'ષ럨`ePHml1Plfe6:Ң89"![?S$" `CNWYkh<#Ђ񅍍_"B.鲢tw|T~̕/]0dfR x@.I}9p]іu?an9o/cxe{"{R(&>Y;VHWZD fcEыwܰ4s'0)#Qu 0m~I9k.3#H?@kPu;vs槢n~9ݰWA7C'T -2rƗOIJ;+T'Dʫp3|7<;F\X-&S4*Ȗq!VґxNyܤaI$֧2~YK=L@ƙ>tU$5 ϣp\6s][%4dݟ{c׈मxb@AHr[iUTab9ƅ֤;ɸboD7Zwm,bs>--b.yt cD 7PČ.#A %$<;֬\)F`XڜHp*0tXBW(jyУJݥQeAhr-AВo|5C ^EVj,yL2@P<9sQW!gc҄M)93?X`P(P^j8/W.wVaCRѿ+u lqC=mI0C5=b3,/98õ(kh,.ʂ+ӜyA{{vDrԳ"Q"4FA/0,°^MCo` &ůLBTwXs^2 {e*&x7eQxUʆ2Sz{=;E]|Y=2{Ag*Ecrl쫉[LIJLs&7^_1-Kt]N TWuS/l1NB):n FyXDuz&:F;Y6'`)Kف$3-vِEBR81b5~ @xyu ' {\=@ u!)Q3g]Ro+[#7ݹf֘ W1kAe O#LC,B鼆nEJs9~Ƀ/gm?cY|7au~4'?0[o|Y:S} Ek';WM2([-~3bTn^HwbuUWh87 0(IO Ϫ9uu$18ǀ˧= R]d7L=%jj.yNkN m5T`LC /ۇ˫uӯ[ChZ" mJK<42<%#Ǽh ha6ћaU/J'#'N.W;]Uxec/<=gWwXLpVY4W;c A wi"6n}POx`V΍9YSsFoI+'$HS(5Dbt&4"Ee}ዙ6=0#kMKlI`/{\{ ٫>^Ko-$5Zm@tio8Jm޳qOm`=%P0g~}3PLEo47vp vln}J5H'OՊGRRЊ d7<-b򕿲ҭ+ﻗKށy[Pq+U$^p˷?3pى;!1_0WJ'&uB[=@/es|Wܹ!o%ID Y,l%Lv4trg:ᄍ0GdXXO:]AnD:BBA+:O;M7v~j%?2x,R!{_1zw0ocI=R5e)ÐX> VXd{IqK)HjOn w͘t6rp`A؋}sM^/1׷P/:M+y2HNXR!t9B``JNٞVٟ֠~;Pp6˅q-4-28n7a1VvgXjaT^y skrTyl ^!]S?S;=a>e,3<1 1Fʸ{h>uE3ߍ>Q P)&ŧC_q)ܡC)Viö]_y iӇ-d|S BNm#pӉ9~(p@4ޥ$_LT} *.U>#f&t7ˣ,ǽ?|,HҸIa)̙YvlBS&G''i [U(n`Vۋ`N |2_&mu7c\D~ӥFj4f;0i`0ݔE^|V0PkLF-*YgJ!{]ߝCC L |aD+p|@D^G<6"(Χ5^@% )\۩Gk3~r2t'^[s/_0BzB6ߺ#22^@.fu_G|i~Sm4a=(N^. :ey"ۯ }K}K}-mvoiMoj#,=Rۘ!fo1~rx7xGXoQ$ 4aۿ.*7(=ɧj JaܨIdqSL_H5C1fFrPnL3R"#q4aF8ѫ93JU.Гޢ]Wg~2:8zZJ8;Pm!Ɠdg .4?K؟X)ATs}kiAj>WԦ{z1|te)c2vx|*([06q.ͫZ'sȦ@XdbyFY9RR s`A(|e&>K2$Ӑw֗E "V.tqj#.G ;楞W? ! CYiJ~D'c*Mڵg>;he3O.nEqQ^B7b*G޴L#l@qw%c-}Hy4&:fQ#?mjfNan [SdDggG=ySt</oi}y'mSjO67_5C6Bf]lm+@.Kkeh`èXע&,}}#W- ]OpV,Yd)1@y=̰48ThX%7UkHX%Fc*j/P;ӡ-;9tiD-ͭwzYPӔ"`YlY٬͕ޥE\2WRuh' xQ 9V/oZu0'hHx2-+j&,M' :$J$yaz^U],g><`16a~Rd0ث$:AD'^~w3cnD&"DE5~+|D2,=I~kpYfKD 3#u+Gԭb;CҩvH >ۺug %mBҥߢ..Q:Q)!RZITE+Xc?:.%$&ͷ`նGyC\ 觹j.X H)eԏ4eVs?9v'I.\#kFji)ۧ^F7Q<*si Q kTJ˵&L2"V:yQciEJճKQsST

/ІZ%~bb;EHTH9i Nlb^r8"ͨ5Zn1Mܵ _J)(}~ L K*UC[Q!$;Ϩ7Yǽ#%㪲P)m6b~HƔDDt;#NZ_Thk0 U;e(l p<:c|q[dq%M2?;jRY"͝b0R9ΎK[|=_'Q}qtq%&ed@Ai2W޶IV!ƥ-1RGT808B$K0G"|6BI*eO{^+8]'cg]>d@\%QRנYt B)b&=1)7[<1Z2=]e՗nqɘ^C%'um%cߧ[) Ryg/jK5`(%zN1NC T3*M|?G“NĮuM%yܒNɛ_Ԛ3/(0n'MM5?]u}w }rpW`BM xЂ'5V,}G(#n>K; A_0/ GM_} Bj;7+=X{\ 1RYf'r3X`#Zb7&AxrO`"m&#?@bIQ/ao/1G4 _77DW:Ҭ3 :}pLp:ҍE}e߽:(lkνznQ sA_V.x_"=9""穾B.+c5YfBaިu/U;]&LQ\ua,x/ :11EŰͭm8hfYFbOf$تT:bPAfwX1r ܅1\%ߜ06̄X*@/R.ĊrdKarNP#g:q7G(|1a1EJ%K:O.@wVBEyޱ!d&x@%?.cȭ jiּR]ehY.>.rHZ(z.cFo3{谯=)m["c85*7FhqQ4`}-~Υѯ8KFW^Prt54fro%2~}Z ЍhE325aI+pXI\7sSG܍܎  $w0u~ok3~EjJLw}o`8(cYjEE?:By2hrW_\a& aƯ?hPj6nL{EGu=xl6SYg:noirܿ^>276캢fKȵ;ߧmD7CV5]qZR7C0lr )'[X ¨4Ll^ 1 0hC]J*څޒ1ϲSja:AlۺX"l#ÊiV y_f%HBzi[ So?A ;4(:_Jò)Hێ}+>{ʈkX¥*LgV>dD+-ϟ|)KN (Tg/NgH7{>'d]$(ijX<YJ+2MqOॅsK>A('oٸXJ#E tYY -8BkDe7_ (WpWD ܍,f⧃U6܋4Woc 1K arC66U 5_$0fĭ`hӹk Kn6'a.ym 7Q4i7!ZvgHq?\6M8IEf],c F$}4侼sV+Dye<>RLi! q = FJ^3b8ܼ,I`+8 &Iۅ!"0y/f}+tdLb DVbXpDwd&7!I1[K\ m&~d-YX v_9 e3U@]Uno_gqiỊ"u?1j|Yd-FбmW e6d] 4$Mh~׼fx a/8#A&3Ij'{S?'W[3r+/butK @/u:w&cb)E#kÓ}kD#NٹoI7QV>O _݅~ruMx~鹭Lug8wRLpʹ',KvWM$^{,S V CjyicڰkɉI߾SP T\Fx~`Z`I29ˤobd,oDKhbW\L<[}9lty=܀,w)O/ e϶';Rݦ5j y {-Nץm8BGbݖ vF=EK"wL wcΛ|ۘ o[m; H&y I~%`f:lA Y Me Uu(b:g;s5*L#tjps) ۿy;PQт9 (w.>Ys2Sy0雓z+u+eʦ#9+ێ)idrM&]yZSx>hkT4%Otm" u TzX)lN_l%̽9M%v1ۓΝyT5a](S&%ٚ@@67qrõZX^&:meG2r\=,!wWHM)~u %n; ^{󩕑d38Ptll)ӽv sFtEpx@}d*sw_ق ph =s 5TH53 D Mn>A޹i2y (I#{Wp;)Bcx"7^<@xL<$'J^nƢ)6-3T]y+ZlNUrC6l7"btMsG}0(= ]҈W4Lg%s%۹L$°s:D޼mBx_7엉p=ŖCe,h"!V>檸,1 XU[ϭh49p] '2*쐵1В 4Ym&"UXqx29u8RXN \P^ G}E2# /YiD@ #ʶi#@3{ 8Ʋ̌:DqX4~l HidU`OS :-Mz*'*p/5;Ҹ1OOwֿo)(oɣ?piHtf^7ed7_3}d́0vj U1}.=寿\6<1j3x)t5EAGfQr6 D|fhIslT̰?WļK2:D(b {k)7 2){j @=T%%W@0WtxUQ_AKK}=}gY~wi{Va9yCbe(w/>G/>3ħB=8~ Sɀ[.d$(݌.-SM>}GcaE G'*֜yen6u)6aa$ VO}yxt5E=KVXGSѮ 6R! O1yYG JR73y~zѭ1ď7 JWr }~ q"x1OgyF Va"VYgǒ*6V"=C [ &SGj|(y) ԑ.H&1- Zd;]6l+ƶ,|;w(%!6!xWx#?!X׍ҔrU[bh׸A{B=\IQO4iW!SZGMytM~ 7>Dld1%m58aZ6. FW*'y<5^$FNH304~>/[qC~^ װ ho)Z~伷:{+g34LX5̄hK|uAł6S6*.ϭB;t=d&F% xP/@QKs.$ DZ?e %$ǫ2yW%sI_*Mu3CecF'DyG,.nN=͍D#pKC\|ǫ5=,=<2I8VFdhÌAX}b6ӗs%i?X§SvRN7(&|# Bj=͑\]& z>cKeP("\, UshszY 8HЫ.-o1JL#fD4q)kMcڨf9WF5 LW$f ?S?MAq?Gf>Qla;j@UjM ߀*Pq3gtB?_-9I5RE-F NiO싼6UxstbOǹg-eLgS" )7~˧+#0B0+e3 N9?&[Od#AcW׎jSEK8m~~~@Dpԏidb:orZV{=T ~`ml2Q>$q & )RzЎp68H:$Tr\ pE<!drTVHÎ 3+SU&heYnLޏ}iymwvFP-܃ 4pÚhkΣJMZ/;W2GEh ̈gw4?>+i|E \օe3!*_ZˬyEFJP5#FTkl+yǕEj@gPika7Д7_ј#/cI MX{\Rp,4Śk("IhŤ&9ϖ_\r<SESrx-ϙMJ-Ke.‹f)TNC8ZGg]@tL9k*\ qi-S@u8\Oaot)4o.0*eX+fa>6YIi ZKv-T az?:TĞ@掴\^RsAE` Ŕ>E~b䢣E ǂ98_+jp X\ +:b0h?*`n;IB+DOdS2~({!RGz_y xErܥ*'Qʆ6R6MC-@uV*:q"wok5zS:UOXPl9#g8Sabι(b8ds.ãITh8/mt@ aY{FM%,ǩz[b@\InMgM*/>DZ035#TU ` rˎ G&6gd}=wZ7_+:mfN+/#E[kM#oP$f;p(t?6UC/Pux/"]3c5Q3ogpq.nGa"H82A'Eb:ZꀰrT_|vX?<;`CxN>3vM@l+պ"cۨ+ur"f뇱_Ʋ)TO3u^K&cLD:%To> '+n_t¿ېc&$Xp:8S urˆNj Ϯfu#?2݅и˶t-iصrLbܝ/@D @kYrYBLg={7Kex5( k+jjCҰDz!lP_84츰.WJ^Zt4,B+S>R;mǺ4' N+֯L 1`D3޶=p$$nslLĽꏎ16:BdDC+nE|~ŨWNQHMUPҿ|`㎎ϵ֟M?8Wݽ|O˞x]^ŘnI}0ꕦZu!*/Ξ3vqw9841^oP!x)9wn9JUD>TVVFy<܃̹gl6Y$UݰdAVqQ"a\:CmgazD XSElyAGX!V  [5 _NGخ,p'q@+v2ɲ ?U>^R h5yՈ@7xxO*!S-^$A*ZHBbC"YUU.o5?Mis\P?ͪ#f?f9ʼnKѸ"s$S4ͨyn~+k@+D:Akuԭ9Co(iL ;:}kʄGkٔi.XLx0L5_JbXr5ځɘQf#U lsFOG f={9TpjP#щf&cHPk/%?Tz- fӝxk窰3g40[t6S` Xs*RC$^k}e!='FZ)Й4T0N8Zr{h|/kOFZ.VwYJv[v^[m(FRt同O:)e]dY` ywfH⹿R0F.eUgцM8>蛝Yȋ S{jS9-M3"]ZFo7vzdp*,v*tI"kΜq] OJ/qsON'bf]6RN)w~5l0piWㄻOsKӪJNc3&Stf#]^Uo"+2_z Jb,y; "DVL; !O1) ^=_4GÑ8Bcc7\bmT O1TZBs[2܈›Z/r*<2kMy *[c%+_Gpٞu"vؽk VXi5Oh뮑+l>r cvS՞2/{'$섉n-~w息S_]J A-8u͐dXK[>0(]욐\8~TGz6]yMlHWW2,`@1o[|m"\󪚌6=yA 6Xo!]a(@>X4Z옵VR.dP:E y]#.{tԥЅזaf `ROC+2.]$>R<=2 *},9`ŏ!9N 23YN`ul{q$b>ns#<3Hd}F4 o%|Bn:$hQT#5 2m\%1k#3IAvq,FcO Tsɪ?וu CR+Z~OZ_%Ue*dSL6ȰzUQTkarW崗; >h2o98"$fYظ@>x̙vTY}nUp"8 - hz-Ibێ]x0Tk%#Bshqv, C̽un9ߝ.ݢUAg2EfQɞ YK¹u&.|EW Mm-Ʃ~i7$ C6NQsшW; }:oe KY҅t.I=2=o+$~ŒjwDLڔά<yB8&TuԈS#GN=BWM$l1*}61o|Am1RpYWϝ{1tHߓvul`/H.ȥ1r|pټcזc]jρ{T=K)8N#&,H>1WqeNH~lBpz8!R$۔Z Ƞҧ+xPWGg׉~(](Ɯ{ՐVN#Rvwfa{nU+0^o)D݃A6ɶ=|ͮT?P+=GA.+ Rjm_Ƌ6^9ۓs#i' G02HX]Q/e>)@_5ؙ)<•֔eCg+_rhI/;8j]l]YCL * ` PݪZǂV\w)ܗg?^Y+ SO(Tr3}v-M+"e;hN%7"Axqo,6 AH3;ȿ4'nd` : aZC4_{#I^3"9|]|uLǦ uZ"6{g7CcLsQ\2܅Kq=bWa5Ţ6 ><^`d>)!U1XnbU3nubĥqVk$1C^%Ln|0(.\kt,3mȴde%qZrJV:V եCr r]cH'6ߐmgƥڍ "cJȚM3Q5i:0owMoS7Sm-\aouw(1^hTF &*z*)Ii8Dl=h򀏀Ap1TJ_B0\T[΋s^ cyX/cp~- 1$#zm蠓 1ێM\X5x:5FeIQb^:j%0Ʃ4͸yJYa)%B_T7.+ډf2uSݧZx ebs'*a}P-_q3H)\t&҃ =̦Z'\Ss*1:1_-T̎P :cjh&l288#W꜑)Y!fi ],M7bӖ;K^K FD '!N睁u[ó{Y` #;nEuDtB+zKR4 jS̄%1j6ܲUUl#hU}b6UzkpŇ4<{k7SwXU{Sbe)(Ψ]o4҉~>e=@wO#aґ!A zuwF܄& L@na7]#4<[󷼩`2 ^E ?;"MX:mlsL R艜rlWwJ ˨ "KI'qe+B8^ܨx5z iosIqRv$ϸ݊Y8/r b%_ EQr?,}]rPYlݞGe t72HvK$Ew$8CRv Sw4wLz+f"~{vN菳 HtsWxڟKǑ>nхgO\Uʯm0;jHq/Snɮiuo%|W[7ݯz(4x=}R 'IeIJQ]J|&uC"$&]H\/s]( J8Q$wN[{9X<+r:LA:&me8F[U2+hOT'-\Ã~aNȇյ;vӚ2+~ OW0~G1wùBo )~)!V!희!] /4 z NA/wS쐄Z*>|m6Xն}0LC$e.$s]6r^5h)H:q7F_U3\-X}Q9X(~]~Fj rKNzf12SX\^j]W\D/ف2E3}xI'`M_`u0;BZ}ݏ5$j|S9҉;{BjQ=ٙԙG9IM4jj{$#UB=.lYpӸ m_~f-z>.N/'].6ksǚ?:(RG;J'!:"#=>10bAXOk1GЃmDp$=Dُ٩_mǤf;-K}YM=r`e' g8!B*E62tL>ȬFP&U=W|y2/D #n0$.}-Džu :鋗ۑsŽK GBHUbH_ F.#ޞ(;$mWˡAc 9ůw&e%ꄜ1X,PY%7Z-6/ O'yGM!w:F s͇Mbep9F< <X~ )|:D:iv NуHL{KA>glz!ࡏm|{*(Y |1l!j"3oDM@łNz{׹Ǐ761>V U 7)҅ln<~:tYexp5,^UsrP-d'ɕ)h* [v· @38Qx0{TIsA` 7\Qe|CGxJ+-ޣAZR6%~Fٖ-ՑZ\>#5י`KN[Rb3&֬J;:flko8zw&Z7Խ#E"jX}(KTImrՇrXr:$4(TyGl~Eԕ.49 SJ]ߙb=jd'sf9t$D)D{=ܪ`dރzu$:qCLh+L֡! H*)9ʄ"YUY3Ŗ!.Rt,,I7g˭—b̜7~]8xLKT*?*ϓv"ʋc$' l`FZFv A%R:T{ pHE2=s7шc+}: HZlZ͜)O|Le~-AP@y%|^_"\r" Kg{] X-x yXˮ l( |LTtjRoȵe6O9rVu }XI]l*,,\U&}e6r@BNv!'Yfά=Bj& ̝ ~78'U^?>u"60Gy 6)cE bZ+`& co"~GOAbzοPABJkGӲ=(;xJbT9{˫0]@:V{ȁF;#aUGh FB&;j+vzTS!E)_n5L'J#ϿGŧ"i) ͣ].EVeNq gN)HYmpc"G IGκ$12p+Wp- 6/DE5w& ņX{ۯA]dӌZ+%rAjZXFw;\ L;ZE1cG+K62~+d&K3 RW`>)P#~!GohS7ULzckWl %wvZ4DԑmjO ZKT1x6P{@&^>͕6Ó;HphDrYج **%Gz9a IaXs9 :'A$((CƓ%r%T/\]Cq{L'-*3c8RH"A])Hٔ X@uL@Ugۓ1^he?nNf7 Paq$knh|A{ +c7@z*~񞿂HTŐ  Lቜ^Ӕ.2x՝7rտ*>oQ"3KUPڹO=3꼗HY5e<̂z4X`vĺfp*1s$K4;5N{[/đG& q7'"d)@]GDQiʖx4ZG[ (iP]iޚX9ܘzv_\eزXڏa_q^ m94gcwLf{ C+|,:(Q!n8['~\!]A*ٚx8.۱tkF((y}6[FM< !K:,+mje D3%Pr[qyN;x-jlcr ]wj'zӃޖm s0:N.jsCAڴL|,Ư.8GPR6pF\RKߓuFzEo` G6>m6L{G[k?/$PjƝX>!(0b`4L,;-_b㊢؝*];w*S{8KyۜB%e/3*MWkz|q=K'TXa{Э>&<3s-RۓWGA(lW`u (N#0E1#׿]c:FfQ>Tw͚N>ω`MPoMl`@׾JںI8O 2e%RbL40kvf4k/ luܭq7?Eжh Nc!;v\f*T-,Ec;TH2~ȟ`\w6&OK**Ițl-=ګjʼn-n)D2Q'>Ԝg+x:q1,| #371:˥ ?O#5ĀOL9<}B-7;gEV=YW"6)-Ϡ[U4bbXJ GédCյ-7\\&@JDQ"%T0X_JfݡoƧIݖZn*B{,'t{0<01Rp(+!y`ZQʔ te"pFnaQs+vJ#£8b0x;I:f-QwDg6Wo-KA-gXCB%Ѡ@|ΆƟufB*h4<&ۭ60'dcEw_1Uġy7b%3*sJKvSab{+0=FW*%W=Mw|9 +f+rs{*ضƉ/0=i;wlHቹbSkY5\zYrQS2[J?қNz{,- [ ؟#T(#y5ҦH_ʴ Μ,P†iL_;znP0PϺ<9o%튾L64LQ9鿰*o(81optN80Z}AowT}QyAr+r┢%"X ѠdEW :3ܡ )wu"r!yC7p e%<58 eEy8;Qf`:hF,m(tq]Ccf%̢87/&Ew0wH ğ".& ɫ9V/e D$^6O^QA,-SޣT&賂 ?vRTrʴiFZnyBY&ib, sl(xn,N)/Ў{< |[)NVF+P!qXKF ycAao}HBʆJtHM^1ZwGUc\ln[Ӄj@po0@oCר9MzKemyzaV>L*rc5H;d}iXAf-d5d.j}g E9E4vZN[M7"Ɯa nv%E{vZ8&C9~2gЅCs [_7vzqٴ.bnֳt&QVn`R)Ȣ㍮zU)b{H;g7?7ԓφ xsȴh-qMd9tG[TVk!縝" Gn e+ܓ〈x;KSWJ^ፏ^BoQyNثuyp?a9x!m"Bqm\Կp9>WsLVt GՇavŇtlTIc#GVl\B]rxAqD9VmFZIZ?#Bbtu J" UVwvQBM{QPu߯_6;:UvvKM弲 3>wa9zoQN Z6ډ<ֵGlӎ8鞅QhG#m)ygBbY C-/5=%0GtFT' z4q@XcJ* }!ͳe8d;ҖSb;ڝ v+ʹ;%3$;NLq%'3P ;B˪hǵ U }$=1o3SBK3 ]gF:VN*m][)|eەEճisSma!QJ6:y:[^kÅo3;˕Em,w>.K ]F0d7rNTe>Ot\Ļ8gY!:'gŶ^˷@0]"C*!Ф_4"9XsdMihWb㲃Q2Tϗ "`6%lTH5͋tB`' JsIf"Stz/,|ύNbAϣ|죯@IIөUPs9vF%o@FvrԜ"gح;s˙{&ϑ=6bYes¬B(ؠB ⵸{U)pg7mObܡS#x|8iS:Dl޲MsX'aYQ[#e.|~P\X tJ9B)o`0ӦEql mSX?r*$G]gŏWg~υdqݤy Wj_K ~-"/Y"/^xZr m࣌s5Sk@J @I(u̝,vk÷2X Ef+ʵJQBdyy\n0eɈ_un1U \_FyCU?C(nX|X%hP3$_n)08$]?J0*@$Sn%43|yNnj,^ $E`)#5Ǚ ăփ_`k& @Q„W Kaq`ٗ[8Tk3`O婽YR9UOvX18Aex+6ݪwkl>jT lIؒf]+BrwCmoø< `$qsiY ěyvbA$4țje=-s6c{ U-`'6{]6Q!* D>,nj)$Y"J˪BbJRO¤Zp\]n>z[h˵JQWnK, "_m!5l`ޤS9J(S#/ dW-3P娩|mVS1%`%KTH_ѦCR?c$cDrc*D IV'S0M_Բ[1N7T=Nx eyc9 2ziCq'.JD,g0Ucj >F痥&zkkT0OFp`CRCRb>|ğcFȾa[o瑹6:6/;п]V\r+- iouI]`m~|0p鴏`&뚷nfQ#"tڳ]xftܔO>iI.2#zg6ۃۧi$`AW}O R3JTf oKV=K74lpG&_ a(Bd7Ǡ<*dm%Czay.Pg.eigV$c..Ib#8z4zO^`{8d*wZJ1r-ҽ_OڰGC+yt]Q.i9ާ7xtunKz \hF:^6ibdxlm5``SJm܊$|YVwtwݎHvsBδN$kp*,`ɢY8Mux> ld' WCQscY *̂N#̽`}{KGm%cSzCdޯa2bjC\8(5{lǀ[֬& Z}PVI<:_D`)ʷ^[pL G&IL, r5{|טzm4ِGDpwd7Zz Z4Y վco@_,7|x<&2&aP0 230@?ZVS@X8~&s9d%N[F1›1&/ɮAa?l^Dk(of11}#nZ!.uK&a, _W{hv3.@ c1t+F%'Se16}n v4lk ލ S%u})P5[bJftN}#XU* Rw- njj:4w\,@fuRCTc)v3[zkZV{`85Ё:x$S[۔Y|PY?J;Ҿub[*E @yQ{_?yxwetF1!v g=0+9e)oVGI"Q=T"iOdx*tny'Ōrk`$ZhH:_CBf>Xu2A%c#.@I1,vc JyŕjDKEMS沠Lіނ1M>`cIA9XqP:,#6d^~L*yr,xzrPrL^+A!p|G,;J1RA/ٜzO4#QXQu+QdG1mʠ|5 y g@j\Av1J[(fzR^  Y݊<)=ɟ;B 靖1/.Yzpփ7ֹ6MGV 6bWgL$Jibz+?~ ,e"uR*ܷ%(W`.{Q먓f<" w)P7ǣg\cRV,_BPXToa4`׹s*fa.U& _c-;yaߥw'Aw>fqk]~Z46 2Ի"jA0a Z5, 7|+>z &qf N$Ȇ.C:M4[9η5N4: +-g߬e61 p : |n!q d(߇Mfɜ9oYђȟ5C7_2 Lp j8+3bW#(Sn]s:6x^y umצ"g/Ȟ.['evSd*'LE6]:&$[V x9LXA)gErorXd5"TR 6% -fGV1ev]I8uĮcBRѬoԹ|F(j"YT7L{ K~qIBB.nL{ $5O >:Tϻ,>T4=bмѯq%$XjOR^Yvsr$ז ?\H1pTփ醮س.ѩE`L#zmeͮ`ɖJՔX}qCN0QA3PmimKaT2$`>ndtcC=$v!/ݶPlpD_Ԍ<)é+CNmMcF2TL;!TL]_%QV-x"+Yn%q]"Xq r\'R)ôc?.dUWJ $q!fNY̼ZI.Dr1ЊPƪ .(Ann/K'):ϱ'pI:2 ttM`[HaԨЂPјOrca!ۂjܤs_et ; VRj? lQnrwkxtvҴnƔ UHw-4Y#2C՜5f+fr3#I$%ݰG[\3nHaZp?#hg<=򑌃yK pҞF`Ɓ_ &g7-y28G>fe0:%UW6 t*ɺ-0wa:$I;pCE(Z5S}Do 8#`2$ɼ}w4 ^Kˏ7{9٦l< d318LYolV0xs 5܀ꎅ&n;h\WP F6/qg Ju/BƦ/G~ŷUkD/ءQ TL\e`Τ6l+Fòu-|7-q.Z xqwga~Vxu{}iwVWxyߊuY|̼r S;(a_p8H8P ]2H Ta-S,QNjJB'ȵ7t?V#)ԏZs49GWLI$IPFj9er^۽HiXb;belMso"K[,,M)3oz<8O˷M/Nf Cn* 丙̈tp~a/\$C1UDDPRu>xc P6Zuؠokc]⧅_dfεrTʁob5W,Vt^L-ǡk=Od>. .Ӕ,s悕W3R + 72{'Aɀ`pakodVn7 2U坔ږKs7XL]O-JgRq%`W -Z\X,N y§O9!X^JP\2Q'|?*\b0+=Tn]n(忞<wCZ%6EG3m\9`C^ZZg‡SвQpUYquRȅBvfV~.6~]U8yV.L!vs*F%_1 ͚N^mbQ+uC@V"85sS}xvFP!&^oA7@/{͕겠Hn1΄8!M8Iٵk?)ؓ)c,RUuqLt_ǮB%\~ Dqv|:G S{&rfa[ |>|+^"̭FSn*nL͈tFilFDKa8>5'w §W U?}7zgt gQFsA .Xsƺ,"%Mo?@PaE7+9hLK{ld5˚DGŜ>˜;oCQ/!8{t-&K#2XIźu7s jl FjK ~M8Xb}4Kh*Ri}րd({%[`H;G |@ȧ,OKcնTli]}~+߽, /o ֋aQel.@e<5p(~@(/#FNK:Z=SEL'zT4zIjr! +Dkb ѱǚ]6~CgG:ּ FtrE?؉w$ Kb(_|ky>8/Г;GJ Mk-!t QM $Ceyui}m c`/Ƌm}$G1!-O {:CvsI^/?uW/ϲgTk?b]25.5 pξ):Uu $ZDʛkS[ɬ& * DP`Ф(Km eJCL@BkWD!\-#OWuj%|~_c1?d\edLl`Gm6:a((ǰcvgh7(8gRB_*2tZ;WJܧ2`xV-Ϯ9n3*WIN?~}~"㎲4'1fԋZ8{ÔU! F6^Bv臨 f4<,-|B凣B<M' ۍR;p#D(1!^o_=AYf 831 APq@q n []TM.uh=8]ͭ?}KL[C$,J Asg^g}7q,` &0VE종hъ;n4 /V9f"L{*LGZ CEX_Bq=4W T5:Kij|. }2r' F0g~j(wҔ!#9HaL@POİKخ/?@'nXxLNHSj6O|Lf!}iJtᑿ*9N{jd(exJCu* sn\% %IZnNTImhw3^HU x=s1Pm5O#EV."y_u9i?IS~M fL[~^y +a#MOW+YIB*kXmw1T8QlL ҟxl}{^|hMB]yiVU;q/ǛF9({E6bxe+~h1%hEEbiV }ﭰ" kТvfB˜0 vu {.I7FetuaWe+߿:ss'AU8hNe\2a>uƒ~!0}IK(+[+30*dD,^cc0ra!PIxVXȟЈ~ܡs 5o/;3\|]љSĀE 3t D'g#B,xc-6h`V}[9&zw1S-2ONa5*.l9呂rQD t֋*P6vG[CQe̍RsVLtʢ\ީ$ <l&IEe:gr&iKc&}lrvh1lpE{J+[8qGҫD`8Vʊ»L_ Q쯼SBP&Gdw3&*[,?bf^T;M.*f.Ky!PY@a^{`b-uvWqo_q"7K'o^Ŭ7klyqh}LLp\ u\ iWWi*Y]9j*wrU*ŬO2?,RӧDHȮs..˄* ײ\AFXjdI.\oOqșjWl,X=b]D=>?_ >}-Pu+"D1$,pou6%wm;p.Յ{P wg4*U 'z ͑.*5z÷qu!ǴFy'$F𨻳ht q02f"CIu1x=/i#LqNZ`)!✒H0x>Y'>}"'Rd5winVENzQzgNZDvA ]5U7 :xѪgDsp : uu= {'*/[ *,fŹv# wanP ,e4x0.b ={fҕSņXqgz$(@켯◗ ``ߥg\Mha(< 0"EU)hXzN9ffuQr;$!f7NkztnuSKW36Ə~l L*lnNK` }IL9j_(x?m3`'ʹV}D“dd"d4wdT!{^r8>S{"쫆 ͞ǃ98"Q6$iFI:5ϓݪ;gƿA#cnYF [Uv˗ Le3IiiV]dٙ^WD{c8A$82C#(ЕG3-a-/D\:(y$ޔwRIǔ / ӏRɂ;_!fQ_eQ,W!+-ݰnRtٿ5&A[Pl 睉 i$٤Zb\ o,Ƶ@*BlJEW',ki, V Z|i@}r @>͆iS ;H"04ѹخj uJ^(`PͪL{5_B=OI qe3 7{^8ÀvPEsHdLbȗ7B4r2 Fok([cxB*>Y5o"9Z4 Ǵ9`u\'ev!Xb, qXn5f3:rz˹27P'0 CtԱ*k8\:%I:+V,ƇrEoHˉd%wU`VB*0F]>dw<T8"Lr( \Ʒͩo4zo}edV# IpeHQ 0^3UHɶBQz_,0 Z2 )HiTBil̰[K|Oa'Կmq ]q8Z3_1X GRz"M΢y t{~|=!4`@Mr-jx&X~|B16% ّp( ?e ])I~ mpEd4(+&$8Y뢲Xf (0OR);T>ѴN" `eSDK!zaDLԹZLt|y'LHh:Ĭ-➐%[$黝'ׅoxdX1S VEwy!'M3R,*_W8-*3hEDI޾knmtJn0Y`okV[,m% D|[ !~XՠS$ف`:`2gvQsgJv( @(Vu : y6kq0=s̕()⚠߆m7W9o 4+0}:| ploKd?[wn={Y e \\p,\؃9$nHZ;:=PZ/F\Jm/` ôl&OAXuѹC Ğc8`UZ/L٧]`U mDNY|v(fʛՃʖD9tںJoC~&)@Ҷ"愺:^EK~pv?,d0 ;i-] ǭmZDկ]z, g cL ]$\&6‹jRFP# `!Kƴ1ߓ6KQqjg;S [7ňΤ\ty'kMém{Wi Uޜ#-^dУQ: J @)EaьdGkhzN4/G{@X\bT FS \ՌK<}1Nn8&lAJ9FZ7[W5[pQ dۅ<5FJfY,C˖^s<#xؼ9@6X>01EY47@32lZٞv{6FSTu׽o/M.MY0, th0Ӥ(bm1% wm=^T&,VhN&VɌ̂a> =SP!*tČLkI\߀+G =ɆfP1I坋N+# AJQ~?2  F^Rï8tBqO*m|ڌ~tL `]]}T4xh?*sUL8-9/9q1,Ǘhq͔8ybM>Ȍ Rgcn3u]-Ra"hiޭH;O=@1'Fb{Qlhُ9h\XD@9yBT634_'"n289$" JpLy(XbƏS NW [\zL0=-7GPy3T::I4[1VkZR"K:&ɯSCS4SQs{]ȗT;*Iy]u2X]g=ҺyŒs'EGpǯ!MǙ%s w~[PŠonr-[&j[gpTOhR%iL.j(J9 2+.bx2;{ ҈Yh1UG8 kVz>~խûCa~ghJW+zSzz.ޒpyGFr~b;<8ȽfAKS5KQ J NnxH#r? ZBc$>p.xdI`BB57 *e@H+#TEeUՌrBfQ,Rػ嶕Ƃrydα5%ͥ u BYAU }<)u*dAVt^Duxun.:" 4z>ia$BէRd~ ?{/c1`VWodJnF;3H{?3E Q7nG^}b6ffŤihN w8 &9S"S9k> js=WӱǷ~ͣgK7`O&娊e.FWO˙R8`!IFN=\ɚ?zYbSY,|Pf#8QpAߨ6x FPAí,߱nlUoz>خXپ@8µr8` PUPvJ ީmlԨEA7-/xǜvTl̪V`];JL2 u)C$hE{.9M6Hhj5X"jQOP y/K~ԀE c &&y_7r֣O `FCf{HRoY[כ#>Qf2Wp`lel(Z'K /h /Nn&EO[=[ ˰Zmoh}F_C XnWEQp hroUՐ/T'\׳V! ΒS"nFV?ȴx3+*\upi06L=S0't=`,Xav-n&qotIW&4J'hx'NDX(P쵶>DOq }.N&'Á6&JIz5Q-nB]Ɠuymdۺ-n1lE}%x.ƈ|cᾅ7'')9DoQ/d2xooϗ=0>uK`ej)4g[6 zz0L40@| ;ud~^Hm¡uHbZ#e(ܩ??i΀(u0&ΔMz1C {m1_8aԨrj4qÄ@ kZSϤʳ 2ѥS%S(ڀZ.e^i`{y;H5>)6:RS'J/ԇZjd,C ȭ:3.h eP.V[DfHհbßDzlF?_Bs<]*`|C 9ky~G8(0CU-fA`UC.[_vO*OWBMÚ]^2 mx~]"" \a FFGL{t{ А|H5Џvt@ܠrם0|¡lj/jxfkiآJ&I Pn87uiqèpwPsARYY*cpq%hroc0݆r &y]a q@,j.7ah~A?c{ْ§>xSK5HN(o؍hƬ[6? J ^3b|6w9{5`x#ՎIq1n1 qtRD3#y6RגNhח1a\ (q'.ĶcU_Y0*<<dMd\;7m/ lgsbo$5"̲ST規f90NyHab]OXxMh$>5LXlʧ+.`6˰/HC I÷S')-KťY}F4ؚ,iD%]Pw=lMFC(yO.FyzzQAp1.Iua=_P+2f VDtWe=MeEy䣊>Rg3 rӖڋ y_/`TGCnW8s 3ՅJlҪ'ΒXFyɃoLegD; s5J+߮wnO@xRV6S~^R&)%p'̫/R}txwToGϡ daǻ6ۻA>ps `g= ubponys!/CSĴIOL+^N":4]T| +{XVcˆDfp B~5f&J`:"9W P^Y)t$y~WIպl =*8}Zp1СwmU zQJ(*pxfF5i~ՇCS{+ 1[$gKbLˤș)DS=1L[`ZDޘ-6wRټ?^0Wޯ=|yQH! S+QSP߈+Qf[<6WA.S*OO^M:ZhC89>gJ:QMM Ҭ[tO&'H5j  Bɍ B{{ٛӗE?a.u2\Vը I(odٗbY2I> L:a95N[s,|vN膆TΩ|'uh4:7+7VA^ n3H3@`Xp =:V>A/]f)=vJ@z,8 %i<>j]tB!]㔣^sםyɜc4 e&lm Vգ ȍWb5PQKvu{߹XbIô,R8o`GHF0|im9f{G?Lbv"}cp ZԎ#p?ڨ'kX̶#Wwg{W"A7w~K_;{I.țYrt JX)s~BҠ́(y"`qO)`]/F=]f$/i;.W@HCwsnl2Uq4JѾ`8dE!(h D\3z )*n谝bW5eڙ맨[K'ԣUXg_$+01FtsCBx8/M@B.#8I@x!8{©3$ćl&7W3M2;CWv% z"PpkՅ|^e- 0PY37B)rB kHO~bTC<(PK5PMmCb6@tZquoHhP s}2Fr/j8Ĥo~33E\:howyɒ+_j,9Xt-$_LH<R'1MK7㬥 ?w}Oj w $b#(LM| 508[A+[ 9='oOXEN[eF!|%[*\DZ>Ѕzh,DsJݺa64v,Uej](NJAof vfKPSvGDi87\jerD}T-Ձ 9?ܺ_F5؞&.fm1}sRaYu&JN<~{%Ƽ\h1Af{\5ױH$'1 d\eV}pBT6UP AX-H!68ib51Z'H! QF3jg@5pçeq:Z> #fWP[܃[vOb7GP]Qu̖{^s\~Ry) glFXDzȽ @O\q/>&>wˬS PiN'aP3Yȉ2G@̏ꒅJ[L,Sq&CS'D 9t["MAN ,$>qZ^@ pBdxWT|(5Z:#U4Ɋ|?Brbw_$h +('>f[ JR5$!5ߧꢷ[w#NEڲk'%h|x@6{f.c6tᨨ5 TsZW2GcRK6~ VD}+I4"SXmrO95eHlWP9y}M+2oF;n5!عN5:줾j܇1K:d'ڠ`SsKP枻c (ϣ畓n_[-@Ljvp&B g -u4l3OJ%B- W~,)zX[).cLc98gZn{,O,>CZՐ ^ƽ3LeTo#d~mw/2CS;/^ ^W>QuY !3Xm($( = y&ȋKЍ|WV"mhZ6c 9UUA6c/5 le*]hߘ@V9ڥFYpOK7 ؑBS}[Apދf)FQl#F4**tX<%1 u3mO'Mv[-y%N_\>(iomTCvc-R(Fx0z|֢gs 'rXt՗tu!aIs9zxpBZ_[9VD9N8{72=ӛ]_`ҭIfŪwƟk(-C^ FyG{37ZiX5jZcw#iOʳ;&Z\4,Fu`$.sAihKSNj%ltƏ@amطMfԠ$.ށH4^H.mi!AG#3s,0?Tb۲L|Mb%M:Px 04٣ n)(~3ssIx3\b\K96@VRz µ|^\p%kD},8=o'ˌ2R>pT^^|7;RYx3޴C=n"qWY6ħqGo9hb;үZ{܇pNEm/͇e T-kIjh ><~AH45=-_Hq7 HQO)cos3E}(V1#=*jOi}]!aD"/3˗4auDYGNܜJi!tŶX_!&orgBmP@1C8|g4I7oeӧL {@s@hƋQpSRs5KgFb#|GY]$`Yt<y@!/aZmP,p=&h=s\:ڧ>땀 br0j$O"?ƘFǵ`}HkS{CZuL=f2mh2"&n6]"wN:.#^,o2%`YB 9 ?eH>8SxXtFխ@ $++Iר7mʃ7́; %N+L|hnl5D"\~ F\p_aPHQ2|hk&sQ: 4nW{ŖuG<%Bh߄ M ruH$ + ~U̸}Umy6Xnre ru/"i0pkV'HU\]~k8+aSu_P7f^ˀU8{|TIPSR7 Ϊ7INo8M9)ڈ7h/.1RSs=SuC@=Jt\ʴhÓw2U[6\^a+/h8}QEv먪齚_$."J @<ˏ_ʾޑŢ ukfVdd֥Z*Mjz:]aE6>Ӎ/5k wSQZqhl*yYέ!_ypV26'WT]1Gf#9ؐ00] Ō ?[-1&29%kdC#q,ݠܖbP"-/-273[[{OyW|x{] OĮA Є\6jXŨh'(K4|]C)$v"͚e,h$M>PM.4o*z3aQ_n5AxRY]W ejyn^u>x7\&cↀlf?<p:u5ƪnSI}82s){0\N;^]Pت֬ba ڃ?>;2Q] NǞ`&&3]WoG.t+fJlz ݺ ?Jy7b$N,n˫1_D\q?w\C]'ͦЄ}Q,>NR@̻>K/S ȇ4sh| lt{Q 7k p@HMmKlGLSɈYԍڬPB*~V-''XπeN@Gj*nf$d7):|UUph 08( gYq|c6]%({[0.7W~QW1e11P˦hj 7K=NSc~@6S6eۏϻN2ŝOJZ?Bu&P\]Hro3RUwmO)43;3iJ6Y&vBvH, ^fkICdxaWCk­<@ui{Wn,Wf4=[^#= h~NNs_s3wU#pH}Y1 ^=+7t+7LF,s߻pE,x"tIbdsٖW WAv))㾟wf :~j{ʿh1Slk_OlvGLq6\𷶥%oM!P8^z/m+`YX*R씣.ye5Rg0QEIKj sSzQW93'y}|tJG\C39&/u,R-f)vMC;bլk"HKՎ7ZS}THWnuQC-vc?~ FV)E?uh%dG|pRTTG%\.G!r-'7 nfBS9b D)b0gfdÞ2L&$*3]״P9zH\0+:g( бvV4wĒ#~Lz[Ӵ \m9ʊu _jfrQ^!O冿0wu 7{)s$@mX7nWI8>֘=sTaiS;?5=`t\!Ɗ`&Nw߮SkكryDO |/̅n/}(q&x;-b؏>ĹlZ7gyVRI=ٓikdAhFLKbe 楱tRD?z<"10=Sa@8x}`mL5Ec+ҽD,U ^an~fp̤L֦2\26lC1*RO O75T)PjuJEۗ9#c(fG^B x*Յm3Wr5QA%Vn'vPǝɪu :f ʡ?vqQcؤ i +MkBU C"a oC&{q[u& ˿" XX-Ô$&5 k==~@L\qↅv!$襳b@SɭD2Ď(R_YΑ'`DOV˯'9K 0喴Ș T߾+kB9rz `uAB=ebPD;,!R8 L ;*o} @">zޕ"of< vu#,pB7,MUF41t;zzYwm /(޳=nwNH>|#_]䅘#O(bnH煩Jd6#a1h:gK͡`,* *"5>>d/a9xPn'֩Voդ'pbޡע~YPU!b)z.oK1xLD`9y|˜X|ZߋqU;գ!Gs `Hlq:k6@ &i'[VgCCJ*7$<q,_@B)j}OZ&&|,D~MdG8vbe`TĶHscA> 4:0ñ\)?*k3]*EWGIr;-h充dZRoRª;CtJUsZאB'E/sE#ˤIhNJ9GKũA&}F=O&&r+q7V- /ɏXh3B:Yf;\גks9&|(+qch$_Ss'a(;:1[͊'Uz/Uvv%$]bvFR.lv CCSPP╧a9 y.P_780<#H#*Q:CV-'S6zyv ~/u ^~E~)WYؼRKq%$%0&UȶjbQNdIv* w}gյf%WW*wkmbJfByOaFof^ה$״U'-ƞI{A1 ;%~h$3j6SWԈjghIc 4 ڏ]D I<2u;8ed' ϖ0ſY^$j!Ol<J MzןoL1ec%9J689#Y6Y=N),}=GSq0EoX}CSʠK7wWikz:T'RGI I"'E:I΅Ӄ /5Fe \}1CZ,;Ú؛cfnt+^ ,Vw}$&z.wcӾf~QAPzo.fX7khPڳGJEC ZlCne0VT^Lޡ`4 sq_N5h[s ޗxbwh}(#lDA *Q.uB'V3T>.Jzᐧ5|qe(IfYz<'H[ⳈnSu'-3\L?[ oxBʘ ,]Ù?/mT. mP@f _ޘh6,g JUǛS^ u쐧`nYQUA`C¬GLuʘDK+ \ե;-2aOWKnX5xb9&hcO[@󄅺>^dASh~(v-nAgr|QIrGFHUͣvʖ!UP0FxZ|3Gnycz1o$L}®n;XI l}?E$9&&ΣU)a&GlIEu}Jw1s; PmLAӔg;hXp#͸CXh3aʓŏypFv`!m@s#HdF.-hhT>,p~кF:`=$ped!+U^ݽ@~Pέb?f_w)842|%|h7E>#?5?vrfBy7em_3uHHORݛ.A&"g $m3aec Laݗj:wC:" CPeP1+,T"ͫyNi:-#:;S qGOGßrOf-ƋlVe5}(ZB.:m҆\(IదW&[׮k틿 هUODCէ= ZUseϕRR <;ڵO4~M*42!Cvd1zk#eܷz=^&HQ+ Lo=L@5qp7Gbrc7 bRg[K;ߴaߘ-ox&u&lY#w_փh~AuV%>`{TZ;HDsDqrq}3G2 {Pu,'J0/5VK&LnP4;<-'J\:눚|G; ׿4wIWoϋ&{&w΍^V3E$yUQsL[oyC: FMBw,$`h脓$X!&+mBe]64:FL-Eq.D:&J&y,.1A=B^|V=6J%h<_ݽ~D ~<4t|h*>3bO21ZD V~0Fċ]hl͙~kd2ƊTʹ_fSH1.9"{S㦋G*iJa!F~UJ2/NO `hnDkq~!@*0nkHp \w䙂ۡIy9)-u îdX"Ͱ%@/(/ ke otoݔc!D}27-n[{JUyPY= _S&o/Nw% RW+%{ĨK)ï1'/ VxP4E@=}ooRbN%H8Bdsw(akE'fD^&NpBq%H5rF/M?Yձ\حINhn'hhd{pv(3{pI em>g£>fsD<`Yy`_oO!CO/eN:f32US!CYyH'NtBosjpd`z[ X3;n*8`Vej,UP{Ωgi 0VnteRJK Űv@87z0$spzE@/G7@ri% }l$Ti/ք)-ڞK1tp'BOquQi ܧ~Ɣ:H뢒p]p+=k(co SƑ6\Ɛ[7Qi6/ՓDMp q9$OK?nM@DŽrk_^KdwTƊtcc‼p~\Em꨽$b[ɚ?aOqI4!߮ǜC Hy8oLs$n 6| 0XzEŴHE׳& !˟o6QH],tRٮ-E}wCHyHq"J*pMNl7R6wJ*nm9iU!2`Hm ^B{rT܂q T P;;xn8mWTS#_PH-X!Pr!!^,SGpcrͫ.OaL~ղN "J.)IPvi6(p.ėAdj*hԷPw9?-,a٪yJ&ܕѢ eH"[>pet@=6mK6iO. J(ZBy:mhѸP;j2'VRPlLibuHo*(׊l]ZƎNGs7nQ/&¦օPoVU8>bd?MBPdhk72@wɌdQAΉ&e̳Tê(iNyON}4[wTc*F.U<8o" LeiKU9+49=!9O i'טSx5PeZ(:+`_VȮI=u<py bjgP.>Шp IeD#Dgcar4ƚ7>{5Y^zhE8 Y=>6+w4$oA B^7IށȍNa~/1x;T @qA5>s%'ы8Dj%yY~vUaE_pJ7ȴcKSɕ!i!i s žt?ܧQ--/VƔ*,́=af_x܁QdV2ZR'l-<$~S*⿖đpp݁hI[^3؞X"3AnYc|WߒrTEb2w5y'?(toݻyH ,ڄJgwο'wV-o v) /5kVb(,6eJQLJ*jR#0}+]\|6EtI]pAMߑ vUM™ 0:`tL#a LH%ji8g,kui]7펺1(}#nx x2b +E5+ :%Ph?G_?{Y}O$M,m$0ٿ&tq؈!E!;QΖҘ?_0%8 M6갋Eo(|UM[H? M&xYu%Ua"y~8ς4̰,8 zvTw Jd.=~܆7䈳7M{GD5z j\s-RƦ,_j\@,T4Φcjd,5jyz ?^8`ε-Ibw 8fo(JK?lgF S[PueS4zhis_z'SDkKG=\ _vԬ)d87zQIZH*_;EHlf췮7xmϊzNR2-L#8ؒ~uP˰€uELb,r: 7<h}D۷U na6?R~߉dLku rX?Ճ:OS5 zhw0.2(TZ/iOj kJߺ#0M{7 Zdf]o?!CGd{9˘R71<`v^lMIcLFC0oGwN^5Y>3=r\0vA|#±t,es@?^o^E +si$m?!02]|vKIzz"4E5 { Ɵ:Ԛ[]0l $ xID(r]2e oX$0oJE}$/4rQN zv$fsчWh7ze2 5 )Y`VGw ͦYM_CTQ%Y K9SFUX18-ni*B+0-R9cg%mcOWث׹ExGo7o'͊"Yί^dpmYx}r^M5:;H]nN2iEXh*OEdO1K&M#qӖY\Ngs'w yXF) ]6UQ_DWqW~vx& #Ye퀾 CO$nl3cO?H2UPx[; I[, pءݞFCT@tPbշkV^QF*lp rɫdDyϨ-Y؁0Ja-/ %`)0=dÌ.aFFJu=d6pVƥ/iYIMA` mZϤ i!xѐyEJߤŸc7O: <▕1C{x`F O>Jez(={Fxr?OSG,j1k "ji` Ɗ`B(4)`V> 1دe !^K}HSNfݰbZӵZekQ3%L_-cmwΡSvЊbfj6 2ʖP"WJ}8%et8YMϸ+qܗu,OEr- D`w(="ys=ew˜\ 44*5r=Ċ*<*՗ ='{&YR wd0t$aM&GwH—<Ż˝rMB`ΜKBrT]A%oԅ6ԗrOG 3^v&\ 铜 |[GG!n) ?80`)sj:& Ҷ.X#@jN_#M|AI[ ө.Z;: l_`sD\z\{ڀRT$G=b7u_)>fqs#뺤zhhyOGo,Q`Mb%@<#rVg M|+}ɢS[B0 hE^Ӎٰ0GDNX!bDf>kUJ)A|CNt$l0R$hg;':}qMobrGCB><Իv 'A@1T#2&_ p|i)9dSbvu`:x6U6Hv|N)r.j+8>ɺ⣒]p.WoOv6b܄J1Y O 85 I)Y}- $Q˗~8"NrFy4<_X8L/yY*DuPUت;OŭK?M%/lͽWU!QUH\Dmx!L8s:g٤ PшsP.>Ӳxց=W6cF߆_;v-wB{=UNIJ'G?%klw}x燋[$~$xcm>sDW-+67~?ǚMl!}|?XXŕ?I `ND d]IW2L֎.p9"NQ0؆.E .4~Vkb(ؗ40/(jBa:A%.X>/< Tz@W<"L{0&9_|1R$L7A|׷Sr0;ڰM?M}:V00(lc2Qi<"e U5HTvw4/S`%BrO.a4*~lQ#}k2Fzm[6W*8^E *[AiӐ-V:k`6:_R3qͰʽͯK(GFm?ơ\(-w``eNx9i"L1"w AE[nN~ 3j| %ttu<xiTmZ]ٕ<nQF5QIYFEdsJ߲5da>@rd򟤅ƢPi`U@{ޖ$=@?{PN;$mJz5z%D/z!kZ)}`bj~d5^SӋE}vν%',L"EI>`VgEB1 aʁAW8c`8hF7bJy]E;jHp WsylsӱUSOScPE.xJ%<nV{%Doh|յvn.:yn#@KPݤ[BS،9!"7X:"2YWk`3Y_tEp maTY`~aav E =AyvF췺^~D0_ꋋF~VgsChvZ!A4+l-_.ۀPz7M%zs Ν.P i~g1쩑E'~:n_7-;6dЁ1y 9_~].N'.qSsqOgdI]ߋF/WK{pHԦc`YN Iž9f+LBH`{/z>d t[d1 r{J+ oƦ= 85C"d%!F86UL+o%` 2I:̈́/2ש*%Ujqnj1ޜne2a&rgYﴥ,H=M_XЖ{"n{sN+d7(Vf%v,jOr2*Ǔ9RDև9NV%$eSn5qDH_xԔ{dP] @(V&wE/Q}9$84pNs шoj"x~Fd҉CnMG~/fUthRyeٍ!m]|2DM?&7luT iUz-%phᱤT91@6P8d =jGAkpL.ߐLbL5ʁ?ע$T5hƃE0++7A;X%g(kZHI"IL'IKJ@ج*Nwm;D{7=SKQ韚+/$z'gU8XА;jo;xʢmЈpq+͌bfdV-/i+O>g3.,M՚W*iV% 7pzp' dYęj@e6w9p *yH?vV6#۶.'!pqԮDkD 2M 7Z<eq"&mihxV6|4$H"-rLK)#@Ot3Ar 8׈܌$񢯵1jPt@F(0sYOG[{6 |!m ew6ӄ*%YJil'b(a G2Ʌݪ}e1Å-PeG=o + QpᇉĴ\oPND1^[\\ R.KD"a=n{d`ծxȧTZz (zZ8YR9Ο=za݅  +$ou̒G=y%`u*'LhIk|\$W1qj6ABrHAv. gj3NQOHh:DϬC/ PbMBè/=Kߘ[EzzoLHXZ0gcA:$#m.:ұ>Yt\Fw?Of~\=u/Pu5Mb8 E%UxA_xaiM HZgm0@0,L \Uoܴe)Օ.a+tE#VR,f@G)X_r4>1':CJ\zE`Q$*' Ҧ^qWzRʒHn^?` uUթp7#|!p^ aXG-\R keM&ҝ*W%9dž#8+1jC?9QdLC$o]~ X*u:s"=h~S@Z/9Μ;>#'BL)UWeA[2ȶ?U۱:PCG}L]@}F 2Zƣ+%s`ЈjAQ-E}9h!4lN]qɻk"WIW+̢pimz .XꝌ婄΂7;8W=q I͂'/I)K"H=tw l/1T>~l.p{fsJSX:=<'z ~1bF6bk_ܡMl*H5+(,wN>NSZ"zyF,Ӊ뛍pjh>Ri zϗi{8$җvg %4,ivfZP%eSn#"'@wT4[jeˈocat]Z~X|G2.XZgEԨGoR˲\MB'K׵u䊗:L++9=,6Λ'M'3m2 4@\+tB4'h7/viY<񢀓ZV})/3Oa\Laؕ!pn]1s goKQWNܯ^,l,Ȁ5$"]OTRĩ/x|&3镢o=:/Bsu" Ox/mJ>IxpZu+FzrF*bYJ弢qj5e6&6kLTp~/ T*<37Ǔv7HAz,APob`x:\mrBm?4IuNvM' b~ZB@5S,C ۝Dq+p(&MWq79hvH+z9QJ9B1v'59k.H/xvxVݾ;8UYҨ U懈y<JNn`uNem"m/ӱ:Vb/QHQz,-!.;ý@[&WBe'_>3#zS:Ji_o0aS}@KE@_N/Լ')i>8"깄"ƪb RӴfل鎱-ޯf| ٛGP<)`/ ÷G- 8C58 G~o'ʼn lø;"9Ex^8JH;CwncۡD߸\=UNiвK8n F`ߙ]35!Q dWF+*C"&Iih:?kc|g+F=$cuLfQ6]e vr51b-CtIhQ Md$D%y -8,ܒ*URUn(xI!DR?}95:WIbZLESJb>b^'G0F5ku]pVz䌇,iv֚X(TQhTe}` bLZk~ S"@{k V82iuV%{-=1*,"6 1d kƮT=dxַ28>L?D '13/PTՏ;{_*]QkM0UrУ]Q$>Rcl"n2{:dntBז`+HX~n{TP=Jw5h#U9^#1h7obZʨRΗs%E-"N)b7h7LA hk5&3@z݊1axŋW\l2B :׼ǃݤ)}]W@cQ6T"kJe7ʚ ogG7#e1;OvRCበW*'hI&$9ȫ]PRoKvV'<*zsP!Cy,>v.HsANJV[gOS ÌȦ ݼbXgʪZ_ICBx>SXQz|k{AQ=—5A&%X'! V>|њpfUI2VwK*FUp)dvF3ĮMYTzj&ezJKJ,!V_mZuGF|]IҎcޛ[;A\~<#̙oAVeG“D>N!5|V vIm]KƿQzSXi <7Y1?hkrF}-uUDcT dMI6Z{ bv[ј[pIJ!5 D. รǧOçxuhRޠ'D*G.MA˗~ QgDt̘K)j}9p* 4 .4e?>JٶCۧ靥1$*Ƿ bXFd!nVh99z0 ;1aŬb;΁۷E.p=صQ-6ӕ$2<0;\7Wb#&A ݚhbnzְk|&]Ř\R4E/-hR5Rf?4yLMq v]Ѳ9~ eJƙ̶99^*F9ցlӮag(#BG< Y}g~*QPxH-Nb)|=[ V(rau{<@_78~&(_ZewY8RUqsk?#̝Z:+Att^) b\̫QueqN`8 mA6͘pyG,#k1 ֒MC<\J4Z#JC:vk$o~&t,TG o2܏ SBb`.x2g\ Pq,V<{g5Ko.#"W';f-B@HRl$g0B'JNɼ K8)'&5 + # #_xZ,#`'ȕ.3P`iyePY+}*svB-% k2-أr#=ֱ(h^|ߏ1I}7zD21tV")DOj7G}2~#%~~KR?y!ciEk_[7y}+]8,p's9**rϞ&U\cҏ j( pDy1PAq3l#+;o3qLzЗ!3Hqux D4X Pgx 4lV_o; iY-j=$s}M3dNSOha~~eSVo`^(lcA V??,O&vJl%l=D*jlvI9 h%Uc7`goD]4=>,gׇ[i+#^ 6ܨGd5[JZ*8B?19L#9|Iڿ?F*#5ۤ QH ԝ88&SxXm[zodlPI ՀWQ:(c;2`fOã*hq0kA9*OS=޺8<mX%7y  ѣcbOԧhVhw^(C0?gRKVzEn5.vF (K$@`M:. }M/O}>'"m8zSϹR:NJ+ߒ`{mtMIe@&P4B3~<@mi~xOKYxe׺Z"KX(T$:oCCxyg+S&⮀+WO 5ǥﭐrS[uodŻ['T>KW*,+O!<-`J7مca>Cė 2\.kyؖM(}r{ą1$DZ3TZѸ{7[Ubc +{^5=;[b&ʺ`>)v8; )#[)Cdž$W1n;`gS_i( D_`r$uvޮu gZp t3T#"Ʈ9XG1ZͰ*#gXf8KQj#W7Ytǿ KY .a_c)3y Js=ðtqxyhG[Z!dŠ vmQ8%biD[UVē lɲl[k=eGk!*s fo8oiy /pE/ԈO^s;gvS5t4-W~7rmZ{ vG ?oF1P#F<EPeÏ[cE/+*F軕kY&H)/h.ewޡ6 JV9{Qv cM-Fp^v >"zz_51 s3!!ʽFt.ˮBZo`0iPQ,G$/޲FvtrLu?8F,2vˈ* yr|ĩjűΙXe˸_z hk—"ݽ;/DeD\aHѿP vd(܏RfHg0#hg[/؉8,gz+ckg-pG$>qh>O3c)Zߤpr sY*!?@CDZRJ•:j[ %R*-ؓW?Ō;}A3"Wi^ys((&]tZH O|uRc >^9%?aKԑzTPbok5̉*W)¦PN"5 R4DT.2U\-T$ F|8' OdUa[8[7.Ky 4&*y~9wA`V vx:fz2G/1\X|O N-YFq*̢\ktk 8A NpZÔno5|RBM>\dv8@Db7{#i-\3S xFTM.E}c1iE4`&~:+> 93&$/CJ^qł"w0'9IBVs:o=BX SQ:Sf6hAe˭%uP i>6^joK>#ц.UT8ϗBW SS@8 V #f}f[D}9^ǐ뼢ZZ/htSԡ*R)R}'A ?8yOe|*.My{eZ3 ]p 1:'07dsr1A„[b5Qo5Di>p`?iMI"NAVKOōD2wH/x`xK~jp));5crd4,g^TXK |1MA+=- 4>X%ԵZXy!EEk:3٣26dAiǓVϫq;lZ]. P@'2 AZz,S?wDrᜟvݚ`nw,g3;)k2*7(Ox mҾo`cքV@ԀF\uW&H%^?M8A %jh87!x OvoP`_kznr/uO5clsПx, x;.<7~aJqNzŞ7Hk]nz)misHG3hs-ky&q?wSK86ԳPwk۵(`HP4SCߨpL.wNUQ=UF*UN | GG D!fإCUH"BVVw?!bOl뢦$}(jsMd7rB@ l\N"#\!/Y]\g~0VU2`MFeYl?k٭-968a=S*1Jwc23ǂ96.e@Ib1kԏ|Kw dFk_0;+!yЫC2 {Sp53bZ>VzVU'#*w|="@nK<HVsM2Ü . Z0WpE:!mQÕ E6LLP<3,/;rDQC?KnoY"ޔrLU+GfaVN ʨ6ݬxI.:G 8'nZ8*@d[#c|ZsJ1>7X|Gtrb|6'Q u=H'_}2ϭFdQɕg[dwlX^S㬮ygCx6H h/Ι>MHI?!MZ}eq(DCyV 5s-%Bq>Sfs+ףLLr;+Alqa}YMvuc(P@8V:+Z9߆3 16qĨ v` U Wp?;HSG<yQ皮 фlwmZ2dA KEЉC<+vds&XEIp~/lY*s jR`;_.aJ&l}k<eiwKM3EdNOy4>zZG`$'N#f JނA6N :D ؅F<@V~Y߻LvlC* #@{nV8|<&՗C4ɋN]]V֐hgc?E3im`N`ipV=qu>}dni< '>vi\}+S0&_x&xc׿Lac.;rLI˳1`90> u1zaNy~mUJB>S]b=(kXӓgcGjjZpC0 sg==Z5yλXc׳5JR,Ÿ)\>]ܒT'`-M9?P;YO6H]M@8[Η{2js-1 {😘`v&Q{]_!PɅEd޽H"Rꨴ?Idxm(v~^:hX`Ffꚏ#hkr!?a6H̆p^\[E D]2pqp5mĆ$U$?<\,̄Z: l-!gAmpW ˷@x="ve3S?{thic3=_p&Pv:M mά5q[xPAQdɸvo5f%[LD U/q i#=KUs<#nIWx84ߧ{yvu#W n~;uI+MnP|.C(!=Ϫl!fELV7 "tJ#Dmk<2c>r0A wvaFa5\]/M쀐6#y}\%剱4d'#wU Mm70lŒsz'B2' jDe>A ejE[QeӏɕIk@t8ozpy (D65DS6bGx`3C&a( @o>61I*Gӭ+-D9]6_hI&JL}C LaP&̊DM㶮EE;iaFL̉&ӥL"pC2՝&^^I5e>@= ZNw慪D%Wԉ?%g|췰uTop\/8zJO+<"MǢ2K~xt(e4+7O|@@R>*Ř.%u 0mZYC)xzN൜J z 1OɾrY\NE "dW3M$Bάbm8?ON@*$['6*>!gqH&~Jld̜f(IO {wOkz̍?:7 xV%Z;'\X6\#qGAr{:8w(ic#rQ,[ I~xŐŴ82ѩNz`jҼ.ܞe91t=8"GIw#l;8TVx2Dxڱy j,0otk]O3_hjB.% 4AJ9PA2UwdI rF8d5ωe|mMZ:gٔi,}EMw֤61/*Y6WE0(_T8;M13!-8w6p?J OTHE MIDQr<.Z/ڧ(lDȍZe_z}7/ȌXjų&Gܜڅ{ևvL K Oqft9VP떦G:1p7* "%6  W9l;~oq@c OrXmq.1֟t )Je'(g$ֿn.DgaYκ) \C;E›cΡpIQ5Z vG!qA6#0X676Cԫ) ;%!ZIِI[4͍-R KE0ǚ G`bH,n(3_ߤBO.S /Idsu^to3HڥmNDØ8ϴ8f\, ! u'Ɣڥ&z;6p`8ԟ}Mo@]fF0h駄ɑ+VvCׅhVXqF:8M qp V-'㏏fPhf`yl')*W`{B ,^6}]ވs[}7w ȉaV()X"aH >wIQFZ 8Oz["o a:s>۔#+J~{gJŸJz) "H*qqNOj mi-pΑr .=ZBp4'յ*dk SiԲm~DyG^,AjDž3{NXƣձy땬ۋ`NR/8p.i+TmBi4H#h;< N[I3.5RmT,. ƏvDgl=B6rєTkυ2 P+tuOSca{Kam:Hgz;aIk ~޴HM,pƠ[S$3,_鸲Ș65:xrZ;@&@adD"9z'np;҉i3#oK/KXa>I{@Lj8I\ gk2PFuOWp`(ݛskUi4C>]DAu,t~4j٣} e(%O+- *J<ԈtD*MU׹X e`#צM>,:SQ!N$)?:" Ouf)1yԷxCb U%c :#Aѵo; [/#-F9 aZ=9Z[9Ծ-H@Ԉ""RIT݇ьwu[~`.v ++JJ1<*Ep/y A$UB@V hwIX`|tWE=r=x9c4j|I_ŻnR |i])P4uEmūI5Bn*w~}i1s;K7OCKXQm"pDCLL}CFVLD4 T̐ŵGLiU,Kutr޽QAPwߜm*3$r" ].HQ=C ?^5JEN`k^ Qg~\nzvq7JƟɘN BUB^OKlh{̠UWǑ+,[0Xj^BA㪘gR .l| s*C0sjxxR $8oty,ދ0w 4^*Hl3${U&)=.Z:$ ! -|/:I{pjJdJ X­]bZɓoe|#7 Bө2PZ@+v2gZ.nΤq$XAXwE>R⸫p3g#ᜯ(tz&gN*:g<_YX/{"Q%B!EԲXќl-m\9[<؃(rʱ-w4xy] 4ag0T/[SmTNs‹jRHѠ0E|'<(Wa8de$PyR\F1~]nϯ$'(ӻfQN=yɯl dr<#2D,Nc ^)MD@tYl<g K_ /kB+b9 cݢxw&w` :gr| ;CILDt$fW'PS`<αR<~Ĵz^Xތ6ѱ_Wp NcdJ]m%~eD /U⊫̨=`uNcbᆖ~%v7Q:gwP&*zٱ0Qel|Jc}i?mY uQVuNA2mrR%%XXE|-qͲn[r4~[po?P7U?^i?J-xNv݀ ^GXq>_I j#4 47m uFWǖ|/{0Ni[Q}/>39I~֐t'ټA1Dɼa\j~,,&^*B|Rq7{{߁4ȳ]1ZS!R>+kJ22؝ x H& jk/4^:@KrCS=Z Fjo]grzfVyӎs1̍;ဃh7o8m>H̓ jO w|fgiTHQ *W-=;UٕF &o s36\ '0ڑbͱoxYx5M4ct}NB` dBy@˕V򗼙N*A-mv9|eKZP->&suGyիPs87?!Mn$ʩMOW?{U>c00 ,^13o>8ÉS:8y`˗}/9ʁu2"2sUp"bxapGK%|5v"5qub ld9uW)Ln#yȎhvsBغr'55]< `QsqЀv]b*ċ˩w` -󟃡#s8{b2|bՒJjz2#VoY"A_l*KOphog``nHzO2_nr9t; w}Jyͫ%#J7R?'hX@EdSml|X*J6ϰ_C*3ϕf zb%/8+BD(J$t!i2]I mzE7"%|ؿ'gL,reWU85Q#hO.bJ2w~|y4i'ICTo\f3z8,pMB q^s9iQ)KQR,s?rSU=2]%r74; vJI}؀bNތ-; "3+KH9ZIu2&w=g\|_I_""'g0 >qʤi[mBqW?fع̽*IYp?t'yMͯ.]1Keϋ2t07m|f$(]ZVujөo-~IvE ́%?d.~\8WaBSoߊA:-!Tek#cr}qv*yU,06eޖl ohu:ݐZ\?7ha~4xBoE6Wyւ $`l5ZEv\?pARf@Ti*kJ 4)V0R:hS~|Av#V)]+I]h@2 5It;;eEc <jmiJhGOd}_u~3_-+=Yaw3ipx=?ď[XD Mr!^$f,N8Χ`3P΄'=|80VTgaѱMdȒ_jliEEs/aRzW~'ԭnE5 25Jd߇!G!jfه UE\K.VR4TX)y>bCRZ$VoB Wiz+mBWxd]*Ux&9ܷ<H jwhpfRISCn'}r34]&.Pxxˌ ǹ$µbܷB.7꺏<ϡsj"ִ. OΫ21 IoПJ^ʢBde?Kß[wջjXGpF2PϕX Z5B>q(fPa~絭|&Ǫ-tEGXdK!TŦHx\ǃA:dw_1rp/4ne\7w^=C)tX7Z~C3{P?@bnU_ln.eqN͹%fURIv Dv9iָ!3#i ĪKdRk@ƁWO&]Kv/LXn۷ ͝nX3Q= rx?0-n'cNA1`D\^K8̬s/[Uj!+d0?0Ѱ{o.KE\gHDb" ? \foң S&/5Ù55^w CaE6"߿ O8fQxu׻ PE cxzſDM[9{jQO!5mq`JҼgO&*.INm @)sIKzڹ޿`͛&*d_iތM=!u&>Abd+\nPJ*<. QU r{Uhc ŲueR$oLrFs]W'9r< t4#1O&)PH͛~ՠudU' G%O[2"S䆵H#Iz{u7Ph{n_)Q7+(Z;TQݔWdu'oFU~ͨJ) *ADRsh>^һc:#B!h}7_&ܵRb&QxD@k߾l(&(mQ0oaDE,.?yyEC"@,nꔩo,Cʳ(Sh\ҞZRY t3H:; 1Y-6\Sy6\4l{PIBVFₚ 4i1\B)11wf`FbיT][Nu2;SV1g!ªZ+2o5yռ\frRgͤY8fWQm2k%oJ*.ՊkG-ɒQ~ZcLjɸSz9ΟDӓ83ɨeB:t+j+=XiSünv&׽ۀzd;HNKc>˔ +5 F-ߜצtZ^Vhzb3i)(_f.֝M<Ģӹa֯H^t]jFfE6Ⱥ{_nϴUԫq}^Iil\5\_Sw9!b>amqo(v snp -3t6ȶccev5;JbaMݢbPQv`p̎"!"n50xf:pJA fJ!F3p1AZм+rmizW4% 1:=˝w٤CSٽ݇l1G brHk2d,VUxr!pX>raB k(tЦ42MK&[\˜8XYTpTWHK"0 θ+Bg7ک5{N>`V+GS>fiI'a F3B"4 MkW"##lEGZhэHS 3N֥-m8fr)yZGO?9eBje)MQ(7o<&oK 2]Aea9 /d{*̳:, W5Hsa]IД0BWJ#O:kowJ -U7 RITFMGR w? ),NuDg'c 2$TNGKz ~J8Ͷu"MWSvҰRO}HE5*0P{yeIW R#IZ[~@Vkژ5l!$HN *d?ri'QEYi@6}4Y{^ 9Rʻ] uꋟݡh`uIaG˴^gT<uHC΢б`n~}[{ .ys-\ Vltxfje3]2 96o+ ۚ"MLQs&ZvLY!Ds&1K.7Ri,Qt+0Jb lÓ5I")u5B|:1 Gb@W62y)[Ip$+m a ґh7*d[)+U1t&/ba|vt }5j7 )y} CT9Cm.=VpΣ9'5[aM@-X8W {bw v$"))L0vPF{~#cK̸*ɻ=8E=Qd{ n~޺?dV[6NӉRb3 "!u0O%YsW̜x&_L]C@O<&(77~`ysAR2EbB1'V{<84 MvIt9\!: +#A<ުw$<96'bnW}- q֗ӋxM;1'}y__NeSw $ʦEalL hkdӾ-L:t f_wŚ3/́#Br`W݌s #QЏXB4`=$n@"=Xf+^(v,PgêG󤠚D-Yy5H-Lz|T-ɑp80%r(195morqq+;[?e2(/Vk=~i-Ǡq@cr&Hp$o,`s{jF-3=+X]37Mt:D{Wc{"a2\<o0JL t3_t(pSwM  y2fX|r$QNu W5f Û8SO >lt58԰YG^uPVЗĈF{bgCCey*vqbmi(A}R5\}LoP^&Knh2߾ck#cAj=elɑ,51^,m* C >LF_'Fv eGKu*$/Kˆnֻ\zwv9-R9(s+TyC2/Ei\#:tf=L>gw|zu^\B6yhgqꢽJ`7ʄR\DoVQlHK3oqaULHyҫkH윩K4* %mGawD&9UuNE`/GMAo>%ڻY[B u1V7INW9r'%Q;:&K;yZ?Cצ5y+?/^%6a/ݓtډ(̪({-AJ<zPɆSElm=&rf=b ;bd;F=<*8rBğI5F8v 5d!jF͊զ QWZ S:uU(dCHj>Ͱ26[l ; EC=LCTh6ZF2 ai[;K9w-D7ki|np(\0dK`L0LnۅUXױ#1SUz8{"ZՊs$g"׬=[b> lycRegSX!q~bVVxץ\MB$#;e;Ak9~T6Zфcr3x2{r-ߠuLx GK2{\6of8`wPT\ՆtB7MZe\:^z]{Qc#}0Xe98jR`L 2Z4 }0mOaиɰlǏVTޜ J}NX5՛ NsUGy}T^zrOn¹X)5\;gdTFAXt| ,/$x Xknv ,ХR-S9'p 2a:{a[Bxb}bYƁ{!5}y&f:uosݿ_8xLMвJVt+9DS$LG|43cRiMr1KrQ'`5qȫՍI! P~BIJ y~WV'ߨ֯%t j);X;qfH"XFUG@z/\_bnP7Hm˸q`)`.5Gi\pga>h0ġz#{ {~D5É ;INqyR Q$߽pXgnhqd 6$ vO{g/cy7~lG;Γ51pP%VW֠Xa{86rƮ,|D="`~@ATXIM@Jae2Snlwʕc&Qi]jvcF|9?~a/e5Y)a`(~| y/J h9]7dq 9 Sm|Q1en ]/[|>ɯ:IRC#:PC4"aݑe] vPR1`Z3+C$1N8oW֎$>9YqoeS@(IGA%^璩/.J@-:xeoowNJp( E|񩜙GYM̿e̛XgKL^⧘y  {hEX;N7\`$)GlVʝN=ۏD7S0_uz6dLto:B+qMA@:~y #lP_m$KrV`l Ԭn^hLbOvwy$>^D;D `>URXt<[ eZW.{ސ`vѰbk#)V8H,k$&@'"eqUhRi{dYIϩ݁lfsY+: ~|;G)YԱ Րxaq4X+ 2kԃ3'D](.Y:XL8a\˹2X`mnQLWDÏgMq oW*}-䵸sd r=R4o:s2i@dn VBPaE?/1{V7@Gfh\գ}jGſk;vͥvMjk5. z](<ɐ=ݤ[k AHB/^p^ퟁ9j-Bڤtޢb.&KGckyoX}Qc8ާA.Bi'x @k IdWEa-h>c }yN+VbSٚcq†FbdHYX0FɪT@Md.aW5h 4}f.u`q:75[e/C^#C~^Sz.PLRwxLQ9s'Y.}[^B EUwU',Odz]8|EMk4C@ NIe5fő.ʐ.[Z#</iEBlN҅W}i%P ~)큊K|-$IcզA RLUp`0NWQv7?ᅥ|@~4/ҐG/j T^}Sx!UN `=hCW*iN,]h+iƮ*wڶNiubX&5s"x>=B3ND7oAza2W̱wy+ f`;нHndd ߼Nw?;" )XQ9{Aǽa^X/zXj)$R)  dM=c($ۛrX)gdRnA@xX>!),'u c9;-6,'na֍wg&D);Bؾz;=w"t؀\[6$޵dC1M=sʲUHl|y^A$Z9i)0w*w!vG._/KN?P guWU<иܒͤSn_$~-&\}2iR^RGAvV^L4|.Bljzbb[E)]=MFkGjLɬZq]뼂wHF^s44Q "$$W Hb$2'xuq}"ݔ<"]. ~!((ot^.,TJ㡩 \vxLW. Krq Z1"Q#q]&Ңglq5s2ir9Y-N^1-WQF'@i\];9~ܬG֬Y2I z_KÉ^pʜz:lvUujH!o뢥Զg)8KE{O/u3tv !ɼ"qԕ<\|:HM>g(3Q\[az&E* mW*^.]xrQg d?/=УFuLKD駶.ONH".IMCpT(hԸ,>{ ZGL|YȥpqUfjdh'x'sd%̏aP  s9gbh۴? |uޛLOx[j@1 ysٵ0jrZOiwe uRmcGg~>u*gKQ֙Y^FM,sÂF⪉2#mTIV =0AbơXnZ8R.A \Q NFOay6`¦d4g|vOpedS۠<2]$ל$(ňjW&qz x:g}‹д7ѣ= EF1^ <Rr erl]]ZMVm#5! í'ۈ0pŁghD}u_^)!"[ "t>ǿb Ks'[ ^@9ovh4k#4rz]*j#H֜OЇưĴv]rzA:l// <]7Un&tZG13&͊N.ϵh&|1e^tZkHʀPqKTQ4 RY b<Y-E!p\n'ߴJSj[ ]-30%Be¹q&ant HTh%|D)]iAG bkS$  }ÃyaU]'Iܮ$%˯ݲ ͂@Â@g>8rS$YX7ku d /Y}2BUiuי4K]}a6).N#'q0 B>r8SӰifvL1x σy7ke4/(>g'/b {&qD AUAN!8 kv!^5cJbWdUOG#mZ.( Tk٧Y{`D_{Z*5S$ վukS=/ ?8!GZ=P>u(cV;Dxw7#O"er u3*,\U|b#$ƶLRV4H.],~.qB8u cp 3:ԐۯNd}Pfb壧,W~م7S*q :Ca2YQJ{J0UB6i[H&TѾ?uaV#0+Q7wQ4f}WBdGXPeݠf'*XƯxHvops]ittՅT؋C6PDv']hظ0-A>WD,:²0$,=ڈl3cjȨLq3aފ^ϵb(M)5GEp瑒; UnhnW>~HÅUen]nL7Aj K_uu8UKǛ'ѽLΚ(&pu7o3`'ft3ʮFC*wYғ2p =r8<Ӗc9--kYr--|jhmv068(51~CjiuヅH_YW6H1nd/޸mwG'FPJAfG<8`'iEX+Fuu %}֨|IS 'Ua!a}p]NX[M؄Y#MԊbFįh#[&t+"M[,熞z?;{N:&d^e"5d!C!KƻؐB+l x@{chOw$mQ8~+b" xJ{žhì!K :2Z>Ë?&B?ϳ75Ē9bJp~{o&Ԭ-gr5%ިP2#.AWlԉ҈hY ^Gv؅s[ѓx|!K1e;pI׬0y? pԪ`fE_N8&CLI/;HOW 7t$$߀򣵊KĿ3 hJ,\~oIQ';.&E7s^1ws9&'>R0&s?0o6JHpsx=naddHi4)yC>{[>WC >±\X9I>,eRh,2o@E=q/;ԩ$W$9PX.qŽ4!.@0bv5%S1a`nQWZu/3im73P{#cLքfMvtcfVC>'nw,B/5h1U71ݚn^F,q`== # g">^Hav g {/Y\PP9mð E3Rc5 ԡ4@-(YDvAr/W)ipUs틿 PڞOx) \>l| Sdz?dPb7m p35 "s[!0"80>ݠYX~afThe}q}Wc1asJ_&mhB{̔x SshK[:@)˔}kVGI[2j:Wy*|O( E!P֫V=xZ1u M5[kvU ;ԜV"La\ܽ?=fEԫBfm(w-ЙMӒ)P`QPtհ2%`ELu!yywv>L=_xU(0Y) 6*`Alh\0C)𐻍ZO!p So#Oర<@ﵾ65=E UƼ ]y gۈÅY)o=CyZD<ڳ0wd|/7+enw-f^ _~34^3ɱd#FA͒ DqliOzFl[k%ZkA tMۧ\@. 8ש~0VSrx՝ ZmeV"2K+6:04 u՚WM-!DO'3;ZƫM?q _`71Hz,kIA [cz:I0C`rWڎz8戏[kaRsOiO]rn0&؆|aoZ@.3g/r "U(l00pGf9[B7jLfR,A2zƆ$jL>ͺs`%(vnJ-4&0~h 6CxFb_D V *  *-mf}g3ǝ EbC4YI*S(( h\ JUiCt?˗7ӋIqA&]rBz^saA~5BdLҚyC$vD \`ԯLe-鍙Sv{ yE6 yP{g{[଍=6c%i4x'uquN0m0|R;A^yVuzllX#܎1Z**n8,w[J˷KGAkD׎U“ʁ鼥,S-x8qu7!V%G87OP9IueYIE8@ z\\:cQLQ%Dt }&)9'$#7 !f:k)v89lӇF"LgnHN8`|>{zɨD66 .9ж"8 3Z Ʒ?aWg=j|d~Q}tPEvɌqt/h*4aȕBBշxۼ w ̆dnWA& zXw5է02 &h902 G0!RWhFYDmDZÚ{d3/ErПv~ <ySh{ZنDžB/# -,]`1kq=ؚhjvUH1x~φ5wN!`JujvU- "SƔ,?ȟ)jb'ΓGҧ'v j^~Sr&$[61(M"Zs$|I/"מ 6NHI#3qbT;dx[,2&;z 3NIͬqVC>(*{s~K8+5Ym"7m)gH|p_uf#_ָBο; 5MXnK8F) GGN I|kWУґZh"gfsCʵ;>isҙlgQx1m|w [*vK9*yH헱s07xΈ;e*uFn@1 >؀i5g}P({_2L@HƂVUw6.OTCxG߯5E c/g}D\-(k(%0;9a\RDYn8l߳eCsbI dU?cO,˪.j&촬w1lPɰR%GTpKbf7'j5~!>bc.*Y=O*)A֛X;?@>l~Dų'yw?yn5Z-Vt-ڍh}_DYS3Zt ](Mow+D@ n%694u|{M %ΝF7B&N*"2c!\@ I*{rBwњtT;7C3*!7$&R6l 0)k\n_C"A͊cZhj90/X/h#/i0z2 4h-g1f:!y~iBQFyS49-a<4v?B4 Eu|ds{^Nj[:B& !-O 9m V} ~~=E+W`~\eu'Aq}_'%e9~n6YuSD:fEFōM=-E3žxɔ/&]lFVN5#<>6\VMQlͣ-맖y 1]P8XA9ئD;"8f\tMxT'G` ;i-2hD4(Un3c+Xkkx`5$!" xٙ @\Dz!ϊ*'-⟛GUC|gHH_l--bg\J\lG̑=bka"iEa8 RX4 {|=K #O@Aɠ{`>^*=7DYe-1bЩPPq@Co nnb灷GƠ CsXP:ܠ4{E( 9Yv),tQ><i`~SVSſ/d\J['j#O<8Qa"2"gF~qR3VyzI 4$v;޸9,MN(C,̴8&L8$IsE&Cb8ঢ়JFjW%;c^"so 54vR5q}0ӦCEY8b`7 k,KQJ-`rjy"MJf%}Zߏ ?Eh͐g_c{t7:mmk]cќ-n| xOuT7a}PE+a^x08OVQ+[m\FhDL(t{8o>QtcUm^ȧ|3q;[㊁3eX{=@]l#Q8@c VLUS:u3l~P!~̑' &%T-fQOII<{s-S+Q[l?sz&{})twwa9b H  6B{G?2`R:wz\0DL̛S _3BX8mQ^nUNBRMgs:A&Α@H  Qnw-G}nPH1iгoW=  ]s$onwNjs:1}͕*`+.(.H*U|I^yqEk+ɌˀI9iUYG/{ԺŤ{yw#S)O~.߀zXgMOg=ØHɄ}cwA|EsQ" ^ 9\o)NgajcwSeAB* ރ}4r$مqTV~rٸ,uR&RKGn?V0髡>B 2Lovo[MgHj|\HUA2[T%fe>ˠ3F^fEXrOJ0^<SS S&%Q,Ta 0zw,YӮ(40On#dDW B-ʲl89Agefga&|1KjĹ4ip]LUhh uiK"~l( O4}l DTb%-fx`=TM:Ŋt(ʐN2εϟ~"8E3`0H]Q_%bO(;XY:oa"@D9 B3fDyQ I_PesW$E+U?z[` tm{m--7QE)cs=n/nl.{F&8Y}K`snL­);!Y}>0'ǘd$p*!2趧)EvUO3y19_ |(}z2(l W$ΝȦ L$\Y5aUx 4;Eع?P )d7Eֽ \)ӱݟizP.#սC7MayZYvEV*quPC7 ^0r#w>> q`1-GS42=beK$Xw19>لp޿$,΂}te"g- g~CM2Z9 .5e&vWUpu'iC}>tA%lxXtuќKx3Ub_},Щ@+y>A%L&jqP;p{)͓r/Hd0/h^zU3d8ڇO 4X"fo "w|6Uƞi"*KtZMLpR,t9ӵ'{GH~(M"L_;߾Z b N+51i 5TOW†A%ސ#˔;)vV2/R#$>$3޼r;*V5Qq*D9A+!P^ys&(LBaͧO83$I!].c.&e+m2LTuSYU!/ Hpy$|2Vf~!yHXb*YwfwP?L~`M&!A)1k2آF=gE3N~5<ɀp&rFO^5>;PUsAA,KF ?S97/JL̞im C{m6XBFI7[8 s!s'I1߫@4Gz 5ZPa$e!`@|VĢFDWA( .4FbO(X{}M~PbSh.Y"ҸXDLtlcU%3"[W62C65 ^ ΙOUT{Zł'6#-*s`usN_(KX ]9j̧YڴUȓ_= &J-yE7u7k,,sT~), -{K*7g[gZzow&'MTș4LvsAɨm䤦u Z]uT/}|eHN-xur q̼8y/2/tyZY2M0{K\Yq|>FBMfW7$#hfv8b~t(KôyeZ_mw[`@x Ey% GkJgǶ6_Ӌ 79](nh n3AO8[L[۸ ~ג+ 2 h["p='Հ>ZVߥP˵9qhmb};st7c|7VQZ|5OUPx FTn[J +e*@!MM$֨T'!2z:!ƕ,=ELڼ;Sq< [m8k$JCMkV_`/*IO7Ԕײhck@e7M"կ& 5nZIWqFc*Cc:՟[sB7&4*YN9nu@JKF=$.ϡk5m[풦n{o &欂iѝÌݕ6K;ZN 6I`CX4 {E Go5 \8qBߓ0\Fk2^}R9<˙KUvHUZdzKnՇ's~禸u᭤&eOY zPUY-~^9P3`:R%'bEIݸ䙑C#.w#dpcn#Y[o8|šڸKFB}~@m-9嬛g/p]^86\B>-(.(jp!Ng 1'k6UӉLܹd"'BU) E@Z|ub`j {19tNpmrq۫5-HZad;TE HN\ǔ)@QyifEH #2za}nGۄd凇=ǟBm>|]4fHmpsu3:C jV43J+/w';&l3 a `Vtd޿ #9a[Ά0%3}Oc\bO1w5I? 14ڤ ")Jso~K6Yӯe" IƬ|C yb3BFSD〜U/zR®9sf,&6M nP5"ٚмOAـ? @)?*n(A+9b,y."p^bEao1+=RjmQ(O*l5Y{o v#Ghıh,RVLi=gLF%ܓ4 ѾgTi͘~baC(CMZ?3t;2"R N =-ƹ,QأnHк-Ԯ&QGA aò_x3R CLa|&.lg\,-?HF{Ĩ;SMΆn(\wgEٷپS# R[0yd<-t.6~`6.[^׳SIYM Ug@nÛSLq BOڸqQ#"[\־nA*ZR9A>=rnP"(R,s8T0 Y/JT[MGI6ؤkf`wQ^K(Q 3,c KIZC2U |:9lEː:Ih/2G հ{A4ꫥ?gp?ه-nt/&Q֐Q*{^HpT |I5T@\ʀg"qH琇YOw bx1 -ԝĬ}(,P\P)b00ۍDVhgG@ L  h֣WL~Ʒ2k|%ҨRoEBtƨf痍;zGYX/q hl\eAkgQ Z3g˓ uk(dfdtd6lۜ4o Ѓ SKu(}AX!T{*pX9O[xe:-H}Lpx Bww>q#`'jDgFM±m| 3wVYIm 021%OՋ*xb\}ȶ~= Y#}-c1?4_ nWDlC5s 9W\jx pj{jSP8P 9`ll@V9o\(s\kY2~бu^ I0.!IKwb ]AoęGA^(,3zZ' b3};1/g|j ah];F{&FV|n5o9ThgxQlb ȄV[5Y"+ |:ND@@yK1R)ޓf%Qc6!l:<"VG]H8⅒aV6 jh;f"^a1Z7KE]Co_8Mܭ3*zr.Je>SMG=;E/'A:?ysSH)BE:PlrZQΩ@] F_%xQscBFMw- .o'0ILpWk` Tp,֬Xu-D-j&JqtV߱NvK.%e sR[g +[q}Y*>YƔ&C4 tL{bWk%zŕt4Aӑ}/D UZ%h>oFƟM7,.}{Ҫ/"FX,l-,| ulZڔ7qfcgkr.QP yz4y(gN05uvt/?/[mXwFMdw4+ypQ@':W0E-=+'FLf_;,z,ꪀ:`V$vdwM)lJhKextg~W؏f uX'aZq=l>MeLۢ} 1At*~hlM‰:g%zX m7ṟ=qs%W)(e*K3]iddvt _E~W;jQ+ PB(Ƭ Oq9\,гC NM&cuRb]PRF$L@%mfk˜8%~{PS]"g*n&%CVf+BzC5YT.ͮ>T5J D|$ [[ݘ79!(A]*2<.Snfg 0VJG !)lBwN8fw\FM HK]Lm%ŷr;si \(;Y1ԥt0Q1 q3+[u"pKBlWr%"a\}5$SfH^jhpǜ, <5uZ97&Ưw6,~u18| MOf \G?tTڃPEmK8QGKs)H8T{KJFesW&98X Ez9D DL.~- I[cN+ k13v!fPun6O~9#ؔg8RmWuY'b'SϢ2>EI lYc$`{o{LjcCY7ve5ff廖D2W3td8͜ 'Lt6x8 pdG^e$Nio[>=SMV F~Iz;_l],wHCe=+pϰO_mhy91MR*WQBCtZ~hU| .TS)Qw&/8{R[6EuԪYRkYqӺCͧ\E$kٵCn9$AcK=6e+o]^4F1-آ 栆H/[dfJFQU*.^X*6JO[`|K8/л&MpXO8bDS Wi]xd|_sNAhPpN|vL_J$i V?A[;[Sj6ȧTJwVmXlq2"u Pƙ"H/rt5n[%:o\/uN'&wDVB|n @ˤtLU?C(ڗӧE,NXW ۊ}d#Gz*n]ε6໡§w O ~P aĚzLGKAŪjT@"XSq+-p yɘ_6 x)<'5FO9Y:w$WxKA mbT֥ '_܃KӔ!T&;ԁL"zS>P'Hk~cvJScEQ䛲Y)&b+Hsl{dHhb06/2mA.65u#J?e'C&?BJHOմNԏAo,,Đqs,lMRnC2H8Wxk* `RDNӟ̈^8i32 c[V3A#  WI!m {͎'I:,IҏVHM b`,1c3a*JVys}up0E/&"uo0ن1ľ1cݐ 0zϬ K~0ѭwNT ~#Z oWHP}᝕/Yn$ \erLށL:Je3#ΧKAGR[I᥁ƃ *SX\.^vqwʫݻwpp##)k!1Ӯd =)':g~}{-.YG*G` |K)!ſ%ePdj"msNyyAJa^jf{@(a#>ĸd;{>QRԁ7ӗpbg6 6\?Vgc;#+&܊:{1"U ܃Sk!fgvKMnmC`Gc@J,"5B8J? aa+2 |1ZU:{̥m^ A\!%y8&!|rbg94V.]bp:nݐgҘ }nYP~*k|jFEARbM+唀*&?o8^tH"cZš݉/UŦ?3[fUv'p<)^`Ёc k$vDxᔣo*/zLEJgܽ .N}d7u$`AodǀE 'ur4r(x@3^3Y49c CCiαlj8O;4X;=}wjE7x6fB=6P:ܐlDUO@DEuS{Zi~GF;$dazBJWC<0íy-wv|>6&(d4 h&7fF $OvO3] 2N3f|yl![:r웁,rY_{'7H2-SvUF&mU~ L>9) &H_*(pbgz_M\ wK؄HGGP t뇪j75Bfg/ #]M/]%ٯݕvrȾN=kNyUa' v T+ !e!VP& zZpHs"+Vm6@J1Z].!!hg|2('"r3G$8C-A9L59*K7o6/OԅG> Lxc vhd(ur\wy G5+vEGoq>劷 %^`|PtsŁ&.1bԲϷ/v3#'{5w⯵_Z ޴ 7ǣYс;g>C.-wBhd~t 9gX:cgP[uh8<5M|`0oi:uԥP-$`!>" )LmBC2"շX9IT͈?X@Otn'A*#+ɨcb"e, q50d-T̺% Y}spScgH6фMs6!?=Z#/3c  3dV4,h1 'Npsx8U{e0֋louxWD68SC%XRRK7!yˆHms;T,ɗӯr@MO$)8AtNJBX :J%\(ͻ)'R~\# ջ33xD>!{׬h3JGy je0@H=!ņRTD+L-)z2ƏHΌX-3CiJTKH\:Mhm8מ fSv5؇nKQ‡9ZZ$)<{<@XrbYZx*aDj`WDw6Zg@ቋN ThϵW3DZ-\Qȧ4# ̳ܴ}SW劚#Giぶ0x/" z='PZ&&ݷWp*xDH-K }u!cnVBΪJn0Vd@=3bIQnvVӤNgAy/FdeS.uA42J']>;>y}/6f )\៭]=UC)،xaܓr,2נУ9(M( ŗ F: K{-OEJVj`.5( нP*kMs|J?)D{#j\Wb,17"V: k5 2y?fVM$v7ϝ d] W 2wGRˑ*21Yw8r7K!Awt[4UڶiITd3Mjdv*BW}a{fΠpN 3 qԣEbMre*|wNJt g4ʎpEГ%^)S"M○rinF/i2>4ACf>u5!;OB"8YOWɬԖ RM!cJs2["O&JN>d{?lOjja.NMKZcr>~WY5nmڈS;ToUD&AP *oY u5^۝C-Q+"?9MF?\6qEGvHN !olszѯϗHB[ bw3ۨ=FjaRm}?/6ę\z@Qv+_I~ 0wTyO}omQsp7oroTSbABgnM(!\oTs0*5o/XW+TA@Md̬V⅀܁i6ԉ]~D#Y1wq-/!;(bHKVCBL#!E_F4X%<)ZM'J캵QłN&HUz9[t=u]XU/Եw^s")L7`༯]V78S@5,⽦D&Kv4jYz$q9 ,O|8\ѭ{hB̀Eu-5*4TE4'L>f4sE8L{.tXMH#7}t0Z).1|OMÁP8t'Q\YUf;|H^~ $u~?l<;br$I4׻Ojc9.ϒdV΃ں\~Nv1)jH)mс cS+>ml|HOn6%vF9S/z@ 6*_$m'-t 7]y4BnsQ$QDEb({@-r SU(& PG9fJ\ r^xoOh;{>"0wXVI&ɃS^5$m*-쿟Vl2䃌:M:cZҭNA+Y MC?u\K*P쉵y+ ;A<۩V_ᆧ v`! "zZmϦ` v3'ŇT%}F-DL6ʞB9Q(%n"nRoGEz~_26z+fa<؜ 9DQ_R/\oDC]T;S E0JF3|ame: 36,#\㍲PXmvd~aZm' sqkV!o:ǽg\mV5#6 lܰJ_ ,_} f$N^%(#]Rl=Z)pn`-xrPcrYI)djzk7OOjڷS;cLJ9qN p2Ԗ E!kE9q%JFwaONݏd0j5v+A e m~=+¬M3/ZiB0;צ y5s] KJS ^-$6fڎy}3%(qeIBE;cKbRvsr L욒Iޅq>)3jgJOYROcmfB0?G}5֩ʮ7V-tq,Xi}Z=(s_8Zc(ZGf }wYq_ނG6T_*wO0}vX+kBD[sLU_,kO-̯̪̽[aҤ `;/Xĩz# @>V2 dcp?WP6#4{_U[&!O9=8 pEU(3$qwAIB|^@)>FL/M|9%k69@]8z"&u$25Az6RM䮤hU4)[ n4EX_3:%A? º7s$Ն#tԐFOWq~m>@ RC%=^ZnڵcIbL5>w^f)'[@/ojIݶw,>[ $vΨ֡9>(t+uo+_Ojg IAļ8lײD.vh&?hM\hVѥZ҉R"" `JO/o:<U?y6}y;AIp0|zU\}uq]=*Yv9s'=1 -{AʺpL LpJ $Rߩ-A6SrJO @QfysX~vZ0}TVT]R.-͏\M SuctݞӨVΊ~4>.YSggU!|"pUj^FŇvT{De`Wt4oqaGs}34t)1RXi꛾2a/X.Xܼ)&Ouf4izzg6 )Em%CKu6.T>hc(b0j#"Ee|kM #+NZD]3" ^Lbڌ.h< P9R/ r<]Cbv #ė4Ka?}ad4zeHHY+&B4پь+Lblwq[eG͌#.oOpʒa.{."BnI yEaW8;HȚiu},b MC f!;I-Lk'1ʼn4{fli"lnIQn%r$A{es. v+6Mф+ z\kj+Yj3l@,ZUj2t"*Gzԃt1S*_<ݎdԩtca] (IG3 GhP-!^lS"`){[ uMw Ɩo"C3+Yu0(e.1z7[0+Kܖ{P iq]HMabt̞Y"MO ]tZ_HJ<>/- k,O<%ZrWĔM:L6;6Ai䰿Ne(+W9u =i=a8hp4B #tSgř>mfRv:ZVZ_ ^?ӹrD؆lx Nj5A< e}.ac4zAaBM5k?k}֊ˤTf‡__f5İ%~qy?+ZEyrg5zEY|p7* ؜Q >*=}^[c3]U ô\_ *p;EI]/0 esmŭNfѸo\z+bTNiYDz*زOIRO{6͇.-{l[p!#Dc[ҵ# @լqD̬xz a+V'!_ڹE&";N%nbPX4ɋ(tL-n6PM4n0Н7ŵ;|.l|+ת(u4C?Yb>٧`wP X\Yv%OiV tGEppr,DK];yiV~(šUTVܽut+ ؄L󆔪pr<,!|A+5f;j?nE9킅+T$77k'C;Č式o~sqYj:V"@os'qդ?wfǠg/+(6k}_mvpS*S.oCPBs# b Ҟl&E2jמk7GoP uogMx9dYLArBi)##H ﺦ1cfEJ4媘BV\~Z!TwƱCL&[*m Աތ"/&-^3ln+}^snNԢI:0|s}R+M}f,k e/2#m4 չKd#W8wrAmzoyа3>W[dxոkj)';2@=Bjϊ3O5mM+.ְBy39] rE^^=)|_R1RXO\@/֕f_^O05Ⱥ=ЊxxV/_)L\j&Tk5S]IR荫Ν`\QMz$D3)t3;j="HjakĥPa Llmc5>o5ak&[/NUDYkq6سoVΞNV'ղˋ 8@ 'ne]({0.ڬQUȍTvjIs080jaշG.(eZ˿F:Y>=)Lzh鹆)2^9M*P/Q~ a6ȅ3H0Ƅ[xy3yh0j6jk V4%3n$[)>gU΋sxPXN*t10*C"$_o~?[/7Y_̨n4'oԛw)bֺjD8Yqav5׾y|qkA/GEւSmj$֬+ss)MM\qgINT엢lo7IA45N)[e`Acac{tX_>P"eOb{<,O_BR*\"Y\P+( kCsc M/F]ӂLiFДZ,z<*h =35X냤pNά@ OݛA )N-8R 'ivn1Ze9ofcJ. s'W}=$)\@V/ N~NT=HR\zǡ|s6(Uu Qe9%<<ݠſ0CYpk%ao_sWsO Mn]N_C҂2]zImmK8'EC 53ܴXXP8]G5ar'P,ћ(lzw7&ΔJ xAS΋C>d "% t'nIrsa%?nvqY⨊X*7`Hi6{r'MϚF1 ch}^ "㉮a>EY}ZVNDL9"9Nf؇ #u?Bl ԴFSXʉ X 2a2H_.502ΓHw)SVih|S,#uezIQx xp +<j j#1V9RKă?V"C{\P@B|3dд)K|xPׁ zC%KeՓoY祐m yH_]&DD JXs[WǴ$tIzc YYP 7ڐCDy?U8(✶ @1$C>CY.(&VM2'Epyv43.4?_4o2A40UDhm.I^MYvVR5Yu9 ճN $*z[¡nKoU(4; Gt7?4Q'auҏ1Ù-lLAi"qk@7Z0P \D,1 ],P~WOaSjt02K6Gܞ^ b;p˹=lXuZ/o?ή wAlo$=4DivfƁ>NJ?!NZ.A6]^> 5IN6$kF`W,KZtx.nl+3Z/A Nm֣~ yt3%B8+S!#ؔ8=hqnabx38)o$d' 2tEqm$z..5f=g"**V4?c885nJb`C kKOGMFfM 5 <6}=c_%G.z\ZXqF27 9(T 0hoiG;LSa V ƅ-cd6fDCE~{rj9A5 "oU-lFq ` \H`luGK+ǍefdA{@g=t 7ѬR`ٹ溳 ]tr%6,\6LϮ0Hs N^P4D+d+ě(K9vuYٍ Ԍe ʫZThZ?_KFDWHeٙZdY:A@f:;A[˽ۣbxe +&Z N,Mh"ԻIoY)f+%Xdl &5~2 c&A|ݸcPWOZڼWh929/!&2Wض UbT]5q .{H OF搑H1 mJw={AaI]`bVIK.Hk #_f+7jWP#::b?lBj 3BR[?gdSoFZqL'~w^(t GF~4E7)N뱹Mx@RMɗۨb,qV ĺ~u0,Nfk9G,fꕴ}Aa|Mʀ@M+yGG'ߧ@V^ $!!#-1GpEC!"=P삣MކyY,y`dq\F0&?;p߂Qg%D) s a#' ͚R&Ѕ1eKw}װ`9o*YPS^YM5p8_& |qO#~^ypSpaC[UrM+ϑ*Y3s%p#7DDS(HMYO`3-ka[ڢ=Q^q\NX R7m{gfF˴O yǰe,fQ& e ֞˲T B3lra6,;i1. s o5#<\Pb(^&vLjferLAErʋxD7?٪2,N c+c{5{X}v^?Wrpܯ^๾- oenŊ:fm/>؊1U3RdJ#13,Gmwr[ӱ٢P0ft[v (W$a@ ή wIh495. GEBqWնvETtsOR|h44* ("OJ<㝨5]֛OGowP8[1|=|B+$66u'vߚB*AݜSJز̈́"~@oA[ɡ~2lkQKXU6*ڪs6 YkͥzQy%C-qס&Qjr P,1mR<: ;6n&3 @/K85tS) :|Qݰ|?F^8O +\ھθ1LUZ<Y'@OXy\e FB/iVrm@;Ҫ08e[X=*DyI/)R1ڥ~ Fcq.> 1 :Y': iRv 6:QօC.mz]" / d10{6s3Ztr+㔃XUi!QU_(=}Kg @ްppp8iE`g& 5m%iy{|!F/l 3+Awטߚ!a`@Ĺđ,7v(Exw);6Y0}M 13 υ}8?`ztƆR1BSf=sǻjJP$;}zM@$vI40Zl$3#4>z4Or$] 2ՠg&d;&>hUlmp @so,{9L )h{ebr%GjtQ 2At~oT6ƌ(r <2~EF(ͧ{d|{bI+#ķD?=U٧Z*iG(fwU)+Bͫ]}(Cם<UN|]Evgoiˏ)Bgu"ۡiVaxےqd,Px`?%CVEetx=gvoմ vPNЫpԮcu<LJFuu(fӒYg˩KFJz!nX68,vOVw|J:z{U5\ ~@Ra5},e"7QsêGGC$~Mm%,VBoKTsfl$ eV>Tw#A 5h@*mtG1$T=aK\Aܕ3 ƗeҪXDZQXq,b8Å}q5kSIAN$Ģaװܡ$p;*"SiR!Ur§O%t bȼ7줋c%I7 F&EP;ٛ~D17zfIB_*|F}%/\fIs$nU`現o{3w8}`f WƃC`-h>:\v+CAʋDY>9<I1c0/Kb|WG'Q@{'82ϸ&Sy):oԠ3ZA: vk|yo19攐BDx $"^Qԓ0\n8x}Ӥ\|li*6V^P48/QSpٸ`JQg.7!ZK==c%:P7ɽjLU.Udؖww͗g8 ?݋|̡M1\NRq; vY RF^Ϲ5J 5~ȵV p+%/2֚ {W1 %HzcqCÝ.W]5׵T^t6STw_2R:{8z6grO(v1Zr>f/QyJ%]/bH'FG}<=<22l;q22 ѳs2EL+#97^u/0o dp2UMd8QPao5]⌰M1* !^Y@᥺MC5y$YQPn-]tώ:[yw>Te}G  K؆!F_"brp7)4`VPvZ2@rX:[Ҵ72,[c%NFۧWF~rۨ?(7qlfU1%0KI`iPh41|nwoM=6 eR]DV< % `ԩT>@RH^P #hjy77ai^ Mԩ}Y{Qf ξnnr8W$ [tVzgRzF eZ>_]]!T |Žznff8_sP.,dKhI[ϯr@O^x}|? O3ZVmG[1;F,t玦Cs9h&(j2>,[ g6{ s.iJ&6{;}EAÌ3yv8ά٣3S"/&O YocҘ3?T/myr YvIR kU1h7m;$lj`S:r<)AcѢ_,]njVQrYCל*@ 2Xg|1Q;ihZƁ{4#M t^[9M("!H<HbĊ/:hÉh> z7J2w^Cr2$p&YOUma"P>a 4y=8C\ˡ 5GV^9ts%=`ʠYw|CV.iGhuoY7ͤ93{}۹T 9gx6h]0\SX C[%E7n7YF-x26ڏ؊3KPAA*uLծ'FB}Fi}9) f5G4t*]4QmZ@+:%Hz?̧J` N~a)g=LiS-2u͡')3: zT}>>"$&HxLJxr˲cҲQEwEṴV '=+O}=lj Էֳ|)dthɉ<¥o:70c9ٖ=Dl=(STstDźD.~CcX):fm)vMzTyՅ^ ]|b&z`ܽwj]*/=1]Pr*9"R{6sV_ n՚]{|ʟ߾*qD;lSk.1AIɼ9=p:ޑൢ/}mh7A[._R<9AĴ.D _RX"@-^* >wXO^v*P&/ZDTİP [^SS-9 ktgH_17PF7e 4e%U·Lu= d˲L#@lU׏F zo=Ul$ԠeC^gE}SLt=|)n͢k%xlΨ1:JS⏪XՋ1I "hESÅÉQ~OV[t=W8Jdco~<©ؠ [agEvs Z Xu?&#T/LF4 "tR=rfJۛiU켏tbWB!cjBp?"Z ]W۫Ot#{.1}{t:^1s0; Q* )M__jP'Rd_ ?dHMe*9at}&7:Kk @XR/ล~#Ś^f Ĝظ ?@jiT!v㵍ՒkC٧́b\`'j߼7>q|f+g&8&*dL\l^r*t,Ր0hrl 3jPSZA%ruǕu`0u~2;o{->E^ˆ~,;?[V 2 =- jZ@,E*f?89,)LOl ,XjF`}w~R@qգl#k[ 8E;Ж ~zZMv}3 8ll/1PթgG׸Y< cK%3>? h=c$] ~ |sNE#~5tZLP& X&TQ_R+("VE!Ik-{gM:KHtf~|Gb?SVAY.*P=HG[gz+weBټ>K6PT?+^B  8TbDg<ә*l풚ZO=Bu,Jo) SGtBqd?s]miRnxDv_WZ;|o<'E &q K۝HIJB#c;X2rʢŝYī|V:x3@oeMzLPɾf, W!x;k/vvI=B yY' )ߟACL@)UB1]mukWbFrX,Iti <!$2.d~)HjIN\ @מ ӏʕ>AmWA)/l~36? 9to|ˑ>_ÉČpJ.^ >(>a2_T,ٝ:vLv=M8<&Rgi_Ziʕ)kJJ>(fcWS60h́᭑F&$<7΢HQyVZePJ<[B! - ſ$ O]dU!lJn.8LKAvCɞJDxh{wPBi$9.b /bB8~>o*DlJ1\\}8KX?$_# C/#/ViUVgd΋b>$vmc ̹ն8.[Ehm,v_hR`bĿТb'RhNaPj0FkFȑEBuuFGr0L7Vw^Z:Qgrh @&aW~wXtC*3 O*868M}xKV +K8zT,c.)f/G.R^NHiwO7YϿE (2|,ڌaLD{dAv%,=xQs_b{0ԱZx뙞&$oWB=_Q< Xl܌ C< .]AbK4kp] buwa|ۦ;9MTgJ:x+2T4l~%GI5A;RFTЂo㳡;xx|Tz%>&ّ`% # lIc:Pf,+QOPYAár\`j;ǃovȁe\1{Чo kC^CU-@)7hL3o8z,c/VC;>%v?ޝ<,׊/uMb`zT**?WjVW[N@ &v8 J򊚁lfZL bj\XB`l>oOW7S61FڝaLtF+ pKÝBsDġtW&!uKYG /7 sEQL,]Z⚥|`~~KV)OaDRQEmN]s$ugm:ҿ.~fu8hQsjU# r7y H(w?nV+g$6;Ye݋ 9эʱ+T[@9 ~zX"Tu۽UYKpSYZA# FJg!+zC܋ezk $ԧ#lsF>97lQ;ZvhX-[ꍝPHޮ&CCϞRQKU.+ЂV E~LG޺2!z5dۈ;bӱx2B7.NZk>SʐTT\ePuF[. UKvWfSg8UTuexG5\W՚,c rfp5zVG?2N[{]޸DЉz->=NoM2 ̎'R;X! _ XKmnR/4I4_3ԧ|&N(Yn`g]L3a]O!ǭA 6ABlKp3V8[QeލЦ'fr;+j7=Tݒ~k퀽uK!,{*s>1PG$As4YOAX37]0v*]`Pˇ(36`a|z Q ()$XWNN~,)ۈ{X)dDTA |S1蝠q´L^YKDa3."<SI֫6ֆ( 0SHNď=/XWoSYrksr 4e0pzD_0'e} QF-uAVXg ZhVUTy2?wQuͿ)ud}BUn!E0aqQst6moVKV]Y͘tILpx*C=ǴUSz%&oݝ~#2ص~:k"YNů;9rpSaHz8Pd$_R标-+ pmU,p,p-sFXZ :gfYbrxhU&AB9R 2xL}EUUB ;^Y^&.&aHశe^&!(pEGnݏtbpk'|3uK-\z6B vyon:=wU?@sgV Ѷ 酉fQp_8 'MjTYKIXĽ#opE44BmDq:G|EȄ H7!n.>'c1%. -ea>񖲞>eZ-r=/%]AсS:AJ}b UA{gO ҳֵ/w8`F(|G-(&PsT-3 *Gt&&ްJ `0Nܿ/ڍ"nCU ߻1ouUוӻAws"RJg FqL x_@mΥ0Qݑ<gh9e똌!W>(.mrl,@@RDoh֑uCn+kSDd:C7%p,|@^#̿*W+_FAk1UዶR@s3q9[vD1O 6CO.ta^}*"s:~wQ˘/Vc17jyJnç׫'C~)6&:!,΍gޢ  l!& Wi L&#'!لfL > icX4S&TX)94"tM>%j#=5)vr̭vH2!s`' `,yD :Nd4Z ]f7;LoeAzf0Αؑ15i8n&U{˷9 u%5bY+oVUPC8,Dr} j1f}vI)fԮv"6~`9|;5a4ןIo]b臐XA…iE cͥ$h3DdE-l}ѩ fZѽxvGDjI(Pd5)=REB &N[׆W1؛5jO`D3-&o|Dm>|Ng&TBQ-~'ꐘSH5knĝ_Ǒ+zݍ]O~|#xBTN.7Px>z4@{Rg.tH'^oi*M\a_k$^fHpo-KﲌSء&Y9@lˏDVbT7l" E;= zZ)g4 چl Z yowb)gz†sK, N)˗}ʗ*{bΙ7T/l?#L!3;/OEQ]x[M=K%1?폰uGukS3{/,I3w-4 /̾C8=3 ƞ&]ޣJN{6dH=_LB#,nA3̠햱u"۠Jj{7/b;F9s$ƭBECp; EbL6zφZ_ FjJ+gޢ>D2BAX; (JiS$>S5Ŕ? T|1;9lR8;Z([A~>J8YFz2)Qz{Njzd7ܾz6>ġ;+vAzqs{<9mi:+xM'dUx'袋hs繝5'|#O_DK0/lAk%~ [SfO^w;bybǫ ]tJ+2B]ng'NA}H!Ƈ.٤1'CUIh(39))O96z0!?H.@ʤOĶx"htP9v]<4'6wc1255r&|Ǣ]8:DqAicOM9 *TeW1X}BkQS:}3 ?L r4F %dԙspk< Ny! Õ$:%׍"]!izw\Jb ڏ]GZ|MEUWv]bW,] vg?wAa&nr򭓭ئ>uTgIi!IRbfe )GRiw_R:w{X0CB/:i)DH`dkD/$&1 L@I($t5TiͯјO_w *B9 ̖7p\^{A5^bO=חLHꄓfqW c X*5pDY`wxcda~?o& :M9jZ;Sɢ1,#7 3881Dc"'CgBrZyÐڎgMAmf46>nUsoZS/7憰2ÛHsj# \O;>\"l> ,2x>38><4Jv&` ~>%Tm^bpuy@3 Ktgɟ7爐)(I7rO4`$+v]ƤJmr(z)cll 5J&:)wD0'߳ Ѱ*Dn胣$ǘĮ+ 埇eY/6K~ٙAɏc6 b:wj$3^DS%\19VTk@gDfz ႈP^(,׺ ". OϪQ(mӤR:>h׵Co.EFLMHLlaIy1>k: } SB͗3p6Ѐ) i8 \-#'ؑ^859sj%s&X_xV=A#t}2=D 0ijqp.1leӎ U["$HsSѿf8hYP/kzBna%߫4U~ēYzxyj[ȕjUŅPꞃ:DGu&w{L;lۦ7o[6$hib6Dsn|\T(A0SUBY]}/Shz_KF]5&vWkac6U|ZU?AIuźQm3!s l 0\qF0Xd"ymU9V=|ŨV8t`>wNaaA,u6"vh@ j&ҡ~a,ft,e˒88Ye!/F$_2ive]NۓtbR m%3R{fq2k:=.7e踝pb#֞`~q" ;H4؄Hn$| x|4iω! V%zk/˝\(@uM?K{9t?PBMp߂4/Pʹ1uz/|0FUnFjZ949qOKH>E7'WY 4L{ٷuP4g} nu;omީyru },pq+;(,$ 0BBhx:uA-.`B8JW@*^/@!Y;WϏ\wP{azvNb +y޲CTo%2S:񢋬Cr'ftt+t<>Vcm#+oc <>saV~Hvߓ1ST7q)IE~V6HT0, ;0ӡ"8;JLc+zC 7`jh,x'_̵ԚԘ#TzS ]Q.ԝE.mULG&#fH1 'ww Un!4MY{δɁUy =z>F=frވ_A"W2uFo[6n\##YqlThҐ)BB)VH>d/61mۅ%8PUĈؠ\s>ܝ Oj%ȪuRh"}#xoǛiiW*z, 讚ȨXRVw i͘6[4a`$N 8Gό ISoG]@Ւ2Y1K*oztW:^u/A*8#BȀX|n>;1rAPݑ$̌vc˖"_y$Oy:]AͨwLә%]ID ccpvs,f `eQYV1JN|YL C%)CVlvL7.tFn?q=-|De5aFD W:pZO?bo{f&TU/ n'9E{&H¿M([tv|T9oh+6/xWjnv~),M!Jܿ-ʶH0CdhG\"U b*2ʲ5Cg*Z^ 3Ar㑮7y(I'62CL٬\-_@~=`9tJ-\m'/W^1DDzBV;$-t\XQPeA_թ{FSK7I~9*q2,u\zO#)9lQݱvkG&a>t1-\!ZtnʡQǐX%ZY;+t$Jfe<=pH4&8 MA!sܙJUD8l6TcReٗ+H`JV5R0 '(EGBI>%EMx7צ% ό5)ivP>7پk~GAy(>M[3E6{@*-IU+nZkb:,}e&(J;sߦ"zǘj6/^]é ^eY{rb24‣I#у>/А_n^>,>FVuREdg^z-tZ+a3i+u;KW6b -q60EQ\lPV\lcM95w'wi\g#rXȀ2ǾM=X:t>bN ňzfYű]T0"# HTUF<F:k%" `)O3'([$!EQr1Mv'=.X-~A S{A bÝ03o{5)N|Edxw!k#G /jώ.?2|M[D]F>RNDDHEq[&޸2m@wގW%`I+,7O16hu:UjHjc< C&\q<4u(:UL+XW`q|F Pl׷7ȢbfjO_Hג:{.5^ɫpT/@ԐFvMAi>/T TfWډR*+ۄc V P?dM]ցb5{=|^`c>mD&A9 /X"P_RSC_eM Wvc4+ç)|EbJe'AqSdȦ }XJW#&FϴAhuj ~#t"`ʼnTX 6VA,1HHkuމ]B?#ſԤƲ^ZlV&p[]joI;Nn{7ې$/H+]C\YRwX*UL;w7p $/Ϋ.44pd`-u UH J{SmY@ZǛ,_QUG_lh6AGNP)&fC_$\!8C0rS\WV-Nw1([]Ewq Ҫݷ*ɯ9'Z ɱCԃ Yd9@x)9\PaC{S^ ]'Wm xcμb>@XqTaHCGs4M2F|U3ôiBn q`8'%d!+.KGOHPȋ'wNx[k~m#oIQ d\"#AAm;nx`h`HARݟDU0C0YT/ghh#Cs+8{/i谺y/$۠&nA I쨭X[m0k? Q"-FL$1V?=VHerBQiĿ~rzkY˔C9qqLhZyN걿JQ UϜݶTz/w+u$yY/z󊰫ZMDK8t2S!n#mMqʗqnr: =WmqyᨅMnt\NFzX=dYg^" |1-t_NDGmĦԲ+ZY ;OgQ2EPhQ >/# 9lZ9`J! 4c"+O*?:coUӪ$uZA;EL;,.b!λr勳S&*7ͽՎE!nalfK:@ *:ٍi1ы,* Tvq"WF68Iٕڙ'+)74O^B[Q2Ka';/4|mI&Y!Vl?ƚy!ހꑘfY֒Wv@YjN>4*ZlzҪ!?AmɇЎ*N;N9zqhu۵W(2Uhٲ]"JLqLqy-,X_Sf;~LKXᩊ'w=i{L;^YZTC tor0s GE"Rm<)RNdZ>/4<kp &7UvE2CE7s?8'7SI;b ~?UpA3}pA5@؄eה \m=2KaY^Ȗ_8no'6QڞM/Y*gN{xC^M&VЩ *k Xn;N*/bŝ T0e}LHff 4fċlHkQ~yu9?ue#l7ΥٟC"֕!Ell(G#g`K%21X1RwLKNbcdH5(;b~pM]'a#.B'ľļM @@wRYXxEJa昼[/15mik|Ea.yDk7Ñc>E;](p5+ǫ m#Gfr/7KO'HLKuWWXVY[F P,D+}mq.鰙i 2e2@[ eME)Fâje?6rE,,2I"rns L\ΝVEq-@ .E\42_M[.66O\ۥz|Y/fH9a)xeB<8]"l+Rkp%9>Es bӈ0lჃ1 AR7;0&51LN#*Кt(P$P\ĮP:1ǖ@5YDٱ21]Er5KL̩3*ؚq2)}l{BWP4]x&=)h|Jj|腪-@1YV!鄅J\^D(Oƈ4#O7*@D)t#b)Z{ KS\YHAD1eyDBA3#d3A[Sb|;aIx{6FO"0Y s'(bbV'xd6^m7~y{qi_rPм^vBU6eVt68oi$ e>M FMTMIsƩް.>;7U#.m{qC+Nn8b0,_r'}grKgƋ*8v@ÜEA 86.DUob t¸C(ZsXEuc`6)"eL#u,mr P uYȇW8IE^\ XAcGJI831nQv[Jm:>pp9"[ \uAEfAۄҚ{aq)l:9CfST=w"!S=hXOִQ!!R${ k-ڳ$[Ǻc@.dS`2n 0:PWӗ ;6Ƣtݍ8=bM4oM݆#}얄FZxn PC$,ᢨIkvQ1{emI}_o}GW^.UPvH|gt,v) @~n"-L3Sz@D:j'57"xw&֗ͯA{͊2pPw=f|Ec/-Me#ʶ FK<Z gGn{ZrkDlǘi0.GH Aim#>"b1FW$"uSU 5˟kZ=VL5 +~ HL.6@-]/d%|xˁ~+? Y͘uK֔Bym$2k^-OQB59@ +SRZډhCOTר_C ϺЃv3h]>;EyX"߻;6! >,燨]V[9=v.G|_䜣{KY4^hd6-ӄeFҺڻ30M&=/[E͒JT }+#B&'4p2~)M&c;U$NKj4dw|OX3_Z\UG#)"s4zG?"Ow<ج4O} v`CND. SWӨ8yynS.&,݉aCye Dfravyy. q[KvF B#prŢ,;^Hj#홨 UDqVy'2i0h$NM<>: Mt.||:Ei"1kb>P`!/is;w;XcĖ :W ׍ߒ&3gIk^V:xtsz)X靿Fԝ quyB{eNoa veDki%G2F).7mmf3ww4n;X0$핂* Mrso8XWNUGy;Q0B`A|wQ/d =LKp ;3|#3铤׊73ng?̂ {Ğe3Dh [>W l~䩍\%G{1Ƀj/VJݩC,nqKA[6M-Qf!OՐv &R&+[8fDžƖuO#WSQHmtcZ9gsG[$8+ s'] A@\ %fh, ypǘC2g+ƶ* Z1F*)h-{sd]U}6`>tsm_,0*ƅJ pQ-֟ʴaRZdIX2A>0+_.jhevNғMO7ATPl/aLd!}y4f/cOdgNoVǑyP&RlQ-ߓի53BFH W&| b$"ǐ}3 _Bν>GuU7@2+"z 4oW#YJzъ\$6@ph&!X/+T}#]kL`Hß7ԵaF3&>Il>T96vFK (۴>F]/A&mL4) }5WkIdD8:k`Qt% {@OFVȣ=BV˧;qI&a6-ɐ$rHe31hcǑM?G*^lr+b` \B ,/H 2l fr=஝p;%Bx*,UACOTl4C_[_R؛pڽhM4dªցi+t$3ظ%-@i l U$L5U ǪWK4BcTHl&ҧyG֏lYƉ7*$yx /3~W^˶bO?*vcM8wzq̍m+a@Ƥ>2#KWFZ[ffU#BgIͺ%h_ "6?icp˼p2nϫ΁mm!*n* -=wxK|7ZYa3 }69ڇ xV0bJrm;A\6R4LS$"z{RA_FuaEnl x[j>#PN4ҙӥ&PE](b$v,ΗȄyHn\`wym%-U3PrK &(.ӌM=l(1 sX1t|]23J^E(-َxm1wWvSpM9&ziLNh[<U6wWRGO$Eh糚 ZVsk?L]Nz# + 0׻d?Ш={ЙcZ~U͘C:Gpio4jF㾶U[0 {Ldh=4QwQP Z}6 ց/TY x3Hft]k]DLc[VG)PrWe.XdD rNuʯy0^Q9GɁǘte[8׬"c)zj2}dROEG'ö &qvL?mxVg%u$h`GnL  iHph!9i3lNc0)4]v1}'O5G FsAy{9V0lKsMu`U|c>xw#7i唀|6\Uwh B*ܑmJx.Z@sDWͭej~3Gs:=d-d ĢԥBBXƴ0XW +klKS׋XFpNBsBЖ<縴*Ԁ~φޒDݼjSam%J}SĂSNmRny7ch˛.{ HYQ+[;t9WXe-WT#)f!74lQчX6ɽ;ﲏ m8-y Fhא[gSk3-_VxQa֌'IF/zSʸdPofOR&4+U}WX btBBZ9E)Ӫ9!ȲE7@!u$w)1vP}uy%[s^DŽot eL vFbM#1A'.{,åwIH6t1`jPjW8{˙+"cp㣘ÂjvA~)"{5S?q6ƞ\lLEA IZS;ꎿQ֋ %q5up5Fz`D >VՓ?Ixku$2_ §z/S%ӎ@H7J[vm*~`iHFFW)DŅ%`\ar0MTes)AU@Ek1>rհvU1,ѴDQ>^=T8a_^5'HR"; LucNqs"el.` `A^ :tԇ=<_$g`P 9}ko1=z_ǽ,IN:9bKO`gJ0|ֲW8!1 ?Su`-O9@i{ ݥ?sa{c@ddyK<64F2֐eR}S 1vwD{T?VX=\L cmtJxݽ_k83-ߊePבq̐} ɾ2VypBFp']̷'Q]m.yEx3J};cθMXK h f2ւ_-~Hv)4 ? Nԭ4>H9#2l9>_%#9jq_E-BA%sr,.蒅3̸|A'YQHISNV2cbd2,.1M>9N rgg碆-g׭O5 &QH|Ņ(YQ!4Y=.<ˆs[YfJCv0i^JDnw1 Rv8>YEc욮 Em0^NAY~pd̲9!* .pWeB`P2ud' ڳ8RWV)@Z{T9 r1\±Ԑoc[!FZRRjrRڪZjmgKZ\)uI*",.bpndmq.8D(%'@rbnZA[[Pyts[vlMk5I|afAȈL902FEv R/Z N,S܈MyE'3b"h!2r'_hT{ oKc 9MVNT,H awtK7.9hF[ka\0hjUmAE(--kEn{؂-#[b$ܽ׷$ꂀ>*+T{:mYa?#RRx},v$r'z![?n+鮀ѻF*7C{BV$_ͿyPHkR^촫gHy)vCХ0S8CUɑw3Z)6 %jv ͔o?A>128t-QP/Oo79+*7uC%谹8^g5IonU $\mPI )uw";%1!8>"pB1yV  clI_Hz6+;h4්U7?ĺxW\JB`+ov.ҬW- ,p/l\gwHp#ϛ yߠ쩋YDNM  -$Wr>/jc |z YᲛ~N2m!fRM6at(^2$J._[Ӽl<)5Ο%Z=)NK9n߉-B-?쌭IcJŕlY-.\e@&x Cl.HK9oW_) 2#5X%bKXad@_rMDoҖ@,'湾bqv >N-5I~HEJaiޓnę( $ucUa֊X yQ;$b_x2 ?g{J'5w]z{_^X %7ytł= & WpI'5_h/ʹtl~ɟ1hlĎmUR^Y:X-~ǖt=rP{限$Y~EDSoC$B9b^#(|~{[\43QmOR8+MA#=pK݇i1'!YY×YE!+L;Aӿ€W {CH]]jAw}H]ue+_4Cv i:h1ƦCDhQr|a{$~4ju;|ՂC 9UuM-(9o5^~Oz0Op 30዗eG 88_ϛz+ W Tv'z< PG|N5O.;4; vjy9x88Î6z7(r_*#DpGƘ?ua8*EN~@Nh&ՙXDjyީwt졧D4c*$2Ӛ/é/C~3]h>,QT^֞G걿5薩li[]Z#6{WL?Brk9\kѥ<ƅb_4/Xl%?4#1W1LW8.SĪˈjf)j&mЊ҉ѣ\* 2?$}:.kLcʗ1ln @ w8B\ BvN:Ǫ*gmL$G +W%|faJ51yRjVqҒ=6չy`dpxT= &XJĥYoDBiA̗Mٝ)AtnfBڻosڇSD#^ Lv0tdLP>>'PbBLv ?&,M.k{P"g+!Qy ے=Rn5_3! u&b̸PY|ŶޜQȈ}|<ب&G)iK?>|S f#ySC3OKG a/CΝ9'k4ωߕnb&WhP:2e/s[.8JN7/~t0_ѽ,8h6O kM;#'~Hl$ZWw!K#@jIe6B=HNNR7"dF~2 ,26-mT*m(sYreC4.13ȩMxK*lXdQli֗L&BDwuv0/E ixv>ɏz0C!.yzt>]CDXxIl_QXΎ\qkl7a;DlQĂ6-[q6 ^QB2jG,Inu`x*"fQ \0i 2`6N!2VNeWlpBj+n\>pv]RġWig"4>̄poJV X7 HE`r<-z*n{ۉ|qyA[uށ~^xY/WEJskט s;.Y;hM&s  Xv~2=F$UvLau’JL]&bTFǓ@K*i^Ë< O$= ?Xx[,ajM/ xTy"bn~Yrri "TwbRKMi2DSH[A. GŢw@?:\&/H90W)hBF |Y/S(0^X1rdhzdYr/$,9ZL:z(`A J#֨g X-(m8rʌ'᯻}g}@%ZG$?(e.?KV2M z#1śCI7!cˈ`t#Iax/"X fSAF;m FO:,n:©'3ʚ"V6ddȰ:!C|BD<]leVum?S,5, \My ^  MWmN X3J2"`B[za|B&}jaoE )sl0\PDž/SQLGn;ZZK&$>\ (NF)۝K:+;.{yPZPa8Y$?:gBH%t9o4y%BXNjOY.h!gqF:.$ Z[K'Dp,I|svßm>,l;Oh) 4[tf;ޡnL6{UE? 7ՅPS|}V.bw5B-8@殊/TXC]L]HB.9)L̅a~y:K ޶8 m|J4P]qSnF\d*`њ{ '@josHʸ6 K &ٟaG]'d]DĠ4WNMveϔIL^G7d%KuAٗ`)-#DP{}Pغߑ@Ъ: $ew5\>"qօftlެ0Y/ӯ̰!k;&pj`1-VUG[هg 3# 3KC)S}C(Vx>4ۉ/HZϥIhvslif@pZjTsQPaLJ4pb v{q#!3'/ieu@bGMJdI#(u4t5lS8VۚBQy!mWJ}I)bUc+Wv8uzc+ݨKp(e\73J P\ d`M瞛G#70nVk0ejRO`lOДmNhDX 2*p=-(Ժ0JpѴo)1 b=l8hB6vЗi;0SΗHK5͋mշUt:Fؙe}: Ɔl< u_aA9<ݖ.)Q-ެ_h[C9wCqG50S(#V8˜JL& qͲ F( ujW'(@~#m@˳2;S2 o|u؇Gӕmf]=>=CD-B^)LЬfYUhi{0蔘 'DvnYj|05rU[}c\qs$BrJlNKl;bAĬ9)&|X,0s dԅ/|ϥ$B|Y7y R1_o3u 'H+a"0b̪uBgI9;Y$_;dh"Fϖl2ʚ_׀VHQW1Gٗ4QCJ.f{(6&F?H{/~wsF\>bh ]g)*p*eO,/PB1~QO9N/7~ [;=cd,% ~㉒lsPpnh2>%ϥq(3vd1ꅯn0 *B{TKG)?= LdLie/@QͲhI U[U$lgwzQtfR Opd 2bߣ_C_Id ~;\Pe% Kbҿ.> 6ɤ{Mk̎Gd;&fmUZw&WlG.P$MV"v&Uɽu'}ζ#'c3FƭiEʦc !vsZ Ǝ0.pWڢK ho/HLӿSज"> tuTԾ+/Έ _YDhWoS 3jE$3tu!7hNLCd^N5q&}aۈ8B%-*$ҋj[u?T3d7X`bhg^nab(+o,-j¼LŇ͋mlEOb82Ź]ՐS㇧A uAkv] $띲XN-'mLg',7Q5wPM z|AKJ{huyRDMLCor?X]>OOB@$ʓ"[ex1$lnz?;Bc ;j U&Qo 9& 擲4e>(FO sEٗ3DowFcF@k)l9*Bx+pa([sEhri,l"lԎ2DbGFFaؗ!1rT-irVY[/$ U8!ctgnI6<$4\&ڐ#lT&m< CcLBq0n -%s=z_>/fr}yBg^#N]׻>AGuDXX9ܯ]T}<s˅T>oyC?Un+޾^?5$1 m6c`P]WNM=yd 56 #Ay_C!ޓ@w?֍2 a8-* ް GX(f)4Unb7e+rkD^ugt!4@$ 3^>?=hMgqjFR>%6D?$"`\[&DP7UI$ޗGQ5 {dR;E\U\q)nt&-v_c/w۵{ԞOli tL t~\WHj#wU%! wQ(k\DS.L*+v\*n]~HF;(/Ŕ&rj&`6DWˋߌ$#g7M,:m F&ce~OzFvzjQ!Fy:7MDǗv* #o#I.|9v?uV\gԴ0襙bIHRY-zS WU[N5!6W4L;RQOj\qhlԙ㴈v:ϺVPѕ^$t;|'(SoTHVBo!%jxԛj&:jBY;s{g3ސC eݰ)v\TX|곋!M27gl%Vw@UR3FN.]ߵmo^' G=١x`ܮLH&GBJ}Դ#!oZLy ~ vJu8;˃m/Ee}+O=<{Y,ؓJ$}muJT4]+ ;whOcU<;ʹG!O392誯Y<P^zL;YɼCҀ6yUuL.Ev` N\& {#riWx<"X[_;`?<:E ʒRv2u:Ǐ֤ձLf)X2bY5"קgvNnNrC%n4KDjƸp^5AĿ-kv 7݄$iD j7id; 3,f;^3Hj"UA'&beA4E=ܞ+(B3F:эk͹c `.&Ho \+Ƀ] WO)~2Т'}oCj#K{fq8^CSbaa<4C F JZsoDi! Qe [|Vό`yL|<ɬv&]RgKB((E#j2X]M~NE3Oa z8f1f!hJ#QElPc"WhEVum R&;UEW }3> <61q-KG$tNrA;S8jtO*I'4e:a~sH+b%?!ڀӐ ]x X—D 1T\|A.*M߸F^ 3rĆo-UDg28wIKM2~Wx(Y=_Z^Ki5H{ V?mv`ZV]UĊpHRTm@W?;.:frO<Q~a5>t[kϲO^d_)l|]NfA+ QygH P-pZTh" {a#. / t4qzm(dȎ&{PTF_L{EY:þ)yn <2MXŖRI!wqzk86x 6g6h:c$ |8Ðzy (XWPE cRn:D m 3QEHfIJ gzغɏX 8ZԶ h?[TR=w}+',#aQ-[ȝVL^^҈]TՎm8"{ß2h{a?rP!X $u+0F >l  =gθ`ZTb!_ jG\a#rXc3hĝ{,0g^uƱ']ը N.*oWkM_Cgha}2hyqXu~*-0HЅ%tfJ' b:W-`S"&%[`3U(5GEf^z@5Pr/3,<YZo:k @xXi̞hl?XEߔ'sѐ`oM 5ީQlō| q}G,u_i臫c#\Q! !RKgxAрDotRt~1DiUP[,,g/5ezP*nz뻟JGAFGJM)la3yTuT'b؃ R}'-#ދ]7@ϖ&$1"!cLI:u]?X`բBx~|Js 0:_Y_hmۉ[ %׶os(bSJ+K.Y=h\0 T}"/LCEUVMN-SFS:ڝ?d7NQs(SM+q.v-M51Ir|)zbK_e̪'P0R}v_'ZVg#0fA%ͪzvx(#fSpV1Cє+P9"ʼluKgCgq<RrI5e!/$lmgRLieW[5S=նp?#jGve|Gm7C*#,WVK2A" x>h=xh~3[8/bƋ:Ԧ%9ae]L Fb{> D4b {z|+6[ Φ=\Z86ܫHY9ō'o%Y;"* @[teabIk ZB-A&EK:OǛ"7O{ϭ?L) RhG?R̈́y6QQ֤κL6ϫ:3e#^)~/~ztkѣX!m|"ba*鍂IUȑ"$ iC)ܖ,-my_^^]_ձYR)i&tfA]7\2jeÄfkɈi1͔O7V?z etq"8)wUڶ:?UoӜX;Q;&̓uNTz’Z c ÂHu #Ɠ]N9a7n<4ڟp$1gksX8Agͮu'H΂?Υ vih:S* ?#P#LJ GjP+#Jb)LK9Cs J%$m|-SU^d]WӇ\Y|j2b,9NՔ@ޘjr6EP6Q`7MǁOwKv%3*c=J(ds8hؙX!oTEҧ8(7TRΕ3*~g&aAЍje۞%׍d1sg47gD.:QxIo?w@r-ܔCCވ݋iGS+( VŴf aLl rT\5'_ǻ1̙:8&5.v%hr\15 (W'ޅ7Z#1EU` gzC c1 VwP8)l7ZzX}0meR2.H*(dB1#8nldPaY;Y (Cnv ˜ak335h˩ 0+̃c>#w 3 !XTQT:Ȉ]lFG "׀:h3a ;78ݣpޥQh1dE0}\ONճAKmkY*SLS!m@6Țu%R*2,^/p$].b>(ige]}{H #l,n"ު&KDѸrVmLb0*1 =%TE5QNbPz%7'ΰ}V^ݲْ"ŬG~G7Drx8H.UH Le?(=o #ebJhmUjɫt8;oCexj4!F"eC 1/$_!|5'DK6&m+BGo}|BT0rfpܣķaP0N(m՘L`0sK Ja6gfM0δ^Uʼn44!a1kñ>=hM"St"y} C!X#bٓ|pgmNdxVՖ5ڲ)@d%7VJ]3P7XŃÜbu8}qGX?aJQ-ݫ-VÃ4kDO\f bvi` F)tY&\xmyZӅp а`nhS.kIIi$#.6mmO)*澕mF#\i@{rkH_n jj^ݐ&"\E-sa9ol/3L9s#|_9l8cj$l}}k2~+v^CNmhy) _k/UIG#@ >|YJ=pb@,񲒟#^,C;JgTXO^6E} A_kh؋Hƒԫ^A [7trg ~fh5B :E2e nH D (]ʜ1տyo^,M$ 6$(^3HS~(ebh4|% ela)#Eq JjXTƝ& a~+=3PenQOVaoEvB 祭Wwdƹ{+Ξ>4(;?Tu,.|d|^uYt2*^lw^h=^̪[ ގϢEDAI 'tYxD'D0x.7xsmw˰2J 59dP=M|_q}Ղ~!kïۄ%`tDu>]G@`Nߺٌd,Pk7շAׁ)=+noutU|] YɴxNR]qX.ifxK~89+9+\P)p`|䅏BՐ70%HgxţxOܻ =ds̀'črW{;)k QqhV h}tm1q<} 4~^z*%\79CWlRzؾ[ n1 OʞzxF3F ث>e<mKi_N`* P)?U _FoB Tsr,CE]7>5{GC5քyVnPz3#9|d t 8JԳeU2b ޑ]2xD|t1q#6q;hˁ͔ }7ko;ԅWSDM&VAg aV4lc?< ߸F̈́tBhHόg"iX0[+aF̢JIȤ<,;3;z%#{M5cW>7T5^?7m2K,\x䘄]EA*~R5 c 2.T,4lvFʩBHu VR`IT42L)_AoQώmlgVYM{f(U9HTv,'ѝ5P%D[ h6_c[a/[ `{fm ȌddhKS'Նibiφ-fwb#d_G RIC`mEd>Ƨޫ\Uh4tޯeD{ ゑsO*#GBQn㸃d]"{ϟ=I)pޓbtN=Vi3Ç-ı- k(K2X{ ύDA KaEU 05=Z?A~Vkm FI]Abh?{fV(#[w(-ʡ6[;e;'kZmLeaT!*͆p'F>$0ȷɰg5̈́9}uoɌnlp)yERZ?W愩|PQI,Uo2QlivE;~ үJƠ .^ɸ \;ؗWqX&԰H5҃Z ޥB**.'7}׈*Bj4ɕ0|{O>YHxMYk3C*Z7ti|Ld?}/D}*RXuj"(J#CDbmz{^0%`dP9rha*bk‰C(FӋ0ozTa"XuOY .AP]"9af~=~ʸ@9gQ+Zg慿U{k>3/pP-2-KaOup&c_(OB~VGW6pNl/D2v}Ď̋4\)ZE@vno6(;&”h\Htnad+$K6YZy}'ƳQ Ϳ>ߖXp;"" m|Tq0 UɾzXAcyᆘUY51o~fvSLǐ.l67lqgt;M LP*g*Ѯ]I:͞=_먪(~>ČotB =3ev1@PIv`eS_1i )zѴި kj?u_ B+9dρR=lN2O,mMqƺ[ }KE`cZik\`hOAX@+1+ʅں5h MƦށq̹}L^jnZk~T%ڶj@\HEa%HMpay>{S/s$z$lzbZ~{,1ڕ)-SҵɃZ [sa˖ٿTv'OU_@mʑݖT߷wgKG?VȘ(N}Ä- ibiT/*;D+78<;PoG ^h =1=]X{EZfg:@䗘kg'K^- 1d[K؛^{?VRR>q䈆;itsd#62fFl^!~ەpVC%s_[+wclƎ0h_էaF晊qCMb7qVZo}bA#'f.:$-|:LA>؄^<;nbw?XD2$%mcRD[ s1Ɠ1%5JݖqI:]s P4$0oQCh>0/3s'x6|M٫GZYXn*ݷUkW ʴ'@mX*RUolyucc'-kmǯ(!*m%ƆX0 @F<o0˅xBU d2}/ Ɋ׷/E_k@=kW)aӌY^ 8t>=ݷo)*8)x]T/OY{QERD{n7'_?>sʱWVG)(# 7n 1ùMktnW;ѝx>0$\X~CA{sJTeʃ A h ] RW0OaPn}bİx݇?AZ+@;O?2Q<\٪tC_<1U˂eLQAqCL̮]HCs/i[Oy4@ȩu?&7|*ͥΫ0KjLH [UT>LN_gŘiMh]|cYZ-Ukq=NÑ_,>`d!` a(kS1[|tq1ԫG n)-(f5a.넹x>p)b37_e.saz^1FK}uς]H}Ў<G{AULJ ^$H|A ˒6 y6F5u'=}OJ'7 %,z C7>`gVo|Ὼ (PN&cLK]mOp^HU 2ռxXFNBS?R6*O+؏xu:LŶGw:jMԜV9 rCvW,%g/_dUVmĪ hTXԎoBbזj_L`@R""ۏ6yq}}g4ǐZz$à޲W;LY)E~04vO0W0[]I>i/m$˴*}mк u.q! gK@4q.Af̴oc. u ?z$P,71H]6fSA{Vc`،ܧj;2]qz"Zzd'5I1+NZ~Q _='\2-gڟgTɤ6vmM630i鉿\ye6vn:9-zTtpq\I#v2?ݬwBz-- z-zZ"T1 ׵9ֹ99 ]"8 *0Dq.ֱV܏X"rrX=ᐚҩ׋u3y,W"KD6%;SjR~(V!/tN2]އRg/d?(Fb~2HR#Tj*eh)x:KOwS*:67a' s߽Q8cYMU)eN,e1IKs f! ΐK Z堠[Y8g<]޴xfŭPTynخNg {r{ 5;ٓߐ{sH^V3|X?bAty(fͮ)F]*4]XC6]Y5Aƃ~`k9@n\?^I-OTpA:I˿ T\?\e{?Y@7;'*)fvf C>ةm,Ͼc64N¢@k:E4_GpbuWs4 AuK\Ou}ȅ(+m+ޫ=vYr00)Gˈj*"LtnwdVquNc%z6je}/̐FOl6]֍Gߖe;?̷Ijf\l=N]݆LPb=”&l ,O8a !f4MQ]guYO) e.ξc'VrKz$k)/Xֽ))Zw:m*ӭEm+F!pmA}Jɾ(׳>bR#ó\bg/R[s,b &{@rڟbw4rYơ9vel<[UO%15V}{wtRo rU K NuLj E0JjZ\e)|+lAyor m{TI,gaSե$4Q6Q9,*arՅ3c+R$p- n}Qm~~/›E([zj?44/Z90g /mV ڄǥJҧOw|8%rhGniPt;Dt)ȓao2-4O~\d?$÷@IH>+)&s¨P0KΧ?b{%EQ'#rZ Bs1&Yy7H.Up@9Y]MMu|^P:kgSmcm/sVJ%6r!dB8)~q`֊=i)5p 룺,D9WEݱ ILPdy][bjl漠O肁7*dmrdA>ca˰&VO;_ʯ6륢áߦ5,؀[)X$as#qD0T="w uL C琘ՐC )֤[mW0r%&vRuڮZILϻ~!֭ۃS<{xaKQ!2qE%$B2ߧ1Jf8* YqJxV 1q_o*R*BP7l ,T&*)D-СCju&nwq=If=*JN+LP3|Y@>6"`D1{łya%=@ pM3jfZּN@ӯ:窔 ~;'`h>6< Tb"}\I8f'N4>уN ӿuۄmoo@. EZzA2v+ nFBH(˞+L%pJoPL;ͨI )ZՉ١(|F&v} =EY`.{zJ )'Xjm0KÛ7R 6(U(U 3.mI?WL. Е*@ƭ-p`Lq|`BS~q BqGIvB#UGyH YZm`CeIȎoU(G_p@~j?[IT^OSlEG'ܤ eDOj\rJlX{SϮb!L}ՒRWiJ~-)O[" O_=_C=$xdsLsd8eu@ z[k1o+=~*Mo֣uI&9VmZG\P(dT\;WüOkE?)#wvѶ|,oЭp0i6ŲC7AyfਿC&(%HCڶ|Q|s^ћ^a.MfR[-E?D/$f~OB5\u}TKʰ*k[*c>BAͤ) tum M\i5Ib}>c#78owBW9g3s]*Hln$mCo{(^ +& (Ĩ+{^˰SN8'ܐ0%qy]mgv 7RnDF|&P|KXD;L ƩIM;PW|uxRPU_ca ~:܏- !)amy hq oM׎/SN8X oÚ2KJjhl`c LhvXI{Bsi$KpxO)ӫ@"NK~\{QNn[]-a㟳,'Z.\, K De}Ąwpښ~]6`4uMK˄)ZRp^`]u&lXΉX$-WQL@T49R+C(Bte.9zq[k0w@rAYNhoީ}ĵ[Ԑ.]]ɝSukٰؿ&>Fsi_g3(bbC,WD" Xv ˠ($4L]r-Dkm*_ rl'vLL U<:sn'ԔgdU]F'?zU SJ mqb4,sŚr+2n"jӤ $iqDB`(P\)&̚ѯf"fka5}cNPJE<{n/r?MZ|Hrq~8}, 9ߔfvWz1k۬k3;5rQrܠ]9mz4$н_@EZYӃHPze(cP+ &/|,XZ]6̰3)^<32$t2fb\D`sv-DlF꩏p\8_?nnTy֧F:䄥6Dg$ǢdC2߻3%p)del>Q;}+vD6JU2o: of8nSȸ;b /519,,6'M'|{4t]j ~'w \U{(ʍ&:-c6\Íz>(i4$u,>TUGb|[o͢H2c~ Dq |g?K7{wƱwpn;Oo>'hG>&iP:?XPUS쓠LT Mp.HXQwcǿ Ap}eN$:mW42YttwzIzo7hdkv F/Bϱy;z@S?fq֘HB$fKx8~A-qɢ$_8d;P(U: &WG$]@b i;J `?pK:٦F:DZyRt)( )h0_ RCT 3Mb!MM '2b:N6P{pgjl}Pezmt\~^#QtNspiXAzVUG)HоuѠΧ ]Fkh%mpMRdȿ AU\Γf=Jwr+ ٜ.ftV^Pb`&ܟl\4qpY8 AN9?_򕬔ZCz>oRC)]ЊXDɫKwkp}~AsQhaz;]#鎠KѧÈ' J4BzԿ\Н fi[{9ryqq2ԺCthқ4~\^b%0ʺQ_sR/!%P-n^i7VQOɲK &37P)gnN7Lӥz؇wv5@Y$9h{qM= :uJ(I}>(Xs% .isעA)%jC.3邓:jZ!KCY;S}_G΋p_)+<{t"̓%Y5|'42$G[{bXZ~#A\gWyB+̵"[XQdy&*ɴ@rD-:I-H7H5pZq!L} q._ŅX"Ih#ޚ/!),DD>M w0'}7'ϼEJǫo!%G.]C@/~LuHaEj*]x" -;q(ѪV,9!w&ł hz爌?NRv^\]0No1d-=A~̣RL\y|/[@?̓h يW~k7ԌiAU#47Uw}o"1x%UHdoYD2J'& NbAG7tRDEŤn>xeZǒ|Z8;j{7Gi=(yR%]=Ȧ׀T #Y#5ӒB{1 t"aR+hk=e@ RRo -iuoo;WΪ)JqO O"bȀ_>*=g6:/D6jR#=<'޻ż٤ t$+KW?RJq@ݳP!r`5grx"{ (`ߦ)̔SJg}7+Q5}1x o%⚤O^q?p!"f"C<*Ņz뒘KS0 5 nG}jt"qm0<.t +yH:wWtkoL aɣg':e6B汷9Ȯw]/AE_h/(b×à 0 3o)8C,zݙ ™Th8K7zNtSzƩ0 JIƗp #<ྍ6FŮYJf#W0+L?ëQ(xg&6 t'l o2D{ ȕ9='])o rDxzv0gT ;\8cی:‘ G J(23\`b23S7Wnd9 `|Լm 7ֿ5 3힚{6k8:<+j(1(uRR(H, /T՘pq‡~PrT)ZP -H1ʹ^&YU^-܇cQ[e]?8Zvo:K~78y ; @X5%ih xzEr ˋg@Kb1͙kzzH#i`<&qՍ$=> _-h@[u(TZPYAִmtΓ @狺eS\v:-O5R 1Asei|e\Pgu?H佊촉,Wg^U隥ҵOC,Phw j# s k@ژd2`9}}Ob )D4N|yxZHT≏lfB[[=IJG]D~FtiwC`ʅH ^= >HKdm<=|rfr^QtrB<yKTi$b`q5J'0h-nJ I%prɢ`M2 #+H[ 1|%*+ Eo-XЦiY";-hH۽T D-+wyS4ePN ,`\sYM#ˉgH^>**WS6읉苣0&;awt{ <(vak,86No% bt.Ej{IV ^!w.Xj^ІXw7,a6߽l `G=#MpT̸y]< 2.AJb_jllPnFfk1'J 34IR B/ճB' _ "+'D3 j4jٶd薹輿l`MVC'q %>ENƯOUjv631KxpNU>5|uGŀ8k'*";]8,rX\X3|qP+#WxXc Te:D9#E./ydRGK&c̽m DVRDIѣŘD&QP:,HCXמ=?m־Xq:؅1ű;֏(|g<Ā [8#/3}18:ԉn:A1dRi;y:VmX"騶y@}iRPAfフn|*RҰQVv'YJk>,;tm⮬au蠽}ԓqI3mU񳚞4 K= _y#t=(WG:-gz 7zЂ 2#α躮z5-?QZ~G~/8vxp8qmOq%!⏄3]U Q']Av'fPgZ1*rʮ|i^ 4su ]CUf;MPU+_N`kLfDOl1]T1v5+ #o.s!n϶[MCǵea9{drijڮ<]02ۯF}Iem-5@@vgKTaכlXcoiƏ=̣<W!6#zGr5ƒ5@e"ݸ크Kt2FSmEǓnXyevߛ|xqetV.q"b_b2Ips~_-TCyȮ/!S:mo$f[_HlD9J^ 7WYCVx2Z2A|ft:C)۳s >;h1 xv<͜ȥ7KE~UQn>#Y~:v@Њ,cad,uK|%y7t;F >Q[)WT7/%``)č&XQ:*4%ANpzL-ݢ 㱪#:3u ӊ X}L{XĂ[dV8q: 'fKY>g 9w11[[6_2^U͠@2U'h2Dū;Bdˊ;~?_%\6̶ԠKaC7J2 IcAb!G]RCrp 0O@;Q䒙r%50혽0V|5;io1P{bhO! u y}bךydWt=wEW#˄1fÇ=e?߃?e "F/;ߏm9Knjֆnf2X@̗3Y|.z%5Z.S/^F~j"" 5LQSouY5T`-}q'cʾrFg}ŀ@+bʘ䭖Pi+6׃تw< _lL[NF8/w^2P- .'s;jZW4{IbTfsT0(3ExS0\@t'ң~!Jbl/gY޽ut_`ztVnHCN]șaW,ac$%+lw0! zcƏbOu 4-bٔD9CbUbOXw1èJyP}.腎08ICү vlIt3ЌStKImB7 Lppz o% %l[%"}#3Aiy82i D4&6)(_ ~N4(qJF񬻉B0jb]Uw(y_&tcrtO?wB Ä/uOb3e7-xhR7$ 4cXŸ#F z8sovϛAW0MPxcKXlj]g1L'}'܄Y#wM5U@WM3GX@b_ 9(p#Pr=äm@^:^/jd<BM}L ZJ'pdG%xһJL(W,n3{_)/y^0G~͟8b]q#DKt/=R>.D$6QCV\OCPLEr2KGWlRց%[:T:@i`,  LYJ ' p̘SEhKF3&mU=.lUkl s],?%Ɍ}Re9 ۧsP(^`HJ:U}kt }V@'<:z:Xg*8y#۵M'dt W2}k%~KD[fַ'~vT_K? VKwNýOݡSrP6A|!Bz{h/hs/[K E"zkCvs|3Î.ɋ?媫P7%9/Iz ('eUݚl܆^.gK"kHMg-?nrJ "Hl%Lg.Աh?A3dQwyigכVJPBj )؀n0g^ڔ.ltAkY,?@(Y =#4qSVU`mH6Kxk=\t)Ca)`Y֜IĀ{BZnҲ#1QŝDDn8P?cFP31;k%zN M4#H?թjI jctś?|n jws/0rSv؉tf%ܞrYf_n_Vk4liUD ^~%9XGa?rgk6)_M]~#̀t9HřT| Dfo&Ő&dA s#rM~ [cmmz6IDtR g12O/D#0\Xk_JeSؖ""i6gTHI/d!BvmaשKZ,q6ĞؗO{\\,Qk\eE2yDkaUKo7'}' >::kh*QK!}9ʣun$=}) Df5T8 ݹS=X_*U!@Cgل]٣% !QZ|%elGkk3k5JxL6"kl{᦭r",6##$~^>t;ųUBB>Rbk׻Y)PC Q`-Y~/'q;C-~xw\۪ٖ^\)cH/Ą"Ec^ ] p9pN@ttr5 1e4~Ā>a92`"r]^.YSquMքpSpƉiaQ۠'`gҼ|OɥKLt)l74e;% w`C)r(<@/U: z|u.PPMq~)t,}do> $=<6tx3`U7 (TW8C"X/=c>A6x)BY3KK>3ܬdtelReWbo??j*34J5t bz@UpB%wZ $Y9H 5W697_V7=vk0Htz  wiLna#AٶmۨˢTX3{ľyF+f^QZv"21\/]ӥx)‰>X v/(ݑ$@<6Vl<*L#i3;Қ#0Դant7vpSdI#*y/䝊QلΰMpc&^v=zo3XdxJdkL?G֮,lo\akC`Vԭ2dhx4 ,q15wX\}:5daLι~y4-\aVȤȖ]Uq\]$dwLZx{apaL'}&C(WWI7"hY6-L͇v Qg1peKf>k7NX(Ɍ~%pJxCgٺrZh8+ ~AgʜaG$ZK`9B֚:ys؞"elԃ?CkյJ%*JQƃ 9-oHlpLV?~Tgu2r{? Fۤ3}?Z|Uߤ0o}񨯵ǘ?}Y&&cr)E$%8Z(@[lznj4s'R2Y!a܌ϝ qZ7 rxSCqկc) yϋr!Ʌ֚*eEo$=u3 )JiC>Z|#xW.c3yh,5u/LN  ʑV^)MecjœHe4c.{: |W2{Vb c@$8w*XWEbE>kISU ԗW]y8a/wPas|Cգ_O?uDoǺ#ʽ`"-v,4O;FqT0/V&)#D?irHu}EOly]Zt9H.wtE=,tH$0BtrQ1h/ׯL&>(Nl#rH#wQ̯Cw#4# T rD(s1~DX-Q@Da/.oiCb&6:š{afȬ:Ob!$hםb$*;@)+JD}l;ev2(???QZb: %mMxB}h mKU0)e-`y) } e /g]H/mFEo\$c@~YTLiL? Hko~5:E>[,\5ĦDssR$#Wl-ʴ#Qs]'k)׹tJ~3QץXKv*HFf_Di^ ytCl9(xU>>nvbY#ޘu-$ϽQݑfVZWUEeI]ZJ%5J47\NjJAJ8s|=F8Lw9rw_T-dvєf+4:@Ͱq5 ^ĂEqT Iq0gLE%5*%ӆe$*ƵCi|5xlim<&wZ u5"zhroE:pRT>Nm(?UF`>rOw U,5te:` *I/%Jx-p ~u k10vJIK=qeP^l(u*?q'rH (榩TΖḺ\/>.G ЊtnU*A_iN_#Y{ I~6O=BAD5ٷeJ%V %Q©8):34 o"wdcIvw'Mmt$)jod=, inu,6cM W+`HT={AcOy݆M]Y$pxO}jմvLKjMVޓ`e aR|^{>12^~E=j.G SX,Cg0x{һoUᾰٻ)ӳ r@@n~{% zjK=$&)rp'2 4U:¦tM>%UT3χ[$(LUZxF>z Kؐm!yb1D5Rp$pwhйC1I]݇-H8*ȵebgUckj+tSN*r<7>q P\^RNl)|j5?cE1no'HT՜tzgvOиQk}tbslM+e18F&7k?ppfUY SkȈ%vO~`4H#$J= OӰ70; ptqD洖&7P{/~7 opԽKx2Q8#=TM9pME~x'f `΄7T0}x+W*N_.еj~ƒY`4>*˅-@ g<ڞ0$I&JK_ a7BNR9N/s ugYUsWL]Jglr+Wd8}^rYL)lj'qSs^ s-jkXo};57Ou O'ѯKz7\dJBLUebzLp$!BI?%ҽ!+#7VA$FV{Ȫ1?X<^)52^OљG fz=așMG&}"'擏8{2X,VW.Y+N~ʧ@ѲEA}jQhn~.sL[4`h9'" piH "V1ڽ V _dۇnAX=5,XCpի>,y;|AYj c,RԑSZ'%؏eئ;yK΄AE m4^ЫirLCrfzQF {R w}ϞԚ[Ny{[^`4g6!@ TDP _9APm A;9 +yTLϦy&7zJG/K6Q)Fjpə ] {foJ¯eMBMoS.>vqۋcJGj (R`[Pbꝲ: a\n$J*iQݠN+ V#\8CRczF8ܶ2, HmGL-iRoqXw?l^9ccs)N+WUE,-g 2<Լ>q5AB? bY,/VEw ;) jkN> Y_sѨggPYDiV^ZN᪻ I(q-0; 88pX+.XpYCL!V\ˇ I=05m%GE >o;Xa:s}x! vٍ< jQ89o=$ =yA2LtS$`2[c JIm%)CJwPl.;f2\yx>$J`.DFa,obf.ͺ̜dsݢ8}M5_A4tIe7u; 9kX7ekFg(Gsh)ATQ-j:r$LM 5m믒]Mrjt q$ lڳ3Ԕ {rh?[t^)IQ: $~)h3`qiF ЕfB 1I Y7:s-r;7 +m;:l M@4O+jTF|ЋXc8?9T3aG#zp(./N\7ц,n U ֪Mȝ:D[M6?,YWKAYG HP DI/37 Fi^ HV/oK-P!g˴ h&G?kDEŽԝ!hdN_('o<@/cn9nxcb]< Vk)G=b'4 /O1\Q0%:(swnȭ0ȆHIfLRZz+Mg~ ,(慩px4V;~ޒbJAx'F_T?ؗN9JYxsRkuiY?OxKN@;t`3*: *SV=~HϤ]߾g}'i>>zv43u(#NgQߍ4eOoԪo3!!_Sz{-&ĝD`g z̻;3y""LjL@]Yq^i|~fKiYUZi뛷/AT(: Ȅyc%*: TE%%V3sQ_.X~*tr.ܱD_Uc&l>_5;k S -ya`aEXzH&TR ,AۙXۻ Y--KKzN6)UXs{ 9 jlL2+>I㼐rT`)7^4<͈4 {=œ&0G l@LCDR]|oro;|#^[h)ϦҲ}Ŗ?}1u/ NwYЗ0"$݈.JRePve8Tu=j=\M_s|?+fFox^ͽ>F̗ gONfVʔX NAvU|UF&pXj W:Mħ:%wb imtSh63'|/z1T9 '&H]J[\slN' tO MLT5"d8X=(D+X-lcf-Ҵk crcD%a ]P02 s d5yLriIS1 iCZS2n=\a1g6ώe0> yy Ƌ%5U;Ru14!I*"zIpV#)]M,5:=oY뷡bZT[Ml;+x~V%%)t3ikY -`gi^ ~2~w%W][J"iz;XGtg""M;X6#3(OPB@lК՗G HƩ\lrK6y|PF~!bȎl`px2#,1Qj0뢾fUx*uAe>DT:xfxumjy4.a xn|Íؒ9qXL/-h?J~WW&8?F[?ߙͽґ::G#4Mχ/wBZKӋzZ=K8ee6nI#hz͈,02Q 3=fA'75?wBI.& [Q }ZÀ5ژD[ #r ј$w&{c)wsV{R$aF536S፫"nk8cJr(pzU[au#_ L"XtjTK:%W`E>?'S35L5f ZJCiU'F(>LfڤR9 Q[oUpsrDW+$Ʀ dHm8Jv<{QA^IQmcޥUK6I/Gd$ 7.{*BnB(RŽey FfidL2C¤kubzΆ|gZL+r{3L*xy4>6V(,cqc:CBC@ƥ*{Y[4V8iyDsZm<4c ˌVE!ryL ll[H݋ިN致?>rp.J$YaWPFӄ1c=Eyu6c]+TvL.uU(@? PT/L̴ջ y^³z{jQb\fcS ai5"`4[uu \.o' A' I 1Sk ފoEhZL٧0^RA\ K : v"d2<9-@#e:.IC>-aƎ#V~SwhtQ"%Wdf‚ 7W dw0咶}۞ʳ9{V"fk^guQ7W;5$ыVz! 9vd| Jy8ԠqUd\O~KX.5AK% `l'-<˘rĹG> VY\Nz}]E~@^%~_:>Nf-?}AI)C0W LіĦ^zn9>,x}cA GOHJO& dC kVH ae4T=6<5f`wQ ̺HЇN(zX+c7+) kq^ | r&낦]}}bxs졖Џ$9&1%?cPL7jtP<ܗ{wSX 1gQ_H~\(L-"0@ˍ>t%k=>e0i$@+gelCNCjx SBR+>hح6S{jX:^mҥJCk0}vJY<8y_EIQi'uX+ \>/,}+󶽍 v"WX6ɩzHdެ8X}^d{VA{%q^zY'Jc-FV6R_ &$[+r笠u}e>-H~N`q5s,V 9O>0Gz5s )w>)7 Cq 5} %Y$&;eF۷>ho:`}Ú p$ם%:62T*li7k>L9Os2n]^Z$bWe\X3mX*=鴆ރVb P>_{{lG(Tqc3ܓZVZWi^O=(~.s. ڦI)2#/q<2(ke x"ڻ{dn\rk}\tFh>e吧KdUE" C\pX/beL{Cghhw64JX!OPTu?,(U%RAAc?'&bfaVYl~ {t|,|S{&"aYfD:Uփ'P;B{ M@eyqzP+;Ĝjr(B'({a2j/7 1QJˆFuukمb/MhW:PWY (?ksߞmā/@_d;e|2f%"c3 ͅTnWBAj]?ǿ^jaDF/kUq)h,By*:-]}HP4`T뀞?+hIS`|{t/"+y$Q*0EDC/Ouķ@n}]~>Ł)?+3 E?n:Pgj?fuh.Z2!739}$з8̟yDŽLjQft(֧Ac2;Y!P8_'*1Sb0rAk\Dp#k~|ޗ^4w]Cthk}U *aj,J;}<4&Mlmh| Ҕ;F>-<7Vݰ?Tו@eA" =ɕ<6E}tp Z ipd.=xe1Vk(\Dr z[-hf7B(9d%R/quPdw'YɊ{=/׏Pz|b?33<&5y e-uAA۷sW}]a;7^ ˦33gQ[eZ azAb\,yz70<G}xXS!SQ=bhgD .gAFh7:Q{)6BQg"RrYwmQhTTX mi7e;fS$ U<]R$د{Sgdv}?.j554G fWGf*`'p\:}υ놙7Xdux{x|g,bǬ{tt~}NeM7b*ʌjWtiIŘ]60}8i\}}XdmXr ID{ ux2RR=_]5cR 9aѩQp#Uk!@2gtbB. `hGxm%VɊE6ȡDwHq_0~q9ji (Q)C5ؾʲh9sUFpGBk0n[3Xw޿6mnx#߽ rj=[Ah_?ln4eFKS $ y@'Y7>"RƘ#dmfzv <TVkv7F}"֟G>h\Z=NèNqą;Q -(@lՙ^m X7k@ж75%HF&NF EoX5s']iJi)jy=$؉$/n9v1eA7b,FKNB˶)SGLmMtfDF oHQJ@}pZ%+{I}bҹD)p4FU(fEpӵtW0θvw ]Nӡ\,l1xg9L=+ڒ6 zyf+e"t99͵3n_[RY[ph\5!L>_H3"kJҜ[XƜEpھ'wsŠ`B>XtSFz4/?`1xgR!3kvZRl%M5VA$yA{ VXT2Z9`h]k"Mxf 4fe|u׸zr ƵI XNW#0 $EЭ@q4i@_|EKЍͫǂkT)uR`aШPx`^xxg~B~?PV.`Nwg­ۗqe) -DfQwBv馾k,.>`g`d@ +-H2o(Ft ȅ<*\ /c=oQu4ٌVN>*5Gb3iT6 w9S,''7M2oᮄ+ֳ ?5Svt`_,q ϯ 4Xɶm*b݈}y]j4L'ƶ=.zZ;[O/.b)U&4^y RB)r%!Q#l,Nڢ|gCcWW WH;WsߋTA@T!v(/> aayote@z}FՇKQ/agYd5UȌW66ts sz`9*ש׷@J`Q/9)X]{e]1)7{X,#i$oafʨ!5F،?5bd,?%%Wn].j,݊6wS5+U- l a%28MD*ؾL~~*ZתsH9cW֫e$&}:%Ӗ._ kV1d6ָ Kgf*2i R=F4" l护Se}ώGEb؊vS4e%NR1۬ >7/lJ`ұN <*qncך/AL*VRd{M28]{7Մe !G6H=4̍6a‘//+J  c~}x ;yutd,yg!ˁ:Yaa$_ `pYtAP]j't 逫W@< o;.H0~lu@;і\Qצk\Oz9'`V}L\nŸQ)m9QqnM[ tzzĀ{gt\`ptNh1]!- Q[)T@:]G9iJ{8Ǩ9_uG(*M[ər8DΈ:HY26@ذ)B(QZz n~q A(ܘcbn=PkVZ W86Cb{5(-;=cL_1BZ*JOd:*aMoC$MS*Loe~O;1ۚqd/s6[³+R%O P*ly,ӊV)|UFVUD,ЪײZCXtPE!qe.^9Pn|{IkP!ʟE*!h |;jFUeDҀ . |o/mb "܅QeAt[\ x{X-IFA`\Ib Sk0ҬW@3K$|n]|l cBРԵ%m -/_ɔ!1Z qd ^744nXk"e'sdRBe'A :-qlOg 4|Mu5{.' [-s9`6+\GeA&D SKR4=WC@2 :P4cqtv!^3̕Ա zGzI뺘QOh2r9jds6~%,KJD W0˕'44n^Fj cD2Wйc!$~lrDJ(`~cUG"u R [YsuA^5'#T .._1}1v38'ԀIfv7^jEjquУ*Z|Z]XЯ04>ڿ+LM&)ho{9;*qeǍ! X$`t IS /)FV%GTEpD(D~AZVSw|k´) H;wZ{BB>m.. ?SAWSzBB)këGNn KW gU!i@%+mYډağێ[x#;>/hb_5, |΀1z;4ukD9C.1a !跞i曲m9e7!Cϸ7|X6 u#[h?Mt"P{N9j\8c85Cl<i NgАMTJIj/}kxuJB37Iap){GED% EY驟J XBRgq) eh 3ߚ㧮MC{2~GL+[]7sKC~QDJaGt@͋o;oB0l1Tʺ[l+OOvcrX+ȨbA娵0NN 1ttPB?}#En]!K$dPIN~߮N7Ljwmwh&;eGZUmt=_G*Ç2zˣwv.aA]5&pxJ6јfq׬iMZ3k*5p4h(t/ X:hv]%"Μ=J.Uiu;#MwGp@ ] i֮ǐgZw[ɇ5(\:ÆC4s7+?ܐ3v*ȳUdkluiN:N.'ȗ7 .SR?.T)?: -r;-gww4 -؍Hfĕ9_'!l/)zaÜ;Q8P< 3}HSo?eI0G7@NFL34SzS[Rqu+9f/SD+OT ߎi{Q+[[y\:4%*^`>ew"% G"Wr2ZbM]0$!g.pr=U͸"0fWUu)`Ȗ!QtB˸G?[?4x)$bdV2UټgcоxNgmZ13)T=YX4:ԭ|EEum ?zy_AVe%50Xr\p f:5L19u?dܜ~OWAI3Lu:REF-)T&@*+Lxi(ݶ e 3t(ٿfZʻB2!)_bzbiH;'?NZ?" F3MXG`hS B4en) s5p_A%bK->3QH-Grɉji R0Hlaq G"JDM96i`F#(P($JB SϬ֒zD8'ıL t8J.=`+ qm 2WJ01`RpVHSDFHlUehYsUz| IETSFÕgAUsCۧٔ[rjzbtl骩\଍kq[)ʓ=7ڎ }A̚j5`\;3YK_ivId$+#C8{G j/fO(cifw}lngRDeZ`ٞ-w!FXaKߠ2SlC83f2F,1]/hjޅ:Q,a!qWk늩 fp"O0p%e [剒b8zT<{bb%)}Ups,iT}o```F*$~㓪n9m!Ҡ}f{  g9Ja2/+vVuȱ{`hl5㙈tZ}mDӠ炮6kI'*dM,/@"Wwd#)UfW"蟹ȩ16n+Ipxnɚ| VJ㒨ˋӇra~ . sl– _Lc6î=j셵u:ZPn*Hv 7kZ ijfQPI|p-6 )+";ylmtdlKdyW[:jzMDT||U ֎=YʝKxe6W]8 :Ut%꟞Q |ֵAp|$PEw> 6(kn.g=^ X/L|x(ZRLTR ("*CcK](8(\J_~N{ C97hݸzF_n~ w3sjΒ+S>ˬJQ/)'٦"l4Ps [5GCњv΅Jd)|D$"ɍyD+݇i; mp̚7I-̒ˎR*b7.]o:^n(; 3NU6ap`2?-hgnw @, u[RX6" EZx0O7֔%LQ)qD?Br}~wj8d<"`[0 kM (H$4լBt|g6OժFDP׵e rO*y1X>c-W:Hg.Y3/,n~砃LK5{`$MYf Гv޲nݕѣޘ`kCZH$$dBdݴ| Ey+ةּ~\2[md&/\Ӗwpί^nt 'jBQߩ̄/QD$!5]@r|5A"-9VqpWwhgWYtji\S΅e̺1b찡umP!* Z-eBG0^罞V}{ b+ȘNK$i1 7Hצf:O#*LQX ]2/KhؑU]/14rd5ʕK1xf)2 MRVAiap/ЛL8e8NڛVka߀o'urwv[³E{55"akAC'1*C|7AOC.R_ ynڑ](VI9S/ ڣ zq(2; ,o&k)hiu="ԂFw-mָLt53>ap*P~e}f{^k"jb9$26JyjV#7foӥptxIV-nR.1A n=kO2M.ފ;8|_VZ2.?< %\/'4@-Kz2JcS5 loT;%>+DMf))Gnvuzqo -hrI.͢~$Boޗ|?,WUA*4ZB0Ys{ ;}>1d\"2׶H|;}Fvμ7^rP[Ehjp4u%4eQKG.YSׄ2 mIXk|̊ln9<,sB$l1-_@H5`X MX!sw(pt_b jSGr8R4L둈kTO+^QW=|-Ɵei c'Eđ=.bqz:9Uwʿ!lL$&K(eO˪?./ݎ & [M92bx,bAK zĚj%&"8ai\Dbâ,L.gWnUݸxQ)UKa2 :?'RX5Vh>Y8N}!8L YW?'sx,\ ecQ2u^EEmX&C@BI tpӬ}+r o ¿k+Z=^ɖ؛k3X*e:Yjd U`K3j! Fk1݃Jٯdnu 3*eKN_ mBEkFGo4w A9t/ص|vtEtA p^Ɏ5&DA*jdݟ,L0SЙO gF_?}}}`}&vB tꇭݩ4IݙY^9VoJ#29 ^t9*}qoDO:y0?6i7+.d+# ?^-L؎g%yZY]uZ5\͚.o 5+S嘄@]ud{Hp=p7߄ύz&yuru"շPed^O-.}أE]a; R ~ JkzW ͓) LS&B}wL0+̊]#~@ LݙCX/DaHu$s~˼!x?"8+<ʊ-l%1[fKt o<\B#eV‡K;Z[jKAB[¸gE6Y"w%s拿.bgIѬ@'NQAE&?3HNmb9ILn1jbq$ڵZXN10}96[_\ pGP&/~ؑ? UJonk4?FRrlwN9 j/e3^-&wGokJ/l[QR"Qz03<} ̀& 02^5Z~ԋFYp%7QƷ>"B7AӞZ*E-Q9<:~r MJG<ˋJ,#ѺYZ4+&J9"p1?]W)2{ߕ^4u? thq{$Y괥¢>,ta2Al|e%- 7p%A4 ~*%Tm:SȞìӕbU()b2Q Y4.O1 Xz{nurN6q߈$+rwg*_IEzcj*{iu F%pWJ kG MA:=u.g}7a:-͹/YX$Rœ 0rUX}p<:L3ˡDŤ!ՠG CɪN)X Kݨْz4K1hdmrr";8uQrp_VސĘ]xE ]%/#~02Gǯ}g!nq&'xʯodgBϺn &nVn [諕1䳯0|kUs4RJ09ͳ{n+0t6ƒz@Oy(ELeF\ RqKWHj2z,06ljgm>|l8GmVρ{rQK'V?Tu8ƥn7=_I1]S߾qga,ysi3d{oڗ**'x¯~jCfu(ceGe)% $nTzȵ)2O /(k6’? WMmth? hL㮟2⣥t6Ld$(,@Oia<MAضu _M{=Iob6Co>ySddznTb@ #ĩqY%nHZO]RMzÀbNvs0 سxՍ ȿkt*GqDBbaJW[)<]jxFbQZE4 a&lKxDv̞:}F&e\ NN|1:4Y]ZivR"8|Ebvj.\Bnd#ш3@1JϕX.)Wuco{%WÜW]\`Rͳ.]i0DlFSF ͇i%j9{  Ekå^e@mj*ZĊ3Qn͹u}- C]Q<\8ՙka4='z O9/PbG㋹j!S5v #]痥B(}6ՑMt;imCP[reT-׎ҏkU ro0;fW61ULٌڭyT%e_ }JBUe/)2Ktl{0܊qmHdk7"~ F%Ԋ#,L! ,c;U&TLfvwCca Xā(2Ҳ)ވ]Vx<gXv!N1PIJ? :qhiu;Օ[L Qusi<if'=OiHC -P -_%M88 yᑲZ/Wi@v\[[?3(0s MBޫdh'Vm+TܭQT-_ 'xb#l?VeeFkz)SX0a'F/)f v%Rt2%-=RC!opg_cc^ ڢ .lNߡOWiYg=\\Nƒx[AE9g3=sh(co&?H\;3s5)"AFA8PPJwƴ-_ةWjNg$4+µvrj# $ *́mݣUA_;޺Yw7.'vlO|R V҂ b?)+yR;x6:[OB /אӲ7ҧ_DQJt1zGJ\v\ d;)34au1q5[#̈ m^sp7U^C@g`V6I]'tu$5Onvv:DY]Q^g+8uƞ8)5E#;ghzG#Y[[P]Ώ9o--IN7"spoQ(<PBSxicm V{dՃHjQ\!@kbe_+EetM( ,g2YޟZb;G2\R.4I`LgNNDʀHi۳ j г.. ԽQ:sY(X#֠S.6է&0gf ܖ g? 3DIlx\u=*>6Anqt,G2~Ө7[4z/:F wոYT/ rB#x0: ȹ +qArɘ\;ee*@78HL~՟o$@|7$5E8"Ko#rQBl&ȭvKTuT7!)E8 zBBtNٶtH=8&)38?oʆkK|}/w'¼ P=8UߚP"N5 ϣZ-Ws$R-fTNDPh_<zU`u޸QL۠w8C\?C_A}qpG@ `/Y⨭fTLZVrRe͡:c_jy0{0L>3Kgg隔^ ݠ".ۓP>3ZY1" pΧks!5/9+k5\5V̔W]ϵrEF0]}XKyp8d6KnA}D8|ns@/~NSkߺgd2HV1#ŧ1Cv{S}DrXK| E\ZznJli=@ 9R^'ԘUwG&_D/BاtH=BwG&{q;1qWy*F%9_s[*Ɏ:s(Z\d<~ꮞI*TR\Yz*3˭q@=5ىS{㶡A3SutȔh9d$tyVvh4{ujEi rҠGȫ@cWo\ Gh?Bڐ`㲤0ALL;_NW(SSKtlaܙ/f=S5Ā7O;nE*`?5C%~O5߳/'QpvJEYIZ#=H+!» `jeDpp|/υDSLqe%ѱ!(0&BbvR)J$[Z5c_bS3pn@aFkq1r spѻXgjv>5?1m\pKS^S/W 6йUlsջ^'sEx;ҜvC vcCj8֔OPU 8TAE•?e+#$n?f,gyy[F&IX]+2gsؑP_JZteXw[Sʳ^3 RrZ| Ȧc&ܰ ["/[ܲng3Mr5Ywwx?$gXuo$}wU0vp=z[3FY( ç~YƠHo$㻦̜zˑ5 WϤfU07vk6|ǃEiߌ,)W#[Ts$"Nd2{iqJY W\=֛ $Iޡݯad`Ta'>zlT= x9NKlT)/#h+${;By!EQ!5(FE-bSWu 7oʜe ZPai rDx.uQwԉ^Ua6X6W&9P)OV-/j 며wS3~wΜ+$ACV=r-n:{GqD$@*遻߅6@1yQ|_>ҹLSlAӆU(h?ZAfr6=#Ks{*z*3`Ұ)Q}F؄[`P%p>:Lb[;Jf/Nv$}2ǭ~IsSRȑUڌZ#6%sDcInv/X2/uQ )9 +WVZ^)@5;4O^|On+Pa^z/%)[xKĔ]┏tzw~23٠1)y^dg]T3d !MbxoPBTބy],S~^\j loԑc9W2yl_ĭ0YðX BZ~;Pz}:y-Z51F~rC MrqhYMScRo@׆Q+Z¡ 6Y1ZLsX[JOO/:zq]?ZPQ#Ɛa**J~͡ T + f2yLVJŋu˂-QhnP%!e`C˞ }ڮv< x?Z}^\ՃEg,/O[ |m5R]7@U igD yv}#eR vKl1n0;0 }([eڏL9["o˕Zz.|JK,#|eZmNUŠg<$ρ i"cϡ*#y[g|mr@[AX0~t4,N=ۺ؅ Ew2,bZ7K,.ј9d'H*Sv$'IjBiA\ k7\8GyA&R7R0%T| mR]I Tx.Oi:x; _uNH4djA5:= 6!p2Bj0ukŎ$ULJzL|hU{($J^ru‡ԤrE ؛4),; ~QO]9 VNCǑ_e먰19҆JŧbaL>"$bD//JǑƎg128uxWd\`GZ ϪMR^jQ@e/Gie߉elc3\5J#r}r1)jEEz,um]$q#S4' ;PIˡL27 *_oe4)]f'Zv)Ua'^4 >iZskȁ`!͛cBҹbߕ"i~m=^(fܔOʃCcs> ~_۱X1a]Lje9w!(Q9kЛk0x8ёY zJH`@}s&O"(#f$塁ڐT$A`s*-JYSQ m QcAC#nH(=SHAU4i=@:P~2)\"`8J1Sl5=&Z"wy "+ }'ls*q'#=1?7WzcoK168Z㰠A@w5O O5岦|)\k#<:'ϱV Ē 3_lE": '8Ϧ .J{rԣX-=ϺmBeh%w={jbh"q(WG`.Fm=.O$ lֱ-q[}_5+ :Op|pc}FͥIE5l_IeK Ɛ9p-MOt W ?CkBm]^%xQw_pb@?ZU> W-241~T'cb4T0 ~uV3:8DXJ9Uasf efmh?4OtZ;JTXKHᜪQNZBx AdX,"fp!]2)JsL1[#~>,@@2}0z\5NbcvU^3鈰rpA<cx 7ߓuݿ`VqFR8X?,m01}L?0|r@)jAoP{0_K˳lk%9r]\O6ϘÄ#ҥ>`v _A26L)`b XeFS0Ī|M z삛> GpnDOg%޷%m=3g+#(qclmbl Wm>#FFnDPwTG3ς}c ; km.ux5~> QH?*(^:Hܚ0}5++ $/}hk(~3|MHY+[ ~☱NxQ_x"s2 2 W|A0c3Vx\thpBf/o>6e^MCD=bۋ{#şEɜWݰ2Uga/xm o_H1:(bM[Z#2m+{׉\J [gg[$I_S~BQF[xeLߔ{:,n~Xx lI,#TVzd(F_ѡvW[ Ĥby@{M[ME4>잷 ioة)/;6.`C+PAK )o_p2>qx˽$/B+RD3۞1F V2pҡ60Te!ŝ4Ā Q B A9.>*{1 L=Z1+ %$p4ayzH:Ͱ zZj*Lq聦!`#1c|kǃ1jIAxko澫ՠlN5ߩG:Emf _UH9RI+qPwN#[9gU,?#GNRó^vbz0Nv(7ׄQH\IA MR97)|w#8.?!慺XFM㶰 ̺5fvԮt%Hj[,9Kul] }jRꉀCџtE}2oGqY3]fgg&rU㭑K.5.97RF#n/mW?:F魰m:+&UԿif)a-3=5[2z}C*{8n,Np}#:9IBi}Z ,^[Ȝ.<ÔT&0wc35T O>@*S8@}#P,ϣ ln@ T1:1 {.r\4¾ByOqA,Nl _ b!,sW3eG)YICL2ND-wBOQ}XTN}?YU(hN2 E 2l7E=#PXs)}ݞZkM6vS:lZ] \4  8ZQ#6r>LWt:2lel.?-&B(~Dd+al=nA uzIprq1ڰT@FGbp{W^iG@R_ H$q&~Ķa׈rS7ya4ګ)|(E /k:ϳ6tz=u1i߬WAxrc͌QրY%oAz5oowv 9VkK<{@m6i8Bl%QlM[uKRR>G2Ֆy.$F_rۃ~kan8M$\ ѳ!ԟ "׏ΤfB#gi 3gd~_"Ӯ!«hy88C$f0P[\)5TQ@m.fQxs5R1@BKyw|gY^9; Z`Z!N f}(d.)=K(5d>EmrC)hϼ"7x1*V)*V 'ڴ]aTlJj $Ȩ._L#B<* Rx3$C 5,g*@g"sˊݬ=s)iEN aFY2F+PQ/v#~DrR;g6Pc7AIrca6:[aplÁyV.b.vO?:d'9t4gq|6 QgF ftx(;d=7Fɔv9$ðq)*8!nKKZEl3Nʮ _hBve0w*̈~C'bjⷜqT3uyl=x,*P|'{ L UF\pY!V-aHz(ߪPЅšӍWnZeGTVCW;ms6^'k&1jh]|:8DOC2dYkisL0a:N@E8A&=OrڇW\ʇ}TIb ( \On.Z~ŵ_Cs.+sF<yX&%"g> Ϣ֭t'as?%*N78Riێ(g7" FC2z?: V/>zt=M!;LJPgͬ&6T6l$G†^]h*f IcRi._P.^^$_HqR'iO5g*\kS }8 ۰7km&R~YyI_qOBJBUm랳IwO VߜBw{lYzOydF~C$l+r*SLLUJoc^J /6@8+GłiFa4٣D{u`I)}`'ᢘqΌwS/JBv/x@Kb֧`^BZJ hYa9> 5q#ULH攻U@ QGa xE x8aª ̓=wa b AA(hvǚY-n'3/ 5/zم>fBY@\ $t JeФ$Ĥ3ad_Z,PǽJuoI  %Gz{AɨӢW|AKj S'یpq3@p#Xrfƃ,{XGi咅Trix\E< ў Q: ϮZK7-,G'DBJwTJz_j-U<\4:Aupv^KM4JHHF Qߵl8TV/wkXґ;~QҹuBKƣq/͓:(کұԿ,HZoQj-́={ L?ҘJ:"VIvAI]-uOIQ\[!ȧ&`…!^PAf}?fcgcb$"&QrQcB8SE)> Q3MֈdH.GxA|w[s~#ƟFލ[AD, !Gx(+T¬̛!` [+iAɿu,״gY+S~?ʪP v-0;),V#z e%yg<wMbE^yO3:S !*aұ4װVDX;WqmA\䣡F7 F<ٺ j7gDlX >1wZoD-4}_{!;DȔ *7p`y WٙFmcۃXah\ =D>+qjh'Xmeo u DENT}qmamד"PqB4 &2& 08l+'䬟w.f 0BVj k[@aGqN[Yv9C}kVӻ.xJ,l r\cKNN!>&K_|P C}`ɐDV<#miMMTJ}⟅d?4I>Px_Ut)|DCs A 8ZfB0:~׹y[rJ\tH5vநQt](rϾlPtw wDw`-5ѝOw+yѫ1s$_^UD5I@UCZjq8tavE U'T%opr?f(߅jJ"Z"R)HNTmgSl@"W'^9%:K FM +s> ,a^s̺4lmj%yI&\㫈$Ʈ ME m{\ĻBP7M__ YBNc[(RQ^T XUxo{ pؙ)^GvOB/|w,N}S  _Zk|rTPcovG܀t(!y'uVLˁ&c%G0gL3i%?4RbqyM&DPv慴9I`{|e4\yzY*kx߄hxF{Dő%MWn o ym $K-雡l]-8S#{4dYuJ10TAo,őjɉ%~nw|®Q bO҈i+kD~?L N>{l1{-yy?sBK^1XrYXј~v&iB2ŶNQ\ vOeȑ}0Anoeؔ,iA bl!b>ؑ|L%,y\tcvv ߉ <%vJe-[La <_< M+ hn2}Ʃ:S?.|0~F[i'hYܮhVOZM6o;O?׉8Sj[JlO_neJD9~a([h9g HO.L8Wb)Ё/^ 4\{J5 uh揖ij}t*nA L#p*1cD8Eث1X^o>]f7֯(WV ;5Z;-R||JD-Z=7:'WRGTRvhuM&A]˩!YCUPQu 7Xcqԋ^Hp"_8i]ٓf3CT۰6V 5[i@1Jb-Zk]2Ԫp9ߖռ*AIY1x6: eawEod'=_'~HVQaum}kzO$F%hc\Lhy2Y#1,5&4+нk9T4S Diau\ zK<0R~ro$Sk]X~>T,hG>AQ|ꮰSʸKiRVFޟjz zk|Xoԣf8md:VeM~nz kCtcC/0*wpKv 7GVb)WlFκޮhr#lLz\= k<<b:/ HFX~ nJ*`DаYKT{= ]! O Y1Ob_~FvS P>E_ZkdUyz)h\Ԍ/CpvҜ~]?Tf:("׻0I!YPY;*Ky;ِG$,v-~MfqRHY1/?,CFl-(>78DwZ13PGb_,m\XQ1oJ1'b3ȅ}]ZUs=~MVnYri(AՅԀ8;\7x(\>y%-hT- >-e꺓|)W! lQAjb3ب~d(\RM;R?4ʆ ~W D 6[+Y-N6Y@{<*' Hv} ^ץ1ۜe 9F5u;ܳRRM(N Z~ܓ[-ū`&'3F-DMl$R+4:ܝI !0d>dGa@%$[[aeYbOkpm") X^$O3h #+ !QNi}ˁ+>W/z=NP8ZnzN;  $"VB$E2Dv>,EQeK Rm5^t.l۩5];qX8/CaB?A<}7mY,} ,*UT\!u= }Y_c+#t6'kM>+lO`)5f%yx.tatXr\4ηDԵmu zxX0@ّUXߣr]EyY"m#ue\cXb!]tpȼ)-gїI宬؝Ǟ龊XbpΊ7k/YIA\K #KmFN WY_#ä ˝yYNJ6\t/i\=_rplL#}43LEjM ?{HA\dھ1N}%,=FXX]l{M_xUmmbVCdQ N*savI,?YOu, Z:BK!umϴjמY\fς6uZ(imߠG/ͷ9~}EEB 㕓FeifԲA>Hodv]-XA>Cw/~ҳ7^֫of2cM}D [A8$_ ,JGua1:!s T݋~43W߭R>>en86v}˲Li/a'…4 !S\!GTIq(cXUBi֯fY:nca9$q2*ȏDgY[з}[2 U}(tL= #W µ9ケWrԻ7ԛ}Z;U>$LzZyY뛓*"Dn2ywׄtdx&3 .$l Tܼ}ݯF0_&x꣣խ7omA8ykÍ{8x=4 ?cfkw+G):ga'@˦]Vã*Jb9;@JHI!]Cݍ@ ,Ϊ_;IɤnZ^<7 U@퟽)L>M`>#X%g=unԁq^bk."^2>*;b6j4=x1t<\Q ?DwS:C7B\\`,S'Q&w?lF7+qR) |S^lq;1Νӡ]^/ 6hL2\<_ ozKҲ }$;CesBmgXqI몕tER~+O\J5)󿂈"G:CM;RLkcV· C\z2Bu-C>P /n>*}+=\J; MX*j@aVv.@2 >FvDP(#_D ~젻zؽȜ&QR%ԟqw|]g)F8}?%^eS@3ͅWTW8b7+ cPD&ʡӽLȚS;KGfK,TP|Y:0}, ;;uZD DU6ي+_<]cu`˂ zy;b!2̠#6:/ >_m]ih<"\jn+xQ|vY*#$ F@7Hx}$cA^UMD] wu.:뇃o%o$cT7&yHL&|A|`H7B*RH\ӖH{4c'AI&h b) N{uxl0@T/)M ߖBo๹0|3#3`bmw6$LZaUlko +%fENu͸D Rd<$Dp16"Wm d%j|D\D{("ZC~ iƹSmZ?cĴ aчچdR*~=ݒC'ZPV9qv?A4[^jUvRpeb^VzYyPܦM+ y_ׅ@Q?2 x*cLpl8t7ܫ3v^}=67+#If_5>zӢ\Z>(#w1%-yBa./{ڔ7==_!~X%+@u rY65 /#3̚*ƊI :@M-|sۼ\-GC sk|xR~#@I ?xuW;eGIJ%1ME_ED1GH;tֽ7r%_1vU~&R7? J_3w~ߤAu<˰$_yUdh%$ފn$}#kxb&*hYt1I}==3є 9K4U_5ki:DeI4 C_ܴ)r/AY,oe~FZHhK]Ȇ&bsWe!6>Хp5@-$h(ypl=9% }ųcr]`dM<6eLPo+ztk*iTºRiбM &r6k)8|KΣYoQM.y+ad?R|&lCr(ۅf=gjep)C$ʷ1y#=a\5rVnӐ^ȬX |?Cgۊ*qfL GC42;o_i:PP`CI->/;)m((7Dd#>&E8ikC8ikn$ΏX8SOeu^UBȿo 'Vl$;Lwsa39 MT^OKޱ4,ԛd2g-vL[rhx#A9dY]z͏ 3\>>!ˮ$mPӬn= ,0Yv;Wi`31\OE[= gGĿkEX0*, =-tSw 9XmTBNɣ}wCiۜ JwJ݄w1q!\ KHyr]]h8?D?+?<v9 p7cseT>wntvw){-.J3ؒFOtr}NӋ9곜Up`5?|@mgM̟4~vtrzʿ?KLGI̚B &Y`J?l!hڵUߕZ?r-AyL/+Q4B9 4|>L52TR]w m(VxoyDh 哥_c~{>3xIRU$!RC, Awl)uI}B{t7Sn݌!v4t l1z D|[49KS, p"-UfDTb}Z*pCO\i^ܳHT%dq+O9YZ+UzEeҥEVB&شqzso5^w+:_I{rA7II!YY&"(3]9|)wcn~5_h0&Z.WOc H?%7,;̩#z0h!9ܰ2C QdbvNp_2}!u5ASxfMm@n- pTs1An)0'X'FCty{K+.91Ȳz\M|Eh.t@d ^Kc(<4vl}2c~>Mw藼|θq<:#(о=GwrDiy]*ElO \PMcF*=0l ]^@Vkki-{[E tbirzO6f2=g@_ o۸J^v/HBTe`]ܢĦ/n dq _lqOQ%n.،ʁE?$|1$¶fށ7W1n"N(.ƫFR6lo_ˇ-#‰䙃vwA窛oBҖ#ֆs%]bb^e.|LȲ̷$32U<RJNWS\%HYk+v:;( V*O:⛰ ucd`pƪG/Fv<-U~'ẸhU6f"b,ogvc1.WP2ӕj0I'H;&"8N`g&iz(Z8l3T '(">t%O6i8fHCzrq, # /8Fz1;PW Q篇\G!K7Ԋ׆Xm"s- --b|`Ȯi%t f ) %HbϤ-<Dh []Z<=b/ e _ϴf})a`M1M չԹ<.s04/  DLeCJȗRg MБbq]tUozIa`Cʅ)>p}ϲTs%YQ߉ /wcO7D'QnU<㼝 -ՀM`Ѓ,ܪӀ̋47Q!?[:X;br,H%+ҭ x%HxAcZFK .AUk[jeg^25J˻JNa!p,5X(6F;FG<ÑʩM'ۢk|~7Ow7$irP>RiVo]E t5o M.p#-!N=IRZw1W,n↏R1*+ӨM @{ݗ/{S])=7 tE ϊbP9TC=wE[,!ԷuRF\!:JdW; SPDX11aJUf:VݚQU ֬bި2nhs|H(#Z^]ЗZNК1߃3o8,g#i7h=Zre&L[,@#>J=D%. oey,r~ň JG8kXW@ ))?Y䲈/isM6i#m{ o@{9I/|_a&a^7\P-J]PE5=].A蓒|Hd T&b0'q%Wc-KGV0XΟ[觡'#,zU˛/ޅa{& GzࡵF%2*'J5M&SأvwOMDӪzMv-fy>3P J6wLNNͿOJKavhY g粷$4 =M,Q!U3J4jhCjhPVea*ٱւd ´&[һDA-؋S EYޚG<[aunh:f;b!-]Lm)TՓ-ym1'K3)Tmv\ 9Pۚ Uk"Z?_/KÏ4m}(bՂW5%v 㠏mdVeN\`$*}$,뙝۴ZF=0\ y9mtq‚ˆr[ Tg׉8%iGX' }?|T[o_<-u+_ ?4t@i6Ú$r/(_..nƐ@Ǿ\2 LKAC+'E (4;% w=$vUByABUh C$@)pgUW Bj-& V9̸gCZSƽ A=Y@:5uʜDE-ǁVZ̰10yC<-ckw6pr-'EG[pΒ1$::Ca(@D4T ৼ/-Ұ vVۯeq Zdu)׍gT2~rb+pNKfeU)?'5Bʳ-U?Kf TZ~@R)9yK4gAndr? :$J8]3p&Κ_f|/nܙZa\LCع1@nt=T V-KA4sSrYD6'}n2^Ci%4첝=-Uxj)ok2KS6 J' = e9C)s+D"~@O^%w$C~_R-EFGN7_$*4 >㤊t)[г"ذi.}t lztd|pDi")\˽L(Da[`R[ I kP6#\WXKw"iJ- 6(Y+XL}8? d}4.&ŭcA׋<0H:W;J&{ OY2N. ֶ.Q^ϧ%uГ[J'575t=1٦w/ݞ)?Ps|&@^jG{oNJ_)A)BZ qznuZ@V&hm鈠柑Hs^J9Iuw|׺gA:EsMqI_=+ە!T~D Jb.W~19i <<KJtZ걆_K [T{L}Cys>SC2yB\b(AEeoP}ğ}3H~MY&c7C_~rLPhm]"lmG0&)_h}m< Ҩ_Їܛj(U"k:]/$彈Bm܄c{ Hf0@SD&K*%ն=&L˙(Nܙ1M}Fcr`8) ki+3mvjĂO)|N'!4yoU_?OUz_bpxZO$sK S8^!;HdR 0et(L1 ߙìu;]H/X/R|$_]Ww̠FwAou> W*z"IzC#R  6Tq~r*!bU=?&7jWgg^,r sMYs,;[YO* T˷,`xf^#E3SRC-Z${tG< f!dQTM:.Zɾ3J}>B;Kc1)Nkǐuj&U%5ڋLIجo=xzi1}  4:'O]l?GLE漃ӐqtY9`N_4w]wި]Rɔv'Oýji<_.2Y:pw׳ghDDg^8I^vCNf]a=٠t,oi pb8vU,9q#Z_=H`>eihrX,e$!G$^숼\53)p;fxߛ[ ޭ:t`E}uZqCuJ Q|ޏ$dxW_59?nn>aad8Q{>&A~fO֝{olu6 #WUj~khyP[Ż炷[ɏ|p 0BQ5uMg1J7p {w_ʔR,UhhV*# <ျ -Zڿ -@WؗA,.\vdiJk=Fj W~vrRC!&+kMם]=w86󎀹=s#&Fx3&yK.!oSvɟo|DW5F;tits" rq7=yDrw0yeʰ}y`6w@ xB%6,^㣛pk Y=\]{/ LbyQQ$0YCIN) p‹yɂٞ"+`$~F6=Z"|U{_z)kgJe*;y!$IjDP<*k6h2jZUϠu,-c͘<N:[/v$~($Z/[t~ 8֢>'" dNYF`K:ޓ'"`t;IE-Iw/NP,k&ZBTi/- v7 *önoy0A@W<9xZ9P z&pF=Թ5₨EƠ^Y/>@-#q?2 <=!dT^ḅ n*"[j|Oث1mEq'©|yZc]pD::8d*&V p%+gQu%J&BlAeVMzF#\a*HDRF93(՛̿]|P;3=Ϟ柔ҹ~`oBQ[2LL>ҧwF򻳽G< 8oU%Ȼs{γ[S=KUo /k1CUXvÚr! +]L7wLsB=$M4QTaJfbm7Ρ.NAl2]aM| ~>'M̧^X";Ff\%;B vI6B>j4j+5GWJl?̣%ﭵ EŅZ# x̪_(F&I\'.$g B`S99.nVH9l;i1ɾ;|oVX;p JVc@=V# Ӗ|ʑjz0v?=5R`)^~BfaPG 9% N9$r GX#2U0_L-`tjKaSܝ焳}6{L(C vZJ۪ (I"Vx͵ݳٛס^Z0LkTwn7w@^moP~|HL }zPm&/ܮ]J08L; ײ-# 1]3$(^O d&3˙pC g$Y]7n }90݆}1;~`~]{Sjft\iBaM&ɼAd,;KD̡!BG^pn\?Iq'_4}͝BHGs_,Bn]ov~mD_|W]2#Nmyu5H*|#Є[-27PW D5mUX.!J27c,c`>p,NcA GDFvX@h)l 3%4ock+eOo;KPDu[Ύ?neȯzwo?񚍞 *ahp5͔b[M glH#$@iMG/t"2JߴiZ@EG<h{l-t{sz(QPK4|"(ڼA5XG ??9.SnCb)HW(.Ijp~~mص>eM V/Ea{Yb7M3yr*CP ji' Z]o @_t\o5M@8 Or6 ,:݇l&Y4"sA;7H u-Z)lA_wf۲F*33j {@4o֬_d\bಚ.AϚBRc-a2Eɶ3 h$d,79|G[bCjT'^͋{?V.蚨sRT=xVF;n0j &S.\zuUw|40M5x)wӹ,m, 7TC'(dPCX}Tg*]a&)jڪNNPV2nE(2qHY^s:V171N˪%ۆ$"=E< Sz|8݄]!kV;fD_awQzaEr`9Dk)riN;^/A[x:9NMk-uyƌow2QMG4塼󢢁+Q@*HTDb;[XSA G<(W*ӿt w9s*%c;d]tܖiw v2)do.UܩA%XW7 S^is&pɍqZ(&s[Pdː<=+QbÞYH1t1r#+Tapg>NǢ9v5ԽD=>TtqqB^]69;%=a^?)}4.^Y1 & bF YcGF,\i:9Y0QqFLҐKkLE++D_?eCeE sB )mZ X'r,eA'zae-#|=uDD.`JG$Be\i@K9kU2` v[x;r>Gɝ?}Cϑ]LWwy(=є#߁-|%411K30e`ºz*H9f@:p:[iK0Q_[xau|ԌJ:_Je B_7?E\(?Ƭ^LuيlІ:pm}Kc>9jH7 s,Jc}}(qSzrŀ0~V]nr) "Y[3iRQD$qt>a_U[ͅ#quK_h~oP|' ?C4(1uXwԪOY@ gfED§AfXєVt6;52Cz_!ZXa$][cOI'֫|T4s-V9R:cy'毿fEapWu5˵Kbcyg:a<'!?U|kN!}z>gU6I[uLшU< rXꥱ#u߼%E칽:tLع떜ᝢZơ/lS)K3cpS)rs'\qdIMIb ۙBQGZu% Qs6 3Hڙk~2̚^FzEfd锉#K#.(ߧ E  Z8I-l1LVt5E-v֫geǡJi >?[  z!ZL_Q<;R v}$QLTn"$w=/71g j|CY [j5Yۙ\З;F t8;D^Co(%LJw@ ҖDD@A? mVJ&^?< 4aǢP|yE-JqLNvT}5Ͽp[6^Ȫu@EE| L# q Wh"ȐwA0.8#Ty#ì.ҔU1"o|#6yI3t7Vp!w+l4ԖEWu|劕Fm&jW.T! fsWGm juFZ6oMY5 r_3GTUԋ`=,8*z^>'ľ4n嘝7o0L`W>gHJ }ĉ[R`v!^F T^ Zc9Y1'Ƈgu)Woktd; .2C#]otқ֖FZ~~ ,C4jM?asboZg6 Ga$ghAz`#a܆9gtn`S2([nQStids$_yS ġFGGvJ9-sCo>/jm}킃p^s\LY?Πz Yu5oᛋ)<[iX^CgMV|/~}AÁE.؏@J~5ـf+}bdIFc'Cd'יęg]0|^7h]^t햴٘Ub/=[}[}adjߨUy+C{sơO4NSUcT/q Uj 6lˎ!~钩uhW:kNy?#HG:?`2K(5Dݨ~_1:s'2d_1w Ml:9&~>8cqހk4WM xu;˔ &{175ӳ$si|oyAFLe`mN+A^iԯ.yHu)żf]v2N^^.s8GiGi ̊ xɬBa[O:׸gJ 1W|1ia‚_%ȢS}4_ 4b ɳ/=Z(C'7?THF4pԶ"J?:MPPa(aMۤ/h;t3vGUCyswk] ɝYG=˶ #c'~We0k`+ gdr(/vt̪p FK8QYG]s 5OH@S;g0܈0N3 6 NOsXH'.hej )238HtJزsYTw!пxB {E9VVf s}>Φ@d4y &a7;89SOW?"λcAF 0@1TU(F[P.f?; o*GϪ5 0 }cZ Uu%0bpJh5sZAXx[i#1t(Y=|ҧBKvnŲp Nuf ?MyP3Bב 4EOb/h4Æ~BK.℀sxMg<+l%ex_G -XrځfQ/tQl/(Rȳ8}w4w[K =R8Q-%<=gQ6N=߿PR>aLKb3FT4m0tݐ zYRUR¬v/X _gO2{ߔ^@M62Z̐wh%'+{1Oyq|g F/w'J86> n8 QӖ ni l [pttϛ  :?nL*Π a ')5A_7;rӍ uћPY SA30TvxT,hJ ˻=t;~$98\D0¬D%rü](17LT${wL("-!)ҡYgݼog_# |)xCcֵn#K-l!h2T[Em-%rdKeO qEftw΋$Ʌrsϵ1#pN'8U AKYTBZsK&c߆8vNxѰB&`P=vY69T1cw^z⑟leMA@m-NI2$< o* !k LW֫=o#Wߓ>Q WPJVƠ@ߑtܿ‡fS "k~9A[%u%ؓcKzXTxB,9sw_MB7XW&{X2rݿö׉?()(Cz|6H؄c`=-9ٟy0vR  !~Bz=Pp7'()@ W*@aC)gWȝD2D)0$;*m,񝨶Ge?t,7j˪+H~4GkF ߸0>xcԓml:5.ZwJV?>!m\W.%381^xz`AnfҤlā?}T).#Õچ6TKb#PJ9u \$# fJZaah`q2|gmY6Q# 5qE!P@υVBlrvvk}łX$r絓xv@R[uȚ} O )Bo7wj}}\zJGE$H[`ⲩi-|`EUcѥ^{5!=x݋S{F ey1IPJ| F7*[D+O_^A%]dl@Hj~_ݹ1`3wi{7+)I;KK+L"Ls ǯSy7DLfI0XX($q#;Vj >+.:aIF)~Mvފ󿍱GW-<ѨrǶB&; (j4zٵ1uj Eۈ~ENvBbszZkm=q{49SvLm T*CrmL/,o{MMMG s Uf^v4`ƚn7['ŠUG4< /[<ɸÏ m=Ř̝ttY4Bq|Y Q?CSOwţay,&@|*4<Aϰ"rM֑hJ1!yskLhd*ix@ d_oCH5=-ݸ^: /!;NL^ ^%*$Jɼt Ȍ;hlqo~D+aK߇1fV>?›( !F6M};hp fm/)40HԘ 'La eD+,1Y4kW§BQr#moJϰ;jtk&ֶX h07P?ѾlU@?Pޑd:hSe:MDeɆAx5ۗA_`:5U$1z ,BUeE (zM,n* ר:"XrG'Y8Bnj`Q`mv;-ql,X/eݪHxLGLPIgo/KFך\~tAlԂnq4}*/#lR ?݃C6sBSJOG(EmV IOwCB V.-&'kx62b).suWrBd*QfW˵6Pp)]jrr2].NߓҤJpm=v2Tb"/P!T(5_Z f> ŻͲk!'=!! !0VԞLH/!KᦑZXlpڇ"\\3pZY/l>qыxSeC ͧZs%3a^J ({/\嫥&a௱m0tHNm. J??haSyEdh:Th$!r RcUIluH%YܤvLY򫐓0'* T#_a"GNP.w sl>KBw-.&1SLmϝnyƽҾPBqCߑ&B޻fv2x;#jYoYU_ s0ElOi%c6BOCʹƳXifW@'F&D\y" G /?zŮ0j;4 <b;}_9,<$vؖԃhTh]xXZo}DH\T'S\+FD D#tHGwJ9ʵ|Y;.2 IkK/Y3PaE['B:c$SMcum;ϻ%W0~Po ǵgS , ygzyٵ Aso ֐> 4A/^G&8dLlEhQ*KDX] O˼f)[k3ʾ(9+z5 W-`&WB{l05ɢ+b1GAH툚3:MHjd(jBڲ1D<κojDyq *Z~*>pzFA`=G .z~AOӓ8M(&t})N{n 'o7ӰVR35ѭIc'}po'xU\l7ۜ6*LhY]GD3+? @)D_;p )5$"tS)Go6q_>5n \?{nCuƞmwXoczGDl6ƒGX1_I/+}Y›>DP[G rƉq#/$n=s7@SƩUx׬w ڍsGCq\ '?Eg5}r_i0& E\IHTݷY6]ZQt;j׊D4MjBx$7o#'w4Ll^"?BfO)!|K6NkƩZْ(\ \d`ZWv7[-m1:%嶨՘us57W  sb'|;%P#y1?$ Cx B 7<`(P-?DkPyAkE8'4s'+'%([I*?ػiS *z?MLѝ)?eĤWe#~ƶ@^6hոoQ##U虗:D_⇱NF!o2'jٜXAXLX=ۮK\PfHԀGj*RJw&NzWX/,rKE4"3b2;Ʒ]$ÍpU̜<'?"4\p,kk4j c:ǾO\ Eh3HU屲bO,a[YAW+:! RD΄r%϶*nun,wzn"[X/ClgT=<^Ң[eg[Ccp"fu1^Nt=θNJ8|aXXu;G?-'7A$f1Ktp>LlU@ ; %lj"Y#" "u.}Z r(N[D? jH pH )"3Eַpyi\د ڊ(!]8ZTKhC/qI!vU=oOW .0U#a|ZhE.R( 9a3Y[WC -%=+y{7=u+0e#iYp{7jW-L;j:;@05'ʉSY<7l4c Q ='%%u1aN;iQ@@o==\c+~:i s_k eaE2d@`'DFj** 1Ln:ß -:3.,t*W)*C1ɍGaوHϲ5(YkEW K9r: PM#;8ݫˑVg.=i&~+~GKo}0#Z@ӂ8eHźIpm":N (x(oP~9֋DPjy h(O\Ag-^ref,. btL CCof-^AM?&F2uVн5"1{C}r_fh7E#+/Q.l4ŠϗaYV,il*ΗÂU`F-7ºWӉ>ʐey, 3fOlG &o^XRS*vܛ`bmT-hVgLpVn ƗNz޽8Wjb( Yv1Qu*y\~WKor~=4A;z h]JvYA?kCI-Qj9ȵC$5:0rwh0B{/P?/X|#Y߈3gVEHyى}GT)O]#I-ݜO,/\a(u=Լ%yFyǣ3QRع?li,H V (!$z}==`/^n;'h>֖Ǎ6k;`^(U>}D/|sƅdjOAÎv۔VʕH$[Ʀp2&Q`\o|Om/sstJRT=O|f4L#M tmsĦ"`(HyCIKq/'(TmEq#ؗ5Oy,?@C]Xvځ2'2G4}X71/[N,WWJ$Ph̿x=}ȑ)MD5$&KqJ486٦͆Ż [ޚΦqrφ&m(Pa9ao;3hFkGGrdJ[H8>qM 5N6  ߈%(j&P+/T)֐lBT_زJ鶲.)%h+_V9t@Ta4> ` 7e]_jōlmPIKyvюaR;Op7##-iH] `rۤ(4/2 ke{ˉ~~`g+ye Aք9&P̷pJa]l}A-b) TG{x.ap&V#)UY67G#i(6CbߌF/wV{M0@SKΗ꛰9=z 6gnkƠU*ꂤi\/s_kחʧkn*3zn1 #R ]\ZZ $-6{{=#3r7\*thZLAd㪀YJb7NCx@>Ӹr",]b:Ղ.+=-_\5UʥCvze$Bg)63#_N6G\S ;LxUصXfM=rN-e(;JdWt[dn2𹝺o yhՄTKb(P9,>B$q'첕%Fsa:KI52 SB;د{QSBxpx Mvj1ʜ/G}n]d7la.S{eKtxqỵ"-+YS$5م5@+xTЫ43mh^D98e!!>x0{R"{>jy_Dzc]P7M ؽ8TrWٺ[uɼLqgC+U|5"A%d%TBĪlPlh#&jaL @á{"]5vb !r֫4p7gD7=nd# ĵnܴrQC|&V{֏Ku%u[$`{(#tSFcU-И/>y6~>hICK:@eTKKIQo_}ɝ[#a,ųtMߏJ~WSL/ie+MY]iۧdKx_ bϿ Zm&J  \7l"Ts~~Uq8rMǖޞD|DwO~'lCyڠ,px}g憎<. \Uu򞦚oL +>24ͱ1ۮ)kdEꈕ%ZuF裢`| ]BsL.9|Ϫߗ“r]eq 'JgdcFvp@OM[$Ϋ *ϛSgWu; FaE.f֩9QPZĥ2عa̧M5ii鐆P֠:g6bE>6W 8ڿ;Z.vaؔEMnl~R/(}ɿN;ҫ26#h>%Qp +Za%n߻>I az$Hwu8*,u8g|S^P u'SqyZ MpьhD79f rWF8o΅ M5{!.7pC̴Jpv!s՝!=lH6Ez ]|om.ε9W"u~ W+,j34a=Z}"TuޗlhcG'i*h-̧v:HV$QUjEpyZ{P2`Eb쪝'fGABO7-_{b!x|qq z<ߚ4!ܭ+cWKk%m*2~},YGK[q0z8or5j0'XA~'1T&zVПR2&~&EtLB\R8ި F>q5R2R RbQ>1hVIQ8M;_ xӑ]/"ߘN&t\:5=~:-U 3sW0oO}P%~t lmjA`Obb?w4V6\4vb`r'pEs״S];Kr¡\ ߾jY~ @fd9r̆\F[QOK\%yqa8L[tޘvj [JwVC9&^07pid؞|r)hPčWYTlvMs+KK8{ܖiz^}"Sr%c1K:Dh;ْo*phz$QoJ;^ v]0][I>̢o+>rKl-LM*挙'`ֵ rSJR{0 @<8zyI, 0Z/b]$qE f厫O,pEt8LU4jY(ie5p48+/.n-oZ" ֹH`dX<[$|ϿTR$ /A{?(#X؁sLbu3"Q#` tB$?yf3trŚtU7٘gu(d#كW*ͤY㾉c_ey x=<VG-]M=J@^)B@=8"[`+_-K(c}5 Z)RÍ'HlF> ZP<" BX"c$zsmȴ!` 7Syq ɭ,`!8tK>`^ 0BiJuin*j'b ӡpPgqUaDs]DcӴ5~:P'.p,K6ٶ7U3~հ]iEۅkeaZ:&WDiU)T-,˷%l΍Es?pgp] =E`n|w=`%WKd13 _@p|q{7`oŕZ%خva'ڱss4{9@oN-w? uh/ wȕ=E$m3VP*P\,kMEϢMl,N5SH-еi1!pt.v;J=LeCڍoV#"^NYсK5^?36i+/O%i_E[Mq}JOL4kkc#cA4xXmYɮ,dV@n$ !u?RV 2eVzSUbELjD1PR.8#`DDqc%G-z[3?˵/b,5xqZY4Vl#Df3SDZH֥-S.;TP_ϝ SnCrBO1^DkK֠$4`;x<(odWe[޷XmŖeA;y8I>X_t z@yJ0Ʃk$Kr/s|tYxe2p^{´`r'K6+nl7+qL1ް9`X2>  /9=i%nE+u=lq; 5Q.NӃhM||8V*"2OBqR9M6dK:W)Ht,:/@6 -"(DPvD4|Oٴ{?|jv ޤ9!j5Aw gtz(!Bh+ƗO}wwub_PEE~e+YGuAߩKVi_T2eP`ӇbԷ3NH q8] #xːK+,4b(d{h09G.t ݻ\#u\\~}[LDIe{)ן;6RBwd= ~d rdzWQj g姈[3pog S'I$xOl;\gh t`ofYiVeZDaR7aaaR?EYFE2;gJCC+3؃AAb7+Ʉ8d Y LzWeKG/O^ve?qafo?ЂL'ʡ;/PT!`#- qͪ|L9uqbT2HJZiXQL %$A:*8};\>V0qUe py1Iج @>{+dӋM5oBߘtn<-%)I)X(,<gL~<҆1~ #tFWcoWbEtN>KMBf)R[U$v\5tﺔ8  %y1+*GX'!#9ow <9 Z&? Cز%R\APч^Spi}+qAd+p Hc|OX8{Y+@$}ٮ\;`m<ऒAXf~n/㕼ћYr|*yU&b0"&vy;!6hli G4uqL5bY㞓 x! `~8ӖG_{+Ec%>PA(JNg='Xo<}lP+.|O'!H ?!jeqU?gtV\r{?^•l"7MC4 <=XB~foZd S&J;aTK_&PG`&rPkW]6#Fz>8Z_^/L#eyx/=q2n -{D0sG]C2?l Ms Z< ,)j> X}(03/A.90|F|%A@xZc!9(*{_ڗ];NsiLWd$fTF=ľpL"eMoVqr؎gPA"CL>HKTEj'C |*햃U#Z+))W;&bIњBi80|5i S0Mf Lxrq7Axi`Y]K%܏2H BtNaJ{Tn+7 #+b X(wH5o5a!P$y4]MBsXP*yZ,W3._e4X\k#x&Ŧ >myҽjᴍΝm6 O?n١'Wnf5Ŝp N{+Y z T^NrLK-|㍗Π[o Ӭo99`ٲ" ],}ܵ]|2̞ #UH!Qm\=„;ofHB>ZK"7w(" < ٗO 3G M]te@^#Cml Z֤Qܘ**"| 50ӷV) I 3\[Z ؤAr/̓|.>ZקB5'=Ϗ Ӫz8L N#i%:Ҁ_EL`n+.wҠSr&׊hArEnJU|hytpM<̘]hcɷoO,+\z!@HE˪a7R9/p8N=蓹IGN '8kU(:ډi̥Ӄ~*ެgU4zǵT @/ɼoxa`{gx#Ywl= ֝(@z${|hgm^b͐KjS[?}JȑdLw]ɮ }GiKAB^D͒zxd*v߻bJJPΤ$.p[vaCybe54(XG ,j<@O:QsS]@_xf5JzDD8~N`m5Q po!ϜKcfGJ~dsPie $~$B{0}ߢe>%V.]TS3K.`Yɝ)l0+zp[%o-Q}To tj,)/t!?, :&©^{*p^,!ƺ7wٶ8a5p S=:> 4ȃ5[3"NLFbh: C>a [z` sgit̀S<"XhHS_NE>M4+?|YGCLAR@+}Nw.g9O0r7v:AcWf+>[M);a ABJ,ȍ[K6yw68ZkŇ,DD4.A*H㿏!1#*ei*n:s?۷dԭzxA2FtkM ǩ(`DKL7:Kz$>̊wZSam@!13:<Lټ#[_1=xYL@=z7$P[)X% 6!x3` Y&A`kީEM~M-1۶>\?Ps^l\*ru"^.q-;61fه](>"B3 9}Qbx(E zGU#T<˂#}~sg5~ DX|yCE5@w[m~Ř{ Jd  :򿲥V#F$Eݘ@O82Z^Ћ3Ӗfv4Qfh.PO&i0Ej9<1RltCTkخUw۪,N]LsI^o :сs*v@ Rn͔7DF:d[GH+itRSc[<\۹d0/TʃۤwnK=.N;/A6kO FV) 衠.a ȨVE6 қWqBŬo" ?8\4|C9K@-tBꬭW)2mjtcH_^4^TiD?Dq*BU' ~崲ő"x(xf_5z/[} t񎗞 G:zy-)<`oVe7N Az1 /VK!8(J:.~ >pt h^#@wFpr&8>lц7*mӍ"?,O&Fhvsةőҽky?-|p,(f&+f :etu**beК%F@5DŽgoGKO|'Ë Q4as|,y^ÈT -#;$g xҹ Ӟ6BPٲVr&@=J%]+Y+D~B]~k~nDz78⊳[OcTm c6rA=57&!5ֆޕx^s,2*;R]:=A-^8n/"BEOtDڪ2%d`뽃UQZ׻#KT-]V+dIIգoWxHZELBM0j߆tGmNԬKȐo6qp3o҅$C#9CjA 9 %=7Nq͡6k~ (8[ ٶ;X ne7]Ϭ0ܹݟuZ.G;hX*;Q[l>WAB^VﭚFr? h|-H♭QCPJ#S&u1&`U_Kʹc?kr-Z5GB6b.^aSO <MiFjZ_4?' ~@*vѧQM&A$M&dA{EDͲK}vTϥ8~,-q~U}XpabQfkPT.]pp~0gyuY4 ׈ذX1rbA!/# (gגQMF~_t`H1DV}sѱ;ZWP=4Oڻɚ-:| sN=jfŁeZm yuP:K?@DEC+l+ggdĮۏI420N`XJaȘ:`VЪ`l?;|c]冸%mݷM/gY۝# _slAble&wNůz{5( 1c ZcG;r,UAͽ=,G:duRՒ_Y5=F8s|OA>d6-Udcƒ\>:2T0E#i<ޱ7{vDҭaۚFҁt,4`S+WE6욣+ۦ#&L<$\zBЙj˸ 2'LB:d!j'MΉz(/A8|A1oE~ǿ2\~VP+iD:M>5Hc$[IM״ǭgT96 > !W<=H$;8>%wk.ze*OsW%d+_C>5@9ʤ !mxM< 0o7k-ȱ[ celgsY}%gGF/4}B m L:)BZ=/ƒXc"bQ" B|%䡥}=ձJ-ԣ3rʨe9`Lupꘁ B~rCu}GS i>uTcԻ04ћ=htsx'ߌ<ӵE(;xKF&Ȅ})j&֧0^},I"E}k~D]gN]q*VqI( &uj׍.:".\ٲs.puNIQ 'G)ǼdM2'Yտ|MEƨ?`CN~F֞~U{I?#a(#&?z@H.1ME(0=HمEioo P8y+-Ư93 4b>(B8~$.V5>2ԡWK{H߀/ld4` /}R ig¨AG1ȹfܾk%I3Ʃ ?3Y~5'9{Q)X ᄴ)%L?&܅ɿ%16lԛ$^Gs9U(GPQ Ѫ2ؙ,tBB'(VnFˠۋRMMX%PgK /W0?s-yԫm+&*X?z2jxygzC$[2@%5r*ћvA +f~)?$W {tUݚF l>zM'zFYgT[ )%0q eO5hve̠7 :a)AͨZ!@8wvx@iܽM_k?ĝKDR=сyG;> 3`I;8 TP'kaO>RJk1~7gG-tяg4N vXhFTτcO L^:GL$&z;!]喘&u"c 9*W}9K yX]Hm:wȑ CG,1`JKdZ!' -p'sV9 "O>hڹ!5پȢA\+nXYCVȢoNԱ my|aX7 ozr&ȭ #NkR)o2 F$vRX:׈ _|kKwLYFXa Ma=weGQ<PF;?#|*NXygJZ0W߭CXcxP7@ lDŊ&KQsWv^1~3zj^}Xq1ӗKGE8]GQV_v/-MLKr3҉\"' NRIpAu,> ~DriYO6j^>]ԆԀ(XsC.e=c4+Kr{JXfP w+5Y*=`7LSٱS)ńDƵ[PxW+1`tD]R^,UJ@'deIj s#AE4ʽn:Š Xq=KM,=\v8~V=_)/ۅx<x#Z'0pUTV}QFgl&G9 C۰ Tu(Tʙ̈ڽwU4\R%u­=qI!EJ ~` = P|k/_ePݩ/J+149:=VF1V+˕PTj$`_S Բ4uHolZ2zpF7 S /Vm=h Ɨͧ;2b(6"XS&l*@P䤓 vF +rS /He:O e);(+qa X  Ar ĨCATv9Tξy?K|nJ;;TjoetK."yS|\DҤ)^q:QG5s~vQS3J Bn+m7-Ϻy#Zǽcܜ3~@?!RDrIAо Î';/)Sd8̻F)/ EhM[Jċ+Cs$߰.^e*+T_6SӖp)Xh?*hL8+:qو`İ?s2c Z-g+ T Q,ly31ΐW·R=%aDC۞kh\ĊQQ=h >x{blTrae_vӾv-c]-6,>ous477{}e` LĬ1ڨv-$WVU{8n9*W) _3濫;PlW6Y`( 5ZP2|-gbzlkuD\*L'/+&az<66{*T։4qNrY7lk[F`w!4ϐd+:c( .9qKi.sNZ5p.o'k:GJ]} W^(])rRONS]EE4GvCS-DE$"tQ3T k/%Fմ4I`ׅu~,)0s^=,UPT[w9m~ הFz\/$Җ 0$yĺyԈw# r/X+X4Ďzyi(mP}\/#Jg @V|u .T1mId3[3Be+#,lpA>l")OJQ }Y&1NPU*j<\pDz`a-TzӺ:qԎD{Ķ0%k_kkWy}ڤz 4[=CKAk1BpxWPdL8.~iKy p'I(BnO]( Mʻ8BG'n~AO,HŲGjPUVXrptsC$iAYDԜ߯R,6;ka)~\d,Y+^͗Q} :g9xgsNBn3h$F.Șނ?ĻK',ޒ=tqǞ(= ԔXO:wbʇk]ƹ `n/ag/q[e[MY>OF- ٦gg-H7zX`f2,}ʘo y5r?ZTA}$|᠝uf SmGZZ:]3@xrťD,- K֗&ϭ(X^n稌y",_Vl )`oUC6\'%[q]Ab;JN$PJjM JCչ C\Kn$b#[LHU?ލor߷}n2is-x?Lp41`55#EaV_) -Н㈹3Q吏ʥԎR*M"{ $t;HٕA@+/7SgxH:n S[7jlV uϖ|~Jꖾ1R@0Hx5/r~F9(Yh+die>kq(.y;VXk.^Ln!8Ҿ6D5(ڡkl*c?xQ(sLX~nū*tik~*QIr+9"SKpO 6x2>J-{K==ک~RXfn4'ڵOuA11?ǟ d4BOP]WE|mWaOQH|> a=y ҫHB5< NL3fԾ^v=RS$#k%踧 ,`>&Eս%G,98, wbg 4I{ шpwb?.0 9suCatѻH I Ł;ݝ٢\Fa~O\ue}gr5sb=%C7t,\ҊW AFL *Ȣ@w.-EA C)BPؖHzȓqP~'nH5E'L`P%~y/qmh޺ݨA8X])MqH tTjPNY҅/sQk߈FwjiJxp"3ЭjVw$jELehe~Ҋ5. #ZgǨe GF*m aFH͑zw \@OGN)e7}-**zzǶZn:X#Ne[.i^>vgj&Daa^pJnhPYxԬyw<4oBC(E^+M(0x̃Fqܥ>He?\V%Eoݪك/Q9.ru]WD>}["~T,^,n] I}7=?f'-sAI|~0[R0P+&ZKO{!hmi_ apVնXoZ_DʤH'lB%˝p7"UO5sQR@uWe/hv:o Tf 2&mҔ ȵ˙ ˔,e&sH&xF 3s)΅@*ߠ,'GT&4/tx2b"FƮ1)cN Wd/BNtm*Y$<Ǝ1\CK4@\zrGoxuKft~^JI/߄1$qXݴP xXoY M?s&z4#Y뭩bm*k[`]59B+U8`. ƴuS ;α=Ǭ#䡗((/D]u Ј jZ"LuQMRf.?Bo#ϘWkzg(L"F#' 4O29nwLB76yS^Y1([) fWptYr /HsG(umJ& V 7^̬ <.l9vϔE~$x{>,_v3BYdTx}>/oM)ԇCm}ى 0iZY}-'u֦ ]]4JEyY󎭔Ѫ rkSQ %[g ֙bWS>_|M3E)lR+ż9{?snE߈LY]Jf B(+_hvJ8#tO*şS-y0R/-B+o[/"˙"]ku9|^P$& .i)IŤ|l-~TM,`1RZ0g` w\Q}d|;,C+lں1I/KHkD#߿?#L $?aSpSl@׭c9^}@~ '22"8mv~o]Y`IpгVzn>KLsIP 6Ueg+En*7?' C(}yBeԀ& µWdII1(0J v^ي&3GޢQN|KY9%J( םXOIZ-V\cɠ2*4 BRU3A{(}Mh82fEȂxU 3J׫㾨|Yٱ^^ O6ܽkߍJ`D?X!iIE8T*W)~nvH""W(E{bR`_.bFo&b@hA$Y+GX25`g>FRqT8Q[c^.۹T4B<p6.Q t asΓڒדy@^41t\AlѐհSQ~:r4&M uJo y YhHgqD*}wzpo&pr΄5 ܻ<7*,^ <Ńv&Q.jleR?0KA鑘ZXsVwNT(svIrV4?rRFi .1ʰ+kwRj%f Ot 3&<p7WʴLJ|nOR*c=uXeK@}we>Ojd;Eq tK@Wd]%qPU>"x`8FyBz1u6njn0VYFVP{/ⷃ&eEkNd>?aN?G{)ydi_bˇci\(jJy%FɌݶEnee5 " cCd]ȪC+|* !F͵0HȯNXe&]C` *+&ȗ8Ee?LYyUغF1,#F80lw+ !Tg%לW^E";PZ N`۞^Rj_b*ׅ[¼(Cۡ.cA <X)oRU_CHv'욢L)R/mxآ"T8$/R4uOStc\[kRehhV V8ȉ!c%Ib?;}G};YyԎaD16)e+x,ݧtFGL3}<&)w+gkff>d5N+Kj #i |Q۵'Z`IY1$R Xp!2@[߻0̏i ekHi&݆|%&ɫ~F햙L`88wlh֤ofN|wHO nӣZ.}'0x3B8w9^mdr 6Z5Xo'P>Na2:)j4]p}4 Һ^^a@87+m% \k(kS1$c:{IndD#VzQVxs2f`‚sC2I۴FuL#x!FHZq=V~,2􈡊:ѿ+d[,s?ai)?N13s)a~^fC䱢0!'y]ѕ9O=}}hUu;~3j1Ӛi@Pm|Z!zsBJ縷< z鰊Y_]iά_#]WϷiHG L9l~ҨV%Rv͎ x'Z-|0pi-_(2O>#7=\CxQq]eOͶ _}{|`hչ,lhXMzs'>M˼r+p]3,T>B8T:OLq\6PU2/ .ڱrCKsr7<>2O94Vǿ0e"s9⚜j} I7FfOӅ4bpm`·i0c)4axvm £:k/h_r7l.휵[M62D ^f427u4ļ.`q񽤴L̢86AO$˃4wwk*ž0_o;zc,j1 WD\ {j__?Fa<]kNG (jhCl ,((mQ%T{Y;kzY!Wz:ӊN/rwn(E/\Wb$0uhRQAlclcr8ŨLU G'̈{? :f)bEMB/@pְc1S/^B}q|hjUsvS߸Vf 0WELwR?-*sC4/VpcW7$d=I\ڻ1Ɛ<ΆPH-?S%$*zC3wḪkƶR[j&<_Dhߋ)/l[JBScd-lJQ rUD2:J_*îizz iHyn3@'st/ 3ieAͲjS񲡏OCҼ%ĥЈh[$O> fG's O-4aen+ kD8٫dUG;.îڕPAVx)4O uG|lE֒3׬-M{H1PHJ3os%M&:68d4!f-vy@#MHteu_%6ed]lZMyb<.$ Vذڽ]!q_&{]葷ޱqIxpЗ Y{ (0ӣi NN ΂A'M__Ӝ}I|g* Z5 6)0s2%?9>mMNQ2 SNnED;; NqB\xFw?*` #cTSO ה0j*@s:$t+[o] ^}"rjxqT2W]rg-BZ't' !Tma ѥ |j΅Yxv2B^^Mk2Κḵ-d(IiF2#$ÙlՐjR$ fQj38єlxT P%\)wjHi5I*zCa C׬\g-n'ozo!ӏvz 8G rC(r6R51峍<*1,?Yo7҃"&,Γڲtm~24bT9.) ܶwMQz9N陥0r&Ϗ /[(1Ib䎚sCn7f;A<s1awWOTy 4j7|tgfI ~\#>'{qB&mFW) 公BtwFeng@+ICBй |KSS˝YN_?w0w0eᆖ}eвܖp4hyq)u6.EЕqς ~ ~9pk33'[XR " Cpuc4ә6y]Ru֊{8N0ol!R97gG UM]щCRQ! V̧IKyjCy;^lyRtaMu,јSUx%+ޒt4~jCHW=@nUX Daǘs;X;!o$. I;_ݵ1XaF@+1[PSVB!p", VԾa.ײo$WP3lJ{[''}!Lq$~Y߂q@,F̕R[낟wa6nԽ,֐_T[ڷ\I(Iuw*#oVG_ dy/2V)9*\;wZlSAAlhs&婚h^rL=Ru8 Z;~ҁCX\ͷ(lzݫ=ٖvfq|U=b =H w8Gr:&.V\JWC`nYؤOUF2wpNCxޚ(Q-'eu Q(o ^]ϻL ~J6U~ IzFUڡ\۹ ffl -}8EiC=`^O__ E8ha5*sd_$zL"揼=+mڡ <3޹TDu<_oUɒ>5(ug%Є" @pBM#hG Og7;+ ځ !jEfJ8U\BTѶ< @kvGN>\/gYBn]?nMy7k]:Ϛu@0φ#N>_T^Z[)t`sM9M0ˠɓZ#C;jU\6^E$sԄ%-;:  \.0M!*tK'+fy@a>ϙ2rjdys<Ǻ6E Io})1s٪_s#K 5OUD|?]F*~iw Co`p3qߺnc=c!MJ\:;߰)=6ȚC+VzKNv r1:8X=hX lx-;Lpc.uj(,t\+9-XȤϖ.2m="]g t{4hWk &{iH/41˹jӏ+2,-_GKXlG15ˆ9?/}:̚j,YO`f1j/qʅwT8 Psuihero;g<Fb zla82^.R/aNo>TWa]c$o KV|؇-}L?! 8ݣP7C:u#z`x;v@{\!/p'uż[46oPxKƞ*A%>޺L*P- ոܴ0% F&,ye/R^ M''wj"j pczmjsنb,+_`Q{4|{[:9pr纃oN2.Lq}nH`q5c<5 @ÚU`\~W| */wPGc| s`GW/?!|  Qf8ʓu|^5E;S&' WkoX5ؙJk S̵bt y5ANֶͅÄM64y?d 9\;lkݪq!=ϼmQlgKu .; .deKoZBTRo\KpQd!L]c[UݪvHf~gjEZ^Ѝ6Bsi@W˱{88`k&y[u+GZihޟ'np͊(] P7P-//hpucMzJ~K jpv {2KBٷ5WNDt-v@C+[d9爇 GU ;{f~*lޞ{<˺ʁ^ FN+yCsNA+M/ɛa#m KXހNJ40;b_8;y>9d\@hм#|@xȤsԭj&[ŵm9xWl3~Gƛ46zȵKAD(Q6'5WyXuWLyG\ZHB$ ˽'@\Fj\IoLY] OIy8y9՚2w?,ʿ>mNT0ޠ; ч'/ b*8j5 +!?4)3[['(0oLҐ=HZs}hv]qM\1;w8g B'³I?|w:-z q^հ$)$Kt Ei3<V%mmv{HU YFvq { vs`ӱca0}}ըNCVӨ ֽ_o $ 5w2)XQ} GK у,a6!JdOg}gu!Ы#KJ>U3S?;2XL- "u`eRك"Bh8Oy+h#9עEpM`zM XO'ou^-sF#r $v^Q>9Ӽ@Z*]5BBο|)"Y;  ܺ*MPG6Ҷ'#^|Ɍ9H*_y GM mzlAj7JDP-D(Vd{8Ŵa6O utFK+ s~ 0epVIբje&Da!}Ha@"3(JBchpk?8m^ څtYLG_܆uw$H]Nǰ'NeԽHH6'1Ti)G 'qA ͻK_ =={Fǧ Kvc9x5Pе.P )':v_+6\}GͮU~~1$PRHWEQߥ }`m#5KvQոGhkE[A>}{_<[m@/B:ڦ7IIA֡.czmvv&'yf>a c+ r!,+B׆[r('ߥ~R0RnL̵*?SGqX!ovh/F{܅:cKvc[| &_A9cBKP&5%|q&}a4T䰶ǬZ{y.9E|b]ʇ nHudo)NϬyz0PPʼn{ []xz*tnN[DUjD :h40) %G ]O=:1ϲ8JF|T"T|'R,ԓfR}Ѹx?< )+4Eƹٖ|fHw2l"L3 o$0w,ob֚B [uUj1F4QyxF>HA58wUr[@E 3N;5e\vt,2{cNĚ}&zC'JI`bUq QNnҶXSߦ;Ag?3aeYe\DUaC=7ϏucrD|BjZA 2R^Y l]f_V| yF<"[O&= bhd&[bn0UQHRnO0b 0htkTyG8ˬ&}v5BX[!FQ@Kr63?`u(MM{7 ‰ȏ|bz2D-0tw'Z  Ƥ0 :(Ĉd %DG.V:P?qR SCK &;!FO1_NEiy<6/S\m49p aWl@/F \Tݜ&rhBQ>%(P Zh+0 w Gry qǢh2rFA˻L#4D\Rb`2oaƕhM%w3ab=[/xƚgH{մ%MZ@l׈ΫAEk>Ӌ9uͅ?6ʾoU՛% ơӧ/zoMa=H("r+w%I+RX^0XdfEN ܪ `w[cƫ+mE#,F}g#ĀX+2ɨhK/ >*FWX! jF*N"0- PXv3!3@*go:a<-,;TU;"dQm,| 岜C=}xGKk0'ȵ[ٚtl4(yG94~7{ßdqwR@`{7tU)6`.z*8;-GdPE"?ʘƈxfv̐yh Z}^?\ O.yN8`VA{ ФnI{"P"n"n`H.,SIڵ OdWw7lŚES(ap;G~C bJ̸b4@ k q$aBy|rAj:b C ~E)i΢ 2`RiSߪ AجH)W?J/+8Xi6kD1w݇#wg@(P(j#y&P `QZ{uUI AXΛ5v#&%f#me\c   <XZ#`x/߳au~EdH6KL=Q;^!޽-yЏi.ӆGPjc=5`S_ig]AO fCn `KG΢ȕ۶\ j5:{yEr7|."Tx# 1X^@7ىn_ڋqƯNBXS=Bٰ ";L ]ʮ6~la=9eǴD)f8)kO櫎Ħ*'}xG:I($_;.(Mڷfւ aST'Sf`1DNiz(s݄`^q E8C:=8/?dP 2zdirCk Q#ymU Ml .jM+̃c٣B!n2Y Ϊ<(KO |F]^g\T4t U\Zp*F OY6 ]&T_GZu7+,9c7kTKwGp@?(|1xeaDx3U+rZ)1 ljO>*UC7zI]b iVp7~U#r-z0Bv."%y)0 sgrQ[j Z M#lG:Zi_;z\<k%`ٕ ]U;6Ze1 -1h8V8i+ }5C_G ei#oEIoy7 =?rS}y̲/1xo+ Qm.]Yb|F%G!Ҳ"OlH\.,"6ͫqRLAbd;rXXU)u#yPN::t`s^7[DlRU[J=h8Qw :/ƣiqH>hWt0V /,eƦ}jLzhx.\6dAU_j#kǠb_I)@d60EIzWIl`f:&,GƒUyEˍCA]6JyU4h LA[5(* )5Eh1Im;d!yqT|ps6"3 *!S=Y ,"*9~+ +wP<82y?Οg-}i+GFS`mvz]ibIdXmMvHH7bo]FR{tLye7QEI=sujŕIqV*z2ev%o\׌g>mȎ W 1\^AL]@'4$L0ܚi-aΩ"'vq-kO$ZIֲ'oBT)1SԷᡇ jѫSb,}(m13<%\k䒣&u3$g;%vLhZ? I#qXAZ~(j-?s"ͩV6_G63hy4Ož&n = A~‹cfDϦ uNij5 CV[Zw-i)I}pNt܇^w..@!*ki>Ɛ"9qs44WhP-q`z[t[ ,GzD6:045^a&M<$Z@Vciɰ51Jv1w6 oǵ>R#"THOmYz|Qɏ #(gW D|_oX^pwTH:`6 #⪊F&oS & ^ZG2Dd;GB#/*"w* -oDŽI VU (,EE^La R=QL@CUYpDN~Fq,4N!/nٖPJ6e6,ȟퟮD~b4?58֚PST:%Z(RJBJpDtWh[?kgsw DŽW{g9 J"ZeX(cV6W_L"t*A~? G3fu38RկE, :+| TN{c;Y 3h *wd >_-?}"ñ|4[IU'ƾu´}ȅdYڡƱ8`' ùu1!f`s ߸ђ` Lq|,@5GD ]#Y0G*;''s=ݪV0vjb[]NfW0"dqc z=le~ SIg8)|<`eiqc M~&`]ldl+ٝ."sTr##b3E)niS4 y9[Qu{xW( ʨ&eKf[o@]O[7Nc<٬Ȗ!Mpm|a$k`6[p 3L:sS=)iDwGA6ekCY-=?J LHs ;ptPr,@-qI*z('!#Sg6;= @F~c7wzJTeO.=vڍEB"!d'!+rpa!e-.XYXߖ>x?,|PF{!T@Zx ɵe620tx_Y)$̧Nt'Ss -Lp1NЄU1YnI`dy, BDNR*WugQ9{~X/KVPVOX8?ZweꆀCsLQyC0?5of ^Aj+tkWSE I_Qڡ$⣰*7 QS?-T:`cIu7! %fg^RΦ=Qe#R(E-SP𮕼)+!(L}iNԒq0kMF"L"I`=yT`vj7#a| =%.EO+8)*-Ri*ޗk쇑Mz)s=->n?{q(2@ӄJ k#| SOmfcJ"?V?Kyvh=@xǿQ FV+8t2qqE`nc(YS0aIbmzLr9:?LO8{|m{o&lTM"\DC!RG&+"%+vKfrFx>)ރ`w F!?^ Lo\ ?Kh,oᬫX@7C6,Zstk`X'5"`)HeۅoI 2|pgus(EQJƫHn)Gg,I`#F^TKNIMOwSpH q xrR: 4g5Jgڛv6uqfCJi$HkܮQN$w5\ WHN/⁚g??oEKTi]= l|^ 6͔eVz%?zX8qe>i#.[QjV;v=7c# PGĵ2V҈vDe !c[n.<@grJ zo~HH T4EأBl9}s&E|qH]Fh|r6pLDcʅ\'''- M <9g/9O!dBtV 3sIggZng^q5OyXZiܦlwgX}D,}쎩ւ)aBl)% &c=!>nRϝ3%Yk=xF&4RPL/~Aꕍ =ݣN >ߢ<](\rw6Y%T*KB]oL2p4<6-8bq! }ErRrQ5vG}slWC%Dl72 Ҩ~M 7\2ƭg4|Fjⱻ}"x㧴5U3S1 Z֥UmPuo](7Jwn\J‹m+ {N( `9_"~v)_~ FHS'). &ЀÂ"k= wK0!2@w$k.p#7廔ϛ~G nsq@VD,?3CxӡCCGt7a*\(5! wrQ|p1+{9) ЗQ$E&jsHb '$oJGK2[͸mjT(zX-2a JlPHGM%Dh_d#tnZd]LtK1DE̿\!yvdKQSc8EjVQ`777iM?pї;`Q"8%\#ŻD1M~qLڙ (K^-HjlZ"*>arG3C`N~O%5/Y>+2hxh"Z +g8Wv&*;*|תi{$ 7aD>{F6gU.OPxS_iyJ1 f>;|@":Apb(*;ym 4Lꐾ|q{Cfs~;>?bIJ0VB^j MD ] }MIaxNaߋYAM ]@څtG’^ʗ{.һ Pw _w4N~;-%&IYTD]N9A eyk^xWL ec>sJd%':dDt|ׇŀSU5*7Ů6.A!8(2M1>1!άAM<j9#{-ɩ3JS5q56^1:YPOm_ d.Jz E;GjN_jK`i@hlu8_$)#eC9i?fcK_((;R/Q˫s=ae:-iXW-zU9Ƌ5Ril R,+Ewl#N'-Ad;#r{,= B^C  1Uå uy@+V+%+(qq ">ћY*~GV#^6q+7y8Q$Fx5ԼsXe9w`BqD}5i~_d5׺X8tU(/iՂ2y@V,Ow%TZr#b(f|2kQ& ?j%`mi G݉ UY8S;Qj"02o+aϒ"|5y?>_喨*+zyoNv*SLM:3$8Uw%ܳ' ѱF@[w&;r _>8r>BD) 8檴gaDDԫzbG4AAT Tۆ=RjxCMZOԅ j 90Bf2FQiM1ΡkƢA"XLY?7 oYGtE@V*RH$Y5i!6'@58-WEM`3,4&8MUv5!a?N&O`|ӝ ĠNcg ¿ꊥK ;eQSwzΛ **]0E34CjLA8%3B|jlh Vj7HݠDFyWn1ڌֈ"UczPZQfjJb* Gdx'*w&l)fYgnoh[l MϷ)'^Z쑄eĕ=ʸ{ӀF+]IBT؊R̎׋?%<vH?U?S-bCh?yxaSL\[7DŽIKSh5J>pv q"?lC~eg,$YzGK0҄6RbJ E*]yq<*!yyݻpxڊ\vwPpesJ5kĉb?%B,6J|dR:wV/ {_RTW7jQ퇄8`dw}~-md5R xn)O'Vajg4mwQ/oyu!tj Q?m_RVuvW/TkꁣE5%KVn.2-ZXbF?Vwuz^^|fyo~3'z\^#2#[' U>\YxXW5m2c3;&=Nj ^'2g UdkZ<)F=cF+BeX;/`5}1?!ܠe-ۦ_@!{.g :j,:5HV)φl[$3E Mܰ(5ym:Ôux^{طω5Z&=02kMnogַ%X΅ Qu1+jB͐qe̵^J<{.@DkzAg8-]Mj)""ìa7J[{.fRe P>`C+zuD~T0BI!K>(GcH3Q7)͗.Ouffʷr˼K vk-eeR߿fXGs՛Ut9G19rYwYaL#m9{$I?Șzq>ѓn|],~/Mܮ!U$1 :+AZ"G'fNy)ܤՂ pr9DZ]xt`b9f0BTg]LSf[+Wʗ9-[4usN6:cM˙2b؟o => T ځE?oMF :yօ6A> fUHT#?wY黷8/`tsAW(#&ǙTUGA~!ɳ9p; }Qd:1 מ"D{9E+NȍZHDiNDKQ9pu~Uu4&6IgAS/ʂ{Z>/CCg9* hpIUs2$U1DmjfBązYH,ĺĎvccc80/0~oE/^aMC}Vv^Ln~0p2pэ-IE kTt0e!EH Movy@=:9L$~_#ݓ%'2U=K9y#1r3Lb5+sxMaPd?^46ז 77ڄ餴ESd;=;JP?؉1Q蚞'NؖK3 C1^Wj%heUacpEGN>LА//+)/@#sO6BpXy˟ϑM׭S%VűD7d?I`b֋=Q 71c^)w>lZb-_#6OQJ?|EʔCR_B{ alg!f0|, ${]{hxHif}?5F OW̍EROak@ry6L>./S+]jzo/Et"2bDrUiW" W E Xf*jD78u̪7_BlIma/6XDe&!w*h?q21+D}5cq'3tJ!ob/d0Wnpw+3~.Oͮj"~?w?McЁj9[ԺSycS;nk|Џa 3f L1DA9[8/nn'xꙛOEF޹:9̵ ^WU;z <%lr-6K 0Dqlo\daZvs'WѨuHu h?5]Ll@hCґDo_,B& qr;yDynj  4BjۜUU [9repMAp>W![F"*|=62"<[U\:#H[j1vG{+9UHFs<B< Ǩ 0z\ia;O[$sBtYZ&tj;\Ϋ5T4ӎ\㻂!a]Y0Kuk⿬q ZHp@GO>Tz!^rI.b)'Jdq5Tb" Aw5i G*[p*;W*pl?H!Jt_&p9>qΈNkQ0r#MjD0S "J/C~xGŵN=-xw'/m)|aģC[dК@ea t&v D4eZ?!f@5_^pʪ$,a)W%fЛ B:lZcZbGO,+C0hV: $=Rp)! j[4x(.ÜAy kM_vol;U^X(XL2`g/5rFf~TKS;}Dz}P2ng"WW-\d`$}[q6Y+ꙉT^kZ;qW&w/7.5W&Iby hAdzɽ[ԉӅ2wfUƈu.:S_͍ Ww-C鄓ovHWXb([\b2bc(pDkuIy48?ity  5mP2τD =8.qER"[ߋeO'7u c*nԗ@$JtaPI>OCN'GĚIdē5H]tQCitjiwONDڪn'cu 敶yynPyߟ~wW[%[DIRuX;VLGLEcH <2M[\. YY#RSP'Y"DdBV*@ Py8nL=󌵡/e+65' T<g dx>|% `""sӣEQbPy3Wnd3@ȁ`N~ k {Jel[6wUn#-V *5\ yqym>x.3-GD#&p#Ν_تH[A$< ,fhNk!ctLXĮ@$7|b7Fۣ`~ޢML*E"$.(r{k'&UT$0krN5X C^srQ$}!>yHUa'xة11~nmZh-#vvD̴|( m>o\~u"&mJR ~0Foo~b+{NL 5R~f}Y$Qz1Z ~?ndJ1"̈"R908_HޓW.u#==LoSIN/"2RqaXL][\TsAuI[IRGky+rp_JU^<ܺªxjMlү1\p}ÿ~ݢQ, H//y.){zVւs1kЈ+>0G%v+AYv1=MTsz;v~51 CdTFԜ](mr)^.*Zسp)U8@!K'C2Aw_&Aޓ"s,Qm59?;rauc^")O9w9uae@B|4LK=9I7khkÔ٣z)l7;5aZ k<;8,fmڥGފ@סײ5oR活Oヤj%ROdHQ ɼqFQNf;룏 ʷr…\a\͚/^+WVoYF|Ҳa(h lꝕ9?(B2 J6 V(t"$D#ȷ`w !zG!Pn:@vD]RNuԸF6~5ճ$d5/Xd]*_er;xkڌ6H껁Qвum6}N|}$]baJR*-$6  ouU $4Y1hLR I҅q\\wC7X7 }p^j6IʅSi @P):Ȏ{zhg vn4SF)?#]Z1fMHl(i>&Y ǭr;!$Qw@$fw qWS4 w ɃeIf n%/gJ!̦ @  ؒ{-0b3%riZ%]2l+2dX Ѓ71;{VvhsnC eS^[X}oE&/@Z'?c`H5dij"Jיx=9? ߭#kH CYؾ5C&w,hxxXxLdE,EV%yOa]UMzlCI"te+E]qS`wW2o#|vDWo#4_o<t[w"ϯ;nɛkГT6n"dƑͧ{n2lKeC_ ְC@` 1ǜDaLN0ciJuQFiƈ[ɩHQf0/vA.J[".GRK osG፵_vA*ƿ_ӎ+(S3ߣ ͯ0][a1MPR3b(G%r7Ӷq,D)3\e;^x [@q ׿ j6,0dX(DN>C,u;T[ACxBb"W,N%!k!v>҅SkX`*]$/$"%_F׺O8dnkrMo"Z,T OfWnqe֗+Jb| -CrhCCI/pXۃǹg=ɼަ?0~Wj!0 ؂bVZA8V@`/h%% #6= BA,1 0QIYt7 'g%$?z9$$YyLi(A7u}8:$8aj bLCwJG_#lix$fRׇs-?4#Ã)7ĆPjk`BcC&aYsG^:_ݟxC5Z<9 5h okaʞ"йG>۽/ӎH|;@~Cp`_LӉOp0 ҩ6ߺN=n^ Rޞ>Y0q|h{W>!ͣD!q 0H ZM\VFTwǓ@-J[Šչ?59HwMKvJwYY;H(QbSNb\qmc>kߒ#u1pX/Yc mאnDhxl1)4-fa}YHw/S_u@ZS+e^LFݑRf)^A-Vu #5yX,D ܄AD( ˃6hޣ?:ܡ; *_p:WVN400VL%rŕ] ]Á2V4VFqw;p']7jUYS \e(~JGwty;Rs}qWSէfHeЧv-hoO"FTWU>!湱̙Z֦Ƭo s3RxjR":qT!T7˯$97heեg$qg>sYөw"'x|XODp TyDH0E] _g#Ŵ{~6Ĝ%r;p}D9i"|AcbE|Ut}١e[ R ƕ'T T3g%_3+l0oXmرx /8Os">j@mT&@ȿmREm8˰g+Twqf]E)7![G~ɕH6c[[L2W%hT ,&5ǧrzb[ZdU2^ʺ@OD&57GmH4a ġjvz*f* !䮽:*B"rEտ*JӬ,EƤ9O bᖔneM'+<GP5CNٍA> _2a>!Ź`)V urYt7>\~#NRsģJPk)]_?G{(uo:6HIR_FVވ{/rfܽT*>Iciѥ+"GՎa(AxgrONma̙G`ZNtC 1j QhC%ُERĬa(W$а,*qx)X26h!M&@E*5rUU_Kn]VwwJsno{Y+zڐr4 3zYřC6}{ڧ. JRͶS_U\y%_+3#XLHN7_U"^K'i֛y.@YsمƦKYvl貵QV,z`!u,R\:li&wN#AzMJZ(Ҏj<@].(>Gm~gy7:X!g9Y*\F!}TPveVTe""pg[ɃC7泄*0e#W_{d0Ӹ>!bc,ѐ/ǫD{MecpK'N5I`TWu۝-.*^޺ՙEݲUYw'{_9ԬzHpr/e(w>Jy]?0xHw83G-.Ih\AC,8͠hD@$49Nc~{ҢbIF̣i_~4n>s"ŜhGrw`R׋DV=ye.07껮w@(=Mϗ<|f]0r8+R0DUqݹEz뺥oikR]}b p;' kS25BťͲ|&[ٳ+fɑ0icdl7%@%ΰ<>!1fTb78Z%S,E]}c@eܼZݵR/b,] EckE$rv'Qgo; ,⚊`g47.wyFYxI*qRE56F`r4BɯIT-S>J ,S˒ O7}3| بcadT̴)oQzADZ}a2BU0 H3j6+ݣT45w|!A)b!:ؓ3Mt:s2bj1$洦 cyI{uYaMeۺGU/c8\IaRuzj$3Q5i̿/ț q'34NXhNoIGEhR2w"v]04ylS1V'D1QqG&@~W9! Q*]SdU/ҽ^Jt(I}rXwo3[x6%9'~WrC5"]8"gv%/ԯV/$GSx=W2ΝVkBR>Ru`(hluMBjn镏jq<ƫ&'e::C X4N6}?;FkY?#q/hzyR8xj&ಝ+-xЁn8zIˡ UNϖ{WosIiٛ<%JJ *Y|ʌA6FY:*NJ}ǫw!ˆ3-!9fs|I$:5#VT& uٹIUtj!@.) *L l\Q*VAnXQgH@lP|Yl~/}BH$릌 TEZ,Q0v|$v j;l<|5VQ3֌g݄N8z7ILlS-7͋i0u͢\babuVf#oqCHQ}Xhjq5e/SjoQUb)Jūj6چBC2QF;xE/z%mh"&m.]vMYˠb)PNƯh.\v,򠵢HQc iaCfo8M)w% juap9/_;Q !Puk=&fIj;ʎZ.QhQ"ϗ4΢->p,V"_)ZV4ĺBuH[% N(Zm(^TNtB5=lb/c2"o> |"|kQPbQD@2wP0~lV'RR7T_hq55K@sD(gԾ|g`d-HPBZ21D_Q";BK%tʰ.0M-DhE1v'A=J}4հSŃRV'+0'_%NKtk|7˖>.@@0ܯ?L[Ab+<7#ICS3v亜 ֲA]DDGԽ CC 7" "weeh]gw~h *Q"S Tӽsu`ͻJPc FZ 4Hi2xd-B>ΚoU6P]OA`^}>'}`Cu` {nx_h$CkF,Uh(( -*cv b hۀE]Sp)l:Hn"A k_VސERF(je2$2 X{W2ZömHCP4eG<1%y?_BJQi1gM}͙P# -7t)-8 +3b~O8yf1*ऊ'^C?{׭ e e,sFKR#煘y(>Cm-j(b*1Y$3=a -K*$Nv6CKV%Z~*Ր(Kk2f10l:qeipU+]t61= }_HJ&ֈiuNօe\>g+ú_Bgˎxprǟ+['I]0-ډ0Autqq#L:)H sQe72ڌrzr6%4y%0 -DU j7*0?Βqs?P )s,ϵ)>#6{vf>,R6*~ F6˓kѯLʭ~ *H"r烔] ZnIY_W.*fљg71_=a%ga SZK=745rn֏oRԥ2Odǚj y;~._i'6q Ƭo4KM@ƂuGCkVf]ܮa W{9?c PUf}Nlb;#-8biE|Ie~_L}2,yPYZiQi|dDN\~\dL#Bܦg ch[C= qM#I$ oP=2un7 8c,a܍QE!^SCAMK,gzTbB?q*52I􌷂nS OXQ}ت/ÝP82(G<ہ.Q!jq[7u<25rҩUjt ,g–'o)?ŨQ=z]H+k>#OË %&H D̰:$Up#9&R5m096$1w["兾&4[({o'va!h@vSK3j.'W*1if?14pv$!>MvUźO[Dd8=>JͣU |օ%zMqTIT'(D]^)퉮d㣱ޕca5LҾ I5*̿T'x=" s/㿐/ZmY>hns^ NTHt³?1ݡ6_ ˢ!J.Zǫ3eiɟP3岴5,잊L*Z#w[2K`(EAQtA=V`b30^tO9EfQ/.b`Ƥ>lℽEe*GpbLp`s}9 `ɐvS)gj~$FBEUƛLH}:M{%a RQx3T1Ҫnze3@H򀫻@i :#̵ ֭ґpk%p@aO!墹W Kn0!;D)vdΩc6xRb'T;8t(":,I3Gʲ.fI5.LswRNXܶrFaR:W]j,dϋrֿܴ/[NӶLW y4l÷75kښ_ nƨ"xZ)XOI29T?kZ0}:tNd71^4Mi1=z0xOuZ )YpHhIIs gx5lUU N݁,G4zDQHT:G&B{FxO,ݰaIamWSټ3f,^J~[lG\s tbG'\mf@붳 ܱd{ Y+/ϖ3 - ]کiz* WugaZ4ZBJ Eឍ鋐z3MϫIiH ~#ЍywlaV`79Z!(Tt M^6?_X:CfT Qc v4?Jɖ muHL$F s&l4Q'IKi+z[Y~f#6)A"CAA_)( q sWy Z>PrHڐ ٯKyj>zg vG b g:d(;c_j3? "ȗT-1dftT\2mQ\xc ʭ'֢+G࠻hy nK c"=.ZNEpt >{%09tJa,3e%ұM4>ז'psJ\)tw>a"J /.T0ހ`Q]k{dNM0EڿI _3 hT"lc @։&̬ձ,'̺V8;{5V,bī{ K{1;Ԅ-^':zR#܏׮朗1 񸾂q4͊D*bA*q@"1=(ELĀy7zX{r#F>(#KEWy^~+H? K[« པ/v:a.T [v\^.8 DԢ|H9ݟ8G<t75сȩfT.OnMghI3`]t[IYi{uF`AVpD GT a8F~mVP?!qVۊAilInώ?Dg+4:f5GlǵT6.zuٝޟjjQj |[4#f\6e1 >I|U݊D _iF Lj1JԊ1>!B.z#Ce'q5N=@^}!I- &6t:bx^[A33sEs-pQ16)rؔ>=ߒLdC(TTF9-k1''& ¬󉻙yQy\gQiόq"Z HXX[+e}{#S rt(QRl-!&wiIf<`''/<7ʸ:)$)9Gp$9$HvH 3l&&HB'r r{CEAS"7jzE0Ťf# @X-#kXVb(|Ve#DpxcxE:=OGU1J3C*@2I@ɇ2l~폗 ,f؄q̌:8X{]k6B .^DMY(>e?]MH0S(WD5v;&1qBiAގbZ[P#nG Ύ]!ZЃw_eąZEG>YlfhȽf4bݺ7v ׻sիx?`2]G,l5ָT o5BƥlJ ]({x)7iwy. )6Nn+JP<9[EFnä4'#m-GɆ` t^r#\8)f[ j኱D~D4M&"U"v{Pz/~P14dN[u?W ޅبy1@V4em!(ȇ̻!$.P u%@P벎"D̠9|Y JQmj)9cK TwmŐ,*+K[HFb=&^#ŊʳLUs6춪4XIb1DϹA~Jk\,%=1+}0Ρ.K!&)=`a_g*_S\;JKMA}FxlaSK<4߼GK4,1F,*@o}^_-:H'd[fvY^*wf5Q+4jEqoOk}ChDԱ?UHLHܔǛFe=|#MIاn}5)pkM].fE8,RMwJ!Ն؇x/9~~,bZa$q&L[ǁA5 ]=oj+Vh%ڜGr/gĴ`!x0 H6ܹpPe C䃧WKFbb?ˑ-ӑmj 5o" N=ydƯ*Ϝu ծAp)^5eѺͻ=Jڑ<:esPhcç n"5zynvQy7ok 0(R *e<D#J. H d'M1vx؊BV^BXYJ"EBctےnRLka _Kgp\u,|b]V/(7\C* NY_ P,eD? ZTgc?T0\)c M~/&l&ֿtEI;;5"P+7?NgPtICyјo>~K  lhbūgl"xUgt9dY7뛆6D@ @E䚱NOcYD(# BuI河/dNssQT&IsK"9Fcˇo.þV%w5f/1.ckC[lTֿO?UgX_n[Či qvy=֒B?Ūqm@QF棁 S%R W9o)kFDHd+8JC@+fy߯hme,_@5]8/#yT.+}|2ijDqŕCKlaIY&mas*dKul+{VMG.EJapEK/e>;xm QKxP]3ħ+d~8/rzMҝ!9Zix+>J_MK{^AOlkX.ZqRu PQG_1,LO׎o >^_Ru7 YᆹE^8I-ke=S}Rl)2 g{_t ~æݵ PBwIrZ6'{,(uFtJs^#Ds /}͍ 7RF=b;7#pڤB](RʽtѧvCNm̫VCwcn~6[ASOT4{[,>H-ۿiB5%^cgJlFƊcSO{ S :-_gʫCĵyc٪uB&}kgM2}7]n|#ׁP$YތTyƬ fj8 L6ؓ_B(~nsT%ƨ88)Xy%`F+[ц#\/3y8lFq\JQ9i>"3{n8j)wzٰ[ 5-Ɉ2I0i=ϻF L} u-z}+]Ԏo?r lY϶^]^F6ld-GLWmHR*&^( ۝L5.\ղ3bC]ŚnL kU|4M6-KqZ2:J pZ?**8􉲀flJ/ة7as9 1Y}9sdTt ta{a7OX w-SN T(@EPǞ~^|+h;~̘u@rđp| ,(jwW"+fUQ&rⴁC<Ԫ܃BEAn>A .mbÚey> X~yF`K@ӵd)q p̒ZcY giWN%m熾1U'Uod@+Mzn0v,Vgfa W:ČZH.Y$rJ8mD}=.BFtW { *5 $Ş~ ӘUO&&|B#>mgΙEK3h5& 'qa65G8Ob{4 J!V^l2 o0͐BojiCk {ïcÅwɟS*Ӊ $qbS&f6*YP{GgQk6SKYzw~i1%bg4)nZIst-k0S_f*lG^fn\l_Ԭz ؄z?utGUqCjlĎSX/EI\= Vư q1qӔg˓Ejo]lSC޴ϾB?$WFNvI;YiRILc ?bYLg*ž.F!n_6!7ꢼ>wdP/tpgRa,ulf7TkqoO#i_w玁?CU&  T $rZ T"N9v[7kf /ktX4Ϡ%ʵSZt͹Χ˅ #4a5u?$.Cծ )'=a wL 뉢w9i ; ~t`8&stJ!tMMt[>q{Leo4qѬ2),-$@O@9+*,o% 6 IRmͯ±kA2/?5mZe3{?%Op!/ox#> yOxŅ@~X|sckUmDiˤ0mRRME 4=@9E$%JQ3r8~49y- [8 dp08s6Äq#?* ˋӈ?Ŏf0uM40#`SNkޒ@?ݻrВR _4˝y&P0QDV?;/iܬz{ƈMƀDkxWb:Aﹱ3wT@@/f-Umo2:g^g'p3/m4Ѻ5@-rR0g(1txay^{NF2ַpG˜ډĽ`9@\n1@ꮃHȓh|!=R,h>R*qp zf7m9|D+ V;me;zו[d(bLPmB#! l8U=@0h 1(ù(<~E.n&g;d4rޱPStu9WD(tT ,Lk"50{eJj>k7oW>i׋e&I}\OSJPQY=szccOV=\20傰Evv;a`/o[Hr7Y}:^&GL#7UUƉ [ dɽiNɒЎoe(ۨʨ 2jX(=Oѫ^Jn]:Y%pPA)53竻SeDimU r b:|nlFEܠȕ;!@.k9db {5;(M]8Z]$=z+fs;.??͢hN"<|ȊOMLޱnϪs /Єb0/Ś09*'O[]t yNS!7.J' n+7^$Ђ[^]lAa)FG1pb*pAxcƒ~3w~'bϘ7Cs>?lUL3pkגDB(]BUIG{;D`#'ɖs?<:6h$tN]2DbtXqiQHh#CV0[+nM.Ϯ"ӦMEú|zaT+FliIOn/'ʰKoSj'ؔ! O^]yj0;UeM;7iv!b\tt-:s/~Q+at 2I a8-x8Tdڨ,C=Evv{Ge7Nl~>^M d{TЯ!thM ]cANvR[mr'Tf:+<$d] |7_vh f[ {Qj_}1:i}[>A(.k#bU}u ~vYQr̄I 5l%oH\1/Rlg7)RZ#]<[RK<]uUtalHlI-LJ=`)Ӝ 2ixyP-l_ }F6pT݄P-Z`*DzT셪^L r5NWD%VG%=^d,ObzZw!3]Ta.wb߾ 1{YiFpu-ĒD mQӖB ?vN`Hxj&n-uXR~KM] ݱ:)r89_#1p)Z!;¶;>U_g\0 {GmYbۄ5".VN3M J~&a~ 2C{y|iffTkNȕLWgC_< CŬ]fSn3SIiw8\0S/M. u$NM~80@s#c>7k.ycd6y]".I`dlҢ"kՎx[b<% Riryaߜ|瓺$au^M;h뉠9$8=4,6ըUm@]2^˓ĺvȨ $8e7/+fx=VNڧֱMjPB`6^KPoR_ć$X?2&yQo񺶟@h}mTWWn/yWw2akr<9 X;j^ԹPQy eT~ a1!y,tq%Ю-3HzPuEJg=PY=n KUL- 0GpFdmN6;(ؼCOaJř ʋGK͓wcm!Hc8M-VRWRzJn$k,oL]i3Ceeb#A:8l>qXeKE,f -ul=K$c/oH8.+@$)E0xDD-jqvm0BXowuz]jad@m7$~5KrlyMJ^6G`\#sS^JIT y/?.u>;'j+:L;qMZaoxb{zԹz;͘w2{Y>+Jsy'K1wَ#g(됺Ezuߡ dHlZnKl^5?ü0bȇyUEk-`vnO%KگW.(o4>t5k>I+EJ\F}'\;E+ _{4ځ&} =GhpSJ ;kbWTaq|\;)3"u>8邾/az]5FK`I%3BP `0!'%Y6/+)-WdɧL~V);7M{kDrê;1mO}KayydM=J쑸!;.qu[af&z˫ 6bU-)^9+EF& |Cݓñ X;actXeWC N MN ZIMӸ۠t%ץ~[;$D[g 6<:px[9kX=7b4D iip] "$.h #IBD047'M% ϽG;zVj WG[pto/zEEQq-{I)n[ʱÔU$H6Q4lv1 mT B Pf ZQkM̸6HT-!:a|IY11ϴ<}#`OJ&eT04a,3ՓQF KlmΒy ϰxL{wI?58֎*X0P3"^pn5o`&otjfY_&vSTm[IN} ?& +T8ToOeoA!?Y Cȴ%RHO/99"U11fW#uL9g\yzFݜ /r&iiV1;X\ B<1|WDDǺ}2Ʒv'lN\sA 1N=TSP|l,k˨n|v+е`~#_gA3K4"Np;s!_o+X+Ѣ SH~r`I`KsIX! xӏjj}K o9Eq6C1,@C870.Q=:ix9a7ܳl̖zk@yj5GeTBTӏ2T.1Z{ Ĕ:Ӷ' l$xMKb n=Z{6}H \˾i}u ;1CՔ }>hEVH\+M .ގ~cFlY;˯ޗ.| 3F*{XXfn$SN}ICp ¢pɥX/r M,7 )eϒ +3WT]msā1UD%Ԕ@=B kwAg0Kl0݀GA>-b~;P8wFuj |)EѶ/͊(+3'~~i<!q'|+S[jַJ$+&-! }3rݰS!Je{m2V| Q֌>9crQWf˶* ?M{ǯ]TKwKtwVdMNT]=۾| "p=%btqd0nվ^ϐ0gڴr{=vyR8A} UׯTVi \0፻i,9=>ɟ42з )(qz9~j6EiV;Y'.CWY tsphLf i-r3[W=.ZH́%>DE>hm KWU ~ೖ-*GiKÛQ!ӐRA2]1 =w,ebbD^bD 翆R0T3d+-'Lzb 1}BfmN(P{T qv#zDs8 uI kh}md!FM:`$ǿ'ڮ'ZbS֚*OůTdpn|'#ۋeZpZ~y媝AUG]aET&$ȴ[)G𖈸&Imֻv:r%9+X\3{"w2I]< s'9:&OҴ̌/<]Zq k}"d6VMKE͆8}ݽn/%9[gϞf񔉺 H&_>]nH*}*jmW5o<%Uk*iDI0*Z0GN7 MvxOe$`AYg-Xبv%ثfZZjq2Qa^E\k(@n?_ڨzC]1 56iVtKW)ؙ~ƠW,~jRKX 翟k\&x857Wl zmܒy,2͋TuOmb 04^mI 1R.)f%Yǣ{MK/i}n,A)ѥցˢ=l#Tk^^.:YB:4Șʫ-t+Aݢ6CF:h InkGKٰ5}_vDf%؂EkPY=y!Xͥ'_\.iُ =1|8e949ط+uV4W8g|}0Dz;M؅pzݞ׵3fc5Zp slqR2uHa2dǟAg֦3z+fnN~!4.]׸2K~(?:x|WW?,\Cw_pl3+N͘"üQ6/ѷW$tyG,6=cy2 _Dcqקgѯ`+TR;E֢һӽ_煇{|k+6ypMY->1z$=`K!iRPc-b`LOYXɅ Zg=eWtO3dD[!$ 8 >5X PYT Cj0ǂߔ'4 ׽&2 k^΋0iy6Gqs4"K@5a0B.pE"V8ZomhҬ~v;SД:Q:jPuE1Ց(¦#6Ս_0YMl6o.(' 龦^ $0/٩ }/,=ͯ 7 X] 2E0.$U‚c GS)UjNڕ{5e7 Yv<ml/XO>>h֍.ֱ`2:QS~%rclu#Gi5uS]@SdDNj#1ず`]a ι.ÉUnFi bLa=[YE@/R4o iQ,Gn=󸃀ݐ,X8Jym*lJa_݊MN3&NXPzAw޺ւ&T+3?&)ifs0W^\\B*uE^NV7~V,sɼ"HYgqU=/Ga9,/)[^X1֥ V6Ĝx|PkքDF2gf"` EZ*Ysg UEk̀]rf3̍?QD]2{m/Q19j@#?dTYX6e*0ʋ: lZsS݂BD2A$*<sz+䐊6,i`#8,,vsL`Wv)ZoD ZX~U_X$4ãU97D$8d(d͙9| rF*,_Y\xrʒ]ng7`@u{/V-qP7N\PY3TBp("W%Q `nja4c- "@6 B+uNZ@vizQ2YMF'0E/C+0t4+ ?E)buq~`E*2r%z/]R9:s6 >(aP.Le\aq&=5!Z Qq&1elg|o(U+-.,d,V~PYհ5Oo-~2ϖ/_z%H ,Z֒z|T)xٿL~>hZr[?A*@4ߧ&IƠUm#pj3m T,A2v`q,dYzp$ `3Aێ k'/o-uʋ̉yhF4ZPBKqڌ Qym8~ t#Zk4!\=$Ipj=T"kv媱b״_] ^? Yd v L1f@l'OH5 JXV=nj;봟p !97i$JH 8K+sK5e\ƚ:+!#"_XI&LE06M^`ݢ}%Nt )5([׀kgI{l ' B5Tez VٿewUx`@C-#q t_˫, PUs1ѷqQrS>7S9G 90*ĖVXSHu^a;)d.!ue e&Z]_azZ֩{^%!M` svp (s ȼ`,)/y;l@ehVZ w.9ʠQMxW, 2Q &!A 2 )5!FnaG~OQ7o@m;깰1{TzGݛa$ɹ7"iYI1N!^V@k2%г8{-P8$k}i?@ 0TD7]}Yo!14O =߬0IhFi=>k?4s@f\U)VR $N'2:Pj#զe-+"2&^'.bk78#̈:[F?H*JԼ~B"YCeAhw%p黭* PGg)Y`9 :;{ 4sy{H-" +4%a0X0/yŮ<˜/wg,ؕq pUnROTC&s%#wy,IPj^X{W)Dt.^ |'[. yx b׊/u†T~څ#w羃u!Uhs`5 th4hXA yNoDp6M|LXJ+@aLm!D5 "r:o1r)Ϲa rR aug'EMhVVHKzNfG޾(޹r.>sLIWv&(Kxq%ʦF$F ;X/Žz2㐇MH,eD 3rC% LD5ǣT9kMj$ "n0G )c/vߩ68x-ϖH m4V*fNu<#f${/춋$<[6M'K9 T:u"b'(5Y9p >NCnr'T5˳U<1@V*l\#wĕ/$Xc8 }A=9u(I8M<î+y^fέ[0sxׁ.Fl<5vVtzaDѓwg`f1dyS9zˍǍʼe~ \db{ lr}N4$`bC, MDzh7LMgEXze^)]ZTbp[AOEᯥ$ 3<"_Dɤ8g¾$ JxpXݜE8AAâAFdT9>e 7v6>~ zFs ger!n}dɋyllytv'+#="!uLڡhcwG,Qo2O*kvL uhMtqrhÝյwb!ԐBa2O&esz@ǔz1)_C-:]ڸ 5Vl_[%?d,xTAN[qYq4 k]isqRfDQ8j}x/8}J/-q,r~t'NupHtaٿ`T0v}1yQR;9qmЉ lVg+ɆG1RCNЎ~{gu:o(ϢT-/b<;mMR3DBTSWBH 1~Ow#KY\Vu$ita@zښ" jyn9 Ybp,o9%tNKn$.W!^ ;Q &pX `C ɟU[UmoAGpqyzxfظ`p:M/_CB_ܡClGQqa2}ݷz;i hkHc>Ck@,f8Ydibɒ&? D3cuW^~< vg. &|R^E*1OqK:;of`HY ^^pm0,;)},Q+CnWUH+Nxzy\Lz&j p6BYWD~}RY N%!]HӶɈ& _vl&|lطjV=6d,] Dӣ52>_/}~Π#os~fٵ+@; #QIbC_#&.9[e1/]ÕGg.cmy~zrekWA$;cU)n?( 7Og^VbSf^5#Z7^EL9g]zD:uS+> 07 ϵ" j'X*!wO٪뵟pu]B2z V%d=N@HZt@ȹzpAFY%d7"8[{}3tY8sq> X(Ƿ];H[ _>>6^&UM쮰+s,o _X {R' ɬ(1[o$蝱2km\ O" !M]i&G0\^$|ٷukqO-@n+zo N].{O"grs<9DVR-'p]M tPH;M~JVP(,QbP$bVI6+,qק Db#]naw_?h r S[[4JRz%Nm7bЌ>-nOqKJg^O]\d+mz@b.&+*A Uq$DUjCw^84b#eGS+p %ֵ'V-n?m@Εy\|.얲0p=)\uR+}0EPg=,b;Q`e8)joC7֚-b|1cg<>ikH{Ўr{r߇pƉk疺:őѡ:ϫ6!N$`#_^Io1͟؄O\=42N``cT0ߗ-_\,bXO3s^\$rc q?4;At LTt<mv Shq`4X3 (gv1iӁ 6XU]f 5c/ήp qS+G1m tGgh Bo>.ܓ?\@X>C93A@L龊"Pw΂f{~v v@#$)ڤV y {L?Ipg¦EXMV]T8_(NJAT.4*@y5š9+Ąj6ڟNMHk?;W$DCV^heqպ<IJ$@?@MrݦCic$Gm 5|Rܕ-{ju!q =Gߖ+7 eZMAZ8t-V|;V{=&3.*RHlZ=ÌPOXո}nipd8*A=y ?Z`3˾ʮ>yҳg-.8a%:.)t~zR0RE"yT'R~lYIłYnyOnDOU)v7[iq@iA1BVm #(䚎ҧ4,_FhпS\*U,[XQDx8ޛJӳozs4&61cMl_=bS_U[h~H Ւ=;_PXWﺲ6Cڭ#Vidq_$/>/@) 6Ud4땿?4*IV˫N2|)P}^'sM+t 1%p(&=e* 4F&9#I]''kAH>FsSb?[]'2cdwk 3j?BPn^ĜĉƎ'<\MYBL)Cbu>xt w?5[Iv{};*)B+:61.a|0O~@1g!$yD ==skUse'Ս"FԿ^NJukʨF46dv 6iKWK$MF{"NE D@>.3K?rch>MxރE:[M#* ?^9ڲ~%)hT]{]3,o9.FmRF籮ث77~:ь< ]{U)A5= ?%t U^Ek-2sʞ=)Vg؏*Jojr7 bgQ`x*!_ ΓZ0S҇+Uєzu!7/jC8P[hhf\͉( v'RRd.wM9 r!\v VzrtmOS/hk08 `%[vh73.'qϧo_^{+Q;d@9)s]Ý .1)6R=;Jfx]^6/ z{ 2c&%vo&u?58l'G`AK )hRB>̛Bq{F lC-y:C}>)G6T(4(eվ!4<$~A{,1GyDcoȢV)_̨G69Wck7 ~ t=n]%o"F4.ecwtևdУ =;˦*?bO8(S`?qGDœ,^PAe`av~*~RV:&;bIN}1 Ժc1;ZE8\01zx#09wشS@'^wޯ?܉t/},oeLfs8X쌆UsSa|}L-2Ңy$ KFZt'?Q%VPGsԸIK`GoWO8 `PwmT "<5ۻ0ZC*ђ)]zLL.\b'ΰ)j^ ~F?Rk=_ AГCpGǟ%jxZ;0ʜu(d:JۈUx])ef%~, 6Jd%0rsMg*w|ݓyŝ\_m.^?x\p .d')W~n.)^`{jE|NևiX+:cϷAM #K,ҕiP;н.w1k`k1d:M{6Kpp &YT4RMBFG!cI`2wo 0>`H&(y\# . V5UL?OOy8##d8@5=̠^Nj(W;1Isz񋒊oZ(N<2,\BV9;iz̒eX5sF%7N:w|N) }xo,.>|E }p5E@{` Pr1=?$սkFT527yM6p, mxHڃkHLCY_ay7BEQgUɏۯ7;0]R8sv n*MLX~GcM_t 841H;ZD} ^Z5w6?a.2Ҹ |#Ǎ)1QwBs Er51KW/0voj;r,uVk,>? .T>w(rMN]U* (MyD9oѸz\񧐙es&K:AqrmA1EhJG;W!,)Rل܆ A-HHNbNlGd nFSb7 Yb-$ &b a!u%Xm#bB=YuZSy)q^y9]8sϰeh7$"i]V&}EJ(OHb΋ m1U,pb;~:e&*G _j7$?T z/lmCVqMB-3}n‘8@$Vchq"KAMOjHU*zSlv?tȧ]afD4>n^P̈KkS5Uf/z&8KcBv0p<{(*dBḙƿ ,SPvA9 |6+㸩1ȋg4Jֻu?4AQpN4|33^F.$BTPmv}v wqL\E7u,>vZ機H-d) AB2 !0\h?Sx ]RFPZa42nr- 6AnV&~~oi] lg1XΤγ3֨G$m@ApSşH&^}eis HX0hA񌑴eU2-As1!UKImӵe Sw/,NK}wc3Y:fwG⹑% ->QUr"U :A0>6SIo1s~^dY C@\"@6險jo?c{̬^j=.V6?cLTcsF_$HG(|o^D%~6: OIi *.rNΎ NrXg8'佯w>y<4,TXœBm%~Riɽ4eX/<9q3Uw˃PZ %F^`-ۥ(" "8Q.ӡc/Uu |6 ?5gYC7v+Vߧ*, - :#ތٷ&KoM4M-!^U(x=:iWh8iKẈ.ՁoNʚ]cIC%D.2½B,%+o$Aw FL[&YJYä_(bPY̸9Xj KYb\`ccxX 8GaG]|z t30<#T)H!'[hkBaX}}ۛzҒ4Y_!,nБS'5R%O ЎR1t胛ٽE`nmDT:({˝(NoWD KyxXR6=cy tƕc%JSߥɝ?@%5.oq=H3o-8VDik)Iw"K_P @Ο^}iLP}q .^_|ḧ́iW|ѻxNy>!دgz7.h1i*?vᲳL%~Oߝzllܣ?x-L_ U~w@Kx}epx8Jwm3O tDVPډc.@G20gڔoE0TјadϼǶ;N0n1ń_Ne*İaɏX>iɍƕJĆ'LhΌg]ϯTR,@~A) [?\b>Cp8S]jRlG}J(~q 8'j;TbҠy_k>7GQ}4,r:;rUa5ЀLcP68\Xd:E,c"`m t8/ۦ[s`-#lB $ IkaYl(CnvS2 Irw˄G,RĊL1 b)XfwM'4Om.R6\WRR1WyG) BDF5DRM<փZF8$M/!O(802FO2}WEygMbF- L&~b\wi)920H'GmApѿ@#e3j詵I"ePQf"WX`U[5^ƋVfC #OIԷ!@sh1zJN{\aIP+n\G0C k*િ+R[KbA}lrAEMȓ!L_lt) !|msab7n\ǰ~}磉e0KE:ĩAKY6B͕]gsEy/[%KUQ*~Xd}򨺵("Q=/ Fw*8,O))jA3<irD%]O+tp1.̰SemɃcr| +4l3$L'`xƥ/&/͸X'3țn(o<H )k17+G^ÄR|pc蒎7ϙ8kj (ͅbAh}:~ c1xK}f.w3f<-f=ڢ3QFG嵄^GT쑿\k+3حFTۖ@~ ߤKMK^NYw3,J2:S2T 0/΅tǒ/W {5rAYYI耧j q)B[#:!2Y/NJN Yޮ8ց #\ =Dy^;-&-jA7<44'|uqn>:܋I2=# [0V7^4b{N>iК`_;,!f*N|xB0xA~WH='{B5a[kѼ=Q}(-*qz$S+dO40n 94Rlfcgg"xoSĎWTqwt:~ɴiɸF=֞ (2"ޫYE! ¿߁w/@ΧLp;%h~pΙIыaavmqe~@m=XzvdɵÍP^f,F ӫyV)^.W~EhmR7 }±J"Zײ둱x}htsAJG?fN,u @鷣t`Q][ʾN2[ r}4\ #nMop]3C&ABO& \tyLA dvTQVSbƯ*:+G$VԞy*UJnl+6W[ P:Cbض W 骜C_Mlэ~d rAPeh w&*sSXyLVASqzWh*Loڼm^`G,}]u~X;7985J׬tj9萶 YVk"L Ks")ߝC/<26$}4'=(Ah邗>/uQXNK;l%7˲DžI+ėHu+r48vGA9uOk8U\Ybþ!u!Q]kI|` S59E^*;X- ܍ ׹Hs궸ʾe^+'6=hi~ F[ q%y|3W p2~qe ^WxEfSmXԘ/d!K9EZSG, HO L:懹m <)EXX |z(K$Y<5PAHGPfvLulS<f*'8&#Y*mcz6s\'&qs~iqX*sMI2j׽3KLN[E W}C<1FzD PS 6o{c'Ti㘶c7ht%rc$N@Kf!@Tũ ''"9OTc~e.R ~a~RB/e33ku|Y~w=T{ѹPH> )T;@q9:WyG\ r|q ~Ox4."8Kw?G*ct{_u `0kT,oO8Q?dAG$?!C58-apwr͸A+YnO`)6) .О dW"K[. Vʕ("GW `HEhNa 4p 8K4oǮ- h5/-@{VFзn{ {b_d?~G u#[Qv~%i`tmkPmc*S풝D,11ܛ0~T.TH&?zv[t  qL6x.t fն)&\VDexQq>Jbz?a!KKOFr3ĭit)y3xA$0~TK*Ú8P-pgQ':19$"Q ;5Ԕ[[kzt GV7CNEaE7̾m܍#:G*OsypAq߆|̅Ě6<Ǭ{.F~9 "xX_s$^Mvr2Rx&J'$T~[=EO ʝ cMc ^]i+ԛ E_bQQ?;aDm"B13j\Փ&HvhFCPۉ"q"Ǘvom!ǹl{nuy&;~ }Xu5W𴥰$ZŃ[;Tv{h 0!q!уUz!yES?\d1mh&Q`(]QA kԞJ#}RُZ1f` #yDW~qqY]o!ri<F]6=!>vT1ρ_""G؀>h|)Wc\&j0g ҢڕLNjp Z9hucU`T' ˥/4'vZ"'t9 zqܜx UzaD ~86Iw=2QSR V׏3=42ȏ~d9'+ފFLjrb;If=4?.k1L ) 5\}9WhF ui?XХm' gĠ/_QTX)fo{4=A -҈xg7O2˗iD5d9miy99c[}zof\aގiƦ PU-\rl45bR!H;aKn~ؼ@ArM:Fs/0E6兂lu"'gۨTc]0,pXZPI[WQUG'a- og}O.[_yKczɝfi'^Y8Z&̳Mڿ{.5J_ceM'l9cXyIZ2:Mp9sW[j@ k,W?pBjnkfʛ7k0s2жX,t +_~dG|V9~v`mAEô G4d I}Zq)v#;#w!wY O6M䎜!|4;vq(ŵ1R)0 (=(NVX@oK t]>U\$Pd8;7*!&~-\OHsEg9mh36j]`?[.|ȊTC*{H1e%!\$6!;UtF쀯cҫ> xHOKu faA"wf%$cB1x6hiIAOly1f2SZ?4[G94-odiڸd“V\޼a^|-mW_Ck@*Poz}ѯ &x x2d5Zspc1U.G*sF(`W9$c8|R{.^ƾ33Qi!Uk1BAMs< ET ֞|Z#4ca&ɝ'btbehc-1?Qqoe{>ٙVvĜM ɐl<*=l YGmW6 &j>I5Qn`IJO]EJq |#ViWbx9*}L7=MvAVd(WєHL9DhX  ooyC]{J28<ךKIaug48A*| 1ҎdnȂ9S fml}ľb"♇_c~+xTm,YWL26 D `1W7\pU$_1֗ڔU5`.@+)0=&~  RA_rnbxN=?ќXu)+TC]w9HrӺ)#YB YwO#Έi efAFzZP#H=N&gXϠY&bֿ[ׁ2:[O;*k"ր=QϑS$lgK jX<=jecO&n؟S؎S _ƼA˃+׷;£}4a޹qmMNc:6TU65x +焃 nfyc|}/-_^X`T58G6ͥaƣqo덈cPuz5GҔzԕUр<ݺ|^+iL>2y!uEtfI)2G]K}>9`(,Ze /ݡD37\E,; n1 nBm*<8ITGHA:x"e.0'}F_+-xڨ UncӞ"^?×WX49m% mVv/,{:60qVƘ\ K9q3IشU_zMx,@ @ȄG̕I٪YKS2zyKaJ;?`ֵ:x' ԈnXcBL =7=k3:Pؗ~8N97`sc;{D(~q+xN'^iAm B)t,aӡ;8 {*xfIyYbz&x[X[~guF"8v4+&{5QyX %^4Èf;5tQx+~HQeuS䈦>gmFh)_dC8$z=Yƒq K͹j߬ (3]y1 _:CXm| 7 +ypeˉߏB G aiA 4"w,{-&`.7^rާlWg8i / F"HQ~-ا}f@|l0ni3/%B(垘([78lϻT;#%CH+Aj#q]!A;dil5[|]mx18kl2foԔ>N࢓6,ӁE[9ƼrX޿S:}-f1fөᒲ$jݩ޼.s1lLLZzO:HʸZLfuh]U'z`Fk_PwHF'v/? 7(1R!(\<8}P[|䒋|GSC HˡV`Ie{/X9%[Q*Q".Ͼ3&S~ckLqxN,F+7j}^2ԑ A0x4T%& Jॸ!aKGЅⰅ\MӽR5'+Y"{}qj>N !HB8QA$R@~ÓKڮf "fE^$[*'R:MneD;϶=} [ft>4HW_02*R8aNl@v\ܚ:3Z9 INV)-_H;Ȥ R8,PdUm߁-~'[D`L}..#) >_Lv_* ~tҷ*eU>.Pvs* @U,MFo/^BTq/F#h[gs.`(~T8YvST{O_ײ w:w~-- mUr*ݓU*$V91wsT^@IՂVODk(\밯 ?1lwxfI~ K?L-1h*@Y_nM?UA.?s]!x\ү9̀C2.e+ևe;7U"34Z8It/ ^fY 53eAN!>t3I.8[O2x]޲$磾(Oe*Sg_iV\/nL&ä|M)> iSqvZA2Uoa#SWiRPڅ7]~XC]7br Ou mpY6:TWKIhi͜h$Chq2 M̴ p2Hڎhv]^71hJs&}t[`zÐ'\+O:#W';K#O~|4yx@ɋĝ~\o3gBDAonx]eqL 9ܢ{ErufuΙmM\iq7CJ@ٞ)35ώL&.+I0h8ZaDWU xdu2*!m=h1Nw=φN`N_*=ג/gCFJ>' "_g"*npW}zY\'f0jw,\ᓬ+LDcHx%WJwҁ=p 3 êx8ӻM!S}+)ly{|Jg"J|c5ua*8Q: u+ Q{9'j c&SG^Rwۛ4MWGQ:eHFH(0E @iѪĬjbZJ>jSd?ثXPTFf4-*T^D' %Ewz⨅,5Xin&nxPg@i0in'QfNAO/?> oua{(~bF5C6#P3V9]pH0< LːWCC)A8}TxhDSՁ̧2<jQV-.O=> {9ބJ6齢fTȵifHڱ,\49NdH GFCIU@݉^ym~Er؇~ UH~g2M`&wY&EԆ=,|wR;ϻ.Wnݭ@Y=Rf[Ί٧EP1m_/]IF"Po+Z#4>2e_[!|قb$ GO)]+5|I+=P ndA^'BO3ÂI'eK:ug}Ę}٧iSK`;Bb{ Tf/_Ko  }߸jz_r2Jncc6 KPC& {]j^Jh%~7g J֔цY j>C~cbfk[^.y;@fӑ?p #il8zRޢZ wq `Qm_V&Xb{& fBlSgzt+y*2SXHZau; `,h+6EeӲ@XM& %qI0(@G.\\dM}s?RBd4D sCeSbucP(؎ɍ7%3N7َdEQ˕n n `n$M򒡘x2Fx\NnQ EZޤ6[_[wTq8LG,nZt1Z֌##a8E?iuYŪ+>n If{J '^V$ZƓy9*U/ \IM'Jåg ϹySzB#R_7 Ma-Ϙ^{1}ǟgIU)[=vBALewHxK9҆fu˃"Hlk{IY'+jxlNI ҂ph2c]&qSR7,DK^*M!.]77J(:"t DZK!suIձ#)T5- >bB˸UпF0 ʈ$P \fr+tj 4k uCKx0Z]ӅdTccP)( f2o[Юo[T_V9N~ Aphჸqyq̞6TٰIN+m9D'=O WOΗܧ%61P O5d:ic-,҄N0{=DhLik=Ӽe7gݮ WE0 d>t|1̅~j@˸N'f^ \0`7e">ā -Tu6E[e&ϙxV,}ֲ ]N]uvN:Axr ݶxH@¶7P5{WS)j[ j"Be{<㺂t 4,2OI؏^}~+Zڛa@S9jz[.^Ɔj{Yݨ$fKĶ Ž29p.5.7h$`SQ xI($t;[ZB߽]Z- 넫KoArB#[h}޺)>8YgO!}t[AC 3.p49r-,UpwA$..&t!/HcT?jWxk͞ZP%xesşGI!.Fe>kdk.(k./sg$L]0H71J؆iQ hsͺŗ0#Z[]"uIiViZ!w],Ͻ V>1%7`b!G; t @g8WyHq&d1z0b,>Xق,xK@4zϬޙ)wUnr+>)Ca nEʿ+T qt}9AQz0~POV)A;L{;XS., W7Î?A5Ɋ-1D'fd3m Vo4NNva s\9?P&o%u̦.Ȓ;Ѐi5+mtFfI&myDCܱTV~a!}zwf8~ 6PjtkDf(tF/ 7 hwa)+jrGjTctF0E;dO&ၲmuT_G+iKޮvR`4 k{I JM"d= &vƻZ + + m[V"4b,V$OO7=Hk\WͨGRbvQvXExn`$M9ZTQΝ_ĦQ:|])qK1A]nTkH ,齴 T75?'zp~6*|oGztLBxwvk.;5g5ޜܴbȴTFY=Z&$S}\)"V\9:k('yJ;.!*ƇA#eGO:X3FBvͯա,8"YpVI4JKt,[U[oF[3X5$V70eٳb5> f越j;Xo p @\O(jlT: Gw"s>GM=!]c.uLF0(1WdG ԡ9GgKCIx%&${>~|X٢-- tBS.M -d{l+FF7YHQ 8I:i iWAS\q :nʔ[l@@WJiPH }U>79 ͫKOwElGyZYMWnx{ԂF ^clL}.CCZ%CHd1}زXht>z-KT,UBAF{2;you;5Uëa.0pL6nnmn4Bx!y(R%vin}aSlPn*AflExw|f4bFԠ,tڝgEu.hYZiRm:-ʛ+^g{=EܾWP5 uk[?MTcڥ6EO TԄPPh[#FkA#NLqx|zPp};jr 'ʭn"wBLK2HQJ9u8upyo>u1ٌޓaP p&>$V٘ޡ١r kl#];i|[5]o  j|3T<~]Ns8Z v-iwV|fr{ j IjjB dPCOBa^tS片P.=:7wJQX6S9E|Gh[iDZp:t^1BXdnHJe~tB0_pedXeӢ]O(gNIܼApU|<'_څRct[VE5W%tΌp!{݀ZZ d^DqչDi5@A,=D؃oNፇĴ﹪3$!I5 1?EMz+Pvw&7\j.5ܕe"6hM. : |ua-Q&!91fEIbT՛st@iOQT(4@C(keՌ1"c|$ynΉ"ּ*.Z $y0@+{ՁT\ViRȟPyW1Ď2Dt̡6|@4Ap+̯CX(nZΐ[ŅH"t L`3옙ژ X[p.i"AȊL*+`cd7mzC9 KOLl䌝p`6Н;#@ _oh|pL m ]-ԱFu6c JvPUt3O?s0L++wHƦE s`2R6z,Jb[xkG&>]J%Sŗy)W? wv5R)};VAގtnÙLZ8QRj"z| tt4>ڛ \P\w`IA_f"*EŽC._fjjl G'MJ^0UK?]F7V//2|m J`|f)Ǒ*7oi2 #w+!ӋsW ç\> 4\ ;3tSH'Vd q(2b5e*M 9@tbުXU/QʅudL)5XG' 4X*yÛ{WDs245f,@X|ڝ !E]%K&<EnCN}.:0]D*凧22LU;B$AZl c"K01kjwN$vz]i$Q`a!r+qCs0t$_8RR]mQZp V)O-p$!AR0LdoNE:PrƂ{PSQ*0*k|]),Σa5Hbh`͐}FmL&JA_fjs쬭 7#nEe\Kؓ$wk(,ͱ&و U#1U|񱾁\ "`/N+qBQvΉ-L~/l ]:@-u3 lЮbB{XSsJCY#*Mq*{~9o]Ѻa )" GP?';yj^5yGh{oRNkcr: 'cG~HgmL G=nl9wv[^YRn&}4\HЃ.m/L߆ӥt)_#R>2Ƴ1 a[Wu-jM7W0p5Q ŸcMy@<̩]e;5 VcW(t]M4dG{$d&wJ ĞU1rKQW/Oj,i! `Z2:t E1E-Uezkk ĎH[ Efo}X$GΎ !PԨ9Eo$NĦo7_su^Q9L8ͬ';? N# 7бg#РEf([ qAa,t\棱<"֩11Wuk;uU>Ҡ d(63Nt4~]=di,RJ ? ,yݯPY,Ԥ\\_s+نfF,ťlAjh)a݅a}UN 1(\>( pGb}c X gshbUɦ]TAP. TP e:\*{,eQJ8I}\PDF#5P:ɾMZpQ~6Y4BۯoZuAS0RqeH.8xfjIA$Y832&=ʳYesANmRd)e@ۻ"]}R8SuUg}{v}e;eh-2ITkr,GV'Ϻl:@{> LJ57iһڴB_Y"AQ x'Mrîo pk\>ԙ'z7D"_ PIa{`pg@eKr1x0 ϥby41 .䤁@`m9Qv'jX(M:x#pDɆ3_ `yl`ԣ=v/p$]d%3#>Ac?!Z/ {uT 0VZ>yPiCD%_cH6I,[[1{ŝ!jt~_d01%uL*Odnֶ6~$$l چoU+O!M4zƢW\aO8s>]i'@!:i Ftc/i\XrQR(K) S'Q +#o4 gÜC49f eH휲I-c),E+ӆob᷊ lrIGxl:ev0v򖘕^`]1U}ɾ,LD ިtX{w12YglD&rw~+uY~C>:Q("O,ɓJjrw }GK  `LZ vÕ{Ȣ4،N ;s+ tye#5#ȂetKB՘jHFzl!NZv8EPJm;, P8og,ILID_D{2l }rƎmD2mp čZ⩇̯H{'6(ǵ@6(9,9]|D5wKa =! Ž=q_.g!+~2NJ%鼗Lf|-2dnO;8> N&174rAI+9SC(Q:KB*fCٜgEפNu%-c U!iڈP&H }j^.ĦOrW;7Lkedk(g u o4i3v児0*C׳p!Z=f ecM6CZdmƦ[כ>2_psY8}չ6 uJA%8 噟3`&Sv2+ & 0$^zXm7:KPF϶B n >qAw%Mmpv`l҃Bý)̆Ajeo.A7h-TzSeQT(O3dpMw$O(Tʖ; w^'²),sJBbYX|cP7kHG"3{A_\E>t?kyv=nٶIg)]&1L Y;^UѭD@`)Ywe4K5g94)&WIXPh1Ws{A#}^^|/pJ=4ɪQ|h)% Խ[$ !a#hq]#K&W|0̠Tbgm ? "5PBSMb| -?wژm]=ckmQ8@[9*Ϯ{` fؗ%}1 jw\.WA2 *.wXBWhD;Ϣ Bj1BӞ=n~*(]s# j&%^FL=./J/̰}-bvkN,׋,-d8yfZxn>HŶa?Sh(r'9\bQ<4Cv^*Ѿ<ĆOF$#˻Ě e;Y t4d&LRʱmUwƒ8!ڗAtQSh'hۿA d.xqLhg_S?%TS`Ǡ)(T+ҿ6uḾ' ZpK.P"%0anM1!MdqE e2Ԑkt ͤc_mvP=|*CԲ1>- o"!$$p'n~JPv ƍSGr)\pMHv|;X}J.&cKwʜ2 Ǹ8*Ոi>S,ߩmVlhSܕ,gPFʘ&c#כ Dp7q'; GϷTA}{0` qOoo$CuSgR[C^ 8#"ٿP[t̵AkjIz, :7g7?R΁tqq_`0=m,=WTWY&B39#!~6`҅4S)K;ufReX/ʌFUx(e*U7-n/dQHfW[E5op4 @- vB0ݤϕPX=d [;5̚`&ͦ0&e'VJ6gzhNN9cCp! /7!NC̱o2{*8ݐSP|66_ omof%ajWsa.4g]{4"7lnb*Z?إ,DV N$ה~ nJ4'C`K|s.܂sOHpH?:ݓ6,;ok˹#Ynd$JRNaT ^*ǂPԗ+>N9pf+8l-x֠W3Lnq^Nb|"Lj#"zqDS]:H:Ei_}?W il ^GMjI [h<%bg,ނ*eJ|wh݌>*"E:k%.O ^=֜jcX!'PKwV{-fr蝘GsfRSIt];2U` Xr;߮Bf(aYw Hc ?gu`ANC?'B\x }%8oʹ WXW,*5)K,)|ǬFD{?z`w:%.P:osՎݫ2k]qDDZY'hsfed;_ 4Gn|0;j!q߸iUtζRV-e "z?q‡֓jdf\HZ诧 9)ul|OKސQ[aS-zi($Sl;+TuF(h}ؓY젷Y9WN9nx}l)Z=FXG&Z1L(+t`MͲ0cs6 4Vo%u31σBL#/[S7hn$PHpDѢL6`9D61]{fMx]$to=6tAJ QGZd,@e!q{0$<_WC\,*܅TsresWHg<`}!z"ѧ_N495>9&GX6!8ϾA%z}L]W3vBh%eK }u,V!;fObCNlP[CҹOO۫ U^R,@1-,h`~s0$z$s!6)ޅ Vy0+cs/.᳐`ĞX:ʈιZIc&Ne J/ 6uz#fj'pp4&:$}BT5Ë ;a74_v^ y0C:/ FthGRmu*MJŪvqEI-,­TaPr9p&#<9]LT3C2ab>4&fs,ڤ.7)'6KߎPItKf]+~r[y3c"f?^ ^]E.m6zpTvhXT{Q΁4I$6F~Au$N,LJ??foiEr9.;|ZOQRZlmt"Ws ~D-dr\bWxXM7B(Zx|OU&ݱ-p-}Hk~y;0eo54-Cˢ, 6\NԷuj7*{EK+xjQ3};`34*x:JkjRk*ޖX6шQ%PUrȍV1F|xY$`|\U5#xTAw ,5Jy)IqW^BrK^^[@[)z" ͆8pD]+P>Ƶ$GCyk.WIS@?<>,Xڿu]+ٜ{OSG<Hc)eHGk.]27)Ҁ\ϰ7;+8z| ^B?>1':/bkROr͡ռhZ~W#ȈC2z1om7g+q0f<ɜedBCwCo4mN/s t%Bh(~\B |ܘݸUhbt݀|"o+Rǃcr/,(Kϴk ŷLH~JM*n1bN (@_pd?Jρ?UCJx=_y>Z?nІ}%uX$ZR)T)Am]ەHQL E!Q@z0QSQ,~Vd-OmHm: tx!Z?)cxgoN.`@EMPPOѱq4"85mv\`iE>;=6 e$"g`nld ˒*D T2M^UKaD*k9o`&M"qBL-0U93f֒ h'Gԉ$ 'IlHwgǐ}*(ѾDs4sxPG޿L3t ;sJ^ɰvtǝ46k ,8c4 Xit<̃짇tD[_?L3cD*]ZaBxI+~ RQGNgy Lغ}= Z7\bkKn8MZIgr(9O4Հ *rrI ԎFhq&%lgtF%^KFS ̛>,iš!Cj1W ~ϣ̖H` %֊n~%x)OI)h˴D <)t3;k(3xXu>:Q:&fvj6`4#Nvd1[X =rJѨg`Qux WBR8<ȣaBCNk|?]=.ZvDC-`T5j#cD} UYm7D1%Q]wO }EVPTwH1zՏۡݿ#No'涊*Y]P\D#aӕEDV,+ y u-MjE=#OΐOe8@h^6R^1 8ǎ(*9Pصz#CcMCn,BQt{Tuf+5&5Vq;]6={Wn w %'xߐ:1߆WO]ndn󹨣Т`MyBN^N] 烗UVÂk'V|pE7ڼ4` [^P$S7);p}V "2=iKXɚ^]}ݯς=Gl?]?}ɽ1/dh#rZ7ndRFe4ZT,ZKb6@en0W:KC,tiz?V.:-J~Ĉ;TcBHdraGZ?٣s+e$#gy48q?dXvE=+N\$ML0yB'Bj"$PSUU Ȳ_%4uBB %(?p3+fHՋw%;J*sp=Nѷm8e["Heϛd H ʰ3͚+r{(k%~%jv9(h{GmB(ї)<2:"hawE#Ʌ!d|85h]c6pͩl1ڿؓ?^mv?ҋɒ:4G`P}1FL&P+0M||<|4P^>KG41zl+i`pLVkٸ 0 ۀ:}{ qƚDONC<'*xZ@ӂAwp LQ73Vޛ!=q!mrcfQ rCJ9-6m7ai ., CSܾ]4U^ "g>i w+g5mx(l-猐Q]VFdĩYz>=Z/aieʷ/[^?td:kp8"poa-Rj&e{=N%9K9r7@=/3 $~ XbJOa?pPKe"fʑ-MÙYL*[ צqj"15#'M dy25s?b9ϐX1#ќ>d;2w0d;F7( ZwA2lny9w\,QiI ~g&&;:iWr?Ψ ~T4ݳP R>F,?6K>eznWκsE "EQrb@͈@aj1Y6~[D^:Hw"|hu}H2)q@K1fE<~c"s.v剀9GK>z$Ļ}˔о HD_R0θc40#Yڲ폑VIxy rf[q( sulVKΚ>S)VGwY*|Si7 KOIYㆂ3?P{h6hV}1@U{`q$ 7(®˖pŒeIsiXwhD_*1GI~$Ue!S8'\LV;yc&]g9/=V醏䦐u !xm;z KO1en mU4z4JL gڇ%lS1dzGM .zW5ayUWy#5?L|dN3şcրAƎJ}?so )Av9{!w?8]ܸކ{yu gn-^BBuoynjqVw7ʳ[2M+^ՠ0?|3xX͗#^^gW/MHQ{sޮ"I:8έkY ZP0/K%'!H/Z~'<7?jo6~~vfvƌO}jQ#!t-H.XT_DYz*mI2HU0$cMe`4Km9d!H*w,FT~Uis_>,nK9+.%U)vf䤜S5{-j<m<oVi_#@e4' Wi+Y_*PzK]U^7UPEY? }V^K?wk,לWVt8 =nʐ&tF[7i^A[^,$J 9N a tYt 7M؏s 5 ` |^fc^~JP6"Gg^ZYy8!{%W%Ft's%(]#+|zu*ENa3cNw"N:ϻOUS\-$yi`hDtv<,sܣ Ƿuk8[Zw6wޢ1@a˾D:zUȭCK(~7X"lG4 8EVfOѶER"&|BvT*'%vHp7ªݙxMc!i{_`'ǻnـzjf%E Z-Q ȱ:*SLk쬝?rwgYjߓ`0GHOYunJ  DqP}Ev9齅eqNI\_xuمrD6Jz7L.[ٙ[HPvvid@stc"e><A\ !~(kGj@ULPVn/-`f3k1Aň:8֜5 ѕC_0YV8XERtM;bwgSa.88ПљnFzD6=,:u@ֽ%`[d4SE'7f06=BwUR_ FXhY|Xʭ/`;+sU&VP\ș V2Ɗ-X/Y\Ԯzͺ=,ڊ"DsgZ c NJלVWf.4CH1NfBakY#`N{e{c$q6ൿNý84cz׫9#@0@oa=I+5|yz c$ #s:3DKK|~u,C.(O3}U 9@rǢ&M8#:4aiR+%`SNU @ x^C+TXs砳Y@/C=󁋉ƴc,ُ ,=O4a?N:x=;uNLf?!m45fqL㚚).*m5Zw,^ҜP̩zRaq -#ҝĩ\?S4,x?WpσKn8X5 II4 rԿSAk24,nh*-+jn7xE&@"WqX-gM$6Ac:\26xo"m}\o5蟶8p-akRyi zHA0Ta@"kSt+Fwº8"TȚNۂD=ouW,hI a;<Ïf0$CMk3V3d0L'p5 nW׫jA9 ]<]SR/ i|xxN:lX5(.ϧ ccߧ~-5Yw#Cݜ~73c9sTW7 ^ՐJWК:L07Ixǂ v]Chg9,Kr_)̾Ph"~Aa5 ;Zq<]\wX} t_>%n䳊y1Ůz$# |Z4ͶD/'sy+<"/C\';ֲf!sA|tLu_~q}0.5,s驷IEU]@y0@1#!8, Fؖao5D M'RTp12[L8h;8? +*(Ī1Ыr{Q'tr)x/Azs@~E,HMu3,OzW/1s|9E*ܤ;'ʉXWQOl-^҆ jK=jZd/9,zИ.$OgM5[I^ŵKaDίbcUϒI J5z 7y1NЎ0aiDV יyWᥤHz`dT-)݁:ǩSi5J$r`;dEQZҢ"Ti@`js56؊:6ڴ%Q}(Agϲf!+– ;A9),I!iBPTmfJ3 D}(-&_^ w4Hw5Qkϭ|T;e!: 5ʆ&Hu=f .L LyQ{& H1z@gu0 qF>-3JE$(e@<]VED!}* i2eK2֡(aFS(\(7 sZ+UV\wcv-xpߪ#p p[Qʽ.C(4 oĸdH.7찤}0 'QT|GDDlyKbkqW(u1.O%<k<ʸOlD-±gp1СQö!O JIrIWuVk57f2"7ăN4|?@i7<˽'ug@r߸`3wBM^>89CsM }IUU>}y F H %Wffq6۩hG&׵a8ARх|WLMxpYXQe˵Bg &rowɤ޳Od(#?`R8$}ܰ:X2td߽|}dpr;m}rȷ`ٮܱ`c2yo'yD^1`ֆK:S󳮋H%̔aoq͈&QQࡾup߬pu:`.ؾz B╅WT,M`y@FLhj/=ۯ pLl>\a ˼ ?X oziG8Q"#Q /X-&LbR< H]y5kя0qkB 2wxO+߯X% hC0PAE)hqdܟk $i|`#=t܍M0Nw}}69+҂iY|NnP131?LӜ}{V`S6ldCh+12kZOZ ܅Dm0`Mo֋ zbU>vI@"Ϙxw)y.5iJ]@iJ 0hD.lv-qgҍ7!˰ClcQYRF~~DzCAœJ(z)da}U ~NTs c nCNm vDVWN2{4Hp%H1CѶH;&mjf76c}+EeDbC`q7AWo7x">9_ʭTamKF)FGb@jqwT~--C!Ϯc%祊 &K6-=v3M)V ў臾X:r +Fs7i})X1q\{/w[, ,g6]HMjs74LS&=)q;趠߿J_SjHQ]܂a2c|uFmpRK94,rm^r\B>QEⶋcq^`Qm K̓ @~`qWϳ\/w[bHGh*E  lJR Mt%\P vJ}ZNa|6EOhCfM_1~h<n-H^ c3&ң9yz5/y_-E9|)Z=ğRF|G}cRȱ+Ocrk 7>$R PFM7"Uo{IAKd0_3&x{SQ_A)ݬ splObb+S]3;VZB:< ^ yG qU"TkT hHƜZ}.OW)4 )g{`HbKQ#y9?L1/wGK_ r])O2hhf|*Y|mWǐ)1-D̉-GsT?%Ty8VtlxnCf J&A! !3PR_NeJCdk-D_c6H҇?딻wҶ'Ġ䣘C/F}a2 &Wiɘy2ȟ&">g1mQ, #FވqCFO~bQc+KYZk5aNc=6@NSm l2ƲPnjvcQE*Sa\4?@u/u o0Df[=Ky1lIz\)#SRNe"p4%xWTܢ޶gjB)Z5W?DH2uҹ7&B@MZ|oB)KzLziH$.E8L$##ːʨiQh Lj`o Mt;&f{&Q4tsGַca̲rb*$7ʫI-LHߙyQ,~q*L@]"=dL{l:jޫeɀpS3QF2r}1+Q8:e\u]` ~0 4Lt{A h! ܆{ "[zϢEQ}SJ:l?0x<^,Y8(˝ J;V3>):%e ʓ(>SObCuQ(˒dt[J{fn c˒ՋCޔF7G_&Foq9UT W]FuPo>egw+k]J6P;م׹AY}\_vxQ9|by&'S RKaa6uû M ªcb[NE!cU>ZSDD`^6qBPon!Md)׮jmy0$pw#ҙsGشPDenV$]%ri2]\r%Ys]TɌvs+5`3hIBr."=2WiDZ!7t{0jKیC{G^'ЛQ)Ic]2}WnBd䦸wݵbdF*AFϵM33@o۽8{×R%~c`lhIK | Aux*&F"ly #?y*蛙s|j&~$G4O /f}{0Aof2LΠUG!fFD摱`'hEi$sS6?WnoFZmB;(|-@aaiH,'޴Y`2.I9a_{\v9JnlID\$#+?/ʹ% 0߇SMr HBdfJdȳUniC @\W*2{Ȥ]TY. U [aD,b68)b)Vԝih#CI0 k*d/3SJ܍Jj\io0@%9(hLVW zVc+q:J\wOB έKzOx*09(w3y:/3١~g-ٱu P R!Mɂle4Xj&M&HonoufZJ҄ uy_5wgSTچ4[4dh*lǢI~$9PCys? )F}0phrO9X|xn({HVnhuž΁n[%M2["-2' h x/ c1 RR QuO=E%L`%js]4 Dc?&Qd/zdO[bPr.r?NWP-ͅZ7 C}ҖY^]Jb[Ofإ%BǗd<@8x,j4|VRF}E iYOI.oHB;_ kb!Щ˯>0)^n@UXh\VH,l1,ek,o+Yav*8~6GZS+=bNT60R/ ne nir6R<T_ē~V84|myp&M.ge Z1&BI+؉Tzl-ȳ wW,ÈO퓢Qݚ mZe}!omsQΚW-U)Y򜴎_o@-,ʏ; !>L&A*0]U\o)5Xy0ksSV2^!-n}IkB"j r)UOtNp /K u SG{kB8 Ub,zi/G+ZïMwl_fw?.*WrFH]` `pBOGw֜h9))_*]>'0ݪjKV\OZT4hZ3l(m)iÿ9WhaP)7@dUݾ>8o tNF֠E)c ˎr$uccrv_[ pHEϺ3^D Z hJu vĭshB&CUb3o#KBVTCÙ6D7uxn0s_y# M\GmCiq.h%Q Wr PGL1BNm*XaO "$K sB;j8#u)jiG\l$xw[zcsPʲ[j׏(l^D<E YY=MI&8 ߁S}>o29";s, g?Uh!p̏ΐdGPK14GJr}.4l?Jmjvl[p7u154:cK ` #o֔u;z[H]޾Ce,:_' C%tߥE_#$E K9=.' VI\6G&AC)5:BO,|GDysY3Cc(?Kkbdb{x? ZW/klͲzTmN٧ϥ\Iνh%+8Ouf%\Ub -ЄJ0UyUH'wOVzL0V&=*cgB^K<\[3'QUi]9SHl_$x;heswD<4w^ms!`v2u%?վ-dTUù2㙥e*4Ac)-qovJ0_88_qޣ"C ziorI7G+Oq'ᐍ^Rkڇj'6[[-BYVXI=Ɲۛ]m  Bb_|*YTNVJ*XO :5J-䫽E+,wvFX^jVV)Pu]ѯ/UI: uSy1c"Uk*̐Tu$ƌӅN3)itdlLyDV6ᑉȦWeVXǐtD~Foy5~I pgDEߴm?A|qUF:_ 1V?S!miH.37*^An0HTL>vMnf;l k:=V3QBZY:@WFٞ18)MGJ x9NuxWx/ ! K45#ɂu[Q 'nL07+dL2V\l&kKs2ym'yPB7IAKfrt$ݰgiTY9Z]B=QLѤCl86;> ![arYH}-Y.-& !!*8&t.>PƕVFqr= eKjVn($ETtFP-A`! ~- 5qu%ob@WGUxM e^uDm ?vqbYm}LNWn ' Ovآ-*||+#Bv_\0އF (ڜ½̓Snℨ5ʌI()ydTerJۜS3|*=!ڽ:l/-7qAҎ{0kV~D5MVpOpVD})gD^ zn8(GϺ%0Ri\vK~$szp(2̚V_Ai=mP=~ &{|eT5jW&H>Wڇt->5B;XaVkAls95{1@)Y^3B,~͆ E]K?n.xK^:)iQCF?C࿳&機<Wj{ ?gE=6?Es?vE H-!+_#* ᄈCΉyB3_sG"MZ) h(+F/py8 {;ul ^sTIm= 7;|d^%Ӱ{ 1 BʓOq=m&$)lS A$` >Fkjf$ 12Oc;1n@pvU:_J/sU) -唽W׵w/=Pm2,w:>H(nPJ9)C-Fmz:`n r#¨2l87Fgz vLfد>{64ȭ:䝤YGBjV*SIOAg"S0{#RID{\YB/f?*{ L>MCQxhf͜l$p_5^v<0ZĢȜ$IDB'LecU``GV?a@0v;[耒ҶYZ޸HZM%BǕDvab$i`dK6zmK_P.H߱Fk~7%÷`<0O=>S'VΌr֖ /ϱ9Or =% (ߟ1H3J^3G.R )Eq TVK#!8ɷ+jsYV+տ1*gX9gD=7*oX;Zn,(V2! h!F&7vS%^A-ztPD<顶7pSyӢW:,kL}u!3eS{m߲ެI(BQѬkk:[$L[ga.J;oۭA>\?mw]<ҧRf4z;lώYI ń3~[B " O4V-VI^I=;J>`MHO<-USgoXNx\~$CwCuR_cm8~}ow\z >q*f|iKR3:ѹKÚg ={ [7HM !sS,F?0/¶ 6~֩atG딭8X+ZtDqK[+Jo\|@1fvS\jkNW5ӑ'=aܵ}C@<  pN/$eeB&9È,sK4(z̓g?bL;3`mw90V^j&GU7a%0;vgw%a JY t01S&9ޛwB%kI4v@Ln*$׻M&k˘J6WisMр5abIB"i>uz nO|?Iq^8jIC} @󫁁[m}ېUħEd90+6dR/fK\{H:m h hlc@G]߇)HaN,dG]|K](;P'bUGլ%Umb^)LPP zX~JNЌ"̼uĶRt6_2wMi"u W # ,u=0dTYoiɖI T0|OSNcF-"$J[;UעՈ;s#3== `gQٍ?8FK \뙹ZGDB,rg.$ˋmc#ݽm w'LS΁F51SyF}Ze+) nW6Eszo A(NjseYg^p|Ҝp~w C*v#&foBFgp􄢒/'raV R@F3ZuocސeAt@}ɛF( D8مܶ"p8~~x_bm'zV6 ZZaN-r"Z;x?uYrv~=/UWeH?N3ҮjzG'BOY bk΃*7 P6"޳Yn\ $lD*OG|U*rmE)Rv`Ѵ>fݭՉjg2mˆ6ojp.=bNզҥۂ.-bjg,OpQ\1ՆfQ˙ܔriE@aC?fC|ǹAxI0sjUY{0UWQ8`!~ݰ+pŚu{| 'ԓ^(n=X 1d!ݜm>>YV=Gۃ=V, D c cLo/ɮmn+#Yo %US#w6q %;?]\`p~kŽK+Ls=UDOʹ9ӊ_=&B}K=Dr Mݑξ1d"=VW3̇5|ay{zv7sWU8w/\%n W>HmyubNv޵ͻU[j0ǽz^:JZ9z S| Ʊ)XquQKX:]ǵ 6#RXWcO ]S$09 2Yщ|Rљh<ޘ-4.x/ѓ Ao?_ȇLԊR6r ^_?W$9\(l4J`we**.d A4"tbg Z#3 `T?%K'EVv0M7.9#QO.]!Eu ̰wE *a-}'/@>h;FÛϜ@[1g{Mέ0Lv9dEπ0Ӌ-6&OR|7i^ܜvA+ AeBoY]a)5$ !^6d~pj(L6mvSW|կwsBLTfL =5cQOm%'4bDإ>-&5|5OpVt8֛ݼJKllTK|tӂki[ +{ Qt}ԍ<1T#t!k҉z1nݪvֆ( 2vBW[a'!DH/,̸,و5k-4+}V_(,IWTMk}Q8:@YqnjɓYׯ&y[k A!Hi"DK(ՐEe;& ݪi!sH1)¸Vi/R>p:S$_c8)U`ժ Ább*鞦t|0:0HY]kp%yGI8?K 5l#Tlktq@==@-(h]2 L"T;#<ؕϩ0\ڠ&2Gj2lS9cR!]h6R]\{OR{r>I9'w;XQo!5U~ &|Nub J=bow瑋! kYgaV]Y}`6-&H_}ۖ4ИFNs{o`j1c9)<7/g*Rcv}WF?a"ESLZ) =\˲kaGEco/ˠ=.&eH6C=L!K x8(B8#!5%iȤyʟ{K 0veQG:CBo`i+I奻j_yڜ e>8bCw./PIx9M\?D\Һl}PƊ{QietjC$@J`W_,Zcd㯶Ukt  !}~$hߴBv]Hml TuhA?p,cSV 7ޠ]??kqNQK8+h6.G 1e u['xׇ ml7ȏEν[L裲yUylnZ L1 my]hlSVR;CI=ʯOќ՘\DsM8Ø:Xm{ T~MPy8^N.2)6 rеQz|zqx m@KFEqmdd,HF{:: ?X ~M/6 ֛SUt]Sn=QrݙD{a~hNm;__WK#~P{o#Ynoܯ+2n9 2 uSk&nP22+"+tTB2;S9"".p6d{T}_١(=7ULLK32;٪#9 9wL&qeʗ6!3KWnkiw,c[/L^H y{@|}u;L؏êuDS%LVЊ3W'vHA!NuE'[8!pte[oxR6J ۬WyO[nR:=⵩'[!m5h>^\%hF͊4:=+u;5PIt5:(6W\5k8466L 2X67Frp`aaX+PuuJS?:'*cTwS5Lbe0}<8} kcv}F[<;6>+٨˯Q-iUd?˫|X5܃c&g)fpVsiۂ X- ;REN#Թ7H#3nixG4ˎ;Pw(9v0ox]JAh%X6B-96}]&;qvս$q=(PI?ob'q&C+q{ZI ?7ɠˌd@%4g nTpP o:`M6t;2m}sW*ηoKo5:$7FG&Z*> Tm)_°[㎯&Rb1'a 4 Q kw魩=[O1ҬzCRC@o[a#4Gc@ݞ_~3#H ӱ\&^+N@zZ4vr"K -~r G»4Eˈ,N+Q9}0%:\ljdzYI«ILu biqꅼ9Mutݚ c3 OBS XP>ثNʽP>}uf J2jkz | m#x֩;zVP 7)7dI*@7d>z| 'pNB3ʧ8Ar}*j.|gcEb䡢[4)Ankpº&G(~;vg>y QJE hYҳȱ1Vﺕ?.ˏG/|^W"{@'de p\LepjƢ&qi+1U\ՄwZ gI%C0?/K UטT…Y|&9 9tȯ"r*SxeҘSB=KoG9#nͿDf9ͪ^Rp9Z/`\ .ɈzNtu)wgx-D9ֆJM|.HI=N$,`tEr*:N_Ӳ(sIg1pR@8~gj:&o3O7ߠKHbl1,~`W]a@/}0r)9xʔȺgГ-&hVp:~da%|euU G[LLCu %f%j9,@Y5V@- :[ltE"\-yp,t.Js䦕*ZөQr>3/Cau];w?Gs%&}Pp5Gw|@LJF|'s.xmwa0% ʢi*.onH1V\CԐD9A*I[ԍPϨEG+9) uu5R欲у6u<+ bmr9d('d%re_|Jnr49{6\IZq _hǡ`b[#|Q,s\\)h>Q/QR˼>ʔ ɒϿ4,t/\<0ux5nC g\;d`Sm"ЊAss,cS/Kh1I`Ij]:i{QkgwH4xE|mzK yCE[ ybbZ2w٣73uoCEаeֱOg I< ?msu)=4qnu֯/K)lĎ:֙޲Oi}o  nHer:C#D2goy"p8Μ wO/i8Om*@%7%/ iS8wƶs,)G+I#0ᩖR1UK]!1bn[GV؞T~k %6>Xz)ڪ%J waZw?EX25_53SՏV8&}"}q˝):v.tyt;g-ːpr+wxoHZQYݪ=ceH7 1b[~2Qp[^+Jr:ϱ]`8Ƌd6]dx78'QVNrC C \ŝ6ڛS[n@g Ty}) uz7s-,${{jLcn%Bu $g ʗ|/i M#U00Ȟy^L#rHOa\8$ Q熼K;i2mwD;i,$ҠQtUGTat\/(;oXsa0:#z az=)gؐn ӛGa'Jq$p-wv4Ncs@+CV f'y=`|#y Ɓwۚ⫱V&KaM:erwHh;X .a߀,6 q;R{{6QcsӅK3 <]h~|$EZI ]Q:=FbHM1dIUmKOYdzG_䝶[RCb#h(9[A56 Saȝʿ1ɾyZ0rLͩմrKufN`E[8aEY`o؛>~nQEJ %D3u{ϑ2|iMt*ie 8oN YX/@8Oi`< d0-bA$wvxJVH.xqgn`5}t]h hhAMC=gsO5[F:K;_ز&'A)q]UxѢ:Pݙ9Z@K[!Mޫ2C=cnm_a OtOB & iG{d3+OnrЪ`ԏȑkn>i 9gs?<헜룧V,˖`@-XܼXB`yq4}]P̃O<ېt=$[ɞP w'8{"/t{ѽL9?GE#elX!7h,4aR^y1}!QtOFm!uxqy-SW +($JI^]QӥC\_fWko>C=jh9-cJ N,v.=AI&i$|+ Op;/9]GDuL,I#[DepR%nh:eᅈd5SS5&4@4 ]<:^dU]cz??8]e ;^ 2iK8̾t*YVt%9Z~c=>/Vy_ y=ȳRE ˕{WqXhqL vN..RjRSI1Zw;'V-٨o2 ܦ.wQMFM~ہ~8jgo֞!Pk/wxm+%%hKf'J0ZbGpb>w94!StHIm&TۧIX/ܮsF򛡮_K'bqfోq{ASZ.l}ؼIm==e62˰)ʗg#uwӚ>_ێ|{('̲5%3PIO'Psè'Z%b $BiPֵ{MJs/@ 6 <;⾧ -MVΦ0A9foP@k "U&W{~o5ל9`b6,a6.X-{B5=;bt8-6-H.a mB7Tu6g-gbՠПTE2x;#ucݚr/"U8rS.~)\<6Y5VZNLb:Am;N77 ~!g_WRK$K7Pt+Evׂ*:FgKx[BkDkK+iFamAwE\%=| \#ԌVWRc~[rنC?" Aoah FpYQ09*)(ˇfzͩ%k Ă_N04/5(5/L*kf%1ZZ'RUPIjdƵ}KGib0@ Pږ1#;Jh 72qjYw׳3>W4A,YhrĻ2cnW0wAXrEn#_AS d ZK )5 9LqXYBCKI-2*PGgf$dHFPX,dȊm:ND\2>UMA5+Ŋ k' Նk4C'ye ɑqO-=Dr8k]x+GY^[U87f1 @yO}$VNLNpHM8c&Y[[a9g(iZtIr:9_*ITBH ^ѮM:dH=+Q }XA9`DW L^& WkQɢ 4S QnR^]wϓ˴Z^c5Zx˼CQ9%Ɂ:lVwh0He:z~x0^IgW 7^"S/P#441g# ?=y",P fIGkx5R'P dE}lE'UM";) %fSs]%Ivx+v?B$Ԡ?ԧe N݁914֠RF57ez>ހ \n'P ޥB۫0Nhv!X)κ#0آ[ e I&keՔM Iohb3O.RjEbV~"j91J)d)tL*`k(It$S ܃bXf>` ع닡^ZbȘnM:*0@Mz +TN#!$c;6C_T)F//:4_٩C,xTi%g5ҿ%a 4d $[ h%`T`tBilٽ\FjL߰o뽿T@>̮I6,*9c$8rzK22Rb~$Ukq_ fܾ$'7XTx?n[" /v}nRm:T*3v鰇h)ը@'`d~}B,F+Mhg$ T E!`o2fӖ1SKHdA/7KBΰ[s,_b5C(MFá tGNal4:g&T}(RTY啗R*x¥O(WیY%CsF3t"zL>PzLK$9l!W?. n |3 nnMʗ:\c#pD~d%~ES=q,N id?EtDwoЯ@ƻo6Pg@e3Z(\c1A&Yf1M>=2 ɛ#oǶprmcq0@\LL V:$*pNƖox4JT>10Ƅh;Owa)-| <"v|) \%ZZ{0[QܦwU@ }|4IM`5u=N2ӆbKsX_}qOg:xFgT1'EְP `+9CHcX\0] ط\WJm媕\d%Y;x7nOda ^73<^bQPWe%ɷ%R\+RX.^,7%似&#[߽NܴUGPb`[( 6\gpj[?R5PCaWXI .]d_Td-7D pBX}oW+}*[΁i(1ghI ד'QTAT$1RF#Z W&h^\ Lrwz==lfV/WFg"gmâA? $V< R1'arªvbN~l#/ zFeݑMD=NU!D ~6qmՅeg c;yC}7~ P29؏j֔G=Q(8aY,\o~xj8n?24xl}xҋ:Nۆ|͟Aa$ "ඝ&=_›lcvW:Y׽RθtV&\4/LEG7*4nb++fl=~Wۗ,{/Vu=_x[>9Ӌ.atOrm4{OjL[姩=v|nevC-8"Nд΀}`X,28&"8*rOI{޼$Q)΂X,#ɩl 9~YW~FcױtAX_x$EUh_iݽ~ƥk'Bn1:usc~JWWncN'g[D5ɋ̣',彏BC& "igv?-K$v]Ys?:o*-RIfo_⚾:E]r;?\d8+erY%p]Kp)53SMuT4~JIv;u`` Sjpw -4 =͢R{7E@l =Kΰҍv- tř.R$BE]$g`1U򾋸b,Fnڸd<gvlaa  YwEf+*рt)gS: Ez5g/O?ߎ]D^̙#Fg۝4lZKe8lK@)cF]ʛxID݃~'I:)YpT,1N2י8z;K.\Ê}hQW3:Z^,Pd* BG8mⓠesp27DW$kJ8za᤾pP@ا2 DG-85Lw~ YvrY iLY1EFO(z$ZdWTkpraT<@ ܆=\jMZ&@;gNLрgdy5E0go[ґru}Bg|olonG;hgџ؃+[fY%_E[7FHERm(~%,ֲ*dD(K[[W~?q/FVU[׶Tf~g]!-*G! ryj"{:^JW2'z:;XmIF(0:.lʢA mSMp:7LdqlдZRyZSIS/H#a/ү`~}"6U_aYFHFL %.5Ai 4ӇB_ Ps4z CgrgL\e@l9ooe<7RÓ :<|uFhVC@vWZA{`'i+M)5`Z4" \0êLIGDoh[i-V SApWo|y4~;F RS{!4G Xr5˾Prob)wɘ>?/1fqKwI@Pi#U h.r5$[> F `~(M tkPYg/™06M lxrKC#qI@2ޮ8-^ϫHNyuНH[߼N+1|NEڷ] `Q3_a}OȕuߒҝٰMH{ـ[P/6:bM2pցfqPDJ߅}i5"*>`g%{fV{f$;ؠINKn 05upR/x,X5\B|1?ֿl6%v6kowe?QgnUql.@U7pLˢ#$C<X gNEQި#5gఅwDʐ=+ qUj@e55/. L:DZCvqm,L*_ k !M1vўlN)vd(<ȍXH%x[^O@ar/LoI8Ծt 65}[P-}zkq41C#Ygro]mؤAl`6ubD{*9/kt, 鈒UDg9w/x~ y" &Ƈˢ4ga{YO>kSᦄF/9b 7:i(D$\>u2d/# 1%1u.0H_c^thA9_t'J2OL #I>ZZx8%՟ĩ lbPu@DD- 2*ZHIiuZDmiT@ N K pH$<<ް-iNb7Xٱ=4s4ʱBg1húv*.!I:@GZ~#Q reW n (PvI9-ܑԔɓǴ/u$gV=5[_~Js0,5Ŵ 2!5rpWBfZ&m\r(փBĦQ#/,VL$z[[`+RQXk cȴY6%PKirYW$}u pXZm^waag;JRX X&@1=,w#lp#ܑ w.bXW_ۆElg~1qT6U,0 K^Kpj]ZA#2~~Y&bF}f+ Qg9dÄwWx2F f-yt$.I=9~ጎ%0%p}ip=H% hx>7 8&/ېUߐQ+w|'=sh%M9晬Q&%"4 RuEFAd@nvcy/ZmZ}Y|h`00U*D csK?/ʏ{Oacs8 uTK>G. ]|[ AhyaQT;c~j`V} F~+(k5wY|5BS. ထ |3u'rH~[ Q٧L%‰sH9KނL? -* F%b jP{)Җ݅Δ~ #`p% #0Aƴ}돑i[l,*u^2!n<p)W@+;BL^IKj($g]bga:FH8:>G!Qwj>/[n!mk&Q Ο2FQ]šeǗ(\6NԺ)a_`6;T v %_YbnfNE[T'75v7lh3X6S]Ru+R.iv]*DgJS!BPӥ(HK~tΞ2NAuL.^M`ĜGnz?tTRA"9!?RG߅ /r_Ŋ.ͺ"3wF@ *:; n"60 Z? 'I z^rBoL2c+4_ژ E) Lϴ{tceaOzX3T,f `؍d~؃UVm~\o:bleBq"+EftFm HV+UNEZ5-sqo Y=ZzPnʇz&Ґe(X?&y=ǾMniFY'l'}LF=S'lҦi5u&qcVC_6: 7K[{٦}%I2DO8Z+Y/^2L5/Z+@BW_Ci#Gb\Oٯ#+ .}^bmnLS b~=k] ,94{mk3ôʢDˢ }Gq*|5@?<^ UZ}iOU_yjT-U#~AY=:EL^!:gj[tD֙]c8Ѧп1N cV*;GoW+>.$0" 0aH,e>U$@%`Toۦlp0Wtrx &G5Sn.^c?sԻ) 0 ~ ~0?a \O][7||9@ݠѓʺ2 eV!Hs$myh6xSh9uqfB3D?-$=T6_z6;Gi8%^d4j?X團(7{Ea)9z[mz}yNN?A\a~VG= 6bYEuZЏC앮zLI\a|=Y6cl I{go.ÞQoˁ ]aU$r6[W~M1;0PEuGDyjڋ\nRUae|@s%)}P-oF6d^{C6/Yd9XioPDiA1sh 2E,7q܁jz>JwD̴Q$w<>ZWa&i=/wu61BU9b- -]OW̅(^`c kd`$aX$#G1 Ukv"|`W9j#P> R4+ y$%}5[XPL͋ɸ4 on\X#M6]otuDM-R[i >3ZxP jko/<b芦8I(ՑYx뺉B\_o0մ#2f*,jE~!0fU]8ihkiԦp4nwԅ"GsȫD+&E).^82 ,<8\c*_kk)â[k[ss 9@1(Wn(_A:im•ݎ )7brO۰yւ#Nzߠ4mҏ#;t\{?˔cMH鬅Y@*_(vIf H]jkr%E=W@"%HS2*}%Yx~ʱv^a略j`FnOf VH΁'(H )fHa|ubf#-#НxD TE˔6Ѣimۯ| A`- <U=18y(g *8#7pǬaee: DFBgbw4i[ CɢJv릢-w HeQn6qn lmhӗF>?:6#^]c uG&$t3s[j171bWwǬsp[=lI׫,#/}at+ ťmmnB1ԍv, 0b1"Q>NpE|C/tA 2`9{v-cRzwmT&kv'Dv7*x; _FtHXJ5C u6&WҌ~WHNꌗ#1ZX UҰwZSWw75 =֌% WDv`0ek3W>.JⳜ\ŝ!P6U@mNwSTKBp)8ͥ,pK1(V+)Wt$ԓ"; Wy:?cí6C^ZNT+]0 1Ldkɣ8^¦RY^BM9I&ft˘ӍM{u+\#p<1lqiHϋD#;O%@#ɍ֊}e8-AtB}Y"gx5Kj#: RQ`uH8W5]cXt_1Rb.V.ݢM{cb#(i1Bp?,ʽg w~sm&?F@6M3^jx+{]C%R#025b9 kZd|Xm(ÅZMV_U] Լr͛ (*D/{iKCyV0= xd +fPs٣r 'n꺊swJ$%~|PY. Y%}JǏoY[D6G6 YD>;B<JKy/m`~]{}V)Bkqc>.gnhf ;z/:e у>]n]gEf$Ia[Gh}Et);IRQs˓:[4ϖgDrc%?DY![z^2o_FA1 FsC&E0V(Ru/ҫ~$ 78[j.HeKhTGjoƇ̥iB/~`F.lμXK&^UN||޲aO9!ҍB{|ŌI ov@)7Wu9 sfhuF`R-"dVC} D5DF)Xĩ leo|9)鲣%J Jn ՚fIDZW\; ݲ̏ $9xʙ [3`Y#(ҧ_\w r?z8Hȑ9%*MȾlU(Aث݃[ y'0G9} ?p%PJ{ H ?b,D H1ŏnZ,.sL>l 67\Guqe$z&wG)FA/tQ;J/*L=A-9,^ld s Cwӯ'ϜDQGӱ `J>(,CL Pn|ڃuWJP!h { vO8uj*X˙3dI9#gVgꄚa1mo#A/oɱB._X,=Js ʬpevqXgs+X* Jk4҉w> \˘.=+{L#`j6b\Q&;z Ud256R)B%uۅ`+׀BP܁q$d qT[b kn%á nqv`,^OsI?):K{{}tf%yZ %,2: 9Nu&XUb>9BzC*d T+eۮXЖcz!{I|uD掙>OUZCO hz[sI0w|$5@Ԃ9e?RǗC`|17JPΟ*0hIuXAYv^'doi3ICcoV~i_1'G)k`g=NpP?H='l.0l P8: Y潽#W$[Mm rviIs9u.3nYJՙ !_q#%t&^(cۥwM w~ھKgHooWf|(&^Y򫗈Ahsfedj..VC LWO?9j Bm@ V;mf%!$0)H27$(J_ɦ 7'tC CB@;ETO>ߗsc x|%U4~6 bD@AY{!;'я]VabOjY۞Z&5FDv~|I"\! 4Dk X!3)"9koVT"uqRoe 脖J 0dX\y*,zj+rY&7(?:'Qڅv圎+'!"HjJqa\Riivet 6XhEdzřf.,Yō;ʹu"e턊jq`KM~l =? {Cb@;o*M0厴!3XߦڏFbS]F(K5MJsR EQ(LD-)8Sgukm Ͳ5184W azD>#b*K!Qvqި[jWw"xWu\Ա\Fm8e:^3K@{BM-z-`.`;u ZG)]S؛Ղ\E\q@L02 {6a͹u?'´+,˪PG jk, @q4i-.#TGXNF7qfS_@$Z1.*-۲KRm&B>D7a,(j^Nj9Bjy\ ],rebA:1X+xN<H{To3WP?x:ʌxt"E^9B$CV\#-2 \) ,bݒOrrQSY!]gT(D1+ۭ-TݺnEZ~[kG:aA{t/"?,i8̓}`a 3e+Yy*Mp& SDWP0ULbɸ[>+h]HzN@`ujXWWXKm鈅u=h[ j^Q@lNϛ 6A IAm\Mq7$.&ReNO;Xt/~7t;91@q*D$/g(#fH >ρ_Ϩ"r3pW,D=|ؠnňꠁЂ%ď[oᗗur].oܽW4l=Rr [YQ"t=7ME >^)4截wǼXWx B,nQ;4d TQy:j O˴ $8wUQf ۣxw\ϒ1E$w׏!) DM 3t; m5k0 Y<M6|; ֔j̷LUoo4Ya6YV{!hphH _ n%1"#-1w$W*1[/QL-Ψu )-klio %Aχߌ@ @W%>̞WUx}_(ؤQΰ$@ùW=bI!MnrcY=azBKOߠ$# n7к8RYO|a4"!K|+ĵ sy+% =,San{^= Jw݃Hiz7i|e?⿚"چ!&WQ(zm2䋛ğrH>02(>(LFF6.>=z5~TZ:bC y xS$ʳ<f'o&h`0: z(WKa==w"w n17`ه mt7.C\EI:룛ޡGʩ;$1+}eLy"Y\r{̅(O-s|[HF X&8nuOE͈(@ >UmĎvbdA{$Yr@P:j^cʼnO.!^r`S Nu_VBƏef NIV81}M/>XwN2t.a;s dL`^YY1>ljf5*XKӾkѿ/z]fhgv`1kPGF]qLB:R2.g' 0\H~93{Kr;D>M$vn?RQi3e܋$Ŗ2<R}+qf5IUu.HKDq0jL7^iO}3 Z{:҈6'N\1z=P9@>d^&{c 4> `6Ӑ[>8]!]R-470+WmO,t:">'WB㈻FT#3BOAe$5W%Oir%{9s,A8UѤetN=_woq-igo x7:RLdIs+Pǐif† qIgj{ Y{IeGPY։#Fr}׾th m}C8ҽr!ןqTգPL`$Cr;Z11g[ꚴ%hT\8I*DiB*CyjىTH/S7Y܌IS"uդb]]%LO8JT?Jeԛnb[l.7JA{<8^㚎Xϸ>OjۂS_ȯP%/>T{ȑ(n`jȥmOWHw| n-|SǖZ.lD/.~%r䗸$$Q֕_ ~ج^!evc%=pZ iQycgJ_ oŘ zY7*7j|gZ/=Ь)lϫk.GACZ"Fi:l[@gep_#sM#HJ K2.6h91o! 泚CjI𰵋+dwiHXiw:I#B+;DCkط"MP-V2밈00(- 0%IMWΔxO@ʷcLLz`9UϨWM+~,Q8YDC+ɈvŽjh/|ҟm%d>{襍@j`J ؓ%zɵ֍6T9Ҧbt=qzơ}%~\ o#bv A`koS<]yϴK.휉O2"|ϽDieLBZ]C޸O2}C(.a,WٝM\,Cװ{'!Z9\B<,QwUqTYYpbCO3nQN `m4Q@c17}[$]/l@1Y%!Ĥ)L1W_ZU 4SY^\Wg]j0391@HUCՕxOi6Vbۉ6fbpncY1J 2M믕9ױ{XMmүr-.(6 f)7acѬ6dMvb"$c >w %"Zwi\KN{z)r4dE#[ D1O{Kp}eg][iO*bW ŊV{GeEe` PzgIF5yVS{}WrdXBqsuH >[M($,&*DJNönq 9_"-РInhz܇1 ><[K͡2R3ACjWT?lI!M۰]^YQN;0)x }pnRbc,v'@.*+nnL2az'B3LB C!N#kq"cAž|3[B»i#jlJ8aS \9~-HPLp6ھ55"t89<'KQR09{b?w@o=j.41 &{&;h%_{SʸB"ˍ"g-X줹Т7}y{mJÃSjQP2xZqm% wq!9qM l{f:  VdG!Vp/RZ,dkF=ةW4'եmT::7IߦA䯆a1U->:@E []b?Ygq-T?۪;jS_S. l0 |; \\.OV@3v6ڊeBs͙*PQ 9,ew$P|ʼR.QF㦙-[lWF܊tAe޲]OGR uu|E\@P~FJK 1Itm'p)9m>:Hl (IEC1@w @2+,5*`='}cQ#6p0M[5ʻËN2R.O3xuz`bbO~o =봩T(GS:b(0Ġ5@ſXPuH= KǞ/~\`R&(.k1+v(a?fHIYbR9?YSj2rqG" ԞV߇(eR^V8C&!Yw-әH{[)fsI#jxzrs>' \>Areϼ>RDwVQf} Jh)ݭ$" /v֜ɈBǾ$˹4|KyI30d6s캩3l3aJg8dC&;zI2Eb1f[Q?;3'kq%.Nmc}V@,_|Wb& u3*jT0՝@\.. #up7En%/-H}ɖ]D%zh]6 VVnR|sߗ"s7ETٹ*&h~t_ `<3" ˛ﻰzjKK=E3| Oy,vcVț˦K A˵ÅZ#R0,4;A+vp Б{`|PO'/5FI&i_bqPӮjA"[AӔ5FWh}-kjˮB{ckKӋdN%k4{BVy% 0+."|"¦/~F,,x ?jd>ޒ&"cp_ :a(2DUo_J;LBdEL%UҀܧS{ZqU9~=p=ӳ!DIf"(AZ.CkO`7U"M˰<'jDZ2~.p7fW]j^ɻt?X'Z)b\0+c#/ŕ.<%8yU4:3|zٌz9;T}=̌xk#t3q& }MmPcrG7\"*ZO _t*b{tܘ|`ѩ=VaJJi#C9Xwp S'Ky]L,rV]a.fJq}c{uAYf<By>C4^XW]7p )`=tei7kҢc+ w_N[drhʀ40nC>@!yJT( &+g*𵸸p}rD"8(ni$Ho$hqS3v.+eQkW6b_GE@"s\:Ij .JvCFD"W nuKs&DrCppaVBO z8$ݞ׊;~Oݔוei\ 7 "2C<%qG jD)pcT8P\tG՘~\!)3BҮK 5V<  s2L}m\o8Ou]:ss,JKQK7T+.K>T&]XL,b ˧sL@#Dٝu6[ EC<"(%L裂4ΤRxLQ0_r>Ԩ7.P (҄Zգ w[ @/<ϧ{˂5"-*Ol@/"!'] /̥5ͯZEʀuJpJݠU@5 p\)l8IJ:!AFS4A# ٤5 rh~*,;h[90&^P$7ݺS l&a4FHkhX uL[(! %յ쿈{zKD?3|F{zI*yhCJq#UBLq-[DbQ%?p3߁N3԰!az'h 1!Y>*$vU*ԑ8$,E&4v*×]N{d(=fc#tDsƱڌU}~PnBC,v%myk5_1|a9wmJzڲ񨽐֛Էji΋dg(0mȜ^sPH4(Kњv3NwLM`jX2wF<e2te]xD m%(ma,UzyťS0&*|nӱ7=1tEK?8턥Z䠳¦PeO\[nlčqudS4ogZ?%wOEsn Si=?vZ&h2Ym sɶ P{]׃MgQNS.Dݱ'q{ o*{ㆌ9c$$Z=W *Uj zqk)f'6FwʺE7FRm%A"aЪT!ύD8L,izeEK2 Y*b9RY_ }XM6|18ݘCd< Zi=%еr'ZLt#bulu\D3lџ6ЏƓ==gFޙ/A ^!XοlCCv|˻xJ iѫˁCBz՞FknmJܮK,WπHTsMگ,W$8z͑H,mkN Tfrç(n7)'oĴ,m-Cۑ(  ;wzB3ƎJȰAw=JD2:'h_'YqCB_jd@PF=ٍtAoʋjzh_\~5߄Dz MS.eyρ wQdz|\XdHs00cjXshb N 0u!yU 4z^C}o^~CGm)O.3cjKR$mQtR$Zĸ9%@pƚћ>>iB'ԀAo[`]Y$*fcO_iZUЭT;ޥ\!j6՟SHi_ s58u^:.&d^=k=ֈս} )!XanWMk.,ZqC.'DԕoVy!maz, ˅%u]n}bIPӲXߣxcv[(3_b(gŘ:I;S}L/Йʺrֵ@GJ_UrI&m\z+ݡhTQ\I v|sIIQ{nkPBW{"[} cKӣ|1"Oy)QDb=<)/gաBɠq)@ig{3wX,lVnf~,JVá(85@g»X-eQ-O 0s%PDòII_qp07=ǂȦy L4.jߧZ%X ){/@=N_eWRM*^PGpK ]9kd0eQzC}NAkbTDw@>~b^¸ Q;ǝ_ P&(F(ҭo}lizOf<ſ7M½kO21O [~_SW)^p;իGӹx^9`jU z?1~%pYK CrcB٪ nv us wN}pIȾi_aU!x;DqN=ڨîwa(T/eG~9SOv ? /58czl(*؏..DLl xҞQ±I_&~6gUB5(rOP| IYt(SXF~P5 z@R* )*xtbow՟CxoRb<̚gHiJ:"RP7l %qd͘PaK@\r:[!$GgqT-/O7H*/Q|ZVxe-_n q29<[ů7jYa6Z)SU}!liW[Ʈc)$^d]cq 6,bgI\:kέL!- f^@c%>+RU@v%}p+4z]&I#m9S{פc@v?DNr :K]R߿hgG%| ݑ{';h56_(|"-!ɋAti Df^b 吾#Ġ~x{C[?r^sLl4gsNWNS.{2V >|\PlLR#& |7R̭ CS;wL;ʛ$xO:[v_+0e.}F*Lwrz8Q.vӖB7:tn3\Zբvݿdc6"iL;{Z!Wr]L?OZBcNm$:@\!f0zIU(m={!{닅p C_' D![Aar]Z2s%:c="񛑶;chKDtv@X)IG҈>|(S\IX `; uجƦ^BсeBq&.VNޜ)΋*e'!̞}? U~xU9E%o/t7QH4j\ }Qlp6pp~!d`_i鍮kje\ZK5T|f@snԦ(|YJnX&Ex/TK<36N ۆ,_n iD:YqD xg 7vPAU ^Ony%l=jFEWuv[f*Kv:tՖ~k $u&lpxQ&Y}٦ąS߃x#-Ԇ`T"|g,3l()2k_%?kDy+`rWn[C UO\S5*]x@8TS7h:O_+ҏSв2yp 56C>u0T /)trD鞔$sS+hDNuWEIʺۃsJЪ )oKԥk7Sr=ӞGUv}*W]Z'b+z+>h:~%/55Z4p__ =G㫈(o 5;f9!}xI6SձzW}fd>:gt%&!q!Xa`˸tҎtŽ(D G!pr+P@(cIQD-EykԹY QmPk@ -!) Y: Gļ8Ky t!zMg ⃚iOt7H|jt&Ռͳts!Op_IC\P [7@ &8#l'ZyvcIRfxIhT, 둺7muC&ߠ%`zjO KH^yZk2N>2+(T g/Y' 8zT 6TV# ٯbfvLH̖a]ƪ]%< l*_fu$ut$Yzȕ#:̝F&?77PX!;]A&*;]4ZWq|}^zm}GH(I|rb&R$r;M=80#̘\雂䙌40Zۢ%; ŀ|, XcGˑ ԧ#U!b6e|W:M%TWcq[:s!Ltk7(L{|fg.gXfo-oq*oG75xj3z[1Rw =nCb'+t:rPST l"!2xkz?ڒQõ {bGb~-b|xO0޿+-vz07$9kuzMytN?س֊{dJQ҅6)E#h-k(Лxb|*F"ۗ]$։,6 r lݾ#sKG@{jaԹm<ݵ54)22yd( UiXܥZi![CC:q<.:?O VXb(ψk]n˖Lՙ)]rᦉ5.,z-lmV7ˢ09pa? ':p{(uC<\;|o/ykgMyw xH@v½o(NӆP6œ帨ဩRE8,FPV?ܮ/ ^f7atb>ޭZ'H:vdY0fB\#r.c}„= *ت@ZJn/0'N؞ %9$i1{ӯ<9nQˉn&6t B鍖~ mD"6rl-luR.gzzcVsOZh$-+W9+"6DBdy|t'Efy8P(t㌮p& c\S,_q`B>r*qN#kxЈ W%|Hښo@m0GAt @9\EJ/F{QXST碑!4xX^D77|]aCXN.ps3a)ٲNg 7Q1I/WSuD _6j<\+vj5A `vl3^?Լ\ApoUMPZԷ+3=o1IU¦~31 " ~aO@m$x~Wt=0j4Ce95”Ovp`fRuQl.>@ٸ9:1M;K'vZv+ ެ=o 1{t .F,R4a:W])P4臎X #+ކ|aS@@PcTv7l+*?OS}+o>i7٘ 向F邞U9c3պ8 5DQ@Q`´B$iRs !:fB &_o]^hwϕ p?LȽK<3OD7: g<-+:Aܷ0+a23xUJ7=Eks*/U-׼ >EKP7ܨ`#9ɵXN_~z^mc6܏8-^:šVY|zAjbjrv,Ѭ4tBOOt鶰k=′ D]X + 3^5JӖ㼷wW%ա&)հq,6թ7*Iip ̋$M}nf9ҳW8'Bẉ-׆e:yXGb6>bCpZ7\#d1Ydf>̷}\}–q\N<@@q]Z'FX7&IZ˥AfdL0v҅xdNBC\_[fzMzqtZrS/in娍yQug'd'@G*/gEM5"\$@w"%In>^\m-^hςh B+kvٲN K=A$.w>θ턴%]3;O/v*7X!)K )Cs)ct?@]Q*#b@X!(GW(_5''P1l< G$+?8Y?l!M/ zPw$~5!ȧ{Wl kԮpu(91Ml WYQl2֭#Tؗb5F+&MaDGۄ*o݆uʣp_w̱&['vW22'qDщmh?d6 O{E1J9(yFaY䞻J80_b5: g/K7H}Su",.vT0G(|ZީY\΋CR o,L@CîѢ6c;u3"nCѥz1CKQˆ$=iκTP yNcgCN&ڒ:ے2L0>Nf{ Y]PpQWH)*uꅸ9__4{rx24`df t?<5u25ǯB(w/&)SCZ^rbׇ!-(du _'p,JS%N;Ih861^֍kXkMU9"uF Bz5 `ΦQzPÖvFKsW!)I}HlT(X4>Բf<.,l%р88> +G¬k@꤂Z@m9țӹOYT"uʥu.6+eMx 缕_9|~-Ur%6$>N uVΎ{*AZA9z؆m OؒX"a4v|p=mF g;aěZUi mv܎UPTp*f.it~b /-^{ h\x9⤷#ymqCaaC2 / re-ݘNLWWDFT5,cI/0:6=GbTE ӑ@; 8fQ]f?Մ/U/RBK>a~+mdEܘn%L>P@Z퐢<-(=Z 叧@&+ى "T)iǹM1i@E:>w_R=rt5-0&qxXWd kNZ ɕVgu=QyV$<KX Ш9-f!Nj&zSЦN,4-*zg-cVq`A5~fcWM=B xEYeXee}<0:i;hM-LZo*-Vӻ@|O>踜S 3%=:TB0gGӬUәk c9_9V941 ΠHcQ@(o}}XL? =\ uQ*P!W翰(Zܠ.sӛ:7B;Hl@&=xr<'m: \Z Zl-A(`%9HNגӈ!\Rq& \1cb=w9B0 01 SzX~gU[p{DD7dw ªlHX, SrRM]RԦcDY S+??pFMa/0B #DE+C̴(ڱѤe 3`L`I%-U:Wr4Hz5;QB4p2gbwfT>ye@7E?p_boiV{JL" #cX9[!G,1RW+S*e$ TOZh&;@ oz\䨆tԘ8Y,ޮ*})iIAb$P?i2=! fP=\U6νzkV;I H$9W%-)tvSdWNŠN[G m?2?__O>_UH\WT@Ӝ4Ǝ Bp֟Er/Wvƍռle̎"B~aǂO랆Migl³[qT9j1kKX*&iiF & kL|l 4D(|17}xGu{Z J96stȦP>R$YC1u<5&$Nr$ &vG @sSg aETDՖw4&0|s78EmzgXnY8?:gN=~13d$cT71 [9}Ԥ%WPN ,:4|b,zŝSWܼu5fFpwvVJGd3lSH7#u_SKC'tw'A[4oiLό ;֊νs}N?|<1@bVGRq|7hH.P TcG-|OyG<-Dӳ7g=pKtTԃ/6'\)LX MJ,3/T0#8yt"D=90uE&y&:ޔh[7,0ϝ(A7-6Oc&RyuCY nn%Z0|BB*8 ú}9( ^߈m3[F5e$GBT'֯H`FB폐z5LOYyK OD'LDwqldќ}[îΡʚ{68DZȉhw% ` ;Ֆ)uM"ދd>SW,Ucq W1(;A[W Hu|2hJ4aD_Uw6*ZVs|x-ZR{΃ ?{Quܔ:nɓ.߇ʪo]e (bzꀮt"tJm w$3e4ܹ4,WP,\s薂EAW4vz?fA#To~۔W;IEbZ .2!xPxlqk!h]/E-"ٲ?t#)%E*w 6';ဖۉV骅i'#pc.L]"!XAA/x!tYc~4(]@PAVp|?1nrkpt(y2_Ϣ+4\M4UJHAL1 Y7[|M9+XAB/W-WsMtQPM!9``RO0R1L!D8NquNiƁ;;qEUV&d7k<67f뭯#[6,^smqk}>µUI̗%Pg %譺dcrP읫sl+F9:Fʅ4A3)I%i (օ/Ҙ 'O>+4h@iGVri]E:yV.ٯz^4yJ Cgk,X6g5BCM["*?OhOp fo+v0}?wpppϫ^RmNhUB,'xyŃX]OL< P[wM]T_~0ezseT1|#ZyĆAM8u(+Hf|!:]Єy[&̑_H?6-"u&թ!p[E3x {!x* kJb֣IM ~VU!iR*XmBOvb.[ qZNw䗜 U6D(Շ$řvÌ G_wӡS~h̫>)]őq~#A{ _i|\auӗ0Up4LۧԺnLذ $; `>nd )2husMPj[Ӊ M6X>1h 3 by7`G#29*C,RȿRDs -/vMwGi/^ aX7̠<=r]<KboHn^b`֓`Zp ڇB+1DJԣB q#7n?J>pF)r]4CJp;: -izt-_KMI)/])|JFz8Ie:^H$hSdS#`NkX{dBH11 +]kj*Zǰu0Z)uCչi#Dq|;sa5~x8k'nslw!&qk!*ňUb:*$XgO"^Jh 3"eŏ-s̴8PD.qzj9oe'Ҽ0-=0mwWxo;:(ehoNmAltI5de$; PALj\kk&e,^(ԊVam_-N,sq G-> jʻO&8`ch.,4FRcT<(慠dځ( g gl["fitSYWf`9dOayR'ϝ-$ˁC+3R'D?k> XȯE;\Q"h^%KݙHMRV|2;?^xVb:Xr܂n,|Q۔ۤ x9GA 3 5Cm±߉!q%UazdJHcHmElWS*'"r֋fKް V){ʦ2k塊DxWBl?h \[׆tu^,j)Kvj$:<I=K $ &BnGTBPvj y.!^ewM-hrf}%/ O03+۞]9B e+\Tk!%{+]6lܜ p;|y콧\w?NY^]3 S 6v4ͰٹE-v-6_K)k~=A!hO ßxt7gא;Δ(bz߹"՟\{H4NAZcvE],#hk.ouQ*'Ұ3=k= L\VF13}0d1`NlJs8@2Tz ơ|V({^s䏭; hZ. t0RTu0$:ʪ>ޗi6ELt v30ۤD1_\̑2ޔ*Op茜gP#;@'(n2G:W^ErEY+ڀ 1|=?E?=7K{oGW.vD4UWTF97]@n"_(+-|=Pey4DP[\i[uCxmĭT"sC5*?/]OPZgemr~q UXp:dVX V&Y P~NI:N&ҼVnԃBK濜5Q_ӑՅĝT^P@>7ւ1hW'|:2g_}+vӉˏ0=u '~S5vbSjC8c@6ŗ\(_i)) yg䋞el5x&O 7} |=\p֣$h Tr 4ӱm=:qmf ,taRh\{=!snܯ$w=ԝ޼^CͶ^Šza7Զ$|Yѕ;zx"cn:hGfb64!TOiЎ"Uq|Z?&M*An ct>](66_*KA]GDJ@)SA5G8X'bp /)ݥᓺ f ȿjC U'RURnK̿ f3dc nF!"Pre*ZZ$pzwPyu@] [SÑ4, PΎ=gul>ڷ,g4wy8'T1R:UE221Cv"8.ф<]-&+g[j~LhMi |)%eqR8.r{p2ewoP- RggRS{GI7FgQ9x˾vAOܢ93Wh^NaOQTJĻ`&t]vE"2h =vnM!Vз%\ěswTWq)55m&^r%;,awTc \٦ ņ4 T Dff)*-' boy㦲G$1?Ňwz펍V6b3`棐qO6 FjmmIjym.5rn|&cy Y \dLVm:'4/s a7@+.$ο>q!"t|FC. aALtw6iE*8PߍBkíӔe*ycRx_{ [,HQ3I:vE0#TT:qKv^P{*Xt=c~ o0!OI_ GA}iX0){kٕ'bwItѕA@McVkdWEzF1W"DVB6+C! t{g8|("z#ʹ&fv9cp|2eˍ6y.:`m=tÈzPnNܡ5:E]Q֊u\he`;b5K}tܣYHXqm%+?L U/Q" "S{ : dAtF9d4,ҧ`6Wf 7 k:ۆO 9T(&^" mdem]aSb3h` L;^/]dSDO#{U32_:PxFǁ Vܺgˢ”-W=`!5=g@/_∩~sJuO* ıvx6d↹2E* U;Uvɲz>ja655e:v7 ofw +adkAǗE6pTefj2F,cwf xUPw0+2{`o(#tKB/32A.grZPXt ()9뗿oPX4SMc| bw~=_Mm~'/6 =60FLS.IGp[e/Ҹe:_6kaZkaHݔ M9u6?.tsǨF2sseu  "S]M}#tej6hMnLy\6/BQsP*VFg:I$:ڗuxlByP5ٰvxb>=a+a7dӯ&ot6 WbꀐbpD~9H9NLY%Ԩ d|YjI-{e2]Df=(11d*E/z[aγ4#&,ͬ8dYH@VqGςP}Ź&%1{1uN‰ [aOww-T$%kHFʫP~%,lqQFWj4'*(zFe+n&M㾈 DZ|iX] / ;I%MpBvۓuv~Fb׹⎣co17=eքAȕaҦO+9y7 Ցg&n>q4Sxz-!J@ʳb2E֘kpc) ޳vdΠdBImw2+I Die5EЃ?݊rMqnnMMl ގr3;t>{6@\-w UzB7b8ӝҪry oo/Cg:(^GeY4IrFkfƴ>Q| RMnzo@¾ӏjDr:n3 Bn50eo .gesm;)G2>ӌ4w][/gU`'~m~NYי5.専\QMjKa%t&UoO$$ƒH7DsVy;(^(FfuռZ[߭4IKޜCwbdOpGk[p~oR P)U(3+85IP`qh_>0N+u!ѫ-årgsg |f|a G+y~EWFeŔݠ-5!J~(1>O-:0z~ߋfU§Eb*+!-еf++͛_#G0gZ|8-]Dtv"U=+$Pm _:tڱ HP,yiAiC9R ҶNV U+|}r QqG&́rDY\ː 5\FFq*bLC=nE45;uK:"*<"wFxj.1$`xn)s%:;?a}g#xL[ 찪|č3[Cr)\7hи*]%C[U&S1`0HnKFtmGz;UV[. TdN:>(rsHEԿ: t/gDE>\7R!yުDG/j隢Im}A=e~me ^eS L昍J^:8^y.iMM <0wc lېZ2*$\P^mY3EX@}jOj(y榤%G9,`X%5=R@r390M9^` R>;_ 8. 5}p8<&JS%Kfy;} wau/UQ"`a:N_,Ub0d~K$33vT/w3 WX@s!"{T~SW4 r 3\i189RL(aɔku@ {_ 嫳|mFX ףd/ow@<5vW߼*+$ ~eP/ǝ%ilsOtPV?d ^,ĎYQ%s[8ZO- Va)J%IaBx˶"W w;Ma jM. x 2 gyoԳvH~HY!- !MN%-R#)T̡Xo!CUmn@n"CD+Z0]NDofRk/WiP<ih)uC}tH Hj ^3kJT2(VO/RK-wI8^.]'LӂPq!HL..\zA#y2U d+ŁG=2CaPӢh :J @1=uGn[;[Mū!@OUK㧦N`Z+CU Mtnp蝌Ǩ/ FM1?tb.J!wxl" H6 @%3o;>r5N]1w})Bh5ȧ%J 9*gu#3;zk5򊘃> 0ihl5U1T8?}4F bNkH^OAҔ6?!#G>bP (C)0\S8)1->N=D=<0q E4 !K,t"GLxדʘӀWn=G6:xR?ZsӶ_iS\H D/?-Ve9fgs}$CmJK'n GqBek/ӂa Ry+ #,yZY C5ˆR o# NjgMa* Ͱ~Kf)JbT&vc"XW/Cު)lDXv57AA0C_k2@'ZU gQ_q2AR#{xqy2;?np׉sǤםFU&0/gc,=UZю;39:ks`f60{&;8,C@R~ZN) A]ꦮA.@.Q`EMu<Z1 qK(j H3,-wAXM >*e54ڲϱ䃀M3~#'O*F3? ߝZycw8|ËƿĠY3"*ϲ.y>_\殩 2Ezo ^ۉaIeDp%L$݄})IYt7fr;.I|1 [q9kl9lNh_!Q ԢE~*xiъ:*8|IN+ң\_-if$¥?>?-!@3y6j A_`XxFc+ DqۜFrmk_.G7SWνV[#Y2 *gXu#6tݵMɭ'XpQdbl >p  'SэRSDZ,sXgPnk#B(,Px f0WWjydxC.8 荨ok寐iQ5hV˶5@Ak@*lH3vc?5q%rJQ8vCu(`& HA1lon=:߅,(c.x@NaWȮnЬ?c&R3'/C/o媹|,w u"\phMc!~ zvq(m\ͧ3cA-8`ؗEsEEB2\5.t:>pf[ߙ:5kmsa++K&5u *Yapnx}j)(h7v'GPsH+c@W4HfX .(Y(KlK2Iw>V#8w%ia#-LJoQD.O 1ЪoFd@;:t#Qe l%|ɥ 9y>7E Rpū˝+4LsO  ȇ{BS̄Si+(F*rpi?.1nPF-y}q:dAOwFoB7WF98 5 Pk!bx#ڴ58Y=9MX<0\8oI2VG^MN DQE_he~naG"Nryʊ`(^̯X[i2舁Z_}UNIeh3v:*Fݪk([&*[1ja GﻄKP14WY⏮T{h Qy'v}4GO6tZ{g[[q<>y%dT){$鄴< ,`Z-GAh43DRM&9ړ@P եPN[+sBs*֠քAaToLm~-8epgb˕Fu/(^86XeɍKfm_Xa2x"<1nVkk OpJɩۤa'*j RFJi]͑ĴXQF+ heo ^}FуT.9+GQ}!sduew"qQCQJd8Mxػ^!=:p^B~mꖒcwХL*IF"eNeWEƍ">#f4! S1TMLn8d az HW}ܘSMtQuLJ\ G U =u~̫VV^[:NGQ[6*Y+HNO9ס ѸB&W4T0J톛.Vga֦ٱJ]P벊O;yb̘ 7pMْ8$Hi<2A"N$T> CDyzq$]\ϸT0crs)Nq$;9ĂK`h·Ml`WN&DyP%(G9GD6:9$n5#x"͹Ӿ W$>|ªR >^hJ1[:B'jcZ YÇ1gգZ(؝+orq۔*nyTOjYC!a~햰(T>Mr[){$yVdU_'TS Ry>PkO@3K8࡛҆)^^.Ô]@jW;toN՚25_(RUGPKu& jFH. R ӲEq\E*["ʘ ހKv)sM0OUfpY3CَgĶ1pd8:}}bឃBEňbk[ ޙ?0o"ۅ{5tϴ~{(;3&4YD/hœk|Wub^Ԙi sFf1GG95cQ烼B9ڪlz/+W#24,jaRz H'wo3¿eL$RV`'T b'`^?j빫l`l˔5Gv6Kjn>v+\+Op-Cy@㹿2Q QP׋fy:}wbRrU'97wHZ{Ws ՄyBiB[dOnk%QnĖ:eI] [-] RS#,:Q9ѝ)|h댑|,Fa77X6ٶouH':謷K0aW" .jѕ|K=e}Fc5|7=P3aO%/?ŗȮ)bǣ1H-5Udd3$s3`NqX&|{,`2\H5-L b~|@x) Ud-|$tD~|T16e?[ h|@ 2VN5K3<]U`A*\/%yJH2~a)>󗘔}enم Vru-%88K,~\s@c_f^ӻgq3VkIqSӎvʈz91`I#impq ω=hG( vu Ntqjqh_('IimPpeQcPt!d'|4v]{{WXhZnwć}{a!We_SfAw}Y5;5#/jpe܅) pFRt<\5zdH_Ӑ>W+`54Bs>HGQҚgv)!ʨ48\d!T}v4ׁC76o^XS)cZmɸNXUKd͊f/~)@=ڗp "hS)~C]hyq! /oǔ.^Ra>^ȥlخKmNɧD(*̧ 4rWbwWt?_ qo3KP i $Mɍce-06þ",ʇ ]^ Ĺݷ~ԶLwQ|8ԫFn(*bxrVgwy!)NZ1Su-j"|@~-e.q#LW}x%ѹyc_ޭAzˣg7<WG;>roqG#ntmx $5ip3`.8 UʱrKFԤp!zEOW^{PޒCP`q R"<|}4՛L]ʓƿ,n <ŴD3u1hv'فOUE~[۫CQ?k_3CEV8Ō#,i~(HಘC#^IMGr OtOg*sC!wj4$fsxיJԟl ҽojJWq[W.eK\͙_ۀġP7j%h޺&D5#5մY@9VK'NHDvLB8JQ|PQ&mxI8#N20tY맯>{\paSlr[wpXkd$qG3H8<<*߹;>AZ9>˘B2A{(-@Ӣ# Ng/Rߓʹ6̋AHHS:Y 3""T&9d (ع8I28e}Nl=ORv֓'>5 )BE_h&PC@(KZPdvh%Cp UqPf@-2zh}ݎY#sn)Θ\<[gؾ!Oܕ|Ё>T+) .1"+? \Ð7)'PfPM ^dҖ9!d[~kKO3Q̏bad2Dez\yEMz'{|CGԓYo<͘uvt#e@NAO~{ozp7uܬc@]-0@)D;нP>xf!mu'\[ t)3>z)I8,֫a3yB$)vF\En zy '7L5Щ뵐wc(Lz^. ΈڨFu3(`'XyA!9@RXcux3[;3򈮾J!541Dqghxn_] @pT5hMD^'_aSyːَ;՛jUpptOYgt\ٗaGJCb+C[(2q *U[yHl>JfR+|$ۏ ⍧`"ё0!hJǩ+||YrP:r}GҵaPʀeEu>CA+DG QF"5n*֋8Cm}=*e㋃U7b]>O"O6?@3LY@8靷wH-;LT }<Ҵ5kU]IY r)SeS];Y?xW1rs9Zϑ f>QVpZfth^*<VNk ˠP,myD x%i_v;WEKR N@b;]@W3w֯,=V@Fd\t۔> BzMQxe3*l/ƿh88>P\2H8Od(3a)XLQƯww@&*}|:Ә/qv@RKX՛?fmAJ{r;6%n<-[ն,(.ԥ$g$4GRD0`9ibG4igd(X7bA-olc!l?.EVAF-uޅO_tC6L Kl83EOs1$sDEJf  ~ۿ{ @cu>b*il6kb2wu[gqܓc&|GĕiV ferL,w~t6αRp]z]X@z[fi-i "MzFgvWU#ad| hs7S,)a=kޢ< (+26e5}|]Q dM%GT;eŪ9 2Ѵ$+.FCj30y#S@mE8Y ɞϓ(=N)By`nÔ/B6eq24;} hH&˚!"v.bG#_{!ZmY1r Mc9b^^3/Gk]ˆyk\M;zQHZ*yFjRɀ-=#, [}l76&kY( 4h4*vsIF^MCQC; VbOƒH@2v0nB -;6&q^. @~z 7AlbyiuA ٸNtl_Dv2yj:r[`IJѝ; L(ku|!%4%35tXN;`;:n.ඥm۵]bUM@xl@9J/U7gc:o$0@iہK㣧ըr-<ȭzZrɫ"E.K% rgvO|ylOgڈye8*.; 粬0{Iuc5y8FYjn}Ig mʂ5|x02kKDfHAj"sˏO,Hׁ!5`o?Ō'FVQw5L)̰tہ07;sOT!r8GlrEe:''Sf&7• f@T^v 8Bn3dxgZzW(pJpfT٩wlE4pJIw߻UhT ppab-+ ⠭e"zk XnWP7>7g }WOC[2Y<[0Bj$`u?6TJ Ay h53([Ink%uuP S$>GhNL.,N1/Up ࿸ PQ|+O#]cyo]9ڥUj3,vŚ_1r%(~L =@=PZ;a~AENLGΰFK_vF~ [/<]OFd3#D2عIIOWhϖRbeT1,=> 5;O<kBg5wK*7u2˴(V[(G%`uMߺ9\w({ћgRn}PyJ=l[M-k e/EmIA9F/cl_~gKUd hsic&`@$qC: ]ap`К#DO'?CY#|*Pv>7Ϻx6;Cg+SDIM) r+zE_Yu~̴\B9yJQNOhSf[tA^\UOBw@#KWT'EfjC?p̗ un;1coοՁiH[x(W)!f LLBIT~{h=e;QL/2 Ө1e碬i` -oz2j@B-\ ɲTኊ ݿ^­ؒU`jp } ) ͢46$Frkq2DAvktn"hLPB02 - Avb~\*7e&JU,3ZgRk#fLdCwT\)u~ %Dmz2bԀ"ZbS `۱o=7XkGُL̈Lҥ$h*D0@} ܸ"GOʺ>o#bۺ79u5dbk|BYZQ-޾o.4Xrxhӧ TxClo6=p6XZz뙶9!rEhk2D8 0=@Ȓ/V5*U"s~g3B00;P铻T 6fAIM$m*z2-㼺`te5RN EK2;PVIqt70_ WʜE+TzJx^`c_7L70q1WVbƁN[R=H!-ɽ\-]}F~q*\ڻd@pdq13T].*倈[ m>Z3z6Ș`iuC ;vPKB>B#mGR .蝳3Mbkϳ<'ћbJ>"E@MoVwM^2h KӇNaȰTS.udZ4>Z皌/d@T/ 6Cz\)ˉ4_,n|*72B,\ kG*/rs@:]p7'8_K8gNJ_1[+i !?(X,l[ 1)*@Ք(*;Ӽ\ԊӋ?|U@ @ML~'Σ?~Y6˳%4őh))_I20~ܨ3;_q 6(6R,S#O:- Ee/OVD uPaNT?|=OCor6/) ) b"v)(a`lHtF5&RZX s#^MёBlHi fW46bZYj OS@ָ,U,VPM>c&XO>3mqU\k+S&a-Sn,fp+׍;DXwVk[Q{~#Ѧ5Um(q?[@*MiqdGqe~3(|}1 k~'xG,7u4ogѪ&;sw_"t'GFU8uekB+ޙC: ғؙV?b@DtXחIG^F[.";h[3Q{{rߘyLזJeB1& $w2M#5o}Ma|PZPnPl)dI/H 6jl!gYBh٥uA0?ӈƈU&" Z/M^)%~PuIgEH7S3ZVl}{tS!L.J\*S06dڎvY=ai\Bn?ƂQ>Gv#I4m$@}ﴋf9")(stM׳2= Lh's*<Y-eƒɖ$ `fwqv,fp-2:o_g7ې n峮4eaK^Pk ^#\?[?^*.v };%Fy/G;6*)Yw .挑%YGg?|Z+ȐһlAK<~(bYAԪo!xuX9]`O]V靅O i "9F;I2ÍڴWlmJyW)\d_)w3.6]>y bڇ"Hi:4EF鏇>߆A?+fTR2͆BC'#~~:ɽRsZx_]\]렼 W#^Uh{B!j ޫVeS.H׷(ȸvZij]yVk"DĸV;~<萨,hO> <`;GPݭ/-%I"kKjWX:Į5)wy#H |pQ|(_>WnJer/})b o v/N+ zU:aC ]TRR|\=֙-#jco|um>r/" +iK3$\UQ8uē#h7z{~=sHrK,/aGL ye'Uk>R+¶$͒dÂtt.̸f&V\,Fztk2g2$m_V/7]Wn2ZpڑV͌b ~j)4sںo7:B5oۦPk=Aoh;O\P;i+nB _&J@S6Ex&zȏEBd7i%]>o1W@6KݢX/=# Z ,皀Ňu:ו`' euDd-K=8E }i'τVHL="l~'E'ؗƔ4V]sIB"ŊOd09$NX2XyT22Z 9T<l҈>U^gVy0QX~?nRҳ6*[۽vfn*>ɈţZԖ z'5kfɸn.ʏtv~W7FҫS I]BPmi5Ich+Y kov¢ȶ_nb#*ҞC=TH_T>Ħ^h-gCe\;DMgaW ;yz&w6}&d0뱠zlCt#b:vJ\O8KdQX"W<7chD/G5L<ⶢJɡ#ڛĠuG5mcD y/cQqcJ B3 ^%NdѡA=ڶC܉Y)lGΆ +WNAׅG>ثwGf/RYt /T嬍vEPp|mWx6#)ֆȑ@c2N6..Z)O֧ $'bּW4LsvgyFM'F2]T:p6p}6t Dʞ@|d'EX&BsN-zFxpPE"t_+3:dn.TR(6=drP)Ok5 EwE324tEyi}x\eS W o{ҋKP^Pe&>+G@A@{;EȄ%aڅ=aT47ZRD*B3`\7mptoSZ o4dK(.C+z/+MeV$} /ʒTG#+ڟ"Џɇ*Do 3qn1}bDMV+e3xkh5&t!!syfm3,X7A sygo ŔgNUǶn6LLsnmg̐+֬OxZg,Dx0 @_Y1|Ԛ\zR`tǮ+O6k@+?Ȃ/k3^\ DR|Yycp嚘S/"ˁ.F䲕u[6kȞ:@TebW7K;,i`-*b;@#z5`fx̮&z=zt<Ջ9oFq$'@>)ۏ{DфE8%LyG&"nq&:? szr1ؘ@Q"IKv$"NGqKUzȖ uF^eH<oy(ǦIEWg{i}w.T_1)$ ^OnkEṁ@nY'˷v&v+1 Q3`#4X$qρqi, ̨=N([Lsx,S͏ژ{- ip X¿HRkE2Xr{*ढy+󕡆5_ؚyuA3~V~Ih1 3rOY- Ld$@fS<]U[{k70JkWX6 jUFhȅكixَ,eny;栄Iz U&йnnDM^2XmSyA  F-d7 WҙRNLP}-zA5aoGL7(':xԴJ>$s '+ Fh|57@[WEf{hJIǼ#C' **og@;y3J =m@ I|~IJ8׵y[$yl AāF-\(ƈv`?R*PoRfCz۽_6ut{F*nVjDaaF f'oCF I8ԖQs#KB%c(,7!uk-B B^Y4r.>--3L#VӇܡ{ $D@QR= 7BaCO[2ۈ)BJ⤄FIN[G,xn &t Y+B@=\brPJp=lvBJ _((-#OTҴFt7W1KW.³* ?T^w5߸U9CҖ0ih>ƽKaBS:'J]l[?0:a+2 m<{FC&-S_'.gl[ʄ!ZfiC^EtFY&"p18RVn]e(^qjy{> 9k}| ۔^ʃ'\IOLmv f JxڎQB3uE=8!ϲ<[f?q<`ѣm`cMe; p R`U~mfT+^ylA t?=_wZ [IJ+{_0T*k4mws$z9w* TO󖢼A/Eb3 J%y!y"4 ΃af) 'v?ғ7Vn-ZM֡KqBlqF_"*7Y`^n>'*~;zb+U>d G1% ]&ԭ=}d>w nT:#jXHQb60p' T]Ru1&gHy$j Y9Xe8/?x͍ZNI!.͓xq(KYo1LzPMϸ;GMbTA:Ȉ jmW;H=SH+ `Lت45-fߵx4eA?Wa8#U`lg^:d-w<ׅHpl-)^iUaANQ5O0fXqeJsVAYUKⲴZ9U$܇oz+9j Qu%(9X8D0-'.0 |j7װGeD&kz]xђynhQn*zuYVvKICk+cA !jwҟ}ӛ #L[`[*4Nł`{ O0'܎6Ш,X0T tg;ypOW;"0}򪴃"`xc@yobMݥkg4% D-9#SJyN>W*bIȀ5aǢj6!^ģw SL*&m3(!b+X@퇩i6~Ac"~xIGzèA $"A1OQ߱ 8\ɾ2h|5 sӲn KfܝÅ3oS$g);c3[Wy|i ltN@E/7!2r^CS0:MBɋ?àkcT^|<~rla|Mͭ%j rǘeN D%+m GӚ3iʪYŃ$n,'Dq-sI`9FVARI/BSғ %*]yNws(1]Cp]ŷ sߺ>TKM[h@1>v_M—WäB=_x!ȇ3p*GTQh* hGxVu y%fv( :Hձ&3.ă H Z.]q#K XlJ{h!D{VȝL<4)|_SV%A]$$)`?TVZ.cF2b0/QI͒T-.mڣF1SE^{+~ τ$N1 D˩jL%}y՟2K'_CT Uqkdo>lw6kyAKj2nXDlJ5wӹΙ6~ڼ͋>(;^3%CY>%6ċ̚KF40 2W3\4A( sZ R]K#DS\r//:7[+f¢x,BF^uZ*fX[1c " 9YXT0iADQoY5T^? 'Q?N~虊rҞ2d/q@;0jA2AKh9:"Km"*A% ,3-2!E`ڔ& î1>l21^cvR"?sgq-RK^"Z>q?M ɓ7\ ,:]~M\A%P١dHXk[g~{ld2Ջ]*m:(n?.xˈ$|6"<{Y G]噈65r786vmn7JȮqҹU" z4J\_T#sW(LntX2>%FHy T Mk>ƕSZj0tl~i@؛3Fg?>p)(P7PA4qӀ)lu@Dت;]MneS?[肻؇wwb2>0Wv ̺sLO+sN% 6Ra EJL\9HHn`*q&VECA'g=).P=Oӣ*伜Ue Rl$b\Qh$p8g9~Ǎ~T %_~Ѯѓo`NtN]Y U)vICg#<8˯LꇧQ'HMv7xfG~# n3-*UcI`RM @'4Bt%~!hoXOixcaNy|}Ċ\Y./\ipNu0 踬xc z.,R]')PF$~ZdGT.YCOB h}{'?A (y.L t> &+ AVq7EV> zO ntrMSΗh` hxWk餰?L5)bs5kAe "uɹw&AH  P/aΪM,W)0B<ӿgM/E|HZc˗zd2HRjʹ0l=,Ax:mI<'"g8=8K]8s]޾@ҿ^" 9FY隀Hۅ]$DQH^â'+,7\|L|lǙ .cl2 HOsg # iI!@3fҹYUJvӅ4>߲[ohל^ b+g;'v Y( 9'$WHs]-:r]L(\Y ݶ(RIv|4讁 ;W^gd"c!'pIfgGC@nsıh[Bi:B wT#,oCLT10"}4. X3LhrwF(~[|.pF j $+>hj{՜z{"eN5FA+8F7Hs#&nGESb?E @\?@CǺ RֿJhI\ɨGf\:4ր : uD6>~XLc.rKb<^dBUu簑tjHmj`"QUʭt*''oLw4J75j ߝ oӚQx{s*k맞<,倧jRK+1)y-ޭ={~v\~Fv2j^*Ȟ1y2DE/,7a t% ?}FiתNoɊ>SrrebӉ)$MJxs_E0QX_x_WN%Fl.E_LX,ן?ޏ5 J2(|;n@=rxk; RWR^/oCUf0} BaL$tC.j|+o(-"eY6(zS >Z4hSԻmD(!JL.@џj])E^1{ Pjj.~VU"=<"|~?FC 0 IhA%;Ӡg6 u\"U%̅!"hG?5槞/T_!ELNZaf`63ړog&7K31ZuJ6ؙNY~!c$hUc ;Ž!Vق nWA4D7Em(uTަz|ɴФu8A[OXsGr[#wAr2'B-UQt(?=hH]Z>c jb_o\ ^YX#%X~21')G'3,Kw}MҳMh[r g-RZ9٬WCӉgB`:Z#%%03%A S Rdӱ\NEKѭEd$fyfE3`&`3' \i!>C![d.cSNxf5qMM`$Ϊt{:洰4&~Wyw (H:kRijb#5Bdəq0Z||zc98{hit;2q`O>Jߡ29 䱾aK9V?!]?e`jd=iyBP雏s ȩG!V ?gx8CCacs@A)3ĒBd2iX<(UA󭑢έ< v4VX;>]& kL:J/Os`Wk' ,dq!Z~g =sVʡ&uok$Ҹ1o}Wχ]Yх)3__cfKP!J#< ׂFe4Sw.ʠdRhؾ3/ 2ѵ]O %d} Zk9"C ӍKI=nEl8qlduuꏖl(j5,~T.V=(cZv09Qp՜|$51 ig` @ZSxjFE&yѣժhR \5HìcXG>#zTynTĴ~~DRLHX#yggNT:O+ L:u!2?GmBB% 3t;*@ڕK>'h\\[Ѡ2K(_x\!y>?/7&TOыI=I-FpU6cjVp*skƽZ4Zoj`(8DcBaX5$MXB?/e>ټ7bFHXs^ y]@e?TN) 4?nLuG(@qt[.l+ڱ.Q#A1bz,t&7Yzc#ꦿR"JHE>uǝlUD i}bU#4%»Ƽ*@N.Uv-x 4T$Ե>OAHӞG?Z;0y|Hr"av;'u(i H+%QcRPU%8L4]v |@qKL}Nu/NTBf>~ɘldօ"n^DX,iFԇzxUmU@ѡOZY}4Fw_σ8 ɡ rg)  CJ<2|_eRE@j,Xa4>jG1ƪ;Ƴ*w.R~kdu?? IWߐ¸x44_w?_f)#ǔk7?Uf$--+Tkdb #.2}AvLjNeDd kͱc?*ԯo‡h9%"bsse轓hOXnKo瞜^ͻq6eoL%I3 -+  Bt3ƂWH tk3Q=K:'0Ё`vy _J-c 6'2223l!}S9茻 YX.VjnfL1 %w@u7>TƖRRVۥdo9fȥ l;(VY=z 74|trKS`|Ӎf:rv詿^ ɾR$!ڍؓ .'8}s֘o"W$6 2%8"@ЋFwPۺ/VW+J\$*ӕD]5~A ;yuXe;d{8zr~@D~.}YnցѦ yN!); :۞ŢLtq2r9@9wvO6<선pΒn7qfʭÿB(Ea8B 4TR4jׇulT)"R B>7%pb՗2`-ѫ^1 ߨ_hn/7У^7Vr%}khLUwiSH@-"nl$TKCCv2WJF<)edf1kFnuuV_/RP.F,R Kk/5ژh{.ԳZ2"5q'rQx|G~&z7<9n~՘jusb_'):Iq!>{`] ]c짟y@fWL!?Hy-~KdBP6خo%ՎMRfMBTu` b7؏jw2ՉoEkm Aps7q% *ms ll^1TF_yN`#}VR/s[ ufeB3#̖2^ KfѾ'Gx/R9##J $͑Ҵga\ݑq~֦Hd xAKىzu~5X+2*: 5jG6gV;^Y*u=kR~U-ü*Ln$:݅<4ݗPkd~Y ۧH"wOPYMgs8ebes̻\6ז9g&ITNn?U2xJhwd};8٤p ^xwqd%Rm6H֫ds&{L^MT8 u⅛3IRyZSCQzv)SJ^kh*xTB\C4_Yi&5x:tm,~4 _X.zv3{6"3_ SeTcnCrޕknj3"%5WB=YfI>J$8D5ՆT=Q@y Fۆ,1u'{>ꎩ-Ѫ1m~@ W+ҢaYy_*3uNC fQ !`|gY ?Әc1-MS C˪~$Y ϑ썸Mr&w/R3f2vN1Uάtux>x>Xȇz9K9}/T7&B !"wY)XOF KUTfFF5}ڄ*1Ad!ap_`"r"fKU;JZaWWP h '$x"оH`#Ʊr%ͭ߮[__ŊNڢW}͓zЭdl,#0ZyK{cB]< p HS-@Ƞ shfURY_Gyx$={Dߌ;sJ<#sX8h„`QwttCJ}l# rJx' M(d:m6-trJvaxmVPRZ,[ֵ|LEhL>M8k}~JB5^mYlM/XMg\xsF-{ө|1kAj|?41C7z5bGV{v6q19܁pB' KMqPsB%sn5/;Oί/;Qr@*ZKޚEmd.|O~3h;Rdˊjc 3ďJ7嫪Z6ണPÀX7MN|kUO$/^g/1z#SMBGj]Gs#=>KQK!}d"&r)l#LX*` b 60ݿ#M )p'EӃ|ˑ0_κSq,/sPZDHz1ǑzT'ѮmhLJ.zr lFIO}= r.b+i=qp! `ܚKs hx'f;ˮO *gZ մb>0^yG Ne4d|ŸW$ǓjE4bٓai($m;7C ^K({ȵCt`R|W:^׹ȗT_s#a<:ޣ?)NV4s%= #DGLNJYB䆀x| %+|u Hy./Ԧ| |QP v@"ै.a8S+pi;_*".q AWDƮ B 6}i A% ĎazG /T`y (C;^lltuD*?-{NЎƈv^Q!ڋWѹq(P$wE5 '6E=Ϭ=)fkט;Zs9͊֝1 hb,pخPl.[gfs/[>N[(-UGj#/OF/PABr3xVn&!5z{k][ ]i""7?4?h6Q{,rabN9.5L38̒3^)ڇ AeeKFջ|C:&v7 I[k*v{{FBsjG`jB8M#}1w >GvT`dvU0_LU* /(:{4YFjY%Z^Ɛ)4Hvr]7sU r"}{3ρj֮"L!ieA>=3TEF,\<>0o9*8%aC]3e|Vf2N|ۮ`CJXdL+3h${',BTeZި4~Ds_hR3@Ϻ+K)ѝXs[p\`r5,f wWs,X񂇲!ӷ/?[ّ~Iۚ]q!2P3ݶe𗹤j_ 䐯9薭 CM!H"m\@$͘\gR_ ~ y=j:)?I[ZPJ t`inKaeGd{vFO ~lism1#3X$(zodqya[qAj2+-3I-c CZH"0 k95f1ƽ6LY+aoj>5I'>?7Һ 5!"M,7 ǻ_;#0o/'ZUT+ח7T7J)EvY<#n$KS@KX3G e ińseǔ{82Aْ:y&E!(#l,u!&yS>)š!.g0EA^$~TR p LA_Y1P RWi"vՆQ/+ir>~(TPԸo~w0BuN}*>2ޥo~Uy)Ɖ/4Z$lc<%0b:ġT33{ %_w9QYtHSEY ƒR`Ftu@H-),bILh@{n E"v]yAKƉi;h۹1 ,BͶƖ¿\dߛj99et$ U$aMAEK]yY]\h\shPlz$Osxp@nsP<+Z8="5~_k.٠z)R8t<# ["1*axH%왽؝QLUI b6yYv';O\陏!QdC原a&Qm;Է,PJV#0G`j Z}W|}f{xZ%KYw@]}Q~О;6W%Y/WzGF )7cz]8g9I~{_<ޮH?3wv@!zq\U7ـr:P;TgM7?8,\HV0,/TVЩweV%PTB隓ge:f}=2m1 bᤨ8L R)-?}MIWض4IG1ɾMU._>[̾oM'3gE?@[R=>)lk1k"Huhg)CV˵ޖXxQ嵬umPbRL`` >V;<^ `](ԩ< ŀ2}uͮUSw(/3b$jcNL38(ҚRUCNG_ΑC!vxZm8tX' f3|A)}|ˈn~B )!7{݄K" 0 œ~^ <)yS"%g$Lg tZtF |(G@d$=}sJb1|(pڳJ0>R97ߧ4ӌ}RrNYYEb܃70x @~46J^3j$E)ťR%E.^S3#P_2<4 5zlM (,'THɮ:Ia^ǩ A (vSF3l}x_=%BBG1MMz^n-<\K0[tot9~?גބ<ϬaRN%T̲v35IݤcYdS?-HE |R|5W>1y61,M HXO^X+}B:Bd' W)NmV$5qvVs BTN|ޭ\2Cwxʥm~?u'!M[80F»UBߕ +i:8ry!GoP~=NW3^sԻϜvquR\9ugoyzMuo`L_QcIO?:Kj0xbzNS D2 4$<=7kab4s@Xo_ wHl7ߐvDI<54kZ*RpIrNy%1qm\pT#Orǔ8tqk[6O[SlW$VP9=}TI$9z+Vϕ+ep7Z*jFV'e/Y2I\<;lgW/M#Hz~>̟_FWom-|."˺2q[Eld=a64~S3 T\( \xv,W&cs gybqrf7IjQ*´Gkz_?,qΧ gyi쓈>wGu/)"55p`x8Lbkmw jo4?c%ß rxh0.RAwʹ$D'T=>wbHoˆTrXf B֍ǟ {FSOPsCzu9*@ӸpߤN5)gpnֲxx1",Q/'!^bM'UI\D$K\ȼ0Ղ7u YQê!i*כIܪ@:HS k&P>En|\9OEUs4E{GR-zIɦ h)pVv }*#7R;sI+TnyCoc$Obh:i-Wz(kԴrAU .j+$%d|cQ G5ý5EiK͡ ;f+Y4dH)$ t [J"@zpzz NbP7!-9,CĨnjƠQ`!>gʑ3`aHଭHHw3{0VW;WV8 }(zS C@" v+mc/ ԯYJ7^t ׷ N †MYWuMR|6 _EۑR79&&!L(f/.CB{"S|7bDW]=1z?;>N2ܫT9sDy.8B`Px8EdPeԋ^(be#*Ŀ!{m ) 6ZCWqLk5;rie>1d':pG HA=be8pf%/jStLVCH"ܡPr,yɭkwܜ%2WZC-f,eĊl8y ui%=P Z+DQ7jaشf R HT@Jg + mچf etŦaSoN 'fkB{){X}C#Q<͢:Jo!k-[^:@@1ħ"'u̲UZWy(m}kBCɏE DBY.XdrJkGV[!X[XU3gz2X1؅TSN>~ELޠoqj(umWTvԻkRt9?\ k%oSXgf=ntՎ;\4}Gty_%2ķ` ^CˈN 3T\a?biװ(EH$53,"g4pPT<< eh!ϟ&crZ3U`Y'#*U i@E,@ !Rtn*iX?U9\؇<߱W/tVxЧ¦G*$|6BC>ws+PCڡ|rv L'UvY |rjQ'Ͳѵ^Ѕ.fdؚ%Ο_B厫 .YCD! H9Ι 4}E$h*ӆ+=:}|Ϋ!gy=8>m6z@CPg ^ppCcTLv6liXTEqvhGF󇪦~KĚv{l[TrBƷGU=~\c*V 4= $*LHC,;'mARq[#?k Kq#CAg'>$??X3M N::B C6)T@hPm@-G Ԫ)Kт't㜨x'rq'8]7u?BjJɧ;XSxE4,jM,)@zjT5}G|8ռO% ֶ*"y:]tD0*&d>-պ)"n"T-/o['U9VIԑz_z=䢕M®M~^%{&D`l;s.TG?Մ0˰$sy_S%9X7MVdTGc_`-NST83_M{q 7:B'h8bÉsC#+hA:c> xx(u)ⱙ-8MV٤_ 2ONeGL>_z%[8ѼUbǘ(F7\kEEW2Nc]wz2j !԰+K;JBK{ܙ*4xnjcP :kdzk B5MVuf(8HVݑ>Tl4[oiv4tPe~KV;Ʈ~MQ&VYgGwa1 XYz&mW^IDk7IW|?qTfv(^7 {?mE^DYzW]FU dy) }} 5=!6mGϚ A_X%Y|6ޯ*v,g2  qҾ yp9{[_x#,i$=>o}RBI2]w iAzof 3ZtJ<ďзCsͯS)vpu-DGΐ5 mp|G[NOy `YxfǶ.0uTNN=/ #._.^8<ɿ>D~LJnHkp ^f_I=ě`ɇOWիOAq}rā14 ^-C0h>X"yyR82F&Q&wC7Œ|V}b{-I79 PZd b0`z88}:iȖyS yp>u3,/iOg:W)vr H;ZV˼i'pkP'\6F "~匡<7L. 9xI‚1 EK瑖|BRas/<'(}4 &g~ml)ox/?3Y^BI)%5 Ρrґ/:&k *hb,.j{8Hbʈ$>i +ZYT>ȄH`iSGQ,n(IgMG=1lkO xa eƠ8%/@/a0GՁ Qda e&ƄThUVN`cme)VNa Mf"Xзd*@,/tRh ScY^UCseV,'Z" /lhsfBv[4 (,V}wX)A󼎦PM"` PU:Ny@}뀾.;{a QfgaM.#80=oת\sxsBv!ia3hCwQ e5&c2ʵ(:l|8e0&_s̀f!^d8Ϧ"|gqac#pE`sAcиd:ʲx\/#Vy57Q :f7P˘ԧ/pPm3Zots_?Ψ:2ws?:v]bjil0is~5CrUqaf iIіomӠLL6bϣsN^ِ~e ,*TZ 2Q+TPmt\gUxAE!W~V61vBd8#~zDzp^`1-BTz,8NܱK/auu_sk߮Jt:  %NDnUGڨvv}娢[\ {Lc]#_d2C*1a9/.B=J[vmEt4k}tS6Se_!F @uBlSc6UY"Mꠙ8Kt&i/13 ;8Q=X0{ݾsN6}4k Mp鿡lܾTS.`vYc;oP(޲U&=cwE`C~ #WSZҹ ŌXI"tZ; >QNx9 EtE6 OYE$Zt57=Ni_TEToȁ2R-Lu@,zf&癦;~s7A+IsDhi7)̈mRfɓs'ާ3:;})4ls5~&+ᣠb|]q0"*.`l$PS>*>\{f#`̻'7{& "^`/iP=LN"uB4Vu"ǒԴ6US_+&?^H뷚+OAtJn2eR~"5ȹV&"҃;UnepF : h&:J C 8) M!Ѥ{ Uy>>rF|!q3nD5ňo{¨-"L>|}SW3gs~`нM)rZ&] x>Hj`M6ќh4@6|;>*Ӆr>q4'fsSdV4$.#ٗ#vD VּSݘgVYSYɁ@ßtKtV:,ox/׍ YCz'ۄ17Y]SH-qFxH5RDRWֵnxD`%6`*=Hr^CmߛNp* هv%+ꄂo${N,lf|kvy*.jisptvX Eଡ଼'R㮇"\U#"E0|6nBHW<L~B.f=¬va=RG|)YB!pW$2&%D9<n4%1 t{5Bφt76@>:u$'qSҁTN//w 59Pvҟk/zõZ{֛m AFC8̀FPp 8vȲ'/MMr̋6)֦lCzcV$SfY=]`UNØRCAeo8{`b恑VP0fE f<_|3RNxtVNr'K}ֈ6su]YVp$]SAG YJ0s@|s}2uˑ|8HYcуU+PGeYÜnh{H0x/Djn"t Cv UkZ7Jk.u8${Y(Gg*xq,µaNC8I[z萕CNؒMt^5$F9cR/uj:1c[O; }1d e|DݡB$3 aP/cއ*fzڗv/YK4(0\Y17즒Q}^]s*vmk!lȯ(Fh˅7Ii\Z9L2k&}DLcWׅ#O(. _TzoؓBFQY]Dv{KQPƢKw틃\ %ͥp.|ny-lqԅlӜCyw_v\,TQ>\ ;p*Kga9m}dUj?x/pe%ވ[lAV?~Jn}"lAے4 +|Hl$!OS?XՇXC"%~ &WtodWv|kz#΁>fܹ˸PHF7``BӠT։ FX%5L].$x,SvNY GAQGzfop;->G.;_f-wnZGG^K6yW.Pxln$Ϋ0kud.NH aF5N e!IP;Qw15%&@@q`%^̓49#AI[ŕ́%+3<̔wS䮥?yE*7Åmx8:'<#+ju)^I@Wb{Y[ЋsbÃj9+Qxz8Ӹ?M@,PLW08f؏ɨ$VyS j h9\q!< mIT2>C8:EQUv@$ 8ԓ}ׅ1WMBQ qS  e-4r0rlb{l*ބ449(<-YgƟi7WyYOdm=\Ӵ,B4ep֛e]"dQGMJmxpgY;1clLw20b9v>>Bxt&0#(2%fuEn}h{Χ>,2[>mZQDB]ųh{ ]L-$l8 oD :d%] 1De~DKI{`6N&*Y/bi>J' -z)|x+;_fF\"w .3Hl_HEU1LBaM_e$)#jo,+yˈ/ssa (Khy< Z,2T m)/[;8}@%+Bf&fF1WkURQb#Am%q"AZ ţG>6bi9ГXؓ}Il󫙞 qL`4Ϣ->Ya=7YE{'A͎o$#:.<ʭCNl 834{dC8p~ג.\@Mn.^ܐ)h~TzSa3Kvi^P`-Ds!9 s19N'=Cܝ) mw_}$̏<"p@AG4m\/9v+kņY Vue2Lpn8SB-#2Ѕ/0c a h̠T%PF.,z=Ҍ[PSV^`Dףͨ#t@Уɂ!Z`D-oPb*"CS\&a*]FMAkgTrh%Q[N*@p2^ )O#}~ Y Qh7(J0GSaKs/zaߊR$Njv_#~ HoL]4*hQ?ӃL#:=JD&./Xh擨]ljU. >/Sř~`L?[ R` Xend(U5Dna]gJ. +\skz1S&1ɮ%SM8NJuRXԁA_֛Q'f,Us@# Aʤ- I'mURE"8·Ui!p?-A7ͻ5WDrUj xβo$u= Ecy`A=-[Ӂt Kd9r>¹=sBNaZ qLB;`ch^Azr?K3fe7s*QKpt"&9wTf|}A.ð$tfWl, Ay6BݯP@})u$_V^N~/>ۂ( R* sVh9c _=g\o-\|$:b I_}+KXQ  =op1J_fDiKR]{;lA cݤr#x>e=Ƞ "r*z7-:QK7O*g%>6|chs31Th>Jdj! s={ϱ`PPfb˲ o>YFCd*x n~H!կ cG;w`tB92ZaPM1E] >%x+6""g(&h,U(y~y5-" "Gyi8s '(gr $|N`pP=F լt6+52Өi3m( vLt:2#g D'ڑC&5>.Sjz!_)TW-?x3ʦh6>KSIyZ8t }BR~EDuuWv7o\닆-m- vbhiJqCG?7EیXzӫ8I˨̛v( U-%n]}~cyYS:B |sETϸ<>*qj$۔]eBQQZDb3EPj!rruo&nҚ MQDJ^q[vp×MS$П^!0^"h2*C;3}7?zE!V(0s>d룥BSkW_0+ p vJZCAY5I܀3-?;Y,ֿ}~-BѧlLAK%dMusEcꗄB5"]-j~?`:gWIx_#լ3cҺꁷ{ 8g=tc8xG|6E;TllB Ȃ6ԑH?C!'lW%$1}cT c [rZXͺrK9@_J`ujgt6x̜K0,>O t0 ]GU.!5FVe\+)|YbuD_׏j?jVH@qhj^Z2.v7ưz [#qw#`ױ:Xdcm&\G}]?c5Bl??םe>~gd5ƸyAUƼQ%s'7D)-WhfmVghYQl:חʰr`:ipkTG`@8)J<|:'g6wѳe7KqDRwXWi qV-_hKF33#*sq}kxuFj dk 8]&Yv`<,1AuK_\"Jqc؂ l`vހ*4Q"QZ{}z`-P/>ai;3xzoCX"VT\q"Ol@zEX|Iϵhyȵq^Dixˠzi{(lm8[#M(?DXi4a/)D,Tj&2.6_nFf7M˟W~ldʬfw*tD>efE- PgznbtbبNKB|O;\ C QDW 'ShF`h)W gSXoz&ƙj3c0 Vh5hJЍ_qJA!pU 4_L#n˭w}Q536P '`]ۢ1rP6C<0A ơvzP #9Z^ j1`cwz#[v"p)~"w9M]8(稟}=@D5HЕ,69okTwٲ:lř7ͮ>Fm]ve|Th!*UD wN.xa5Ws*ؕ;h  v5k?,'q*8Bb*Q tP P ,OS}UKy*RYI]@1]+(1Y3Tn\+$IC kY X8W,?uͨ;v@6ު]&k 8qV_22vMӶOB'k/ʦo9<2}YvtnhAFw!,e$<$0 鉰nUG\F@בG=;#|H [ ;C5dցDon$gE3 VKF`dȐ3ޱ>-S eBl%-!\ʓDom${*f}zb@,6:] im E(L_9)VrL0~o*n"LS;vŋ%m 2,: mBWep\@X-[^ q*S"1زEFg+WcÿRr.gcDN-"HDXCT RAF K$2Z7W ATL)$vS+엜MB~:2I[eILZ%.AS! .Y.\;rq^w(g~hga 3;X(Xba%DVr]NUI{ VcJ ܮtL[q FZ R޷-пC- 2s!;(؇;BؠLӒvՔv9oϑ=ʯ}XBQDI/N*^yOIc4C/{q0ݦo9 WgLY5>9Qu?dp$IP|TP1$Bg9d#(D> b6"@" ଣ0G+3N񪅽A4x桮pmq1'`h(Wҕ+O}-06ldfԤ2(kEUuJ.\4wQݠ0fTl#"V3%( (p!60lgvKqўEA=y$28C ˮLJ}QLuZ2iM3'#(ޢz84t٩Cy’V7#js#LNUs"nLZrp;MnTsa.$^@Wxw! C]tEn,+8Eֶ UڎoD)ǽo zZ&RM {ifÜLgv1ka>CΎ }ڬxf؞@]M00Q̦0K`&U}vM߁ך lrܣaf=(Z(U}?޻(Șb9Apz*kxk3[Mv/{ 1M&\nTn/jqTF&T<.cr7|<=RT5g}$4;\D??T Em㨙ViېfIF@d/n,n}8Bzcu^LK{Vxb1g7_w SR کŻB~#h@&`O㭬rءU2»_~ՆXOTDXQsRy ojM^NJT&lwDY7~UJƂ}p)qW x 0 da-&PM ;5x2 lnK=Qޒ[˻I' Q<Ҡ+Η-$=f\;g]'wފv߽S+:&wJMf}$~ \~Cz%W;ʻZ^mS{Nc)DlB}v>&.$.LK/'Ke)l|Q,}~4߭iL }5O6Pꪽ}zu$w]؃VBHD`,SmO\ &+ M GWa@BPaXڄsKZDڞ0kâ8OV &]JCΧ})]L7ηpi|꓃cG7^$Ee]|Nv\+7s)7+^M`Xƺg(R ۚRkm.AkK4hmS'fW% {2$21-DԚŸ&2$fU+A+n s^/!^K{׻Fgh"FO:,w|our8eDߴ $oz ş'e%?S3w ^^$::%y >S{RfeO}a3Q7ud)[}b,r^DI#`Ԍ) l6R[amw{ւA3(7iZ62Co62uٌ}0 a_8|˖&,߶8rv>'֔?ok%?9[GNRmbC4QIlsj{W3mUZp>'-:scakίhIH󛻓eaU48* 1/$-d+# 8G(_`Q|(VSϽ8,H^}U=Wb RJY]KJ-?p/",jio2gmK@iXU^;¼M+n stygVB%B)p._"}sZ "Jq ИM;;(Ը4`1s~Wz? Iw7VgBcVhf_TP(ǫj Q5rKH;mo|S,zAy=TWPl8|Da];Ra!:ًa(>?6\Kfvj܏͗I0$*.o#k3E~`_C!wb/7w(C#uCNWŠf?۟qCR '7vZkFMp$ ~, [5DEful=L<,7ASIySsǫ@(5晍0jqǻ$ﵷ#@dB,vrd;6 VPA75\!ǑH^Q4#šK&I:aD)#W*"&yXq.JѤULo(o5uQ*DvUڈ@wĠE+!A¶1BR6ɷ#gHX/&9Z4ھ$)⑮|iOb4u?I5J8=N^v͊MG}8C4⺠Iz,f\mv/y;1G,͛]B&M<_:ݡ9ㆈf1,zPl9~@,A܇6TKm97ۚ67hDjƵӲTT:O9nW'H?'tJ|ixQU.A2FccWOAsge5E)âL2{SPƻ yd%?#{oDٕXgxoͧے݇tb~nHk{1M Oo?4 uPF77}[Tp;K}/jIс8b^Y,';|VnZQZDz@ ViFtO ܄ O{àyiZs~d. os77M֜Chn^zx72=LΌGDi8Wk{;gIZHϲ'y|8V_p' Mr wJވ\ 5J7/DRtam 8~݉~^E5J5IR} eRl>E6.ᤞ*Uvp8FJ /vtnKһvuA[EWĜ՜.8_YMCX*)AɂhET#O+ad?/7 \$Z1S%tvpE:' yckkg8t8",ZZ3 è.1U}l?#f#i€r8__~E5_{̓_qc'P bz(ה4A </,lF.N72=sn Y(Ts p7=!uU*q'-EJu`n2~h#,#~ؘH.$*$*ʾ.ͩ^zchq~hf{aH}hI YZ :S>B ̹ «fZ[މju%r˓ ya8]]yrʽ4 2`/u ՠyL6c(qܑa yR{wWhF^HլFQ*F4,TbAJÔ'N2QES4Su)}'⫻KWOTpz>Ib A/ឍX1Szq4a!*k߷Fu<NqY{LXoDcфB*;4x< GFJ4=|+ W9c lDKfj z" QĮ: [/Ex*y K׆A?Xj<~ R;&yo?nE!^,KqR,0/,!.'vu=$(+x(Μ'v%Zi 6`Q_/K *2b 3D"1~y \4}/g\jx^:0ѷm0p>l\*DB¸;}櫍J˻eVGoOhZ]}lRGEwq5]䭚E ڀ X<e}j PɏYd\BrRq]+}ۓQӢ3TWP{^-}3wGfj9@sؤNxp#oȳAL}4 k?NDAGu+Fj$l&S'"]W|jr'uhjn-/5;)>z 깫cuVQ |>398  !aXQ~;ӍП&^80,~y, > TF`D׶HzsRhЀQqbS+Ƞ8qÌފ s%믹&'O9ah2~P+G;hjRdB ]8@.&FPL"_!E|^R,'51&O>Ѱ3UT'-EoǮQ4ayZDtιQpGucPj(⡥S\pxaәlm瞙>CWOU]dJ~Nr {oo b8m34%@ n^>m%U3߰OUQY +HAE Zr ~H DdD1耎=Ҙɹst`NՖ+=jf<<9?<[-a]Q~ttn,]Tj]~e=_ӰX7RlGP47}A 9Ѫ8(mT۳1D\Nl% Ji4Id;7˩:zb y+VL!~_4eu,ew" fpˎiRPNpQA/q1IoYz?i%qlS*Et>lJꓜfx/՝0z*sv%M n2dCzMc4h:4d8h\YŇMa{`MFл0gY;@?9_݈IѐQ ThRGp(&n|p<64 Ś[+{֧;&znx 0T>DOg,R&w+6+ ?ڙc5a  qeW OhKS8 x8j f6h"X[U%?Lz+7sv:#FWμUլyuáH[mbFaޔ&>QhyZ Ӳ Et˜͔LWߡ̻Gt_CC1 =`/KxJ v-^m2^B:ZB5E'+u2Z gat;ζ l[LxɎ$z5!SViض޾E!B=z~6ylr g 6)3X?%V4fB x)皛TH^:T=M"eo3ٳW*^ (puGVc=8׃7z%KS@s]Zx/4 -bcgPnS @oHdOƲ$K\#tVS hA/!<ފFJrMM P{S>O?+:VEwa=J U%MGqKI9*usA9 4Z6'lFznSYD.␃B0!k'>&Lȟ5Rgi8KTe>񤚹Jgq?qIaŰ:4X)m) BVc:ƒȧ;8hk h^wmZjîtcj X4Yw6߷]i4;=ZZDb eԽj<-ڶ}Lű +}dRׅD= Z;/&I1]3]/{O@aeDVݠ⣪|sPȃDsI-~ka]} fm>U?^O =2cu'~Dj#qQPf=K] 0r\ybc3]U?w3G{t#yo);3es?A&TX…, &AL*<}~ .sVhcc- wL\4$Y{OK4zN%ΐxB_c[^ZA-Dߪ)W@gFCQ,$oO/|]fQAizSb1 ft]ur`O2š(ζmd@Anvn|kչʯa'#[@mHJ YCHZ;rxx 0*h⧹=@Giy47Bjy$b=aPeE#|.f AR^O ML\J>faMΐc7lQѠ@FXht3?ixz:;‚=P ڜo6 ǭ.7,-}A1c!eRC++wQxy PM#Wew_mMHkx""i<CbnE' < €2k`ܐ; 1CZH2tU'n$f%Ӥ`_d:,K#U; ^v8kir@++  EfXORݣPٻkCCߚW fn(RPk]uݗ}`Ad: 1<@Tɴ*qq`b+{a ,QSR#1N8 '9^@5-gǚC U5$PF' BCΕRuiM3SlX2 ˅q܊5YxrX5»,0Tn6.CQhz` N<1FP_0YP?3wJH`B Hp05Lζ|Qv W 5=> ݌;0鴾j+|x(Ry("(oHhRZÀ7;CBId:+_XNS(+9 ߔP^3/ܽD+訵 a!-!6lw!Y* #HGJj|owF穼) Ċ4z<8ܥ\@ˑpG̾8u=z?+ݥ|*sYQIL/xE+ȸ΃>pąK]e-Yf2tq_)ʥgtOx#V['Ho^ׄAo5-2lga&xA6_b'| !iWL"iw̒IYOpxdsׇu& jTF\'q1:9N_ќh %`uft&}/⹷qJ;dV FF3_ V֡rz_ P/"®h|SBib]GwaX+hBX Qh<~qGV!T>GlQ@9hy'DŽtnǛ |1 Be@VrnJ̚I owN\ױV(FFo(NhAD*Vm%nf>4n.e}9
?H^9!O- X47@0A?P;{&hN.1D0^Sp트i(,pu $$H!c` tB H*zcq-Z-jF헭l?MV2OH7i%VgoMJ`Nb V]ǯLԽ.?5aY sf+y$x=#S( ԵLDtF]/#_9.v=2"pht1dK}=ꢆ![s}zK\Rci'tća"+55[/eq so9Hu`\Ȑ {J~w j*2G)opO2YlOHn(e` "SLճgi8 ,wð`@*c֚q6E-+{yFS!$Kn6_sl MC椽:=Pai`?LDqyL$ѹz'l촌dThEX1筷#tΒ.kσ4=;? faVU3kqRo0gVeb.eE?4oI=IDz0)0AkTa6|P>Z2;Wl⺓P-ǘ(`K Y$t5Bg)v mAat "SOn_fW mpwa˺Li?*_}#ʯY֭*ZBkK.)~23n'e&L&\TMi@H_a|ǹr᱉}nמxZHN4pN^ض8X˳6qR `9 `F&e8w^'U\7 ͆Oޙ sNΟ6 pa a=jۧ0:IJA O,b 1+rI*ܽͽ_ˎcvt"*y\ 2bUl!/Ir =]}>s'z}%( 1y] Ԩ5u/4{mh~@3`/ Wbz1A CE_=FhQ⸜9:VY]wUys9Y|n}*ΐנ}-Nd ʯ@&EU޾p_aU5SV8BN~i\0%=s?}O9 YȨ*Y78oO[;{5n?B̘?l]yޥ0HF)4tW$3.CtOO'<&en~1*¾b_$uu$"lN9nRla_ZR+FEVg0;HG,A7hLJN"+_L'^===0ƟUs$U796&=וOC5*'$EW`&L`kڙ1ŔEWT'ke7rINxwTK_4p YghhAj[ŞޥaZT8_)TͭhIx'iEڔ@-oy~f{_\]WX}>j,.U Ų{9NU0ˉsHBl9!ۯBOJ396&Sܬ.-4fRSAQ"3uɆ.mav_2YV`fmJy{QeiȻ4rOs 81P Ync%1;mya.ӊh|&~ReJ|i3#SMPW3W)sK:q>63U|X kW9@ೡŦY2Scj%*zZTR}l-JB\YzVInS{#\U1Jܨry 9 Ii(1پ#qeW N2*PA@>g) Mq-l&,cW=`:TuO}Z1MFJ]VlF{NB,WDh@~p$)i1 m?S?VK:"Ƕ "7W ˀFb{io뎰pRpsކu(HڕGE7]a-Wk=U57h,͏uw% .V.HԛVv;+Z=9DP '؍o44!/Q\őkUOt}9n/aFPnIlN`ieAjV/k( E ڍ|U)q\!1&b>x2"<ïyD.%/HDmAv‹fb,m z=yס9:vUɡ100K~~tjS+B@b5tX|׿ *4Eci[HE}T$n^.FwsԔ֨zܽ^Qk0icZ I" @9>\i~XQ[ Mc*Edc =(Tܘa3+K5n0ܯrT`m(~=X%;@,ц6F|,.ZZPˠa^ UƜ) ﰆ'zAQ$⹫qzmŐ_v!rLTf|/*|jo4o[+:2tHXҢB/ 'mS{ }]yUzC2~/BenW+׸Hȗ"+}MjnYXO-0-5+GUf]q n_,wxUL۷ϻ3pU1()_GR|@(܄#)wBRD;mA Jj[ftXذ(j;W&zˤFȏŒ x`ԌݼYߘ0RU2C`8Js\O=Ye o ΀*:Or[mOc@L|z(̎ss^jM'ܟv?ލ\A[c:r rKW=y2Mm KUĽBikc€Y\O_~he TKjGEVZiz]pR* V7'T3^_9?4ODXwWz堪=UN;Ʉ|`Łѝͮmv]%9)#,OTER>j,ޥ[Q33W\J٪ Fd^7 2T/.W<?͗&-lRx8nߑ]>e5.,'0 *gJLWOߏ^Z!:eYu4Pѽ{r㹈kbNSy0`#AϯŠ-,R~џ0Ư rF(ձIr~x;z5 v0usC V['I:J<ڪf|.Y 6AM٭ȡj_mb!DQyd|etJs/PrQJ]a~Wg_:IWN<(\#/3_|֚;RY!NBM6'S)2XEuYy`>bA ǻ^NSR+[zd.@[WFEW hu$ B+@⢴phn|!9iVPlӄoш yb尺ow-tl\_*Gd(u&>qNIb?yV%=?d^;N=e{hq%Ze@4gBpw_hRF{L WKG2H;?|'X ssv4|Ĉx2sQ]4 @(ͳlCZgj1,@Qctb[9~cMIsLt+FQ2Z|V.4rMtȘ10 UBW+}ɣCy|0UJ1j= w6"(rKCީ &;AyD(ۇjFNY{<^䃎/l>T<6# }!?Lќ67f<Ƨ8U@ϴFm0ݳ+Z.349(F_A3vHhsc:w9-6WFR˂' eGzF8J;Gʲ yIƕx{{lpDp;G$'ě'5([]]tIuVn|*HvMHL0 C4)],G "Y8PM-l8S0HޔHfA s7B%R)OIt[_дD? (!l ;hkD^ϼ,@Z?Zd܁X-}!>=`Xۊ z5ҊpemQ]ag\G;C\ ӂ$Z[D xrn+]Ʊ^b`[Jڭf<]z*:pF~\7e&C(wоIy/$YaΜԇ3>7g[J'G4%ߑC>m}Z`**tJ@(L[[zIp[mht ^O9cO.--#awDmHdOѿ|/תxBݭ; yc5`.㲟7SżłYed 1!MOWMv-NjHi;?L,?OuT à8[*kÍonl-%T>( i0󒳾D)V,IR;p'7  Um<+`ڌr4}$"gjJˑnQ$Lχ/5l&2>9V7.l'L+)k9ŭcV_>! ,QYv+m_ՃMGa'A׊\8avy7@}4)b‡TYɘY4q>0Nl="mf9hM0$o,c KV|WBNQhnfK UyAkƲ]=] PߪY"h ϰoZ(\k{YߣY6)޿DNs^lp(qD cWz]dΠq09d6W#+HM5BX@! )FC!P%QA ~ H':b>$FٝnۄL^#FFQ9IMugRNn; lfTj=k`1u\Y7D'Û1SI$zQ jA7Q_Lr-5lT}۫)]X5 Xҹ+ð`9]T<,vWFS7 bk 9SSRM'L3v~Izk1~B#fCy.٦xgJG`Z\aH-D~^(+>s$B޽ވ).s͍B]WnN]]7xojK-' J!S??s Lqfsݞ苎4)?v]{c쉧s^SX%c"d,|M;%jտ1;yK'DXYؤ/8n,iz P'{?y2tۻHe/ԍ _$" !-T}8\; P^{F^ 8q;18܂>VW/b*Ȱ`Բ礙S) b,@ܜ>H: r5t-c;vS"zݮiO4$РFWXwgN.BH+n\(3_X:%ozPR깑MrX4 L_he㮄lBQEmm)? #C3"\+7 $R҇vV %1D3_ׂgyӡ\ЄvƯZy̖{"R8UЈp<}DQ)#UB2=fpF";1GHȀ<`{(ZLC?ND :U o1 *%odD(InKJa|t5\liYsg}RgBx-Q֪8,5H= I_.f! IX0uA_WFQHkE،0j,:bjh:ʆtj͝ji^nL%СX8A2TˈV\JijM)btTWSJ; ,J M; ![^\ O츧?7uU):PEyWwlFdv 8YKA_GQwrʛgWoJM R،K1JOKG l[[jc}ͩ>jgVˁ9Tix %] [N^LzM $b (ழ ǢZq!E_C.0bC6EsZtLjTM!bpmK}E,RV= A{eFx۪7 UkQt7CmnHGnoVBI5uu/D"Ht8.6Z劫ig$/ݴϪ4pq"?>wt˙:,+܁(o7e; Ԯ@33m:qH ~Me/<FTkA@xhEhhɱKbH m{h&{N5ґ+hBL}VpnQKbGȱz ד,ߗs`ؒVdծd(L5 (@5ؑp>l˵N.變; ,|!$3c;PU+RŞ;bsn՟2j粄uJ5't=1E>ead3 |_i,n9I߀jALm]MLQX/?-/!1@{xR:Npܦ$glB$.%V?MGPStv4 Oe@ywmn-f z<H)_Me06oAB2S%[܄v[|a" bXǩq%whC+hwvǭ54se9ihY^CҎ炇SKs=r>T.dog.>>%Z"R fp i F`] honT,V'BJ\A*k<]y>=-ܹ2yHe=%$Mݫ@aQ2D_B?8;,r+8:߷L6tCqQHH&2 ?xM KyWMG:ZAuY@T[L׏bf.DMA ,];V6G5 d|eR-+B^(gꞣaGɣՇS[k!{jl|xR(W4ըtQČWh%dvPW{qл, 3˴ars)SEik >VwuY&m`屘'g䘇B400M,΍($4۟HVfKވz@,Mg̩ t@/*?Cilp1!(U0G.>qq N vcBo ]Pmm0>P" dTdž9[juT0䗮1$J3᭫f?sX ?+--x' c"xX/=D_N0JnSP =w `Uh/^+1 Dq?HWAaF,*B7aܨ4#͂[AGE{` +(?N#jSӞ6frWu[h Mza 6]6ֆLUsfʟ~!UaiaGq X-S"Ɂ9`"NKX 7FGvXͬ(}&a63fڷN/D#/^ש#+*ڿda,^`I|LG8GarB 8oyֻ:*bnYKn> H/|#74_ ݟF$i5FӺL!1t`\bo7 r2҄D\ho6;mجWF&Lw,XhЦSEҶq%LP@,טY{ Ɍ73\q@JAKaxPy.Z=W<Ӆ1J =NxRVǓ IX2J^OD9w2M(lx]"¦OUI͖-)Bs" 62 LoƞHD#蓬82TK},2Pۣhq;x8KY:m(N6X5Aͺ</mr*) ~#N[i5CU5WuD(q{^ESIn 8 =ïHǘi7FW@ -;T^? 3Md:`LGО{1HHSo~hR#p~ z>p*bs=@Gձ2fW*$^opBm5 *:Y>j'ci9Ml8YWRzނ*PӻH]J-^;RwFm& ړu}b ʻoo"Z<,ȔKhKATx 7=\qRoIP(եv~Nzl;#oFy v/*gY,  H#+ Ёɀ "GA=H2G:')BR~_y}!@$9oID_{r x_S~9;L!nt m-_ؚumOqI MLV"Ela^sz.Ry@Yi)Mk@Z hV}W Z`/t:Q.ypқ mOQ'sAlHG /Y0DU\I*ӄ¾kֳʺSj0 _O(KX/]M7TO&@^Hs4sгvOu\jx~p!#\zLDRXB[5&p' "nÞahMuekH(/OةڨA$xD1< = 2ɩw/OQ\1Яҍ˓xc:rl?tSҼ'J&dmꏫ8 5Ƽ(T'TGÿkpfϾw&xӋf#abMMiErQ|dBG$Z\:Gf0,E.#wiC יaBIm5 h$a H i%FlތmtXvDY?4Oͤ9`X,Cģt4'U#WdiG#C 숎Xb4w /gMxTdOwz6o͎ ֞T|VޟTu0'S\63GHI޲ƻ*t ?"Q)mhU7^U7Ajp!xW tUZߚs=ǹ8U*3}.Ԕ>XYA u@((יJسݣMZaA.Pt YM^y=Kڴ4pa9nS7n6^τ7^iV Cܣ~BfDOАd͸|ٷ=DY%~ ,ryܖ{wEˡ@#ʶ =nQu*z`/Ѕg N r}W烂0v ~gMB%imG"IX9-V_,Y4[YfSHmA6YǿRj&EL82v%\?)-Ŗ) q>SLRᐉo &qZF!YKb.!e&go:߳&W mbXg*-xmd|ud_'i*ʇZyDrжwh/gF+ F)bDE.>Ӱ?YSR{Hch糧'wgres<\trߺ&C X77^lڥ(\pwM'>LH|9 2֘)ŁaG%bqp)u/̺fSb?8}L zK\S juHEN`O1X"L Q`Hus5lg$%]Yo* %c}cmbHA0J %WGN{ܛFV8a!.Oy=}af!K|5 ]%-N|<?[$̦[FtM:”c0To<7CD[¤4jВOQDly9Dר=n$!8 h6D>Q+$fp!<}7 &$uG"$&K9"F'^T]sRV, ,JOfNe]\w&Y^8xu1kb^,QAO1,K+W7l1|_Dmѕ|ʔ/ݾOBx̟XFUc΃a= 9Hn'{d"(qH}I5AfL^dm羚s\MWnG`Tn],$H:_5Jymsy|>_.=fs;*".s^RJޥQչt4?!э"Ra,{8ă/|No@[`b˭@xo\&*pZ¹ o?/i%8%\Ks0 ? SBasiP8_f=$ҀϞ@}m~`! (9;sTOmq:[/H7WVrw!Md/ )tFt_BQC 4_Ydb|VԉqpVb35[y_z.Dsn:v%B,P`&6 \j[{G{0|6]^=LmWat1S0g_ 4:$lD1o`hXP()lp !ȑ`nWf]nө7wj#ᩔ^L!-6z*sc [aO-ה A4Ғ¼ԩ0md йC8l"s)ak0od8%D# "dJ64zzg w5Lx_4!6HVl0k-}WRzuGtE CRbާR|UfJ*+PxCj!$Sƨ _0˝KɅMN7?K!kKAsv+D~5s5pf+S b+|>g43 FI.pJkLVݟkxDnٴ9eMd0I FEo0R Js~eRdfkBCн_g(R ΐ$iG%>׃A5R쨘iS_{f|JvHWep])2I ^í_\4;Q)](C i̔IUmFTc3iꋊ HޫKvr$j9Mú1igXUnp+'۩;K64E*uh b_~MHVaĢ)yYw̩Y +Z)w9WŮe؎])#ʱ G]1>@d,3)"55>4T3 *U2 t,{c/{ [asOեڛ{xјdAϦLҾ8Y8X(Lʤ+& g7]IRuϑ;{Oe 0ucv MKKƷ .8Yޚ:zaA%RluJ4t4 ^YNX_rqB0݃TϢE7cӨ6,vLT>~s$\i_;1pox#zxs6'Ì}d07ju^$ %4WBsE y1{ "S|/ZRt6<.i"J.?G}GM#@OQ8R0DNU-x|'(p淪4*:1>2ZB7'زWqh4]0#DƋ5M %f/ aoU(QM7XJvGw Z᯸l'b~.Y "QwQym~N.mNXOXp+soJ(l;>S:^Wu~[U| 0veUǪj@wJi٥ = *۴dwAz<˺"X렓&¨xFlOfN^0lW^{;ZwЬtuO(&&tNC {NjG˓9KcE9)8z?AT%׫q  [̚4^&Rգ^ (?\3ϫJD)8ߨ![ 6L;a{'Ͼk.֝vaWM8HF!*Y1Okֶ="4tʘC*hsЭg՜#$ljDI󡔑|Qj2 =(j^FO=*2qTl^T^jvfRkOړaFY=:}&nmtd3Z8,u G[9Pd`FnYm×nBd?'zY .e0K0ϕžmt=tGJw7 @1)Io3}I=rdXQG\v~{&ΉErr䡗>k%z7A*k0uyġziL"4|3jF2[yzȝu2 ގgzR:z[krl5u3/Äxm.M|^0ZC9H(eM("ʘ7<p(? 6G[m7]ڷyOA{F+Ģku\ K9ކ႙BV{X`o7$v_qc'ᨛINA{ӓpwg|8>w7 hW$OGMZՓuwXQ?Cr5Lz3{(*p,!>;P&'yNXX] ƥ4Y~۽Id.*v+-)u|K^9.4|Wwvq0 Mb;Hvr b<Y0$F^ZU ⒋I2ݲJԐ܈eo2JC{}Y=Pz*zoPxiZ45yLHe٫A) Yc*{=+ (#-=s[r~,h+X$ )ɷ7M/w%V H&v;:*gmERe4 K7m;/ﵼѝ惔Ӻ~BQkMŠΆVj+h%fʙFe3xBMD~\UĢ#TjI)G=ʡo}lUm<=MH_}3Oy֙HB:,ɓ'RwV%ԓ8HvwP-bfj{eK/P|\԰zBmlS<?^mVȢ`(&8@dDsMph/Tj}sw3W;*wn89š/vhд zOh)* m~wye,]Nͬ;ȭ5J{<:= 2nXxq?i:߼"斮|&0z F~ p2V!SʷmIgE1R9Z8en"W!ެ7JuaK¸La-޶t[L>GvVJs)Ǡ?3U? Su_" 6%^izIGCr+24@9 Fǃ U"8ԭjwO+喍(@GYG qsr-^cRxH6V2d.")/ڵ͘@^]J.ۖU+P UxV#" ]B|!͇f~^smanշP?5ɮ,;"'v@F(|prE쟋a(KҹŠEIӜH Y@1 1CY!PWs?Sx cf s2I KC{qI Sk rFfϪ^CF8R'[5&5/(Кx3OFwJ=0Ӈc}>Eamx.j:m^|* nޗU<"'ԮXX7Jn!(Lnnrԕ.#L!r+ #f9/)|AZbLNz}ƂhDM?gBp|) }8#{-Ď\_4xRJrS.nFjs#=x&ͭbi5sӢ2ȁHsG v(an"{TI#SD?D`q˘nbf.lkx\(ƶ|FvauZ̲"47pyg*@.Şvy0m|R4.uv;@'? ц_/ Y ҐFpMƮlTFDMWˆR'"<ӉZZΟLSS1m +ӛnCf_n%"̷Y$q܆5wwFUv]ϷVVt=ިO7 k0x TQԕLO-(.a+wwC4:P?+b01:[CC5@t>&)ci'&2zWڢ;J|FNWw3ۥe=;fx"ȼ4:ftJ~ۧ,C?h-o<9%9ϓs?*NzDwLYxW hS6VM?T>mgW_Kd."@(mφhAj,Jt/ fur| *N/A [.Y˩c5.cM_ agU95i%Hz *jt0ġM LF;LXW4((7l3?G )O.3ߜOp>xcO_+`RKA1g+ uN#rP [:O9Moq5'km:sG<+~ɋ\m ΧH d4`F7.:}momrqsW:unnfQ \\+y@rƗa4qB4h6 &NoI{[a˿rּpjOjbL⎞%xS6r /H-a%o I2L`laj~/E&߿nLau7R\=JG(uMX+Me=WדkK1Nb`ڒJ?S"(Tꂢ<TPEEhC4F0}bP|H<;CJyLvz*8MѰWo^1|>7RCV$ /FL+qMiehQa65ݸ[h3!Zv' Bal52H^;_dxN(0DH˅riv1bak"f]9׏sźҜco/@[bۻ@y?3h6U(y{G"G{AԴNɴ>v}n]ETչx:2#W;JZ07I⒇ @+%Lqo7vxbP(ѓ!Q lхEZ q䠱nhqG7BPR]j<႐*r `CyEf&UqNh`^Xbm3|n4;MZ m6G>cqэN }؃FC8a78$ڋlwhuu°:9mWQUԀL*f%ڎDi.1x}$f 2DSI\3Єkh)&s7v:U;吙QSS)ɍRt$UDmWeMV37x$T[}ᑡF(ʗ"@?#CAkDpAM;} pQ,fqmlIoDˆYR*+}@}%!u Z52ߚzu(ԙ0|UGm.e‰Azp؛a;՗oma8o}n;|!˘Jڥg" 5Ӵzurx 62c~ efK$F_Yd?Ž=(4/? dNjQ%߾eLz~X;ؠ~uo>{Hkއ+ iRFUVF#g6pFɖ7˒x/$=kG%}e2nX/ #`4Dd=;,dMItJ+B "Ս>h (zfYuiX%s dO| Ѷ&-eR!\)&#=Eԑ0(GNPh/dIκEd0Ȫʂ+ĕ:C]IH865&Bm\{qٖz j7WH1W04sWp5,{._Z?0CdVY0ֶsX%3"(6po?HӁ|UY@u%0ڷcBn )M]K8;"P=\eQhwhskQKgܵ񸒴e .8 . 3C6Ij~p"?&˿d`SСy%21ewiVXl&ҳS>%c,1G9>}?`mOOcOT k@8=.# 5I0rޑ(۟8s3S=>=R33 ֤Xy>w Q1<XuC} !fђ:v(m <}^bG?p2~pti>+a+fWTht_R&NcWxVsC*ն>V>@Lj B4EDå^Jc%n59ퟞG',ۉ?7b$TJ*oK>읓܇B&4\_X2r~`z|^F[jf]/bL{ilaoN"R82ܑaz덎n9Fep\n ޿^]i=+pIr.TN:3o`_rqAUYܗ.enmli:Ѡ_c3Y)`&<*9 cǛ>;ߕ'?P(bb%')t {egr(*tršcS*A;H0:y*+$b](lI{c- FF/{bߚ4@tH+P;i7+N6VRJ/~CAܔx2LE$2eƝ{zş 3 vZ}ļ&>uGRgfkֆҐRVdc`]X* gt99ygY\f AG{93#/H+d7̅g׭nFYfRZXPܬ5k(>@J=boWLS=9{ުzmQO2]ھ69ej9j.Dןd)?r8}6xS+84Nswi#09`dK<`V=n?oe-SĘc4"gbX۹H%z4Gm!liဏ ?#ժ 1]%v}ajɓ0W/-xyrifd$t86`)K&oP}k E/+KfHu DM'(PԷLbOWKBK<Ŋi|$p *ϨD 8C$74$Ү6*U':)97V}r L(L@EIIMX9;2ģ&u4jA#w^7Cb ~Y[gWomھոMo``I>,O>b#:O;DL;Oo\y5Ù%KTpy/3DxxC߯m5|94nOG(DrC9CzdsۏTfV|Q_I x?&Fs2ςYO{9fz$ܪ.a7Rj"-V-]FMk%J"?hl@xݪ nSѮŀ|z/gFiHe~͎we 5{"9iS+ ]\kj6YdLCiL_h+u\f]k5G;WxDuayr(~A3~G޶h^'dOHT"<@ݚj@lUGpR66݋L돒iǴ<.o9* "?ۙD{FLC_1P{-I8j'ߨ(d0j` ƵZ <3wn?-y ? ВDاtQ$>T $\@p"=]腨&E@7 g?b fTd?Ro p<n 4"O+%L#ը%Ŭyegc9 \D'M&gdxھ|Y[uO?0+co=OvDxU  t؎DGsDP N&!|wr2Kku[+ )T~Ƀc ~:gؾ3` q85$^iΚ)(gTfO4@dv%lKPfj9,"ѵ}TI#S6\xf3I23>o}3]Ç`bޢ(Z5m6;; ."s`tK, a&d !!ּ~Tr\5HdS?+39ǩK9cvʌ߻ȅ~6?B[a,f }+ ?(8t͎<'^ w_u2qqn^l-+!0ori8r'';m@ok͗ew R-4#e"ԩ QAa{;Y80b9vCGbs5hEr6[B=Q"B~߼gtǻVڮԜ͚ma\fF=*25p+LJxJ0ЖZ0$*XMwkh}myERq)06 y `+)ZM!+Ui'`x wg;Ƕ!oxaXq7,d l *::DlL;~ǤvSGjtc\9{K Št6E @N& +N` nqB {DD{C +=sӎ :a`%ȽP%Sawэ·QvVéFu̔XaX{ 89E4]2p^_S餢$Eˢ1/⟲I7T=&y(*j7XfO._HVOU^j5,^QCsShЕjؔj 'I]6W_^nVydX-AZYvkLWel!Dl"H8FS&㠥=O^R)>4^ly {vVb3&eeȚejLn҈0j]~߷XI۶JK!ؗ5ux6}&G/N_o] \e@\ ,"F/8(|G4]QZ D'E$Nftg7iTv'n-tHSF>ߛ!sJu8|pQξ_<" G܏`}7H5Q+fJ3X1O,Ayj:)@sr_14yKZZއ0>LiEXg̜-ջɼb}SHfqGfnjWFy6P HD`qukȇ mʳ-@Cjfт)U|x,L[CB ("j@R͂5_v(o_J7~f9R_k+0,OޔU%%jSǙG@8VUWaPѼkk/R3)gvSo}j˖@|L(gK#|7;,=ޝ%Kym5MouXՂGˈuCe'{#"4D3W5ދCˠʕD#5v7ڻ37lЂ9ID$r G)0D7=Fa9a.w>bmFLSJ y"\˜\T3X'_e%O":Y(^G%cdHBOӗ喬9탶| S[]i<U1~ƹh8OF"q[vEDÑ%H쨟q]tX+nM=4զL"1}bi `nz(R?k|D V/"Daxn}_: vKt-Ӏ%(Xu7zZE>]|} Dh#:* fʄ[[cHz 6XJ"M.Ϥkz\~U/ ގƫ=1[Kë*Ӕ!Ѫt(+s bX=&?^Eh>F=-dkRIzد!.v6uF#<| ts}]͓97ObRPsgoϻA=4<8aRqە{mRe=7"1) ,,[շBLk*_lr ztod>;aI iHjM>ʰdyXOSaZ /NQR`RO|I_&;¹-paDO@mt gXcV] vG,.9g{J?E.R;4`US/ަͼjDSґ-SUr02.fU0Df.fKl}qi;N)1sHPmoIHcJ#BJ2:iN`.o' \r;/$uH;U(A^ӵyZ"1UplqU-& -L%\w͘H֫ğe1$z7E17יaj-^}O'OMex!%-+@! /K0%PM٪#N<J[|~꽉K:P?ߍ @0 G70#Im;HU A^6a v=.ϔ0'Fzg ɦ  j4 ',Hu$Sʑ6yD)+5^u5R0vA);*G7_%1EX*1r_' W!P* rZO{Ktd>}P|]/Yh.NL_+:بZH1 3۠?SHd^/.j";slGf\iޘ:;N Ւ1;EsAj _-etƀd>"N(F1hi"y KSjb6exkQTqjm['AT@I=O%-oa5}9!tx%r 5qMȎt&/GYp*HWFƗ;CtB^ T:lYϹhREfH<ZOtsո) uC ۧeĕ"Z[*8HȯE73)2)%~Lp!ё$w`W kjޑKӉVAX1 8/7(??1v $ۏ# WցVVh/ăߢSE?Y']:y kzK \!!VIEL|L&ِ'l943+kA~jʂh*H(nL9;KC:W0iNn\6PwI!ᢩި.X~ GO`/N}+2\8wGbmz X{/< 8mY{UlbD*tzcE88wA΅-C^zuY+~jtҡ4̵o̠id5(yMO%x>y[婣O7t}p276oCPOC8%@ԳK#{;%+TޖlZUJ!M*0JpK/}4<#28#" ]uRc<⃑ݜx?zՕ[/ozt"Jъ0cN9B]qt}%e# .Oze>qʙu(Q;m_}oM' `^K_fIT5}줣Vt"}& .7|MvRoIu9Fϒog3-I:cۭʂϚnY@Rkz1+O4ZSFgTdiLAz5ZW^n$եJH`>mΦ^Hq\!ǻP@ w',qj.^ W&YȟNwDn{ %Z G¶z' J^ A - }u{n+wt)pq?9 6W^03NFQ55KCM$ 0DJ@T]U1%A73-w6FX9-l!G<羊w4@˾PMG}&d =ihS+Eا'ek4QLà"Q~e(5Ya q;#v%3w~\Dxly%z&zˠaU2mņ>V9jAܚ>ZoQpg`PTav@`8 Λ$FSmkAgP5< l҅=L"4xbJn%@8V2_qcYzV͸-!6#IRp9 }8W-] qDsS=gD(4.84 te5RafWDc|,ţ~ӥ# {Wp,0LJ&0M8;^{b{d*m@=QL<beb݉T¶Naȓ~4Ǯ],z~C!3imE?_D {c=S64#CY'zTL(RE_> ד\,XOjP - gm\ !48Whʑ%X yJ #ý07vuc}L&^ |H7g}j$3rl^x-}f[J``8T( n2XT#e3 . 8@/]D2324`:kpWqzqpkVUzFI5IVl =4۳@?5_x$L) B5\`1Jx@gܛ`\P'D0j.A K >-EL J,nqڲ;' .<=W 4|"iqLD>p˙18`(o# XM-uGB$ ?H\ڦT,".`he?MrY#K ,ʷ̑8b&dWZU( ʹ=|B}5ن9WqHy>ďYPZ+E3ΰa/0=ꋍ#p ?MsV|u1KL墭CKOeVh舺0TX{qH yuByބY45N6`s,I!j ut@"vA_6h^ׇ@818r$XP0hW}w8'GeMj\o } ЍGEESX"#V9bZ/[8QʠtH= YS>.ցb88JJoU1/kA Lpc^zDo~XC 7݂E[{p3-s8 ;K1vG{ߧJQX-}IePA&*zeAm 97s&|Ŵܫ5ah,rώ]=LBLLtwMBʚشBjYM>nBDqDSpq/ 9!Bnz W0?qv8D9-;8lrBo q``ӸlQr]7ƚr8:Pv.1-v#H6.g[4(i?#,\fWƤ08RT+QSaCTJXNfNDLRfPJ@Q=A[GJ_}!!^ׁѺh, v2H7^xx%-l;.k.3ǡ`X@/7B kʤET}NS8juw"/G-owCN t>[/ ezJ!AA w8-j#JnU q1u)8fݸ^f)BqD8;F׏=ڹAbmxP;%IsS͢bZV&FaQ`Z- -[H kn?QUūճ6`NHhOQyCu҇z>;qˣIӏb(m+TWA^ 'Q#b季'm@hOW*ۉUQ0K"wykJ әR7IdCWk:A͌Z#) N$SV[ #lȾ,xCޭO`I,CU85G@/D@Xٜtݠ0頗n PETa‚I]t \@aVke&. JxJ .$MmJ%cNE8IC{j/o6f䭿Y2X FF̶9ڗQΜ-_/QL1Ӡ]=ӷ=71= @2IcPkoW0gٙɴy{U) 6) 7١I:evJ#d?UcޫS[qgXW5[6 1  BŤ0^]C1C ;]Lri5aY%,~b S4΅RV?i ʥc5?I+C>',j_azsa[>t?Sspqw)|z:n:: vrdR2k}<,nnVE ,/H nDԌ#9oQ5p-R (!A{%.YF2c(a{ړ-)"i6Y\l=Ͳ6SGρ}/Hh#ROՓZ4W)-[Մ*羦 >#nsaM=g$@w;R p߮K6p՘l"blnZ^QU%SqjMA5O4  [z,ɑ"#MuqT?B0`P˗ONE'\p]4 QQi2[(dCr+:1Rv_4Ĕ;4lQ~w9 Aƭ` kN(o.} 839֏E{IgMM^M|y+!P6joxs 锌GG&)6'zoTGYBbh+@dP}gޙ{GcIENаcjZ gGEkX mಋc_Lᇓ<ԾqY\!nt.1_w}g=UT g'6ϑ['WniS[ 2lT ){P3zZRD GcTd\@Rs'0f\y+Ʌj-==Lw0=Gg j+B'KB~p:Kz`h 3`v\SF'Zn\ ](4|^nGB.2O%d4#*Xa3d!FαJ. rgG59q~Q9]Y7 O{Ƥ9UjiAyaNXO>HOce_õ=j^:65'7q*bjå  ddR7=rDsn`&7yiUv~c?COaB Y, j|Ng!$T؄ϟ.c2W?p]$Vr;Tv=/|kWfB#ݒ~}dMg'@sV2);O{Ytip.Qӡ[ÿ:x({ !;` x?GZLg]Z31?̯)l/GszJ!߷ lr>7zVE=Efd\Վ_gl=p@*Y.;m`ꨳ V1!,F9ʮ|Y,SFA -dn!XZHAhS3OvPب'-(&їe=“ֽߊAHt\ٖv;Ȑ;Cl_#&K|쏏Q = ` )m7]xכE#$u?lDxzIAWŖ 5yeQLh.˞'3]n؃.dYhyجySǟٕȧ)ސ!b:VPm-/L>zĐ. i  =7ȸdEԟGIP".v1 ֨Z,/P]a΋H$%jA.3pz~&Sci^Ņoe,?D p\LiHSD{p5u&).T")9K̛8NaO5(oXFP5M՞UgBKGls0|*{.MP&V p"ePla㣇!p/\_LzV;[+~N<S$*Of<@m6A_Y>XB".Z!`Un&h)33p;S #Ou!];' C1Qܓ&BHaX%Gl~Х}j̝@M=RHwQCS肀3oKzVІvbMmAq5aiu?IE}#!yk[~Wp<.Z%i3"W+h.s#uKm_'+~&@C!nšएq&d}bz.%UdDΟ'?dO9Uy,TnKw @9/pp2Dhfɩ^=qI bKj#㞎i*"S],)7tii+xnYLHƄR4mFn`?9ϋI;bTku\BX4E3@6OˍAσ~ѽy_ Mlnؚ\s2G86#!d~?<eWߗQub'yjL8 %dGllJYhb=SdzRXA uѦq%f8N )FlBps^ }_<;USǁ.&G wso,wGs˺mS4G\DǫZ1_wYFX^(GyJwQI a7IpzLGr<) y-{lI+Ӧ.n`Í =t^|`og'vɝjn,p:o&!Jsj]>dT09k/tOic\=.e3ud~擊gN{7+ }.9־(bTOB=$E>b Mݟ35D$K(5"KofLwhU~7#ޠ ʁuqVwx SSFnlx9 !ڐ }hW!@HoJ/-zTLe1`14w;F<*tIجÅf||-141&PpX-SIBy= rlXn75r/XJkF\<H#ƀH0}ߟ-`cT>@W4h/wfǖ80`Ɗ)r ""2Q ! &}RF|ۀ\{Q5x]5W__er80̒%h#;gvI}F@b"j1)!U][&ލ/*gl,ts^eKPN ^}@kp8(X^G.SO!.K•`6J,6Tr !Iܖ˘ 1>Le * Q 3PSCԁO0㙿< /Wc9ulK*j硉 DA oy(J&AXᾦ9Wۓʊ{ѰU-uJЦ"e^ni,?8MhU|8 稙HUdgrZ\#` IboĔsv8z~1 p;* V=lsy UzsB04k͓3Xr碐c)AaQ0?*56^U rK+jX/ Ck^lW]fv7ZO8ddݾ38g{1sT-[>,%RC^ݕbz3p4`cO+L "ZKKMkmShfT\b-K(\W$:7H GRvr Doj-n|N[aWwqru# -C{nĮ;yY(fV2 jPDC*snޫ [Rfl}+djn>t(\OJF/pa0wW;qsKMPC kAB\JZVT<\g)qH yHE+$آM}q߽k> m8^V)_ȝ8QfǝY"]h'`zvb8&%ϼG@N^꩒T7!PL2߭Q>/'A ϥp1>5)kej,TA;v+G͝SY6w!)u`e+0ZZHTQ_E툤hj!ce}ʨi2?^]فU6`oj?w&EŰ4wB: 'mV4O\go~Ru.l9sƚHӜhT3 OKVSUy@KiP HI)^&ߧB+HĜk-SDe3&pr;%b'}0 K"q `O;Jxʃ%|QgH/KR[v XG] c<ۅB[{onjHg3ah1cQxH"0,d|(éXD"VcZuy_ e XQ Ғӷb%ıGxrBs.L\b="@yvv%IMdi߬Sz>Ȏ<󳆕IpΤ5>zu@H}~3ٔŹ2|&(R1Oc.Ovt~9v4[ ^]rPLϦ>֚-|յ̎d6v\~lXno0aH:6jCӵRi^<ށ4 "AANtJkģM#/YD>* j *_A3n9X'LU_6垧J6}8ֿ#z`_lV0=T//ɇaF7d_k{4!T lL_֛t]zqP1T2Bì)G}=fIF{bX=Z@AJgݶB/ͼqZ|)QPZY$|9=Td"b֓Q x]5PMITY~budmƱЅ[ lPet{Wܥ-~=ґ2; +RР| 9+4?Oڂ @7&[fwC SROOF}>9[e_7=BrξRkL[?1.$dlM]z#|U\"7&rʽ/,4x-PpiO ?eIW"ޔmῪvpcJAhzMb*^QXպ*lHz{sJ?EQAIn ũTC./̪K#^`3y]5e^bSn+P!R&O:ާh jAr]%5uI@kQ+¶.i]N2ҥx$ƃW Qoq N/ٳ[}4Jc:VXB(Ur~$ˡw /P9uAmRt+quH [ͷ)NYUfr678?sӅ൒]ءA pd+mN<5۝$)j*m ;8՞f$"[3x&9TgqfZIiHRYc{=6C}EkJv]/B:::nᙶis2k/Y' ?mEoԩ4xUt]N9s;fdoC T!g-O&A<ʃ_nJ"d]ZO=~HEc6#y=>?xSw3a b?|4\i~.Zcq>'a}.yOiiztd~ U\4p OWn"ez6qf.y϶YPbB^LG:iIr7E[K1k: AY)Y%?2bR혙.4[ϰTh/ưx[ce/n Ψd?+` sgT0V"K #1Kw:m.PV;&{w[x\3Yt3O_1l\E_^P@Dz=;ҫS%\ 3y+}zv>*mKw[fCo=lАԵmў (eL%fI@haa񳫥xM>B+Q*&[&EI^! X]X-"|%]/2$ z@`̂޼s%2Vu,PS0=AWgɳFg =q.5GB3 G攢TkUq6(x I-% NA:`z^eJP9,nGF/õ }knv#+vio)ˆ nr\=]@L^ʻn-iХP0 A5QEp`+xA[e?ކ:MD3 ޤzS&2[%<=qb /r\;w $(nR :Ù8xܹg"n㳵$]~[ E^wf؇Ww˵wajA%iGm C|{ XOOIXq]Bl9+nI%آƁW XRCnC389 *_+ՔNl4CORN^| '-tf)솝OqSƏ4kE :m?| Jqa /6,n͗pnM uo(Oİkg: +\*bDژN9*I/p;aGj IVKH =Բ&7Me뾗)П 4h[yry#QFҺ¾i>360WP&ߕH;6^6rn3'7AQt<A=*'pc_:MD͒T_$+Pq}7{QIB@`9ѩ=Lt`KΒB3Ӌ?Fhh!, ӶaL>=XDHDH"ocYL0!qP!|a4Zo&nY#C^KuqUJ_8Ц`OmxP PcѳsQe[}be2 WMMLw:Fw1awLP#}ey;ƴ TSkƪjCbnE4c*5k Gu 砃ԭ֒0G%N+XM41PMG5~=& `+^Do|oOEk!v˽Q`FdtS2ы;cmnEZ.WCwG~쒵z2W"^bhMX<'\~Gǥ(@X 6!r*?lQoaWTY9>9a43C]UHT$@fֵ0 ƍDi{)&h1[iS30@cNR>p˵qmٹ}R:MezLfI3+z:SVè.:g9:0鉛X:\GChZšNqc97 8|~'ac#dDA@{.OYlhT"u![ȤT)8Cg]4Q퀐o,QAfySgrr,SEz$\g<`?ufF}VZb.?sWd{~Zrhzm5tҌ6KnT9f-VQ[gNeBBm៘!#5- PZį]㱄Y-s(gZʲDGY*tnY Z3)sp1ld(좍 >I~%MK_+d^:χwSGs{0 ۩͉m}Pl9όBCf~.c.YQ?@1٧ft`ov?3Yg&4، p$Y=W`4{),VYYt>zJ,}e-םΜ4̈́hGx4&ϲ"{DQ7@}ov!˨h 5&%/9 ath̆$Yf) 8`t#0!=B')fOQozTN`WFv}r1@Fq yA ˺B ݷOV"\)ɳtkx$M.ؚ-SH#yaо"/ힺ4"xX-;953~N< vto%q9Ͽ~{   b`>"*H1UX+Bade캻lOiȼ{6]BwPw沓-Wƒqhh.!tK W!n*^&FI-6:)eh?U?(ѯMyo[wr(ys1N6aUKYΥg62-ҷ ha:G&z y8 `TT(5إ9KvdbYec_64yy]E*~7""_lGa,u,`qy.objWRrl^,q]Oj@N(Ѷ4Ŀ}U2h䮀IM򍰷fq̌wjQ&E¨M6N*z37 "-@+(:4cGW'/Jײa_6vo@x:\jѦx*~p,B^;gC<^ :采Ѷ eb&<)iY E2/Y%ąLx֮RP_Pг)qeCg5*Alkm6YIECuo:ͤ^;fj& ̾UCgוֹQIqP4usf*tFӚ[ n]}*U*[0Z#hH2Gb={ZMjsZ Be55}j4Ǝ8PC"n m-L9"ãP ]䐥fSǒQ7j4EYdv#bã&4_Q:A)n V)Z#zZk`vmȭ_.?qz I=7]{@5c%NJ |f?ar2oF kܛ8wrG?u PLS.|;L?fNG ~̙y S8]M MdnA$ X>+Kt࢙{9 xQYi C0=Vwc<&ۡ3';Oo3oiB, \\ճ-٩dPDf o!κk>fDCBxBkni]XBTpT+y5 IEuO"<y6v7k2)ՙClpmBjKqqܹ [DKA)>!baID7a?e:aq[Lj̅lfB0Ht,#R&. i d+~L0Xشi-IM Fc=#@!7fKsv1H(hA1PccO v=6ҥ t;K[?dNՓ(v Isy/ 1VQ,%2ϿGyIL˩X5Az#7a <]ya\lzwyd t|DOK w6 f-#i\r8bh0sn'bP| fXfEMp/gh~~"V=򗸙pÔqO仗}_6yLZzf ڼƸPB(a0(] <}x ,o5y+E g]-}^WVO0Hn'<`3\kq1!_LR~-{$m6횋k[c]?vHk*TFB /+b_ƌe5#d'hC]$m$/hO~b›#F4ٴ7!LVK;Fөf\$T_GOl>rHg?NfX[nmp}2A`C hK^ri6~QjHpӪ; ]R#KN&`fGdy=/q$NWaԷSh?}sʅmixY[Wkq6}Q̎ߓ8@jh\$[GUbSϑMŨ0ppBzQ%HYLMjKEIV)/3~&ǹG3c= zvd]VbqWLts :]u:[)c]l_} >벿e`5 PKy,*PBLu(g VANT8=Ixt´4l̅dL& Q?qH0>'Ng!-#2fMe9xXwmTWEᎋk%?\oBKm&7F%;xRiiZsh CMOmU&a-_PI}uFČ#x! W:;Hq2}4Öb{Pxy^@m&Z 3]]!bLVDg5f }T!D^ m]btO:Rfˣߛa=`.IRn[q|I '\g⡸DYj] M>(op_ʒMngUK x ;א@\KZUo&:Nh 6xA{h\;ʨ˅D5YfQR@/t?x8)P+D6n(l_bG: R] $xF"۫K6[ `KPoWKƸgܒI$?W-]0]& 2c/iGȑv-k\n#K ʏh؎ö[e SV(aǮ`@zb;ꨳ\{awE+l -t)I< Bwcep,w+}tә)ku% &g@Q g4X_%6s|ح԰<u"`x HtK,B5sJ4C$X*391p)vp 7a'5lk0jU|C9QD^zjȤ'-j/¼2b.A0IqnOT28!Y}yj(aC _ C:QgJG[ [e&|w&p&_Lz ET[ |&A+3St \99\T܋k IF|L}[}{[+**P܅zu4-ֻTUXWx-ѸNSgٙDME4eK(L_!Em]Oۘ139[+d:9gˍyM:F@S-N_P yqcslKoXڲg7]0֧`[cRfrni_biHΫvHGڐ-9vhkoN\r$z TVAmJN '_lDHeR;怪I`ƚ/<a8⡭R9^mmP㋥p4yrf5sm%̥h:fsI%Dd4찋_0kYE3=&[ӯ#%+P8LR6f1gޛm2,]ݲ9 XBˣ/vNdﶾV1Ό ы c_GA Q ~KQ} 'ݚE0@{{O8'QCkBf.0ES:`Ϟϙ9?Yt&资Aex("DeZpą+@!rJq5>W`_%ɑlU|X2{^8dro5KZE,B?:}-p.%c;s~*Uqуl ޑt&.gcY>Y^abxpT@\.J6r+уg_l|=~Z&#SyFn+W:vDw i/@1|eVrZqN3} >''WF6| q#Uêwy@v ׏pGcO5X&}+UH]k^n|E J\3N\ݦ(~ڼ? ^. ڛn|&KwW(=X0˜e6*`^zK5x244q~J4x"LTL6Gݕg#d+ReRV0Lm.iEsqJOvB-t `&b_4D!X3`02)yo r8 |%r\80 B`yǤ\ 5oϬ߬%`9Kl,}[*jD@ė䤅m+5dn~3q⢄1[@Y,Z#JKͺԎa 0/vK8 Bzz`73_!*C U׬9Yk#efdD >zP[=wRifXu堠4j9 t+Nz*HD $Gbk.LG Je3ބLdt>ЪkCGT^+$: ZJU>a5YP2{VAu|wXd)aiy7 75Ar)LsPj ddz.&~(S-Dl}GU|M&S/nE;QSHqjo؅Aю;1K`7]KOۈ'I*.kETdסO!3: R4B)5*q=F_|׮:F}RDvlA ۙY$Tq_hDܘlII 5]-Y~{1ND=uWg Dh@_FxjJN M82g FB0F[^\*.}sHݳ#k2Rxy, jUBRECIĭ{/ꃾn(<J /<{@ P41S(ԛ KgG* G 歯! z3{-ʩsc(Zjȍ{ce.M5  &`uRFhm3c  "2c&I QDQsL"ZЋZUDG9bg3;腞gC(6oML꫗6li&[N[/e^dn]ᒺ]@Hs~K+_𾙟ٗa=Kvz{)h蹝Gxc \y~<\ ;7m&6Y 3ZX>d4-j#^bByػ4jN4S7)"1vN,s\Z< )\y;eGKwYo3 30'iДNlLۛ+D쥿pݹu65# ^k!}`}yzRؓI׌ټ+3eW[PfDŽ y)9NQڲ5U:Z]* DxɁml*JaSQ}Bg݅k֨RW8xT%T7c-SX}a [lp0JrrDE IB K{k v;EEp,Iv Ҽkʦ/È,:J Dxf6-+zh>Y1lw &/~T4~["!c[/yqF~jCb߼L-"x.F bvK< e' 4'dWV/Qkӭ=u\b hZ .Gx.Ek|@3UaZ!:X_> PnJ[H9^#p+mͷQ )Šƴod^ňւ:>RS+l~8j o<ԾؕcD=$*ז0כ2L!^[HVDuY28*i _ưF`K{g"ќ ZX]T:}V0(^l$+p;vM{q˧قq^-z'hX"bxˈNS͘ˠcmαE_k+0/q"i}}چEClU6冶@$T@Jd<@/Ao,@;\?~ho㬘ApSe^E{3ie x&0p㫈s͐YEK$"2EgQSc4+ߴp7H@soM(tt*ar]Td}LȨQG`CHob[HhhǤD$zWƌ,J3CΦ #PL5C5!TJGnǬ8Yˑ{hj[J3:K=АCCLtzDtm{O)-pC׫$AIT^ с>c6ri܉c R349zBiC\X /= )LƃTϼ晞KdCmh0dd 56-Ƃ}FS֯G5M$ szU%9Տȳ![j8Ŏaz챏@BXT™; /U7r(KOU@xU'hS%gQ$:jەT%-/n-!/tB +*Ty{(V~ޑɁthHlH,݀Pp$_ļY%Y3gMpRy' Acrė\@ӈNхSK0Qc~8.ij{L)ZNkXLL~.P/INNa GBJ*8cKIlDbJ"6, '!M7-P D)Pa!+( :U6^x.Zh2_^]teZ#6ATU"Pw;|pO(x8Mx ٿn[I\ =d/@&Uv).Кx :!:ZgPoOĝ%;eYe/+Ƴӭn3GǢQ}qd|tnLYho3PF EB!ǚ$ UdQg4LSq+[o cHso1= BwKǩчEg3?ڈ?[?(2KPK0?i#+֢.C 'WxqfbKca^- jO>jAAu?IW[d ̠Y-Kmm]=#{)Oщ"X$^Lyg:zyF뻳Tܓ`buOI]D xP[DϵZRpAD= 'sFplM d{.ُG6= iKl+oRԿd# QZQ}(]/a2t[ɸ"VIQ;&f$ h/G&Bh9˶)St_&R!+vgHK˖~n9dnei.KQ-P1.=/O*!NuQCS.irk .Kwqy,3 JbE)8_sR)xx'\6"FFd &'Ljno̓Ul9+]dk __:}+BQHD %ke :Oҝ@_K?7[6,ûM='*JHh׼>)u1]aSѶzdDM<[Zz}}PPi!׮cY/}~Tstf90|^9[pEk{ >z&rW Ħ $Т̀bjl*\Ug^H>@[E "~ҊF%ddEC"[E ZN;8eFS0dQx{9:ǼtT[={{wL>s9u_K2 XMb1):M.d|cB `WhYgRћ@AjxEx3mWէޥ[ֳPG#o&8UasCuޗoxEocwx@ [֩/^=c#x8#!sRF/EXOWoen)=hsJv&S l:_&.HbV;$dWU EݨDQBb jZ=]xE/̒oQ Juʣo@$$k ! j$[#C4(/uϗmTZs۳3\8OȔBLw8+0^QՄSuL:;L+%*q<.'qImoufAJzK/~$fʤQTlz+ZyWZG ҉{f 5iXOuVQ2}+ECLJXh3V"D^K*@s\C)o$_>I<ԷPAdk~mQ 6Hopqԧ͡OV0;{"ff/'*}%NPSDCN&\D6 '%VgKF܉r}%"E(U9^GOP1e}(k>'&T =t40h ff$sz>ž*VQϹ*.sUMMAإ_JP t Ʉ.LMk)1uKcPkYYa `#ur7s?hU-O z=AX$~1"@6 R(" 6#;&5>!VO=k%жzވp@ɐMG7 /H餇J36U /\FÕXt׹ QDA$"Cvzj][rDL '/"G.bu$B$`@$qif6نk־b Q]GDxLѲO~>ȇH4i6`CF(?pR\ ͦA!.mň_ Ũ&nxǾu0l彋ݖq(.sCA<(%ŇG?! G7QI?w loLS>` S{,)s M8ea۟Wu _ƮϦJN״ ]7,Ì>u! 1z3a^ F` w " pq,"U^=lP[ItO W\hA @p^8͏(wy0j̇Ră;Yܧ*j!|W#R 6rm$̿Uןis??T?ɑ{U]1/䎤zhTT63t0(9}=G PY/ >m\Ԋn] > m}7QZ?kS\)&b웪XAn<_MO<S\ ~%k3+8%U2_c)d;Y$W{?%3q:tȐ%JKngI㥍/nm5ڦZ/0"3b@HD FXg,&̋ GauRk^w8 :uq4!]8`D4E0 6O8CL֌X|hMK.j{_M6h]^S[mm.b$fj8o Ȥ({\fYJ2*\1|`"ߥL5uJE&?\JS#eAۄy\&r*=i9MiUC㥍?ݏ{k͹w~DVQheݸsV(o{1K\nxK}E; V/|Oݝҧ\ 8t Jv?H.Hc.jQPގj{'(L^cb2RHWi_avzUl.,WC̕upQ>f_@0Pʐ}_2쨲ѦڟY fQ߯8"GT12}pq9B~$u<=fVx?{KmѤ FEPv>j^>㺶4cv[ڹF3՝x݆n\dUYq5н 4۱4XZujNn6b[H&RHyUBFui m G4}\D 23]XeQP 1?]cB(;֚EQa1<IN/9"8 v '.YUfa8ogR(/Nay{x.ڸ/_RkGFH$0,cNeդ6GL(W%2}&YT{c!miJ 飚W9v\zO"]^'XÀjH@}?q!J6S;ퟗt'=agh Us_Ԑ_Yt5byMn 3gME _̚8Bq֣eOՕ@KF)6(1FҴxO1'l| eucZa3!nGCP8S-{m-94$iubYlgzvjiv"ш]~\m2mpD.q_{X񞒴| c}'&v"Fh =h v:wO־dݪRB{VAu#AdnZ/7K7%6K+W%AxQ@e Əqe^WѰA5*wcpK!l)uAk֏ӄu]">p$C ̖"YƫEB8*2) aOdã.6Q}_Ao] eHS0g v)A)2ߣ`0sܦwGBl9BNsFPCCze6! O).vKv'FK21J[G XHe©*]-MI' [wDiq3U |K)zΕA6],#l0~!vocnO!0/oOIj\jt* ƦBc&\o'c =fR{CuXٟ v&Qlk\%`ݟE&,ymk d%y{2aE#'fI39W _xq=xhTtf_t2 #%D0KAnfB,کkhzF&狐Z-9#fs9HlGb<uMZ;ґj뚁 v#m-H0/εy/^v?ށM 梊J8Jr3[RW9 jqԮs[J?&gL:x3V@BrF%LBP@M'Nڰ az>뜷 k#~dRa,`E C<$ph }?&wlY3cyWkJ:>9:K@Al>$yU"UA>ys^3v06i?~DR;/e:˦Ky"IƵ^h*XzWV`=],< yNEP4 ԌTrD վVf}`;H}wl%'$Pg\}[mHe<=Ea̸`9w0K*;O~J SeU#6&*u0~  ý ?kNk8k[N\+*̻%l˺ T |*dna+Ӻq~ $Jb*>].Xk$l'/ΨeIʤNZ(D4lE N 1C+>VhJ7#} a' 8$o"ܙ$k:@]3*)@Uï`"۬$V$2yws bVEѭ, Kʺ[;HKWaê:{Ce"wվvɍyM{G'[Մ9d2WPt \= Im`үNx-}(=~q Ϛ~ON1]Jf,kd_-ıטR_i,+cT]0 UGuYN]s`<0b wR[8HR1'j`kr(^)n \Saf EPIo':oQ|!Mk▣%ܔJ)'9:DM %U gwkZ'L.5Li5d8>L0R!͵6K2"z<yцr~2_[:_N,vqgN@ҊV5G_Ҟ;-fͥGH4 6i M|(>Nؐ!ϴY֞@g"FʩژUR]#m->y8ƹO#Q>lj~FsG=?\,gHIT*A8B |Őe>RA'`LՔ/9;qG7+ 3̽#0!H+1X+2Mjr- x3=xTG6>FUn70f0E{lXf](h7XZjN)$@2SL9(ɖ|9uTKt`8fbǂV{IeWti Lsu~/V7k+\i>{JjEϋ7O&Qc-h=hET&~ቃ"ŗWiY;+gx+` kT _!,$Ov[=(h {FWוgυ)=R "x6\C`_&%b}"lJ2tY*Oh& dDlO HKZ[P$Bm`%7̲QM͍i37E6̩&{@TG9qz`Zf^s-9z2R1ʲRFE‡Uu\RbV=c_bd$L;TvxZDk{ӉSb+ ~M I *++V[g_&s}74ˆG} @w ȻzfU`pFͩRgb;89 u7d #$A/H]z>.sO>n#탫%@5CI1._jPOѦt:5vPK0x)4z.+o\G0$"$9qm8 95&=SOl}m%0RўV65ݤNKa~~2}T}E3FI\:Wcڎ kzqZp24q!G/搌gV8%AZxcXijdb3 +Kop[>ůAjS XMV!M+(k|'3eQZWm_nAnɲ0!}&F n}mv*t F±=bF]bU w9FQp[{I27?!Cn&O3G1҆7:uӤ/S~U@!y&Ы1{RtޟI ~ɔ/`d\يޚ۔O kw|la9*E[F^5x}uD aUk.!Jl)ZkoVZE6ZHwesΈj9Fe :L SYyO'y ^pF@ӣ-q8 ~Chʦh{LS!?V%.J`.qey*bBXxB#tNlf9%E-"2FAż~"; h7,AW =Ab" @uSjܴ[ع>b=Sg(JDy뾪2fMPfq Of^)hwp}FKyoѣWȐK b;e/9U6jvCiϑAiF9zK,`er}G.T)dr!v)Hh,Z`_k8(X^)] h#7aG [$c /L/APQm>'= #IPK1 ж({BHtW~FU۱!2I[LX|E5ܶVOvXުtR2}@CkZߛ.O{3DߘAM=p-C7o*N%MN 9;BT >ϊRlx|쟏p{oAUb4 P@JqW. 2f_xU4#WxD/3Ï-Di T7ѮIOȑR`PTO˵ôL.y GQr^''oq.1r0ʼnKsΔV4jsm_ ޸7oD6\0r$aLJ2x&É+otd?AU0M&ϨQ\p*À+YzY߅S'Sʼn&J& /{Hfd~ !Q0Vh "Wӂz#>$41 B67)xZe..:VmLjtIyiCOӖ+aN^pmGSɾoĊ/قUr<:k&IԏgBw\jhOnzo4vkퟪ!4 }:A ʰ ~Y?*K܆L_Kڎeo+⯚]KŲ$DxJ-(\` Qu90m;Gj7xXlRrOG wGT#C(z=a4Yy)G Vhop0Z<8)3 nP'Q/>O CVvx|+NuSa7nwBWtCrL|'Z0 /Voŕ;$4l"o~)u *f?ѹ . t$kgGe#aa۬WLqDEnz.b45H{13dd_52`״}d_KTσMiz'*j+E!ɰdȦ=٩ش~˦wH(T2Wn4/2 9Vy,g9 +Ҏ!B_pG\V. 3}_, 0g9v}C-Eq5\]h|.՚1 [ݎNUquރ47hxtSbiF3٥۝Ml  #c{63iy;MFGQSٚm~$|@r-!X^e,p1ΗLn1ǀiY} '!g!,MHy3 l j>S;(ЏHưX\d'o`4k:k~I(]? $k6+:T̳ 3H˯,r^VSႰlwE4Fr<4N3z̆bدG͎MK)(qjŶp+30oq)hi ^k32myWQbF6EiL!f" -eA5•1K7,b` 3z~EXF$<nCW֢^YCϯI(hÜ'VTeC\ĬLZ=/f]3\BJ 5|iGyG@A!P] +k[{JR&aD0 oU,z$Ϭ ry>u3]-볮fcK Q^k'P>o05ݙ1(Dh~Mkz#0=O ɉn>,rrlGZV(6Vc+tYcP#5|_m ey1+43 ΐ{8[^ gqG:ar"Rq:>OT5RbT(R!w)OeL'#n\|PX/z%9[ϰ{*CU9 a8KG. 9uZbIP#*<׫"#6kUtu0>ӍWqv/ZV\`r);ѨDMyb ͪáPrRf;d95E,nz^tG☛t>gD!}Cڗ4INZVmvX]H󈁬9 1f\.|GȮivM"T[I,C~ # X`` gqyv܇} k1|{i}@m4mb`fwO-t)3_]]XTd˥,,3Js2dKCi#0h{D RgO(eCTlrN5PQ?9BuFȰ24abpWMLFW1dk=d2u,7x>˪]q)RŨ u .L81fv 1JK 3aAUTŋ~­ +wVOxej9x,N 0:AY3YpS|`}t*Cl5O+pԼ[`x΄>W% [ݪóޯb#hL6&Z|<Ě}8Un5$Wp-ـQ:`}QdB8ovvU:iD4g+Ā5l/kA{0D"%-w{ʽ?uj&1j^9qE"$Kӗ{%e$gVruBMoXxHݹbLTqj7 tk0Jtj'Yecq:p̩n]sE'aAVVxdK8KغIͮ/C<3=(׃V;^ca:f\|p^-Q?RB)[} #Eqaq$ۂ}^33"e'/>Qqi38F9-^e%MN/0U9+z?4;9"h6 zZ{@?@ ?m(vW˥keDC(>BGZUT^`|ofGi٣I`XR4u*NZx51)^?igP|?l+=xy0Z6S͗``H$QY``H1qg=,D3>]PhH>%(.]| <}7p 1\XLa;aԣ˲ɓ,?td$MxE“=謕>\i-H+ʄ n_pK, ?3>W <8ڼWFqUNQ_Oh#Ŕ;dg' ѐdmUJ̋Q]zM *~2s Vw)Wfqn <9(s3BvuWe!A#7rpcfPc"EvGt9{֣7ń]MZS\M&вqf yڑa7/LEK;jBcR jQ2S9 =:te* !8O-(L.s pp`:Qmc_2۝9wл&E*Ŋ 52Zl(R.TT- K$n"PYˎF:ث3DS3DP‘Ƒ !l̅f&d]ܲVCP2 fݑ6P7{BkA!a,h_QpXj8ArÉe`$TcxHm^]|68 >>5J$,JDxkN-~^NyE?+</~k_Ą_^F#TYYx㵟!@hrkNZ`)o+)Zd;go]X]I^0 }ڞ+ h*MtQ80>(·^.v͎T:)yXRdEʮh,֋RrܾHl^YnzL@'/K">ucuLΤxԶq90%y>{v|qۋ ٨GJ[zQ?ctE ֛b3⸒ʹzsHg~*7TSI\A QyJoLXY_hu[!ڴ.ȱ]ji e4 B_>&;ٽ*>`&B(j7[x `}~+iH|Q{8i}<D.EF'ԾdwR>wg|wCNxN2EB+'hSeEmŘx ~ENA]Jv+ΎTvakXk1j9ߎeWS-L qwvwa v )CM(2AɫWh[7 }7m)B:D|@PN44=84JBzY4OUy粀ǺM܀RH?Bc=ʒD?1Pu;7~j/_}>Q*/U P ؚFk""|B%V$7LW~iOÒjZa2؄Pb|uJ;+EQC19wkQK%w'4 A%oPa; Me6WRb3_ֳo+ -DSj[V4!.Equ򿠖GڻDo:.ޚ.3-USc@ŋՎ<EO͂R Vt2 #/߹%Z#)3r8࠮&cޣ`\旲Nߜm.ЩCC7\`*BYr>7)ɒ&Y= QXo*R[{سHt+¸*5xqvrk }Z*]Y&pw &2XCA ke<">˰*ENgOH|p@GG4rbg׼JeT' >:!pJ|J{T~F>l) ݶ0q8ˎ! f&#!kJ]40ib/f{IILr*:NrBm(7䅻c@V0_ߕd9A$1=Υ5VY<|gX.:0 t*\[NV\!ôBLEV )/'H9\%; sI2 !W1uOZ'RUMi Z?06 ɘB"c39ޓ))E2uTqP,y!k7T-,kSH뺏tx"|\>[$:G?]m5 ]"6Y,F. jF%gr\z" 0@%hc>/N+9iCT <.0-{w`CE^%{V}tyVmí֫ x j. C@t#pjOewI6BCv;ʬ{ۏžސyh (/KQ{y3ug+r,GrLǍ#MԸ(khݺ*dl]MlTLu <8%g-6R3HO FPi7#)D6wq$>ПX|E'DLO1a) ǐe9K6凔tފ:<&ŧy"yBݞͽ X8J)ϗ(Kyx ޱ-99 =N΍eCcf2١ktV+lKitO)wM)Cr$Y(HZ]fK#1P==f6cX?2:L拕`+(w6E&6z'?rɇsPcU+r,zSg@A*!otgCⵒZ, |LSMï#̬I=A8pnuQP?PV^fm.UɐzhBngp5*;q}4Ĭ T<팜<ОS?KC toFɴY1Q֪zڨ|>G?PC>-SPU<-]`!Paݶ^"[}ޓvjE:j"u++ Ɛң݋ ;4 ?I3[{0N$!'& u NH?꡴?Cݦ&@(@1ǵصw-f{\aƍЅ }>jB@LYv8́>#IJ9.Oj~HWsbrR%v`8Nz؀ z ͽ=k~fiB( N+䜖YhLźD<9=G_˛W@3#$n釓h!,C6;gpwq5#0mbPkJf#lF7QcUZq@g*R{̬;V\8[4!Nc6چ3`BN>0PE*Z9#a,#da3IBf$t}fY4CF֯ոd2xk=h%AHBBb֫!p\u YGê?iB yL}d{rGQ$ʯZ` ~1?#N`A ~pi׃ltp](1[Ng='s_!:xuWw zLFzHԍGuR#ڢv=Vwo7C,(zi9jxy>25 „d yopX|m#!f",_Y4$ lbE߅ wbczSOX{ǭ٭WR!y SteDa FėSOm |HHo<[¾P!SN:i, 5K>=ElоǙK=ނ녹$z [\]^U3dl0Woj|P wt D XƨOt QlDHĵ”Xh}˚ c6RQHu(;/r70}k'ҵ;5(L8m}꾬nQ.JvmIB:H23u)iB5]|OSAF k+j빉%b+x܁*oLBۼ4S՗08d_ 1l%$t]aג2@=bpGa+9֫x'xFILk0=>Ǘ_QD %6 f]yPƜ6ޝeCSΕ/zYvR?mZ6k!2c,W<昒$ M=+RnUl3/ V웺t7B£?~:hD!Cq&/5é\Zw'W+.ƒ-")' -lK#/\O*miz5Mŏ[23]ՠirgS7yP-ZٺKԾ{69Bא]]U>nƯ%>֚"#v0jp]M e16G@Fro ׵ču &Ma[FÉxގ˜]` #@VP4yq)z=pA&888EbGh}4A wXyx{8`,=d2\2޿-ے r}&|&> W)f褟Quv[>/˺r1N"{ Lۅ&ǡ<:+҉o- ])2!(\SI R;=[%.Rx.LP=Y-mh1*;[f =դfM0q9շS58dIqPt1UWLtuc.I ⃁$#-V~ft2%" kR)Bț[ X>Q +Y\&=GUAJ|餦h Jf=(ORX1HkczT*l|g .=Ey IE2kǡ2JQIWY=.Zn蠾{4M%Z.U&0ʛ[_4u. o&~N^51SGR9?Ʊ Fc]솫y|0xТlDAMy 9o&@+*m`珝2*Kh0ET'3jڂi^=-zI_ʹ`WX-LCɫ/O13ЪxGA`SdsUy&ӷ/t}\\DviN3g7PߒD?zFoQuT1?wV]>橻HAVz_ kOGSkTmNӤW_h=`)ũr ÝՓ~jaOa)4j|W6֑N6<7wgA~' /=;ZwdvL Gm j<:K~1vo*1;bBqq\"3`w}+ȶ^WhbFEX#JS&o,:^' gM%ʌ!=@ƶ(OLVNA t6Gt#BG#C?FLDn(Q'뗈*r4g@~q~5mN_Bp2>e+,8("lj^FJͧ!)6=i0/V1WK=PƓTINO dȝW%R= x؝h4V:BhY+|UT{Zss āldBFt;cP宾|x_^ݰdB 4O*CD>VĚ6XDy&a#*z;EP?: 1=3fᱽ;:CJwpH#R> ˆ B'TюƨwYMT}7  f cJ)+ uemDוH8ϼ:5!qK7bE@n6I1J_ Mhى} Ї|<9#.^XD`]1#&H*ÍXfݻЦ[UY =@>ިH+E#JyͧE}ا丵ȊL9=Uu3<:銱س7P ߥpQ!#(U1Vb<>E xje+|VOl^pZ@pH'ӊA!~Io@B{l(l ր6p>usؼGYGx1啯I&$\Olg+7vbXPɑ/g'|b3;vM1ٯ!ԩ6`L[Y(&н)I/iQ#5AbơNhDT AynΔ,uY)j7z!s j!*WQ (N;MUydZh7m~pLZ!GɎ!;gzmmLAXi|^G1D ks|WJ 5|Vrؾ?1~~`s&RČnk;7H6=oP[9W$H~}#ɓ+;Ā%*ǯYq\(6.0K RTbA9eO r8Pj+Q V#eU[+TԿҾn67g:)ʵJr]usaJyQhJշL&@{tjS=’6t>-F:sH*Awl+'G6M^*nd9H^ Bw cd}Bo8dfN67r@^HžATz,RD_:p @ i別zt0J.#2We޹߸HGƨxL7j7*ki{cި@6ٳ^(wkP-9: T_s0i)kKjXݎ0] 3lU;i\!`o^ r+Y`l`0U@5-|5 'dx׌"D7͇U Tf?6F#DTSO@F ꖥJe`U[(kQ 3=.Ev>XfXJ{(/a>j3E IHL" wR5b%q^O|\%ng2ItkhTy#3?D 24WDd\)>:7\ʹ[|ԩn*_ng3HZR]6]=xcSJ(C5\,k@ gty1]j߭'?m ! |kL9M1PwlrWJhH>QifiY |ˑA`C~㡶9zgQ4fJHoc(7"p%L*.&:}݄y}\s "!t"3+F˜ {z*m}幾dwLbÐruf Kob!mAm MEMZ))Is~T73+mG^.z(. `5Db W^KRA~?gk; f{UsiZ.OE)k_w jܞ(-3(-+SnP IؕYyZ4U {-%?Op^_5KO8O-"G<y/1t$#c%+qͯKQAib0v| ; #-dW-iSWgD`gl,Ŋ=Hb|ПS$`@dkC߸1gXXFܸjSb@UI:#7+ԂeAm!_j} Oyn`amV6kňR,cainGp>|!>]Δ_ k؋V<W%@`o'ji=e 9=PiI1i%:O=e#=BًED֟^UUlxEfR,![;؁ LΔGO`)<ί/*KYd.2=sqh>~@WL;"e@ Pxl0I&[KUҠ ߝoHՀ45˴L+KT(+a?b"n*_맱BPAO ҈"e7gX(oEkFȫsj j^"y;d!mόπ_i]ĠLE-\V~ 'mim'Z@'f*@U? cA9. I퉽Xsg2"6B" YEL)>V7꾑Mq,}+fŎIF&F s;M0WNTA@:M?4+hZS^`aKU!>h$̦B'.kkQk;ElE\)69;pJV74mo-, ]!E&#=u?tX%dTD3E%xm=BÇ]pyLq/*x*nZTMO{x.C?+9|#]n8ە?lxo)v_(^1!AMzΒB^wХ3Cpl<5ـ pi*θlUۊ/A$=?fG-o>($׫Z}K#>8>kt0‘<بAŬ *H\dISl@$Z%S$U{mA+ṍ!WRޠWQ]]]Q|? +wPneZxm}2w3{ϸ~3`y9d}qUNo63bP̐Ob '<sXr.?`i# ]ݕA>pw9p2Iebtr85si^umPe>0IF "}@a7# kEo (~.pΥ ,Clg][c7a`]d,̢yJn3fԅ e=tGmx^K:QZu lj쁋r=}K ;}:SGU+ ߨR-1ƧDב<`apC7  :8cֽkDI |DHHZ3! 7=gsgJU`lhzsHnDgR+ڏ?PL!~U-X!pPj2^5#3v"y7Ӄ"ߕm {4Q/g!ңP*8uiz C?۶#Bi~E[z9 92k>ln"yvHՍ_n|EM͢V(_#pфQٸp yJaDu4xJU.NKV=< *eZqϸ؃4pM; q/=Jg;Z GzohJRF:%ŒX:qPWmVYxF]:&|t;ײDgxyU=tY-q5kPE }s7ʥ`u UM܂KtJ뵩 bQ s#-|H k5~ܨgsO/KHzPHh%ȡwGZfmYy)WaEUk@o1t>>Iv#FgBh?"'ufSx$Udj6l N_?m)[&h05ZjgWiZau-ܶn^g\B'ab*M`H󾗅,h>zPn[ccC pT NxPIV 櫟k1g1ZugMxw^N>pB #ඕi8(`#ň8g^lp *j^.? ! VU'HO4#Y8 (>ۈb$gOeL[^Ε(ˬZS ,I(S|$}ȹfFYVCל&u/h+>w;\k翄4@v&*\byK'i X TCCT>g94fr{ [^=b!.݂ yaJ ;v%X3Y'1GQ?SqZPkş>n_A{%•bYYkPSsHZB-lh}ߍZ᭜}&RQ 1Xz#hʁw`)ҒZ~Z?h9(*&2Uxٗ:'4~(w64lIkR (BtU8@x/Okp7VW@]&JƉaxĩuOqXrW*բ8]ulbV{/O(Ь+]քM*i8OG * q*^@2@0oW7AЏqy;5X>RHcex"]1Y w1Ҳsk<ůp?6bI N(FZZ`LeSx撗6:GX0-,/BY~\J/ʚRf@Dt$ ,T16KnP=ݙB.$n;5qwOs/K`疝%4>4 #тC"#! m@6+[rd2^o;"\vq sEi)Po>~&lpfk)]@d{DU;ֵo [& wFb<+74gO)ULOfxY%@#d/'q6MY0#Q?|boX!߈qE>aRCyOV|m:;NEGΒpX('U>F^%vQ6[Q5ye㗋uY5S3JGqH߿HĻ0ou!\\.= 0^]\;0wMek.,yeҌjT'7ѩ t#f]`˚n)s'Y8lM*b!M~6ELJ(NZ6w'@ goNv|t#i϶y_|ҡ P$bL ;s ~{aX4rK&[ЧLԙpxB";Sɐrz1tWZ٥R4'̒ 2콍oDJ$3\61YLk'(SVAەč ?Gk״Lo̞2_[j5mj4tGS =56{w ^Y[|dR0!\~@(? j&T]5/o5۾&A~j_+?rg`Dy,:N #NڼaLjS̔Y1]|xu2U9M{06Shk0tPy .A/"?zSxaɝC<\rm ϿA8;<~'<^s:ҵm"4f,ifM)2@<~۫wz-{ %eX# L]K!"n`pLYd3Tvrȃۈ$mDOĉ@܅x]vQ~ @!? -E RǴl-Gm0DbA䝵NZL7fxxbĶk#Pg ٤]G5g' qWW+ZQ.CR΄N]zy+tLO$UƠl Ѩ7wFr9H[J LYzjgZ兰HɘTjquB'7'j)@O%RKlFt!\ i!a{NG:cқW qD(X_ˇ}(?y콣-k 4}ǻB>*z96Έ*n6ze";1F۷S?5?.5lcsΉgin]ԫ jOYQf|2 `c @&#,L'JosI2{ +'kW}e`m־w,n9կd+8a;C.^H?t)(3>Pq?>c3b,ctR8D7*/D˖?_ Ggm!8w! eA|>cRoҦHQ i:#5|HV(ދ5ݖ,xxi }ִc2fPZ@o-p{a]m{$C'7tT;$9RN\8׾FVg"z0gɁ d%}wK|e-y` ۗ- &r  UN>_ s Ԙm{9VR.B靗q59h :+IshV-ߴyIz W45y,^$5LpݑBU!Ev)h [z]^fC;Ʒrne /@#˹^Dqڅ W)Ȳz)>(?hF.{Wֲԥy{CB=x$^aKFJɀe)gx$̓pѝ)=Ggn`n5(4z Kv_B5Y9)X%[xZDQ>PmzB>!த2Imeǖ|3or KW<ڋ=]ŬWgB5T ^}(& -vڂyS_T9~[!O^EKx%z4vYlY2Ի眖ES\teB uv0 HDb6 5MDk(ng9r=Sh&G,}9-s 竛wm4A[Ji4署K-y H# ROh 7W cTo+jQa#ЦٷX9~j/b3cqno^_x]I6'/GB`/}ϸpqD+Rmru]نj|Ă@oiS!Zb?Z6德 >n: <Ѭ:a 7Js6+ax[2^i}; D>lr!vYψť|DD6#u5,|C7(Bjm ڙki(qȟ4B*Xg?[g,M+w \l\qí -=/Y` F?E桧\4/\=r])7E=-lep]ڿ譞c=NBAç[p*ǢݍSnlq2"-H`ehƈ2.%7O$ ﮳QT`ښo.bK}`I l6#y"0wt-5b$Cm]UvWy#N*F/b@ }G@X~vni9:(Y/+K\ߺҙ۳wqR967ۛ nOBfMpnL%ӎjwUͥGB-qn Rm?:d<^!}{22.S~ {&D dvΒPQ'?$2 cA6\[!)EW101oJW _IEw+lZ _LjGĕZJlg#w8d霆zIKÄF uW47}*n-ar[ IBH< HR>dy׌, x ~R[f!'@O"cu{X+z br{q b]@j4رAJ)W.!sF n8М4ijYnIavm'tokv;Q&hBVs"*Zk uB /R %4ӫ4% 1P|z#%'J. [_{a"o/;Q:ps RU/ D]*]-ک6~HlOEC@3\xd|+d?` e!Nh %5)KWGr؎,(䌆1"AVΐ@ ՊȤ7 r7Y%/?+@EȊ Xu3µ?Lwqټb4{޽tjF# ?_A S%' K,dn7 3:/Dȱ{^)9F7In3SG㇣pQ "R..GC5 s:\_TDA|"Q$t.Nh)]1-Ik}lg*ZP©.Swd&\64%FskTI(蛻j-3Y7H {c?%~+=I,*D;yG 8XCGK+`'0LQ&e^ ɪl(\ DC_32.R HtRtUc2ӋwDmdtsQQkzA>tIm_l$ȶ%%/;pI{EomrzB}&`p]O߄\ #/xy,H8y=OtZY:u`GNu!/듴J̃iVYYa%hŤ"$q 2u,bqc|ap"lNhtZȦrs3VA)_|Aٟ\3Jay`$p~!SOq}4=]6m*E.~xiJ;Qb>1"#Z6sX׸<⦌6>*‰ }ap3QZ ^_};mlc|F1G7݌8PzPFAHUnw3Iv5B+1z6.gDVӏQ[ic`nZB"ai)ׅLK:1)"qVL2;C( S)R2ΉJX1芁8Ϸ.McAZ?AK;Uڱ!z1<[>)Ix46y3 4Cxp(BjzYWw}dv*՝ZQF N{)A{ƬKPD=&m8e-_~ Z|Z摊ɏʉlxFp򶱔f N`&FM׺G=v"Eՙ c + {ɔ찙d ZK F0Ӏ^|*C3'N)Y,5{9Sk $ZUQ8X=M(1Q*8WTNqŒAz> L(֭3[k*mnShEiD % Zl=GP9$ހ,iKV5oUE{&[G'VkEu.+@^8΢-{طj>vH)v0e .=l&v^O߄~:X|>EC9}w=< wf4=@d^wCg@`U vtHp|<-4m>&s# :ڞ뜿*f?xlf\)/@]v)cl~tc!B5/{ a҃PA|vc-mW99'y K023j8-ї6C<0-Z_S@ZmOɢEHB0+Ȏ/dgZKӿp̣ :RXf L~ X0XYPi[ȳbeՒ;xȹy̺Ѯ MOS`i?C|v՚H&"Ք) #%cLu{Pts>+6>Ow7[q?B7꾬Zic&R/JcP:eopE6wc:^Z7?}Y|0\](R殭*pQCJIx Z%o3E^8QCVℑv];YRO"/Z57~s‰]\Q}'N7_ĶvJ!*vlE\wOCBBzke$iipd̵c'1^]p[߰ ™~ˤT۰>ªyoU=9$/9HgctTqT\US1?JZV9m)Q(VD! yc=.XԠfc|ZcBZ_D˷(z/_No%[F T/7zlm`\gڐ&>W |dWМWׄA%`bCU'f߃kQV]q|b2h'%0qI>O1a~lM'dH`ZBᙒ a|[tZ]z/VOɿ3\qR0vjP6vTz!D_Z0''?ZSr۾@]}%ˢѮ;<9'E딗`O$oð48́\$n9C~G3oSe&VT&4cPj`f|ZF9VkA4Yػ`C<ȀyퟬD?lgKeDvo^qB@] R=yf07ߌ S7Ʃ"iw |5 Y6$!jguwFvkCs! [LVTs$ŻXGdi}\}kDF?p~Rk&xD}yQrG0l6]F};HA WHqy{bVX,ǖ>LTؒy8i 9KlT)_#=t+{~MrOE6NM}T;R oYv![8՛W!Q*i3`$.h qgÐHU5Bs|!\.ΫB$҈>زC~=T$"媧5"OCBwG#K{amHʲ\|/0iPBP +HKFĪǣYo5ۈ.g _239@C$;?:Cm=@c)̮7CEdZ&ASqc)ewvm$dŅi1`eQ4++'{m:=!Y T~OÊ,8$:ne-4'U"\'9busK ~d)"gVreX@exvlE>`IB1ޡ (JC;cr۲0¹Тz<^[*jv+gF3v%zHyik3Lznmn ?wJIuF6'Mz\'dz  KLa`4w8W`j9ۮ,1jvg\x~m:05]S5KK}'@'Rp*#=2Cv)1mg9$bœ?F @$ل tD.ۏdw_F4'chY1|Aa֙.Ea{o¾9OSZFr4hC%H*F8xt_eJߡPe~Œcy9?}}z! )Dxe5H-Rl)Kҫǥ1sś@4wдfM{G 9t1^c(VWm[;vG6+(A4m8 A-MXTuq nKB-C Ʈ}.1M.vHփp.TE' V*R$w{`@cpZuT/#}:S\)o@8Z#/.Uop_ mkB?SRHlV8K"azR8=d#EYX5앍OIlᤶ=5S6ɾvLw!lH1L̝c<8t8@sԂZ@pޑr!+VKҔ,)Nʇ榠(;נZ(&&TH`ٶ^gp]xEϠ…Mi43ex֙Bk߀t Ai+#N6Z $KbFtt$p"wyG--Qb2C!A$W1j|%ZsHE:y !SSY#K ޥ9gatt׊NtGh\E6E &)ۺZch걕9U4l2dTכGu+ xg#UʽR>=7g/6ۨ.pEtvv_B6W{-tk>HՠT 3Ցwp.=UR6]V3.#M4.?NL̃wPAZ{@A$桍C}Gzf]jPmUu.}r.Lٿw6YSh ^ |j(EvQK#dQGyZp"h"Q\p6AI0p7*+/1[|LqPlʴz{.U.ݝ"ȁz 2pQ+v#`a,w2LW,k mk2!F+K|)4tJҀL\a9HH݀ |Q@W:O)t.S48=I ŝIq1* l8]umx Ay$ɤbM26a1q¬/\,~8WBN>mzƔo(GMh'\rZ2EFGZXP>_l:ȢZ7f|^ "ѰV %JRKzgm,i7Ygu L+<Fs=qA9S6.=Ho9Eo oǫKM:=$ 3Idʍwr֟;*1~%XΦgi7U-Xl8_+T|FДrG2e)BDp(c6+bgTѦueF20&ЖKØg%>N׏{إXw^U{1 I" RcJ8+2\ZyJEKW V s A%ɽ!cӶ97Pj7j; Ta%ۆh~c{ƲgB6`hfs#g29{ĩzjk $ !IE`!ƷgcE#&)nM {GMk|wdd=2xшhq4M2K)XzdRӥ!3x'Ȩo[Cs!|.g#j Y{L*mݵ큐jflؗ.fwCs3lyvTx94D3I$KHl5@*sn[tP/f i$xxc"FcfR&~״>T>y )w|+=fP}o" ɤM@PhQl\#Z<"N 'X_ѱVxIfnQ(PdnB.pmH)T(2RStJW`߫ꭂ- cB`#ф`dD)4' !ZZp]Ϊ3O\gz;D^d8'f^D# l\v 7ׁ Ԉȸ01I~|=GtoU60ټAer#Czĸ)\(GE o nnj0=fO%::*%]'Lk2Y[yC$s,ӱtt.Ϗ4ụ.*r/JXkVr*Gŕ#4ϫτ[\gGAkmyϸHL5֌8lb}5"5/fEI$N{ⳍZ[p ƘbyhNk#Җy1 "f+oLд~Ukt*tWȓ$ }<49 ǪÒ>XV,\Sx9Hm̻;e*YeVě7|$׿ MU<(5LJKa硂,feX؋/%|qQh?j@Bx5+đ;eSs1?A7@8dy#uK']t#& B޼'/זWK* cQ1RD|EIg9!?fʛ'EV ڱcsMfCP,t#N}K-}y3\~'aKi/>!ٚS?8S3gPۈ \]Yk(^&0O@H+M300{ˆbq#h&QBXR3ቭ{0|i: \GXɛ;2g\8Issi _([!)'s] -λG_p!TݒAAs%;)3]nSRM^vrO>˥C =DPX73JZumf$2VIO-.hXh7Z{3\^ i?al =7B y@2ԣ FTwͪ;vۜ $ `~s7f]Z01ZY/5T{o!Ĭ-:'Z?]tA6@,X&6mpg٬!dTg*2@DNJݙ;Դrf?ԱHffuvݝC׫s=IWѐueTƘFTèLtڄ)W<"bv*Z4@SQ(N79om|U Ubj~9Pnl(N<Y~C*0fƃBc?IovӰMr:B!2~1l&Hjes9;C0rMJF>&y<n%,-0+Dr,)e?heiDZ~bKdF~n4%YT'ݽʳ-zϬ_@~&’$4|fVd6lXek|k4$l] ZCay/9 ̞sڷm6:E;/NlOPQ5JT+Tkl`j3_kqP H5 Y m.YmW|O0ǀnD9$hE'KiAn.>9œ!Cl&;!-΀<o~ԏ@k)E!3ޖ!b,1R7mStȜMf3fL*hY1.$y6:, Q|&f|ܐ74MjrhzVJ% e^IЭAwՙ3=L.f]ѿt@L(0@\r7pQZ<OĂcI<<cD1oZS&Aˁ"cG^!b5CQޒxwW$XҨPF8aLڿnFQ-եG*6}^8׽F=HbS-r!pvԜb/G"Z|ܬ }?M:W~`1?qo҆cW| S2袰pY ]҇b=rӛoI}6"+/'s#|{?9Ϲ!I'LC3T+ΒSL2?^GY,x+u4tEtÖK5|B4\ݾCS@ 0PWQ(cv/._%p5ZikjtcwSzViHƼ!6dr7x1sBx|/ o N2"f#7-vd&XgJ~wAV(,rV{p it?b <ǻNҼk‰kkAX<ǚSƩV[LZT,k_q.8ZT oY_菥'eЃPJp4^"Zt~'%]s~; a_uEY0ۃ\v>!nb l`"^Ұ΃pgCt.=RP>]ՠjƘllRcA;0@쎺_QR0hQigCro&P{#|%q@(#;G(q~c~۫(B|+ƮK{I- ? |& 7d/[z:;+n DX42mZr+E^5_*%2_VZR|ノ-f3z?\w3R;] ?fڧR|tgn#:eMN:h7^(1ko6ZfL2S0߶Y|[ܰ|mScF^y |* QOq{A!p6%>`ܕC:ULGƇ\&6tBDDg ,nWa@nY$IHR-I9ճ«sgGFT$#o}niは{Ƀ.Zwlڢ h" Z Ҕ75b+Jf\&$`feGG/CM*[w$ɉ-&qg3kpg$lώh{;h`?d"$ZcG͑`䮄7Ά4;u d|XoЭa! evdkCɲ*u)p 储H@mߝȥ,o(fHD&ʸl(FZ 2vt2pdD:v/EexzzX{ɿLn2BB_4Ӷ}Ss}8Ѵ+ʋ OsmsWʴrf"}}x*YPшi UG/N(\5(|70_Eoׇ2)EW$ ĒM ~>Z P;\Bp6_56trrn){,qS/ձ|mFe/Nc(C?+dbu/:k֕Ary(2o9"a6F*#~0?6g}ϡaa@tm$o6Ox|$kSPegKT"䲻"6x dBbI t:/ٶ>c_ V%ȮC˟*@'{g&#-O4ܱGEMFdĝt?x\oڏdtkΆ)0x=(U'Eܒ\K8i֘ࡀFkz1m7 GtsqR ӑx8}K;sq 6I ">H(%xĢ ARwAvZnQ5оNJRM0*:B6xl /3TO)c Ŷ.=:sN3XicU%_{A (dzY8QXK3㭜S2n%1DCN`̵ՑpX'RmMC=ޔ:Xt}DrsÞe *6 fݺmfጙAٰ*Z5VAu@+\Ai 4";QafYYI;pV=i h) b!Ӎտ#Ru=׭ c\cjɼJE#UVei8jTFNGluR=P[`uqRݒ3p &pg/CtiΈ+wۀAc拋wfD*{B ͈ I-CөEHsξ)%41-[/{D◗STn_:޻~B `evYC3}#xƭ'['a2;i2qK . 0n#dޤbn408}L3|3/&bR&F?',YNG!RV,3~{7T8ty ]Ha6aF](/+K' RMU=א gZPAoaH(1V;XIu=[rq;z^ BMUJ"ky˕ڹUR$=+JORfY@ogh "ũ`f~܁AJMIƇG}1F(A;a 2m&K?nD,,T @=X\?, jStQMw¯*f;C mRWN\xkl*]r^ۓ8Q5M#+YQGe %RM1y O]hpWd;j*X7 itcC#T'Mj[ n=2N;ɓhϨe|Xo(]=L-@k(V[!]`zusi笋/ '֞c/YshL;tn1vS?Dgbb /s@s+')< e2do99/z`<GIS\&@v , X/FD:> +ǥ.R` ~JalbLD"Mj^"WRݟstĻg#'"Xr %s Qh#fL9"`}i] %5$R5$ƕ&E;!VO+'B}[4r3Vzow7ȌP]гnrÊ NZgbcI+vZOuJx f kr};E+Yxqa,TzT==2eZX0&F̧4 `Y/ʮ]/Cﲷ`GW}\X-L 4&㮠*1MT6!O3#͙g"{+7D͓ݡQhN(^5) "" [ n#_cGBTm(7pc;}|`%%CF.9J\u~I'2Ff6< H/OSr0! GL RLxMJ Fz@Ȕ~'$78@(ľ[v,:J{AZ9zckȓ3i>z,'SVo-F坐\)Qu}%6h[(˻SCtMnxDtDBB0 S" MywbCh. xfCMEK׬['6Lb9^WX1ٱJ}+;Vɺ2+_P K_DPz;L[lK&ÝB>VW ?BFAJ66Y4oÕW-ώ#um'U%*=q_*if{?g Q{ ^)+w¢L Hxze|kU٧èۭТ]sT# yHD`z֮і"nA4!W>s7&I<.RЏ8QA1ReKܯxMOa ai|xDR<IU:#=y/kw5sr}Z)ɋBbC JNʷEo8Eg%Cpkcܧqw$|YEH (DUYȚ{w@U@#m û>->Ub~6)0-ѤXCؤR?KD, ,q wW<}<+2=Qguܟ}0p B-g}x2Rd,A/ at| 6hǘff2þ43 ]Et H $`i ¤[+Jcf;HziLXsBfDqi%UoY޲G\0]b<bG1Cxz[4GcOQ"8uc$.%Td!gk],q>'Є9ۃWx~[K=p!.}%q僰R6f؃[6O Dud!5^ qmQ-PA/5`Jr\ b7\(塥Gفm0ɤ͚aR:m63ϸ'F~5‰2!/?[a?Q/ ~BUw5k(%ً6\*^%Ȕתs9rG_#Q]W E#PZ0X$NG5yTen~_:YfwsttG\M7!:HAdMu,>QfvMIdUNU3Z#Ū3)hsC#"Z;گژV;v.GWs(Fb? ލjGs-3d(EXOl^ʐIFc+aJ-:Oo*Bl|KjN닯y.p4ֹg5P tfu\v47CAo՜TqaCucI<˃!sa0-'[Djud?H) 3s nt!M*8Lp0{y""l7xdjR+wx5`ff4@\Y%oxcF#ki%UD;苜Kt2iq%1s_SHՆy0b o78Z$ҝYP:(@흇VX2/=>F܌ρH]L>]e/{8V4ο*O+kA|6CdA%#:rHkn0Wt uջS+~X&nEhDu9c(fH랳3K_OLc̽x,zdig,m]u_A9MyV7'Ո~`}+*J}qS!x 'yTjtD%1U&HM~*k%KPٵ83gWȌ*uG!WZ32WyirIR.IFG7}nx [(EZ&\QDMՇuꅱU4pm-[þ6B3П-x.$l3e%A4BY:&X7: Jt'+G> ~SUY`mJuv4 Z/ Y^kmݍx>DњFV#aGY/ Q}/X+& wwYx}#t@a4Afcөg킭Pl&̫Jfn[0 · mգCX[P alNY>(^dBv "ߖrv~lI|ڨjqE"҄:I-]GpCAڜWNOʹ '},hP?R)%hk{~5k,MYoB·%l巵72I2,MJ #ahd셌0xy1)+q ~X( +۲^-1iw|5Wy& X+66A\U&굣aKC*cu-!,v8!y:ɕ'g|u"_S=+.-]>>LX9]8 J; ?9JwGZ:wαiRو!t'!H%>P4\PNjj[y6oK9/&&hny.cxuX=A+q+=[pEqN  Ʈ3OG5=dŹK̻W:8P&y箻)/tF63IJ)4@'Ix]6?-gi?> u/ @$$PGY@B);d! :=mo.#+e@.^2E6\W6$(?ۨ?Zcdlp$;izɯhg9Þҹ8 r1twJʝvr6s~!hX_B&GnJVA;\E. XHuUNQy\H C3CP-hPQbWKTV.S@jRM!o܌k- { HItt&dB9)M8.l>l3X`Hւ62J75%Ǜl.Zl7ȧv-%LhY=P+*Zi{bh$ &.#=n8 QwSF7k*e9xng,SXkܜ{Rzˡh߳@Rk$'A~95EEZ8eܑ*5uhcrǫ*prʠ?=OSSޓZ~Ch3u'-\8iV~ly{L]=Oܼ8Mj"v- kljI<xCآu\8̞ղ:+8mYhm~TFpKڔä;|ZPaURJOQ> ť.>njK[K)۞S[{y{g~VXӒco@ s[ a9WC%FTUFz1].Ieχ_J@"xPZiV\a@lL{rXsGO<s`l?9UeEUr `Pn&&ḐՖI邩ð6[P#5:eb3y' x]'LH[@HZjmI_'tV%HEezP ^Mb Ձ6c;s\7 g!/ppm0'0}ۧj%nơy]sYxل\L)!>0-N/U&Vp 5#;1=mdy;yCDM;X'kGAJ^xh Rb; Ic&kbhdaO@*%cü"&d+Ȣ* fm*{bz 94q_.OZ&(0I3q5|:L=b0v-aA䯨1 P{, ! 7$^5˰G43T{>rQN4e`[ConZVڱ+0-3|$w$-3N+.H~4k5'yl̺& l~^8uPuH]e>C/'B#&y* fʇC/VFڣ ["B=UǒJM[JLIP}8@]VU$D:eQF ܀mtD}jqH]|vd&zwd_,:I{n>JƟn20v*R/mXqMؔ;, kt!n J=nG#ß/qeJ+Ä/;7l ZB|wm1w&. Sh$8L95 t)f)c%˔MecB7F'eVao:;yyv>U/,6+=ѵRG;ҝ͇>{ B\Ly\p'x+,+?hn|f AdKHv1k9tV [$va6[Dӧ<9# ^0i3vբ dzV.<)t;]89Bkߏ Om1#Dk}"8]o;~ y" UBK|90ን)y)SIڡ]6z`y{ H"-ej1Ѩ8;j] |STR:|9n@ʊ@ ;N'T_gpCND츦paϚTM,8TdC}cйON3ȱ>q`t.j59GoKN}s][^ nP 1|FY%UW%{) nr;٥|o U]yg^P Z'^\D0E[J딿>psY#&"`“9EOdǧ0?d;4Ds5kzMG/nIY{>,Dю|vnHhঐo |0\W,ɰL,KӹP_(tYvǥS+B;{2'+W?j㚕 X-03`x#Gp!L^x..kd\d1Sch{+^ >Bxr *C+S])8&+ ڡEi}$8xѻBdLQb86vV GhD+53q.JO@yKg99s#}ʔWRJ_[fE߂9ԎB*'(ЭzZq?6XXGHiݝRJI)VKJGYGs7A%7ZGQMp?nn3[#MB'i!, 5&1TeaBtHSp#xamnS6;&-XS'5oݰzH|l'r z[NZ w%\ZU_)ΝH]=:q|Û} 1a2Wo+ >x0H { Z^:ܙ6&Kb&oEO6dy]bG>Q<L(Me,WĚ)o!\+}tl3:/l>X t@3g@BGޛwXC[)x Tv~L<hn빺dٯ|*dH1l^A(a(羲ֽ$Tg. #VyL98kCQ4ỉeʍu1Fp H+kp8eǮ-X)o!c F{e 3,$s5䉠i1j%-|n4 $נ7}DKa_['1m=_:EWԎ;)Iqo 68MJJJT'UŦiC9ت=VR̝X|p1(=*3I䟓JBÊs[*_S`>:0`$*Dw'i5)߁yH$`DbHܥkA]|$l7u]#.uM/ 2忕P 0^^ **y~iބ%$s5MQӬ)F{*\!iF/5!F-;at_TEF;rN7`?$xz;n{P1MtV)$-|ϜJˈD'D~r]>,{ o9Y%.T.]i !1r99%~gD D\* ~u-:e:zKR.qk7s!tKPSo˅;*Òa_>} 8t:oOʵi,nҩjƝ__+C{9 6)Q\\=uJOhUXO n80c 54Sc\{]Xo(2zH 6%3q4F̦ J9: ?VY.qZ#L;> ͓]y t :գȅ/8f0Ƀ#*W\+l)0 lf1,! r C D p{J b":x]saaה?i5Wq7s @VƋ*Rm5HfQr#n Չa@X'5]<.B{BB捘x7sRo0'^!c n*GZ`F/m 5^o`sHP1Ǯ0W%~=moǿ| oF\Zlھc'kģ]91_s K7Sz^gїL݂z\Ǧ{x!W6 F fu(#PpT_bI慽7eBFv)N? lc*k5p,;.fiK7^yN$@"D O $JzK|¾ N._Bk c"qK~͛7AʈWUgrQp>ӯIeڧzKC2t6=rsrt*{z``zF|@99 x0h|nplT0mv /K]>q`4~NNIe7Atd$OGKO,|vlf\\8V:^`?NI%RpCKӤ73kuDtgHG1PB7 Yp' EJz!i!*Ff̨[{zNzi\(lF}L2j9"A2[l1-^1seYw3$R`4SbHG'ǥs4)k9q2z1zA/^\;/\@dҒD8]*k2MW$P /4iT3HXmQ*P:Z]l 7t`,Q:OTi2"?_|fS͍'QDu 0ȡ0 2k2 \֮$Xgrqβ}M|$&G5v:(Vp=L̐Q736 Rx|!xC^:ʒۍ#Z:/&xH׃{*u:D1+usPRc,ij }8\7nQ1cҜ v~d @ȡ|)IqlZImXhDz1YTB |kb(M1a_[ }+we@n+f~T.$ξ xlr~8vaiPI*8\ƌuZh.wڪiy3R?`^Hco]e S@iيfoVO$' ]jaLHVkagrɼǐsf@xƬR{ZKU)ѳf}-+rnp/0?.N."! cnكE[9S5’¢?{)D`|Oܑ"5`Kt'=&,"e|Tl/6ґ W @ 9αE{ Ld.lm&\ΎWȨ3+l(:VP mh,lO,-b~gF4!~$,d?TZX1E#uAмx#/U<@#Xj֡/ڵt9ͻ߫WBlctT,4t7$Ux֓'qQ pKJw'ѬT;.#鋃aF"Sh;]_[6+oa]XEۅ>~thH}q6ۀ7Y /Wko5S^'_D5~qG.M:#뾍g$ksC Oa4=3$#x]` OĦE/Ym +V2BA(/PJN{6yw1wXoݶ3PDh 854]g ~!z4m=qB_AqA҉g '9 le"ӫ3皗OC{bĮqtӓDD+!iz\y9KMJpx$!O L5:4ג4G[g7 2T@*6V$7gJ7ugp1 6OHz\r4}`wq?걞ƝLf툲~(`nf0![9PrwH/18 BX1eӠC%,O#[&wR5DSj͌2rr)柢CVjgcq-ɊƒK(Sq=x r*29k~iA2nvJlSH%tz2RX|JJ?m0mKj ޠ4F%]Tf_7.cyP./_㮾k~yVaZ솓^.wwXƃִ!1dQD.4tYȆ 7-k\ >TE(ez,ezהY`p$aV⁢cۻĢrw EIg܈D扦Շ'^ x(&#iu3t,I6NiR_AE/etϲ/&@'{= q{lB Xqh췙tujv*# '3&svqlB Dz)õ ])?;ܩp(R Qܖ#JjdMK0mThŻc=%p_gђRkpcU7`짇.:ԵVsE:H0LzgnMſ{"o_XКƗ]lUEȸ"̌ Wfj(b蔏f⩶2xf\܌{: R<۝A(HUʮ5ئIlf*)FVC;!Vr*4n2`C:sP-gYOwt)O =1Q6[4uZ:=?'.W>o0*c^^k7=^gߋU5EQ=7p b#EAuf WoK?hx\y&L9oF""v8l9sڧ!8ͳma:0$ 8?N+E)HO9m|hƣ4g13 4oŅ7GA4?*6F@0st/]rq0I'a&8n[2%뿌f1F$o {b y `=%ȶP< [ZtGĥ ~l| Of@Xm!\史M G:K-8FkCzv5LmfweƬW.5QpYmP9!kq Ħ.'ӎn,+qW5K{;`6<2/6mڽ"5M9!YȠ$9uk>ۅbqK{:ЀF Ry>yRHLMvp8.$ \\Xhϯenuոpԅܻ |1%_Sf$A'F'9urmBҒdKjy"ȸ![uDw[T [r;Xvɹ1\=(31ͯ{4GS%̻&Lm<2]ݝ)/Q$͔}J-egJLP 0/,N2~|P?/7gDq=P//KU7p5yzfsQF ǩ8U(u\͑Zܹ~&ŤTY{?qaQA$%WEŌf S[/,*@T?uȈ;W '3JxXўL9;ե0WAs3N4P^b\px%mVܿPLp2k\=y!F+sn~7X=3艑R_.]8m38;H}Y`p (o#YRMpY'q>@ 4#|q =HZ7ua=!wXpdžX9NKY$ { 7GC̲g&Ѳlӑ" A<>Bݬm@]M(B3%dc\?vnbziaHM&o"?XrڜEr-[AGpb7ZWV{tF+7ybֳ˽̯U=SxD! Bf%BW3Fv ,SS YCXaojٓBxShKȟj)XxY M?-/u lZ)!g4XpDMl 1Ah]0sJ${b-!q8fn\t(k_ݡi݃|+I=_ϯHcrwFu2=mJ?YS]HZmsC$>maH܀ Dʨ&'tl;SņSVCX^Xq@>bmvX!g'fv(Mr-$K8MZX e<{=b\TEuʱWY/B-Nو2>Z$B@:~HU1g+[VT$Dt5]BfXx;?ZrNufePF-5$Tqs:+9CCqޙpԐtI<`K,Y$U7/J]Y>#$'8i͐ jFRLlj6vxRJY}#7&寒 -Kh' {nP@^z2*gȰ 3E0f=NI~wmE?vy?1>BtE[kL0NQ AҤrDOzHڜ?.]5߇[oYOa3nvqrj0T.Q7 WBȌsQ&O\!EcCgRHW֚UT<Eى&%Uo_f GT "w{eGe5Rjkې*XqQZc:7͉29MM;3y`iXQ@ Cn|S7>Fn꺹: Xn3 ,k @xWŞ1>4C`xŗ ;aDa鹒ݤ$hZ A~:{UgvBE5bvZÊ<+(CJz[ gew\~,6a>=E}V i~u.5G 0sl.ƕi(চ+)EWV\`sOYf"~X/p|$8-kd} snHԙi)pzdŖHjsVmoYt?f6}xhuf3V)4l[W^Z`~k0V']>kඛBwĂe{M-뮺{Yk]qNs6 ˜Zb;;vW֨t2> l;v Q2 76!,k$D_ۨaJ2混Fyk~8KT?>M$|vGpP5IݘXhp-ѠFثYt AYGܷE@'.N/y\S_iЌ܊>+y9DV[֌%K+wlk b!dZ4:ejNtZzRq%79B5ffφz5ەoW(νqR/7':IKP)_fla%(J{[/Qr~H9$~K7ݹMi`fހ5t˺'t`{Vӥ[ 3.zTjF s EY9b=aukuO3@g9lvݦ`]yL۬XGR[Xbg*2fѵNV|[_ {.wo=C'a\Ѫ6D&~<;佮8hRkYHAs8'XDB'O{@ |?}`Ql Z/w'(Rf#@,,*vbK2Y/|1?*ǜAyȍaYC+J*-Kir8j6/T%@STyڻg# ]Ld{Ӏn7~//?YLaQ0ɹ;L72$a C;yUm!ވK=r$ _cx@SWRD+ t>>]̭d8xR3S,,(]]FVNTwG ;)hr".2~cT>2gXiNͼ m4:&ܸ(8mv#0'j%[oؘ 7 a((w-Kݤz;NZ( ;muzVFTሠw+;_ ZvK#h&lX*dxD "0TjCΗ 79qonQv 2^AqFw-?O_'_6##?{[CI< }ncԶRyzvrC֒'nZyMiAwo@.؅sh]AfZbz@&yv{y+R+YT$)elGqAJ ͘7S+w٪v0 _x42Dd 25IƊ@w, ri7i޻D> .8?@Zb|gQ!CQ&[z, BLjX-A4j]W|t]ut8SV >SV]Ui`cOaZR :@lf %ZzW6|p$F>&-윤es64^4X]S&-LͪTK}$F(6ʫ D~+/HlU$ +GD~vEL m^C {kMzvy D A7i}ɹ)yo]nr5N{cm]kء?A{i~q$84q5`r>jM_br4 Q;lDX6KhRuO^6Y[uȉl \HI+{pO*r3>t2x^ t)-svOknW ez/wLuV(>wPl3Hm'V%l;~;ҍ3^z6e\4ͫK=+fUT *=V7}J{IgY mB<5q=3&%1'1c.BRr]^U Otf_b2f gNkC\l9Շ [$w@<;@Ք JAKn9{^S*1 .|*1RsJs~_ꊟ,@le1Ϳ3_xc#`qeP 5;Ƞ3&MfR.w>IU'9>F޷ pD_VSO ;wߋq6mq3frHI"j>~ıF@q[ WfFÑ|R*zV`&p.c(I'vnbb$Rt;y LTjW~MYܜ̿f)jڙ_VjnSwi |9[KC(EokF`Sv jAA+)=3z߻ݭYcܨ!V{vaqX ]$iLq XoGY#Z}xLFѣ4[}[~U[chּ.%<5$(>؃ەà](TD"@#k~æBGXn')11G%ί6=WM3c7e`Kt2{ j0pݒP|^g^˔&o:KD}衚BL\\ [cV$[ 'y4@pmPq-0\nЪ.WA#ҁJhe߇!%zѱIn. Ę~7&4F_~4~P؉=evNKi1Ց!=~8 ÄK2ƒ%U(ӧ: azɿLk=0򓓳Z$yr4xdDuT j:=gI%*R 6#xY﬘FI }A|v[>tK=AcvBv@ҕWf/5km0r \n,U-pUhyx b Ʃ'-1lρRۡ d,e& U S-S˃2?V WQ)RښHf߆bN@|,|&?| ?: / $%Аꗥܙ;:_p&Qv"Z׆j?щ 501L⻳лOOgQpn> uL73Ь"5=ZZ‚|_GBt5JšX a>i,~duγY5f&_D &Ͷ_DV,aMZa-1=kZ[5"QPxrvφymxS) 鶞-|{5c3 NtGL=YQI^ŞϫRқt{K¼K?D,Uy[R73N ܆HYҠwGMoG:^($A'Vo@L"5Qeڹڭ=?V4}F<'nw٢iSS\ǃ`=՗rX mrVcd\o*|),?%ɎHyWQnb 6Pfݿ程~&/A6xt vp,v`ovO]z/IE6fzn?'zX$ 5aW)=My4Ν{d}'!aYQ M5t'}$`tQh>¹`$=nUxL' 'o]5=I%=j>u #K.VͦIX|/V68gW5OIj`^9)7)RCz7kT%iZHǒIPC $WAݒ(Đ #_bQuK`DH/A4*æeUB l#K~AHo.cs:_}nmXE+%gSpV_kxm?YYkxww!Nt{&N"q 4ˤPBesuÞpr|1.B\ Lu5ddnoJD. Hd I% Y ]EJݶa^#F(!\:Bz!>J`NeQ~l$~|R!WoDZz51?%lŤϧ^IᕻE03󕌯W0{(97%f]Gނ҆XUfn? 'LSk]x$V 岝`ۙaP1lyðYf(uUqL_%>ʋh(2YqgtCԘ/ *Mp&tTH,lwڢp:2 T}d-hwV@GQ$v`56kl"} @TM!ϝ\xkka-Z C | ay-D뷲/>5b) ^N3Tt_ҙ)mh_Yg=o7DPԩ1T Zz t~up9%+b23UD8@bKщG)KZ=^1ĶKNŶL tL58u`V#08eJrpL(y gggy_O_~* A94ZTGvdsUW2jRm GSD0h8elקgE~|J5bZ^8_Ky "> ^j[9wn''0-=C2]Ԥ5;b`ΘOUpƂK/fK3/ $V%8vqoˁncbg#,Lm," _PR6QѣwB%{s7;hxp77Q#7|V'L@->"jMR,w7-IqXC[z>z0RhƊ%Zb5@[J1_@ߒN#3ɴ#*ɿiqxSt z, e$@wA*gU)zwLkE3&wWa0o[f2\q,6ʸBI7mɢNt0$L؏ B;TE g?))D7G}<VW}TjSh@+UM!@yS6eu{hMMb-$)'`V#pmz$khɗSJZ&!QAږ-wmyrw6C"D^sKO>c^=e\=FqW{1|a =RZ~Hͬ|bH 6qn@`{<19S%-B*Ѷwo+.4Moïٚv@cU@ϸP0yQ_u͎|`U SYwFщs;y焃i=Zxҟ<Ta8.r|cQqC!aυ7(5&"Z"{Z3-. 9(aL32q">NR`Hm~.&F,M^,Mnpga|/0O9 Ab.4t[j̨LM1Z0x).Ѐ@][̞b Gz]u_I}iz8KʑA)WrӐav3S;j>0Pa )< !U$j<!K.YN=VCrr_<$/'Nȯ^G=+\ ΢<*Qk5 (ϋP#A;Ӝtl'dž C|"u*P+K J\W af e4`'9>~M^Ĉ2oJ8iT%J&͟נn'"G MXRBN1OΤn" W%M.jNb?8!AY_ qATF+5~ܫ)jܐ= &._׶q%o ɮzXL}>uBѶ[<ŕ'&񗋺r;qhUi0Ó2=1 8¨PԪ pa$K,:}nzrP)<Qj(WAfͼ^Qj ]c!2s v ?|X3>^oAs^;~F!*grwߨƗ3-h=@љ3Dk+sJ}<*DC\b6N;NsNH\ aTU˓M3Pj<`%|[ fy?8V,(8:DEw|z36x*OҜ1`w<6{mKv 8j0]NKB⛝t_cua\&:'Ksc Io $FL1-q-Uwdk|Uz~xӫޜ9Ut @bMM`fDBשz$gЙgCO0 p6N |)>L%;d?o2ƚS~{W5 mk2TإrDU ,XCiP\?GO(8H?k1!CK2AVn=13. rjY^mDZUU*O'C+֒:a[UX,Z.V}*<7A&xb; 9La9"#4R&ЀRlgP=pmx 0GDUP;:Z/u dgDP(F1A`5*D$<=v ɭ}  p{k?ΰXviq cd_v(2V͊ҝre_qawzom )[M/ʨFKÎ9~n1 F2HrlW>}7%옷`L?LS`yf4 :MI5bKKS7jFj&}_LSf]eEA2JzJ |IPrreDoAdr{7w,9_X+*#1EWKb sFæ6B/tqj\Ǿ)q|!O"JX9iƳ`D&. , Gi{l{T]IYZtzH4khǘde`5V/bxDtB܋⊷p+ۜ/Y2E i.@! /Z8RXZWd]dύ2i}8b݉A\: %,jWD79xB*Bّ@nGwG_ؕwc1 4v_䈒wQ pq=綎8=aF=]7I1t:w(>[PL #ֶpHUW[vDz@4?ӍX O;J0"~B2z0ǓhqԄpIў UJPȿkøxٮ͟_ɭ "|ijGWmE뛔 }s` PZ%U$8LP׺A$k!ss%76KkEx,< U mym$0Iu YZ&pG{*y:Qy9ӟr.ea-r KE !Y, jc@B!%M2{'#q? Y^Z!9N򆥄'$MLhS(dNo{u=shXfބI,R=>w]vzP|ͤn:qL 0L4~AZ§hfZ 6<W+IzbPeަl1.e<{y"MJR+.d)!%6nErq45^mB)-IC)8浄bGyfY>h&^ze4}LEDynl.h*S;v[Q|v)V|[%XKd O9)PL]dړ/+:HFd߻;l*| 8 _o1>@o1%:T4bpw1@׬_!ږ4lLE>zlsIst<gp xx/ճgEU ,X v%*`L呾^eI4Y @!`Ή_"Y͌[m]&I/4+đy=B6kxW"ָ&Yt}.h< ?[% 9a'RIC]vkyV/j7^Lѩ J#G-z6&μZ_+u#\?H$<F$\Dɧѣ ?p/V0nHu`4"T^_Pshfi"UjG2?4j`Dx{ [Mu5 _G}6pf9FeߧY@:2sV.&õ'Qm^z"l8)Em=+Yy '=ѨS(ہC c\0CѝB٢L}WXH3 @.sU iWP@)T{ ,pON؄qW~Wb X0cWKLywȸ*> @Bbc{Eshq5^|S]5iN:E2.%s5s9_|uDŏQᆢaE9UtGaapzASfOX)l˴Fd y/!7\e$5C'C=ح&4"̔,c(PL<tr=a:*&|6D>}f[Չ}.$%4-Yxę`մfV_XщT1#lB1'. q%Li$yf]Q I J,||F~Qb`|ɢt ] ߵ9M%(&b柩W:'OpT75YpEг򧡬bZu#]њڛ5O8jVZX x;uT?uA$9&4B 3%go $ "?W{W4+kNaf 8sI:; db/H~i فIjZŭC%_ n "/Ɠʮ;P F+J-SV$|0 TTDkD@8.4''ɇ[R1K ~"sHlRR)5=TxUqbG~Q u=GCW,*-ţaMg7*C̘\9\PoKEJW ?i JݿT ! @K3L_/>bU0AbYpQ.QOWѰahYW>qVmt O6I?ˍUA e# ӕ/?M_8B4tDc$吸:A:Aa,>&{!64*TU#E Yb\UیPÊh wFa.x];KDWKE\s]=.#梀=qeg"-*Z"&^܎#R)7g A{dvf顾d1uCբD[Wir d [Nӏ OCGN,NYX<)=[HiZӋo4/ӱlp8Cscp`aڥl>~٘5#oe|dXMa<+߷S(4+Vƪ]i|.y\*Y*OY'd>^M(i2{6>A =ẏ;?%]^Tr*Z̉q[3.+$>GMDpɷIƅ~_^6\5Uitfڼ1ۤ;@Yv侬,QA`/YiҌ$De6WgMԅF"6xG>5Ռ? \^lIbr-_CU1R ]V_}`UԜ.TTr4bK4G xHgC ^$Uegx?DEZfo1^ǽKP8_l7:&[a_{s$:DrwzJ+Fi`> ZlOnp_[ͱp8GZom޴g$wz};}ReDU-7OmRίԧ8)fZ-L Z$1,o.33} wbG(6ׁ;{SȾ?/7GEi {ǜ)uHc"M`VO#'8E-[W𫼃,NVEj)GxIYƜR{є6.07RBXH4D8{F«.nE6 ~G:(XcE`{nZx)p?HJTȳŸ*ˣV!LTYQM=1`yj/Qڅ6|>c/Cј4/rIh(ٙ41N"K])E#G*[_o H-\P`s4\'{y(!SOu/TK͙kYz!ʩM{9CnUxCJj[l7zLO 73}zٽZIcL.akZet u )ܷVn?_ri~sxP*)C\H43 CtQnAԐ1 =GLh[O˹ˉKOߞ1N@#޴r %b0qG|dBnX6[TdT_D8Q.T yeBh2 ӳEV2ɂG]+qxJ| UrYqqJ"{ d0dpZ[e;F<J,Xf0^s6| u"~d)W5wjYfd6jZY#fn$&𳿇]m8} -dN/ߛ`A@SPnr+emo؇ g_]TD*@9K9GHhxz.kӉtj5I`,F"l#>N`#NN)ΣYSc/rCOtGv2d D_c}Rp!st9>EOpQg42(3`'+ٞANAmd1j %W5eSX* .-!Ax/uJfưcekGe&s = "W։ `G+qٴ<{G7$A`[kT iǐ@ ML f&vG)'+&g/xMNOĚ߽ٹ >]سM[ƻ7+ZC Nsx.Ni̾ /-P?F/@|: [ptE2!(%V%pE2rl /AX\ փyܡaC_/ t?C5pwaX|[ܐ dМ'>Ir}_ Blk&;+smlCn=X<%.`OLO |vڍ $@]=fKNqOҦJLBY<woNłۨ$7PaJ~n >cwY@BE# Dc9KP[k Ju›}yrXD`ۦ3zKl=ojuP63@^mg K>hv#uJ搽s0#/jڕӁ4 1m-:#/6樣4IÊ%6#z@E41v bkDueZ4]kj t?튮؈ǭC&)=IQ,꯯Y{:'b͡*ͿGپH)L6fhDoK=z H+8 Odi2jH4Kc\0#ipY rKC8i)bC~d%*r â+2Z:?<Sw_o~ T]jiDIAe!x)C<˷PP\ߵʡyBע .kaY QyHI]Qbi2/=qh R^;;gvDrf6вwubOnwn^g& d]UTb)UVc72Ӣ_i%8E$(`܌x}sъr2FZK.NV-fnG$8*ySASk z%fUG! |sdށ>ҥK$0XL+"]|@+w6"j`ZJ=@Sѽ@K):)Ƈ-4i府AV0kf'B%4MO+ _Uu\FYXO!#*M%48Nx~q0+OnG(!%(($CBPVAkF`[ vB~+SL+Oռ2aq_5`>ꚮ4+mYPA ޭkbd#7-$5 4ZL1'W~#T~{VGYxD+m.$D# d xb4)xԼU>3$89KWUFqa<9%k ^!&:X%JZ֪ύn:FGw8N8EʁEjĄg0k<0"^HQ44!/:]`jC-RRD; UnohCAG3t0;%#YMFe*LD_IT"pT>V$iTaЩ({4-}"G߀"GS=>'7kn`f|;=3׿}'jva_9cG55ᕽa|Jz]05\I LrkN08|#Rl% u>Xd(6R\e&lcԢj<  0 o$\_W=$FZ-Y6($Kx2#(:;)vxu O*]6~wzs,W/WGt<#:BMqnt#0R\n{k`w1P;E.gЉ<aClY8{(=幈f*#DoFM+kM^ _\٧I+ `FLiɛN$EMT8@݂8X G[M%seZszǓ g)JolfԡE^ƫg]*"̏h t3%]d'"܏΅m:,_wArlUa߲7sZ4Tpo7q[9ꁷ*5w5Y7wf",! 4οn ˠW,2%Ԗ7 |apFnRbF/G3d%ɕB&K\b|`A܄rLS[pzqQ-)ڞ<9"XK`*`?<]{ֺ. !8ş>׊D4ĎO(4 q,6XfVWGME.)P.UBiY#YVl![>}PL> 2 E_q&\C <PI>7aӢH"Ǯ=9"2'cs>k,Wբ`vBXٺ9H$=9LZk<1]?2$Xk0$ヂZd02TD}ByIeEڇGv%k.+9(C!%+_6S?[UݷK& @ieSt%;6l^ʬn/iCTzqez37"-׺!W12X:֌KmC/}? H:7ω;?g9MFv6H>`2-IPU޻OKmb?n8:D;Dw&6(Δlap]X?S&LA50qݘQ "FjѸx*n/٫{-k6\??h,rk ꚙfV7&*UiO.z=S hy F]{qԀJ IPIBW\6Kژ} 0dOVb1JYp|v@cfT`m0OH +HDkwAG$^iɔ`X:Rw^OV< VjS>nX5tqj[a7ZVGl.ZMX\S:ʿW5w5w@dp # [=.:eHŃn P}htZJmjٍv +#mYAˆK6D%|뇗- `XdS 6q@)T7Ѻ_B꽎%~]jj`S.GdT#D& ɩfُ[EL.ʺЕN*(YiͷrЊz]j]ꅣ)4X7lra uRGtKW" ɒ]Vůܥsפ/ѻZk{4\">gR V Ar u5&V'^'/K̠ 4PU+ 5t$5T)FUZ0q@K13A;#q#l?ҟAξOWD.{DKLUVuH~iu,o4}ʡCx ԙ%{kaփԒ Obϫr-̄]H@喦밳yׂD,#*[b'r=leQ4Oq@#b"J /8~/ﱂI6@)YGq$$S,ꇑR[52W/^YyI%7A]zJ)JK=Yb]@4_gJje#5ymOLR> mڦy7?b 3iBpNkk8ϻ+FVg٪kxU$s@u9r@}=brDhC=k[*S^ 7@8yUƻY TErp9RD/~]H A`] T;gT>KWɔVI*o ێE[ߒ( i雅0)+dmOa~(;a?QHLo6 EOɕAGNu4u1M.AW6'b,xlFgP:h\%m[# s/wl=7~ @_Hh\h̉~} aL$<` oj DoEJ.٧TBO2q2cNmi,̾z+LZۉrYttxC6H[~M~΂-Icw$ #*8Ԯ5bn!M9Z;).w+?~U\r9V\YǛ8#jX|wnI*Ul!=6\ pO,p>E^W潁4,0ħP˛#< y5^ԗ1! 4 鿦[ڈ˝ X+}4Q3mОb i#i>uXER}#4#E2wՆnQ1\X3j L%7b !VpR*KZ t蕄g_̠͊knSƩDP*c͐|j@Eͮ ,҃hDv) qx"O@5M "ȟ\YahJW# mN1\49>Fڡ?9v%FyukScl>.9?q@/]㋒M}LZm&?gRXzxT"T7TJd;f^`io,4Aoޠ1 k۩{ID urۍ읻_ Tۉo);>0e9rف D>tc:|?e mZU'z U\Ȳ1U.jW=S3ϡ'g /_P0DgY Q`) (3hJ!MV0釸 vֽY{I)^Q|4ָu]1ƊN>3oTP`-F6 3~eDew~ .F+ k6"ӰQIK4MY~ @AmP}R;ߺou O,MNR|`LUQ 0g7$n{-m}59~tUScQ*.Ԏ! zfttXh wt7z\_6(z"΄o afRTu;[b+`msi R xl.Ч L(=p'$ҕGQЏ8h7wGo"G7@{i^56 diL}m"_Wks#N<}Ap!ĸ\6_vG?wwH>WSxB|s%zhij}jBkȥ* /Y(F 6"!Wmb Z7?mFBbS1eY]"k9Ea5;U@UYϷ-qw,ƙ}J'tF(X=YMSfa'vlA?Tfs[.p?/7_tvYd4XD#^3M]qK6K?uģքna`Q̗U_̽pI&3qM}jh-ҟ |AׁlX20l:P$bGzT.hc9֐[St.9>kɶsn&ek0p띌u f4 S GrPC2,> pCeSafBߴ`U6rg#iՓce2Fw88oЃV7]F `QiD|ږB'P[ P=pesN/ŧ9 ikoL`:!ƫ8b+ĭ^H P$<ֽ}XݿzsjVR~oj|lgeC?PtXazlun)=853 Hfy|S |HȻK}F %iw@]QX;id^0Y r5廂F71kb Ea;@Pq\`Od^S'E݊|v2vE خ`z`<\M}'Q4hiYH݊Mq?ݙ#r .G>Gd!٢*B0DknT?Iq@D$.¶>iQ+c-x"'GBX%ܘe=U2$%>T992D)14BBS ydPƨ_vVNԫbio+j$>jNk LBZG Zo•q0L q_n77/Ȇtpٻ(R ΐEO4FMJq:}&Kn=\66Ƞ؍c S"7'd_P\{@g<0Զ~ H=+"؏Q,=e@q>PM(Bih#/eAސz']5 XS6q"}wӃoa4 uSH2 "ںWBڍ'YCUpu:n0Ys(i׋nz֖?uRLzI%5g!?+unU]KmC/}NE8 ;nKdM~tQMtF:O6Z %}b*69pޝ!N_Gf9[nJ&5rm"GNuhZ&r&mV5Yx,l}E$V>dų]![| >;Z,{ 2ӹ@nSP*܉òY D7d0cu<̴迃gIO4y@NuMj(F`@ ] *;qgN EJ+utsǽ)[ _LlV&Jcۻr|J\Z\OBzl9kM .UFf+n܂IsR31*I`~WRۆ\ ZP3At١2=J"MR)y D;s+Đ!(^>V0w91Ƽ8Juxݕ?\C9c+Xq-m)m0Ead&ktȕT!񏚤 8QB} .Fp\8¥zt0_ijcMCi1Eɗ$xF`0UtNʬhX3z ^qzJtA\cf2V526퐁BDyr%s9ֱQGzXx5ңE Cf"8lGb!Vn{ؑJA͡iLs=5[|;F6JH1@}^1l |(`2iU+n"ٚ l$UF;zyukhꌪx)|rn8x3c/4O~+rvd:'t҆3$ϝh6!-YonUClp爠G˒-~&Q dh (bf{b|SO%=6gI5wk/ &+Am.@g.?~M[&<<Ť{t VIhs{?4" /w_V%[d SH4J &+ٞIvK3pHbx#>,y%GE< ^@ob$\V4!N=*ķ[YT?-6j6abҳ͝`cblʯa91xABpSIJ Y|3|ZO ֹO˘2uL{`i#K/y8U94>z`^Y]O]*|C@e|,! NƘp.|mnjW>shj  iKj1{/,*쯄h 7 Rƒ3:#'K}bRF֗ !sc &WuA3;]^l<[uaȨl`O. ~M|dƭf="})')Xtnla>6 ݭ(: S4ׄYM$yؽF&ZCd,QYo%U&8>4@YrnyÖ-U[~aZӛ_Aբ/?N#mn=U,h J)̔:Jm<+Y]>`cו)/𜽄H/W?' >KiDA?.JbV]R~I,km|KVCQľmTQj❄&t21+>9d̏@˟[3r̟[ nn߾&ԥ}>ps-W-kOTz.'^g,&_3-T!dDPCJNcy~RE"/;B0[.䉌ޑm%+ ZWr79*2Ϯg)ErD?nu `l}js ~*P/$'+i{0'{vSփ•gcOJs qYzis@cyNnD'QU4$ ?2LT_c j~Q3E܆f щYPa7~)?fn)byr7G 8?QZ4%ۭZ`xhwL{piRC""Q{beh4J +7v*蝶_vD u-?o"PpHxl$" 13 &9mP5Kk@j94iWjG@e0n3jSV PCK{Kٳ?"CrУ1WcFaQqInT4OCp9!Z4t"IKVx꫄P>#K!ng@ 3 fŗPnEԦB}.[Stn/|<&@+YvH= ?$cn \u~(HZ>MʰpU hr}ճR. % QUle7gPLeEOW5hq(6щbŮeC(QqֺMQ_//2l1Yr #.`$mtu_, "MǤ@x8 |{0'St*Do&˽5L$ [X%$!1?3,2<:@ߥm38{i9Fm!環<͖e߄/N!Ft,$*|: G8Y?+J-i™[@u$V0d2UѮ+MEpO(H=/a]0WsLn^(Ɛ{܍ۍcp!ȥq$;'.v=˷y31,=6!AEfЇa!\ũ ead) Qq*`pѵ^lFzl 2TXCi<*j϶h 8PM]v\R>B^Cj5NJ]OGT^`.euAxV"!AT5RcPŪUu?Y#ɺL^/׷6JxV@R-CѺjb˾ddMm6EA\;n/Aq%XDv[d; e:UW#y5N;J}fɩWfJWq DOWzp#0`"E C&ۍ^x)m.Ak!4} UR&푼]9uE}k9{$ā :"Cd$cp[ȢILFu߳:4}ih{a5vh%$*ޓкu^Ƈ. /.Žỵ?:;HRa BѬ`&aLQ,F"ƟKv]o1m- =Ci!kԟPuw1 PIz<~%sP _!v([m.53%ή͕YI( ]OOтMv9'ܛ$ |IѠ]/r2锠co^{`)x{D ~MsAr[#A^Eha:eօj~WXK=ޱdV\,\vw>5JM'/iCz&bƙ_']|/t$y=isٻ7n͞B _UhP<]/H4 * WоG8(含~%ڱ8F+o7'(x C#үGGd>;j, E׊r!;͡a 9w߽;CWStc͜)lgC}k+570]h.:q{G[pl]l9҂:,?HF669Q1WpVBzCN6 cwB,uU %#h%nց1K:(_.(gs\SvL.8EM$n-r~!*#A16} K~e4(U_]To$`Afةcsb{$~ᔋQ` 33j&|adPႎjaJA,l ZK~Yl0e8%yA@Y"m^$~MR:*a{NȚ=; A!cuMe0uKN]`/R,%=1!Ouhjc!AW=.Ie8C44ճԑVn-oWO8Qa *H>zT#]桟]˳NG&Hj7͑fM 3`Wɮ]%NZ tltF}rHpHg&S)# a)ȶ!T/BռInv)r{M}hͥpqq!R vp Q fX. 'cEZ52q(14uvJ# lݨŷ-x}(Y=. 痝ӎd6 y9z&v:'FS"f|dUP $/b6] %K*̒$E M Uڞld \8oo<5i0 Ҕƞ-6Fe=yv;ԸF ḰՀV-i>\{ ))D׆B}:*JزL$c NuJoj%ߴT1Mera:pd/V2x%0Jjć &..WuV AL]Kk8eF\>*F#e-Vn^1Uzͼ"'4(ZF r 0z$@uVXJ"8 7/4Mx7ȷ4źYZEx~CJ],须Ra,& ,z.:UͨY $RwЍ\B(j&v*yϖw\4^BEeD;LkRԤ=ހ4T/ݕ;w,]ˈ '17wiRYv0s\딨Qo䃱8+W32 ,T܂*PӚ&R%+N++kroE[EĸJ5~k2 0x.󆻨QAB R{id~?!Y{],| ÛG ^h?9vg7= }KéQimŔS*"ޢ;^ ^xV+,\nnR% @z7'!AeD;t##?]Ģ:%h-6j]cJ\JL}Eut%lWZmJ2ZoR8y798fst3bݎ$L 1XoEuR" 1X->/}4P, ̇I%)y/K0݃v2@X>2fxNGh?:w)j謈kS TfyDžĨ^ ʡi#vZ P5 XS>Ou*lOLʼn<tMpim/Js.0hd}d]* P/N+ <̱DW/ڛE==_ F!v?#92m~m6,4* AIf&Zj^V!-."9m՜_pv;.H79j| (-jgmMWhޗ_`7ۧõQF'IfAO6)ѡEqReC2ZgwlM.{"ՆWxM `:T>TH xa TlWB$1@lqqTYֽ AK_Q (lT'K8/ΟkS>'҄!Gt; 1Ca .$d{H k]r،L 0b" ܓ:Q)?g'9 Us5RpOxoӔ}߮HؙGμ /g9NL+SUhomIl+VTEeOyBuϺv>r@0K.iW/^!Qb\FX"őS1֝gGx khH:DsE`PiPzfFlslhDDjx9 tCB$A=T-u_S.WvY'7~2s[AhngnBh ?zuYNv?콰ʵ9AmSY5! ?EMnPΫ2 V?qA2bvEm!2AVضuFw?ӊO|V) kw2tDn{0]8W3 {@q|J BYLIKaluɯ#e8wP]~B6A\E%tWG9,SC0x5?=?-tf UM\>vZ_4uu[Eo 3fp=w8yڈZ^VK7g]a`SvrHMu[EA޳@@`w>灀;:;z]f7uCy902rR_i!o/ ?3$29Qw\\~̳c EN߸(/v2 "p)QW_kS͆pU MZF'-=7N\|.#%Gawd]eڟ rmq?_#)! ^oZrc[(t¸5!loR#RݷȸʥyȠ>wt+pѺ,F9<4?)j:&氄x(xJ*:^{7*>wt՜ /VJUc4>b3p~se+#CFTErz b~bԭHD: bWNlDLa`8"BLQ%V(0݅o޼TCkTL .P8f&q ʻ!' >Lp׸5Gw,p yT>#E̜ bp:[De D?wxr4hQR~Ik6t (a;~l{KOqFy%x/~eopɥgᇞcJƜ K.DVqtgoQnN+~JG@e-j ~gUjoeےL(gʐnszRzA-[=Ϟ?NEaS]]?=/ƿ8j&aaY%d*&hEu R ID|V.WK׾!9^J*ۀteaN݉DNzoh #2]SmKT=$kxU(g2/Wn)) 8 Y]-Qul*Ax/Ќ`D852jԕqt3S=oܑx܈p6)zqߒ%e\w8] ܉9$>ƄO7gcmW-r6Fʝ}OI=uza.+S~[o1`Ԁw-]OC2z2\<8cp{-J[Tl]]FQ~.'b$һvجUysҢ>Cn:H"W7njB+Uw,&.DARQMtq u4w $`t»󧸣re3+L^)(|}7V@ܦL2 ǘB Hx ]%. 9 TWz>}):b ;tX*,f̚Rh+24Z: |*cV{>r2cJ{ƉHv.8`WXMlAΧa(w4 2 IIza<,o-80r;ɇIB8%ٰn4+: rVLns tdtlR̭+>8PVp>TmBSNz }=U*Bì-(IM!-tj'';; lT^ϴs{rMp&U EYK뷫QHsP1D"at,:eHԑ_]L?W3Kt]kAN5zM9ƛA1Qh/Hqv agj^Z3Q TxN% T@$-gl?Q0OPoGɻ >B d|̤AHSL-6R߀EZL|}@@5ܢ*{Fޚa"NHWH{J7Ap S#{\oy"CRR4Y94`>[:MKw{1GFqCY P#9K}) x`1WͿK/*a3Vd+D"Yށ _ 1/5.v/%nPEz,qz/{B{Dd@),VC֣0agY8I<4Ru=qG>˜NLW]&Z#)US9ro9خ'ٰ꒸[ b#qVIa?,B7t3MVESɒ q(ç۪dn-('tW))^O/>Um*]@DͅvYJj prq #-RQ-Ȩf(cz6?ࢧ9l62)bCT"~ćo*m3Ab1Z^)~0U R'IC5FI: }-lZE_}񧧕Ki'r |Dxi5VnKK[[F5yBU];v$b:ܥVxysePjɔ@w=^#=Ȃ/~ܣ1]a>Z Zd@BS8YnD^JjDiE$ s\ \Ѡ\# ԢAw{VQ h%uER᥏'rw>S4`:{6nBMCۑH+D{>+h\$bkWq^)~L2<,C;iN V>zN)}")H`+qEP̕;z=L+;<ǿM+)03#bJE %>,z0LZ jWŦ1h`ҝڷ |-@V|Pެ!}?\:8fRjX19A˥Ccg!hFH0YA"K)ƊC +!͵)IyR/7]m~7Gy@\wËT{> ӺvC׈(VՌx7Y !,-MbG0NOx!G|{]w}SXQ2.V C^%^יU_'nyWm6vb NCl,u zN✃>1Z{sDtǾyYY€%Դu6O}{1w t!d-X NDh{zza3plOCS+=CRk?GNE.+RsawpA 򖊨Ξ<4Z_SB)|FM~B'gmCs{ >+,:7 uXc `%d 1ZVm7uˠ͙Q/w$Mя޲F;N-\ 5yf{,X9\fV* ϶.`1DΤMTZKR\0NZg0E2Ҋn{5M ,ޘJ5bA:F!8 XS#~ l8㻽ǩ4c?j%doe2 Cޛ.}A,jVxMt|*YD4 !?ǬŇؑE eF׿U5 }&@bIN(Uғ!9@04tc_,mXk1Vo~M LcH.2| =?!D[MO"oP}7 ###{DGfBC{YL[=/0s~犗"l,{.TGjRNTw܊JoJfE},+]_ƧOi55"OsW m*>\?-sZ$K^SVP'<k#tDnfIA]_XwByEef@3z;D ૑Ϝ sX KLz$T| cm?9{ VȔq&K/OپI*ttJa3zMsltk$Ȯ!.YS3e[ӠblEpjc~LdU{7$n[5ھ +P?|utz ٸL/deĤ჏.iC.s쒗vwr+zI]>i>R{++#zOj6C89:Q ;Yf*6>A2rx&G\(=i#s|dkʰEUL?MH8G҄ZZ=ɍ̏Ό([Ԉ/HG JD WդuI0!Sugzy\Wͭb[sq|8UN@bm2 R&Nϲ1=?`_#;h_ h7*]&R>"JRmkB ߨYie^kZb*kʼw"PD\/?hZ'V"Oup'Y_dNG7| )F+- #]HP'6cT@X s|#9c PmTu.n]BP,}dB^aGlތ&ztjv&a`;Y5n$@9z'iQRT~35C` :ER 0^N@`2L;*YW5@7`)N2+klN %?TZlRrNF<]iΩYC5{Yh-˿h9/~pHUI߁gBvyk>xsr Ā71zlj*raRb.CGͷlrޏ8!juvO-Y3MUX5d'u֑\8%4iL|DlԎMl9,aЕX6xr<}q=n!`akV |19E`H[<&Ch>cO7 ϶=8v(ƉQ} `D<_2[~l^m%j"ek^2x10 zōIͰyI tK4aծ˂+ˀu*];_Ӿ =S2DѣFPuȋ Dq:+@:YKBP | zϟ"CBű<"Ew4/ʸP qۦM)NoeƈQk#э a{$VdetLN4OԛaϦe2OXaۿ% c(Yk.H9p1!C 8> "ŝN`]-ܦ3 ߥ .}կR6?a.m[W6'/mu4oJL;_%&0s"?##v.IKJ{wU5X~X7OHdN1U6 oDWCUb1 qfnfuSg/XUulwHƂ6:S9)G2McG=lM;s M־GVna˰ɫ-kop*vyʛK&M;Mx $ҵ;WsQruznNꇉ[ۄ,*0?@<@]l<0㓮_8"ZN|N]e2(iBSPyp>2r56hnIPB$+7w?vpxtPTN3e)6mʮ=HB2I1~1^ WO̿$ +jԯd{;,y aO'ؓ{ -T;"&!F1X7S+W&G@>kTʈƍ̸0ޡ@x.dK*Ak7a;c a'|Dk ateU}tsuc!L{'o:{(X¢NM0q}T7gPi| H*K u bcevdZi4ۛs kWKC@)g% ;s֎ÛηO@N?׵YU~Vܗ5K|S֚,#),⨹y.P2̘݁Bl1K).%c._ֶ,$FR|nfC|a={ʌ,/wsCiR bS ut-:\ͬ[*`ޖϞP ݺb7l6#ٲ yg<{8wkCTvS>4~14))σxduԅes-Q_G ,$qfz麾@#j:dn1~:IWos4 [< ![}Tl5pZOB7n 1AP?79pqIųANu N8yT=z c1j#H4t`sh/W# FfŽw)@rE2(Mjņn-*#]? 6?rK[>%TDЈ5utNUǰ<]qKj $DKIG-iEx4bWGFP~8^-1*)phxa+mOO$U a )1?8GH|݈Т̓ p'X\+) '%|WzuwOlx WN%vFv:jP>u7fqo0VL ,AƇp}*)T6p4i̱J Fu 5Pܜ5^R| $Nd{hff"o/2X٨2ɑ` w##~؈B^S1 f|d%t{3:TZfr` _{WDR&oxPLP ws,H'")#uJ =D\5K_!_8?٭//K|; :`^Ӊb_Ɇ F,Y$|e {FD'bh!GڻM}. 7(7}m7 oqLggA}ˍm`\Iyپ "IsH 1˝!8_\mu Q^(vtø3eG m4+˽-LYHP͠ k~*deI i90ց*!u{󵋓R}kCYR.JÈyȾr\6=zS3s56EE?ʥrKrx6;,s\f9˓(&a$𡂿~8Q}J^`b}"!o[uBx$O^,( #Έ\jTC9[96c;k,tUǶ.zNz ~6{wgT3MyDR59:G D-Վ%7(>^NK% ->Sޢ-m.viP@Щ)olG)zx81`fKHhv߭KYpyt1&ھV/5,&gQ_xOחbB8^n̾h4oQ{7g )7CM9a@Wȟ11iN/{-)wnd~/9a[\<]f_ğh :)r*=-o:&&Ǝ*aR(M5! G?4P'ӕX+B D92vFǿGfZϹ@$&jPȚ`pdI"l!k=hV'/~ifZkX3Bcv_jVoو=28轐&='1f'MPv.snd4@ q .-,Deh*kؒ yIH%."JRoN >tIVV ('x⍛%K=G A-nU) E[h:!ٳ.u_+N]w5}nTĢV{r{}p8ض9ۣhCNS_XйQǼGxZOG1rĴl8u?ZXK?Cڥ>U5歉+r"̱uRgNǘО(A׉A2RA9I{+ab'Pg(jB>ylH59ÎEL,6GWͨL(SRM,DpZo²M}U4E }گTdO Cef׷f}V.9@J[×" MV~mqo,c.!j:EAs:8tTgCqR ԫ$2bEO̭ e7Pg$=Yrmz:u0cQi`{6fqG LJ>3UQY}EX/j*0\M4[.'pYʡ7-TM7nc:;lu : Qhqu9F}t,. >`k(#iB7dg9P3VmeqbS~;wm:Pe)# kJ:KS+;4gzsnJC^2EX=f ݺ~9AVmRTsSPJʶ%nEx V? %_R5:h|ٲҜI!4RZHokKl~tpFIA=z9𼉟S43;]&dM۔X ogBb 6u˜KOM}eyc8kϭKׇh-Cv@,Cf2vGtwO!\-ț E-A]kvڿEQ"n/VΛb"ڑ-`V#djyȶ7{4Vcއ;O*r/RPw5vX}X_^ϖZ(2|gp}^We%xn^,Rp/ʫK2EbF%z7>fE? ǩ] 2€K`2ax ަ9R /eUz|Bh#g! ؒ@ǀ T-9TюBl/szSۨI|&tr:X@w"t+yX eЙsw.x2}]^||>'#eAuu5赙=.F^yQ nQ&޶ծr46+HsUBl:N8=#%y4ͭ>'{ O!*0&aGMAf6 %h&:'lL>}%sچ- @!AG>au`$7"Į WUGUVxI!۬$)qj*LωjpdeӘg@[A%57DY&ܐMTro[C47މS婳WbHX-ϳz[3?0Ƶ V=҆4iC 2уl{f5nKpu ©@E'ɟtwSnqJt):ٚ5.AMk|#{>Wqଳ.=/V$$ ZMOuηP@kY1/w2SULw~SW2 dB-4ES4b\֓sɮH_RvC(Kvr?=VT5YYL4Svaj)] 2 _?J"ljH1 vȏgXᷣ"pۣG 'a0݀c( X)@~fI-zϰVi4"x(3܅u /v*)wId$1/–jYtNG,ͳBUfAE&6w4rWǼ[ܰnAjCȜeE,ܹvA4ھF5UIw.ƳtYcN_ ⾬blk2|v.59=6?#"R/{ w 5wZ/P҇Ί$L%*Up2BejY/[R^<^+qح=%s\ش?PPjf }XT />ŐƢll,N$˫Tt93tڃ5^6" 9_ la*4J*iڛbw}OFIyGSZ򡥞@=)e0f0κ;gU7EU*Tx+2>Nݴ.]&d)ZAOp"r<8bo#E bz`q$G9v! J]'a=م00 ŭq8R CGA;z;R>EX Ϗ(/ 9)yfmi=Nr$6X<4mI l-e^֮P9 ,$n|~8Q{;ٓ7$^ .Z*5wʕ92_oqM)RTĒҽcoPkO+uz`g{_ƯqH) n9{#.&/˯^y$ck9s8Ěu=絺3'\tD:\DaB5p.socK$MLqZ&Q _uu3g]+%&KfTJ0amѲ1xHј¢w豍++d&}x3yݸ Zj8v-$wWw푸X9bB;wa?E"U?4Ij\ei4tw< IE Pz,8Lye-Gf|qK>Vlս^+4s 3t8AԪ/"<{Lj H1C/Ky;KW9"4nȕx hYG ~~m:#+:ݪ2X$jwAK oZmNk38ˉ(AUk3H=3@ίH\ :0)e"@Np7X#,[dcTڅ;+@^|=`;"ߴm+Z۷F<-_:1Ɉ+׻1,X阩֥ 2jʐ) 9W8Zέl(]ZC,aP‡&16,`jpԆY>m ixn[<"pt,Py+ IKL4mAD0 wNװUY/;)izسЕK`+Dq''qQZs 7Hy g=}ki~V= RLGx2M|~bg`Z^I  &$jG-*yw&HaLl;a ?䚖'$pŤԩemyTd@P 6hE;II u{t:N 6ɕ0o8Rϝ.wSp|;y{0ڤaI1zjr4e ;|)Rbv26|B_oOHy4&*5ٴ}#n_2B 6AsV(\vn /$kL}zair8@\uaJb5+̖on>J.K"ۭZinö"q?I3V&MkLt4 fDWChA?iANO$(66?Pb1sNs7a#qIHd7'ZAˀxnץAt 뗝ctZ ?Jca^IbS7S-W *'14Q粜EާZ^6gJuC5g ˘v:xzM!jU3Ӧ .\՝hE.Mc%<8h8bz$i-㉌5;b2r2!~bIμ-;R)qϲ]'V6:3B 61Jx߱TYQ5tOOYJgG1NUԮ'֝ WrJk7p4,ZxaP(aȥݮ9`LEe twuhsz8 nR-nHu![X/xBpsj"Zm{ qҩVcl:Xtjt*JP~@F~.힂G FGm[C/V}\c~PG,9޹56{Q "/zn.jzrl\PCQA!0}j8C13  *n A Uӎ2/9FBSX4\27ldh+@>uZ 2 ~& ?kMfkX%5W'6b=ܐ(F6[\e: 1p+a2pa-$?I]Џ,n[ş| 9p :]dWvQ3L)9X\q5+5/ub9ͶzE!E:JDU&Jc# y @o<&9֊F 9EX4N{_(e8ɝ@n~a^w Gg~4vjD@h1(`Vcg~IA|Bd#JXx\:&ZL?$|q A-*Qz`6G3Mxsɼ+:;JSdQYu]ejPzSREhԸB#h/={HX3%6;f`*?T=qVDH%W[V טXusP9V4s bAX Ws\@6T9(~n'{MW,?.t$o萊Yh= };4]Lbq( ~΢-%t=|3j{CȦ{ df֏`zo}xh,㿋B^ya0(4r}bSQk3:zw QJe}DhG*ċY )+of_k-5$$tAxFb o}4$+UcXy# S 2\Kџ Mu;C?mkL[F1G GB$c=ۿ48RB9D(0|6Xf:? ˮt6}d{AZ]ZTAtF4.{pq+ݬ`PYIiFNc,2vv6皑S'"ԳֲaK OәV^ ~֑oA!|YAk䮚4-Or(jτi@V $U'"H2 6#D Li8:C8~naOXb%kZtfEdWEݚqT Fh? TsaCHo?6]n##,_4E1/7ĀBʩht3w+4ҥP0JO%U)`>×3*c@ö33MVgJ?_i 1S|:,56&1oo8)6zI`4~{gog9I#L ae*!_F 31hD=`Nk#rQ44$V4C9l%,Go^0|n\ido1 W;_\>AMlcjF)tR_}u>#mK3C\ILvzDvx!1F(vE2F=ɥGxm@@!Ԥ^D7 yi b,ij87z['DX! 2. 9{pVӓOt 4orpGV$:?`.'?hfr; Qf*E 6EyjWMZ"&0ṟԪT a9")9[=`^0_'XB.%F!R ~M47,neۘԒKp]aqDuD `\]x)p㭻*68~;j9wZMYQ( -$׼YY LtՠBe+c]%NഺPaҾ(@bd,2"0')Mr m^bu>{)'cur]|$6[IVS8_& <3t7AD=o;KsRH3)q:7lɢX8t},g+vehfę6Ov덏j̢*/[:Sa@L5*{>q oz_=xX)QjUFr,ޙlZecLN;>\Q3/sqN?ZMW;+F2+B:~Jp$TДq'JM/2!b] ^^Ӳ\) {%3nq3^ꌊ.v׬Q\iOx!?) wL38L3Ɓ}k wE"~LIy7j}?\v2't,^?}ՙ{y$0Z v ON)קIvdG#D8ꀝOoMC(|Xٗ4(eZx Eg㾸t>~I]VY\X&_*=υþg}`x3nHB̡Tl"HW(bHG%0l?Tm`FsaSMQl^XI]Twg|!Į}Gθo2b=Jn2ȶpҀy*t34KyXYJ Hv!r?o>pXOe^0t$9F{'Hc8--4ڠAn`lF3oQ#\{豒ɵ9,0s0Z"䁐 ;g.}HxmJJen*V̵_lW+ѠI9#".6}F/G<\=5 2F~~Q5ݶt]NJYtN3Ȯ.Vf]E5!0uoIK3^كܳD_ >Yxi V.3AS2R qvdR1Zezyh1XgS7l TOVL]2\kd6aRqp(5^mB$S91 DHtHdD U`\ZPu^H*`?8>8O5Qm]dQxֽWwPrfԹC[`0u&%XY{ Ҋhn&fq{&~WޅKprWtƽG!\Nr8݇7mH F#8E?=#I#uL#b x^kۦ=€ť1`Dęuyb}"iBrӕ!klϩˆr#`Ƙ: ڔ+UۃLEعٸIlV,9L{wXeY6֭XY!6XNFknL.tS9_Gv:ƋnjIno R5K gC!ՠ#/JCYBM}ʆ` Z{j}l$eЯj\}UsF-G^}]xkB"@3ש,s O5J[4t$y> 250 "- EKRA΅vnفPá[CwLa?Μ4+̪s:ƗOmPũ=BƲA-OסV 7܂h KUKD&1|бK;qJ яҞ5IoB[$#3nȤT#O_pGX: \t{u%-*I8Or[>2n@8(:Up~ Ԓ 10ZEAR/?`55)VmՠGC nQd{A&)xPngH)GvIZ %Sޝ_.KsN!ܤ_9l= PLUⲣLYڍ܁cg`M[4xlW5MQmX^؝H?cXO ZY0H@u8C{FFSOJGcI)"PTmwQ_^t OA}:inyF';\N y1ٵ??JOf >TsѣSZ~8t;_*'rM垃o_,;՜c,͵C[O g\<<4"Tp1qF"%( tƭޕ= 8r%} S\Q<&%FYߠg+R JHe:]ڌT頯 {_7Cv[2-_"PF̵,ĆKu@uJxpù^Mcce W8#{s`goz؄N?/nZ"\(iV6rOeݤoHW h% bLJ9>_5qEA q-{WIbjRz+b}P^itJQX.;}NVqZcGrt@GCw!]#{CL}>ivuL24@PЇd\3$mK)=̰|@>7BN$p79ojֳljUpdj?EĦ~vX|'Ct5-yTA3+ó+vr|.*KM(ow6xO 7C$9BGѱM j)vlutWx@ TU%eʻ=yt|Kme(Cj"IS֋cI/Hը To%U5I '}?(6'Bu2`ٵvrOuEv 'JhoTF,eNLij3rv~q-^O<|otd.j ?ju* 3=.zqGS31W$ FBA gRݑh熺n{gc1d:!MAsoN'bookc9?ubI^\tq|[jL< J q-A$LZwOpſO+[%-2 v.y;GWN!y+z '~MɈF&Q̅{)1c>F6NU.TŶDCƉZ\>UVΟm:L"xlPTJSeǶXx9' twr,9CBy`[p Lpȸ),[IAD  0*QO1N>=H53Lܨ\aj knJ *H]i4R? !Ogb4,y"(7$q"!WÃGyBf5Ro%G6j[rg,}7m?n$G=*H*'9PWc#~%f|nG&XGBDS=Q{W@d$<P,o,7X]_鵽0BmVR#;BcvɿNꑘq?0ac DXuz=Xjƿ#i<|VOTsBLPi(`XU&I8H 0d?0zglZYș'}zWhi1!fCh&o"<jtpPsgxBxbüz4m-m߲4{ܘy5{h7|6n->DOF-?Ѹ.y>ѻzF79#-fqJqa)F::*zldbc/Q/7U.(QP;wpbJޤk1O Gw&QǗH>$Wז9w|%.'9,A1Ml>!Kqpf"p;}{ 8A}Cˊ.@AY ϡS0HܻD $3?<.ZB5[r288*qR%T9L+7YlHd0d@ewvۻ>kg&5\?p-ѱ#"R'A=4cٿw@WKM4ڻk>u ^or7pn}$TN ='I''mb|E&؊hx5X ]Gc淑4\l^P#Җͦ.w$CD~r[rH-PhHCN-^`YӻU首ʕShb}@1" pA~髀Lp3${8sBa_S?S怇UsDfKR #K7]ŘH Зt~Af+%oꁨMt~(P4rޔ(g^89M (T͝ҽO:rt[E%ŋ߾fvUS/>+꟎) =&-TlпFRj Xb39L‰a6􏱯ˊZ{W:vki~qr9Ajqet耲V {="1i cJc *f} tY&hS-y0?_w1_wdW3pydp1a#E봙vT%~O"EUF,\qm ѼG'u8* #ϼd镡^4^b#a| Io=@P)g}k'; k `05'e w;7؅c2X vS4oSOٙhKee `zps7qj ]O)vn Fck Q^@}_.&<.֟{0ߏXÿ`[3-56iryc7;,#!db>;.TȎU)*3%7C&i) -#`SwKTB|_| <߭H- - хZ\V#n: @1KAA`~V]oj3[q*Lu1oMI~,(RrpZh`FW=u}Z羫֔Ǖn}X.R qčG$="iٲ Xs;!STА>ib vsPUakzS|4hJcL+ƣ͘?b$1)^qEv(O1Db9Vg&wbS-g69o t[@"SJ[=p2}n)6XѰmGf4K{I>ϊVpSq я6xm4rԬq qŔң.S# m݇,ܾjYK쮉n5(󡎎-#/bDYL$vnn3[eƙS=~\_4x7[QgC9]2ONM4Q *$p1Ǘ 'ɉHeG~+s3IyM L|PCrx97?y$-|}O/yk5-3k'S|NٔIL=`Cy{CBBD (`lNY$`E[쿱?[[Oa{>wϵUx +Мqy 3P'lI<;$k۩$˻A0p֏DoQW|N#1yb󀵌בN8̲$ L=nm{i@>:*{ư"%7rI ܶ4qR'Kd0艆O1P^L 9vpiUY߬q 慭M*ź *{ M~\鞶~'`_Y_aƽs ȇ0V6Kߟ}0 -[aոxQ+)E$Rc1z4'ܫ 7ߺxD)OKRQjMA@OGA7j,Y%>ķ'OE՝_r$*5&iʘɄZ 3EC@>|(RS7yi#aH@DxUeւ64lp5dhF72wM'Od<% Xe ZeYuBYfB ""#2Q˭м&R zSp(g8zOo'`ЅQLV<)0st u v~aFљs`H#L,<׿wgږȤeX~(}0NܛcXʫؙμuhwhS+er/!/EV Uw[3kR朜5C9usbuWwOZ0z{hfB\L["pW0tp'_(g) Q AA_,Dϒ=NLٹmI} lK20PgRY/ٶy\YS Z ~x񱔤I$3`$Wɱf4Ci֋>cS:o0*)πBB+u)WϦ7٩G dí#Rtd* /Թ `mXh6%-/[ xuo:]͒h*@,f)iIMf'1 CÛG`CQs98783tRizUm;/5S]! e91r2ѹ)2ث4]VR֓h0g?UƮH8MsK4"//Z^WX6MV#O;ǿ(À#Zr\]}0p'VPk:,2WK 7&ʏFv!? ZGc)+p\ҧ:ڛWpSvw΍jyͼx4`"3*Β4-Ex޴h=ޢ/j={ϖwcO e„9Zl>(( 8P2O`wCAxFPM<رR]zcfh]rn1E1>Vӛ3d7Af^2MgL=`3ZbI)1>JtpÂN%X)+ܼ:rk6}Z)'ѓPc1lHѯ籸W; 'l9zsCg+jof"l Z(Lr?̭3)aꍅFF(*ytl3qW0LF Uq<Lu5EOd?h0B29W"|slҰ'Yo&ˌ1C<|}-Iw#EI]Wk1}dsӯSmvS0,I5b:~iEy<,D)ҳ_Zk˻€.m{?5йLG>WbBhPe >̔ /m YSQ &&<^qOĪ\uQύt{֯L(c%Q}5_ZTjh;=a[;I0h3GutAsHaSrDv[nGRc9LdRm!d{~4`0肳/uKE vE++|;IƂ+{bײXqw 5r@qhH3y߈N˭σwLkCdiB.gJD N 3\o̢gޠ=1Q!\r.t=itȮ +9eJa84-7,P285b; 3uzT3HSzA՚c2e:(DSN g }%O  +De\\b!pw71q3y8tf ^  $ Qh,*ͻhNb% ?3^sn>N^>v&jucgp0 nHÈͲŴҨ ^J|ēAzD$oN|8 c@A29 C5ƻԐ+݃vZ F9|h(0/9*ؤE%Xn>'{ۧʧ]_'!JP7*4k&o5"Kk"P#:>^U# AϴP]1#.ήG]={ʹYA'M4f{MҏŨF dl\*܂Z4S!G4JbnQ$|Wax WeP:Y8΅E.n8Gl孝Hיִv (=zjkA \uX,&vx%;6{$2@nI%{=,ct" =G<~~kNH#p2fMuOgWa.Du])ZmPSO5gu@B&ɤǓ%5|Uc -]̃:^39v#!4 :Ɲ yҲSle2֣yÌ4g|C%i:|`<"\* k+!H(:Č b޴bK9v2ɼrѾt ;N^zqS&3"|6 z%n߭?m+GL{1b|>&Pbdz JQb J̞>@e! $i-e(] Z$9?ҹW &D&5uVx3)gΛ 9zh@Ჟ"OnOLT`gq(@)rbz\dݭLAKrWif]xJ( J{!WrOCU(6[&3X'%in BLQјri)ZN(9si{G}V5 eY:a-*UP9̸(;ul*+_kBsF72k1)4NGCA\=*3K؝V&˷jK &|"v40PM-R0[HHN` 7C??් A`*2 SY|Êpis쨧W\Hg!6n&|~j1`a]q_o@2D>a 1ykKMIgX^J<S#+550ܶr u'cwcfzjVdNh翎iNop:QjȬTLPރbŰh9 usMI[~clk(u~?Vd'(}"YsQ\*h^S81qǯwJN{OX*`41˒AW=Gy0kw9 oJԍ VRykR,[Qܼ+}|ޕpG. 6ӕWbAa]U WKwӾ {Ng5˓h[QCvHOn~ze%m\iNLѸ*J4+%e]6!nq{m|]n\,>(Rܸ+j,CNg]܍N80v&!w|y5y ?LwJ?.%p_V({$j_fA%!Y|5SOg;M AaUv*!=lJp굝C}.Kx2TF4(@W HLpv-!0A=L|xHN-h(8;RwwHopÕƶߴ<.1$PPGqDp+ҋar=a_N`pNĩ7͹ UķsOeY8JCZ xY'+tg)OM~" ![ϛ"x*\Rl$Vu`K(d'Lk 㚇!|zY>A3hϧk3JR @3tL&)0fnw76 ȣ,S.r4xIO GM-.zO:SZ.M,PĦMb~r pT\*3v&AkPAW5=vĄ-?+7 %@AO x $69'9a$-V$h$J"(+Ę.i|YTi1ɀ$?b-v$bN 9ڄ c-ȾwU;Mgc-jr@3a_:Jh:I|@k[X<%L唫Gg{B٩X{nmMλOR}sʉaPɕAoqlh]N;Kv˽=y<`8RjylZF|{n 5]xbc\-ރNU2`&J"Pc(0Xb_E.ʝ=%^[\fZ^N O g%'9SKD"Nrc,-= 7Vԕ_X;k[~H=Uy"g5w^.)tqxUfЎc%~;G5ZviJ]I қظqB.[G]J: Z,cL8ٯ)hd!p g+vwt~^7, i1XهG~81o7I+2xN q%Z;D8zm₃4_[u6FZNp~'7G.Nlߜ=wSL8یQgլݨ(|%Kis.+<$_=vjc}Lj >ZKPklBriP bx㞢!#T[@d!m$t*igOStAرm.L''ЂK^C|~eC).60.i?9Że[[ˊG鵫n3?NxP]CʐFEV,c h6[UW2M'pzӺɇI8 )R%<>TuRH?M&ӑ+$Y,Jb=CشF# @#(|)q;-жHZ*̊@o{") y3T9] Xb)4@ՓYTKS@}ѱ>cf1rpl}l %ۡg6M$wd J,Gm 3IBqڀe荕v'\g@ƜPJH9[)~ 0O}!3/r"/7 L:hQe&nJۥQG{y&?q5e&PSe cndB)RB~E/ tpĦ#=m3<ʇ-y0eQ~v~` `%T2(J:lo>Y4Z@C3sD/0\}L)H3G eFNc2/ݭe9"^Tw]Nm YȦ] }+x꫟]MoWo@aK9f&ylLpYUoD{_+ ~? ¼la 3t5~"HtThP<›Lg<هĥ͉/pv/;=ͳSHh4V'LIw*}~e9Co\Z%XXgeN,RmwؒS!0Ojq\1|#߻'wYk  \Os]Xl_jK$z<6 BלSymWlh: GU]{KZ/wb+*$I(PtB,|jt[p:2dk^D%ebs2FFVoc| i6wCKe,$&яA I8BIS "k ]y!|w_,9mVjSZh',Ӎi5{aE? W'ބq[0k+n=;w=JDli::Ц̚2hBWze24`)!BЃOn( $})1&f/3} 43w d2F|?ÿ\_ iM?-ݚoAiNl L-I˜S\< BZKMX+N&@:Ffw >gX/zdcrMЇ['Ҽ2x@s0WQU螟*M4#wȠ![ C&ˊ~:2|ܺzkekS@<~'Mqca0WRXשkE7xUuA#w)WJVab|6rCz:3witA&aZ:`{.clRwb,~: &{Ľ79ra\%(ͬyr(ysIm<ܭ?)  /BPx"EV*D_[Fcvp軿lj]~ EYb C4^9LZW+@8ػݐH+a:AL;흡8NKu8l̡y$_ִW X(aԱ{6#phrק\.5#+Ԕz| Iq%D80ӼF]1~A.9[UމN#%1l~CH` i80(I)z! C*y &W U~*r|NT\:y*;$OL Z4Wl pڇře#d`y')3t̂6ǿFX{r|46(4ߔ"jX@f x*ӗyc2):UMLez!1xd;wn2+/EQZ>{5;xUgW?P$]B ?Sm[D^1;R ݮC;WJ E%W >bћBdWǜ`V_ENB}4')i0nԈp峚}{7%un"K,a i{LIax"͘4q*s)8|$AHpiKvE$ =&<% <޵7kS~v-,q,Q },q[<촗RCwG(jpq'RZ4i8 | D<&t 7".Z|1[,)tRS$܏ dj eR`]'UcpOb^#`XKX\,vwTrߘ?sU<u8{ET&(3Z񪻕q>#8k |GH(hոRU`Zl #Lr>oA>#VE{ױ[ʛ?/"@ K=*elln1r+ 9"]^|g /C` r'/rN=q!塜h=uuwP[6Y!3-ӌMe4 iTNĪ8xv/'/'o`qW|,́ĪEЕSt z<磁X!DZkAǨU0;\| @p-sSL,_2`"Jty$̧q(+TS j_孇/DBV05U@LսnK.;3?Cܒg BuDZtx:UƧ։պ %7T3ճ14bڼTA]5 ֤fZ[ =b vTM >qOLd.ymm $lr6-DNk@ |)bdbE&_vCe;ۯPb`)yl)ekW;m$̲Oo'%nb r%Fk'Wa% `Q15Z=>22Xh.I\ }Ҁjkǃ6~HD>ݖ~<3\plŪ3җ7cDEN 1( Y񋭢;!Yn^?`9LeJKQ;ѫ1#S NlCFL[o<6Z!V%3AKQ~!T1"HɟT=I{:G?gz@8}6rɞ*n5B u|&D$^b=ugzFIcoº}(y?:nR2%X5uKf3v(~q$cfJrhaIid& 4ʭ_DDX!x%j7pBGGk7)?[8ԹW\  KNg:`r~4ZNBjmH>kΚ9vwu1fc4JR0BJɢ3blwi9W]#\>fޟ0 7ٺ"<+QC~ԙEP'f[ɤ:c9y vI—@6(Y !$',H4o8n%x ĕFI=,v,v',x;M*4b 1L_^gIMvhu6UӠΩYJ}VY:b6xLa@˳ɫ?f/+6nNrBdZ\Z?$n2I ~Ȩ]Eس5I "d<-t JX5:і ̳F 068o⪑^Y{#Z.6NN1pU0􎡜W5 ׽R̙˥]c~/k/W Cױ  X a~&D.Ʀ%N`bZsn⒆PD9ifA*BWWJܩL0aeYV, v=gdKohepGx,-V7 Arg᤬)|Nip&\?൞.\*8"[苿ԸuUː1m n>>S,2'c<ĭ&rF"!|pу`o^@:桁QG({ƃVbHߌ;CKC/ְA0Ö7Gwv)yZ7YYV\ŝǣ+$UP2*U?~wk/nNjLȒU:?('T^W9\4Ǡf#eϤwp޾|wh(_9tOm3I~ F)F'8rnv]>B@EV}CSxϋl#F_7]ɫ/7ɠcbB&>:D]<@!S,Ai~Bl]-5H;(=W4bíK7׻Tq`e2-0C9ey^^H;e~B"X8g+FWXCaHh~&?? iJ3]7O`wT;J,_4I)օ\qWR# b|y:n8 :XVJexu qWs%ePw@T_hʫ:tz&%lvnk@0@sl[~{5[NЭ1q,&!mr2ʉDzbMJ K0"=+ n,=i6#y gsNuФy^4YƴWfAӡ`'/5jܕ+]6HbGk cHBXo09j5:D5e=&a9uWB>#e*.G k?nAksXEJ4Ch1BT! 1ךa$}#1Ů[Bu buC(*~6K37 wg̴xNb =(/MpZ$GH718iOlm:6xtb$P O`Oqj ޞQg KX +IZ}L~R\NykEMgщfp}p TCM_31puK ႷU'aB\#?TK-kɽ5>Qؙ `cRjqkYn{=ǛFoNB%m֘#3Ri309~YLTiGFtǩi? $D31f B+u0h[CVRk'> c[eks#fk񎼲@R'E.'!_#mabyZG=D&Z:dXW[\]= ϋsY/vu.uOٻ[\ ^U?e0-L_Dܙza]*|ZFL:<~ɥ<'7Ha`* /f`brTv϶m}M`Wz/&&B Aw #7OO˳"M}ZJ U:1h2nwjcVMEAÓ8/8wrePS{( wT3v{q-% MtvY(oxicJm@5?߽~@3`i&D?Nc^"ךpt݉, ì,.NtwEXe9=K]B IK)AHӟ,T2:)p;q.۷-s71w!>ъzj¢' UJs=,{4j~RC&L:Y+vGhs"4-+w^Of l^C6\?ҝǦ/UJ a;<zbVRȡ "'@hgEnMft-)q>A\ޟ' #B9E||dծV{d>]zI1߁2l@ׂk*D@]J29=dڵ9#3Ou $h~ 2 `%ݺk|+AkyxlĤp~.|8]sr ]hBYq ҤWҲXo~d2x4R7hŽ+S/68bHY#X^k36]AUڞ ֯\*(kn0xM`l "sg4 ǂO(Ǖ0p{t>/|Y pO47do%~R[1|W/e(Ώ1qG5oQ ,}Od?~![?Nc <6@rx+:bۄenDxmujw9lUC(6ӂdgր(&s7˹A7Jf_i {. UȱTD xLU C+&82!Ι|x~O"n?"07S"_8jUԩk1 JC֨a~-J'̡EKGK$?n QVO3].9 ʚ1Z-mCO\i2̈́//پ7D{THbT4G kv_ʪBA5`(BaM]Il\v&&`s:gsR6&F)J^h\ 0N=w[ŖXjj)cϾ9`uێ g& `KzŬqasLƙ(=e#0u5jWe,0|?HMd%¬n֍!FKE-lRz9n'Up?\"'h }'qrٖIMS zj{S qAgN%UMH^K;{2vĜ7 QmFP;a(`a!s9‹ M,܊:+j5Yˬ E=W, w۴l?)2}j.G "D3>B8ˑ b3ykTKGNP}C4DŽr-S_vcjsM@.D+SG %JIvG Ne3H87s{*nj5B}yS#~OjWwo|I`?)#0=+?`E#X3><,@"cf\\@B]Y)6)o%nkTtl~B[ٳ>CC2w?q͖d)yh96z:8N'zqxZpqwElL~?Tq/RV]T7DŽo8R/}c::^gLND uBMC"E0mS%d[S0KRI_c8u@ hg2N@rdͤ-.[1ǰFP0 q⌘Zہ$xAFMca8SL>8,_jAQ9x. ȳDR$y؟{-,wn|_~180%YnDO,uV:f;y}Im{%U&U1L;LRa0<ՈsYfo(Tyg IJᙙg'%C7*T$U"q LUoŃZ '2!Z7 S`qH/@ӄm ]5N)7vHb^AK4U^IbAHOўO'0&pjNsd[UY0R}^XNodu #Y?!ʀ;r6z^*=ܢM@s-2ME~9}轱`iU.D Z˙2w (,20;PkD '6>_.i b`& <gXn :Fzyn@5Ef%Zʣ\ʌb`QQ y/`eӇK(:s5X5U''>}ϦzHQaSl=luro Jf粱$ je C=H j"ڴhv(ۘYJ䨯 jx~/U:,ah~sjyhei{SG=M?>SI!8ѳ֖q(f&]Y%0&'FӻTb Sw9iA{t^.¼G^|I SdՆ؎u==⍗j;l庯}F׬fu*kn?jlO@IspECBsn-msTýYI%{V#0Tfs[APX4C"`S̼wuhh'F*ӚphnNɘUgylFW?NxfH1;[%HNnl&%dK1oTq4w eS&Y/:[ ֳBa(K"Y>+cCg(E#!^uP,H$t>EK:&,JJ;!'(28^Fy༼dRnu'Wh.)A:B-a+:oRU^ t< sXݸ\ԭ̐@/77"s|1G?]Lu>L}CJ^LH q3 e=:Mnt)#yq82*OIQzDmB5+n'C^5;8JPuDBBݬ~JoT+k>Eܴ΅oɘ\ g VMKgpM-jGi_ɽ+d]M?^XKTx^zQ.8]g=y_&kQ{ռϴ7o4L {zb Ʊ[]niv-hNteV4PNľ*,5îčk-Q+~~?7Zo5lkç'voI{3ՉtZaʡiay-$9VSxo m)0V"ܠz5 2p:\PlZ$ Ǯ&6.嗨(b84(&bw-?nT$wt,_1g#nA멲HrxDף</zc؂!bΣ$|/mޫHvzݍ=+tޘ'!$JTFaɗ|DQw4b \Q rÚxA(A)'.to,6ԍُKNrpPsz6%q;[71Nm\I arFpzR7ALNGnݽ !4[tFU3 YNй IE֎/oQàeXߩakt}J| cjj%K]!`0iD 2c73B!Ѓ)ߢBʢݎ ܒ~7-wIȚ}AS"ҹ[jk3oӬ-RyO|žʙ}"٬z37€3VMAp [heUs()#Du˶4 ")3ލuܐ;v66c_H*+`Xnt"j2!84ry̿y5PX=-\$F'=52-9ߑxvCBW 쭖!f}+vB {ÏHa;X % t..di @\fNx\vl Gx(hn|]&MxPǸpwpe^p)* SJETBX0ɳB7 l^P/Ev@x{\ h֚qk"L殗3#Doz|qɻD&(m!@ k|k~NuJ1~Snh/maCg"DٵmcZU ы{)H9GopJ]]V ?zCJF'2ͷ"xVCi5sws!t)=sh)m@ߞii[mB~Ƭˬ {{Ew#G6P b8L=$4*Gij Ԏ /XzWu/7n;Hk׿щ-Ϳ]Wƥ2j HT}wS`8-gŤȖv"R;Kb0!Qގ"KE%J(P9y2;qeR9XfZ7"C`J_R+:( жoOmJXO捋sG}d m{\JV'1p7<b2+J7.(N7 $"aYgA ̛Xm}!n^ghSiFAUӧ^KmVC>Ф;$鶾;y{+'4t(ZQ BNqoo}gӳv*9fga6Q; YBa'a@9ނ=k\x~Y8Mm}?D wGf24Yp8N[2:di D !ႲuVd?HS-]x̲ z 9LuK-H AЀh4C~U*fbǪLy.7FWuA8d *Mg|ѐVDStj8x*.ôz}olGnC[`گB`tM⣗Bګѽ= 9+$D%7ѡ=XD An")rYscpXiPkWYc ^78~ ָeױw BIlhafMPjT+W"40q Zc5".+q´@%ϗlכMvuxCÞ k93pLQD:y˟=!ыذ]O6P Sz=?NE^ -RTVIUFo#JA5R+7tESп5R'xẸo܀0Y76kjUkjcchE&nl-ZyO [> o}dDs\q V}HGy% ,g_cޫ-LI^έ 6k RD܉&wD]B$E㗲e$ҺߡeMk?{yJvBYcE]`|XUq=GǏlf#I'6<1WDFɋ 3@1F-υdq(,zr2N4 Yѣ~x{1"ÎT80hnQG]tӚD){!-QCS<oGnyJ6,w꟱<[tx+Il> !$ZJPVw|[o~Q}Զ zf3lwf>'x*Y }_7z:1)TL [T>{Be\f&߲qdܪ&[γ?xj+.gF*4D VCɒyyCtІ Z o"xђbż' Go#WxPDL"d\5IXQSZG2Lr]W&*)[1cvۧT l--s9QB TZ{hюd&$}+E\0D?퀃:HPV:mJa1cy)b99t06qsI(qVdRv~}+b1<Ң,n÷%k~`A!es Dh7O&ژ n-~3XO|rΗC(uQI-A\3[pL]r RI^gIvq0D\N+QAOݞɕ7S&f9dwCy=8!Aܳ͘@s#rMRka)n:[ `d *+}UjlWrnIs[ FK1!Xp6i!xf>z-Sjs݊ƝŜLMĖ0ble#`6`r %En :AœTgvHɽOԋzYm0zKXWrhҠ-EД.]FaMײBhH4 ,+R:K%?=2i!O\kBqSCUip%nQ)-19&wޱ`FpЄtпfbָz?<4N2m`TɕzcG/X$gO :56X"|ugGu럭wNSNhegP"2"5{ӕv5Jm\0lD!Z*?HV5|߭RCrxh^':\hfQ1q?MSX{$#xǘrw[j8Ը57;6GrA?jʼn#~kw!1qpdi4=!|*} <^[MVIjv혵wo3A߉zTVsSomdm]}"5jM)J9Q:FtրC_4!Odʁsu6롍;JJTO_]̂j ׊B"CGvJ8)Ӧl9%/5W+<nfb+LqgSc`l+!$\xq_TGke* sAcY]6ԟ-؅6cd)V݌p|ūő)P^Q|VSh7pc+$]SJD&@W(ܤC<^K4Bo{76'Tr_%2l'zY\|yQ.JJ  []P\9x{RHJQ0f+KEҷYu mczéoe竓Œj2UM_JxXl~@/ m7b(0o偶/bޙ" 1Y_될oI:B>r~X$1v ;>X0 s.6IL]/eIzrHH,XoљM .J*"JzF.n|KAJ;Bq -tEȖ%9cwM,&s?8 -q.. 2z-П\ iK$:ۓm| |[K"{wGʡ\UAP,8ڽdAkytj8GNbZJj^Y֖ThCŸUw::ZnӃbӰ~#vHpk+V>LTNq{:8tu?׸mB7v.28e5LztCi/O>\0;{osA[T?:ܚG* BsOfDA7cLlhR(y me^+"W,NrTRx]OsEۿGw&Ĝ$VAQ2m.y?x`uu|3"U%Hɂ-Ԭg䉁io4gӻ#ldl $<*Mk5)Y |)׀Z3"] j1{*jl\e)Ϝѧ;ٵ4P9- z8yHT>x\UU)Dg\2ª!)%$޾Wzm7g-R^JvE1y{ch+cɕp z6(&]sdDS̈́Ey[aiG:cLi< Ye46ܝ> f%ųCߘ0ZCz%o>8xlu-[e,yYkQx(oӥY=3)25 '^3[81nev`703Ba[V++07+pfV9CriFZ Qh+51eqF&RbRllKN4o2 {jo^fi{FkrhUd1At6f@ W+@`ND!#g@5Zĸy Kp@`xS#Tu+y+گ',lLkRնׅZ)YYlbu Gt܁lMʡHN4Y>,bdg~yڟwkhA ΝB3<׬Ma*䜔Il;."4cw xr-MJK#-$-0 \{: 0xSL-&xS4S8iC"/1A(trOϊcybè:7.%>pfAZ ኏ Ƈ;0k{?ɄRjۆ/~~FӚ+HvskQbӢc*.h0n42֖WccDF6ͱnqt")'M앞@py@ A/r/[p"A<_qDz\}OMc 05lV'[֎FۗԼP5l|ZE8Z8_dgN8`(Fq?j+B,fmfBC wydGa?_> dqTRgب- ٫ؔt6ԃxnT(Z@T \H2`)~9Tk/ se"Bx$ɂXe~v SV TY3[g Yrec^0 dJ;6 %˜/F!TP;t[yW&[$ܤq?_" hZ*gL5HfQ 1D3 IsK̸%>#랒[QtRR?{$6)Y|~fk5D&Ykdu7byy]tdĔp;cdB`tdÈG.-ܣ_ҞP&p˟jׇc1A(ISU2ͿfwȳCW$ #}'YGSc;زqƅ (~Z>5ӄ@>8* MZl1꺲mz4׻|& ׀9X&@WPc{0V% P$POn.x6p\RXҰa zP؝IY,|F%, v@$9 cg/fEiZ %{nA޺wbW)#ïpF6G74ҿۇ %j_e E ׎o:eqޓ J J`ӀV5Fl- 0]T0w$zHU1،x7!CX bLtAXءD+Y`ZL1u8Gߴ_pn-o a/8/Ǘv0ց5`o.J\oFܬص9ߌx4kO1Ɋ?7'ގև/tA<*5)p3.O Hz5*t|bBT\\$M{݅ZJS%{`#&;K* _812~@\<<4C>0)8R6fMCR i+핵9y\>ť L'<׉j53),}Ym{8q0QfxTL n7?h ˫c($1E?+f9 <~2[* YW-u[#9B" ^{CPM[%<WE `Ӳ) M+Dc{- 3KP5mJ7_چ@5Ss*}qT7%Ƨsw.0lɮ%:]>"#Vj=]d~?odN;Yq<1p7lN~*Q(KPjm@=5Àa*t.$DK&WBiu3Vkt=x"ݕ A0"A /#k^ >B=>=`31-!p(BYX(˅D3F6`VR7ѳh,~Bc z(rt87un.Q \*ЁY橱NeRyO,xVV8?A__1̒Ԋ>S*ucf66pnN/?ou. mW& /AzcE-uB棴6'aUl_ ROqKYl8&-/p.d .. ._Pujý*FyI͞kegc ݥp #u: ^"H*#06Ws):\v$8, KJZ0W eGY=FRms] |ɤ|>FoR>ģΝ+n>(1o d\{/A uÄ* Y! ?Q>t> VZWN=`.n(ٳ!FAHms:4/J&;ޫx ڂyEu^GÑSr {(sl?4-p_K<hL3ݕtVƘeCIM"X = FqHL =bNA͆Гv =0(9z) |/"Bn4G2뢸m8a/~G H=Xk^  K9&Z 5o ?MW^}uUk\WwVY}McW.{mZ@j14͜zh2>k&jm6Ȗѵb[=$A@~ـhjEr>K8 ʋ-ﳬ3<T't[ L[ziO]_6y*勍z8#LoPwEFvH-1 XUoָ)ω3ܴҸE]FnH+{{L) 9@J[ ^j4Ȍ +jk0&BϑOַScٌ-ظ<**3 $]!ؖ1;ѻ7Dד~^b+_~ gX7tsYMbly4%ݭ-5s-y 93(?}{/e0CnN\5YQOQyŵDK:[8igN@br'DJ뤒go6k} >A큰5S=j1Hn2Kv䄳iw}]y=@#}}H&J#Y4~-)wHn76"`v ~OyVt SIoиf_Y3s†pƜC!s">X[|̧;#2OHKEiLM7 iF610/횴߀gpwx~_v aYPYpf|ރnmJ4_ Pr0T2$H^cGnBl``a.b™[lWq7i/oN1@\6b'|d |c5ۺ[.@=TFQorZPӃwDZՃ AC` ̀Q{q]Gqjܤ:C0w̵hM[E._l $`9 ȯ}4j*qG\!?#,- VILZICVV|ȸ6BW(}&&xamn|tBjn)E(Ek HjYIyѳdbo>a^W}^5U]]Z w#ye!TL/ԗ{KJ\K{'dR>ieH^Y?z4yG9BZZk#U?gGY)&~o"#E.nMV̄S;9]b/d7ı=[+H+N=f\XeE7ki=jknhLɞVD|Fws/, T7XdF&&y~xkc7{I]r:I ~lL4a !Bgm q3'܋G m;Al5qW"Uey3̀F/g: m}z3ju՜-~3܄C(V9-;=Vnp9ux‡ycʉowA~63M|JZ@Pj8 Rď5o9#),U7EyGB= m՞mLC+jF @bpI2*D~$ٳ%Mje"U>R"&u;XU+_j &sR5JG6z`֜hvl*dwɷ(4 ļ8gA/.V't&֠Lۇu出/u,q,2Fj/r}g&:Z1j^gHd{_g;W4@u1q.2?zcîg/op*ʰ6trpɷ \7d&1IO5猾aqͤ] f|`ĵv#91Xt1CJsXx~"GC48uݣ:#\)ULUK(=1Q#2^-A; qPƩSv~f8m_kcԂWnzkco7&''?zP )nA;9͈o<%X@;ٮT&Q4ʈÊt4< ,j T冂ͪm:B_䥐@Zэmǡfމ9}~ b\f}pJx3z,HEND|!)&o_m}w!QmV>K `.H|9 'ƣ,$bOҫ;R@ D"{gbRw9c zh_U7{ 'X#|4$7!l,r):h膻h$S ;t-Pn?!n֑FLSW_$&Uֺc({ όV؄KXg_ZSD+.b|AKOpVr* ~cfRE5Z#9a̔Aa twD n />8vj%5(P;soi`BPNMjP)d-gLC,V~`&;Լn xdx q,e\<lG»훁^YSāޙ{כjqV۽?Z2ZT}?EJd$3{q$F% W|2lw&j*gWJzD3;<A>>525);`Fù/uYҀ*F ǬT.WThlHo1MHYDHXX @gsP Gq!)*lEg3y]3Y{o3*enI?8y~йg$n ۦ\Br[0epqfgL_ߒ~_aV.YKH.,[D"tg}>Էv'm NıY^2nRRZ_8PJa$i0W,TISncٙwL֚Q ̰A#bJ]`1VAH [l(V`{H7$9ځ:(>hrYI*$f= f^'Gc*xJcE(yvAaS 4Thƣ["Do4(_n};xRJyEXM8lFN9攌t}DJ;S]+EK,P >~\LJ!4#')B7IxB-Fs1-Yb4qR٥U6nۏy7NquDZn):'KaTN(@@ LF{tx ܦA*{ ~cehE`mT QZC0j1(;ɷa S727Ҽ07_S jm]}v r)~[5!)_A^;‚މV=U/4i(l{ .#wnskMAU5'@pe5 (N{*Z2NQ@^ u@2 ];n$/¦| W4N'6y H'ɋ*™FLj\帱AFcańKRHغR(ι5f]7EMS؟Uݻ27hS.<|^ j>ǩ*DxWՖDÄ[使/(9qf]ƿ09`rl=pcI AQ㰷ݽ׌k[ZR$J2__^X&nB0^;8l/$z#[gS+X{hGZ^8N,%aQa;a0R4G3oRXvd3/!VnVR쉷J TnJH׽1}z<=EDfGdTH#OjDlƓ"%z&$RV< 4q1@4WZzsR*l\iƱ2J{!Kf_J8Y:=;z{$#Ȫ[CM"Ր?a2׻1Ul$ *p^nF=zCzLkL[@ms8Q\Z/ojET7u1> l7oXx4bVHq-qXyS$Ej{ϛAlhC';&USj]~wwz^[’Rjĸߵ3k7's5hshQx<:<ɊB$ $3[!HU-rJXmfme&$0]1kvYWmcPHēT2\c-FcuJ25nzljbJ:cK [%&2QR3qϱ|5c&F—u48NK[dFz791f֋ kؿ^78;F!JL^xnE;9!$5BRv'u^L6cJ!!An% |KgųG3y82]􀿮 G 'x2!4Ә?j A|as@y tWFV(](+Si1J$M"\H7ƷiԆUucbqЭ m(wYO}>)&EoHLd<$GV [6b0Nl7?ЯN䏵B% ObGK-djAr77ߟ'2"ՌiܢnurnSJ@dfЬkJdg*e{$m>"dq{֑9]MyV̓i/#d<7F|>hyM,zT1lJզ:ңWJ ۩ì ݏߥsh "v~'N+h`7l̲i>' 1 iǂ# !hk (M`5x8PP:q9 K Il:q@*ݨf@v\`ϰҢk$zb]Ce|aNcg.Fn?&crδGć2{EzvqDr:c~"dԄ-M)|IeANڱaau W_'ؿ 3*pT'V.iْ͕vR!mE1Jy.$=Rߙov"T \tO鶻`VͲĝ,}(^BǮ hjLJ&2@ .%߰+B5u;%#(J(dh=HH Xn"JH TἸN*?%,Ac4IVK ڥv ޏ4:tlA'MO@@]PCKwt6Xw8BLii>Wp9E΄kKv>넸+2Q }4s"-Tlܒ}#(2]|o٤9p=Չ>C71ׄJS5xY<)7$7 g D/FNּfjy35#ˠ@gO3̫]Y>/WG3)?ʏ)4o*m&8ȱ#q&A[8Ⱕk@-kpԇjDB%~ixa0eVL}a=u$CdEǹ0 )$8$?0!>^p ߩ 0=U\,r?-, S)Ȋ|}X #nhR-0.uNz}Cp,J(:4O)MkO^O4*1߰iyTX{F2Rg0ڦ%sqGB%ڽ$ Y?"D[3<1 7rӄl}ɤ-?t,cqPHƮJ2I}hѐ؍YCE6B%$, (3:9+/XS GD$0>` yFA+_IsDRu`ddֲ>ҭ4!M\{gVm0f W˼tEcH`}-o)G 'vP=3W"+{g%e# RŬ bH*2C?μYZ+v.i9,zׅᛄjX 8b/Mv/gKjg2;"˒vTBZ, n|QR<|ЕH] ֊ k24H#ԈAGŬœё‰ⳮy˲qn; UwW_mtPY~VS $3Y fzU!;J'U*&]`!-L!. gXD>=sV SFul>M|-ϥ41C}\S l%#sF*#ui*vdFO dՙ)GO̝H!_`[e{id#oJHp2)A׮J-nMs >#-~H$E-k)(b`~pDܻGf̕)JPGN_ʯNŖ{d>#bt-'݂i!l € PIﴺY kKe3?G7@'K ,=Pn?I*xn s'dʷ%ﲺ7|]V 3vdl]4n9T^@a*MAEC'Cȗ*@5,Tɢ,LkJWJšwÖlp{/o{Ǵޭk&bdNIqS>~ Hk8| ,XvD]׃]&$-ؖEy~eƔ)+&Wa%}p~<Klգ)^VtJt'C>f>l܋>Ԛ8W7̣X1 ֛d,a"FhHΐI!-lk)&.bAܓA`>5O\*LhR"uUROu@³b''hXSfLX oI?Cלw_JL]Az OSW+4(0-X`&r*hMrjBS}p{كSA*I0H 0Zk$ .%j iY:XƩK w&^߮,%+ǒ׸j;)_<~=.dB\ݾVB?ada8b,J4DǨpO3ڈX'0v~.ZT9~@ة=.%aC-!Zdn?@zق{f7bqŖǡ-g]{}!$7jZ!js"vݸZ"8f %3J[QMuTukײ&֢e)A׏9o{0ЗSKp*-YBXd1gc-QF^]YIC%匟o{NfNb*5#HUh٪'`x~c(ohH]ЀoTӌ#"=c:b/cgr(_(@6* qn|AFet"0^I8n LdDyD,\h|ΰ%+33uĴ/JqYuv |sv1T8,e .GFEI`9Q#nԽhٚ!"ε)U]lf7Ju>Ra;^>S ^Mʕ.3 oAOػ'BNyjvTTa;V^v/=B/2$}b{e SRؖP)v6>EOֹM 8&E˽.̸|V/gF6?:XKm76 -l\W) +1/419v)yFQ0OLq--FAE{'ڼv@gɿ]Q&zΨҾ6V,1VC &؈}1x6G]i.hyAn`gEb(({V+9 S{\Ek*4OL:,P˄mRgG>s+uKen7wg OfIYVwђ{Cڭɧ(W4QԷ4]d@ov/WڵWqH**@('q5(ߩ(ڊY$FiψQ"3‘&c _"A*xCl oNz'~Mɣ4\ItUc% jؘJ{쓂1Ǫ^KDD LG>|C Ewzq]8i㇉4ygF_j,a7(X{t) &Lȶ/1,c7.߹`2V&;\,equR1M)iUawP*'Q7;Axvl=o &̚I)q2- +d@2?SߗYSл$E}G5V*#|P?(M˥R ;dCgzNCj> 9ڼk%:>ٙgRqK(6>`\raL x$L_O1:w"O7BK|-8x Nbw ?gm7ci(4ɱ3 WJ ֪u_"o\Ivmc0BTx}C8W!?܆a#{㪱iFǡ,lp$X87@uVj6bbpmd -*QqTۋ 9 r00qa*# )d??C-OWm*[= r:"1_"n< aC芻t^ mS.'bm#-&=b%7N#~{HZ}Mն-6x扮/)mT>|R]&g+_3G_SfbΊքɅNpst? #mYs䤛pZ) X#V^I˙@ఠepK[bt$Ԟ-7 N(Ki~ ܺ/ 0+u6'fm&sj%-lnt祛3@ јk7ULϯg;+MDw+_w.Pl#r0{x#Ts ?eT0]难fsD} }&GtV0){δtroxb .u Wʬ+oOZ0T#beK{mn}${k[A,aU*Bdūd@PD; m1pqyu !m[۬p TYID@'@jvGG !W\$]賳CzjS( eF"W~߼WNJi=H%kptB@)]G>a!bUE]4xW`5Lnr衽O8mSόHsc9TE,A5Jo18,Ɨi1"HUQ"]hS[ ,{@Ytǽ4 h9ʹ *׃7򈞻g5 Ihab߆I=P:AhuF!Gb`SeZdcfu6 J"+Nc91LzPGQR,jڴ^*=Hp2;S-Ζ7<6@/!n~+I][UduLfrO(`ecuuOD52; j)?7@' Ա+#hX0 ,Sd7k!  G;$k2+vg} g)rj9&>ƺ|? Z3;z@oeE~g[,jΆBS#`ݰ3(qӾk'؉"ꃁ=iy./t8W9Vf$Ll6s5 XFqykOoiތ^άW S^MF` BzkF3Ff̄zfNlt뼄h͖m\em$ "?8j橝@oWsV1_yAv!]Ŧ}T*nV5=.zUM಺I?Q( /f)g&;?2=ooÒ*y;N[g FIgVdǟVހk/ca 'ؼe#^'jKU _V"'vQnդ!CYfÅB٢sn eUuho}̓kJj??$Y{ꎳI(8F?& Հ"bZjP{ihhFJ!Sk+&kk>*f&B{tۦ11`4ݚ]K iQעy%+r1KpP`h#A3ꃄb!9-*6.oј5Jd~!4%I4,ҩE^G~UuI?P7+'iԔ_/[(%@CiX! ?cu9,X >koV z^z^L5;^E!A75Ha^h$Ff>7C!PПV4 mDkj(^\`UsfE|WR)Txy>FA.$ǩяNozupqnVKWj6B(9 :`w d%yjf~ &nYTm7>HYEO@R8.-VaW:;XTXNᖢgr]qg,w?g%|lrJ?]'A=l_BF^]MqTJWὨxÛ|78$)ѠV7=6[{<8w$(dI8~X|,?-%Y8Jkݛid@RF[,흶gXtDAZi\'v/M';a G3喜?2=rL0@D#fx+}Q,h-)rا͸n͘ TSa_P\7jֶ )l^50Nm",z/"<3vw}'1cZV |LӦG>(TZ*[vR0An-zD:2Q<{ oTL Fv$QPs=]%"9~Ty?(FT/kgó;Gr eI6 RrPCn1%k}( J ᷩـ- iRޙ`IVC>|ҚfN G ?i)/)QȸA?WVli].:m#ő9*(ư8?EBڻw4҈Y̓ N-|'KV(|r4֏oWQЃo\cqCS& "u^?jzb2yq6wh)eADy،qwC[*oζ] 8[A$8:!ve U(/kUӈ +-"E׾6,놕x )BbZ뾅駃$oY-%ɯx-œ95˶{ #5:PuFp3tk vkW<ߨή:[*'^|CpME?){fR2y5P6DJA.m BtHz>8sIj78Ѽz6ΖqJeb-mlϕGZW`=\l!$ s;DK\'>@x`tOUteaٖFv9zO]d6fe#>co8tKD=QᓁEmnTIxբ('m߿;zdY6O؜n@U!:K3J!Q@TkO:e:bQFzux]CtGYPoeY6m1#tb9a6P<_ ouxfI) ?qqgݝ` ౑hMtӺA{+)kH @5Av BLMȿ6ՎufeFD }F;̴wTz#+$juPi䬠d0~L )-ڣ@0TT ټ :]z]4sD6PLa$Ichm9e#]g@ $XO ZlDNQ+#Z4xNGmދ-ݤIjA{H^,T,px%6>`k a*f[a >}7y/xH)je+oS*P $`8ڷxsg_!SdH0do `?&Jw)$9BLy4 <æZ\$m+bgDޟ4a{R`93aeK)v:8йiCGƯN\t⤫@1޷/eӜ0F $ۿv%M2gz5wqR…_Ri|{gktpY?=[cLD!aJ9%ym1A+>߮Yٟ$h 71EC*|YE \ ŭ.)[Ԁ'8]Cyv,. ڨP$.6_Bp+<- ?hT7M[RE1oɢ3G%HA .~e5v¢eD2/bkAOD"х|_$NuzPї9Dȶr*i*=qYtz~D>۵FA)ÞoՈLl+i Rb%_ & `qvU_"iJ4a;jh\/V1\:e (\/s.Kc3vzw`<'9s_v(,^xnbMFvCeW8ɾ,M?ꭠ lm7Cc ۑ r(-.a`/4o57y;~N4f7q?<؎( p*$HN4譳&x5?@{h~ 'Yy?2D~ tl4C1#EH͟{'?j {IDAW}ǻi7C<.(kEdSQ GlAJ]Z&eX/Ӏ)B%FljQpNiY:J̞Zй26:^F{ߋ{;QtpWRkAn2٦֝H&TpF Ƈ]~fL,"T]V\g GZ]-ruet W0fӂcu,ϊj#  84:O7Ə]<5)Ұ >WJRs&>x No Q`fN&EZӻ<9TS` |6tONO?p|igIru\Oqs;`Ei3zD!u$D#h?X:0$wxi#uljeHaTt'wOq,qqoʀ1v -U) Ư_g)y5nubhQ-UĐ3m8cD:SNKyWUvnA3u@s0mAk3^YR((XV5R΂WOZ6e:F:J pإ #+C;BRz(>r`Ϣ'dS'ʾ7^{o.\ mQ-TELrsWzKzPfxr_9=`Iy}uz(Vm3fޛy֩F@yH<}蟵4x}[8'l(6 ƿ8pJ&ْbi(T/fNK/ס zގs IlzH jp$FYZO1 kPL=ɍBE r5(mA[h<d@S`у4[qgjHқt2 W?y[%[k /5ejdz󱚭J(kD .`\`;pu 5u!*]_M>=z.5[ [A( cVI&J;5&V6Ø);AbIXSxAmJNuT0*jlHdc̮d Aޓo Ѷ13 ]lޚq;/hm7j=sw ˔E&g+4K'ADP##\';* :}8dZJYv Q vERhG"ovea&WTctҞAL',1x@"UPWx`j IHVSCV,hH9+n ILHW77rîIj+c|KȔm)jNxbfhLP5|vL)Fw*Z `4i?K=Cьϔʁ^1R8Vp^saICM63vf QiU\'+b ?/HMW6^nK>1ifOפаX@ _`d~YbPd<ǭC6UTAJM#Pmego}"کT\SbGu t m5uuC Uƻ9k2?!}./.BPM/ t=&L_hem|:m}2l/j6`i=nƤ'd@[ UBgGlG`tuRb_`@Vr$PPE*/F b7 zF\qĖI);NruOP|…,@%2ĨL9u044;jš{q s> p\2Aت`QUk>x ;8+%?n -R,LV YdKE DNÏy4hUtrZf%Cpyך!#||Z9Œ+p6@x"ќ-xD$5=|TCwKȐ9+G%D ;iid)ir JC'&Q'[IFkp< ~x)H1*d4 {ZʼnPUD M&AU E5;^IN;UI~m$3.x*5A~Wt~Y9ᯣb8T+dn+C)Qk]hj ߓ\-LޖxHJYAա4ljݪ-uH1sviD]r6-?#w:;nlϵ hD, 3q:G(w}*֗|ixJߖ68̴:}?x;bnQuy7g푭8VH@Ed"p=g87}|97?K]M\D’ODI,vbe4A 0Zz<jN /+G=rzK7v#aS¤Ӷy|S@#H?"я.wLPsU2٘aĬ) нᨖ2 KDaJKhfVy/ "ݔ-7>_CkPJց21dgY6 n[_9?CDwFgjuf0s:6(Ng5]eD~2x zB_}Dvu/v%ӀWTeygP-ц[?3; ?+MO&@r- rf5Ґ\WsOw\ JRi~>4l8X_1(^z+HVjJe=>08B+9˶XCM5YBu/||J_TdSKW~BcW#[-8Xװn0qաC=Ї&iLAҵY被 HNLӼ6 NuixDKCcN~P=Tt#5lS"Q~6˩K0UFf*&*02p_;n.fz22y߅xoulՊ9R(~J3oh#:hMٱ^>.(1)7Q]& dmQ \]2"Ye2\%n5:k-UYCd0 6ADNDFuUjǠQk]  rܛuC4 (! m~vL# /٘sj pM7mFɘ%#H{7Ec; X=PkC,F+eeN;(6B5K~+fmX;l X컒5TS ޮqlČ7% %#ZzU; wa*wSu,oMܝ^Vck$K?ec'bgJĔ:r/E44 jkZ9KKΔn$Jrb۬S-Ne,`vPyInJ Deڽ& _E~&1MAD(3(jW틶Cm% z.'2Kxh盧遊S8~"e7넕BTa$6J5l@Wш$'h-?ʊ 9B&isd? t:<o}@}y'/*Q!Z;jfe$fwԭ0rv2@mDÆ[뉢!{H%,/Z`dBCNw dLoƂ_ͤ#P(Ē<52 W9$I^< z4ˢ}3Wv\1@-.Rl̐nvjmuv[.$}"m'IҊ,yIy{&A4<O?\Ӂ|faA4Il!NQAOipAnJ! 3~5*s Tyf]Dh`{3"n#{>Tp^J?7M1+t/^ީ!GlQJ ND֕WiP'Z ^kzeKE{XC";D[̨D[*uyẽkX8X5!4Z53#ݔ8()*gIt`и43q-FbSRIݥf\` AD'h\?zBx6BmL~9bR+>bFזjmF#rpI/ ݖ^pKS;">H52ϊYYpK߯$:̆%x{LA4/pф-4`9ݕFSoR}8^-<єjiOQ>Dk/A^*{'ۖ9hQXk” (гmO#%J @|z TCH+`Y}dܯ~7 o۫eP1Z9/mM g]zܾ*~(Ti+t6de_NTx۬3Ky v!x>8?6QOL3Llt|8gqq 8RfH9[\nPޡd]+~b.<!Y|tKab3#"`ep55E~CfTkt{$nt7iZ{Ө64%/"!?8ҎLO7TpjOXs랧%9xy* >7U$(Dv+ASZb)On>0hÖ4* )ZdVr9ĖLanG=C&9TKbݑfEL ^p~ Sj p-ȷfU$zO+nW9j: 5ds9%[ ٣ QA?bXՂBi"{r_3P%F_4CcSeNԉC.%؀C"_kw7B+9FFHZLKXYL|k!sElAFGfVqvN<6 X*@/<ǧ%NP!WbBBx3ib6N<_T+헺PIi<ҫlfjΚQJ_eT=dgy{Ы WXNejh޵Rwjv\eӥ Zr9XG7瀰ZYU瞞Hkۛ9i w5,s7p9O9lT Vg3iQr݉j:MR6ogoHlJer7耷ȃ}oQɭQk,/P$ < 6]<.RЧW LHUn0Et)n_*՟@şG@aS>Q"B4*^1Uk"LF,JK#)s z<~wh5ٛYȿ6tzD`z_"pըJ#7G |hcE.ݡp);˸vQ aJ!ldd3@zL3~b'.̟#{R9D$ջ¢TVtn,-̖ dRD$M= . d͆Ys>y oe$[ !o"YqOE&b]Or/9muW'q_h󩖛˒4wtZMwgq5kqzսf/T)0_HL]6 du&sx+4+,4Vt$W~8b5h|i1R~|v˜'] ~ gy?@U>xiw5N;Cm"AFN"'GaC'A6SVNJJrptUBA  lG^ ;67)+ WJ'L2\d@'_Ue{~ |p1/o Yj98lB5JC) -n !X,11fN_9nqJcB$/f9C!g.njS~Py$멇~UY7)ϕ( DF$Zmr>FU[cG߮V]_2D,Sf'Ц i,Fd-NZĚcLi~+Y\t{zA 'ylUR][gdE50" nƭ`u jLoZDBEuQRSkk6|,m2FRٴ⇾n~%}煔,P$=w g]>${o!H՚ aVYETf cZgNM:sͪQ$cA,OV;m| @?= &b &aGl _bd|t >¦:s,D|'Ĉ!y`XɃxc.VÍ==/QwŭqBLKrz~h4!*Á _O:i:*Eh)ҳyϛWql [ %!l\~ w.DN㝈f:,&Hy.ctPxk$ -'\] m"vi5o"Ή8\V w,;owįD˞]gVP]Iht/eI:?K: nffnQ+('bC1?5 BF+i3!.+Hxee8 bFޜm#x"RaTՔ:$ 7Xkg?忥p^nnE{_3 X.Z^ȣf;5ggLBʐgO NzpXץ!` G :RgV%җ NP.CHZq<ټҖEz镴u0o)hx'~I+0i_}:lNO{M-wF/IE*597Z$](2nX& 8LlC|M+ .x`g3f@AK/5xB~rMt&xި뤴FD.Ә-?pi0q^)Z"nk$@\U}=}sE4l"?E+&5bA?3~/kO-m19hS3 <ΥH6E y/1aamЎ.E A^>ݛ=;iܩ2Ѓeh%gO]|p|0* "[5jؤ1x$ZvcNt ,"~pKy,YFǝFZmYČ gN KN"k<Z ]髅IH\6qk*3%$L qe}4b?2VIm2 >0wJvpNҏue_Ar;:HTNL7.|ErP8oP'ȪÀpLIp 3˴6V8>#UDЗB[8ºceZxh,ğE_{p..8삛Lhz}c9u)W!Z-pQl>ϮO:Q4hLdf :-et|R:\<⑒/I%sp?S>~D.-Ne8b`I3a<9λy/i{q"pڠ/IIhhLrp souE_./e]/y &>;:Yc! Р0>\AUek[IA'7;at]5UЫ{֣S=!_NηdI!^< IAd9 W*Ձgm#iH%z?-~(M5Ĕq[TY?q-pv ;c@tm(2%25$+-ڄ!IϹN*/"NIBݭБbՌ=5D-t/n.sTS/[gDKxdӬrn;ǂ68'[4 P,K+Pc~UX@,)K)wZ%HmDWˏ d\Fs{㋢@SV$WMg^tEǤk Enm=vn(bud}A?BFc @=9/ZJ#x=ٲUS{u_bA |UNտi-zZڒ%#G-P!G͏_~Yf#?)Kں.=\,r ׺\RF-ܪ|PW?B.fqF-L2jGu!Cg}rPi-zd)L /?e3ŧH"ST 3G򹕠Iphaq?.a#3j ?+Z>V ù f^eۗfyri `ZqQ6QѫBvWC}/9 Z;KO%x&|}ĭ=cD( zuz{[bk|̛8;nԩky/]̻Cxs kHVS}:mxKEaG/.oJl/twCh"Ge]?XIX@$FڮƱkCt-h32!8waӾբg?"]؈dj߅V;-(8:wzûkJz6%>ٌ/qƉ23u $ [Ws9B-F[l_O=:qKl-ΝOFH\6!j3?2M`**q~G72cE31Z\g@vkOsZ/N|Q` ,sgȊU+;>m@3EZK^\&:1+g)@MаImC؋xӟo:.RҖ/}TF7N/ǑΊsO=sf>u8!oh[ߓ6ءF~ڃT *6*v]lx3,4r\[)o,Wߦ,y; &-wɜI5q5obi{&et &Ó"'yڰ_`kbjt-` I}h Y0;Wb=7Դ<'[m.{JHYq%Q'Wܐ2%X3_sa$ ! Ώ9WXKu*/'-Bufٰ&gU]rQ)"CWh͞Lz j{+.U}MntqcمVqXV+C ?`n{nU:if(u2ڤ9dܘx )\>{˵|+N_%E8PW`tk꺟՟ꞈ~#շb+VDKX>Fbq5cHN_ֿ%rv4^8w*[)m9CsH7}|((ju`:Z T?'CH/%ȮL9L+3,ġÖTCn**tHK/UP,u΅N:z~Uo D$k īFL3N*7$hhU?nl>1T%Vhvmkiך(v>RPTpK]( ]  2O~9igU!Ô6. /"N+Ft@%TsQ_P撪7*ƃsH1 @EU"Ti?>\_DrvϗzYj!G)H3 bXMf $.߀ֵ!]3Ҟ+wҨO1@48gUZr^g Ү>Hgx[#]h䶌EAN/|E]IF%ȱ:;qƠtĠ"B1V#E{'%J;tM TQ1ُWwAu mU&%d]3T;gM#i/ P!:͊ອ o#0|c\]< qgkCt+|JE孋=,V2ң@3T05mD=.A@ 0I*zI%o-C>2\HE+/m=8\Ɵ+"߬\ͩ "q:7lG|)w*:r]sq}I,mT} 8+v%0X`4/'H_.- 2`-qzX3obz#er( w&8hyPyn H(dstG1Qr.oyn= 4lhe}$|Trxy&@g׃/&(~'S!aDIfP}A1rLQ6De(o7rs͹GCDw_'. ?<-Q㬉]HǠM x=<Ɔ.cZk$ jiF$R1M-*QŸk`U j+7ĢG)P"K @R܅ޓ(VDpsz% >/M9%Qp"L6I㐳jqCm'b&s$ =o?gawwIw<WÓPʃ SV7]3*n;oz BSɁaeuv ىgҮ>N6WncX}x/I?O+s˚tI@ƺMwP%TIv/7#$PY g5Um=rKX` J D?olW{aٷ.B2z Fdej~Q `I~sE . 0]Tr$iLYxFN0Rg>u #|@nI?wc6&` !6 8lVt Ϭ$~KIZ#_SvqK3`f M tU ~|}yD?4_ߙl]vy(ZW6::F$͆gg5vvMUE4zBΌZ4߅$0wf*M I+(0!BCfO$Ҹ 6H3'pπ"w@7Wժ6 j@}&h+tKM QzTI/};9d7^(Q?a.bqH!O#ޅSjx! .'߼rx) nĔůi5 hjGʼ DɅ~+/}vj|"'PT>c`1</h祃|0gA\:7w,8H"Qo]u\n/#a\kdgV#R|*r)2El$l%muݏ,T !%~ZoT4=/Q 9eNku&)s4l+\+: u%9H$stDJNe@:GuhWW'>0G=e#Ԍ?ڙm!Z!GYAOË_Yusm)ڵ?-[]QCV~oXae,Hg'9ΉsUu -z 4\^χLx}A3ڷ79‚JokVf*=eB ZP4muR#{6ҟ]k%X"jXoЕWTž UAņ'u^6M2 !Q?*<< 1״_dָ"")ຂ7ݍQ(jYP6kV[LZuxem';G="$¬6 yK,;S_=BD)wP!U'ysWf)0WN!RU1+Nm;$>Ul9go( |6}^l$`BB J޽h{i^)6bʄ|쐘D`*F/dݠ*8&9Y'TichTDhkm UZm7K Od:Г ,FP-r1&O0)thbs 7߬8I*3fvLX2~+IN48(#lO'f?~+-c!#F?fѿWb5HPk׊)k*^@MPFG1+w̃/l~ m<>ᮦuBWiu-iM\@,q`: r9DqD.~ I)vzt_K6&0P`@ٮ5x;N&^؉=[Nw性ً R߬kf5~"Y^gJ k?p@ˤТcNԮ+볇։D idC7KRj 4ǗyʚfxjKdDree&ps%cցj 63ld(,>yΧGš%S_83Mo}Ю&vvw)f1̪L(AT,BGQΰ^ |YeScܻ\}N,U$[XcNz \+a{rDzH nsǘ'*QcIs%T8$g>!'&[)A-CviƀCfJeJfg2Zlz7vk^+Q'']_8I>'bR.qDkܨ{:cEY0? lKDrs @a'~Kk )շC@vfHμX\|9#\[x90 ECǽ@Wq ;lPUF iWGZǫ)^2m66'zwq5eJn:&A8ugw.-֪`g>T &:f԰,P%z'q4mEm>9C )LVMLKq(O0bDϹ(*j9kPRkqrSp(_?N*.X­ I&ӁqQ*?zk{IkfJQ16# }&5otْ%=(wy4_bc2'B 8 h Nb!$ =U7`uݖ [@ۑ'6(\R|KlmcpAO'rvbQWZpxpcX`ք:Ѓ3>a7O8b"T{`il8;zV˺!=Lx ']s\%(ˀCj;L_aΑο>՘O:lklTH}z퇿!P IGnqdU̒"4O 5\S[Xs^(?ӥKfV}\|p2ŏ>v/&H>m2i2^^E?RmTt] G;L_V9#[K9 NFsHsE' ᆀ%0/ g+pپX8ԁ[%im^\Rb(+m1YZGF֐~,B[OwWPq8z RQzz@ И~P!`أ2Z% #C?=}u۪j/N(r?|2\M`<^WVt]WO-.Hr(^,Xv~ȻjgUU'~c!V|h)3MI XTL$r˔׭V_s55/ ^; 1TOY'jX1CpCaBhj( ʕJtT _Hn6_!=:9 PA۳f6p?97޳kdJl}{mә% wLiYz̻$)ьLnqg}vsn4ZW+keTo a7 iRL+̘{zn_Xؕư߱O:pzG@_]0 A+NȊVJ^e,GEpH7?1ь>GH'a;¹ǣl`H/'.6Rfn$|i-T=ʴg)}BfNnh6OÒȆGk98pH%(WS}='|{dA6QX|N0L1RG einS5 ኼR{`Sg3Nوè00HVc\ljlɝ慓1dO$vexlothlz4S%6U%LDP|>öx  UXJ !( pڙvF=?{]L(/iQHX˘hTB UC!ӛrQ)`mϿOHY!4IgҌtq* ?j[QIĭc7Ĭ^L]t|>sK))r7.jztdҬqo`ϱ~{Nvp~+ό siYsގbi k]/P(]מ!]^B ;J#fi.9a Ĺ[n)KV2p< Z^vx%O@]!(0,ɟUD̔ŒÃVHItȜ"UGS:k{_ss}v˳45 bKJ6FoA^ R;S֦p1.loڊmI,j̓ e^>| d&j#hi+˝ }M k(b`Q.6đ*dymhtmq\0xɼU^;K %]AVJHMNݷ+6kJU1_ hPF'>K 6yMrX#U,bZ'3{`&G {9A;G}tvmAk;uӍKL'"``Bj Ԕ#c]QGX bwQ`ɧ5(9Y?dEsEs }s'C=}Gb%W飚7pK >qr4]T; :B?FjEgo[jdϓe3[ԪOwIXUrZC}FǼ5M'30ך`~3GP`LWliI4`qD-" Z_{4v. $wShF|i.ʉEոo Ɇh~+]ɛ;Q V2u?k y),fy0#=͊ ̤/Abn GBUfv?Jٙ崈$@msPnu*ˈؼCy̝ᶘLXZ}J wس)p'љWc~G̀m ]$::4ux`,-|6 TlDlLud}?Quo /RHڪNKt9d&Wr=+^ryiSaq`QK~4Tw2wZv&W04`>2*SD\QՁ**fKw{|), ?\߁v ͡'9mCȿקq~gT+/ nW6o֥_M圣ՁHպH״E*`oP͇d0 $arUHSYM)a$k6rDW\\ VVzbIbTJ '蜃[yB]AB٥~x߅UfKG3|4wb>ҠZ >^U/ 5AJ ㌿h0_' k7FG [Pܙeae2}Vtl7r9([.4:XRE" 1ZQO;ߢ> S(yG諪d1Ź՝Ing[^|;&չYEA^S⚍nH4t>=;ıU| qҭ(R*]p*y}2>O8]<IؠM%'2 PK{Z E*/|䎞:F3o^%l?vWJpǠ @Z8vg#Rp?ɦ-Ot.店ءo6]dRlPj 9˝H6D?CR;!"Μ]7faZR8y "g7;%`7 -}sb+Uzw_}98JMZF1xG7x0f{W:5DvD}m7RkvP+*+,R&.Kk᫲ڂ"]["n6IbťN~j'G)I>)Zܭ_mb)Te["ħi{cfZ=eyfa?Z U,-(0[esA}]BBc6CeV◆2n; %s`Xٖ|oANڜ04~>=(K,75(I¬jmoM'kkFPbMl^&h#mbm:F|(zR 9f/>d)u{X9!f;`b?USZ攉ڤIj~vCVX?kQ"+BkbxdO,Zcd|َơXD sm["L.gHdP3xd spXJS(L%\\whHiU+ V? i Oڻ+3lmٷb. M) t0V rE\]6Zzttd)5JM71}J4!"Z,V(ܲ OlW.֭xko1dˮ-.鴪2d[.yp&r~+c 8#~EˬH)GgT#Vꨗ$xQI (ɖf%m͊Қϡ-EqFA*,GνԵgY ceL` ?V6ycVSn7> Z~367g[sN֖syYQeBY;3Y՝_UEj] p]H|QbB|ɿFnMe~S@>MFqhRqd-9Ry$ڬ.%hGp*[kُ7Xy {իDPVv{O^OTzqx'4O?0-6NzO9i)ڈ{.>.;[BJȩn̩Բ>eABwF_BA1Om)WZ;H\ i,7d<ŵ)„~dE_H+Ĩ=@VrmDI#U.|}Z)`Ȟ\GքfVcw,tyc]dWfT o`]V.㺷9^6 6W ?`}lx '#v'YyqWI\A=qk} |})$sd'bDk$hBzr , &uirv9q Y^$350jU-VT–ǹg9B}7aYMs{ߢWjgݺjVdK zO/h[Aϸ߸C )vQD7.I!TU1&υqba]Uk_%@ nИ(p :`=j0xiri?=v5 QH.pWʍQ]S%d$[}׶6<䑙v+11N\jIoA }7:EFYߒosj-v 35@ȩgQ|qӞzz͈pp.pA h~rS,4ihƅ 8f%t7;Xe ;S[~$MݱKdNK U}9:(Ǭؤd\sZ*$;=RXc/SytH [>}<~`ֿd(q: yh{ܨq8%p-5p5{)XⳈmmW1QRlЬ8 ay*'Zs._^e]o٨"@Hɩ`a$"(-5WVHx8Su\ ~]qO7\bEz곯vtղ{?NIE;ى7rl/eŝ $+& (S?/ Vj2X~'ӊ1;&]݇qÿNކ}$ WMPMҤdrfD7xr̓ETV\3EldE^4T $/?BL7#W,\%KN%˝v ldd/6Q?1LɊHVM##r%[l,ƷM4Ir#JOƬ/ǻJ0j^n6YǤ:[lrW%7F,yX]WvM{ Y>1A? RENoU?KNok~b=%EzM%cORpO\-pʵ+ue0TuZ?YPзT 3PD~Q1Gf{kF yFeqѐ E36=^XygB/&5 8񄻚|Fff"7>Ga:dK`s 1er̰戴w[dj%32Z"JaŁoh9 #P^dl h:e 8mAo|@md)gw\rtvGEeF'h;w-rGp%դ{CZ)s g}RlnWM,gX ^Ce;x.rͅ{Hv _n^aŏSfx&+xTcM&X)S}Vb,@vCw>](t"m0Ň%a{Xc+)=cXp+IT(XA؁/w}=nQ-壼S=`\x| >)osi2dkg F{=8m_l+A3a8pȾQ0Ӻ:{8h.{ɆU n: 6t4u6 %c#t ]UEg9m*N\ؓdhh(OwT8ψ*6YowYBk@tY|ktL)UH}.cH;x$?.6`.&tDk'˲oObimrPoi9n 6}36bE9]$>bLGH"Sˎ|JfnB?sKX;S ut'`lid$Ԧ GA|SP7}/@gJk*<_ ŕ$15~+3?eNꈳFYԩsӢNv ؜'DX݆ݶHݛkZ*cEZb溎d@4h#Y$d/~> eepCҺ ϴ qAH/RWD G܋@R_5[:kua\AӄO3!ʪ9p*?Xw6tliU5=>Z~G(]P\+#)1<8KN9X޳tA;S#ނQ|VP_𜬅 Sz-3#A;*%anzP{-gOi< dߚV~P/&m3dƫZOzP8ـa #U):䞲y|fl*2gcb`7%Љ{y+ Cd\z}bX.x[v"f7*uޭc'7@e끊/cj˙[!&^WK,u\Ձ -T8Ռ\42 gj׎E"Nce굪ޅgN04y\ա$ ѓPqw+WVD vEMDa'&{#Ht%AjVTv ?Ik0 *+]nL¤%^qNy0aT&w+ V9KˉHwo2&,D~ɑ1BfrV"6Q<㒮M`KgcC]Y&ơ_&2$NH$"< ;x棞Iy{@CB`h8yudO2gƗ32?u Wph>^ZK i$^<@nU_RYF2u*ΞT0Yыku`TEjl\uq)ab!~حon9\qv:TtVJHzoӄw՘͋r;ѺEIr%^C9KJkq =[JYٿh%h݌)@C뵣`8cykUi#o~Infc|ABp`4O|c=[4YJl P6뮃g17f&airтxH7߳O8 ~UɵdĐD&sGa$stvŤ(w/pǗgWi61ad!WRLteq3ڧ=X-zU^dl]\T Jt œ;fPDIh.ݤnCIbg@g`@X@+:bsd/x'Sx<{M} cn5fw+5}viWsbVkAPbdBl3Ӻb ?i*`7Jݍk&n"\س<-_m٢8On{XwiQ^ 3f&dYv좮Jߏ҅9[)8+@Dig,m&_edPn5SMWUyg8P JLzT BW{SS8^LSsO!#  9&"؂?`.mo˷V;J}@?9r&L` '`\^,4x.~FLdLxx|POږB}u1/䷼R0KX33\2`Pt,5g Z  oOrT,I^rx΋)ڂsԫ|@ N#Uz1²2'' J{ހS1E~& 0yӑ O1o)tՠ:<`%B s ߦ"92Zɯs<+Y fF}TnyOɠ@Ns$hk$OF7q$ xr%!j'z9ymJߊ?Nzb0hVF1g-./4/-ku ̕TPɲ{>U2f_Q l@o{5QL]'(xm[J6&5p!>ϪuқF3oFOkTiRlqtF̀-Bԥn^=OuZ6dsti:7SL"-0k'>[l=}qyK 6;;s)P*h>=GZr՞xoXv^ bQJ8xU9mO{HL TV{qDCG.2wЄg1%!s#TRg7/ڏ1C5d sj|u3 VEǜa}N~leW#HoW/ SJ/Så2e(Ft"%"HаhypMO.G<9%zw>(ܳ>=XH:|6 nZ+^RDK'J픯;ng(5y{Zr_Ώ"đ?/0^-^E#'eFo`*(L]eg'z4=nƯ/\nsd;<"|"=6>|UrbiA7gg0=-r޲܂oɜR! Lx, tS|"d8њa}TD CIͩ0цe.x lY1($"K e7_GVMeͫEd/r$iL5aY,:,vh?ړT0 (p$Rl{3+~ia/$a` YgܹM>t,*e{YE܊ߕi{Ys*ed tnQǂ%bTPuùi w7I=Lv#%=gt)#pg*/26oW} 1_ 7 # hIgr+)X##=ERHԤA1~t#|fv_*C#|c(b*+k &e;'nܓ2lOT7>u洧1J1xS Xl*_+EhS3K4I7ܞだSYo8@DS:p/:_f G_6q*f]qP1"t=̶ W0ߢ7Iži=4\_NǞ>܄Σ}M_N0 NM+w8 FHb^sUN@AN.dž6vq=lt1`k"L mV?I)C-а'b\3X,1(߼wB|olzƶǓusu<Օ4ڻ_c)ƜB#t”_GViwWjaqZ{Olc&p2V )|IE%*zݎE1o oWZ\5b-fTTTLܓ dB[u\R,Fv:lv`ih'ʡMRʗ?:#Irv4VtZ޺f{UXL03| 5/2VDp 78AB,?NFK7Srg^wՂHIq#]K }+03Nz]*ы19fTZ6=Ih<=jB%qzƚϞZ*Ƚ-c6V ))}* SݘAiZ߽f{CCG,JrcD)A\O:cO+6T1D9|u8[,؛\Dpt|[6~q~v pvuV ˗؜oUU_X3nTEa|N1C\8YΎJ1#d vyDg,Z'G S{^jt1yD>uG,|\fp_o*v~-s]0ڮ1j&zIL9dv4OHyEO/Xs`dLe 茆~5't&}5Ln^mvcx<< Μa: IM5KV1/psݥх"9 O?->Y.ard9?͈ uC! e.zD=ˁTcxC8ڠtq9%3@@k*p J ֠dLKP>0$o1)c\ߴO%X+!U%*0Go֔#b0[ҖTU?k`,/-:uRUJU ّ̡guʹpI) 4o"k}o|hnN'ɚhphCܠnJA :;UU8کqi847{}W%c|ZIr OQKb+*'e3={OUo4*+j1|/۳'H_: ~}M-d!E"p氇m~ zxL`g%) l‰q"@-LZ/@f?g^} eDD+BB9[I&_] NĞZ2l=ԾNaEdQiH:UŮa/I]JFt.wCӕwv7*x٠ڈ(^/Qd>Q0]IK)c'%n#qKDHy{_>Y"=m-ufq9ܘ#ј=t-MjiHg]?5 p&d`ġ#|D?90 LKD(ܮC"bZs.kȯO@ܽK{P$_X濒: 0)MAd :9ؐtC׫փK>YH˝@eB6X&dD8XGMJʏ,Q TϠߛd+x=TAJ'ٙ\va֞VMmo >;j7q!ܺBrU؛sωT8Y-:=LIR I;;8O=o3{6xB=h t&X74Vh 4c. b.NtsB+p%6/>#^E jZZ`ng'ͬy3Ϭ@ CayXO hn>F-oY 0d-R_@,nr0R|AYQ'%E W<ɢ}3%r lyB&A|BM9=.M{_C@:ְB(O :ϫXi-C vЬ X.V-Sq W 4~2&W\De?ل?>{0M B2L;xm-MsX@md$P3/'ނ$}vXi,]G.&]Zbj?ᛀ[|ùx: lQկOO+sviz_pǔt=F𓛌x Ur#m:ppsƒH! J!:Y/8>c.wmb𝜜[hKC@L2CpäcGM:)|^’5814]dp S/DzWb>hm^\Z{M+ADv Wj'ۇ +{> g; )45l>YBio\~&d+ =~?5m騨#u,p7=s&e}Qu`XsF!|딳%Sy1RiܶE -u骆 򫯃ɤޠݮ~ZָSy28Ze0Ql u2l5>ڋ*N ~tpRhrpxLOٲW'|0_s`d =K'0F،ۧN٢A5jR+Ձ{ ;ԏ\F{v8G{)S=VEQ /57ʇRd򮷓0K C6us)ޠ@Z{)uϰkBϢU֞7-qsb˥[i16U^QZY}.a4WmnaI B[`l$NÆ>2:h:{_1wF_ށ(|dp!W竍br*Z}d_=6l~l7W%pp랥lUDp ✆X(mw{ YRE0^/T k zjjp= >lpԬgj8bTհR $:KCo,yOc{0y wʜC),a4 DI\GK2/1%T7Y:  )FE'I3h=->JK:qL,]4Cxͷe Mf'1[Mģ#(ZR%$._oVQ;$\.0ݳ)L/#6+x!Ybe=14Ԟ rF:bgd[Y+..+N<3_h@oG?!\@POd: :݈Vʡ4|x2O˃"THq9Pz9hOmTs ؁R*nH%z4z)qFKHU6"PN۬>HG_Ry$ Ms7q`RY՝Dn7ERD.ME1idk1qPSv[co{e-D(` 5| 7;J/X?*Q7yëT1'ÒhGqGx `-0󕪭$sѯA4cO+v :T9[6/uuv' ]Ssے~. 5yWMA27x7* W(e!0yrf8OedI 4 Q>3  ^L'zO 2of5^lh[y6 m ")",?ځz1Xf$!]|~ai'dlIɟB*!jX{GN[|0) ]תAg>/14| * A͒_TLIѕa[榵 u3S{w x"b2)XKq%PL˅8 O5}wxS46#ƾB%agDEy3 י3= (\? dt(]U`1m&:?5tР84mz݋$/U  :Ξ鵖iU&`0Xp+ϽTM%č h C-,uL_ k TDY"Bw3(ڛz;rM_5 @Nk^1LTӬypƸ** |Ns0^>P^B yU ;%;XC#ݻ&?z6k+xԑ:,d#@)PՎo8@+>zYCviImƬ@ӇC|Kȡգ'9^Ղ"`;ei3 Vro)F$"6>J5}H_`4GQNлbG%$1Ms,҇i<`dR` [o*'!YfqZ+V/f1 E{v;ZS [:[ 7en5/1Ӈ)3:ჳ aloSv4s^DVO0j)d-tGPiR0kHM&@ fJim+zV;!g#;x=RoG9]tT7;>Ǔ? hT?q%QTe03E# hw>b^!DXFQ -LHLCjˠ.4]8c[B.b.'2ڝj,q$R4uc.B1$ u8ЪBލ-{YXĬ}q3Ȃ*pA`=C_b&vݜmUwHġ=-1='Ib`SȔdK7@aG˂ TW|8Gw 8TxŞp3s9yx')T/@&I2ܣ3vѩVThb8#)q w$XO od - 8(VZ>p(ŀC,ClGUm]P%7mɏ Wnmu㾸ZX&vp+̏?+Xףղ)T̠ꧦ_:ĢY"2#ߕJ 7|jmUK"~u)隑%CP0vHw84xA0mLB[ q,Sj4v2AճWDrC#W0PL3TeCQnc|x;gه!`cE.dĊ]iɕC~:yo( /FguQK6&x3o^bUM }H\:L!ԯP6v^ ,o~N/=b>%>uaW[ Xu-z5[ :kYgasH_hJޏ#fu~NSG*BqkJ9iz~ -;UxH2dFѱBuPDf(QZ $h"xPtǫ2:ѴnEzi }1˶C hFhr+ˊiеal|]#k5j҈6.[ˊrn|({$t\N&K?Uǐ.$|k&J劽Q1dSj*JWظ`"=RC)f^*/ӀtEЇpؖ/97IEx<{S~!EJx%iDAY"; t7馤چGKXcIH{fZK>> ʐw#NSiEě7(>7B%=S1LYWSQ &cVPn<_ .I;Bd ѮvQTwlAiNdts ÅL2]O뿙6ٽ3!O٣[`9n)@)!;JbCĄjeupP1+ B¨#3ت9wO*I}%YIEI;zGLq>6U~][hfCV&f P~:ϋCzSx"C0q,`t"U8#H9(TgBL1"ӏuV8–EY[hvbO&*g+IA#L1*W@mydƺ ĩsH;Cǚ 8eT+fZ<pѦ Mg4PG7ozLY5a=6 |4> ze{Sw-Md`<IGukb;>ֺ C`㷬ht&h\65U4w]UxrkLUtИ!#V Ǟ |7AuC'^#@3GwSydtwl' ժsI26ց}T Z^i2pluUYb2" a$\3B:KMh 1̼<0V~=Ze0[H1Zō kt @"\BM/?7E`qTbUkj-;MWzQEhc՛eʧ6/Ȟk,Wjm)l/x@!0eF%0 ru(zOT-@f[+w̆-# ji EE8{gׯ^NO+%pget~̪K/t.xe1nhx܉0?~Fˈ V';Cz.m7rĺ&,޴E2F_ځe}k?lqC Ͳ%"ŠN`JnHXKpJ6 --yeskpE@ܖҥJ8䵉z0hAGN p_KHҕiڽ@i7IY\*tlϢ]{K.Ή6J @?w}?yCVBeiB'-{.7(A~Z|+a +OXYuq6Ui߇@8. ^uH"H'юv^k^ נE2K =d2=_esaD`+ϲTr/f.^#^f'djǘWt;@zLMLEguq"q!jH ?nk { yJʽoIk\ɭ#~A09"y{/ik\#Q#n)# ,y|fcI+,Ρ frS\ŚVMlaWӘY2ķv,$"EN|0& ʪU^\rVPP_Cx415(yW2ygtmcXVr>R0·;\C'!<$P[+.̰)>G ض;l(W3y0HS;/޶ Q29fNb_FwE^\M,#[e17,8J8ōU;byH~睉Zžt2W{YťzF5\€+Z9dSA"}v ?7# R=vA$+gh9%um)Gd{=oh2U$zҌƸ# wk @Ktj 3H{ԶEyv Ijƽ^cӱQ;vևg ~ ]Ptec(K oL Ee1uKs@(HEnFGD%6F}u-{Kay~JCUS',2caKV2vu3BjN;*h!gqxx'"c i%Ғ81cؤ<6u0ۗM; yN/L#WcWb[Ld<ՔΐglEЅ86}ޅcO

K;˦fߜ<"<1hc̰WSg)[qMal<"M=vVviv~ jH'$rIVyñx+rWπ@$:TSSª_( dLK5:Ġѡ!=将BkB#>a_fHZ>[OcZH`ZNmҿY1.>K(D룏l[)G ;vr =w E'% dG wתe\%Eab} Gހ. Zt،vzC|w] C9й{Li euS\/bΫ5sd~G_-ؤc$XG}y-&qҡUz0:FPuuMƗe=t3'Rx,W+ F5Wwc-p|j,_s YvĘ>J$9Hᩭ0$LgKu{q8bSJ_zh]&Q{2㒵Uvw0 s:dsSd^ 4!/vL)=⿳>l`25񼖌T3eۆpmQVv_aPMSM\/jమe9#3oM.,IO. 4BPpeQ37$[!!(*Y>$=Z`,>ff?fVXCИ~Rma/`LZS ږ_`ZђþƚUE `DhYwd`16!:e䚊->,@? -I+XG{׭gb/:51eY٦.O#)J. ڜ"l8 bαR=Y^GCjyE( '2"xh^Zat3TE'j|f5[mt'gؚĴˀCz!;bXYݒ`xE˼.{K{g=g/ʘQS|LìD:F,flQ7S^"kتQ L^U|o.ǃ,&3VZ& YVƆ ,XV[ e;] ;Jzpګ:+6n׈?p7 % E'RG O(Ʀ)hz5>^Eitzmx~Ȟ9mC=.S@hбWU6!?prҴY 6\m;8~UR1&Y~E AdvwjԽ6hife"Ҁ*9ahb# +ֱrΛ6nѺ̞5dRTU b( yԘ8Q(pQ\`'>Hz7HV,h< ~B(Zjl:+R p*F1q#׶6陲m6\xX ~ *b,6Mx%ͭx0ddV#yv8fqGLh?t!BJ(,<Wȋ'f=-DY PyD穭=iFkÊ-xb:.S9Q oYkC!N~Z3ҳ 7܎k\eգ*BpcX,d#9#JtuCg}!v:[uipteooh: ]z`'&g-7+D"C3${X,⣛nx爝kce8$T>:ʎMB9BYR UF6HC~z9t~CU  5.F3$ad- ROJ!VT1V\WSu3`G'̑Ȭ/y珈Œv~p`3*4B\SY~s5D &O rVt{zpSх_cpx\o"*Q 8JH~ٌAMr8;4jk.uU.{}7SFowܑ4ȓ4bȭ*.mzGᡏSl, h&6 'W_Zd: MfrjnaRPO'36Qw(G|S0^bj{^COչN)} m #K7*ivמQ5D_qÄaŷL5<=+* H`ti7yfV%D-1;TxeDs]7{[v9;Ql[5HT|7X|Y&MͳlR3>w"EMִ8hmLJmdgc|6OCUͤbΥY J0AuE>^ Wɇ&L&Q$I}.P1@e1BG$[d`:Oh_ɍ^Lwˮ-kfv?!ٿHUƅwǸH%ڲeB< 2Zӥg=Xly8&ue(I*`Ǯ?.(Di4cf(WaTMjr^^O&\ZFw(+фm'Ę|wޖWv:>GPj951wL_3<-,vWμwx~cpjZm?SnRN!i(ynd*Oz`Y(׬ J>bzc3Erdu"izM NړGD1a,hRgSGhޛ)/؞&mo!TAȵv)Hf#bW'bFFNCǘ/b `pGEI^c37nL;!VVP!xY67Xy630u>6MVi/!t@ø 5@K#{XLυd2n㴪«k0 Z4Z͖Z#825FlQbпYJ0n2R*Ǫt;]ԍ QO$^tҕc˿7Nyf8[ӟ216us(xw=:1~':vV)Dr.>orV:JZeQj (V&C7 "#uE}3J|{ha LmPpvl2֯FT>Qݖ \t&\qf;xTNFanda5BiR\wor(JIj 2ʇta` $h0"\kk^u~G[+X*T sɃ rjsV6 KEyȈ,e xjn^މ~~2B?|yx"aT ) _9Pn_r辰 m0FEi\QhM2xv6_Ă"0#Iuw Ս' e 9?&=bb$#İ/$}fGP oT hKmZ^Y9:jD}NUz6I+Qnmb4.)T8vw>C]D3lnez, g7Ϻxwx4O0Tw O>,N zuPiЕVoQf(Ox81_RNϘ.ZTLF]w=epaq _n466L]A_MDWldib}4 d6SvS͡FqfۯEZpϯOeaXM/˜I40 _.YvU`$n. 5m?ũscMΆDy0.Xd{Uoz83j Ma*c=uJSgD;GM,VVjZ :G6˸Yz\cSdìIIG-Vj8^=[ pD؋,땞 AA*jw٪:֧0a}#8}8^F.mQ,5ow.4/28]4@Hq~q@ۚNp;P_bj]?6gd$Z_/`tIe'm`֡?nt& ༝Ϙ?s&.WHz>R!%Lܥ=%M-rQo*2ٓ %7(QK),F$&*Ӿ䁯¨YAluXnfH)E(w %@귁940~o Qmh #ڙ >h1-9cǘ;'!6S -X4!B :7dmVYCq';K\62ƔaT!;ϝRݵsRN[nw%Z.2'wD sf^z>.'^2!po ;DRU'A\&gw]+FpSnM5m9Y]U,c6p"<(]$:J ׆[c~!aIm3!dfcH)/(@ypZ^`z*v']aY ZvYE}]kX_jJJ_R+."QHF]zm3kW>K(g Y}&EEBpd/ɇ[봖1~2E1m2g $R!OG<F^x:>07#GڙIAeznFFg' 5r}QՂ'TTI *."$f\p-~)!K~8T"OP0Z7̢$LO!Y_eo<+Kߟ7҇ؼs7Ii˘+w7& !3k/F8.oFvd1{^:3^#WVæ'g25[5I؄8 !hQ*Zx$S[s5Lϰ,Yݎ:^L‰iיPhBZF{v(-c }.3ӴIT|ؗKݑQY@)7h~32g6|WQZI}9lp2bwyqƋ`ہ0V%qy[ljV@տt !+I퐱:|̑ްMB>{. (q8Bs_4Y$TwU7Yj^ƫ֜hU/YǼRB T%db I6Eg %ƌ"R"EJj6`-B\` HLycP-#'.N hnrmc]~}o!Vof-sڵ DmdZ0/lV&O@DM/&iRߗz Z˷L;M PQļLi+v"lW4DNm?iPP꧂Ugn,ho]+svNkᄌn;Mdp>D0l K>`*=t8"$ m-̵C#n6 kfPi C6(Hݞbvc 9ÿug QUr+P xSsԊ@z ֟s]˕ shz Q9~e s/2Bxg騥l?!twZͿ^2(\هtA(G|oV ]1ۈHS҃05!k&01 Yø$TΗD}kvx"]JG`]-T(< Q wuj J5ipom P2e-D:M^_v R3ٮH`Vm'BA,4*v,t8't{d~ )放lp(^4}XX&B_ʟM,LusCRazz:"`02/~D~0Uk񶪲Cc"ւbMj+$Ѵwz ,/Z&g؋<*^D %76{׈|%:Q_VH=C߆<ѫ[ݮlS9XzD[qd͊K^yԍFJE/t *G)t'<=-;?C4*0 }꛹nqe\4 FHQ2q7(E/Խ< hckeF̮zDxh\R ^uso|˸09p%AmEmH[VtiyB}<5|[%vph&-`ހKGH)'!$ XͯhG/cc:QSŕn`jk.2M~[X0R-aTMT='s@Duj_O7Lម<?뺳gwl=#ĉ{bmеB;xF4('g+CsT'5+jwp%[HG1 H_~ ">*\Y:# K ݄?Ƕ>j NTyEHf2,.pT{E](H}6#rLF,ŨW{Ө1NnK WvrOm繞BD$P vtG9\E2y8sd+Et^Y!8\ &Jﲵ0W1*ZjK HŵQ3Æ=*̲ofk]5Y%nDANEN>e:̟T];_Dj(& ZV/̭I`+*W1,g]ޛ7&׃}L ֮@^"[,fGdH Tn.^:%:\} ~lM]9J{G̨l"#jYJ3YlM -¥O6R\~)H4XERlI4l'*+/AL3\x F WZ`vig4S {tuׁ'%l,ߓҜ'p_Wo‡@nPr v?eާ$qT[wM4L5JY LC 9(ZTOwRL'L>:ثq)k#vAnΒR5uqbllbid״FGssHNi&sR7݁H8CI`[<'$78B^M,('|;XjiQGW9mbV8!.a|> v^ydЁ FE~Ф z:uY^ON## J;m|Q l[D|꾯VH_O_|N͠1:aI/)nK)"|;J-FQ S:229tOv T> XeWNFsGZWTq+ΨRj& }fXTqz.UTC Noƌs,ߜR?oƟ^ 3_06F +R`K`Ō|!lA^*JPT#b(W"H: h/Tz|:'"@B0/:F%j9L+/o3,5Agu2_`-%qĹU3wf>="Z0ςOcTe&U_=jKNnJ",e q`:пcCyJrȑ_n0/#b@_Ad-→YM V-,Rv8Ď} 9xԐ]di?#{|Pz'K=kO[FTn Z8/aR[<ߓI'J[0SÏnh*@b9p"HWI٧Xt,B/Qp}Q~#a6lxoMWMMxsوm,Xx]u^Ed.kG㬣fEؕB|嚯ɷh%Dض| |E8 4cg$R>OV!*%$b@-Lx@c9BԧQ@ Y,+7W ϻ$Ʒd Vj{m;r:ms=H~$Y0f0nu:j 6IaȊwW#V!jN oP'Hr1?|X?5^@mJ2Pxw|Gw"d $܂\`Or<\_5|CL7<ުQ.NȰz߇NOV7 b[9κ ]ҭIAEl84C݄HF; ahnq+Ҡ5ʱR Hp&ꤾ1k_$Cbe| )k L?+' 3M`H}!RS/imҒk(3L~ t`sJb"uk!#-jʖ~o/9U K`וc%{qpf'/ucAK`ae[-BF 힕N$8$sio M{V\z-j¯ t.aH2Y 66Y%ÇӼ3)ǎVQ̝;UOY4#Rr9O3yq%g8WĆ1Hwbڿ`u}eTs'iS*X_q aO_\F54uk e9x mQaI2qQl1.V0<"UPǮ|@^GfaRY R>rېu@z:dǟ3ƗlL <'l+Bי%bS,xĸ_xLysS rɄ݂ޡ\3x2@FM?P)y{EZx$vhBV Aֹѫ=%ⰵǤZM{*o ߉sl εy3}}Gq4#_湬wv0BB/OEM0$\ 5?C%Ŷru\LyEkN^6ko\8dR :hlQPPՐ`ҁ>7;1} Ö{|gCoFoՃiC+[XhD0;^x CY6g;^C XpI1I9,cBÇ+썙{\jtӣ|,1_`T0qfGQ)Xn48}3%qRvԆY:# $՘vdN <;eơ Bo0^̆wt..8(n{+w]E(&@X܊?|5/Gl514#qjT#VZA6[u'ɝhšC0*T]a4̬s $ʞa vɰ9BRؒzosi&Y~, y3`s¦}<؅qf?]_(ŪیO>_=b>8W/+9{I̊Y,2 ,*vsQ~y# 5 3Ĺ [fϔvG᎖ -4-/. "`ƽDLe7b6)D Gȯ" <uX1Ɔ߶!f<;vbJ|6OX "@pG8^6~p9UF#PiL $T|;\g kWo"z'rvF&j2R\Y8Ϙ^*#3SԄ. 9ZgIi84ћpMkg(X.IₓR:f>*_C)tl 㯓Q"]1.ʄnU:8 Jh.p8LGcTO8k?I&AF/M<>ކdrO9SY3z Hy:WpZO|mfm_F6tI<$ov/ƥRYjW05؊xDh/4=54&wuVHD%J"b™:-F@ݖ[(yXNG~+Wv[dt. WPa}dEH"d{\ CH!CͫH-CB15܈( GoPu طe!}o8(4$^ 8׈>~X>FTgEq.X b+`N3*=!Lۆ6kmBP)᭯XxSW#d]\JNP}m,q#\~t():Xa`e\o;,a0Rrh- ݥp O3[,ð/Qy#;] Ѽ%{ B%FB7~T%>mʁR5]!Qٯ3hS.78.Jˁr}šB+ax cZ{glNNid@>c;bpg{O}sP/cL߃4L:%G&Je Ք1+OG]`fta/ |{0^\#! fׄ a9w$/!2#7عw/`+C'"=RJEƈO6]WWWנ@%؝eJKDSo\qq5IJ1N7US G X0ǬE*1q@<7]uHc|" x=.~bFzEMi+_^ul/QH%zSd5ۀgK0% eQ&U\›;F4{b}b NGN 瘌| Q=8Òt{<*_SO<#֙ߙ o.g╨#x%fzw6$Ҿ'8 )9Ul,PD"}>P/t:ϼ/Bmy;4VYvh׋+cRNO0]%+(Ưi.u~n *E颫ЌHp 4JO0[34zbue&mF3B`4E)9TvML\ݟZT'=N\&cT01[إJE#NL fD g1C!-AZ@9 Z~Tw|ͧXeHBPOgqays_C-iڰUN&D=%f e:FRӷ+\r.,t9qΥ`,VD~ʬe ['K n?b4 yIFY݉ z*mvy fyb'Ha=tK,CyБ^ tw0NNT ,'&,+ΤH%%k#ףOOxa >yӊԅJ֪LJO'p]X=A#ӍFý6(E'cy„rwe gSt\jfYji@HµTا^8F<<IATjV#%v[5Բ3#1K*h-}+yQDyf:@3{j"ο]^/҂^,2D l>a"!IH.+@pWS yI]F7@4jI 䞌0H zhp jS'†-K^.O!0fQJ&*ͧ=kɓEڳ5lņPBt(qV-Z/eهlo`߲2ng&(F)Xi쎃9+ȠlZxi4_h*B4oUIYY3@"PO:Ludǝms[q[PVLީ'lWDM{v;c/q) &ŝ=UG}hkz6m) MAZ۟k:]W5$1i7^.mg䝣5>>Ft3\>Ua^~R@Dp̯nXlv2 2K~g,wkM(u ^ˍXSVK ۉdwS+|GUd6; ʗ(v:b:&>BcSXKpYޝ.Bx|+En*aNH9րJ=\"j*^)A'm, dŤ] 9lS84|l u[ G F6HOg8VK`?`<$*$.|N!9,9 MOp]T(]fSoFkt1Z 9`Ma *83RTrjж[S*ʓL% i'uB,LùWݝ ͡}Nk@\6gL߲p SPG>g!G6;)@ȧvǥBRΕU|@aPi =Uꍪ9)m\<$E3һpBS(b6JWJ0_^sLM; ϒ?l|.DbcC<-'rlxiZU >de!~R6`#ל ]A95J/ _K(P ~g1ϯсŌYź'dqݣ' ecW%(k)[qȦRlY7o-,3}umE764Tܬ`POݶgeʯI@dlcl+%hY JiY&k~rU/ǔEitMGF`&;oఽU?sv %ڳMC=.ˏ|Av2th@,7bW\Yc8jtG6swvd}6&5hoQFco㛍uKC`L2*o*LN/DgqTO ^T\xR!+>݀h2r5\8Ͽ5v1.i$ Q.~2:[gpv@GaR$sUBJQ ԍ*^<"w$ҐR'?dʴ']r;75&"ik~>G&PcܢM\TD6@u/%Ehtw0Qy%BL? çbzajuYVl*pE~D/XJ B )-=Xd[dnMQC n&0i]:ו4:]Qb[dB0zI!o~\KLXY0w"'1_kՂw%Z^M]M~ʲ$kǪ& w2b9#.Ct-$,&K&{kJR癝FK8YbnE[]–/f" qk7Ihj ݤJ}tsi3+BfQo1'BW-׭nX%`tLVO-wlO !E5k XFp,%IEaC̝hZ? 5e%ȶeiPVa{I!5%JȜ B{[ |[yh;T<;8mO㩊>!X_f;#5~_JyV d(G '$& V{dow9!bdtV0}{'֪st@eeBsuhrIOqUD"Wliq[,\"&-Rq~ F6"5weVAz-Ay00S%x>Tc2d86i*tsd27bEŔ˹PF$!PRCWR,f¦3M%dOR'{е=1[9ww׫=~g'.:[ 2>PWo|u.k;#Ԫ ɃȜj?huEn=k+guT4Wzd},ROi[7+nKiEƪ4sϥ !1SMu''9=p@3xpw <6_/27 ;F9)|RNS`: %ͭr\p 16s5Y!яn{9H \*L_M sc\^ϗdRйc/<0va.+*{."3C?&FsQJ\AAR!Y|:aՑ2MkF>nخb$RC!تY=!S?cܰA51K-6Ne>$CE !Γ3a6/13< .]J򛊦g^z$Ѷ hjyxH![0 K *G0"4˱<|31S}ȇ%hx3|@+qʔڥbIX"@g~r*n`Ci`W¥]Qgt!=(,$2v5+s=9-5z@ݷF糳0L[܇g_BYh}𜣨eI~| OC*±D GsM%lCDmڛs6{#.C.ц(9 hgJQyi ~lo&x?f*^T!a &߭C[6m"m:Q$tԶfJV}).]iF=ĘUo3ZBVxNfͧ0 :ψ˾ $^lЗd@u>ꗪׯ,śflhٚ N@|gkߣ ~!_o'?ZF0p(=>GYZmC`y<;g%'+?A^uԨ!kO;Wvy:k&4s=)!`h3FLln< yJZ!\G`p|kP~ثV bR${C64K.)xxl=u"F%9b/7~! x+< RjyLϥҡQ=PW k?O|Ŷ|^м2)Vc.dΟ  & O l t ;W*){lSeSW| tqͭ@s<\^ {eO4WX9J%aS`N9ouePbE8m-G\ȧH(ۺɋMci&lN? c- 0$8RO [|pf1BT^u[wQM\MS]}m,Yo3fJH}/砟u p>pvu6݂IXG*(R!f{cَ`7h "g8|&M`eaWSwKǡiz4ˌaDb&e& X,vg L<t[c_SqCXs.5r]Yi5dAj$01VAjL-+ c5z]/yvʋ/Z+/c8񼅴e'So ax߽AHE)nly{۞';]!osb-QȨ&A>ߋ8IUJR'LVYj;w֫DFmO@( yZ,&&>̪by^nv/7.vE+㆖T{ZVۈi BudАb%]j R?as0Nh $$dhU9oΖNzz30.WO*z$>9yLZ03tJHLGhF-͠='ne`'p,@[Rvz|yyjVcoW$I#ȩ])]4!9 N* =HZ-8<ܯȼ|3[wC*qBj5׽KzТ37Q4Gp;0I,!\nm˜⽳{@oMše_#icIFLz8&Gn܄jn:|h 9kf2M |۝;oϤ iՠ?GbU =Q`^ڵ0c-,%ukCc7$R2@f&EMHEB=#Hc1,__8)M1(D}.NJBw'a!4 WL̻vW!e?^3j j/L6Cpar GJ#,rT hL)|0c|V/3WCrajӚ`~î&],ܡ X{+|q %χtzC]|5е1r']șz!zWS ;UH7jJgN-;|SS<xrŒGm;p95 U#Q8 ABoYw9c4v.B<0MYdK2F_L{ތx OCӜc I6cfaQU2QחDqJm5Q tf8WZ.pe|bz=v*[VI'".Lu &{e4;ߜϢLJ,'6@ƶxq2ܙϬԌ=_:T}kY hP"@ vih#T" |cS\  Uċ@ G FE5h{UZCkMWRL"܆}*"hF$3~%j}^/Y#V.A a[D}A w6$Q dKsQ#z PYBO+{gE y4  錏AٰsW0jcv0{~QھhN)zaX-0P xP{L?5e`uޯFi[n/gycjARwk[k+)*r >H%\TsPSdM 69R~<ڣعaRC6c~b00sejxCP@Vf3Ǎ(|ʀܪy+qy i&J-9[=M4 r*8|-h\~l@ԭ$OٳWfmK715-UP? 8H&H&vlwze E@+lhþt\Io~D*޸[E]21ר 0JR(DZ,d4 Pc~?^Xc2~Vg3%G~t //x-ٚ۳R^͎^0zf'ԸE/l H1TlL6Y`}|\h*K`m"*+v8p _/:GWH1.Z3iMn-Um&A8νF%ɖ.&קp[*f@W$$&QA{;ڸU-/X KPCu%e A ۴n}k&َyU@3H|"?wxC|AjJnqM&80gTGJ1ǧk'.:iUWyFunFDw@ep. XiL;m Bt ġXVf0Tbh#Tv)Lt./lQ.k=`v|B*r7a"^1 \.UCk9Vz_d^~gH0E5,wC>UH~plEidT{=;;NQu^Mt,mB;IK10R[z J~MvS>'%51sEP^GR+|G{ pae]!HsJψ}FMފ1Aolk.Pn[P QW诗 Th/%$oLm;%"gFæ8nrt/cD# Vn~;i=S v4(8Lݩ bsY%lS y\,\jזΚͿd(:A$puzk/J.)XUpNcvq6mVlLO۰ZReH0tus;ɮ?Ut(bQba1H<y}> õ]0izxL>DD^V!•vZ߾( BSDc ylp3y@UPvnRGkʱA^e6dߞy9nN}Y+Q4 qma3ÇghS4xb4\@nx IZ S `0M7gⱓs7l &S\`E`p._L|^ڦ&:THp/G:>1yŮf̯6w4ztY?FCFWVke-_ 3Iߒ?cSUkeGLot `m-̊PTR F=EplBޏWLяhVhB8=3Rd&0Lqt>3Dq"A#"@;@hѱ7@L0|\'K3/AaBW_\<`qB9* Epkn(gbnt7#E[_dzXYQ%`~U -( *os?B"fB}pV?>xK1[B( z:OHkycQjIoW˃%p~15b@]V(rރ ׮ i{w:k_&@ы`JEʖR/ VI*}S~ʞkUYY& p[ Yɭ?TTI﷽zhIV~%Uë՞ hSZn#PCis8e ,hb\#M#wx/M6 }?M's<5t(zӥâ@F\٪!^;=Xd1i|{Lo;DQyi~8z2 7'dufi,o|.%aq҄IC%Bē :ЏScN)|qQe,/ -)#ig>0mX!T,T~$~~^;JsߑٺΏ9#@#Jq Th%7q@:{)eU[$Rb啩Yߺ@s+m%vٽ$\E 59hrh qՇM(~8-evvQ s>'al|9T,,[~ҖzcQXYٺ5L|kA.˾#}M$^qFqRb de9Jv$4Ĩ vG*C0ePG8iWJ 3ki6tţg\䮮}Q?9 {1Gs:Dg17|$֡ J@u-q%lC=:#d9QDby6##q`#|褤r,(39LoY2ox>kn7ex):ќ 6i5x{9*}?swVje *uGOp턬kKxYZv.q\j"d_vѱ&z~yQI콙ǵ9x=w:H,n,{ee:4QQ4MuU(R?yqMEKFRW(ԙ'\=˥[R%".0&Ps%bZ^0(ϻpg;.ok\mpQcU0\9hBPշH ΋Y v)KF+9\Gfdss,4Z"e=?jǪUi}ҷ>UD BOU(IOz,h0Ϲ;I$-}=XɒV6v%I;[ qA“ YI۟ E`Ռ(ᴉ*[]z8-ˣ`bĞTdW7}yٔAG(Tʑ;`^JJg%V?  Kp֑Ԯh_m73ZY,ǫ=ǒˍc .\q~}ykkjDU}~}Ȑro-c6lfi6SA&LGWs4rLՁW_%Q/Gvъ?{KxFӵk࠷(ۯ5?)6g AWzmld&; apŸ!q|]Y,[hU69I;ǜt xy8NSQ-෠}:m)72XNb5nZ sBޔ>}N܉ @d-MxI+$M+YphZު[91-nB ƒ0=WrB!_0σ @LOtoP}zY9WԓyB`dz΄sDECB Ԉ$ߪs+ V6+: H4^֞U@8z]oxIQcGs hXo- w+b"TL}V߹U|)v촦tE&x};`zJC؎L2SB(=]r7qLO&3Ps]t%v;?ԑE걶,A)_ÆUѬmAnSJI\ýð)@Dsc4w$9x ʒa+y:G/wxy^L[7u&I\ {#~פ^9KK~yzgxlQmf?WsMl@ٷk@Ws4! ܷV*^UiDD*.jguAK4C]XXQlv$=z9=1ҾQ وvg@jcgY:aTђ9Q\ۧ B؇rt (.7oMI0?bzYƮ}@<׬tY¶ Ž4/-Z[fBᒦA]إ.]ƒv\]mQ]go$a’ؽ2>Ӯa 8d,a./Ex,d r'{G.*͆ӌ9_ޗUt!4;N9l[un#߯2c 0iӾOX]ePêCVr55>E?MZ8r,F7. YzccOHfܓޣjJ9GWa\Oe@EӛXB xduv{(m$hޯ*K51QSD351o:;ÖLNa2ssL;>H dq,if+ RSm=U%|~X^t=it c9,@$mj!d۞ z Gşb(&q"К7{Q4'5MQ`I?gsGA[`N׮v0@ K 0%7 zQ({Hny$I(bhvv9B%(l! "o,w*QڻN/*Llszf[yY&4~T6*HQ&? 3ۓ%WX \WODp h8 *UQ8,. V lxRzܜrI,C<7׊cw Mώ?-4VS<{:4M Sj^EnKǯ il於sOD!a1PŞ TiWJʛz5jlgRZc6VәTx<f3^~p_AtrdF?Tf-vLiDڐ30y+HKnybڒgoUB #} Saax_ƺ߶G^4u] s&~ P[21 ;-qPJU}[;ኗޏ?/'_0]͏zc^b\ ֝?4W!Xiý(5y!@4'5M5J?>FpIۣ@QfLV"Yb7G=7nji ukjd7l{'p7bʹM$r,sI*Z+.X끭gWޅuF(3;d+FF>bKk`S̨r/?ˡҞA뤅MكBG-#jnAٴӴ;:"un1|(jvvFl4uD`X83F^9kJwkr!Պti(i, h(;^gpӝS2*a-r{Ny} M7f$~ ofWsÍqm/"ig`[x۸~z9m h-ŝ WdstX+NJ;T9']s[ݺ/rB/}햿sAr!ySO;g"+&w{1KmY(S59?+MjǩCצnzl/k:1^ܱ <i!n{#?Cn+3wjC &D UHOFgpdunc~G6zzpkiH&I95VQN&{5=5o~SoA;c-tI]Yڰ6q.Nj~ܬ`B&kyMo9`>ج 7W-&jB6 A}x V C/5aFSx'OW=uhO6gv׷ Cgڇ4-MREBb0=nsvq`|ZRb*vu^Zi5쓹􅺚)ؒ܀}\;PX޾jV)1Fbr3gfP w>.'HZծFyL^HhVM-B#?7;ףe+wxst {NL -BX Km^$K$qgOBE/t( 4*@#xGGy]{t*v+AT[տ֧2D`R߶NR9f7,H-h73͍>I@D).1ך*̺{N ՛bz0~)#ٻ5zk@5qkfWšR< O`ZQsm= pdd*n]Dvz)J32>_aƜT&Q_ieyZ;Kwz- *S_ЖLϓ`kΦ;:FE'Lh _g g Z>#{q*d>?` r* (؜XnRj=AB߲F1>fZwVZKx恮/@P,|{3' _wq9 7Z2ЫxZZZDD@u`VVQEOwE66rCK[K"yM]S کFB{i$5UB7ҋ7qwޔetB}} зy.G75)h[smY02b7UgB@K(q/Á!h_xDNP7L⋹'"Ҹ8a/yw95YN&N[熪ZڣLFI$s\f㑱COwƿ ”tflg(UF Xofp!TuZ8MXHߩc^Lg"4 ?noCo)V+̬5TpbR"K.}y~&H.\<ki0e2dKud*1uP*T}sEI:QxXk wO+Bv2פzv{ʽ @lvWr@cmWy# vN!y%R>NȠ0s1rMT&>rG>5Mh8@|1i͕]~V8i۠ L/·\]/{)bGO %7)ɞp(E(%8ܲkF7 eCY샺ήmp ͒ǧw$MQ-f&0$Z"#6RoQr瘦1,Já/H-jUEFntNe澅z9qQ#n~udm,`+-GI .0{8ˍa^ճ;F%XU>v [F3Į!J_v^>h5N-Kɥ]9ESA'(ՂEI;`Uiev)J ho286.NLb&(Za 14v:14Vv^&ēlk69g5]% lI@ֶn)Έ˫':^0q~ժ?@-lČUx#j5}87H"Վ-߮>le/-?h ]Nte+!3y곮Jj+9>6>z6DxDJgBbA zt3HGYmϒQ}/=imr˪ŠD/AgXRP`ܣEu􍼱<-W;t6=zp}D7 TA6Z} @gQYN8Sm.@EXpZc1Ekw3ڗ:B׭|HS=d "6OA7GPӵ˫ȑ=Q3R个/0\z CceZ49ْ?riP'V|~xPId#N9@PK6_.RGăOz`/vYHbm-:rIσGpThm,U ?pt=>0IR4FvWkm"xϴR͇MB3UϨWo_ hL h !'{73TQ&#4¹'f Nˆ2J"^loZ1$1sɛyɷS#ybN7r$ea)w(&NqổW@Z nmoҀ1_(x`e{k)JR'-61f-W/A;aeY}HmȔܺP+4gR"p[Jܞ]A"PAlt&0;âhpH:?`~5Do)a]4T~ aF7B{-̯ʿ)$VOOś6j]Y;Ʃ%thi ^r-l@cV 9IY79ƱTf3/@!ܚp 0q'N})oQH+X4dй1177i'4a&Dekq8ֹfZԩ ;]k7f[w{Gai\9@U"Ta%NzqhQOf (eY d8lqx/G d$0v'dLaIjڋ;U|WAxE8m X"RV<{ǵd'ugVg>KZ> ۩k dkhM/"R* \€z)I\|$XY|d?/y<57,/'qBH?C^]m!F֪+u"^Мrʊ=\HM`גPEYAoqBL~|\DKH1#zlZ!_.-]Z]B &m4-Bcf.|H0ec8z!Y!"VB0j +4 tM8ڜRش*-J #έ%@hK"GޓAEfj{豷(>Q]*0Gi?&.WRn_Oon@Ԁ/34r_u[{P[Ff\>] hq`Ѵ5D/|E_MѷD,e+e1÷< x1)6)wlp/[g~K078 U`z^]Q8$\mdMҒCWFT79n?ר h&ZE'`&EB v[{6# b dϲ*N&b(0&xI=zc3tz ~Ā p0\^"r OYa}kgo\v(OէKF{_Sέʻ'#0 dË_{~֮@cH+q~s7*9Qu\̋O* ?B -?Ϧn w6\25+Ŀ7й`W/[|@50aؘZ7T Z“}X'GΐTF_`Kjqgo&a2@7-`]fX?Z!  ^4cx]?=ֵ@!g~Yʚz-ʺuQA77^D rgfM>Y'dD.[x5 oΖ! 1ClY[>ٖӲEQ 423ז'I<ewC>IJ 6>zY9~/Zi?f9{b G_ I,rYk/0Ǻp)Vr0pgEHԞC܆>IcCWe t55`&F "}){kx4ڤ '002x3~-RxèB%p6gB. .iN`lt{Omt]q*r:'izpR'`鼺xT!=kVNk '"lRfHkŒ_>f>F " ڡ 0 j+c[tm EO?Qz $zV`0'"昸>8\=EXe،I+f H彔"U4;_Âk֔1tYl|lZi3ݙȥ x^޿bBl{0܂RBd&q/%#eYq|o7X(5ȥ+d$.ni|I~Q^קR!X-8jGPN%`3_p^*GI㘅G0$,sHkY2"wV4r3ϽP ~* 3}|09V2 jR/Q7m}osgi ZRٲGq5oO_'X\; LvNtV~ŕk`+Da@W!L?c>*ӝDqfj[9-Ӿ`zz~-)ZCݜǵWb3vZ_=7)"3g!I".Λ=S,e7m6K+۱iʷ ݡv ?H6Vz#67#yʱYd-oV4%B 5Pȶhh Ct̴SxxA ywlz T#SkϹCyP#bo0lT< LXDU#M;zy 7U8WMܨ]{AN2C|줬Vn"pހP>q6\y=ap TѾG Hq~٩P]4enr+T%FC_Fں9)i"n*y/6i`x i ,&ɂ裂V!ran,HZPK3򱼤c'W)]j"u=0ۄ<*ߍ"кs2?Y˱ +}CrF1ÈNte56Ý,$-3lzV =-~E X !/q ߘX-"exBqf2hrgX;zR58.kzeMv!pK@ex oprQ4c߳@݈ 0L:HPk 5$+D>:@*ivLs/ޢEC.V yRߒX!KLkE3b橇J}-m^~*CLk y*8t yW`&EOղZ/߳`^q{K*AYPM t0V Wgg0F"+t@Nw(՝@¼'!?U-o%fk={c)c5VGg+Ak!D/N֡l̃a9#M4xI(.k`g8%֒Tx֎C~lPgĞIYۍ,PS4|o p+g |ZOꟘRyK; ё.2MR~+w\Py<zoiSOD 6V>-.{-"L挻fYﶦ:XCe\u6V%pf9"cSO,ѽSU|{|ѲƖcB]VrZTv ;*C PFk0RNXt+d v>sx5k)n%䣟@/V{(ٺ\ ThJ :݈J "Nm3Σ0!_(i\XQ1KڝR]X ~H'wӡ ;DP|EwXw;z'\HrMEȃ ɳ-9tm=h(l,)FCv \(Z-S6& oe]0yO!ȾC_l<){cԌ x*Li |^Ζ|ڈji'H32' f0݅7|z0-Ɣ(>Q7lLZ,]Hd%tņsjw5,6WS*KdxxKs'``IniE_ULR;$7{H'COJt:K5U Q_By౰Mt3i>h - bYc5*%~i{)z ypq&s 䀑c2/fNrґ!lڪ 2 U_3ufAbX'I8+bJs&?ںqbӨc P];a H "tU#+ *=3ۦ@ҕe~C %|!ttqMk-_1f2h1!okhYbK`N  zcSAV5ږM|BAdR65X0j'xcB}ĥY$LRp 8ˢ=k׾~uZ=./8tb_(owC@“&e׍m ўi5^L'LrP㜉qY'j _"zF39oMG`U(sa8m!XN]j'νgj>1MQ !d B(;S/'}'`] !kx&mYqqmC ƚiܔΜɔoLTEUb5"Y~ q1lt|hSs*V +9֮z{A`l2>Z#:IlApѿ<25{PjF{Xk˯OIrn5% d2gyѡ  NNM=xLE5 2H۱-H^gv8_St`4¿1AQHlx_1B j:h ϰ ,:du "<6^Ehq{cHHvв:S-sk>XS`N&]:d6O8/?GGBjz{Ǎk0M ׃S&'hWqHYFO[9w`&"Ե=2$R˙C_\vxp y}$EJi)[dX+k A7lţ 5 X fp݌7&I:n~@fZtT qsaNfa~UlŃxakY U.c~΅|InG\dT9̞Zʤk\"'t'Vќ;Ca;(,kcLhF)4]~,ũ ?>״7^p8U: 8>Ҕ|7==nλOqAD=l~ۃ_r'evbfsyΓ d`L*?Js׫N[VA: z~ z5jNӴc2궐,#4+`(uIB6SE}$%Uk5Meɡ𒳮: Oln{@4~0xj1l,#a @M3 ?m2Td# Z{1@ps%T'x יlLWo%DJ("1ȃ=юg K=M"jqR߰D1EN@dF׸Fb]y2ݺ?r2d,QUrKcA6EJTjc}-&A*7ev]t+hv?FZlV#s>k ١ؿmkSAs ӵ^OY2 K/sCl-.IXZ;' ~ JKqu0#ʘVMy@EP>F=/l8 Ò8/&'agUFx{]ˉAvGYȎ]y y MlU.6WBtŪ#3t&ÆK@h]P?͍، o7̯;r՞_ݧ/=$"gsllನd&H4k]iOCw7yjK3>?Kh72VP~՚Ƥk:B9RWob E'أ-1) R11ׇ` 06ŎU7iZt jMXmƶn܎jR&Rn6`l`ka`#{ZۭXl~D}H ͍11zKQdڳiFj}F16.AʋbEqtQiS86=է]t/?t<)Y|jW/Y{X`rmnqd`Ad^X3DK=-Ӻ2MN'QS);v+0:4C3{y*C՛"@z%%K|x_-I+&L-pAdWDd `#Z4#؁\-CL>;~ _z[5Z$A]e nAxVZOp#.,|鹖|IorJ'ۡosiy/9/cǸg2% KrcānO⵭ z*]_Ω^3(qh^g vjjlhnI<~.e \ngX"-㦊W"Rk]Al2uo'߇ D~w1{|eo]1( G])c_$TY汽}1j 0#Ȇf0ȼgn71!jbk˼NnesT "5dE  H,ɹ;D? ˢb@>*n\:,Fl8LNd fKE\0LԹ2بKsiE@uUl>/̶cLYke?sKoG-<(ٯGYgzs6{Љ.L'`MK G˽|⻏L+ ;T9oVP xJ¦r!),̋hu5=#:"U_nzG%w EQ ,j'Bk>* ټ9P]ƖapOL1ugF^~ͦ `s*u 껈KLꇌi4ڡs@lvEnT-?f{}uhjCJU>! pyE_,X4T`L YmG ·-@Hvt;/sMDt<14ÎmIUu2yO\ާ!Yszo;3M! r)D.w+}/R_VFBNvJ4GT+*cm7G /  :F"jPsN%0oe,*,W(3 9aý<zĺ 9\cO%W1Y-ʼLDBU8Z1Xz KqRVGMa.PbEŸɮcÿmP8&=ުP;+=#Nk; vYkjryJ- Hp\2qMB^@QSqnq^Wa@K)6ai>^†pVo $=A$)dCISuo7>Չe.1m9iE_f{+vY3|^2poI4!MH;6+ G)%^xU 鵫J<.m[)`!\̭,Zjmܩ?V:9t GXkbH1e}%+ʫ:w#.,+'DvrI2i|Ťxݧ'%/S7Q#گָ32H@ h/=-\polWe. Bf[vn[Ϟ||t'u G0CwO壓*:lbMhgmg @ԗ)M.#J8=OF΍{ov.ؤxE;)'-e^  n;d:R :BR0I0i>aGZhȪ:}ӷ/N$i8j 6b2(RU;Y|DA"=Ώ9VCfjLSR G l#x ?Q/b0ލu\&QAͪI[0d:t8V8k,&ΥQ7\*$.&;xyxbtIŒUZHqtREL@ѵ`3.-ϗ8zln9&%񰗢q>y}`[ڎL %SKFφI3 kg&;N?+3NZq  & '$8O]U_NB Z:|E}6k3rNGC^s-&p2vNRXDjmVc`/ KInPVc}HDɸ 3{l6:~DIml]W׺k/D;SR˙TշQ5`܋jkNڑsJ pT]-cupai K;R!Llݥ?m3vE@!(0H$C940@{p z2 XIWMN{=K\{!DE^gɆӍgـmZVVѯYqⷐfA#+Bim#="Lb̳?_ژO|NF<1vAlj 2/+qa^9] (1| @:6:&i#2[E(6JX~NJPja|?6XCS.yف޷N*R/)ܼkXί E uZL.H7#?=4&4Wx~aRG2\ -v<} M*ʆi,"h>|~٘jغ%,BXk2xUշ 6DAX~Wכe5 w>6oTs|tŮ|$ e ږN CG.^*@W!L:%-[#}a3>t6K}EuhT@J129n-cPB}0zˊҬDGoj #XVZA J%0Y7(7 ^'H@qk"ᯟi;H=wFuE.KSwa"ݢKްM1ۡzF!U [f,~ *xXANIq lC낿ŖR»72Ec-8£ťr F >blcf6 `>Xq>ȠL;4g@(H'>e.rdy~9!rZ[ tQ;Ҍa*:v $X&d+PȜ2[,cDzlx8vGHvp^k(frƏ7fP9L%jlLEP I< S1 Jݝ RDlnWni3{od/f.ΰ%Z&-ꐗI7{؜O4aSDJfR@ Rb|1UԂ8mRV#8GT΋5kH#`Kk=vQc!60j3D~,[TfC4 ҨVJADzIxrqSSL}JM}\OVwJV v;E?z{ۤxd1KK:2d$~RwyK d6:iu!^n/O`cH_u~-^ܢlvqO*aQ˕l p.=i.G*t*`}r!0Ё ޽T]s6WʞO2NCyHpkzKyY(FWmq~ R.a+'í}RfN}!>{?~eL(i3jTR `vӠփ4v<ӭmT\zbjg( lR:\t(&)c z";:Z5AТ$e1nGRrSϚvBߞH>#3xo'(y5ϩ~-@U.Jil;bkK*BnW灿0Jڨ?L 1?6緮0 ўѺf7Kn.k)G@b(R^IrkCɻ+?+MEc-Z<jZ'f| 4Sؼ,>Kv|KYK$:1Kj&_V:N*@v˰; s=-7I4QM*k)M?֤^~Hl0Q$4#BN]y^ xa[h(4˲:4q820oi?q &ȨOˍyXm걭r t.Z'yk0 ($dr*=72#fk@Q.3:j trJE^84 vKw}ly@lɆfC&i&q>BDo#br?a:4i8"w^ӘazRa|mM E맄is`Ģ hTDMNdwq5849Y^F*Z8#Bt7 A+wq; ]W ENΩ;x\w #0_ r 0Ϯr+B  5xfuF791id׬+)o"+zv} $9iPdh+ +⣑D[*}f {z>xCO{s_ :.`"(4FnM < $%ltE#qSl}rӛ+̜5|kP"[^mCBrhZOf 6wS+xւ"'OCcxÀM5;%k ~bpH<fh69Is@|V*XZ>^먅Dr~9 ri2PJJC]gcHS;Xܽ^aF?E3Ԟk-VZ'1Hw|;^c"Ub 7v[c YqRtuVJv[H$*Q溷tmswhy3t!jLb\o&[+dI㏄)-5jor}RUcc GZtUˁpL!яZ$7p]v;# %hZ&uO4x=~Rcxt%u].?lk^_΀Ԭ2m@9/a:[i@u5& R(  Vd;+S[=^b?PNg̰x4nK<ƂIJW{pcH`Cpȁd'ρwଓsΡU'8M"w{c1=Ja5ad1I'kn{_뼄XcL'y,PtO<Fۊ5^Tan1a :YWsn*&5ǚ|Pd8y??ȳsY6Kc}@$.NpybQ`K۱ۈiϤ7PatLDY woxF?)ƔóXtUӈz5Ь9 k#65 ;=$FqZEeMFW6,l52|X9SmrW;\!Yգ1F!}e,܁DDhd5R9YbU/|t=Uȑo [&v6Jy|{l'?頬]GF>wč%A 1qdN"MS\Jӟ4$JynW}٤csH#"i/m<%͆GQΜ@q )%nrr x FΑӤMH3A:ơ:BsH磴f|Ph07Nv17 W.O(1W(ù ƫec`Cm)~z'ǹUª42<0a#E|~c)U$uUCkcCt_MI4!Q4"09SC `# ^F ˊ&ȹUHTut]u/ʋ4ΔD(i઺}J"g*V6b- @͵eéJ6Ru|9 Y9?.w)`{ؽ(wnK@@N0,kÙ|~&LM-keI)]@S)d+ZDZ^"agŝ=n-Zœ Δy f?raumj-? bbEj%Fש 7û^M).h0p sSIӕpq![|z1Nӄ$CI?B̔|*969)B!Q Zҳȅ n~ޥ!DL#͟`iʡWk|3dphTfwp:2,UKxmGA?6}VP?6է&,Xta(t#j<|V}ZܾO![JFG]3aaK3tVQcI2ۘs3UtNE=&`0[$l`z{OI[-`K3)r рExC&R7F-4 5j"E{M M]ö^\6a zSOɹ<XAo?M(w"wI" #Bޥx"(Tsw=e#f%+jsHzK7@L5>tҏ4*?zGnHߌe<R{M =F+<ZW0 _zDugHxMn)ݓi*m^i lz>'RdL{ F'V9ɕ[ my ls)}8cj6*v?:\ b!v#֝f(焻x R99 @EX_řm?̷+ /e:WsV|+twDѡk/7.(-&{ۤP 7ӓ4=Lw"t]!c>| ADh!]!Lo8ڸU3 -q )nK6,B8 *VKQ7Bl1FzyD0{c4r EvnZY,s`w̡[h\SN& 2>$!ZLȐ8/\W>v2G=sv +hFd0GFZ;O1J0skm}2դOG:-Nƅv}4PD٨64nL_4wMd7d#螧 +^wjWf!]1E'U$tvý}%.5JC .G,F>LUjTۛ/Doa34-m 1G)213Vi$e%1㋿4`:;M}*πz0Ȁ4NxS돕υ Yc+V m"~Fo*&2 {?W^ )Y&IR4GZ,4Y &^hz|n wj a52 WH; 6'ö`k$wc>Ap\E  V^go r$.Rvr6|~jnIwV'Z J"7"~ asF!-w=mJeؓT7s"Ɉ$4^[$v̈0ޠi',7掮#,Ê Y|7~8_)EN%27XɝTi&V5S|e G+qD|{8t}Ŵ-8 X=2l{/hѨ仆Q1L~Sni1 2WpC99IGǰ/&c@гkya=Iu"& ܠTr= m r&:-dha LMj~RH]bWwIcW}؍uJ 1A5 # ߢjAq. ȵ2>F i!|NzM$^j=R>OQ?G =DDz9]Q *7<Թ$[ _f-"ڴ%KhQxLZ]%(q;TRf`ʐWg<Y  h d%HdzODоk|eUR3^[h]ܭܱ4p?,8bk#ym3()jF%(#5$1R*lkLK]Fαpu>0SxUlEh6_P$031SX}'|n ȘZ;ז٢{ .&wڪ26Z1ֿD~ލc/wtһ.:Q{ gTI-grž/Wh#dK3O nSJ`(tMSgQZ!/#$I.gg"umkL!a+֩b YdGU|*Pt{fvmsuF75ޅ }S)Ap\  81k˧O]T==cj 2KS[ʁ3eO伜2SHgޯ{uO\% Vtu+.HeuzŴjL_dzT~ZDB{\6n/t1dPq´RO4%3߯b#©+݊|[j 92uEiH=6ѐլ}PIiY τx՘sΖO9NZZze'p#p~U3B‡1lL+%% f1dϧ 'o&V}kJI2nb6ǛDτ ;шQܤ(P]\WrǢ:$ϠSUSGO{* {آumtoB4,XPLzeCBӎ’ߣ׊Lm"Q{JPGb 74>Mg}8(ɵ݇/ik}ڌM,4gL}f->3HC$ A;iCEI|kt Qn+w"ds$4k:/bs+ ~yҵ7.pg lq!FD/sZtR:p9lȬެI/@Go2(x_":MjE4 7[Vcv' '[m+,|glE!*K7Iqb$&7l'1%\3(~nׁ'?|oShTzJkԡS&UK>'~*d@@3qnDL:]x/1q .#^^05G}AL#TZ^:p0nH$IUX >C2X:Y$C6?ϧ=z V6u!F|duiR?=ıKBA,7a8HQVܗpWa ؟d>ю xģ]]=\Ql_dSU)a&/r~̵RƔu`E p)0B2›pЋo8"W; |dfvMԬrԁq匐zVʊnI5 虛!k`%0R fzӥ1_MyՕܰODkhm;AtI$|AfG=J\Vn^qC΅@ } ȹh%;yyBrBIXV-_`J-?rU`5(n:r,C ޯx l"ҸJzxLC-|2&PhY_K@,XtEζBH+UJ<vRtZ݋LfiXj)1JNJ@9t}, N_H Ш`Us tZ`Ugw?6DqQzX*) G8w OP@LY!C`ˢ  "CL{2!fn{8HG@ه 'z2SEs)Z|ߔļ+[7 FċP=u!l+7o h~? $@ӝv(-NˉT@6P'/@RCD]Qo"R@鍌%8c$<`K&Sr7Pw,Z ҂U.w8ݪhԌҢ8ٳii2VJ#zEM|sMR;GẌ́BƝM>߀e+[c>g { (MO RդKiB z!^%/rz"M5B)D~cwer-6zSmpINo׊8=j)rvx6)ޝtCD?@@Mf`b^,]G)g彔L7:8W?k{q3¥Iol0'J빏\-/oN>uFy‘_?iFn˰V +v[/bzkiۥdW Y_Mc:hJ3h.1^~e9T`3n1dm01Hzp#kΡld,u8R,g7WL) ~k}X(2Q3~+@ 0NvMk}P(VG$Pm ris2}? L|1 .?s(O~ Iz<$3Ge!s$yE4{p"&^m#x? 3B5SREm =Cўg |Js3ΌO>cnjJ0oJX߬U뀳xNWfq/FPj)}h4\o~yb6nUlmwP$$}6&̿a~]<&D,Z#dsFmE~cY^H4G!se:۩FIu[`B@SA<%c#F^z\;|(!FrAk^R7ٞb4ci<| ρD%>y2^jBdFvgkddelZ1そ.>u+_,CX̛V'#*^в@ʺ|cO>EhuUs`Zgzw2R-dkֱB!w#`wyl>w *=E%%D'zz256˒s:ŃK.Zif…va*Ne0a &,Sjsqsz^-!Y0\gĢ.ӭCcisQk70W9.¡IGjm4͹?By3/+ %If`Y uXm;hw,k2`#}}07ʥ2XB,n8 ,K<($φ"E.,>YjXC*mpDح ,g|} Pj瞭$)>n#r`dϐ?`:Nt׻So~}+sD,HB&ʕW .=(kmL[8tf> / %!^ܥ:& chaW]nFkpw41WFpEK_X\;}ZfFex@[˚ЂYNlfuoǼ^޵jUyᯁw682d&52C4 vT"8*iEN{9+Z)]2w%k,B>ӰZ GaJ5Pn(7a-c_3(\Ͱor3w_n%DiMhƉ+6aF b{}Pε# ui1ISͭXMy .9(#|=5\F{BM ~ECj $ji&$O ˎ\Q`3#L%K$j&-׷u)˹ coN^_mAE,A~g'B-hIkV2De Bfn5ƀd/n[68?/~S`xt"A!/5f[o%x0*p0AYGLXyIΜ[Ywcj&EEJ+zHw+ aFVl]|$sTZޫ\lF_#p98K۹\Xuu()`Z^z.t92r?J,֍q+7Oպ.ʳ&|3:a,d+t @ k#6%ZKHbdzm9Xyz!}èϒsh%j^3x=ĽcSAO$)żz#pI%@(GuJ_i F4EnT D 3Q*oJY4?%C $uhoDi~J^0uoy~SogXBS nۓ|dy[/8/@0?JA\m:ǬgWز?sh# Nf;AN_H,m1H#3SVDGPM] C[kz"2\Me3d@ AT #m:EcZ^aˈܻ< 4<޻v34PAn2p`c,e28vƫy,rOhd'S7&nI*,jB-{m:Csz0%ҩqCn97a{FH*bm֕- ̮C^b4;~ArDSdH~)x8L^iI~$"Ǎ\ D_3 $XkZ嘾Vҙ)?,UZP\m\*UT9p'yAJ,RseʯݓseJ1ΫVZF]OM֔Qp7~i]f؏wPD/{1YO]&oP Yh6|b qG,u̫Lȧg[G(!xyU0"%ϻ-0+oH+9 Vt46d {J8HH7S1w?v$I0ocQo>W[HEod Ϧ>hXKacUEPm{%{䚫m- 4P`(2r2m? 'Jm`y+ms a1]௣3qOz z޻iϒ{fmhHS|Xi9; hϷWN^"c3DJ8{R YtYT 7d;p0Wfs!#Xq"o$v-V30 1>DMٖfy2OPqDI{%3}Qa,^Ta|ӟU2rMub۹J(z;oe1?Bs㮜dm3fIƢI4yY+ U.VgKey!5?O?MPwX?^hM ˪M`vSC;RlRbZ%k默F^werilT@v;uF^_#7FkWl2ҠR]YEG2OMP! <p6sM? z?Yrs}) ğ mڎL ζѼUV!k} 5NqZd'& :^M 0Esa ]csFrzmlanE.h=l-D!l:E>i _:Rq!_2}7$ v-zTBݹ1P2*ccT} =ys&Tʓ]ľ^!CnB:k䀢{`\@J/0i ]!)Hz/T-!Ne__S?M\L+v4AvhX~)s0dڢB=ZBO3/HyU hNnTQd-!SX $tK<~t+nze7ID"< GBj[⃓sbݝ,{xbс/f'Eߜ!tvYv[x>Hy-K&; 'o1od@(A 鵣T3b)qK5K6<wQ+."4a0]<9 J`w`Of"i\& g|N)H_!QUhꦹb_୨a~ڏiV{ W:LE85iL;VuFpLSvA,y|ӑ ZOGNNqo>MK Fjngl½̾锢o.PjSp} 7QMA\a<ϳ}ʹ!1!Nu,?5 l}9S2'V6-ӑ" gt3TIYBn͂֨+Z8],guLh0}#"G!U~ I QyhAi*Kظ@EJ(H$KfXjMb=dk=9->WosJxu HwPSBOeysN&AklMQԃmzӘNLV7칝G\فĊ\;|9Kmb7 RZVuG.>\cݺ8bL~#9`=&;9cwvӼK<5Ckhr/#WY*m!׍]\7-> qMH{ÆU.pgf0¨ w2x1?5fk:&}a4݌ g *:A`Eo)n9skD`=Wj}s찇.ANȸqI=l>*.y:(~eX࣮ޒRP:U\ 唕 2Yg<%]o_pVI2I _X+kݯT-yjGTd[;@w;I7W+NG:ji^fĊE(^}%Hh}4oZ+378fmJ\{ح@#L#rg.EU~P ϖJ0qejYG fɾ@+Uʝ Wu낝jԊ@+D{KY^E$^~&fJ ^`a@[ݣ΍F;* : Omd}Xw;#b |>6qKNvw͍~>a<guiI,U5"?alE-k"FT/x\4FG>,S'?osY2E&PwD@Z۴] 8F3Q[{5®/"4i? wVYߜQ0o^NYYXg]hHwum&֣ot !ر?,no(}A,+ǹpT@L}4AI2f l< 5vڠA5Z:P+atPW̓mHR~cWQ .u\KcdnlgܿZUg E,GiN;9FTc4)(LDkhqt?%$ay"|OLn"ybr6E4$^N!e (= Wh& s)t%q5ܳfcq?}%ov)zm~]k82b̧LL6zQET.:(>R>쭮1-ܘ{#oR3`TJr.e$V0g.o6$ <yCz,M9PٳF7+`y9Obe<ԡ}[;UՕP0c<4óWDF5 Ue: 9k}ӜQBEl9+;X`E3J) sKJ^T#Dhyu WyMZ@G FIJ9YpcAZjo "Sju\ !| ŷ^E$2 |F`Ev!w^2[Lةb=}ۓ^{a~S|pSkkk1ɦrԋildJW.\=,ߏF &zB+LP-W4fB`X!oOZ@M{c#㳖ވW5!ә6ۑn"?+3AݟiJ8|[ݰeޣp~Ɩnݹޏ%*]%@G,M;p30|0?#1;S}A3[!-x.zMW#sC5?F^eXI. Mi=w,"w/6 dL̀n|Y"k JY\!S_%:>ɻFXxDVL$=A_PHsk6kg582UPw9]X!*" Kqһ&uD_ڽ}! o:J%Ⱦ,Wn(<凩6Lu 8;{[PNImQS~R6p?/r|E*UP|re_L":5xklv* i'c NY,'nE=HƟL>BzbҨrePE˫Kpa5)4-dW|w 龽rR>y6g?2-g:0@5O|WYgiuo QI]+)UZiJ3&k>J)>j؆R+(RuRj_:E'iȇb`ŭ-YR9aS!F_{ΡnFM:5 nҽl]%#:X Ẉ2 @4dykj5r1p ;C!M'A-v#<{)8E8zqC Ip%zo3+/EeKe \b%VqOQNT&KN#ݙ7No6=9j{ S8rkyG\uxOe83Z獖X-nq3t*@X②"Tn v*;Tn T-C'"`07>au0Oy-pd22jԮNZAbIsrGb֓I#.UZͨ 쬝G.;rxPIC-TCtcK1 Gn;ƼĒ^FTFZ[L1vasF:IY]$ PW{. ȾxN"!IJԭQӧnzqgCJ>c eiNq+ Vjx( 5Dž‹:] i9qs,u Pgש`{E0${FU[WZF!`i/EYUTSf "&ף>Ej»8g66I i#{+>̣;c #| kE;`o yKD\n%_kx>/: / ÿtDY jW϶̏qN6ZR FÅ*'UH@@dA?GKL|(l;qz`hSM+ѯS1S `lp{G>*/wG`;V T"Xge&7̸'3n@@qY&1[zNOAO 4(ncϮyWia`¦/̀a^,,Be`7L:RO`H|2Jqo8թ"VSǒ%5B1e/yfzT:ϤK [+ ?JpՋKg!݃ xOC*ϻ$clк MUS2APʆ:ׇ4yaH!y1k}|.6! {n $Iٞf7U[ԎV {JN <iQAHeM#T q'+\m?us_ivGmч3Zx2Qba|5ԟ((QJHjGYtCօIDiS/Eo/īC âynv.C$KYy.ܪs:ЩZrT#Pd tH 8sMMM?W+P~Xkbȇ˴q=-xs, bᣰWLmåB1>4e[vIVd,)t@G~/cdY&fqv -< 0׿d1I7|-?ԕgЬ~PU̷E{s#>shdtpFQ\(UuveD']!Qe^XhId ASw%F1_5|g=5zwߗ>9_v[g#Ph'cJ~Fi+c]<ٗ_qf!k-n>;7 H'dWQhqx"\2fOE A}ZLW>rCF 1`fX\I>j 7Gx.Hɷψ +>\f7G"#3Fj]m`]r0"_n JƀYtӲ 7^k3<?z$4Y} N/aP1O7u%H2r(L!`7vyM7f@]<㈋ D&QH  v+V@Biw1.-4CSd.H @%R.1HPm$[)ƝW ?P)~٩~f %Tە!N#@\̟?P3̾*>Y摓Cbϴǘe,G+̍*AgL,WIkRDdXPK K-e.<>: QҸIײ z&ZhWM~p Gq]lY^GäyLtQW@:ls|<(<9|N1_4rt8l9}W^kj`AU#& Ni`׺-j \ 1uQ=gs>/Dz!K9P{TI9150bcY|QHdW J:&+b#4@  ̙;1OStB>g}%}V FJE$T_`v"_)L9lH^d½V3T,;idNh~Q1K}Rp>9O &ZA4C*ɥڱJ!}gn܊ e* maYG qV+8-"͸l",/( {oUcǐ I©`a^1&Ϟ{o@)O-,8j-KlP!Glr>S"fyj/DșOFi`ULo_$H;! “l"%JGh[`_A'|` % 1G)s5 Tx!mm}8iMm+=SI:af4Xbp;y 0Iԋ* L 1P@KG$e'v#U<WrQq|_/8^aD`2L` 8C`\+;""R 7(2!hy'EBK4Ž\1R-`-ǻ޻F3<3يxlr@݀ )^"#zAթ"n!Zr_Yƺmy 7.jXB+vqCɤ/y~% d=Tlko^ \ %WX[cY,ܷ# nvI | B떑ߗa쁓ۃ{ R{&"xΒP*ǔiTcQ-t$gF!7UӁ:N*؀ȂeQDlb@[% BV}$T@$=j?WKӼѤnOw!FuY?F;-/Fx9IA1|™l 3~g|qƠoA<&z&^;thX40UmvNJDy_ ?'<2$#  [͊A)-+FH4Z6: YfPVdP bjdi`]qٵ*r94q1ˇ%hOwiz[{aNa'EM;c\{m]^ސbԯT.)}'YQ𕲜煼f+ 1HP|7{Pu±Km _H2Ukat_@OϟFa)̡ڨ* lFnPC_!X()mV˱=/~; )ݤHpӔ Ρm}|$ k {bk*pޏv.@20_P\ :jnm# ~WV qؿM#5slg ]8|]C ix?T0nĦ7FlI1R| zDz|w3Bշ޵Y[zqXѸr_K]ok-ޱMxmGs8`br۸}YK`"P|D{>&9ji(0K$-fhg%|xW-*Nb nYhFC"!*h[0M~G{x4[ `RHYԆnܸ![gZZdklWK$Y}aQ\nU|.>YlRO9w,\cSYP q4UZ"-m6;EL+2'=8%#0 +C%=`g-{ىOZl$X[5wy_$,d<_=%cGB;Pw؇d{5'4\+S-;QTЃ!Z$b<֍,KyY(wP6&zA;!| gY)vpNH-E۷Qe0ro[`N9U\\(+Q`9,8!Pg?E>:x7q7Pn=̂ủst!=2L^E4A&>z$pJN$=@>e~zpf#ȫX\l^!`pق*1gџ১;6؜lkEŽ7ok`456]N>|uJ(7os+h4*#P;jax_ԋWBP7 &X\A{clejUީ V1ic@NU`{RN_WVMş'5c,mLKّeI}z6R oOPLCSS p)ٖul쩮#tȎ$A6dşagD10)<;5=Wf)e4<6v)hӻ1f|X_W,D٬R2 Oj/SE?aUm)ˏCm'o%948@ʎM$ XH|@ƒ<K9g9exrj3#\G~U!}}ʡ1| -t>voE38iüuh?ӈ4FxXGq8{g"^-{jdt4tQ 7w)QQ~}g*Ҭ(^ћ(JιiknMjVBTaz3)4o[A>4'Yh{r47 34Zȧa1`5&6V_c*8jְOEG,Uf4,8n gCO5CK5iiM~+}:-h6ϐ>_<㔯sBU4y?w"Y#TSe#hMw6߬d*;7*_DX5ūYm&QCJĊ Tx\L߉KekEC؟8G ZRU :b-31IZS݄Fr!eof,N]½Y&ffFz.j/(,SSCT'1f'brU] hX--/6p:Y0WvN^rK"{|f0gR zg|+@qܔ}76*iꢦڃC&NP8@Vku%kuwס Rكz[Ԅ?Rq,Yggյ\}|71p>7'vżVM~1w`.v9aÐ_ 5P)nk' 0:Gӥ|)pV3w&\(ja9h7UsyUQ"h g({ꎁc~x_=pD1(scBMYQbi[[=!Xz\ g?D}Kə)4$eA:ltᜱT:V[ QT7*4X[TyVy\TiA?>͏AaʳsƿpR}tt@F|S q _DM==:XY0 $#*Nİfi밈ܧSӽq+qU+8õ G$cKO e[!ڲcȨT2aZ2jA;?^⮙µJAQ2HRǹ;1B+ C ɓ^tj)gj:ce$kxb0jiҿmLL1j~5 OhЩ>$3vv^z8|݀tqcoz;"~MR`t;#z@19Y(܂p+qR4xL;HgkѺ/p%bCE'w`,;է*g @*N-8Dцtkfi[X(v Exn{]@Bg?r=(jʏ:S6luh)eI&t){@ ~N}oLZ‘Կ p^a7hr{h7e7~n“fh,aU$ Jf (nceuypd$~d np(X&1 5|H0P"?)ԕgqJƳCt.J6o_}XT/Yt^r|8YvZw(v>o12 `h}W/U_ilL0&5RuUGm:Aj-AN5׈(MQ 8RJR{ރ%fߑo)#ɀK[M~y8jјٙEjB0ҝ'7DÝ$55cXt*1goMb+٭/6E "?2%{N:)=4$u;q ϰ [ÔʹT҉Gjj?zc`!t鼉Q2)HH<[dđ~}xocnK_KP!p{OM4-<RF6rwU4r-L§,oZg'L'OaeQ9:Ċ`Jk|A WwMjT_ D괷TXB<5$\9./[(b;D/eIJ8? t͎jE-euLjOcOom a>?0 qb3_·t/uf pwo7oxx/P1@vY-H3UF[uLsA+J$A{1m/F>EiKXW-a" !ĉ+ME錎˓bЯ7| 6/WV?_adIDx Ow|7h#IX"zvCu0=0sM[|k%[^ lt~i ,`ഘPzڈRpzVo) /OVЬ3ۂSb[0C}L+ '"ӠgyЈQS4rC9-]#gKeDk!yx ҉- Md!5Nȝ*ݍ\}|V3(/W% ܵ웥3=6@8e(HV;+ɖO!iW', RD҈:0iӛn81bu[uK;ͮdFݩ U~1xaևNp)tO,:ޟy#̅~􅅜%gW40t3prO$rv$ ±uqO{/ 7 Nw"QmX!ѩtb$b1[7ƞ7&ӧpx):e ~|sܬ wˑ?>gߨ]iq7̅۾:h3ld$CRwy>u#ۥه$8v^L5n-[M^%/@a1bT79 as!~ RƆ/xnZ}oVs" FY>9Z4t*!šg|qD ց,nկ{d86Utє"[6A92SS6i.Yn]Vq/d+\IKƑ]Oɉ`T Y{20Ph6/}LgX jgqILgFBQ+tjny+x5𝦚RF׊t%иr/`6m %sYH}o# .d@7?,'HYgvsX_Xg H3+9!FiJoȭ (m`>״XG^lp`ĀLr۶]?T%J_'dƘm{5rpCn[_ЭOB%g:k?U/YeZڲnծG aǯ7&+EqC9|{x Hň:n ϵ0`%Η~d/1qVPxvtl(|B2DBPiTU3nWx&.|-g@MSҭrsxdH^Zk*\5hrÒ ?o&oV쥺ߖc^ Y<Ϻ yEPC#_K)+u:wS} T>vZy7<{k@Ru{q0HYcDWƯL˜cG\-ce5?SrW7,ڐC9TeZʘ4֗A^EXHÊq O$nIԂnYiTAC^{h`hQ=ű(#y Dᘦ:&NvĨ][Ȥ0*^s/b:2W̟V3.Xk%q$ 2!LWLb|^̊?4_RjnWAMHt>mHSZx^jBg=t!Cpo`aE 7pzK êhQLfmkS(Sd%G@α=JFxE.,2ޟlu܈L]uruH20biH829(](o tCSer /;)(~*8Ka?}3d 4d7 f@F㥮_Uul,YXty%zXvQ8C#A7֠ڕ64t*Dfj/Eh3E 8yW\*V9{heH$B2l.wH"y[<XI]VR5W!(3c52ԏ6@6xILiG|06IF-|j, oKR#y/\!Z~IKS̲C<K~]Jf{:pޭϰٕU~뛇_`9Ј3LTl:fTnˎ*.rBx$mED=d,8;iSo15 k8yp %Ql_|ۃ]ތ-74*iFy;n VCbpl>U} `}ꢄqY;F5/p|ܯ츦7b3{%c9Ģ<:X86/JMHZID*xSF-eڊqx~o?)OOjdM<(,/]<6iЪUİe^t4"O@]pYf_+bw̿8`1$ ⬑hu:5 ItCqGdjݻ.[)4Y?p/ Rԃވ*}bKyAXaw6^4iMBw񁳇3g(EXUeK}x#ߴ)YkQ!#6M3)ܟR1kxx58s>vI-yJ6a~|~%I=?Qx) M(D B_ F|%!=TJpL#xOr1 rVv茅>Da~2ؕ3Ɖwt7C >bAZ؃V~)+ގ4ؚ15URLf֑P;;^L[%r_ GNzM0B(`mЊYQgO\k< |Ἃd\™3#@w e51A'7 9=S%@Q|wCwUA/ӐNsf$y/@GSGQT (/rz $ضeDaxW"8HY4>yz[ZOv; &\늢( 7·1g2+ ڢb=$L <2f D[eLWxY zv-,o-B!TK/{LԽbaE142"yH)tH͎EME<\)f=oY z9X# 6Paxf':Ys#r gVxz@7|RsgAZey|bok`nYS#SAI^8JV0h7^ULw>wiJ ij=*.YTe; O,~لujyKc7o !\wclŤG.;*POO=`˂4V$e#{p]Qrs Tl%U ȡ׊V3뱿vH#jX^oؤeSX %Jk}jP`WAfi:I՞̄*pdK̠)q 2X5-]G#05MBGUfCj^H]ӎN5ЦuC=u,kO UJRV4E{0<Ԇ{JDGQn9,~Ց̋ڷTwE?dՒ W@&AR׆̐bY`;KVK:l FrP,Tk [LP,SD˻E@\>Y.E /MW"GjT#Yrd$ca˄fwiv>!}#Xo|mL'oI?ɎGǔwоDL"Q GDXT4nl~k@y*ϢOx))M[&L8tHZ?.#p@ktm>ay3'IBx[:6٥Cf*6IZ2Ϫu(&JwSF7MW'`0 Lw̓Bw3 "x)aDdsQtKGFƽO#Ehiy}/P(x+iDR'`D^m}LMA` :,B|Bӡȹ7$N 8åjV+#AQG!̋`0.+Vwt@x4`&#DH` R?D"9y'GA1l3e5z pKY~wӍ}rjYС|KuvXP{tw Vjh9f| ͕@e&BCsjV%şw0g=5#F Hp u'ʁAWj% gzU+yMk3N!Rn'̞bCLd .?ZSJ81ВM&d!,KW]Td҃~BS<Ƚ^m#;kٍG1sR dkH85X>m!m_]ߓĚVZ$-Q/x.d=!NӘIjY)X@ ^[h&MAaq’=_9ߢXw6=Upj{|Lcxɱ/vF#2Ô;ۅH{N]+6%;6z*s`k,گdݸ`ᐭb!D@c"@xK|.9[VoPy} 3Ko{Fh?\ of;%aa埲[{ <LܽA9}\O|NX8IOҢ#nCEt( =@wxfЊ=Ɩ 6+kK[8CvAc](\\g!O .\q ܿ0힘==YrZLx@.2WdYʬ,į;3yoℼ%8ߢCkXY>Pm Dɘ-cR  s;O/IE%c`l]&t˓Ooaw U:I=kZ#"ABsQOkۑr@ A-Eib!9cI򌵍ݗ;MjQ{wnx@PFrIu'Zh 'Z!$ [wG!I*g.?$ZHjrMOy3č!䒀ؠS./..~y<Ԍ .:-ݺߺX$:=BJ 6Q9 )&DQQ}{v՞W\x@}P=b/GGJlҙwMr3r7nCWtOo+U>0&9 h8KB@!]<:Iuc%!n>ZmO>w{r Kqi3/N(# UX:3?V:wHj,DQF(pyǼ}~ 2KTSg_yysczC hY2D~UY-|`-[Dم3]P'$r}VQ߱ΐNmc5$hվ2~+W&|س]N=#M{gIG0hQ<y-A eb%ŷV;S%b~1  ,ہmNy]7ʄ?R[]l^ 2s ~}jMzCIèԑңu5X1k<6ex t Y+_W־;o"Z&Y;7I$Ji*ۆnmIQxMX:ψ^ZIh߅4`s,NSfEp.ġ0XgB|Q-T _~E|]#P&ˡ#ǹrL8ߐ0 AAnZ wP;^sahpq O;H4_dQ4{[ɽO1ZJ Vbk G [ e<"lBֲ7H1I[OCUYݪU1S(tݖ~n`G(<5pR#ĉd…ˮd/\6ϼIϧN.=x]NNɞe_1N~-} y'eZH;h@YwP_JG-QZeAtuAJWaM \:S!LjD:!N,7vPJ?6M{W99DB12ݭ6!ՙ6IR>+ XTsy`櫷\x(Y6j ߻+agV\4 |d(Δ?\q08, =u,|p%!eY 05}jPoاu:M82NJws0sE td?AkǞ+5iEն>$q 084"Fܓ9^\i,ϢߨbA%VFSC:2-FF6GJQVVfȉuV5B5 2ե+HZ~']U􈌨cKzs ~5J.|3l7ι@xgyQZ 5]f$ec!9oKe0Ri$ͯ9)1Oo`xCm9sߜu@{xkʵ5h+ЃZB 5G B/m:OՊcOX$ahߧS/~vuӴa@V4n}g߳<Οz2)#usFMO֕E';zR0 ) 2 &y%t$)V̲(:dl?fAN0ۉ -P\SPR`6|3Ȱt"mF!X㤯"@{NKY F~~"׵{َ 6 n}q-D~a[ŝ$pܤv;J׳vbH':[1pg7(x#dX)>$@dkYQ7~Etd~\*+W yru-^rR3"$|/;F{7!)Htfy0`zpvo}e-Z`:($XN_:]$h</3恲@,<reEYs3FZ§2wb;".Ms)"tA  & $_ncW .c` 5׌䖪SG/h]Z #inMbQWNGa=w&@A[WVPf(lI%ի)y\'V:b-?~.kFls^ry<k0 ."ZfiE tvM,"VVyjp B;(AP |$l LPq(y7~Ѹwʮ+ VVٛNDt<\-T |"m|}Q~ؒ Pn() > )qͩu E96\$S!1FgS;vQ!a=!=R2JC7eƤ {jB_+?HnWH/iLMHoف՜s1ėH<žf_C,uNwQdDNk;XONL$Nk^0"bfk졐f!ۄ@g%-vTnFj5X!RGnBsnfjӣ!pa"p!$Om$MmDLxǯ+|氐netuH_1 c:IYV2j"G5%pq:i|zk?Jeǿn/^e1&KhRaAlX:*e꙳\;hd"Z2E=4V ݄ bM:PZp~7G4{KգƳVELk٥,gmĔy%JBHd GV(헤 C%yp><Hp#M$C 4gHȺ8yMԉi-t)5Eg@n&DIwŚ4WҲ3̛ה'fݷ[4*DS.+鞊xVeK{9\3ѱTϲU:1:2M\gF$" n:KmfLt_f9W`7UU!v NC#1L'UmNtvA% m>tdlZSBX~bbLr#S.#&acʜ@CN7N4vV^d.S9Zz,Na*R:G~!K)#koi+$y#JDj7:nFLҢvݽKI=.e.1^N<utϻDu\d>KN<טT(1凜U2_~|wՎ{RJo{ u4R ֜McX($OK*+#UC\Cr@F̋0ҏM:/5Jpi5P'_PI[ap!!EիL_mk!g=u!>2G@N(L˝#::`2N%݈ѝL9{ [{; F#2KY\E!% !(?o1xJU]=OJaڸ `ġ/#sp!pu&xt/.{* ~LjDZ,f:a$r=W47@R "Ȯ7L%ˑ-h*%.D!=@ۡK8:iݲ2'g`DHu`՛AyGIMzO~X9+o>#aC %`7NUfG7ޯ̳,U ?"PӈNk;@;?8dF QOn+Dc(D˂iUM5J'X@%4VC<#I@R2TuMNF.76!twkV铐yJ{Fn+N%-Z] ԩƎL0*OBRn;.p :߅Dl11fNA-@>˱DW}zFDD,DO"oq صz#L. {aY{a`SOf&׻b:N^B/` TZ ?9v=D8bU^`NU|P+fw7Uͬ ;M\' 7H`sRđ^!+/N121b`6(`aedv)(_27LeZ % *FdF\g?א D,`%ɀ -эB 3"MצD3&$QtIYW趿w,DC>Ib-(GgeZh;!ojIĒ斛ދ,4iD33=,[':ӈQf?32) %!J9]B>B򪣌3POtCp (h\]KqnlЂxTՋn8Q@,ƽC!OքBl%;.%S3C9P 0<MRvnx|[BOʒk.HquƮ@F/4lWݦ޶c[@? =vtAX:"/,͚ zk9P.׃ؤBg:LV1_̘L#p(TJ4-e3kws  tVAFI4/ԸKz>[׎l݇"myQ i,+g,.ҿת\i-mkۏ]g-߉l`ȥ߲٦mB݈A߻.壶[TB{|.0 gQ*]Y㑙RoԵ_Rn5|}jIJ DtkrKt'0p{EG/,9BS%MxTECb*I~>qYAZ, yE~`N eG7 ]Fe& 2NT`x<S"(dە]Ux=m3E\]b,F(NJ~l>ѹ%kXg|]\o-MsRڊKB̞9>ҽS7o\# ¤o23t' YPun4c%[JV,M 2*,#!cX&p 5Z<1xW:Cq{M-smby' z5K47OtuuIs9lJ$ʹMp#Mf9SN-{xƱ&Eʽ#QW'Y[M̏*tvDG 8zz6inl4+kUp $6GSl:4c -AOƊq Qx~SrYynQeWٿjf3-b;G+ڠ4:(2_޹Yw!P d؝50b;pLI ??*}7 Q]>u4:M8QeJcy +: !C@[טPÄY 0$℈0aSŕ=YؓlR4wOŵo* >\IZhLt¬ d͛~LpZiNAw+w8peB099GiMt[w1{_h/! fg05K_iKIDy69BS}$uo)82OԔɏAU5jr[?%ɻ0MK>;(ʕ-+ÙM (W) _4Yk FߺrL  (GPA  y6~eRJP.N|l'1B] ->ҝiK^&w2Ӓ숤ĩrّ# Ѷ: ~7b]{d$n%P@fI:tpqKX7RU4e_F.4YžGGo싇t*IU9R$pxH_W{Te7{BRh1;aـ<5+ e2{ (/z* hax|-͉k~#iEWt t=693C'Qk c3A[{Vk-7(Ex{PA9`d瀖h{#Enw,.|b0ƍE.l{MݾwOP5!r6^_"n4auu K0諀¯ʹ5Lְ}+-;Vo1M5yP3?qU1ޅ=e pu$6/tGߟsGiW iMB2+U)g@^-<`N=,툇MDg,Q#xԫg30]GY~~+a)7L\ 5hxժ9y׭6Ba>48u@B:cGHept j3xӤ_iǬؒKytp/?"5#Qʳg𮉖jH.LF=A&ucy6x!qE\7WM# @ 47[2022O*j %3bRP]0XD2lf+mfr>)jjC^s|ٽUTbV4P?S`Dtyx;٢J+d [<տTͩ #ޯsTUI L joGՎ(nJqꙴߏݪ(͛ڞ@'" 5/fsH\|w~CPwת&7KQ]Zbcll`áyjz%RXavF{xʤ+&2L#3ڄBe/>I0Y"t'mSHSpتY"),Ur؃2b闂gT^+G~ie.frk8a"Xg^"cbmuev+zJv'̇MDcךܸLm!h!ld_mqVe. S[[{ef1sKBY[m۹[h'ۡ֐DPS-zQY!ŤŹ{*&UN= M \Tj\@Lr } $r)=G2ݴf22XSbtHY߄D4iT0rF7{bX[L.Ҵ).ޝp2wLeRC=yp7n-js|4Mi`@/}c%A!] sh~Cx+^-94ҢOpQΝ Qnll(@hZ A;,+{>7;Vih7p_ KRdJd!avԻ[~sl?^D2B`4P;f#h|o%H)FV\vۥD#{5A9 ?v [ ,$eS'o_m@ RG NIH&Zƍ]Fd%5]EDX !_Ok7>@Ȱ#=Im#5i˞B_G" 713/bW 39Jo>=dcy`m *O"z4,B[L2f[mד]@BdhdUmn0&'X #)kK ։߰NI} \7㒰| GAmtҍpvWP;.Cd,ms ]@tX2܀x7YKO^ !W)&ev|Q,KT$:O(jX-(RQA 'ǡgz[4ΗL҄l3X-q{z! V-~"#|]#1Wvl~|oArXWS, *qeBLCA3<>.TL,&OVӋSBΗܮdFK[m,>Dȏahʇdp8eX^h:Y$n-[D:.xShp5Ki 6QwEd2YxeXQ"#*"߃Nn1F :-;x"IGHZ&.3ς2?ƞլɧ_4.ɓlcx #!wk03SIs3-3uGkECy9J :]D"z7olʗ fNͰyD"̺ov\4KMZ6ڐfhk(57h:֘ ƈE3׍pq[v\Cfm.DY؆26:ig29h}o[thWsU;;d$[c>5|+"7#{l 1C쯆\C 2K̸#c*NF}WKBFJ$9odl,k\¬oQttȆDK"M5\f\ڬ2FFԟZFQC`v)혦t>,@b3A$=z&[굪gkpyЫEkuLઆ0nڏD&nxy,틹.~QK&) f6 tqN 1W(=w:!]r^iXbEw4 ϭZIq]$D>ש)ai oP"Gpav {h։sgJ^īJ2zr; $8n$K2a@Gd_L5 C ۲tNcp{%&6R_Ř6KGJQk>v[ ,A_-bHS3Dwi*ơ$:8蝦m9SV:i tJj,T:L 9y"0'ObӻC?D / hw6OJCOo!dm30˒u?!+FY`v#%.D઀L*! _>b&e>={S|KZū[z*I 2:ɘ!;z7s>^͙H&w@|- eiV`:MaRΥp']A1&Xʩǿ s4+iAD6q-İoܾ@d^I}w{t uPS#'sLr;oN8cTBя+X8$aUuT06c>`t |3. =\pE%1ЋKNe~PQ4q6ᙕ6IO, /0fKʅ%!Noߐc OeW33ChN{ά ̎׌V8٭[M &st4un%&v4ĩ&AJ~|OF]Ъ)¼D.L}./и(E6kqr>V~Xkqvw=rk'#Fˁ4op%PLEsaݬ89~6AH^0W;ZkiP|{U . epǷڝ_șT'VO}t͞E:Mȅz  &Uz^? _ &/Lm ū{SO"~:Q.stЦ e+O&P;5FHTmJvx Jv~s=CPE kYr,\Z̑rX4zz969#nm!bSoS@Si} m-FXuv#>_F\Dy,42oVuA".Ia 4fK^u%h*]w AH _ MڿJm߉eh==e*F8w Wz#N-ʹ_Qp;ܾ̖uJxB0؛-]zbp9+ $yId/[ Fz8p4.Y d˟UF&u{vU_T@ج* i]0QQEt`.tçB|KFyD/^hOsQ[?H[*Y)*wEp=:C"\ )+P:1 (l Mg;Lc# zcV ƯO4 $ x4L+vErHv@ӱ-3,`9xh}z+MݴJ(Rl)|2-47\|{UlB2Qf:ϦDjPK^j^4JC2p&KXcFI`qQ"m%_@2%vK(x)W`ТmgYn~g`ɔkFss9AiQ0iNn/SxCOgz0C$_t/:űz.Ց8$&v޶}LUA 4Y6dGZx.q^:PYFa KsWl7CS9HZ 'LXݕ-f lw!Bϫ5%W?%B}1{2w:'zOn#vD|I܄4sv|2m2Kbu84NVڤV Cf;XֳIu7Bu'*5~NBwxLZ[Ʈs5J pZ~+z XyR%$6țNb@$ݓyk/&U$'| w~:,BQ:/ON|6^V4]eT;T㡻.E?K=_<gWFhaMTb$?&8ݐq K:7piVgb9Q^X7keϴqSXUTC"Y`۽cHMGSD噷C(ҷeKs;S<$}?Tj,Gtn}wLt-ߋ ,WZR>kՅ&x@L Q>\֋,aWT]1呂&2^(3%[c0oZych-L^?Sw)|*6ݙU~&nFd67s1wiFB(RI±%fL0i ΋@*j4^Aܔgw׳ޤ7 I^sk <*5} eAJ2'>v׮ yY[>*T|WOApD`u% Z(jIbˋҗb**IT; UnB1sYZc%Y=|?(,讶%!H lߪ]w+Ү*:kX6O noboĻBvdzF#k a+If_mڸOh!~` :'#ڥt:r`K~#.p9/ӵ <:`Van58'H!BcvsۺZ+%C$s[X@sGDݵr$)"ݔMBz,iIaS^Ķ?vDzۥcQO7 =q tUˀBٴW 4ɓPAw&pgfgǃ{ݪ=%. 9X>>va{48/. ,!/7 2>sx1hArWXw#ڂc)Jn#4"u\*8@x$(i}|xkC"$8NVl~x ![ӡFQ:4eM3:)޺xSL/R=3.?%|ۋ+۟o d0ƍbQ5DxaEw{B Xg`L#zK?D@0JZt5ќA>+#X[)\c؇ gL/{@I-T Pۄ;c4ߵs)Jb]bl@wŏzq(Ѝr|sBa sM OUֲgb[ti@gwuߎNEHAOƮL~CLP=иdtnQYn7< ՟e!Aنe{D/чz(u2z4 &;:rZ7I~"5RdIaaYITh4ev}yT81=*0}+8{DF365!'kMֻ0ɸjˈd[ &7 -BWEIitt^]:~)C*lV =hCu[/@X 7d+R6N v.v&,pùGl/^Zlj2xƘ"§XEO~_؟5ej֖y !$WmZbO}I!gGR"93HR1qdg'隇kE@!pxɛ>kHO ~W0א= Y\eKلln1T 6*C :(l+C!,Z@5ψ7}Xϓ%afʱhx2dz-E'GH:p('{saB^HuT pES0|#,* aq Eag]'*X[uJԯrLKϨ^Am &r։T7x>*@o\ya?d3KS\k d ocJs <V]iSN`Ӊƪ;O^Woo7}}WazO?bR{Ջ"TsMx]A0=LfIKiUqUEI@zb_]vȟ\4r ݁cL EBl* 4ҀA Cq!q܊Bd"*)Dk ga}/쒌զGg|z&<AL 15sq½uy>8!s haf?Q<0VDOle3F+2HIx-!դ |֖ :7oifs(7|@@ȃ.1.VUdG;ހ??@hCRv9&V*:N;SLrfr!2L:;QpҵWL,OL{ ʞzOh)qVߊC&ֽ ^SMwzV-ʬ5"!6 [1)aS۱}6I d"{_5w;ٌ qA(@hѴm9u? `x/7^r`>bșA*YS{p:_VB΁/`Unwm6C퍯7Oq ESKQu{%6)$cW0!AjLi $Kec 2V(ՃnY*JJ6:&),_&EVb cfG1Tw0 B*EsŒLf tDZ([+h]njD-6պA]b/ 4C=}&AFq<~iqJs'N] \@Ly3ڛ,/Yl%JWNaJ#mD2aαOظN3Ƴ )wVێ|WT(v{ʤ9@\EK̈~mFU[x;gN,Gkr`68iZi٭”<\/=iڌ,?NN5.@NXSw_aE(?WsDSd=Z\i@6hyuO\D|},py4œvm&w|l#!μRi匉H XصXWI@ߵC!7L/΋w!5[^2[4.fJRFk{X5Ehyz0ُx{=efy&'+&yr D4 cȔ]R8&r`U̦r.6TdOw :8C#~4w9w E pf>{3 ]|rޗnsבּF25CVPhbtS QUЉ6" ԡ xw/aSF78G+K0DWƄl9/zh;mnބ"/.xG䡟UsZLzx8= m{4j 9b~z~`,DZSA/t+?@5w.wN92Y&j h̎ Lܪ[uĿ>[T RtT=eHeG?E̳9ԂxQFy|j`%?4TC -ѫ+jC`76t1M5J\::1w9*u!gۈ\s8< 18^9$HPeLa_~h3ĒHIP(E=LUj/Xڿɇˢ+>I'%yLFGribl8 ދy\n#qm11(UFceSCiUhwZ ~j|V/ġ\l^{ B,H;xr] 1Ph٬Sf80}^360:"+֒G7/o2,D6àE𠊓=#Li2+{2^J?dZc5gcc* &$f0N\edwD ^Jz˂7s>H".|/8.} ;TRR&.jftZje ᷏ Ӷkoqz|`iڮ?:`uӞ78rrU34g@[ ]=0xN}]kesc^H޽w󂣺676&(Իvi 'RN-K]riݒ09QS6@oʿ˭~v2B,Q@ڧ ai?CF)#~@SHJ@׏ܶ@b\0T3q#ELvΌn"B;\ޡs`Y`f&0ʥKʁ@ԑ{}LUh1Vz&+%+M {@\3v/k?!t)Y@SѓGdmww6202o=^W].>g`dӛyδ7Pǟ`؀K-_{2mVc,dL$a o}NH_prh3 q*$=WabK]Q(~$Y)FL5s5g}{^iG)eEɉwjXڊhr]E,'f9OKӋ,;j`Ê^H\f'ӈU}X}'S\bC*kxlVS4|YQήPq/0JxeauǞ%P1^1;E𮿒mh|d+2 Uɹ1U_i>Fc(\ F!fKU1IZi"H n*zwkfd|L3$9"LvGAPܢ&+8_v-e@ ߖs)lI4 . k1>գ\XI6m=7DAieXQ9ƚ:bPeqi&v` K_ =$;8y6Qo M\Ω"h"!*XV=a}3}E3GLyuSQ]Y&}<{A^[э2RTCMH+f%jPP kYO`[:GiMF\ti $k)ĹܾdSQ~iF`911"6SHh$Pùc??-w(! sy pWg<*I*eZz:yh+'C1.b%~*KL" у 70&N5Z''*bp!*رMl*k13tBhΡ*xN]z Jn *'MFսC8'6:sy8go0 ]/)F%O(;6]LD6No?,&!o VƉ~Jcu'y!zpkR AO=MVԷqncIc{ɴLJ mU ngrϴ(FsN9[\U7OK*PWL?I8 t5?K[= S}":CEqjܹ3SKU_%in%J-iNl賆IRB6M.:8uLK\n 5uuoNƧ|8ED4v\c 綞K1QCsNhT~ayZau7K 3ÓlEw}#HS F~_4.8픖jX~o[W믽H4sJ݂6=u:r&DEB!C<xtbl不ofoKFVeZI=~ ´[Qf9uI͍']G MuܓE(ԛE@/ϖ^'k+CށG5=5 TH3 y]܏|{i2!6;Q ?nzhgT", wFLS^vւ z2>N4̗ W-hCxLٿ WU],!`OC1/pb_̫̣ߥeo'Sԉ׹xcQn`C ]j/4 Y2a[R ^@@5+@ ޅ5/5қVN`Oz£hY3zo;7d)qi]ѝʫ.INtvXG]O{K~*HVӝ\F*+|d{X^tUv`(j7T|/b8fRdRu =j <ؔ`Gz%e!VqxQj0%LqvZm UD{ɝzZ9Xoj 9 _:m[AN  N1L9 u]5Ggx,q}4+M z4t rܞ!HՕ9MO'@)7ܫn4ˆbpn&d1̚uTPP0+z⹂"^ ψY|P) =!,e'c}D@!B\474<P9C V ?F=t 0SL$D}Pݽfqf']9f^T 7>ѣKXʡ{Ɇ+.2^YAV+0 77FZ4>5eh1#ke7Q‡Eʲm͌;Z҅CFJfS#M1~Dn,wA;dħ DbY`9Xk^l_TN\)1Q4Ą3LkpjR<\'^ =\$u0voن)J̸m$g ޓ{a=S?-t6ez.t37$8(G.#*l,5[[ A+J3HBKgvNְNBn ;qxsQwvߦLP j [o'Omρ=jՖx["H_ȷ ۽`{lN=¡ďc)av VT1:7ȀE &{vhjHm;P .9`u?q׆G-ނ#sCK<)iG$u#΅d ć6]梐9tiMn :R-Ǵz<7rv/_!5ľ Z =stG2U\M`xp'Ch8YF΂J?eJ(,2 Ր #3^0f~8w]qai[b[oYcitkyHTGhjz4>ombK"usvL|=G~W|(,7z Ljz[ΩWay+:y,iܤ5mG&"#]ޤA 45,gvd7PoWZ6 +BX9F[FmA_]vA23 ##|ެs[p-P:$YnnKZӻe¶Ϥ|}Dpyhq-Lfvi>ϡw4|V;^r`bv!PhN%`]vkcl IWV dKj=]V9ќ)E_ >?&Qe )V)S)5Kz~G^s nw Ea@:3$%+,iS|VNyû=S`.qA00;9D1cMOӫh]^<Dj܃eS.gŴG=rkcՕǓ%rq0}tq_+`o5T ~&|͇Nz2f p}k sgr $ sc2i`Me5NDgp*EhU,ݍIGGM\aG}>:Tϳqu".t(oo*C=0џ7' 0fwvZ0_w3et7Wj,ߟ}!mż9ñ!鐩h\]n#Fci%]҈Dv}2nb9\;S W q |s]b՘蕊79+J eTsϓ, E~%Ur6 v8?@ *AkmwҸ ,asDʠ̳` n܍bZ"D02%} K{Pr` gTj -&ako_k31L, FdɔM)|q|#=̙c~(,к1)1*|f`gpXor>%t\4]b$] +X|`Cq*;[tyEyYMB&m!"|UA&a̴tJ+W"^-loM,y|~yW6϶X/d]z/]c8$@!@2GDwOƾZ}"/,SO|LS z 5uW6}F E|u1ڱ-sIW Ӵd`new+k߽hfcklĨgZ>#C.bܯ]j5R: A Ԧ/ s*@6=.0TGyAdW-B{*fZę|DgNŰyiv*=x6|~Z <'y Т꤭2x8/rDM@Q>G^11*kpDiSbB}P| V\G7oL`* NVͻ\9Xdw'0F㑠h'|Z 8د" :P6WapGT?J%ڬr,gr׳okP9w]fp5u^E0*`^IyQ^njϕ PJ?֒bhjWyXUz|u׶Mp{DܱD!Uv0pi, ^F[,kDO FLi´ާSѐYޟ1pGlՐtwtl\p1Gf umU.a)=kR P W4],j+xqH v$'a \%5 Εˏ^ʦyGMhSR Hw{V2q,#ߧ!z\*_i'%FƶY7lkOg׿b1ާui\`G/R$fv鎇3. .([=@bPL5מ^ii!]Nua|YE_{TO !t`w9YWA):;4d ITse<\$YC2KK ӡ D ڈ[@Ջy"9*@BҝtsSl$%!W4ؗEe8.:*HMq1)U %SnQ$cC#OQW@E@F/{˥QKSk2rΒqOS[HHQVBcU%rѱ(F'["E!{Dnv@ w-s=;ᅗ- 'sb7 p;*,m\^DWlo~wQ(a%bk z’þҘsH% m9 8i 8:Sʪ6J̀{@핕ۣ.h#1}K<\;H=zf} XsN9dmI=[y,CҤ.џd6gK*G?/}#(PEUB0ic@Ln.gNORxd؅Fg^sC+/lXjŠ,'d}<Gu6쳑P!@;Gb tpo g|"SB;AthۈqRZ/iߏ;Lݔg9X~='7C vv ~v#tJZhg{UAP;dn{gacMN= jVJJG'8%:pI, ,4]b90)Bw %=wQpꩣ I'8E+\-CMC ><&h`&sSI6yc^W r&MN|aiVm$ݔyjڳ[xu.:+zϧsbiȧAS m܉G}6^+r8^:tiJN4aH\&cQ`4m]tXvn32H8Kjџ%m6贇 WU?S *~XE9ė)0ґ)srL0PHĉF}KQ3{J7Z{&|bRa6kO]TI~pVT98V7.X&sc?BS}KK,3o`ə!ZPTu- rYO9miklo =fQ0DH *{~فeX ?i3MjǨ3\f]Mо V3L[/uՕ oTp' _Y0Tr=FX׶,{0U֞PaNվOV Exk59fbA˕tEbj=_3J'/:C;#ddojv@:`ӈ $G!핼E43_E{J"'Uðy5-C_uNלį~ }~GTSBI!`wp:|9$L4"mw=ȡ@i Kd87;I L\Vb FK#zP YKDY7S{.s!σ1i57 E姁Gٵ B+"~K훱y8r0 h uO٢^-E{%e,e89 }KCmĪ Uy._5'H+EѼ=_"gl&ol\'!$Dcڇ'eHS>9k֫|#񮸒S4pFc*Y5nS&@h_=9B=\trmP)q~%rrLmʧ#|*0Bh;2Eo.0 2d‰1Huހ6Œ? Ya tVjJ2lW1G :p/4f0ZO97^87  yz\$*mgܶtT`K-E7ℸ{!M%8HC] !H%Uh fA$qQt\j$U}Q"6Po[L-DIuP+#e6 k|Fivk'&uUC+~ B@d*/'#'z@;hꄾv~~(t#Q|7a9(]R0Ȳ:nm$|T{؋r"o(PvDG'Љ>?_DSFxr89*CgBh5i!qFț@Ӿ98 +xפ$Y &/NrS^'߆G$&~CrF.F=8-`长 V+3$Bje'.K"KuPT롓bAns!%HϭR'ة eBǾ[ b%zn(YG5ɺg}|OIjqXZL[\iKHٌANMJ ~F ahUO4ZSQ0!V=[ I"[ #r9}V7>VT%5mYsA0Pxy A6SuzV(f@zrҮ2?j.+Kʽody4 ~hqE;-aEIR76c^[0 Jﮗ"1&Lr `;ŏF~pUP6xniÚ!*R,tG@ 8 /Y3Gy\E&+ P#C--7L1c ). ;IDKKKb5ĥHXZؒ<`>UQvA6'yha7ݴ&.1tՍB2vRƊviI~#&Imb:E]ԩF,!\El?0Tm}#yd.dR|G䫊##EeϕbFxm 7bĚL'R3{`H= ֺ>.Z8be1VOGAf`Ly4 /vԱƇdG|=->S=xY;mHBP#) rDМFm$+XQWT~e q9j[h˕4U S&8]íZܯco-\n (J#LK^, JJ7J`)P;3! @p̓ g5}d>R2>.<gO8,oL)Xd,)X/]aA|m:Y_p}QMɧ B}u})oh~E>5R+V9qnj R?o`&xז*Y 5ȸ^$,LX4sq:rD#ejl< զ\~\)+@mLJζ,+mӛRP0ogsp~M wG;hgaO.=N%HesRӘB0`d,%8[[G f*MU9)3ZoQd Y /'[Vr3\+|R}:(铀W#8^zRU]RY Kv x196>=i0TwLckYɞ;hrͅzUr ٩'U ]-f6os̻,ܼ 9dmYK}bwON`uڑte#z`{\J1,<3CKބ 9EVl+1DzЊu ۚarQxʶdmRi~I&"IW0C otF 6X1+x=|+%,#Єl5 Oc3(t<2pf+_$>ŋ/avݴy\~Yxc5um)/&xUx_z>: 7 {YG%aāqPl==N y9|޲UOʙ-#p浡 H Yd57ljɥKfݼܛ;6q=0]適[7e~bH *r,؂|1jM"%s]ДmF&S$I{ƺrok;.oׯ<'$[R_vr$jMiwګVbU#:i"y:f|}xuh8 W`c>};|{ W{ cP kp.ل)q"n? }-;/zJ<242`;} QpRta&U6)~D:jJl÷7pʓ/"?l}]z8c2bfKT(!]͋>M"7mP3u5bs'nЗm[c07+ ӕQJ%[bB;*x5c{GwH! "qt|)y\p `+2TeQ=Pa@S8iF] Pd$٧aϥO=̊;,SP{?u>c\NTsojʹF@x,EjY*(zr 9xpRqA!iTWC~pZBga^<JʾL0<o 63ZV&'Ѧ${ZE;ͼL $?2hAUTd)SY9+}WoRvRxG+pJP ZJp?:Lji.9m׮0l$wO3)͉f9į0 gL!V!Y(JwS>KWf/_Ğݑ8i+劃6d|tb~\C2=sUܞ)(7W_#HξB@o{-i ?BƘ;.$z[|@8+$I̸'b͚};?Mp*0QJA p|`p@ Sڰ@f\uK̑su#J;tE.^_ "xK4u'q$> ?7i3Gv*)DD6jG }@J,:1"}0CNJϓyDK|1j4*Wn3/ylؔm9bHScU8bl:&Xn&(ȼB!׏Os~ӍKCmݿIƣ~tr"ӻ[Ey`r欋 &;O )i4|^8Kyqmf$KEQPU1.|'ċus 4U*CzTo1gYC> [WLx1eW>3<1dv3?x6%5ϖCQ`6`k sdHQM@5x68MگfX#=cH@Vb])J޻Yب{yTg);N~1L)MtΦ(RYSmلbJMsDt\R 0͋{DŽ @9=K T@$9<+`( C_lpeMt 睑`whت ͦ?Q`i8'$;I;4胞rGjtK" њzu QJ.CݪTGOjko=Eluf{`Sy 碝 >!3NeE tWͩ ɢ{BD~t3vtTH$1Jnzܠ[9c:%1_RFUY!2xVMAga`_4k i ##{`r*eK#!Ҙ@Gfi7| GOE}a'7}wXN֡N'*NQU=Z REwNR}i8 -2;H!/Z/y)QQpvTL'у lv8Uz4e cAV|zu[&ùAAs/|QYS;PS7q_)H"w[4^sh1&mѢ:5``/0)hŶ 8ځv%w1}Tnp/ϐdXx y3Ev6_ycnb4?'T;SC0}\dd 6U0%f1ug_RU=_0EwxJۃ-Ur(HsEf.I5C_ڌ&GV nlQh_~B,ya>t^*tMcѫRkw=5h}ov/]^:164ڊ,,LƘЦu']j!JE$d ^1 ʅ8H)Xeb#J)nRD%Ĺ=rѷiA/жy%Bڎa)CV˷'lf3+Z Š 4ܗun-u1K1+e1=:yA!Y3m ;n 4ې=S>oFf;Dy= {눾vXꡤjM«crx&͆EsO~)n}w }M -L*jKS&!Ə0񕘴s$CT'"DK۫֔cE/tDOWU 1RtVa$G80{shzʎqJ_D@p[|%ᆱ5q( {`! 󏆏-㢂ĩ^DGTW`S)3wXoh!~HnށS5,jZcI h? T5:~U7mߘa 1 EPh!!E`03G'K6lrjDl⿹Moc&^7^b׾fOWRGR$Te)>Q^3$`yTymY%]FoY nbC3Fr=^ӤDiq^JgmG#c_lcr FڽO19iPPv-;Cl8ң5YRqsLl4̯-sު!/['OhYtX붲TL[#Ѫo׫݊Qe5=p~LC^kZ#}ޣ2{2,4}ס8!nSAO .PfQd r"R 6Ra3Fw{\1q-Ma;!ս/t6?* mnC#T\9iȩAi4'_]i#חyʆ[@=7Kc޿$^o5lG1Jm}f^t6 ѲݍOΕ0?j I 1`5xѭS) %J+'$Ak94!cBX9my/ K;^$A+ףnH"# &5~C(*fNXWc1,ZH(qnU?|4zx a˯ ?WRH^TUs"2PI6sO8{Amtlk,|!~v4(#LL}i@I\5E2K] i4?p S]>Y{>4 ADh.A왻ڳ8nU2s; w:2ypw ~ve Ź1׺MSHKZʾ!Vj(ْVSu]/e r,u2tj &XQ w+; *@t)' F: &*~LzIes=q.YD[e?W] TbMBZu'7wLe]4@=Hs,T8ڛ2J2ӣhmsw#_8ŜLKRI(ܕzdTy{# #OܹC&q͞3zr~+(5 |0>ֲu4q3FlO׫,cJ6wuF'4_0{>脖$S"#zwU:}ڠј~E(tIE_PLGSM"#:6:@ 7On6l+cd~3R9B%h*I'|p?#ؙ%"vXNxkʑ5Ι-}S Ye3C hB'c_=^[4QCHr0ÿO#krLo [ *L`sM1Ig9,:?Ζd-ҫgYaBt9@^I0Uǿ-rywitsk7",FPx#IKܡg>W3Ɩ"\9tG4u3 ȌNŶDH}H("O]eC+rk' P/yd6H%R ~ 3ߜ!oaԂhW`DJuvNeزڔ+`w q'd).snĎcTTš!5g^; rʱ)[.M)'60/S6!^59z\J"oZ]ok0;eV0xCw;:p&hnLoFw>]!ɿP]֙8W{fn?w)_rud@1񃣳#|WV8=/>ȵ@Tt<T@5[̈{]ڦ 887 ?X6:RV:dCHG`vhMi%!BlԟҬ;q|Д@T]Mx6o$diovlxtl!w#k WL~+ %R-&!Yt &Wb]FI(q )r3`}'?is\{Ӑ%*DGbCzGp&Yq1in*^ydGm~CM?=c"粆S|\ ɹoϦ Vigܞ jkFI5Fzqb'̊ld >oN{9| Vgu,K&~.Vr|}3F=Hs-fF\oJ(NLxG2|k냆NS GYq匹'Qwrq06ӢV A]ok8}Ȅp .GXo"NPXP- }6\e328gyX41ߣ$)Cb qK4D#GIܵb*[4vʸ5dZZKU) rS6m eo=7\F3cT91񒖆<GzN9~LuMHHO J |qbWb򕒯0aIh,,::m]X(y" "4Hi]_hr,l5 `ZHG9k _g[=Y)fL[ } aCH f jibנLv{hHa $b=Dhbxt$M^g@^S~hG:B[4lDXfĨt2)p @= 4!pm7"FZVlU:YϘ+eDV XViָKt]Zvc p4oQfE:`w+P|I0[|GyĶ,bXU5c_Zo:/{h)L=;70!Z D5t]dR6g>:_ݶlnاzXOIqnO7=L.1)mVs![ԙ&)/p; ȱ]+媫w5hֻ*B,4?Em$LUXte׌Z˹YR Y-E[(V9 fj%Ⅾ4羦B4چw^]YKAIK_YĊAк>7CY5$˹d boi CD|vq߮ʖ)_ƼlF8vGe6?a(˱~ttTպnEK%:FU~))18MٸkK26f0lWżbGOba*(],>#4iN^ADW=@vN <<= w171\IO6")p<hMx4_A=Y5P.XõBJb@-1v4kEPRo~KP.H&Z'GXDNumpuZ٥y@F z"n^ h5Ot$m#OCF dG@8a[(@>ҕ`K/`.#:6]ז=% 3j冺H }I\{GJvg@v;|0`U24ZkIqA*MR+p\/ʔ.2}tJ4ڙ2O9s # _#\/<(ZsqŬ1Lu""0#/UO{ X\r<mG |vhF(_zE6Aò'@}qK+"Niw)}R[{MhƳ+0mh! UAߋ!5։͍*g3ەuyNQΛ1nٷ1 h]t󍁖THfzVqeY|X@5j:Tl' `VE9[`N2GL'&|g'LF~D(11 $Q8^i46:A7MG#hnpY` Ԍ 鹶3̕&|@tU3Omj}BnxGf_5_NmHp)U=[kj VI5 $ }&'1tgؤ uipمVߥKsixЙ@* hiAtf_҅H_:2όAMkwʁ /Ai_.`3j8/q SgXĬD]8ljE$0c'F$̒23)8N_TY4fߵ3Sb>#XCCY6,*_GHHhjFu՜euJVAlʹѠ< /z}*QfU[B:ARupzґ@nyj?lf!F,-0i.mU$`@0u6DOTHpݛfl}=4JXoM>Nj 4$T c=zڥ$4ɵю ) ("~߸'HťA5NFMj$;ʙV$qx-ެer-a@?|8z' mԒ6=/z8Szw@D[kɬk1HjQbe3 ;-uqI+gPKe66PDa_M܎^)anY$ `k#=۸'1Wd =(=K:I݁Q8$VؼX4dc֦ӱ1}a|K14a{Gɍl2:DڴTNG:+Dȹ2m8U1RVU2bJB/yǡn#zVM[0aad?`~7jh}.OG3rbf L |(dtyz+ s,L xI7ی؟=q:obC~A¹!h>yWM,=c5 .v`!E[>Rڂ%8pL,B(+2+WtPRYǫm[BDЧG}!GK55"Fخ=7z;U)VsFvpR}zDBhʴE)[Zp?ߢ;wdt'|?b2bջڈ\]R5qeX'@@d HZl=1ߒy\<@P4tk\5VPr`$>% ,Qp$P` ;ine, ­o*gKԔL:: ]]%^(Exj9R5ȉ4opT CG6gY(jc_w^IM`hF/ ^|2z'O?KVN*9o.ŤAA݈jQ,RpP޵Oh٠v!-2~Q~.;*&+{5EjZWP>S?P7-!E‹tle(XeU@nWe $[n.@ci:EVa=_6 ?GEݠ:Qgm\ZO9~K,w-?UΆ}8 QF47of\{cI[ .{NͤsX< @͛dGKһsE8/AN=yb;;AGf1C$;|R%1PGiä-k95OO5UKXCCZs=tQg2V+˱SHN\yz?]XvTyeXR)c={p S Vv2* Aէ_ F}90/IXn+M2${%&N4QynzM;AWt.E'_9:X۴o3N@2?X%?zkU( ==p[O=>&~@cָʘ~Ż/\;({t]g!2bWjGm7͉geV?/Ssq6]_ oM: z7Zp?F0Zר#Nh,pa:mSH\"&v|:Q^|Ebe 1ہZ 0>w)7> S hå,wG[%5`gV>x.g!uJP5j1i$As\@ZqnNCh3Ks͞K|UbĒ.x=].ɻѧ*uт-`DRֶKՠPh'c$E~|9:E-ۦ_Q#.ד2!L4].e׀=ȆVcF _z̺ Yl1g8|Mй!˸aJިm$]͗M*,XD5 AZD(ML5-:j|/6u~Jku_\0fNT˔,HmK[;_>_KA tO%{Qg MǕ4UJ9MQ'9@ძUEkG#ótc˾ڐ%G![n+j-o#.s«u(˳rK%U"E/lN>0r:9mMXKqqCF ΫŴ[v$$0#V@c7W Mת{BK4r'bٖ1d)hJݏ"1F~dCO 4ݭ1^b$Eȿ/?]o mn|$_֛ݳ9f`^ b'rc$dwnLnN;MQn7h}"M^] S%IS=_/n|uqc5э8B\Ѡ ɼq* 0=&C`/XgOЏ9s(>XwFeTSean~6ng:L"J`ķ;@F!u{w\B8oQ?, %NAmA?!F!÷ςѷ6{pO9lI7:M S*ʲ$ H䉟}?r$PQ03)Sj .7?jyNPB0{ye=_ w R^fn1THC{rq?EGSIl9*oy55|B߫af -U 3QvR,Pٞ+4qPL9]^3-5vʙPC^lROl D_TI=ikzҕ$2,Ztꍔoae'c2E Kíy$s`XǘWZ8T~m,p+Y4HXTH=[ ʌ#hkf >bO:ʳXmջɷXlp; `_ ؂BoO:)2dŊNbQ h#Lh?DR<պ4gy-/TBOKe`-D@VTLZy ֏(C*Mo`kApp]V7E/`j35nƚ`%.n\!DՕFfHĎc-R@/*Ȗ$x;h''q)ϧ^ؑPVNx8U(}`5W,>>3)CҜrTd=,'uf-IՑavilKx_c*)*bm~+[o? 7Jwʎ㹫dgaݚB>7drˀ/z5zܯF'G[PYv[ŸT?I.K/B orN]kpTW_;}8b{eX/#'r1x- F*&jb)G l=q'S-^xR+%H D-p,DwvHܚ#i$edd}wa5cz.ӭ:G %|bnpG?>~U\POR]!C} [.SaTn)4 2.HI31|)>]~=7YDcY{!fKvT׋`&9*i J__-b)VZrN4֯w*4A9j #?bH)5^I>qTW1Jy:gLHZWwȍPG(LjO疷Y;:[既nޟx>)j{Œ Dwް6.ޥޏ->\yotmE)5̑Q-81ItQʥ"ɸ$ 1I)9g4ġrӎp;őq{=56KJAio Ŗ@{r-3q(2B>=Q| g^0-0w5dce׊Hu\^j@ KO-)ql7Aߔކ,|-A1rsmصG~a7OlYRb85-x~U LEEƔ@h[K6줔KY!iV{W2U8݂^a^%iT7٢v%f5y4`C#c˙_upzk<.[#,+6CA&oFgd:9 [C\v9a. QOnNmy{J3̧Ix:]9&7D}*VB ^ieVbYO۹a]$g5;7?2"8h-ŶAWCS{$'CZ*?X~4*qdO[ΰQDoZI5;e1{0T(Dv ̍FׇW$:24{X|'dod0&-/] 2-(mC_ FMCMC#Hiٿg]̥H}Bp?'WPɞ~R~Kr ?QzxYQ)--Ad5k4\Gl;s!0hr;v\Q6Gv9 *cka7SO_5Ge09.-q D͒E@Z5Hw?a: ˬ[U$!.%na4NwVgu%'($Jiw 1bF$})%\+oEBWL걨׵NŌ?|=hx#\QIhOV ~fKr^,$ A=w]Bû3B4YU\_-34؎y*_m$3[~UuPo㩿 j R_q|7鍆vV΄J0QU-e]%$D7~A`"ז!s-2 XɎ_!+^Y~Zj` O6`1}Z$Y٧Ay8g)>[; v>I19XX[5l԰t{2JEq[ԁ~*N>y|mǛ}pԤ:)*0&a-F^ fO>ȝe57>TT!P^PH+Q`l.>}-)ЄZ)r0f76<@S~G?FVblYלe&*c#spz + ^ ̼D b7 u!H~v\R]zܐ~K@]yo4:#faaΨ&8V`ʩDrEd(>"b'< M0lXQ{N*6}dr0\#@g˾n$_Ф'g:?Rց#~uV30R3$'bgʦiWC2Nv.mD >zt1iOϣwZS |#vGP֨?X40ȃT^&k!4Ug/[M^8dž*75K臅Ž+!ԱUP4© X&0:$KV I_g}4 ?1[T2f:d_g4 ;Y=UO;F#@/ϊ{Z~GdtR/ٙϝa p~#m¤ aT\Avƪ]z!ʈUѹK2X\5ubgb9"R #-E%#ZYz].[@{zI?Os& ,CYOBh5Fa -4.ӵԋ8ѽ>A9zϪ`]2S{A77M(hF  jh4H?88ˑߖ)P]t"O #2߀O]:9+ # يK-:6lNYr\hLVܸ9/u/gQHtK$ɨYC$UqÞbza. G7wvpF.&[FRٞ"1Z+1fM6{Y9cQ97hٻx" 8 ]`<w%g= Rnh~z_jv~BL۵cW6x62Ǒ's_Y|3 Fl~E}*'*VXJוH ߑE| I]']E 9!eВ|M(v7!<_꟦N+,%4i !BGAvrE9(s%&*FZgVJx#X,*C>pP%_#fO@Ė+Glw%w6ԻD|2!KVAh:}/9uJ!pr:pj %WY<EHH%p]^C0zhWq&}g&:u@Wvy0 ~aM !OɢA,o3i]u<Zpaodq|\#r.\{d-PFOAU)e~"h7 }S2S񋞘@D PRy׸__k0lӞ9 C X7ٕ\%~8H'C?DwC8hGdm$Ěa9J 48 r|!Y鎯mCYH[CTu:>)Rϡވ)y7>=Hǿ)gk@a)O`:ZW(tͦK%ޓp~B pU l7"Uq(2 _|mPРP,>#UaA*`0%&i;> a 40$^l`IVk奪w1V6);F kElmc7 mi렋[ ti%`|DIԵ!<3H-j 9 4$$ XgW}x39kE'x@>0ҟt5xP̈́"F T.(NtL]،w䅪p E"+{6  )kBzb7KR~#qCS*BamԠI^r^/2Wvi{ѷX[N7QOP> JwM;Hz] e 1ތkG2oU)&WʰrSB`90+q=nIi&5;6&b ֐ v $XN^l 7Gѱ`VB^V<9('74-eqc|~MFh\#!*hfpr6YJoTUv[yI5/#I/`# 1Cn4?.N(%+_yX.W%&M2 dWK.g"82L&jJ᥁$yJzElsJ׳^zA ]PcKX~&/04YKSHlL8t|,>s Lٕ f=GwvNd~)QC5O@;x4m lTPb zdQh$;"Srzfv1ZZysq|ݻ"*N˴Xc}78hgjqi163"F7T0LmYa?W@\M L)e qgY=e%.j12NZz` GWM|n Q(26MVc*$k ;sU~G}9rϓ0!}cw%ѵ뷒ܙc&Ź1$եoP0&J6)[P>@m)"p 6b*Кy;`n?ΜJ؉vuDgǒ:L!\N` ."WE`#6ڎfY%P.8WhzQfh;@ FHL'0Q9YꎗRjx.T,=Pl%pwmbpIzEF"Е̾st\iK)s+$TVoP;oPCe핡0蹓Ai:l+YuK?^%"ZS8}BVQ~c0tJɑ!^5I<݄]J[S8r04Fs  Ad_E5HL | :i&!/hbJxwҧ6>K] 5]O+N,ͣgSt Ne5hEcz[pxjL:Y"Qcv1 uSǷMEEј)B+ Ł5Wz5! 3ۅ:'jҪ@%Ҕ?skX{ \y%7A"6NF3¸bM4/pPKӅ=: 茑!&wENsn؀S?sqa d4Cdǫ}FeՇm1eaݳ{競_ \Cllb`mzHkT!j 뎔coح[Jg,g^ےzf3vtLM?xLn-* <'\+˺#[!:JW5awFIw2Nl+h (Lh *kpe$Me6^jv3 u?iHv"|'#O*L֠ PVbBɤw{TYwV7pg䩧 nEM?F<֙ &@E8eQY|o<,8Mnᔸr˻9h)sƟ~.074mMK'Pm@YojdlAY jZe5w2M3 BkmŖJ wdL(E[A"=57le'կ cj]7 Jx $i, cd h (IH.SvRwRfu_azq$CB6w bNp+)YqݛXtq#Mmua zVelq#P~Q AVØ$+S- TxǙrk.jFC5TWvnL\䙼]y{m<1 [|O7yo4jI@Ĵ!,C71l.3K#ym=c8}QA305rKТ )CR SjG[9F#1I^z56BUD X,*m?FX}">gkw0R#nRh SJ6zGS_,s:6tn">[e<eX QlsPL&CbN(Z5'fBXV6-X@#3)\:ąWn;7UX|sc^,7=t*;qw)tyq,rzN' 3]\7)rxƕ0tфX`ʼn?(UuxbcJm{׎҆S5xl':/.~;ʀ_}SOuY;q DuO&ڪNE%ʁvҫ};J76ܡU(q8"K͗c c#zOg 6jC7$q\ &Q@F{V=kEArғ 1{U ]$@|6N8I(IdKp-;7zQX<ϣB}*P9i!L[7C2̂}Y2$_ӲIxuy(_=C ~7՟͘~Ӣv/X?w#Fr'䱗H-?C W/"dJ=?p>,9+!AK P5XT1;n]*(ܴ;B^av$Ny쵊<>,fl׺S&j}j]^Z9wQ_8}22}8ɥ=Icw!.UϿHrZ㚖BT]bᒐ}k<"wi9'O\oRe4}TƆn=ⴄ0(  Uxq_1W(;ab _>]}deJyeNiB*n5} DLe1z3Z.úaE߄z凭1wؾ<F3zo$oPZӑ9׫_:US#N`@wTi¤k|C2;NGyJLM%=NHqMJڵ? x!Faԇ* fW Q@OuOㅓq>|.0pJjNY^ g30)IbКCfOZ(iNve|UwK}x@ H孧'#*|ֿQ<@kٺb+<26<j&cUU%̢5|Z~%]m? 82MziWSvc9[J@!2JRlce=X!ZNIռcìh ;8!s`cH2<θ%֝`lY^Y@@5\y_#Y"|Fij [k:bdӉC@],~\5L+^⫛ÎʄpWpV Ii1un-\ޠA ?,@!>a)4DE0Wy,p ['\3kTB(OъiuТP/xkFZh)ͼQ ;AA" # oEJ$Z%"u#+Hg%=IbXsNk.vlPz= 2eSEVD mnGdOt鮍G EZP$ 4i^2թ͞O^_w[|Oㆹؘ,'d.*I[8<˰n[C5@ib$Ɨ7zig J + PwۉǻX3N[X1C`m/TnJpitKu_}*ɒ؄P\qQRo!< $v0#[G!rFx$i>l"GċJ4HLN?Q4Y#7  jQ8f# Ȥ^ز_c9f & 'H9 &Yg6{0T7 Ə1l0۲[Vmᵔ %?FmZz}Dh PUz=].蓪W rIZ=OjwȧD!vc;Y\l;ʀ³Zsh%/X|?O&9!oB* z~a!F<_g3#<_1^{%.ٽ!쟞A~*so3ad<;mLyD%EfGԷB>17y؛j\){aaUkNDM Ŧe!d8b_\èD{>J~"z wdlޕyp0y3teXZ3$ALBj+!87he}Ǧ;+v?vM"{I#\eVFD+z/h|%Ǹx}`pY1i+Mƚ격7;Vw:{Rs8ɰpZFPuO)q+%^e{`2F=IőiVE}XQ.F2v# ѻ~)8 h> V:=ٷ!~C5# #<~Q?+YZ%G 2&&&Lk*dGHZ ϥgvA(SG&0Ro/V6 $a##*Kws JtDXJ(ѩ/2awv Cismc]$Hdљcұ?+bu׼̐{"ht%ðVb4(oEH2qhkNy}l|@C'.^./.tv}$5&9?;HcL"Zϒ2۰w:pSu1e5O<\7˻T )ڸjWRdbw a~^`L$#9E7)5Ra3" riO$/Ͱ7Pd)+τF !kSO҃-= wn*1MpW*U)2wlo\P4=tNYxth'Yم d-t%cyOu{3FZٰ}%v<;(ԶV?zEh0}Xaܙ}!_DL}%юЇt S ׭^(Bc7`_CXb'?hAeׂ O_ĥnb?frB.kf StSE|dM MܮTaeMNK ϩܥ.eD'k^{av$_Kal+Cj 2py)M9/Zy2,wO [OMеgJ^&`W5$Vg,m*jPg]gɈ|^to?#v9%(dt: :3Ȏom-FXI43;gA9ؼazGO%,bgW g}"Y ߋ! iS_&]h0*>a F;2@z0-#J_gaccpD3MŵԒ'qIu7A1U^\mTW-)>9 }p;šrmx"LJB=Ӱ1^ ,):<ɦcve}GݹsC4"dny*:{۶x2}sKϵ*ׇ>( "Ϫ@Y~_E`8] G}Qr\@ANETAN1h0cdz/2dbi^[%+<C{K0 EAκtSBbfw}G0y N;EM/h}yC޾ ўͿĕ0 B97f0Tq Zu2Kv`W ;I~5ƢyEǏ UG ~v0ćf¦H6c9`Ae\qP(|_:? !cK19nBE)?ԟRӂy,/X.$tkj|ORO/T %خIUEv`Qs%#Ir1-tBiD.)W8b)0E/Uvf{R̢ +Xꋯz.XGQ((T:AT=w 8'JF7U~_Dx]>,ƢۗPCi{Acq1?}~Uq]o%,i#Bi9A"Z~<ezq#NhEb]n2ZObʽM6؆2}کB'+a-fVZ}7F^ RϬ9 Pn$е߮a䖄0T[dH~ڿQ.l L 9lj%->ծe!*ݗDDF[ ܓ^i\ Ӽ6Fym],`+"f+*;O>S4Lyėϩ tp09{GA\C%wQ( ]]8cIPn^~󇮿?Ķ[˨#uװzjM,ċA腭j릧0wG$ս4_F{oVU[8+q%Bgμ0hi.*Z(=yxyg;>CC|w&CApn* Z%1EfP(yŲЅ&éSUL̈58|RTAǠ7aU i oqM(|ʷ:xqM=K9la=iOi 8{#%o~ґ\>Fv?'j2 ,4-JXIݏ+FSUR>p?b. _aLy`q#ԷM!Y`n=_r h71:rmSMmھ-SV10&tw^ߟǠI껣t*˨¸p!ÅKM0Me8glQK:yFd>{C&(>*fIUZB뵤jX2'u^4xO;7`/(}u߆A!ǃp{!=sǏ*k(4ƒ3gKG(EHEvY?U ^.8p+`d= !87%mW2X)Hb{ Myt9p,1DfCiG>1mns;0*Gc8ܚ{H]X(Fɠܺbb INbw뱷p@cyΈqXg-NarZΘ ];^j397&Q^#vnN.cP{A`rZ7(p7*:9f m/6'lYݟ͑1a;})պ+6?]P;4bLi-.9Tap' 1wy:&IcT28U{R] -F %22 bHEh+I;nԚyp]kO%džp5tuGS&kճƱS0 {B_E:-h̫B KNÊE~z=˶&MVQl˚H40H#{g8RDyݔ;WXDc'3*~] n-W"wE` |Yv~"Us_|:ٻdyw!Gɫ~1bj>(!B~%BlG,`ȼ{A+Fg.\cCR;tGA[ۭb] ନ^[O ^$dnTE:)V`|0cm~`a2@ UޱȽ<@] GᎪ r˕46KTWfsnIvW{(g1-LӿLD,:]CcK.OFi٘{M\c=]7W+,Hg?%=h+WQ0@cggH(IUO^^OڑAݐy0:w?}k/sV燀 4Ҷ;p3usZorƹ?J/8m 5ws.Z24+"-oS!gijBaG`ek!f(I8Bp&#-[̑q12B+b} 1X#iݵ旚Hb.9CݣԦ]= Je3~/8 ]Nq<hu _Ij/R3*;;YQvӊ%i[@"J;߿Kz>_+ xhxC>b8| R*sbob LU/RYhNP{U0y_;Et!Uv^/,=s1s붜N6lawc9XH% s/s4#0v0A+ق-}G@=-TYX@R4|=JO@k_jH|H$ϓyb|0"Fxdyob-O=Jy*.?D U|5]o*{b3Z/ k$00zhhzva둣#8^6d{ZB5e^uzƬ[Me<)^,QKvjGh~TeuHSw7JF82 h<LsG_E?Ƣ #Pӊ/EN1Z!a`x7MV1IyM&(դG b<֙W%`wUw&kwTpeY8*X虊"5"m$&ʅ?DCU=bIaѣ{_}{,=0G`3|)T^(&S`q1h5.d'4Pf -рKƮ ,OxP}M0Ss k;X"iV&&+XD7a5IYOiCnEӼӒ& ;a?H>ij_&ey0q6^ ?*9Ŷ1&nJ~)w0E`Sum,IMXj?Bhdؖ7M{Cz[~"X3b6cЪHVo b4NTB@‚kG(]b>QDnUD<%hw5 y;qQ]4{<,>X+Q^3럂ڐ|9h&LU5_gBWfMC8`YLMH%F_sz`DuȢ,ƌV;T9s#P剢]ΘFH4AU^3Er" =rp maھLv\NC9MzWu=n3խN$mr-AZ,=)R l)L1 <(xyByJ𦒏b~IXJY?Xoi*b[І6-R%>TLQJ):0(4F7S'Zd| ;Do Ԏk9{d<|?w3|c^:&4 HO8^]_" Z=gQy-|+혔;mݑ5-a.W&ٕxG aN4ji ] >,=w&vrK+3W~PO;:PmDo^N,i5A[ \tfñ Voj4 +M_"$G\l 6J<U% Oa|ЃPGh =bsFINMTo4J-X#]H>D4QUT}SRv日Κ#SNJ0*bS|ID#0C, + NvO #QjyK?g|}^sA⊄ m=-To 6wq\w:nGLT4j AƏI֯@PB]6A0wp(y|W٢{Wv5鐹_<j|$g(""&ssBbVLVOLE)h_$5S=9,e"'B)c~.SQqV\> 5A)s`S~E!5񒈕4Yf)-G&`WcN6 LiSҹ?a0'IkD'3ռ8{Rtk?6t".#15B71;p&Wm8-N+9PW"2Ы[hvcY46@C0 O'3ݳq('[Q$g؆BaH-znNyJg098WDž ~A"#: Rxż/j%nkQ ^/-L`O{%7D>c?v2/`UC^݈DAR<'0m UEzjdY!$.K~f˹DL%qN})͗$āϡ[2 UaHps_&˸`XPOp\{r,>zAI-$у b4 Y֓2T3 2gJ!Ŭp%;DqULXF#,hp |>s%dXg r/תUndmI@:EOk@C=ҵYwmJds$m><1ơ]s~`We57 Ols")M8bIya'wÛ=(ތ+G\h,yӷ)^+‘/'BeH^Jv_|5'~H鸊|_~4yj$-X1Z b~IsCʟ h#5NzZv)fйAN:s2L4q8 aO zrC@`|p~ѠZHNoaI&ӐҠ&9[6x6HA>+9\^r5WBWfUbʬL`XrdSĝ ~n/a,j9T? \Ei; HIU=6Ml{ޡvhW XM NFO m1|X7y"hI+Aws AeǽcOQgQhveYY=8od4%e{CЭ:#_儓:fN7`s*aEH7l51?0>gqؙ{Fp틐ݗ0ƛ0t\~ 3xqT~ƂEL.dkb #*'Qe1o!u b3*8vӀ`Ig)Z|+c=}"1RS TDCqLlr |1DI:暇Xǵ 4?e)E;Y,@{F+Ab\IQImeմV^8Ex(]V:bŽԍ\+* G0t&gy~ ctPiv= |Mۀ5VE{CY x3qlrY!Ig Ol]uQx!rv/SD2G^?9`e65ȩW](qt僫 rL0D\ADQC)-u -?)lkn oЍm0)ˮ' Y~5 n"}BH"Z-Cޑ'xej9d橫5W]#S0Z;a=$L]_ ہov:.P#R;Cz1 4;-iɎF Hf>Im q+q_OX'GW*RH[,XZ⥡4L4)qRE*4z͆ŠNpRؚ*xWAF+vqČ VJWbO3deUNky\U2.6?vf]hV(6x.h"UWf;dWǬ[ZUK3+}@9)fXy Of6ŝI8ħwRmFo;y,7ѝi}t=_.\@P94(훌OPԧ%A=bxU75QU0pHVq8Ŏ#<斠'Y&ouXbʪy] iH OQMiXRD%n6:œ,ЖM z} tBtb^9>R ,6Æu 9 R ɗ75 B(&z)$ Z-`{ 34HT߽@)zUg><% -l k\t;OX>WKrۣvi$Upω6\rZ1YЇz,dID:4#ٍ8rns`oYO␷2D.պX/4jnۡ|A!^¥ h/LpvvB.Q{HEa34 s~=ȏo !I/bySrQYLMR8@vױ+[]t`8JH蔕bper4r0~ڠ@1U JP|:s._ Xn}ƿAݩ5gnk׶*\Cg' r>-ʽ.O#:dУngOS &񝯱bķu.m<[ʿJvЕos)h;.Lio#ǽ wjw|V.9a=L;FJ/~^1Qb6 AOGlҹR`fdryMs|.Klo66!„{T˜["lF ܬ%ڑ/F<Vx~Ը1n/G[IF<  : `ZK(1l5;SՅk^7DWNAur`.VL3}/%u_~m _ЭsD-mFO]U\'7&>@;X| 1U2o bdgE; h^L V_)\7,6aǀ@Y 5E@INEk15 ͇4cwg jiĜLxfX|_ 9J:jwLM: YN VQvFXY`/߲C#.I (GNFI$t:ȟE.>7RMkYxjMElC3*X# 6t.T9;Njey]vX-Mp,=3{W93*r6p9է ʄde@/X#j5*>h0c<U3oCA.4Nm7 roA #\:c/5zw_We}1npU k"Xsxc{E;5)~jXيJtw̓/_ z2.l6_W!$7f1MP>ZBPM۠ߥ_]L*X?6Gv(Y,W~֌n 11`3x.F,:.a'x̓8+&}4|V׈q!4t?:JFiR xMBe(UإGDeups<ԅsU ("^!1o0e0O!h/_i^ojp,LբZ#fw/Ot'OL~JB0?P:tI[Ml{2SQ]̔?ά77K pOX@@cG3/5_Ӵ9Hυlx2g< ] xX9ZeXGv}" 8KؗT 4v-$*/S~a sb܁}vib}Z6=7#m bxn,wni Gh`zG:'c3c ZkA,,@h"l2nʛlpBIӍ`Lj4S*M7 mwncBۃ"g_gu*f.;R4>ɛw혛. nS[>P 0wKn✉)s@ssd!QvKD3ۚΎ-n 1.i.5I&QBnixqqFQ٠8ssf.#5G(+zv'\JOn/YA٨v f=aCo.gn2LLeo~.p@e:j@*^ǧ٭Z7 2 W[0&i϶Wo35ŢY^kw(43w&Zy_5l!^g޽ pC{1-re3&=~vE85/uK24u,"L@[z igaXan xF+! w6"6b(?E<Ir 2("xA98M Rzլjv-[y?A᪆N~5xZlۗ 㒁t{qG|_sra0: _q˞ v] =SʱYXgR$8eu|iށr2{ˤ\-7H@_FF<.ὸ93 |!$Xa؅3V30BIt5uymJ[,Ae Oy%7sZ %8ٳ"m;Prv@O`J]m%LqM (Ah#;]&d5`.8V1vh;Z XwB"O}шbU)}E^vwCx8}XGN `]!Go|Is8Fj[J回~Ruj|#׻3a\{s̉{r9j5H>3n]U7n6#V]bݫLktX9E勲.l_4IαRkW>lK RWeXm){GߒcgIgCƪtb90_H~.{sfsJ:։hTΩ z).ZCAE Pl}g_4Ïi<* 8_]wh^5-xk4xОɹr&g ;N8zR6gǝ]_n#Ua e0)BC*-Km{D9IZER}SsNsW=_"B*5y$~rAml35Ԩ,Ǐz8:kay)*r,94E,oYykm&9ԫ L|O>R{%cBH~e&5 ~p рLURƽawRAn\XwkI@ TOY A`eՉ oo*T60qwr6 0NtBM3klg -#]ʵWѺ)b sf"`qxtp\;^]]:$J?2Am6)6.4DmE@3f˵ f &GbٙsZ!1>_"rK֤XJrooו]E|4=&ِN{pu'QnT%&V,swˮ=g~"HXxLdc.= 4zCs3ŁUQcn}Z! Ӊ:d_`۲"Kv!!3|aI݋ܮYwȖ&env\Zv砆PIx]M<]Jk)R7a ZgXd߭u=%iT{g&~LVė**F8b5RQ}[h E8,"-eԮZHcJ81ӐV"xnsVovs1?%$oj{q@=)HٖʽNSrj=QAY01S/$N;zOO߈DX.{ vĀhVOQؽKYVF.>r74 &Y)tçFl?CAM'_{`:,@sdeGd/:v$X'ʵ+Tn7ȶl",iuNkS43a}g3CJ/g~WAAeP̵Sm* R]TyHUgbg&|Hn0cU;cL`mp"h-l<>(ɋ.v ވ} AtGl|/J=&ޑs^LQxǾo]fu(MEYp%[~H]1KZ{$睚%U_~@_RrCxy:xEB6C>=LQV(I9yii+T}bh|j/eUAKR\RVI {epixdNKցk tVO$٧Hn5m>m9ݦҹ;0;; 1}{Ăv&}=̘p~N=|wi8C9" T D!ӗP&u"ȥtG; B%A`/E WKFYfmhwClm `Hq|[J/ .Ju̼X^}cy`Yx[k:=iۘZ >t&чEЩ=_zZ>x$T/T(#^,1būJ?mSKzxƃtnmA`0e =A- ۿ"0"gc+NdЃ y-[cT.Jv`$ת,(4YFcӵ:F[zTɒwWX-UW0`QtQA\(|%ɜ/ua5say*B&&0q-HhP Rfpq*Js cBxH${esbښG2&(WX/g.SV9+\e(MʡΧNK6.h|x R+1^U*v@%X;.{@W:Q p:1ИGTb=v+FT"*&r{{}8PҲ޶Oq%zQ+Z:rzxqaADy='D|ٸBzpGف,Vck0*D"C_[3N([wap/T:d~WRU'Si 8ޠl^G&;#C"AbKW9R2?6è Do\w$2Bg], 6_*Y (lL# P;P@4͗qeهȮ$<8kiM& ڢmz40O^g9s K&PkrUXqDIަC0޻ͦpl#]T'g!Ř*s_Pk &i:؃Q}X+uB.]&%T6tEn ZgC;KsO7`))j4ִ [9]u 6Ey2ϯf)Vo9DZ 1\ )Tnѵ45$p}?H8kw,PEχFDkE@[??`_)i ߹b-^|/tjuB4+w$^#Os"P{3NCnRl";hdbwAI!$dc&{':-Oc }TPwqN+Ӊʊ>Эm.F&{tcaZ{K3s2еo{Ni'.AKn=B0ڄ_<~Tӑt"`4l<'<ՙr'z CF"ݲз ȴ L6OWUNLb JD3xΎO͂y͹6 9v)'a1zKeKKESO "T7F P^MR$l{+dm5uTD5jc5)ikDU-ų$Pih Lܪ1t=ՌNvBK_@ʮ#4Igs˄;h)7ϡ>-IǼ ҙu /[}j>"D*B hzHx;ڇ r;cU@^{./%xc ѓpF,3O0F"iY0oWZh>d;x pܝ7\TY[ AJwvc1 M4#AҲf^"@ٳ*U?-z%إDSxCO8Dq&( ]py75 t"0&hoŠHi.>;ɽ#O- M'k?R sNxJ\|fŀ0C7 ,r0 <. ^u8e:7T"9O<*M0qE#3Sm {83u)MqS/A~wLL/ Kew1Oưns(Tᓧ9My$%CyND7 5y^2v 8Ni9@[oz3;mإƥ'&sOӅnk7R@kڒNqsUSws0}&fE>o ֻqQGŵ #íYu?TLg+Fy,R78x}HLT)FARJwTif 8W;OV٤ =asnԱqfO#yIw ǣ#bKT{˴sXLN3ȳ TwlA g 647.v/j=G_.jdPDdF8// ]2N jܣֵӆ$4(G 0i0VeθkѻATM^oB`Bߣ8QY_)m:zǥZ"y^狆W/&؞phXٜxbtxCN88/+-Əvdkj49,v~ KE *exգ0U_bZ݉E/U㣣,ױ\\(/~9G#ua?ksSvOg6a܆b"`+ )*&cT9 mn.H\ Rf8xN!abHV(?G«]_(xRG32͐L36)&HXi D|Cg$iTH5WHpƎdK>qSr;IܕL.9,9B!_+:0:pܜ'>5\qKE//)B' r cs6?-.58&f AM='zne1~`7>P td֯U66'.rݼ'yqkH3H)/< £+'6N(^)/*̽QmU2:8.;v4+Wr?|w9,}*o.^+]JZ dpL"aA$5N?XQ[Dfg~9Њղ,w@bԐyNI6Œ.+Ln_qw ] =BD_ Ua2IG,tcm_ $!RZ׸ ?a3.(#bB*=,(BaϠghui"NN.1HS :TZ:  }Ӽd^ZtXtl۴,Yk5rtJkn݌'^i'0q!]Z*<LLJ$#[Jxg00B!%ȇSB) SgQT es$̋5AWtiAõY C hja]^[ phZ}R} `m[ָig{en.$bg^FJZN ǖRr{s8 81?\M:kQً ]bm`fzWgHߩ|>OHA/6bňZ/P| {NгXj"+9|u6 ^A (&[ʫ.:,yO/j|_lbB0vtU0*gY_Ñ1PWhXdڹ?; ˦e<W܍$ק@0< .SW/y8*\q[h$)q8\E ,[axxYf/>Dpl7 /0"+[qgR!1?~/m F9f6ƀ+[KyM@ ߘM%)1ʕQ׭MXA ,'AհmGjmF gt^Uu 6e&S5p8' ǵJ%!0S^k$ VN8쌸BZ8[tGtn' %1%iVa LQ3B; |n E(QߞitKIɉsoMPǚ}GWM&hrcZdaՆU^"v^ŮJ4x5#cnO;UUBcVn/b:Q7 vWHO2؜MND6)w-MԦz#ZRy$Q(*~SIyg[\WhkAL"EYgqZ鬏Vs?ו#a& Lxg[."ÆkłaA%,*6eP͕U^a/;^iOsbvSkT{@\uʩ|~TeM;~ ~4Ku ʖ}G]O0ZI'ftFv#f8'0jp>;!$TF SBPC5"V^0t<;;KBREt-4UI'FOy{PwE<'ixj$Σ]Y 56 9-^,?"CoxL8QB{C?_Rxgƫr!T:_pr mmO RA30o AkDItaiݝ#ɤ[ #2VȠh0T:㏪N_֑Ʋ,!G8 HT/VM wQar(Hi:XN wnJk)FI(ַ컛E%/04PbĎb*L0c⺧(+EH*2{"l{s ``=z[zۦɗn)^!zĹ?S_9Uhx~l+4ݷA)3Z4|6ñ~{AĵoQ%ReU=xmX"G꧗ {̯ fGW"_Qϐ5+\b5nlI"NOT[m̙@jV>\ٯ=pŷt8r7x~;8N9n- 3;9-wg/r3~}AK%L?d4xk0mfi"[/$| j9ztcFS |L\}Iqi!w7# q`CjLZP#CۏYl B/B>?qULx(oran/AuRx-zW3X6jϺې]L-8-EwUġ<9,y#o}T̗5A惇W4Qk6S)9?ON*Q2y>'dBJfi$t/' @ņm$k+o _KIs k#60J6gnڐ6p=n3-Qq> n|Pa'ێ;8yo /aq*V f7nTp a$WN҆Y~r ωvnb1}h4Fx![WwmDYN/Z*SzHj7Q_ŬDd=4r' ~H=+Z4lQfj&YTl @!Ʉ/p~__ƣYC75SmHY!k!lLn u^љX ?g-)L8 {plb9S-ȏF_c`)Xo<~ /c;Yva|*%(` zAt JVⶅV$b@W͔ H5څ0'0es8nӂҶgc>k5J/r[rtgaǰ.*8 mv~갮a%ʩM5^Z~o4c57(ͥ>RxXl5aǼ|OpjJleH\2ZyxYH8)WL##K>!YE RcCfc@G~;)Ё@/Εbie0f*l&!7k7ouUDRASQ6;+ebݱ0*{#oГhR"IvE9,t8iuGɂ}}t [+'S'Nkn o0p{ C[б;*z@{Bbiɪ6vA Hwlgf`ˡ/6|#L$QSkIM`'8v=\Gt4жi^Kd=r}5#iING8 2 {F1;3<@fHht ۛ=f͘H=%' +EӺ2`\;ǥuii99yn-Caoe"(Otw}H*R5$˺)dp҃=aa.GOF:FG"eIY' l;s< Tzx#O(- I \l7bFx~,m`%ow):IA־Et8q##R403̋EWMyFۄ8{xKɩQo(8/ͨ2BWtWzyd8E_#O2ǹYս~.5˅ŋQJ![ ӝtwDoVq Oto{u#,xmk衃d|S4c YK$V7)7đ̀Ĭ-)_ǭ/Xa)%*! W ƖXZ!Iˍ)t:xO3Im%7)PuPO,  =7Gl()[N]2n;'ӿQyrv.Fw$6Q7S DPص+aR >ʛmYOY[BJQjE.W.fB=#2N{ T8|ʷB[(+ 0ܰQ L 5Ä&˵9 zZ+(%Ή#j`Kahv.S8A_sMRE_bxz A6C5Pƚ\6P-i6;:A 1Sy )_3[\fEBEkZM? *wI3i?ahj #eȝ"pr9e3E wͨ_L7 &OU\^gxPJeIY)-n*62n5f(v&M"3 ATE#0HZiXBlw' f}.LG S\kO³YMfW*1bA1z !Yp}nE9"mfl#S<*4qTX GQx6bm'~]mǗO9S` tvdVW`!y$B1o(NC.[)}ıӱvoOj #Mۻ>SUq p[~ѳ*=˄+C;59 y:2WNƴ6ڳ~4 #b}Eg[7fgTy(5pQgI_)ɺ;ƚGML1uY)x3թtxH jIņ|c5mP8*0HoAD Yg4Uw&"`Fnt*l~*;d9^ܛBX"ב(?vm'16 $uP7-(Y+id5⾏Q y zT| b{AĻY9ˈZ)xdOj+,uf7+Je_qXd ۞h%DznxDzHc)cLG`JMbeG?:]/-N]6:+^ ̑F(}Jx5 TR|ĤTx9L.^Q0U*❺kca;ygEGfa{vBabL7~q),çWyGnwJ7<_I/2{gמWErt*'3Syvd{yyjr(L,n_ h_X/v8}LJ;; i=5?:W%!e>5wAi=AFug-OfJl ^ۇ('(g>n%QC~YT bd,=hm8j5>^͞ %@4GBm5l H1r:c*DkҺ`0+0E61|=c$OJ'#wxڊ?`! kp+,!AWYLm$4zS6 n!BW2FN9̭-/p#B[M( w,U2B@i pP/>p~Wd̦to Ԅ_~w^BԏӺhD6J2zq@>:`A4m@S6]_0Buhed+an ٨Xc-#G)bA  +ppAS(pTC00E:6@bl)Zɦ Gōx-ya Z^⍔y80h"TbװOح޵li^L`-@" T,^m\`_f6y4yƔa]G\}"u/ݎy';bik(l]LćFZ$mcfk0!ɨkd.ו7τZbd)WC Mx.Wy-ĉ(890;F!zxUt+EXtN&iǜy_N"Uރ4lx6"S\T]/&OĪU*f IC˛5ԡNBq(LdeHHf -I9 񐎟J8D2\NjNz'`~B;@-i.@yJjO)ܵQ(\LbʹCcGViԵ t/ݳEfvMԮhZ^b? @+nZU޸n0P!1e)>))T>PPzQ"vu[JWSdzGaܫ}a qLҬOG]3Wc}< Ewf_ {8$1L%O'tz~leG&zKoXgMhdjcg%#0O tl "4<&%Η VGf~^R?8LwpV:S4+Ewa993( F e՘ FE>ˌd:kxY]2PݬL ^Y\K&:IN%BQQPTG}UaQp;[ w*W.ť@ DÕSHC ,aSV bep "]І5R 6l Nw׿p.5^hP8ɁVAPntܒrI?*\*ݯyGIh_WhPdp=8ohEvDOdי;VSǻ8"ڜa,>ZF pkwKr-M#8TeإȝD S)e!!}4LE:ʆ f#+OVz !OswF@wH_̐Gk| 5ܒK^k_.1gQd>aپrjG'4C$ZvMviM_x Z/Vu%)-5钲^|1uި (`ezOPK|yjvfmWƜlڳ,Ixs.!?Ok}|&^ܰ ʥn>Y}wb>AΤR"> oshB|Z]^=kamu_bM"F҂z W] `Ubr ׁ tEx 5I* 6 y. }oyuyz<EV k:юKCrObJzUY~FkZxYȼv6;=3p}-:Ij_n Z |;NdxR8{<’9>(BlPӜivдx5|Ktu4:R S6B%$lukjxF nbWbtwa&%J^;tػNbV0k)nIª-֒4PMf'+C;TM4q*P.8; H]D/:YDKxc'̆+St(7%j()Gj%&U^Lg=$q"ɚ+sυD*B <~-b#yFhe.@]p 5%C=KS^ 1L-&F7T.SKpEcU{u#2*kÓ}_|YbH^'wUvmd--uJBuN:B:Z=h[bޟp`@T\\.-L~>p+򸆘 [@)D^Ӊ/Xa@ks6ëKLE=r=4[ឣ H[βG8Į&cMQƷCmYpt,Y^nO#$P |@)Zގd[9.Rc'\"V:6bTƓ#7Pt#H8v#18Q46竐"c[/ćKW-sVDGF|'Tj7튗Mz2k0!3TF}n%\"<銰_Tu /(c >q3f'ܪ|ػ"$nAeC>P%E1!g9\]jNRX' ʿdMfo: :?)]jJ._(Y`Ճaoh֨;N|J;|<-MZw4и^nH/t8DFb99zGݘ:1bnH?^$%&((v;ڈ4(CAL-6*۫q,ȦQj)KV˘hS!O&^Jؖ/q-"pݧ!JIӚx ռZdw}27+D/qjR"23f[bV(x˹*#@ܗ΍Swp cXu?җ;9~+|&zeR!Ydw*J#s`%<JV =ńktG6&=%? RX6.^$QSa:!Usolah6=ğo!|q{ެIyt*[q aU{+W)U'`jEW-WpE!2a%.?t M@ #h9V>ǕgByue*V$Tl?UҀr#s8}u廻fNO1rmjE lc/?q4# ǃ<Xmc_b2F}tԂ\9A:VE9칚̶Aq׳]JoOR֟vT_s4P3ZEdM=j-$b9޲(` UyM$ZUH鐭x*9p[Y(H0?'Y(p-B$gV,sqhS`#v}{S.aH{Di%yy;  Oac/*JYOd~j ҐD536v`O eY)6tejУq1dGm5X6EJ"jURZ~$jR6ǰjAsHwX{T@9,$p4ӭծt;On{0(,qS (^+LLBW9k7YRWt#+D㝀y?&&m֞Z?u}!ގ3F1D&!?C e[G[ETWʼ;TL}Z٫y9#kDNNb|[4Tz~%7Ļ- t$";5+HXÕIy~֛H}lobO(f=r$`2Mnj19 */t{{Xo\|ή@D׶4=ƴ-kM9g]p$$1\"R&MZ"S|ڿNtKHƄbR(Papwy>X0u(zLl>W򐎍"ݫv#:5w3@o Q[R>yZL#1u%%E8X;(E#wY15a h{Q/3dD(&sx1o+}mgr53ԟ+C#4u(.R5V9I&;.9+#\ì"VY Wȅ1r>0DהVwW4A|5CĚe?3$#%=P9>O$:[D<.nc)jXu ګju[,eۃ |BCG&&5b!kIﰑC-!u;;)o-NRXǞkbIUˀh Coמ3L:~&& !桂-74u5V5k_ "&2'*PYx $[l*ӻ&&5ny`5ڠ9Qۈȵpx^ Ι8JuM_ҵ W<Ci~Q(iWʉjErW'nMO žIia2)n!wNOW/~Zw__"ήƿDJ 擘—phR$)$KA, 9Axik EZi&^9(*zᛏ̞|HT5`_Ό"k'4WګRxHP#Hw,rPeIkN1n~ ~5\m>&Bx4U .݂{!wd1V(xmWBo3kDVǸc37TuJz(Qm \gpet'kj | b{>kfmmHbP!a:\Y}: h:W_zbZv}T/<2x5 zjbpWp.'5Fj+Y0/}(9f"r#Br7,jxЀaq]Ϫ %U03``)_|fਬSNn[Lat_|01 +,ţ?7_I _ՑT.Q3ijib[!\_JgusPKi^4ƶ8ˊnN,R&J "S>3Ю9 7 p>:hԌ(ߓl;{) x*Ů_>7$CqC3ĩ޾b  ;3Nr8E7r<UmwCc^H"1:$2 l w"SW_5د@#NMz**SĊba[ 4F wdQ32|x`1.{X,|C%S x(0.&ҟ^|s-['z@;Q2,d3u8^n>}PZ>Nu=(_Q&Xhv, C fт )D7; se ͢;Q?aJO!R6r'LK~ͧr@H6tH?OZ+5|D3kшJjߩ%G0" ũ *1$Sn,yNIx.Λff"1j0m X*nY.ˬ95L oaxeTNмj,ּN!6{w9vr!q)NHYJLsct/n͏j`gt l4{ ]I Q3V^.[lG71$0.=bY!jKφ])%ɗIW:7"mooJYUd3gLy'D׊f\m\54k,NL>`tlݞޫ5 ڞ\^JrDU-Lȴ 1;KPgyAuG{l:Ax}4˔3Aif:CGO3neׁ)ʿ֙ !\eQX4WilUZR 'nY+' ,WၷsE^ܫfX$T kt`>.Ț2-3ȁK^rOFoƛ\s/`I3 T ^9[l3 QS_; 7;%qqd)n}kl@vm6nfkT)ÚRe+j"NPbwAœc̀mݸ/8=nH  MkvC[$|w]2b_ kQ7~BW➲8ΙePՔ,TUp֕ \JU1#[OV+ 2=:#EVxuV`rAlɆ#jX}#[S"Jyg=83/kPK<+r[nsշ+ŷGҡ[kȞ֧T}mixdX'-)^+͋RZزUSI, 6&ٮYJSr‚IhStSY8QbJDrcbD^-Z3]K%[[=虞\0R(t|7(L)ƭ@G, Z#Btڙ{DYAEuQ-(03\Zo |,Դ:L"Im kf7 en2"xFU44O Ma 7~7;Ꮤ܆wQ6{D v^l?ו)F^\"B*ͲǠeBMp/d{V@,VТce^gPZ#ߙFE>%{W1Ӥ4¡am_5'Oes'HN]v1-Uհ42A֒6/3mbu+?1r#T6$)#u01qB}oO.D[\ϫ[ٛǀj w{]20oa'f.Xw ~$ۇ~[^JOǔ 4Vz"Aw֭]W`XgZzjd˵eb?QϬ'σdBn iyE c~MpaCV=ԛ~iT$@PmM2oJ vv`|Q]NI -u2bjڢŴ/l KuFm\.kN6扈U7@dzuԽxnUvXC(3f(%~-!s}|IӾ;2d0R%xlTMc>CV~ͩK= ( ˸pJ`RPãU}'i ћϩ Ѐ`z cs%!_"xSu3gJ:&AK})CؗڀF(S ' )oX%FaQ/;O3[{lXvu)} ȅؔ5H+ʜ9M:,t0r Goҽ5L7+|0X /k_jQ:bN&Ÿlv};D|Ҡw*'L\˷ -)"9a֒A`z_S#}{!LJԃdg@fi\.{Zj^C.j_e1kKb}ɟ_ejE}+g҂U٘'uI|HcDeӾ$fRvekMHgN4968cpK(M[%IjQR9Ưk,lI3k mWq|E)F8l!xƩwԎUSvK=%[FD;&Ԧ߰ 4%>iч}PϚFLXh'6bAJ >myܓH6YPX\ޙk@2,@n3uK&FsJU0IOh#E2en.xN?_ !aށt"w{g .j%9"Zi/t~'5rxM `RKf2o߳GL#g o${}Y8'2WMPG8-ep$+ ?^ MwM%A-;93xO!F^W-;^ދd* Q|+LOF;F^!mP+@F`DAW{TY. wo]nˡb QC~o\1 8VU .ڥ5K,/-8$I{bR6 a21HyU-cՃH쯅뼓~!|Fbn-֡-%#'MZ)J=47FotPk 3Lr`uqT(Vǐ+~C fX*%uq(TH!-LiY},{CVew#eB܅~1c16u՛5fE*X,$W?0NVQ11 Xî%v+756" XAuo\MtZ$fBM}C׮xuVNJ9صZs6w\n@"ObEqP^]H<ʂ6L/E< -ݳgr]'vOc:&6nDiDvV̄G Irg[ߵUh!! {u[V.D^FjT] -^ğr95,Q+\/i5ݴz)Dhi 7k\_n,hԈM{y&6Hp{n}I*;'8n(a]a>!&wd 8?-!iMqԟ\V1+6F簵UCyV5휍`j"23~nRT+{5qw3*bA"DlnH@E7e ޿l_ĪDDpKfu13x:V~`'oCX%sX`R>N!ZS b=۱[.mY'ژu|@CWpfP }1}PgεpeȀ KU p/\Oد?سsEA|<|{8#3hRU.,;6:- 9]1\}[(suěSⳛwx]h? ڕY#lc VӝoݹIRYhg<2DU EЪusv.CTpVITIg^Տ]EwX n[$|0K6g ѕ7<ӱ(|]6b-&q*1M%eDB;y, E-vL܈#T-P־.9Et{"q$O$庿T|vvaxw>qWz/Ԃ[GOTJL':7MxȇB@UB9m{z0sR[*/ёRȪePx.KzC8k--&A3|hX+JFnm A%  ҋU.6Ҩg(Ħ&dtuP'˻GsDsJY.Gn8{,:pqԚ)HZ"w'WvI?! 29E2Eoki IN?R0Wiz}Kʔh .)J\2le&QL!g7\ـ>E~@4O JJ|401d!+:~]UpM!6ʞa/|T:싖#ԫ5)>@2˷VH5%$<@⥐u ~[@b(.2M T*'HYkGvX9yMu`y258`{H%!0(-BZށ9B:&4o*^F :k ㆗ tY-g|w#L޲Ľ{ΖG´n\-O?ƕN{S:e~{]aJHVDMJ;m C!#=M%Xx!H\ڱ.P85u oU7]}9ǧ|v Z, v_86;t0/[:ߠ~ncHeq 'u2U@N }?ɊBE)}@ƒf3m'QFXilq-g3yo`g%wp,I5 8%W^5;43BUasa(.b$}Z|\6jP%4jF wf0v}q{3p&"ضh>xBPZ\. =T8o^+u T:|{#<]b?ӵThu\#J}HyԩND[PW,8kkŋ4jb ^xYbJ:**.qUW$NFBiKo"3_;><68:'8`L# O4'~>O Ld1 ̎pos{.ēS24xbK`ybWNh:?2$!#O?OCC.PQH-ԥd[wсKk7I"y}Jx:K 7:j1aSK3JK/{&AYߧb!Z YkvJ ̒ S>c3W6" -4Fƭl{dtʔR FGPWM^u0d@H\Q pBGl31L~d8X; %[n"}\5mZtݱrVK=N]T쵖J0;Gn`j8*к֣"n'.4FS.ǃwZ,QԤYj鲆S=R|Mdc:j+/!3/l #]RA@`{K_ҧLoJ;_WEVHum FӸWj @rEp^;<R¨B" ~2˜d 7X#N^hǠTa92τ?(l DrL7;$:Hî/Jx mٟ>OG$mJrJr $V^&Q\ܚe k%4Aѐ'}3,b-2<;|DD|ё,B͚:M&o>!qâfm9'i̞-}hFaa> x A*3-+Q52Ȱq >φ|ˀq%R$$Sۦ$df߷hֶ7ZSS x O%7DlCxkpgV7u jߜM J .v$˾K݌Io xWB]^|@m>CPِs:R: ϗ`LsM&ǗQ6$7X; o@^άa^)1#碪5%4jxꛣH` E%bF♉-yX̪2U;sdSilZݢ'4ǧɉWӈOt|ތC?|k0}u[f 32p2novnf:nSn!]UŬYqGDwI/!Sfnk2W[/ge&E]* k` 11#xK3 ' ڦʛ صyK{j_́cB+c'$Fl~[y9Elͺ '_2ÔBnt?3)P`wJg4lH6VD{t4 zC?w![ G!N{N<c`S8[%tԋi>,vkO&aQ5A. l C4i1̋t{H῔r}F"E"g ϽW:׆Pq +숷Zm@Bޅ ewbZGSۺeq]z6u\IRft=t(cu˒n,[©@`q $B=ݙί-5dZ&лtvo9hװUt7r869`Ǩve12|A* mx{ג;9p9$ tysDžv½S) R;DD|]8RMh5TGqGƗqjCAc6mvp/B [F;Qc) nEsfVMFݕ࿧:#z R?ƯA4%B ʦ%L"..0|; 5\}a7!]ƀymX?PfJIo+_6o˖O.3k|ӄa=GyX|Ka(cS *gy,M^U9aďc[I%:V71:F+xjP9]_R{IKV(|GF8ul,ws~ڽ F/aEtٌ~H|OĎmyt !2Y6p ) u= 'TTLf( OK9( Fu/>z3T1M? %lgFP&]qٔh[@eh.Y@(n\lu0VRfR:p]X(6d]",P&p]{sݹ2^,3SR^Y--n>W76ýsh}ė74pwҺbX}t [?1yRUZ8v@ =#E"^&!FJpK1|>ڈQ"̱-8Lr?]|: 󬭮r,*bxxɔڿ5-I(VaCDPհŜAXft족싉cfpų(gAȖ7yR )i"U>%Yrkt}2mV =ܶ ϚWjr2 ,`/*J6(b/YQ`!be?\(>P ?(s^x;a)qEF:, 20Yh& {o ѝ㌆тN ۲t'Y@ࢶ e,C5 -K03HYڵ,k\\o84~Rw8ʻR嘏T2$io-,Пea3RDqh4q3_zsZ@f cZFM<[?RLU[D)MP:Fd 0p7H!8GI?=ynzMz$)di(PqKrŦp"-,@vd-R QqKZZQ=ZLʶ"ҁƭ'go;p̳Ȗ9ZX|z$j27pjT1f$geEޜ-hb1om`4|jm[HL66k_v#+]N6@v:gOrʩ)B<ӫI5X}X/Zf藗lBmz5[#{ږ7L*J Ɗ< qR{tm8o%0 <3]27" {=C_աF"0C'>E7oS˛35 +-G=ݺLzÁl% ݓg+Hf3YJxb푰s^J*@8ҸG@Ge_!f0V\Geia'"|.V?q&lpAql&&(;+ WG^.+%$o!'Ģ_M ^+\t sxc#d@ɫYhxUF Pi~s`%B%6_GZo¶vo_p<o, \ oV\sƏph6qCrl AV$ ]3VB?|iAk淜J'+l)#b';u-+W=F=luH9a73Ѷhy`Y @l_:Z,Uׇhn^~E0mdz6i!LcqZjE XACq5&t1 +szdaYszRcPvf㙲,H:ek(;4x=?/jѫ!R^(5貁eIbX37A|j.{;x pyyR!穣&Aff||o)VTI?{{+x+҄Wcy8p2}wANL1SD;qFL1<ͬy:<_;nx*qƟGgTy}DHtIUK#%ǜz1z_# "܂'V@Gwn9Fa֜2]xfy-#S2m/hzU~5TR̩utgЏv薭G{&;hA6l@~{H_.kDTv*¼ry@YUiɱNn)MaEqeabtg=aR3eMGUi6Z-Њ*ìR['mWY;"ސd7d'W4*u =6DqW#_z,-wbj⮳iW/9{18+BT*t05"ͨ1K֍KxMEǾma T+Hǵ9hZ ZHT#$U7S @ӶW8Y-ȕ ","!`TMK|tgiOnahZ V!`{PHvC(O6rE-}6ϋAw'ff _ڄ'BK3 )[ZGyAq-p "3`B"ïRN1?5:{_]D}- "sZ)#?D6k3d)(^eN[͉``|DcpT3['LUE91Jh?eb I9{˖aNkzx;\wN&wa]4~R(ng'fQHnCpކ\EPP+b )U5WGn̈́|S*|i{԰C֓=]Ò^vCr8jd,TÞҴ Ӆڤp;7 `j2`ڪĨhcPd^fC{1n͇H6E 5%rbn{&5O0$N^SpHٿZ U%;]T5aMb7_ۦ$,$OdϤ+M^W"t(%Y6,>~z"Hֶ3&9OÕM=0Eڟ˔<Ќ"WKmW٫MeIzY|D  ?})xrWPQ| @vL`rf{D0;] +G@1λk!rgBn.>w|vsӂA⦫p 0?8IqcR W|lu5Un/j&\l ,T%G*`d~*2)i@*6f,r`CRm+˚eV~z/xRƷ57N`d8q4f8W&r)k X|HV3L9\$20~R+pR])^L c!KAOlԬT=9>3;!' !97B?./![5R+ژα?F GF\%bZ.dH=TP%\U Z> O=f}nO]WQ &mr]dDflj {#x{iw'qắW5mɉ #*94]'?!Ofn _@z+jR(Ž\v У9 @&뫤n~]Nӣ"VlXà97ImY)1wLN~.(-*~v~NUW?zH '%znՁo$ Y&3asw[-'S%iPEf֔= a".~f<aG74O)+Fy1[(\ * RDHj?9UPҵ|^L=qX._Wd?^R@|WU/fqGϛ{6}OkX)]& R0{VP^pf0},j}Ft1ۿs!~{yy:}>gbJ&`ގBQjha-Q;3>\[Ķ;&g-Rhvyk]/#6ΞEy%u`0%oj !v&W2Xe5OgB5٦!O>JK:hg@Z-F X;^ IiHbLx_؎m$-$:#H5[(iA0nS?lɛ=fg +o+DU%J(]k!0.G 0+ro^of&W^**Pr ARΡ DpϮmwBq-ݯj%I30W_V$uz:bWywQ^3$<{9:I@k/iiܩ?^w[t0 2z , jc+awQ2PRg[fiH<{im&G/,΋ԊZYzdƇH,YI5&rMmdL>T;v!Hz[m)Qy#}T><>܂NNfJY8Cr}Kڜ88*=|;#⡮é'At/=G9O+Q׻"HyQZƨ4RA)')3y~x/scg$A ͹>ţwNF튅H]k]G4Ud4b_IT73e\#/n ٭<UU;eoԆ'1#;Akhl]Ӥ<5@-JT3'2M9qGf"`Nz zώ.>X}>u~MHU# 7b0]N+c_%zP?φܹkƂOw(^@r ĵQƼ7FlȵBRSTQn>._Ë&I^6r|?C1(3zWT}ocݐڸ7ɓ:DZApo` ~Z6OseN5xȤOT;Ent`W Qe$Lho7~䍚hGˋx!pU]LWn4&#Z3P?Q~✓;s}*饴EJ7z,M=b.)sĺ  z:`s3pjq VҞťrg[\%d©Eo[mQTu_ o~X@2QhNd>?b}@dMC:^2ɫ|3p7`QH\k ˦aPҭNRMR5'IG(iN ~a?LmIF[ڈr\fNi kT$?ؔ?ABфE7k>8i؂8FoFL_:!kr^[: 3feQ&eHlk12%a٬ւQ ?u}NÏJ _4 ȒNo~2㢳h\EFq=;@Q!iV1 xAgje -m+k˯T ~ 7zCV1D[TFyGg=I1,>3$C-kDIpX,nZcnqj*3R'Hx><!쾟u%kK!ddm*$"g I%̣y9Gң8zieD,J{ty[1jϔ=8DQ]ߝC2BK|GLABUrLftxS2!8O  ##ttJw0Y=#&%gb>3iJDƭE=)V6xnBLW i ?Ҟף h۸i.^ ١-%*CBפ$VUy>ZJlt/7BwKC"^VlD]wJ mnWT }C.rbeo7BC%QԽB0s)HeP`$1krtkWd cqO"+UoQe.%CsWw:&]XhPF#+ †"d-Ay0 D"d(UVҥ(CsУ䡫Ob ckc]}q!1ME~~l>sQ0]"HaMkQZ'KsSKͶ'A Z> A*Y ֮apBg{0沓lP^M0h$2 8Զ'(}h2uR|P0MUFXSw0^=Q"&Fzs8[Sb%8qkd1O쩈o5#> } ; on4@ {6h!mh!% ?G`& \Wۈ?Y;;c3%K3! ?Əb y⊨ /#&T)9{6kp- KmZwa؛rcm/y@RdM{ua9 .?'3&i3[8|_S`鉪.1R7'RùʆNL\ަ%z(M9GJ+oZ3\YJƂ@V$ mu$kwb`QQnkwtLdq,ӫ J|bϪ,UDlxLW>BTԫ:8,دt֬h(Aq~i#Þ-bo'φ%?kAc%9FxV{p= )ߴ}$̨]>wCii-pKw 7v۹ح,5>w suĉa s_Gop: 5UaXgn)f5`ϤɑD0oUB'B<0ՠCG[#viiYG1C͌Bp4hKTq#oQVWW5g@կ)Ͽ**\#9uSQtz\'1^,N1܌!P%`k>Wus{F-q VZ5ZL2inC~9`{q74PuĂ'Z1n@SU#0YХFwEN\7W R/H dq3qn|Ͷ!Dބ^/Q=һ̀7**ĮTG''.ojo?-0.fcePy,N1 1?V Wxvz,vU(FH>ft 6U~n$b{ff۽35S IiJZmKhb b$g*YZZ(jIKMpp0}FeوX,DV`IZYJhrϸvSu]~IROZ!720b_rWJ4胋ts`{擱2eFıkQz*jRFqP bJɎ5W:0ʹ핇;>y4[|ೈ{.S/\q?MI!;׽:ń'{ט1N:E@s j¶%N=H}1N9M{0+}1aFUkx.=6%::*W߫Ha^G@w^Nߢ5Şh Ƽ[ߑlwrn(L}ZR+dr|,X)[V2qψ8@U$ kbi'2ms;?*I/?q uDo\w!hg*9dZO7sbEv^9h:mw`AD |ş~]3hgg0nx]5d ײley9>MAjCQ-֠Ǖd.&#$՚-yb??!\3ȁ?%g?ƛ ˡ< >:cԃ"?3'2)P"pUdjMDrB-lmb!Q[woW̆i)yGwY' Ey3*̮900ctv{A%I?~(VQ^d"7=N $^؉S22Nxݰ&"~,!=(Njc~@i5NC&!}Σ=Wn~q<!;xEDb&`XSiso[j'c/>l>~Q\WuwFy^Oɽ$S?Wn3'v `R\TwTޫZY\ UIP =ZJ`f,UUe#~r0LdhPy+θrM)SUQp/Z[:;ջ 508-Qw(!ZŇUM_I9":񆚆^rkvFOPdaM1>""IZ_:J(-x{Fu-A l1UDYnxn}D-Y*뽉b:9_׊gm[wRxwoY1 ŊYۚs_TRPHU^1ءlIN'lZRO!ݙ:MЬTaڧiA dh'4de4yphT,9.|nF(Ubᆆ#x]PX X cRsxT:?McsQl.Ex-Rx^2$TGE"."qm$l&lS/lv :x Ԋ({ULJ;=g)`n:y؏{P1} _:|z,=A$({ဓ1yY#EX9Z]W BBsJR7"]W0 p;mQ3ǂ;|W 38xCJxM땃ֹ 'ƤTg9U*vu>qPDjk67֑t{OӢϬq?߼^`$$fCؘ%,2o~c[djhYd Þ+p&>I[HQ8{Y?h8wJq̩D1vYmjjI=uH3Sc~+=r~2ii,XKY?Uc(/{쯇ߍdPH4Q9'2L=/8U>wJϟI:[~4A4NM;t:e9c{>*y]**!0E>ߖKEt or۔fʬZaKI\N_4I'5=x;8!(Ib1B( 䉕˒q7Z}KM (1*vw:,vs\qYڽmrDLL 5!| ;+(; WgP J16hSJv=\ 1࢔7 B07,~ #PLhf* IiIcn,̘ԑf: +O0K-)ęڲcj29WKLvE~HN270SmNu ZzاVyШ/՞ tڲxV^8ٶe?t*Iɏk2ݦQ mM.fM8tel[tIv!£+n+}&)<iR7BUZu\I&~#->jQb BxӶ~90E \(^:w[^.݄_umHz}{ޫQTDMH9 fujD{Gb'o܅$ ZEax'>N=b!w}$׆Z -BY:ZZNr6:|>%b.(&i_pVmttaΫNpp@sٛ˻77N3?taFfc[1z8+ B2ūm'p}︋b?d@+%Ս#eCqAw`3X+ !1ӬљJrӧ׊r6)YͺGKgڎڄ6.fXw LDZѡwHحK@H5:"i>ߚ*ХZ]<:]֓ҏS^ǖqgKiUV 9ezå+kSQ6iMZzݜ\$EvM+LB|"IP40cĺЉǩ}HlƍW+*}K 3 OEш0I7q΋+{c_LDL]fϖL 0JN+hp؄C%֟gAEKlXb׿ǠZ<-HSqqM17{P~eD~uAr *JGԕs~琓M?zg}Ţvx!& *0#L,9>n~SMo9 Cg~mHAO|V~U#yQ!dbwAehlLaAX'EF(i;imޱ)tj+sݷ3($$[#QnIpk'[@#|DiviBt儁s }؎ {j* =^0 fBh քhxNGmRG5=ܤ²dhg\`03Vҟ6(T{`hY76mzY;MDR>8D6Ix&%j^f ;n0Ėjpqy胮׸oll ؀fdѡ}&謯#eB(A ?pU*wpQG~P "q_~}Df>4*V^C¨68`;J{d?A .fILZPm,k1Q)-<0X~Iw>qetzd?o!JG>w>B j/ XQ/H3k踅k;؅\ɘ1םi? X8oD}54"QaVхEO:vOb h`"9ȘYZ5`%kCA v+QW0#cHH.[6#29k|U%I"G1aHW!qvLTD ZJZ蠹k1L)ļܦ?A5d`-hաxߑ2t4)6: XUH>/>B x9Jw Jp\TϪpBȰ?xw{4y֚ANڳ䠼n,1uЩ!q-XYQ񳴴4OոZ:H|a;ñKxGB9>{Tm+־kȞ Sfݦ bފ55'Du^r_x‰š©t42Dz60.\!zBKRgM~yrsXYU]3"q.Ba UJ׵@8SS<[>P|-)>S``=EgfN K86 =GVF֝͸1痁Txm.zzz` Y3XFN}P NGdrb<%JbMɸ9HL31X7X }!kQI`hi<cJa.楌JV '6EQnHs+*! xGf{[I.Wbg|U">A+I.{ xl-!%;]v.[cd{QM|zZkh2 njXEȗ@];wBTru䨔hK2VLd]f98bk٘].GpDV#}7TЂ`"pHd.֟ +h wQC&$s$ؠD{daV4wp yެ'es8_˲SQK=G!MG9vqʗ2t[^2+'EDzLPn׵{~SBb_4\1X9DbM.r&5x9dxCvoQV3DxƕyJ*ezɹNN]8}M}1Q3*W۹Pࣔtr?_}o6kD sC\ʾAŠ1-3mgfEk,lB kbuGn5eMX$PJrȱuxޤdGq6s3,D'c}gx9n!HQ\KOOnEùn :-àى6 ǭz7=(KL`.'˥S;ڝ-% jNpQ/g]?#by"LxnK?sxh!/EY{H䱅!=J= Lzle>ʴKH㡾V%ZeC55,~n^ z1mJ*964O;aՍ+VLh*KDe#(kuTbΔ ܥwnux4Xho =: Js-A!p&7{K %eLGCCkY_Ìk,I7SMU/$\MJ+en,aLJpKo"?䋵ba`yHή=PׯMS ,ge}uF>i^r rgQ˜A'a6o=uם-F5N| y]"̲kkNK!zϼ+_>W$vT5!Õ>ME̵]@CÓ&!3MR`Jl(hNJBCpnVػ.R"Xʽ8ʣ5qNI $< -`jd[}Yv\~b@F[EN/Vki >5/kC#E_KP,-[3( ́ܟ=xfyۿM yEBZ-յ\4ࠧc]-E4Z[( l.d?`ߴm (9M);[ dwrReImdyv'G٤͟*&m>)~1;B,+a.<<ӋُI(;5>j|F%0~)ƍmI{E|UE,bowu1 rPm7r]> (uy̰ѲA; ~+|l!'hȦt7)|0:6`u}4|@Dhz>fyJph_sθ}dSvw.$%%qu6d5K.c1 a, Y)@0d~6t+X '䂢gt#z-؟1 tTH+v+]Wzstzz|pU@j %x4F`*xnW}U&Y4[}>hVuJ q޼E@YLXaTSmt#ҍbڜFf}t2p#v{Zaݑ  ?o_deC(vó|Y~XƁN{ç:Xt~\z0f@5.[KL!QUn8_175x.nEDGƍftmjqDQRf9UwwH׸be2:6"XEBRGy+Z1ɳ> ."Kũ2CyM}i^3DC-RSnϦ-$b%: V_:>oDuzE*H[=Tyed 5 8z~ I6脛8JExݡD(Wtrxj[5by[=AYxASPncHBi!8]jS) aXyF)Qd0U5 JX(גlYGo2 X7hYz׿>~KP.պ@nQ7cB<{Ml t@}֧C7ZL+pZIP13 XrP@^#}0ԟ5iiӶt"Ќ`ƿYS}p3aAakLT0'N6\ru цUsӾ^Y[]0Dau]cʛ ?'<B]p^hu V/Hj@wԋ!bG,Sc荱4|ڡ:dRx]uG#Pi|1e)/ B m噂Z)$ikQշ 9zrjK9?"boSN1Zi-MDZywޤp ,G0E]x. cҩlK^JsD.3^r|+ѝX'G‘;J5\V3X QY7o]:NTઍ2&x'W z.ֿYO^X Pniծ턘y%`a #%Ik|,5 xn(mp#jrx&@Ϊ1oI=O |%}!ٛr5O)ԅw\3P(ffs^j^^&:\>3+ᣟ!3QX}uͲ'!3a]fܣ:@&7$wnf @׌\&ՒG-'3α*AgfYu[+;5 2NϦw P{VwURxPBO4EVG.avaph7`3@ (ABr *Ж_<>x4YT'7ߑRi2^A6nO4*&S)tl }{>=S׿D^u֖I~06-`Oã%s=7Y[ﳶNe+2jzDC~Eu1Z.ܚ 5SnbNOqx$&U.<@0P:F{(wf̾6{I{YP֜>*>[GmF"&YrG"[o @ tbbȅ'!&NX'8f7R"RϪWĸt^`G|¨)\wOKS}e@3=ƴ@W0xP;)og`1K÷N&ìm(̱pyBW['BL`.|RsL<'ms5p+6_[C-JP"&<0.cM_ W`~/U:񍂆i嚳]2!OmZ4wSEUX;S)O J#{wHT{A՝kaw u ]O`%Dq5w X$e5>D |)βGzc"bq׵x~,0 jގq@oP bDP\寙z^ -+k3&~lk{E8x*X=.BM STo ͸r'9&/NSBsXG.צix|s`b ^ ZHJMns^ ܰ,:\?~3gwLVa‡h~r+)3#kT;0^HA'<.דdt9NΦbd¸89=֚Lyg:f@tWTv@؉LNy6&Bz )8'Z>fsN#U&c_mGkvt5˪N`LQiR(eh`dn7ū%.7h%)YsTK|ï"Щ\b68`ýenxfMX~QI󢭿/$[nTAS70#`%?S;$M̡2߂#66_bl#RSl a7U/KAJ/wn|8!< ٞktVQWc#?!+.H bc,Ωe6 K$bfԕm٤*mc _V,NﮪpőcVrmiV1x| m⎸|p*2Όd_^oGC>YuZגȹ "W ~q˫${7>DˢB=|f z/CEhW Zz`~(tWK.6T&mkzA({!p o:X@J[5g>X1#y"y?倲q`j">ǞFWWސ)ـԷTc#|f^nɬ^f6?/`0l+?p8Ը:f7ϒ̯.zxW#1झF.K-Ga<%foȀ sdH6DO;ܥ^TqJ \YIƇ/zL+vguUm=j5Ȝl옼N:sVfހ9,/'@!cvW}S.+tXUл WȯȱŚp":Ø|'{_c*qb of^ F`gA "CT6%قn|+'_[R ^PxfVH4&!qJ _3r82ea.*,0]u:J[w-Y\F[ݨY欕 6fUYV~LV #Uqҝf6S hg{{^³FQ7t]amKܑl1^%nPL,g`'Nv nG'qyj٧hkj{W) ވvxѺYrWE%a` ]6KuMo[N%;tC7/*uE -)fz%k&-n (> jL*5sN=wM&;~@!̄%qJ&'E UH 0?UA ÅǧqHvd3MR"yKPQ0Ou:5EyVq ^kvĕK!&͹l._ ŠF~l7ҳ)928=a&K{oL-&)k:>hGDss¾ <@ Ec?1UCchC2t\"T*^UKc&w&9Q'W]<#> z Y2%2\x>w [nZB}(,?Ίtֹ|^P`ag>yibyQDwI6|k3Ct p>-֫x2`+ f#k=pϛi?Kr|vtg>3b َFgawM|eTx`{k̗N61uwV7bX#'QvNfTEbyfQFo_8 `J͒oQ*4Y, C#VW"ZnO O[YShu[')ItBrfWaGan$ΰՍ3,ÔEZG㡮 DԷ!٦ g{э%MJ*M;1:vZ2MthJ yFϯ乹 -/IVPuJt> ܉F<,6̙i)P*%:uX]`)z?[HH^8EQ+Hviihrc 0~F 1ii_*Fܬ0*;J".L%´),߃R?9K֩l.*Pvr;Ani~Y,jqcAḽPA_ .iD{؄?v1F8du?x<5?SH0z0c")C9vem#3-PGBMLx ܑVžaWyS5] ZH߉H:N0״LIvR P| O= +^d?JLLM/D%@ ;,#* cm (1as/\՗9"BD\ro|Gxn1Ѫ~LĹm`Cd$$mxxZ $;w UCݳb2 4‰?58Xԇ*=, +Vg@i^!1Z=k++ĶeddcJ!@ZסXc>pp?si@@ VJ`:4mYtZM`ѡGŽ-^9vݙ%jPJz&8y /GH:'u'?5>-ֽ2IY4D#|p5p#^A*4w"YY3hMe5 𧉴`p("~qccڰuv9cC[y=Ϭ(6rjZf`B҉wQЎ&\q3Og+Y"1|?J&(GiȚ%ɅD&¾[U[C@Veo %OgM.wU⼰iʚ2AQ'x>[R*+5=Ω?Kٳ{0eG,1!a8ނA^*!osC6$gdfOTII2QG(jH9vy鵚pVأawbvp$~wFF5&#AѦ93QK Sa#.Q)Jؽ9h 87\-b##crfQfh_hQVS>!ѽ5ؖu`4U;ʆN)ॻ*`j|s0ti`l4f*Jټ2mEK9](HϜD0p]+#~6j|Vdߌ_Wðp>2|[܄̳qr ܷxu$ +"#ш^B#LTIt՟hU}zb!!(YP "H.9?W3κOb뢞`c#]!)ew2])L7^plvWN5R4` `n/~UtO! m$|sWkřJzO)fyXp*T=POCǨH=B8fj 0 =2㇓=*zp ,Hc PUƴg].M9#6,Z̳Dq^!7p eeO mqg蕦ãoCEܧepuڶ+rD04;ۀK ;10ZP% >!&ڇ|_HqV F$ٿ=n2hO{ŷl[М,CJNi##EɞtE*u"0{^L.KM!:/q(+.oynsN\4Qː·RdK5A0L8 kE*6.1;'mϏ֘B)W9|8TןRW*<%*eͺ=8(-4%[q;:!Q-KWmvBpvU ل1a1 ϛlpVrd51wLFfbālV?D-ݩX ?L}QԠn^Ik-W ?Ôbmb׍0b=?6t_ 7UA?i~:05A5*Cq[rBfpїm$EQmըoqtv[8a1i~y<@@Eϥ *bl4cg69Th1No挼"DUA&=6[֏7ςra(x@XsuldvR u% ӂ`0tALΒ$(SHI跈m(q/#L*/vl 7nO?`J*u|New-f(7I] I|Io5NLC ťLYdy+ƛ D'Ӷj8ւB7څsh)A ^%P"L43E[N0FdK#Ƅ}:ze}qeR:(RDrVA8Eg3mZ3C¶V-nQ"'z| Vθ/Ӂ[ȵml`{Hx1P~]>e5Lc"KoǏD` bd8\xICBkKO88bb[:bRq#'1"XXD3M$׹Uf.R"ݫ-+Nzwk5YT4F=";X,ªEO8͇!`U!l>T?8P@N +ʰY|2QȠ[PT/̮|d25!ka JfY;+kJW@Of  :y9Equ5״鄕 wT[sSUYDF4Z:$ci Sq-'o/H6-9{0t^!kbDq2pJN-@͇Ujich~;{Z2s+R' :S(NJL4]@I*a];%zp3,;·cKbT==zmXJl$ܬlNҿe< OODPeYPA56HDF[V;+ZÒeȍ4(بj&Y =XGY paA}`:,aŴ ђCn-J1d@>W9iSrG|pGދ RXL3x!6V^)BըEحԾ$Ɍ#iD-<9-1 Q k5E@"󚷙xoP(s'Uk ʩ\ۄ{ç@"1oZo'Լe_pek͍;H٪@StGD7W 9bϻim-D:?~Bˍ#4wZ/@XyO!H@iY)ɉ{hgv~5T<$d v{bpYp9s.f%,ޮ8Ϊ u*~:T ^|d!xrN:oj y! PDLt)S'*u^~HyuO*P񚒓'$Cx{ћLF]1E@ dVE.^k~gRAM{`ۡьr9x)-T>Ks IQ7`M\zlPXaB+vgF5|)q:WI 7bu?~\?ZP2ԎY9 pRY'6Zqr7pI6C~h|Fr ?ku1n(X6)ku6.=fvi0hueq4 [IjM~5oJq5kjE.#m#sB `ǛlݧY|EUB'Ñbf緱 TmvVзc"}F>#TR7 OCpq16b}&dr' /K+*=ŎZD*Rx($XW{iVXW%h֩aW.D鰧K!`BՏZ:MXQ hY.c=1%\J&gy+Es۾i#JnKjVFO38ob%.;e|"K*|11&Or~p)=O"֗{CگYr5OJG E?Wjd WҮ%Wj4 ɡ+ȓz %FJ?\Iӈ*Ula6$A pyHi_0'?De_8%{_Րl?d=?E?AQ#叙ZrZ;o[E|d|^,%G2ݔM?>aza46 kTTbF0/oe-+\߷pWٵfd1^MgzhkטU (bwQE>@U-d"̹2m 4F`0(ZRӳhீtu-{]u>'R*.P*4̭-5mbGjvrƳ蒅qov8peD4tE̾JEa |c=87U< ]Y}n^Fi:pډrAȃ-ZTZC}Qm/U.\s9DkϡWO4KnUNPr8B晫j0^bߨrJ<~Ot+@a*).1T̡r{W;]]|xd>kb/-.{Rx\>@"nmi>x81A#`X7*3*pQ.2# Z^D]E;miDVNqZL9ߟ΀mȾ 0Cd,qH)mA#cjS iy󌋵ђD\ ~a:-juU4s$Pޤmw"S̋ea璔/&BIJKj K;x 'pZ>-)8@+n)?59pӉϢqx'9yt㯎﫦#xvo6]f -Ii%ַ_/~#(rF!աUo5t66uו h1pK[zcs߅AC 9y~t1,B\9b4Zu3?QY,|5pP˺tRP6fĭQ|cF;Sc_PiJ58]v.+ݺQ[1qab_ W88[&|70*"X++cE:WކT~=jh}1>#@jqF&Dd|ԟ=%gK2 p3p;% <0ݹ+͏VQd1'_rm|^™T>mwpfB5bT38\prlc ?uzi>}MA:jo%*-b -"mw¼KОNۣ:̎,$y~8H̐:Ǔ`$OBF}| uAZ~ K1\,GL/Bf~w)AEX.q װCNkĹ_Vt:1[ Q$nsy6ҕj7N܌BU5dtɶH&ȟe7ȴǺ"$ s".`%g(ѳVFΉM6>N[(y%V*TVc_99Z"9X+{Q˃IDUO# q3!Q[#!vpi]LXv86On[xxo959w5闼]S<]9b(pe [6a#ܼHXXGW!@)ʽ!cp2YRo} wTeDA#)2`miL?}1s&tb}sO`-D$~|K@> z)_ylr(W\?{du6FWٝ`np?AĤwj K xv|Vp_y\!#j O(&>.oCpD3-"'mz I E\N߁] x$ @ˠ@w#5-NJΎҳt?:{}+(~ZVs0ޓ1^߸<|1ۧ1ǀP-Ӭ8d>_&a7n?`|a;$Ϊƌմ7qRJ6>,Qo?A[[TVۋK7^)?Hwk>[$dٗ$߶} OBXkno)֘ }k/,R\DDSR&쉅HŇ%CbL F ODӛbUL*CKkB x6deA_<6SZZ8T7Ѩ.L(?ePcLiеzUd-jznoBEK0eay`WP(  4E~)IGH?\'g <$F=# MKrz~7 T-tPc @m ~4q(%-Qn,)juKm/\`]odMN^{w.3eRS *D?251 <-%7(YT$.uF.8EX; _6 tx1uP5`wQ u 8֮tY,# r΋XF"Ԟly0A3ڠ& vZQ+gL$SZsBuɺzXh{Z};wƞÚ'v2­*Zg4=1/b5h'5g-U^l!_R%CoT␵2on9n1t-4Tp>I4Pq:f趱+ $|lAȠ.&Aѧ>j6&[b\ԓu`{tx~}i_ B`- "!S=[ -mXyV>qQѰ}Kx#ȿm,$_x C8Pa["%e| gy80[; T(_f]Д\\NƫbPE4C=V|GIYwˆ z BwWqH&cr+{J;IJjw5}5asn4Iջ:@뒜߼UrXk{FC̵ޮ9eP;̚Cd*̗0餣`aJDCF\!t2Ad0GQ,#2(z=v0) `W> =(Oԑ<^L1M& o٠ǘL]#.״Cy|ΗL/7S?DCPha}ƹc#3ވ m@;^pTO8K] n17tzFD!:q(Aw3ɋne,8)$4%H-N,pLG 5i$ϧ5:D֛I4w먗UQcئ&'D.nܗ3èE[b ӜsnBJpf8uy ]^vA( (5a̶D#hTwq;g ز BJl6]gUx0ՏQ;yz Dr..?O-_MbvVrT=i4 ݦ9?0 '|P >W\6mV'=z8RvwSK_qZHc籼FQD-8 dE A3#1^D79-^\AVkhd>l$v6,<`%T}m 26K)Q;e]X+UH?}?4eovY#Rm67TtuV2Gkv, ?bS-^r}}_IA/XMc <@w}}^ ݭUTS]C,gH?`KE7-/zkAP'΃7]귤q+0)ƽJTrVbUWT I4"O`6qN/ i )g=(  Mꈆ!3tOgbD0caSGvIjyg0 S]B^dO%9v3*I~Xه{ $w~\PE NstȮpKA2J \ctE{ZIo@`eVT%1n΃_|\Iz?o> m~*M8|@&PuK^WJ|?8QT-3mE'vLkiZ _E׍'%/ޘJxt.IY k fv>L%yL} y BcWyi,90Hzfɝr}* QjN,>XF<7Ky(_WlnBZ S1|k,%i~~r :P E]+[,`(TjfxS6`gD ?W,zTƍ>wg[+hh!E<'?4zĪ>/nsOrHΊo(]֔!6hOgEJ.9h筛ߐK.ԑf7.%/d?$y[+|%IKe yTnt.s#pQ}pTya{kK. ! t?g">ڭEN -g7 3s6S;[i M߽.QuޤTP3KqGS|9ۉs<۝B;oHCzi;uTyr/*p0:8#)ⵏ$X㊚勝HRӎYu$PRv+H|_!h]Y&(?8^maݎB 嵌h ~eiaoFg+ ToPb˄{/;a,.}$|b>\=K+CYj"}Q{[.>oG۩S b7)JlWA\az鐮7m=~$U w;7nCBQ*Ѥ\$pNKgWYDp sZ~ 7_+в+w{@i!'CtuKX+ƍlG|!͒c2 8+di>`I3my̐H?}$pY ƒ5M3jᅽ+Ep1ʱd@>V^BW{PϠc(̂\U)^lNg`+nQTXj4,7D :>Ũ/Ŗl_;s4hز7Y."Dӿ~{T{}ʴ?|꼰jpjpkFf&ՙS>.u4EGlTsVh˸H@)DI _8OD-j8 aQ}fЄLɵq-ZgcaPz2QQd!ZUts u#6Q}:N_Y6̫)ɱtiI_V K7HB6WwdѮ?5Nޘu/Yе:Ĉ^骜V"yE.1tlI+pl,."Re=BYV\2n--FNE4#Oa͞-1"-\;gC&'(γqe q˅}935)T+ 1`+d)chU;P"?3Ħƛ(9DSd:n)97a\0 poc TKL⦪ (_F,88D_PAr19%5Vi/Hș)9b^=`'{؟T8aKiȗF=S6hP2!e(a{k88noW^̄YF aSqپօHտ>9ӢUώܙ%GyY܂NV#1i!O3UšxOq>ЧRW倳l'!% cN2f%^ uD3<2.F:T~kr#,6_4,wXV^}Z)+g O|p3dmǽ mJk)yiL[QA_f\O݄Ot`vqS"tY4M&IIjtsl3߫ V)s3z~],{ (FIx8s7Y^c8ߍ; N+EpmW՟,:@x:[|-<6/Ph겸=3->|9C,0<ޞu,o^z`)CO6A4 ׏ 0k,?r8_'~=@6[q.Wqayĩ DŽP}=Nf0f;HRz]j_9ag` K5V:k TzFv=R6Z'B+ V{_0${GcDJsHn5z@ 2.yGӷ쭺; s]T^詆's } Yi6:Y1ǟ6FY%R>w67JG{{QI# ᑋAJ9z^TOxO@۠7g5fI1W 9;!栴!Ӄx-fQ=h-[)e<|pFC+ut<қi'G #KXȼ2߼k:>/i:ƩLC9 TP]kMGZgA@4Za:끰3 #膽@Xfj.#Ls't͒o!|G엝ERz11P^vS55c$8kʇ~r`k9 HޭY!g `p@5l=\DžAر,[NSHstiߙNyzVmC-SX/ekd*Cpe[hdsݠmk >|FO?i>ؔ/VVhХq;6e+((l3Ked~]=su>ЯPqg ^=ΙO 71N<b22{sQhW, X3'p("sO v.f,ıu}O`%s!\?A:<jOFDQ+lx=zq#iΞh HY(2↘ K5 BWH,XW4!^I1 |u3}Q_z}m(Eך(xɹN0]P/ mL[w¸;͔؉Tqk5&DW?㣪8+zE̜5''e֪Y %xx$,F;yd z0_e\<1fw9}9},\EF-p^Sr=uT WOPWgKy̞`yeD"~|ƭA%,p~':rU(Zށ+!I|wb]MfyAչ>?/$x7^hq<}y2t ɐq$~[4 @8f@p07BI:+hIg$entJ Q283ڐj|gר+tBMsI]YAyh_`9 Qk} Mo_xvMxq-A?E^*X|!Q! $#1yudp[{ a CIJx/G1f~ DMK0^/,E^C喜? QU/iH驍Z:8eҢoxyY՞> \Zb)Ŕ{_DB曏?0l><6*GZ$p mkk*WTZhѡn:e } ݛNCoU6Uۖr-#WSps|cH`J zCpsB !S4PK偿QMxe|{vlK\oLUȾ$HLIo7NS3ďBN}qVW}e4`YΠE r/n,?V@,G%d4RnJd`DAA6ܑ8Hx, xh0psD_vDa(4zDfZbmJ{)*>QDض6RJ܀ XśN)a$ 0;i=&Oȕ`]@7ziѩg!NŘQ0C^={8nզ[Wu@:KoyZDIt@Cy&HxޢO'+ZBb!RN^ !;'0< D".дyϣ FZeoD}nVlR%r`?LZ&9xF"з߶$oZ_ &2Nf:6+<6C:K&iw⦩7gSMZr3QwJĝ̩+12Yv-ӓ'N:^-͒Vru>nƮP3=.l= KU;%SȐ~5ĤLv.X &/{pk)D|nr}kG0ON1 .>d g+V$#ogdM-'=ȉ5+`~9|*+be,@0\OkhlcgA-ڐ^,jD !URҞ&mV. G2$Do]{Y0_w)[4ܑ$ jD/*q孤7Z8H-eó%M%'}u9PP%:{:}ڌfre/rKM\ߑ rM:D54yȎ^3fv#H7nyx:uR/8^ LIXz$jڤ$S3D)iHsZÆOT1$a ڻElx}OW>YmvLcCݡ4@sO۸@u)*t'۽^?d(_h(H>\<*@@Ǚ"{gk t_+|) S \Ł&*٨FPC7M?h'_ozD8(Uߺl+3[%k#^qdL?WwWvw1{ ~J\&_{޴GP dn`OT>O?咶IJuqrg@*@Y3OoRiJ f(_!ԭ1Vvܢ>܊>k'cn)0șziX\$1$MTRmTZoQi M(r13pVc!?ܩ1&POEUvD%SDꪠ6g(ybI.:xq`& ,fCGODpeXo|a q+XNQ0|~QKOWX>meB˙Sv| []4CY,&@˥]%q5%6%I5%CLxhҼ0'(S˭|Yd3v%0i7ΪU+xC?0U_7룳O0+dV.uPW3Z8DPn`JB?uy?L7]=6S;[P}# e›b=و.@ Ш!&Jy7P,FZ(uImxbn.kuLD23y7<͠Iyv*_Ɠ&*j'cp{ 5X~ 0͗*bd1[nkihc&?q_qFa+s-Ōػ(ۤ2Ϝ S}|QG.F.=Ѳ@KxXV t/: #N֭h23ت@> J[r`QdwP@$a2׈ aǭߋ`s1w0z=_z|uJ&{if/ȚG?ܗ&K3 +?~^t7x@'mcpg P5 YR~R[!?3թ!AQJ}u>( DAB3!Mؔ|^BKnpncr%`@<eI,F_(T-g8b>D$]nɻYЮggdrupv2hn.rh֒&&vjB!ƘXc%G-I|Fy a6ySPe9=nzĉT‘yXPyW8b.4,OPiq,A.8'gӪ `$glV~A363Cd=qYHƮئlv.͌Q"BO!ĺ]uG05j^&z9tqwnfZܣZm'i߽!/kLCj"bP>l|zafU &*a5~ JDCOc&ȉ@_)5 PҡrWa8:yzNۛ􎸗9K#zsxc>7u N3q㹗X:꬈\uJ:!{?<(-7g =*ӐXQOkp5UwxblyMoom^ȥQr“ <.EHL|{PP} @d\*1*Խ;l1hO.9ܚoȆ!`bbN_ ߓS1ں#?G3̟P$>${#we9/01iF˟0`q$VBZޮ'Mį62N2̱yע#8NJ@Y|q<:I~)NM!Ծϵb{ ʼnz-b?9-ޅ%ؕjx=5_xdJt0α!M]psKʷ7L 3.#(gAdN +nile 8 *e8 ֕%i2Ѭ0Ӵa"j f}U ·HM.1O-vc2MLo#@M A )fJW_Wc=MJs8 + 0mH@|HL$H]52c]Z~:iFs",5խ4)ETCa vKD(hih1O:X{tg?"&C55vEm$_艂C#ڗ3VhJ;_r"#劍C2jܺ? 'OxB1q|ㄠJ7˰sIr+cjR߰V!P@t% -v'+M4BzfB6eQqj eu{ cai/:,q8zM < />)UUhւ1 #jGoXNYtw}C|ӑ7SBa /}QȭWS8&)d%rq~a`i_tǂ`9CJs ͓3_ͺoZXܚ8UӒ۸T C3?V=6?Ujg(+C,ߘCWL\>m[n%G+otbf0R hu!\ [wJu{^JWjToHgF38&Zhv%.'7c\-$;=_԰0[^Oq߻zbatη:XrKC ,!SiwBO{v2.gtvj )GYs ,B}j4 6,+Vt2D3ƝQ,V):AMf1ުrkILQwգ91kOD~$^yᩅ;E)@ieDA("~^cVh]*];Qi9S4 J"#JIh:ٝuI[!0\nd5O7v?'^BDrk W'o(S$:d@۫cj4E P+Ocޮ FCgR ZO늻:!\Y12-H_97హ]ksZp Ρ9^ixP J"լJ`G[~ˑ/P:yfazw59V{pO;cݗm.F&cA_XK0޲ɍ5)='G"; JUq6]%p/$6"Lr=tq77ɾ: jeNܧo?n{;H0R+'C_#FoVLlI4Qrv}@p7[f Z(Jb- vH9cT: ϕ HC96oX[Nt{~[c+ml-w2Q 0Q1]ȌU|ʦJ)`7>nWɛ9߾w3Q)C ν2&\6wDfC>/Tdk7+ԝ+:K' :xk @I0Mny+[E3-/`J(;g"f\$#3 1a?u4R@v+Y4ɗhL!U^:|1l,HM[E;9~l?C}VS1Ǔ5*Y?DIy" & RDj oz,6-lNR?wTiril=N6NEͬqMfYfMև {ĈK>zS7xQ$ H[(n]-Tf~Nw$r 2U2JR':ot* xnLƎ"WltvXLޒ`/H򽱲xvܟ;gɌpדzN-`l=,zz ZnZGB0ۇ沜~`B>*{r)pl՜x2m*0Ѳ,6yKp~ zgM:r0u]>~seG^b6Ơ_GC<匷98;G Hcs"nb@d2%HN4Jf2HW[|v_VlCL H۰WvجINjo,ɟQ32ZFi x=!8Km^b7[9:>Kტh2+jvA 9hWxс7 ܥ^kRMOڮ!'}ɧB-+Ó@Ǽ7'Z-('10&&Zٶ\ݻ $#CS ai 8'*d߾?qNGwq$#Ty@ޔ*#kѐж L鴺ƕ7o7+{?膍Kx%l7O&?OZQ9cT|܊rFUC, P)~I IFY,"]g1Fu 6cs # S~DM u;Mf o(,0plsLϒv,y Y&HDk'C{؄v87`"(9-ӆi}ۨ<4l+lqhYa4l #<5\(RO8 dG1v5qR0m'.x i,{^u[L>W\ud1uPaG< UP(K2~?nR*5 7rBpC ˒dPKbػpeWsu)?8D%Ƚv>gnOj/ FkxDUU}лkijϞ /YTj&|,"o.bͽs%HOl ( +n3z:Gן8_ soH 0"QǓ. dufȸ4<7lƟ9ˡ-ۿ;B"evmS{ڙ浿Nd͜m|k^lϾ R89,yDq~qNɌ>3aH 7!dsiCو*'!-OeRt=whTIC(W9ek+M IsLqc_ӹx1foAsz'hh@2{{MNOנa*E:o \3IrjF8 |+jUw'T#WFs%@`:[!gRT,S&w |$@8LΡ&|vfm`WMy2k̚(aqn:Uu%-|6 ~15 4ϼ7"of暲t5hg XV?pbzי5rɮZ Ugթs}"OFvl$H\dżD;y;H1nr6-DJ%:{{ztyl%I8Eۋo '?'Ze-,f#`:~|=M 3r܏ޯ $WeW I=| j;;2ܙMAhm,[#G~=xky.\״>gT͑ϑ9zN>obΤ\ME,4xT4Als?TNUHK4M0|I۫B.e"AYI~@#I_8gң/n 1d4OcB__㦧, K~˒Bzrk[ ٪/e<~;4kͮ{_[ۏ; #B&C׸,26_QY̽]@v M3,R *=Ջ` Cݰ(.Y |̱wfўRL]WYwaIJYPW{+*O:*d;m}l>[~r#րyGu+ېCMrAƺu""E,gPm Qr8=eg5w,?!V^IGڝٻmwuK8XSGƐ " M0wqb5,b_\9̺Sr%bS뿖Uݯu#ȁ>?kˬK&}hIZ]:k@o[jz;qap29DZd wӍUVRW-H0q!$?T+rT6P1$r4u]fA4lW޴.oMQ^}dFyT= qkk6(vEjJ&z|[1'SV2+Z"LR#$b4$i+NBK䃛bn 9A"bIY5Fo'^gm3]0Q%@T - XJ3$R_[v<=]." ͵9WOٖ@kcGCmv=o!O#'W(yS$zxdɉᲿiHRV@_F eIS8ggt;_j*S5坁\My!5 g>M31 (| Ip1񽬲D}5gK<4Q'NPcds{eᬨ S4_ /9`҃ᾯVIe֢`CDjVY^} pP6`SKuӦ{?]:W)+0?(&yDjMA䦐(lSF 3̗͝ ik&\_ݏ]>lr6o `z۠2n_DFohJz,DB)\<+#1kEW{A7Z3|ziP([? !>'9W'ZsAƾ"-X=9?e`onV7:Lp-~T-#y"xW|OcEz"Q1z]QZ#%j8'qQfnaGџVO&NV`JPkp'>,o:&U\N68U O{ >1/SE~=8pSr9VhI(j2ӳ? Rf'[Y mS,Ub>ӹVo)pHRiN _r.7$` o4vr(u֣$ti1c1e(#\UnR`ׯAQ=ݗɞ{Ҋ'b|7Il̡~)K,ITW$Xyw}FktlagG>풋V).6j#(Sr^4ԕ'qsk`C闄c"];Հ5˸J:C쁊 ?9тhPQD &7[b* \s޾ǥVO&*Nra~E"ҵep)C&W%,G/KBy u? !Z]ޑ!%ibd߁s m&=);O(F@-Td+8,U,WCş'# 1il\ႄtU/_E]}PAfc_}]S-f6 q`+ MYLo]Z), e>(DFF@3&tU&74@8 ǿMԏPRU)Pwj=&? wEeAM ׏I53*%ODM/9뺫̶ֳ*fRR=]F˳*W9q\oXVe Y$`2cqkܘV_훑@˄Y~M{i`'5S}יi\"HFTR?Z\&HɂRyYI 6Nh:0=s)k [,&[f uZx+5MDMqR5F);)R[iio>T ,z%[m2h<@uX؆TR0yIL\&Dv=o&YMpn?saXp #1l" JGsfv{E?4+7SִzmmL>L]o%#d9lMGC!v57Cm .+eJUtd=.zbGGt^Hq͊-ШI.V+憭m0HiϕOwߕۛN~\D '_%96 č ゐVQ1n+v!wZhw39 %ϋ+*5gs(SRTGy-؃RbFl~(wlb%w!u%aYg}3nX]Jdۖq\Oթ,A;Dk҉0k h(, xt*`C/7AD١Haawd4I#WP#Ev[d~~vxJcl +2]0nqS1p"$,mcvcCΣ]9U]4izTS]IϫB#q>[<@PO|CPi|ƈ1E|<}bϠ$N 27L_!J6)j9P7"5{PJ/q7*mj{06)f?f  ׵U P 'PNCOD & XG =֘ \mZkkնrhI | 饏$?J|/K8VpM׺{ =uO/ʬ>\rqXpM0LqkYD*ZHH0*nS!rJ [ ÏGC $ (hJhGAc3GB&ێvRcKO+},4%VYӱAH~܈{w7}gru幑Wm]HIP] kOmό#}'{TkBo-\eZ;I2R?e-qAd%P2ag~/2ۧR*rҝ1uNZߖΆn|vhv~E`=غyL'V:eη/"bټ^Mѡ 6 3(簀iL__9uGtB倛hȐ`9wI$|M4AWlnܼp?Kgڍ=WN'ۦ9Gyk\* ϲ-.7M'iQAlػ'=8# ,y̡Ҹ D,g-te6o k٦҇Β9╁ FgNM^8сvfκw|aCΒX\ CpK2NtX*.ܒE2/`tbɲ_}rzw]ca @97}+HQ^hԙRjem%$ߞ>7+`KUn6~O 6f!},E&zk3l)p}ww% ]kpGV8yQ#Nՠo&MsEBF'e{Nd/p k`zl T#)|qd?]+S vV9\D!2`$){lnu^4 M*A1(o2Hq:Dݣc8&q3S6P]/A&u"nK"|DY)+sϦɷKO̵:g"~S1eiRU{a0 ڐx4TO"=q%؞JI%vI.BR=c30Srݰ }d(CЗJHsOf8t/3Cn@~b?ذȍBӆXx_('ӽc+a@-J[^;cZηI. 6Kdϴ\rQauJaxx/Qsl9X7~q.,P& iެ2N=:V Cx,?ky7u&f6?抉o} mmï:Қ`37LE~^oK츏SQPHqKT@ +iO5fC` ENZ?ZLIey*,'b'Wqce} 0l\*:аD(/Շof/{~~pFwA\w-ᾆ+c: dCp DӻUwAPNkz'F3## Tu1$G]acQ@jf Y݉JM ?]⊂Zb7vESqM{$m2fy6O8t}dw~%lFT=OIg3rټlҐlH i#l]0$7lQV4uΎ9ԓnE*1Kt3G3|Hě>p׽^r@סTOG @;l3#3y. 3 snTIܢq]̸r$>V9~ &!l1<ܠ]-Z3[*wmY62Ji> {=`2;{C7vގjHn =Zb @)c*Lks'6rSD8` kA] ָ;6wūq3*Oֶ1cd9<+k<*) і2Jk.D,?9ݽʈ݋& BtDg lF5/ae/ sʧЂ.Y|+LT6z0+vBͯP18S2W<4Ii?ڔ_$y,T*"Kh@hFLڜm-% 5I+hyCF.fd-ex%k!|˜Yoz_=')}*-G0 ΍ENmӢ=E 4ݡ?&"O2u2R"2YUg|ܢǡ ~[?՗Nl.tٸ93fwp~;ʣ/n6Ee' wŅ{i 9>1lX9qSJ"(tF>_"Q DC6MȔ襖j L6HB?nC %ke]Poz֋O)ԗ?,9.B\%"F)ABR}=Č0"$alp/s]Q _}M\I MO& PKĵ];玒im`kc:En2sP5  $vʃp'ȝ8/ Å?SW٢i\TzC[C*. =>9桨ʢz#Ք#ACw Z|m;]WU3|*K)7'$<]M o/.Rlrlxo _,EH7([yڄ2|U,I^5i\RaOҤOE)E+ $0~`k$Z 4"GTQjY3 { :vuYvcyTi9KN~Y._e@?nb Xva\s ^ o ԭvwR$]ark =:HSŋ+Q]'S)^[,wVmMqT5L{^ROĔn 90`9J?AL:^"Jqr~/iL; !:p.+/o&)²7wwIUԕ;H NiK\m3LGrzO4is*vb u1\ߝDnk$`<9) pa9)3HR(kQ^`.q.<4Gqd|9O16`G9H S>6TW|sH]aervj8Y# $ine m}Z3Y qMtLaȚĮy1A  PIOq1"pVMXY')0't5_S' OmNI}un^'<կy"g$-XI޿C1|kykL=l-=hvu1P83?~Gﳋ׭ssL_mhRhqs 7Dxan8"h㥎MNR!ةlbQO&\tP%xtn?7xӝ蚻 q=|8nrg/F\al*JK>!gvil8|ѩsCh!O٥#dC3H탸NvJp:xfk>GZo% fPl HEӚ *1 Y*7TwӘzL \gd˷FA2k25Lw =7x7 F*9Q-؝]eA߅v|$  @t^v}o)PM 'ʚCqJY6oI!\iZ Gr֔%D>֘i[954N\,͹j'>uPlU>1oz XL /fB>ýoAtVHo2"*Cg_vg1K';2Ai- mRo圝NX/{I8 d~͘uź3+RUJ\ ?41r#K:=Sϋotf+d# t:E.<MGv* ON`_ ο`!9mܜS1vإO"[DCrֹm JFͅ_<ѯȍ,F#ze  Fُ멗J[F]9C#pgpZRӐx{:råӢJRKb [)Xc2JWx4,Gmh3"M`y*xLm'K-Sî|!Y=8#ߦdsq jFrSA3 Ti*xhT:P4{pkƯ GuߗfT|>Bvzv]W5sW~Ж\^A^˺~b 6譩G/H!2[ 9m= _#7ƒ 2NNxo5f,Ut)LH3keA,HexdS`Ӯ"ck$!wPrJK Viܴ!{zo)#XjMcI>&yea~ ;l?.}\T\c“tn׌թH$I@`s➄2gNEAsFN-s`940Naj9۔iKr9N"%iۙ&Ó9V T$ JkvԾ\@j̿_ݾs52yH.Y"N2-TQ$A# ^l=*!xQoІ"D+;^v`;ܗ MoSL7cbߌ;.y߇X~ qģXVVəs! w:@39^@a'͢T/G Lf8N\8NueYtFWĖ: &+-Ɲы`"fV~c2  +c+uh{ɤc:%+ɓ-)R/1jZ\Uy@{,Ow gL2rH=!/Б7AĻ8AZiOwv b88;8&}!ʄ~)Y}t}gnp Dŝ2VJ0VMPZYt~ֱ67Hs7GKӷc;8K@Jp+2=s>E(*b`,e{$8يD-],iFyNǕ&J9[Nv?hI)i>ΞQQӋd04j=Cmbf1 Lx'*s6:tZ\Zr]|pjbZ}!Н>ܰu.K ޝcu~vd}8$:&>O7|?gʀ _ s}ɹR,'$ BNQ.)0'[5j[>7NZv}Bc#SBP Hy, :`r"}Z#P@iY)}g5gFȱRw(kG4e4n0JI u̷LƄ,Ks:`F[.A0wD3>?UR) c/Hnzq[cq)$$\J ] vke8Δhަn&l3U j++xK& _e9',qf: xEK"3ܟVTk壕Ei.+>v5EqԲe0WϪ]aW/:'qHƍB@#cjv)~KGr?0I`m|3.1e͏k-'#C'8Z|A20sCEinE3Ա<4ٹ岟PV'^弃ϜYZ6J5U0+eW2x8BɈ%#Q?ڇhJ%?lhw*Rusߚ<$O!wR_{}GĚ{3G(458· ⹾Ht"0LGQ#deJ|ucT$qGo=U#AXFYf+AQ@=!}:G^a>ԞvvWA@̍Q 1t: ٮ+?$uXťՐtAxUBq4\.{E┵k7u˓5[Wt/yk H8z u~*9zoV˜?!VibK%b2!|+>$m;BgO.o4ЇYY{}^mO1!T+VD<46(wz_f#^?xbaЀ>_{|p5Z~RǵhGڔYmE9ޞE.%,EqB`@Z$uýlza/)ΐ;kzX$Wyd@ux{= i~p[j~_H,2U ^zB.77t2SpuUG Y1R˝TW:E=kxo%FW5E@ۆH@D1; >ƢOA 0(@$2 ;Z54}4S?ed}_-S0xC5;]XL:kZco}'2̲fŽcW` -m]c=#Noh 9AӣWF -+Ussi? Ay}K5%e0ʻ[ÈCP]%ݮhogօ H.Jy 3hɊjMX Y=Vt#3o/z [&{YS/U'ScZa5uQЯmn*WcsNHr])J+Ky #v)%5(q<aelq~-6Lj.O?)c |d q$"|6W gSki5ұvOb n43%F^?OT$2BBt"rjnUMȍ5z3~s8;X@|['7V;]|6{@DYOwBR^?Qwu`4T)[جMDqľRh0<Yƿk@}m_0"_n貱KRMD\8:>dH^nKEӃQrUKCq807U2.e,u "-ݡjD" ~\t˳伵ڨ53 ox iغv a./%^蟜;/+\eJ$2[$Ra5gsRqjC_2P5{UO$G.3 s1 .ـB'wL  S6+8}԰,PhB{T~}dJZ^H UDN"`.E$7)d1~%ƈIx3*'G`N B$wR.$/F솷V, حo?"Dmt&Jne⬤s5Y6.)g.e`_+_' _i(BE#66JכOA1h @D|-paBᲩ*al^ry\r\ $5 e]/΀rF3dՏWplP>nB3悱@ŧ//RUGPЎ6L^=]#fջ6+$AIپa 2&=lPkm\ծ+"W"gkuZ_ò;&f9i6Ȧihp 1hέA8Ӑ6ajETbSg?,~4}}ַnDWߺzS1d*q1yέhj'l!]M/[jv*1z3$%uI%,ձ'k<ײ[Ll?Mpb|0_MGxr#5QwN Qw/'KnZSPT9% S,DI-A7vXٽKeHgv x=n2#KRyaQՙl.D_Ça h`U7 X&@3.d [+B)e?oN_'tq-ż 4E&|@J{G\Yh72gtƷ`:%o"#AQvKrɠ"23A*SK[/Vc Lj4$=g<ΏBcC.f߭hy+c7X,n^Gkbϲ{0 ŔfH=t >sUKPtZYx 5NVe'hxi2׸/IQ0ǀMp!V!~ HmZ u|{!<0h n=(̥KϜ7!лUNj@ӹ7_[G!tJb.z8-7`<kp<ӭ:9h>6[*}Llf RQ $ TnQSxb`As|e( }H_/!HfRicgHilo.@K%|V֌x|_w?vڑ#D|=aDӋ{; +1$.o-{je{8pw:QCO_("6GI{X~Prxv8 Guɢ)g*1IJgJfS6z5By8.2*ɗDpՀRNc2DQ=j75A!81Osp]]W'clJ)z3]NVu IBNRPT,(-OʡKdԐlg#̂6߽*$bIDdVd*q:jJ]K(?T5'OlH%^-U*:+Pylí @5o'Nۘeyˉ6Fۗ&ihCCU&.@~bI_K&2*08=G9,oje0YrJWwfE XrѤiU۶RWqw^Ϟ{|U,Md2)A9Zkk(eZc&; [!Zm!)l -.Ƒb8+3\>=,tBㇺdW#&%ņڶ_|;ʿGkk|Hy$ wN2rQa^($5%>8ڜc z\|P*X1* O18&k Yysi3I#" Mj(PW=dZuծc8NrQhS 9DvJwz._ ϶*~>T^$b$1)o -;y ~%mf|msѺR{n̫(1[[(礭&/҇ͯjͲNy 08~fփbhNB!G (åjU~*aqC^O]|Wg1hc/fDl^J֥0ߡ2p@kĢ̋BfmLO1!U}f5 q&*kA1Z)n|-#t@'B HY i>R<)?&uU*/Gr%>T^l&q)y |Raf= R=\;!JQnq,u)@s)p1Ĩi{TEcaRe D"Ẕa ( ,&%AvL˞g+ eYut\dPyK6(ݕ VE2p)=UHLoa қ5OBJy q)B]Y4lÈӻ ܔf:%ژP)wKSQ 虂p(/(0TGk!{*`]` Y- ZjpW\J܍ף ȋȂ*n}X%lwz$^7-p,c%]rI7rWPY D^蜘Cd5֡S@"- Q2wF57:^rCb2`-zLs<%}Mp֌" 3@\ts&N޼'\l?nI 0;B-؁sBd6wz#g(=Zu.OG PM;UNw84#3}d.jet]j_ ɈV}`KqAM*1 F.}.1,3u@,kD{ W6~1my[9㨱y61&' YCq땴[8sR(hJf)2ii4q-y.H Ű괁8UGovVuI>A2Dh6HLqNyE.1+' L!o5'=-@SR U UM@^s&#f@ `QG Z\bKsי8#D#+N#+J&л^՗ CIfEXu[HRc >LL4xS鑫m8Td TY󷃙qx(y%FTB;AQ[` I(w?U[ǚ{> 8XcC2^MO\l2W;Dq8RV+@@J\iĽQxPs9>ot$A*\&vI'Q+A^3pt)$1Bq#Æ@Vvy>TH M8R. °ϖ~`{0T^: Gɯ\1.@>."ý"ZwY'yd=y,#],pa J& &4\w -܎r#wxIcErT,;D*׶D`{ ʱ+[. d_MJwm>,;­هm7N ;bꢠ#ubDP\wc Id9 t9q)'T9P|=g!X(i"A'ސ//h ~mnŵW2!jV]9 x%p!i345C5s@4%4RNa_% $-4 nhB?j1ll%'>gSC4ZoKlUhSx>3,Ņ,˫}Q!.0 Or^ 5e.mBfhtt3OFfN"{]O}y8oO)ǻ_*Gm4 `O:j9Xb~JtKK{0j T%R_4= xQ>9_ݜqR'ChHtr|j\k3Z4^qQ `x;I૴\+{p^z']Z 7ŰuP.n}OoW$m4\M8eZ"ouE/_#-t&_ƒihYQW2Z"puOVamgYjz-!y뤕R;.YDiWi(A5p z+5;9++å®.(שAxKRvkL}L+H)"d+f9Ηbilu`SS}0 ʵ/NCDx9Öjq;5 $R*byuƐ{%Щ8/wrg'ro ~-Mv$JyEZ+p_(ŤP:3;rΦ RӦO{X/UXgS^mkh*W) 9Fڎ<#-y=Z4fb^S; {}GUvX}? _C.PaI#i74c7'%(3~X#vVU L~$M(pM&pg'#0f7G nDo.3Q.F5<!@ ^Ӹ ?zNkHzπ-axcH᪫08}<\+րO\+?|ኒSw&]{lwVgҶb fڶ@W8:{wȌ~Vƙ'dhE>͞j]-hsw͢q2m1Cuu60acFZ&|@E&Lv% j|{SSUq%b5o]vµmc1_$SǴdU~' j"@Xއ#0-oY722Re:ϳz΃9%lBB7@]n&β1%?GI[/d\xM_/8M0 +h*1)+l5L.#>*+$GvrNv_r]ޱݍy)UOz2} MybUVY(bqD#oʬ3T N1)mͥ*7Yc0@xEZ] !F_nMk]$6A ;!gBfLhY^~홱6H-6HD kt[t~nLcs8}s Y1" sQ-pXpP_ñnqeijAXhJ@Bs_엪鱢Isn h5+8!GޗX>!s^ƹ'Vۚ! @G& ]0=c*~5y7eZp\R rߢ$ 3YQ1,G3 .M(N >+F: vCCzղxh#JFߍd6˪{5@bMAA;P9dM;(?;fC5 P_W<ʁɬ;}3{AWJ)"%w3gR7AOzͱci7<䩙fpk5|N dK?r{/nΒ Fr_=,n +tL5bYkC;y'Xjen= r 7cl4Ie@ QK5e1 @Y3؀v]Z3{3b8:.-9B)u4IF.2r/Ŏ*,#\T%YaeSpޞsq +fpe%/%'QܦS^!%S\h"#%! I&͓wVr5Sjqb, ݜHL7rCGҺ.=i^zLMsu=vP* MqVJ-ڊ՚\J?m:'Tm);_4yμ|,JH{;W25y9 ,ŞT&/8 ˙YZpFνКRڐjU`yfʗ4|ԍ~ Bt\pQgl(td `M V7~Z?Y5h{o&:n^lJ NK>@S֕e8jϾ*DƦ .9$F1u5$R/h:\RWϤ7kl׮iskgqHDT !uQ勈2ӈv$/%q47 Yh*>hb5f!Ȍ)!*Җ}R5t4˻IsA'Qws^5oI&>bЌNhζM2Qm`V :Vʛ@.X TK!ל#HR>0(g0EyKD7RcUd;#¤]GGg)=G %akMD)(BҪevXMxITV m9G z76< F&EJ@["4T|%tg1uS?ݯ $YvxQ/ͼCx3P/5c DW/ 1/iĠU6?ÞIZO.4'˛KR@q,.IK%s4G^f/sBtì6(o2'괺Ò<P=Bݧ*'w3=qNwx^11  B~EZHÉkbc7U? c "~Q*(68ARRܢ uAj-,2p:)';(Zd;@~uV쁛yM ۫ ktRv==PTl`x4`۴{6N+70SBPrf8Ť_\˴Mn!v31V 5ؒ,Xɋ@ǍVЊI ֐E^7XH˗Пhf r7Fv2[⢊9v [NC]e OGLD _r %*`MUB>+Dԑ>1Jwz$u:s-0V0!4{I>8Q"ȳfXa?")1[SnKՁ[ކ$Vmx[{|agyrrO4Nx<!dOK,/\=c81P=ߧA^!)|~,ӝmלNI"j$eH@†IإlfrI}B0C|RUNIwmU vhi$\p$kB t/Dĩ̹,p;\YRWE6l v}'vPxM7zhQK ~wIHHO)9}SuBj[]~L2nES-3(vKW-|:?|Erذlʎ92%ط b CpWHhNF7jZ?fq W;xxŸ4eσMGYO"6r ,*U5.ԥ Eaz]QSޱW*X3_;| U?bZڽʠw#c{ā ?:>e!qoMJSRgnFy$}#sy B'd bPݼjJ? I3^0g%ɽ!/N,֩3mprKPt(Bn=@DeX\My$MCB-oy WAپYCAUƒ,HFJ &r;AdWŤ W_2Uh<'!K,&{IYwWb5k[&?pM—Renp`ڦ9pid,Ϲ8C +#9 #Y!K%c & 6"{GO?{U.6x#0X6[(Vk=0¼lLApZ'N.H6=Icjp=flRtd-cfwo[2UxO#0zɽuzyDq}+uǡ9xэ%yab1]hƯm^.G Hv.&H׸Ω% @of`EdHy#"d>9b[L62`૟an'RKfL.La  (aooSB,<*6`v1^h39₶\8ӝ慐!=rp$ny@e]i'@`g19#h9͐ U%w#ŗsE'!eL:M\{n{vB!9̚]**ىLiҳ1/LdXi`ii\UA/b@F1y[֘7l3d=_l7)O8;3w%9 w}Øx=d]nKya}fl#_2JOt]GTBx,`G*\!pp%n89? ˜&CZJ}kt ddz`BGrNoRΌ( ~@y> Jbjnj z$THrO{.V%ȆJj4! a$XR:l wۜdeNy (ˀvTҍ9O ]bUhT3uy\ru7Fxպ ,.8qh^IbtBӂL[fmUtc>B- p*44'Ԯj ; g8 .m{2 ؞XiGL&9(mݤfv\Vo=~3Kl[C Rxb @:&eŻmh}s&qZCЦN& f+q 5 ƍ2MJIoËR,|Oqܩs9|aj5{l&{21MHDŽʙ{mkFCM/ozphm4>G19N5wÁ08>,2pۋ惒f()o 0l˜2V dݲ$j镠M -Ŧmv'o5?CtF} Ra!*hAR8{tk۔tGr)PZbkIB-Gi\1N8.`6?6ҧ핌tC8eK ;8o;8$*_wh"vS/fq7O/>1-BW +Q7Z{Ph<|,,\%>m*S?4o*, VCi:gP\DUJ¥/ѱ^6ynj%q*@D1aetΒT ܨ *ոHn\o6? | p'?4CZ$V9Fg+4GYt1y-oU:Z'u`k||9bl`8,49S{]mcaPp"y?_y1O2sXZJET NQXMU pAA [r֦~/ FL8tӧ#:"dJ.@:]vx/]/!]\pF p6pNQSRZE.a9 [ɿ򂽍ʊ` URb0G?ߐĦS"g+^<0rR9#)D GhxJDj{h-d$BT%97óvKɤ"`fn8 X{ x_(QA )[ObBrbInmZڌb[pM" 8VLYBA7ILy?DAUBC^';ƍ?mNL| I*:o8}dIӓCˮOӷ()v)sMHћ/f}Sq>%J]:O"`r!c.WibIA;w7eU0! lE{ɼttb,`hE@Cx0 x\R mbq F a\S\' ĺNko=Gd$auyʤ%mFT5D J͞M~`3^OGzNci`^R+ xxuN<.ՔjdłEs=X&mh鯸XԈaQJa;U[Ӕ[fG=a6ӰD@V)Z}'u1#TnD(ۉsxӃ4?N]if`>3 5b u7Dln-VL1nynr7`v69F '̌P]sȿD} BJxPQe5t˭: 8U|m[8e;2JM;b m낃^["՝P%YT.fls$A~_ "QQKp-|Y_rc {[:hp%o%q轌e7ѺWlAHmQɇ?_!Ie׌mm[ǔJ*]X㷙2_=t$G wkheݰ*|ӓ@ţ;dS'#(|ES*qWfCKzX%svad5f[λWC-0HP=e$hC6 mRΆTKn3Q]_ Q0r =∽?΢F)}X9WI3vDsC>GPN-tژcYخ8.]wd0-#YbPj$HRnPVVV.s`t.DžݳZO `rav2(PGģn?ͦ숀ԩ#گxE>ײWC&b7~.Hoh6fjAQnhϯ&"@Xrw޷(yGߦlX;8^bۄ@MxOt?ƹZLuu38sJRK]\?HL{T;!c&{)\g>_>H#|>X햹1tTPÿE"ail ʛ-}HRj:*SIUdCl˫qPl%3TȚQξ bV!y `٧' ʊ'?&U+C  4,~~  au݀,`jxptvj6-#Geüm8sCB&6PN` N87>{(r+@OI?gf|h<Fm\*G[(g#8 @qc8LJܜM|VB42١Dݙ>Cw}+ڳU%J03#2K. 0fҮai&1u(X4#gҹe©E-ԧyjz>Z ^Q}o k2t8 5h&|K./+'8'Fc{Х!EbS]5jAqafo4:́ |P赼\4DQ!h)=U%I3 HMr}Ű7J'#Qꜱ;zobPj*@?g _ogipAqo# "Lihگ? X'7@KzL:gc\8ooųx I^jI "7"2h*Opoe9Bd˅u*Xg`vuy+wl踚rkF1dI/#{)'++kvP,M $h$zE]y`8vR=!jW0K;JePz$ .ww?jÁd@5y,s)n_MkB|óaPn6^sφB"ՐfqvэJé5yP;H2 KϠ {6|@5ĨF`\wlylM"[XN7]yܝLR &HIo`-T wx9g˔YfƘļmWM߃C0{_}zo)۽G N@UZOH H3޽"EfRm,nF[fE ԜVFOEF$G'b>;vjL>qL5`@ `SQv >>R"DBEE;$]n;>کZo'#+HЌ vN"R~$4+rq{VY}W.zt5š@U/tevZO: P'z5ڌ66-sRk-]h\|zJT,O=&nIU#…5ڀS쀽UDq# ~F4(]*m'qU #t.8yr<| Ebʵb6o-c H͆Ny Eˣp[':|R$<ގXnנE缮W n+}2Sq1&RO>8Bळ6XE}V[e9e75Ĵ+0aYJHY9эP뿡6\Xܦ5Q$ :vW#3<;8@*p$<0* mC/!CkgXι5 2:fjwta Mg;I 7rϭOS ;>TIT9ldV7_&5\O" lTRw!*<<6&_!dc}}]y еї>ִI0U#yPȄ>yfHU/6Rhئ `TH({6F,=&>9F:~g zDEhhZC< k &`gp %(_\_/&+-kx{'_kCfzqgDYPZ2yQ :Fo?ǢتBfJO2cQ( [7o ܝ5]|ωyAٕts4E۪޲fОǣpX&!6ݱɂaްXf7v_BiνvRP޻K so0Hrܦ* S:4۳ y%>\ȇf2qØB("NoltY=J;$wDth " dIOKf,<M6>#r/8#aBX*h'G?*' صtHH&>V!YA nyv'TRf^Qv1t:25؎jH~/e^$t} BDZD1VCP`CoSO "ǿ)+h$Mw X^P"\1Y8b XlVK) +_GO82G;)!Nr2g|9[c ?QM|MrQغ[2'i'N(󞲁hdDX (9FC-_|mF;68Ena萐!/͆Y| sSE2tWno;?)TW|8;[kA>`'zt2ݎSƣnY8}0Wd#X?ZǢ ^+4:%,j]FPE %0et\:nƔ^J*a* Se`4uz q2Y7Gf\M-B==\ߍoJr ɿ!1@2^UTR0'jȨ$sS!.V\ϫlCg\/3.vO!WfB'$e:IGU`P+_s@RE"?^bDG-JN<{KP%4 8.)SZH% biʾAR ~l-M򹪢ip=~q!sԈGn4[Ƕq?,vM2,̟Mhů0=`9FE6)TNvF`ttYp%po8ْ[8E.K`7b()O(_cfp6{ b :q1yn4O*'A?JG۟$O ӅUaXļF1lųRg%8CsH]Ze#p# s h#{J@eZZ_*Wβ[. Lf6"A afI྾1n|م=ޘdfkFrp-iHAt2.Ul_5N:JFqq̕2&V;3RWF[ßE2-Ғ:NkX/7!bdh}p7hth$w&ҟ4ţGiSd;N=rgYp$" d񬰃ʍlXAC^bœn| 8{!vܬ 6@t^ Q׾ 6Jn;Qф<V/uW=qB!PUjԃ4t,Q@p=+b8LS^DD`8zN. a??!H;&G6T1r(UUz_ɕ0~V*l-+Fjc6?{YFO8ǟŜb5, 0$Q td>bvDl~֗[BY$d",#YH'wL$Cy@,_1W6Z2c-VrDDWuX Bb7,M}LA|]aO:ſnB$m$G|~p0.neRD7N{y&S"4䭩qr Rbpl;X_t4P<˛’{yoac߷( R+yKPf9aqwz< f(gCĞ5B_aLR9@EcPbpn(}C3)vrj!-:%_o.XnђX'2]º4Hx8?F)XNfMlQƃjVLL- RWFxǎW ׌Lsdm׾rŃ7BMcKېqAhVDlNy10|'x$dN'IeSdν~* Wp0[:+nP6qk\P0 asdۥ"@utz6q.ΩGVon[@B!s xOs`R.ZD_S,+1]L9l4hR?BCDd++]iIe+־CW Z)s3eҮkQgI[WD~_rՁrY~-(E+;(θ\RH^] r!ewfp|& Nsl4DFq+9r, [_S4ժ!|/BJU3OuF훸z?.uB嬸9x_cI|A{ayKAmȾ7zHđ;D"D!&?スYj+h@L(y_Z`z{'o KioƮ_jyp[9LǽD+ůZ;SwXxQ/Kj}P^Qb NIFA8 Tiq?= ihdxf;P \A^C(͝?<Ɠ=l*0J{u٠j*i,i\MNǗ\N=!&-uZGyYW޾Ղ)}eS-eш9$țZH:y4̍>*Bؠp)8{NWؚw9,YO(* bTRP5Z )`N_2)-3WʮÕRorz ٿ5[y"7o|^ȥĘ̗H,*vF>ν[lP_ғ^^FT,׻C ndRPxQk :uvϵ@BUG)UHI6o~;Hp<\Bj7AEJC؝6צH=V<6!`ܹ>TC :N]r GͨÞTM-I^ Nw3u 6{j.A+3aѭN z |YnɱxN20a$VfҸq`5_,Uc)wM5>!--%>MZv6B_ 3Ξxt>* 仢o1#x{DUa.y!wLN= ?صzQmnҹ}#ͥ$qidQtl7w4<0sF!*`6 Q șK q {ePȊU1[LHsÞۿS1:!%If[$3*E%MV6Z地g qW6 ϰhj7b^aO{#TO 쥊ѝ<ϔZgu5 1}UFBz,|(n8 0 Fnی.-՗sCT9Vs49Iasp;5,X|1LFJ{*N|z@e差O63m_C5!*^wcgLhL}&~xf"5il{C۟IsU[\=f0K8G0XC_e[Tn]YH\t "lxd!x$+CN8iӞ&t(]7:ӫ1{o_BZʓ Z<_ )!_i]hǰP,: $9Š:AoW+iݢ+ft1 XRl81@ʚ5JmX,މg4 /;JfC\5Z׋&yN)!eX!= ;~[Ls,„KA j5qb{m׸w7}C$\KQh  zR9F @>OO=֛ na8t4XhGy8]^yLӣ?mDjhvAk7fTmtV2x8K];*@~~GN,_ ^`QAVNQ<=5X8.3Rad=R}ˮ\ՑqO}7z3C%oH\M,Ux̎b7=Vub\~Kસ1߬"2mA.ӒD9_cC!!J k(KP,/qrXxF%8ttr)&"C g'}dOI=Vtx~dA5JՌoX]&NlA)/jFԵ$/ y9c&Qf1آ'1_sIk#QPoFEp$'&K;(hq>6 [߿P5d~]'_#>]x{6ys8_9|(au}]}H rJCZ-!f }z'3秉,H%dO_ .._<ظ@͗|`Z-Rz*v6cE[=#a[ĤUy1#;bR+^8;\` xah{[<$eb-?DT[9d5$dsm:lh̎E{5gLްaIPT%o3IXKl"8XES[5\`1q5U"&4joqhr.NzA]N.ُ iG 9r&TdW-.@ش^g}•,3 nzlN=E8b 5g{buozR:=u}CuR 1#s.pw'qJFډߵ^־K(s f#y=t F !Y; Ј.TJn9j գsA-BPDK+LUla&C''-!=ՆaˇG7odXUzD(|.U %F#^$`y|HuJZ&zjұkc /f:}_B﫣7x$ч }][U#z-J(|\b61*a{ۀU sN Diůh(poդ\Xt(QJIۻ-IM*av@JC ,69<-)v1Ső"褤dI\c`66,b70w!*Z,#fFH|/9͓D/:sQs7_R`V;7yH?$^Jj8>+4«S0J'7UryM~*dhohI CĈ(Wڋ*2}zmo'϶(Ue&Q;%⻯N/5a{lѹdoR *:c:|7M_Sx{n2~ϜUh+youKgbtT=Z\G|@ĵS^[kpؓq̅qR*0;csȄPzFycGڿfiMį\Eq /h;;Se0>_̀lZUZx`ӎG)ZCz_>ݶE_<9JA˴O$` csWEw5(n>d[o!c09l_:̫r oRK)鵀QVNcsܖ~)1¦u?dc3[Hd_%2ezK]vgyR$"] UM+^D>ϙv._rL?6\ѝo[+ɯ1ΨV뭑&_ !(i(B)q'ʅr^s&`@)l͑СNŷt^3Ҭ=定H]r~]U*j rNAU2RFh4Yߧ2`+FpKqCq@?O@e- aj]1۩RmPk[ɒC?cQCu dBC{Yĕ| K'~dH%hdw\*sؚO)Yk q=CFtx3UZs.$T[OAHc@JG˜bAJwSyZ OaA]0I}[ڌٌ͵&p39Q?@նFbMo[$5&Q\XRڬˡ8_̍_h|Df(\b)DuCPS}38σןQh`tEngFl@"졮gO(Pn4ɽV!%Š<fٺKce 35宻" vGK$ULu A?bs[eƞ芷CLrq#-_n&U;`}_nkHTb'I5J~7;*'yGs̏zYZ1|3zcu\x\-A< cqgH ;d~X4݄<5S YGVk읮gzCJ;q}@U\!PCs=ζ n^{mb%YwIS XtH3D¾_ih.ѓ6W.QL]hd=tp^S+ y$;Akk@)C|ho]0;b[Bs$St_:R-&+PZ6=lLÏе!~*ï.CUT !c@50ݬL}R_eU@Ǝs!<΂6%\1}{yVY3.ɴ xcWG6 #s@--t+BŶ^E~/RՔԺ6d[P?/֧w=-f .beʦ4[zl=-Ǫ8b ϛ¡ӭm࠽p|d:  f>-C'Q~+O:\"l:F&8ƂHߊSY|iC~ؐ4PYQ#-tec}ܾ5e=MQ};_Ydf gEmZs0j`7 ~.~]V9Z8D>\s\Qz?׊5¹Kh3 `{8O,*^24|`{8d|3SqqwqΦ.L__u6$Y0^*{Q*݉yC03DZA\ {\J`>MBNd X:iEʹP?/p) σSkKjaI~Nh^uK5Ж5tqJ-^NzMFUOl>'޵{#Qs٣ >xw,GgLEt_,^xuyC //?pa'2uATXjϱ4ؘ|ԸBcVƺ鐌B$a=Ⱥ^&QĹ|71jCŨdpjs:B@4/ ['g&k9&Zf` 6 -~ׄ &.P]BnCPLjV]y(,kA16~ m]395/-whH~|ȤF@vPUɥ&lxx M34h t%S!1Šfj뺪Ȥ) oy)$O+t6˄ߎ용uե!G̊v"1ɬ1+7l\ _]'[TJT7PhUyyOLt,Yt"lB@ ܲ9kۛ1L/pxkȠ.ݺn5w95: 7 C(u Oi 4WʕBfƠX<9pNoV̔~M%%_k~A*ZE a_'_*ŕq5j 9E]I=׷N%ްÖ@8}")1+9=Q%?!fD^ ]=rg߸)-r,G[,WD"F =e5c lx=ӅW,akK*T ]owٳ G)_$(٠JĨ\6ƣdb W:TEq~p#ߏk۞HB䕼gB<ґkL^{ᶘ#Bh;=2PIMfk0Lm0|=B3<[w:SOrVm#26_Ż)QViXsJD QGrE ߝ(0Ёxv/Ѷ8*L+MRARZNe ECf! W͎pejT:xrw&́*eA# MbedēIbA& 讈Fn."缗Gvۮ_lLܔ# q:@y6qS.1B)aZ9w=żƐF`$N6mQYKI883^o9%M3*cG4 >2Nn? m:O&FwE(a[Wz%WFYd,ƦcT[ڻ!5 Q̆E"ȓ.p;W^Y[FC ~Ÿ?Y-p*hfٚ5o)om~yu;x*/E ⡢ rM慷*c]=wIY㨭k20"l܌=8Yobƌ w $N{{Bl.S< P|Q-ƞx:b{ڴR8}q[tK@&ײ/y >Ucs-WZז^<KD4*6j-"8I堕C{8EiFhVݵp_xW=)ɳ[ +fiFā@10K  :fHrޠE"zO43 ;h*Dñ,8&ۖ0[Wd^LkI jIh2'Hz<ǦA!wqv5h\loY9ݡh  OpLEm~P1' ]*x:f]Q!rhHбn iqlj|O9vW[~yNJGuYhX*-3W+܂[OV7>mH#լG7pyegSp;AʖB|b5g9Ә75iGՉj0VoxSaU8Z$Now,Q!D|Dj_=,WBў+54 wo= E MW&`bDBXulY!?8G!vJƙ^ru 24**M͘3jQm{$w"')=r.s!%CtW˫)U>欌gD1WOxm}qJ -U󙵸^!kӂ8˽2|F.esZͿ f'1ތ׏dJݧgfճMMVa5b g T2|rCa!(1E'?}M4bb)ƫ5>gj0-¿rR7V{SN/c}g뜍;!<˧VqkjЦ 2Le<'k* xRiOuCW5[Z@ g Bk9k¾yeRݹK` [&s]u*4{U;Lur C%DEY< A&$ 4fHBg@P~8h_RSzvH$ 4 M&ـU$!&p+2$yv# hb}{>Nl)ֿ}U+;DZ*.t$/vN­+\Oi+ WPƴ\ɯ *إ}?MOAn\[%X&]:?$f+^9lM{d.6WH$i ˸_+mmE<(B aA2A'vFc+~}rW#C!& < dZE43%0zF( Y0 p5 Ȱ!Գ)7TqaMw",4%i!4#i(o+rĬiS\dM^‘7X&d-[S1$_=΍J5c!썵-ha4B\=Ξs86VȠR'YDe_"WM+s!1rb'AR\~eU/xkg%>'}Y71vI"quj@HpG(&Ͽ[73Ys0鶆*OVTәSF(QbJ, R1zJu| ŻWW-#4:/ l-Ƚ2{vęcEh,5eٺ9%z=6zTNM|~_DV eUqzJh[5P!p 6;U^gvhW:|s2ZY8|޳X-ᦒOٕR ĪYr5O/H*)3 ɖ* 1Cʄ T}rДQ{>le},Um5,}"ܠȔ$B;B&pko,ZڬqD1U&=K{TU0Q>Ww62K߰$).? ;Q y9>nJ6sb9|M3r⩳?jyM7r)w`P[ܨ{\>Ws,jE!k䧥0ر:)@H5߫[R?}`{D8KUh[I|#ia D$br Fux;HkQXmH< oZM:F3+E󦚡Ś |&Gܹ5)u?p*J[VrllR#G1bW`jlv!Yh/{Ċ7nO9(^nz+EžDQh&t.㝐;ݮx5[7 ة&[VZ+S*ix>+hB!ӎ~DGv!`6{!WBB7Ɲ6p֑9tZ (BmZ. (Z@^bh>%SPKakC8@SSðSR#5aO {P}o២,zK46<nIcOP}w|f\CP E %pln QNQVU=s=ߑ+{~B1b4(q! 4;@ ݧo -D j՜']ҒߺbMsnl֋*izگt"|ozX8 À;c~*ו]A[ƍpA3"f?,c&49Pω5@CM٢_]9; nIxcݸ()#Ԋl^eC~k!x.Kpg&T*Rs0Hx:SRBQC9_bTM+HSM]%Q\=p"v\=` jm,X}_Sbr”sM_> :&xI^ 1^c~dM~{Vg(zёK'q|qn>P'_\: ~8 r$%uXp U"/Y<fuC ov]6ӥ/J⤵T@?~ Jǯ B@& unX'i;M>Ϋ5Vm6ڎ⛔d k$u>Ɂi7Ԗ,;xci`a _vXb;zӤT,f_ ns#4Qa3LIX-FCYx 2#;Sjdkm-Js?֩'idt,jDF8[2}))h[ {]]G#{xm<p&c;4x/ppp!xBT#5Gm.v\k,-ty]N? CAȷ'd.Wo9`ma<4Yҟ\{Zd˕xi;qװ~Aa鏤ʸ?Sn6'~zDsRD[iSd-e'ȥ>`DgGJ Tl{*ܽY)H8o/ {2۴h΂ -*L^#MϵRU~͞ _?(IgFB"45\~ܙU_I]ށZ/dR}G9MU;&g DS%|WaJU-9Fᬲ_H?MSǛ3 2 &#r xqr2V5;Y"A U;IBw#qɘN4QϷ@FZM؜{4 od?S?wޢ_M$:,EFUS6J$].B?(E] es.!ZC-/ v'w1?!"aUѬ,-:.`9=?_VE rޝZm؋k[+XkUJvId$75B. ߎqll }o'esC&<#nIM{M4A@ <^#@ψ`RoM8"uSN}ձTǍ'=ab@Xh+8.-9(@ޏ8}ixrev0k/|()2hf+f6'?#b/qJ]p6=y7v^R+QaU],v\z}?>"ƶN&LTcE@!ZХ QW믈ۤ8P2U _z_t?W̼vt0rt}BK3 U'r9 Q(~KOt*}:u=6Et/}Y-s %pBl=[g2jO M[9 `̨S>A8F@pC_QDڒŏ۴ 0TVrW1Pg:.tt6g]eB|}Bdzoi )\@3RYdH 9:CI,`VS`:3+ȫȖ?ĝYO>ܸdPj2<1 74 Kþo=kY\#'&ŕn'#2ƹ[sqHaKh+5mjF심c)?3qU?BkRD>6{I_jl6L4; ?>kī0 h1)?$pO*/{%F(ݢvԐE7TFZun ATHy8;)^֭;ű KF' x?1a /m; M|fmk{t?7iʛ qqMB$JH0ˤmlzl* u)ޕCݻ5:t^>>UCaK}Wx|r紩NJGY&;["+nvGޑG>4{ o-,=aNu-b/y9pi֛(eYo>|&bƛؼu[݋) #(l VCWn Y>r}{DhORhk*R+//}-0# e,"(Ǥz>7آ91)Bshal QcCTdP >S)ԙ5dFf_RjZXky, гP'WW~gaV`]:jxOo]7٣CQ\ye[xZ K^Y 5Np䃎ICv \{KXVx搻, CJ 2dDs wr 44٘ș$LIƊ.(l7 ݡ{1K]v$r)N%{`pDIW ҁN)E7ϭ5%cN؁EbmɂEhL;L^ºx^엘W(1-Ϋs:\;{p.qbU\.Ӓ(5I,veH+xG "KҡGMKI(.Hv;`ѫ5-T#N`&!LH[lBy>M7d^׃A1DA꿧WGʍSm($!yV{u3|źy@&A!o҆X>6q8Fo912s)FK7X+ppxf.H.xrxf#vlZ`;^~GB-oCEdK1եc, AH=ig~?_ƒvJOZ̬[>[J:Ww*t_zuQ}+4 MZ2s5哱f#ps'O JOfȭt[t73rx8ʇ@ VG)ȻŸ<KGNVKku]gB&4}ێ$v{c9Ehtk/=Rؘي]i K?BQ0 W} LK:MX$TH,t/qhRoHcTCy~y:!QC -X"IAa2B"^buh[}0j8<3QB6 xs+rj2 o_+J|ХPgs>FUALp2qJZOeCs%gm1O?0bjIOLÚb[ڭ dz%{a02R#ۏJߋ]y4MZ nnI8Hk6Tvh9_qebM ?XĪӱ!)'E8Mǘ^Dt[*"F~1 I2>M{PS `⚗UYZ;SuaAi E&LWmdQdʂ)|8c #Dj+cy.F?YJ{qzT0WtsIN(J[3{<_f9wRETc?uXhOѵ*Ӑh I<=DދO2ydAHRxz*ciJUZ`4϶G͂ϨaV%\c|Q|!DJ޸RV3Ѿ(V_-kiRcȂ!}jXZ U:!6%WNsBx0Sr'N6|X;cTH#8wp `@Y4p=o+!*< _l؍:ARϏ; =>2hgSoȮK̤]^*@k!j[0,)a9r<FvLw%Ac?̅XhfΡ y0b }*o+z6tcf⍀ɖœ 'wDħT<8jS.֫<[x'6r(OSTyz#53d$9E^e/K!;-6 ѴVcV,.W8qAB酔lu 䎻~3EmO$r/kF!DR,Nr.e0S"`?:4#fwQzXAťNmHB. sXU)7;c7+|)X+Rz35\}߳=[a4ea:6 {mcncX'<=YqNrlm*EOJ{f́M7@^tQ@fg2zCLJ$[ M ԩGR]gsDGā:39"E!jnNRQ _n3}bw aMfnm8Өrwխ1۶?Qpz:$":!8ZFC|9& 3'=M2ۙt*N-zyQ V[y:vAu *QF:zH?%ϸ$Gwf Bj^Ha*3J"c]b<°'ea~@#VIN?JBY5 5m<p!94Rdz[}izQО=Ä%j\GB#kԆf7garyw&$̖.Z?fW]ӗᯣu-k DY)a΃rOX !;aR @3.ok}5ضs @&ByW"9$Pv]\bO ߽.퀒5}$Rx @xҰ(<:/$yU~m g;k7Hҭs>c0WϢENVë7y-2=/~n)w0 `Rz Jl dE~%f60)5!A$p} @!pC7.jLWK&ѓN* ^rTWeoms8~Z`!{+ݫظrg+qWo==59KQhlQ5Js ##D@G*bcs iT* Z'IA*P(ESrb{ǔ@{a] 3 Khฐi\Š(aq@[Dl(?C}- H*Eb# Ӿ~a_{|:TXIzΒU% =&1?\uYz5eɌ1_Q o #-V z~AtqqtڶWqJܽhe+Yh=@%}>k34^! VSL? " %0;<؜O 6 zh4ՠ(ԋċӿxLB_}mʯa֏,_ Ɗpcre5ڝ̃G A*O\1k.YY ~]>+;b3SCMk9⻈JE(S;?-3#&o87]W[8S݌Eb[2[+2%{ޞXjmڶ5gSO)xGwYFNS3;1h-k`2{^sD™2z5DF,ٽJl僎"n$YA#@&8rW(~aaUW` ;w{D(P2N/h:称l0Z F{g_\cQV/8bT*>_~Vi" IЖGny8rQo5pj'h2N*=@nO;3 %e/PNn ]گ%Nb&K,9dVՌ sY1uG^qQ8[\8?8t" {]*Q/XR(D uA#e hQJ 9p4)I9m;ox5"RMLW _6]X+sOQ´&9 v/!Ї>:gTX=Wʕ!hosb!FyVz{Ya7 4={9(qd"P,[+<~^HMH-5I><3p m'؃ٌb0V{Ӣr,eny{Ͼ;AgO.| 9254Ze¥ZTs&!!%$[42 8ʃ<B9F̋Hdr"#!ؕӮ }EQ.%]m^Zgіb* !ψb{ ֮mnKB)gF#TNG]AQ.2^(l;hv,*)ڕW#ZEͽlZ+$ܺj)8v;8xம.m0ٱJE ~ڮN$ d`Cjء'K=r;QMUػ#}`YaI,:[hy{:>.3.6.N(dZ5ߎ=#\D џA|1u0h=U#%rwli[5Rcsl r ݞ2 Xp`uFs[I5$j NXwK$UZfزYo!۱itYVZGH:$pWeںOA/ʖz mB{ .1 5%H»K>5cg# u1C#* i2B\}AsgG,]TWyW}|ݸor| 5NM4ӏK1 _ K`fjXOIjt{_{ER8Vw: Nzi}a6h]Z07L:]Z'tdّ04.NCk. h,`|HH{Qk]aн]NsvH}[ỌgΏcrop;s/i4z+W{-$U*OԄ@7 {mmr5KT(kuvXȽX]m.wbzS(= Aft n84R@㪐p3Л;eWc5r霎V\ 3+A4/sC. O&]pT,nc`4DuTzR2]@h ;2UDl(yQ劚FۅSPpz\W4+D 21|@) c92aVyV.!SȦ 5#A+=.+@zꅖcŚow}R7v}=ȅ6xbcF{as_{26yܤzlosPL Q#ZUX4AHW(ǡh6 2:5ΞkcE8U.q1G0`cim w9-u:]TߢAc$Nnŋzю^WqI^0@n>ai(7peSAo6t75LHe@:BH)fE.¾]N'59.b%yIx_!348os ^*R-_` $$AOs6wYx9ǣ FK }Vv@JܣXڐw9^|̾8P 2qz7Q 4`zx)Y6S:+*xu R7̜g7"`/ZR@;j yI)dp,0YI VHx.NF>߻`L5e&o|dM8Eb$ruέsnz~(@ nxJ;SR|2jGID4la-ȂVqSvYؗţe ^Ҏ3+JCnj.|[ Q Vls `:(t먿a(mՐW䘴3vtH,!0Hʂ0:m%@s_ph.Rs6Ÿ0 l].PfDE[%q<1J-n3ЩEACf^2,vfAiv(17xs1iwx] }m ޡ0WzU}7T-KGOHa\SK]{3(ӒRm9R2>xh^6bAno__!诚_*3AX' *]b -0Xc*X .GvvXeP>v16aMNqHO,)$PEK\jSW/F$d9́GqGƕy<3eIꫝð燋 S`Dh<ՀA~lnZ!)`E`6x*Oy#]!$z Q/T;6#MvSnCѫZֹaޕ^؏mq2q)1E2Z@ѽ4CyJC+ުBQC[^[6!@ K# v;.`1q'Ŀ au.|I(2.$Hq{k0W}HG3b? d " %֊uh^~,m2JJ;R R^>dMسGQA6f.:w/G8;_g8[yv22/ ŚDۯM;p0 ^-9#BBz1uCJOg@1@V N3t1嚹yRc ^y:Q-/ELh{V:i)J4Gϖ#6 Vzێykc~ڙBǕo~5V&Z'>^[qp )ԫ_m͈ `g)Uk>s_Oh=_\6>`K}Pi曞:IEϽIrhёş}TDQc=eUԸxN-deh.l+3/1El0ՏQGRM dN(۟e\X=0"ۆjYӎ.ۀjZԦUN Ud:!k-CDr\w]Ho3SEn~FNsا*kjF!el #1װwѡnUuu >ܽ:TlT&e ĪU9jW0Rs*d{ƚTVF%:^ VUb>[|h['k}6dI7-=uk3j-Iz&+*jO)/n{-*wlm=WÜŅoߏ5sI xPr:1.{9 N ex37"/pګ"4ҕ]uwv%HH)". yI3RdeeocRia[9s:ZD X=>/!Zy]גh5\@L! ,w 5jYg{X*U3FTcSrVIZtRjc O+~U]iЅKj->D7)0N"_ɤ`qEOЊx6s1] xrrM\Y;M~p-47r-K HskwOIS >I! c~#Fglb])y>nvQ8 NK$#3b etmK>t).R",{aj,!knzIא43V:h,9/˰ncRr:d8b$@ʽvg,D7rS%; F+vGbWeEZ-5A@.* ʑ)iKX i_< 㨖oG,!w"GA, [j0ì؝J*7%hܗj<Ҏ↼v~#v><#"Kf*?Ne3=G8voTp5x-F"ܫ) *\\L,rUha2(ly|_BVAS7(f":C9jɸ#[ 9ɢvj7qCRrV3T.U^4]@xRdžk/)t>XQ1$ ʖۥVpNbaxbkvcȋn8"{|g tHtwdhöMHܹ *P:\aQjs8>ES+1»V$逧QpѐDS۽/8F_/% ,9u, : ?AEPwo}gvfٗp"5la!d=ۭ˱I6钢rj4-gj,~U.25FvT(*a6 /n̞k̻2#[h꣩i؁%jH\..@ët&\9D_oJ<`&UXbd@u\򹵘H]<fOdF'ϒmV-BJKdmA*mz wH!$Yfsr(朑^G|*TXhakZBf[D kE6Y1Vfd`_J2(ӂ^^j7h| \JW}נͨ>Rv_ Ҩl cT-vC/d8TFRP T05\䞰ΟytCϵ?]P?4en/pyOl*L̜|JiEə$fs87ڛ`BzD^02/K( |{FF=Pf_|{Ɗ(_}axԦ?&P\#XyQ~ o4mFE=M3D @/j֤OiI~NtvژjU: ub;K_뜶CtR 7:凡s}$ϫC:K;U_@)Xdff}Q̧i~#A兇PxŌs4 .uЙ($ DtJ |zbC@fE^ح+/W*x1ۼ6C^ )k 2S)Fw5c[~q/o 3 6;|_%㈤gcԊ%\G8rԀF}ɦȪ2TɓJ2p0҃ u5׷ M<΄sr4V=ioq6dnTVg>=CPP"|%Vf"m5Ɛxҧ#RwtUvL= ]q/̏(vȳVp+YRiWZLU/- .A6+D?3`:ZnKS Dn:d B qCdJ{bro߇s_?\t1gi+~KPk)(.™ k033?=Zkʉ2oqN0͢CtrڒޞCAtACxNn B cUqEpLo (JH^2J}ȧi!"|M,JVBZ!ީ.=y4$K' p}],b2Zz$* Dž(mǨNf-7Q0"j3uQYAqd@IȔT`MZT4Jd\<'n*Ӎ8g 噋\$L^rEF&dk;t)ݒE %뼣=mGlvֵ#zzC8Gr cG@ )Bv5\4+a뢲mYE;{r|U+Z:<)TS&GGʐ@DULEyP^\E vۻo-@ U" |*P[5Fr'PtE:RΣ $UH/Nv-f` ,z\n;A s Ъz*jWDn\{E%D?$Z/C-ὴdd}9ɬf *B<.>du`dԲrafZT}UwOP`8.3#Џ⫄[".Jd5CH,}1]':~rÅXQ=J O$-&GHG;,Ts̈KZZ( )鰍@ؚ%Em9l+FIx(Ĵ&WinJuR4 <=;B?o|6TS:Rb\sN/k4&5VL֥9݆-쀎Ps8c@Ocr9i'$]@ij|YDV806 oi)+r@ES o>_qC䠛Èv^^X뀩>ȳ1P0XoΌTNʴe2U w'¢!I/fQC&}2R6[hDݺ cp,J'3dB~ ۈw5R"2̋enѮc~|ReE{v\~ê I6vN:h bO\OaKo|PKN^%XK!Cy$ P o6ւ!* χ ZU[f&0Iρ7E+ 7uf H p+3ϑe,Fgi2럯v`fVhH(@GsM4͗Ve`1]*9 y1-(j8f;d(e^ #78+wU3035A : 2u_r) bwGQY<&$`'; Y@Edd~`=ch6E eEl. tj`CJ.} / nK"(nCEtK˿/ierRiv}ePI av q ?.ӝ\ 0 5'k=Dcfghh=4-ev(q|ZcѶ#)lH`>[Jѽm-GRMlxvҮ.z+U'U3mDDlނ+gC^.>A(FV7 _15rЎx8Ǐ/hyx#|_Q~jj\yXy] =C0{ ;)CrREUS=<Xbs]=ې#. I'R,mA8M_;!lɠg6q Aɡ(4}Dp4DC᣺F q9hS]qL\0_C]ݳv׫ќcq`x/ pOn2Ʋŀ~Tj9:RX D 7zǒSdiy/vz ~lDA)2`l9!I˼32yZNqHDJvnu1Ĭ_Q N8n&C_ZU%]EA7ٿznL ^28di,YlHdue`|U+AdhKhAdqs)-DiU2oYV }L2UZ"4?ò۬k9qH%!xiSܔb~v_c nrgM&{JR{Jn9aZQJ<|QPjS%9XxOȁRy_mIIX2*sr0ȗ>JU(YM:aܳA !ggg8O ` 3,U6ԁm޷5^`^+ɻ v@snU^sa:ZQx3)Uۮlc<\KFPɥ08E7ˉ{r}.z)+TtF0 ̊-ީ~!q{tYdƴ@_9#Ƃ HOS#("CNO|T%ߔٷBtxT>HQ4;:ۧB?K8A T.̂ p7~el7[n{ q_=BԪX%+D& u~F57qdW[/mD%5cubWAbڦw~Nd$SaT,㉰ACAkܲPY}L Z"^K.Xo!ta+ :>ħ(}i* b8(Ujt9@GUak#2!,*4yoRă]z{8KkR' .dM"@rtUGҿ"tVv H+4*3ܫӿ [[w2f=6{R<y/'h,4[,k۪NVx&F]![ O XKS"+M"kUu6ګSxI6]ѭŁMgq:t@:}ũ|a䯸̓d|WZ- *wE YȕHx563X1'YVp&Isz;0z / UNMR$V#BOC yK-Lj@1KFet"65 !мo/yycgm ]+:PhrǓ@}ht >&= Z[b[ow KNڝ8{Wb &TJnnEKVƋkwj  ިr`-QVD6́S_As=4uKk$*p4`VcEحI8lstA83*Kn!"ǺuxgOuF cŕ,K$-{]4by0& @|̱T/aT`Iz2wv=ՄI-5/kc+Mts\DcKD7濑&[IY?o3uZz2UETBmBZinG) TsVmT+~Imu'^2Qޕ`ʸL(+fI Ϝ_& en> 62\ܟHǃb2,'kcmOC=Z Wۃʃ@7֫i.׹goLԘ 4l6߱#l -G1ڢ'ips+CfpMe|*]VJ\Ad_"}Jj&,iʍ W:3bغOʲ!r2ENA)H5v(Sаq8[ p'lTXbN6q0|"֙rO` S),ʒ- ~R:]*p[ڍқU8I<^o :8}ߜUcbnApx(h-;߸A]?tgElQyu9!Gd}Kk *DWhĔ "PMfr(g@=DD2$ bSRU& xBY'-&9t5?bgac&Vߛިsq,[91VmXyxn4`9B=n[A\m'I]kI7aىo03(fֹ(OIUD4t\u-f;!N%˿xj ZD wƛOWvK _N{縩@.=cҪfqF*i=gLY*;A4fڻ烳Aze1ׇZCig֞I" l| :RyKD)Z@n{&yy"ᅌ} ev3Owwi]/b$Lqw(H2y9c*x|Irj<4rpVAwKU@c{:~Fոm7Kj=rg1K:0sj/Bs,Wx0=ƕVnmZW'uqsx^SY+߮'$-Gto@]3;{E6FuYN}0](a3j:)a`BC}SxFŷdKo1u4/ҵtmg"g[kq687U,VkM{(c@y*1y*gh82LuB@/>vW}DD{JZʋ4(G`P/4U}7Mi"*,.Qζ_Y}H_qchЀ\D y징97:)CEbw )ϫ}gIKA9ϕ%2&+1d-Zv$Sm+G73)8,ʿHFE*:𐬉wb5M &8@ohwCV#p^1 9][!ˡg/u\4^=uD~,$v1SqjI2 k7zBq *R^o3ώ7ɇ˂/Tnl89? ӫ%B9 m*ĥi&Ѣ4 ZQi$riX rTUFTdDZ(6EcgN=˽ί Vײ7D8 `},;z.IfiI-Α}7IݜϾPC=b)`?0r4ʣ'#&̊=zsJl2̙Ktw֩%w_p.SdyVNNkԦ]b (xQpFxSTzP3=ŒdްqfeDH!bEUۆ I: :UAs8cYZ:Z:LSaV_1+=K=!(V{ÚW #MVv؍f'ZC~=IH3џmAYڝh #\<(pA< zYk0,c]w"Hmɍ>'I`tv* ,v[df2²! ?}\In:\z ,,ȑtk>K0[C.C٘lX /l`jف?YuCQTlX.~nmWW"z 2<}o:Vnĵbfէp%e @ON˚tN }PFxʴwasw0l"BNzaO9ͣ]s훎lי^@|YK/ xմ0Z!+O]wPX Ӷ 3Nbr2܁F:J6+6x|!k}(Ͼm;:J:6r-8t/`T) +WhF QxdXzCYAX~E wy>ݹ51˪ F$FZU<:IZg_(prV d!` `0}v5Kg+#m B$mz MN @)錬&]c 4?C]՗+sRo0۾twZ2UD9Q]ՈM߅(\qPlgc&AJAm @^-Y STKxKh`z- AoN9Na#~;Wj9Oј1>W`? ׃+? !P>m]!؛#V|S|>jxϿy {2qmNry ńzAƏeV'쏝unIl$0=9jmNA?*@#㛙+w.iW,~hzٞsل4z(N0BA)Q PumJv^H[k13>͛$pW} lˏ{ߥF`b7oo 8 'Մ2l`VxM"vmYnQW6HbI;A`S|qwZmOg`u5RJ9yW3B^`7F'hÑ o"SIF+=T]2) Y9Lanp]đQ:;dUmպQ3S==qn".Qdt@$&m)o3JəO! UCVyIݐ4pFdf?_y(Bؕō~lVvJi9̕.9ZtNO++kb mS|pUyP͈LxkmźZ~S#:3r{d.B#|lt#ջQ\W~襜]A51o@KnjJ7ZסWC5vF$m_to![ d}VOÜg"@xJTOŏA^A!?QzYHHIx#AV dU ,fƶM `gv[tX&&"6gL|] 䖉> ᥂ ]O %Gs$V!qm|9–HXg mUght%3/ˬTlKX\2$oITC4v?Cז-3_bprL.pP\v.J'^r)d p;X8yMZF6Nxgyifah |U?snqpo#?!8 @gۿIw/e.£R7{a]n },;!Y:ic`<'` Vħ=e@{ԎK"N'ro0=L$zzuzWjRͩ+ZԄ7$tؐod7x"S ]!Mw~`+oQDYTmS.D>Ab9 $I2xF5-#a>M1d')[O1p]l X&.-\{`3?xڥTڛL׾ 22u]խZs$V# c;k8cmx FO3UqXhToa=է &#RX*)1f\:R\:4Q׬`zVfSK#g6"A>&m9?\=ǡ2}|4@% bϨRc1[+΍5(-d჆_Qlql b./ԏ+͢f's //hHΔ!hZ89ӌ53D {~A(4Q+IM:!T$Zp#Y=vdz?ˠ^=jYȦ+*{҆9$|D-:$Ln"@z)dCkhhۢFvkt$FvD0ɑTd t @1ůԷ/; `*"x0r*I9+qP؋=ͽjZ&AXrP ̒@jA [GR rI0J]rcASQǣ J+>*Akk<L2d"h sY2ûtG*rԲ)Axqsdm-#ΟTHD,D nQ_l((Ȃ9Y+ߠd_j$d=<[.yaÎm~T>Ne9T)j`xqmL-9V4@" m낙w\Nv4篮ϕcRyˠX2HZh}b-2 }%ff.wxpЯW ZYA]aw,-ч&EdPj;1UyD )qny9M £ Pư$@ۛvZY "֗Sb)J̚hV=i']=̘CwȚwY02TFYp`+b1MY d7-WpoRTH8&rw6j9g ]~KBp )d䣘80ҨiE ,zro2'Dh6txz|ol . aoRUH&~G3Ħp8 T_sFmvUeqvؒϞH%o2n^|(bszp[GY]HF`b`͵*ra 4HآRlgbqɡG1 ScSM_%~@j}n ,|((e:xojszP]i wY- [J7W}}:?> 'c7yRx6L(eE NvLM\{?Ly1`Œ'U}?H4U5 @ˋNۅxKFjOFHiީLt--ӿ</9j) ;Enj]Rg*P0Tai6e~ߦi]pGMֈd,|ت>9(߅aMg 'Mq1?A2׌kWPH^,,J:`ʕLs{ 5#qoL]Fme-(|&bhK^_-8=lSHE / ~-Q׽44/Ñ>'0$Y QR|I,SBg95yo=X7քʱz1z9D ^kr̹}2\g T,2`ҁJv( PF+!pN)@C}afH Yu;FMME/;לz kE.+L3׆ׇkELG0ҎF䠪mlwo],Z/χOVbyԔv7kDߵ? Vicly*uH&/(1x,eŻ+r/*u̮.0q zfdE sx[~52 Ȣ( ϑ^~ZM|VHk=B*˥zJ#"NXϜ3CtMOe Xv*@i4/R8ZJLzx֛ (_qf`o|ey{6)Bw2 K}kKBV5-Qk ց}?<1d &ܘc iV-U:Q`8_ SSup1`?] h!LıR[u`O= LdO!-sIJSa6oh@KF4):#<FU(1x%ҌZA '~fJ(<#5֦@mmg)U#ٌkۄq:@7T [I/a QN* R6,2ȠfSAh=<._-]Agc1K۔e  GSP\EKl x> |j͑ {0jKk MAKǓԗA JI]}ʬddӜ=t sj# RHۋ~=Y k`k|,Xr:ut:0.#a8{Sҥ#˴hx4eӟVwB3ͮ+'NQHBAFnshϾRa?-Mx"]Ԗ.|xT|@JTľѱI$37;>f 6\K4f\>b͌~ /WOO{.R[@ھ`4r9)qIZ,<.2o !+[.Og]ad7DRj\=B Iy (3y=QK5g%bL?Rf2B@>;{ʒ y H/ *)"Q#sj'chCRvCC{ j%,/Bq,qڃ)Ґ5>U2eTݣ3m `T'v4ZY[tE?GHq{*Üݷ]p3-(_>(1jj"83aHWݟӤa_]jy});5+ 'o5}X?߹δ*u?# D،tDݸHcdj^c Ʈ0kdX;;y&X\x ;XAuDX=UF`v=Fet[WѭE4ƃ^ d֭;FomG6/]xFs?Mē'ZS^Svh*<@5WIꯘ44XKUPxxiT檛mX*=?۴"}T^-+}*$ w%FAױ;!v]LQ, nZ3qK~ M3' @@ V#lni౻,Pt?eP@Ez@|I8Z:̠vqEkzbcgV mqF$ԜS%z@ d 9ƅ /O{,6M-{}]-|švKNNWTF8:V-lHH=ʜt\&[B't7@y09-sHۢ*lS]`P PS4_6%硆ōB$κG2S9⭕t*0 ye%r _;Vÿhm=c#vV&*WÌ3M\s9OɵuuEB8]9| ָbݲcJyd@}r9OإEhո¿Ɯ >Ys&~#+vjc&ng()_xTK;6=, ܱ0Af泱 kY#fY"ՠҰVYwlbBr8'/EaݻS+iTYԮÁ駍.y 4B5B0Veh{U1@_vXMyIT98&dT;XHv[ރ,&GuCOb5E.zPf"3¦rGA'!ňAmgc}14ڰKx#6n d>7(SnN)wmڗBhS(KSdgFHȁ}E6C,GU#TOlk[L`K0xE:pKSgDo٪9闇9E7ej t׀2y?msMv\Kn]$$3K͞@qH9C&̴}GCgpXsTKR1F>n9|5C{ gQL=H)]uյS7\i <<7Tx.:d&$0쨘+SXɾVt2WD&ҕ;ftOPoGo'O;&?rޤ7y&5gp3#[GEr-t\@ @Þms7c45 a՚Wblv \@KH%%a34Ps_~5"mvk !u#HSC=ۂJޞ"t<(ӨЇj>3Jkv/^ ia1T,va2O:pgغmD1ReA5=H /W58ۑq);Hͬz%-:1DXAT? Rd:- e^Mk5|3zQ vA*W[AMݰ|]AybwʷmvW(]/jlt2hT.n2M_WM/E~|.z^*Jk{Xx@-)z9I[zzb[czzkXUlf ĎŠD쪤jƀJSs9WMnG|Vx>]jkGCp 5 * ;w w͒qoP"l-[%MOn~Roqt! bYTG{#N[im+$ZGM(8j o/1ϔY`6Q2} Y,<-XdpHio2 WN1C#Z}^+v  S+6|SټpRᖾk-RBThV+VEWVH:p_Ϊ]HC ZYҲL@:ų%N,v\eQ*s)_J?"G+̚~rf;y2U I(jD~;XN[qcĝA _)b=cpM@WRr :6CO+z;g$s!'i6doPg}L>%cطJ" |,_s a$ASiRwG^6KW׃/lWTMĽIe&2ٺpw6=N:zΐ+JA7N”jQ NS wdHȷ*͜FT=?m~KaԈ)6DϽE_/ _ B*<&0{ֿׄeEeNP ^8 N$WK4Os`973/HoO io:$~M*vָ[=6˒4-NI:!M~++ɮΣ*ަC WBi55 xLĻUN {T-8ծPn|5=Z hَ>X$z5Ô +yYp ِ=M[x+ZŹIĬe" G0ю(n̉PER ٰvZ@(.Ndm?>6U1wjG3AH{ɴ/uVC4*FL@-@!L7뱔ee`Xc&زSJp)_F&huJ@x``S ScKe]*W{g]( 2]An ZFӼ|*gŨ^F/ۯWư_0H}ivƒmȃ^oJi( D@@ )3  FG3EzԔ9CN8R?!0gN4#9Cu9{v<6ޣ ;"q>!L4鵄]UdR"oBfPv؈F(mX>?,kMÞ/D262 j݈Ҩ)Skp^zo='b7v }*5WW 񮜛(.|P䌿5@8:&nu %qwOB\*T{U _@ؐ"K@eg#p  ge* T) *uX U6FD\1 RKpzW3B5|{50u˓!d^EaO7ª24~ |ɵ ĦC"nYm7ty>-tZjzFS+Uq{lD)xx=̉yX=m) ~'0\an^^V}QqeU}f%Pp14iĬ`ihF++V)|3!G|5u p4e0"qi-lK򓆃H^nUeN.vH4H ?lkjGȚ2԰~"`UU<@@2GK >p,䥇S Hξr\U"hi_MO&2d QT *Mob{8_&kf^Uqw]d[΀G˴O#a QRTc"|cGDPaLCle$keN/I)"P:|iAӊ+La7ǞW1ec2F*j0\g G@ơG =zmlSVkN3Gz[*|8́ RkL/@9G(2z98%8 K8Ω٤NFx< 1O,l,ɣ>e* tզ-w9rW3 f+ĘɹQլ%*[cw&L͌ƗRkvѪKy@R A")[n ]E5@G-8FM W,wIҡY,}ԍ!A7H r8ݾ{"OEJ8P\DZ@UE>.{kX;;hɺXWM6hu씤"'8@h!T%K3L)"fǐqݘNNBjqҾH]!s٪#K߯F;EY]vpג6})LV{&P  : o}Fβwb!ٻ#DZ %#ܴ?zY']N)J$dE['O)']_C_VO74|)BTc?EeB%SS{Sg0b/m S\mT?Ѿ_יU'e 7:vtIoY =Av0%퀢aS f٣UX"f9QCg%]3UQ1RcZhf pWL(Qn@ADyPxx l2LL)ShDbwr|E=<6Ւ{ HFyns{|M,w8hQlZwq@]qmXd&THquokn` (,`I@~J"t]~te.+&J$[)YD)XJ:d/uy <GJ .*]hbo:`9}'!· 1?^U!bZ3Ww۵VkuV_[ÿ되Ncn *r~pVdrT֫&a3X)77GGgmϰ W/\1>?梤Loa~>EOG]m;L_gGV=R>y[1K(q]ή+J>V-rVԶo`? $ o7}gh6rjbtTܧdi a[y2}7y ,WoxbM5pwزX;V1JvOw$`A9l:ل٦Bbᡴo9^.K9 _fp-ARcej:zMItg1!lO'yWa۲뇪m`砂֞Qn5v!vrόefd_l=/ t~Cc}R~uhRk}M/~T9'y?p Vb TMQRX:"hY"`&+ Fxj rprUs詳xf˾C#e_%*'ނt(꼩&婪(SyNP"8=R qpa՛Zɕ “8' Նo!MvSTf"_dS[^hC73@[B/2AvyXEjq 7fP5rӯdvIY^m9їe#GgZ %{_X@B3bK}ֿ! 0;:cGL5 AON9KZW\m *[6}fWn׳y1=TG01'7ި`v*Cڽ9i(Cq16z }DPW“̹g6E8݂zn1?Yd4ZH7o_ ›S(=G5>;k_<l'YW\?'~{7& Z@J፻+.(wpꉣjU.[M yG@N!TLnJ3o-zyKVr3~^M%)jS6D8izWY@ `aEkVʢ@˯B1vHD`L{!OO:u2WhBwz;G64p[(,$xRK _h{ug>?rwZ2 2,DIl<]27Bj[n(JfK:56P*_L$̂۴Lڴ7l[5l̛+ݻfv]Psi90M3n8 42r,ybJĤ!U!3Ҭ?Wtl. I~6K)ܾQyTH"Șb l~_N%nR {ooKkA{7Ru@X!H,t#n[]T?k8q 3~]*)Z?뵖=cwHO;>MV_" rКxQP˜27+1+FmzѸAe!ɕuR bXo,w. qd2.C u~mEv[tʽSLb HrDqfk: atں +eu9 /=2$ctA& xG2HRsՙ*'$U=obXw$=Gz,<S<[gаaZP 9NxeD S_@j6wwsRmcS:gp!y˳#?ډ?!^V NP\+qE~k7TKiZ> {0f=yΖ4b2C gogu{ތ }67bȐ&2G?{\$#t% ۨS4bJ eu~_GW{[]s.ڎu:V`iqGB-oщHtc#4:M>NET 4ZF)aPX3{~_]AF ,SI˓QpGk>ѲRx,eN(&^Dh^ѧ;3o(iKOWɼ;EOglbTRÆJZb <(;r&̀"SX#Ң?G?R>o0ܩ?k#/Uo7MS\Fֺ,΀zC2ÄT 助g3L{3{iees RHbmMٲKzP it4i&ar\`gCv qiid9*'W-T{?u]FMzE%q*h$i_ Hcį*}tՙ  $^Jg8kX֐q=pC4y YtK %8=+%&6иeU(!1Bf= H+ri?Ɏ}jN~Xjܼv]̋s P[H1p'C_H#]b3hw+e6v.;o Z3CDDTBXsЉ=2hX=nYsz,~B]#w8xL;?a`۾mթR0/Ybv4/1Lſ1*Z |''jnx XͶ ;?" %`2R,l9qip $ VߟtSeLat<4FNh 0H$@@X@pqxn D8;z0<+[w6C z}!#Dm5Ta1~jnFJl%Uz%ꟑڐ6n^2tL'p'J~4<姄FygӑP` 3A``jQۼQ~14 乆m?>CRwG?_ m[ n6n_Վ,7'h]Q J QpQ~I,FMZwҩzskc7M={۠*f0Ծox5j宲6o?[zy"d8@`I]r.V3^ m^Z *X+(߰8v.oJ͐:/Zc/]ϥP( ? !ٞ'NXHUK"Azo=}ɯ]3`ߖL]y_Aэ4bB9+?$&t)W`dzvkTM2HW0tyiten-%|p_F*.y ko-&],ygmģ>.a2ǵp D%lQU/0=ITKY?M2RPخ7 ỀRx _ͥ:ĕlvNe;e&L L\^["ȋ}&#سqnH2-ɫ~4U|6U rpBڣ|jv,ɜirIa_]%]lpz Y{#Sc#ǛkǧR=_#sbM  8S ` g gZ`.[N~$hyq8f"Bq<; xiHlY=ʖX۩ZHWk` l7+ (5tw W]Y${sGb(PϢ]q>Y I 0N}36&6SmnńE|ݑ[HWJ^CO/}1yc&ޖ׌N?`hSẴ[>x.=+[. ɝvc~AH-)8=Կ|OgxEOӆ/Wԩl쏂3b=U촧D9 (Yc$ -`jO yhCK "6Cvm٬Bؠ2n~6%e׭r]@&+4;B"¼gx}V4T(r|XD0ZLlV8û9޵r;,{A3&XM#~\w@c}p&^~N\Fbץ'ʙ|ư^G"s"<6F"мxF(1g01BX&3󾝤óլV&W~Nߙ.#_dԨYqS%'DDN_;r_J ]?'9lV8Ւ, Ҏ\:FginLVFz r/_vϓMDGpbp?tihLX?;;)+ p-׆úZm&ej`5@ +--ME5(O>L<IVt߻dIa AH}էiuSv4Ys赂*k\lᱼxǨ*qdFd-ZxHqc4,nxCVuPN+SKDs^|_ ]ےEwGw`ǯynZ/az܋/Y%8/9~lRP@fZQ|m7ۖz!eܜ8<*˓] }bd,4_ll/&0v\RxHbd)0nkhWVo`t( =z,qGB 䧆 J}=4hz(0MIDeqv_т;He7tHb䴙R$99N혐(/o]UI_7 I|5. [̟|X>|JFQf^="qki!nהA!OQebW'!);uqT(z4ٰڛM&S zY(fI,E$vzRi\ 1R':ʦL4*ZνnK_{+Q(a-KVyNn$/Zx*yfS"tOT𿶵=l@nv[Rph=ƞG~Bo=!xndzKhBB .Zޒly=ԡhuPg0tov _ UJί}2oP5⬭0{U(f %R-8CAoI$ﻡB;v~|a_xB:@fRp's*vT}*8,kJq9dq'?gT(`. *MNz2̇t-c۴'c݌])وgKQ`ڎF3HT{RRg[P32ndo:xYŧ8>z-'3|lGMU!ͅTxƯ854u6- o]caiMdއXzƌ3^ش*b!Aut}!Dsr>p7@9C ']*ZёED[d%扂R m^WXT䢂eq$$+hyA+zRYG􋈸36SW-TYvH/p'Mb;1!_"U eݍT{Bb\߁H0]'@3|}I*d7eu`c'wVGNbdx3KE>/ʅw`C.=ěW <idxhu7$?#u2l6 {iu]7>Oc"@˯llpEm@sH;!=vE}X# oA=y@|v);Htv :{w+յGuI2#] .UB q8y5:eWjQe.9y?ر !z楆[f]f6M(ow]P?3.[Zkժxݘ ЛI3[/t\4m@*:6SDuɻۛވ~mضE֭kYje19f_iJVK n~qݱ[M +5(U\Ip5Aa-,e?m>4p{ T}d!_$B؋ YfG4(t2;,2J,(d cu,[foK)غ/q{rT7 Sy[]":6^bag5i<}vb4'Jp5G䱎5u:V'~fMv.RY&mGOh@uW

WEk# l fl=\U䜣8:lP%@I}HX&`};k'hK 7!;`.WGc;]%#> wA"Vez_0:t@6NO$(BPLQGNQr#rS~^+v܋,MrEHX^]Os<bq Bm36]HąCt V,/ 9`$"_g_ܢ r'i.jE%<R0dwѸ+_\ xݏBJ`~ /WbGv0 fٟQC{\ku7oRXu?.X.pA&Ĕ7Q&*9qIt&MƭJOĠuU\?M18 / _!Zq87l_90RĹk 1"E3kN Z;e*Zi ia  L16I[0FQ*^ O>8ο2V r(l)􎶩VݿV04"^T/)!Q l:B+Dp5f?#{ߴ#H8\qO.pPZ|JտWGR= k!rLJǡo\Vu9ie><@cj`X9v/o=J6 ȸdscb˨Ze?`j9 T|L4+8gT{1hSM #e *RvaϛOIu!\{e*mwإ 3?Ql,H>UY2fPyr/ d3Mv&-<5J&|O^GÛ"}WOa#am<Q7z3fQ<+VFOk,EpHNI>^r*ѪfxlEpAB굑-;BƏNZ|˘ 괿@㤮 |H(\7}iN+$b;nSPFcsa6ьk.||tiܠU2dRAbбoGaC Eq>bT`ږ&+tDgZWmӋ `ШԫTzʪÙZwVV]>c'F|5ug4Lv-Pyai,I.!zӤ'~@&%j'^S.U7aCh[qg% *a?HB 6i$Ԛ|x6A:HUrd]`21ÆLnZq)|c }#) 0e(%5o3 hWReu9߯໙{l$,! 0}f?'vPZV/Y-MDrߒr6׹o͙/:i\c4(Ek*m`jDؙ;spnR']Oy850τ*䲋o5R ǡ"=e7//¹#ͻse`QCAy;ыd~:#sVlg/7Ȼ݋KYIk=/wI8TD VV2"PFWSboX<>K5iUGϻ~Q YJ.LjQ,ѳivr`M"\ۮn4s=UpHV"vT'Ŭ^܂҅&ʐ$VÍpe3AE!VcJbE  6$#U󙭉6&Dgdɏx;C8 PsO5* Qx*cus{8QmP)Lh~E11$N3h* +!ai Yx wh5WNc Wr7ާiF)jkrUXDyMY 9hr2kBq<0 K I 2$D7a+Jfd4|ac9r\|%l?JpZ`qB /S1^݄=l'Lr~᜞A1"+EyY`2͠: 8|$Ч,'R޳]p!ˉ;RMKq.a٠~e VQ'l42bN@FSJ#V9#'7[g֕LPTXcXЉi2'tLPe O9ѵ&B[cأ}o7d˫ylܛG!JgA%%nѻJ'8ygN1r1= ;_Qί҃^)bv >О /Ы)~ꉹj ޽Kvؿ(bN{,6 >q\?K,.*1i]y :Sg駶7F&O]LG(3 v TOx)UKUv g8~1 3 /ށ)6]5C˘㉆TXg70E)Gۛ/sNn%+Cx'ˍv~dU4ANoXBW߇&?њ)H#D l,nWL#_ nwu I_yvNJFܑnժ\ ۓL"2/ ;vيCs s/>yGH2%#_E`ϟ1?tY8 0w\l\ +ȱ :_G[>ޫb)sm.מid9vG69Ѷv1Z:Lo[zw'E0t5 `\8crP<^8_-$?c8Z$jb98s_InЅ;l;wKN[{Mɲ\i2(q;gcrY9sz:;xgZ1 j5:S"nhyJkɻ&Bۄ0'F/< @vӐ=]SD…Xq.0f],'rP[@v~i1 BUQ_kZ=G?#Q\j]4Uni9.LRum&!: @ EBo,GIdLlQTtuKߛJ7}-cG4'E=}':p:Sm7}H! Llȳm#|{irg wǥ-^x>}PgG:ju<$*ܑpaG~ !kAN.^gE{\x5o|$1iY?:U+vn }V ȎgLNއ)W J{-G nvrvF:dMfkgx$0H؃T!|Cvhe$ tv  32X sX]u\~(Trٸ5]oTaTlcP/.0Y7u/toA>󙝟Wλg##ox(yR=ȣ20 P dŜ9(N䈯D{U} }Ufy CxTMņ87 afuNbټo,3ˣ35XWIahtR]s^ <pU"9SqISs.ȒL7oc;iH8j0u/zʒX,~_E@ܚxEY64PHt<8`)8B5輪5J٬3݊q}+c<)AфqϿ押exj\ S}̎=xފdi̲O +4A`=8QFl4Wߩ1lˣiHb:;~( 8lRYRI=f7KRjg;M@vibلmBm+!.\V2үn?q |L%!hޯ7֕k;]X RB>jlYshcfԽ( 9ܜCKԌ(~JkbgԝWyf DndȊ5~ciH9rnR[ ,Ɗ?WQ-T<h%ڄI\VO6}3Ϗ~qu"#TvޝRl{<x~Â^ /MgҰ #c+&cec(HS6<:+CI8Κ~?c̙a>#`1A_4vf?>nRWiD{JHPʈF8ςw-g!`ЍZ{ z|Һ )sW()52۴|5/XIzIGa~ ?+ A홧r2wQ ;!fq]09)9,~DPUwk>BҙNvLc[>%W Ըla!0逃V]7ޜ-XC66.3sS% "FnfP&NUոt6ejE N_!r_,Z~ā .`]ADZWj$0;Z:bVƴ5?9L F`c UQWL4]bvFyc(B끵 9UƂKewTmZh#C# }cZD((?KCvj &^$x$3FCWTGt"QiFAx Kb 3% s+4Hc4\Eű&p312/sx/;es7A'W4bC\4#K^>Wo]DN#\2ն.Q6y P=駐B,탑qer+[FBڅ]#~2o_F#!? =fjTȐ 5IH:oU\̚Wf""[} ^ sDw%Sw=T3.s$H+qw'T 蘢q4RMc-`)Xԯʹ?hh+MiAjƨ\.tuwXƽCz@v -jvnu:%몠5Ǭ٣~aخV w)#~;MF /lJk^2&>/p%uwyfH Ů0kw@#f WP-}0xeP,K:e2U9dǐѺIŧ"fq79 (%ь gk1^ka1tfC̎K `k]:.4Q>Pn螫;"6K%eIښlǿ;Qm aJbBk/(%x!N=Vu1hqPÝ)W([TP\;%~4I:I 2S!L:jaܛ6E璕)9NTpYps,c\JkR1`9z5VN}M.n2e_`N;x[#@ ௉_B`# G(3No cT"Q#&3ڜuC1T sslw9?{0m?mF1IHbqZ +i5©~0Ok~jH҇YW‹R9qPc_0sNމ5.Uʈ8i$bb;'D*41MS9\̉2Nz  04k?xi!3R\U(F* :` 5U0}Y01&&6u~ovQz|)"3w( R\_u*iP):P;CJK^?bDzJuK: ͡8 K؛QlS]ͮf~eXC:\6||‡rm^ER `|{X)R\-[4"v;NAxފ{HZ0nI1jJj+ux HXJdLVVT!XtJnWUz'^R` R< yÁ ઓiQ?~sL8.+ǟSdxf7ϞkKAcߧ^@hPP[AYs3 AVch: ||q2iNɮ I"fA%߿',C`86MB"p[OlaEp3Lj%b$ vFU#%CI|T^tE"=Rb(C9ۇZ #!}U0oz8{04Gw f.2$( ysj:J'JBz81wOS@/V'ޔnrQ'xAb4*Gێ, ɓ 3v@|<.Gg -ՙaM8P1)qz2q!%m)O ܏nYDšҬlfu{lRM̖W2)`Pթ"{] W"UUC$S-4r%y+]ZT9! U|[%K#R+`Ad wz_$# <)g.}o Y SzSAONE,8rSrE6D{,VR1%N FN0ƮcIm֝qVEaj«PL#]~ݞ$n\tlt9s4كHS9TM_\}+ۏ a Cd۴! :.Ϥ;#=o›jb!%_oqS!xrT#矈=do3vlFάUOhKy#VK6sTi4z8jl8C(P 5p-8J}ec/#,ȚH; /@%2ܘfBGxͼ^m_Wu5&^ JD5Y yl>E\2wuYsB>mZh婞đ֪89"2[CH6xBB ʨ8>9>7_ؼrI>B3I%RݳpWC<˩0cn<'dY[EDgKd, ;F)Uv 8T K6e-Hڤ9h V=*7WWFVk;}]1Kkt"ńkn|ն  dLbj/3 ϵi1MCcWː7 `N`nh\o,o@H,mic4Kh@nB E+-̠@͟c`>!tځ!&^VQsA4MMY-+0d1.p]:zE<3<6搥o;@3.ŕD7uCKo%,v6\qLLPXdOZu'}T7̿+(~HH#tx)8wbm&-Mdc. !wҁ8u=>4F<`JF Śgc =⺧^w+WmaƜ,Mk!huR/D4ܠH+6߷H{n9E{~BTsl4w}P2i|.[洋I;|Y:ZEaQS^6ҋG[ά\K#60UڑLϦ A?,ROLJ̻BR*+ "yq5MtT[|a+5lӹ2[ WXQ]dgP#\^ցю`wJ)DlG{5 q@'1ai(6^ Ҷ,BIoB|҇>6"/r"dl9okZt0mk^o}B/r,Zs<0&,ͰGW_h O4^%A ؋;+(߂ jdvS$TT٫w_6<´NsD&dȒG J5F6%Z0m?E`2y:HQكDN/w+947K~nj ͺ/Z߷Ij>%$",@4h;᥋~Sh1tnV B<2 Tzn!7~(Π Jǹt7"XN* mB:*NwŅv9rX*J~` E=!+ы׎@1WL_i m[5VI̪i3ML1BcẻSu" 1gЫAdYb!ݴ2zDiJ;$SϘ J@N9^\RLA0ٝ} &v$5ft8oMteeE9duU^BdzN02W.E߀85L2HePI`XԌaKt8&Ւj:?Dޙ0D:}DI'O1W4kM WzY_}o[a5 CH_P>N>=$+LiUo#<9볽!ۧuFU}䒎 DR@OY Qoc*LpQ(SQӳmG#X Ǟ2(7EN cζg7sjRAC; L5Z*gKz eɇX1[D>0)st$OnK !}4JŹ% }[^^juXn"k_B:`t }ʼylcGŒи{)_UQЪP/NT‹}^Fk'MX'Q9%X>V+%WUXqF _ JQVIFI9m k9Qaj5NQRkNƙؕVxr^8DA'شm<dOuA < Hw%%N8 ?X䶀ZNap+ÇE1Fg8mҿD L]ο B ?2fC^0E.Y^ŭ2rg Cp9KY+{6}/oo|wU+o amrfu?OP3N~j1;2qTDb:/TM!xsfbv9`g+@3 qC?33O[p$m#ֲ6ísy? dl8WS J-˞/PO8}xIR:p- 2LݸC-Li%ol:Kkn.W*Vs4H@ᡃ⻣IH[+E_P=H˟!] MW<69?b=K<m$8[ P9W3eIhS@+⻱uðBOWD@F =.)&ɥ.,hw{yޫ^`Yt qo zK8kBW'dxnGŬt.5򲰍RR08@7;x٠5`xS!1ؖ 2%yP"v`mD>WPOU~jm n&=h%Lq}L94`B?zXxq>efMZ3V1`܂5?< 㪯MtQ~,Aa[mP5O# 6㛮!= 74&3qb̊2q5mNMK d֑E:q]W3!.SeU z7L&)_O!ZK"a弤Չ°13-hĽ"AH1$_ϴRV2~7/` foG *x @}o*׎ƪSּ`J(u ,hV!֌; w5;UL0"S8ɋ]ұ"t"5. [t7%}ёʑ :N{q'Ӱ ׯIaN#3{u*n|@dZ&2 I2`'4p>C`@7v#t&oV9z+ ^{x͗J6'F-yUcukxnǚEJpԚGzz (xE}EdRmG7"K@X#Qx4f(3Ud3_uFIvz3~WWC.z?n@h;4;ـb}"emnzJ׍J98gLf4KWoG4'` C?Lޖ-8zSjj8CuQ$$~K,r'hU ~g}AٙA5z&DPre) OhH?\(йCjHZ,M\<^&A J# *ᲓϲvBKMeh$WѢ^+PN퀲彺IT9d(Ʉ*[^z5$ NV)z~%_łfx\&/)+)W'A85x;cбg|W:vCDgnXg5D~_>T~yVWgec>r>#RE=mJ7Wԕ-lQo?Uu(QW`uCeO )YO6r-1h(Z(/Q ,*UG2Y_]ͪh*; *,o\NyJYY J/֎ҁ >uU# i1-V&v/Z#GMk<<.Cu/3jduoIh>IĢcO֚#j #L_CX0ŚڃEkLQXOKVqfI އ*6i9quTdWR\ ~0ꝣc9BC'TeRGG9y5*qC Ύ[M 1;] y-v;qhٟvkS'\MIL3sU[Q][ 72܃ +ݲ-UgR2>?6`$<y{P%ˁ-V={ʁl!oЊb1obOQ=8  'F -g a>-΁C>Zn;DVZSD{i25v/K:Er'ˎ=K~DJQ5lF PK<pxR zQ²&"T{^Du,a|)"@݂E nr(B'D'CZ#<@ ƾ e-Z"aM}:x,qk.&Gw&T\[$>w)_+!owlz!(˥!84v|lY4,­#EM_I:sكqVJpE ~r`gadWNo_ŨBg2ym"L /Nu(x3X)nWGB;i,ݝNG~ YŜQåZH^@+O"jq@rL\!k޼bڦ =Q`#}xb`"J;,^̘%mwb {:T0-зVRlEX!B&g.hGKDUXk!!XzӒKjHd'b=(ju[% * ߤEzǨ0A껋΢Z>4lKD!Pz;Jp">'}|ŬR*t/H^0-u]ao)n kYMK\+i] +%zel:}xQV}Ҋ8wBSOf.Eh8!DF9C}bFfβ;O᪅IkkQ<,Td2#[gMn!/>L\ًOK !JN }*y6KJuwLVT6~#[[B]}dgC-5¡i+NUϢr]l"V0s esT:kOR@ELp_ԷP @=?eEr %N˭ 8,?Nk\޸ѩEM!jWWc:qtќ`*xhMPlװtUn@oI*h xi@`q&Ee>o`x=~%^'|?] w [Q#$QڨĞ<,ȳၠs29n?@To=?$O)/¤̯ZS;ͅwXK5r"!uno?!:pD=4>qR4l>_b!$I/_B/"ܒWߥYrL꒘9 xO*:@Yp](g(n{]gR9nl8Ik\˓df暴ZF5Pa6;E^U YrgNmw'#K#ǁg`&9l_V)Ad^VG: l 62E|Eog dA.\,A\6qlv;{!Si[H CJbw7,<1>8@0 x&{%_%CD$U(GH!~ZѡԜ#藁e^)MS?U"V =aC;8SH4]{_zݍܿCif0|YNџRd@)|}LJHL5631 ϶p!i"S-4V2Ph>@QvxiU)X-6hQׂˊY4]˓ _ruEX9O[  jkxh6'r#fGG i ~zX/([ B/j'׿s5x>3YnYq*\sY6T:Lֱhѹ ']eXo(O|} AgW(&#0.p=!9,`&Ҏ~hH18y5o1F[ċc)ZK:Xd0&q8]Y~yj͌hMZBfHr:& Y:=K Cob~"m,hutלƎDŮA 3&VrԎ?tZ%X!o@toK& 9MTH2#TzI'MZ&l)*/?&f:irmy.IB<j shv^ϳq)o>;2(L l ^ g5ژ <[H`gUƗ Տ `h^?\T:^x h zd ڔ]__{C.3wj}76(( hZͻHG1!͚XQޡŀqI.LKT\ X W"qȨv>#HSM~]Mv#R 3.1@pM\&IV -jCx۱lk>z O1=8mF#҂d?vºNDk]-un"k =%S↫8i#rׁ齍;P l]SmBŚL=a<$ oGVa)RoCʹR-ղS.5C(+X-}eُ3 D& _ـR=/:Ӑ|:"<Ɵ]YI@ 'D\RRW `GMim.3t\Nkke,8NsCS*=wr@5x.Hi 1ߘTb6&h(z}6a35rtr2wkRt3fxjUC#pҁ(ƍx!($ 4F5ݼz4Zp*m8OC`s"~}U8z`B' w"Rk!JuAb`n$)Jb *F`(D)Y=M{qlϛjp/)B꼎>x UgŸ~yamtOPR!]xU(pw?f ?00w[Sȴt̯ζb}WgϥUXθ=®Sy}O]t,w͔Qfֺt>oj5A6YkCl^#k(!JyM?vTT >&+kMعVFwhUAnS}/kiQ=Nݍ9=ƇyL-zeԥ^7ZZBe#W(I9H:b-9A:/1'X3O|K ;u쑃?_L.s@hy-) R a^E\|v#(FUX,RA(w›A!f>S 3"!)R0F KeanIJJ p[<ϫJxb] x]!e.^ ~rmȸUx)4_ɵR'sqG=s3ʏ3V؎Z"!r[Kq*΃~&S2ۣCR hqKE2ɍ􇈻m@XPԧ>'D:6i"ii)ɵ[FJ|}"gH ֮R9"V1\ )P $'<#ˡ0qΧgdUl)*=&tkf2*vR8dy cI R1t.#RηU@LA+E{74i#]=l>-@Eh 0(]+d p1U5Uw^!?Rt~- 0vl, lDG٤Xh*zQ j:႟?#$Wbv-2OO 6O_H; @E5/?jƚ}}'X=sX‡8B0z::?6.c|ԑ_RvY©O(7f>4HFoql0gv^&@ƿlh JriLvRRx-< ZE_jp7) ~@N+C,VʮLGH ^4DJDcW/lgs'd%f@IrM1E]H."G~Qsu"u|֦֭vae H\<'G""dwrp&+S|SqS$Ͽdi~p~Ǿ$.Lm1K 69½Eja\]:1x~*aDDzU~!) רgՄۇ6 'p.暑:?Re}{YtY46JC+3n™%z9 lC !l8%s44U_5XY"2v_F׿hO*8TV^pZT0GkĒdܧ~&onX'Jk`Z:#NRhM ]Q2މ>N>Wi < m ~&=F6qzHvEREvB"O. ;",qΙ]Kܣj3F,tVp>A7/p$CMAWzuw/NAՕō5Ƒ?y'Cb{#g[KCPL ڕn. nÿA7KHĔ!x86߶2H, &O<[B{lki؋n8f }De'nuݦ-{(]Q<|v/ɏى -|;rh ?hgY1+NsxrtX{=Q׹ ٲSK|G )n4jT!3 k?ÇIw甉H2g)GdZ4 5o.'.(ߴ uUs ptR67X%_x+k`K)bPɜ+EҎ 0Dq t΂M)N Ojk7=skt[-b~fev\lU|U'P8p7n_pARŦ!ĨҞ,rnhF D9S,&] a*ZE~۞y!( [#R .Ƌ| B:f2kr2_<`yV7D_a&;2>ÂΪƳ,:H,C6@Kml?"慱Eᆍz0|$FBאۀ6dZޜ|,n7%̎f['Fm܁%qg _n&!ѿP㣓o:[F2$.S<`.qL˾(z.K#f -D =XQ=^,.d/BH[wݡwԶ;lߑr9E8\2Qf> 2d1$#2봩ez[Wo_X[^뒉rNo[@"{;un]vXrAM~0x=Wqq9&1%=GBNzΖސg %rنU1_YE#rfV3J̌2O?FV!?PzCK\/ ^1dllKMR< ڹ] "tr~J"ItFM/ȳF*#uH—Aڻwi ;MPb깡"h e/m;*t nŲce3n@tnzC(iߺcuLp5~5ŒqMm/z2]ViId3ΠS-)tES7ρWLExkW6=Nx((<؅&l*ڂkO%7hf T-\/=П`<.SrH^25ӀokGe^?5rNLqv߱72ӴH9Ꮘ#R*Eɮ\+l5>1 j?ݶa2KIJ?<[P(ec<]MQCFUC5Jϖgs`\(PA=0EX舛bMC1i ; W~pKC^ ۝I*,&%؅*--p.CHsX# T\~"_*FLϡ HG&^)sܛ adQR}oMc(N5yaIx5&SP[VֳX]t$Rl64Oim"oze"QyGHT})h!g%+C! $hH|zc:W1Tq@6@{c.[|-lNEnh>W D )_$lÒvf;1OX7a.CN:{]2ՠ|!>?L*h10` ʿu?s|c+q2E'z`_eDB"f3O-ؼi4o7d4`C9zs c O}DBkCfp%p2/ RJs9IE/צx6񩒯6}lY|l[ TG tM*L?MsGB=-wLMeSd7ؽGtL[q1 -X6i(@]+}r,;DG$̶WR:(_4t,t:gH(BomA4@*Ѻf&3+PzѩA!y,Ny' o5fAoNcC儵p!Rz!~-iŲ{&\AHYV >vCymUoՁy$9\v*.ڤ ;}ecN24JQ`Aѯ:}r$&]t]i`x8FbLg(w~mP'9 lkq3Y?w$v[KJ:`8\J0,n*ēlf_kI>q$ fRE#Mx1=&:!nhmܛ,!#?hY2ذpϮ}~L8.DyKg?̗|`Ex}Tl1G>SLԖM"2~J;u@cb$59?vGs,Ū$0iCr-jBn L΢#1Z mg*WͿ8aG\YTT{`i2DŽs[܍I @=MS!mr@ઘМEh g&)RiK8V(_AߜR.lW?9dg0ۤ1߅ޟ߹D5@_,Ozrꙝ9*J:uV0LP(3&QaqŪרw-b]hϾ5pV}BhTR~{Ghn?К,;B0֮&ϵF^Dy)s)l )N WZW)9T AV7YHqT 5DO#kwjEo7 %f4*^Rc꜆虏o7^-kѩz:O]ͨH'^A@H.Yt :AgyL^5G jLܽZ9tzKYq{Įxe$ r5h€&'~~s܁v4sC QrTLe *|VbJbQXJWOXcͮEs~ ah{îP\;/FzJ]]gg9WIu2 HXf_gEhc_5fZG93X)ͩHpq2਩*| "&ӇAEx%ClLZjʦTf[y4@c߫oH[:ji [=v=*MZax / xYPkk0O9e_^`Bt9NwkOTguC1յy>`n$A,gNxk}Ԗ{|"'@2E6)ʤAA*혲jKUc:W12 J6їc)ټc֠2@.I?" /Хi09]glR?P_ɵ ptp(e4Z)6 4O Aω(PleҠNHCG T0XvtynXO`Oݵg%vf24bUy-̜:I2<ȹ!닧G{ڰWR'PvEƅ]"9ɨ)y'Ϯ&HGfɤEnu#\쯇ƣGQӏA!WP<ѮsreT iH*/xzaN cN$mC: {CB%7yB@˸'x[Z.w|2UVd+v<`|wC{܀ {L&l@>H) I+HE}>,B"z vR gVDPTO~Y| ,TtW~ xuSA-}I&e@%x3jTM%r2i8\n5$hėѥW3AnB:ɅDF|خDƍ2\t9Z*WPT$g By';+I,kUR,޶JXM9 -#!i 4BDء֖,MI8јNs\,.AIx.x^÷JMvK9xbSy}H"ݠU|2&.|B'~!0ELk:Do7 A>\PG>#<)rW^6ţ視S1孅$>ɪǶv{a+'/v`@Su /Y#C!T#*rcŢ\(7mVr|ZtϤ>ÉFN8R~hD(~w9C>z~JKq B#Ȉ ռF {nYqE9] cUrQjҔ[ o\CRQo&5`X2f'`m6zZYdi}6bVM{(77CQ;>|JdM0Chw C/㽍=XFBF%dW0NŌ9C*/Y0ϟ;U ^tAG"7wE2[F~2 Ȇ6f.Jh o'?/mm/Ѐ[g~ȋGrP$!! F bP$p*ΈQ6*Qi ʆj Yj]0!Y$J/ާ94^C^N+0!Smߧ]6'yp?69[)^Ru=>'[9*- }>>_ӆNlRZQx; J/FBDhjo*$=mcνOI'(l ADGHe%H P7vf@?O3QkwDנVm5,$LfnrxHyK)wCrPɺlJ:s.1@ښrqvt6I"z5pM0uv.@^0Hfh5n 'OHeRny$7s|nS_*}NP-N#dbqG)2TY:f%b/XYyVRY/>5]mԺӮί+yzQWӢHnzhK3jln:3qaqc;ۨW2,G>SQ=&3'#$;8Mq1jFDgdQBն'4 5 XIG 0x2(pOzưkrkxYRU4tn_i1%sx=2MT.F V~)z@Sv?\Vi5L(uMTO16V2m\NJjL N98AǞesbD1wJ\^.uV~>slT<h t*OU@D^3Hh!!M e'ivwTP tIf%H ^/Xx,x >`?Mekf`mPp46ִ exEhB_0kv=?X[g%W}`W4)GY~_8* x~sq;ȧ9(GLςUkwX^ Ωhg7BJ_4WWM* $GVgzcCңC42\0I4jـaCTq!uxtVOK-"Bo)֮̔8/I  -߰̇k͞PC0~tpT}qjiJv5pïiyŢ:g=ޕl!uTi\Fa?R\%J1 >50@븤&""R}0f1LAC%: w F֘^Na3e\)3 bUQ#VKg;6;b~.Qyaron@ sGp!m4 m6;kPl)s9,{6WGsGj`C; k?AѮpmtz3p" q({{ EͲx=$* =UB}SWDqʯq!ϒb:oPAmQֈ/l_bBI)<}KAd &>IpKi|1?R0)K*슏(#Ұ0{'sm9t؎ u>lGؙlRj@籷R@kulI\۲XwI>ċbrqz9tjx'nlb~t26,6n123„U#8}٬=Tnl=]5K5DFObE Ì\KSHnXz|x7|xMEQE9V GVI]<,+y{'.H ЅUoJ-f#CMLKy 3! $w,pMI["'}E8Js1 o~ ꇇGZO%yH8L>Wtd1}Im?qru2ţVqI9@mpmۏKbSb %痀.?-J|$cAWw"G>d?eth`1P{h#>9kE_);*J AwDfv-<Ќ+K=*M K~:a98g2I)oG͝}!H=i(r>˺i>tX-HɶUo' {SJg2TwXv8a)L6zKXZpD iSbޭY|B8k1?~nirYl_S` |q^IQΘǫ$=cn%_\qX]3mY"~ŝˏL>eezH `>=ذ`a&W~xվE/h톰݆״FnH-|p܉<]sg;Pڥ^6&&D,J1FuX~a1 d}wۈkėD%cyVN뵶½`,BMЗncժM dڥ 3(\e t'\S# J y9zEBGc[0-mc1yM2~[ }zpz"},Y`u!UN+Q$0 @/o[G T# 65;[AGN4v{5>K c~dc?r2I,7&-|)d?wVǭar RkWDlNV#ץصlx+&`o 2tojGgN *ؕ0ۜV~NI2vch8 )A/ֳ-}dYxM}LS4#%sɼ bDɋ]hɡv FS@;sf5u9:N۳E$pP*[cw?2|dqϊ9B4Ap9g~1>S1h0xr#,W!@)lASg"{y>&?ĠRbT//+~L9Qj\25ODs\lVNV*\-'kp2fxA}#NkJximc93hoq+>ºf8W^+hؒzq-k RD8 Y0ysА+#gzzIWT rD#J ŻB( _g?%WNS ˮvv:k0~ qg9yOGeqE(bMmh>x#[i 6%m:$gk-Sň 7M~8rg^93c rd">)=]-( :p:ጿ ϤFU!:V8&#'{yH|D;EFr#lR5?3Wa'Z*C>]-b6r-b@tH'͠N}Oa6 < "k !4B۫k*j* n]#nTU(x;OGXyXQ\A`XZ5h]eS aH'ʶY ތ|JL&XX+6PᏆݛ!MuFF\H6MuwyAvɼwx.o㷟 D6%H$?'WZ>FŷbI9l!SS][Ȣ 8*! D}@'lY)Yȓe1D+>T-Ċl# #*Kmll+l268rnb"zbO]hXLНJ2zΥQ KA9)AnFȸb.PNϷQSvbX`kO |GY #g/Vz*WRUdpBXDDu[0hEKLdZ0[Muys֛D *Pf+ڇ&@Ԗ}t;*KPFmT9ag7( iKJobZֆCёxɾK2 jDoͭ.(T_LP@ |/N4}~wL<^͔S+΂Vl+۠QMFT c7}ኯ9˪۸oȻρFrVœc 7 iWխԛYV"Y;1 ,ꚞWt^4[X̪ r<2{PtfOlLg`*_7 m/#Qn63|Ajm)ݣJj E%) as݆=LW$פ {ǻ-Ep%; E C'0L 7Ր;YT&%?фҽr]K<|[O9ʹ $˿|'WaI8Oʒ4dͮ,-rSjѢ$k@,8oN Ww>P1黟kWmE*[ԾFmk?ZhD(Ϥ8eĘt N.~D_8blPc70I(g|fti (:`k&?۱)ŧ4T !4̴' +&:W\eȊ(]\d#Պ- =ݘWvԾ*}A7It11Ft [})٥VHTV/ B}?&[Ხb_cSqrJo?r?I%2Ab6Ck8}{+Fe,$1L}ɕTFyw$LЁiS VZQ %m M`2 >F iN؆0esBUnPa5x,>MMƦ] nt /)X}MyqGqA7Iꦍ92x Hv 1k/!aB}鼻rmЇS߹WHPqS1\ > Dwf^J:.Fd7B!Q6UMǖ7ke&}Ui)y'_UŴ j=[3D| R&3#kҗP[sXqQ;VKuG  s ;-qMt ^).̘p'vZ%=NE'gĖg[ + 0\kB`91Z5E TQ.Jh1-,Κw-]Py#bnD Ȳ`a< yGuRR\7+T-7LH¶丐7aJ\ @#Ip/\ "ӗT^j\m@}uCKBrM]_7ف.#PTY*? `izux mm  mU{̽T7} IUf2^ /Ob#ÁT;U: FI>.N2<?#?>+xHYXӱ£-.@g&廆;&%D\FNq?ܰb>*P)eQ%l @{3 -;й̲GC7 RyxTv֕gJ"4ȸx  @9ĸ&XĒW]&8A">.dPN,MW2NU| X tZfd K e\6x;0L鈒J,CԚ&Lzv_o{0^8YSug©U"Fh~LO՚ /M+4aM{z0l r(#EA;ţup8|L?t~d} RGEu/|bjPMs̱d:2ڑ@)5(/G|GPw2؜7mN0w,i&uv5ꐇ2u*gy"J6Z+ hJxG1|rH^ƽ#F$BŔ 2b,(<sq? 0Tbc F)䐫`c^)ƻ-𮿻/kSٔ5+!A H9{hbaqQ FOhi:H!oUMo]Y?X7a`]x/$D7{ җD(IBv$,lmd)9]b|?Cs?җZ[,+IEI2^#JCb$MӿB[pM + ^c>iSn(PhܰijC+HB*V3){.ɑqn(%TɊHcW'#d-+Ka^!4 Q^O~iusf/L ȣэЕ_JmߞY $G2Y2.5"3w]oz{ j*T_hL _*|O V ψ?<ӃYb ^}([u$ԋÃf%G?ЮVE6gzSg_e(P_} J%-rV$9%@c!|ovVtx՞vL![ݥL)še1[cU5R6&:ik8د_V}7eXT0 /{曙yP+4It OW]9Pc(ǩZ?*Ԙ; ys,8L.=D" _oj|AӹZ;r/ 6Я0Q4aHoco먏 +t5v1V-2TK|H`XfC-@>gl{\uliρ$$qQ TCN?0WoB+tw0ǐP~1.ẃbɥ?cEw3>i mA_E5GbέTAtJ@n{ XTMi?8'8/OEҺzt)YH)Z\WvSvo{SE(IIxaQ}g8h3`孨Ĥ$/͹\ {Nj独ؿ>vщ$KA+ghYHf@et6YAϯiSxԼU B?}ﺾqgWZ KxAJs9}HC2\*yI11|{p] t`1s TF$7Y6OaBf,`vQ.^axujRXRWPUaF6Qq/"s&T3ׄ2"f8j9nMhVt d-`w1k6"b|-smU599A7п)C|vs `5E^3LkEyʯ;Dg>~Q'wQOM{GP٤r !WdU98b>̳@'֯4Hv^$UOc9x$ͷ'\Ey nZ"0{3ѓ"蘙[s@b*R4;hR&c|gF9}4 =[8U|DW>8 ʖ쟣BG2o_ 4|Ty*c <2ߔR;$`9HL^zw7EV 4#L . ,6]6I?X {4@#94ޢSYeJկ`rgy/"GOѭkxyՋh}/].lє)`%,6jmw t&| 8. K9ʣ5u?Sv)oj2lfBztCjL-SA4%X7!3Hp^Izn܊`^ʖH13Ybg'^%~3ѓf6%2h1 E&TŌkI(Ui=l,4 P8)k&IhQxw(8s$e(޼Gx˜2rANѿʈ(k2 g^< vV:˧d7?/>@V̓wrL<>={wyi2M?ӫ zj80 AU4(MY RcĐSP+B%84XtcOـZ"=[;|r%W, )3|Da Wǘ5io}*x?wZP2}l-+. nI7{p3ūp}祹wjXRvd[W.l>D8 }n&.D>P*9|hKٯHVv2t`qHJZf"yEH9V$n׾Wӊ2 h91c$@I;r 9Ŀ=nB\}h)O/;bi~ \0$Mb?0*@d\x>b--*HLzIoENg6p|lJ'b @wohW[NDK s,7J^VůD",#7<ßBX߅x9HNZ:co"+! Sccs]}8 v%)h_Wd-w2hb1/Q fq,^<ꈙ=!9nK' #&^vYbzx @H5TG:tsO1WB$ 8Hׄ$%$c !DASa5` 96v43̏Sd)'6v2t/QU ;l2@/9uce apB; \ҭqD[B9HjxQ) d %Ƒ?h ^u$7BG b~NWLX#:6HzD o ?@t/N48-(r5Su+jȪȰjxv~ IN6ˬHكpFisV7 yw'U"۪kT=H N/ZvreHsdT<ȑ_Ân c4nM 1_`^ͭ8gQ/.bHՔ^Swoq|yEA>oC3ß`Ey".0;2jGup=%] '\:EIqF4A[]+iTPRכ|a[і8aC+⩪7ibɣ!#eėg7Ĺz\y k`LJܟIMb5!zo"zANq~1}h@v?TM*Z˙)I;.;كL 9tD` `nB'Lm f]V"7~ൟ6_~^D%Y2gP+lvN$>U`!"?K;nŖGŰv_>~hӺlt]l_%"BK D`5L3sa1>tHHn-u}hnTmp-4odӅ7uC4<$XĜ,R(]U헹\G5W\EԄm4^=BѰl9xhjrWsDVϿS. u3]h,ѯ6{}ݻN,uυǚ3s(>P߽*㧭@b ެ 9 nH5ZosêT&DµHf1&pSb[ژcs,@rVkը,;\q3'̶Xg80DK򁝾=yZ؁b8/dϟ-ϵ5^^2T/춶XBv PkҪ'c`~yAaDkmf!E}1bs9?J6_#ǬLR%:|>R2n擟ntDR㱁軩퐼t}Њ?m:8[oS;,3+1͎‰eG(9 o8\fkhU5$~;lmB9}-w'ywX׎ޡ_nPGIɴ,C!yTj\ Wdg 3.G6UIޑ 6 NB$&L9_ff@7,auG 0\coe\/;l-ه=]K-5r]}RXY2emBIS-QҔQc MJ?OtXPIF/1K `;~^໾6c1$0B7*Xuߘdޭ Hًf'jTYd5gNt[ϟ{Z3i+\ໂh#t4syeZ$"e:yK:|W3?>*^4Ҹ[NԀYR:_Ì*bTfztA|I^Kz_p%'ήeXR!ﱠ·v F+<0Z}O}wnm(,*<&J Q܉&Ȏ8?@-l^yIbݻ荽\")ӆ>:ЬP26p+ ~:UɗiDmg@j/Z5&C0e~1<Ȟ䵍@+ΉD>v9qRK(Eq a/41خS@DDcwRj(Az T6.d2S\IXug/^t[C~Җ3R}c/9\Q$| LT)q W ;_  +YEO76 >N5TRo*D ح1;ѕWHcQnIU "s'bɩp_ uaIh@4Qa/ zp>*.vb}l~;DceLٯ}q|F.qEg j@3}R|6Ճa}/u\cuN%j>k1iŻIpqH %n9pL NgE3!`2r9[[ɤ<@XDp:2T ]u׊]ux6e2&<9=uӆҧy~\8jx<_@.HDK7Z? ķ53G('b ^.f ꋜvlp1ٹOL-ٟ礬yC/|!Y(n%_!ZV"`[rA{ウa˳|EfwUiçC̷n۽粘DjI:HoY ,U홏*Ew,I$:On1ȟcE1_:!^ʌ^䵽>]S`by6 @{v y 0[%zp]0w"Ǽ^ܘ#˨;-9ݡRdii j{ٴvGAdsņ6=G%^W.Nm*֙E9߉'c)_"#'_C+FBXF3:a<b<te 8YPFӶ e;K"X$T4~Cm*dDՅh`}[U݃+ -` 3dy _>CJ#wbMyg敒#PbucYEO7u8{B`Xmk8DzsܘGr ?G[_oR~j| p 21w#VLѴv*:F<(F>Zlۥ_ϠsS1SYP!ixf0 FUSlqeE \ JrqLsQ9m_ kƷs^tam(cA.mM$z ,6 Gc3)轴Fipb/!Y8PJN!JuV;{:ƫ崘UΖkV xB.YL 8R@Y2A_ߜOK t`&ve kW#0Yl7c 8iJ{lRϣ6)i4IfF=ζI=d.zI> X:9?r١erK7:\PS <')nK։el4&Qztm 0~$)'PfWwNJ(Uw/y`j?5EW|HoӇ@fDZq~Q?3tq*-D^~ twW-U/P߮ȑSn.Drmg?CxE*yi@HgB,G-4SE@[ Tթ`)pAq灏|%((퉽42F**C֫9Ϻ |U!.,0LF kfqi t2mè%q>EQjKɫE 6_ 3O BarJ6! ܈Z|UGVs,rwcrU*af]x捑.(%jo$aSґnHPIwrFh!ҔZ#8T).HENM󰶚'X'E61! ~)j2kt2Xv(ڎ-Yۘx']3)ϫ{/W1V4}!PEI& })4g'xu߸$i}754OpУPVa7D[3!ĠpUNj9 Nm#U..p?hb1t!-<סdƦ3m.q,1%:Ḛd߶6\&2X]zŽ.)/ au.lB;bo0mAEǓǥ| qV\Pv.Pn583YfmgށTVj Kr͵f3ܑ;6 ˯RgP_qlt:P@AAKU&z䢃8֜=3+)& -)"L8@씶; ,.;ݸN H7uyq(c_,Z/@3DI$c۲Mݸe$ <֖xy}r\P(hYPeRfN=3Nj6ts|QY5#J *}N_J C.yb6= yьŒϼ p ~U|'/;*x@;$ X8tIb`/5ƼvyVo\2(?NUd,f>{dLS~ħ73˵$e ]نmY5BG =c^ wgCta{25|M:5^ØE DpKi9@Uj,-qk8fzwEHoq PC~ ʸ !NtrMEl"v[s֚̏fHm.A nJIבּؐjӶCMt" nIEBRt|q4 W6NMz0[ >bQ#n'rfd-2ɟ5Nfe|"#Sqm`%sh%:V^N-,QsD7L0(wcU  { f(FfsCRӢ0?7_ 7* 8AC05bt#y zT-h_ -']%4ikn no壻@L3<a7[WX*J7 Gd dT{3vI~/㼼F_J)V-'h2>D٭ďC<ȗI{Gݨ?Nҳs  *.{$D@ DȾX-z1TeXB|[Peyj5>f!'-sųX*L f*:~fAqB9y_(Sݖ=cc,8]sVD;@dj3:w쵇\pQ4%Q_y}۹x;"`L M܋*Ogav0(螰h|rG CD}`.垳_qǩ(d O\$&'eP µ~_H~SLB,r%%vUv#e8Hujfb 0I0Xw::nd\Z`HpoKH5)RW:M@u4T!hؾ\(AAQQ&5hby(*HOdkk_Nm,d` krE"4]憎K)@" 0An?yP5#$bӐD~%"hi`@USKuj!]Qe+?%rE3ej`4ri-Քr<OE.XYy?849:Skрϓ<slze6VB;*:yU vHڥ@հMKK1`qG[i1L|Q^(:}tV[fY9uL_[P=W)Zz_oţIp:!/7PekK 6TֵiN?b}Al媯o`7 7 wDM/ Y}p]軮46͌!h xTrM+eSI #*fܼϯ:Can0_ɞVE 5?n"|0Y4͐(+ڌ'ionp6Ù$q| b׏n=e`uz {Dgp=et7⇨[C SY Vj3'#ٚ34zHnS(ND$góz-??!*q⤬\8W@xM#]BIBsU4Z*ʥ&E,); G.Bጙ,] B*@7>xQ2uKHxdNeXݾdD0tipn)5a3]Fp u!jS݇JwN^[J&Mހ+Myo/Pc~D{`y.F]Ģ7e"84f=j52ʭ2K*Y< /w=fM~ɵCHW8Z (6ҿgYJprեvƮ)lT4r @f*q3PRr⿲7fE"+ sԛ2͟u_si0Eg`ڦp f]/vS >1PPg6=~ysOQf=JnQ5|\.\-DgPgЌ\(xNhwC/zĜIgϏӡ*J݀9 LMx4lmpzN>O+_QL;0RMx!?{@5k8CIŸ /a55Bgu '~ȐC1Ƭ~ECs8rXN =lF#?T n0V17N%lwpA{0|>E߮P11wP&Sp˰jH^}ɁWƆJ "6(=*M:X_n^(lO \ٌoBՔCL_u4`ZśTMV./"fzxfA#;ĄMVԾ"? #f'6}f%3JRTp!Otй҅,qW['rdD;E=umHxM[1E p;mcjm:P+\ 2KѭI!W/<~q\Jgxt1X"DQ^s|j#n?(F/.=M#RhVPt^lQ![j(i7=R\J=DV)0 D1sX6~vDz[ՂTMpaUI/\< u99p"1aFҿ/ X?>k@ (Zm| kẅ́x1bv-y-E߅ !WRZ6Ah$PJ&)-IK POX0,W!e RM<(X~Einwdb<c-ђ.n g=2M4%~ 1Pq3}ao'ؒo])EH9p@1{]Ȧ_Wtr#E%j%tZ:{JpR|jLb~%/vv[n/JGOÌ&?F\Lfr/]DkDƁKWUHj̴l!g qQWbhUFQ:pSg1v,jD7icӾx4&Fp=+j"ho1gQkn`j騃-ϱ@/ B9%p_Tf[h5v%O:HW`9|)i ۮ\`l( Ӊbv_z[Km3F]Y+]uXV̿("5#ެ9B`eXr~ Y |8\;a+:jIDD]<>"&Qa9>ey-X$5zKS<{Nw= љµ%Zh5?Ԋ uJ= 3r*e=NDOǁOr|R~z7tOTBoٌHrPMRUè Ad.z[kfcH^l87|4^{a|CLe^`'eE4\W:@f'#Vc?O}(,jjE/@ꚄAm2NCBlR' rQ~Jzy bnU+{`jV>^/"CU(s`0D SA}xhӝ[>_ޮ&oj&?UYʌ6[CjN1 ! 9I_ʓہѰjepbݗ3ܞ6η#,>w@CEW0LV>.m%j'7iDkhZ)0Bm>JHޢ ܡ m+QCOi-=vT {hZ Ety`ؗ zxZQKLw>;&j 5EsX>e Qw`,3yU墁ʝxWΰ QA \ET0и|akm%|S`AgF:dqSqT ~ xMvo֮ya\47 нE8}j<NF=B p:z&J5cVhC|NQzCΠD׏&9:UQ6?._"BK Ox9YΒwR[J #4.`®3d#~ЃFjϺ;Js0WBĥ"Iαh-nA N5/Hn&LfNuͪz%Dukt"p6ɝ<{{,Z.۰S>uJjtǦrD[7:sA! 4 b&5̋$υPjj`(sHOkv Y3t0Λ.PtgZKw._|J^7IWQ/.O@@!;j]; 'vPvy U.j4x#B(\y;}UAiub1bl"hٍ2)KL"Б:Wl0ˈ1'@S[N.b(TMě}eGV i(kRt ?@V4? aGal`,01& Q}J^pܷ"Duqk ."6(ܢ}hh,)º<(sh0.uՍpP\u;V.@UsYMj쉛a yqP g2bOc`?ϭbO.w/ 1n87PG.JT5%+W) .zCmmfp L?_G 6e<("Eן^&qDk–VEjɒ-#=%#]c.Sɡy;{=ɚ%Hwz(b` {wk <:`J8-ؿUqu#TXC+Ci6dY(N) :7}'vTI%@ݶ]U_]ɔp ,znp[!iVʙf"EqʤN \'I(_̠Ab_؛ii9Te C}0!(%hPv{ {t4lW2Rj4[>#kΚDk򇏨e:nOӋKϷ{YTPQxVk4;Rlӕ%g6UCIL72\4`ږ(DaKf}]цZЊ +Y]%LUSmr*7.4i{aV3Sm4PZDdd1-孤w"mjMN1$0Y/Yk~pOWGq|dQ2jQa^fY%y@KlgEjMe2jS/xqf2Svh9Ll5l%ӄ}]F1a^c%q hzX W3$[TP^m!#>_`cN|;lmF:/f<}{lhr LcO.Gܮ6B^-p PР#Ns?! p]/_>[bnZѸ}!)^HMBaJsRza6+ & :8Λ?~63S+r<MF}bTgXYǏEKQzӷO 5mF2UG%x(m!>j y(+P4RET,_g{Hx˃|p#%K|vR\`Z&]t ΪbЛflosWƺuhbJ>+8Rա0:%$((,Xz)c(2'Μ+=9J$:;P.T 1Uwڏ%"uM z?nn6Rb8G%1ʞahgӷ!#Ĕ' pBs37q;)ϔA ľ"#/CMtYz@mK2eY}Qlɋ,E|mk?U2$8*Fѵ#!D? 쒑ӱ8iD &;JMRXPl0a[ 5԰&Zk6;DT{JT-\g ೚(5oKBHSjU?^anCQ;bq:ӅB('!}j.07Z@G - y8UTxF9l 7R @.r?w"16# 9|eUO=/Lz&j!+vR3 Q&ةOO6Dr!3\0.-!kGQ\zY xwCv=9VoHmREOM6b"ʰm/[Y!ur6c&2b;v gÑ?PRaRZ)0aގ&.x퓝8.ODgƂJ'Mbr`C8X0S,3]o1s{-xt%y€GH?ԀOy` x#3&"X6,${&ᇬu?c͋ /%  Aϱ*,fK;f>rr`̒y yh1v?!%^ e} ¦w>m <9&u¬>^: ?tk<bB &E9gxx_Y ٰ֣ P "_ؒC](\sAw>`q?! %rjN坰z{RHb#Չdܭjn&$fNAHX!>,87^V|?2kuri=ڇзiqWN[8<ɕ02izrm0];26L@`g1v٭ofkr[dBdG*RS}M\*u sM^✎絼*V$lDN/,WlfϼCRmFDj78baP% ޙ.|iv˳-OoKlѫQ=\wpb \5O~4BbK68w3ܾg*YkKsBc۴*9m> .+ b_F%J6%Wv"u.z(-}Uǚ:LT~ckw?v<䑃@"xi޹1̣,Nh¼W$@KFA4l<^#;-/;QRU+&ɔSID7F~_4_+/!ןa7E3PUE[|ms C#3H͌ #zr 7w;36cнo8eھjwD6rt9\YȟZbM@ " z-₌6$O1{XܽQ+ >ɴ =<ì #ɓ׻=}kK{|W;ӦD(7Oްv[,Y$ S' Ro;?(62eG^xWUNɃ~sR®2G5z4c4' p}8,eM{%t&i !U CGU7:e7i9i/)ܛ}?חb* E\PZeaJkux;v#͹9d9%QVSΦNJ Rм,̂^z]xtPT-6c#BݓQ,hɉpg-LOtj~D 1}^fZ)$cq>kR Ùo8.|mN]*WRȊ5thjD:'yl%m[a*-6?ȓٓfw*x` 1ÑLsPr3D^4' D, -"Z\Ѯ{Xe&Њ֎{?k_Bv /CAOƸ/>f=ɱ*$a}6r˜Px)U}ДH wR,Wka.0`]WP-C9ߠ֮heLGp>wLl㦯~'~ E'Q裴 }L`F)6pYs\G["x"B@Z2$ѡ9c9H= %fXEMQp K__4 f`.{!<7]d'芸.aca ,URͦt^^ȼ"aH8{& *c3#LPPUS$ͮønF@4ŜsKaBJ!derD5wg#MœRtQysbrI[u3+ͫf+BVsMENcocqSȇ@.DC[ϖCة|48r[\_I3| W"G“Jy3"IӰ9{ʣ-u8ks(IyDDVy,dHgj"C]x!h_Ԗ}d/xz@GQ Y3Eh_Ӷ{;`4^6bKQ |9+ %HZ\=1{@cVDGBCT!h5 E-,S]!Vw7"OeĬAS#}ZH ߁DBҊ%| 7V^i{2Capvێ-WP8xaO )7- T$5)WqM@:2gi筞1Err2" Eq$I䀌ryfX-]fC,_o"V%]i#xecꁸ,͟$\wαp=TLثjPNM=*F(mٿ}<ˍp-( 5 Yd8RYDסK H4-/ W۳RX'`SBQ5.pjP3U&>J?$ؼ ܺyzbo?ԸYC]%ĻG:<Ǡ*qbS"4&<sW:=1s n$6üޭnfI/$.Dfצ#}Zפ]Mwp l+SF-HLfm/,OyN#}uO5moDA+~^^f$LE-Zwi1-%`ۂMOxU*kؤBڧԦiodMM=;$Վzi6+ MY;(m ՝jρA3xc)}Uǯpv; MȬOe2mŅЈy1u[~fw?"\}R_A%4-[h Vwx3/H[Cl:ps[(u,R hgK:P܌Nȥ@-zK̗-"E2#VM.]ajDk3"TCRNpzQ)}Vk:A3QRes %`z1O{X:Yg0]v`iV/TǪշj6v;c9.̭0e;&/K+C k ^6IS(7&1Y.@2ҷ,7x{V{ ʾ^Zmڄ]Txp:h;T]|77/`kK~ŷ/f[ע%C/2a|q|k%[.H8װtO*۞$21 ma r?J%ZĜk6-Vyz_'F8]ڑeZI~j>=3ce f mu~tdNBШ JxpKS+p4#g#!VRqJ$'R%Kc!XX$>T@HP{y۸lCVysĞP;ESvxNzqPxuZGX\u ^"ͯcm'8*jlFD8K*E c-}ߌcFR]uVuob VPdlVQպxpb>AoHUӏkԚCA`h燤I[jU0\IߟV\qd*d*FWÍ;.qN`"cffظhfVaqwϾA'W$SDG̵'E6ݜPы:9r5ho(uƓEU^/)ZY>>&/^MJՙ 0G/?:Bk}Ӽl5k!8eBs"ܳRVo# s^X>niJϒddžqgwOwGp2çȊ3S,њZzߞ( ]sEfw3rUZBc0z\Q2oJczwx,L)M:k%?x_Dj;tAVn(iSNvhPFP+^-iG߷Ыҗ o+onMor@iSYkc+i-0 v)j9ue%0BhcQ6>}3ןi&>aw2.#?>@0D_Z'mUJ[omR.X09 ^&Yga\}(#S<)o03J AG@r|40m)b'"SĬq7+` ^"IWHznH& wh1MKey׏` \Uo gh֛CѲhOc(%a:"@tIQ}0 MGɲo84=~<9|]_R?;tK1QzH<VWbp^ђ .S(+?.<@ 4e+Tad;.,JD:=ybx裆1נGA%L.t/F fbM)w%R`{*8k 'b[w_z[Mng+k/L~LM4?-lZ-`SQu>MU}qtDL"=#3TacBvz)S't?xq17?aamn=rwWk*2(]2tt^_K+gݍ^$R\sG4~q8og-6,uvuy^ǿ) k V& 'Σ$zſAۅyu$ZZ1.,u%ȿŻ Nlei +)NhVs'qv3m5̼  C^|-dʊ1{BꖎkG@Xl7!8C;㝶2xL0}%/Ӛ+K,Ms}yq]|S-~ p;1A 3-c^yy~ʮʄow^mc _.pgqLGpiT#Wbڒ?>ai{f֭uL ?J%X|/R"^ۦl>zjC?gc̗ $˄ 5BƗlEIl}IPhL5AN^KldK)W^, ~M#S&3e~4yk¥,EtyjV^KM $fTlc~Ƒ"?d z}?~ruT^O"il _MT)>a*V3u۱!Ұ%?/y22Vș%Klǖ߯0A7>D ldMKKŌzyJO~pL/מJٹ=',U{Eݖ. 웞 {O"A܉ JWW(s:رf8 MaZplԔӱY𖩘J6PyJwT`cu, ܄moCɣxǧEK(^)gO<@UWk7rEH(PYYrI?Ȇ/=o]5_C5 ۔+yŖKS 8N?Y^)l䋉{xywGϧjHxu.bkxQ#yqԩ۫P7 Hmn-I=| )Ѷ]0ѡ'69ɬf&gf,'|欤Fy;Ь-ˮ# oT"籠F&*0A [)qQcf@,3l\2PÏm;9阹WfG2qOlsHl99Bϯ^'l~q$i dܐ (Аl-lM@eepܝT@=zN[!ʍiBYQTTD{oɆӄNڸäH!YzMu2B4w!p{7H:x aAps ^3"wxVG2Yf{.1!d'*`Ƀ¡4p6kW +x1Sň$@W]{kh셰nf&C/m*wPpWOƬWalt_'v(@FPZ%E5"Ma9٘U8 ڰ8f022f\'' Aq`uUr{/W؊$;=f!%ZˬY;47QtXnFepiW eGbwćQ0|E|Y$LJ46!G*čW(^ui#}-('üܼ"~', gАSvWْ ~>*/q`܉@Q^.pۀuܐ?i]804-~,*b)r}aONcH3g{jRrX\/߃dr1d"HjAIR FI$Iu`AkQgB2a}xI|'o9ǤtdCIA݀ @ 7ї9g㮡Z:h0/`2AGz>YP_^[y5mDT<'7e-M1r@:IlfXg EHN_))W@6g:69 Ȝ̥\*n7<;䕔^d>Ge( 9{qO*uhT.l$ΰȽApb'=j ĂFhHjޕT42f7޶Qr3DVx.~xkba wsXJDvLI j8|+g',ýe2$L(㘵oZy@ zPDGv5)Šgiǽi{p 8mWmFJ!g%lm_泒WpcZ^C|gmͷ_qW9E!}vS:Ja {zӊ,j[Bc8xCS[OZgsۧ=q1Y$|FUAҥ'˄G|ۋ{09oF7"%BN]׼ {1BLksyNf1Ka]cW@*nCNj{-wb˜=ZP̤Qk<: QbI3u.0f,D#Wݰ*˜?`3)j37 ٟ9xL?5P9{hg-]%0\({21ýzL U?<&7 @aHamz'I cC\6lv49MO1Vjَ¹fؖ͸qWPZ j_ll#< ]~"ɀcŠ_V,'G5C W\ωl<~bsP}fb|ȦO\T4Q*r n2A>(笾,5h4#']9 ˟' TӬghQ_AýUn+ NDb3yhHZlf!8eOC-K-d2jڂz*4DV*pzJ?b3q(%RɪG Q^MšIHe(h\'=k̼E?=?\~6 3fQHfADA1E(&B&ȚgW[((hx!km4pVrhk&2}Fӫ(k;taHߦߌ5t6ʁoP%O#xsIvp rN>v aNV'q&ˣ!UlY_ !vow/" Of6GN!8B+u47~J!I{;&/ӱo`5( 606[M Ϟʑ ^+"sMO,وt]1)zwT _Ҕ&;ns'hyl! Q5B @;8͌</^F,;7D': ?_st5G*cg\*Nҩ8pӮOpiW /i8HfTgTr) xs{]ܥWgsg`geܚ2w?rYt8/uX(ѐFG8,.8ig3gO$>~]fW|2zI%PӔ.7QP{@X 3"1{Aɰ 5+jz!5E@ܬrXD6:bxXۡ~LSnۺYUTLW&?)-uNx~ |D4\yvE"Sh+EPFj_ ҽj!@,C-4Y4 F|Ee8xY&Gm0qhw(X4;UH^RlFYy[ ᤍFj&V2s%6TG@$bψM1;V7TD$GT`h+gg@@))wGgr2hh#2*'O"Y'\U2 g>[={$lRm]>x=Sk1ʜuZ;)M `u];lꖺܨy">y팭 (EEu?ڕ=k$\l*5$NҗWzW. %5_-,U[Π5ڐ, A8D^ $]pk9\ n-^O+zND1xv gL{w'NYS"O]68g BCT6=OmA&J^fȿ: )a-,٧B̿ "7lĺ9MMC x4ÂVxZ ^w^ Pi;[V([cULA=Sq2maPH eڱeQ*DϙFb 7lo>M]VoqH#t /սU HCuYG1PW=֫ųjLvHE}E@HY\%$p]/ߜ)ʙMX<]IX p;(RݤfU;zAM s}tW">lT1*h K*MXـ HNԀ^Io)կ׎5~d Q?h"`a;A@aQH7$R0`.HSbTw]1#3z\uhX -0*!V[Ƀ.MGvSX=M}A|<;tͅ&$ KHȃ(;WsI]Kfʟ+8N-40RSٳ2[ZP}I䁂]Ϩx t@sT7 hi1xkZ{c/SnuOW:D71#0TxY^8=Wh"1Q@iuWgLHy|ִdِXe!ڀzyٴ*~~7v.S#HrpQP8^-c½_C[ ,RkKad|vB{$ ǟOҟTդ%#VͧUP.ߝc?ӷg'ǾIG2H*I^b/ISAS0|mW,aIq¢* 0+ 6(n%h>}Yv0GSvV\&L0'ʥ9ƹH-m )C˔9`zI *h/O7.1::7jk iap-i匑<%ը|ԧ^5==ծAݬr[cbrS3-&)&eJAQPQOG6f»_Ѩ3\l0gA+_=ȓP]*kd}^q{Jw$u|uu֔g`OA Hq!RRO Ƚv {B59Z(-6 J!u6tob+V<_&$M7Wܧ5v41zB?[> m -ORħtX78AH8õPĎ߆)F>ަ4qLŮRgLh+Y: 6R!(EnMɵm r#56xm'` 1wN,> nPЭ C@Pvr&bP* dSI׵^aPV+Y%}OztD~rKR9Z#-l\фETw2矗_dW>jQKm}(5[З.Q~RCE]Qf;V8l4a0"]60#w1 >YQ"/; 8iyKlf>?0خ+\Y쫟UXϓ3m۬z'/uw=H3b/䍊}]N°ƃJzd P,Hք16 ;bwņAw!n5G rn^LqC~+dUVC-eo=˖38Ÿ"Y(ڻ]{o/F,x̵8G 5#5osRw>Pdb*p#zT$+P M5~m_aYאQt3lx߄Bf.ЬJ]VRf2N8NJT)_&m=0xiR, TwG(?`:տU-lAd`K}tieޔ}ÜnEpYuK6^YyQ֬5+>75O1e  *N>~owʖ |IcnsF/CE:xT/R*8T=r@_}tj,!#rle(~-ͅ;#MBMf6şx4"@9X͒mٕ\6Wdd?;b- t׃6rx82 aFˌ@o af@[nի:T7xˌi^͊2$Dp/hv)Q{K>_U][&W KxMpAF1 ׁVwLkd(c-u=EY=ڧń@3cɊC`#$Ҍ ;u,ҫf^z`f|]r6"ծ ꆸeJ (zoG[=8_37|ΊW#Y(.П"Ԉ:;+l$D]ǯxQuZ֪40p {Z [R_Wfvo'X9oMKgHM㓏>[-P[~%(Syz$)CܱٞN&kύ;x䝒I9 C6mA!Q* ,gJVթS]~ oFϳpD_ z{F ~bԉZ2O}F,mUVf_$a,{UM_5Uf2ӈ˸ࠄ"X'N>3u {D ]Tcw̰, $"eS6X͆H_7(-ԭUgwoyQrgm'>ebHiv!/Q7ϓ>EB5=,7Hl4aJ U i*Z|V ]W4C9MeŨn&Ҿ q. @D}=LSL`a&]1⪵oNsʣj̶/ԮJt. ʚL3Rn5sxTC2Lj", 2M;wB;Q)`x{:^#}]+ϼ =29C{6kbN|)vƊr_*BB]z12Pb >UfƢm(@&ή o#cms$rBkDP0dB2&D=AZڴP˃!#OXCP̒C\- {S'+E23z0NWtKhv[Y2Þ,Ef,\:o'G @O9O! M4`fᚄ-ThI|pAkF7Ray/RZK$,$~yM2hy;1tj*&.+c)jG1#ƴf^i_J0j耮*NpVP2^KU2VAr#ǐO8?|nnj1$s-)0n)m1[0#ْن:X|D%ǭmȗ~]A(`hGuL/ +U?upOD,ٳ 23k@(g'ҕJ§-N=Ra2l:.,#[]z r8vuѷR*[L (7I4\#͆8"DnυU0 ' J5.l<ms kXÐ]>a{HEl35dگ *F hqݡM,c%~kteߴuvH 1H; w [' T'U%|CJ ;h`1f}5ZG}gkkZI@(xQ&Q<҅滨&N+T^YsD[~yjf^eP9ӷ_ ,Lvɪ,R< QNt&A50LpB:!Nr:=Ws+ IcxmF򏓴(ƙ@ϑEp=UƛPu,4Єх 6ƒ  /Уq=LnbR1(D~,=q-^X| i:óƟhУa*݁fsA Yf1ܸl(D ퟩ:ܩ\]*'NzFA<& _A3hϟ "_\7D蓨 tRVa=lvϵQck+b aR_DZB)_`If0h)t6%4sF/JZWT`xR7LeٜN,ޜzzD\(Mk6jG K.&GJ4::+fdvT MEzWwi?Ds,ۊD]{^PE/Jdx 5Z׸U-rvG[f9kxƺR z\qTApx* ٴ -FfiefBjD3eqXܘ(}O.\Z˪C6ۨ KU"\&]].GMVuIV .`WDOc]G`szS[%t4 a(kqdrUCZd-1ɺejl̾_9@DYW> pPUb޲_]ҍ$Y.p fUGj;SY4=5{5ְi j<`:2=F,=fyМ+ٙ D.T.U#/:\K_p`[Cy^W0q:pS: ^4܂jU/|U9*.RI4fwL+B!+ *} *2;Iys%/z$V#{BK*6=ᖱ8$A@;"+0(+-yWL)F; Nyiւt _E %bٍvdo{(kofO~A4#7]J #q%IC#+dogݠ1x6$;-sRӭDF ҃7u{wP)Zȹep.{ t:|ƚ-_3df^g)[#?W x'<;o7uSϻqFWDf̷68z}Wd́gJVx#M\4Xxp07"CwY& 1S2IM!4O^w-2?\ t-q:R[໰Wv]?>Cd28ºFD*w،gEE#vu*\dWA⩫@tZXۜLXJACӟrU7m=/}d޴CprGTy]o!Eb1Ȭbp,NR#9Wj,Um!s>:Lq1ŤXdl1q=1]]81sqJev'K^P} lg ^H~`u'%Gff3-[ im'oFEPt3B(Xx~t ސ@+IԮn#t(`xy1Uϔ#0\lG ΂^4h:kib\X "I ^`boJFh$Q7ēeF{D,vɈg9^U L"l/S8Vʀ1㕷\jFVA>knW/@L[ީ;Ǯs@LfI1͵ͷsКWf/хJV\ӀV{`[i(x*"%>>MBYX.yr@"ӧH-?9kQ7+ M1;j; ń jnZ2fo=i7chbߍֱFtj)eC j/L?)T.b 9*Jk_)M!ىd#{ n({,Oo-2%۫R3),CracFJWYokcHr;O QZ㣠-CXMƭvMK!@u2[R?cl= O |)7bn35DB8H1oGF_L1*.ŗV~&n ovP4tC{?j8r ." e iab60|oU&׿_d5b78CG3PNC;ɘ風XLowFcǙmøȩ.dgtd2B* ƽ#[hNg煣(BkIIHк/\v}`sMɏzp=wl 6Ɯ7^\|㼴N]C̲E״E |)[S,H%BeOB:!Q2|&em'Z >n:ST%H0? cEh {3%"bE[VSl,둊&aW ߜW`)H)L"oqaJn7>{|KO A;?􌑴Xc ;-m[ҝi;'v4FZ|9%X[vxߥmx3p@D7D:4{{"=avV51`):ƽix!LEwVF!\džWCO 7Ku@_vt\\r:.TɈy!j"Vfc9enA(̩k8A)=k; :8KiK>M76S 22F3:ϔyb!TurBcc2<P:-v(s7g^Tg(K{ˉAW5їTEg>z~&. xY/ћ@b|\᜛Ip]v؞2ڿbKn^TnuMȯ2daB2$;ÊmuV̥iglWCgJ4=Þz)o9FQ_e|tf%ɤM2lV]vBjIUVhޝh\7Eg)f̫;P+#Ċ4ö -8oʏc0֙53[Cɭ| =E5q0LNX!,Lrs(Λbȝ<07K2V Y7rt47dt Szޢ䆅-&">88;1nJP8YAlE.Q-s[ zOg&SgEGϙq2ЧMۍku?e=0rWQksUn ,XgF8[„[ &ɽYkh3@FqHaf \M ,,:rfjMӴ"umFwY:f8Rov0SyX6҅IbA!K3I3+NH^^ZfJŀ{/JRi4y6Rz\ 9DxV|/EMtIa48.~t-JTWQJl/#Ǜnޤ!f&/cO"R>gLwJ+KnH5-W'F'w1T @a㳂V(T,Lf߹i?~o%OUg9Pܹ6(~o:I/0#'vX:͘l{E$b\_#`#| RLF`UcVFZ;rZ[t\yySQiJaD .;BͿeO:)m8Qa0cVI9 X)W¾Bi9rؐD< HK ˵d;>Mu%C C UiAVh{؎e:7 { {F/{rn\VІɞ4ohY m~73mDiw]\oͧ,-xkfgǷ2xTvUΣ-t6a K=󚭢(kpc9-a NK]+F,N!L|ΜJZ||,5P{нt㺸M19?4xB Bo.߃N2˳`Cq"pHiC(JT`s%'>B;:C0uZ{h^a$VƗώUoSܕ,_i̯yFx"m *ٽєP(Wqt֐02N|dw!@ɩ1ҏ +׍(ÛܯӮ0Fؚ@mTC/`8c~!'qJGQ39~TO,{Hϟ?D+2MX*pDQ:%[ous6Űо*B&:T+e;ŵt7CՒ)AĀCdh ^Vu\GS"X 63FsǰUdp0U@8nz?q*4}#FѓV[OZJH ˃i3XLf2k2Ә U%SiدYr9i %se1C]8GVl?|rѽ$9|65h^B~ɊVIQ[ ."P Ac9-\(sa"lM%)6Jc&ʄp\7Ў'AJ:\ݑVhw c'ϲ KWBuX ؿ򫎂bƯ:憌p:W#8N^ܕ); M0Ԙ'>&>v[n=_LXG0@U!˒\:--x]N@(%/uaʧlTMZ&}qOy W¸޴)(勭}t铅x%S^%܂aҙڐ™MH({wPvm}*Lr>X֨]\;" ´lpxvAB)w~uvp: 3\eReB)"yI>z:ҕeG{5$Ri7XZkyȚe 㞌ň{ol΅gX+C.7W\Eȥ5v h}Y ag;ukEB>1>]7hC Y)wesV& TB3gH䳎YOJvPD d@=uZ$ Ԏ8L:^,84uQl7$=>!}d? t_]ӯvF+foE|44ҟ*lhI@cǞpTtA~:bLԝ=#3f洩^mSw(4f;S1SOgyMjJ:FG1?IuE֪ʽ (=<{o%aʊVE_ۧ9`؄tr`Ioa.;5uBq5W )_"N0RM52eDRw |\2{P<#h!0a3b̭!xlBk&+ij¹B\08 atlK4Ц@خ8~{E9<B9"y-˙At k  gP1U  ]Rޮ|Â\V #v!o>1n$4bn@OSt-uMcTw aF_9MvL=Hv%TT"||*0 G7P)'{T%],)dI$tcò{͒0ƨv; |uHCB_?̀tfÎi҂4Y_/͋,q"CL$W't^=@U3,.,mSB^jٖG 7H_UIӏEH n߀} [H8pl)}E2)r~-<2R9'O|h)=lʐ U1"d6ғZ&Iűs^V'iy"`abdH_K ‡FA$[jDͿ*"D<K%fO% q`\^͟%MQ>=+hFz.nYM Ai_^ 5%ںE⤨ghݚc 3:E2 @ }-J1ϧ87)Ͱ @G,cWBPEl{M^KRuust0LoCI͋VfYߡYsfv#ć) AlߵLj-ʹFMX\y lfS>-lXfq7wܒh$t aw1LrgQk&nz[K8&n_Шֽ?ty 1d"1]PrMIl{Yjma*hZJ_<ԉP%m/Ro uֲ U8l%v;` @BeSs~B=w0oX?gA@qB2DncY x8lGN]I8?A%Dr-'MAv PBNQ?Xہ?hkDϯ;٘,T;c'M]Y.U >i$+_uoaisy9S=,ҙE?' ЛAH\@Y)vH-%Ţy]*X±vF"|$yќb6:cBqZ*8mۥ(awga V#]yU.B va~+ 1:vs!n&QXsgoՃdBX")aڐTRf}O+Eb}HH?9wrY"|HCHVfrr|%pU-]]![;A,~iJD1.[ϗTs"}kUX89?(bvhW>[ѝ(3/ݍ[}m|xِBjS SN]NǫT(0*>w-&F)H%y1x\uxJe/-1 KZj$=XS{{l,נ8kخt& O>./96Kmn Qlvs >$%omSMikVy$XENV\ rm*؞O@.ă7\{vDi&.7B%XͦBY{ ES@RńA8j޵5"d V,1^ r8vcm&MZANyO >)ǓɍUAw%4@h"委>dLX/}Se6+rMև; In^p*FJdΪGICOO ~j~C[ma2t j[ *bQpdߔwmwJz CL1IxOoXVAtXd.qJl{$7cCC;Ơ21m9E>3ՙRldPt؉9yC_cCq;XRZ6/ j$V- pTW%oW!3ANb;M(@M-a$/&:{]$o|Է9#S`藌3K0/@κM.h`)kr0*H8dtU(8 )vl*"#-|-d:>`5pq$*w RbVcc2g')g->'Jѷ:%[un tW8r۹ mvo^e)OqX^1S9#C8ۍib#l|bhx*7m>9jt)vZR'照M}FsI@,ϋ@@2FM>/c?oγ(6Pbu(Y)Pu`icH}y?p`z80f3]*9nBM_/X<.?\+Yq'WwTo ϴI8'*ZD+t:Ƨ Yg0o]2+mjxfXx?ESs TipӤz6 ?R9/Wľ qƚ3&.ܦTi#O BK1d8^ h-'U?)|' .mb"չkd }d>hTVyr(F׿W__x36h) tsqztcI~J/Vs. ?7d<K7:P$TW: jݼ|Xʟ)% P[!f\"FȅGun}-j ŵ{ٸ~O(x˩hIr"83FƯ J:D B9@jy Tls EdH}ߜͥU?Ϊksw2X]FE&үN DM[>Ѳ!ْ~&h=\?o)8Vg[jP~|e݀,<RaEr"K[Cm 0o!rn+&O2rHhRM,?1Jb+$. +{UN)^9zy2 l& /u吸mADy̲nΎ>"@3Ad +!'/ͨ/d%LL\<ޕ3²=Ljł *6( pMC`M@xJJT9l~ e`!`)%m6Rm)ŷ:AIExZƞX\.rTODQťZV(Tw$]Ov#FBِD~}%9m3#Ɵ%u;_g:*\aoxy/F;1u: ZpY!MU1?~vT?< 1 (՛)7#qm1Rf{ Qdo0⮃sAªk'D<|q3D̊B;aeRE[`u"&Kbم{e%g"ڮ wbY:KǨ] ˄cʏm&2DZШunrϚv !IhAЇQUxy$q0Q|b'}])K@Kf7A;s=L:sfW/@9}iVv]{#6j [FҔD\r<L;oNImxyÄG?П%oOA I&#ErPvЉ_Κ/ YWjFq %`ŕJ0q׻2@t @6pj+˫f6X}yQw6` x2t4ZJ zFJYrpp}T^ea+֕ /?{=}?^J%u]DrYܣ!y_d/DLfA 1OZkѺ- Z;3Z%g3B@UPpfKL=BkwƗ*1%S5t^ɖ۬ yqוbYH.]ep wt4Ka uL@2V豘{%/y~<\%X.BwDRa;zwdvCfjk^87UY`T g|-=MTV4bH 6i3U6Ie6V]܇^;'~j%3JrxE;;E|mơ7*&o['WEh;X'2V ~sE2㳐2h^4͚GAQ=J6?,6:; ֙Jl|GK2?LB;Wْfo ((_ uqA ,## "ėUp'%5 Օx:m?#za屑 8k$p[Xk7'JxWi S̬Pp$_qX&{y)y09I2ZAYU@U$lYg6NZjSYv4B +c! PBZ(v*.7p_MEa%uRw:iȍ:@PH)nY ,XvIs@jEɮȘ/e̒ӚӹG;?m a`EѫWY6fQH,0tѤwbڍ%'٠lrqm]t8^T PMom7C=yҊqYџ`uE.Vt_1S6R0Ψf_e=|1YwvHpݯ{P&NzJR/+ޕ%Бa31g~GzM Ǩci^Dʹ2q?%tVax3sٲ͢w0b#B_4zc?xK^6Ԓm˰g~<_sct+4wp7 + VNZeD78 ̐$ƫ_?kw0|GK0 %˭_R{cmͺW51.AڮŌ7ba2@Ck+Z D+#+Iwܳ`ٝ۫>7No Սs׍'Z%evJX!T@͹\Gn:G[׬'!eA05j͞>=|7v8>k`(\Tz.xVM'T}쌪}&4D`dEBO1hG%ΨȶbەPFG)#Y6sfZwmC ZR'4H)mt,RF("v34B8eY%#[Pմ=LɟnWl,3q}?|,#]}L',SȈp3[7d2E4QdܒVJ_Ω;Eh9zOMP,=߯;$ ~IN"2j{G9 ?@&nDδ7+!e+Ux X;ޙɫ.VdpWbCG>xDݼƔBbr6Z)AJJeIט]þ*<23Ȫ" G{ezO`(%CeNĩV,(bB%?R_\(N%%LOt>K/0 ܙN 9d: FħT} I ?`{ϛ5ŠW_AIo]T &r2 ]Sܲd`}U,fԊ7Fvq$if2s)L"t\,iO_94* > KMNJɡF2Ց {6& ڗ_f;G&9zA6]x7E`3 ] _HD'k̑&d= F6C+9{mG\ugρg p`1PMBQhޗ"(L& .ꌠ%3XVx1f@6 0%VYK5 Zb.DNxc|4pg,NM8 B ۙZbQ -{0U{[82/IwJ9?svoWMFOthъ#Z JФ{KO"Ln&6SsJuh-F_B y=哅uhpin؍|SA32t65)bxvk2>cu)srI8i^HqejńJ8pP,%Y}R:;m0^aKIL#ӯqDǢД`U= A1O5

&Bqy5*-iHun/g{!'nUb;$gw Ȋժ ֊sz5+qׁC"aƣBRDkZߘ1 Ț!>3U51\w;8:ȅ]xYTݹbLaͥČgȺ_E٦d8@\<)o 2w~h#ޠPȍk_15IX"8c7>C࿺ۇxWRu-E i9Qw|YHr&,{09K?"HBR+L=IH9L/#-XoNAٹ&}DG\=z K04Jwmw[N`SŹ /MxFΜݧREF =K֐(V @h 15 M1p';N$ TX9k rn>o[jGGߥmX8XE VzZ4d)ؿV*ʝ SJvp~e(PFK-mt1 u%syʳ~ML4NsP{#-AF<@d՟hfjꍼMbOFv=e*DЦ1 QO4ϯbWXL 8Cm%: B%{5y ww?ur_?~`>b K->m(+rNȳiX[`mm[P8?*J3(^TOh"Bd9$_Ɨ{XvjބKnP"c^Qxz6YJ~=,/) n^(0NPjk}>$~Ń-mML@A)CJ-t*&a85r  ]٭K> ý>b##}T}  zTK3U=>JL6cwQΓp!Odj&0ڋ;XhR6\CdȂ 5k?=xf@}M%>X&N\k(:R欮#gO/1e!яcqDh,`O2[J#]!B6 Ւ*:z/oZfƷ%:K5)1?իkL3 Լ&m:iJgO>Yd"HS6G?>D Fk%Wc:ME{YFReEP3y}Ϫ uof-o~V8 U#3*E^Y tI|$u5co pz\GfxJ6اqt7}ie>$~⌝/Rg-.8Cs}4)Iz3mko%oM'D`ʩw`"G:A#|L4Rw~d܉$NDn 3keloVdT!P\vc.آyTLDMe v_=a Ŵc<|F_kaSIGå6 )XxM敒Avl>t8'aVC@gA)ˊa0í,,]Fµ8`TwUkbj6·eLJt8md>\uu2&Mokv&i ڒh\E^UC(H)-BmB`Jٹ-j!:n "HnwC%a]~x?TăLi`eGL**ύ2[-!fpӰSGVJH:nuRt!o%ր8KՓeW>5P /,2,_tEXz=dӴO#1/1`F5dHoғ!H$7 Et- 4|_FYoݴh% X"C_tXa/M[Yp\+E`J XR9Rm!/D*d׼3|ܾcw,}W[NG纁#eP>͏'Ӧd8C~᷿ﱦ"r2 v@lЛ ui-FiJx:2؍ UհGަH,%|pƅ*?B2#eM2F-vu6&gʳ׽GB@C)ᐏ 4 k ]UmV$B 0G]¿_MT-i޽s ;jr!;&'\DE[CG/OͫI]N#T4L%::2g&8 llHŒclX`#%SN49] 0L(6}ҁ(@ ہ8w|a[ N± @d#+t*j'cPeKEb A)؅g[_c>7DqzZxUc*RK*^Vf.Z JQEU,܃#M,΍_R&oaUo9Qn[Al_(JnŴAIĔ ?8 ;UV_|Rn?7w+I /uu;Nb1qBn2Jwn^I+e;T?hUQ°wɢ$(j#E\GtLGqέ: *[+fOab;IecwjfjUiPP]iP! A)7 s6r?Qsg!KL0/›66#Dۡq9S,|A<vn)=c9.^JV֕HU:YbLO9 j1%q @ivʆ;%D_D ^\mԻV #og`H"%,zޣm76'T1\g֭R}})=J)S+Փ5+71t> q 9͖5 5L--ˉp=g? cOc`NC jHmM?P` qkNu!O@Nn^.9gg)ʹ}h,miَ`נe~s󒇥T{a)0K~RNwҴ")lH"nq.,p9yP(VNB}Te%B " bUTfex\0k* $D72kk^JD*V_7u9kwan{lJIiN+RhgːP,7)YRsI)78#=x||BE\HYpuf;&eiT8Ղv>H] pڅ[b<4*#@Z/IM{4>=?7̱ǹ1ڝ~3YZ#I&yY;Eo"+k9MExfR} Da鯚V: 'x\Tϊ\3=7VS; ܂!؛tfFVJvI|R:2!NeNeحT):s+8 KlfB\H+b%Kĕ(s m0r:.>FTQR[nƨxcEx7}\_ȵZ2俏pCVPzF^M1\%C$I0O˨u6GҚp!a\-L]܌(&0F1ZsDs}_.¥') @~כoc9@ŸׂhMJ*7KCkAܥSiRB2j6ݢPC`^ xUt$ vF ǃZ0oB#WÜ4ǣ~lٷw`6i-xŹfGCvji.e"Y\yq|ťUӣ[rQMy:ZLqP@oK&J^8>A5-BW0GYCQEV45b䏔nO!bAK>u#ɫ!<] e6'%I4g;)VFr}"  3 _2vϳ1vs P/>C19 S" eRKBhΨxGO7ai;|d 6ɽ4~_!i{|7M ÇEG: ఊTI ox_31z^Y^3ހN=,pwni| t~F 2qx~BsimMʄXJ"Jp C$Xju;ώ'V'DWi28ɿ 17Up Yܡ_xw,66RVɲ }6yzpܪp-W- n {c:mZQ,,}&I<`1UZNHrpYvP >1+ "da̳QР(ɂY- f)QVqvЮ a̴Hs҂"]K=}p6|Yh/ݽH171SI( ?E0ł@%@U=!ї^Άb὆{3LZ o`ዌƼ'$7XWrx4ƖHXPkJ.';O0/HKK?OUjnο,zM:>孬D%G'zX>*֋h>OR_>gɟBtY$) )QIx]XSXt&i8lXLOcbgsvjm2[ Oj   2]B7nX93⃯yٜ=H*}#,GXApId5y#eYEX-?rs'p#Qt'#Idѿ%җ:Gb@C)UwM+GQ{̃]fPzzȓ֗5t .^_r 4=1SJ. 226O{޵u; & W=*O"sI nvFY&`D/aEZ@嬅N68_5O>"g8E١t@Gҹ3%Iסԍ0iZ$V JF8,q$;pĥD$% ^#Ыge5@L*K 8)\ %&Fݴ]CzR0*zlA)AiNֲv$qP/UR<5fG^*Qu,(m"7(\Qheqg/Ie5f0xdՀ8uN%Q/؂J(5 rDOuWD,u t)2žqˉ;_9t%gQ0:Ͻ<ԂV Pll©{u/x *c3tqp~]#>(ƩY$j#ӕ]'~9phMVt= $Ž&B Kg /:@<z rjpf}C&Ze<Mmܴ* 3%уU8rnUK1j.,]clUs:|b-UoDӦGosEU 4 ͞y|i JB*qEE-pIne.Ef x~;XL15EJ#Fb M UO^0BWYjAtREor]wܦ]":2+|\|1ٸZƀrvM u+0i/-& Ne%UE>WBeZB¦'cC*V:a >fabW+@<U P<,t-EkgyQ8;P-;'#5-XbKВNKYQ+NbdUV/gc; 3xTAԢ0[>]@%!Ka.V1lR.I*b nɮuc/z^Vu7+ʰ-%ax@H>MmJ&L| WdѤ<qQXN%IuOT+ | Vj3t.Hl'\K0[ K7 ˈPǀ±/I^:/NOqूojDTmD 8JdE?*[~Bt7"kKɪ \NwA֥eOc_Wކ8jT )P+>N5FtAb7D5TS0} mNt0]as:ZK}=E2j^Y`{2oYXֺ{S^ L\<G25+s'QÏ6+_9/۠{JT\(ZlX y!:gv|5'yU۶zkM{,F(}lCtۄ _FĴo!Ū5w솸4rBlܹo  8R*]0]W6JCʼncb ) ]4.'%M)c^p.P?yg<;~|uEAdA~&.A,]l@\ռvG{*fľfH> ᗉN@ܩAr*0:9P*+z\"츔(^YNw+ʱx;SsҌo\:/Vr <HAɺ|pO;ZҠP"!?h4YGpX}hNL|5 H4$ m}$&] 5U*i)hLЃ__n@7$/xG׸l˩>) [# 7iDVYgе~;zȂCH- +A c&C.M3:Nj>E$RumdǪYHGDg *U}ͦ6:U '߿>5B?uڲHQ/W|pyKp>%ju m.kat捶W9i!ee ~FAruYCR "ڌkP #䠚f ~R zV&+N35\| .;6QIuVƣҨN]T\ 5Gy7^γaaGfJ/IQ'AőutDCWGQRQHQUY(I0{g㚔3Z[j$O7r:Bt޴4&Z[ȃ'#NRF Df/ t ^DSQ2:"nh#}l%W@WJ]\S/݌)* ;-w{^©yB8N3Z>`r=Bm>)8UK@ FGWVѭnj(etIsf0S㌟rɮdl:&[ G~29~X.vbʿ7Ü5:grDĠ5s͊Cή2n6,g=dRP E]b= r Qw$/s+ϯ+Gl.YrX%[2uR{OVٹCuU8}φC7Ds4{!} #Q1|#0Sdxl3[ӢLbEatUȑV1toϬa,WÏ>z 0|KDk+Za׊(SRŝ`gRvl !3nxNLMkj.ܑ3aF )Fsxls+/LSY;,&'S4Ӏz]:S77;Clbij f{zDN/%F3 \!X -٬v9siD[ߕ_ZCc-4C5ڢ!r2W'A@k ̮Z [}IcR*Ҵ*C.YB~l\)QT3=wؿ}ğ"U{1t2 խ8ſ5cx t  Y]> ?Z` ]0,^c t:|X V2ȯ?hO"eBCp cp?:VFG!_yGcmoH60'5=UdJ~>1%SQ )ൾųmFp am  9qP=O8yv\M3΀BA³wPT:FAwS֘]Qa/I qf"ΚȦ M0~trtt^=+um:vej ܮ|1.5Z5#Ȓ$ߑ8p7]yD0ʡ 8| M}^YwGٟ]⿁dk^3L"hFn[m0}aY8B֧Kf .Mvp2C\k.h',TR> t(1Uʆ[~R.o7)ܰ$oט"#QE?Jq9P)ON㺭G]uw4Ҳ.eR.Y64S^G9DU%OlX߫E*Uc 8Λ]J Z)*sz \Wi|BOζ1) ߑA Rݮ/_<\p# #Z3F+$.]p? (}mfN1% %Z~wG&t'\6~ɼn>fMLU_F0‚N{neѪI sy(abj r]mR Gy^wt~Js2u.MK>ԮY>a"AUdIM,h|%wT":e^үLliPQXbVJANk-y 0K'hq^(.a0Gf""J.R" b() p_/6-4ة.':^KZwl4|ΊRc C{U3_0/[~6:˝ӪA)^@/A k0؎l%Ïȁ0Z!ioΒkRb%d*gyRfPN)Wm$J.b%}}Zm%7.RzӋZk-PqV{Bl?nF$JTn`Gz%dvF&3V1£*=%\#0$s8+yc@/]96c^3T1RY hqu-H[ F$5ZHSiv6J_~ r%9:8ҼQol !:!| %tp(a>kQN" ]S@p_G2>O.-mޡtbY{t#g6|ٔ 0]LwƗǪ-\v% FvPZ!2]l.e&yl%mlLD@H/Tqԃkj+(Ɠyê`>c.Z(2%ِ`6JTjxױp[.!$zH ױDG">H5+拈Sz߾6 qE kcY#)xt/>1A՘̨Lh҆ e HFzk>Rmu}w'`${%;h>5}wzoP MQ{)ȵEXUtl ؿJ/3F˜ a縠"I} o9 +~^Y6QX Y)Be&sgǛJГVѥAr]YMCӺ"97Z(UΏιGAjqձ T1pXȍ6O/ @+1&;\#KoWJE8SKhg-um4#ιJ5yQs6_l y&V[Ez̗'c{pJ5AJ YT20GAVè%D} oޚ~χ5eupX]yZ5Qq__EK>ݣlO{{TCjrV=lyny~t~]l޾w[kjEoT+ic4Z ׺X$~vL}y\b-"ٳ/ɃVD>r& XoN_`oZ*A(ry{ G')MK],:Ȱ!4ZNh`C_Tx<>.ެ|#8_eZ@0墅I1ϼh=~V" aBB&@%ZHl3 t"$L8dD̓&Ns>X> Ϲ߻Ew\sujʢs(%ۗ*w `Dŋ5Exq$`Ru%IޭbL!9"NMῗ&Lf"J1Z׬{BO-Pه?av@=O<&F"Z*@'~ϣ??6z1sZ쬱2!ːRv4y-gC$y:%[iӤ%a>)dőK>9Auf/%E4L.=4?,4Sz~bg3 7*V.,E{ONm:>%Zli/0?ݯ)NO&',EǩR_یȾ%L+m Ko`tk,}ݸݐd'4[c6V)uqXF4yE3WqJH_U.CSaLm&>c xJ쭩(HdόD7d.[w!qnf6.HفoYCi*"{Uib.ttrK uC0,'JSE:EV쉜Z;X8 E[b*6ڕ_GblE܂JUt#,~vȾXFcqs_\ &iH> KV/I7r] 7ɫR4yl93%%@.f HŒ#qeme ޶mTD]f Dz# 8q_s oV";>tnRg*̟w4<%5V L.dkDGCk2LF(Q\NwVP zS6-%_4 +&6zx95q #" x[a„"D~ީEj?:Y[ 0R0Uj|wO-Ka+]x],UiY:3GȍRd̻exeq`|)*_^T8vSg=0owT_9LىeA|B\{MG}HN֢*&'DFO4qj/d+RfPK.Nk`\7)%I*+:=fUË_a62EW(V&h.g[+,,!xOJ9[84^OŁ [!koGS]^ºnڞ%#qQI\ :zMiY짬0|+)v,[z`PE[#U)!/sHC/*tmI :7蠠OeWݹ];RpV#Mk:[!aV#Y:O96\cy] +69g-װL%G-BUHwy[yyS).tN+C!w9z Efyh%Z'F3< N Lz~XѧCo/}-[C w#:K7s\<( mjg8ڸ(oyҠk/qAG$TB ywM( e{S<|9!|Ygq8U%;]Y޻LJӶ{WA-6Fnes?)&Z%nnS' NQsn*BwWΓגiqOiez4vD%rXV6t?#7x7cz4=as|L˸\'MX]>79 Oi~ Gg|DdRյɯ'W9qQ~fN DW2 nj⬅׽Y-LPW7ċ kkȈz>Z\FqހcEgaDf̂Ij8JbzS) Utڦ0潛xgL( 9Υ6Eĺo[{nqRڴP;#}:elMRς9YvO@߻,׽v<@x`Hr.^VjF W+b>ȏEWj4<&?y]!O6O1QpVo*-y`(q( f%ya({tkdžUzLi) dw3 F%"iOyݳq>x } a}T,'dQٜ*C-M`'W.EgBZJI-"--ɰ]q)ƸBL?i^dt;GϨ;GY}J;U84)תt[V #2^D܅E| Bћn)͘D$m L r,,p Ia7lGPb㫈"`vVv۟[k^F??*ߘ>m'o'|6֡'ºʂȵc Ok]=x/{j7" o!PfplWf`Ucl8h,KBɓAzKLCSʋë|(I=b}TG%F5F?S[t W 6^J%Zw%_TjSY|;S"뙦6p>@׺[n(w sĞ\DIX?8"'*K u썑S2a\4'@S">mv%eoѵ!;Om{;6F*QQ?.ZJ.})̌ID¦ cc޹pfG* ~,]  [Q|A!ٕs71Ɏ$2~lmxte~Z +KILK%nv]C'*MS~zhV0$yޕ @2$hGU)Jt<恙sUl4KmߙǼ!Lc+khg­KgPi( ۖKXr65!#S5ݒa$2,~c6FGʏ *\W=RūyOh`pGG[K4WYYҘ'h~9˱^bk2"/[)fe܉c^&vZ Oo [<⺪tlM/w'4n};W C6Cʥf3u4\C ։יBy-}&ؚ!$rIml#GGXd%vfM/faA$5hmu+ȌIN^џ|*㪅 Z" K[l.SB*0D[#IYȠvXjD3di#;+D$_7B|S& 7&0&i &;ZDf3!AF̐(pqlG{X="Vs䭹8,p}\豔2\0DdBjQ HӅX* ,N'IL:\w-SЩ*Y^ν ʐ} (\Yv,K~ųH]z|SQQ½+xlMHXsdajq#2q90m:ضґաkϵf>N6e=.4@^Dii4LP a ]H3 kv@p\S E 5/hkդEz79!q`6G/^O+SF޳WawUQYR0I.xqvI|Kḫ%0PIs2>!?N`0 =:XsK!jK LD`ڻo%d}^lRO  K3sY>o$t'`?k%l{?7~kiQ9]{qV-!De_I/B] X7D/*tQ']^ %O$"PdrZNп L"܁7YۚPAF$|~- $qNKB'9YRb1Yoѩ@I@S-+|0\s&9 ɁeI+6xϤG ,:ǜF7|]}%y@7B0|#&̛nj"WUENdS!R]Z`u>}\V>1Y#{$ȜR;Ã1!=TQd/YU>Db|Z!k !#Xf7CJ5o#?ґJ ͳ/0wTr!#D0<KwҶslsҔ(aµ 6oZ! lLd QAL/dpڑ:2, pR)9bHr#:JWK`c/I)+ Ds^2bpw@n gyF=/[ܞI܏sj50Zf BB>ŊJAW&U Ɉ?dƀȧDcqĝ C[3TګNqݏܡܓ`GOt6JޢYd(&; ~wn7S*u}jZZGiۭ'>YNzK0?`p>7'?buhd|KVrx8Tf =bdf\ m:fyGOó,]]23tnȞCH6xQMR:*GZ]gU>n’eAYjzGU$^oLOy)d6kTw,U Er¤RYMS;7dy2/U%o巬.Y EAƞ=x68N&h*rc_%wXӱFCej[ .+C'B^ʔQCh\F?[;,2)&8wmQ=1uBT=}zeHq( ;MO /;-i5@LDWG`U;FZp2ߤe^㐲lQP_z9M+dPLܞ<c"ړc[[z L ƪN;M[ֈ/?V!ȱʖ&IfG}/.nUx-7}ðI n!z7Ε͜8cJTܮNCj/&h|AHZw?{xɗmb.YP-v#)^E3KwW*ܖOzw3ڥ[PxjIOT"oO -X{IJ*0+'?qjɢ>Ϭ >%'+&7,xV~zl=I}16y|18mwG(׼Kg307=JGm ߇sajU@P"c/0[duV zȟ\ui5 :q=EF,К\ݗ@HfU" La= _NfX"F85e&)+i{1z5Xa,8C*E5G 3!]&U> ԅjn` OFIuSU↮h`F^nFp"E.S]+@Q sM}Sԩ~;Ew*Y]f>x78w*ETИ VLFτ/w=]\^D\{,kLmd"/V29QߡZ'a¿^(/|oJ[_}+6]~px?b !p^:pFtTes0IP[/E1<3"" D3cZFK@հ4pg7Sv+GBzC[~|N蔪w]ĸS%\gsN ~)5De|flSjeu .g$e 7=[#X;o)yu^]GGxOט`U&ƍȀZ.a q~}9݅fCFVsG7Q0)I 2OxKmX6q. 4#&OSٌ |c ]2biBdiB {=7/Y .gA Rf8IyAi867>m}!c**I뽋"6sZ^)oR綬Q4eC 10{fV/w=? tqYVcZ2IK4n@-įk~XQg&hW%+QLutNreGXI(c{DV\IF/zNXW0y5QW=^Ϣj|6}aLoa[-7gv7cTgX׽JUwQ=!O}NxKw=V$kײ$0H@ =$KU\d$SIyD/H=1?$єkJLN!өAW^U@pf?1ðW<-.OSY#qcI\w2wGfO!<л4%=ѫ|s"¶觎O+L*Our?6W0'Hn%+=] F `)Y YOJFhq5^&LqES'g﬘)?YPPH?oHFh L 6rIuA^xرBn( ~-)(RX#t59E$6se$'>kyH>b N׼1s]QAnt`~"͋~,qzWU6<.1t^918lו[. "FԦ2C?E kSe@NLڛe ]Z ^jc[Lfn,q][7=/)96=7xy<_- \kĨ7)*]0+/3ê/?`Gܹ' 5{[aLC'f,B7]N6' 3!. /?@2fib0dvgBO: ~aOSi00y#7KM`5&ys=Zn}kHԨl=Tnrz'Xq< &A>Uy5` G̪$7fs<Ό؇Bmbu*$OxfX2ãW0EIRmkފdԺPi7Q}M%FfV<5EL!+.rš=uu[ub1[D'Z7ġKMOPԌd]= 8&0Eӆ*d7]Q6uhV4,퇀(8IDrGnB1Z 8TjUhYڰ83ɬM?s7 0>ѫ4s)}Vl?1ك,X}6-.a;;vS%YW3]:URCv3<FhnxGr/Ir?ckXH+d"2oFVp|M,[yLRu=C=1^Y K@;q  U~ȧJm _AUmfǟLaN< HtVwjlwbN@wl-[H۵< M JңZ\03-j#tzda3\~DrE+q';᥷fyL8 Acz9^;!fL|oKݴj *u#XUWm^?2adNf] OyezM f*+@2H銐yi\)>hdIhiYp:qUrb״"_<9`zW3IH\dlvo$(Hd|xLo 2g-^ }M̏*OKҗNe r*LwHgyqZNO9s^:5s)tq'j4˨Ѕ@T5.BN L|!62uMkO(q.Ě0;8$քlnr^+B@øX4>'Y }]̔vG <__ _jYg"'a?@cq *CJʼUTh/L6|}VK7&GB=],Ă<ɬmt(KE}^FlRF$ץεxt3*yK $03@i6_暊%B)<} >]ZxRJ85i@yU2B[3}<䷕gzg\P-. eջAlv)ްA:,[)yz=G8h 5kwX @xgg#A8UGU`–#ۃOPΟi!#C)E0KW I>7w %E9C6T\g?k'q1=-h~s5Ei򥍬;&9l_SG9=Kt7&~*oHB HÑӟ79ʀ3ya]_2 ~B??Rgը# <{&5Te\mvP_pU{[MR5KPg@1Z &bSHm=ھR+#k85%ћ,yԂq_ Q Y8(lz^n)br6Wt7{NIN8`ݝ nsBIh|GEPuHkHŦP0;Dm4_) ]dS]ЖR{Tx.bCE(Hޏ:!timFhBuؘlo]D]4Q&ZܻWr)sIPw^LCT~vWڵX~qiޠN5 *7{6wm4UrJ Aw;df<w<ࠧ-.$|cp_.:;{|sd6Tdh ~/oydC>㍢)gWiw7#AJ/hYJy5uN)MEyfyV~[kΥ6w (Ǧ@Յ_4K3PK9jzݖ&5,_Z9deҎ?;;q=(4+Q}>:Ս)ֈ&ĩܦ"z7| ީ(o|*keJB:( u}Qb]fwY9': 18)Tbh<:R6pEqY]AN\ aS ihͤgGDYҰzM:!9Mr#2A@8S٤E3M7KՔJޝEͺcCf=inT:cS/ QQRT T-E+[*qz￁o>? ܭ1C{GZ9gZ<^0SՉ?a/ɩ*Bn$zBJl w/gvLh`7`HjK99H [ܑ!m' grB$ծrk05+afI{ "Ƀq&> M <˳&; Քȳh#Á"EQ JlyoaG)7VFCc7?Ǩt NN &PqUqz# XC,~AOvw]W2@Sw)8j0< 9C[ 9``>3I_6\j/;\Sk:zFOCDzԴVsjl)ؚ)ω~ qrrw9kmDĔ>J('i4|g%tusKٟR+ۢXc8IH MvipAϊȋM/WQ|qy. Ic-cL2۫ et7][GmEG= M]ySf\8_6cz_&#Wj5Wc }}X;± n!ӡv1+/ma+++2%4n[ *38 SifĮlm9P)]g9p8LmB*I*(wq j RplF| O^J en:^ubtHޅ{9ד2\]9UT[030 `e m6Pg6{ ~i S(=t]P.Lo:|- JBKuEYrsV ),'rH<_x:>mw(0ߐϠ_a7Tŗ$E%Vգ4ڐMοD4N;l([$Fya6ߝ59_ʙ1&DGqry= kfAoN~ ԉ.MUȈ,P (qR(+Gqf$1եYq`kY5Ћ5 5K-ܽ x"⾗XoSݰa@\r,*J8O=Hy\ťe{s}m$=3 o %R1;yP'o-[GLߴ*n)е79rדǓ hn'Y*! з}N.P+$k=GeukOH6]e; @Sv=c5U!BYӭ (50ML6|0ÒBy!WL9!nY2)iF+UdC͞&vȳO2n.0`'c2|$aQBLjE,g~aO *"ضP2U6gVƽAh0odjoODYkKLhUω#ѴBwsܭZT:$Fp<2).8EACmCݏh;, ؗAF[ s}8d3ESoSZh2+$Ms`41jTݾ"I/sP&y:bM9 LfR f\J=2_4Lވ&FKfr&;E] f͓4k%muhCuA SiB HcB&c0e*;q.a gAG_5̘<Dj/XA <@@A5x6uΙ=-Ҹ(*fXC$osv:|`LR#f-~G'8{RYMo9!֖|RQu7!Pٿ] L#WN-s V'BOh|j/VcqYlr񩤶s1Dl|`:*0=pvD2zZm.pwMMT!RƉvA󆜆alw]{\0C9jPFkTj(= pg=2f* m ^q}bDn6INZXu 2$o+KI)`_&)=qO&rqԕY CVS홍oElٹWe ݕNԅˑyK9% )v;YKp3zgu҈IGZvX_u߆W꽉~L\]sIq@ iuhPB")b8M lا&ܞnW GuAut8 pjYMa,="UU<`6 8ҳ16t[h{Ǖ7D|ҐrSMQGaRXߋI\z)B ]-T Kq'UK=5iJ+$1vXD(,y1ø3D/|t|N+ X2NT{%-}o]o?6 ju gLP)kqPn܁?o\U11qT⎉R{Z_Rr(;}9WбuVvZbjrLUΊ rG~%og(NX[U:ZSϡ={j!J͔$xôy|# )|Ҙ`~k WLPUS%/ɵ3P.dP8r.&lyderoVgc`@f X}+JX'pW!!z ~)>ܮ}.](?sĩ G'Bjk+!|vkhЯ?ߺGUAq(<,R82 +x l#eSZs~0격>^t 2 5fuA@R tGfk"f*+/NR X[njũdw`4u)w Lj3!܈e4$|:BmV"d"a ѥBK6XrZ㲼?ވ*խ-ش", y$)\OvE iwp+Ô>'}E: tAb e2AI^^mmѩu8fZp|)oljM~ӵYq6.kwK0KLd q8ZFfP*zS&@g)z[~' ^'?fG-D1 ry;&cy.ǐnM^e)·+™}IWCT0~tWGE1j[!vJL!볎ޮ|kXL:trQ-q`27ݞ\ŷ\rUG[ɰwQZ"ĵ#UTZj31©D:Ԁa,Hb КgRݯe'lƖO*/\%잳bXIu PDe[B+E"/ S"|ҬԱlApD`ŔR@#]SȲjݿR{H~hXԣZ\iB { kb<_A'BLM M'9{yru [ !Gj7}][IWslFeu):6nQsU %3f'6hwU7ar{t]V),:U1-ǐx͝Nx׶9ǀ4q.?bIK,2/"is~b[ͿaUYò ܏^| C6^;,z^" W4`nY-3aߒWG$#baLraw.0~[\wc:f9H {*&idJ-JK1fҧRJ2%fh}NF Ӫ|~E;+]Iۢd+e'1m@V#v6cCWoZEȲ}&nth7Cx뾲RIXgqwn k i Z!W{nĤa7;W1?gϩ*$cg(p{U_cyF*ӼVȦ|SBjH)qעH?` 2b-D')zI'=5{k (q;9_r)>nx z 3H-lR$:pO *9a iiWxȂ*k};A 5n8peT qQ9[3jkɉ(p:4ȓ_M̰aM}.@Oz4L f;3 Bpw]vOxVͱUrʹ{N$:nB2)f}OBn,_z4LchhJΚ)i`S+RfgƯ4)OHwo5Tv #Q-4sxl`}^Fb'*"p'Eӏ⼮{*3Zv6~`Ȩ;Lk%$|X-T5ŭOR$([,; [Z<Ƃxנ9 rZ`b;9%LS ZG\汮jXl)m&E" nai{Qٳ!9hLUd_o/%q&ɄOؤhF8>v=|jvCg3ʈʍҮhlۮ }:SWƏݳei7a%*Ov=PE*<Ү"_ԧ\ xM2y2D1G H HrGX=XuK555WS`Tʿc;Y{9aFNGCn[})mceo|2.dr%jFEJ4nߙ͞tc&^'N%P-+b@x~tDқ-.ZDFPr*rտ]5lၙ؛"3 Ū'xpY:UCH`y۲Dc, 5GզLB>V;{Cŗ;SJc;HB=suelp'a]aM4: }q֏0>Y=] vYz )B'ΠXqKM9Ce3R<3u6Tvc Gb(ܩm,4ISрQTs]1Z5 Ck㶲-"yǧkxؓN C9z"9\~n{0Qޥ@vA09s&Pus"PgzjԤ6= z,wZ\dWSڄ@ÙUe4r`muQ;[t1=XDZ["$N|9q3:=}}3hW e<U{`G4+޺*ԡ6 2'jx[۬( \qF*sfuɮ5eną;즦\nin{FN8t!|hACPr[TB(s 8MK|]%bF2 F~K1pIΐ#lIƬ4>U(Y|FzCo>ߢ"_LP^J2 (| D2yQo>RD7h |!%Ǿ4+\Rx+\W<$)m/wd-pzbtD|8#ꕵ}T!ź^G[,d)*@mq@HZbT^\nf|][m8q<xRGx!̌lK 25}qX۵i(LMNDtP n@ QuT](*$~&5imC[V:STqelc\/FWR.YVϞ#%Cl9=zW̦ {h-mF+ e#h: i>L /`ٶBx:љH>&gMkH?B\zh0 J G>wŰصAuMn-OB (\<)HţE1!? X;ϤH qOh#c-nH^]fxяYR|l!SVvJKil؄S)z+m%,`zbD̿Ⲣ[2ޮh*j rV0vrFzO'֑@2+)r  <Ȍ>s벾r7H+*fJ$0!J7ӒIk.pZ 0I;~%FЕ(^d1v)9\P7# ne9#Uzw8qL;(/̌irLi5B<.t)DcP.+h&FJR>Z-SՈ$PU`1۞=+5଎UlCOЭ:=[1}6en;M gM@ӊ>?>UߞX=HͰ>AR6%:BNW@]l4HO__j4?|h Q\rz{=Mye.,i¯p(&}f~/+LE׵ǥ4S/;7T+X [s/8)dkHJ,Rrd2|b=6t_VLwZ|@,LZO}+Xaeol+W-&Q~1ξ`ȹCDTCDftҗ1ԁ76SlIS{?"+:nq-ϛ|ڴSoiLf@ҷ<~큀0#g -J'wY0^%=^ʤ}ˌЈn,JOZ{ &>1wNC@Kq|DGKK ݜ|':sy- T2C|- `Qp)-R!ȋC!(#i8`@7Yt/O_\1eˋ1ODಛ̑7<5[USȗ (N}C!o+ȁ  Q#w57P}a+UdWk8a\=q%?Ǵ\꣚y0v Nwy]Q4ɴm,5O[{墇Gͼ20&ݍpl97($ z-z_@d4h8is2TB A ۦ_VK|>alt_0N^CRڗN?t)-+#? U5*a!ʪd|@ޖKݦ$/R|5H<SB*WLMR?zc17g8.ߟLaE*(fp5)7aprG.<co?M=U#sUl'tG oaώZՆuDrӋ8aqFS/QxFRs4Ca!UQ267Ej+UKiC.sJ7Ϯu=NaF QD`(Qrù.u(?GףXpˋJӊSՇ;N!+- TX5Rso#+ؚm\]}dӰf݉$zLiD+Eae^aqES`[mED#Av¤P'G'+zy.l`'.&*bceR yX6WzhX?~P=e 5j"C*vw(L.)y9t"^ĬfG>ԁYe |l<|_;o7 |IȄ3W繽*G@>÷ؔw?ȎRXLGE6ƪr)?&1tv)o;f>q@P?&Dv>cJwJk&whpKݟe=%Ϧ|լ.W tqR'$iLJ} 4$tfArZC%a!-6Gレ,鈾ӛ A9X3^J/)йi<,GT yyڇz8׎J {BsVG_ڔigڰԡ3z.6" P)~ʵ^;*Y<#sQhޓ/h8a(O@`Sxb nӮ|Y̪ a-dNRV(1=Dj&hiݱ\W!19JwfEM}RߛX7NlFEe&R|4אh4ZH⇜:=qP뉀_@aku<rF*z_ {?JG^y"f" yVT3HkMӱU%Dϋ %JT~]{uD_>tK5-i'էR34q]cX2h V[0\aSRfBE l݆=>yGJ_(vY[V􈍩^ʳѧ jf#d14 '#kUjPq- C6 D苏Z/mǹQZiR@PVK-9v*) lM&9us._9TzhMҢ9Oofp"v!Қ$|5jUiN:fluE[MK@dW9o +_ KBد$*вs>P HG&*aY/hNfr!9KS;{| ,&2,.5RG/0wyo*cyQ-|-f:v-=DfdlrzƉ: JHEU#r|ijj )yC0JPȃzFb._4j50xa8{2o-v? t]}ƂeN:F!Yʮ& 3㽭(`MUڸ%a+o ɻ& E|^C56&}݈̥݊[nN >5wH"B8 zfY/pV:A2|=;F}ʹ謌 F<A#>?óD~ s;Ry,mq.z!<]"*X?FFOD;>H@~s':kYcX1Qj6ϴ+C0NȼlfX7鏚;LJL+dW!,4G>2 3 ib%j5/yd;P^X4O^*\R0ܓ)Aݸ|3 YÖ7+ד8JX䋜 )EX%vgQY]|lIďEUElSDSm#$drzy(TL up:I5jGCM%OjaP~أ2mM,i0-2FD[nIVk"\YzKxОtDIhdȗӐ]:JJtq+cL 'v\PzxuzȢXkHEB(eKcM",bqZo?/++5oQVYʷ}n?oTr`*X2t~ބV7[tS:ï( &c܅~(jaTD֑Q)),(#ahMsWaS7"F%Eă:D#!foAƊ EV.r+(fH Xت@'C oђ ]Ꞑie@ .uΠpj:Axqڒ7/~~"Toe^ОUcj[iS2z"C j/:?Ԉhyo݈IO/dޔwmqƁjLm+\Rs ƷP&&‽WKCPґL .Ȋ'@.ʇl6)7jyo{]GP-#}&Ebz ]RN d;>Cf14,e o=*ZL(k85P9`Mh~.`9 5f2ǵ +RzBZz3*(gk.x}jFcf nG WMR=39 h58PjY.6,J[/l-Rǎ);@N:zv&?o @`uX0dYTytLUi N/ń:vw\踬O.0XIv03aܱv1UMVi"(c'w<Qndĵ̃Rfu@k΁Ɓ4wr~'k }G6y22 B[_FVO|oQT g.ʸi!) =S¬W|n ¹DȪQd %  P(B[B06InL1/r}ڜҎ{-Ո%@(| 5-݈1u =SԐߏD xy5V4(NB7?WoblK[jkZ~L$e PSeЖ3qfyw=ٵ$ ^ jxJ?ձ)*yqᆇkq%R׬UVvC@*))S`e hQf4&50Gmpʁ m51팁b,K% u(DeW3>zŚT$\<q W܎$3?L.ѷ]]w4Xre۶=C|:pAJC n<*Tزq #Z 'u0ňUPDra$[uy{8A qM4kuRrz|\dӲܼg7%,P?k"d+ưY,u,6 TYWрE8 W7IˁF43R|saWɝX#\I~C1.saUnp<|=$Vk0_?X*Rdy=JT` ǙNiwUÄ7bW'^OpBϷ\uuzMRuj3ivdIe8I BHGzIp|a3Q @%d%ڏÝLbSf"Kk-klF6muyk@E|B-?M sSۣfłw}Xn]A٨83J@>wLG@67vuTREz hC\Uǡ L0"rI~)DP銎YÝ+PɕgK1Lq} DWaY:\@"б]1d}܊RZbMVu(n1UG&E^݃"w0.]r =7X*NEɏM)(J4p{Ub luH&#ܿĩ(s-Zj=@ 6gl}Hb?  0糳ZUBobRt,_t$FCqʡCy5 :oAxǾ^/Z6ӦM۽ők;җYy0-W~0}{1g %zdx7yo0ڌ(g5rM唦wl06[?,I aM$Pz' ˝(CP_t i8gl?P}-RtĹ4IRRD6 DDc!Kv%Ꚋ %[+b}Em$!kGM Ft+kٱQUv!Xmӓvf#7eo5"槊jp++ 0P'BzkI"U*T;-9y nuQ 7FQ{g[G܇T}Z>9@^,Ø1zsUJ }-e%\USxԔ Պ"DA@CLئ8b__cɹ6{Jj'ĹPЧOl5xo8`㩌$pPj'xe\EeBwvaa&tRL~`S0J44I<#/"'&ph,E8W>2bh5)IFI0i-Ԛhgė쎗$jfDCi^-H);?AVm,_~fK+\ aNɐ }TS#dжpZ,flVYBMb~(%_cl| u-:Rrbc$GԊ_Q+:t3Mxi?9+?JՖO1~dVl hB/UJl  q8F !eQ⹮Hl1G9Bu.e0抌#ϔ7iMDžG38 ?Z !~ |Nh*k/zP0Bڇ^ofmCc|QFboثii) .fJ8Ղ [3ZLR!tvڋh: #^FZKmR# rZW[эSnbp|58`W#=7+tG|v~J 4J{cՒy-־4$Gxj2U:NG]t12@TލOnK\.xִy_1AGl@(hTka/Z4o6ZP-|x|ySk[G! 5f,@8IV M#}KZeu%.y?{+忺dN<к±ׯFaQFj޺34BEBF+?Ġ'LPw΄xh+f~ROyjމH|0ԙRe4m88)5dQ9-adyt[{)pJuwyN+Ma[ Mٝg-2S. *Z ȉ2u\8ᆸ!Rcׇ)ʉyr}7 /Ch/7zLӒ]wSNVIwJ /5(\% GTq-Ό{ *`G6IWe^C %̱I^$ߐ fg> =J{e HmjOu67ܠ@s3sHt`jj7Vb͓}vͷ@;.MOkk:q+ÚzII1 kͺ)O\+s4Վ>IH^iҌ:b۔M!S+-仗Kt*Xk9Ũ~C>t |fT7Z#ŃyKC/I,,kPۺN!0NwKp>).Lc<1 B;$w&'x݂}܊)mB ^o-;l]A7xUx8}(٧?끇HDJm,%$ 鵯IM!ñ-4s>ǪB꯭߰d L~=w.)Z;&Q&1PF;T'.\krΗ-7 `|%eSwt)![~PCq,?Ugܼܺcj9AumI@d+UZ!cnHs0Yj'UG~H[:3 rD]J/DiM#Eȁ~i6JC?H$9 -MMX~h){_MT#"裣D1򛦫Z1~%wsE-9{&_39!9`#,6QˢvM l"5 SCw*_lXMNY4i/fOKnC1Z=)!]wg0^ssf*57s;H" -4fޚgӌ7YT}H'Ru8deT&m?#iHj8'2Gݬ"-M*?z!}:T|ڑv `[.7 \jI j ÁOn:yb*A)1'P P_ _xnZOK/̢Ն0Մ9sfH!"̥ժi~J.P\毳z8? GU~5^%&]%b}UmΟ}hw&M!uқ$~{N%G*pj 6@;qP+ f8#,6 j7+DG[oLh4%0QdB1+?+`Q!I-; 1 wI y$( r*kAFR֪V7%)vxC5/S'M78[PF:>5b0>nm$CpEsȶʜ(yl;Gu@\6t]ڨ _U|F !v|y&_]8mzAjmQ͑>am4]^:\2SS{D{GD\2'O$znmh~71 PژCbE}cI+o'Y ^")s\YQ+3ϡU7.MxvdP'eOI`rl:ݏg[ $'0[LP\!Jj=k?Nk锲: œE}A5uLj7mz?0rF ww@_ ;}m O9-7(v~}?XOXY.8;!qhӻ`MlA<A䂌sPJqW٘ $U]0Op,@D'_P{eIQ6-i_7KL>3]r=lIwC= i:ن@`4#OC ,̝)r7BՖ>|)Zcd6KDD1-wD@VG9[OhP1s` ukɲ/*?Zӓ{zB)ME?AOS= =JVja4e<ٍYXփpU V;&KDHĶ#OQPG +]ݚ>bg3LXk}bøΨ @zdI\Fa&*ѿԎG OI3),8?_$\.&NYQF^|Fg[>"4˞Y8~Ӻʜ@gqƆihq.1I<⇩Utǃ17r,WKa51HY]_bKo[(>(vp# OC7',p_A|zV+5F֋ @vêIq7e7_2r85l3dIGzrKp0Zl}^R>v&%]ŝav3Dv.U>Eݏ%% SSC%4~ Qm* G^VM]Y31WXN"c0>$;iRv:v e ,PXS$U/Բn?aku+Ss&̐Jy@Պ=(K[3r5S  8Zj&:.~k{rJ,iTV26K6F{p((n\ ʡ͏7dd,C91U2|xnO8BRQ%0I1mhNwi-2[p'ocp/ut.;O9d6Jvqpe^D&oqJ];%1B:ar,wW"h6mExS@%_r2g1d[ݤB 0S8i.F>6gQJ49ˊ&Ub %E yBy0HK>*as4Ec^fmf /  s=oFLQy&>XϜGȪ@ _QՁ3L\glDf۟t/D(jvqֿ=Kʊ ~($FKONL'HBZ.iwyFZ?e#MiK.1g#ZV ǓyЫNws6/^X;=7,O]oVPEh["*'RǨf]z&Yb>OϳLBVxt%%lo9.@rh\EiZZ?xeDD3a Kzf *Uldq:c_q7N|?HĠBi #j\J٥Vi"߻ )Gz xMd6w`W%ie'=$}txGnmImjd+ec$T?liXO oު^2XruH_v[;[(|Uz‡4\9^x.}ǥ4glD^NzZEx݆2o_ tBV4t錽ЂGV+ٕ@$TrV#J'3l- yTDEBY'=r"d9gOݹ3xA{v v9 "wD?ʇ^c&@]h37&1kH]1c7rEfzybyNE<0EP$>cCMoiXL*^t{4@qs-(ݜ׹o6 iU4A>kU_ޠ\T IyN >#0y3 ̗5Wz:\"U>`^Zg$7K 3YZa:fE{Q j@- 1W"Kee1_.(ܻ|䔣;+<2ÍQyx̘tLqI<A YqAz NrfZݫ̄bֈL2G)½f7b(0'F} sA5 2AMB]`ݲ@2 %_ʭ'::M:$ mTEsB\昮s] O{+)[v%g@™-ssbdA$8dN3~! )\{6Y&e)Tآ}JcIw]"wC؆Zzuf-[_б?Ķus!2SM &'i^RP.sNvF,6VM :~UspF"IdliQh\%̂NUXZVqƨlB@W3g:TS~>N%E6qD'A7Q+y{JoX;lc>lJf@FO{l\o4=co`nVF;&-ƙfinB(Sle*<bQoIçzOOl)Djԉ* ZnGG\СBJsH"Q\9~ST&:P_8II$i4)*ӫƤ <&~ğ)Ue$\.֧0ߦ,3GsCm 4v )V)8{y!F{G1ZFpXn]@ G>Em@{%moGe47kf KtGPm!^~efkWt#S8j{!٭ &⸰ycinv@`:G-'i>lf)^7 j)nKS U~|fU9 d`uCXuA| _ QP^K%RbM\OUT΄c`6t\KV5cC^Y ̟ࣩ ӕth!3-laX,I;Ǩ=n[+g5j /Du3.>1 HoO:p;PD;۝u Aji7vm̲Қ_NڵF4=cj a+'D!Ku#yb0mRJ } .x}ݙC{B֚fz^(-kM*ߌ#MUy'r&E3iaHH|0>t %aծQY" 8D˻f0~yG\Koxg1Y7NvGU?Pf2r>oØ`!qbuݷC*xV38t,!+2/ejofT*f}Ư``}8WɊ1pˑ|Lfm낟CLl0Ј}MmUx/A$]kKXGʔz Ai#c7Z%HSMtq3 13W L` u)'jP#'+0lXkQΐEm\G=;6v.3oP%fS<eHnromA3Uް{3Joۜ Ԟ>+'SZ 6WcI$D>*Z"ه ߕYERQuyG wZh[z9+b>ы<:X<Jt$G -^Baa\¹'~3{N}(1fp|oz<2tO̷ZA6'!?-.zdufi5ш⿓ TŹ%7M y"kFW~ƶ ~Lk$Bl=z)Eg%{㛡=ei |6%Af1}kpǝj;uav@k[I^0nGfZ.%7*8D _G }C5 w)邫.u!i9HGHgΝOԌ刃SwcybF3cj!d,뉙x*bG<LjG-ߞːqC>[$5F=`?Bj\X!X&<9>[ u <8Z {;,Pkg3uci]FF(̜ͺM9C.() |%~,8Ԧ?t?T7ϐr=|n[hw`|:}B#1$j\=~hҎPrno8W\xh}B"cB{G|$OX6;s-˾DB&2b,a ;eF hܜ}hK{ UISή2y&E1y3- 18Q؝dSPPCE [_ +]Uۗ!yH'eю # +"T.MFX߻0;-R팢dtp$dHC[lz M-bǏul)ufp^Pt:G|tb}l,"yD,E(?BXȆĿ#8@$= 4sZ$헌ɯX.; ڿ  vLOl[Yu硎$=rG ⡃b3PԸ'<#b:^z_%#é#WC呏#vbӹGXb̮E私*zfΚIüAƎHu-J 2 j7%<ǹ){X~?|2 ^fS^"V";8Z?Za{(2D=Jr;Z#v篹5LZuDZ2y B+);*GCb[N˵e*RȊ;bcwF[gKXnU.F7"o]80z~seIFyL !{db~?#ia麦o1eq.z>AKUHHVb:ٿ6!\q/GD9xn_fnZ}6%#,kT,Ńѡ oi)wj+/n3wn:>LŶ<!% Q7,ZlXi 7GGmckMG&˛2fU7ky-ESίt\W'!q#?mތ P q\))BFm|,?2LTr}6cN/fe ڧ`cЬqK N2h=_njqbw2;v XFd BƻX̤!sӖe럀k WO9dHpaSߍT,T4vWCmS=%<`o#z v_HaL,I_ww#û0b%Hڎ>R M8ĩ@D *Ty,,] YTAMR'@āְ=H ܪq.@S,_'zUؔ)`T bçۼV35z' @FfS𦫛ڒJNi+ mi]?pTQx KŲK nC?t>rB$)+v j d;,I=sanT4Bܞ Ri2ph;KX1fn{A8Oi;M9JCh!nt[6('ϖ*UwatpiɯrA#W(5D;2.F6HX烴{ /lK%atLmTm;c,xhc^C*Y⛨J{ cW]2H<+2n=Mgw'[iT~xfi!C hE39+ӻ.uۺA@߅rlBܼ"ۜM-}x1ހ xεS8 TΧ%hRQ>Y̭0sW:|ɓL͛+4)w|Zj3N+yb=\knby Weo}dڃA/N/7(C>U FQa dTwػCu_ehbx >|H*(ޫ0rwlR"\_Ai ީBX@A:j÷0S jwnC_cLoN7+ zI6$Eq@q l\6h;'K:;YCķn.&N=9 c R?Tb/f?9UTEO$(j7xW_diZL~ݮWLJ[Ɓ/-- [yA4pw /m0\Ub}TH Iu>w;NE6BhwpaiJ"lnT`r/\&Z/"51.10F Ch"}:<8cJTm ;.{dxP|rKΟ}fg0JI Ruhڢ{P?"(oʅYȬ`@Z}韋ܶ#=t8xxMGGEV,}FC4|] ^AKb w[޾'\-' /HS2);kS]*fi^x"%KC3idؕ. K$ wP?!2<Я$5bz!lB_ [r o%@P8D]M4Ch%Cv:iCE@!$2c" Ёr6ڂoȃIVK‰ػ^N!P n_SmsVc4'<4Uמi_=64xI#vۡONfh@aRHѽZV[ᲢO;RQgá:| yw6~Xy܅mo$\I)0;-Ylhބo+~Kͫ BsCΡ0E"l,v`EA[AI?'1s@dV` Cf$fTP#.Ag>>y^ب!u9c &׆ޏd[8۝A*BjM?H5 lhmjWD4tFs7bP^ƒo k}~ud]R53xvʒIՊCNc[ SLN,7ȧFTAq>( .5W jEB'C[M$#RO [8B6c&$J3V ;$H"-Tg"FqX' s6dd!·jŹ-.Ƽmّ]a%Ua5"iֺWf&Xq9rY3oTƨW _8@}6u{tVU͗ i8)W|]Sl0K*kvIhlu23QN7n#&uTxgK @ K:*~ۑVg.SjA>'Sͣ$ , d5!,4M։t>+'}T}VLKz0#\ ]*,U?σZ5slf`?{²O(Pov+( 5߉KuEqxik^Ĵ(߶ uFո(A W_79Y0'E2 z̥Γ**N!{9#=.ѻt& T^ ԁ &MJD Z$Y莁ò`92Wv-jT&OL>)W2>HFu/^ū|09vn1)pVX"E)@~>QW5$ԨZS{ ?N}|b.̿L3@|6dճŽ.[țCKLLaJ S%mkL/'0F,K8 %:X=4(Şɻn=CmTgak2v+έ7VEFyPM\ ]T_iExp^;`T+u[kSxĹDg¤gEC1H2^Hs{2M 9:Ocꇚen+v0ggۻӌU.g`B@FJ뢪#-z,LuF.V^ ܙ)r'a!XLiXYMiWdY oWM>/ ǏU),}laFzw(SF~hù ?\WNȏ@(4r5͍sqsxΉ;KLoacNδ&6<@>en_ȦOlP_}?љJ50J%CljrxzI)*jǖoN G#Wz(  njz^Tps K#-e1|f|EUvZYNU@}/L82Gkf‹WƸ/rNfyB <PrC[$O0:{9]H8g C@5(JyV=rCPI cʱM`zM $Ѭy@pdp1A(جBRLֽa/tjJo_M<;XfKWKwxyiڨsb{K{v`Ʋ٨ڔ7Ȋmȸ.,4YENUrdEm }p ]+󖦪:GM;H(ԛkE wbtg=xLGlgY Hr";DCuc}' DnẦQq0m(K*SE%Z(p#"[G726tTB@ &I2I>l1 b Mc|.Lo$ :+gF۠~Gd3\cĂ1dkA\zc y`4nM`tϻWe}>R٫\FŕGp"p),"lXop%gV2jfTv 3; ~^d֐@-W}ʝ)_J2%A@>@Ǫ^8K V1)m Q-ǯrȌH1CzVܦh嫇/X*k- u=])'1t3^D1$v}%F\) x!>?y7@t>hxދQf]!MgnJÏMb'+`!¾1=o-ɋB*^iOh#E傽C҂HKƀr 8?}Fͯg7kjvpʤ$҄it5|CҼBVg۬0{0u gD69'@303Zhf0- Ac:TTOVCoj z*Q]/X)-n/.{\8w3}#~Hem> 9T-N\;*GO.Ե Uhb9o>jfH&Olo+ s~SHl̠*)ãJU䮙W 4rlJJ:|g+/"N؏h9Siˤx9f'.*v{LK&h""/Wb+pdtCؕlV*FΪgr&ZW\9u!&[V#DBb.'@>W>t0`X s>^=(̞TQ#T٩6|S__6ѤSU}`fu_y4y/z)ņ1g'|YMOCFHA[LK$ U%\ہP9ARtKa{4vg$-7m~z$1ʪ@O5oI5D[x~ ~ ދJ!N/bj,z S=U2E#3ǑûS.]6,&PK65s`u/t!]IsG1~ F- |Ex?Mǡe0 uk硹cc?! jU>טԡKHE0[1V[40ӫ` f93f.{p5o_$!wQ`0?!t=̝Kh(a@Wld@߁e(g"sGEi얻myȅSe֜JQv/g.T#ʳnmF)Ҁ*Z˳FLY`'+LSFfl[D8Q/VQ@H &u˶06LG48LOZ`?)o"Ck= ji;j[懛TnUuY\x=#ǐ]xr75CwdQ1vdznTԁb"g@21TޞQU>!m2m::JG/f,$6͚*Ֆ HJ[P`S\'LMSbQ|L.p3&6M?ɨ>b<:`35:ʰhm8}PbqDJڂI2-ji@!5:N0,).:3!O.{`aƩ_G$TxHl>-7~i6 8xt|=mj{fB~ŧo&{K-;o{9\>BZ,:Y՚S+`'q=qPCP͸\5yRQffRW?6Vx &2}FmY{g pyqM?3g 7kҼ,Sf3Szsa]U&دyk !M~9 Ͱm,g.c͐~L \8}< gy6{6F̸&sgm`E'rV,XkR K%mm(#Qt^q1lvS+'57`_#vU(}p.,?’i)tn,k,4;c"He~]=x`l'%MNR,vh̪m+- Zf_WneCYDl'-Ė kՑ%#' C~06wT F2^x9bڲ [qfiMiG??5ڨx}|ly'"Q'Ux0Ue2d rɌE UĦgjHmW0-6+iͼ_=aLt^r C[ Jخ64 ;)Slf8^AUE GvN pP Vv|@+0 LAQ)!Ʌ_ֹD~T{R |!zE[{e0׮ZI?U'^ 66u!̕342IxsC|_E$GӠRONUU+f،4L0 u"~y|,|-93 ~ 'N \Ԋ"'on|#([b'r?S8}Klv!A@oj/QFF{{5&3L{%Ot1&^9Y&lQ-7=ҷXR őEI'-oVIJDc?Yi5%pt$:LF׽c37 | `ҸG"CWEJF"sؑH(UUݪEl7h•;:Dz+-Mݹq 8ǃǸy7@*;`jOTw.3]k,+EG+ ۫7>_RF9Պ t|7).#dfꬥ:g_O\n_ [R6ɘY\j'sĭ420Hr&H ȬY>yUNW[%=?0])&sNPþES֬R˹0·R\:w_nGE}TeJ`,UCnq#;D". V|ygA'mV$]ɉ ji`֥gA8h**Ǵ}~U= *mT$Z0Ĉ- w?pmh<$b[I eLLyh4N2N:H&dD ӥׁz)W"F#_2ú /J$ IɺH^S^l . * nV6*Ӥ)o(Qo}X1sXSڊ7[WVfłdy*E饻q_c%8rRH}Btvpe4i\V-=jr."J%rYJAeSS<$d95d/放e_Hu·wf#Ȟz5HzdL!-v>ȗ,Duq +7=o@M{4"&ۭeh[ͫUљgUφc_S̼kN؄qQC+eHp!7gq|bosiё A/'Ò5i{a˚wXY:rNbiƜ?4@5WP?g fIѝd6 {( ΢l8[!P0~fЀ;6ǗʷEbÔ2ao`QdVΩaf.6Z<2EzEX Ħέ=aېOɡkhkSj~h-])A[$ٳG9YNnfa xp.=Ͽqy6Se;yG0JFMEm"K {s|4+t$E} dKh1|wX=yʄ-n_Tnr!J5\^70!HqDD+c^Whǻ7B*r(tw >,;+c<KR:n5Pd>UtB;/$`cF2I5xuσ\yo͹dφRuȘsT'_N"cJba5+T42V"s''eP +K SXR*\\5䷳zj=X/Q x Ŷ\Y!bs*xLxݭSCnġ,9I>mm{- }){eٙ%uw?1a[eXWg'+d3Q ]=/V}pb1Cx(t,Qin卭4W]N`V+1+_6KcM=\v"T:caNH.z}wKX] WAdؔ[?B[^ k}@3n 6%,-8r um-\?)n[fJse8/4)#gAmx`~(wFSvWP1C<}Ah6vIf|!䑘 ՑR<5,9v xJ S1x2aW`ڼvL{nψT BMn7g.A$v؀;4 -ygs ]N4SqS9^@B:J֌_ZNj4}>B BnI\bfmtA[ _kõmaX>yb.Kx\2c&C3Gļ쨛} {1|IqJ Cpz@-ΓxVq?#EB"5~g2]ԣPx߯~(?]nR~8e%ld?aCzӊ6}ɯ?X rXb`q`%WP:s?wGDFskת/0,F^Yd4s#u_}AHQ)|")=݄"役Xb+ 1)]DN&`$H YD?翃!b m'Q6ͣru@ Κq1} hiBg%euS8NvºRݱk/bm¾; ;!y=a"FGVngYgM-֞QZGp79k`$k\pE߷x @ZiҔȾ gb nGs'@=9ȾM0`*/N '$V WgV~2ܕq!5`wJ`2uU<1]-@wpng{XŁHD;n~?.>b_U}0g3l‰2I':U!pj\fO$By18l60ٿK$SxL/ٽh8SLr{rNg]UNd$w}kk@p/}jeE5͞\; ؇l"͊~p=I9|kRf Yl_k[п^!VvoCޒ(Y`s=4qO(Bf WhhK:* 倁O:e)UXa h_ϞDkh:딃݅xBY^hM$idx%M1x2.*IxLS͜EP4/Gb1X6 81qOopm_GF9u&2%%:܆ĭk@ňn}ĞB0X^mW4J!W١YgbյprQ~b}nvXuk7B{? :kK[/NMT?S S&P\rdbfN-;5҇:a$ȟl{Ա^D|_#+)AoJb}j~;5ֽjm`0;/!bn3N J;,#:[XL@<'䧘;A$rTLԀY| v%¾~3`żl-Nher  2yO8iܒ=[/u7S Ӽy%2QMܶt4* *oI\Y  ҁd(ү0rL&8.L&=l EMa?FOt(HW. n>/`{}/JnL9xn1`sx{p\D o˘m6~bgsU9]FS򸻨0 r݃l*g@NJi`p'/Ԍ(iGᙊ*3Ty!.s7581F`,TA:ç;C,Mzx'c= p}(ny3!ADJՙIE^7D)0GեU`YFG!|ig%(XCfh`7S!l@j-QfK)`fTk-.U4挠~Ndc@}ί:f}xi59 hAZ9~IY J?p CȖWT@kW%J nŃԟi>2Wjow"o,}qi鲹"4ʳG$ CyYmV4)aleEanlSȿ_VΗ&چc4c9ӇxX.^E VzZN.^yɘ+\LP\=2@f>fF/FT/;WyEkoxğFʜ nb g8k 4릲!RhfpxCXI6Obt*[vUloh[ӨZY8(u,`Y˺BY.z+,IKڄi:T6mR XFxTGv~29sqW `am!I=i)7Wr1mt Z[iK tէWӗ֨wڶm 7 R+F똿mV3.P'";-s閧tt<:X[M Ovmlۓ瑼u|*X⹢ll1|{cb3>;*#_7[-a 's֝nzg-}Ce4X@止j!妈|&qdΓq>RT% IH](93vB҅xLvΙ^q*I;02hd S6 r >.rQHE戏/A~ݗQ걪$[ji&;rGDFpjig@]C$q>[ŭ ʾ!كr?6G"sizX )/9h?$b.[0GH9b޽P%6fܑz}QBA1S"2`^gq74OiU ,B7ߦs{c@JjF'8L:'~Cp✅yC[6GT>$³C t )zVkw+~Le)}?^WnqȢB$gou;R\@kԼ0į)sSț[Qł2]5)0[Ɇ/&"oRE3np+$l|`G&`p\>'A١ͽ3۵>%2xU̽á6Ls|SM3IO DG;cz*l?a/,TJ>ҡ]ޡej={)5StzU 9448i)?7(L Tp0قLRN-8Cc2կHIC. ݑllbbQz E(@tKD5 k)3m<l3:!@2VCc=2 zgOe߫ի@Ö6mե~QLj) 9ok{RcHtHUfh1-uiUhܕ]~%nV!$nq>$R2â娱ĿU È7%^]&Pƚ9ʀR~؏o[uC\/V`]ztTqHcc)yq 7_tP!) JȈYC<}~ ܽ# xvN<"Je2ɷ=do Y3\B1hV>=@ʈ"m|%P k=#+^4)=^ \DԶª %\8B1INhcxP9$=g<QKo6X\/Jtg g$!lDQؑ?wgAv]CS}I{KV8~}2Tڈl2M0'h7m[F2Un+.u /tdXĤ"$`VlawT$jR%6l"FwDEQ(&/b웤Ua\6"JE8wƘ60"bhV\ rrOʹk:,vr4ۯLJS:ĀӏB< >[k9W=\E_p ]%ki/ &g1 ]XO3Q7zqGn,c]dׂ.h=2xs+ /{Fvx9!GYLPPzYrDk@Z?Mmig$E[ۓ>P9 CKgɿU7Li@ea ݬߢ>Jʀ"\X ;kXt'Z %~iF2z']|"'ԙ61^A@ܵ"bhKu/efҕ[HAđSaെ+Xֆay@N)oyGCQێ }ak][g̏V$05tc# pp4oTIa2 3Y @lC_k/(4QYc> qۥk{HI2uGpk.{?{▴k\d(gCɳv 8aєЙ-ӟad?Ux<^z@#y8[X2N0  ভ[&"&sW{N~y@)il>V^$ M ڐeQrsyiŻ?b>֖xW ko$-?{c8._9~e;LhbP.{iд96Uљ 5wy0ݭ8,5"|}YnHD]$Z+-x}.acp!ZT%SVfQoB"m*s 0ڈF; T*/(@n~-{IϯN R4DZ٥s48lru2k,\_تp38q:RKd&Z7Q=zx(Ȑ{r /0^iT]3->˹P7`P=zpZ5<5{A7qזe.qR sJ-JXRLj-.Ob}OL SZXvJ5xE9|xll]!@NwRe37}%_ۄ$m;|+sOeʀQN|ݞB QIېJAb5)Tm1^('QGgjX0BGl޳!xzvAئ׬ O5(SW:ڜ:~\tٹ~ֻeY&CXuɰXyl辿Ec"giXBXiQ0< J*㸟""!zvW^)0gTԯۂ{Ȧ*)=7<۠Yyg.&_爀m(3sn$UDe9ӯF&BKsZ3bԏr3}FEPNmG?_MV1Rie-0ːjFVT(7PNDg-e;a˝E4/GM}p㜨lpx|C#Ϻ 7P!5l W[{Id2Ap( i?S)WiHo"C3azgqiYs+W`-ܜ!ݜ$s^+7FP}QbCxQD[7WYX_ցPKڂOedSNT?nubQ0Uax0y ^`;C_ _nM@Kz>%']mC:typ%Ͱ{;lgS >9Ů 0)OzaQ`et51LE-QiaSw'^xt^2`~A.^^iH hϊ%I)-o X|'tǾ-pFgtQ@ȧMA~@S8ƌGբi Z%KXO1=B6{Lpl 5`@D9 df%8M173!8c+ EM8.s@[n͹ P)7-+=ǂ +CW<"DZ]]k8?Z7.ps+Q7$Ë&9Y~]<+j@ 9&# >~ɿ}C+@|O7#e=74k5%oO)~K/*x~qi$r58]ш,Q6ڋAf,J&* |)7M,XE:kz+(Ё~y( MFO&{`$5wHF!Ow?VFl8~Mh1۰(= )}' Všg@CO79g們&lK/8CA4t|7ZwيH E >D&=lM8ɕ?V͉ןZb̍eWYȫU^59-JHVY//SW h]bLMxFeiށ;jC>-dwDU'4X[Pd 9]5i4cr2Ʈ}+8 c6|NQѳZw,(1Q>aAK^5 ;O+t4&uU9I]xM[z{^g>**NŌ\~kcˋnCpG$(}5WSGDr;lrVoǢKDHBVkcEue~ &wLߕcu1Қ/0QH<Κ8+TW #ֿ֤C`RVX F4`Pj̮%^# )]kкOȺ 48jyL .S)=.xfE fxӠmg; saRLo7Z|(SxhuS'$_[;$[),J+O ß%X{٩cCX{t+v@e/֠~L ]x^€ۘ:<K6Tv01UmAj+|TOu[8ƿUV,G%Wydb#wޖm;]IRD܌%jD\H:^N4WK*|G'y.yS0܌(7h1g*Pyߒ`iќaZ+CbmaHay:2+D>*=/ ) if`6Tϟ-u Fu͙ŀj aX 2DW9D56ٺ,%Vs,y&VhZoRle2z8ut:e?E%?76+x0l3^ CdžUiyU{K\WbĺEee%P-uvF[l^eNA#Zô%5#NP,}\g|J'@h ż 2ƥ5D+8[mwt~Y>H=Wm $%*XYEсIïC$3b+BٸBLH h6Л b;%OiCr'Np ˚[Z]+*3x/Oԗ* G"<Pf3!Oo"y^3dp @SXQQai00>Yt质\~!QEwPT?v]ZS{M-GJ cط7N<P=8$m'"RhN zcL %hPfmi?31H5(y<3Ӌ~-% .@rJ a`{Om4gF=#)NH&"{@7`y~OAEB'#}\/eCwkL\$M(Пit>ƢՒ)pRu1UC1uI˜*?]/E_Ѡ?X&?^iFo H[ 3&`F0 D}\vpl2Mڗ;LR9!{yHr\ IJ Vd?t@WYjQ ޝQ 85W%xo){w.hmx.b$櫨eT?" Qd|nEwaAjlRz4A gliHdOd͗'s~ ݡ*-P[[JbvZ<+xT꠽$pr g@]xfb%5G@ӴGA8 IcMO5@ƒ/hM\We`ZY`!l.W=LQU9g2'SMH)HHv_*RhJPF< 0M06|@9ٶy6 f/ ~p`Qh*$WNl 5vM{j(~6NJ]6wXUf2יR07U!hI xN[mǾ[]Mk*T}c$n _ӸÚq}I%.EuSv\T1r ţ'_9疟'6Wώ`}hyJ骵Hc 1>=²WT]^uؾ͠?.jgkeK鬆!Y[+yx{fD>D[^h1([om6گoϫ7&q|&R煊t1)5i2Ob-ouxtf8_}.v(mOE"FC>ݍ/12AĤ.Ikw2LjkB fIN7ֻ@Id(꼃Suc}8GU+@C,-,Pa:l"nA@+, kz&D㴣X9>+&=~)j. ^.׎]ȖGM$MW 6)_aTV4?s{uJJ;S5&cǗg}\ Y([^[z?oJeԽo{TE%w~ 6k5LGvg0_@Rt1Q#h_[;p9Aޛt{?dv]b {?ݚ"OS0C lesT˜]rp $|Š+*v7̍[(ElMgsN_a!,5/iuJ$% ] 9Q@P5q<[s.oe1YxJ:˄kלvlPrBÙ8i`$tjoFÕE`-,Zg<uGy#.6v yȦgT) om6t핯l>SjjGTg)WN} [<"03 LQ_16i6oKW@booOs|hBa:ϤvᵉY,::ON_7NY/.˟'4.Vͽ?k,z/Pkdn`Bf~Qsz٥wwHY ͑1fԠ*c?p KzU=]Ѩ6FdBJ~6{&;BEfvQ@դ&9-8{i|Z[ͩCL p29-kquSq̢#  BfZ*daٽ q 0]$~B]jJ$n)~ -!9m; +'gHp냌4q\o}2>vž5Rre?$Aeom$Ad=6uOf^úB+SJ^m0J**DQƙr+/Fוp]QU{t1q{&N\Fg:B(XkQ=ciro3c|c Zn7:)@X3EazlEk9 Dt5a < mK:tIƉm؏Ym0=BQ.鑯QH39gr7Ʈ^ʽg]p MOq9dq|5鬛O f~/\{gxyGEaHt;m?Usk8gM d cښFA)MW r QB'-j7-T=%1XP ֗a'τPrtA"D|'w>럛!w|=ʑuz*茩l+־\y?g&jlqwN>S.`6g[  c ^)tSF #?1r .ބ 2Mf2 /4QR];8U Zvqve41SVD#|ZjhLi*_M5Y]a+>UJrX㔥ū= iɭŏ<M?Eh[ wdOBfc[W) (𳠇7t+y ӞϚk@cDq@h{;UmAw+8rqG1g8tOrz r $>|<u7Cscs9_G 89(D =w %QnC[k@OP?repxwm,:- fbRt6iyk5P1q|Kޕe3KI $eƎzpV)GIuЗO7am+Qz-D@_Vci5q2SZEa KzFaJ?9VO`Tr6"*CԽk9}1*eC\A*qLpN0 [bYY3ee6}8ciVnlr@a\NlgQT,E GWc< ]7=a0 wY\^ħ)1)pRW\TJw=&ۦ*Ք] VBTUdڷIgF?s)0wyld!y8Yh} ty^@e15cV\~'Tyo~CPGx2LӉ<}bsV%fsczTžryZп=+UCa;huSѕb+}}=hNw*6wsJc}Ct[H8?:)!f~Ʌ$hKre% ?nͼX4.8kH\b\o" ^ L} ( ׯ UfHY.z)9o [+qo lbDj̳MUC /v)U }ӳN4I(UKxDrTwJ/@֗zpx2Dtry7z?%!vXLv7cU;,g54uhPFRE6(dTzl)gGp6ϯxKG`]KhV X>ôqp[TyơO黃("$cVbCESGW]ٝTr]=0(fojY>YSIIgR1^4nf)B1_@kѝ(NTy  ntRC_KtIRrߖ{m)䵭  $eQorM<|;6_5u$l Gk܌r}In类`GFd <8ov|ixd F#A9p97zcWx$$@Mw=io!WT6˻` ӫnrT ,".{ԥEoP)\O*4#g^_1>z#ᢑP'B)H/_CZi;& Y@M5 o!4F,v8NiʠSkpngȮ,X |T',@xHQ$*IHh|xe& J'B@f Tn\,t~b@^avlsqȄ% qY,+a\PB& yqV+rQ; @jnR,}@2w.d^|P5_`2ݦl?VQەc(-FP9m}ᬣ=g"znh1uf}- ] ;Tm0D^@w >ÜN0RғD\+fM՞ G`ɬGL 8>&^5# +.Siv=Y ;R9j|}zU`~SmVm54@ L.hUA= <0Xςd[nR;*2xU6BPI( 5ʚDq  2ų}yO|l1ʸQ bCvޥbh{FV[^Ț:,7aΔcٞ0b+ce nѤ5D.x"ḭ^ev(~$^6Ɵ=!JẔ|Vӂ .ILbuf㎗ hLt+ԯ29B\mb_'V~"KT͚ .,!gޣ?Ҁ~)=y` Ds/ȣ1- P_2\2K?)^I">1]"dІ{=o VX)vAb!/ugjpRh cb@I#T`ցCKiS^NRsl2XBh'}k=Gov#8闞C\*,ݸ=f ZGϻ@mt;sL-$khvzB1FFioֈe4јe6a|΃'VC\2p3>~?DK2rh,2y{oMaEq1D9X"j!v lbmn:^涏F/t͗ٙ@TGXRjkN/ mmԭJx#`<+ .\y˵*ķI1{dDCjqS6~qxc C9؂6Z|`{?+V&X`?&W1>̌Hy<ԉFJvIů.i [xxU1hDYGOG"݆FBᚰ{zi?I!k$hXwuryXpJbLeG^\nBB+ 4?Hӎ?.#fronAeWG9/m D%EΚEd=x4yE;11M'M;I_y@XWyze֎J>u8_xLޥAvBD+ `xE> ɪYRW+EeFxz@c5dK}skkQ,%4w%?c/*2@hT8zGhwbǼrWi|^qA%A'U8[D2 !c_J#ࡥT{ bfә^4Ohi>7o^pש"=9@G‹ yť&ݓa׊/+:ĉd_G rvTbӵG-uMIZ2 rvׄ!Xa!n64|5uhWGpt{A|mϴa̼FUg[L@/ﯤ-T1f#\-Ec⊴'Jj}R/*4%fӅdhzXs cStIn Ϣ}åLW7!)*o`&k_Z4&ߌ }RwŹ!ZZOg9(w۔#9{VqGV%skdo}gUgUAk^(فC ă0A ͐t˝m6a}NߟX"#Y_*<Κ }k(ܯTy dg @ڶ܅m@-/0o 9}\{AIsK52+9O- bk!R7  7."ZַĂ\̍Q0DoeL|,JCڷ[0Z &բݓmm7ӿ1eĂ m-f@ŇS;V" f6#-ZsyH؈p 2);ve 2~jHW}ݟчI0H̻nh0!DqF ^(EScg $LTp^/n|Hkg"4f}"(РM|O= ~] z%`ҋ9b0#QElqJ:L!(sλҲ>u+,}Qw4q#Ͷ 8V =^ >%I ԨW%h i TyM>g`s K:; |LHeA,wUW;Ɖ*]nrJ1f͞[;=Ud c5 $n^kz'XP(*KcK'G$sύ$둔C-,Z!g8+,ERt$$%I9!U-[bVŀ2OP/07mX==/]=őަ՟;22 h)2Ea J)[6o,K ˨ihLC<_{c7nu]Ôf(X4= 4tSn w]5Iiu-'nh\RRL;92#UקJ<~J,( -K*Wg%I*XJ^eO}ahf Uϔ՜RׅUUQ.^ Dn,7f5t1m kXW'q@2B?(,-ɛt"2TIp|6w-Ʊ9enf1Mid'ᬖ," Cx@B-+E#=v{kćZrWCXڔ|i5μ|ƌ.ӝT-cm8ܩVOGVv)^T=X~=0iLzaȅ-8\R{F7Jl"{lܬ=|841Pj/o-ۊ;f~oyg.~i:BsH@컯#Wh]!g?*$qZ ~E84M1/E90gotAV@U-͔$[r[Y̻$ɢ@G鸅&2?\E~ AilL88o[*R@L:]2{92#AA's֨B-V ݕc+LQ^)|7YPKQ[|QU+NMo!qi?DLp:0ѬcIbJ0*&@ԹiG[5(_tl 泃%?GD81SR%3!.sn-CJi5%U}&$˶3%9{V+@գB^'/:BDpwM|,Bn/;fڣo(~(+쬳q\@DBUˎ2rW;"0,] ?C&eYTz~A"9!xƲ_6<}cr@%kO֩iHp?$=J;ěrFf)7Exfyf^)N*{ZȿFN[AUً,)I4+T0.e5 *޹R%BNo>tܦJȵV 撢+nbcdVwG=f0Nfq_Ƌ=K_a?K$b,r zmycNdN+yc4@gK-ī/pv=qsNb0x&td4Jԭ "}!P+,b1Mjs3={QD-%R*-iTaJ),B޿ޏ*.iDN]h.h&<^0$e2wLc~ mK/AC7he%ϧ/|!seRj8(9ӼJ-^E`_1_4) s FO®.8f 4*߄q{4s 󘍉i/kJ)O|h[ab}E"i-IU^ 9] @ל#r~$St@D3\)hb"{2$f$4l@ }32;&rlpV}I⭨9(Í,3.t0BHuAx6㎋6{q]өo,TΔDM_߈%#f-aFp D' soC״ɿY %T"âL3?-*.oV₁P0.vĊ Fr Hh>p9v f)7*rt '[/eTr Z]-I[QLaHX%7 hOIa˂{ɝo|ؓ՚>1DPI/8ixœXSE5y.شuȰiP>q1m yd4x ~$+̘Ci09-լ 3x. Hx )NZ1w[ALNt`Ǫ= ,P-̓6J1Y83Q먃POΩ Eb5H8@ ^ De?ә&՜|l{yKtWЀe[{ǢDddt;)` #͙N<;Kl-BoLMMFN[U.MPŴϨ"% -J7rd:IctMh ֠jkPʰ\㖽0oZڜbUN:i!;3,}dž+O-qeqZlX5=B-i|F`D|`@bG<`aq$']@iOnpw'ow[ x[DVis*RcZ,!AƯopҘ'}"K>͘F=bg~#X$5s5q){l"^Fl ;"mzvjc26?'; *HW)v/APez,2f1 ~ߍ2>3Vc.p4Ph,%r.q\n)鉝R{u*P;r=c`bE13eJOIq1F*bHTDkL" (Nϴ 1GnYT~Z XA +xp O9lICgXN0qqGx{q;4!`p)}JTޘK5eK⨘=Z_|7] ω> Tgf^f0T2KǦ.1n=0G:JPZ=ޜѽk)1FZxBW7 MH'@DdCߒV6ݏĊ } [霑u.?dbG&~~F3խixvnE:dlBM\GήII{`)40Wiӏ8T' ҥtRW*RI*#,3e؏X͢ee}6yJdx-Ge $CE%Seh~xw`Vڎ(%Ú}S*{԰5/6rHXv!/qVC'R[w7=r拔C٠laKy$=HH_6}o Ŷt`™2^h7%uʫѶu!+E}@lPb1 a2 ;k41X(My0z=c<!*[L Gv ?s/?ֻ5b q!KgCC:}L1M}!3ned2?q?q%*`@(\i }W;x=HOeҶ{ ,<'o](rdۏn%k%uNH2OS.. mN}FW.~U)YÞ10 q(G*GIhUSU5?QP$=Q5uF|OOm7S0jޗ߂'d[1 j?_,':/m}|/PHVāx0`nMqiV\ˤϩCTCЯыv~=VXytuj>Ұq9N)$G'<]+Z0c9E9⨋@)+$|Ɛ)Zȱ3#WYOam+r}b S9Qr3Ph7HBe *2p+7c*,hO qY|w:-͕E*j}b#DRi[ej}OHP =7ITpk< 2KTS_,Bb4c }X^} $TQazlH|ndH@z1^Fr[G*dO-n wVv$ݬJ1&ԅrO{Щ?"#]&s;+R /3kSCn=۝P 8>~շ` &Ӛ~n4[FS.TD-I_GJж|.݁OJ$yM1t{lW`=EF!'~)\&!-[ڦSVsR/% A$D.+P5m9DQF7dW+P5_g sTs@\ )ka]x!:M-">S`?i@7%mJLd iy2kIr35^#\Ec{DW,I.J="eh,8qvLdJ V!޶Y^U^T\l=r:pr:T56۳浨F{7 l WGpu%kCFpn @=;,5함H C,i ;r%W~TS8[oqP#ؾkK f8l\xɲN:4#߅*]0Y!ua _MY nH:wWVkycw7L41w9q# !2 ~FUkwȜ7Jnc\M&6ܵ988`~r<Sмf}Dsn}n/qe}@\+K,oyٜR8ր?ljtw~쇈p:z'J~IlRw N P姡#ABH%FCHJ cd~!2a*'TXwijeqqafisk KU$hЕ~kʻB!yPϴ\ gRQv^.W'0c:[z@@13Y$d_'oTM ]=}ezލx7Tѵ:#:ޥǕQL\M嬗:op=vE^,wIn朵rd[ 2= OyGETE$͎4M]o#Lp>!s"{P6F3~)uۣ}iJqn ?aV[3d;{Tz+aH 3R])7bf7# Dcnj J-\-+P* Ý ID_'~1m OkdL^32 @h_ 䦺wp8(`1qˬ[qڈ4HlY`>tI+3>v *jq〗{ցBq:Y8UK8> I/t)F9 "Zj=&ͷhpD2#zAY%*̕9hܨ,ΐBjm!MQ$bbZ f0f&3ݿ~SCb+ަr=B22cu(5[63 DICb0靯^Qx>E9A_7@xhayƝO^aK\ꍨ#^Qd30X_eiZ5F& 葿}J pGC** fF?vՎ:gaD$jWВljX!+WF g/V^~}=*ER;W)s#$ZFa,vH C? wl~Q.+b8nDpfԍ릇8W`%2 WCv0r11=je.ܭ_4䲠€F]#Njf4`= %MN⎁RώIRq-ք,j9.I 5w`CE"Isr|1H[`0^P}SH0A9ĥƇъxy(ç~7Ia"9$tjSVA,ʦkzo_9H"Z&QpWW6^櫃CSn@_fmĴm}(T V;B:rӲ33 lpvdh\ϒn0K<|ݙQdX4ȋN6 B.gWw'թ[Ss|au#C3NGsb*&EuȞ8{_GD0lndL#r? 3(ubHJ`HRkklK1#.E!r*48udFs:ҞoEH)>i99LO=#}In?,9sy7A@9][Ij8x{#1HY,5ne,"/nPͥ~%^+Z&Ȍ/h%JN*4B[ҽ< n|9P (pN$C:a<|Z֘ aV /@=IzoB{[`CqZ3Y ȯ.Ҧ$2_(V^%I!a9t.~e`¤?+#)2lL%l M΢2^1VDftc, Rd|}ܷL^ړS$x{%f,JR7i{YV Xcu~) OujHgb2--GN :=CJxb&E e?faф<eF% r:Vֶ76Tjlv|)W=cۻ\T6Y N5% Ev}=?vU+/."+ E/d"Q9c} `8 Gz(]9}z]m].@y}\ϘĢv@{Qܥf ==<^[ؿd03`vD$NQO@APĄIމԛi9josc;kiX#+,Ro_;TNBovRӯ\胦td㟴 Оxb:eqœ$P`ҝWEk"8dm|ү,rk)F;'2ŌwdpR'4L(X[)۩ºG22(Cƌoe %uDyOKV Lm'7KJ0pXbl诟š} fr b+) Rju}|^Tt< P3擠jQ'lKg0îI¶|bm! ܗᑶhtHtVϼZɫ3U%FUvœpV)drdrJL*wG\9ȷ(q %G\R`^[ϟAWG^>]]17XT`P/t΀֘+-PTxUfkz{4c+3)!ͽ_Hv(] &~Ơ|lChޥIdϳB`؄Gfx8^,pTҖ\)8z~" -IS=\w E,FK 0a8w4yd,3_j)Z0 'kTبZ|q,:un .MRF1G/#j[(~5 //]ǵ ZkL*3UDhǠG9ؾ2hD|7 >W% Yٮ.Zp#p| SS- +ɧ'3]ӓiu#,%\˓_ސ''+,ڧW-S՚Yt3c:p6|d4xȢ1д؅%az/{ӯ_.܇Vy.ing,J; #i'EK*A tyζ3$3͖#%w|qǏ޾(gUi#"<0 /t^ #cfgkFf20aoq2 ϮڠںrM:Vn` S; G6O3$=ׯӵl{5 O>0KJ!X>`^ShC zZ=.K{ʏ0+i:cjr}H#9j':Syf}kkX 25Dֿ~fAMHѨ`@8 :~A7YqE=ҹ 6NW2HI)ѾtTWm6OEab@GK4v8o$(ɑ%e.U,wv` E&qlPW˗ՅbLgxx)pvӽFʪ-#ޅ!fæx9تE 0򨖰3x!|cL)%*$9'(ZyG8A$cW3[l`a&v4>&/xZ{𼩍Vv` Pbl/Б+3|Yf veW6;\33~m@OkT14B+0W şdk%2\A@Pv)j:֦~5jl *mt2h_l=C4`7i{*LGf'Ε]gRpTzr[S&ί`7r=ujPѮo *@aGHǠgO~&%vy #$2*4lεh_8e ba2-JyS^※'= 8mt6QQ1=#w;JFGP^bn}Ig[g=>w>3VUB{bG27i)p%SzMDccmbj<_G#dy^4TfgY~nԐ}d-ʠBARSAՎVi䫲EDAs]69w q7(q:/RB8' LkǟA!?z@y^LB[A>c*2OxʷؽWW> Jq17|;pS(SWS} )pV5u;+p9`[t E_Qʤ4Jr)# 1Mz^@4VSPg"G;:0_Ϟt ژsKcG;HY3up>qmhCnO)fܰc`TLT~UPUSy\^r~w@[Q-ywSZ!xb"&2[$籧A'Vw |Ӈy?SncKnJ"=#2XK Pg} dIRC/@5ڠyƛb0\gRM;t#kfCU08eu:t3'_΅^eT8KҵsUc]l㦝oyS q}= ")0;:^iur/Fo(C˯w=SEAN \7ƞ[-M-dst nH]HZV0Lu=8oWfQ$vFP`P^ޡ;Er 3R5 3?8p8FT$y'R;q'P.Kظ "E&:[j)^v)v,6 hMA-iv3뚜)V Ppr" 3;}Z,5/Uou7 F3nE[逿㿯n z[LXl_B [DYv]6'a@8" 2 i3HRU$2Zq=4 ͉^wC*ǜ-n$UٓXXg* o_$BF NCHEuWXj@tT5u^ hoq;R;xw`Q&Vرĥoԙ̰ʽAE~wHgpukVU@f4.(|9츊 t\OW~x1o |^sW3z\1{ȎY+N271s@E!] T7QG7nv]2I5AV]|@ʣ%:v@[\4%xHbPr7Q0\82p4 ºq L&u̺ྊ0l@z~Aewl~Xœ"/3`xUB'Ȑ'Ҁ\動knQtՑ{` Y/=ksz$OsyVj1]x/E 3&.1N ^ml14nk$x2I-NJ̇dn;~iH]m5P*Ο\K@OS&R>j+sYmd.L2kZ|9 JG~]fzqpB~#=5_VB,0 LHx-[)x1\'AhZ:a9^JE_a/oˑUWH  V|G'Dc뿄v^uy6׹ziJ\rsM =eus?d,P|rأt1K/ws.1DH8Lg3oIN.~o}NI^dḌb czxch:p̸Dd)*i}}]3 ?SXL1aqe;!Y9eUt3Z c8]{9R0xt=kGҬ1+P-Zs/InH@zJ(/}M%S6C D M@L pK-HsB┛J1G'P}dB90DߎwWR&,LANfk|;·o+<=m2B@ .DGlL 'MF`E{%ƹzB 43N]tC@}?g?}kDAIsyBFl|g68$nS~w'=JK'V\wAeqA.>̺qG̉ik̶ M3k=iOs/}B0ڻ"3{E&'6lt>6ș?oS_M2)廸vD#{KM8nr3\-~ΰ<+E'7^Mh z:;V0~=!YB,CA8F$8֙[b%0~EQG8RE~< Pns}:tiAy[áT*g;N%9/ExRO~Uwn)up~XaZu 6q1 vK \42Ϳ-a0UΛB0X̏!aS*V ] )x\R@Ngy#Z$.a 6L2s0|r%e9+UX<Ͼyp5gIL()~iIgm?`Vp|#\d )2!'9! #3hѱ$­%ʹzwk [ݗGaZmU`0|PC7n-l'EaNQ37.#m8ã([kWB #3Si^4b7}9dzF*E u˧k&׭mAELb hE?O/ɅԜi#*6X.YfalM~ib2JSf]6..$np_ o3\G]Ok-+̀=ޯ}gw8@_SZY0 gجY5LmoDN ur`ɠ@w~1j@RmNIP)&Rf7ꇑ~ұA:M/r4uN<52)XgϢ,vEsm0# жIzZX"zں!4}@.K%! װ6yEת 6~)^g)\ BF)~G A~;Yƌ' hŦ{;ͧYah%oI=IvT2OR.iGlAs'ܯ^p -e o I Un=jC0,cݠJa"C "UدC^fO:D[O&ٍDe]D3vf C޹|SM2U؊9PR]<Ŵ0#ar{]=~w@;ʉMzKy+E|P#\3EY-TQunfqot حs LƝn,J%Ѳp( 훦,qݏbwlB=qxHVʑFdœPanzAĐ*춬!˽ Z꿼}'x 3kZȊނo"z%PJJ8-]|I'=\ 殪P*SvTDl]D )r952tC&֣02s-T/[W0J瘤|pW$I6'yfE>>B{qŸRy xe^P8 %_vKˤz.&no2EJŁiysm&Q&bMGB.2=@b``^㈣',!GJ\q>ڄ>2͝K_>G2Xq>U$YL3)BoQ;Yr ࢡ\⺖leҕ.9>i.`ģǽ'h*OKx $s*#ʘٰ ygyd.T4bo,ީV_ 2Q Oi> Ul^թfUu$+ˇT6LqJp'xZY/~ٚ} '1Ruռ&Kup] ;uS-C3䮜: D 'CDms ڞ[ 3FΈF=8 \O,ȌNEɼ:Ҁ(v&-*waF|92)ލde bpH =۫3_Qt v2RS#YER]ifyV.KxcqIn^ .Mm?,!-!W]3+.6Qԓ,yjxS6_U?\<@ x%pÉ1rvb̙THX^-8S_'j8}7Z֩t!\~ڟqzGMOMԮ֢LdHջsM I54ڥ|jHR!IB8B|t0Ќ@_25=f&Eyރvjw]e9'jOݻGT摦_j XI\QT1WMc"ΙNXPԨb}T}CX@^Ua՝-ģE#b A m׎ZQk\ĉfXǘ8#O5Yb?lS݌F!x~Tr1`)C i<kl.TjqAgɴ J+93!i|*phCM<~̵i)k0c-U{fN#E;KHAlQ9rv4_W| 45371dO/kNlչVt53hӸ譧4#ɗɇp=Z$gßߖd| |N߆ H8" a|m-{^挸  6Sߺ`,;йwŒ3{%KoAa}/Ö{Qf}hAN;-;a$RC ,6DRE<&(?)bUywdK@Fdm^HBGoN{f^N][[`ܨu9~"yϧ~$BP'sҰ fk>Eϼ,<|6@}adN-p2d_z?<-q<9F e^/4ةMm=HpݮCS;SXl$>cr G6w4 /Bn]˴6&r҉ʫ>4}`g!%H5j&PުNM{ZHp5/Ow) ւy/SI0dBYXSD${I?{J˃PH3wc6&oV>ՋS H.&'[e-#R 7*FcRezĔznOr%=__+~Az\T~kE8?y_ւ5*˓TOFEpQ]K@~鬚FOy۩L۷Iѡm߆"?4=IRl5p+9pPN f^d@p_C>/A R`ld 2~'[RKp*/K?Cvir rvBl ]CTT:/JVwG!`EfOk,{qfٚ431B>/_bݢa,K6/%pao[  o;݌֢pbՔgLKee!gBYwIA} K^ֆδ>E:riMB}N Dt'麘/o[J oZS0V0#Ta3կ m;щ5!48&2)c}q cYWgL$#k:8g"h[j-9-B?Gf0)PF,7T挱~WzXͶ5mJ^[B/&n/d=zF~dKϖo`˂)>ܟPS@-Yz)YWm(y #93=eGiW_ -'_+nQ,NQ:myxKW -NI8UMlph"4_ 8fz\^ ? /cfPAuvXHgd#-DU'ar XuO7ޯ_c!ۘ4X"+~okZ=qƷNomjsu(w*ira棬/jQUg){F9BmosK$Fan5xZE_,ί!:PjQ_ ȎW뜜mH;=a6a=Gc |1bVlq1ݼeI V&al_e(]'^vЮŘ*(W qV~r=DdYFk ycLxX@l,r<`}>_`]t"Q؃-BXqڗ }qGBe8vB^Y;ܟk$i, R_QdE^j߿⏮\?co]T*^I}z ПZ~܁gc==jo8]~i0Qt"1Yz䙆`-vY8_m܅ۯe"Yvf\jFœ$H+!ܪdX񓑐cX!XLa,%<189:~:j򦴷 $X,)sAGvp&I_PkvM)n3!1i~SWU;j$%e$\( .K O,8oPDji2] 4CH Hܿz8V?v!|!?mb3a_Η޹O`LA?SRo[K ڛb̫_xh'9P6})ԪWڏ.:ide4=~UORZse/XY()2i0nEۥWRQKBn+ABU(T]bȖw'VS6Z\+HOy\ŕ\ &&d~9cIE08;%$lhvaPUwٛs 'O)tjFPV)QISPltWme$?6dgV;6Wpbd0MD@$˙dmhP<7PI\ӺuJ>s͌ TY;S9@2=|IR^iS-MG0qRl$:-J+|phUepUF\+@xYȺڝP" ,rD(-Ե-`xaZe!`dG|ÂO8$CFhڽ1eg颚hCPv+Һ/ EUM~Kl`Il], JBEF;R"#EAվ5gLθ~߽u`t:IFJ@{L '4&3K]P`2:9z9̡Wq sb<1W| O3^LlW]Mz 3Y+H1jH8q2*I8z` V4us8򆰵hu)MD-yT"4 ޥ7pSx&%?68nn:ϭNO2Saʡ j3ziGSkG]-(g@P0ELGݸ@OE sbѡ ]>i L,a>smTfp bJvྛ@H2nX<ֽ{gRjSʹiC &e_>=e,4 ͽPDqr'1bM>1]34&֡RbJؽ#WRal3>PRm/Z9Q ᆎOFrܪ3r,d&Gݱ?mב<N S YJ)K~2|^ՑaߔZ S7f`8f94/H T//g+nkz[=< o0܎6 Xi"(j oM[}wՁ7n, PPOh2bA<\!u:8ׂz4EMτAe3aTuZaWl$(I)8K=Nar69jM˗YP*ހqEݘ7~`r0ɺYIsZNYmt_Es5XC+Qw=ìiT<< pLfe҈|b.)x rE2C`rMB M =n`[3V`EԺ%!%H( Y[W%h@8TJGAKUoQ%SsFCXמY?PZKQ)1_ghjowB / à"+ 8L6mCiߧ=qhMlsb) /cs9c5Vmn9 f1 I%pAtq9MT >HZ."xֵay畓Fc?=jbd7lOLy[8˟`Gq.&t%-Xb|G"[_;?YHN|yT2{"\d4l8sAζ5pס@x,yLlPF['dV8o3OiZ0&nOT)%#HP:>qsNresb=L̩K9& RBT䉤nQ9s.WqSyc.g`S4N$ǟ6[q$67:d#H LO]&"7qr;;L~.!Ypeʄ:l{pv&kuo٪,2 p CbPhЬÝdK#1O9aL{EWO`'7$/3اÖT?9 `xf58/Tf2>K^muOxnp^=Z!L疚4Yy_謠B©7v΁|'[>mjfբiuK8l˫G)`z[~0f"u7`j2|um2)9|J9褳n\GGx5C'˙J&\O>7f5G"E~j-ލd)9S:pJz*JOtC0m9[hnUV0-3Lw ]l S#ʘc+1C̱A ;B*c_;X,FSPeo`6Rx`g,px@[R}9W;IY楥)ep͂^#/aa:)ΉMoO,zγ{ ?>xPL^W\L6W|#J]f]̷*'h|;RB{Bb`SG35L"Ptc}m,Fo`z 4h'w{g/YG} s'uAHf9CK9nՆA]EU"BB>ʹr 텛M߶ ̼/ifׯ˙Y7b,6UQ^hK8LKWgהBW0'cH8Va[LW)j\"j>z4s]8g ̌U2 _> wQ0 Iy# "e^7&ۗ\vRljNsZL+KOspI$6W|'u[wz @K|_HP0w߭GNv}%%)` ፷MU:A,mMAKh&MLd_J;OsAg7njTx:>o-LƼg lڣn3XA좨 a gA%U#cn\+'#Zbc~(pSy u؈ Bz1Р?NTq9:,hy>gDe/c;{'r;E>\Ч +䓔]xoY}t*'X!O ´9'RaF ʗnSш. λoQpBBO[MMw&{Of$ ?y]jӄュ'L+$ l8ut)ӥJNUdCD@bA[3KdkJ3m5 }1Vz/~hY!4$[>7bau$U+#㣢6;SUfg'aGV&5o͇?3!Z"g,IZ {1QaYdw|٥&ത XqܲS2~8 v/]i~Wx h>2zy27#?!ʏ <,lL @Hlta>SH` lcҭ%WԺ\B9U+z&!M%CU,#ȟicpk̚s>*d'i|ګǦVYBXqTի#{]}C)]$1#&9D}6zOSjN |C]ցQ\Z.UV$8~Oߠ+i̟OR0%͌tARN AL8 \ YoDeB:&]RQl4FI(3e@w#S&l:t+RzHd<خd 3ѫ=rNƀF=R3 52oUӜ` cM :2:$'yuPUuV%\j ӣ<×$?u.~t?ʮ\t:Z؝0.:&pK,SC%M`gŴw =L: 5Gqqdp(lcx@\ToF- iꖂqRy ~d3|kbeZ0_SIV׺K|x (>1 Z=UbX]#un&`b&7։Vhg|uL$(F)6JۼPwUװ9tw>'Q /b8ן/2AIfQ6,ݵ}HW(MHw+J|۫وIʪ.`A,HLpmǤ܅62rN~Ng݂ia\<;3J_m_wmX9HIF}nFhs24 :N Z=CWPh(D0&H $LW-ubdFA؊E7D~&; VVܫ5TJ'ӊ@}Sp`rX j( WqVA0e{Z!!*EXu"vhl~V1.S:vAP{1!͹(RMt] ].рbdcM(xyF"R+|7/Zwm"Pӌ9{Z9 |+=v$%73 p&N)BՑ_|n|lŽư^-k˰wbul}$8Bn^FM(j:s sadN.hM;gdA$E055}>7&&,]sp\9}Mh ' nՏM3e(ʩz0s@~m9?ƹm~6blaF1XŞ,7l=Oٱf:|k{ >\˱ZoΎcI˨?`^ M*o솫n TeK3L&;A%ܗؤCe[l{xLӕ$tM!yUt'O`jAo82qv8b5 TA ⱥipC-+Iun I{%هFvmˠ)1^ÉgXC8,~\6/^ˇwAveC֥1VP(D:8o6y!69% 6_% D @Fկ;ЭWhБ`nZRJ;vc$d`SX @XUP4qJY]a*efS؍JTľ+CG@es#zh.Bb"ue I^Y_e#sXo8+nRa3{mu;X2[yXU&rYXkjg)>9+u!H"/ƵI1%0Q>1P_?lc_*V\:(’ݕfho}:le=A4=j3[͂6HW[^Q+jIp~al܁MyE+n_H2oJ60K='wKu"[U-S>VgKi)D(vx~{YE? 6AV*Po¦Bc-nCF>MiDH _$$yJ˖0fjY L>4Y&i3A&s<{DZm_XePx)]e<l{JAjdnrN0MUÉ( (IoVpz OFS T1Ya\cG6R7@8S Uß~^'fD;E7t Ԑ+ ~\/(Im : l׮y& /d6YCa<\-]o'm JrbFh08?@HS,5`ݏ^{`U W,|W!KQɍni<;U;mM C»G)67 q`0MPS]pI)+)kf# q{Dc{ Ⱥ B,yѦC^0]U#^oeDP=4@]| f>wW-oy-+p*~ bB\lpاc[J$(ͰܬA!@|W%x:eP=cY ") P*М xv5,yMI˔ME!рOMR ;nj4l kbY籬dDPbZ,MT4pK >lFS?J')xʑ!k1xub*k{a˱U3 |R EE$Q*(y0ivNEGl W%5ʡ5KCtP{;3sȶ;86@b[g$;JzpNIi%p!e> `|8$"!31"B4иnj`ef-~CLzV9lBUr,q)Tj/9>EuJࡘ|9-%}~?1LlǷ`H3O/ۣW€ 1۬I/,-U^FJT@/GşIp~h;LxDE^R?7 Tk"!ݕScI1[syV'kS(sf?{[~ ė\ZLfa5\zJ3NsOq{mëʐ:ڶdF,QۖM ܠ:Ẋ 6676ӽo.ٝfg tW8(ڞݘp ǼbZ9zLzyg0Wn,~wL7-6c5k Τ&J4m @u$rPtG]">KвpȔșKH p]Ԕp鄞a~e Dń[?c֮C8JmM]35;pRMPr%1%m64bz,}q\: %2J@)Qr 1šy{V 6ߗDU7RU# ezFStaӧz/5"Eɘٌ79&gKy S!8Vd*+GQ  JsqJHL<·_Bf"}Xįxp !&RݵD*?TIiGDzI>=ٲrU$"vk]J*jtk"Ԇ>=Ơ3oMmFTlp8,2KS94\ ݎȾ}WQ \cXwO!KȐ%ȡǴQAcj{lL8k\p]ZAƇk#B2.j~6a8PTS?)/f6Uܷ6%A&2Rݪ")jIuCf9u1RkHU y&CwIK,BZqgƙ:'s2Ku0\G;O}Fa]&w 8e6m3l_1ȅSnE37Hi\Jw阯%ʆU?o t CrMNo޳*kF@S䂍l=$sDE"VTe3^5*#֠ 8%CA 5vp ,SxSҴa4Vn`u ? <L5 ,`^a|`I\PJEPw@βYBUc6(r`l|ɭd,I$Hlur<e%~Ҕ^e+ʙb({p=iD3Ꜽ"wG/JUH[t !ڸ1s(ٵ e\_Iq3ՖvrGeMW SGMZı ٯ6x_3-ĥٍcLpͷ#Ժ$ IVkhZ9-B6^o xq'Vå EXJɜkNhX,V"Bޢbq۳w3BԚTZt80s["!x;Yh@#yFT=หK8CJ<9K(n.5=Pzjs]]or *)rO N{7k}y+H-҅W/L+q̻߱MGWѸ?Ա(|BiI~8epvn"МN=V&yQoKBبB '8j}3/+E^ o@Լ#@O,ǃèwьe0btW6uhbÜ^6Y67MEBOiED.(9 <73*q@N,=ĿW/oEV(|6ҮųdQLN(U"HFm}G+pBPc(&,%‚uvTP+ i5?+ c1Ѷm?w뿍~mfEr8os M n( b%h|(`mfrW(=SW|RlſiqШ#Mچ%twr[|CY_?0Z|LIuWw+GIJ8=,0}MiqQ8BLeǓ\"+eh1?ϊ,[šv\K7~؀>!19Z2QI)Ói> ^Ɗm8 :-ˇ+Mf{'-{8MGWVEe14(zjiL!n{!kXC80+O 5 hlڒ6joOPLAS1T(Դ뱽Zt\1ׁ5I:|FߝЅѴ=0plEH /Yn?K$~ʟH$I|_tAÕXAQʝui]aih ڠ#u诜gD 2?3^Z>مNMLXkdNu-jZ`7% /1K{Bccz}f P/<08n:$>m)6B[S].q'٧[\^@CP~%shOwWLi`>آCTmc[EJq2T ?"MCrjPvoRi|htvxL6*P)zR-42]y)i B.4(N CvϷPO^F?P%-ylX'@1x$@K;;e ovG.Zܳ2xNOul8ѲDԶ Y:w걄 sH< eˬ 8p pat#TbM Rp3,5ݘl4r9AW\J$1-ex]Vwf.~<Z,LgD):&M>B~:9{3 QJ.=7BWZVVHsbtCFaS B/xepMb$UpKl7C6 }0Bo'};Ξ?(xWζ~TvZuΠݶ=%qu)Lc YOGI'7OOTRIBt{8y+#V]7qH-`mI=CQ<^lԂ#_xL2z-:(~[['bdJQklr%@a)W_Ɠ:pl!BIj(ntX\0\>)ұI]Rcn5dOz6GV<%7=nkC_&z|^p<:Y_#I~tag؉G4 P )͍,lLVvͦcԩ&G8& ш{eLj}6 8sf/} e!pb^[Es?|cd)(f,]Wi<qq3B(2D39~^QѺvWa"7:%J~܇ofh ~]ReϋBUDk.GˏSX3-75'AR\UNG 1qi8hop{u6SF:WNV9j :ĸhfHmC)i <^\^#Gaݤ}njouI;:PğM"}9N{lj IcźY`yk[~{|#,Ou31r@Ÿ?# xfC4M<ס.'cZ\Om+-Df(s|3ațdf"1{yjv%.*j| Cm:њ2a(g`)7l~+ 1P@m[ồ.;. J||@ຝ`C_  @" maj泔auFf/ IڥZ-W.isJu^Qb{QsќKVLųr' }UotQ'[ɖ'^ :-lǰr1T(%W+acorn]7M=+Y _g w i;x"w(|y DYit?NCvy4H*=ašT^4yVirXfA:50Q.l䇿`&!aʶSiS aj\[/[^8X[ q<ƚ~1ΕY@ծv2{K`pH u/I u(DyCTc XSVLRᵮ'p- ~_JiDAYڻY kTYn,G3l)j̠cJ=Xv \9 &fm-Xn\N o 3GHjuXD{,/cAmDR`Y)t3=$lVPovfֆ_QF(Ptz"`XpXc_T̯PsD5=W~r q<q/{8]>1sƢ_aG { lloGeUŧɮ&4ZnΧ=|`]ܵfo~ &m;@ˎxߡUِ[h(zKjN~Jb 1ɖ6sOTYaϩgB5ΓHDMNj3m藻. G8+iq,%h3'2?Ģ6p$2(>?gLa$&مs2[s׌oIlF9K9b*[F^2'_]mb&TY.iO@[iAgOq6z)=P`T>YJ@Y]fR%W5B, F*RE.N]zn&p\3stే:=5a\a k>d_,>w>k B{h߸^U0}r@ b#/˦5g ]q]m*wUu<>7 BhȲia\;dnjUe"z͕-Ҡvc_=C*s(;Bȍ𤠴NTJ?_9@h%P+*טsr7 yf9 Yڦ_?:<7 ʔCQKf m6c~R;s 1r]qݯC/2ʉ.fƨ=HcH & @cW?d'аO Yg$ ,3gΞ6%vcߟdQJd4.ANkA|ŗ~#h$(OΝ],L#M]Jgfi$jw#D`V'38(2U"BEHKQ(sDN?^N$EBA#c2C+R۬}\ɤV E'>VԸoGGD^!B`F5*Ğ3Tv"rZZCF{:D@ԲIT _4Gg3.N`((PcESktm&"6)ߢH$wWDw?a"IAGFunA5}U%[5Ԝxkn$=BQ2}+i9_i흱W[ C?2A{MJ9TA!^><)WW7\t4UO<. aTtZzGxwxm>; h\a$uVm*R^yɯfS|?;B3}` ܟP?:(2R%(j]пȧ,uB J2Vz;koұ/qpTHƋT(JB-R\qsL5_}0׮rHV[קWLKLQ%z'i soiDtT#uy'||F!Y?nU! 0#xSָJ%1qnӀjX{O <߅/%+, 9yqI \-)S=5EFA*(m C{rA %5lPõpI?*TYCF׉6_6Jp$䞚w!v3隣/sx9+m;[UF =1ln3eCY) il* _}:=Vt.7͡G. "d"trf_uOnSL8£M7'Q#3d@q,~6@CNeoD!Mh < +\ټ8G <oK(/5mFS&>(Ӊ Ñ+/ͦ/myYFp'gbw *gX4\4G5QJ_k$$#m,#.;x[{ewºO=w=핲GTQ8 2(=/K5>\mΎ1?@˵iTItR>3}B&X6okr9|Vt`SH"etk{`aPkuD%^ i (Rf,9꺘fQe3Bbў%?Py'?94"_ADu  0ݒ.R줤 x+;/_g-&>o4!C-LjKyHA:dy+;;OY"ȓŕk1=3 eXW-9gS6t=y|.=#brcC4:= ~vnOH 5Ȋb$s`B3enЌQ:1# icذH<3akFpzPK!_8گtzkb]2ajqd%qMb3!ݐj {^) N2K% EKvȦ- RҚb8jEuH8Pho9dvmYK&y[Źȴ{1/첡,<;CXU|Y&"RUt0Ůk=pԐY5+wN#EϹHs4'*铁2>5'g K~$8q= i5~c'6>YjtGxϝ^850#Q RUE-']V&hgvK3W16\ot8 vy4M:OoMH۴ h1^0k-ƳG xXOɜJo(EۃD")3z&0N8-*bH&Ȅ$2 WbS,caN~*%@ ~aWNMO^0t34]ɘj@fxU.YS"Ǖx7wWhwqK9 |7dn;[yp Mh6׶ ~iѰKO8(Hg&MmFHo^heF-{IbH27A/m%âJM,YRnmYIaklzx{ԩ'Wuq.:4NdR2#Rqb0h.0 O8ytP +KD -<>3z3S7$^U-|P+]5η0}]irhHiUN#I>#!)1p@$MQ%U=/ҿo(_ykdy>A[Tӭq2.ur6M Wq`Qvq;PQuD ;gSL5O MeUcFviW݉XNwPw3ʑgu(mP1Ef*RL6ѽ,ܲeY)T90u?L~'\{.4)E(H!~~eRUaRTte ӫE$$F_Jn5:9zu."/BʟV |># U4H ǚQ-̖MTǺ8 QQN.v@7hag.ٞp0?0T+O)RQ^-PVͯ -?9}2-*%-qQLO \RXqJ TE^GJ7b) ֳn-wwpU벋~.yÝ튈c? ֡f,Կ+җ?J-O7&Qe[sn˸H:O6KS`UmRdjiG9NMэKra}Ӏ=.mx´.}C#4=i*8kG@qhAG,cΜ8} 9}*kG6_XcGMfl,{PkS :Ab6L OLc8*:`3QkXx8zA1Wg }z=M ~| 2Ī lʯx3Qc3WS1vR'J<_,\VSu<ή'?3l6$N:y[-o-D.cNO;#/: _MFыǰ 9SCf~|CcD> L,xNg`7% <@Oq^6JJoug0Nvپ)ujŒ1p0O$军;SԢi2h C[ `%R^wwe˰īP zOPҧ='J7¤$PV &bNr>xIosLi]Z dqFm\{RJ!Rˀo:jIFć'$Qh$d%Y _yf<t8Rl:ϱq$^E8š54E8uT9>hJŐ >}Hm\Eyة\E6q#rg')ޡ5;6Hw_wYefv6x} ZS`sTREu7 W\Ku>z(YY:ymTAgvRdn}?:d3(tx#=/w1x}GYaewrl4PnFԧn+ 9e~^>VapWUjCo|u=rZzsTڣ5UE%E*g\Yc8wl*/sPin#7eɞ0-P #(^(d-4@=^$uѽPt@3^(jR+lwdaYf/w!5]P399($.Lj1pogGQS!Uu8迿JA q[{:C2p.5?ӶW%ߡ4V;S;cd2z п%N`N FqR]|i2q5C_'\}R,Iq/eh2U·]d#2'DWQjAJ-%9Fټэk;t1z1މo145޼̱q_e[gl?ƂK{^ڼ2Ef@S|bFE\+Ei`mV D SdD'EӨ ]Ejo~f[E5#M4Al Kl?bS2lg*^ u;(ؖgc*NtxHDy-gP~@[A=4e}-A;/'w.^O\?|ygq`eZ,?A2jjMYl^݀ M`_7 椙oJLvt^%naK֙lO ccD~Z]w,xBVUKSʐZ#T{ECKA5WEvG+ ޛ.ä>pl0Y=/"ɿWP&>E/A+'B, QU 4"Jc F~%8sW={U[,{Uڌ }A@R'`?J)# >ܓnyF{ww6g\4{fME! 9ﶻ8zvB*m[rڊYo*GIs9fTaki'PI)B^A5N2e0EzPhc8v)T@7NQΏ&.4~,JIZ gPFv%'DFTuV ul2,x"<2Ve˸ƞ:4&S$#sMy~BjxɑՙW\o|hEʶIuJ~k.(޹L9nra'=L b Bh]c!U-SC f%+:ROq(H\y]̆$}׵sVP<ŒZsɦEjka%@hJ+ yZUeDC(ɀRZ-|}Y.VܾG&Np?]g[ %/huYq6#o0x4k@Hf8~k4"]`϶ GjvO/dnz]6A/u+eO[\o> i4n~d`ҟe%޻`8k >BjZa/a[0mf~ZA哻P{ LnY&@+Xg>8ĉRʝsls`N@E~Zя,I1LsT-<?H/"s.{։Ɂ Öj xу!HTK 9wՄTlq !@:Q6Vd^nZe0dʏg:0;p|`gLEߍCoz#\VcptCb'OQ& ;#z+J>Ð`LO<ɠhG 'qIcGx7Dfwv"Au+J9m+Ja*e\CԈz%᠃ ŖG:x\%|ZB")p<M,jk$5Cb9tm*WftA8|+#\5=>uFB\ ~+`64DXP+J2h~+aPfk"Nѯ3!eS],@Nyu8LQ _B=w?n&#iЙj]IuxA~x[.QzPPKӕQ<)˽C#`֪Ex^Z.߄2 JI{&_w\-&ui5a@A^ɨk|A}b@{zd{Au㠡7Xh ${#w v+sl3*7S 1t䥪֗M~N33~œ_I5T8oJj~ V][hUA3GK nx1o͒3_eP˱}cƄl$~qLxpo֜l{) P} 1GBRAn*uɬ k{@r,lӞv(&#ҩ|ap\/3/`9IdvJfmj"l4H&oه1Y` oC'P ̬?ɧ97,m[E f)QiBnT:. ?Tӂ6j]x_!Kj=5WX qGiIR$<2x%:}[I22y7E]̃ղ];o<Qc")w>?FCB9q=,Xti* 1OĠ1AFO cd_> !ZyE$*gd-a7^@VC?J qbP&d_}.}$:O{3 o(+` SJeuH O*]0lxRaaRi\^=dzE N֗XX v}hj:_",\rgNJoXޭg8W }w?b N=3h3~u'reh \}բTb){BͿ$HZlbt+V 9cC=᧮n.6K}0N-BALEUv+|"442i{NrVFQWqFkTBo݆I*#4PQŧe FL0}.[3"q=|6=~IZR(% [zzUGG Ƞ a؊?e"3.*`TM#O>&(-% mCA[|Pa6kQG8K^/*l7|[, `'!e؇ Нsee^fN=ѴiBq)}O%op|J/*6X.Gv\6^ki:oL˳҄~mM{zJɒKQՊ=}9V';D*'D S=0q;:dL2[$ulZpJ4>ڤ-1T`2ȝp%d"yN o3]\ (JH鵷DYp],-T-*gi 3FZf΍00Ln>Q+=^ӈ9Us*p@ρ ccU`7W%˾oήusS;/2&{:Hϰ-~B5=F}VUV&(mS>1/5Z:0X cLz'3l/`(mF#v P˗3]WbL&(l~vA a`ջ.SN^s {&'G9kCsf:u}?2sPiҷ[9/SsLi=D ZlE.]{FWo[k༹(;hߨ)6Tk=vXOig [Gc)lOchm":ޘ$i (?BCOZNb2f60 wZX<|jtb[i_CuTuO{'9$X$1NC,OHn]cEd*[cao6)uDBv.;|#e4K \?ԚmNMQ0xOx+/# 7tPG?ŏeg(=W \ ~}D5?_g[k֔2AQhb(+B*qS,|D'R"{1NTs/˯Sl/o׮ҥyuOsn02lc$Ժ.7ށ9A.J3i;H$g E~(tZez1+쉏f!oD+Tľs~75JƦ,p$(eg_fSH4Dڝ]SG oyHvsRc%%~GC[{8fBT/ۇl0k'x,50&9f߽' ;8+ZbM: B9SW 1E=}vVfw MI[X`?-\ńF4ݎcC GA5ݎOtg7 '95b6)!UcV8؍%3[NT"hYbA+ ֪=R,\f-\<:E՞ !9SU}M&,tj,A`',\vjHY"uLBkD܏*.jA)qUX  x>]cFˌBiQm S臇V$fӸVH}EP4}|JB'- , wR2ׯJH\'80Sgk?VE`ؽ{J-|XrС%7vOKLI3s)O,Zǣ;ՇxqɿrE!dD;!cGGZb@0Eh 0o@ Q0K[Nd846V,Rq<R11x.N sBl|m>wOSH{k~Ρneb~vCaH0qߢ_u6`!xm忛 i/7U1;\fŠgqjWVT(*?tlMiFX*#!`}Չހ!VHU<;g jRFl _VU"Վ)и=yXic)ynG( V _7g۟;yn_D(Ee(@1>x»3 WwH.5&YZ;OL{2|p?_B$(ے^F&h~j "!P, Jjڱ\H0G&]ds$\U84nfG84DQJI6vfhPK$pm[a&q(x'=^Gp܃7<0 1/Ƭ\-Y۞Jy.7(5~)ks:i?Ig=E_rs)r ̧f!kzYǐ'ep$MvNKDl5 {~`k;p^baqv1KF"bf[%1(9T^t4qhFlƚ=e02nЛgl8(}B`nĐgfJWh<߮|E0;a,C1Dl=ĭe8MtF@wn>ve+ŪIHϖf5qWT^yEe. {1>}Cg 5 qw4>;(ZoiZwxvJ:˘0I5]>m3brHs{y*Cbؖi'%!,dD{r $T;qLWKyNT( ybDR:a]p+pɋMe6Kc5DKETi(l:-N̞1"fOvѳ~y4|n|{t[-%`leb(%#ڬcVu3Ќ*1[!PR(m@Pls]-4:ɀ@ a(Tdn2Y K ? <?t{ĤDF99XȞ~VdXꩳLI` xu?e*S \uLT0%>=̽t@ t /`ؘ1#rZ.LaX[]K9Zpb1SojHuKxX`%" 7-ܵUIL,V1P8驇ɄoD*h}E S:|}ʳ]\a #&{ƔCPNBg@L=_;ՕE3症ğܭ~|Wy\5;eBh`@8'-Õ ,G8t_L*M&\YIJC=.hn&b4^1);Ʒ[PK9$ Ix|FHyQM5o70OC0Yjԧ[C ikGև:XM .})F0ȫ{E6iW+i"G<)n/ᠱ熝EVdžW_k>rqnk_xrȇCr^OPhqt γ5ScV|{z YG''N"p>6W NjB~ȖJ=oby[V.De_L&8,wj!tYQ 4C8*[7JuZ*3s듘҉4PZ}ϤqLV"c~9wBuUH+x0< )gzu Iݧ?,.CO(.mewY8UfKF=+$-]ɁʘKghnuPpi(َJfDfeO Ώe@-m5?#+}Y@j.GwH?89ٕR?U}tIafc(eUG9pRLh?=cS74~g&C$c"^^%c#8ʴ% HwGA3@߬|8bR Iɻ|[$,B5mA|HIgE_?D>g\mAr6ߑaHBNk=e>wM"WcgŚK쳢 B1t^0_פI%O " (!BLLZڲ~srZ *ӽ (-31$TsT'&mZٵ;LB1 [}Wj[KjM!p m A3L%;zYxϿ+DEjr|*5:!<[02T`Tn@l4}e_* ̶1s,%`gnPw 4k QݒQ{϶kUhSW{*"fGPlOOSAaL6 t Vjk4j]W@PdV3B W NO=>S|p%'aX%V1Lói @H0aN{?AH1|%zxY-R 3 E8R-ӟ@LRmqd&] 2opz^ؔ4ؚ1 `G5I6s2EiWZ]*[;z T1q.&SrYo'AD7)l>".T.a$7H"OW3=;K)CVQAQ ׬~Q 'p2+HH79y~s3B5TVĊien\ZDx,^oĂ!j_+V{o>(9fz ] SwDm˄?۾RmcQpc%!vIqigW}|\Y|ٌ)i;̽T>l~D-Ʊ0zaSAuᨗA μ\ ",SEĚ1[ {X'3 cp#0%WI^O-wlVkxv(SR_CQY~D6c5e8Tԡ؃'z5G8^(a7|]>L8Sl3!8qS"Ԭ涶C ʫTD\EY82s4qb[lE&k!C- 1f=7ueJ:@3TE- tet/8_sjɀrp9u@`^X]d,D+1b]/U*׺3-JL[!ˁhß@=I:3׶ͥ8ǖ`^7Wl]$vcE)'Md/":qEk)7_V23P`͐a3@{d~%`*Qʣ i+4FpqIeUa;܏6:Ah~LPX` *':왗 ~u5ЭG T~ћ#oMGs,h'. $ʌ\^:q ( C(vSZU<9ƱFs'TTDV!N^eK(Ũ.C˼;VDJđ@J4wC%˜[t6!I&[C{Exߑ/G>CG#RUIJP=n /!RnY/~퇌,$M:oP|JTRm킭Dp',Vw\BW·qzʗz(gr}&? _-/ `柸#nYR[p+ׯ@fZ#b-Ll" B/EYaH۠0ݮkMЌzewg?aN8}W?Sq6(UO'~@YUYpdgahI8>"X`,t0@YW.Uz.@ 5vyzJR w27 gƪ <[HtĐ%0#kkvQz<;V:q$+pXu ,E +Ee4[uTj2-!s6 m1[Ej+r1JS+m=GfGH+™Pj n1-d7ÿ;Bc7u4DVZyOlgr"kMSl7{%= -;:Q/r6 d/:Zd,oklP h~o}?S4qyǬFZz339YotG\thUF.Z!~΃6~41c@];MӼ~ >9wTg`AꝚTkQC]X*X| #=+3}>ag*gf P:ޚ1X=;7(2b%(bʃV W@I&풖|(&V6:i-wNFN<;#8ڡ k^ SD;/Ps# *Uub| |lN}=&bn%T5X>ի"{ \J%yœdjJDF1zLKoYȉܿۖEF6K}A&7k<,#/&+-pɗĨM'zPv?{JK";n\_9KXcXA/r-"hz?!Ԍ87Q _\N3 _e}膵DO9@ U'9 zgL! w"ΆsfUiHdD`@ <^azgU4V۰JbZ_yٍ KHmlmj(bJ 7As %GM|+cR&,tuoYQ{p簧?u߯ ')lL{(-`\!"I8䆈@j^XG~O\X63nm 'd&%"Z+K1YsQ7|t.>C R532~$=6{Yl݄E^h Dc!Jd쉅t(ҧR!jeo.䯞~RkؐcYr;8]j("Ǘ1+7>: A`'LA+XvHo̥l@p'K,o?}H(!8P aJhsvPp]!AћF3vOݢh7h'W[ xܺw>,l@X)ybqC7NCLMٻ/qu.o-g%I W#RyP^xJ4B+>n^ɍm~M"[s"GSEqqfp%L`.Șo̵ԟ"YBYkIv\[sț0ڏ=|`? HlcCYP%pS΢,k0B0}Dd0/O SweA_9`r+SL[ϴ4XxPSE O{Ov`.^S0t1!0,|!~x?$֬#۾L˕v+!}3cƒ k@}Q-*>?@;UduvYL{'lyH;9sY9\Dnwd ]v,cQ3<`Xy${"7!nr%?pzm. 6bG<ӏv! U93 'Q<6Y[G)B k"i3R|nI}Q\%h{Ί#ir9F){!_:1=W^;pFeNMձY|:aEQiGx$ѳg~9cGNf]X120fhOzm)-gIh*#Gbܨ=c>>0<[ըCbHIR<.lvqBM g.>ŇdL9|OR;bVS=Z)FBd Һ6[=Dre.ޥpZLᄃ4LʛfS<}XiKԑwBaO算EïpS9_S38[u`3c-2,XI>huhZ+&-"QXF=?%r]POpxĦ/c Ib!ȿ/凞_8( O_Τ;W/(M}&^]>-yĻP:ˍ e:EF4RfB&P<9Yt{19.o~i( W fiW7Ά%ړ) nS5Q)}s|\_Q_l|l=ȫM"($Jw9ԻV="v._N,6Wď?/WY8Rj^$&?`$˹Z2b@v~5*8Po2g{(16A#Q3ȣ D"5K4OGSv9$C%_W)#8rWIaK կ 4) Ԁٻj)_ShO`R@\%S0dt21_ZNC֊l L<>kq2732ޯ=z` @T ">MB<@E%'Xa#_N ba=uͼm\ tP?Cky-nJA|?Vis(Sx_L!5͆dkn `,zVΤyHZ5JJcn|sPv|DT]cCX.Zq9 _DP"CTX[+eʉ(5hwrG/ 1uJUIW.. o4+Aކx[jrȨ?д'#m_q37o+$=iZPHsU%< 12ph[%K0<<3ԞB&u@OaTV1 4&}TkGdy'Gz6M!L56Њ;2ŕl[O*#yISe18t"ݬ, $hMye<'|b2,%l|?XjCm}3`$L&[5&{Sѱer.D._ &o_Rf,cdwH{,){elMfL`mhQ뜦z H௪yԣ&1gN*+"q"!%2q@1]@T>PضԊX~iLp@G(l@D㕽\R𢡄c'{FC3+ƀh9y͎XGxYr%>k\!2rB!໬UcΙ7ST %10%dqm9 8ل0j4{*%sz~.:LzRB"M(Ou6Su%Je5ZZ▥ Ug/lNda\X_pW4DkT7' }Ur}#aw7NdN _gdY~ޕ+ ϭKf\ld#EsFg֬6Dz ?mcӇ;n %\+pĄEp9d@f7،%0 xhك.zۮ!=)&ȅ°>#՚+Lo`S]r|K,*,GN*lBj`OC܁h=7x5!g7 t`8k ;:i4 ~ 0C酣5GѶH|E\ɤҍ`C?Ik]F~EZSVfB,teYMiןXʫI^oFK1<|!{ta8^G׮1I8@2w]A[t :P> ǕRw[hQ͗t< ktZ[ +Ƙ s;%бLbDu=)Dnzfпu2<W'Qb>>AW0c٘HwuBޑ䴉@RѐT+p2ީc 8-&c"Ol_C=|xE|фe/0ų;h;ˆ)=q/B6 פ\2:x'oj3O@B.5\{jnKj4Eo7P+f!j =/&XW|nzܖ-IIx7j:s 臭9y5Ev0 CV2jGr@P-zyU5b7u~HTpt(D8p9M~PѢ_[*BrqM@|V`=HyJ&@*{(n'=lkHHaNŮmG &/Q$u.o1t] d䳳gq vŇ,\zVk)H!1KtpaC.p;/\1u2Oq->jSB29jDnTڒnghЊ(K=l|qR1-ԋ%"bi% we qj g4mx"ϕc"ZЇT>ܧ|I9Lv%['}e ?8t:q/YauҗKAu"~bj֞1l>\=T: $ZY,I:̛O%:ſFvo޽$[?7VxNxFZUM<ԿW<yqY2(ÿǧL{^[>SI9h$J}G.Ռ;ֶEg̪ߛr45U-ʢZb79%9hoB[gOD#caFX^7Kb4vKt 6@g v%Jc@ZrݤԋT x)"CeRCܟ슏)H5{a)} !;Zs-*o;2Ѽ#\_1BBO u5 2C4dJ9zcԎeh"Y1g6_%0\Io.zrsOLJ<8"XlGփYvZW*'P`C+(_F y8(&!p(u -YP+[smzhCi>3Մ(2V,<1(`jhV)M_< X(Y.kqqeV;/өKᵘha7C!ܶDqXmMSƻ;PjڌlrJ_iꔄ%߆(7sk7[Vک&zok'zak.LWK"l&ˆ+9wd>l?oQ:cvb,AyKgbwT JW֌;#yFz6чx9ԓBB hgѵ/3CHJ'poγb,(s: 0Sq xMi^"-)2_QsT@ܒ:"f.H*!c~(o."aPI$oPDTOH}Ȇ𣋆<1Hm)QŢw̎6GhǦnB\f։T%Sc9DZa[Gj<3ސPhx8|9L1aRVp5r DB2LA@VhLFz],U`jVI{ƈսxzYyb2DiᗙK`}ŕeHQV՞$Dy|3q p݋<`u@E>.t9-~)'PNGG_iUP D#x6 @EBO~ݩg#׌1pW3c_en;<9yy$ItÊ͋WN[R5sڅ׵/iu촬V2ZTk.|7Y%XenyGtwH$ -^$W HM &Vul3zĵY7n5 z7G,0/!]VWz{@lM;tju01+R9~> "IL~{"&Y> װdtH7um嘹1x=W5?&O~y&} &B3[S;XU/G· F3lVDV, mN)h_rV)mf5sLYlͻ.JD7]%_p!Dī`x[gFY "bvY6.^Sa2!Sݶc_ V$t@}Au(굷][G0wTg8'c{$*s <I(Um:p6 .5ԑ!cJ6; :G!| #?N˄YȵSCx2S' 淰u2}Ms{r;ƃÜ[,bUND~BM}.+lc .VL rL.b|SCZx ʫ3TxoO"$a^8^gg-l8q"};Q[ s[}jv6`<d͐Q ڂ@3,x9̋AӌAomJ@.F=Wb QŸe2~DޝOrr`=lip XQT#GdFv~$X b{ACi{ޫ e-|O3Uit>8kJac Ù6~uT:]j|'N@ɘ=rT9XӼO큖 1$\N|Wv^!.-i2w *}$0m- ʨoƕ5~@ hxC>?LY~1Fbxjrf$KEHcaېhlj6EWϫu1CwzL^ da[!S^הrkb6nESZJkIS *ǰv|iXZF1)%Le[q*y!j\]b^n&,Hu9BV-g!ݢ?\\ЈzQ9dx4QJ3ykyY"Q/ŝoK=Gr q ã4) ЍS^l \^)/Cu C vv8=~mdb;d{e(S:z+GE'U'X {urZTji+*q09DM,)K>Y0):ĭNiJ,wxQrq˝ܥO$^)P/Çcrs&K@"R;pwfL0,(ʭaʲG:6hڜӯgV8B($zXxfU)3 ʔ9O#+e⋲gi[ 2AD˞_m8@)FoƑ|@hP>+e,H*%B:36]N^ !OEJPYq [CǗjFޑ;suSI>YWG+@ EHؗ淊|~2O?jT~ 7n%>Uׁj~:<fB.앟׻'db'}Tt%_}Nw]3Yʖ6f.M~iv4U},0FHN FdDvr8f#.I~{4&y!)]z 7`` <##͑vuG9çVڲ$Fa_: N*YA6ZKo|4Ua` twR  S"⮰i q̲=psvzfK! Z~Ǘ$ag0+1%]5=f}LW ?˦AvgSPD ѹ!Z1D蜚$\]MBQۣTKT6;wl^0aA_̎\nB)t0 } cv8 Ƽoi=+Ǟ]\3Ԁ_CG"G| JI=.aubu^Wj':q̷hF[b@WLvآc״64E;7#}ޢ&UrZïȄO9-Y]_dխ w:os6 ~=B7wNaȢ*Q!( xJ:<>d7O˹ SCP7ߜepgO)0IR&VjU$vo.]ԷWՋh-H2!9fCDL.R,Otc8W#VEeﮔazB['"N~Y@"(mZ0(GAchG޳Jg*6Ce5J!+c~[s5w. ZW7'}|Pl'[Ih?Y;| dĆΧ5"].\P,jyV{ t?_1GNLqGbc?,/"mk(_1&bM񧄠 a<4˵I໳"5HUXng'ys.C3SW7ƹc퉞3߲8Mg@:oU;w:^ 8ĩ'1AȀ?p־ VZv(3d.وLSHZ5>geJ{&؍` ^)%2g};v@4a,l>؆K7=1X|։;A/lXd7YQ58S-͟b 9N}!O'iF*U0u=u% Bm2xyWj<ʜ\#ƹKXpj!C\Qw /erɆ(#{8:eÃ3N7ckGʢ} U5+G> .Qp& U'7u`NM##&dZTÜΓ5O |TD499eVZ}Q)`r8KAGS(,3 ~߈7D29?$ h=0jЫ4-PG䅔  O/̔XgeT[qa8d϶Jzr"ƹZƞt#fKgn/5U%slzAE]2Ƅ$2peQ !B+5̀X:l@_5Rs@6!='6ɠG/! M`P\K' d#Иs-ʝdEB0UPOq?3If3`r\1^톧Y$#Cs%oϹ$Nx lACn3>+TYЈvg1FbUW(`bmf  !bchVx˂o+{\'dA |SE{бrkHǐfߪ;lkϳn&୸{Qj 㗢Ho-V5޼"[zU&(!VDpN.6޴r #+IH)ɫԨbTHE`@Gj֧dAY9[c57 &B'O8/zgfE,F*,KF>e6Q MW/G!)| ؄q .D<媥VKEW 'Z韸MMN/}L@70AaT6J eaE{I|'؎e *IF%i(9GH_SF'%t1 ՌV@؍jĮήr&{anDτbTC*T?'-u_܋~5Z#rq$]-kCƭ*d`m1R+Sm\ hOgAR2|"):8daw1@|(쎌2BY!1&TKR ڣp*-ȵ0}OT!!-KXv[>|-\g="}{{ S27B)N2@Ћe u]WtY>L(|4O~2MXͣӣ&BDh߶MI@ԕ74ZPfJ.I<gO~/;sN8̻פ+*Y*H/lӤpN~^k'-[4P&0S*Jx#PWY" u ujӥ삊EuA6u.m`\㘶9ybJwz~^ˉ_ΛB[o|u!ViQ؟;ofʮ _>]n|k%Si 1kF5*h k@$5]0׾OHjAwŃ=݈?/ǥRlb[Ѭy&O!OꠕXdHm#퇼ay8>/iCX~<)9XR2 ,6 4(@- ~JB=2ޗМcɠ,/@ >2:8+77ц:^Q\ww|!ddReK;9۠ Gf#T@  FpwN[~lp8 Hh~CM^LB;W5#wOz"8cFXv2i#_}Օ\vu3߀S;}Q5P[bŽc DPʈC ouͭD᳾y:8dWxԅ3{ v^<_5B-۠MO6ΜQ{dKaG/IoHV*X/t?qUt(,' -=1-c; L!3~loc&C= Bhhn.2D0T~UԬƋ>jZ筵uTroI] { ^6x_=ɵjk i3֗krIUdAYqt@vд|s 27fĘIc۷d\;E+ξ|vc,/_mȵ(G;Uxi{o_Փ̙4Cg${Ӈd_)ENj;'!J* $(W[u>t^H,L9!2=WiU#_Jԕ;icȟIqޢ%Bc ii+Ǻk}ЀKM3/*k^4jXgn4Qbǐo>1U3 xXȪ;isGA6zb E/Uu7?2 m3-d~.R6v,JA1\\;ѹh`t8"ADj!spv꒍υ#k t1yyw[tE'^V.OBwqOT\l:M]渵kKs7oXiaF~}JbrqAQ68=tH'hպ8 v@OgF!X:򳬮&tɸ L@['OSIW6A5gbkc6IlѮTdoѦ?@GӁs,7N&s[ZGTghԿ֣̎t!wp9<*`Tc6O{wH“]ƥDT"fTe!¸Baow:W GJQOc8nޚWmE|l)D,it&PUSÇD 2Q8[x]"s¶@~z/N0HU@Qfa?5QNbИ&}Ϩ(yXKO{tJR6BJB[e^(3fg&bcFLkP0G}MM"lAmߘG}8Bٓb]vQCXU[wu5ik:5DAhRlBhnC T%\B?@j(, ׳G 6J6rz6?MTm0u\l%?Ň!1+Dr)@Wjh7Ԕ'1~=MwELQ:6EDY<*Z Vey]s軲 B[=y~UxPДErJ\MA.$`xA3*.OƦJP%=8 q]vA퓼u\.7B"l8+vta Ad1Տ?:t7 U; L+$ٝ>6U"-\ŵD顕ItN6qzNt5B{Xd 3LGNm1- Y:'uUm|ּ"jH6f>(Kn~-R0(C50K&\L3C2ʬfCpo߅u IBbdxlo6޼IHr#C9{$1|hWDT@xKF]~ȩT oT!3d#Y0;"@Sj']Si:=Tͱ|@Yd!;F,yx^[&wt-41+cmהqDz)V<ڽ PD'7ˎ'VfkYwG쌖såJv9{Iy$uy.:_"F w;YZsOZA=TqcA}曗jk*w~\k"s?Pqĕ9gK﫷a+ ;r# ēJz>xe>ut{e?ILg8Z 1sN_ȥOр ]Reh9G|"ƒ@ZH ~ 6NU &M6TLo|"r)AS*ёQ!rYamcΪ<+`e n&GcMc ؒ@ĝi#1#%m8#Yc&?"Y38S7pUeTwwm**+l>_"sUP erW<3H{p{vÿg@2D(!ad?4,X'KH`)q!1O/Cx} _DQCH~X vh8ߚ>LԘDXA!hF:;E=./@%#\koO#fRhqvψW7cs7 S%!L(H*J`cg 2' iW|QS%_ >Mmc@~" JkC2hQx^L;/0qɩ6\fwνBIMJSDfG}^29d[F rz*OǽLfy0"%rq)4\sI!m1ҏŽޓݻ) I=w7%6K?N}aLz`Wx1w|9?`Rt[SLD 0d [1șoDԝƟUψsqBo 2uSyqPy+>}RTwKG sn/PQa/gpбsA%hS\K ^ poVV'j +G7d#Z|+.ԽKUj϶ѫ:%y=.S1UGi qL5cSɠ}à*^b*8s3)6/,4lУ5<m={+U⋇ BN2u8C`!45fb@5TR|^9eaW\Md]ur%Hi Uk#,/[q!>Jy?!|Ԩy\FDb5k52mA쵕+1^p sVϱɢ3xJ2>b` -g'8ʊ Gkª[$L oT؋ ECv@ReoGzjLzoa:ٻ.QjZ.Q3ijӋqWF`0S 0xl+BÊsz1#훋i'"،|]^$-e{R\a<Vz:*1lelQ"5"uцc4mn>&&/9Gx"\F,R]Q7d"UB\.نҚo?F!TJD CM&wY w0ЇgT?t ŕ짙5@@%-?˶$XaT|5+q\#3D*\."97:T mEcz7. wfha`Ek^G ̝>>rYY7e&Q#=^$K_~ ILGGj3ZZ RS!4&rԘ a=<י"7?rgh z׼e=G2T XvH:Q)U`h;yC ""ND2 B-RӤ RgNwB FZ&Qo P*HbAdF}ݨ6lՓƂh`mvC@mv\W]2W%$&:{ ;:pr~B~y?h@ Ps2ΡfQ/YZCI*2BYPBiTZ2 ^?=\*t1E^{hvʰy)ȊIOHCDae. g(yQhطp]m+CfQEܰYm4L1FDCqgjR:׃(sBRIqKР :?f$ ɤ[\4[ސ[F%]~_SRlʛĺ96[tF|USS_U -}Z5Ǘ*& J/!њvh'C4J?[AERC!lD8 کOT>/BTPgG`U= ΫSy ^N~z9)/?U"l2/K i.7RD<رI|k\ņiM _y]4|\FCwY oIf4 ]2mx沽}e yWn-U\+q9 nc/T[WMX,b8nm[vBtt8`Çÿ};Ŏ$PЁ)&+.BT ~n`/Py"//v=#s#eBUOEOE[);7%5%Z'Tt"&(24O?h5^99_3CNr>{ =rʯ"2AG+"$^,bpW.1GVǵ١90;n$'(r/?fM-tT'Ƚ9^RV̇W`0rB7 #d,H%dW88Ԍ(;f`0P@8F~~A~fB] 7wc2[˒kc$%̪3nuϫBT?^? {L_601wڣώE![[0C#pZ n{(F[Etl0Mr!ǟ;;_c@Qs+igȚ27AJ!FB>$ߑMn!,Fչd AɌ&dN{P! !+kQŠ |tUqbQc-/*B1.B0 w˷IU\6Bg{JD ^sNEs`//F15 b>˗uŲk &.:4zm;rڄ;~'8ׯ`mnQ&Sv!z0BMF8dV<Ͼ]Rjk>N`W1ʹT)/Zmb|$L\ui^f}a&[AM[hdԞ8 \ߙe]?a򹒦!PGQlf}Ʋ!V]c O+GQ`gZ!4c+ Tc t\T%v j03VU[Q>LJ;p㇧>,PE=$51|+P"H+[Y7;=l~z1MZcXR_ +lHj7~59e\(d>vvhlVáT9? io.Ԏ#8 X&-Tځ7R.iy|T$J~7c%)JL&qѧ+. ? $*J:/k 1BC異,zu5Xdd{vm&OSX<ӾqY ׹!:CL ڤ*лRF`Q(5gdIuqD_ EZx):S Hl1(uۃ X'3^<n pJPfƧVk~ޮis7'`9:_FzRR.s^J~㝶G#Cn.GZ\I'^MDō΋ڿeG!ѐ zuꥑIo"C:J+)wyS"4aUez8Ӆ%F^* l)(U2h&#(tbL`VTف, ]ȇEƦ hkY+HUFHW-WE^3GE+ԩV;#ltb3]Kfݖ_6"yY4LΥE$W;"<4&ʑSv-]тPA`6C.Tv2 $ Gbi%"pTLGM\ G ]R.F2t/SGbkajT(8M]-R)&؀Ϫ=vQD 78>"%H +f|hmdeEOަ/n#:YevRvubPK~:[DRp5jؕ Id7uJ\mK[-X-,± &囇 9Yа~gN߇wT$)K8޺5杅&S@E mQZHF`ɹ4(3^}p;ulpnM l?ٍun7ygԝ}I7c 𜋰}'E81Ԝ F^S"lD]1i@P2RqH`7]˽ij `%whd,5!5NmY\>3jXQ038Vz[1i8Y eCa2u֎"㛷T<p~Ӵ6L^\&&dOوӡlI`0otR5|S}"[izv6K;7_@ O>j(Nnףͻ]p$s*>4.HZ5` 3Aޮi%qS}4(87MtՆ>A}8J0dc% "mp4{m+Yn8Vׯ-Ks:$ՂD6oID| - M`ϗnkN7h [E7zUA kNdM\*\48Bu簣 ci3+PL(TKfke(\9n,CPw&zkN/XB*Dm`ԑL-Tߟ_z1]~9kUvm[5àjyxQn '8ƜJA8b8W̆M]7Ien 3󜩺eW&C@)B}iiOhnF(eLN*L=52Ň2rSJe*c9<xči:~鎴yIDĝR3'n!D1% En`0ji">j>`su@L:^@Fc' XA5yWͲKVHa{,rh:=ݩ'C;{p?P"5G9nMDn l|[f 4 dV fE{֤VQBuBynEю2&:|-`G'l:2-@]d mN*aF-h'])&ŅisFҿ4?(rZG aر";=g5ZqjZ޶ 9 1hMP|ta uÆe1Gۦs} ]1_+s.WA!':M:[}re'\*h^4YD;Q-)-uG' _gΕ_ aN0c^5|h, \b -j@V)*dj7/N| !I^Uv.:\o2-ZhX\ (Aȵ.pw^6D8p\v] ek 5'f:8%xIG᯻m\ݚJϷr=6(Z0C#䚞{KzkW,/ Cwb,2=O.R,ukRioQ 9ZHKpµ;69Ĉ.H3XMCV#fra!cۜ.nD1uQz72gamq Uxz W)iw^BO_VI3lR)t\l+"R@Тy5ڗYŋ$G>rDB\5߸vX/Oi=pա㘺V*' R];G"73D&!: 5?\3hVFxm̰h05J3r!GL(H9Т`X kL♻T̳Gm' C S$+BC+ 0ĥ^ai[zD)L76CHir X~WA#z[O nxrB&;6x&y4$l<Sg{ ],6 @KoS=49eL:0Gg3FR{XQ;\1pN%>~N\5a,maYB]q9~(;.]Xc^/^]A[A$I C,A8'|"1mw8>qWtSv^`{'bv5~3/SB7: x]"Oxqba%c 8a{SW+IECHÄ ttq&ţk%ThB4Ub*/a$0T"䯍<@ 4d` ѫmS߮'+ F gnFg.U"nGD>D-, \o']D$UDO6{43'1J {u%\@*j.4heԳf?x9VT=`8=zx|vWG)^w٦qa]@t6 p $5Ca F>wQ/f~''2[}Qş<?^S5m0ޑ9`$kb[-T{RpuW>*Au1_ Hх\6_qpF=PPTR gbo;sqiJ8S~R9݀\j@zZMK=7DRI H ?PҺoqf l{86S !G\hNN, 1:ꍐ)[Chp%6@hf})`rһ$28ˤ3ocI}9* l&bc2ֵL$-}XaV#ꯘ\z5Avm=A %L&W\$hD^+ \~񠹷[K(s~r9꾒@TNJ<KZbf{" YQp"  $2{oZ3NϠޢY&@֜Un4唩rb:Iӆ TԐVe5)ѝ9fz)LveE4BKfs56񖫚%X[D_W|ф׼f/yd|8]\/~ދ[?[6y`~x:-5]7J!kD ;l֌ |w$ 8[OmDfj_}HO#l},,U/Oqӗa$QfB9.JZm-TF{}fFxf F qh~?Ru@CPzqq6er@tW)C$ V,C jkb' o$lN !Z2;Pqًnޑ),d ֥EZwgCR<.ggZ=} J)(EeLMҟ¾t"30oVBX3Pvc>\PDUbxf 4?r&364XnUIm*5Z6.+-j_^.d)fW~e mTnK9NH~~DZ"/*l2|֮8x<b%xt.s 靱|%*0I*{//|J~وNbSF 9G~p۩= _(ZR}b_,̾z9DE`wJt&r8Tj݈:եL9vOuJ%3eOZ/cCiӁqhnP3A<WpvH{9 o ~\QRct3B`dB6AJ]C0!rnʷ+>D rb?3^9`yF $.Ss%&beI}RGm!h)67T$VsNwAh?_Y3\}8%E>7f}GYWwI6s26\.0`p'OG9ܯM;d} @U::#.ƿv`޵?\R!}e*no(Wpj!Obgw >Ҋυr V7@ 2'N srQ)A^ɥsA,}Yvk="N"Gv弳zXr*].1ưb % ?o.q{D4QDxfV.M#Ӎ}g9ΕF˗CZt2(V-{xhNWr23(5-Ű<6Օ?=Lq9ǺW:C\#-loO>Aߐ-ق\r܉0Pui 5!`(bg⛞ngSMeѨ2vh-~铍Xנ#ܒm s<ϝ=]e%Sj(G='}!=n;G$W_5ѳ^KtC Ua.nUzL|7"" As3& Y K]s(_wW8:o;bZ2A p4 j ˹MTY|dd z*\ķC)~h?T/C@ОCn4S_p:Vn إ h&xEy^GŅ{ G2Nѷ:ɷwO&Խqcoچ%v aAς>} wQUlf4BzJ%0Փ諻E8$2Hu.'3dݫDS4O/3W+&B LAXLK8pg8:y1 yJ,[ޢ wO|L ͛+\x(" _K[éTo/,J vayލiV9.WxF%&b} `|׻fy; Spp5Iہs8>W~}{s5  s{N]Eljg!UqEJG*R\h]{Kl;t;\ pRF2|; MщbGct\yc9&,(ǞΙ|l;&?%\`q_R.b=SzS~YXm#7Ac"trkPH;"7tW3pb*>{ms!Uczgghk.#R5j讶Col9J+I$Jdw~zE8@Z]Bm>S1&g7TeړrD_Gl-s>OR'K`fHу,'f!2' }m}ۚ|2[&Zodl$tB1tu%3n B&AsT3<~\|KF+5η'4rk^ BtN ~49 J8)N{'PrgܑO6(419(GҢeq )7*uBO7=~."TwRoPUl.Irڠg>`9K D\+-m3)}ɟS4sA)}$WvQXhߜUp0id!X Tb TAͭC= 6$3H#n2g!CwPk}"Ka&zh3/ߛrzP!̏Ƅ0! F|@4`6?q- Î6˘\ {5+`o ^Cџ^u[D\w?}X&2$Izdeֱy6 Y4C}G?W/*k,)dcM@3D2%mCylqS:>@۫-!E ~==E=BP8E*w-Q\DCOs3SoBl%7"tn 90'FdS˫" hJe:rIT_A<™J'YRQ/VS6e?Y)\/Xo(ؒSKW,[♧ QUD1\B;HEd{5>(r-<}o1"rs;¢ aJu86M{j=2w>nCuUZVZՅde EX \d *h_6-`¤Gti`*҈Y%IOvNߠ#%۳ݟKLA 4=Z9%A;{[߳ϱY?S|On*^6h-H+fX.uWB%0j@\,1[$X]M5U۽vB<8g_:z `'za|ȹ"xNlAKSPDnU`,S&rmCTh&SaOBĒi\xߡfe \G3  c\ ~d,#,y18Rmv:4`A#gBd ?ll&VykM)>`>>Pu[o:J1# <\_;UToIaZcVd/=l'd#WcqOIRK'O6mX͕9*v> 7^9ov";3ñ)T#! Yl2 fA%g)؝t`eޘhAyMOƮkf o᧯N&n0RivoRjojN1ђqL]^"arCu^6RPJIェObL D`2GjScI`}ɑ0Wfodyoܷ 8'Tԡhq?ڪ #į(Q)P+&)?dk/q2uMs]߿&a`&3xz2ҬV\lHlYE!{4obSH/.N5s>RՅ@cX Eh6z/y (#*F.@Հȼx\Pr:+J%9׹+]F 떯&XԤ7g;%+cQi['TD-yMݰv$ o_Ui c!MS%%V mF4n7?;:}`-riq 1b⿅ hEH dP_<9c_E vCvLtFPGnUj$jE:/HHN&R3Xp~u! mR1#ꮆ_w|}0Glk= ɼ A)',uf6Q:K 4xE#`WٓpWb7ȅ)o}wE͢Cȣ [%ef69 ҕ1=ł| pg Tfmb;4yMzMmo+",r7pzmvd2MuUj#[C($: s}DkAZ mS6,,'; EKQ=͗hvvdG[LVC/9ʩeX)X" >^e> x?Že-H>M,A'sRNEQڴG̔ƨuص'&o낑XD7ųKw@76فjRWU2Klh'?Y3݄@Aº~.„@$WYM%4+Vn^?._ka!T)$^&kRnnGSI\z#m+f@d6rƃ|&tb)ZсiyN nnON,L3HRWNc ɻυ[n(tզi1GaRrt |MPӛ<]]lxk [Ekyr{PAZ^./¡.ykGaA.֊Z#lhƤj퟇KVPY4;$*JAe nt=@N kJiRG(~a]}'4ɦ#))axNu=qxFӼyωHwDR#m!qRj<}ꥃ<-`mͰ{ΉcU_ok 9/H`.:^+l'[d2~Ļ#ݸ|DZ0wld5絺 >JcO%9O 7 *ŷOpI5aT0w >n560i?Z|BFszwk6wlNΌ0m´n97"h7bGAgȿѿms)^$'a r<(`2|P??!'kNF,@ P#in:R&t-MH Y!iGC_C[hO,q.׀ (SwNY|E1}K" Ji;H{{g13HTHQ7ߝsK?!_c2*oyy26X( N`(^ j )FQM8nɾ b-y (<r aҿC Rl>7:^Vj|Wv$ G}cbYP$:sޣfFu4 7gzH+$2idy9,rGWA骽UOPWQ5GQx jUTJ; 7X~$+aKE.f*aڝ CQ"|ܘ>!0sӗOr|]H*?ʇ/nYpܵ ذJ;<.]]8Jӑtsod#/Yz#|^;X# (FWڰ/L dW6R%*[+b Ĥ)E1`uF$N`м'FYP"q%zg@4Qw3}>_/Χń2Yy#0Le2ȓTΞEv|M|5P{ǵLV}w٧Pt*I6DP)eԣc5"s!Bc>YbMd/o_P?]ɷрX1%bQ8(xH ]`h/:ӓq^G} gfqeB=`)Xmv|s05-@db,Wa(Q}+XnH%3Nߢm9NrkjP.C5SC3& (<| ] -*G(y /T;xt\J |i!5'g,t7jm/8!R.^+{,|jTBs'<G eďI>Wq} /+ ֓vGPcjTf$}T;zԧd~Mqw`?e@@fK/n nE8x|bn$O0` ӌ1&Ο!^F7Raj>p !Yu,%ԔPI:C[_'8!z,OdH9E@W4TP,NB C=I3Y[c$*sedcoيa0|TP6UAqEz\7DdS 0`QP>1]fD%lgDKPڷ`O|iB%Z]3_-LP CSϽD9?RBUJm=s cKl깭RS|x&sX㗌D"4}Rko@fv1XUykMP*h؎E.8#he7ڌ,G:" CV? wNia -r8p%C}Խ/AeD2@׊~WE 8GHINw *a}c.}e+$uۖ1*2}#%WJ˘0q2&U=㊌ @aW(d_Bpac '˾/+O5hXc3^~k (*#4OP"ꤊ̛ #c 4Y)W1~L}tDX>ovacyjxtŎvx4a!5 lY# tya?ZǿgrUk'mL| cHpA)p&%bJs&@,b3/1!OWk;즞E԰5]ɚ.=^u'trYK~+Ins"$g32?5LzUdF.* dy]#ڽjICf%PxP/'C˭D䓵5 Jw'aB7 6)&JhߤJU |YA[Ȼ+>^@#c`Bx-~3F7QYNZ'EquGkÇP`yfY\ᴞx(Z4`fnHHyahNG`=򡴜zj90J4S.L]Q 7IcӶbv֬JLk3= ;WD,1|yף\Ny$3q{8MPJ)UUp[.Ra{$w(%ӓ ,]TA(ތIQ҂;)Q/NC^ 9M[HR1Ē]mXm>j[1%7tOnZ h9SO-,ju#RIw~0LBJ߅S:7wqCKџ`13~\d="xy?m8ohnےm` >lI ^t%l_cyO~*7S6 a98\ݩp<6\"/r*]$n&WAtxþz>t }qbM,ٚlmV n+r^`x9~_oGɋd+X8B--XShۼ"!7/@傒 1)v6Ҝ fJO͖Kx1 Y=7>J-j>#IF6L׶v<>oΜ>;,f]/hpĔ!>G)lUO~;VRѼmo׺>4 K-XoٰR eƃ" eHz`(}2;q7? (]sVyFi+gߞsN -b2=I^?;"A>(CR2{( qDXxb6/Jy%җ:W _8 ~E:jyq颈(o"E5v>$²|Vn:q4 * 8oԠ*S]iomX8kbhX[0[hQM>: %'ss Qm#ܨ0m?LQ|XSS::B ܎;dpW<7b?X>6>f`Zg(,t@kHJ;Ǭ$'5S93D<08Y(XAT0%}b2~w}dވX&3q]/^3}MѸ8]ar*5.,(:}GC!0ˠG;RveD7QS+%%h$'$*d,^>{5Vn9u(`Hjܷ뉗(m(k2ZA4QqĚ5x!KyXƭbX_=7=^I&{^ޝy6WTڃB^I}JSެڑl{dnNy@jRXiL׵bEcoQ&dDqO6Xult(F3 /ɕ szxbCKRMfnW,(r?Kg^!;snLcΧ3`*o"fL]tc\p0GN* n'i5*jΗV>nijoZTʊ3&N4^aL8xGiCyԬ?2R8nc%?4G9j:Mz.6ݥ^^˘ 1Lk[y"4KV˔=k{_AQ@&$Iqe&I1}I_}rӶ2ݔy択I#gkJy.Č~{ʅpRҍ֒WS^Y8'bRv%V,{w?Wn|74cAӉX]0*K/(e5Vbea#nI܇Jt 280ډ^&;bN*6#8EzYfsdQk {Onvex$~:{u0nq*wW@XUYpx39]r2;<_j1Z1_kKY]^YtŽz|j^'.!8"d d(R-H$!AK+inE+;֒\-x\H+~Aݫ2s?JUB\!j1@?l"1ehoôQdBUwRq4@촻>_:{9YY yNfwٱAQhDw c9OuFC&;s+_؍T - ec7c}ƺns ;})a@)=_ hW4ݻB܌o@өUV= Rjە?5sw*ZhE@CTGvѬ%;6ӊ%*ygG?BhO+ʾ3'.qĝ(Y*LxŔH,2"(wP^ 6a{]1#hh·zZq;Oڽw{*7I mk.< =Bq'I>ʀ2outFFka8Tm]/ >^E ^x"Rc0+y m=8 (Rw"RJNu|R蚄f;(rj4w\#$jt!恹RE=|x>L)1$!?,ڋ-63㉪qA:fT^߱PTVh@Օ9ǓC<co& 9 5Έ uIDX෴&WHA Mfkfrqd=DtdxbDl Z0y^%p\XYϺ?(3Q } =Fk\Lj N'CçwL'p6@+p.^hLkG!I?Gx\>ķW ,SzE wcFƏv> {[ݗ/0qef+:+]͒ il*J}͛;ֿb3. /UjA\9K`&?QKШDa\LT|$aUEY%/; i1D`ʫB5~7̢J_3k_RK#=T$]E"GxO @Q}E7U:q6NQ {̂$R2Ud ^+2 v4 !-(960=_X0q؛z v@:_:Tn>VK~HQ;x<[ƫJ"X.uw)/VB@*3☕rwW1$EQ*r,C]8Y]Dʕ)w0o<ӕnKID`} .B}spvyv//J 7)֗,ksKa9hbu` L哺yW^'!wd蘧, A3&P63XU4h x0ݺ}#jqk7{}s j;G;{D;;8HoJ-Nikҽ>{}אdzYq ݄B`m$ U`6r .^H<0ެ K̟>"=P]:8y"M_Mpx뿒rebNDxiX#5;m;wo5Y`@&#!U1ס|;oJh0RrpycwG`>ơ hj墉- _bA8Iȹa#C/M!Rޮvp uP:Jk‘kVIH99Q6rqW5O<_@\Ѿ`bhP O/ҋSvE(|Kw~d.34f\!j W(%}xv*Y2EHT%9_Kko8v-^ c ( 6\7j9#I$U1IߓG=W$Lz@4ƅY9)FjϜKE{I<] O{8Vv^; {$ `*1Lwpo8W@f#'䟞˨WBIZv_>CgA܉/̄Zo1F2 I_j:aZGZ1(LHMZu#yΫh}$l w),`?J,W[Dv\%is`1 tl[O3}PT/ [e3a[a}$V\m20캮`/X] >J (qE~ONML!+dXQsqnʮ p,PM*:/X`rڗЦ?u[tY v4_`W{eB $Z=?mR$DѺڇF7A#Ueo:Jn;:;MiZ9:ښddžP[*:p.ZCp.ό[oh3@ &i?}swX rk&XRh[e,u9qinY?3!Z򎘭' w^ab$􅝲6,EվvY3 O8a9 Am,!g0ʸ頪BcmbX/Bc1]G]pY()CJzK4vn.\# ›mT>?x- O|(i'L9ɰ?ݾqIx !' Pz_y}u)P])q09Hc2\,2bߓBN%[n1dg0!A~>VTܘʎj'FbiFt W[aq9cӉ/wN/dW%#;_~On!2|U ,3h@8cw';L;k< 2n꣊YlI#P,OP]>޻\6fm R dddQC5D_BaT@nxK 6yiϧ`BE@"6[1600A'6n ME!,tm4Ág唖Z(_1]isJTC@F!d؏w9oBMuTT!f)0<&%؉haFiڴrLI7[Ob5 lU(>9 [4ӘGGi)KMr=;:3j,)lZ[jGU&.$\JB/a{Kv+[1(Mdypy E# t,_"ӏHJQV|s(^t4 U̾^Xsqi* dv4HrM4tq hƳƪg54×1B t~٥-Q2(+n4uom:X/ :D5N *Az9mH f;F{{VN7[qUf+ "ʥo |h@gjlys%ox-fl_ 8Mϼh4]AW!Sh5:bI)UpBhDc?XA'tqUU}i]:['C=GV=N;~M!6R*AF-a3™-?Ij8@Zz`B|rp%F`yK-=pEwEXi  vT#g%{(Gj2ADg!܆mC|iǞ:+pdZX+sL5FeXo3UHq>$-xbo3kJ9k)Kd _l+gJ?KA ݻ񉮳%y'_^IyE9H7GC%8O:ZzF;~G; ls氉根8h|ֵsMC%.-|^}[ŗh:1 -q`ET>Dc ދs\X5fXfD"ͬ*N@RH)һֱ̊xwX~e~w_%}~w4?JmCGQ}J5Ҕ _W2OJ'=-A[=  =VvC# R%}Q[>2H*hhSѲیyZyʭp)?kthះ%{ lg: 'YSeV=q2v㘅c[=IE^Uq8]40zo,cƚ325u 3+.AmNUb UĦ)fxb W=evPuD9BXNpXZEf{CNGR-#BʭA( j`N/6z1&>nZpDd8K ,NL7AUS~Fn}1h[tv<;Df$Мi'zq{3-uQa|o#6\+,*e4d>]:l9=d(l 7aH K1a O@KD׷to̳$uUiX_⹺".V冾p:\ለ}4'GŝIP)kcPt|KD't뇊‹(^GT˯ƺG_'mp~V~іo͞7O!]>*ɍ179xjeĵɐ0 "Ե<1=&a+ zdR u+n{20N2U6C':0z݂l?~ܛW܁%}I d/{ˈޅjn2++q,;)=} Uf8!h6G7w$͋E*ōZKyBЬDn]l C8Y! {Lz zp0Ho푸=VcK'IfKure؍gw~k.O¨JZ/JL+¤j |͚W( ⺒KH'R?% .McxrJ)c;g_O)nI}QQR?;"_2=r=sy0Le  `xRHZq7;oe6֎RUC<uQ$‚#IǾijաt@ n6&B5[046~-]v'O͏|Xt:h#ɂً [9$c=#4ld#IA-R4+-S_f&89$oylqΕ|jJGVdQ!cue6\8|J7+g{fi(xKNjʊZHcNMkL.mxMCMkW )VDQ¶wJS:V*}Wݙ&ȋSHŒ34}8(ґ9斷 8 ;ZN;RR?P$-IRΐw8(}96&xVx( ]f2 '%F(|9y..OD]ۺM\@ Yav5*bJhXzϫ rdT16hVKr~i}9y[GmuNU\>`h$0d1)`r;g?a.axkLJ%*}i+@gsNGDBV3Á PT.I<«),tpn 8dyXzASf`|EP8\(<%4m x&lys2oMu#b>,ն[R0( Btk65&"u!~;q0  XD%Q[I"Moj-ڥsG/qH6tM&:>zCV${i ":Zِu&VaLo\I#ؑk my_t'qEGٌY$#b!١u4Zskŋo^C4F&"uiUN77 s%?4z0=Flsr=L cgQ ^:T4F\q?+S\٨n >S} FM$C!mhlgt&(>yj9,?AUSz8h =REEߏc(EOexe]Rd9nB1R0sA$k~kR#պA cfg:ڽ ކ1Tr:JIYtCX^> W7{'WҘ胁wK0ۮJR> >[ZsH{lM _m^u|}meOokDp2 bξ0=g@fx w"=G!T Y&+v*3r\kzU;~]5$n:V¨Dth"{mkJe"Eq{o_/'K?F`/:LxB4M/S>½CO5Se3ss_3a&ԏc(IG⛀n_` 7SHF)Vc๝ù֦9jC\D WR1CM-iy?,$"T\ 7JKCxfRuDX[8ӭ1uW2Y-4-Ⴙ=x _\rǻ`O*'vqy͝NfyP|#[#ƿ:(Y >KyiYfZU6t"7e];[jﺧi4qA?d؇M8Ҋxy!REv gkï%3ZSyŇg!]'6^ĒQNuDqۿܩэ"̩FZpK/sۛnKVZ,k4ks J|0ݩo%_oՏPi' nŪp PҺ!uwx!'W:^ Rt#/?Z[vBEt;ЙUQmE߈X/߫Q΄Wq.?iQ^Ģ9@ ,)< RNNs%WjW`t<S喌{PxryqЮ@k!.OAHd-*4Ty~]dgG±Dȏ"*WFC iP,ӟ =Y۪ xm^7Q`\銛M~=}DNo;Yq>zj:isx{~Ȣ0-NUƄ2S 0:bܙӐ;""ߕ DiBUa'!]ē.8lMj7_`A\dFmˤWiO+xɵ kh|Q%T[ӏYX:V' <»\ukB7y6w^)wmQfPR~'M"6yC ?ؚ۬"ӏgxE $ ݋rn.1PNK"7GYD-$gEf^k]E,>ajuϥ_$>X(8ӻi9_PC*OqFÈs[|QlGH;3T@#nR=[p4p J>ë/"k<-q#bq,D^hq;Y)5v ͖ (u#$_o i=Jc3ѷk˸Diܖ E+E"+ \UMGl>nFT鹷$;d]%ݢ-{i}C?$mU, 2߷e dDϻ򺨚WGmd`.U/hX8\W}%b mhߖfMR΄tҔlKկF(jX)|Er6 3]}$E88 وoƶSjs5(^'La!鈡N=( S)F ZCMJI67S::40s9jRӡ7;0W;cl6 K+Xuz!u`ƶ@̐q*ƙbXV-~ HA P|ݾe;o"&V9Vt_C)?iDA _rU.;E&͛\z=:̛.zM]4T\TB7lƿ6ǃ̌G 홰v[Kh%3ԡ";E[i,!"o2ѷJ-28].r`npg[hB])lH)&,h+ ?DZGz,A33PEx,g(2hƉzJ;?d Ǧ$T$$8Cx(eSו z̈́(m;3\ם4;̅O_ sZl5WAuPgxێlln'NtMbO#8]%D|dYq[[)| D suo$pj![/ƽUIH^ߥXRF<AM= dWn!\4l#*접\RK!*VVGVIgT 'XIݣ}"RV4؃SEi_I~}b\͛~@Vm\azt jn2^CjqE6= Fd$N3M/Hv[HgPgݑr|"9C > osCX̭o㙨34dJڭ>Hy,N7~Xd9nz-9qUX?I˳pr[#wL-9@44m?ؚ 3J`,+S1-ZQ/Ӛ<{Jn[U~<Ĝ'4%ՈrFrOv)ZҾ $@aY(QJ>i7z|6x9ldB]="\ij<*jl`zx "͑5-UuJ#6< )n~C'/Ż]_)y?hWb} D!?S45GF,47Ka(dRNdUpf꬛&jJ!ԥ\uayXi_\F{JZR3 e9Ç1rUY[FQ('\RQOoQG.gԋ5e-u[eiKU^>$~.Y64c"VG\q@j_#Ixst90%R('UrHdf+ ӎ,jp.јXkX BaQ\VУ.xB)A]v b037(28ƍ\ !A.<ܺ@|vEơ^@Y%f(nӬkx6!n^cY'kvslbU[IJIN8Ӗ;<a0$[ ņ]LJ"bHfp!_LW^iLeO#TfRcә9Rk4CEB7JdY:`{v4*^FhOVPn1?XU)͒9cƚ_f{2F9ZGvW"nw~QĶ#h.|q$\x0B$NeL#I;aIclP#w4_Fg6q$؉f5oRڙ_k \Ȍ-m"%]h$y$otzŇjIȻL gLR+3R?%a$dxOos tY.H3 /3Q=ڽM((h2TV%ˣZI9uil+z4Ik.o8" {B3A}m-Yj/V48q!ج^iJ5x/xúH=d[nqA qrp<@5!M,e8m: \[%%--'z)D~(彑dU嗺N-Dkm^\3GJ}D&Qm~F :\ /ZNq*Waس8LH:,޶"veQ^GPKN&BW[p 12.Y(.66C 5Ԓ{RĜgXy[%,nhJ(K[~ГFh;>wEQ5C >dRY5!b W=: u`Sb4.1V -ʟcܙS,Jl­g͆fv;%c/5qJ/3^!Z\j"۴uߦZ=ߖZ޷RӠJ%kq~,o]un ηI8ю&C(WNg!so3m`W]i]/13ߩΥbH=|9(4$t/z\B&HPwJM'@ :D҆e\8~Qݶ :(5*],ƹ#uGYg4Ṷhc7qf ǘz܆/oT% }yNYW(M׏zfZl'8+:nOxG Ӛ&ʀ0jO&`_EܰZ vm0Kv"r$%V~_}Cĝrkr0@&q!@gz]zbss;x}j+fxH`.Nc%-܋k[s:zֲjG N'wt#=gY"LnjA&/%qཪWw^zx8|U z!ߤ* ]xy)Wy,0eEy[eױu??1:}Oo$Y/y5B)FHkf5>|67' FN>OtJϭa/j?9"Utv?W놇?MBi"]"~9q!}z֏ӊ*Xs٨[sIR}nW!{] X3> g%_E]ceb4;Tΐb* ryc-h^M@F"3Sv8wLĭ / |8Sg1p"ƚ\Q}8%ji|@Jcaʠ;sЕM p2YLcuXW'pI]IG< <ⲗIa֭͝v *>0es"XUIh~ӏ&T>0 ڙZcNPރ=;߅?w'EL׈@ vusŝq|?Vn?4HKS}sU!$Zl}BɗdTy8ſ"/GKcbM/`PQujBLJѵԌy례?;JQFd&, ɒz,Fot谞&/vGh߀\o,y(.:YnjAb_9hsq>7o7rϣi|TLzeO0WAGC;PU7sՠ* ̍++sh̐K;/F9)8.+bҀï)Iv&g>=- ecF?~)i"p9D@x; 2 XӭV9S#n (<[1~Ajw$h|O{w,T'J@J2T?5/Zڡf1g5R#3LHJ(h aCIP~A: "Uy5e89…EpkbŅ &ܺe3ZQDIO?_%71a \ `ۓ '%49k6YE[<).Vy*_ L^ ӹVF@rW%eKbn@Dg>m(Hߖ/ FVSdCâEպ{a+ďΚ-,Iw`$c*h7@wkI?GlAy?rC^u`BgDl;{ԴW|& .߁:!a -n#x0s]TzF7,J5P&Bf+s8iذN֮4Q_kH9qJ o&\^2fMMQ?k3[wU*zioedcKre#O:l0p5i@TiS{@fܢv5OqŞ_Z z X|6Qߝ2fYZ4h]>yAҺa!_S*kyGĵz8Ezo^(Rl+K-niA,;E7Lƾ*g NRu^wM^X,3xMZb\lw&[ΑAߐ% U:4yPtz~LM"UX[iO]ub@ ;a]X*iX :oL_5VuiknZB p9'fgqجq0itsnL|U+YyAo,і)~pOaY\خby0뵑O܌< mx9bӂB,fQ~$=ϖy1[ܻioeI?yfQjrJuNǫG<4Ӽ[_N!_hjX o$8ar)v+u"Ouv M4TYIQIE+77#(l0py_e+x8Y, a\0x fR͸ 1THIVS][Z OS!MGzB6] cvh{@BJ 'OFM|4:[14Tful?2[,Q\Je=&őɒ"yzir$FUB,{(X )ǫ4𹄱{WԁP'靬#\ǐQn<SeĸŋvTUhu-y]6[GEਧ|a(һv*0R (ѾhMEu╨{NERtE%4EdBY-Hoq%IDy9H]ִP<&yD]Z6( 1tteu]lumdxQ|%$ttkc= 5|lorHƍagR0CۜϪቱ'=.f;zR8U`xLo ~uȠLrr+QORW `f)mJ49n/4ZlC] V)ݽ苚!&ƒK}0 DnGA1I0K/9qu㥳ȑzUW>UBDɮ0%0 hNCTa^G*.Ӗ"s=^,,9v2! qإ9U4 4exb BVhޣv+y4<%:T4[>(:YWN Sv k'Iԛx-fS*GҵfļB=N՝DK_K$ʑ (52aL肯M scO9-|~  !6y>VUncU^y$ayPioy bOvKi](JWku'{ %g<{Lg.nq'_ʾV~UE|_}1 G@>/F]f7vqZ N dUe;V1A.RB)،?WjF[)i^nD61`qAIps?1?,3/%BϿJjE ~ si g\S) F|079%)g{fTX*'{ssn)E4! nI[e3v,*24$ JZ{4awtMڎ߹Ig3l&O>c3DcReibR/8?>lWE> J=kQyp2\^h<[I`6KE؇̀D/n6%JFrӠv9>krb?1TEIGRmDn+kO7K*SΑf4YB 0FqǬLvBE \+Kժ$E`'cg@`G?Ӌ0BL6i >qek0S !eGիFtT-jn|D:<Bp})'5!o r?l3{t0zꘄߎ׃1fPwz'&>wuux[-Efn| a]8ќ .eQ57veyRT}*c F1멸ì`k1[7:(c2Re`v'ƅOkr[qz20Oj:mb.^QiihpSWjJ2L5Y }kt(~ ðZę/{N[}s:5υNgiD@c9[ka0i{=]oi4FUەRzQ2r^׉R%LCP+~ZuHL=V+5ɚ`_WGMFSN]X|t+!P[GKQ xʳwjA>6S/ף@G7u}[Y5<̈k~Y$%Q[:Hchp$ lN:nO!`YJ܅FK&XA'X4`0(aIݦ3Ҷ"ۃ'6;^a{`bCD[؍b~(fN[Vjӑy@+Q^ oj^A~EqLň,q=Qz7lQ]Ϳsd\Iم/J1P˵}pT ;IATc^ [ E J.շXGxww !jgIxJUZr/fEd/@[M}gⷒj6E-"57s9֦KqP81 aOPeaLo&пs4\PՁ5Nt-}e[tWl?b tf}_st7>EՔz{N~Vl*M̴y#Da!9CM|zxPs- t,>M */&zNE?VEx:f_vAVɳYChC[ޤ`B3/Q,p^;ϴ(tI3aMv߸6<RBXr{&+XD(߭[yBG*L;Uy^6J\^E͟y!/!/??'@*:yyؾUFU+rYҕ̦ߐldLpڸwU?HO- ݽEH*LDHG  ]D mAWDJ韶A@ToZo1z /ƮWܥIim1RJ(RH5 ']x,ifMlC`1~nNe4Totrjm2ל<>''226 t`F2%ȱ9$AXjn)?4%,cֲf([ cǭ%.uήx2޻t`W_=aQ*$!< !m;i qz߃{oXih 6EC", .M Ä F m;4YJKeX8p6^MďY ֡tɑ#zXZ dbMP#F`>Gv|c-t6ֻ7XpT̡=-ss?:]rc}E˰#g.ɮ.$ {Lgk6bF7+DHym#Lpg*$3e`9z@|N<R'[e׌8Uʁ:swk{"/J-(]b Uw '[[ WI"FnU/ D- (Y>adɻ`?wp+'Z"SC'ӧ` A\ucF,`6Ȕ<3q[EM}m&>"چjsmvf딦HwѰ R-eՇ6 d25T(G:@m.\g7$-AKC&5̬p i!'*YvfHi)qHRp]a}Qj:#d#C@nwKv^1UJ\5';ؾ:]"n<=y_Ð4Vkoر/g@LB)qQQ1vݨO^A ~D߄48CVw.l R-xnA& /$(*HDM+: TNrGp5,;^$\P%K k ({EV*_P\nFJԱFmKZb,iUOq4qf2,i=n/lww\>t>gPYƟgǕ:LQAbҕ2VZm&Nj96܊&4HotjH}bO{' N}qMSG[ ʊG QM `6#u/2q4tP0#vjݼJWZԉCU?NkW hqeKHEe|0P{s2| Ǐ{ G6E CI֢_uKMiQBA%R6N-8^<)Jp%s^3~"J&&203v*xdO.Kډg,4VK=fry3nLqNQvEMm?$]CD5 ׀f}|5.?p}{`هk|r^%հNkb-W=P,Z wOywoFX+s!r+ =]V^?7ex֙aNW蠞o`zgI"TxiJ@F n/6 ZCЊJ x AU7AS{Ei ,e=DoB[w ahG/X-t []8> +webvB>zVWVnb=/!:px񲍬ȥ  :[YƽMmo#4ʭVZ$`+ޝ\? ) yۋ9k!@}TJR~N+k=4- G-T 9SxXL w|u^1Lz蹈S~0]΂پd w{ĆKs7$k|C'Ypao'yj!:s䄘B~U?C5p oۢq9d-D3ĻJ;(~tGZOZ Y3(K޸JOvI 8BI~U7 lOg%/M bz #~;vA(aPh#Tۍȏ>1 " n1JoKMV7mGVGFxb U_{(苦.lT$ށ߃!rtx۾/#l{PZW P\Ch/Q0k7.yr&!wȈcA,%U~ߝi'AAu~sjy;L zF6f8gl_i:n=x[嚡r2 tڲ;r{t01mJ] ,B5*f yq=&5w22`b.І w;P>27_C@^=^IRJ]{PB- 7RV@͠Xqj޳{3i_ wmW٩ Ʋ(5.,Rvm:}GA~7nZyV$q$M Z8#ψ,>Z^c?O:nm:*(o˄Zk$g ##UcYT4FȀ<[je~0szh+FV eЙ #&9sfYaϷ0pU/DJ{5tٓ2[]D[3d_"VXr6a_&<׷<:C:j}Vlz )~21F򴦷P: ܵv;c\=vh QԬAz TFz[,&/zvȺvFeV5Q")orL+F[SQ>=K$LC%Bl7WϏNlFkxv'zeە0\ۮ]",Ct)Iі^TM;% ,>u-Q^ٿUMrbוWύfl}g@W۞^yR{Fj?Jn%s:Dut۠6G3] 7ry.~[ nFppP٢ƍGbs$MmsLhmx"[|y[?]bj9/;v}2U`UhLWDل% 5xϸCqي6|b]l[}ppl4ͼb%%q*q/knW#y?0{rn}K5N/-6*ڝddp̠ =ӧF,/T`&LBX=` q[Z#bߍ(NvN&+|+Rp+vȞ]xvqЛjYSlݑ5ZUt&)ģ*9{)ͪMq}KzVĢwnsMC."6Ll霻d: ԚL1Rl+yM<(*kO#J4cU >Xu@v&&W~ 9a:dX}RpAs `b$}|l4xsL9ƨoi~:,I69L/8Ji҃Uj~^aA+ӛNI[k% weTD-.B: vn7ygF,|Õ1;-z+~~H<2K0y58_cZsțTWQ~ W))EI%=>|Jt3;EՂKZV$$T߆ خ9,eQ.^JsG@#U ;#v|ة!?2 rYj&6;%Ĝ<' u18*N*mm삓Sk{87f)pC%х wﶋ˒o(Kao ːH}+ JnbM&_K=Ym?-PES?wtV^=dQT/-~d f>$֐}fn#iΛ ߽^`d=jxG"FHV92>zKԗä́+(6~;Ih8o],  cݞ{% N$,QU"ϟ X"uV;i e2:)Yi-2 o^b}k :E`Y%8d7L]P}9EH`9'Y\ {ᆎ ?ԇY"khEDu!:8PrBtPO*KWGj .NNo}HIF{EV<p: UaL?a*KK<`l*Nom) iM|n> &zj5LǓisAlf U)>]ɮB.t0$%LߣzPdtcld tgBtĎkeB2r9\Y& hY{DѰZ@/>LփLLw 7ce5a yRG2BK<#B wӬ$C.ۡ@ m~LR)<%bKvow%p4Jw5`SZ<%p^ƪ&H۪uTVV䫧Y7ڻ5*wE4=%ӕD$OeI%XV_77VH* I'+$IrȞA,X#w2 I3lLHR_Ȭ֝>ݓ.?>dS>f*{f胣)q3@uw"x*F"J,6%G^>^*)oZ5`Vo :Y٘ Mr-,XӰ&drx9QkDMsz5䖤EʝI]mi<"h{3ja Xd~ p %=4b4|3BA-2Q!g{ OuٍXb^P蛪\uƉg^9eVg TW.ؗN-S5 \wuB̭h%(6±H߇h:G-9[x%ؾnz(Dt537l0@ڴpAIR-m~4"B4qDsf/hBצ?-9Ǐ 5E$Ԙznc9!ԺY ZK$dԂxܪhùNICN\lupee} qwJ k:tFroћ3w\}xW1|D\Z8~խ :h-$f ps˛#Ey}ũPmZ*m+n60 FGy!Q3s9EJ!Dnzi9^ER4ߍďefy^6l#Ԯ)E ]^ӌP~G?hFQlVViwZj]or\ "qd^ouzອNWdi8I=fկN5d1|_xhTbf.=;G\[bCs:OS@旃9)s Yn{eh8MM኎LO Vw&drEk 6R5[I9l,k{kru.Wf 3hU'aS$VCJҠ`3~V wgnl9t.}גɲƒ;T^B0T2˅1iwM^"Iڥ@q&0yy?L)|ys^7͒(}^XabZ8Gc/N g' B܅|n{hI>;(4*JD Z4\!42r;dטZP=mDɚorEі_DFS6J"f1F0f[FmN|{{tLb[B9tDO=%vSzR _^YJGrF{lm spzќL/&]MDQ-S?ѪHDU!)ǒ-,nPJϜ 2a,hcTǼ tR4O"cDG.dtHxaƵqNdslaTx;r^'Sf02= yj&h>5ߍ*=(-z U 2 8EwHYIoЭ?埶Xykq )݊1MٵO;ò #n:ksݢw*ɊM1: +kh q!eDѢe[{g[F-YQZMNMD4r:vh :Z3 3+!iّOK@Ho3~E"ZlH.]a?X:o!>0 (1׿ͽ2.[jH73$ô)Br8Q AXeV%:_л´H) i'cyV ڋм ~g: mHl3˨~M,$/Ji "e_NuUY dlgI':)&\H[JtseȊxQHȿd`m7rF*Q~!ufU 4aVb;)(gk$J!ʯhVh}¡oy8oi]PܬA%4CYKel#ɂnEhaOIer(& St1) ۠AG#{d]cU }G6̡6;QXL4!<}$沽/ $ud(pv@ /KY!Ԍ?;rGHČRO;sƹ X!]^_>-z~!PO̷>$>#zed똾!pӣٚ (xH~쁅 `ΐh'*eN.`:_΁6MWAgka2$(a%Qf,^#԰$J{=vC !SòE@f ξNs Eq|3MK08la; DW^/D Pk$*9K>3"tJRûYB_&^ecؙ=DG:TfuOr} ʱUЅNy2qS##a{3KHz昪3a{b1PʼҴ9keɖd}Ep}޹J֏f>z6"qbNM]aԋrۏ7@%ֱ5^w [jd1 gtmߺomjPp(?(hmWA&DBq_~Ƕk,!«,lD}aqŽԋ 4g{n҈C `y_:=찺5֚ABTN,D'hFsߊ1sNJ$ w鰪a=K&I-2#L{@y"F٨j9^&0Q,a7]Ό S?:NoJ>'(L˜\Un\"&L R2X;jx96<^v05$+7|:7sCGsK9(`8 - 5)$͔P4wrNMس-q)\pZ ~4,=d]mhB\tWԀ(Wowh^Q2wR;F͂bh孮^ꐋLF^]\q/VphfyG/3VfBBYa{8;+4t.7 f PaHiE\0K],z>@ E;jln}n % OA;4n@N0@@=C vT9 Zd&jh߻o7ᦳwz<3^Ñd/5X  Ixf|ӓyH0Mv@CxMd?G)؍Q24bprXK`\hJ1ky{{r$!\4ԆluS|Ƚ:hU&l l2zfᩰ g䕃NoY3}<|vH Tw=;WS2O@[{Z< $T[7n--6I7StC;ݗݻ\%lv)#וs|<شw|$~R]L#B ͣ>q_<^DI^7ܺ2l"m뙖SWP0YfqTϖF]Έܷ.LYz~oawH7a\ =?x1YS5;ic_h G-=EW)d!v;1P#0gUʱ#q+a1FA۰W4¶+udZ+hKxꅟ`ycnųHMT3ϝjMuc8y `b'/h?| G@bx%2)O ;/OcJ\ӼXSpOqӳ}M5K-qH }pѝ R 7x8b3TO *NupLfjЄ}4-$_JS h{(,cC?zi1A)$oXeGi5=)@,2_jz9dW -HZl]c( F1pVUN=[]6Y_bVk ;ٟHm"Kq~g~zJK7:k昦iTjMb+΋߅d(J@FA9D B s+/6jS|.W[` b,Ҵf.ƚ5|V c!:hvwW }'#^oV k}xHJ *ͳQ▝(-1{SrW")Yw kY w:KO&g(E#R$y[[8Zp+@8xS IfwâQ;[''P=Hٙ"Se&{msΊT8 d6sZQ"i$72r.ǻDd;;*4hVĕF2+g_,6<'KvtBcq逥sIcN d p}U㷚c6=h]r#Iա[즎,uGw籩?ݠ࿈Zn}z<ΰ2JyKQ1W0%G 3C0р_cztl%HeУ:;܂`_aQ|ǎML%ʠHh 7sS`ub-UKA!qfH}~J2+q\ưhJ,-Z 8 5^|x8u =YbXM6Y-gJzMXo30 Ƴn׫q1Za@PH16qEy9s)+DuNJ}<;iۊ:n6O,VL?'ڪCʗ!ѭᅙFRmڤ7Hre!j V߰H(&:*CJւf#pu>̍dM;uj,:(#x?YwHrKc7yːJ`}ǝj-F]Eo,?m%d dS~o;YAA+B A-63jA|lR1+Iò[to/Ct2ټZxqrD=@ΔVt?kDa6ž_)\2UkBt PYg ԒI5k{T}Wx5d[)j^ ۝ 0Kó&zFSjmT| QX3RvKEcV r!+H?8N24O(x*XA2)HW8% Ve|tIe#y[BzOlܵW3AĆZ5b;g%mXLyN (+ɤ p>D!+Bm.9EjR>*,h3Һel*BS!3Y6OMeo+IaŰ `$^&d!1gL+ʌ(s[H@:Wp\~7*tZ-o}ؚH>Ю΀ݑ(a,>b#O*0& *̓$VŽΒSBNc|"jv{;4L{tFNuBpO>#z#}ır{\4(J!KA $,ܨ >)wF Ew8S(~>ƚM'ݓ?х K!`R'%?uA= 丶bXw0nb5NKʾ`."H>)}MxXU{}$8 ?챗öjy}v6Ѹv؅O%k$_4ۧE =-&䜃C-Xm(7RK1I?'ԹZwoR˗+:NCq 4ECG/?M:MX˦ۇeb[PcISu6&r[x d!..{#~Zֻ]7qsJ Qr,ꨡ5r(r+G%=WPdwVK yip&Af9 ¹Q8,?4X0pTqƵjKrNZ]R>`T]j=u6Cmr7ငAL(`H]@6$P&Q🿑 ]x|_/o. 5 J(4YR~Z;Nrl2Þp댠tz]cw!;#߇-5O aKD\WX#׼)q+HYY(Q#,^d$sRT%z4t!~9G.y-OƠ X2ָZ"r833X]{qˋ(%S˵gR#J \'ΐ# #KM*v:9*ΗyIXl?Cm);3gKgp{sO-~iNH:a펆dz4 9o¦BxU˗`nttbylr( X/;Ō!"NZbq6W'5mlzG:y$Q[oLR@_GE{y֣!z)Eјgb;(ER|PKwPk &I pmXAo1FGV/ubȩEY Z9f>9NjڏW] ?;†?0Nyyh0_$`G!]`Ὺs- hG4U\|δ-q>\&^&-ߕ6O1=);y=B35-qAd7jd t-r5Z3qPFiuYRUH$)H&hȯCg4_ lejC#{C ܢM=" 3餋omRSc/6Eb=TP&z/0^@`#AȰxɼ(( ڜe吅UyfY2ާsXʹ\ߜtEBkbny&ϱҩ@F r)T7B\ug)`ss zXH E:9Iҟ!%k~3T]9.rKȘ +5'Zh& ,WqIŋ#M)g/ϐoсjNG|\ԷAʉ]vr-Ɓ4tʛB``P +`?-MBKR܈QέEj+G^dἂY*pՊ8B#:jmI;>y䚈{ NB9/Ҷ SvC2QL rL^m*r-U 7ɭW06Rƾ#;:Ν }ΞNOA|]zʍWDj#vMVYjryײZ~FzC|v$3)|x&fa/%ۈ+tVq}|}ލ_ %0<ֺ.&K E4c9'7eGu z %8mvRJ20Y GRǠwwv$,c2w+Zd P. 1JypIdy|p,ݾ@b(bnrZQ꬟q cdk?PAn: F16gG;cc:FW{A9pN_.M(ci @kPU&>,Hlr7O^wkOG@{U|a WbYE!l2b֓}oBJǦ GyeȊ\9{쨿i|9*w,ܶ<_LCAɮְ/e0i:0 ?$B['Ad"J-|J 3|mޘ+QѹrR950۹LXeՐL'b N:]Ec)rpӆy!BϞ;衍_ YRJk8:, _cZ̞+'hxɲp~k3U9[>Amdw[ r2PD"cYx NʛtHj@k L_'8/+}ܤBsQ[[Xq`<5 w+^m3gZ< Z<mʞTXU<.s2x4+^Y_X )3@熦)|[|R/[(!ΙYȄWcS͈?χѵh 45\FЕq u? 4g֤e/W*'ou)ዩE &$9@!S"lEl|J;Mrh(P9r[~'rSp1b%Rw#סj}=<]I@$wu11 {M)JOL!V +:y3 Xͦ$W׼r{ŹPaĶ!ؘbcsƧY#x!qX^3՛9Px ffp,Tk5hFu:O/ʓ.]冬4OLW7>"6/\~ԬbVF٫9yOi 8[V,J\u ZĊ0Yh{n!S]Ai"Ѥ~V#C&É Fsop-qpZ§ߤ?`kɃc[rYsn<S8t8?*{0Jo1xK}acCe=7zNJ HXbKKȺx|hA=NSu ߢpPG1aD5<ĒW$>7HNrW >2XdD[]<]oAZ"" #xᷡ1!sCj.7B-q#I[I뽔0;zk 8_)MBJ99 ڴhkB|z?e 8)s'B+z٣5VDzL3C?qhi_ g<rzs/OmhQj"nW`igq|U(5. 1(@Z4?c- >1]c&jie ~Ώf!puN}vF)uy$k|7_!✁>zҕAe 6t̐ lP4>9AmeN: `!25D7H{mAk97ڕ4Re} <[D4] /\I-Ji.!R)+irX ,}4+lwMM5QQ‹,HK۽z?Eh-)b逥uzjh9זfJs-tK5AVBp@:e3,Q^?A`.3öYG& B OMc " FxHYYjVlڢD ll(m%Yʧʼڂ*05D,g#QD`A`]o+)SO$ XguuU͗CЈI8?xaҀ5iU^< h܈ۉP-% :̙gn'-ӓ).4U e UXwOrEx]v ER2e8ӻQBQ+J=[uDrKž= i]5|ҝdjneE?81U4`7}a|ؐ[[3+Rj0%.Ʀ=VS>zڬvifpihKYnV\0='z!hjqa{xDˍt[JP)ɝXqdF]P(܉cu5 ADʔl周p+gڪ14-JL х|"LN`} }>@/TdB" Qc$R_=I8b0Iu|Vc18 }֟奻*H=̤x%y3HUܷDcô<A|K5x#  %I/4;:u`ǏiLdh(_ ^_0&Kn5PfѳvZK'"OքS>W=ҹ "NCْnfQh<9f)X.@ω.>;;6TYu8QE '! 6BqפqD XM>e,E >VĪ0lS7̼9Ro͑g_K>hb",b]|ၹ.80STEa[9n5ջ\se;%+ϰ6B˳(, 7m_w#G&ǧ~o"`z͖ vxwօMj4秱-Z(B~3)'Eg"^xbԿ 2^huH1}45mJ|- ^s!!i3P=Է\Qv-1A7h|Ht:8ۑ j}QqWvb (}ߎaйT]ܱ{^ [ؚT z>$U&cTx*  fn>= KҵX=рkxF2_tr⣫#+:Y/u_^Pel|O`XE&wcC Rsh &W@'>ZzXu!eC=C tfeuÒ5apiїH#tːhg!mqCYxޣ#}Y RBSϥ8-]h:D*r.^b%E4SR!V1vE{/HV.F5^keu9[ՁRȸS.17&0vܾ8=+sc=Xhe0&|-*EdkI/ }`+28ka:o[(&dQCq- ^xv/?6vX 3heX7),V]AE+ݥ5bLχ*Ҫg7v/;fN;+goW9zt ~L/&/&6;Ha"}=˶pFE@=#} lS w=>.2GOYi$ͬg|Jm7CsnC,=M$J!IU~S] TlG'\ɏWET+še6mҺ1} qy`:mj~ lo n "T2gA}SY=d#;t m_`$ʎj0ǡʹg׿6 ks'Zs+kj 霍2J?W|05d11%L̕7T#'g<+gZ=BH!9 85QJ,;^rlC*2L|5rvcjA]c ]k@╢|_rr$.7߈rvz[R 9,۩?K Z-ޜNhL4S&PK*5iˆ`B6XS1|Z|o#p 1or(<ϒR8lR4vDpn~Q}G6g'@!>+9ST1p*|L|O˒"TZ+c`6*]Fm=3֝2 cr_pvT.ixr*k,X \8nZz3}Q=skh:4+k1տoG8+SD c#Z^6ZwݥUzI2.s_Up c܁nug0je"-_{/`Td;2Xެ3A|[uu+P=\wP{/5ly}ˏR= 3q=~ [.0{λanGw24p> Fٽ!4oCr;,o,jUA?=߆zT ;sdUޢ%aYr:^8T=t _!+&Hmc.G dP|@m="{\(|X6LSY+G\HNTx=]x_gIwؽh lÈݺu{2cHdDo39}X͉e!fw6P^խezGxl+k>>qZd>^5oIIdQfK2Y$*_E_Qo%eW꓆^v?8g]qCZu 9stf1e@}8s%`aW  a# 2Ō6` 07<ИűRMiQ7/0P!hV a<)Bz,x'yYgd.(` |si-"t G%+V%K\`>gcÖZgS:iɦ}ݚu4xv=F)S~,7_ :pN8z~SQ 5Eokebҙ"A,cr=Ғ󰤨促d-&I<]}HBɶ>+g/iÍ3CE,7m wh^`P-z`tݲaY^ b?OG70/Xj][8LoCdaID ;Zұo?dnnHJ0gTAhRhHg?=L)| }`q}ɬG !^ MNIA{FKiQ$*VF|ԕra$ώ╼x'"S\=#ޅhg:ԜbbmxQe-ї_<ܮ#m4ҳs,-GI@@ F`akfU%W5/5i=RHZ9eVB/ rrs7S1&vY49-صp cS=Y/~h M#Kg1tr,>pN:tX̂)c&jn?h*qRrZ~Q z- xVű IǪy=LT#!jxE-VMi7vkƟlr9`k8|ė _08QjxNv-q( ǦLm3D O޽C@t53, SB§>Mr}~=*ScAEP:fPvQ W5HzT׌9l$cFsq =qYs@q4$oL]8dܖ׭cv yN⬣yYt+Ym'W%is~Ïh!&Yz:z\nG}MPV&TZ}t^F}ʴ˜sP>N -w.xG`K-BuV&M拶?TqtXpмl}SA'd Jv] 6( 9&d2oo԰b̈UYҬpuupD(_7TWW23^D%sI|g*mv ݹexW.Si{xǸޤ,ꊝ0NE|}_ ]2?`MM?ne2(${wLa]ZzML 9Vcb/J/:MԔqw~N_̵gQʜlܥ9_:#TQmI;T' twz1HGe%1Gwk0z2z e5{/B Vp4;kiZ,YVДԳNX.:{ k$<p( Ze#6ટݲ Y^,i `,K8u+OWR`Qmќ>F?a4U>,_ 16=Nװk!Y!Ѥ=|`4NrYv8Y7k~Y\+/z9jU=&R1R!֦ umvR2 ϼ67TEWSxu]gu0qns.wcr<ʃQoQm9H -ϊU5ka f9D'uN8ʦ|"@Q؇ENH{,_'|CH΃yަi3T_x:Ѧ5!QИѭFwIGxtʣ+'uP e-+(Jͤgwf_i]8\ +h f>8ѤL'QMwT[ ?+Qm0ǭe*% T!xV{. ! cu1$4o"sr+8_M ²f1}O1MкV P(r}V?$gI>y?&W- !u3ft6cJp?e8tɊ*S5et&hd%CJdnMgI;7$Ծ"?C^Y #'Z ֮vs2e5]O >+37YR!)W3[s@Jg5^LjЙZF`ZYwą{bV)mdx3(j(ָ? d0s}z3&zy:LPoFe zP˕OM*0gcZ(1}I Xץm笻} -A]ʗL,$7 DH R;+C8]~c=^с12wmZhX1kw_O.bun@xyUhWrB3/ty&s@9<{13[NfZEMDŽqA㢳#?@`Lmg/$T |B Q h#9K"1ĽY[)[HPMjK״J'C]Ƃ_!p=nR͆2^3 s$b7rcK"f)6uRfǗ$n'Sg $zxӈ^?vg~%Wpq h>JeU3n1㽒7l{E02[?LO'b@/P YX4Ķ&c0Mv5uߐB|%J.`%@&^ 3p9 8~|Ǖ@RτV 8j _ѧlSV3Cnأ]~!vrV2 ,oSK~k{Ԭ" =,J'w)FYf"C&6^-z0MY)5ids\ljzܩ|0PCg֨dUDDg&y]9eIPNqb jpb|vqÓ}b}3[̘cZ2[8A ɩ n\hg=neИ2F7\dI+#FϤKДWڝ`xhGK6߲17H"K!cZ3a-nT`dq4]dtnA$D~[iTu` ¬4!dl{<"S)i ȁΘ ŒB?AZɝCegk=n'ScU:o|P?w+2oJ&Xé)] chO|x [9}eI"F]U2QE.F%*vLɬCyz#9a'|# u@y$i4CҚ};-e;?Mx>;oH 0,:8qAR݆z%9D0mkPH=-MIt!xCn n_ = ֡gE+ {QEd :=cqƐѤcNewkNeϓRo5Wm6]mG RaοSxxA/9雭{"9NBqJVPԹ( ް+flt!Л*kJV8l/{Ӂ͸&JKΛyLu ^o3Eid{g0l`*N\i>UOt<&5Uw4+$![@\W׵A%7شDד|Z>v(`ys.lvqגkrV9 ̀1S GJ?\;COhE'gG1h7ˆk&>`BiIǂPvN؅cЈNjCA?\pđHTr`^U {M}GT u^+퐺?!q&ٮX\+JMWó.Nu&S@AnM?Y (=˚7TbYծJ2qsT*RkxU﹩relQH&yZt`C ^_0QZ5j|D꧟a WٮR^ި|e({5+;Ib- MJ"QIR-@H d럕5K)5iOzpJ4L?6R=j8Kv6oMr-kq|xdj[鳝T ydQ1'cowtomp*'zĊci guh淌SnR]X@A+>U>6=YQJ |W7ov;PMmAm1Ž)*mֵbl ١n+d~J, .[S﯍ԀIId?$:n\kLk_/N r~ 819Bĝt҃tʥq`-kb,fkd[l/k v=(^v<5 i47[n-dʿB8"6Su깽Ê 3a@1v$orڇ&-Cwt=2"S2aV|A넭& S,u6&U.D QLN2[m1v- y9Rer0jDV̗,FOo.Y{l6+7xATÍ ;xb]3&&'Hͅ j5~n]1X ȷb8F)#7B˚/xu ܮU i`>[t՟Yȱ-ӈҹxBu#ѻLVteh:Rz hٵ6Zk8Q-qT΃3P1Ҭ7;>˚k/N#~ <\,QJ.N]rKùTܐ ~u; >n_Aި?;ft0|Ǝa_5=?#ēxt0, S—&קj7 ƓFÑ:i7a+LB $T6W v6< ^#Ĩ?^ܿ,;fG"8CYK^W7zjL>?d"IiWdk U2P z嚑% ܎ yi@%۽\[#IM|F"TqT4t5E%XTjRFhS"ےaW?ym4s"8D8}Ux$Cp'kYp~xf]n%4 y7kRk+i+!A78Y SHMf(:*P9t3\i-KPFVn;:b㠯pث7G2rş/Q>=FG Ra:ߙr'h8# x>PIiBN3VWN AՇ a#auX@tD\}<$8xf2]&icjb=-DX٧*pdD8X[8VU,nNW[hTe x*'&8MQ2jH2Ĩ'XG{ W_M;Et53ЕI76] e_]U-}r@PY@G0DdAs}t`Wa%lN>g}n7igP+QI(l!!J%8J9tW\kYVdF-Uh$;*Ρ~hqPDk?[e_N+tX;Phb&k1߁m(PfDYb^8:f;NOmltlJ#ijbkH>Iz|'K2 8 q [&S˪iT! +"*w^х.D2w:f1 1RAd, H&2uip1nRP©d<B{2|l[ 暕 =F6ޞk7010fz6 .=S8@#KzP9JayBs 7Сz|Blg~DZKF NmQ^R&Ht~;ghӏ&" FZ3;5b,dԃGpg2>:M#[ $ϳ+Ud ΎTnA]:[ijz7yspvEu|F\"[Zrr{<$*&߶.$"8UJfYЛPD$Wg(l.j܁m}tHքE"Uy,)%yxQCm8%߰dy+^e]CGftk%-!Od<Y$Yu9@'DQl Y<?tи;sΨNy24@IAD +>&i/6U y*wĦl=dlT̾ =)w̳\ͦhD8Y9Arz0bAmB=[@C`iC'//{kWiS Td4 lDJ# qo}BR;/{(-Ok*I9HzU\fue9~b6Pg[ҟ`?BD-*Ư]s4u=zzhRߞ\c‚A|זFs7W)Hbɳ袡^9V~ĪSPK]">#HGA)C١rquu'TG? b[SY\޹"ؽxFn~":.&e R#0S{(0L"g,W[68墈[ 89\rxA)ߨ'ÿ&: 8;ݫ3XƗJD|#ȅ 'qvkძU;0OqxYc'\ε*ZmZ*#py md!#ƙ]}x/HG,O-(ܤw>r3]He+NJT{Pp%Q3H<͏FK ӳ22^Y3zG; TY^k|K8lp|磋˒(*o30`Y[sDypMc#|f>ܲhZWsF=D $N&*š܊HzISEt]7m#]l-MU߱=Fx?dI1mtU68}Gq!1o&U& t>mc6_&2&b1U[27lf7Ѳ uMU`76tiRveTd4 Ih~ sxӸăp0ϒ jLȥ&\\|zpWKA[tz*XL `HD<+yLkV4.O ,c_i|΃'Qwe[x'}R:)]%/:mԛyŮ0r$yX(?VSP+) j:4H"ʗvx$s&1]c"fTA_|FU,"?i0cc+m7WH հ{{&U9+8.5HAy>`.^H)k(pFrRB<(ZIV !5(^0uJlQnf*5B ^!]@bRrTx Qkl+.>! Ij34G3rOBPXN}L?m\\h0CNn:4|%*]Lm]GDSY\2ZUb}?|!V)qݳ!s24g'(aLJCWJʞwQ?iLsֈ\On aLնAHZH^j~r6ӯn?Ӧ͂p&B26-sd0إ$YCX1ߊ*ܘkYY tmށjoKeJiʍ1*r&Y{,R3u/ޅxըI1c _ywP<9XW,Q;۶j%ۅ"¿\ nj?%eh<O#FV*18t/08+b'dŊ. XL.5Au#n,c:l{ƫc;m{+b =?'',S. Z'#n*k.ǛTPT@jqǯzFoZ:?/ 84cJJ^cJl2^)%=o\fTgn꺫!LZZ31 ;+NOEmBخ@r~d$X~CupÓE#Gg6:I/UӋB\n^駔&"Eo]WcpxLtJ n ᦢfiTJu77fz4ՏfBG'a}(doTbLbqHf"\Vpp?߄SfnluLH#pzF30~Z_u_YSEwZ7w@L|.9+h m&5$ }HVKϙyHfgpF>3E%D6 PYɪ?Soҫ}>gV<ЩGˀ6''GD%Iϰ ѭs4W֬ :panw% \ZO*چFk$䨬xnL{'߈m8d#/vZrHDDN%h+30h2 .،*KjN8J ouQ3Ij(QDsmQd=iL˟siSb' L;e/˴`Y9~ߴ[`_N%6úe9 y,tyjtބAWK<&T.k*LŠP;q[ylBURۼͱ JԬ.Ήea̾\ŀ;F8!uD9 =ڷ 逞Hc((uHs5.!7U/ ,~/RY'f 1W$x&YXF >a`@ߦٰ.>/(geٕ$Kvocg .;.R:w j&vs,1>cwCaQ}T |Zň5Ԍ8Cf`y) Pe9v<'e5Oښpv=Z,d@SC? 1~1 C( yl҅:3ӖEjX_#k6nd>,[~L /x_ɓ08YZݰp&S0C!W쇺x)L=\4_s kĚ8;_pl!Nۡ-_|TNqpJo6O L@Шb# 8ʢ UT_e hx FJGNš-#$l͏Wzm`" IVr aE&D;g]Cdn " (y„1QVaFI_Y` G.ƊcVأ||8e֘T1s?ٙvCՄbg&<ܷq6lj2,H_Sã [LpYz;4a.pHKĉCMF,2`5Y&6;4}IO:lJo{IҁDOzFyǢ*r?Ƚ<~| ⒃ =A˻l \^fcA7{GD#=g&Hθl:~6);u}%&fL`hP>@}e2d0%_Th._'p_`.ore*]C;:`rQ%35a.RkJ7 ވ$i M]x )T$#o/j]bIH1Dc{[<",P)/ȨЩ<A :6Sod ΒT3r |:0O$kͨTwfl/~ֺ8QFl']J4jD%eű޹ +Ԟt/rڳh%6+^f;v dH5Y$/ڶu}0IO,2)&Wy>LM Ggb?cj>Mӈc ܵ!Y5@ eB\*[^4]V?#0n4m\1vQ't*8iUj+J- *K6Fx=k_]bnEH x3;z&D `:iB:XxI3=TD g. J|h )~myǺ_x^|e ^Mqtr)k%HKkp']ʓ^CAw$y %KoR Jd!2ԝmG{uTqT-iw@`:Ju0[!"° H6CAeo_i0nK9y;\ݮC%lނKNBHC6^Tp%HL L^ [<2ϋdʐS7[25}@cYD#{hA*;A6mh/\Vc$9*tpiGQi0߯8IF g ;Ei;z-Y z[+)/Q(݃xmw!3&?',Y݅E/}m$S޸N4{Jgv;3#%dwRP<Σn;)7xmb2#W0mk:QClG*fp7 FoAmBC8Q|^q><DULqyO>Vl;}Z 2C3ȕJ_Oh]Cو!$OGXN2UιEV7}v0l[REH'Gr  # ֵ hz2^2ާ}V#~)8DC- b dR?ty; WϽD|:i%x RcM_UH{Y+h\.5il(6h1nPpr@M 180~;YaƞC N8ʬ,.[o?)l֔;PVQiEڸ`<{ܥo#//Hy|$KnFMcx&N*SBGV_}[oBTbܢ ?wnQ-:vU'MPu%?πeiIS_. M`4GXB3:HG)wpC>nQ5=xNz/=/^ٻcO ]@hMܭ"".5Ea:+|ȥtRzf'X;\I=W:0c4\da1Ui+l7z>cZyXMp]Σ])mTZi`KIp"Fí>W*/L%I^-^sާx`0KMqV1&횏y,*$V/Q|봥HÌғzA$/]fMDj8Q-iI> / e%ڔz.Mp%.d|{X[{aUi [^+5&ϴW|Q.{F*xKL٥qiEIE pgW^[|u= p<9 }$17SGJ~ &F]dHrG'k^׀_jܻV/`T]I?[l=Tz욲8L4Tc5MOEN? .[t4( 5zrgoZS`av.C:o˶[b k4  (dS=r:A؝Ѥ@cϤ)YS\w' u{3"F1'q!y\/]/9~TR$9=Hg3=F,:04(ZrMVޠi@PVxQDwgI=] \]mwTXGEJ DϦUzspۛ++g9BR=&S.N٬Z4+Fҿ@Q"㌉C0r%*|2]%VYI+Z1bN3 AMd~5@OEK;Asu>ϘgA=*(@8 ~.ɚ}q= ϯ+P+ zܥAG:28;2蹿eU6!Ԕga)!hb./:Lz0cn`s3~αr J4wC#z[IJޡ '-n& VctLJL( BʦR\ݔ:^LF刍F0Vu`I殼>wL E9.2C޲xtˇQL;h]WGud({H3XD.Bs'(}R/S![;IeBo sFL1aA[k8TڼX\[TpQs@Åh!|2S>S%()FpiFv/z^WOi:xvB&VƍA}=Q כS|dE,:a.vۨںb Iqi/C|=OpfV]C[1UҴqEGcp 5P- %6 JH k@nQ` q`JgH #x=ɅSy fTW5u+`|nH9..A,-Nsc~,QrIl'Pu .VV F|ivB'RqΑ/ב1< dow5%%yP88U>o9*@ JkcTպs=v ' HyX2?ÅYhBm97+Q\̙8A- DkM5D|9 5W0f[wYX<9!tb/L4$g|82Ϻh>}}g> ,;vۢ]F}TY;J7 }`z$wW\Lb#-e 0fb6:w/\0*Td Zސ>y_LzpWzd$t)3{]W&(>B I;&1NeEXt24;3%Hpt^ڟZ]UXuHxWTQƬ%$6GPi]psr~+ 4f T[Kj.٦VkʌJ8&c|uh;um#$5M=u7"@ɞMT&,BEt{~T M'yŢ_З@^S`/483tlv!pnt]7j?Ją-ϪTUj,S"YѪv_v"%(妜#WyH;=ǤOtkLABx2ӕ$- 3Z m "c~أ橲Euc,DV >r톧}J҆j;^x38x_\~3ցl`䟘Q/.76' sȕI(Yy9WES5FPD3'APֹM=۴mCCE!]7 E!mH\'b7{7lP${sLAY}]jxśbfmsb%H]`"f6K ̼"vg }`W q {CGw/mRAs5sl ;žm9Nm&[?-J螢of}ܩoI'đ%DzT(v / N.<MLVXA5iIs9[a }&0Lc|4?}Zu_8~hV5.ca{j 8E *߻h^& /! #vIAM {Κ~́*Sl(%R+tiǓB%P&W`CDb!ɕxޮ`f+w<ۛbw%M"4^o@N]V/T@_?-#Zk =˰B4r%ȳd'8v[#H `ڶ[r 6q[p8NSsv ~Zllguɑ=w?aIsuBiyO8i@aN@$>_Ը̵gmH]X. 'Y_EKO+&x]T;pf eP{|8no~,PԼ @p^Jx=8B Pb'k>+'2"kp DrCXy{҈9Eh]1 fzOIV A*2#Aȟ@]p4iz2pWG~odaЬf5'W&B.w JX$S+P{=[EKjPYߌ/8YT$q:H1#!)Ih}IzhKoqJ\bF_Em5u]HM"EbI ()ym D}gzF iDEj-iI07t&RFHq%7 gh/зFU&A5vh2+$paLU2mQ'4߳[_{ld;ǾluDVfJS uwx.L䄘M Ulv~BGy{IOq9fpXߥaA f92L:;X !xSČ+\)'z ьTQ9ؠ* i!ZSC] u ~3ݵ$רW{ODfM@uԪO;PrH܅UMe) >y,^O5TVrH2,t0D_gy;Z?Vl9-\2ۭ .1e2O,a\CE'QC/ʨSOATǮ@f m|MGt ȗVOE( 5@ql~F?7.g?ǎTb!zaۅա'`d?xr?49^,Aߋvw47j:(=j]Q\3c: \nSYCMdBz3@QВ-ō?;R\ʸ#藩2qZBdnE ?2MT ?N#e78G# 5m}BM5m AHEٜM?E{[ DI-3ܥӋ sf F"Z3|k1) CuM2T0ܫVܱLXozpS#_L.p[1)W|-OoIY80$WTD5Ľ]( VVT5`@W\\S'gqs'Wqiq'42ěmy/0,!eѡGp 4ZBG_`_5aو]BuPJKd|~Vشo~%B:|B@ɃF:5/ڈ'(<"_04y W1+ (;tK`SGX=鲉#0 *olǧkD;]M$_ NENPl 6 .F~kXKm% x#[,UZ|8L V ?῍.W]l$hB XLV׀wz$QMc7)gtx0$IKrճqٽXg"JC4n _I4˜b)oB-@26#Vsn"Ps xZ);ӜRhvӟݩ~cdgZLnjOv9('0c@S͚CQo7Cs+}>? JU#FmbJy›MnEҧ,A(HʅI/TDF&dE}}VGɂ6rsE.rgq lk c7aRP[qx\."8n<*["Ɉ_ޱ $\OK0%h8k@6*Z-h7Eb| >{Ll/uD ?K6$px=eLsHfzV12$dTҷgLACwLh7>Tg֏Z>^-s9f@nDzUuMFB3?mB5 qB~7kHlx}(P>HAY}m=Nyy,gRxF>щθk+q _Y[8φӴnµFa̬A`'׸YX\lo<d9w \\pA/?Z'd0r$?f+[ hMlMWwW+ ܡ` FIf$jN?ܵFUGT-sZ`@J gףl[gOl`~]۪]_ Cm&fuϼ\%BHk) (Ch fN_Gt+w )X(S&0tZ/C",F/}djTO#nbOWkkIS`B w/۲0r8Y)?<|r9HwX~2t=Oꆲr(UkJ(Gu(_c~ n]kΟ->%b?PI 5<;ŧdg/RIWtӕdٿ46.^ܜ#4$I| @)?k#yGl#OmU Ouܦw&;Xzxz5U1zJb>k-|nTHqbdvm4hZ@𐞫,U(& JNm#yl'HC0%B/fom`ᒕqǧw+p߆Ϝbz}j@zmiΧ]ݎV8-YYuwLL*f܌ bytn8i "K]BX2]$ \LlmL}-FBJwF_QU480KCwJnF SH]k9! ~)E%vVkPH4zU۰M^ՖqnD p6J)WOڌ|r)z5$)iJ;Ogh X# 0TQYP R^Fx ӈN{ =sTL `T D 2uo,RԇB,G> ޔ_`]jXI<$OQtYõϡe<)AA 7L᲌;nEV}z+2 2Dcpr)y x6#qY}>g<8 U_2 J 5lc%u;.1E۷8V>D{@ޭ:N>ĸ.7 }ҷh=uxK4W Iշq]|H1P.K$v]Rel WRBoW`u5jØt@-h3ïH*4^YD80T:|R5oofcw( '(aY8AB|/z3ob54. ?" FbgJU>Nzd F1$Owy kUǶ| H)}PMy^'D8QB͘S@OR_iL5U VpnrX[tDw/L,GÍ=i=gRRv@펫k; +pD{/YI>GE95Ś~%x`{”15 Ӷ>Xq_^O<=Pa "ԕsFL^ ~P/RHUHlh96,0VK7G&5S S$kdLaag`OA5UN:FO7.4 $Ј/Q3Qw| ʴhw ܀e-ڈlk!+lP%20NA}('f厩Jf80r.dH3{ -o>QA6ɂ"O+4DHz8Z%%GrD|tN> &99DѷR2|N $5xSrS|Oefu^lPif`b} 5[GVӨ?d.h~MyBYOn Z4|7%e6[ۅZrSΖR@CH~Sud>l Me*V6%6y[#@rR(@_]]EL!ˣ' $n^~?hkx̩#!Nw j`JYa1Q8voPRZ&7}I!VA4~sNb K ڜOo^ZC_%Q6Tu-.ߔn -( `Ej)X^TzH FR.-dX_uB&>cN^|?wA7:Ө[-s](k%W7ɣG{҅m# koӥ~N}/ AojRX%/>"aЈ^>qA%$l óKDA8J\QHN|mwjvep33"V+@}`4:b ivpf&~%_"~wʷ)K W0hiT$v焂7vM_c#_@T`<=#KpVۺ`00E?0D*T(Y1ae}k\ONM9޻MX^au\ o+pqw-a/Dq3K] f̨a”y ]jY? AzYZ6OT6j8xbPǞE])-[f6tU&u(*7=2zxL#p<~I[yn ~nkdBSʁ92N SrsY^^v*#r ]:%{Őߊk9JKANtd#L\/ȭz,K(0,m_x|Ǵ^FHQ>iBR׃;1 ZcZC"#uh[І[޶8@$XJ6[]XZZ2)Cr*Úx·7;k'<djnY,/|T !j;-i>VFIi+a3 x-U'P*oq~u !W 7QAKʟzesiZ4#WZ>Q0؍lJvwTS5!%\{9Q{F)'9 V8K= g#+sGdGptIԑKh{k$b42W>r4\NΎa z$Rx6 75^ߛhQ5,?dsŮgvkc@9uc\ %BxwH:pYx7$oьZ@-uW(& Udv3\T Є\_&`=QBry3iߡ{޻ěNOCIĀ.FջA%¼;۱!@7x{2g UDMLjم?ƩxC>Aݒz&ڌa Q G9u߮މӽžR;7.yC܇An(s.a2:< Qg- 0қ>9hlNY4i0_1L1N ͔s3 9o``}m*nFzä/euҵ*z#jA~`)ol2kXͯVaObI`cB)*BJ.r )Xi'!wƻ,k{Ybu+fU<2UbV;gF\$Mj( ٵnXu'QջqW'31vbO^wztfi劒a%z/9Q碅P ,$OcNJ6V~8mGo7suz&,n܏(Td6Ohc!*hrcdklt l3? ""%}d=/xg#><_e7Qv&ﰠcI*hWSa'=*E&kgVBG>ɹqiڞo",fJ]MFj&lL91CU-c8ɴsW٬jp <̂Q^mG&*O<[ں?sfCޞТGF_:#lxi}KYE,2ޞ% $^z1  0m֍A_6 o_4OXr)rA 8d w{\ET)Ȇ)o9t`R,즄kHc JCD= }wHuCD>gߦtW_Qp><-d7͟>.Zd_ 5>4>Źr't+)}o(T XrX5&O7c$ѩ]"Ϯ}ҟ߸Q;9e%꒝Ep:|]8,VxnL~٢cqd1e/S5b7!ªxXfE(EZ |VMvnBt6ԇBfc:Fy+DJuQ &ZbÀ8s:i侥7Եl$aFE s XZMGDYg\@Bڤ**u‹$vj$BvGbBF`c&lj\V*m0/Ӆ`q.(بbzb󀒤O-߹LgQʩkQ-KuApLMaxb3@r)L K'#=A\Uu%ڢt+ޕ֘1μaM׌!cx#o\D.l?\r}aR `-*|mtkA-H~y)=g h~^hbv`c[ssƍNтnn" iQ=[erw ᒇSKl`0Ibt2t9GXͥ0{S\>zB@t+3``_uLN`a-@", Ak1SZ^P~-;Z [ (;"ܵ\^|rC "w뺍Y <X 2mq僫Dk}N M\r^v9%_k9".C_KO<xdf~{8;]%7^?pzZhwƦ%=c4n[TK#F1cs 2^`ٝS̃\ gB}FҫfZ'_aPu7긪`wc'Ev#nSc#LsGGfiRjfaNٕ͏+5 R9"1.dG9Rmw,`@CCQ)9hj9ޚv1` rb^L_e"=nŝo|yO준T3xoYq#Ԧ&ɋJEXp:6ȶ-5>J$J-u1PdOEؒP894usX >9dUuyd">.SGo˜DXX@I*D(GF;ڤ*ieMmQ#F#VR{K H|$VrwLj)q["2YZPVpu,)}k8)J⸏U0wʵsP@l-=;&]!6' 4L%jkcB.#\j.%/ |{B& *vk񍮴ŰaZ0u\ҸPD/n>SPLCȭpv3"9T?nð! ygD2°N\juTcmBmASu9+wJEpj):Bo_>"ꗑ WIfs7$kMx /Hn/gΛ$K #f|9zWԺquE$6Jm-/|O8M$Ea,צ?YŌxr2Q2ZB>fM1ܩI{& .d$ թ.@5$Kk30I~}r/i:cք HORO̸oc qra86yiިK%_N~D4c$7IJV!-sW!A q+-kPA[M8T,v=b?k'aeجn@Z%m,e5bQfI.pQr|Bx?YfKD68Xc,IPU#~:I_ztbe BMUB,i. @.p.bUOz"Th9r9t$cc<':7,Ӵ @'Fq+[olqMÞI2byc Gz)F5lwybWoo'aA۬8R%Xϵ*"pvyxQmcLWR`v${ K6l8.;U!v`:Li?2>g)ZEq?ETD(RU uK (xNeƵan qPĈKL)C.8v ȫf|1 abVp6\"[)$I4\ȴvr)(TZ.8g`UP4'rezrT!8 S,Zl9_6L>-(5^>c97~S8?#Brmf@V|N0dĀZ/4Z4995yijx4aNU'Yd7۽Y+R:tcl*ɅGl3݂KJyM[[7K'D\;A 6Ku{4{-7NNHݙR- /[}ޑ,,Q#`Zz`]l0  Su |#N"(Bt_v+^OC|$@L6WO0Tcj,XiS^X7Νg¸C'քPSa 5P"\ LWZ>?_08fЈ-UPmT3$.H7o ֹȈVPn7|OQq,X+9 LsG'NTVtɌyrlrbRcPhR1H8=Su>LLB)4 ;߻2.%YQyTA+66MʛIVSؒ-\ܛusbuil&:G},>5N6r?@yz߅NJF@{2Xab՘%P% 7}c.( wbLZn\,A@uN^ eLB6H 7 LV]'o׮Me#;:g;>`-d/^s 'PAOU=JzV҄EkԚYpm+ IN$0cF_~ 4ڢS=6}29 w* 0œ<@׀WL:IafsB gHo~vEEBKzRwl tkiĺ.AWi\L,Kƌٵ?%Ckb܈c@9¬ ʛok1ݦ|b=*'PپEVl2ׇ7-cE0_C/止_-S 4e_>bڂi}tb:;rӍf@\d֖/p$Is=THIt{8(|oqYyunSW`vtx *r4>h)mv6-TR$%0$2ļH@itFbAìY:͇)q,"Bۑ\aT?z5~T4a5UL*ĀΕ`5> 協qYJ%љHG>햴-|Tɟ(+Ì6eˬFxTiB`[}!4΋ a]"Չ ]G<f1@? F-$GBUÚę=kDD,.YvHg?V9lXjDI 4PY9yVuo%{eTW5,Qk"-:|_v1.%܄+a*_46<7%^$׌S( r3 !ae)=db',>O^mfЧt]1o|SO>g\XDQT H>~ߤWn| \]"/oE!zQ_YS'L?P4twa_O"Ο D-]!Vd*DG ~7?MϽ1pčdF\d' S%%B.4!#M|9?S^.|nsT#XskU|z0^EJʓ˦*?IG|Ù/kZ_`S |; =\Ӡ  By+tV[1`*Gz-w 1wxzG#c޸D >v٭NZZuF#dqIuK|\rB?ewtpZ&(eAD yѬyJ|ln83E ;VjF>yl\d+ӤF1W ǤpŬJ6#p SdW K)m봭%v KNL[ :n]fo@oZsfEۈh|Hl#b1t\#L4;Ywx"z`}:p+Nf?Vx/M!G}NDfzHWPxhX')G˱:3uT;2F =؞7זyEx&lu2n}c( X-1:[wa#E|U0P*?4#$GN饈QDQF֨-pŘWcic쭮aLJS"t J `Ly[ -Yx\:Yt5ET}ܥbCDԜDh%r{j*҇S$ Lڊp̍1f-XZ_:$-y()Zcn3s*8Q*!-ޮɡS.rM*9. 7Fq+*^f8SSVGaWyl*u|ׯ"!MP Қ@įaRYgZ8` ';BW@0F \˶O"!C<Zf>WCDNѬ({s;l7>j7ND?̈́@P/etW25 picg)Fn}gD*DP-EqPAF}3?v ͉6q CLNazsdLtLvvB2[>؛T@8ݥB'S&Vb%ar$GT}=⇺gVsO, rTyyP=R!9< }ag4,)}GMQb8vgsY<@){3Q8:A=(8 dcGk`}2k2 , ?lʵ?IbZ By.ְK?iuMbV<,dT碌Nu]0aHewog=jô@+D"G,TA#Mib <͍%]6.N.N[O-_mQ; n65P$.Q=- sB7!EpVMܤG,3_^,2fphvPEm8yen[l*ʁZShU1 I]>9?IXauM\<PEș7¸r%᪠xSQ8J DoDDeZ:?MȥT}V ߾!Sl7&tƗ{'ɋH1IW8kpd7VO 踅iE&cPx"2oPHq"DOa Ek9ʟ;>Z*=u]˩j=xמWl߶ȡ !V^3EJӪ\ҿq黛8L hDC%Zk:Yޯ={4NYv3'","Б,rZb0JXQ[`g"G9e:?:\B8yCa$,ūg<Մv!tWuEf f ?Br9]=t}`q@\,t wSbYzqe h`|eӳVj/`Ŋ.~Z5`N$ic0lԨfI7r֛K_fp "H6OF,X>)Ji] 0)a uͳç:umg $圁zLImzaU^kr^14nX¡WP0D +b١%Z-1 \MIPKT>ylP5Ik,a9,u>G`гv8Pv7ٲ RL~|}&.4KX a/юgM4g+i6%BXgOXKۇ@mQETrNɘh}-ŮNx E~T:bCt^L *>x_pˡ"o@- i%Y>Q{*,e7ppWmj+JwPwz,J-.YqS"-vxϫEʽ~}?zQE5FV㶇b䘄 . &9?{ R)PN Pi?7I_s6',?p!ԻX4~@S/m=%Rq@?ԕ^`|+3 )> i&0۔6au=NM) !2GGC0s9'Ж,1i6J'ؽVC[hIXS;Bfor'0!y1pA!Af 9SJ)lTRnMOӽcc 2ӷpf/lUcҀua*^ĖɑAX Koaut鸉ŗɵ@a:oT a妄 $׳DZ"[=SꅟV:|8:y?Izٲh1 j# #Dy@ƕzxÍaZFP>E(Fk*UxC#A}Y{1*rG k>84'1?-Mw 5mRnzf->4ז\l&a!1.<&e+ n :@{ C/2kP5*s_g ҅$$@UʬmxƪqIJ+οc<lM@˒AY|oo~ofBb_)6BrZO o2N[bC& ҦCS]t%u*IDzS=$" ΉݸbL?h* .-UN . +5rPiD{d˙bfk i-Nu^G< fKS>t+BG?ϴin[8|Սjw6IYw_%X&tqtT) \JłmL Z7Cf'2x8km̭JWcBBQA+EΫypǟBmb?, ]Hy@#} ǿk,;eHaL\WՎލ(WLU&065qmdw^Aav*ځdܺ7伪GQ-9%&7Q4ƞ-NV \V{pTdPFM*w僮k`|P!dN4Vk FvE N-0 8^ee- SLtxo @"BҦJN.6D?"N*&מVà}fjNt# .<.˗" # -"sRV_u]88*,mj  r@DIFIMx361l+2>E_?y5ϧ+).. 0P!߾30_eg.a69썟e'/J ^ t5rXI0-‰pxFBUy9Jr oW?ܪM2Z g[H|G]Omn"f&Qa?ܷ8nqS(N x lM\poBfFےs{̊Y -R&ĎG؊@;VdPnYo,frX,ifDLm'Ӗ{7nZ fM0QsQR ‘agVXi')Һ\ t2{g. vKrOV۔^ֺC2D6 V25 =;al8ydÓ,VcC6ʹa,4 ۚJD&׌VeF,?Uo֏5}Ed S3ROG ]rUz[B`)4p]8|Ϩ5)l ֘Z .Q9H+iI\#FXEBn )mܰ#p:ѶA',T}'ㆠE(E8cA?a+kLsW/鱗Mꎡ ?QɌk1;gV2Z.wΚzw9R%j2yǙ"n![uNfz$Ԁb}<=VO|QD'WU<TU" Q<^.8˴ۚ; rr#|ȴe⇺ GGvnݍQO!$,K9TZ޳O(3]6A 2Jz1f9U5i&jEH> zS$56(F36ha 1iRCv*qI,<]ٟLpdEG Z s8%V`Jhx>Fmw>ۢ7^Fް'U\2WO~c#MW?ޣŪpV|KS#]гUhV:lSqxbN o t8DZu:.swOh ժ.(*Y0i}ug|eUNA,%.32Z*Sq2y4#9.XٗȪwROf@U!U{NBZJ[Y=4*v2D_%U/DE٢-Ym&3rjSXDQJ^9Hmؼ!`qeL&񌶅V)U"ڙ}T%pm hbv@C0Hι 2tRm&:BY]F( _”-R@(\S&,Hh. 2?sn;t лÅS*KM$pLĝDmDaBg|,4oA$p6 8<~D6%3E"GfZub\&-Nn+XeYx`2@{PζΙ L.J)/yiGD2tण˜ž$bNa%+hsWyx[Vtrt x ,JRX.k6eċqnJӶgzsZLhBW`x$ B>rHdRdF }"x7eё+]Ci1dZ zB= q͏9~ﭣ={BW{AҎC?jP V8/5j/om\h]EnN'hs2~:7ס_lL|n=[/jYk%Sn1xSrŷB1<SS񃢪q57U̎#}9/"C^lĢ%KzA}k~fJd f872_O&6U}!CQcޥy#,hFƗ3Gw]D:%HQ#NP2.bm?kXz~Kud~!eTo@;Vm\^#ML+;,=?[؆->\)LKR'L6*:2WVX <hmacHz?x 0{csjT g׃ZҔ^9o_Y!ܮY9/؁҉ۃPρ $*htK Lz`oT %cںd>P(B"bBt!z(ʔeOI}6ѻ +?ŞЛxy/|3B5~b;\=\w:҃q\! ,%\25Ҏ#w4?f~4F)Qf ayuU3ӂ X4,='I,"!aH 9ၚ`*Zud1jf۷PaqFߊ>츄tc-x h$k<(:O0E'CjV kS&Tި}7 lj+ƪk^zM$`Xmޤ@3W(O,"wgeLMOYg>ޗ0ޞI>IE 0mCQ(~rQˍ01OZ=R5C{87=7fx $|E x&9}붾_!Z0 aS5}ꣃJ֓(z;D蘿vòZ4$= bHұ /Ϩ53Ք4 J|LV(F:qQ+mSc`JrgnU Km7!EY Վ&҆"ˊ,pΠy~A.Ŕ3t e%[xeG*D:Ctw+) :s nLٱu0J =axUM~p txk3풏G3$"ֲ!)Lڧ×4¬iC 7 g=8_T7dǀe1?Yr;#ȗ%}0l(}X.&lSi(NǠj2!T9ҳ7^qJ%ԋN*KMQ~|9׿4|1Υ7f7o%ޖ'[M={f8&t/MW~Y|(6 E<0o`%J2=9.QGO: ަrx1'܋d5^t 1r1yekoGL(@=<^de>b>Tm^_N539JMVIl/(էCB71R["u:tQ~zxy G,zl@.hR&;pVOo/ñ4y}_,(M2 X5[ nȘw!=GغGb2[AVT<ƉG,$EDpBؤ~6w+M}~bwbtPi4fT xujb1ܺeݴ7ae>cR:7mHI1$~4yCQk\0WCG__8H:򴔌{VRMv?F'ֶf:yI%2ҹ΁8#[y^~dN;{|J!s՚GT%JicN*JgөAN) `( >WpcU E,|0TN9ӧB<LJ)HPB<,va&Q tFXwP(‹s wA'`$&'˙"{%l- h,7!H}J=.GDԘ?J*)K"!%gI 1m{J PnϥZyJ2lAWp5#/[7dmJd]6f2%C x\S~aOXEDj\O8BFw |EPK0C6Ou\AM6?Y!PzE$s3-dsǵZɽĭrcEz ͔r;xGiqE{c49Θsc5Th G0MY/i++@ORN5]>mie4XɤvJ\7ƙ,jTNzu>7fcW$j{"H&I{5zG Q:Y2>+&Ky#j TJYILϓ:)N Xc7BEmh$z~9κ; d!8ebTQٜdu {'08@'%+}-=IpT iP6$iKR$9b"ws(.] P(?.3ݦ設!V R&P<(X$`<D&}yʴ1GO72E_.^;B<!V~c@z?Șc5q~u܊`6:Ɇ簏CcN{5xUShCq&`si1cZ~ݴe[L7=4!*vs#9/i,Yu|:!*Au'ޫ C;5#eiDWFs'B[D ]!-[X{)ux{\r xy<ċ?„!ܖFQ+T!\j6( nEx][Lmm"tTO<{X/Ζ-mPeqʠj.L'j4&1\:լH,4͛T ]5_?]`o\f 7out?!Cس|tipPNuڃ_ūThg8lmT832t1G> RkMʾQy%fD7.J$"@ئO*.&iv]uۮZ@*̷awnj9o ':LcA:N&cjŪ(nѩlVCzwbb *|p c!f' rn/!oF):r1Bv.1Z<@oODXf-z ZHEe\UR|(|7XdSn̛d[4ƚUMo`:%H?d4|WQg쬫[)% m,&XIpKKXj$B s·Aj|z/$2 \ ǭ9?9ow!>NoZofq d}p`|bVߍ=R^8(99{XA*ь(׀*?(̫?xӆ&/[r޲ Y?tis> aG=@7f L"Lהsf/Xw=9S 0QUU ؼ <.Lr٬C4\? Pm=$ϗ)lvGY<|Vi-E;7.Q)]Ȳ5D a5ɑKΖf SN"tp"$N$Ąs"* 3쳫/F8AKu_CoT:j/,TUՖ , [C5W+> s>{Cgr@2𨶡M+қUYF^!.1:!A-L9K6atW]9rs"x~>Eb-x~Nw]Cl8܍$xɺhW(~"`M%a4n\ou\J;/}&]LMZNgj9J@Ü#i'$%P.xmMm!Mkڊ`now[GIgd/]^cx#:ҥD޺6`M7xz hAG-dIz* ;Z-4 -$b0Y,Aykc( ҪóĹ91rbSNpJ1Fyuc;>YΪOc{'$[l9,_]vg,d÷U͡KF)3J+2Y:T PMscZ, MdE_]}UoܪO)!kVPq!@uW:iEf+ NwX%ʯX/^>MpF4SX-xLʇR\6"7*P'+7oQD^TO!BmN3Sŝ. 6=9W2Վ~cۆ .KkzC$$tRD*::` b;.<2B#]r ?ku$SuP \ՒTuguW{@Rp8ãH?hj+GZ(L$ZGQ4Sq'I'Qfa A:zpWZoYj'2I'7F_~\)IX>1 EQڨbm;=CT,z{q5LcQzZz`R1/$TEk/ EZpJ y@<x wӃ%}vƆY#}U!sSzvhTagn-ݯAY9($>CS2Aҍj%MbB X ŝYܷIqC3euݲr2Tp\$xiy.jE /[ ^b @PƓR } b6v_UAHvZ\qD\OGf *>c$-7O+Vo /vM ǎ`߬4Bg?/GsF+0V9a垏s.B3y|pjG֗>tϾdf7%LCu=R鞃Fo%ci8IrY$yKH}ydEؗ nF,j7|'xJN?yQf )ad+P!qca_#6) B E uhjըy9#8|6g/*}J 'z]KҰi@yX-(Lw '˟Ӥ٭]GA]#s{5q?Նo˾#Q3m-XѐjƁp>^Q'I Taz.N>X?F%홢&^ϧ(MҌ9lʸ5a1].1 +Ҧ¡)6qXjR].m7Q 8ؾYHEXϾ ;a럋N* " Q4.# =*Oo٪Ь ^eo='ݾ cd-i,\1S |;N,>fEh b-=t"4tiJ#`2}~߆k7T>]0| e#0) BVOj5j9h (^Y! V[k 'JZ^8eڛ3í6>ێ|@h9FNY3*!.NY~Gf iŌUu{8okȱ;W' 4<9cU7o + 0J;3 I (Lf|6ZJjxly"yRԥOO$q^ HLs(]FAH=6K6,a x_`NS n2cFQAP q^f\~V&rtz(A-2oN=P3E@QiT/<+ه-ay|$!<!EqfBK\hvycmuN%Sc]ӨaeĈ'r\tWۈANS\|VG}EJ nP H彏jUǿ؜)-v4  "Y` [*O{he&[ Ls&Neh{oPʌuV &yǐ=@6]#6,mN?TV}pxڷ.\WS%X)xѷ,@,19aH*;5+2AU"j:.h aynj:nN9Vy3a:tHf0՚. @=# z[Ó"M5*)N<( A͎2(<_qhH]4]?LՑW6>   \'SՄpKxD]Ȗ֛@jX8d ʿaI 6xIWwptɟ,NA9zw\e ];$ZZ"WAlr^7D\J2sQR,eUW|Chxwi @;{FDGpnUvjIr~`m mB^1heDQMd?( 18N a}Ii#Pz6ʓ粔_8|-솽XH0eP0WJhd?V3@RJŒRЂ.Q ȫ8 5戼Pw*drˠ7!lײo_ m-]";l(JwLX`zE,yqJ0h$%1R|_6n+ NxV9h$Lr OúWŀ!M#|Ke1GZrEŬs!^Bx[4u+?_?=cq *K^>&.WkTi{d X. 2u۱F1{.䓦\fՕ瓣CX҄6z3Y2;zKJnօJ8ڹwec{w4PPf6֙`̴\mA+ 4_}$e]QY -7Rz3Lts+BFK+{Qz=_1i&5ucZ'g( )KJ6/|KܘOKb+G]J˲RMy__ OAŢ s1(׵1%y|*-3!g>Qı;d9V %:uN>T7H>q*{Vm读0qi +lņ*N יx< <.FaCxY:s [JWdNtr86&5SѹJpNv`I}QDP@Rg6>_ a\n% ?wem*.4)+ HsnH-[IO?cm]LP|\^{ ,jX8Tٔ+c#Os+\ɱ Qmj,i5:hw,)z6q>\o6|<LYbgR2q/h+6uOT  Q,_Uknάqa'/hq-(յ9 +5့t0넨A5Lgl)eO4!շSkW+o0÷˃vIO׌MܧeSЎD$:%t~Ǹ+s)_#QB|J.wJ @;l.FvtXCo(X 34~h5N,N/,zJuj77)fE6'Q`+VCbycO6HQ͇ ^8{&y!o } Jqq|AP<91(j;&I?_cձ}p^6 NIYw\W .0e#81@H FݸJcIJMaծslOIT-7hW+&>d[8+]v-&bOPyB{M&"lDkbd{TLRv=Coln^&Ph Ѯݳ3#AiOxIP>cG$(uhdQ Z+B/eg g  `MĜ9zU ug)2[D(j.)]ʹ"_c9U>)ADWieZ )Tsi.oQddt)1 ;0VZǒCjZ_KY3oj"6126x; x\*.ľ ٶ/(^p4b@naA2rAf} )N"ӹ9 "Jd¥*.L%z 6s#X&Sdn(WmeT9k"7Zrjh{\BߺV 9=z<4( Kuj ʾu3ZU[gHY r[JG'ͫDA0sN4žKͤ:AV.gCN vnR+7#0Wb=˳ζz2^f. @Э27M$ >8wt:UJb7"te_T89Oҗ *M/3y^iscr|]Bi,Crpg].A?U5<-E8]®Ɔ'  u3ݦUXG, DM9C_ǒv)kX^}^Vl Qkb10 f,yih/٫q}0ܒLo2gRׁ<i"gl%, rc<[2*n=gW*xN&D(BLoΈ+DO-"뇺ȿj`\#lFPÂRxi"3sTn:ܷf1 IS%dL7>^mLtu2+co$/߾.,N2~C+}w,h\Z|;#D7!F{hîʟ>;.Q0 B+H ɹ }ɉQ}19fN8#vV f/_1"6 4 [zV3瀫]DQl  嚂AI٧CbtCF[\H?!![ a߉]QZho9.-"U&R#( ̅>wvQ qd ֬B'nmW+Q]z(g7@!EC8؃̤&ER|N}xa6,U c*oK&VY%`[BD;4YM {4WsNA:\pZz)_xĖ0Ҙ)b-I%;\ޅӣ2Pkm.Fc8Nu;lje((A8ˆ N=VSMuS<`tViO?"H|Zv28i3=Sq@DU_ %CLVTՄxB-{2O >/D_P@a/L~q:Pw=}V&f;K=JW{&R@]Z`INŲ@oNw $C3i9ZxM0 Bw?Bz|CR^6zGU+dL&ӇAϧ7Hsݱ= z8M/92Q.r'7YbD02OLGu+`.8͗4.gBÈ _n\~/?5<@nf^$CdO/gͬ*%gP粑2\|}nzSh.GW8ue!=5*E}U0nPo4 !<{e#hJ')7*ln;[Y^K G˂8e֣W$Q0wxFFUƇgۙai),A܌vҨ`2RY(iНb= I9ۢ7*Df+\dh5^mw-X(2E{xI<!Xl-q:[^[kH&[>*˪E8%r3učod+pA ; o vRd :K2$p_q0R8?pGǑ1AFu+nN7w]4Ls0Nlz%x&xz4O_̿b0]3o@([%ѷl& 0He>lzʲuBFq8aǸ}ΈgF,7@ѤX#w4ʼ _@@y&(TG&S6B}sVpHEm!n[VM2Aڣk'ELPq k jg>f պ:"6_c &hJYMT<콥Y7%Mb~}`S>'  I:bfif"dnD.ݟ%I<:7}[ڊA&}ERI7f9q1S5a|Uk]p#t o0*. i#VY%OcXNbUfd#;1ɺq{%R6<A6&~T(M{P/bdY¼ZOV9ފk7ʾ('JW%3t14T߃&MpD7:vu>B!5B?͢6t3|BsH6&p䁘+') !Uw:]e\L[%!g`(rJ8$A!CEdg*\w0" LCU^ҍ:$m'cs'n*5-ggPfT2oOTW*zrπ.۽|ߑ7#"E9)zŸX7>rT?y/. T0?[ر;rz5mc6` Ν#2>j;YLMv/`m諸$\Ho;O}~ώ_!HtG7N""j)̔Axs%Be1$9/d(r㚚)NDAKmf7sHyXs M;7ٳszD&$wFבfk:G5tGY@ÍkA`%j.K%ִY3m_>6r h, p{"$2;R=\nrPiW.ak MܹTW O:] գ?S]R2H{鞸*)%{ Cǚ]*(`7zvUޗկ~ !3Ut.J4w= q+c#r]Е}$5N؁ea*[ت3U69=53S7Kzo/&WK$x'N`uۮ}{@aEB*?~:Z9ŋ*Dh>Uipp'f=185Ⱦx!:aRδR!6QݜiZ yМoě5fi@)/f 5.מpJ?vE UѦIلjCSN <׋Z۲xHaMKFΈqʒIFZ4jv𷑓`sj՘h=Lx979nk9}fч a{-uƝ!XШ I;1ϓ<U{+O;Go+;Q3k}ʥ`zЂpDm0|b \M|z/1) 9sW^lHf]AT?@Gx*J/!/9 <",V = D`{X 120+uv `ޮJfv:*)1M}Ek}yZ2ooDxlahCc*FWړ^I=N:$b> D&>*Xv}Xg335I0ąhP ǔPkänKR1qf';M9[ c<^^@F>E+*7`!Z4 ^ȣ` &xW K{6 !$+N.-[AfwNZ omO#"5E\W{!}s pOvA(AdKUM0OSn`Ic$Yq/B\7$ett&Zu ׇ XmCp+υTa"w3u^MЗ]R‚JMJ_r"2HhX3]6H.l|z0l*K'g;TC$_/Cu-XzCN(c ۓNNh1,ܙʱv?:;U yg6TGL(m7>FRg-]CtW\BzN|G,? sv`ǚ:# !EgrAf Mk;og_P>K,J' 37>&}^ʢDq01iJ LDm*v8^Ows#@Sbvr`C.]! ڃaHo%0?Fz$2ᤔK 5E H`P'P.zn( 6$yHF|bV :£_05u^[4-B`*ӟ CWhA P;1`zOMB pSXocqk0Ӹ  CP?D1Gwlz}Z:مН: V)7[b|}83ȯdGp)F.&ʽ# aeU7h 722%U+φi^+ @(O]Xc_C8MҾ6SG%mOҔbΩة#%@o0[[Da"3EʪFWNo(XO#^,Dc͕)Cٌ.-Rr[yLw2f0T! QaRU)& FS!wW3v1 ,TWtϽrHP L,ؙ߃nۥ;vy@/N|{ETWӢw{h#BUԗME CMU84Z !ङ)Oҏ:#uR Jq;-L$WVnJp*QQ>Kq(A{ZnfyYO]cc B"cщ9pG= X%vЎXdA3 ~ڏ2zrCKDX,DRmՂTx]5d[=ḣEq̒MUkkAL=4Jba|S7Q`p}+9N<eN\U=qvߦ]6O EjϹyn2W/gf1<qHH%4ӭtțP<Z @dqKlc &w퀺3/( s(LM43f!fCʋq2OѺ:WN4%HaԘJ&cvAH+ʝх{*imB2(` _Io6@rLswCTPAҍṮ<`ph.4}}Q>hAI# `<rb[/Xzުƫ `^o'v"&M#kt2ҙJ-61\%g&?zg?IT982#/Ezڍ$yBЋM;#N休Of8*H {7CJY'L׳oq5E#*ӿ1.H;nA[!t>؈ Q?<4.(1GM=:}?=(qE!o8hEy NP+f6*CV7S@^πͩQAtx[EE]#AY̓,:,5  X.)㞁eD}oL/B$1'/gʕT9o r 악madˏoJ-5`9UBL0C ~x%~ߩ>*UXwqXn&HgDr 1]3~E>ҽ웂oÆIvm_3Q>D!bٴ3ǘhe6GIpr"6,,0F((gEݗ AV ;9JEeeJR"l=%MQ*v],V@3 .9B@'_cR}I TwoZ]V?2Ó;_Э - Cƍ̉̊,u'v"f.7KZV3ʾ:(参>ǿũ{(pUA]mmS1XI!IՏ3[n)*N Eu d*oG5;61u=<;;HV/ݥ"ىXFO{bAjW9űqG/c81D2ݵ+3s:;hYPó1Pq UVt5e+/'%U.@҄ CC|KC'SFK&'ƨ@VXF*;cZ xУ|%@Q)ŘKobck=Pf>zN /4+mWVp2 _+5?`[1&Ok/4oז@FCu-NN s9^ꗭ|h5qY\m.)q4D{neA<>jYQu^͔#gvGMs~Ap򯝻&ۨN}#412r)]JrPP&:E1oLM6x_9W|~u<[f b[`,Z摙QCc]6氀M #oNNwct?F2վ9 /Nă?[ĵPKi8y:̊Gr; i,c|N~x.h6F܏Hp,:mP?TCzZw]-\}sϖ4?3֒jf喧zd(Gy$Y>LXfŽ%slFU[ȴ^qZťmf[|J`Dշre'ҧÐRy=2̬vdB =Du n:<9t/bVlϙ5%&5.qm H;*N^D_7f?H1&,Gopc[rp'ė">eDNʦ|E͵']Mbkg=0&D230FAf T@"dR&H95WT մX(q,3ó"];EmK@,,_d0XɥNdE~ >-By$1-YtY(?* @e`]v&0P蟐ԐO6oǩ~-X |RgS!{4h-.i Ŭr 7-z_`wayӈY$r̵:4)ud44؂Ϩ&k)뇎e-d E4;yu :Ul!-,kHQ7&3>!yAК$[lOVN?:|p۠hYI+yiz6e^μ͌l(!s& %E _^mJ2ggQG]g>bF('JLB> FPwqy41%x\Шz㦏SJSn;`q?Ue $Gˤ4sq(w.׫T$6uR~U%+Vb\C6 Zt[bWTӁ3iն \/9E>\e#! ? X ]:*5~oAMpixjG1לs+{ F|ٓ,m[,8O q9Wl17cqq'-݀#0 ?alZ⽹ɚ+) 9\&AY atN6We!C_ݘuTg+qY<ʂGQN~<|]1/(q}jd';t% 2n;J\~%]OL6gv zXtԂ#+Ɠif!^>V>͢;Z*"5 +r13!a3 vTP@+v,ױ$@^]`{"%YmT߯. ?-i[R=K;b߱5|љĞnD.P%hoUɛ\ԸKc}ڡwՒ*x`Di6;wԑ"zO+)&l$Ix+!ΒCɎޏPyE9JWYLKh¬vlo6odVQtfpApWL9L.^SZ5L/qD-*.< s]iemV!v՟A!Zm$ [+eͯ~#sɎͿ[ &Ѵd+nN C^TmL<࢈/1y0.aF 31!9jlBc!m.m<-%VKמKBy##M2ѣ Hg6Aqk~Tzn':CkzvTB?,.!su%/ahuxfʔDRqw1=I7`QvNSZĸЕ2I{䲣u4 L_ #Joٸip7m/ {O^Ĉ{`bKѴ~8dEױ= }Ĺ28kb f+Z F!LjU1trFG/;JP[aҌ:v{U{΋f'yM']n2}Xn;U)A$We>SX|Qfz+ #sҾ&͛͠\?s(_A!j 4 ;ad$7ۺ=/p{Rn?O@:Y]cRs(~DmHmlK\|?M䓋8A]cQ15-]!bBsBEw.7:&xb7pe$jG=:4F j; ZZO4B7,2;WmE>Q C'S d.Oʈe2Y1hʝ$ M/0Fkg}ucmQCp%w{v犄5'H1.\r+~;-ڜC?[yөUS1=BZ>H~nY/XʆA}jC|0LAt.ũwܖ-˼D{Y z9aX? Nq |DXpK 7~`ܬQE>zk s0+d(>ɸipHP p;nQ]}J,٩2ů.0G={P0KP.4jvO五Pˆlq0a ߘ#g [4޸ <8\lRrhW L7zr KmL ?薚l$)_dOuVn%!N?ǭ)gDHXa 6Q'TCYlX=blh nxX㣄pl[z`%X XyS("̺$A󛯱PɌE<ݐ$rغ72Jl2ůbyW ,#sUc$i@["0kߢ"r⩨ E\E 2ư[?ЏFiMTtHh|J^eom|/` nLzM=/QluџWrHFڈi(XL EI'Z3lZk9*ϧS b%N55 B~*5Xܤ'}Q^{C'Ud,s(Z(2$\R]$m)7Rq$kD^ǢXO$sǍ}sqK3g$7zIdc7td_үs&"ECփ͜Ӓ#/Twϛ31Z~&<п(K)fMgc6>n1@#jqbza ~zGEa Eh?%A|mټhYE^WeXgEo=hMQ a~cx{5>c 8Rtݣi(=HE8]uq=¸!B^|%;jS*Qؐ4:i%GK(6UiayV\5 2iAmjӣw魤Rvv+Iқ6.0{tSZ?n)kJ~sAĕءǁJ4DT*VfC]%]+psk(<@P\'!@8GtzKW\͵-"| \6Iҕ +SHS!^m`"fX6}vk웥̞Yl:`H M#!ek;GǹAj#'q=m1,ge{@?EoGxٖ&wSyѼ]B[S7 F%p#z٠8{ur xO=T}=˨'>slj^:F(|Ioɔa5lqj4kHwTpk5(]7M [ʜR7Uv`5ßqS$w;ڲc?q 2}X|8 Suv!3%[eSkkjj"O׸ibbH2S-Y pRQg~aPܘ،]_LB`=}8Ys@%Тx˫{z5 sA킾<3ją_ˬO^kxb{V}7:e m_{p_~B)3 Ӕ}KOlNPP'07/+J+Pax<7>Vrq~lUlwVUu3Q;^\_ Lҡr#ĞHE?'rLCnP7)6g.{X\Q3Piͬ^zr|\A <\lײ+=f459DQ_`1'ٷ\0S&}8I܁ +w~+brb% gͫ%v(ƽ V94 T&O*)sm|5dLOFfoJ5mfb4/mn?\{Z}bX5jYv95nyyT48SQ=̴nt&hKP- PB~ޯ.ћETZ9#.l(0Z;k.,A~alķ†rKNժSq ]?&eZ3Ĵ0zuԭ6a* ܒr`KYY`518aRwjS#љPE@p7 ֲvGZ0C^#M=BiYK.`YJ2F j kM6"W-i%z#O:He;t8DX;q3$ wE. T$Rm[kpl`|N@$"jnǼG$gB FK8a6s fRޭsH;Kkbݢ!y #촥,3fFyLXN[:H9Lҿyq0YDJbzw lhy"@NOTWv~/^_}qCuWؾ gBS56˭DdGŻ.X1xChy9'f3Y xn/|N5U{ⓊN,֭&Z%J}VGwbk)hfSnBPz< |q!?xK1,038Ju9j0*vcqZݷ.Txzfg)\%< Sp:u7WkTTDxB>'I z2m|~ !jW'X+钐.xA/!n,%< 2u+q~㾽yW9*BKT>@rc?RQ^p J,}_3sLߖ59NF,߰uZbz-Qn +n yL;FgGx7 ܜrӦoCx]0}<˔Eh4=Q!pfk*OÆːȫg;ip.[O5|'M*v6 \ [sJ p&vtgu^bC,k ZAgxt,*0FgX)L+tfo{ :'آ4@~]WlIkQcf )ї,f۷LU~Yx;V0'"T@F~d܂UDW%\׏2d|i[THpFKia8MlQx$S~w,>=K,n /!P=hjfa^M:^2[j2qU Π`?pj6lq\)jSĸ}xMǽ;tL\f֙*y@;wUzR o)A7ړk,.T"_oޟW|{$k)tN`<4,IPA#ԭ&RlzG6%m) > EoٸEvR#ƾTy蛀$Ю`/%rzCNcdW}$9UˁEib5=7^D}-Q?.\o8k%T^ٱ:g9>ZOcm G'>hIk\2A';|xN(u 1%^\O}^81Z*7>.n/8O;4SP3N-ħxF|X`р~Gy2 $omWy7+ 4HF>#TӮx4#`k:+s"k1*3~0`av,% \QֳY߄ߌ?[ _T 7Ïo{s_u|UڏZԆa F@Gk"[Z KcF+S G5Hn_{S8fGq*Rݠb:C HMYR1=} g-H3O:-?(-1% Awdcȉ:a^8:{8dO>t{[mݬrQ~gn'szI;% (-:O-"boC _h_l5NMk-W4otCC8ܝķזOAuZ7Ksamխ1"uu0OԹ3Ԫ52,&wΔcGiqX҈K #-- Ryw[X$xcpGK]R^ I]^L1h@㭓!\ieR(ޟLu2 +?Z|y8׊9fעPBRRF Y/v2Q'~b%x+ZfZ_ACb\ '$V.j?ȉTP䬾!NQiPizKzʎ 1A_Q'^M"JSgQ*|d4"b'MS%9mMeKoq ýv-\s<=BS&'ԩ9fo w;*?W4*/k%hNgߚ75 %;IHHy ާAh((dBK*$07iƂ)P6q)iXkN . sq[Ybl%]@i?(l!U|E!H_;Gkvc!;ʏ :+ w<{/3Af`;IEC'Y5I.0G0goCi򿓒 ׃ J9X/TO&ydxJ|_K#.%Wׯ/~jB(ay5bnwe-2}sɘ凒:ټڼzY0d~S8 N20.L5гqU/A ' Gp|o1'T+TJa!z 3\.b[4(a. %[au T9ՖǍ?a51DI6_?+]ʛ NZק{\YNe j5'ZovZؒqJ Lmn٨>rLBB- %å^AĂmruP ~!pHzb4/U>xIp`0*Ij*wT(xkXdwZ0X 'Pܨ1}׈zL%Ln uf ԖCV#ķnώ=3AlhO@ h2TCDT( %^ ydĒPBgk_UdL6LVc700`XqٲJ&a<0isy8ežnb #, GoKNx&_ nyI8Y6 p : P~d |ӈ:_~?Phu40' {C:DKm5MH^}J^Hr@bj)>T\uPIn}cd+1@ oV>KY\G[*Nk)yApLaG%u8pjר[$. _ I;/B jM>ΎgAB4:HH$i)Ӡ^Wr5-Hẙ0ֱĽ זGbJÆ(fr#4HJjQ`(>}si! ]뿥T2Zҽ4v[Q.15:;~J8 xD 7W‚4=.b.)u 5WG#P( +5Sń2(j !~ Mc;*^RUJ$F zpE4"{B#V:K}ue0S 1MB% |M`f.X>>P gijkcãZ i72I(8􀭏Sc XE~LV!fbrD UҸR_-A*di(n6xQ3byEؑW?8 ؘzUG`wM-|7%NXξ[K^Ǒ(r1NclFSĶD\{RRNg:>:ՋnulN8Y4VP**7q'=IMZJm80pl$CKƂ6OS3E&W haN|IlUؑyUwo~YԵeAHTRUo骸vQJߦYy(1x$HDL+;hE`W:à:F &[` '7ݒeǹtL4gZ-v)+Q揜/|E>ZgYJԉ S'c鴕]lFiyt7`]; 3%ԯ5M( @AiE[RAi\{'ۑ1iwkgK6pBsٜAbi3U{tA,0\!U'a"hKB{wֳ!aؚ]$uoj!6 +׍K(hȩu{cTS4*۷v 6fk8sd`0D(5S'ZI2ho^%QuT ǥUEyIZo!|y)O@HB}CmtO(8(Mn+.CtHOβ&HŖaov@ҒP7!SG}\B9FHs^&Q=J^ c!hd.]-K? X`5q):N0A(hJ!,wWҽB2r AA3K{@U[Z3YQb&[Nc޶ &OʨBsOzB\}wG=8l\}=z٢T7U+b35lz@~Y=7-|t7a»:HGUKJPK`F,&bh3IhKsFBĎgۡ)wMVl_3fnHB%x>ojJˮq;RQeֆ[*[#TGLT-EX.!ZlǴJO%U_YF"5Yp$ZҖ{r/׎ 9#?TLqmMu)~r/O}uX Qzg,QObP&wFJm9`;h+6 l?Fq(7BڦuMXl&NVc']1臊 l40!e1ېF_A+ B '\~S o5Y.V!{&B;{@cZn"En!]ewW 5"yudG'?hdyj$T΅Í5!"Ag"0ÐD0[y84[ZϲZM$_#t2- O͓Q' cwe۫ C[."8\=b?5z"9[îN($\+H6rlXΓ]?FI!6l KPpFd* dNj5{nWh%NS>v:ch1D }#Ho{Iâp|HR˺0t&W8:R C3}Ȭ:7EٯhypKAvg~j(?k/{2ZYr7DΔ=- \oq=cTE!nIJ2ћf蜿.|ȆE#DB[.&_bx^XeEI k?z֥BB8}+A^^&ȉn(*BYLLR j &UY|%6 &*Ss~!IAV.cJڐs2|*.2=]TKj0ǰ{e*ʎ u;{hqW9N-K>Nwv2 j(D ]f?=C,7e]4En} T9T1W%%66ZBX(DY{+v~_M=+(KML*Y%=bzx|*}n.6_:qΥ)s(;8(uٍ1WTEQSK9ecˡ谬XYTRox۽Zyϙ(7m3_/ M1RiL@ 2q(23dʑ^9~*(-+[n$] ^b~0nLQ00[δ -lAIq`Z3y24n`\HDD\"^baKE5j^PjWhqwc YB/",HҜO&Q=6nf9R;¾'7f$/;nt=:{ya>qf`g'6Km^r NקAK1h~-&B?k[3HD!=&TH|RvxXV@F.7 "y܇NaxKڜۼY[h<X퀆л rNuSԌׅtGw:y]B) lLCa<3#"řAf@ï8U*A{ \E](BԢL4RLӭ;n%۩*.a6H ޶u:Le~&\#U],̔݌ @82P}\NEL?H0- %U-@Bta9M$)?!C&K*=  `{+S~=p~0D%wdN &V31:\ϟ!M0v\֧?Gܼ*O&jQ7W!bEHj1KG<_L7sJ@J3wvk}3ʃsw2xv`jagmCibENEexTWt7F, ASAș\Dot8;t1SȖ1եPx"Ȟi,>nBN}4ʃp'0zV#wNN>yrlč_ƁYѮ֙3M?!$Av2BtDviUo99uDZ~~)Ί+jck $t*ۊTc4l+ȆWn_X+׹#H~*ٺv!RÜ[rㆎ3G}p?S`kZqwwՈcsEləD|oj5{0[ʦb(/Q+ skn/;7 0Gߺ/E -)wdBVwU*u'n^J~r /|LrK8.J} k)un+]H5`Dgz@ dY|(@KpLp[Χ\JHeRÜ('i7H]Y Dq*(B^l%l4':"nfU6 QMP 6k*lnG?+m["]6L WBEN+2d-cL$4nP982ǎS#X]A@e+dtPg0(ʀ~;FF0+C/;#F#:RprR*I3/srOB޸NFhYAcZ0&\#Y{(Vv$p3R$M cvPJG݅ fu UvO+cHn:\hQ'C_?.^^̈́a-hij @{8"7Q6;vE)+N~96ŐRuhAu ez=hO'JQc Z$t]T2껪ki<%jv #TáX)$_@h$o]1g Csgꤜ~bz􂁦l&>h:]0H?r/\IMdEDJ"k1lM Am&ϝzW V|N0íB[t&N]ce.x9`%=V7)H32@^gyK1|JV (D6gVȺƀiLNO_ ~_rȜE"eCY?H=UCS[^q4,6~w{ًhQv6zI^sz wiJ?3scW@&Zj ?/kCvRxmZJO-2xH.I1O޶%[M ̝rRN qgi۷jjʮp`4, o>*Xrx .7 IݩA,ZE9xX|>U70/T>2 J҆ċg& fGc@֊"eK5|4+[ |<~=RpytC._viNDt!.{О? T?]qHL3A[+AE''BY,@7]nzȿ&U0}-7TrF$u뢮#kzB5}dd͎y X  ?c<-'I$a\P>6 ,)+d)j0TDB&NB֭piyg߄ 5`fWT9H^ Bh)x ;?)-+5:>9Tf)X+N[/a>4F SJM,#nx1>)LCu<mH/>uK&q@oii|plɡkR#Lvpؔ\ Q(e2 xM *~7p 3@E!<oN6bGc~xߕԜ;>sD`qyhM/Z"J5N*b%)#<_ ?2Z?enbcL7}]*#|벚O0S!.9gX@ O5Ԯ n Bw-59Dr~Wڗp:kW.<ԠӬO{4f ^7'֊RF3R`q!=$v a73o`tmZj[ȘwaNfX%6*/z (&ft᭝[S74ZP^%߄{u"<}CxZ)rv͔E7 MqΆ;;[E<|A\3Я4édZ7W|<3M0SbDAQD5e9z36ܙ$pZQ8wOce\U"$)5yȡ[lvWR9B!@b(h>x:|hs~6'4[y6?--؇)-ռ%_[sQ%RE򯸑7wv5|ٱsyJ i ܬU*> *E7 5Cޚr; +OZEK(NkG$5;' a :ncb,L_2_@٢z1<'iW@D xBȏ" Z-:J$mUx,d-[2)jMS\Q?H@JJ=p lsWǤu( fe:U87uGyAw2 9oacNMQS$QV5uAGBßYB|^ͩV&@ߗe7OЯΏSG.+'u4 In[Ǣ|CKLr˕}xP~"0MZǕcMہ NO]h+8:R?xA2ڦ,ë] Rg;BےS IPBř$mM!>($)c$2l~3[prs0ڔC8C?.7mi:Qb!8Lمr'hj[Q֎ V^Ri$рw|ڇ f wmǀ8e}K iZTrSxJdg2cEnX_"u*3EWq6%yD (SW@hKMՆP;f8\%{>y%/4lbK5m^R瑥[)zMhJkLlP~ "PV7Eq\ZN_ hQ⩹,>"v[ ,!3c"-Vź,6.dڨ<2+JlIK+O ,"'/)SJAT_@e' =s !ZV ivF|:Nj)8B]f\5٨[1jp|y? ʦʒ8G"T_ss,p`4 bry› MED?v?2`$fџA U('Oh ıpˊрT}-?Ne h=qĔ7@jg0" n)V^ꆒa*pUdQ]n IRf"Uf Aetۮ\pSɮ,WT| g]g r+)y3şW[:_嶣3!fP#1~Õ01J6ڷj kaq?uLυ] t"MlGEbXvnٸCۊ2O/$5v Gkg.uWK1Al`i0q8x#pwxdF郋Q2WBjd-Nkyf7UЁea \LٚMBa2zw[^UDwa-Kgz^LL݃ʹ$3R=)zTn,hV7QEXrv=.T*\^kՊc_n0̓,I fJ ^j* O)kWAhsu\J?tϼ(cMܜrF!C8 pe_ \v1NW?wIPSon)N=mAҠ~M sds&edd-=` (:m\rhƊlxgnY\j PnҘ}cs\H|$#g#^P)ڢ)VX]]cXտbІCN&0PY^ \:'NZ }B唉-w>P3fP ԞKI"s+7kq\9H?hG:`%w-@ '0=Ò %Udt?iRc!eԺR25σ7`B-v7|_.(7N0:Җ-DLܸ "PhgVt0su=Mbk?j\kvh jH^a VyE"ȟ| \ 1i5{c&kk}e3T?% gi:3Qx'.{h+A ZA6!>s$%f. BβM)6 />`%bC }>f Je6˴ ؛*W ^O_Xc3?o0V s";|y7ǽ*BYUPE閊kNV Gs6uHPuHކK^TF5N˼].RgC'^^0%< c`  %;{/ }Y"c( sm-$S|t";NG: !ح,dBiCĐ~XR|~Ff^Qf;怿1SElT6>(4ڻWX!t54C*#e^8Н/-=HX4pe8t;D}2D-9{꺺za.3Ҩ z'2mty;gF!B )N^ɼNeCN! Y?8#H8!.ђl{5PpUI6JVBHk$l_+9t9l;Lӧi >_9FL*Bp`,J@۲b: -sG:CJy$[H&OWeF"qqLr?c{1&/#.(l!~Tw#KqqcfI^_:9cHx$_ʇqiv/RSYֈ. wXV6 WlMo]Gxq"7OE%iv4 $8.d2,vOfNIx@Ĩ$?\ Cv1Lyl9*2 S7%nКRm:J wj_zD]o4^!xS^L&]Fw _ö<\r,8../#dJKG%.+u!O\uFhޝ)]oTݍW,1V#ДfE^ i(d09pƏ' e@Tҿ`A]g ~92C1- e0Ar"p]X2sExd 0/z@8x̦&q7e6Ld0U$N Ȏ9pVeE/'5j{>YN"]/D7siZ2)&]S=|-2s4Pp2Uq~~;LU˺kqۇ 7pmڞ|hJ[S!EfG`U#L@E|M>dgÜiU{7WPK {XRН-d>jK2hۦ,l}(sAi]}PF3`{,%hiǣr89:?D ʍ4:\7TsrI?[a.&XC.ۡB5`f9W |ubM1ErwV?" >ߩV3Ꮇ2w`::N'$=T[uli砖.DR3A4S+˩Rc#1#ILć)W}L[ ;ScT`klR) Cx^sC#y ZOZ&-Fߕv1|7eKXab.nbv\I3PSk3Jk4iv滘Uxv)"OyK~^7u1Ʉ6J3k_6ݍdzlDKU6Ԕ߃QM{eNwskUgԓhrM"AJI1'PK7V?AS9 ^ȡxt_lG#Zf~'|Nj4m 7~4.or|$‹#ȆyQljG1 HL|+镹.`l1zɉ8dbt=AdBYdi6`^A1{VtOmwGI# ӴS=|;@^^R/S V/gѰ mMỤsrgrV V9p[f0QhOab"ЗmX֬٧멦|!sjG2//-bWktO]g8^s}?xX-D((ԉ2p`UѮygpc)>2. {[.)Uti=dœg%H>.dS0 Ne'`)~1\3Hp:5!\,ۥEk柚d5mW&FVyF̍@d@تP=cXӮEi$@h@\& *%z=y<8Tf:˧yP ">}5.Q}߫2 ͮ)ͅk0=#ӸRv#%:sv ƌe \iy`W7|4hԄa@dv$IHRbK&@̌p `-u'HZ~"v-_v22C o 72iF#]*p)PE[t)a eYzlyl)^nnQH<)j zBr22ՔW[' r4b%D EZ =&:*QзdfE6=:cH*38/ n=uJ( `< c 6#̧XY%n1 Me꓇\ >PtSG;nK{gD 5?7Sh)@j~_Apu |WY TtĎRX<}YEAc6iгf57:be8DY\D`]!Qv{Yˠ7讻FѝjQ<=qe] vؤ13̞&g)3WC|%<˱ڳTArK[ۃ" N|ཐ|+!ig\L)Z@OQK{άq _=MСf&}'m{š|٦B.1ld8rdo DK :[ZWKꂉjBOsף>F"FCCYԍFCUx>Og)ȇ8AN*m|dK!NI7h"kԜCay%X;·:Ijs}/z*;͘1Ah(!rdjWǟ8* זln.=ECeT{#S?r1΃-;3UʊE:B0-t+Rn=Qr i])hOٵ=TJzHzx?}tQu>HI*=`pVp8% AÁ YHY աT0^?h vi H{(lv{$?0a?Wgرs~yUZ5_A J=;m!B |a8`pHXkJ@>O8do,v2dֳe18w#m CcE-=dd1i m"m AVIL3<8+1uxԔ0g٢ xzb&#0'ؾ17Γe{̟&j`]&j7/."q(x+Fb7eCؘWh,g aq:|b^DBނoϳ~>9r5\DkwlDIgvmdJlMn4~!,O0=QAVT KdKSOSDtovt%&U+{92x|-0K>r虴;)31Z'K%%>'CN9w8/J\w԰vܞ7:@]RׇFGPƂXreZ+/^Fx(1G(n8/?(#o-d# WTNk5vmJE||֐/uGUnv%^,3hc T*ܛ|zֺpYeQw}ĉޥHa tKr@' h2^ D+H a<]k6 CeY]hl#*#5"ۍ:(;a{ ~K[O3\tjg@6'g$X,-ܝ!T AvP>_ӤϥLcK`_ǐyOS5p Qo}#w$W, Ab9zAʕ!# K@Ig-qi׻#H6;{ΨV4$*ࠥ@qvjlgݜ#"Hv(NbIf_[l p$ʏ?Y @Ko{tDuM%#[`X⡩@GH p鱦_[: ~uQ$o#9 9OYRr~,T5A51[ `tPZfvaALᏨmb [ǟqRru cV)³]QjP,o"UV HrrN:#yEŧ6ΛߛyT-mUmdWq]H-`[&mۍo_8-_qx)[;<FtoL;=,^n xh'CgW 2*AQ~]|7?fā6w^oЮDۖb%.bu'?+pftiEIg\v>NUHcƍ[GV͔oa,"us^)[P(zAa]  T`z׃n2Dۭ&1F7u; y% QkQI/'q+&!{)I%JBv.OLOP %,vA nAD%1XoMU z.zAZrWNc~ 9昅˩Ź fABd؞_E,jǣR 8 le ]0N@-{&@Z'Vo-O`T} ʓOL@- ܱI1x:<w6d`OC! c舉a1i,P KhyX3<=*˗(U3 )K ѧw|d?fn=7:9+j>H.hÓ'2AȒoWkHN^цJ֊'|bȞ[F35tЧ@#7("H|7e!zM:(͊d''B/u7Q)BK;=L`(ܡΡŝ"f6V0y*A+ A@yr3EjgE(`/fy*a#WqjK*f3trE=l dTZ0)butN&Qup ;"4iؼ4&VN;\j P3<|ǩ܋l\ȼw:(f(Zq@,_өݺsol!{8.jw#%3o2#UթgL 6n3-WsuxUioYZa6ML&јJȗ 0PX{S\uĂ[6qx>㝆V/dsrBh4[DumT 1cϾm8lzguvSR^Wu31Tՙu^-1xT~'j*]Hz{p-kV,!hE2wU,? 1{b.:I>7WCo3 ^6lym~ tEWU6E]:Ճ[j &j8ESYnf%#kӔfݚˊj'Ni&͉Փp q2 r6Ljdme;Κ6qv3q;' ^ ^VZPʡTG1؀)fJ cΞ0+'[}"rG3 Ӧm!"(oNK>1z J[5BOzqmEЈ-cQP_/rw'W!X]uMOh^epl| ˹xGH3t c_L'!jev0/ke~Dpnͺx2:&8a+ٓĞ2 2agwF{?%q}f6c"|tW]LDp\6;: wUyix2Vcϵ~\rqsx8[>-< j|-kX`A虦;迹k_ah\1GϞ%Up&xQmdYPy#c2Y"E lJI]"KZr=Y]~d{7m]N@zabENh"b:`ErFNz}W]v>Eq6"Q4U ہww!k ؜>$B]8}o̙EE1 ]i"nzJBKn[DѨ:*eG*0!}\jw؝߇ا{9YPk!J}Jrq[Q KM';`@h^mvchqi4x QY!']3QW'3zE%rx.0vNv(uhC{">@'8UƝ'D [ f(%~& t@xHѷJ.[*Y݂mRhȯZL#\m7& L"S0<zf~_ '-ǽ{N^!Kl4iV#hzy>ݲd3l>YIsjc2x ?o;-'oU5wfnw;g(VQ Qճ]]sꘌ~ZȂQ,Us45ӵ]هw[߃9 u`ֆ$ݣϗ CVbsrә_CeE0#5_mԟ%meǒ>##QWTqP:d%qIW71w6K'mXI{\-+7m,d@d$_\6x,n3V*-?(O)DOi $K#FMq0k. Yլ 94^Q0\Εܭ,ț'6<%QhϪBMxڒ]$y`o'z,FgEK^Y :tz(ɵ21Ztz/O|%Oy|\Ck z'4YpA_;m[-Ǧ=b7jJ#M+T4q8h~A}¡ Yc^2=Y]рD:7?9Wl]zbNg)'IpjKg$G?" ҕHC!D+Zwv3!M) MO$A+)QM~˓X[rL#=?I(~*sʵ&Ga3ܾ& #6iJxn4hueFr:Έ BSgYM_r1ep+4+^s ?"a<y ]_kJ~?UWPH2DY D !-- ,|k3@4 o#Sc[հR]Or5?TL*%Q~V1{G2EBAVWoΏ&k#9ɗ؎<)w56m2ERi>OBi^|ޑdi%..HJpn2$?Zxg h¸ MVs\T@ $ Y7 17AA桼bvnYNI*(lJNãXp'1Yڑ?[ neW=lі|ոm'V鏮X8c%a2nhFY3Ao߶?XyY:p\t +5zR~&j:8yݧZGA](#65l鷌mBu- 8sipLLJ5([*B4PfQf9Q8FNYNUrz°- ,Ϫ"Dɼ@ M(]ȱ8j*`"s[aiח vJ2&2VăN_I*C|tY;$o5-h07UAS= m.ՠ]nwmJnShP0iKϐz¨Θ)݃}L^yyB *WhQz2( Y`<&69LlR_ Jɿ+sT*%#%E!A[E98H7bS^ծ}MuO<"'ruJ `v-zW|)ZN$f ^p. W>5I.ڍzTxc1DuECIs::͞h޿:zVS%vP푁*SA7d<-VײyX$)Jyo N?B!#5(Pv}_>.\V9R.}7d P:!Z [.Ȱ47w*@{卿]J%6/+lj3[gk:>qR|=nFӏ'mOK=D%:E91k\wҢ&# T TO #˶1~5nwr(o [!*(GxnO'er,]IOrV& ~mr0E@j}0WB&|[e͐)'4SB,xy-Y}ˍ=j%LZ*Y/U~#?9Yh`rձ?p U [25erimAH'2Wq?d L ~&+erΝ+QUl*܌XgpWnlE>!m>bvpCFwuN;e}ه=63qu҂5>X;_ '#שSTb iNsM,(K 0D}ʂybnASjܽ2o]iÄ:zƦ^ a {='v{]诏ZS9e'b(i\uwC2G1 .a ?HM=Lr a d|X|%}=U#>CL0H2d(Mº(*ׯ0 $M?Pt.A CTT )=d5 [b'ŨuM5yHoFhZ'CיD1P!2>S2?xevAA~ywJ{S^ȃQSyhjMX(Kf7Į(ƻeX~znn7 E0vV 2J"nys߂~ BO*F4 PXߟM ?PԻc`^5o#$(O> Ir` `JcuݹWaM@&ۡ͆vّ6Kq)hr],;.C+F9Й kuQ2Nc-+釫g1R\ܞ@\a:>|$Idh|c *{PGas!ܕ(G,ĖMyug.|1_"ͮ$ #j>7t:srL0V^WYi|VLxQٺbfNyTRwna*D\@jJ]qR22~4Jp߳~n|xsԓ [i[^A(W&n3]Ob+\|NM32U?j={ʡO%>T}y 3A\>*/Pa zwtAR/OѶkIi=؉j5/^hoшf.nO3VM~ؤǨ,tkԃ,wɿUR:SN(u۪%Q:5<a~!0*T l6g[ T ypL]: "l9K~2+'ˉEd./cCy eQDZf`VZ%\㑚vG4R󏤎Ǵ(='(.,L:CXB2d!2 zkr7a86s9 L|h<QC1ArPFX:Vg̓0ž=ew9ĉyPW:P(ڜ L&ț|l_%Ƿ΄so* _͉~AL.ѥH?D!-.+`!<%w+8ͺ\ Er6nOAipg6GBmĠɋ91,֟evB+6G-CY~9܊QVv(Eݛ0G 2IrVe\S'K=8wbudܮ f.H/xxxJcIˡzn= b#S/Q܈T:[t8`Ls+ʻ" Rot-aqݚM?#dJl$Zޖ+,U\i2u K0*3Dq͵cvcښղEjNj2(Q2Z`CJ;{vz_bA@ԇtpa}R0\L{h#ETj=MMLWɺ`=,LJrU b:釈(Z=:*;.Jm3a袤hv(|x¹h)^~lֈ ypظuя cV}kMc$! `FȀBߣue ]Fо`D'_An98_e{{VDaه3sp:7j̟⇨5'SKg,R=E5ώR]g_Ã%=fmI|vF.^c[ɕ$Bi/D06\yz&mǹUΓU(^OCն9il4ϨRocxŬ]J癛2KF 3w%۳6G@T>0a4_o>U^k1iQxpm1aj!Z|8Pu Of𳴄 &}J@䐦 i耹ۅ}I+:Zq_S  f̲? ?bTd$ispi*$ 6g6KvNJiUM?[PFb?RcH. +l}SBbPlnH6d.<^f%P0]d4 : 3ԪƐj%3oX`g`àȓ HypTsV(Xdn(ط*uܣ/w_*##x# wn&dHFY(i)xr0I:.x6,tQAKkto^Gzv- I`1RRziwO^5 쎋v {!8fS$C7g^O黁rvL_@ʕE~`mLzϗ`| f͛%l1cW._gSK5ԢЊg蘂4s _c,nozTIGg`XAtNsF2l44nk3s>A!]`A׉29Ěi]V.rx@oeғ_5jAyP;VäɁэ~?kbL.dJAR:N@BmEgi" 5Z΃U5vS1D[A 3{o pN: vA"xv~ܣY <Cy ݬf?JPXgD*4(0Ac]H6W8A5nQ{5Vpɍ&/'f%&ǵ& %6Z[S񫂋x!+[: IiFʆD(mj P4QdjqQ8 \lUE::X703 g@->Wu"F8\=KPnLP#\ڏNBKǝQΒt&y v "`Rou}:D̑^yi=#QBVCƷ yeU{kU uFjˍugޤ-?\[ң}xNᬘ W3QW/]RMчhKK+{t3Q` ۯWHwv 1bhv& h9-VMME CRnVɐ7sy&Z_)Wq77Te{Ax:#5kV _d*HK26VpuppTRH y-P 7K1 l$;i?kDƏ="ῃ">f48 Iͭ u|,`@ @5D ټe\Yz&2VO)mpn-žzґ%PawE3ǘ{4~ۗЗۅ;?7eĥ $աX-DČt& QZsH&^O S(mJmdҧ cw.Oy̏3l1dRpSNQHP Q B*(Kw41Ci+w7~aE6t)>_dQ|imמWAC\ <$ dg b9[e2A%nNJ\FSQYiyU͉п^/`?TGAtLJG/b73[,lI,(e^״A(դ3#p,A0JTֱ b)ƃy(~L@_1pPXz`MW@6}vڋr%3iW9`2 ם,e} #LFЅD5dPjH+jg"C>G?w_#2.F JY g-! v).omrT)|ՎyJgчkIټ.ilQti8P;5>j=[ua-`sRMoӲO SsMtM;oeXaTsMXDꁄU n`;7CAe[ ӂE{:<] Dj+<~JH.~Vw(Q]G1BGavwY;5@o:#ԓ6|%}DLkr+U'k-&uF4Oz(^, qet+/yrU8aL8ڿb>:LqZN"=y՞Mᄥv⸅"_N(q}Dϐk*oXauN hԆ0hEǬkk%c"$BTWK'#&6J)3Xq]IQsV'C=FaNX@Փ˺r ̯X<ĀB`j]DElM,,mcp@OȦY_~Ѣ;^\|)zvnG8ș$ f1 w(ԖA%HR`R'CUMgh…MzsxJG"@$pWf-ns0CWY$^[QOEyڎ0X~ΡzP䗅7}_.M/aU tIq!gIlxFG?IhٴRa -Q\jCQa&aDaEU,%PV PRsAV ;dDAv)blئxBLJ~Mkaq0dZQI7cF@'rn}"Zo7erϬND$kX"lUzu.a(R!4 KxWH{SU}侭{C'm H %0{1=tFnj,!>Y/ͿBł,U/bݳ; 4]C/le= !b#J/4i2@ j|^$-fLSc.u(%Dc񪖚2?ep.2/]9cB83y.jk~ۉpr_?\)WDn#JRX3AWKzDo*C5L:-"R7Ǎtϴr:I:f;yXm\XFDO@C|?9e}isƔjN8+S̀RLbiXl,h<>zvM "օs9U.$͐)1”k[4r,BR\{@vS>+ =$4;T#Q׶xbYO]dSUmZzY_/G5#)\I)rk8yvi@I^r|n̙"O,mbw^P;1 2R̎݋KWȅQqk̩e`Bր/+xo{58_߱ g M34R?(ﰬzVBGfL!~Ttѵ)Ya6g,FﵦĤOBUXrw8>RMU/! *Ltn~ u*ԣÄ*s `L0\b +UtQ8xE~bQ\<(K}Bv(X_VN+kW̲ E;yR@Nƕr48"*2S}|3ulHZI3RS2򡿃6ϛ2EBbn>!IO畣N;p+3ԑx48|pS6F[?J{Yu ":b1iDlTk'Ldtѡ;2F;|0g81!fHg~@ [6o-c]]qN517v(Ow dX7Hw2$ݨdΗ45B5@ #{VZ&pl)usrZRļ^f4RD$ut' DI3zDf4~5?wI3bzUN + /I*< 3:肬4]]x=ѳf]eNUCGS XS~ tuf>)e!@0iCu>OI#s+Pwf 5'|ED$SN3b"yX JK-Fwٿ:F3[wТG3-bsD6a\fPԖI2Jz!-s[;nV=h6JX#q$qnf^eH'EM?&0]9ob %̹P:$oP~ʍ@QA=5Nj!5 B_z/vGűFnhWj¦mGYoZ{`"[YItc,0eƻ\a`-A8'S;hè;.cs w{cKxĶ{ }P^)^׈/NQ96GJ$M*-aDW۝o":t}  e%)ǁO\%!c;A+;b\)OGҀ7*>nSv, \ѾȢƠD7hXA![Mr8͂(|lx+?rߙl.C!l? &X]Nò7K ߐ/eNg@eQ c٠ʠ )w!xP](dTx .'*iTi$l +o"OLcn]덅agCH) &n=R=A)~񿩛F2)% ?|"BhLq],1ጅKDAj.ς2"cǮi̢B~YsU*nTk&Nxg,Wlm;]%|LӃl(i~}PZ $m7&m'0'Yà.ˆϤ(nXLg*!#:5g04dw6E"3i2? %Ah9}'yYVܻ.BHRt?:MYxd1cV2Jb0J&`~; #V@?v]}+^2;SC `q#Y1 * /\}lM윺8'.Ɍhd Z)Hztuu6< =M!v1 11E8 TD,4!H&v̻V|~!UaVt6-Mc֖%-jY2d}c30ij=k~cQlI 嶮71fXg}' s!X-%I CS%A_B̮(5C!,O3잲Q<==˩;hI]XLl\P˜ֻ0x/Ra9v3jQVO}q}uo~h??%a-MKJL*Ta' a[47!³ꒌQEK5r NV}FEsON/36(p|T˺0_f6CA ՙScH/-@uo˪Þ;W \ƈ|g$!?XbWY6T1LWG5ASĜlP֜'XkM_M1WS>ґe@ʥ &G,o`Hd*xrK=Q\4e\7`.lRA40Z@" s?QkʨU6Wh_ˆiyW\< q;oX`,g?gh*z\_B34ɺ#IC.[FCA~s9vLk߇5Pwr,/,rTc  ZYnyo,ܳ2%2O5 `"AӧnE®oC?n0_qa_B,sd9I<bTLL 1LRCJfPkr/ru ɥk`B bM 7S8h|5j3V}^%:68ycK^ϭifokHRNǠP?ļ` r͘ص.-n<_\S"dY?;pR{87qn@N>]kx L2WѢ\י ISbbák2 tz8nI62.(`o_DE9蛽9w\#'6ҏBYSÈ8.R>(saF0@hX?%J-C/qyuh-NehǂD L]A>Vz7ȘSRh\ ؝-wv` 3m[lȚUUNJ++p(;z 3Q5\k@DPL'\~ί+X-@A;muU`{xɬX'2's3-Bbgʓap38M$Sess^BثkC/lA輼y bb{Efu~& .AѶ28Fm+r+Rʙ{D0~mIߢ\`h 9 `DMZVE]XkǂC?sm3Ky~ZS')o„jFSA@in T5#]s+B<ګ^6{ T\LKȷ>:I4#ζ{ r#n.dYC$.rEϾ'WeX^'ˣ2q 6u]0OU^Ec8{u 90rhROK}n֊A(}E$y,a)|dTd )C{R7 RSKZ`zEMRT$lCF76cRTL3t*M2%"k+?ZBDhpzCXoh%Hu80kW_0PA E;n,n)&&b %]V㢨3RZ'j}ET~%8I~|~ƩKz>n3JzM>ť?<#}#v}U1)UP׻@UNumtWH6's~~0"` g{zk`&aR5{ie*l)GC-+A i Z,TQxadLX1R˞żo+B0%naz۹g;6IIZD7Ŭݻ$}aZݓ s 4OGH#r .9sAS+jR uU{Ga(SM\֓9Iaagu4t)*\R.K|-gfy0:,y;\8ľser,v!:'X%u{KZZ^ӇCdxoc_lw{BODz d'ơs59liPmބE%-U_t?;0XoYB?AZzKp\]G^[&FU;I_8B~>7뿊e 3%v+FXkPOh#4`fAVO{W\= Z N/2 1AeӨ9+l40sXۛ0`wP9ako¡׍Q33* #<`;&TJ&DL ̆۰I| ۖ%ҏ%gї<1@ 3,75["/wA$/1)4+x >e' ~#MDwAMEuヂ;. mCÒ8Ԋ!OU[HDxw_aLA43lF'32@{]'IJRk<{/BQwFǏMkT>qMQ&Xni{cTN*J&a `.:TߋivuKpԦJta8dIz# E;=w/RJ `[ #e[gmy8vwO8mcOW.tqȏ#, 59n7 ;;Ǻ?8B6l;_GQ8?W/hyD{~m/I%KLawm}i`i<&1?TD ͝UR\~iwzؤ݁Vtb; z4@S|3*)w+x':Gtze)]Þj^HM(ku20cEeFt|U[gp.6&}8▶/'[/IlYu~{͊v63>TA5]F.Sr*\1 B{ U|FtIӲ[C+N _Uef!^ՉPp=:VQJ7p-ʢR"!G֫eR&_]?H^mFHNĎQp ^ #-ԞB@1\HCGEe"nc̒;u1yy.&KrSв _M wFLJnCDڔ&.Lx Rc )5&%yr;_NM}KhhkMoGJ-bb|iwiz۟[fYRuVɧ}jv :Ǻ7WBԁ+boQC/bc @}r;|>a%^B/GYfͣQ@%j+Vb^r2dnZXEW_Z𰌪J:%I[RiKMz"B1þ(V vvip7#{{`'ܣ~xTi4û[GD8g S|Ar=ʽc^=!ӛ P0M. Ni,GV;-^Qَԋ-x ɿ9,4lRӰ1WXɪ/-?{rs9^B4sOŘpwgYD*O"b涡 U *V 8>ԔQE_^w#N ~|v11<=rۀnx7 Ӏ%7?_T+c$ܗq?2Q'^)p[qyR- %?$NÃjo_{T( J7!]*S-bX3n"dPpDg{SUo?iv{{y'EaN< EE|+V"qYqnKf"e&pS'+ڙJ8x-y*x:xNw;2WfD} x@"8VW1}/uQOS~-DFΚ.R?_kEzoV륛@瓼oNzآZua0#>Q Z$8gpPLD`]@Wӣ^[BQ1 P TёgE%c~YJQC!A/;E&Y!D C_JradFj]2MP1V0Wtw39 `7-Rhco0g_g2X;2x~!HEdl+!Fn0PH-Z &BbmnSCҎV\%6bBЏZxcѷ 3M )7%4)sx~9Rwȗ]o!$z"2';L n0Z=cӔ#MҬRzs+lQbċ")V#N|Q=P߷.e7VhHlO쉁b+,bjZ8=DO>>-7PSg&,VhEW#ϵ*gX.UaD.tʌT̑=^+/;ԨQ6d46D꣐C wuyṰb@[(9Lz*}kz@P?t:^@NxMy!A1.b}C+N$ Z'vy K>&Y+7yQ1<'Z_ڇb ^,iAݺ sAi:d-)?jK? ֜dBH{9Xoo7 ( + Aody?4Jm0+0<Փz]ˁ4qʜEH\Iyp~/9/خ_sӜfpu?eb JȠh JnOxqgKĽ!?bM M\፨GN?O1QL*znq%'N/329`]c^mYV^0aSfZy{ͱZT%Ww#m]L ~IplچY`F-StMhRP&[/ m팂dJpÚZ[ibQJhGMIto)Tʢj1ZvmC} ܄ΝpSw˜L'R|b |KIǷ6)2 KZ ŠyOm0E3`edZ4>3#\ȇbA-nf4 1<aQ"|Wʥo8wQd>IS VkRIy.J/.;h7?׃/=3) P6^&t û~D=-B:kDjx,)=>67HvFZm=,(Ԍ.IYE% =j۵I܌¬ īDke=ΰqX|OpW'Egz‰,NEfDPȳ܂WDŽW tl+;|DUhQJBD$뮷"#iYކ3;Y`Bx.O3Ԭᑽ;^-4jo6:U]I'|tN&&`(qf;ܴ+nqȇ>)y4`16ܞs{"$Z]N܀~pMh6&T2yc[%\qLBLxr:@D4 6:'s^\Q_ub)ϴQg2\mHV@i 3ȇ7,SBM'BiktBuٖ/xw۩jVؤ65;ITɕ.

s`vm}!)0UM:̗aR};uEI\l;!Aъ%A?=R!T'Ї-'("@JJB-풯Q6z'B84]+68IRQGw~Hw̷j7yތNM {d@8UoMOG 9O%@g:Y3rf9P}S+\O8_!L~&/Bb-{V=6A3M1QWY2 y0 j %{^7AFRw>=Yڮˬ`$kh{FycWG*`pZ$|x*z%0N^f77ʀD;=_YE]0$'> ".ǀ$2NIZo&0nwq&R/.h _?0)h'F!FYOR͡q cliG"YGNƼ@mY$ EؙnWbyT~,h'Ks ^YUA)e$iEJR`J2Cw)^:j *K64ڢ,*d;uWv+$D9>rw LYuCy^Bym3yy=gD2$^2. 8 yPw eDLID#Id~M(UY92u%|@-5:hː'yI};ᎾLYR}oL),(RRޥI.n*USF `{ݜpǎ˗ 0Zd7Gm%؂vQR4qd.G.(2&(rK'+ۥΒJͷ2qޡ)z{t`c =,б-RGZ[ԪkZ'vTжkꖉ6%11VzMK\{;߯"+|W.ȪD59{CAv|j1P9W8}LVӷEV%^L7 OJf˸E@/KX{g/)M=B'"fM\^ ˔Z[e-c{LH|>kqraehl@.,!ݼz+)[koQm a@'>("}%6m{۶zc W#Vh*'a>/%׮*h`$9^Vػ.J51Rx6hHz~2|gw32*JN2.D6f)d.ZuP_:PK]|8< Tnc O`}I?heRFJ<]Ҫ7:YWǤz&)J~knϏ?!Ȟ't uK޵^ֿw<#i -]MlU$ٚj҃T }@64L7_uQ˿=kPt<qDF;JIzo^N4Gݙq- .oĆ>U}t%mLQ f̙/oP1Tr $4!/Erc l+N* a^r[k.ICֶI]FҶm_uM oHT`ǥ|,'<_HwWlRbWu[ByfyUV?q@O^~5*BAjB"%_?gl^k;8^ Uux",1C%}E͝h֏J-TMBV>O48Wu@mg%%ZOݲD&ْ'['԰{23&,:)b?cnŽbκfs]g |77zi(3a#@ye794tp±oN;] .E('2XhkѪzŒ2J i]dG8M-<s=@q`}ȯM,Əj=4ۙab8F^}KF.߷q3̕7rmA2Nttp^Z&օW- }8+ǣf%~-hf&HIDzE3+Xj#ș綪;c2ˆM~}:TnDUKaa 3tK֚)6k XbMrK vA9峷A<{r YfN3J]aR]OZ*ZZ 'f*-Wya>z.R5\;3Cim1:iPu@౟Ÿ!H"@ 6d(&"Wf(mNoz?(gۍ Mwh L:4/ K%Usds sl<ۣV~Ӊw'QI- 7昋B'ǠJ,kmeFu~kE+b##<-(Y\7z~-vyN pB]U\piSR,h9Ӗob8dմwZ7zyZ_xa{{/)S{qT#hrdEw1 f8Lhu$on>rz8feOt3sи_M!/"d2lPUh+Ly9=`TQC[Ӎ4&a.p6.dh+1>N~ae3R96y([19x̀|D.G*o>9(cP#ɄGq &`*si_@] dUԇQӊ3)FE0dW`3Nj[ \ ?m:)N3H9Dq&Z{BIA͛u{b( U 'S@Z%WsifTRa&iU`y!2βw|ahwO (fh mCvWr>H()#8'q MO-]1_uY<%n4k<YϜ:ߓܻvcSbt$#|1?GהZZFt=6W39bayȒI~ 'Ee+]Lwkis_Ӗc 'b]fpӾYmA8@^@&¥ܸǿϫY{~wAIg3N n6dݎiU| #^Z=tc!zp[.2?n :'B6,k 賂(7~2::#gL.d,Ym:TWn"i/5d ˟JYBG]Y3LA/[\|0wʻpT@Lm<q Lm4WǩCd}I4.8 _vvqۢlW)=޲% @7<{Mt \>0޶?~ Α?uȫ!;[CO0 V~mĂ4)Vb³ٰub" _3S4&1SoAO틥*[ˮt&, %Uc!RU1^eKhcP-=E:4˭A6 -BJ G< z7I4XȒt|srJ&ОQDZ6AR;V'\vElJ51w"Wܜv+2qS^o T) H0.'ooZr{l("L1RmfURGBs]Pi)Qfb:}Ifv =<YG~m4ghKBMiyظD̹70vA&D6;AHC/ۀ쉹jm5FE_:8xAphbq6Z^Hz>T|,ˑϱrbEjs|> ;ڧl[9bȍeK)>,~L7+OL$~? W}&wOVGk)Q%iÅ{F>M+VTS&>h% zJ땁B'3&3OGpM8FԼ\T5PFHҭ#̨uA1٦oefɳ fv-. (XN H"jA ÓV=Iͫu;z(9:%&WBI_ץ8~ 2Kk}U33ړrD^+fE \ROݗң-9DnqA͞P @$D[TGޜQPA)MVa[er;c?eb~C͛g#xhT'=qsdc#|}85<☉"vOŋ(q%Թw1dd<tCRSpMDjqTnWdHXƒ"8qfkZ5R:t%yA> amU2} ZhaQG(x =?tQFɤDVsw!v-ҳ9{J<4  X۫jhg,ʲ`<`bZkݘ׶,rKwOrrQEm^faVх_ Υ~>WEnwxUYe1>E6⫏tXɲXY>8\+چe ('H@鶢/"G3:^ Jq ih9/6zp0CCy\=c9C`Ә*E,g+h[8EW>Pڷ"r]uqZ[^;#>G1fdeB.nރH=8Hr?r>B!za6m?g\ A[k4aƐ/M5p{̻Y8as401e gAZƐWO8\˴o34M(1>De3݉QzC5,=pxےΪU_QX-%uF6;@_ uƮ!لAhpYZ ?SxnVIJ4qdz0$a~tq]MF+Y{7 N~Y.k!S%YG8cCdΈk^ϱ5;3Nc22:<l+3X)>'UHMNPy/VY0F800n g:MfV| 4ڇinko";d ]:}\w Zck2N7c<2 J0j;E]sXnuIDĶ9K``n427F6"ٹC @'%z{Uݓ`ƟҾ錿om^-:(h)g~~Xv(a#0> "?᪄/WHO-Z5ϔS:e [a >-LYqí)`0Pg.rAaժ \74#iWl?WبK]y_3;E4\Tm!k{~؉? ƥz1wK=p&-:_[ٿzd!u)Cfb~E 跧b@G Pgvbe%vZfjѶ E \C+6E]p U뵈u/ {9V ߙp)!g-P*n*wGQJb_ D 3'Z CbO/c"'s-bKiae=Ud}}c)Cy?i}yxKuj@|Vo |hCS[^j*mb~'D,G:Nrh2S֯i}zpk]@2sMgj)9LU4't`t+9m#wiOƅ 뀬Uj#5w :s_˶]PR@hLЭ2c iNZjy'l3H̨FNbM<.鸭TMRIOLyChǠ%AeENtRE:r3`8iYJѻZ߻ I)Nepk,ȨH8Jb&$}m$ϱl~|| ekXKBHukhb71T =A㲪Y‹7:m̵z#뢏!uvG-%>Eu;c1j'4"b+${k9ڴ჆ӟ=+YQhϽ{~*^P&q||s 2# q+}GP@]}K A\c]pj%V*A2O>i"JE > *õ {viQCrv}nhFR JSIqEi=zB)k< Sց0ۋw],b\Bӡ G N(R7gzDPz2MR%ى5;1]`8د1áafyM %^Yز@'^Z٣P{Tu<[s}aYY/tLאr)LDj}טpź1[3<˜A]%{x^G^5nUyôkYQ>£3zNibJv);Qݫ nρ 7e4F6kwtMl &jbUp?&];/,J=z<^Nlwɧg2E:@~)w*IO7Lxя34۩ĎM~QeZWE8{CUCh~#W`VTqjL FSNTƒb%Ɋ!)",q5LWOm<l $onK3;hQg/j${2PMA^ԇGsd\zf@)56lX>&ү˳O @0< ,臉Vyz`rm<:P1Nҭ5tM+^-打Q6B1ojRg†rϚx`FSrrge @U ~$ {>)P $>N ~ LנE1xu"R 8O]@lq5^E8ŋ-#OKry|OyG.}f-Il2_OX`znPL\c8Gd] x lNG~Nj0w]u(" TeaJ:bld VmVEaP]!Ke3sR?;y{|N!s4Ƙ}4EK2rY3X=~WѪ}qG7vi o@-H9Í>̢:冡4"t7CU97N3q$90i( 9Wnhgj; O՝%!U8!iy7e:WYN坻Ovz]Du-«ceR,‹Y"wА{F+ڌ3ʈ` W'ڜxte僱c"SG|־yxM 9 {)Q0)|q.2vtdV$F"i'ma+,Ce\Ietn)QY5ެR ƗW|y>Ά Պ3rk x!B}+]-stshv oN+.h=Ø=rjCS2d@"3c]Vm &[-FIrQ"/EwQ %٭"jtpd8# OLp/SuFo6G K5M, 3HV#8^ T8ߣL35%0WXi։aRUt"%6_uyc2^&4c>Ia<Or)W#$J’fM ^֤WdM2z|YEa’m{r sV]f|EYlI`_,ɶxn-[= ܕ2 81Iz /.jy("ǂaQ j+?VKQUg奋QJ$Mf.isx'3 zK‘9ULpO{I.*8I-VX7_.N yErQhijes6qOJ2|%l_F1-ndftv](8\31{|Lܐn;vPK?Rq'C&pWi{>wk?p!#Rd,cj/V6^[Ŕm.ٰ\mW_OJkxv I[Fz#p6_JF"57^sIt}1/ܲC@0qM|[Yh:D; kVtrir83gDo[T`&O#=gsE})T!RQɪ8;>Z1_(}2/G<)YiShe?4Fs9 M; 𽚓{*:/4U/fGʊ\:(4 ~>[o@N&@Jh߈'&&*h?3?6TYn4I؜F2oo<,K3sp&\uSfzeCL/[O#Bv,) c'&]I`/(H\ccz2Ӗ! A:<]a jn ?ɠąĸMh7ɑ?V (nq)`+TO ,,fB B/}L}̙%2m&i¼ĭAkCU'LrP+B ޑN;Uy "1u6$_l> =[yS)!dՆ8 6 PFj_t%ҹd1q ^q¥" =7JleZF{=׭kFT"k2ɾ%0r;eڢo#7ږf$N>ʣ}tޤkSF% œNaŏVhd.! tQ@@!?NXD?"t}3E]Ⱦ~rN+6ibAiq9]FS#hWia.ٜsړahT?J!Q+v3$5,lF:[xK1 0bퟵA<%v] ݜVkdH:RbcVhgQ~H0N\FnS###eavLh+ }#u68auy>E]_Ua=v]ιEz)B1Zzss襡Ճܪ(:RYҩqkb ;' nhsT{"J6PXBE^>[=/_Pp~䷒]LWh|GBsS/ ]?x<*څL *}j iLƘcy;L!: p9"-͍Ebͯ+RRZ=|oz>}vq%/fn^8 axQʙPK&( AfG%юMg(vmZ#XB7@*3IJ_(^|y&? ͪ}t0qbh.Wr<#u|G$!j><[_÷KpN-`S#HM+2L3~Z)ߓ+_G$O*koQovQ{X"!=kS(0˞1Qf+y:fkj oF-i 蹾(THB9~r}F< z1c.5?%Թ3Vxc* E!ʂR ?`ć iJY1x\Pg4ѸFlںҙjy־^)Et{闞{Z:wV9yqjulXQd5K6uCIArM/0S  Ckk=PfN9eQsI8|˝}:ZU^ $)\>F).l& _#|"c_c%imƔ"0[1G)@rFc5}OC $BMP-9dɉ4pS=1B6=BUWcg<|Kr̫k嵄'n4l{CgBnM+nzDQQj9<ϓ|дb8~j˜`=~S>u}G wûGB= w[.0OD)4~ #JMǫoaRgiU p`oCg9l vk0L7*:]/oIq A 7A$@1q|Dr="{NjqefHVEi"5S^cDBbwE2 \Tn d)P}X.}"c!m ;=B;C}+͘ɉ>% nbFЉPj:ۅ?7Ca !2Kf`yMfV00Cqkg&1C_Â]u4PҦ&#l/Lי;ϒ37( ;%<<:yMcO UZU#3B;CsfsvPEvz:ҝVw9kv{MAGo]KHeKݎȀ`N s#.\E;aYk֜-a|2{ΐ!ӆy!_R h"S7FfgL];>KbTW>,,vdFS@lwDM:[(sFɪ()x=uiJ){q$a:OtU:tBzA,TU_^8qp==lFY<)Vc"+B\uQL!d5ײO4x3g;9BUA~]mMXB]8-G|"ŠB9$,zsG  b|s(x"Q4+-+dߒO^iB+{-EVjS~w}<6نYy\npI|,fE;R*jCvMA(4LkgT al[*A9'n+:F^a| wp>+SpKޢ`rK/RaN>Юd H'hڇwŜpJR}l„ | VP̻>ɋk**^ oq%;W򎛣y{g$K #;Gd{F"?3$5B#"ml(BTiQLw?PK_x즹v26=B"`D苙l*Թ@%fs:. f4/j#2 o)Kt{c~䅈@wU!gCeT*j@1qъ7##\Y/ZIZ|JZ{V0%Tϒ3Eb()봘W;?!(blOe5I5QuhTq+ %#4XGuFoCw.VQ/GP J z<yD9! `vQvlpo6Q^9 X-r=,zqVd@[ۆ$ :R򈳷ޖ" D->9aB4׈:'ܑݧUπFtPԓ=?T) "6dPn?[GI2fߏD sO4#a`(~ Gì=ٴ&] LjsHG0eœzF+*~sP C(bmIvr-FAW8};\LivJDnѢsH,FTN{(b,=Tfd>=Uh>c?1x[u쮍J IȜ^'"2>CD\ 4^(U\@ ;W]["73JP:9wzuGlxaތm6][,| 4tAq{,hA!qEo@jߵ .6W*Yg=+$`-HHlHyjOL-)!k-VQJ_)}Ͷ0֋(! < ]6D:?  +X-,Ap'U߇6u\(DKݫH ߨYGRY!NnР`2dtzrE`#UV}P0=5?oG"8v 9FǣE?[hŖH/0:Pv od:թKcDqMB|y\hDS߄>׏t*||pXH_p;_X`os GXhLH0Y}>%8܂tB[ĹB9.* .E;!_!-|E->#}vΫhd;An+;߆~pX AiԖ>zK U?xPR`M#+sk}Lvndkl5|{\ '^ibPSvf@1sʮL?ƃmBk.IZfIW]a`&ha%X~ ~5CDZMӤ1vw_n;Q*U!;f2U}`ͺV6cz_ y #탁},&95eJlLg أryf(07J>ɤPӇ2-"{ !R#j8Z9eN4ߎ}_w ͢ѤASͶrAowY/#60]uzat5M %Do~C]q˴ ;O65{vy="+a4_֥VJekQ1Ulkb{r Qprdv oIUt2Eņ@6-1W@䫝9D-k_Dy!xH1ܻ=|ID L)%9\Yzf GB\'kReG-b/Hghv]ziZ&.(/G% bփ]x+o WbJ Bbw'a#4kwP3`hx?C5cHzJ9U5%JȂgD͘ 8(Y썯 ؁FRmpFybϺe "oP})|>ԠM=z 6?3tbÓL?NKe0vc2i<$̮~,vclv-:]i]}KJsMچ#~q;9zd)H[.rOn=yerdq|%5[,<(qs Z#|SFeB0K݋svviL vqο B4I}}$yz]9# U?>?{|v-L8AkdSB nA6nk3kDcnKTP)/c>X4>wA1] =U ^/aand0Rc,59d3L[F 7IS  CD89q,/4.^&4$|cNKbl)Mޒ#p1 &"6a;cS *k`WJ`aeU O&nv+6oX~oQ% gQ*goqX!Ao9O@4w=qjʏڣ=>U2G8(Ge>WH :D@J62 7 Utou}Li@gM(hDO5Q=X0$нlD{ |D/ݮ1pxµ@mJm9 e  5zkaql[w569)5|-MeUQ؝,;M8imvg:R'`K ?0<~wƌ~2AAۏrMQ՟-? sDG!7\7s-dzh+ҹb +GۺAPg٥ {j/8 b5 ,/tLLZB'1T^&@i6BWhf>JLKJh:37]J#vߑT]m3 "~f х uhh ו@1 lhزjB5>_~sfx/qZWieS#ܰbUg8" vlÈtQVqA(ZEGGh ˳.1y=LFlNZ Pwl8k I3PN'~lC6iuI0AYVuWqNJ3L}Pc~Q͹+[უ軖$:馵Sa\?9ۜUSto;|ckk ajg{d/'Շ-Yt`2P qyCI"ߛݥ奸GplLcڜzp lmfٸ£kaA徶JlL5y{ڵ2vxEg{R<^qjO4\G(oה"}qu_zR_4>B,y $J5MMw˧kiQ6@aݍHiUenB#SO7F#/>Ӆ j /gZKe?[WDc.֜kMMtS RrR\LY.['O"][xkp}!BC)~6oZ+x2|+6}$+{f.yJt+E}PY;<|1 WMl]$)q{YD?YSi V<~fG;/#O ӟVQr٘IO!Sw* 6/RƩs8-I/4 |~:K±GLM 쨪~&q$AՄzD S'M&[46,q~ݛͯ2~?~09UD]Yy`&(E#3UOvY @3m JoNDU;e ڶ@-&NIEGnJo/e֦e|>t|(!V4V"Vo-H?&ˌr p%;01`3ħ(mWoT VTȾDz̹=&Kڑɸk(+2/aT~bgKbpl_eqO" X Sj4R{ ;[mJճ ?cb0Okz'B}):t=fb r" t4wc@Ev@^ gkUIr\p4nWU6 *RL~y8Z>$jdK%06ܹm0[0SLeWY"+eIkWV;Hw+:\jq=*m< /{ "w0٦Pe, N"-qjE[M=]9`G SkQ'>1'RuonlxsSM q?5s1@(Z+7 *[d:,|(Y--mmI}iL6r﹓?K^ y"#_hyU͂ee,Q%߲DJHgvPT``\R15 mU2XU)Gi=e5sril O.|Ǣr} zf=W߅ѭ x氢,t.K_H?؎t= F,}^f+F܇}i""g8Dtp_`$%d f7$HΆ\".-[nPs;;ֱ *Ȋ,E3n sR).x9_axjTjkWo5`bC37_ge&`Q f IoXƚʔ,raJo墂"㢮A>p8Rcgj L{u=RfZW9 m0o`UW3S' 6$/0Z qz\7>[a2i}~$1vݺHHS@ {^/Wnj17Byn oܡllOX\..W+|iƽ5^ow/<cцgo. G1΁<_vLB7G&ՎlAp`|SKK!=(+ŗtq:>^7ڭ$E|d@eFZ|ӌ_3!5J( (xVv!W8Ma;ΠsYXkB9 ͊(캣4 >qywR" y^&r?RH1j}ǡ$VƼ3{-SIK;ky{@7Y yi]91z_h%«e_E6ķ$ėQ/ԫRcj=]M5.*&#a`ɔ܁?Q^}z5v44ˮQULn^38M C^ kI7J wc X#UBG o}8Qk6fcʤ3B] i<4мw"V@2jlJ5ٚ){X=V~R&69et@`O2얉ܘm RpqZۀ7^S5A^hB!uܔ݅U_"!tce4tCeZ'"d4'p Xݽc$. C:&}\'J%Y"Un$DԖ/ EX/xkChBX';;h"^rPB)TL,滑x_BV M@[߮~Py:Sx9fQVrPO>6ґ? Kiza9˦T>(h9LQZJmƌ>n 3 SYƒwjbwWxo]%dr5BdU Ë%8R^2[Y{WNvLvw+g>X) p6 tbIƩ[YbAE?j7vbEp\nwDމpdژqمC)H 0M  = hWU0fkpJ_E}9憞B^gF;*|7lR$黝MhzUcE-sNJXU $ w1'x0ӻჶUd!,Vmfi5RT;Wu l'vHL5^&X94G::xF#,ûlf["Kҹ$Y QMZRкrp?:\f۽)+i߾0·&[#j/7%HJ]T!YNolC524}?^; 8+zsqtQ3iWd5sVH/;51dO0a`sRrೊHivo?b|ѰQN7C%wUҾRȴ`plWƳ1K;!ʼn՗Gdtrxm/jhQ iJe #R> -͑/Ks@1NzmV-`e`O^恉`Xm'"bqIHx-N1z4Rg( z̄dCcxfb;HD^¹&Da4cB4CV %~,^t2 +`R?EReX _5ptthQ@M]g2[(x,Tc`@Z~h:={X-aKYV_q8A.x Ȩ؅rfH ϚΖp=vZspWGFUsb@nrD, ƤR dw SIH<G84hGk G`eaY~D- OlNP\`Z`>0'fv`ovfH8Of397aZ>ȉ3};m'R1 "Xq4zpPv.GWj.KtDpxYnBlS֍ J{HmW=a*IgPc>rU[q ȨQR W )#D ᛟ`~Y\3:9W) I8ʕ:A}M<\@7tQ\^uF7Y)sٻAc[:N#w2(܆&IDZg'q*A:D ;|nNw}fd>.)+Cvti{i)Mx*/AD7Н */fK).I`"Q_BIP*~C WCa+֛Ùn->f;ϠL&^R4m V!ETmǂ+Hz I/E. *+%hvODߩHR`sF koR* Q\f'0=\Vj%8Ru͏<B2Ω͊_451UTV?jÊK`jı@# 6eM~/K Txa^[k@Xf"v'>kyz An"(kU»ݓ*C )$@W*oTˈqXSPhW2$cfM @I N_ձ :ʽԉθnj,`9I9gt9WR ox:[No`}ܥGA%.lka?RxN`oWR7n4W<(f3J*HUMuTS5N--KZ#`,bwhI{"f\I0*]R ~]S?Ħ\2r=WOZ^lR+n%и TCd6ox뷳Lϙss\2ރX_9E^,02YjR*Xl gD:ڜ:vo_Չ0ؼX#(u ___[u#4ڛzRĞS8T*8)8vMBHv&ʢ#C^*X G)j%ԃ4dm_p4/wJXf!kbcnZГ8GfrN^/r~%Бz;pƻEvYxS? mSY/d3xq/,8ޠf &M5(N @_Y}OUeYĠttB)6! ˴=QQ \ >Z/fEl׽bcR3kYWƇ]>['͟1  ni\0C 0ss[QŠylʤZlnH"eJYاbY0'"0胑v;爮 qkR(|Nhyf|SȑҡuSX8K'lԒ֯[GYD.A :ߩq\m(wL_$͓~w4;ovε6[gd( ޿|)NΘF>+;Y<}|=q3};-J-$wu8QhUT()Vt-~H&Tu4fjWx/&f u9饩k1|p!5Ʊ)} Hw+|3qՈnB9=Z~2>5=NXKeƑ\xh8Dth۠lT{GƕׇG"= q*cIE+=e?+q-xvu c"1 IF[T_i[۲W[&8!fk\Q&z'<zJh7U_y|;U&&L{ iEa 859⻶Bܼ~ qS!'X&_pB^c 7մWrJS Njn3@;&[E&x-(c.x@OE,vͶ+?0gM1 :LPKCꅶ Bc;$g9J7LU+G4;&ͅl_e81.H+oZ(j= D=$df.9@]~ 30٠b򹘬c+徻:GRw_Ke4T(FcwWa.I}.ZA8>gYWJL%#<'.W)*ESx5>ݢgE[EPcm+:)GW0˜?7,n'KTay[Sdy!Ah!8tExLMwaQUA^%{[ &h 7/XHE;~ ǵzϸmxMDAlDGT{`,<܀ιg7qoq_}r'G;v-IQ{1j .>bA2HF  2~&X<Õ^MR W=R:Smi+'Y6F<Ɏtb!Xpcyܴ鸨ի+dCL‹o ML:)ؐ5԰OZuY͸-sױ:_ⶣ~Xg+QD9zh{;vO~+R .>^{5pE=r5rah'Etz2Ԣ$3@DnfÝN¸6x>Ik\翸z22.l w^B9h"2 YO)~JC_4kpLkbL@0bS#  h*E4Q 7R+:ym!NN/`fWD|؟#/KюsQqHϞIUU8`.f"/HڶN:~H"$63`8w*UCE k]7^=u j7@G.äR,TAI&S*aK0p幁)K`Y]J@ 4uOie'5u ːv/m?3W. d(${Vсr2å _gT;`Gv-#{j̃x* :v[L;cx`'Yo6 ?LG;' (K_Xbs'{F^|cZcz@\mPs2SU0;'d2Skpl@^_ϻy&SK-'PPd o慨U&fun&&fG|-0ZNXk/})IV=ca%P^Bh0 U?á`; 'vZ# ^0* 4Ms9 3>::KFĨT񈱬+{aX+~zB˚k06=tJz~  NA LCNZ޳{N:0n; 0[bOJĀr~+Pf2,Qcw^- ]>(\ctG3#Zgiِ%udY-ցygv0]ebiu:H0P[sP߽RN&Q6zgstwe|TwfTth @cUb%YJED:Tear7?v5%2EʳjV9>@3o\Τ]P p0 GؘcnsQwLlMV5pM3jDHŽ3vi9o@+#r_"Ưx+8 F696:孞ԣJ]b@߀cZZ_>Ѝ%&CHD" ^\:/=]V̼MDBtZ$!vT)}<0i.G̃ʮ` m& '(ugC/Q"pR|,"QCn#c 5E1r 딯#UG܄V }.6{Ͷp-"kÄ /EdSFҶ:\} A:?8c4M5ڀ ‰]K\&ʴM{T E*Fl$>V/>++SN mm `=D%qz'Dq1 v;PPs)$+˽)d]q*G3Bɿσڳt8lAK4>Fz*OowqO^£ $ f"'W {̗pm̰ 1ka Xd!_YJcT癛|8p'H\.hi`ң aLl2VFmnhM ',ì4RjkLJP5{&RWO$Q9~Zb+wm|E"?7}Ct=[&6wTz6cDC*9%I2;k@7br`'N^\2l5aFgч?b/Κ}ťLo/bNkd4%| ]EgBqX zn:'ď zb76@Pm eaHr Ǧ{iC/4N⎚&ny5`(Pz!LS6rÏhuQ^3K)%Rg;#M=SM&gf n~h"Tdhik a&_& 8\^R;m0=ip mw}kI NqsK5iCoEz](ur>\s ުDLj+rq^m= P+?@2#J3&+.ƷT~UvC #Zw8Pu{cm4/~{`Uk.O[Ä8K—HǺ ܉תAq:QJ*-3 I_~ d%1B =n0hF~kcEf {u>6|=?xiAzKޅܟ bFHP Dsᒿ8CШ ~umcܔj>7QOe{4 sr/soN.&~T'K3A蘑T^uR2G0vݳ㲕BrקꅂEThkBi?;qZ9: BIC+}I^~EtlY t ƌtht9"7e/r"1EWRs!%$4msEBR%3;'^.l)GTokRLBhaC]ǻ`ZWta G}ݶusL$Rxj9Kp|ւI V073Q*krP> RtGSƄ%3O`$IB(R皘^jLR+#7pGr:Z'id٦+ G#^"p6PWA8!p`1(vFg@7@z'63-}UwL[{I@99p FKO]$ (_Uc~ؚ8[@n'n85h,>\F>riX:&\YIB.EjUgQR0 u6 &(8lܐ#rzҡ^B?{ Vb.>aY Xn(MZ>AK2! ˛8UyCHnbxdv26;5T-fs=L7ءU& שC=dʱFx@XؓLI4],9L !kOAѹab겷EQ7+( ,)n ŤUf1>X(e]\I!}f6UQ;i W+>k(@ Z6(61ݝ( :`-ɯlBŐzdw7,J"C KfmD cPq]S؀^-YVMnBjARid؆\3TSd=]Z rű^ZoRښ&g˟0cwvԓM(,9(n@|B/Af{띸ؔt <`({8U2DS"A?8:6,PI 3=3V8ԹKrmSWU?=:%PZ.^ 7dqU|7}%j̀21rQ\ ԙNP&%xwk8+}&Ue lB]hFnpФi{ﳖ׿qL-)sWM?4{"z0#c-x!L&X+J4uُ8v`?ݚ lϓ:bu` 0D[v؉'}YQ0HK'6 )Mi Qmc,gEX繒l> XT8khz;E e/K</*hQ¶wU@t' 15#b=~sUYt}H)?ri&)~p}߃u|MB+=OrstΏ$͞\pK?ѓ.ҍseKH>El\0b4yD%KIgJ·q<4o/J@Ww!G$r1zÜϒ .%KRR++( ؜5{!Z Y}Uq1_ʋB8Wi ^ԬV|D:{v+ʛ07l4#V%pI`͎'|pS +!3[|گސy'(F)0BBkޭ77#^ 55'@I" {i" _hZLp#QQebE)`;A5 S+aa彿$sCC{*ܲңzD,-ȸA?mk6K1f:!~r_8/<%Q+5;~Xȴ>4CzN:8z^^f|#9lt9,gw8ϼZE;Dg?)Ckƒ(& 8m.֌XFYrFYiy0M[Hs|)]]&TGtB; ׽-/%u'C}ņS\A:'b3;3(u~k#?9MSmDi&CbLirƖ&zQ}g\uk -,ea8mQQ]{.>j(="9^*ze"Uߴqxt S}zi-?iB-7iBv`g73mDmh lcYaz\: go0PSvV/Agow`ͦ1{uxHD;^'?.31qCW,A?I1Bנ(}:+W'S8CS]R= aU4ZD Dq,+pY.v{d,JZsbz`5Yb1}k\}gt`9O=aZ2a5m3($v(Vz[xz? Oմ|cB)d473d"o-` \aM(Hi30]Cuqq1;Z~8dA-D*nr\=\2S= wb媰V Zk e8$vK/ݕhI[η[{aKtUv hgG/;gs&{x,-A2dZ=)ƃQ$TxC_I$x *ϥ\{6{m1LNG'_9eK:}0{ZXsy׺z y;b)yQ!._)5|M8풟|/OV'Ɯ~c*8 aHefu9FVf@dr閳 :տyeζ,˩ۛS jhy2* -Ǩ v_D,6(/n^Hm`LQi_ȬdՑ/=8hNWuPt,ʵ> D4x ./_XF ٸ5vqloF|^i Go>{}*"NtN%?|@z0bMT- Ԭ?見L PHa(KrA%Rհ3x&X zrW3-ޒl/9(h͸'+IȻUCtkeχW9[S%XV߈'LnE,zH%6ЈII_(eNKWmj˴rhdj+{S< v:| m 4Od1" ҿNx%qUA |eqgU]|\h"J(Lj2nѻ},쇊#j娘ļw~|L6zC -)N L?<](,eT܍z lyyJX1@8d_*j ,gyu5Tl|J$%m'&.=H䕃 ;"Jܮzh%RYMky՜J<|d銽˽*|)Z18K&+T!y*Te D,j;Wn{K@Y<„a}ÚA1jl:F2}7BKX8di J]DIʻPf#LT\[B/$Y%f۶׸^ЧnQGI:/ڄ&8JOTo,5/DcrovL0[c=}VJIx?N5ӤhF ORդq)|Zz vpSAȻ Lٹ(.ʾG} \rA :F9)G Pgq}gm8 $w qa71ͬ.: &#ёm5sV ʿw"; 11ΰand,)1\|,вS˝.i+Iu ;>f`˩w`&e|5ȌHQ+5# g辌,N<‚o&6Hʿf[vu2 ͡ #pѵl]Cb a;?~F*0V[FU*Ⱥ85=<慅cɝVGI #z 1.^,?@2%$cjԢHEܗ&x2j{ ,%|Rf>{BB}Tād,U^`CQ =sk} ?][fm񛅣s5zF[DѤ[{< C|Z|oCсt/P(ӯu+AcN%}o:p:-U*4Y1-;gb2I*-$#S;p'D9vgPn/v2 bu;\ c-,(حﭤ\]Vߘ_~`N)\xE3zx:.D{+M,G}-{,TU ,{[K?~ۧ[X㚾۫qM'+TVƱyF"4O/{Q(ZBזr,W6lLQ@@e 8^c <êm|j̼! <Y G.tZi GǙD=rh~[Ks&F W[ln۰VA9;mYۏá)Tx7=>w^Lq'SUvgw|7 ӣ Q8$eיή3@|4u[A_u{`1*cc2.'mUKݭJ3ib ѭ Uwu.Yh KaK L_CQZ>o,ЅZ‰TsoO<\f ٩6L>̐4pͳfܝ_˞ ݠ*yL/q,u{g,%󑓁Ax.Clr필ݦE@Y‚FݼFQ;YO3>eIn4͔7 X]*}J2p=Vx!z݋хz`Z <, ƪ<܎BoPBRp#-JA.%CfB NRB Ū[]IJ,A KiǢ؈E\kнSa'GdWcQ‹kyh"|[bȴۆ^wݍ!BR]ܺfoC|(uҬ5K}o~Wѹdy,rBF,k #~RY'P[],*TaN vQYd;w}_18+uRC38(Wٴ T .ND>"N5yI#dHO2yDc "ړη;H09 CdCpSDՕYכb_-ks% p BtS Ы>-^+S8\=|cgX- L!iFew;K/iD%,o̰`zeU%OV2dx;kh'eu4ϰ-@[/V~%2ȼ߯_` Uɽ{H-^pVn M`uXݐ֝j)uLY2Kʅ'E=utZ&p7WiJ?sy!QX16@l3!I~<ת7\'Zq!17to3+1;ԓNݖ2G'z\wX;.֏Us5?aZ@$A:I ,x@D^KJ_|:Ld0 a%- ?6 kOBX S+Xȓy~E6,:QT[USA!rk.{`:M&}!"Z*RD29@+?DV @b<>6JQbF/[L;8?ꛁ^x ɣIA竹4r^eUhKO]:s3/sGpWoF*Ge} OW ОMeG]E`F6S3ZoY8`]RFzih>~P,JcEb=ݨ"9i ʉh M ~QL掂.^玤|'"D_`ߜ}\O;?hRWϗ">rLCqS:P SahSYٷOK(Jm(=Ș>Lє I/?cX%ЬY"v7?rR$}BfgPUU  Ykd38plF;^P^cT\Sރ/$)= ;H3`=,1>\ExELRZ6JHRQyߕKt܎hdl:aw\O۝8X~Oe^:S`U[˂` +s|GZ"v~`ĥ@K}`G J6\g+*%fLA{yüx\5qc)0(-V^X*1 vEN\msp) nFTjuH~G"圙=Bc/ k)po:va'xÑnЬo9~kđԢn&I<xg=C4 "gy<Ďdw0FHE/_S~u¶dz5qU!1>+ Z7x s\*ũ['`~L}CSD{&hOH:\Uz3y~TesM%g>򮇀$z$pޝVG}(46u9Lc[?3ͤ~>Y8QΌQ mt0fl7~7Ut'>x*>N{S:ITqC[n__lD̯ൌ2ɻiQ|Г0oTWFӇR[Fy7_%!3QRj*8(VJ f9>%~TQ0 5lLO7!Vka+ 5%΁$[ /!~m/0a[j&%$K+rËe/\UH"U%q'\pҵSCa2P8u} 6A@Y+?&>8;Rkm=]/bkZ^ h- N|sm Uִ~~ UKစ7u,X?ighsNKd;ׯ:#$X4~d³ڐiK$HUk~ ׳!> i8q9w~xGn{3v^3/F*8CRVAƒ*84tnhoOFܣV;hg՞ l'/W 2,oH<\(RH|bn;4NiUfGT/hy#/(Q? ޅo:pX!Cv8%C;fqIzIUc(`IZvLn+8ghX䕫=joP@T*yWݢ?ӣsˣJDa eX>rXtwt%ݬV<:7Q.f,{N13e9" UЪv⪠UYvd(gZؓ4U3@%r+͡#BG.R )d~^ƓUV$DJ'}'ji- z-ȝƢ?>&%>>ʩ|`Gi'33sQ"GwX8y}oal*Ybf3P \Lp t/\EV;EAL\V/\KT鿢n >ϽnQC&aca|߈ c@:N, 9eJK5](.`+%qZ`%Ʌ+pT.T 4D퀊pJn0Kd4кLBqMW6rU3T7o5jY 0V' aKR*}O=dF"$dd(ƞT$bhÒy,ܵQ2V]Q]z'H9OpuVmeƮYgUaE{мѦd(+ *d\ד"_jiЄ.6%9LLpEE&@iYh og=]7dU6 \Ν@)pIĢ 0xk]&2gBP[n_~=g*վbfw?_GJ2M3t!d~ntxF,{>՘w]9:GRtl+g#2;JrIA/J=O ]HZn^4JT߷>?SlղP_Qrhd$cKaOVV5p:4(o*#N_<_wm``E|Vh߳A&jId9I-S60[=^ۙ2oNU*^;ӟ# ͛ˉnx[a ~Im/ 1gUh_:C5*g3mَ3Zɾ~SE~P2xƥ17Aݦ͵y1ZFHZH"dFtT5gm9 PMշ!ͷl@R-BjEN1ZnDg:!dxG&a-|u\Wdˡ|Q1J]oZYUFsEN{S])1R}a'8M>"dF{\cX >>=H/ޱk\PҧISdy3 Y\~_HU oe(Kќ, ɦ?M _\ވx4#<_4>gx"&^u-CaگxF&ԃC1C>ӟZ&Y w> e+֒h!52{).=}M kYMF,4xzӜ!;6iMoiwْ~RGZ> v[@k{@kՒ`#bH ؏F㸶 TzjQ7A?9I(9p8]u ,F 4\фז "4i\j2xfQgjÝ\ʈy,6Hk ]a BOZXX:>gJn&[2-240́W"y4X}rf!E~.>G|Lgfbq/ҹMDoW"XtCC(%&:rߤlI YvňT+Y&>۠EOr[7'z}"{{2-]+G:lH _fɢHRVп` |zz#E1՝zJ<^T[jdn;Sv/dTo\SD<:p %&gⳑ776;yߞ|J8R~܈sVi+\Ǯ05.aJ8ʄtlYΥ-!rȬap.vgEJyb `RYYE[V8h+ =LSMǁ3?C:}p {sO0͓ԚKMdgW3n.[˜ aTvƥZmtjZCc["An5tꖓ@vj]BΑqpN3 tkƓ9f.MW?|rGr*>tO~*bL1Dž<ݹ#YL\\ 3ɜn.fanr/2gB<܃;>f>^vsD=kyH0w[L0JuGCgMt)BQg:2tym_VG߰:a+ W9B2mgT=Ɔ,M:;Yŭrm7[iE`mP~-/?q.DW="IK]3t!'Anp*22QI%4u}ZUvP}G\Ǩ%|V:tw[Bn~mß"؂8i^ᘢd`cͱQ7x eMN~B̓ J.~1Jװz^)4o:e+tFpf4:Y}m;T=e"Cɋ ,q}W 1N\Z3ˈ)ol'g!NT,HWĨh*V7 gܾrw[gu9tr  Zb^ mH\" |Vhy]x15k\ť޳鮼y*JܒACZ,g\$Drá8N~ҤWnC Oug afB* <26i6rFjN, y( U4E`k|ZRg/Tҗ9L3W}p2?!q+Ʊ% I'迿E3l{zN_uLD,*k wl=a Kj~KOccئn qlyU އkG6wYx{8=1ר0jmBcZGJo H{nrkaI{ K~hr bYlF cctTIYd` "K*q&7u~h2$M'9W紒O&l/c֦#qPT+y@1zK1RBhQZ H Vv_>@hǬ}6xfwjbFdt5;Hti̼!5cRZB`lKF2a%Ekq;{/uJ#3Fbe:-M^Ss|٪m~m2SŸ0bj!L[wYA-=eQ3Pӛ=SOZ H9P/g ?z}wž_Ά S{[E!3(1݊" V]~e٬BDDQ1MNpn .v]_|QN"V`vw\nqP$%֖on|FPfNq$gh7xӂR<1o, 'XK,vLz<2wi$̖`Q%&~Eԩos y6_"z֪kYx -u3OM2/'A*eGDQ8 гW]E(p#:zz@#{;蹾`X#_*-M%aϊW'J˙6rL:,Eэ3] $WePUyOa@6Z4%p&6h3{%M1C{מ@K8:=lxצ B ݗ\*z-+6^3mlXlcQ%J3G4!KgB~7j>_KIaot8cr4.VQSb%l€>\J}6!NWI?WExe^iTxRyZ8,zu D;XLqrْu% >MB #VRGX6:!H䲚)ω')? Y^`v^ದ)CQ=Yb=u TGF1 8>{E5sxnK cLs{Fws:1"[ƴnr*5a^Sn]UЖl8.ƞg-FJ} q~e?ޕ}@g c>x{Dr/:ӃY|dO~J VUacG9nd}\6%H9V0ٿ9r'h9Q1ݶ 5:EYz&ߝ'ܤ|J&/U2XR,0%M3=C;yB}xnuvɡ mA8D\a?uY[ OգP^ 6?ShoXSϜc3ֳC8XN>Ӟ?8N%Lw *g"Ka`7=@__ή%a#ad[21o~vh 7\,Lv\r|a!PInx{}]QLG*]9C%Utun_"\6Wp5(r[ ~XAgC?T)_0YP:d3hg7 #ez2p!U ɩ$IQ ;@\Q#FOU*VAܫ _ @#ݫJy/V@6n 5^hJ6U?<*VK~hƐ+ѵw^ 4rЫoA6hoXg~'0vDGk&9N%/H̀-"}%&i& LB1}Mxo"s|H/.C936bS@S_S*)ɋ@'z P]4kZAVlk`i/o/}$mDzr; P)Y)}5+9?MGu1bz #{:\&VW U*U(B2ȮE*{_2fWP#0wxo46==zZ$'= fЪ M8>}ĎlJ#J̃ϢXMq1@4N"/eYW0N /$tTX-cdK|c3D֖uє:k56Sglˀu&Vfۦ{ 7PV%-I1g83Yӭiмi$ J|fJlnS}Z*LTpJi;}l̅DV~`+n)j>23 ?Wr^x +cwMRǓ54qjo/%azd?nCA]U9 ribG@os#Uŧ'hf!\,dG6!M%2jʼ0H=U¿dw0t_8pR,D9~`2#- ^sRt)aWxmp ;Fg 5S%9CWwӑ^ǺH)Z_ 4o됐XDN#Ubi.^%N59[LWٗ_ƫ6몟W L^#Y1*rdQk`A4kDҟ4$~9O4^Mqu X?)#6~_IkMJ8L&V% =iRtH{ku‡f:ϤPvmmLawR}T)(&aRUSr{QRY8!WZM}SdNN !GPcR%\{88C?hag"*K=B:3>{* ٪ J;Aݜd3 nG3Hzo fHd&zH; xY(څStLE}dw,K{ݿr 1N7M{&'A:TCqtZ ^1~ 8>fDBC`r8W/3AҶi.0 ow駋Parڌofie^*J9H^Z0kb!tE\洧xVZ>d` :[H?:Iz&I'fu_xC~Ayя $s Zxa֐:6qZPQmM=[Œ"i(Me(_ mõsaG:ߠd"gblM?"c~1]WF735;K@q\r풛]e`wt׽ BT7Aw@wW-1̒.G Jdzoy?(̦ٞ'ONs/[2AEb)%]6DW$DŽ!&(rugpx H? Mb -F;?5~;g6b2|?~.Fa͋7o$=O^chHtչ?}.iS?"6zoN-*̗I E|)Ͻ(}(D>,?l N)EF}"`ޥA iDo0gUgG(Ddũ~yxU(}:۫|VǼWԕ6wMo%>n T30>BMR@MJ2c{[“ݼ fISVFfVߣ9.=(9 !VE;(jWWL˕ĥn{֦%Ӵ X r\vDNY"ot:8 ,DWAum{/TRbL &q~]s`ix1"զ Fv3IWË>W-u0ړ,~))ƫL>4hC{4@Gu.HҲvk+ }_D|HMؘ" D3??"ox=F'!Gw-_P8tQ }]_(Z +2Rr\EFʴh΍dJcCH\Adޠ쉳 Ro\GV4Q'޲H,/! iw(ױZ c怲]ydk?~EtT8{Ζzt^#K8vo<›ݪȑqqwމ {SD}h:c}<*8eCq{CaOMwwtVoyȓbÎv=u =R*i-`.fɒ**WO.vJ(s 6O -}bI#t!ۖTLU'qgI=Eq4̽7)gѼ@vw8߭lnQۣL+5bvYvlёE^< Oś%:da747DQ9;-ͳ>%FȒ(UD&HLwŖ ;.GPi +ؔ5[c>(ga~F[n]Ҙ69-Ef9`ݗəlԴ|;g_@U1bcg^Śh5Dae=^mȅHe\>l\ ܌B\#0F`S OLlF#_ؘ0]<KyϿ^ļ6nww~ H} "{6Q'fT.,ޯ$b^C@T|?tX[X.\^q4OnB#3C*nXo̳@giw'w|SWZ3bWw-g =j:Ʊ N}Qګ25/nn.c[ um fݦ] Z{-opoJ$ X]7V0d/>,S{/3ů2PZB= ԒEEmd%&;ӣSBDȌP,8a]媾׾rhxMx`: 0^CNp‚b%ܵ+Ʒ̆d6QX)KL=d=ڤDy"Si+Ȱ“`ؘۙՑs67p^32s:\ai6_<7 BT*GJ{)8a6< ׇV6Jأأ<܌?Pt:<IٛsQsxB ORWgRK8s-"Ym}',!'g1K"fJ{P{ z_`v۟嵚NA$KEDZCpWXd^lE<ݤ{p >F곚16+uIW4Cl<:+z2CMl9`;ܧ~aۢ]@>Hx//fvu+(;1//d:dE!&r|HOPm GyX 6|}in4Ӈ?30?N)Dܰ7. PZH3!BsJgĻ *^IaK8{3R훴88PXse%aTfc1#rOq@]@[R|L+}/D{F gCR6txgs2q>% ]"埚T䕣mZ%^?y=-ͯ`B_]7C;?HRY#WLE -ӠP f;L&9Xd# ){7&7 #2o*өv?LJ|<[S{S(v2tNJb<,QAs{y2dE1\ARaǙyݮk&31[Q!U)rI2g!;?-!|FiuSyʾ ^ IݛI7$*$ (`ݳWgwX[&CXC&wb/ɏDnKt 0 p®O(ƴ%+)_ ݤߥnH^6aiX(;=~3?'KgY01ӭ1B3 _qP~ߺVAe5|A Z~0GsfD}Zo۫\(i.cOVSdWlm xc0gK|PM]8mHO1%CCͿ/8ǡRsZ K#|pR0n5Ow,K"!;Qi >1K` /*bmn6ffg?泯Ab:K P)!q;;tqʯ7:k᝙OL\ t^PGXwʵ5I@IjoN+R UXRBm 鏽Uq7Lȉ*m+FwCEKE6D́PxcoE32xLC mPegR9Ibh >m`T*r!,g䇒#`]hYpFȫۆ#B.7HtB_]]- #~|-Mv5cI_ʆ{$tc]S4X&`?_{m*.r8W*L/Ki4Z09COrVtӁ5Q1=,Cc~;vbdžI(U6w)tŤJg[]d̒R ss^ǘA4!sA"T>ybB!EBHi)j_D+cW *c`a SHgWHpQ|7t DIuwxP_&VNu h SY1Tp pJy|@2@O˶$?t2ZxA(#;_;=.hӻ]~trU3O֢!)2q}/2Q[+8㐰1q)"V2gsI)F#f⫙pn[y4E11lsY@xvcuGvvzr]A(w|j2(6BEFrY~l{d|JY1PE ,\YS<8 k͒=R81t^G,α;ʜVqaoMZNop}DܮLO@vBTe| vBr+rueJdO=(Zk{辺Ɯ@ 4hBeC xY(/+x='жvz$ܳgG}(ǡ^ Eb J?"rr$s1DP|lhDl@>H˜2xشHdvB5XɬSi3?"NLev&~H3㙴{)l<\[ˈVg Dqb.zSwT<tP3zK[dZYxź E!sݱ *N7ِ<$!XwjG+K_V AXyNĹ XSY#{? WoĆRe .gO6x8neP"t"cgH8+ ЉR,բEJ7b&12Z:S|8Ɨ2TkО jYҬ%zFVEy*'%\s.%,H-vhqVqQYNĎsa ޶XĝD7$:: 'L9[\ħa\<}q67s>ڕwHPSEaAȳt^)+qŌApp:fq^ĺs+ i ZAfu/;eXp%"sg]pߤK{<*w9Z(x:"(G[m򄴧OW>%lzM] eh)[9A]=w;s!Y,qy) NQ*3zfr`vyؒ-T[Y;,3h@xy_g%4ҳv8$丕v !M25 7L[9#@NJ;Z>(j4d C4rn :g"i@JG a-p_X2L<>s0;8ސkJ&{;5>r*\>Pn Pawnf&~uSiи/]P^'z% ae؜P!}Jˢ^8+[$-`4ޓSQU dN#1uߐÅ[f1zp2goH$Ӵ]?y_ymdQBq+ PWx`pqaZtb%xrp)Ԝ"ԕ"qS 72 1hDj7l,X+p~v|,)M:@$`d%dIpͲMPEI%'JIbP?'ˊ<ƶ;4 嵔~ C!ѷ@˩ݏ0Vi*Wm̖ QRnXBc㈺P;l~ ]S-Keٝbw2|g`Z"D#;4||s{|tH W 5dI2xWrm{[P]4O4A &EWaeԻ]%G0Zp ٽ;-8.rWrTOG'rJX>by.zBh#.cx=Т:08518:Œ6sEr9rA&n [Cu*e[yu]4KZlcѻ45/DdVX{dOZj8apm`K;A{W`=f \).L@sƻ԰E6R /=I OQũwrrIyO);2C*^;mF>;"\̻AG r{XLFdUp] 4 VEnOEvu*99:2^GNf=NcT[=fٓ ҪH\m(D>L-Bo MaBP eL!L-vj?%[.U -"J@Zq`k0 )=!*aE[MDlwݏsDЮ8Qy)3\|i%/@Z/5ojdj\SLp%ҦPR7E_5>:@B͛5CAGL]IALZ ^zƑwgY0My*g':q-/ Pt%D 5+-_-fBc`"t?f0Z@QYQ@؄W8yd/tYe3pgцN]nz;R>g%GZ0)p]Z ]+%($NYhFH%Iad *CRacʿo:,s*$hչO /G*Rj%57n?VKc#'Blˎ⯉<C=u~/RMob@ 41!,^#͸2@I iF#aNRJb]fg>l}.Cv^X sx5e>*{2^͆7tnq&ŻW@Lrr}H{6r?J0_APq2I?gfݵ޹fkIR1Ό5^}U`#~Va꠻P 5BGM r7@۩暛 22oceT@GLxz&ۛznCXܷT􉸙DgiI(q#fOi܎O@30S"+AoY x_(MBq#=]Zs۫+ ?c2 ͳmy!Γ['T3T9^[›1axAn]+2+yl{\i pU1z<5T:6vP3?+KeM9I>e۽K;eZpAc@(=ځ(Y̆- HWoM9ÐeDn|5M͉"ʤ\U ,ȟ#8u8vJzuאXxVӎl!ww^=r>#v3 l]<-e1٩wUqh;V 艻*[F$oĨ5`0 oO5YHsgR#=?i)d MҧH Et@ pld4AҗP֝F._'aTq)SjߨicER]HN\Ũ5kwc]}L>qQl蔉;G$l=v ĵ)RX 16љu ט\qjQ֊ϱ ::=ܭ4tFPc~I@-9Zá Av*16mo"!q "Yv"ڭmc17CFvP˳)_~V@挺fM͘R= =:}9_5[GԪ\<^!!^FWlX6;4vF )%9TsO仳Ng4us<َ}9Y#{ȦLJ9Y׾1%~dh0kk%j] 4۾ Tap.ء ѶMO^Gs2!Ty$`L ,.}.iЗ<43c Jnͬͱw2G?tE&Y!v ݧ%H÷Ir.Oe{Z[${^1oJ@ d+_k,hы 2ך ąlT_9 _Uȋ|ReeKѩ]>1sypA2P&FBtr,β^xkukŠ'䍄%>'Y!Ǡ2?lKmE/q2jlz6ҀØsǃ X@CKcMLP6ԖagEB Kg2mTt,CUXFod!.`e[1eQ^#o#L6;-j:A)7v;':L*PF5#rlzWpA ]ӹ1T4.ZH#k} }:GwawaF OfBa"8ϥ7Ȫa%(/e&} v+h J>d *8S魥0uC,H+[6i5{Z\!;lxPõ Z~9gWBH. s*e**\` |HX\=O&3XOdJB,0\o|VyG"3⪶m}3Q@a}Mz2R|nT3-i^`x媡C k L6 g`UZ!Aܟ| Zf! VJJÄ`<63D#az`#kH{vQ\N$#&H|*Wۧ/@fzNo/gx dN* ~] 1mXa^^[\2[٬؎qpeycw>Z}q"+ڴY"CǍ SmhF0KP?Wv-Лt_̨{;\+Ѓ8FT4 Hu˃pvL:1ߐvUgɄsN98\_-NMbc$Z[+wF-d>0Jt@wA)292hK RWUdC;wU O)I8eCLIE#ސ?J{i=ԒZ& 6SzCW{ QW<3)[Q3&9Sɸ 0l HKRh-~J?v rZhj[4o-X /f !=)oPv] 7Hɪb05Ȋ,VЏ[#s޳6R6wo=ұj8$"a@kq3Mgŀ% 0Q00J9>e.ڱݼ|MLA}_ 7-M5兏u=]1^zў%RNµUS-Ad>H`z~"ÆR?p)xIs'kj)ɴBOКdV9zo4YbX3L+MJ_-/'kB&!%`|vgѾCE C DFxǭH1i{xE9v\811 haщ2^e7`>1B>yS!*=s' O 'rz`*[AøT 3ƫEod|לZ*)$OP&4[ru]svؾ.DyJ f~E[<ͬ!t%OؘvB 04UǿB YZ8鴼SVl8-ڠ:& y)qY{Tȡ0nƺ]DEBg{$ 8ifw zi5\anx>WP&||) 9|4Һo{W kCbw(ڶ4*=XzE `=@NSڃyrdS|oYgFx ʌ":&.Q-;[3W 2 ?} jP/w5p#!~GXbjHߜƝ}lf`z| į\RØ}wV:(F5>gr`NgrͲ k%y2$*9^\W$NlA`mL'6/F:BԮ^Sy*4S9_LS%͸bd5xWj@i}A:$&NC>nCg "H_:xHHT郦,P 14}9n6k64rU_DG QgMdIvfw|6ht!aiF̤'>gVQ"OAN%!QZVX̏4\i {p"II~lڱm9<-W˄IB^1 fĥni&tMݷ~SE68f=;CK3)oS`M̚oVM޸-#ɮ&* c($`/zQLr$x@ v) ??]N*KLA}w,Է bb\%٦YQF1c)2dUi()S#>=f~Q(S] ¯5D3(lwma $Pk ^~V-B n1]hK\1KI){-NNA~d:d,U6 ĖaXvUrfSp-2 s ?$c:۸&)onYK(Yr^/vuM}sjb'tGХ)VhQM^ W]0z'SiĴ @+2|U`E}BI'8 |yف'@E?wR&q*En8cu4VgH: دQv) mP=*ro#&.[*CY7~HNCI?"[ؑx&aqnF]5:$(yuj@#>iMd>.Bm=UJ ,=Q&ռ6΄..\\چ/ 4y)Вf,a#2$A$W}>s.y杔bf&DO\S.}|+ -P-)p0A?` Fδ KdzIf G4Dj{v0-IWeVҴT @=I`ܘT?>NN4>5_D AOU.g* Sĸ=|F?l/<}㘄J3ꎞG[/{SD([9 D;]W&]];xL4ko$<:b-Tw`f;ۤ ߱+vr9O0:=C! "ރe*Nk 4nAkD;>Ps KU.|_J[Ft7 :o ]kh(c#Ode'tYbsij8-n>cyQXZ[7Xfs Ea5 ]A2}Iӟ:l?y,RI'iΛ9>"r'JƋK9YL)S-aP~Vv/Ӑ3hZCԩэDuH$.^\ /L/;i_YbU*ԻS11MleKp1JK>ݨ2:͋ut8gZ[YlgwS)&8 o jz $CۑWN?\ @6`VNQK":'fłA:=a9 1&HyZY@ @ ?&y#\™;Jd/k;>΢h'VR5gj sU=xh˅\M=Ή/[/{*=YkC** >zD{>OLA*d.I벉ٶO~.[w5!a%s^Vq:2T)Ѧ}cSgtg#dn;zLs@$GФO]/9H)t1 d̥TȼǑ`JJȼK%3舻Ki&y.` 1yP_;猊<"@ۑ}X&7Dv=O*Pa 3 o. ;r [$2.* iMFA$3^nA7A^T:YEM80ȋ 2)?w0cT Ƒ ޢ-fP]&{7I fqͱUUln_%RX]6L!{n;PCl"O^FPKCtϐjbN{g % *<2+Tw]%v`Fpnw3V33es{8*PCPj/ECclr|paݜeLi;SdM 8[GЀ (CB LV@RB]!ϱ̤-,ƒ C yWK7砭\taW)uy @ 5 L<~o57*v败k LJ™4+zP'm ]/GRwT,ij+ĵd7dqzze\r.;$0ݖҽIZlE4%t5{j2y!?%=c5"5,Ml#PZ*U=lǨ7 _:37QNHiRyL FTtGU"k֞:_]pߙĠk X3A< íG ZCjSxԅ:+jݹMy]נV?uҝ@_4l>\ȫl !BKIsgW8%>օƨte}[Ap`'8 m@Q@ޠl-arnٛ&Hڢ;Me6tvë`N6>r8՚JZ?ك 1ߴM9T$2cD0TľPб<6=bD9S}Ө%bۇռ ms;v^ϸ 2rhZ|GRތG;S<թ?sAHb8HNbp_Q*ַ`sޤdg4+=ު\PlC<呏Gim!Jrl)nfte<8Ҙ0PZv UA/x|?>t&]7gyA; /{QآP5D P?Bw0  1QY+)@-7C>Rz酿G5GQSn0y)9gvǒ<ɇxJ*1 dSd^sf:1^3O*CB <r wWOGCõN0*"|H/Akć|\{XybfdqߋR.- Q2KaY͇JPA ci0"Y&]t( z@2R}r֤T S@+r ݅-aK%lX4Q|i<:KhҠcEeL%Ć5ݱz 3i1a+9*\JJВ5IJ==ey|\M.IIl&!aoig 0ozqc ,x:b4*>ʺ D#C se*^(BT~J_^sGQL]_8g3蛙AIJHHTRWhei-2\RĄ­AJLh]ZmZKwj~jg#օ)%Ǵ,^-Rgjt&,Gs<ܷiNcWT2GF0N#\|{G"BALL>!/(02EZ÷-n?Xm` |}7ص{"͊ (;&LxzMȮᝣϹ&IBX{P.=Ī"#[q:,Jla5)tdXΤi.J\ P:raFl.fϏ4Lm`kO}4U?#ryWQ38fPm&qe}iȱ_\ 6}Ǜ8~QJyÝ::5qI  z1VKZKU sn&W>ZCmnjs66Ǐij_;K\~8 /`@qVyZY wxؖfiP{;KbGɩc~c{la *r5>s%,;<df.]ʵ\Kgώ%2H~l#0E:>i>2|x>8CŔ~!3Ld-beNcʉM:K.J[< 6;TNrcI}_F߷T/JИI`?ϿEG:"sM~;8Mȷ!~ҽŹ?BvD#Î?!ĺ8lFjIhp^%S-4kyM3O,l>"\ieSrBukQU&\(w4Z hn[nlJiF+L0uY`&$g`[q ;>tϦl}cɹfDi|Cf,Y2۲æA1ri?% /?:ZF@&7#[$'qo+81̔ 88vfՎ[ûͱr0tᯁgGς=Q hEǕx+͉̐#opB}ڞ8K_74\QnVOfѳsJ{ mBh^?ϑ'@b]Y(IcUÇ灤6y.h.N<4'>luHh[C . s6X1g4-l5% '<aZAeNk NI H۸| ɓ[EᆝV89BUOu\ ܈o -ܨ`&87`[55u:_220E$RmV82%:Ŀ%pfwU]N XQVu:P!?ӭe*͗m}pKZ?Yܟ rȸ}K̝B*zѣA_E= $W !=Q.$/;M`Q&9Yi}WUBTsG'BʊbU:2ӯ(L]u{TܻR8ڭ({ VC FNbe o]I O x5^?HӛEr|9,r)H"? FkZKg}! X&?%$Hp1G?B5B $O^QL_~]蓜[\܈Ub.J2̢m_/Uo}:>}-&6 0J$-c9Cr+}k?C@G0d͋|ٛtj" ObwFEj{vN??FTO養͙0` iۙ4s5#iwEQlZP'_+]_`8o~k ;m0wfG&bvRCy+,H>v&X0Q2!u8&t#ϨD,6_t PѸˋ <3]QcPreGpj푖VDd[0tƕ.NGRqEb:WlW9Ya anf {)93rM %7Mibf̖$nԴZ4ԆwzPM@4g=Bl]1!Y$|dO};[?4p?4owszso [* Ï g+~MZ._^,|HJ^RM,5K0U˧HP_(TYܦǘJ%s~ҁkhT5/`vXk]+&X~Y"KHUEϰb;xIr}V_C_Np S'+1TpqT]i.btaq[ձJLƝ 3=֘r|sΆ%ΊJ :hfP8$}~! BLCa"(YLo8xDѢt*/9t `ɲŭ]&C*ZK#asSד^C_O0ĒNrS07uƹ!Ў0-w5LJVuPm %SNM#_g?SnTG+|@opPI__nt9A +ǁ/|Bu%knMN"{HOat^B7^=J8rFah't'hnSZ>7La8&DQL; Wwf›;s|+y^ h2# p_O d]O)qΦD<Ҵh+ ((۱02j/rR)`7ȃb}9%AUyDI+j*+ڽ{gY+r6gjߚ3db%i%^?>g8ǰjg,m~c{ј+Ofs-|{ f+,ä>png h3(u bΙ05)1 9' &:4/:z1pPՙU&qЙy7GƉ( 652^+k &k9sB,UrA0v/qpS KD-lR mSKLRȤhyMo^Pȱ4Lk=pFM?KC_]@>P]y"->g5ܘ*O"0Imd(p©>tLl.V۟*ي3 'dZ!)9Pݓeaݮ/!y]،04jńsrY*&? e#`dlU C6j  (GYrODճKٰuy|jBfscs Q#x(=m|aCjMY(8)ړ{ є[tIg`8A:h7>np-hGf%~. r࿣yh1%VzZ aItVѴukKB]6g9MF 3QNqR;Yf7NyVڋl?ZI $$Be >(27ҿ)@6Ouc]l n  P:&ճI=u9KI+Y-W!J 4xB`PڣŲ¬)/ Zd}?)?O_꜐;1 (DK'-n$-LlPPxA}~Do7*_f UAr08t <~XSM,Dj}`<^E櫀QJ2'y2MMO `"&5R |+Xw@D*guf_fpE%c)f$ސlǶ5eE"6A@3fN q@FHF(Evccz+HZ(VZC 1E'r|J"v:S pktao*0σĽf=~L}h2}jUL(5 SۖI77/B*/IٹX|p+MxO^-^~qA+c"@1ȨWJ%~j@#$xHd*9"@AO%dyDwo+=N7Dʮ+zi*x9pڿx3CCp)Lm,/oGSR x/. :wõvPMx}5E"xb9U-YiźyBUB`/KYvV7f FHx_L5Ň1T.-k֘Jlcb*a3V$ˌhܹ|I>ow?2H3E^ k<4 z ( 6|N‰P]&h1BCjܴ-P-2jwk{Qp"H0%Fא '$E+ξ\NW乊o'|#- ;yMʵ~DVwCq\2hf$RMgUsT E(/ LJeb,؁`j:lqBJtsvF?-cxu6t"w7);7WqŠsEoRG)QNgnG%h /y># <} ZBċ 1 wqےc R/^?fX:5ACTJ7h7ȵDy4B< O5Pf EynP2MyڡujqیBWqC"}c U%kz}}Jd1e|JJ,k]8V>,1n. 4a:IE#JQR!ΌQ|:3]y@1Ὺd=Qo&F={ؖpfJ'cX\6иbe ;fNF,ݳ@DM/]V@{]4 @ ?IFMY1BtorN.Z9Da3Kfش./Xº BkaϙJ>pIzAZI␈1HʮO 6|-Me;i_ ݍ[6\&`$COp|(3P=рuK6~,cO]w6FWwnΟRWo~oӐ|4LʃGcEJ*r U`&@KY3kB,_> kv;gx:$J2vQvN׹kJ$j0!g*݌y6EjI')+ Lkzd v,I(;r ʾBO-+Ksؽ+lSs&~Ιsr4Fd"I1ޱ2F%?!Bz2egXp9>F H7v$5@d*Km"EZshwBE.u]Mwfv &+JWۿ3}u{CDc"2㎏PKS*Eh#P$} ۀ]{찡$|>*G&M=GƣBY`1.k]2ÚV.8iGI,᱿NRb_7,Y{ۈB4»YD`n̊,Micv''X[r(EƐX-Rh!m$aN3utJ y|­?%՞7}3wsw֊ g[mAKRJ8SDggg qWzXv ^{B3S\MEl1;Xyp r$;ōf[wy%!M;/h>tsuN -\iT פ/&AS%庣6ݟчl<–F%9a)MNIROt7/e!z1y\0: si{Σ!kH~CB=?e*D? l# 3@ 7%Opxb[R7mkvjI 0 pvҿDB9e^i> Jh6Qe=pgU6k(za?'En L@}溱#GUW\rQRbw)mogH?tG>n"ް=nEV3͈9FFٻ}|~M߾:3 >aFY0TVd7I5~㰭!@wj,JJ6OOR\vC;$HlBs|m"s [fnЏ/-(?6>R쉟.4 =B¯'$יr5yI"r0C tА%'ܽt,ug%ξȶQDB1BU]~nNT^hjw,)ȃ 9ZN=cVˑH Du $/S ? ׯze,\mV W%6dWXN$:=;(G(dMٖkX|ڴ!ˢ뗩w4ǣ>6+h岋? ծAW=mesur;<tb_HSr{:2J v6⥘R4>Bupu.L{~a<^2K9sqX NgҮ)~{ cixV' Ӓ"ӣ~i$/ykh) aUnp09C437-|3$lF4)hw} hU zHq{MuH^cz&lCmEh~T!pY K\;ryHS @c_R @TPZ"h{pquCa}[s=P7vt Jތ~Ohw&DŽY!2twztm3=jQ~<y&hr5_:4qDqIŅI*ևv  UwK4BBI@ܪo}; ?SϲwI;m(W[+Pwlg2 l?T/ _a ]ٔrRܛxyW7mQW#zWZ7zf^Zp *'蛜U [l 7n.ϛ?xFkꠅH,zpK |sW/7^1u +o5ywcv\W,L59AD~Hs)}ְ՚|6d Z5EV[(:?-+ z%O ľ.z\sAށJOKAah7@\',!1XWXɒpк4._ 'O7ܨ> hjWV]bj &ǿg2~{<<ā54(g IB {.?SCpAbw^֒JAOWh2mnމ yhgKRhQmPr'XIV֕5.7Ӫ粸W' m>Zm;4ַ' ֹ#RFVE7=?İX fL;a30 dI)Q}A…>H"H<\gisY_~V!XDM0aYkIM1PD@A ?n,X۫*Ml"p쉢ض$0Ѥ0j>\efF(.R-"=JʟIі5}FYb_?s }l_@jҸڟ,,1sgtx5ծ<-й}8 zj@bځ[%Whͮ xᩉH;4:VL<wTU /Cd5lKف1PXVX.U|}:NBFmnp_.bh85tt/tNG&uh3wAiW_pɡ3ScGtebCD& ~\#^!4(5sE(pTd؀S #.a<Vi(!I TU,&=xϚAJye4ŊrYD"au19׳ȝ{3To;n0-<@TߺHK_7$@bJV)9G%񑑽mn[)$<ыiGaޜr0Z1!ޘPYelrYI}#C|0Hؚ8A蜬kG(ge=}N`;Z(78M f0;"o5;S3AܮM D,_lrzLΐ<5Pc.բH>Ce:ϼ%d.j#'P`Wwp^2 PpO\ y8sAq%3<ǐ+EQ1T idiMdhns/B*r.}f^m^UNE굺Gau- _4i!$muO KM>|̔H-Q(%F,6[urz7šN Hd]8&G"ӏiհFk]k00R[<@gb#)B ,*&@)W1$jݧ2Qw:`w=ߖs WJ!Ϗ {CJ!<H qzFlώNB,=bta+ hC衚t[.&˚ TPTL],' ٔx{#Ava" @&I>L0m"\Կ] ¹Ӎ9F+[v[OpL9FuJ]RS&qH l܃G"H#M7s u4LZF/T\l %y.Ͻm 7*xGi$OJ Mս1-7Oq.Q#v5𮀉YY`F% 7?P%$ Ŧ`S#2T +Gr0Z[7;*BlR[> ݙ ξY/ XFDmM6ginq2*rDIoSem?k4:k/7o>_.:#o "d+t #E4.ϕw?H`؎W6B HYrZ_C2IĶ;3={2ʘ`an2"X_-X[K~YVͿ6ٓQ iޤsL`ۃ0To.2cсt*{Js"tK~X5VꐛIۘ^&b. Brf,sw: 7ΦE3RxC2M :ˇJE5EL^qҰذ<a7KjfHoPj|:?{2qlҼIlg_BpHp"ug'.Ag20SMt5;]h ؄Iq6è^ C+ٗϕb:G.q{b31WaQᵧM ͟8%?5K`-G=2En9qyG[N7B*=%=>AqX2wlX0?>>sD %2L)a;[ɪ`vu=],~|B:z^$n}X\1f1# J;uO.R }VK3OU+>eu]c/аQ%LotEzqQNשexXlpFt"dBAM }\ظ!(ܷ u=*Q # lq z=S]2|/ds YlUV3аQ{ 0!RKaJ+Qqu01וToxkFomV#Ctӡh(q>=lJl)F/5|!x3&amTBz ܰq:U|Slt_\@<#sh}KX.QH8p1'r(YDolGU-&3 q hDrv63|=O~8SFbcM8+6eތf(l>'DmN *"뚜ىt4gOKo0ۑ.'y#hQJ/[`{xdqkE9ҧrBjxȓMnb[ 65qo{™I[{`w$up> =#ʲHO ˜sS#FGvw&uG;;$Q&FS!AJ<{Q 2w_&' [REzH 4--*;(7-x U;'|_-1w֎NPF jP0zԺ)^4R\Br6w3 p K*1=r{BsʐcJ:iV3 W[ ~HQs Yd1$l|v}'e8yY87f3,&џAJ1QXf硞HW4lJN/U}.x :ՎyĆ!i;p7|_Mf{XQ+ 7r !:D]/Z|ggb )3f^̒0=tnԦRed_%d$DFi{7'ERRlfJ9%QX{ʄR[:_dUZ? }V 3a7g?{#yCY餇>ds</]Q;(skn3FIݙD|eP'5 gMSݝ0cw,[K͏$9 w9-,^\/؎94ŋ=IIMVnYR&!#N$M-URO n l/.hIDEa +޷my#.FvƎy7.8=AJTXVV5hC.[%a9?5tw]`r'ĉG-[}d(r36+r&ؽ-oaeqVo9Ctv-MDQj ]x ՈZ] ᰛ]=ATSU AOhr HF>].3K0WwUkE%yݸ&>MAHo(Zx? U(\?QYbMOnX%L*W <1E^']&OHE_7Gwϛzat?1Л-|211uPnu,GW2=OټaO60r0D@NgAQw L.A#c̀A YgW݁/8@ BJމ)EO.HK2>rO}P~g>ǹY@n ^( bP_`>{Q>>^[^]At6n.9/``e1Q=1C ;fЀ`WJVM4` h7[~KB劰-\{h>r=zp񞍟Ʊ7 tCQF)H!TJ.j?R$kI4wr:X3U=->w1&}揦oZ"Ul/1{ou8Ms3Vineض+pJ?Qlt|x*o|,Y$}ũ8`,Aи):| &6$tt>9\x%%n~sg͵϶#5cīΛvCBia)2M\ :7l)ytEb*,4_+l\F!OL9fDޮp5A^s!~TMOg"‡*sKd\sN3)&Qd)BwW6{:} «I?xTod(95YA.ƪzNX杄>)r(KV^ɮCpHMtjk d$^ص ն֚OQqЊ7J brOs3g< %V.q#դeȻ {aj`8\E嘫"JL3AIݜ]QʴOO>t;ֲ[,DJޮ6㫤<ݏU}A!lPc],-f,OuLme Q<1"}3!cܻ=St`k7r|hT֝éU:9nSD` _nQ4Hmݹƺ=#} ]9dŸ;Mk𱐪sO1dZwk5s _K(眱}%$?$R{i JM׺,>6S]ğ'*o, Zs|ĶeLE<>xj,+kI;.Ԡh/:Yb[Te'85j^!;A@S9qUoPΜ yq d/2BKM 8gf,dU[Z ;h Z0z7G-컘J6'xtMg`42G1S@1cN|]ptʘ=M;NIuQ: ?FQ)V/Gݧ?kJOj>,DY UyFD.e\?Z&ϱ"c}֯lsQ1rJo~?ftVIwNmP'~3R9/)hzhy Cf|! , F|fގY×,)TU0PxffB٪vyT,"1ihDbzk* _uFIbC9<}/1D,1 T(L1A%e0<>f⇫"~+Cj- (fwuΚ(_t"W橌)XmT2-K"6-X2Uz ]~Sva2H%=sM Fh#oo/r3&w&BgL\-NlVBmX~; ϟlSr>Qğ"V5qKdCiNݧ- of7+Nvݠxx=(5LRP"))QXSROu;|#4u# ֟'$+VA?kP斚L3`Ftp M_ڼDZS]ƄUZq> e"&N/2q9RRz/~X;,t a (ʿ݅ccâfX^Ѱݗz,w 堳r\ř<^Z%?N =ˎe膫chKq>[IO<{!o^K?oILӅ BcH8q\b½3 u"8L X#ZNxN2Ǵr>o'HC~BQcɛ::J&G)xQ77De-r_5JD+"_x8 l}IW7b^):_h«tFP%{ b.Ů{@\&N[T6:Y|'V 9<>TUF;=Eg`X,BB[9bt+x5*WYe*&svfyȬ%ϴg6ej , fgXˬ\_$PI.(W'=]}W#0ʵ5At>rd }u}棁z"Qt(+dGܺaťĪ聣Ë&c>G0L K5>36滴[Fg6 './`9-]~ګn\!k&#Ճa/<͕n!됁S @d\4.0ܰ*i C%OQ:&0%y{Lv%JXY<۱^ εN(Fq{t# 7[&TҤ}߭=bE/_+Lhݖe-j#҉!6eJSR0ۥÀ2`vj U~e& O}{K]K_cMSLipǡ.vvWJD]aX;֩"ŽȽQPy6\ ٠'Uh C)T C4T&eoЅT5 -~+/=p*_;L`#Tt !ࠁNBfjͳKҠ=f:4rwiђgFݬ^ᏊHJ}Qj>:?@f}| e?F,=jK/f<ף/JqiW k9|e>+&#=8WljHrŪ&_=j;-\'%|H|m,/Y8fv MKTt@ c#7T?A|3gsp`wr7mzu4WSډ T/WԀ {v[~ړ(ja8{m9[7 `Աrz)UV`7rTY9wM)Zҍ}mvb5.HIԂK_eN -J ]ӮF}Wj 4M9T&k[*ki+J>PC{M3Tf֓ qAwɩ8D'wʳO8U9XE2nO?܍x +w-)T=_ux ?SaCyȕB܇#"GIh!Y!${5-ed5.;hw7[B1]?Itr:ZVq-0)X &6KFͰg"XӸcΌ=҂ccpAQYߊ%&d pG0MiY/@+a+@MmyA>tg@%Ai3p,qmvtM`[ oɉHCnʁ5i3z"Q7_%ӱ,Ңn3Nbie+x\pu#E5.N3+NZ+mF f)۲/LVgnq 7eK~^jۿ`N"l}vljfeS ˒AjJr{uuP0$~R3-2(%V`giZCČ ˧f`j=z~uQݳ_{h3S2dyЪm87܃K6BZPnZj~kh$$;U.=`پJUy~Ny+Ջ &؃W+4)]6[O$gLֈQP}I//gj #\8م)1\Vd䀨q̻OS@ұNugRx3))x i4̠P? pqΜ(9m%\}?EM̮=8`R`;W2Q2XZCns؛O㔏g$ m6lqKLTPx׽Ig!?ƬX7WLl̈po!pm'IV.ip|ԇY_)@֬G. PU|6̓U t\^DR My}x Af:Of[ \Лƅ㾋\R/zRY}ߙlb{7?54&! s+>CGRRx_W%5Z %/: I~*ıτ&% ) N ]ZBf$>x1 W\I)sUlǷ #hGKFnzֈ:wmWctuVW,GªF*U 剚jz ~hˎ^ +? ~1Kڠ n+O+9Xz`ፃ?뉘ɿvi` .dBٙpr'p~7 >NNQ٥1~ܥ^ 0[@gV{Oaem%c|Y)Rt4Yk-1Z[N;]7PՔTأGO}{PGMsa(R=SFrMwgjǶZx4giwAVDޢCiwQ}E#%ߣ\bH}Ho|!]3Ne#l{hg+tnIiH y 4?1=TN4*bڱRcl t\/^F;b]"b9*:%D-tA#zj5,IbOs`_f!jɚIPR!eп~yʆP 䏳9aL G IFXp4X&7|ucG(XY *"MK&7N_E(իe#oqž1ۺ6~J|T4 [O!Pݸo!V| (iSg+յ]dNKG!ͼ #3~{|H3(zsxK?Y=O{d\l-W f5^Cr3|RL R6{H2[%#% 3_)/Rq21l T"#Sa1. MJԖkut讍Fc I蚼gObH *gB>^3nDyb&HP#SU> Ǚ/]Ծ[e5 B%٫8N{G 2J⯋:u ʭ:eђ#ԤT59ʥ^>gH´R:U/)rq_@}S`.J IX*–Ls omvalVGwc.h/[!$F_ʄn@"~G$`ZC/~1NdPhuC.1BU$ @CI  ҽߑ@% ķG?q@Tؗ'B˃@ۤ1 lYPqEXxT6Jyyn3% A)\\F&+6+VaӗN*85r>;9L%dKg:3l>)2zֲo-I5q U<0[ӎFyǹ!+%]#*Nxc?N!Zn&Qgq+Nr $iHEPU;_:w#αrȫ&@,l YpŤ gK]yW-5W >R1CsxJa'Ӽ?F0IR\F,i:%|1= B[4>2Fka9c-eÐO vHkL{|d<~w4sSN媏"S@&Θ8%!* D{`eGصxͶV[ұ%L MuTHʴR \ Oͦ?M_ӝ'K‡nP0Bd{,A.[ʩ/a'UGs錕oKʴ2X.)77Ch@Ig̦[@R8pt2ںs_45JeBʼ[s_>BV#077n(6† 6A0f5^7Q). \\`ܮ=jQ?;Ca*@:HOւ D?l yϙzu~@U]Nڳcq~W;}}-A(ֻ.=Xlޔd͵urCϼwNZxF"zg]6SPS OLIJA >ޚқ/NzCMy $'Ar7O5u1M lܯLʸ)'[8. R9E8i82pޑae6)'Fwjh+Eᚹ>`J)oiy&/zbOf51W!"0`ݴ Ϗf<ܕ†} A}H ԏBC9#èJ%*YKӬ|(=x6e#Qtx?YA1<."%&ԍd= |жyO,f4w#JeS]] ʌ5 \F-mv vQYt\HSӛe RmڠE>T):&j5oGp)_fȪlMp,d3?kǓ=1@ZI͠SilW4_!Z(7gh9> X+7=4%*.z'OqhbgSpWURmg􊆷ϓYE [:ű-SKڲ/b\&ܸ@7^'_5 >#XóXXYLPArв i B_㺤i|hj:țEq`X_T.+ k{D< ռDot\V8,~%$w f×A$%[|i#]&Am|HW.g8Ao"簖0Dd4=Z3<0=>ir`Wb >{Ǥk:SWqtp Y.RV?3|{JgxӴ#նLF-[}Vw[G|G0]XAQlԡ,]z淋z.̉@~n_F '&iMЉonBg&ˢ9/zچ֕:{΁inSISA &e|D&-Pc)e J*ި47 WZۄJ3Yr iLd fDymӨ.W[jg M9",}~E6 0ٟ-JIʘjݷ'+I75тԉy\!,a\xZ|$ZVKDvYw2̛#6a ^K@eL>W o+S[A;<՝@a zC' 4f?#p-*u2J5OZ /}Jc؃IƽKS;:{ׯ@Bc-)ls v.b >H'u8V߲XN%`z$)YyB}Gn 2v,zQX? XM#vx`DLJ" J͒\ W*&#ܤ4ڞ5 v{ *Iw$麯xlk(Z+@ ijLGD/6aL(#Ew"a ȁ' jT:V@8 GY@:7nzAH[3*׻KW_]sc&FI0r[42fNU;F_z LڀC$I"jTV,b*72^/DCB:1Y6#Ą$)#8E=tbT0U%vZ흦K$J C$8Z~Hǝr~)X(a.wȥPNbM?o* J)#Dk޹m) }[(p,W:P!#[: frʛl;m'ծCγU w!Ks`/$͗`oz1r?3~ĸOUZbuG=J֋u|wva ;&t5v& ڲQaK6to?,끝5ndqXCmͷ<)${v뢧qB;}dCq>3N^̅j{:3KI?jfAk hբ[BwOXn SXfS|8hV[C*F(2U9"ɨ+t]TȑK47%=ZñwVx!J9fFO!#ae9}pI҈J;& оt,nlJ{5CnI*mwU));onwZ{QtDzH,DB鴙ќgSed4zV2x7]KKYgM6+36{a=t X*c?? tCf\H!D}M֦e hnlI0iUȱlq*k<1SA>c5 TM..:dhD C D64ud XؾWrn/"A`ׅo#n!f#JZ!ENUͰ3 Xw@n$zfJLL&Pb D\oē=J@>8RȩW[9` iS=YXt=NjpCl(OPr{!<]L?[L)E1Yp| NچCO'f0D cLg@hgt^A2u$+~F'x83xKN>ݎ]֞8ST߁= ([t f5j]yPP}$e,,OdlBۓ9 ,kŜ ̇Mw>eC1b'Vq:LS СP )xG '7L&5ZxiTg-9(T4ix.x̜3@Ez:ִ0 _fYV'`)X.V-=P3G g] T3^I: u2"!C̤x\o=;"@p'\x oW`GjT &ث긲0,MoԮgo8)۱zTfm0>V.[δF=LBn:p"|rǯ,t6/[At[;{G1yX{TGA=W.0seCSVbL@\8ԉ! ׌FXB/)- ې=*T#<4EPtBr?m2 )|ZP13){]JΔY:WJ} gF#AS AYqt: 7YS}zxl|t?d ({B?eڦfk[pn !ko瀍kivk5H ?Xtt[9bNl aVfp#/DɧĐl%ʻ$(La_;{O<6Q^/NkG}J,|r#=^=Jy_Jkp9ןL^Le j^fFӆlW_.:{ibPN }T,j5EyKȠ 7?WZ+24&LA]{*bD4#eb甲Jm/Hf 8W"iX> {'e Pe0[QC/e9DjG79 y?QM BYr9D㔋R؝Y0a8Ss{oV9ϯ B%1͛Dnni) q=ۗO7kKp2X!;"mYA= XG3ΘBqG~ҥފ輢#@+EV4~z{?WBr<Թ-I!b<ӍFȘ:5"OBItْBdž뽳B{pq$ruI#sQs^z;gE4`wrwXc7SDg8*t~k>m=‹US@'Ƹ `˼XH'`opt'8:o hl¢q<!U=~ypc a5w3H<Ew ^cw=B_%Er$k QuWWAD뿂GQ3p'\BܬqXy?ȟmcmm A*ûb%1uC-\D 'NEڻl1Di,a,vCJ0zoДT-*q33c 控 YiL iJ?><,P.&؏ 0מ Y)%bo>rHv@l@L=]wU*< <-ZbkRbI{ˣdJY- 6b.-n+DPlk4QWiXx1Sy*I~66X zJ0")Tv?Ff:h(mϸ?+:9(77>u΅k?DM &mYJf^jzԣު=vȕ&̽4jOIXB ;Ǿ >ƕЄ(7Ґ԰뗌lI@/>," %G8]( Zr{5pnCͦH%`ʽP!"X>Tt|ڥ*(2ىhGG>g:Xf)*-(f6(؛`VOm5GR M (8ꊤ(b7)ҵf[x+L'd&ɡqiU !dP/Wѳ8Bqk&Tr{aey|%wZG(q 5fiXF m*93+H DTj8œ\mēΜ0sL" b琪?JMb=OUs2-E$7YfOejIPhHI=d߳t_X)^9\6-M-pp}<}󆉂g`Ӭ'< "Z?)xj_V%uFB8:_ o-_8>mQ83N |wվ%@i{&۰ jgsJ5ZLp(rb/ _iG^Up3%bf NbW["83Mښ'x]е@8njs鮋ṿ첅p]rЗPMh]}dR6' -Lwt%#gp$wSЗHNnYy@ѯW5hQtU2sxߵdVyϩn|XE;( 8,q;2Ҷig!J`\3z-*I`}ae \&$1N?X* _膭J9%DK̈́V#:p~jqT;V X^4q M{4>_n4g8 :|ɞoYBgHA)Տ_ODO/m0LvI82Xl2pTHsϟ?Y1--!AKq'@Gj\F%b0Ac lQ>|&Bm 7saDKVMW424-7"jU5:"aE_2p %H>Р:[0ַ\LlZ4 &i1eI"R)~GXCGC xc&+]RLRf OM̺8ٔ4h"Ȏ\婈eP 5L=bk[TzGp{6Yƌ%2mt/s[\fQI@Z ^]~g()I"KX<1Iߝy%dZmGL'H 7*S3˥|z*N߸/mp(w%~oKy6lb,/0 WzrSG5\oBʃ ذRQ(J5;o.y?v,vzK) 1ـZ[* '8fbonk)'2隿S}UF-;Q>rX8vDS׉kۤ.m ep'qe['8D(noO,bz9"~EfJڐkjbUKȜ;aE&>_O}3U-{dcYJnkӈ7 +00{\(tU:v5#!*Lt1pQ*R CxS1 R4 KqGpͱ *7HI! nQT1.5Տf$Ygm] ]EBz&J$6]e![VdH nw }\N4btǖ^=52R?e,.+)6_`vZvݩɑ†tM/8*(Fѭ»SjRcB[2G}v׈ḃSV%`5TvDD[{ rUQ152jqNm2;2&,;zHxsJӫd5D?c(V+kw,0 \WXD oq&ksu[@҂Sjij fb|A >M~nʏ2͙]11`{DSc| rA=Ž_z4,: ƛb=+B|K;l9vECi :~>n  pAZ{T Ee!10C郡\ςV%т{h.\+-1=X=)9| W ib OXwnHH᳞]:@@Yv̗"XJІz*>LyPa5kd*>anu\, ƛxsPƝ` $+fޯZҭGDZ ]3Du3n^Vkgɧ®o9 'j韏b~&rjx+F~`K|!omP~ݠה ĤГ:Qީ$ 4E}!=!9Mj'\,⑬Ů!SiCט(/nw i3l />hdSz3"QvXqؗ zhd 8fֹBl56O6g:a¢|=>=O;Zk*ּ;Rnc߷x%pVqENO8!-:+isGy&1:ss2orθMҁ,ׂLzL g*%!]Yy A ڀ,~tnrÍwnZ>ֽ6g/iCIPcgSOZz/(fk=i%lIQMLq,k!x qfFUeE7wټeƑ# ;^kS @ԑ;:8*#|`E^~qSjuq!/lpH/9 {7oh7)mV%$B |(BܤѻQܥi +2cOȰ ѬN+LVqZ%!裵&Ee t0EG6y|4UՀd!A$LA[ˉvhaGtb蟆#ʔ|0%ZZ с8JdfYr|L$~oJ k U*Z+Al~ӤR~ȑډҭW6 Avl=ARH2ƚ0\_"e|Ynd G>Іw-ɛۍv}BRE>ξ,}yX@(Y,@ށx:n U\L;VKQNno"!DS{V Q=8֞'{$4z|HnIVOpSS>Y)jO)ȼTq6oqdh1/#qPx,kcE!5L_oyځl22!$I_Bh)lA#h)u _`XHYT]j-(!+ вe ,U}ߡju;$/%aa6ɋ)QƨV_9… [*flK&=<]uL$oqkC˴T,@q %|WH^2F\^ Jus0koV8ΠdGC{p::_[۠,J:̷׊-4Dd/nAKNa*gYK~ػ]UWs, gek\@\+EG>#,㎮9jv* X7LoJ?Lbxʄ=]9A J{5v˕ T=T"jav[d?zV(ڀHhʀvb>Xڝu5Z zʕjTlZP&x!]}!y M|^en͸SܪTGXD „_6@Z\K?Pʋ) UkzDK I9S' 2,pݷ?X5gj1 **#]ڌ?!WEKMjJ0|aǞ/xLs ;2s 9 kDMY|N%IyftT$Qxc.}O#].C}$ 1ueM:wB i &*枊=֘"fnBfFO cv&BgiOAQpg)G"x,|OɷJ:S:LC;+Zm q⟄KX1^RA (ZtOUi0f4m=ә6QN8 'T~wt6)tjUcE3JVTBJ YZ+v3r:|MoZ6s#?{58͐dZP,>jW5_bnbzgʴbq IPuklPlg<$!%$މu〼0`Ha+xMѬg8d_ 6#&#VRdËʢ084O=KvFFkkEn$ǎt`Z8=| ' u~ХV3C* jk_f &70ajg"14b LV[R[O~e.@ցa{d5ʨWR^EQOqNjGzCG`7pD\}h:_Dx$iU!r%>8$9 E!^J+I3_a+@-:N} MLۯ\F/8};5oɃ#FhjW'*cG1nA+;D?7B-QRie)4/8Me-~wZ|N>w'+x=8hY) 2-8iup毇7}0P2#P}\OPF}50}Y:$Tcx*eIm;2F 0Z}A/՟8pxǓDb:KRpɎ},;٫jG0kuIK]R (pw&jM0iI /D$eqы?٩Mp/Kb*$_23wOD#H׀qPFXՁv/ܑ̇j}1<~1@L|d}?cg昖3`4v} ϖ ~4(Z2!ȸ6 [ۈHy1; qy6rNT¹VPц.4Ov8\RvphLjfw0Bƫ~\IIWU *[`.ÎF Я|ݦBߔjZa_ *T^yVllvaq+ -Vݐ_PI`Gi/tfR^ϥYc=1[>1yh1Q_UQR}VD \`VO͹%ZX##J]D~KkTY21" O_ Sˆ-w^pdC۹Y k.2I쯆vYbC&;h+M8)FTx!tŰn;kڕ;P6m")h k05ouK˾?o !jlkkNUHo{0(;hDf}TLnk %b>Se;HPXq`A֍c_ՏHZ1ޞz',V,DjJPiSŊ6yb hghI8zE"؀ 9,Lyh?yjŊ[Tf}v oѣK󕜄"\Ak'S4Sv)dϳaXԂC#>Nṅl~`o| Oq QUt8tC(l>H 9ȘjRUp\*$˼o]R~?iLf=S$Al 0_Fۄ·FX#X*23"LYAD%"f#;Tf.rC%`0xvT#T:{ سiX dp "&׈Pѝ ~Ñ=z|kJxb9727c؅5qλ&1`V:x*SmLwjd_(i0Sn"q\ 镧x߉] @WĿCr_VNKp+;6]x(9  rz(~b'x0GLVs)ϙ} 8k0B凞h\oE}v{ԍ_:,UsF9rF ʤXyZxe^y[B5;v=4$$p#Wԛ(!b T9G5B[n"BjhQX(zzS@daVO-$:1% YdNZNM2K-ڨtBDJ0 䫲T tȷDDK|jW ^GcTwdV&a+͇ Nz?~kG-24^Wv; ̣?}q^#Vr} 1;0e)>8?$cgrh}2a1!UV"sV\-3`[Bep}Hj"srE 7}Tw5?T.:/{dñIF/DdECS'؞.HTB!tc/,1"l~1w$O뎡3+k HbpqN‚b(@wjDKbY/z}FI5p 1TY(}e_Oֻr{rA[N-Cg,U1xߦ\́Pdë#]F™UߥGRc=)Om3bjj8WԇԾy}E$e<.@k0pFd&wQW݅ љsrp["_b)..21>)V4't@3R0Ox25рs^b>Li6r[S>)Ԉ?wrx=Wb(yJ>7fW8%!Jr[mMڐ> z뇶 #NLAw}Lט~UX0׃!}VFW}eyD2_G E$b0[1yc9:rJX.GKчcp -{y&Zd)(|Z0W8G _^Bˑ㷽AS- @6ǹgVh#=hfVU-%4F4ivυHpG(RWz"~5f-ؠ$:Gfv.nY{}M$\TWPאW,Qux^ۖ7jljvA%n%≟:)mO{ֶX(?~ !ay݊Co'"3k6'tq`1GZG1 P $kz5ᐸ %ztaLɝPb\")))Lk {[^Ş[8 `fZS$mz\П-ә0Fi?(w$T &--Q>!&Ľ;,cTQÑzY'y} 8zǶ$@mc*^+ P?Ъx_QaP-5f@caòh>v =}v !u½m}~GMjtJ^f6uL(dKJذoQl=xgo ,D|fp4Kh|$UQL9b= 6;=YVX/352G4eˎ=Hi|SSp l^*pio[l9E+J&*% ȃђk93#OM׎3CsR`d#{"LHAlW\Ft-_j4rGF| :y h[Ēa5Ypc*kc!B.㼒>.b㵇vk+p&㡩G$!Ü(6q@GNGKT覗嚗F,e?=vH`H :1"½.^BX·UzaƌlIaBnF??^{\`#֔ρIUBY`t_KF64/$۵13ۂe[;SےvI)*5ښ3ǖVTV.%xO;I"x\:_O] ѤÈb0U׏Gמ 5Vm39~bel0x*aC"By/S8Y̰*!"Io)EigfJVQ҃?v71,]oq>;I]8O}ӏb*h!- D9VcRM·Y[ʭ (Q -ۄT{@in =C!`gKaåWI62js(IT}Q[# 7aruMW!-G y~p;MMfPgëhyb <: sh!?)m7/QmM ˗+=cfrľRN #:T)%-BīD8PyUb2uM<+ֱs#)E#Ʈqi.1i+j|%yjvжtyyKȗp6Ejq7$B2}z1 *s:%9 qxBHIik}|͠#?9> P3gfʢt;K@ XP5 8S/ s?`:o\Q+&E`2,N^X  ʼnbN{U^;<6MD 5Jܗ^`x.BL/%CȰƎ![m"? f?/&p9,vi8sn+Umf:81)q6$- TVWƿOw֩IF3!CM sj[ĒYߞeip-վ&X sloEU䴬 +mqAU֨l/!f¬ci5H](ͯŪAg|09I.k0@c7KfQ@qmܖf"V 'Wmk *@ Ժ~C,t`;HUƣUa::U8'ljD1wM: y$x&@k?iW(zͽe5E|H !i uNb ˠV9$-wn4/˾5޷>p3k\x ZKm``{m7>)`Tp;Zެ` \8h̫IQz_O䃾?ȡցcv%q&@iq2?GlާkCy(}VDA`f~9?`Q;V#IK=xCm8D+ѫUzH!5{~~x_Cr#z 33Jˮ͒N4#&][rzSɋ_%7ڐ$N4nFyH.: s?53bq+hh:afq3-G>R7a˜Qb$6#Gy5bh7#L;-)|E2+CMLtpn1o=iQ d 兕S!L'2* 8E񹟎+MU+ vCH05L!v'r;YOǞg;;FԬ5f1{JR<' yߟ9ZX-e(XI y{]Cw3kiO4û@2ndO dM+p곬2J 5dz*Eab_^_Yߧ᬴ GϴygmJb }|)p@.YDWK['i,EC7G."rޓcgw258Iχn}5qOUlowė,0[n_AaJ-=-.],pzSI2p:qx~Aem{aV Mbiǀ6S W{/}-ӻ:ƾXzVxŖzaU;CGDzu~'vWR~bj_6HҦn85jl=`ZBQZ#jcbM37a\z [YAlD3%Roˊm|v:&)A3nl‚1@W]jVK:!k]0h!{^b1Č#8ܳ3IOdj5" Q ^%2wH$<ſחe#~ng}z? kelz уRFb'ڽXm.6ytwB4[< 6;+{mQtk.D(.'9@nG|N9hOQ4â jz)z*. 'V'[NiZ|46#I ͔vccbG%[0:߉Ab67F-DCe.tj4cR:q.&,<9h:JS#; d0+<ƌW[nqְh IeUh4[Fb i0“eyy*Vm?0%:'&x1I4oQ+L4ւ7kN/@}F{g*%敛nkKİOi$lS߄;r]+ZcЅaROB4nȄp +%nt@dX?'Pw>C_5sp}(QwKb^vc_$yuU9q ~ X6$zjc\?wj(nFsb1oOT& Omd6'c3-V0S"(#u?2gƾ閚ldmF;A@H5dX\*Mjjfp#(F7X@in 0w4k] }fn;@o;l0uZֲ#@=dj_x GYnOfXɺDVOqI8r4 dŒI\sTY&$&qWpU~/b$}ТMՠ9 4r{R!' pLVB) :R֬=zk %e f !-!iu!:Bg u $xSkW@ xMx&}iaHTe}Zr]P g3󢏼Npc3!$)x16X8fAuv!b^@&j;Jc3c+ST t^Y/<"F^ZX%)r4*cc24Z~vʦ(c+ lwkSqo˛?/L%|6"Twmg $ rP4 Jg,*^wSQT꘎&;3kI7D(̏- EB$El:s{R@Rpc^@wU#; @-*nOG.33C`Ԏ ~_k}{vs%+ o~"vԲ2 1$*o/F4I|ўѤ{^rXep%Dvsf{BYo`בfY׭kÑqjF#:uߡ#$랃+7X]UBM+e}-wU:EjV#S[7{z  O 1&2zD L.ҬΗ8&Q OV!CHv8rB}(}yL`>tĒ'ĺ(p{JZPĬn5 =ULEhg?sgL39]:uvݧDbGakjMiZIʩۣ>ImnP*V.?z)V2I-!6M؆$(,@P~^ZKo $VK-AJr6aێ .|.koz:!e , \9q$(_""~d`IFmG8_Br>:D<3 )dcm2iML<8ژuDIcNyфC3j3&'(Y%]|jD0Z#w .ixlGuռv\:]uHOnVd ~G152m%q^׆>cv2Gf"KdhQ w*EA߄ݜR9#h`Ei 깦IhѮU0V1s?j^D|>!ajL7i9/d ;qS}̫ ?ȋQ6C5w`gG]!\eiK$-;8( _2r$,$ihN?^2H S`m$"L4&n=1r/g츇oAs05˶Ѿ<uҨAj;asGY@֩IphElx @Ua%(rjm1nB `!ؿ TI1 ʴ ӭ X4[@ɢB>_mnaQs(HPT:bYAW#Q:ǁH;L r44M#rX ' zK |[؜S#i?w))rfe?Xv!Qr҈7Fˤ&U ,^L v>( KN .;pTt<[$F ZkMsxGS^'އpе[#З=MOf7\RxlXbi #%p}$i{Bq"(Y/uV94fo*A3f.R_%A b F%m.O|]lUnHx$wȧ8J `LssJ!:E2ZW<ܢ0!3MJSVUbn?Őf a}Yu@|+=v1X’p!/ 6J+V=iL p$fs?Aə'/lja#}2b/%Ȗ&mbR&f3mqxsPLbDZbG C񽏺\Y/SA$NQy q+fhl@e f=9sE'j$csM6j=ڧ $# aL< 1 zbF #h-2h4M%JM{.;i%O |Yvk]YU$k_i"H6$-Zstfz%!z^~AM:^qN]&̋W,:+EoCБXmM G,}˦mC>dW.m.6{]Y8x{8w#b?nJ &G;b/5{oX6S6}OlTס L1|/;:n 侩ߵ~gJ7퀱0%$"-36Ϗf| SGaj?Ң%&3 `lZ,PwjZH:;sKׂ4EPw܂YS])H=c2J{60ncDB~ݜV@NW!W;bD ~$.:la8kqiH ~,:8kHFk;+\}~%+CfG R >[K\kS6Jށ1??Fn-U: X% p594TĚ:g6n)]Q~:$B!U2@Q[J.!h"`͔*%f81QSITm$$-} pXK=c*ې1K A%G&!BbBh6qBx)&hmƨT5UQ@4#nL>ma8Qe}K^k-lsͪ_FLzD_ZB+:vvD?.,\<pOqV$<#z~h8ŷtqYhc֑hdm#dDGeSD1&hcjjR'-*~2T HgɊ[lW NE)KlҝQɰ@]5vlĘ757E^,G:`4`[9_k;b`(A۾:C ՛`R\ `]I=Fq5}Ԛ.mbFYNCgI2|d\Fj89+kRSվ O fi&W ajւK/T]#؎CHS zϽMXM^?}¥4Z;?PwLӈe}Ј,~쓸&ܦd/paw_ӄxHGmٳ _a2T|ο#WhM#pZ+:TXrNT$ $M}X5ݻcrJmquY,܁ S>W4X_n1*ףBz6@C+\gr@Jм&ʹ`zv |ë?+ !pՏ%e !}]1}A2@Ovj>Z[9i# lnQPP3s~~O^i *t']3g3h, V3߀UՔ d榁bR~*BqScN {T`JR[_swJW1Tn$W-! *U`Fdϖl9#€i=d28>RvϮ:/NKU,5qO{ ĉX\Naҿ:__}quXO4^t  m<'R*=J5~"=@ /muu@@\蓪2^ h"J u>g~sre& iǯEu g4(>teq9k/ڧ ]'6=R/˵fty V _{Fb+ם1)UX\+\ ˭7iTxh84H\V!K72aI[9"͟OK'eq:RFPbl ؀e2XNI{M4*=h:1rmARc2RjDp/vSR;9s,+oÀAЕH4պaA2T<%Ҷem$q|n]TW.PE9!qHu`@6P#'?1PN^^9՗ӫ;hV4?1MN``I Q.Z* K^..J;kʐ3t^~ 'pCb60, >gC~>ZBp.%EwŀevsA*o"3鹗Wйxt]s7.BG|X,?cUgf^bFym!=DT#0uS~h/藴fX3ޓԫ R_o\9&8*߅a?3[ՂMxtc]7 VAR$?zSJDlFcWA BɌ3%3IΕ#vZw|7.0[)a5 YpCik icR=CZ~S}G.ZlP./Lۨ&&7qB9`J'6dF O^."R}%?_^.}N = => g`;i<bQBl|`z|,2 /H+<5A`&ktJXh!6K?]zB[@߬(_b*T餀RJ>{Z%}\7۠{ Xw1ǭd)4]ӶɬHJ[pK(iIo$9G$:)C\8 X#̦Gi73ESi.Q1kSwbvhuAi_z]盕CIJw+ kARr} +Y_AkC{(6lduci35 +[ )!gR[5{j;uUMaEf/M=7:@9/Q!UcӵP=.~+l(oq5GXb& v\SʝKdBfKÅdWe 4;B hpI>7@?Qr u0țSH[Þ| IR2E*NZ5ƟZ.#ŠwAHhP, >}ca`ioeLl󴡳Lema9mbo!(TCF}ۡr"`I4'#URBLZÝXQ?0h9γ^N/ ,[P3mBO$#MmߦI(`\:H `j hzr bù up !%?:Y^&7>1Bqrk;.L)} v; Y5=kIa22Pߌ|.4Dcs*T:)2]\}`ʉnD nUZ 3;Ϲ1#2Iګ[vy_ʎ32П4z!6V)3rK:abpKW2(?óJ EH2@vA0/U@8S'äon6l dY(TW[PIg-! q,6 `^t(l&>zIU02)y=Էtc1hCqX#ML=ӳw@TL'ޫ6EV6/FVYؙέ9"7)2A&][-3x2gR͎i`<&NX㉨4*pb9@$nR ]8~i&(F^xZ30eŐBΤ*u…(n: ȏpM܉;(\ C$9x+4wU?ȎlNw .(gKSB ͈aRk.Kͥ K?#p?N,~?vxw o%,2dx?CE""6*q2cj0PD4`vK~|"K,}V wZ)$Z@(7eQ&y=k#B eޏ 'оH7 pT}Y6p~_ideXLdzeb^ H1ӫaa"lF6.~Gy?ޏuZۡ烖n)܎\kܩ;w ~N}&!w2Ju4V/^fyr҉f&ԉXccYEWK"]G kܼWqj  >f†?<ȥ F +U{ISˏJ3;yj}wgrPA2֣d= L"m{[79K9ndw(]s8<qbI|JO,1ԏY[JЊ7{me޺@AJ#PA̤W xĻIf6AzmFn\"=BSo !>e4 U]a"}#% 92VlP;8B` L nH2Z6?jrB ifg19 ]1])/4C_';H0C7맭ҽ'ODc@(R.ޢ` f^w3 -9b"XpG-/%+|hq8~bM}>i~!BƧȬEyݻI}+qE'l Z#[L ^ȿ1?}2%.iExaJh(6'yMr}*njbTLIe(4_W)mx0Yd>E6z($ j#FUAuYVPn=TO {dN牨k ߂^è/׾{8P+) ٵ)&!}{hĖwc"fʶEQ kt/{$~>< U(e$7l4;D~^z C-eS9t%d| .4>n;vOdV!'? 1U&XעbdcmPt[We@$vJdjj/0t{cwٝwC{wφg"ekA“%HגI+)")oaNI:\cyƌ>*3<㺧#HV9;G m|<-Z0:. & [ewCqCo߆+d!G,!,+[OZTltQ'U\fZ.>u騨p%b9RX Z rTr|,ղGkvT+%jQ^6[:+ɊEz(ʹ6 ?,J'؃Yt0 Ta@ 5t{ OLswq9yMm.l싳"bjbSYzn 9Rq0pUwo -+Mn°Lr~<_ HisZHWv\"HfpsR {we<҇ny(@?BHlh,zKRʟ25 iw˅zQ0Ҙz3!-m_m?~樀$L;Dx"=!VA#(ʄzsZ<RvJ OqdmhZg.9?1R/W1y5{ =2^TbM3>yj2F,yP#)-sNT9{䬍 q9U:+ jfZ PSHC;[Y]Git㲋9 ʥn*slFQ_R*{}GbǖYky@,US2vdžO?YIp no_`(k,<,9#Gn%/1'݁Sv? ˝v(O&]:$Vz[zuߕr8P|2d&8# U0۔q^Ojxvp}4MfB#U#8[s_P{!/>3&G'QvOl+]s6q ({0!`֤ZaANxٝ9g`w"aU=U6Rw*+ "WZ; AXd<ȅF%&}Sn>&兹smO_ "=(wB*f dG4& lv}%p0KRyO>6f>4Prmؘ6`j4 tMns02٦Zqv-Qg |HSOS}wB6 !b!a9LOxы#>UB!f,-FY75tuT|RؚMcD\eGЈˏ~+ΥQ04;,EKi^0`kTrbsÙ \X5t1]? uQaܰ/Wї-FN` )aؘȯ$r]qUDB3 CqL_VFvl(,*%AT, %i fIܮT[3`.PDE7TJ`Rer|>;"b8;7t#A)9 "p}JI:{3NScgQX*4 '/^;# %?Ƶ0Ɖe&素s"? VuU@~nSg8 K}-^^#9iaݹaqO2c& ]/=["Mz{SfQ^ɺ&`Jʹ眖#ۗ6?2] G] *T=t5!fl cc԰}MJ)рeLiWj3z`i~&Ox4<,L|;e<}qF坉dGlqNzhHѰ1ýgt|j!W$ٖF ?\L0)GhH%L,RAg}k·Eq:Jl\ o}NKڷAv05b7ЬN}aB u8ۜB(ފCH&7齞&H/k VE?k5'P"VҪHv #ލV;WvNDLQ7ң !()O3n35-m V怘D``֟ǨZ` psL0O!,Dg:>$O: *][O`BZ?1!G7 -z'92/9pB__7+Ph|ysɳ`hͪh5Gw_K>@t4{^jؕcCY%"]X˓fӰpWUe#nyțzR,%ުP t#!V*AKdkuɖPk]/HjGb؀Kؤ֞hepSԲʇ@hh xvG'^/!b$ s.IDSG%oc'&uB <`X)@}XHSoDe5q,? v*JS:"Y ayimTC}6#|o;ToJO'd@*;|kAuW(-͕j K8q+k7}WA 緥ꄯ}(Lv3LSN(ֽ| ƥkXCŨǗ[S>OODzcڂҿ(XeA.PoGdOFUh)IR*84)F,c Vh ^ 7&[J7WW&rӵ;^gs7@:)_|+Wj7a,yam͂ân3 dps-KZlweE˄*dnZ tcYGp}atъS\zAy{I#% F4[TOJ*8 G׿Ù =am`vãf6p3){zf;JW{a2 2׿ҶXC}9e1\!vpo OʓaK@a}&Ջ.u(?`~O)GV˳cXyj dPRܫv<~' ~NEs/qta]Q&Yr7R9'0FG?l8ĨiF풊©I#^^T6)@Dig*Pp4 3>@PqESU5x'tn<_Nڸ+̬,Cy98^6 Ev) 2iIqA:,X>U5d8j?cE\{TǸ,bZBEl{i$V(8+OR >či]_AԊ>F@3]K%@7s_F~i+\ `Qt4\o@Ts&VDPUGw.>#/H\x:ha Z9G/7>1K׽W XًI Si&PTغa7=E$jH^#VzE25ne<"LD;}y\pce0;}ٯxx[eAFŸN1bLQ-R[jA)F>`!_+u<T;~}0s>v ߠ<[)ux>gmJo[V?ܷ4bH8d xDm!7ʶ׸>'-7 8IJ&5pT/d'a_<{n]4s+&c'z8'Rk2p g*gcαTbXA߱"̀- _؛;N3m\?ĮKKύ`1Ϛu[c0 eEk>ݏ{ Q\EK=doŧV@aNw-}Vb#A/<<$5q`a;:he흲`^2쭲:V|T5qhؚvm?'2f ?&L8:P@'U~Z>&59ed^&mQ̚8 "zكU ";OIϖYuQEQ4 ^gGkVqd Yhj 1)q!<.A* j&_Ae$5430 ۔<0t'|8;x"'о_MH?FִXc?נ;W~ȹ =B199mkh]3$Y̖LInsIwP;8ԥj/VWs֖?֥iI=ݪr:V TU#2ط Gk QK *th6REB}UrƛwuƝ|A UE^? Uȱ 9^7#\ 1@)_쏺%p1c"N ~:b }~zRZjv3 G{\^ەojVd{=Tj [ke"U qW?A.]$M +J:1#CT5k"Km(pa69eWm1C&[HХ0!j>&|T˭X!eg+Y||Db|}5y-uMǂB3Am #oqx͢mԅ340ƠxCW U9:xlfI^+ӌC' fz DfNp.<{>TjaR nr?DTFGnkF b^c !PMxfQlEe~' ]̂0jDQPL^Knލw(P@a@ QpRLCϰ-۵1H\2xAImo90fp.+;Q߽O)ؽZ.iA@Lc@h)C9!gWmGl}tZ<۪LV:m}NmZ4 KU;Og>pl6l [C~qܪSP/d4u7EeC) BA<ܝkH}Tf\ύ+*Iu _˒e¿ ,+ucuΫ좲28+Z?7OFoaVPmژ~!H 9|Ri_bH(qm#r-h tݦGw&LXPd{/,u´o7|h,xpvzvM9$qS5%?IL0 *Gt[y5#awo'Cjp]T S$n56HArN姯 MXAXG5eLj{Fe|Xl sS7궹*54jfؖΊ@_bD)#){#?Df5?zxwB kZ)]V`S0fE>g18 R\ii ]q`D:bL/A#}Y*)|Ӌ6ߘR POL7o {yJ _Y 24\T,cޖ~@,.+v;{J%Hmvu)Zan+_U`X7`XQkThv`=ZbyFg!̽2h .85ѿRK,*KiEm"sGl:K@ղ̵9j0oF(1{ fCsNA}(+7hΏg:(ڴNfj݃iő9{Oы1_v=vfB'54͵OePaGr}߉*5GdB.vHsM0Opb8pĸ``3fZg碋RdVwz4`ŝ =0.-Ԯjol&8s4iwM\%L%6#8On6*h^* /jKv9Spu3U'GߝVJk1ytw (8ohZn0.)(oxð 9nf4Dy K1:ZLDGV+VrjJ~t\#ڜ]W?`!aۡ-wT8v> [~H˭VȡԎF@J Tt~Z~F*^Jt@`<$UZ @(cJ)H?*|u/~ u˷W=Rw*iSaCeF y%GCڱnqo5.ը~z۠L\NE#ˑ[P?#!l[XIZ3 ž_)1}V99Q-EZ=r%8*v] ٷ3oX|_qDs5d1tm>3>ƌ<_ XM6=Kv ^[c5Q%VWY. ՑV:8``󰫥.x *Lr2,4QwWjݙm`]~JMg+̟:d lc dVy w {;ku1^J-Oc| i%/': } ^Qo)ϰpV Y$8[lA=~ISMJAKA2dt^ﭜ/` Vx6ߖ ]%r0dܻ}O(ڼ VM4ν0b6/ Xջ쿋_צ#9"VEW\ǮE+Nٯ& wE&/0 نƨ: 0NswʇXV/dHBv쿣ZLFPV#?If@BW96Qr =*$Bl΋Ś{{ US#y(a7Vl 3 O.w5IJaoJKGI"i`=vY$K@\@!;)^ Yn%Vkˁ?:) nascSV ҵuBnws.֗hHD=gB5_-ɠY 51Zf$^f'ǁSf >4nJoւ5 ]KyQ';9aUmySRi@'9{^'T;>'I}}vKRmR1( cu~I3xlZcpRS,BnFǵ>o6 5R@L$K,z"㔮a5HFU{'Y COƩRvޟCҘܹ/c(njVlibB*(}p zU~vhoM;HSMi^G.`.%NS'R\cY'#4ɪs-CNoo9HQ׋F rĻ_MhAEi܎djp}#'BR5(5HZ"[S r΁wѥhacBRc٥-I#raD1]>W/$GaKD}#.L_F>MnΫy1-"IoT:"S&2XYmфa^OBhޞlLƒs$5,ƿ̣tQ5uaYrdls>t#߳ +׬׸lLStfإZ!23G}/lݯ}(OLlrz<"E `Dvyדj=>VDS`k^etGg@ˊZnL^tUQч!W*=UaF!w"Smbg/l$(w#q-..(#.]SrH LɣU"KQuj+j kv߃0`:M{Kb ҉-TvmY]AN`T̐>o6+ZA-Z4%[x[L45qܷO0us5r~ITy`czI~zG̴ꛚ! +*}y+wx㭲:04H#@! Ƿ@R z#j_wqվ9BQaKƯP ˇ>iTA"_'q\*MՑsfb¬#`<7X9l+j[wj)ˋi?EP\cɀ{zW-blw^24)NB/wgz tOGu]kLa!]T&1Ǧ#;[pHW֯Q^` am[(SvWZfkD۝j9J=6[ lIKK.8&"⼔pyg) 7@`Hwg$|g*#17$IKFhJGe#!OOD"#G50!-/x^,WɀbpPS$>xo0\$N_q,_.'/~MLQLa-buP@=Ի&QjQ+%ZEOD5S;PBB@ۉnsnQ[C=ṗB{ j.ژyVgG_60aA_)ނBsh9i0;@`N:g*v}Iu=]GLvu 7wՏO(hYO33O7i22BOnj\&3Rbv Hrf ~L#șVyL 6p=rɸUom#a{&w/3p~:|:yaLvcD@e]j HZ 4TAQÁd(0`EvmLy^*h48QTJAePQ`ئMZw#@ZzѿF<p3y+2 z!1l(*UhebZyT+_\/, gV> Ag:-Gz?w'Ss|xjEZ)ޅz!\C@,lѼP! v{ezG]!8/5+!)\LC>CxWK* Ǹx7ݯ7*vef0+vuV͝Wx$LޮxeBuׁB{=-Zlet‰rl]W}%˰<{(LngƩBV`S9/%K4op)y%1=/ئF&eW>j,DŽ4c낯§w*EZg{,r71ah˸-J ˲ QR b\_](ci}BɦJz-v_#P) YOK" ]oZ0"(S*`^'L}[Z!|rrIǒMǩ*rxX'/~34u6B FSO! J>c]O=qeլX#ΰ* kdc[Jpf;2|g?@Er,BZ5.Oj`⏶Y&:P]3zH!cW5ƿ-sJL[CĴVL%RԵ×-g3I D"O1n S/h[Џ͢ 'Wq!,lټxD<|r[F =],nl[6I6MUor0WGivȬ]2B{6r󤴔&{47L-, Hwkܽ(_tuu\  twy\Dr_~Q!g݅-$?rGߛc} 0(TB',A'~d63'W8ّijPu3g(Axr,R-*"m.>&f'kSeQٹؑ jrΊ"6z4 Cd~{t(l.hE!g]A꺇h{װ`:$zޗz+ ų@YLIk%wֱUŎ)TeNKnd*?Y`,Mvo!Qn(%JPXrU _ 駵ܓ씙:]X;Ͽ9MhtC C$Ư>J^sL_HL N_ {S-O5 `D:Q52%S,H'3!MT% E\pZyPd'O?U6B0F S7@ gA a o.FKGOlMLM#|3XƜFꞆ$2}A,ZFqL?8Bfzᩲ ]dVWGzQ[c/)ewn0Q!u Ri%1{6?il]Rb?@ ŧ Yr *l>;A۔BFhS66tNHKi{ܖ Ԋ N₢zXc 3bFȄd[`"oaUɡwl-ke4 vLC9tjiՃ:dSEwerρ9B.Hp'UI3<%* Ani(C"T4QRX aMYF;}bȏX^ݘ\O0+ Ubrra哆=*+̻bt, ҇4!"W!:)uQ|D\; sDY\AS mgͧ,g($~%2!SfEUSw I bYPԎLIU»mY6hoXW  I5 gLVaPM"W_fb9(iOG2ib2hi@D%?4o:q'S]juqgz` ŕPS! ,˦̘@s Piy "eN`u{+a9uC&7~|EC_gw'4 .qj;Fk#G?/Y;"k  6f#U* L)V}Gdf@SnM$@b<=>iGT#9PC幬c_|VK ."W yHE%K_ysV}!:+NA5MRqɬkQNt~Z[{q3cbIAՂ.% {W Z讷'0j70`Q`ʹK`?1Hz|(؂SNu {j>A~:>ZfaZ<2DR3.uwp _<evswbU]ss| ?ȧB4ꊊGeX́P8Zow˘D9r6ȹp)7sE5;B\) C<k?)'kݾ9x}zAɨ 8;E IflịYͥޏzamvXO-5,VbKtCSQ"*2y*pK(O 9ڏ3!9&6o>:im-ڠ11p[I ,R}fsr,҃j64!zSA6X Zۙ!L%9p`}syJ\oA"6j^c~QFu{btI{. f3zDI<yBYmI6Ra]+)! $W~᳸oƟ|t8/1Q;*|[$]p, {ucI Eڮ[1£ PQYT~@4})t!r> -hnJӂh  =G|F x6 fR.ȼ?j\ՠKlHFr%?GuKطJMxшޝr5\hzы7g ͡t{ O8m0O(Sb$pv)cԤ^ZM}b7b-/O!\HYoz+ W,&AZdr ` /Fb+θ%fg1q]'5\IIk]9eǽ1k gzf&l$e(3s\;)!(gNAtW }EN$QUq2pYmcpJ~'6KjbK#TyB68䊋 P[;HtqK&}w2凐tmPH3k_S?Ym8!ITZiڄ +XRJmqr否 Rirh;oߖK*f0WDcUB[Uv q:f~z- u2 oFcYyOY(MČ8S} ⾐jXKc-RO8.F#4Sނ8RL*ܳek*ptEە3SA^ >P-T څtg@,) -OI4 )A܇g(6 }=_W)9*#=TfYEa\)BSԟ1O?gsw \hzǺ2KȫH64o=n}@./O4?~L}?Я'BҪMRW<{JZ70/ FVIrց(銛Ťk:si+,G~O + X8%`V'bdtreWdR,eW^RW|ƿ՗ZsBc}*JeQ6ِaڄڊTX|fyoC$ç n^Beǒ UD6 ~+ dN/W.Qԅ9&^T4q~c hRfJ*A>k(b1KY(~+WOVv$~|>A@thvJԣMgr sc]fySk^E}y]NDݱ,>Sj0𮚫W;<zCbw(yڃn -t9»HHf5lsѶ7NkdӬfqœ("L?T!%wgXODP؈=EUj-xL+WnB [e력4YV"~Iμr<$g=] PGHux">6a <NaIVYon;) Ƨ° {_g't%gT2|=.N˖j/ˣ꘲.\aPs159E,&gŢ˃Z%d1Uk]ÃkZq0{0eB*X .˛hL2@`j fcJԾ+@tzY;d=֦fO)p`~?2]?&3eSAƺ =uF! 9%mOEQ$Ycv+poQWҍYXVIhdx#ɡJ`Jj_kܓl}m9= ^R>=q[i hA`QF"ŧL !ɲZoj*Yq[a'GCg%BQ(wiYVxZ lv/O/&J|cc%uIcfI!Y{4lNR!@x c#"?t[ݻe~mQB%:f E'_ۯ"#c,}pʫPz֗ϔL^_#YEL @'w~U14ur,I\DNZ3/%3/vKBF|`b)`ury_>g[Lr6.s$#´."qf+mL.NsߔiB#xj/uF^+۸ 0\~Iӄ`IH.eg+ L=Fn"_-ע\ F"1Fv}KMin&: MrR<)Zǯ' ػ>զ5эpaHetVzƩgˋb.en)m0cxS*}'RΞqY'V rD0%5nNSܣ~ ;"}m%E9m"HL-WH6JFir#e~QsM53ޕGxB&|:r7BÓHۜ!sŤt: Mb ̔ѭ&D3qkd#y°{P$FPY2,#j_͈grĂ.b'^JejrxЬ*Ax^WT&$0XX03͵Nx1U-CEI+żE"F~Q>ǢG"vDl3殱2]PVD]t@FNg=?}Um4&}(,Цg[Wᦐ1+VClg2EKhW5oaѭW6EG`0MpȒi~C^,r7_d{\^?" &er^Ch̍ VmҠ[yRò!'gi4)ev;!ÒCt>*499["$| jZA"5#5yL国9ϹzIsi]8 ʗ5kysmo eP<:c&[%:l +J 9((t?|rw%pxdNe2^A}@ޠ#JrC_p2K'aFDN%'~aaܪ6S(YQ.ۊ,W,-cn4z\RU< `km;E6ԑa!!sRZ=Db ݟTj޹Z4|U?f{`xTkL;Kl1=98 eĬ=u%xjcmmALW~LY.@˽%&_r 4v nBsihV qnY(smZy9g&"Gm fCި]2>iw}Sבe:2(g!.5JxQeSΜw:>yؗأJ~y%XM0J]MD6~3nӂHU%O 0o&Bq)|pE:U]ن_XY^ Zk䕜"|:+1-9FM'Uv*qvq.0mȆ`AFķ{F 8<;ZxD j6-:,AѼoy@ч/?$U}Q2b,j7.4jgfF,F#1><,UKդÙ& K|64B:@ >k<ꦷȷG;[d C7Ĩa豏׳YB0H`md-o7ncxȷ:Thj}~Tɪf(@H@|94>KW>QvkK=X^ɘWiv[ <8<{) ?1ջ[s\XhN݆"ۛ޺rpeĢnC0džC߬ߢQ}X]t?l?2>Y3zpH<6 :L_տ\%@˽_ab/N:N d t ^ IeٲRvUKޙ+QەBImJwe`@: ˍ\ \H0gp(gE O,lp*!5\ dAG>֕59(;Rr}|?+5qhEoLK{V M+"s~%xqYv!^+VGSؾ{D%u9 (f-X3SAqwg <=jNAn:ϱ,͑SM1lKW7ђVȽej; S*w'o4hϏZKw!a^ =4"12u1eoꐘE֠/UJc=?\̀x-9OUfMUX}\a"eʫ7#Fؘ\:"\l{205Q8~g15jBwx(cw9GdF̌}|d8zϲ5 7 'Q41,0L1sxZ h+-j,ڵ _wN{Qr}QL oaR[Yu=`~GRZ7}7T @_D޼?OWuۑN10$ڀ s /!Oç/+(LmgH_ 9^1{#lxZgځOTWyu&A[2E 2(PcbXIoE|lLߓqqrvܷfnM(`_ӑ(\wa&'D]/f]fq?6c #]2ov-64K/.SgF_SH7e'S#0W.Q;z'OL7"2J[N j/]8r4!Ӄˌ2ME=/ieb_~:-`vGv's"!U {hoA9`POZU.JWdА} (\$}(TzXu AӭL0y03\2S  1] ?JJ耺Ǜ6>tG _S3 wx"T+o2;<|8lX5]V%螿}\)}GYy)|-,Pze^N.Dk FQȿAx,Z^»t~PO,Vb C؏.R8WM (@!D$?p`1X8!#K K]gBeI|e goo2sDeN&#ғ"U!j)ML Days(+`z8\ ,; 3:2™y,rtU)-:75ؔO1H q+Lhe!1 -N3>Y:|lf9VC{s0T2\o·Kֿv%,Sv>/sZ>4kCx,Pt+G)ns_WXRym&ppg]!R$F<_RP ~!oOZ(Nv3&L*F|m.‡Lk\*iϪnK]H<]jR/S0B w|E"-W[n6SMG]"O1hxO`饚cܳ~z[.yV\]"vF~(k,=V?84$~Kv<}P)ueeE u=?}VljR $Wc:^?9@Z[&!:@ܑ~{nq  •0=,O)pe>䌰/FE^)Jb]ژV"U|SL]XeTkfzT Y+DURֻu>5K #] AC"3ZR\'}4JwfzT `x\aOlږG*6TEκB˛̀ޣ|l1oM \(kqG,M+  2cnT:6e7g̬ 6Fwf(6Rʜ ôSWZd;j b؆eP-$V0Vc߅I(z&PRuN ̢H EQw*DŽy=tU[]j9>O[-uEJ-O;קM!5FnIbn]Ϝ < |a"!6Y踀ݐ(>V8D@ML;CMG9l.򻛃W'0pe)+ѐry3?~vhbɖpzJz\痹Dk-tɹӢ:{ʋCAAqED7! Qm }GPr͉ g<>-Nj9׀)l*ǀBG<ԺPh2&wJ<3e}J?/BN.5+uawCgLb" vPJKUD)9k!q#{­6[6iy̆0l7#71-@eb^ .F ~SW114DPc1ZHb]2`Y>(!A[t.V< q9郃L )ZPgJ WM1}Ҵk()Gh6)X4$vqEˣ, [A"%̈́^$Y~|t4߁~%cw@PQ ߜ QgMUMS=*XN*<ީYfu4fi5J_ñX*L=rmtcm7dq+}ix?sj Cq"vTMHce=`v><<͡9_.* WDnR=-:W۱:?:)C5ݓrX^F l81)^5z4%Zcy$ޕ< j1F+ *3@Gև_/LĞ[7:rT28f;28IT=MN![s E-R';Fj;Q{ݩwX 9:+]qu7QT~JL7L37VT,yP;'-z&pd#\ARѓ+ @|ʈ< I8oSiph>LPh`(E28YiٻM\i8K&nj]Z/ȏ$`7]؝[<-A>kbGs*5;PܣQ똗C|Sxm֐T8kհ8d.89y%-r4و+-[M*h!oF+DSGJ+M,2W X71͆CB~1K b M:Ÿ cGe;F #%Ajq;cqgV&()6]gʘR*WQ)vJcN-vdX97?^6t(DU2 ;40wwl$Ap1TN D-LZaR1G'=j!h$m*'27n#a+/"?jkcC')^U̦'(&7tg>`$/ҶͯV҈f8 Ɨ`i.C[Oڤʝ]6XNlv^b^2&I %D|v n;vQ;O{8b3]l [MaA-= gng-s}l:EX2?pv2_{t3jٳ%ꩥyx'ls#n|'vOw%t&<WjErY :~σ>2qj|Օn^7b2ZZ"Wl8S&EaݒS0A42Gjݡ&֥}I;ZQ|<]eRt)_?H"koXE$,9/RN[*JWV-*4Ԏ~dx 6>A*{옢 Rt׶AI?)JWʕg΁Z8%%[ACdxO=ީ3wQ9ߨ1~0kW(RT[OD #C_683o'$R FL,$BȮk}V73Iӓ v`~WMfA!ԩUhYXPHk:Lh$8_|9Iڠ)ëoc@/Ez%9Wkh8ŋɓ.<.Ćs21a=Ӆ'0'؝J=\L$fWvi{f;ݖbdlL<'9YeL7,({`mV vS5Ĵ{RQT G|bM:Ikqa,];O0BHdf5"vZ* UEhG?1{8~K~uT za*#/Jhbߞg$Ĺiz [|~P7p{KfAAMu(-(80}=WSv#fz1*,b3[-ð4=SANVUE ?c].;HB~ENK$l\G̩1GOK}`s+O:v *dWrJTkv1l?En5-hTȭ!S%mYMiI.9;j{w1nV#F8"2J-V|Y" >̩ˠK@ Pds{hmr82CUp[S硡4 /̈́Pͥ :Q@ӬVgBO.A*V!;H JTj_E޳V4Hq̔TݣrL;2'~cTIi>qjVYZiO\ O .ݒ[L/ЮAnFvig'Vȅql]Z)侺 $OX=:BAăŎyB_133}kf;Q"&d/:  79 txY~^{o&3Qɮ|g9~眄DpZ;k$Tr+ jL}nN &#Nي( %aRp ?f1?Q"LYZ0lۚܫ ޮsf4Uij]J B̦dwPZ[+0.TD^sB;591^Nh" 3V]@v=x{Tio:Dvӡ/}@Ws4k>bh×$ҷw@6XCy']oOdgGÜaM7JcNۛO89?*W_#[R++Ij]H(YH~(3 {#a,ck;P9&35p!UN:ĪیKi8 ĆUctCH\ .N$7Kh~BXܚW8 m g[@?P6gFƜޘ18z_0L?lW [̮3!Wѷ d*3tO({ o2BMtygǢI,}ȡsZZMZ%+Q"Yi=/|UAL֧I5%8 nMfosS\'9 IJE[㲥m{k#nĬcIQMn_ <*=zr)#0Q^avߖ dm[.c 0r̪rkoj/0z`!: #  ?fZ{fM ئ_cyTd(+ :U!d%wRG8gLcdW=C1cRBX>QֿAJڿf Շ˹;4A -xL6j\ g.\L6檬O;]/Wrfü+7ܜ5VJRqj7)ቸh kd.jlqD~1&s000v͓Y's {|CU$A0bO9wy+gΣ[]zh . HNd3TY4??DL`E]:&^>(>Krgտ`~T~(${͜9Gm,^#Hm6kM](:s'9ˢҽ- N 5ۊ~?*full'{"aodNI3Q`f++i$Xw"`p7ry=*FIˆ_Pqk#x_ɾMοާMBT>}ٍ72 ՄC5/L/V 쾦 sσ#zLkENcb 6<.0 P0 пa,ӹӽ\ߒokMm]3t^7,#aL .oLHn݂E.i*ƴ(I pKrt'=t_ )U5%KE.s U3h5;m4y& !S̘H{[P"=>ϏbOr '22|0!]eT c[ ҮΩ(EE /1˒l],^~)­&Ƒj|T׶a "n!%ݺoazFg"rV'}'dͭqzy#Cb(R `15`O:.JԢ\h%{ bSԾ~\m5؉Dt,׺Jݟ6&T"Г_F}F.%`N#[kG}(lh~mS6PAMP*#6gr&4u<s)7fvgXP]a('fԪ\pX :n-+P\ ,olޠBW0M$Ȕz 'Г5dV%.P\[U,!DoK^S::*IdC-f _5b hb4 4\<0Atk>?N#ߍ w 3xXdSzLChu3$/cy]jQ`l _:nEVV[%0Yg_"PՑ fVEj鶿(W.aPޅE) P ] dc8Q -|"NlU|c1aC]臼08=@Mtw|ԅ Ed'^Z/NxծR'bSߧ[n6v7Ԧ\ƙ_H֩^*,En^h>{΂"wsh7v pſF6 %17(C_M}0nzzӒM;Vqy\W:E@ʼݔr=aGӈ(iK]7Ad<;F͸Zةh~FwBfAx!$\ 祘T`jg\⬳O7o-.0#\t|$ S\uwx[^\UgFƸC廐+"AޕG[MSE- K=8CލwPfe(Zw$/ۇY~\_^AXAIR>8 + ߆Zj 0dF!DLT9*U|jJ {'QM$kK1f_uLvڿʉ$C]mS!įSg yqD˛Qkйg)eEfDʓ׵3u"Q>XᗩmVߥJW+nW]uS8)=Lx scz i;A~؎⛷ EЄEgZ#@^VPD .Q* k=T1l'$Q0c' юSP, ,XtMT>9T2blqW%$`fQm[gϴA -5&N  Q>O.N`yn( zT .FW-E!SϢ& 5oɞTqDUꁨO+`Ԋ`e!sgMG*a@ &B| 40kٱ48q P6KM&nQyu5? cl[0[5?2Bmg(acvV8EgUXTMژ0'=[*^?B XVxmoOJ*d'E4l EGGc*F/+쥟|+Lz~LG_::VS%V%{{Ck!F,E> b %@pBO~CPnMW3lJdT4bD+d\6@Z"p4W#˝Hv%צf w  k0L\$*x,ߔf9q}EAP41\CS-xC >`ŷ2`-'b 3B;Krӹp-sصV©y3/ŗcRr8ynf7xWë$-?xSN5AO&„ @Fn#C&l:%J_ jO 59z^. @ =TNr1LB~u/ȩ앃O5BKL~mdcy "WrU];C])f_Ч]K/O%sTsߴ2<{s2" =ؖB^97[w߫-,- oaYӺlgv>8׉wjC3uǁI/! d8!WZNeգ-a* ꐄL g ח{,*}Urd^S~0+ ;8ϘHpYDtH?@4TyE| p `uY]>c5zIb%ODȁڍK5r5Bʟ7iCDmcaā 5Ҹ U=IB9T vڊ0ꥃH2V{+=k3D Q0WJhqC39ohG(ӘtP(HCd%x=HpX/!1ӹ^Q bǘ Dնx-Sc)$AR\M <Wh:TQYLX8;7s:Wލ٘}&cH? lg zQa9 ӺmʅW|ųZ&-@ʿȎ[\R?ަQ.X8̷Gu /D6;Nph(հLn3u?Dk&\4 UD; @)=l8U J7*W\?(ުc63Gn++ 9;CBoΣ^+afUkqt+UӛBr5_ݳ )bC;DP}c_z^-?pz3@ų/Dè,6y O˳ ʈwy,E^UFSkC臻.do/tכ^ɿ+:3+#a J1@CId8vk! ~uNm @xLti$+R})Nvi^́cO9% 6/^͑yڿ,d$&/bfSSG!䞩Ga<R5]FW%y J`Z #۱2J5-:ɗ "b͢*G?eAxѧ`Nh!]hŤqK\[N{9A;*A+Gw{X~uAy @ (xmڇ~~y[x+ :%Br܀c6jm -Z%D0D\9 5%w7<9ږWvx|H8#Tm0a };6caW+a)K0 V'{hn]vc^G|-psL1,#wxKwAAHҟ=Gbnpֆ-((yd6xTѴyJS.o_C$zPNs>?%)A(p}"#c~ZljFB[6<1Cx~5Q.|^ثkǸlR,j\McG2ICfiy}Y6ÃwYڛ*<]kA~F-gJ!PEhFwvhfzG7);m_t?jA$T&xyżKXoY?,Z0;y!_h C@Ve9.#mB"F`C끚%>0Ӿ}ORglx]J,i TC |jVu+,S4bx27}Fysqu&#a$7:$$͒,HC 4> 5~ 7:Vv3#JfV~ֳN@zŠ[ط8$w1gĭU)W㯠&~ 7(m*8{CM @O-l}.#{R:]Ǖ\.R~RyQPTkz$ zDRߣPCfu똥 R2F}ٸ,7TF4R/Ug|.##qH&&p u |M?qb֎̵l+#Il)Ik\zN)Gx"ތ.ՠ5! ᦥ&"s|24 Y ک%97Ђ.Zcq֍kZJΉVѧϟvk(Gxcy{w;T-[n]ATؽ|BG ~jgO3:(c-h/)|R=oqe8RӰS֘fu+}JtڝQ O9?C !f =mesN?by閎7lcńP  ƃKt.<VzJꨟV+{{GD9Pr'Ea9 }jEb7jw'sjH2_]Keskf"a.,Cr(1D`0cRNc: 㸽qkCНKIRC >bqn\ \eu4*dz@X3FJ}Si+4KT}3n<#2O}MuEdW6| Vy|6һ^a1O,A%4[9^mV=WM,ғkZEtHSlt(&'&!'(DO}ХaٸT<;Y)hwυFD^A^>)ڧG؈9dR6dho/Hz|ƹo,!C$HϽ9nR(ѭϹrj/#Eueɪ nj4!䍻;#jεW|?X;HpTmmO Mgfc(h<1L2TNYO<% wA).iOOGò0Jtd+O -d ,EjK;hF}U `W^J؟Dvxeh&+q ϣ3e~Zo Z%a&eF*&HXnd`Hi$bg13]m -H}%ۏ x&|u7cKAMZrt/o V덽UU>IRKbN6z3kHV ]- Li6CKİFfkBe> }ÑV5GT6~AʽSH7Pa2(i6l1i)(૱?]_ݤfJz§L0&sXz- /lꋭŧF7+, ׇRXa&6!祐ƒ:k&ԭ,9c1?IIu4M<'F` ȤTc0s"Qitr Vve-ޅ^ffq+[ {8Dj@p{Ua[KS33P!ɇ׶G屬yPzWjﭷJfg "p64A0j/k32hoAv&Sqz*`p|ump0k߹Hun n3(0׭)^l F62x7رҝvAx2ŽQ րaftTz g0'3zI(ʖ@vl }Iv#47SbqjOEwv#y9VAJk j6g&Bd o^F*A_m|ӗ1K y^1[T]y`p9pel~56U ]쯣lIo;{~&%ϵnj;`^K/3d`6 xtmXYzkfa&б[d'}ސvmEiSLrSmq7 SL/Q.s jfQ4r ֭wy=|΍h}k 7cr߱f.|e$J|7eA 4dd[@QS7#V[Z/1nrNbw>ؒ7syy3W_.4W!Qxv9L?{ p3_$͘b2XL*9u.;`L55#Ēdz!{ p…UkD`;Pp;=iQ"=BxFwj8z?S?1`npH#uL9w)Y y}+c9 щz]{Ԏ4~JkPdQ/9PRICW" cvgAtsVpnv@*1S)ya~ExR*p(qo6h{T~lNcz?m5z茥.2z=$i [x&WU ׵rsDY_T\\03nݯeFal3C -j d8F,'7iLlӞ |:/7vePHA!#aplpY"~Lzqك͇ku|P?i#=={ 3Eψ I4o + $ݶ ^ZmyqR_듕]R|^f]FKM/ɀppEiJ"uz7,o`ԶLtaL8KFH9ODW^Qh{nrk^fSjE'^7NbN4E] v#[L6F|U0v%ĒF7zb+ cU3~ع Ax$:mum,.az3/z`xqi GohPjNnwNiDr4@{~;nS0ڙ`܉ ߍޮkUOoD#Jt[>j|w! W1p:;#sҠH$~+M&/ᑣa6/!,v sKw&:O'{Pָ; B}A9CSb[ɾtU+#a;[G=G 78n tVQQK(e)"^aFT@= l!0Oy̪}Cm+~INQs<~[ qNB ]'?=ml93pˇ ɦ.b\Ɵv.UDy k6.z_@yɋB#% V-;]-НqEx\21 W^f۬'1X)d?^ X \8<>yׂ^j ۆ+E-& M7;?xUq 5 } 7Ha!)Ir KWIF$"0k\(}}ajz+$^`|@tX e< ᲫmY‹́h:c4 _⸘daA jYAyfߢH%wx jU겗-228.iGV]} uF ҦIR~Ku04-6v740**> }⺫JgROMH..04yLqӬ]]$(Ad+HM\ixd8ɸV;LLϭ1X2'Pcdhj<+ [2D*̬YLC;N z#!2< .ڭsG:2&DKx0qwAay t[om4E<׊.9a7xh;#9D =D);ykjy$Ǫ]x.ΞΪ%3 yi@@֝#^V/.P6NI%6y$+aL wܮh#hyG&ƃ3P "[4xx'0 "':#n%%LY -xZz1XR $#?I$|C Ҿa NB}v!sF }Q!Xu<" {9kөa)5II +]V|3%!C1 [dWa8c٦PqR*_UgQju^?[h/C[!xby nI. o2(bLBHL>8 eYAd}5BѸ„/ 9,ԬnbWIjHxw9-W >*/a8$Ak U`]ܧ#oסJ8NMqn:I+tN)/|p F~K0u_`[}JF|:Y%̃ "@>v0vPd?a: =TΡZ3}n:B^Q(Ѳ/8hzG5-(vrqyq-|2QL3`r'|XݺirztEɚnhp BnmoN.GxI{` G,zD<|g`J3pD{@7]QQ&NҦB2<=ܼG4 ,^UZ55 *}-G`qĽe]ۨ-1XXlg,[fa+Q{ S 34G Jz<v9Z A8 ! L|L&"9~| w)HvhmtVHsQ (h>{O:rQG̥߆s tgd<™Rph}c%R 囃Vhx_l(u fŎdtV1 XKeO=Dí!ʮK )}BgZSx%Uv5Z5C,9ER 'lf4}wp@@/}R¥M~W!`!3`8뒺WR3Ѷj8i IT!49* NEp p吻?n1GXID߼㣌Ewpw.΂*ߕ3F .o5+vBh I_RX:룐Р67ڏVOD4{ʠcAV$$ !ɑIb`-$7jv#>`k=[Ak,I=0gƒţWg)C{oV(&|#&pPfA&BB K-焓j9=v/}&f.e\k !U_;4!!6p7{BosDpfk["'geQ2-_mѨp1`qSo++ Ew+~5]*S# V7(~A#i ۔GaQizd[- 5/KI!W|;$nzB0qyG4Mev?CIRI (*-Ӵ,?~~z}pϵi#眧&H MrRn4@:ׇѪ\mG4WCKhhːz/oZg 󘔽6g'!8L05ؽ9K"FN 鶈T/ʇS@a&*E)a2;fߊ+jj31sqS1qK<x`kS4un' 䫈=?\<)X˼9QPPX9UpTFOg'gtm帥% W㋋>ͭ}*qԁN8d:J)Du!qq/:\@, -Ug͡LL9 x䱆 8\s|!`RMO}Fk%υ̭d"xݮtO2 ")0SZgو R;A21wcL[ļȧsx&y9'ozh@_b;d/x,;Ze͟&D cF/+V1 obg' RqL^z&eb>x@RFЕ 8 -+24Hғ,b-y7;y+s uLTktLpǝG2!2$oa}٫zb^ s V_R˨|<$?)P2Ct[q;Dt-cc@z;&٩r_ɻ<":?NlN~7OLo+bNu/ Z6cPh[#KKOȐuL89 =,M{~*Aه;9.L|Ͱ9=eyL#!ܿȰZN6aQǷlGDD#Ee\. 7ўKfv|rӤ=O[L?m8s5T "{9{%8T5L`SxZ ~`5Hv| I~ 9 z10D4";oGp A|ZI#x}>h2[ۉ|gͮ!9__uS0&ߝe46m]=[;sH4)iD^i뿓$@)W7(U Z|?Pr&!ur>tU'L.7j%H˲dik5+d0']!S/C,B5 7|M% bdl˥);* j*AX%`2kEhP{X]4_3jh~dJj9O堫W gnO㨫6DT= o,R.wrFtKɛu|`jE;cGA"F2W.fئ@_ ?,!`@%Hі? Z"23~\;hw=7 C7fm:ng0UIsE4snfWLA"q[@|#8dY+37R%88WRH{?ȾuP0Ne_nT"MᷞZ= )#7.}lQӳ_n1:W/B7[nl[G9љvMmKVހ);GUݢ!s؃̂*&g8a\ut|KL-lh `44 ?DPnI;wr@6$ceuHiC`-UҐVG~ѢݛV(i(6HQȖ @s`D#7oZYhI[ލjҪuHq20\! $z>12º; =A/jws`Rjh+b³p?g tĕS_*RBR.rTCnFmTjM?qQQWY>|u1x(]=u U_l(cdmàxu炖|uy-|/GJςb0:BRZVE~l?Ddd­,v% Fuf3䰬N%|}2UoɠJ<"ZWG!`ZE꧐L1B !z B7"+]t$q@ !$SjSD)?Uz~_Fn @>A9"qze~d B !{4b w.g@b`]&稜yf;2w0Dr ܪnS)b[ЃukA3@L6cOj"COv Md<[*nx] rc OPퟫˈe9`C*MT2PPװİ5VJ-DhD?ܚw ep`$?"EIph+9gzTZKŔ,޷Xe{4l>vUl>}Cf^i|Q\IhFɲ*ݎOLPRݡþǭ96 >SХ[l0- (MQ(㎴ޭ(ݙ? 7x`S+LxIox igc6uĖaH>2X_O9 ,AB搩 xwu*+B &tjƢ4=kuk9;Ռ)B&瘔֣L)$S箁"_T&Mp?,ϥ#ʬցt}Vd]`o4Ԡx-SЬk¼'_ iY)zeO=2+!UX:ٛ`{I鰷gT=C!fW'y(K ?Eةze X 5Я][p ,^Wl+_4qܭj(HV}^i[D#Ve>mVw@烶š`FfWءL}m)9t hG:wpɳbA` 2JkkC ZdBߨ lOn/-<=R+*\u$''5̶_ƑB4wN/vQWk p\\x1^wG?d",eaA_iҦ]- * ipURňRYO҅D? c_v\T[f̓ǂMFC6ՌGuJ& O_qA9m| aSs8 ݮJ9z],]ٓ*@OMF*|p Mab?Q$TR;? &7TTSY^Q?W|naxWV} *S3zĆ]Vg*g?RRbxR{3K/\CiIԯK9U ;G]yFi-#ٙҹB7^;+}6 |^K/>T! %䄮fZR9,l]LJ:E_\+9a{*C֛i4YZ*4Nqr&pAa608;7tdƘ4CXUw 3.`}⁖bcC.;n1]: 2S*oYSu)n l2%v}V@ uLMF]=]9FyJL/;oS(]m(4UkTB8骮dIw^'D;Sv7Tl~f[?L_9fa?fL}5OAS"7A8YǪn)AQ`};%7٥<@eKKL}'u~UuIZR`^]3ij#hȣtcM#SsGD ΙZRep;H՚& rE=N/r2*˻(OY%\%Xyf?-gO%CcC{G|Oi"L8&dG7x";sVoX}PjsӽlhnsdQN,7G@fܩ=ִ;ޚNua/F4@c0͘LJ^b5TVWfʉ1tLzxWH5mjO̪qBޭח'",xHEy%lE& "7; 5Y9)ӀHiM"Iżu8 g #Z;>h)_霚]3FQ0E.[BWyKtgcYSx#8pH BsӸJ0=YiWat6;ɚk4D/ Ym Վ!ԁh,y rw4,P. y<ߔ_?e?K_`2M)?4;T[*U(=ܚz|jܣ,R¼;OD\wHBQ`Z`KZf5)='^]& M%t:cg^](5HGOxo,!̌r&@'n5~yBƲ4;+އ)jD$Q/$n+_w9OIXas >6+x[T#r`Z;+8Mf"Q:S|PY*.2/Uǜ89~^<3QCdYifZ^9p`nT>ϛJQ/OW 8Z _ԥWcP-Yԣ5?dxϙcǭXB:?+Ɩ, C_ LEq 3_$lPC|$I7_E>5D/tcKKV4.ۊC _;[+g⻕. f%8?/Lb"3+Mu[O+?O:|Kv?`k`IGy~(1OA–*'hkKSG ؃kg)i8dY8hsf30H"]q%%BfHA_zdV@ocܨ!J}LeFzvrd{/4LľC(qJ Zkˢ UaK`x‘>M@ 囷SAN]pe[^*]K&WAV!UQ!5D+5/`d L\?!t f՛C n7.!jψ;ƒR,7@}rM4_-H:~Z!Ky \"zK9Gx vƣho =jC Oq(ٖ]Q&?8YRQZhN"Q%lΤz.p']C"N3ޕfh}K ˳`A9U,\WhE u]v z= ipF%d5\ʹ"/nm $0XxV%HDmMz{B59żOr.դ>guNHԌvܪmHUlQ]~}Bo%t4aL=2Vױ[HBL*q@Ki[U]5`$ڛaT$?1{2E9簶nChҚ+4G"C➂N/N3`SEe<<Մq\0Bfatn0zdJN5QB~ZMRk2<e#;1;Uf^>#z$C[cM ZMѶj*ipd8Xv)(*fҶȏpnbE2Ӌ̑o?0~d!I4-oFJj&'Ǎx 9^]VAՁVemuſtR!^*DtnLNv͏hАpCIt1;(6+­Ubeu%6N -J)b0#gzw q,UI|[㕪=BDE@.5|1 @ 9@f2fa77]FC^b"kakg}Ia*лY.u0xhw;+S4(rz<qz 7\`|FwzSNJFڨjIZMb"<1C-]oV[k ۬ dx^) h6|Z ՆmPh@(I*!yN_&GNk&~zgΕ辈Ɍ̂E&F.`2 ]:ھ)$+r7{=Iy#\/~.):~=ț h\h1L)pF9% Lkobzx. _\tinԪ$$rlk 'eE;eC#vfbtoT_ Yqq۴ ~@ڱ]LHtA)*FYbՖcR?fpe&zQ">Ƿ1zErO `6_] iy`Z-GvqHS"<\io8`IW_|nDfL4p݀3wu-{54⎥PDײ~e 6BwGs~59O념lo)9^s8WK'{<*'о 1vB}/YA}xpAlY#$]Vva!îjkBPJsr8⡻ צlq_z.?y-uM2-a/\G_gUf횒3U{$Nڵ{ŷ0 -z;7Q8#R0R =OD=@<S:g// Dǻ-t~XyYCeÒfiX-r7HYKwC4ƘZ1P@3]b(T?[۹ChLrx*jp^SțYp˪jRv. &G|C˷ `hHC0Q끃`6x7K =CUD w㰫ZO6h%CbbFzkc0/'&Ƒ#)MAF|=WZ@eT_MxevlP'#֪**fڏS蠁P˰vngsD!1]ъ~EgT̽ ?c]Ii2?Psŀ?_ W2&KRjᴎ9 5"O -<<>E1{bu&ѣE/I&ڋN&Ka j]zy/i Xmܜ0['*HrNMEFX loF5DYljm#aoL6|$yہT(V/ Ͻ3b8*뤆շj{=р"Zx˟>;r TACQdM):/ m^yMdI|i]Ƅ0ҵuf]+KhQF^K靫=Ѿ͗; t[a`pA/oBbɖ.Ł6~:K(rmX`Wj ij5?yC)rr5Z@_svLKǚ%Y[H8~qT;ȧ8vJ@xQ6YCFN]a`J?o<|t½h!- U':EW4#bt1*UN4D|J`)>p`2攄>2|HƑi^=E&<vlV;iJ'&(ZjQy7(,7YG|r9\K~|DV>:K\I S6F+2yi~BjQ==m0<Aى#2Oˋ~a=є ͋o Z9a$j'm]PE-(^NmԦG@Y'bg+TsZ2BŋUfO 7NZ2_}R|J\z#(dUR':U#Wh:Cn(ڡ=cbz%?ZJ|Y7j>}ud[;5)|<$e~o"-(!a :)GW} |& 7Ξ@n`#+g`!SMD6-+Z( `e sfMpY)-JB78c=Fsm+踀mEL"eGKUá(.si9CJȜ)cj,T*F&R8.di}4W4uZ j z"a3\%Fh]ptKQiLe7~SdX[wB*\l {RK)ϡs{' @"?8AH쌾ӄS Ŗ`4q {M-Mf1>PMm}fcBXֽz7.EP4!' b^H Bښ%n^-N{-E8~BOpC5(oE m.9- sD@/Mx >ve$H +C$vŘ^5@0*J6= F?xHA2Z Xe>:@ZXvPg،8]ܩg:u& -J`_f$! ‘Xn=! ~/| mݡ'6[OC]3O7^D\PN[NƟذeNBy̱ƸM"^rn=c 7z1b M73g^u+~B+: 7~3ûa+*w^U/͛X"z;?5U`85}nc%غg9sp5~8K֦\4H_;<pb8\;Z9f~ҢTx%ɽݼ1Mi'6_OVL@^S/+ )/ڀf ZmBrY>F>&T:`a,2w\1PJ~2$p?@ No0QZHA2"T ٺeG,qHȇ P!CQ|3'6b/3s 6u[:7v4|E,P(frSLq;UN_3HXzb],n<7*ti y2T<)=! nJ)O `K]qŸ_lJ&w$5'G05v/tz_lewµ)\m*\"КSNJZO⸴Ը3 }Ǒk鐽!KOdQacޕ;98i S볎me }ge 1@5,7ޛ~4Ɉ7eU 12տ+;Zcr'oC5j3J$?!hO7Can:3|5D)ڼHm YGXЌ"OMw7WȮtJӵ=1D}Yw-.HD+OUG ?>~P#44G A ͽ^KI-ZYIa^?xyϊ[Xyw^!*h0R^.Cn %Ez4e]Je66&㎈qJh…TBo&)ydB))G0"Gnna?*Mͤq1T]&(p}ܳKoQd=YNGr-ޔ>%7fX^LĭaZJ.|LɾJ9LUhkVuc:3mŁJ#;z)^;j,e[͋lz]kVπ©#$vqu{@eZ>plq"G#0WG+6*o4;pyG?{/m=''_/@F呾ڂm+Ԙv"y E|Nա*,Rr@:s,)vvB]'f }B̠Ƨ{ߏh2tRUov7trzp,c\(M{S NmƘbIW\?6yhQ^܌Ѭr97(Mv~7;=D]z+ ;"w~~NwQk'FoL^4mߋ0p?2ӵ>͔10s![e ڹ mJ-:%k ȂJk4p##ӝ;U)ܥv ^㣬p%4ׁo5ٱCCQs2)d29>ZF̅<)+-Oz =U4*b=cp]K!fJJ+rO 6yG8mv"f"Y:N##G&[XF^Fռ3us T=^>6}4B-f6j']cs#\yD7U>@bs;v{䁔)[pt]ͿeTi#;x`1NpJ0ӈɱ/fxj;mؖqֶyw,Y ׭H4jU5a/)7M/]5-vxVDbZzpe8Y^HS3BOa31Z=g] ߝX#\`t`y\ó\JRhGK ]hY"1,F YXټgF֩^TZgU*Kp^WoΥJLno  L` \KQ{6v)=pc|O1w.a4 @ϽTC T2'c0GT'Q|69p6 7Y`tѹYx)KifkmqT]oYusy|O)XeHOXSV<\[c]oIcf)lX4)nyAvʾOX))dUmVn qmcN>K9+?[j>!Ԧ8LOK:ܮš=%gҽ$wųWC1E] @[JΫ;A3.^_|1sUF{j Zr|lUVPdB OZ 6R=>]g*[$P"SC z f_,n㌧$#wvڗܞ3*(//mܱ \]aF=Xs0SThqMiw’i ltW$K \|~wd~d~~i*zW5WmwdK-c^ۗ&壨DPM2)`eW};3gǴ+Ė 0vm ǒ{b2q[ q/8[r~s_mqS_(oߗ%ȥ_zgz\ g+@6GC"[B ^di֒ht]ĺ?"\p[5Ip" KmΨط'$(s߬36;N% ##("vLOCc5:FKiaa\ +y٪hgo҉]Rܱ୪ 13\:'tE@aB@(H=oǭR® * Ɩ6 q>'c[l c|2aqr 䇨@2fhvGS073s,L'Eŧg"q۞11Cf1EhcW `V͘&G}2#M8Gc#܏#V#bN3adZ,%cI(s5:rH=/WR?iE ohIv0ɒãxగTj'jPDvL=mҺ\4.yr WnByD\9OK|P,] #n~D8'P{Aԕ`oʲ@l0yrcP?j$ҎŸ@my*m5 pC";~XZj b`QSe_|oclJ_@!$O~YO} c@2md-6xFu'Zr)Cx@CAyf+`?d_kщ?gG_jnۦO^Mz9Ps7K?P~bwQ|Wl>Y$m(؂ד"ՔոzkL&bebMɾL5z6gzaEcMtl.WhTIN5}4'>AYof PujmfS T R+J:O퍂kSs)_h~Gyr^H0Rן}eJ(K^ $ˋxv8)x?um%[=ҹqߗfQ&@!2bfcu{]_NtD3Gd铞P߈'gh$uzut`T[9byIM ϬS_T^#_:#NqjsA1%%[ZUu)dx}8u2(>#0]u{)-bEL9}s"J!h⦺`uJn=8n-;OTzsC5o ':Kw)e(Qh; H| )e+tӕ,v{JYIWԗK~&tuSwJ :wk+s5j9' >.f@}":8O0=1[ Pd*qAqgx]?Vw:=z(taWH/펙v'F h&Ѷ3ݘBڱ|b!NluNstƜ1se<ߡ̿Г#\ɽE |K ~P13W" -/ըb)ƒl- bk1 /!>!Yy9$q'd,YyٿJ> xaܦBv>"^2P |e+bnM6' ~Rdu:=iOⶄۚەCr dIK]@hr%{CXDld=GGFyvS L$"~J‡ihgCFLjA/&w@0Qi:2"M'~y}M5T뵍fHʶH;*p*?d#9&1YK 6w$'-q_u흚*Z޴({5p"Nh j\@Tfo~dGu0? QXKgIp+6D]f!DκEa_ Z/7Mw P:_H d%I/̳+F54]za:/Y5j{ "@\rh&k f9ᔑ^#߅!Q."8`8Z!fvXy],6Hyw`D Vƭ!H Q|\, "pC%“i'iy+l%E۴=1xl@пd҇RV%7xކO2!CZV("_ _$[se G-֥b]z7~DQ`mZK,8Ϗ{'W h<1dŪ̂a!+XhW4O@$<  ϵ-2O;R{4*moՋ\Pޜ/B$(",l$<0$0H\-}̰/|ߓ Xӿ8evTiStnƺ|N[[au]pO-i>@ gK8˼pDOE>VlU4VZàm1 ( /bҪ@Sifof2Nq&'?mMZ-}lEkC!ÚE=/. 8͋abMg?XwH0_c1]tfU"NzqT5[+ F2J'TqB=YTJP2O.˅p2V@ ܂ڏ% Cb+`Z?+]P̟҄9(sI4L!lYH=$kef30pfD2q- ``2&l/&{O>#%NY^b߈3 4S:XK;e5} {;a6my%dd }-P> ,癕(ĐtLmX'v=8T7BE-rtaSO?qapwYhĩɆz:¥wUȝՔh^AX[mzN$jC͞fey᷍Gw<9-S lW aԩwPB|`uaܕ`N<$eo2V (vg-a1o8 K*mSOYF2dtuk;dF9|4Uf88~@Drw]>c^VS}L[hS~Ti4gW;.Q{Dg"v:*sn37115R< ڸkKh㮝1II47Èm=pct^m.Z=(go\֜cyosp `t_ A|ǂ;$In1n9=hfOr btpwCf1o(RъxφH j.mC(`$x}Y=Tժ;! qg~y*ů$Dś +Ez* %G:+kJqq<?Ika !` 8ţMSvBʩBH={O)wr'^p+%TFEIR ~ؿ:#)Z,3F⤳`(a(@KP-)($-](6KB!ʠO)į͊6ׂn6U:&UgUù{@idLےT7LS`Zf46kɶbnI^7(B""@4'v^u7, TgNBܛ, ^% 'kpG/Ɲ u~ҋBU^\)C~RxvNA3}k8`@mV-Rk֠͢=/3Nxir}W%#<)u a!H=O-#vpӛce֭e9/2M h;(WˤWU'0:{jt} 4?&bt(u t/b2hH+S'b/No̳=kEC3RLV 7*;=҄:r&@t;29ɂŐ=,a|n='Ƙr qoR4ۘBs$Ux8&- Pil3mEK}cQZh[k8rY RVBG"CЃ̥Y0'*ΠRZ Ą h`UL;JPIO&wFWkF%.^Ps#W:7S'^]aCsdm-?CTzyE`DTś ,CAt h@)0'*>LYq[/8 gLꈒBp8?tAe'DEz,Z sPv6KjWW-I|q8~lfRN_#|%$]RQY|7˲c9" n+n= #TQfDo.]W[\^Ϛd|r vEir"hzN趒ΩV,w5_l}_XB>E4stM%ޚW&gPV0rdSx";Dz-Z'\C:7,g\ e4Ⱦ8E@nfhgNMQ?*F&Ke`gh)͝!eUamrAj/? >;>#&zWX[N$Pb-Bွs Vdz3_7a4NټŹ? H; a;x; »OgeUZl/:я[Hb.JCv=;TkayΌ%.X^o/ j0@`qGL5Ш6g&nHV:@0[Rl 8gFl%2}Il%`5)r@e$i^bⓞ'~g#;3&G#xY"9HYӴ 3G[ YM?y|bV~ws8bmɝŔqJfR{|89hXAg#[bKH6*ju]\h#TeƑ g l[_ ,LKi HƩU(j64gh-0":nAЎe >'FO]K# mzzyؤ+:1*xKR 2Z~rɣHƒ/ӕI|հ  Dve.v!;ץ6n2AtDryxG4cfk4"+,"guUV;@>lϺ%_8mm KuFN2*J,)3+Ub3=݃-HIrps1947L^Le} BeOtt;Y;^G mT`&)Hr+ziNש8Qs~' JbAw~kMw| `릒DD˒!{;&"e tT]3ukN،\mTRcX8 &Y ;)S~ъbLA%d/m4F&: {ۡTU-4Ԍ W4|Aα WNU \KnNC%8(ZNn_Bvp79x=~_P((i_] m0G6;}iPzJ.X js̯Nɢ+" R@%Ň|yܳ ^̂+㜰JiԭIb0z_/{Cg/o"i|CfzTok!*y5>.}rG\aH(FA W^p"#)}$(x_ "zQ_<`}J)_[&/QXΟ >au =ryx//a6 /HK"H+5aC9xebix«8Sx|8>=Bc2y/ E).)r::ȝq3jPFW7ӁZD^%Gv'U7ke*H-t͌rXd?"2~);2+r#8xU/ЧC;crƔ!f璊]2TDa:wT?St;xWYk!yǟ@\ݧ ZsvE맚H-9-5kJI'LN]1 WAz^/1O_jFld~\jݤ]/ö^3/c143; G/,&lDdܓ&&fdƷJ;^mc0j2-KfB1%E4Q,(,*Mj6R 0-=E^3|Ȭ3yӤ/b6796< bqQsa( XN/7 mu&lRߏ@+[r_p޶=ϥ" &(oD&TM;G3`MISWK|4٩}Hu==u/5d)U㞾۳ut`hF#I둋p!_ JhGlZ7 -IMwݴ";q?aP$*΅Ƈq!ֻ̼/"nÉ9rdf@iP"n{E& >}:l6ҶL0 p2M+bP\3e MfŘ܁R3a#ϘZQH⢯*Jnn5^_t9ލ >odv}mZOmqJy1 j~C pԵI`_@AK-&6 .Wks/Y_,+ʘ".C⬳x,GJWi>50qvxyFa_g7%mηipFSoFF$}. 7j*=p=vJg~ <.k^ZʒnA | ?j$j#ICГ'>J0/TMi4ږ4$T+c4oݭ, M&4* cZ:)F0X]VlG=:ZG}ul8'+:edUO5 LeC! r;|Wl?S6tfvPd0$Ok뜫g]Oo 8[N:>)\ԙ+/,14S?i-6)v8.n#[Ң>"'z/(tYRREx_?ѮܢAeSbp:~+T v#}(vjodL VQ!0`ⲚtV_K1ֳ /o7g)'dw\@-HI(YI%7X|྾KOFͩ%!S/3_NݔO'=Ӑ>^[}H[$A3\58MgKf2Y2g&YwDT-yeUjCޢ;,xgt{+6BF(i6-辰KOl7Sf3Nќ ikQ RWt$bQ/^4'(+iw8o_nª"Dr i)"$rЊWHvW#촓'RYJ3[A(i'i&Y 6TMDer)fQVM28xŨ;:"#^de-ӯ.͹E2I][?QV3Іf''= rx*i6ϧlС(Nɍs>ވ]?#~VĞkE9{[ bS9IវN2; CL|~&*U#%Hg^(wo*TrJ34bK5o +j%'5 َ5RUV]TvӠ)V?W = ݜp?|v⡉+'>/-Sh+ r]+|H$wS+YZro2h ,]/KeۣqdpZ7TwϦO;~l4=2V$y&ݷQ+eh!HGWKh2ߛ@m~V-]9rm&xP'k2:W OM >6BD]o䢴5s_`@#y?.7 '`8#؛$wĭAԼ h$ m8#LBgn ]YպiC7;#b'}SҐWdϾ@B?Tw!Te&YD泥U yn)j(i^|QXL畜|#Y#2Q)&l;{"b]l DHq^|*0(i_<$u]O z6?4&Uw$sNE8zJwZc:fV/ĭI1 FM|fB< U0݂XC^lpmՓVo6-迥\^EJ |ƯhF:B׬5od߀:ID$irV?\ѵW(+40rV.Y"8Ӄ.#ųi+qK,|!=_ިSG<+jړmI]s D8CKAU8S)PwN‡ ^:Ecr:1$zd'$YKK}&LBdT{Hlr^ 07))8zp&W3uG[XrDP4f-4m:9M%QDa'2J#l_&x)ceJ1\y?6)d!T6n>ղ^CGӁNgOH;bVlŽ-QZshp9I ejx:(#6`ZX (4hgD kBCΥ1G6u9$ ҃$ί-SD%(M4`Ǭᣂ B*e u7s/_·^pRwz+6pnJz9Oܲe%QN9r03M.= ވ СzP&1,K`N'kџOyCOWc@fT)knHl1+iPUQrM jZF,ɚ;fRe˷.4k#[ߗX BkRnbӯݖMm8+VUߤtxu]:*(ڽ M;ŬGO\+db( a;2om/'k Uߦ3']/P&+kh>; LLtuۇZ*#LVߨ=^$e7ϸzi)t^6P@\[==w[;pQ0v KlNW7;oFI'4?9^}'iz4-|+BUD:\CO1L`כ Vc,C]jEϠN`"@&R_O+Ӳ콲 NjTɹ%חbB=2I^(ڔf~,RiDc߄+r) qg^ YjAN]a|4B6:2jy1{<=rw<ǁ[:oLWZ+sNshD7=6UE1gy9Q}eb- 3Ewc{&"LO *9f?;5ꏲ</ .\Jr_tiҚ/2~ bZrI-Z$ؑbU &A3Q @??r1Ɋ;ld"1" <0 PD[ L$KXՑwq ='Pn!Ysj#D1$jտ׾B YBL֡.#Ԫd9y1Ts@ km/Ѝj Xe>|Oy헺GUv?8%)g4ORz|)Bj8޾'Zb:|ظ)PC~:"ܭH&9^Dn[)M^J㹗hN\Qw϶?sP_d ꈢK;#N6h1D(-EORhLB\I{)uzB(.OӯN}eW /ԍu250NsLt?=ԑ iMݖAY"ok~y&|/qMj9]=hH`>CE7hّJ6|5 i/Iu/<=>eD AEYhøw|9A%+E4k^`I fcnf5Xd\HK_˄_B'2Gta&Yv'z/^dHT|U9j}}6GV~xJxp<8ľ*3,Kő?;0(Vվt* EMR}*bc^xMx\ b\+A{e!!K)»;W  B2'c{PteXW/^joEH'$ѹq<[X {wO-wсw̡lt<+@%"8[$)KMv4BaͦVrc 4۟q O4;hPfVluc[OUbh'eNp֢\OӃ|4e 5$f|X=S.ri -"+x/ `;_{Q콷8D堼?qu3fq X} ,,-^5],R5 ƐBS:eR_tV!p]C2r2?5NȍP:BȆ{5HUa1 'UǥWs3-?90J#3bK.*g4ycLGJG%ooD }CLMSC0- A좿aEw`19ta^l➦aD62JP:{~j>| \ A4`b"9^-"&㓠bĮ ]쑏~.)1*i?V(jmXy6e}AP+}?˶ޝ8eɪZm5ȅidc\YdZgGD`v>%~?k`׳C%S[_ʅ  lV/‘PGowD~/V%v}-% m3ՉG7<_X\3a]K 1%e̻ DXid >ڝι>Hx:7  iՄ3"9z6;uzi9mH1u(.(7ɥ gZF;8`~0-#\l c;-zzOivEpgA@9vC/l+wq.}IB U7ìBI $^Ϯ!3?U<{Hw\<8'x=yfJ!U,"FA _*ij /78T!iane\/)e. pGzpuZ[ŔͻЗb-6I6;sib_܀'+eF7Gz2LD)=^sQIq@BnOܹ{5,0n:-M8ypƕ=K;[J@ؘ8ݶ\)"v/R.|wwD4 Gnީ;!wA3L1ݘz)^o! m͔[T+}[$ZʺWByUXZ ϟ` f.Ƞ5‘QՁ^o=} ١hhCnoٲ(GR$d%.aS'Ty`c6sEQmpZ@@I3# }^KN0(nHqA掽D=&j4FYHߪAPjkPo^^sC^3 )͞sH;`02“ԋ :U-Bz$!Iaa¼lK@ `/aYe#}?OcGM}\`ķ>C?m<[0ݟvlCЋ)ظJ] 1*HLNϓ3 n F%w@6dꈬK*KPrS+iY7;` 7ܝt/&y`~9=ϊsv RO޶5,xL F3`o;]{BT3_ZnQ熪ϝʎ\VRE@a_I"x&0>bI ^9ƾj܌iT|?Nu"qiE0X\!B˳xE}B< UnLp?$6UE^ Xq1M@Ԫ< K$ f3oJS:DY8rn6e~_yśVrdBή!)T(!" )bA3mvhE;%h ۲}O|^D8"(Ü4HC,E'|,Yvj50@3;WzjTd?(LI,9m"(g^&-$<8BCfv_jer/侩 2Fg#/dӯKu JOwk{?tel~) $!kG!e[̲1ZY@Bbs ; $m'n>{_fb%iBӟ])7 4hg?OႲ"zEНO,b:ھQ 'Cniޗ`_͝\%j &en?Vl="?N3F{eT2kD.3U2fO!)#V-v Z2*'O2AZ| Cv:bpZz^lW7& Ih'p fw>${[DVM;d3*6\dy ΀:i3xeEkiŰS?ԦY~7[D[V24JޣTʳ=n?)_hZJPw}j࠼!&!NsFs ${Όy[J{A2%9pzWnV@`ړR5c catV4cvx\zQskB$%P`sۆuݨ2I.|a:;v& !ڶ9y5qs9X$CXxXҘr- | Oߓm,|tyG4SE̎Kgszw+V2+ti,EUbґAQC{zpE'QT,<%r=ޘ-Ɇ 8z%R5y<)կ =ZEY+\y'hHR8jM5+rÒ[{y*-4PʗO7aﰢ'Ffo {_$-?l4?̰M&=ogkjϖ54LKNGK8B0@f1I쯿x_愋Nؼ4 k-ڈH9 ?kibn p\x'u2 yC-hƻ<@qŌ#_ܙ\p]#X 9,d4IߔT"5Ӣl5̸8AK[LmgLf!u& Mh* ߢ:\(3|Ҭr`_Taz.#S3(⣻ݶ|#L9kwЈsf1q).F+\}5"+RH؟'f" Ь)ЁçG[|JOgf3==3zKRҩ^CEvYMw*/„d؋H4'DRV)R霄mY <}mTo`z؏VJI y1%]W<5}vr! O@8Օ? K:{7;|(m7DG{a\- "e<>BN6(TꄃȐi\~]2uj'9cDEHB=靲*^A f|ȬG3=X1SE; )/rm\FÎMKv_ԄfErgwF5M h/^K5=@T"_$]s;# 6&6 T$-j~znț|\fQ98hCQTKG!XOu?ф&3^jwr*JYx &A9MBTqVv_J{ShF݅3%;#|rrATR8ym.|<+["{C}2$ ؄wy?+{l\8Fojg`i\̎ ,4ϸxnp|:P1(e3{hHy t'玢4dSfJ`S=AT6u Ƹ!cҽڢ0^%spI׆EcV'fM _ fKWCu0|v!!kKTƍrĹͺ:D2қ`mdζ**!eەO$pM7i zwR_詖9hu&5v:ލV j/Z ZN~Tdٲ q<lINumpOӣ\l,%wsQ@wSC.#2a~W |l';JcLYpfEpTb%;$qk-$OE8 Rʔ+2M,9sJLJ4qJ+JI m‘)~6W5JSj`;^aQLWq3wmjOЧw{$\y&E[ W\ K;Zy>5sZ+n=^NՂ ˥s2ʛu01_Tl},7K5^Fb+;t65pY{ S1`VڸN48Q.H,e;taDve- %U}n~ $ .ߋ+s]&G2=>)>!QO-3u6lw0dR5\E^E[R2MuFzcjoq g[Òx#7YMM':a*y,MK20o!b!@Qʂ +=Pst,rէ2bx_|Z“JDc >λrk"P8mv5fR#@E9X!EŅn>nޭ" &">娪yހ&e+$m{!o]Ȯm @DZp/Dh$9Z?fL+ԤDojZig g$gB{`ưF$P^"u/P|0꼲#!gꏉ#N'C̈́Gx9z>$h\Ww+n d^zZ̖X_G\t&}PdJ= PW|,J  6ӵϬkPU}u+ 5#! ^~lŤΔURX=Ӳv$wFfmWJS֝?.:†5p :C[0}$.3mVG29 R:ʂd 7䓿jN1p y{o!+kנ>$Q AĿ<_JETW)rG98Ʌ@y= r4;L+/ {pS7aQ/.wg-o:ѡdNSg7z:*hBLȹH# Q2=n` C|y/Lk|v.d,K̚9{0QNNw8a3InvLzsZpLeO7J[U b%^d cΗ c~}#חgr^Y\>0GᤲoDV jMOLx1&|}Jgs6!W6C>B+l1 ؚ^@V!ˁa *EQ*!wɕj`هԢz2hn=xK$0 i_]EGǶȢ96NJ$UF^V8=p8pԿC"tDشR[w>,{hX("qPSB`Qtz$Y)!"ƌdC3g}ek\X> ;^|JAɔm8X3dHo OQSw4%sbJ;|J6\Ocv{LPP׵;}ah/,_z+$D)iH ^a~sX#ϼ!\c1 C:0Elp|7zT ?@'Mӟ}q"5Qؼey:'I5;Ύz;J^t>F}5i:cD>A'\'Hjcn2/\VIJSO5Qd _=Bf!~Y粅Dkl~QԼ?Ts 0]vD<$Өt=w0li9JFYA6Sǖ7{ 歔Rʬ4 (+^o}{X_[TQKQ[ A.9;nhՌRhF|4)B#vSdx#IUjΤ+| FF0ՒM4ΜW sygR |Zk89Τ.iF Ø:ʜ$z \&.IhoI&f mڬ.U՜RH\Bg44b8tÅ*)O\3(v`pD ~R!|#KH[)4\]1 [! aQ>03oۡo^9 kAcBXuƑQ| {ςoVS .&ԵǨvU cN~鬖rWu bE &zn5aU!Vlz Z5 Ddݞ YgE,Lu5n0u} p7.DNe}H]TuwH s:Zb9LhأΞh_Oδ.^}!hTd oeq.p;Mط=fYAֿ5 m!yHEPV>&vT7e/2Ӗ({CDh…,R'?2ҥa+ȋD#nM [)sUA.|D{b1Ժ"즦YW YH wUs<jKdYП|h5뉉Y6PV2W_`ۂNl*ڢN=)@83xOweY`m.}7WX& w.,#rİil(n&\z0<lg󗂃P|Eqp0FE7>&nh{+7fkO(o {|a䎤Y;=7;X2J Y:7mq'~TGX -QuGjyAޱ>ޟ.Q7Soj[Z$]'T%D& G5HMo].n9A3Y~sF#FV[M\Dڀ@A|۟΍٭.-H*3A+C")#~L4yt$ 2'g7V. (ƫ=p0\e%(Zax7r L._TtgxTpis, 2F3k[X ~9 4i'{Hӫ`5Q}z)sB_:=ίDN{u}B] E-5$#wD3ۛl_{Mؗuog܋:DgUb+"G!  +'OQiX)Шۚб1)H.\}ڍfP@)k Fk>yMzۖL@~>Ql 2}rD_CJZv6XބVbdxJ۵x">}goAʋm}dfAl`B( qDLA85Au d!mek"ƋYBG 8 Z|7 !G!gx#Lz9btCI#p K:;4V9 qToSkÊ>;*/fٍ> $UtolibĀl#OZ1 70UK^- h,-&.jA ( &jC7.} :Io(xxު ͠@?XD_nyad͆e\߹h2AZd+"!06=+ qv&EШI_($6JgR_Q|4Oi6E3q ˭C9zJ}vj(0Ax{4Cy||rWB/˿c!RvYvgluO$' ,q /X}di ju4ɼs.`eomwP^FX)AIhr¯9JI`xg\`rXc^euTpJ/ɶ޻P*nk20tCU@>O)hbi?j[-fUH拰@,3t6]0$[u~)&8Gܭ];{_nWHHt`,| 7iڋP ]3eޙzS8`ۧf{RVe\v"0BIYN̒A Xހ`4.^s.s@ck-G AJR@nU:FTdcvMC`.hOOS%3J^109(,$ɵBQMYК4[ԅ&iˆ)N$hlﲉu ;to^<Q__Q&ֵ"l\ UrQa6znGOGt0dN8Z{X%f?DnWLˎ~u'LU<2.cTi"3)43Jy: ]Vs~bw9ַtZRشFPvc-Lu*oXuP d+< Ĵ+(ld(:!"~F#1k2n C'd68T),5<.QSuwEh\\1ByUF~PnT5DG@[Uga:&-/#sFdAތflZK@,%*EF"g2N룧EDa8&E9|扞p Z,p*NыfyuhxEm0ATPr ^Qc=S)asgs^8ĽO`F6k\eש2&CɭN賯.PgHHǺr aû*U5+,?hOGXm ]ZT!y’5ÎTx?ccP]SV܋X.}tAŘ]r{ïvgZw尷AyT~{%ޫƨ=2ۜi[C5ܤȨ+"D(-evrK Ǽ=)u|1b-~ D`~푂v"ו.~vHu,"Ku)o$՚ʘ$egR&i?{De#IC ZުkTV36Yel>^e _V'+YRUdi0\{-[F5E?`d ΩU%$OYm->L1#H¶ڢ8#u4ap UPovs,I\huPon85 ֥%z*)ЛxuXI< == g[2]5 EOO72j%nVZB{FTO\Du񛤜^bLw0՛ "E#5Ae+k{1 ;)mV+r!s5[U;S*CEBhdѻ>k8ir%`uϘ7v)q},Z5Y_eIlJf @Y 91=ɾ`uIsbXr]=A(HU陪jU.r6/++6]_G,EC^o6 x)Tu7r%ܚD}(7+[l¥M.%+CٱЀf[\صcDo mAzka Tj{C+LaWڵu0&,m}޲e"Xtι3$ ߳8ۄ}o:{xמ#;QPFZ!ٗS5,ri~猓ã`Za垲 'w/SG@EXioU,mMl\U5j:[Hȃqf_˧ Q6yB)ҁ I'#p\~ "90zTIBLPRG.V8$ji-V"(ά6~ȷCqkC|.K_Z$|Nb9%Xh ڇ^!#V0Ad]=;M?@iUІ}Ȇwcơf1sޜ:M}"wQEƊY[Hw\UҒ~K"vrtvz5Y{LFdjq: _ã%1^Z8 +W! ҵ34.ԭHR։i[43tF7݉OY ,Su OSYقuF;UPD8hN֖6ŏ,Q1ԓwWѽ5> )Y7l G7`pp70#EkK߁㝱9j0X>q䶷!C Ju}G$V\"G6߰Nn~.T^>\$j4 Wd[D5]cEwb5wgy =U+52{"^G=Wׯ-w<շ><7Xuqio9VȢ ˑh-ɂ+eREM@zfe2ش[β%Ԓ o^m c׌rP]'-@ldj+p#Aq[*p5ێ%7 [n'"$GdOk'#wR0劅?.}dI/D-z *2,uV{ds%gP<$GU) g--NVz`Eeӆ g3j%}4鈫Qk?ģc/Tsc cCrzq@'RIRoOf\&)! kZMty1RfVgdB_s9㼨ؓNSa MTAV`fn^(ʍO2>OfF-U->v1K^~)fS"m25WӍ5lx+,E|V'd29Nָ*IO{ VזeK<}@"x9rQͽ 4N<.$a%~9(4la :TČz .Yw~3@KQa-cHE;8S,WъkӤ9rP֐$#YѼX׀& ߎ~Ьl2}<>es`5k2R:zMQo*+l&fh&"& ;v4ouαnpg[C"/ed;'Of+nxտWoƎb{|Ynkqԕ.7-N!ԣOG ,?M("m"[_Ǹ& +2zbۃJ̆`"G*`|*gDF͸Y] S T)ÎfN+XAPFH6`PCcElmɆ8wt0^jIKxa/^M"wznElk(M咋Vdf v6 wudn`},Q%`A;RtGA]ƾPY =e:FE Ez9CfK-^{bM[5S'>nc P/"JL3eTp$uv<ϹzSOGKR^ ni?tZʳ T,bODVmTɯ2P1fua <7ٳwcHT?*d\!=6 fgmR!:Rf @0BEnO&ɬeц|E':e sN\E'}p^=n7N}6H1SĊ ,!x^ WǦX]P خ@YmԀX]ݧR[4]lcIK{Vټi58gK7^0Wl|&ou(q.<=$χ_woKy$k#Tl($[6B 9vZ W2Fe[Ktj2Gҕ(٦D{ۮ+ +4<4bK~džWnSo:Hͩ6n+r bq.9Cu}6Z98z,g[s\[>ٌMHkD;3FMu;:"hĔ»{UJЇyBceFXģiEs >Ə6)9A/mv$z[?DLvK1mѲZ>ck*`3 LclTqjbo:mRCrĿPn8ߊY5A L\\ZV>l/|4ؗ-b+_< U:_3ib$8*UO-i}$Ϥ~5:{xB5JIQt{Hx ,pHKD%>t/@`K/8Q: {jIPe(DՂCb_I uT2k]w`⿵\p/jM^Vhz|~V~8yYbs`-V]ӐCՅTQs.r] {NS]/dިdybںۻ%_ PܒHI+]]MM~M#ءhFZ:hPra;] 9G0{N?3䗔 4Sku 6+g@NA'H]O˱6ip+o)]/X =Y3ҟ}o {2-?LD ,J,'h"`1qKp.4sun%چRytUC` y2K|y٤a`YZ#;VaR9Jӣ]]I[_VhC-7蝒ю쨟䃚H\tMi d[ZVz/9X2ܶ08:aݡ+B{ fizJ@2uӢ-|ACxSGj3כ2Xmey%wdACǝ<ϩܝ7a+2n7RC/.;z]AR2ї"ZRCV .h(ķ]ey/9TʇS;|˴z~|D f۬k/Xg[ͫrs9 Np䧀8x誠κ[ˆe5]`46ǖy #W|[][J1_o^Jhٻ#2J+hdߤ]9V U18x.(GbkV{.,еЬo=J9+a͚^ҹ5sk$>&v=s,+L-->jkX V'c4 J ʿ(y@U&\U@\lʡO5#*qq^RwNn}ZCZ$a39$π[KQ.SS^6U_h x!#E×4 4R+JYs.beZ}Vg`a n}v7Nɧ?؇=S*J-֭d_Q윀<P#\*`_/?CImwF%Õ09-Rp6[E"prdڵx{N.KBw1A`AoހoٿgKfE.J]gfdՎPo0aZX=WI|{G x[R d+2etQ\Bg(.[eF؟$1L4Жٞ4a.k(Qj>fߝK~\ HyhEܯ<ˮᅿ*8TC|?& |&7xȷ>li ?Q,/.[Sپˈn 4+fFxa;q[ag놄z=E@Ht4⻧:j;nDutݕ;\qʃ^k\>X@ ĽNH7Pvϝ`9A[{}4 !o!nAKǶ$!e^)L{x8+׭ғad5|"24_*j[TL|PXWw5+w`jjg VA0( :ln^|U,UzMƥ@~^7d1-yrA)V_IUu6R\q9L4>h9 z]5븧 7sgoJy Vh-Bm#]jK ›@cnb96`lf9 m  ӌd1`=;L33E'n// >_K|b5aVCJzTsB\Vsfg٪I.`U]gAvM,VBe%b ϘnF0ăt( 39Sx>jEVr<l<}Q=vVy~$pɿENw, yU+tp}=O ypn 2ZX7`9`#CƦa|!ڙK?>i̮ZRSZ0g˂'9~{GKa/ptE Rӎv]mLą/#*IOt=G-QR1vxn ".lP 1cCjۚ2AK9%vq*-1`O Z O[H b Nh=. :wNӫwq:~?c4bXq+ >mG'|JLN1rTT{pByr9Si Jt!Pt,a6 Y\-}n>^{jDym6kDN RX=F>8{kT Vj#%o3cMKDJFW`1 k =`/x[kXdn8)#]ޒ߻X)v]K;.~4GbOQ݋=e0"qkX vOwڞ.{P_G\4}?D +]0){c̩3pVh'4š>!9zjKPZ6\l,b05t7.v} (j`<1V''1P\TŠL~}Hm#XL>k+l^7}+,AEbز=fX]ox! -&)_brwqvG|ײ+҈Y(22lDrÀt/o-((OiT[<>Eu2G+׸"-2aDFBF8z9)Ƀ]S(Q>ԃN`|?U/zQj$!Txә63C4:G0ЋCU"ɼT7;^Q{srV+x{"s6Lvma˻mN;J,=kJ|b|`<+tH` #5CiJ < 2^:D/E?G~o\6t2zkfLWOz(j@nNuCWAU +Wop̞q#(ʔb sSLLRd1nV0!!p8kZ//U鸾bk͖+=ܧ0 Mx򨨍"@:~37 V<:ȺZH&-aHvR{Z˟+0yAR (AǕC#wZ>S( K\] lь/SNirGC.ZhxNO bg譆Faݷ $_+d_'t +ɉv&[ L(CaQ.m1Mp$']%ׇhчpp]@x =p5j `R< 9C~jK:d_]s 6QQk$MKRtDp7e]MlɚOͯXWJuY翩 9d̐k>*A0Σy֜IH#BܱbGgN3&߷}Bǿ Sڿb &(vhdyq#!/QypC}U ۠8N0a{Wj@s+fn > ?V-i=s~G$>V?!#"p8fHD=8m;8j~U*6WӰY`SK3sԮ+2[ba/dR9ďp4>>q$Bk:K7 n55s1~,%t/ =fA*)c#;;ː(\[|!RjNHmKHT jY&[4̅n_귲dK8(}-wB^Wlj# m>VM&NSґh%sO(`~.mAκU3YN  !8]\ԓsi@O^]±x,sa>ڴ^72YA$fBW0 zak惪OvQ<_nã4tPjw6a+FiE{OP%<a8FħH 22r^nl:V`egW@m=/ >dFؠu0%к^(2;,МDMx3.ۦlBi*sF89`0\~-!lͿ}C' G tzAe'uI8=+|HaG~ 5{JJ/VYh[VR/2bEĈCdE͔jN7P8{LT:JEv2':U ,j{@E>jF&.x#W**qn,Uɜsd^fc0р n͘dRuqElN VP5zG:;沜Uzax ˿ŖcPFъzᰠWFK[O!!}@:fXѸ5n=%M6ŏ eW{y"A 8vk28ؙC [\vr4'4|x<ƾ)@ͦ1/XLgqmSس! 91 $`aJYˌwV;جqIrhrm%hnL0Vv磝2ߕƮo+NÉRSȖOTԜi6h ؉qYJ+ ^ԝ+* u{ RhS:"Xa٦\ԙO8*Aj@y bVԈEn ;w1qIl] qpAA~<~foͶmb4d{*kZԿb3mX 1H'> U;'Eo[EE{^I`οzUL?gvj:3ʍ n[oiPF\AցdC]9T%x1/JA#<$h!([s{Pί3?e+[T u ۝iw3X#w~+"yON q(gnpp+a"۱x܋,Ą?[;# xfȿm2lGu "E?GwnuLeJ?G>6i-9F$"Anbj wLh BЗ|2b{cEES90c؞(,<'+Qd4R+\|r@.k5^ڧß[>/NquK-6SՈKB[4 Զc/oڛ LbTQK;T L m'rb8#)y 0g[+Syi>@;6ö !m-Sf۝CxChBJ>30Gc5a\T\* ͚'5Ԧ)?aqLSg E:BMJ+`R_. Z'UK.pH:]BX9kiP^o4WdU!6pHj'G4=k&S5w~`+r>^{~+T@2KF`rk{nFݳS%g H`"Rh@4&|J_WQ3̓*IϫnBcjk<` ;SyBtm tvg~JRgD[0e ,ةuE1{jDK-{՞߽7 Qjw]v!kBzD:] |XQg|-j^l[P\d*ov2m __96D_i$!Bs 54i ѻw;c޳c:qe(/dfb)*i=KwnO5J`=^g̏* ("QQ/ݭԑIDfq3j`i6V+\>|zeT[ԑJÈjAyRݎvciQIOH݀ 6ŷ]ғ *ocFTὬI_Yphhe84JqSxkb`)&$ , ZFkJt~ (*U o.+) sŚMk|h*50؟ni8\Ů%] ḼgL i3mPq{`j ї"vJ)Ǡ=8k:KWGT 08āh"h3ߐ8EYX FJ5!* GrQ6Zopb#&g~D/wHAN#1\y0 /ARdøBJڒKkmO6")Ib>O@WF#SE)6נhRGL:&N5Tci}w-|Q?o\Qf_JO ;q6oڊUh9U77zf/6/U;*ӞR͈d} [GE@.T =BB wN E$ 1ߗ#=_Ʋ*!mz=]:i4m(Jũpt{1l_\HКo X``xXt5u={(V !,GW5 9K p}QW[~8LmjdsɄZCA>K˵UXlcrP:(f=&/'OAZD܆3 e)^Tknb1MFqg̭46dzЬRuohbVSh8mzȞ:f ,V bL|~_Ha)@kݜD+"#8֮@qږ$XIf Dr'V7*} ]D ystfotbQuќ-\Ô+XU%ۑ`5gbV{< PwDinnUU=ԸG)d+ :M<9sas,i !o,ȇݤd Qyo8ᑽÔqCw Jf'iyQ;je1Gz6qJ~ATa$:]% Y !7>ts~*ω[sgس[ot߃P׻K {բLrE!D/$ "nӂTe{Kf&@7lh6oZ f{;hӛa&L$/ kX?M˚?ebzP/1D̂Q1.mf@w3͍4/Y4p~1f;ij0Sɭ]<9_)"nj)e㷾{NYPp{S@F!p*fH[ Jap,rtĻwKoh6KLJh3֕`0w/QByT81򲆺0N W]oQmXyZm1ޞBΌa0ׁY5{I᳡ݰĥ\gbU*icCJ1w6g9]Xy{=l?޿a.Сyhv;+Յ_tyWt ̨eq45Ol>p|O(E _c-}|1Z rUl.nx3n~=Uh\(~*ܳE'/& YX`iYً͗g{+€wϜ%aSv)nh8 Z7nb*0 0kI !툻2I΄|q4qtyӭOknG 4tK2>uRf>Na)lzmԒAurK)8K4pIlt 4MfCe-~$nC~:) ip2׃Z|fS!͟{jgߦ')-[TOq 1McIp#/G aeMo0.gl.__q2O:A ƿA+ _eǺ<{x-쬅Pͅ)$+ 9a^O}۟03Zas*ޡcSH}$v=P)Jd<;qD8EN}-.'R3' Xŵkpw ~-GTK&fTD 9%a% h^ e2ĕQߍž}חtMCNB9s3Qa@2߈N"(q@BU8 RlB)>([ф7:OܲM}ڳ~4ܫ*M/_LAv*b85M~Θ>o/{ .GQ%a͎aG1е:ȼ^>H*ߎjXgrM\`*OTPK:!Kŝ#nt4X{gcdrw;W[@~EF v #0:)l(Ώ1&Iv^a=Sd 4{Ufoܗm"P8́;T%`uX>~U9vlnsa oV< ˹D׬MZf;!,ij]9*:񞼢9]ҽh[aע2ɕ}[F'2R X4KKJ>jTYuܬ֝m9k1п33Pd:}DZ'YЅ'iH 7- lB^zOs;FHL_Ar۝HLØ"bzO/p(irN #\TY3bUm%<Eؒ@Ya;Q?QsYrd$B*^CǥM*?ժa Ru7nx^0V%԰F0TO׮݌_y2Lg5sp[W5!orЦ.112v5Ftt‘"3jSox[5#u|l֦4n~ϩ55j]puk1s.ZGVn~ m,:`uHڧ\Kr4߽ ZjI-7q{-PL̸g+2#{2ɗ̛|,r#=n/Pf۰8XMz6Ƒr&LPn>^V<%K>Lf1p^o4Ղj(dAǁiN8 OohSKF߽#omFk"[C=%rB xqAGs['fZ',D5GWW10 $D( jwL;w eJ"ci p#*:dqUG~L}+Ak G<7=Ej331G,3p@zvh aԃ^( 4ԋ.$fފ`RhT?y?Y`^oLzKZMQ[X%CWOq\[a^:R$r$f4BߘVges7&zғqY[ /fQe2LP~mPuwe83E_ jMG yh g eq1E7(U[Eԗ3_hTH? j܇!tWSbR&h|@BK"qKQC̊՟_H?I.dxT{O Xbu-F^)ѳi5Y{)撴 u'=߷pw,@eb+KL3w#Enw*|}5 89PĤYzu,YmyN&<'y&"'9k ącB2KAĽ&@G1:߲2v;#Cbcy]%Urgh=}g} Q$RA]՘:4?LzÝ[A˒&w9dN)x\IW`AQfvvn)"IJFpjΈˤЗH J8K 5-FN3H _: yv+ ᎋbHyD́Uf:85^v#V@*0:_^]J^-E3.gx ߋQW ,4gDN( aLw=A\S%OBl1OWz9T72I2?55OS5ǚt'g9&~1wol^aP iE&]sRt #7p2ib e27OLO h f`f1$jI9aZY}koHplL?_'] ЋFNVebohoΪ mikCP~q+X6EB_+t^̶365ǓTkuddYJ E. 2b0Jj(˟xbK`eu2ޠ tn阗Y/6 r5tnu16pm60 >e `]w|tWZXyyW Md}S:tcC_kЭ"[f{`4(t?GчeaiAnfbqg[B#2@ԝYi\>0E;)߄nG7kͶ@* feF)v%@τ"6/+r*N6_5ÿW>ņQ j[KK{Mh x3O2pZH4僮 QKoaK8|{|a3I|xQUkQ~V9HA#5jWA;Stq"gU |{_$B1#TէD؅~L+Cn /H0ʢV" _6ht$gY ڒrb_WI3/E9ױdc#DJjPQ;%̐H #vR(d_{Hd [2@WZ^@W$9Z;"{s ъ8{}0"c]c3Dl^q5֊EOU?RG\tb6c~4,JG/7!p)' )EY(YgۭN/nlN&BI%O:I|]F  }UxzɄ(J4~؟A}dSY1.HZE ECfEbY>^@Ҕb߹yd08ǟt$Bjϴ /t1S, H&S|Gt0YUFfJ9$Rn?3 ttTgCgSHnpbAV?[5Yp*kj;E({^>k측ep/n*/0M*K{8\^Auz4DAp7!g-vkv Daz7E粭h9zL~i m"uTkq@^ RMu zBbnb"VgM0419h Q>kE =ˊGQlaH"yR{GYtj!^JKn b(+bZL< PHf}SyFMD'GW]oeSwz) ƅ6`7y~hGt4{Rwe`8ï. #j"+b x5o~9̒$l'ϛpZhDT6;82NAVƉ>ܫ%bAQΉefWM~w9+;!&T1݋9b^c.!F'c HlUs^mY?_BI7HbnY>>k<_1X2jP75!h&++LJX;\x9HQK[j@Pc/ZvgSї*A<|X̏|P7+6De6r!=5)KlwAf2-zt+?J|:/hSj0.Y{8ԃoϠPw 5+AǙ5S#g(Tu%̜܃`z] |sHi{!+E(aO{OpaaBa$|G vȣXEQ6c:7"c:EݱzK~:\<~+N~ j lZ)6<d)apץ"aB %?.VѼgS2rح5t+CnZU _JFU<_[0 C gxCyD{Qj)m\@I;ÞEތli(oʨuD͎8S )K+oߓtᚦ?G H*C%jܩ9ybdJ27, ǫ>/rAbfnJΈ"6weK+hZq."I=eU˘GcJNr/L0o8*9 +eѝ?Co$įoICUgs@+<9;[(K]Z8 "G^.s NrxF9cg&-z'foIN# ݩfN3tR(7X&xʟ115dwi9xKH]csp‰lw<'2eIs-_5sWp[EJSZ"aKyB˫GY9| dTg8fB$ i3yG?NkݞuB0kб6)mJgnwe]HL$Odc0t^0Q# ^:!w ao: "uGJPU&ȖC}D~Q2k'+J@2S/ϣSo,vNߺZT} ;(K1Kl6g9[Wlܑ3kRxds+{W:{Fn#_9\2rDp]_^]Kem7sY} A%}?#Tm Xl؇G]M a'۫6HVZoh0 E}vdSc"DC=ZQG&fi$ +V?1+c@ɺ.x'C!ϾQ. b7Kø@Aj~v`%\♧,қThûF_7k՘:=cL߮8躚1Bi"(һs>+}mD:6kDDX͞]/khQBx!cWLִ"fK+ʱxX]#d@7zϳfRc׏7!䡚3{9a4xc׺tUw fieo-YRX{o2MOO؊5`R45oV+/`enAf^K-*"HV^[P A r^!$L^ey`(ࠡ]Cɸdwu:CfOV8:x|e8+hԅc8hL!(;ԍT„!=*rNf(R/u&"?5^)LnurigOlg cy7cqxhˬMCPʿ]WP-iydxb"V65̊ChcL&8hqkK%>xEJ X?) ^[n$$ld83bz&}JU-qă&+- %k8ȃɱ>OzM]Pa:Y Bc9)3y@Q 8;z.[~ˊ/qB|u-H w}'?2ө㦇4d;Σfk2Aj 9 Sl<1Ϲ9"DWQڈƼJ3as.~%uAFt` TDdކ#wNt)8eB粉V 6 PYwTYq!9@1:{+| 4{E@P]5_Op88r!QYGiҒ#ғͺ6\ʲGJݤ@Z$^nxdp[CRȖdL]z=:2? % ,pi 3 KCYDdl?sK\J)Sc)gZVaY3RlmzyUhƯ1_2ȧn3~9-Y*}ޥK,_8(@F@$Md M$kIA4d M%Lqȩݒ g p}n,<#:tR݄e2kۄ(PP"%YX-j%8nʏaQ6ZK5)7I+Gߚ]aK M߭?G!^]k WYP;9zuwn*PL%2z<-=S_/M=i ;ܠ5%-k^  2ƥ:nT/,uոf=6BNCP=i}ӾSSNH?۩+:P @~,Ik;DZ6IpUB< i;-YԶs禱t]^Y_Iϕe7aLo*52Gk1^CI3W[wMȒ,K`MׁfcBGQ2qn %s4r[6:%m>@(*-@%K"ꮥ nl<|H(8OD4rw+hpQ5//Ղ/,wOu9&HR":띏L ̙$zt8HpL㛠Fܗ\+Ch$T6&^}$ޭq͸HqkH54\Y"T-+s|59|_ʱQm|VF%%IfͶ=&ObD뉪[cniȒ|ٝ:{aw3 J8p$aZZ!9+zpwMUr~.n0sj8\&dc볧߲OogNs96ׯeBUNOTF雋VXoI Wzgʍ\gMNlm}9qK œBHv7,+-OZ 5(ezs#ms ňi0X{PnΚm!;}gsg+foƢ {/jU7QRi qECR,6sTdOf1)}GC, jK@w/zT\-J VR~&YG5^qNu);g5%Yeg\W>o2'MZpD"0<&A`g4'poC:'q[s1LV@]?czFkFةJbr^^j8drBҟ; x pԕn1"(w'.򹡟dMct+ꉺTk 'H%=ٶQ+1Dt5eJ)\˄b`\"~OLԾ@`s_KB1P^cOkO:JO5MLHX(ԛn\>d#6TqR+G>afYi0FH+tOۯO˛cc5Dmb cZ.uXuKHz+Gߌ5 t{@YrTzȬiMY#Ypg:jrNN-^txVeG3Tei=;۽d:L?1x3;>WE^D1Ҩ{n' wzLMgbꚷ"zhl^W\"F/6/xv'<{9JiR'zz`%L8<ܵX_ RũߛK 1Jp=_)>cNʱ{u [n;B`<%㝥Q#Wzfƈ ^k@9ؠ6]go/e܆t=˂n/c*oۊD, '6۱˽t#a@/Er:j]6v>XV.oKXQQ ipkMs|ld(j;R*י?]G ?P :zΟ\ro8&/ˡ/Yą"mD*Rj+.vz}<*2+zb}'DPe |(Z."(zC8k82Q/ kun#hF9%Aør'QB9$)l6Z @alZJ [.xʄl"چS08#ڕT:qFAiPiŔᾞJ``I40 +# 3}`zG`^\0oq I ޕ Jk|I7Ψe w(/D: Pn9頤B^OO8[H(y-Q:(^JҲSx,$ΩR6j Ȳh|EߊzK;z@{ޣD=k .W;tRjNe*r)= 7ѪmX Si4TwŸ<+!Ggn0t-cw124Q42RDV=~5+ihG:k_36&ǫ i0ecOͺI|w<8e:A( r!̝/YXoNbH259*MϽTX?+u}P6ŘX [EJO@.g|,~#>{[̭',q)Z kJĬ>iӡ*,P #/>9nQEc=V:̙˛d,N 6]ZwDR8}_ I[ct6Fx|mQ-5th8բki\V a$Xj?1BA %4 yʍѭ ="Yӕe */cFl,%?Y1(R}*k~Y\ ?%h¡6F+ު~qdyT5LW @qd-t L,y@7֝kHK.?{i>X(Ԉ ? BSU_JLFyVKHgD[%6Mpt0@m.v.jƴ 8!QbFྕ/~WǠ]3 "*1KyՌ \ ]H挺k#04Ym<z}cm||Ż}8?}~cQ~ǙcHy4jNw97?NiЙ4$;kuE]ѵbj}g:WKUwk(_r?KѠiC6aM31tSR7S4> o2]$Zk=].k1Cj?B=\3=pJ#կܻKM1=ԻEa8^vd_᠀< F]=k|JjW PϷ"ٯosod w29ROIi#sO_!$/ruM oShr z5IN],xsZ Jb܏FhS 7_mG 5fGhOSmYO+y @YDACIbG%N8LS?C#,ZNb D wQ69I!QEeTIГYeghC YNv7yq\aNW,:% }N{3XdM`rvݍK֠yӊP?*tY.d WE~0s2<_z 2nPdV`b<=QU,dޠɳMhDW?.q٦PuYm2YX}# y+P')"Uoc@ Am҆_[K5ވU}/i}QcZcy#l Xi~<uLO^ʯhms݋вy1ڒ,GY<0H%?ݱZ`Bu|%&W^PU;R񁮇˶΁:,MЦ;/oŞN0yZaNxMnߡQ64~zq#ͱn+KM/GHz.:FwHV߶\:4K'qBv1bo\6*3OA^=,T]H9|zV|H3%4ɃaqM?gXE@D&M %?6Oo!"[yo똘 Vi*thGo^wnsT sWI–C!RIccgȢ#!b^)4Ǝ"׋UIJ?rn!dU4 o ?KwV6"VC]).:?6 E6#nm9IW\p1:͘9)|DKD|T>g:"w?=I5>RiTQq4Oh&<8xπmFQfCOp7D:KGHѬb} j kr{e*xC}r9cY6VRtĒp s{9,ܩluv{kg1>=F$CmW3.|[O@(Ʌ\w-6 ս'[:o1>b8%+N2<'C< -jVbHP0l8ym^BJ( \ovn0H$<#fNBx\+@# k;؎pT6O{U>v_w5V2*Fԅ.L,s H,'P(۔F#a 0J9$5ݡ1-#u?WF,f)F1P9^c}poI3=Hվ8 \Q+b5tsx~< t漒\HXfu ]_MnSQCϓ6Вkk"qa9ByDOl0 \B D8gI*$dn5{R%SZ'≃9t!OR/@"s6X?#iW^̰]8ln%Z ˈ ] B= b}rY3kܜZ&2}#Dc+ŦOZT:L :{ ;$ s/p6noM6j%xLJUOT3<7Tjr#6Ex?% Eʤd$}<> za@dj|[VOKԙ@!CC% H8"Z=;MxNL@"ѱ[1e;%_V@~ad'էo^^_d+QiC\w߼*ubk2>ϪEpt~S)fdU&Å9?1UhNm,J'D"8iW?KDҲ Dw?kZ "M(VXګxpek{1T3 f)jF7e<)z $gQF>NY1O>|hڔnʅq*;st[p!Bk`G&//mދ6yOr˹Ǧ>G:&/+x:#\QOB;+yRy (%'ڑ=ֿ-yB f0w6Y+sklM #2΁ɻa} :)fkf(C.4BlX{;R T ހWycD5NTyO/z |r 72)Pf\As2gQ+h$, ដHKNNseK!8u2*" =$209X?[TiyNbw6ֺlѴ̉U` %FO=Ս~^F_×DyމjxVAD:a;% Бk>n[ɗq/RP}(m4ޠs~f?s%@ӪM, %,\cpzs:0SMxpUSffjiD[SVMf1kw^*./+:JMm(9%@/wT?[j KX:T1 OMWG*c+cw-DkҜӧJ =iO\VMG['j6Oi]'ѾWzWUM,u $gy[떂`=e ]uׅ9ɸZ5riWC=)0knwV5y>0\)N^sǟ{*,^Ճ8:qPh)|L7/) 㭌_3FzkB'SNzuMs,% (iE[tjQ5lm᳗ea忛`Nr- i^j7^EYOQ]f{vT'bM=4{}ԣ]3K,p/Lٰmf1"`} EfU+5Lz;Ɠ|wQ_BHR5O(91rAQh^*R)h#}8|;ŨNj.(edTX$ε8w@r#lGW0:3W%L),tĊ-+2P& sUq个&>6{yh*m5߬3[W9m?j@Cҧv7}y6ђNf`L5hA9gጽPy J-N*pѓV:/U < i4f8LNe${}F t!d 3Q},eLas\&8mZ4hcIl 7Rg?49م?n֋p|-Yi_Z4A'I8BK3=?RNMAN {ܸwNІPQex虫EUAGٓS2ln[Pi(˼-̷f\7?˔/o\! `pJb֤pXKey^%Knw$-ձH.8%XN}urlmbн9hv6K5ґ׆,Y},TFSK@@[.׋6$xiVZ6\Yŀ3"Xp3DhH4CWg~鎪`͹Q=n+Ntv>IDgC+l!g[IcϹ<!" fWqe+[KV8F369#&JR2%ʕ{H'ZVl(z7#Mc)%zNhW`~3S`&y Yd/Q*dv zk kS#Ӛ2oz7YJןRg}^..1U>GEB<0M^rY`g<<:TΫ:q ˻bMQI5׃XxQpw/SX4+cr3;NIge+\'"V;5w9i ;M=eF뇚#zuzJY'b{M?$I搵ti?4ovD7:H[]fMKKeaiGr4F+\J-]yhLnh(\}V'E7Cl#DAh7}]kہ6 pl&KFNd!_};1V<^"W qF#]v'@̉@f,n +,o0|(7@nyyTqR*dt&ibs\"r׵0ɷYbdQw oiZ=c:*9KŨQjR$~lg6)Cu+׳=ee@#C)uv'KǕ-j_ڣנhYJ$55Ջ6j_JVD\S2)Y6 ~Dfr3 rkSi52g =/e{iYXɢ^Gc;DB.f2nK1LSZKY8{Ыi_ԃXe`"^1Y9 jř(T2VO1;J`;Tnl:,=f >S<*7!P7}b%aze=a1aQo|C1DWپ=9~Eȷ, 㫐L6,JyKX9ʄ`KhDki 3AYȨELmd༆AB@a4$R2Qrn,t+Wt󿢢5e8񎞋1X5KJ·H:~?b 5m:;ݺQIHhz >с`|>ʣ궨;Hiþk_tŸ5beRAKoX4S6f8g=N7Pv|\M9P0OJx}Rp5`#Cf<'!ۆ-eCb}M0/IQD$%=L kdVRPBbп.5[jP/e Y?+(8Սf,NM~Qgz%~=u]%l9yT%BŘ6N ]ulA}j_?7B2KٚU&/ P%}!jm-5T;o׏v:*˰`X?ma~zZBEPy #R?e{\eX $A^بDT<N/ )T=(7E*$c'Xkቼ Ž^ibk=EF6S, E#y!Vϣ 9b\7+.gꃿ;1=a'1zc.ߪeՌzjj8e*89;૶lRQQX$.d#B U\a7n9.iM~Ƶ|tGm,i yPA_8̀9kؿX~|c)Xl:d}ݙdd$0mnz{ԑ=EY2رŝIBBɹ&<W4951%i1"Rs4b8h!H>m/tzl1{~@;& zƥoT.T_e2[uh%j P~[E(˙4aBh%z FP  @1\~1u l!kCKf6>꿌͆.SE&샿> @}!9TdH8żuaX2EQ$5V(G2("t@|^XeX -]h`XT)^ȿ+/vv(dCr+T\rwy E,6(,M#i352N:CL*Ŀ <t=_ffNR6k(u7EJf>FANNFav} 7Hj#JRA,Caz|i:K%谦S׀IotI S=ih=Smw:sp>f6 6*ȸJ}Bd O/;%^>GP^.Ȁ+6f2A%ݚvNqJz:9$m\t_Pp#KJrPݞc܍{q4/ԑ# '$6]\iT|톃p`hNGO3Ձ]ƹY|!Pv93z=s+ ~lƂkYk+eeo0E3iiwg;Ksc(' Y_{CLəsz竄 :9*7>o?Wyo -zG\׭u)??Orc 4([jO4o]9l)xRw*˅Y8_GLre*3Mؼ>m}cd dC:1 r+ðr]ݤ(~R4Wڛ6ikD3:Egs8G٩ ',K)Kzdc(Qng*a²5Tu.\Y@踲Duel3m!S?ٯW(Sխ'^[x+XlK7UXSa\Wʮc%Ul"|p[L-!RKsg; ҹmLܣ 5 HUII7_)Č7W!+TΠ150i_*M]sSUֹyO|CqO}п5ߊ苒b̂mf {6l]{-Ze}Ё50@ ;4x_ďrx0gR [G !EzueT ]\~Nf"p~h˧CA R|aWAj0@n XvPDA!鏠C-GGF~Ѱ,o W;rв?ûBӛ#~m 0i{>. B8 WoT%ǹl6*0?F$eZ8ms_9(98)[×DD|oe;XSǡƊirM<'X쮺=at5a`kL6ml- U!x6ӸO%/iѻbnR]mM֦6cxZE^;׳ :iZxvsU;#H4f5%oGLz+uړ``L;7F=ڔaIn~L8DYop1<)+F~# \8 0ku+)Np85ۥ?=J2C>3ݙ4 r3p,chn3?oCjWW2\+K 罱R5|بeAjxq0w1[lA>_0Ӫ1N$L&4yF]46>٧I;Gz/)gY إZ4C3.ũOG(d5 T.ijAz\] 4kuK T)OpLN%SYk.㰤sn%6cSL`?s?€G =E]ֈx_IM]Wms<1MbhWVNVå"~leTђ 9Bs j {sNT42WC!׽WZVciZXA8!(uZd)v!-8|T6NI^?WiKK܇B<=!Ɖ-~YSiY%A@By@_Tr(2H9,U_Kg.V-tͼMksa> 9/IVw p?;hjLg ,Sݏ%4 Ѱ[ѷۢENVpK`By~Z̥^(\ĀnƑ?iQky#3 ?M|[=#?}m*׭/{#xV]0Y%{"};8bfB5oU*n{DQUpPPAj9pE-oE>¶V@Et,[slCџ0b` jѰچ&jB@c =bFUK GA|Ln =KX3#EYx}AM!x]=W_=h8L/w+*7h9,ɏ6hIT1|iU/ԧk֔4Guk6.zM…,Abhe=_ vaG1Zݗ3tUVQrZu! Hz$:C'?-ۗ,,i Aΰ&&rxd|E ՖzUr@t|ͷת"4K=(IUh>G7B)u:ڰ7hRl0j~&L-tC߆ٞ-SM4x 4ffI> 9d{2'u./5f_J,o&(J RAs[TCUɇĆ(BZڂ }YJddQ^(շ*HuPL(aZShP%I׮ h+C ` //#?t.ClIɼGUz)8j{{ڐJ4{fo~'au f2{Bo%Cb_mOPH-/?lS c˨P%;>9IL0S`An,j.W\g1:ױ &`b,Jr>lO'NQMoSdd4go0HЖ}0CHUg0 mgPrL~ZRnu* DFV@@gy:^=uW4jK:ۢ]~X!z!6Q/psVɀ&?v6:|uO-mPmo BORWIQѱ텟OvT!ΐg+!T)!/+j<5k!}ɟ2򯛱*-|!F;T~s i|H#x7u iwjëAaNalC*A9 )*.v>نu+VIp0aZR qVt7Ή6A+%ZIKHi"I*_ %ڮ계#n9@4+*RMƐ[>Ҿ;Hp$EHu&,6 br%s9`\}Ǭ$G/QjAgw8%S g-+z~ goa'^ ` .kK?Wi9rx qBIdtך&D} f5f8&Hu@l4<(*- jh_2?<%-iE%bHj:V; 'Ye]w~qbQĎ?b SoS+d PodQNB(XkcmSzgQe<(Ƈsb+4rǘDx iV5~!TYtBvA2Hm 5]uw*,_u0Bf7, B?Ruj%?(P]r$G KQ ( 7ISYru4|i9/YܘQ0K c_fz4ә$[kܳDċӶlOS5(FU80b\iKI!`~/(bpz0EsQ~ɫ"}s默jP_S(mޒJ}ɿ&(*rPB V ObDh0\ Yq/n{3IBC [x #u0/;it md+=e1DP!y wS] |nVgm<ָO}ʃꕅ4ǵb88]}5>}tF=@1źwg,C pb[XD] 9v/Q,8cP;ƲHp$M7x[i'fX'DgMbs+kՏ! 2 Nad1g ;0}Gp[&NHE)MTϰ'U&ՒePcE^/ƕutAq ںRջjrU)|Sfh̓OVh:Kٕ ~[ f#}'Z:)fA:.oYu1?394}Q*~O`75X\m]R=:(S.ߊ1_t'Ϩ,3=+CO4qD};Vu{)Mb!4Q|mX*kc뉖 ze 0w~ ȇ‹ǽTЙ6:/ uԡzfޥɒbxŗ̣s:G_$LGK\5_㾷S;$߃ H+fX)|ݟ#5bnJ5+=qhu_<,2 3Qfp jLfl&'6he,.2֘!ea`wL[v:؆+DZzЛyw0 Ph5 ]ںyBx]h* (w<~F ~~*JQ8yؔRS18ABD[1^7R}*fVS[0Ĺ3UQ96e]Y HpY hު4xYqIc:ts+[F'$?@w4}f+z1(51O\KtaUàu^ 8JP&Mc<ߙ>~;O :.&b ³j'3D\غ3Wnxk Ci!QzuGOZ"Q!i!ogA]5C۷S> أ!9Q&}=" i)>E1u&W? E>IH=5XKFXZEhi>wVSaLW)&L5߸> vN ]q% ,ʁ&bc: &:x~+}:y7Ȇ MOoO<,eQ1H| /y.%S12zInzQw#ΤSyӼՅ8B$%w\{STyDeK3Y+yصb]X& Ȑ+,&րӨEX#L@_Y,o4s ܵcp j)hLhSz-zu,Rp|hޏ]I(1Mک,;iUTkGׇȘ8YU,륀DzIx9\Xu|"G ({C0~K 48B 3+@s6@$-j]5)WQy7H086d=P [2fBUx ` P~*? S&Ёk)4Pa=~[+?"NJIj]A2ӂBM<߈ y b/`#ƶ<~`jS".U`Fp("[>S'#IW)Ð|C[Uh_$>~wEFūs>TI)jrذR{C/LW L&) MP= l/~kV7LR1`ْ̟g~ Ŀ^Z*TY eFé"{͡zM쿩=3FOǗ䔰*Sl?(KLJ~7-Tp?"1t gߝ=-RXƧ }p&TFQĻx IsxUDvN08NIbe)lߨQ|pf:}R*+zlԣsp.Fir>b99]g{*zlqӹ# ?hp﵌(ёsPE&ٟ>)HL o9;Pa8yBBUn-zBYYё=ϋ .3tWz[XYdcq/UDc3p}Uh7ljԉf]ѼjV:; 5qzp߳Zi!$bփn(ixԆlvG_qDՎK-ύqg<[)ss SNk DHb84`1{ޙPƏbýQ=T#Q{)6=ztvQV>,yZ#,u|[qQ MH^;e|gȍtgH8J ![^J^ؚЂH *'՝C:K*s0L@> M-:#h=Ytڅʪ2%3Ҙ˿ >O23ٝrm& Oc%De /#BsHx ~ s2:>b>fXi+4\݅?(l$7uH/.t:ک@Ʉ ;K p.ۚ`qca7>vVBl[P3W2`(n)e̬fs.4pJgleQi?7NB?FR/;T hRsuF&nȂ"J[ѼWʺ3_{X xUn=ݥL@F1dhEZxk_=iV74^F >tR cF(r 2*IZ4}52}B3d9D%ma%A^B4)lƃT V9,'pG~C1n;~@.|Y?Uܦ6hi:*GM ~7`TLg¼~r> ixy Y>ӷ«$KiWbh Q`A+[Z$ 5'^5Q ba뮼:"%i6Hm{t-D'ݐWvY$dT "Uzt; L hPpezS6M2p2 xVu6Ɖ/L=DrNppcn Je8TyԑJ-"Uq&S2IWOM]~mnzkiz L]WǢ9Ym)ݧn>ux$Dob/i~ݛ3#x;UY I&p_|'fAV5!?jBQq:;@'۟Kܮ&*Cï|h@[>|}AF2eH\+H9[o 9O#v$ )yu4JM~eEIf=Nl(kUN.;tNG1:K{:̣v!V<*Shq &/:Ĥq6pNN`+H_DG pGltM|^EOy8*ؙpLvL"ػĵo@ys)AG4+<)QnJ^taJ:P!7= ɖهިZ|'* \ 6 ~8moPćj&"dpx,@Jl(ZWh('\i57KVl$:#(BISuLъe^LaP.IJs=paSKºQW]?͊cKJ `wse@@+DM=TBDЎ}F}#4( PgrXs}TV5+{`;F! hm/ՔʷJe=3y6Z7};qc!s~pcKPRI5& e-.8.[ (Gn4-2LȹM`i![DBKimH^b<;P*v9n+lMy>SםIFBLpZ#2r ۂcAAC yF \pla{hpuWU o@R[<6TK}"Id= i" T0QFzeJWzpc -yF us[ R8} r\[I{!)\]SQe?yHktշb ZG9!L`sq9N᮳eיyajmHܪLQU0+3fA(:Hb0HI1# T+("nAuZ%#% vq(]; yI>>brÅi>I!6[z:{C+t 3cB$~T@~<(m?bOrn/V%N UOo.Ee@f,[FXJI9^лŭR7{SҟO*.ᣰ;#컸"Aw^&3&>$iA Z`'pΉlZZ!F, ;!܁|. M/}WHLA*ڲyQ*nwO$!2t3F3.ŢɢγB^ q0WoJ8>CQ8#'Zy իE0Nh" yɂ~Y553qU!Ě)ݕ.h}`'dy0 aVe3689 QX ԡDW% iLkicRc.+atzsPN|(?jB3&eA;Onxd-68uu"k{ΡX+EYԍkd# L8Mb? ~cDA竪(x otܨA]qM]Je"w1SQtݘrf<,R72= ܞuT'#K-H X]+W>k\)@t 2'^y!m)jueq}&"lQ< /皞f u8?'̕ZP߉Ew͆'j򘮾sz/g k~c8KhK3^nTu޵{:.pB7 ?=ggY?-Tʯ(emJT#]]i_5.BD9a|0|Cs=NQԜ:o)*lLdJ£W?@,HSFuR%GXe ՕG/2hcta#pe?Kz-_irɬwi\w<)$*_Ue'0 ޺^y>U!(~q3LKC%| Enj:n@ٵx@ 꿫 yJt Wg\pŒMn)@U) t$Qr/>f ݒ4w>DPu/b!Ŧ km{%H+.$,%4OjPx-5? d,ZWVT5vƽm\ڙOB{dLoIR7{ c 5"SRG8]`%Bh#Mj O/FBԷ PedVs9pv6뢛ٱPM!ͥ󔜊tBmU@3K$р+BgYڥl'Y^.L%[r;Z>?@iU{0ՙБ=NAh# ^F-rOĨt*ALۗDPO^Ayߠqgg"._GxQܚHz+NgscZ*/jǔ:BU$'')@A3p]<.8u0=֎c#tI7~f@ڢ*۹Bh|b/4gD 05/<,F )YC6Eތ)譴q"40[)N5~:eO;A}6hJ$n/n,p,ڕJE s9/FF'A弍iqD|f˫<$j&`Zir A BjzM?FxI}0.۩njR;o9G>С*@ K0]UF'N㢫:\v"Dt1N`~H]盓8XU0ӱ!~ p9˶?*vRn 0va)~k$b6XS ),!sƼ4S8Däź^g(K+4Y!A_*QJ *2vWh^Z Yw~< 1{Ω~gὝ0 ^bպjR Y0{9ӱT-|G1G 3Vo~G7A*'d<ڗ:#Hwʼ(TڠwV;rd<gPpPcى)"@kD#> t0ibmNj[f#osUojY$w[˯[ӊW7I@t:-ΩUF< 3h|%%c_Y zg3!.' "`x.J[Lr^ۚ_\LQk1J eV@] Not\H༯/i8pm67ɼ#ġxZR nRzXc!^O_yd=B˦;94{S}$ #7]/Ą)&Nˣg2{)z"W~%.Ͱ64<4R'Hye?ϕz:sŭg5E6I-3%G˕: pv(HR媇Xu㨶 Zlߏ1ꂡ` 3"SWܴ7k!0yR3Rth]M~g2߫)JQVC;Ko 0"< ʁWxȩ"r@9bAkTQh .7pLݡ]+Ti\Zj[,` _I ҐZV`]Ϲ91Qǻ ,eljE]VyWW3b8 v}/o:hxzԈP(pZWABP>wG"\RVn<=5⴦#y>䈸VW6r˨֢ClCx_ .:KkDULB_cNks@bOe 5@z!:q+B%kHKN5AA쯾wkx-NG P*/FGxLXE0.\Y3<}H`>Y->UXK G 4|3s]KMw,j"x8KzNUTMR.WVOdpo2noUNxE8=CvB9s̥9=y/'J3!Oն<ʷxsT~fҍ.Mډq⢤n}rdg``]}%­fm|a/ҿmqXm+ 5ULTp4Vv9c,IY$>uWz:gYG_E<' "7iM;ٔ~%r/CҰV.4+<c}f5K;5-ܜB&|Sc=v#Z8 :7qG0 mMԀ0CaҀZl /8eB lxKKLQ4*ƒ.e+ Dt!\R ~tbb#)M kbr@cbزBPX )%j;N]K9;-+n='d!en/nSLM0jWMqŲE %.8u]šτ ?q`Cn ?:`~qQbH'4/#];b'J?#U:ŕ6֒G7r+^W9klly+` sL9Ӭ0k\rKEKY"a{\LGP{읍/1-nUV嫮Ȱ!kc2Pb1]XE G3銜(ù# k@`Cր()PMq Qp3AY#OgE0J6}X)}3lĝl\#G{v90CfbH/zMO*Y&Ó:ŘSIiZ>>!<5+?&>9of%X'[x}HAɻXaKPlIsH83*0ycgKfݺI"|h7̢sSԂJPќVQoxΥA"$6QRU–]nGiI%{(S~u= נIN} ܇@E'ff|gC:3+ z)/⯯o!}m|#MS6``%DZ7ťke{k/ sH|S"h0ɠ!uxQ3M ! Q* OUWL#u<4_$mXӐl#Q:^ǁ J:Ѯc2\C(#آ1|m/w /"F0^gɌvxCуb1XLz~!]\D<ˀY0HƇ7 ¨wrgwX{^\(QNK ?PWS*P@,M;8k9 Mۤ\# 'P莀3˟kRd 鐫;s\ҌdOulHMH 3R4<"P A@[I f•8kWjȃe|@R!nL#+O)?"S( PǍWuLq+F{ma}2ۄ>EՏXנbmThnx/^ 8ßn`2&kצ-R܏N'H5kR,eKQYR ¿9pNՊpsdE^y{tO d2h]PA7cbKL3/ )/nrߪgZQsC.髖i qJב- HdƇ>xs!Ͻ}DzLi-Rfӯkd(μkxp_ccP"@%=6eEG㡌1lD'f}=gG9]tq{O՛p~ߡKek7lyːJa|K@Np;Le2QfBE^ s-!4騒Zw7Uk݌`<1)u(Fndqi\XB+έCQ,îl%9*oꢨYph7'pzgcKCf|E(nC U(uޛ40A:\YbA[Z.XXhDD" nǶg⚄ {%bn=/q-tHt6f ,C cz ! &F\3ӕ>l ޴ww2IJ#v:mCM!akĩ@p@~oaXH+W\ π?Єgِ^`]~n'j1Ne eafEM-i*x*?ڎ{+.ڪd$%*j6y=M>W'a!=͕'mv?erڑAg+HLh;}[e{~|!"WVq<t} JiI9jyf&Vhi]8x,/KÞ9r|Hdρ+dtl=}Wc!k ՠ2,4^Idf-4A,ehC(HOuuU u)wm:̖.M0\Cw Q~h9.-١[e F#,GՁ@?d,܀/º觟N;Y;9#W`V3ۥ# {4i p5 ogϵ3vZ-NM+&:aA -5iuV-MFmi{iPE>4SMd^*}S|yO`BV.s|b 'x}1rW{5W<Ӧ47\]*GGUp4 YYl8O$$,]gEm$TG?y)=0tg -GG [t]~N=tk#V% sV!RbjCj],X{ӡYג4t:iP%FGTPZ[](i-.7$kyUNfآdQ"Bh@]Eo"qIF 1PH QZ\72 pF.9~"ec]l'kQ֭|jR=wԗbcϸB)PsKCn?иXx}%(U>4%♂v>$E O.w~2:hh%]59-~B\/_% |Vb^ AO/Q;d S\E V#`vjiQ;{,J9kؚAϓpoQ7A_R%Qώ-0Uŋ<pnNӥ]vK:vCs4!$yv3.w 0F6x鹘:A_ZxܡxrBmkDPdvYTf|+$)h5 Fh}TĽz^؍Gň~<K񜺐?7Xlj 3?'k;tCv!P䖐c8WZq U*jz;7R8ᶍ@0E@$.\DnԠDe"J@;1Qik ӌ\ gLrH{D)\ 5AWw -Zz]N1B|Nȱ5dNqA˭bh6EX(&9> /Ca6o͚$&yjWo$=Vw+R p?_sFN3,l[P?*c NV61<\XyNC?5 (xCɟK).k^䉍`Pr0jG{xIqΑs\3jy9p[F( //Je$z{\[Wz@^^SlĢ#WsK)q't4Yc?qq.a|7F4MX]Is +f8:M}]M3vt)"%wӗT-! n2NP 6\l9l~j76TYCHI n#%L'{T6S;U`^5ȉRF೒εCLq`^(}+slj/ U$Cpɘs8ㇼms"_ޒM'_*HijŒq>Bvxq%+wSq6N{fK m"-?p<47$5]=1U`vAb k?3vVZF ?h`Fs(8l ax2[(z8/7k?^ \nE!@A{%!_PI` !E-f聰%sȘ>\rӐ\1:JU#!B+,eVte)c4S/|)pNn`HE22̞ߛ0aiCWv?xzI .2n2}?bѪ+L!Ujh|5n2{WDQ43ͶTGke|vk^NU{C'h 2%ȴqɡy՟+XK0knOV\:7g<ͫ[t&" YjRN ^K?sehG by=ԭ;F] S7>g9q\+<6aeW<-th HTG$H`0}GcaV9 +O]o~ lο[# UG? Βv3"ӀvЊv˹ط}gD[ră2!?'g/k ~ç $k6vfH%|bv&wG dS%gEf;ۂ$t-W7lH%`k3YE|]N" !rA t_~e:#ku %t[!f1ܴD vW=`Ⲱ (4Xޖ c{$6z'cC2?>9_zh`/|%X>L p ΄adrݎA\D]MvB;= ی_V`uEC4z >9CvqhJ8V` RQ()PSyz}d_\*rҠ6KO4b!Arv5؝)n)yvRUCvo+n©eIiˑE^XԀ\df>z^{^j ETT1~!zA!8o|3AKG!Yuw~:N~]A\hZ-:Yg԰:b2vOBiLk@,`^?I8IJE&~[JrEcw[cd4 (yy-us=ڀYX1AHs{-!'2m6SC4HE|'*|i."W9MeEd1pzc( +>dK?Rys0BC[!%J`?S%¼R|&~z&b#M2}"W+8b0PMsu p'k..eyd*A* (v!_H62۩~E2NާVߴ|mћjEa][ZuJ׶H< &RStڿXmf1 HӒ`TR/6 ak&?zc*7_ FHC[{AuݽBrɑv^Zt'MyK:O Dk00S ,K0е/_ff5eggsvձ\X[~uVغ^r&mLs.`VW(_,"\ۧ:05Fߦ j&-mV,{%,md6@vH7Sl<>#]y+pX, ̡C(sB?KS`P'/I%؊@: "zd˴l%\BtG0(kkC-j?Mjj,$*UI2 ( G?'e" o=HI܃3ߚPxZ}U]w-—޳UvZ]^mecgmre`QYT սB-KY]REq64aLX Q=@Z"ގo_:sXC{oב3OghEDęlC tdJl)&np@gijUT~\WownhȘ˻ .}pi1Y,+~|kM`Y""nVzȓEpo4VۍWU:w:‚(G&W&(6s~~SF)}BzH(`?#ZhuC &~: o'"U0ݐ-yk3ZBy|.MHCd c=gRA5G9ۃ(iә2q>j3w=ҧ8Y݂<>$vvFu vo駈Vg^\o_J^4بW E8FxhcAO0S+^4C ?/ Z3\_20D>gP5 -WNaFGrDn0AdIWocu UX>DL3ft7rpo6'l,<, u~=xĥ=‰OiH2x: 4")xGwYe$;[P|Kx$d,60D:uF-8"bX*õ1u}gd()W|@}-oYh"sd s1]^i gu;Sڪ5i҄vBvBZ7ToD~Cr Ib .65:> T,W Sβr{'ѭc Ϸ8v9 Y&0"EUl#`UA9jYSFJYZ +.Knn6C^ѳRd0a66,nIQsLxX덥n8 ,t&*nrFΙcqo!l>\Dԗ!0 z׿,7|caA_AkHpeA'l4lTՔy*bIA7}UTґ5<9iOim(4GTƺm;";i ''3"㱣<{Xhix BDDӾw.FnH,2>@np|8Ut[zy[_)(֗dzwk~rwJyfATrOuVqiA R[Nn=)%{!fpʀ!G"t #٢/IJI,RlepRN ezĸɹ K3 DH/Qv֘[cٝDkG-hRiK y`JpOCjYX 'hCz+P*7l ]z9qbףpyrU-?>Tpa2oz U6?E/a؏ CmImf{B]֦&-$}q:Rѯe#mm7mO@d}s\˳3 9moe֒K;xˊN2$!([̞]ºs{x_A6 rV օecjgEޟ r ->36آeQLMo+#&\92Ap|[Z=%7ɒ!LiM:#c6FV0Îu=8?ۿ"U]M"P8rwc> Ia k(g>yH*)>)nq5auY+כ:"!֤Qֆա &rG7M`0/VM?g}lT&u'Q4 )3H;<5dRŢd7zT\4/T&?*h{8l`@$jQyt1%hhU=~N _ /$ԓX<˯`z %9Sq:P}F(5%Ҫ#a, @/){Fą&7)DM ku%˔f?tzEkҶuW[0}FQ!VyZaCE;#ئrx~ HdA+RL=Sݗ|V kFdJ0gYJ|Y9_$-i])e{NK$~$v`챪^byl5nVR(NxWILf !g`jRv1߷~o=KYTg؜I@ChFgHȒSx0@IV74g~c|, f`譵po׮WA=F*j Ov$twgftt"dOOL{IIі/" X³=0[ "D1fxLzn/ic?%K"iݗJ~V.N_CcE঵tjun'wcB U MIO$ߴ/Yc+&qH@O6Be7Bn q-4iΟ6C5UjFD!>[v\ q%Dr,Q_,"/Mir&P]HK) 8s`ltU\y젭I`YCuL,!tSbpY/5v.t91ixޜlG.<'s罭GnX>Keý{_]JN['NfTrom %ݩAkYXd'{k/9&e\}AlLu飿)X8TBRb: )nr%kkѯϦz+{՜ u҄U'?dͨn֕O ?zߞIƞ7Hb |G !&57<+^')iU6/# 6br3]ۅf ~e#@Ѯ+ޥ8I@ \*8 o1: P'i"#'FGnzfTudq\|H@ym -H'a.xuf]R5]5Pbc?[0"B"yI' K2 0+zh?69 3(m(TJ|Y,i5אT,%!b#sױa"{/6_}_I<(rEJ~\C4 5+NJŏxaز!ܶqV0¢1DL\UF}E^v:A!:;h[>wWOQk]zdn5Eˮ=S!vʏV?SZjQq:cYxeJ,t\wjΗM_R'X!]*wl1̮йd* ?%%C ~@JNh +ͭT:2%(P /^9^Z٪k vq`gv7?2-݌ރ  :HL `訐LI狼1|xݼ Po;/^ >g;_!zF*/^ W,}g"ͱ& f,ҍ\ThD`u5[JnO>Jy2,o#Z_,&L.Lՙ`ŕ@:%W*F^ {9Ƒr@{]3պQHA_]!}%:HYt x]>nO {ES$m腆c~T۵yV]Wj 63yve8}}Ro$aQ2alN]mfzG2Tdx+vlNx*i=-m_o[L#B}#f!"&1M&9+`ב9v` QdUܰ/(\N/6ldab4YHk/Da7 G9ӫ)Y0j \?&W սs)_9K[HN~/VfQ:K_\Bs ㎇^(b)]VFvMZyhyto~f5,F$RKl's ~QydE=j3?DuWa۾ 1#^-?l?muZ`^h*s*9NCL1qU~gq_(ȭ>&P­E1Exle^%G3@A27Sm_ R cbѻsk2]}$Ws5{ ~~>)ǝe{jП6{ЪҶ[#`iR\5 HhլCӂ?pxky^J1đ 9 jy.vD\Bje7!b zXOj:w<Mn5ͩ!=QpYTpT!*Ckɬ^G!py @SqTHxlKLDK* =V] vnb_oV^f@ꫬ^0&`t&4!ܰxvч\j5X9osetD8 |d۱<C#lRm6ٙ/Gp†|QSKUp9 &ȋg9A.\o lpe/!49 n`E:7ʍ<(}9>Ԙ=*+o*3S hC; V@t?Uf7k`z;!|G:QaLw\ْT%H6:k=#@~ J5i(=M{npwk<LRZ~Og^4y:Paf(vVs*'HEvBmWsik]sV^sm0 NyG1?3>vo|:ԥ+dN{ي39zա?@I5 eBQX>6 ƽvA˗0Cf3. 7F^kp糊Ssd# .)cH0_ :~Y$ ]4k[&?𽿝#țs,_;TA m]AM(/>kfp*x|`]%N+;2,^ZM{с85x?]Zr)irǗ ?SG(|Pjݡ9Ec$&`q p [1\ c't _:);DT0DVʤIyIСiWɑ kf(>X4jKa-ͧm*]O~P7"p|E"OUJY]q cbZ3;`8BxW7Ai29ZIP^B"BD#b台GWgH'GeAlmrxz:oFi46buHwʫ;rD |\ l>ؖ % eGgIfnyCO#qʹ :YMW%05+k/|S$OC/vDOEx0'yN(JTmV 5TM2y'hYEwIqkF1sc_j$ C G5xLƱf%x͝w=X] H鞚Uت6NQraLx}4Fߥ򳬫5Qq*?tj AHh S6*ߏP y,Ș~~YwR]fBqХ<)u -o:\/hnbpb> Zƃ8~*$0i'd]V+<P20Վ 9}cZe46'HU52_AD/2LL[fd{()ǀjY}OZ=N1mKฐ7UD"<Ű>U/38eɌ` B»6*0o{!̫UeI퓫:]b&@ں6!L)>jp#Ү'2I'^lKX/DAƟ.5eͣ﷏'[/,Wd/ JtK>hǛ'El؞Rl3_谯SU:=Gu{F]46mqT>8U=}sl@gPTJq Vo~szQ,N=R `h2eY SF4 [ɿ-.t" oF=[jNtV1(^ǜ:ˉ#}@7$itfw1tLbFPc¿46G5krV@E NH< |D|-7ǞIT;2R-ǂ y jęy+]k A/~88hfFt 6+YW!goozPm #Q!^AJ &0cmc21@C{.L oʮϾRz՛^9BVu=s0AV=4}rBzȥBMe;7or+qbp/ݱel=42i%^&;aBtnTͳͳ۽@hcXa5FwXD,+ PݷGf [bGWY/*(H&WNxj[0;#B?k{4p$  IY; _uˍD:N@*"9o*G@`jN,.L{Ӗzr^vMLIvqo+mLf_J5W@CШl)XNq x 7e;5Ր'ni~1 E8V- N`fy T>m3 ,5MwC&oCS: ox/Aamz2:e!L',,˝š&䥯fH7nre( >J{(̘k?|蕡PlS#vw5RxXB`E3e]VBy%&uKR/Ciq\GZkITy%s9^G+.D W\#Ol[Kuq"=@_V|Kdi>ׯ(A1-#v U ԹgD-qB[ K"{F#+vΑ4 ,J̗ф-%iZb}ހ24 =lfl{ oj ̀AWcT셚n$UYfXx;8l`f( FvۯrTP^U(f2 txf QjGq(5Aw~ .#8lDG0 y;jmYʂU"Ȏ!#NpsF$G4vNrDW?:ܪ@z8EI|nLHۮeZ6GIﷸz\+DJ¶伻0ZO98wH j>{،<1p!R 8G-q1 k"52]%EgY–ld5:?^l6\rp_4I|HY6-:ѷF.ްisj^YOsdu8Rur-oܕ9WʄS ~ n{] )>"5ܝr^Q0&[jl` 5㫚6ĭD .*S2B ilEv4Ú}N&ph^5 e'`'oZ^n%Z#m$ۚKۻwIxBT_tS1 -# !:Sur,3y6f4ݵהaD`-D7>,a+$}|wm(ن7 k-f"D]̚v|r:+"sY;sIv6RcZ P+_opunm?JǐHtjܨ]Up̉Hk3))9; "vY^uwiZᤜEp%5=͚J=ԟN5ir# ``lsl1Da/ja…J.mXkgMvQ뺯e׏/l̎cwb0Ju¡fV, 5;[݊O M^",w-ׄ׾G=u!N t+ex}ܓ )aqM- Qs"n4mk'H`iq_1#* P!'NPbjn%V7{"zY'.35!(yuIuk!_ՙX6A?L*!UUc \yE{Ր g{p%/ښwy}n''Cܒ*AaU〢:S@(,B<۟0x>oc3^Oܸ?4PqT~.|!Qq>d_RC@Vl@ РkHM?K$fBQb:UY1u%.k0^D:,;-?TrZqӜ_ݮO! `yD՝NҠү&\[$pR{ٵ=ی?9+,# ~ 3RC1{O5@Țj1,_ɂs|> J?3 UA<}Ed9w/J<; $sa^nG7J3w2鵗gvQD֯f٠`!X!P4fp:hfiiGoV =!*<6B T#ST2u{ 'a%sD?6lft[EEihcC1 &ѿhj1 *w^[ '{Ϳ'>1GQS-@AC z`N`Πy~ }JiU- $^gHw-Ē T QXS֨g{d ̊;NZH"~"vc~8R%B?\}&h9sݪLʹíVA t;hG:D!{8Ҡ2*/Tq }. AeFzZ}P `)){ oU)WSt#aB64Q._}qkQ+ _(Sv(%9oCaQkp'R$~r'ٟp,,QAGok b2T5}&(yQs 'a~ǪDƉggerrPʧDsQZ %HYSVG0n>zQbcM|QʠRjN(ݶt V" n+JתޛB*e1,{XS|lNqy;(V6QJe Jߘ(kJ9/f;,iaΌ7X,馊q:)SV\4>YE-JӐ;@Oqbx8v>7zFWVkw/;UiLմ)LKwW"]+D~ dA-0]\wy^ 8<;4ee+xOTZ??xnmzj(t~ dL {a<𙝡зK Qu ^Qf->FoI,'a\:@s@)Rs!v2{İ)> Ro^W뀚N{4Tx% #5 ]wʷeF^gW>$M<׸Hx:% `0FB0,(-XGj)B&!Ht8[̔ 9O"LcXAFv웎"$rgXa崠,FN^K2㌓`dT;2].%k<$ۂ(./iI]iv J4o'}zGY_ZSB2Cxgi?c̬ Ӭ|YsoXz}Jwmx/* {&JǮ+ML^ýű<=`m7JFkT~4AQUk /Q q/.eo%ԾpoYpIڅMb{ -&<0R$$(=b q' 2{&$_8=ay.Fva#85Gw6 ZtcF<"Եy4#~0!:E,o}\^҅Oi}RE#W/A"z\F!&[֯T]h'U?[}䮒Bij)щ|xP٠!U@$Ȼ,kBqJE|[DOE:LJ)o`|G *pDcb+bLW0lZy=e25SR…M O4,;sg{G;/5fZ3 k5X>Znnш^X_K\`tꐲ֭_t8 CHbjj@CU<$𻧋7 D2<9?EZH. !-QP;1IK r 2W\p96vpDׇKlyGgdDW8{oT"H\nCt5#̱"iq%\EIRo5sJHC|¹j¼9UH߸q5ɰ'?0Q I*5qu3drc0h=4Yw>FxlpQYQŷ-,_dž*bf0u2eyHWLJHL8A 1)t A8g*L\s0*ήRh> vB╗5-Ӡ8A!0jȊai_)9N ~TLtA2C0[ݕoac릠T ! 5/y!|̮NyH̆:?[ V+ᢝwi71@w .M3O0ysKLa)5Z?Rd^c(>8=}3rDz#RźUUn5i2A ML G~"C{R:T^9*=\+\ +ظnZe!`4m3u9O?ySu쪘Dԝ)(LzoKCi:݉}y\n@rP (-%./x7AGH״C/ qg)7vݜb4+ S`;MTw.Ȣm=gYFT|4π!0m= j`Th?XS 3iA̳W.Uι$G oyШ7,?^ؘ^'χ+ErC?( Fтm/UFuȰk`9w~R' T=E/~}l <̶j@Xv&`t;Җ Q;qDRTjxF Q1нvbMnBa->$sn(‷m4Nc-PrdZv|gݦ^ꔹb8yCHV Lު=LlWQaօ:F>{;Q=3"w_NSr!-唻=mFt 3~doxZVN!*0Cy#a]KgGa19̕Uz:Fb*L֓V0{PS|3ACStN_DZNStDoDew[%~)TsNgNa7oi!VmYt [s,|,9|}E<\躐=NAxWsOE}tS63J0!ʂ0qWDAtRwB\"B^n%Woaom!«A}lbgjy{p1SfӵIOJ GUۯ[Q6f#M(ّjm5ƾېNdk&t.x^B Ry:\KwV =;y69vL ܣ[TTHGBlw8纏Ze 6.В_f&\end$uyxr>=CwE tf4VdK9@& LCW""hȊ4NaA8RlF$qh-*'*ft6BvwodX]Œ!]k<=ꧯV'hyry\W>m5BM YG'Wx[*y'/*3sn!c4pc@'14991߿jR`wy] $fCPrلڠEH^_M0lToJNPj35۠^) =3W6أКrgc<5Fkyl#i7G=<|ĤFûË޾iy?a.vR #20o|D#oR~c)CG!k=? ]DۢDrXGq,{?@%񨡻Lrp]A,&rZfɽ,)"^RUS-y%}_i1+3ˆ/ _1ٛ $.8P;zS 5~IH4)) xqyO!4cKkMw!J4+o[bj0ڍgJdž&&V9ۨLJ\;h+Mz{O֮ D[F2'or6+y~%tJ?^ Ť RrBI*3jMĤ_<#;rѻ I{o ȹM]8Q4/- oa!4Du2rtX j1ML|v&|]A=v.DOPd}j%5@;-v_"`u`t36@z$W0~&QrB[WgA1oIu -$ieN&ZeSG,MeŷJL! sWEw d@ZZҽw9'Ё=#=Ga4dv4~iL+`|-%-@cUrF );  դQ S3j.pF@!^l }m.:8Mts|;R%0k.r9iVGr(b|$qk}5{N ea#;H}9۟yZCxT}ރK#㳔_3#oӽ].5-[JKP_,)ϯ=p \xn벗W)&I-I̱^wYv7IP{6AtMdy%5ѵb6AHyn) \I-tm$"H2?N."y?j3޺sxl_E6=#adh. :HW>5G4csD!SS8ݱW9ed/"}jy&2Z8ўqFu)REFj.Jf@IP8Xfm$46.8֡-dKlXVa]DPo\v = $:k9!J0Z۱ӕ#ztWQu$bMD%LoF};Ttr!.VZf}! 0pA,@厄_euh8i☉z%NxNr?թEcn+_/m!8q1 PFok $\ rjS2vC^$qsAq9w @ WH($7\s$AmjX^+@v:`Ga xC-'. u:8R0ZiK=_d”lv9QHRJtΐ*aD1v}şl-AB6\#n ֫e9wH<jȏjg|ƜRˎiUG /9_W6I #oFco[ X" hE0'dŒirݳ$fUɐObӃUƼ\8XeH !rק#B(Gr6XE 똵 OQUl4><"²4YtzBKvZFU*i2;YD2ƛ6ݣI |76#}&"a]  q]#bLTs/h[ϫ.՟2/ L]O2ߚ;#dtsV) "L侴mOwTh\lN;1n '#4W.m\_9X@\_jŻ@ÎPJ/\8 H4F⯀(Nї=|͑y?զؘD뎑ʏ=Oeq(C:_~qEm uSߵNЖf`ڳGJFIpY#(6ġ3.{E-;r(5Da*? /F+hxDo|\s$sa޳7r6]yF뱷VJ]j 荲p[irq|&K~lQ@C `oVѨ 'X aM5eQ1r1G4L$x4/ ֜K_g e&eWNXb%w@M(-<9*$. 7<0Q3u]̿3 $2Xf0eD)_z_:X䪁 {PlAyǔ@49\ZĵTY5`iS>w)3һR"q^2FmiV{F]өUHhJ됤  /Q^Dj!bUoxNf֪iDl.5ꩀriŋ$n|2u{ț%D1} Dܞ&y'`PFje?ϷjP4wӡ|1 ==Zjbmx((ҡfC6k,ИYlPaaL7'%ڿH f\x)C>D#Ȳ:vfߞ3@<b=~q.:c l*W9VA@c^dFh]-[zSbż(;Ҫ6zU{Ϡ {-zQ'%YfAQz(`'Fs+n(jѽ7eφIhU:H6mi $qfx3JZ:aqp$QdCq220oT2n)+i"c1Ǖ϶dlk4οó b4Ud^R1olЉE5!a^D.%ļws q SE-4XHqI$?Ns^=Bk r&rg-uDip\=p+RG敮vvY݈Z&Sע,}^ԺpeuBa<1+2:8d"5$j_;%' &ňˊ8EYNE\ɔ  GɎS@4>x!&+ʥ&53aѡ,bx)I.0^09q(V@;0]=c ʎQT 23 j&c|, eC鯧 +xJ;;O]3ٔc$toX1L-J6OTPHW@SEkc.a3!NtiO[L|dfT'H.1Y;CW0'""YX `JPڦU p?|iYC5\a/p:4ȁpp#9 T {5>?RQ"v7@wt@i!Z)uRE `t+C7h)g]ofX^qMU/lNYra;tWwj\3f2XjB5 S *wl^L_T@0V.eO|\(C[f!v7ۄЙgЂ:RuPĉkzhT =xi `Gt\FTC3 ϭLc]$Q?]ZO=v`:gnU\ɘCp 76;Υf|zOݭ ,M݀|ioK@γۆ$Yqe,1GD@`y $;YQdi׏FB |\]]lLuܠ[4K,V'2 bs(L@8L+sdqxHZ^3nxH%r:Z1&ww(5*eVwN܋oFi 23ZΨk?op˷#E]ٝF:Y D2up#g:pbv(}f)OH JVL`γK ʃr{fH9/BH!6Ы3Ў # w0gYx&㵼5DwRת  ୴yz;2-v*hAbH/gQ.^LbC#TMǹ@гaVLj5_9Æ<V4뙵?9*ӂ|Ѱe>򽍤KU)ccPt`j{WMIX.{d8]9)6"tmN@w;B8AƬ^2`~ @zJ:(T/Qz3X:B@,|iwk>}03oSVό}pFYGlfRST vKGDYb岃HD'54{0?$tAaLBxOzʶfMYX`&bΝFN놸@\Kc*(F6_qubWdrd \o2ֆ{d$~K#xK&i-C匲rKm3u 4ŝAk[9S[ (ߕ}Ѩ8*dF` g,jv`?H?/S*njA9A.NX;&gÿ(w?nO Brt/ %iy"9S%^"SVVq}q&atcW͘Jy3OrV0n. $Ȉd{g i']i/(u]azcLKWFyA+jvgHoZ=s|ԏn:=SJz`Rnʪf Fq4(V#Ntuܑ*}ΟQW'R-(2Oe.=Ni$}~{rN1L֠{~*^)'hW!x1(_)Xit("qʪ  sջ sjӮXpoJ댸r > -GY_R ێյ֨O:=2 WXC!4(oE@Ry$cNxh YNRPSP| Y~TpA}t[)<[S~-y R 4wyb)N?_[}hQM b&`w?ڵ^Ҽ+H/v-'v&,H[/^ƙi8zq>zx!Qӕ0[oa׼ (א(8Asͻ}iC6xVu;*…*u')i6(ɷ!xVefrY 4 `=Q V% ou|WaΜ}]ZЬң;o*a5:Lxw J EFt Tc L].so(N4%i4sOvᲑouUG/_/PG\ӣ5>ܺo"|S!%ZC .;]f

^/1x#)'w.q`k>*we])my$$4brϥ\aYRyA1LfjOуòu%IKknZDi5ozo(5@-5Sa EJ$቞ƺ++C"rlrD+_Wh֑LC%=2{!ktcP*7Og9$Ghj]8mdsi>WZ&&:2Sy[Ӻ>U}ؾ$ǂ0)ׄ4ZrȓN_k<:W:H-0XRM7бzpzkD5&Y5"} cc5yd 82ARt u64LoȄ~1}*fu0;->wV4P)%73 ,WqĚѥA#c Åb=CvW '`G}u/\(7Cd=\5N2MUt7H N6(/i {d%;7| b?zXe[4jyƳP|W}#U>0ӄؿSjOtDkg?`r{dΌNXH `Q$RzcqLQhWj".Wium~4^]sI2 ztu^Dޒ*Vsvjm-qX nCJ٦FR@G[:JηqYz>őMm3OQPkq(x@|`H 65cI5x.F3Z}b-_&i㷏{Aj 2 {ЌY)ϛ-ޘx]RQnO:/meӘ 1/(ğsZ.s-&,QIܻ-d^L;=&`S˃~o^~~j׻ySRUĈDW6!I3 ^bMd?eӂuDlizDz&Qqgq"ղCy~ϯ bNF#|}xsګqيh2l۵d,[yYN6grJdS(O#$~{WZ-9!Ήe6t Hg,wST\q; GR5"z /O޾Y)ᦕ.2  RܤH. tjҼSE@I ; T~ MJyl3'%X)x mv';c uDO\Q.,mOf.}+TAHČ51XO')>Oko.6׫ '}LG\F^]}U 5.j7!F}C jnɑF՟?Uq$Hg$8ͽ ;̾ #,}—Q775u ɧFzF%l) \@YZEݙqw}=}m %x!Gd^l;4{UY}<8gJؼ,d=-->'v0‡jI)-~ژ+eA7,Mo,F][eY.JEKP{ qO-_ ('Zsv/l0@"cţbW#JӃ۾bI̐c*W%[sG1N#ȪU2!u8\CWGJiew. <۵rt%]W 7O:qUY>w/."Ke%(-,?nÅ=amTpCe[6odS>]";B碖$vp;(^M \p`o]Npb0p!})L,)p2Pt+|JI8%ìu JK0JU}4Lkr-'Xhi$ǧܟ@ 5du EǮ`zv%JŌhW_E珯%uYG1wg 2ֵPIBed{{W=nf뤌 n`9LMBNE GL;BP"L(WA7X<zv( c;% 'zD($ƒ?[օF͏:}E(JZ~2w&7+ҤKxC;5Yj^;D7 |7?O62'DJ9'5 #uܼ?b&ԪrEm/(-&Cu=TOn4ҩYHWiDq)CM+CusaX1\&y3rfJ4PD =@Jpn1G[G15u&DjiMyM{hh%}cS͠.:,UbPB(fn X hcZFE ,;#ejry6>xVu NF4AMr$TnU]?@L7АpR|Ktϗ8։NM. 6f;v >cd^!ΤC:8s~[Z2\G}])]/D>g]ׄOi ~dI,M!Dwnq\PhagY*eE>}챸HP,>l)AwKן\$ jQ nl5-T[6Q?7]̃A;@H7ݡ<{L>eZHaѸ\ItWfwSd߁+ӑkzyח➛di(ɥ04DG؞:"=_~#ɰ0Kof $O!إJqcQIr-\7.blsjiǐSi#T^%? eH+/ԻJw*Wڵ;h]yFHDtCsD:qܣpYŴxQՂv./~!ztuj *鹷ѡ}CALݫPL@cĞ%;tr:UȻtg?Qѿڔ3(_L'Oo!)Z?av\cwJbz) *Ɔ̱oBCNݿW ~In\7%#dpՂZ@BPST,Fn4\ l$y?FiOmCۀ_SzVUj_\oaYv>f+a?!ȥ+w~ ~,77ԯ68F>"]vn^4:Bt#Bl&Ip&>GB6gYrr8|1Q{oIJB:T;^[+r0/DzQ1!)b316.G%^LTߴ׬ryUC>&J D9>4n_Pksy>؟F Od˽nM6;닧O>LN,::QIt$hqUyA,OSfQ^ ʋ6$E"b!Lh֭y FU&ۣØRhRwuq?W3126[D[''h3^ѫ%%A яן˞:, om'~A=9hJ ]xH vA+!\%~D.~Y(`~qf̀( 36&[m(Y|l7-_[ (@r{Ձ^܄S~qW5GG Y! I>+RzK_:C !u9aO)ܙV!6!):*qW;g:yFaXn5gO`-h7jWTʹ YDc (T3PƬXIéSS?3 v;ypNsCW e)hZC-h wֆcwfz Q*~  QO>S$[ɅpC;nHaCL<1]H 3F\~ +.ڽ߀e `Vm;xV%&yOu.l  ؃'Yfq'x;1v3og/? ONJL(e4Ü]7$չMs,'Ą[&VTTL~iR--k97/"e9|/bm:*? %[3&#gQ£ۑVh \=d^6:9mؑϽ% Y654}8:sI^/Vh2LӍԀ`#QLeTo7[6S?qyM{"܁(Z, QkdLjdu%ʍv-*_GDCEqCЇq߄9$**&C\|C2 `q.M B< f#OIcc Qdl{_MA Cs48+^%4pcW:l`r,%)نNy뽎}7Z=o) Qk*Y(F9#iA;I3A3;!tcf70\UI󣴸?2C֚id.8Jf EgZ#V߄7m]}3js=eFN=|`4&5[DKI ( 6n[e0L# . J_Q o˛CkN谥fr{ "9U'daS\K.7MrO K~BD +ͦFd0º G2Ajup+7Tàh[@x]87m _;>gBI7tU7DJ&7Bx-Tbd:Gqޔ`H^m:1Oϙ 2 $iU\Yu:Ifi{ 1/?|*|`fԜ~Q);.|3x>PH&"{fC׎=>J^"W~&qNa} ok7cĉnpRr!Zp 3h7Fs y~7\ut>5}hh&#}H!kzV BH C8}eALa|E&~fF?|Fj[M7R@M]so{zr4qZ5mr,u?|*"hsAA5 1U&#֣:2Phe.vWqoaIζZǫ/o>r5˵44K7KVG7Y0Nd#]ۅpkgwƬ0t\AcfX;laJw| YAivޒuЦ9DpEX'm)_Oa73w[ٜz.Ѱ EFoL|r@F2'4k;,G8F..A%,=Ѡ/2Ǭ{FƺgwrGaׄi|8ˬcO^cϝ#7$0nZB|lm~v 6'Bƴӣy6e!^vu2sK/Q9|{by̦)خ8MDv"5~;u;aaMBqSӽ=rQ" *el7e肎&OYg L&O]OVK"3 yY'3xOc^+*M[KMTL%jCr^ik$'j7Tޅ)dm VE[%iHM:/&F|)xN- Z9h.suDcvl2n1ctw1V@sEZJCIΙG6a<-PAD|2*]jըH̾%Uudъ=Nߑ>f;Gc5_zƂ;rM +e4m5rM7vur]Ӱ7R'L$N.Pfd٬*gAߛc\8nYeVU'[6>Rs/5uB-1&%rai|젗"dy| Ӽn)Ab։MCHyP*~y~ 8mC/hy1o5vz Qez@Oc+u8kC8H^PV O]߷&Fj:+r,=Tu#!,rϕs<&I{)u BN% "a%#Go{:[ A?B> tȸh"KB6'{|04*C O>)E2Vl㬑J\X@iZ{L}2 MT(Ko@bo۶_,F!![N(m%u@cpIVxry_e|ȟҐH&͎saeiш[ hԝ&[Ux'!+8RjryGClgmhW0XVcaj&;B|rЭ\$ˍͺq}{jm.֥5WHalgGz 톅'sdCxr.nV*nict}$I|D=,5ecŮ8zYn0Yt 1ɰ77b6!! 2fi"TVX+gwr]R M`F^$.6 ,Sf+𓤥(Ӹ Vi&Ġ܎*Քv/d̪tb38T@K9dj9•ڵբ?ja[Bmri2@J~W * WO͝:"^tj(9`v~1Kc}O\UJ#z⢋:բ$==BA)w_Ezv 7>Z,c}J:Z+1d@}r{T:oo&c̔ʾjRb{~} ttLh}tΠEx)y'.Mk0;ɘ^u{r3 UXXFaAo.]O!b0b2O Iv;tYc5\eoh,]4xaU]1ItQI ӄRČ"U\f>2̍/ИհB*4YMHŦv)ɖ-u}\;[Bk/ł21"IVRם[Lq0榧Wh \c \k 'GLd]z$YO9f[\vm81{( F479 YDWd)Qŏu ,@DetJ96 KjGC?Tw4㠼5BEq2bbp&xA~]pSver.[Cq[bnHr'îO30}g[i* yo =-dσ&#Lg!|SJF P5pUpA_:L蟡S5`e[)(ZF6̦}9y ,}}]vP#< ~P.9|kR(91|u 4y+_n]6lqZx=,xח]д"yvfctN@XJ) 16l~KI2lg ǰ$gEҹ/7tA[⤲ #NU.fCe!$/̈to^zkJzg YJk ~tW,=/GZx=k}0kccf@m-(ZH$t9g?QNǘR&i|o;|vu@皳ecZ0lܤ6Cc"A7E !_GE}]*f/V!#3a*k,UP$]i =sH9<ϺJgB )=Pf2Sf}{޹.7V Q+Yz#"&]pUy|_$[gʊ~Ҙ7ykP7X gȧj_Sl6iR4?w6&о[RsxT$GkRc[$S-(.*׏|xFI ^7˗tZ N_R`q=yr `2{[4jKJ^*R,lޣp%y$B4Ig1,?\F<2P[?9#_o%픏AE}jsQGHh4y9 `o7j҄Tk; ˂+ D`-v)M| td-Q[tnԉl7٣yT^ +~.sPFQ,`4<}s)ꁑVf  0X}σQ[w9{Il <6R B-X٩l԰hdⱜޱ#L 8!5 5bQ>댁V]S찦WqYn j[,yZ>8-;TsL㏰zrBZjoF1Ae㧽M988,R `!Q_cEH_)O>U3d-x׸ECB?=I6!W ,YbU;5Qeז 0Q 6wϷt,.Mm!O`I.t& I(td:r.ΟԂajCNWr& NQK H ەeMe5>\#UrMSݔF%d@&vm[ej?p BQV1;Hna5ɧ$?[/%cq6&IA6v>{$cͪ0%0QݜV <$P>"8U){\|"1%6%zei/]sz%$>q?> :pd WD,7^{[ F#ҋۯ7)9wnU_Q+$džo`N'=Q$1'xN4לōHWlJm%˂labfOxtsOdt3fO)2񔵹\t4?AƢ6)'| 宻}2lDs.9n l/ZJfjbNT/R'5XpD҄XfʕUxod:5KwڸokwGߏGo2ε{dlx>Dn`CA6'uOI3 p10!Kdz{D6 B#!dºMV`!_+D7BS6XΒo a[&y[ĠۤѮzl`rr%ۥc) \b7 -婾ynm/igOEsn|b!Cb-g#p+`"a|)A0p`y@Zo:L95rUTDV:;Tɨ A[>0[3 ϑh ˠB L<'< a<_{fWC5;($ D!4BRwcтs,Q熠B[OnX)E>}R@Eֺo:*JR$bj(GGP Hdsa5E#ޭSG(VxE>ݏM:Gl&|ܦ4Ƽ;ZԏF!df5!3X?e3tG7w5vj4m#R?Bs x"[$Ȍܲ߱cc-*Q1pSো ռ?rgy1hʔpLЯ.h.^79Lc[G •cBXW2J&Ԃp. I90HM4zK)' 2ۨh~O1Ф1oXe5?\vL/%=TEc`$N1?1\ɇSr^ٯZ-# LMѐc%8;D\EPl@-@7řҡveJ)%¼} \89hhnWOY1786ORU ]VfuJL QeuIiw}%~^G!`6=?h`x` D+A)S^3Rʾҍ O0~"5*֘UlNQ#lOC"Ȣ%u:7Y[ϊ\s;NPFn_~1d (v 6Ҹ?1&zᄑYնc/F_b`@?ENڽQŽ']tSMiDo,= ) ꔵL}1ҎmR7 [zD"oϫ!̦~xW}"J~'KiNJ/oYB- #Vu ŌS^%勄\7rYz= ݓNV'Y;L\!MH ȍ4 ʞ'!f V*ّ4įY٪_> e4 UȌr.ԎEEW΋ܣ}АC*E&ڶJߏR€{tx"`qآp5pۑIׁaZxV˯$DCSe n*UEvEˋ\L0ZH ₌F׺x wC*!Y,)% dabQ6/3Z9ѠS 틘ALO6Xvs.^T$P<Щqx#LߙlM7aJS"˴O8bn}Vn{KsfV.%4)eP > +(27 V$[b(:x>`gSŽeK9- !`Ew_KLkߙuc{|<꫊ϸv'1)M |`P`-n7ԋSLo[kgb  q_4Wms+!&ol62avHK80{ {l:J *e8/=L>-w*qa@78I-'%{%pDB<U VI{Mvx( XzW8ӵB'V;Nx]sL'{b].]8֧!m<@*Ţkw9D鱪m3edn,^;sö́76Ng!*t/MG YQp/x? Wcmr,2UAID̻/Ҳ56%]s%N ٸQv Iچ^o{wlHȁ zrV歗`v+`"j RLv[^{s0LOi>*RG7Jm^` HK}&dݥjӫ7:M8{zɞ9bQ;ʏq{o0;*pk{g$wgn>ܵل#n'dUo}3 Az.|+]NĂ$puGLOOZvno>h" D[q& yJ:Hwa+˽glFBD&5g v s6 準4"fL^M 廿#!oJK;أgyqb=Bb)54sHRf ,*-1V{ ͟MЊ&9+C)xBM6$gwpʎZsyKLnhY 5\@W{:%jQ,Z-*ݮ<#Ӏ@˒]1Ȟ :MXzw=D ,Wk P|H>#o/q.~Ylje!ڌ#}|9aK56˞~5+aLS8 ,r4G;kFK~4=Hg+W׿^g&Hoյ/BUtjʇZ7/`}xpeqF, q FzNّL֒ kU3ܴA-ռ@L5gj#ͽNvʕ2jgIYɞkP'%@>Q$.EAMHHG"+n1(CMMCrzZ}Q kJ_N raLu(&*wL>Nu0`uRw R EȴB/ՖeBDp"M~rz[ e{Kk{s苦v"E;i'Ni% ~U;By(|T]qnً7xO0g1&vjܑC3&93C|εVTD78L`!a+T]g"[SUAe8tr|m{R~Ra$Y=bњShuzu*i&9sIa.8mX4A2(:#G0na=߽omGd^u+ƐsXR^˥&J=g0JTٿ?Y j۪%ĉτr?XM-oxܦ&4ZGJ6$(P3QuޜD3yn-eA3: @g_Pz;]㶁gᬒp}*eNeiu w9v⚔y*Z$5p؏^W9 ڵ̅S:o0D2y:4-CB/bT8ߜЭ#'j^k6!Q\B 5qjל}@cerAr[mq}:wp2 S])`m~,%xůu-`8/eV.5u4B}wKIܱkl(!m{ZH&!BNHɰߝKue^s$5>33 ) ;CtCMl R\zqFˆ ]-s@  {6Wc3R) Fܩc5P\fdQlvsJc@N[,Gb+&]ocyLfe.)QHHkO"B殓S\F`rr8+WJΎIn q|u:{oCtxl~B6oT͇8̸w=^tC0&= q[$woFv~OQ{UYM4 u|R6caL~q2aއBL"GR2rect" hhYcgZ "3֊fDj !:3i@RP 䧗!1kVҏ3"Yb/%> hvE=YErMH"hJ!֕! Iy<8,Pbq$i(uAۈ4Ddxy>`/b΃UTVͻnHYL/OiTQ`WAl 3rAp4;aSi`We2Ft%ęY3{X,$Fp_,!g=@ܭ/h5lxe6HaE*qׇ˶,g2B5NgY$ZxԐT\ B%JO;0e2| +o:n}͉Ŧ2n(kvW{MC.HL^lSDg矆)} E6Ǭ6&Wy5+n)dz+IK~e.୍}i(*A$`ɋ؝bRLc@ݻ}Qي'LP"Z&P'޾Q;?Px ]¥)lSvn3&bzkˉ&C™WqK4Jc)1%;[7IEV =cH0eg U8`}ywD3UP3H -q+&ZUwś ^ ttt`U-p yײIWbQyQiK5 ]7E ֣+?YkqZQ:*ORm RSTKyxEnopL1<G|!]ȅm\V/އeOr._BP"!e!%eW8>%XjWs1ߌ*P~Gc*j7 $"P^ɘi(>>kaG]cN;x(CIy,>(svN S9 Wxntb=^2*xK ]X"Ȕ \BjDǓuh!FԄrOM tM,}lmc9~!֠ݰphpҭv.xp1ޚR sb@>|3!=_ Bj).GڄNotijI8W q"*7SE9߮e'Sbϳ^b9 Һab5qӂkWg"ܜOUde$0\R\% ;~5FhTbbܕYkpxo[kq1Y)Y635As^đ$LD!)h_B 9L6)G25ƌ:QJ_ܙ JާUT(A9qƳiSv)ďca嫯tUӬꚎ=z$lA.+_Q^]jhxO$idmiT5"IύW%tX[ăXp碋"U||)fAApbTzZV7zoE" GxG?J|VyQ7t]hMX-B^8KCʼR@Q6ӳ 8X#<#pZ?u:y׎!@jF~2 ϣuSU, (]+wc j2,rˤ}߸?ql[_H>; 6St?z}@SSK}u+UY˛$)W,5"^h#H*UȔ,!++b8=_0,y a6FE"GwP<L$r$3_R 4H :3IMr_>%R6j-#6Uv^o"z9<4:<0&є^0% t^UUSJ\їLj&uPrbէzx[TLЋClOW>̒1odÙms.n!aLdP J+Yy{J`M!uPA&j%ӻ 7:.-a-WIAU9[FD—g-,ZVlp AKjOd.z< rog7["h8+76VCZO@\Z)"앐b0Cž.|t3| >675ZS1QH{bw"htLDžG?ȡa*P|@bW7@@j WdF(zV~L D'!t.e n.zaq/oFϪ&`5Z3ئK8pRmCNS<]uoWre|G#YySNv.(+˝ /b ,A3L[7`g^c< 垄^٬}}2˜Wj0;l|UQ]@u)L".X( ~7z(CjΕ- w}Fᱍި /G '3Ӭ~w Rbn}zl$5d3]מi gz:t" 1rSF_f *f-Җ]hgl9"_'EM=t^P !ۊyRp|Iem@3<Q9 mYp'T|A 2.%e˷v5WiAg@Y9,ke,KЯg5^ ]ݯ `DEarWy](*wuJ5c~ @T]'쑵חTls'JA|a QNXE* qHj4 XAWl9@RK&*i[_MNeF"CÊsٮF4Dr3ߺB](VDHkB˭+'26K=Nu|CeRXQuـ+_d\NgD@*ء&Q;MvxD[H􂄽?D_HJaCj&z֛?2rsc&'q4+)KYh\B-I`n[S|z}܂-W6`Z2]J_VݗWᓕCu4 ;^ۓ)䍵2Cm }oΕqW{)\\Kg.+.P[N184H%sZSOK2:hMBijQN"B|O}GA |ptR)w79Kޗ+g["9OiS|$WZ6 + Dj >c.-$?rHVfqU&3?@oxVi.d3Y[!;Y`X@;kw- Ju.}NqJ%j>C ߑ;]QvT2KBD'BsO>$Dv0CtIg̓} X["6wg*3e-#ptG^\d4LjVJ'GdR`*J(2^Gehr\gOZeB,W.3@✗ zp H M xDWN4ݱVVҠ5Ne0Π:KHgiˌ0W㎆*pE)ZGK#L?{7tJ94=j43sX|8ڶσ"مj"{VLÀx< MlA-0tESş1GϘ h)毊x.KW$͡f?0r3 \4օǹv(ɢHzg*2cJ UywBԇ]W+#H7*WgKO=صQ]@uKUO91p.N5E.:C.g a^:A^ CJozOk`."/>ZiQ(8Sa4a.pm4;6XjҼqV1&:琩IdX <ѢreNO]Gln~F67m{${*Մhڤm) Uw̵Ehn%g]|蚆*J"m-h(469^S_L_`0m邪*o:0? cϭ-H"4?H Rp~.x(CGE4,:- e{ C+n\xVh'2dqmsm{J&Wc#u,~\o)s%Kl-ԩB)BBv>kg\:ӗ%!dE͈  @'C <-AqYjRfLe@wQ(.[Mޠ8skkY u+6|Cjԛ4TEMݴKŌf&Mj2rioYcQH DpBO2!dR}!~2:xbtWq־3TzDLYmQݚEe8LxTBOUkizb< D;_fl\#ݼ3ZtR6P@ z _y[ >R0=<@vc=n¸Dt;`3?0O.C^a> V'2[vkgrȨ\.}9urPiX.e627_saZ)ylxю$IL,)x\4ºlaF(U66[?2^Jܠr,['|\I&`Cʼ-`rZţ #vc˖7t'I1[(6U^@.(ux80!Rܨ\f*6fy"{-5*9)"L;h?syML"iԼN_v\=17ߋ}V/}GD=?wFz1 dt9`.Zŭ5:qЗ S!zXC;^:Ch޺/:ѡKδ4 J5c[`$ǨSiC`jr>WB/o39r伌v^|i򼧋;po)8Rb~ ke308^T;v[%L&xJ{ҼGEץi5)N-{h600ә9q MAipjtMHQZ /(h=xQ!4~/@Cժ/$_qv.yj\^5'IlMR}c|P3̾Owp{!'L5)筧aȳ[˝>ؘSSy=}A{sy,(cK`Wuv+W;KR&(5&_~MGEIB}MAgɩɈ/{]V\[64FQ^O~!(p4 gC ̯GTrtqƄ w.q/hCJx;߉sMw@NR~g32RKao { ="~9]p 5/ŰG=;]K$#}ZsFa6y}E𽵘+t6IuwOf׶lXuQ$O0U9Iųb&a- : qA&=j}̊"17tה=E^v`Q(4q /`p*z6ر"O/u,#e0iI-N{S6N%~a7'Waw2*(z 5N$[u ZXgkC^ w֔jyU4Ns3ʗ:jtE R8Nϝk|ŗ03L7Gd*GF%r5{1- J]92ʫ#NY%I'+80iZ1IKqjg T?$ܠGڭp!0hdf,C:Ӄ$lq8JjFw kvs3f'2oVv%S%"]NGwfq!縜Px ܡqWy5'IYR&ei+5}x{{V7pNG_m`MRԲ*J*pxi)N}5TxK@trL{ٷ>R>Ty󶣳"DZnYm 9'b i}22r7> ðǂ,ndBYYdU{qʳp~L=F^0w?>)KPkJa9tlԏS- 0:= 뻂Ԥ=e\|N}V-uq8:C3^Q1yݼph\u2d/@?'?,a:w b3H:(6F<|}z3+XՊ0twWpfZm"i̷HcKZhHFtf0PMc6dž4C 9>E9d7q| A9P>b%g`ᒚƾUՒ$&zT%EDasY룵DTÖ ֟Z]>Hp)HE xtR]`҂̊ *+#q[2Gffrz\YjEfd(Ph(kp֣<;v˨5j.fȇ%T h̆%s6ѱXc?˟ ء'"!v9b1}~e\r76|>_簣[=Z[ j4D(拗Mˀ`oBo`^+q.Xт!س.=.@>7Wy 3"•ǹb]\/E Ho i"-D3r.e)`#% k]kʃ"xoNJTވ; y?Ixzô<%RǺ0|cb.۵2j _j=Dp[p{xE;I~ev@nw}D]; *p lۿEXSD$):ӗzDMq+4u _>Q߷ԫ\ǑbT<:,Lg<rM$8y<9.uΑFJCa ;0,EB{N F a)u/ϝ ռ/n涩_rWIZ@?Ahf4p.Fi$n;ն6i;&3!C.0eUvhhf[瘪 1p+SR1bf)H A'5)WQym4(42'F6\sk2}AxY U8w V @Xxjsm"n}WZyn]586BB-J^9w-a8/IB$:vNolK WSa+Ekm/E2K9|?EȉJp~J<!u(!=ĭӞxL3y Nޕ&"Al">iV)d-N.2st%#(,d;n tGGGN`8⧅ӅݙeȸoL6?(.uEpHr]N.g(u@؏!ܷrkxv1%B(L2oqI@r=xS)"[efiJ"de#ҟq)I k<rApd>{KcacIph 3rt[LD]ܩpi<+ ݥ|yIEt(;ۢ,lu?(EK:wV?ϊ pxW,jT8[ Y} 1,p<|ǥ/k? }z kMS‡'XB4S9vLkl^-nPWfjУC[5Lq/Ꞽ42 Gp_>݅Ԁ/kV>?8'SCHeJ?]NgDЫ^>,)Q'] ;N08U R[Ag:X"8 {>]?RZh\8KoV4!c ,DRx"ܸ,W-ϒ$s.JY Æ٘PXnbKe ^?U&{8}I;^; d @@?)oClQH.x)A|]37hlҩ ]Xbm;Y߿%4 `]2Ap* qoubarr>=Ǿk9k7O,H5qBD^w׻9Cp̵`XhHk!/D=`OnFhUdXvJ>oF!{*ky5;eBr)V|]kY[-˜]b]K(E#.x7U_*ļ+'jz,h0)H‹ʋYes74D?Gb"# ` HIN;}\T}Y]2v@A]1>pO'9nh΋%FA}# u(?X_p%z AT!Ȃu]y:UB<_:$*uxI0:e?uP2cK-;=PdM.#0UOz[kV{`i+'NBP 4tmjcPpaюvtff 4 gjoM&Cm5ρ:V٘mYVT1C`rw[䇕eJkEhg8ĥ,gm3#py[K{$[濌ƴ4pE6 N7-y1 og%VFs0+s{Rh#?2,^lB)s풃9==Z)ҬMSd9 @Cm ҦK؞<ПqzU> ;;G0y5ݢE "I/[qڅ #Ҳ\2-Ò%ڪ;/L6H jWj'doA={cFLc iQt^+%N,+|_]8U~T!,B.;mkdAҧEyL\ '=+i71cٶ}]cI= msT dsR)H?r3]8Pw|`'4.pz~F'YpH_wv\`x u9ᦺu%ĕ5 %zwF N(fZPp7 \pX*p밮NG5'(6p տ MYi؛O28Guz6z|9s>a5r#q 9PP2";yF@hHáOԎ$8y`-U^ -AI'iE%2^ ䷹{ͮ?;QWUةŽe }#[As0\ȇ*۲[Y~n }ϣucMlݷլfgx˹_7WҨˑTUdR<!A'i2BaEsM%4.PsZ( [Σ\ nx, JK%+h]6$ jw@EZbUcƢݦ$(9ҐX6{e[924o@w|6h>9`Z Yԙ/Na\@1j =BbhNE$S@03ν1n'I`'IHny}E5V~L3 T]M+jEa[QVrTv4.<"ĕ ^(95­'d'y]V(Q5gXz z/{uJWD%1t(9ar͜ MIs+9 ;mLHs'uچuΝ} ڡjˢe)sUNc& sAa `bw890d}'k€J5zG!8jӝU Ὄy/ɟ(A1j S"zXnSUΊkdjoҝsKg܎Y+>iQ;- _)=#Ojݱ`!ώ&Xq's2M2[:z2k)aK\1j" BHAuh}4;{TQu?`"m8jDyo4*] ,\ؘ>73x ' $ eȽxd[1Pm~IFf1=M&+nl1AHC|K U)Q?8_\e}w*;}%=cI/.? &Ϋ7r)9ؖO?\~yk^ߥSAZ݋!8*K&:0䑃Dd$AM/CqPЉh}~>>SVHD%/ƅdE 0B2n36,<>`}D[;$JTdmhVC4d,0#a]c& Fc]G<|euށ[Ӌc| NvmKCiӣ.99ʄIO`)^z;zC1C6 R',l}pcO=nVB_rPi8ŌXk c=DM9\khL$km(n7yZ\D/ȇŊ3C{] 3Dnnd'-O:/#M-T|V֩$!@V*/j(EJ F-ykۡFF Y!BSV.n0uĵ;𣁙N`nsz,<2e$C1NaU:]!4`]%b{!w/t-gءkshm % PEx$qVV=,(#]A –= Ad_C7! &! ݱ,,Y`Bߛޱf ߪI/y5F7pUWNJ!տn(WR<wd]Jg˲l#3uMa+S;l-F:XY&j`@Ǩx~qED_WTZ!G"K}0kݤZ¤{J+|-wp[A r{&$Ss5kíE'MY'A@hS.NnA߾87qf pǒh9"4טX}7{`sb@PFl,! l8l)Nr~t)E~]\qM; g4;4!pĸ.}]I'XFDӶy|s%NAIJٽM"^c"-lQ=P QMRʤd? DIe5:(e-cIo01OӇu}}e7;N. $d:qR71\3W2ڮ}@87Nь=ʡ0!Bv0xsshuht>G:][(GCmkhr{=_ %oLoeLw kr Uxf )+vcu=-{nz4f2$P zlK?A ur I-jDw3v;?U+rwJ!9 0uvxsT$ѧ' /7g6ҨTi^|c#<^ ='IPOǃa^bqre2fM>uwzq"=$#g2we*Ir h7+n@r _GM%{Q::runOѭhir!_ZRo@C"uqJo.iSH)v杵vW_Sٛ n&ΰblstBC^ 3 T;Ĕ*h Gı,<:4SEBk7 l\M58^dޱu#Fp}@Ra8s1VatnŜ76mSDpZND',I}?*''8-$KE]Ƨ(jMҷzQչ bKaۺPj 6HQr4POk*Kn>C|Vk_bH>0E/!_֪g]941.ʦGjufzXݟTIݻ02$,d-_eHܙ|Ūˍ3! &϶AJ ׾-,JuK纬@Ct1>Ԇ-KcT0(Ha{99l>">w՗&k;6ЄiK7t&aaIb(M-\ٮG\ݮgK0Df?-ݙ>!?o=Y'C DxQAng&enr=}GIo|`5cfu{8.X \i[T Lbըp ck6rt+7џ0}:;BUN: fj^jbVh'9N,-d ~lܥ]49BW z䄳Z]5e@Dxr,{f+6@@ᑸXN[v8$عC͒EJ3JXe=W }6@ ~ zwFW\~NՐ?ǰPtas3;&BlJMa@{vD?P4x 9FY Z2DhPBB-K 8иtDޕO멢 cvY~FIkj!@ W>ʹO5Oee]Ȑ_?蟮?O[ .µ~s} o2&ާm"|oQ˗ o2ܱ(|>lmt|KV!v9^%86 cɺF<8f, l-Tяh8g7; 69=8:^k>+{hUf="k>>lY9St/^s(:܊~$QƲ)N#Cp#@}C ,{ ů5T[C26l8jU 1yq~v8ǢY927;ԧ:' vd`Vd+?L8]wŔHa[vY/yRvC~GdE5`׵zTᦪծ*ŠT67 7M37TyHDaJ6f6p+Zm0 K} 2wl GDm n{a[Fik @QY(P47olvMDp)jHFg^ P1կ/t2:ɪ bW$.< X8pMI]7{1le WķrO[%tg b-l2"?ͫtk+MԬ͗HJIӋvW>Exp3ȝ\O!dvrק́1R)]+?/o ؊1Q^OPdY@OcU4l9T$f?ܬ8Ŝq$Lb/#q6mQ @Κ9 mِ`&tZ|98B\Kh0%ݶ|,+EO<ε2gִp };c$y݇АX21bmiefbX:iUr],1] 9pj&h5`cVz좉te}P|XzGn?G}-,^K0dj7g=x9կwmSf@iXG5(gP9} Ӝ,Z : b^k A GtH7[_Ntz{Z+AmZSMq:讷qV* Cc3Uo$0_\2έ[d/~pc}iZQvͥp0u-V#e`#h]/kL`g8m/EKZX"*ؖ6+/qR Na˞t)wI%ڶv#Qp+bw،kGcJ1r) T+`6 Vs^lHݔm%+hT(Td&cR[Ӡic-<%9ԒrZ28&7oEYH9-޿zϟ&CQ4脭P:  06HvPb5fW^cD;-7G?Od ċ" òz?y A<%eZ0A]5p2^~Rș'N_  ,ɘ'k)TgSҜld.[߷ /.30oMcG"_xOOU4j+aӖZ"+?j)%vM\E(=4\[UN#*YuuJzvSQ 6s (%Q7 i5fНP <#TJBU"qM_>lkcw5"//XixDڥi8-ޥ ',355%T ˶=ːGb _Jء{RvnUWa*,l^[N1wa7{BZIJeS܋croDxׂBz搽JIq074 O+;b:٢zTyS'xmgB'X',O 1Ѳ]e[ܬj!x ڷ_ hkz!iN߄ o; iB#f[O1I㌴;}b8&D[E\GE@,:/Hh&.֍*!DNH }(Ek3rmpEZ'Y}Q|2='b rq)ЀҙBՇhq*I1v8A5al ʄ RUAS9Yk٣,1֮^WHP(]wal "!>KR2ʰ"nլOq1MqC[>g7%{pt qFklo EAUgN1q#+&{Η'}.lѫù!_ %`jw\'4x/pg.!wI=:JdLx!ެ [KYrw?NR-)'ĴCm!>9 fddMD˿1m R@~A͍ c]HF[X'O>kT<^`V-*V.To&yE$?k5y>`NDŽ(T銚8H ]CnOӦ9ж҆B #)TX4ES@o jYWW9ƞD1 rnћ^W1 @1@%C }_2ft'\) 5[w~bl`ʨGͤO;ՅXʕ|#A^D#+. Pȴ`>O^2ww՗5+@&J1UKǻo%79y־Ъs{x5OD%`N_CD 򞼡nO1MAhg`CyTʄY 9&0oͩ;6rz<_/)AgS4=g*ʚ' EGquu֩SI:O.a4VitNqPU^M ٳ湏e㶔?W9Y?Q;rQÂ.sc XȎW^ MشOkcnd 0q[<D`k{_z}2-5\_bj]A47"WXɎd D3Mخ,PΤhU { JY24Oyg$E?vg(LT)ԁ=N رwtVT|S+7N׋'fǢ(k iZ6E8x++"±6Myօ[AkH3Nir7eP2-0fyu1dNS؝E?fToW'4&pV[r7DMD]0J: im󆍶oyb< s9Eqs> 3"}+#`s–)Hobq>2z9Vc35EЇ%y"31z;2 bpޔTV4K k}_n,!~w"Nj;GuU ɬbͮ DD;Bs6J?S't& N41IK5o&]qPQL,,}9i7<dM>#ٖYPw'{/i˜l&xzxxSnS(A I{wZ-{xAK9zn?{Uk6y BLiM)`LM,- ed/ύ0>`x\:4͂%cMy`KciLf"."}䲕`-B|sZ>KȘC.Q}LȷtOO]+$Ls eCMCy_]O6VZ$幸pi1IRR/X %*r:)p7f'2sN $5%Bivt r1jUe%a*4G+Sbrn% =aS7˓p%㬈HF% o_XN,)e֮D-ݒm9%}>t[fv6NL9y5gh7{rm6LZ"7PH{OV&o1Ħ)ހ&C>(ݙobP2_C䊓4vuuP'V k~ zYߥi 30.P-c9O>CD)/yr Ɠ9e6=& >6\xBnsbVAC eũkXv"Lk\6volgԖ8  R)o2J9[z] ͓wrɡK5Ð௾aHZ&PhE#`鄀52 g΃!qGi/(U%%۾Ska]CHXS;7k^?aH_5fg[e'o@S=FMjazPGF>Cl$C Lo @@eGoV| .v+8wMk-9Ü9B@t1=3<%B ЁC|i@2 ]{;68hs.3Wԑ>GlLsKT9Vz而2.+m:Y\pH:DP'!czMT,e0!ܝsxFdne?#n}lh̆oq/4;yTڻWLI*EkA^|LqdYZX!Hw= (Qh"ڋWևm<'If:a|LY?T(}J5I}HI VZL*u3h{}n6$ ևW [?18{@&(0|.RҴp=m.>2iGIEᝫַye]D]?hUxs {L%DL賁5 D<?>VRj ٹ=2G['h&mrG\BZdk}"i fН?cxys41aa 95њa\-ѡ^Ps"P`803萤a"gT}=ڎ?(([J=F~ZOpݿf1Z"tPƌLDDW݇<P!ő xO~>Ht cH[c ͓N?A jNbBfDVvRedſ{>|;Dyx>L f"H%џ1GI cSA: A-̡ ccq<(TZvX.vvɨHOZ1_\0::C*ѶOhG q__s֯^tnNj$rVa93Z b)?}K0b`/ MT a.κ0=C*…Rz&!z쬏RygDݼ t O<Ésde+NN P,=\k4HfF+I_f-ӗ]4Np{DoP@ǘ: *Ta *ݝE愼r?jb=-R_lU@2N:Lk5kw[|U@A]GYcq `A1* Jno]rV?"j9S1[I !:YCt"a%0v/D!-Ox_B T@gzy::ډ;:I|VcV Z_t3Qw?)QeE ƈP1^1:|v y.UB͊mIHtn>,?(|qNr}.> [>=h$.gJR(WH>ҿCW2bW=F&<-s8R~ءU3'UO9L' /LE/V!ZCVFg%μ\"SK,aT  :Fv]%IKvKsb0אHZ)f2&l`?~)$+#l7&TI]9o0- ~ɑQ0LCnu!$Nc8\8Xb$x[W1s* fzbM yч+[oopx> jB˻_Ry&[c ror w轭Ejb(Ykbtdb$e|^ɳr;I8cGD$yOa5S]Rt$4.ѮX{ qs,RB*&X)ęhi`NgiCE,͚4lސ2׌xӽhМ3f`+PJbC ^jӹrr_:7#[6aՈVW4/t"`<;ZJxĥ5#e敭ʒW{k>ڽyDC }K>qTD|Ԁ $ժ>Jԛ;dȽR@){;xnd IxE/KHh6gʭw &Q/.>f X[E8>$MXQ0m:tkGm[h!|,!S0(cI ecPWBvM>739UEh31`> 4=c:0Q\ 9[0gì[ySGg,y(g+qWn? J͒LK'9×hδdvs7u58cį-BvJiq^F;X;xįGW? ۢ`1^4k:&QI9S:Oݰ92~P-D_,V_k5qN_ O1n㢁&,IDJ,k[v+׆-l]3b㒙i{ 0pD+=6lx̡֩dADk,l[#<[$i`2V,&JnHʇ *,%ѭך:~/f%Rq) 8W5+z r=|\4 b^IaR5]mH2-[OBU XrU ULoZ_*V'Lh)e u%'t'H,s:C̸EʤQuW/sfZM1?2ti*/x?B#_k j m.UO9:v?`׬ ڙyhR;Lj %Q-~Ώt2E4, m1]B @:yBԬp`"~ '%Pp}_Ȧf$N .7F`Aaa8s ߅ hK`NN'Ӏ,Aݘ/%,[Lesق#]* g](sb# oFR١nDVO(-۷p#B &Loz3t1U]5^o+jesEXew$D Pف`YZm]<[ {Qiz!Q)DXœ)L$> 2HзV+ؖ~A]b~:lA E./Adɼ}osu{m>FL@`*nCk@KiW!0@E 7?N5>s %* A_NޣcSZH!)qmL |Kb/볲2=X>-8`6LN0PLSF'F2$,{R}˓g4W pq[:v֭V)uwgo|BnJ7 ЅC?5;DZY>Yrd}O8Ӈ}7ɵVUQSk,Xlص˱E}m*CRCb4Qc^|cQ}}Եt_)h ,Pm&J;vlaXX ;~3Cj\8,W-S@h''䔷ޠv\kB?~9NtfC(upߙހ #ge A9Z\~;?)B?zq^ ^/!cw cw)D'W%i TW-AZBRn9MF)o5$P 7/y\93udOigdh |=iS H$;KlgƝ ҽK8jQq3%Xn]òEs/2޻j.;S} Ngԯ]EQQSEl^e 9c-p(I݄'^(VڍO-St_lѹ0F/댧flx/>);v5{#W-x~Ro5 >wь]k8\;5\~-㻀'r֩^Ж5kGLfAWk͹*):|G@[9e34Յ+)>qvQ-@.פ )7j4 v::ñURg} `A&o-sLj.>`v_aqLp* ڏM8m6SgvKVY}cuI+.7V~KGvͥ<Ҏ1 rH=o+ʦaB>;ܵ*\ѫN(Iʘ&΃\q%DlE{VGgd#c6WPh#Ⱥ":o #ŅVh #s,(6"UEh)d@.uh($# uFo+!O@3e85*\%_d<v/H_r#>oRb%eBIަ^& >Ԙ#{ Sp"%چ_1u @.YQ7>1Ȕ`ʍ`UZ /du 5Sʏݎ9|aܛ^ PgaJ\Șݫ6ʟN ǰ ?DXϼWVWO,lPMa9 2>ˤA{LaTkDgY`wXԬ1Ns<_sX^ YR>: A?Ht8nHul: +R|c$lP:~mgIKH>GbR9\J(R8vԸ6,5r5Y䊈/M`9ZM'4g=s n+q[HBn 9N`'G-\ζ&,ښپA~+8;b+gU})'ڎt#" z>];oә5M1&zf0jKK}"H XbҍkPмyhY?˘=S{!+e${9Ke6 W՝r%2 fG&KiBYR&.pPIQγD7Kဝ`B`OU,~งو)ݦHŎi((tiR2<{_;Q'-N]8=agۖ;|t" cCmdnEwl${2)%z*;{%pVwRk(䴆!Xӓމ]Ia>),Ru@/dHhN2brl'wJM"*,P$3$T,M6y\j Bx2hL@d0ۛN3"; -&| Nu-q%xI=ZECH~#e{ CrC}l@NYUv/ׇ-(RTfk+NU&q*<1?_([#Sbul4-SݭpwɺRoU.tI 57#%q'aY`նg&ʁCȉY*_|&$] sҨxb9Hvo"B' ؠ|؋ -k68т3΄nO+j A_`Ļ|q]tP9YT_I8A& ]D]i5=#Z:U(gZwiyrdVc"Wf&\鯥t@p*Qis!⑏ЫkH‚pt?6o|NS"1/_v_T@Rb#9Ō).GjФ= yem_wN|mhv wB*LU1\5_>z ɡE+2轜F{8XX[k'ÊgE:H}؀dg,$ I:f/:*E s3ͦG11DJ.b7Tp-t|ʚ>nv[M?'9b,.# }!{5 nGg'OSkZV- V fMh<6BJ8E2oѰal^bEr2uNmn,=6ڮ BPqĂDv`7!UR'~W?ի=̾ ԓȔP<0ݽEBEb|U$|JF=㓫Ush) 0Cj;0VȑfKRcyM>OSPAc\pC=,¢37e 8~:?[k(2uj:HIv?KJk&܇nn~grPF Y $ Z1DN($V]3/ ֐-E2Y.X1t!HI܃ v$r~e<`94s,7cIs *%0;nM$5  $:u%4VA#ʨ=PQ4K5'[>.k#+" 6l̞s~La!^kj߶/ɏiߏoGTA1j&(V:g/A;KIEd*StO]3s@_# !\YQ9 [)/ߌC>Gqy` F%>&;S?^L!3jKD4U 1f6sihGB$+3%rFDL@Һ綕=嗈 &PX.vpO iH>(6[s6jq~?lo sz7B@yQJC =Ս7S,Čӻy9 x`?s}7UJ0^ D f+FE?T7.ph+ D51]H'$u$J%hҮ+Su2[~d&.[ȥX㋕=UyiZ}Pa i > DeJwSrk .?$%G\t'/3*PѴ}[،ԓՐW*^ HkŌIb=\2a9zx}{^^M*[N?~Yɀ3U8oc bNkCbbݖ!pxߺ1;zN 8ȯ (ʒ0.$TqsWݜC,&ۛQ(0p)JԷ5S#>a3 Zah3bH1 P`w}}%8f"9#/LpTٿy|:țLcSsiZe @4e򠺧{%ʑYN5aEފ]X7{+!E+?M6[Guॶ>? 5/Y9:+XM-s־6(S*:QHp󐾾)T9O֥MCis1@:ɜG{j ~ls/H1u-B8W2/LT:n{C4k&_&ut 84 DƪK "f|ު%%HㄍM~=0~W)h^K3ѝ?R}Zr5]6X-v/$$2fmʋ*Xx#"yW-$E'~6Zwư\uw{ q`O }m1,E$Z בv*Rob=i8D) >Ǚ}'h \Dz~Tɱ=1ij?I _bfL1qј:W P0ڼ+q [^sB~;'HWﺳK.+=[pNCĂgY2xMYܖC>w"Yqߥhf} ^>Sk!hӯK:]Ÿ9~7J SfUMBWZAGY+)?5^ἲ7nf UsR1s(d HOp$3t0?zQЂ w4HocQEA _2aMԿ-hTo58pqꄜ'5G)G彣9s5rq}x |]-sD!-{ VQ2Zˉm9G-U+szJF/_]Ky4ˈ0\u;lJ|o' Q|"K |7-ҀaؗЃZa>8E9T56&Z;#}eFN$= NW;Ky%|9EE@0 8F7G쏂Pwj^/ KaxNxjxLPJn}l W)VϿC>P'p'#NRZ^./#)nP4lD`% jfY-],' LI(p f QV!F=s#"kFQm6hUuŒXAA6@3p)FxJZ-)!4coj UA?Y1Jb$gDxw;U$T]Ϣѯ=#Sd>blw]Z3luFKV3< Eӥ-![$fm]_f&:i9p\$~E]#!T ӳ[N;#o'[f;c1~K}sJRd޼x|vN=#\5!'(S!7 64m> NM0۰6P";kQYb70?8E?PJo.3-ʥPeGlPıѳmrs|ɛE Fm=G{ĩR8ZhXBWIdk0WTdTeԛ~7xjqfoAjS0<̓]db:#[RcP'l=lv΃?G_X w HyԿ,\Sޚ^מ}@cWe'+W(!*8j q|>ț3Ū]&- YIt7דHI `'Y4Ə P( Gd<ē!{p<ůs>x,ER/ׁ$]=Xs%oM?;#1Kc::Q&ck_xŐ bcU0B!F򮌊!u̻"nfBIUz֒~r 8BA7羇b3ԎSM.ۣEEb֎$I5 ~`'R;\BwE 0&: WbWׯj'/tDžSYԾ˸9Vcސ*wg( dkxӐ^'zgQ "Pj/ۤvH0=oj֛>I73D?8=R:ե:GNDjx2%`9E>^yg{ohDLQD0q[H|9}LR,-zLSBCe^!֔nwӝz:™(Ity4F.8S|nu&M{D>)v9sܿY>99,B],ߛut jfƢufH-)wқ^38sBSrQ:ҞuobVK)y 61S72.{1}j&U@GmA'ݸ( E[>I 6O/Ѽ,"ԿyQу[ߝ?b;Y'k17O+:jݩ`j\0^Kˆ&;Wu)`vwADGp7 "˛. ~ah8n0s: dAj'W/R% \˺ ,8\>N!ա~@0 ڸMPDo L}C\I5_|W YJ0uTͦݙŏL12t.ebӝv]l_y kxRt18BWg٬PJwjb^b]eFrG/PѤ8c wI%/PK?|1*br5 M{Hְj$*"[L'蚪 Yq\(um܋g b\w:{%q7~Q~QxyH56QYf?61^f\L9N]u<[4Y@*ɛb?OTyZkS6::@V)|{EjvJ'-;9K4B!@VWA|>7H6<ŒJB . dۄX髈%M .Io\ 74>ڟPOD.'=W0n*>!PQ" O/%ŝ* /-W-E}İՔnm(ͼc?lݦǯ!: !#e%3*\CIhX3h5LCž3ᵛ(kvgk#e+D`\,!3ЫАnL.h?zfL.pК%8TDj9#քmL:|e̸؏to:GfKTs(Kׇ^#@>wkR7E<8Q2 }#Al񒈬+Dhts*t!h!:լ ٠29 Rzgjg4Q("&:+N_`|sW9ϔ03~6mc㋨p[{),e2| .n4wHaGGb!i{mKABu@lߖ}b{wY؂uƔÊ$+s#<u<.n.pZRlmDq]jw3υ2pضbުW biCoJk +di3vS 1z N5hK$.չq}&D]rf KRB ; `h~Gb{v To[zWP [8Kh"i2x!c+c+\.eU%hR3qw}q y![?=VA+[aV&V288NS, ]e[08 BŃ4֐XcYK3 6.;A|N׭+Ճdpatq[DƩOX1-f%jq)X\ʔ5b碼V]v8sqT6l$(mmdԞQ6\QɇlWޗ\-S<7}EteQoԥ-1^i{(Zr*j }k;r :"@Tw-GJf6h65o0"Q?x<\Sa,3cL,vkQ@DrʖB+dJ.G{``{^Wypڢ`hnidW;K籒) .N93.I9A¹$O"9l![߫@F͉b:9gԽИVW-/{v6iyt5<]Q$d/ˬ.=<ӋXnA!'*OC|=`D&wcާs=)?6@H J#gS%YG,oN|vo)N})θ\?5c¡ʚ,fj G@}6{],힤BA:J YoI"p@k~R~vpfKp6Fgy>mC(UjGq&sc9O`M&/ZfAsjT/s)f@S^r(Crc' %ƌc]q( Hoߋ 2/PT DssmYj`! OGF:Yv-&^jѶ7XھUL:^t&YDfr$ҿG;oh _^.Vڳ,Cde.#Y1H5W}܅;ƽ@ T{ƕr_*"yOn_)\ci=_^A?ſB jSw_g+"8"T53Q$lИ{)Hu|"Lp͏4-ٗ.Γ'a?MBh9QR$p +ml6>r vgxf=a{WyE{ ,?i֯s0e jN LO(0%csw 5pҹhAM)0M2쳵U+G: q&3ޣj$ٚe1sD XEf&c& ,?o{N4B~Z7 ݦ8V0j Wg֛o K{p6 LߞytK(o82?XJ )pv9xd$*WxIڤ^ݥ )̇Y*+MC-p(2Lp]9PXoGMKo^& m@^NĨVң>mt|OVޕ8zb6>,vWKB/.W{Pu楲I7/ (dt.`@N{bNNmNЩ,9}-wtD&˾muE.ƈ=+0YnD|@'s?8/5#`)z5\#*|ׯK W?ɱ8;&1cSnC%_ɔD`7q ,}9FyTEg&3sɚ-@@C(N'{iۨ顧ZUnF3*>2fGy3Q#-Ge##еtV_L?#bAhTRbj$9׺9R,vDb(Hˤ5kZp3`eAxҋ$\uG-4s(b5n XGJ]0 ?w8̍d_OwRd` p`o4gJy"4z"C{r]NP,dIYkI6[XE B+;5Rkdwޓp9i'wrnX+". ≎̆Ew~9 'ޑPzlTKB}>S_)eu Oo"'q~\K qS{?sHY|7=|jsyF>g\++.Qs#͉ElC{K=W̴+TD VoT#|1DN^ f(Kncg1ܤʀyWY Rܨӏ%{m\R4.uONMwY"П{#tLv|^kq"ߑ8gi2_6zNÍCzbbeN߄z\eCִGe-jZx#^{^ Ȅ237MhܡSsUPIs8GAhaNa`Z/k=]u:Mp.p0*s)#ekhdY|//eIc)z:wJD {cUkcE>\UΟʅDM, kq2mƮ48?ckͥ7@7s& iI"ȷ`8 kIKѢ]io{d`(b[5>B]$_(] @rP'B!m4&h66!; C,]2@0)*>'Ω[x6UB{`ʺGl~(kQ|Mq*9g5M)kx9=*aWKa3I$\QKZ7M$8 $ ` Z'RezuK@?,A$]:2n*UGXRg Eq[<L"SgU(t?ŐmxZW,gm||o F&lb1f|Rb<n>EHA?l3wN1O6}+x9ѱUP}ȹ >_VQI0>pwvi@}gGJar.jb^X6N-alsaccN_Amb~$#)ղ&?uw.)2U=^U"qgqi1d/=FpR$ڑC[\4>_ZEl zΧܕ:\p2F S?Ոh#2 "oCf$'OǕy#+%qL: `k%=yڱ8u)v-$pFBI#i:Ll&h,,Egkx9yH= 3ݾHv*|)xls @'yz۸zu7@4e'lK 92g`ˬ .fkl 5q?/)z!#*gYA{mU.'7.CkNe99Q#۟Ex]pM/5왻Ϟ[rc6`pu6e>-wgNQ/)vtFi|85,E#j0{r*ɧ lo~:37N_M.aƵƈxu5'i'HB4׹W)d2^G[F0zGwCW\4f}4'pmvɖNGdo(aGgg 1G aG?J` N?Rkִ3yQLC.~]| `u{6#td=Wm1U_rd[DQbgdGuBir|9pʢfxC~>-yqU_|2g&L+f\J 䗒9 _ ShBrV` ?H E=\A2d>SuڒW6@OClȪÊjEo̚+ z7r߄x=0j8n+ YL@1Q_?әwVP*LV6YLƆ.t=P÷-϶,qaW!~/u7̔ISJ殮C8Q1 FN `\8nqxFnJiዛhv0$f:{d~/>[K4 7x*P%ICVX:9s`/XI+y;Lwf-Mp&]=sNK@`"%U6&Zwhdm*8IC{+I飾ї3@v`cSGS66hM-I@rt-},AC…)5c*IWkk i\bl-':lJzZ^UU42CA,]ΏN,FWȁt%lR"(5!nh% jttaܕG#ͩ @Hy6G]/_7m~dj'Δe$wN D7z""O$Ka/&IJ6O0[S0IU@Ẏ6mوhu,}`ׯ;W Q(Zr(Lnq"Us ~ m^`EXWR8]m%pQ.(:ortbW'{*fbǹ>o0اeg$ Uq1ۘL^EMr)o(7eg |t>v)0f3 nvxԯ&IJj\8>R!RVdtT > oTŽP}|p: PіRGBhi ֻ̊?$IݺcE>[Gvѝg&ݷ>0&P_TeZ!ZwJ(a??9( q#ѿj|Dri{cpY)">9W]toE6w~ $t݊g—tG]aD-@KVqqէ{a_A= #_{{L,ٳbZcFE9(p (H,`{f z=ܒρ}K O/}~GM k}A-r~PqFoóMg%u. Hv]p 6^) )vaJL(ՑX'.m6[;'UO9?3OxIۃR <FM8Wv 4G/l5|- &|^$W+Uv&W:}vv!֙423@ xZM s1vmy!$?pޅnp'I a7,C?Pi}1 S~1l"uXrjEG\ھ;ίnUkHa7{*q0 {yJ3P_\ζD1\$>l*җx_"f ד*;UP>U!lj`zt瓠I0whB|J`lac|zVǶZJg.ͬnfP&Oن>#1e#hT08WJNp , Bq31֊!(dS>8BaȒ"TYҋUljObmD,]sSa@=!m0ՍGkۨǯgG lf*ؑuT ,5;G}(/brP,xZ2cCA悜m܏gZ 4:L4T 1aYó̩weªIo,9-4=Va=]+A[cLhdCR^!$WFmY7"AɴiQ^!HGu1-mMRcz)#6g9עvMA1n%Ƙf-.%Pc}J$N/-Aj()W[s.o9ZF}Ţ;~<jhb'5NLB^UC2[|\:1KNb]51b᠎wY|~CE-t`^E=eߛsj'g|/K> 'Vk3#8F ~H@?i=u4oz k/n`a& 6` \۞|W2AѫUf@U {f볹2yn>$yh]0ѐ+K:񙶛:ă6գĠ.s ۯL*J-ҜWyQ?d{7T$C3fg⾮3!֧ }YDBP ̹"#fhW,cat^zvE홎?X6zaU?iMZM|*}z)1]UV~[ɃԵ;^jy7œaW>j_1D8p-k\";,CSt-&ЕœP^yMgQ,n֙{9?S NK\kXHIo AWꮱNnQ8s;ǺQLlZjʎ2ǘ8k}pXqXz4ZCtXl.]!)lGts^T'cV[I3`0$%?9$2WUTL+ڦd:8VQ:k~-r/߇ȗ&۵vvkE⿸o#?@E4~M8a-%<8Vp'6ʟhDӔ̃@jۗj%!(}ysU^G1t/ j{[n&0~V4AƗ.2̨Չ8|n//ܹHt=k,_XV/Ch?{`v3B'N>0,ѫꂣoM&Y߅ȈS¿0x!- :qaZ)W^\ >T _QA?;L<3! 7Ytl!€9}$|zQ %qA['+bCqr,GHM, ga#:ؽҙ]HNFȥMt)MltptJU?D'(#{4M7eoò닷zD?AUwc ~h"}L-1Gh`q'#JϚȢljR3^XEldF 8#:%Fbkxw骢n 4dQsѳ#.nw#I!*Oe5H(pwJ >΀D`ny 9J0SRt +,=i\I' >ӄt'='ͦ:=Rm 8@Gy1}IcmCl&U!pr^=gߦ}B YY|KAe'n **Ju2p<"6`эۦPC?yp*hΉ~cf>Z3ppYZy.7wN=ƶnjn0s mFinĴTx"NU5 .-5# VnNzL،w|zFl1lqptQY\EjZ.-{N ;{fiO22bQ]Y&}._']ĨGbwjQKG<_<7 EA|%esUg! bs rk-@{~˕UT׋\W`: 2d QʯtrS oHK5ogmah8Ǹ(wU E*+kKƣ:=(4O7vQMTdMA[1LE-Tq^tq8a{Uw5ֵEQlY(m3:a0˚a򮕯tURwсԷ 0蠀NnU}Q2j-h= BFurېpT Tp hVrzCT%DIrGK,avBt0*jI:Й|^oGNb诛uQ+r( = $W#.BtyvFxʩp~v1 +H!]JM>A Gp:-_y>w~x664fhZdU`Rj߁%HA˸mg%0s}M9G10 lFX6_VݺSچ:L5 ":iHS,7kT.tawk AP]@-ҪFR? /!Z6BdtV'؏P๧>7Wa_dIf2E{j# 'ٻ:5Dd X'h>bLx}BFyӆ_9 q'qfN׬:'qK?d'j_nsn{eW(-6M-hzBQztLIv3%CSe^Q.^'/{*a_չ~!Gj=UI]V9E?B| ǡ-ԵYPLzQeC@ZVcǩ+"SmpqIxhdj4j%pq{dhWg>҅Z%Ck)dp7=k*-mhlombȢ ^UhleWç]MfCTxȒNW~dbz_*2v;2@#!]nk=9-'cxQ~TC˾#^GO>*_ (25f+ZjKH*hV}?6ڃvٓODt+Ģ 8,ϐ%åw!|(_ɑ|.TV,eXT/&];qޙ՜׌ZM/14jm-|M/5z$tB/{JH;e["|e=MLpoYVhŤEqr1.F'fSDA;NY%@ u#˰)}:K4f4Xx={QOPU[a,.~ٟ1N9'Cd> ~~FeaUx5|`!xT|VQr9hH^N< ٢lE}}F oİMSJ7ن]LFyfEё& H } M3Q(8k]0*=o%\YepMȏ|pEt(卛c: 3PE݃GOjC:\l"UީhFs}hZ?y„Ĝ$4H]9da!BhY39;#PD!s'wPt3J6KE4ې𪵀x}Y^E!ӷ-wq`Z)ҳYi,OG!+J#K1Ac2_4SBF.>WjDhUMj#;{V!Bz5T⪢ƺejsxb0M T Xj'Ѹ㕐׽+$s&(6ܵ_3Y3CM?n}UJ/vICisxuV bR1^GaJ=Vf2&dI≜AO%!pmb dP|RݸN>3u,Sa[bã9f,k)_ 9[Qm3q6* & <nQZ}kݭ8=W_TvaWJN9%bOFz^q!_uSg'*;RGGDb`.R|DDz 94 h.R|lWYC#UQ]>Q?GV3cYNzzx/P:ӓMdGϱh]n^l˅q -_c`i|{S?xcu-]J^7/ zazh'"{ $%oAA.OԡXp֒Ҷ4Wҧ:oH Ѽp1z_̤T߾Ɨ\m|ebBې>n\c$'UlKi+II PN֡T")l?3>I鴌#VQ-;-v=C3g&"rݬb$ڔ_C_V_>]h)pKW  1Ur$2tZBwǍhgTj2 ssMT3lYwC]>@?O1:h"&J#Hݢk &tlP*i ȭH_=)m‹0v[{ql#H[V ka.4r'܀p%8 6<0fG_!Vsi}ty7'Ӌv'RP n DQ'I8Rj"B 2 2+'EuLq)v`Uxpkk MO˿gTi ;"G3zD#waI"󽃑A@ ŶAFBYׁ 7T?MfDZdNr dO4L2SNr u @Cp —ʏZi{3[apO3~A9;q=N/xE7TyP)[̝1T{֜`gLDc}Pr}&/>ݘubuR~+0zt .ܣO jQVBxqJp%8'h74wX \?}w˴#Ia$#v[̾v xpj-e:Uw!Iz޵ &&cwQꜘBZz7L 76T̓YUڸ-3lӮX3]KdgxAN I_+H1VyeۮC~rw5:-i"8Cs-ݜ'ds{GN%JCe ү[@'X?Amzh4BŐ`2D*ZaiS[dc11HOp8#5anN}&b 7UUFWqu+3UC_|Sy{;9Fgi_sfACERlPJ^eNܓ*Y;\D Յ VGYk74xfP7GEM7`@-^ T~s$p]"5YY CBƌtСZg2:xP 4!>\Bd9e}vZ:6wsi33M&ƽcȉ]BK Of#h'4fȔQ3-'؂c Ra8IO&1$%ހDZBKhbAR;-+ Ŝ_j -3i4EKw:p `zh2u.~lp7(iI0JvS]+J,DN9(pEZr*v0χ~,VFW*׏9ъDt^fM8Cv"~=CZqڊh`Dr WZyyk:qsC'␡u8@P&tEa,ڥE:4Nav) uIϥ6^BR[3j[ oWUdGP-@+v9pS#鱚. )ULr! % ף `!y-h_^NS@l>W0̫#cJ.>}ʇ(X:0k>$:o+i#wS0 /[8c#i LӡRជAx;=;+ipЋx'cRcDFw;V=Ֆᖐg,sXTsv#"\a q30oF\Rʰ aD3~vd` GHi#̲uq"c|rz_ /J»=WvPQ,pBAo?)G< ⧷! jcҥUbqx/Yf&;Q?X"bLS#爀1rB~Yf;>ciZAnD!;p;eoe6|jՙBnzHWns5Yt?Y7;(5mMʾ9֤>;-U`( u)@Y-O .^a:IQ0$$.wd{_S gePcTk^ /oV?/7QV* iY]b܊3);&̦[7 zQYM@OZ{+s8#0E!SF_} Tg/7x (خN^lОT x@gjkyIrΓ6 YU(WΧ7A! o6rݦ@*ǒ@L/%̲& K5XYDEzքʌGfׁK!g bV"53O^4Bt.τ8@x}Pl~5;čn22v GO_ ݢGVr=NG98K[?xDA5lssn*b=4Z{56T/b3So$]b=n􊭧u@;reA5A ,H$avLPTa/h?e[KP9_`%\L.yY2p>D v,bx3JUTužӲ3&DNLɆ>b@Ikzxj.&f2Pp-K-uFKR1Se;>'mm^I&rBF0{O2VƭY92cLwn.xj}/$jOTRSXD!C;AkG[g51: qJLsV.@Ǩ 01(rV0"*+۴f CFɓGIr]\IiX57ZGD#[ͲjpW>&g9a|sNPlހ;xu70<])5ڐzܿ+97RZ,CVU|aS5/CWDTQyL ܺtµp0K:u,k:wPg:ÆrjFx~|(3G%fa| Cjf5{уXx6}%۽V>Ͱ-p w`!_Yk> d.#sgJnT+t.͒}0ËZE.4ˁ$rÙ']Gc3-scN`[6&2N!ia%Qk,!5H6 /v8%̯֋ zHY+5Yho ,~-74.:i3dX ǘl*70:m?V ])6Ɩ;EMQ/aƅ$\qwq'ἪiREjx Ln'Pf\,q؃.LjK{:oSy˓ÿH)OMCp,%Y2!БfN1R}?cx$ܱzO^p ~|3ϸx>-kh~/Y,CL*wT9\?j{r}t*AL@, W,N7I T4tqڛVE:?M=C6w#GЮjsj$E3UD{#<fAϥw8>+n[续pؑ⦉<(ם>/Ǹ³`ꂡQ>xDC]_c)f L0p&VVb;Dž+ HБȞz: JSP [uhnWгyF[6;HNe;Du 8(S(%'^pi;'4@6@,70Y`^=޹`۲8eFwmF kU<_nH1yL1HO;!=cKl?;ySpIB~ pd]\.$$@0srW`'y5"qn/@@˒O=7EW/ܰ4_,Mťӿ7 `? g#X_抨g#ͥqϥOvYw3CB$ ^]AGόFF=Ga},D vBv;N+^VDSq# ,pʼnlFcm K}`'X-Xsmcm&PgƼ<',g>Ӻ*eNWaax]X]r'Jn뜗(X\ p꺚HH_˯^e;:p.bVq 31e421D#6B(9nDlޫb ƒ_pd,nT(1]Tnz4gQZWB j,M+$$h͉^]7 (39^M}ݱ_*qž[hi@w\#VG.YX22.Ü{VmiK(G3jXVS$JAOᎹ/)ޑvăTx'=]I:Mf-;[r/{ ~Q`] r 3Os=:s@g߅@i pm:2 aQ6DTМkfWkl!y+&7")g:O]O,L_u|vqb!mʦKR?>" n⼈hQA9F\D7H7JOE9p3 >RrS۵?dO&6+L$5q7)ə`uXۮUG6!7 w 2}  X}P}vw0Ҙel` r#z|WiVmN9 ҿ @$fE0k9lǸZ>8a}BAb^%%T2i"YILi~Qy1A_u@Wdyg` 冄,IJcʷ/ŵ?O8L$jm762+s3rhҾGb>|ڲ$&83gHwbA{,H?|iXꛛbaQG_:D\BQlX"=gc梊TaL-xbNuR.]ݯ} h.z]NʦRR?_Nr/pp46L֣ɖۢO078 "܍)rAW0_lx 1J`sv?UxBUx֒ZDNqpQQe@{Ն~JJ^7g4= D~ ok*E3;#ox@/|KKel-yx%Uw-!횊åM_<]4dqyn)p Y_T@ƅD*h{>B~YJD5oɱ;h\gk|)LT=صQous ]E5";_˓c@0xӃR`r7腴[nb o_4-c9Xh(R)>kYf+UM_p^ `+XX;Vİ&WXx~)|:b=̵7g&@\9 A~oz#l_R@Oz*wq=ޫPeA7ש3 8}e&< p}#$fdfzZWL ޓ#E/I 97ɶsYH=3geHQnO+X~4Ch)OZ (/D/o5c"qa]q1 N˙!;M!GFx7M_PWOg4eoXWR0uSpCUqsXzT0KLз\?]mtε n$I1ۅbh! P7Sѷ7.^BzXT zPnE^i'7jiJdl'Bv@|#"#J/O8A\L)L2\I=b|)׮B}wml7f=0z|BXFZx'cl[Ԇ=}I-^vQ,be:e. VjmLT*4xԓ#@/4@.[n,^`!enݟ̢Wޫr&ȍL<2絀Aďl%vǖ vSS&BGN!z%:F֐1~nMFܷ)J\OFŲK[O:"5&`iN i4blڶ zܲTE R27܎Ŭ{-yaճ,fˎ|o|PD]:G)¿zpwk=dlYI!Nͽے*IGSDI]l}ʣU29g*L&, L2UR̢b>OYeE Ւۿwwe3 u1WWq@izT'Ja7v>Sr"&z\µys,2=P>M_!Co€1?W(M:R@eLTJi.voB#ءVߤab<| ְ T BÞFugH:7Ft.˚˓nyaA ^ir^=̈́5Dþ{ X-xd|c"蒄 4y\WhI^Lz $]P:|Շ1=KESUG:n9 jH`AE{ vA|[S4(98E} t|-%O08^E׶ qoWAugK`nTwn{weS*jQдi%dn*8Mp& AW(n=uR MR}Q&yT3<]djWR%^ ^?l7b2B 12n]Zl1wpƋWtk!xO*61XQx6ZN?4֑I*?VO`|ӷms`4r"x&0 MW:0Ո N̷%ą I)J0Yr)}dfnXO}_[.U|Vd zT:o&m+4@?[fg{^x/cm<ħ[ı(ɀxI`ho:a(n2{H8vfmMn$a\ kwL#ԫ򂬂0 r w'G%!8Efͽe9&O%:s>~'OԙDWǏ35c:|pyHͳp02g(S$-6ܞ  3(87cZ$Xlhڠl =o#HTljvcN^"*?%.= M6dWX :'?ۦJGv.P4]oBC r_!BmT|8G %9E}sD!#m%(J.v[kIk߃uӂ?݁ )~G΂+r--O~"HBE̢#OǿC}ww"2u k1zs[05:dI:wJvٺ㺬̚ZGń {R5NrN Hu4?k݊+lvlH'̉ߣ%ӕCb-}`!8HޤN&qe]ZO;Iٜ `M<1d s­[+ʗ#hW(vYH]6haK!&$It;EGr?V~}R x7*kwtH1Z`[ݢh鞜02 qRygnpݼ7#~u xfvՋ; fݘޥlIն*ʌ2P M |l[U@(R=ܽsleLEq޵SROeVSv#лgd`PKdbgG3ySc&׵{ AS0|5/D0*TcKj*B#f]j`WKnm3:}VI=r ~1'%@ "DC56׸,@pL_τb ? l=P: `W2@,$O*%7͌,hAVt@̻͉}?׀׊xwyd>c9jd\p,H9y֮%O_ʯ7B`W@ ̍_1&UddQ-7 >-ڃHx]>t[h8}XEL?HUcA0oQsҮG"f g֮&A go{jŧ2_U~JldU{d r^Yj>u ŝ`?qhΉN.n2N^pWްF ^6?jY]>9ʇ"RFhU5zSA`5~]囬QhxmB[xmXX'HQ$sdK~ۘ_Heզ ~xO1AΝ"`; )T{b݌-KSJO]u;qR 2>┺.bMlZi<@sq<#hٚ[VpF$a<:'@uD}JbC G2c} 9ZKfÉA: Āl >;Ě֤܉j9nSAD d]QFF#D_arF]#Moߨ8cHCJ}Kɱ PkӰ>_S@ -KKxKxQw R_Ѧ9 W]E01`{AyqzՒغXz`)ҍcl;}=ށpm 7Q؛a D8K!LzU"vob"d+Xw2S7?o`==M\|tⳢ%+w[P27?ZzZ\`a8ƨپHFS!=68٣!A*8lfD2D50ah +*mʀ#T]=pEޟ%xD SLP"Yjb$ q@PXaϠ BQϕ!`іVΫotO\> te8]^9x\J,C}ҨRQǎk үZg2>@3t?!pP8LFj֑o5s>a=_G=&=29g)!g0B@^)7lF4zƅm6LK˻YV pTSr){]s_Կy.摤\Pe#ˀ#;_˙D M9>DЌ솗ZOy)_I, )|S&G-68etS~/bcgAeZ f2iHApB1Ă'q1gt/N;'vߚ?=bO.?[VSiq%D& >ō1!xxkhtj ޺ Xɐ[l,#Y65ҥO$(Nm"tO]ԜM^R?)ī*i.#ɷng=_LF^?$J&ePIEE/* 6%ZHrxf&-x'jP>E0qC`)[́(ONX8.*Qaa.FCރ'?L8rI| HCw\`)KWN%b(s;^ C@ܵҩἎ| skN!"`MgLb{[P9ҾL框?rlHXzNP2h ᖱ ! hEKF-E8O)N42R-ZI_b.sD h\4' ^ku&IuTݱiI ORSrײ|{ J4I*;L{&EmCeEfmm𬌸%s/=8E$kA bkdi3v+O0_u0֐Vn /_n5ϥz)D^?c4:#@`~(/cˤ^F Nr'4Nî"IwDX!j75$ި p(^#Bmdp0 7gA^"L!3̀#StVӘ;tiGmTncHM ?#erzB0j'.GT{HjL:|}6g2Q_SYhR]d< $fe6\W(Ga?3nu]I1m  6kSg6j12TUN6vENOg TNY870w-E VaӍb ts+[L$)QCw|Ryª| | Oxø?JFZfz12&$f:%~2g޹ׇ/.n!֘Ӎ3T<~|nfz$<'3Ez/]WHݫNIVlb0&cÑW~Vӷ4MU&?f'xN$>Rc/NSl/^hRN [@t)!uG}PB>0Rn};tHVk^+؋c7mDHkɩp8iEZ@Gb0{Þ].ots~{?%*-@1Џĥ3ˑ04.,<"FӨOܚG=oK5'p#Aq;PлH Hid *Ip bPr$Fi?Ρf\1(}cXD>Uy+Y(U+/@lŨ?pR?JْKm{U'eU3 MUgdp/\kʞ[ce Bi,آͼƄU AT=`4/tO3%3~@dqǕ:/ppT41_vw ׯU=d'P=!8QXAb"۔bٛN LlvvܣU\5 4/Uq]rV?` 6MwȄt\Ek{M( Vbw; 2OZp-X#B.wpSb5)PaA|dbhV}R[N!дi|b);:ª/mݭ)*~1 F ͐1M|>w[Ѝ4i1Mgj 7RXV/le#mo[av\ptW3ky}GGVhBe9Zz J2آMՌ;n$6(Cƚgt;)-`Et''9S dFl_1(&{SLi8S[? rXM5}T7i^I Gz2c;5l^ҥ頀V*=IVQTI~xhfSVR($±}w؂2YD7%6i|2bdN΁[7o:P.ՑoCVbO#*ÕTηy3jıfu(p#sԌ$XGԡ_ H{|7uϨwlQUt)\O[ ltRuh8h @)Ӥ֏"'H:<$d p@ 1+q^F!x夀LRQVu] pE=3xi wD_g2RL[HI'[3@DdQ*naoT:5asVfCC}+y vu-e8 o[nE|߭&6EAMys^cp/揜8CO PtJlm(vxOjI6z/%yӖzLb*!`ԏ˗13"VbOؙM\~?? 'q&C<x!MAdwJcvk5͇c"Ȭ#peN3#vbnͷΰXNEh>"2AhK;F``q78gc 2zl1TS")q h<qI/-CfO y-ٿ~pDa`y ՛2]ˌzb#n)'p8C1S}i%2On=Nݪ E?6"CD gKJ)T:n/̞#m!n^z{KDm.V9)xr^J-m$l0SMaJ=5e۽%1sfCTV;(VV) Ɏk6JM޺%] ^F T)t$`;-.e<h<-Ӛ{HMe{ݕ2ki~TZbAt>Xk`25M&yc.Q9QVC8+7qɜSdvV8#ǾZʛNb[`My~8%=O0+mpK@: x#;vق v̜d K.p&I{dpWW 4AZZlW>t L.:]E7l>_ג]E>4 i%281񭸧y;o"y5^ X;kH Uw.)kQfjY{f f"R땟h}KZ7>"/V{|<-7mf Fw(hjq!BCS*jm&ϓv=U &\z\eCl~OGZ  lx;ClfPI } F_6ܼ`rӑzQaेPv9 )gTXuI:>cc$6YG&I1IRCvCBstřQx']m瘿X [;9PwkuQہo_d#”)HO9TC >am| P%M#n`$ӵN5,'#иN^K"P"CKBew4"e b,%YQWw9NXAptU됬GogYʈBVc.;}h+\G''0t+b"22CWG<AwuAhAC29CgS4bNnB _&TrÎ*۠}d_@*r!ڝB1morod.{2zoFMM'xQΠPɩ$iwu(u{k &Bx#@f/Iyr"!w.+<4X?'>SҁV&?iW>5f@sƷ~U-9VU{qϞӪ4jw$'L  j \!Q3la:F, \&Q'8UE0}8J@Ss!dy>RȪ6}_ !R^ 6Mn@.=u}#$P*^ _<=䠲6ZdҾr-6:e484?OWz`^"${/ ?b"P|)XO.-=Z?D<3몂6㗏&{̡󞜇,QZ̞Czk4]UwgMn0$*`pyg`3ܝ"{R^;cn9j# ZFc\OoCk:=5"05҉% 07ִ9=S3|%wi<<1@'|:& ;uz`->HFTPpLFT!EOt2)MwϼbFKp 'WS`1)iU0}4{&n?3VQ<(Pss 5XBFhm˪L"gu6U} -p}xwx͙yB5ԣfF򹹜@>2J>yvYTw"2Bn߮AtnE~9N^jTm QoucHҲ!xK(^`7͌F$o3AA,!\5Gԕ k L1ÉlʢR¡t T?O9=O75y:q0[ G6b㨭z| 9I va9u7&$Cxx&9xsrcXcnJR0˔[e2ALX>+1_&CR%D%j .rkbcy8͌{]rZ_z$3ZO<[BܭSJu9TYug6o5m*B_ k701.\ 2EB?t cI@'=V9ߙ#[biJ;+7;[M+1͏Y}O 㢱]~zq)}4F m_AUIukfbkPy2C;G'eYP~/o29P`fϝ5 IxI VrMr^^ΧP}]zҌSk7idbkvD fAO%@%r6pEHQ;n :6JxFyjYS.AEpy;y>hO|nx%$nâ xAJ]B).nnQ"`E[}#K~SX$ 5q09XtC !1rIWLRK.2D9ZB }+K@!,1y2y;2Xwʆ.V]k.HҾUo>_o k>獛Fͤٴv '٥ zO+Iswx_Ɔ,z?k(2MAh, Ȃ.F|4 MX~r[?W{!F%5\zX4[񖬼x7o*~+b9uSir3\=RgP6KZK[-_7Z'!i"/WU(l/RҪ]*8Ku:+2-V.tkO^e/΍CKvXe4 V`VٟOUl/4p.i5+cÙ%ogHj\q8b\j>[xcp`+N:ǯ:<2w@J:OrYO 9/䨮~VY{~[l 5̓vؐ1p-$(mR- pژ7Ӣ0y! ÄJ)Y)D3Ko)3Y&?VE  jg1ZOH`*V~uNժtM5{kRP~VG)⠷*~{S 5a/a2j(/tot"=RdݱGF=6gp}tɑ4Yt#ߔ-y ?^7 {ك?80 ]:%׬N4cAJyFMh&فoէ DqL^gĨQK_wza=ǡ Hʵzr *TR2-Őj Z l!zTC"%8H"Sì }۔ݯOAI9j;Aik.(Pr`#4᫦[G«ϰ)}]*_%x,3{=G$y@?=&y,loa0 7^C[,YYT|b]5?gI̋23㘁,*Lj~` /ID[xR0Vd7iG&lɊxGg Uxԅ{σ"Ou\[:S%C> 똧}c '?cX.=r^ཛH.Blv?f}=jD~,x׾xoW2D% &@qe:aitÌ'’|5|0"ՂΤ {]z4:I ]:0uD٫8؃OWZ:+8aj1a-ZByxdUܱ(bu  `n?IR:9)>gBifF&&*{Y=uj_|Xgs<&IS숗Ld$ۈݎC4g'ĒZ FSaw/*Sq\.11]VWq[wAufo3q'p.N LD j{GH6.#'J+EKJ8[v/E4M\ߤu"Wj @DKD9mr-^؛&t4FAI\qsM;W}AMRCUb8ET_"NG?S3*i-CBq}b(eRFFzkK@Emdw&0֞3[J6s_tŸ⑉aEtn왿b£]FZҷImlQx- -)PH&l Ay؄1kVpInF~k cʊaHl5t 9GO[G'4`"e@ZTU0F*!J%(Du$X_XK U-kV074iƤa ȹq1QdA9F]k~{>"b^`tQjDj0>ʧ*ܼZ1zObIv'=ԋ&Iw/NCO^ؙNJ vH+4mJYtDH;܆^T!<-6Ø;pI @6 ,:US <2S'zxlN?`s/yfuٯWPՃZOu^GKY%DbkW P > ʹR 4G†+ӼT Mct@AR "d6#ʇ$Cu%?"k]\^W0lg=ۻ2Q4t"bZ! c3+<GYq1 iϪD"`TE@M ɏo0iөxҖ~u[U֞Lű5ҟRn\md +{$Wm! dfዩo+,{)8Wleٸ*M2Mteu wXjSAjt XyaAc*3.z:jƻqnd4+&٬8gs÷a#Crp5CdV/nhg9IS9?Fdwu0~$3o!eYfp۫`]x(<%2݅cI:j W ~Kd-I[n"W76dj0]mƵ~M,8VjTv!m19hV}tekfjSJꐀ >68Pwyo'tu 1P6ZVΜa?Jm\6 a 5뛯|4G8b} φlJ l؎*ĥ7Q/>x[O;u 9R,B;TA'8ZJrmu9PBq.N87J} "s?5}#@/&k :x-|fz& |U\ʡ5f࿣֖KO.7ʟԓ1hQdW$p[ ["o? |Tv-rt$a6 %BME 0`>2~Uļ*(ބҨ_cI߶bb]6DԭRhW\.wKZo<-16=wqƷT/TLTb:z&ANA{l%GajYf*,`Ht.C2q2g&)=kd2?B/W) kLADο?~]˰8Jw#P0k~d $1Ypl%(\ x3Zm 4H4=$yUܫY8)ssUsxI̚DYB:xR@fW=ɢwlFn@f-'c2Ed^ I4#|WߎFȿ Yx,,I7T7WR۬k}Mh[s_\QB;-^[!N]|6 vT`ruݦV.7 lmj|7E^.jJmNcE]>89C\2:м36H{] 5,_bWi+rȽHJ@u(7^(7 >|cٹS;lGLw3T ei-}}F؂Q`ĺG=x5IIv%at6:u2$=&FMp,z&Q;q@-a7WpYq$"<8CaXXOgᄛ~{tEb8o4Pq˱z7)/ QEhɳT$Us AJj ޜj=BԲPYsXxzߋUz10EU䣻@;.C 6UɓwR܍X5^kԞZ=B+=r[WٽUWv-狀d~W$whYNs|jL &]*׿<9x J"\z I|'*% u4Boz jNbo-c?xF_iq_u~?T@,"7``ꗝ[iP|&af$T[f.L%}vQ $ FA[(%O?a k\xʰyD Fl|$\PHSNSI#x9zvDsmX͘ƽav0V5oėêe>t>ʏM_%EBR60+NG#*ZJ4) jd?&>TR-) NNC=BB\Y8g1 <\{~xE|76\ɣcw|HB+Fu bwͺTF8fcTU8*g| E -z$9? 6"st `ԫP!#Mz$qhWxkXҰ*QeMM nG~-|FWMp c@=${ߏtb?`cP/:ddɺJ_AUBߐKL0uŀSиr18$rQUsm_ ptvȟdՇtF6xX[^`{8+Yܵh v6َ` ןyZ\$AF$*-Wo \k` ۢN{3tՎn9Yn)ҳuE-ƒ;%3 #24,*ΕSg,JTM+7QGqfP~Vqc9'Ҳ-.LmN`9Аmf7in ^ґ\ ѩ3qɹj/y/ G* d3f⻽PR o>AIQꍵhD91kkk?uZtVi%+%چݭG3E)Ѷ C̸X 5U]U׍¡۬MK40[B[6||_1[_ڞÄUm~4O˧B-vאGtCRqLDP/LjY-ր:aDo(G4O>1_<[C7 iFZVC8;wv>y9nL]%ZɎR/_0'bpv&f8n.3{\ &S^^8}lUb(.]h^MIё*C~x˪{_絅FnYL 0<{l(j0ʮHvUJ4ppVSUX@M*;MV,\;XCˏǠVt VEꤢ| مR;ϵ͢Tkuk(]-,iS#3gn[__`3DS -SzDr%561X`~b{nHE 8Wn ޵d@!:Z7\-ҍM-2,qnX"|e >Q#ŵZ3|&5qA4\6SP9}TE'?"1.̑dd,fյaQfD9 b?`ltX,EjD {aԢ2lW%s?B |0Lj!4<ի)f- Yhoz kX'74:Wrh E* ! {&ɐySq3ﶎtD(s$5ɥcR(b÷&cC[ehL*,ɟY\˔ehwE;x(,4R"ߌ02-o>?7Uk̂1'.U &52kG*Q~:fLMA;kb3! '+žr41GeSd!hA+W䲈_32 adi؎{a"WuT;(OTy^;f/n`|3?p ^d*H fy H + nBMų53$d4w=%vtmV-U kNM>[9pb5Xsbw1wjzΉ<fu3R)ά9ws1iCӑ7$ ,Py؞lm+ƞQet>4U%¹SռqY E%br`}kn\ʝW"ϕM]nKa9&oOpo)sz3^ ` ؽ 6A::ު]pWc])8s7Jm`B-5!ث%OW>6B8$P龝,% H7ѠaC6v&_o?] Ѽͪ] ?lX H QeNiWH_ o=&g\%jI/< CZ:$ `#dQCPDB(w } **@ jZ<5Q2m|&8<%ҢP5!・ym V[Ts 2VYIғӂ9xuLV޹qu+{D [ 2v}Q`:\[)˅YKR#ǙRu`%~S`3r[42mlK;uqZq%g딁iqۻ @RirqgcC>'rEBICk/'0ul4A ԆzWY:]l#[Kdtȴ!$H?r t{V94{hOLa♩ʈ.; 'VD#,%BGÃWp .p (- ` Q3-\t'eF5"[_ baB7j ppť$:U)j| lM9L9{Owc96{3X'# ;PeS4%3\6i[ǸB1U/(L"(HG1_@CsNRe"^;zvoT nFn$=s> =?hjr²WKx5v%D`큋G:fRmz:t S&`j.O<i}SSWU}^!*ϿzW!P->ۋ=KZصeZMڲC[W^Z/ߚR zE.Y4&ϭ pYfc6V dX|v&0hq &MsaHl˵艢TQR =!p /l "(D*:4J cPtJUMkg 4t` SU -o(;O|_!5ueqm ŷEhߴѭ[6pn6͆[䁄R VG8_Jz66*%8h?,Z6ke*8Uc#V@VX+pί-}rjiF) N>H_ftpvZ֥(:8H5/%gD~`̓5J}3Ɣu:s?} 3Z:!MHn3N|\ugQ*jzyQJ;{WOtbhYxGTSϻ 8q)ջSf~xuT 8>N $eYcE6H3ˠ7,e1qhJv) ٖKi)ul!| 䍐 [T<{mjsRc?1/LŒO友LA3E jSe7lř!*UZtw ٥$a?",{6F72o6<ˊOeT{m ^Nzx6N'F=.P} f"n֠7_0No3z嵠i. tzpN 7@Ek![o]y^{F4?,lAlPd ܍Ԩ~-bD0äb&K*Ê:X'%cB|LYq6j@%s6$rfV}kC[xRe0=$:0&V)98vKPQ mGʼnI {ArrOG<B ФlZ/n̰Ԯ)^ 5 ""2h0Z85 S $N?R-B=,pszRº tEƗ8qw^Σ@xpM0B}xM3d pT +{ѕ@`-!3jeӭ`PwS1W1L] M1f=urLaC'5$dcU̳K}BS08wλuި?^fRH٢cc(.Ke n`[3l#jbw58裾Q#cC{.կ?sl@Ÿ$oR>0Zt[O,dN3;NAՂij~L0a|gT >3 )6Qr4%C:$pMu&Dɋdv&Fz3Gg]9J*8}I/zjḰ g圵.aᥫʝ[՗e$ί'Y0xrR-r-< -9{zQҰ"7|$\m>gB OPLb!\)?[b8RZVK_gs옄oX*mck YzvtE}*ޣ357Β,)Lʎrl^#ˮ#Gc9k}=Z474Q9>USmfC͂RdL%H4BŞLik`G~.!>tWeaf<. H 5(B\l 5hdW0lRN[L>FU]\l?4`ud2C[9PSրh#ٔ_5T/P1L|fvO[^w٢SX[LPk'h Z>U9wcے2n8B X}4b'C˼)E٫73dLϾ,+ tI;;\oɿG ai-p3$h*b<N 8[-0TԷb |Ժ`BrZXjCE.ԫX͚!܋کz}h@NUXyȴUGf, ErؐbG ޾8lK6ȁ@?h)F zyշ"+~gU$r, _#Ѻj[V-ae cnk :)<}TRa}O3 ßQpSŹ'& 9S:bբ@rrǮ ,5mL˴IDbPV͸g`F0LZ[eӏ$I6W|g{gonc }cK㸗q%"쯋]A߬q[BѱW')&9{.Fu{}yt>J}7 ->xr޲HkJ{^ H˂rh^nP'2_59=A|hilE7Ns`bH K>oJΫ%8ی)wѮ1bqk%-釩`WR]E&+]o$ >L18:{l5 reInd-U/2Dܹ %oC50Ql}7E)Y/ԟ7sL@ J2t:~&>'`1f $vߖk249N~*`yKsãGyl|TgNZPȢ=[ 6\w C@AgK, [lږj:Oq|ƯE^* F БZz)y.g_]~ 3{ۖt'=!K\Tt/tfhuaIq+VĄuNPKg권$\AUNkcݫbe=fE#mꑗbR*X'z~E}3 zOG1yZk09JÉ@pCʇ ô4{ַ"M?ߋGovbD<.=)f޲JksBNdD^8 M܆aE׹0sWoThPPy0-<+P!`eETMMn1Y*VڡFie򒶠 b6@:Bq2~M(ir` S8ızJBvX)-_Lo'R%sbDV?'wXx&5lUH_Nc"uW~ +W?5LV; ?= k!t%^P/9{޼B9mʦ\zՎ>d|GxDڔVч"\bDU3`Uj-:7Qɛ~C%.xPb!0,xB?4W-˹WU-s !i)X8=1u!W9B35!=lm6FD&:GgFgVR$l^\])y/b vqEW|5_(Vȇ{Ħ P@mj*37 pL+>`L{ λpef3TBcRRH8T##c'fz#^r+Jpzrn!cDaV\<N"Q׶5kXf[G+? x!n62|!B㞟C z%~vV*z;=F D n6nS@JUEJ19SA .i?zi (;60=YspDMsxg %*YPk˱kNjlN^B8D[A% []uS % G|7r5Z2y#ɃeԣFCc#:7_`A(n @xDal}.:{M SrǾ!~N:w ֟5n@A[q]FdvwPS:ؼL$ԅφc jDךGM"Vɣ˝}wY8_Xl;^*$'H,4?IFU[ҚN(O.uqCl]!;HjCK-CS:`R˅-f}:˼??n?zzq mOb4)vR#Vf Lz!NY'x9-&͇:lX{|_B(Gj,sev>  4gxwyOJ-NbyBM z{ $褴6 Of^sTq߷Hbi ]TK"J+|kg8s`ZO3>UHU3?s^m$tЈt-K/N_2=ƈ* vj@#+{E4dhZwYl҉~em%jV1Vk H/LUA5)pQR^HuC$ e*s|ާ1q Ndݷ4 HSz>-ƶE® \xr? EO1HQA8q<)){sre@]E RȀ,q0gV[#r<x%[׹LɆYՕ{ݵ\[O 0|8E;1M0p1\j/@v֍b)HƷzb3=Wgso7}\.΢No\Ɏ,^ 5t)og251hl84BTJf$֦Y9L[i 4cdN3do`XE`DWck+: ojb .)'99ZkU߬Ph_UuGxuIk ?>wo_U Rr++a&&b% LuR}9 ā;r6RfWy2ֲ?=ݨhCJ*_׌&fXOT =<]gDT'9兦 [dYrLLAx@y cE< PϝG VAB}vĞkȸOkr#c/EJgkH;F!s*=ъ"w|AɒzjUR "87%0|'. c<4ɇ/ uI3{ !3hػ[3aҍhc ]CKZ0l)RhUb9c@uba/784jN+J"wA5b& BwBʹo7"qpvf!foGcI' 㹫qfKB閬 jB8T{}RG*Bq_kB?;MWKszˋnezSJ_w2/|T<ϵR!b̸s!.KrM.َ8yb8S8ۥBjBP( -i-|g`L{|zh)<or^^&(N2BY{9 v裥Dl&o;^1/7؃~gF4KVNdRT:J7Ocjg>#Vh{͘B ;.DZ)R6"Nƿ8A`yƵz> 5}K}\eT?1#hdؽss %Su^P'fP?ﱂB4wn KZo,ً1q{hB h6'-Ӫdrq,PZAXh2E EqpfX&ǁjuܡ؁-'_V[ ȎӉInE^`nxVZ߲Dsؓ;(H>Y1ͧ Ubqb,pmWA5hF2ݲ'Y,vfnǙ|2L{I[S D#\Q7UEsK޳*a#[)rmS P:ٹhiJyFq`ﶓ9һP2\9}B'!G5qH7œ> %Р#wY @%D|zG{?E8Ҟ5*[6H\)*m ;}[|_:&VңkMcSSXz~5dCg'M  mGRO (Slvs CLixbZ?rV9\6L`th{>0͊:-)N[DDsQ5efgf+Xz)l~*D/%hOͶ1DuSʑ%c`_fDHod]Fu u|0rQn\ 8ͭs;a#k_y͋w=@JǪ>߲Y<݇uL*VE6"47GKX(m!E0' t"c5&`Q-?#I9Y -@7YGȔ }C{Z&d瓩uZњ[`Wpˇԣ f&}N4iYhҳ E*kQ5e10!{\–AVS}bB HާH pqdFLHX HCm&)&eDmZgۤшX>װKⷧlؕWJHuG2QW&&^ɧ$ J/Wb6žB8kf(u pOH`ңzb Xwijյd 6B(42]*Z6(ΊT9;v]RA /U;F.'tG]^?쨧rH iВ+m0<܍Z0$eZCB9Smɭ3Y-?4oҚog\0xz^ lX? ^:Yb*iEKÁty`_S+Z WuK@U3)Bя]G'vV}l+Aj?hlH.ɼ9?ɒz>A.x•6^9H>*w  r`#~{T" '(rPh‰k@ReVZ/>:>d+c Sھj,n$M~L~JoϏ{:4EIUjZjBN|=KS_x\g,SPwEz=yag7 ?D !0ч悮o eg_-qQd:A+x\-k.V[ 3=YF׊}4PRTJξٵ"GNۥ*.Or ճܴg;fHOr͙f *PlkL:]Ƴ0Y8^|n R1:X,2QI/ eF R_ )M~oF??Ecu+2{ m7Mb@l'As55I\~*ߥ3`manhzq=L^ፊX6*?8B0莥PGQmif;(Y)cAlAP ={@4=U1|q^y-#͜Of@0 ?aTG&L)@Stw 2'v h=]U0ˉ0LZ ]w~mGړƍi0`,a:^77He}tW<bӌ\Mok-s#U7hʛҹmÝbױ+3 >e'˰hC̀{t EMFOfnv6H$AHƚ{+yI B +>ꐺ|G ,(UjO?o]Rv(@@)/گxzn|1i2tfD8i0ynʕw?_@p9 uVH>,jڈ`E!cf\] 8gvY|/8L/b-6?o*TZMO>lSj0N^ f}~x}h /ܥ =\wj:a(d$;t~ \F]/fœ5-J*x.S^):^*&#6R2׊ UA+E@mwխ:E$jrzyU0e_Z~+A=} .%!l'f1|A uA@;]6˺\OWGc?dH#V'^R4+xOZEa*C-4a=(_//RoԞP R忍j",Xkss5) oM2Zm8 k10] Aƒ9؀2IԦ.j˴g@LgI.PMfE-= >:9B 9OE bWZmw[q,\V' j+[ԟ <#oDسRI~W9Wsz=:i(gVwpԢ y31cirbIMČVqiݘ#Xs/sQbU鞧h %vw,2δ70&e`(8Byݒ\X}=&kZ6-P6 ?^ 5`^sRA*͹Mf_i'6U15;.TBS ~,^J\ZX4v+okMƏ%#*J.w> NG_ޯy6YR+`*w6hӢCO+;ۀq4aW12%<ĝ6}\\b85mw ?Qq?d}~[Af¢Y9 _"otfR>LZ+Þ`6F5iȸj4˧/`Z[+;$ܢ)?XvVxr菠og8lX~Q)S;gu%\R| P,kEuT~i2ž *ywLZ7]Ov2J yc\EW8]5%fxp ur2{q/&;2^ QY)po{ On8,LV$x{г1Ǜg#wBuB{#&4S%&:CB1`RXH)dX[Z T]#-Hၿ#ts4S3y y)"B?sbLǓTھ1=7'Z ˘KMJU'@{nf𷥤+ȠFtuw8AdVt+}Hvϒy?)z~\(s@Xp7vzi(A+bz:; 8B]>]4\ yGG=0*_KzvA[P <'/bAmL';1;q#0mPiI- }EN%q q(ca9s!B+%31ޭXI~`zBS0]"=pV-3ۓ@{PN "o>7ZQ6rkΖKksR໶N`P?M?U|%[ >,MhǴcROTр(+qk<2F4:)*%M%{4vM+sUZbՍ2Νgpie (i$}ы1|+>@3k+Ka֤%'U(owlvXQ7Iw{*(jJA ~x$Xd-21>B4糾g%H&R_~9:A٨Qa"Uw\. 5A'ٻ;Nl> gy%m=vT1b{HuL©= 4XE4/T V4sak?&IZt\GR*h]ZeZ#N(6ָ:qYcRɤ0% NE!6p¬ xX"3@px O*ReNPiZ/ ꇹ va4̤=\< * ޏT[h9`?m~h&5Sƒ%/^ k1}6|!S^EOWO:tbfЩT Y=שl sek {w%97vMӒ9p1W'l,W6p4f0F-&UVL)͚ij~B|Mlz0Q l[pZ=,y8 B]r٠:|Vbܻ (l FuN?V> Py&ƌbT頋3A8{y,潊dqRXY ,qJ֏K%؉.dNbeo;,xET[4dL ?Z QV{q /-̽մ˜D >.k%sU} cԪS6=FW~Xp% !Rf.ɇGX=Dc>;w94VD@&ݐuM[&Aʡd# $&k+I /]xMgw=sWW` }>WiT@=\^6UpGŠW ZK"#C+FZ\BEE9P#>{LBm&:qxE cǦj BIFRu=(2Z }fÌME_ijFJ5-:yW$v(%  x$ёH\?[]ϧ|ՙvb@Å}ʗF=pARGkOba,x$ǎ) KM!q˹{ % _cd D򻙪83q!CIIv\q36j[ p%A;.;+0$ m{8һ.TcRjz;bQvo{]7I"y=F;Cۉ MN$n~ E& ~*ٍFC]xUL/-Dx :a 2 ;ZFdS8"/B׻iJ^> Uzv0ZrT-B֭x#VSzSL0Ƴ51T^<4H&Zy/Be7+)>Q)d(K,AŖk/6}XFUbhB8mN"[hlơTDֆ6g6փr DW9XiAHwᥚ z(^GO2֪xWkx=Iz2 У/q9jfxxb ޶?;`BY{XTZ?ýy͂mAqec Z+fNNr /s áN|I84Ǣ.?GF DYxޓ(QK̡2X%U/Y͍xĘfV `e o+۵x&4.DDiS\$+|4AvEUΩ=]@\'O38S c-(Pfͪj/2I72viѧUZKi+?+N̙HzoJ.('V17eqlU?<6 H3jx4oxjq=ht=wjs((<[1W|Ś'٬( bn Vݠ݌7lJ()9YXJIa sr:~)ջI/[X&,7(߂ɧvqkqFǥ>u+CgD[J+Boi&KGͦd)p]s.7h@w0?j |!W̄b{a^2Q=\V_QvQ̋h1Ǜ"JEWϡ @ť]0)<1[S/-D &dW,tB$9> {vء}쭜'0C _qr/悶u.mnE8߬=@79(X`\Y E-RKR&EaҦ^S۸1}-Xqs?͇:/mxB=;M= P2 -**$Hƻ~/R]mVi c^6J yZ]?~ 77G5 x1#9!Oi(DЪy$R)B/nJLlx.-g:407CN9v=WDuU"ɍoۄZр RG.۬`>c'9DybriΠ"'խU\Wn9iUzsu]g>-CAug9 &"j9X`ѧXhGwɳ"mNgłg,eiIf1~_k #ôn'Lqa̋4O Ᏽi1ʤ.a9BǼ 'ըzlJ,_܈/ߗ519eӬ[C`aMX%ciɀ6~0k 79Rf#Vs4 r"E))5pG|s:sNc.I>V54UN̤gF`AW~!X opI(cR~\i *_WoL%0︣ß haSLd^qYx`io@]FqTܸ|F8I *x,EثkkS \MtNiKj!'Լ#?H%"9>-u̖#4ѩ9 sJIǴǵfm)<9L ߻BO-5?Bx2OA O E3gRfO>|`H1[` Qe|uo%Eډ2 x%hvkuB?RRgw9_FOdUnmoƯv6LuYAuAQtSeh4Ⱦ2C (dG{ԃBJ {(`k5m'SEYz-#VO'#Ptuqh+Ae5Bu1Nx,y]TKI4ުv-5''^DgͫQUoٞtCa좴kA)gNbؼUANb;㡛؆󯌾>һ[7?Fڀ}̢ZE,ievqQ~zh K&T֌\ttk?H;o\GnB$f\F?yDȼ,Q7h^ ׂ =b1=$8;:.܃Qar9Ayx;$awd+'Sv8,$蟧iN82k*j!+5a5XY$J(mQ=ϣuTq{`[z XLstifX᜸Vi2>A?(Hc..̺KM#Wٝ'lo\ c| pELUlwK^֜>8@0꺵֣C NO 9:EݱK!2XD؄>^I+ |`O>χ[R];NuHg~/8djB!-:!riun 7:'Р2x AhxN.B| ^ϖ#tk*tG>}^yb DR C$6؅9UÊ}P2'igWj-QĠWWH_S"Z^GTj3ӑSJHfUlb!>Mõ swbݛ6˒L9*^2=wfDǺL' '%ZW)cLg,(sxni|T5}baݸq&0ddS۞ R00IzMh+'ҹ ƈ ^3)OuGx4rto!`f{@@ϱ‚D^`ݳf iY6< %p1]藪(aDQL?@zU%!U 74h(OӘz_:JJ]Vwh*E;szX76˞,]u*f-SbG+';vþlMTb^8<B&2Rp-'z7+[썁 QS\,ۓ:)~ O롭5a@(?@KW}bt1Y݊Jc);^F#'{ 4nHzP֙rI.cylw>>[l({_3DLm.Ӥ0H9@e^;ϔ[H\9{jnWbM4OyBb0 ~g&2:,\C}.\a(3CA$EwƳLlZ͜J=$VEq'R-Jߤ*fz.POE@nՂ:ԝ_>[YQy!V=9u6ZlAVg|s=*pt m[V^^nclA~1 h~(,Q +< mtP_GEz. %$AṲo)Ru+.r vYD,gxhײ\.DkƮ3r]*sQ,rևUxla%[=ƣU#*Gqȃ@q#x[B+lϰ,zlXW#Tͨr߽b릺flw kO ާrQM܅Թ|GIfp fGSIH[?ܙNH(FEf&"g0LazL5SN+^!zt!r^ƈ-GU(3;ْqsI^B2>yax)?ѹvW6yZN{ Jxa B;wUJs[*/C~ګ\3꫄=)(LU>JAY^Ǡ4. Yǀ؋+v #B݃ЩBq" z?NЯߒ] 9Ϙ{,?˻EiwS=EKW-Pwl(@#8!qz5V(-(>BLnn:+BQwHO;nwF/JTֿuڹ}lzOK&M)8ߎaNȕRUN? |,D4q Ÿl{sLN5wp_yD`'udeq5aPg )yQ2f/랆,{lyO`*j9r ΂Dse:܏rż.p@ 33Vl.fm@NӞ䑲lq!w8KV.#(`pLҳ%CXdn!6;ocG̨xָ)5PɯPÄ~Z+ $!*G.}:uj=aG4"צCտ!uX_h˂?ĩ3M, QJq=~\~I’_ɝΒ35v-ՙ:xl6U)8LC6\I7M) u0UlO?/kY1AlVhf;BKv3"b&>8}rƳyPaQqIQtj5$/pTפ'Yq  a%א ~Rf}uQje2Djvu^%Du_!Rq9 9>N4XğS`V%usNDj E)ۏUP;QTꯎeHQæz,Fd{ Q5G[p [X쇿c(Unq%W''!FK^yխ*eE\_]GVg(bI_7ַ.n{(RS)qn%\"%ӵ_( 98 qwA 0T+^wTk?\!Xϥs~ivcj}AW4P=* C cy9A )qip[G%E{>p3 Hu-ry5L5$>b㔶G& Ӿ''q~{ڕVklse]ljN2=G7Fᛊd)+/ܴ@v61*pYw41n>%@BEa6aP|fV[{g` Tjqsl[fip`wq V<0zȳ%y^4 0G0anΨ-g#b!+?Yv͈?Z=1 me{z$SuX;ynFcEw݌!)N#2Q%{y]0#y@qbNR)@HhnD6'JK \^ӨމW?8dϏϠ$IԯV@e:?A&awCw2kVDŽn]m^&ΛEzhw3yJ9#߁z`j>OOD{6p Mfϲ_aWl(o `B/ژeLȍ:bl]|_*l{-Aam TﳚU&]Sç4#U_u! j5JGۤerR"`Set2¾!pF9wF-fv g6$xs bN9QHIZh{>VŶk>U\>:4 pA(ԑf^!J8~8]*2tITb|WAH L}w.i-U9J 릐0S%fB!)Ս۸ܸm&Њc}?Rd0Oa-S(Α"oNHOb́!/!KK}ڠM5\vˎL@>e!D䁋 Åt#))gt?> 5rYAZ(ɍ˳)Dt%EAu=Cgh;BoL}Ae{Eg.6aӦAB}}` Uv(:lK_m(e9%c.ʔ?2O6^y/p(709q^,Qrju'NiAΝ+=eJfQ:$80y{-CcPp\h\E4=f`9b򖹻J-9QX̶tvS**=Zn>x]hO r, $[f5uj/7KjjȊy8zrK]0/$ԇ6Ъ1q5 Wfew2j05,bQs2g `ʬ(]Jd3X(=`'~:^8EN'pqq~Nx]5 "qn`zÛ$Y")Lçq43PD?'l󵊑TvO€GֲT J!%un$bSSV;+9.#$H6>~LB9\IqJq_fO$*Lţxθ2n$<ՠ R4CGE)|ajxvPm07c!WcDO)ef4(D,AI9d1H`r\~f`qjrx!R9ʦؖR}ou %_ w=1e&]wIfcX>^rz.t[B1BMm!-}BuKzPVHㅖΥڃpa6$=;8}ޘ`xM_4!lg:y4H鼔K K6~F'芐.<ΘTȔDTpU]myҒѯb`_ ^xkO[v5gLh?:z}3 3X6"K"@"߉kg[u/S򓗸+T,#]AB~ztZ%0o),o<"50j:DRRn>gg,s{Og{NZ\K"<KV`C81-:3v ЉSq/]0Ĥ% ~)'9m!6p)|c6c'D97 S39ִaQit.Eê YFN9\ƙ7~\3&ROVNÕv rG nwmķF뫎bUZ>=מEVyw-+@3gAV\gaS\aRG@<;ujlW|naK&p'斑4i]>@G>_ԇ5֐L4 ?!@oZ|)}IXRG~(ny-*X$Nwџä߹.x((` ڣR`"wTi$s.n~96np!)a IV#va M[@ѻI~shZ2YwpTxoJ'=լ4[3P ]Ʒ~0/CsC."˙,l~]ץdk5A cC]~]r5M6(H`YUgd;}HQˍ\Eo]1'c,O1SW2Y# Mmy|V}/sBF@OmBM0C&+|5(\*,s+M6(R9) l?ػ?SUC߳H_yٙ j,@&ʚ"oo:T<!SA9b;ACRp-k?s@OI<|B`5ԑEM?:OXxҢ BqH.~ U:J\Y96lFzC#!wNX/*@tM%f? s>Ih8V$5%HMúDq̗ ?EaY0h)y pm +PD<-Oؘ_o؍Q?r:=#ƀXX=|u閡@D:3ܹeܫ)1'!6';[;j%eł~ֽmdދxqnېVy Km[=3{ IѮrn| 0W=M}X?Ռ\QE?}?H'&#/[Dz^m*=c"څ"nc$x-#.SG-1G 4ifcМnO٦l±2d۶<sW^9~HHvC?qZ Hٰ\Az1v"FS`Lu+*0RP)~@ ]mWpt:Z&8Ei"4P ^A(5(,>I5AyG:qR] K) }XƄ悓D2B8!`oІ@ ib%ⵑ"^؉oT1`3f8,?yTB4&>.*.Jd8hyw'`hFv[wb:3<;i]b>Ֆ(+t6_Z4_UL8&.\q/AgRïsOS(8t\IRwHb-6( hqoA!Nz ~35>P9b`aQӖ-zV 8E<] rj#B6- SNr7g i*d<1"%5g^\Qy>WAN6r󿂤+-#,f D J?mo7+{Jj  *B9.JL+SqX,i]|Q?UZμ:mVFQQ& ]v(Bv%xPu~.[20dO봼8XYR;H~!O$$R>M*Pj vlnH'WFa:#uMh1R Ƹpz{9ٵ.^Vݧ2;)"}ߎR3e[ *tߠ$W7aQŎ+c[`bbh NPMCs$OC9)V ߧa HM_+ Ix1o.UJ[#Irs:Sx_8:_١.~&dgq$'p5ĉӤ@-"xo<}g,ZnD '3FHV$؀r #8$]hz'FÿdFGOV.:60L]է lcDqY|lٚz#l:J/ z2urRmΜuzK OَʹH<ͥi LȽ |ڍY(O,73̊dS`O"Re_G3vެUWU &yՍ=s,6 R@_.7igB76dZT9Nz/p78 Cw s"q Dn@hB!`(ftTQm؅GV׈w+4ab6j\ m{4!w]s %65.+_n67.OeFQpC/bؾHvnm$U<J?W)^O,`xRwp8"axh<F4Ϸ?̀efZjJd QIC2N;h ~Ǵ#ПʀⰵvB+} uSнg֮15mySn- RmVC$ۮdK^"n)Gw?w2PG{oF$([:)TyzVPIz#>ȇ q%T.ܝ8OQ3{oЛW /{L`_Z7gaHMP1 R'E 2uzz^Yvug ˅B]J.~ ܔu0qͳ.U퍺x&tQ\*+kYPOܙ@(!`g1VSqYf끚 D]Z;XV|m2xOYv2⏗%ŧ6(}c<cK Pn;2 ,: Lkݧ="7贒oO6R,6#J}IrXSf`m/i~3s =W}Ǿ2|.&\k 5fu`,A. ݶq$xTKҰ. nT=V׸dfw\AqE49F SiLT^%]cĚ-ì8%t⎑VmѹRJs>6k'BQnO;GM<>=yAr!&̽#&%!U?.7IA3x%>b0YVckFD0hLlD1IF IP/~觡mNd,n (&2K{Lb\]/e(|7IIy@=!8ߎb5TI\{dFi%w7kQC1p.dS~$<.V%qqCބ] ,cbɬz $3B@n;|UKFϛ9_ډj㑌Qg%M1uﶅk aYDW7 wZ0LV;,) b8kE +t醻dԹs[y+8Ph }Vm^oΓdRWB][.VZ-Kn"$6ϟ*N֓Z1B*$]Y/"i#>X ;gTsz[-T.@S}C+얾c$B^Ga8˕h[5mr#z{:3k˨ ?_ƱܴsUG63Y[4!΁}=.. eg= ._gOI0ɥ7Jns ԉ <##c쮷;PV0NDzsJRIЇR -_ugwmD9h֭2 "T:`-I?bJ).1 :fNrp/Z,gCoxKV1Asq?^nU OATՂ1d4}$T.r/O5P@e6P4= 2gPњEI .4#+Oa9sD)^.[-RII =m!AM-f.>:7%_(XΚ޼ iQe;q`C3WmZYnN~ Q(/ h.1_@, 6Y?7|Aț<=KgHʫTOU]JB6*"<&]MpǕ5a Oc=xa/J95[2ǘ|%< Sqg)2ԋ[sǯ_6ŤC>5 "cRnAц"T,CcogRLvx% e^L4ZY]Po@93oL*.4)nW[:Sa#J4ԂH/o%5ɣtQ3Ǿ2LIcWE {aEߵڟ7Ϋ ZGZϊzS:'66(]0 OTKvk'HwI@%OXҘ@d&+YҎlS/<25TT7GܲTM>C6J`:8b(Rr\+eIlθ:b,OX#ޔgO= fgsQ"%%f"b"|@E6+bjXUIR)GYgTL*шR^DBNebrՂs;%?ZP|b%_B%B;d;!Ν Sf$ =6L4t柽1?bĥ0m~tg-9SKYhњI} !oNNe\)n~B!ES!T9Hŗ >Tb?>' +VB!G!?\'#ûT,yml.1h15r[йKtbc|r R6W)H* $.HjOe٤~I]:P wF̸/U-[ICLgHV~T7Hz AU~74vU%bb:k0WE]G+ ܿ ŖɤX%],~NF׵Aw,t*T@ ^aZKuueem1E_ xA'0ހpbVrf17ro;>cxp,t6W?IOܞ-¹'s*z JS9ÄZ' AS|̢H̖u5]Y[u~6n9tpޛ ߊLS;3QN)`Y"Jrp';,IхWY|{5Y($"Zt9M=4-º+V9HLffMκ؍[^UzG ^pũb1H#j;ر%Kxza+l@fZ9e93Oa=m+Z%d@wHyks)iŚݸJ-5ۇumm`od,;*<B6dU MX !AY;&v7쒻ߘ۞[6Ü=~vg`r[}|Qv[t|0#7O1 rSA) aS5VX j?::=(f'#4'- uNwjjq#A=TݾLAȄ L+A95o℔ Z^I}8_w1<KaU:5$i4—y<+gO 3̄Fy%l_2BSc?{dÚ/pGHєފA{`RX{xX&HIC]jЭTY#Ԅg).-˄`ڜC"rfq M;Kn6M{U/N_MvZЏp 4za=2[fIYpp&~]ЧN 6" p>N@&Mdz8ЯnPVOH.cgu6pLj-^;a[MƋjd99d'P*PGhe }*"*hFdq_ m~f53Cr XxUѭZԆyֽ3ypkimq{bL-nOZ"IGkuY1lYԎ?phn|#C#75>}ߣJ|c/. 4&| ~zj@;Tfa20G=y\MCJ:82)feA\/y17+}E)G/PI5VH}aXwބ{ĥ m|v7 No 8!:f*'w2YNMCz&AN\^|OUŲ5@P9taƐTs@'޼P4?Y6o N]h{wgދnRYC&wnncayo$(m>zXYף:"ۺ\ј L*Rs;ђM6삪Bʜγ~bf|a6Ó48S62ԭ&} ͒u%Yin 5ṭYe'Qd$qpcŁ$ ]^W~kP$KEw$a~y]~='Jqo\ԚD^'+?8 ,֯Hȴ3=;pPk2)]?-]۞ yt|;P 9Mu÷$hn>oQn]Wb[Q J&ꇢ6u㟊 :[]K#oh.;e.3Yż] a.QNVo-`!" 楄sK]mx|({v闃AkHF;ÍSk&ZL47=A6t TI8!½%J3M'PŅ%qjwַbڡ hӓʹUmOMQl)7B%>{蘩K"@fQQ!rʓQsJɼL(>[ZnJ1FVmTi7V[Vn@趡`YT88g& >ȴ D61@R7,G9#VP@ѽTXRRaB+ kYsynJD#HlϞi1E>etڳ-rIy&}YլĘÃNAu^H8}5YBM~Շ޺vZ S~Ό-1u|Lb8SUهZs}& ۴#]%z cӰ7b[Fd KM"]:!],醺V3Pjd ^I1/CEs[pk2OlID.RU O̠*#}jFm@4@ yiߑS7yKg1Pv^ \x_uڸy otg8 f3mTr,yБA *3 dQ@v8tKՙ06_$b?AIiUA9oR_V39G[VD̶.Rihzٰ`&/gO L}?d }K%.Q]~\(@V~SҚݞʐvjd3},,/쥽$&d~"s*Ơ~DmgY$ o_+}3dIxcɪ[ _ct.YE91%i$tR|]Q&/UvY]aR!5Wpwv.3$m}!`vb X|5d]-nhVfSIN)ńB(/>1ͩ|5k2 2R..ke H9[(M~EN e)y]]T^ g" '.%^Aw#%[Plmx%ǚi\!]ESG[UAqMgrVH7oRq!h(ŁY5>l?iևߕ?o g[T?R<`/Ѯ&pwUCnRTҎqe0SijKv-Ӭo)PfY#Q@}Ub]5p}F`g :{BK7[&g9FD'uK &Sp+}ɘ+ǬaJ0Q2sx%Է_ KYy_1y堠3 wʅ1CU= WA-M9 !'3z^(nfI3ZjA[D$hrwܔ\AUOŗ-5:*gUh 8)KBѹbse{&ae.5_RAܢ1-n'?ƈMw]C#/q`⼆ IH)j^Byd`/+,L 6 ,! 8ٛa2mr,{{r4Bof_jk'Xf2ڍX C۝i[ \9 GzԦr,ݝ עqK01b(_ saTD{&P\X@>$+󹩱WSj2 MQ+Բ{#Y]T78յ{}+=ߐ'Yå. Jͯ;waU$u k0LEqeӆ׼4sTr#~. [)$ԥ/4zo4Nej*(X=Cr/uGgZiʇ8j~g3K,:Tۡ^o|E8{9^/Y6h k,cGml#)l5ϵ.;nVmgه_a(ҩ r:?O1 ×k/S]ʴ$qT0v:3ʏs2O96^iI oڰݮdۤ++.|-O8mpzVNLwZu彶e"Ӝ;xpI9iqs*ZK!kIߍ7bS/r6?-[U"S_Vˡ;ҖQy( Z #]˴5GE_k%m~;FDn%盒 C~d"fᦞO'>L*\X2Ym-#!/~㭜s}ZH::mouKDdeMw?hsE!AI<|ڡ9~t/#򼍾4d%9 -cG$Tፖh&\[_"p."29C AΉ^5U+1^19b\URXן^0g/&"5uE˒MmvNɠp֤_2"Z؉& oRc",Ɇumnz439Rx]^ʸfW, s G'_*ē'ی;MYVCVԁ|:{4$ ҥu> <] E 9}! Bi߄5>ד1s֐33ڵz6pv)l3X:u!m`ds{#Rm{u ULV߸нԏd0HﳤL*Ev)Vn"Ba3Ѻf۶j.x?K+X~q`O/&Dªf8-bH%  |]FrXtޣTb"IMX[[1g%lS8Li!\Ի< b ̑:h-}QpG}2)JlDduEխ[_ۍP~!J5rۆ1Frr] 6:Y2;pٵ1 V:ZնC1 \̡vr@b:?=&k\J9} Wƚ.|CA=$"ݕ&{{-e x9=76&Ep.h g]FGJvq3˰:(Bf?H6pˑ|ؠ?%'5m*.ٵi^\#)(ׂ gOS$/veb @+.yXYv3W^p(S>mJSlVYt7\918qzPFt9 mfqfsfT@v`(1.xwŨب^r.eD2,tջg?" dTRg@6Kc -q<|ϓMa{VF}nvfYa$ -1-WYr/576Bb4 1Ia1I` HO ]g\ao;83׉eRPU{yxAHl x6(T(] w]0)kwL#?j齅O1mopW*_nB) & $r mV }. {/T6VAM/>Dނ>'-m{DA(acM o[lwIKJYĖ* #7~UZw7<>?\ PG>P !>ӠNg$bey\Av4<96L(V* yb(iw)0(`=܍T`0k MM4r<=M&< &'E[!$aU`+g]KM6p|<1Τ>N:4Jm<G> 'a暏)dVT6W`]&MF+KС: D-{Ά󀸔Ei>+^BKmm8TT1ɺ<ӭb8k[ ^ Q_BܯܥM}Z~`Q:>QДxDX`ەtF݅q-/=FK }wl2:ͦχkTC.t;FEt45鯮 !; _.qcGܕP@X`mIu3e =j &nФKL0=)b[1x GuNNq9's? D S-k]tB(enN3' yS<-E!j&^oWb @ůEl1]Oq=ύufaNj@d+qOгL 5~_?uFKli=mO8@Y'+D~(|EQ_u]6զؾZm 9Q Y-mxƞ;!CqTK8rTA?_gve [Lt8E$eJ=iPS 66*C=WF}dꕜڹ%xDFHi"fP ='c^ 0cdB8 #t`z^iM݋J-Is5.'Ui|ɡQ⿉d:VQs1iI}F)+I tf?a.NA׸RMi8b9'W X53]~~NsBrIY`N#Lh|0 5{ U\k|dllGgC-0ǘ3u:!?JLe<|8ꤒ{|B]ZU'tP|V`[YДԢB]??Mۀt eW( '߇^ۚ [ٽˌd "4Aб顕ɅMn֫Z0[i*MhjJ҄cK.VO 3Lj2G>be3۫QƊvXd5|A^v bNbcB vC*;uOpP@Ӷ s{')Ys-M^Oã@z%lADBoǁYL@хz HMVPPܤ7쭗np:O%6KZHV,'Osj) +$C2Ӱ-Xt;Mvqmns5hKo\Y'[b@ݍn ޿ r5C(u$ރ()7lUӰ2i*[|GZ Em\ȨH&tnS"?/znv}UB75ibZ׳VS=3Ty*3!ߛi39nd}>@A8v+.tvB%+_ۊO' l^ !蘟{S6'S,;8 uݠ1Isl\/9/'ah<{= Ye5?qb|HIq0LtHpw^$!0GHFj'X&տ$8Tx/չy:\3,Zzf Ώ\t#Q&cv :Ó Zq2WK|+=]u٭ rC٫aX@:^oZB;o&.ݩiNuLYDUk 6Y`g,"cȵic_"0)m&)g.׮+ǯ?xy s9uArE3`25]_Gm$rŒcZ{Fn &ƾѠ6all&ܑs|!#W/dv\Kꔿ7{{o=ac}%uxd!zXrLte7(GP:NZrI ]}BMR/#l{{57pbbd&+o#TfCPӋ(v𶄨C'b*Dzl|N^:\'fNڢDO }vyU_lk<),MV4>~J(OuFcMr5k~i{b͊9`d%ytMNBj{K8WNnvB%Իa <?EPڭ-Ny0z;舖CV Ī|uL`Ů}L@.)T*Kѕbe [)ۋR3hN EI*mD2N,Fok6 7hS +7JkFƦlB(dH/zyTg^ M o62lme_J@lA#^8ae;A1۠ o~NtE(L)`y/~*oDZYhy'h]^A`z^iϙ/um)W 7n<˩, W6:D UO+'J9x򥽘;ӺїD,( :z$85b2".1`1Y0!\|zRCt| ˍKjr"L [9-€Iglj&cml[=Pף4I_שׁe6Mu1kі"\#mMZ uZY;9^xdښ' -с_H@)eF*&ঃܫoSR:}C(Et[z}>Y,E!_ҏ˾F!GW+1y牸Vm&FKHm!)\*@A=:(^贾9wɵY#/x]ٰ#O;=nDg S: L̽J֔hb䤐;zdv. j[YW^%ȤJ;T@Xp|/R71M2=X9`C?P[} +ڜ$Tѯˠ&?!bX-:63姏s90'8o*qа .s^6rW*3ܣD Y߂Iyv:PnD!}eu!7#Ư-l +7~T:hf݋\r)Q7!G|b4€A{>+]\G (~.ʀ~bY:a;3ϓ}H!цS>D7u8?V.d}Pu8gb_K8Ar,;8_瞿ļoqQC?.UɠɎ3G`hH8g6 xkʜج;l'vt~߁E3Bњ(S"|+\zBuH^gb .C%kcD q)֍hƷzMgdȧs?(<-auRJ']&AfP`p<ZS3FEߒ9+=qft+0sb<26eT ",}I~E)qLH.׀kG GsrMp!YzpWUEBgZ*܍cYkssT暍h8V/68"¨pO.@0"Et/+'bA>. $=z":,lW0G.XU06ŸQ[؞ وC뫳uo@HD|2^.f(HxbeΨHyFB&CŠ%c3c,݋("`HWhڜ//A$zj]B,o@IXr4;Y7#R$RH;ef53p^]ǃFsH O"8~Nj+oGwrnlGxj^t$|ݺ%Ç@F:xR-X-gd(g-D1S3f߄8;P60KZ;R /`es-4ⵕ hV?g{yt/#^Zu5T{@L5H`- evdJVPbuCh^7uĞZEb2@`ޝ ;@uv}ޜ࿑gUiYO%p.RpH*O/y9`y:5r3mpT[DCF K&0UBJ0ȅ|rl \bPӽY8:YU/ 'Ꮉ Y+c%7 ?0j^#pZ j0]'Z|-FA:6E o1Xm0 ITUHlkU_洚|E \ R177~♰-Cl`B['s xanun:1ux~WsFN5c?݄_}~n֬Kt5(z{EOoȸxݖƖ+9ț5۰4,"Vs͛Y/ Ka&u`7b6.j y?RfެPNNjnzMj+v<ʹRQ+00] 8RUBžوTߖBkHZ"ݪطl@CTuԣ줘IDU,i@ڷg:.z Ic!XqZ˯ϰ{`R ,Nڭym*G th@t\5ErRgŬ0Z(vF:q@ U*9lgE6> 91?TL4$?V\Ӈ`ܵ/Ib]aPi#b%~v͗5?A%]EK.$ӷ8; c<=ayA mO>ʢ]Nkc?$Pɛcz3`2wP#"#b^8<8@<HwH;`#{ ~11|'PKI05}wk Z#['a3M>/)G?%1vt8>[`{CMu(n.{jš9`cz )%RN.Xh0Ԛ_d+R&O{χ\ gA/GmSUQj_nŠl:Y| 7$ρ^Cϑj)SXhg&nG^% w~6iQfnTwyL2g6O+NgnY=}n8pTNv;@lY Vߚ9)V%?)=+ҕ-}ӵi F^cvOڮyLX`Q'hUGN+胅&ß+mߴbc\*P=r] ) a !>*"ѥhIu'QŖXMy4u* bfd39 rGG41zNg ~xxmp@)Q]KD.$OAT >APGswBSIY(VCxGE}@~yJ_>TRMd0ErӁgȝ[=?yIœwL?O=XPnUtt:җ-]c: 0c f贜bt=ŋYb{ ;hZ åN,anEC+= ؅2.xW4##nzo&yk6mX/g²0d cc_>"4e 狆 _XedJ4'i,/=cFL ԩM,IL94JQ8m¶XZoփBt-zDyT gF.IguI˰6FX! _ٍ5d .XU?nލ }M/aA'$qT ((6[SGxֻcc)cd*=k?Šϔ_GNܔPf;' aX] Nꐅ'_;SuYF~%~ W,s"W, B=3Ϊ2$|$^7@ZBN/l_`R<++V Cz˹>GlesZg]Ҭ\dEvgd$`%BTtgh"JYmoj.9]iφ3bs  WyEi{ FtE4UY+v@eڭDЈ5rtA˽vWXeIAiоALk&^uü2Q#qƞghd5o|m,V-6|r:)!@gz5]:!!qxgS^QH(2:=vp_vE L7_,eXj s +iC*>`VN3_gd?|M@/φS&y[K˲?T#j_調5HyE )&q{C0BZ cnS&cay.%BLWNU\{KK;*37Z#&hs{)W4¤D4(uGϜzB]ih Tp^dbAƂ{kl˔A%a դ8|66unfu0B,C] `Z ?X2x6Q4Wϗ;vb}V]N֒8\u>MN tZAFB&-pU4HDax5~ !+mK[Q/I9̰Jvv~ep#k4ǠJ K&v q(pQnBTmua!0mYЁ9Th_hq/wȱ$6MUmnKG:$ !Zp ɚ$]E9ͿgvXlK 07V/kZv#D6>c o!ffk;W+dퟎCGj3FHF %0Dc1a6 t7͑cFԺiq5p>Y[\mƣ# 2H Nj\1¥uG@l`Zk)q_Yo7c@^KƝ~E^Y_:严~1x CoDLW|@xٖaq=-ɓ gI+Ɏ+1kU g0(T_7|[ggtp Bn{3!y'#Ɓe_vY6rQL3R; h}FcO3+ X:. n&yZ ~m2[syƉMtma*S~cE=4ↃC"Vއpi&(Ed7Aƨ 6;'>eSʹ\)_Ƞ6((/~t1}@UQl13:G,|nU-DS**ݬ#VqJ-:@qJzFo`ݨIw wLKY%)8]BwzXO·nִtÐru Wadqjش1_^1Cj{t李 fS6˔,n1=ifKy~8Jt‹nQǣO@jMKMG^͹A:OSbƔSj=YeEU шo;䥆!t4y qhX/7l3u%%qA8J9(J] qJ2H jn,^j+R-4d(]~u @](v 0c,45 Ī}bCo XKd k'ޢ'Bw nh⭼ZR_\ㇴqfݓ, ubS>8HOlKf| ^DC-0^n׮pG2Qre@qƶ̤|ga3!Kʔ&Q4׎!a@Jcj>Hj)؍zq7KQpP'/avw4S kV?.6R @5u'=NP^R"H3|ERFj&h)~{) Wx#/HE~i/х@;]Gғ"8bl5쬢鵏}d>~rm X׎ ׽+_'+0V0eUju@HU5Tųhf5eUƂUպ} VIlh'w|(H]*9xHLd@yc͢~4X#0ur&TnD8ą|] VGvq :ɟyvPtX!9kEsp30BJn/;̮[wڻA|ME\gO}4dSdn`8.-͎rG=O4<-39,4/'nC+PҸeg6y<ͼO~#21Ha wR1ݳ|b^E?A(& k]H/m` ?zoe# Rz|@p-fi,D4bkRN ̿ϑuhHwB8tTt&j+#\a7fБ ?GNkS]}қXrct Uo(0K^/({C˶}<f:^̓\zc_C-b}PHo?Ϙ\+}872);(cEyiܒ27e3KC[E aRCDH \Wu, ݘ섉h.M4_VP^gn<s UJzMrgv خԿ UQneVEAn{0w_#N(x7͙旀X,9ɼGqWuxRCH?7?2kb,²ˢZw֛cS(lq5@#7zj}؈^͌r눮~Q;(3WfkA FmRо HY\A%c=՘K աyu׍F dŵdwm +ڡ2+o /8Gq 3S'!r;;YBNv87q@צĹ"&gRdw\=U3J FWmO9?k+1%Qec&Plc;[{dSIg @~7PY%Y G <ΒTba)bڴi9>beG7KzTZ+!:VcdJ~Oϲn~s{fc /ppR/x./Y7tm"d]j  _}oXݦz:u/">$86Eg'+ORA$}`o>^5< sgu|:L5DXY=#+l[:8W1)$`4df"fx $Wn C+>r:CaK(4[3c861"hXYN^XUU\Rm>(6H C?QidV֯@gCg,bWߢv;?!B fP5yyq%#ϦuX4ARWBIfҖ?lϯ6ѣ*$>~¸>`lчڪ߸#. SK5b>+N5-nꆩWu{̹M^BfFPBN%$of)+0~q,cO}+ 1?:\k Mn_'T ~ia3ΦpW._ _)ďc )D 3h>S8MI:W=K~HZnׂ٨mu"us(V39:(RZ6"zW3B+m2!ՐG34# OR[3 &VxVǠ/>6*/*s֚cZ{NL*-u %.NqIGKlljQc)dPP3Į`BZӏ[hgB(GNnm:-@^*(t GA>ſ9y5/6ఛ7|wFu;8:G֡- $Eߏ)U3b7&C$)qv$!L*}mbǟ;ϡ=9{9YsWKɠ:g]1W$GuEZ؏4u"-$msPg砖v LR7ٕMC=۲3p)Jj ``u݄1!3=˛ bѫ7o-%QRd-ͦ˔ݑfVu8̳L B 鏬ӍE*}d] -OOc/} ]3~D"d{y%6h"g;P>> 8OsFodIl; j3:t*(4{mR<Ӣ5ӷr-I4V&W uk~RD=7Me;: Uu$ٻ(d`Q7P@D'_iB`0;t1\O-8H\ĀwwqZlosgܭ@=pb-Ip\t\L(SV>e x@T.AnuWArs#ip٭\ ) -T&F*2Dd =hڊO0u?ѧХ+|&!?5عPh6OofgI~"t"yH:a6r 2z򜖹&B^s%>a;%(;W-dxݒ],d6ӦCT)u7!_Kzُl^]/u \SA^`@Q]dA9o!Ld+c͊GziI͊r/f;u\dAFډ=9veA9O.7m}HٳJ?,^L4N uՕӎK"E9Q́MRF4*|XRxr(Y3bȏcxA.kuwJz¹>*,wB2ܲ*^M.a td̾Sx8=u0ȏ˻场 dtLȕ̎>ɛo4Q+O+M-s$F=pJ8X󽈻9'"LL_ ;/^A^EHU8TPp)H{7gLlK 4B:[EinE='A=WTe C1<(dCwzXkyqi%L кpl0| Qڮ Qt*`<{u.Yf2(ybGo^ҕ%v0[ k3-?H0㏖A(4|{'̱/w6RP `= N9oⵁ.\m:DxF znB@D׮OؤgX[*=1RiGh7AxBCZ?xxt4Q>0vlI9x蒱E Y [6e:`{}C$<>:̨eT%h!aBXoWU;@WY;}qu|akK,v2I;6xs'ȿ;)6()KwXVJ5K4(6SqKOA nB |QiD$&鬒[g2q.yL1s'ϹoL9j`CcʧkIP$̑xѫSxTx7 MS2Z)oCOOFnF60ehD-؎_/ `vH*2q*5 TdU;R殂ۘSfFa,% L20*GDoiibknFLNޘGsMNpENJZA{BCڨT8'$'oo}!mׁel2cR#Hhԡhν5_w'4bhrኬϔ7D3%O{ .=z.:4zAZ<ӳ~e>K$y fU8d ~-CPlbȜ cq\ky^ןL#YcX*>&hoI!do-QҢ^K=48t^,@%L#S=Ńj> )>ȁ&.3_Hn̿@Q357EM`};'mn!m֢y({qrgas'+XW(voβ.Q]CTE8B]I {<ّY ,L`ef>L(z/8 a~to=NĚ2/UuLU>?ϔNaީto.rޠ%=ʴub5e8y qTsuc{&#|[ZwvcLO`L&=D!|5?(xq_Ӫ7 PW`oSW"Jmr`"zSBrFX7ȅVx ~wi.hR!R;1)*(IÀux?fF߭:e rT{ݑjw% w=PY2ܔO~$ (uD_7QztAŌ) W0@(ZwèQpǖ<ݘ"1V=1/ڶC?@=u9v$ xݗY+2&)%^.rߦ-r׃ss(Z([wBe>}>m5e`?v6%?h9+|C Sвyh4{n~;Vs 7nK j$'?xi_ 9}D<8NWIR\dUؕ#]`2d+Q Qnx:gqy:PsmC7=y~~pBe R0p :3>`'Ϋ_p!>Ujqݭ'.XPqj[ hH#tD?' ל?iZ:l>Sq/Q%%yU!i4JL ʴ42It ŒmE$ЬW?=#JOFkM(uz|adU\A];lO 5:Kr((툃_64,sUq^dr08o kU:Gs?޶H6Cm,y`Tƙ )+UELy{nh?m?H2UOC^Һ@x-wh*As{D)'IZJ찕g Mp^ y_2sq.18iYOvCrR5ޭ䃸dꡕ#νDSG 08p /UTݿ Fjg/`GM 0M9b@-'eJ>$ܕji+gs_{p"pp*ėAL_1L-{YWĪ>[2uW=8LI~Q'$Lm"RM]+§X <:t s}9'.S3$qy\ʈs<87UE EƵipZRU_bXa-8ֲ>I<,ĈS7c@}L=M\;Yl"908+ m;paW̛@hzzV, (y$AĺZ\Ï竂ZK|a/@ 3>w }+ub Y9zq&kn_@Mv)2?IP\> }kOvnvINt;~6OI3Wo.}OqƂYg*%S/gA`D„$o"vFg+kDz)ԉc73J{Fy| T =?stvY='G6,=8lV>(> etBg5=/;f3]r{"Tq(K#(i\/SU4k? (s旾AݐкI_r8=A-oܓg\Q*ݨb88~!?2{ÛK<כp|ocOd.4V]:V4FIm&4 p^ #Jqce-3קGOhT)Oϥ\W[JpckIZK-iwIz؀3NeŲ߽#a ]& 8ܮ9fKԃ%(J(+Ŧ~8IAv>/  Jȝ RꈍSVbD  B(5VVO v!RRHC,zTkP&ql`z?=!,`G>oRrgbpX$H|_V@mV .˛YBu\w'é~h(D(|iT+OY_yMS$L<C=n.|ۋn),\YoO `{stסFjn.̾~w-*=b %0Qd9=MxK+9j neIuEb]^f e?kgTX㓁מ|)-AQۆϢZ~A'־_y䑣L1?1w YY5YxTVwSQOƎr?*3J8[%{Pt],ƫ{`U}u4%s&C΍|sՁ?`gap~'d{O{̼Cee(Fb4ҡ,8 ,5,KXtΝz%`2iz&H܅]$qB#x.6$Ό; [0c% U7Z ' _Re;Y+/7D5oCƢ1%`}_%4b}d YAnY.-b?Ɯ[Ds4"kp)z)rE fy|/\kU #Ga=mTU]u5t>sx.1O@v3D-kR©0d_)sv|ePѨKk_W- l.awz΀piA"c%cKdś:f9 #*O+D}C>l]CO`0\χq7hBS|o _S V"havY نZJbo[Jo ֈhoكD>e+-Yc;EY H3v߷d8I`9cn%t]tiIl3*;m^(-0 eH&[^zNYћ\Ur:2UeJ z,UL$T` Ÿ Tvn9!O)1Wd Rgd_FQ}&7'ZV;S̐Ǟ=7M eU RFN< k8^hƵ|"{˸(f*8^DAfo9%{i#@w'(yDM:ݻcO׮~TSfǸA?Z4V!7Bi> ,Mz᝺ m_qD!WE51`˽܌Mu +uԦ: Uaׇp>/t2/Fޫ(v$On ռC]Xj^q#fwBqУ7?iisGV$swzYdhŎi\,ۡU; 0pa$L (hR. .@׆mwE 忂 (V9_ƃM*% >s,6(ZG/ {]3jQ(RTd`4}ۡYD&q#tGi4JA;4"m0Tv`j ɀIR6:iuDvێO6xTշp$>Ly,,΀aV@8=BdJE }έ6քB8r%k ~2Q]Szh# *Ӛ"Kt*`XFј@]cP1;Xu)WN;o pk(1*֋v`ɦ ϕY⁌:Wi>ΏZчDjkmsQ&g,w -Hn`9Nzgh+dVB(f,|DyZ6n r[}eA#7_:X99 j?7Dp6(⿅kA* xEOq}OMIǴ {~^J˵ 5*5:rP v2w4Z,Q{+-WZͽ6>nzX^#O$#J% ^ Hֺ.Qwq, Gc뎶 r@vP뛌AH;'Lir(8$ D:F&  ׂ֔!RS?6Ņ,Essxg6=e#A7~"?>)-2>[)]8 {bGqJKB7|M/U)wd-0*$go_w|y^CIh""8LEʾRЏ%Ɠ IX~!w6|եM1͸6Mbh8?Fr|t|,3oT.L. ]["b5UIW%@'oMg8ًs+YǶ-ף [d8'>|&%W"BEC̽Q hR'/9u$M7JB(Z08NSZW?K˰vwۣw bdu ҬOz|Y[(F[7 #ZhMˋ㡧A^!zkuATI|nYy X5 bC:]>_qM@+_)0llFߢ%|ϵJhj- N}eM+Ñ- QՐ.wUch~Ht@NigrҌG*!J8kC )BCfC=J#1øR ߕ!\-%ylmct{2SEJ_ъpRg ?4Yg w?3KHr4r7\”`2,\+:@BiWvk0v\3SyuWP @'Hep^[#;qG0b ^`>sC:́Wi&}@7#1|cW(d:E= k]V !\)zm:{JgU3Ҥzw3SC%!fN59TÛ~kR'KA3X6ߨZ1MƝܺsEEp'wi9I5TFm3JW,S?HqA@v/DG>&"ZrůȧG: zbGQ^,R1u"v= ChA{WtlK`"٨A<;t-Pt`޾ݝ., AqRx=Z"o_ NM7BoEAm]ր$=OXWfِ[.d^MY,q9dmP|#e(8p?sB_F uғLiKMZ {3=ećfMuQ 867ldH[l&ra%Hd!{t۞#W dFUܘ!lE.ЧQH?B?ihR"CA{(#] 4PXF``wE.ˆ||HdXZ $: LB,q4j\m:hOUSϦL:R"6 U7 m!yN>x "u_\΃TON)5<`,d%q" Xi$퐨S]}]{2֊vvɞ[d=`*+QpЭj݇/}*dڝ1ܦviWŲ%1Z {ޠjpo%(DV7Z$Ƶ9xf[ k)8E C@ZpCq,ű8(s>e?1!]=,(Zw`*{j>i6h@\اpdf*҅f:Kl@V RϷDg pSWW`͛jOS=|(Y|v{'%M#isnrNE,ǰqԨq'ڀC'Ŀq&f7mN0d5YPD3=W鳸@4Svٚ8qs_ߌ}=|zQhowuaZquR%2 WQ#ixZcG/,Pf˘*eP)̞6H_VHj5re*Q-lV4}ckb@T/' )=W 7C\X~M)NYHɈ-%)lqIȥ)au*H:2n!͸C1J!Do4/LP5Eݣꊮrr˟gDF}{wz~#ɉ_ ۙѠʂʆEJg?F|3I2F!\?h) \zv)0a4佩_ ĜK#DT&Ic7 jFmucQCO4cX-:k&=Ĥ$ZmTuT8!p&󘔚؝L-υƎۭ<òݞ5}_@!rF?+Jԟ_@|@ں.Q b@9GȺ7Q:^[W Xꉼg[06Fk{w2u([#rNGy &(။Z,l`qzf@ng!N4 p+ ̇#R<-V.6{6@1 t;.i֬n }y0\N|7,R3ܖ@s~HoB,zS'hGeW>Ur%X{` ~GѽJurrǭ SH'ɂ5'3: M$bo/B1q"mز'b_;˜g칅ݔAaX OR0~M @&eX7fkz˽"8@/ Fi&w`03I|P/3Ht.į >C=ߚ*6nu[<Y5׬{b)EU; a]a"Y+yѕޥigSo K] eў߳K,o>} /2鸋EZd ̺cO滜 G)P m"V!̪#3# /i.nwt('l>o:ON{&YB/+`_Bc 2S4*ɢ 9s]8L`#ˍד⵾U$6gN6њQK+/Fݽ'}^`l3Y`ScخCλ8E4i턑=1>H'1}{_{\N I쬼]kԞ~r£Z) Rv`lpe n㖊Ф)Vb"Z[!t.ҐzI1QΫp>檓 {%;7ZLڞ,(D":L,aPT]ŏ0QQͼ21hp\/":Fʧ f|g:40@=CPH/?Ý,%jghTRPLJ"gs28Tk> `og_d4,D/$'_Kn( _ox[fq~g .Q1 j |. wէK+0FK>v|GBPnՠPlMv $uO6%u>Oó l@<c 4QTaDa\?(9@CgItk>dZ6Z/ (% LZSCX'@09|9#5!31d^*x5dN0dd,YUð8qQ{/Dnwioa1Pk2 ' sTI8٤bnG0YUP )pG>v4'?!. KJ[w;G(=ݪSj9##:Xӽol_Q(l#Լ^DGPq2@: %dյK5Slaд(EdV1 ޘwJ"5[â&kx~e]!͛V pR~7.&VJo@(=ojȒQ ](LϘ]Ԟ\݅d׮&g Jzo%X[[TBL>O0pF X;\.F=ӿ#QҟP MƯC[v/i&UQPBYn7hWrpىQX=$^ȝ 9j9zE0MSCco X{{`ٖS+WAd$zmk`Brbt+tsxvY_ (e{W d"EAb]pAWTRj1\]Kۏ 끏Q=y2}fDp 2jTh>@s.DK88A~9Ȗ JieV[F7Ϯ|?kָ@lLGg>.PaNSx|[ jf &Ay=E*f2%\wvO$dnQчԢ B=h q<rB=#Eo@IxG*՝:?3ETX,S>}'1ZC$zjBlm\>8 0HuLqJ<IEO R7op.^Y[ua>j7چ}ytߔAμIo:8"k䘧 djK6XXϑY->]M]Qؾ3C7E 5A\fEݾF'! aHFX꙰1r1uqsRkһ/B4g>%سMd6&Z QrXY'_LbTDjOT@#sŽLvNg>\IkC;1AC+@g8ro*ք291{Ճi^Mmr@TŌQpx׾[(E=}Q;PbBKg8P۔sr& ЏuIMZFƟhgB}b'q'#LKKV=>qѰ1ᱪg  h(JkB+X nƲc4JbN?iYʊ?oû H\-vps|ec 2QVcExZӵ'`z\ĿxjGLz#0Ԏ,H'Lnp]n ztKͰ M?h!;Ɂl\]ͼAIōէsJ%-3A_*rk)5 FC!d08tXs$^|UDHŞ׸ʳ J^-,R^ xMփ6T/^sȫ]+D6u`?WXdA[fA n"reP(_uN ˰ \UK܄'OsSrW})S:<&h'W[Z:w|'KKvCD䴛m7tӫX5*ꩴ-%T0R2zu}"؀m#$ "Lݡ[*Nw(F EB_Pnn]%BD[/] mf w;ܛIO~rN.D= 5c:BAȦP;QmItC~= 0O~e񍘫U?=՘+7}!b̺jn8ϛ9611pK:ek蕨pDi }ذ0ђǦȂ)e䃐 rKQ ;3+L4{JB#VFVn.h= [6i8yv%7ufXҟH1#UMB+W5 pȾCcVA 05li|~}ϻ `$pe\ZB1(2^U9o= P61ȗAW!dpfl9t`+P;95% Y`! V l(z$4,/CH$lVM9|aoQ/<6;cvg X-1t?]f-E_U!זq)J)y{|Nien PXk k HV&Knbp)7CfZƪٵQ~¬ j"Ш6|LJ,Y CX<|vyY.i_TȈnk':HDH&` ?{{2 W*]%Ed.ofN"#j<',:_.t{ bL4h\hƵ)UyMߴ/ 0+K2u{N {%jAur/ ,)#bm->0'ȂlsqD\޾`]}Mc^tBBT$HjΧ*|«.|Ɛ3d1SJ@^\Nz EQ6s)hrGUo֒%8yfr9E;xܕCO 6?H@5\КmT*w)/u}Ko6ǩz?ۇ!PsL]TUVi uO*}d `u)Q7jΦpzՅCfǣOiٞ06ꇼ IZG|UMW3ݛkBE3B~*&D^bؐv$nDء P^,bhKBbLx<Ŋ/ɩb\MSΪoErw;-,zȨѵ< kw;g0F@:wX=q,|rxWRE0bxti$[ 6D;IFQ*jp4['j:i/J`^\ߌ |_oKK^Fmu)>& eؤe5))Q5iӍ5,oyZs]_lKXDGVE%s;pXf@kjě!Aq.msY 9z/'eMic#`}*}7 ~`MWecz5o].j7wվ>P9K/[ 8uo/À#dVkitLb5[ikZ1;y dwۤow`\VP/j\83 ~lƢv5ry`26H |GM("ڋI7G}hNs [6pXAC̛՜ jX?uw.Ta|3b* X3|C Jt5XQr%ncMVNR3+PbGZFJ`{=8W i aY@I0wB!#T%wDseQ|b1 H:h|Th8p\v"VQ0kWklf[x!3mD2Y_M0'H'yQcwhas(Rys!H%"P=)%:(߳?Er: lml߬zR𒝪N٨AR.8la܄+.Ҡ@ӱ"&>:oqs^'M8Pz)MY2?^AWI|!ϒёԝ6 ;`%@G,ue4*¥WDr:HcQӜYXEҲ|6" 2NiA }3lbX0Mamg[%.G)CqRQM7*Zt`%e8raYT~Ģ{=$qM eI}|tho.ca_A. F pvP+ c ~uD% %0 Q W!lqȌ ?tǧ/8!ϪuM# HaT6t&Ұ@s>y66oұh.2j;@dlFvR[zt&'!h\ 8M"b/znMi"N5t%N LI~9mO7 ?~pLeE6x&TGӲ,tv19,i|3ZlcE Y/{-ilWf*˭ :£?0^O5(Rkjz06CIw;՟\2gX]L/ˌ էI\2ݏ4_8ߖo셞GVMDHƆ4aHCex ަbޝs3B9`iw',Bq`RһORA"; y?@bJڜxS"0KdFDMÓW!8D`[UUIa;3PpdyTGU^>nl+b*"t$=M*(kWݤ m mxt?tn=/hiD@&8-NN;E[!B/[{^hž{JGxeԨSIY)U&~e GL˳տGOBh?r̶Azbʬ];]lE7fbYH+VXJYl:뗞S 2 :%=fhG\v30d>i$/20GY ܝ&Ϥ\j9 8# '.  q5< `*nφvق'* wF=6_/\4|3Hj[*1S *x}mȔ;kr]rWA! h`+k6apoR 0SUjB9XR6TY5ZnS*côKlvA4"StΊ]!fN(_OY,' ԉo&%ށFO|ΰa0v )9LFs,t;Od& h-YjڙBSHM]^ l!qCBߕ<o}F]\YJ֚*JGBJ]؞}M+8f\fZ}ew}#UU,Νr獎'{z6eorP#gd;. |c͙Pk+VNkيQ4^;O^@ö}7*Jx+ !I"hv]^ V7 %UYI0Ś(^f] &[W0G:lNk普w\c &=J(szO&_]ӿnY;xمGzӥ>޺l{5UIm%D[da)AZ⩫sۯ)aoi~ːR}aULx>bA(=TeqZʵ/۵#olyc%T  8\m@6pKVȥ٠¿<]p }l"T}3c2^%*M[iֵJT^ ,XIK=J,pBs^RCm[j8= oVD ^WHI--M]^#VG2# dw8DW阠` P_=42E2bT9dQ*g iȨ9 𩬛v-T3t*tP"\g'ewf,QK-ޙ>&XA!燇ݰ}B4a\=~]_yDqv&p))Zfh8JKsniaRٙM`kqZk64au@DgFǹF u!c'E-LLMo E+ɳ$oq /S+ X>]NArǫ^:>(~'eO,FC^D7{] ~$#SMA)э YIrt"IJ:sYTѐ$H#Fm5ΚGL;eظ9cR-ߔ#8Q7̧q8\W:34-2P i-DfD+v,q'`?'YσUaPBo>_3ʀE:ywBX _\q\irҒӉ/>ׁ0XA9E!}g MM=|gc?,.3ab=u͚;a:rU N^C"ow6_k=<"wٸ5t]-sxNz:!w%}B&;(s lu|-'%pN(W>zUf#ߐT>M[hW+y6GrX8HJClԔ[/1^V0ޣZju[ Uۉvu0S'Tj$[p2F _lޜa<:D^RAsk&)%0Ihow[zMn 4wvO~EBW4p}s Nd sLFKpq jkHI;Q =ִؙ!,.6-6VdE:}|  X^=ž聵1N3W` 33톺d6%J\eLnĝ lAWNՂy%|v"ʙs<?G\kzN<{;X =tmٹ1(Ey<^{%70>AX߃\yg۰+e%h7l (t`dJԇA SzJxPN ĖI\@udDӫ'Jbt?p И(3k3:c8!bip9^⏐;a;}(hdZ`2zU0eW6a%=^\LO,2sf \ 7 ]i[VĸStiï y3jh{"W4u -;|m3PF, C_h{TYNeQ9%G*9ydZ1 jn[UWGڤ9ĉn]Y [`kZd?HD" ~XEۅlo2jjl˩n)5\UhΪ0HxIQ O?XNpJuG?\3K~?"sQceV-0kK$1ukB|Vsuh 6nឬѨ36J l^Ux#@Sa?QXW~4IySA]=W4~ 5\[aCTMcI 0mVV_A@ɾADŽc,Dkkrvs΃ s);ʁUg~GQ(J'ҎM3tӯ=zZE{ zv Z+dR#,6$G lH\ PeW*'gJR  #oNgp8rVb:uqk"{-ZTZ5RNFrVPiZt&ңmQڊ8x qnk?` h7ZdMʙyY )\mrPuDwB T]F )|F&4NUbƫY:T\<.]X \9ٔd n[OLgXЯEdu vS~AKĊ__ZzG^URkԽMXJݺp 3lȰ)&Xl7Rs0H(w'gLߢQm)r[)|ۋZ^J$ Rdِ1:VZ7qI_Afu<@߫`]Q&jV:ʸ(Z)e88.V'rLgHSCĸV!sD?$ءsN8r  T7D TT! j "hsMsۖ2 ˸5DWf, Mል fS1O &4.(H88#'{]݇#D?{0¨|2dXq[Jb&\T9s#3?i7ަ( 3Q  9z)+Ǻ'@ibV$AlUGf=J&@fjʄl  P䂾?ep_b@q*陌E1 zTV-Qw^B${VRJpVߜbgD𴕬Vr2RpW\? w[5:LMO%ZaNbbeGA~ ۨJi[5)t~.' 7bփ`> VhI YMyxr錭S\(@˧Ši2{g3뚨tדoGSFͮ$ڲy0S+|٨>2%.^Z^٨<1:SqĬeČM56Li ,5 L Nנ[*;x9|NT9\8J! #S$!ٔۗG7C>&>]jF-A## +d' tB֜/iٽ2̰`qmX^I+7%x햡g?9{igKB- ̞m~F}rGtMLyY> |톺|NlrPϡ.!6+-h՟ 4 B6 =vŻŠ;zH~m4Fr(WPd.kbzDWCiN$rt ?kkZq:Ƣ1s.U4 5G#S`4>_@QK^x-qc ,TO())ȹrI潊$y;s>sҶwrAqd&,:5QI bVt²Ken| _wp27._=JR{;Y2vh5[#LBXV]t"i1Fj&aLdhXݢb / t=zІ݁Wd4FRDeUv)Yj9$Uʖ9^w ag-l1d E}H~q ;*1+ݤ<7Au]кq3˚W-݊)p)[KdKtuG#ُn/y[6B6YV3JNߟ0YDwv5AU9G>7 `'X(eKyJ,L*=H͓#0 x7# /Z6fSXJu$)u (~gǠeug #[ TX1#PsBtk}O9ZT cRw"(d[3M t-O0uP,iKNYї\x6l7qCWdbsk`˸Q}+TaDGzfD==AÏx>j*ka>B!Dk r:Br ٍ:B{K)=vmZ;f}zk&YBk.}, ۊD&xm5!g?]ҶDBqmq6vZ; nNDvAY4. 6Q|TV9G_n#)7&-Xbf9 { O$.֘H(h$-yHi7\dB8!ܪe7BeIx_ڼ/!7$)͕f8"D!J6{rkLW@ؤƉq0ĀhYwWPFgK+=͋'ʏn[S 1"vOrFGw MXs#o}V/BDUx5l%&س8lY0 7;Oڠ~#J fb tɐb,dKG ~GMuZ:LHb`cH{rⷲ3-G>5Lv@z+rOoyGNTK 4͓J~'@@wu&-:C1x3L4Q"Uܟ1NݹN}yĈvjBdy͝.$RNV`暀 HYzѾuRlOHIsV8bW#y]$_g2?9!BkQb}X->ǨUAlA`Xn<;˾jbGu;ϏWޯƚ?۽T-o14F*ƞnKgPD~[;Z+(:su C<<JaO_szj&, 0lT\E}:~C M [Hϯ[ 5* oH3qe$@ҤPe{`EđdD;l:b3ʢy?yJ- ^=ϺiViks 2UhHƏ4}9>7tIU9}Ny]z+{0*QW2Y; 9AtX2V|+/&$)˵Pm'/vlӻjz?z +v d+ƍwśRDh1b9bY“(NaoYyU i-,M!l֨r:ڳcN2L 7 a~d9@-!BtSь.noҎhz U7}7S ]#qeՑkC{v ɢ7euzv1#nB Q5$k|Og8*s?G|)S K3A!줘ZGy?t{+}nPSIyh^v|ٖ?DvPc|UU'C()HML װ1.LPsz扒u:9Q; d5M?2H7ڕ9qw P9!0dwZ cҳ g6d;©:ok|Ҳ  m Z2<sWf-t\1ۀe#YjK-&b0[o>arޝ.p-j Ԏs өJd .P<:bHv&i B<|Np, (z,o #->oX;_^#ķϓ18^QӚfn{7>Քe C aSA'sB˄#)Ҽ>jIoAo0BX?#Z˭ʏmfy3'Sk˻)oH-nrR"ǰz)}I׺Q)(Po|RՅj $Ǡon[kgz}dNaKqGR,uhB&n|XN5*r;痱*(%i)9^쫏 ENZzjS *SƎ7#uiʥAގy.o%s@sA~]q("v. I]°;n@,,+ ķ) D$/*Y Q>A ~ D𒘸iIajvHLL 9nP,:;k@ۇ!)e:f2ꊸy`rT>̔##o'ьF6}%c& YFaApO4$<,EG dzWĝRDB2KH5Ӷ0BFz&W]oUo0)Xm)Aě2¾:>wY<FGnQ:Ã*'oV[\c:jS- sYqȈt" f%g𠭅;u7H7P!szvuxncdH6ٴx,KM /3(1 !_^T+ѴҩcAi]A9:YB&T`P[4cO #$%7P:[K=x  # u?fQ2Ah ~9lVB  "w֮&;RLѹѲ ͕++ͨݩø;2݌6rpƃ6Řn9p0Ѻ&e)0V+[b]`>Wϙ gU4s?\ȬLs;XMqnnmK_M O_Y (`ۚmdF4\qgzu[8 5p %)|eu)I- @uS%,]xqN"I1׎urfPO"S|e\gG}ڽfeߒ(XyG%z? {h7C Ou/aCM 5.؍lɺ#K}O::9OB8͜HF[wv"sU? Ò/,Uҏu} $ZJr;y-DwO\9ACel١p\i}z0Q`_Ԑ#Z֬K5Z*cr%zCw*|-ӴMgg7[օ ~i*]2 .7Z}X2,2μ~$*X8*Z >+IB֒CG9BWxz}fG+i.lf$(#~βoznU y"kш\ 2J ]i8:)$aö帅j8/nfjҙQWH/R;Go1e͵`22 G8*-~lGƀ`'=C!@Pf"XѳR(Ī VF])G, A>ԁg ~c3uCKZ1>^Y\0&UؚQ7_'5M{gf;W]nږT\a/EbB8̼Q*~axp]=jW3<9X̤-AdW{ `@鼿eOQ=Fɋs0?f`i"5h_}!N{} ߥ,o`(I)} ̶Vi'fW~12>/xds>>mw+es =ք%GkujcBy6Q4-Cbv}%KڧQ& 3=8Mi>ܗ]cA;)A>i|5wn`-*(^Y9^5}eNqQ*O{5ZtEh(x-s*l=80L`Wg =;[iD\Qo*]9:(qaA>?ПVUD<_9 '߶N̙EFKhK!H \M["!^N BA4@uNȲ= eZ;µe(T+Xž[Hf=MvW i^y]Ћ+s sɳ̰P\>OƛLjgZq7|;I:P6lJv.?ޏ/g㏜vp2Wܱ.|ɷFR!NL9jH#7ARTjy[eȝlF} YJNORM r3b_` u{@ų  o{y>cR4}4PtTʡs9Q [IHcIhA`+|K2S*=V"妞y=ᐇW:-x'w_!I}.^׈f]QW:QTq&5_f#ݖC3UBS}͐ؐJ2 5"g>E5h![dХ P@VX@&Ԇ!BcGP"b@9_gӗ'oK.qu4QHб[oL޼$;bP %+@:X|ިZ B]/~'$U/ߴշDӲ>6w:R+pT(cݬ M CΕv5g  ˳9)U7Wu]"r1c MvO {no/Ω9~~aI= {$,DŎIW}_yH_؎S~V`agq<حDQ8UP{+҂d0Π?!ѧ7+#V|)1)nN1dž=+͝UAFZ8oνyh70&Z_O1PP9}cO#YOT]2T)_k:^V.m tcVfx%}#_w]V bݡ׷w*fvfQ =n9I_YEO{v./GTRBeɉydK>&p?LL'q*})>UTzC}b 7td'yZB _D1EV4AjhRHY:kK驧գ0Էµyj+sA;~Ŷwzrݎ8H R#h6v[]ʈo'}ѭdo-*J-kjĴkl ;soш=ۈ#\ ` 'jE],W落da;LJN/fUeH"-Sk0%4Y>) qB26֝ẅ jKNkV GpEMG jp\?{"{wיy|u9pD9Ǿ12=Ȏ0^?҅uU' 6Ӆ4*T1"&<=wce&ij4.OLS/o*nm*.(Yai5ɜ q1ݝwٹ3\2" _ $bGo,6PH>8d4XW= nvoo 6n3Q˗TNj' #H,t~j% +Bd~51EWYNa+ c}(bOUeK"]ƙY D'4 .{ ^_ёm tJMyuR3w i L ?JI."F+>?]-_$ 6V^ڤ .̦S@T>,wJZz k5$HM=du1uӞJ`\4RwlwU)ֶP3SZGK)"H%}~Y 6aKs )0k7σ5.xk1t{Ǔ EtPjzͦT]`TS w_Ip7qYQLE՚0w]P#1OBp>sȣ50} )1ٓvZJ!di{wQ4K}h5А/c?_n[u---n/{9,$Ur;Nj”\Nmr{Bh&4>Y][heZ/pg04Dd<߫!8d` .qQ>έb ˙Aܞ#`\loO<Ǖq],fQ棲uv!s߹޴/oR,eS)o<+N"M|˂)Ir7vީ/qQ%exv- +@dS|Ls;ȂN>|t_TI5Q^ NԚ|E eoJSGn".m_(0  f_qaP;޷l:B_bc`Qdm4Kof7wR^f~-EWd5qp̚>/+4?6 @\Y~~Ym-(ڼ`|nk0>*WcuIk$/d*PRIJS/YUΰ9#RD71P )ܿ\5J=}e''+*hoY=u[(?Þe T\@q"oo/R)׈FmW8NH:IR$k< ?uYW;~4y[p ̸K+490IY& %@NG(V2o5խ\ tӛ&k<4X %zqބVO҈؜LЮ8yw,".6HՉi׵)sC!>GSQh3R,'[x?#kEpnB :I=^.}WK8c|UQC[E=:j4-<-]}"Ava֢)U;{pNxՅkjڧHiӘuٜ)9C }+e_E2C\cÍCŲ Q\4ӈFB 2N'혊siۣN'K-IM0QkuߥgeO-2(@{P>--c-*Tض g PϤx_9Z',`:ݢCQU4#9B-ؽa3b=zyx кU (16i*2l*6U7&X#!̭zj*LSٝu D6q;{&9E`ɮ2T*12V~> Uue Lx&A@P7TDljƔnkF9a1 墲$cP$]O8n $&>]T^tD>]U]^דFm GY6mϲ)E}KTZMx;V[㱌 <@ Zd1ȦKν?ЕV)+:CɧG7-\|Πn!9C hd\HC}J4?0P*d;6؞L>cl΁1%+%Xdäx}·N3ou8 խe7WIKd-E=f`p1P^ m|ukF; 3hg"~ < A ^?Pd}X:= T`-P%?M/D&)@L nJPf&W 0aK~@ݿψh@CP a_1_ 6j.'2`IH!: 'oA)j ?B~+>V*%P:OOHU=@QOv蕑ů{ c!C.)ۊn6ψߌ⬸ ޕJ3Q>̽Ţ;GnH,>%ѳu|) ҡXry_ ] ht>lX#SYh˱iK~=pJc4:b p쐎r\83VFG uV%TV|d0\ -nR[# E"m$͍km>Sn_*Pv$c̣b&X"i/SUoqɸ)Ԯ=<=>׿lUTe:oPy<˩D/9MTpl7Rձ( t>/ FݗMNBcv 9q1 +ʈL ;*b8r q+<;|]fS؛Xl)&+[_)$љh |YK$WQ4^W N4WgV~ 8B=T`#G[q7@NVa y1cĥN7%ZY$};V0Bq 7iX%w2Z@T{f'e 5rGReRtXn36QY.o/yK$T3I[rP,,t=BϴGE"l߆6r D iTfZOZGlxRa٠: ?8}d[iWŌA8 g0 $\Kq-μ!rK&Ďtvʏ'^ a_{!3_R unxj|gbH:\9APޠ0&uy]s8A3Tq9vw| ]x-3#.B'>MmVdX[ Ě^Ѷ&AN=-UMYoѧf!)Xr16P>B7>(ڷVVW,"Jy_fa%zNJH)^)^*ިemu@Kgܹe.dwќ4WupPY@W|SB\B"H&*~Zh\NJºxHTzəVP+|bbYt=nDzS`@>yi߀Zg-8B[dHe҈yi kPqgz2F=:.rn$p*KtӾ,8^æ'!\3ӳ^D~Zbz(2QN?V7/~Lx(N~㶑W@\ ?(Y\˘N3?aKW01~ {jHXS7y6`GvJ} Y4| ߙh_? bwp umIЪP01뛭$䶎;ѩ_/\WD>W&PE(EHTב@<1VS8, P4F\ǏyYsv%.m-kr;.C"m#LXaBH{Hv$W  cX 'vj9 TXG} (NvŴZB W)Po&MVd29oQ2÷#^I7[l_A3Yd7xGӷģ.dZ -@ˊz7Sn&eU:|hVϟVZ!BiZdXyAnu 7m5ucxD58KN+kaoBֳ%(Z oa?wNe~t_})j?@ZKYQL 2Wvct@"ų@4@>$Eߒk}Z( @pXg u"僂~t R-R;Hɒi9FY@}(ʐt_ABpF*Wƭ0: PfAcFd-9MLQz6XQ1E_y'[+<2aӒ$T۰;y.n{^GlegJ ΍ҝ>sr~nCN(]؉}n.@ed칷ŗ}j'M%SI1GnRS8I>?b'>^P@/َ+tXL>Iw1`þ"-eO-|-/V3Kn⤩N;8@ L3G="<|v>68­hCVu 8R[ T::7n^ `m1g=nL;"9>.0>k=hRi#MEG䎌;ɴ+#Ѭ:q69 _׀ d!ˈ+ηf=ެw6G/(3mLC(x#>Ki_m%%×ۉ5?!) Br!s/m΅~x+:nsݻE *Ez427i_Ofu)&j~Ol1מ6IY)6G. h{A?דQ}mԔ}Gl=4gNg@ UcLLL(ASCi_zkk =T$>ոg)kބc< "˥~&fkP[۝[!gyb4g/&J*#|T8#[Ќؽ&z@Á@xj#nd?MXz5 d@{q+`h ޅj{ Q̜L~3 fbxՃq -SjVUퟥ5{*Z5Jz/o2#Uߕv{%Og\PLM&[v4F,0ӹ6uG>lk |?5͸ԅXbPZ&+Z ߶ǼovxUM])%[{II <:KX} %aݜ:5EP^u*,/eg+'*:3+]Lp8kk_Cd'Wg9 6T/qJŌvz*J % ;$ Zjܨ~XOe_ـmyXdbv$q輄*$4ߕi@([gBdքyVPAu|̰5K:'eR:)`aJyu݆hepPc'!J^3iu^NaybF膻;ϯea&!d\{d&D0#] {CU{FrvS C>G E Rƥ['4QCd@ ) ҵ:Իlj$=ϐR\Թ"?RXV-w) T~MZ/n,QZ/P|fvHVÄ"=Ix,xxI&d>k|B:p=KwuB3"W'#t+1y䗾q6`#3eYp+\H( fTܶv+Oeţ$ќ)nBwH,椕++(̝׻ Eu,>c-F|uvpJ~4A' BT ?6Dh]f9nk$7 k@v ##7N[]2F#KW(3F7 _*Ǎ wϬSfQcIP:(ԣE Dͅ K;^UR͝E{O š 6 ?mG{*=q{"˅ђbqŻhjk>.Zֿ K^c$aU7kF@EMgƏ4rjdO.No+bqJ$TǛ EM۹I ;XU='bƯ?Drdqsא:,\DWWN뱈jZKDɻZ73%CnZN o([8 JC%L{.wˢagPFxv}lfkΪLo Ц;3\khKP",m+Wuw|4 Dm#BL`Ǘ_5maW0#5W`Lv$[@GBJV1#/t-j$SwLI!ޑޔ;uxRF_<3]04Y>nKE~M!;E'&(>8E"u=n=(J } s-1Pc] X{)/z1 ñOXj%@_;.y YCd|M~Bk |23z# B^|[WKܰ^˚!;u'wp73nܷ'SCLtuSсv". F0-%$6 rf4]lKk2EA:"T h":9I9_(J{U%G> %SpY̻q3VmE'"yi<&DMwE" &1MU{Wo3H|M̦)s_ +As2JȘ&jk<-&*~y,Jwâ\ue}X=!koP-[_B7U#P{-<}v&2tp0@U&P-BvC| $*u" 5bϼ^=A^U1~{udS BP;o ޚ΍u @*0'T0J'G3sn*cn6@ iA hW^NS\dMl84~۰(xxǦr*hZChrDˮK%c'atDƤB- +؋alٽ'XiGШ?}?2 Cbo-; %}IXD% |+Lg-Ķx́kT`U`v  rPpg %n!c!@[I-z&9;'B ;ӷ>[–n}3*Ke6 F1̳a*6A e +lIĝer+sa-| ;1򱠘NfjI܀MlT\Å3 g^dpj@=v-0% WϾ!V afmHkKDuy89$Yd~l/YŒG*:SKI@6HA1?<>v3٩!`6v;SH*kKm:ˮixQ?;:W+q"d9kW㮑8 Tu 76]PgQKg+xVF^)] 3([XHOn}@;!34a5f>#?IKb6@h-߫WĒA d߰ToC5-4NS#|%Lu}/Mi6ZAY;(2͉ ꄇgH9Dmb"S)h7ۭFu|Fw[|푹1 Ԭ>8lަyo?Y %9(5IؐRG;ؓ-=h,t6:A,-5,zõ-~g6[@L9;{}i(*A^jG4)X|ʙRe豠sPv T`E]5p1vԼ3>)=.d`=8Ma 4=Zn9dyv=a@:H,v]HR@?.@3ͬtH*Xج$n %JE<"7i;^R^-F vY-Ҕ7Xv[Iw{JǶ6d8>BBY]2X֝x°+6AP U9 TWG8_ VqtqhwN5&["P&Vj,> N{Lta[ P7!7A4;, sqs]&8x`T6 j$rZϛ4?+MPCϏc1ǥwh'B tYTMxE~{+GdR.ӎSɮۊDH1QoKbAwZh$Xz6uY:]; SrH0*9C}gްIyߗK*W 7cSPdĕe9nj*p1f˿ 4eߴ=Z}SG_E ,:CF: B!%"rp̅{Se3J&e2F1~BPmk(řXկ85+1E#Qht}CEdE2h)^ԸwƱXeZ"bEވTYJYy1MXu U LC,QR?w0yScAG(8kL)g+NzlPò;SKf"E׶Za%.Q 3=1{1!I7ȅiu>IOƬ/C'ոSs?'_=zVߠ!l%\GocgQu=sFRXjbR؋?7x GT#ՂzY|ܡ%_eB=0ke 2Ҫ:|Fl4eDnqk &tȅVޘS aR4LxT#EVթX4%QҫG٘Q.\N ȅT4k-n5  bg"Qn 5禊 .,e~ R"U]LUƋ=d0zV!*D K34TC |c 3ZhMSNH(#ŖKlrGo̮.n j{(VIDquphJJ^j{ 'er>h -Ԍw8/yYDؚ..uu@`aۦ*x29zG,^)]M7L H 9 tᜆ@NfQ0nNp; BL<6,_57wuuOc*0@]f+bjbE]1LO G"KAԀ [:Iοp|GQ7>Q-TH9#P2tEx9lؒnmգeiட -yVx ,dhE+Xw1"lWe3%pI'h_gw? ew^&؄yߗHvO/ξi,-[1" ~1v+$)Ǎ +l? n2;o I0:hٳjW?L[0[ n`/XԒ8X *T|@>ȘϣՅk^ݪ8<4IÊ}Y/ `˓6E${t>,A ϙc ShcawЖXe !爫&yP/0p~3TQcqZNۚ+6c 0:ɍs':vFgxܞ7: l."t$QYHsC݂lN#( Cve9$7昉 T,_|)A6SV,us`3KJYDaϷeZL@{tDm V$2/qXPp0+K>ڦ=7 `(g,?k̉2zx!:R]zDo_2~Z6w.婢pHT*]`PƂ.A9 -GDωq#aeS30)G۶gD(DiIZ5M%nU"|P)_ i7? }W[gE: YvTN(E Y4~6HFlA[TS 5Z+UHX-<ϝ)uW ]Sn=fV6Rw_=l,׬\pjx/5'븖;qm?G|%]pɳ΄{/vI6+SXCG{xCb8pd6:{ k yl(-fTaG9LPR^إ +J.k>x{˿Vj&@ެM>ޥ8*/q R[ \yYI@si `.}2IySuz7&tT78F`ǩхVLhHsC_nl;Vh&7蛳FV& }x53 d;OmhA$Ujf@ 6q"܊[ tle_|w7+i`%ohwom1@((ͥ f(oy6W3u %~Eio-'#r , jTV`n dg@1ծLsc]uk=BD$2/}\O Kn.K}zݵljIH ܮw =rPQmML>RvW&Q:tM#q+v+_7qNٴ m{t],#Q\.~#dI!._SHQI2'V'HgBo9܅ny.Re{dL؁ȷӾم@-B 2bwK%,н5#=sᶈekP 49ƴnl?zwY$AϮCRbrPN"BtJqcnCI tt ۄaDJq S"K|?.{C)P Q\׷+J鯿ʟu:jHm(vӽ.ʪlKh?<ܾ(.5aMq0B^4]M0zHȞkNƦfѷkf ^hԮuw3n(bkS$rh_ޭmѭrґbWWJ\,H$׆B̴8yL U&(vPSϼ=*mLc[gcQ }~m1<'{v:}Jn*NNde8 bm)&;^BgңF)h+#DOte~5aG  ~s+Nm$uugCDߍ$Fw[6DAi<2qY-.·X&}-E_v~I88U43Izd{o,R^<*a~8vpzaMjۯ%߆Ǘ}9uQ)NEZyPzwB] w5glC TTؐknMdK Fdzy"pNzUORV$7eZk9my~ob}Q5r*[zS7c.@ ~Zq e4UCbgD p ab4!nr2\}PU| V`ɏr.{`^HbxCw$W1eD2̸:>M+!y! qjNCq]Z]_Lrĥ _6`QUÂRtkJNgX PL>$ާq^G[ š$$\gwø*X 3%~6:jL^ǿd;I{kqg2Q4"[uNU#j^e8D/O䀡r/g:VSwcWT #@T$=<[,?>n"ZRVuNTaiAGA1cŝgO@<%P4_JU=-[3Cf*W*%/XR7{[-#rqU+T~%kGC|q |owl,ebz+kؿql>r Z!>m?{@au*pZBFx_-PA+CTXoωy!'v4gsS&uJmi  ",Aot6B]` s>SگR.n~kKf9ASfGa1|S"aQly1Ć]-j;B8gTfiͰ쾒6F9-o})fB.*'{mU#1`?.r`L Ʌ`Qezk?MT [0blZ1J;@g+&*߸:̓ د: )YZi%3 l-x9W28DZ(DXb2<{Xt>peYT|taNa edj Qns ΃.֑z6ǥ}\|VL̓lf`=?A9A2uw '#pbOi@v+bӥ]8,Xrz^ 94vkߠVX[ˮ*/Iv}ԓEF2lPTpL`ތ-;5Ӷ͈*͡}22a93tZÞӱ|svAZl}r?a}W Tj) %wZăjj'~SX~Y &Z䶳bq{?Q=9T~pS!=?wD jە>}@9cw"z=*)F%$$@վX!EIz'bz) @bv<U1_S4h~H!tv.2ԚF*م'Sl2FeMC퓬W1rZ̤} {_M!/e E]Y;DxW$oq5ez[& f Ai.7 ⌚?Gwѯ\Dc,d~x:'4bο?,RVfep|qiAӮǕٍd109HL=B?B^CLxQ_\p-&wkVcT@ /#¹_\gt'r<.(j%9iwb]`SU.sH;5/qрs{%F.,aE֗|zm^hI\g7ypi݉~>mD= eݦ©Y1A ћo/S }O,^o5/!v*ݬrL&l݁|c(]di2&uAk׈eKX)ӆ"OkG>Kחnvx.iai( 6\q.*)?R>Եdd8V5Jn9HYf郹G74 `OB% fqZUΒLfRJK='Kv-(rV|Ö#ɱ=\kZ6u97%ΨWMmԾ։FjJ0Ɠ :\#nJ74yb2i7] ;6@Z$ u lK}c`E@n*m\VstK^J C NP﫝 qH3D8 M#QN,,AkAfmZڐʨ Io 6CfFi_TSV",iv f_yXwEx۬IfA4=ENymq1=G82P:#BǓ)A! X>€}^%yQLݵt1{ZSEuCPXS; c&qUmM7N{ P}c&u ;H=5*>8G3:*v@}jiȻƐH̐ʌMMa vMar՝sYy8ޯW>?Y^pM`5"|b[R TIw֜OjSq2.bF0[QcA!/)@w\aQ: )4TK\bݱ:M؜8)TXx\%89K8.p!P(tAW V "vb@9V:{EͰkNn謲*ZbNN\%K$ЗWF|f<1RŌ%L&a&(6mD3{>c["LRObzl#T[]|4#' {f''i$|۹=,Iedt ͲӴxhA+H v+O6A-.s) Co5,r1k<dc4I7M[ubs5D#QN7@u&ʻ39y2If!e wț@-v'LZ #n!HԎEDZR.t:+Iޢ| yf} ^%郓Zq <4i4(W0^\2^>Ol+ʇHf2E/[:5/qmxZth> I}cT.J{qP._wÎn:ڛ$܀aҟ+o.;qYo̥kTtgg{~iWzjn4pn W [hp1 b[ ]C+ C"{>잲 VGl;֧"$52yŞ6>IufӖ?B]1V-MJhLtܲYEͰB g8(0g ^93ʇ?[{llI_P6H[b(UMuNz% lab ./3-l PAS{ r1O8aJƐ}ĹZYECbFŊ7NtCvkmFb*^te$)Q73@,HFZO|RęIiu@q̨Z9BMc$yc׎E0'NW5XC3e6c" J3@7md^3$^}-4ټys#caNiC~)oFG"C"(갪,0lS {+f,-dEaSTn9o0ǷGۏMn Eq *Xq//S4_$S_Bz瓌puhn/5Ŧk"+}JI+%ObBJuw= 4Uzh+la 'xaf )3.DTϺhfi-l {qDXPZdt}\'(H!!2+D>E,y B=PX`~sbZF"̈́$i+%̣56@zFNڟykP)|Rj_8zVa[\T'ڴö$? "?ctž 󑄹4hwzwII!O8L7JgeEee=Yc$  oQxKaMfx;Xd+EG'{(*BG/-F뤱RdV*4IqsKDzWQ}}:ߩNzx InҸ|hpV{8{} }Ty~pY|fu'$ @;?fDl:_gӌB[/|I=xV<8P|r'"ܫ> \D/"A2—QFLʸH߃qQv^[{lŽbz;?~'"xy-KLiHV-H6JBhC&;hYE ;z@Vqe-Zg~n=/9!8'GúG4@am"-M't32\ƨkxlNqOz)q{j75g-80X񂄪BwΙSfв\{E'V{iɅubOM;n^3guxD!P,9@C_DaЛ]YAM |{*݃ƜM c' g8W,N+qmz( c݊+FtrfhS ,uK ]_FR(p#$U iDy3RC/I`>I )'Ÿh M[()mia"50[kuݮ[C@Ra[J-Ӣ~`{KYoE?s@h<هt} 5R=Z:~[׌FD 1,lX63D<6#k:K‘)\ufeݽPmrXN|i񜇰bC:b!Lѝ8jzͥL脚3@0dEd PW.8l9Z uT6_Us7j>FQZq(=ŧV(M.du#W; O ,26U?!{(uz(&Y:VSOǕG2 DD츅+mCG:V^x"4} hS xvWMКe   f R"цq& *>8}{0KC{4oxBO ~I&147/\5ټ7jؤ7q pt{$rbuvKt KiO>EBxf!Xy8mJik<^gM!u&-N1xj|Vf4 U1H:Gk5NĶSVQ ^UIvd!S) #{t9BD_E8>"\ud3J˸ Ër׊t.fVf -q}Ƶ5C8U7Uu+r'* PhF6ͶU `PITuh#qP-jÐƫTi"˷ja/UYRTfb *V4e\&IwE) I%A4ᴤwGTjV1?TRYLE {pN8eBN ͬ)DBp糯p^+qR *li85Gi8-lQ?caLJє@h\'T~JT5$Ou6OFui3=OI$A煞 b7ea+mwQ%RG1I/n&bLbK9s7Q&d7+|+eLtaŧDL*_5d-so(vo6MӶ@o;6_Mg;׫٬<'Q5{ w[C+\ F|+I ԂFg:W%KČkDNl,ujqXJL8)ED).l*/#.C( )[5؎}5;Xfm#׼`$V1 ӕ1Tx8xƱгB*uژݷlʤ&M%_yuT~&W*k:kg%uW?NyL(L3uH-{G"+XGvu6^+C|)D)vޯ$tvY]$ϐY*'$q&4Gbw/-;.xް̖FP_89(O8zV P?[pj@j+syA/:AG[nGRpT-?* tHқ̛xx-krQ.$AƮ~9[I@d |fF {Zf$3p iDV3vy TY([ȶRig*#]_3(!#g[+MZ@6JIt9vU$SDZI; t}Կ@MqưGoÛ#0}Qftj^l"OOpf`]fMV]34n*Y)s  !]8ygFZmm~#M ^erRJQ3 w}:V5hk sEo.v1v<Uun7,zI=FȍTz(6tƺw$~ņBIdm]Sf{y%,n0$6I;g{N0Y%}-i~Nd>zǩ{NleС اBrk|"y3e)ȭ{VڬfCAk&^(f`.g|i5eX ۂxQ HQ(;b9($uS'hp;ixzfS)Ѱ(^9b0\R}* 1) 2GYĞ:)Qq&yc4B҄AI$4 [ns`tI!P. 0^J~"wPPv~Y|γs&E( F~+(D75e~%?ߟS.</gM; =ӿX9Xq |xf-gct+8rv/;vlL'b[7C,# P}W{pSa{BYCn 'Rs&q(":?6NgG\RЯ'/Z=8b[s+*}xYH=O26EE[f2µc!wј0*ں[_%&G>('n㊽od:M["A9` C೺ne"DAƒw1(0 H42zKʭI݂WUݡf׮c MG|U%*.:rogJ2ʫ V 1BefuxlA!Bz>Gqؼ [+EI`_rރbX'6_* 1o1ߤ0_E{B*JvǍ*4 8ZiD0>յmVxf?Dt/؅y9f6d#s3n9̻PwahsqTfDb%uoFQ.9cxςyCzlI^f|zUBPQb)qI\7v ?)nߙD \<&}7+F緣Pu2`P-{;FLx̯/*_zjSN)VYT02XLpq6K{<u"\ZN9ruF1 @K">q]kҥSjy,!(i/zv__paH+G'Gsê7md0;JGuɚIkX+V}+5K{&6pp :tlr ]a[c`_@h42!X{[x5eoPfٱߤ̞髲J&[fMLbmPfl#\ LMZPgX^6Q#ӥý ,b2k㏔tКؐ)81̙DeVW~k%H"hR%65NEO+sA 7B4EQJ_|Z+GtVfJₓDNJ B9DK ]KmwobfˀI˪zJ>A] =1r 4ş4 ̝E&lSMܗMHk^%ړQfwwhslXO'r`\tS8;(nHAp^.,{׎Z7PR)|'`&n6ş{sw۩ #p7\f%_T9;^ CA\Z)\ICnDZ@X'4ˆ(XB9M7 sP򌽹ϋ H cm?]YվXu&6Y;IGY 8^Rz LcbG,gfff]?l610$D:`ЯȪ03vV/t&8F; ŗ}'9u6?뮖paK^I#@d 1)KAmWrW7? =1:i΁k1<WGZ"bމjad r=̂)R.+4 .Ӹ$@sJJ9x~nfkڿhff|Hk35w{J82bT"aݪ'o>FW KI36. Q'bPg:f@[&;"ن|/]6eUA.;eJVQQ"ȩk&QäְRc(@kXЖ, d;v{%!`DEekz0աfi0&]70%VsD.gHKݙruBGsD&m@<Gl\?Y紞̤Sk3stw ԉuVbmv9aB-1*\V8>.}o(%Y2LZ;3H8 -QI(^P>knۓiEXְ̧oanYL؀a#?sxE7)P^6AsYvC6?W خ*2G529?hHc[٢%Zf撻 1D#h=l.**  d9 PaIuW7vܢ7@ϣ'6a:&ʲ^f5o iܖ2h\r?%'%2{};pWw9qp%}- 71J Շ*:*?Aֹ{ڒ8QQO/ |H*{2+@*OMdff#`n~\ R " K(8 *Λ4I/RS$aT4BA=lϺ:7]}sC獙I+ߵ,Q;W?WPN$:Gi /+V~IGk3d~Z4; ]DIR'0i4i03pj blG8WCM=P*B(|8dκ@7v5P#) }&ږ֥|@.X>*~ X%da)kx]O~&A>wқúgN3;[^EϷp76wk6e"zB*dD*Mݣ[g kaG S3F+Mȼv J,YEd3|n?nE\we"apV?\FF^'`Y SЬý`=cJE7g$=szXf,pO~UE@$"m tVdhWn8uQ>O;]IZF%9gs=A]љjwcy7މ/Vr@ywZ4)Lr݅ Yx6dm s؟<⟼ 1x f)ԣ?BTX7gˆS @R48+JP_b.-["#Mn^/NS wR^տ%&Ī1/ ΡU|/if$ $3h.FD&N8L<͢M):q8{P 䳏/_W=tFpwα;Ŝb>kwJE5 p= = SY :&m"`/ߜZ#E i +;m2x@qTw)pg!A6*fb`.m אIJ.m5ԙ uo]D!(9~[lZF*12G>* E4.#.;(hnG@ 꺉 Ұiðgi? 2#!!SyCḞa\5&`xd+® 3&x'@tBh.m:2OIџa j0SauI꿮e!oZ=!$#_ߧt65iP^0)k5*"o"LJ-6< <دi!~&G4(G:L=92{5sdRxǟUzXWi]$;|n'<'u?",$Jl )&C@G@㸔1Ǣ.:z0 ?p;o#9YqAO>/6nnJ!; q|VK&%$$.^#+Wh Fu| ]_HPY po6aNꖯ^sDzP>,$%\u_|n(vE[ACni&Euo^Fl<ȯKMB.|m(a`BK}X'5;>7&H*kyl5pPd/Ќ&4γz2=_0Y#&y>P.RVpO2Un?gkҝ-R@lVLTnyݾuc8#r]N-ˡNi,돪N< lϣ墨mUݗz%bg|T"(.A ЪTTU!Hqޅ%[*!bD5r߉T=ňn&( {7s06q0'1-# sV+3??65b=LPi?ÈrW$ڟDn1?QryC [XN00+X6KA(_D-/~$F~ Z_K<7B7GIbRQ059{:9,wK#0Ca NGȄ)Z[ X@JR O\,w,۸ nHfn01d:\d\ojrDclmsp??OWa:4 @l/Ns]BMnqN*|zt^4.xɷ<-Ԡ(trWNS@,fk2 s}:pW|Ώq:@7mg0pdA:!IzKpG7힛U=BW}$>"sl%nmh*t9QVDSحK/F螦$XGys:,E%brN|JؔS- wo)ǃY1*cnR1vೠ}"O[B^AZi9\qiru\ƾ&gct^-tPi6nEJ"D&_&$ӌQJ%  !\ӯUH\K^:'[M#uL3X Vo쒌9V'\Tyjt@} )uW~f$Ic G>YS4pN"<{]J0/Le){YA~e|"m  W0"ӣ?`27bOm F).ס)j̜IvJJnO VA`Gy䞖TԊϝHmˈ[a7Iը1`fTCO:3W-J&4ڼ 768Gw7-Ydv[s)K.ܟK8+i**OP1f6^^Ss}(( Rw Z> )x1ܪBcg>3we I GEaB~V |UHmz)`VLΪO}uy\]MYO#i \Gq`Eu(D:K#9\M8!,5jL3k O@JaND5zL}1k\0^19O} *9/8x7E/k8U88qd2Wg\dBn}Z^ڭ>PR;>ݞ!:`qY%48J8MC9Њ@UB0j?LºJu)IpTg[ ?XC$[-?0c-eO (^OSaF8á̸DPD#S`1RŢ&y=Fy%?,)bPR4vM~\Fd 4B[p#bG*[{M,ZS-IUo?R{ׁSRHpo' tiC·r M '%zX~q ^* rͮVS1*Te8@˶;[ۨ FIw@@%pN6&`ٓ#9ˣ;ĉ+}kZ㍨+d| ,l '?f092Imtw (VCo7Ic5rbP ڭ٬yN3 ~)3 bu' rS ;CC }ѤڎaQ148|f,`b hɃ:7aS<<8왬Oʺ ik$b =]7Mj)0`vw~ {޸"bS6ã#yWMBJNGvĥʹ[ ǔ{Z MEY Qhڸy&v-fK PQ▿si.qͭ=-*r*B°Ė[DQȯt`MEsת.$~V~ \ K&v$H5%[$xVb)YLtwT)[e qQԐM2{^ Ղ6CmɟCU4}j[Z^ ; ړԩxix5(aoǣ {-B?䯐yE떟#GYWQ7!MVCQZ}Ӳҏ^7irHJCA0:FaO J"h ,. ZZqCu hjxYbt@WT<zJGJ2K3;iMD=X5 J'\519QcKrOlFu'X:|~z=Lnfd#@.e3yY=ԔHq{ʘT7ZR!(3E7B>ц!A9b%C3~tg9s,Gc uT}P1 e6U,knM#~ow>ペ#P& $>BUأXn!$ i wj mP YLe#W']QLҶZ-!8)-$6ݔ x0"h`D /[puAٛЋ_E0)XP:`cY|r>-(H{*O(? \iɦP|ҧY)zϓ*Tk4mA(;,^bUy]F2,ِ*NA~!!;p|xsw!!x[D)v?2=&ԉb℄(u_.lyGnEIL& _9;4zۡk/v0x(or?[uVoRM.2v;hw@U/x:.QRoGd{.Z~i"t^gxI­C=$vz/ 3'Da //yGtY oZ[G7&6 .LT3t0'cLrsgp_oA( d6Ue]R7mybկ׌r#G69Si2&eMh Ѕ0s^*hAmq!Zne]D 5<' B馅VVPI!E;-7~ 1'L1 >KCFclw#ZU6)*wf#xXIFB%YI~ል!Dv*4^qo b&]a<*I6R?Vk ٪T`b ,0 z.HJ[G'DTs#o#"-lRh]`]M̈`[=%-DG^R k#)R"~O˴z7AsQ$s f`1~k""|՛Q w|hQÎ5h5%֜_|M5 2ÌS$u1}ĦDc fy$앖ƅ_^!"ˡߋ<~8B=vx&sMY4r?5jL&<*%)NU,gv#TL2.JS݈f 1دET"8<MVZ< U.@kn0%CZz^i6t;[~ƉJV2t~A'tN E2"9@Xau#4g!+7]Uk-%'Ǽ)o=BW)C*!.M!:qi?B?~[թPp$J~Z1Gw\ !cɨ96 ~,ט _mrf!rBƐ)veS/t"9ʘ/j,"p[\طf5t#/,r9*șA5^`t^/I1+{jN&jP;BxEO1NդpŹbC jƈ~Z-—81Y}y0t0wX OǡnkHr㡑d:* L;H8{gya(XîMb6: ٫ yr& T- z&ZeiE??9os0hu[1%]H>Ho` EaCsP}Mn}UmʹB4@7\կwjKyzy… oҥl7Rvq aB{ꖐN[6zq=A4t잯XIfxb.h:O"5t:t )O̰] S9h@KKϒ CI+ dXcuXЍdb-{F.S8\X`a֧Fۣ:\> n290z|j?f|4N 76!mW?IuHKb _֭kNdsC:=[ݬm`AOw;X_lɎAG17ŎZE4DPYh3([X- Xct*/Pw&0Eh?in|Ms RhUe"$BKa/G7״JXWQ͒uHң|7<'vMDp"`jw]~ry4ZmZߔYIHcLՆh}XF&=fSDPUj2p{O,gy)hP~ѱSdDF(sj/1NF!\q@2aC|R$`)%cjMIA-zlfZIrSwmpȢܶ+g((JFix޳i4eSF]G3)( = aNCTW?˩V\Ii,4>J k#j׸5317I:lVoS{?ΞP+M1[Xr%Uv8:_"<2".92]c2ř쇗JnHO.X Ky_H1t[jzB`LcySn)⯙GO/lYr[.+45q^Ψ\Jc()Ihݪu%E4Bq!PZ#|=ҩQ7B៰=QZ6Og1TcDv#oMꉿ@͒Vr=a߆Vx֚Z 4t$v]6T(aMR0E;F|H5^zo?%bHڕaf+1SųG5E{26ڃĢ:,j(X4iKOh|XX.VWwW!)E/?8oߚ<A:D[.pMchsc ~ϴ(%q-yE;y []`]ϡE񡦀6'Jba@ՍZAx"BF5Ϝ 3ģ$O!UceoS$8 eea6n Emja4+lN@Ρ-5lQ"m-j93'ڛ.Z%݁Ϟ٥}Qa&KO2- A.o@Î|yX[@S”j@Z6zlzVRDH ~^zI=`<AGN;vlJ.iB{NOn 5<@\jtF3 2fG>ՠL(h]t N$N܀ c(urZsITѡ$*gёYhzl}$`+kd&žp7ScX͵J #u12pG?l$QxH+F Ymo.z\?WJ&(# &;pJGACR1e&Wv3xF>jKJ6|ʄvBO7$u+M9W _s:bu߅Pܡ}ln@˶{g23rۡ j)H(dYK:8늄.PT*#WL-'x'mf]ڒȜ'g+';Ex9`ƠeQ 3p/X'SQ>G_|n#׍ƨB5p 8hgB8AR[ YoG~ŠK3k,zi? wUK#9k41Zx*{׎9h#(YβAGC}%̀,/\GM]%'-X V'iaЇ_o7s>3Z"3nOSü,j[I ]Xk|5f׫#hZ{\(g1WIDbY޴g YSo+]D;[L?fYfA܉i+iUFx3iN$#a6 R'D1C/&;䑄y -UNCYm_lE..cRdXt >rz?p}o`!+\9tVf]^R`CVU -M]/L|Q ܹFEǣf\7gtM ;bfqߊaw=[,{ը3CZ*XlO`[H^@pٶݷ@Aor; '$!O/1?'4KAb|lI/]ғxf9t8=m9#=WN1$@FD >@iJE8ncoD!Ү~ rROlV`>6!W2=^*Z)9 V7#_D ^bV1p/ꀣSc?*gg,@ SEaʶw #Škum:Um[VQ9b2(\,R,k b}3B΁Ża`ZX)?z/jbĀ1~7L'V+vCfkځƥmV"FG^UylU%s!' e70o:Vl[ ceado j'Y1C_%9 y f܋efPw?q,èS|}8VC&=tc8uDIt~ź~ȪCFRL7yڇ(e>FPfR39e' @;NaB~5, $OGr|6;M'=C_Q/] y/XVMT&R!u_v9iIg\5@WD-bsZ{y{npT0,b iH[.zȺP[1)&E,X>l~cX1&ZRwκfđ8PC1}GrďJ8VYȾΎda !}ȿ̱$wpdߺ.Dxx(,4%FY'5Nj>D5XT2\&f_LY[lOV` bJe'_:PLM} s Qw`҉sC*{T zkw4_9};{y3;,둛eylcOzfq$j=>+p m]Mp\)5n㇫6+L?O,yԏlTdy$yxپZ-A- bUܺ-hakj1[t7<{1Di'PR', "$df%*9o\ ]ti6seل=>) zڭ}(ɼW(;I8R1V\_]Vt*Lt8bg*3!^)0?B@-@5Ry|6Ơ}hY7H!hL8n#O fws9#Ch.7ɮ%Q)׆Zv9c57T}'B^ԢW6;z  .9wfdڃwOnBQ8Jܾ=女`ڛ4&l{PE|.* t]Jq ՖAMe,9Hz $]aD+ڦ RZ%]s#}61z RodBm魑M̂P9rM!JɾQj 6"\bA:`p͕/*Xx{Y.ӱdX[AhHpk˒}QEޙΆB"ls \燝ϰ2+F$ܸ|wlTD34-Oj]&WޣY o .`ǰ^~埘Z~$α7&k/SQ$+7*]7RɖW>V2'5C@DL!H8tݦ4떦b5DVWFP@$V3fE4y yQAL悮i'Q =PC1ّAi+X0(@B2j;Q>ktةҪ=X.x-?SuWо^%28|X,ՀƆʕB s­$'Fέ7; ] Nvb_J, 3wwF7\_ONK:B`YMˁ@?kE7z`uzR %tJ Kު$D='-C hoa Q#qhʛc%]?l1= v3^ ;x̊B@RWp;oI$Q `BNk]=-< ˟AV,K[a Sۊ_&Ԓu6men]ʈUfP-!'!M2(gw4ZĨ<x ӟHz0S`*M?u> Fh®i MeP;-Z)a}(0 Υ9[*]ݮA|?&AXl R/ Eq(`:yOv^֙v,1@Ax;W4osj2 6>+p G=PBwZqofہ => e${|׷ ג5dY#5Vg'1#uJHtGFy&i++wX5XleH!ԦUPM 1-6r1U^n%v)nF)Ejhy˖3c%0-8=yڊ!C|ԇSb2X74u稍%̔9F2;Sap6rߣfjue#cu_@2@R~NWqRh%pye1ba9(Q8/!A]LX9aĵ;Ԣ#hۃyP#%aȼ(2,#K0 WΪyu&q1I0ւF HQJ Vb_wq&MkK.Cv`A;0g ?/R~>! p)A< "R%Ǽ񩸨, Bd&L˞_CDCV va@!Ghac=>]v=gw_V֧W<n4@Ap΍Ls$.IŤ 9Mxz($t:ZݬW+‡xdf2 ڕl/# ^ffy>m D(qį D,n")Q?`Mʐtf YW2N_.HL&4R< 6 6m9,CeSnGe & /KQi n^XbsfQK/R =Vw-~e_Cх]kn|~>|*0)q\aGJ,A^7.5] kS|x:,JZp$[55wY6ЍvI{0/ПmOGH\>߸}s{"3tT ^3c 92x˰#h8[CGJ PUxD{')ϼ7ȎJ0RX'7W>xPiD7LVkoh>NL3!=ɞl}Y\`U\;G MTk !hVܙtUuNiG({FHpኢecVu4q㛴_ !gEʥ,?1E6INBՂn+eH2]o8įʔiA@]v!i^3 ֍^. L|Àf/)!8 sq;>8 ¼2esrAp!&`Ѧo%T|ӦDֈM~u![`` mTvpV3 C! ۦd#Q bO[EP7I;d8CEA8zQRϛZ6W^}\be6»06p8{X"g&.| e%o$l!Cz)k5hE Z,iuyz5>Mh8A{!zs8ۙ娟 D "ZC%Fj> lڧuY Ζ84]Sظ1;-)B=I&0 z'0{lgo4OW%'vq]*z FCjoM1.ΈG>dɾWʮ%R`KRl BQMRA7`kѿ>l, aM7S0`bp>TCt$"."XT!eJ#=  ̣^@Df<"a1"5|d,ń% t\ȴ+aA=}Vx-j&x*-Kpp^ot,  }uq~R]%Xqe5ey[ĥ>@Sq`*kRJTO+Q!.Qb,r R=̀б(=0~|D5[5A"M'a۰ۆ_p:!}%ʆ\QR-,32rwFq6mv~1\ (I?G;b[gLȎ_eYl!Ǚ}x͡7}U{ >H&W uh0lqk s^90f .]N/n#g>sO~-h|ʨϧ1bVXrp kB wLr700j&7yLC>J<9WV-+qO&[0Z̠q1C8JGHXHPܗ&O]\,hi?p421.{6|Yl/0E9_jyHEM++WߐS[װ+ *'8|(\5w|>{<#}'N&+[DFҶp鶲a' <#-6`xKnԲiXD<3l(~%1_e Xޖ;2|=鎪IkƒPqFO6&quƶ1-x⃸:5`wW!n?m7! OUl ټo@9r!/^}D*uRՊ"Hqgws(9FY}nECĆ0Uk7#T*θ~@ qu!%L`3рd P/If $Ti>8\zRsBO~9u k.;!yP]1XZG X;ߟ6U¥G,u~_+:-& mS:opm_>a.Ҁza9be&ee?UQj)l=hf(XW@rѕa\# ]yg[@G⯇WwUޏׂq_uBa\B@'ϭZ k8bȼs:N4]bR,TU#t_R dF^JHl~! G|cw=*)B)`%a81+@LK݁h͉,5zp'&6 49uXt'X)2gE R&>Nq֧8aT7`StkҦ>J:=2Eܿ\΍;ħ΀*I:V\,\q7~h4q6jn!ʡ& eؓxd$*vHZ,'g=Y7^}X[USfd.3ݟeN_ehE'J/t OhZZg12$:\BF-WE+ sجO|QcqT.2ߐTcJg A9O5UP`0)ƚ1ov( 9&fQܽcH8( .h 1јo=G 41L[S{[%-;vgncЀpVyE{5HP./5AE˽ yqI{NG)*-aEHKy2O0Hۍ{@ٮUټ?,Yx5*7"?ϒ}ALh(QbF ﳦ{؅al}ibJ$6woKny&{PM|e㌚Ű`ˏHCDgY냪(e!h=|~^;l+YZQy5z)G["Hq@ q>%߽ hkݬ1QL^4Xyxc}wTC v 3[THT|`j*jʒwN[bOiBu!n hr!eOR#YZ#{R47B_PcE QjvWĦN߆%eEi"`1fq>ТrBt6p $妧ߙ}v! uz(v`%"1 Duc'39njHq̴jAMZ72~M&W QjZ ’БۖzE) 7}jh%a)9HB (f[@/ $evKFe pξ-fwnp >Cw|%!+~]ʶJhˑ, `J }f pBaP@[n>qlHgsW8SRۊfJdMbnD*ʞVՎz1~6OA=zB5NĔF4]4N#pӎl@ o=o܋T} E:KR-Zwu}1𢚐>z&I/ͦ?|דLPA{dJ,4{7"Sv$1H=&O![qs[*5 HOt7=;xAHl.&Dg\wQ]yob JYvdF#OE srɒtћB$XkyS3w:޵*RPJ3GISP3 /RZN|ي (JQ*#ht y]j*~K9ܽҪ%:Le9afuD{&G%j|ga=f `f,˕ . Kڳqe^8,# 쬉l: $G76$Ӑɏ<3#1Lw4 O_=4+V)Þn0-7MWiAaXlsnRHrĎU" x6>3%x#ݴ`!sjx@ցP(6x^[Pسuٞs_qwwjFU%̙Pvq"v{^)O9%%."tCjҔyBRv,1b (fһ*{yDDphrq ef2?WȚqRCj{l nqkGz#GXŮZ&WJ,Qf-3tP mgy'.1k595tl2JZOUz'ۂomI!QeL+Z m{(vQ>&HsOB4b՟,wFIRa}ŊtG,ul[A5q9V\JI&a"Q7 n+s'v0*~[0MXˬy+7KMAHcٌ(}zh(a0z{+8ƹ{|,4`Ιh{%:$g2ݶ@a2t?Ѓ-ѳ6" ;Lҟglnhpl<6"aEu5[φ7"y׭_Yz!-Kxj2h¢YNSiRI4^F@t1S+䀎Zҁ>'0p \pf,)|/f]?H| tr+p!`e% T֚$ZS>d&o-|2ءk#\Ae%a 4hP5Mڊa(Iޱ.֤fN;ix$IpC3]u,;eW 2#X<ﳨBش!8#c֍`C>2YGa/nӃar19 ܎n3^Zǵ3rmz=sOm/-heLh%_wUv. yYhс1Є=<~zv߿@ߏr=TJVB_.lF/`WAߵ)B ^#ڎUNrz PpaM/뭧h8MUA4xslzp %C q&tB?:y~<u1<%+(3As\t?"'k=DS|.4AEQ e`|3$i>n{ܝ}og 35H]86FfR>dNÚq!Dg˧- dM>՟(uK,7Rx!7ZRagWXM~pIㅨZ7Up2$bPȮ!`/ u)S+"XSp~ @mCLy`˵JD)ٳ7 /ǙZB%xz:"e$ YK:77I+PԱ0 `+'o :>g,RvI>ӧ#WR/K V8aLD٨.S@{QOv>T8`^vI ww=y6SI6W9u%̰?bn ju`d$#~J6،j䶟P/Ec͖Kb*%/ݏ8٨DK 9^pVD. 1#D~]e\diR/뢒o<|di`m7Ug'j8Q'7i2ȡWަzeDDcY=ٶޣ1@?X SJ3!إ¶aR3 Q0DT;v\FPRdU~8݌b* %(A{gVғQv#9+8 Ģý5$h, w%QKkB(1lw<8pnԘ$|KfVB*̛(_/Nsդ@;Jφ|Y7Se4ߘ}iU觎1WT~K &h:: ENS^Rfo]*fgcP?Q{}\Y,xJ5E> əТ|+> ?hr,Bbo47vaf%Fi/8sV ˩xntwuPuAL|4eUDS5*{4*d99~4gpY_.ɝ=cmdLYb"?U?lL54QϧM&W**Obչ{oQ=%IDs`=WE},L,i9Lzd 7KljPB@m^(;eIO)k.|1ȑ,a 竧?~{otf-LJY?gLW1ԒA%va%9;yXY:9ƫČ/,EBQ}]Gl_)LJ3qY5rcu`D-R;|@TS^`~)<¡ &h,dw.z510't%6/afwAi\Ggܾ>$˿2#3VSoEnԆDz] @w4pxzA"cJ:w#Mj,8{2m" ^aq}ւb\!oX.^Uge\V}XC5G Ai)Wt~i^(h"hM{L2O$f|jfO0,dCv[D>[i=AH7Ql%;|rC0l7'Vw `[a!ʼn5UiDm7uׄ~SZ$8gƗ $u_ڹYvL =-,j.5Wqxޚ+|u/ucJb2(bsQ-V#mȑYrBȝ|FৄkPrۼ5´=̈́>mLO^ qqBS\Mݷf$(Ea7a|m7sx_l)׮9iiMR._S~sA }4Hc+l52S?Fn;RR:̸3~uͽQh س}aěQKg}3EWH#xB5Zjΰ6`:2;Bιgn{d  jiw0CaSBϽxPoxzdK? tC9cEcjUXv8. 8RI]kXZA!X<ƫVmSa@椚Lյ[8p|6V'vs߭X:ƣO鸦˿c#|'w t5ʭg,q3%d.wn|Sڑ]VeTS(C0;Sv!Á)ҔfU߄a1 MsRd!bdM5.ܞ Sbp#9C4L,S_8 À뼮pXmdo('6?曛Ibha-%m0[1=. t=;h7/CRk ͧޢs:]~"SheӲ"04*}ZC$RbF%Us1@XyᰣD2sNw͵Pw BF74`78EE^q0="dž 8و7 7 1v-}{S>zǦgXsa\ձb4MU4uꆿa(jD9%wA:i$.L b6B?}_7 ;+s$Hc5*&<]TL)/mfС{m3+ nPH\A Nׅ e# [E=Rf@أ H-Z`'J^i c%iKYB[ɿp7^RT&gKMɛƗs5 Wupns e-/@7.Fx:DZcI6Fpqf?czDjy>s<7g>H=פ&^POA d}tGRɁFWDA4?ZSlcF!϶"78*ݐ|8Vś:dF`y=ͺ'p#r]E]*s8ީ߁ )墀Gj-AAaɕsÔS?F(>gWrF_jte:c'Su'dPN *ap8b":LFUs/B:e}ʫq[7S"w%AL" +]°=y.)O Q‰(4W>l;$;u V%o/dd`ybtv\$ U.$-kEJ 3O;~!ddY09drl#tQN#Er`x gnGcclQ;,æ6^H ỏY]'kӷsS>1qU*&z/3ͱ$ycF(*u)/9/GӶ5mHVd|Y*h@b=;Ղfmg-ʋ+ŕP!ƈpdLد䬋Ȍ+`$ұ&PD5g8K:hM4F };mFșկvE #H[J2|?o e`-Ч8uH V/Ub[=bjIyRO POu@= \/yWXLMլ+Pv_wrx;C"%.iXi10wZ:~6*D ֍1n#]*""dS+.P~":%x/NLdR2k:0HX!e"*:UM-WRӑ&b3wlE N?}Q(. 9ź+W8N^3Oqwϊc@+-IC,C' Ub?1q}rʐn0sjWGl$8!HX-xjGz 9PN ϓ3lPE}R뎵GHT7,O݅ek劮i9a-i*y{WwO kEwUBiS|Mcȿ:J $2#ka$Nt;E{R[?VZNr\78P;\B<'EϠȚI Hg> lc j'PZ1lN7 cΙw&dpvȂA3-2usg .NVڝy_{Sq_)у~`X܅[[4q*Gz)$8W kZ*ǒvڹ.b<Nk7<=~@xBjj&00_q{Sjyd$3_y}Cj.51~rvFú -UCle cUjv@ۇ&T|3'g/dfZ^m/tiO-;*aإ))pN`X2r'Œd< nv{а|nѺ8_w_vy@ x6j_/_V !9o/B-+:˃Y4nM, dVܟrY]K :Ř=tBɈG\n^{8jN! rxi![}ҕ-*it!+]}u%p&7.7*ehum?.*,ˇK>:-%s)J35=mA~~q+ ȾHJ<ĭGbU颉|z>B̩(ܻ d${LjRZ7: e_('(e,%f ڴ3њ\vgoGlD\?NlSY2!͋mrq7NJ8fwWJv{yi+1lܶr(j2mh`Vռyga//U-!wB-;ZD ~ү_bk,ͧj![3TR { 6xԩm8<` 2Aguhr(ݐnO٩41N֖F: ԕU}HJy{tj֞ev j=:J"dpų_=p9ӆ7D%fTf]y[YD} pAXԑCYT$8!H'U`b:[v-lW̬P B=aNDzطP|C5+c@p8JJ%R4@3vߖ =w8W4alInAY]+]S"^_@8> ڢ7o@FǴ313.2([e}bZٱCپY"r,@aG)EA+QU2}fKhU )jwnc(|pfJ/2|GO*&K.-z{gy >\RZ+Gڕ`*"Iʱ mȠ0ƙ|W󧌥f%n&vͅQS'VKržTb(Gpa駸Mcgykˎ1Ibm뎔oX,YK hz ؚVi~#0=.yeĪ1`#Gwp8+GKa[\$GΕ]xY[ Acd#Y"waXJ  0 j6]ڲ 'K\PDgm{m2˽bm:Ƕ%]q5.ptfdt*wqҭ}gbOH\u&#QoξwbY&^}U>+eo`N SB<ҹ>_WS3<K-ծRؼ "$\TQ(kɍND'fuә&wN>Ql`qaR!Vri/+tYL2e*S[r Na\Zϕ׆^e r,J0EWYvn]vA0ēEkYtv0 HL52t[ ӌ0Uā0wPmeI62hyKcd4 HUO_9}d- L0-jDД*#:nf^?ˈ/go6F 5 4GfsG[Η6\N\[Dcڑb-W܇$BNBfz_73\Ƨ`akM[ԴKٍj@"鉘B"+?OHH9r=ǘ7 @ ?~~JY QKddp[ޒ}y{V(cc1uu4E~F E jज़5="8 똟-ky{_lF$/u{dþDYdk6f'mOF:UdZ+4šHǜR}+*,7] zں Q&RpOsJǖ\KԷ;ڤ.&ԧie nˠ'k #o( 5f_X-8"t.prYKX1qmdz HEiձ KR*w2e_Z⒰DSSR^kg=ʼܻ"qCT P"sL뀟=zds9]^lFmW߱ -@Sc[wK DpɷhZY;Xn3R| S+ rN*4.[0ߝГ&Ck]_~kOE 堒fʰ;ۖC\m㙧 tV3yl]OvsE;SFe0>lg s4||>kT%T a{ _,؞1 o s;g)F/G޺R8|E~M%M@guqfDCFV1ݘo.8ި.Zjx-x7;;]˶>qsS~laGl`Z^K櫯%0J3!Tk`ggCPik@4PYz`UKD4}ek1ck |X]Ⱦ@_%"WR@=O7 lVpz8Y'Hjrk}$-0bVwa,76a5fEm8mkky.NPg+0b!`FMrKp>:MpVם|jq;f.Gjss\qt,!%u#F֒i)knvX#_bR47lZ+:EVlӼsyNl? 9_aQ@bUa~[Q3fCxLbg=~l7~Ts. +('M}Cm4.'9l!WS9 痣 wfxBl[ao "$_6"maYerO|!Hq srtehMU7h]͢f)_Wl|1#" U^f≖(%l_?^_9ΖytƤФ`c>{Z &uZ]iu~ŀb&,tdEm]uF6Dq\il\*tG]Akz{avr|`P&9l,3J^&^u 8&CpK7"IoNKRT4׋+9#yYavt[>ck1P HGy|2G.i%?K@:xsT ,~ͬnva<G(Kj෈woS4Y΅wvi\p.tKg;\ jD0OYP6Y+/PK8i 04rc?=1,_rhoZC%5?_r8+]bv6]H_>n!XoG8𸿟P]YS^ Xbxոy`W>Tce1=z%Rq4S :Tu b *p3oO=Gt#3U+[-N 3_ 4π0t#IKsP =Fvoˢogt6t 1f()nJD"* ZzWϓm΀e&=3x!XIT;\_ J1SK2kR5qn^z)s)krVd Ī^4NAU+qN2PTd$3'`ś/6SICQw1i\'$`$@_zU גRęN lU_aG"N16#P F3 )D:%7\:xή'1oßGcx:;l`,+2ԈA$pm@rLؿr?+7\BCs {AP5h8_h}APȥ4~ph^:tElӘiS s?Ԙ&1:?<oSCh6 :@&4AhRm;uρS(IxdFeE%tVk/"+1b ÷0_hyZ;;;+\CEn$dIף# Y~Ƒ "J?l\ܳ MW>ST٘>p:jk|#O}|55ծX /J?n{ ESXn]]Yl۫4Z})%6@Ϙ n_. H52?8BJdv~$.bMZ#/ac&+%kY]z!=4dj084"ʓNg #܈T0+͒rQ5jU-I[5U-X"ZB+FLE?.E%l)jX= mnr8m)H 솁 JՅؒe' igaԼ$"#BDH[# e %Gԏ#'͹Gߤ.AdM0=J8{Ƿ+ gN~uJNt "P.(ES"i)^G*0Az% ÿX96*&Q |z5^@E'Bz!G Yχvxc954A"YI(t$jnC|h:3>֗2mo)x~}ϞԶ`h*'2(< wƐ:AئjZhC@,}zJ}fY4ǥn;Z!6}$*[Ntl`w8Syb`VnAk\d>Sh??^JҘ&EQnr!Av@;EDޛ8* YΞ;mQA9}v؜)1zI4SRdd4@ABpZ5&.UPaVafŕPOK : iN uWc ĶVǃmy UP-8.a^&ks,ѻ~jPJ<עTSxTfބd=^W lFo!zU>Y\,5[?%a՚686gVO_ÂKԒShjE|Onw/a]5{W960[O|UaY vaޥba=Z]I!>T:7ӸRe#]Ѓ> %?a-3D9y1.oa՛b591Cf%I\e~-y,}kT^L eȕnI-2̇ʏt٘<M44{vM[N ǀ e8fD0[Yz'0|5?J3ԒK 0*H1\OZ%K/QF;WП 1w ëEY5gZͮF{5:% Ǭ;{H=&-;t%0O'^ ^3XtNO!95`GqgԁYX^HnS_稪Ү' 8on<" o>˴4Ǻ{s}~;MdiQP^>fh dZP3*ȍNQ P̾[BQrXy\Ce*|{Z2$T;'<(Wأ+VRj@I"69|Wjn6Pŀ3f0NNCT,gd# !cO96HEGo`{bU$ZqEy녙G涤M^>%- `EclW2L"U唦57( h?ߢZ=_pޢg`!Go~鯩 JP1\l_lM+xMk&i" oTB$Q6+ٕ:a;yU]NZ줚ZyWyu EH8*3sH,3EqXOe[ ""V*cr;k*z ~rӥH#wevOXA$}עhTGn4^29D̨Cb vߧ5I0Pŕ\Ӎ O>grRͅA`\fr{M ^d &yìݘ#y]D'%c7zDե}9`-|Z"Q|} Z p"BMn΃]1ӦZԄVjmS+ݘ7W3w.=Ď?ѥ0\8 ƒ$JaF$u-V,$0S|8CX)3>bRorl&klJCOCd~#\֚e/k=}mGLpZ-!HFm_ jx/ n/cWlK=Wœ4([ʉ(|ЫP` O+\},}K8+;{_3TiFo)/ 4 F\ JmЙ9*@d;%2}.C$3J8Hc~]:Ʋ'Vl˘~ >^V%־gR b.z\5|qo0_odhڡn<ǞL{O2uCI^3WsQjwO0hQ{:ecsv_Ӯhϳm~m13,۩}W^Zv*+2Z~+՞Yq`0ʗ{a)NBCڔ~(%B Bm N݁Ia>onkB%;hMXK(FZ0so[9tQV7Eh-1tN|M !oc蛲Eझጣw.ޔ;'ѱ:V/Spy]70>XeZi#PhGI@ҽ #{2v#:|SrUrGì/9/w<AãsVGʒ̀4/H9Y2- gyyvώ=Fd1"}NRnR*S1j᭸A$vBD,ӝ5Y;ÿɋвwȽ jr\f{Q}`uؕ/]a;bQ@t~qH\lgiL*ƧV-}bް}{jGhI_XyJvSNB d35BXpT֔&dpJg#{w0eB-}6l EV|ZHh|oKq4@:`` q 勽y "pٴGO+~%EM#ċ7X; FQSs},tέ?^ 6@nM TG2%Jocc˚ΐV"prNȌ7O},[#YgY=6=XNc@=$z*7>Е~űhiyј*S _o O3\!M& =09˾4!XSݵ&OJ܆%i_mwcgi< \4Aqm+BG`=F.㥒LaHs~IAY͍E:Yp34qD<ү\^!ccF87O69W:wdvMH@w(PvcBa;u^98y]-xt 3ZM-aQ\OA|h*0FìoY8z8!e1R;:UbS NSP4q?,iɭPIY߂ջ' f4#O0[ F8vo ywѧӣ͠H*aDb;ϤfaT}(˖_lbJCϋBU )K"~)јfBA`5r= INN +x 2lPt8WW>X~xDnttS^85TepH! nzmC8R~ /8 ή`$qb`* Ke:@%[~6[^{Fv4ё_u궃a. d;c3[Tϣ5؋7Qf cDovj=cNZK.)Ӵ╻}u8`M=CwTJ,XÓQ S0%( ɅI)!։u; K!sxȾHMUX?5ᙶC5fs476bwʡ&hoװs#R"Φ7ק?̍yã;-sz,p5c#$` s$tsYz&4r_l-}q͋V5tyyxG_Td^Mgt%'\ƽzA3lAB[Y!mUAs_vnBvfH86%˃b\"aus1,1PFK7PG^Wyg"Q5| {]ż / f_M%z2j> +1gLXMNwÎcE ҥsݭV?Η[ͅ06ǣ j X dIZP- c W;-G#)py_HS!Cg0`;C -'>!+t?Ř*[ˣ?x)[LW.#:u?OU;L&3U"9Hdp\L^_֕| Gy7kx=e)N(W`pWJ@l?ȷ%8\&ɘy=6oe3KxsxTU̔\!YhX^>x-p]B.\L_сċ$8t8WӘQ|) r͘'}<b'_" p752w䴻=%eS$ȩX9;y; e-ե`i j!q,DkV(%)]?#Z0NRg( RL0Ϩ>f!Uɳe)P ޺VemH7 UǡPil h=p*@&- (,K0XOݔcTW㛢vΪƍՈZ'>m>P.'tvN>$8ABOB<8R5]{& dovP,EBQv2Hz)pw aޫRo2|GU}%kHV5Rœ[zxܦf-^+d>llV'La,0m0V[4eڛNNz%Sʬδv[V w,Y7x׊f}a_gJkw\"!;#P04]><ɍ3!2!J@ܒz1+Z5]ErQ߭6%O}2qdr=iSy{]sc/އϣh!i;<Pv) ]Q׻`}jSO-c+cNf/^fT=Kc/2ɬY7ڻJͨIX>Xq+}SCC,=SH1/jc;e1-b%zk*̗K4r`^C/$ǐ QLT?!rҗ=)LI_d4I̷N뤚<NE096?&9p .L`͡D.&RC ̴s9 shB'4u}#YY {rn?jKCm1َ똙q~̍6l*镏I8tqE\'Y-+V0t㻄cϗtS@ oO~lAcAfG!#6D8 R4G}E,zR\H"l$pM[s!$ג;G_|#'<1~5))ʷ4o4dS$ڻ*& -HP6>sk 8 UqZ1G@k8bk8 dxvM_P|1EaWg cggrԆ靼`qhȃ{jPIi ˕fA~T2Vt-Xl?E^lFQ<_%7$cr2@Ae2 lVi^݀PܞLvLȹqy W4b!B ۯۜtWٸMz³:і:i*,9M|68џccZ}'.V Ͳ*gf٨Nj яOK'=;bbE אU83|̙KrΊ6FIƔxX9l1AsMw1[NDža{ppFJ-h.^xE'&=Ӯf+ %Xn:t^0w@J{')>R #`#bDral-̡+JJv@g?h+/$w>>> 4Y cN^9.-dmZ{ߡ`HI'lU i \EĥQs1tEE\Ճaz1˪b2߻ v9池k)Z,<Ƕ8en1j7h[_XmFKp3knь+c5k1- 5B!zh0 |=;4%):4A}!8\ ,g!"1H_#]g7* "?-D>{ojJ&/<=J$|U#YaD{oa+ڷY(L5U <O49]M1f+.`L'N3 Q@]ӽ \[c#jh$r4Ni+ϛIhrBs{mʛA"E[>$PM<ӝzbyAR86I-L*E`蠱CNk T07Ń#M6.9q:J/LJa5NM['ʜᬓUx*k!PJbrJ`C)\p3-(Yɑ8kLy~=6 Eݓok`oќQK\^a!^*aStwrJ"[gp0p$ l) F>CXQzIT$kKQe1UK75irdDQ.^"biK7s5POt`o}OIjf I*B7 1֑,fGeQ ">韊>M,KG 0?3Iiɘ߸+܎jۯUd%&IySvBlOÙ0<^bjz֘za %,n!UŠi/cgŻ4*`9Y#!b4#"oi\𻳛Bz_B?"Z2A0m)FmKng\vՅquh8Br_hW:L'rhJ=.3#}9WRFm[^\qj whr6IdKI62HKnJB\뎧1(oM dw!GG+dTZϟwPAv)U#2Ki1dLR.9FȻ{ aQX]5wP?jIH`MցƁճ>ǞjiluCM!?*3h)uRv#\k4$h%ȯ[fŮMglw4UBgݳY vEW|ĎD+Iwev-5 ޒx3 п 7&k)YC`bcJh#C<ܫlkNg)>m~Cڦ` 4 `XgŌp6Rd-kTwnk/23K~UyX{bawni E^5GJ,I帇v2yRV)6vPN٦&H~9oZ3Mh >؊Q1EҎT}tUXenеRoOݤΑgZ=ds7#?5' RLIsQ;,luyb^3v&5ͤxE8mpT6 x[+eYe#d VY]!dV+`K"q^6~V[|uǏ~$b`ז?N2I_|J?gCblZ2j,"$Y8i2m{ka B&.Ŵ1F"qoE,>=iƭZŅ)N$?<EyjJHN*7/VX0﹢ o S%}̐gs/F!݇: pmעj-~DYUc%dzcVD tfNA=xKEᖻ]&~|[>EewZIЉ9t%9/>Zw5ϔZ 9xBQȥkmSWxz4;y~qCWA\Ʀ O,K%H1.˻ubm.X)"2xU|^<,tڿ/on.nC5v;Bp _/𩼈ITe*cUJbꇞb_|9 )=EP~i,o_u**aۄ_@_mz0w X xjmN.6X-x7,F=wG}QRrscSԻtE2n{Q@ vd a~ b~RRp{Qdx yƂr^F $b7?E> Rl0w`3y2{CY5t9Yo+5wO)gμ,,B/I]IEVy 4ē%3Ȧ*X -qmGE 6l2 ԨT7“NDvLIas ǏVFmzbƆa2FJ¶z[ңlCd(QZQ4!D|&'BGy83H 3D)]^ 'L/ڦf`](^^vAU'EOa s-M2aCL˙ }%*  N)A cݳ߆98~^EB81' 8CvE`X/ }r1MFy苧+b˖PH|/1S2gD]Ztλa)_%^^8ডh: ^aylΣ[fi7Kl?(Zld/UZ/npJ+e-xA[M-a.v8܃&mj~[#sݮ[|8#\F?&ׄ?Zi@W,z⛱vE˧Dף=au͕~n/S- N@^+pU\vy8Z3W颛JSp4Y[6|@uK@ڐ7x\g $.-OЩ8'f-H/&,} F]Iu.ǃ(eno~`(6O@Q1><5EWq0@|N+ %mc{(x?*P!o GGĝNJ=k{,H=碑z.AK z Fu}lBbF{o[ m*) za960p4 0ޛ A(:i)kɿGkS7I/{39X%mSjs>C,Q(/77tZ&)fhx4M@jl~StT1Hw*OR/i~$ ]}/-Kyb5Y|>E:&b;Xl3܈VՆtq6`-W&s >'Jft(VØaE<_XI޿;"+HԷޒ]:zH!uN5R2 I4C5 sT8;;' NeW]r@[^7M4%}h}Kd%t`!FNWp"a JlxziuEAXdӡQZN\(/Ur+XI2 f FO0 jJ%H)!8:OZx2v|Q^-Tt|m(YjLE"g( Uג\ʚP/}m/ܠ\^.J :ypNbGS˦MuB#W|QݕŖ2|;cAq$x ~"~~))(w M5,&bdwyJ"'8sm׫~HY15Ozs=F\x:OŒ;ɇ'4!&/S<%Dҩ> +7It׉qہW+0t"RvZĞƓ::z|Ԭ=~-@Cɻ<I VyisF,QņY(lXZPӵ"j/-8uV>#^M[r!gf(.+T)KXUr٘%Gid`BxV7Z0TՓyחpW!1>M)P^,ݧiAXKVz~o2ھ)5uIk&$p}]اW^x%G[Btqu>.>d26lv6r7-rdQ:@ \5 sշ76Nf.gJ3?--s{HPЧ3|btS#]wXL[jF#gT׸n~c1àIm<’x |"ڔ ʥ|?P£\D& p;6,Lt#:kRq`qȘ]]g ZtC%= ~i4{p;]i¬8]o)#Aaة~dS/2?qp(WWQc9|;ieT~A3ԓrd(r54ICc6A+?(/"~4fBmG߭Pח=2HL5伣)x Ë8*ܠڎeK!C zYCBJ!.~+t&E̛[=d'=L ,ۙ \Abq !rVe-[0<3+|mb0eDzxwU4LyJ}fUUIdGЌ9Xa. @hnMk$iuQRs{HM *$ ^Bb Q;,p`@lɯ+;.͙\@YTb>Ѣ4m oA/Өfn@S188izyj#mM+t.)B L7/e[#D"iE25ټZ  z˛wgFw*ȥEWªϠ+ E˝%<>J \i&❻#?E WO=8.Xm+hp,z8YxWAgwM ?EkIT1PiCaq|*oRx ;(ɼ3"DSErRpwR_Q_ q|uP=sUHεW/d&vs\t.Igm6ܭP ˡ#w;CcQesdtcL W"knbQߡ w#QdNFhn.QQ5?6Zܲ$)Oˏw^Yp7?ckftW"Xh62|v&{ldHΙzȀ,׈Lk):,<(~$&iTbuca|SLQ}pu[4)B9{2gNt ˚ꃣ%M*ř o%8q `RdbA&UT %oWV+//0~g ?؞RvyU_v2_"epiR#Ձ] Nʩ-j6ŢW'LG#WyBɐ.5e>N:76N&uj6pj8M S̎ojT}A* Ab0U70< 8\oQ;=/<Iv|vח{;Eo>C$4,[PSfy$ZyQv?JT( )|Ql"6ਮ07L#G ^;K gmQ|[9t>˵ w$'#pBD6z us2b3K>e gKka3d,/ͅq jt2uNJ4g $ScVAMF Vd-{עDZ4BMY9lQȮ|dX9{W{ZԋZGQNjq-!BG3c[cVl0)8:sWkl<k&:&S#v"ah] Ar^VޑqĢk) }q{re/ Qhlq,,6"FtŠm"K$4U#QZȝM%!4E %&KnmuĠǫjqɌei7\auH}g 'oōYr᜹w Eؠj% u€3D8mjn6[\f;*_>qhgo, u{Ek0DXfMH};_,V C@q8Kh 7tbѨZ9Pt48jnEW]RgS}+& &r]?W8 "O[0F:aokc۾KJ1QHLǑ2dU0 EJ+{H]^מ&&qU蒋’B T ,zd#` Y,'uqʕ x1\_tA Rv,O*Np^0RLZ)`~Z7kUِ`˾ 0&P6Loo5FĞ<ʸyæmX=8>yч p 6WH0"ʐد5&p40|~W?奟MXaX*3 K˙wn=",{NXa}otH^䙰nϠ 3VJ6(w]Lk`g-5FJS. 0i(3NƱӪZ㷫Q b:8U'mw_SQNqj3b!yK' gu?Ħ40+$ >'v?>l8 Sמ͍* N?TlXa^m5wþrF[n_Xq-cIwso|9+i_+SLjIkXIbˌF2A(B,U>sx?nwoZwtdW<"$hkVVy{@j7;TN"ݓaKИ)6;ۄ8)_ꤝ@E b,Wlm8\a&dg(x: [81bWRށ\PsLC{r,@SFt%x ĕcJ+c 8gtUNu (C:c{@VtڎG0]KxƼ7frC)B98 7y.)47O-X{k*jښ Y8Ҝ}0W@3F)4hVK.^)ZcblPS}V\\Lrb10,+=!֧!RX`h%SZEPψdzoEIy7.wò 7gq9l2PY%X(20t T/X4sEa'od=v2DZtR0fr2qL\ q {.v A f4ON~.hvIݛ]Bu% *F~oDh2zv ?9As]Σ~ܢG"&v`Qo_)-Mpc$pKA, a@\L[I*Ut.ϻ{ [aF}iRe kf<<B$+U^4f"3̌fhorA<`KhtoP7z.[/FNݒb@Zmqehi`ܥ^$%( nPL kyuqzz'\k%.aQ<<t]m{($|o&mss)r2H-#Ujnoj/XCW&CtQK}.(zoQ&}>?:X<}Btl.{YfAP83yqp)2;K3f|st8S^*[]9@#&E5}?hKLy=h-kH`7y#k*ESvOލC; f6>_ѪW]l ~#vX{7h-CGB/z dj4pQ^MZYa{]¦‚/gv1(F"]7sjb5\TL=Cxe"Wod_4NTy&U,h%uJІt3^jen4XC8VҍFt StƘzs( <8w#1_ bfC=FHFo#< nM'Ø^-ESVlP@MY(cAMMv(lCzcxU;U>׾6[uY-ڟO7Ɗ*wVGNNn/=PK+t2hx6{p4 r9!*7Ce_]#2 C{v3]1-MytBb ꝗ5L tXX0a,˯};3gV`{'Ѣ{-Xo4G%}F-~p 협iWd\1H;Ɂ.وHS7޿r[`]i\-Y" Ƃ@N_XW9:. 6T3c(P\J!E3t$ _1;y1εmy}Ӈ:+VmB5K2z 2nOd(lFE٧AZ=Y WkUIcv;,Qo: gh0[0&wM*oCs%^+[$Lc,`) I+&BBprz<^~ǜC{/^V+C/ -G'޺/=*2k0]np$wwĴ=֮NJc)(b Ö)hRsc(/+:LMe iUM%ǛKât-%->IgL@ 8 ) lGv z%u+2W2Xq(lh>~yW_9ndm`fVYg9>#ܙa)ąΏm$y, O̙kTe%0ö́lzwWӊiG=>lu4ިowh|5W/_D%qD =>#Krd9WRc*β%wAѐry~ȨE+K@;+5P^k 4ɸWȹq gCzCeAHA((1$hi|ko;7>Nʝy&?@@S>M0s !GP3QxUߐaAapcϮ޽M7tEr:7[*RUJ/h`As[ Y%G'HpVP뙮H*>Ohˣ2zog:UЫ DW.Cz$iinY,fJ?kR_(֙;+/.+T7Ya@Q'qcuEzrq(ppl6uv~Zh4JL>0ؗb%tvR3ڋ5,[l: {B5FBE47w$bvR@5 Gɰ-#*/Y4E2]s'#5v!^sv7-9Kid׷x@"52YΪU)C?Xt] r?d'B. y4JݪP͂򐗳)#v#=kH ?Y) g ngz{l9?gdTBPz>:4:anਖmi,%T>㣥_Yך Eܥdg. (&}xqho &{>NU Z/hV3ܢџ` TrJn$yx~]|!.,X;,7b_5#PR|p&֌˚]WBD{FםNzrrv{8nGҭ8/9>5"$x RoT]f+Xy$,ZޚZ؏ϐmU쬝zeS`Hgզ23m5rHpq`Dl0Qz>H\>YCiD7\zֿHUs>9n |눮~?c/hD'6&aLѤ聺𵗣XG3Ѹɬcj4L1,+ÒR`᷸Vxd.a-=3W}i&DD8D EL@ƏZEE @cv:ЬO䇧,P).eB"ݪ5ΝM :,f=VVotНPхAr%Et9߳5i4 DNJxWh&[,!{ha#/kĐӋ#zλ?<"+3u{LڮP7ݏyeM7+|d"쏬ZѐN9ٝguL- ,EBte?&t2^=tt !vdd2;'y7i8u+$Fm5sܴ8=n󄌳dTK\2gl"+˙Kƣy_+qxyd!䄨 _3 ]x)E*! V c&S1eOvxgPϑh%\Dp !1pW$A_:sMdsҶ 0ƚNԷsÔ1do}Y[T)\u;S,bwh.Vo!ˈF."]/ WXq6Tµ:O%ȧ\ ~TM$3ŗ+m 0%z@%P[cBQdcQDgÿz O@ ć/C Zd OKo|S0uq =lf[,m2ֽܵt j:5S;KWmxMuD=䌹=Oȣ΅B ]c6G9PHY4`ɪձ/R٥K‘8U^lc)c&H)TcئKR_9Ӝ@l7`19汎u*șY;Z;턭iů1o?D|D ƧS7Hw('_i|\)b"kNҦ?k?(O'ӾLmb.~fS.h @.ӲZ&r4jҋj Z cHS @2xNdcz69(LD7 L{uV:=Qo ”%1GqAśnv{?t~XL|M;# ;>Q}:D}[*HAWN>p r|pH`Df#Hn! -[`POOR8G2'-e}h棔'ȎwJ00/^WDh]i`cjJ墕KV /)˴LWzy*t@W"QH}LM:wre]XXӝXPFEEMsJ]L)$w=Jy4Bc-P92'!nhL50L }GWMtXX - 3˝WMq$KLNRJ9ZpOao!|kOG}7%JlL ,pL[z[ʠg*f_M$|eg-rs+:c1+sT.QVA}E>Y=E/J:NbT5Vp[S!ı=aoɮ4,6 w#ScPޡMe(ƀ IKq C,A%!vR/,,1"p m|5nef2[. X5j?sx*_zM-qJ#C9\V@/h4~g0!j_0\/ y ]1%/ja*z2[n]= ÛTIx?5#l aD%N;Bh"UDLRJ\۟7l$d֔P cK.bz89}uotiDzݼIC|`J39VQL(*4wwY{a-!xrV9BMDj6?M7a4*#F߬gǠl]5K[ , lSghσq0fᕾgRIj# s+7&wd&>䜛/5L'EzD!&|L{?Bf-{ωz.HXjUX'fiHvfb7hxݵ{1Q^캛=[ʭVqY]3xε⹇x;2Rqkh݂K"A?Q<|7m_hEh?nDf%2t[ZK.!Zʂ<2i.QӰY[wXjჹIw!ՁXh=oK89WyFs}?{ :떳 S_:䁍`^ҬRh]! jP׶t֦SJX__o3(V0G*VU&m4JQ<$*v~ᗞj(P%_1_ 嚊bo`0Kj-*Ŏ/yEp$ƓȶH/f"۰}hs iG)㬞:eX3 .ݖLΦ! dE}]@ǂ,͊MMܛdҮ0</ꕕ)"//NmI: Hb{[ {]5y=k78C=P` 3:H &=|쨣14%asUฑ DFvu{Xfd~0 AV4oj J*/H`_@n!"/1mC,E%ha @E9'{.tn8܋t/)rzrN@oTݙʡ6d+vTqLPޕ-1"ޕs_xRK]8#qf1gpdžhPiJn cݿvQ+OA=faHNm &S*̡"g6G:kmJ? 8G-] ۷{qa]ڢW̢_W{Irymxr%(=:&5 ߒS+}bLTCRP` %WHY0;aU}^*WO`QDdLΒz{۫yve?܅"*!e;|+dԌ2H׳^#D`P6Z XټTX]=0G3c8vu]K@LH.$M ؀B YӲf=c|COӚF=qh (lf\$q۲7͎ʧDyc[q|[w,X@] D~f,Ӛl^#VtǩJSEeG;OX孲ƯD%86_UўQ.FH e|a"KC N }A &R` VЂ"-N]N_g-jf5F&pRm\j[]JupYOԬȚ>/MUGpB(2e_+?1/~ff]:md m Y$8xmF[Le:UG}FK9+#Rjv%O*`ԸrYFWLWv]bp, -P*څ9?P>.C$f aR5,CUé[O /5PDs3pMDyn؂=Lxs3Ⱥ(PQ]XAp?c"Q` S2~Y G9ՎvBBSWœ~l9<`WwH?)QR߳&[+<b>w]?q$;yYQǜJKf\0Q n㍣>a~a!yEn\aӭ'>4h<\ׇ>AƫՓ?IB^$Q^|(h ,[In6EX¢`kDZ QawxԙF@-}7k) +1? |`4[3)?7ݑ~ry_<1͈oo/EpؒMyƗ{hJ܄לAiWy8 n{aT Zb4I,4أⱔ⎬t D4ŤyO7+hLخi52]&ce'["+SɚL.V >[>ye&ڧؼg;톎P'`it e|;DZx:7bWWD3K!4? WI?";KrsqZ;>8R(RNV@};%CJU#!=b= L-[LgeCnNz.j}[R^(NġKem w}D5|Ew#%\u0:nP"X6SXw~FsY/Ț>B%ch7<4rhu҆o^/0dm egzz~4fiY?͆%;ktDcT5ԎĥbPP>)^9iF5ݨ4Tg[D獸xo894+!ӡ^4 bZ\J-R5UR9L)WW;^:̋V\&?1vA|J$XMkHp(-݇ W&,?LHY{K%7pM]y9hI ԠrʒЦY(+! $eϾ- vxamtso+©="f2DETB.h/Xx@13%N`nbf=x"iֶ/$EY"YJ ifcCdSΘbb>f12-dQYM<$zJ]Qz%SN5k|))OT7 ?ȆDvYdE Z͊L]f@kE\,qY&Iu !Bzֶ~.Pt+;t h8!\ժg 7%@~;aNC7|OdA뿯Gy~ՐjKgR ӜΤBd'-tȖ{˧҃o*Pmݹ6X>AB ?zhIopj,ۘ'ٵ!Y~Hf%9pXvK,GSM5_ r0y4E>[i{z9O飑b@MP)x^iVv4P2(&B~*_ X@I^M<GG*cFjg3{)7<@_KUaPѹzb ;U'*6b>  +QM~qS~S(u,b ״QX=b8^E=Iqdt- ;HD糢DƱ7h]E`Myަesd>πˬ;x^ qv4Wb?ԈDvAu'l[^v X\hMNn)޾1ٙ{J;xїTECȢ Rgᅦ'u'ֽo+&n|SFs*0_WV~-]X!Hb{[2_J́}9?G_"ǯ ΐMT(0hpnE?QMlg/ZTLabnČg5>(g'b۹Awd6מ}O((:}\оB?eEY2`62~▏HԪ~1T p f#{!_hUĵu1,Ѽ"C# kTXRsmBfOR q!"}.ʓX\bCD5hrmf;|[f嚙)=}]AԷ_e y/U՘,x]+ڱxwJOa Zq!\?KJ̓T[Xw* 541èGB7I~y'v7?L> 5_3Dg6H7 nⴸ[%W/0@RJkĝ?m x [982S;T BtJyji ]q '4vJ1'5`6Y~ʘ=W@`0tϝ5W7([3 ת\b)ZO"ZT2_*XHȞ15KW3>oęwⱉzT꿧EeC…1V_辰ŗsR mOE zjN8OnLPP%+St:#MݢA;][IPR`~@ٌi]]OaZgZ3yN߬%INJu1I2\y>]<G{p /ڧTogG. 48_8 ְpv_G9mO;fVN۴ ^ /ͦU[Wt[=AՐ~{CvpRbCahs@@~}usoVkEx2KXъKٚO9wGx@I @i@KWÝ^f3ʵw1޹G)r{;uViQ}⧆k q(-> ?-,*#[tL{ jΎʳAdk#bQI\3'gGD{Qjh)s=N tPbU3E>US4|ޙCL\ȝ3)  H7 jƂC,A$`CgJ^Pkv2u`D23>#p1<OzP;R%@@o,9&2%> ׻; \3 ŗ RmW9Bu͆`2yg/#]35tv<82ڡMXM) Nb{oNԬ{Ō)'saM$ZV1Ծp怍"ƣ:/]ʼ%(hEmyVOI}*K|㭠 z3)+ x.dcFw+#M=/ݒY5 ksi1ʢ3;/\A*ak0.m9(-+4v eQckl.Y(|sΈrtO9~ngp @~s |Q.oSY; 9ñ˅D&xc/=Pt[p6kQ2& a9 sYTy=YxܝHd]QaHUU$zL9!PpQ~ϮfLƈWik˨NES:"suK2L}q'Bg:F8.Nn:+:Z9jBw:L\#e#c;9٥ݕzUP E֌|%j%<%ij37v3C8v1 wu}&3PyfJ;ޗUFX{| &cS\D{m`d } cjZ+ɔ"ކ0bCa}= ?={/} ׿׻9zܚe(>g1en5 pmV SojD4bn U_yWu90 O/3a6DSN#C& A_Ur_)tRLczTNK׀'g jJZgw͋/5,h=([FC$\5h|Kݗ08pBL~^>Um#g$Hhool"JhYfV᭨GzSҝٌ_NJ|ϱ3%EOc![_̊NTfMJpol^Q.]^ؾHh;a'mW 5KRf*Bq +ɔJǎ\r0,+aU@1vMIᡢ`nq9'ˌj-O^Nr:B:|G@9xg!Z}Shvo 5LT-^ 7r#3Ƃ靊?ءbQL@yek̰ye8CeC\%0mOG$ʭʖN'<|s[ vgEraLF>dz4az)pTx9(WUW!/UGIxP%ѥ'^QrN^5*x zr^?L=m];78LPE e%B ׿2pr-mv Up't[mߔ;/ 7bԦH 'M̒]\(^l}kytknιEiNd"`|. ?)bE +#u[ ֗+q9TZ"FZ"ЎG]^f:t_~Mp_'oOvq)F?/E|՟6:.ݐQ6ot"j2a`ݾYR3/18 !y{ -V}1jj^4/l ~X ].V܃uu?ȢoX;R&l֓&b⭕8#lK-,4DO 5 ,lݠ(j9''؏~X/0p1?BZAQz,im*Ū#iB7,嶾9A7ܴ}VAI#= GK\n/I560[Z)$\'Li/ia?ggI7Zm%@笠ކ`di29hfU2  _uHQaG$zօ}rLo8IpwN Mճ$|WWqC|] ǶiƜHp|QB;ӖGVK}aEn\ Aǘ92¸Tf""r<lЁLuG4y &;>*`iE{FlYCG 8ۦ ꧰Ki$(ʿ (-M֨q n2@IfU,e:V Dyac# wsr2b.71pjrKYRjct ##X;4-+ZqKRN֯m3чGxjuLg yXFVıSvȩB'(ԍ*k[U%938B=&uyQQ;WU"ED\@cMb k_xt#`MBy'WZ׳mu.9 5f.ЉYy'0Dٹݱqm36#ҏp)HFE-_[;\[ODYnqpo؟pyې& 2{8߽E`16z%'E$Pc`PU kgw9_z]rB9c\ͪ>ٻ^x*\SAL&qLL>Se €ydC@=ͶXmogrΜVGe ٱ[U䷾ ,9{[zk-%+EUKL @܏]ȼBfj(sqQ@w}c H.ah!{L>&%e}2KutHpV$ ߲F=}`x 5(f*Vg_M(B.!@)NW 9v|[+ITk[B͊]#8/2%֠LҴJK0dvUP]e1ej}*VIfo=2=-_ѸQkHi;'b[^lGs]" })E' KyAM,1աPb<%ҏf>V!ۍlXm[  ٹ= TK1.bf6n+Y?y!w=x[ueCv<_G2M\ `[]¾;((P! Z (TMSrKltO&cָrFo-ұa4ar| !}!o*_:qFwEz7͍<׃r+}Z5Zg|>x~NK{ < mV-V2'IlkAQ=i!D5_3tRqh`TzgQjB}YQv[*n76>#6$n#c;->QA \B^ E&J>iʠ& ^a_|\gRAv?D/ǠqIvDqj(5wV-mnwlZSڧi%.]tx8teӊx@?wNg>8uƶnùM cz{˴+ͱ2ʓmFZPvQI8Ez6ĪS,qޔt&>bkMZCYVvU2EUvlp4Ʃ˗b[Pcw 2"j|, ɺ xS<{ O.O鉗|bmӦǙ]h6wZ5le8^5-5<ȣkx9Rō~'pXw 6Ӳ=sTpLU=0@ cU3- d$+*h~Q\q^I-tRxH <$Z0J_: *r8{fʹk-b}2x'2sSS?/樂Nsu5c`4ޟT²5` ^gx- H? \Fۢg*#MB(g1ކ^HE*}5h1[#AD=9l@6Yn]hXRwϛ(]&GBUeu'R8 #gTmH7-`DE۝דq`y 9Ŗ6)z+87 漷ZΑV2FUt_Q*2V)H9>2SKU0 +IPS %=SBN?ʐ_q&VGF8ܜ} k{*orOSibpFL֒ΗM%wɉ+-}hP\h[Rv-͇ɡ!?L; >[Wb6FK%;tF-d)rI.D,s!6S9~K`ZF]L- boO0-vT1HCNKOaul Lr:Kwm(f1e˸G܅i`C;P qLKvԃGܜFc70"FV@eں%e~^fdM7sA7WsgVT{^lOʼn-l+ v&0I@fL3 KVDCN3Kp 5M) XPX H]9'OD_XdADR;Q 1ّ܌,j@|o'>U#Ym~(LK-ZRڽ$/)W 0P.H EbcXYFkzIa|\zwަZpTZ% qʂ, KH7voqEH$JYaw1 ə"TCfܳq0m2mT_5JO P,WM=䵭R_Ȕw:cT5) 6Xc`ci hC\,0=`AY-QCzMaݟQBH;hwZ*n^ķeƸ 3PЧ؜vTYSEZc*vgdԛ10k_@A1\IadcHuړ|M S5 זBҘ4rgJ;=E`4lZjh oZ$Ip,: [n?TRsZ;04#Q }#ict[SI0ocET?"w0&y4CuyGt {$|@GO*pAF\ k(8N\KaiBw aSB@RU/Ñ:e ~c>Nn%mrH{{<;o%A<2Joim=Um#HMȱƈ7W ꑠe(~L25GR:Y;&Th#,Q-"%y[xa8Tg")ȷbFM6|@҈M\݂Vf!p օ爷\htΚWqOZ-˽һ<$+fl޽dVj)&*LcL_n  Lb ٤ڲ@jM9u,(ʀbbD(ODKxKN=}ņ"@uVncBu: C[]y!S'wF4YQ+aR X [ػ WHFŴXNH-> ys.<./6e^g{I\i c2EfƤ`>Mmw9!$We\e~ruH)כ.\TNB Ss]ϖ}%#/d׏@1yOŬ0`ϼi|+ !ƥՂ8 NvEu|3z<@F7^CY0`J/)YOE'Y如4<{Bln%7gO[`H# !VeEwQ-ؿUNZ5B$ָn>ro`Eѭ'sii<8iƏ@S嵘9vs$>iO*P@VM 1H<Gl56pWߖi&ԇӗJd,&MK^\݉U`86soO@-Ð1pٔ>14גw%ܬ6=LGqDi6SD+ PHi@J p[>ȠC̎Oh8k:LD}'@LݽK "ThΨ-≯K #? {С7B>gSpf*yM?#>e [TH#Jr2s͓kQ$Pw({|0IEiקTOR+y-`$>u.xoǴ8>x:fȧO'+@'QK.P/,N6;@y [\~}'kSP,v濥"Z=u!YJ/r&S(rpt9$~pe2eߚzb)m¬=I!C{m~||L#2i pa H;:|PpoFj~#nT$d SZ,ŔqkO ?="ؗMf,JlxZ;2cЬŚ?@g8~dK(>HmXwjCSL\$+6z_S)4v @Dt.5,zs?^`D.D"5pG/::1r\_lb8ɖxv稹EdvuR&<\(s}5 >|e/ybN62B`!b/D4ͤHVe`Ͽx_2V0Ylheg'JjXL $+~Cn43@wJKG...jF s4Y{,}s5Nʋ˭ Y-rKF^\Xh$.1$sHQ$t Q}G]ٴըD,d666 3gᶛYt|8 3Č]Ǡt0ѥkӐYeB]'g⭃*LJpwtbh=Nc<U?`e1DH5j;ɺ#WTH=A `B] $~z]]?=h>e95mŔPyAk6_EelwF) ByMsgk2$>R&SfAk`ye2\3PWWvDۼ6N;4*,/ګȑy{ğebO_J<"[A4#q1nBm3h`%$M e:7:QL#Nxdƿ ϼ9@^rX1CJl J-tԱv|Ǵ,~ 5mG;*z+^mMAKI曊;j4D5PetΔC《>^QRѷX$o=wbo(2h).+?b/oP[إ8_ up&;]7Y$=_g}Edq#E7_>}e6$C#o`㩀 aܮꀕ3zK',%Zf4>ky{2 hn v:K"b$F1h3 l$jNkB.ݱ7 DEnYǡ<`z90v>[0 9dc|;@ۈs9 Mp⢬Y8k_o^b~k={@%,n=x:L8\+R+2W1@*-f{ ӒFT0mZբPqˢNo@riv!^{CWŇAamlrVvؠηK6 4(LĒ(?xqhLiC*<3p;N( zJ!pX-qmyGOeJʨu8f-Fwm? p\xnEӨ{~,N\:K4񰤮駾vYjo6eh^g+ë [PyDt>{\MvQ8Y)͝쇜L蟂#i+>Wn xhbUj>0E~?$n_{F@I ~&q.&Ԯb͵O?PtAj $TחdwxO{Lk }O `Xʿ IZ,}EJ*b]dAHK7'Xi)>(4UBpgWңFd}#Y{gsL~LY`D .D!@ k鞸픛U{%4|/T-.X k7Sd[ԑ0Od~g,3`ܾ*ΟHRIێgD^۸6'Xy1Ržf!) C8Atgninx]-W! +fxVĊ#|l4Zru>E; u` X[|ٕӌ"Y%go^0{l 輷"_E_$X,j:9O H &hϨF֔ H>d1Ұj'F:* ۺ+[8|vH揂 :)xF_3uam?|#⃬]GemFĒ_T .}O×_GNY.38T]܊5 DP%IڑrI)껈,:ZC@ :%ejÏ|ĭTMr ] eAD=N) :@ L}{67ۨ%WՔms*#f[5;8ÍIg(!fyQ+i6M'Iigk< &]~a?n.ܘlwzayʰVJQ8/y'e/+I6(#H5G /o l'cnc;`]TO[ʹ.t_ fxhLн@ifW&7qIxBϩbR4NIE j 'jm i0&o0;4M_}/6^"WEKakW ٯsO'Yus᭘h%%x9&*<9WbRM2*[.wG>@-&_^ B&e?luZa/^7տҠ|#5ПcDug}7 D|r(|~T7h >^.o hBB﯈q;&udo?1{߷o:Q3 ԩȸD,c|iջ:yPa/%TOxY!k0iv r|n3IaPMw&` 9Ӣe(_3$}ʣLsPy6ZMΒ"]Gȭ|X*p64rX&rE+ X/jnsiVwq8μa|7//a 8Cl? LAzvtQUKHBsX8φ_ |)ǹ{3ٹ u 5h=W]O,ma+WljM'+-`tt!{l;u J %\?(@a$Sr1hB{CWT8RSJ$ /mO-,{j7ct:.]`EP=8zwMٛ[@p;#KbKo(Cm?M]RuzVŃli@t揢LVP()R\,5EBY{Wg뚁OX 'ڱ "#G сƹ2tp" ,%={';ڗ5詅ԉ) hm;m~4˾N)8C:PIJ<J 4zyCQGN[1cY~8@㾨Tl.k2eRNYe/;}ޭ34\+ QF]kvmxwm3,9dcV^ho(teiGrY |_zJ6hLG$IŪɜI= twm3D Av|1Z:Pdlr_JA"=gǖmN3zeå=8SxOLΣ;a8k /hgz TwC?ҭK{ڧmĊO?l<, ooDr[ *cz <28Cc7;n|_RM\@!HVbOð$jeǥ~`фgB x]=fQsdb6:2YKDљ3plL}oN?!$~1A RGl]$3 Ԥdd&f¢}Ǔ[0yʓmXP)3*}N(m9U$0${XAh_bSVd7fZCଙ緊XR~)#k<Glʃ`z4%^HḤ[+nx{0QCwVl0,7 5z=MS| XQ/\;i<%t ljm[<H ß,JwmH0VeC#K&z<ǧ g"kHg)sȯ{L! zT z&%4k% ٘=hW3>w_)A:D&n+im=pud].8H eXc&y ZW$T@*Qc[/@[@'IC-RKzñ QPss* /O^L?UUFjQr8:.xF@YϪUG#aOV'j3I"V£ep&kG9 2M?qpwa q94;a{A}C_d%CGj>xϾl7rM4GXAPx8TuM㓄HG;Qu\!Ξ݀^w+F[o  ا)--J)m eZx cTVR{#6>.:.e?&_iIPV"kP6]lUB\x~[M, n (K_x|b ^}&-f* &"Z$yV'xqMʼndՌ= 0 Tx66]uNwUmxNQ$IXN)p,1a6C2ug$ڄ"?Ao1RV`0N`ԷK9y仪|TS^ d~͟Ė?LWhG5JǕ)Q7^繞2;p<4&y~g[;oKv {>W$TaJF1o}[]R'|[Udsr"8 GvQykf-jHS_C(PA8ǽK+{Dn. C(2E 3ᎂf,VI-5_R`M򃕆֏>PT-T>_r<0 0=l~u9~xa>Vu  ݹZP"D9J3:A-oY2xA“Nf0QN01G"!.xt-"OxKJV3{v!6y|cǮ9ycx\$D#LAvNy z{}G\roɡB+L$j7RJ6!Z{_^NWᭌ?,5VyIdu7N!n V%5w"̏Dd —nQPVN4겝5G7w gK~DMRmn4L9dFf{w a?ȪWd.9C ˬdGڿ VY2~Wn)3@Ͽ*snVc!ӸHI2|>)BiIU Vxe=_FZn?`\ͨq xQ7zӫ>ՓwJ::1z0sҏq\e!ȥT0~|̃%TM]6k|³FPNC'y {c^6;"(ӕhدy2SA+ۚSRMa$h熨O BɩXH1XHcIssIV8a,\\YPܵ]}HUD%44e6 aU*#O$6_Iӽ]0.l(-0D4Y Q_r!cFPY5,jYcxdhWܚ)¬Mgu.sK`K7l$z$inC Bv+K4# ٶd:w)W6[]B ;B%$:\+Aheu0?.;C+c==뙶Pzb[(tISo,W˝b-7&B:L7LVV pk{P4JJgZ;;L|k_jQ[(∏ZcWÄCl2-xnS>c93DAX*P4l<7ddGbq?!V#uX\'+z#d,Bka 5:>}ɲnÏ_RѸE4b:AY1EmIx)٨Wg;r{>MH=C*1=T-}n甄 q,wAsL2azvE%_1or{Oθy" oLwփ>ڼQs~X vԌӏy\1Zy0 нӤ.( XbGƙU" f- lKWԬHvii$oу ̸ VB H]2I,5أ'Tm1o.0EݲΩbCDuzWxQz#֕nުW{z @.bGip TņXhB^͆C~?+/ }s+r"eS3zrb2J'. ؟k~O9O~n:No+ uώIAQ %ޢl _+Ͷ'$Q'Ar! _$=cۇFolWiiJ@i3!z'5gŜ\`5GD텵Լ$E5ϓxY2uwN3#}(,'-?7TcKkz|L L~uW-'n^2tyh.$~ynoјlͼ.N>i s- V.gOMVvgcQp XrsjEQ|4v:iuӇ-M(4A,٠S#szw 1c=^9?]Z|l|Y8#s׮a~`Ÿ뀣S @F?`"ϻT(=g. E5#]~ڛוzJSmr#РD4 r-2yZ;a>'[D{?rzm<_|h,)|ڡ{7)F}Zk[ R(u=sk: Ǫ\SrώtWŌ?J&u^`?A7RKt¯%FEmATOE c ^s~'ڧS9}Abm%;\iGqUl>q3sUn@ǁVYj=?[H'!yQ5eɹE .@_U& s۾aC r0]gV&bcNpUP#%1G  .f;!4Q4lD0;.FF_Qm#+*ηH7m.W^Hbv `RhEusĠkj>"A7IO8SC6,]㡺p|T$cAv״j]XkR:o(+Ak׉2D/&ac$m6ttux(,r{r.lHZA1){sw{g6o.?ka C*5kl:hNoV}h햔O|׌ ;*r?<"b $bƢ0iMK?,SrQD?[Az'^çTg K%n|.9>I9z֎yDɛQSvC"~~WwxB:F Jx?5eiBؓ!G3gŝC]IH"gӁʃGn;%_,OwmS Datνw~b PGEѫy=.y EL#BŵC{xg ˯fؘcGxvU=esJ~>bY5Y[yH bn{}0X{icoE&z0dY-| u%6BI/(b:m^T>e>՞u<{# 7J2T jVmW[ȩ4Usj 4xP~;\q'/eV>$х]Yg{xQ[MԤ1|gpK,>ۧ$̆E'7)Q9K??Jh.QHb|,"+i*> }! Bg :W:,(l)嶰W{o4hŋ_/-iЬlw!,6?;4eRlַhOt !# ƻx 0ɗ!u:L,H"*Y>Za%gH+TΊq.qxڥ!Hp Q, 0dK`DN؟!X\@8BrpE5)`xxN";uQ&Յf%->\1+ էoOAaNrOz'iMp ?yYUhHZ)~0:U[ٔ.,]*+Q*ct^cɺa@df ;ZK4ܩXד )1#~=?p77Tc ac2?6}:%~^:{Rg樲oB)Ȳ_uMG[|YW{\{BؔX[L< LQG?=jKucV3ʌ["wzKtQBdc 0CӚnKIQ1ϵד AQɷ}5[A$̀^ ,ZIg( $cf&z;}oBl4ش 8[$CSOB2> 7 D`4[fswv!z%˙ on"kÐo+$$^•Z-D/4kk(^@ M[]C'5F9HOvfJg OONM7(`zdSQ?G-S/>es 8ipBl[vZ2S%EZ`mPδVpl# {b8D2|sKu<]I,@7~`9d@ָ^49:؜[-Z0Xw% Īa\9ɽZDQ,[m~`-xi|q,z]^ y(י0('N*$RuPRܐTd(]1(ywgf>x iڪ̜SYk}+0n@H!AXCJܷםX?/TоBQ /B/w"3(ҷᒊ:?DAjҐt?3K򙪆Wx2 Yw p<{KMd)f1)8u_u.j@@+N\5MǶ wؤD98+QPϫWFsNC)AMJV+oԯihՏQx.FK >|6}D@߈ǵQL!]J`C:4H;X¦})VՇf4{k0D/!Ҙ ҚެAXav<╾-1ģyDʊ 1#eoCV#!6|X3a\..n-#%L#DˀGɯv}4iBOd#:ظɐ%(Sτ5vXZۊ5}y/YF%]H?i4#0H힊;!+p!U?)n~n0Z Xoq}oz(`jKdԡ7AHoAE$ DNp< eCoZ%kB|nipMT,橾9. E:ȯ)ߛlx q:{Nurٯj`JrzE$RT`zg0w2|o >(.!6[û o=D&\eoiF;9Atc-^D/0]0X_7xg,N7H}.aG*[tfq|7>}ۚ*9+*|{] kw 5S+y*PQKyͭLUdCg}sgNрaWAN0-׋yu6u?ƃN8%ȅY*-U^04ȝWg і}m?A1(z9[QniLQ6 rZp݇u}i׸"P;9R0YA˔Z0cb.7v <36]k2TU&ȨwEжV"o DV_ ”jhr:O2^Dn,稷ap^B73>y.EglncRGki-u2Zt/:ncv_@:h~vc$ʐ4BGsJ:6W:S5@)tؓ,lKksm&*լL ]IPr>hUi["|(_/"p_Ln5,a6K&u71bzR[y`I'"GoWco`o5)poMyzYV>;\Ms6::L|4;E_2e/ 2)pl=%c#OhnߋA2.&NZK'/|XS0j Thk1E U-K-qVb,'FY_F d#f3brASůᾔn:&6m.7Xv1hWQXb\ `vYq0=)˰༣O+SӉX]#xi)kKE'fq.7|,gK֣po*ur1~>Uds'fR#8De[TCIе_ۮ^I VO{̟ptJ 4ߨ2'G-۵Sbox'Gn9ETN=Ր8U*S:8jXn +"Zcg^- je5uȃ![[Nd/;)(x[qp7&֒Fa&Ka'[iaƒ.Uӡb.Sՠ!gP\nTm!O͂∭S*"{_ҹ6-9ov"ו'|a { Rr"N`tZzU~m7f>guM,B#";K78ݬ@Uin!!Gٺuc?ҶN&ӳ%)MoGquamb7 ˜KM3 Aՙ>d x*!̈8CieANݿ";^+.ޠxBPH¹>{ð$TRPh.) 7RUa>1-0}hZϨ/9`]V~@j1v=2xBByk)AXhjLxwWFW|lv*w^ ]  0eT3[L0$K^`\`'VʋA#!X m1B<]5;RI7̥ 2LG >qyk 38DlI c9ܟFuE2MjY2%4χ.\pAm~[S@ElMi,SR#O~CW@I sZ=- \Oo᙮%iz'_H(tկ( UǮ(/@ R fZydbd݇aO&~cV<~Dŏ&˄R(4 k28 U B.$Ur"Y X~[rZYWbBմԤ#cը7&[!\'M˷OXa*dxqQҤҒդP~{_%"p {HWLRZF!:Ouӽn^b#s6-!Ԝ{ kW[%1pޤZ$ q5MکnFYշIS{'?, yQ,́/8":jr ]NQfK  &ǛhxL'_QB*mƹsJFY5@A^y1xד(i'8qV#2?lZysZ{imz%K$b.\bPýħfCcDCѴҼw9?qO@,#K" Nlj0n1443F}d-n\\ ?j J-wy8(y 62Cað6}y>֝a!+gKSazxL܌W2:$4~N>!Vr;3O^uD51ZSMQJB6-/Fosd't[HqlwY&2H{lD5)&ETZ'U / .w*KDt)Lr% 暕*Z Zzd4}/@vF?b,)DT S1Tx VȬ }:} 鵩pa4ZY"|/Id[BH,wMמ3'O-Y$ۈ9.5:6l`%ʊy[2f~^Q% ^QgXN>y6BóB+怛]QxGFSyͼ4lk^#OO8޸^]]O/֖ Qė?hb!t J|pɧz3KL׋ JE X/ 1 u!ҕC}ԨTLǔP\ԞKOy *J37Ҁn]+vdv-7<<1 o?5'Q Y,jK|y6ќ5lY?aw>^ `ry0pK1(^ŽZZL j%e*W"*#4ZvHM7O\Oc}A/,r} eh%X4u?F[vsTjtq(qSK4b?7#/à@B's`|wVonΙz4l}[U΋6 C!r^ #+ƹk kX9ho(Pbuք}$7WF1 D~t۵5d_ys. ^+]n+ M V[̦F8t&ef$6ʋ[{)˦nf QvSBߩ c%UK~َkeH]? ۴icDF#i-Yx_S{uI/)ѵ1 H}w>oP*^1Ү2`H,:B0 nnx#z}Rltnho%UF&si*oVl>?Z]]wQ ] sOe&ܴI X+e^Β^?\=R?X@4{q>`wdArr k\7b[>L%!DuﶡZF>#8I∲h̪Jj^#3eLu*YipB1EJGcy$$a AWo?z=zbGij%鐍5JL7W8čm. ۴aX1˽}֤@CMMy)jz*Y|x(ХHt4Jp$1B⁴v!,V/Lх֚f<8V} GF4 [1i5s)Wl33Jhl?-_JP"3J^ z*޻]5^ۢM緲ӴCqAk;$w j}s5 UG3\\tcŢXze9ѵd]N!D{ݾ:V(Kef x"2jۓ WDuZxEy\ԙuE4Վ܈"vlW0oE8N޳q. cKk_k%w Љ*NMe(nV ^ {5ƖzNr8ѻ"vDփƙ ;-!aJd32j q.%`Z>]I-۽Ct,u QDmhb+3S(!c CCRyH&dvv7}'i<8ތtJ]Ͳ%] +dJ;ϴ_Okʁ[.1rR?xnK 'ud@mƚrGP%d(Ő")yb 6-VHpj;h*VH圝 iUfgfim׸Qz)fm/ dfK >GMKBd^4)"`v(^p(ƜjD]f@ƚ6ԆW.0(rj)< -)7ە';\c+',>73j#@MMQ6dU7l&g+*./ƎS;-w?h’D@A8~ؗqfJ;\kږ[k*ݞ *m#9$S~q=2/l8 ƱfJtD! %_sG3*N?ZETrzLC`ƒt:̻9ؠgza&D =GH ^Vc`^辨$n$4VYňļv4Qs?MUK[OwcN5~~)# Sx# wb%hcm"wo>^m{+w_甛M5MѯD$ܪ`R#Jrr_0ow-dWcl{2tJN"뢗$5{R|XQKnYb~t@W8->ldR- 88@&C[zqo^FT`; l ^-vzS`1F:2PBo.La:P&=b_\p^$)3ظ6Fx8~SG2u=>*o3LP0*e[d7xKc4$Qj\'SX"ŧwg;]Pb3 ;4JlN?eOXR"$l%98^ K4< _U;ѐW KEx4R6+.쥰vrιS Xf5t*u-BSI(c*q`E%b?Nx4ր{0l(HлO4Vp;KPP+QR3k P dymyΈrsޠlKEYeӟD_f+kL2gz]vշ>7)/gi2Vy>5e|3Ugm9Y ɍ-˕iKRWME:ٺ( ]OV#B~+6R8 sCt<j5 Vz66;`+ h˻h$?ի O9lLGb=[#Q_ D|H7+-s :N#*oPB V {؁v~(~rcn=(RDjR1 ,s(Q"c-Mo$#-Z mÆn5?RY1V}]ײuVb ogdLiјj7J%wS4m,O0Q*s2aPKQW,c "ǼlB#d/A7Ss L>`3jZ]() D=`LZ~H\݂;orঈ%1odCB>?阔Ҽ`pI}'8x#In"![/e,-7OXYqgM-fdojgy5Ba9|^q=+;P=UZ$Z= I½?V~TQh;wKloQPFd>OZ.*+0}FIPE_" F/lɢb2Mpk ND>/WtAn pd7Nán\|_hy, ,.Ÿ>Ze0j!B:=deNqp!tVQqV@u>5^DYI Mjk5f̨iV-Yh W8M!'NJpzT2z:=xA/K:wQ<ugPb$ư&-P\+ iYxï;c5x-__;l%;""!ɢlh9G []SR`҈QZK5;# I㓀UbEuN}d"plO+3(#4Ȥ٬6FקA*!ܑ QeTM;/tD`I&k1"B#3ú&Sf"/$O9b.io]mc9ҫ >i!/I9<4")oX<Κ䡕ڍ3s6`WB"n ޔw 9V cb& BPsF *Y/!DLA<S]XPBn7?+vHQTaE'&T [=Wno;H>yIm>!EinZ4 bPA’ÄGc#`va_2{uVTYUӺ(tJ !cc*aAH]tNd"|tk Xl@FSW_l-{z&hի ToKa0KK+I\3J碴TF9$BDj/+s\VY&{[fSj.i((  _)n>۱(l?8mT;_=[>xwE&bGfg}Bipgϋq,J׾OB:^ȑh1G.тWLWxmѹ`B|^wL">@OriA ⛝,O~޹p8)sMϿ,&qyFͩ;7!M"WW+@K-1gq_Wݪ5iA0 /0Xո Jk#?V(NXeŠ7B}и+h(Ⱦ+QDԪ, <%o !:[{{BO& 2v ]#Ww_| qkeNN%GV, !(+,ۇ븝(&YS/]a>' '}S'w87GɴF- 恱N]SwiqYA%ŦF]1Y.zlI׹.^ҵf$Nm"KW"”u|o2Xnl]%"*Kxr~s L T`d22#:y[YRW12*vY_k 큌1k0z *xX'y5R?̑Kw4UeR 9~O M76KF =l>]x1pkzdh"y}nR-<6RCZ"Atrt!I8CZmc;_萢9D|Bذz/5Q{0W-x24^,;K:Yu5a3Uk o9ɏM4.XGԈ,,AukXN݃l?2{jwG!M R]d-t8AqcQǰ@מ"1ᔽxb_ }B4 &Dbt f<=HFTUϻ!_ Mb[,(|VxO=(lfvq?(y~|܇P!.dmx‹H|Äӟ;f*x~X5/Jswj)Щ+_,^@ҤN1k\4AvjYXŷ|g7%6S=UZ;qS+q_IDtD;ptn<,!xչ:b-m'^zE*'Um$ۍX/18 2=Rg [YػU|a0@xQXh\l`gQD#ϥmLΧy$C-/9P"dFDI^:y9N;jJA i fhǡsRS0PkP<>gruo=HLJqD}o#vP2tfe"$4tcQtFGgx[.z UFS,+u*ʲ-!Y^lX]ˌG7/&Y!HI0^a%#fU'o|SËY@ @ދ^PtD  F,SIنR׫v^By7ծ >F9Q0?|sf}I;!R~ `egϵ;5!B U|~qn#nTkr2OjJ1 r¹Fb_{ZA H2n}#|o(]Y="F6e"Ԟ }ߕkb$:/::#`&Du$.Xѽ3ήubcgzt صt*=y1-|THGRV ?z>x;m.OdN/<Ћ^(`yIJ3))[!#\͡=o ?@{ b O'^ؑ4=f2}mF<|aw}_UFCn<u.x)LPc[9} Y}dKqЌ¸t=8v$ul-1bQ4n+*7OBv@Rbf}c5<( E@dh?.w47{IJEGƌBNH0&$-6k: LKHPR!Qiq-4x\iշI.gcKnpRɐ[r!bxA]FɏS,. J /3PDɓ$~<@ O%%q' $"MYʴ̍ϊ;:ž )7wv|T -7a\eղD*d6E/5]E)jILCaB}T&َ'@ܱ| Up?xkb^!{p#?KQiwj]tA7Pk{OZ+0/\ /T/f`d翰ays&1.\4ܛ.qr Tl`w:&q&ڇ8+?ljv+pmdq_Kiy)g8o° n*f瀼*G$qÃU؁mrHq22&xjJaY]}»5ܢ5}ny  (O>' nP"v2Z]F}QIԩf/$5p 4zO0-&&pQp')vәg5IGS >yQ6hnjB!j,OXùza*0~^#[!sLu 7ɶQF>kߍZh9J^mv?2d_.|Q[IiHi3V_t$җrL)4*Z=k$8H-|:W|Lޯz')(mн.;:ʵd Ay;KO=ЙzԓR6V(OHO|?2/x'6pZpG~^ 7RHw%% &G s$<1|>l9Q΃qf(Wĭ8I{t5e^ƯGwn_$  , /O"͡am eWlg7Ҽ l->nY>gx3O;$wr/h|A =IuuOܜ_ؙѝ*BAU™;B.OZRnRwZ'r "4cbjP1^ V[fJLk:婷o4CZgKR(N m7 s^$)NWIH;MZ^f&2p!Q! D7dF5k3#O=%s':q?(4T7,/6[OGK`] z]^4z%:ܔaL{®~j}.*JmS:ӄɹ`o: *6,@Y P-t0~|NQU|9OT#m*p<޺;JzWI}|4z<#sͪI-sXG5a;8-X7Wu&K\,u 7zl~$Vg5h%?rB&:i(-wVl"6+MB,L2#"pߗ S=Y %A5_eh=d dxnD8|yU2!Z.A )2:KEަ4nA, Bhj# X B-śkSȾϦ%kB_]* /fSd0'IF^n'72 H:uȦZ2Mπ59,F1-截Q9V'LQ<>g췀+Om`;In&m(yy@J] [ B ƐBPxOW^#*Cro0R=}~ILJ3+:q(bM_/ j bDi!I3Gs,蓲ջ[MF0moob6jZ^pǭqƄrn)~i3 80+r7b9EbQm}Uݼ6##.թStMᩇɏo1n`_f4P4u(,†T%'۟{S!Xr4z"M:]+mQ% - {*D\NUKto n=PS( RA߳W =~Kg;?'{Js];QIH ]V.t) Z:^1|h䄪1 |8m3q7eQ ]3(b'1?7D?W6w>huS/ "UĕE |;M?ͷ5+rIF'{oE: #79yc~voiݨu͜k` ":4 s!nEM(*8Nc F7.mb{`/xtҸPۜJTiL.gq$㈲5{IIOo̓^6CV3/4?1%(' C'&Y6P5(8,{[l;e @)>h#!k襨X%DQ <ƓM@r=z@X' VMRIgvnMa8(g!P$2moÞ:|nӑ%'by- U4_ (5_k^q*ni σYn63W=/*lL>h"ݠ6t]^s,~b ~`yˍu U=}m} PFԍS'C32tL]DڌPa&+@_#ZAÏ6 f 'MoZ;O5y7͂?9v4@>Z?<_!tÛ9 %$\uI-bǥocIBagQ+K [Hxד lgc@'XɢG [嬗QHA??il앦m6Qb|& Z6!fHM6۳u~AB7mFL(B-"`ٰ&)U 4RKCYL#BuOh(TfʨC HQ2'deD;X ^ĉ=UU\#)& -B(Cۊ " @!SJP+a\MKECQvBߔFKghŻW>a=z H%! ĽQpƣh##T88kpZ 4)uVb)F;O@M_߹J a1-_SzbT6y[O=+4܅tqĻV,@P֐e4; Wai6Upzn{r 8\ HG8Ep7#h,Ta ޞ|J VoǮ*85nuR*"rOᔟke[\z$J7iMH{ku2P @ݲ֟ʻ*7`'+5 2Ũ朠4bQ6]45H:ޮp1l5{^@H-/Lݬ%y2]1a^gbi@wPp9-svm nͩ|1hNR9=~yed 87FqJ#bKI @NR ]4BQ$xH-ZMy>JS ]I42}OX^c':wYPu [ia\V9+zT>$ٜ \JrEƇB/#- uNSPr:q-6+c w4]mlZ(_KRUw,E]Ljh)"ԐL,K _o AsOUD{ q0ׅ bLg)La44ؒ~{%qq̦׵ߤ[2e'Ls-Soc!$?P;Й/D}mm)x=M(`R'Dk2|ഝ,;zӤ0( P@B1 g5eC|ߴ̏g %b2ҲE/Z׽c Bx<ꇜGE5ucFwnWS_u ޵ :)` ]\*Vс1dKuuջ+?|̲q}Nf]J-(@ Ȩ>Wd+NY<I!b<-B^KKR.t[_-k!97\%{j@aw*mFFXogti9 ˾E.J۰p|"-+$D?DДӪaͧwY OoK3jYrAy^萂 Ir$vĉ1b9 R`4 x}3:n4l3F#މwӤ" "n><׫!U3Q5Dn,]%Or G5=Cm/[bU}Z+͍(tOTR?pJ'ϋOo-5 X huavY6KE:o. HHp5 ɸ GA "|,51i8`:D)q@.V"]H#wK N:hYUkfAn]\""D@!@OC <.8\1g4A󮲳xF_F,|V&V=YrTW*]섄q4["tl0>hT8JOZL!XqT8VMU ?:/DTq#IX P Q>'277go(m}f?_]"L.~)̎nFQ uiwosĕ/B6;c7ttj2uB[ %V<]slc 76Y v #U`|AU # sZ^p䃈\<=':yKv6g-'-dJ69}Uޢ; ZmLQ k m,ɟᷖ۾xzf:p4m$-9[})d [ݞ%:6&8^{ 7;' Z[]KF֕W9r.;cԞүJV)rP3{-O|+6{8jG$XS%S6HԚ濓=8XTI6sfyJnrK[Yp\Χh =fTg('r|Thi',<ӽz'u;\Squ8YQ'yo)lhvjҷhi~ꗉh~H)0h+> 3E:.pG$b4?% .Gun7:UEƒg|k y0W# k 8qS-">j"ԯ~ȥ׉=y('L Snsd?aG9] wZ-.5Ƴk=~"Tt$G554trdQtlK*r~de-aפWb>鞃Zy;wzFt7Z*p@\#YvAiL+x.=…ɽP׮D, B4M9&Y0TruN T"^+~кHkDO=|gߜkiAM8{uw/€wTm+nExwf˫En݈o5qW Hen+IaJ;t!Z@oܟ1ɴ3[yeUŊC\ Simȹ֤ddBQ$Pyc>[|#,hMNe~Z,12p <+Ε0 vb9}pw| $% #-79ʓu{8LIiM%ݹb]7˜ dx:0,[mp ]80K7 0F"H_bׄxvg/bW@(JdeYAcM;c~Ikv@iȦl,"{&bFѹW %DiJ:^GY4uaоǖ*S@o^ Kj*&9 31^> 3l>tZ.#'Kl lx1١b(8cQAz1R5z㖩N[%Vr3-Ξq^zM7:eU1<XZ*\}:rF[pOml""bx=3 |rp2$tBO_BKRI&b78J+rp[~WMԷ&k̎D/g]{7":F2-GKOSϬ 7Ыu J) D=tJ<( z6.aoGF }4jׄCwz+"GE,3JN$xBj@9*fWRՐSDؿ:XWwfl[ a_j{:* O]zzM+ ]}Dtj7D nRŃEP/]n,T WLjFwá dNy,n5h#8w$/3rd$׋Gyw{?  -'ϩ!ւ6>/YM^W)IoEa$ ,^IYC]P9O:[u\Zs|{R6KK.a_b l1\QGYiosCP<uMmnx d,"F!ޫ"g^ts5|&䱸:^KJBieASe1X(ȪioΣҍq-uyn|^)LN2{LcMiewObmbg1'.to$: [FI5OuqofkHi:Dݫ՜I`fxFd8Gndqd_ݐ&߫PF{Ok;#sܷ{?8zc{)HoȰɔO3b-2 Ϲ;PͿX"( ^o z_=+}UZ̆;0It[)[O"-hv;qeB. Kcfױ`|ȧ.> :]j@.a/$aoTq > h+ HkC TH1Ù O/+*휳'vw <Z*!I7wA>D@QG9!cd9jq:m|3黦IԐoO)L=aDʀdppp/BZ[~)XZ}hQ.Wre#}(OsSyEDVWԇ.;GXDsd7&co4 @m$P~|ͧTL7t0`Uu*{G•ZW4\m , N, xәԜG~0|. `ͦT#fp?z65dxBǸJZi2UćB!UӸI~yCB@"r@k%@NJ4Qj.[y (ɦ W]L K i`܄in}t.i8fQs'jx@ v&<+]]iY&%Wjkz{!{PdoP7+XSր^Pz,W[>) D,CߠoH=cY@0\*X=;"y<< H%ܧB86pxb]U]{tՏ5[N>u6 /YֆFp 9٤,o I2Vd9P4n(^J#W@Km#i\GUߥݝOh<`vryy~ uyC4\#摨3͖+7~rCb]L^Ri"0b`lY{:z̄`+k? d lC}CJS$_>ei#9w[. M; !:2NgTOpbquC_.YDƵyПG(!qzʲDGlh/);J^&qSi?9&?7m a) &@wnYURfB}0B|XrZq@UP/XZFl@jͺEI }bAT䐔A8-q€֟="nw_;I+( BYq˵A1NpO?@̄S5]H[NW*jbaOEp$;~Ë2'ϻW"0|4&tW(lS䤾EWFSWk'Hf"u`ϗ&TX&/4im@;M+U}K@pzӱjʹhaKuQ,OEAd+X.\! {dQDj 7iצtX#㣣w]Ӂ`c_^ ,1*%t eݯ +2 a\ѧPy|7Z ZL{솹@V :|K8Q(jb$0HxKuvTXs<\P ޔYsl8ALkɖʮ]yx.@ZBPXmki;v7kS҈%Nw6 ࿅zz?mrSItœEk@s09>#?[Oac ޔ^e a {&zOfuaqf{b~wH Yĸ N!*>S#/%+ x,m7>w]i)SJ/V5n!:M6[erxqEQ]97M䣀N1p͗,H5Nܱ $|Jrn[d30WtzR_>|_ w63p_[pD;A]2|'{YhM`EWX%qLl' dKR9˔*ų dH'CH2`b_g@Glz>A:Z{! @n`I5oȼBf3/B6B 9ybB=!k9ɘL N'WKk]9 qݞq,48Nŕl"Ѷ-CӖ2U  !9{dR"䞷Z}д,OB4 6I)/Y}_Cy{ay(=% ۺA fh:}ǐ8%<{ 0Nv+9 \_|lTGVH7,~ݘP<ўZ0zKG g鄒fe@M5ڜ h=ʯ SM:[P(cf}t}qL:ACVe|\X[#,-1H4WyJ|}nErCM"]["!ءm[IUr9D~ RsjLꁅCAR&>J>1))@n`ɵͫQ f9LUJ.\Y٩tBqub1!^^$3ҏkk:EekLl.&m [S쮩r'xL&UCzspF >t|M &5~.ο_/F_]pW;.\mʼnՓ&J=+ug$H Ɖdp8NXYV-V> 6Ӷ+Zۦ^pT"X_֟E"tyCumB\`1c-^Ҳ7po,Hhzk*2YH'`=#sQ8lri~ZDAn!},Z* pp Ҹ \j$1NTz~,kO<$v ?;}e|AL JCC8Em8A<JR4}k mP!賿EsO­֯3X]LwD{K*[ FgM򑗐0{c')@VlV j'+2E8SN&0ʥS {'nࣾdo8GD<9f {@X[ZYv};爯qƒbYʭ,65HZp4$`i5|U+U=;~P*TKt{bXB0*GPo1ϫ=]㶉fMY`(SW%w1pɷ T`*@$J' oy+j *?t'Ne2#D^m=AUsP GWryRY N7?"GJ?X\F {. Xl(~]Zh4xu: >tAV+dGqwF1a_p*]^ :})͞%RVFc̏,G EMǡCZӓx)vX㫙VFa{6`..kPrwgĚ.RvEvw5 ̍ AiyNC x}L4"gBogW[$7f.莚Lŀ(')35c &swT ;+]43~$ҴW-+i2rXL4[j`Tp"wŋ_w '+%Ccq:c wB+0k׿4a+ܷu󞵬xHC&a7[m?ՎF)U4sU)lY+8ʃ҇up5 chVRV>E(#MC٪#IcݎQb/z~,ɺLxSIp"F =(љƧȽ:eAoUuh> LR1< o-TKE~JsWıwIE,*1XwOŢoda~L 0GUaK3p11 cmʪa`xeOňKȉ]oU0"@ei!:">4 {FQw~YF KKH-L̖]Ԙr/O<Ӎpa<` =_P7 M4i/T&9K >3 oa=r䒯~^(oZ 񱭼!*Pt0T!H|V6G4%ֶ%D .ًnRp"} ` i{Zc,B+0C%)^[?=J=cĻbhdZu}R3V>fGBAz uӬ(G۰VSc3OO_ Ɲ@8`]%bLr+@8v ~p-wA ӗv]fAlḨ'A&E`:pP<ӥ?-*ġK^!ts3A(U;2jn;Fq CN~kbrU8P񋺁ء0ZqyXgX r"7YGKEm>/"P#HpH錻c\KuMx4;xmKD͜Ja@ޠ⁣r$N+0 =;;*/3A, +A&ְ:>B7-<_i\!x2D$H_I =wMN 9F?B>T[ՠrߝ1$Ps;FXx7UWgA+@ٔ4g6nW6tw睋}lG5HB gOyx{AEdA8kYg@v~vʩd8LiI2weMaMBΟye+늅ЁY3 d{Ư!эy^z4tDz$L$$ү-O)a@?-|L63ffxn ,ޖ L}gQj# mݲݷq]i%vfۖJ'UoQH`I7DƕK_OM fT y&)"KTcej2Xu9AA8j{X-LQj?袺.m۴6 _F`J{6Иl piYeyK53U'5(Sn=_RH!vEYi,Ro;Q- DvO!di:lT%?orE m+l)lI]rT2H p%G4͂KN <}tMD&-IpRт[SZ^qƞjN%h|-7ZKUMlA]g֭ 7/CoR}瞟/OލIXXsyɾ'EM .)]OcOP}])UF.M'_݇rk%4WZWA +)@ DŽcGf"207!)fZf'}V25Y!@B͘:=̅qIxk:4,ԍy)<&ғ%di./vU3Ֆݯ +\Iɬ%κ"GkMA7gdӉ{mg/&\W>vhBn`W]զWq/ nK){ *i,KZ%``׃~mocҍ疓B^c 6hbQRq{ӖCY BAevf)A3 Q׷lj͒d|9`4s]2JT$zfvܺ}b,ۈ`P5-|T¬xY=lMC8RͪUVG靤3ֹUu ԭe ZC{wJ?ы'y,w) \OrVI0yqD2g8A`^VI\t7ߚUoZE.Ґ/L>y,TT3Ƀ*#qMA1{H#.)k\*w◌-uͱF?]kuy)?m jtӈ.:ח5y&ZuÅ[ϣ *S-vlV x,rgq 4֖dɏpm:$yU\|vߔ6*bV7F򸟎kO<DŽ006bs&qq$ݿQzk,`h7/PCܿs=`Y9~5Nc tՐc <ϦE۰ q 8IjSHѳz@$O>rLN TA"V&p 7L^~6p;tlۧ ׳E%{笔}*qYlV"s)ͼvnWе7&?O8O  وL"jLXr!6â5hKl?R o!%vPN𿖳%lM]I] ajr#X#[[f;e}65 44<#&Óir;Jp~or/N?J_&qً {4] _y6lCNe]G>⡩0В )_¹xbӊqBX6[`8G9(T [q ZR=*>`ݔEJr<ۣS>uk,%namGx|a&t%G_->0\T˦kwxoދ[fl@Qa@&sJ8r`|q KYAfP5x'›uV&xmf@Icuvg@FĠZ}׺ၓDK0\(k;0$z,Q̃TK|X6֗ ~,>_R=Fr_;lT v;-xʫ'QR'γEl&JOOsV{aH¤SP8uEoa,@ 6/K)\qu Q0wE$0МSFvL vB$2q$9 >ҮZi0 F+)ӐI45|SozT<@lƆl`(Ĭ|d@L@H~tULz+ĭ/r Jȿ04An}zI*ZԊpbgm1)W>:Pr6.p4!/@L%*`a-4DXBb:'SX0ᶏYQox9ƈ˃\ZDY㏼'0YJljWme,V@A"YQh'X_,+;f8B@R(%@TJ(Wx37fi ܟVZ${9mh2Ǫu}/2ͯx1>],5JA#QȢ޿p;H2숁D`?§Rj*FJbPs+p8mwGrkj4ihhynIT˙L}dǪr)z;A惍wM(Phevk' ]bD=) 4 =ifx\ %d9y'k1Tj;ar.P>:Dne[ysR![Gy#1B޺T4ov*,iYA5#Rm GYR!))DŠ>q*Rt9]'ʄOtH< 8D'[B?* )Q]MLb-c(O]hkԙBx`%xgt?py&"#?- Q - "=>#rnM?rC& >lC?7鮓e~0žH~qgUʜ)RC> HPkYtbyiŶYy0AK =B-fA v M:qD@\IY&ɰMX- %=@=zL?ͭX(Q*\PѲ89a/*P!]lF^M^O>yP/EL (|./{)y]w@i}x1_:,47L~m"Um5IWx*C@R<$ʦQli%G$k:6M̬ X1GKnU= ^YgDwn-L3G XUڣEJgc& 9IH$\0/~Y]p\q[SPp24ͅlE0R'#r )4{4p61 F)b&nH&z*X|&.ONsKriQ\g.5xE8(=$FYI>BѠ,m2]tɩCx "UaJgL!%eu%㭘)L$*y;᷼lNI%-4hay&U{9]60WO݈|\%m* ,l lD`́z2>ǁ%fysvb-Ԥ!|VmJbYa1:kj(vCXy˝"2#o:FUj" 0 Kh;J72ӱ G1m]}i}kZgVujَ3\J qEɏ+8="9IspTkG- $3I  oS\݆% < Ţ@S>2N3ܠ|EsέgCv56 )ܽWqto>6W F$e*b?AC>yq6 @r+5neFs!}qr45ʎb{pTL_׾VR7L+˯߼Q ZӢkDƓe.qSN`OV&VrˡR֌8mӟf+I\-!$S],=~/.l'>IQ{>zgt\oZua0+.[_ V-=3͠gag1ďNfhZr`jf>-<V/D\'oJfC0 yGo,cN ۇȤSŖ?(Ag{cvy]7(LRj)pŃ~wȼv&nW 08fN&״rK=М$k|ir?m /iO\QJ ?ioCw%e O[K'ط3:FmQN'mr}E`nȉ'ȼ԰}l᭢ʄjKN]NkϤ&ӓQ߭F3NQV@OYڣ^;T2T6c '-WC*j% G_-#'\9xQlW4kȃ1x";N^Z_FE z;X( IY{nz{:׫u~_ź*4A{0%X!nT {IKqD%GP>F߸Ҧ׉d3I($d%tfoK9+5[#ahA9_>W|;iy`" 18vhYPY!~>gp%$g{t)زK`7bV[vrx" reMZJTie{γ\߻a ¬iǀ&(M۳Ha4f^8DESvTg^^eء1sZtͥTH@9s.ثQVr1KUB۰IL6vw#ae'30zǽn`X||ojͬ"uyghƘ߈XK[#T ¥w30zS0AЌJ$@S1Cya6;z&DhK'ě00]<ԯ1`_r(6955 B!Vd4qcy2 vg¼\ގ[A`f΁$<vRqM:۫Yo(C]cr~u(j`!qu"w͟ y{eX.5NC" l[by-\ męun[_%?61Noi0?h7H4󢃨njpA*IPZ8kK>aU p$"im+A ]J]{Ɣ9IH,Q/ɘ00u*Rي VJ 9xqLZ%~=A&(x!34Ɂpq#GI☟|@X>\NC2UFI򣇤u7ܐ#7ދp-}mxR+.#!a=ۂވ$ FC&;xum =_eH HWzx ޤ!^m(^ۡx:E=)fTP =lXCdɹRRO$ Ly`J$r*EKnq=gģ)!ʛE0V!NW/>c5026C҈ZـP2%JU8-hVopT8eZ1VqrrB OvI7Y x\2qlln9vhf0{Oa! TD3O˞]NZo߆x ]Hx+@ !~+Pl_^#a{nbAW75e^}=\I֋NW[W/ 6tdᚶWD(I94ҷ?&jL(f<!XvQ=G|Nl5śpϒ\MH8}#S¿o~} XEF=>5 raʌyg,vUZERVbxK QSBitSog%5ϝi3_=W$ &XS[ %xؼ%tiQԟipʨ=Uu0/"ƍJue=L"WpgK-9kNmM\CM _CgԱ#Bڮz`iA/vLN >"`[ ;Dp? L=o6fܛ>Z<<㍏;,ҳrMdNZ: LJ@%AQY9ˀkEUkm0$Հ=2s' 3*<*K?Hiӧ7XvE'QثKSb;px;2pF1^hYJӰR@ !˟ĬLG#N,vFPPuM$hbl( @a#9#YW1E-/T 1TWC*`%/tWW6jpUPq J`cdkGt(Bp3rB!Du҃nݏݥCߖ UkѬlxk : L:2tsBya?X /[=^@IKJL}1.8>=ھ+r@fV᚟jii|Ved)KC&@AǞ4wDQJw>:mg!~qDO'?)D⻾dܲZ,w]FL} H'rA\;2r&3q)߅:T۝kdg z^oQKj0lCӓ8&uBm^ױ[G2{ ȟFUûK0TG U_ht3&}irVзv9s&\{dt&^pY5Tx pFsIT \ે<ЀGͼ[1{i@pi8*g"Z14 >Mb7 r|5BO:Z~eLWfB'7o=!]7O""*8V!ͽ$^9;*2rTv}17" x`|>ѐ q}~,_icd(=?: oN/'*5 pαHݖ*h.TH bABϵ|]+s5ԙ`x&.36U"Rˍ.9\M7sAtV@LRLѥ?PTNW0H~bG}Tf.DD0~+ zk)6 DF;N掿~9M}zK]V+sr zI7{1sUT*Gf~49Ɠ!w:Dհv#XW{OТXVh:6Wd[o 5=B^Ktpj<;U8f)BFnp^Zs'XTnC#g$@p75]!mO(e1,~AiPRur`Wb1F}Py ޮBūQv⛥'Jzݖ=?+R;ٶG 6+MT9Sey'2._oV =UpBR wfA{AȤLǎ6 IT @*b*N]Y"(k1رLJSŐHVRPk9zeM,V  J"M'1Pgi tgl hC4v3*C-ϺwꃉCvu䯤@#٬WJTz!Na*\'߮ g'R5C@"`=i|{ǐ DUHC{gS;5,PL`nNst[z%^Ʋh)8q1Rc=JSio#1+cUg̿'Jk 9?ZSAӠ%Ձ{~ ;BK7i0mC晒㿤5tƗIϢj1s"($F_ AeyDeZ7>w;qЍW#!oi,YV~(9o7, pkdʤ|3Ƙb`i *w͋m8;$8$a 5?+F|Ա ;-5C En{?O1^)j+rNKW+|Ҡ]'/qnjH^کς.zapwl"')eflw|/JoΕq!Q7vN?9Pr.UvNIħUN5U`(]fzEF)BV ɛZQ>\,+Oğ}UxŖ↬cOR(+vj@A//1 d[v<'HL柹.ND1/?xVF\GDޮJf8,75eB'hr5M߂68=a\k] weyXcjHnw_}};ݑ?Z襌xh( X96/E[W ~_2cY,S58Q Ud-Y$39,Idhs',om`EGkz#!^p [\'uR'B($bfy)ʱ:N$iK%)L{b#%ϻ;BR uANDnh.4LOo.k-tt\27K4gDag\df,eҖ-t{6ʝL#$oY@5(K_bջs#$ڊrWzѠyV"5u@ NvO+U;>Gp ,竒C\rd9RkgIj>7l 乍'v_<硃8߬z"lѳ0 bV k,cC%xm@7ץg7ȝgzȆmo.NJy%?n(7u :~\}n kǫK4bpP' +AmBDA9yKIǕCȣ8V'w5U4U: %ڙ=:*xNppEW[: K \> nab~bh_JWR:+9AW)ǝOi阻KO憆*lwn*P 1a\I(r/}Q8*W@1?:PK1~>@ gR(\4[g)OiK}ղ]PlIfh\_T5Pb C&hѣ$ŕlIb0r U"0#A\D6ոalөXBܞXrKmʩ MC4Ps@N<Ηܨ[G'5~_ВuN#)bE;`o JDfjmAxYڔ FrWv(=ycaf:fk+EZ5,eWmY(@kt _)w#PCo!iuJ5  6q;+)t7ݏ8֕H?)t0yf*=$T%w2NZOTtq C.`7gZ>, 7ʻ [ JwC{w'|콵52"ZtYRNTb䁾v^ppۤ8˳ǰXKcLݮꕜ) 0L`:n ; gxϰqXS6l- Yo!\=y& ?bgd|<.PL6N,Mb_/SMO{AM \iDExUbxDX?"Ot+IѪe $|݂{ ?5ve1Y[ɻlYyD/ch&67G3j܆.Ӌ\m$8N sD*1 +9 |7⥺bJa0<ЛUx5>%[F> (yh1=*]BGG#8:{@jw?&Tޣe•)/G-t jFy8"x*7D a4yΩN{f4lɝτGQb2qx?f]#{l$&}S=]b[\cʾ,&%վ[*5~~$"Ѳsb<$Xļ;hZwK?DAV,jT4X93+#{P6&D"D(Tym~uhQ`O= p^~\gl"?kBp>ΛHXp7wW|j99Y -//q nL Rx/DtlpgJ Cjns>GvvC R.GX&;z·NWu|䃇rxn# h宝lq֬5^%4T._K fs=]C-=|s`ؓ# au4NZq.@/uB`%Z|j"7_f4?z&8ުRo1 ?9_ 43p#ʃX=6շ`SԖl*LKd_/T HŋusnkDM%[zo-Ccd$8NwR}  {|0rN,8 ҞN&f 4R@Ѻ;[vAYףHGpaZ@tϕ+:&5a-"0 ݭ\;RwR3}iv?ܛSk,rڭg?6i6.jQ_S212}-3 ꬼ)#oJhp,np;EfY-4slk2Ӎ[#=i%+w9âȳM<u][YyY5l&gD k3V/5HvKR CӪ]|>RzHL"x"զFZ4ݑFfڨކΔ0-ӵ68EP -wbbUz_paSsfaB{xH#b4=nK1 G:yi%%zD#RfTǖc7;3p+,5#+UZr/Mr,f6F=W;seᎥre۳[x ,D6)hu>xŇpBƄPV*K&HfQjH.s()5l!+IiwA7Qz˾-! J]VE#'7&o* 8)fC⭸)Um> LvZo-m'.2M[-z@FD'JfNCB(;hLҩAL("ƔvXⱚXN~6 |A]:oB)_\>x2LbUmTvXȢV+S-ix3~g549K銄 p(& >G> =)gk4kaJfkOӊOưټԀ[_@ =ghJj-}CI'd%#Rz9o(V[yh<""bG&ʲXݜBHdL/ecU jlrAvQm_/-](ԚG^BZ-wܑ]BĒ̍M *yF2I߉ֺP~:jDUDqN53 O)jlVhrqd[V/Fg6`i3AV!K6?a3#uR}ZUD3?{@Â*2 ND~P)_-'HjygSwc&̼#!LO3$I>Z]pWOu?uPx4[o`)`{ϗ[x,dU="1dgXE7)`tp2pz&?idb+Ta㿿F} Fu%p~"?)@+KT`Gaez7(MU8 ͢ C6:[h2QDXݧ߫!Êi&I\L>5XkIK+ P\jDYb6>Z/ƚT%c )zZrenLHd,5]v}1 +ݢEbmMMRbHphh0>wE/jIM/-֥Pf9-A,6ڿWz!]Yu5+gL\gC-V b#)D*c U[v6@ yb"H;uEeyh^ߕ Y\ETy^UkF W2yywYg썢3a,x\`(pNa*,xjȁ148Bi9:@ 3X|]|0? [inR˼I 4=B5Zttjʲ2lqrK Q0)pdd ]yObBD.]矑ɗb@z*~QQ5*,qqnq󇷄v,V4OyY ׯcIBh(jggVYilj2{}ojG]>y_$^J4YO6ŝ1 Y^dx(TWwҿ!oƖsަ13Hܖm'o&eSjz ~cךQcP,!9aq*+`$"S&ǡvϕ1- $)l&{?Ctzq!&h]&#aӐZge.OSR[fYVtԏ+$-[D;<@t) Ɍ"/?ݶ\ENa#Z@ 2Mͯ?T"*bG2{ku44\$IG5࿁SMl!=E8/ %(fRC:Jb3=hdF젗U1~;7aRh/?; 6 ?#wCH#tO"K?sÁOB6ף`̩7rLU]3:~Xë.!+ A5Oҧ]!`KQjc c0Afp P}& .鰂a%x2n%˜2C u\VV/^:ӛ榑K?=HExS+Fuv"z2Y3 oi2 Nr H \8E=<'U^$mb4> ;[{դ` jGbΚeJ B!?LPs:;&(м3Hf_jI_ b/xFcJ~"q1@DdOڨmy#~:Qʵ|Wd0+?3! B њGYqq%XUaD՝P:C~f3;{lX>b@/u (TLVyc)aK\ ,& gM7Ŵvyq̎;ØIod{$?7teXGԒo۹ o1CXmjE/ׅ {7x= v"ETIrnԸGjcFф7CōouVxE5 1.*XV6 $dIIl =jR`t|/; MBXϩGR98G~V4}JLr -ߤ*Q RSso*GaFw^lKQE1Vb~! {YS0י\&kj na8}kd熇Uޑ Ld O|r7$Y[0֧-Mv_:Guʞ9C%h`//7 |[X{RtQ| 击_pi@% < -u8bk?Zw/آZGS-!FsjcguO_>`F6 {6u㺶G ` n_'c񩩉 )ϗpkZ6O)^NpOYQ}aDCG#c$Fgͧc=s:렒g\ >MWSmeD0E-nB];z=nNݩa?mȪͥR"ȁR`|NjjkwUDпVizT =SDAgQƎ%4T8H z5D{𼾽\ 󦑣 "JǞ>$)vreu:>. ^b٥5d+5NQp٦BY߶lo b{QL\gfuS=2?Z&oo(gk`7ߜT n!C,9z)^Q+a pe86VNAGH.x8u 4 ψs#gʾ~>>9q\ yӆܬp<|k2,|#ig>\%$hKGSaWY7֊";x*R\UKpb8YF!z$&.Gj\0~ɀy\Eښi7bm,s 蹡.9n `FpjjYs]m-j ] fR-~9_a4ʖ;W)"5E M=utCAnUT.6=ڼCFTEΒ~+AhbdQJ݉rq=z{mۿHQ@;7#2,i< 0+YUz,| 3zxƝ|  w#RqF[#5kiuھ</҉8 |ѽle:6~@>6T~tLT3+6{f>"4p+Oő3GoL/bXM\mp!~bjAtCSș Fڳ0^F'Fzc_sX;vONpƃ VJ>ܻ@+ЏCkiPwk3~UǧK/R{\=jiGՊ9.F`Z罪޸[ECyOidJk}(n(Qj烽@!(u;J1+YMBQC+`^d9H"˥G/Բ:b~8v? $$x "Ku_R"62/X\  "LbAr2Q67)xփ h]JJqηMbT!atTw{WH]/kB},"HFqGT@}&..?aE|TAOڡGP9 uz~^hj h| 6Q$5Nc]6XJpl|8>M 0W/m/)uc3a&*7%y|U/ k,%mv7?Q΄= ?\MT5<gMmvaoݿxY4]O1Ue}hSͦNѯᕢK .\/G &C*Mu.wr!p3꾨:6+LEE*2if(͞7COЊȽy| +Xsжk@BΕX az!V˗h}_wJ?:\ dhTR^b$ !ȹ2[S9'/jS3$h⧓y$5dʖw>ۓ[+;KPh W]D+v\Ņe^ j2[O#'ᎁCN#ʞDS\}6ٍ\b˙!urrܫ 5|A+r⦼Fz2%t y(菰eF  qZ8-/3cneU7&NTYɚ2sU')8YH&p [lW~pU@QGVN1~ȩ6T(Pz>?ڽtی^bZ^w(tEEl䓄]glX`Uɥ[6H_B.oRz}ZWY߯$Zs>p1[ѩ^QrV1n݈e 8sfEi_ݐaIM҉e5y4jZQL Aȴ' Xs¥o2إI gHξ[jg=uhd<⻫)`,c=ӑ~ay즑wCsay ]Tj\;^2K`wbH(ߑ!K+oΝ,-C]!Յc ?mc)߄םvz0|e ]m~r/[P(v>dtjśr,1@93z\j{!,@oBfF<Y|C^A*{RRf5Ǯ+ӏ~~Z n+ ɛ޸+Y8&2~}(l2ZN|gi27B Iu3ԣ֏Ϳt ='} :X+ x|v}V, =#掮`CqY6y-DxՃ,,2BxxKO e*L 4T.9C⺢ ,b"&qg0hޘ47!ڀEFon:`_'g˵9.vU 7i5Ѿ:4r=&Y`-L(6P3]7N3"ˌ,{%**QYG/mp!V|~8 t6D1D񿿣|dV'}!!"ǖ%jw~A`TzV&>|'W?zZ;m̞-ոixs#bgٹke;rdTQ$y*cO/%Zo|~=5a$琹|bwRaߗBT <*Js7 zGk^JtK@y^<8ZZeF?ጁW'1V "9Y7([c݃w7Z-?<`BcJw7,F? ]Cz& >Q]b~wp\{?C/o6؀a2y䨁vSR8?ߵF3E?zR(X$Vl+V:*ŏ}.5Kڢa7g(lT[rkTYz?{#|&#,( uW-쓠E2Xl{O0[yVH|oPT02mw!ٮ-%ũ~+t̜X&1&ai-9x|;ޠoWةiJy+Cd~lQ^eEEiotu{k:Ly0qa~[/8)MIp){a9_p\:t 1+Ϸ4]~zn{Ak^gQCц5Vh?n#[G '5`LBZL:qGRMVRָ}!ȏ aKt䑘V1@Oʛ{FO1g;L.\/2|mttfo];*(!DGȭt(煩KF:kp#lr7l{Yk H3/k6܆@9]A8!tn٢q6Ւ\J GTPەputko f=oVi=<zf߯?r̤ ??@67Ǟzᓄˑ2EZX" ϢlXt降@8lD R7e57b:IIS֓ra"[M^0AZѪ2k,4ϋ >JJ̐xtlwn`!?Kb!L ΀,3FUn)o;Kv2p@sxۖ1kNՅm `h̳Mظh;_?azfRE%e.F\S+?/a,?)? ="[ԍJЩ\܉gYJsBh:Ã\YBV }!;]m]OV=EoFA 3j9) }(O>MPB٬: 0WwE(TG < F$1LG$OZo-'xV@'R#Ztn M3I$Õˣli[B)1?uo8) }?|M^Y*_$2 xB$ V &2Q>djP $B,6v@ЋpyrsZ1!BjHes#Uy5$nvldWʼ5x Of%W՞׶ t&J/kM)`\!q Pg:cڀcn M+686A[JoQ+͸=R~cfӮ%-[I e_:&xBp#;%|>2Qt* oP1ZD%/Yx <~Z .D[_ȰNI:xV.$Y]jz@cO<=9rH:xOT&wv4`5bZ71#ni|LZJDa_i\3kg48wW叮nV5ȓh:̟H>1 QXA;(+B-GgM(U㨨Q*9эR;JZa 1&O<"+1WpC"ʹtWU9#]ZjEjQ3+b˰vSTSY*zJ,֏,ۓ?踀B?ְʝv; *ӹzQb.0>hkMMr+Χ3JքKFR D sB8tuv5.Ӝ_:]RBwr˫x)0wEC"O`([B۝8yeI>8JBr7*VuN?)A "P| NZ2H8Τ92y2nAd>(=C,ꙧ2Cp(_e!;w!X^6@ Lr~Pk_s$FeI@+N#&w#\&sg0VS9%S6fA߃a Y<i}ֹ%3Î3~NXԧQVK󂡼}II%9KՋb%1#\oÀ/K1^rSUtM>"F2sR P`w!F 1Wq*yTqMy0fwT>6-Q1?]>2p6t)y5U}B~=IѫX9+Z{_j;"Iʺ^ #X},Z?GcXo( Bӝ|Kd-7ٟr6oFUpӏMV| !]hX ɠ~"1xrY'0&=x:,HLcyeZIXeG<Y%N sgg"冦)$i_;ϚC_~>,˜u;}cM#;$2GöSygmeة Ej"͢Nc5U _šHXZGy'Mٖ~xƑΗcȯgIC.80vɇ 8#a  ~7rk@Uxjؑ5ׅt*U 8섿 &KyKq\Ub"f[l Qu젒B`"-3z`Of{=I $|(,+s*S oH9Gtqץ:WmynIEl}%ό)绮u+HZ'\}8zT{Jjy2ΰ~:r8u- [@ΛhH2h.Y 83V!ļP%PP2+x̟k4{X "BHʞW Ǩ=^hnV&ً(zO@+GDt$1=_,T֨mRԻ`.aj||vmq:p`)(-.ᎌD# ̾bR8Qpv ?H/S?I N}-pDГB\Nw>#E9 ,G.) Ը*c1g֪rT[^q ~lJ!<@!L~Q8+? nǼsgǬ)H1q/32q!\Yd I\1)40x Es[:ndg~Bճ<KaE5$\mJ}N'ۃ] P)Mh!1Q|q .vدMY.1myb`㽪GT0x..^RgQ_7Y^E=Pҁ9 $ch5Ey ?:fM,:ϯ3´ȅ|q"霰xd0 ~ N!?8PxM~Zξ\]>R>v d6tY%̢J 5e#tlnRh{Ch^ܽ3J-ijΩ@=j5d]y&,f7#TmkchNZ3x\4Ҥ{?\3o*t 5ZyvFԖ*2H Nh]ȷKv35k^ߜRo*VGH^o}1@hҐ}mi[=F(L# *̎X.:/A[hW t`ahW$FA+_D{St#*[, a(^R,?/qQ<~/;I8a-7O(k%ԉJJ+;8LCm[AƴEmS? @>udK,P `?G$!`6'# $g&'T[GVY~S}1tՆ WH*(RK$2:#FkTs>q(F~Pgag{vh{6x j. G9ř`oijիuQ5g0Lxm.f ~i#-n$'~FMx"/99׻d>ugn^/dB%~Q@Gmp%8T1Z;~wpԫl-Бއt=\a;kJ鴘}nWr ; )vulbPJLhU@aΐO[l,! gsO*R7>WR;bx*3(~|V˰ETZ"Tm?}!kәTPqoG,N(t/lurS"CccLන#w-aM?pyۍa ֐'#cr@e~kqf7 d H0f{l7ޝo\*FZ@|{'P5=dnW5lf1Jه\?? "p&J$9'깑ґ=◝4^Ec7,>1]{77\,2I!TGنyc!4JpMR'Mߩ,6 3 S xJm'o](05>ETR^IQ -8~ij7'́ ֖M0^0[tBYDVlZD/9.2!־ F_A-l4Mxus{ oDY?W4J{ʏ<|PtV^Ff˜y Bc۬ܳqơ*pT_/6x㹄,\QB(ݹfueΨaSM3*&9, k )exNo f6$I!+ӑ=igIT9$⭉)蓡Pf`پ==Ƒǿ.}(rҵrRn4HA{=`,EGiyJvYDc{@M/#X$x, -o>he{_K9WZl#%B™e:]d7_Z -|%Sl2쑒h^8AHq`?7hc)?{6y lrBB*awS '\cM= 16.[Sv [kx}9B^<.&4f4U4yJYrгzn  8VG0e'(; @njEݛNz8bjѨ寑O>>R*]QV$ʢtR@U7-':6(j_nM{j6_r ,A iAinj &핏 ";)G2 }ֲL41Γn s(@z&ŬTrG T۷T-oX9* ~>S%Q7ݞ oiⰠfCm}sM #t;caV;q0L6)v0ћ&< x瓟N:<~ݴMNg\Hvǜ q!}nSU?X&ȪBȜr>ys*%6 r/Skhm|0侳eS7ڬ 8drKgTs[ZPE su"DK=M(̫eD ׉#ՖAd/~Ia$$8OEY(5k4z2X i%6b&v.&^XzI8jM֬,\ZdRO?uԉQW֎@,$囔#Y[u|gY\T:/qT`GCVQU!۞ψMꏨAA)~ mSj\\ūcLP 6*YZzCiRAv:kGčۄGL>-9?Xn^ qwu 7$oW„P`X|ckxW{hux~4iyDH#iO 9LMG ;P9c{OߊRA:5ԙ*F.o>ݿ䬐̑AtKzقv u}@cyYl8 ̄vXԲ%> ˰P8룛=z8Y:nS{z#CdYUU Dˍ:n\9:~$ҼN,gVۘ܄*i&94LtF8r L/sH4f{Tf)툺jѢKS1^Ƈٖ6s&cI, ~Ф0s7uMa-ƹG I h.׉8 / dVؚ`!|ȟ&ⴤ\z靾s@~J\ }fE>WКcٓ Ɨ8 sh@+wdaMПurJFBϤT <ϰlB~.@'et[`V\ALyn`&zf¡yj˴#KfܘC:QPQ򏅠(+Zn2ei2bOƖY|)%<]iOD91Ő ֱaHX8H)6bui#-L &E RUku]_cuѐD1l˫ADiԵ|px8r1GnMt Fc%R: iڔ4N!k} zL to~+٬G?M5Z6A3X\A8*,hixo k jI3!fQ,%xL - B |ڏ(AN'S!{ =UZn,g9_ӗvɵ2bI X0p]2O$7jY^ *]zdIZx,L&MK{Eۄf8zL\I_ %9A+#Cݐ/U9_y]6~l1Lp3:fћL_5:Lr\p,>\Jm~.NhW E 7S 顣G#uN"R". m`9  PSd6Bzx ]&n۾vskSm ;*\Unxr\]=` 9y95TKq'g2;F̗- p z(‹ju\[M4Sc FLڭxGX y=PiwLd6K8GuӖzŅ:}+SEi#> (A9RG"kфUܜiSi]F8Gq#O~|J̇!q,Е-Q&3MmA?pCQLc8u2̭Uh+ LS_؁fopD]4{Zr> ꀌwօh?$.WkPrETqGW 45kF$C:eߍUBS} nY1B:%B 85s9<H/iݠ"DPq=*ώ;=bx}:T*$t=-(|//⚘Wn#gk3 %]~:m)lՐL{J nַ}c57dHh.Qc~4p!}0cmg7df dA;u6q'η&pP'hk.+w2+ƞ]N@4zd&xg>#[P^1`f׫O`Jpd~3yR6ZR5FE/cګܳuaӖ~Y:6kvD('y(yGt3l(\30 K ׷64S _eblX rS_l r tFrxbʮH]F8Y*F$GON3ml oӶ4."7;˃R~3^ꤱ*T:u@X w^ƽ]c֙=Y{EVR 4T}%UL &hxEX`fHc]j2VM *|jaNK 07J mƯ yRlra/EF Y+U,I 3 '4y>mMD!X7%sDaJ ߹“N0 ?gBl7ITNvn #EMb.xW08=q7ږS{~{`<l keӻ zr 2"q2=-Q@d[&͟keAHLl*Ҫ`D^jnDRhYsEsm)H$]mLq[T?QĹ0M.~ug7RyYj]B#;$g5#1;O4Xc笪ilɶ%)@=[yd*3K(/}X\>oaGAS0kFt$Tf]!~D܏w,>x]u[x+eZ PH$[ZuԤjdK2w?Zc8`S!~\ be7a С4:@ "#( ȥ öLqRT=x j챕[~ʍ 77)Ԁ$i~jk:thnR-lYya0siŋOaw¢^Iq W5.0 p *αlBg^/i}o-UaPf-ӌvXh~ q<Hb 1z&%}LAk2dwXhx0?UvDSeTOc"Vh`zbu9_f{SE@\ QqA %7nܯ:~80SExRmgf7˒9s纷-[g/T-YaXhofcW:ڱF-h?r"[3J%:)ڈPrG%H_`b5TqĢ)7p,M2X^~v-.8I(r׫Dtq)#d*\.etD=$uAz{X~0m% P/hfS;zzbd1'% olryaQjFU5o.Ly6vVpq=FOgŸ'lcIGyuBbגa:[-9bRR,jɍFP !20JO/ G6a%nY9PH6E(I5O)}s3oxxx7RM"V#s]Cʫ_8KP}ۣ|=ܦv9۷R\,EFL'τ{&`wK_N H凹7Ho/yi]++.n& 6XȺ2?56R.ˤڇ{jrÒ=F^4U-+`v7APFWEc~+l^ Zw~Uc ]RT2571CazC]rC&uXd4@EV"$PT&--NU"nΨ|';VsYΘi Oӿ.th ,qhlQFxAmnPj9#w,:c$.۹ӻȧMRĩjͪr_){0[U &1}>`.:I_>}-Y 3]woM ΁ԒCzQ\\!_S!J7F eę."E'ooq ϻ|lPZk[sg\(SdEhf>]>zf] l΁ =DLrA2Ik;1 */L5jFd s[ٙL/ӫ^UVW fB!j6t#0ɾJ^Kki|PC/"ܶȭY0AY%#du*6n 96RA$|7\!t}ȅ z_VAˏATKH0TUõTي_}5Ue, a}EWsZIFK S5o'mU9=3JTNܓV\m6c0^YU=.x+|7cw|޸Qvh "2uD_hDOIARH9j9Gy Hu+#tpv{;߇FF8i/ܿo}+.0˙>.L z qrT6*`,.J+NdfXxA_\a3t cQ;1hҗGV=kEP })d#D(Zfo O^k bƈQhøW5 gJbKk˚!y\%(ؕa,eDj?T{(dFQVBU9f[Kb^zBKk=cfIU6»b # YwU0UQdgB|*KF@µuFZEUaf^8FNp~;:pC"qΫzO%1SBl!FÃ񜖻 a(s]Rl{.DNG$d79|@ N2wšQLާ-.J JOki6du?ߢމ nP%EO@9dN7yˢA 7L: h38}<_Be'\SG\{.O/^'4SF:H.xj7}r"W(I 0k>lt]Jʥ$S#ig59c݊Q\wGvLE{wl <DeEFd(դl~$WH[Rؤ:ksr䯼(IPb%09I#XLp0DeP2mA̵!Lϓ@DKjEšȣ9"i~j#c1w݂C:vMHU@XҎq`EΟIY*>TGP !fu=/e}Vq|`/F=,D'͋čhjrA?=Ao`-$Yoڎ)3TIq?.6mg ) УCC)GkA=ACVa"=`"MjC8R-?4Pt+Xt*;R=NX\6˿fX*n~`oK(ɐmd+IQL ŕ_d~'KJۥ…raW* 4vO#VfkW8EyB7'0405۞#DSc{e880`pOa.A/_߯saĆKcrX.޷N8K蓰6Wld3Ϟbv_8Sf1'W6$Ռoy)xx9%4ci\+CYLZTr$)DnJ0f(N|ן- BɆƌ#Bʻj"|pLwDtEDpz tP|;i

Q{b:K>G9i=҄IGj{luhcjAVY)ڴEV KZ>$#$~DE|*IC'Z|oM` #ft loF> zMٶ6ت+,.|rDJWuDج++G>]#s1ދ?ㅬ5IljَU`W/I(JME15N8钪RVSiN!tBފȇQ+骺M\(ːb@F"HmE\pxWc9D-\S-tK*y8F= XԈAN,s `Z86{$|e.%ڤ*WSsVqVe,]wr>+w}׀= W#pQ {1EU27j:e#gC3@G{SXF"q8_ڒݬ<PbI¦u2FOzPkxYFq'vF?CW[\8- fQ^SpO;Ay: }hlgA$p-#-@Y(n9-16cacuqM@ǯE/v۲7Xwv 1AyZ8o6 ǠL ($icYX' x/N͘DHW'w-[:sihvKN58')FiNs2nZ57&[t}Tɱ:D-<9Hk)@'}WCHN0O& @GkfCD7#P|3eS7HE{wvG=6rڞ]r&[]C\ koy+VR#kԇޭY\^Ts JYǴg4{!t2c Z}m+Aۭ):0R][˺ ZVtj02;d+,S)mL\Jov@_}'=EUn x6ōFy8W&'>}BQj-]&5!|b2W^q]r|a"\F;Mv|۫)٦/jdWz8.FE#$"&&p4UdKL,I^h0{WhO9FkZi "ÔtW+4FQ2:3{ueiE=.^-=RFo@_@bY,H>?(:').\Vdz,#cMn_5a4K=r޷8]s]ExdR 4HmwTdE.p7z3VSYs(mM_:{>̆@ [LKYd4z$5JJ$5@%MJ {< ȂS\Vq<8;b418.gsXfضmp!OkdVVN/ɖ3S罜!JK YYƩdk E2 }ئ] Jhs#?qOP E?Nh(` oUݖ7:n^Wi5*Yys?m\? p N%'LMlteǣƺg~~o4Uuj3Iց,Y@'{ns -= H"k?$r60ZYٷq7,0~`TY?[u:'|.a*eDˊLˇk\X=;&# o$Qw!X48Mt`ÀLޔ9de$-x]{o4\-).pP`F0E-F>V.xUon#  *Y n'8uϰm;]5T֙[zn 1.j|)(VWl0{{sP1 a(,̝ޯd!Kmhθ7n 6V]a8RS##9 )ZB1 HHbw}RX*;d45+iy}Ԭ^˖Llj߄5kI_ak[z<_#<%b>X-IpZܝ;z'8iw="PsxDSCd\]M\Ӯ^Ee~#ZMPFKI X5dGfjUpn93IrL"^"7,[؟N\ [ioLDTq Odu]GV1JMoW/ j2Lr@6X#'Rٞ-UcM&ŵ :IRo*@fqEUqy,Hq պA78菻2+=úʝ| XP:rmoT/Ż?s谆i7#Hct[bogĵ5FfToؑ 5 VL){Eu9~$r>H6<=a]6S"vԇo Wr@\=E"^jC\N%c+rL9g48v$ (yC+ځ9l.`YMwYڇI_MM61 ӈV zI :+{>g%W%CrzN&B2nbdP1bc048$y 2 `0*,Ą $XyS椑ތRjǾ XjNq06%>So"N\AHVQjvcLQ:+ft$2q3!5_c}/ )beiQ&H$K}1EА=6(NKFg*r#bdk/-$#r|pD4 }X[D4E%1}"PPcAggh/jChU2gkS ๏ǶNtPs4z-Y@l;K@Zu$͟I&cx%J)ZCmU'*+jʝ βS+|[؇pz2"od]ݢ]ACQ& mS0M{04E b9޽+4Qq{ttS adml\z<E'hz];9"V2|*x>ު-.Tτ=[:(r9=O0PS.Fj }yFya$$sc2Vvt)Q"}*u~x\i T; u%y~EnŠeXN3PjT7硺b05$O0R.-l !mWp2K8zUVq>A(18OX{, ʚ+#ke_[}x 3Po|9A(e2R vh(?DKn>r=&OI]Z6k[9چTr.P.H0#sx̹%ݞJ)Y*8!4ksB ]ۓ hF_l 5RstUizlj13y˽054bvIsö8bRyk}⁆CzRgs F"wp zҁ-w}Qhi +Nl}2H)jJNԑ-}][xв?|`MP7 ¾AH7)4EX* % q|0=bWP7'I5HtA7Qţjac>(z,{+TW*l]k v$0~b[t2OGDCFCK@Px٠[?j{\303DIp)=J|m;*0M-IYtQV=ȵ>h]`qit;TJ (Fj@rgJ6lu+BFYmyVY&:z9,hч}[W2V5jh}~*e_'I ͹a8n"6˶uF:pu?ZA 㱓=pY;a{"PCc˻u'0`g׵sIkO "\ `5!T%<A y C- xz)Rj5 M+O[=I%vb筽{~?Aς`ISOOpӈ72k]3~،tN09꺣Î4`%'k4sӯ_KSc?FrZl6Y_ތr GOiܪwI8J/[}88AlXG`&'\5t[i*66e 4 bnQ|+?y>_ی-V§nmUؕ@*ۣOs|Q~{:|kĴ@yg9jVd#P%pvZ宐w%Lr[:a/a2gfc/c*r&#>~蓶X"6AӃ gm#,ݭR+xRש9a)7'oÉ>o;[E:^gRT >fwf4k<5߀#Ϸc ǎoNx?c|'%|iJJEʢJhG.ẆVZdWY2K`cƸttNc.tWZZHu$TP&0݌^՝A,UB 6Y}`> 2;(DGFX1W^w亦ڥo p53ҫu?'/vä>B=>`Re469@ wJS,YMQ̕msƂD.'W0GHmڌS, ;Ltn_= F\mv='oC;fqX|uy"Mhݒ7Qȱuĸ P)'nڇk[W93, ^w$\D AŅbly]4 ,5xY`@.!@ɆL~Y)*Wg`ZИmE $ K?7GV=Ȱ6 Z8@JgV yv[vJeIOJm=IYVY?HgS`SbBbƽJEls[2Yנ9vCE! Cf\Z1gkx9 ˛0.l=GxV:F p(E)̕BZK\(,KfKn~լ =0\\\ȍ"=쁡 =X XwU}OuKK!PomMHlg'֚(%GKN')+/[jNL5Z-,Lj{}J&j6$" UrOkn &r%pn .cޘpK[xcC'{C$bú`/uU!}鳎$ YП&hKW%OVKS 2稄?gO՛$n[d!K+"z-yNpb)SuM'A?j[GƔ_!T A+z@:CoUP/]u &,ǁ~1ih$CbI?bg#,& T}h?4,dJ]/bzH,pM _`1hY!R#GջT47f*كA_$'MipFhX~.#hѦ+xfVw f.f6# l"~"+1.䈙 h  ]Dÿs/s꺤%TBL S]:!+,1Jg0c6:],1F#|_|1:C+%)rAh'q,Xfʼnum*KuxS{@- @Z[>jA@$Q,72YC;e}uO1$IA7!+jmC%irHasRL \@MR_C3 >x]>KPꆯe|͂q/ ^ sș蜯@Gߧ|#u$C/X@#o+|g`ff5r5:FؤkrCt_N_D$/'I{DdZa SE|\_9Mxz)<#tQ{Pzc_vd!CsPPpX/cT@Db V ю҂ꝺ MIZ 0"tr 3ڕdѽ&xv^oBS*$mkջh³j&]F#퐮zO H7Bk;;A%]]qVT-F꾣1I~' ZOĨxVbW;'VY`,ױtv6Iu%_ )7/B[=+3pܗ!&\-M dI03P'q6ߋ IyAoMPWk92#8JS/_`E+ZgoWW.`TnOMLWN~+K4u }_ _ռ1l^UGa8dm6#^y8 uO{BU2jvk{{+[WQ!\\{0CofJ^)ngtanv1"bM9 }B(Z[d ]On@#^ux.Do`ixv9[F>dz%C6o+x0jѵnW.Ͳr/bCʰ!e XF~bĉQ_8YZ}"cߧ,Z9 #!%`t_kJMW8|RACrߒ\z 9QoA :o0CXW=T)U#Eط[^z r>:Z㡣a'&{ .m%\L(E>}[$Cmu7qޯ0Hΰ=)%Oj=@o `]-F.WHeGD)O!'c<.8X-XI{nmszܹ*F\45=7%D>Lu,Y<lݙֽ@$ 37'U$e(Udx^f98 Q*-?*wHZ9>KX SlAۂՠ)̵C 'c3$mz!(jfْکp,zQck^j,@Ɛw6_(S\fzLJXO7J>jI|DI‘*l2ST;oB,&}$5^ Twb\~b8({ik,qhG`3z]JqV"Xl-6QyF妵^5~&}lf, -q>:(m|rIP7FIq^^EKpıȢkpZ/BKYj}0]j&ܨu؋m؃, :Vpix6,`1F`|RcjtdB˿J|6ؚ98r+=?,kBwhz@I#O/esmYR23M6FҎa]mU蚾}0\y/ ׇA_S~7e4D!V&=t`?3ǡ*l }Juw2I>| 0TUb\ ՟תb!lYk'={.\;KhI3QQ'hMqauǠc>-CC'Uw#^j>B ռWu8~Yjov;DǑ{=CQJ _>toݱ`ĉ96oe 6=1X|tr!"~dr/v6hZ$N:=`[ro:>Qϸ<3Y =s0ϡ;rtg*u8H݌s +%/ #JɁ%MSru3&:%.Ċ>|8^1J><' 0T3anp}?Gjo*'<.dߋ$Md#°[^dJ_3T ZA/C5YF3*/&֫**pqJ-6hhqvm/Hg4 n-# ښz?j|)~hb\ԕy">w M7H4?~4DZJAI 69"I%}\XR6CbQ4D >FDžL ?7PϊdJot.XB1Akp$7pU"WO-ڊ'435Mq`0㧨e\9Mi"Ij]G%'[TGTA>,Ђ}sA鶓 ™ҥpu+7A)mt?(^+yE )EN跦NNdYjyۆdPE8taWtV@%,JDPO3Vof%`q9U:3g=,]`Y'| O_n :@=5δ#E삭PݵHvDf4jb ͂%<9rD=ZLH72bi3RvS"h9E>`h=N7:_H8ѢmbT[0jh .F8L!'t/WM(뭄b*Ȕ@ VirrϘz!"c|t@R>SuI%ƽr4--<+we g9K.o7 -6# "ՙAu v}ÃA[Y'8y ?kSB:& J5pF ^w#=w=rQ[Jz\]ހؙM|m$ !2M`yVHرwۃ '-X D7#6<ÇUZi,@ymkr7a%LQjhHvl9 *옠8\9;u1Ne;vys7ɪ!*I|;N1"jJ1rMȳw7<A6=S Z ;;T(H[F $'2cǩȣqt,G"Zkb9B?41?)w& zП`^VI?o-y~r ^t0z$1MƳ&{`œi1X{ͦDxrFV VBz D f>R!#G.+g&Ҷ[Kz=MA41^rY%y/6DȪh?gk)k%$k݋| PҿgdkyWAM~m60gA|z9:AM %0ҥ#ZP1#NŤbfG1ICN Վ9.kuMPKm_6*c$ =ڰs]^`+̤ =X #M&vQIP#M3:NzN V;e;~0"6ŔVl,@!;7۲Y&r:"W@RY܏q(Kȿg,j35a)/Si+zւY;+ovuа޸Cn9/Viyx]e$,#MV.:a-ԂR#v1\i[ |j20iUa0{4x#y[ԝ;&er 3XVjg ^y[Gl!=g|c_@mL8q ̖xVk@7ItE]w^%ĢܜPMUe2 "# X1If8oQ`B\!FE_C<6J}nNt^QՑm>Oa2=i%e^vD͇{qoϠ=$%]˿QGV1p8O+9O^1^Ӿ\WxF~GY㲬@)P?5I*)v0Y!>hH4g+m5Ǒvg栓F/m]Y>e]{W͍M:ͯoGcǹ3>I#{VmP&VNj66)7C #Vjw»NL Dz@R~4r`jN{/j܊SУj΂(ofԔUߊj%%8B2 -ar1Z`m`"@|W)iZ%nZDDOു6f [ś=bF m}u ׏ 2HnfkN:S}cp|9LAdd`>izm6gr5&9@ku'p/#iݐ]P}_ž]-("0'My~-8^yJ1^0\\Vt6-{mOM㰔װ<>V1qg")5Q2ڋx! fdlyn"l%QIM="uD|e]+Y=Ԏ3x ͘ۆPg'H4ؽ2m~PlRf',atcCFgWS(Pڣ(QT#Bo2'"7PQ:jfbkjEAMʇUfу}"L_TGBP?r65ÿFPbVbtz[N ljouflK1Al Wʼ=a" dW91  mU]cIu]6_$I셟yt:Zf+kbMi!%n+Y^>ln`B[E\vDOe1g79?'6!Y\e`ÅI@3A:9@3â|ٓl\敩b4 o*|v`bMˌ=`h /~G:5m \4AϺy`[>jj.3q¡a,ega|`,dR .0\i@G'MFhJ)Mi]ihdƺq9sHO]Ps耰;Ky]EOܻkG|C$;Vq< }=᎔QoI"?Ƨx@7}s)F$vFXLL" 7W̅ه?cnD1DH?rNnA-؂_ހ㪇2tYN%% 2oƍ_ubq-"229W2]7'9k2Vfeb\~ owB6 Ev 'x`%Ƚd/Ty{SzՐQi^7۲:Sb_ۯ {DbY]eĕ1s!P7ӿ3L O]*Tjvӽe(,}*R4(ǚ8JWŢ],K+;?ܺ2"S^3K6ouER7CMO@WE0?'76Xp_H{DZץsM3>Ej%o Usq Q5+(H`7P俲pC1J!akc+6Z]I`L5.Q^ctC ZgPId9qa!sm㜄f&}rON˞KZا<>5kV`mQ<5KWu3"xR10f[| φdԉ{qG|g҄ 7*Y,t mT$ۺ5Qj,nenSi]>=/'=~q,ˮ5)|}iqT1gTκ^6:ٍ廀n|c]2Q:MMX?[9xWNϹf! 'tD7JG/.ճ WUJ2=:.9,E0},",: ÑJtvj=6TKk CXp7$`%KtyF5yē}?!PaV]}v|7N\ՂXX e;c=VY{e $KUГ9PN$^/zR@Me!OՄz㈚ V,ccp9'!X4]\]Tz|8R+֕^1K]T##f8o 9A#;#0`Y 훘He;x~(o&u؏SQRgR9goyvb_ V1 VvDnVߖs}c*U5يQ6lc9}HԼk6Ԩ\os6f+'DayIe=+v;"͵'}T T`7{` JI诱.Ad:9j;6<7H6DZ%;jFj7Bṳ@':OjЮJI3JFÎ[VN9ԇ҈-C*z#q>q{ZysNy(Fwg=qco~S 6nC0 ua!X[t};)@A'QMHY2U{r2MNͯ<,! \G9Lj5vwv3Tj AI왮chZ=n۶[lcCU@3z2d_,4z,bieElRj\TM.hB_^uL%q¡+x\YNA\%4- ',ϊWſy|vixIѸOD1ԁ؝.s 0WDk j},槣j<8_GcCHp$z5$R/Iį I^#8%T2L`&?@&LR͏JIDiAvUs?C*fޠ(G,?NFs#>w]d p[

I<* ,/[c9]5TS6M\cl樹U%vwKtX5# 9wd ·z- wE amF.~]o'8%s3$eLW&$gPIu# ei&ti~#n/:lnOg"/}'~SBI-7eiO)3V>:gF:8=k?pʦNqu~yF,?Q„DB\@ MШhik|ޠkZƁT~YX ;=`1"($$@')bP;MFG @ V=ӬܵO ;2͋(.2TX5ڇUrd(.Udb7<џ,ء_⇟orj  i([D10 ,Wn&1zxKqo1NL,d:ri jߴkmoړ™P#[~ޠB#N3 = a TAEnOٽCX%j$ob'j@.@<ӏ]if+.TzL&hEéfat׍ vt> IV=h)dy\c#ڳHݢ&'P?r`D|G~`H.X}h84 WӋջP)/|0<0u&"~JD%d|6r&vōsrK4Y0 {-s,Cv֮  fh-9l f$;-5BŠۼDKKX/y1;m@ER(D4.vrǺAX0S7ۓ"ə#Nfo^V󸍄\YylRk'IF)c` @fDC.4gXu¢#G+p/HYpm:mLDQEB!1kseg`n V8u: bn!< )A椕y_53S}J ##}Q#=:rwOl@|X8c#4B&h -b4'z&Ȝխjmȴoգ鎲g+eOdy9FCJu]qК-˨+P_W (Pzٰ1MZuLOf z}*A6';곰&dG1y5+$%ZB1Ćh,v}fXFڔjf}))BA;KŬ>Q<d&o&YdvJd춣ۦ! ak971Vbޣw%dIjpU|lQ@[nC}/UYm*w{͆.;#}m!ª_1vH/QV?fv#ԥZp?B^͂) ̽/ gpxoȃ%R7!< :_IPJQ7OGH!l5 ;IwMb@3DX8QOC6ErצL`1ŕ@v`c}(k+-'p9L?1_NaYRUߨX"s`,T[%HZ QN_Iru>"CvȡԸhH_|js҄9݁#ǚËdӚ#VCdܗݴ'xNWbgY]67( Y IϧdQ{pAl9-rQ$NɬQҥ[r~VD۠t헯@S-0tEHCy$Zy?U܋{ZeP{ԏ۞#2b7W^pLA=g9X|8#cU5t8_-r,LC/ZY\UEռvM4 Q93~n7&'=2GabXԃq <)T$U kzZ%\y{YѶ~ʢ4:ܭ=0&~r*%g3ZA ޓuDXfW#Yk]Sr鞤?L *om%W F4gƋ뀃1H·?aPY#TiShKaBjL TQ`Cp6v߱Y(pʻ 0JY`6B9VwsZ"Lw+B0׮}Y M=n8F!wEň!ζ&c I܁#IYXK61N9IHr(;`[" W_Տs<')bx؞Q1:a q(,N@9K_)YC&;A9U7yhgᱨ'ePCfY(NL-!Yjmiy LKwSuJj( #֨TFO+W%{HI[t^a.Y-dX3|8MYa 8SKLc2\u%FnR˘gKcf&(|B%btf:[͎9+T\' 5k:W xI,PnwWlHvstϦ:t \HL8al-‰8RINBjZ`PːVw g։mvrZ1m;zب3<% P@2N?{$^BJ*rh<@j=_~ xeǔ Q3B-w@0Wӱ)oTtzqI<}m%ʙ1D!4 DupV޺o-u;f,agL9wSh6$;e/z#+h{k@L56ERtґ'Rpe]SgX4؎?;CQJ+99fG3{> _ ZNp%W0yo 7q9Z/ [|zru$80"BABTmQ{DïB3)j b9駬J(Md e3l ~uO8F"=KfҾTi($eLytңseX m,Hl»4bSo7۶cǗS)=1X$dž\Z]I?h!7cB٨RU#YGM/Ns7~ +lZi'Um+$,}AbI PڑGV#ɪuRO ͶM'T %ԂƈfGK].O!NΪH7#mfaqJ?Z[Y;K~S1Z m.C2~D\xIJ!2 s]$a~=t*P´+ u|:;L֎O$Fry (MZ^ k*.;bGIE@O~o9uϸZY2 .j`;W!=" &g7KW E*M&*tWr?ApTVh=9O~FL8g=:$1r$D}ruSc/=ǐfzIțrʞ'V9{L_=^26G S*$^ }Ӧ19_/xFf}ӸhJl[); [ D8@jQXN WEh8JZW3Ḭ?bG fFgf:+"#C~!d'ix%@'| 3]E l(D<څ&(jET]q(!tnw{x%1?\P@02;*1@;PQȰy1oҒNl:@'# jR jfwX`WtHLHHCLr w-~'C4\Q*`y!b,n1Z6K|9! F!ޫnHتo} Ax{C;!9k5[Y*ɧ\~t 1ΰ8|)I0IcƓ- „ ]{663)iy#TIq0@\&.Q14ՇJBzz!fNkU,ǬavD.< UBO VV̊}^({1+}$2fhd8bw|X?_xEMvǘMTBvaP8}Cİb)"f9F~v:\^W1]Y0 "QfJ;^5E>XABP0'( 0ON['ZMWs)!݇ő:seH'Lڨp|EamG6'ĥ} '|1'K~ _+3!xp[s#|,yQn]%g0-5r&pVhُF$={ 0K$du9JEwGAH(N<'L(HġKmP90kLqimI9$gc BhHEJҿA"cu{8qŻa HTDei핮0+D}8$92MDJ¨/M{=dz5[oF?|䳚3W iE5f1[0/6ryb6t ;SI$ S }@ed)k`hQP .lQzJ'M[9>EVNPZYjɘd f5%/q sGCϗ=~6$!dg 0.* P3US+] 56_-WrTl^/m3e.nPpZ)e |?k®Ɨ?@Cv."/=.bw=ġkpi*, A `$2P&S660އ/՟se+n7vaJvx;;Ҳ^ =KAZ5f`#cXoQm|Zsܑ H[֑eԐydQ#l9>Gs*&{k!uR">w0+aTr?Q#M!iN<f_~gk!? 6+bnWʨI]S?˿1¤bSQ `}c<4Qy-F+9[Q?H8n_| C0xL"(Qi‹0VFhV^9Ӷ\'إ ADQE YA JW> 'q @x\kKXMTTz1{Q6uCm 1F9O5b%z|Ǝ eyNP7t@^4_q>֊5e̵ۅoo&P}KBs2 UJeyxh;~iqY ֵ{:coˬ Q2uK'cxh8m$&V5gzͽTCuM!O%E7J~YGz7kX\4({.rbLI~N==$&uf c;V,&zOͷɭ%ELC(4E} @l+Ӫڋ,"@2AwJI\*@iT1r*ȑ-4,&}㑗y1&J խHc"'\K]Yg҄_>wX{]I+D >A~ ̵ހ&tnD3hJ /g;F=Q:X[(uQy>{JG_"P@82/ۜeIGtW\(.L'*dg!q qV}4-m+itŹtАXzrł#],8L(9}HkBx(^n>?6zp6Lwy" Vؓ~x7D ]q]MB'*?G>Y=T~2V|Oj#tZVFroo a i)Z 0uMı`uTj %]Ȯ ]* nJ.[Yݟe{1 NeߨT#Vu8ݸ~u*,'g¯RI81s2 /V'v[<)H٥7oW+]ʊT娗B+M@-*:'vA f_s PibI8dDMXךg\S5a 8c- QNo %0jJ/@rג pʧekՕlOqW~*X8EOah~vy9_=kAwmzX=gLs'F7Դ\O G+9~'r~θmbvś&c$Bd{C>=g_S6=! x)?*OM&[w'NGL/n`%ا8LJlMlz!?)L'H)FRv Kr7销nV?!IG-g>pIٕڈ`8gW33tmGbKm]-ي'P؝Is5kfS^ۆ7JqKhlw?|%Ü ؅]4}-g}`#wp|ZyDS뉉:71W9L=픺c?BRDg6cE7 rg ٻ~8w-G[(ut]eZsL,(EGpq{Ѫ=+vI\ė"j?x ג*=x׎N.=S3GP yNiIh8$v`nEo;7kDtY]8wOgQUv %wFAD bD}5+u*sOӹzjbɚ' %&a5 ejY0xX@\} 4Y Hؾ`a@hV2R`O*Et-VvcB9=%*\oV UaX;y`Kyg*SX%/1#=mE^yVHY-~rALPJRY0L{%RIYQ?t}3e]x1 9b#Źu>y $BZ(Y=yHV 8m¿aZ>Oz8-cc(M֝ @G+se-SIaf.5)&("6؎[RX::Ld ϖl!XuU7[؇(>g%8KS:m63yZ9jxdYPSy0Iʙ~)K:W)?sB%%%,[+{Ypdv~Y=ԊTʈ]A$h8M,!Y8,AFdl;QvxW \@^+H cJėH)&n1^Pﴕ̸l {`>H'צEѦµK^L1_ɋ$64 8$nR 0 ߁$J6a26_hp6Puâ4| ۂ.'4ȖL>:/WnP+)-M]d"PixIW;Yz.݂АWscŃíz7C<-d5qzrkũ+}9[AI?Ɵb&5?וes-p&~jmFN:j`jw|iLv04 vjpz`Ǭۏ)X7@c =G.YQW$ nى='cOZQ,܊S7SJud"//cPUu1!̀!y-?Gͭn`x#X"h ui.uhVu"yΊ<A|B7Qw@<,G϶̧*\bq :%f΀s:u;q9ca/y3!?uY8Z8ܧJHN`|V V0Xw:o-ROËzEv|t34Q ^ 6 ݲS=.p_ ^~ƓX,k&W1,vϫ%:9wY1KlL;ĘmHkkⶵoi?$ケmBL ICj8#37J~!8`>^F (҆$ȜCk c7so+4}wEBѣ'DVj/kϴ %Ҵ=@'fHķHB!Ӊ@*V{D#_No,\ۜ~?&/[7o@!r,q{^W?k..'>aEMhؠvvXZ>!DsN|5Ӏ~k'bS1 /mG,A N8רjy*/z*mP0E%c] 6~}h  ;LeC(&I"HjGAubN#olT-VL 6,\s]B U-ٍ'TPtIJ1ӲV#%fM v?aIX ~cPuZK?3B*`,Tt+@mIbck{xA.s6w6SNu˕VpmhFii\t M=T#.j3m8ir/c[N3-L7вF[ϢFPӡm;`D\[Xt"J)ۍuNjB.\9tmDoR*P:N1a:hKn@8 KՅnOx|h n4'Bn)(" agN:/h`1xuS 2*Oj/іE#0MoN¦8pŸg-)5鋌5t!YsIP.!(O*v/ ̜ \4%_ 9z3n6Zyy  *zyTƍm*xUPPZA I'zCQl>&qJi}D_ IoS-hPn U^}~?RC` ITϡH vz-.i:2DH4~z]+_PK`ȓ>Y׃K>XR Y۝ׅm٘O1U Dgc`Y+SiťA&4CFa岇bNQ d}=-W饅WdMTd8H(g |Ps۫ e'j)ֈ"R Nj[<+ 83&cG44Q& ߜ_Ik%ȸ@cZQeV k--.4zMH9ژmҐ+LUcYgRQT4~+}zNh%=')|(xjz\-lA㈷\)NX7Z9x0;:f*D:[)|Ol&`4*z*Q:d ̞@zSnO3/7?;jDF?dZIx}+.wj-TkRI%AQ!X$(M0wtϳ yUr D:)?VtA{eɫg Q3S`F!qf2sn/ X "CۚPipZX(+QET4[G"zρ:լ88rVqz॒S&Y_Z]^t*5.5 w"A6(EL98]5d2c]{HNFw]܁3ObuY ]%ٽɣvG}q-1Zi#D zx4H ;QQXNIk~?%,gcdGb9ߎ[ ֨I!0AƬ8X! oI_7YyB evSf1+]٦&{ddu2O$&HAV/FgW|J1QV4$Qhi|)SAzeam혶qP)4C0 ]eH_1N2D{mu Jr0!㍑⍲?$~*R4ɠV.%Za:sT'@Y`0<8OYINIS<;p:QvF5@fWr<<'L$%·̧,EE:tK&̝~k.z},3zFM|ףԓCMf 7\/R'  Y\1ʍqMHQE#҇$쯂aT1mg⸣VF-6O8#xdǖr`D@ĒpB8B6kff c]{jQ*63Ep #_mۨu8Ҏg?DZgȁ6 pmR2svBs0r]0Ć*۽nByklf2%Bl?s]z^V+t*Z62~Jn/\܂_ PDG[tux-977 "pO)ΠzzK; 29,4'"'-Iq;G^JFS3zڑ {2;}i\ /e+jy!11Vtk?.}ZM#UYfi`@{R3i"y̕Ѷl \O8f*U#_ڵX#*aـͻ[A]G!M̋!8Ec~!z+)]g_JCE!iS l =Z~2#~EDQ3r>mɢَ%#(-Ѭo*M]͚n# K@ pӯhU>9wb85m(\D;mJ+6 1CXPy2}ɡ1PW?R|:'W阖Ý>`(m%',ǩP8?^=3u{ɱ%8y2vC@}#%e&SN*t2Y nga҈&5߀dQMKZ`UplpP[0I?3QH LsǞ2}b#b 3,$Z-eӌ;^|> [wcNY1hL"ZgC\U$t;, _iMJ\IL]J|G: 5$m59G@kXEw6VmhX ߗ1ez(-s!/L+z8FGM| _2G.OE/"rO`&ӟqC z r.ĩ Dvb.])J˚H֑0[6  Yp{ֹתIztb5z!peͿ>Q#~ȣʕjQoHh7Izgx4\RfEə|)-ť⎾ŧgiu{wW3 Yِ ;ZEiY{Q{,1K[6"e;ܤ\-t_ D4u D > ?)UVyizM+Dz#hd%m 1r)*kݏ$$N!GrI%-A$e}lUk!3Dy1pq(eA+k,33rȂ!e-Hk )\v-QAxnʟ`1͖VbG!Bo0mKnG`@ƚSNQЪ,ń׮ʌpiW=x~9/g}clQh;?Fcݨ\߿^{]W̸5٨9,B p;'_0 .dnL}CjhfuBnytEX5Z[!z؍&@XO%AIx1he+d\eұdmE'kcU?a㮰7zd@q'?Cs -PҋPUOҳc%b2?]'b FK[[9cWdI&8_k7{_%E\QN\AJQ&4\BAT=!jOƮ$ d[,' 6P1> `.սjgaN_/r&|7\LD gSy} bUӯ1/dwWxy\FÇ B䱷٭ez}JS8h/T4@WLH!z|9 f6RbҲ0T0V# h KӊػFOW Yy, gIךZ}-:x")nJ<q}+4^1s}ɍEU\vaa.t7N_|w`ˇHx?bt{⭡R# si+N< eUG`i8Ï k5-h:.{I` wzǢݾIiL:&Zl1 n)9^SO>sœ0L F\0xzI@sk'LʳIJms1OS\ba6J3BXo&e5qA NO>ln0L91dbrI— 4C9`%}]Ŕ}L/Fek6[_ONlMĊޢh|@2lLG~Hq-Tͺ?|w׍bz ZBJ3&dd7Z,\Ÿx/|\Δ"T@0SRʹJPXjr-[07db~ИByiĀވ ^1.ZlL,~wEf.)1R@e"MQ3WC/32 <ƝtWbtnҏ2`C&{EQ[;өVna.UD%.\QW(/L۔^ĜTxE \v% x:|P+LjuT|k[-aw- x)x ؤݝ2 1هw. 98`(Afy$s>yWRAj .}# av#֌|XnEz,^G!; ja"L!zV5Bf$6)Y6>sLQ:Ap#8nPs>"^|>OOm'=bζ=|SXZżEmB3Q#*noftHC2ݥ(5!ƆEoug2X#^79{W̔m'4^ԏLLݨQ]P4UD$ {t(p]TW#K֦ @AjGV[D5f1@LW~^UTftug$-G8#+;DE K}s8?%QPRUOS{CY&=XzbkwYh)M x}gF[Y *14eeF@G)^F\\N0 y.M$5 NO٤j) x)$4f̜"4BȉE1Hf=;[ފwqGJq CL i{ Y'{2dggxƋMB"<@\^/8 fLݭ_q^u hO4D uu7b Az,cQ]\eӵ?}KSҋ5ޠeK= .Dg/ QS}Yց>i|HBFԑx@Ong;FB46 6#t.(*sz&ACF t|uJѢڨijWAUUl;84YgҗS/e?Q] =)Q RĠ~_[H58[-[]p}}Xq^QR!IWxےy}8&8l+!V>x#ԫ n&zᒣٛh1 }INꃡ5ck !+IqޛQA~gJK =Yt|TN蹙'ڎaR 3vea.&3j;LVhA;`Uk}~8[M&q +EZbjL|p-K9<7ٶ6%&۲ZTV$\(өI|2 mZ67swڸPZ1ˌm {&d׵ \`1#.VV3Oa1#<"cJ4%/ݲDSq}p g'W9RRD+bʒVel”EZvh2v hxJغbJ9! $LyȎHbX3kH~1/N&JQj`kM[j:(Z"vG\yz{W)?:H"Ha|/8m9j^&2xt~^_OIDCUty@\$H-Rc{]&0WZO%ec )J},}b#)Oe,ש7eʧ I:]=#Gsl6bVh nZ  |-&PyZ^)vv(i+a:<*QNQgd磌FSBVq[ [~,^蝵?i%G ]#9yϖR,%O55ef= *4SE6|b&ĝnͽGB{[ ad4+@<3L$,1Qla*J=H"'bƼEXt}F&,.ܺ$Ej|5c#\[6S-H1 Nd6C|H_hS@-m)r9ȼ%`&8>=[VEd_ّ6ȍ@nꁈ#;vﮌ,!wH}{UpUܰ.3幆y2Dۉ&}U`z5H:GHH/z4ʆbC/ū*EwK=aߝv񌾎@ ͠S(Rg_yz^ȘIGӅ=s|\5_u|$PE;d- f$dFaz }˃F㱆@d`V "XDfNYǠg; n@u;Gi 1;$-Sg4'ITIVQyG R20A$Z麄H+[V)k"ҜIF2>T3p5B)ToH<(0޿V*a,+rP$"\;U*TA`D{b5q ~qfΈn  7MϥffKA2pL\@7L\jعp |`5=I6L&_ Cvx!lZa32A ")r6xI*҉5*6qwm^_k9="D).*ۛ_t+eRJH(vKjRu$Gv*Q샽pz̃]k~9yw>Jh@*5FwI/Cg3gf}сX/tS. r@j?ω&Ga~?9'V/J$3G}@YTIM_9exC0xR.oQxy/IrHw.,j?2KC[3vpl5-euu*؄lwaaxcKqf=П/L$@<%0ʰ6N>;ѼGeہB̽51@7 ʺPx7nS.;>é01*ÄD!CMixnu$˴yE*fX`{` NS((z&aKoQC" nvA5G{}v!6(oSPv(ݤ*0浰a&޼іǭYK0pL18VsUv3䠍s,r4,} # PX|s]wv[\ץ PAٙ6wO!eI3#^uPJTělOF 犊bmQg.kb{)d#[Iac$B\ 13=Vh-c]B4kT~v ^kV盧2KɊqh8clKaz,.g^:Vݗ/)yjfDѬ_ W֊Nh $&6Tj½/guUЉ2-(*|d|P5rڰudM>v_vRiUK xb25L !K%fY!׼-k0RIaHཏƸvT_42\HA_rwИWoLF 덗 9]3id'|O6ҁs}ާPN&nj,U 0^UB.c!U]lpg(Oay$YGπ7y6ȸ IA%+bj΍xLjk o]c[-"NǑoϐ>j+4gB uycRB'@QfH%Jm`8ȟ!0Jgݸl50@}U ܀x`~^'"VLer.t((*e"NpfXIQ!V WŐnь bIU'DTߤ/t2Z/N ks''{G.P@?Q1K#݌;t6g:vV,Q$F+a "vK~uW vZIz9d-g6%X{[ARUO>3O˜#mCa:$6XQoPqH* Ըv&߬u^+.jBS(=k˥_aAgc~E2"(bYYÒI^D>n)Rh0!cQ~N7$=J[oC+q HI@?jK'\ sqI?8<] adaG2cG Bv #@/nU5Ymn˨^^RjziO x4G[vBSqZSWC|yl0E1#u|!*kreG2uXLsٹ\UGu@ n@T@Hn~rQMzdYQg6 07nˆw,=ś[qF\++ (p@$ o)uEIh,1Ƹ2FҮt^Z?qREqǫ./l@skM2ԭmFMetT\YE&;)C<&8V. s%]3dU7P`L8sm/^5AE_2!cӽq 4`)Jۤܩq>bQD-L{Z`>l>9sҐCYXgn @gK v4t(S8/JRg!ϴBNPUfuƗ5t҂DGZlmaW&{{JQf>iGQf{S@!5f+K]Brg2|f?~PU ?_.qwxRh | ^ӪlZfޗ^Sb6n an+a_,\ZTq&m Ք>n\=,`, GL>^zfs\XC Hb=lË J:ȼ IJ6ڄS. 䝀W _P`w U^1j_V;sɿMqvװ&I2l4_#ZLsgM[呆'h!o_֦/z5Pa/a/ag1;E12AholbH(,3Wߎ. 7ZaS}#]5Bb I.|N 'ǐAGiIv 2B-L7u8|8Z$ .ip>glyJUa Z')BZ 1ı-tBFu2b Rgqy%3"%dѿk5eQAKz>5X ƴ{|NGqnv2x:SBmu! ̜/ rs# s;پ=c$>$ v<13 ' }O[ʌ+?9k a7^uƕ@mIZ R*92 Nj݈x*DTŴJ*(':!yvNyY=Q)p72L O%B7DAQ A|t-S0&.}_4N[#o\c$zj;h RH705֋d}t>\7Q4>Sr@)ahW/FC uZ?fSO.[@a0 [W]GtJh`Ԕ`|yٟX%C{lwH]P_6 q]kMb׋U Lŭ ޕ8))՚b3lM-$@@r{5Y5'VNLyOQOXDN", mJu`ŦR+.t!ܩ"%^¬K7T|$ HJ˘ŒL]cVw{hq\@)i첁@ҵ*oRhm50K `otqgF>&&v&>ftEa(5i~KYݜ`/6'8<ܖW=,D $}B c*> Ya⋷*.86ȯ󖣥4t= E˶L0tS|4UG@Sz+tb1:GO~j*d{ 3}sPq,[nL%Q! _~n ]]5nx4ݫЛ|ނOВj?^P˜-!7܌XOoGՙ FK74W=@w긙WvTZof ՠC:Z@B !"'θ|61ӸIvS1HBv3E"ҽ>FDaWCXԞ5+UhzBA jO`ѣ:~`[ꗀҰ2"(8׊?6<# Ѩy Q(ynOq"HiH/ّI^fm^j, P1}#\$! K_ l5$ps%N3Km/yphdIm8((ELrO~g@ʂF˜.Q`0G}4 %r$lWhE;d;}9{lѨ;5x [}co?$%)ּ[kg%\on*A{JBN G syQ~tApd(ȊgZ,ɗ HfԪ'-όhS)w%JsC߱l54v2RU@;0wy Sd A}cZ> z}G5HtZp-`=X:E(َE\Sx;-}"0A~NIEu։b.=":Jhv7SL{x.)PR>$cw Lyf_Swc.Qܹ8ܧ2fbXdoêTx[6D9@@Sv5x. 3˗,gmS pt[ %p v8HbVVN9@U9,[q: gɗ&'F>f{d<>mHKh'8n 8dNle/Mp-0@(Αͭ nhU&cb ?Kk$EhpE~ߍ.1~[&g3. sL="B$jq5ʞ+hXZ!d=dŋ`um)sv|uovP{ 眿x='3#p! XMS]-?^OOh]K;z v١AFw?Mزil2Ib%Z ~0C.P~kMM?4p0 i K50FZ,:[s7׫'X823W!;ÆXt` (RA3?aG|:sj.J@KH㭋%xƋ[(ۄYãcc!a#Q1F׵!x.L1 *ϙм`XOp8[լщ<3SpZ5g0XLm2TvU5\*8@gpz(,8C6J3ltE8|Rx@H;yVHHO2?qT9u/ippCgH4g%dgms/dRM_Gl<6DU#g_&&i=|p\hR=Qj1P!|Bd_=l|2|b7g!ycrg1,[N"<\( eczsl%[8X8^(LVH=Z$Cn k":EF<Ҵ"y@uL_Om{0/Ҵyj֬dLNA>O$WK/S mL*+7'6$m-ηU[d2CKJ!1XTw?(Fi/C|Qnaq̱Ģ8ksB+K\}f[kT:'t ol#'"ױ, f;X?KF9FU[_ σ#.X]K&pH=/Ş@vB'Ƅv%/ Mʛ U'nl:kN _&P0p ǁEB-_|既$zv}9R_y/$ '꒱ 3ZX0jWLYz5 l+U¥ K5U%½hG۬ZYkgMK!PւI#ڞmI`_iBϭ×M(`st ':W>=5XS lkiݍ%5n@1'Rc|a8i 5wjro-ϰ]4G 2b;OF77aT& GDW%}'j lfE S{ήU #? z̚i^Sv HR=@=!^R b6L(VÔ [_`NG{'9w >d!5!pR~Y@}y@c975s};EE w0 ˫B( ؕۖ!ټ e~G[dlZs;_'Ӏg U.M`fs|QU`ݒ+m,l#=#=}<a"o]'>ϑ]W^u`e%As 2]<јfRM"sOŷq_).EE~T$U rŔ9 b~ z4o*en Kqkт|(iV C}lwå 3 >$DdadLR/4d\4UxO%u⤹@;x%Xi4#>R>X(ѰRoԏѶf)B]-9jPʭG3?/k"ĵ*>Lӑ %x2$c$sc{0̽*LܲRәK+o翭@d S]?Kӹ  LfH,{4|Z$u*vbKA~*>!Ag ØpmF$XUrl>Ոp5 E=B#+aWm8zɌUacfkOZ%RWLf5`ď:߮g =2݃e>19*hhҵW>$IdO$wN^O0(R_TY,dT )glhwq_Ǭ~[-ks~iVu;aY+]B8 ?eR FkOUznb1PHiONiUGo."^&SKM~h;7]sE||λ#J6Ye Ru4}ۥ*6)ۥs.6_xW=>E4GiX>Ež9߯~!ucIf0X??v%>JmO S3gūyvI$/ls*QAȼ:ia:M󖲫/:;ZH#۾8m܆vdɘÄmn.kTsB@ 8`O[z[R]. @PyքwVmoӟ@P~h.qr&jFƮELD]IYyȎ;eSz6j ;XKWoLp-+s:`,_+ 7Pb^O~aɗ|K5gwu2  =wm0 Q;s_=#P(P-\Жv4 G[RbV+tHd/ZrVL[J7`qЭڴT@.z< 8{gV(5ZJ3JCWpx6 f=2rg:߷TuvD`DSD91`\D-IFkO4a0 \'~NmҒwwP97&Ç4G@%Nvr c/3yҟF-vV[̉yj+a:Ѭc;\[*1Pϙ]4LLUL=X?{Y?x,wfmZV3^N0!5su!om7alB(*P5=a˯KuZAMrA//*jR>3g̟,޲ppFLT)(-4(`6=@8H-0/2p c0I%s!Np2]I!s1w# [VZmaMR_b|Oݿ9VuLgmkP%="7}q44B@3Ü~x,5c,W\٭IKհ{n* $+X=XtwAax򋇈L #jgЖz5{o8ZK3̉V9z}T%UT=+T  <#l*fpԿL,:Oe]! Z=8:U볂>/z2Vu Z$~<JShӃ.(XJ JRxrl|CMۇ@Zlqyb ŃLs/(.I6t6{H̑ F߼qN:5buva$mYJd" w' Q&YJI<&A:8N #"Ƌ Bvʂ i}Z#/ExfK/rSty>i,d}DLɦ)Y8+֗͝o> X|{M6&4_#HueMMe4Wg|1M#uZ]5~b8Z#on9I3^*W%Ve[9n7af#@) kK5 HaJ-AbXI'f &I)XPlqeOIL3?/L荷VY{ϸĸ؉R@ ;D)b?^&[^#$'A vM=nPJ`^ LrD &8~ ,obvx^ѫXⰚ n6I_a^5b1;BS' λkb 7q}nD t玤q@# :jnyms f$[:HYTIm}n3] i % QDV؆;|Ʀ0d֘Q.ܑMʧqwb94dIʍ@$h͆7u3nȆdBU摺 !6?!PC h塞MIosW-{]CD!nT=|p \Щ Gl)sA:}+z6݋鰙r0y`zwptѪSo ,VQoLuVYObK2jP~rG;/ɂ첷_S.lFh\ƕ=@:E Nt%بm--{Jog̨2yͻ2K+Ϝ:m NY]j ⳈW~ *-I R*IBhnFM:9 iޮ566C+LcO S87ݴ Bp2M_~ <,K®'=̨w4OTz%( snS2!)aiʸR6>ˏ\nͦ{Zox:a% .QҺ`#SG;NjEvf1KRU=>@ eZkϜ}[TDC[fE5|(05+(>ltu8U_B*õd~^'dݩk(/BWҖnlۆ]hU(o/}hm=8"9e֚TB1YǍI-8VZc,3GfBqo&2;'0B+gWt>.>M3]GY'JԵ*+C <812*$Byp%y˴BoKWi>Phɒk1 .^\N-zL)%'.~ǣ̅sx^8U_lQ޺ ?]vm4D%H;#btu4J#17S n˒ڣ Nb|fak^gyO F ova2ep] s2GFb%.s[B-\,jZx!{7j~!~VM2f {c/n;ZhEP߄vRpN$SQ qx IK^: hyl34 mcȊG[5-I tF?,R =cdy&P%t_PqkyS֕ϱCz:X,+<ܒˆ*>FFCܧ&٣g{FoUƊi4˲0xG@+g#WٺYsDbacQOVlDO/Βf AGI=TW JҒ+m1vt3۳G  ^+B33=>::7 @v.!SzZ*۬]@q2I {)'ݯD I8PY N@/}a¢PI~ݱ!ĢւdbS_VMc o'#wwHV^B'&c&Oa#jݩᒴ4"!%7j9 ~vIkzo*$9C6o2"i6>eO%B8'l^y *֡z:c> G#!@w7'Dp5QNYY|EhKGGE@lj&N]Zhݤ-ID/M6҂AdW~?1;鮔|>㝬8n$n٢!Y w=Pp̼mTZ@|OI,d$]DmnK=)j:?9%Ϸb`'S#I͌R~ҟX7O9B]>:A:Ptg Pri1D$J,@G!E[q͏@fk"eh_yf 10}9s28^~a69ڮ$!",64 &jӶndY>7W.\Fd9Mمc~iP,)kAU4J~];k hsMnD#>csO;|`lqwr/xgǡ ] B \ab+b: 4Q% ج%|dFzdb~lha4SYSUڿωݡj[k)ق"oAċ3^!qNϬh.6/Dq :{GY8Y7%ut >e p$79 2z繧ȷEY)sB .g: ׽qZj#I2o o%8p6pwW0RY~#@]yKdm؂S&y'8^x <@FO;] *"q4EsWۈ m\ͥ3xc{Qt ~4Ne|-n|;mvRg;G!TY zp.rwI;>G +%:)gs:9/k shR:$ɮ"<[I= g`wih_=h[5|ڀ?f墭I5HU@:]#WC0m6ZbX PrҊi)Pd+o8I&"dV_'Mˤ$'-]YJR:.=8OKW2q[A"C}:znlFj9?6#(&H#¡$/F]d/A1`ɫ7 3d\ڻ미#gwFd瀆U\yk:;4xg 7:XN;!0&Kz9'BgF֫`9l yFEa5G*mp?=D$و):} +~>UoͩΡK)Pϼ:ĊT; У MDpkIVʌ)ݤwqʹ L3+b$޶5aI5keJ..uldXq v"=ֻ^:렠jxePBqqtDL{_" X/ E./g7a~(>ؚcҙ?l^ƽekUgIh{P3gR1Ҝha=hNӾtfqD ;L[p);O>Ż-տi#ηe.>rHze$FDK5g=2ax+8DN^)W#adgtGL0B il. LCbB{Q*%N7^X[P7mni}rC$ޱ"k4ȃj0Cүr#'1O- l<!fM݂ V8o,x Jr&욘XbkܼT-싧}O\3ڦR~Tkh!H*=rS,R4AtZ_O¯6)y̖o1 ZKp Z%ܫM?% Π=륞@xVh+UHIh>vo?gzlL[ߋ7^FP7 &ȭv%vNİc)~ҥכ9Lj]ک]zk7f̅@C-+B5Y;DמZ]^lK4iy[כEԫx..;w>/rQ=rA7 Bh&>[?n.Tftp}yn"<+^OFY Oh.Ӑ_=ڬLi~G.ђV0RLq넃{z#%xn*m4h0Ojbl;76Twgk48=s#eڷi̧89þ|Kߺaۊ=U^?8M]$'5p28(Kydm\4Sy)#{x0V&Dk|: |&IFSVMn={W#0jNOb 2=s∡<:c;0q1=H\i C&<FbdeNיٝ 1f1+ 5kM]nVn`$sn|%ozL :L8o H}- 9=u>>UL]t7Ŕl'e֌c2R N~ )"37i>TCN *ܲSl+Z*/ ) ?\ǙfaQP5LC? t:iލcRUVT$.4P|;(3b֯ƫoɄ(.ܪy>ݗiߚ%~__bk?@SU\#FMSG ,*b,#&Q0Oh:ߓ܈fqQc?IBHoW7:BhՅ'%lsc-Y򱀿omІAlWLEKI4<M;(&\Us2:Fz fx8~=.Gƃ2ʮFxB]Mz}O`ևt1IINHR* pJ%4ד&^=lf;VڠxeIv̯'*lze 9_?#+=-[+X.$PY!^:źkw1&=!$R twrZĬriA,(FO.5}4#DEL,mSp%Y6sVTHSCeNg%?V&i; m+߇1P{㔌am{ 4Y?Uq0@orIT;a wWAXsN;l;J[ /k5rN~(κ}yh2 lV0LmUT%p0F[1<Fb=vez*/':79 `̔u[6.ùj@]Y/KԈ !#>Dɾr[׽Z>"% e2(=%vK 7h7~ ڵ.Q&aú΄%WV#EI'4*xHC>/x >PIt6O$s"擙.L%hIyUBWn^v>>:M z >'0Cc`_呭d3tٜ1%Qm mLt`HGx"^,yC(jA*ښhg^Z?Ԉ8[a 1 @%KyDYQZcj]ML@z9Hp< \ApdL .vscSSŶMRՍf_&|K3J\xFeh&ql>qw헆nօ1}p[]̆:hڝ` R\MM jē+hII@|v_ 쿲& 4y (6pAߵNe[^y3tuИSdEFi94%+:;>W;g1(xE#v lPq腆f].a` '0:o CKEQi^v^*!"?3B~cxGWQڧ6>rqB wHdC"F[KB2q+kw6 -@V dlIЎ۔G{Yw7[OWKFv\kսHg˫3 qH_ K(O9f608XUHӋX͠ xo}kXҵnBɮ8V41z_7Uou+kT*'qj襳SN0N5hC@!>_Ez)\xA qK& g DM1bo)e9(LM΃YL X/o/K-BؽW0+R !^{ԍk5zaBNgVFR*% @%4tƼD<%/ M'^W+9m:isSp([c۱}3zPgֲBϯ )9Pfa})y- 8;[K͊n0=Si[9?Nw~y@29q=ebcz_VYNdR۩D؆qq~%BK u^R\1 UIæ Tnnz϶D0f2uK6o?;Sm;2-8in`4fzc>T8F5Ap̾Pm.wc[x.lquYtYP(6λ ;<kSxWCE^bpbl 1,gLE ]jQ*RCR>Xbgodrw)jmaQwOL;9NBWZ+;-on,RoM䈔,挤dQm]z*қmі5O -РM$z9eP9<uL3* 7Earc؂+hrUX:V>p_\7ұp<{0.'$PzIIK4I'fv7}|,rQTΐtZNЕFM稦$;L:}*4&F_?eV9^R뫏P2g0Q4ܩ@炘k4B$?}pn:jh$}'$!wWW%Fz ϛyt`$^yr/Fvԫ N&<MBCiX˼q߹lV~L2(?Jlh#8x$GhC>n%AW^>(L[s*&9%b=^\![W*;̽ԚXis w2_^5H [*8 6!솧h[!xEq2Tm%OP-ysc< 5JA:.|]+[aխ߉.nn1\?-t&Piצdݸڐ8Y=pc3)j0%ʮlwaŠ(`K{-ߞѽzhL`;?,2lPemR=*_LnLPƝ{4ͻ+q/BDyw@nzj,!"Lo԰@Z#RG38r&o ~ J6kİ`FpV?6_vO9nt1zQS0gȁ;Mݪ_ ,n3P3*7"%2O"+E?XP8QxE"hx_v/S)UЋuF/T?'JV&N1׮ɕᐓK`|Mo9C;+@%9zl邒r@2迦nˆk[ㄾxݫ&/ *}wLa}EsNMO4!|Rбb$޳hB%p!s*J0Fv'Bo5[gA>N1OdQ${c8%=w[U &a<%r/K*E^FS_Ͱ=E-L %@ a{]f1e铚7'3Cs wk3f`" DU6x7Sh{)NNvȡ*aV}NyBbPFYAp֭QR+<yY`+#y^6M=bX.\HʋkE#zpݦڀ$7K!a7d(xyT^F щ%QFQjI#Zn$*{`x9у@|o:\[uU^+y55mĴ>A݇΂ V%fSxW՞ >B W bMqMM O P,ߵb́H3t?W]HlS_)l7W!RT؂ ېd%/ڲto% "cu DUF8AI%{!7)W6S`O8>K@ |"KE7 u˃MlTtIOPtc\\IC&(ܦ- (RoԹ|L.ćO4PM+Ǹ҆nUcPn/~XWqM哝Ez+55LO8}w]CyVD<&(8Etyn;Wpv}JmꙴA: fo ظTPM kT.ݜ=@E[eߒ/6(8[X Ё\x}dbD0KwًRAr2Y#D^Q3A#Ⱥ žBT }6'¥8Mu&8,ԡvqPAνBg @룼W[s+ vN=XW?` ЗzaUxefe98MKYHW敓^!t= $ơgJVBXM!2aċQm?,t}I&qߕ1+Xxp<άHwUk|.aId؃T1+n4=R. j4m(`#i٥d+Z׼uv?YS6(tǪ+HH;5>os[ÃS4t8깋Gyc6}Gtgv d$]Sr C4J, f2W\èHط[Nik XW0s y QDrc̲m\׳5CҊ3Ig{px 6dyj?Vɋjfr*Cy (#RJ:u,1Rp(/2V%^_kYYrg.)I6)zcHS&E06TI4g6J% D#]a0;Pf#$a*O"oؐ*ip"=LPX<\P@!^\67%Q⇺ E1Ǣ8Dw]Cwqk3F=Cϒɠ8p$nG` !4 |UG 48ePB%oEM } 6+Ils:.9_|{A;.cjGra;$}ȢLĿQ.l:DqS*Y>tRX y*Q綿Ut͌Z\Q waTCpTͣla*)h/EN(H#hH1t/hTB^(% x7DeL" 8"MR oT`#O[4/v&}2;bԳ8Q0Z?ZoF kwS QDyJ jytPzhK7@0'N5*'̎&2ɴbt d C@f^lQ&eryvS bS [maDa/$`)S%֦#!ѴڞoQW㏱F[=g&&PhHtlp )Mf*΀&߫s7u5̻e6~́$|c?G>1=[Q+qG  pi+~oB$?Ssum;R ]yCU{عnK}pFRPZACi:& 6Ѯ!XjLDP1AœG}64u㹉'I}mxXPKZt\m­Isř?j ڳvʦBNܡ:W:1XyweS) ƢieJ&x\)\٪f6\Yie%D3F,9Oƥz=Wp_ AWX!T#˘2`8(֝C o=8_蔢J&VzyFqrƔO6s,'+%3M~%XA" Gh!*avh9#8`b/aP..L`XUaגqԚ0T,}V,[:D<Un\*6Tre>w̍La}]fbfw];KW Ev/M#|*{lA847 )sAJ9>s8u#{s)r]:9? M*>dՋǃHZiRi՗556/O*jiN2h/j?wÁ˨Aleзgոҁz&TA|+S\s]5$&yUݵI_vOI )蒣]ip<Ȱ8 B*9 $;3Z"I|rKIDQ³͔B7vPs d8Jysy `[%!jq_ !D Qd.Z) νnSzwoA1|lG.&A齜 KvH M[A}cAx n3|Ql4QH cxG! 8-2*$ESYݬ:X>Kx^RI[s$o#}4"s[ >;Aw.(J˽b*}>ݖßD>Ï iIQ|pe,]< ү <~F-ķh I06S}7gɒN)tΙx\xcҲ ,g&c9qPhJ'>M>jsguiP}B`RZkB3t8 Tś'EX4(L*Aj\&DxXQ9s2麬S&l:TʹT6I6~o:u9Ơ2]CrUgOyZz dthXWMD٧( |EU̇C5\^ mL8r?/~)wg:缢vۜFnz8c<, V kǛw>':c@(h# $X_tV"d\r^wUs^-s_Pme2DӜJ cf?*W1Ef:͛N cO$߷l#^Up8G %ܽٿS42% W^ɰ8#pdgoB'HޟQS{_di1ULB (q?/kᷭu.$Be 4 lf~W>Y:bj"7Q(SQyd6q[xώ32;". {f3.,\Ms;w|7ŷ?xZBvUw"ӑ#l( }Y %޾Q`X"vSh0/ϲ kbG<? R_LWBWԖr@ z^dJOLB#pu^ ;C(O/$ջ ߿s_5b f|!v ^XsƵO=>׭]ɕW:N#wZ'QIfayBV(6p}[ME;{PA@'7(4̃ - L` X%ƄJy;EMamzOԥRr;ǐ.1ITE&5Q0z\ -l^. Y o"J7Y.?39x5&I?lxF(ڈDvs)h]"Zص!TmS[):r5ՎWq8A!aMj֒dyo9~gzC>l *^k\ZyM1oNʩ%!+;_"+uXl<}qg͒F)d;?BywVL]%ͦ~Fc[@u܉]qUk=WCN`XMNM9l' ,N2/B}LF%%[v0SּACVrb$ 4ѽT{bNz8!ܔ"=n=C0f.3#׶5roM_I#!DkG9ôlOq H&'x"evjzmUrc'g~E_|SjM&/{-7idȏoK4LB0ҀjgTׇiG)\؈8edSbJ)RS{bt@I9=+!56D2jE=;JbR_ORؗ(hhou8yLk\@\AE!;턢(xdYk=v|nmn>PI "dm㖚>s2˂,]QBb)QR/@O}P` #úhL*DDgGP , ?Qpȳ Ϧ5==pyZ6.BEMfpr.<;?\RoP b @!ax PMUq0ɂsÛgXD.ـX_~]wR z;bnop ݮed\wM3˒܍9)4LG|״*֣FK3qE` ]k]j"~C4Iٯz<43AV7ZhXqa(aFTqYpoDP_ aӴ̻Nu| 6FRup3_/1p ;鐲O|1ܚU rxHaY|v1 ۤd]h|J9S0%7E&ǡQtIt٥cW*֒Vj&i$ 5`&.opJP?"33C \]Z)+VB̞݄= 7c c?*1!-t+*[R#T\$~QB碻ن1)X,ugT9$_ $92cK^_S0H1d>[&KH䟜}<BxTჰ[p:KXY@8k!>XR7$ 'Ѹ0&/xɣCyCsSɟq9LA@3 h 2uʙhiǩ7=w#26`f7hS00h:pyl06&)¾ jWSwJK 76[cH i>sOwoy+~g km.z6 E0ksia-yLdx#ThkݨG3ܔI(LxEA} S<ܖIJf $0Hu M29$>W^hFx01yG% P#J}d!!R*b)@aAFQp~mEl%JΘPG8#WJʄ_!iC&/o"QH6oWǖYuꖠ hd<@:z8NGI_l/ؑѲwX#7!5 L呙Z3"2iqQ^’W]-1 j53jZC }q1nn&!ޟj aåە>dr8 ޣs.umWA3Bp@iȱeD~n2FUiѶ*Zd2;Q_ 5%!nD˹ⴝm1 Y5U,eW{G LKB>fG>_/[;`L]pTr"eΉHn&JyBv_G𺺕lήA]T'Qu0r HDI'm{diW V\>@k*p\^&wW4&9htйX@*qStX"ݨo]Ƶ4aIN-]f}L95ܜSUw9DJ>FEƬi@J|  9yobiI8C>;S~j'(8Ǒ , 5W!1z>ͺҎ05FbuMAYU_7ϪN!oA2<%cUtX^"qJ )iP~Cl$1Yx`WUµ30؋ׄޱ6z?Nl"! ¦WwrU,IGzTF9Zㇱ9 ^KDWIMݝ lʌdb"mv|35NU?'"..jVBS5#dT'Q+Qm_suJo,s gl`^4r榛9ю0QҀ,@=u=--Yk.r<GJ8OW5Xl,s.pIBDŽ9N>B-wxwN3}M G+~ZQadS"R4}eMa@T>,&iHtS'F]TdۼpAmu[NYmz&c=3 6_~>i}68 {Kkpe냠ZÏ]w=L%gW94@SR.:Nn3Ji{/㗶2Q_'QLdrݦsrg=~NzsCfD R$`4Xض#}C=-uH kEPV6-s4_fb\/E}&o|ۼ00*XaE8Gl4A%[-f L0VDFTŸuHDv9 { (xB5fq)8'#澭83y鞄!G}w>ϙ^fK|}Y"d+XkZsN qOVRA3v<=w!SM(IAѕZm(-;݊O(x4Amz2 l:L\E߹}Qc<~GЀvш|# 'Ir6?BC 53q`Gk@+mQ JIL}ˌ> VS;\Rہ_ɽ4=rU=NnhW32\7ƙ+Q2ױspqaA<^yŖuq T /EwP#R]IZ\:flQ-ԶJ\` ]ڥ(ur.:G}^%x9ʒv&1>??RY n< t6!9 ZO*"FK-#[+'A`x0@UwUM^.v덇h|(w@MDy6=#El%iD oqQ`8]PdN[r\5t G,*7ҹ?GD`2-5P8&}3{M¤Wc@oTء9O=SBS*Ixي^|Ku4';#,)42ntѤCXsZiiw!2iXZcZڢ;'Qfc;zӥg|=7\yAcFcH aʜ>JzAjp,/+p9o#nnrܱ.P3UB߄n061LJ]sp08Op}>_k;)Pr~E2&Qg(Z7P5/1UƋl-Ld",J lSFy^FҀ{`Rz*P=.ż[`XT47G] L(np|W^B[ *KU$&N8٪aT%Vr^ƭƢ\Ua* ~^KY<.!e1'^-Y)a8%ݻdT#. yRuf>hOȁas;5p1p0u+u^A  A1ԓ$oQ=HSCYfxQۮ@10;~On t* Q4HGn c"E(R^z/Izv(ѫ,)|҃m^f=R6XF\. 77 <9AOP;8-Si2'iFl z`&@cnQ. (g Q+ og9Q9СxMc\QǢN^C"*{`sO2oΉZ\sm-td}gt*'ɱZﶂl)bUuW[@mwuo<-dUxBSwHr)5tm)^vJXo! ?IKWrj?)ۉr,[1db'te 5K\9\%q# v1[+ݼ~~&"u"R~ӷgC!P3ZPo_hlug)0!}&?6rEvO%=iXZ6ؒc>MrH9o,E2K\fic;WZ??m2MὧЋ!@[N*1dO=`IƠ ͭiSqVE*}S7 /G;_ƕn.Bm9@ p+$A]/m }~Կ^7 &#n7]Ռ%>pm獁,kLqd`+4F&ǽr?Ln1nf[tsRnT[b &ћe3:} 8{KeԒ%(.,N8-G8fOSʹd^L\fl/㛽bC}@`9vwlXVrGoGyb}?55vUtMh$+Ov7QYT)"F^nBߐwx36vՙ|b-^?{xo8A?S8L Z;,Ø3l`&yj JU೧KD'e}"M,wTBbt;B0RGrش;Bc(b|#<)J׶$81 dB*wkYXHsѤHd/Qd/.k+#]SWM*xVa{(j:}e̍O:g$ pcaT1&;VPOc8ChTaf!R3nP8,&"87~Sm{&~ lJo<+i9$W~}nQ4xiW_vϤ 8- nqK9 *. #*mԇcH'sJWҘRiU4PjIL*`u8d_-.?~[!TdM:CRi" f>p }tpSHG6))' h:E>3fT7urʓS蹶7a OGgtGGttDdg? mfuY/=4QMsp7dH\CCf0%yê11DdlĎU7>y:#% v^? 9ӹtx*^ rW[+p'ㅀȜlS A}_ $"ĥs+\Sƽ#X`+A:]a';ۭ62IJ0^;Q&͉X<߫El]PX; !UggI-ZYްC,qB yt /|wG]Qy:/ J0 =;tv6wsE 36dUHDQf%NGvRyqxQfc]rj6ɀ;8PWU2ܧz$46(#.Yu'xFf}v_l7 FGԑ=U)'r}÷| 唎siw ?-Tk>e-oa| ,p 쉛!(YYHs>_o Yf D񡚊&)45}WF[4>z0BiƘKSL@/7[#Hɸ%(*p]ihcd?qrBrMn8zcTb.i?{چN\5M^hv82 azLyorfmuzōD5Ϯ!ԏsZ7dC,p?hXk9yG_J `A4\7b(Z"lk!Ȼ(K UhKy<;tWn$ej3!'%.RoNoXoU۵+ˌD2jKd߂s>Z ;\-dN&7SW4mҀz;e CcB65V-yi[{Ǡ1X#)}vL^ ]VCkJ+T| z{vtִg˥ۤd+¯:+;K*pTUlcsip$%-5$ HXpi &C<{;Sod B:pRq\JZYfLw̨j`>Yz~Xop֡k:ҭ ID))^iU/ O@aJ~TMFW ` {"493DtfJ Z!bOWfyzuIG2Q$,I8LnnW-íķp1'c 4_+2xδ%,湐B Qbf6I L3,@/ kA `_Z36Fr:#e&O2R[K| )7 E۴!ߌzL`N]ksת5. 濫]^,L|=tOGX:D4&=;{]3 cn[i?mFn-R0T ƨ(e4@^ $4CcD0aᲯ|{}HUP5]OWX)SYY(U$:S/(C*WV)oZ*RPrFYU60'a 6ͱ0p?Hf~VSϭi`%~"m>NHBt?NF@ms^A]zѱ#PhI=dkOQ8w)@8꜈lǙ $.6){؟cgᰎTyG'S\Ko8z~lk,AVпbs(ϐ#y`_U˴s+(AAdĶ5͉"@G ,='vlVyȧoNa3,Tʐ/0nR/NA_zc4=z|@Y&0rI١Iu>nM1dMS(n2<;. Zo Gd !S"߮6WHpvWJܨk $PP)>Wb.Zq4 tNX|mqzh~G5v8ahf-Z'8_p}  MC G^(h*<"ݍN+"l7/ sjMZ0s$RpFsh.{ԟWЋwW0V;_ChCe6H:LS؉)0E7FO}/CJs>*?cRll_(<\&7[y̫Fs[qm)Z4#&XDm DbP*82# ;q*Jړس 5<00QdL>7 䱅žkƥR3J=9&:{X,ݪA($}"NO3f1/Jv_7?ȿrYadRU[_e-"m}­ XZ|mxF o6[O|]oFU΋NpuY~ k(`|p_y7jJ @嶸emʶ,^)ȦӜQE0c>T1d莁)?Wnoiteь\AAHDo3CZ}eGaXjR N[rc]q2f$xm̳ALEEog;"٠'& QX7cZҰ/\ݗ.aq^X@TXY90lI_ϰ a|&-#{p*/3eVJwJFSª|>8%iy6!r\0.1ߒJ~ouw=.{FAnSG#M%4UxX߆9=1=~\$Hegg{ zZ:Mb@K^5U _ dbWtoP"OnF/ X1L!0a!!'[@iy/m8N/I@RFt{r=ޞuxyf?MIAU|OpB %?d:7q۳c\b'&7 q9olR3бbz`9U.2" hx Os@Z%jgZb!33"$ D+Iy' vCO]{1y$&K9%][NfO[QgTWQyu[9/%8RK^fщ#qE-MwwΔV_7 w*0xoZB(<~HYd^-|T^jz9/qC{C ZK8;Ɗj7㌻IW,ʃv LNDM:#OE72G7; |}O9 M1p>UZ_@^(PΦA%Tl@+^KĠ8c0'GxaTU\AB(xTxdۆ![>ƦtG[4=w&Z곀Ao2AsgɒȟssSPm^.PΈҠFq` 3SFST]"J!sqRjɽ*/qi iž&%/Gm/ Kފ}1͘UnT:fiqCL9?'.(I3[FOww-4/#\bht2׭K R~4E2Q.;kcm `.?Lx2MϽbĝVm9%+!,uBsҹ["[,\` y6s wN?\d5!ieeOaך9_q2a;7 qĒFkoj&R1x@Ȑ@qVaj.f!(Mc*@tx{H>\iس#j#%IHt}P\yYB/OX%^. R@N|W 0zXCxIZi'^ li)bi>/)pOJ}my_|?`9/!SCai/&} >fu׏ r2:FsN GǩfZ ]p=o|fnEô (h7TЧI9gr3 G|_\Ƀ F嘡0G 5{OoE9¡T(PFn&L= Z,dynOVrjjL-rU4fO'e ZK.hkO^yW)PG{&XiU+;mPgnc9~ y9o(٧X/4a_{zN,H؆OIw AT‹`夯 DL5+fB6*_uxCOaf)urtX=M|-/!I诀?no5}9.1?zV-7[s9숝}u2ssϻ sSKܖ 7{̹t7<6\[ [j~C'%r*wD [;bYԔoCC*b17<د"Q, BD24/]1yat702ΚWftjcJf*N]p=St᝼,-a!9ȄKQȇMܙγؘis,? /1 T#ߤe1}AOX `K}rJX Mlq]+*'D_<&\[ Gfʋ2#P-. A ֿ~{KOmӨ`hZZcf]S`.-+sjLqɱkE`NAW pusz vf)VW=`^uVO*xI)ٗq Cz<0L[bY55?- :%=,(dwWBb>A0}4ˬ8BX{Z tXmmd`ox%&H?<1;Zp7 V_enʂ95`w)Jێ;k3'7w~pnÇlp×$/ |k:!RW[H)E%Մh"U(`{( unA6d|HQF44~ "#d[U嫦^0si*OScfz]xQrF-d%l,,|!HY2͉ۯQt 'X4Zw0Ha}x5}NQ0^>bN`.kKPA].lMߍmh塺,!ĩNNЎ#/:<} %;}pqeY啥{O)D47GK7e e*b$JG̪KjYCplE<mӟBOQGp ]eGt9r O8\mY+vI꿭6h u+]+Z򼉑G͟O_6rZ9\!:faҝrl7^BYI TeRu!$Ö5×yQLNMCV lⲶT#DX Zh`&ℹG\t7A#u{o4hnx˕V|:&Ny#ND7ɮv~%0+TvqblX)]9s-/ik_ZTK].䬫GihXcB ώh"bu#`nˆaћ S.iƖ+MTV/NV;&I_+_G=44o1yۊ57H!N2FǕekneH!>ܷNz5XCj5>  SsEB*{KQܵ(\NoPGl$hveMh#4CˊػFn*@Es$-S}J\~H.vgZ_I۟bc̾E9+gYGJM-h$]/-$Adq0'g169qQxFp-vj@uիJQϫ_Ne=ڜ|؃'4 gdg5 ׊B_;aAl~̖*D㞹 !8G/ȶs-=)^{N}&_}WM&ۚ Iq?0fdLҐlIOyuss ڹ2%QՀ+jPͳ>fz;UmqvjbXΫdyGCWIP4 >(?knVy_]'XK<mI_ fnPio x׺-6ؖǡz\aґljÿK[(?|$G;N&2N} 9nm X`kcT|Vٓ$|vNi,YѾrjjoU‚1[r_@K 5q3 cn>TtʐG5rEqyJٱy"K>(O"&,Gi C_hId+&[amEKcYӗjr:EV^ vŁo@N5;FO ^WYʪȩ'F\]~tbMpF %P izrc8S'/9GhA(zKSC:tDR>C*rG$QE,~C/h!n]^S#[ V E5ubg#8/YZ[]TY2O?|]vul[J*VOX,SV>rdIRlW`mrij$U95{* ȭXp[e?{W"42 ?2=OF10.MjH/0WTs3eCx-lR27 $_c^]=ZAj5r |}vՐf^$JQ*+Pcח&PWpx2t]z룺:]vkOjOL@Snv2X@ضFV<9k* (ӷ y9:4^ZhcsHYldyҀ{)k)nmDZm}0(5^0Ocb˂pɸ8tnbm\Q [%PxWM醨^9cѥiP n+'7\xfjvL1vdDw}[[0|64_S6Iں%:.ψ6b #SJ7!Cu^3n]:ː͋Ayk : VȬkٳ.4I{m`uR)U),o*Yj) T3UZWީ'gQ{f]NdH^y"k.$"䛯QgȚ}XAaը*+RA, d::3)7 H$2liM xMhsp7UOek ,uEK=uKy)o.4};(`prA_2™s~f=ܳѽ?GmC#)q}MCVH1_, [5D0"=[F 0W%#07{?Oil9Sxg5B,j`ft=њ4񗏲֚[!=hz""@xgU9{_/ʙn-)qt"SI 8C! {k;"؄fz0BUo`G('BTV㲚lໜhw^S95妮a 0W::Ҷ9re' ;P@_cӎ6nw2`:ڬ- 8Ftti3FdOj~xQDž|I\ȞD,P 2c({'NiVi>;u[|85S]/>Nu6Ƌ\B`up/ 3ي֙K5)= 5z8qAZ#&{ſG6EYHsyC`^he(^b c-}qwvI6,)U-SToh#^'VOT 'c"c/3bpkWrB(ԳEpMSCi5lO2I-n9jQɏP@o4FYAHoy+lĈaaBZ!R&btN[PzA;8ıX/i'qOʷ0$;ߧzoPl#jQ#7E orLJh.:dC:#3nzꈡ-ߵq= g 4㌫V.^RU_ 3;R@Y/VgvfPJ qJ tv?x;`ZkOg3/3eqw8/eF']}s/BZثR䌖xFh}5G4Hf*G!-O/ mgO"Jvj%G/g[=H@;]"ݕ5 !<4FB^/USL& UɠQbƲu[zuV֗m0GC/)DҼݱmZswP-ܥmc&hH~x"lOzB*rV<xRߢBX%ZI$8MW{hG0cR:>kƠTn\`y uG\>ANŞJIzj,*$-<'Ej&¡vI%-Q5%\S1FUqTůaSU/Ѷ,kb_iQqɜ#`8;T 7 :C ‚k93gWPY4 ?ʜXovh:;ƓDADD)Nc-Y3̏6pm[ũɞhnFYs8V:R{ Tew_>';lJӢkL_A|GBf-W*>yl&OQ 2)p4ҩ9fSԆͬk /L(O65e@] XsԹBvb2#,q{³3 L`sFFX 5R!.;]v{BQ&R&6fi#a;u6 w^yj(Op0.b;J~TL28w1E˸"=$\]׀VS$1zi˚+RMF-Fγ6(8(5ĕB 0O2;?y<)iX!tNvu:ygO:]g''˷YC c'dΛ32R(ڴ>^*e#Fx_=HLp%&;tA5#+FW*9{O3ۭRIߐŬ {Nzu)XaC_N"'Ι*V'_<=w+On(<$z(ZNU4@8ٽա,5r Mr@S])Ya .q*K-EQfhNA]8,$X2Ÿd"xIr>g<^ИD_hC 3{;ƳEIz>)jS(RԬq7[C4ۯ)%r ʺL\Feu!IT~0^ tf:G[;$-: iI,ȁt+q:n Zgl4Z$8Qdw0_u1wG&ӧ_8&D ޡ"I$(M !3/%M;8CٟҒHΙfΪ& f+@ WbW |0HR۳\bN ?_nz"8M"]靪޽L٩hOG4 wVgZ y\ `9ۙ xoǘG<5`$F1Z\?:6!4h:oyIf<~(TO_|1h ̶? S^SG'.~dkW6$ap#) xMpˑ9ln '[1FY>M+qxcd0 {ߎ[閅w|L2$E>6J,M@u+0u­1'ٷ_ŨEx!Z1-O[2LU jw; }mB=yU|?B)A m:fMMcE00-xBp$bE(r 㼔*0NX,=Mx>  Ƕq^=Ub`k1bw;^;}&"Z_B|'i+FL@K'E w<5 !Ŧ~VZ9 7[gŗN74ns _p ks рzEGقHKrRl2j0hd ha<{~5UK:9Ks ]i'7*b&}qrWe ސ\B}{^%gH'`+G$4n:L4w :sxP OluH XUx9Fr(-$yErKRkF马Xοkܚ!9AWى=N2MkGH"HLyF Br{@0>' WѬ|(Xd%1?npo1GTJJPyiǚ<3sfa1KBܑ݁ ?wX5,.^W8eӣO)(FR vA)"L*V.eA񸧕l+όY7bM_-xwиJAwVڻM_Qct%Ŋ2y@wn ȵ]jWUr!(#~B%Bf>9>A=bՋq7<˵6lTWnk3 Q?4aK(@a0A1"ԄM\@;ߦ-pR=_1NĎ>^`{5^2Eoi]T曉;Ptkc᜜ub?5U nG+G"ԶcHrD.+[ҋ ֶzi&브e)nַOw(|.eepR<2 (8.o:ߡX7й $ n7LFޒb18*slU(-p}bIX 2CB<EF[SGy x Nh_H]]P؞Kr4 uTUWrfV%5I>Vڝ!Qީⅰ1uqvK譸|o;YIpx(F/_R1%B[jK]%AH%we,g |+ >""QݡX(L=Ўx6#]U\˰h=#RbB\D)Ϥʓ7=w;3uMP lh.(iӇ>`l{zze͌V*btKpe 'mķ8ЙZ]g CNQJ9wplY9oKN*\U2 71 ;Dr58mݴ/BfZ뤻ZP:䣑a:YizE mWlvNL2ؾprQ;[籌:ЌH3R 1TOCXnܰCQםك%jzsM5R4@BH*t|@}W0d=i` zG NG"㚔$p.] '&A}oʵOլ<0}Ņ5nF0G`ʥtw B\'c`7:Nk|A_"9;ܱ>Ys_mJjSn/S7lK%Yvr>pmWœpU sjvѦ\`u }]p < Ex "& "iMjcʻ*5^ײ7Dd %uD# bO2Ūd?r [3{{v;<\>rs9TF,n&Qpo4jA5Eߍ,z>8[ }3->*6H_~#w}StٙɛR,ńp:C6Sw2~1T: rh`I4ϟ-\)Ж'?[&pDXWCe2ڈIHBtk^t.S_# ,LJ+j*1x3Ъ0TQ3Og@> n闦L4+<"v)Oap~l~]Drvf|ՊM{hȐ@}f^M(ސxm1[nU)O%%kfe `$grO+[ؖ2Seڣj]4ԓcFSOk:2yb[U4p ˤ[]R+\X.R*O mLf,X6󎫱L,!vasV XD>bFX#?iÑEx7PZ\`S6lz@:s 2A$u3관"*ԉ)+K#`Zs m12 Watd5uPFJW*>Gw]ۻe\Xa-!q7 d-&qOf(w~߅AU6^knXb+-Ef{ִdP|%B.Q^q^4]LcKC$_M0VP]kv0ЋS< m&{mf=uDJD' *EnK|VTNJ9|R1DUWǣh**gA5eY?@^h{P.̊bȲC@i fQ.(GKJt|m\Oq*oK aHtl)@:-ދ =t0XZi Ȗ5tt _xT4kd3UbiTXV |9?X7bBwH΄.  ;Kt <=>AnCA]XQ.8ɵ:6l/ K ae6nѦ`&' 3[k7y& cse6`N :e]dr>}YWU+k!;}`eQ<+Ӵ&R#UsT60aȝӀƥ<y) k.0&~߈C2g:D$2ȎFW塿WeFtX)%Lk |*![̠k!mk5p`MH)duZ_E&Ɖ$zx< K3̴ܻt/ЏHHY@7JN0elx\ ,Qa\gu)ڍi/\cg%n}1Ds7Twڒ 4 rq׽.%Ր Tc[ j d-ykAa5V{eAト-+L)KvJ 9xMH&MpJ47EwTK#h T|I%x"$PGҊp ,F"My-++>|dC'+A7 g6XW&A$7ex4(&BDVOorگr( 9)WAl<ÞX Y=N`hx˸1>ws|J M#30I2.H;L `cP|eX&c.Rh(;=eLJpF+UER>yd"q$zjv1mC_:$N,J@#MՔgBus@(8]#ւ6TR1=ۙ Oh0ظ7cAG1BI?ᖏa"}U#ML&(AF)78XǞ._+v#ޜh8'k쀀4uAy \qt}J#JoxCz1IbqC韗en 1I~kA̐pqYm?ϯs G΅+9N1 !6ˆFHOL5Qe^,78d)3HJΔȻ}A<؍1"s.'ȲX%3GhQEnFo* !q";2FUQ&*iwj*NAu/NͰ7Mka:uB'B_i~6fJ\i쾌Aa]>)*2=жh,[c|p%KWА7=0]C48sOڜ^:[YfcY߉jٓDvU/o]ayoaՋ*7Mà*|iioV:[r{{0[ Jp@~\ҫeU1/-8<]AGt"N\ED?khUW܋tfN{޷i{jK?2ȹݼ- ngMLo*#afuu'T_?of}Op-L]׬eX^ ʎ&^!A^Mq#{n'<U# ty/#eekuxYu"֮u;DA-VrqP^,f mCǗ+hgKK:i>/yJ`CxT)40֪P&i_WgYBNLLRsr:fTa8Yqa0:[c}?D+?%L#7l,[_r9R-=bvoP\RkJH~;m:8< ` 17*(ICe攟4:NO~ްw&Cv4}*u`Xo|ҫqLu5vj( 35DpZ߷nźYܿ_e⣜\h,fXqփ63FÛw ·-6N< r Z.)4X]dwߒ_NC"14"l197hPu+;H ev-keҀU)71ewF DQ+G zZ.]q@-9eukPٰ "x}k<]F)yOGCxS9׏ȌJ3g/.RPJw~I#-Km՛X]$њolу?9ɨߟX9qB:l)?|@4V66lj7T7ߴ AM]Wi>dHvKujfnz~tbfoSxA{;~2ȱհT㢮š#H?+Ip}XWlmJ;0[i!LcJ5(^`8q}~EĊG^w0kOBDº0'*cE04R/Q C*$i1i)?ՍM> ќ~(W+IR8u,?C4))ýcfs(=AH9A+ڧ6yhޱX"}P ~#4f,b8,_u9M-} =\7o+}W4U.N@פ z~+(lK~>uƠEx 8o}_/b`;_3x]|k|EMٕ^ICmF=OF83.ZRCM..UkU6ӍQyK [Hz,1бب4+H]`3z0 G1O`y,r]ш8}$rwbuyh7plESSHes?:ȰLu/gHɨ(jYg[*x3<J+#{NV\0lMSв`.51_x;׈MȚ.pƂytE@GG =nCf O^)gP7G4TAźN6@4XN[%KCì+_jh-6FC)^(XT |gն3G#XM(`X)ujWM(yّ^n#P<JTЭPn8\IzWR>]{-g)s`X0UiQ]% HMAղ Txkq2!a\GyҳSƩ  :ez彷uaeT~ v R*xon̽(z `~`_.fgAH*OgU6.\ʮh՛տ$&IL5J(C60 P]' H3?*PbFR7lٟqNRd8= ^:\e/\zYNB.]t82g\k05Ķ^܆Ѣ?6qQdo8&Toh=\@b{n5Z&_冻&8޸jT&usu>n p1 |=D}@pCR!R0WrsVh"M*K?;8'3IrD\3~Vx[#j6oC(H]Q69͞y E{//vJj\8)3%ZMwM+5|VlY6$e]+WNU"\IT^яa3Vk N @V) 䌮қ[M4t fzvM64ᑬzxz'3Bvjt1R>mJVۑBLУ$E« R4u%* 9j[!@5*՟냜y0{nv%Aa,yi)Z&S!KԑmiD?ΧXI6P1 x: !Z,i_( "?SvA7*O^~_bsχ obxsOY?)^@a0l*F`QXuNv,;=[8#П0_M(+"$u;%(ȵHe$qLm:kOݛ-X_PBdlXڀ :0C&ЏnZ$-)os8ڂt>nc/aXyٖVZ] _΀_bYJqdr;9>n爅,Aűx"w2w뎸Kɞ~LO'nb*nTB2`6 yn:pGkè%W `C #$&I2zsZE@/OQ W h\[7GHxy:ߌq/MՃ:KY Xp\şjZeBtS rӤdld8G–ٙנ<,?|1E<#H6W[WJiVKSޏi IW,B`M"om.З1f`"w9z?ٟ\n"G$s#^3^=%$ՀN YɦXR>w||7sqxONO>j,لiXx #ue{. ]ni6W}7}Y$.y? hOu 3ڐW6^,7w&s`{y鱶o7 uCRh泼LOdA!oDt` V}Mr3XtTٺY H3(6ǂĘFV2zE:Gs/JHIrP5཮Û 0`EãoFGj`9~YPE jJ/r sßZg" )d5TQ21Y 冝<sҨ8īZ 6^`=º8 p-ʄ, _~S^J7h@oHFn9e&H~D@CbrE:"V+Z8w_m^OwIGE?Gcv$G4†SWw}sLWl{Gv5@dP1R P8o$X_&L\sP&tixMG{bjF:)9gQYCHD}T-Zh-ظ&5¨̗+q:D<R` R@wVt7BS1n07.xǛ1 uuI,D]ų W.MVȩG+xoxdMw~J J9/.fғYW+tDuMɫqO1|p;$M8j]"R* \UzR*cՉ7eaLa"BrSH)%Vm} hJЬNM JFgk<ƥ =%/MŘ|Sz=)7# qcgd~5lѾzܝ/]=<0~bV_Aרϙڨ\BU!kbw?c?Hm_q!hǶF_ ӕF"ہܻ’VZ Y#lkhBð߇"GeqnEW ,VԆ%Fи 3vnbî?~ŐO }']Q]esNC\" ԛ|LRs=xP,~nMۯKqZ~&u:U{ůd?FEOAW at :%zJbׯ4ϸf1RvFitx?b cCd%⚹B ҲO2XYA R? 1;dheXC9:~mACN %*8YK/<'Nft61VU'\҄sax_7JSLr߭5ο@5SBZE{QDdI|d}ZAo;[0da|-M?\R5'0jc!IZ5=mt8Z0& vu~]e {Wh,t)Bhz'I>&&r̡RX L]U%BjԐj?JrNlP;SK0i qx5 e rv >q :=b]J$s7x6c׌ qPs mQoJpo?+u2ai#hd?5VH4S+IwGZ?VD{UT]Z1ILzâK)aUڐ­@aR 2zJ>^:8+FlQs1 +yW1>rnx0#|N?H֭iYJ}:̪"e9'0J -@Sޣq[U{@Fofs $/Kw@6\8R=>XOQ]/tJq |Czb@Z0A?3#}%y['aT$^t+87k =no;:g+]nWX\9}DK SlQh؍us3?">f[[((ȹˀnO`ZMecqx_6=QU'c5d+17'3(B}|UwF"wQ a/QM8-u%p8LUH;Ux0` 3'ĿPgٚ^ gK|_e'JQsJ)]&0cc )  Sڜ$8k(_Xi JF<܂k'OkQ%2*`3cD?nNy8ox݋ (AxƗ7_ 1u`@^)gV\ tF." ZI'{ BX;-uգZUsOH &45tvş;LNJo`{U ljc],jw(=ҔqsxQ:)^Kzy^y֫@Zd7̔`*"=u ۩XmEEЪ8'T683::y: j4#lp%k*s*@_7TNizM(pތgv%ߢg!uцs*W:6|?[n2~ :_WA xPzFŋ6CpۙsrNIYBi_x XgOM+ֱX3۞;xOڙ}]/0&]_{)wuG`h'u(81}*,}mH8KܚX/h A. +8ԛb1eжkiMa&{,*J*/oPN@¤d)M㒆eA=; U֓xG h&Qeh&#-9*,k| 2ik/CIR4lG i ֗aImDv yGX[c9+5 PmnhH(.?4YSaU {7TM)TQ$R{UH UΨkmF{@wA~3J'AAf(рmc gmoEu!ùwݰGV%hJ^q}f쉋b-L*sTCcaA.+irPY5;1: 0k'~<c*-"}QL|1o?/|BlRm ;*SMM.4#YCD"}i58(LG>+Ŏ.VX0H1>SۇFr|iΓ=u2*o^yuřfb| Ѷ‘xԏ~.)NF[Qcyiew0l/ ' `eD',;1C %rp*qJ+;/g7D хBAD2v۹"^@$l4Uv"I.Xsjzx_a2`W?E) u܆HW'M|PbH33!?70*nMW/tP0?mw,Y0bq(`3_VDH,AX_=~z31,FV_)>Tئ &蠄Hh$''fo@)MLeöb{L;KGwRΜ2]Z (ƽ b@(QBƏm.RYBF;MquQ!7ݣj~-ӾXab\KGZuC9b eEriҙ3L%e>j"w GXWj2_/sCv(zUbI hn0 Nn&4mLWp'_ZxWhzj%h]S vf] ͏i%Wƹ啙MӝajyL8362<513r=! 3Pme>ϩ@ilF'7fgJwcq<~\ ~;]Jnp0ON@l+=֎R]ˁ/ iw4%gL;ڏʅe2Gf@nW1WV$ ; tR=D;1U"6 #-&<61)` o=et}ehXd)7dbsgy5麾f 'FWd.yXد%$$aduYHcQ߱*vd} 4/K*1hYôq#(b@sxˠz&6nxRQ|H Qɖ`/I 9g\0j88[A)C&2UVayp<%/,RP~i|PPd~ g:JĆyox@qMp#&[ga2XFY#%'wVvM%[D<d/x !OOBmkf0/l%̠#-UE}g{$[R D K V$b64Nse#/GDG|'J[1ăU NW4h6J9<L z{`.X'$#&e!ʚkHP2ȵ*E W徒Ep.wO1ԉ8#}[rY{񯬼=&'s2zvXggqVcHR2(jg]mhW@иhwM Óde>{zn!9Lp-xlNynoťB@E)dLYb>'*ƆXp3 ,^SXuGA<Uȶ}y]wqDE+I@b1crQdlpER O!8gm=-{&}b Hh^.f愠LZ%X7݈?꿻$(%z;>m_6.v[1z@i}jӠ"#0LA=|/}^iP27RSbDÒf \11ºUe D:!7~J<7<WN"C ubǼY7ml*C4 3nwֆ6ggAEJ&' DZkܛwOBٱDlg;%MFX'NJ#B]-N-PDIz?ep`wcu%JU$]8Yf ?._s6J{V_pȬp\l̽.n5uӯs3F$-6 :5ֲRcz j%a[a׆w5S1x윐]τL>+2m|HV RvRT0E$v~Z')3>@V_/ȓxI2 gn Jn9 -\~^X[ÍAd]Z^Hw8o6߁eH/@xJ@kG<.=C~Y 6|yv3%3H[Ot/UPP5G$C5mSbww?0ʃu)*;`x܀s;j!ah\BhG7WEbJh|=ɑ"|µpmm5I%Z.AO!/_m~5XX{/azM^P^DA_&y 9CR䢹$p/R(xo_<&F kWF{κNoytgLI:GOEqXi`UƄj>+8s\ ;5%Je?T3K,_+M֩ijB+,1\%W(FOxeäAXq۴S6 ˰3~H^̩ak<ƍgX@MgV|YML/^G>b*&lZɉ@ GN(ZqgƮLP2@׾] w˺]U l`9w"H3R#AU!gy-jD~ ~E㩀(G`Q\"= j-C#|]4|-fn{oa!(:}dCΌ>N_n?MHg5YIf ?gWAm3Cũ)cϕD OO$ߝٱZ#ѸTj똀cˆP+.27'ӭ6`пr%zaGNd͊+Iu^uZoBMl9ZyFf)0!"ȁ $*A?2K- s=K%nKϜ g hj(3 g2E=≙ aˢT}pLJIx Ϥr>ߧ{a24.'H~IWЎ R(ZĹnepR Hϧ(cEk,A~ V^uќ=-tʅEV83i߄;PDrp}zVD?JMϾ9osJGݭNє>ڮD=6] bX\D=\xN蘏(ulyttON.3J )Jo6*$X#mg:ہ[8\mh;&;zJn6<1=.O.| $,[eKͣ^i 8 hG߄@po'k)VgNN: Yj0@lj,]=O TZo7  ھ'g?+D F^y'`R v[og,l)gl;zO0~NY}l;F 'VRI+Lj'c$N良5{W"7#6T>9V6$߼=HevCQՕAv7Aw;*4z rHGnC C[b )ԩ!%nK M[XLtD 0SO1Xyl'Q $YżA'y ϐ'J dǺo@%hM'T|1q5Ws$ ;Bc3؏GՈX6? Ϲ*m%KŎ^S͕Jm՗mϢp_$~0'ZXuS]%\³GN sq_N$UD1~noQjҹ*cހҍ"8;+[h/،Fv sŌ[Q"D$ZYwk|gBf?N=O5q_2{ɤTMѽSe%cK|(ZY`uǽ]|fL⒙!RWnvnlFYS7MX*$bӶhBR:zⓆX lW][{;s>&wrY5g_ fdG+ D@Mv^ⰝGt'H"S 2 -Fz_&|[g=,IŒA]ӧwǑKYn$w"xTu;VƢFO#b+Nc 1Ʀ<94w7:,CZQcQ4#VWHYncO* 6F6a 3X^Vjv%X7X=Cc zJKo`l, vbC\[jD*;AksG= Z.u93q:~Fտ9*^R}\g} nqJ Q)E. ۛO=^4텾V厄?bӊ!T~n@'F 3I NXUXh1`+# `h<3BaO9t5vJG# Bo<:KX\N3(a(,هjI~>jniNv2FdYNL>,ƀQֹ:5F.k X>:gJq&oм i$z#0ȋƵch\1#s\w4V0'*SZ! 0BHĥx а~1#I ( 6`#`QB)-#6q^/ٖp{FMCip$Z58 ,aVƢe5IrhszkԤLA6rw,* Bt靧ᆥo0M(9Ȓ+̑I*>q CjOp %"cc3G2S0Io;UR7A 5T`bcXTy5ج_Ͳrtrส(c{+nkntJt>,1jG6xޘ=nboϩс<>d?/%1R2OK$|Ԇt,mg^q4B +7@V}3i'`TC/3P1!?aM932zg+¦qfNfFKn1ݥˠK;f$q8cU"/Ly`)`Uɮ~Yx77)hXIQyrB 3%u;" _cE=OI1F!܁)ن]xCʹ7!(UF7})jc}t_hmsx %z0W]'[wMf,!-)QYN'NUQ) Uy }Z-WI]dF^65Eș(w[L0Rڀ%8} V)0)ρč(=X57moNc:2\*ac':N+I̮%S(D%`Ѧ]Q)!ə B5)-rw: `#k$$Y3؊6c7}P_fR&5Bi mQG V2KngϮjY}R/kvQ293y]`ڈ֓P[|tcB%1D_kȰ E=x9r\yw1K[Qrg2N#D$<{/ք1p6`R^a7noPt%S4ϺpvuUBéS=xMy +2'~Ҥӵ4PO쏆A7R\[{oy;3l5%ZV(>Mkzh;`283rbQgx@oD}`*TzɿKrfT9%' N+10MȽv#FcA|P\lvNK6W BUFap (~,6fMF20'"$v14ʫy'kI h GR ,mduS?wZ@P6qQqBJp+}sR!<p*Q  .ƛR%,BNg4@`~z@tRI>L]ElU4Af4i"?:Iwdx$GE/[]8(jyKy/@To݇.fAuEU0tQ*TLflGWX2Cn|=5`f,䊩p''hmw` c 2֤rleӉ nf E(!+n|mE]GǼsW4Ft]O[wl"{G{eB|WI(ՑkU;Ii5 ;՜!,wEC sm(D@! [t+y{o13hCiXۏdOBޞ%mQϷqvbHcY}Hv;%i]$_=uE*k ]?.i}zm|SG۷uO8SnaI 1 n<%%Dy*4 Rm*|gj>$Zt!u~\|\zU ri!$(*[ T:|HcE-Cr Qd UWH>>wׇ 15yPb.V䨖Tۧ֒wܟij/̷=tSϙo&萱Τ n\0Z1kg#2n<>~(;dpuvu22HY%9jťH47b^Vp]ۃ2?'< Pt-dA&XʼD>k5;Ȇ~d+#$3p\_-Qqq酴>P>ү`)B,E!5I!=A"6om=Y3zᵰBS%&xHȥ w?`vKy*TNd|6Ph6+4O{Uژ)^b w+w:`\ze#)A 0AXxʬ*Xmq^pb{=ll\J *ib'᳞k}URܖ!UTj%jnC!7z|>[W[5c x? Mb\jz&ٵj@X0=r`g$f)b!|` :epGI+m9L!]>{ N-=:EvY'HrʇrB}kV&Cx)W?}tEmixhaox©q痠wm&{.sg^ir={?di=,>~so+P31X>*CwԨ|&6-בFЏݫ ] ]JمMr=MBxfqVgVJab}^CΤt-f%!^O^;RC4焊ܜ&zwsD2Nx hB 8 6vPD$9_OCRV'"DzHxPq`pX7iҋKh29& ͓/,V;G"(7D kmAUƼ\pl.ru䨡؞R"J*z P\EkN4s/|0~^1%2F@Mh W%@y1:fK=Cf~+k~^,eOpjIpMAeCHp_!=`>g@M-?U) qxƁp$폍boo4ͯB/䊛v}Xԩ-w %V`>|(߶'if%oݽH'5"d#,tPJ$K`-cm2aȬo1B֔;a,OH ˇL.9{+&όVF+A"C\?K'2IEe=uZ׏]3 &KX90*,s/ΒΖ`[3ؓ_A5n =N+ l2[MhJG9H Ol'#nw2T4mDugsQ3R! Pl)٤|Z2~7\s+r.@j-ٳ΁R4Ƒ9pV׾ASf9`KfLa$~8r@#{nSvq 4eu k+aeu90U3n#/~r5wn`gHlN}@kt#tz"Q>pTƁ$|˻pmgb< lQGXWd'hVKV(kSFvS"([4~Pln7 !*TJ "tJֈҗD.!Y8b΋̨HdI~oF3j$(\V LBjGij_)ƌL@eMzv}^/ۘmFPmx㖓x1s;S8axga8s;&_labyzA5, Ԕ1 sGApȇ7XÞDflÉڎ-n[/j?K2}~(V/1#{i+1mHzdRUc_cSŤ8b;wHI= N28Ml9"mI gaB5YSp-=?im:p31xZWpM'q &l>˛*\@%/Qz\IQ/ڪ*h0r"hp=B,6){߾=JfIW9+JS,dMXU;eӜɰcy xϿISn(W+t4G1[sȮڍ =4K ca=#߁lŭѓi"hyFy/%,|%3ȵj0*Zi+䎣|ըÏ?rz =]e#vUrʀjSg_?h6XƨM20KGwm_4Q dqYrUphwMMAi!E}I݁=^ᨀm!bnsCwTi|_>P?~[@\b)tt Չ*W`$I}O0gޖ>\Lh櫇ԃlrMIغ7~ېO4 ¯TLFZ9Չu&Z "MO6/bTO^#:7Ø.IL;?֬D t)~RtDs|ނ˽vsYcޫ``6Aݍ&$L ch7D4@kj9!<yTc p[!+m}+h`h T!QˍMHBRZPPIf1%|ፄ;.PaO}-kMXpWCfUnn`<'{®LZm^|sME.*~b]w;LDίVsQCġthO!iUN76erCrXIT'"|X|wK IjCSlAWIe蹩jVCt!X$ī)q!r=\p<r3Sa./ k"B |['GNΑ]'.62(1#{+#lzY(H:<*b# >M-hN N9Y)xkxAcjl{&>_'NO"@L}0 i=HB-G: hU3jՋD_W5PD$uÙtN <1*wȔAE!q(8&Kx6Mc&>b3\7EzyR\~њFԻgXu!-ͯef/^0E7eIWC49e@暯$~]qeK7 I/б˲eߦ.H",H"ͯuި ޾xA.޻wI] I)qwV̗Ib?8B/8Ȱyp\@EZ-<”ˡ8UNG. [om"4-O2N[x8Tyf9ӹ4,zjfTXUr1 B;PV_n+KG3!24V(${>VG$°z"=T`X duC=ۜK]ӑySbolB8)}@N4]gf]M-ŐR0hbAwX_G;LT}o<|XE[-,jJV𺦑}0YJIN\2y/J3Zԭ:ʓ6JCDy m<}i@i<XmCʥn ”@?W"@knm]Xf5]%Zǚ@ 1oot+Bhϒ*$}hc`>M뀦 = &|4V^u! }߉`p&-*+w0/=?9uYIºM-RS:h}_/V=wD O5wį]9l8UN @tPT-kAIwvz Aji)i~vOh%{jTn-X^?~1lmwNPjDt.l*%)GeFzX=4ˡfhCU#W۩H[?(ё+@T:Ou@eϽ sV'VWY?0fO"OH'|]PYhخY\6sN{T>@k: t$!WDX>WՊL neۚnÒ4I3_TY1ֱHO$(OSd$:\} =ݚo8?Ē8/ȽshR#Pb"X9SDm 3b|N_:gP4̫1n4`[:w=DԪ[m9B2̓NTUqO"}4L?̰_l9# #foSXȲR'HMK"֜ƬQf&!dS5mivlZ??^X,&b~lY-0q,pptP!Anw|`4<2~T}{z(04mCOPZ.&*Zˏ%^^H̖P bfM$,UyzoΣqx /AnE6J.W;]^rq\r%`a|t^l.DfijNpƑkuL]bnNIK2sҘ%iIEJ9{QMM?ƔJ1-%q s5.Š"yVQJ7遵p|A 4%nU֓3nPVd2@!sHQ+^*$Vz 5#FHn}J_}fq6zߝQ/?' P^Z>ՓhL\yKaw7X8'+ي.,KaH'IhSS&M8DJ/Tý0Ĭö? evFTEͪp`hb lpiE<Ƣ=9&!BxKh'W83 9Mi±*%F$#\[io_[ M=G.BUTQRT dE':y2LXnϯuҼZO[ֱiZVYɵ\@7I.8 ۣX!#BF}Q}0..m^wsaq}1ޓ~i8U | iZxocJ|*B3dB ʓ44%mYr n})43S:qE'&~ ~ T4! +-mޒPpaviy#c4/=B&>hr%_So>up?2w7vr:'񓮒?ЃRF}j^tp2(޿rNӳ*> -jb)[ l] MO1^& z8(U9 Be%+=^xet=L2 z1|=k_oJ+Ď?0_;ELfmbs #<; i5f]s.=:K<~u:5*9/B\FW]Bnt*QiZz;Mm,^@ot[c;ïe+D;k2*O.ΩLrAYqImBۥea~LQb3h5pNT7jzq\ 08c(t H w;Dikn!Π#=v ?_P\ $)UJtY,(P&l,e4Q`~P2}oyH1Ijh/GLoѤ7=,z~aYoN|[ٗ7^Ê4~)Z0Bog3ۙsB:PY;`q)QJW|_*'4O0;yWrB__:i̳܊\+.e0Xc_OjۻtS$]""{a&vd,.8 d3'Э(ICuey24 塍 C' 1ֿIOޘ:ߍz^'FOirG܊;x!F9 O8WL-Q{ 9kqrXNc8X= oy& @cGu ͵9,*AOr^uo 4ގAv]I]\38po&=xB7 ɋcA nZLr(7I[Eߕ sL1tfN'bPнKm"s3; /;. p0(Kǹj4{Yw%*+ ){@)hL\MkqpFJ 1 @A2Ji 28{@~Ҙ[5Fb/v!+mJ!xr춴o(B~3W#r=Xސh1U#-Yݕz 1#:$}iơ&HHD 6M1ԞS+0] 3[;B[H {abHfP|D%At7w$ TMGsȀD-xiX\#1"7:nIan5X풿5*Z.fNR ܌C>v7^jt3qS!:dAEE~*Ҥ=zhE%^9H=+Id" ;D1gT?ʠ-BPi!;IjA9AsDzS|qkQ%x"'S`+W:4]WJ9/! wh9Miă'I`&*" SkA^<(Xj(a\JnՁ3^Ew-M6ʭTP P+c6"ެa}JI?Sw軵&fa1Y<-kw Xq LY)ך˝H\S3/>Jdػāߧ(nɾB,:]ztEWl;cz 3&9ip!̕8bA \ 'Ƃblvy{_Frt "w#vԞa|vw@Eȅںt0B;L[v_djg=WX "f;эωUw뒈dѺs ɧljb7_`# AEv+B W0q\oB׵pᗞ\eâ6,aLF01jfh=/NQlv\N[U *z&KE);5}ՠgL] ުw1CUô$Fޯn$.}d0AeĻE_$@l.PUN7~)":+K|\3z:Е KC4xLJ QoԉOG+T3P$Ɂ1z;FC6/U~ZÒ.sއB$SX7';kP{~/)RmJr aNmu='>S{BB2bU+3`ȶ6|C75a>fsiC>\q>U9x`TZwwDEMcm*ؖkl@G~~4/Q}KE&H#Uhc%NMqz?8VFP+<7^3O1;A!:横[d>!\V]uc)}O Vŷ:W8of U>Ӂd]L<vNX!Gy']DIXݳUb;my9cc#ŗ03E饽3 "1 tiKdDa He%MD&xjњ8^YIԖ2d@YͼO\hJa"jr GICKS)MSvpfX3!֏D1rb~q7hȻ7$LCco+C3<~$.`5kN567O4F>Sv\݀7PC;q`&tt8~,+Nu7.RZ:+Y$5wbכR)']$Ho2=ݑGB'}^G,+Uô5ZQ*9x?&QrJF 6[hoW8|WH3&5uXt=zQ V OjRa8C`@kQ{%SChލQSvpB HO@+7te橒?ګ>tVOԤPuo HM2U /T=厅a9ϘLnFTKd5adrܴe Įr'k|2k"lj>KA#ڸhas ?"f z`MPۏO#57cK0GC ) ]\bfЊLrlz0F|(OUwA_l.v%\St(R4H3ursp+hg0n`R㩛rWQ)?AcY@_ ]/TxQGmw6ŤRuN飆*cg<,UP-6Ϣ𰔈YJTΒ"V)x=t3>pY V ]T^?Lo5' 9t>^K;34ZnPgnz>*qs[ _Z{R;څU b8a+]yB|38YHaHa]1_ =bv)0^=[j,6.Z 6]XeCyj{8TwyڱVEY<&6W@_(}vi-4MK,K 3@]j<̄҅={òΈR$f? Y"I k}t%\kdD7@fS1 9ck.vܻ34`։bt );yum=iR&= SGD@e4PqzTA@}}弄+,z0b+V~F|-pfgOs\~Gۋnx8BGىE4 0CIrEqpfR +^J.arioS6mVsynTd \}Ԣ5†rQ϶xJD0Vq78C2ܲ"ͶZ}=fGޞr7xDD j:-_"Y,s&nX䌛r!-?mEZszݩkQ([6U6U_AWn봘d`AV=P9WlV=Ԅ 7Uy8 _n;%4$*G wk# ӡ6[}#uzm פekфXȑTԤg$@\ 0A uN#p`Jz[>e/5#-m+N*RlSC먭q _i[-0!hI$ hF|3r ad's|ZYM]vn3E3D1օ2|k&1Ү?wbV }H K(M-$` &?oxfu&|̾%"'cU>*0כnl$+PCYz>r*oI%ךL7+ŲfQowi RRQmttd܂VN;`]Sd3Q"B|DN".ij[jJA9gV@яR%Wа,)HhfS^Fyi( ,QO\7`@-soq V ډo)eB/PFʂM =1dLpJ[5kG/f[ `sL'zjxA{Pa?*Gʰܨ)WyydkEhIT3{G/X}B XŭLɦ9gh5`L}UPwsrD! KpV30_c”䚜-@Gq;礡>r(UԑzMMc88^%Y??1_g/љwbz4<L@jxCyPWt"J G{aX/.zL n+ x2 79Gj#M R7`n.P}&Ƭ#vӂa㸑| c~5x(Nǰ}3sM܍@3ǁQsO[7=d\ ^WRfV+v9Pax| 9 $>8xm~T]2`vN#k(qC]K?l(a̤}=n_fȖ)~=&5[ڒCrr L< n7!AXs;xoG4 <1D`5, -Pz]FܦCW5Pܖx(U^0|2oGNGal1>jU~TGPqx_ 5E5;Ѻ>V@\u\8xk\nI+u$FUeuwI-Ðt@c:(Ƶ, g)͚ @'Jf8mOp:KKAH< 0d+SPn`m o2:fHewx:5D1Ȍ8(Yr!   9ZDNlyu5ʇkkh/0Q}r?z-M0khQ$wcD})S:'ie` :c6Zu >wI( XֆΤ_S gw9Z A.SWEYǥNh~bl}q#'?Kw2k=z3(Z o_iQtvĖǭSa|-H _T xY­<c]Tfq Ұ`$V~!QJ󞫬Yg%-CæB 3AJk4}q0{3ݥ+k?!? McGlͪgt?G@6)8PCz#>yPyEadqʔC}ر]8XՕtM.?4{ȲP4rfM)h{UJլ C!{xZ:-#$>e; I^؞$8WaXg[u ZI+q!ך?_֝ o0", ^-kֆ;i鳘;фi;՘*&j.f`>z:yE#`mu.teȓnǘxcF [#IeSՔcˇ?{PHld-j@~/ Ҝ YsVD/jjNg`f@˂ANVf "%TX1 C 2$T~ox5Y(1LAH%Zڪc_sN$"P_Tx4* Z!Fi;Irv.xsc͓fF3!$ۥ[]..Quy‹b>mu.1I\dlVc74E+Hz75#f cyh>SgFT | O{)S> ?d1S[gD=Dt҄ZYjj9z> +Bo2s=8Ƙ,h3k h fNoΦ^\ Ϙ?dIY1sNX7QR n{Wb}| AN#^C$M3ath@X}g=4Wb6*VWV#4G}`*I^%jEaG??c$md6K &~%6 Gx-c< WfGX;~w_trhq.5>P?Po0l\9L ک ;K[ݒrxy,n['9\v27yG ةyeSrEM h)3549Χ'gu<[0{~1zD -Jw M;tdOm**+hpO&{?^m(6f7FchSO-Ә"& ǜtLcy3uF|HV-%#o%]J7&Afvό?HjG0o\I,*#889뇲'=Jx}NQJْIxƉʹx_Uم$՞<3MF}?5C&BkwbE-Kp-az$.I`h HrvIPN[>w`ڠ w z55Ř_$ݭ9h%:lֲx'Qü ;\INST^9(G}nQZ)ʌGn4';h_AVnPV8)QErӅU71=&!Sf*UQqbOGD\XR<`lJMH#1PhU=8hchL⪥s9;áx*>J'EШB_(jU.XCb.%93z\,<RӍ8SĚ p[#ZҬ] !; 2dޢdL3i^qe`Me5o890^? lk̠%V"~@I;/ hS~$7۫I)uΊĶbD?׍VNKon eu<^Fs5#h+7N-X,;]TWt) 7o,%GP[zPh߽&$bfzCv5[յh:ݒUjzXnݭ\2!dv W6Jԕ]{W ~("v`$6s|0+ڎ)`Ò3N`ZxMC{r#WpB`e+ѡ? R.2"A6,:IȈ#x )N5u<=!M1}cW8/y5\_C6z#p#EmQYh6*t/{ՅW6E2r!j>Zg63g0վ|0s*PBOpGJ?.]a/QtG8!p0f58 恞y֑.xq@2,Am(cTS4-bq&ibH`:? ?T'#@F?s ŽD=Q˂Z.|WGu/NuXVN Z,cD r%8aq{#Ւ-’*)F"_~̈́@~@! an+ε)ip,R2|h L}"x@LuO$gQwR`1eA{(%O'(@ x]}M=%ر"ousIxn\5`BLy#8z_7jxsJp3/41jU9eJɹ{ܺPߥLÚ'ْRo_|DyO+ :oczb}Z%+"TcQB|vpQ8ĀȮWAŊSGCь4&B pgjf)''.P޴~?J3n`&Ku*TAPځ}lXc۳Mus- >m&K?4ucW &I" yټT\CŠv0|9ebې>}=DdK 1Ty݊ 1nRex[/c^!Uf5?V5{ [-y u@ J/}LH e;mתJZq#$c9 GM_Hm2.\zg-D5=d}/93^/nz%ޑ2H Bo 9BO({3@M_lL4S_x1e"TC9&ÐT° Bahͷ DLHx4@6$n3 ɍr>fX0,5⿪p0Mn[2FU\=? ;'pv(ЗܞäŔ1d#R|gEM=++VXyp *kt(ŁĦ?Oŧc٬NƏW4%*ZKD5^!3U m۲/^fCvg‘/%nzg'3#=zR~Hޚxl~:/"N03f?V> :)}NXRqŅ@ +l;sMG,,GP<]7AQIOw5HcxlQ3*L[:;ھ &zT'  %Z|W" 뀨3m?h(bB$S½ o i.U\e΂ѾPw"+<)KR%v23}q"k6P3:"):s֝9ǂԻoEsoT%A EnIM,XNO~DVs9_{ayEu%U<!8]Z ҥFwbaZ (k9*a"WC!F ‘4gb|Z]5Eym+L1[_Ω @#,~I^H=p]ϴ/Ae چߔq{esah=pvw9j _;J*ϭ5|qsޖ1HpuH١;p҅ 9W"lyu*~ ιF\\WzߙT]l&K y@ŢrG:@%dwIjUHIO g>qp)ɝİ9&R D~\qbۆK$K8Al#-M{="?n6,EBc]DG4uٕe980Aޣz{u|j,6ur2_baJoJ (!M MAX ptE I1p0zTu0Bfpg 3/~x&8LLMɃdjVEH0}}P8*Yh?:2U;9ƶpSMෝӧu1~졑qc K\?-pr" lr'c WiɆN'w[bÔ}zA'@nYff/EwIſ5{xї;|FwYޢJ]:؝&m#LpG ފje2uTq|)VOxtvk EG3 Z׆/#+%ANx\^X-˴p0ܻ8i Y[Bs5o9:jpGam%<u ͔5TRpE<CU, - ١wc&_92:处ʟO@ N$]G[D ޣjkV\]+.׈ew*&W\xD: CR$[h 0{/,f\AvcV-秦o=hpۃd9Y7?w$ QR Pd(2"K8l<*c>`\!ђ?O 9l'Q}w}D6[dV? f@ܕkF;z au0׺fU|W%wUHq 5ю>q~2?_>88\gܐ,-M!x >GT?,s]۪>˂S%.rt7ڷӱK\>ZJvrHZ%7Vf 88>lPnU+5*4:"e w됆RȧBp$ %'f!@y E1sYa1T^kPe롇 }2'3f0E;@$\Rz"s>{qYKC^3Z %_r0l,C@3![\K"y} ϵR "\xBlU(w}-ЯRO"JbPOp]* Of˵D5 u6@X`;iȕMN{ړ1F~P<78r8"G3*E9=S՞aj%}^UNlvRLyI`Vۡ8Bpt%UDZ^#+%6~Q]e¹weD-VDӋ7}9}t<-Ab!|'p 0+?)!쁼c!{}E%)RXgZOO9GbmRWC /-,P7C澯sg8i5E:S>5qj W#4~pб|YD;7M4Qfi8Bi#4n=c0&5R6)NA6+ F#NS9g,H[8n0lţhgdzC֓']~m dd\R KԈ_Oq _fh4(nrFd ;sq*q9*{AKuk%m>RVqTo, n f+0 XL˂Ş_vܹ'7$ I`Z%h@hWz 1yO0KTPxg:hWf,-Nx[fpZ#lPӮW6 (R9W;b=i|Z5θG8]T;5W,6 +z{p8mU)iʳb+Jj\PuInĕ4H'(<ټmP]Z7vLSSdz ;gϒ@ɳPxƋp UJ,;u{Լ{ VOv_`% y [E(\9u.1Dv 5g\R!6PMTPd(Bv3k!`KS [%W`@%jsns `(]S[ئ&I::{{jbk{g#Ug{BT>9{cٙKwqJmC# :5#Q;Ā,+߉[ wAKR7!TcqGsyu<bpG`gioC$՘Q kCm\ 9)#ǰZZo lxDWX.oq\%{K}cEP{e80s~p bdDNij8%>X +/'|$rvN(So%F6X\|\x.œ>f@GG.8&$+kBzz/= 3?~ex;*x@k\:nخ pψ3N#,oWkSdBV~Lh3G0)޿ĉK,uDera%bjn{l|Cm;]SRݲ-*wI\mP<i2)\,x5lk`uu)6oÄD}@3Vn3Sݗ17Ǭ BPQxp>rȫ=S[ayuL%E*,P1// =1xEL!(WYחS< Qo'wHAk>D9G Y?݄~\0eyل/e alqϼ9Ɂ0]F vW>nZV6#*D X~a$̵"v-C*vNn\#_|ye-*㰽t_b(y9хM,<0h+Z1xfvᦸPxK ǸKCK`]cr0*]9]D^$ö42Aہ$3(􅣃%Aߟpt;{U_ߨ[?#F⋥LOǬ* w8XDs7¬HD\-4_G So?oi!sՔIfqǍ | sϼoϛC/6>j}Co;itRsgwm#^7i nɸ_Wdƽ u=k\t8B|=/1QץzWX~[!D+9W37){8ƥXPf*#ݵ&}iqnڻ[NDc'b|+]9I|D〜n?>e#TT,~u(, 5]ں CkH~ï#AKT-hyO'z(8>\}^u3#Q{4ء~6rsD(pe윿ȕ HoQˍ9$,S!/Nk׃Mz|//QɛW>CQ%e+% Nw -E3 (\DjYL=?*`HyA36Z'0ՖT\Rl@aIxhҔhj*6gd%, yeGC #3dkxs,xFъaWPm 2mu6Ņ EMoɭy6Y-l ô;uKqI1 *7 'jZd8:I a,Ӂ:٪eLX>Ȑ]ée<6%3'1bdPjedF P" CטyQβ-b<GZ<ۜu;1!UVQShY̟ϕY'N)BQD%Mt"u4-{;Ej.84IR9гEx?%:N3I;;G#6jduq>N75Xi/D #17ƶoJ*Khik-Q8%#FճDa$vLx \S .qطDK76}с_.S2yH`-k'hR߻~6!&ر]O3%q<"V-e `f58}dWyO`B_ąbrӎU5BD Ann\.w\zr6l9ïkJ;Vsijfs0뛦*J:'0T؊N"mEz|6BbON܅|4*rs"M[G'3F+G󹻲[7]=8;pC %ں59QL4b(%r(=%m-s̫RS(qrӌګ~b(|cF7`&/B!k)-?:6/n EǞ` m~=ӰIotBUٴuOզ*iz8x,6G:b⫪:WZT unWz'6X\ ؜hg ':Y3r{|]j׮Zx2JHby&G@A'9rRW)<$g63`dt[*ah3h,hxZCLJOq>| "voL!|\&|1|B NaAcڧX[ gO>nj2N'I4VK(ȁprS}m(v ʏ Sn.|̔esԘwBsa?-SCZ7ND(1" +GhdRڡ"%u&~~jy\$?HRv/m5J\7.FytWpŤmfgԆw. +d}ӫN]H攇ݵA jDx$ُo])+ZWN3L'@dPHp-šmD~Zj:N@) bpxHVⅽИy]eqb>;.imVF X" _ݕx7U gL iBw vTbOu'S#'V17}r4P w\Ԯ}|j g# >t?UYl3X--gd֡ NZӘ'>CYƈ@p삠c? )@es<0 | -v #UuEUxbk3} gZ3D«@q;3J=k7n M*a"9:FIS1ZOMB3v-Š[T֤c<"tY_2+u{ L#x@JtC؂x$1ɇ@r%TjᭃvF8ȱᖷ]/KJ ":W;9!IZ~-Ҷ+ F%$Bme'p(@;}}\[U(3+C@2]Om}cZ c_z%SZ! slHD{'X-7&ڸÒ<*%<6HI<:ZVD:(KYԁ/a+MȦ\:0&lk׸Ǫ'u=pd昃cxU()bJT𲓸7432. sL82QSڧ-`Qc0V7C!u?K9Ɗz؊ j]ZeXpwF|]AӧS{D:J!C@W6q>ҫPF+8ݾl y&,AtY*6Ne# Ms񘠝Sd6\kֵ%yArp:C[B>mT`Mt+Sx_ AXo.X C|k*\dҵwr2H`h"ezKEDMs[n2 Th.yؕx}`Њ`[)WsIC.?Ak$BZihJԋۿ;?9ҡZB %B=k*x̩WFZL!QBfSt_ ƿ+]ހka_OV[1(5@戧=2N("aОa^ X{&;Fq %_+{ZiZR$rc2Fى6x h0n KZo`3` Yj^50/ʶ"aMPłvewc7_ݿc?Ɓ.TN՞0v>M@Y[rskCNntb-%хwLT⪰﮷<e\yR@UR-&͉;:bn]<60bn uU'dZ&IQ9k.АKƔ]^W~AlԈ}Ća \ތ4٧o9|:Z.̝ρXیy =5J2Arů<:B}X܁?Pؠm{]d DQVx}M_ޏ)h29.ҕ5(>x?oK (*Bq.Trmg6e:3 $nE4Sms Y^ L_/h4|nrlËRf rHoAX[;*3Sc+&']yEeV`s2eP۰Jv{]{S=ɮ9IvITXj٢#hث'q2O2CG^+cS~ jh#X|<-Pof_%, S@Dm 2F 3"2c@P)fY>;1ǿMi O$Xoq-^U{XRyD || }A@[LuFl#R.my@~HzXd[R,SXܢ(;|MvT{>Taz_Eoq4w "b/Pn{p82 y7o0Pۮ@&\#Wj6Jq;%D֖sUA'e%CNĪ 9Va(3E8}=rk1YJ /e r 21 b47saHxBUmiHg!^検:%"P!Fr6B^-}[ڧ) *< 4/&MW d MHX9!җ4UKi_ YP+wŚk^MKHuf? t>۹8F b;LL9 KN|ԩ^`W ~| hvk={o @fHG<7B!ME^\]pjy#s%?Am.}jD urBO B  b"QS4H؛8WM9Nm6:jW 9`rEgmDx)#z| $]TY؅" :`Y#Qoye_|XzW@.|MphXS^ Ms[ oG )J+sY)&#Vۆ37݀`nī(VsH#\: <_kS=v@l "yg5.H>։hSØZI-.l W{QS4hRH 픟TRClUU.A ՝4Hz{aoVїթyҀݪcDT<{&؏{1g$&E;?ZI`=e鸸 4ж%HK$X/YpW3A_7c[tvgC  bD>g.nzZ73h#$[dIK>ƊBQ-N9:ڜ}3g9v>W b]hvIn*\s *l'pT ؤj0=,AW1=TLR$7- FC ΔY{4VG4(yCepQFMcM_2rVJe5h.gR{hŸ ptkQhCd. 'AEnɘ2Qg_U5'Ms*^(s<֘[bJ[>1A m &VbUSƖz^B*@Jѭ*1}G:D9wm*mewKpr^MYPWkl2` Y}}40kVW]ρ y"_чp阠@0UQMQ{胯\dжJ ؆8ywݾD)> ?e vqsK(ρވ*ȇgyb!~v8p\`f 1ԬcfĽV= W~*RowzzS?q Rs8!}>\YEmǯRcۇJQ2+ O]H GYLt Hw!\/T{Kkp4Dv>nƄ1SD͙BM[zzޅ|fF.珶O% (ȳC{|aNߚmwu\3$ZxC/ך!*xE[3zzUyR٬Frc:A>۞(DMWT ( ]z/*3юw@ y]W㲴 o: =k֬yuP2 c^{2:L/QlZ-0!Cˎ'IyT {u?ˣ.y^*[}J+­m:npq!hQs&] ,*|H Lĉǐ;fc"Jh{CTJ# ;19?8A1OaUnXx^E816)*2e1? '*6VrPJH+I朞S^17־Si/f6NqCOF4 n2J/2jTB-w#BcJWh I[K O<̙@%TsGC0$[ވG]Pf>3rx=Rٸ?JwWiw4,&euH W|ZU|2ٖsniǕST,A26)hzs'4֧0,dz-uV57LyiwONٝ5ܨnY⯇P;Յh4Rݛ.A' qsˤi)5jd|~y:BԣP[lT-;16e<;bD <}CD4{Ma!5#u4eStL5 WɾF}Ͳ5NWֵ=:ͮ(ͳ_Nu&塪 0'RULqRQX>rJ`ZǛOprFлRRֽ٫"]jyM}LxZ !rޑBYU+PT>K5w<t&yX큜Wjj>36ñMQW(s5}%|U&!,6o%Z 2(t$xrRp{squ]4|*U|mM򒯞\#;f~+77{뙏~mNF\hOAãGIKU_# Ju{S0%:NA y9(C6},(!<*nQ#nЁ'l' CY>8 / (Т/h gOPוl~ ֹ0$b3P_N|0c%%zHVrV (wE-r (jRsOI8 stskw&%mdA:!6Ir)j; s֯SQ❍h5Im}GF^NӢlu[HL&.lxԗ _Lly9j{6m! i*@~Js0P;N.1Q0-QKA &c.![ٸZp-qmNyMf@Es! @"t3WxyKC/B!^|)=^\=N|X&k |iDANsmP?6#Do32z([=-g*)HYŔ%ڍnS'J\ԳIÚT{_ʒeЋө4wRt@u 5^q wjS'1.gD ha||\!)3sJX7~6SAN]eNJJ#3a!<30MWlU3 U#^i qy^ywy<ä.?dܵ$nKUz3/TsG+9d=R4&3-uH C1ljۅSXDa}sXk?fB107\Q1GWm>!jr'$*X(#6*.ieN~lh;>ZL5d]ci8y#RiXqBS=ނ@=|P֯IɈF;K˘m[A"ϲ%ߙx+B5ڠ?'<{/wޱOuQq5㖂/r[ Ć %2ͤe/6 +E^A ?}C6СQ U׋ҩC+x} N`f7Ed1x*fcUUڃcds;әg2цu]er!!6) }DV^U nB}ҭY{b?thCR"!#|v{t`{h}wʍ: =h^^umHECA.qx+kU< uMeOA-D>;x;vjB_3OCaa%{d&otk[c8BJTNn}^Y7dÿ%4#m0VGFOWtUz23aru:ɉK2mlH*"gL(2 Z\ܫG;!X:U̫!/ZGfJ6lY'(@(A!2G"^+~ x`.;dB}왝vJP#Ξ=q4Q%4כma '_lF=r2(WeqZ8֋ȱ~+/(Wpe]-z3[ˆ491B+$:JBfUjG׃#oơ:I^7b1H=]kT9yb¯7-k"L).6=,K]<$av,O!-IF-%qF4H#zi?isty[a&B=nT fyOQ3"êX^یwhoS.nEEcBtt\hI}rx'X.ZAh@X_ z)Z esn5NI>9/Rx5l:RG+ZL(36M=r'>eYViKY VLȭZGT7M|w9t˵|\thw| SdW2_[I*ndlNqDŀ؅ yLvafxS7|1CK@շ]5Kd jPal*E&7 "ҁF}& J&NkրSz> K^1׋g+1B*3vqƵ!W֞0#OZ:.Uxw*KhNFq>Dl2Ԏ :b{F=&q7aŬXי ;(-W98H'ōS%}`ӕZgX9`hݶVSV/dc(Mf\EB@=V C.VI36;K'k K?;0>>׊E"9j5|sシ0CD3w妆^gc{FV+KE+nxR#y1.< t.|vDBK+h7M_Ԓ\~đDY"1Ju-]V&JeeȮayeF^2c\K/?q/04p(^\M qk̀8 :r@(Prlt\뭻b' ]+2=m[ =*^3>\wC:ń*p~ϢPdk$bqgT3_ |:}b. y$2QYEZ!\˝%.;+-sz #)bhku>\,ᖄI?΄?n7H E51_/Js8QeIyeWuT?mM|z8 {>+[,jGdo'K$vK4ֆMdI+c(c9L@jp? 9{U= SkY!FgZ@1~ÁWER7i1?tGi#2!|{B6eq='f_d㬅SagbudqF."h-8 -46'6y{C6x]k(NXF9:FЯ炕e7Ufe7u mqݹG <'xb #M$T*A|PF֨1[N*haOYlA:3OlΟD.=} ԹMKIKJ&ʐJث^d+&B<Ը7:eqT sL ~TʍT^i {ЉPۨJpM&gBZAs85P&%@hw:))^tg8Z'ǠZ ւ6PtlokcGzgJTu1 ;2ì{jn'qoi_^oOyQ*٤'cPj3;څlhrXuhTjEiMY^r 2֟m~`6=4~9.𺫙8{[b~41I_Y^LمR˶_v' YL]fHkA_>襤F?dm"nKWKr:Ht2,%ߝi!,zj., kr2r3C)BՃ~S[ҟY=|IHx]w(=9!t#TcMFLGt{s ݓ iu]} 3g1C14!/Ҥڛo&Q9qum|ѱ}g“1Z0daS)JSk_f4fY-}>5nnb/mCS1.8Wjʈo W]x߻S,ЛsKQ !mwc{|l! ؀{).B$|gSwPLYb !hc47cـp!F'UV|Dx([E &ڏoFupQ?( FCTMV:.9@Lv]2ZP<]`-NH)&JUSb?In|\ZC62@wrsfi@@ȶ<)-gwi礞9tp{D0`XTv\$S.'KGf_՚Y\K=R}rXzRءKe{j4`z_N(+i9WL*V`EY0Rk.oر%1]rBK?&aj˞FDG6UJjC1Qbv[}I先¼HbۇWN"=z6U\$zPѴ@^,^#a6|@}, UٝEl%~,TϢ'}nG69H1Vj1O ݲΡ&,A".ev١!S@2;_EUSJ y&>Jp>Rخy`ƺ16cpFq{ty3n63Hg3U;fDAkX ;TDmU0ssua[J {.b{)?MŽư=ZT)r=},GgaܦGE<,KO$<4)6j%E̊V^uFt/"pW,(DR!>nyPi8 QGa){u{ cjB-&dSNpY۩. h#3.ezظØa=!!څoYdG:juܦ?9kXn*E4ڗ&TL_;X4A$iR.1ɑWAƶx0|-t8umK:GsUG&0TP@W}..g{ȵ`Sytqy H;GZ+FvmD4I@+QG(>ee;[XoGU1Xqjna$7~|iaׯa/o>8i]̩{g~9+Q &ϡM]d|~_WY;~-pyK7= F}:'}?NCBFi7Ugǃ|u@ٖ98Uyn]n\'yiQpyuǗ dwN,H%xbG# o"KlhC9zC%[۞5Au֨Ph"I;Sv$:XAw/gyUgFc״o RFєa^&lx[(7AB7`Te" xDCkYfx(v v`+) 8ꛯEBe[SGuO5la%6Ng@$t )W$_ވ`hEW\ih2}ı2& qDڦi}}gȖJ= wʆjdzm !.THb^<=O(fFM4I[Θ'e@rb< {U{u?Zu2֙&0;(xlwxF4|J|q/5-K̍cFvT&w {Gb"iY?X`Wci `%(>))dsxs|ҙި;-Sou2Y6.Θ-rm%yEGN̅1U#v N^3hC̴l\efk-v8MhiA0Uy?N >wjAjhrx4\ŭÞ-b*#Zx?=;)nLʈ0h5U6~2r[B&5MR$!~||>g)qJ޲r_^x&>{ mĀ`3UA)dԂ/˭,?E5g=UIR1jAZ6A> 3fY%Eh?uHOnRAzxK^G9 N̙~#KZyx<7֧v* dۨNCl#=g 3I}/rAknC/7*` -Xڰ9'1 *Tt%LD Q)(w,UW|icUDUmL?ŨuCS0)-ֶD#6>%Kl|etYXhbh/awuv9ѻ9~ m=ߤV~џK~k,)' ;~`>e U])a\Ñ\$t6̍ﱷC0eϠs:TӰ;71yU3g1 3tK^WP8{W!M7vߩbοnmLO|!W0 Y8qoܻip4_CVV3mxIv'mGcԫx6Q+,0ziԏmRVUܰI˾4&`z{KJy=#*rjre;.:7J喋nggV䐨AFnO{SМ5}CʝLEr֏’dž-`uj4y}rB5dh)p}^:$b2X}*q->٨"\8׍ϭA~bR]D.q(?6sb}M1EHtDh2?T:tK8FS2e«\ntĊgZ?rONK s(5p58}Io? #\`}XaQT݆J2IRa V_"ǝGNy@8۫ ID1T@O*h9sاE`D^LbcL 7k_("̩؄m@dNyH}3Mq bLr}6,$$w(ʓ8}_3^ L :w=OÝHgF ϫ6 07]m0~q}&[Eh'˜7,☏9 A}{ BX\AEf'D !lQ7ӏxr[{AnO#nùyG$yltCю!xl_Kx J7&D/ ~2'JG)k&5bOg%?!t`euG#%v+q, ;P<</y/ m[ `ȁ!D ٽ9?RfkGZ\Eq6;}u3?mB&RbPUC򀡟vNf0zƼfx@:e%/!Qʼ0sĞʜv 2j L_A9o(ū~-}B ]fۏt<|c!rގK_QH;[h8X4G,P5`4DSK'7,gEp}tq DO}Y=_j9(OրH/o`RrhO ok9iHx>Fq?u oiT7NVdXF*pG@ܧ`4Cú'gwO W~\_ -hx:EqoBZ:_tU'x- r<$y-2V?#<_+P(B v03X oSvEΎD21 D5+X#m킣f;j/ʬ~ -N rv+ٝ-P*\_V =C8/ZK5WF*S'.h =vDVZW(^3ڟp1j5"ڽ[{!p*w1K`\\c#S U2~0ʹ;% + ]'ܪM{Ҙͯ:Fب2NJQܟRÔqA]%fGc0ejyƜfYOb1xlq8Ljfe4o 7XZgG,`0r[aD֢z׶>"٪ie'e H.gPFB#׀ͣR5biXuL, n`VDqؽ*i,YT5:noo>scZ2(֢:ba(?xNsNo$Bݲk}I8,]"fz 8OMCA.IVGYO.du@52QMNW")1ԇZ,ñI *V N%U+2l,{2 M 2`L_fAʌM&@y%m?7YۄCQql|FW`2Ő_A{%lE]~́]jK&D;}7[T<cHHzlrmԯӀ8YnN/[{8VZ0`91 F/3x-]yN3An/8nޑW{!DH!JXI4<6'~cA`vf=2XBk0mmywQT+,R25ЭT={!_DK 8Tp4~91'' 3*n*)أ A,AleСzRIc҇:s熿UȞ`;6us-Y?~}e kD QV1{@V6*7`lB afD( hyvhzɓ t  fhL|-ُVv'2Y`=J5{{FK\ 83\8r/}+_;<_w Gab?&Aoi[4v7FELO0@[w|ȶKrFUj&E֏?hĀiHeĪp);+%I{% EPtvQ)Ňj {+KLFҤTcEjُ؜8jnm\E8+}mbn?[mϹ j7ݥBl8yd͝f9[sZAW2p,~XnJE-xT&Ú\c K)F' ]4 tR Oj%P^V3,+҅ ,v. ſkc/]mj[>Fȱ%qzf]!2̠5:Co>|?,m-^.utjU:wam@"'ص&آOq!ٮ[iށ1v3Ҳ&XZ<0Io< B( bJ34dn]P3v79z:0݀pu|//IfrUS +M]RNd] 7<6 # btCr]'[OcV`]nhP#+`It8 =o iA÷sټ۫f1}I#Ы^G/;OSa6IKh |$j4B{ %]-Eq5.)3N{ 5mF}l>?œ34ZG:,N#\|gka5`I6>@:Oazz!:yIc0NlX33~z]"/eSXj(Q8R0v@ NaVu=n;;\x^{iCZ!焛p%vN'ka 0㋸~_Ӝ1qpPhhڴ~~3v1tTa| }bG8JިA1}k5  M`kR8Of t]z< Rs4l!=T\C.) pZ㉼O*l6 dB&KRW`zH*rmrefڿjIX)y+3 s#AWH}=NX7-2^Zwԭ)DSK ~^1Fצ Ep WːuɁ 58O0X-4D=Iϋ}(n~ģrsRTa6_dtvmh5in$Oq=w 7yî9`+|Yφ$b>L:PEW U kr 9*ϼPfesA[KūVAm'5l07k%;QH7hyT|}b2̏ W˕Cȴ\uW0"/HA:tIX}72-k)lBw[b׿mπ{687 = .){ *£W#ʊ$al|UE!}%BZ-?^GshHpuk ը`͙.[ꃢKR+3zi6}OE TݖVM6{@4nQs!=ʓ+OBUGԹ83^}(4KV~/*fCY+U]f|ֵ!^pyM@jIq9t>O),ORuAsTIm=἗R(TR1(`TlIehz( Pkc#JVMݠ<%ɀK5YW :rxⓏ AxM3 Lr?Q&YiV3Z<z"f8!?sLu,,W= 9Q MF<`/uxI<ߺ~DI֤n[XwAѓRge߻jU HMgPO_<`(IAӪУ?d)U$~xdoEG=Ӹ^ *DiY)#䜨_Mڗr32FB!A\ws3uLDNr*Ű~REe^u:8ʆM1oçֶ+&쵺?x'+iSKˇ74W0po rnrlZE([?w0{XQ\+o 4<T|x=XcqiE5"wi)'Ds{R<aUo)2ֳC^BX:ܟ5:iVEp+dž't t g<Fd/Hqbs>6  docX=t.~z8Uo&~O'y hX$Щܖq_x̧yԍ ى^iUm5tH;7fymXKt^^WFQ!%z}2.RVRԀjq 䓱G$)x/h`&' UȾUDUTY*+ vEWi,UB:Lb+6җX囘OY_:u"hKpz[QNI/;h}lATSY ?+- DxAs!rO"[7 %,mSpH#qX[XX^9)yTe ㇷ z1s>U]3,[x@*E.Xȿq]\{4y}FM@o%E!;[m5a)dZt_tpۀ *: `2/diLUX&t5KRFkJ)5 VxCl$,mW%_]> ٛ%Q@S#/d4ʭԤ`ZA̵t Xu1#*pauz)ge_~Z^BG_?7vhm+azWWj΁*+_]E4?jD?z:]Nس/.&!JBo[儱"|Jx=AI<^Źr^rwgӒ @hczU1p z?/Ty` R;>{~Ŵdw((!  rnl@ꈜxn&dFr%g{I"%jkڱhVX9oѦēj54U8:B툅3DU5y3} (T-ˑ#I<-owsێ>Ѭ ~r+T]\0~hGQ#cI>ԟeJJ yv!3c]Ƴ#n%3<l97`w&p>9dd!N]Pq q.dH.&>Q׼$'9z5z_31&]{F"Gd *߱F d{J*Ӌֳ90}8QiBW:DtN _"t Ʈ=Smզ#R % _.9A+cqPv= }&UL ,ZCNoMD~嚦3<űH1/beeҮg E>}es%Ir%HvijK6E%Q6z!з%.l!(V["Ru>s7]Uc؈֚D-{"Q ҃ZCjRٓ[ g)M6@(6ķٓO< !;;z3nrVJ36a)(EL ;#0,>20!Izpm CiE4$s YI܉r A++_ch:| Rކi5{ ]5YSBGWB*#ʬBGp|_V8vd#W[Osj5~E ǔ|琠RK+<쬋]:vb[?/3i"h'zCd>%po+r*Fӵs8K`p >JЖAL!j5g,SDP l/7u71_Оz̗@JzL=G M>:m/ͱt0W"5+5ي5n_°g T'TQ$wdS#r]-5e9%U*КZsGo@]"iI+M]ٸu{Y-=,J{.Sss)= -4Ԟ`$Wp@^q v(ޫ>lf&n-Wyd.dR/ hmV !X)a Jsh۵.I_NuN -dH@%3q_Jpqg<]4s.a8Z?ȄPYoC.ݤ9*_ZvBK %)p8ZL#$S 0 HyD9N)DBV:;*ɥoXc}K6 ތ z?s4h$KX߮BݴHsI<< S\G^Rjk#ƌpn|OЋSz>,@7уQydAf|…mZ>c -6kj7@"6b6n[o{ a=%GeL ԳvxƟ%`'`mxR<~ୋ2{? j\ѻ \=%0gqzfdoY[l]j\/b|u*jB; +yeT5ǺD 'w[ tk7[jW{sObaU"&8 ֣?з^9Dz/u~[/{%@L~2D2Cӹ$):`[% 3s 9R!l e?¢l`^9{lB8W_`;3i@lwy jh3l<(a.29uK~S/랜d+ecAHz, I4ر:6 Y-Q a:Ym]6t ٽotF߁e>XyѶO; ͍[y g8ZlPeB 0J,Z4WO0QQG fW@vؖq˸zJq/@CdnjYhv)aHٴ!4\Rf;L9Ett+6#![22 c Θr\%0yJ(YʋoQձ0^;¨JFXpj?lMQ:m;\\۞lޙl3[.&^\PX $ę0DGU+Q "^ O_gAMECqgVh^3` {x:84'}(5f3~=^X?X2= /AE UP; +ɐD *!;s  'V4NQ Fq5@_ZMvwk{#UdHg[gVV$wl!mC,6\,,o g鍥߶)^QzEt5ψw  ÊU>d DQ],-WLr[* !xbS@r71pqF ,륡fNҁ3z4NVPf*5UȦb DM[(hT%W$= b > ~gW6"o1&'?#It+2Tbj-9%}1jh164k~*Ua{PHA, !j,PcfT0&Dl4^cĚtہQh3yq.¥:ʩ|U$A)OJ=sSa܊Zmbi7DRF`{`)Cb)-74= kp{7#P#^>YsM/O`sVco4y|}J9b30߮acyG&+pa6?ǍÆ F ltQ=\-|c;,;sP@̹jOe=lYEL0)Nvk_Wh4Қ{/FM %dOڧ_٣KvbYK8#y-jNҚ44A~V, m=#Oƪ2k38)8\qmЉJ1K6m>'0^Cb߳ R 4NQ^Ř] v#U$q&<}FM"Pҙ(Dz?3Cr\ T1]7r3N?!1ilxj\n}TuDs璿?'S$Pݹc1ḐhPtbx\1myEmCҝƂ$<۩Q_b60FckrA{^(ooZ܍ek`c5§!q5a"hrϝ+?KXc*GgKl$bc:j5G<\E{+̹| XcV6\fR0FBm{b)q VlX}?I\'eU-J]-y_4-\K/eĕŹ/ޫ|_ֺ+r!X𻺮狆ҏ,ٷ*: kdIƽJk c"(.-ǵ$c&fH4v(AU/ rʈk* .b :I"\~չyЍe 1OmQC0S(b}34tfTS:#ߡBeT+P ĩ#=A 4)W*+)~_PNd$Qp+tō'ΪoV?pVp1e ѹZdD$LeF OM2p䬋C_*~쵐u?9/@Sqcfhg\ Ed.hBhӏi[.1ܵI pl/d K8NSHP7fz:%DwMC{uJ?)#"^HUN&|9ŷq^PdLQpKR.!S`^Wcw0>@J(ja 횑o~YCǮiQ/]`M||i5Gfifw̿M9qKN$nͣ(<>LWc9h M_>$M jL eaS(s۔ӌbHJgh`[ [P ' _OȾ9d%t!r *^ r0 vs!3NaףEZ ߵ~20>~bby(󢹥0#MY V=2 =j/$./ؠ+' ;< njqhRI+6=RQ*Q:,]qn[q;'WS;y.7zI\[I,@3`xa{ Q?e7Cc@vma ni(orkUjmq섿I? ]>6b8 ,(>a%6( ! %b,DDSz+ 5\ݽm325*׋7FL.{5BQ=HC`v1 \׹A9#D/뗁gJW{^Bz|9Z3EUCETs>Iiɚ&$ zF"D1 :nђN4BH.P<𩘞dmeMd*6jDOh{#Ƃ-C< 괆 (%:\ZEbwp(cٕ86 |N~.nَx$#V<5%g0Ea`$&ejH]kHn *cY·m9v o*Q ˫d|DW#! DDײSiS7vaYfb]iH 6T%dƨ`I1W`g"Ii`jcz*#Qs7A@[G-RahXoB9Je/ ,;!Cj4ل&](I,G N"7fvmE6JJy~bUA"98e>as_mApw2W A>Cr9ÀH$$fOAP-yKԬM<6h2Y |FS!8ªgjNcj[l6NsJ@ 7 M}Nܛߐ:9]B_BBy?ؕ3 ]a^4۴`bk 7NE+%d75Vo*0pN!|n׃촾"e`M~N12^?:М /Ca*z;GUZF S^/DW@s Id@sXv5FjH%ǔ4n1}=tj>-yDgG|^!pKuLW;5<:{䁑Urc&ygLp>I[CI;:Z.S@ #,ɠXVTbS5GLU9E-~̻)Sv-X&DKP 8| 2]^K:( u4OSPpB fW+ܔj&wwBLjL5 e1GM>V[8w?K l1T(Ɠ{Y-̝S6-+D(l#Ɯafe`Ee9f䢕D/wcs9fԂ1 Fj0Ά+#9{ U)<zk\zʒG FG->iD@oQ1|R̩YFnml.< u ;9.v s$m@}Y FFXMh7Efи xH&|uP5FpQfwYSn&7è?H,˜ dzX QNDQUU` qԙ/$&i𚊗!x+Ǝ]ˈ7?&]¼5{JŸ,N{JidyP̬^ ey `D5!* qԛ8$֗䡼f= }X-IjVpvAf i2J^A?&|:)41]~<}oעIàԃ6p[/{V$rvH(⑊NaD#ܯ'Iz@ [9;p CfǒT [|n()!`Rl~*Ac 2.+Jb;$X]k6b/M_;Q\m:O08 y^1#CFR pDghPPuW+!ec )c@Lsd#QYzc0>UC3A鹡$'\6dyb[L,S2Y*^xPj\ s}ILIfS^mʡ&_/2\Όi Viƞb0*0Z"qd;wXv-̸-KA^Gf#&}灶2ŔVlVj^MZ֗f0|yu- d/[uN USAJLzXNXKYLx |i d1a;X`>}WQBtQBݐ& .ggaɣo1W5be_oJ IܵѶ,ҹ+󩡅rpq']0e8&BfNOt,+h/uq׌)*Ls89as[7Sȁ![hKNx .Cwۥ(EBw`]趬銃؃sT귡B n)|Iloa|~u ds.-iX$oJ҄ŢײkQph #g6^h!{0(.GbR"l&2SA lJ1P1R iÒq?ޤ-7wL *u\}бFM/b8}iѷU#@Ɵb |AD9g}-Jwu-4_shQ< `<:$DI ЌMɈS 惶xćwB RJOO ?~஫\=+s4V=YE D=;҃5z4LJ@[GKmp_.ǥ2YЗ&&s=8cZ`5|Jn[5e " 3hk;T9ny~" Tpw^%:G\NOAnᱢ0Hc+"K|_x7:y/|$GY%=Xn]"0_/;"RۦN\ʆ&(ez8@voTU '݄2ћ<ه+'o 6;@RJBkK1uAǂheMmhHk3/ TIٴ6!Yz]D蟾9&nX\rK*0) LiW*x!5ZZ >Ĥbh@[{0hEY_w#m> 7p":u{.s/>["5${:.c IS%5C]T.g#&x<k3LЧ40u=BZW=3sF>uWbqʋÑM[|Ԕ'$E,Uv!|-^Aވ&z4}/~9=L:J*^濚J;_{DAF{F.PIk}sTuQ߯zjF,~Cwo3}D/68@gdTh̳b6ÓΎXu tN/E1XO0?:p.$~ 8`Hѷ,g4F-]%ay !pi+CI\~zZI*H+TSN잮Վ1~0{-њ݊- xz&Ncr7r-&K$g \>mٟ}Qs͋oN8xZG}̩9SzE&ѡܳXh;*]%li_a-`,_=L~m!f#RgPE4Q [5aT"eQV@&nn˽ BPe-D;oph * pD4黠V8b)y#>$OfE12C|vXӂ*c^׬R S9F}tyA8,R8 +Ῥ8tt Z,ʣ-LvG_5r Gg1 ?ax=EVL7YRE[-4Lj䊷VFKz՚! fƕ# ^'YعP`Y&]+CAv\ZG* ʹSȋzbi.~ZR.`tjGjӥͳޔ?Yѐ)3O)hw!(3Oi(+CD~ΤeR*c1,5;PЅ+QWW-4ㅮ!b[5,Xq$t[ͿY̼~ S V48!wp>-W?V]NqH){)o&YܵLdoTU,"\8@tqEH|S6R4ݗ[\Se)4NH7l:58foZQT=6 Cm:_jkd T+fU?,]R6q93;iMEHE 'R7[tYy*y O7j9͟ݧu<eRY̍ѻФx:~{ϠXpxZ %;rh߶t h8WL;)evM例 [36HhBaE"I_Gat+LG䯬!Q4^T_c@*Ÿ$»-?C~+Unp[3}y(J *%Sֿоd|?7nTcl^IeJ#'|щsP7O8Gx( S?aѠ?w_u W.ѽjN3!hq ;ȥ vs O;]CHxKD!Ghfu(ox,$}W۩ /Pb~t{uktF(W['HWkj4@k]Ȁ,헶sC*bj:)S r_XOn7u-aeǞ'VV&h }ϝÇ"IW4m_'nɝ%}@Nmq#XNB؄vvcsa=(?_hTaQ,_4H𕹢Toq?='ӷZQ0$|#(uSitrˢR ^wgP6Oޕp[xDpe4Ri蓢}ɁUԠD8Bz:&{C8 2e(< Fl׉kC"'0C-9̣Bv'Ux.zRTR:=JTח%cA7Tfb!ekxAxp.pN^pdd?@ ݄.6[p E;[fkyۿs(6@4שHtX ca;PH8P2o#bnhօGoiF9QΨpx=~TY*:Բᴀ\ĽQҗ h~G1;,wu/YgX7D=kɤDd$YDI\t8t'̂Q0I/ &l"sP9%g3L(n`Ԍd:ÊY#P Jdi"&Q?5A5D8Ӧ17؄1i2ZPpR.X"B]6%ӯa"ON,,ZPjP-N?ib$WiQ(R,l#qywEaJO J&Rsa{M6ʈb5D2,OvƲkgb3A.)p'VѸ= Bo M|QK1e#o0N91Qnc|ƷO,|iކ :AQuka< LAy7=KbE $3"ۛ/x9T@H,حEJ /Wpm\=|fMLBVc{:2G>ˆIX6GĔA6"|~9yWpAhDW: %E7+/{nJW >C؉<4@(,iԗڑ/37hQ[d0vG煴Lr%{Hh HS~9ǎJv>yȢ*\k˘_|"RԂvۨrXf Oz2ܜMyՃyk'p8q&4DYU1UҗYP' (ĵ"aN' qi$N;U5t 27)% !cj*g,_Znr5ςzޑʗ2326Gv"ĚG&EGAɩ]% ߮ ٬P.W]!^rMa;% *9!K6֭CZ_cșP4u߶E2 sz_EFJo­~A~Eco*W{%\ H=G3& 0IPg}v>J`o ZxHz էT5n N5),g@:y}T*#90ǻv5laNE:3S& n_Mm>HN ^J{D2CJc1iFipt׫͟,$ˡ# E1l%T`G?834G8K߈TGq qf1XtN/( T4w_QΒuoCm:eoV˶ʡe](tµ o{v "%hjFIh3n۩GXK=VDm'mzQoܨͰТݱ=~.d|-.<1? @ak`gRxrp x'Aѽjp,0pa}l.[={YW맔<8K,*"=M!ժ)AEqxԪjb F)6 q^i]W&Ev̋9Q ,(>F[ܴûV@i(n,Eyķ` a˶ɉxhGfXWnؔIR؅xa@p|ܝUty ? 27T,q5.":W7R_h?>L,jϞN&!u-D36 QF jRm E(_$﨓ǷG̯>CG2w9Ԩ6LՅGد O?#1waOb׃f~ t)꘻Y瘕9J*&{qi;<'w&66}֔DU"ɹV|Z>un2);=ɹi=wFҒ]ϬO7\0ɃWFzqnEڊw1GgnjZJgףOBÏqQA2.}dOAEȈ;߬)go0?RkmIVB@<#wZQݫ'+k'Fy迍B:}1t>\1DDmâwAqyȶ"YusepQo |ܽ4XrJXVKRfrXv }nkw]ZȏM B,bײ( T)C|~24Qдt-'7.pR;|~Yy]:M9wc0"3F^,kN>YI M-[A/z?vi*l9:{:ltIh`9De/ .എr ^N^J3f浂sq9$ n^`RSeA^Ȍ4:WrP|/oº R,݇sE CQG G,A܎.FGtsZy~c89,UYpVi2ms51Ց Iq,UJ}Km_V!q\GPW𮷧ݨkȤJ:5RO7{"I]N/0U EK в<* RBMh# #Ck%r`AZ|dEeoVJz8עr[MiA7Ig=*X+K +/V&dD{8/Kc4{Q3a@@ګYƈQ{=+L^śDI}6*bm<u_* 6q qfsva .pK$W+-zYޘqS׷7pb=z=MO kɍa3"<{[0uH*>E@V`3̷yވV4[&a,k/U]CLBKyɼǗAw!Fj j?x+qUYM,Q }];WlzDz.F( b`u4Ew  ZNsB{^I^tSt6G4Ƅ.RWR#kU^ ief#mJWBc"#MV-KI 5u}JC_0hz 3tPr†߀O+Rټ II}oݰQ'@;ߪ96rrr*١"+e+Ce%@dVh'uaWjVb8dkE`ZdY.t"ّJ2HKe;um)|][rf4uV5G-pϜw|V݃L zG|b v 8 oYZn]ɧ젶|4 ?'P,R ,]"PpF #: 봦qŠ'f.e} "Sq&Z u L͖3W*N4nC=Af9Pa%V)OW#S)4GtbAV$BWyB@Q!/0T~YF|aSZfp?~MWS)L*~78ҩX*~ŭ?-yCD`ۏZ|Jغ# j*Mm#X4_zjcN,112]v̌M7$Yk@y#5'$N(1\ ک{x1ƔYH ˤ.;o:g0H 6XWi}@Bqa;ׂ̞H{%jg QUuc ɢ=,dU Õ1gzelf糀ޕ4ک.n )>'}"ETc,ufM v7bRRw?4}me7@Rcߑm-ykr4c'VS6'{i XěHf8-𙫒ʴ%=V(%ؠn1 :؟k'-O_?8BF:5EBچh0gP[<6ے%35lo4>Ǚ wÖu0h LEM v̡ zP}|7S׺}fE$N$Y:7K\nQ̬ _H)FN<,(zהVYa\:)CB eAƒz@%%lvβX_|4E-DŽ){ФtҪL[E`^z[_ ?T+Z2:HT7:JSvڬ(؈H1{g^^3Fa#pE"Teخ<)dTԔ u9>8~H'>'^Iٖ ޥv܄1\.j6!zSsLϋ8ۗG/{5;$-"~gI\c pspc@UX1=uVjU/Ҍhv팫g #  7Ȝ"rg!c:eklsd#+N[P'Բ=SGtT5;_p.⨪Q1W6 !t#W3OJu$:|Sdڤ &N%Uܱ%)G7 hk$;1U ɐ,%+A'8hY ~;)')@W䫄}-׫kὗ%" ٗRhpot/D]<`GQ<&(w*$j=DP bݶT:$=tjڰJ`G (X#"6 0@tl\Y˛Q\2T6R,-t`)QNT2 jT M3Ʌ2K LH'&Vh 5J࿜Nbۉt/\iA]2_ d#,=7 E‚j |G} ar,h߭ !>/2vA`I^ "Vז:|2%E 1S 8*?RY3%\}U·V ꞘSs[{2g RK@֣Ql*DJL5>B@;'jy <:)-zq'\赦|gs=Tq#oM)ct佟F ,p=kG]ba(ŧi ApoKǧ<@vk"1 WK.i'r`$_O^,b{tgm^ {װGCa; Q+^`~[J`/O(,+2]uVQO+WM@~ҖYVWcE+WƉAE[x ޽h |EX )џ8@_}&M7+o2vP D:mĦ 6~ !{o 8KDVZnS wvO"#.Q1l5(^w{@8y(c~Vȡm:"􎡠H UV.ZC#EPYN\ Z,ôK"ˑ#Cq`I8 &'Ya;aA 0kK 6H) H \DٴE^pm۶^ b,ƃXJ ڍź;JjOy}?{0$".^[39ь 4UV;n4"v͑X,aFtR>yH,UDyÒn'4R*P4e)M(}*afF@q&j sI$e8P"M+n D 3{dgzz~,۔F3]徵1dLt0#ⷣ J8CAz&T B_|3`R.sF&5HE^߉#43(CA$O] Z;>_e*X.V4ri< ٓ` "$I.`Ond יTA8CPImuZ~eXd^c_& ?nNHIPW4H&i`!<{U‰sVfHo7c}:rj4M2H07axڬI~>x]I8:}BLOioX Ƃìexأh=+։ihE"WCUN%$H@Pd:w:-?RELe7v.ԽV~:d*Jhst4[{5 kQ-&[NwʐNN1Bl+zflw p>-dPLBdjD2y QR]d׳<>{حS4Ŀ͠TN}ϙ;÷Mw`L]IlTa3R6I-HcķKN+Pm*銭6v!,;e&^2 夯geeQte`{.IA(kaa3 %roNB>G qr4urY=WȚ/̗-1̣GNu<e!)E>V~#Yhg+Ikw*VTBL';I|VYpd4I;'bDnOZ,jgf#c6 ~g'[2CEwRZfp_};R;tI6VoVڔ^EyA0 bç^9p]dnzv#T>zuސxh]T#D|R>SBmS`@ʻ>bz,q»E,[5Fc"(`&SW3Ltg=K>S&8Ɣ!ne6[\ cFO 0,5M<ֻ#(Qe}z@p1v5cװ&g Kn2L|1)~GgS1n]j'}AS ^kW++0]}ChU, 6&+YjLۉz@.޸G|77]6A,.1$jsն!@*WX"*sG".g_ !xoTu=bOYJYj+ ;3]4mb _nXUzrkZb>'d\[PX-gP /V% #xb5iձ7_HfH#各*p"Z(̲ ӷ %|/u䒘)rb槢*4Lsj Cl1N7YbM$~k,pC@LڄB of <L9$E2ObE SM*v)7ʵ@A?WI&ۄHՖi9 'NPdzy5gRrl7@ZFᄄ6 )o9Ԅa>Cs`LH֎.y5C5:> 5*ʡ }Uc#Xv[G8F5?ڨ-r$\.7J*N%6";,2 d33܀ Z $X9QچUЃ8z4񯋒#X7ˉ),XR:)W1CG^ᾫOІ һ,CҼ#DbQ 'd( R*xˆ/Rd9pԶA.cQƸpQu"WDNtlCH[m Ya "]ZZ]V~sڈY?Xf5 l=T)~#Дt²3eY 4kӵ|Y++'Q}_7x+<6"}1e`D5Tw&bAfl'yRcoQ4_7.0E +ݝvq3 c\o@~k:#ȡ։CГ!Iϑɗ^s':t釱0/<[U눛Q9%z Y=56וηdVPN;!J6祬$1CĿ%+@L .?OlĒ gOa5;@^„+ '׻;qtCh_|etM v:7 + ܫpĔ+@os:z]`m0W< L/>_P)h[ТFǤI0t_-vz~8 uwpgnz aaC@o2vD[.K>#N+o\eN8iMSz{A9Yת`kZ\ Oϫy* jR_3d|bQ'xa4.:">\K/TLi "Ql snP}25:h˹W$]{;&[go@xz݅t~0-0~ڄ4Wxa"p+'TLsMwP=MK5^6_q|O;zA&ۘʚPl7z3cHv.n.ygGR"۽@^uJ HzVj~O/TDa\>{+;g}ZGoK5,#"vV2xĬ~4np2 LyR\޲Upxu!SoTw=%1]+G}hԕ#Y* A(?GS%V&q-쿉erYM`ZR+j젊jctG@kҼDk5_ͩQUbFpVc5;́#҉0TO M[\&&n/gƩfr]O(K7sD Pawo6(_VHx,xE>eNzvɄb2p[g2 "ѕX@au>!*myy'[Z-HB$r䳫6#W:g<!UP2+t;9>dd0J3i܎S}ɫF$\k,kBU z]\sKvٍaAG%G&jZ!YBҭ_: -)x x|p=U쯇Q"ÌSdŁ|6ieXb[ 2r.R5 G}|W{}iP"ZW#ϡ[*Zec>YDlΊ.&rr LifǹhJ>!_[XԼ%{G($~q!aa FtSH8ˢd.J0zm^\T4sFz\+wlȥAKp(\F%o3r030&l__P%!1(\ݪn#ߧF0 lyʹFxDoz˛|an w bBl]}zr] 7U993&zsva)UҭVr֩{.)k飆I$u?f/ɞt:'1r/fZ@J{Ci 4>z{}Oç43HkśfUsKTL\;c,FQ0%+WN/k=L=O Is7Cr\r}?Vh+eB߲aL-c?:b[V)t"(a||u؆턅 g/MCJ 1Ɣ4Ќ<"Vhva?h:soU DA+FQjK*lۇsĒCE’'N2Z5ݏ\=%6WY $(ewaGGҩax ^8;渲S`Nst}?3^mHP>f-M E_ q-O)0λ@vU}3vhGجmZ|?t&(Y skLM7{p]ƖSul3% Z(wKM-*iZ Z\\8Pݓ0fSxf-$icH2-[ГMZ7W,R!t\+Å$uP]9r7pYTe Z<)˂{bp8Q;%TBZMЏ|$y)u%-<iq~XX> EYM riܱ\Fe=U;/KDH_HfO-o鎸"22#˯XfO\w)w5&M 0f3 J3g!|Į4FKoMS "k<߄ru/Cͼ0.ԯo?"ԋDs0VGNb[(kB҈n!%Sa^*%kw`+UO;6]kK.5z1pyw RL맏WFs)#NlX!N%dnYW$ ȭ8{*$ʿ-FI)h2>+9ޯN`- Y(? Ḱgm* %SRi)8ݨ;LyƝdILvhz!1 |gw\b1:ST!IarXP"Zr^juÁ>%X(2F9HS+wCF{{e+t+ـ)TEH&#,F>ԱHA/HdHk%7/N`t&=:gNT>IR2&(ꍚot՚O,>RA-!5ȉ-KɔZ'7HA)MZHU9o ]GkT~ƹ:ޛ`JE GkX.+{qkdQ 53pDò{ e)Rq΁w Gf--r/s]/!+ qT,8 \6٫Fv1Qt-(?A˿)8T6!мM$(q?: SsG47nc1Z8f*AqX mI9Zoo=(Fۆ?D͍ ڰ\)Mkt`CiJX]Ѓ oSi:*a? szXk]yԽʿI1YGWS=Wug-,)c:P6ORZJ 3TyF #}{OoVGwHȼdۿ<4U2FW#h[Ni>q+{QNCtk?)-;9EA|: Qӿ #? J5W0m8/)6 It6u;zWKE%LY(H&xQ/y㗿7|Ţ(Wl2|Es;huq ?Dͯ94A'㰀'WGg=<P7=BP&n!_2D -[X=pل8vẕqY(WRh4GF^H^nk(N n.\9]!H>v_)oEXBP8+#f*l êS*7Qݢm^CD`4.vFTs/cڐ穆IӾge!f͔C.w.*rS#N1k='AHvz l"a_뻸d c(HfuXt uJd.,Ng=@l.r1tRS f VguӵLl'In#T~`_m;hR2Ԫe ?M@16*o3;t`ݽߎU5֌}Mp^ј]XN;[ 7ĭ\MzO=nsiL[^xbfڄr5$ppowkS Asq3G/iThߧ`<8]F"R/d26 t_K ;vkI3m*o(͘ep>39mpғ(ŠFWQ,5zaPz&@{+{xt~m/[vu.6P!^]ySDrVNY;on܋+JsƘ"ZIϬNC+}B+d:)o8d]gGAi]:_ ҳnO^藔)!I'|&{yh˽]K,J2kyGgDA: KW+]0kЂ؀FDU` Ӏ W`vld)canc"`|PL;z:~-jO jg.nC_FqvM^ { 0o g\o-500ۚL x ys"K0B} XkZ;OVbc5!y`$UI5aZ7,/'@a֊mΏ$ H&/~J2TÇ-(NSsoCVMX Բn(Hi!q8%nf F .պw=2S* Vb aSMq+Sؤ\{8}?Om)Ra^Uo(,~Y3>aD~GLN4`f.A 4;Q51H']V[|oEAAW m1M67񬛣U[\H¡KL(n1AѲfWs(Z j~KukV,I)zAe-㥸t]fs>Q4][vU+%Jxx)zH lٝRTZ:bk ǰ6t]Q"UJ3xܽ{3@yQ(O:,DC>c|(Sl`y Be:[74kVOG'VVڠp);,pо ~LKLb JM)Y6G]ޤRݏxvMMal@IY2V9":yv_e*'jZcpasˋ SHB-t'Y„/XigZE\($E Ea{82?s삏}/  5ـg^6vVD[K$ q! ja@jߙm_3' :.hgsv5ٵ!:pQ5L*,Bf8!:t(KtؾK G?8~(T5I 0kӲ48LLqK:u 툹\"J^3"l-rT7vçyQ-1SVmlD/$p?tAK*n|FC!g&NҧHlUն\Tmq+`<qsնT~Zz6ơ3\^aGSU2̡7?-t ZB>q1\Lۯ֎h"m^LVEpkJ9kc޹n{8Ĩ fY~1b1*,Vl^4DVE8AW U_ވ{g~W#۬>.|cJT KFR.ܸЕvH4W.Ln3ky!P'ۆbb'6 Ez};ݼ'94qT-$$q"Z=-3o6 t*!߅"s|lJ.]^1+",Gh F*xb8S[m}0^uP|т=_3c1قn+t-mwRLyl@Nn{$3hzż:л:a,l0xsvn8FhAE3L9c Ib |wk."L~'WE,լ&Uϊ nI71oeΤ`E肋^'S@n3( N UcAY{h*\"h M ":4_Zg۩iS[tI8%vpWI1gs#z;ΠCU|>MU4URB=Լ Ѹl!.8g;*ivp"!kh^#A{Ը`Y+OvK]痕Jk ?f/nˋdca檈\a)'wEkk(Ң~+CKby ɑLƞ}zN@"Jk_KFQTUsGpwtUM#qߏ )IV|`@ayq;(2zwJ7%<ï9!)bzܼYXEjcrTtg'%G u%@KV+7 Ƒ{3Ȕ/Sכ5{U;pQCXiSk^` ).)&U`LM3ɛtj ns^ǻUaZHɹ;ת?2?I&Kf.-~|(=:PFɂkhRcDw#G.cRpL_Ǘ@O`5h Pdgc\`/ȡDx$ϼ:84;gՎǟzxW(ݳ6Zo&th/Œˑsl]$*- mhB1=2|&Ȝ^/6)hwF3 q7~[}y1܄atZouȌQU^U_f<28RpӀoԛt0ꤜ1?=sip1 ܾ~Kw'&2dxHvx um?v~t<,P$4lG!!?6(*N S:d_'שZG|<ـMk]YA_nMnTGya|XfI3.NSx`I"}/9ᴻ%=s^f!I#,S=& ?|=SmR?!mu&F+8 \`kҽ t3~i,w g y 0Ys}V_DÏ@p~`k\d}>Hw}^5,q`-I6 k풂ႉQ;+'nS, (ןϹť+"z6U賕N,4?cTk\>8z0Z}ӟ $^ؔω5k&w{╲҈n %dU?nu39p2P}L.oSšSWJLgYGOȢ5|ѳb\Exr3]ؚ|KԘH}xYrzSN#'#s/nt41[߅/JF`K1GJ*ӓ- r=:pzRQ~c Y݋ʶ:XlZ;1#Sl-]n\"8H<-5fJ_qiK?P'F66V$1~A36B2' gߵ8;8 xѬel8Ң񒫳Yc L#މ&ѤD}Xmz.HWqytm-ЧarcfcOGY+9 6[ر͒NnY0>mƳffEplzΟ>+ljVurf)%PpLRz/Ԫ4o\{a `K03IRVqg}f=SSQnjR*ol KG.d]4@Pͥa)BрW!F?e$ Kq-e6L+u3ukIհ$w{yͲpƪ-[|뒝̆ޒg a~*f&^ xꆃ^; M^L@5Bg3.IqS%#tie쟤G; M^88oNӯ,N!߇gBH ^`]{ഫ mh9+u4 v9*f >Ү#Ӂ@͊o}-:.쟏X a{6%s>$Dh1'dszm([b7 ݕYx!'' s,={:Xs4:NX A)Gw 'f m>MڡymnK=o"­$yDSC`L5j8L\ ,E 4r:@׬_T¿l>h N[k4Ha"|CĮQqÒ2V[ ɶ0EvM+)6:k6֬ FF'oPyE4Ww9=椈 uwH &CsF`?İGLTj04IS8Jw~[8p RߜrG+~|D=^{P՛ =B,T..2.K*QDlԉseѭaH2QLGwALbŵܵiMqUA)ײM(V@8IݤM9fb[z}|I,E( ~-7H c6)[ṷFوB@NnC*{[1~;LqRoh]D捱6aPmp.(//)bd( k:Xvcݕ}FH;LCy}*7 tYg Y! k*pm٤}wАc>%,VE70!lp#Ifw3eD rW ? әhxQf};}9# +=hQl \o݀'pW~Q⸰ \J5r5~Ctc<'6)\tIv<$qTkR'Г}oʘh"w~/YQ3UPٵ㖄W;LN?I_#̔r`ڥu:hk~~_5gd%[sܟ u4gԟߛ 0jdHe֪5N]5R n7?Ǐd 49`7mՂX~2H|*K{g,Kslap8Pt;د\ҳj͋s}%vʊiDH0J>ǧ1Hf tj/;ʷU|\ +hJHtܥDz!OֲhLr>y@9dIh|]&Z@CWR+iJ(ag*k THv˟netmƸ63Kt߰*F92/;U?a#Aw9x2ӢJPRC,{W" ޠ3]Q)B$JTt]322D}|nB@] 32hg>\8*MCs1 pw*n+DX`r_ +/ sծLcA/qL0+ EH% j}PwN"i a \vYm*8huȑcûVjߛ2RZ C lАD}bO Ğ-FLLZ4mU`םj:U#Zމ^"!.?XЦb]w}dUkZ!)y)Ps92AYF9u,w.pz>v4n{2b1!ل>9Ԭz)oO~Kf3詛@\æBPQoThύ3nI +l+$ڈ˗e;$c჆QH ӝ Oj]xKQ\pOwE#+#t?J7_'y'_(7⫭_W^Z, 6AX֫0{j/j),kfpO^g2Џin+ʧGϵYs͍("2׉a`i>G- VUXSa5" \2_"l! ' a#ux Tc .g)]RhV[*ޜlw#_n{0^w $_]4VN\38IMh"8hb>WUl8L^Kgڨk[ͤT0)Z&eoX]wRWhJ"ǭm8]EQxUU.$&u{Io(#5S@X֪4xEn%]L5OM0(.[">⃫=@Txl©!FKM3KU DV;ک>({h}ͩ$|$.jl1ewɒmX̥W|N( >f4E 5:clkfH)FZdXB"[St{)+h'.cpNM)Y{p,JzZ%w&k|NeM싊iNC܊[/7 Kv03#:#夛j#=:&)KY}nY/H<&"mlT)Y&:m1 b/daA[~Y6G>q~Lrچc1+0_؝Ӓ2K &rkpܣy9n+Hɩ9ĵl폭wrz:3D{5o"p|Ko/Z`f A!KAiݶVcEND~] [Ϣ_;TpqxiS=n^-}/zjwPH3fbwdm{YKZ7 JӎH||XHQT1_.׀I㟃<.q^c+S\]"axP@#\xdVYhk.(4Yr0" 8(êˌ?RmCNăyГTyZXdmLV㊞*oCF?Z:'¡V{ ǠBCr 8w=N8#VM( ѭ+AȤ[İ۸}!d=(Ƽnߦ9$Gt9>qlNQpqQYݛi4~bnePԓn!~`;h*QNH)1Ęόhr*`o|*ˣMiᛢu,D7;[6;ۊӼ{2z S0CHg2o5yȊ^UۍUv|_Pfamr?cgM|YX:ْaH'=j/Ò?STakE#| Ud,YZ @1Snq `b_;RX*jl U"T;xj|#Z֋95M})Vb6|06Oi<Ij:J*ztځ͊A<꓾-; ~^9P9c,>|4F{Y6Vxntj'6{ Nθxl G`F&uFaN W Ix@O ן U. {q>|zqO\vm|e5g,JzRP<]aOg׀3[i [2@Is6;x*m)р3H1Rw-AhǸf|R߳ a)>q1)KbF8~Y] 3?]ܢPIUʻg2k5B$/,d:ȋCDV-QWg]UDxk\tu?Y"'j`q\ހ (kYVW%1K y eBGLrCh}FNг'R5qy ?{4j̓V awy>hO!d_ [0l镑GdN=:bQV'YiPf %,Q2PA ͚]n~#(yg0#R x bA禽.޿C/lX6ZG==f&.#nrOoWbg^AA '|Bbq.P3 -Ck/ɶTլ2XϬ3,Pu yPbҿJ9?=fYr{5p5@\՞,SyÄDB ' z@-7HN4P(%>w%3nH{:7GO~I!J2@2_*1HTF"9 4UQINyǎadEEFB'&K*h{abpDSZ 5m[N 6^OݧZyGAuϯJ4"j$(׏5fo ӿ裪(se ' (xq6."ZK쉔|5~˖A;{$x 3'F 3lx,<k 7<iR; 0ƴH쐟2ߨݏuoaX95= ]c6^ar֠Ff𩅹,T0[8е䔨R.|R¨Xr,N[yn,+MN<6<`e.wp 3$DE GnS[w5͇x (3iJ" ¨@K~RSsDt[DwYQ(d)OY'12ӿfJД|]0$~ nF2Q&V\%2Yp$T2B#VNO$P!nɛZk/<::AX|{v'mKM? b5أ R)X&=XƓȌrI1?*9"a˫(X"?2Wٴckt!_\nt۟yX_TUL>i9x%G~\6^NZr&>-p dTB41^=C<34k2ZagVQ@⑾vH82 eOWDhzDzGy.L *%lRax!(DP.$@%[aH,M&ےr٤rUXA7{/XkS;ig8eY)Xx)e.`ՄtnG=iUʟ^~έEUiAaʩ uF7FRPC}s,LݼAb Zi9 2.58׭o, hx9d=ʏ-Ž욬QjhVP%ދT0qCY~l}5YRv?έ9R`O~%Юw pf!8Imp}=Z12E?{l@*ԛ.'nvPÝ~$GzPqMx!󗈝@&}L'#Kd o1I^>ph,ׯOjyƆ]J\n[|>& ,Rb?[YaOF/%s{}u>Q5yYr9a)prHҞk/UE>5@Cp&N <-=KMPp]Hy<1ACvjF-D%͎xі]Z+$K[^e«V,M5or9S3V\c{ᔛo7Iz8|%opBI\%-_Ԑ&mo|5_Dn'@7|4Qsd% so L,[׵N},&)pTmWb</î*c6[zS&"@w2:Z!m&u)muuDɍ WHn]t61 j>ѰKn)aJjaL#~^C/ ñwb?>b#y fnz<6h 7_.(4x|#з+a?w7.y%`:O^Lk d<5EX+@AwX~D C,?a:LH/YژBS[*#AmTRGMv&&nn,dtߕ0)ur==&2N޴-'"`̟d"Eb[K\vZqI#R~ _{>ԩ.0M+Wև8]!:CHJy6@A9Rs9LȭVPfP1[umsPJ*?o-=  -0`m ̝#y*AfUG]>1`]?nIT"fTThc$('c jڽf!?(Esr&YM[~=/2>SpӶʓ>5ÇV[3jBpۅ fW%NgZoq%Zv%LU+[ĝr SSkOj`6[-l=DqQMM{H!a HwUcD\p41O<1dNcy1<6ynorr6 ί'b_K=]4Y}Ҍ = 0p4y0%zYA۵KrUf S;ܿ&vv8'8_{<3 $"qdc質wҘ-p $1iU;(Uǹq58ϴV@m;)XN'3 s<<1J)cY`٬fwA瓜9v3B.)&PE-J%0xk[g0?cW7vz&o_iEF ޕ-n0e9m5Ʉj鯬dVlz-!^nӴC.2r_u}w|C<ٳ(@i$Qc_UʨAwB7 H9 cECaNAu"tQrHdQSYYtBQ2%pH t-m `jFvsXPQ3SaS@akV]/Ny矴E2iw i|y*IR\䪭b>b {2 f,LN^Cc4sk';#3Jf8ʍ|\Hy𫅡ٕO#HԪ5iuqH]4ϤX^͒efX+ R],S.]l&tbE 21wީ A╓R·;H'A҄Fȱ @}:.'ʶbک]u|Ԗ%%o*Sq7ymwd, s'QTxcJVCU78̖ܴ.޶hv-nd,9k{\}V ([N>Pv+֨~)_e7̌Ht?N?E{4DIɧ0CV N `ʗ8.[bEC`;2=&k9'>/H! ~x@2lAкu; 8 σ<(D sŽd](GZ2(*uPg R ȟ`OVjwϫp7Y}~P%\k$GʸWz815ULs9ZY6f/^@aUZk<ˢS@[6Bߕ6w2e8/Ùy;: dUΆ%h0\Z:P(V V1}_}ٱ$B=DoఅO7LJxVWlo|~'Y ΔsQJGlЋ7]W{< 7V͝W?_2s!Bτ}H?w(g&CDa]Ms&AS$ QƟ*HH<0HFV+roJYAUΘ04<5@7p $Z^S^|l KwD?a1x6`cY#flu05ɵ|vzu }&,!]ڋ{J#H 8T'"rFc#)d€!i+. @`-X)y>Iv m2Re!1mhV{s}t=pj"pUC0ќ @XB#g.nϖos;VtSnpDJn x'RY,Cp+3Yd E6hi[t /5k#Gq˖MaGLa̢1^IP~R>d*1{Ԁt:#ͻ?Aa=NaOw}ub4 eDaPpd D*rQ*Q)A¯wTU}S}Tfq3NyzlO=Ӟ) E=Zl+Rð- . gZJޮ84"{xlhE&dv})יk_N 2][V!x^xn*&Mp5Q/1?q[>tM۱ t9뺳ݯĕ^Y@UYS\=m[@X_>$B- pC?МV}\y^";H-q#AVwbBm(#5*pVA(3.Lx?ӈM5jd]hX(g'{Tei2C's=ՉE.O9XghUvlVe'YwVԶЭc ͯn,&$[\yd8gV)~W@siUm$5lUD{䪸=K@= l|w'y D~=σ;(RGv){YSCXUMiwA.42EEw tz'Ms68X pQR3|ӳtZA\\Q`Q#_QO kV2b9~wFNs \,~9}Y3(@vRw_1+$rq? Mͼ^OJCqϞ?''U2:BxS#,ϕOUKOЦVuW2䬗e|2qwI}\`W+l7qI\ -p"Q=-&[~ ȣ)ھ.M)85NJ۹^eݻZ YIk}d >khnܲGfF#X%:_6OW%?QKQB00[ jθx#E:ҎDMFzB&~tkz1C%_ TdzؾRٵGXqPNvNm=t{>7!D7C"b O3b?9\Q S>Kd; 2wERĉRW[xlMx,S' a.U\E >0+[ݴ:Q[&>Y`[0J$owRT,%ŕt:Cl#lt'=P :1ә{N3O%˵mLmWILC gt2ȷ^0^L a"ԙ7ޣ}[ 1>:.f5D# "卙+WYP\FIaU*ħt'^|?y|1gpWO!7q9UfFwEW",&&#rF<s1Ţ4wRTZmGAH(.ZֶI4@ˊᇳOGiJK\$TXQ >ѐ'sZ?ޝ\v t(VSES9M"U0[tZᑴbbPͭIp~(6-8<*-ظ(s2Nώ]m=2^ǿ^z+xFgmpMM ^o b.%ͥ0JNˠ~\z,}rilNsC u(4u{7!>D%J[gwE^lʣ>V5bYW G@b~whѻ4R*Ј8 k䴐(N ۵r Wx(v // "c#G+O|/ȕ`ŇG?u~0)GYد@szɈ$1E%Dt\jzQ7әoH :q MK\f_Q,EmPs;BI/8(4쿡͈C A<;#Ef^;gI^wNi:fTڧP;BGԯhrJȐ}y=ce3RnJy A/Fŭ5⋴ILԹެi,t33c ,YCn5lf+y88N˵÷b%HN<Ɇ-wbsXNګxEQHE;4Ȭh%_\+fv,%\Cm4%#{jC0VH2ݨNAlݒE2ڝ@_0 ;R|_+!6a܇]V`_-TnX&e/`j#>#(t9-;yծC8eem)ҙ11=@˩%}5  ` YtDɃ1iUSHT_ EEtY 8Mmf9sh b2߶<ߋ>Cv3kRಚ;߫ٔ &",nyt (ASJ'B*_],*Y[[ %{bnfO !"`,ч XQ{~@3`ú3pRpGָ4CىD_8T][)K Gʥ~0ѺAqarv1[b4Vzni/Om#U"꧵#džmsջP ᫺Ÿq[NekK90=u&:OG/].}ZeA^N(6T*fn L]=~ZLs\yvKә~equ=HQ p8~tuh슘 ޕ~z 'UlG "&{ng =,!ZS|gYoWCwv}Ų_HSpB-`> 'R$ry>E̝;MLA" EQTwŁ^ȭLb%s2GlIo{Z!YQyκMSl5^ϗ 17\< [F!fY0A <:<ܕROd]#!g.?Dxxr{iyđOHɃ xSMP m]:t=/*LdZ(ٮKqO}Qpo*;m )typVJ Gu5Jc^jDK8%_ms5Wfs@5Xg=:%6K{7MO?"<^&. |jR k% 9yv~(&`{+``d,- gB53^ { cV#b#+Muр9iqI$t87F?q8beL2^%*ʵTZ/Ǎ;u `+w':3WTR^j_x/%zU%O!1}[P㫼i s')_Pw1'>&4 ف)P2VUa*}Ӏ$$#W .[TWI8Ҁ i[k!}vVD+ tlk!vg7jF^h 2R/_:z,SX*xykt6k7w_;C<_<= 0}p#{ "ebJ@* :MXN.] ;lHa g }8~KZLAɚJ{F,/*uqoR?1P >N䦸s0Ǔh;%Fm{Q{ذOv!kօUqyRIڀ `h! NnՒ?QiK|h ~L19C 5]:(yMS/ay D}, *OSXV@/xȅ=a~ӎS@D7U>.x0:N ĥ\ |BdQR:P%3]8hNŎd> m`$Gr}ƺ4U;J5f6( ~aC'mkl"^/n0Ex5-rJ"X:!.7u \BEٴe^`v`jv3Ygs|'CZR(S- BmW* fT > z4.^L_}o=P,9rfwP<i?E= GLKohxhHR(A@VLU˻uܑh|y<*J{{ԏElL)0u>CsQ~ĘVni:|ԕn; Gw@"&WyǃP"&~_z);%7䵅!s,ï3<, jnx7r#2Emj"LO9bX7(VYinIZmPkɣLs6t!|oIl,paӏv R{1#dǒaTQy`Oۈi]V^' A@[8ْlֿ[@}'iMp_#KvI_e1zr2"9%nḼQE$*-k 7?%W$!Nkydw8W~_8֕ 7Q}pCk>~J䒺\|trw XM.SSXBlheuNfvוm 8:>RCkn\ NhAU0SuzrZV2McRSeQB(醙qoZz&Ҋ џ To/9⧎`~~yʲEn7upr`j6Y725Şaj$DRYCu]q9'=Z>i]`]ޅP>?:Z7WA%!L.'U0;3"LkG;{wC`$oh.6 !_ /l]<9 6x*cHᡰ>^sn^UNGX1p周;͇ YxbȽ )n#T|Ϳ>?7G%"DOVF=lM@w * Vn2, |h+/g~[=49fqxvEm2aua{ߒ:p?tKDrfpH! t-/3[Zܳ@C}gFVy"#.]o2jb"UYH6DU2# Ov ǝQNqыS95n2v~?wTRKN=<•e-W4HN\Ev8t2.>?n:b $r=Oht5sea94v)Z:\̋A#{_& J&cz t؜|S'o2e':w2hΩIas9@õOm~uGL86V]l3 )ZqbrDuD.0p0ϫ倞U2FtGɾx!M_1ّ%| 0\)ra%.dWf_Ψ\Mlm̮@鐪ķ-彉=,(fJn5'1H-럄gH. 6mC;:u.|`z0,=ZNIeR?Pyy&f ?i|3ddӫkLT689Hl,H,MH@`y4 *soQZ7'مOb)TނsHךҦصk5vbw2Y5TUD,B3sDƃ5soGx[" >*Map\kyEy=Dt) ˆuD6Y>v`'׀:w#+>dV_R:6ws!/~cAz8\zBY{ڕx8Ad\^z~"qh9T4 !+1J%Y !/WL8;Uc/$7$NS1onU.I5>²б1溑 Ho%%^ct dkDܰ`E U jIYfIB}Z)j ^_x|V183YW3-PEgx1t]m-ϷPcB,{>=-S4]BDg #>4Ak*E~nr@d1>,!M(A+=ÅwL6|FyOj&͕7C.P׮W:Qd840!ȁOG-Ң$ /1UvIL ?!SWrVc7;{>M> IGkJ4 G&ׁigR8}_L%0\$ k+uqM;QcefK$"M"{R<6wzư% ʿ]orFvY"JxXbW]Mʥߓ k [t+H#bgfu~\@|^2,TXLiow=At \ܻ"bC˹ E`4bBSx$=;k٭|dpY x'@JRە6pEɳñxW+ιLyIean c^{CRhC8: =]}#AϧqE};I۵Fb &ѭ<.KR <5iЭIĮ-^u8ʞɳuD[vܜc`,[ԌUHa"JW[B]X|7%B6oht3uƨpfV wB HMv1@(3{BdO',SG QU}: #MtdeIR)5>sg"ЄE[RE (S<9'Z `.2"[OySZů1*D Nq< 3Hкƞ@@%` $*.LQg:oO n8! β|JhZ-M|<+2|6IQ>YdunbҺRFC[yjʂ5{S0U#nv4 0$wo`6B9zN߳: !CVHR.-B,I|S[Rtk cʋa1,LD.-^Yoq ŽMv.Ր[GgaY(Ht&eA+s$먊<7ygVG P$X7lm"T{<%u]ōutuv`ZsV.5fHia%ּݨxMFj:e5wE(^gć9;q'S0둿S8>c27˺E6RT<^]+KK/HvhE/{Ms%c yt֗%^ԶxO't/Y)h[1b[Jʖ3mC}$,hY]X' ./y58y>G`g0E܇mXhjD|m o4E4j%>Ġq[p׌D\vRQ 2 |r*jCP{3I؂h~]jK!22Ȼyr7!< 2.npg0X;Q59HІH]~ P$TZKm="a41gy_ntPb5@-x\-.~GŒBW\35*}pkYHy&knrһnЫ`kGs)t?Ov9 23TWtqZ.#z7(|0|H)X&'x=C:,hrP_ܽ$WT ._u,|ʭw};(Ѿ.c-F=sせ[j0dt-'e :-!p'j(>\ dCA>_ƑvZxZrґJQN n#;s5sjӁu?Z>F{amE{&9L^ڑL/`awv%0jm"rEK|σx"&%-A$^),I_$ OYTAa8Х,K~EVu60GpԆs.k}"ho% Z ;͛{ _ߪ#By `4} el$=UE&5ɱdX5Kxo2FVxD{꧈2.8`zK3#%JI.K%f/Jo<Qv2oŽ]aE)Qd 5ؖ+=F!hf遮V8 qI߸D+'!)ܽI5t*q E5x"Œ6z3]F h?PJ`o䇋YwV@ǤJLf)OSf::lKApr=GA%KS~(8/\=8ߞ"4ljfih2VJGGlWƔRE "k#7y1E"~Q߆nޔk=G:kMf&BvWv8 =9`KwGꦡRfb[kws 'q8`=wbSjp晿 _W׆r($ 0)q󡇧zcّK&(tAEbjpIEsH8~o},*7Kv;(3ՌW[x ]EzԸ@{P/T>FRw}?T1FCL~~&#?c]ķ T xhq3*Qe˞׸+?$!(nA>ٽs ӑɊ]U5 fذoòvpo IWkۓVN!DJY(TF%Pvf"#ސbaЗv1)&+aA#{.\ S7 fu< |Y7mXs4WWr"Nbk"tONG1LK}nng&4MrOp~{lQ )^#83D :4p } piɂ< {ζl_d@$,cJO_ŘC8OnUYmZ$q`. *p,xfI@_wCn\NF͚!23\}/[0[bbu{FTں =-0iVu5DόOd (;H|h{#TM`1X( աֺ9|[:tдS.W>O@8U|Q8Ϥ1pXc WB f3X*ÄIAY-UȲ/5V..M}t $M8phdJW]3LJ`=qGO*j%.L<{Q&Y 2SƸ /2kU^s]u ՐD9K\S,^A?!9_ˇ`-.룮:#GcLL Ls.bՒD@[VAi.15$k)'TubmQ)ưl.2C!~ۣ̪  =.O1c&*r1((] HapCx咇6 x-% [L\\U9m'Zԭ:}E']yZU+c{Nط qTv*L)]3i}E @^Ϋ`V"yQ}whvP$hAѻMs{.B 5GfEY fm[>~A m7ŲvzXP(=cڔϨɳdGM%AeH8@iZa.X4gЯh3P\#Q}?62cLwAtfYv$9d/剨. )l`FQίuQ4=Kpr =ĤDGF?Z3~7e$thnvHwV@c+fo0si@ *FM벥iߕj92 VK-* n'XoǞ"/ S^oP:Ox'>x0Sا0Voo AIh{a!p~O7o'SU01wv01z2^ ,kKPÈEXR5b(k:fq23KC/a$o9tz/dG8>gER0.k@N0pwOm N 2M Bi/r:-a`DEk.F ̂{_ӭ G+`<^줼mݑ[ӲGOxvA-~D2Z\~Ʌ/ֿw$$dT y|~Gbg8|(x)D Kԧ»- ԯ}z:AicvYZ_f>N},e|,&yo4[:5=رe!2_Sa$Z-&tͯwK3d[A٠NZ;s2$-hܶ+nPd $X+@0zsU9@ԲUU!;ϖO3s>9Wݞ{2o$W[I%r{tXfsCOzmA06SDX/O;Ҍn,8C%yI5('H[O/r6w6[R0=(ZEoH_RJQK> e<\t_uoyX[$MhhsrMP喳L)h5HFgj}wxݥ zr$7tR7!EaQ1H#1?]+Gx ;\ Ԃ!k&*,"XPomY#:j[3"RW%$zP"z rm[tXSh=!$|(z(Nf yY75S0q̣auM WSBOf!픋^FQ8{L6X!a4"U%F6%#" ZJރ! Z G >&VVՌؙ-DϚ&,@"\b\^POLy|Rs m!kb&L:*@\ lB aAhA;7 ͐ \H>ݞ#\{ U>fscM̃RuAGe@ ygp:M:&+Nȣ 5IC/E\ߢ|(H omvD.m7va5Ω8!꥖K*BWpJ)@)zQTš֎m/,O`)̿jl ia&ze~8 cԷƹ{e'.+3kR6;"gA4ۧm  يݘ3Ki٪)\\Zs'F#Kc\yT bE(J 0K{CW*(\f˻NWpٷ:rcs񋾍:k}Ӱhm(4iMt St` zv-]0Op8? \^ lXnQN+)ɛ+OU >rs9@ޜhH`7E = ?sܨ,- P"[{,QtE~6 Iً_䴥"'5B5nQHdQv vzC<1 GZP LOʴ1ⵔPlFiޥL6!drH&wGA.[$w/TY~dmӌ5+^UO29aMҷYʻ$xt*YB2΢ЮKU4p9z0 o}ꬤcM[g~cDֽ)R1CϐmA8rHjXP ѠJK^ړr$ƶqAG'[Ul" ;a~Jx-ڣ?ߕ?n;gZty/ipK/i丆qj l8p = GlnY(|>S]BTcAdeDq38l~[eSvaUa&} $<Cқ茄"Fz8EKjJ~;`y,oa/oMI8|RcKy]+ sa("i |;Z Wc1w+>j Bg?_BĨURU ONBiBK`Uci aɵzY[:0tU?EeuY:mx-M§AgڍoWAjCU5E]¤Bσ=d}uP @zNhOPZ$'~Zm+8asy;]mZƏR7.Lp`oSXYS:\ %1[=p xi y 6`.pպBɏ$!!j=]'J6.a q 5*(#p=*^h47K~|JY=Yzu6~M jc2h#7l$եXA1ȶ , BK}ǔd>i%B'UH~V6&|͍'f]Hnن1ZseUY}^Q T6BlY#WV\iMۢd-q"u^;$+C+O``O{ڎ4[LG\Ttk,̀хrZjgE}txV&&iл#{_ -*L)PfBǰ@>|bHSkbl,#xjrd<]uֱNҀn$iwӮb=j-{ˊlnMn |Ra)WC%b|~`km}Iu.bFn1ԯfa@.=2fFߓ[6&G<#\:nzB,GlǹNReq7V+ #Ü)^~d]-v|ripzroٺݪ^)>_:f@nUZɒXGE-ݣp\+E6I@%}\ ^H+R3q#3y p@.@"jz*FL{[i}Pzy>$E$j4F"7{-WkS_0})h#.gҒSuf',0+'x.2_u/@:ԉNM-h % )%i2m)$}g>JtjI+hWj讨ir_vܸwE ʴ5>cSu\@;oE|OI!W\dk$>*ĈDdq=wtnk&<8ZSjoM< cp(-8f3Fg5XP4tN:źh[Ge3,_Ӊm^$ mX!ߋJt3Y؇(.9αt1eiAWe7;)n4/ aM1?tlk[ˋ[\kʢ~i8=3臽M) 4DxۮEwz !mY|y1^۸֙A2avꓢ}A%(|4d#!\: fZ}oI)p,-|U+hk^"]婂ɡE?Vd?M.κ2[6͕Og=5cSؔ,-ړ=>)/:^Bb@-sL:ҝX`CLܭ^qQ/.ߠ.㉂p_ I͔1,7|#3p`8z5)1^dERK(܉FjK0حߔstT= ,t/Eu7K>wb|_!Gpl #@gOOR7u/J:"un.n^,GNJM*`ź޽'?򊲠.*|R  Qn >,VG7>Bo](vRKNx n3po(8^mfO]/`5(myXcΠb\ē?+Kէ:K~K:<ɢ;TJ(yōxOy*۽]gHKl\W>c9Cݚ4\JDc2b.Ud O2[I jqRƟp Eb`VW735) @ЦiرsMԼ!,keVƽ=᩻R:ڲOVRc%>F=jb`۷O>%" `a6;Dq{Nӛ=vqY"ԸfBA: ;Mj#a`GXhpڈY$qyFd+<ԡ6e m. =EztY֭Ҷ'Et5KH:sìP wEqHggoCek=t:)Aѕ旬8{mgl-0vP̑A:B$I+Bzr[5(1;x%i^E );]&]uwū2,a>^Ce]#?d* "qې$cct1WIJ2$}z5Gk2Uf1Vk8 f@<7SR+]ZK˥ڳ9r;Jb z ~ \DĢtGrWEIQ3k{)^koPJ94"@N!3[?=;-u,[ Wz.W,,]Ƃَn gq!C<#=۾μ'QVs,%dF4/6դ):3n'Y,2j~ݒm 0rP"/"趁ޤo0-[ zlfN6xf)ՉM&|<+Z7s^`'`1 w0xl=U/u&X/c=w'NW2n<g)INmsZr`y:4( v;wJ]A\t;}MӜUM 4wdM4? M ){2-EiSSY iH줒1h;] M3o*$<"1/yIgHhCpw 옩ׄ5zV|cyѤK]&9qR Ky_D]tN  4{/3({AӲ);TZ4XtN@(1wuA!~k)=}Vajh_fG!]óqY+,"Vpˆ.QF>դ&Qb,ELTV*'^!+)9#vkH4]IK{ȃw|]Tvyߏz.qKx7N%"RFf!Ū)y:i&]1#v>&+Jdŗ. G[S{|1BXankFD6ӎgGdJJ2sX*/\(d|̜ܵͰjzeC_U=m^8<57Suf umh{KУb38qTV!QPHaQ0:߲<>Q)~j$Ǜk2P*5aqb`%Ŀh)#ZzP9D drhiN! q|LL&: w |գ-b০M3IbgXptݚ\ǸLi$t yz\Dd|9e7NYK7?+[sYT0+9\/SE@)ÛZX܍Yu&b>Y WuT]J!:YF]sMKg0f =z82؊ӻ4Rm*Q e1ݓ$C#t&eqse VbS@a* |^̷) -}AJ oV]gnOJ@a¸0uie'ڳ]DY-FsW ѧR줨Oȓx^˘P_^;9MedqygU*Mjrv,Ǿګm|o gR?:InDcӚ@e-Pt)7u<.vϹC &R.w5;VJ,PPV/ױ?K3H4l5}{Q*ylmrGji6BSRP'W<:apC u9˼_3(14jMiZw5@!`Qb0ecQ754ƏŢ !v2ܩ=1uѦ B|Na8@T#h_VgzB2+E/^l]g:BfV1lSr`M8pXAw%%  ZP^!܄z9p h mXioJpt_šև[dٌAAdl03,"Cy'5`?Xl&|59$꾖|gyFG4'{&?L*۔elQMA)I"#C74$#b0=hi ϖE3,\;9 jw0k,ߴ c~ e@#uPnaYެ2 @Y="1hp*!N,14q<`bɤ^/p(A xxU&ߜ%L#KvTdlABz 8ꕁF6TA1,=,v(z6V,3D LiR8AzPI"m#ڌsa?vX7\k:ͱvbFaAkm?H E8]LAo7Hl7RV://5y6* mte䥦.K"y\2z,w0O;Cʩk$P/L;` -2eVWFY~FP±eb{ՀhYq6QUu KX$#iu6iH˞*.XنiAMt}O!xQ05qIdWP M!n 1wh`a(Wx\Dɳ]ۂB^&' lT; ByR϶u 4\#:[-}^nNrZiV:6{Oz.0YsŠ\\`}zS.t'xQd֡;bm ٯDɴ CFKٓ7ŷ sjj(yQ\0ͅBDq(v 2xUI,j!U)-wW״3zI@xb# rvno{[[{cQꬓ8 ޚX`5z_ 0Sp51qEBc^$qv5qV6$4')y!NE-(*Hyk`%- qU ph'#͠'8r ५ cG.c7nF+SMbk˗3ٝz+C^ {S,:ɀH #R %nUkDG.WQlm. o3揹 U9?O&V+Yt?@ӲmHn- AB&;u©t+3:H c@$OiX6#T@4x$cq 4Ҳ?abJ&1iw|nRZ9MSUpANYrgRU7*:xrU hQG΁9|>HY7k8  A180ڵ1)Drѽ0ngFdOW1eF嬥d/8 E? g+2O4/rA%0YX˗G! Q0V|RrZck(KY\yL_䏷w5NrL je43) "pអ$k͒#&9 s9J6kFy;/}?! p_VHL0Ypl*ӣ9¿Y`P3 E )8:cvX}pk)6UeHlJ>(TAq3~ 8 Fc U+e \՘ 31"(SYRs-0mET~Zd$m& RyϕEWs0z!\4*k W}?!6iXޗz%'/X\jBK8Psw5]] >bWCtH szWfҔ/%*n;(\+{nCPq#rX%F᧲Sz85BwEȷPte8-.O&*!kd#ji]{ruKjM+^`HFch £H(!9DT]Zdb+UtP>Ͱݲm[W' %0 <{1Qo'mS#YuTjy@=rIQd 0B9e ~M e$,-bj,]A4ѡ]c[bP˙PB<F%\hKU~,.XUGt7o\Y/8I i{M2t')\ïNGZu)3Hd.uqI:xnQ8݅8PgZrc Jҿ!jaBu9 ?ltUc/gws` b&G'Er΅eZ7IZ%G#ꥱj`ۗYm 6vGjP~B[G'D Ԩ>[HAszmDε~khm$[iSҒ3XL {'. Yo^Q DJddN)IMt#VOu) ~`P]1 _̮x=q&?F/?@@AF07{0xXI*keME=9 |~r9]z!틗mXΔ/\SKLgA[t5 jIGQߙkLl -+\-܇Z'MgI;wgzF.yvfqVTE n;X1AhDF:kUb&m[rڀ1ۋ1.;u&<2u5ƅ"f|»_B&F= 8< GHˆ=&G hXMruѿ2yW=RS|.>s;yQZJاF,\M9;hQP=94QҴkH[k0 t*!~OhwDW5ȤAR,H?ny=ҧG]h-^3PֹPgE%iXv,ͳ\"cF;2<5}UUrU AQQ>ڼ <N g<架kfHT7T)KNm6DX;($) #Dʞ Ntt54n;#LYbMc·mX⯁PCXɕqC\@.=ď%ύڟw@aram:~H>O-v9JN\''JL(E~zdZvu?|pnM O&Y_k{ ltuEi'gԯ)@I `p`]̺`kcRph%Y>,>+d4j~Ij~Z#arnÚ>-8D7!(g˾%֕u G6(A:6C2(TRYioz#Z<*TkɧåPeeeV~&=^j'S/y;Lׄz{=  v!Qa%?e=/Aww#;q*A$SwD$wb]Bi(Hƕ7V-KATA!Zray mOgY(j7i=7% AεeVFI#4zƆW/Si@D'`j5+/qk'R=7lf18v`Ǒ褯2B(g4A AG.\5ZuJO^OJ@L#o>`g$=V KZNGpb*#HήRFh0 i}'De3\4O[I͂.v-ӨNy&]͔Hs [Rn~ l@gR dRB-֙G&gO+K?IN ۜa(׉XT-==J :D3BS m%_#9zQkEmFh\6Y70ʮ\tAtTF{} ڙ9>͑a=Wѡb֗[V+iY)sHgerp4F)tQ7\ot8?ヺ (A$`}}`:l5;q#st{;Kf0h)"F990k$yÑm [WD7>@2S"7+D>D5~e|a}'z~ `˔MI*1N-NQq)kO_a+1Y0N33= [B>p sEqHYWJ x De#?'$.Rf-k!+5ݡJ7ht9 wA” @b'w݌l]?KKm6KiKaY Pl& AxUR|(Q~ =&GIg|%+^ ߻t.qI wm4('pZX XzH~D9?T۠UC! KK; fRh͈))F ?Ht G]l:d'ʞoVOf בQ(ĥp y&rn[40. |k>܏=11N襎حbRɸj@q!n4\sA6(R1jv&#1 @$īX\kKR v#j{rRFBVyRwpJ0Qds4|&DWI>Rg&܃+b6BuU׃ ,0w n 6C V O)(DP"v5{v5> *S\G(FG^ahRi{N-KRk4 )~nO}Ql5$VWo!ΰk?{2i0W[S Bq=ÜQkEȵgLX^1䮫qfi<%ை![xzJ1ZQ\ [MmT.Es[N+N4iyDaCC<f=;cDx1U WnS1SS9@9R/:2"ܻX6v:UtZ64uTi\ ݌0hTKk8%51b_)OR@3mݽM/eԙyS/nN>_.&&Q@M/ڧ-06s6|pj4@At*>++ުXF{Rg|hfXIGɫ?~ZAXR'J~|-55|ȅFD`vt \\`NjOff25Z3 hQF[)7)sӹ"n]02i\2zU[C"H?\@YeA7/&-C|3EW9#8-8JK`[J>М'hy"zca?T XZRRmtiTxQMG1yɠ@7zHp;h䮘ub.{8)ݨtaS;aoTF܂1xjk` &J`'#$̓Z~/j&t] n2ḐeȂUT Q|N^sأ"q"!{ ACZ k3DjQƇtyzxStj&Gx}Q $dR<.e8CMhnt#;fSx|h$GXC_#hgƑ؎\ KmE*$ȑEU+ŁxB)X.N*2)"kvfySuÀf!kí ` ]B#ܔ1s䮸(8$;J" \lrM&6 w"*9_,,ą&HN sR0'\%"s1gTỺ[@>Y%u?hEX[:?~*@lRY +1RfpM' n*}~|'*1`0O.DعY`A y|A;E{/;fcyĖ" .*~q{.7y3e>vSfyrTңGrU"ϣ=EY3P24RL{Q^(^gdrrQkEP+m{]zF%ua~:~_Z0ʢtgEɂi7S%?m~uRM:±ذA9T4=Zw63G Bp=(\ũpɶMe+ O(> h.JoҶ@PGv ,!aH7V>&lfFF *->Y&.{nX Qp$ُȼ*ᱏNak N.|AY܈'܅YJ}ZUP~!.X=bEB 6_ aԺC'U-?^ Ve2c09shߥFBo[hG;ٴaEz܆kȈ%, d10ooG5R+YZcFP؈}!QcbW~ʂ.i[({B]_N(l윻xXte`.tV_Pi(MZ?};dӊd) [} ] Jd_@!-bk>>ø68{]\F"oOb*]" M|^4[Qubmg>P ҳ-&wSr+ɯc5xXO v&x(?ɇϴF޸BQFr 6<mÆ 5wg^bSvŵ=bXB뿫07wt![PW-yZ~Z}^^#p>:?|'{F9TXaνDVVumv9v1dMV@c=MJDOTϫ;<DŽmWhC乎&BKB0/[cgwKÅ=uQJvrM%rLRJgs^znܝnQ )Rhl ͞uK/ŬDMpog*WTiεOU;o8&9ǒt!B jOf*(JʣLzVʹ9 BEIx61eגIÒoLEPNN)ɸ%s*A*mCXhel`2;kD}i+L Y>۞BgTߌ@]RwUZ]5+z΅b;|%o#)MO(V~>|@^Wrb}06,=Jm`p(6W~G%&/wbZx R6`_ҵSLPSu^]k8P ;xw2))̅8]AOy^jos{ @:a kڤ4lGulNš-[)2dzeQxvm8vR4T35(OL_{E}QOGvA S󊖽\J Iro5pZ#lJ}0%@cOgM.T#9؉#u5{E^?Z)vi`gTb&Vu%sonrU.\irafwf}?lWKfrh0T'ZSiAPw*+ TcO } XX~.vB=WƷ{H=C8".6727DC~Q9DЉ5ms9hs gq6QKK:vjԨL} e,tA>_SPeTev=\wr=i& ۇVCGsk۫\ %Ǝ8/ E2N.X^\_ =6Xq;ا83QVTR+Hi[Xwc'abǞSE.6iD&Hqp8zl 5w5jT^З2$%0} [m!i˹?}>^('8H+Xiǃ$ީ[bQ#/!}@<7M8!{* 2GfpmחHX enn\cחm-삌 }Pb-y^jT3Bfn\Ey#loHaRtZ ^Ъܺ%@oM6ۀшƴ\t ,G} E$ , m̻N}8$a֛,9:x2S3縏uyzM#m?^JZՄ1#?)QNGzblo98wB{1`_ΡTd]z(,6?J6{pz$F+2q ~Pigܒ~m}5@MOE[~ha.5)22SC݇'8™pG J͌~"y^ 'n W% +!Wl.~3}0]lt He$>"7-~t,"zt  #Yl +2aSx&_1Ym B '%%Fågoݺceov7( }ocGՐBfK\A Cj yxڎvUgk#Y0+.nv\xP8heV X.U= mi#vGJW}m.;ISbb>GK OQ\D=^fw{7rD 5֬qq@ ulvnUzA9,s¨t! d]LRvƐ,ܹ;cۥ=#ʜv{ <2>Y) s)IPfǮZ5Ȇ1wkؐсTrO_i?gX0mI'Jr  Axٺ:ѩH.eF !e~_ӓ䦌]F~yBf:#1WI{\ohU $h3cI=;=i[ӌaw4}j8l.VXi%au;+Xy?Wk:]lfy?K5-[, ϯw.4Rωt>k,)g@]`x!z5EBq]x,2Ɲ8@k?W=O:ִ?6,oغF2==pChEiۥqQPnA|(LvpPo׉qА;78i7cpC[*ӁEܓQ`SŊh2Gr>x^5#Wvr5z[NpΌq;-VzM-#G{mGk@Y ~@_};UڷA"k3P~4\$Em/$X>7'0rzZ8Ƕ#,܏D|zt.I(7,i, je ۚW֊usA [xK5jgT/-[a]pa>kfNB{PAu,+@Fy*,P.fPaT`- m4˩pЈwA]N?plŪ)AeN0tOIDI_RHϧBta}x+6oϴlM2,nYP| ]=uѐ;j +AEaH&lEP2@ŅH1=ND@hלyKUr8,'C޸>f19a_j5y8Ӡ̭TUf V7P1.A7/$:|}W9Zf(C)ңy,5s%&DfU)Rf+Nz\\Ů B4Lg&ѼD|=0nOW OUjp8]`I1_^ |,A[IJP@!4EoW YH԰nZg1K&[P#dw]Z"vsb&tnq`Fhw߄aO}(bw48X{?d 5+ʌ5}INgc-D 'DHDc謀^l0;|UW4=U6prITO %Y5)I7dK"GƼA澑z[哘m(zZe("@~B  W*CSF2LgdtS3D"']E0&@~HM+yg$S;BgrG'nC^GыsNdϑλL{KtQr Zo B}36@R*BG%AٸћsTdp*F[@)-[NJ0Z4pT9*RVÅϴzͼ1|C3T C ά}L!훪C1,y"=B(-bBߥ! 6hܤ^,imĥWnt`) 1י?_kU Jݽ[!V)tС))$pvhO Uc9'XB`_ْ &Ukki):cܟUbX c4N< >ݝ4a7_Т:-Qϐkn ]s,5d2a~4V]COܥ.ξ.K<+IJ15N>WSv 1=ƱqkS>ڎ _A6S;Db(-ٕu'nacRtE,:O`wOL4r㘯}U6/MM\p.A ;nNI݆nJ^ +8 v)mGϿ|aݢ 9vޖ/҅>Y7iL!̍"J~>Ӄt4w^et ]Q $UP%@pynED(3u*bQ!y'hfI>HOgpaj448`ɢ_4GJfTH*BRj\5!nx)}{rVhΒ V3QGHAS8ϸ=N0QW6]P+7GF5"P>.1%2Z%<1h2R5Db4؆a A|טHs O~]<3úϯ+RX#<)v= "NKT+GuwЃ.H>Y#sJH;QXcGj# aTZkLzP973Tk-&:֩3r>7!m kh'8#u8g6C5;JvoV]:Sì8vtOBlj\P&%yO9./{ 8oEsI5좌[Ayq/sZwk`ZkK ;+m(gbh͓2> pS+#vAWJ7 8V<hd}P8a 19XQLjYZ,;iB"˹/ W8C5˭C*1py(D'/j,EZ(S&%LtMlS<#g:V>L.X|X^'^c*S%4߮^" jM0c  ~>|RGm~[-w4nQd32[{zTM}RGN~1zQhmPShRl0&Tdvo?O- CFYvYG>k7n8d]ٯџ.ӗx/Qnk|7[QQA$c/0 =43HnEk{5Iwq>ȶDIӆm ~D3I7I\mA*ELcwpsJY(BRF7j˜S]w9Osy~5&1.i.I/4qE1.ߘ"`\kJm<ޱo;H=.󙊠xIar r*MƔ<%5CH:QxٺA޶XTCf\pr]йnsؐ\35p4z#RMSXѸ;Yg,- C̐ZǵtL$~WЇ{t >N8^g~bJ1f4؈QF(Τß,3@V^[CJ֒&$ʙc?VFJu 8)&hs^x7:` O11֌%8_9˖S:ل,]癵@c̓_ci>^]X"w0hCB1H Ehё\"=`R8G]zQ`#O/В#2'&vUz Ф74^E+px!2}H\_"]gn'qL/2iT}/3o@ Q`ՄwqwIϛjP}׍%=8k4Ke=!y+9yQ<‰ $!^ ׸}jtS}#z ,v1޸\숍bȷT )MPN˫kuXTBPhoHB0fdyW-D[(R|38r)A ؔv+S64f]eAbvfuJ]X.p pw4hw=YFH3ֱ1ONt63Kew{w>JVǰd*8Ege:𒚋(Z$4`zu_B]S"Ւ7ι٧Wڦ=30^,EPG /T'?Oz Ry_kTNَJn>)sR28^AvN+VrJY %6^:\hæ" :tuj۽qhQ  9;OW^$nGEwZqp&!>L56Eg6A` T`Zr$}jJ ;kw35F)tz3ST?؏,`b@*/D)Nq!>7D귌~aYE5f}.,"pR`VR9F^냺5H>m|NF@e;VBc9[ӳ9SJ*Pcif1[R>k4"5.GL?*-Hun10|"YYC9 ,;߂̀'1yrSMz,&)F-qd0?gɢhJJXO.Q(Dod8W$hԹ_m]% |6_9ZӲ)FaP(u'5 ~R&t2=?cMɚX g![%t2$)64l-IYDn5{;h@[E♭ެ=%W&z*PcW4_i#9\Ũv`0A*SȅRmeDSW-礈&n˶Z5iϿ6<4(t/b6}]ImQbɎ܅ Ίeq齦iΫ{q'ﴼ\O+"~ Uj 848z!ՎE ۺ3 pea|2yi$qĎf0YدvRn  b(<=$A&|+%_/'6<_gkzpFT;$ N'%>-Hyh&%ʹfwjKn*Q=zYI~YU}aLe_T)0x^A *0Њ/YQ7OJ&kE=셇ۉ.lI@]{ u5$<& .1'J 6c<*|h1##LTqiu#ښ ws" t ULߜ h3|-|6Ҧ")UU^}mClv*5{{=8$(~ [JDn%^2>%eP{G*8EK@5#R_4{SH4~(zoyh \3ޡMtQ|_IlXR_-;C(\q19A}evSk>9M`"6"+Z7bIR7B[P@_uf pw.tA򯻃L3Fem7WvE(k qCzW6Fsr OhK/5MNL\8 xB?dP.7Ohӿes<Ҥu|i4tdm5)ڂ FNNPByv5}n5x'_oKy(yI!O3 \} |3y Yb3}*5InHR1Jk}43;GNDQ٢d |&>5y(xXG˦Z>+\ }{ d׉eҝ9H qd2gᕕf8ɃjWB\W?یQ"rX9<2: |<Pc%1щg)zý7&@:{d#! 16&Gſ)!ЪJsUb/2OC# ۝eіX,Z0R &>yܧmaTUI,S7]jsI.,p4#Y4m!lvW-DGW<;ݨjԪ,`+C&6ΐLe.볋wٛ4+Q;O"@LV`˨^c:YbPd`I=v#*t螓C#L洎f.hQzIܛ>N. BDYE;g{ʔ]3.Gr~tmmQKjHIRm=Vq:s5f-LZ HiQgWQ#gm4ñb1aݕ^E"X0&a/ z1 蠿]~`S\9'-5;nÃX1F:z}X&,{Tk}УMEsȑۭs䒃vmH*_XFP8e*NEiq~ߒGKRe!d4|ۏȈ9iוf?{4ƃ{#'Wv hɲux5Rs~px0<I\[e L Nޘ Y5eM?L, DZpn&`py1#Lb/ʓ( e's{)lՊ1U״_޻x|^6H+[p6MU-]殫~xeΕ h]"p\VŘ_:N( )Iw w3# c!,B3hCTg:NcVM( d s;yLEA? %VLo)݄\{7u+R Zh.FP+'\5 d7Ȓ,["Irnָ !hD یl%D]4흉pp(mֺ]=]TuOXu{H"/<0È>#fEvB~R#M/^?*e >Sx ORP=ϿCN"M#sLv\iMjwyoT Q+;f=X{tE݊/S# T@ K}g)|"oK:V,4 6LV&(k^6$KF.C 5Rj釦aœFmOπA$l(& mV1 t<_XҽӋAKXR+#xvJ'~EZ&fs0c7¡-D'` $b0fJ5ƃCҀ*EH!2Q*|_w;8ApK,w ~3vxAa0s8u0i7Ix۫亘Z)500Er?)ubFƢy*#iGD 8aB R`@bv“q( L_SRԝ] Q ^8z[V95(!tmG$僰Pws hw"*o+:LjoZcW}Fq"lL_Xhw'sGh+#n _YQ o|y832q~)1D{ .$DwF,&j?ai@9/AH@h> - {Uƪ?<~j*A&[4Ŏ2ofhNSCz#gi+!붆P;k;:%/nKeӒvuE<U<>a~S9y 'd!8Ub&K7JܝLGS`1FӵRK\v-AM,}[m0rʞKDZN)/-+g]߽>\D;?1Hw=EJ} R-p!u]P4qBE- @&dۮgs <4U[p=i K(@iV\lqK2u½E=Z盒9RYnB_\V|0lRrhɬp'Qs9zrJru#&h?2@+oc`P*#pW(C4lY)Џ=]-o_ <ُ~FzƐeؔ SUF`&y`Zx'c#XD }8UN궾W.I2l:>|88 2V2^]7Ny0A/j;R{I0G1Cz^5L)w.'1Hv:uAVhH_&o_Ög0k~Z% ŴL1{QYE'S-. >,_;!(#[߯Á~x V͆1W4$?$ ބ[TlKҋ t]~y&Ow_Zg y-]o\ۘ4XNJ;|; F7>IpmƖѮ" #l )'!͏L$UMq.aIcryvNt#BM(B@ % @;5]' Up ڏ'ݰ3(,[4$Ypb܌7 FGMk1*`&/( !uy-ˀus[DZ8.ν~S+en( SLS1_}(;އjjdv\HPc~05oWG|:G{t?\ٛofF"JX64H`՟K`;V_CCqsjx,xɮAr90ںH"èOȌqXX󞼘h DMI &V 戞Ei[ܴwyߒ\Ge= qfER9ց m"EꠘƒEOԪ.;>]'䕹 N9`3ovيСF=[.3F_ϦS+!9m&POLSBt\J't;QI>7o~@"ړiBw RmA}sp3$Z m:mD-|oJ UX!z NiAwmH C[I-Ku/J/D6Ib Q A; }_\Bzď([w'Qbɉ:%73)U՟Q:6lcq(HC1^(llX:v79tSOX^9F-K@an8LFۦUA,^y  /& &Hi83os! nOCI:Tb:41 ۔IkTu@-h P+Ke邴ɚdi/P('v̓_4.Cu#0[^K @U=@MO\{ 1S@&3.*s }Nr@P߬TZgrL(6V{x!>O<6jt7dLY81V-@GmBߑsw49QqX Pk>lp 7-hoO5}tKVEWf{aP+婈Nd)k!S'rRu腍sPēپGjD;Z䦩] ,yz]ڟ0@A*?3=qkO9-wI\`9,1c4;1[?Hvcl]+Q]#{b6eg@7w*c3YkJ}&n )9.-)BF7oGCr3aM8;`}7{~9NFs@_eCQ x(CJrBw4QHw؜=dEt= {,dMJ߁AhcsA b4 ]JmELI<4 ZTDzՐ7Qe '\-%: ^aJM!b2u ico5qӬ/UזeenhE5?@SlL2 \(6Ne(%kgR<1uG s7G6S`"YnE!)qms"H-0c v xMt*X+ =iK֓%ba餭fUJ0ĪXŒv+>ԲDg aE@9?JLZauDRBV~\lc76 ?)ceSD8յ㜝uW,1\gm ~m=385i`0UղˍLtaDd Bcn3Wͺ}:@M[P#z_>G "iс_KhA9k2 '%DxQuI[`STc, ⌿8JFcY|Lh}?l 5PMnjx@r?^$d a*:/u!3USIg6r} ך4QxYZ-?=ĢX=oFoUrB`yBg6 wUu{M_g5g'S Wc2͓vߨI(ȒklsI)P\٤ ZDțHM)Ye RիN1ĎD@ `8K+?D 5d-:91[+JE2?^!_F$4ݝf:F7mf H{hᾬ3-iA%u\߀6; [ mܸ"l 䋔9NVw^j4K N. DDh5sbɂG zcO `TxEtلO:+@ęH[=lbE<(`5#ѝA϶Sy|[+ D|> 4TFb/.:=Ә:H3qY>=#gU$@Q#4R-{ g怋%bՇ;XA # <2 DtbNR$S#އI:.>bSk#Ƙeޤ)ܯ IYSQPB\T'8C*?{Dݎʇ&A+hnO*jSuH}}WU~⏗_A[30E6?`5lҮD<(TZb_(E0}C'M&fkmF/C=ߏ &G  a*yr5E7cndٹՃ7Pͥ 9A-+qN5^k.Ȃsz>=:W+`UDi)a > ^b!@\NjG"0?*5FP6wO  ڄ;;?X>5R+YdvcC[zD* *rײ8d> Vm-<xkR.UU^DZ@= |) ӡcXCqtk)<}JT H='iDbIk'22-)WG쟪([{m6y%eGгx\;C@d҅3rt_Q`D&_.rN#|mw nP]7' V"9 ^7>iX:Jߡl)""fsZWZ$&tVL8a:!EOq..>i&Vp^߭JF#t\1妒X>ss٘iW5 ~{DZa0&z8((a$(g "'B]2f Q31o#^Ďah7IR n&Cڬl׹P\fB_O'n8?&rV>6TkjN;m[gꁷX_(<8dBte:IlZbx N?Wep.zX`D,>+{dMٍ0)! (Boz=゚.߱.VvNqq-Kv#DQ%Qrr[*H/2V]GUXs eoP'ʻ MQh3<@ *?n1wx(5.Oo7R)%O"HT[p_hֽNUE k{R*n)_ 6}pbX Qԁ~  Gz)|h$5NLKq],ȷj{ՙ).Tk ; 3/bQRqށP]i?5DY\u/гѧd>dZOkǖFНj |W 1K]pB64?B'.fsy߳Xe;6bf$SSiJ@<G4DyPk7r8\ao-imH˰S?&P>=Ў#bRa ~4LJGC 0^!XF#81(nA;q! ~LBvHܦ@OD4 @ ) i#ϯ}]Ϭ8%`w%a󌭉M.:{h?Ma0Y6vOJ魕MY]QaFNE<-!dńNox-bI%CHX?c+mhqCmASi+{+ n^8k~>L|eZ>,p-Kyby7ZhT"U׼ӐP#yKyJfY%tB2[O_Hiv zޚAT* (ɪW/þ)"ŽS :r^VH9QZ`,:iP??9rӡ~@zX.Wn:kM 4lH$ՆL|Ԧ/=h[ֈkvU8#ϟpQZ%ʼ=B]  WbO)l/b.Cu*ϛCT #[C:gúTa IaH=>Sw iQl;EAJEą}C 73HMW:/ ʅpaM}٤jWEQ9C1m6QӑT3".EOԘ-)_gQEEz+X:nm@pi(&nR&GMr=pHoIGBTն_D &>ޞ70Sl&g]#tqcxt*ڦeB? wg7{{,0:J \^ͳk!o ,+RQЈ.D'(I cy`McUupP>$Aa"o);Zt M?3HsRq%_Y K6Lwz5)U"A[9aF"߀!( tH[^8s}ao:ic9p,x}Ͻh}GZ+r9 AW2;-GT 2P& 9ef=i#KRC/Mޙ[ n&)* m @]0^3kʗb*1ˁ(=a2`C!-)?pn'+= >-<6 P2 L_n᱖qߦP4dS;3wwxr:8*(ʾ0T/u4g̗ԞkHߌ~ VZZӴ繋O %B2!^kFzB6b-ⅅzW>HbJihU=+"mxoWfgj~FQ_q#&:o}TzG Q}0=(9z;H9Lv4ûw򉇗#Z.o,HSzT>",3tv>(oe+Ȋ/ eT|>Fi, jP}V~=d.݃i<@2Z&@JE^)6& !,s`6F,Ѻaa%B+yϘ ŻBEt]f 6M%˷46W+BS0{(<ņfwIUeO2 mۑh;qő5x^RAqMhEɨ4LZȹQ* W (#!^N慛h+ܻ%;߹9 4ƒ&THq,TԎ_Q9]0^H%p} 5u']_WTzkOMҹq}85F\VH F+57?~ܮa5\B@cl*ՅÎ|mudi$'ٳ!5묓O+6xI4Z(^(;E@ȩ#po rNh5@cu hc&8Jg5[&5,D[]*>TP:%_; re)E=^[*JV4ik=5BP`vjq LKr(U I&&;]я/b.X1LnhkRbF՗rOB(ʼ7?J|p.΄BDj O͈KQHZ_.2 4C[\1¥w @5̂k*W >)pV-7Yw(eYcdCOVVaGQe23<#b;S~d(e.Z↵j dE,`x%ŁXG>(z;9q"$ꌘ`v3zs.P`Uj֔3.9Tܤ@UO9YF$.7!8Hj,[2YFr3~d Ju-7Mvzk&iU9ÏdY'jP9T 3Z24Ig"$n>X(6=받sQeIȕVh8,CRlQ|[HlW x?V]X=k`yMO:Ųq93gZ:nْ( G3.29i7x4:AW`dLܧdVPt&&ZW܂ﰄ^9q h&& w.)BRNeo$MXeB]G7mWbƑ#އrv8^ao:js )elUQP_µԋf‚{6^w Tr֧˳ Po35>.hc/4COGBFd9IG' '5C1L%2@dFt' r\6qǙYv )Ajj4=o pkϙm`YY`#6盢?o;ⰔPmOo}OO?*^d0­(vWj[J!i}2U±KfP#R{\='Tum_pbY75JU]4kG;My qC ?5Vܒcz" ڝcW}{X<{IYe N(b3ꮠ6B8(>A?}D˿5{TT,=.W+k O@H;w<3wc-نcek!pSW- K\u[pͧ]ض׺uW@U Wm9eNչ>Q9)nP9%7$T^[uR'Qʅ1D;t D^LIN*Tgƛ SZGSeJdC;Cبz~3QU߯fyFAO`Fwbej g"$75ZJ(ϲ5dHL)N=C]@OG\NQDx%@uCTjP(}n侊XX$jx%o' 83Rۭ]&$fe6)ZKꜯȯI=0 `(c& 2r[Ԋ;Twq 8Q{$qA^(5v+t _ޝ`7PD'1\SQj?Ɛ}4Fb/>)UJQRt^s+G}'=b8v&k_K$h\'ٸ⮁pɅNO̳*#k)^Lwќy,1<0acLT t%jɖc#dL)ւ!cZ=mԘf\ɪ"',FR"5;r]ٞ?X{6xu5FK5)*W&o+ !row\Xд*yN驤H/clGE2b 󧚾*~S1+hat-L a0&;T`lή8)i&z0i`J|Ζ;쓎.f쓥X=Nj!~TTQAҸ(͓H'?%]E痾T_j(z@7n5e W^r贳G֕, 9B)7xdO'JȂw(R4>P>k!(tn\l5^۾*ٸ򍛛+ N!NPl'℧(I pGCs+QF--,nў#˺-I$=eq0 4`-DOɥh[.VF'W?-٠օNdR#%~ 8n2٪8@a^)Km˹0(*}j=Esj:%j+A?A*+͹Yr>Tm!dAy,Szsw{jq§0|@2ÑU^D߉ q_2/(dk\}u{f/|7/Dg%ܐpMSvcD@i-j80WSyow&}XINwpHWH,%T'5[WmcS`)@;.LܷɜF٥tC6/e5y'yt`mlD|L-@=dX: AjTl#wEoC VB"3ظ)[sodIĀ!Hɨ+ a'ҜK&[ #uXF@b@ӔA_$=M<""FH :OڧN8 'B<Õb鮩X'Ny0,NyXy-QD3IpmZ~)c(+I boR^iRbL]| ;-Ysg'_İկw?qh`HGp#8=1[veRG=$dB2-3i"&ZO 㕝p tŕ htzg {t<ϷAlz>Ҫ=!Y21 @QSm,ůܨ OSMɫ91LsAf_•4ljTQNYv\63Hjq],IEOJ;d*(钘-zJRɹ Q3EDNvH-Q٘ ~WM\wA/ LI\}n̩̊AAE_Ey*6 %|LlFI;{(4%Hb,Br4Z|MrC,nEAg[-WqʜI9X8JWgP{mLy/4,}:[5r0horpCu6^SQϾ ^֌Ӱ++9k M|N.qހ<|}=MP$00 PfA%[BOڽ8L0?%Q]mV-70`sj&D窚{Ge@6)alY>ޜzJ"O;jUIzV)zZ7G<&8TuH+L_rR# pb ؆,hX<8 ,c}5_PTweUuOCQ ,}ݤrbu0@l|=,kJKBgO\NjcQ/Os&g5[4u ~sIF\ )RBI 1/'I J8 ZI)8 ʅ55&E`ځxKaa-PhEN {#'~em"99='CUj2{Pi,q:lӤLB|@߫!g$`Mp.q:FO\"? Udc+Oz~7fק$^!Ԑ e[HSۋx;[V_zGPl^Fi2#2zİ3OG7Sg!E&?P"IyldtQ0 Ci> IC?h|I] ~0{m>&"i_EhΫOmb'ٔ@g|%2@~z 9yHˌ^)fV{aϓ)Ss0+ øp|C°GQp!{WySU쾗#*$< ܸD)WIMb ,qcdWp;8Yrvݳ! KI}_lA ? zMsd# ftE6-'$۔Uwk{IapyQA^F|vD|DQSV%B1p`8YvFllȑ1asV!MR60O69V 9;` (t:BY er<迚yk+X'N:_}hE:(MŕV1ؖ<.׷ 5v,gݎ64mYZ=b Ǡ6&$\v2DIi 'ᠾ'-G]SOTib au[G%Y"mY@~zy<XMMz\e{8:<9uY9r [.R=ifvx'iu' ^q0ϻ%-SM4"PXaL/]k65Xq>Yc6}kZd7{(nY<!"?_Ef3A]k9%A'5YSqH`f 16f|e J'ȝ;?QNTAUD/9h/"ku0J@ $Qf @ |A0\I~:A6gl'M"<~Ԍ(Pn9de+?'M?}d.;)F\Ϙ MsJh~i\0<2UXɃ0joX#nEtL|bF:g:!)+a7) zwO5$:#Fﱁ@}jw40NiK+'!vX" Ѓ^)Sz X$FS{ 4RjcH>XL  \GHk=p\KN*_ocV{r 5Ba÷~ms9J3 cЉ^5x nC-DmtLhrЃx3h;.tE;&&z}kw4gTJ «prTelHz5a(^;V+fIs惛eH5BB& &ى'Y3@tneWٟkpJ]OPbyMmNN!b/9k0*\ 5Yis+p|a ['-9n\31K\PKXZv LeX.ʥvҔYJf/>}FZ+;?,!mS!e&*H8d趢ܜo =Ik<8hP(ia>*׃lɰjɆ0ޮv^1l-ȉP/|~$kKu.HBgt8,vFM;gDp U ULO?ዏ gGi ?R*G} ^qϣ!meN 1 \S*rFDP@YԆ̕h$;:TMI!6;"|URA-+w!-PBeK0`NdтT@~1y_J\vG]c6dD /!rAX|4Nb7k:bLIH(l(Z ͋y l0iͩI֊28H8Ce+~ya/|/J 4_vy @\ Rۼ4!-;EfQ۾9n`A`V,3ޠwG) ZM}#8jPZƻNuZT}~9ōwPl "d@>YK " NՎcjV$Pt3%΍;O5`n^Mt5,lv`Kb_J e$;JOUUwfs;ۄ~{xqo#W9l̘ijҀUWԴVPSy<>>eƅaL@8ߺc=/{[CrHIR0N*M}5v੝NgeU!P5֢6|B]Z~LW\F +"]4b[\IH/׻* 0GS:EV ɏ %+޿rF Ռ9XXll@FQ«U? Xn bOu*)$POmFw+rz`GVN+#9$K-zn̅ X7c 꽽XDV)M2sڧ=[?r$!>Q.áUDuic;X+}՟{28ԦB J@eJIA9<' ֓d5lD^JCђo"HٸO0RNF5gk(']!Fʖ,|禿,zgG`9]6~ a{^@nV?>.b}NbV-Xig/sKwb~ %R+[ 5{8秶whbb{:G=-!=.l*[?@T떄"X`,$s<>곌ov-qFi{"=u0B{8.埊j]f"r8n]!ӶWqySR픤S~;>ڒ%PXUڒYjqi<\\DI'aOP: ",^hуi~=g&6&1:CeJ{*} *KؙYYFrF ;wT(L Η7>eOu?,H2g[:X^ʃ·^tVڼ@;АܓV!t6&Z  |3`JЉE6ШIsOYblu} #sψNՍ7`7oوJM ?,I彭@oO 0Lb_Tv lZ0yYP}$?tU ~GL'jHt+& lTQg6:# 4efSq1Ab-N}lh7{96G*tV=S7%P~΃ڊ9Qwjo6.ï}zӒ S[Go7Q\a/f@ޅRHXXIrUU |sJr"۩LbfͲBq P&BR÷0'Q^g_K-$4DݡCoL\% !0AFuAgKۘ{tN*Ь~XȩS|bVhEu q^Y˚2^B,=.P*dq#ԼZ %vYѩhne[ ^g+w&fhE2]LZɦj.~W\SKk12ZVbu?{҄ gKQ['|66Li6TRnH]M, 2?侤Shק1b8gW(3M㟒N?`fgHJ1`?CϜHc^ Z<I29T]Ӵiwog[u0k+˳%m6:ƟJIDvs>6lߊ7[^|_ LW:c)d]""'11썴H$ϖ(dG2 r>~#QߵQFx[n:A*9MR5?z$ߙra7Xd3Kcr31j$~.kJdH+iLQKDPtStM1GhOΨƗ+2s~ݥ:JP"͈ @,[$|4Scs& n-:t ^S NVݩ ÝJwjsL| RbqVaKA#?BWh7X̃]"8܄Ur^p²"?IY`I_rA58nR5è4{`j"H.#ڞa6bX59 ȪlKp0;3TL03W}`'b|k<۠ rb~y邳zu0w/ ``lGI]P 8;~Mk" u<c2_1t;GX AQ;f #@WЮ/46Ùj?0悵ΚGZxwE͌|~R3EwIꁧ:c정 ^0j(-ȓlui8cH1kQ9 W"dPO86٬5TF=֫noֶ a[A+ #8P L3^:ߞ&åoj]-AdA:hGC`|LC$KzF޳EZ"P$M *k߬\iӟ z&'im*Tq<p?)Ya$ PlQMJ Kq wCK6bX #.0`{2X$VUNk 6έ V3._tC59orC&s' : 9w՘C;ise04R8l{F%%=_4zك1%pA o.;H934DMy1{lƗR`^ hR|~ɮ#XWC$VUSC}Dö*M,Pr P.z&r!TuANIIќƿ!vYة= *b97t6/2)Nٵ^I( @}(ˢg^#A~!vYVw ?b%uVu 6 >{H Ѩ׶C?lSroM~P-JUc-!@<b&*p* ulp36jF~v.0QrNb_`EA1c]62XeA^'ġhhaQ|t4Pcl&5]y!4IťUIbg.pzw{ Yy/q9Osޠp@ldaeTbnׇI3lڰɠ,".{JU!fϩo_dmmL5Zėu7 Ep+]8H3pb, Gۥ-=%S}- 荲b ][Bd 3VXZGaTENAzq[`/BdN.rćy2bɠ 2y]ls,Ք=rn^G<MRiu Gj3 \I7lg4En3X~3# {3QtOt[-J?Pv#7Bnh*p(Z_`A- Q(}4H/fpd_4k{ݣAZ[nKyX-ع'Fk59/SXx90M$P}i8IcvBuSo9[&=0%țUBV(@0ȋ;`&%^_1T;N&S~0 1jl~ /e,y#ObV(8AXAuf Ekw1~1!'\v#c몓Lxif%:Qtt8 ;O8tt4x){/Zռk|` ( Y/c@R L"0Xp4SBO<0'x.P*T2-Xw-FuzSYߘjtA9"o}7ݸgqJ0)X ڳK3n12x4]ho+7 Գcezq*<(1Y$9 ?6ɭ:_rTtz]"B@߾$TfbD=pB_V+zjF0iQIQ0Z3CԒhRk(C:] i5rzF7g,Wx2@8\swu.ݶоnX(lDqbJ-Ao Qx?<Zs2;R!;큗0s0T佬dw!<8L@XB/]Xќfte`TAgm0a| _EPjG!eWu֍%lZI0Y܀(@k-!m/v~*=CQvь?l6ҳ 6ӀJK)ۢ N\zD"+9O&9 I)IddA_SPcyT Zvv[s{ lN|&ܭzz9*i+A +ƈERAXDj6ṕ;]OhkUTu\ 0}eRI)nk\5E4ofn oc"-)`'ZogoSאM< 1@TR%ZB#}6 ekgab\4`6=f܏]ˬjQA6l~]o4\?(\3?.~Fapljclx+=4'U6&m8) nL⊼:77 2ݫJ*,-e`H'XM|C&Gn-O1'=J6Aῖ,Zwo|O/J^$s)پ hlUMTUKܕ=ocF*b"v}a,yvuCݧZkt:S]Ǿ{`[|18ìւK Ȅe-yN1q˙=D5rItf*;&FZm>̽)bЩQՋ#_{Ys0:F&Z8Z':p)VTٴeBJI*U X Xڳf"M_pA"`_\o9? (uxv^> NZ."bijk*w$TysX:UoƯqX7rK0 DF!sH؃ׁPp:j/E6 σb)!aq#okr-ֹ@@Ȅֻb #lwx_ bE+5u8 'E+[=rba`)[~:'py w`%ä́=?JFx lSuM7pb!wW^G(`#~ dꕜU%xy#-9!_%Ǫa @I۝uA~JK _;AMԇⶪ ͷ,Rk~Z 3A:[у j*)%Vuc-reJ&vg ԻuXEfT犿bcnlY#9,O2|1S'W#d$8,8JbWt. R5vT[#0k4:лM;l]] d}×ujE½F RϵS@&j3P8߻a ;.V~M/[:W;%aGW('(~%!)ĚqjN0+&b$<@Kgň̹%#X{no<ժE 5Y@ɞ/qB{!?o[0LƄQ׾ Ⱦ"LfcUbIuRP͍"el7&(EBASom+E6*VH T"d@[RiFNjFT9ACrJOPq_͇WU(e$~}ɅF$rv4y RgnmZpƛ!W3@9"N]MUV(UlMiJ.[}`JUmmE?´ɀѱ] X S?Q띟{O[^`m&ʵL~˵gR8 fg[=/B!(h5<\mcQʐ JKT* t,OoȕFüJ9*HET9t+ϲLDn#voʁ$P׊ڥ&qwi/(l*n6'Է91W-jj͑}4.5BY{+ Ͷ32|r6@Dھ~EDQIh/5n5GRSP%T_fKZ.n-QuP(3} ~ $]*VK'|e,ң)8ջz TdZV:|Laځ>օltnKGX+@<{2Ņ} d%tR!{$F/\[m8 =|{VeXOucqjHɴɂƉq`7+B{A}䤍 [}L4XTpIJXQYBWwq')FQ[Y.IcC1%cYWA,cl)~ޞlno3岤!0ɋtCuTXB{|)DhNpAbb.̥T=>vBiO mkm#oTZjB܍C̯R< >>)AF0cn]~D PZN?R.zV.U5R<˾ǕgM̢2FS o<(ﬠ9>0 c K T+K\!U0r, iuD,~t#ǷH\=AZ#rȹKi^dugG~ [/h#I8$E'90!w4 ,sbtU ur.(ٿkwDe^gLA\Tw`Kwͩ685/Ѵ0 /D-uҝUe&%nt'_X{]Q~ d9:_ܨ;ͮ *RYl]żó1±rXOfI\}p@ss7+7;.F0G!TG_ h&֏1f.Ѷplݴb xgala* Aܯ5S0(N8@+A e^q~s)>Nt˗5Op_{^V^$doTRSDn?:EPh7K[kZ\ Èn~wBH6uD>>&Ȑڭ!!W<3DUg±#h8,,!e/%, oYҘ:IPp(1%2 <8;LqkMj>wJZeG֣H@ A-ߗnEq9<ٰm9k*f$ B` $USѕΥsM؝G=bÜjh$DM$P%pD`fALǽ7Qo&Fq8.-E;C?hjì]3vCTIg*uXsa_3WM1$@~%pzGWL7 v{ڰf7cn=;fmԌ(Ys @Zlf( d`ix}yc Whzyr]c/H 5JVᴺ*!Z5˛[|v-SV2׭d|[9Z'`4RxaJ6jN :AQK\Pz"X%TcGѓa=n\Zz`Eߢ#vGn=vU/e, TW (5)e=8Ε ƣӃxR>=N{.Xa,$%5qli t4Q (G;X/mspޒ!_"NP9~k1Cʮgijc W|pm!`"zAUt9hOҿւx4: u>ಎ&(8GPUyDUМ]*QqwXfI\4gmHę>P$UfqߋcL1!m Un,]T=, F?`&w^`>p aCz; >r6M$H:~dN^NJWTHK* z̟u0@q;Ydsi+*&O64f+Oy8=M:%~ G#ClXZF,x CWolVIB1MF) D_wns-=8yU5ܰΥzU Γİ m2jXhK丞E_m#ټacVpO|v BL~uP>~AqW0eH>Fl!= I4j alu.-ED.(Cc)m`5Oh!pR'u8*ER4$.[r/4V"pp5$^:z`Oޙίq'-ur]&uOxh3 u'CD^MAˑl>g3n渄d>Fwn(T#]b/Pxm<LI}*]4^vT@aMIbC_rC|6NqyIxgcY+הuxL3qn~[ym$h7y $c^Y:QuϓP.l3'l=`0 T$8% *L,LuXK xD/jN@4>$ D}.zRp*/&ـ&(Ͳ  wʅ%m]lT yǽpaꋳW\6ĭl8= W*P*F#D`IC HHHƇO^ђJY`x'4G9J>FouJx~@0Ȋ)؊\a&*cՠ[&,)ຽ9Ka q3g~\Q8E2~$/z4D5\z!0$0 ޮX|#զ%؍+^\ԩ7J:/f@n ;CBY2LEf,RN fDDa}/%2*RZ-v2Z͐l 5֢3?=GF *²XLI`H|/3mM?:d pfD/°Ωb1It9m^Dos!af"\2hG~La:\bqtYUb`E c.x6ngSjxń9sp~&Gh6\;5l['rQ-#"`)ltE (7Ţ$ SWMp޻~ِlϬjnyqUMvݠifsJl9XH]ͲR:/xG봛M⾃-34M:4&Ap]Ǎ6$'ePfm.,pIYznx_߬w`]M'Eu~o *HeJDjiPfdCw2"ݵgGOK(#csɩ4ΰ֩Uށ3| !-G>lJ5ѯzJ=aeC֣n c,8tXc5•u8wҽn h6Q\'s#Ϧ臠%2@F1cJi+OnI,%90S/ 4?=lamn='vZmiEA [/G7@*\nIxM;}{vW{K+~ڦ; x]vTzR|\׵$fdpr݈T2gx*Kxm\Q5,]`LΩM~8&3ӷa8۷Cs.Eb9 s8<@1Ggb"Yv0%(PvS篓JhqLC%j$5v6x]# ];2" \SdzOo3*_4R@JFn5xX*!(eSBwa"AHԗkxI?Gxb!qU-6Չ@nֻUE΀@H^?NF͂U7TY8йюt!ݹjrVuϩ ߠ*>i㷪tjcJ&*۵y t%5쌜Vj(HJ EM!Ʌ,#Ð_sWFnŧei?cw,_~aahÄ́ T!t&|O{zm5Qj8X}Pꊛ50OW)wKq_>U4.>?d5W.'gK=ע`W8>Paefˤh~ivc2a\z/u@hFl}khe[kJy;ZP9RS){dtT) GKtd=9VۻS}ߩE\Sa=BFF0 2rj GR`y!uMLI -/m\]e]Z$b+Zzj4{ io!g{{q%{5Q>]nn/9>j8k_Sҷ2z@ׯbr[}̙ŀ؛(hdºɑjm.NT9Vm|q♬kew0]e>ne&x:s,{^5m{az$\:ơ*A)YȆ3O]NYԖ;89#c!)g7/rl+p\JcvI=Ox<;[zt0sȼj9};#k7 ۷I0_>3+`z p O'm[€!Ci Z4I?-J,rZ 7OIKxQ0rsvk6Le5@mC${RX⟶[T1,e>D=6"1y9*{n՚P6N0^ƀ|D`q N/}-E+SjŎLf%WC}: #rK{M2FqpnkTSQ48=/72&1&oF&*i}N2D#5<פ9] )IH?>FȾcs{cNP^C,.p; %o -$/hoF-l(ٖjPYxTFl2;nRGbnfZ" blUdltnIexS!#ABAkZyն7-'>|}VSHyE+#ecFxdjYP^z>ƪ &,"Ɗd>f;wf:6 QMwkJ?d-P4Z4-9>z#f](d,մNs< ->z,[ A6ʈ8xe2wkrK|jFQ`1?4> F21L,!YiQwABb ]B2]K}k&/m_?ŋ} DСEUJ#+o#6AF肮xƏˀȰ\1'늷#3em f6J.:+LNшcr-}y1[PXljҼSǸ4Uąp-5Q 戫r:Cz7u ,aan3n|e[XxEz ƍTLH/PA16_aTpR$6%g;-M4KkA%-k5he1%=D׉6,c”o 1R>>-T,:4d&?73rI&K̂o?f(iLTJ2~^)ݵ..qKÞR*:Tޓ*ӡ^Mq]ʘq&iZ ]M>dUu6RU ;]Uk(}3[p)AAɌ3 EѲpUs=P:$C6 k?ćs]ns&wy)ڶ20Lw=`tX&n.S'_y+%Vkͦ!E~qR#fZ>B:!\{:c~AncI &gBYZw4,{S\ y;mρrYO_?*qŽ";9HQֆ741-k+\Iel,iOX~vBj;w\{1׾fjWMk5„<{8#vB2\9Y~ -*\[o/ՓEf$A)1qq`^=GCMc_P#L|~EH(YE9in Ht5x:V˒Ɇ6M:.iR2U`%g0*{^\XP6?h>l$2d0H_ub v?l'7 ްY@DN_܉Y!~hts!"u57 dljrb ؕQ`[5$,M~"D@u8%t 4u`r'}-<|ҰrX}Nuؙm:ߛrv3QЭv mTwwNPԻ0dNb:y0S6NI5wLR!sJ-|Vs\.9Y f!UM4h2o]\و5/哌Q)#-?e4ʴQHkp1(H:^3ۓL .qUXkCS?:bv+ D{͔w?,;UO9Dp Ҭ8uό.&ZE22̣` z;xFXHn3sS%R;4 &<+pR6vw*Cӗ' E4>zJ#[~N]R=n8"pБ ctS*d '+F }8j/1aý^.d1_Bm'B<4j'C(ſvP֋tBRF#&AHHiy> ]P=z5C|Y&q$=D&KޗVpɬ0k I,8̒9,|(Ukrt#e;yI(gw%O1caW ?eqι3Y`k0Ľ.k]'`ZMy-SPͨ6֡oLu#Y+Ŷ&~FyFd$n5 QUC?'$MA,?ZAT4{xEKS!J=ӭ_+?}2#IͥrD`^}Qdf,O qu7ǦWoY/>6ODj9fchlwWVޞz<λ\Uԫfpg&4:,+^.Vٟ%indSCd8<;!Y†A)Jk^n({%fa!\;߈݄&9 '/o׾NAE7_B\`3{^\^̈́j%AŸ]Xmdv.:q4[y:|?Bt,Vk=U}?%hK w 01M;<?;B52kx>aua Qen{qtV n]zu+d -E,-+ɠ#Is/Z\&fk(_4PhZpxp8́B& <#Xsw'^,e pB<$߮*CBFyf1 f>f>%#ƹ/XD|WL=m ↨ nP5`J'^I=$ODZ̠W<'r$7|ڬ^+rX:k7;5(f@${UnYX=D q!Ȇ dhu +HN=T-`Ӻuλ/ c\NYFK@LBBS>$G*e-|ǥ.l5٦A@U1@܍:Gu8vebegSFӮᗪn"ƣ-PG;~28VёzQu+SbD]35zMM jB` dbbRΏxJϋWVz _#r10OފqI"7p}k+7y9z2.'ׂO% ˋ<9rH)Bb~y~jwFMͭamAyE:lHsdl%S?PrW(*EОp:a$5+?oA-='{PG%(cOu;!CyoC) &flp; :E/4J7 Γ!L8VUEWh i'Ѯ#?VM O4}=3=\*nb* /) K%a't4NKn(mFPꁾ}RtQW~N?{BQ'L`p>%kA;T*`o&  ͠L {|pn ߈5?"wwA;|_#MqwWHc{w5պ:P|a_S21#Ϥ $RuHekb)*O*MQSӞ^7AXy0^6*?[i:\H"0Dk8XO_ᐐ3sZ 5/D'hmC {0\U+A5WCJ9{ּHBޱv:͠)0ia3X.qkZ_sø_C|D՜ /]Z<;|\ԙI?<:Y_C `4̌_12&־d|¤妷#E3 "h[q BOW55՟"A9 z=Ӂ IܼA Kg I6{aPP0uyc xa_Qp m"~~͛k{:ؘLgyztQ$0)gYQDVbGmT,sSI\:TNj\hk#σ5s²m@Wbmn"4C+3KMj";Qv,ޫwM4#[Ff76*O _fIm{?h՗G&YFQo/Adzq/ΧAA}͒ٸ.7(\]>U9+_ #KdM}ٖ$_sj#F?3sC=;O΅KLLwn=rB9a5C[)ذzQV9}Ѯhuj U3;F+|;G/fU4iU5@X_uGQe6bunV 'C'_oI`h7"p5ty./hdj@ŕ,h"өy<1t!]3-Vv.M>bsm%t o˜PrBY[)6ۼHkz MrbzաvaIh'Zzi^"rf[ˈz"Y+4 =؜pGߎYͲtڲO!%ـ[4K%sWƕSN#{AϚR?سΜZG\k?/[?SU%JuCiY;]֣VH[eoӰ7s =9/bYr v"RfxAZAsig0g@3ت:QPZ蹚 EʅHݐvģ2S(Hhɯ7JyoP(ViNH#`1 OX\3bLr ,, .TMbApխt12W\Հ*'Wr>ˇ~iO&1=gSxAF,}}|"c\.6KU.{{c]KCW/@Lg(ӠC =mjf-aBY#fUiKL:;Vg P;h;yK)Ll)ɣwb,Zxy1fPՃ@ ĖbvXg/*ζ" Y]?mC MS=Xqs毣 (U\v~'i)zɣM;M_ڒqLxr+C#|a_(' eG"gYѣhGseq#yԿ5J*N\!.<Y UMv&p{zмKtyzDD @4 @oiz3zpu'*8 P; fey_p#0n% ?:IPEdSdDd[[UGū;  =Jd;P(hB<4FR'h)WlVyCk ݇;cy7&<l&#N NX2z\9r t2 JoɿԳ˓ApKac&:$$3Dƌ/6y` L CPW:b5| @ #cns#["8_m'yn6mSQl *ʀwP޲:kF@6~K"$z+,%3G0>oC CO6D,pvއ}DtI. l`z9h{ {έ 43>[ =ƴ deρ cdm-Y:3]vzb)m(UvXRg , iؘ Uy7V/i>rU\ lCh%5ի5˗n\2!FI}O'Igd_ #ǑuMKFQbLm< NΎd90‡B~%l.J(؆Z;7kT)ża-^O<>ƨ}6|ѕ M~|7e'] B@ D۽ӪfvxPDy_;5!kE=Jk(7rp+֯/VD<ȄƛF--(aBX( ږHs"򋢶*;R$- }'=ordӐm*HoKሷv(y٪JMPT=E[5sN- 21lHEMRΒt Bҩ 7n[k,`49A/<ם7Rr ъߢR8%Nbf Hj Rr;$ 9݃L9ic:&n(iqX\\u4"zŽ<}%C̜cSV~_!{̔߰|yΓ8y`Ǽnn?CEbH؃0 ߧ"Wx.w j_xDMg0=f\r>!kOlcn=P5H :5ޡݲ6p"׵V` |_vT8&"kk3yuܙ\C)Ha2x}f!'v3 VNn cӴ[#4ɞ 1>Qpj" BM[ g0 (~6xr˵d2EFѻF2W\M]vdJuޟ M&ܐ^CW\/9^SV\Ei4CMj-K9FI,i釮gzږ^.mQIQրo9]AR%$&KӊqfFoN?7=]}UcƼ[7[(aoʗcA'o6 _ ;j_9Qsku>VRP/jnU©Ͽ<n(c~^ouhOڤJ䁎Y'htgZӰ]B&R<'3RFajF+@/y4rLRlo8u W$hRP{7 ыyǯ{OnRAmy$.ZSw;NgAG)eoЀ}@yE\t ӞI>՚XzS]-1o|E_1 b튑$U]l5A\N ]v Q׈xH-ltxV{fVE?ߎ!LƻUj $P2I=G>8$j-XyS@x5hovഓ]uƬUmH0 Pt/Xxǂ̶:k2ɲ YP,p2D!F >2Vo*虫Fq(>yhCqJ|VXQ,=T1lH9vW$ ?:~]Mg>fq%]T AcCnύ%[ԣa!D3J1d (#dڬNuF,D*#p˾\d8c 0}7Wwl5DU1Lrͨw >E6kk,Nהj"%jR$? [xO?3d|.LhKRp?r,pŘac)bz+_.PkU_ӄ`ebf5[ҋl9V}xҩ7@4G &P KA }X> 䨠H9ɿfLZ[UFc\ foYP9D9ͪG5z6CI[FLqWD54y%YCH駺ÛQ0o)@b"BDoL f}[5R*X|6;|cHu{W  f*]D-FR"_z|^=smn/-C!} 1hrer]lD Y -L4JE>jykb AiKpHVAY΂midGtZ( #SgYs8:U/dOpOujmQt*EhzueY-k!:.im`$xS jj ks̾d9 T,eqHIUE,!r6'h7ZKL/``۩߭s_ Ts֖?b/:Gu}]tË83tu& g0U "fږJ=nvoVT8 _ƕ+A ځ<(#zQBjY/N9Re-A֔}113ՎӚmS"ܗؕII6}8 +"57 ʰ~Hu5*,Tq]~u^#0]Db=F44o5{m:Bi|;9!=SXY"s4+k躣{5hZU޵\6*9Թ=ٟIgj߼OjiW>6ZGm¨֞mkY-*Qi*lw{3 4 .@V<09PG 4Q@22?:9r[ |C9wS ӳt-ng[ђ7kLj_l\+S/nM!k#Gp@.9<:BK_GȖ|*XBX;FZwQ?9c Uvo V \鳧 zfJP1j!|iH=ː4lI{ V.>zW9_m!;[]N0 ?͗w&[hE:0IݮQ0=6'2ݔU_Vr``vNw?[wrhosmuP epl9{(pο5=10va^H/I~! p!!89/h eFt[%0[<" H"Q@H\ERTx^= O}yQ*l41O^<tOgԜߡ.ˤǦ'm ;kR T2zFQdjOpWjKSTz` !q4|>wߦ ٟK:jDp,vc'O,7T\' mgz6lB<XéGz8gjTp:YCRt,5FUbf4ڱ92ZB2wo2Y1sKZ_ʽzsY)PieIq66cIsg:H}r*Dx '[#'$T-O@(g^ObƯ^ D?[&/pqWo\?1ԍ,A?3n* qwBα ۠&-d@7%-7W2׵=@E2@J掕*8n򊌠c@̷bo ،Dl0@IM:*:5x)}IlXkڏbI Z1퓨 7=iժg Yϊ݃ԾyւtIҦ UPOBrxw6"+29Sqj2K1}:W49b~ 8u0D˚o rV?B.}ZJDO*kh#gSLU|32P>&`Ϳ9b2648 ~Gᑓz=N$eJ|M< j~eeǑ4H^,,H7u+="erٕu!3RrdĴ<ˆ2f= $X,غ:R/3[ۃPoGޔT!H]PаDQ$Z9 $qfjU8;6 ߾i0I1>ﺼc@}'!¶rX){$ޏ<21 ː~X^,z\4/lXd^rE}F ,isxR[h۩քqۗL4&#W%6g(|\\lɒBA3@[WB0?+QN}"˽2zDà!QjOnN֎.Jߩ=~XzȏةrK T܎ԃ0UI=AGKsώS>3&ђLX!؜;jM6w0~@/"XC!sPrk:TލFl6X]vcD} 7\W Obu;i-)P[9m3B:].N-jW-y")OncM5(W5z)7ql3yPQNJ,H )/u}1|Irb8WSPe%gS9g`!L$7fB\ xrmD&HOkg ESo0H?|Ri7sD%uk 0嘓<Pn4"M/W\rKF2U!eA9.^CK蚷ԝ[ʮꔦ\ v/ЅKia*R.*^ӾcV:찹^!g3X݃%lv^,uÍv$$&Љ`w~3Xd>]00e"sb3G*RZn$fI;ʶ<05vq DE 3brԏQ,yQ}}O@xsn+4_r+oֆ{(ògߝ #G!n;Frtxo33a2@|mUC" r$NDkKO4v0rڲ#|L|>GŗC°l?)$7 ta frh8l#.)fh4pgW\/_xÌR.\F<m6bYҥ5鷭l_!5AN< Y{_K)~aU^6~DQ ~s7 ~׭`UVojZ ;(9vgW~# VJ -~zR2/G}w/;,ǷU\:K B\_x@D;qp(e2>k15W䃾y~umѡB eWf`_2qnv[^Y̕Gqb|S[D y^49x5 )Ui}ҽ\0-ʉP6@6R٦#AV j8i"PEaIit*߷veLJ`)uz+Jgo L{mgBvrm )5Q"lj?PCa]+i #E#mYuBjT`:5wIrù}mtN(LYrOr>+x^nso9՘҅5lIgP{pXC˪4:γRrg=Qׁ;k6ai:g q!MnGםݪWb>HE"BaF Y{/M_nr(':=l1Ÿ,lPaVꔻJdn#j N`†<8NA#- Ne@A2bA5G"R v/F [.aI.,c7+G(RM'{.BY`v^:S;—l zQ^lzX)5Fvbi-۾KfSoĠvdӆ{z@)ϵ?TG.Ʌk=wa{n~ŠEIgO7{a ()(3 ud瑄)_B}Q W(T/]<=3)5%Y~PK4O{̡/f8Z)ئUy*w !!~iVŻziynS7dy{(E=Yݵ8An`I;RVfb^,'uwơ?up$b!TWly疖@jPƍ|\>&W{ |>M:0d6 (o%.ڈt2<sKn^:NcXũ IC ,2E)6+H>Բ"g6aBV<}ٖ&H|n1O.LYf&.: ZF@)Y Z,-Y{6~L靳8o\蠬@]}F㝴΋hXK'&͘F)K-T$Cy>+BwF/m/r ,mj:w/\SX";GLTUB9AffS􇇳N;!nduzcEsltWI{ {(^6K*#`jdyPҿ#!pYޟ57;(*Jp i ۠^XLv(ר{a&LɠRgئ#ND@gǼv&Ȓґ6J2%Cҷ@wM]`ffEk:m)T7;;t)TjW~p DEl.XAxI5ٍ&oR&Ks.E.uUĠfJ먑3_AW uP!.MNvg'>l9T(dTl#0[^Ւ ] _UQG.VЋ"ӈ?J\gxf˙ I>}N@vt;QiG=-*z9zZ0R033#YgJ|׬(R9%&({p89 X}>G#V,pc/ELa!G7)ykk(kP 4eRuR:^I4 t}StQ*A>n1*/t(A|,jt`xÄn3ii'}YCdzART^MU>Ou $Q. ^@[uBI/{& ƨl ruUAPfAwQ. CBo*l~!x{ ~wݮQl|NPΜ$k7EDbҵC1u}37ȏ"v HϥaA\sB"'mfiq84b#?V9[XR R%Tes^'7#< c@I"F@O (Lz;5TCG"x~Yw. wz ' nC'�|Z{^>iJo O$7XQ<-P LXQoo85]]5Z F/ЎbY|!0rg+KA9KJiEy_kYN=:+W{bތHDԩnd`91~M-"~T=xndI/`D"bĥmTޡ Ł^Bb 0ٕ]F}@DMqUt6o&1v 9Ie*KNW n_DJ0EȂT2`nۃ4=3ͷoY Mm[RA|Fn_7OxmxVcv=`q( *CXhv{22Gt1˽ V'SIVhò걂`FyCb`uvUpyA.JہZ9ԣ2u%95$ȫg/u x#FR|5O-K# $+5D[* M1m+W2曫y4&Xbps$omj+My#> Kp98ڷ_PgCąm}~ 㨰NA03;zh]ݕ*Q\|3:er 0- L#[DMU>._ Dr7 Gʠ=Θ sCo:*kymn!(SoƉMJٿt^t;H-Mw+ 'nՈTm8rXH\yTDg%,U_HR9C[h?lp_oܯ=!e1"a#=rT3eΖ{Xa<8?# dfCh.Fx8nV#|[U\V:y7i.jd :J\SEZgg4M q${  ZhuphAy&64=Ǥ h@Tx^H5O *{|,)],A;#u7L?vt%Ȇ(Gz':O̱+I5h\?k8:fNzܙ[KN#J)^wZ`Aߗ]Gwj] "8YLdI+^f_ Rj;$Hh_7L;,X~<#=|=̦&]4//ʐ$SFIv.6CW'4 S++/ "~1 IsqQLФ Akh\A=Y.otG ,hC?Q: V֟)o' ezjEC `yޣB:U^՝`,kU\T'#*;=/EcMh̀/T^r.:xĿX-tPDoȨ{Tepo_#?\Ҽ"Uvc E.g\e!<5|C9LLѳL Q![uX*m$PR7p zuﻡ g^܄TW~4= ԅQp7q24,6"YzեYߓ9{$sx(liNLjX2 (tKi>f.qCY.'#K8a6'7zhM9&:Sh4M  jKl*kMؓC }m@ >Y5oM6֭)/68&N8r X` ȇ]X׋~vlJ(L@O@ sG|XqC7}à#De{:𞉎ቊ[g& 'k-9̕1ڈj?\EV&թl ҷg/p/Y33uꍻoZWkQ 5^ so?bnmBn(J&&ãfسo@C &k*:pEA^Y{Z|CSR9Y{UL" ӃB Sl{OI*կI7M63xՐX.Gt>N/ :iuK<#vQSbQB9?[ojK)y@$G$bmM=VL_ACT)31;jəUy[ַQj%-R.ݎG*țk> qs0> u""il*?YٺɻP3 u")H̾(Ę$)[ {3skp,z߱\Et>"ݣqn? oZf`UjrZ|YM;<\(풐ˬ!廈If=Ini,v{^b'ޔkbUqω;t03@(r/ pI/N#Qζ|+AP% .SiOItM)<1^iw5xLyZ" N?1|Y1@y?.4ヒ9niE"njn nEHQ9j¦ x纀5p1-=( }羲 MqnQiɿKl3D0/z c 6f=p$i oj9I޷u墳'V7e#=; P AI5å}{Db槐/OM#4!lׂIPјDoyg^og,\fۑnLAh5s-et<}Sf 8=2gOyBE^^aI t>Nsrt.kFGnI.p!ߗ^(]YNAv D(@QS/Ӕ<@(m.bm=0GE+;ǔcL4d˹ן 7[ 9eSфw]yd+J>Uǣ֣LAxMyZ U'^#3H5 (фaekG5ȹbn ]m5r *ʌdzIyϵ֎bT;Ջ u;X /v}0eݤU,:܄k]vOu"1 ],ftuMU=#4/yAPLU۩t7m vnC^yjsHJ3JQϘE47-17H+~^S]: fDeYLp?2g3j.TY*Rlp!o2ɔlQ^ jC֮C x!.v{HzZm6qlhs_yD\ˣύ&2uSX+1l/tKuFeB%CM1L\1ҝϭ;_A.+i/c>G*W?`eoJ[^8 &Zxj@0bs6(6u|# =T 84^7|T\ɮ} YՙoCӛΫ`Coj#=gӆ5LC\bAx̨󡜺oKgA 3~jN=C bWmBPG[i"utup_gQ@h+$0 R,f+h-vۂ5{,\]3L.`9 &`PQ{ZU `<#Pd\m7ZɑbR+4J94S3sw;yCҙ!=[<k :\VgBzW(Nr\2K&Ȑ^^Tko,U^ oFcn4+ReGM/ypƿgJdϖWrJ69u8"^, QsJA߳"vL34z NY/β9A;B9kMzP(ϝ eu1! #{lBs|4DƏR#HJ_3@Fԏ4"Q1[X32"Cwv~Tx8@sM]WEv*a<:c_M(X;A3Va'"[LN$C'DoFjuKzEyVv>2K̰>U֗}P#{!@e[W>ݾU-Vus&Kw<9Z,`zz:CĐ$\> `$|D=]fn:j "DzƘCN.+Au ђ+<+/-IE݃`c~s.֔OΨTsL!%z9DvT3:Kωƛ[ ZfhFj Kii[Sgk@cHUS:(\dM#*m6UwsLE%3I m!UϬ(C`PSH]j+)6R +A R6."C{G$]e28#sUIw"&'aZ]v-1 ܥ0s m-88G~R#Aso|^DTb; jVQiWȱRzK +QoP*&Ns/\8޹mksℚp>es˯#>)mؤ4H&ˮI.׏ >{aG[gO~v3W\ߛ9}P6IQ-idpLGv3tF ;T@)Cu*`8.?P+Tia|O_[W%>F9^ǐLv \fu U17W ]bYLFPH4 DK[ ~Raճ~.R׫&_ 3aJ)UzF٫ʇI]qC'X}~ J^ٻ}Sy h<5 )DN2D,n_4!C -?mt.NA)wH. N_7Lho\ ,&cRYiJ!vߟZfm?`u+` ۺUQc8C_TxIE˚03i.(Y/q}HR',nq} %FV;6unKcE0NTf~*ՇU%5 'ZECpG3r7 N]*5^`ŋ?]0m7C73o,>a.Ckub5|2 :x5`c|Ҍti줠u&7*H8yWr)o4JPwq+.CDHq_şm_]440^| |*&ȣ5I%Vz&!\1m7B)-r1y"-jivE\5ث#YK"\VHfewJWPDƥVzQbi0tXN{^ыaS;0s>mKw{#>쾸Hiq=i:?q>9=0byH 3 KPғ 'Ka4c-B*AeOkf-ʦ ZH[\ K+]qx7 tbOkK`N^mhqq0V-oO eVzc-y{=v&|$uýQǴ/rm3o: G(L%^["ڣ,cj9oC &3Wq%YPg3!|l1#/K0PÇ^iDl5 U,H0BCHt~?G_耘g x׹!ccD j߻SXaDc󩮃.'ƏH|Jb-lT0.yZu:(= )dNR|P o4qKj8|9qgE#չ_R:Jˌ  (U0m^/o%D9ؓ'ãchޫ qk,b''NhZ#qdc#4N _Pj'0׏O pl3q8a.3h6p5`,}:6Q>y^ ՙ>9nwxHR0oFZGd{bIP]܃ex f|K|ƥ&){0ԂkF?w6ZZn3gb)ڨہ#ѿQۋN* M5o}2`' 8nRf00葏d-⧤VDCE dTwL/*&BM.ZI SLo.xy8O;=Pܠ!RkPmP-vb3@JR yPTUU&͎Փ7sjs\e Ǘ+ޠk4pΐhLYʟ"2ЃD21uۦI[uwW dɑ-ɰ & ̲٢^J[tZ-1Tt4~8Ff6/]S=04PVlvU-SL&c׉Q=,S`KFF}J% KUegQ0 Y妅x-iL)*J4"wjVgxv{`o>K} d _tXTVB0'dejZHvD`#Adb#8t&oYQ>T㚿p~w\fܱT7ZM8Ocu Po՜n0m9u$--y!^$@43 %%Z I,"DpOW1|砦YB!`OwrL/=y'ʎK?fÏUs/o^aGM~]` ~_ Pc;z!Dd)3Z5'X5`O+Xͱ\s)depa@/mJ5h+xaY2j=smDv#?(4^R0ϰ5u=R7"Sm+?FFDZ"oZWr-PQr`3$4QW!E;_+/D )Ez)[_-hCT_5<RBv/{IaBJO53 N^TY|',fTb@$`"zo=q#z]:^CM1ΖUo|iMwzFcMw˓+p5o%P yXI^|x1٨/Jc#2x%p]蠸b)hdk:C܃Vg+$!7Z; 6H\Q/{>p=@K~JdJ-&b#_hU [[HD[Qy[)nL?ke}`ǐTEdZxK&lOA#*6B_;'cS/xp')ƀϚkw~Ɵ0#49S3;MVs(haQ`/Yzܡ1|L$F9zޱegDn=BAn 9ccv3҄mV5`ee?qx٘io uV >FWʿR˱xN?m|MT(R(k*Q'ߤDx mt=pǸ¤Ol!_|BI|1̓XNtK<P160ksA'gD,O.IG]wbCԌkDvo)(Vݽ *5$>Ey%IMgWC\bw= ݳ٪HU(ݕV|lsoRɪwGAMkͯ\\^cktK*p%kŴ?]_Bj+ /'Ѯ%dZ?ݱѴEiNӨhn(G1R֭߼8߮? euHo3,Y2@kcCs5 Ɩ/kkg&obQ({Ƥf~I9&xP ; vNqxfkNkđO">:>6ppY)iF^sq切xtB~;@أU.9"“:fk(d >mRYof/?ࡗ7NFYGyjY 6~wp]4S%.F6+ޣr09T%bLჄwIӅ!Vy0˥7m7Z -6+ Cپi}WyIBꩅBW1J@^aČl\v| _ţ8MO.Ewu^IS-@<εjDMD˃h|1ݮE =dKE;Ubܝ :Ŕo 9X,YݾCBzےi)BPu5Ùϸ)ͨaXlGD 5"U ݖzTer A\_G2_d8T۵Ҷs| 56C *wvz2fVHj&G ؓa˒y^Ak ̈:"%}qr%h@tZq>$eԗ&8"cJRoF1c!Eb#Cs(@O%Ȕa϶@B4M'ٶTX* ֧[! n]Dp$Q'`Bj7gToAfr=@ZR7J"⩚8g4:Cת2E|i. ҪOzXRWQԊޒ- 6@?p:2ex`T|Wj*Ѹlja~L-LCcxB"\.5H-T|߮Dcڴ/zyx> n :BcqtmS b97=ɒq8q|4Hz\b{+E_RE:xTlߖ{e (ԋrL7#bF6o"KU1"u֫-B &0aj|T˜#~'[~mÌ]:o{f^IT@)372Q<$><{K.mY?WLo,{PYM|{aiQ00q&4,cJjD՗Q~V`jgz5aAԐ6K_:]~-}׮yE@g65֒-E!)],B/}D27QV Qo &X(P2z Q^f\\A/ \YkQy_*n8p&\EМL2Vy <,k"}e90hҳ#}@գ'4|$Աťb4q3yeI'A QTzcP\p\g)%qBq}lOBZx!V1-WyHX i!(zϠZGH6C!Z2&lb8B1aBƬRwޢh͙*`3b9 U{`A8≑͚q}sǷn73/y4S[P" d~~p<+. dtB*v\>VPɲ.JTD|+0!L1m]h鐃qeCaO̝$ d<ՁP8/: :ub{Y0 <"$`:~n,p0H46Fxw%siB3U|v`{aL]| gdFYl m9"d`c4zeULV-{EAz1 )m%pE?Zy |hƞN,!pm"MR/ BU-mM HZMU$휨s-g=NވX6k/,͒EᓇӲ +6Պ#ɬ+[33^hR&ʴ C`4v7(]HW=LG*7`- Gm|>1 f,#Df؄U8ɒk<.9)'Fe{[ln6%[2 z _FSn^/1 IrIܛv:o}9E*^~eJYNbf]x8DXGQW)|i8 I;j}"A|t8@wd'Wzgb3\"ήvj#ElUQA :ǒ8R'M{f],PmFBYj|LHCn tU9gcFŒV!-{uthSbY)`'F\?4yemdz6N6߉ßɁO j<^ d}t|~N**wظBFƟ/Ofc|"w u`\M~y~",E|{ !l?)#Ϣ@%) 0<"ym .#ޟm#n.aԎB#WT Ϛ7H/w:!U@ڃ’x#,uoLީY;嵑4֍)>amۗi,jofo8{3z\0ExH8-u/So9%=mlc*5p]#?&L>m>gIlSaoRl,N$#p0T?k JO+V`!IX{Gf|վxkY Iup4Wʃ` ,aQ*NL/lص# `w(2lj`X)3$Ap6.m(T+xsFћY{j7Z_ۋF2wH4oWkpB7n~p$7-#B{Dma2eb@z, ~݅LD2g+d5ؕd;jS(C3`k.ݼ,*‹f@^Wb¾Jn(k=͟I#7y΍ƙ`YpECU1J/[yj{LZg;="es<P{9A@w?R'Hn6nR@빿9kG{ [t1JIi7#%nsvA&eߪ"m&ZQ}8F3Wi'x,յOFmE(P΂T=邌q,A H@hFc6G$َR7&廙 QRr {;̽Vdgr5TS`nM7(;$Ro~yy5'ԥg;ۡ^N_ Ht|vv}ˢUlA^]KT/yIMЬ&i @p V={w =ޏ10E.$z? dyYVb}[\7f5UQH%F*TfXfsajjP@$~:c-RҔhZybd{qȦo4;E%i(Yjn_MΣ~7L9GvY:]̼hX5yOev}#eY)WK5I*KLRh4t!~S$S+bf>V.+C֤/X"8341K,S5L>3[[w#Dl` AM|DtqK˗0#Ͷ:T6Wv +|6;/p`j?|QO ذP>UhyejQsz-_gY }w)Jt{$nE5xZ^IFFvu1xtN'JIxX H}i*P$;hS Ezس%(LACЊ3#hbۘP{g|D⑥1.NP>iF{",=Vb{35jL]< EO-n^RT|Ն(IIpáut$lM)T<%q'$|cxgw!ZU dH)'tePjdXN.*>7z A1ޱq0@ ݜ$ل}Q<,]bֱ BY>فI~CQ!6dGXyv*p9 Mf3v.(d|ƬM4n=ݕPFw$9[A[ŲG~ ! LrPC`xoء(}Iw&YLGt {s̡G2`Ҭ8k1s*Hh`xN(K&uMqwJ빺ܵ1RGb-yO+=R:Pb8҉" b^fGqֵ)lG 5DžtοJzt`,kC>Htd^ t6s/ ,Sًmzp L W%OpVSR.]UʅHg>jiYMpUgprA+NH%!KZaRI|U"'>eIePQ9Lژblnq^"z Gygmh@L A<"8ZR${^]3>̼9瘇saoDQ!zQkgRbxw6:`;sXU'Hi(x=r@tt#.y$fDg`7ĩ '-)N:nhAs;׷U>rYM?RoǦj,d$yv - a 5ib¿q3Ck7|Ocv}d\1FX#Vg:kA*?^8/rʳuYY%RwXj7jT}S=-TvAZ{H~!uR gVQ7L #3 ֯ NWDßxyՕf.6a<*#ݲZ:t5X=9ey@xl!gTf(}c c?~pN*~0Gs !ʭ'>mLfFY<.SHw"$(At2>+p,{B}7DJey;d&@>?De+{c I=A+~q0,%FO/<~SC~óQ|lf+杘'u 6V_ L f/O`&P\1ì!1mk'xZy h?2L3tBe:7g->?&BGL ȵ )`B$BU+$d=ає|Wj p%-9,9nP7go9qz~-\I3eX \.bSsi~.R)-mف]0S mǨ\Bg$>\5(" A#l !-BةݩKٗ9Wh 1NDrvupy`HQJЖryP,_w{S5兇%'D&UY.##yRrV xp< pJaoms шOyɪu;|6#k~d&Xc^̫P⮱BuMl]/V1<7hR`#qTWeD});TglN심P;2AF>؛SᖩKa\u=vWe=1[= },n*O82J{!IYg7 fsNj[CڭqlLM_hkڟt|@0 (!ħP.Dz~`PcFӠO/E{ ]4EdھByV e趩e\!U2y.No|!:Ӧ!mnDoy̪A_[eD*BRp]x|5HGa?FG17=kW~s4dVth \r*I891OD׭z 8Hҕkd^z.V(^@YD:]2G jp[[ۥN+Ǹ$ґ{1^αx5Hob]^4E_<ڕUHltdnT^LgXU끐p#r%1,qo=9 @~`_(+ T/ 0\+ީ48/Мݕ ^nq>;VAl,9n2]z@(udmhxDP w;`ľX7n ń V2 "*h5ʽXZwVJ$ױtlsyh :n;[4"j(¸U7a pSQky(C_$Ih3X$K'ܴ+vXR/;3 2pehb6J]܃#TSaW{ j206I~ow%R{m=H򨣶Z g$ûN6GP?PKO$V1X[ف>y4܉eT ui 2ôM ?T )8 %Sf"w?.1lR® UL tB4pVE:PNO'dbB"X _h̫rIyKFe*.`nGt2xQhE>Ɋ-;EM1Xy^eoef}6CT__rE-5E^|*%ks[K^}z XaIgd)7 &;_+( lHD@?4]_` +u[|ľ_^dW\E8żGs%$QApXy֒@Vx\=^" +MnECG?%#+>I+NAɽޣ,5kX=N8\0%*θ!4ueBeqt1!f}X$` *TH_c<\q#x5w~7#q "%Zd!԰Hӌ8'XާI6:k#.HC[JI.JJȄM)[=6Am:`Q(Z7U{dV#c|ƎĴ .'=9V{dxN~XnG0D\F-%N}1x7%2CDϗ5|E!?^fQXtܴo?sf_Y^x+kl!V[p컮2tIQ[4G8hs{==x)2zCEڢa hV@?o$i}b'ګU}mc72Ir KbQߴ$i`Na&/;P墾&^hs$bEaxrV#lb_#6;#"Y yÏ]v3 ok[+-DlŁ~P o6Om!%'Vg9xjd+ޏlOw Cn'4+8.~TN!)bQs?ՌЊEERVYeTZh7Zm^۩4u\\C=|-֎HX>@/Z:cYJ6Bx4E{zzt ՓZmG-RǛ_qn)Yn+It;.b$ݜW0v؂~ti-ϊ+20-v= }s?Cu:% J6е]l-lH\WLpmqhM U͓^(?x"ƀ |c| +m tQ[? OUA๐",OMO%+Cext" ;J7KV(&,!? y.QF@AiSC\{z~I؋x_d$/Hn¬Kok42L*P 0[q#'QM[qA@7 hdlooBB%G4ORcvbP+ )#@l'uAI'jDqls:l+sokUo Q;hCM҉ε7Gv7x||d1 /̲~ލ`"Eh.{ngV-=1_ f*'wzՋٰ %2L: 'Zp$%7E?Jܫd 识Uru$=l,9VZ rW>0$WR OBt Iqͯ1w.zbĶYme(\U鱬x]WJy|1r*)ioPW@ jo0t1<↎fj~:)Ag.:*mE]bbnL=~28  O%JqWP F7g?F5^$]a3,KPwAv`~eJI)٦լZNMY/)G{Je2֨fט~:hӇU|$*Lp@^jLQ^]LD džR}'MT\o8ќ5OC.q4pfJ ?A$^h+P]!DbNhE mH?ߋJ {b-Qw\'2*֮E@{[EN )URR&C Ik|]D`rP7*QT11qL-&n$AX6P^&gv+yǁ-i$2`+Ĺbj8xHDK#w@!#p"up.֨c=cGM/+sX9||,dn䡲"AD*@PC$$uCi F 38dlGb%vƨ0K8"j9x0RP OS7AGZT 3Nԝd^ ̧9>/rA5),>cPp-x5܃#ZlgpBxe#۞)I4#kqi)9 ?^x I U /^%R]`pPGgN﯎,Yi_>ܔ :5 Ne}` /I ad2ܺ.Pfu +!r)բO$݉tEal WYI27"笯ΔA] ZP 9tks6e'ZX;yJӸ;6HnƊȱfWϼvLR7\dƴЌp5;9;R;boЀh] HF1$qQB "w3O+e s;d?ՋkaN{,o/QGTw``f-%;.GHT:xU6oi02jz+bnV˼:gyؕ˄R^;(q~b !Ņ)o5V{8J݋h]Mc7OCM*x-^?9DS0lm,쇐M 2MVGI@<8-!r)M7 ?3Jw*wkPnߨ_J:6X,1:t;"/F楗r4B<6{{RI)<22T'J(^ns6 #R_+}QŬ(ҷELuBG zh@=6^{-_N' GWqxxЮW}Ӊ)yHig"QdLf>SZ0f+"aIhW99'>CLjrYi 2\"KlF];o⭏(?I5a+m$rlr[*gz0g9KI@~+T`(gQ/qY \Sh)n Km_-e"͌Zfy W94vM_<=ebi8t?1#VJ{&C1`yCI)\n ԟ>d[ަ @l g\Ha$CITh yݚq1Ҳ(#8ZqGDH]Ǧ:Zȫj(" dfW?ISxxM^t5 >("Hí6;fD8"KqVndUW&b29+r*ljG! O=AY踐M >kR+]A X ?y.z[1Yu*|wTlC%:ttJ( vʟpAӒ =NȒJPqH)rIUY4Rab"Z:[Ris?!8]Lchg b3vKw*>D T 3:4YVL_oџӗ4chKZ2%5@lK&Fj?9 sn+QC]Q_>)F[8:`5 Sq1:t5? 5l'&&%6ɗ_ʓ6ސ&?8?;c0~/W#t򴟹Ll OvyjhB 0ƜC*weJӾ]1bٝVfQV [84ɳj'Gіvΐ|"SihNސꮥRb|1?CuD}+9_u)YTaThudiǥaH, \pޣH #g#B@SfhɚO$BޚR<nl7 E&[FYVz!_YUi;+/Qtxj+oh>&> qQiֹyAo},O97 /NK .#Vdvյ* {Išr\\Y; my$ϔjng|<hϑA]2K4D_mDOz+7tW x{H/J~֬dѵM} 2$tv+Y6}~AT zɋƫdPlSj:q@W!!!y!5KNQ }b$߮I\rp[&t_p`Dc>)bZ) 8ߠuXe{FYfRK|իoZ-uGH"BO,wL}XKy}Zp!;H`AKХ䂵jc cG ';6.g:OWe໭U ^Oܪ+sń7Ь8uM̢h/Z}$ӊ$* 65d|n8=*vpYh1WPsuE^S(QzO+T_0 a1A4J#ԁiu F E@/mtU8$ x/t6l PW\kƛ{P|(n\>*K~^vyvܲIPOe敖6  a31&`ZWc}>XyC·U\C'enm t#$GF6#דiDGPk*FY. qXP' أSO&ŽabW@HX4nVʗKɑJ)(,b௜X\7#Y,DJl󮯂I09+SM%鋙&;1^`Z( .k$ّnC͕F#;m{ɚs\b?\#Nu2j_@ AYg'dF-吞<`A @ѯntL;&`Js9!'guбgIid h~4ow,]I)h???d)%w2п>ZMykn}CgD-ih# 臒X`8ߴGX̫ϧ2̬&y2v/]2oJ1? U!{O.1h3qkp0q+0vH۩)7=cVii<3 wN?PcI]sZ>g>}$\:XUr'M p brm2yO9!܈⁹EHRbQ{b`aӾeV ֬9Y4Ơ{E@)jL D|4T_iSDhv`unB^*0^U[fҟwG$P0.99p.u[?O)zIhF;bDJpC^/w #v.w8i`t|/w4rD*APm/4 .>4> R%v3?52mG;<* ^qw={ZŅ<}ֻ̂S`IG*`VS+[ U(I(bCmٜYPV@Vꤑt[lJ ($/n;q~l[pRg(1I`L .d MT"1)5mKwMWϔ ĺkEg@>NFy )*_īilh+56]uKsSl脕=È)4>n%KEj H4&z،]ꋗpMKI~RkVH 98Ҥ+!/3ܾ^4'O8YKmL;I6yu/xC W`)_ccuW:8 {;]QA9:%CU0/f^Oi^:xAc=0\28͆{=>WPW@^Z(TBYj 2yCA0/*m)/'M\c T 64-eKݭq}s7|S%EYkcpW9PH( ѦlJieQB1m!.䨡><||?qZ9l(`u4.~&m$ymv0om1gsa>2~9U>).$:~г<a%;D&mA툐?|E:"mۖ;=! {f }d|wO%H`JqkK<$*gU8~ۋ''p5k FIDcWjgsH8t]y .K[WO8vu@i/(ƍWNZv2b#6S,֦ 6  !-@qBRMjȲTՋjE?l ֎Ppt~wDw$ùv6T@+~7ǧfI;2IP2ا+aCn$YЮn6?W> sh[C\ UF1><ݑ 77ɕoȱJ3 6SbVMBpؔfo"gv桤" tS?`}w_l>a9yKei;4lV>Ejr8*"(XyfP 伆B.2 - ,?sːh]*^hO}9a^+:ʻ<--R%l6ysp0UK-gP활q/Cy 8V$UNo_/;*uFcr#^!º?{z h<{hi,#ZE?ILʯ8$fBm !3$Tzt>xQ/..{Ģ6jxR:U'<1[(Xjh 3\<]Վ,t$+D8/6eC̲J{%OU3vbLTh )U3H!J/㘵10f;TSlm es[pBB}[eZ9BVT<3CdMQ/z#.~i0㞘ׇd,T/.a^om2UX dJ:17[|@u9O|;5KihT~^{~+hVpé_[f!ԡCdzC"EՇZ!#Tpۈ  15fWR!g'3e Rw'(qByܕ8&|3⧸D. vZxhئEJ}asbly"fq3BzK %_xs6ufRF8G* D[psCI%XY8Pr*#+Put  ~NJf!#SnS]o3t2Y|}Bmc+ qeJ('lvB`?hާB𳴩xfm!ELr]ig-7x\R55_;CԒ㱽ANAxQ</Y_@{Bm>éJucF~D 1BQÛeC''NigdwJ11e\R9-#ז[q&NK@zbwy-c~ |3 v4]Nr0ç8G?n$\B@a/HpBϺY6:NjOj>vw1SEk#_I9'ZX&MsmCѠ!HkZ$)ڈy\jy+A0eiCP_xGU#)>G?`бX>pKy! 79FDoK6|$=dw(Tj(&SN7DzRRt0H ,Ay>9wB1]p@OJ2L<0Ha Z&Im&oS@R\RD؆ā]9W{+2dunG M`Nz>o~9-+F<.͌tfѲ rrͦ'uA6)4,%4>!LʘP.Ђ`~Oϡ2~4-.Lr*ñDt= ]BPf{5?v7C0Ҁ$Xޱ/5h.jZ*\ъڅ!n0| wcX Vcu4x*U a@h͂9(hz?EX!}1OfB7@^BxIV&W vUMY܃5m3/#OY ht` h[RGOp5(ZҠ}O*`diybM`7I1t_j_{DgmTq3ٍJFg S9ܣaO[n|)P ~'Qg8 =΍{6xFFwW9٤ऒ0$ ( v~k9>1@x?_WXMz#ˎ5#o-*{sG'Ih+C[ٽDQ\vL 6(޴izh&C[1>&g}?_ڢWGB-՘yDzj,ج9t*t.8–Ө^ÇEK;RZ)۵2p,l\'b;ѱ7>!䗁A11P1@?KI#/EQ^;vS%ѥP9:wU0/7ۛ:A}My[,"2;d;Z=4Z(Vdd)@9΢ri}]jTcgȞL"<5ܪ>6qofŋZGźNECTRD l1, *_7T`Vc$x_ʥȋtIчs?;w".P;^=CUчc5s'5F$>)?Bc]o$W !6&oЦ}%by}Eu GՑbC;88.G~r2SmeU5XT,Jђ˳߇Һ^]SBxc 'R]sC܌MlQ*5ѾVźT}znJJ544 VUuޡ Rvl)\qBrT1s'?2y{ͳ`<ZVb ԊR℔V̱#PaJm?|/P PIZYdV&ϪH5y%[hQ~'c"PW&BSU$L9RhR5B4>ԷeftKoî1sP=Rߪڵ,Uj`[tf"}R'i4#[RC7r"-;VP%ASTRlެ1,%ObMѡUQF.!'nDصm=NU5D| 694Z$WY@t`1#I%mFs&*l, Rի5%iMc"/tU2z4dP;R=-N rd_AHo|څѲ;8rnך␬Jed߁K;(5A2Ikg-^7*Oe#NKzĻ%m珢y7즮,r{bu.׍FN ޮ+3uy.Yw D|e偄]BQ?_ن2|Xlߢbr#x1yӶ#YzM,%m%3N_O6d-v;7ŵTGS}F._FJٶifW3h+sJe>/22q Nf/|xْU"J1hh46#M3P%껨}99BEQ4;scB0]As&@ n:aCmvm/bFv8oxPԔڒMI[ dA/_쩣ª!~D״,뉇(\cBU۲8D0yT`)#'C ddMg?1C>n7#8hBvA-vKgs]CM|Em*}'.W9`VNWaFLRu~ [ڑv5%Pt\3U6TwPrf2n?-wXgB4 )WѧknJ>&Rm D> xZiPy.AdEƮȕ  6䣣wO5F?=%fq?czȆ 2 v=|T-M`v/r!'pn:{N0dh7׸m']rEIKS&ߪ \py*V9|z 6UTשnUu۩fo~ƶs>5j@gvpz!v\K]|%:5ngB4 $!,k ,ǚԎJ2dQoE~9WaP%lFlϣ{S5ddԝVϢhT=ޤvoJ..sV/uE0fĝڱlg~L&{&˳+T(M8N<ϤU:d[vz8Zu*uBˮ­8[M IDG\ʡpYJK2,AICGJƊByx?O- #ET >38{S~˟'WUJ鍯 ir[w?CIz^-f"$ \+Z[L|RmI7rSrq f4_iÅVg9GaL~c \ٱ̮v(_.])H3ҿn1_6o5̼uJ! -qݶ3Sdp{袬ikݮWӿZr\|Zn7D2R䷼w.3!/̊xA_,l΋ p N$(j=l{grKfon֕p:z A2Lbv8Z;)jsR w]rgJɲn`1DD[ YB8~D3uRv!A@aCQ48M7ؗtkHO&F nͻפ* aiY#-l9; ;FYsΛR'rK/JbR*FU1ЭE4 LM4w^»3lp4RхȀbC߅Kޕ@ 5']fN3\LzvMZK+jEDphȆrv-x1WGFş I[E#c9< $Bu #\?l🈑I\|2` HbZ{U.<c.}T۾;9ϰ5Jm2"Xe+'鎡^Pփ^_n&a5 e#qCܿtaAN{;ڻ}Ni8*NteOIӇF~X ܵ&!<&5?3w'2Z%s=-azT0?я.@v//ת[M8?:_wL8!lqJm_RԏP.9/;R`PG_/z")rEd, 6)TmrWni=wqZp3]S2mkVB²@" @T]tzjNQ]5$ u:}⊆Ek- S{LF瓠?O17C^&"Z:b>5s+J!0ԲJC&S"_p&\PUZL!GDLo`@y>Q%z6q5:]Q96 YŴ`gٔ&`NISxqFv>XR#aw N8P),VT9kco(AmF})}K)j-rNT.T$=Aa84r;pXOt&ֽ}H]4zwTHqߔg%ԧ$S/zxݨMYn,mLq= DY2;:n 1!d_%_w莃K1~ |fSayfxgN1w axŔ:̟{{{ED ݛ*K>@⣺o$qg2XwqI=ڗ}T:,z 7[!JOz2+)nPbׇSEM~;y$BJ5ͦEjV1K +ޓ=jr|ddň%dE.PP2֖dB%Z4AoGbQ =qli>jYaDg j kTMWQQS?g?y)p*l0tS[+*5b&+H,oΗz Ć'({t47'<)sYUw㗇\I Pyj UϚ＀3(@Ŕc_"lk=#] ]  sFԕ5:M"[kj#6'gG|ezh[6.\x9oi񳜇}h$W@3r,3p[FdQPtO3Hu{ jlB"!>iNUI|քH&yvg`'m;cAhr%);D9 ~ݽDu"@)#;HNRĴSXe*Y75]42FU?aY }4,,fp8kP}8/^/\44rQNJ,bz+Yg06]ۓڔO0ggQk:/rFae[9c'G2qTgB5Vz$4*/#Z C@Y#.{Q_Yi쥣Pq?Vm5 s%⃞xZW y(ъr68aDl6h4WB搐>Ct/"ѝ/F\+a%ID!$:, gW3ک9g#UW PS(!0B4K 8SDK  S6C +* q8@)~j> 'Cs xecbAڳA}ky` b<-}5x_C[¬F6pl6-}sw+T~逛 c(yV|ly 3::%H^mEĉW ;~q+祣/-T\CiC+2rSD)^d@N%(GWҔ0JbX~9]I'+ܲ਱ia *peqtvY)~q]BĒOq8S,.e~mFx-I M΂IQVKJ0^FDO#Agܺn',g*6EP6K8\9~huyM*»,6G ŧHroBddO`7qw@ɘsC[QI777{rdc)Z.u -Khm^| $G=ei)І)oL0:RNO4lw ҿRueC9nIVV&!cB]>̳k-DM>HUR[8j&qWj ؇XcHEʰu >,d.hJzNE+9\0$l}K[u&U03?x䪹wl-KCкLмRg}yTxĉcexLÏ _x- SRa8DjgfH6:M6|6g: Y83̈́ =G^zo͐+l\*ޟ}PVc/7* VEe&ƛ+}*!&l 6q`spp݇Y$qGij{%\?͖4x ?ޞjꓸ-y["p,(hv F3B1.c[q@s૕  0S" X2s<=JeΓдj~I~pW3(3qJdF/%գ&,@ HV023a ~(E+ ӁzЖ^'f ,oUyުsc :߶+4iʨ⃯SwȦ%#Ph\C6MF[sܑ֓udHå|O#{{n,p9=]E p_]tXEe"^Hf)?_?I[nbnE \ÔAq'}r$"c=Uy:'. i⣽&uQL(?l\%,'6"9m@5UM|@c%VqsQl=^Nv;-)e%j 6|\GJH6v;q`)rf\Wf5IѦp"Z0,Y wSpNSDgvctuS{`CuCG{ oCL.QϣT)c/8N藳U(-T0MYDe c*aL'tUdj'+.oNҬ/'+ߜGa, Qp$ΘxF>H_|BXR 6 'O yW"cc- vjDv¬"5 z53fݛW.;(e\^04!7l1$i`& Uđ/@3_R)t9G(>di厪oR>Ģ~#Đ6 ;ăsC)7w=޻b4/kda |\fY&6 { ST&t$y7ܳT,Gp 9[Q1dpo7gv#`*&ˑkvf8)D=1ɧIqHmE7\1Ge\GlMÿ|ӂΎ> `_Y]_eyբ=-\{j72IwhuZzvp>lڨVhys3O`X!wu"LU6 ݗT VX Z<tb)^>=fW& )p^ךCgCܰ9xyh VN*xp)%534RCAH8{  ĖDƣfVQ1*6tBzжO´8Oj7N@5Y3$us^\FdcW- yZ쐁:>Im9"{ugE;d_Kȟ(9=A`(JzXG$g8ֺ, Z*GC=gՔ6.Vn9eJ.42يI |.\0h$wъbE:"p*kc;lb4c(aT4-,$:شHtbXY j5wf/(c熝$< B]#?Z*]z*_TTc )kًzxRk}`}_I)|ZOCGH_۩IpFtL INCWnʨuً9ru3=V2%3J*? ´2=|0܎-K'pr-WY2<# m%ka5<0Úh.ꚇʨa1N&'5x3r쯊|Jh5zB$xu 0"CpJW Ϣ{Gb5ǵ8.G=GjMri+^ef|&eQڞn/X/X}9uNzIS=\tN;2lcN5m/qM-QO bݦwoeG/kULS7X| 1($~8pfʌ/:1`HޞW\Yl m){7 LAT܌^qs|_VW<@Mk(T5Wh5T,G 9,^X;u9meE}4_]݈.t"}nzH>z?X' |\DPy(+WM6M\K5 .TL5ni H'c]C i)oj(TkfcbѲHS28 6{%z|;s,"zr7'p_G~X0lcT\ԺvOu27MBxA*.̀RW ]NZJp}׈z== '/tbLζs-X(bG\g:N$7w}L_:ༀs{K:LAljKdx15'ʟk:q+;9ry[$MV%L|y|rbθ>ZbWK1JG4Sj[-GѹU,u8IhvOP5GrqI٣|쟞rOJ-/s2&g{̕`GkA8<ʟv~A?\/G&c,Wqo .M27hs5A8{|vu '9pą:X-C9ٗ{Λ]i܌Ht7B;Bo(J']z;v `QHF[1^k9IњnTY.\~ R4h?'A5\:SV_1IBT^thAbKB(Ω+0ʅ9Mic)<'^(%L]GT0hBE&WZrDUұ)iz CXx5ր2aZݢѧ> pp1&>dʥWZ ] G`wQKvG3W{ƹ..7L}Z->0J嵌㨢/}ژA}{dH&- 9X>-è7tfOy2"}њ Jy7`ԛR<9۬뚵f LTV A=p@Hw#4Sa(F=/xe&gz]Z*."a%Y70B.sp[䛕rt_X#yY-v"Oi[,UVwqܝ՟o&ŔpsiE8 D'ߦ_ލ(LS3GUQV3JC|׾&w!>V|c/d@]UtS`A3cz$A͠x}, )7cZW' 9 œHBCn0$%6m (vR](E#t9|,Xp7iwn4452Rv5}zLoWZ30ӟ4&OLC6f[!-[Bc 9JL}]lDn lfIe`)d/coJx]XqFi UѢqİ#r)llEcW!EB7uj r 6O V+ 6,π1DW0`Ԇ#}p.8 w!x[-oKC-Z{='1Kz|pE3^B mya< (jdx#S.BX ǯkЌZ5SS^nÃEMc\4˩$R'dc wmʚ=LT*(*)x>e7:]vr3. +VE H]~ ʂ[M%V$W% .9:b>O#("=tcY &RJuu6{~3#v9BwGn ߲Ӱnwjh'PS(4 .]"_L(]b+]Iz|b n]:8@vӸ/aOHesX,G#KfFK }J^)hˮŝˡNۃUW[09/Or*X[ܙ%a6n$S_ܟO(VȦoK}jYk[Bnt1t7pOͷ~ZE5aƅ-oG}[JSmfndYN1 Vo_cB Uz|S`D5q kj#)Nmh/hO&L^UD}v u֑PVo^ \@ڗHx) 2 1*AA)|a%<|[ѹ}9}WG2k$H趗@Aq*_$I Za,DLvx,k2-~byGMf8Wև68E&k0|>abLmO.I\,>$RwdS8+X*C;(wŞ #SHuܬ@ە<1O];#C&ڟ/ l?'t/T_6jdi e{LƯ[`l6S| kSv%"n/8a$:2 w]" g4jӔ`ysnahFXjNs/UlF$oHDA+YVV4 iKʈQD}|"?e.eм}Qoq౲Y&շ#l&M_=DtVKYwT'MK'pŠC#&uܟYEsm׵EqQdԌiXJʃȖwE׮9[FYL*tJ.g?n=\nt4>ir'+Hpc)^5fjxHq" 0?M)\Ʃv_K:f0#P_j=e|n5>G9vCukD;@ݯ?-PkSJ3K/uBq?[t=ga@ 1m.p ?.W$^*BKvy8JctwY˥aSQBEI2*X!&V̓WFgeS}ҊϾ1| GyG<'JIB:)g]زQ%~ep|aG;/YR[^ZvX(y;" #;eue0S@w~ I8MvU"}WDn `,OKe9y9wٱ(ʹv'{`;uŹ5~1SS  tƑRҬkuMZ4 NB\ܼ /cgo"w]ևMb?)hU) b[ڐDYaI5HI2 S;W:{|DiUC-U5aBKJbцnJHG C~s fqW>+KlY4_"FVabj }`^paP",4]C qבk=L*[q$C~v9Mw4Œ})Fq{TBWN#Qї*Zᕅ}|7V8v:V+gR^.]q}0DJ@Fl0?É~RN$A;Y0q5:n΁4;@C'H8̣~cojVLWQ, 4w©YΦXO}~yO+=1GQ5k]nEit,遝ͫcd< #T]vz>9tn$^YPMH{2F 2(ȍh/ -9W X`(kZST3,Ћ"αԸ'n6͡M冢Rok.hnDoΨx B#Z%S4mM.*_) ,eP6垐Fsӆ 1;%]n5ՀH:ǿYd슭9/Oܿ3Cjn J. Cr0e&2238Uۮ<[z2bL 3wV6wNJ Ac ߏttu 6Y+&\猭Dr .ȼG;'Ds(9Ϫ 9Ք;S YCF)K RgA͖yV9ƙt(e+.$~`߸~N@J@ Xг!+qO.90Q8ph^9@Џ#Nø聚(k/-{^TGJFuĖRp%OBQޘ= 0nUuf)=ԓzw =VS=E[S_N-攉Ws=sȺ* =m>W xXH4PMJ ,5: i~|$/=Ϛ ΩȻdMtM)0y}/6g2s4 *jX42oN~*"MG+V}GI $I/\K*4zM͹L_[ɏ-#ިq}ݝX)}cdjKQIN DP sUJ}SsB (^XdD>+AaR0_Sb[0.6Vb^/rc#[CKڕ|*&=++n:eJ&NNK{"S8k80H2* ‚ULtvGۉow CXfwbb#fjOc+1,֊ȷ?pD":ě³ѼGs$СYiWpyUR˳"T;p@'GPv딁>·lͩn8XEXRX,tEV` np+J.YN!S!xI@2"7Y~ Ԧ6y/DJQ9(lxK@e2߾>@C29J+.ǦR CoG4tۗ/6?}UR@M;ӧzQ(@+`ws"L, 7L~V'@ >V?K{EiiL~&f=3N)+Q"%Q X=:Q{06E۝z b2v\] J,)Rbr—Y%WxX{ʞogࢳ#M{Oif`{a hoEfeWA%P-LM:y5PkWLmÕ`UDP&1#! ,C$2-As V.&KE5~9BKGoc čcxF-aRas<5Bh~3w 귺ςep5n^= ħ!.ލj.0Obby|X]KsCL _%2u!"ҾF;[RI?o]2_Z]m0TWaZb,ZnW'J2%9qȇ^惥$bg__Yh(A$'*ԇ PduЊ#O^1lcs6zj @dj$Hi@T)RO6A(a5a@@m(z*f]b48q.i1|NpҸV,i) sZq67}&\k+=\4TAXN#s^ᤌ5Spr(vid+>-ݔD9(^#wGQ:!U{>ñln8 >/%\b@z ?AtbԬ$Aw6՟]P\f6CZ %ҍʜ,J/M5]#z"WJM T;G.$Ibm gcu\^qzgJ?Uf˞k˨ Z.?79cw)9Rz >T?b-ꔫPZ]R?`{ 0:\k9LѦ}l+ʶKp;$khU9 =Ś\p + ay$Ϊd Rlh [c: 9z<6E[J2uմͻ9{ %q #4‰<.klgcCT:/n˺ㄱ/<ׄE+vGxÄ{ٞ@Vi>V*ΆHei?z칂eW$M c=ZHENla}[MԼ\mf!C=l;b*²#YY ,C!gijdk^3R2Õ{K'QXu[/ҮOv5' Kwe\N>lTȆe'%p=6<:Bgck$ēMĿ#D'7:$UT _Nqt=72T^&rkVpǩBC$iMyaӌ(uTsTxJZvZ'P#띅PP±މAl?;+q8w=piZ,˨܀`|o +^1,w*`HrӒl?!@)&.ʲq3}Ӿ4=aӶ%wA@jiy-odMBy-*;? v 5PӘܞ)LLUBzR}&D` 5yEB%t߼OGi B1ޠ Iq];Z%2\V5]c>[C[x (vџ,#gg)L㞖lQ^<,Qk+)ûΏYabFu6^uR cԄ4nNU6 VKG4=py4S?K:w,[ Y42/[X馟 zB'c"r;QQ^x{ P⏜:~prKgUr 8+CGxrPciAʓi밂%ӴbQdPM6cn2)#ڼ7|4 xwt- 0&y8=}Cz 7VN]Do7! 7W <59j C#"~Wnqxt]͟g%i9 vyP(VΜFtv"p0|䶿>-Q,15IwR}8Av~ V/|#-XH z yzɎmzM@%Pv A,Œ6fN`{F 'W_\.Pi*cG22<>3 *Ǻ׳]?!B,[L#Nlٷz蜜r!eKUjD5ZӐѣO 'XL &k7'{Mp#YDwcIwSmy5d.H 0= dy&([ERZgˉ/e{+{k0k;2SxX0o?E̊ڧu>ш m=Ű}w4oIc._3tYFzS`>4;Ǩ)q4hK[ gp4%wn YyCԚfk>; G!Ai|@9&i#F1_x6)Jl,v'2⫈F!*=R 4mI3P`cUUQ=V6I^ ^wh!vkJ"},Gc F^hzZ)n"]Ϳl}$MJ+xCÆ8.#zK;/X" YqN&8֖l2!;Ajי ׽ Jh6nީxcr/jz)Hqq~P i籱 \k߼谿tԝ:[w0 k*#*[*¼h[KKy|P$Etb9n[Cj$n@': ؗH&L,ƞwǗRY;}lGyS!d!l_űB#3Җ=샰+fNUZs7Qoi=~[muQtqvL}qgY̏zhJ_ɱ E~@~쥚(*;ȚEOI@?, Y&I:dV<`W\l~kUٺ4T-HA3`Ħ ?'WЂ'RD[_*wmQTOZlNp?në}|擶2:{*hյIg;mLV.yд@6ڿvHr}1-,81%џr\8o<]!\1fU| #I{ vΧ?(g})磄yO`vիFS-Fiyf|Utv).Vb z 4njD.Xݛ~!A+!Clh>QH:^rGgTw-/ diLO"F){qԌU#qȗ Ԫ즤(6~rq$uM9Mt\,l3cɖ*]!p~wh {S Y }6\C򑍓^9Qz(SiKCXExeNVP0sx[ip/vp=sc'Ж(+j7Ma?qRiᑖ8ŲpG9 77Ρ%wiGi!w9 рPGH,hb3&6< Q|ks]7ʉ$=>x̽,5Prh'e1'GŚpmxxrGGmӻ:;A{̱xTZ6.xlV[_u=CGs:=yO婢`Ր6Q)/w=eie sҵC2ezV=Oj@th1H3)U [#~c]4yf< pų(hf%nO`p ~b.uf䷲.&g !gUDL(wM/[gՓ}y/3 }x#j?m̰2p!; ~x!],3EUt'L)KmC ]r[u*5\T3XU&Fqڕ[rl9!\eh5 T⨹&!;[6,֠ X̡6G4B.u.B5[ zM̖% 9y27RD.Y3ص\F#h HK"Gǚ'txO!%wNūأfnCMQȷAj DvIbk/*5p7&rPۣ{③bLFʚ-debB H09Ūp3D:ĝr`9r}`uQk79i>9+Cw *icL&"q?oRYm=f'Ԫ>s!U.P"$I1#r0+ʲ)"h,!c]޻qSo+R5V?`4:y(x fI 9{0Xgђ)=zhwӴ`)<ƨbIY3S%rgiYɛP=n|Б\(w aV+s`}n7QTH竢֨ (^X&"2\[[Г#5%nuGໟU09|\Ye!K厧ЩaၯwȢnxր1Gx _KdiAFGTMevzu&0eSeY4V񔳗P $viKurc=:?t)5[2-B @Uݘ9S#,=@?fl0Az<:#Βё7ÈceۑIerdRuSW#=yT{ل8?$`4vG5wd1LXp妧<+Nc8\uUdUj9-Gϴs6(ST㎻[繽vu"Q&fQe=xiEm[g'} H=m* FxH?!a4 D*}ƊЗjXQs&V(Ρd)>u(zlu5"P;Y5G62 YLꫂ?VBIKog+a(Fӻė^8< TfN#d׾I^} QG)0)<FEw(Ys >7#d=Pqa"ݨ}ĖDxxHfVc@[B$5 ]npҎTJT9N| Ld!C'8{2*Rr 0p¾Hˇ%$<@b8=RЄԸxoaj 凡 bGyLM"hjB}+Y 8 ]mgM"΄_ǜ3mCT"HbTŲզd+xEf1EcrR%`k(7h['O3"UaJ9R¬'|uZDo ##Uؚկ!K}M( s@T/e+) Cxm4C X`lkuCB/EeC,WVU3?9+3l\=-ocf(Lx@0^ǖwi ZuJıuyG$7*BRNez[?^Lg"1v<#V``H[~8 g$ŎQTͷcH#̏mv_&,!B`S'?و-C2kW4j'5j+8zUV3c=[W_H=GtOP, /n}gepc7;kb[m΄=z+Y, r!qx>k3nv?US}`بFhU.vJzJ 'y5x792!8BlLxac Kk^_¤X22 "S- =offC 2qmUb:;ސƟ}Pkz҄?q=b_t3]`[D6:^ h<q7ϐciZ/!TkI$В9=+Vw-WLtfV|b-dYr)4QlH}oN5Li>Ҥm!To qTIap7>ߦZ|֨XV Li NUT yLscjٌ1qQɋ.~jT337Gk[ p-3b:VC}8Ϛja+'*&|Ώb5>!{g (A $ l}O~fjxNk .*WIoWd&tI_>_ fj-ωKp3rvFR!~` z`a>ʇ؟dKs\[w,sSFR3 wI/5t@1nwWA゗gM&@T9<7 5ֺ'©~ôV8`2B1wI}P0jln`sHvܟz<[}) (wZȈvF mhPqtgxt9b*};"ߏN 9LpCd Qnj{zf)i<9!}+$QgT-8{E7R2j/AeSVx`aBZ EXĈ٨ږߥϟ\6'A  o$>Rckkk⍙}@I:{ gsMΟ\.C0>Ri.#;˾l9;su3R na^XR^lTf 9rDd3c:eډ[.NIHI'reՍ62QcbU8>E07A珑-]$ 2?H@{ҙ(uT V.XO$XP\?'ƪJ^oOpu.il> j~r6?su-ߋo`sh[4Ķ>+W ÖW@e;q9t'2 6eU'e<$t(gAZaKVC M>Fds~2>/ b}&~ɟ`%)aj4W YN~vf>'Gㄠ[GbC ӊ&FZJp;.\H t|9"-$5[zq PfiZϿ @;}iv"3 ce.;d'߻8l Oc1ZFEF vfAd>v"[!& ĬCo-X, .D O@Ci-QUf&Ak츜lLLMk_V )\rShATKq}=ot )uYed1ǗʃEI3u/̍U 4m:@S'iM 3Dd^=tۧoWUq9e@ 9M+3O? F -26Bm<b1+AIsFu (š56B2cJ+6<+0&v|0]N` m#nJ?MJ >><6;ۍUep}`N[kDktfo"mZ4Zjm=>y̐[NjKh,k(&Z//v=f~=t 6!:7~l ]7ZݘB?jh9 Ki'lcKí*68qqfSN1c}c^\ (]x!ӓ>pb!AKt9615̻ dG !1=.f!ٕ%`}Xɦ,3%6jx 2d+J8VZB!mF| mwCiy[pRmxdEPWC-5!*E^ +84vqͧgZۙqlˎҞjfS ̉V$2h`1.+tԠ!XM -NLr.⡴pT#:Np/0_WQҼGD}hb{%( TEhT'0fwuWrB«/QzLl迟HU(<>VamӤcEG] ¹CsqnuZM#& L~r^>_礡eIdft%DM{N!, SU>#re0}+'WwMAGP/"*dQZLr]{7hH ;Qqd{oԑ̍<t|589s4W?O#H-)UL.g# N#XkF׊_dL!OӔYCX¯0C)[!}?4ܒ$ KMヹ k<#ّEM V+nn~*_Xx,]I? ~Ze۲YR1X!M@0~!ȢBey@p:dVe[kߧl}Xo %&|;|fvJVGbqΨwN$LӾʙaQdڬ8^aA46-R̕j0M xZ\sxD Vf^x0;r0`K,7į"Rp$ BNl5ur|8URv$SƟq:= sZ"O*ea9Q`$f! <SBO:*g45b/A dRCxA.'G{rIKj2IbNnmbTqmf1h튻gdbKjÜ JW[K,-@ TN(2:S- @RgHXX'b$akY ?#9GVk l Y%sS"L3:xCŁry~EY2 +׀,a18fóLłBciWD Pyp v\c &bKwă?/d)Vupϫ#~<L!0c ފG5Kى,'{+D/_ֆzςVpgz犂/3z E$t]NYx۫E!4ݔ)y7$l k' Xj`с&i?p[F!lmc2N#7T)^uy),C?sB^L#|m<+ #aNL\xxtwm kfKt+I);C2P$+L,7&p’`Cxb!%)H߼HHn [] c< }eŨbL|2a(t}$XDk.# Yp%[/ZY@5.QŸT|~ '8<6/1#g (+MZFXkV!ԉ[!FgNA%)x{[Hccw  \A}ƀ;iԣ8sV9in:8gXyXr5WsBQ-Ƅ;O*,FS$ikGmt=qr}in5#I^k}2j׺ 'IRB.=(]} iP}Nls~˰jpf5iq5A"[ۭ^kXEi.ߙjCDtB Iȑp17v{"=)ؔMko(,p+رozؤh1bhm!)=$ƹ;W08saF| ,87Z'6X)zVyEI BZt]B;#զlZv) +ޚ>Hl\6cj M!!qҎ~X74Itznw^ ,8zam$KL{:]Y9}O$pD$Yp#ɕ@M+F'x.زD`.!g?usCQ~zV\GID0*߫0/J)n ?LII%7:mڵcB#FYr_ L[p%` Z\lY)f/s1>ТOR ܑ`F;ؚ6~!߈Xle7mh FhM.0_gG}\%b"$*Qm!L9QB.e[9`BoǝI ;[vPGgӜ7@00#'mQkqDGл?b## ԁHUX^xldߺV0-v~^7om_տO(6{f5Mm{ S(}12@΅H+bE( \.\qjBH> N(Ce=õcŋgܲ``"d<6&hkU1SIE|=a>:(Wkbalr RqaJ"p/N.]sxn-!3tcAeEq6 "Q ޥ{ZWܗQQ5N9[fʱL@~pPQ" s D rHӀh/Aq+A M*9M9j3~uK̃C3i0C|;mĶ!k}x|*w mifa~s.7 3)G7z-)jFMfwJܣ}14cdY(b K^CNKZVqL^f%H别3.+kjJ-SDFOs&opӸ\!ZQG&tN)Gc<\)K;G͍qĒ4$ <ۤ'$ JCKNf\Qd#eF)W/ Pl ɱjʢBu1~X1x?4%hH[6w.wVd+;2`z "Z0gSNs:], ̽e:CLTn6|)FuD4FMGGhGȽ.fӧ-PxSacqs)GXUJE>% Iԇ B7%2>vҸi5-! 9&gi/$'/2.h|,B@g W#\K^Øy7=؂Vp@NXuȇRنDB,.±Ҝ=I]nrPS"3Q+'=y-jzi HÌoGM xC޼H JC-0%r&{vU(烹\(#NER;bbL~iP= `3i3Pũqd+;jfU/#R5sIR>eHzRa.X;Ə Ѡ dD.o7 >yi.uP|OߗDo"0 B'=i̍6:}N j{$CcT;#d?Ėmk0oʜ*Obd`>8ے|%fh2X&L*'wLB+b:(<{^tqҤN*0C@ع?v)$},DV,OƨDUO[7Qs6|CUo. 䏈jX5ć ֥ZI"D1- [.9#7&6idj26TRHh?X;ͶC а>R%ݜn(uMz_mpR5䁺PD@2}_owAD1jn :t^1c~Eyl7" 9q_dxyG[AZ!iidJTs-Ȫ'y-G\!}^xa)Z#5lp|._V֦@ nZ.wtl_aX(FT캣f2y5BF `bOx %"{Rn`iȦ;V\M"y)Efaҭ$!c.L Q8.Wz`f%ҥ̃pBD6|m,ݳfgN7it=Aȃ6O'/ %IdeQwfTV(s "Hz;apxEbC=.+KFzf8hw,<R;Te3^VP;nI کQ5ΰ8_}PfCxU--%Ӟ[aT[D;A3o" I2H\jmv0)^c!.вCF(s}+m.~ud@WZmf 2Ҡ(qJJZB;Fc ŋAS'Y^I-&6d*d؜a揖CW7">{}#q G^~k{JsXBJ1sg4Lv}v?${6'znj1X\4Aοu7(4# bJfj~z Be 5 BZz]#r.._ Al/:⊘jp结IYV.Ǣc쩹ss^-G`Hls XU3v",dX'`7.E/W ,ޢ-xR),R`|'bᬣnFle/omAx{:Ta5ϝꬵY_PS&uk qd7(,B,>h@6l rUwb&/ Rח Ym}N%K\GQ !$y5TȦqkAv# tW ]彟 iS4"{}DM uG FX$Cuq/>K! [oZk(6098 Y7,cϓ!tww;s9Gdi1mA];)kCkɾ+C!k5Ә/-Sϙ $^<{{PADT>XH8=Y_G1wTZ #꬛]uAF=nK7!l{~s=zեfE4[5_V_ n{)REfx?젡RI|O $.TUrH!ӵ:`>P{76_@m2Э2픫?텀QwNG+ 4Rͣ86!\M 9}QDi|=Șp[Kݓ4ui'UN*z}I`h)@?eϤ*+H1saL1UN>zĦahV$Jd eM?eKK/"TB6COC$Obӽ,R[te.p\gjP}*?WRN\z/A6xH#Ʈ!(\enijˠϨ5#48Wu2wF6n. sRU`%]9lgvhF & :B9KY#6Q%g'x8 9?_K ƋoIyGlt9(Y\gԕË:)^@3s6/áxSQVi?CxnkR~cA%5@ .⻮lmq>JxIs@D vb GD]!~P6K"n<&}Ѳnm#wQ%!Q u$b>0 #-ofFL޽mtۙavͯ9CO5jJ85ۇ m5fReaǀ^96ƫ_lXL{L*e! !z d.T1UUؔ^S\?Iu@)a<]W9\qּqdX8OTikI^HStvX<PznɃlojb&!"ôc۹IN3؝IYA#ԇ}Z0T٥7$&pXA]K(ǵ8H!vjWN?Zsm.O(`w(yЀ(03 vzif?5xߣ+93ئsm~0@5 7K%84꼚^m'6 K tY+1E0+ 0#rxr,ihn&1h[~_J3,˝rƻ2]{TkC 'D[!}raҠ1AHE RN [ ~8i /C);#]YKPjqixŤބ$]ɮg}mJRgj5▦} }rhdtMzBo?&o1l fwY;OTN Oſod]s(bD>~ӄjxbAN5[Pз'~.felԿ Yi3{`\?ӎuVq^v7#ifHr]fEUHBϦt@yj6Q>ɗ'"]nc!йR /z̾ԃu'GOA?WZ@OEI(0ϵQS OjߩwD)4J_АW*+ډ`lB좶B"G)7ĤV Y}b8^џH2qz˴]gH.-'-Es۫5'4a%^BNms=,.JXVfti"FjbXԗC WrXq[d&>ʄ%nôfjCe9qkj7&{y~ @eD>Yu&khWI&Ƣƍ叝oʄd 2Wt9#:%!rW #/8&n1aF%m6X@lk x;Z ڡQSZ8Ը'Smg ݌MK*Ȝ9A;yk$3XZD4Gh\2q (Kk4T*pXI'ԙ|.d!W/LAZZ/D t8s ?.iGyl[B,J,?zCB`q;WoSuȻ=h!ƥ+[^XyQ^<9]R[kUB8j $V-y%w+9x؛"#Yd?nnB:}PhpiYP OQj k h W~-5v?W"l8 Ğb9W`AS!ub|+t;$ `yz"\Nwљ`1EKXA; n!; ;Ѣ t%T̽"LϠ+֚dž! V{~xx}3=K,U"ӌ4J} \!#u5Tra9syu\nTqˋXI *I`˞L\m%,AvN +cw(aa6f(9 8ԏxgE:PrLQWK0ӾK[بbz85PXW:*& ^KQf@;(Sʤ |5<̗M<U'>+<sdF(oek qw\ض+L "`9)GYFLrhrZH X/OUpͤ2H\duyuq8u*r M#!œ0/(,(R2lm'jJ)j:bʛ J'IVk&ثp÷m&kQʙ|,Aרfؓ[̨*Gw[+gs)"[y"mpH<)gi{vԖ{z;aWGs²O@V7}, _\Q.]*+VʝGC+N4uJ 2e >$tfR ^:>L#vϨlO%5mEJ5 [d RP&n˗Z$C4iC`JTwNRt_d[@ LM@y} P'W )vjr'=sIQ D[Q D$]IVW˖4Ӻ>Oֳ#H 1]Y2MqreL|IiRN"vjj~hw ^g+=DtŲ,D%9>=x:󽣡ތ:I^J,+Z;xGŁ[dYc>Ѥ e*K"@׀F }܊=cTVb5M%7uܴɹDuC, RkhIP+;^USD9GjB-52Z䦶=\`CUOqpɖBJwjdVi5cs֐cx;]ˆnRH˖j!ǒ)w=ix8zj Lυʕc[q8ho۱O oWD$/b%$}<ڝeŎNDHGt`Mqs ІV:6;9͇_SQ!޷PkL6Qa~pe˿Ȱ&=e* 'HX2݀RWXqM2s 1wgc-NUU%; EYϾx`+aBLƎQYhY3U!Z@NU@-Zh3ϟfcqG$<W@>4SiFA Z!ic&vEސߗ?W'_gf0 MϿ/Ή^K F~${L>Q"?BIˀ88}(2ƒW*T++|vq-X7~Rq[F:@zEACazT<k)MsǕ]?ဟ7,Q-!н\5i"ޣq!jRNIx_ ($w H0E<ĉ,./QDUI'yϳj]KϾ^؍g$wK bzʨI]P- |s$$BL[jUX=``,nֵOP`CR]RӊP`=d2; 7HHpSݴ+S*^['Bms>GyPn T XLTJ!NYCVVgSh!+ECQ0ϸKSE1}ܠӷ^NzHbp4ZȗXO@N[fo[=U:'xY*:|%GmY>ɯڨy&3xMgS: Bkxmu?p)s6_OKl̤[}dCP8D\F?A{s(tTrGGg|R2JK /],)z7ۯWb[ {W3̟@o۶TԌ 鷌jK7)]A^ĖߑNs}D,k8lHU1FZ-qGRt-ԍ#Y 76)[V|[_i?ɖzԄܦ4>1kT˥-GR~S//ςDXMxUOw `_Le2S% YC%5Q|zÂhM?̚o٤+Kگ$ͦĀ[x@\W:ek!r۝zs{nc ^?Ysݰwh5& =MFƿZNy]N.*^U5L(j #m T ZuO@IvBRE^R}&=k.;D+|)Z٫ }}㓪bX?lt8[*ˉ>Mh&&Mp[͘S&1# D7݉ٸcpn|6 |;H+6(h(r9y#laq*N4a:zj*%qX %ÝK _.o )z2RO/]We^(񿬨MmAc;:p7)83}%u셐hNCp mmz[kĩ gqtcyD{u$&e"*~Q)^UPdLdk6k8_+_/QsuWRrt1%`m&,> -˨б1'}(F25&ΫXNe?(Jd))8=ΝGa)  {<'A%KĔ 7^kQ rKɱLL#blss6nD'n2f[!>"Bs/x %7_iL%Dk$9wBJ&i["@1%'ld&%!%1 :"̾ISS"S&uIjQF;KІYhP6Pʬfh ҂{CgU+K +0[2Ԥڪy8|A˖1(*p ,9˕쑤 aD^H ?ARdoƔݛOP|sCD|Es`ho2zRskkauhrw4cV |}iqx: ,Fĕ>t ?6Q%ڵ>XBMbɊ<#߽H*ۼX6 oе{ M׈i lUۜǩ/XT 8E Sk/J>#$';Vq4TKQeV2ELLHs NR"hc~C&u6]5desS(ӅëA#hZE0ٱhmӚ0j_ =KH Mii䵶/u'OfV1̟tS%m # Y# AnJt5#dʀnv:T,Ih?:"$PFK0ŋ_+|^xZ4 g]"1\F w߶nHE8(Ʋ8nvUgS_e8DQ iM6ذrIjd/U_U2ԡ^˱lB.nHuPZ`\ƌX*%A[3+㒾S:R(rMCI7i !u>aGp DsRupnq'PQbih$ek'UԮ c [װ*QoS&5"é~qqހL/Y`̼D_03pMmX6 <i|i=xC)'4p @ӷ ufpyKqV>$ )LM6Vm.V܇zB췷YvK]Ɣu scziPQ\j-x\=O'ȡjqLQ Q=& bأBx/[ VU%=3F]d)kqvy]i&[D1AN8Xl)\! )ɹ> (!x:/BIwo|#sSJ+1uyBW<3@b  u{G4Y[l kW  1.62((@,c,i#S‚RP.WeE~xM3|q')LC# s}ɖ+M5-*[<8∅J5pHLlzY4b+J@!E˕nMh &f,D)3U)ľ ğB,@+nC3oJ̱vT7?qV\Z"![Z-DY¸| LVJ51[[Ԥe8j2&h6>NZhOr"KHQ\^=\3*hNֵyMPiuVt)0 HbIn;@E9*I6gF#uPM5͓͖'|tZDb[!4,7'H>K |`2D볯%e0*q童%ʒ{G=-`ƒ=lI[oCA[Ŀb@쳎bY 2g,N"X4fl i/o,˟/ ׺3p9S I;a>6vB^3h:´ [:EzXQ7=`(z@V;)U"ms!:U.IrHs6~Zwt-jm7@ŏ|| ES+Z.׋tHՎY5z#T ^x,}%+J=gxFx>-9?1jrʞ!L aLC| HyOtuc?V4|3"aG@ɘ!zef?@ \{KX:HeIHxd#. nb*(vXXI֮x=J).Tܬ;NJVQIBZ>Z:D10 f 'Lw.Iy7Sߊ#(}lp)ٸ,[]K <, (r};RqXcL4w vyc? 0,:YĽ {!_Y΁-y;;B'EWvm"U , Zi xG{$ 6QD S ~ %?i;Xi99Ū#~Gó ?m#y̐ݫITP Ԩ)H{#QOo|7%5S;֌ C>==kأ/XP2 yJKз54IE|N Q:L S:I8b 2~p0+E8/_ʄE IJ>չWXtcMNTŦXʔ<~@ 8:\U_QO .ZBGn'gT=/ iҐ5mes5Exha.:ded?q\!(cE&̷.a{ȩ@l-T.;[\+Whzpi(؋z\{6 4*"|qoU^^/jԐ&6g7[QPkc!Ղ)aZgm`h&?2Vutw㾙9Q4DajGROCX<^Cakʹi{acT1-y=őyƋazH0**Bڋ+" O9ǒafZGn~Aq D|?_vPC!!> dWn nbmSSl<['/&bb9 ?wVV8 ht}ҞWes껲DhW<8o"ۖ>I(5@.#`9x'(.Uen@j55ms>MvMlz6~&DcoQ]8DքQL"_-v}D֟o0YyFt_Va^ 㗡>QrsjƮӞ1~:-B<FuKюBNw r3aq|=*>)ֳ;8ƼR`vq. X]So@B,#HɷIA#h>28B"OKb@c?DBn2sB%^wH<,Y-\oKDž)WGJd9u1D$ӭ2MAHA031.J8޽VzGǍƒ=CHV1<{@ۗ>|7Rv33+gWJhFW[a(qS8m8j}<[cMRAs@{tfv½hlx'8iޣ{BPV*=L)d~4㱪 uۚ[OCUszxiSӧ0 Bm)X ։@X{)"O9@O3z*;meC}w#c Xy  ˯:D;vR2ꤓGzO} y俰([{8M@"C c^:CYRo/X/i``NH# msGOY)jFi.Únɸҷnjsꇤ{ H`=ա).@ tӸP0Cע|K[nrMЂŤ٥m  LE==|dUmkx%bhen|W0Э˯z b?pvFc*ng04Gcj;F(3V&D* ,C:f, )esL6/LW<j(FQP`4osSv gCv6є[nf^~]L^mQ/UM ȼp]]|5d2 gmqHsYT%(I0ml(_l.rJ"խtCV5.[ {&N>G8/Cys2/}tb $NG VG_gT]T/NzygW_G2yV*ڤzWj#܆o8Sk?04Bv8McAO7I05Qi Xe8 mxkm1wɾ& K{Q/?vRs:Uega4`2JpaNZA )ZǻR CxX-OswdID$x`z+gGT8>!-U v>R oqӝ0p&^DA/@lZ, ͲfɶBJ'C}@5(vSЮunLʒV}Wn @0큷^{9/y+AdoxH2w-\7Cg9#v~ <

&;EN<ĝ:ڬ2[U2{-8grJG ϥl3@9;QB#'sƬa˷9 4DFBgk yE|YJI-Qd݇Be ٸkĩ@m6ΤVR\hڙp>raxٚ DKQ+@&*%3ݸ0ѫl'\=NBEu5.iK³w!zOBWh7Pq[ꣽA@Q);4G(EJlP|ՒX #ntO֑t]%4q%U^;W9|D{ S&j/4rh3 ѧG#3CCj8:PÅ*ܧ܊ud3S"@5b*5y.'8%OV4S# @:Rb+79ʮXʠE_gtSAcw~ 8]\% Fqi2#ê E|v>;ic]H%\@]j3y(d!wibܘmZ R7]f?͓ʉ)Z a0Vi),*&eyE6َSѭGޗ͚N*H8+ ,2_/#'yQIKJ= B8\ح~6 $gz=dC#Gvw7+䶱hlTj MMUc@?d1i Jzo"G{WC)kie(4y1RO/0!|[(|?wñeyUbsHVxO| >8ܗXkg`j;U;eBB-N23 K}C˪!Yۆ~ [@惌z>~,:2t93FEl}L\&/9dkIEu UOY=+Jlx][pA V_8v{̭ H&ƿseW_̨ R@V4?G͖ڪ o^vɝsǬ12Y-@L@YJp ]l]@u*6J7p`X.}#i+)T;:p]ϿĮTnXs Ժ Z+GI~$[+x9}1k# {rZG dAW5bR/2K+j <_ ݡمGD%̏!ک1^RdN7xoP@>zfiz ]>3v8gxv}a2~Ekz ;ýuFd&o=98qd_>X;iNIڲEL>ɶ%}k/SkGb4A#ɴ{L2k *)]DPPW>Md\·@&".Ġ5;_V]>:%8N~jJ~uA-ٹM =蜥.\g{M6V.P4/{nzR>lIL}wi),ld8ѽy]ŰBB)3*` _>pb"HAUl~Zǻ0vC QPeBOj^I9^K7/x͈-Gt1DM*s!BJ{jLH'o,wߟjO^/TJ֦O/w$!hv,Қ-y^M +1!Lr>U+fϢ]R+o9h>JkV E&;/cU4V4ڽÍ,_ۜX5,Hj\SmS֚T0,4$=J'eJ6»! :O"1tyAE vh]MKjOّӒ=^n0Knu*]V${ZX`ݸbew;TzC)#=K}!?dsxŀG!SPge-I V?ֆ<$i^Aۘa1ݑ:M~bPy;@IߕQJM䕃hؔX؛˳)cܢ@qK]\ΌHN7sPv 7 [O%_ $RNj~v)R3&U=O]+H~_]#`lz ^ j,Fy?} (opl.am\/K7:& tIfbҢ:ˬlHQ[ 01j-İlI#59\hE@@;: #zFSSzmP7h7u/ L K\0?w6?ELHJLŋ@Uhኄ1jAGmG=qs3͓J:[mitB Q5%K=!h+& p@¢-Дe %Gux`NyUסxk-KpDek.VKGd|tvL0t†ȿWaC9 sz4Uq/O.[,+gwl; 6ȕxC:1n9鄂* x !I {]-~aN;ѠNa4{lplySTYgce̞d3w0pެ,.s^wiZخHl_)**݅zW< ![izyΡb=Wgg@t Kۻ N|n7ﳤ@ ~5FWN( 7 92{[/f#ŮIYd$vHGac&_;4\B梯)ZԂ<28Bss:͌ s< ۏ^5rygj V}RdHj%up?W#} -)9)jwg.Jml1BP;j+iH)2,/~I=H 1~kjtTq#=}n? Ex7慔OeI9E-BA]zݦ$#շΆL|ۖ41WN3w>(ѱ)zNe p$\^*" 00]kESJX  TOt.~b"Q:*KA19FuPE:.+Z-oՂٷdDQo(0!):Oy*2.Ƈ":m`$ӣT g3MٿFW6Pz%N @m iXk1bnT6>",D9ab8Hj߹IOhbnP9ML4n0aL!nvw 84$~sK2b?3 hvՄ: aJ j(㝦G5~PӝG/<&/`6gym ftXSl2b a32>˸S^*Rd^5.tߓ>C}%GK)0`@Ig3\2HkSps:&n{s^o5=6TϳAt/MOkف< 7=d0@4Ў_ʉ?Y~oQG$Xe7xkDl,> bvcICx5EhE#Ĥ9 i\<$-λ\M~=X?K}fQS׊pŒmb.\R[]B%nڹA$̛L6bDә}!صsEvPʢZPӀ\&;G8n2:˃sdPՊ0~.#mM 3X9y$2LʆS"*4O=/x_n&^A;*~νy*TB `oU*|x(9>:iӷY~>ΩɷwT=qʰFYP{5o2?Y 89d?)u&ד\nZR080i4J# ~5W;_9օ /yį|E πۓ`bnGKRI!ᨋN={ܪ$IcG1RHP`)NWǕO oK+lX^ ߠz3^òL"OXt)^ }$~e¦䘉0NR8?wU x0[nؔ&F}- >iR=}Wa19l@@G.7StLv4_ü[ @oWV$ar.$(@3 z'-.'3D7f}GxL[3ܭ;5^;ZLYjlu0&FS:o y Pb/+T`^ S~HwD&L0+SWcm/mARQ uȬ88|)TO#9yj=k3Kxi훰" #LSэ*1`]ZnoBhSW V/#vB9Lq޳҅.Q(SnH3]xT4,h4pK7VD.d& &D>Pv>߆ PkĨъ$*I4]/ TJhQ>wzS)«U\wülRd /oRha<4GlL-jÕ 9}Q=m$7u=&<֐Z;{Ray!QagoFIK ! 4W;=~*Hz4]e b7Phޒ.XdXM$E}=Ё=p٘p+ )#F I1 VUe@S3CaPUВ#gUxA]-wX\Ez/Z'c ̈a0sJ-C@/s _#IOZm^>`neGW гE]r Q:B`fqopEpCXNdw:R I)5!.'@Wa;c*Ȩ|ԷZeqzmC J|ki^ ';RC9 ɒu2bp$""V1ɕuGrքJGGV#JɎ&2FG,ߺq QY%-CbS'C-H~Po=֩dw9¥0 vf')AMg(bSL҆RSN=7qO&t('8P^4n{d^h}l/epRWxK^lRs4?1~srG! kJ7n 5VpXX%7dq 1Ew(6! 񢕔4h] +"#7_3ڥHaA%D9bЇ; +G!*4+A`!X|y*SԌ\()%mH[-lմ"=^R}[t㊁89䒴(F+g.(!d894n^PZAK}OO_%<νaKfM PިPizX>>1.Is (?ƌw} 2ӯ/O8LȴwAXX;Әr%wHF(pqEۺ 'q`*.y\؊ǯ!Q9bg(QƸƯ„X_.M5&ݫ~H -_wR!"F}1l5oN; 34☏KpEӣ8@HA"0oa,F99(-it s1 $J[ =CPN8ɘ|fJpI67% yyj}Y4f3 $|IGR`(]j NM 2KIx%Qh"C2}ৃ;1%;1MQU lw<%^bӂeP[NʼR7i!%06 &ͮj>?y- u/O\SH06-9:!0dB?mcP̥͚I:4ZB8o'<?'j;t@b!1Z "VstArE RDe(7`7J~=/vCbS90%xEL5S{4?d祿<,K0-7nq '|h2[bt`k/]Su6 22$<@X9XRf ן]2+g2d l}קt撎AҋirmڀĠ7b\Vjq#Ef>0 Mk/ojjaFڻMc[vBt㾲|28?{fjK]J<+Ek؊|1Q eJ0~ap<ƾlA{g[Wʌ8N朵hRsA=sXO]P-'+"wXNH$ݚ=i@37C\ 6fekùH6%ꇑ<OaٳnlBcDP%q(ÀlssdҊ[3&00BS&jXgGWu %{A`wr / #!eV^՞&pNgDR)ѹ2u+?x[=tbbA;v2ߕۤ:wըHS09yd; eɇx\uD0)AxApUF>b}]w<īL5?\*?DwkYOx`TE'"R}e,w'l0~ERpu6Eqљ( T_Տl*/?ik*NWaSgPHkP?cNׅѯ.a'$R21:z޼t8i_TwoG )ofykVnaV)v`kg'vD߀䇤Z 0åU,M(1kjπNqVۯ-1y$`-Kk__N|h`ipuO3C LJgRŖ- Nכ.ݲ8Y\A(⸌2vw,:Hpæ)F@ r;*wcr8@%ϞߖClM[^Fc)z]U 3}["֊~gZHc;qqoTgbiJȟ6aSfDHC  x[0#`OWjvtK1^h H&҈g3 :v=wH̿ehMo[F k{Xe/1=,,x; ߼ݴħZLU`f$eÌTЊG/ɚJq~y%KJ`mp~bM!{585ٴs `Y}Y݊X?Bbe@N};( ~ӎI~ʕ%(ZM$.<$PϘ|hQa2dBAG9; e1Ŵ H 'sxW - ң~GOK.KXŕYO7X$uV{F{؛K>+z]֫]d;|Wg*PKǜ%qU?c&W6%jA,8ɜRTZz%w̢7(bE?۠Yii[vX6#R[M:u h{U0苂zYkm"~v O;r(qݍNIˇC*,Oؿ[|ũ7,Nm/4Zoxq!"s ;/>տ%+h@)7`s$*R~]LkB\>JЮ]YnQ@n#teKpv-GI*cue{dNvgAf'j1s2]n~L?:*0-0QƮ&zh4eO{oE6ݣCz /Mz]Q*`=NTUB}4̀ͮ#QBKaOcrj4$f +4=F%mKى`>3Ym AMK`W/|kɨkXH ~$J.]G߻ɥWaZ}]qGx$|,ld"S,f>/\"M]wO~a΋{6?'ZoZ%Z?4S1\m?~\i^ B8 BDˆ1_pAdGv'LBZ9N{(|)[1#R/DEIDnG"_~ލ SC܈)5ae.ʜE˚sSNXfd%*1w?+y޿/{JzrG #H 7Z5J:89N@bO*,hRmY–&Ǘ eцSPTHⱴ.b x,&]2%q{i7|Xv:w@7US7(Q#ޒZc.n Č"e=30ߠWw&Y]tEؿK6"KO>X5T*+Cl+!\nz’>Z"JB/M*+Aq^m!lJW\EǵC##<`{F :9,F>A(5NEҶZe/x֭΋]q~7ى)]I5^Zu`+3})Ѫ8!lB[//Ӎ\i'XRư9HrgR2 㓖Qc ? Ҷ6W-MGwjff$GҖcK5m|?YpePbG + iAJ_U%QVDyn 'Ѩq1P`I/CiW'5 `aڀ& N .=N/Ǫ nm"=,q}Vw :_ x^Ƀ9֓ԛ黟 4kTVXk(7gYwJ0w kU L dV2~ צͩFŗdК2u>K/ lXJE?u:0탈Wѐ#pXzegt|fOPwHI/Q^u! <@bI1w(d*S@z~W]__fIcоk?F|BG0-d"0DswXL~Y_$uG\ *ocCȋ[󓻅xS͹ {[Q*cz]kZDm lU< ;(S hvA$!%rNġwHiA@C)}V `r%h{^> OjR/͂^nPj}spq} Р_K63kdP贡D9 բoZbaEU!JJdiIXr̈́s/L] cw$_d\`_--w߀:aNP)6G8W)m$-N⧼Ƽd|T9boݩ^({o<:aۃ>Bє3E)A[٪}'QlJ=K) m#߽rGqN_bbsƴI-J `#_ƺǛmC^3 ٥kuLOU;ݴgSeڇ[ Y=0J_a")eV}ȇITGAaOȒn^YB W&@%`qNv* m+S}82[I(.&?Tՙ7  BV+f(r %=! Awk+!0||9_ϒpf;<ܪ19~FbXk0q~{|4#*'nb)KzjXFHma &- @ޖZ?n}bD'wacD.dD2JRDH3ꬌ$J-鶹(4z*t;^P Z:Hi;wyf%]̸ܬD$JV,US[U0@x4PUX??J`Bހ9QXN'Z{\x |Y5'ÐUL23а`GLB5 x!R^(ZW76xjyaGvq0 b4nZJY>*g8yk*rG1Gz 'Q2U*sv&ۦZx++^_Cr8+ou튫+=G)#8E?S]~D3Ow=5Xo ̳p=dmH9l&R; |ms>YQSQ69$U ǡ|*w_X2]/z׈S -PF%$"LYts9(G>-tC͸FP9zp{ G2npL#zfxB2P:'>:osWn>Ip:@ Q lGA M禋 |.: n5Wm;,T(5S|maewpuWqKgaO\>tHdcdbz}\!Hg䁲dL렡FZ8nc3rP{3eQFn/tiD|ї*GSfu7xCnC-% 5VY`-;品f =bu^\ I@QX?m43:bAg(z깢8}h.J3pO$x0FQuKߕTE픷i{jÒXaILsB#2Ls[D6>38'{?:D'͍H@CBGܘ~@#"%qn1{M0@*]^?+,+ x/87=#'w[.I(y˺ߖ@Y'/,o('hP ia68*_E{[uS*F [>®bm𜡤jkDCGԾ<ES9<ލ;f6. VdP F;,ce2)Tu~*U󢚅fأkv#f(Pu+F@dcذ x=I" e&\)huD 2,cH}[lz#nn`'(.%WNUg/W/#<_P+)#Tͪ\w熨yy~p>6;fÕξA>&[tN6 иlc3eh"(DxjMQ޾ZjnQ5c'50YWd~#bOQ#maPWnLF 5+mWl42/:%~n,MY BZOEvquJ!I؄ujFiuɗ2>cL-o|2 bB# `} Rp~[X3gTS/1FjWy[TeMD<`tdf7qGfw-ۈ0#^9jf T|#pn 䪥&/% b֊X]T{dI/'+N=5<5J3I?/;Sdak90rb]1co89}rB]6~LRJӧInVD֦Ǡޖ/%ܿrW!|V{֫%-0TTMskQRJҴtgU'07] `ByA)P X +̗<%IydQV4H^bslj75/_2.::#RF#ZS=ïhk߃H<ܣ4lrQb$0҈J, x(~D:iAtex o}1pH.Q|%nX!^OiJVrC0_gtr.K6tf:6 x7WЍj~ M _ I{@U{:Ϛwqܾbnm43PM"ͷ[:}v1 dySP5'\U%00tzp`W#9h/> NqW˃ $Hە_VcgհU /(pl *:̾Й\,xqXA.̀4LS >טV)t2{L&|/SSAY궴y!R{0^1dY w.?j 8~(T-ި.Mn٣dCURPUѭEN.]ӷ.Qi2}Jx/p1ufy-or[jו)D&ڳzcj"G7\$aj&R%5@Ds? jvz#yo,R3[J^AНgh ~[8-<1)jjj^%; elA6̆'g|X-j+}/!&~kk>Β%KwIloAjp! _m-5f>] TB66К}ѡϾc1N{CY&|;TB4wzȗ嘡Ւ(E 1^_;z ro?I@3+ص虘z/)Ki?)ίh fƈlMQ8q%s䫪K^Z!0 PtOjyH©y~2 c Ś5)L<Ԛ0Pt!I۟GY{?.*lw榩'+ItFH,f_w@3UH|NA9JO픉pfv}g|] Fױ#%T]+@[U0N-o_{J[ Ofh `(KhY^/>v9P2c-˞xeWlnmrG{9Z9LQF>21uod)iG;Qvr^p @=y\vB }X/Q yK yj|2=WdKi[gGєB($/Q=wDd 4$|_6YA4wGӿNpl7d ŷC7ezXa˰1u,{e'x=0 h&MWnO ,A~$",8e([QаZѺ>Yl:=."UEÐ<~;vea8V;d\o9z˷čۨ[l 1p\cGbu3nob?1Z-_6sH:t25@B~Jugqh1L8T\1W)ETsdD>!ء kY"LRŊ]ؐn+-|4g[ \jiWQwMkpt_DJmμȔ/VGXk,Ów)KwE5@Շm}Iэj^{^原xڽ<~ TU2M3 'eo"ޖ R!<, [z˒}j1Y|l+j̑!o숤0;{-32KTfMD肊sK@ F_F'>'*.^0{=wED %U^WĘ[B =p\/CJ/d𞷶1-9![܉(D )fYsrDcE+XT9w@2wHànz"ȁX(ؗ,M_ IZwZ"ޗI%wr ZhLnVs1nTˋ@T12eK7+AVvQY * 렊p٭! \o@T.}~/\0eRu,@+5/P+%q` kkw5DEݸuAСD !$XYbǎDI&TL3jXf8Ms"0ݧQo|.qϖWdicoEQ;~Ԝχ L<*kѼQ3` u-{~CWoéW](`5A@ÒlYQQUN0nUn+]*{^G2;3a8$!03i{Rv5P;7t{ v ~rz>YxUj=S,CZMCm 73GDdp [a%&S4M)J-W&O*"yjm# Xe4GVp)2¡l6{[,WNV a:!RnH K9;խ;a%#+FΒw;6iB-@M ,N|ȏ1|얹]LaICxU P4%J,DZ/nE1yRL6QβPUo}|e;~Y_Y9j&&E #c;QL7O*=5H4yDH 8iݏnЩM#3㜉 @jݨ*oεntok gy. Iw"Ira)kPfˤׂf&Y92ϩ/tqL_X66d#~B|3K5(\BjC&A!ܟN7r=4vAj:vd%zőZIc3Ŕ<8p.))b{I Ǥ.NP쁛b>fEq#N`e9O TḿeϜ7 Q_. F x.tGAsN 0"\75z WK3~%2q(X&aI1ԗO-3rzZ `!\XH%pehj4jEǀ>Rz\2 ~t;2b^ 1!+I&G-Usk_Xy/*#0rIlY=ShJ%Lګmh #Kkyp raK~=dm<$ق-Y]CGEUrd~mX v <|Q5|NPeZpn(o o!F<reѸ?-R#;{:To~C@i!;-,yDzr8ϿJ[Pf1WuCEXDCDηO &lѶe%2`#T-ΛYl(O1ܻ fgp8NCjݲ^ "U&\2٨n  z3&C[dȉ/GD_nJHR#5d ZwϦ]_ 4Tz\6s:[}U Eg >v5?t}U[~G5SGB:7.9x[z@#.Y>yfٵm ,ꙧ=L ub8CP)3P&>2P®w%!h Q~* x{oҢ1N LTK) Mzv"I$B5[G;AB(J&ƥez,ȆYcp-qڇ} nOu &[z+n1>b}MTh{-*E74O5.&-= ~ èğ۶el@{K~,H D/LfԳ,_͛uZu.|cT]:f- GSHP6^0W$OBTW \ LqaIYlePDy{Ə![-R%H+" T2@A917԰tas>Û3Ɣ$?rCa+y@f8J! `(͔%&<~͌'DeH9 xvtF|zbD={Gc'*ݦ8^9?mɸx[bB[šTBR0CjGb?AQsQrɖ+K5biҳw:''#X[M6ZUE-qt\4{ ;6{Ⱋq)6}剰w_-ًl-(6l,YYk.bRoCVt('(u&ǰ]ͪ.Ѿ&8%n)? ,snp2ov4WYeG) wz^M(#]dHvzk1#~~VweGZ"VM盓yβ?pʨp&dnW1 7TY@-{4B0ԙZU 7<fH n缜, 6l:*T ̿BLa've, "2A x,耖CC5{9 8qN!Aۧ\n_Jdk'nFΛrSAčdObS{z}4+}+:E>m<ǹCC#}6!)}cq% "> lU !{J:zO|)=cPE^+6l< 4;D&ٸJJMn,ɎO嵹 J5Q!T/h^vFNH|l_ݣ4?ߎ&0j)b挶aҳd~W1Q3az] B=,էSbY#jFQNN=^-~Rs,(j/`%R33Кj"PXˑM72) aBYz :Uƕ\"fWu5ӶR-%/__EF`;3h^=(qJCΦ@$(JaBi?vf'XIWl4 0Q&λ}!d 5,qo $D%'QǙbX;5{QP.v9{(Sɋ 7`_}1^M$"(ǜ (W3 axOb&<́:g, K-z\>^ >0&j[h؀r]SͻS[" ATIHaL*`+ˠҟ} ι}~*혱Dm;J"]cI]I& ԁ>O-wX]iLTKӄ' ZnE\q1µ*ZtLlN|C,Sؕ0T .' *r0Ǚ .}~ *PE"$[bOᄑU4veDeDKޟ15>Sbx*PwLC8WpUO l"7ǥbg`t?J/Bp0K1/g{{1_8ŵr*Y͏Px腓)b+fٌVlGhTX n$B5hP&?a33@JZKAyWYheK(hPJ#FNȯ&՟-DZLXWi䎀]=vtw]ͭ~C|+ \DaC2*r!5vzvEԎ`j90isOz15)OϞ4 J@n>*1s$N9icSFY 3~&_X/x? 9p.(a{1?Upn/yCq-Kok)zBu\ef\lafP}8׋22Gf던|.0dF+,EB2Ī]V9g"sÖ,l1`=( wͿ}>MqIhExQTV硯On<#g&7w;\` eKufVfn9uR{rO7ݹ ~$Ksb֨DUR ȭDC| cن~xd@ ,#{MxrUbPC9mn,EAxq2b}b ]Ӧo@'sWٵ^l+EAW]A@Ô h.vxN'(l "f2mO h_|7 ez |=MHC-{o]#] פp L`?䶃6<Pn3j}Qy#T\2Fv G7O2NGO)`;6*G"r\ ۤ[3P (XN13]l7SP{yaŠh) ̂dFC rꂀ_KY`$Z#/,׬Ш^{,.iEm!,fvѲ~T zFÄ!P\oZ$iqw>z9U9̪KS,Kk34hC5Xfrf8W(D~:X!6j97R/a_JbT oMɦzk)geh9Q"da%2_:oU7BU4"Z<@ӝ^|-?F&Bb\\HG2fTݍB+>sb6)Y 32q7uN^2xŗ,IT[:DvxM=bx"da(taD|Ur[Ca|Gh U<H,E͡Bl/ukyrҳKŀQ"qvLćt6~CgXp/@&.yH[ؾf4a5:z{my%Yڤٝ4'1FRn6#Aj T 2/1~Q)|>.NO="szT<A]ʚ>rY*l|B^U^9`0"=ho)M(Ip=RSi_hn}IzwLb>ϰnzHy?T `<vٍXYfE?bs_ E9ڌ^=T5O#EwZ5 վJnե_:`pԢ4#tl\J}vhYf|l\@5k2M~)vxbǪd;<*-~k'< w}6V.Ds7 曚vq2υb7WK9|,)#}`T2@qg:y@Q\^&1vNXAg9ôtSlԦKlHT'x񯧏9=帧_FUbO}565qpA^C.8@-su7Ѫlת{ub1P-T$hYZ]9[5GJƧZѲ 8n5aTU7W*9H;'#s$zkmhXY}FoW3$38Z9O+TOF4m1R;Y>U:񋝒1:e|Rc:OB)/T{ULQh\my& 8vSHZ7oԁ4=$KpTSq\_>Htnb.J}?+F({31 |雪=ǿ8Id3nh-WfISĄ"m:kM&d-j Hh1gm*K9 9w@s_Q9dpFQ Yi5JVKzuDm+`kd^XLlA ]?w>~[DÛVqr N<. S?5=Yf, Ȇ3"FNs{˶r.NuuUdIW.=:ԇЛ)Yr8'~HA#N 7"#pwTˆa\#!ZwY:?|"'#dQ;HH]ۄzF Ȋ0bW17^6IPɫ-ϨjQL{vr=Z'#r#9 Eg?6JbeD7XN7@)"gwq)D#?exP~hsȀ'H-:9;WdN=uՂŢT_' :!t-ܥҲ&w% ᤰu%daRtGk&J3ݘ9$'lW}`__t%&NgЪ݌x~ĝʪF?xM2F_WW5y888}ͩ&Z.Z.M߆sWf&ޘ84zJir?2u'_Sd/>5w ̄s2>$:U$U !34aBvVvj{pMq[#j2?|( -*CR@ ҵJ{_$H]n$Zӛ:)-~'N*vE:(kc2f+"Fgn"IZK+kQn܌gv6Xaxl,"Sek\g?=,E)E1S.!ǮC|7@z/QblcN0  >n(ra*(թs]:s4/ɣQ ;1j&]bY?a+H:Bjp+-bZa9?i?n.`rh>'w;W껛cr޼A䉮-JJW_Xm#u8q)+E;D:E7AGHZ&->.??+%% Z6x=.pؾN2I930AZn1,y{IWI{$^ݲMMtIR4d D}ya3Xb4"n8.EO#?'*t+o© OW{)<{H;9!y(]Q-63–oXற3>9NcPQ/-[$S׭BFXB,' [k$*~u%,b@f1uZHhUIN3%$trv44VF &h̑n~oJЦDj@S ێ+L 1iN ArFwn;IƦړLɸߢRp:O@=Jt}ei(C7`Yh`aî0z##ҩ3A˶n o׃eZd=A^F ? M*&gM "ѝ k8QXElvZ{5 a-H3S5oG,5{hW,+xZU9)7n8h0@3J'xLV[y!ϊg5/b2Ҹ,^gP>y^lvmxFzA{]Ǖ<)isÁ{wEhh]Z֠x{ab- q1^`WOkzjQ$prI*"VKvL3g&]Ikq/{Ô!`Gx,|/ ( aA ![KF2-uo27\> C1)dvC+?m r1fkiȗ_P/*F<3i½trd'Z"P=GN!SP! vS 8LK.g~ɝW>nfs9It}NO??#f/w [gI۶ |F+ ǀrl]. %-DּBx[#+O?dS5b]1w-J@ʦJR=i룱dl?l9̑pK1YYp`lœ"}fiIu9{@f: N^qiNfB34&*K% ȄNgcrts=6A!6$|]}k .TL8+W^ev):/blri*V*gvZ)%F dA/Avok7HAJJ]9O0!ā)UgzQDE2Bۅ[,8엂%x [%L6c.0׵ak Tӝ3ȃw ˡ%FĵaKZݑC;hQ(J8\nToomeU_f;z 3Ɓ_+7 Q[d=psHB%bSj ߊ-r5PaM@m<^5{M: ĴwƓg _tD&=\.M NQF7;<=ɍ:a5>RdS5SDR6.=cz1 vb>gpb] kn *t#W`Su h@vEj5-6_Y w_7R,)} Q vRP3`z\w`$Yt=ihm&8tm 2f#xqoCFͻeEQt!T. nBʥxV3摌Li:zckPMehlW|lhpDĩNJB4K:C܋f0ƽP ]*K/Dl~3n#„Z=tU&:KB'z=a B2Hڿٝ =A8GhfqГ}{w-nAe!ȼ]Ҥ5vE[@''a(/ٰ^dsO"C'pfʙ@S}RxACXuViHyܹhW`4DsF%|2-$^6숻* [hkWE4-g"wv@L~,:x)T~ K yuUZZ6o=5\Jc:"|dS.}}`a:"YN]gYt'Bn-;aȕ94oLu$^ i #H:^pmĊry>b%PE:)(!M [tM"qDF K/_Xʼnm;;`hw㐝ЁK$P.6 HXM.AM1]:#}corϋeYQ:IO1&Е);{|SRsS{l L.p$@#}SB>;hq:HxRC r׏lTcMoX[a.݁l wC:办>䈙A-uR+77&2KݒFc.眞5PR‹=:?0M6$obK%aP|>7E$^?ՂX0vZ`'~[]SN(9v7g 5]}j|l44^_6?MӌBW<$13(m^..ɦh)k?̢s8}OкοŢVN3>7 q&!=d_$isфە5?kH՛'}|DQp,Usr71$ʓtUcIO)~v Ȧщh~ևͦ/Y,A(77H՟`C *%kMT50 lRq͐_՚kSׂZ~s֓(:fiUZI2X#Pq#9 e㖥w k>V)h:*L_|uW$jcXEPuM19Ր4ܼ^6N E{5Z@e>bFfp_U~E 1Dn!sxu"| ޅeJ x):  ee^`hPi7=_VPxNiuqj 2-+e1?.QL>p2[ӂ>⠑çR>>x}c X,ڼW]}̖+O<#ݙLxptG:rԈ'u+cP%uQ? _@Jm3$id0!NښQGa .GWP}n#J2sg@mD*VKHjqn$6o~-QE.LwiRI3 юBU(na1+o5quEC] 5k=1|F[\l36`0wxF{ֵ@v`Kw% -Na D wUXD@@j-[gF``;|tVestea>`7HDlH3&#r%/^tCͳԚ4 iL;KAK(_ {7E45bʯlSe3!iBv\WsOy C|!B%n/U9A(J$_eI?0x/dJ a{a+']̥,Ұ"k0i)!pdvw_sZnjDh;7aʼni_@|1ڷ{ے`7lȸkelvg j~Ce-[]jͧT){gySc)NWvļW|YrX!Nǫk8cI'VvTH!UlӒn) PAE ?2ga QaJ`'V h $_̪ ;B=]=Gvap\-eP;#asxTzD;1_^8-H&^ދ~A|dEPN6bkn%ZqD}\H \P2'%ki=&T+**v>_سmNr@l"9jAM5'ᚃ壪:@7r|0~MGUck&hOZS>5^__d3J7Б*@FKeOK+LrE\~q\ws:LKz}&, mfjwcl3~1*'V<$ ?܏>F~E '`N=JG]9anJ'bN@0\l .,1N|ΩyJf6t]O)\]Z)Q0%rlm+(qSv$xΫi'fOΝ$M4d^+З0#p,-eÕ}Y,cRƶӖ <ѩWpgnyVj$Ċ1aH2ŎM<22[Xk7?h #\$g"eםqlSC{H:7Gu.Z&D诳qox@e&BuK|\S-Mgˆo@8\h#+U2tU3y [ M>7k?3f'€-\s܂+kuoDw-ϪٜR!·/KBK]Z;o`c{T0Ȥ>đ=e{\[SK)Wi/6%DiȸM:,wmf::m0*4;33UjDls PmhZߠL"Um;Ҥ5<|l;%#čyFZ;8/bZ{˴ؓ]?=*s]" A_'+Kh>Aa &Ӧg!DzóSCFro}~Jה"g[+u1^g$,ݠLOJJiIdB\v+*9E &59o(£wSW-ʿSR} ;*E`msL]͸gl EFdjg1{_{\m}:jJ =/X8n7A5&6xVD6[VrU*PT_Qf z7G<(˹磓墻بiO' KMwRF8):zYw6 B?/`n s )SXs늞`ڐe_Sp*dM:9pEk+'0e9#"B$.E뇈vh(+18H7M |^}C?>-R8=&^CTPdWTZGag" @:1pAo%JH %O!rPYiD0>+wH@lTEexp8ѵ5c?~n ~$ީ 譇zPxH|6u ,.U頲.7An/ /V{Ixay/>R'@. Cڞo^')˿i9+w›H&-DאIڎ RΚ]]oWҟݾ~,fgSJ O?p?GI"-(tAlqUǀ<@`Ql;6p5Res[7cB2C5Y:oEN9L-c P"35sO;suk1UHef˿k7OZEJ*5F+k@%JV$Xz;-K~Mhyi]ⷦ)ԭ3ALLxbIHMHTtn1o4YǠ=B({unR_ck/^mh+-JJ9%} ~ uJ8A9?o e(EAJc4 (% ! l(AU]@\XN6dROj+pRiIA $*Wc#~(Eny["0ol51*pdBEǶ釁 >wf'h/@E`~1hs^ӁW[a!8v9>+yT(L蝃KCF\Go}1bra ncְ%cfd:I M}Jߒwg^s!|UHi|:!=VJx$wnvo"^KŠ&^ T }"=BxbuO>Ʃ@^n-2Bvk=/rCStƮ|]xLC<]ӂOޅ5xh.9Z7K|t3Żyȶ{z}C?6OUO zRq?m8;g9\qRU.g@YZAl@5~QZdž>/'4ELaDĊ=v8:,,˼}q j!2jv%$v$3Ɖ"L(Ԓt%a={j8O!BNaI6=Qf@۠2΄BDδ 6' Uv)2TiLyV-oߘoM[z]3^gǫ^Ly,+m~f`1[L9s2/fR:HrSQ M]x÷mQWۿב@ёOW^r>>kcN+] ^beY|m0l4笕C.aq*:{7ЅH zvfdy$XNCjAXR%.Bea"HW{c{uyEv6Eb̐td*kA =GlVP.|c)J!pd~-@$: x&J2@]y=³C<XcW\\_jSTaeCv%PZ3)=3AԱk+$4zԲ׫ZUANOH{=L@5/W03ofb!VG_:d@Ӓ( b̖}R|P>`(u R$ƨb6 /`d0i5,&\3s}is!#ľhT_"b#H@?[^cP%dh"PjGlZ_DgfJNRk+[ʕi%;U /mjљqkx윞O_i (I=!zZ$Eܗ񵿼_n蜀["\ppbX-_&`}pZݕK Xd߇fy@"¨qlgޅD5wRYc y B{KSŃ o n⭰8j~N/K21Pq Dw%D"ASG6 AXF€,>v i,n4:ē -|'$,?Ļ|P@uNKF+kek5ۓv۩N9C0 PKddbH ;5fy$Tj^7m{zpulS>7{ŏ!0ar;<A,Mܙ$OG1!ܨ{5r1L|T 4e=.уx+Nfx4\ѴQP\:}'U.t  Hu snI`0 ՝}L2ϰÚ3rh[q .R%찜ZDO_y:mxs'ԫ-մ=I}ާ`zULSu^j}nԀTC_qdcFp"3Dxnr~z t# zdmH8PNdv>>﷌sOjL_ L;}ѕpZ9 KEGo)*/XD$8ᜬ,fĨᗲ?"yq*x {EwWxD4і#yҐ9}L6* HMHw{|/v u JM"r TNe/u >)4\DOc _\!iN%ɕUͲtJE=ߧ@NM3+}(lxkֈ{tSQYIWG(_$Ƕ1ٴϷFHsЧ>.enF"F#&hSwX\xtQII}!6%f. OVNIA83sh_nF[5olQXߘoC*>}ƹM[~M䕧 #nEׁ H??O/tmُhYhhxđ2Ƙh\JK3H^{*@.F\.S:(T*=J?Ǝ 5E^^xdfVȅht"FtG3ɼՒ?8l`3Ict: 5 lvNPR'atmj;\C`s Ӻiԃe>vrF-+>(躰嚣p@EW58>n[,!"`%[^~1B?ѯ}^> 66Ɣ;{c]EBALY_sb7 έ R,WcOE93YI^9Iy*`ъ9ȃl<{_)FUwX-|vN|"/<=xh֨5 5`aKGA$Ñ:!4_agƐ j?o&Jhps9X/ 1 ?=bڋ2aCg;QbيBQvRMwہwd(Rc|T97%_&7RznNU͇en7i$91?Qj<'ƗW*C<}Ĵݬ dknꤳ jA6\ﮧ! %']xfϙzkHdY~B FI-qiqÎwiC(CcK@0qBl <[g^\[zg)Fm^T]bt>3ɲG;)T DH B8BE/ %,9sN!6D .5u)n;7^K+ܤnK4d㞖 Q'*fڢsՇNc zTp4u4Doٯ 1Bڎe/Z/a(SAi &?kqŇlWlFqD%V[er%uij9i o M?=bSk>p'A.9Ӝt74$3D⑁3v-Y.i[TK_ky't}m{ASdd.{1CRFnnÞ{QRd#U3)hRb]npu ghz,W wuaȿS"̠H==\?ؕcwMKpƁV~WLQ$sOKdO"ۧ*vM iΉT8R :!܎U:#Z#P(?@% ƴ%t()bfZIO/@S^p^BLZSȿ iG!Y{H_N>:x#kIKrtDLfib~,׎P͚nوۙ$I^o̊xLVq3tr ߧ -yZZf+VT6Zpq_y>z0/ƻԃaKJsEl>>bu|駠M P4&gF/<~%Si}un z;UK򌛀/Yih9@>4lJFc ~vE6#i7W7NxEұVLj47?|Je[K5T{7w-5g9rC|\TazDk\S :z#̍q TYs1eSƚj(㵭s>B"{_xDƚxYf!dKh흙D d>}J(&i ;蚈%076סy}r ecu;y'hsF Zb~9ws) ]=rpgZZ~A׻V ` |]77kgOR3y QB٘hy=ܡAn"G!0?6`ڈbyly_S9B8zU|J\>yU ~ȱNS{&;I/+m+)_ƭ]fLXe5؋*O! Ԓ)Px(1Tj>[b ̹ͨCm.< :ŤN9ZPN!-fB٦qHQsؑE--Լ-(Dd8,8ח@M1h=;ʼnj3r5(sd gn01 \8Քs[EĢ:*cC#Ujc{H}煳㙅`OItO6xM ڌtF[k dg;C"6qV`;X<\+oVO#3y=…IbzSB_8^a.wϜBM Pui%UUSxg6gS]}󜜈zJۜ' XQ>|Q>kQ/+ԁH/u<}mJxyȰ\w,՘bX0QHC&uP $:d6yVb֙&kz,l@J%q@K@Nm9 k.kI y>,v5CdG"u4JyUbVmYS=˨% `WSsiX 87AmއxE(o=|cd3/mVYYП O,wNTHC}3@ 4GÞw6?#E^VpQV-17 Q*):(#Ş+xb+-խ.yg8]'@͞(gk_9x^ r4ͪ,At1xS¸\M@@ x:a XӾ;7A,cux\񕮁!b\QFoWQJ,+Yq=3`NǗHK>~̨ZIF.X*ЅS7}tHTɣ '$JЎ7/hM6}:Do BV-I7gPcz[&U8|b|  YyZ=E@_#m{KGNgGUS{F)IKTά fQ!u \0 X+jgUP(,- Wi ؍¢#na}0a`kd$. ]u[zr˓73)gW|K̘X&z;ik[7Tl?Kˀ=X)-&ׇ27P"2V 2{!A !@ȪZ彑 Zn?bNRy8`*E. m[{i c]1}wrm;!!pY_^hBrIC}M159 +n &>ɕ@t(sPjܢ ߺFQ4Bݦ0L`:;n\tyޮEv"3JOy7TnJGDO} ³Ȣ%-_3@]{/4^}TV4f_svp1Gbv)ssbъ(@XDr8!\11 s0|&Dl2i?ݬ$b!ʩ]+3?df'5f6L)#B{"<d[^S^mwPp[U` <(+7޷n ɡ TwEpr%omTREhZt&=U۹"tq'j^N~LY?@L1pRt\Ku>ʱ Ǝ!e-c*jcy3RZCq~$latlr sI?Y|΃?SS߻ڦRN<$S.:X!4RSw!Q\r?(lDՑD]g5ō}7h9G6\L;ZJs@)[gԖS'hE1>Y]LƍǡWs y^{"^\M7bh%4MTů~B2TVYɈ FR@hxD5 $,*H]RNV3REi)e+XrGulUژJxKfƲ!vuzcU"T1. a\cUHUBLMߋc8Nccp@1uHZ'R\ťpӤ.ϥ ޒm[)] B9$˦K0 @!+ac D3"ql>)9b,\AG @r0Xƒ2bc0VO'8/3TE ):Yqn0J/YB'VWmzvNX|#72> Kί#.wPyK뼠VNOޙ,I,P՝ h˾O-8㸆(s)#[fxȄV6"W#Eg3 @Qp%ňHnx*7].ΨI)h 3X{ܓM9YdmEZ+f]8~Adzd=g\,쉊5H7ܘ]o<}ׇcrP2 "RMqf;ue+"2/5\C̓L_qSy}a"Q \ae(ƚw3f(gO%:Rb?C8Jo'i8Qj>U_Ӊv菸@lpʰYkO44[fss:6Zp2'FFՀ5)94>8MlHGX/"% j%$뽲/ Ԡ1yE\.T[9 y,+?L8Ke!^#iV-o߀DsҙopiGmr M8Ge BxPGiMe{B@=g\l(t*4 V,Wc MH*~#'H c(m̂o)f2pkhĴIEU,6EK[dwޠ (sR;Jyo7L5ԮJγ1V O_!7sPcwYa<~Ykm,U4;= B%uo>:/FERmO r>6V ڶ'(uԓ1K*Eu/YbS {R0!taa֡)}VCCi i|z00T{5JK-mYu`cwt󥛶$d',<GIi{snM8J.ɷE$nm3X0oVD` /+B or&'k6B<b#/~Elg#lzA&O[JW߫|%_.,2qC8a)NѮX.Ht£FǨe ,">,}U ΜQ2ŷe 7l_֊گWYߐ_/ieĖgNpOP=/ @pәXQf'NԶ@iiI=8]E7Pi[JG煠[40z Z䠖HXϧ عk4WTRy# icCZȈ\.0r(OJY{}B<*H9{)E(2ӮNR- ڥ0Ae[rv7~d.nܫ &@c_ zΦuP泑_Y`;yJrM3\kN 6LiYU.{wnm%eG8-Q b˂!8"IYK2+R)U<6T @HOeU%7 nK>zB>g\䢉 6{3hk51yw $;jj6.jHgC"םo)RwS#ESR~/"K? 0\\U ~5Re dI=r}ۡ V*70]ė!UPD$/g %Ytp:ʚ3I0}?36:|F!3`> 7j!m"Q7:8ZdI⯎_MGB9s@qVD1!nBPv,-.<,r/rJɲOn*W8ySdϞ5$ O rw|/h@t|ؔ$8-clzFPIgpxYk\L:5o>r}kd\vĤnAQan74Ea3Es[lR#-oCZۢ.=U!qj•颩I1㫗z,dȐ@_wzvEcwێ]vEVyW>PQ :V~`HAIcxUr\L QoV|;B%8Ax;z*|Pļ8' <|K3SqU`L S)·fYw|w!g56؃*;UH׼"+vM輻ss_|k]1Orڵ],{FTt{DFs<7P8Ԩ\$툏~}U^!U3Tb!0r@hk&S{:%\AMb3#Ųo鬱6RǷD`G+=}v,`NiMϥ] UR\waaA;k@/p%J GьNmӟ{N?̏ˍ@/Q+o㌴TUbQ)Yf)IYBН;}r ű]sBOuCs!+T&DF:(c} W =#>og7xjJmz =??)wtΊBʕej`n]mֺ0n$i[085J[],tVDՠt<Ȏ ױ&ztW7!=/wJLcǮv ύr,.Eh XT&sBP*)}#7(hk^;cZ bG^3\KȒmqzoqGpIkJoT/o@L,1Q}uKZԑ8hu;XE-\a又tWD6rp)"LZ?g<}o^` ԕ̈́e~3&?"Vh8]h 3#I!I:xSY\{G މ u$(eH#4;HZG.Zܹk9va@C5 _?蝚Zin(g) 7EDf\-QA.1b i )#25y л%W]alTF#g:Nl>]G~.h=V*V} [zܥ8o8i;"^F.1maÒ~HHe=j T#eK!KFW"klpKi_z;a kuHh4Qinfg}? Me`iHF9}nC SfgԤgw;_{‘vTJq%[Ch.^w|sa߰<f^(dۥBRLgRGͱ@Q/>54ITj@6wfzDцHGffs.lefY\EN 2L=ԌU_K4K#%i6TJ_m˟nQ" -e@;>S"_BaN̘rީdyKF}M-0D j'1"'{$ب {շwav_R 8+C2,q[=䉿)gȭu؝ѷb oM#f{0=`bPgɛ|"c$N Stk^<vb:Odz34`42Omu>-cJ m6ϠI> ŀOI Y%D.RkjDž[zy쮌&Լ@KT{ν;'g3zM-=K7ZYU] U .hO1{leר9,dK}c" +ˊ$o*Kܼ&g[}}z\'uM-̰ڝ~H9~TN6S }zQ5O'師g]W Y'p\+;(ZGfE  =71x-1i[zz6sF)IJ$ *H^Fd飳rYN|7"]0Xx?&kʓ<n!F<26/PYM֥H{˳!(ERԢ1ՖB+@٧`u? .X2@]&|4gyjq_S=Ԡ 3hxhक़W%?d2$@y 45 `g WꜯNJBݕ~p9WYK;ub"Ci:K6kLlϨykL٧L 0ok;+QŨД/>'< k⒘J&֤I9 r<:7^o$lı}ϔ|P Wa]xjG>ͪı P֠dVeP#$ؘu]sz R:ۢ"Uzo -ʤ2]Mqcy߫,ݏvdT 0DS/(DRܼFqZ(9,'+[&4݌[9vY%P r;^+ qd<<ܨ]` og>Ijߐ@_%j( jt*6Uا]T28G`j8+Q18ڣ&br_ؒ?{[̾|kXkwOrY C@vZǑh/~[P-GOƔZnSY q8o>A֧4p҈# hz[nS>tro.]̏GswB':L9l%s`0i.T,ǻgS@ Z=2ex&\,%.T qn^[7S|ժin^"Q)E&aF3t\ca(BtunBA ݃Q<{V4^ިNaQ~\m|%OyVIr08!MXO,V3*50קwJD̬@ z"oLoU2KqmUKT~9,_@)NBt!Y(a쀾Qimk X0[WڿbW/QYЗf K藯V}#IVrD%_-,!8A7SDNpp?h' |6@b 〼ì+=(k?3tB?GIrB(> 2qO[1*ɑ)6Kl SC!ʼuYʸj|m"Dn7);g=C; Dّzn04hO/Mpk3ܕHaXgۦQu+<s"(q_80=P 즜zulzޝV82yYW+Tˈ8芽X*[S]*M67e5O-2%N\~৽9E"ܟD\ A7י;;B8Na;]m Gy|<EnSDvFC@l[MmC]Sp,.O0T\^`Y=íЖ[ݵ4=ZCicc曕X.64S,C~xr |Yz3$8 H#'.⛈[ĮP`)-֩r Cn@O0`h.6Z*WS\@XNKz3bH?n 7ˇ!}fS$YC6iR$ȕ^?*8nv\ 7I0zK:RTD6Vse,e&bA w +)4A9ϯԦ~3D JvDޗ4g*ﮭ,=Ni]"C}TY|i&C'HTǕh?jj9&VpY(2Cf_ESKOd+ay$P$\=!fkS 3K4+rugՅ2^ے}Bu-NF+(g< 96 eg[lLڴvS0Vq/vu$ixu&1`1tp~ϟ[4uV}2\wKӝn8+>wT*%t'kF^zL.>4E$R͹ 6_q{ !=.zEХֲ9$W) ^dZ+B@~ǿMȳL 9O Bփ7JLg#I6^[iԦj[ i􅸢t9niOW4]LL2~욚),.}z<].wbIu&'*Wܨu"/]RRkPIu 4cp v]AA"zWGam{9pM|tǞ "l53HfVi!#h*Nb0@dT] 6t7.U%zV4pbmT<c_k1B$1$(Y1–_D6@D:Yڿ-" Jv'pvJ*k!kl90=WsOFڹ!DV!!%_끥1sjg" Esƥ^61qw;5>{Fk`~)H9>Ȏ x D>< 0\pb(+S CfucBdzp'y+)]@Y' u!)})â1P#٨a[S"ael(@F/<Bj!:J$ zE7c(,d#NOh2x%yLS6"9e Qv1DgRQ>-E {kǣ#/o INto$7|g23|vq鞪j_jHGn dr{]8^Nr5P'hvBՄ)AaYjֳ)Aշ#.=e@LK$'-ʴp} *;!j("Rr}w)g+*x]& '|M]Y[Z܄ (mu3?,~n?*|@+XQ*RHvԕ!DTל;G8bh׬h4\Yj/zֳH^my,`IvIDq}Aa2| ?ft(|O /*B2z&uO})|GYpyʹý <o;f[)S&a0o|CH%=! + B zU;l=>>UAw?CVIi7~/+@s}~GPq>q # e:Yvעv{v-h^5wXu~Ҩby>)YWDuȠtP6Jqd_,}بuT1tY\Hc~Rk6~'M x+,`=vY MA^Yqa8?π?;f&8o-$>ZhESB[jʹgj#&۩W."ط;@զS">#;s}-cnkFV6AcN\eBsۙ'!E|pa@__|kz'2]UQ.Y{+3Z5@HnyYbEg  { G܎ed5c𯁰h1\ʫ=9 Ơu^N;&Pd!e܌th 5 F%1ʂmK1%C)Gi7l{5d75[hbГ,}YL$TFa8 y6lx]BKQv5hjL`P+ %9(4o_GǝWE{&c;G_K.2oMMw|FJ ]No_ 4BJu zWi^m?yV*pKtjEȅPoCDTc`q1OȾmɫrZ &Nӑ&y81 dS{CFzOhA5-4;H?-bְlFxoU/MR03zǴMC= ჷl6 dM$(xG[iHt{k^nMCx@ps')s2.`OZ6.B>>hOOUe6eu`:<jSE_3ޑB-*g_7Ψg {]6rM-Y&N®uѧX{ x Ie2+ \]p?Bݚ.Ŵ9klU7G^`|) \ڤWbdB%*s4]t3c[ϸ_"" t'ta*rIH^LjfDO пeci{"DKvH **%7U@NS`9 8!HzGjQ9n'lOZ a403 yD9L'=y- >)ҷՇ"=qY4N]gri3\ jP ORz9ta=1} l( =݊pkk~H/b:^Ϥ.6/ O rn)Eai( '"_O3@}@2Za]@ۦj$>MQx~C|/CE>@%Ra%!-k:),"GoLws"1犣zi3K{+Pm}id1-s665`Q AU ]m@j) [E-c!:TIZDDJؽ_*)|IbU ]H0ԘR&Eh٥wKE\vNqOrm6?+in'RkTC^*pB9%;sjKo., oCz1 ǚO(wW)&15*x3ͬ,Î9vvW Ѳz"p7Km0Y8a < d, Y@3O^1ÿr`|{X6Cgɔyao-bx0Vqoj2rϜ KO5T9#7I8"F14*ռ]L?c6ndL1V ;+r8/|h=8eH=Qܔ T$.d.nIsCqp}ZQXC1,7LRa% N}E^yysv$/%13pu݂Bǚl:n? m'x=XT.&•Ty:/س;Is'Fs֝gݿXܕq{ gNsJ,ad䳽@$JŠc V& *o9 3#6w{&ͽ%AFvH){e"W( hyyD#Y2Vo˱\rHBת>)bFf6F"6$޼M |JU_Rzi9}Wx"{$/yeX":l! PgXϣ?+yFKuX͂%3wSK5*ч9 ]A>>XzBC RU7gL7qbu$ڍo[!\H'Ύ0v lf9( bκ f,w0'(6hD]|hYD#t*%J.GU)9Igbvx~ H3Z ; iy]ylA^ޭ vD#;A$E`z`m (:.>HZHK# Gi.iM׍ y}-(z~rƘA$" C~ ieiɯGF9GTr+}Mg˴x f1q2Cl)9ɀx؆&]B鯽!ޥ,wD^!WWPJ408X Te~X%u}Α|_ 8ߟr? | Kk>uJ}e\ yV:sLj#,٦4Lx*αamyQh vP@ ĝ-Y0\J]7 F 0l(P~~ϽPr` F  (%icHuaMƣ+gXJm9E 仫l"o0[!%fc:Uw#Q-o"P$V$PKAǘ%E>3b- 'ߕDq M5}n^F9^tHw>;r .2> Aִމڍz%Y/)+8V{4"oG3=CRoX zJI񣀑$[#A۫ר-Ϣ~i&,ϳSZ 0 Qz-8R7础 jgV+l!)3ngiBM> 3}.!Ou߂8$ "+|=wyQ ȵ+;[|4h2|;>&ĞRVҹge u#TK3P9(rmaP?ۂtI  \S X3 rI&Ս@R9mF6؝*y(mP Θ79O$10鲣\U("b]׍(:,6(}2hcɳ^$&d7,%F4Zv r^L9xḞρ>_+=Ķvf a~s~F l#s pQ1U1#y~[f5V%D6BXtfixlYE CД2}WO+;^ _L5rX! O0]5@=7Nq_i~+ 4䯕#W8?"4O:.T]?;pbYKD U4ډnYMS{gk֥8Yʯ\~/ -@%r##kٮz@ȴ5|/oJ C`tQS_z XgH?˫eҘD[i{NJ_߾J{z # Mϙz5(cNj<}k4'NJ?۞L19Gr=-vׇX&qZW k'CR.üj!WȂ[w ot?Ư{4cʸKzIU"f?}{r @mΐrV-`lrHp/#nI9(K0+`pY4>T ;*pe~c'|S^Dv; o5e+`W1#\:{BX UQw _*qG 㸙2E-uΜy3 HMߵިf`_եB@T|܆˒e/#xp[{wNe.Ăl(?+=yx{`$apw"Vts|_U @;e׸aeމ>Rz4`N0(SzV[HW }  j#-N&Cу7^Y~[ATnY/ryk$LKW1Fe<|4z)Eiw7G̠0C5flbp}u龤aV_>pԥH ^68!4+ : cje[0\ `^_#m`eCUڵ, :/;:Yd,qR98G?ldw 1_(TdS0(V0AgT [rZTQ {ck(=c 2}|dɑ)xUoE`q gp𷄎`~/MF; \К}Yq8R 3[m VPWO/Ŀ3=*,zp ;j{3A&LFΚ]3mxLaX𘅄HIʎ΅v~B No*+ !^cuk&nbЍMQSn+q:ba7*Z\̾ R2xF$je>Qq$NN)Q<@'ۚ7+tg56d`s c1VݾV/5'z{R(4f=U'z7>M!gzJw$/pt].emtQ`+ ^|R&Ye"4'4J%WO!3griF]4HFoi*%ihU[n15kP͇aQƈRk /cOyULi2ɍ4Y;+|rOri{-=O,_K >So#cW3,e,9]%!ک !ٕvP9R>@ DOa9?͏p39I@.,VQ̻ͥ^N\.B̲WlZI+Պ)~:J1D#$hrn h؝ `n~‹tsI `i|)B-!-^!}z@fjH)-5ί,óY©fqL`#}YҖ@.DktgZ(# av , СJw> x?[>G_?ץs]A =A>s\poN 0Gd1v Α֘-qpiֻ/߰”"ĮiT1C0 e F4+ NwCfUq:i 4Gh.hzZհׂI$9!_'l'^:vȝ!?@wB&9+T2\ ?hm2<~X P놟PWEAs;ĉ>Ti#(U+{*^o`>j(LG҃ܲ 2N~KX>tpU%. X8В Mrxhf& :d {r쵠uT< nh7ۍwFf[ 9(ơ&q$u)x~2QST` oβ}>B2 Va֥˷Ee2?/Y]QfAy\ j*D0ο}^QOrn} ע?];K 緑dogGegRyb{Ipox0nVouc̼ˁŏGA@TQ&L򌫘fHkGr+j /2 uӧ.U9fV!zP'H.DkbF[:u /O%zX%$}g%^ޮ21Ke8t3<t#`vOYͥQ4[=KUg1Xp"tVWk2>cn ,{<20'zAӗ'Þ$D rǷ HHJe8In8~ UwigI` *xL ^ w&KnO2売MTJD}4lT@7#KVo=r!>bI'*ivT5LPn[ 347t?NО Pۃ");; <\ɝ<\~<5Z",).YW]{hlem CW(SpXkJvm?؂9,IL;zIDT Pŋfg8j NeZii;g٦{DcLh&)W8oҊ׽iNNGZ*(BS畁&޾]6mluIzhZi^5ZђnUIS!/?nJ3lkGhe1+ԓ=(S%< ј%-#w TipxJW4-l-/OΟ"bs>hBL}C*qFYK{p5ZGEJeLiy (܂.GC>,R5 m#AXR؁fKkބrZFZ+˜VP.oIwMox_o, 0*F#<ӈ6ooϝ3L7T8(̿Qً119{7E{X?p nF?lwW83γdഷJS7ͯ4JwA.Y_IXIǿ맢j«u rtwzF=WcN0|WWױ# ir;w@IG׭Vo^QAB]/Ze/' ko!@J|% =K},]\p+9ucvE~r*IS< N:@i*fq"%k Vm8_.~V}hxurJDnx /sCI.~.{?6Rg@xI!hFфLֺov21#y`67Z,۽J_|ƍCE}ZQTP ~tDBx1b5.;3x3=Nteۏ#Fw2TR11]&1nТ!׉|t K1w%60$H'Y$ߞ?jKm`IPp~|ڽ~\am{,C/K\^~eb Yɽ ]{jfp_@i[6ҏூ;  +hxvrr^"g$URjwN@v[fF< KxON::&ƅYl]5Imi"*H٣3e8'̶ZNL4{Ϡ;66"_uuzKߢmݧ'WC&oMmU9 owzpvV|]QDӲx8iS;h%ӝ'pTQS_IΞgٍ :49j.E2']\C2-0߶~O6Ɠ@Ǵ+9︹T9XPk<Bc[_ê"}a2顥|)CjV*^>i{H83Iȳ@|1|X#H$GZR}&x5Hk&}ec[kzn6?Ks+KL#P:T_7㓺u)jNp-ȂdIu"'t!wvz/'1{4q-0lmM64Y{?Bb'6 s#wyzL 김K@Uxw;~  aNļJU ͛ssCFאDKxω,)6^<{m$jsR'ѣ! mz4,~B:.l3yaR-4{g |bf3ve䠯+/HBt֖ |H>|B\:*9˰Wv~ou-OD(u|EL91|>U/mhǦ℗N)CG)ǥWNep]t Lfa36cu3Y@P 4ͼ-i/܎|>dMaH2c4 u{h|M3psd2"p1"wȭt5bb#΍$&=fд!Wih_HZǰh&cNfZ;j=ND jdV2۪8~li)%K5dtV*.'|X٫ھU?)Nz6gH|!}jKyB  \zsMͯ mZz~uVVHpй.@I3ϸ|Ice۽xÈ6WV|`혜 @{(}g2 Bz-TǬ!@ot4-~d;>t\/q 4a| ;Aa*:+-C ,'Pb Mdd)-/$@0[B2JAҜlsV9ej ^O瑑촫ҺFRdTPC–Ilj@qF\åT$B<.38se/z~YcK'W]uou\Jdec no :N fnY{RqiHN"`pJ&%95_dPH ~p]DlU`z)&*ؓ#C┷G3M#c/?Rh:%V~%Qɧ3{I$^ )78ʙrZ &wU\ Xr<jIlyfd>{u(o+G ۬u 0mb-t<~;cL?8CPgƐ 5ȡ@MC&nwg)eKlO-*CDs'-<88W|qjo! msʡ/Pw%8 n8)tj^|Dڧ_/J(q5NﶰA 4ع &Ir4&+!81OJx'?0겉JkGo4i1@W6A煤@xH⯤a |WGH 0 Fp*IlosJ0ˀP?+=i|6DjvDQӉdoXhn E]_QQ>gfQ!,#<~n[z|+{X+gA!ƫ|.̺ޜG9~L$pR& E*LC\2eǼ m*J^Qʕ>E ωNY3ژj{j)WNly*Uuqm Ñ݆Qm MgA>3n9C)ìϼN6<%ب~ x;CޜTPd*xGIp'i~X -9|@! =`7 p0sjgC4U )O}%Hy>:H=#'v?F?6{RE g>!I2f: DU]hٮDffjTR@8 Ӓ/y 3ptyR|AZ KgܬZ,lG~uzuٗȶXxD-* UIxӜشɱ q̶Rzt{{dnÞK|Ɗk'J"h˪13 a3E|mBt.Np[9&dJ̊tjk;|oY4NAD7gkM/B4,$aݙ.fG2lU~@_0Rjh\<$Cw>7yzyiªO|8e"SęWCWtCe&狽s}];[JLF`[vQ%}n dk:'~c gΗ⡶lMGt0e:#΢ ¢.O2^cCB2F"QDfݱ Bm-g毓L:-*QCy3 >NE-vhI[΅6kđNST)⍊K8m4릨]uٯȺdTs$IS hp%K`0GS+ǂk9N/oلyg`&:GS\@#kL'(9/3W#6oJǢ~'",Ɠ;gn)?2P p՛]O^Jh g Bao#P&g;bgPs;{0{ 4X$g3Ы|bг^өD=S1I7QѾ*ꃑjtHB~3-3z ʗR@8UN̸dIvx I wW#Aǒ:L(f4#"/T{=EE;TjZO  Yh݄g1 hu:4~Ev@2unG 2HP0%"n,ݪJC^ OJ:WIrG;`MY:6>kyA̠LguI"U=Cx|mA`Kk݅(m%11d[$ pۯ8W())ج{0e{\*0 ,GQ Zpm.ri!ӂA!aJQk*` m4h$Y'b""PHeS؀)HW]fDKoZaTi+Z ä KB;"/Sq\w%&z]'f#YC;m*LR|v )TX~q@(1p p2>:ףdRGDaB^T4~IQ ^*ÿHJWD~``;Ppv'%|hj%[m9"c/*V@* s|t@ -"Թex5O 6"AbpoA! JV+[jS {6L &a 2ROxu>yޛ ;һ_+<+l%BI:n&7C{qNXِhÆv,ʚ0BUUyB|SLȱOkIA wF0~CYp jͰD;6YMGŞ&uL1ng^YгO,ʦ9 #O=!yc 䛛1oS0h?9|1 RDMtq?zCblċ#fjDtp p<2 `ɍǀr E\VHNf0t;沠J($)eJ-3:BKyӟ ndD:$1,5,.C>3 8nuNbN5q:pAF+"Iti{/Wϙ4u#M1=%DA 5]$(oQ0˧㒩6d|q#x~B-$`wYp) 3hC~KaiL~ ]>;&-'瘨l0J s {e[$3Qep,/.Y6KsS.Xӳ*~;ɇ`"$(pP~epB$%uGl?|eBs,(N5Ft3)'Zi9>@NH'|X`# y,a gELtkTuȓ !"Wh<5|sOWbs:%70oi=nIÚjLDcSPHOtnSYokfB(s2iR0DNvs2|v6VRүA|OT9jw"t,I]Or,YPI%̤^S&$aʤƄA}1& 1߫&_ e~w"/n\SZI 9Y*YuϤ;V5|K^{f `4oĖEhePaԧS].j) N`MCcʀ̾hvfҌ%nz`YNϷ" dl3`ḑp!2GkbQhI+'?`aЋ|L[ m+1ަ?M+/O}R5$|xa:I~yQ3ܲxl6&f.9[;gPɣ3Xl91Vh2<. x2 @ˁR6Ap>FYCӑs UX0y JMh~Şc*CIWZ,K ăIr9kOd5Zj6ą2+swZQDKQΖԊ/_yWzh35xG7cl*^'$5xh(ݏ:/ʆ%]aT 'd{5٥ny.V[z?n]Ӿӭ v6\:-HuZ]k,եH42'\n쬣ZUP=16-ݥ2X&7wW`_fII)ϱWg_=ri49R!1?G4.@ \gba=W7mc%*+={l}.Vx=0BO@ NLMmhPΕh,fE/gB? xp|U .Q 0IL(wy@\gK >.Ng4 E4=^R.Ix%eoШMd2R0ECނ'lRf#s[BC8yt`cL" /J0%KJg܆N !x2!\Ƿi)ww]OOD16+ihÒ"bydQ{ k<.'K>XoN$`IWa9sc;ǖ6N N̺bo3PsǕs!l)|& I=hhK@((ǘP~p!4 d; 勩s. VeJRlӋ&"n%H@܂͏H*H1#yOX1lgF5l\)dvHL[:P %BO3* KX~X,=yPaGeuֱ5VdM{\s[^W.fuB9 ᚢu=aĥ[?7Q^FT".7Fb7ܭ ,U&86pI$6 A7myy/ ?2uc߮`AʍZk7(زkv~_ujX}s=#R m zfݼ%"˦fl"z(wb>Oe 6*ɛ"!82 ~I3*4f%RtCnzɝMy. gI7dZB/ޟq.4SĴĿh|L"{,ߗsM}QXW)zmƒsCY]w?=ED/i6hwK@]4T]ӨeKof=aEu>Kҍi#ɐm;lnaP=u4KD ;'_wOe4 )ر8 7>(kt|9l %i / hG(P1v|$F Nos"3:* rѶJvAz(V$kK[)WlzA"ƲPuF} J _\yKf$a1i~Yl1#Q 0*GֿQ>Rdʮ$j %"kaDWo8sLxj"Ak}IŒ~W{ۦ[7r; M_a9i/oFex]؊cQ&IʫC|x09;i1&IcצlD>xt+wvuc[-u__/e}r|~s>:j-'7b9˗l^AGf0c_֤)Ka5"*0uJ)@k)-J n#wh-|D }GQZ_ibB(~Q2L=?ewXxU]g@ұݓ!n[FH:c os:"ؗ?cvӏ&e74y$: _n&'k~ Lb}hV`ǿ G[RcOEWG^8T$'9:̡ p1 VkQ` 1{%&+Kt..R G?Sݑr˔%MsMO"ņq[lG{x[Ӱ;!OI4Gyx6":WW>9|ܴy$ZsW+Fɡ ^4,E*O{Q@ɮmA|0(ol~)m w.X9 K;$0 Tճ\6n)/Kc8&ՀAUS7{.tCH{Z.e! yl)@ÒR%@9+޴?uPTաoشʯs"* hCKtJbM*2{'׭v'(wP関,q;VfW+1h#3o燓kbCme5%Q€MJi1%VӅ[S9^/` JNCjns&+uy|>I_\\BY\L 1Ȅ9 ׮p2Qt=mdXOLq5i;*)lmlq3镎6oa 7YXH_+wKVC7UΆ_A3eOsij0C)]<%?\T!(-@G1 qkph#"iX@hz?ʜ̠䉳ynjm40/HgaPs7n'K:H݌[{+7X) ?R"v$QdAd4F~ȸ7VZh{S:3z^bVz Dö'}vEnQbw/P9Tl!TDzkjpp#!ݬc0Ϗ|l :8KSm"9Jx!޻oսvENC"NmℲε~M׮xS}`0+䯜pVepP Qm׀=@]XRNypP"ؚhA?!![CHNfҾFt&uސgpRYǿx@bs7uo?d.ÓDŽ^Bns-]+- u~6]sdܢ{6r(n˃\50bG-ѰZD%E!(gӶrvyS@$&>n̒r<7ʯ-_F @fE$)qNճ4mbʌ}:W{ٖe] dUWlCCAʋ(N65P Txr)gCd~&>-PΞk@bV9!amzV*M83:9l?Ų<@x:T_8EQqONJvڮR(ѬVV98$ԁ ejPؑ-Uِ3`G~`wI1p5uG!į U=+sI!3@wzGjs&B~dZICKInzAkNإR ?yryPu\,Ϭ%MK,-Co7Kڧk1`oZ]bHk@>  g+*pefCLZb""N!e!= 8m&3{Fُt gJ i"-x;UZ\Pe&ux -`]6DdgBBV|qr\3L ;ĶA<ӊ: ")فj಍^^ѪדxR ^`byqt4=A"W}J7 +_V򮇮w~0yd\@@A*5ҁ8NLs3+"yYaD9>߁ɏW=D~,t+/p}G]~h)d pz^D,8\1EA' R-=%_,8fĐ+٤w"hE&}T'_Vh#9KC=DI).S=/(Vnܾ럴-/~(**}[,3է}o+eM_鞚- ^ `K-4 )-;EJ;J"3rࠛن|?,襵Ŧ/뙝eyuއ)aL3&fc/4(sY.h|Kd`#̖$='B_uw@7"%9/#$H9wqctK3{6Tc2 J)y*fYeԷ4`'+0'(p"Vf9Es.<\ǮDVUL=as\9_-in\Ov `?c9`Yf|u0*.L%HKJ OvG7@lnjB˧fWJᗞ Lb-^1t P1co+myQҿg9WپM0ۡHp/3o"-tKafQ O~c/ɃD<TfybnL`@rq|û-:[@F^I\+id?xTh 'S;ب8fp\&(P }yltrCJy"m{bVt!JŁb.,ͥ$RT=E;Cv82j֓UИ4D5({x(z֑. =Shɟ쵢V?^DۍlxI8#;_| c)`ZJ"!.lJsFJsarH7h5Pl<.vY:#;&]I$8=frf[#4.{L[߽d?,]cN'껑ul+I8O,NճP(8PVFCBp 6j8G[? }=_pVXK0NO 0wޫp|Dl SjL-y +z xFL`4,5nʛ@;^*3+oxws]=PXG-y/ևH:ʧdYN@Rf*Js[pBxbgi=)6:S]ո,idN+2,PJcs.)U_Rd:2鵵s$vW!hId pXɭ9Wt!4AgObkmbmwH*k9cƒxW=q)pxy/3kUO8IW?'ip-δ{d_vՌrDMXܒv4J/Է7 E5 R!hE\R`<8S_QW9V`Y]k<9mV0b}945 hbFM9NU \Տ˘%Uj3b1(aJjkt"yj]ml/.prw2|!~;w:Roe U}uN^6>4h ")8׈N`v#X\PU.Ah{T?uWNq 0@CP=tiX'2̿IզFojm_p˙g'~BpMj_mv< .ފadQ!a΁F]f:[j#DjuQI[%x 7F7JJӎ33=SH.Fa]f9Q+K4g؇=TCmfTnw 3&EV;RGzU.޿h3At8<ѡKQ*zjFjW ]~=X5'L!C(Nx +q_;e3,R?CǠn@!"O0.bڛ%)cpOoN08:ֈ[0BB7- J qh)|`E d K0uf8jr eR/.__R"&l`zeh.\E]NaːKPiM5$)lm>!h[$(8>Uh}@jXER4CB癧ֳ V6*{{Ҏ04k 7zchJgW9٨LKc]) 5N)04 7O[l[^V*n;M+nn8_!yTSɆC!4+Jjbŷ!cˆuL+[}3}`Ӏ @>~aDx8=^g##D(7ikL_w6CW-J.{60g8j H}V\Wrp$9% r2/%z*rbuڬk*;O*n4WƘ,ɥ:=/ 瑚3:^ͬ3G ۾&>Ԥli|sW8Y]qPH2g-9YauPNEh$3'"݄n+,b1V"T|J7q40evP(gH_1 HB2+&0o`5 8x&hwƦvGqhpp?yU([t4"UJgLmeDR(.}<ئc R5HP $`2KYż5bm_ nt]WS&#B{-?5*K=ӆa7y щp4O} ")b-J\[d:_ţqsH'Ԗ j~J#:Zy_BN2/-Iln٘4v/Պq# @G Rf_sLf0Q߲P\-oG;h2H6 (Ar`Q=l)#37b0slL~7]`8W3 Ur~s|df=K;#|2 Q` J"ltHs_{6wx~{3:Af,Wcaݭ)g>r }ZtYH_6PQRQi7РaisWę4X7vw?NGa]#B Y7l>o©?y=Ry@ДOȠkh-#ѝ{'E^3>|Me3FO1#`)3͔Y ud7IhιͲσn[O芖u:Էg}wv?<=ZA,Lc@LܭK[_SWpƝ3%!-e}:d$1C~& 'k -䣒:XCu= \*f {ر!0+܍E1qE >Z`df@^nȦ`Mu{eBBAV{y@c'=X2'ocF˻.][cZ5CۡynWH+DuTW5WO󠫩d-ƹ aσ}: f}@1.wݯJ #vUjIU$ }eJ3oi!Y 6pC >*ElNCD+-u?hwCu6Y pYU$8zA>[У?1da׬ dXt2=6((ɱ6$].jiM3.>jG_f9(e@NUW!ٸS7Y%@"c꧘>PyH{/o͈a# ^Bu¸J5z)!E-zJ(ɕ^?JF"畟 ! |(n崥HB6Y[ޱj+W)<R_#\Rn8,9x2aCoM5!K y.8w8xӌu-fTZvBg;̲ܰHC7b 8 ݍ]{艥 -?S$̓P;gHًԜihx* _ZRyE.f@\M LPƒf +,Ty{MUA@Ei EgB*K~;/9d٬mRUqUZR 6<̉+5J/TUͷ1#E{ֳ+x-;:4 AJمPUF Q@ֶ' qX;˕qL]%/Zl+\ &YQ m0Sno8SqN$ ..8ࡒ7UW:(֭ZAi\c-?X6vc5L+S4r g8P/bY4IFNȟ ;NJFh@@Nep̩h9->%`ˢM0 %b#VxO+ xcH c bH"%faa&a,QJ:'uZP;)A:#Cz7={ZuSPv8 4}q[Ba h]&Ș!=Qk$MO7kX!XP`s6sE@:}Q-G05iF5+ᬦ%![E^Zy~KB0L<CG֒V}:oD(5лCzݚxLJB1ׄcj瘣/;GɗmZptgo}Y|2%xܺP%NiV,"@S=D+Pqq1Map[̰OM@-&*7+@p94O (:b^ZV {Ɉ/#>TaӈXOb憸8G>2ʬV@QsE9vl[(rFu/;?tTۑ PF6>eNlTc9׽ybk+/pY)ZrFt-c;R"o+|I(1+݂}4nO@픕sxՆʰ/֥oюy͊c Gswz/c@(|f>)7R]^,Ο۔;|bP<AMT6J尛Y"=GK/ޑ&oǁ^MJ2`)<J0He܌@ɼ8BiLTWݩ/h1$Hcƣ @y:&t}=.љk{1SsPǡ6Ԁ.4 _xc (@[ɍ{dVa5ӈ|ᰱ]I*[XzqҞ)k3V|=fbE_Gr, S9{EIϺ(j/COba,:'\vi$a"凯Sm҂3UMMc7WA >BK$]HlP7)mNYXi( )*Ӆa>fі@e)ACKg,oϗ=)h+ ŨVM#/i1 f0חdǃ٤f|5KwjÐ]w +'Cg'NT*ߦoE: i4j+S/\j:LtNBT7Ζq`lK[~hig3dL_ ]?ckqתGT]O漯XJiyp"(A?+WQ?yWYdU0`3i$ϝQ3{٭N7k<5\d 0Rӟ4ldQ9Jn7 }SW"hPʵ0oO9KoɿΒ]=Z5F@,ݶt#>>Y,`$dJy唃f13f_zIɞ0y EJ'kDž/M{J^F ouN2E{"DKㅁ-%(ц<%aݤ'iT9vAo-UWn+q =mf~,sy%9~_?&hil=Ffi%ShR-ϣheځ&[ԜRw{|!_4/Ϟ ޳ZR8ݼh;1+ޙN,/ 3"Z6{zPy7(Uʽ~.(C"஧im0kʮrI_3DzO.˟{3BzY؍4}Ge\}`Xv`ʆ6;Qd&h23cXu bF,i2jɚ.č}0e* #=`(=C?"rUs ofrDP9j}KSܐ+6պ~gԦ ЛQִLcd1]նYn%pZ3lr-ơ]d!y̜_`7+{ì(LK WuCe.KARNrOKtJ4>t,4x]ybƃ++L9Y"LK`u=n^sh鄘R!< 2ԍ䣾x^G3>X78t83Y'2P)a+Vxz؋ۨ=c#ЪBY> G.:*#9+åަLqUik`3B"A$hIJ+SMw!@rǣ&"%XqMw3fTȢnJj]<[&>ÓmE) ߘj̘5;uŦ,&A~+E^xo"//0#JWp'~&. ;f~ʎף$0-hW$Jz R^mH}$H[9A9W4<(_Ƕ9* l5 G{ (ʷ]1'NrHgGd[À9OO Q0AoL|]ƧӁ:DXm\y}JQǴ~|?3Wfu&&t| ul4WSl`-Rݧx]IFZm< 9f[ ˏ~-gpV\bJ搂{̡Â%p hvRS+6@5Ppǟ'g;D9P(g3NfɼL#w~l 7|t#( m8T(R^C|#.H&/OU\DV&3"m6M@VDP|%Ӡ]*a$)n^;[8Ov\f*Чzg஦xsWNR)NgP%Ƃ:`~U٦ % Y_\z#ˇ$y,RRG~U)?\u' E 6 h7cZ*o;Ɔ=/ 펆J>`MW1 eh,+Gtn+_Kd~6Wy2(;X&s8KL2 AYiD]V^0r3A7>xblcҁ`\"Ǒ^ίĂȠZ$4N٣'9~keh+|22Y}C裲ۨ+}f wtfbw!|S}4W'?zEo25~psi2 i19辚AEٟ0ׯz;iL/2B9pu_dV'_gk\:6z˘f!ld/`%Aă|nՐNAs̈EeΚ6݅=F3B5z1OXo`Ӆx/Fj 0!KX ԇ1<ȑGn r[>j!ɺivnf;[`$3PGbAGb6)h(hYJá0"ng8BD2/)$LeaIS|8t 1.P`5~V%x SvJ𺘦IёPn~pϓ%IU)y,6B#,#g>VWpOQ썻5$*ll 4Y<*u\oxٵ*XNc{G _#=f@e>t9iDûfRtT$5i}d=wBl(~p.Qq/zfEXF_$x* ˆ(p|W.؁߉0)bO6rꙢ9̵OyYG _PK3o.F\xrx3vxxb t #F775ഗG|$2֐եcs7Cm'>~-}m/=\ ⯧b}H W"(IUR&_]kضtG oTR9;ʆRlunoSD3ܼӈxR%yju̞n4vC&4 @S dz2}md{IzfSrXX.U ݬ^jې+ځY1e~@C^nQ_=+fN3ma?*ΖdGy5<\$E,XBNk^0H{N|EH1G@iA(<@cw5T҃"W*q>߿,Ċؼ] }beK h [\3 RkRU%5 3Pm~[r +Wj{Ee* l~:;jq{ |*ҳ*Jh#4w(fbC eWu<"u f!(5W =l&h-W=*M>[ 5~|3,^'Yb!emѫUTU'Hg定u)%lrSxF2B1hjj{J7p["fT2㡶hPS:ԗ Ւ~<2fxEPM=Mܝ*wVxY#X_W9?1P:z7806/?VN-ƞ.ܛNMj@(O_<1 "űRbx[Z2 5>^A,~nP(F,WmVJ/ T̄0/>r%[hq% X K)VHg&E&dΒA! Vߋ∱VCh,)QvĬˡ[Vc;}J?pa^K~ "@#@ٙz<cO&sD*˥Zߓt\o+F=;.f%[{:C 絸Y8&-cxw 1~XuAWAW|]8\&y+؆UR/ s\'Uk^3Y.s 9#Bp᮸PtYOX=Ezn;q|[㙡~E)X>”PB 82tU>qzr+ #)T:\QJcT FjEsSpX^V,QRB #dB8WUyx^#K4!%C0i 7GqG̜^fj9rf5roY}ttAyzQ$Mb#<[)E Df{Xaӂ(<$OB&&F6!%`=di"M2#J:Yagji@]Yp%/?Ʀ1o )&'HA},P=Hmu 3b„ hgtA8muDyD+f"/%/ (8A-t ~UzW;<\ d_KnEƭwoss̟UIW?/oDz쥼T4;2`v!Sui;Zť;?w&L?Ri~7ujVbhL> K#+n t/H61R9@,q8ЊM lj#o8ֹF^f0|A\V"9P W>'H 84*Vؘ~UMnޱSGP]M4s2THGaiɖ:o/4'dg~g=I]ʻ$ ș HH+ftg+̘mV&=wp׶ @nYʃ fRGa}VSL)cF 5D8̫-lvx\\t\Ss&OCTMC,y{wP&ǚptҒ˔i[$b}LicER+I5 Z,zבۄ\4o9c0)-axnXCzI7ҁlf{pyi)AV`6i"OMx18C,3{h5 )-"6>8"t Rqk&R?a<}Ӭ(-@]R+1!e(a,{6KՉ~vGL@Z /e)6\y"Vi߯ hj @5jb8ce} /GX e+%_Eւƿ2u, KRT|$k2d6[#.bN ,fv ŋ@vEܧ4xȈTzXW+LVd~[p̥UD8ѧV' zSh "!$`. Wꃽ"uHȑ\aSt9:Ŷk;UŤ.Xn{mOkzǘWA2!meQ4u]4L-f/ed9Q"GCs"5n- )_N9x EUOI3έ^qۢ,hD!TZi[8:>XPe/37ja<qCӥc7gd8}, `a+@vD[Ѿ:k#?J7bwR\ğHzBG 0wRJyYy7,fE*Q,uĄ-y7 ?u}.叫W2sXvqHje]Z,kVDC`nղbIc<}IL^׹TXdl^Y3PntD)tR|ٍ^8Ơ,嫫=Oq|3ifo`w{o kVKv銃"rJaV毱aX.gOF; h;NrlƟ(X(N#rP%S@{֓/X`<[I!M r)1xq.8 ˮU ] 51rZ3;{ZO;N1ӚS9 dno'juXwg賰Ts 7ͮWQ3]zJDF*Yn20;i7,t]9|QϑDk:φ46HSKR*ĮYÃC Ŷ8шu5lv'*eC~q+! ٸJxL\p L-X^9~OUqѲZ=Q{Ac [Vb1'C#I:7S+'2agDOX&RIuc7kWcg ͽi\ |XOixA;̩ϘU /NYԔg=@)rd>Z CQD#Ό!0\»fܐ7,Bȍ'@'G>NB?Bb  $C%\^ K?XMOt#*rr98Ej˾ØoEҧ;G^/^ YcDFU!iD- &eMM랁.h2pfY zKj;UO>"U+9ZA8; Z .S;žE'}do8$D4]f(R@lJ]H:tq@H Q(ѷzb!w|KUN9qLt3-@tC>?z.;@U^3f۱qqZCju@1U6M-'}-/w3\q*Uz0%b&Ưn3xLMj_ ߴ]αNOuk6}}.@FCa47qHqg.$(mzI+vͫUr+nd85Hi*˧$(8SAKp3e'+ih"dS \6 CL3\6Q~NӇ@f6rj_]+M)\ sYi"X5",>%C:$ۥ宦3#v}OcEu6@ɫ*Au) rFs]nmjJGI^i4^tA?pI1ح]-,_CWM2QI{yyآޏqY:$*Q<ߒD+~u,Š\6/'TgiPv_9:WƑBأ_f|:<ַ :xRCNdG7?Ԡb,dq̕,Rn@t`ehpFsc }ވa@N1>+МO]8; <V`M6)gr]L̦~^ZNO|1`O&Taml^V+授oCaX=!$/ /~xu G61H CH )ebETuw> 6$H"({IwMQ3"A<W>۬בy%ΰ$4@xسtqAJEuҐq* poSG:JQ,Zϧh! d3A}v Íx6WKXW[~&D_AaEM!/JStOjuV miS"w3OKݡR\ܿA#QO/ޙ{PNZKw#dN/͎{V<@5T{priDS6KLFČ.ap> l&=TG^çYMϭTAd: V/B߀H""I_' 5rBfB&^$Ja 1*»Qux =7vbm򲞸$[hQ$=0Q7) 9{W\H\uP3fRм5H7ҹ/N猯@z97k.TU66 `xkVI?q$|' BvU.m UD5M5 T"u:>`E|JVc/t<DX}գ">Sй,,ւ1 ~$_zQ :>˺ OVaqY#,p-Sׇ˴E‘ԧ܅s5Gq|O N fz>II]U2U=*-!٥8osCv_ԬYsϻA׼>ZK>P^~Ǐ!2/>Zxwma0^fp.ɛd^%Oܨ5P )t.A l R-xJHӱu DY nm߿f'b i$Xe3D<륀c4_|J5TЀ+ave<ց *&gQ} JC3IS-YS?!1Ñ [抺2 `4koqF"*ўˏkma՜]mJFBIzY : 蕮(&)e`JcO:h!ƽVWI=YTg4)M*|&eg=\5{(*e{":;EKZ9! !._ Ek,_Cbu-FxZb>Dx87a){ʴey =)WNs,m}?p3(^+op Ŋ ^= dFuvBppKE]$y2\ f ,ΓGD:y{ZT5k%A̋w~lĶ4goT,=Ql!G ;@"2=wM iPȽp:y^9yH"4kƀ\iw Z)#wRObKj–'D@]/bvA)i5eoE<ya}أPHt dʸG kPT1%31Db2Au ;( c}OIlQ3['IY53WfM?u8L2uts#)iySfGjFH)A@pn%_5 {\pl#:Taß_ l!jk1l$p@'H1Vrνw r_wY㋯K3CzV9.Kji׺{${jo!;׮oc@hWbTM˜_y&>E-CID{\^.XA}I $D}%pI.Vr-ΡW#iJkS I]Utt[ᝩV"fOe,+):ZmTE _ ʾ`]s꼢Pܳa`" (e4l߁M/Tq*JQs m-PX+@{725 kt62DnsZ9#.r>)g f)Ѡa,zy ;B_Ѽá|$(_@$)ٹ%:qS[a]ee;ɎSȆtF$]wu{tΙNƱIhdN"A'WFƺn:)>ՄVXA8G)])_H]F\XxV\gC/ֶV_mN^RCNS|WG}f'qѕ*rkF8R-#'9l~ 1b[wlIV{ql$E'3SDP,omK#+7JO}`3&j{?KXq"t| ǩ@P.33 ,(C!-:wty$L d9?+i-or:Wjy/vE!&Hap.݈ Mk8ʵ%i(+R;3@NlR YQx__8 *`ʶ*֒ݼr!/;ҙs$NUp 8ljސ龜f[\J[U@MRb躈ڻn&; x;XAfr2M]̽uB\w~ԬI,Z+MSx4AGCa W[hUDxC/}䑒nlr+VvkԫNϖNЦQ!XSӋx m5J]ҹ"d$VլC8S!iՙX a7`僒>[=c o1!B\N>?.w4Y2:xH+cٶxZR*znF8dx3f#ЕGѰn_PS\xxMyE*CM.{Cr'B%H .B0 ~@{5uQ#2P`[\1Tv;"+gg"Kq 8p*ԇôTwmVJ`QU|j-Ɨ;*ӝSQH*/!ªq)+((kNUNQB0D.jy`^̝38F_:>.ܡT`b[m-骳Jd&ҴZ e0XٟQ6t'9?`dK2oA$(نD({6y"̾-?y TNۚ"z C@,}pBְ}"Ͳ}ɣWXL󫔆8OSQo&F:% e'vor񭋳Cl,WU5<[[pMj!Cn?W( 9PQE&SqU`@J֨nOڪx"n2#s|Ni_mᢊ~{S m=˗.4TFH nO^5^ $Q;A meEoB'ڸZ>uPou qhI|OW58C=0u8(aO(P62<+a2NJ4 n^qax1T3=嫐:Ķ55 ;0[iʄq$8"wiϤNTîGZC q؛B Gw)>͊"ݬ.0ndA ~Nǭis"f}kM5)Gbv휑D^}BLUpn qLeGN `#l@,tCSDf֔^;2^^f d1Mtp!eյΜu[o 0Zx`(# s%~rU{ڊx: Q߸Ե)Z*&#\[K]T366 >Vl gAP/ ~KT}{(V2؏|pCi^KS=ĺ#Ѭbu1'PC 9ՒC)&w ZMo΂BWG읾] ~p,Գ3PO/Q%MV:ܞaHKBMR c[2س "EuϢnZ0g=gG΁t7:ݨC402>rZhz0{[l8_i_fCM"k|ބMe?baYUPd  M 1b_77\vyֈ-Ar\z}V*GnLuN 4@FgRpͭ..ԥ!W&-"u#ȹщz,F~AK$ Ec,τ7J|<03u+/ TLP߹0a/٧ciY4i,¼ ^?nm`#o{TL uT+|xLcv.d9*Ҷch؛ `ܣ](("9^(CiFZAs6@e G~[Kq(]SF0E[=&B:[7)2EViF N}:#4b,a䥟\&85}80r3r ZP@fꈆI_7/ Ֆ3jvL0SޛIVm;Og1]n(7Dr\a@5W1\ B{lEo/ #2Xݢ jtjE="܋R2Kv@;1 O u352jZ}jZ- n,.t^[PQzbQ ; \#tgVľ ,+hYz Tx}3xHH,ºȾ,Ld*<0lt!)֟D}?4p Ig~N / 8,lVZta) _K|@ Jڭ^<6ʶ{TH~b4]hg śh= #p(Q nKў_`}ǿ{Wt}{T쎖&yxj*hS$Zj"|re|" tP*~h_k9}R;7<:@\}(WSeAP4&)E* Dd Id]h^N̒niNVֿM4.!@FpgJg+'UU4Bŵ8;ęKbE4Ѱ=.BE_Oze6.8󧀌 I(c$B/ǝ,m1 {z<];ԗyNY@ϼPzʃ*1PKu=7=C-dBV>^ rƢn?wH7֖*2\+?B{{q5'־2f63<#*iN!DCKd{z1D4M 7SX0O-u(Lm0C43~k|[ԅyfҐtHѲ@ل\KHB(E*ǔ,z#;pQҰU{_X րNqN:Ke7fr/dp&8%<sǶ~O N"7Sxۚj:IR׍ɢuuvɂ8crAeQ?be:Gfz5'N#tc4J,јh IɆZj~3qn^iqrřJ3u" 6YY7 } %'70CEƳ(;qlһwH}Q债'͊\Fq}pdpSY$st0O#R[.ש$@ AyYP^`YY6w*wnc$\m &x399Y1F S<g>Ga[OBZ% "ima.#DTe7ԫ< PIQM@fIC (K|P{1u=Lף<<ǿ$<juw7XNF@F~o٘W0aV3敏S#ҦXpv?+sqn+&;{ko *"A#VUƴfvh!0꾊:U gwrVe:(RFI|06hujMW$rA}YR?bgM!~FHEUs-2OP&E3K@З>PdAlaG/v $ҟ)3:=MMs%a ZjK+ C @n+(e:綮QZ^8֌%9ԴZoLO4i\0YtiIa؆(hGBn(w/a9)Ԓ죤ejd2F_la 2eңH%6e}b45#}{)R QpY?O14 jEȢhR,1@.Og1r鐨o^aAzNE8Wout33B)wNY&a3@R;Ov ;y'bQT_y#巄{ EL( Uɐrhwxv#Sv?;(sGթ+jc92Yi;E,ʹ(:K_yZ)$&. bi=X:w c#}Q ]Xx1JT\VkE2:)cXdM!42P_yvDÀn׽mXj&DCz3sqP)!kvQr{#YS@H]_ʴ̣;P!s!S&t`9;_q+_r!-H-?1i! _yI7Q0踅c٦) %EL던On[aڅ{';?xL2Cj8aRZ8k ϔbyY:5"PF{Rcg[+,~c_/4#QA{JS$عS9/!& SARwcI\Q⍹(J'IOi OV&N۳VF5Z,1<.N2 Ya5o}w#{ەIS9F\;uWC]$}͌o`)Ƃ?Hh[a|`(50ܱ=ƃD(N5.)* Lxӝ=˳ū Da U8XUos߱%D*pnq"2-{$*x՜ž8EVn2"5댽YƪD _=߲(2ϺP+,|TK;'|_WT/[ĿSko>[d-0b/gY?bw>4vc~oŕY/ 9tBM=)#6za`ޤ6T.1t6c+}V(}{H;~ S>}.Ɣ;b{3LbiEa>+eZH0 gYGxVm} eJfH`q:&j/M* JqgB(-ˠk'{֭QP6QSs,[8[CP`!$9pg\ mO_vq#ʹ]c R}zږRMnhzd\P1oZ$vHm/=ӴHЗ} QFZnö8hR޹0&}J٬앮>ܤ e Jm|P*_{[V0o a[=j8rË/_j p7L}݄-^;x - ;xVD5{$c%bVw9'"ݦʣ%lt_-XK]RﴌnQ*'% dR`[E̞ ntX~^1r/]*Q^^@/!~l!MY'kZ1YUX2 AM|\,xx+*]IPۊCZߑ9g}o@ veBUHG[nS.p2@7!oV7oWUzގ豩s-5c[ m`ǘ%k`v9Jz-JHWP%ΐ!! ;wj@* $&5z ik = /-6:s_эH-)gb^X@8Sfxe%ð6I\ q*0r2)V\ vM`]S˜VVUf^?QIG.e]V%,jcи_AvNtjdEŜg8Dd-{C#HْcJ5&e %KyύeH?<[wV i8sQEx=Sq%?r[)EPJ+M8vR%`²PCl~}=*)7h'r&UyV#)OE/^@|\/lFNv]_%{P"Ԥ_.7db뫗O~c 3jy ذb "${@]e  .N$b9!1 Kق9йjYUxmU :s=yk*c4"O9 =|@KGbI WŚR {:j֙'5pJnPR %zē0! ھκ=Ls#u]"')D9cKĬLҌgU >s:64 #lBf(9(=-jD+%^[ X²/[BMv4y|mKs7+feX׳/_JMzѪxZ]QW|OoHg 2[t\m;2|bMፏwКjB};ǪQ,ŝqUYwD?@ŕ1sç\xrl.qUx5U 9`eݬ-rO-xb6u$ʖ&"X]޺_[90B1JXoEer(73䇼;ǫ ):vt+c*Ҟ|zv}*0gx&pNųv(ʙߗhqT:Q5|lRKcϵern R<ԼNq|immvIi2~*  a1ґ<m Н[ێR c:۪}!Z6"%Ԛ/^} g.pX)!jIW,ՠfL{uX<i όួK'rK"zMK&jpN^*>D*TzTDԠ'xI߲9 !غx&7ŰKfo}?]vTR '&TX+Fw0Fp ^ٚ!T{Bw0w/["9==#ez[G;8i˕g+X\~\=ɚM.k# Qqy5jR(Cq"j )54ǐQ r".OȬDu&Z$r5Ѻ- iv+( :Ų)u~{ )w4DO*ǏpGc:*S|T8$SO *,:IR9Z/SVռ-MA뎈X{l~{Ef&ݢ~t}uRsO;¦Slm>W^ki]j؀>>[ɂ]Z(A,2o[.K#z'PEJJTȎrT+?qҍӉW 9ס_HCS@@>ߥr _M2~m$`H,F n}b.¢< ff50e :M73f};1&Mfkg!XOAmJSge}LF,}e?\ Gs&=;<S 8vƗ5$w|X~bI$ۨNGDS^ e QV҆cqU=%sKgV3F+@beO)~-J@d2ػ9/0Xdli3oNu T@6 zv7TʼeؑTA"* ybSQ5ln-ϳm.:@9Apr!XI4xUYgrHZc$>GY<שYM"=Zs32ߒ'\C]H's" 7_' t \o~V8B1õ Pzđwp׀w~5?@^[*_z:))slMJ/l<4IEB`OB+W;pPd5$w0 5/"~ݵ݀z6)1f[}Eo?kx+q-Pw7JPEūzEul<2aUqy \N%?#*pIVVjTԷ'yhȁ=/5:_.b4NavLnM{mYX38j;.$vB/t{`2"b 'gyUsEWQeb j֑Ҁ򖂢Pi"dqkv*Y؃7ED?0l#Y3m1)H][MAJ=, icr(x?iύ>噎/_䪲*+&wQ37 ;iC3lȸ;:XФ-o,}f˜V_|A~+]9nO.#+j='UJ>止=PO^Xj/ t wJE| HZ/x.wIle<-Bh|Msc_m.<XCpڣUŶaI4MB,nL;oI٧iȂ śL!SxQTk6rC1VxBd-κ:R;[ 3CQ/&yi5 Sg/PW|x1f d.q98l8yB,2 ;<uOIm2e9ӐU!mp#0PU!ËBɪV2󻜏 9[Wnڇ)_aACS%1X!O0OcDƳ0i - QRJb%/⯿$iX xW4K~j¿LHE ,޵D ٨uͶ;Z3̤rbk~ܐ0Ķ%ӕrs:0$ib5Rw™u۶)rJ"Ο'(}߀1IЪsl0Ŝ)/)Gzׄ\( )uudX([,mC f]/L ?I>.f#ÏM;Dgnđ׹+ h健V '[`,=,J6wR~^R="VK{xwT= % J%V=CHv\/$98}AQ%>Z4-8$RvEk>b20q;ނ̰}].%_@Q H OM}UXAjn B5P~%<۬=x2TߑQ\ŋA$B.P3s۞VcE +N@:: BqPK9Ur$xz]\w3kĠͿ^2c `p ]sIs:Y@D~W 0KD^[  φ{ri.A5z@ENbΠz,˨J~9^7՞6x8F|ލՙm#<+7,jΧ-l 1m,ݾk|}С J2XFL0^WF)n5|n@UB,!P8hҨǣV(PW~lܟw3_!l>sQ2)5O0 e(?Z- ZFt8m: 5k[ y)v1+q>!'QV`kb&%AF5bcj)p;\8'QqSM u:W-uqy;W.nCFj+$TpoD:ˆx]֥tܒ?p@f({G'Ƅ6+9no9`ǧF/~;߽B`͛u upUu nuսCYߧ8iݹ֯Jy1mHs9}rBUcg¿Y-6JVabg|)/Dk= 8`M].ZF[ܔd~V57n |ŇJw-%j{7xA T0 ޣdrׅ$+N(T\\r1QEzݱYz_>c@5*˦#UK3M"jUv%]m܁dDRn΄6]aoP4a!*qM?©Ή~m'N4kԢb51 <̵3j"L]xy$G*%@<Ox6~όe4evӱXvlqB6 0mbfqk 7hhҐb_YaGI2Ail&B`~jeҴ2FЂކy>6t q ewfddLE8BD ШY@<\'6k;+n2nwaix!Ǟ@gTk*  6JA>/sQ\Kz-=( C@Ư#:rӋ:|,d4QFK-h/XvDsBQ&@7?Ll8徢.(]$ p<&ER3+i'UuBKs; P*;$o*тtUB'>+>)rYAFiڦ'Vn5>,KZ_>;+R,T\% ꠽ԌKN_#o0IoOSNC$})o0(sID?;)ZP=GܼJN[ Be>fl}6 U~ySq .nA8nA` V.n'.A neITk"*[7G% 6hN2rCv¨2ݺ?o>%E4N.IDw`*K71.<`@٬|mff$a /F lPiAt{}ǒ@up*6x]mCLW: 2R=F Lhȸ!A[Cj%QhZOY :.OTˋb .1  ,ܜ/?w[$BDrX beN5eP_b~犛 |5ńkpZIGI[NC=zіV .X|GB߭8F_a&e^*hO_olʶOÎ^.a2s?H.dWuJF\IJnum\YഴRG(N?NCde~3d\-xzk`[ lh*]%d5?F9ydTDX#׾SM]1h +ݑF;J sbEfo&S/$ZBBhqvSa~̭E*&wc 4Tx)PN`=U<6T䒁+1.O}-@!GEN~h%\L%|IZ6mٱ2!4PajN}:!: W9TŤa#mZe غ(^f)w.28qg X,r5!EL3'̲hYXS|EE=^NN;i% ӕRzĒuIS,hFUT(lLbhZXq$ l "vw s1뮨?)vȗߗX2 P\P殎@D:EWŕ Ih3"ۘ_qgF$X lBݬ+E[ FeMu^XVF-|ۅFG'P 9IS)bwm䃄6o1uL&[b-.hٙС/棾Z~7h(,9%'RM4G)2TY߼5Q?@Qsj5p1qK c@O:4"󴥵)?~䃱8ڢB* O1n{cޚϏYzpS iRusB+Xu5_;f%4AAƂ)M'\F/&Z/3`/"FV֍݁|O.Nl.hMr|/R $0Ipq'bRtzQ*p-vfwá/VI>O;g y2Fo?]l:^" ѐSS-| цe"yao0#pQIn( 佲g_[+?4NT5, .W.Y|/8Rt_JgFPGo$rrpt]. TReQ7B,eLڹ@vy=lS9)ۑS=N9E5f&ZߘMM+KO.vPu)R#Ss@yqꙥ59oPuؐ%:aŽc f&j0vsSܡȟU 1BO5k[5CI/kgZQgQe L@)ɋY,*ҝrVa)v-x"A{̰1I几<"}YkZ첄V[KǺ̡ g4։`#WzߔpH-(Q*/::hP)Z̝-jcj3r6MWg iPooo#]2@=c7Dݴ̿qz"b#gWċKWI#-z"CȾ\vD?If;#mp%u; kj C?OБ |Tbf.:] ODk<& :P->I& &X;q I[1q-?^a@7X2,ƙfC_~Pl5Gl.E4o֨+C`MqV{x; vtQ7cJodd φwv|YcU8}er**Ib8fv7/({Hۂ*ZIK^_/s+ %`݈]UGv^/h>-5 2O!|s4xqH!XF5:!U2N=eO00;(XMOx=ҒҡXc8-WZt&peDdA7}h (` "AWŮV np_0B!U_Eu ৿;4윚OoV pL&,8,1vM^?(,N:^}E[Uɽ` Фg,srag44 JQUFA˽R5) 3|1-\9 bp&/U趭2,vf04)8'1<Id1_4Ѫ}rfpwk{z,*"Q%;6,<A[̒tèG2s?թ.)%qv tumY"b ]An} y_HEBii'}ȋmA*tfRQmzCL'BZ ބ6!㥶KhzZ > sr\d-W5ʎ*2R tl T7̏SXt.ÈyZQ̶Ot7 `+QvA*⢬h;YKAGbjxxh ")VaUX戨Tݸ ! 0ƚv(xFr;iE5i;:>wƬ-N#Mwؑ.Slk4{9wjtj#z섬F|^sc|&DNM?7n4M'o)C=`JDA3hۑ]@=Ẹa)-/'5GC+JTb71[|G.'Lx $gN7; RȔ+{3kQJ|\UmG*'OC]a90 JU0ETp樈 ɓć)n0"v z1r/r,A?;؛:go]Ą ƺ'|=&('G|۝~,G!a$,>*qFN~ڢq Q^˲|'|i 磥/7jxF?^ܕɡL'6LLigғ}|YgWU"Cz9,r7J;.Wiq2J3d뛑IYRMc> BcS?9P hT[ !!P Kd$7o}.$UG{!# # b]Y$H^IflP"6]K&͇7Xl~,qHbb<醗d^NסAW eHDW:`} Gmw7]::l8|7Q\}ND8^_{S*d4 3IdSϸ !AbSQoI3#Z/5Ox5f́2b(^%l'?6|o}=<ɥ#K8uIcM<H 3nt$]3f#vEX̯rSJ0h[|P{Q@IDAbe}iU:dTC7藮a87{?ѣJj8(^ӘӾڝC.h_a3ho3RbJ.\qB6&b7w( Vxϰ=UEiho?s9kQl9 Uҡ7QiJTGٚɤV4M͙y$ԝ5;چ0&FD;#BQsf5O3ѧM>c(Ve |?g< A$) 7lA&]0]N6|pi1 dpAEķ|+\v6>y fYR\E'wFC1 2`ȅHzjX}L1eH\EщC1"F`4[k/j|KFq'g8ס:.|G`M0%@>4u H~WSQKKJO1Jvp\{Õ?vj<9K/ C9LvƋ OB?QZMB:_0q&Tenp۽J~l :V-yOJ@Gv@ꍟb!P7])u2ӕX2@yW^5?0yzZ CRyuv\#J4Q`Ue)·$NfɎpp8%ZRBP 2B'LPc@ +olqMTm(X'}L.5|~DMQ@YzЫ~o[`&ڽLiJ0RIVClՈh 1#NՑtYjg?~>^b=Pb4B)08(,È5bޞ+fgK_?idBuwz4Nr:g8n/2aUYGyxG@bwj@.I!Yc2n.) z9gΣ) ;'blI=GQKgfĢt=yJJ{e38l t֏ +Y1o%mHG1 RL3e,2̈́o;reB8Y_pʿ>-Bsg8W~ Ī:YZz-RO@nګg-d2&pB8-zR)xk\!{*-JL3K-0+mu,Z$雥 2s]%在Cuk:""y_E ?g`hDFY/}alm)$ &mtn3&rPyJaǏxgAZG8¨gqj x1zAǷvJhAF)A"t2,ׄ!9p-;^}ɒ _ m O\Dlve֐٣>8Y uIh:]lQu?RfͺolVB9d3rkhAz3uzT-s|ˈv.@eZ~\](|`o \ [" Y![Enz` ߇#.=~ 8rqЧIj&bƴ[ :| 8wF"[bR[z#øF̑"b=.b:m{.& W hϓ+^HvdS<^qFBQG{? G'kGfr0܇=Y#Vp83{?ۖN GiK ol VwaMX<&~Ai@eKVϡB?mFiq/( t[\G`KX CXQ*|m7o$\4l5]yȥ'`| Oś>٦D;jW7H"qv )0@'9nm`su0@F:ĨBs(VqC[GtWh]QRmU. 0gux#6b^;sjf7kIJEfiq]g_h)9Ӵj_@Zf„1RJ)ԇvX}+>E &]]j~: 6$nsm*>aUWUng\JR$'}ߵ-A}eG}wTZ (S?#5Z6zǟBgCaŝt_j- 瓰G5ؿqN"\+3»~v6rɷݟ; +g) 9^~w2`v+Вy#7-݀CsZIh&&8XՒRm+r(L_Jrg..:5/}j!Nn-/}2&2gY0=A>?dhssPV.bm dSAYv :b\`'k B3PeuvQeZGXY(9Zw6!+$Iܽ!B|Q ;;'kֱIcτov-/yt]NF)2I|vb$Qug1?QX;n;g60 b  )c+Aèd) $oKr$)3%ffV߿n\ z1Nu}+Iʹ8=;K%%/K,ciC`c=+):qe[ee2rNb tI&P t *yuB%‚?xy^$v fBfkr5&Rz:%ʏ&y..V{bRxr,2S\[{MoM䧞 XQ}8JXpX|W+ԍli<r`bƌ+o%{y:'~'njwNkbd{{E]l;8tָa?(St~!"@>K! -ͥMoL(oItiSHͰʧ`UU>j-XEqbi UޛUNLu,\0sYnE+/v=swVG?ORAjra- iߍ'KqåR_7GP,puG+Q(j]&4Ӈb?M"-g֟Q}Y#~є$*WXY&3yL1s0+?e`-jvWC=\G 鼳GΦmTSf:K-كJ2 EWtR}O(g@! .+~ӰS,shĎ[}/h&}pCiY&Pl_S-u0H3ܝE uRA^.VFK]/Xp[/) ]3<%D;TjZ$$E%IQZX;9,.B'Y0q kOy G臮GX"LoD/$Y<X|nm.Hn8f3HG_Ut*cUA+՛WCoɐUy,W3 Ls/O^aߒ/-4LGRq_"WcjB~k_A1uV V+%'UKE'H:Z~;LJ<[Q[pbAv$(DU'kݢ}w7f~g\kIE#ڿ/~eIAG(>hc'/j^\cγe9gb`.Zxr"o_͕\e6+GEJ rL[(-1@[ې.b(G3]Pn y3e?"hGiD"אNn͆P?rtV[8M&8 J&38m|Y X*_uɭm&l"FcбY4iч bcn]< =_ns<R!D;SRmp~OHtYMeDn9hf4dC1x@"CPK*R<7<;kY}%Ş'iBNCPxh^Lb~Z9GݗOxjA0%>! <*_#pT,u>&) &℈-üNN*2HdL,~ͿSh],<˧>DrF9>ltf==^xIˍrSf&r*W)5>RX4ɵD-98. `-jU~?XBLZ_z[4o=kJh463L> ' MҧrMkOXe8Mvl!T@YۣIdZ$Zm"Gso[;+$;Aٞ,yS߄%\mPyC);j<=X*pf0&97-$ڞyb*|XP >.lFwoPt T $1Jɶ X^% ըVhĄ/INuo1 ­n 8K[޸і ?5д/ ـ\I;,zWj ~KH&k yHm;N=zo7_ߌp*trWKEJҹIE/o!1{( Tt}m|nK~DEq}'S3AE-BkmJ_Q]dkJn3l %R p[L+ڻ;tvY#mUIIC@At||&eݗl `Y +CW$c腆R*!zUzdzBo *S } ms/j8V6F8@yy Ek 3طqT$~j9=$wi蛈laK{ ;O3QũNDžY"#A/Ph[j ]yAFSS7[^ ,}MN젢"dVuB @Cir:Ï1hg!g6ﬔM(74E0vu0!]=qGI LZaj7,@.pq:NaAݕkM{d&/]Dd#~"`Z mtvfye]gSH 7ld" IOX[j[[*ަ_V0_ $o3bqwR 5{NŨѳ-Gvkҩi۔e+oeMf9KOc1²G>~N8;Y.{ccbuEI<9Cb#Ƶ‡D!1  ;yƑ>lMľC+~5э( ׫?g:kgy1۸}zЊ*Q_MMo7AL۠0>4!Oq\K`r_mً<9 |uCZ+`6ף5٨VA1K 1~4Qߧ'ەaZ!rV'z3ln {#${tRvLOaއ { T -(qqca-/0ǚj%DHIu ")ߌ{h}&理Awf%v^91x3N4/ZC)¡M!IƤ(JMb*I&#gfEޗc8ʔsri(41, ٹ[Մ+40p?Q/gm+Dzá!'5J^ r\ .GӍqQ'){: ٸq$Rh.Ĭ_V fix6LQ c4R9x)Ҙq}A;DZ R[]I9\N,SF"ED%}YH}7*٫@ ?dWGNx^.Q b[W@%y/|>‰%ʶQ݌>S4g Eyg(F]Ĭ20]r5; c󥪛4sʌ&os,Fzב7]OisE2duKQ'eQivٗt+|bgZF_k7 ́QJE >!z[HNۓo/++ݕM1r1_u0 EwCUneeo2D%$:#x IƧנmzS r Y01Kqg|nc! _3H< 6}Ib ]8kkN2=n>*m$} PtՋӆ)7а o 84%|2'Xh [(i`jTƫCGy:2ڹuW{)עl!:\"']<|߄R[~7/L6FHA"9ЇʋJUV䩿Bmu q%&ҚSP~,m"=1"iR<&P JISضg :TrU<\T悶zx۷ZXQ+, u&|qA|x^FH nR]]A9.Ȁ6b/}L'V->eNV.4y6<$%08'l |^}p ͘Q8n\(VfIA22Y pIe O?` 3[r5ԧ<Ҕzb:b/dHm[D+4qq2@­{W(J0aqw[iRe +OOlVƶ稳F]QAxx+X>J8.d?YL.pM@<ͭX9h'' YSY=f Q[B bW!s6UNk{*\[ 6p.j$faE߮@VlTB5F\=Tl)Y|ݭFsRCv1me4YE\S[ʔܖdjA8 ,'YB@Aݨ:MxVH܆cmd&ՀF+U_{ .R鷦zh"UF6z$Tޣ4;B7n7qaֳJ-Zǚ-h hR 0=._ \#B-u)6F?30?-)r`CZ];w דm jyxX:'cÐc:l]0 ~? 'AOuc{:UMͮ0B"pk)P6;ʼD v.z{'hMX@gaF۠3 ӥhvYsw<9GPA@9e 4;e nw_z%Rʂt^Va4t`k7`} fs0PV!aqGՐ5jmT{Fj0Fl~ }((c Piǎ 'qrARŜKds٩XTV`]o4BUToxUv?Gk\8BQAI!,qlu@j;`*&1 >1U("1:m%3l[*wC}/9嚦Kx0[9׍h$Dtb%ڴ|/OS&G tL# i`0_7ֹU~$ayJL!E.%ddʥ}#X`uS:SѸo9,v==i7'~(WpRQ}(C%M< $N^z5ޕ5z@0$YpyM\}fw NV{ |\QXDh鏴EG} Yw:2k[Gģa. zsN0|AY|ҫ $YnccXPʳY@81%yzEk)$# QM{n<ұ8 />QA%:%yͩ*46cT) Y"5u/LzvAtWs*;nPl>_gutU"lr)bQ)`L*,nI"Il _k7Ly{ @AUZmvP@$\g-WvO#?uwsdΨ5q\W'ě:pjD.91/٣8H.6mj2 FH CJGU_fN%ԓnv={\o8K1D_"8-3GYx!DXzج3Ƙmd-ƵHvdx>F z>j-]a1 ًE.[AZ>xfUѠDNx#@ 5+h~;[m9Àrp2,P*c9n+ bCyݳtJ %fOpPi#DsF_,y@X&Q5*2dô{#I !ӮK"9/YW=L^}.4aArXduHA#03 iP౼鞕jbSi7|})\9#zq-Bi2'~ZE}80qX.JB8 4|"5Hڤi_~'? 8wpbptULVLJ4J+֗Ѻ-~TɶN۽yt-h[yr3ToR XEHZzf3fN?Ɨu\"U&D/ڗ2#UJ[ƖGw:̠:ZaS_gZ?/&$>z. Ź O̅8ڸPVO2izpKbPMi'{?%q2&ȕ.u;]z^lWtm G gQ4Ą'x(޾ݓmrEmA  ?ۮӐ6T`Xz:T:k*8.yδK&kk!?1xX[Agzc Rh` {t)X3wvbe2L@A"M?Tu]7]{lʜP&vIɪ vMXHYT\Ұ5#`8z2[|>waZ)d%&謞W8Gy{'Em؂D7YYbׯ;K{JN& NӅMtK&3ynr00,hR 4ޘ!/V 6LK;TeW ꡧRa4 6svevx9V!!Tؾ7x9eOKYwߓ *5)Őqݒ]AƓ)\HP>h]e;s'w!Z/÷(D [lh<~v۩JȜڽգ&¯ ecoo4zeCD*J^]`QDZViCZ sH>bÂcA"b_W[Hn=% ufUHA_Y̅"՟IGXRlź)*d;|_Ėe_.=@`9]+W9TVM~Qf7ġdn)a > z[R em0YB&wm⴦n`k7c7bEI˳<X̒0p@7Np⚯H8=_CiNj` `P /Dܩl~r}I~Ş]_yf*w&,w6|mnkt5ȯY(݉mk\^yr΂\ 7t?71`v6㔠Ѡ̥wHK; }[LxpҺߕQ,H 1yoSNw*s)P1BZ(\ȿl3CcF3*ྛ^߀|ϵD~$;1EX-+Y".;iosbjW,nKe7Dz4799Qo q vChL=hnd7"e>)H#[h7*28h- ^VHTK inhPUјp»ۦM%ڈxjZ"(-~q@ᒏpxē쾀T}xW ݝE'/X{Zvs!GbBinB-f_X;+,n%Cm>~7̚q1McwݯEy^E$d:dv|ߤnߺL [gYJ|wwvh3'ӤVڬ{E@կ ݞΘ]M۫9; XtI |L$<_ٸ8*s)%%mJ "\%o MnLJCEZ-3aBYyeIYf[!++chSسs|\uv%pvKݒU1~~@Rp>2ư]jxvsRZ 8p=Td  [d/ e'VS~hM )AL)NLoӷh+efNB,,}c?&` 9U  xֆ[(;5 Jե59Q ڴٖÛ a'#к k5z'=RCK~ )ZD&#}>8*‡9)ĘY3UVs7ġXU"1͗3wFoA % z_:jYW;vW8sJg]N\yzXO_. Xu>MqlȦ,U|+Ҿߥz|9*왪B@2|,^TZ_$mKO!&I-PaPV7C |xM_HFwsp9oQo V esYv4j:{uT ПBN% Bн0HnA,~H£ϯ~l>ryb$Mv=Q_weQ׻CGjיe_0&@ He<<7m OkZ^[D=CFSvWWWBOkp `sa׽ޯ4 ^]gp=CX5nl Wr+:A(pncMpv19&?QECgKv))|'+UB~Ljqch|BtT56(V~E4p}3ș6PzaVwV2zhxD 'v9-_̺ k_FZ`: l3bk[;i3GMd=XAacrP,&=N^; z_}$0* 2NupK K|V LFбE*]Bu |O}^gM`~b .G؜%׍z[fSGও 0gV]>ŋqI@ ·}EЛGp(u[PӍxo}ԏ:!heҹHqk,iC[ :˿l=0ݘ>4#FdwEnn]mv0DhC5#COl_uH6IG23YdW`>|6ہ B1'Sy+FS58`쐑 eb%B. Qu&0o7[j1Ͽjf.W&AIT.g/ eZ^o/W5W9J TjGPc  5Hd7=1 vOcƢߏBeVZc\1%ʉM|+Se|׉ɴd*'C-ry"4Nn؄RL?]TP|F_0܋=_a^L e,\-YXk;;LjrR(:6x:]d/ſ).g<]庬Gp^["m6n}ֱ@& e o²x G,L#ZW\IAibZpx Tt|S'xgwՕ3 C0vɳ `=1a :nYB󞾷vAkRu/ii4 d;mWRG.y:2I>?Uc VG\+I;/~2k%!KuʏfV)3;0ȫe$)iC;6^i#lm 0:xZzQ|ddM?5BH' '(ok#d6/}PYOѾN^Dl{=Ӂ(S{kKslƳ%bxJ宋S.qXiȒ[꓆ꗏJ_*=` -]rJl`П߇ U.h^PlxpE1+vc*=>IWrB)TSZoْJA8hurOnũTSbuUeݤSYcdm˙Bh(G.*p,x=Df\)MRcռ5ߏ,K%xZ!%"GXr$4l9+G8q9?䮲s#X94dEI>3f@HD8  qm*"~Ij'Dv1pN!sYswbPţIWy]|P7?:[E|i̞g/v%DW;XrYh$ Bl4O.ѹ~j=9a  0_PmWv;-7DQlN{"z^d`dF QHo߻L(Uq v;'6 'Jgwգ37@6 i5 q&" BOdйya\WJ&$R M iDE&vlNiU5El!,OemsUam͌ Kv}U ~HFsSȵ'2RSO;˾aO4LN^!V։B<|ex& NM~ 8/^)b>-m*U MuT@޴Mժzkje:56uSc[/^q77%zW3x*,-uRO+F!3 ,t`%u=;YQCZk6h6 gA P# *(".Y7O-W{8-[i_o5YKC2MKX?ѧ1,e-~ (Ç"=7얝 8Umr*MWݏUcRׯ,Gl)Ž)~P$'e=a82&_3 $hXc5$U_cm JȽ- Ma o1`;#h^OA0So %̇3Pt0;OTǡ# 0㈂4S#~* _h[s3!(\G3_]13rٿH^a .T'+ΑOA>/Z4[p)\v Ik92 khzPZ=)Ow܋ (࣋""MguJKm2{>b"/SQ~qL€>J`EVWV{hX4\??gAdzzAˆ+(P\+촙璫!?n/1ԨG8`aK(Ur_.jف-oW[oV9ck9RϞ3.c< a>2*͖YEA|>(gO*Γ;4W3+9R;$i`P! abvXe[Klc mAЦإ~0CIvTo%l:G胏 ֑OH>jZ.9k̊ W'ELלxx^:@PEŌos0HbRֶ`,_;4c!8r5: ~VVF՘pjt.Uz;tzD`h.spja ϯzl7ҬRe~$.'?(sVw}}fMl:]u 0 6W?}T6DmjeV ?v){3tQ+ >4Ldf-hsgnTAt.V"֥j7пuuCuٛ9ENF;7S 6`wۮMC|#zKX`Lj'6vJ-}tjzf=5փ$^ђ:Wu7汬ye5r> ;vzUFL I} LuM &~VlƸI^aI3U))Sd#r [Af$듵;ȼ1/n}5Ai 2VKb ߊU, &%jm{`gLׅLheFE (I2ziHw+N /|'@]|p[ Ƨ.x((?c YJ8ԕlq G(NKju)u-py! Q6{QtSn/o]p._QV߅1/!dQ\QWGb9J]^DZxefX pwNJ{"j*tȘ#m\:0*N? 6duʊpe7@kL?/k t>[]W}!) f)"V[4y FߘepϩC0,I3jVz&BR59lVG5+[a!ו/q?[y,K.:&mc%_jVd\j28Kˬ؇ )k^܀1|:`.hrɎ43O0}CꀑJNX7K1,G?-7ׯߠthbGCsIL/$@'0°fV7EUw>x^!2l*vC@A3©9=ꢂ~a1Y#Z#5"!c QcRf)ub鵎 8!ƨyhlʺS ϼ?k7I'{{cw& nNwm'>/Nh%;XES}qFfV̜L%dek>E,'+MY&8YAw.jt$X94'B=+CԢ3G(Ñgtsc,q=~T`v҈lyr.FBnC^gg6s9,\zOim蝫H̖W;W>smH@}7wK>Lz*#~Ҭ ~{u~3ae%6+d'rlq_iUHOۙ,5МtZRs蒛ФnhȞ=kFu'k RPtZtY(ȖflB0K|t?yz{![/&O--lxC4ڎw׏z sy#Ǫ*c~sYYsBŨtzfu% j=Vp&(5]m]9-?Pm,&/#qTo5ۃ|w h=phFĀ} |N 7T$$.TWfv{\:ǯ#M!^yY:U_ sT[b{3Lb-TӞU)p`,xiE+w>@Ycdaʫ1qk?Ww#)<+~F~ޞ9 bĶi?Cmfa墷;R>_[W=6 e>> R֜J$㊰m\Zi0o20| []& 1ȊDIKM{/%'[ ީj̰2TISbt遚i#z9(3+=OY\n.˲T9izŝI}O]',jΌ"GI*f[2bЮ %8ؗ(Jiwa x|4p)s~kF@}΂SBDr|2F5#=Xwq~`׭^Հ G>*淌ǧ ŤWqGpYٹa a-YPn1@bJRBU|K5 h|#IwSǂDB"(ӡKWL HdtWp^7~)!iyfWxml 4GL U sI0\M7t5U];UO(D/:Eâ\3`Տ=2K V~wQ8"fTū09pu+n&\_I8:@Q27:TS3’L-.8jcAaCq5-g[ ;2n<uٙ40L+a&O.s^Ĺz_ a:Ǟ[g.IwvpO+RZN=@4^n-Vͯڧ0@@9'l8_ /#`I5qsghBsc.H< trǙ|xNruWM/,)zoek!.돁iH/5ubR)NWwQzk;u+Sj͜ w%y|I3{mW^SW=`!ũ(ʾ`jX`1EP1िVzx Ռb-J V# fE8Ȑ=,FYE,E :R'w>y]^ʞќv#Ԥ bá!Bxýy|PCeCx|2)"K!ZS$qz$ُ1ub2p|%t.aYqTr,.H߀$0RkZ۶2vt£ZG {dD /RI* ((VNtPfRq/xۖ~x^Lg[x<}Wt)sPWMybDF` w/Fv؋T<ƚ;FC)3 6$Uf}trbcGv4O[X:+9Kޑ֑GsPe\0l`\&=y*+u/#6A=@t>"#%'p<h(`ˣ+Z# G-6)\e[Fv=>|@mޓ`&٢)KX .{3 dM=UшտFx`O9YC9?d⪌,+h$r ̳ ~~ƌV/n)/'+qHv OWMrRhGѐ iEqi39} Xl"Y WcNL_)hP$Ң׻8o'6044v~,9)j SI->a)[;t,H?&IlJit5/Y'ZǗ ߡMj>.{c(~y(ZsuGǂQ\z]\- ($f璱}q\`/ XnKy<ڀ֣H , GfOzN<ל5诵f[ Fv!_ }D3H>pgix1hJNz=k`N O|t?QvYyhWzlCodGhX9ԾF`Fc S.I6Si,Zee>ZEh{$bb9F,> |n0u'!dme8Nzkgsڄ+` Cb`vAs,v:5%e-}A8XJdj!bᰃ0^;ݫWx_IEK?z!_sI>1s~6,l[[ԴIC\b]ű܀ZB>oiȣ?P !Kk|8X0vrm1h&>mA7+H^m˶%DHZU3m꒎{o?z5zfz fR"7hj#UgfzA38抐M$ݱRMOwGӴ/Y*Q?K/S$KNHUjy~/#HkhLVYPȴ vz #=) .C{gK뷮` B^ em| :L3’m2LZ4Fo/fa]׳P0Ts Ww7x+ egOfDOj /@3πkyLڮy+83 3ɽ+\~VcvQ5"8Vi^~Ri!|?QᐪFjdZ8^1f>z5eNmrS'h (7_LA~uG}pG۴|:> [>Y ~fޖhf#12[@1~}!gpW>MjTs4`-}C9Uk.Kt?uų.aEȎ`N~;]JL6z*˿̀D#FdD2Dxߌ G\HlДT|SfbqT2 [6J^"s} Yö,ltC{xU<>;b.X2&>nJ˦~9ƙ݅~NjrYޱ =iVd1G d#1qNa3YX,d֖8d;vͨ჎?UTWB-fw7j[۸?ȸ{u+G[rdOp$f(.e FI̵w& je!ѽ0t["BY~iagb"Eފ7Z3u6 {ќd0K?H:aSlnb҇A8L^7 k^p{(rK4{,ܴ-3vyxZǷR$"OUM;&/?6?^mtK5܆UM]ĕ'UoS0g[5P?|RFwv^hѣU6RlxOH•l ÚP}, Uh$t@xىuxWvqV\ hPɚA ,K>bC_jmYm(8QF t&?$ fW@r^٣UR絰Ι0DPN伃` a|5~aJ ~x goߋ*3r$drivE;hqY%H[αN͈\ft$(gՙwf^5I8聋'|C0w9)i-{<߭a"EWY7ȧ=㸼32ϽazwjθX@B؏KF-"^*'#oXp =UK>JÚ0Dg6򒷗_DdϘ3hB^`)X(A*pa'@s0#wC_1L )vɦ.ed6W:+|Utb\"oEFZϖB8[o,>;s:q¢J)Wp9SW8~vs*wrr؟N.z3ţSe}U+ "$S AT#p4jbGQM^w6H% #igwŬ09'=%xI=[y9@{{at^%(APN7ך%a:mH}U^0DJb-qxMfSب€!I0Ύ!BP0k.UVpVtQ3Frs4*= &nfEUhMmL9 ŕkJ{iU#oZU]iQ2Ǽ jZ5Bx.]ٿF9h$ qAQZ - &l{3+zAsrݚk.{hǶ[feB$Gj-Y{!$X4 6 H!0Zm`ӊ֪I:}Mo%%+Z_ߖ ͷ &GO#-ah#9s6Hu v:d.iV49\xQmƢI EV`/lnS5'ͦ=6Vh@-~<9dP8),KѮ9^4bA7>۞VP^ fX/Լy6l?fTϿ+޿xW#hć|?@ '-Ө1uc]:A8b{KL7!?skloTlL'uY5_aw5'|)kF9$'IZt6(VE р(DocBF?nLC_rJp<#_rq֥Dt5n6e>Z0{hI$$Cc䘆t7[[l`pV]Y?3хO̥qecM ޚ(z:}YtMc24MPB6֕Z?pSca>%EWWBY̳T40 y Q]Z=% 5FᗸajE±|||Kd]r8,_?-IJ]'q6pGґdp;Qh6Tݒ34oT{͎$ =ROʏ0\X#[. m7Wŧgyw<c\!=d#ۆu;CUV6@ *$f/SGb~/O2oT>%PَopE{?wOmD3OeR&dpJ:P=L!a!TR_m1jcPN}t]%#6 G8*44mug ڂeU̠{o=41Aix2*/b2 m1+H;U}3y} bm?FCP^4$[P"\ d Ɓ~+!mci3Q3[ p#xq\89RδL9] km?fk Ɗ$@V_ߋ&eɚ2((JC_<" 2/z"G_kI--0TR'EXzK37^GUie>OӾ?l>el#̀ H:pZ"Wb)S_M\Ad~> 5?{>V;֬. |9dGLetoֳkf/~0:Op\.e 7D`Su 8$3"><u ЪbF >`\pO8,|%Ȏp&f\rqKc9j/0FNIy__#, ]b[m@HtΛA7vc'?NԵm~I99.Rw&Sr~+ffZuCvώ^|,y 4EN EBU9:(>VF];؈AQ+<.k/w!&s.ẓm'桑g,zAqC e0x@iSqZpG4V KBY< 82t.Mq6V]=Т h?p; ؇|#nq40a[ۜR վ]|)DߗKfy9(w AUfE"<8pI~cj ĴQJH:.ԫ#ir<e8Fq uOϽ#juuΓ&@1DnHMJ-9!.5ї.#I/@q#n*ҪXpG]\Mk~Jf$2qk82^^<2c5b bl_Kۦi" 4rVKU)$Ù֔5|j6s3} XuXNjgr%2gww,`E53~>[E$E.^|oՖT'6o*nLK`&s5ެLDGICjGCAIP"5IgB[/hR [.- }L_a+?!tH2͑Ksk\" SK ʶ\3ҋ']xKVؙa; 0Q?Qknt.jA1%HN6̦2vེ?3uG腡t W)yL#XkÐKl++st1^j47A pZz~jSOĺ!R}zwD+xӫaiGʂv&j\}V65-_^# e%r`tOW\{xUiaOo Ǔ5lP/ՈlcP,h=瓈YbPS\D!Ig\ˊOWVv69/٬-j{80e;Xip SS7mHrOO2uEč6Wb@6~,9Q,t2FSJKaoXCja_Md݄ʠ$Z]3YY:Zk^8!_tOڴz+]v%-&vOȦ4U" ˲xu"o{;;k)nE%=#U|Wቛ> ;lmg̙;M}3g c %yJ6 ReϹy_L<%v5tʒ5/8$͋y1M>Ѧ&'.Js 9Dr7),N'WU.7 s49s& hϞYc;(! 6xM/Imt`DأDP-iL I-G ;h\ca0U)W/F}U\p(rHr8k@y붎{fC#bh^f)IJ6ap.@q>3aA$8t;[_<"o䅊 +|Hn16#X?>O-O.PH:_NstSv1=5E{δr[/c26q+Ll461~_ݟ{Y|~qx=@c}ڠ/&-v 3=M-UȑtHZѥkV2ۭ+B_={|,@%fR|h ßߢ> zѱрQHYeֈHE6¤=`.; B@7 +hK19FJ ;lV `%\u?9tZd3.>saܻFm"(%نESjփ ixG'4EJ;$~xh0\Yg8\J 4U& :]9?fny`Tdtr99Iy_ /׀->ͼa?ێs"G3;9)l<?~/<cB~pqv<~:/X(֊0^<&hKBjUD. C%pɹ\] `v ל&r؀~jLV ϳlE&UY`;l%M!:uY4okm̯X`/UxftEy;n6H$&%ٯ"" k0SU5/ܜRAqwB#O1 +א8,evat:;K /^{;Ȣm$7<$.G,v&w,y7Of:,;2y|cd ?<>zp㬱j$b.:`n"1.7<@aZjz\KJmͩfc\R^9f6LcsXAAW~gFѺrU21|JFe!vF:ZMiPh4*$IP٧"-WViHm42 pn,QFǡ2hZ(؟MSz\#7%3mgB"&{_"h)`D /IYvf>٠8ĬjL/6P?=t,^u"^o`YXIYHzA@f ea2`т` V;ZR$~cfB^.X$H}.J1P蝙&AZ$j_Oр@e8dl);X} {dHAٓ &XyFIq9GOkeptT|hҁ>w賂hTyt!m"8]! OX ] S~tDh ꇶ1|ř/9/ÃN3M ^ \ Etu7w$#* e`~2> !,<;i i &K:y]Jٹ/SgB_.۵˺ڞ+e*m6![b4^z\ ʞ$>u ɲKu*.åM.MzsҐ.rduN0! +UE$83lp5 ނ5Jn4AA)Dc3l e,5\$5=U٤>o1[,gCEWPHc`1B>ah(FLHS7Y s - 2ԘU|9R>qe)DyDuWyHZu};Gz>XR{{ed~;6J6 Jj3l&Ga)JpWB:PI /͙0WJml2{ vX0Ox7xmM,6'[Nt1p}Љ0ƭcl킫3IMC >8y ЮV?p+ppC)Z;Wxa=8>D "0'2=n} zφS)?cpybPW P81s-F7!yKN= @%ǎA[EW`lR#=Ω_Oy.JgdJεaQHBB#%4e\&q9`P\m*Hx\旦k[r9ċ ᴆR-ׅ03! aNmQ2eV GfЕ70vlj ϔIgdLL*jփ^ó,f1YhTHO!ؖD!ȣH/r WQx+뭬/cfŭ=+D*YrR 9c)}:?6H6qxά j? *oS̎:D?Uc9Mdz-ΪoQhα$#}-fy"4 a',QOH@n/ͧ R{ eoYr98Z."hxFvbr 7k|XA;PAޅHU< 'l$̭'iH>@$գCZ9hA j#VFbD>3:D$:_GnNdȗ'Ei饟EˁC0x^%[SP'54IE$ Sd.6w})OoC~lֹO98aSZϖA+Cg',}' )=îA =IMl JWHd=nktc\(:wP z{LZ~l-÷vCq)vWf^ Lu< ߞFq:m^؂?DJ!dmơ(sAJYDͭv:D5c|Z"m sNtŗ?Yvy\A^?{.&.!yjV?-D/3cm}p's2՜]㋒CJ} IIŒHq&RT=h @  grVq<s)7,cN6Gc]HA魄(d|AU|\kNkͿ1pVjjҼS8b=lO%Sv[FBM|/-A 5\KT>[5V]RϏ` Xꏥ!PԝwKѺ͘yvW}ہ ==Xɫs22X";6<7Ԩo[h>VOL a_S!] $Clwvh7sM}|XQs7Xm%襇Djҋ %gOD|&wߚ 4}m "?s-X=h5?ٙ l\*B9oR*5i`Cl̾zY gSf!J=EgEr{Ѡ P]IPK""cN̳cDvZշ˱sIb]UM,~M8z(|)Vn{͉ ov6 c^Hȝ,Ċ2I{ŏӬ,/1Jw=b!n1g ]iʍQ3[H:ڣ&֙\++u/J)3n}q Y*ʙ !^* W ܄bYddU p.e๗l*?mbirz xn0䅅EȦTcGQH%  bxU]։ .Fs-!^N&Χ ?kwr+'kË[ . m 2|gjK>W)= p 喛͠rd̃Pl~~wk]s ƿ"A~c 7 g V.| jIޟVƾ>t9:!}DXfAtжp!$v[!h8)ߍ?-Ob&Pno];ǻbqxoL e$eY(xu_z5B3rA^v,xSeU[`@J,6h [*qƨeCP2~ O7%j,ʑ :ʘF7{rA0+_XGmvĀ݆TxIOCLǵ$Ba~Yo'툴_i :m)tN~wGfQnlö 0\yr!_zYQ/jNPwUn0j.WP"_>S/e,dxh,dw`"5;?^o"[/o ٔliFDŽ\ 84 L.|WT1j/X?[Haz{CR(ϏBf=e&7ݩqQY>Lq'. _K50LkY1& 3ؚWځ\OW3zP׃Zɜ%;/BsoP.GsErڦ ZSL&<|T5*ڕVfn02px%eCt;*ݙ%$j[F>(Mj(uks"+sU)3;C3"*ʅ@)*%T5TFV(1dSFwJBl g ˲Dy`GOо|.` ֡*>i~h}3ꜽ7v1˳ @sW תE.~M3@hJ:M3Q÷ cIt$H,(70LԢi+fwSR^7@d݊(2's\jL}ص~bOUI\e‰cT.&v1Q Iqv7>Iat5,&TG.W>f{J6x4Viڼ"Ɵ*] |[ YN_XzAc{,l k: Fi`&)RH$瓧%e2h5rz"&iA=LrnEBxK!Mq%*Ø>}MGTz[֗:5&~]rqkr> #yk3l}g)ER(1z{S9!.>˓#JY6(lpvmHY05Ic+nNƕ5K"Rx(=FT#iK/ `TT;7:MިN1Y "Gѡ}Jb.ftܱM-˅ySCk%/2QkiHqq hF:or-XRG1+3s}rU4LBƅ$ UqR,r }omK2W/a\XF;VC MtL֤0Qkt v&pX 1ld{J:n|PQtU&]<_ N`>CS 45)HX㕽 /R&tx[hGqe0&QnҾA{)fIޜg|3 3;ˊ B)-}\ L|Й5vfޟJWi_&Ur }H$e?q6`?KwM#V| \U[6cELyJuj隂M;η(|lf) )E6YPD0,RD9MOQVIד$>:(@M ^UrsLQZa!uU0{ A4F5ue Kyz3a4vQXtG ll})\OeQڝB*䒈+=pg Zx.ŋ5mщd}a\x <@`1; œ? ,?5ކhELi!#2lyp[)~ʯȚ2 w`Ď& V>=* סO$2]6eSɣМ瘸z]U XoglT(:)_`qDƖw9wyqj!(PWS~bl0p 6'8'L?]-$&N[Gtnհ}[1SoeUp7OZ8 By+!d8PfNvOk o@I߶v_swg>ϡ/oz&}὞1VDTG >6z:9 /`AV͟GRT)"bv&XeiC,2:Qk>eB+7o9K#4LP} 2'f}3ֽ^s mO~æ M"}gL!y+ $N,2M@IBVOԪPJq_M~ѴXwxݕQ2H EiJ/1_T^x-\i)fm‚ч6 ^+-al)5Q}=z15LJ|v̀K^=L=hîďc%MH(\r $b+4[ V`y<%Տjqk(s M W.79YbTQgK,=!r)gMVLzujf 7uZ#0.ZyR&_ P2"" 8P!q&%mUQtkg6yF]s|-MYd`.n3KWa,oV&X55`tgpE=#@b(3*SF {q:zy;,CK68)Pmq2ejvaH;1BW'ZM%6#Ҷ`cAq8&l{{cuB3B20؄%-:}yZyЍL3 P#eGYd,@d< :E,]!ƣ=[A$it' {b&R&'l(Ib NʋmL(Zʣ)x kōc& Kʅ!5cye;u}WW h|)t#*guv'\)F04?k:wv˫y/hREl\)5a6Zsz9絓+hc]x_cgxN#Cל+)@>L˸VRŖ+H82Y52x->?jk?XFxa]r(43JU"h/y'A EW PТ?]*jnf.ջ(-XNKJvKM!uWmPYkރ¶q,yHߵ}v\vlV`8lݶ l+iIɆ͈}M3 ?P)cU4cGgzq;CviOAqq8މZIt<ͭAf|B_mWZEz3͍H^ A{ K!`-.w4]~朒d]Q?ݬ3„t?L.8hD}ZbÿсB> ;r9Kz4 Ynwh%j'ڧhf3S4 Vd_' [|U. ϊQgM^%A1\6n'.aYlm绪@UIճݦʍHs~qH "V!y+k-5, e15ZFcd3!j(=?kӱbn`R~{6d"s BzvJ! lJ@ShF^Oj5Xv3W"UQFKμ@M~\4/f1!%>3C;<'B}2hIܻ'B44oX;̚!w7H]Q'L52m^ Ŏ㳝!*wf4cqH6Ee0LOx"niXtk6N:?G0+RmA&j)@XCUy7xJ!"+ß9G!bq2h$c^n.(dL-BJÅj]Q{t]";cIO!(χŰÉJq)::+A1=ڂ1$!)@x< Z9I֕. +%Xa t yuD~๲{)ŇlQػGJEV@&48.ZG BDtۄ$pU;8[`k+%<ʓm%Æ.]4 Yň)\!d#+1s_K-ӎ?ld %&(8vySaMCR[LO%["LORmT"O:Da􊈲aŕQٮeքˑ685@͓15m̂yUUaZ`PO{чH^L 5,P})MY/_/acB48ʶ4B16<)9/E[jkѦExVWF%(6}RSYdq]dPAcRݦ^TDKPDS-ϰ >1Xj5pk@g,Z{'<_ҙLtlK)ʝ{[<0q3j'){o,MJåM^p`&D%j S[+_n_'@x,e6kԷwqr ,m=2qlEO^Hvl]ۙ\^{6=u;āٚ-bJk*dc eķaDrd>4HùR9. |v6AlUOw%"[\@s:,{fAɘmkW@uH~fZo"Mͣ[Vtb]t,zDrz%Ez{:[;|qp Jk^?vmG~vV7ʴ֛QsRdD rT نB{4XOKмNbWT%x۰I%3Vgl ]Jf+υq=ɒE3@~жB61CRIl^5*Գg׹l.k0`'2cw%G5,*Qz/}TEO?/Nߚ`wuEu̚pjX{hԣ&FzbxVtwsG4R9ڡթ)mO?k,MX[N$Vԩ&ROѤn# 2.iǖѣfJU2itjDÆů |dPK Z? \;UxX\Xdxԕ)?lWiGaIS!2Nޅ7v CE1 0&K!A鑋+_&ϬYjs l<ڼTsTNˌw%31ꃐWܸ"JɺE S#G}M$̖!MP1RH`U~>,v(He$:h KXBZyl%v({匯CQ²S2QZ%WQ?0̓ [=|lWUjQ/kGU+U`(8@7`_<]PEa!/^ԑks$U*@|;4N*9O#KpRmYxUA~jX~!t;Ĉ3oI"wzSmKV`N!J"g+dq9ӛkqsUePra$ desj hl!6ɚg^8>2=m# , +^D)H=R^~tY.jd CedVU>=ݟ DF{qdNU~I׋;"V@:ͤ}3p0Y|i~$wkFMT֮SyVc̹.d B7 òz5{$|Owf*-ӐmCNK*69]y1߳-28IAVWv"@I#VݗS1@/]7~c5%XhT&#d0b8{67葂ҌK3')|Ml Lx&3K-8a]}ZAMܛ[ۥ'(N@yr< R`Cꖺm_K(y*J lݎhԤWnʷ#l f/T֥lԱZbq6G=#1L7+M2L=z`a;o # ]\` euNZ }3~P[nAx<9焅 Rx?owk1(3iJNS32D ޕ1[ĒP5Q:%"D $?қ**plI*A H5oa꽹f݆Y.gKXD4Ż8>4Sdfff G, /')Xeoi!b*ѝ_ <̪4b5ߙD0G]i;RZ[!˹ P7otד?m3J6YcE7\sA3o6L'羖רFA&r0骻Tm[>ӳ Uoy.MW8+n"8]4<2T3NٍU[3Q$Ѐgw:ҤS6Д(v";hc=6u2hB4Mi;=ʰ&d'ofRR6{R) TM)f񙎬$ )[4_5CnNG44`RA)Fdu5=i>ڌVo^P7@GAٛX/:CCI+1 Pp40ndwGPmct\%K$?LHϟouK,{߿D4&5B>ք;l Q+NM&a&ȑUtR'І.E-J"zJWz0|t#О |9؝Z]dѨ!eO1Lq/#A0vl-ͤtz*θa9 ,&!8EIC(z*`~;%W> H|Q#79 u%7%jǛRGRxCHjΔwG'>#p ^:cq ϙ7ܠrnNEѮȹ0L# Muı'ଅ=yҍ+])wU X8lүG>.ՂjF>”|$ E~:Z rF>e̷k^#) ǠD&I/K1|S_~ 6U GgL`@B;cCʹVˏ +)BF]<%sY5*k< j u>࡬/^?s.qia`]ߙ [gB+VާSuR#@/}'eƧ!aL h{!1=k mYE'? Tan͍]g %rM:rxm|H"?qO\`6>:90f2 G:>4IPƠV?cTI06U[9s7 tmqm|m7d}XUsgxR"iAֆtS2O + koIƿ>&?IL.g~%EjiDWA˿˲Xx -(B`vm쇻KLV;! ) bOu۔4&JtS ^w\v/4']R'5ـ=b;)ᙞ7[]f5*4^Qxcl&@ =>Ψh}|œUێȜxÔ:eVſy|^@?M dZ\'U̴lJ{:T{3˒Lί_8+ͬL 0ȝEFRyZb kڨa`2q{d*xێwZƠ{PV,тEX !zD35Gu7L ͼF&!5,H. gB#>N7±*ꬿ̺] "9S-/K"Օ3̤f]WB lIXr5%lѣYd1.1LV#?F]b:LaoX7EEW۹rG7B;b>xٮA|n46= Qݬt|:MGN\>_d[epq洇iOoeB\-ܑ+gʘjJt b9f B6| <>׵(؞dLX'b˝OFVJ56(Ғ'> cA~stf5(S(rʯtó+a܋tRBA]B1Pa On^[k[$Qf |bˣʼFДF$pbհŬ [޲Qa޿9E6cd7}Q[-Fݫ(oNβz}BkGYWU+Xկ&$ C6;؂ȭ$-šwg$pX=N+@iIDj%lS"E oMfB_ow1'\V{yr8 ~ Lt}|-*0=9L7w~^$ {Ս1c7`t4=2qAMޠ>݊y~ [B^3R :G8y :Dj(•<Ae>8ɭ7Yt ba)15+LrH\"<;h)o*#Z_[E92t?JWa!+)CQCԉ|I&>($ d=V?fv",MAF\_3EJloJ"ۂ$`o y&;oΫZNûtR6S_w%/1G13ǘW B* ^ѳߏL'%~8Qr9-=Cu1^Fq_zNnM煴- (|cxn<0I}`Q]5mi1s^HI.y\!fY>T=vs3rkzĚPHWNUQQVX qi.L . VZSNjGlg?SO\KT猹!k/[n&2>mZfd*9+G.D. ]y۔;fH݌lOB%Rc`FVq)j<"C^J;"ئRo oIUB)EGQy)6-E#dBv3w}ǿ?tT9p Յjlj}nT αZbf*ȧHDNdW2t:'{R9idzWt`H ^0e_^#fovܯW~ .3y0ljA$@uSaLVI2"BJzIHh_ FםrƜv 5W~pc#ߓtKY-@g[ýpo$X5̈.S0TgMcC21q`SSuEJ2O@@g(H zfTϮ/reh\oDL) #A{ލc{a:Vev5:hH|rgѲӊo垧 Nq VdUAsZ5@h3 ' /V]ANb 'd|f {Ad @iz Oc2K ͳ0:KO|U<4׷PNA!#B2Mۘ\Zsd!@ e!KRn&׫uqC iv\)O Wl&P$]+OV;fDo5HaklӋڀ id>|T. YpCpX0!51{>y"9,z"2n!4gxNh4S0SÚ^/Uq3!j^EmjOD@%B!hR;:?q-X Gd8oeYi8K!սO]H$kl#3 7.WnAk% 3}M1Q {e͘V&:6m4dA[h"YX3"|r@' U5el[n 9 (2T& 4&I苍;J.)޽s|;,|K52fBϭ_ȟGf~ojhGs? Z\bue*MX+ڧs,rsJeLs?gOplڧy@]c% " E<` ZP ݑ:Rh@vtB1B{&?&9G`5([Cuy_dݷ6i8S d8$aPϩB&J2HhmiEMvX~L@m9 ^0mӍ)ag/n\}oRPuHcrէ;)3(5fݥ=,«! ؖsk]5mA4{BTkH> ҉)Ԛ^oFe\VK: U2`_b.,ן>b 2/^8uyk\m7qh٣z _Eso@+µ- kw@Bf(cTAh2߷#P9pk!K2[܍ +TºSgO_dT.Z _ƺb=)Svx([3 bW~/6Oڨ$1kmy f~ D#Tb6,%g.k9tbqC&Vӟ=8/@#+Sn"zû_[iXm(Fҟ0n_ i7#`\; TM\eORo!)V*5`x:B)blo^Q w4VOHtRWd eFFB˨fIl] 0`TxDnl`IF/ HCr,w;+bVTU# S*ݹkJW^evݛK7d&펢`f[o(Uƒ!O|<]Q4X~(A pPd{b,:.%hd{Tw6#' K'":3ztv0+nǵ2&J/T~[4^KybNqSo|r+[UA ҋ ;`$bZ0#J1r俓^D]C_3CWJ^&mzWǵhy<>!hD*TiMv/wK|#VE&*\%HÉ!dY]5wJ<) :k_횉Vpk#k"X3ـ J%'W8M}H\90 YJTB^w6gEc(ݙ˵ވcaQ} #2:-\Lh ɷ?\l{:FFɹ+Mu# ^l.P96Ob۱fdw1&a `>*B(i"Ƶ*wqUdE} H-q)ۊ*C5ˢ jXV$FnsT(^.EY}&E6C;6 *mOqBL)P~ 5bdjx_pLQ7Wj`1FoUDʏ$Alȭ# H/؄+넯Y"I[=nu~!b=Q_(#-[ 6jSANV4o*G:1G5Z DZ]SŤNO\>dBT޾aFouo)4CH] ?b@Z.lgwK'lrl4\IY\mNDtAF鍨zǍh@0v(|UXnKZ $NKN9n #n eSխ:tBV% B{ey,T \0+=ĕ̼+pn;F8&[C3Lw51 5Eڵ(}V)ObAuyLh VR ջ)\!6BF5A~EqAgh}hؗ!}uŧ(,Y^WWKL|xKȾOi3|E d'N53C-@:'ti ,b砳M1;'a@;4'}a/rwR4niIU ;V{f)ɑґjW#'9P8-\6  ʲܤp١[v7\rA|*N۞kGFO/LلN(\nەb$^=xKRq2QI!+ILmX)g^=ݧ 6o!iP/ǰoeXiPF_+uHRr~h{uPCE=b$]%to2Su Zc0Q۶ΐ=no܋>vkk5 EȒS@-^e̳bd %kiwrY 7{$j'(jk=L:MYLjvk3DCEHOO>)#&a[ rM[]bLXڬfS_m<9le|'0>oޘ4+k} ė\Pl|vsRd1̰x~(v>vHzb82{Sڄ/wn2P/A_L WjStXYI qQi2NROLúmoZpYs=c&Y3s"Yңq\x\Uj?JW]E)fm ¥ip.I;S1f*F/þn7iWZn3w_5( #HWd)rA3׮As:GfwaA]~Em/^¡9x/϶zrI# syp':7 㶞⏭ܒ lǼR45v2 ]xCSq>Fv}Xt6@݉ͅ oܫn) LFc;9}4z¼3Ҿ]x$wlb<-{^gL x2x-`ryIڷ\6||BIC)Bo~qLm`f{v?_J5=j&y ]ʡA4Q"X~LBZ5'[f4vl(Tg,qnCvIF/|?V_(݊1 )>iv$1#. $x Z77ۛ˭ͥnJ5ӱϝTX-v' \q,y79T}m@Shzъ/ERTiN{2RW^i3 H$̖C, 9S_ż [ JY?K?ą>ݫvl\lx̋n nur*)Ѫ Fj 'Ŷ!stNjl2I>K8V{D_ ռW~ݐ6^{agtz{YfխU/!1h#JO}( &Ņs7IbPt!#mFwܶ<ʹR_]tGYs~ǴSpN޽6tς!q @#k=\L6w֤$t2+6~6]YEj=@D(3b&D&C }Ihnm*Q@O[_35ܜP1؆l=G+ڂh-p"`9iED3Mjm&T@QHQ W3HԳ<Ϋ7E“'ۤ|3O; n/epNq^Td<:T hZp2z0㠿F:'bpo) aCvheH0+NTlۓl"U괘:mDRE+WSe3GTKL8c6YWצP`uHPn).+KMK-.4dk~kQ0cbbl=yvURI ՗{iS>vTҵ@wU+(th(0形r"CE|+ӤYg 9*/>0f 5y|*K94(zLQ ^MsAZ^9CN1;?CZ| ̌y1Ym7]XBhޤ7Խ2n/n7꒭De/9\#" <*e`g6X*Z&ZԢ8M׭!Dʐe YY$P0MOvr#$lOoR{ _uH" 6Mާ7'Dحʡń:&3N@.XSPϋ91Iy0A^21guI*[_*ߕ92,P# ւ{L# OƬ՝ko<ܔ7 W$[$(&}TƤFDW5~T@5mߍh179za̰@l[#3bE<( /:(EWeՇR4UdB#&Y̮YuRdDPcz)dʔG א,C ium>[4l}ҵyQ쌓P@[@Z9=]*&vU0H7vi53)/Yʃ^BbaKHͲ* 2mx &#D;sQCC_?6ƙͬp7^%tV?DCz\R;Lfs] ]{nՁ U>g ~TM! ~m L ~lc|t*Ka#TBzi1ds]iM\Β ~yL׭Ǣ'JSLrA\T=/5~bx/\CMN :\k !RpJ7QjKz{봷Zܶ)8Vɧ3nQ=uMж7v@L'C:,L*vqbk62л̗֡V~Z~,f<4Y u&ҝ_Q({" [}sɕb*1ǖtB< ΀؏G@!.uUam^V$IUSTm-IeiU8:Z- HhlKIDŵ\a]ZZ|Am+_LҢ/sqyxJ2H8ڸdVf˭ؤJ#`T݇i`ҬnZU>^Q@ܢoRYmLxQ+'5uELo)G 쨎e[X $= (Z 7@Ch _DVQ =w!\ _:yU`qEZDw+.(z 7}KC>E{T`C`-\Y%ZZT2[ cW\\6fF-oXe4T>,d_nvf aa:N~N$e8gfFOnvxpɌ $_h 8Emp%\}t2 9qWhWǴ·{P1t SM^3 aY+lsUӯ ^%,XhN][ aLزHvCWyF=<)$%fLLFk+XeKE(S?X<5&(=4 |4eq;sSZFJ+Vzٟ:7}vЊ0odUJph@f[vi-6 ׶diyCK$fjp^KXXCK`uNԋ\Z"l?*po9Tz,<A0,n(fsNu+J%)1d?nP-\a(UqUPz_7훳$1;WՑEeI|`F Hl3W;X)[N؀/XSY)64lPzP?zkhsR7Dzg_ kv9 2t Y‡ 'ފe~8p<Y"ٙU-yI;0Zk>WӔ5|}^NW}x16MMTϓ,sqjv#gSbS\jM/*URhdqM6mЫ oe~wfߖ1B0|Igʞ]CȓŞb-.֫Hc(YJgLրTOջd޽CKcdF'c93ԁ2ϚZ|1)Qo&0(IjYK}Q)txt8'ùꙧ+[#l:J.;i&lՏS8?a&~6V7A?1-J)g#vUÎ-ys($OY)a1M8fH]ji7Q'ey;&yKp=k@?q2^Z ?εX36T %6[-cu}FEߙ [Z:Jς*\оDMy9iPg8/9K黃)lt͇;={!ͮ5c +DGl,w2ַK}z }S5ς<ǠIa!vYض6$RmՋVig2$`vltO%SH!1#9(Vc/02iGv_ED[SEI ih k\ _lo<ɸ^SN޶"먮+cm8ySC5c0toOǛ.O_y%Bn&M-}+Yeg9J ?Uk,/%:`puPp p9ɰ) ]Qfe# F,yXS#ױܷ5 * tRnr-GHw6;zP ޼?jyP[lS #JCk_QDY z%!/D7{ZN~r `0 vMG lOgL_x!Iay aRs@:)Gu+ *j%f]`38L3GE3gўTs8*D!02b1M#Z2)B,"ϬAO[I'C1;+B[Njx|Z/[R#5o}E!cyOu0G O,|T1{ܘPz^%GJ+IUV+f>*٧BȈ9f3u WV; ̇Y\9*cj}:׾r 3B0#,J| h0ŽДpRءQ>EUի*B7g44I+~ wA(=a+]@v"jP;nha:eN)"o<\ d@""M δ{D;\?Z/!?Zg6iL)iL=<)CCXJ<$L-෕V1nq:yBrƠ)mNFҲokruw^M,uv(+.O$NM5ΏG>;' ǁrرZv$<(y BBrW9QճZ:$6Td+K8-oaf" m !>>쿁Uuԑ[qyr wjUuw62þ`=; -'![72(ܼ[^[U>9K 3>io. XodwxKjEQp]c qB% 4ݛ'ߛ0+eXooOgcRK=h<= hE5ː"qIw.BEJ@7?\|mVA`n16 B3/iplՂlP&o.q|Xډh`)J剸JC.;)-Ԏf-$vrǍ1Ʃ2pk* R҂Sd0ԙ&>4y i7 1T6e73hG$;q<UTrb,@.GmT8א"*g W o#Bq>Oym_d}@i7(" BoH=ic430|t)Ys‰CadbߙadvzVoQ|^] h!N$]8ytӮgL%Mpܠx~Qo?X( 0KYE(ӪdIjh(]c3yZ8ߛ1ק(#njw{O6*T[$@I}OP Cv]5K tZL2RȋSgߘߪRF=ڽ4'c:+Xm=:G,;ͪ`,D?A!Kk6nnj`p[x `_gV8"=i/Tg9 /,hmC.Nyv./> aU50auqq Db=&MRB$ps%l"cllٲþH!NˣB/xgMSV`js!#7@GoYշTUp5z!yup*^w+z[Б1 ??v~ &Ы5z$5=,]5b? N˺%{ ˬO;=~6 D+,R-t! S WƱln}L3>wÙ"L1_j=Q|$ٴrfDW2k9z˳ۗ+W].(bJL2x-%9ޯKl'͎I<&Xy:n7p| ySt,9TEo-?+ i`L%Z TAj 'q]nTŽf nVे*b`y@g?b)[p{HF'd)005{"m9 k'-N #qXK&Ў8GajYX#KaYL6vfm'}kXXkT[j0wZ-@[yw͔s)7Yk"sV1Pc<%=j ҬIx`r@;~( $/WjFdL+{E?1m %d{00hV4ন_Vira汲qOAtc*oϧ]OϢy #(ecLIPj<̾zD&*0La\j3^f`-C_a`&_D*~yzdBta[6r=rm,lKL/BDҁ-( qBj* \n.[VN11:v bvKk+ rM"D9C-<;:3EUPҤUimaю4O+.?#YU.u+| zvgE)yXZL><0Cxɔ#53+nihBN 52Qauu&!fک&q\PTŵRW"65f$}j甇]1By#c4vr(:Wd;dTj%S-m3_$_ > C`6\koPb-{G G~,Ԗ~e)k5w*sMrTTޚ즕&&-f#ě!>Ӓ ?14GFV,9Sy+j)/UBMh= Kqϻk R ,&%I/!"Hl5pmq'x5x{3C)Ow8Bk[ e/# YxbLWhABIama# hSKF?6[ɿ7ms4TF?ץxiK 'JJEJit:cTr5 K9]n#Q^Z"3}ުFQg2AGj::O;n>gPM֔F}eHd޺2<_f_N~eӣkIRJh`QYg ;]hj{".Yعnq쵶dgf .PttTSx]'V9gMk 5g/$3+%|wAy 5: 0e>Jh+ c=s"e[H M&u6/SZ+x,D g7"t )#1}f&$CېkM䗊PfvdžQ% 7ѡk# rF0 5LM$KooAd v\^p*癢S7wvY,K\OX/(1}fp.8rku5;kY0 Kd^\1onD@Nh~E9[4*JFwHl-| f!ɦ~YaK$hXr.&q s7fcBu\Ön <9 glng'LAG'ɮ̕.{3Lt kn| J`S)뎺HݬdyO;kil,d)s&PWPʗ##o^j}Z?Z\OK2ݲ#Q*r$ㆮ8Bn!6&}İvCkRx~g]jשJ1"ulь =%an4g %v^$ ݼ4 )U_9H$'*_vVkU:x |y3!){:Kƈ>H'$ܠqRWaFtBw=Pip7+E@RZFWI'CKOgs+]O;EC;*Z.N~*IQe3-zFU 0 (xqI`u"<9IO4Q1OH'"Ē q͞^HxCkŒUp[Ujʤe&d=#P8GE/YKvlxxa׈z@8@>F~jA:d($>~׺ n537w7l9b>Aj^<S8`҈P] iD"c3K# a1 l 2UDv EgopW02D+,ҏ-^[ 9Q%l +W EY TbXXdEZ_o6탾H@R[^xvl\z p35W8Ъ/.d2u\i =oA4Qd^"YΆqjoj czՋr3B=e^}ݾg7֌aV8J^S7p+:D?bXH־򾴑y(,pX4SaLWQf $V mzD,&&o&Jᆭr+^<.zEmA+&7 Py$075E{Ӥ_ ǴA,[04}LԈBCG" uykJk"fЉ YkGX@vϹv`CTk-S?`Ъ rk24T+O[?gP,.Z J LE[f8'G:dbA_>pO}W0K( fxqIݾF  M ,5\שb@麷~B)ޏ^F2 T<;uVKͯNqS/Vj@Ān*Dщ+)j Mf2ʷdmdN |1ֽe6 F?0VctWGC`b=(P*ch8>,',²iaFy߄B;I2t]vHʝ<6t9K^2/۪*_wXORV=a>PI¥'XU{_xHQ>?X+{#(Z"Z=Hp7A&2[D ?MˮPgXGZXͰ|]\d^)Ey7 e|?`# ܹb_L}-ʦ9)֧HPܠlFbsAa|n39~+*4sWB<1;jqcm#>jwp̿)7.u݁9tFB.g.iw:ah9`Zim Z/}"Xa5QF`z`R/lcC-hx\tZ/MAG<͞{Qe^>~6Q;]wGEaƓaQsc6yAt(cZr*!y'4o֦\IyH8{X#{|~yf[> _b/V-4GdžÚ~`NٝG-|JGj )\}FģVP5 1^+D =fkbȁ#kFX^y2tSq:Yxu.vPO֨~Hp_d!DDw׏]BϚf+2CǰUvz&ؼedse+G'1(d55EyX - :1(%5(iջlM+сn!ʴߦx\%:8/ fش^jM_e!ev%JVM)5Y1qxUÄ%{}=J*!򌏍Ujw'g0=Zj+?E!k̊p̳x)UeCύilޤDvљ㵷SZIŠ9P\G[+{bVwY&*D׆KuRBg~T/=J5 8̫xGʙs7B|耾~hTngO u1Dhˬ,tCqOtB.I N3 LhmGhŤ!Ǚl(XHoΩeo¼撘m$&9g, 3 CGD8K(g(2y6vjg_d60] =lD;A3T<@#_Wڊą 'U}H3)"߳N"XubXGRd[uy|4k4vp&6jSxV[5 T<"jL2rv"+%+epʦa)|մB#sǥۛR$q-X{_K/&"f?Xޠ/=\a/?&TŏHکԁdu"=BgLzg ^_IOYzrzŝ3 1 [F5O?De6σ{+*cV.] w2_(3 hSi6Co0,3j \6WnN^!Ki!/C{`xP(ԒtC^Lri4OE{tLSZ{ZǞ|Ӄ[>3Bj}~gyj}\Mރǀ&v2?1bծvsdXNҏ$l#pTHSTqds,T&KΣ#,!]KЌ^[/][=1 P*1RVI1LUtGRԞFTh析39U/Mx]Cik^9Kp9dqe4t,6'W [Dk64sE!Z*4x^Aӭ ӡFޔӪSv&bns-QGHGuw ~O]h#+D=L* ;ciFڎzjR#K<]nƍF^ Ӽp"/Wk't^&dL\&-v_,m6x#2ΠQB,d;ks@M&鴾HK@LOg7N+E?ȡ$81I :!:heYԫ(ڜ#ZaKEng I7h"O8>W`;P4jڶC C+qqlZH~^&Q&eN2}U &v۬PRZ&${XH/$%< {oe0Ot> G^|m*K>1ܞ?ģtYO!%X"ҕC&Pھ4X}JS5t$Ëcz8Jbʣp8g\6~Dwgw^h z1s5uPB<\(\0xq۞SkܣbrG\=#ޤ_Jd=DwO3~eޥh[8#`8`4ó:'Lu33^'/&POxܹü^;yL(}>,tIP&|W|8o y|@Yr cj9WԬm0#~2vl=%Kq4ŴEqqKQĵ,!XlHtcQy5T0O:7c13ϗIִT2O$3QtlnD2@Bu>L܎`ƈ̚L}MdI 3+qG0o>ncm Ӷp&aG`ÿ(mj3-k5("SMh eS[gmGHH Ss{[s)o;}/^5a?6qԳ!ڭPkX4ɡ腼hU rb6@xmES\|x1SHa؝t,k_UսQ!?hIwxDߵ7WM * ?w:P}gӴy$Yv4CnjR %'8mqBjm;ZP>)ڐ(?7s;lǗ~ƪ.ɢ).w,f+8Hބy{֡2_$Ool*66´|Ds.eVSJc$`IdN%aօ ז5U*D)u%kװW32.gk>bL?]:b*Tڡ_rol}&,jnV2Nqg͏O ۍH3sDʺ{@!(vξi Y#i*2)զp;^8|^>rA0'3A{ W"Zb5Ng.y=Jy9Mgpx$7O%S3چ$;@q P OWq(K5cBǕyBհ˲Ȥ!=0y0o?%2Ao!&CY{$c0ce!XcG+6t̫eyT\U)++"'ïD3B #Z=`3{!kԡ .Ӏ7x2Z;e WjV!V'C00Ijy[üf||V.¸8ǙO&W_ʃ ]E4PDfMFL`}.X Tqa&+wҰ/ꆗXa]oGBw\'k/y^?+ӆPW9RE?5_xH4.zO5MૃI&i6-UœkzB*MUU%_7. {X"vkydHG[>6č={5]xJڼj$궼ާhՏW;0)!y(~QY&(nįibȇ(̀xޅ,A&$|qiNe2 "emL%"0}Ey21 S=lRW:!6mml%qnfj/zen)QlFBG#WME% aGUX<a/T^n9`q) |YswHh۵*F 6hTQU[F"e@n8"= t$dkX&[b.N#<;< &)iHA+5Qf.Ibi43J#z:oxc˗;m:GjHL%Vi8Hma5lwlŗ,mÖBa[(4*&kz>aC Ļ}֫5 W9=F. Iå@K-Kd>u?'ZƏo?;L]ۥt*I#dП5ǛUfUug7+17l0onj5xPFTۦmx$yn}ؽ75.p'EieQW%suG*ˍN\7 )aBTȽIjwA?4-Hn* RҞ]UkM;FnfI(Q?2׎jID6RP/I30e6r8(hK/ɡJh.h]N"oU跉ij]W׊d'5#)#]#$7Zi56ʝe,ҷKcDra‰>xA1ѮI+ݻD_ٟ޺akzcc+ hشk$,_p$E= k, 隓ʾ2T' |~ @K2WtT´-2ý[~)7Bt:"F)> q.qk=ZGs>&$DYD7U׭ u4Mళb 0Rm95eχ^ { t `w=^Y6fti#^[ck>Ǟ)'4詯8DANϷ/ RhW { J9"$^xOɢV:UT4>4Fh]- <[eI`@[^?]㵝mW0up${+|.*tϣPqJo*$@ϯPW4uS|G x*ދI^ڰ9IB3q:2)%a hO¿.(N0(g1`2彋 0ߚ2 S~uN%=4>~Ŧqd/P䯦 ClxބŽQ-m=Z.#QZ/(Ae#gW#!| k [;~ҋ2sp^JA&љ2U(XG_'>MkEWAh.73XbOTfs7>~rujB<YSu+a( n&b>3,7A 7}RrL@D(*:.R`/x kcbmw`HB tsSwW&/ ]o/ö_% ajo-6:7x;?'?4w@?mA E֍$7%cAkqAL+ƢHXm[_ነ]!*~M$߁F. |>ޖ ; 0߷В#p+#i0Fֻva :Co~/]M4cR_˵@ۄ r hPҬw,ȡuj&"O`Qڲ,Ӧ 2t(YJU~"Ys[gΚ+dv86Ek'wbݒETy?%:Lrs4EaFb2E~<ؠg+4r-u3uП>yV¿?vGƶɟzO'4ީ.'-7čiAUY?O-&wSsтZHJڵrId|(2{]. Qn #+*?,)I}׈Xg/J,Jo2#EH{܇;bjkU .oq$6B' gua/3mYra?%Ï.:pImxgzRht+v?|.~'8sn BO µ*=YHU7Q$4!JؗΨ?)E kЦQa_/\wR*HMZ,R HB<"ً~4Ij/]yiS^3TZJLcƞfA5Å򾡝&`azp{&gU@0诽]%5Rk> /D)7]/~V#<$e[nh9 75Xbi?G2%LV\/:ORJṯ Q0ϥI)+P)6qUM֘dO-b$(CF!庾61LR*x1>4_,k(, =mN@ƟO+= `2r5FN ;ŝ5Cc0)&O.p2$ WfMKC5-11eyD.}[-aoSu\81h5m:d|hD&r9bzi2CбNI8.D>,:)Su\F<1W,8 Hb*:\f|-\|*/#K[ƞU}{iN%vc/8$y sܙ}(`9t .vgK;: }& l$#Xb'z$+szQX}1)^4;b]sDNKfދ!cgflH i%`}\ `s-6J:h{]M^<@#1tT~+$z|tρӘ"Tt CLk/-:<+d8~8Xk}r DGl7 DMֹE`䷂(2g!92L 2aLK`Iaj9MP:%DlErpc *`Ci5,%CRxEN6gM^M)@%O6;MAj!1UM]7U|7#_qJU1U}(߿,cxv=J,j;%fFm:ô!>X`ķ򣃝ch'*ws G#sL{0*2I;%IN4РPoZN6aݼF&6Ǟhp*ʍ#9T8'.EGZ?ShԨEӰ;~'=3s*/)M[1$ `58$7Ll(B_oqmD(@"DHz2;r] Ljé|\_떏E^og/&#lw3fUYu6-C/>oh=N,PNO)^H?TJ h&)1p򾌎IdF6<Ǣܳ?L #tG͜ S@l9cE$3 N7WGʜHF>r dɕ-×kžcRjyͲga4Pr2 \^TR0/0WBӆY~qV+*t~WY⎨ 36[S,i#w7w9SIMۚ[]^ $:͎% и 6>ΫL͢#;de+LNiWmJ#vPgVoh(N;-M0%Zi{"!;*I<7shA6< O08=6{i樬1YSnaKEh5I9 !M[HıT{zf6 C7dL*q2YA9"?Q>KokګQҸS]`c į&8r^z"с*n0HՎ|hĦQz8`wy)8¹ B@c, ^=#WFg>ӫͶ,ث!ĥ |j'1WP$S J  'zU.o~f"{#U_uJ3C(P,a69.^3)Oh1L[Oڪmwqb=BtL74 9 Q*mOt.ߟjc*zm$pzh lލW-QA|J=:@5!|-( l@_XpTe1.yu-[EIKs2naG /f*`)`:76mF;#_p텷D qe`ST95KGDL+iF.)\է|ڕkRvAnYe- yÁ).˽cq/CŋfdCa%Ț.HVLfyt;Zws!)}[A_񚮲&+ 埵K|HwɳMƱhqS`l;8^X) 1>9t9ˡͯjpQA"i7N?T㌘mkX5mk1=z< KF}w2DbGfN $q hd/ﲃ8: _zvy# p.OxV]Lf|$HNg3Ho \bˍ{'V8؈zn]~w<DőX h7k4OrZD;Db`C5wzu[5:$A0-FS+{)=T s%h\SWĄpM%ꪪRDJ%39dStBax!om|$Mâ^^>}74/4MQXRFEta~5%Oճ;,iݔ ;أ,i} gϗ7Gҩq+-3EBh~IJkL|Q%[[@#MI_r_*3p (:kn*ǥLytFP.rqkkCnJ XL{uG@^\NWM=A%c;?@"xnyblOHVHH/,5]qL. Q UIdX9x]OyB.۸FWavT`MSvxޫ'mJިKCfhB*?嘈F8d4HT{*yT'Yuĉ)UA$Bvh>gP s͆o~ .bMy@p`1Xδ؏"YXі~[K%Ul7}c< ?)٦hyo],t(F3#[T{w<eV("]L%\PAdXޜ{.vq k4SKnkcW*]*!ߟbMTsU 0Y%=5M ےN`$ 4w*[M# zVIvטc%rJRS̟3[$)q43hŠۇ4<#a}M۩t&z~߼h6AȧgiF5&go_BLblX2 '&]Ax(G33b"+,co7ȫT+$1|/j8&,<4;GEc 9XT&s7hC57b(a450K)9˦MjyyaN.⚫6kXWE@ K> 3)=ܨH K# "l1C s!1rH«l <EWZ'k Hhz+x43O0KݰIg )^Ut2VHl#$EAE\`䎼*z#_ (,8t~Ӥ7L{='X F\T$>sx*ɫL>kۃE#/nxgbv+)(sj4;7'M\j kxy `|#PD\nD%lN"HDLPBt{߹\Ե n7B:yi%X{ͤ+"w msȥFaEmJmH1WX/Zg#?q$LĿ_ 9svsFpwX%Aa~tc_Fk4[KvřD3?o#Ku|&j&ޘ"icWXT"\ɳ =?wcn j=zo7Qnq&JO@*Fp3AHwu&SѯE_@nHؕ(D̜^: nW;k2w(yZKo#DdiiJÙfAwE*o^2I*iC-Pwz`ySEn\I4go\p3P%CѱdF#o+xy3,\lPPY/דŹ _2_W"@Xr 7t': pp1a|qII"mq.SǪ3Ђ &w$sDo9[bEGΒfmM? Sogn5\QrndP*R;p}2@ .~|7Dwo\/žFS[FMлHrYAqV'1{<_d+;wzKRn􈲅gw/3VLe:VH#?䙽W2;D1 ^D*P,X&BRM`XA >Oq 2_l+n3ti#&U rX ] ƬR)e%Nv 9>`WUd1ݑ⁠ f8uQΌF'Τo\_i{ALTz6Ll;& ցf_!DsWNfTwG~Q)8Cz9O$-1>2fyMiuac,EYoFrL aS%e^虫4| ^޴D}a"ы՗KF}q,K^J슉R\kT*טj$Gc30!$=BWӴͯGK^1=\5xiaY")~t?Tev)mCxLde_(+o^oCq؆Z&RtɀqvZrs85-Vd3ߪo] !K)a&^$_s <eĸL ~tT&2UoI(ԉ5KDluCxÌˏO[|e$?I_uB_~PU##ҏ>2Urv&@X;fk)e:؇C=&0oCq8xzsB -X WJher0agUKR N1qe"+֫%Cߒ2msM?Zve~ (&a_1[Zo9=rF)\ͤ8(^f$?yi*,?iƯ'`51Uwa[|;Fs+c|_Y泜ԊK;^oHEQ]>c=ўS{˒_F;)` srB$;d]| JI젋G]A`ðX[%ysD|Rl>se΋#\v5mwіktq@pV[Nyt6vz?#yeQوp%aDb˱gu`zk$+R|DP.D@H4OZBxRd%D;Xv(ddmd5ԏz?׆YJսv/|޵NK==^h!QVp i,nR [P&yn_\yNYt52F"'E/vm MۦmQ Z أE.F0=ZYAäO<\Ix[Ck.-Yox][/ʾµBW#Z+zTyo`APhy+Nj#ƜA'ɬ b{-Ue d%)>wk wdaYn5p07 h|,_k#<C[qocWVmmcL $7YHwX- 5DKDşOZrj̓g$Sļ"W4- AzFp]E v'a\ +LPZxfGeZ#0ZM`篊/E܊DiuXԘQA1 ,ÅW/j羠 Zut-TV.ļ $ͥlX@OQkLEqd+*B M!f^U+>{?F7F !C^~x2Un<; l޼ 9e= 7wui L)}dն2p┲6m0c-lb[  Qv'H竪ZxKxuJϮ?RLG#e ßyo R$8P?a>Mjd-",+'a̔(\[ +#:R(:5漽u%. Lȸ8Y_~]%~7B{H4j‰;i6yDs4,;6槤Jc =d'X|w\q 0?7uU%@ҐѪ.|#l>A&VtKk_[TjH. eJy/P$J#5vk&Vιv;EL{ cْYo37)OÉ+y%(,8Az*%'pz&Arx;?0+ܲ[ BiH+4V(dA[y»gtۦ-d{k c]e [5 - qQo]*QXDKVW2_5 7_q>bDR1 Xo{"r;$SY$F DLx4*wG>P8hU2zeQ$/UQ}ohWN1.nbZ-@74ֈ Pz,󵔆{awY׻x߽1, {02<*sb@uLa@ VfGq t'ws/lg^ڢΦ! CQ}ϭ l +2VsE"E-L\DRgK"J)+|_\6ϠĔx;NdYT89,) |tY?0ܽ qiyd\8a#"&%H|bvC\k.}HH E\EW/yL{tŤ~iX?ttL6,AhH12hq"?Vd춀V\w[eb 8bt՜DM[?K_xDo4 }"uUrK0ƝpKH'f|&>o{ [+S@YPԎdzlN* 7)A9x$. Ղ9v&?X䡎+Y6+(WƸisaS V<k_74 |?I /蠈D0^Dlzp:6qC R@~ |/#`ԞM>NDbv*챰VƜB詬UU\-r9H-i*n[dQa⇶xA1=\vTGC(9_c< wh4xXUN$wA ];'lc0OCQcRpbKMJ9 jZ رy>F?}{d7fa|P^8iCee=L1&EF8R aŸJ\$*4946̥ jwƸ :^Ttɘ^ TD.^UUa`]m cuk_+n)a|9UlP ,>oY8CI^AԪD`07_h ZQY_ R'E$`S9/HxęH]+NZ0{~[@pdH^""}T<m :P>wܱ[ gȘĕPP$s>=|AOQQ+mYYl`+$inF}iٵUtrjb:3$'$$S-`FCQ'-&AKu QxKPjB 9UYo$伞Q@m,&evAPj@1TUU`>%uS d걵*l ۽ZD\'4TyJL?S-dwDPR7&,a1q-@2K빪="?ocGDsjCj0s(ygdHKwT'>-T1)uަ>Umda 5wq2UD\-it3\"vߊ>yAX (7P- [iw4tQ;Ir{QD>Ν"Mԛaݖj0Z (J7@ Z{rJ .}B3u@3qunv ;g9/-dJ-y nѴݩ1i2ꕀW ֱ.ʼb 7yUW8]vjnAr:ȘWtt ^jC-:ˡjAEUSQ?#\.h~(_L.B=+NW8NQ;xz^Dڥo7`#DhCQ<}RF'N $u;\PvEޒwoa-q{X&NbGh?Ok2qNEP0RkE~hk`GL&N.2Lxo'4"4^K$|a}i_[#mbQ|O{4oo[PSy'}Kō קn"q&bSċKS V4iS~~`:J8b#C<rsn{>kn_S6]K UovRE>ȭŏj+PQi8[$OdTpQZbgF%ynXU]|a}s ~Qdvv$u݌el&FwRRiZIp5>A ~rRGo1!)69pK})sXT|Qԕy5/ݢ_bk7lZWwUEUII[KpK4`}h*`o}.=CY)Q&F^kS&w 1 ?Wcݭ Dɍ}U&D\w EGfiQCǝhWy>kj+J=SU1ЛYEuK{'jNas&+5Qdb>FGhZ` H,8St{f")(yS`G8X7/&uIm!ҋd :؋rв]M]D,Gqp#7IsR2>=f&Gᅘd ^uoeIB M@8?Ơ&L4J']La n$"S-1Pi- d`p`)'[-FOE~ikID L3PxZI/fR5 ]l|ZPv[MD Sf}Up)fxԟœkR*AYo1ˋyrno0\T7Gs2v8m]+ jLfZ6[.D"Ksj-_Kj/7뺔>?X3X*J8C7/AZohy JN 1?]]V1^\ Ҵf=*,!ș _8:D-l_)!|t HU #VЖ^Vx{Z6uSɝG|,EnNL+au=%}PCQ%Z GTstZ;-FPe"wH#>fǙ?O?O@n[XuN.vAlFw 7cx]ėvpdD) kKg04: S.2;٧<"[<^2wb44Ɇ>JLXf?-N!֖v ` V)%9"ط1X1K;'3"@#2 3<+xFI'yҚCv;HCdR%׭35Vz0y0Ie~;3;\ZS?6NQA (PzeQi&Z||#vY*󴂫Dt >Hь1SZj;c!%SʒҎJш^;yz/ѵH+"_p)ɬx%_1^ EyxF@P56 [tN@B*~t K8㎮!1Bf/7Pr^;IyV!BPA~z nt*"-/6CF q_y.E; 3NhvNAwAH U'uX1̌5$Bϗɱr MӵCs_ f0bm ň!AI2/tU`_PHXP3uRw5 )XXc??M$!Yd"}9TY mUDTV4mf=ӸHȢ_i"N=2;Hk z!0:E<Ȋχؗg,W4!Y5}te|}jlެI*7'q߾DY ^}̃[ %SPF`MM+q9 j\af ZMS,%}YϠ%.7%)w{dk׃fY6x,PmBƒdi{anT_5d5A_[1Zq3 '8VAtG xyP>MGEƺqg) H(Y[Ohq= t>' |SJ+)dB#Y8hxxĦl/sia* i{-5~A~K7FaįY:EQڷcf p[!,Z0@z pp}~? -լH2 a={ 'x59qu§y YZwŮe7e1xEU{X3QQJyڦ.,uo5[;zjr6pSNPA]K'U.Х h;3'j4$4[NY77=WHuJp4XaaoJZޜ` T6Y(caF j UJ)zC5VMd#8Z5nGEȢ*DqW'iޙc^`NŧL+,e2_h&bH@SLޏ\)XvQ${JdoM&V1zN[_Hww|`W#6!r1Kcve:p}$).`~Jjd2<.FDȲ!sXDLqQ YZP&/K6i*~v*)~xK/7>\psOՖ5IC=Y SÃ'–7bjeaY"zfAT\=HhpFh fG<aڶkurq>QtcE!MxV ّY &ո,kbȦd< r_$`=2Cfd|j [CLdžxOh+7S%\_T`s9Q/*;;\Ǹj>폹zo1az.70bc`aLldfO;&lv +Kl@Y60r݀;Ӹ[/,ʈhx#Й} ^oBul>-_`EҺ, ?ep;ޘZGUS%y,s1 Dԃ{)R<9d(t<\& ZÊL1.eRĊ_:Iڍc$tD18 TO ckod=Kkd7DC'0f6ċqF|ė m =2'`FNfDIT *}c # tr8Y`S~ Wb\H#;s=#DN=1FJ?c LSkmQKKEZXQP8ީ5)CB xg!kr5k4רjYHHPI:fb.bBO\u5c;tO uKyU4C^xd &r!B7ىP3* =)c4~ W6lߜMnkB!6U-sz%ng o !9|Ž mW6X*;"_]g<nUf߱1.Tyĥ0HIE&;^~eSKo( Л/p كyv:~@9"@Z:"etpxTPd~T:nCq+™,A]Nwp!Tqƭ.vH؊xr1T҃J~Zc&!z̓fd԰t6=hx6( r {^ρ_=VoWSvHvo"/4DGow=2끮^o[jـT&XL[DcP 1`o'!{cU^i +Ztn$ɉU4%,?XX_Nr.;7)C߇je f4uIFRRZyyCu\%B84DGRA1bt iD_r"_{ 'k%@Y-1K w#xU"c 4A_X3̫T;@,kj;p sL>#2|݀~"8s\MŖKϦ=}Y L4g1—hPzq$&9>\b-g3 Sº%X>1!ا&lJ%A8BsjF1"e 5bSXN]bL\g?zY'az}Qfa=Y`_lB%tƀZcGž[}uy5!m-0w }^i E7$ۧHey;ҐuPJFj;K:Z6;kh!7yGGd{Q9G!`PR9:8V;aBf;+:L9$f-ap9hlA شv+k&a,@GCEBKms R-Y(?}e@Qd=IVu`Nr_B^b7X Y l'›op^h'v}$m3r؄F].1;|Y_'f pXP=S"pbjLM"!@!pP$Wz@+mdχt@ȧ1 }[!r\T"ֺHVy{R(-:Qw4{6^Fq|96Oӗ\1MJWh3rtg=$ d i>.HAݙŃG KW3SsK)nWEt1FxV{fHړ}eF Ԩ?1=-u Vk-?u΂`p(o^'1EqqZ[i|cYcSR(Hr H,UR`~B cOuFRP|ᄮp_ҵ9LH(!(T)i=Z="+HuL띍95TfTySc,*ҧMYfc+ % Ú(*rߦAV]UQ .jߦ|Uwe(; oLDƢzbn)ԇX='Drua>6Uq-Q<,NEۀ'HG 7#Nlio ^U۩ 4px6'sf\.Unrv{E?uۦQgI6^5:ZS/z f4pwݙR,8:lfIp [T߇ .{"cφ2{!F-we?LyNC^ч kOms% "qY־q2`δx 0Ek]_τMœe}L ɍ;xe8x-OInVAt[a#wIo[ 0kSZRcQ5C})pH VC\'oH4-[,ύ&y.$+`zJR1q!v*A"\pT_'{lBΕ]"YcŶmA6~ŏxB,:_YT̃8j95` 0cr2&ʀ<(fwPQ=%Óso(³st7D0s?W +|վ.?A8¸"F m4X]PIJ{%r' p@wݝFӾ,Y!y?WQx|uȾJBtFac%3x$R.agOUk}JL' #Ș, kYXEHX;.24~qQ=ЪՔYf+oҝx3 #V"-,J]iǼI"Z6[yo$J]z [ 4.Cʧ,Mm;9B{҇5rQoTmA jjK}*P,|%oSHnIpc5J-9EK # _rhB"Uզy[3Bi`>/3\Az-Q?Dk}ܲbEr8)F̦<@8h~njNJaO rj^M nkTxHQ#͎Xy6~.\"ߔ'Hn<$q+׵w,,W X>؂بUp[)tWv˱Zi.ui}Q(&$ga\!qio"ɃW@:B/3/35E#Xe@4eih+Nm,JQw:XcjэX{>AL̇yVT'X.F^9rchK4KWq6# )lo;hCPp8؆Iώ# '~ia [Yz`Wu@X/Ei;HҌT~w x6R˘WXE9U"TL]!bn$+4fK>/e~%LlvEe Fo;SDN=<~4ܾ_*9tҝ+7 Jp4!T*XXr.>SsV2, kx%= n :AOQ Pƪ7u~U)&3vd!D>` ڠ'P ̖=浮)aU-y3Dh9bm,E)~gzp9O@wt[8]YZzzkl4Zg*SA ,OkoN}4z@-u/+!ʕyEN`L6x9p\@{q?Ƣ(]oD iur?Ly&9"h=]büOI[mi1j^QSJ}c6ŝKmW^DQ&(a5JxEb cu7Z"5#G*np+Ed9D#SU?.8<&7O>ZMFOsOgw%H(rfZ>^PҺ>!(!TZ!] gw *pgI҉Fp q~pvYnl}2RGOÁ̑Ĉ8];&xHkֵTorH_񋰣&Ks YKaf3?uAvRHꘪ'RatZE4qZwc)FnőǨY \\c^Y2u1ߓdHdw4YrzH፩4AsTpn) P+9L=tG}o..$ذ\7(6s%2= 1^. 'PЮe6ѐVFe }u= ]=bv8kYCa6oweS4#t\xҠω['^/v&m{XO"C ^k!;p7C[hxak:75}c7JQY#|yS?,4,]aez&H^f<;&=.kȦɘd".ԡ|&(S^!19 }TRR8TC.DdNg 4QcቘeU6=OqXPO۝]j r,F jjK I[@v~BKc14`!sYo.˵\n^t70no abb!zpFiCaqŠC~jJ]7 RPvYQ-̨EWm F s =Ao,ɜq|ur4e-7+0tj֪-syPp';4'dڥ 1;M.e6㟕gNءO._ M nr')c6տ+L50(>$EXt!2ķ}b=)W_geH7C\((}*lxe$mH8fѾw |g%<@r!FW/6w=9-94E*3)ael1 S(B:W@n8lK㡁IMV=g*! ~KĢW|wQ.9ȘhreRl&ˠt`Q[X:tY ڍ{K=UǕnY?"&޶蚥wYΘ2[>&=hIv1`%-ZR8I 11fA9E!mj8)|m/cSBoPӍUT??D42wr>Pa0 S҇wa<&ͫJ²7IiwhieNwF[% ʈn B:4v~/؃_e=E4Z%Z"_Ӄ2.w6!4ܽh$BFDh E HΎ,fE_S2ڊ%̾2ATl+E{'IJ@HΥ[?dH3 P>@=חV=-~eC hjdmқoo̷ tHEA|tT 񊁁{B&{s!9m%>й ?Js1)*Ȥ0:rF\ɦu-ʮB12h`6\yрq';v6~\W5賡Z۰iʓPBNsNu-%+`_(l,hD*ۖhKlCF#Rp:3ƃvzs=xQ>V ۩͐_4d}|fYN1YRaXhmeAѨ+1+ ;2DHҤ;p0KC2aWmD08:YEa 08l1)`"xj"9@cܞoqHx9= =7kN #E>;.2rϗDDT(u#A;)k`bw<דhEd ]tqF,y"cʫ:PUZB&@{5&d[&%ĕX9G+6bC=t%JJPo"!2$[Z !q?tZ,'qK2 j2!5V*Ж~:gZđzij|:TJҳӣ"qڶ$y8AǠH hrX]qA#$Z $Rq,dc#cfX%r3 >sUoxi}Yҫ 8ޠgΫRdC+9MGv<'ቃ)ºUEi,w5`2"⦽˘kͰ\DQ~XCqpWENQ!\Y>p& EũD;,o4ɼ}o\V6Ί0&ݝ|k5Txp^d^bAH lʹF\YduPmuQ2+П6lW0lIM85zYoȏpjz#S(͙s5?J=vfZ^)yKgWfDp/r<@]<%%XY䋛 I&w(dY@xTK)ht [8qc-Uwp>>^l?G{yy!)oۛK~;j0Dw+JWyEPw#4߆\Zsk9+`TFvV>)/dhD>1C#k6º:JD0DT#y0Eed`YhKNk=אH0MtNK49--z&́uM@4iQk| _J&L2EPU[YʪHb,$B 19R% Ie; p$' 1!"g ㍃!n4[Mʉ.ˬE8/\ah ރ,(2~qGAZ}[~ـ/} yΆRv_d$Gׇ Y{6ȺЛ=F~0bplhR}71{XVs,vJC-b~$yɐzJm+ WF!Cp3h WS鲟$C jq=SfzpLI5e}|{2/n)u`K7Af]$5\edmeUL,Cq^zfUڽ7ޓnT( hۯ)4O-*Tl3fʻq݇`@gW~'q6CWa♀ Z6"C8Ɂ@`SU 0NhHۃ ^,:b)B{PUt|h !XSs(1C|D@_(T0^ߣI~'ɌOnU"A*=ѩspg$sQO={ PDޡnd#Hs))u0G+!ƅv0-n/Jd9C!$؞z:TmOY4K5a_RQlI51dax=)ŏ57r${ew  F,0E>"aF0d=n8 A `] =8+rٕTw zOrx/c.>tdB40d=ODq |(0kRK~OՁ#ԡ4&:bMnр}fZJh*!:^-ˡ_Vk5WFJzW8=&0VT3`bj&8n>'q v?%"nt2@-eǧ?S0tMZ$G?5sLSAI6p X]eh&͉ıdDr4$HDSnWk`eC%ZzW\6q%o|0T@Wc*~R/Z ?#%YAsQ61 ټUYC+"\;|"f' 4Zgc ݠk] LGB6!Z1xh/=)NfzAܼlWs0f.a'hTmN}kDd-}xRSۃdLͭu,D`<.4 A3^OUޝsA]EZE/3]NSR )ƔRq+AЈ lBS#ȔIW[S'oO,1)*CLrɘ8y?"| m.maLfΙ%iW%1ԷK޷xYtY%x%dYm`Vԡ{^/^m=+{G3HH,wV2ڭ )kņr`7P"Ro'Wtܘ"?g6g 5!~=q&?T?eH*sԬ_1w-\q[kt@ 4C}AP RS2&vOuzaH ҇f$䩗="e쀺$&ࢯzV gZ[|VuM}I g<+w8le6ŁS.\+$¥Zs3 qN^n EXYxcmOk߳30y[HaQ9k6_/ ougR%Zk_52_={jpx ġwR_Xb9JD_6F=-bicQgXs h0c#_<`!;|&ࣉ[Lh'y}»Ά!RG ,OZh= R7vi=Rg h5377eQT#2ɒlF[OGMrY !I>\k!K,Nq:W裌m~WΉ;Uf-2֣] D}^ky܌yv6N}htޘ `" 74sh=^޴lj}KECc^I/7: eL杯54iݫ!jLk Tiخ/m)u\GS4Hj«VD!~9%“%?_NHؓ ~  _S=sAb~8o %V;)]sUѷaA98g+_r2|qp.y5"춫):iA!!nІt(]*ߝ%i}4v $qZ\; DfIa&@)0u8X3AźtVcmKVy?;ĺ09n I9R5y6/(rΞ -qKz=C0"Mw_E9SkT|a\-0k,5W(ةB[:N|Tutur.g"Us'\$?"!5XYvc@={dx@g>|ƀ19LcY}(X&y8uW%r=TLo4٘vKP^ImtuKIr3:Ԍxez Ks-x |>yI_)J6| 0iًoI ːжZhieH~۔amo_sʄ;Ep_4lŲ/@>@+e˫˛=<ܧa6++rs"S TE{3`oa)AXs PӁet<@ew~ >=06L'?sZP)XK2pkLSeؕ v!_ȪxAʱ~eM 9_wi U̒]"솖ӊ*k%jHt1EI&\^@ Z) $IN e¹Ҥ0,YawT_d5J(n⍘t웹7ݲG;!te@|*0بGO )2R6*0dجi%}p S񾊼sHO\Hw 2N9]fk%4$.FAĦm0brNj:ER_BK1hG7Lג )>dRp)sR8a\!O+nէn.eI0|Z٭vCm&ȱ96H)MF-q)tRaOS i 7ogxu&3^9z%׶992D zM:KaGYUeIa2 mS焝ħ*t~ {kP1VI1 Ģ [D,Hu-mݜAU Lw1o*hգrUY2Ne<&Qo 1 @DF.tj3~YgW𒤠Qh:fB2^rh g0_]!,`ꑀq#ntT*$H =0wTCs/!?np`V/5+DKiݙ41atG[˄,flqّ[8p<p2>ρuo0bRi3/Hjh7SW-?|},>e);~Mgܕ#@ @e-sY&ɱ;1CFx#oe{`)Qs:,E DLpѶ{M6S҃ S'L!Z+vQfM+҈p27ek'HZQq&0f[ɞ?%K+g SnɹAO-|خfa:zNI1Tu@5Xš Ϧ ; {G q^j^hZ2."*%L e_u|+@*kQxk1φ((:b] {&~se@EG*E)(8)gy;_VBO$ ȳvL_}CK^RKa/gxx$"ϔ4Q e@>J:֮ErN)m^bVϦMC4bw/BAd'7y}.*X W:!7 k:5)nC{*4//3Jw亏WROlOf JFmeg-u`3 l{B"*5BG;FOnTq޷F"CǏIVD=+!C1I?Š"8EٞRi#|/ŷ.ڈv+wrjNh LJU!~^CTNuV@lh{Vn#(3?-MtFم(5zKp[Lf-[؛ sR"fͣLp.~YU--1Jb6{ RI-hccޭQ,c09={>mvݑٗ=%+#ޅMJ u=dp'a}!58B,W6Q%IР|Bq 5 w+'{#7\t:Uh Cva}atUbhO6L5K `X0#̆>p#Q:d.SIx鄼FiN]\, `)w q9Y[bEU["eƌ/pXT{pt'Dbu}58UК1(f%X&h+dh).7 4e 3,-́ hsBxd@Z:;{%$7Ru B1lp D%<".DM>K0QF] ~[2@# F&IQ6G$ua̛~ǘiXDz(9duֵi"BYߺIK xńj{Z*9_'hSȪ-ϛ5Y tM4)'#\%*BeCTpb1+h+2/y0O#b{? ZXlCBf6~"j8b?<8 ;Ҟ_b q! /`G %e9<ptaZ9LX\~З! B ޑ/c ߵui$nro=Sl{np{W`65D Mc Ko\&9_5rH-ΔK}j ?>5ǡ o@^DqHtԙ]N\av:PXL¤KK~%Nr*K,gPu]Bq~~Qvab6NT ȝL Ѽ4;(מlMEJىp0Θx:O-wt2xG7ihUX]!JS~Mzk^ \Aʤ;uym|OΠN@'LW͛tʂ)`sՇJg}@?r~E+laTPCs$QZ~gu˱X[8f؊;4I*,ɂhՑ[3å&3lHJ(` %>e]UZދ/ fyC{[]1zR(W;׼amFF4Mndewr:Ƚt;qФH.g)c0Ȉ=Ōz.:{hbݐe.q镪"xn+'kMMQ.YUv;Q}A9oO+dA'\Y8Ahܭ-79rBʹ)EK|e^՚p}d L};T c ;tK0d}6gW3vT{夠% jSy츈IŠ6[{CGֺY}7I%H7e ^ 3`JJrf_ csaVcZ%K Ꞓ7&4e Tre6Gd>&~ @>}^H _ yQ:G:axԢ]SorPGwDl=x7b!W}yD`7W.-V 42va׃MrCrmuUαp#X gh_݆:V RKո:̄5T@x(oXR:P "#FtRze+J?CUxHA{緔 [47bC^Wਜ਼9z:1~hV# {\n"+r^z`oQb&;)$B!yZBUjM8/GȬ?UGU% +s柌b{ΛCYL'un/ܾ3A."!>Ԫΐ+x׌)$-OHI'TY4*߉,Ҹ'j44|i&xؚܯ L$FXeMݹp#"$qbv7t ݉ݥЋ44Zji.6 {9.) x{k%F2_L*b:,R])NGFl7F5~YR֑oE%S#&D lIJ ZF6ȍ &' N]hČ)WNҐeB&%$,R]x ~87#`rpDXf dWy]FoKgE](N |0 1LN6=O^Z<>Ҩg@شk/8l#u"׳mS͔/k^N{X3Cs52x6Xɱ8fp4mM L kKqeHc[O/vIzw<ÉŜPTK)y&Oo uE7NgfYdgBN_ |j WN> $h*e1F;v2^BuhGz!UM)R ߳GQ>62|(?_hps>OJbVrA0Mѻ0iW2PGgXsP$r(z/*LP1D@UoG3u8*vV eEu (p'dAhv"8F0TՠmTFxzn(.ɮPµj/ xLխ 月ڈJO{=\hfxuԤ}UDw?nQ9&jTZj5uRpR؅"{-PPεUg|y&d@o(ߕF1:BA>Z`,F_M/y@X޿(7-Ϲ Oqb,\FNSTQ}rP_6`՝:=|Ok#L-e42F c9~ĘE@](̓Y흯6\byG^ܜ0y[3>Ҹb])`I+݆}PT(i-wI[86ؾ=?,n>#}W,B ЂH液FJ\l+_&%p{&z1zph=/(yjBQ7A~$&yZeđHCsqd_I+~'pn (?CE-@wI.|T}:JUBݝnb0QuZe%Eoն]vge<Kw`'{V25H#:JDdd@Cs1߬OgLxyb!L-k ?"uWƕ2Ȅ5#3弋A6G^\ԁf((ҼP[IIo>"iIZ>Qn6<ֈRK YeDN̢Ut5hfj?3QɉQ9J_>0[~̞ m]l:Ƶ}~ =KJi$4S0_ a]O\\ /)ꢩ+.6 na|7qVe#B=B,!fv 9 k86R֣G~c+3-2lCj5 71?ETZ(~Nf4m4Fۡkwg̊3޾K3Δ'5-/$D)w ԛIwY/lQ#C^͓.9BD)MY$ͥgrxSȫ}37 {qskS5(~DĄod7d"uc~bq1rxk[D7 JR0Q7R)_坆2*?\vTU4iac ߳tJa&?y6{[k!QXnޯyD76* T1n1†Q1 5Oײ9S'D8 Om@A;fշÆ{ v2yo>%(`A!Ӭ2]% `G n([ | s'_"1D 2~L84}-u.Ya>/p#50=)*jE^hi 3 ;B;vE "׍p/N[#5lQ˻>#<%7'tYzJLǂG|ޤ}n rBdr!BI9yInFt @RJa5 N$.܊ktѤ{fcb߈-v= ^_Aئs4s~G,VXEn%'S,h;渥i`%̈́ t֔P߷j jllwdͪˍE}j=l?XcI0a4].TўI4PB`/OQNPf9- FsL df8c`lP :[7җ05&օM, >T=Bq{?yrYi0MS]ųLOOfYeZqs#^u4áX [_OD(D9eesX>-DnW3t&߳NK=%I~q=AVq=B9fC@P&$G@K>Im5uzvQZaK4ƺ`X+u3*8V Em8ӵQuzatEEQ6;E =XףFEOQ_t/מTJZ^s_7o IؼdRRZQt9sBsc܊ToАK!L*3F,XW3PpȞYe}oli oT"ew%j CU=2eXm 7GH &O)0/2 KsXk ӮUp4MaMS_> 2'ZgȞP _ >_#Kӂovr?o XX#P9sBziaykxZ(!gr Mfs©ŸX<+e0 J5d :cuOlU3: ɂ !qw\I}̭ ,Crm6S}ev(#QS R~Q_٫))`A*q ֧Π9{]ߣ3 \줮Ri V,O\1H? GsZ2t)byC&GİQ XR਒aC"IAPeG=h3> I9M 8òޫ$bC8i~BE%TxE>qayz83Ӳ;X7rPutd<(D=0-k4]7G.Ę`tн z)cX\(IQwϬ 9iAXߥ4PƞGGKOI))v=f =.3J^J A % O[  qDkyanHJ @{2 5Bncn'Sa]W0Th0җf$Ky0emG )~P>=JQ 9pW5Ժ\aUjrߧQ1Qb)Pr CE-Rrh f\%2$!{bgwD@{mɖ㶒Qf΍:OrcyuW0EK[El9%)\5~>Uc Jc뷖K+QL,7Hk1,E =tvjoW,'ZQ룽̿9uCBGMduJ9G$C!`"]J*xq~nb1+gEu&fMmNur(ĵ8t1p㠗p,7++5a}hݢm`=2/V7c2TWU¢ UTL&IfkLNFa0 jsNK܍8O5bmX RĦ2!Q0fj`ZM'8fR`O{j NI(UHYؚGf{S=02+U^؉?/iEO};d S$.V& AGwN8r͓ʄodvX7or l0aAR09GdƠ՞t5ȩN,g? lhZ(Y 1QIB, 6r]oo5'dQvpqa ~c=TY ׋|-{+ 1Y PXf&$jDtaǩ0Zjm"׵I^Tܺˤd=`~rv+4w&fygLۏ+-"S0=߻Ň1#^N6^'TfTz(8~Cs*y!*dPG\ ٍ/ƣˤlN:EbȂ*eO5RӅGוYp݆/QnMč a@1/ci %' MK%OEYVMlE_rt;o} IHsh[D<_[0e Bq+џ)Ai>"V^Z_ đ/*7gS ĒR*[bEV^i_W..2 ѼKp[M˨FT2 SH۲p,pCW}1ؿ7z$ (fU8um96 eUBTb!$0YeESvqW9x;t$Xҽj:V`?׫D+nڽÏ-g>>|rBl; Áu J9~iuE0}̮ I1$i> M' R+oD}!F. …ԛN4>4k&5|x NOx]ZEO?; N-Knf'~" ,dJLQT+D[{9 (YXƃ9x_ Z1.b͞_ILK1 F7;bdQg+s^ dmjz!GVAzQ%Y9ƕ"atiH]F J} [81Sk{}g0Aqg,K6!v.i$- 6:s$_M%2ܹGFBV ڡAޡlMYdQLЪA<<`<%m.A|C)OMԖ?{{Tle_2q]69]b<]AJ6'ވH#Ee]Z9͍sn7x6LP_}fhzE،xx5lX:q33<-!_LvTiwN p1nH4Nw\%(w;>!Ue|Qb .z:Џ0lւg.W6o]/2xjzMV Fhr)}nbs459ieZSp[% Wn5@rC(<&R /7k$Ѝqivo^j,AvgӵS'f%`'z@Z*~9WAgE0 O,Fުʖ+|l `:$lqxngdؠ=Â{WKB19!48Xh^yJ:79FHFBcWSOr 5%r ]OiVQW/eX\ɣ19;T3]6@`߇Uٗ7YhNR7n'֧-Fs ByJAcƚ{ZsXT;td%Nk٦ϸ#^/l-_˹IAG`pTM |H#1#?۞n&p^>^LUv?2XTzwOKr[j.E" +د@Q)H<}j4!wqB-d΅n.\ZxS zxѺ2FU-[/0ugO_`V:cDTF&"Eň ,Z#ʗ{ۗUjFZKW6J\=l!mbby2:a+p.$(rC={u ,=S[pn)7B-[N֚Z+_K1m VjB gXyB6M?9mG,t-UA/JXXbzB**`7}T>{9b(j(x 5xS/xDHEy0Wrםޯ}fIO.^%%PP3ww.&Z]U葞_8@&Zsnj 䶹6Pt8f'zuڠ(G>*m$It[?/(U\' y#V-Extyqfrf4"Fw v}\u̐q [ 0~PYL_g2 .NfF5!d(5Rġc5Oh}-1 RH\uҐap{_IFb:8f ɮO\4yqSd7fsL~a "ab}]Ȉؔ8brAŬp5S@4- 'ıVÕ U鵊{V>"tչOQ;I|dM+Ϝ's7./ QVPh$HQn9\)փBػ׎2sJhM2S;V9pk`fPe$יp}9lȐNEщZ.ɿp bPjdĥyϟlJ4EQ!r^F L'!٫qm"& uKv"5yHְof*=LJOODib`0|%x<##1U[JIOQGX\HŧMs/9vpFYޑ `e8iGþD3dc0xȬN3'$EO YmM}K3aAkv3(hz2d?SN̮m}'Ƕؖ/|םMF/f]! ^x sĒjY 7ЊΦM-5:b""t[& M/Ĕw0wȮGPwP&Zߢ@40mߦ*XƹBLG\A) )/)dPd9't_`jEP*bon8J4!f$54wh59,=GkUK̰?L1AWYi L9R|vNqG)$ , -eJЁZ* I/p㪉Q1vbpAK1BX֍18˳}ho~A x:'u S:Au+ɵYr~fIO]uf`]j녳ad.v$ZיI3{2(ԭ0UIיCn߿y{H>K__mUIPl,) Z R?25-ɺ9i$>\`4'#--0Dl*k,ёsJzlUa,Cד!y~k50~tE=\־-HCO,J%sCS鼗S\/^7qHVRFz Y h uJ|/ wwt Q0S_AQIu`xAT#CHGb}oSϵN]N?˲q,eϔȕLp?(X7qMՏf4V6}ރ9a[Tf5WE pqIn``Z/$ܦ^Wd:f43z\rGyU_nfq-BMrG{|K+&_WQA)BXW-85HlCoֺuC' B2gPJswQm"x]U&k􉜙(ٙߞqh=~CU]*F#% '>Sz3G);VI窱PČ:?EP;GtYPh)_d|mad"e[O Pm|- mÔ7bAa";8cH(A:2yN)貝E+L`© _ўmf3tVJ5ՊTOάk@-P4ȏn=[l5A`H 5 V֜53i♯:/PQ~IiY\t+qF< 7X_$+[Ay'IK MM'{10gxuuZjwxр|i@ K?0:6m, hNH޺#ZF FEv 0)Fw==ŽG*o|W?sS듧߁lQ=_@kt.D^9T>47_˘ĘlTacPxo3JHۇnf="b^꛼*Zh-4pjR>}lXxdao+dd؜U/vUFz9Y/\䴲p@ҁVe<34C:Wwr/0+^dz(o#e0o#KD;,MKտ5#SnbOD%HIfgk<+s>;"!@L3*pdQu*7CD3:d~:- zoÿ UZB0  z&"MVC'GHچ3P%>,Ѧ퐷ُ,r r޴j6$`^7v%%~6蒗ߣlIItg3V!ח4h1[=h,\p0y)j a 秂E(vr%eɇloɺ grh=M=τ;,vl7kvQm6{ص?V^)d=˜̮YAuJ7EIu$ PAi+Ll63~6kD͑KЭNtT3^18ʺCG_ &#dl1rN[x djӹ3`8`g,q}7y KVt*l z*\E)P,.\G*Mh׊XƼE)¶81FjKwLf@g3 xν(mUeQ1h-g'mI7YTnZ\hޒ~Y&ȸ.^ܮx%-4m},򮰷\TxVոX~8H0OeqГoaBe~#4Z0`Ƈ-D:#Ȝ!4y*r& ]߶*YZĢS_5j 8fiHҜ!bxVbWmOw\JY ._0>]ⰓFEt. { 0/8+/_N %3/;v*Nܟa&7`8[4R~lSsW|sШR%f] 6m 2LI#A=%j%+n2Psmy3R+wGֲ}!i@!qL@$œ nF,nޘ-pM;O൳}n2HAqE,Lc[urh]\OuKE!.=; F7cl 1Hq#`cNZ|d?#4S {p\MK>yYd>BQm0dz]p ? Kd: E3/Y?^Vu^Ln`8@d{bNUQWZV=Qyc5} -FI. P\2o־5WQѿoPJcTV%Wg+G9u W*-v wv=tЏsng 8&M{ .:6V=&{u/(:c9Egn;o to87mЇIJt'c&\:3$0 D& ATJ9sIb [A:"ih%׼;}.]5ɏRܰ 1 s;@5{ҽ M3./p{!c VӻlX|/Pmc(CfT| ?FA!6;dϦbJ'vÊ/IJxJHH9 YSCj߻>ƺL(/d Y \/5E ĝjqda)@G]vK\ڍ8 svY3JLC``ji޽+14SOZyCqǞlJ8sIf>uzb#1:Xp+v2$8Ңk5D"ʮ$Q XЦCsCkbUt\>ȗ=f$Rcg3ݤj #Pnw?BBHUOāfH__S]wA9F1ۦrMNY -~vtT`z(+'ޒW:BF~Dpow凊tV. ޚ7[Z(mgZט'K^!Hj:<P²^݁ MgT3aX&{JN G'PYpѮix F"ꈽnTw8Lp/i_5x,J2q4 U1d&L2WRh& Jj >Dq)GK~&CF#.@MjRu0l˒Lρ։ϖ+Qs5"ZGQ6}!b&z)Ea;FI|+൷l`}"ЗǯT}<*Md_Eא[A':Ӳ">i;ώ>/\ųzmܮ'Īk׭4'S߬h3-?߉[Tp'+}5WE dJ7{ Ѽ2f=J߃o#.؆uONl|))T'iZVge6@+pr ݈2dp'H߽-Jhоr~*<)!3= *r=&Α§D"Lo %qh6Oc TU[kS$d.C9կ6}Y1swhWMbП>a}KS|6Vs<oqȣD$?`:qZ{q* $h,-qV$c,Nw$^ [8No0 Q5jj gGƊn8%d1X0éCx3kHY'"b?klʐV?;#1L9Qr6mlMލ¬[Vz'`bƬ̀F\+ |4y f 2w>7jOL9sߪ%*&->͂ƚ?!u\pk#%%s2m!I[/?f L h}w.px4~4F&eA F?6ӑ JInĂ' "R!l)!Y3*ѩ\! ?{ 3i^&rLU/)4/y Aלl`~ϫx},R0k$f̈́nɴSے0zr+(#LM#Zp(VR~g7˿j> Yh79|NEkL}# $&a*2k3(4x45TB;<|FsZ'qœ} -OJO=u6u!XSɜ께lqTarTuR8׆GƼ _w7sf+=I펅C(OCʰW7u2&> ?N: c6>-u[Ȣh }W+';sw(޸=ߞ,8?a ^FCf?j{7}Շ(}'vE"}?:IN(*zنSWH Kzg⍒Gyt2_|U,M'xYo:hk6Hd1l僉*hz&ڼOs$aa>wЛaK"zvJs6*szK%'ĭ]? W1#h=e7!X2$ci^E1e6˄s' [v7b m=?s荝 Z 7Ό!%~rYpxDţS)Si cݰH?BM֬"QASQ"募!^`.'&'&{:k,*^/YЅ@o9N݁ty*.OU1@3mT&QVb ;L0/ 6 ɨg#qb,SDd !PyD*K Mfvj (9Q3t^H:FaFPOҫ.ܢ#N6-n{-= c;A{;OKEZj)l8 \Th,%un#7ɹR =9UZ˒d/ oF2Oo,R" D Igl 7&!GZXDy/[_J .`'5ۛ7W܈ETH:^$BDU)J7Ew(J "%@y1`J -- ;sslv ?[yL>r&pq!t RHĶV.? [0ÏT϶cق*>xʪ9ݬx* 9αٱ*xW~%\`1Za6/XcሗfWS1&b>g2NH9 RcZ Gg?L˂#Y E!˃]s{ocN0ynbOEuH%yYE>~YnfnRXiVV`+Y+yP8f'xӜ$t77_z,z|=o ]\XGpTɎ:ďO=sfbxO"C8;xo#icÄn9G< Bתգ1Ɛ&teV0< ^ES0Uc5#0b[[bl]tP')](3rFPxAMx 4 #& F~U:υxvdNB귴#Y8~Qz_ڨMqP4KN_< QA/ʅ #O.I`bI}kٴ!b{ }`%w˒,x35+v\QF'{ kMC;RAc?sZt,lD[rX-s3*!``znK,Y.j?9  Ҩd3JflqNNT6\Y}i .Zbv( _@!陇Ǒ0{! RA0g9_Ǎ֕Eҹ+|k{Austa p)pSv{քpb/ڷi tw7Zb(TOߍup5 >{fp}_693%ɞ+iK fbh~/7 !s䤘s-lO%$X~MDM,% &VNQ6yoSͶx,W Wp^IQ:/B$h4 վ1"Qs&jhS7gYi񌱑3RHҔTQԣӂeLy<R7 +b7^(fE 2}X^ Dl(Sq3-_fɌale_.1`cB(Qo[ON$$;|u6V\_7c!EC;1My#+tJfN0訞F=^Rd#s A0̵az^9%'^reL$btRg")\"ڜ D1L`j1-d=WF7N`+Dgpx_}['RrEn nWAۏrw3d7+YAMDٲ|rUKpdF.dlVB >әě{}Ω\^ru?yI4[4dc"nuPZJFVT` :Yu}MYSAl8 $Y?C%ԫ,"B>O|ߝ(dczLk1gX䐥FX/.!᝾0ۨe-fWftwDaN{iHRiQB!h؎Pk(}i\q."m;JF3iTtJ> P!m-,klNz|+^ Ҁok@Ɩǡ ,C'^ )|'4-4ZPk6^8x,Luʦœmc-y572 0UklI'XBut.~1ʗa']"/@CI)k`G<0 h F~UvotSS/CڭNc A ڪNg\9jfcBQ9qE`"#0.l(&= e~DDTqэ3d0PT`Pga`M{u|5=L,u4qQ~볳\y2f+k8(dVƊ2Bnt RS{7>uZUcvSU<#M}u48N*J40D6|o#J<57U TXkAՎUs*v¸>yNUi09a=uj"kpVLm}=A+\V'c!.k$#j} ')bY(hp;YQD'/ΉܾӉ>1 #H @0-:^fU/ &9}Ѽ?L jrVupt I?->?4yG]& rV/6.!!-^:@:-BM Z85%|ߌ鎥¬WFV1 `uehl~+.AɺɛL=UU?`}stEuY{ `z.pRkWP8ʋ 4"w닮"Ek9C(vz{A<0Td63V7˙nlU9ӭk/A9>UM\.`Kl?z(jXV Ϙ!TfY>1PI xDZM#vV~r"o ,PD" si ; 7K^xچg9=c1ucah)x|k-:'/th{L#dR`D+>5@cǪlD)?.n_+2;ȵX# f",cmonZEmOݏ݈xKݮ^l`p2j DȾu2"6ZGRW–8[\%N.2݌ RTfs$]9G 1+-X#g44綜ZWy-oOF/#vNeP9APF"- oYc"tzv<= 9$, Ŏc@ms))=r%Yt7Ɖg$sߜ~+؊4WrYl-T$%jgFó"$YXҢߛ,o Bü f?"R_FF xGk[iasJ p;fpZl`oxշqQ4&H6rQϮq\elNWead첨g3əp]{쩯G3! 1F Ĉ)ƜjboF$+3h9 ޑ jE-?Gj%ƌ9.>[Q&yͨNO'S8D/c",Ӊ^8,cD>#_$ c7XZBDP?B,\dksXgcƒ$Ø<{CL>BOH̬V2*n]H )}:!xSBz&`)0_\nE )0Y.nqW>e3Fž0H[=EBM+pkY/YW܄rt5=_22\bmuW`_L=9!+R4zdQA uѡ3OY^9bv"2Ր'[@ZsM4U-qGDvtȏiHWq|ik"V ˫d?JQ@)i>cNݛHmh6 ?LZ*V.nmUWI:O@+O&[ppޗeV\ Țjiz2Qښ 1ۧ?¸:"JM[ѪhK.'`U6QRF/E-Η\ H6&+5k0OFzshG&!q`[SQ/p$9lX['Ra&3}Vzuys"=!e!KM>Mt6~<_w-7}U.fhoyW~o`iKh8qs8<?!K!:S2IH6Ibsܷ0^bu.ghblBw.M]is+0ٟ` !Q]ډU$*)x LLB'{ʺ-;5 X^[I*8 Ca]mG<+Ù cꠧiow%$t)Jenx;fi_%DT{JIwpqP7{抂ȯdNkyPq.%jb#Pg3ZI( #oZh# s۟GPEy}z\_u@*ͅ_DyN!("X ͫ$I5I-)KQ99()b[s߹~ʙ ?-VH)¾_@[F%U +C3=Y=LEAC.:]A -MpY#7xu?b M]{NG>iatN ~KuoK$[Hce>b3is5HIJ4 뿙/V.^V=9};|+WrGc]f`yS?wQ&DHT W˫mZ*W \(-ޞg~ YCL\ ɥtL/WhN r˪A+6gA6^<֚|V: !K`ME o R?Wl[U\貟 NiaCdyٟoK>ٿ;MH`<0tjZL}y-epM >,# f:̑2}.Ux|,#PøZPXMVtcY|Y ׮ a~ӌS ;pPYWZϵ;LD߈hN Nd}̃ <b)3~0f6L&<Cq5vf[( 0G&E(yjCL}+)&`RQXU"4lg)'AK{y'1ޭ<j=|4Pܣ8A%K;D5!e6َξPyB3ϵPol̻qaBO-v0Pw CG>3 67bq?t/T@;bFHkT~{KCJjX [B~y AAy'j O !mv1u6}!1$zC5qGO,{"*0$%Os^*TQeXMt5v.zowq7v=hc::rs_&D-:G?w|@d&RiϢ%;a˔$DaJ|m@tرp~жWT7$-C* rL5}hYy TZ7:%D? )GHuL`ۦq X$ۣQ$%^<c*1C'3[Z: v۫];OU~~;W}v$2/)|F\'$9nmpZMޞρZ<E ؘO4 .j[b7)erܳ14KWu숟eAts@NuMB,wz TNHWrgh2Vyi٘ mCF\3J 'ރ7n"ںE!X/];7#'Ľ{"S8.#ez9!Rb-?}+`nܳҠ{ 2RRCCmq2l TO[1jPlIuhSX0瑖At7ж;G RL=  o3lE&h ݇ѬBPICS w3Cq4jrU7|#|LzsRHZTƶȁwxj@[+8=?}M YZ)hY) 5ר>H}"KmBh;aӧF4J$}[SJɵ6#yQA1-2Z(s]hd$OR}$*x|){i ~om Rc}&yL7Zz0m=BHݽLJ'LR݉pa\s+y ,s!Z)6SY*-TYyQ톮+'d}h^Mr1tMEG[b>1D$aN)`ޗf/j*$}&P/Вm {I/6,>G70c:@@2nV.~܏ౝ`V2 D1hwԒ@TDR_.ՓgKKvlD?P:(k{3Tt95-(w_ʒ0KJTt )906Pag ET&O?3E諶gVBzlz,i2ӐXY*ٗl_)Sp(&Y>EVldgZusvhs T\#ƳQXks _aK ?A gD  > }A͌YѲw#t*粨tQ- W&4[VÓ̬t8 ;Jo:b5.~90&Sx寧eV=ͪLؾr= k8R%GY[TL0Qն{Ϛ%ǣ-` V48~Xlͤ+!/7<l^*+υVx { D5p[՗3'Pb }+0`$ld]al÷:^G@C. nCUpgy6FQ U!̗X8VVp^H!_ӥ7}=rd)NBɼuLuZ͒_zܬց1^xwz|~3Z#ٰrIďlso5v z֮6.cB$ِ52G;xa e{ GPM\,xCh=%lJ:)㋑Mg?X [S5hcm#:ܿѷHiD2 j6{9 :XwyNR[Н!㢄nUNl5'W>oO&/,1eiSG#)[svoO~$W{JQхL4'(i`Y)*e/yj8xsK}}Nך U3C9]9,KSuPk5ގfpfT.6U!{PP͡|&B杌^NGs2]Y1Z5< 3"5 ^DLG.đu;v=;YJ1j$_#h"2H4jJ 1)<>tq3ޤU/ ͛C+B=a2o o2Aq"QfUaaDTehQc+lQ9y@!π !}]oitVIJ;Xj_@-zxުK] sDsɴzaic̖:>YL`;%5uX2dRj;`g֞bm PNҋIPifZ"1Jv&2XQ{Ź[hw9mMp&!?(ɠNs ͗S]+R߯8XqqZvkr3^DRa݌ScCSةO/Ҋh! <1Gm(_L Thb<(tPm 0SL5_Z-Sb ,; 5ED%v6q$ *JORsa} rTx`tQ8 mLɗUZgYڵvmє~f]9CJUrߩVk)+^\e?[0s3>cc Łzd/6~|%O|_oÍ2|5iBz +Wp=E 9:(!&_ 99_jP"+ E˯ME)Bh SirJMɓcB` 8jmDQ=iu+8ƻ~skIJP >{zZ^i.axlI X`0~obxV+FPa(+%V&D!AJ(Yr)C|fE5Vԯd`xk@6/AϯtLPL⩸=mn$ Ã|_>K JFɎǺ+Έz]aϷ;[w[F~łyeۛx\Ny+v}񤲢5&)GT/e.Ob{c@3 ~2v)EDl 2v⣅ܢ̓Ig/Q_CL -٬C?*3 ?L)K]dv `u*+v 95k &Aץ§~dUOVX8m A s-/ V*xo<)A(ý DFL)N~+>]*iۧjh 3W;Tj4TgOj+kMɌXƟpviE]YPz/3|kʄ#PWG_^$MIJ/U?+ZBYv!x}O]'{eWraadTۉQcL!/%OIDbguX(gN#h/?C E:Kxn.:p7 a&gmֵ(vPe#1JaS}OD[wb+X4˚%np~EI\b6C sS?,h]$h~,&lٕ>]eB1t!Wg_g1Ej_s t?M!'f\j @.F]In)z<ls/,]EB ҇ኒ3)Fն0t;9e ."_ћף8`'>gn@~"AV-@iW#ESB kOeyRV j6Cʷ 6:8L;FDQR::tBQm䛿k`ecH B"` Aw%>Nb#򁭏`4sWp~PK^ai6OoƸƪj[Qw&ҝ&q.GtB P(]4 ZWt;jÖRPH€4;:)2Ojcrjꂥڹx*,M۾qf/~Q#J̱IC) ~uLKEd$@Oy˃Ymv!5WX:@#oV_AmXє<ӗx $QP`ru{[x-Y}{ej,-bi iaTJ~WJgd;06TS&/1)b\k=\-lvU٣Sk-YN}QrEAE%7bwVv'[lm%,$o#W)V{I |VFSjC'PZlKD4Kmt>Ĵ4.삓ʥ|⾠^1~P"DݦA͌Q%18Ԭ;ngvQ0v[T̑5x S+ QH?Zl<:?/up^Mk>F5gc}47Յ;/GgC؍Q7Big rq}Ԧ!<}̌܊ifsbmL&k.fw|*Sdc m_ԛOpЋ ƊiaO5d&6jh`ʝeq@5QLƭKE︒0D+DOp] e pVvC2ؒVRK4cc@,5 0_>m˲h@x, `L纞iLtedc?mjLȵ[Y!Pk0ĝ%AB Pb VsNM!bl6np O8(v6TaX?FZ<1\_x kAǁf%ݝ>IydKާޡn!d5>bXs?:!>ʬl,hF()l  n6i]b#}>`.I+'gBs5[C?KX21q_Bw  Fa|ΜüS]VCH(LZsG"㻨 6F]y\<&z$ 7[ϙYDpb=zXFaʇQY*ij%{ a}@(q:sa[ߡ@'~|kREX'=@k^6XG+[>B5S ɴn d}gOGCNz]-1XV[T2 /Xb1`,* ^d0Z+z0z6y$=He1ӓ6'ԥq2ؽHc&x6bx>6,2V~}{蔝jH09^?׾? jC)VpLXCY=[S)/J߲BLxv>!jqPXmO5A4ީY7|\+ 51NC)1==[Aj7菡QNUkhTRLo*cQ_XK'9F:q@e# )3N$pH[DAO~|*'T7*z!wG{ru(5VD}ػw%B2'!לǐ-AJ䔅{"fhwZvivT@a|*"!Mc ]R--{dIL',ҽ[6ϐ{$laytf%. ]^{9ynް]לĨ-s:y 20SNu\XQ> F)\+ReS< #&ԪwkLtN$~pS1ǔ_ʠA7m+}37v杊PD:V j[~ f;;\.@¹Ϻ;-\p2^9ΘOG] &|9)e5 xeh[Rb MS^Pb [1;yLVR/e6O2cR"⣫#nzi%k֨ס#H^=/< 28t%ı$ | $]B,4r"F]ey2[{(;/D {!r~$Yn)t;=]#ԻbOd0;nL #M_хm7QegGrfKq)sCwJCU 84=^}\+*}}$A0kE̓J0Ws4-0W|T̎결ykAnOzY`DL贇\:ޔԅw X:U蚯;S!EL/~JK8: aSd*3pR0{ʈL7[V 2dcH3Rm, ݛ],Cm3 }5D*03E*.Mj}YezȲє`Qgbt -o].[ApV&f.BRzES"j K i+%"{ߨ)e3| z<;9q E=^&09!6OBKr ʖױE$U }DPLC{X6eH i ?P7%V/@B$ a^uO8yT\F"U鴣XF0>H~aRp\|ej'XYi/RW4ލ*]r}}o/OܨCK  h5nqFP1ރ^?!dd>Ip__[1;Oxú @27oR6%Ԙ5+.GhvK(ն6{/ؠ{Ys2;^ΣkjƜ댰[0ٴ #!İ,`2tXH3i=;4lhi%f,p9Rc'9M&]I4ڋR3cmŚ,{ Aۏ`628˦tn{`5b2¼,1KVv4+*hPGt RȸHFhXS.Ɇ~p-sD1ƺ0na ^$<5k(&ypWD[ _77ЩSI 62sYQ͉KEe;eSWHT ރE|(kYJО,"[}}u[B,bۧrF&t!I]; fe_z e$a;r*wf_{HY yg9:Q?B 7)d'vf+(ċ#8:]"t=AEf+#{!ohJԀ dĹ{ѯG9Y̴)jî ޿}9ª;B d q({*N88&m*1PȦ[D|d%ƐTc!Lj/;M8֥$q:is44c:r*V[%_~NGgߔn{0{zHGJF1xe+I>YNOiPDvQxjRpAH $MZ5$&o6@:$A*I"TtfNIt {WY(ar'0eNVUګbuA,JURPzx(Pa-q@pڷu:O]K:pvycwɏJοV ;)8u sʼ! 0LK:z .n'b"ܥL@B+La+5<:STj`5 3C%i'/K!F95;WxX2= qgPuH;(w !N5Փ+` T&iw 1'IӄT{C:T]e= KRzjjfh"RuՀƨ[12>6Y:xb7-ǴV .}p_5>pwyJ.a1-ݒau䲥̛þg3<KEs'߉2JM 5@?,WR@=%xDz.PZ_1]MPΠ8?ĉGuB t1H_li⦏\6l";Gnu><Ղȃ=r}TU"390+[ɭ6XT}#d\,Qq)ǿVNh5E4RCAr-DwX0w`u X!H |lc7yq-9 3:_hޞsCknTMhPL[d<6uc˿qFw$jbQy2^Qvz)Oq=0='͙wm:Vv K:f>z1ނ\yxͧV>|U`Nsμa&,Z@۰t"u{OEԕrֱK?{pwsG3^@dfN.n-'pM "GtNbP 3byѸ3mLB}{*p#jK~V!21GxTn&a``U=`ŷޓj܊r6&)\6TFG轠?LIx:q섮86~3{^nKEvYpϢ⸰qtgɩZ 8pˬJ.a%=v6J8|+[Q:ͣehnH'H81$n)K'B.˹cV+Q)5Txō?T=V=,̧lгx?upjePx)$SkԎ!rj\@L7T:!4oh 2Z*x'+W0 S.&QŠO^LVτv4sld"j\ r;kjVS~BcT7Z`bcit,Zk hrPn LʯK!ɮ{.v{lʛ$2]l~Opt+㊈J0fET >:[~0"h4 Y4z9A kcY`^;2ݵ-1]@ }b^:>H7 Gm b Xh"MXNrJ즕ߋg2b@K?^g+KPOmxSy>E|Gq",tIfJ:IQ0ўJv>ܐ0ip[V!VR2]k8k6 HD5|Y=2ǐWSM{|#'FM!\Os;΂#Sö<178X~Kmp%Eʂ d$gQ_TfxG[D`WKvk!Yd X}OAF$2$2J!GZG^ W&غ9 H5;hU(? GYg; V^gݫ7Z1\nVL+̝eAi_+1;%57-Tśnm'.,{뇛 s$3/>,?뒲otg=[.0}<<}ͪw|j;c%_ k8qp+0=?묣ޙ_G"oҡf3^``H pf>` , B^SEvVgA]Ej<r6rWQTe5~&@ ;XձaddАj+ra/] vF8Bb']Á sc;$=s닦,ܴ"2=ׯ-0r-FݳU)x+lͥ@ܯt_JH^Rԥ sŒNDrTmA5+dAqB\oZ0S|un<|w[e$|ذN9CoJfm<*,ct} |6mUv ϖڗ8sU<{xSxdХ*)GМ=Q!N(S|gf$遤^:$w{H<9LJx*C4xѳП_$$t7JftL Vh`>eCTsN99;МA*Tp:M$u uagٌ >N?td^[pdǪNk? FQ.Rd]vT PgqIg_ M( 'H@n}&ݡdo\$fVjF&glx4)*9f%[p2n\Ñ Ho*TiBjљC>Y̑?JcҶG^5UKΙVFy˜Gf`:4'IT r<Ų(pn,L L=~˩z(HӗeOcCaQ,Y ViQZ.P0!܈@ՓT^o fiL1sA@OwY"&-B_o2TIWn?e9W2"x䲭Rݚ>JmǍYJ_0k3d{lm$ '4""GgmdѡĔH66Ds2zfPilj ̣!2+==x8q0ob>Dz/@(r gPP(`*2ToaՏ<:w{:t>>C=M7dR1ʰ! 9Hm) ZGvdHLdEM r=KI0>tsm]cq|UЛ]#ǏL']ݶvͅu'U+[D59" I|>e _k{-i41{He(#rX2_5vڶZɶB]cuR0) 慥TS#xHҿX;Uhau|6N{)Ha}V"wB^z(y7 2)LH9̈́ N@=>ZS>bxigGt K[(6vm" }a[sh\7 ^ S36ȩT>Am_[3IqC=cʴO9L2# GUQ#NmOCY%I4lji;Ac*M|(py(W7))u/ڗb:OWgo>k-ʳ*u[N΄jF%(/:=I:#G쫘IZSU^uP#TbɁ%|s|TU \H`/%D}o꜁ nq׀4J4eI\Pe~H3 NMC(3d($9/Dk(ci`oJ7eU =l#uT3,J dg8GoM~X u_H MȺ:_!W[0[58NFr9(Vi5}v0JMZFlygBْ1Dz񠄀u%x[)| ] !x mzW`lpra-һx{҅I p 71yBtoJJ~r?vy)>#7fͬf]>T)mQmo-^`Kf2WX8vK^EKnʷ8 aCPdJp/ݽ^(dQ\ѿfc NBũaDDxyVP3zG,-@ XAϴUAk)Cc !$R4 G:w%AU˅ȹTD-|;dҐ^~i.+Rę i:Cn (Vl 5K"EN9uQ:|O3yo 0m/ ЦTd8i p.y$7_^3zC]Ew\.ryp J J9%^)UfݔplEʐL󁈕I)R֌tL-@z As̄L7eA>'] i7GJ?宔cI@RD( (iƟ:Tj 첱"f ٨݊v2o\]5% pmp\K|*3>ZMLfJ\Q(DMX jN@FȠ1&3 ;탘v=[j[֧:ޢKnvE"-t[+ Vc9I(@Pz3:wbE349w1O%!P2rm&1At^Ih\@o׫<F9,bCUPidZ3;() 5y} 庚: UQSIr|^7%q?6 hݕw'hҟwҾf.#:|z-"SnMݏk#d_毗-XxOU N^(=g;gp=[xPvsaVC\^94FGKDgd.-x{kp]?8Z"rvv .UQT6qMnR<7qn9;jKÝ]D4 ~|ٙKGl77Asx7 Ly2xd~$O~,fUa$@B*y<^Y(,=#8VFK|b7SŐ 'UӗMkO9Z !97nӍS2Mr{}%$&\Ҫ۠1x72˫bc|J~/{ٺ Q5|^su@C(+cΆyEPom!{,Y`eD1i&L4'QMwb?F:vGe~'\T>ڈun{"]SfjS+L#"=5,&u<`}AxZHr [9CN"<я9 EU`%],eܥLrƩwQW^A_ ă\o<>ا" d3N< ~ X%#hBD/1SYkJ0`N*p5(9ӓ0Y@o@!4px|8?4V[W*pDmOيOX1_2}k>v`9DZ͓@k0{V-Exӑ|}W%!ҺHh+<\Y'||=7e%A>yf̔pv)eڷLЁ<}2@Ԃ/O"cSYCe ݞ^c*  R㷮 z5ht@PY9 L<ΏCۦDodĊw؆lqRƒ2qrbeBdf5U6,WlT!v(Ywj`>tPÿ7di dɸm*rxgH2c?-g\Re_$}a\H"p'XYeAG>d3y6=p&bt^vLjָGA!xm2ׅ_|Mv$# ՘o?Q3j|bɓsKRDPQ jtg9q[ P}M-`Xr̙Ot4!=49s? 4qP˸*ŢR뜅2Ȏgvrt^f D)HP6d%̉/.5 NM63"=W[G􁿩87]ElQ,6l 8_)e5"HTY3K7<"6)b2i-ST9!S]M_%g;.+Iwށx"zS ߾KrU(KU\uZFs 3#Sܞ4M⃻mMeh+_=Ɨm8ݢ!(â[fYF*(LYx_~3U=ac5O9^Ȧqx%_%Vtb)63KZȇd1.tR!tʸ#êSoKga L]VY>SBEt#o )lJJO #/0o4&Us mykWi BZ0橀v-3d~n `^ʑd e];͙psuS~`915쵕6age* 8"s~e_@Iߦ{WJR⁄A]x؝FL }3p V]I%\ZdE%Y=ⷋiE:Bi q{uZ\d8: LP~Sse}&CћD"u^2ѲY?2\FmZ-/(z aU3> ?P'2uGv.5%v5Ԙ ׉/ ;*Fl-BS7<=Xnj"gcJfyHĢ %5ց6)#s@rq gzHó .-M"7nF;4C-z?Ԃ3@>O@xw:{XMCABRʀV2e]55C˦XF=IsTJ$.@8oUȳ^0QhkTAn̍%(!b|::[(9|Zf,02ܚG*ůB8.Nt~!rl⽈Zuʛɘ_c9eɫm+` _e߁i;S~X~ !ZɗK?-]1#y p ! !U4pP@eW#釿|Cg#B9!+&pb)!H^dG` O),r!JU`֤QEї `#g9ݴ+?ǿ;1#x,~w~ݕia+'ko'e(I0MnƄ(kj 2sW C<' ȨPX cD0# %X[|_#}$l,B?'2{l?k~/TS(둴vofy绽UwxC ܵG3,Tkf]&W=Ƞxن \1` Ӻmi=FL-l;ѩ$NA1+>]AX_ӿEJ(Tyc&gS06ڏ>Fٽ}-,/GU:Jڎ\\[0Tua3zQ_Ac@z;GmEƏA$fq "g ι}Hm8Lngԏup8=s]92< ߸>4+.(gHsxdۈHʯ\4q5Ƿ )%J ٙQǨf'4YF-6)eo|Og.E|*uY֌;9%p%R$>\q䶳"lj e`4&Ji:P.7 U"t4DN6,̻[3;r&cx$tOOj!ۻj ! mγЅda;WtL$Bg3ySZq\uŽZWxl}wǸ)ЍOX)1MmfO.j`r\"| lIP#XU]uCr|_قĔ.ґd{lzbzSEMξ0Ugڵ7]!\ufw,#E.,;9>ByD{tKһV`Ҏ(@-fd7mz~q"a$JҐ*K3@d\=ټ$ bCoָy桍*MBj'kVTN"`ZcgԡFf|᥆Ybq?JZXЪ'm*doD\굮NrsQRř!mM{> ~#unkt ý[Eķ&<8VR" al@'Fj0>_{Ebٔ ~tsFiq!ӣݞ~|U<~Zɥ&~340Z7Lskސr ~#zJVj3wOfPقx~lbDIY7Z64O+_׎T+ Vw]E)E>3zesOᏨ KfܲwS54U{'tޖNϿz5@X(W0CA0UCݮ{Y _8SL^sP,c X{p1xcY&GNPxw0ThhI/r"}/0 . $5[D BS/Ɂ7vBǗ%q8KhjL5{3m8w)0A~Rb+ mP^gWe#$[~fKUcS*b<^ZL2x tOQ"Z. )l!өJ?T􂆄$AǦ2Wԃjes*S+_q/lqdJhː~!.`;{"Y&GD)R¬TYr.}h8)uՑ-A0󑉯3 L0LʉE(=f+mrԁfy&0kzHӞ{ }1%x}"`!o }U=T*=LlUa8i}Ga祫XA"N6&RM M[X] 7"9ZS~|WH2F^y1Ğ-v|co#Ab~)?0So4 M-/"ϻIG*@^hEҖKi2;p(G[س~5h#jcݴqvQ>-Fxomo!P5LίC,[D'pr⃖ 0=5jnY|H0(a2 ) '˳(-n r;iY۲jaueħ2#Q!ݼC8LţN%Ex |`PE"(jċ}Tnk*Bp?~!?IL2*)b *K$Rf5;o*0khO޲{ORD/^"a8Xǽ6Bݧ5,vJ ! 3 ۈA1|fΙk Q~kP=(`*an/%˸gV݉c8CypG`rj-W9_sS) TpApboc=@#.FЕt|G/,Y<.:Ӑ B.#eUѾܮ=fw$`.R'i:FG2Ƹ(3-w.L6b1 gO?p kT܌S:=mh,CoC?t+ݪWk__.V4=}*\+%ց)4(TFmA'Vų^sI+yǺMbvN*@*ڤЈyIKu|,~X95>Y 匀B0k(Fl〛 `[Fö}*TոB9F',-ӌYO뽨 jL??{Ϗx>Nn., 4[BZL /Go(!]M9@>s~-A׊32AL(>UHaf;͑YVZ|{FMӾ^ts`dPҙV]',y҄eiĖ;;&2<+;2)hmةY0a݁bHKiT4aה*A]EL^~=ݍThK#p;DzHg"Cq9G=hjq"&Nw~z F=~4PHqCX5FlJsTjz$%EuO{sg|! Sex((oRe\Go\Xi! ќu5Nq#s|"MvxYăt-rQE>;Vݮ_0.f`6ʆuO<9NG>z8̤Ljj츳^ZG;E>yny4 :eHgRo4@DspqO&C+5_ K^(Jϼ/u'փ/IX r _?7T|+$.`f-UJO('/\X5$g[P'B -K~i֣Q^v_!nP3c/+r\’ XU,= L TUǭbfT~2qEQP.nޛ$uI^5%Kd2c}x2H< oOt 0meI|+‚QnH<s(߫CݱY3[7 K"?'}pikFiTԑ Țc92NcgAI^̳^E+z2pup83" | U@ǝ3;nRx\oԹ6Eֈ1V'@3zX]7H:C[%(En^Psa(&@\C=.khmrp Ϳ v*vfUso{51yCݜvӢ) Z!{0L?"9$#Cd.~fUz͔@c Ь;SL6CeJlD9+zpsS_*l h!*:2s͗]= ,w'7j;<ΕP?uΔƘn\dul>tP/G'xMդaA㺞ާONGZGB#a샿kΫk%!Z۷\ !՚syiOb10"Yg6ҤnICfGtBL| 5 ARґgdliqƲZǍ"(VOCPN#`tr<թֽhw.S/!Ot:__R~.| }HƆ u[^曼7 ChLe'd/eiB&'@usim] eL. X^#ޯ^ Wq C)^&c˯b~-K d3!A)MW _+@+Rx7A0L= 1WCq2.rS.y|Cq;P!V^*Ʀ K9sy-zkhR_TԢOT^c!wecah^u+U@ ]挢D&i`**lT\e8\yJ}+T[g݈!6\kf1ZrgCN]i"ҎTn/.!sœDuK#i| !殜f7j 5Ƣ$|UELۻu{4LVȍ*-z&½#|7^#,N_ل1;1xѐ `Ij8ST:1>|TҪc0J~S[y.fU%{v#=,G# Mx7g.TK_;ݮq'gl_wO)17gHhy} eqoqռ$蹧l9Bs1 g"s%T+%hVb%D3}Ƹu$Q*E˲H0Wtlυq&K]$=_v3 YnrB2ȂPP<&w/G]}3{ɺ@m/2 ca ? >}uߐ{V*cA5DP~'߄hEX%>Cjiό 1fɞL9J|^'{dmwbmAzưxa=5Gλ ~_tZ οQ5&##q{ۘ;3]Zz]ڠVAkonELM79ߺ@9`}+ u,w93:wS!Z@(y(Dт)}SOfQidVIeкXY4˴U8T[)hf4%RhXcV?]qzTr4sĄ>1d60~a)X'4s8n^Hh71 4 -p|@+|1ګU2x\ShUnyX: 6HnZdIO2/oK>ԯN:m zQ`3Kp5g)Žx-ױ)͕A B=0"<2؀wbh=zM?CaN.횗yq}=dHޥU"Si0\3,Z)bxE >$&Ab@[4Ĭ<" uOϒOҗݝVpT0v|Xҥv"-. { X5P.&cyl4LyH IWi0pj?4Z1^NO QvՈNG쿰V€#ؓ:Jo<H@V'՛1Ѳ$3aZ*<w$: !+W-G/-dMML̙|Ur?obBmK4pF/ ~ʨ&{NnmOfCsTzPU#mi?o@@+` de o$p$g?,FH1B 1K` .MXZ"IowڨsN7 eRL)QTb^&.S,"^;vaL|BRQ P4VϒvЉ.wEn$#X!UYQ#,r6k dG1$gcO@鬼x3iE!l X J~!X , SGGe)Co@tFN4ưR@ZPS014y W(%Y8J!ZB9_29 oM+QPn1H^OPh16Tg^X6A[o6\ݏt NG7"bNIqSJt5/~#GB.PfVf6fM~ܵV%\?Ԅl2lTjøfjeg²`ˍ`d4{3EҎxfyY.eeCt])!NErr'[0𩔳&?ǵXTc\wg)T,wEkٓ0MH0fO.1qPͥm@bb'9<] _Ma 3 Ԫt5{ƀx+FkѰŪkv 9)809c소˶{>;9ۑqKg X1=V`Mi#{ Aq-tRXݿ!ǨE:E]ek ֓d|:niasC9:džg#!Gوg˄嬣nB3{ETyKa2Ӯ%1GSarzޯT%k$[3f̆wy]]] bʓN ;7|:-:ߖBeU!xr 5!'s&U;4 \BLXG3tn꣣ѻYwlNf=zb=$(%UuBiO4.IUXO*}pk:Oѐ$iY/40%b Tė?6pg7w0ؚ/4LZ*9j(ΚJ@-WGiƃiH&v!{0ө67Bu$Y*}J)8~ߒ]ƭ\|ibՉ = L84񬝆qI,VǮ?3)zFe2~3cʍ͋ B%fP:_3Hy=7VAKI}=!o rT<3PYF!%V\[;iAho ZDɡ}LE^Y4,CPA7&7,d-tY$>n3Zme4Jaz J7F CǦgar7q mףjYf7RXױ}$';Qx|`f]{EM(DrZA5ȑx.gn^LƢŞvVuPyE{1:ʃkoݷU$i;Mwܞr(;3Nhھ4[!EBLbL=wgJCHR=& Ca3Qrŭ=b<^_G;R[ۀ qlw!θ^&O"p_)c:—ɕ Cn5*L Wg<弧L|JMp*"[XFu-1hAGHW[Zj#*rycD'b; DA!& ߦU7yp)T O? MK+!) Ǡ?HdK4N#]V<3HE²10}ɬWT׌tM>CWxгrU{oE+萂:/**}b@f#hf ΄̼ͨՄI[i>j.в|N4ϺBcNovxW! fya8=]-[T_7`BB~ަ;Vv{> o˩k%jzQ{PvָY 3i (9f&!>9d͞nx[O_޲͛D)Tn_} $Cp^gg`l׌yǢ2(2Zr)9nSEck}E+%{zRc1ᕽéb9msucR7^U_F8A+y>^Rۼ@> $-X}x6q[V̮"Ş#c 4]6Q[S4AjK|kXHrZ(C$vȹGY)у3 D,W8vqӍH2Nqˎ* r%e0ˉ_ -k]8dd^唧FqeUW(}ڎsBX}E'#etqܗIdۨC=$n2q 5r;D}}2\T h+/M\A5+@2"β4Ѥ9oF? Wpij1"s2g_N4G(hCq y/|MP; hVے䓉^4EE)C$)l>ljI(4@g6D5zP :t Z&1tDTCvW`&Y'ql: $S< P wcZ:'r_ۯh3"Cl#u?w蠕⩆3VgG@[iAfa8<(@FZ<ϫS6xaHMf\gpMe80Xkf!:9nTd+n0Ʒ5 _!|{e y^0 PGq-PM~'*KɄMe|x2G!dA/T?F^ rM~CsBzyy3ݡ19svS 'nt .hvʗM sUsx;g]C=Qsm\@^n^@4 & J Y$E]~&hy,@D .OK.5-L.c=L 4`^d02<%FGgkrH/{-E< 91ݪ-|;Rr_jTm!Enucs'ʦ?s"]ZIfUߙ;^Q58FMS_ i%iogO9@'uڍ*nY6U^ tOX_.+ /zj=d8yOP_PGH=[р0F2i&g7y|VN*Lژ=O6*jRVgV56B$ ˅[y#{åIat8G"V)ȼ L"m86>V ]TxZ|{*s{77sf.ʮPajY?LWfVrsDv+Tcq wiԟYlD:R!GSū'J}T>MLA7~bUiV+)2FJ[&jO_'4eVNl0  X~cL>܁X4@u)ԁBkSQ DCf&%EB8FRq ObLk&SM6Ň9QneS' ' t#>Vj ɚn*^TrxB:#RFN,͠Z\qLv|aHlI29ֹ0D4Bk^!ỌQy]߉+8(Z7^%,ee8 Wt9䌼qGXˢ)B+#C,Jks7GVŦ$_ (}R/H wYЀW^rrU5h8| Bq QE ~ ?k8&Y4Ϝf47=.}҉U +3]o &0֭j6l wHVgv9K*0i`zK7' ͟zqEBѝq_tab'=<x{zw 5*ŌуhwkX</:SI\3,XDP8X& , p2 Xm6b,r>3-U&ߩ^'y]tO0G6^-#AfC_/kè!S(&%' tSp|N, zx;ٔWhϕUBM~3Cp s&Ѵ/rJO(qdvn:z/\Ϥδ xi6)9'J`x_| f,B&NR-UvB`V'rJĭ^}(Zef(N*H 4bD!7X?ފ.2LߑrP0._ =J_E*hlRDsZ_dZE3A/LT [S7qbL(f־'UJR/-8jL{\.f y!Q1URKƐ)KW`MФJ͆#ƢZ-.ݪ(#EgJ\Z)L'78ƘJݰԈ}̻F'ckS~H!`*f{'qfvTG8=|& cvr IxAW̶}vﴷaR2^w/'kYRMb ]nF;CYAEƦ ^TztBK&ޣ_Z3>ßK &oR]1'/Zуw4\x i4O͍4JYFK%bAeleApwU+#H'3޸}]D]M!F5cv=Εyަ0 4GM' k/gSJsckjyw]f)̬%J k%}U+?3\&q1yb)wtّK6 U2];p:}acgȝ 뫽NY @tVbWIHR2ЬN,"@zĀ*1p [RJh̭o:tbo-&y (wH\F]RWbp)R M\HlԜuUXfT\*4mZL,Õa=GjT)kec ,5:# dG.~ٹP=,nSC8y :U,6jOo:7*?] KęIkP(Ol{_/^qa; DR j*11*f9LȐo6Ͽ4Sk~_G  s9~PئGXM Rfˬ1(g6-Nq(ֹA^om=?M#V_ʊIRKm;DMmiOIJ0&F/~u B+\w-;q ^\!DY,un;+jSp1}Y0!d-w{ ɼq9o! iFEDnFt2j癝g?lN [1]\8H.KK~piFOhۅ =d/G43b8/8D?%4d%/No *21k](j7֖yb ˄+-:NG@zYV a(?<&bUh 1 ycQ4 ‚d'/prYZH(h~#3F}W"U-N6ю7w+5vkG*K1fHbNr(TKv*cbp4{[5P ]YPֱ|i2a|b F.4(.WIm A:]ڒ8Cʔm9+ P`T># *8brnBP_tcWdB`&IA 1聃؃0u s h|1s2і>@;]<}XO1Y`9Oa_;bͼ^=NC0H|Vk*FϜ](,qEOpm8ݼ ̱~A֎(T'>^Vi4KݴgIo`5,<"e@Coh ;t ·Qn۾ê0*W!]1r#ϑSX T+zVrw=I0r6hO1csG@C ݙ)x+{K;$/RZ+.zq~{~Z" l;L)'\#{'8|/ ;@;d:}EB?M@>JHv˜z{S>3cXHlӠ!C8Ģ\/.aEXښhh}[Hu|ɔ:IMPv%1b-gPRWA4QƙEsrU& M{ wwчޠ|IEK0rnsĜyRU=ɭwm;Vv<F8' 2pEasMf jYɢTjpQk5Ȁm,[!Xk9s; wSޓ'lE9 ('ashb/9)0C7*f5e>63Hb :jf}$wKAaG݀0"!ޢn>%Q'y ܐZ]F-k q<o's?dJ#qdq!A8G[NײƬ(>m2 ZpgSvܴu~: a H~@qJxSMppʄ,?NY@ l֦p򵘻=a|fk8%Vǭqџyn qx ŗjW?*'9H,TgސH(͙)dEn3Q:~HmjDLtWY58\M0-t_XGa撁j音CB&[aj.I0,/&ȶD7(޻\hb^)BoZrvzA`_j4N&}0?Vu~xkM!gն^A;aaFFZ堃im{6Zd:5W6*pY8gH >ccF'?mW_* pɩQvtË`F̳聏@J:L嗏-}0|M [-sKp;bňHXnG5~.K;T5h±VWj%iGsxr6=[.*Ό_H zoD@Za~ CoޘRC*Y҉SOuc5J4% :U6NhI7‹ϖ$K_jOZ4yC`bfF:N#)i*! B^XʹIuҮ9#{4Fd'-THroR)̄=Yݭ3ȈPbU%(<$T$g+J4%s˒P 2F7= a_LҸ!3.u%ZJLa+s_]Z |T]*tde*]eHB|.g,ɱ>9u$#K;z=ză;} q;X ڈK[PL+To`CA*3vT:P2gЛ5s2񠀏Z_rG)~ _9XPؖaҗX~+#yA%e3jޢ Xܥ}6 7Ickg19]6VRn^W0Jo.Di`GGgx'Nt)B: pvmwi67&”bn{*CQ !.ʹyަ8_(Nr&mwP&UAwMVG%nIAC&!3xs)24@{E^EմČw*g9sD6%1o_p2C;\vlÎ٤OU:A)U2{RFYPxIkmB&q+䭟@(d*'ﭥ<ƐmD>yhقnNA/#aH~DT7P?btiK+  Pr>%BGO. /g";Enܼ[S,E5c3n*5%2VI7lgБnrlt~$d+s91FYZX^C^xҏ3\ Bw-P`lеa?(\b}D`JdAFU4{1= u9!"!4'(\%]¤I1纴<|xlBXBx|/qbT% i"!Á"|}y"q կN1kf.H,LG!ynґ~ E Fn.t%%}~*IL-~M;/H9}ߨs0i0Ure*"!FIJ4S[i1oú+L3Hf(Ѱ=Ÿ:0k@8’TĚ&p>1l>oԿ BЬKnk2E#:@ WhDˈ4ϥvz~ELtĜ)3VNt,IPӕ=:Ւ5`^ma~+ewjڣPLבZ'-WS4)/㩸L,4;ݦ&ݏK>IC^ o]:1ݡͻO{m74VhQr@7%\ЉWpTfH`O jPį_c[e=eI߳|?>nmB1wPr7:Tty~k]3:778`6du+oar2HŰ(0XW(W]NY3\jLFIVeiTHlch;bﵕJwyy#z ׌1 '\8u!5S%Tk%qA2rB}]F{gk v uzќ;ǟvwC'*d̈C:K`,KbѺf"x_ PRԲ Iʌ=6bifE[9V:|7E닸*`^w'pKnk#r4WT- ,0g5ɻ)¾o~Z"CEK?4W>osJH2n)Xxjog- ]?*jego/ 1A!(I) w;3U䮛 %q/L ]vLsW+-rϱגmxooO b "JB^M q"mZ;؝ '.gyr pCOX02h%x[kgtW#I|Lq%x_+ |~L=WlkAvo '! X n_dsAὔagb m;\,LMr)l/F-m8uMܜS г{R,5KMc>WK0@K6Nӏq?5WTUCcZb#·MKU %ɵP 7+Q6"cwu[5;+@(&lT9VZ'ܲTu4>O'yf' x8=+|hAU(SP-o_`ZzՂ0uѿqMR'vx11x@*uf!Ǣ:dG.Q6Uqv?`DWm$[Sea#h}+@6#rsvAWGuDh؄WEq =wnfw}ܣ$ۃVJ^@}!KĺR:û% 7^0(I֊X &#%JPrNe҃%&؀~ њnM0ʦqv_WT%a5_28՝E-zIS7)pE~>.D̗+?W6uAɃh=MԫV0lav%PsqY8ߚ]@bH O<w{(4!b~(}|,]>ipJԤR3s~7Ud(Ί#߅>aE~_m^/Ou|-lot(cUVMGVTtD9̎UV >d/~I3Ŏ B h»,C" Lar"#; ss>at$_Mbi); ] +F DW6 U\~_\>/N{q3CXTh"2 : QX/tO,E~ZДsJqjXH=ZuYxMiVբSɼ/ȝ`-NUޮ ~LSFe!V lF _D;(!+[6JA }N[kh`ʬkx]{T+ؠ^):zӼz6JM#6h)|u5^-x) 㣗È_ obCJxVA"cYRnAд܉XPٌaN+[K2)620(  W Y9#J#+_.˚dk:Otg>Eh sƟ|_n` X 5te]( V(J&޶ BⱥB)JPy+y!  xƫcϸWY&oh,D|c9;2Eq- X;a*<-Eu7%i6}պTGl/&ȿ^ N _+Ka/>@?1zGE+.e -#\|M7X]qCܗ uˍH21^;DdjS V@Oωu̗G\g1B-l3>-Hkԉe[C6FJ$ɻXrxeu(yޑ 4k\7c~ rօ]ڻ)vaL95 LR;^JicujJE0sYC!/$l[\<Ƣ^sVsXֱ(W>*fm\dN] ݚd,e]}EI\-\ h7 Zg0`{w/B7lCvD=1Z><_ }ugJ]=:'e4!{ [CvSɌuKT=`f7[0pѰ k\: @|}_!6R]cșCIEۥF%=l~p8}/@6,8+4x:vǪ`i2@>7t(\Fk?f`#{7@'MJƺ*3 3~kfZJ(`"[b{l[@*,}knRIebMN$iuA9EX*`9Krݬw#p|g/v56p#g9LSkV3xڲa )ȥVzwor`Q<=0c qæ60(6l^qTZy%`YSejZ&$"fjϐInoIX%O NuXRt<3Rv?jqɧu&2.#ٌ~4m0z vƷ 3[zzN\n y^!wy&8Q%j"v_)KS8 -X1m:<_ט7)S}vbƌ~.?1y@?f׾jnm+&js슇z"܃:HwZ2$rgs@!^DA-dːa)i64"mہ== 5bfaebOK@X`\!O?4^3^1_Rղ"}Rw)`fHl:ڀÅI@?}ɦ +1hZ/YJýV1(B4-)7nZ5| l蔙 &֜0b?yOf[I*p]^eu] $*~gkQa L^RY[_N4ںWֈpmYNjP XO4C$5|16/"R|W_; -ЅԫMAo֜LۇMʠ3Ҡ"dz-.esB:Q˕?:FG?\ǟ-QsaL7&Q`GfTC$!.GqF[>iP3iS:vj@ }e(@(8KV/O [og|[\l@ Eؚu$bʄ> jFZ(Y,.Ə+{8|bS@bEq< n ٽM=–ڗixghAɮ Eqo39?{7vk?ZnPIinBӜ޼%'jQ ȰvAC%tu`bͱАfýMf"6YHAyTGQ?5gvxqUQGH5wSz6z*aK 3ı[ƛA5!Xe0: ۶VVݎ-ࠩ6yy0AX9ŀ6 Lγdfr ;H?´W.%c(Z>A2 Dq<]s0Wfye26@'6H1pݷ6ueY\TՀI9ū[a(5t+.PK͈mډ$zV@n2¥kȄ bSlB|@ Cu[ijݫ1TddbLJ/3 U?bSluցnOu}腪pnDw w@6:]=' ]T*E;mnjt{3ry-QjHH`QIC8JbO R#@{rڐG' ,[Wfh_7|ABS^G4q kH3Strh#j_K@l%h]F cSޮ2-{2N +9wը0]^b].?=-nDD_W2*oҗz^>9B9IfNu%F6-Su)jˍjulԾxʏ(wLVB HyuXYzVGwИF nBDZjV|ސGrF 5M4/>3d.3wu/~ duSvXCscnGX~)w.wrngݍ jb1Ħu<0&uWǾP6x%OG ;ǎ7ç=|s!oСCQԂ$rut-ɇTH&<o r{׏sļ )ī2..0( g._I5Jeqwxf7o yFn'd IMp|@4ϯ.ޔv6[ 8Z*p WF5p]jorȺրe'Ƕ'rv{0!YR,^9 * 3I? _d- kr PKxYm0WmQ:Wn{ٜDͪ"c2 a@a3J93A5JT׽X`cQ9qՏ0 vn&}BBCry:,w!z鱈g+8MOjڬ X\ךOc Iߐ1i`ꇚcid/n},VVL$fyb E Hv{Fa/WQgJ=*zKP0yZ(x0QC?_Vk&h>2=Ɣm|p^{!Θ2,xc4A;Zo~h*@՝mpN_,Dc2ja$Q|CUJ뻃:'6,ӟRnvz[γ~uo"7._vB>s&~4B5_\u,ʜVX=̗{hsg\D'#srsIdA/_Dԑdҹ-v‡3KGZ"<<7DŞc{h4nȩ$ VY_n2!kqh|icFj]^-3 SMB&E_xBD6XFLnIc׬wgvR[$[8Dѽ&S^xyvz[H,K+IH(pp߮91FUb+gO|DЮޥz-mf@1EfaAz`ϥv;&6_o+ G~#%L@(ޏc C^O"B20MvkZg]"a27O-hrbmX> -jٌ`IkX,&u Ty;{vS9x)_KPg)[GqC0o´k`≩v|@Q5@5v˽ \[鈠M-,оau-9|l2mOé2Y2/>Sљq䆵[#?~OGy^oB25d06OA\j-@ț/zt(iG :D ɪVyf+}A4Y/IiVɞ4EklSR\%#׭fY`kIX:2fig&k5,1u/W Nv} p Y@4;`={ LV|j5:Qdwa{'EI]d%?O4\Te^ɯeB|f&QUnձ Rwic Nl5ĕ1NAn/W0CvQ EݳzBJOW]> .|Isdނ>fTMV|kXV@Kw0=rl_M`.z vHm)'Fc,zT% TÛ mWF}`5we:MHSdIR+Xo3Ty70t`ʒ”͂$n73\ wUQh&.&MeKa[ qL=U4,trG6Ywela^f%8t?ko%cRNVS }[T&gTr%Qak5H4 rJb4VO:{fm*^3>[O7 c?wLC{}ZsD>RJi2R !$R[&>}-#Q*o#3Mի<v~UYTq =D|U_ISkK5%$ .sB~l@Qk] &Zfx;aavAA'_氓[`?رѝ5)|aio @Mwd Sluf,藆 j$RI]2Y:5-e`{s}Zt~"BIܪx]saUީZnʹ.tg'=g~iT0R޼P8Z` 4hC}2Fbl%?&ilbͽ,xkFcE/}:L6-C)BisE@*1/10@Ԝ4dђ_*  cǨC@yI8Y a|S`UbT i{4?`2/f2-, s rJ|RP}JX8b>5YD @wcj*Q8BL432am*}يڤJ #(O:?, n=~@xmb m? jD l(v™4 !_ 0䍅C l v->e]RH6Hi9zKe`LjK(ť$){}VoI؆98v񙨉uW:9IJ|)S-m=zWV,%adFR.eĜf(>k3ptD6nD63[lFSC7Hn vTKBC~(w(+9V券=})ѢJ#f~-|(aze*vPAcY4?5x)RuK }bH7f=[U ׹rf5]I>-NLi8Eo+ЈсE3O(#Ң)cUxd\T7AQ៧Az5!>DQ '?G(8+7 [Q[eirmRkl!9Quztd}y*`k9g=C98SeVNj޸aB*M#jz3eN&;|MP [a}I+ gN`~'+tef 4Hz5 x4eB@evyMώi6'9~lZ%RqdsBѰ4.%ƦSa)Xƚ]i+<`;6:3T*[V9[:j.7W;-:PG!=}Gg5w%q&h7t]LKw]\T > zu6GX*p&W4'13yg2LӁ0ȵ<LOzCB;X|0] ™ؾTMsFQ_+N\CK:|]4]F)8_KqqG ќNZ ln#'O[|$`+Y3J105Fh=oBf]iA Ղ^ ƇչA 2lHR= Vg#IU9E.[tS^ ~Z.u7.#+jTa(m1@UY8UjϮ 8ү;Q4JAWƄXf#М }}=!QξaRf{ l{QHώP4#JiLnbvjtG4ȮPbiLAJ%~.elF@xrxw yi MVfEp tB&tMZE_cFe^m|GZE]k+x(l%%B,ş?[;A6&?7)! {t/wpx .|Huo@"V8pɮ rpxY Ӽaw~?=RNATWwFO*p P=$"DMWwTIq;~cyIBѻ>0b(t`v$CE뤞墹܏ 2H2\N+졧\U5-$M"~Nֲ58ޭGf \O/_9|ƮoB^79#"2V/nj\gGEukTʸ 6YZh/wT(%AK9df_ -- ll /+~Y8SΏ c56P*K髕*RIF ; @-(V1M]x.Ft]a +ZQ\utl z LC= "sP g B՜/z:XR95@#NXdŧ'+NK*\}`~zJq2NrXw5APx%3A'hбC_#hۼG1~܇'PC?^8#>|EvY䨈~z/,Ԟ` ]Zhc9S*5Ei vg~:|[bU ՂUm *M%'gȻ{MxS5Β#$]Gˌur~~"x?n SIo:;Дl/=A`w6Zifd;>ig iߒQ?f`gJ{=8_Yƙ[)Pq{b>Il9XT-=L"VIc!0ΫxQѮ]#EJ[`МAfRBbg;-$p+|Z nsy[ QZ'\le۵4x~s%]?xbCf8u$oz֥t?FyC1ŇF*u 2]\0pBZ^YJ]xsjx80{Vt޷A`$]P~Tw~c9&>coC?YUPOB‰tvçIM7i˃ V@YY8M0p{UVppA &;ʼڋa % !? GI2/,5XduW,|IJ`_#g/*v% A %V%StM^#`EPEeа y9_ 5_jX4\CmQ/&>%>/<Ðv/Y$Ks CH2VBio_M!9Y1 :YyOUř umK=+̅H|$*g$-:eM3'>^s6 eoJ]Z2|{s@'^7X:&(&YTeRK|0zot՘?R&J֤xK"W3Gq(330TB959«s|"?,@V.GdKFA sԌ[s~neI* %>ٖ2S'PZb- an,VZ_د.ͷ-Er#>h! rFdekw"3M0Pרp߷fx7SL.{@=FNJ0~(y"9xUk#r W'IdDI`j+ u<{;0)۾3P92U ]d5*cRlT0)[ɍՋlQć5w a(G'дz:б8[a@Hz/>nH/:[]Mt-13Bէdnj toKX,2ۂ\>˻)=:0{PWͫTQxZ"&ҙ' *k$:Xh?(tG2/ŧә9JcqGuxs[}IQV|֣R!@wJcҞTU~rc ~a}C`\}gCb fZA0Y ݕUMät>__wd)ΰ‚2SA{76\7[O7ϼꥫ2ltJ-$K$ςv}9ws T\)HePv fc95R\ue3%{WɛݺgF1D]of[LRR+{̆(ܐ/w:ӹ= &[HgM>jib ڹ&FsP5!y#m4l\X (E"ao`Ec+b_'mlt¨8_lc|r^+7҇i$13Mw`fn; %q(Wb%Ʃ/V/ WnBSJ0W23Kɏ# ]Z߇x-@zF;WUE1eyf; %>{b si&Y5&L/=}Y9UD/2'H`!3E|j`|Q?YQ %~}JE]D#hw1RVUA>7W5SD?Ï;b|Ag7kH"swy( (\}Fn$ LA",=(crLyK4=5,(ZQ7\ᤖق&E r1)$6.fŘl"ic$)Q..NK#{lc}=.NRBTCwߥp#L.ϓt!sgG`~̥A*`Ҡ:[By[@"6|!H%?5|qߵ׶>kIto*' mCW·Fr^ŏ-I]ga3`c,\ʖ8yk̦GjgP  50ķ!\hWɋ ;7R).ާa 0xG 1@E"?4[[X,nK$LfbXE |H)s y^ťo`JWv3ZhE5nP_˥  {ЖnIh~8/k~ UR(t}w)nJ,&a, DR ( 8t%hf}3׆о#x($BNpidҨpn.`*&(J$xI: B.ddvaюuЍfaar^GbWKBn%W30y~C7ބ 3FS #'cU_d/;}ˇ~6!"GΆCq9ΑߋДhss"eTTz!HO`w%~ykܶBe<~ IeFH.bl,X- cA!2~-LwrnDͶ\12}*{x&OĦҰeIDFAb%D= |2[а(SZ/A{^ i)9.o5 ʾ'p$h(!íJ:*IYkn2jQB 5 C@u!D)6eX@l\V5Maߍ_T5T#$uu\UGͣic'_P&ۼ⁋ߨ=tƣWSqEpݘ5:~g"l4@]k_&5?j|x34+jpf"Fp.SD-^#lqb#d?T6w]|U1] i^ƪT MA{w YKN;q3P_V`>!4?nRQOd}+7Dsf+6Q"PĦ'3v"c.-eޒ."a5psYʓSgbN#s2ݘyN&bKCq0[lWd'e*GӜ5&w4%_"JwPZ)^VsTW7Y^eQf䝈b\3,bS(YpKMiEL&Y L, :ª VR?r9Rpxw$Tu<@O' H}BWb+Y#=!N tK;ػhe0YhXЇ|벪oeQpwҠRE\9L0oTc*'&-=a'I[\@uz3Ew&.sKc:}9BUFxIgVn4qMt޻4FlN7܀Sn(ȲV @]!Vv~CmaB8^{eZ } )b|pHB`k&T"A O@ YH!/df00& 'JЛ,|$} XT3k#bͨʭ5'NkG&+T'>3]Dt'|/kJ~r5IYo"erF4{IãyI)Z\8 g9 O(Y-2uvaf]8bYЖrTEx>*A,rc{>nد56jsowU~nV0^xӗ(ł=HOAxB,&0G.d[2}p}wq":4J)Zx m5Em{ 16x ɳJV6ގduv*;RǎqJ4y\-=KٮPnў ?w$qXϢW: ű 噖s\WXu}~JW9K#㘥9E%Fpp=4ֻn'J͌~ P/r)<ںwv\:%ût6;.ǸF5NcPe:4ՠQ %J㡷JV3~T"3A wZ珶<.pg6 -X"jDP>ڧ 6χ'>P(;O h7N򉷭f!P p k$wZԎ(ʅ/{%x!29;puabveZlQ<i(S$/t G΍._ؗ^]LZh+#ye<7]kѸu]=V/ :ӧ$(b!t8_/[[ ͐)Rj'n~\NzE"ڿ> +a= L%{߫FI7SuP8:ͰOҜ^ei 1k6B gHNf<›j|w`%x%cq4&!^^,r4ieM8Co9|`rKƸP ?cqy MW95㕁SuSD׃M::&zLj)x4ξmYB@tWGI<>v_t~Oࣂ pb70C4U#ϤCg`aj\Y/>iPV>^bV$>!bY3Sha`Md>F0uf |^qW.`X,~wiEЄ2͝:Qv^9E/wrdH1s"!b`N5 +ͷ>lDnh QOurC{o4]B lcd;^xm+y }^D0,Y NsJ]>\qӔ0QyqGm@NVg7WdY6O&#*ǛK@Bs勎iLLAXX "M- ] ޶[Ј66`oRQD=v=%)~zfQ4.a$馇VK:F}t c@ ki=Ì4I'*o) Kpm5ⅈ#_]% sX4miw}qG(5wjf1yBQPS̕wn?XY}x!ԝ&k'& 1C5v["P=:Y>S>u?S+kKt Y2d2ӭ\Hb\ 2,X^5y /q6GZwsɼnsiU gN50@Tcxr.Gg !gD_K;GFp`=n7}vF0A3畟-EuFxJ~_=[v\ bēkmmp!B|ʊ\=|d*Fm5(Vm4H4fGu1|*$*x@9v_݈9_˱_fH Qω3\]ٖʛR- okVsWnR4v*bΣZE9Y3#Fhh.oUY "P Oϝp_F^fB^*&X V2<|N*btc@ju*U\ \З9f&mʱxnEW@E#LX>&1\/6oZKE"z]9+lZ{y/{Ú}G .eΆ.49WQjk^>*UH&,P,.vyRD.-rogxLk3c_/M&@qD{ 8A0ROp^N}T,C:ۊR OeXNcy3~ND@ *[ˤM]UE/_ԞZA男Av[PH`( ¹O`4cw <Qn|h$9+亘ՕǴ%KGLmK yl!#\W٢b_&<7 `_m*Υ.uPa:W]ۊϏL—#1f ($m"E<8rd|?Uϑ$0nPB \?ӓJ$~ O6{(',SM{Jܬ!.٤91"d|HԀEc g6䣗UtLB9=t7Y'D^+ddk5^hj3_wM̹/x5.rob2o VU!NhD&7*9.u\F4 7ġOSrnd>>>7DĞ' Qq(吙FbLo˙.Yh/i;eDskt'@ '~d`v#P9Q!>Zs|L]jn. 8BBl*|&4bh)$w6^ql#75 (S^_AW"7iJ}Or+}|ik0ʧer餐'-B3NLrv1Q@Vm̹,@~.П:+AK[[Qrz)}&l`A& VpR3qq?9dyyif{*rJT_մ8u8Nq, :޼ ~1[m>ES>RSce6]ʓW"B-2}y>#(u;; %AsY6pdξ-?2RvuEtSÃ.mNZjFBXZZ\]+\g-vWR9 OE)N5 M]Y' #G=}V.};pj{lzaO nu,}#pÿpUIc$JI}X=Ix#& >%MrQ2Djv P8OtB0 1F(hR$ިJ7vftFۆzJ3k]]Q+L p`u[Yv6XC >vP?; }0D-ؿ{4gɯU ~08<90V~xoOr4B~Jɸr؄( UQ(J(VhB%cEt L7 A9ÄM %7Eai0h u>\ u临a#Q"JUʺ$vIAiYP6@І:Za:('MG2*`W[=L֯ r@A.;_%;JvˆM>HZvÔ%SI`1`e_ULX=;,O p%>`Q<09_k,7wU6lB (J\71!=1ť~>P*؈@z.Ƈ?|LP(ovfv , ׁ o{Ie*'͗Axlaz;G$("lܻ1 7d{9Ƚ*9=vr<$׷@$HΕv!Iu7  ֥N{/X^y{zfx9tʪ 1MX{1̟;f q-`*2WL>\Nl"Hdݎ69䄱fUo&}U=~j枔'6 [A2R1+yOW;<8ɑ6Y=]=a/ <=i b?DQ. iא}#O*SChVLڇ%xlM:IOAJ؝cX*l.\:U%Cd7] y&~?1Kj QQ>}I!4LJdu%>]aRGELG0bN3;}B*h(HOֲ0P*.zK+њ)u>E겉I3M>%YÓCR>֧@TQ/Zo&N(|!-FʙAfDB$>_m~)h BEC/֥LшF.3ZuP` ňM$*2<}Z-vu# @`LI`rI1vRY, d,N$ !6b.Ly/L-0\+NX%mc(-0:䕅Tߍ L:8L$W9T8x" QUo[_S1J-oMBFیK/l9Aș"6HR-xR2hM8DCn6GFׇC i #It׫Bko1x])!"󉳖yDY^p0A+6c%}0FdBߴ bV=u%c4~]rINg|~0ހld?RF8i=峒gC;g6um+ٍ7JZPv9mO>%8O6.Z֧ K RӼ+(ćR8dԼcu[fNECF$%?b`菸߃3Xa_ޕA} E30 Xvdf3CJ. 8Wa]P۾ ejV;2|3!/̷E$*Jy!޴2 { %nؘ7z A# #W!:o = G6L%㩃u=j_Qx\5kBAWpqPkaj62 sx7^8uזJFaCm xNd߷ڷS ٗo>@^!򛄱އ-o-N"OOB sQI5=P˙T>|^m+?Y8Wq38y}´(*& Wޙƙ#< 3%,3oIF[VFݭEX_1} ʅk`JMZ0euazluㅷ LokX3Qͽo'&Y ̮i׸*eoۊtbbEuW5o߾58։ҿޜl8(n&6Enuw3A}WAp'7eIuOE=g]$^Q+X },ah:ܳx&]<wv՗_0ڥdtS~Y.yi8⾳v0 d+|)?V-Rc_ǛNdRheY( W;[+\36XVeZe.aDW@$裭un1w  +_&yD-n":LjeEd*QU7ݕfٺ7n3oX< :dcۮ*:W6j|+؈A/m^k1l-:FLf!zD(J-4JߎGoKy6- ųtίz86s oƷIkyo$ХRTν4$IV%X=yD)Hя)m4+Ǐ~Ӎ "l' APZsC]D|Ż߱MrVQ5H-/f"%6Ђ8zd ^tVTpHZ7̧vQc[e('T/e9h,F7pE2lxw*nj هڡU5 ݵ;m9tͼ.1kYG$T z`~6҇;*E.g#Ey糗vx0yfJ} 쓈cig;IW9,r4TZH29<qSB*iK٠wP.))JXA++x쐡Հç.78@^={Z6PsT5ZShYBbF_51;K,w>FIü#F-(ޮR6Atoצ=e@K_b}~SGvj2(H2 .lLagܱhy885u1VF,Zƅ[V\ Tk+;G>PF`j*ڨUQ.?Χ|OLݡ#⭉7S{r1c:p:O?]G/9W.r A{s M3Fd> [t9c%a=\MdOWu:γp: 3V"e^$v: °=5pUR*XVSVqEv̕;3hf"E7ݜOfHliv\yE%cBUCSCAXt?P^KFӋH%Ј}R*xӈ}T)v|Wѵ/JX~GDk/sJl =yyRM \$Yu Agj10:qXoA%QVǤ΢p+SPA_ \<#hsjΒu!m#c7s@&ga(ux/cM‚>-`_ Spe)BM܀vֽF,[Ϛ$@Y،8TKa_YlK2F*"EC~jl1-E>&鬘yzfjO_ q{G@Wb74w6Pl@]0u=g1فaJl',ǣ5K\r6s1TahlWܾZ':A/d-4Gڻ|w¦Evu)w]=؃ַ(]Ygo1 _ B&4c8PNhchj$_4 K+!~Wև\_ 2bwc ="hUx]Sr8ztjS!d^'GPo# U7Ip(yaЎS@ցB|/9PE|TiZ$nx\P@n_a)ʂlcnq$1?_8uזlJkVTq~hx gasӠ~/`Zdْ_ӓKWO2Rr2S^תmȭʹ-*,#8ϕYfE59sRd%*[%cCɏR6od]sr7T 0Yew_͋S~?hre&&#{kPGF[Б2,>Uέ"ՂnU%MAu;c ^ W _u8L{<@9``<^1Ϫ4ՉHdѣ)f=hoQ zis1*_>kS:6U 9Ȁh>9,? ۮ7%8PKVԼOS0f2a =uO]9}D?ƚV eyjRo3⨪!U, YK< -ӚLQ<ѫ$H ږJ 'P 6".b4[hxͨu&²; Yh' SvՖSj4Kr6@A%znL.V%iT}t<OM#/Ÿ-n=qz -;_?BJ\<@;IwHqTA'JdQ7JyT=|k#V(u4aKDm|\qMqg9O<H|v5)IԭI([KKdC؅msaaz@V |L/O_=Bvi9L541:\7LZ&&߷ q6|QWo9JPD61YTϺnh1X{(gia+zz8#:ø&{y.G7BNu,\I83Ph1e愠]7 Pؓ??0?6~q1[8bViDnF=C VsGk﶑_~_wVJJ[ 6{[_9^q"P!a|\b6ӟ?\kU ]vM'xJY#dB$#2mJS/0RS,:3Yt٪H}nU 6Ak#{ϟŞIJ>J]K=]HZdRc擢}8AL@.5[?F$SEPQ8TWs/҅=v~Yk^JpZy[`;2KBaMlJD?J˪TY; ,oF Z|iF0P0#d'h>N1c6s% t/yǓ&Sh 8"ONMuC *'V<n8΅K!(M瞭oFKeckA3)(/R1N]?I^ 6Ӈނ!>hpU<ugEJ?~64 !NGb33Sz\ێbZRavD)2Zj?o[Ix HQy` U|ϐϲ'MLpBVSud߉28+Nv'L&_B$#I#;,^O #ꕺTݖU,gƨ"B.iY:ۘ*-H j8`e\v?cN{Yh"Cg(Us䶥%3\==aib}>ouIƥYإ7;q8Md͢@>FBm("uv*w7gG閘(NHځCHAEJCNO'?ҙb/>:FR}Uyh!bFǤ PEq$pYVưd3TZ*=PbK.b]9;+}x8LdQo׏E%CR!HEMt:|5 0/e[na @#ͣaa)`6g tt2m2 NOႫDZpl8ܽǫ N_O{C }*Pθ )uoY#'a/rĤ$ %DǁS!lgz #e.~+ J% ئTYc"v`ȥgfG̑ogDT-h[ 5]!u, r+'feNO%ͳ4 ryݰYQh+Z&l[*Dž@'jb ֠X&c=edʆ"{!x6}ޱJ0EhOD\' y.(cgO#0 ^|3xqpݘ&pgjJ=9oƃ ^O ?ѠC:ᢢ`&ZSSX",q:#1 b:L!h+_k7k[W^NH.僵zP>u(Vn!˂~7Ćm;4!e|NLOlFKuv ԝ,'Ŭ)>{~ߚW7VǣtC W~H_ g^B~7 QG7Σʓ,h؛n7Cͼ IuG Rl'Lc@Q>%GجBu1Z E")T|e!-$eC0#{hܟ6Kw?enɍc(ti'i.@U_#< #. Ɏ[HDR$q*q  qa/WYvMʡGfq2ͥR es_|}3Z@T|+sBʩ6SɫulSwb/mMScѫկl)sPi:A'A>R'Pgp+eՎvksdܛcn-|3AmL{JL0GFNӾ`{'?Ȉ) mֵˣ^Wb#}Q*TaCpQw>djPdJ3KH SyxWmyp䄯/=؆Rh\jV-wQ6|>&QW1&"̐O$_ܷrW%9C -:0`Z uQm.a@JZΝa>ʉ3uO4i4%'^6?O$KLͳ@3P E3`kGNU>G^-;^[np žIILX^ֳ`Fh8dOmG 1rXfZP s NXAG<RkwVXb-;P]3‚بe|7یcw) 5zZy92z8dž,cG::A -Y?xLR͆)ĥz0f=W938~@ ᦤ5'e _o pT%| ;~O#ZC̕{:0Hx3  "`tVFX-p// )$_˵(KEWY!*dyh[k ТAZf) TlVo)=#TW?\ ;Щ~1L<"G !\ZQF&^64p+zwu7rS<[x/M#+w45oqu5evODULҍɢ;Zfў\瞎):jpgg}~{7ܢqNFքHvX A7+5*Ryf9 Pv$0kh(D _ w&Xl+m)Lnb^ yUW>Řri/bQOtb+ v[| m Oũd4<-HmGU`)\Qpap0cW=M}ڄ~dO'ъƪ4jCBrru9כwT(ޢgR֨3^{oj?6&f`l1)H?YE`I'n $f/ &*5 xxk'?Yblk>8VP)YDb]>G`^xfg7!Oi׋ s%) :k'|qòl¹\O-b ۺMc>*`UrĀmdϞh>;̭,̘{my(ܞ @n!kLI4KZɂt߲3VR]P硟?/ MN;ڨ\9s8!gFF=#2rLO<^WJњЉP9;Tڡ 3v>dBtho?$W;S.6ChS, ևLn` .PIFK 5bFA{}|UC ¨_PQz@Ms!]kI{>3 F9 dkka.%Q<"VQע/˾ ;kUE⚲\5tDSO Nǚ9`03s{o&U>R/%KwQ.mg~"+M/'=@Pf.rts@guLbi$ F|@`ˋB7Q8سY <6S+G蚲}mA`j m(ϋu=BiCg$Y NZ:} O;2St/@0h JRc`YψQ4B~/K3Y^B+~^I^@_pJ 6yN#>W5mqGM9(@6׍!2rLedp:#YJ<øT@6 D&=/LUiIO&xnl{$"F] nDl2F%[)YBo+-`4| >k0mN+}l7dhlCjFG#y{ tm6F TCWH^>X1_tm tjY(DMa|P"b^7p.K6C 3p\HqY=びP}Ux-vc1?.@;V+]* gTXX2lAwZ .iܝ|X2$ 8+zxa"$ I-͖pq:EsHO$ ?[eܯ/64Ϣ!?uthakpkkĿ4S֋8҄*Fw5{-kEPd5yyZ0([&Ce\!٣ D /xg{ETNr'r< H!GRnE ?oYލoevNjZÑۑs #\@Hm'fԼAlgJ xn`eԍYC$-nE/Wpy"oAUӧ/$1oX]بUnB&`tGd nB+@@oqW\0\z ] w;#Ox'Z#0z#"ww}E]m^{+)h"t0`#T/HT79v릵ҧ!쬶^2c?:T9FD9Úŏ8,`K"ԞH/?b+ \68IbVH}m28bpeJ/enaJ9 \Oq7ENݵ>z6C]mNء4[t=\cFF˱#eghAj18lC+hV1ֿ2($&7蕧WE%d'o~KQ^dߗp0!H򌐟mF%bI)] ҿPkX\2SR%?*;0Zr]z13xx s F5>B9J"w7?J9*q/!/iXK-,B4]Ch9ts-(*X¦jDH՚:<u,qDqg;V4'%!a&O+%H`ގ'3"zٮm1iIOs1mʭcџTH,Q@Uho gC7]U讎W:r*Xʸ/dFȦo"^`FST{9CuS 7](8t܎sBa~J,b qw+גxq1=~%LѨpY~8GA&8O}F'#FIAz9@zSzoclr'Uɂ{:3 w?73֫}&ZYXrha~BP77hI?mE tRyloxs&2QGz! _IPʖ΀(+ΊF邔''RoiaSu\coQnq?T ͡vNMio^,RLNmї//̍Åe]y䫂6r%`LU6R~:6&K=-+;Uw4c~ֲ ʇC~hFX|k\=}-+pŃӎ$b IUOnht@k>r6KbL7VVEIPOctA(5K`ңb b;MeJ¹.Qڲ/.‚DnS (PR> 譚c/A #l:ɲ䦅LJ܋|yh4 u@;>g(9vrY ,t$q_bl+xf)+?R66J"!J5%l\;]ۖ%H7'íwX\ O*ڊgXvdNN24C];R#ޤVb~ R3 @ vϩfe>ԉ*d<xBOA-dPR "t2*0\fnަ>2hWg WК: r,Gؤ9e)zUG E[)/-c {KXYg0k0X8,o4Oi$0Y%(^fazpW|9 ֪`L ?@$4[[J@]MNd־$Aרs97yVgnBt$c IJZxg[WIFYŁ"ԩ6a8 wQNBBsVl?va: tjo(ɓئ#݀?BA͟󎳗"ę`)^6o3p(&sٶ"{ylQTn)9a4|nagqgУ7$#T=XR{x "M MQ7/SpK X" GO%yT?E?ԅr(q"fg-IŴ-7K}fEm 扄I*qJ-퀺jm&^6 ^ H'RØ? SPkJDY&Z X7ViNI-(Z$O;Ӫ PU=Ko6_ >q%RZu{C4k ttD){t8'A>逍s#11m6w6۞Rm&aNհgND,~[a scPJD}J:0 -yCS矲<|Փ}:2 9wWXMP4i/C\K(9 {tٺ[ 4M-aU("RUjzss3-gF#5ddl6R  epPN e \oKho"Fc.%WUӞH3mޚ/Oc*hw9YF{îI~$3 Wu9E8Tp*lI6eջ_x- L槀|sf=ƌ ܱ-i/;ţ;}A4ә5ŇjE۴85Q)j݆Gw^B/na&JAlze  l'4x8D$r7d{q{W-eRJf 0'ɚ>LXH[6Ajc ?,0T 9zihft?+؟e0F,Bȗm(S8*}&7k]6\goahROмK$Z/uisKQG2IRYTn`ewfjg:ND u f|n .Mt)%Mmwȿc N5 9U,w/ 2Py,.)DQ/4Dy( >!4u^ KQ6_Xoŋ ((sԸ5R1eBkbI$.źf+ -/l3 &68Po9gtI)CD43(ϟmkcwo`J"t %pZDn4 BLwEcM@F_oR%) Q¡AgB6K(-gs wUplM`V h^ . nR}"nGp'9#@ c#&CzC:]K0a4%+TExeISq!Pܳ1bߨ̋ -2]㏌0.Bٟu?,K3^dp _”p0'+\ZI8,SKHQO|$z4jJՖ(_({$cVZj^<(uwqv`^HTc%-癩]~q|IU_aM-ndo C8H:E 8m>7̉Z#pb>IU i7+OKKK5 ^öv@ۻj8NZy*",4)u)aiפgIm'e+c~lAn/W:JߋGŗpYI"Hyͨ!?y0HA"Y`-t¡u;b9 .=>M+,v|vEq+Kƒ~]۞7Y^^)7HN=Ytxք1]a6eϩ8Frmuߤ&l up8 Jbrĝu'!F%N)|LbcEv"/*ˣ¶HqZj%A0 BHcE|0UݢQLc(£ZAEIz໛YOg6{MցGG\ LftQ\> GPpk$*0nŪؔo4A/WcGK^=.%x)7oBCʍ/2ARο={l"q&,1h [ygsp;R#$Y';* C7q CPS_~cwezQ0lV &++w>> =K-; > ɭ* a9GTd RRԴgU\Z/rD oK#^1YbW0긢s&kMEYL"Ka䪄)TZy`¨E9'ǁI3FO^K05nc0Qwn" zc3ןpqB͏+w3X'SgRMY\ ћ;Qq˜T&GBjlaև9Pa*6yXXE`wujd8s_;=AYy1y6$֦kGR |CZXz.) ,J^߷W 2xԙ6R@Ιzb)J6vX(|ܠE/1^ ,*weqv.Z=9w˳;)+XF;ĉzG*uKw&~N{7A+wB|$7{]IxJ 62Zu/~^r_ /%nUW9Nshsy0㹸%=>ډ߇/bg?TO iޑ3J;͛P{#>mΊ]-:'lLBmL.:ec%l:=0Ǝek'zzo彳[5[,ml?}{lד$ 3)d\CFK&|#lMmƏqd4~SܑE{#~tf$TZ`|8C!u\hxh:a::x}ӶgCm.`$F~=qKSX<(}o6/^y`,dMm8ݖyx k|o.g=\t*FF_e"Da;H]og A@Nƈ\ $M;Rl~a rl\~X/OJE(lbt[ } ;۫JpyHnÅKH3#KmNѼiy+~xu;qm7QJ›*Q_45$891 lK >^8|؈w ۭRd*.u'!O&0WlfV~過S)9xЃ[i8,}w?j`/_>q,#kKf08>NSty"ؒ*I[~:,k .Eǧ`8q޻|лOzW=| TSx|/Y$Cw-i2pe$iffUe Fx}ˤDVجLPs {˻U;'*Ʊ$3m% VDXi6–R [hY8%2nC&"mmR}rU:{e柪R#Wusy$5aC"Q= ӵʆ`];guҌ&+ߩ{NP6 ߒJŤ\WstRȦ8þ\msϜn;㉛V)-?>мk}Daf[ vVތw*[Q9,B 8W]9cBB'-9pXC^b A-i`9*v [2sVfN0ՎM 7aH$7h9r>CJ Pbi  edw(ݸ\R4*`XS+P O-/q:h]n̫ $-`EX0A_Ba<Fv]0Ris6JD;^B\)e准g,ZvvQ{+ DVzr2ԟpG!AwP4/2U;Z"kj:* c'RF'W6'u[o-ؠAI9`Ε*[g`ǫ{mt;Oˏgu:I`E C9quv&i]n8r X2؅п;uƶ"pz&QɪaGZKwUk9 ϝUo܃ X :p9ien]H.2l^.N0] x/#Jcl"# @rWܬ*2l̫2=Le0$ Jo~7mx*wNe* cL@Z_UNW_̍9^ U3?lqɤb*㣒+wFW\#oT ۠rfn:綜MîFQ3K؉-P,7ݳmލdꅮ㽋0ewSڪEjʏWgU 3j+EVPKEun?>IP? Pd劇l 殺gu}Y52ݡE<0㬫 E q_IW"ʴ#F9f^qEX/Q\hynnh8}7}1L_N~\?Ao!ҶO<Gfn_WZmQc,$_vVP^aOPؕu ?y φqd1a`\eh!%%Kқg;,87 =r%5]hk{&H6&"uC[0hrIU:LJ_W,*XRUMM n X[ruE6>q,5H|>t?ɼ~H :;qJ'AYdzzʶlBKl΁Aøz ԗpFq4#0ȺKīE ޗ,wj')YIÛGi F7b"{5!gG8LA3 |oVꡳqf#gU5<5iw6;*F>h!و.wn÷kdj],h?q@kvlz՞J:<߹ݨ$ۢNgYz_ @>xk˧B7,߫n Sb̚wQpKT ۜР<;-g.nJ*|;t]bB2B `2OJ gx&F9Bmj`pQ*t-c]>Ro4z1J4ˉw6"+2*f [NÈaMU3}BF*47 犱$,گ|iY$_$ o ZnJG/Tɕ+mI^Y{^/ౣ-EQ'ql?57=( '9k miXq!_v2P(ߗC 'j>tc#b-̒P"~Kn/a|#+-;þQ^'Zdn+\_\X1%cbkZQU:\VSiﳉ9j2MIدjsnx}pVԻ4wO=jpN]=[+w@9K/ٶYX,V5.D'*{0/$πO{CS+_2ƣ8gи^xvG 1A 0.}h=7z(dA4'f1co@8*Ê!ot\@ kT<&טX$c;Yujm+* j+E˱THb z.<Ƒmͭ!r`0Hzs)*i1oY VmKH&9yC h^*EO;7FgsCI,?? w~U.Q(Nvt kAV,c6YʫfZLI.\,ghg\F:&IfS g 2q *"O {X'j]{Q=rॳ|puDŞ 7Ghɇ: G;ShdgQ5#MNy k'U^*w/81eg000 ^Fur쓇5E?%KZ2!'ȽU:F[+ڧ`0Ë<ӌjT# Y ϥ'|})zQyFvѐ(T*ώHy̋X)! 6s#6\Nlpc/~_c]}JuFRCHnpFNR={nϧʦ˴V&{A J9/!Xf:ք!?BW4,k覗YU gnmys -b +HBl6R}Tn;IE2vKlℾoՎ{tpMoH<3hmnVZ ɺ;@4W)4$y!X+u k.jVhn d%귆+] i*N _l跟;s ٺBK}P|M V ˖YhX/ρXZ4X 425 ]E;x\fkKhRO$*ؽE5c׃- xBZ#/K>3ܛtX`]zM]-w%e99U٤oZ j%%gWZgh^ۃ&C>ut涏K G(֥YSA6u& dʲK,0FXfYk~#v~8^nVKJCIҞ&SoY0l|N?zEz mk3U vҋ3ugo}#=jssG (A[pՖ=-!& 6a6+'wES.0$=L]%1_ ݡc[|?sA_|h1v{n+)+/7\ѓ`Ip]F E 6R3NI nM0O.&AjOQ*(!&>](tb-o̤'ٺSߴ@ګGg& #K`\%тX`ǸYkiNВ1B @. ٮ:BOzG;wų؅(y!jPs9`?2toK.H\:=a@E hir/LMRKip^L̿K:wGg}lFn -8(F!goY^ȒU6 dMK[՘i6Q9VA6QhHA)l(ԟ>g9e37~V5z+Kh/>)_xooֹɴ֑~v/] h(Ge[cz*#׭}gsR*ԺgXd95xW.fz/oαv~Λ5% \~̚0VU2: q:W:4RΕSDUTڝ %&όVF,N=>+B1Zf|=|3K A9k{ԼK Y^(Q*o'6&M>DK|n[=1_uhץq=,?@/|p.s/]VR녤܋HMJ[]6ߟ0Fϊlޢ1§\ _$ ņUŤfZkt\ d8AHh2).ˣnfI lljw)kH?Z  /.i~C!Up>)͘|1e]$9\d OhjzKCC[}d,%yS=$HkJB2/EDhxSq#~f4`FGs w df&6t8/쥥 !oBEX0 XD>¼ '$2ܐ[aQ WXS&:1T*Pv,;^}ƋN^bf߸,5pBJ:QH43 3Ml}^; yMjq ՓE)`[h(R2dů*mNz7"jmk$*,֝'%W0JͯB v̏Qh$8-pyuFYܾ9&'1ztүht1H] u['JfOLA,cev=E,AC⨝ƆzP? |_vÑ;g@-2y`S z@3\Hs,9K-'__-6^$Kq M0O-NdOt_Eh)S%tzÐm *' ŊnڱG\wd^!v:`:vo,dJ.gU58qc?2+Ȣ.l%2SUqԼܺ| %UVE5 TcFA+'nc-jg|g7QăT@geִ]; !Mw- bn:ٜ'[nH)gCQ2[APc6>4v;6#Ӟ`:ꊽaiXZ!>=k9fRZTt9.Rj,ܮ=PHre| BiuH]Z݊gf:sy 1l]8=m:DۄZګ`9H_8~1nK^tX*E% : i 8˪6><~]?3mGkm@\Qp8Buuv bx?uXKp~eCN5/dՔ1ۘ~x @n-n֢b=(+m ީF{W]6a_tw8cDLZ=?~k_؝CŨ2Fk`|$.d"KLr6a= "νךeqrmw)j!ݑf\kP~Dj͆1`C}z],L&Q&t8 Is`Ͻ^k&. d%HF𑞦oyLGZ @S]2)"T8`n%*K$:R2BF?|Wv]w}# TљɋmXrtͨH FG]WU6t.j5}H5:ϊ'x~GL-(re}X|H3ĉ )z懶zР2V6iE<}U)r2=i2Ƒ:BmϪGuj ]Cz’4m>Gb-d*J>5 I$e2xh4J]a ds>zۘO+ynƘ\³a; ̣d0n~\yPQfh f1k4vjq|(ܿ3%FДH\.JM7.E3J.U3sk|oՁ KWyCoj5+mguf, 56M}r4Հ{㑧c=GZ|.YˠS6BANΙ MP}<=љ%=FEƶ(SӞ)z@4͐<Lhl\bAܰtmOnc!De{ew^?-ÿE# 107:($Agzlv6eDyоtb\h4 X֗E;_%,niLFRoy|ܰmQ>+ (s_JJIصTiV.)94E5|N Z`<C[>MRC6 9Urst?z濁[-e7KtYI<3F?x|눧F_ e)&[kKb`ۓ\6"~"bʧ).y9r2UF0;fڒ];M9ql O ɔ!9~y7s0;xu [&Je$\癉~H}F V0{qՕKKKUTW'"|rz("uk1&ɘc7Ͽ.SE& g?v6)9{Q%Sȹ)9s eG*ٰwnw TB?DPb9gGVGyGc?XW$2hsmi:Ԣ(f4-Ah3k*? ?/!`OQܖU63;&twЋm;/;!.>K8QXuz/eGE6H¶8GSm"ѯܠۀrvByW>T\nnV]{K,K;cF/q Ϙa3_3դUq tehKM($iLz k:o\~7/6D JlcEv_Κ/|E@I'3qT kD!q+GYέkF/ ıE0H@[ ^ySZ 7X;j,GPH`NZЕLߗ(!}ٌ(SQtH}q{ۆ~?W c `7Xb~Qjta${}2ALJh"bCZ.IP̞_Ri{NdKRfp:Æ l29-2`Y~!oYOނㆹ(<4a(4naL\ϵS@g*rsďm̆] JamE0^Zoȯ$皆>͋$ӻ+q.su/vMjMa O"pйf`KpkφK ۷n/GqulAi@I0aRTrt6mu]?@uYޓ8XO0g#Cl}6ż$?YĈ(5 jf[ ZdAűQt ?sc~Te-݄EqfӐ7I9m|?s2K#aа3kă^]W^I Dhj[Gļh1~`7 ~ NMj~ޥ́L2{q6OP3q/[i=]QLPC Ls$ .V|ոm& :NEK>a2wڈhVi6X/Byx_H-cpP|uwyUYp=X28D0N!M|upעmJ4yU_Gw>:,7Rܒ;]5NP2C V)9RR46U *LX "h ˃f( *^W.T"m8nܠmB/[hT0E@u[wrd$#.|{VEtKИ:I.)C ~O&%ýUĥܹhC,|拞cR*Wt9:J 0V2>oSHU(kON),'R u``3 sÙx]1bm7ީz}4{ED&i.>nFxh|[!ka*,o[A tw}vQ7lt,i OQFҢija1!wmC3`RYh[S^=aY&i(G܍7֐ {Sj:"dnE DWKC?&pcA퉩І &ߘXioe:C>Shϼ ^ͫ}"J iwD"|ӝX(y6zSE_}y ,r l? c *Ŵ RVԶ-E ?T@y{eL)$?9pavT1i6#ڥT~<㶜p>7቟MQ%!p}ĒWtdf%Zγm͢img<1NecJ"$sc#ސ1k\K1 ϫ0V5S*>-`"1ufBI<+☋^?(JF/¶ 2*љualL,?a~(Twnf LaRv -ף″I +UË^fx.R,yu!.#\D$+:I>jfA !`zr ,+l&3pDIؼ>-fV"0qݽE}:>"14qB,fop_'_ġUƺxwjV^H1DF)"pp Y6L} ֪ƇgZ>ƀG&T6"R!:"{~80a a7A5 7? uQ1H\d8'ov4SFg7:/jB^bIG=0 #Q&/shhWqZbݲk+p )Sc I+?'6Ԛ*Y/(+ L[Э`$㜻%aӜ3_nsAi6')n X$j`/'Dj!ɯjx Mi s dߚ@V*n*G@^Jl`I:@&suX Q9J8 ncsTE}s5Λ!*X-S%rlHWfS+X"^C"sKaj"Ec ?VL2DlUt{+)kTOַ#d 5Pvz%Wl7.){]27tU'BK?Tbݍ~s JHę􀛙BGĦ?k 3AH8t;;:yDCƏ'gA7*r+<C+WS 3Kl\ ,k4mp/DzCtM>/O]>ǜ 2xcq ;.j0 hG)G1]նO7,|>64]ꍾۣvR-LZA`7^$J_l/pF!z*VK-E'n9Cy^ږ>w b][$${_`o'l&i:ɴDWw\]=cmfXHFfc4KTb[#+t/,Ҳ-u D02F`ɉZ&lTEz|7$V0<S1 7 *<;޳瀝~s|;`U}K"S: ¨xƅVJ.&L]ZkO(5Kla>A#t%"C͙hm$ePByZ@!S85Ca3JB& Z?X3Խ5kw˳_vlߡaHB#뀄2/+_-֔]nLӍXHG|Ճг(?y0:-Ko;yzMPEKiu7 p<| ;pON<7!)+7{UDmTE$#9B 91lNZ<,B,5`X#Az<,IsŠާiU4Ob2!hXAh\Z_ yYKA˖/+<̖C ͳ'Ƕ\2D˳+\.s9q7ە`%g;$90fwt7+쏯2[礖 Qt:{[uaG0Y@+f!PѬ/J'4p;XkhG x > G6Zf&b&|YGY-;r!3ܸ7޿yT[ 0w?/V%id|jKT:q=1lf:9nXJmj\T9 J`.\1D/ 'cwxyA& ԓQ1AO§H(kc9li|ZHB~g2DǝgUؤs2*WZp!bTAn s:ɇY{f?k[QZ(FzmuQia>1R]O8b<0rKQ+m|_Ň,RpGX&vcQ{N*zÞJ2^6URWSoS,bzJt&烓qHBf;9s-bne.`O<\ޱᘇ\s^ιG<0͌8~](AH%کf:.@N^#D] 0QY^ `M`ywFwBc?~F鍘k,Eu@V uzT-d9\#jJz΂F.8Y߽mbsV2Bp*$ or$j͆4wb #[2{~/@NqS S/9c-i \KBy(Ǫ}ȏM.=\/#ʹWBqՓk6T{{26&gKH|dp{T+E Fe:?bY?}!Aϝ^pa =J_VkR{P>!˄Ly!rnnu;D;>ߛ@ߍ e$k) [x>LaGvj>#FKqOmEU䈱!m̈́\mVߧCx̃- yg< EFAXn>$ L3.SL+ܩhDٓ4ZUtuήa(]+w3G.`[al-tUju :lP*}Q/BB9-{h"JIgT-v>"JA s}I/O$Eo?agqXdG's~:Y؏-}σG-S![.z(k ]>sݯbNL+o^,(T;9MMv "ndv}uYRnN]k;dVAyi'|fcVZy{cJ7ua]ҿ/~*ԲԭlJ=jk32c0:Z℉ |vw )9j綥YFء e6Ȍ|aAަ \0ON$?S_`b̲>F7m&CUjn (24K_;Hs?%Nc13 yو[q 9֪(py 'D'1\Luy-g 2xq9GmKʩwv.ԅxRX*}%oclL'axC4uC>?R4' )fN{M;bS;"‘*r&!/Bv:ۚ2ȴr<(c{]}9d(4W!6=.Tq^ o({IEwhgke:dYc1S`>PdO')쌮"+Ú쯥Fn@#6<@41̞Ch,޵)<6MhXx:"* ]LK7ﶲg[gjB/e]Ilk_pm|cEAwN=Ny?HL'trQC,(ERToRH8n*VaB\N3{$ x"f oq_ 6d*as Y R2ul ٟGP&.CVuE=Oi4t!p%-EAPK]Ȓ0[M66Vƴt҉Ҷuw)q,EbԿ]FjD ق{UUUojn*!:8M'=-EL h- ԃ=F'XEqߧi2i4 ,Th/}9bsWÏy kRv%2p:ʗ%hhdy~׹ciXJ[g{ͫU ϰrvRd @ 9J,W`_gnjwrnRW}'P~ń[ACR^{o/&-~`!leYN9>B%C: $wI u*}F+/jAzkdZRjɄ`yo@ zFh]0թԯn3gZuJL9p.mNFDc-ԊxEav7qdc8E3FMrѺ}YN )uڢ$> `D3':f?"I45' ܧlJ|>ҙ=uڪ2oGJl-PvR#)j(9t25˂L;Iĝ!״U#fd19jl&)Kpa[j=:85ȸƗ/ &Mvi3y9k3$׏^╺ -kOc4Eԩ |B4kF'1ۤCvȽh架z{ /@I޿Klɓ^]˓4(XA3sЙ>6 DR134};Phc9&Kʳ_b[PXg`ףM~_dխɫ̪IenE-Bt|S~>ǁX @+,uPr΂PNC(S/9cC5&xdi]T80W_JEX#>A1޳lbbo\ {.#'|FQ};f4;DgMR'r%.^^W̹ To@ϵ?u: $T]^ ChBlVqJpU3][flb3=eg蘩Oܾ~n3g Ÿ+`mfJݯ/ $ H_$AU/saa!!qj j x# 8 ABpj9 *_|Bޡg@dn|=ش2ñ8TWǘ?*~7vpkk:Ƌ-?4G$칄mp399@=~ ֘({y6^Y) 5dZ_m_v3C8NqÔ_@t aKG#D[_)~ F3KdIg{9ˎMbVOF^ˑ^@V0њs}͈zx;2SR%ЊJjBCȷi}=HݕN v[L!zw[awh^6MRvO *OhXX'| ;:NiTI{}:G/n93*9+Յ?uVXUVIiCʬ-:LVG+%\0q- ]7P( Bf/gq}Q賫NV(b7ڔFzRo{%7fm#O^dAv:xZ{?Jƹe8꿗 SԴp\':8#t1=9r<.\A=t4/xڟX/, ó s1I01֯8mUSH"mIL glF u&;bpv BS:mrr. 4kҌs&;L7qdw.,>d:: k8Q&6sMaDWBOL=ol=voz?V`8;y0M*Eǘe^q؊9wxYfhjE;Hom?wiPY{sU,Gd6IQ/6M!%S _52-A1C[x]y ZX$8mCd"V&.+Fq&q#QkN]ՖiMwt) *SfFK^Os%KHqmiSe!k;J& ǁf.G~_6E6?LTg+`ʷU?2+2OhOk?y^b%dP;_ hx+9?+H+PcJ91O՝%17d0:>_%Siͭ'}=zоi#c\]ChA꼽VN##%IJe&R0ˎ(G1Nd >sh݊Eq9A =I @;s^x$)_oeH@e4f 28GGEk;9%;b<\kYXm\$H@m7+U!ݍovټ8@kGsrQ-Ѱ}ş^qh[6.Q_Zt, a,x?,(v/2%U:aI;Rf)QU3Lm4!LNOXvWJް^w2kh7BEЊ>*4OnS@-A)dw]m˕Q^gRij2`$$VIrjӧC JlL֕5)G;BXT1T@>L H7u 4u~+k#ťƅT/QV&%=xhNh۸Nl\\1ޟ܁/K_{лޏ#ϟޱ~]6mQRWE1xH7΢GuIWɪ>&i(Ֆۚ8dMF`Yu)v1[HիЮ=:f_SY 78]P[KqGLS pݬqTȲr}{/U ,ظx.f=@jtd[@; gQd VE.ԡԅ: KzTI0E-Mz][?p[%3,hn â"%$7莿6H\,Lԫ܀E0ױD$t,q%:Ib|f|2Eg p-CN;t A8dPLIzB^/wvcC_WK VZI߄dAq}\[U UrTM˵YX`]IRKydCdQcNFқmC>FQcc\F:PR+DR\iUk7U';oWM| e> U.'#Ȫ6dhmmG^]YBHXQ2H-䖺h]V(&WvV61<'Nz ȹA:|&ȥO8AVZayթ^iIuъCfZ>d@rF|G`1źJވt0qz BB) |UktA8*TF3S~% 9D"Fl=oX\\\8Hه@`y"Ņgr ~.\jA[; JU>!Ji"Lyڧ6e3Zt͋}0S+Η)]Kx ҟה$gFQF)9 h&h`:-t9㰼9Fu_.gAMǒJ *dz*Z)WW ݥSAݟɼx;(sxyG9dQCre:IqK_9Xʍ*rTܜ7*ʨpsMu(^R$9k여^pȁܼtIٙ!R_2X0&\x|?s6C +ɀ_tHKkD(Ngw< Xb*(kDqWv vsǞğ93Q?55  -w`2 \InJt㟲r`S&?,W2 Ӌ8-s'{;[`( EsᘣN/e:ZEjiu P>5U0cLWB%_2Z{S"8OSΎk֗-? #Eb+|ҸV{!F)ql*U;9 DlQa(7D{y+а)dQK[#(&d au#tXV$#Pht+.-=ז.N0sud EG s#t)Ij_2l&DPAK;i=qh-Y#)@2#n5 5=1x0-wؠ)^q XǷ *\=/dJK :׶URbZoT#(7&M!33:}0m^DJe_ 2䝏-^ ~ wcWYFiZo\6΅_ħS.pFtCj]S*؉g`t.Z4 S3m-z-?My)&ch7cg}bGo{fX&Aw&0oY[θXa%D/kQy;.FjUAmS|);Lj}#:ѣcS?i#vksS4Վš'Dl&86W.9.}ySe}34樃v\&_2Cܽ=Q0ǘm5hsc%mųƄofHqtL .L;;vr9mW0xW"8I08uFմ<ɜt|FrX"4Fz  )؞0sb+v:tqS-%U" @ =XSM;@4˛p볱5_dNI&k~wඎ&O+p$14L%j$7/ġ}mU2r!Rfka'T!ɔT;} W3J:R{3;42ƭW`ىx ])&I#~j(nffd,͍uI#;ۊ"V<{rL$k^Eua"|F~%l݁f`fjA(lѕa{UN '[I@$DX_]Qݵ|*d^Ϻgf<JRMN1Ί7w'Ƅiuo/wn0f2`ZK!w1RZ8NQrSQ2CZ謿9a qag*|y&~vCMQhoq&6h6sARE#gs]AqIJjo(-I2/]Ci+V8.Wtl5%j} Uָ*~s=Isgd5\6p>9?DzwG a|M<'^X1Մȭ$}j;2GXW8 7%>e'1 Um` 7Qm0u#a%RpDR`yw:%PPӊ7>UOЎX@!3].'՟/o'{t)L07h+;ؚu=,J0]| erh1tΥQc{\WL 7KG֔(O}FVGP4X^0;`ap+Dcm|Uvx%9r[D'3eS{F%H֊1P{@x(PaJ}\.łWpɵmC1t;Uz ]񛞗<mdÔldOz9 ymL`) ua-v@CK6J##U+1Zd8Ej+h}@ĺ=W|tR[OKߺ^C6,|LJ)ѯXy4\7<Bm%xZֽh?g쀾< J$Ȝixh6dv5^ h: [ 솵r{V1^=&A$[%(h?\C *Ђ =d \w juPQ+wA+Sč+; !0[~RyKR)5# ?dfږg!WnT9qך c lGąۣH,怩ȋ^@}!z Q\#LE}? ~j o0 ' wYX[3tLпRă \z*եw~ njcehvE ϛz+䜎DŭI JؠlFL|AJj:LŎpvvWRQR^au6p4p%i`cF%;ox>N-Q}Oؚ1MήtٞeM{* k!],i3#c1!`_0}qYrff`[I~c#w*688aB`{gf+Y@c34+P@ͧ$ _ QXo/lHS+uϡn&^p 9Xڿ`.=TsI,T |{0*6͢Iفy3뚹 [V|xw#n>*qcV! >BLʫU!;9:_5 %aYثcR&)GKXE`̵p2ed $ȾH4P&d2?,gLkuyɣ63pt:rP _Ŷ NUḥW5[a`f m\dn6es}Z[jUnBhȉ=!iCΛlNGl5){ZK.BOVGiAM ZP2+]uI_ =,Cuf[oy/Mcn-p :TI &ߡeSLh=n~D@KTorZtq=OoYxt3 *5av[%.{iY8OA\6=3~gV%<- 7crK ;\Dhv2|+XV0w~tf6$ NFy!-5MOn<&KcN|Y*A8k7Ö@%YĈ )ą8a";z12-Pu̪6QF?gAĐbvr:L(ѭmr>SC DKl dmY]#ȄH"oZFTy2vQ(ckQqJ ,4kwMGX͞QQP H"xfi 64.!|fnHg|~H ։XsѰHEWq]ٚ<9l -~Be)vWU+.#in327E](=ȋ2aXyYTAmDCŶgwzpr v+P46kr'EX|߳y;"5Fd1J/0%`m5|UP#bP^^" Ew/~$ уWv3CQ .6f[A[ZW?Ş->_^/z,IG;8bx/˕:x=3'-5T#.)= wnu1 #&vyPr?Hk`lM Sޝs hؿ/u׆,-)A>ت%^}@ # IQ b%jYls*ɻ!n*`I"pEUAqP5:Gg9EG07?)ь5uEcjl(rZ@LS}Ng{Lj>rnhl'}QH ,qSyNu4wmR=팝/<);] `yb5W5^sAbe HZc9J"ilILbP=gҬyEݣsӟI]jI!s |׿B},R\%gݬ'VIz0%;jym`x^AVjE :}jt7FmhxQj#ba#oE9,8Z;(SkjHE(6+ˈ5 ~v_ۤqi'";hMVQD I 8HaK5 F8T3 A+|,9A#_}?[_sdXV˹/`.Z.,YAK*#`cx5>9.Z5X8_sfSkwmoAIAV>Ge3P4*mOx/5ȥ'6C!'-7l&n+§vOl~S3wC2ǣ'])He062JiX2kUx R뾩lx-G4!HU؋RtĂ PI N~g;g >wwp qM!)9/5,eY~[M`T'"b}# B㧺N/B^jQ[ 5x~ m WpS,^u!`ȟaj e%@*m/nںu" HPXBUc^g=zŃ0izo7WXs$ Vߺ틧C-cgr \[p2-'o-_ir~0N0&\|J듈ȗk|?Ʋ{㚃 s@#*Q#q'J(qnx^o4W\v[fVbćF" 37ӯpg[IZAK GXN%6gsk_&7-IxI+}`iA?\mOTD0,sCgxˆM7]l_Q'q~ie'"A!/:]JPkk`cvuA4hu KZlyy1@[ʻP?{`9W剼}2_qj*^ќ,kp9SAB5,"]"&LhGȅg8xqO]{PBG^cPrDz),5L q+0  6o3@Ҝ*FxV=ʊ7t:ϮZYD~75J`S4F0(XYHhfT4ya*  d :̣X!dl%;{OH^C7|j[y1lz-b"OLp̿Hfnv{׮s%t|6)վr-?=IŸ:oJ0ظ7բz>mUYa%|M&6ei.lt' FwoQ c27ʊ,+4jEA ?gS[PkܼϷQ) =,&_:HuasӨ5/}jl<@D7%07mCq6xDY"m0zfBص>qܭ09! ]]qN4͙GڧӅR{ rār&ӑ4 >bѾ<_eɴyr4y1FBo_2_su;W ZO  NaG[ 09Z \ݫuN N.R6щݝrx3Mg$$ɦ|p8'`# O?[;r\ >D1Q!D,f;s"ȣ(O*@MK|0G;w G?8B L*zxigX>u;u@&~z%Λ؄+Ѝ+X jbⰆH (lnfu0ao vA=RRԲF4Ki4Q*4q!Y@aHٔr@=sOs3Q \%1;y%qȕ*NJ؉R"2_SG!p 9ӍXw,o]P*"0LF}@yQI#GmH 5GF;ԩHt 诂CU܃܊&C>exF>V:z6ob̠+X٣+"7_\4IPOQ̥Ro03=i[TWh#C2cMԺS9}NmM ;B%7fi.W$ĕ-/ŷJ<gz& |޷Z86˶Ɔ.(vf65P^{j BN~m\&k]'AN~ج.U%n46BKf`#2V-@O +ئYǍh QC(cy}ʔ|^=U_,ͭj*oe!px:nb_B~I)  (T3/_}2XqXi[iي?U-&ZEC2QmM"rIdrq%2CHˇ1P/G;9kh:UC/ A&i>QH8uSXqL5Zvg}*-UM5¤X`x;( f14UG=[bP?˜O.'곩4Oцf6EzӪˢ* ~H6$["=vn %uSydE. ԎDY6'M"_{:ſT*H]EL"e{&â f$K ͤ{)Hƌz*mEh ItėQN`6d <sp\> /\ߔ )]4o .hݮKvpѺo+nzBdn ߲2Z-BJgnBD?N#$w9ꚸr#O C}Xgkuٛ`v `j.~a 3^CKeo #i $5N+u_+UhƗ`{} ?-7 7yʠNYmuBAM=+JaF\ v7`Civ[|Ɲ ZjlK_Ж Ei>6}¨uYWb]V.Mp@|c]*~~";5x̂Z D7p K[\'X2<"Fct <(ppA"\:r|4BZp֛>GޞqnNc%;7t7W橳s>3yYF|</\qaf$ҷ!c|q"<I˶ 1:ΌuwҬ'{CaJܣG\wUtYr'Z;}YibXb5osN;Y!|u)e[bVcF&}*"W |Ǧ$$żې,Ȼ}s#*R=ӂ: GSx$]T?5\qM,%0 9㩲c(U7[,w'd!"-X .f!aJИ8A+p|=flۂOD& ҹWiPg( O|5~'^gRl[sh*]xX=39N'(`fDVx%\$H bBUd&u%C,8~NϢDxag.KOQN&6IvuIusQ1:D%]4_JJhUu?q MOCXd9+*t~Hmk,fƊa>6w؏wd>(H \ ƥQK3*&E\͖9&UE@'#,CIخc8=V|wEp̂t:廹3o Gfsx]XpȪ(mAxy<~[2u蘆`C#t%cM {ݴq%8=~^fWHo&D/zPU-{fݹf72XVsrXx}!U38yrmVjՄb ɋ^4Avz'ÜX َ :Y߉x2, 4ًOlt.BȰʏaR3+ZJYs ":jvYYFLiy<Ēlc&$E[fk@U 2.aWau -0ϥu@̄ir(6:KnņT%V9!)P.#=lۇ@Abؓ+}Ģ1p_DڛZ=Չ9][=crrzh.\ \%ЇE,# k1G,N/#h_ve3dJ98iDĚp$1WȷyO )|W86 o(& FRORY;=zV̱WIk"r/-< 9b]J<$2Žtb`o_!U.^^V g94 ljGf>4yMV'/Eix b"#-9s|Le)o}C)Vmu=gO /@'I@:*pq6=|Μ]~? Dq>[9= Yt8)KҥG+\+5bXrɞms266jkˣI{}n2S14 ]GvSmpˢ_>p\_"m@hI>/yc^HSGg=C 3,̃Jٷ懘h9*d\h>w3kAa}\mʘBiW|a% ox_'lNKƦbYxɤFEPϧ]3!PT2}M0%֡XήtwЂht%Fq( Yumud3L|  4e$>? ] @$>lt3 L8=^KjVm*S+%ID(.$;N蟜mCd8jڞɝA1'ՍczEU - A>aD)H2f:at?/&G" Dœ)c1JtZ=bMsҫ,3m"{%Պ\RR @[Qıhx e0 !ޔEǍuԶki` p Ϛ7} `Ug1TBB:KiL[bFTWDؠÑ0/hi\b붷ܩނD_fB<8\^:go@ ,6殿Q췶* Oc(\{,$zCnrC(Ъo %x:3ߓDQozeiv^w‹:p?W\55)P! s& Ȕ]l$P\|Ga*;z +$E*V9K)&&m!yD";50ѡC؎`(Ѿgo󭤐}̰̂[GD޸{;6F W\ϡ s1, H(~3)+O}?΋ӿ#%S^wkꞶ3[Zת??D99vf<\ׁ*{xCPbYl.#]n?;9іjQ ٰn*Bo6=tR~7o:FE?͖yj$QڦOC[j/XW. nKAvJL8ߗ<.N-?"Q]G1AC4O=f@0J&'3j(2DuVb2K|ƳR*N Ӯ!(_Ԕd$~eBYf[q V9C z\(lf4M3<ЃցsnFJZ(B)i(3La^H(+:^>֋͔+bTWKq7xXa'JaW҄*4_ %ߤ34\P5%cQW Zߍ"Eڦ-j$xŠʯ|,=ݣwC!W4c 7F EG>|YHHZqM0`EPr߂8ZJ9܄Ì '! V/ofάɀ%R8+ nGt'~JMA>׺6+BcwXY._!\JHs)V70/$d>*md˗P)) F? lLN%gwSn|ˠ}rwNFj0VSykb(Z1|FVv)h@LP:O45)*%Es"~WWH#c򔥵_mrYoMH[4pBm2;$ܺ$˷A% V4p.tZlOq[MIc9{[klT]6OD2GZDXn^bT?Y~,Iӧ96kWҵIza볯Ruwj[U)7In C:עOZD:0l2vȏd3]ל;=p=U:!kP1dsҢJvKdbzmcZïZJK?7C^?>*l:5z= fـq JkA)"y[b]r93x/zN3!t]QFX6C@dY)IfE܉|3"A><to$`p#bES#Λ).I$ 鿎L6}bJ9 -P$}aכ4<3K8u>o=)%]2iyjx1g XF ?y^}_XN5x&r\;)J$.ROf L;hBG YyTT䡇î3sr`V8:uR2.B (1n"хp[pQPQxi"1ٽ4Pg\WOE2x .L0;D8Q.{ģ^q-ax^zi˜Kl45jd.{x猊X?ODDE=c^+m'`᜼Dӳ=|u$z4(LU)14`ɶQ,oQjo?1bqp9+絰xcSȟfm@@OM@©<5Jq2b(cVGՙnI][LCg[sj#nvX%Ę`/|]Sx*]8oE66YԫtzqhG#&qǻi9rC$FIDi4;L rk-{&BuNrxis8$ZJ$P3n1fo ?%m?SGbN&(e<ր#ƻY V%GAoTK8-G4gcDG`!ē6Z$u6q[G@ܮ]ekIv$ZNT>H7\ f+vJeKTV9f!xSBsI}[Mu՛b*|Me %]WR:k+j/9XNX:CYp<4\ zwQñmUS8<+3v |]HWtU5,\ߧ%2}a#NQy̶%v!*=̏L<{|o: ZLM|i@ʞJu,$;|[/,Pt eq$[  JOS\7$Tӊgv>cHigu,qP.Qzc eX@λr%a6mfG/yX1U>t'oϑ aƯ %_|*źI#8g(4}༳aq]wǿ( Ê  #L;+u2EnmQ(eY`UdSx}Cr\v܁/Ded)IE|bH%{4xoL6׽D%A ҿSKxy0E/ȕ0 z8UǤb<'ůϬ$n<IU!D$;G K4JV5GRY%{fA@kp.q=0י]Z\LX=QCx1V=#(uܣ94iL\s?O;n"5vV6]3mcMNmfB$_L;,xlv'Z->dfu&-ێ9y7-pQ-AtW+/wO8+4m:de#8Ф{uX*sz~ bB$h"ͥ(126G׌>U4 4*I-"a bH^L#ڐ1٥h0[{)8xB`vI#W/)K"Lj驠 *?j(\ p{6N\| (zgAĦU!fMFv%xZ8 qY/Ty# 5d QR9[͡` XLrc(^V3Bǽ  =[ 84oK>N #h75m{]J70p<s5|آ{" fBw/Be!m"jnZ)/Qy~,OכP?q,76.2JҼ6x جpj7Wez^Mً[ N1 N_赨$pj7Kg/AkP}.Q'<䋂'Y~}khөȵmԱʼnn n ̱T`S/pl|l:RTxVM=K%Чjkx,2'݇2u~A}֧O]{!>L@5Pk0A%ܝ j4~x[o*x!';I?fXCaJFMj :Xvau!3vЖS}~ B!JዚTXh%^Myv:PBeĝi## &9/2Qz hZ|Ryk,i?cRy hҡo Sa ԄCiFmw)C|}5h`kw/ÆF'kx7Dm{ 鳊o~ƌnƨl0pI1U$P *ͼ&ON;ll#RW&%)uuǍ F:\{23_00FXm%,䔡3'~Fܮkf xxke%{Ak[5QXj=t_x#EF@B&ghŏlx`caHy"hd/ j=T2XDTgakˎ}! \gH!w$WՖPGXjݤE>msƅ,y,e#1)HwHH؈6U%ctf"6@v ZKDH;,ܖYsz>K)& d L>" ~J1% 95Eܦw264MẌ-7<I|Nrځh&KtU5oc''X3OMRB5xk-a$?1)DOCyFRk\(Zl xPV(v<7Ҕ=41C͵ۜB&1ʖ'q. a g9Yz0ptv_x|ۍќ\@3ʋU%tHg01F4C\+\;|[+lXSAy{}o`Xb}*I= ^\WDA&wNBy5zO>o`i/>JSÞ\Da\$}iir_W iB?696 lv&4"m`1@s ͋W0brݾ9bKijm [B""&! Rav _XCl0r+1eΜyO U.֥Z\߿[e#F1.$ڼ->7 ~/Wng\B*kxw ,E7/h0d]PɆV48C"h.=РXSFJ5}H+^fs*DKt+XF :՚7К)Ͼ틼=/bz'o B2D.n XTDL򊥢o a_I&UWOr?T>NOkr5N^3< ~EÈȣf^O%=O٥S臰, ymwvcʃ&j$,=eĤxw6> Bӂa{T>Ag> .J!F@Lc<(C)^fDׇş6؆[ x_Lʧ/?P0+((<R]o%mɲط\qsh\MibX Z,l(!%f4ÄSHD]|:1K죇%~"A0ЎLmwY HaGSۆ._ ;\kcƖ-eZ>CFM}>G[*tW{D2$` iV(gdϷms3wœw)Oÿs€K;?:x0a6:YL:-@Q_(},\;5ߴ#%t@9m׾$ZZ?/#\i#)|>b)[N J'@RV" MO~>3*L̻0wT=ݣh;Ö!AP87kTذHUeBZHnN׮qrn`x;کiMGXTíWsa]HJDI vZSsh?Ln@ү9(1ךrKP~5n APFw;x{ժ\I5G&iӾsTobVύV\$N\''U6%d_Ȓ.9"D,V>rmDZlOG>#MIv O0ZⅽRZ&ꧩpXZ!X56seq ~`'KW*&nBylA3`,ڬ(rgF7a.|Dd`KxLL ꡐ:\1:[)@;%I3\t>.xa=e,+zԩ.@)zJip+vM(mEY)ߞN*3}껦[? Rn-l>\BEnmͪ&m8NTJ[ij!Ftk|%HyL(oIB9[ ފq^Okhc);[O/[4 Gw>W yaўH8~1jjDV|J\OQ 2GA CLk @S6-(DrMt"c[KHR{ kz)ۚU7&n GDEݙ3shOYo5 ׺oDPxc< hͫT Q75,'~Jǀo#rK9t-}@IS17E#}(՜`a*n15}, 6q#ǙkIeoRk3#| kU-|Ƞ:%ʏU-3 d5/իg a4YK_S2iTɋ~_y٦ީt}A>nw].4V̖0 iu]90u>slq_xђ!ݻtm93[ HE;{|dS`dhpu,p)4"As[Y_`o \Vx\5Mz{UV5 آsddQ& E wс,pUB0KB嫹*ْi LE9npإ{#_{Z)lNH׭˶&=s[E/q $- YcY>ID,OU¿0uF*FJRlF4K.:aQS۫3(ح@8)xw7;a<_DӪut4ōvj$5U3G)<*s7]/;~hE;bm&FDVK峚g^zx@9}SVtkd? Izv- $oNx 7ܼ<ǢkQ<5ȪoNL'rݍI6}N(ICtfSQ@G| huMA[Vqΐ{WGn"+C}$ 5|!|!D>pP~>9ƺrVPd7?.Ej*$est0R;'B+OkhNCxֆ^W ߬z,PIZ5qvWX!KBtDzR =Ii? =*J#(gOEt2օfi`1W4sLRΕo>SG+ɯf`ڲ0-;Z2vUNS%ƙΤ'H=N^HjdKq;D!ˡ,A 9 y4YK P`~eQj3`}F}H ~Uӷ[$B{N9N%~&<t٪wiXfXЄF|IwMM41TX֯r tJns%@dG):Dz'_Uom|k '=ܜAiKO) @aTW=ٞy`u^@,sڿ VTl#_ckkeOgSI4\h!RȬv`AӪpAּ61vy4S-l<ILJ.%OU%oqCviQ#FiE9HQB'<|4~ 0 Bl<T:!Ә1 tB8= {K'1?0Q#S!H̳d|RK,H{""'fsQT瞋p W^tM]}ul!BS$37(Y|k2GUFH$?TSdٰwa$ƙ,0cO逧"qL@H}'(- <@!~.2â>KO8PADB:|Kf}ɇgr4n̂C|nbե`ojUTdx|ˡFVF^m'rIݮikylDS yΚf~#OTQh[0 ۏnD19`&c<l]"ė,y nTjw+jk7TEzNv[:/Ey=bfk8yRWɁtqc{P19L]ZpUr 0x{Ʉ9Y)0/EXf&yU'"{`П1C[%Ms\_俏q؟C._!ǂ<>b#[C= 痱6Z^Khpb(_l-m9]UTV Ҏ9Lx֨kBzfMgwR|Y(|W cב!krx-"=6F@zzDCXj?gxLF,2KzɷrKmP+7uyݳ t+]q%7>5~x *lώ0ߒr6ﭒu咜;'{ph  M88j%C=-FOKXZ.x򊡢W%ޜ H*[W4_=C$@߼yMRj}&)Kr}Ʋ gz7LmwÔ5c|ڕ聖3Gn"}s,<)MIfOu56O"c.TM! 5niF׭((O(yGz_<AR_zu-É,@?hkח{M體pYkaFzoڃ:@ƨ 5\:AtTǝh8Ҋz8>9w:$/^^G5i]F(Axhx./ޝg%t )HCD㛵ל/1D=x8|,8Fg >I[IJeu8)ʼnR xkh}~)vƒpo4Ma.)wt%OaDuF#912Y,^)@;*5u^j-п}$stչ(tǦ ^ws?s x #l@PRfkGsbOKSҲLh0TsŊm;XV/a/s)HFOq4۫^p"XPV_˲E MJnv=X:ِ Lp)\R>ls/wey좚lF9FdEC,>WP+s!7ƼyZǼdVI-2+ _?" ~ llMRG]>%Aǩ^A:s*( !5͛mo((Cn/+ęqV;xhqe g $5Aˉ=357ہjFɼw_>%C0D)gYS2~N aE)kss\K ?`!vJ~vKV7tD[':E qU}Ӿok?beFFy]p%|}d&L}͂l+&5*ϟTdT7CTƑ6-W:7u W7ʹ< dĹZh0\h7$d1 l&>Knkj Q : $(.ikQE3K^n3ҏbتb -E OnE}Iu; E?I1}UĪhm7\ +sVl<kRT{)j%KEq⦢6b~,=3VmjXBPN1̻ŷɸ\moϬzWKh1?\|=TMHAJnBzԮ7O-U=MՍ,m@PQ ~Fp ̅uA%S &ic֟k, ;2fƐE;&( [,i'CXt0,ƴ8MC,[PY[ VQTKGn'zbuvNLcUԖi'sӼν* pfh;!t6P64MV[D7-i݄ "Ӗ5 ߆aP(+ er(?Q?cR1khz` А1c+kϧ#e]W@)\rG6o6@ljuQ242;nGs0Zݗ$7#*[a1hiP !NQW0VEJʎ|)Z8v⊛y6&Íȗ  kѾjF(ꯉ!bSE]#B4s㢚f"e? o_-q0~J+wɷ@ _"G*4.HhფX x 6MÉB@eWs%:u]_k?{xI)蠄 Tob(FfJ$V ?y;  Js\P :BcPzPąΊ^N%`Iʬٓ؉"(r-J#V*$x97Ddrs7K LkK.q$z-FWM* 3Ma9;H_ 4R!QH7mKCGK(S~!\g w8TVDj 7~}HtP:8˔Nŕ[h1a B V mᣇ>B}N՟9w" oqfS:ܡA^bTT>,> i_OqDp.1chI%,D*W)N;^Tؖg4&l| F,ȣr)=(sdtG "CcyyiP]_C2?I`w F.n+l}BoR^m;k- 5nR}FuY&JKxsz) 莓b"{W\/$b.|Lgoc4nvؙGV*C5 9xF'w== #5҃ݖ׳:ٯw Bdf r(-G f"F6_6drkQ9ˡl/aRpǣrﻗy* UN xt{s˚O3ٮ3. kЪ&/n9)rp[WFْ̖YUgG9a-ױCFjo9"qL7JpÌ#Xz(ug< Lvuvx7*MKr# gŅ|Dz^GZ)uhcÒ6)-_~.y : <1ϔK`.S얡GW+Vp}_.AMN\ 2q(2fqɎU(LLV=h32a:r\f$nY[[TLb~袅$eׂO` $y-@ C GM\n;{b[dt1?@ `:|'2}I:(I@6YZ 1}y4hf[M*'x?}lLҐq0Z>RlXB) -Y(zuik1~ڋ~n]3=+/.Z|KRJ+|c_T)K=kϱQ>#~UTt=āPIPſoUu_UnrHPqIV[YjId>4Q`1RX"?`l̄ 5&L=yB&O E:8,Kn%p>DVf 'G JGeKⳁ.,Oyj\o $lQet E $$&ف1A_eX9?LX9Gg\dJҐ6PG`SW؊Ɗ^Th;cP'HDen_Bdh$d8 y) a=TW3)/j xJqg9pBR,&|a} /Ԫ#0.fʄ }PS.?9tv v) sRl'Lچo4vT uz0inDqCDmlZ/onش%pPp=_1)8߮B]= 2%jlAoI)9A(j$i9%PYFx¿2hn(k2p*b?f3 R$P10P1<薨9-s-Mf8Sz&e# П6wC);.pՒ)'7N}t0>lWu,Qbt3ql D^G,RyKd?^o>H⚙eK&Sv(oS BGmgCG0CGhTLjcbRrJc= `'ă e/8fCs:pg- VI6`%70;Ħ;$&{!Rwؼ/~ L0a`4Vy`^CLNqJnfjxqK}>ګf'YXi w||<-t]2-GP0Xb 3~3'OY|ڃf#1P.M \Z=ŨZ'Qoגie<XCԛTpu4O9_w_֦?`YS *rRTYfo&HFeV=e;}e?٬JVmM ˫*!]#t+lXcw}UЄ]!pK9uR'0<2)!Kɑ le8=x -Bt];Е#6R$8By㖘D[ndo€r:>, K&]5XKiC/)V)2jwDU1}#6] Qٸ}ԟCT񱵠?|O-m_Iy(u)ԦPe@LcV*X舘HѼC'cP+j\;WuZ8=8Hn 4 (ޖ{E-!u@4o)\SOEg4iW6ze_K)rh97-s`H7}o"slh%̡ €Z ?"uG^VabtS7-w,H""9Gvw)әDfEƓṯb|ֱTEQdGǣH= dIQ&b48Jesڙox`{kl0!hA߸%;5 HP'\b\*WD_NFj}f6'@a+\ zhh8^Ŵ Ni)DDuON`5gnN5-Lb#q)k .o4kĂ(r"aƬgTH|%]`ɰ&4%-InUp# cilrɋzQ9< Ww^ ]tW<ш\'\GOF:~o8zww1#܃tHV:͌ᨣj|UD/]g(b}:TnQ_B;P$OG(E :%oiIGOGF h3KÁ/ ҫ1RxʭQzѠܗ9<ΨJ7Q" cU 6B&lF(^{B!G(o@u~d) ̹_׵!^@GҘsJoVhԁbzER ؆jh8wv澺"+)Az&׭"\yP93 U!śnKvZ|cοmvH%L~ƪD-AJ*N%,_~F2.`~+վ;γ}75W?ԌMVǽ;F8 Ig(Hly}[NKVucXvg|4w 9 ڜC*>I:L NQ!h N%8݁!@|xud![JQQ'VyPLk;9y5zAs1&_fadZR"7zLqz4uϜaWa }@pdH-1l'g;J#eԀ⬑1՟V&k8 Ө!cv|#Lj,mSKY)5}R_5 :^*\8"g)\_xDs,w 62@c1v"i_4JG6P>zͤ:LD[jvJmDD#!sHtq&d""*W6P]0CjGf+>&w\;Rm$;|ܭW*@4d+U֓`|ud_qXOo| EDs66<0p^lTX@yCDL_[(/+5$"EVWgbc|7Ih)9N@)~ MQXe¡ mp'0:eE^.-䨙 $YQqTw\l!wMg'Ỷ'HwklHDzJ+*z9>A@qiAsEW Ύ8l3O]Do7 .K8i׍yUj8$Phe$zv1n5vKx:@{f&:U;G-fE4ߎ 9ț@qUxl\6KS05bB:esO a@X!p)K FyMV^R_Cvp@)Q5-0X?<٤tr$EKc%F1]7lRh,b 6ꤥR=5*tE ]Pg'7Z1#Vd$2(V =[ncpڑFCyÔ@vV8-zu66zg5|w洏xUlEX,W+̭.[(G)3mFO.ߠF?i@ԍk3^] a,C"3S59:k 2@7& jDlbI5Zi{L"'.]qzR::{7&dzlOu)o$>70A=1eWzG{y팓89v`Gi%. yf"\ [di{3V }gi5QM9,S@cYs9KAAE6nq`vhRnG[ F/[,cEpΏȣ?*$x|}5Dնc%BX;^g+O'҄_y9*O:.U>Yj sshESgUg?aar *[CK 4mV;,rN;J zbO*4 G V1lpo&'(_u\!ˢt[Dat"8UGMerc;>]t@øtBq_#c1Q9aTfa9BDthCoSrMU_P\X_D zʹ/eK<8'gd|@5bXKgCT+dm5npfG |Cfu8ܽ+U9GS r 4@+1lD-aAfؙ)(Yէ8'#ieG*O' y0؁Q-dh߰-"2S%:!^Cҽj~m)plv [*#",;j8 -NʨE?#Ytq{q=IvvI){P%XtLQUUI0rbt"6z\Z&[Ǚ19<_1E96360tϵ׍ F!O`p6ulY^1]ti tI w$[}fcUtxzHa!0Y;}}yq%v Bܼ*`8RX4I,Ƣp*%U=uե;avѐy=5ZXy NhR4!pˀi9:+B"gjg<pqg0Hۧ^q ۬+-mɧ=D[h֙=&y6SxKI7O$%ȏ:1x8p ՝MCH])zü{IT/FyY$ݎ{".@aPC c|BQgc@{k-r1(fK~"jbyT ~ |Y(!RsIA*l|69"]z^xk\Yk>sZā͞y( o{x{;9$> 84&M7hˇ>*Ƿpi's}W\fMA]Qψdb(%Piy1B>9q}ޛJgFfC:c{)f̉{zJ{~v5c5Y*:Ygо ^yEҋfT2y:%_i&L>0}loDۂ(S .0m#?a:qH(3wk sY] ~͕ui J|R3Ҥ;zM8s*nц) M(ЫK)㰍=-;{ն< tx1?!{.p`lf2?"sΔA,&\7n*W.HX~ \/%\AI.` hR!b֗51+";Ϡr*V"TF\ nQOø};Z:\cniS,sa'Pcm% HHi&TDpe{%K0K_ۆ)#)m~k(Ԣ|pkla@6Ǖ)cIT7lB✥ؓ X=C6Z9l3#U}JYLDCWbux|$K"DmD?F)ρńR' >fg8ƠLT=X;|sx͞ nr ;n\o!cPBCR[108nm4աDw"ƙbrT8n ɪkt=jK0B/lCԮ+d9O Naj.ېO%X c/9O }4q?blxsCu7sxI$9ȘTMVl]}ƚ dg=QcB[E+1· J(EӈOfykf N[BDL&_XQl6~g?DS~KJᮊjNB\`(#6>c9[ `Z Hh=IJcuyt$݉|Gf'k㖷K Q~y @? >P W3!ogBA3׀$q6DM{_o7i4qA92hu.ߟobʥ4 5AOwy] ڌPm2n4 XǨ}[^a ۝EFjE@BU"8$WƁPuF+^q#J[x!/ZIq_P}3E($z;{aN7eU cmI+w6@5,A9HC!F,C,>%T%AM|gw~v{~E}j&kDzPxp53GjuҺbhoG)$/b W( 4,{|#_\Ӈ1݅3{"6l{z,;+n1xL8ۆITZ 0c lpz"5 -<6et"eB͌1vBSމzƵp͎ٞ~"[C)ke";$$lgJ6VZCkL9u.M}q T &I1ReVGE8̓ҝߥ.7R?"-Mbu*L+N8W~kds8-3GsYhku3.\5(ˇ4 5O;Y6 aeS6W8d[Ay! qe y-O T~B`avHS͞yMLq|Eh`le R65 JKEwYdDzQFrd1J&[с`KAWD \&tՐIUm GOZYFt@Dw%0;oH"p;9D1$/1v8!bјƵe{4}&xKj :8yt!uYaղƋ$"-@&bє8'">O`Ƕr=F< tTWYܣoӄUHA%PGcd؞Xζo]P?>H҃E z7V#ZAgy^u73CX:׻H] M@ $I.D(tf"UEUtj\8\@RBeՓEeq;}j;xtMGꑣf4x_+pܝyVi9!T.YjHS]?|ϓVAho)nY'%KŨZOb Z9Ff|d^=(E,+*けu[rU LQg: 7V'RGBO\*Q;vdqýw vC1)QGS-6\r <.;WX]*_ys\{h'22X/[ԸPB*E.̻Sghѳ\0v `6WL rpp@%Gm~5,/k^xཡY]I( 97$( hA ͸<'LtZ3rOIVQE+ӕ栎a ށs4YTvJuDEwN_ELGQ$e̙̗g2^\a~lԞ 8]k,-ցP,̱]`#&>iH%do9jTLJrX8fsbX7@0™?B w%A fЙ0ؾak݉Y'rn)0!n?~k!y^oVtf5IrN2#@Z8$4&CYylwhυw| 3\aW_:rq"o~YNt 'J&H{=QLQ"aD^[d5)a񞊽xSF&^ހ]mxbT9~}oA}fޫ>T憁7X!$0宁 `3DAom)Xu/~Qscu|PKP ¢6ۡ:P{tJ$Vv'mȦ* dO?v U^dOɇ!"ؾc/h 9YK8wPd]88괦jLhkO2r2SYÔ2U.A:j27qK{册 < ۗ 4n 虫zmUH7?Bqo h!YM{E]diqQyX|z!8, Y*I0 Sf\&].|b[:6;^rϽ,SogmPЫYtٕЯVx8tuҴFbx?te4Ri_'p {pfh?~O!CK ?7}YQ>MD~+IZJ&mFGi;.Sw؎i6ϒ( s3hLd34,=>EI HpY{fOxʋ&ۗX4~=0`}rN!i W3ňt>ZTZޓfxƮB={+Y"@,U_#Avk)~]I_2iJ}+s*U~l<ҿo ۚ%h;!DG`}-FPnisCt~s @ C)q6 {T jF{@$ 9cC>" ΕWQWR]7Au2TL!#1+涘@@>J: w92X~k"!eW8" aJ,$wٲ!rb+վRC"3(șAӾ y{!}! <=6gb$1~mZMJ潨zǰ9~$ N6~;\G_GIbKPEe)Ȧ%1ݹUܝZ-I (VL^/$Q B X5!N m}\HbTv_h+ )G4uw+&9u&î QJ̺@ ׾wa6raXތ9^f+#R+RD#e(ȹtzm#WT,)F)T)`f#4>w~SM#~|Rtzr5?( g ܦS $о$S_0=@;p':#ICtތp}ZQC5HcK_68ԭ\qN~ꝺ]GPE08raչ$oT&iy K:RoCK''Mz!TJڎ;/.$QNuwEj@ni|b̯IQ^:jZ5hu&+W,7mU3׭]i|֬oft V,aY0s)w_\4, o#P`eqW]LnCY*~E6{2uSRIyN&'bYMR?]`XZ>,N.1uwqiR_{u#ooZ|l߆Č6wiZ2-Hxh! V6HdG+$T7&3p7r+~,Eځ~؁梼Ƒ!ІkP(C@ EИJQ@zQ,e&fLxwP Z"'-L<`r9T?;ШidP@_ ͙vo)kQ^Pq~s-od"Më>@%N_,a];$)LlgQNPPhˌE&Ӕ;eatJR,֤MBQv$ts!`ffO m(#("7;Y6}ik 2}~y ŠQ…WIݠ@="]x-%Seh:¹%˛ 3>"}0UcIezcUS` ~/绎d`KؙpzxŨ>0S˛(J:߁m&C\]n rx;be7ZhY[ƌzzRܱAUqHC^kx"X:-;"6ĂQ@`GTa/bT5&"}d.E;gzؔn^UG0"ocr=)Q̽lj,TZDmox L|h]F̭`3pۥ=sĆM=zitnW5ҡ1Tlqc,b6\kCw0C7=?8K 6W!wfu4!LN!wK)An`{x[$%_Hd,nZ1`%Mz`uLaWis(د&gܭ5WJ̜$?jajC].1=hH30n.LjRL8!G,1Muwlz19*^Ↄ< o!Ҿms1&F멂ݏCBY  : HL S)vecQ䣘A.Lq7Kƽuy`Rqx5y&z@$ +fVgeVPaǚd*uj*WSP%OɑK)I}4݇Q.:@ZcӕA+5dN o°ͥbAa~22܌phyeB9G[ {VsjE`Uۓ@yֳ^yc`9pt4S`Cɲ[l}7 7:2rpx~wiW9o^7 OG}C_ q!TcanF||KD_cvᱦ#`h(P6b1,E&2Ck] ;#'o&.S'kRk2#-STW ? *!Dj`wF ~t<ꔷ Ovc *m qF$*-IhBQ>hcW?״δaM.ɕ$FO'ĕaͽt Duc.hͳQV/3,ѕQ/؜^*Ij@[#iLpK8PpfӁT|8J ;mwRc{WfF#P3k( *2rdQ.=`3bV;@zhKcʀM}y([HGqq?AZ? WNjԺ f7 1 c&iX މAibs/ ibq羧u17a5y>svsfٱ$,VYܴ8tM̘de:ps ,xFJ(Ӌ\Ptp=̺f FD4 OYMxla'fDEL9d/+9 c#]oKRhʁu^f];A<j{J )9no5VhI7Yۊ[dRmꄑx=$]# ڧ>O,F g @jA7o|J3F x*Y ;[P%6?9kl@ِN <?{뷍 /gۯv#D;jst&VsE`lyt*PkhCD yӧWb- SAdb71yB\龥}ISevCYU'm/fPZ& ؏ QX4"-wpp=k?=4I{(~ c5]*DO!js𫃜%vM< ATݩ$OB ӗdU]@FY)!4؜#W~)y6}6 ,gP)Lkȡ 8$9PϤH']աB;caR\h8xDJ򝦄̒)ά2A I"(3k$|K?_ړneاi׼B܈ +g?[RSW ufQ _Ao[5LUg1IeElj"yr[}5#:#S I]/vmmK2+c5is7 ƒRx@xۃk97Y:|KPq*i-~"M*F1O- tQ-F+wvpcX4ߏiMK}O3S#tA;sT<)fѲwdi *vI}I%="ӨV%N/8$veOf1IX{y,d+ Ty]QzR- )bzJV6E?+?L#g%NhPEbALd">\O la=9E͵7Cƈ5Յ@s$NfO,x|}f9[xh4D6~o9OGHD;`L9IC^(Qs4aߛ >dEIAJy}N)"izL G6%Kbf,?d,V~wL;GeS^Zصv(*w˾؂7Jb5=JC y,T 5qثqGM@ :K524(׸-ZL #GɃ]!mPyrι3AIm:[s߶C%jELvWOÌ\pS◮-iȷY'wl\W0e2mvSdRt̪֛[ZpD햦4ȭ2o `aLܕ^lUnpL1<=|7"d*ܼMpW&׸>śb#R9,6e.D%jxnQ&bu砡1R5rXM Smv]rZ<Җ(4zϼKc-4^:Gu k)e !-eF:ݬC[͋ z ޛݱpQˆp B)|tP ~M\ KѲyDت"d ͎"QK_[x3IƟ17wZ! 6z޼:l>Ou='U8g=f~yj$#[;<${~Emq]dZ]trXk+ D>=ߎq Ntz#ӧK;<2hX7"#/ ʒTc\*sJK=z;UJ `,AnLتLS#8g 8ERzUDK=Di[ċv|h *,þPEu ̞ ZwcDXQ|G6ca-Oȝ]4-A|PlPm,IY,GyrKX4e?k^Up`ǩN~z ˟x)QeLK$b<(yoIbysZv檾& xUl)@7Z88La9!%}Cǩu Oz{tBT1l}ڤp -hts*g>E$w4;uj:UBat*Ub| q0(i=كQ_`ګ*Uw050*x魤T몐 UwOh@cJ> ,HJxDM4u&ixx}gA{ 簵'I;&X--O^_2+jlQ۞]#V 7u[Yc0&:o0f x«goa?=̉& $@\? O1mٖJ&fl'/-vIH'&Ҝx %/8!o y[yP[0)h57@e3/ "8\]CC[orco׷Vu-E-jax9Igu .5og BK3N[~S/NX4D9bw)]ܒ*3QÑ}5sDweh Sg:|/ƾXS܂+"D:K-zXɾ=OBVh(~N2p?[~ki Ass5`BFN|6p2QEMy|d ኅ9T֝+ݚf Բfz /=a.ĥY7q\eU}yR.BTNIea~X?6{«Yp \Q$Rp&$)zUeM0m"(&Kr ȀG~MSW!7B,-wMAI.<{{P8WS=|rCٲ0=K-y7^o.TZCE- @'B Cclzj36 n{{}9@68<U, D lvlBu5wTPY Y٭O'h"7Fk 50q$M\p`gސn+[Qy)8_aIr#Ž|mZddrD߁ @ipZ4_=BAh{ve1/sEbM[{|4- FDaƓ.D0|ݢPm\en5!˖o,6&mswXGV~ {5-ō*)4[:-_EMg:fQ[jUFx#c5sX c:nz< _ZDv ϵ 1=YOvKfg2v6(bHA [B,bV:eҘ|*Z]@C5gNTvGZ= |_zm%x)QP얬\_;)rgcD#Ak<ղ~<3`0҈ w<,=2 F^p'.={3Ik0VP3T*Z? e4F-(9E[d!*׉1JctEt#Zf+Ccz~N'dZjMFШa`~S)N[[e lZ/bJhx/t.3/LBToL~tq" @ (|x:&*xn3߰2˲o64&ᚚFiW'wqG=>NQw&fp9(8,pN^S;k?7|rO$)?HQeIukmC l$|AA X^ԗܓ`>;ߐ1 D]Dž5o{i@"9n<{fW%$ͫ.E}$˰&1}e u ^FLb.4J|I -@hɕGX`*` o،,,=>q%Jaex.r=6kqGh~?R ߰wz?4Ӫ#0p{UNY,"|`cUjm#굵mm5؋ KPWʴ79}Ա)+:\{X^h']0WMdĢ}o.m;Vr u`0y q)֫z|- -3GEDuwqPuED$? 2<4KlYRp=^,Z 9×J~5S ׵ƣ$p ,@qš9(B:Xc#r{ܚEbL֩OέY @ɛdcq DnP3Ѷoһ _mNiCB0:TDlQ*D{S`hD0a:"FREkuAs\5&}ux " ͐al4d҂\\⻲v"f }wL__H=U]咳 3] 1֑6`rm-[ QdշqUAಸY\8)mMljKVK po 3Ϡd'Q\}B},3w%4.8ߍjRa}0I0f8»!!$w~ J4*ap߂¡m3.C7(5̨v`aKAp<$+ :5Qu3wxw" )N$e7[QS/Ɩɰ_p᥻`Bn' aE=H (l[ڽw$m9Y窟igXL.>nUEjÔ@P~`BhjE>2{`jBJ .g x/+50=mmd9j>8.G<=@q`"S; 8Bj77pDzE有`ѷh]cLY\N0f5mxqG֩WY-? ).dMZ1/s׳\d-+N+baqiov'RhV{`ܾ#FW ʊoq{F9)G91]-s'=bGoLeQZAVv@QI=@W`T.S'5O|[8o;\p-,Cq؆ΎTwWkUq]B 4cx<un C'#X,eѥ8ҥK|0qp6iGy%Wi=& *v-${dM~0m޶WJQ%zڊAqa)b%ZXaKsU{%/iM7hr2ir kYbQ] Gy_Kfsu' R.K/MAl۟tTaf8(@H@#ϕ5aP Q.Ⲹ3R\s+p"b~}:[?8bxGp;>Чc̬%ȦNGLNqYW&mWM+H092ԆbarK_Tq"r4ɹ::BXy!wLe68VH.ҏgX\TnvH;xɘ6:c+q!3";Ar>fZs*|Mlܸx$$hG^1+'jͻSVxr./s9S'S 3-{ _#1Ç%5@ c YP6^,= ]3@5 ,S9jGzG6p@e-6Rq[iqD[Aí ԠxjvYwa0A2X";Ql9{\8v_W G hn:~@ÏZFz<\(W E]V̴ɚ_WwUOFF08< iK[i+&PX y QcT()=͆VaJ]hm ״= YE$jw9:I2{)>/z=> "V V7Zj^:\>RWw1)T4eW+7g"kw N2h] ]RPߋx,N 믟${N1 6w ݏep܋r24ͩ70Zn K%>3>zJF{K|v\b ~$MSh'Dyy!?nBn*PKTxTb)]BL>BCI|Aa)zjmVenJ\U : ȋ`h%p6r 2w).5꟣3'goM2P@>I^8d7n*U惛\lN-՘^ܱFCv!,ʹb tԀ'Yf(lSK?R@?Z {tW6~ďm1PŰ%HilTZ=c*Ż~Y ,ځI4a%* C\mm^>jcAoB I"Tin2S&x!ff 6q-O]bq0Q3;0*uf:'7ojq"͈)ODb(ir b$)g4w.™iBqtTVbdU2MJoX 豪Efv9zf3Fդ{U+z~ܰFAxu04 4pX3P-H+PZ qKt<,"_j*"6(7DOr.f..m VOy8΋>%Y!Yi# ^N6 *SW\w_ؕhK< R7qP[G--%_mO4^z&K9|X~tp8_n%KqVHևD9.Q,F`fbIqJtݦ3%/Wfz^A17J^ԯ .@md.H~I쉳w4:!?iv'|KhSy x#Gw_Mt9.U+MxFO p4\ *~ dⰣ>lƸѷ$NP.(ld=֖SֽEduJH77v^~0 ԘEQP.g5T_7_ʓFηT`Zp!x`>7:Z`p1*_E Ohc $GpJnZՋjp",h`E"l8@B]{ Nr.}.r*i48c y]t?ڬ4= d|i4r2kg9up]f,k*!1\9i8W TqE_\˜EJQ)zwTm_j*lK cz~VzppX)v^d[hnt*D']‑^=,Թ/魨UNgbP#6{ Y/EQAyWU~ы B63x _<>O65LFꪟU1zcGʀy7V.YN*t0=ԆU-8롞K16 m9Gu-hqbG^UAWLS %.dEՋTҾe:P~S SqbCڔ Ju!WpA^ܯȴ2c i6?g(R'O-%~(Kn;KMNkɥ,"Jܿ4c 4PŻպTғsט)"οr{x&d7l G VN9d8G([b []'Gם?5'3x)?wIs>(j/3(xcK@ɗo<.WO 8r+3&`%*>eOڜ,'y/?}@]1 (q-3hTY)zXVmER1J:}=uέcP*% 01um2.vCFQ煉LL8/qY)#p~޿E7"iGMbnH&A7#w@P|V䧚_9ChylgcB_Kiͨ])^ǿB̑>b|;׈(9c,ZAT,Q_XIo>CTT^R"̽VAh]DBKۖ4,OZA;j8 i9PUU<~Ϊ! /<.zhBNO=pU(ȇƸzzqqy,,ovEs8c]աz$ZuM۔vrt$$:f,c:%(*cG߹HA#%m\5f8Pxw3503K!F'EO.U* ^Cgђ#oba)WQ<Ъ_ i[ FbT0'gdh@} ?F,E˻1"yd&m+\qem>%jAЉRDn^p_a*>/)J:2ia;pqѹJEE&24*'`އJi>ckP / ̤ D@$A N~oE?d["Á:.yGe:NhYZݫ_D[oH3|S~W?rukn+6HEj Q(3It}{򏶔8L|;00ӥf2lBaxXgo"h҃a ,i'aQu?"g d^+ۊ^a[L އrH k ?TZ=fHV0lSk9rPahdEx+:"15G7Ϻ?_( =4ROhr˲Ta{x'IyVZth&_u 髍r~?<V>&l9ٰtr; \53AKeRaq%Jy$5|wb/жh޲Foһ{kӁЄ[FY=\[X A}/UoCq\ ώC@p٭!Et/>١Z_$@ֵ%LɼQ{r ExP*=IzXrD.)?KҌqV1"x̒=`h_\T%&:טDYw 28\xՍM,ڙMG@m/Df#Bv3Xҁ 7:IC{>f.,lt>Bꁿ :xMN0[L$L'E^^c[46ly`m\\4l`V  mBbuoy $6|)i1Ӭ7A).NQdEj7*Ǡ'Z;ؤrpCxWADl5ɕu8ȡ[a+B^@O2hsLL!ݰx}xv+'8ʈ*J*-us.9G;N G6U/ٍVv] oNfPicl"jCvpM0o2h~ Tqh_XP|Cql)@[Juez9j%ǁ\ў@#_o,Im\qMHA#E!4 ͯcwɽd TFGm6w̍$cT1T· ZQƫji*__LMXzC TCGzԇ>T%螑nNJAaKWe. 8/f;XrAm4Huj) .XrM!ADI2|.DM3<%^DN|ߤ8Vcޚj(ᐔ`LMyuԿ6N%$^ 9bCT/(׹󏪘:F{}#9Wa8j:W J>,1LђQC6~6,uH~'/u\9{<6SzmQM.\'1?ChF Q 7}@[LS{ :h >|}r9f߼]N` ~ Ѐ 'zJJ Qh|cSde&۔ŷ\Am$BAT5 ?*oδ*2V{T'{5Ʈ*wj2S8=P/F70ZVG݄Q\haN$-~e^_XMHJX3D̄a, N,:VtCycTUc3R3@ڗ_k--k .JAz1EZ^` f%sl#) /… W2 Nھ0+2"3T.؇'mTLZ\>9ut(k$AH+%v+Rc oȸ7RI [Ғ!%*T+V|~aJ5XFy.5a-B65bP;PilZpv$:$GΥH۽Zyo)F \]ksP-$C&d dF\gRcM9g4ZWo'QSKSA;?N1<C`BL4~Ks~h6!XWdUHr ]q"57']:}ax cgvx(͝3U8x3wv/ |B rQM0SGLըM}tbYM&oy" __ߛ4$^sd^ M"mQ(y\x+w`4#CxV4 ( Fǰ|G[=reL>e *ِ́!׌62y}b{?+qareQ- bj:ߑ)Wx[ǾC&i'…Rp :s{56ʹ_u}rセ!> bK TX[bpZ-Z cZQ5˛YyCֻQ=i qBʅ t|+y$f }ݭא*J<2\{m+چPk(ؐPĵ@Mt@w,j V%YE \ 'O~,ʠ=irgp4y"9l#4HAM}bјEK:ޖ̣8j^ Du}mq>,Oxv> 1nkE_HrC !'0:x J|YIr~1SCO~jԨ !j2ePV|u?9.?6juQ7yDFԷ 4'Q+O\D ((=Ӛ:M7o.}<ٟ߱OtI* ~ke!׀ol%2=2;fkҷG)& ɣĊ^p < fH0)y@cerQy-sn? 78}\|=-ba.ϖlr(QzK$8EAN2Ƙvh0-ȳݏ&}(t$yP?WM}شPÈW &boQBNfc ģUɃ Vj?.~,>?ap%ȫTix y]ցFS&̲H.3ol^ jGTqNKd(3>@i0pEqc*7H,z [c,i{y3 HxvOX>{mooP9ˬV)BxzspoT4j4{uI*JtawuB~NtBFoE}`os|׭pԚ'8A(B;8zޱqs: }+\E˨ŖcW\PF*xE`qH4MR7<$1L c i}[iF6U U9ab+1:޹El,Iv>CvmRۛ?ky=&&_Ox;T]UW~}{ЦgB`&4nit<6 Rt ]&~g$CNļ u#콺8g :ӸSI_ןlcKʴvkId(pU>e( i9IJg5um$9$nJ8uqdC*hWk_(&+q.t~_Sq/_g3)F?{,e7&ײ !lOWXֻozx'~f2Cm󭘻q߱FA8s/"vYe<)@tPFdRWFz.0hE@T~_-/ LꩉBe, .U򞨍xBGD@pc5tǐA& Gח}&/6#RCO"EU? ff%7kw>x.Xݺ=O؎󈤦hgI:Ɓ¸{T%Hӱ|LL?e|@TvKir =ͧh2{v mPvtEgԀg3,;c+?xlKUf<_0&^Rt%/˔RycZ&dtZgz"gȵ[qҷW[Ѱ\mm ͮ|UY僣~.B/:pSٿaےZx[\@y}r8 uu}?SAqb|d4k&ѥ⃪4 q=yJIc*NF:z7O' C֦4ej[k[Ft5|DA:Q5qFtOGhK{)y)V&2eSg{B~6>$ \' ) [U:_wjK$߂+30`gҮprdtI:WOXtwTno\#aHpF푘%7#*sICzS@iLZsHs~)No5wD>}LVM6g&'lNPq+~T)3)x-R,Li lt\x;+QLCeǗơb7Yݮ8.+ w] +u[Wml+ B4YR0X}r /LGȣW&ji3>9\S U&<06+-P!0+N:TW\|Ysݴ-̤񸤉@q$6 ,eR z67 Q.<]2:|;Ve'Rad.+<˕ej =:G~WDW|f?` rM}7MGLs%l^2`QrPS3lJ(x7ͱ,gtĕ{QK. .PD.'c F {Khf8@+Sbؐ*?y T>Ɇk+NAc:b3 8Z4%{x^N8돰R}_nWc( H0MR*Ph(P7]S& DCY'eWЛ'=a|l[uT[(݊;gpn]kS.r6 b҈נ(xEd*/+!F⨈`tXG -(jwiv izfM:^ή=#'!KAjQZ*rz+kfʪ֤kTF>"C~C[vYq)}iÁɆ /dR_|2^}xϾx<0xAn%J@A>Ϗ4e&{mH3^rb13!ݻ;7%w}kYnP!b+[ +E#Q\I7: I'{]iZɚ8ܰ5bc v-L`Gݖ^˺O>m qocȭ0fG3cO^ } BU0t=U/Fɝ_n+QŻ2/yXo+'.>1#RIp̹Ocϰx+ J#,VcQ;'F\sKu=f>!IkT?TL $6Mˤcގ\)P NOeiSke|#] 0#d )Hψv ^!@>P`UմBh~a458)F /ڒ1_*duL[jb^ixvp0ԂԆe͆Ey53Qm4߮ NLR9+Ÿ0l !(8}2gLTFO"§i( -1ίQ͚f=6W8ƴuqB qVd/ a?y"_Ͳ,2Jq.{#ֵޣ̜:oVhٷcʳG"}?&ůMXjCz2v [_Gtbx&hÏ*Q{ӲB(1BCޕs$4_8T^5dwkLYoڪ9+9kKra#H]FPH夋 %ν\tț_UݸT̼D]m^ UfBL쏋tr$FL@ZҞ\#qGLZqض&~`{]w-k#e DJP `(D"yƨ#sd$DbT薎ދ3&uBKE_L5$qڜ4FURu lg0+N.oPL|땊HSoyM/\VݾiY{^z^M}VkRcMN `^6ﴋ ]ߗV];)YMx1.!7 %8P|T 2c fRM3N yn/FoD+V}rxZ ]@K3^6c&PyqhZ6hfip`Ǟb}&xS"QƬaD#ԁTb!s/<w(1>vGHz^$d~1064t>?=+v8!XAֳL8Y|0xx9D7k܎D^|ǩ@y5+go@B}[tɓ'rnCϗ"/j{꜖!x쿍\%26t|awfqe*mǰgM&2s攳7Xyn_oοD޼,&^{cHI b&|0%djhN`quiyZ!dAY_E1IkE1"UԆr`;%H|`D螈/g:Ngss(,?ħ{)J{iyn}״q\C ~y)1~ ;U,1F`c.6k͕V/:ܝ6+T #hyi2Y;&Q)kj"gϖ uRݕcPo>²>ZNww}B9- C=mTCE"mSM*ܴf %='%MCpNnTVO=^!C^x X)9O 3hye56[6F/?݊Wc ae+ֲqoV4Bz((@؝ުYEٛ/'^$p2t7BR푉% 0 ҫrH0Mm@Fз^5õ樌NJ9ͩIII"o҉^"^8<ڂ 8Kf0\ںƫV }.;vŻtl8Cpqr'ǯA]6cE-m" beXTXiBnc̮sqv JazPLF(WPh עb63+FrY$y9O+i Ntp=h2k8ICJЃ7+7. WX6*1|?_l,pjeP B0/Z uRۍk$3jݹW󣥙.Ij巜d{X>>(nSP>nTז x*gzא2n}n]W~gۜFUlwdpjO)S=ӸB1~@h7,Vէyjs_q28%w]*Tt|:3)ݓ.Fv=J%vZ ,+]<~6w|RJ楙k*s8`7eM~J) $ ֨] ?^;}ݷV~S60?F*=gOSu6I#0a'5D٢ٖ v~*dJCvtvbU?X߆j&䵱"ćpHhՃn3M/hCi3_gq5~=Lo'A4񒻛õqhԑș>[mٻ /aR *g{ A<}Cd5rrQ-D+Sʥ(¿d 0$Ax,Y g:(=(9JFJv$;iߜB2_Ud#*F +SAWFMޅkzFͩ''i|Lw+,GN6g^fd-0|e@bvt{;\o(v\}tS !]Wu$~36g39q]qkeF?20HS1Fj|1}sڟIu> 6\U!l\1%WK0{Tc](F;v!w _62;t8?=?I`;K8 ?"0iYܘqt` D&vq ]滭C? p%#d"$PbO/Q?f7Z_q(]M[&L$xꕁ8d4*?_ǣuuFP42E{m6)+ _xiYe*Tygk(,Yqjr,՛O56tI" |/kci8.at\eOyտ 8"RKW3ϔ`rtDXq@=VXJ?ڧw3 X]ya1}D"c=Dwi=o{C9ij 荒X\ҟ`>+0J baFr)XP;fQ(%v;X~U)p뢱4Nɷ$WfWv#l~yIxtj_sٗq8 !0b[b^GRn'5\7NY8`0R,5AZ.{3>@= l\7_ڣV%FCr̉.feEH݆] ϮX]A6ā|4b7͍ˌe5w>D :߭\ ,@%.Z*/r6'څ>WxĊ^Һ$ ̈ar|{<ׁ?RA&ʹsQ.A lGz`Z*ғXĒC\S'vH-Z$t V*V-ytksKgshuV z'?:6i\EQ1UXpD*8Ւ|ЏWCʹH5wЪJ1b1AR#WYVX /N|Ӳp(OBY%Oi¯&z@&H~:wL$95[Uiao{# x괶ya%/tm (Q")oFШ Ph P1vsd{Pcř|4U6 ?$R\_JNEԑOnDBa򊙹'5> R;g'㕧@x΋k `38 'ȁё\Uķy63(,uxf`ʼngP`2$|>xX#_z߷48n#?FA\h1p~P"XE%/\Jmt#𥲤*$63د֚q\r%mP:|Y56t1mB==%`K@ˀRqlR]R~ cz3-F'h<'>}&ֲ:,M+PNsAPa]:{u#RWYnvCMײ-CŞV@;q&DItJbӦ,rRKD]E)/8CAҫ`/R%ق$CE ?i.sb»jz׫ߩ淋AW|V!0peƐ` >>܈u;T#cƙg:~ĵ\qWz(kU>Љ*f{ !JPSXʄTm:XGxp*B7 Bn#]hQEa&W<2S?&z>0&L]6V.MtwBƋ u"@&-g0[ Y⏗],I#v]j~,PoWϛs~`\2P+2 ЦjDyhY RCrUX6d\53]%\8H<r4/Zn:蘅zɦV\|b$p@Ϧ%*@m)X Z)5Ml9-ЇҸ]:T{/Y6$`G[? ׭Idln&a#hV Y'v ppw!4b^_ǖ@O-U uM\׊`Ǡ!uoIǔPEMaWS&dXB5˒΃5S)kvik] Y,%vՋz4!rDӨi;cn=Ӡ$@ψ`HKl50r</4t\vn[ we,u=F/WY)Z*f q:A,C ep/SOP:.`0I̷,!P#8:ڧB6RrYG}mK+[8lHb;BKmq {"NNƊkWK"gSl"@9]!Y>GSCN kid4*ZA}.lv ȷun-êB1oGYkkQb0 f4<i7G:~"$U*R /Z+W֋P-`cA6R!Q$|f ٍ^-l:21/nD1h<{OX:<՟D})jUmszIfGx%Drt"xY_ȕ! YMTܗv0Sb[30(!юC&'@k"Oa1TWhi-8fۑ}eqM=@{~>8)m< oFpr&/0>Or[T mɊZN<.r)GqOc%B8 ۩*iG}ӹ( 츙ׯXUAR-:s8[pmWe\"D8Dlwt5~k UK(z䄈1:qhVs3m7)zVه28jx`w܃??:Zʎa6c-7.)ʎ=o,֠b)s{O.Pz"l{1:2 Ě^<CT^V05nUx;K[`#pZ5Pq滂_.GtF h9lXiR| :}'Fl^ͼzSAzS)z; )NJ+@o't}R]3eH.ҖĦ0ivr:y"L18Rp-Ryz09KPX:Fqy9M(Xr SjK +G 9ħ?6A=W-y,lD$:Ň/ab^(%N$(͎=6Հa\ {v$⤴qN3̎e"|'eγ hM귙C!5 J?0'[ X+ڞ"aBtd 8T)ln7GW1oj&l,Eс NURxuߪj#߸|4dmiJuWA_j~"2I4ۈefZsƺ){RmJ%her\{_).R(Zk%CG% ngӖOzwSFB{r@"whTDgg ֟D/߉#"$Ξ;td304_'t ><lXJ&䕝OM0SzTAn Rg>I8bU/INTmO1q2 &5RX;k=x4kLc1η@-|,B=T_%D.x ,mlMXp@^7Bekt8 l^W{MS<"L[ci˛q]zOJA'ʃ̵wB6TH~k"6P֦ ."6-1 ځ[N ~D G-IAeh/]{6mϤ+dNDX[M: 3(RRB0_l뷺4m5<&p>#3DzݯwY5;LP6t}.(u=Qob/8#SLׄ0r* _Js+SXUsC?kC.Ҙm07̌I;񮫢H46>ދ'%[$ #h"mG_&gf!3hZ`_˂Mkyn^<-${΂(YoksI!UnI')V@3^x~$Rۊ>WzH,Ƈes񡘴J&YT4ݸB6<7슯Xk"S3 Fײ1eDRD3QV@OrY!n^"es**s^T%dЍ KuIcNe]}bbԍ krQN?Hۇ//]%1ܾdM;pb8C+q'2 $Nً7ms\I?ԽN<-d]Il.ao\C*HlwN}ppɼqV>HC#{N ?nBd;5$tBNy/"7mDS*f\)6{>T{f3&T'T=*5 |"-״=t""ӜFu&`~`&V~F^g=b"5Ž;im Wͅ+8\)ywp1˺~E6mNG'<0@`4kY*;,ÔDb4 ֑2 {;V0&B" tT&̄<-No4P/5[C2K.VlYŐ[x%jK-KlS4 5~xە=fS$DPQaY2e 0Gm?1)ʣUB$l;˻vb`)3lYCѓWc +4-]=i۔HMT֎8GpYBX`nLλU:=oUe4-.HSУ$RVp`n줺.%%ŗU˲I]ړhB %%i2-?!˶}04n3:^mge\n&:Efb$r4;~]tѮ9^C"OaU]IGX_,g@_zQ>;;4Yﱭ|uhN+.k]$>&rn7ؿGVJ 5n!1{gX_d~3dvƭ^) X H'P <r?&>HLТTPd4t ot/J@NVhm݊eaBH}Y޸ P; wxRg>-߾&,OՊ${{H#jNnYy/sdwxiޡ I2^8 ]i#߇ \)'@\EPgЗ8)k8حUI@njx$HZqzOGGز*D!#pI!2x<(5|ƫˈu1lG%~I>'*숺radbe6Dy팹AV.i崨0*N;߈PEf߿-D4F=TA#''YNo8gpȡ]: '9E1AIO W˖Z'XC~nz@Z-P,n8èכiLjAFF Cev%JU ;rޅS\^F`mYE2fbi|FG{D¼;P[sν0Dd>}ZuDZ9]N[ktLB٘;[H 1;݉ʠy1cgB) c s<ߝoTstu@höޣ SVkv;} MY Y{;NF=/Qu'iKI;cNp,O{/v)<Sz:EeY&5=P#)$DIKAs*gT)H bSF{ܫEa'MTWHLf;0Hh% 2'j嵈I!^?RyՊJ:::|>!LHF//smGb:С *M:%c'3$>&nh]Uk}KC60A]ﶠ0JJD*ǽ͇$P;q/ĶI/EeoL…%8`>rc@fM/|q\1NN,W:u騿YqY%:篂/G +Lcʃ`LS*&7(XB\)όb Cg  :ʞ 5F#]B tGjT;Zv-;!b%%JŨl٬# `+Oϰؕ>yArhwwR/`4]D@n b6~nuax D^a h?M[v鬦{y,fY1[560&L~K0m!5y 7 %gɥٺQai|m~N֯㏤}:g+zǀ+Ԏ)#x<ƿv{,!v@["R9=z:"s[HY:no/HMݮxRA? J W փ}%^\ ئʤKǜe/ƃںdh$QJp 9E:Vr!2MP R5&@DmȽ-x0`&EIxqu49=J9DϲhdwAu'u.wv.ڙjn7'Q?_j'B2ֶļwùAY 'aeKx%RV^!^0V@հ?|",¢.Wf-g,27g}\RfVNq:"䀏:j$"*ԪlD9)n3 4xLMۻ>@0 .u{^&?z'p| HUz!Z\#WϬ%RLM#ýv&;C06v!\t%\*S~qC[ Xs J:idEUM*x̹ vn)dovĠYnhrJ^@6Awl]ͩA/2.9XөS짰bqǕûؑ6yA@H809}epMIu8+o@JZ0UF(67PrA1;sI`5Q1?x!v) Mōwʀ+_?,eu+HLQ3C2߆(&55I yo1F 8o7"MQ6/%KEϊɔ Ri"c{ i7k ߜjITKUbj`?eEY &F8x`8!} -1٘WAZ`lQs d%}yω@ݳ1f)+Qʚ=q &T^/ߌ) ^m[ # FuX:i1و v?f([ϳ'vbwM%pk}N4&|7#ԭLZ skCΘX:4+~dE,.d*!&αl,K)”j@*^/CDJ>D]XCgzcq,<^QEXu1ˢsHhPrVl#>\2Gpe*CtF t NܙnX>E`2wP;7deNOAvK&,tkX&ɵP%vq,Q_ϡSPGrD8ԦXSFi]n +%~Uy!~ţ!/u OE07CAhhb3-@&7Gs5STf,Q.Ǐc9jFcE $ڳH K! t5=10!c,Э^JKߪ p\2*&UsLk 렕C:wxpj&WA5`ao'+#oÔKKE{4.>JHFM`/vٓ ;YNq7;F1ӣ- T,1[F+aX3G[Df|:G/:"r%$;FՆO,yJ3ͽuZ#XX6M&"yV #?. 23EbG7ey hIng{q<~`kPU|%y jAcƴ߁X6"TmxTmh.\1_o#] fCy___y/gB+tmYaIER^ DÀ߃)GU$@8;}ҬkZ#4kc+>*hǮ uű^!N2ޥ~xɌSaXC{#Lat=/=hkJ~]s]ֱwQչUb4`'7 Y!1,Բ?]p'r5BXBer:R:Y0ޭMk2*CN?EOW?~Y1!MlA-FKvI3w*+!Z`=a#+_?:g'9F1hXUJcU|c58t8<8#Ee' *^ksb'reyd{UwJ0!E4fK̆DD@4*C;\VH-ʸt"GԦ?'9}11`Ļ~ kY"Nx&g<]K-;"h0*][ g k=ۉ kۼ$ekx ˺``]TbE G8;JD :ZKm̓'@].gA:?{!G-$K@95e7ػ.\ݖn{'6 $}0l5XAaW@]VwF}\0=w9{ cL顿&p,?/Yn-\:Wd' F] [*b0sr˔vqk,@U^_C(6ƼXj ˫].P]` dG"7^k2?D MAR1}.v*agD^I -ۖ ,GL4YO,KV6}4 }}Hu2e5oB[iQ <Ð4 A$H<[?t~l犜JSɪ].{B7=; p]b.M ?xM}$rt tŝpF<$cCZy"5 DA#@(s]k7rg}Ϩ⨖\w]^q7^  e?xxjc_&E!!U%&,&gKƬgZQaKRϴ~8PUO"PK>LJED[3koRBAGFbݧ \< !5;dnFbEg9va,1Y0m-f^˒UP,iU8H~.N&g~Aͅtc.Xn ۱~[P^ަۊxU%=.!,=vMW㖵!g"9@Y3?%URGGl2ͷl@rwwdyė O)Z7cyOL= $RtEȆNDT+%a%|NIUgImZ㺤mJ*QFlixf4R0?|#Ǎ p?Fta00?Vk]ќ~0B#HG*,ܸ!Rבe)BljЋ~3 ~yl9Hi {䰈5zuE̡QbkQ!^ +4XtQP|Y%I9v[IԲI;lس{:@v( 5~r@,GZ` Z?O.AU=JE2\ݗ{Z5s^nuw {Bjz^XBg .@Jl 4{ۢby׍&eX_o1[$V姸Z`DX%姪 u]`W4 fUQq'py2YR5Heчm1|`gG}202EW$SvX-+SGtuS3ǀV09S|f:2+; ᅸ 􁴣^#|uo` C3M:Dm#KVK$tׄ= Ro7bj؂ \!J]F} . -V@U8=[B8/ mt5ϓ9+j{9BqTȇ&?/aj6j 3[cF_D6:(J9㲼VSe%jډ%$}eY\tBhMLύ*gaѐtBlq.o%w+cޮ^m10]QXkv1i#XK/-262G.x0gxgsQ sD#B4C=(nڹٺ?#pf,0G6gI܎ ;%4& M5qi6,>F68q61/Ȧxm%*~$"٪ܪLEa!`:mLrыjY]p imIc#s('̮ v(;'Eg' H.tRt!tW$x҅vP4ݯYf{8@(,V7iR8%+d^w5awʜѳj ,"dq Id 0/7գ^.j #Y4ڣ~-a2ً8%<(=nd/^ O 5#*m>y) @v%;C (h[d(if ;'ά6-rxz-Կ͂?٦ o_LΛIo4$T+#ydgXS汔ɉf˞ylFԁyqexИ wI~/bYi`°dsbuv@ybyd+}DFҵ;K !2E[JBȭc @WN޽ [ĸAgK's:_а|3oXDDŽc%u銟ų_lA0OLHu ӎRp*(G`O sz-g+ ar4cRbרPzDnD)I|G  z@b{G* gb -}82ϰnP(]du}{4Ğj[Ov߅O/7QiLM08:Hƽ`Ē aar—Pwl"$n^1YѵӲJxcQ@*uWR,l 4,4>Ug+0ljtnaTXc. *O(E0^+Ldb2ܙlBKa3yJm$eRi"缯S5}Hc ìJ1.hjDdnȣVxZR'bWb%Au CP̩o6o%o өn;!l`M .[Xr3Ex  38/{!.rjk]x-+{&e|$}Ҭ7,0b82!ٳkP<.eP`4Xd3uN74Dbi*<lt|\@$$`~o* ť9*C1KЄ=وd߃BfW-kɅ]8D)9anOkxo[v)NƆ lM,dqx;?\ϗؗPbrH*94Ůϛӭ-d: Z_va}ၮO0RHC0V]̹pdS3E5~2 x=|uj(D+y.+~by|e Ϲ@9L3휁Zo%İk(yo98/u/3uc$"_.~&?ؚ݀#@U(1rhI",,AĞGǠڔCB*p0N%L_՟D]\1 ˚5*J>b%hSh?dX?fV`k tP EÉ)b"\CPA!)&ߝň.cB {@VL~=/D/4D󝂞k烐GcWA kgXo\Mhrjj>@AE8YNO[ҺT.l:uXxʅbHӻB-'NU{YB<[ aq[gb-cekm.l֚mo6cmu)j'GDt4ǐM%ﯽ搾듲[OX1.8|= WE+I`;+$uH;gxd-Aw4%Y #T(akw]{]?ʨ^=XˁU#bt̜J2>3_o4&"+`ad|_huA*RAƒ￱4Η^N_H-t.#9رaYJʛLISB:<$.x235IH2WD=<:w4NݭّT:{[,SVtzKh6  J3wŽ۩ @^TJw1b5u{N=BTJJe:(Z+d+YhQ5#wՓLV&b| ByRo~jU"*zno&Kyy/ӼXg@n;b?Pj+B #PPVxR:fF[=3H8Ö+I6}VX2 t{& 9Hx)q|>ʗ@{F=gǵyckT?Me(N$^bi( ; Ypg?o'X#>;ѻ>$P޼Dk^Ɨ5 ,#kT+8 $HHVjUD]>x0<^ΘR%"C_O ܗSkscZnQo._5b^yM}ްFj{rѮSqrF$LU#)j|bCi Z5P\2UtbS ` `=Ep_ -!$LzYaB+dmT)fl3 \Q$m,t-AUkLԟɻ Bǂݒ$ `!woy^V7?0=Ro1b tb)L[x[Brv\DR7OMrn'.ʨ- 73ᢺ5iV]PXmTcq8, 5&h^CުMg!Ob7IddիY 3r'YDzf}r._]e")rmj&Y4j@р⎁dDcL:L~pmAR=2>&x6 } f[DTzӅ+& T6<duY-%q1~T^d%~.UldmebA82S,N<$@qKD賧qtbk'cc9DtخTmg:}cnZ nɕ]ωkҍ|t=yP X\{9@(ُ{?%A%=hS7jk#š% w|oC ai&˥ {8](䛕m^_f8]RXxz9Jشs2-zcYD%׎'zԢHr]=cW P57)h(혯w_QaJ5j91#ItnId׍LށWGPJ.V1Rpp;j:A2ʯ#W~򺡿ߪov9X]Z>da7+?i!}#ZT)9,E`|1ZͿb<kU;^e62Yd:venYI E(P Mݿ Yǯx^!oajwaP&B%#-_M tVҩT=!{ڣ[S݋8ya ]WyUɸl%|NƇmd,ksUÖ\g(-gx#;跅Maf'euNEmL^yreg-?1 }I WfJw+aJ"1/ڎڝ1F[ו0=ENf,{LՏy(_eچ^!$oa/\[vU䓟C&/Nu*v_-9HDY2M=ӕGLAz2mcq&]{Ll۪fw$ #wM^J3q`Wh /VRbc2{"}uT]F%ioQMXzjfIC@n0:E7|\9qLP#AH{FCԡ´8-7KI":)Qh#{0:&1TA.Qt-ˆv̤< :\dԭv}NvPlMmIӹk{ə]T!¸\1GLJ-Wݽئ Oam[[='\DZ |<8i65sX1Q9f@ikim/DȜ+HeRUUZA&½`ȼ͘h2h3AG헀/ߒJA(hwJQ:#hÆIF;r< t2#Ow$sJ MIH\ b$:ĹaU7ɏ`>2 מL:(Ymi\DCkkBn8?Ɗ=au]??κdKSk#Ϊ~ c<;?P`a8aFg8{.n:(xGr4|HaH%b'2k铊tq~* WS-q-i`{ݓ/J5f=@j $$%|L( ~!gPq]Vr\>5^<^@^Js R=N8ԓ4qS¶y&u.o]!Uh Da LMtOy?֪7?чj١_SJ;DQ C{\f8k^>u_u{Vז,(~Dvpt,t,0ѳB>Ԛ'\AEPc=uFWpx@8lsNvYz"ìcIY` O\l z\XCѥ> w$kru q⽒-pk|@)&*_3 4}WS `M-qz0bʬ"g'O8m9 K@ZWUPIHɗS9{0r9,UնAHzBIL$$JEx~P(`ی h/EZSƾjQGF!LcpF rkH+@_4U8"ˆ]'~o $TLT>"/}QzIM6cTy@` }a94̉gk0U9X A"lza3lX<3(@bj@7/.axCp"qxpø$ۊ,e i#rlYB4W @.a# \997ҰOIU-s5S5yLv slN$G?\b9 +9&˫|fHT73 0qXOEǸFU9ZhKg.srYُ!Ϲ1UG"W7 y9 y7n)F̻Ǜگ„ޡ,4L@E6( 5r՝bLߝm <\(`P{Ahk8LOO|y?6f1">:8uAtӃr/6†lKޯY 삪'`nfX߃<I(0RNj(L$$xs$qO"AĹZ!il@rCOkEVPFEg I~d^~b*c\x0b8ň}B#:5 ~:fʑ"SD.sX{A0lxQO gJ*2C 'h{ n8ؖF鬚JEDPG# baol%Z6]lR! !ucŹK12&Ú/?9ei IL>Z"L?\k Ă^ tv^'2݌uim`XS9=R0T7 #s.I<=ZA,|`{iTy] |oR;Wf ?/ܸyciBlv%t b>gk˪ڠ*W0F4L17venRb⾑*'%$s&K'q=-pӄͰ%;9Nj|v^cA`/KbI !kgBGMێ]G*F&.}gLtS.FmOrIz~q?vygb&M%gh]$k !<uI@]0O8i2;S)S}< Na&>n]0qyAUqSZC& o+x ϾZt9>* і e;Q_y'ŁZٹ r%NdXlLNQlr=1I9"L{F[g:?yq}Vk94ңZNwv NvU5!C]QvbC)S(Sޣı>wG۽OH<Ԛ".^w䃲@ \5g1MG;h񭢣!?+ASfYqTYs;ig)5@ = W%ָt;ůM;`FxIYjT(v/SPInrj旝Ktѻm\"‰Q N|E}]t%#ٍ9⍮!C@CtӯUϬ(UǐiX'ѻկ%ГQh*Cf+{u,wK P-ϒj.pݺ#yQ4+O #,hbse䧋F[."Rgq*1q5Z5J&$snP-K,w$]`a %-bdF*<`  Ĉds! ~LeSD`t:ziK*r/`fQ;Es8m4 WRl*`0K!l le)9Gx-5*0ENH,Gx?ՇQhu1!R 'tdCCpA1Bw!`8y-Jv~I3j~'be` 5X/m~W-#D"А<UڗǭQ-.a=)mܵ.gn|-:f]~40a}W~br^obrje!@dzaBKK6O/=n8]\mp0Ǣ ?gZz*H t fLs? X)2G*;.gD)ۂ)^K_}UP<{(ƌ$bX8lrf_e81Җ o Y2SYX--!ك7Tm9\HVkX3 RD;= ̖qDu KX3@wc81jb|Bd)p@nr42,..9tT Ѩ;|ۈѢpx-_mD5 fGc/i&4g8JYJ֒ P ,@XμG׆lApg&ėte*;v.@8fc}|Dj;bAOmEv{ۊ3?b&~B.a M3bf6&juU<`uc)tYɃ2a!G8pPҷ ݇T]ZsVL=F~Q<†|%`{:+N=NZN{<@3`& (}Df9ך͊)X38 9YgW!FLFَ&9'K֨>C$UMM/("%518yok&8g°BiWz*HffqWX 3H0 j)+s/SZK,0fV"a[ôvrB(u0z,㛂.в2 pᐸ︷ۖ'U' [ar绝h =Ө:Y[@X!ʋ x Vn0=){+j;ڷ)G?-l4J$MD:lf\O׭R e7nKJ!TCYZIPA| D lBjV|zG<$s,2SuL~9a?+l,LxћSiF;{` Aņ=oG$`0#-'(Z89WՁ8纑eOcgƤ0*-ǔ{%gX뛻xod/n(^őE5{O9[,^2JSA@#г$AH `8z]&v"}kS &E61rʨ ZDrvt=X7\P,Q> d)crV.1ا j>6*ǫtdCT A-#eGjT pcC[ kEZ1!Qr:3!.x: _w6鰍V)_iWu6$9<(}⥠xyC9cEq?[N'E=Tv1{Y^DqטDu٠[h̏`Bu-3bmk:  Au&Hy+omOW 'd@|rQgv #Iٲ=b3m|d edS[/O9 d9HZ,$- AQxqfP8tao惊$`6qР&xT ><{mG͆\L$Lobj,k( Å(4 H4Z24:^l>b!UlEɇcő*xdeD@6i$m< ⒄$E#RD-vzۈ}Os\%H^Z A>GVΡ-6Xy9iMڋ7Jn:3ydpͩ&h3N^Oq-۞|}V ќ?D]rb/is{l&5$ 24  ^LOoi5 $$_l:䖟wZaJϛpnkOFO9͵SOpHa06;%Ht¡'Ș&30^%0]ǔJwjWC<H+^ @Qttߓ& [M1|S!rnCp̿rZeǪQPE C(]1ٚ Aڜ>^HFmuP9 S fDNZdt4;<=HNK  8o1SD/ {6쑈η[?F>\]x*+E& ׭ ?UtB=X+Ɠo$Pcu1+fb&@*;>8'EٿN] QVHrxxFj'ZY=VHj\eՐMܫZuQH+A'Y^W_`RsFDĩ2)y|-|;~'G7UG`KxP}H}ʜiQ7 {5*,HuPp/<;p#@c-cX߇$,{ E81󕡶 c& %z^|#B貽Fs:8{̀)X |LDKC.R [1AY,n >ٯ#j<<.caa@㐵 ^YȲRY^[c/0+Y;+tBս>XTކ pקP{bI3?e[mt ZFʑ5xٳN [y=yb+>/C9j m~T>F{"}elVE?0 @9+byH'xt$|t #b0XRhnTR`׍02u=){] Vqcc˹H!Nf[.r l'KfjxYIDS 5cE-@?x\7Qg;GĖ"F:&oQ@b[YN;j[@ƛ ռ :V#\BSZwLVd(u:l1w57c_~S08 !mЦXƦKkXB r w8~'YS& :Hk:.@|h׭6-*rAߤnMFFɖe֙ RH qc1iq?JDo"zC<(][Wrs_^ydle|sU"M&܅>^BuDUžu@ H Q=\N[\cWUi.4-PP$O`$?[أ&fsMZ#6ߦ@BD%jtY'L`JZ0TUs!Qܼfޟ.QȝJCCNBT&˖F3^4Mȓ@k(9c@cMo{u0cE&Yp(0݉1 ?XbY+frMG +29t ݆4sElp=Q@w8I~Xk(Ү7j~Jq:92z`oshO!|%;!B¢nvQ>T=X@.FJ<3W+XwVӡLlYJvZOxs].҄D xMbJ4ycJi\ "PVkZ$܅uȨ#[O|MRvEdnԙ"?(hutƄOo?NO%0\&ZO47uG0_h={e"C#NS,1\#\7\c|'雭yb@+Qc2Gt!+aCSUZG,@g9Mfe}m8VWFQ]>CfW |KyŶg5{8}}TTs=ܔl&tZ ͸%ײhJ3Xܓ @-vt1C .kK%GmVC҉;i =8;1M ~s`Jvʰlo_;O:džth.%hF-/ B_! &Ȥk5dy#9v9t)w957z2:r; !Xe] iOPwôƤzhnTѲ(2@-NbF! i7)&$̈~ǺM-W$xH:9V6ֆNN$VoE9#ԔU&{%81.=T(ﲻ`~oES?$ "]PȪn0UUH&18K_n|EO^*͹ĜrttǙ$grθȥN˺A] 2aen/1PZ~٭Lэ=O1!6I1+~T5tjڳ|js^WWm95[?ݯԐrHL r{rfsfN|j!{0h#}%K/dd^{1]GKy?Dd2x%MW3 <+$ krKoHk֮6Nrl͠HTxE>gG=]}aL@v%)c͢}rdokPʸXU6IὁvYRCRėt1Mo׍TX&š5WҎ#HEnrI( :M]=`=M3!݇A@jBxo!{E|oMʉϩ4|yKs剻,K0*xi@@쳖Kz6Ĵ*jfd{^Gsmt/Rܿp7a<ħz~=?HJNE'1 N|8GvgR[Q_g;,.+A.׃eqN^ǯ7bCm_:yRܶ2Sޡ@qr񘬱M\>k-űrߌnoHD!#;8AqG=v)`YX%9~bGЖ25le>5X@h'^:8[pWîH ]Ѣ&gk>LKAz=lAn,M"Q謩fO2&(<;`4Z8ɋ5/gGgy߱`p}QRLٚ&1`!̈K;vM#ƴPUԴ;!*jK2\8ΐC@$M gx|jwo5P] ӯ8|8CEW璸1#d~i:ӓkwFɷHuw[%{QhO ҔFKx nz4Ub&ȶ !?>"`I󾛮wB`JaHzedKTJmFchMVKcr(k2M5԰*\/b)<-@?چyގBegm=_0G.nnQӫLdMG/4j>\[O 'se;vx6Ჵ2Ϝ. e\u}*g=z53Ua=njx 9jix7q:;+7sղ9[(T1ÔNO>0})7k]jxE^E&Xh1DTX% iӵ`Yf s"Ϸ~#0> f/-v~-zɿ 1\ڧ;?fahUY(ςF_^w-R'|:0c*Cx0@Ne.Zkՠa ~YmNnhm6` ;)sf}$qdn^%a_ WƭFN<Ɍ=9cDPOeƚ\GHm="C$tcQrJ1qN8jkwI?Vz9(6~0x=nS4F:$=͘]$y©YyQwo#}xXSiνyͫMz/gG ׮i$@^uM 'Q*~Jpq9w"]ߴ{kEMO3+B;Hn'Z4Vd#johufgCuJRg=iJxF P%;%`Qɉ tϸˉu,c? ׵gKIi౫*+F[·cf.sVpdz4:c|$Leev^C2V:[-]{] j#/uuz` AM~1\z>% #dsjΰۀ\y<>nM %2۶V_?T "́}aK"o ǚ&Rt[.3K$eEκ8{$ߠv{i!$,l36X-XT%PqWÁS/J]wė<_ۏǨYVh! o?v4J;0i8 nQ $N?’!Z1K%CeC|Ժ` گN2U*lm\kfwxm-CȧRYrŸ6 QNdvbSNKT"j5(?X%{gkWE ØqþE:? Gw FL}OGd()Υ*2,8fU!]NQ!lЪ)R ÕR(r#a{mxOq۾WKܲU2:{͟vZYۦW) 'K F!>y3Ik(^ƛAxc3h_$f#Z - ]e6i29Af2@[᳍ 1iG`vv-rmr 5fY7)c/8c40ÜJu7Ao{=k^YhCrWh*m*0/֜,QI܂d .$D9q>Dn19d?b'Zn1Ri:;K*C5e1Mzav gYsષs"h^ g>Wszˬ}v5Tb>uYÙ.a8Dգy^QP%m1ɶφ<ˁ w{mܟaxZ/^Lܞ%˻Bb&KWv3Z$Fޡ͔&S6=jRW@9]G9 `^c{t֬t*2^s,E=`;jU帬6"'Z>Wa0qIRSxL%) 8>4V1xI4dTSԅ1!v,kxo9X+2^W-Fޖ޵Rһ吟P4}4w:O\K5ANu%5SX"+a<*Ad#UAqZޡ 0iҜxev'fLXjĮގ%VxŽʩdaAPfFfr_-g^չY%;蒕]e=;X3jci;Q?4uu ‡zA$%M1fL|T4$䫘cRie.#'n)vHr;Lef.~)"=11z[wJnAj -af-"[aNj(تʝ嶳:]RXdE=a2PH'o9JHj%ƽM!9`."B]6@q?hcUqa<Bs3&,5dhc")h2b&vDkh)15(&|i$d^hBTFBEbFh. []0aRT_#h^괲1GIÄY0E$y`hѰɸzPteg0x\Rh G @μ+A9h' ^#cbD:Y$7]U'0teAJm m75UlLv瓞ݕPBK%8z9;OeFPlvbє^QFv޾EJ#[[V%Ǩ]+3tE+nlGppFjJmw[TiVQbLbԜC8Z4pF1sm2x5^218ýE@n?F-oT\s 4t6_r%3i'\;d,[lFW@}@T7;Df<ù(?ya-סoBB 2_0 q+n`>#bkqB4JGWxi̊ց fwfuMWDҕELoY]e#WAA;go_% 5->Wp@{-Rݪw$j(ԡ mdyniNfzgO:m(KP#`yȪ" i>{s03'q?T :;`jb 6Dj_:`EW{ ٮc*2ܱABy.v#]$;&۴&'4@n!J.fbvz"|)c#zDE4fڐfÑԒUsc/~@d}bw\g00Dե*Jo '+ս|1ıU#b-(S= L  %EwYz["Kk {63_d0#1\*`e<#_RRX{sć&.MaJ[ Q`Ÿt󋇗Vd{ulG/ CvXIrU,}?ekQcf ٣r+ Ǝ+\&>` M &#,Xyk71lAavp~+64GV;w8Y򠐮 yeebR.?Ty=I3U濆A=q}{UM|MU,:$AqiR7@05; Z4b/?^ܓ`BЗ$@( <( SИӈb9y?Zhc$;PC {y2Ȯ `y(  &ߧ ?5R@ڹ(E7c8OUZIǁag+X<]o- z/bЂӘo0ݑ OҍD1Zp9 R} ۗ%#=QVޟ218 / 9_M6[º[X܈ 'UT#'WW%P~UE>0b=0/^0, +bMG][M2`kTHA>/?VK&[ר낛PCBͧA3k('@j|~&(JWL#mѽz}݃0BP*1A0L@=D+>vGݯa +z9+ Z\zU9c%_Q{q, `uz`+FN^tW鐯!E-^, |p Pڱm'4#f33#),;&)+bmq+/t) h6o"fV/N:NvYQyH05$OW#7N%e7ϋ˘5y|e,DnrY}91S 5ie"2R~BL3\ "MCe;t_ l^,y8Jf␐d$'d]nϓ y 8a?i+&M-}LAbֺ_9%f*|#@i>j:p\R^ N `~g4%} qT?E?^kV.0)k TeWB0ߠ5p6rR+UQuKɿ7&/ 0S3،nBɔ*^C g@lZB%O *^%?dp ~=:?௔O"B#,o7Z,DxMS%  C-_yc;޸&,Ê ^ˤCG35Y%w`㗢@z SvA)Ki nC}q;KE7߷2ٹ5j.,ǰLÙsCi,37HA g䧠l8'֕P) DߡEZB4$XċSff5A=[X BL7t<6@zQ)rATUkŕ{ORmSY)-K㡚v䦨!npGY~{I`S%˿Sc-+D,d:܈/Ԅ] DQ ^ ' -*_f>ɧ*#h6 ]B^*e )8{Gq6bҞŢ)*WOtBFK*{)}Mnk AE-P-Zq1%>XiV\P; E@)~<l/ve4Ȱ1=]`'U# Și(T0a:(֋:r,*%eNn-F0b9N0:j6fx (r< م,e銵ZʁCLݖmY()c=n"!%S)  `fytq@5a]&`zT|-Wic:M3GsM % tB ɍ"+:;Tķw]YRWkfpZelf?M/ `#,4Kl[W!V}F]6؞{x2wH ]=(?=c )Lhou *&*3nVW̓7tҟB!DޝE؊[Njb7p߂1oY5# m7|"7/hl j ? \\:y rSZ_ZiV\8hcAvcJ@jWBr~nocH)AfX }יKJFjniځ ʉ\~s1nP@uz ߗH^mu3t)RMPVu <6'Ȟo@O+<Ы%I\`\Hn $ #z;!:ǁhyB_~[h(7aaTԋLU'ĄX_6ZUFR8&W,kALKQt?GF:;@H0Rs=ɬ68k%LT96 ]ͱºwrL.6O_B߿" J~ꞣ(A\ >D%DOźӀߖ wb"c*z?-\p,VozKO70 .ʬN]nIjbګ q,MP@Q`j.[ eO(} %>%&R8Vh1>3ICyU[[^D2פp91=2~5= X@}'k'C嗲041+Q%Kh B-w3D:syoo>=`N(ѝDM=cdUdgKLs6bH]U/Mha \oOavE4|ApV-.AdK_Jg{C[5٢~TK"cZ^4O1y~up7:NXҳo7n\ 1^ێo{:Q惭:?8<ѣ << r^Q3ĥx>*n d vͫZ] U7stfqu,mi_Hw`yb)%)u <'R^O?۹I!`rH0#i` [oȢ|C,y-=B(gow &>5ɞݪJcaqպ- &o`v p\Q9 6b$Ϥh^qC:P X^ 4 c뗝)yջ~-SUBd?@Nv@d(9= > #Cd}`/:ʘ\^a`-I^%6{S,[3: YMFd՗26pR+@[% "aFKehL a BHzn3"5,:[;T-a|K4$|Q8m;yV8eކNhUMi;k,A) (>wI[ܿfץ36Ci%P:$4FE-zE]Zrm,M݃H 6{yQاg ƒnH4Wd@Oa `8xSQsN쮡`Q]#>!ixU9"l $DKl!+ ?h 1"._a Z>׬k$ Z* wqӕs1߀z⯿rEWL.?]}^5HB7TP/rEQ&2399=A2E쥩ٖ2Kנ<"{+|GFq"6BS@랼%Pbsd}8 mVxVP޸YkQ(x*hGUM%ny03`H4PfGȾ$::-8|*NTw:7{`VxMw $BT[^%S,@ W$(:W3@8H+ M -࿮X3<}3'aK^'&C얀-'%v 8̪È4+"#GW|τ:|7q}W 5*@9|pj҅ƶJBG5ֆP7<B@ 6-/*^yqJ_ך9ru#{3\}@RV W*5^aRc8n-O*Aky:b4^$4"ɀZ Pi/Wz O; 54c7a&O8w%uAusBY#oFYt1D$x"|`ˆMlg4/g*R/z7B[ؑ.^4nJWfpi#:I&:jƂ:q"Oi;:sljkQu\TA[ ?g`(NsH -txhsb 츜q1g QR,J&~Sg0f!'x1aP)ww{ |i .AT&0FZ!Y#G 5XW8K$:Hȁ(CR<[>-к''Ҏ]+l t }?Q0 9aq4Yp(.[`I=3^^Y|Zdfu=5C6KL#8y3RhqN3Եя|2 z>=x%ꛦAЧ [hQ%ٓLNS?͐c .>rS3/ Yy´@K4.Sa|E a"&rId;ժADz]3(ďfZF~[dYsWK+ڑw8[?I)걔8-+)e{f$Z xaDq,;H❿4Q]6owYH.KY3j %ʢ:]cyQuF_ i!' K^Gu`wTKd9-WO%CBՙEPk^nʅ$4uSwN5'4l؀Wo&_Ue,Eہ7~oHbkJ㌂j,f@_ Lga{GblTpG+@ªp0yER]]٥7mz;Y땂(4r[?bVq%95y(?#V Z,>n2  Kj7~;c#J5f0}ONQbl:rm3Bx=MnDŽLe1F+ DUu ;,`~B tes\:{ES `4'QȄcR4ygT+ieH^Fϫ]?6?ZeowSg ȼW7EmPAx|Z6.,[I"ZUza}sT_Ԙ' ס5cVDL!!lZ=/5[H^AMvѹw۬JfWջ!ilk{^>ڣRu  Xo8GC C}SՏb~6);@P-7g1jվfWs$7Z/KM-aX+, %w]ii)|8n6cv$۵L,3tI< MYV %Jl0jM\j9|"vDN汈 }-%10攩!ͫѬv/ʄiol!&Ƹ`3@J !| y w^mL"n;Rwv<_Gev-N=֏Ѐ9Bhc'"v"OvZ3f ; A}**1ر9a}eH,ba SI3MWuy4o5X=Z`6n/k ۵s LZH_~0Jy3vOXQ0۬֝RB[b<7o ͡dezk(NC€}y6 h/-ւG=z4kYǍp爋}|< kbim\x< ʏ# }o5=* j n ձMږ/)8BhI0v $04&x`]{sxX@:liۓ$+ ̜4eQt?[B=uW /e ܘ &9~D_{@{ƣ+[!JePR8,-^𮠍RGĔ@=``ڄYx#Ec ߾K|Fw: XyƾZ q&0w9Fۍ8>3(_vB/\P=jʩ<4o=+L[96 (\pxI*?Z:%z6o#,'{?ѦrԹW}1,W~Kk!m-{bĞ}p(ZSKmBHiHm7,^JL,NOMRՆa@7w8~5,^ڨbzsM &՟%mBRr;Oy\ۯUQ\lbR/'ebk΀Uz "K<ɪΈֆz-ݰ.65608!p݋ݝƟNN̮O wHEP &-V"d*@h?J8L_)G^ dJݐ?t_ϝ>FSp.xHKoťdJ$k)BM&m9eLW=xg^6w|DGTZJv(#Y Dh $0w KY6 F)p`|-֩NXp>ŕM+QPV[=y).[KwȤf/ Az,ET=U3Moe-z P0GV~S㩆(`<>»X:#$:.RlؿCrtv0ePVx'6ƕqڄBrCeysϕ1u_aai7ܚmg!{OeDjgQ%Tv /?g':Kv4#^sO]C72PF~M[j_Ő'd^xǣ%rPG ̅m苤XJDt$%h@3(3s*(̋Eu%!! \jjd lztAnJ]_d𡫑bY ԅ۬N)3T31*sۛ{bM-C%F\$Jm~gϧPR;TieشH)0l!+kK& 4~kܰXW<\pcNŴţU3En)fa ) } W .e[^1ʏ[l9mc2<7)O;{܋55W,?H)Pe^rtv;9Ywn5P*|ֈB6 *c1 ;02 7=I9`mM#׸rq O#DZwm^' !3&m CmL@DT+(Wal樕1//Ǵ Ot1ƶ/kѰr ھZ=.2 a>;}@iMChV*h*)gK`^\6PUmBg0 aE_mmyO\[xM`%~_ﰹ;e|Ѯ[. RkZS~kvlRgo3ޖENI) հe$}={P^"ߙő#]3C=I`L?00t&t\%O@nK  xe}`uڜ$>}g`<;TXM$tZ!cQJ9kdH-O|ѕyv}gߴNjLx21 $,Fy1dD/8,"%d(A:RBg A31w;4]|TG7{3_M#3MېL8솱uxx9Qc P!*.{i(~MF,qn-)tE9PZ񆢌3ʒޕR[[*ļ?CF5Za(;U:9[DKw_-fo/OG:iAqSӥfI尦2* ^t%i &Jcj#{d4jѪW(ɟV ]O Ӻ Yo#[ 6FyY7u0%h .[ _"t/*8sa,[ڷxyspl Լ@Aީ^Ss/[:q@qwi6hW:}6h?]Pvە1sO~ ߡ%"4ӿk=oCr'~1 y[oa:oh"8'j&)GR2c7A6ǁ<US^Ku@}4` Qu ,pn <P'JĴS7d/=t3AA{>m&vfMk^Pg8-_75 8E췝M-bH#0O쓑Dnk1b` ^@ezV/oiRcsV(k@bS󍄆}oFV{ūV7o`JM㋺n?%z#s\R0{G"00&aRՄȥ8-'D^Ptkfh_9xj^$FIBw+1/rJ]W0N:jw)hXajT8qpNO"uY1LE#Q*oߓ'Y]0$KMuyT\CG̹_='Lw7pXqA̦0@D ) w˗y(n 0,q:Q};~ޣ&tqIi= 2N\M7U} =t!a!h쯸\Ofݘ=5g$~)/V)!-4-bw0P/ޣ.:Y5u=aAV%ϩo"STcQ [L8ݽq?Dm(̒HE&G#'{cTU+rΥ;W#imyHff*ҧ-W LCjSD VF"ZeyBV7G=H ?/ bl,u׮ I]Z 7z .~QhFE$0y2I4ܳ4EzS bE{nNyމ %c`.D^nbҀF°:t3cix\xv"&;{v/~ ,wT_KSP3'9 ܷj4Nٯ4nyB_}3%ȔT=q-6v\q_Qweƿ'Oo"#22vZ*[=Woh|~E)?WE%f_)?ݔ+m QMVcjYkjvY]/XהԊ niO!d95}Ny)fM=(*KUVWFH v\]ð^ETnKďtcEwh6 muZ,Ԩ=1hKMⲔ}E€,=0[mMĥ|iS` b6j5PF8_@~ZyBa5O&+ ɩ7@4vjcJEB oף?^~EQB.9/@K07*?xvG_^:94 l@T ՉH<^L%5e=qN ;WU&T5A#6 t[y iJzr=I1F `:⒧-8pG88`/;6,̎ UcG1 iw XZ$Gg@Ԗ9mf]IBH@ ܷTǤqڡ 0~+Y.- &&SX4%B;n-xv^=p;+kɤ[P+090]$2:nVD^r*LkGQ T',/ew(HͰUo#u艫ի>FuM+QƫP0W|?9kpsM4%M ɘ?J>5R@ڎ,_pj@V8aCYnvMw"m>wKA_D(6%ay ,QgAyA7Wj"0[M$< I;Ѩʫna7]ĩLqɳ3SoiP83j}-zkڑçd߮Y9dKZtrFJV(,V2uQq@~@5*m䄛7:Pe){O HVܒ8 lb. Wwj{5Wo -6L&@rzljRpֽ%H)UvMt<6Jƾ~sDi`^/cW^Q NQCM.n!I-v"WG=I15,VRA|~ڊNmJT& PG'V(9]2S.IoDK8LgitR%C8(s4'r& @{hGfkcȡcQ GriMψv)b:kj8K`(l߇ c B[ocs%d_|ۼӘ̛ 0:vC#E J{ѫՕF*U#9S:d Gh2Y8a5:Cuy6\bZ-"b?C8LXg,LAo1Ob`M@E%Wh8̅kX!1%g;6%E}hOɧ!aSz5V}>UU^N%:P嵒,x^sc7Wl2ٽYy7sD)/+wXI,K-JHq_GJZqGfk%h{!xNH@ 707 -Π(2.)bɄT}TdQ'8d};)pV}=WRHmK.ēLBz#Xe3Ik|% ("rͦ, b̝0u<&1ᔙpXb:rP3Ea>G/&"yPk$Al2V,` q(el>WS_dEN>{31kZVx2$PP?y[7sҡV0x#K&-?0zJCq SD<5&yxX^ÃPJd.\UN8<(6#6P , _=jTYjSXRĕ\y))uWZ*m<5XF J6Ics8 tlE,#XwrWdؼ)̚Iz>b3#ğϖr3y:)BeРMVc~Z[A+hew(tٗb%VTSm? 5Ĩ:sJ gURc9y0 o 1Xƿmcm5Qc_$΀4$/H9& sPV-LOwiv8 K ,KHowPu= \6~lTuM㛺 8H~خ8n6:T4 S  MMщ/Rܧw@23 '`݆nxJjt־B~oodph]CU.㵚F#ۻ;3$Sg5q t1qq:RDl>@;Sre$5r'z|~ݿ[t2)ڼT ,Y jM.ZԶ^Kh+$Ѧ/Z%e憂VO5أnUPnfx =aIVy,rnO]%O~aPf\Wn`X8V楉/s:(InQ=jkGX-a`TA&Ma0>;j]/Cmy-|-y)' 2N,_5dkND~KU_˖Qs')aRBtJd)Cm{Ŷrz׈1Gr|q:4wxPK,'טK^X|x N-_wջCbmqfA& D%y2!)\*Y]ਬ>ٱ3eo |@ 4|UU:lY7QOdգFl]1wW@CHIa5M ,dĢT^v+w8kvGr_AeżU@xCa2 .z4a^Z $bH\ a@ ]|f:.: 9Ut\ x}˽@!7 z`&3%X>}lDyqbỳou tjiC0N`2usU}py>8~ܨ; k])5*"Ez^7G?,u#`(cٕb8Y[@V׹],e0BnV'Y\ԐU4$zBxD}LLruM])hw\h0Jy"ҭvc`~zfO,jZ%Jgg)P~V./Lk‰oa<\SiOyU/Dx]=BQj3gpID}|vPm+,{BXQW{5\dK Z%=~mDR]㗓#`Lj`RVP9Uy+zY(T|{l~%B<`Ϭ]ؖ;Y1TŶ1|E4B*+O+*8'ډ/OB/%Bc:z+ꗫ'QEL9ʨYi!`RpK?YX#^reָþHk۠(8]hDv i O!^_n:ahR%g=r2cټL pÑlp-t~d:gDy:jGɶV' }%ЦPhsw)jJt3tGi~%w*%{[wvVgza /e/Q-#:K{k8msPDDO>WfOv#R VAo|GZ%֊}VωKd.V$п`5"k[^BC d z졣&#W/r!fktOu` 8b"OɪܲMpu@[T{o ue]~hx҅A8柂 KU$]'WkJ pSD\S*PfHSD3&N;_ 6|ЉǎѵS{̸ZqgDńYQ BMSLtH^[8_2G(aAxkVu\Ә-!ƒ[n6"ձ8P_yhJUsU8Z XS'o3,=|"6lNcNxj,.AQ LV7|C7ν mfEX#e'Vc[*iEbH+g=`7r2adXC4Y_ lb:Z:zMc&놃oZs9ԉ5O@PHSCϽ:ҚTX/`ՐREq>}\fE4KusӁ΢wۀOa_+>2{Y|~Pt3*FyQ›eoBsWpT}!x 3x fZ䭔O0z4K}WRCʌi WJ ?t[8`qit%4 m8Nq]P.o "Z5D)Ԙq4WӑaDeeQ I<`o9hѲ97KAeDx^-oo:~0@4?$_xe=CO  ⏖MCZ3Vz`O4#?Gߚh;W4tD*|\*9h&3Xv9gђ6(}ѻk8zQ`Z@Hg*BahxLhp*}StawɁݞl|?HRp5vh1V@lщbD{'-D1{TV!X'z1BZLCPܒxG'9L>el-4n@KFWٓ6$(DDi\хKڬ/ u ʔo(;6z!zh ?MnWOznEJT="EII,AJL.V Az9a#&D 1}Eo;/G*] M@6=! 42Z6 G͵=i,'Ey^oʎ^ˑ{y D_E+$s5,?ofl娞Ԙ?^,}hI6aD.FQ>oěWvT3QћgKA8}}DSPUg7XWvjLWL 7JHLs~{c@- sRĿSwW6gwL0BFenkxҢ)<O:з{_#A5a' g2PQÜ  MF ߺotx>奩2Hе#twxjƾQ Qf~& 5L ui5֐z HesIƤQC0xL*z5|~YHQBg-^0o]r#)ْ̧A()vf)v@V=wf|sBj=EkqFOy 25Ҋ`*Nܭl %( ~S %;e*JjaFcd9`.5[D'fĸ=8:vO͎=T{2r4t$朋!~|y_ޓxC`^ݕ V5eG2 Gn s]3gs8_ =`dzs[BxٲƖiU&kaeYY~JIWᠥ}Rcɢ3h${u3KϢ{ٱHaԆR._(zg7i:$">Xd6qySSO Xx e5evdx6qDM݊$.r],o̠[k8s"$~T"j(Z&IZnZA`5P,>)b <8"6*L{"%Q]@C/vqrQTrbb4pac0i;[ qPi-^D39)'@ϖúr-7KaB{rVhK(1T@uT7 phZ>>bbjf3}gWc:̩I YJp䡸81"anj.4 іLu1if2Ί8?W?8lwM(74hFf};zCP|$bXsC8竫(O[>r; #-hnYb*,VۭO? clvr`ADA\3 K@Vr/-W>,i[Hf߲kE8;9¦w:mοdG//+i(",!A `QcuDo"%X ϼQzn6 644Xe zym/=pT-a@*;HݙOsaxU1F] fsK:AnB"Mt.aȝte$gV9sGcTTybDM.o W՘N" q0ao0C{h3|"8^@q$?B=.) Sܙ|$5(^7JIBzыf47Gŗ^%AHE[|3 6 PAu4*xsx+ :\.Fobz\,nrT:{^g09I9_ir]R"cjqH5 >vثpDK Ŵkv@P[سY_W6QY9`E 2gّ 쮮00NvsyJDN>n=rqRI2lMzlR;u2)ɀrKTU:Nضu x7.I }7).&xݴB49W~k,kdKqew݄,[95șkj&ޕ*%А.|MHM"dr1_cكD::Q& Ά*բPccS(X]`pp{ʆ#$ bGNWsIi+i*G9pKzj?b\}2ǵ2$y]5Fg%k»#tCO㤳"GY'>c"BU̶7HKoa$J\%@k#nt 6)xByNehY)BaH"֝`%՗T >ٽ1Ded1 Nۈ7db@SQ"k bU}:3+6|_~ՙQio2cRug;x_`q8w)#>)t[ϱWH/H}zi@ =TfJ=~d RcHҕ_.:r~{ LI̧dr^3pws/p(#5 ۪8LƲ6\0ޖylLI~)Ҁg\ *" F`h9ԈWddc B8T=dOEsh?j[]w=,b^Y }纡^$OY ,l誴DDFFzSAUK-*k#0nqs 39e\9Kɛ̀C-Kr B`3xún$2q* 9JiY(k^1B1y(rZ35 qŪծiET:3N^4Ӭ25/ɣ5we 9Uҭ$r-Q߹ptj8ng%vӰ|T>A1`֏[ n/?GvfW?PW _hY`> ;,Pϓ‡q ˷SÁ(ȲtWBf,鶲]`b{Ql]M_s qY׸"JPKROI"Xûw dL7b4nX;N\dɌgE% ( x3ƒ? F@dg\1 (V8;z w$>~" EM\|!%'ӄAP0ײiDWmϷ5]s jA|a8ޱWe 0csxcY9U=ydqTT2 DNʒvvy 58^#?P{e)cQ ϙ xigI:?rzO̕4AcDth9AzgGy{%z'Xi쑃Sa%"#S$VؗZyxJV,QC:ӜV6?V^pҡ{;v L4_YW`xKfkZ@8z+ K ~Hhuf{G֓x7㻓B.[]ܐHG~yl;S0Vf6`"(mM4\xKkyRf_$zGj HDs|%r` #`oFkr8|El`L次G=lHLΔrtYzG_zR_#۽u֪ԃ*KM(lൿmgʾpRpBi#{箹eb0Z߬}|N37N_xځ*+sRJpwMVt=QTgqE!DI#Ǹ3>3%°,Tn7ȊǍN) OZ8Kyv6-t}޽-.NkQ>K/ R8R?v6h#Ӓ4mpQc[Ry)ʖwPUřx>㝕ȗذ{muVa Sjg@,k]pn:;?4JVwk݂hT)p>^p;V7ڲ\_<$Dʙw ۈBϬ `YgAZiwߚӴd8_v8@;ӎ_pj `v c`Kdb/<,AA1D+pfߔ<@HZZpfvX/'z2V!sbfX;9zXuOoh@P c[ҾjI2ys㾒c a(V: .Lt$|SN3-eQ+;F'x ,QKy /WpgmwJM@po/y9+j"{VA"(k>J74k9zS^ͅ fʉdm&eLb#m"Y+fπ1 ~. 6D M{D˖Z(ʹ^y_0 (dR($&OqS]WlZu5P=9멙0x H.CPgqLQ–W|.Hfp%^$ʎ=1r#7v{Z/YX2!zC hRDAK7cڊe٘xZ툸ٸJ>EH҈YD!ԈFNWnCÑg`n1o# f0*Zc« ĨOJN $0=$@]Aᩛ*vyJ=y!-6jLwr;8jXi9ɀ$FBdKuTzpr#k( \JD_P^C֥<( OF7rʔ=,09!(̣Fk23+oDT|(^-M|pDp?'|YPb9ƻvvvb3FGD .y[㨗FN0@/%)$!KCkKLwC$s-y8bݠqGʛs-J rq\-in'(m]ôSY"(G}`}%[QMѶS±l髲0XdFF&XNRbz;@N4Ho( QZlVaRbC dt <LJ]Su4_t)-H, ek)mwTc#t*$ϒ甸B6+4R.dБ7f/nTK);fy-0Gɓ&9 #yޓ88X3݈.,P"\sȡY{1fY_hT܎E<JBAADgҿ`=crXhqq/X?ԫB˾׸oZ#X`1P++cek5]a ݰƈk*BR) ;AGDt}t1[*ް'D - $fB ]'1{H7IjDX"DsL%(` *#^Í(<]Uh3RHu'Ւj{gJMPR\,} RuUk"!ǻtfd$QZqX͡ LQn".{n%#:gl6wy]0ΉhNrD "/ÍC tl<۸yW0KچzJhY~ՈmNt4jZXG]r/>-B\p<b@㊶յ+I+}AcZC+΍o Bqr?T̀Ki]#10rrW}j¿ɿ/n:x~kN1P#F{ ;;1&%.bKRB'k/HxQPKk& S(BU'$ӁTaHŢöa7,a߽equ(ۙ5L#(z'1F",&n>G~BWj9heέn2EфT'7l7H۠ꞟWFdp5/UUH1Ӄw"qabx7.C5I!wȧn&"pޯ s[ͭHJ7hSet{lcuE䇢:Rfn`8޴ F ݑqwg!B? >#VcöhN]/k?y/kœNt{UxL#+RYy}?d)%+yk Hm3K# _E^r#~/bn W 1om Ld;>1 K<וZHČ\礩GkY1C$]FDWJ TLFo16NҴLq B8Ț 9 P\n@AHz=DwS!߱ n6`&4.PSBԹa6PR "3t[ w`Ɲ=DS '}Bg7kSoJviV^=`kz(9[5\3ɿ%5$fQj{X0O[y4wZXTf9lbNǚHO3!;jT*(H=ޕ$Ͷ Xr>?[#Pq"dտZw yc8|o{f~6EB2w#"{[ƀJ/x-QtMݯSbީm~^˶}r|[y h} + ObɠE 7iekt81[ԖH9(IDYYhF l0S/Ax3Kl>R<3Uu@-+cFy /ZT&2[y ڑ'S6{CR S@1H}ٶߔOK Rϧġ֓ 0ͯg7eP ;u\|һS4W`T|['Q}> WHp!1-3]ּ {):NR #X6i}/E=~$ih-Fk< BO-%6>d=%b|aSc;mΝL](%F=SoAt 8tX{AQq>VRR(6զdP͘A7>޻4B/|IT~wZ,EVڐ 䋢`JDڤ)pX]McDWT!;i?q+qݒy`X: m.!dDqC[yWa_tsoqI~C.ѫ-.IN\cUW.YRAwvOjgyG"Sօ5*Te3)^TM‡t̤9(@+9VY |2t -xlǞ=;| i%{E}͖q l)tW|Jݼ"Xc1YrOL[hRc Sm8 2!6w7/Nj"HL Qͺop:ycuJ+F6%=7hu5l_pcCCXxE$WMVuuu LjSu<jFQ T*Q:*Ӳ*>v47|^cluܖG&9YӚq~p {7f Ffwu9hp's5#M%˩H/ Nd(C+{h{YH vDǁou.,y d+܇BP!g\C>wggb?}1bf$Hg%Ԑ4.džR dU#xlΫ_ߞ;BKַ== 6btȃcZs&_eĩGS 96&ȑQ2JW*etz÷Ԅա2 P/dR"aOC! >/ﱁ,1tLo/bFs_Lƕ&YAի=݉W'>4l@5uY[ ĈM9>/@/W4>Uk;m^UGM[@ig7(-.&f2ql>Mhg)n%5k p fuϰzۯLZ»Va-t]h(`]$ 8Zlf.Ų~)µLoK*UxByQcN~p2wt,405@ӱ㗉Q#t e;U5مm.*-(m.jqILR{4yTvSW"w{ T&֍qbqʁ1 ]-WZG^%iiq4uf?%Vȁηxݗ@ (~nu@3s?l*rrq΃ΫQ"i%$yqHzb'ښﯕi¾t.=ed3 )'{\uM7fe@2djU2p`o sΪ^2!Ks怙6A;i˻Plv:K"Ǹ|ZBHb-sHUrnENH+:[HHXNESwp@ ^XxqOo~#iU!ú&&Q |6J)7S##:O[LiBo7t+R_gԻũxB13 R@2@ ժHlWg#_21䟄r˽gjvJ9?w\_8^_Z//o# N +]%iZ*"P$$9;:W]K6*.+#nO=?*ҍlu]Ϥ("Iq/(7۸"x ǁ=m.4[@\H# >?u'4PQ[Jes9 ~(߃\5VJ٬?13 OF@_v!ԗkx\@+Y4y$ty6}A)e<@Z7$`qCqH -ի }K0Kt<,=?SV\Ħ_!Uf +Szߙ7-oĆ?f|# w2C$epBjwVRM"g7I8}lL`JPHs q[տLEo?}L8=q;B?P'_s'\ ) ~9'EǢ%ZnQM[ -:2 "ٰ3I9d+Zpb{ `Jǭ> g*ɖR੓L6Z UzXasaS׫ 4^CrvS_L .y')|E$Nz*jѪm0n%ZtXt#ϤbI8DRڔrLa(E{rU'h%>u&G=_[[@-v|Vȴw-d kMEf71@ O$4(2 PGG#Rp2 M8/9_c JP$)c0fPp1BO``nӛDtrgn{ @aGԙ3 '.-wWP`N%{ڲ8@cḚPM6"YaM&=ˈ(ү;H#id b@5rz?jg2M{'ZCXP3 %Kh| Bcbތ]My#H#C$ MXh=$)^} 32_;ιOF Ա$дC my"2+0\2} 7Ͻ E 0z'mcךi/4JQj‡'rN7d( l wSV<@'4J~x:E| igƪ\@^ [vD.sRuG)ud¡~Q4}EIAE&5j׃jTn, xX7Q2x pm&@#=D; 3\i=|da3\Y^vn$;?SaW u/? `Ä{/"C 1yoGL@Ron"ad`^n@xm g {SB*N! )Bꡗ vzsemVˈWhugDچPr8C!/ _V/[GiľMjLrZр~ug(? Ǣܣ锞@7-(rd^n!pAҴӕNB2WoޤuAjtUhZLb)q@+~P)"}kbXNPhxQf0um46Uo1*2)«1$)g#wS<4Ya*.-e?V@ QM_DK涃8xFJ18k̀! ] U#cyU'<%S>s-;5Mø iX2ÏHeĂZk7S-/4V7*V9֓LdKqvƫ[ t\aHI__)؏UiXiە+l N%SmJ7ClUd}4F x# n*]IOr*U=!eJ噫N Iugqpi<{y0 į_O a8)ӟe?4m3e֖uڷ4lc1FA /@!&n/X10[[T?ـ\]r0*+IqQ+"ȁK8F]X}KF]D.٬,)jqGS7cp$7&H޶z/uyT*GΠ֚f`@=n0hja3 H]%Җ4n#MY<^sH ={$w&❄mtL4q|6˔Ìv(`IY oX|_'"<Lc_0h8#Lzeݬb3yzL}',E0GL5?tHdfk{33Mos8 [_]%n ͳqi _i!JYwkA\Rޮunsq6ʑMzeO-yy3Z—Yz)9 fHԧ*PxMR}蘻sk@DL*AӃkJ ap^J^Z"W+')QJKI Q"h|-_/&cjSaj f +9CZߗ$,ÕLhRRdsce+OQ ƪ\U?iR[!u%YZl!\zX uN23 Y (9۬ݡAqhYh>}ytcC^x+-4_ ( 66},rJUEH@F/m(x?@ڶ_ {NiՀ>q33hTou*svDuEtӄJ j*;NRyorq 8p)tkpȟRP:/f48a#WsPR;wwM-kąxzuaV2dNX|N9 #%]Q$Ĕ04&骊 .61 {59+_ 8GP E})C%׽Uaߞ%SQ#JNQǭy:ՋEBKm{=5xS\kityɐ5g;){Y P?ݽpsgk仫flѧD}1m JV_hׇC덙{z`,)3^Ox^ㅰd^UbߗX[v1g` \ICHջb<}V?@;|4n h{: u9ڄ@BԼI=@ =~}^vZmo.V01 =&x0 q͂H5} y|\M&`ֶ+w6iwҶ+k侚@>ڧH֜'=`xj!9?ˀ-N#с:K7Bs)w#/%( C3 K@L6lgcN;mR?` {/ůS[B9nƉkE@ʭ~oYKk[JZ|^cuaPR:%> 0=FO/XFގm5`[r]. if`I2z@zm%Li=n%h^JѠ<']AdXS ̴[ފ)'Q 3!)蘔s"Cm4j.8 Icm҆;nKrF&Xp-qѵ|XTBUlA.|(.sG>|E9!fabϗRٶ~v@ h.+k5ɧ!u0<-@8RaBgU*=Y$CIY_<߃%Q}7Ɋw'i%Eh(P>{1FVH ^qnLj'1pDsZdѯB60m晙zR(Q,٢A[PAVkSMZ6!/Sn_0O%NгĦvϮȨc%MK}k']l/E'dwACpᯅM4ɸ~kzl?׽CDAgu6]Wػ|Ppch! Wq@4ow' wq:ĮQ=+%Z[EnM,C|>FR[,\$B% )@YDS"*щ0#䓇˕$N󋢦x}"3V/UHvm\ aLEq[n&#ףHP_91pkz0pYf1M 5TX cTvaq yZnfH_XYaF14 m(n&s[9֞~a{x></Ccz1%ztUpK4}N`2xU4hBީ F9?~;-y4;ʨp;Y g{aI`>Ś'JU &ZyPG3$yyW+/E1e-C _|ʰVd:< 7&,LXOTPH-s?gZ(Yl[V:;#*^M-_7re}?qMs.EUUk"O{uJ 9} ӭ3k31vҎEk3j5 0z(%2M|]P3Q ž[-{3}6S1fϛDh<88IhYd:e'(x mn&FlbFލ~0c&Z~W3c$&E0e y2S6%J{ʕXд5cd]bǣ[DKBԋlW<Nj*F6 bҲ.jT` Ug6 ᑾO绞ؖ {׽oguS` ;SWjڔL3SlNr*ֳAKX7)3"]dH~7zAnV?mGX"ĞW1P 9mr>se\ o)D|q />|8={09pWu5=fAʅ Nŧ6PM $F{hV~vbn:ZiYwi*AHXI)6QqO\@ӠtOܽRo2xzU"՗+i>k>x1kt ^9 YƕYrEH^ yPDc0vz"}X!]M\n\-?̏@}kE#GHo5%Zyuopn[9]Wdf6:*̘]b.mu @eݰ\uAug,ЩK ٱ$A[P}>jE,J^AIk|GbVgGbY/^wrp;'=]"yN7-?(S<ѵKF#4\=h(6E0JHonNKZ.pYS&&Z_6貂>1J@'2x~c߅a fA<M;6ًu ' ȬjYla}ׂQQ@Iݯ~L@gBŏfB;E#Ew=!WI ^*3My@.@ݭ^:nJ(S)?~5K)lb=:˙fX /=y-WPKܑ ~`w8B[񀙪^Wh-㌤ N իmnÆFgvۢN; {g ʸ ]%N&GX# /͜_[ΰaeݘzd+=xP/;Y{qFD,3j8{d)3'(&ÑJNoHHFT׋W+n ?Dļ~ƤMb/KZ#\+ `i"zR.w$_ ΅'/Kд_N8?rԝaGU[3S+.q@v/[n 0ԮFPh:o(rc {cxCP9ss7c/|d͈"U*?ҁ)[GiYOrnPJTbz+!Ea}AN\KJ!V0 2|LPx)/yURYFr=/0YmJ\AmIt!_^ޙ0w;0\v"I<, HQK|'lŊ{=%m<`CKOxMZ Z.㌞sW#*o psbY{ sSE,}iG{!.APm"?Oz"R}L1u8 n jՌṖ'w?-}wq7[5o۟^!yWl[d̞/ar^#$(@p>nsH4\{(2L(:dP^ .ϧXeTVeKy^h6n'J`ŬoI|DGZᖢ "&U"t+y۬800BJ(@C_4}r3/H oj>ȓ% \bo#tĒj&ԉRu9X8|Sh .kb&}W+ŦBNmn#印˶1. qBRׯ )[=溢狢s/# wPC%y|(c®đ8~+QSBk6.m\JpV>48-tm,Whh13jf '[ܼT 9wvҦFen(]!pD]#XbiKs!KΏa:h(ssbmZywtbjPS;yal- [r*4RlFW NP8(EMk߽ /'c nZf5C`auzffF _TB WRBwebYڜkܸVQ[Ƥ0ٶLYϓ\B^^OEZO|K(sutg\@srJbnq!U0hN#/cs $ȟz,8J:&-ޝzlw|Hm2ICLm>Ct\Gh+tֺM#QRB44l@Nks+ H{^r=2;8ފ ,Mg6E~Ԕ~)QY_A8ɟ - ȆӉJh&kHޑ&^"v1BżFObx v Ɩs38?U7&Eǿ)]$`uL#@c&%]!:% o@fob5 B_%F9ɥ I_-{Z;(?J3+um]$?r-1<Z\&{1Vi\̪=/ϼ~ юhj&wo>wM5;eȸr AnT~].!E:s4:gzSvxjNS;BOr|3w i Oc)hc4.Ul ŋ#`7[uzejue!^kyrȳqq\ь,[ݧ}秙-'`hr;(af9 N/5S^ 2;-. 8޸ENalWD E{ðK #SJBqiI(!:-*NA&`ri9{FOF$Slc#'48"+;SiB4r wT\P"Zk&+f  i.wͯ,sr 9j%Q]n1f6.eF]`4OoH!NUQ T ATmʧp؟׹=d%Q|t/PکMP{O}Ư}p2JEOF;6/+ bR4hoZ۟=˃]y.;X)H+ɢzX CHCk v[hy_"ɚ2MBuakL'J߸` R( KOY,N)ede)ɯACX|ZKP-SwX[^`;_>9BV[^ d~?.ʰ7?J\zoےy@Q|h0kꌮ f5@sQ|boz4gYn둲E‘izᶒ4i K#X0 0q5Z`ZN8'f>Azѥcm,*rmcp/ aEi)&"kTa] mr-BT~e^J0V\B]†U~P;$:V!\ L,խO[ 6nERԂraƗXXi6mI`. A2+"ͧٹy_={ Ɍ=mY ;cԀqhy. &*y s`<`xoET?hAy;lKGIz֌~RQЗ ~WD0S/Il!|-7(67 'LFWǵ H'W!|^ B ~}ĭv ǥH uy$~'>2Z,B5yv$έpy]%[xѩ`ʼnrKqklUJ۷D~({B)N5bwSJ 09u2"X I&\lMU>y KK؝Ph:.x5d5PP4mkAw)ަĠ64'S@3u\Y'ӂ{ tY":v=寣GزvH"oN[X)YxCi0=3=@ 㝒 Y4Iltû,EZRIAѱݷ S7FO;rWߪX<xК}pV|Rsp05Dϝ 0˜?|'#b\JZ9C~"7ZQ"Ge1ŴXRŗ0 >w FIPt @TQό};^&H!8t35W`N5]iP_/+%:0buDAA`/H$-`Pg-* o8;?#%so-nf/uWǣ'1@}_.ׄq`?f줶hv5rZh^`ohZ2H֩2HpEhAJĦs uJOUfYxny ۏ] ͢/XrQ$| rۣ1$jaw h]M[D٘J,1FǪp>+B5i4lJh'AY%ik 5< &MK3M۠uc'w tsJ=KЬTҘ[I|̥^΂ҺN;[g-AmL 8nmaLɣGz+NEJPqFCP:z~T0)Mֲ>=& jKbx ~ϔ[÷ċ#˥zM 99ozadžh(^<,6cp),5`0 YJcp9;Y)n2:)e.b AƻDˊoF-+˪@U['SV)nmބbufܩ@!(Õ܊J8@cCž5X͏'[֛NZ ˮ6^Yyi $b3_ńPv;lP׏l[gDxmgFu`Xnꉎ OLAkU'{'*Hlޤ ˆJt,lhR,DFto77&X4MOz?dD[@tMj@X/]χ3nG7h"UB)8RQ˭(XؙJG>XevUE/ |bwR﹛[n>3W0*@5QLyK7_zEĚU[Xe๿*IVvH(̔K-jpԦ9Oһ~nLx1ӉI1P`j):\npp~D􊏆MFmsTBAsf`_U\>&^c={WmGW,S 0WƉ1(Aw$CY4xgٶ0Tc7i ::U 8WvFQDPCbնݳ|O;Sx^͑'==t*a>WwyQKǻ #0_VF~%oDҤMh ɆjӉr~2.:32|x{op<Io&n_ώUի qJQ89K2?i׾o@'AFBkPw 'PXFak w{GEƳ$eB5SV 'nH[cǟ"n^p^-l kENv>xg7\ 96%?}eG{w*Ex"s}mnbufr!;縚Qנ{"+_QS h_ )j 9ц/2Ȥ%$:ʉ!/7:Lb<5ZoKnyD&\ Htj@8j>%c1$s}m;c*K};RHԴ Y-Sgh߯Uy)V01M~eZឲtAG"TZQR 1 0~RF-0Xeܳ.Y ?[_jrEqco-ܩFϓb !7J P/ӗ15EO ~I+DLT ~[GU6|83:֥U<4Gpodj)Ds1h."#L5%hg\jNVه KCNT?Cu5\ũOQ@cJ3瑤S ;6c|9㳳OIax3kAwK9+ghf#׈! oGܙj!}9fA? Ucm;2vn'd`yqzE-{U;n;f:h{Y 6g,b @ndՉ>?4. $%2.hUXA4{ʹRwןh5a47HQ@qp"RSdc||c7{$O!9] E2ŵIƓ_Z\gPan9&pWQ4A.&U{I ,XNhW:~4) ~YOJLr`  I󷺮xew0MStU+`^4zYfMGƺ%dI xNO2e f8bٱjU??$ۖ53KC&oxSaKZnc.p rE9}/,7kܯ50{¹v3~Zx Q014Y^aR9D͂njNJ-P6B1"w WSy)e\%ëJv?iڙ4ym\3֩hC5U5b7oD ^:H_TW/qKE'xDu3C[n'N#.2[]k vZ;h'BSP" 4]an_rɇf( $T6%,Ӱ 4A=ƈ` }k҉$7 71nu) 2L0ȑ7 }G{kTbp S=\QFťGkL%6gliItrI\zƷ:k#!3ӝ"0ί2|;P4j\l@WV^|&0!{$>I7D%/JPk^,`̖)7_.U~l-ݫ>˃L•A$/y.h?7Ұ]&@\z k$݄" I^'&՗l(qr":"]8Gޒ .҂Q59Kcm|qp LS||Au7w *T9f| Z;.ΛvhO+}g:3ǑXy$@ ooҜ=n͡ -:>Fqu*֞=pAגl &$!w*o5ƁJ!CJ-v|=g~*6(#ʀxE,A;Z4GOXC#&r`N]9N@PI">ED\%ef? ;jσ]6;ġ*HUZ3G˾d֤pM~?42jG̥vEAT|LؘsKp7J>i%EJtbD `ZgG';-t|W!"Xgs~Zڬ>G)C$QO׷ئl2KUC(wlTE>E{Q9tD yU[ZX\#NFKWp"QR5IK)`%I(&Z{+1zIz"%m|%"4uTYGv$m΋Vj2zc4%1k"2qY1ė!m)qL8Y ̀ <-%rt:!N:^+ι`^eAblֳ&թa{U9Y|lA-,ʞ{6@!TS"'NoV>[9Dz{ܧ}xz&qRBgKS.IR46҂zj@obŷFU MYB2Olx ̘I֏2KMpH:T.w/P" $.邋P>ta0ƫjy'8wx c:L(k8=E <^6f9O& =KiϼnY֌| ,|߬>'PNn*I7%bie tVB5T qCUߋ?aVF4nbLjFo}G/fclIuժd$)Ԡn6z07l@˓D-X0e`Id~L1(5ѕbO(lbKÓDB^0n3լVμb8lI)(8 YGlX(7-PDXIz5zcd`)|X%Ǿn4'EG oTN1"{Jկg|b.˖}|&âճ3%h+wlB-{PBgMLR<뷊e2nhyg|Sx3P *Ӗ4y{taRs/?gZ޴Ak"G3(˜^o{}XR? 9<ޕrivFI |c׵Svݼ?vBy ew}QGu;rJ|;$ 1J f gMɖJx )'boR$CwG{&\?7(R> ^>'#cHfgQc;V{**n'PhRYX?rY0iYM9ryVu|rwg^5r6SEKyOދ8.ucA_8oz bB$@a6 |M ⾽739­i=kݒ<ÄRCf #;]2C!x#,6OMd"_LOn63҈o/v;OSOiho"WqS?`fkX ܍َU4&NkJ 8TjhF+84)l8bQIpnҖ\]6wCi࠼9qF.@7D/t|ٰ˶?i酪̺i{/@(BTF@eQX#g+V,OVjP˹܅$ixnk!e I=B3W望uH>pBj6h`:ف{Ĝ߭ hPt49 a-֤dل[4W'=z΄fNf){)Tcm4sۦlmD B +TwHYw;h+č o`z: |yirrpot71?E0-#?DlӑbRKͦz԰FNErIm ۜ>6ku{. r㲕L&hݽBZn`I-}:X6 Oþij*R5gZ4F](t My(aLZ?ڜ `YB%N - G91IyK&68k/goջN*3H: A -Ý,`,zj\:q|`ꐮ.0w~&԰{\<^6_Zq)+1 l+[/%9͕W'`z=V 7trK} mlnhꊾEb"MNRUP'AJA5@dF֘8N BYʀxIB/@F0U `+)#yR" 5= XkxDi( RCfP{{BSrX)9P]IVІaй75ujIdVٞS)[yg4E]#e^G/S"*7!K(PmY-0A'*-W5@4ڰ׈DKybBo iNYE)ڊ[No&JĬ/ $wΞK81LM'D$ 磤08u%&R\~Ӎi뒙R:?]9Fu=8hܚ7?Y ;7$1"Z}Tvwtkߌe}UVqi$-J+w򖩛AA不aρno&2FHZ%nȲc,?#dMKGFK;Ȑ9oĀN@?iFo|oFe?7%;PrHFx1{s:+[}x}oTX^mq^RӉtәhA)|ʱFHZzF`xX"R?U9U(+BX~`A]()a_J*!M{؞1"]& KGf>n1(}Lmw\ײVҞPb6'h1Yݖ;$LG׵ơ$=u/Pk}d0 `{/}*tn*";Իm[< -)Ν1RFȸX9h;4[2D0T!R h}*Bqp5~uYL;-"%Vj?B^籠OfeDϭZCp9Den *@Z#֜VIBg:x*$OɮVi h4` Js/ټުT|wvxO;ףY CY𖬗7&׏KҪV@pa&|")L1u4ArW+um B:B8* ZguLjx C  =\Sy'CM jQ>~|]vT |ksaT|PߢҰ1]VtT>x$$W嵻F)| J҄׆,#=8 S,Z$ʢ֩b$P!hM(GM̩gY% rYBndWuzwU"H<5huLTBz8SYA~qD'' %ޥkS2%ܙ` QZ ހC'tvZŊ-)9iM0W$-+A sȄTXn h"1 Vj b áD[n|#l EHtW<"9*S>qYJ>bv:?ney[<n*?7y5p]ڌ!wfT͏RLLZ>C}tI9WW J7J)#Js/~Y 9JyʘVLS|щ9O*IϏ1!zs V\ 9nG?L;n)2I:f 9Yo\4bّwC8Fzƅڍ`Bw%QqI)A0`Q)Sol.)2AX;ij b$]$c." 짟k)-ѪwI5<-[ zԍx~\Ih}!.@ӓΑLաp S8ē>; *F&š_۽X3VS\-`pg>{oۅ;>xJ_spi G`59q 8N8$o;}޼MT`O%*He9*2~鐰M fF\8`ʚ!<^tB$m+>q_\^]'&zr FԾ-{ԂYUM L#͛P /|/ԙ#34)⋐z|'{#BE= 'R|_jţ=yk R^<+#l?#L}P%s z[kZMDq%aBL +#Aֺ]^k)ֈzEԑ7|-t\nr軁Cg9A Dned|`'kt=&qnPG.AC; ~t?I){;*ŮיSvd;+mGpzE#xSt^VfnlU kȄN/zS+tU"W0xXwo':&w =XBK Pp Z]y}U7 wc x>i?M>6,k"ce]?4bb])yHMq*ciǝ-"zm>YE5]ItM"I>٩_ )x'*T,1)',39b ^"w^I}F@4 [mr``E7/ Sc}0D%#, yڍJzY҃_;0- by9ljhjվ s^^7"tkT )к+yƮ=hBتШ>d(g>$i qߐ̐y1a-X%v,yeúr)ؘ_x{ .u,*g._Ewt9t~6^}7[i`}UxDT|IC9)-k>"pK$}E̍eu8*Ԙ'Rv `6r'J' FcF1rgʀªR S*cbHt7} 0Xn<Tb@W M3%bB䠌aA DQBW-]5ڻ*[8.zLiql.V%6Q~C/Z+ }72{S-o ' !. 1C|0zLkJ"˯k9:w7;denaa]Dl1 |~-ϧ:]vB5ࢎ 8@ }Γ]x"PaxL-Mxe4J%~% B$un2E-[ONg,˥H6L4YHߵk&ZFz L%|PyNE&${קRD]kR<X,c6VHrhWHPWЩ{Ep'w#9_FBsϜ6BǂEރ%~Dc&"bbpڊ1R'QS0yCc@p=F7 q.5#SM(dSMj[{2q3hErtX.B?s 'őQ0vMv: K0 w•8l3.%kTicZt=%tN S2[@OG4P(?:pb`8x?JJ/qp3dӄ+σk7AܲZo6@y"cflXբB) Y#pjAE8? t7ӳ¤-D+u/He"S"NWdp~!y.߱ \ѩY\ bhjWF&L͚DJI'\ݸyWE;9䂙K$9g4}yDnvbآ=um1J"ǻ[ɋ:!Ԑ,Rsowɢmț$Bw=b!~[0JM [OM8dy֡AzI^\cx<=~ۂ,pM K~ؑ:aνtl'56fzɿ&Ɩ!ay{KVr9vlp|̲-m>njb3~e%V]  b 1`e"u T{86cU]a_\p8-h6 ' Eb(n Lf2y~ʰK),$z_d҄i5!~/ݨ?܃ 3M©ײ;0($nR5CҶ¨2RYkS$e! Pvu[`q٥[fsEymy"za}P&Ͼͥ[, ;Lۻ_ ma|ZNYSp"`cx7ǡeè>Զ5nh멲S6L9JȦ";6/DlZ1V5LPp4OCK4 xxKey)|ͩCYe[{ e0u,?gzMf= X{3E;:>װ^R<8T /|?¥#ztMV$ >T'xR첾[`i)vɼR<:@ږ q^RTH Fftd=<;nO=RɕҐs☞H,b8 yk#ST$̀ VcK"5T@ZwS ۊM&mz:8%7[]"#jSum'l֍ׁcF^1.} Eq.0?^lx. v/fﺗy0aRH%/ٵ 1wS[Qc0|-lPm{f'*5N*|?ap|@= VY?eKvrj*W'WN}c˚>hC/ګI| ^pB08Ll *VA锛vndK~a1$A Cܝg%y|G\1Z4z3y:jxݒ%1m'+͈)ˆau}^gYJL@`Sɩ]SZ6;'NqSXa%F; a uK[mis=)ថx:mWmqvJh"rnKצJlWEu`Kv'ۺ]pN1Z=g4A7JCɤV}BR} (M-!!]jxӵ4G[В.H0͐zQxUH:PJ2"ܻq<6Y HPᘉs<=ީbp(Ut޻?GgC4`tt].۰ 1W6}9 EMqe8S_`n ̤󗗗M?w?tt=q~I0wD}`=1Xi=C`{E@Q 51r&пg_k!u\McLW\!yD*s]#O$m&o M%+΅OzdB~*wj39\,~ٿyNqB.u4J P$RJ TsAf`^BJjiU{GCYB,tUTpޥƗؤ])Ng2GGq&֢ПC"AI.\e&Nnʾ:P;2Җh:ȔNs0`2M&0w=ZUSɵ{z z=Orq=AŦ@oU@=WW; ,.DA=U#~c`P~Y]҄p˔53EVs`AGfB)ŶL8 NS(_+]zBm=b7 o.Yq O;;XNL!EF/ 6@;;#\cXn>pHՆ]Dkp®La_hMYcMau80 ͥz>>bshpX:c,]k|2g\2|3t/l RV YqAnLѐ1,`Ŀ cݎU' Vq^XcI|$Wh  (N`$G JiVښ5(ݤrذIU5Z=u?q Oo*[֥ˈ&P0o{ D_u^WƆk9qU0x+)|bl)̵pldb;_`q -[29/Kr.eK0 qv5w,1`);JPϳqULyBgZ6[(+LЕ/ OİڈXі]  غm4ŗ[a„PHzf'D9{?}s_edZ4ܮ35a5( lVDdk (}Ą{OieDy(y8I h)v7-KRQ39Ɠ |T*z9"{"F U#?S.Ss4t}pu良E粹~\g࿘i cj"<\ZYof?"^4= Z^OS$8Sq{qDT]? ^1ξ c竪kCGrsGu _Wţ+r&-–<Ήq*XRb@CD\5O{taW<1@5$XLl}&9k;h6^uvF6VE[f!TEA$ʛ/[}Q ݔMGl|!Iy(U~ɟno!G*|#6Q$ncud\>vO2qFm28S:lNtN<G ?HyGF֓UoczEhKk¤3=w=#{R΁6cU@Q[)n/W#EiJý3Q37ܦ{ "ܰbX**ĥk#)6?mGU5oqhKO`;La<006dY' ._7mh$ZhBd>: !Ky؝-tnmys8dgbHf18P(NF=t_Na ӶYΨF1߸Xժm6j&Zp d?S22}]S:rͰ+h뷥-yBO N_o+V<$2b)w;= fe Ĥ ;|@@և{Tr\ gf,݊Qg}N|*-+~؅4A߱ʔB8^.whZ1]J٭zjH<>A&K*iAemI7q'o",#Ilģǔ8_. *wYL:c / {MưI7REhLg bSƏ2jV~P_Si)ȣh`%uDU@kzD!u*ũ ם`l*;nzQ =Gq,WLة^b eJ :{tOo4EmxQC2&γ %tu{b1s{tHBVȺD8g]En$E(+ƅ|Oq11x85>]yU'i7l`]! OUL:rlKl+.P6X,H?I^3(^/rT\&I"KD &X( GURt z` ,sLߌ*s'1m`ݺu%X^{n&mᲂ72Q2RH_d TB]^ұ8ַ2*g!+4ˀ&%?[O!>71>{$й_][Wo@kDaE2uJjLF b"D5XkPsB;< |]L {Xsv:ڗ 0 .C{H`VD[ȹapA.SHk( $iՌY#9`_As\v+n wK ]{48E?+oxHQI׫ʆL3|&buU$86U hs4\%Xqr2ǁޮd\ŀ[পE?ȗٴ4F*܆6mQyNL =Rb䋚)hvj0Eut0he-TWcww~_>kOȥ}f$}γߵ~:>VpːFk"Kn ;b ]8pf?,9P.mu냤o||V kIw?L c~Q; .A9={}TclfUB:iѾt֏ k֦#G[8V3M`5^&s1X(ƢM9q=3=x~:ݶ<\JJL;5p|Ў܉:I.?8 D{|4E&ͮ?,6.; ).f6P߾ adƿ :D`V>?A֩;y̒M-4*c,p51m5mu)8[/ŝ9!V̶WevQ /]/N{$һMIG*cf4f&{qsHUV <$ L 4Y |$[4v4@-zJVڑ񑳇: [/:C$qǥ"^8|J!Ň$ \P qV=)í#4(Dh މQ3!hbl>rd„_ 4tڄǷ3a/+F%a`qXji)d5<΃'˼_; qc}8鄀m%Ԭnz卺8žċd{S_36sVgCNڜ#Q :ZD7jI@t玄¯ [л} iZO>&_Gnj&m"ǒ3Q09 t4ܗ1Yʻ]to*d*g(VJ'y4Te18 ^r}EPəC8h3C(^<e$`bG=?Ā|L-EJ; >FX5%P(syTSL1VaAA򌪁q8[:\HE 7]{ Ml Y ?lka='j7yHqd\R渍"X]b"*̩dh4!Z&ܭҬX$|8 {/>I٪\,{뾪8LD2 -4ny\AdGi&>l`J+)=aIV( u_LJ* _O҈M7~/jUU#1"Nw2b$V6O  -vsE]R5_qC te/>bpZs#AC:ߨI vZrg$ s}w$筻%_\)ƥ,59HyAQʖ7 kEy E˿랒Tf]5{ >,$$%qp;'_2 l}?/'=/VxeK槝\ӰKK4E+WnعzQ.rZ {P[<*pa9 O^zizdi z*`SGҎ~K&Ge60h"śAc t9 L:Z.⼨•3*xq%K @mf_ؤDƱJ^x=5Dog@ #>=%TY cE)6hKi9^ + 41FT #KyX䔱bý~z#V% k} MFx+fdn$IG:`,jo#Wt`\sy?hdjEJ#j4IS}X~5+gT_6[F+>qPtI:fnʁƒTHBBg * *ʞ{ݝe!=yZ{^tqY;0J>^NˡpFT Kjoů1 ΅1 W@̎/rR-`HкDS| p(X'W_pX޷ 4S?jb_[2dNr>8+TbH׉ۊD%,‡&֢9 xlyJ޷ +ǏiQY0Qzbޚ\qb}[`de=<Xv$y`K>DLT~@F`v.10pe`[zvX+Aç-K{d-`m ȸ]*Wh^ Y"lחDmm3."TL`LzR(6SI@7w e`u2*į,gWzw^dN#?->qWjI!g+.`!$z >iDaDS.{Qֳڍ㲢zg/#/=iN2pQ솑Zc G 1WEQ4?Sf?g_H)׳((/,g3; ~1m.;uY)wUPT[ R+a&zl-rsG `x{eXe:SwB2A&,wڕ0}v&J'9PKc,+T&a-v0Ea2S=O f{|,m' wY#6@ ZlΉƎ柤V#΃1W`*}XV5)0Vx B%)vMM3ى[1%Pev}_"`68܌-\D@co^Ȩ^W&Cn-xJ3eՅ2*nkddNbDZʰHi@|@_LQ+05TE|]DC'50fVWB])oT5Âp( EO"cH}8Ni +]Q. &8Ђ\X]_}PK0^z\=T\HO\54#u%ͪ\$S.HI&(KE@8T8Yi.fφJ?u}yɤT@i;*Xdb`2TP6=}V5t.::gWʴd1.:A ϼ?:'Z7g}#n؛fGK?(S@Z 7FoAmcuC0}0nu .;yl <+!pc/< xܬQf~e([u!$qcԟ&jRUd\mfzX(d_1#xM`􀨿r2~ZJ9ѿy %3A2f쬙) pCbu2w=&9Ǐ2X?ZPgvAcJ1i4`E߽àk{ RYhg.3/60ej,!> D)+(~#U֛֑s D˽pM1QMԅZRŷ!0# C\Rw/Ͽ[,H<E"ADy{9^y-6l\X'$/XYFV8>#rK,p .G$rڬמ2q<Kꑊ6 am)x@?Y4d+b Ly/KP4(TpY'KTD9FGHg\׵dI"ey$CH@\-F܆'J]|Nt Q%ާ _ Tڞy͟/W (=| }ޥ4k+ Wfhܩk+suJ;!BnǂA,D6'G3*TÜL{@їC6Si0<m@K'b^'Yk)onx93#AqVb FrABD֔FnZc3Ͼ $]W.9XM>;ɿ'Wjh(%M=I&:߿&A OzA?EV9#@(k~;r>+['%@ˠɠb7~]p6Ajo-"ĶeJxWEe#鯫G"0*(zeG.*i {s\ېл8am,XE5L5 Q7 uny?γ.:#' UI gBϊs4`2T~ViNd&w~uԳ巂& Ma{ e{ͰX7CF>ǭ#YAa;߱Շͽ0֙wlfjgb`nZHK܁AJy rDEG2Ns?`FLsj&Il8Ao^|VYx*eqpyӠ9E`5chnCCVxOpnh7)2?ٱ B=rAti&M kYTpD'a<@מ=<$܃roCBaWȎ4l#J&a!w&_#9,Y mR1WA{=!aJ Z $oCy&FBK +gY"XAimǁyFM6Kj.T=Bjh"Dn_I|֡(7wE3 NvO.n Zm SU]q'JGue9:EOK9GX?۱?s CKKq sU׏܁Xr)ttpͿ#ߵt -5,FUk vtk:fjqC)wYKjNUx"1^y͇ʾ )WoL{o^rX]DT*@+k`[up4_vyDo"rWOÝEՍ10[["-gU-.(Luqz{ċ"(bȬ%NlJA,޾>8)d'͚5'H⟂4|/])s<ۭYclC^%'pD$lrxf}dQ]~ǁR>̵rMHE9˘>fIInXJ| II[T>0mN[]1V}b51*ITq1^+~_]nyW|6cWlL}-$-BR\.{.>yE g<+<5Oڃ%Z柜wnObz @$~;s"84M`0I6hvߩ Ҧ«z\!KL0\9؅/,PU/,kܛHe?;e ۙ4HJM͌䦆4FФ7ݮiŀWk 涕,NSbD^gE,Qf͜ps mgS5wPYsBV=IT n,q`e*X 18cVg53^ކ , u~^}jPqO ]Fcpv~3  ]Rw"뗵{OQ?"@S*k~$n%Yx)rQvqHj*?W؃O^B1śS4[>먦AaO-N> s#Vyp$]R2j"/=% M,Ke}0}!T2zqЉQp+IZH&b15{7k1fRݩEj?,iu .P\済_&~s?jFdX>O>9ș4}s%*q%Ka4)R((ľqlu9kyT(ֳ!jDhL6諉L KC?g=:کhpXY$0b4 p鳮<-K#ːw˿UCT+҇b.(_ &.LzCɨ9v>Y˥616R[+tji-, }Xń3`0M>hM_c[I>i$".f{x?N>i f"cCX"ډK {S ?x|D@\ӤF }$O5Tg'BwΗxF3O fjsr.701CWȭ!&RWD NHGvrʏ쾲?,qZg˪,&u'&N<܄%l#);{6l,-QdLSh=:ƾOqښ+[E(zغ͢G] 2v{i`^Z.N2ݧ c1w+Ε)j8fS7O|p6:Z 5,[@s@/)5r=_">c6K12=; š"f^9U.auDHIyS Q[eZd5)4!n!T9f8=TM>;Zx_+hI2ZUO>K\JF2DRdt'!gYVa=n+Rs\KJzqi}U(YM5Š= kX%=>ט:FFrDRNJ DC#˘`qɿM'cD1\@dK[o>r;dMp% 5'54U`fZ(ǧJ1$c ~sȀm}qWLڼ4d'{%IS"Wp;F[~aoIYE塁at$>z OI9a;)4|6T⼵:)4_ΟhrP.{#?!RYG$01]bhbIc+ʯNǡtQ: #X#7-LV2Mɼq"DjM b)8U]黕^Ie4yQ̽(jYg𪚠-QYS ԠsT5)V+B:YkvS^M ..F-Dg!p7Gl@=Ͳ+Iᒘz\AޗT~N0TySxbx C…O> o,` Yb>ROd?&GY h^AK~oC | -@!4y`@n7 `Z:>K{͔i@HMSHwPPcЌ2֗zѕJ}ʱ|+I3Vc j[d3j|1!$yȰI;npZ 9%q1!:-ُlaKxhz.%,Rxw>k4Hk9qMUޮv@c&"VX2=>Ѥe v<Ͳ.È=x~J@IÁV2Vd.#މC(q48dVtWSi mw!Rňjг  Ttw6%Im$ L<dj/ `5c`PR"a8HRUD-WQ|uPc^}JۯI23uimi֮u ߎ}n|7S2|Jgy?R(3 iKPZělnxk &>{zM/6ғjj9gVJjpw|Qsm4 v;©ub֌gVLH)An*@Хq-SFNY}H6+_MqVDb@L8r !\:AiµzlnNvwL~v:Ͼ)kpR߯ieO=o痞f[!}4oFe+0I5Ieһ3'S., B[ cI@ #&ETjl)s%<~(Uk>A3ƊMyM*U!xnKQRuN8s}!hysDI^@[P 7xHj[3WgQ&jW/N|Z Vu &07BNĶuQa/<7ܱ-_} fg6aii2Z򑿦xE 9R#aF}0V#Sw]Avݓ-QiB܇@,BI3(D;Ⱗ"AT`􆲪 #I*1e=5j VXr de@[-/N{:xYqIs]6ױjjh,z8HTxDS7tΌ/$BFnFXo6LVgq+IiX" _K3᭼*Ո0x6.E-w%ۊvz8u>z|Ly3˞ٞXWo1[Q4}:A:n4;G2`fH6Mr bp.\1Z0^SW&-:Tޅ jSOL0}o}v\]qZS噝R =G˒BsJX&ZT]5K0"_v Dx7V}dm =K^ltooӇbT>106-Mj| ?4a8ʍțK҈D^J@*rS: s֠(!7ihBs-k#zFtIe-ӼPRfKtiHHQ::Kf!CSU1-U^bKq+׈+Z_vI"N~s;tWG7bna)dI߳19j-|7 d|_JnaSa?)SͪQ曚wu^ENyna]999?e~4.I+m8XMB˹%h3;4t14T*{o1&pt[woaΒN%]VX{cK] } ('ss|{pY{Br#I!3ZʆD4`0{.טPPu5y^:gUC3[G/Bvx5i|x=b`P)uztI;i[z.Q(.| z x[E@>Yͦ% ךTkK[􄆕m|W`C7|vJ[2V7R7TOU)EctBU6hY\̈́P qfc 7g.R5^uMSo=+GjN#s=oIH%98HE*j"hbj4'2c%$X&WyIh=|kʝ1 {mGa욼R_'ܚUe ;izq]Ԩpm ݑvIyRB$V4\q U}|^"ׇmQS0"AFKKn-HQdvD j ʮ#y.-Blt]x)c5.u]'>ip#bšE9s,B1b{Þm`y[Q#j9,D bE!}>ʾP{[G+ 8+#&c,-)lC=ٍg%^K1ָ⮬ $ !:b9o,]>QYz#YP bD>5XANYJm.vG&瘋 QT6ʴ`!9?!y>Qa2 7W'U\ 3#.BlnA$aCU( "(D덹Jcb? ŕ(h8/Iq*R<ߨA')nSTL]yu$](sfy{/%X`<2"G#]ckSt}kV|V8_>p<j E` e`76L P֓/~agBMD)<:P!bZ>6Vz Ajwլ+)Tͻwz*UDc %U$ 5WNUVAE2W9[ː>M ܉ iTܜyF J f\sRMMf79KֳۡlHIaKm6NUحm"jR7%խF=%^vd҆A&HW29`Hs}=)f EBT1:Jo7%2 BH5($*7@yv< ~sE9ڸ"  }aMV.ݬ@.Ћ7;p "h'e8#z+*U&s-Pͺ̑ߣH;f\/=ZX=KC_7&/zeQ~gUR9K"@8 }.S^ ^I@i^G| Z(I/'͆? !'xZ9} 6tx -Vb9qDkD>Qz4Bpߔd :$~5R=L9WËgVkWg+L ΀ c0|췐 8#vcbnt;4\mK-ìD(L)p}\j7E!;^~0s^?l4!E<@7ޝ+ j$6-\b]9b:gS ޝ'"Oel%jo΅q:ѲÉa'G5u> RNoI["fۇ&Cc+@UW(a7ߵ%*zcߒ=;=8̙\WlUlO%xEȞc,ث16BZ.96*/Ul!:FޥkzsNMfV/N6w(&Yb#P16 GeInV]V'~!Ͱg>DY^t2M=bӗ)\Dn?ej/zN4\1ő"]%9.>_OxF@Eg!% T!SQҾ?{3%7g.mV^YIezXD'1ӆ'~l0!)P" 'nܪw yośKZWơW]o ^a=I/Њtn@n51 &!a=AmDE eA-aDc?vM@r/bi:%CWY/6eՊ IUB.$ףDmej1|~ h)?d/TE q+DQ9>[U+MѧpAO? -zxL~J/1M됀2NQ1`/ 833 va{bz-&Blj<:qή&Zd20(x;yc)$fMi_PK*?.qlh$F4im#cW[0(=0,//^m &)+k9tuqpcgD]SYEZ տf8P2 -:-9QS_+">]7pP x$:vMHg4^r~wW6]ٞD&eXA<*aBs`"—_qJͩS=Z5Z>fqRʢq$@C ۪X- s$p"zF%Ot͐%1C#&.:z<1t,f˥OzIw+n(G=@HsZ0t1(leҎ(f6g/N?I_q Ӡ.-wh❥:~͗BG8V;3>},"`-k|M$<vpG`윈lKgxhiDAI?ed&8-F?My}># ])f$cWHjfI; '$%+'W}{3T3"&58 c3wEKfԝ'9=0wgmCî`43_[bJNn{ M4~+[{/0k.=կGßb"j`ˑ[K?8p'lEk;Ksz xwGLLf HUǸsgh U[Uog-V{fbTgƣ`;XCujo,!3W/rJֵ᷷bM9D4]cؖ!ekQhP! zyCvn[d5#.Ј6_<+Ww;zJ8^c P]Q(⩆G Z)^)J"MgrxK(u|n_&vLu\4=tz4I'[Ѱ̓ſb,O,' wO49jGs ?cqt.Я> *P XFndJ_vep iõ<{mMNAloۯFJ"^sy0!Z_=:Y5: ~}f~pt$ɓM)6a13 M`fh +dP67\SR]@}?\SLQ37w :sf솣X s`'b/rD^-)FCmQ^nKcjJ҉Koki>w`1\-5%B̴Mڜ30F 1/yR. UDH'\܂%UDm;,Ƥ:r7l78|,u;E,;m+>LwPIn@-A^ yC%5}&=a{wn ?j`gLh!^nt|1kd>}HĄYՕ8𬬊c Sy}rdHq(Vh.yw:M2K%CE&|%vuŚ J&Kߎ6dChaY}5ٛ2(}~9KPmlX܋B'R$fFᘣ`ul VOºŚxAvաZڸ13p4N@%%3 8; J*{{NA;W/Ը.l٬푯0$>k0.S"/t , ,+XhjiY UŚW΄?R.Ŝ COGTp3;C)\ /S{연/V^=k)-buS~Mƫ@Pgb|yIX2uV{ejV8s~G=$l=-)&a(ҾoMYPY˵f]j>MǮOo!*r 5+sn N7 oQ*mɏ}?Bq}4T?/V0 1Mg -8ueNB[~ICFܔiadQe2a3l]kM bQB15 zhVec V&4d|~yT :jPi vaV|mCۉ^C:,ɒô .'u`s`+JB(ߤ_f8M~y,S3f\^]tW4^-96vJh.tuDn|В$Z4aPk@YӀڨa3}4J)zaR 'h"Pѧ "lHHҾq4 l 0G^ B1mz4p?PFAS\@j_8hi[/ c᪞əc~Is?g>{ipg n22hAVGfƜ9f7EtguWc !o* 廴GT+Iu rfh ʽ̎ShBDx@'!4@>ɌjflY[%Dg/y+w^(3vcf:HUi`%rIHпΌ?׈A|#X̾rp4BY7o'&GQܪ~:|cW^k͈V?VtE]|˸)S8A}C8/-U.=~'5)f 7}p&1rF֢] h)Xzp^&cU) %h`$? ~^J4NAqw`{uв:| t_S)r($ 8@TMƺNu+m0!~5H;|1׭pY b(:κRb*TsrT_|ldnF~Fa6bwC} k,9YV`(@jWy@ xJb1_y?rmBbQ3E:&$I<"Ӷ3D#e -)=z+)!0'D<1Tq 9ZZ9 [u˴m|7byKeJ27#ȡǙcdo;oGRoΫbq7G #Id6;Hi!7(ofA 2Uvl$ʍgb۪Ai4cƽ,E!/plV6F(޵d`Q,9w+7=6'~]zkR "|EH{1Ue)rf+#dN!@OdC7G ˕V8,]Hr\\a2"ƉyݙsQY";Վ(5HCѝ? Y_\s9$!(: ] #}oߌvv-KϢrĢ-.jUB,kfQ8۝ꍹNTfV-WQisRw;P]wT5x/3H zs)<՗x+X\9!aRGֆTb;$TiFDW*djGrEяm΋%]4,٢44C7z CBD @t;qVxilĪBF~1T)~$QvEBW\q_az!'^W-tX!W, iɳq 3U]+V=m;LȔ InJ?KHeG~_k$컓6TV=_hV 1G7B|^5~),T\,"*tZ!oDb0&I*O?r 9O[kCQ/!&qBMp]m0]qX$TK>,fgT T,^1 +q FEQZZak +({%#D59tw|elg܍JʖHv؃"Nt&.?$G򹾬4ûd ▩)<:{Eȕ0iac2a@CZdI:̭qP"<^h;( Gʦl0lfh4D}}.p1Rgu&pUkH&Md tH~U.^n&S0) =Tpujw..L;;enUTEP ĵo2 ׈lG-#;7oܖ%;$W aimb.XlںjH& YMK&A~ߋ4+jKSG2r YE*rT-6`K}eoz 9=!Yt0x)tTGsu SBl2(%ԫ\m)[Ξ3Wv\økUֱK DV Fd8COLk~Uh^ HPl#WƑ |-H҅`Jф͆Xn@pT <~f+$Ҁ2EUv6wK웯jTH(ןI}*z,ix)33ѕY45Y8tYi@$tqm~weemG;颵ݽgC6\N N|B+9@ o;)H4ý.Ģh8@ ӎa^7x€w|aT pxOc8R y)ɬBzQ;fk.D=,Z"tˈ?Z2՘+jc"nzҰGh|U[0^8vdfӭKŌ%_iE%ը>H?EqL q^Fzfid ۅ+S&2$BB 7?(DrɲHrww-۾!vAVxr.CMYKB83#3$hg}j/)> G<`T}>wgZaI㨝:ēQS5-kax9tFر]1nΊ&72KQxΖEYjH7='ºN=,n c)!oMi/l\RHvCy5#AG(WMIM BpiJ88tLzzSeB Ne5 q@Ԉ3 -.,[ GZ%vXw(Ron'glffٿ ݲ;f?uH}'Zg+2L̕%P7 JGqAR4mj7. j *WYa#,o8+;7 WPxU;;?W8%$fio6vc=H7Uz={KC;4-6'ү?*t7.FQu@;W:c6F}C*Y.Gpt27]xV"+4Q9ih%t*%9T\ kd 3w(,+7lIR1\[J`1+K-?," TF|Lí/Nc̠o̞z5-lxt~~X\g||Q8Ua ^,xy蝉D=@T4@BAҢ\!s}ۑ>b8 ox%Xy~~UjNr]|4n:É#O "}W쀓=g+myR jx,my` ӿWK,Q4NŎ̍ylQCt7Yr&FW@bFݱbR}~`-FInJ2%&Ti!eo XX{GR1+Ko!?z"EK\>@MdeT:kL Sp(EkC?*𗩚2k 'yNlƞab *E46-QH^\zJWc2e7mb3/>yd/},,D q+E}Os[a:TH:>OrPH'ICh,K2׋;6ʥGʘ6$3 d'CN8yp%-U u>b c 3v?oУ%n̂r)-\ U|&2@"rBfˋ'jjNtӳԐ2vO# o Yo4@PwHA@ʕ9L<;=zɃ)OQR`!S CL:06Fyi^`8Ii3Gr5&R+"&ԉ푂S xf$N+Ip4!*U*s lϯysd_lM] Lظ' ]r Z g:j7r'.yyzfT~aa{+6iVk5 -L9N^Y^η1m5ʪ4";SIS+p,9nN} S"JM2MdFX_V)[H;)kAI {C/:mVx\k!YK1,L5E~]]0UjޙMQx=2fRĝeKmY19!\AmH%Iːt@O:xaL0c6mI"35MNÒP;} [/:Üx e4UCyiδ'^'Qzv|gI"lč34%{@Hu*M wB^9%h.o4^k9]H$ݣCWK2Drfk3pG,Υx"TB<ߙg+cV%;|%>#J9sSL0WU;dk4Z"\STEbdz:sLg*դ:\i9"HdRjR2 +<ί 'Z/b6kqnBΥ 8olfa^m o(FYqv{(*Dg1[mGmYԍ *~o %1֪leK m hu4owi,BdS#by['FfWGДbg .fӻfw+ JaK!;GxRgðʅecviKe>db헉buFJrT7D[}aV41`[Z~ى, "Xqb S}2O3e"4_ق|Y2ˆ&$&6p#[]v,iy' %-~1 -(dMqK 4Q;PӐ^2)oA :ۻ).j"?J)YsS^/1t5g}⛅RͺvTޣȹ0B fS؞sԬ > *JF2vc{ޒӯ_(^>JZDmŠKj4s^|1f9GuиL(Ay_y/֍hrˊJ 5+g`WpX(?-'D~Bە^auu܃76XS&x52K*!5/J)3^yf~ڧ]l}tϊG(iA:Bs 1ت#XwrVw׌ jl_(,xydGӺA%?mꉑYE>q`"cʓ2U]{KEI!8vLd4\¨$t+͕ka  rmQ] 6/TC qqڐ-{6m%Z  uh&kqJ_<>?[&/|%y;;mCn[{ rJ麏xX_}/Z@Cqzu[G=- _9 ,˱7`k ^QT8xf_2@qEJ^dÕ8Ba @tͫ}T\*(>Z]fbC&Ss˔Me40'xcvM:tDК+sS.\|i Go'l)(mrFs\IS˂k#?}~UԊ@v!DJaOYvrB;M dmLPnŌR1.2NuD~6}!bRWOҙ *I^2KgS )Q?mT#k~v$hC5fJ3![;deLԵ;KZl_ _|!&K@Z& ՟*<=(0ވ2ȝV 偍j~*Cr LD|ȕG j:) d>2h$I>`;㭠W +ޞ!px/dRʪN&6oۦ T\;|z FózU|uzgu%4)Pt|7Rh'qd&fS:ŷ%=ct6G ҢB'dC_;՗A:Y<c(R-L^w@[; vKš+qŒkK !^珪!RfZ9z@-wϱJɸxiEӊ|vKQ&z|cbq+Ql}VQl%tNNjv6&ļIp3)r+.S0)OshkY,*97,EpeY6a+ҼlP6lז:n\ݓ J~"{,Nh4k]e cJMDoD9m'BJ1ґi:#paRh&ףdy$5^y11|[_`AJ]&;xμmz|:^q\fJa.9#66JxZ[bͲi3]32>)w=sޏBCй<=5I5!fwYxGe4,+70А@rTv#M0s6xGZ&ʬbs@Ȥ5 zقv C<#4"fK?Z-甀T3TO@ \ Mr/Z] ejݾg[C?SfT-M.ъܩJ 9ar횫h9ƭ 7JpRoo7wڽOԣlWiqAE&G"g p*V@߯(b hʿoAڧ(GB~ HxY\(cw8E|kv.z0>/]l6n{c@cӃѬ'Y?.,>lݶԿx*X!!w<8<ɿ`K$iͼTg6n%e:,yF е]/,\nHf'0㼥%꜇.9g¾vbRtt;POOWDȿ>9cX=.< ..&aZb;XD' ;ɋX)*ƔL$_wYŵr^޳էBq,o5m IKnbugPUkWXM[v|SA?tcaY9?L2TcBd0d@gΔ)QosG=w:OZ7-4fx\^A2 ;WcQ]dl-\V@)Km,e5he3-}ڳF'A2dD[Fv]l˭> xL:&ߝ2b?3cGN;×JTM7M,_bF>u8W~r3F#;-R iԀ]Bs $0"Y a$zf0[Ie^ءlC_58"Ȭ^Qq@BkyJ9Rz#_4鿥[~ ?feBIX~m_;t%DBP^8OOf_LjNzÓ ujvw"ta>(-5!B Z96sOe\ ў· 1ӡ]s˿d /Ɔ_nz05"sTdnTF"uNbɒ"AYQowvIDz0!M2qĔ)^R orԘ)ٚF399_ R> U{d$+HH!yߪx3XX\>.D!&$Lmo[54aCϥp<`YR]X=y;95g|C*T,7 `# v p# Q~`kg(aP:,xYzZH)S`G袖@2a3xiqF G/ODYI7G%ЇM{"CSazo[K&LfH<(\Oz,Ow(;RA01$َuf΢蛀6;2yb mJ7qv&pê$pYֽF듙3+o;Ъ ;!b\4LzǔQ߬-/UA9ԆKC?rTm8@"~l>^ <#ӹՕ`xہۢkΓ>H J;c?x'psVlI4ShD3~F-bע,܇-dxV]L1Tk@πήl NlARBQ_{+wx7SPߵfԘ<'zV8ɶC;rS_<9/!svL֔I0B$D#(qI5ER= GO1V fa+ow4g>h(YgTa gVh?_vKnIWDw&ޥI=v'ՇأPCG}(?5LF\P%XQi\=ZDg}k E?U;颁n7&b ?dIEQlв/8[Of>+P&}ZWsoy3)gw5*h /^ka+\q\E]zAOiǙM$ =Qڄ"H@N",c$NߡG\/ƴ(82 *4FaԿ)e6ìBPsEKEXQ5 b7:!  vi%w[_~'E?D*C>aϲ3^fFdAC`5t\a2BPkFbXa5%NVJD_GVcO2s*282 .f3٬*0 K rHTc=])׺W@}YLpX&Z޿iS{c?ұ~UESPb#P{"`efLK;A6 KԎdqƸ2)AW&'*ZiVnvemŭ"f(P膿~yKȫ$_a4+fk.`Dd/EKfr_N2Ph,~[\j+֕˦lU޻TL>@5]ABЏ`y0hlNvcrq֛Ӷ,Ou\&p"[YWc'G&QG7WҚSc:&nZ>7U︢Wj9#{o_Tzp`x7d8Ɠ)]a8}x\ ٌ",DveÂJ;GgRC(\cIpCvT[tYWÃ&Fz&9]67V KЍ:Qll}3A6H8<œAf f~;ہ9P t p)|lR"dUT>5+Fpϧ,X\yLFQrVw 犕j:4˔?4g{C%{XLEs-28H \U[P]dib;9x&@8 Z(rZgr7Fi;yq7 {.J7v_5peS쀎[~Fr+yk. k.KIJO'ʂ+$jw Q(2FYHgP:W}!;y?h ,끶)U, DXֿ[ hP+7(\XК~s.SOp[C/QR ~=,mz,Q26/| vsm%9.R+MNn ]@Js=?}G˳[/3])`|[] <lH:=VŁ=8X/kUQЁ#* ٴ O9K8оںPQ3]<$&ko.&/ە%(x:*nz85OحvT ݃4T`ZrMषoPBe3H#Fb @Cz`[Juw^mғi5̉ߟdUzp `TQ5Rn`nCk57U'#͍1#*KjAH*zM=LY?Tf79&St(0ꬊ98=M{|m/2q)peume DWњ)qND&c6|Y9?k+2>0b$V-\~l޽6aeS9w;b^|*hR(І }ծ7f%yxÉ C-A;$&kڨm.'pvj#wBf~Eѥ& ez?LtGWͥ\ɚ&&arZ*eԧY9_n8p*Ӭ&!HYCT?GTq Hn]5,J03(/:@$ae(ya7\ΜU֝zu$N}Dq0V{)"BSHgJsl$k@,Kzz9s FS϶JH 32@35ߚ mH@͗` ']mF@G徒ge5V?@:nU 4p̈rm$|aV@ r$wl5 }Qlfg*3YۅV8SMe̬aFo0c/~BDHmNqgޘ} bި3ps(4=Y!M,s"aS &| bQÚ_AoQ0 S&ve(v\rGq7Br4]XwVf5zOiwo6I!7vǻerVx>U(<銁$5ӇC ]b ))U%(rEM&\/rh$"L̅ ?_$HgMa.[BEW= AnHzV8딡)lXCx6{Ӗʝ|캆0}¨ה%w OQ1xie<Σ@_p¾{!hoMC`uezAn^Ram,ɸ(o;kw.,/hd@,g*Y|RF QPRMB%fS_T:vS|#T٤A ꩔+̐ 58 sǸ,AeeB厃d/w.A_$$y<pB jSG~]|# q$y 59w"8<$ uvQ!"wɶ[5HwT759e1VI+t^Th"4xaIXڀ&u \ c+n#^J곟Jw {~󣋛ض%`}K9y)Kasj2&!"*2w~S8Kyo bD3czE|y$WacjՒ HqU3}DM 4 ^'D]Bż+eN; v _dAt\z㡉.ϙsv1{i>-V r!Ѵn%IZ,iH;Uj4眾˃L]mId`Ep\7%5^`6K T5;6lF^:8jV 3M7X^.T{]PSIwB/\᭩@* JE)sQHrfm ͌/a`92!ݠ_>`f]Ǔ2Su^uM}R| 2;76*YW7hKn?ѹ#Cvǎzł=8^-VaYи69Ă@y|XFs959Z*4 zdrMmcOr\' }7*9Hi6“x$Ϩ; f_eSG0ֿL$a/>V ҝ- .PtK'^7 Fup?,_ġEZb01M(v֜bEM{d|W&=5^0npF (&FV''?KnJPwmԗhu㋷\Aw' ]J4<>0"GϢv;+ h] %G2ix,t!~˶uU0057%CNB %x¹A q:l"Px(673:϶<-/0Oi'EއX1aDj;ӛ"ݎ8{<8U,Rdt H7/t\dEhYӡ曚2ü䉣R7#%)QiZ@oK?h螹jrM>8lyCV9$U)2]}}L(1X4]={_zTq"t r{bU Mb.ߺh}Kt!sv `+Gh 'Po[ {XTXIpj1\ ڳ`. lQIM33?(俈ёfl ]t; C7N[l;pumѶ'ݖI_ GT+S-cF#K<PιJ~"J0 /50V$Y˯ٲDzʲi\eZ#wdJSplZ>9R%I+ob\iR#I2:$N%K|m@ّw{13Jvkx0-I!2IG+c]* G-f5X]0"h}n`VLٛNLmA"6SU5[8'9|JR3c@9CY}VDQv4)o@`ĉuaQu uӾ_ Ո/dfyWb aӥgHvf8{C A@"AJX2!$[ TiBe1b*kͭ|kt3XZMNGq]Hr{&aMΥㆧZȌQ&k}HZZs ڮ9"l8$#9[iހۋd}8ZE.LZif{^b{#ZC94bLv?\ ԂYY2IZiX0\IA/D2k,ϳ `oyF2#rƨ #Q^CxA`<%e*Zuڣ7f6 {\F)MuKm e=VB904pa>_*8(rP(o ÷t#<]#q)ibzo)2F vĩp叾FiAR#uA0NDbؓڳ{y4gC)t Ե%񧚉`Fwb[jOtJ[ hKƮm15ՏH1C_{rb?i%F%2?svpwXDHQghhjs`.N?EӨT̡p VS>ǒ5' 7VHlcTG@R,PG׍YuSAhE܌[uʠN\S}xԉ0.P!} 3q3 _2#y~RE8Ň{|5K%]jRKy%E. 8|6+mKDd[/uS>4Qy+j/@; |r/YH[RFjoMiԲm.q"" ⿯;b({lR̸b ̽&xkh7('[?_-0rӷ%U(gΘࠄu/W퓷v?- Z$iJ#5NgrYjI̘Zt;qR)Ctp5b0 ޣ?Sg@LIW`1oعSW,,Ky:; -gkq7{`zT3,V- ! 0ץʅ㪦mp`P+[q\mSz)ّWU[]Y$Į BײN# ϸ@LȈ~Mؼ,fg\cY |cYKP;2 .{X0Դ8<6Jv\ȡI *l .v}po7>mF]zn֒2Ϲr'-/F8{Ki ]Ad:[4TL8Oi{ +i">nPx ,Hr/p9y#MC@/>q۰܋s q;O;j$B#l`[ p'}yhIlRV%Y;`&Q#ީ g6O(%SEDՑl]9:w9oGNjf"Dtawr',2ZUh{o:ctk;~rdmc fq@޶I;+ogQH#WPX0~QOh!&P.vC>C_xQIZo,a4_vX S_)l#cSOij@ rIQ䧋C`#@RNuI+ƞtw@b$6i|Mh1G~1krgb.n 'd͢N>\ӲQzgK,#Acs0}H$V:BX8+pE%=@b{XG< zOh0?D5 Ò$dYc !u*YHȺ!_2l9 B]wqO%@qC/"Bqy*'Hnx;8.[QeM`@C7CAJPGŠ(H}h.45iSHY3̝{R)"^g K\\l]>/Ue$9>??3DK]<*}x\M&m=bߺ;ыrx5FS gR+^3kT-my_A :w_QHF ts_8DhHF||۟ՙBh]{8"*Vq%lQ2ojI7F=ptK|ex&s`z),>Qsm6 Pċ=k/}՜ Pww6:'ZB/Ɂ}}}:dج@-l~Ỷ£.̈́%C-t9pgs5?}]TJoຠYak 6s4uk4}2=q"YC8I)#s~3t&)NNmlQ$Ɨg#ECǵgv K h >wt`eN ;ai^$ZCh޽IҌ'|D7 A;p/Є~UV}',삼ռ֦vCa MlىH)5tux-:^ܛqM+O~>CN.$ugJfx~< ' ^j(܄88g *+(v{{t`7hw1wSyyfr=aQf"3ݢ ?qn,58#kUH#J0wř/ +{*iellx2 D ` G49vϱ,NKRDٝ͞%|KMKqX<5omI9&KK7fV) u |1jP^v_+2t*JCF#ohaS>H )6dGX3!"/GH$k:ͷLpS0lOnkm'OOT,'@!pPTRu%ZK]@},.ܓӣ%:/{0i+*a|uݭQW=p1;2>d5۬.Br2PO>lB1±6Dӝ U٩ӘV7EHw|GW <ؿ/{r]`HrsN`Qo/wOKP'ʀGMb$v6B&H[ zhWw1c1rЌS Ϫk_VrfN1v<@Hv7\e=2r&d?Qmfes7ZO͎-{S* ~byYswqfҡ6+/bW7)玶|>."r;,J4h8A^OM[ߍ$x_<Η hx7>|qftT1xځHMzIvI| &V+S뮕 K.þϕ# 0Q6oaucP3KCH4AgZř9Fc<:!=,p.@yv hEiN>Zl$wmsMŽ3c"~a!V0BOK>l*=u+R_  h9A括1NXz^k$FLK 8VHs)]_\!Kσd:ʼ0K 0|uޙ+YcL4oU a Pzީ[qc(V+d[NvU csA/E5}+kٮpì݃ӾdB~a?СMy^=< YJZm'F@(MY5q5J(brHQY;zB"r!l^oH*9\˒!(jI2( eru'M-{ =l$&u6]Qms{Fwц͗,;|ך"Q X+s9̅ֈ|\!lSb?[$vk$ò|C"~ XF< Oe C{m%ZnWhex +p5V ך-( NRt*n^C #S#4I`{ PC4 {lo@WM$WJnܹI}iE &{j(<NCŷԠL^_Dׂ<+2h2A^J90h-7BX=eJ!d 3nOC5fSu<)ɰ0mOsFr^ںj8hOB_axBX\жє!><5=TN7@@\LKa(4H#9 Q}] g!cZU/gc;2 'FqhFWF[(wb(,'۷WB=ȫ UWޙe]i 1vͺ ]x>s9mUN )%썿&(O*D0g$]qocYSJ!5f{j¤թ f3N yCPCh&4tz"߾s DwxGy~0wG8fNE]R O}Pݬ`?o171AA89/W(M6XH6>`L[ Yi>Dwv)x%~af p} ۸؜tcl99c}LJpD;0(;-r5\:ؔFi|S™{ huߝI2s. ?PHXk kHZce$;D7C/Hz=̠5q1Ԃ9B29Z)G]![*VAdҿ\HLCi8A.8Q^~ލ-Cp`rJeZdƑlW{/C fT[1؃cE] Fr? ?X-AIM~[G3Pou z3q!\ViM&HcV\)TDMiKk6MIǜb0.7vE~ u7l7N\HYYGīMkdKhq7Qڪ_([Zu6xVԥ!'C#$r,ۇ \?:4NH vfZ(?>lQf hR Ó27[ܪ)AT`oQ$J"9j1)\掶$4-' :T {v5 ;E&n̢Io3:旟Õ$2ɏϑYMSGxa%atoU)O:-/ew&_'›fPq0CS8B;tЦ|>EG{î˥91Aή9޳O5 Vqai&& +S4٘Cc9 %K`v4`&%MVs-+*).WD3&]aTF} m=)|0i\W|y쩙.q%$_?5wْ}mM+u ڊXZPb,O" H=BQBLnlNɸ0Kh.2ӹK#aW0[Tk{ e(-'$xj-(ݵ{_ʆghڃcH/ҟ6K8R_w`-w!BȮbpcR1H,=i;bAw'3^Q@5Ǭ#`zX*+ksTp/maFp8܍X]ȅ] }#EJچfB xcO{q9֠h8ƁȦO/ 6zSFCN.ky❠`2x&3G!@0Z1WCX=]vId_W6Z3ifF,l0^iU.?pSL,2Es^)i;d$SKj )v4 vY]`2vA~B1sѓ4mk!YM_}٤P# {Næl[&qg#~q(2ǜ,Չ# iѦzƺ{kO "Jel~4pÊ)]}PGT"EF ȼ8gC7!aP B"${F &H+0 !l%}ӶXB=( o;tdE93Gt3ί F$z4Ymje+rd)7墨D*!81cs`A2>Z[b=K;i^)GX%gƍB ЛJg:G:g䑂 #fl*)Bcf[uHѹgE\K$VI1jUJǖVt -: ) k|)'ut_*Xzk>[cۙAиXxyFFūx*y eteNa:D}3|} @VXsvm@kІ5iʏxeמ";ǯI?`.',t>o+fpmS\ HCLfrDJ:b !Ɲl%9ć姘PFSJpÔ QIs/-8 yy([NhL{ll&|]Wn,'|w> VA)FbpD(1KD:fQ3{շ%dz_5#YFLSϠBq93 ?euܚ,g.o >䰛hJPFGeQWѴ͏0T 5¤ˊ 1Y̨ƾIIֽ@,/1t\Mp:*to v. ?(uҼTIߗQDTÓ8i;dv)_)3EQW)lx >`Tvssu`vOD`pSv 69#a)r^gHJ5D5:{ }yLq9K2;4P*_{bd"%qf(ߏ$٫>pΝQEu6EgMhm*:#4 b[iVMzXm5쵌9"9*kl%߹SJ & /%ž+1SWoAt*$Dт WtM)`q] MPR,1Ecϯ^ebhY~Mz)x/btd8唯.Uk{'٧tvvH>us|(wv*~lin5l`&fH5@<ĸr4cQʐ `{,!calڥF*|G5Q1uj֓ŒK/8"2jܭȰ"p+lS-A3XƳ&>ĸYմ$ l127!r{0 T܄;I\٤#V7T;iM ћlx(sFBO C b 1Qȷ@LzJiTra-A8oslVw57-u7SSD'A@O,~鏢)5NJ7?CX^)gpO2bǴVQu^]3F1ߠC?AEIqOV;VЧ j[u} gQSShPP)pۇ#pXS{^ $#"15Zgr?LduM 8jP͘K2ݩvLhw2ͬh M;SqJ1U]- >m[W͠[=.xQ 5's?gXr"&) 2)NDE c`7P ,9Ͽﶤ$ԕLINB(*.Sx8Mgg6{!6e 7ak!N[qƶ Uu :tE|o(܄mh‡j\~HmjI|NEyF)‹0w壳 i9.%>Zp]SƩHw䨒hx眚0Bo hFAC½ţ)#Э%:a?ɩˤ]ڧbҨʚc"r'& Fkq>'c+ٚul?X! ?g&^^W V5#3b,{i@p rq蜧?ϬOeTۚ?RTy5:'6la5l eGxz+ үc?fB"_OkR/6%ܣe/2w7<%r?!M_؂/0 x%qv S>tY-w ~]<0c7>h^Zr^E1>4ǀ/0┦\I[cެ?X0ErCvwN鏀Lǜ\V: szvs3hi Tt _nҢT_t>:XZHlJ{7bwNA*B_{F\[%{9.+M܆eEŽS 9B`@, jf+ $}D⵪T!~`j- ex-D*|}-"'mx"?$2u,):b Km2Gw $j| Iߐ"+6O+۝>llEՠDwq _ t;mgC3qT=|C,;@JŴAu&Q](x5#孿L 6u2Zo%o^$)#چ;yi*f u` :^ZF΂((<g̥s5`I}b` KVI8rO4:a!\nkw}vG{lb!+7g/@5i 2>SǏ$*ٌ2<WT` `zN%-suF6Z ;ܜy5V-e78HWݗFx<:;WUc|aNWirvLmcx:.?;?M-uGϕMF+IIn Pl6G"H ubgړGѭo~'i̦KI&=[s 3ODgmLl/WعlnLw&R]AEe\D]EA4Y>㗚hnV@*ى(cv—Ss8fdc/%[LeSq)\<ǰ |Addl^GuFbkT\hSjpS*Mg, rWIe,|cG!VG[Oz,л!(X da {X͝ * ͮ%(xŎ'҄j>T[3.5LxyidpPStnAn| >Cw0^;q!e~_K"r*yg ,+e=m0wd"Ͼ\_6]4dh䪊,R]a it{χp_٦)i{։WG9@ 8*.F-Ѭ7) P`ddTfS#+ Y+=ȾfDV+Ewޅ;{pZiw Xk*8Aj07Z r't*Tny+K}!ȿ!>}2 }x )e]o G{d``gԕ/h( @m= tg;KfJDki{;,<8&,ՔOi3&tl+ jvWg}CyV-[XvZ% 4Otߧ2uWgE(Ͻ5twEj} )M>4z lJ7t73s欰+gS4"-u ŷx-aULJxkBZ Q]3=8\LW+7HCV޲#`:(3_8Ji"׺}7拙*c$LiiW$S ÿRovۤx@Dh`JđKQ;q*9Z6.]YFQ/BSA+2o8JY.m@jMK}c {I)@a:=k"[_o&J8%'z6]WeO0EcpE0y 뜢 ,|ZNzIC,zn%IԣSvG8䤖A=#͌0 ۤbυP]^b7xBY.DQr5*(_4So ˟DL,z_PB7 QoPRۺ&c QeFJ:6Bfct12 zMuH996đ Ts تwfzZ#5]CVp"Q$؏d|H6?^u8$RL!ið'&)Σ;k" ,f4r ? (w'o>&vCy~pp)FՃ!F޹go CPk7FMchRcoKS !`Frސ)Y*q23;2$@e-42(0fcK~+_Ɯ Pv=S[L`"X1ICejqomՎ\Z"E& AyyB-Cpj@_@"Jeb~zlf EYZ\'HIx-#d"2EX $vh .4Ђ;]s?U#^9EhBG{ G4UjQC't=Z{QvzON:|pi)rQ7x_nF;eR:..JN0? Uy&+](8qF7 ~|'ZYCUAͿ-K0I)4Z C-n]xxxR[* VSQ 3su?'N %1;H_b͌"0Z.T8;S~iv͚sOUzi3au~D]Vlui=Lw@G-}pVTstU Zl\~[{D6Н!ը-ݛr `2_V,k 1ыNV8)!W+]~$F ߐyOk]컽r|dcE S.??zm+ 㴟!Ƞҙ$\갯]\َj=Z=OBuܾ#Բv{DNBZqJ7;1FXLt[H:w}O`I$^,E];kʛ~r:spAzʭ;?hY_DN.h}EyEo A7<M_ v1j=U!zzւ9`J*G󮞽n=}V/*hL(0Pxbf[i|t0(nRŠLe%?L)m55| J/yi9d> 0PuzWDX G6C*%C褍6օ4<.Z!b؍- 4qӺovߪkbƿwpxe޷ÁEW\Cq)#'"]9}J罐kДթvzh#FS3D+hPr+ KɤTǶ}#fidBu1Qߞ_"pA;K4H|{`lhف[ץ niOQWn օ\@KBsrڟjN[Vd F1 ʂL1>?vty?X̮ 4K?*a8Y OD=L+Vd<&K# 7&UIűjF0n4!_sEaҶzM(Z`0?]uc]ʕMp@~;=a9&cq{y{'#YD"!λ+4\R{Qox MSIh y2/~ 8\ gLR#{z}kLNROĜ VCxN@L5PV^mRq ,O w UʙH:'ȃ/y#M,0%KTF%Zơ(: o\ eK,kɪ2%I l]ؐ&fnWyUMnL:YR`baAU~Llt9x),Ʉ{Q{(ụ$KFvFJSrbiiՠ&p(˴4fBiOEiZviOeok ~HlM8WC>驜QJZ hYXx_FՎ{B+$MGN|l6(ƏbG{ŬÉ2;G Y'8jd?l7᫣YXٸaA =Z.NAz)eLq{dlP>'ML&gjrV #TaMՔ]GU +I,Kooupƾ)xZZܟ ʕac@뢧Z>XҐ^>:ȇ֌kA. E+rAbG$*O m^Jw^.)2|w;6Wd( ZKP<2sY:ۭ~SaіR̲%nVZefJ_ Ӎd[:s?sT=C6:R:fHd\{R ne.iU~騜}'2q#o.T\*/K{ZG;ô El7޽ (\l)HIb>MXNc  mҹ>2*ƨJ Ц`y9 -P|o-}cqURbk<E?N0jڋE$M-UhRNO>!I md)h)G;s036hVexN4٣u:(?r}5/|y žZ KzXEitsuyܒyX~cҷAג/&Vr㐓uβrmm+Z2 J}$"I<|tgG 9kyӜi, ^EqY6yܶWk5jOw|x\ V !ڑ` &nW )of|5 n\";mWI$ M۸L&?P[U<‘q[E@#e3^6B LЯu[?[2KkdUHxWK}lqtf1c1otCzs ]fWp,D돫gJDyZmIePb~Gw?/0{?>02$#!6\%R+eqS $g ?=?0dRV1R䮪a+CmD}q*dKQ8J3bWwDRsG%2yr]}') G8L#Wf> ۟5v.{(_]{~fL&n sL~hkrte4Sy5Iq y?.y.WfP+P"ɴ,Ƞ,g^iGeNc%_v%Wm-N\đ)p?Sc}A>Dc )IfMtu íDoy8 Pl YpZXnȣogxTX4?1*|g73IFDHM]dU7{'pV޿HgN@VjMtnOHӣ sb;TIy0̅$2;cDc{E+1%6IJk>G)B*W)V;L6.g~D`5SlNUr4g JѾM9W2}s1/嬚2%'f>XE#%ouiGeANLrEk=LQVqӫ]KK)Uyٴ Eӷ P {x-@]M ,Y>,/R :v,2e~Qn:P@?9PM4\3tU/xn-n-38sQ"=CR&vfǁ0Z$( BuMXD ~rgZ1+,kÑx1u@-li׽-<&FxS`uTjY(cO,„h*s|iEp֧iJ6D2@ua`vB~W%9uzgMEt`טDH75߀G!-Qm,rqRz05C75l! XQ؏I'S_A^HN{1o$ 6`A;O G~u}b.\Yf{ L*cT^=>,\/Mݹ~ p5vvYf/B(lQT'8a.l KDVA aUZC=Re"Z9#:ui3Y]ԩ\ԑL;i@ o(Ф=獁"\* UG*>=#ZVWAF FnK\4]Cag,a e{kTyYB9ȣV@J>=~fAY˴uxT9`Ě7avVI}ģׄ{3)f2l)\7/%Jb)/kՇJ0m~P!+8]!>%[lOEaAK`K4R+6Ž@䌁k.-LoʁJo²FC!W=džct("Q`ngXUu8t/Mh'k;-L"cA]=%u#(#F\`L <EÄŒ"Yڟ",2anfV&J5iTG=Ї9߃^kNt@{Nܿo0B5rk'_A|lV.w3۩b|3$G(тwOkƃp9hoYjN* GiC ?5dG̩p+R/xW.wvOdLrt}&~DZ42 U(;f6qpEK/#{;9yWl?_ GQ0Q&lŕJ*Iͤn+7p稵\#Y.+9&ddb4x]]ퟂdzHk".wFg;/.ZȤaV̆= ݽ%80eR>ܩWg.[ӝ7h6*vDN~7_ؓH(v3-XLO ݍ6d<՛)u/PVQwgOǀS*{(ᬎg=z#ֶvs ,V)aՌi?,)5y^z_E據l8v](P/5fpV# Wk7FI{r;Hԟ1 pl~b HV&KH>PTW ~x3h>#1U+=UHB`j=mmsH t"m:ӎ|FJ, #'(̀a6럢 HݭMuқh>JftXș\i ,.\;̇x$bU&m^!rA u\V_;hsں<:W=ZroqhA؃7/Nq*'M#Vw@r憔.vn8!?+k|P&"\("W^d tӍ!cw31!:^|?)2\oEq{KV5Ɩm[r=H{ sb_4FȎ|_@,ɶS>ke&QLQD5!2g8JoXFclx=4p'ٿoҳgX}N~ i:ac}JjB(Bt%Q#*0"7=L~eѶ[ɣ⸞SU- fK%%) ͽH%6JmӃwH5kbGK<Üj}?LZ.Ts P8duiC]5(~Km=!+t5!箢N.?kx~ow~&wr[X*z9ewJ9.C o>/6iw"Ut18 ^/ʑ UuIE]W5MTeR/uIjSͱDD)\(qE&ՓonX@KۺI 4yZ r#U5O" R/%߇åYDv ̕1$!BiT~xb BDeh=_bCpWPtkVxNiu=4ApC#N|0LT/!u)|^hƤ\>йY9hfR\dbl:Z~QTdjb!Ytxj v*IcYJ8˝>~̓m|$?pى1#Y xkaa.8s-G]A=7>;zEיk7O~ǕvL2փr8- { Rl-La% urxO|]D *%,[)aF NN*LANG,FY4ivh͹umkH*QF3Nݯp/ѠE^mTy)Nubc3ED坶#cTZ/v($(^51zh/ ԎT9(];+zoVY:o%5[EBl+ڲge,dh# *DXmhMZ7 T*,Q'}7J65{,;Wt'/(Aꐚ4B!&mld6nFsNk/ӼU&Wt]gC?Kbt G,`Ӗf$]Jĥ#_8c6&,x?JjٞꗚtF5`ngoU[dICslZ( 1;ɐ= ;G]m:lmW-Hɹd ^0lg{yF}Ƚ-  (ǥ@{TTS9a KQA}LiZ zEfvW=AYV׾5RrH;!v>牎&5,XKN_{ nGfȆIJQ) aR=x5?tW *x*tceVd 8>d4~"iിl,0"$4ᤃ2ArmD{\1Xwe'eoamCQ|'SCť''=ĵ`wUddeMTp JE2XHN_#KȗB"^+"*O#IS& d@]\SMیxs^FcN@ou-6ܞ_j__;={,yEX6<=NɑsTvˈj tO3w(J3m' 47dsT7u1Ǎ0@+x ]eMEPz$;V8 Io9RbMpNӼ\SAW=q?6`cjb._W?@sMzGEP!ROګ8#?Ĝ`!)\ȉ(:?}Yg%i>2l`Nz0%3[a_t_Vȇv$+ߌ*J}܌k-6(=>}.+ᬹX71jkڕ2ȽKp+zX= !a r¼5kA]9pz %6(Sz^Y+bɪ)g%OLU<Y{cj;өt_Dna}9`&{[tK#5oM1p^b&Z{.> qs_ ~VS+!DDVDo8')r GkF;90qN*%#8LjZ_, 'j, K s2X]0ːu m3`HšyR5ZPqo)N졕P_z85э# %RdP`jeZBőt>i,LZۗ=3W`Wd[1uI#.CgW5I̩k)G# dDz<ː9bG{#j !_aZ翤ٞKd*TExYvNMݽYlAA]ݬ}?WzLa`Z9q5Y)Ѐ *@]DD7j O@EfVNQqaBNm旙*5L Vqj=paEbtj#yh6̋3B@t3nQ@8:G5Jx a֙k1ӯvv\ a6={m[ q8Nō#{RD+ޟیc" ¦5Yia̝JQET@DY>ke7c^9yo=ƂB#"'8FعOݧ[5Upud$;sC2[5v0 *?ܐ)(  4W^+# m>$rA 8p ݓc~(5xTo^ ʙRe{- D. 9Ӆ2qYtl}!ДBm}hH˛{b38-臷*P<9,i?%!x?~e{` %H~0Y)TX).jtvTyض=2*7),Ұtn78 ,d f V~M{wʖU##M2)$}X~矃35ruEcEb(/̈(aشш1DUZ*m('S |(us7 i&f"Dj)WU( xmN.y cNj7[_3 *; KKUX0ã$\W|M-݊ \LnEICѺG!@Y܆o!)7Wy^DfX]v+j.}nn Sp9 "'o.HsB85*(lČ%pV#umIc <'~ EvKkz xJ?gcUH= 3/G|^i6=jΨVoĢ5O^ ,HqNUlꆋ$cgYGJ1If {Ŏ(mso-Qɺ)-3c `%-T˼fxю};Vkln:w43l`ua6zȾ"ؽ/!dtye SZvq4 \Ggtv㮲R8ftki%hI9~.AB>wz:nC篒~$}XF [`V=_Er̸qDTl IqFSlyEl -2Z?haou՗nίޗet4{rv6xhg!k}Z6h!OjfЄ']zjŻ'ѧ^s_Zh0 r9tOՈ@%f ~P1ZթE&֗(vFM%nBa9sD.P5C_?֫?X-źC VعCے95;#.ԏ h-$9¯QG%PuND` X 9-qj;1lٍ0zb|b$_Ƈo?hرY0xאuMp_-SSZ߻ d3×.FJ; nJTX0fxU*GY}.J84xT@=`~=RHjOح(@/T~׻0č:8*CX15 "`SZORȪr"lƆS]3nCp25dF Kאǯtzș1 gOA`x 1"k3k!}@P'7`eί~ .oы5TdžJiMsQӽLKW?_U 97nEQkҭL-9Zp|YѠ!JBG#K)8IТFw2%JB# #K*&ndT1TO苑{_=T ;Z)ڙeXBZԹ_wQJF<3I)'$qJP5[J}P,CXXx:y+)w16E:J ꦅډayJRHC~3DTقiwK3[M񱣺v";g36:6Y MۥĦz^ϛMgŃrV#,q *e|NTm9?xJJ'.Gew/;x#;CР㑆U"V'w-`$c?uPJt3pظoPZ9¿t׎&pIKM4WV@c!3]w1 ,VxU11!7de.#$>_}j7qhb$KhiW0$ ez0~Cyd<15{VtZ<װ(J^y5WЫ XNdR/?6 D{jUTаtW)DJAWlȣJmÃQ+K.Vt3ߨDJRCsv,^W}jlXzE &Ys:^ To,jP1 \1µsp6ġ "Isw|K .ٱ7m&{T}̌긍N3ix~f-sqEXCtG.$,8߿tVTme5dЈkyôVv `~4lסer v +\6ÌUtnV9(lյ.ܹC9`HpJIEsIUH[}u=!uw92Ѽw_U (cWY"!/t2*/0 c$ؼkrg6q鴂(9[E^~*nzl4R$ox eGj.׼v>p ;bei)RG^T]>byd2q2AH7,RZJdq Au$4p_ڍnuo>W{Z0F+/|n~]!>(vƞIT" 58ӭf_qGkA1p:Q~h񨿟IJ!)Swl\+7"]k2lD~Ep+H}jjN#+ rd):ժ|V-Z)i]"p`[E~ȳCնO]6wX+LXBeUǼ?LJΜ8ɚ%͎khnt䍙FRxͨ(+fz(5 z 3o򯼑 {tePQ݀(`y Q_S'x$lN5 OL=t-3 ݟMMXsECZӢtLs=qrVѺп'pj$~ hX -l f `Ty߇c0rKu@C?3AKF:.JWyL <=2Z[[3p;onqb]h0"#fRs(=] Ep"ʚ>σ ##lB!3sN״ Z8$vOw-O^G1exzWDT]uۯ}}͕kmIS: ww]5:fPJ^8DZ4g3F";Pņ y7^z3FCzܭ #]aN$ /A>'ȱXuh#%9f+DUFʍclqz6{l*)l52ܲ7ġyKXQA2X$*:`3,|WܴxgAJJ܆>{"©/.C.vq VKCXsS@q`ȟb͗/O "k5\E(3T5'xs2.wi rɮ?Y3o63ݬM&˯Le+3y(a;'_V Uc8EGą*!xBSZ=xpS:ɹrn u|P!Ƿ-2i]XR-+"^#@mq5f^G S7Pq\2'm}KvޓyجIc=ҵ,+Ùsb \"̨ e,sOY_ (Ǖ窑mc pbI݁{݆eNS)7v6U}ӀqU1EoGCzCrO.z[ z ee!@>;@ݰJ"~f?+ͭHУvY0uR:o<'2kvO\lG3X Kc;đ0PLQTI;LXxyq𮤘|s`Zo~jJ=q*BCNUEJί GeE^ѻ#FO9 ,26z`( G*uTC>7d8T2CrUvhly:Ϫl:Fg ǃ@ UKGjxuQE0=f!5cNoAFY",Һ 3~@(ẅJ܅*o{{IX [4 Kԙf' QCq(䎁xPGSSmV(MɽζYaYN/OP./ƞwɘd҇, !|OSw;)EM^fQ- B8v h]=9֪g&I<-d$ߡ4mCoOVW}Hx+bJ/.z y16BSDwsc^2!n0 |}8oFsǙJQ%ZxKG6|+މ?0ꜧ&PΝabL{uԝ|ɸ@3ԓ%Z=SKH1g TɷJe1)k>0Ov0]mK݂+< M׻m(sX0AE.r(>kq~ؘ+JJhPN)o mt]>Py&7"b֨fZ {@)/Sp`?ehVf2R2uxv"ݹV0߂|q=li^ %0&0 vU5k[ -= &\ o"ꊨB\+0HA6eT[ŰBE,9d7#ÜQCp[ ^vu~袷!Rw$R$yd^?7 H3>hhFYfKYd^l{qoBk[\ d$?L;e6."35(-;smh Zr?0IsʌADZDoFX3ꙏ^ӄW]\MI)[a}֍}O!*R |_4 ^^^CdXkTٖa)<(r*Ŵ%{XH- zW!^q5>ηɖ n%8n8k3Wl%gd .^:J:Q0`xUEWi1Kg+.0aU+$!4N\ yƼэ g=jsҷtAK⸐,[Y\{a¸ C; Y֬.gz)6d n /׭Y#!q$w|qn=7zKCw:s9)R .'+e￑ D;{dl[s&hq*>t9o#c7P>)YI]akFC|}12ÌhE|Hd0V;w0A"B- yP~jzbG]NcŗQ:7vJ+[~>.[KuNjӠ9m`2UG#]Ŏ&.FUH.b/e tL05&lSN<4?@n m56 " @2_@lP;pw4sPu;C0*0}2|NZ-f5zT#_8UjI4062_Y3(PtNM۽:S6xw?7OVWCM s#-5ɣwGSD0|?BUі/لV+<,:ۏuVnpF7c+D%7v֙ymە^٬T|wQL۠{<<95Z$!rMWE? $:67-=K9OLp/Y\3 X~CQW$Ӝ(q,]jة5q;YH# bջQpQo:X[ʎ@+*8=7ДnqFT.] #@^A-s,Xqo}bObG?̼/ 0!$#X 鈌^Ofy{F-#wคBw5Ghn]#؎˺4`ڊfbY~Д)VCƖߜ~\!<3^h@W7ͤ _yɸ2YFx v.j? Q+["H™ǿS?/E RqP8aă!@VeLk@C w~#t8X#莑73h-IG߀2RJW51iǂU917FboS6&!c}:l~%"iK-*QkbNA%}QπiZveno C>Ǵnѷ2HAxgɁY-M]4e%AMO"&Λ,/S(SYaC0g8CD`!9¨ABh]y`{%3+FPom }$,N#UW}n#DH®B7 o RQ6NMlSs;Z 㐘 jQ IAU,d $$ssqΑWe6p_CmViWbO1bCij İV3"Ymi`mRUYͮ?}< O!=7Gq v)=Dz=k!2]bVfIZCr& U!'Қ<9Vv+*6gv5$J'%aXNk}a}@%HG T"+!C2TO<у#$4 exTt?cJ^'G6ĝ˾%r{'eit>^:Z^P #+JKone2{1n%Sl#x nkϴڙ ,) 9іSn .:&$ӵ8*Z4y[t(1N$Ŋ}&{W*.&eT)Wzdҹg [ *Ni|1=c1$M&N-q/v&ыj@H;* ?)c-0/[Μ%PkzS>e UmE-.)%;C x1y|3~JZ/baGΛf??ptтT%M t/dvoIJ8 (`pMt/b .'K~u)~LɤO,ia n^@BN9%5{}i2(ZCLk u] W^xf]]bP+ݭ0F}i.pj*#s'cvyEu95䀻 ~d{$qʗ-*#[Lq90А"fU@"yv-\[ 0/FXoʈZPˬ(iM*6#-e4BE43WIj6Tqh7de8~,P. %| p.hBhk^f}(j- )<_݄bfP 7JnL|cFLL^aS+@Ob‰KFE-pWMnsge2+TsE]?\k6unC^ G3 e|Bu} VEVc} _Q+=_֝YogWg.̳}Xi¥`Q/R\R}DnGLڡT=z5,K˛s)(;;PYyBݪ+piֽAԲ>wAq棪?.յqW Xs܊W r\\]?VYMq~k3}d^6guBP3Dyt;Y@[#~" pbmZlTNL3muqP1. ,^C|:l&ncp p:-lgr92O*-J>fv+XbŵDu\(6ʓ.oչ<?{,ThxĘA-mUzMHR EJ=a/0䲰o ^F-5*ca4`~6a߿K}1Q=U\T #TXNA wbP~\7K׵:}oI~JF'fFg2mf9)Z~l!A:8@~WV $&a4;8[-쀵T~&LUh"ߛ 0kw[O`SmjN8R?eMDuBN{Yϱ\{\5ui8|cAHh{Jq=*–ccGOW뀕q8w9(I\ʅ?omAn,WF_+NMP׋a$V檐t^Z0a q/^eGVTйJ3rz1˛oY5|uڡ®gn{!j k]b]~(O)CU_qd3vNuCiMYFOLJ9 :aU[^G*'W0 zP `,o<_ގ:ojr'9 >,PӍ`#+i*RG,J,i؏˗܅gtIT[!Z+t_c$fC5bW0'9ɓgi۾jd|Qk8BEzgxX(*𤿂Ұ?AbL@*GpqvD"t$rq\F3J)U|zVP_>Ӆ$CPAPPHY+okRgpM=?j j%™/A`e`XCïA2n؍quV3YԩA0 #\s+5d܉ B\n7uUFdB>\ٞ1Mۛd3{B8ane59Y-MJb2*[R5(8= iP %p0臁4l7gi\ߊMxwfYUWߨy=X{2lsP<[g> &f6K@iL^ćb')|p0)+d?A/+ϗs$O8sL  ۣxvD 93oxJmzNqӁd7wҺXʭpͯ+b؆PFd{FtGӹ"ޫh[upGc=dxcܛ-`OSTbb^dIОȘ/:j- a&M-;#:vsV؊~׏/*Rdw-0 k؄9-ZC8Լ#+ڋj=R/SrWX~mgoEhФ G׽'҉tJKdۼޜOn'Y+½g綎%l=QA1*%*7JP~**M† ‚ylpm`ɬcx7ʴ WFWpZ7kM vY7[wkTo%UҚP;; :qnP4k١=}dQSẃ m𾠹;7ɳ~ʲ|4 @!LFZj7h#/~.WZˁsň$'t'UG&{iX2ϔ]2]J@NA&Kl9WkRxX̞^^o{Dc2\?q~Z>TfNw,4=?M,LI3Kp>eTHOԄk3ql.HuPס,ʍ>MN岚PZ9k,Kk)GJS&Cc͗?Hgra$;\hEfr |=8.$| KaBvxcϬqkMgI~KE% \kVݺ65 >|x'yJ0H뤔*5Z wqRwaȘu!{4R1!q!+T ‚!m:8~&DHt&wצ;+8ŒnʛNq?dM3xEpU0m]__4ͼ?28똋TvI5/G5g1>#Kі'?0FAnv@R |ـhJuR9J_W(lZp6z|%wW ՚#4(X}`Qj"}*") [X[39.N"ѕ,UL\Өon-%#NuһlIa GkRb5)ELj6-8{ُ<ےDs1'"Ux:}<:HEkLm6\ =X|. ?TzjiLp>Ftb5݅)b܀ ٨0j h,w ^Qg;oTEf)@U!Vhiyw7OgK>F|9m Vk2dM1>[xuNRK2X2U0 㬠b'5+q:K\74Yۗ%Tnެp"=s}tߛ8$ϯMbp8H,!,Qsx Zڤ|[{fBb[a0X6>ztqLu{Fsa\+s. 5}ܹ'1κ~pͲK=)˱cy0$0rdfukeR9meHtHv<ۉOfNB GkcΞ ]EkUWE;seBlZ#@N)S̼W@f֨;[a+ ݄l<ߪFuIO,<|. @|X3ejb|rAˇ>g_Hb*I>~AD&꘡֦½5!=1trZdMt΍߂ҲzI\b7폏g1)R}Ғ;_etb!4pdY<{G& ?B7[KyˡGֲ<''&g[=^Lc: hNu\&P8/.{(#k-C2 &))P@Ŕ(y+ ! \g# (i I}\ytR*\ @>qb6DOÝvL]QPlD;\G!*C _{ºP@\b:KpDjOm%x7 kZKԥ8Ӽ S7]A9N׸)gN5'%UoI|v8If"g}/1\{WFl0ĕm(mZ(oب#rkڗ5.Y@5tߕ5P޸Ne_4zPYK1SM˨zÏ*~$9]Kё(&$uΪ'6tdBp4qNLܿjf. 1& e 7X;nd tQx ;&:,bG]ce#hg/Iu<K!r '2Mh#2جli:jVP!pH[ F:/Z=!bkn$tBZ^#u@5+Sr\*e-HojVgluȕHf|I{*U5XѵW.6sW 9$[\X aP]^16>삤Q5*ѹ+]SgؑRp~UME2*&RZL \q݄>l-!D" +,cN&-LߕKQJ۽2s. 63O߉Ǚ?3/e`s6‹gpv"MJ.$rX̰|!(g,q n '/HΌE#@#JBLuo=,b(5ے Vw-+򔲗םo**azݡ0/ У+e'k|S5M(&ÄVGY{v<$+9}v荾 ʖ"믴tP^+KN/_!j@]@v sX16> *%O."P#-m"{-iO^rH81ٿ}kAɗlo*374#"%^ą]as :J P; 6sS#~)hGA#?،v&lӥ;9wb>³\ =blfԯ8.ΧΧ^^_/tGSK5Қ\5ed+IʜiS|Fۘ-Ia#fR3dp7n]J!~}w3h~(U+˾AoRcxHC;8e\^$Ns6 {~_V_L$B,HW[DnT>9O?'ll0^btqAOR#@YbǓ9DP(?( ХٟAzu 0=0S-iWHl.VP%M6j].وӛ@4K10hg݈֘ݸ{ҿXauFg?dkDԗ{kzUX9 A *yz74J k]+J`X>ѢbN)?gjc>b|4A_(ODB;']| O\4T qbLTIsp}H5Ε5BIBnP7?qyOEGe5WC&_g>4Ե3a+^18eNdFڳ!LxkrW7c!'H\` xL7J7OȒ/כKB}#xeTQ '[apŠ~F-w=RUX2% SǯUܐqo)kȇeƏ,,Z=* kŜ+08jY5qݜ:]yy8*9K2(Y= zcuR? OxecPANDCtKKvϔ0y?ک(f ƸOU a#)~HWVoݸR)Rib267bHԖҟ=7OLݓ9%nr,<"#E r,TWW߬^nɥyM6;7PA{,tG(UR܈24VUP]i9]t7U1k5ރl! 3u jc.<<\#Dm"Z80"A\)ecf0| (:m[5ʼn Q:ijK\ 6=p \wuooFJg毰e7hq]nUx<.=6m :JqQbIJj \l[9˳;D3ЩX8ԋf6hX뀏5 ~WR$*&–j$&4n.pW@4g6&"W:'#.;CjmGi/|2k#)6jCciEB") i`0VjρJlKBk 6RSRg `be$z1fR蝝&F" C?4QަDHVEҮ0[5YZTgw.Б-BCCD *UtxϒanLF@%#iI4F{AhE*f\%tQG%/k7>KYL+bZ\ދm/yҧ7͠%2lŮ@åIjG*oxmev$>a>3➊]lfɰ-@n[3v{}èuV e-%uJɎdA 0\טT,Z h\x5!\90(Imޱrl'3EtPW' NŰWs-CQ7;\]?\l]*T.^}v 2wxMKl$)|V̽0/!yPmvq=z(J.*WU'|ݤq>1yE=*c}y79j~5! }O8Tn q [oQ=9ls_E2k{E1W?Xl;"j2kX]"NO!Eho*%ɛmyE7 yH\'@;IImMҍO^;:^~:_a1Ua-Pʴ RL'Hxbj?YT>N%+g7ڒ]RHSfmJVZCf'p>6R7K=d}G. '翏eH;E)!Am7;%G IɇfWN, 9D>N0cdT |%nY|L-MX2],u_Hh?bl `Lcuj*g2Jz9P`]_noǺϢ1י8VN(]3 yp}31A~ƚ`C~ P;:.*pA\LhkJv{M1Hrjh#0{lAꓐFGz~*ٹL$ yrM׼G^XU]ɘ@dhf̬JB7v*bӟ䟸TOI;IN(4J&S!.j6 &X@"=On+dfe 3ЮQpZ=^/ F}sxӟsAZjA#hF:>_q$ﺹm+TF |@cO-Evx~©g*1ZSM0e/)tמ=S=iY[4qMbhpVQXM֮\ƮWAKRcbgN7b+ًg{U ':KʈRŰFmؙc`UaW1SYP%[ ۞y OxD;x@aM,ؘ/ Pri\@QBG0M5\D!48G3*%cu&b2 2ge;8I[+ W%m$M݅ SV@QGk[uk#$[ˤ7VZKXvûM>*VZu$IZ8]}`ҰfiS[m?`}f̅Ӈ37;gN;mv (IxUV8KjD"{=="w| jp!=wqQYjGE>RᙉNm~<kdS.0#HUmux78')ŐTv$uDSrnP 79g.iUrhfB4߄I$_+oVd<=snLe"!(oj [6xGY8:QZrk-_[ZE@De׸(L<ڌ) ^MNwax,+g2ڑTO,TM%_^P@ 6[$1ʗ֋ᖖoo]R^;xVUu' x.t2!d}Z ݱ=n%iGq\ *oYIam^4 M`}|38iV*-}- Ud +-W%^MN+Rmw^:$mZ ր^{&~xvEV31Ͳ_f{wȣJd^A6Z!C>UXh?T:`ᄐ .n\ŧͷȱߧ;6v֝J &(!bF@D,1&PjC}l:\$Lz5TM+ϯGbh(޽j0EmQ WBҪ.ˬ_9ӢmL^VW&R2:S44wQȌq>0ǟɵu܎"385o{-ylm3pNO = Fc#.SQO7ֿ^wz+`/ÔXjz(r"nR>:ES@_P  TGJ]ǹHOh2r6wR tSVdRrG(=eRoM#|X|h-X/Ր;c,R8ϟwG:x$\ʔz q)0! #R0 Xr#&fj$v7e:."~W5rw,\FDvi穦jUKl]r9(O t7wB@~{: کS:IK9BA*+f:::cac`ې,m%:j<5M\;h\ &W_q"f 0=p :mIXQh: ;!>`Z!g⻴ܽ oK/L2)%V}K 7eBTzuikkxd4q$3n7?`8xka%ɗz MVV3e+z%,X!1)O([J ؠLrio\=^+8@*SQt0E.NrL mKPG˺@1WRR'4}fߟ>d7!ߤW9R@Pjk,6Q 33Nڳ,(2|nTj#Oie ܢ0jrj/l Wg,UAP sD2iZNggꍛCþ(58!ImJG7ɾ AV7D;Dr03_!:23G&Ő}:hf GR.5022>frhױ!CUZ+է [\Xwl@OiDls+R,KY:q8GHxڂ8*!Wb^s2|Auj&| ؕ<&d׿w 0t;\`i/C/ +U|dz%Y5xyW \?q>1ͫuFw)q3 $)Wpz(/;Oq|sO>I~Qݯ'csپ#;pW.[d,S.hr hB/9*3Q=CAأ!jbDnbGl ZUAvC>5;4ăWYU R ڤ#?؆x&/{ hac]d62`Z4f[1_Oov/ۄK !Db19Wa!\֞WpHϒQW"s?DX*.=NEtE@r}~$/$x4ȣ#}.͌m+j8kw'^://L)jȢLe }v/EÈݜQpu{ 4K+T6R;ǶE=A2By$htM]RԹ򧦡Fh6Olg>7g.ЦCAn3!`UF0Xs6nF><4\&ޢ<-IZ3ux)?2ݜ0[!XRqj68-o@3ĈjtԺ!. [}ytp9@4'D!AE麲6^z0XP؀ͽw>jxcDyj derA/(! ^a;ztzZ!o`3ZIvd ^-bw,x?;8uހ0*bGRDY__!-e% # Is<_%"fkDpHR(9ho ڜ .}عwձAPw?jKTHRRX2۪ : z-o:MuTwF ;\c9c*Y!Nq}MG:l^焱4},1:'Vٯ sAn>?/cm^h`8l;d_0g_-#u$ X.BɜѾ܁BbV&&]wV̿:L^M:Nv@zW ے-T>-qXJ],RJCR] {WP|SScytjݹ7i]WRܔw"V ߍe7o9{eڸ9458mz`\p`v|+eY3(>}$~Wm7V pP"A$^D??[Iܜ섔"ӹaJH3{e.'j0vEz:y~WwxwEp9#( UFɯ99?Bz]S95$Fe?coμKcO07 =\B89˥]$'˰V"F(=GՉR婝aG*PDw5^"z%Dq2Ql$}aBE((>Yƅɻ+s$5>&}wfЌogBl3Izmuޣ$hxlV _w^L~ڧBH6PxͥkQLUK;:\g;@,D64;Lk+q"}]Ə?I}Kͫ '8kb7޵벀,) ? 4)I,!%>82_՗_ HB!k$Mʌ\$9'=,@t+ՠSbn{^!UBArs_ɜy20&Kr+oDEqe+1אr Z_]d.Kvrl3:R &D~žgwl 7uw w82uv0IE rq}^Q J!7*92{k4O ʸa0uUz\Ti!a~|0O_+R6d@4Gk?_<݄iv qOPB ½MN]g3RO EԒc5'A a0~^ rT \{kZ6g"Ea'xcE%ƍE hEս %œX̲X=ٗomi-?:ԅ"'Ġn,*#C />UޫՋ=e$qvJ3jBW veo$oq b$|zoBZgmh%RUS!&e@^ ^RtPֻńJ똛g{v6,Y)dGztFz#ξ"] =-΁Ȳz^R9ZG F^e3"Ҫ  {Rc !Do|Lz/nD&S~-l2~5.wUumT5|V~i!4&x=?lhHwk/Ժ AUGrDߍQ̂j2ab )K&ze\6 v6u঍1o ?| $Ma7u'"O%MK@l ?(-8\xX0Ƈl f *ņw 8^ōJGm\u~=BXhQU92KDBZxB@W|› =pgD(MriWKRjDA_Z>r4j*Z 6xjhUD9lI֌C9G|a@1YUQ|oBU+s%,?4ۂދ`a;X$J{,{1n!\9R7)N=-lw~|O Id褟lOF[*(}PTkj9U,ɴ̽]}7a-~l{^}FTNGvl5Kִr2V' XRK̓N׬3$Bu1nY :֯ Dcfv-߫!W3B+Zꠊ.o^ش!ewc?j۾R+Յ7vF}cƉu6] <5+^"Ѐx}h:|sFOHi.\?/У@0@ ,fnLjy0BiJ0a+4hBSY[V@9h#UN+zmqBNRוqtEk,2 驑bF(#5=kix{0zlzG"򩗣At1[柼ۙA‰0 N~:>#R~ȠG>{Nu'Ԫilۢꎥ-tՑwon?qN#DZ90SCgZKR\oͻ1!EST"xTd\kTW_RF /h ?PKA(/HOtjXٰՂKYhdǻ;u{(Kz?'jx^$KIQ[Hԁ>Zc,uU*h!|E_Y+AK!X3 |y^*uC1MN7MT|(Y'T _yvAp_qΈL %Hu'QWAy!SW>بFm̰`8U 36L*) VU?R.BÒEkqEѠ *ctpGJ)șCW|gZXP;@s~;WCX yya~qwwPovXyۭm'h$ z$2S~$ [BeIYpi" 6x!MG8dlA-<3+]sI*=S>-Aq ŝyK*Kr&(i(l-:܂]ODWRX9'4 #GMu-< {޿)b^=%tӊb/z{޵r,zlZ/ Zv:;b@|?|wE,iK1} =aZAZ9BdC4-ݹG4Os"0: P2e3uJX Tȷ]^1~ j8'C饑,j`NLEr3aVmՉ6X. S`%jroGWM5+cBfDyg<?:eܪh9,EFp@#ϑOԘ4ض7C>jw$5CGoڢ-ו k w \#d8Kz#bٛNcؓ'S:) j]TƗwx}ᮬAϯj%TsV$enH( 9-V!^~:vFUfOx;f6]U*":#G4.}}T]/3 z&tKN'}FaE9PIp0{nI[ _[JnwFVճV.4ߥW"U:T̸'JAqn_ԑ- Va%d鱙LH)ZX̔!M< cz$D~1Fps&d|eEY_#Tl]<ϫQ.^"L} "? -wx =I I<Xj٠|[KpxOn4o$yGT0< O<~ #pcrxAGc.Ts5XkRy֎&'_.ו#xYU$(cJrrv?UN<7qc))Zޥ6]=4Nv7( h̟N ykADYn괘g/t=2wq-nP}b$5Y ?d vgl{Vm.R[eoDL>)![Blx!E#Q]B%qvOvu:M_ZnPYWqHWGJUtK;kOʻVMYZFhCQEgHBHcf S}Ϝ,"}XCE$n|G N?^W,֏Df5l) `8FAGgvl-'ndsZIDUcTCN <$1ȆUPEU]1)yIHP ^ЍQ:44*os:›?M˒$%s(&$Bz?~߷" [Mn6'dZӻ thB(+AV6!d~0mM ̆r8SBhF XT௲{1Lt$a gVTOd[ #LL-&ܟnBReJW/$}vWaS3N˴oF>$z7kV%I S;!mXo֠Rv]yfo BpYh5B}\C:Gs2׀5.0ȯ i 3Oj+yG~p9(v }}Xyk¤UM:Lm֪ _D򇵦3uͷS)t җL1x9p^#$U=<ZF.Z@:o{L6 m`^KZX&[%s^ޙXQk}hf'j? ݊筣qCuኋ a]oFu:GOilɯhe/ZESķ^59%'A~G߇@)mRUīSggsJ%URW-'ֈلC7ҹ+BɃ_]''f0, Xus<$pv8ZKþl7|M7RK[Tɚ?=boAHVmz1~cNڏ#{|$ Ka՗[Pi#}[T㏨}PKfG%<7|j\ ]A wSWy~cK w* }1@8+K<r9t Ѧ²4=HUhij" pڛZ8D0ҷ̑P^kҨJ̔MZYlK vwp1!+lmưT$E [U0hEyҎ L4S&2JW .Wm8fhy-& N)-əٸ 9Xj2dF8NGB`f)n}_cD۞|C9wI7W/fAS4:V{7y_2^2)|Onnq 4!doDR"M.ry2R?k_`-ޯ2`ᚉOe+s`goO 0pqB7T)zX46[Zww-U 9vZL= ')xZXTcMY BA"t)/i h$ J@y(~ @%L x^!~8`bFs) ¶Z bm=21?Hw^woa=#Ml&BlxͬV)sjchܚsfkr Oϡ ]n:Zo3;=,PArnw <%wĉ**)esGZrȔʃd>xs/2"}mW:wE\nj؈ u4Bz4G-Ya5{aP@^џ 1&ZK Bamq3 4_[B֗O REjZ qK:I>p-xw Kt1"Ģ.q\,Ѵ `ſVi/EAOR\౟kB(aG[/}[]t~KzS}be\9}JvaxW =aoc5QL\pijϽ;=XqzH/\އrVLb޼2i>o;~awk"ˣV[*Ul\V5k"OQթ:TlkgP-c&d#80XP>KO}+e) 9Mb'kOud&.9 p >&x5ji3y֜|wYsM( P@: {F|n) KoWE8c 2$1(f6&ݔYdE=t`a5Vs ˨ jq=$L32CKc([vdM' /(4 ).~n|[8児irƽMr5ҝඎrɴ_6'K'{ {\?Ɍ_KVx'QLV* `՟Ȉ ML+DA7<}=^;4ՅeHQ;CeSO"^&:~N6>==@0ScM(WV9)~-0ApCL) Ls*>!xLLM9rn&ǽ aǹ2R<8L-[ȐWё.>ͣ}. z9tn-̧ko_k7٩EO'+,_i|s?$;sh+qGxgb@LOa?^DKZu6/rU,\^@,M)K5>{j u)Y&{}(l_sECxLI\|-cXDڮ:eARz$A<6CH>%_GDG,3L aE]#3 SJ&m\t)腜,V'pw=9%aHXyV6^ =.3g+oKhNg\,RU ݸ4^Y,;;M Y +!(3S~ V㐺rX'hU'qڤ~hGmm+($UlCR1؍]1* _AL2{ē2Txi z? tIw N*C]w-`ͺH ;~1? / hOҐzb3h h<2jTR>$ .61?`^r'&Rӕْ dJjq2J't\=dRS-ʇ$ j.L7ᐨVY:;*%* 7@^,h?1ꬥ#ĵX2ZP+Џ<@BM}QՊW4 VшfudԶhaW ), ̦ f4O2>ٷp'npQrNiO`ZI6GKx|h{>4L96N悹 @ۃ^!xk-C=Md %syFcc=/ts db"e> g.PL!hW`Zѽ8>p!s)=)&m_o=krj8M1׷P@1>bߚfΆ.95>YI5Dχ9f#"3Q&}4d34:m%ۛ"v;Ey:TLݺuY&ۑւՅ݊&E;(7\qW|0INd{WgijTl92xGh-̱a͜41ӕE p6sL.9MlHt3JWxYh 0N؞gIўb)NSjET*dZ_6PNjGE d|pF"^IXlщlY˼40я8AQIM`H;2l/;gjj.W~؅#֛Q$$b[1g?ġpEw#PIrO Mf=!H44?'$Ⱦ8*eDWԇ湃d|O?}!LOԊՖ0XsE89[7dr(!q"n ^3MYHu| ά/y͇YTI+DiT N h-NbV08?E'lGN2VX[cWInySKhϗ *x|-!HPe u~$5DsFv, LOq.zqߺTAmLG~I@Y W6dڒ4jiqu1B{%s(2kC4^m8Ft-X s鼛7e#(q8($! [ t^ 3 kt:-e;0@ʅ!J"Mj87cἷc>I``%O8 O'URʦ;s;5£EkH)eĠLU"J2 3[TPÐaS Hmm'\} NMn5l˪(TCd:FVyd@ۑ%[Ty}$؏ fMCiѾ}hluLfWl\#b_A ^]隷fuv,8SԚOx1DqF_ۇ{!Ti{”5`hsv?Τ7*=ũEPn)`p%s;ϟn/"5:j,a VHrbkh9ţهxoQJDHVwno$3u7X00 _Ӈv558~T+?kp[@[=t ;!!Xbzc[-I*;GiV2jg^<זĢJر¸bh6=hr^`چ\dT~4RG'J.eum;q07:a)Ja3-3/#ώ8Kx;/CPe`>{s94=-?ҽ)kiGu)fPWcfָ$uWYXd{;"{o|PhVa oJdU Hi'DQ+D)B=ɱ40,Mj_:c]ٺ*٭6ax5$օ9v yf᳅/;FǍwFXC.lۄk ۤ-!/ }o'MFLz!2ș Jnu3o9}|ԲnKGj5؍ YϒlQv.(ܘr#5/\/m T=yJ5E|vSQMQo!&QWq gLp򒪉76߀DQ+7_I0?ʙp.hRN ި[†j6)Am0¦Ic,LSY<^ѧX&Vwa*PKirmXR⻅PZ`6)%}R?* `xՊəlb~+]|a;_)i|_D?=Qćj}mD*In0pzG>\nSE]Kry ҝ[TyչVxFi򂘟ƟZ;>p8>ZwЫ¸cE[ O»YbRS (?""쏥ke,1 dGlȰ,E:҅`|86ęZY1/2 ƹTyj5>o&<m4P 6т 3G3Kv33Cy l2{z2<00av&|sz9|G*2)cp*`c'^9*oƗ\^M4T;@Iә DEK*j~8Kg/0/ 4m<*{ !t7[; A` DŽ:M)#9"m^0ژAT í \*Zw9ZMQ(׎qwmrJ{j^-6DKKJæ޿.Ơ&PٳCWB!\QO!_%6jAff-c1W(`㮦H#\Ӱ}͸ax{VS7/&/0v6du+6-¦,ܾdgf7 2fHڮOJrlpQu{Fo(deQVAx\:Qt₹ʭ}"`ƬLD3L2N[B-PΙּ9hak3n@[U\kbb<Ju` DKa,HOdIr֥z|C满gŸSC<2n"!UqK]Dwf3 ( i{H oegFgmM4Ssmޅ6%nt$,9(1xss-eA /s?|AYY҆iA(?#!H3alhX rkmu܉U 9Ջ."#朒CX).j~ (,?,Ӌ4+jC}qEwW-Z<`x`\Oo[k+o (g}>sS?'JqRN\eGЍ*GHy6Az.;^̴Y+i+L/5iW2E[ZfƍT/rgxWg0/k#c怜xy68͞uG̔sîSrѲp3M1b;Yk[k`"CfXֵCMvc!sbcSOdKR ׀ 6ȸ l>:ǝ(XAECr&DiMh^?u=I)IUb$9 vh 2ս!$)w&Eˊ7X+vOݎ{-a_!٣Ov |+؇>2gCuTGvb0=0OʉZ )bwKJ 0[1[GBw+- |Bj.c|Dii5ֻí?Ć[n; Z؉=r&9+q%]NI1/`%uM>G.-ci#X-(`n1[ײ%5f[{a8 x5գao#lB}=](X2A*6 b%%VCQhfbSׇgR\ucDP+9q#4oO-K2T.K}2rHNUy ZĥyaKPfAҍ:`V, JaW! 0Hp~r/^DT=NNx) pKTwگm~W!`mqZ̩ڡK@&_b 8JgG bb6-}Ǫg5?hby<4Twcw3$ká\O'Zae $\kn;Эr3(\ae8k+8ߛ hu;AV>NR-ZiR=0ʊB{4uQbEb*;5Jhr5wW\u'ĈJe]RɒfskL=3mE-oO FZ-wJ&(H(*E9;ۚ'a j9&6C6'dz .0U.p0`<, `Nqb. ^sߓƍkKk9R>.Z=0DI^͟3P C"ʼu/^TJ_!W~G'fۄKQԼ#XfZb@?U*xHj+f.7:GhP;Wq#a4s\EJ̄џքu 'K03tVHyDV?Ce~4#Szcc9Ѩ8mtEk$ÀXښ6W-p˥ISF; C?fL9UV $ɖ0cYl.w׷IyտtjS*% 7z,0Be_)6Z#YDZ亝Y>d>L SuB=xiRa(N"&nE5V$@q$M\sg V90}ߡ{ʓ gB1bJDak\=!Ƅ&l@'UyR/Q+)b'qbEIS >TU2΁YaEh w]C p@ F+GtzGFF^SR iتdzCܥ]Nv\V^%;O\^Ǧݍ5:Τ< =m=A_z/Vǟ$a{Tऋ%K(4S *I4aC`ߪyr6 ٶ@Tȝu>--0A\j.ϐj9uS=I}vN !=7,~cן.tYۈMU|(6,}(6@FE B˿3ÿ2>\/'gN]&*g\^aͽ= `̟^;(ݬ:K"AU} >G!wm7ArԿv.D i)o @ g\1$_E=1JqG鮞Ϩ0% z2E-/b]1ҏ+pPhW_Sa4':ԔIiiST0@^gGCįtM-TN88d_DW3 &/_6[;ͻ,7Z}YUw9"7t:_گƿYcrXZÜ)W?ȸ88bx K.kF; z O{j|ًncw䬑w!5-᩿W]XUZ8i](,XI[Hh&y=?Tb@FWS\R` w^j,QCց`s}@>ڿ31~MIbicN]lo-Ӌ٘cҗi6HTl0d%![s]*ʖbX. tcwlDd @P-t}fK0P76&ީJ^A%?%L ŲLJgՖd, z捾=xe D7ANh㷒qrTȹQrZ0!I1x7<2G 3Rab GTFo~i T< {$N]8d @kb^Q_#,xa~Tr|*.K6Yc7˫|^@ r-0G1kCq?)(gaE9&F,ff>[7H}TLmqגAa`~/Sl'?rClQ}hJRvTV78I6$yѵ+'z 4 f}94Q${i!5OUXCtH% nS_vmMi3Tj.e^uM&o6f* A!Pxh,@{Y8fK fH6Mؕ1k%))HI~ ByνDn7>d < I|B͜ kfO}U zU2W*=V8%%m~8laJwWhYB<ls@<ƙA5 < E%U ux3z[#pD-q ;8 U!fJ/ Юi ݳx.J6}MqiZ'j7" j{(zȰx[v,OYpi7{dCn)Œ}?<8DVce 4T:8ݢǚ|v:Ze^@;M<'xCEhcKIUI'1iYq@RmbN2Ui0߉j`I »H-ntdYyƈa Qmc1VB* r:Մx8KjZn|c9 W̼XP=q֌G}LxH, א -y]{x#c$D<=7bLhT]K<7_߁ 493EǥSF{( Y%&/^YVqF.ЪG/;B|3fMxj1.-`(KDL+1M`U%ORyL@^dE7i C\k0xV֐'BN.n"PC 9X>lp-|rO u19wCM}(9I5Pijv6h*6tĻ)jR5#2u:n:㰍F/ ͙\:)Rcyve9v֫]TAk@O5(i×g^k 'u8#! ylj^_o& 1PTn,Za$j=7ߍ tǧҞ.t@O{V/R]9DD7,"ç~58H^Ey԰y9v:s3,>ObaVR\y Nr;_^ 6У4Xqke|w5KcdM[C%4n!r|(~(V;^tԌhҤbۡ 4,T[yPQ h$X H؀Y(V6ե]e!8WY f)zWle Ljawc'VYuqS*H0w5࡬қ851yM(Qʽ -6o(>w/i Z?]E Jʸ{zq >of`înTFAa Tdg{:실>P;_CNb ᗆ":v͞O 6r)zy0r Ta4*ٍg/OYX#עYIܺ~r&J^?fCY&t<#a}̯&·4Q Y5&-`0<λZMԗ˭M4^iaa gj*U7걙:@XssI{(J(K PF 0譖a^mv51r$ݰ k:*`w+V6[%>( $1ܢF<SpH2@BbdM'ɜ;e}Z{'̦^~KQqTBUlKUWQ ՕN3J 7HT ?$k#(?Rdd `I=k_i `1p1,'BEYT\?h6~TXx{{# iBRĜSqlZZ(I_IK,ې>BOv3QhIn}/&!-pHؒnkB u҃7`^_]4LҨÓ;Б3nS5LBDZXE1xZ"\J[HH]d0ذ*%Y'9RS6)Is6GnBz/]OZx~ AeNeI0( YOjmM^6Mf~Ls$V0חrn$K92ejW)Wྨѿ}\ C)uȄXGE`3*86>8M1%ff:b[,a!Ma)Å^7/D};6M1e[2ۣ̑ֈAK AjKqylYڦx]`KP,)wH {#9h!(B02 5*H 6FKnHr?"JϜOd ë㏜&#tXiUE9Y .밐C³15I+~+<{?Pcfo fD3?y[˽eK7R?,J:e0׆aG"?l[vUOgPqn4o93u%AXF-gYa68P i<-tJ{8i.qv\R4.&`-SlZ~jMb) ࠜy4/xx*9{bP>fp贯"ϭ!1)06 oB|npi 6b)5F/"K'P\G6\K"4b(BKg6TMJ?N}# %6^8`z w(qó&_]chyio~U@|o6e z8r׈n*^7ҪOyƛ'ZZ-e"l6w~:KJ!7E (B˰h7{Nw;\BbFB,.QXPDYMe*v88YB/=#x3iuݼs#a!I)O=lk ^_oJa{GoEbF6Ձ||M6z{>Z֪~n2y ϟv |5K>uHOǕEmS,BK?(H4Ġ$(qdPF-@/ZlYM #mfjN:b /mqeŚ1Ş2.9Isl[{\i ᭛rh(6i]iLIֱj'CM%l|Y}2w3*璘s;ONL $#IkLҩ BP_r-$I&q\E%xI3Ϙ4BmA)kX@k|}G`5vJjO=D"gIQt+w6U+ o ;VP 07GK|n{Mys@C \FUO^WMHzdžX?vRgq,a`61m7Rb'%H `3wʌ&߉ʳYdz[]m > @<=l1ƨZ?!oMt-ֱ`t;}#o]-ʱ9䘏aӘ+6BD~MRSO(7uf(v19:ş2aYmd=Fz:izC.l|V>CoTC" д2d,RńMrr}crn ]- |=Xip=+i4#>亼zrv MPez$)GкO3)Z2FIJZ8줨@d/IyyԂ2FONۤ%dҟuÈ-/&za 7\U!E(̐fA2WmtF j/s_prܢz}ʦ tyX9;Bi7o'5%?u Bl6| }_ }w 2(2"9KA-AqLCR~oݏy?+9:*R-P{"2qyzC\>deg=Szŗb$U:i6׋oRp+.i(E?0+G.I36p>IzP%֧>n$ۿڰywR %P^`XUe8V7_mSG%\qPjWe6@ _ Mz{$ccQjrResJk_ƂE=0(ĺQ4+%&|u9ʫ v+70kb_T >͏1`GqDu{@otksێ  rC,X"B""F\/ӱ曅pQQߡ`42!K"}Y%ܦ)I?zD -KP,yjM,f`0O"Q(p6 KʭNrpRӸ5r 4. dVIV65 3pT[dO'{r:w(Y;;H?  HLɜu|4YjAwّ[ ģ &Ց`e &=uiaHOQ cJ(Qns?V7638% R'x)?~ h!|`,pjcڥԶi"E.wH1?zUT!?hm zS$Li RpIF]KD[cHD{%/2Wɦ~W[8rAٸs Tj<69?zU5y4^I,Ni&ISe?#N1ɏC}m U""YZj XES q *oɟGr@ߏ; l?:}r3$A&Us܁Ba<3f4hݻkg'9f\U3KD4/Gz2u06RwP/zϚ=xfR$,>(ʰP^2n Q3+ @(.|JN]aK7oL2춛1`z!Ip.M]],R |@C6:[j0~ ZMKmk+&],2N=|y93N&Kn1[aB"Nɑ+e!DL5*OHs܁˝H{|Η2n8dUt(i̕qGrnɢWR7̠x*es_.s88 Jjx±[U[>j=ɴ:ڈ/T~ƳP^K+G78G`Fr,s$8ȡlsA/jĹtN6̍>8Y/#KMצdUYxe{3tz`1?P;ؤ\s>0ٓMU{7qnl}p_I}iKB:`{n|S^^oDO%)m[@4VѬZh @~`~U%Ό_]Bb"u:झTɍPJayruХ;դ)3NUX`&- %@xLPĪ*Q*Vp,P̳u0bCTɀ8D6Ub*cIO3`]0cv>wq})nfdkqO#,~Wq#;rhCeY&Lw=Mտ}_&ɶ?%0N+V oR q6;A~m笶rEZ= cL+D4ڭ8kUG,K&!^F}_#Hu;N_#k鷒Im=<]+fw!y;$鷄6-Ճ> Vɡ@t.qa6į# z CcBޒY֏_> œl3? ^!|m:ḳ IF'Rz#U嫹3J"17T-J"&{Lu 1"G>u 2!'3\~U')k ZzY)(4 UDGUzTTULg΄}ok(zty8n#ɭ0{e VCyZZ 2P I#N2mH\"c7矤NK@d lg}]5U&k/'6]n*Ap'2rk[X1SpK)$Yp֪9*pw6}6%ԯz*8GMaHCj1F8NJY,4[-̳2z.  sIydjAX-tA5،Jo'AW&N(l)$˲qj~VFZh=uD*J2, 21J0X'CPZ53!9Y).@!+⣌~w?کu\I*14{;!?~*5:ܵo۾X2*1K޿װpxAO] Ѭ9$y7hFUMdKWntbвF  8-tw'+jT|wt\b,&'O 2c..N$űA6P?Gw.ƊbM{ýTWT'&S2cQg6ĜjXLcpY݀Z(ΰ\ qdGk9L}+.Uk x!7I۬B2HҎ)V^p++67XGZR*2 |+5t& W˩8| #k{FbΝl[AO'3"O =)f9NM1Nz!* RamL+c|Pi%SmR ;E&IA~?(^7*wVg00E.ͽĭ3E? |1L\XAΤsA:Fg>MwqbA6Ne5r"k *K48Y _@ʯARC:V'~^z ?ϝX;c/FA@:RgkTsy9!P *)N+N yk9N2A&2Mchw%=H%UA;C&PRBZJR[;xiGPi[z$m2XJRs{oH`c>a|xL]EswcD=O7$Pdok;1YƜ5\2XkPoGSvU/n6|2=_eЮ|4 wcBe%zZ~bl*Dn":caX[:ڲ*xIfc4Bv&ꔒg-RHTdw bHlMd(纀Ze7ߍ=Ҵ/8~F!KPFޣ^)܍F69.F}dUaN:^x\9A[`IHdA42ķN6t28c#x:맘|SϹݐ#}Nz_יk?5> ^F(|~O/W-jɚ ޝZThmUi_S\b `Au}t}1+(mECncnG44"T1?WsqۦҰbF+by\*-W6(RLJ6Qo߳`֢.hξE1 LsY+|\2}4S8x/N\-m.3YN{H4 i3kg(Ǥ4[0Nzzx`Ӈp̐[p g/6! DCY'NHv,h"joi[B#P2 ̂7&hO465 ]w Rإ߄ cv/7TiogQl~+<0uAȩEIUvd::.,к.TK=4D, U};;M{u-*9uLQiHՁ^5KSYޚͣ4V_ܭ'LJ qg4yR;KVhAo1^/UT 'U-z.s4!@5 l|A@ѸL)X&̊O  :|!\)HM^YWk{³Q.4e$oM~LQOE}PS,hofZ:] ז uA%*Hmǐ'yGw1wn$ Nc]=峑E#K$FFTV3'O4DoZBcpx,QWy{x1Զ`,Ok\(f1rI}/%,0H1j#.flhW uȓ7O3-.{2A`gG[&<(m"Pϟ ^jS7[K\h#Q!/yٰ` YZ>|,SrTo)MW2%Qbt~eҸSףr#rԉ٤j*Z{KC]ZR ;rГGP_gR1Ka%gIiMyKKbO"yUF0imo T`/3-tNC'O[`E(Qq⦋I$M:)9~_b2eԼb%&C= ! IH\D  $Bxo8NW\[J}yD yGwBE_z{ )φ6%Vտ0F{TMd|Vݰfd V7K59%Mü0 k5Mpؠd|6t7 /輈qA<*/b-cۦm[0V/:曅927/9_'@& "93$ ^F..< d`O6'~Lǚ; ߨn<*RO@&;889;z[j)]4'B$RX` '-06,A@ZfNn̈o=EdE@;6)4@5ϋ;v+Z]VndK@kع|y.eFo 0>gs׸)mzN1UjwuM %[& 87zZ ! fۣO;9xksuSނNW2J=eoa?"7vb4lrDzDIp\:5J\9!{KSDM8; 2e> yR{oI u*`6`T^3iEQ&"K_I5ql: 4+7L&Uo/DT> |j D/E6 C SUwDFpE xže6Ƌ"u߿5цJ`|"* W]$ʹ~_V؂uY1 n\"gy/^/.T)7QKE9|v"ͮNJJPF`kn )|]μe#H:1C 54PHrC$'}`w)'~1&<7`m8,}%&d º Y9 G}lUv׳UZLA^Waw@oN0&OIA̰pcdpCJ[Qo06=y-lݳisnХҟkcƛt >"՜@@`wHdHY>} ˹AhMt#M#>&S IN/i2*bX]A5dM(5AcΛb[B.*zĻbafFU}'9x]BLW6Ґ?sݏ%ֲ25\<ݍUOobSͤ(5TL'PːVm[^gw|H ur].LH8#z U%FVEE4|Bx-evq|I/5\^:&SNAުOH.;xWHEh&g~<^}&Gv\a"굿0h6 !eDQ^_SI> ['uɱ lC-/s՚NS ճԍpB̝.P|u !g*%)nTlڱ2&V!ٍ?3wxd]g9mʐyY !]ibf~Ig|zzTXa^s7 ꋩ^ =ɯKD}ʌxi{b͔cy/xa+"|8}0 i)2掆l=p/6xzPƂHU4UH}ikz*״K1J9ָ*Yfe 5O/Pt,[xU|6Qr8 {bBXI XpV@r D QI3EW]=1P*;_gU[9uк`u'cmi$WF9&f]hτ²ag\wkS 0H|4<8AA>{bc[Gr r),,TSUF.+Ba`+AEnccȳOV[ef֖oq-s!5[:(;mq>M!в"(4EιDo(}4S)ϰ6ӞؾaVmAmT)"nwW674"{&)nd8/,0z";e&cfonp&l$0j5E![耢M+eQwXXZWdDk)smoin kaYZk`˲Eq2}2':& ? !F"!W8 6fZF6yك&?^1qDc;UN[yZP i!;8{#5wqj-6jFa?SCo#@6BL\ؔQ5p4.x18Ax a'S Is>%^TQSlJR/<˘=d46OOR[ɻ:b^hǴ.ևPlRQ]0?G,$`Fv㱂C yDr[3UAINWT88=ZKHUվiҜĚ;C~ { "* Em0 ?E1<2@J's!̵vy~?.;*خcy}MUHv M$$&E9x D5 @d3IWY|7 a4 Yp /bc1z1HLr'ٶ[N5)y8ș]2#1'񬙻dl'dI>s}_t!ks.ܐ7E @Kt 'Ϩaܛ=^υC'«BE,iV?^|L]'l6GpG,ॡ}=0?&09+_WCAɗ@6dc#u'b(\k/Ѯ ¿,ʛP3;|ti@Y3Z); A枒DlFS)gM UTĦ q#\C{3v2#/] 96yac2gDŴ™y(8G !dvRv`ѧě2۰>=tI{<:ٕ+͋{kHR-Q>yܓwRZ.Kocd+niGcWty6P(nS_n^_4H# ˒_DjdPU-AZMSZSFฯOyyN%?x]0*Q,S '>Sٌ)t{a%2uH"":xUZԇۺmᦰq!mEN Z| i6Fo65 0 "/տ[MQ0vJo̧#6W}/yS,:_ -u_WWFŽ4yiܤ3I )Cӂ:H\hblx^w roRX߳H:^凴Տmw[ u^HPgX2g'xg,Ӡ$SB{6w6Dů\}:t |7m7C%!R7!;v$r~Z1bN#z^np/>jzbÎ qm22&ČtQRJDBU3#T:-WVz@i@vl7h(\Z?/>FWaTxQX䛆O3-q[nkyrt!?4z YL#nZeJ65̿Cz=g͠m~aD):!͕lKÆp&bi2AtL&7.;t@GԳ\~ae%44y߄ 8a,+kø.wv3@BÒmi^10/SZ6f=dTEYfwuRHkžr)4!!'9Cq8ӑZklJיQ\~nUby.O$  ' zo;icRN^2]#S5ŬS`,cwy}۲Cɀ @kڴs .a`o/vP4ξɜFͧ) ^~fuym3_竡e=e8oD6KUzzE6Ԩ֡e!ny҄NpUX1ގa* bMSId5krKg!9#Sm)j`#\'Y]7p(<znց8g~Iە|dR>DJ(;9@O_TGMoК/txQ= 1fK' lp$c&ML6͕pU)Hu\@T=Gͅn[H ))K:72#_s{'Fv.Bk׍hkx\zEH[|bfۆcUH0\꧎Y蹣83Y&DPP96t[j6ՁؒP_&T1 Y %ew#>p4Tz~Fp> d0;>M hY\I<˺c=Sn3VG#>]Y]Ȫr+ t.N3JڎY(%6JqqW0箪4J[+De$[r멦ǒA?qġ,ƧOpG8(CWV(ZrI&W^ =/&3{b9lEkиϪ1!sZҙw֝r ZH΢o(k VV].1R;60bXto̚<(6mh$U:2$lM:Rphc eςM85}$qUb;b'N&ҫPDY'K"{TfUg/]OȪq:*Φɍp?>a?r' -6]fzTa1);<^:P_֟(.A8sv?89qk EPR|!5-1Mg_"k4Uy TzmLbƂ 2HL0Fϲ4uۜ<[x":Z޴RKck:Wϗ)Is)<5cMbꪯmuq*$VDaAەI8+ b{%4E7)t`KYpB)TQRھ~/e_.2954NýH.84wݶd s-'Ȇ qC`ZăҨEV(HsqQRb.,FI%;udn2޹$ O01!A|PAfn*g¥[wFiWs Sѧ Qɾ3#LOvv!E8Ѝ{PDm'SICq^WC9"pIĽfۉK7`t""䨃v.Qg!7%Ud7ex{`~o:9\aƴqjyo>ISt \2%Eq*cC/ "ח-rXBcD,kW.2VUC@_؅Q>J.hA̧bzYUH8KJm)%~0EǭTFn ԸDP"kZuqjik,.P @7ؒ(QS)4_ Q] uZնtLJ%m4 ?C:(O߀S/s?$Q?6*WQ_CvNnR}<ϺEjU#@>dƃʦf| |{}7l~L?鹍:|Iy^|[X?G.lz_# l\8q#GH>pZ _[뵝*(ܓ B1(‡gE:J֒eߏ>[A EhY+`zE_C/P|3%glԵ|W96, @݃6rb0IY(RWpR )<"%K83Ap) Җ듨t!7GAm{h6m㳫3ϜZ?nQ-SP3}6ƠAV}kBL5$ B _3J ew ȅB}Tsc[h<)er :W TTk|xc򄢤`V&Z_tP?82|i[!;SzMEXtVJWaZpdҼ}ğ:Q-"ܭ4m<>m+>cur"bк[t-?.(8Dhh {\(U0DıD \+`au/[0ElAc(5cߖ%:e}C&Sh#F [ ;= wkBR5{`֭~D$"ƐWsg):58PXwL_A\J]Q;63b ƤvK*tiNЩkIu5B UFՌ.[LxJXQJUuk ij:2ďbזw0SeuCfZ3U0n$2ը'.UIO,fy0ʸjLIU|̪H|~R GYi4K:>뭲 TՓ3Wt0".fݤF=Lۦ1|0:ߛ*8l,O%N՛?3[c( ]$V7*z# Wi";Ţ>ܒluh,4*z"Wn% P9f 3@,T-e7Ⱥ:1^aE?Z`}a͗Zk?(Tko)@n+ L'&)H m|~7я8ؐN, yy.}f`pHBnQ::*i=lh|Pb=,7G)C~Ѥp@*r-zW60Ǟ:Г7`-[>eMaꗃ!|˴R6Tn }(Gf W9|]d3TwLN" Kj;8~b ay  M>:3= "^6)ԣ3 ^4mNBȼq1Qyil#JCB,rM|ɮv|Ńivf35DM CMeiO/1qE(?t } )yklɻ{ 1~P]wlWտ" t᷸TRܾ?31=G>ɬTH+Eye+,TM;Ѳ C0,-=}+Д!6P ӵK6aWTD&>Bq5 "$j󊐇9%a2z9:V{RxBRB6aB,nbH3it]DVX7=:BGm[+ڄi a>f 'ǵ;&&A#AΨ[<&,Y?~/F!VF0`,ɥۆ\a&H|6+[2vSH,ccgo;JA2JB2>XB #/YP h7f9G⣰ wom%)$|E];8ےA3"ܓz V&|[8KxkROq7:TA/ƓT=ٿ 1,Ew56Q֖aEľ)XV 3:ԁƥ3ɓ XiP9I^ϾAi"T9d`jp!xeVu`x%- ,w.d(. T'$N>+ͼJxh*d|^-I\7GZ52]kdd@漡m ꦟf< @5-k,- ^l76Ms+HQwuA10t7ъ=eF!o£="9v/"ŗ/ir!?>"ϭ$_ :0"ۈyʠv ? 6:j$Iyso*,.-xaT{PG5WPYτtB;S=趩4^Ѥ'׬!^4SG˒2eb1S [Ɩr+5y f3C1S_kje3pG@E!~C‡bTln.IB߼%(wpQ&v ӋRЬH/MV^+m%+{O%/'6ñiOmU)TfkYJ+AodffBӼxD]-RؚQ$-DJ r$4Դe/z%2%ᛕر]6 p3@usLS0.aشMآYh%;D34{"6|gj3O@㿱WoWyBM$Kݒe[5Uf~(Njx]}E(5Cs-[=d.YAqV0ƌ Yܥn̓fu9BAM ]|$& ?_gμlf&IhlM`Ȗwurj3'Aί&7x͚̚6]2DfեO49}VR)rzfsIhCMQtP E{LR@([GJi0Iaein .ed"#9sl7 kzagTȲF%2e e,;&{L("0˱_8+[̕nSXʎDrwK띱 ,خWGP1܈:4<4 .2eFHk*e{hiAMe 3 AFv0<` pu2PZ*xY%N3*h\|%*?3w;sDА=fx#CzwLϮy#׎ $e+NRV{+#ӊs$u$!s)@Q$қz |-SV>8|!PxǼ "džLmHG6'?mܗbЕk"fOSze * Y(hF$sƋd#SmXiQ!g]WSQ0lx;zҩ?.;*'N*oGO;s~K1[,g⃵XJ <c39YzhQlXv l۲go_Pck!'FΗ;^g '()?qtl#b)q|=ޙXS~Ang8"*eHM}(<.n'ςbP,suN)@Ƒ8{IJ( Ď`NR(=PQWI+hXG7xޭI%,k[U̽ZMW~I@|*v\Gը~Hܻ!J*c24Pq:PWU^+ϴS i-ONčlKYMٓFCܪE(SCS^?Ć i?V\G6b{E>+Iɺ|SJ+͘>*_7s_>8g)&XG|Uls"1rULuBrGN2߬@Z\Ug?c(4t=N[y,S/ß. #`3 uK+&v9靈܂sT'¦C@ov*[yj:Ȅף+P:SĦݮFEE֦6,&sd Z_f\{ WEsWId,@QCEr%S}AWqW]Xadx!f4#Ky31 PDoK* Bw\^j>˰_]x{F#U5a ߈JBglhncadXQ1}ܫvV[sEhW*TLvX$yJ5j!T *侕*-IۉF=IJ@PӫIÊbu"S~@EX&̶`%j_d2ekw#H2=>:rK:}Nn`1(E`D+?a%ӀEIJE.ҟᢠjo GLqv9 RΊ19|߆Tl4ZS7=ԇ}_rikkc6O[Cu ҚafM@<@>x6Q;FɑP':OOw|m0~6Ex1Yf r"oƶ>MHy_m):9k$]$x@`X@hƶV=$^hްe8]-l#"D>)+Nؗ įe~J@Nxד!/3q?B"' Ia}i1'ܺ2?{SzUDK@|ɰ \m?1=Wr l ߫=PέO\ ԿYh;?bO{:>t ):a*212s=y6/>M~V-3pd5jPxX|  'oT3D9CK Jfb9灵>b.9I07BNƖR~/jZ3) ap E:y+}sN29X.|lO\H l~uJDe`_L0/cz8;GP[$cJd)5P0 U׻Ce.XY>AXh% L*Alae.|\ JAK)p{c2`1I%*B"5)SCQ;n{<[(~[F?d_c vJs(?gpV_p)(P܏`^9A\3d{;"bCb s\Lb |&  }PzKi@G hɭkÉx|/mmW QIi&~ۖS5(/L)iMJ50ڰv_=aڰJG|=? ksPڮ%IN3z\.{r_[%,#G*}ߏ5G׎̕V]:xPX"@ץ1w/TH x4iR.;XVKw^,$B3,T(b<P`Xx)niv[r+mtS@rsDPPm4 }j|roW14XӑTԉ:Wwy8P_VfIڬ],SiKtfp( K=[cŹ*:&m{r(yv>p/<58;1@OQ;hۗ}zi'K be$8C d8)B $zPh@t3L5l:x:yvBKs `"NDw۹hknq{R0|" Ѣ>\Kw 8ʹiS*uɚN /4d @=R P\|QL~.{ɴ=6} 1ӭq-%Vcm _jX%/>Z}̛V?HZ}Ig*d`ٟeO*=~ 0Jj+p(*#~`|DQ|&*H# n:oV PM蔥ag*-nʜS+hd<+ d<Y"(58$(k'꤫|dV@gK_^{)FYpj?u%@s@ yfDž/-nk 6wt\j88KC1^ј#_lźٿoňhَu*!|"n ܛY;`@wTy&]BdM`U%!+鵟Kcj{zJ"5K0ԫ(tP*aE}l< TsλUO. 14r1]p,縣gi,aO '2 tfo{0аu̧&7[iƂJV&ʶ}8dtUx^W,LIJBB0_}! \h8OߒG`RzB9Tg1k~ko r3{\燻PTk6yEQ[o5%E*R\_֭tkKZҮ]Η{ߺ`s ^,v{;]Y @&#8}uXaD^Y3%ZΗ63]ԡ>8" '_Wck&uߝ^al{T8nN|oRlGX]A(N{y0ɐi?dn0>5cؽ^oTtŚ{}M+WP"0/DrۨrH ~\PRjo.P1Υ8Q[C@X#cBg[9B#K ٯ<[]=4WR4kRά,,Ō%&+J*o0]<'C,jwe&g OpW6oC &+bU?R"f EiJ&R9D)5̸ls66fF{glu5͑xsݓPBӲBz8>@h fl݄=N_WsjIP{[P$LALpCcRco=Πq<+94VJ b;GݚMe+s&wBX6Qkm|8wlѮ}2/I*>uKfIǘfWo˪sY]?vЇP:yy-W>ڙiğ5DzR՘M|3rƻJ "au0HuAI[l瑮So/L+YCQTgϤ(b|.]xl͵_iCpUv%D6HiFEą "w}>f|G91Ip/Dm#] rC.$dw{}C%tYw{Ow퍸8vAs((J)$"yKwW-E - IhܝFQ-JfY ڪhYśvo8r*lIt6CGɬJTvYXC,FzHz/ȦRZBu9EMF}(jN"Q+܌lp7(jMӈ`*e/<܂.>YLތ#i!"m$|a?wO}f?f u- qK3h _&cjeAVSuL2A` ^D@!C7Isu&5|k1 3дPUxNgR|㚿oF{G/a C] lVnY@/3*(mcP[#/"EF+-SY|v1a=(;^B @#s 5$4T6A`!4n{~,a=oZ@mh Mf(ag՚7A16#e*z˨ҏo~1͞4B wM #yc[_K׽shKse?h W 7 Q.MNHx?,8D#QhPcOISC3_ R46 S?@0]Y-D_ʾ jbH7$rj$-z<Ƭ'͒$ogGQp2 / Qq 2ڿmUFNݾ֠;Қqm*x6~ODږLLV; yJp)I|Րu#}/y%[WX+8 /lK1 -ivO5l||~Wp)\ş"i(Sa,ݶt@yz5k8|\ow 'Q }|Co3h]Qr+N_v-`q'}Hjy<9xɄEasb҄[ZDž =m"*VϗV+#aCF/xoit&֧pOAЂϊofZMK.#VQ6rX\r?젴bi\oՌ ( J`6fsY a=qQjũ'IoC;S TO ]PT/;W/p0Ԓ5`*A%LU$2x}Pgx)ڔK\/M yO9i)VySjSe<#>FU%4c@3y\_f (i50,ܱGzRYaՕo`J@+jO!9eHm܄+@_{CEwfc({. 1\\`_A^$o{::cH^b=cq#Blp/ӁH"g_?hw6F5/B12tnYNQV%B3#sz^5~v7I/Z8P%: o_) 7$ajӴ>aaHlMn[OXc^RʪHq^mX>t*?0\iu_*:7XOBd*2'p)jiOV?*,CR'7M*F>p_T_M7csEFVͅ zPe,Ѷ=rA&+F4m+X;u|zĎQ"lT92D{<E`ζbI`k e|J2e- &Q?mK0e]=| @< ʬJ.mqnxr?3"u蹸O۸r8RfTsCfGHM _`9`.-ae"K9F=jO)yw^PfTdl{;Bk/T}4@|Xb$6D#u4x%/M5L%"i@d+[y)aΨ # jŘ]$,' E"e[î`0Ivoh?C]UODqOd 4=)<ryMvu-Ig!DgaE03;SLt=qٌ?:U.%l;F&>4O<HI lWtFZtΒPBaGQk|b㋡G|G>u>0ZnkmRy)b>똡p%KRakS%&vuVzC_AC2@9Z.8#쎄4lBt)L0.CkfHjKpNīY>Fz U$+(YEǹ-" `˲1MXnh) f&g(+AmhcɈQ?Nn iGI'ldK5%ȬDD _tD qY?Xȃ[}BU^p5&U\[lZTk2O [aJUw// +$tb9{KO s""w菭QªYOj*_wH?-WSe.*V pb[+ȖX,׺m򮽱挢Mpw^BҮRLoK!:Du;l'UO_4b@cМ֪N pq usPI03~TTLͭ\hkTb ARWmN1G4^)lVVsI \^/g :Hage11@D:nSnMkfj`p:NJt=ބ@ibX?O\;3oyc X_ #=L޺(j[g&o4f.ѲE"WF|lUf.mә#(@ՐXKT"tFW[=F QSj\ХE .#E\+Wnh^s;PH7seEǬG<-[9d\ZigzhK%3NBY4/_Z >ƫx2a=q}^`a'5Ѽ>?) tQ=/CdTCd+9<% n(=#.ǼR+V7O$Ռ]),UXb ;`SلdR=3s7qT7Z5ԭ$Nby Pé-HlܣS|P+xGlvQ WI!|X ю'TKV8 ¼9,b:+y6vf˺BqoN> ʆTWa%8̣X)-2EtߵY?&ζ鸒+`Fy^j.wEcK\7{ >Mm&ѫ>'fokuDhMjnl6C:c9gjw_L5Şͩ\]:MuG} Jo3{.z@M^BdYNvF`Mپ?GӖ OX`$Y\)sL(84T[ mU?4U<Ɂr2b!p8 J%M @WE؞芵RTLY ^12L>6K#CѺM:\_ؕM2zr\tC{Q;鞰Qn wtQNBh5["j_uE6C w^y+JScz:Gg;-GD Im)>HfC~owrf 22Iaqj3-L~/H~C^E&Rf8tGR)7`,iCf \w҅` YQnn {0J٬h4Do18B-ȴhAHVhHCؕ۬n@{)!u5EY%Tr@B[" zwHQXu0_8-~*:C+0IӐxh^z8ZRf޴ G4(Xe2zzDZb2,$đh*T߸SEA"BMiOe+ ju %8<|`ٲj!2ޘz* S}xwAVUt'YyR+&1Æ}' 4rY/;grk"3Tbq\eISj UfI _+6vs08Z?U2d̫ /I=uۍ;:% h%zv8:aih(F;~#g >gMwa?C9B8i3߮/ ib-~luo$tSOezkΉXZ_h] ՘9܅x:]By(-r-masFRXP2sYLPĊ f_|pf6)y7VPҩG7y`aޣVo+.I=Au;Ns{X{aͮܖE2Ӧui{R:fA!sVCj+xlI.5uwjbHۤb%γ[u:}Ub"N)*:L%_d H7t" 5 %%ȘLe!kp:ÖZb-?am@?SMZcI_a~gђ:!{@$<;Ǭ&Cm}̆Ƈ P7T9~I|!V'E.%Z}oʩjS`"n_C4 *&jGNBMSJR$ܜ H{xiC,0R2DوGN}hgЄǂ?eLgǎ+-"@.=wp܅pn6-J[ TDi PT3͓|O;Vj=eZ =F${1't6 U +E6}8BE2~jLTH&#d5;47@9Qe!<+`q Uw (D;?Y=˪WDse:v s{ 0I]&!!Pg]aƗG͡9UŜxr ŃUr&*i?N83wnЧUtwܒf^ 1p|,{7bc}ooXGNgSZܟK_ҳhuN,<;i UҹWlՃ[:Q$S~Pk5P翹"]y 9]BiCҊBP3-yэSpaΩaL!ަhGfgQ˕ۉxWK)M =>-a' QM#/BT/%q=1pCk1ӳP4 s\Wa>cJ&vU:΄A UBۧ8EZcf9ݞ"~g@k_(UI`C \H6|M@qjE4)Fi=Fn bCX[>ZhE+o(AZnP#^t]x}i!>6:񕽛au9Ha=_R^h gv&PhC[TQϠ Sd{HwQkJ _naթzE'P`NTF:2Y:τ*;9#7:"{`Rl٘OU/aeȺ1!!Kd5B#aw71uW-I]]Z`K?eFCo v-{ʎ~}:#` h90nOy#cMqqzUJ~[@KaU UDmyh鈿eh(BԹ=c$ Z7$W%Y2Z&(?A^  7Dީk;E}S?ryRif;x73q`x d)(=iY((HKt   ZL,./R|ð:-\Y- >գg BRĩ/`+9aKQ`W(]R9d2*Geq vW`tayǪvr]$!\!#%vIB??MY{! k!Ԁ=}=G I_n #u<V-1vLї҇'L6F3ti?Mbr_&nx{lAɻX[ xYu*+CRBCSe:B|mQYE6 6%pmD]^'&BKfP0bt3KlO`/Vr״tp>G|;w>u;ޑ*KBiif@ʣT-HhOg^(+  ?KeЇu?^zn mo}Wgp1|O `X;*3=opJ/}~2Iץ(>SiG%B>H3a"us?RafSؚA\{J2'ÜvyHep/64l.હ 1 Z5ev!js"8ߘU/AS(1 bRR؊(FX`:0n(r19m2{Zh4#iM U`cI5-e ͢Z h ǁbk.vlb mt9fz:t "z?BUveAwV*7f=7ǃg)f%WsXDsaiY׏;4 i3Q@|Cffo |(8Cb 5O / DZN6bAyj j3ST? rǭ~Ȝ<_I.T0B&l#@YVpمUӞ'[^|:7>LPy eEXj%=ds.۟u-<^Vdzt:6kj"NY[eA ܦ5=]dəBX12um7}G}Hv Pt^ݱ`/ ~XZ~atDB̒c'9_OMΓ}oZZ] <=e{+KͬEǍ ՜M.OܹOrtg#Mn cn B-H__7tz B||3}R 9{\ r0iwM,% AぎOe*%[Oz[SUӛԇdاlsXsL?W*mT[>#P_MțI䭇-m>Xb"46 ~X5 lfH .c0 H .yjNM%yZo̸^R m#h2֫sktDӲOk\q'EܩWio΃ȏ˰{@F|b2)?mH$-S\$G3=\t#D 8 zjK\H1OOa,At XQ!t6ޝ'pK{17?0 2ę Nδ!YG6@[(3XR 84ys(&?L`_J4Sv(u̜e7},t慭$)W 4LUB1.g?n:DPH/ wP4yck[25xvOMY _*aq+ˇ榴UB On|>/*!D7&aq/ɗ<}ɒ]sup ʓr W'"۟ƀbvNM>_ +\Ϋ/6Yy7ư~/(׽Pۦr_V^360%ICgœ{FS>!^h^~׃Sk*W`+T3% PѶ< $ʽsq>%F^5 Od%\~cMX&vNz}ĎcXD0FzVs~EҨ6b)qZl[U;M@`bJ1׏D./̽s@=1@i d]"L5h|O+x$mjG2.J>i#SM3? 1._C) -g͕|EB+c 4D[g0v<.i*>sTW0XU;[U!Exu es2dH˧bSnf0S\IK5IXӀc#9uf&X oM|8{$|mA0B o/^$Z?ۮ.:r[0-Aق0}֭>HbWGtIt6ݣ=߇u(Cy4 - JƔ\6i6/_}CgPV5)C aIsI*U*{As5[dR' jKjj(_F/l  A¦،3+#pIIY=#vk('nO3eִP D1+%?J<(8 y׷38{Χ]AZM28b'9JZܹjL`AFa[}tJ7UEYv-ughYDHLEfR*>4}.rIW`Yc(AM,,YEvxWX6q+U8 4X 1 TWkϮ^mgo30ȘdW>+:F3 ZvWR{Q0;+Y< pK9(.%Ͽjff,I1k`N;}lz0{a~Қ{vyYC] se.PH~ ;=_+ aKT߯ar$fEٍPw]4ȎyVkQVtZd㘤滝A>& N;MM!΄+W mfPݓkק&a)Ô(ϴ&.Ѹh١G7&XH]}q6Q̊+JO< 65 5r.jk'P{5j.I(x[+O gTzS4ӂi>$S .aTe݊F?`ْlva*{B,OQtlm:8I/aGrOT&Mbwh`Ty)*`0\ߍ:ރ;]rb!eR&Ft4*fDU? ܼGmJA\; iI\mj#'-4NW/m/,hԟ"Ut~:.gxdS"ZOXүtxs'xd5ǼdW}Mn#mA?nv0o CI16p5 v_`QuCFd 6G TS PJ}jߚFۨs?qvo"deTNpI*7UmV>` ʞV+7dEfc?4Zڊ+^%z'ƙ"AțݩWmM<{@!1LogtX{9ZHXFl rup 0o3lu w ~;ѴdR dlL/9I~q YBVA!'cQ^P)YPk|S1>~=- C#oуBګsT8!Y&+ ΋+~iI;aezuk2{gn` y[`clTK:n 瓒$drbD`߿D*&Q|uW[eEm-dk7B)f>i U:-o[Z$?5<ǐR8l_+ KAQoQ@ܖY.:_K'dEB>V]OD6ga]D[?9* $/g<(o?~lt`if="i_}ւ'b %hn=Xpfv=CC4Gl">_r3,øTKD˶7o[#~\?o o]Q̒f}epY8r}!-G,SS ^ 'q&zx#sT2;@,̜/[sj\d56kRlTM}uj=NQ˧fe>k%By9{-jG %;yl󓕰QUӝrrhZynfbӤ}'El4;+\ utU"|3i_ lD:9%'ju-=Rm`Sr.i]6*#'$ꛮr@ s!E;FXkƒ2[Å MKҹȬ7i$"@QIB^MU/ͻ*Rt=xy\oDI+y\BaI$"+1߄/ nqkr=Ύ Ԟ+tN~س^|](. uhQHAHSdhG%,M&l-"4b֍$ATgJC g`urJT8?,vF׹H59f5QDxY/c -ĕ :&5, )jH(N~S88Tw.JZJ~7[C|CzR8: Fjϙt#+Q*2Ck!#UX.:B)/9mpf {7ґQ*>Ov15o8{zd eNhy}S$O|ߘ_bHs z+fj\S^ ѾGmd %EF-M'em78c|J / :&N!- 0*T, ?&XDEޚ Z*Մ5u3- YNd.s0VF..( SҤx>>M$? t>Ԉߟ%{èJS_5pG3ճ#,PQO6VB i0_[dDuwn*$bQw'u1xЬ(j : `(/l/B>2Dj],yBP2/yL8De]*њZ1a^+۹0W~L'ii}& Qg gSF"+0]JmЛbѱR/'ɧ %ѿ05o↴`up2K%w,5HKpv߈`U;*״E)*;gkwшyezaX/Gsk5/y`EF3]񒣞1*Vs R[G4lja N 960eCWEAȯItxu“9-`.z A42[UU~,ѝ"!Z43o̭0{R 0Tr1%*sFƳP74NTuuHjOPVF BXzw4j*Pyef?+猭hr5aH}G4X&Y_!` .(ϐJ+h2FuQeT 6!7M/`$1\~q^#)(衙 &L.Ւ#ڳ"3m8Z(jZuD>"|8jhe-~T%Lޔ@ҋ J:jx$mwm=#yG(9@hT<e9(ؐM@zt\sυUT,h=.X05ֶ$@@9~"u8`,ohѤe$T"o6RorSe$u5+RJ,kݑj-M·h6\E +WE6Z4/a$U~x|0u7> h;v~#Cz75w}Z0J,aa껋JG/ݎM>Q ҪZV;wju Ժ8E`NY*r(]n`I.D)נt2)hWص]0ltb66$,.w,Oo(ut- (Bkٰ(4Y N~1>T&XS1h `UEvj~ߢHuXa-G;uУr0Jɉ"idDmM ؕebÅjQ+ak Ƽ=}u$2s{>@8z#+.) f!<yM +rô(Cj*o*rΕYmF8C00^;_ϒIOT޵_S􇹑Gv? NHzHxP4AƑJ?. {xKIV8?vSkp*/ےETIH]C~X-3 Us6E[j}dz(&qjy6cڤtVֶ0Ќ>'~'HҢo0Yxn{寧qH҂:Mh~uccb4ɸnpfHOUQJgH0K\G <|@b8 rjFQ̤+}(N&z00lڧzdyd|[&8MǮ& c\07=N[wR1cb~[Zt>QTOgY {åg4H'P'H;U!W8 ? E_'و-|? cjaα6M|?K_ ayxjb$Zman}ՙFƞ|T 6t%"R4gZS2CxE,\G!6 GOYD i̎H\4M *5>Iq}5clOAjNV3lP#0*d{"桯9$U gg[FXXTW />eyraZݣϻ1FhXi}]iRJX >EstM[MjL:bjg:Z5>BfT+OD{K>,Xs^@݉wG=0lW}}-{6ܒyaF&bڷ2(| -Ni3 a НIXo{5!nD/hfta\I{ZxQӷoRNiяGÔl5ǫ9/~Җ&(o.E5VLd]|Ğ9*3q/ ™#O; J8('dr6?u7J0et/1/|DHl Qn'oJ;Ҁ?Vܸ/t_&\߿;Ceޛӫ%+g ?"IH..ng*}.Ye+nK4F^q VS?6ؠjt€t65euPo[{Y?4md yY(e] =p a3SNbEC,ȝ2b6 NB.rNcmJ]G%iӝ A1,x-ʒv_5@+m<J/>H]TO4(!C>= ]sYr)IN XnH e*/._\aVՉ(ײpD$\-ހ11%FَbL;egMvJH\-v•U$f{6|-SX-W8.á~> E*24G;ɓԘnڊAc }8E Μ"kP3FG܁/#]j>ЛT}%'3'Ed:>&ljx!r|c[U^ K=:^VmpN3?jzʟNB]e@@M%MԳ0ew#k"n)a`[s^Me (zΗPx8a EcA.A?,=!!Q9tN:C /4J_2H~? |N~ Y Y܇c_d[ 뢖 ǫqi#~5`,\\syTSI4Cgs1lRHxOOp|Stgk[?s998x,6C-W04YwxITW: YDRF,I;boVеHp1L9̹P36^[Ϟ[H8,)U"%C`u~|Õ".;Gcsps LӍ"j:!V P>B:PգU`t4'HMV$L/Dx|.:8Ae<~? la[5K>J/04?乂R:s 9 ]"$lOg= [as;d(nt:l_fϴ@~iP*WR0?@wò5L1`r\7pK9i(U&hX嗿۳Z% '?y{0}J#3[.::g2Ű}!<|d1 %P2}QOS R8,- O׸׺Ej"' bŽSWob0jɏ ƿ\}#Yk4u_U8YLoY>QnCKo)|k~/GGK>F̎ \b,T1n8k]=~Շv٦OyvtI9}@2)˹[&KjfND_=-+Hڃea=vc94q^ќ@-Ra\mk 9t*& ZGT "2t>!JHЀXzBo#j ҿ̈ĸDDpD.\*Y%)rukNlƲNnO`E"Cۮ,i=@W'A9!]8,v`_Փe ʔ%us( 1ѵ9/cٶ.#2m%UTqpON ItXU>Sb84۟yHn0Ή̚=Aƣ>cW)W`=K OEh ~UPFM*r7!ɡdhP< X֩r40w}tٕGk þEkW)a5|/(A,cD,G4 %qz>2:*9J*4&U/ T8nд ]N0bы>J 2Aiz a'^NAX0v&8@u'mHQ`b>M'ȸ_-}*6J|6lVlu7Ӷ"HM3h`"ELfC!X͒"6ɣ;DUyx}dQ=Ԯ$iEVJʖAE_xN˹ DΐQϹO,w;G`^,e q6֭*: f2&l {Ve^Ht s_RI7 uJwK,_fƴ:*`[|Ӳi2rtc%2rV)px$dǾG\m8sA2&!r?#ś@ņ3RH<6;+*s)d.b&~\2Y~o{(eAO,u;MSӣ-u r F؀Ee/튮o(.R[h ,L S"Bze*/cmun\LB({lͤ'q_!0GD\e6$Lzܿc*/cșz&rX~GMboY7ԕ0$TghI]FNT f( Ekڿֱ@]Tޕ꿶8 SŽ*cmy)z>\<wZ£Ssl"qAzEPG̔a$=(RuC]Lk /4=#gZ*lA)ǧ1p>ke<)v_z{o(B`6t;5cl/?6|QG?EhWZOc%M!:"H2|y|- |J8*b)t> PM(Ղ0!:Iڠ?Yfb䗇 {[Ch w/-ۗՍ1E\M1Pc1`hOX:kf":/`td`m Dq("|i%56IC[KE$j$l|q*&*h% Ce( G] zn!L6VN/3akI "e6V*wӴX -mluSBNAg[ # ЩceTwmINAh󔟎=j&Ta4]-rv!pFol9 ljpSֵGߛ`Ԑ$ϵq\>?C~~[| gM:NЍ8tdSTHQ3۶Kq B(Cz б7m[M2B 5١yt.ЗaI^@dmc"ݥ;4>햽yK{ZSP#zCd^n]8]?p"kK.܊=: Cl .k-9K "EmrLc6|g%PPBbpwi<D8pZg|H" Rf M,=(@g^7i),*$)ȑuDVXuX@Yo~_(HRd;kMO0䋿KGAݡfm |ѡ_~Pji2aZEȐT⼟؂@|O~Y; kq?n{zWIP4(jRa?`ۄ=t^!Z'ÍՁ=Ds.?Kx "qK6>-y 65TS tXM s&Lv} x UM;k4 CK.Nz 3\_ҝN^VIQsB^nMd]Q3<#HfZ9~4liZX|S"o/qyU@]OuX$c /|`sZUMf` |x͘or6Z6BU0<zsk6v,LߑH 0F3,7b["yW*o-V(Q=ٞ10<<t,v(%Եû~G)2fN S00#fnrl .Oy#J! Ox]&}Nzᔬ.= l~M>!' i\.\E3jٓ0{)̩:7) _ql,\hL-︡X/@%:4eK@MBD0y¢>4 'd r'/<:'▘R*Vlt< *#m}#0T7i}qF)aT ldDON+x"~L]Vk Zu~dJIKۭj̿jc2DY8{RH0rJeg]rʿX,_ʱ㒧5F02n\Ep NM4ΰ|D40[&/ʪwc[iNj*[46jl ~2E,Hh' Rj<03Z:;\$7e%J0YeLU=Wݑ`y!;@Ys_?Q`!IЛ^WtI ZbE>oX7L *à۫9#Mz:لk~ ٻ!hSQp1CX =6,d U=:v&/Yi>{>8kAa Y,r1bP"SZLUU'na+41(xDNȃ֣Qn%'oxM 6=b:3 ף"&ג!F"e+Ξ℃(S"A8ܴy;d; j(gY@œ?^eDZlIr]3}Ob_ؖ$u{߆A}C!V+!^Ӈ6>/&|,)MԠjM?7ޜG2FѓfN[t{0b%H2~uhT4SoTjVAom&~-1,un'yN/n][Onɒ1✶CʩX`fcŊgh2.sq. ' C<"eVnU{JFO~ZS KJkq3cA68%sVˑyF|$mXY͉B@5=Ҍ]E1tJn;>٢JwDFtFۘ"8uLcrݭպ:V!YΝu7qx7e#щ,U`v. ƍD/kW\Ex B|!#nY+V#0]%њ}}wm/ -iϽtg4l|Nw\P @M5f{[6`zǨϟSC9NV7 cÓ $l`]m^s% ݧP(iRbhv "s1'#UHw&Y_ؖrŕ㴔 bkwme`ի2)(K1S+x %R*:S3U2X}]lrz׫"㝽~-D1z S*@&5Zm6~c C X8A6u& M  Z.+ C?"6Vn6\DY r:W×' ޝPͶ#=/!WKd%!rJTOY.jLAh6PsnVnۅ!H!3k>R.7Qlޞ7*Pq%x5Z s"/+7Sa1=;mU`G|Zy1JTwlBcԑ0!aôs%B>6]βF"eO:3QYxOʼnjqba4i^6%7O4u8}$WrCnO9!bfps%)}fZ|8? KI6Z.~at꺖 [:{#/wHHRdWKG\!G.Pu< *<^zsjpuD_pGЛӨgE_>+%O|Nny|Qߪ|Z=@mNyIшG QW&7ba,ڄ(1n~;*{d1 Ѱs{>Ay9G`YSΌuE3s > u6< jQJ"$ѝ9}Y\d'A+>;iZN>TwbkT'XY6[L辷Ąbbg۶5eV')Q-4>'IN=wNQ;K_e椘8BlN1K*oI5cQ§! VJp#A(tm^u&_N&ygx%űeoأᭃ`6ܱuAt'Ff1b(tYxCjqK TuyXuKj| w=3Uԁ?Džv j/wMdѪU v/gۈ9ФϢ6zi`olZu_?&; u f'bVZ1ro]Ջ'KVyLZYPĄ'cDgIյv\+0s#HYaBƒu&=FˀQ-gVyѐ*s% F@7 :8Q7JJ/QC[Ac#K@tJV|)9r/_c';ע7tP^ԀFCm) UmRTq<ԢX]ƾ)VSli"|.鳶5Qu6nU>*%گ %+هŤv{J Kl+(PU9Vyfj =M\ïJ^Hd9jdFF^.TVoY ?[&B_X!l0+EਆqOXQxS,Xwr~7!yB|ȱ ̳gL;s'MJ ?f"ZlmW\ "CjϠrrqW 5 ;^ Y"; +zѯq{(1O<`?4^, NgxGKz_)kveW~ɸ;uӯ`Jt,y Yb3oY2Xk< [KՄՈ˜L;GGPNl]Pse,jx Ux1fT.TW|U؃'}ى#U( 7*98a}<j@0CĽak2/],A"FT94(eH¾!NoXf)9+8ji'˲T>q81XGhTԂnjSL#bC~xQ`t>w/J^wD!x$v(sՌRGS:qw}GTC Db MV%SM_z!wM8 (wN6){٨S3,z,dy=>; E* IiWLo JBZ^7Swh.eɻ$M)a8SL.Bk"JwB-\eQLaKXK.Tƙ{mQZ] Vd ըX\ُOa'ERUЅ}d1iejʜ1vmLD=,ipr26mN@z#* mP$$sNdZQpMe62yl$XË~Xǡa!jlBLn3t@:7 &J|*.4M&xQ 1*Ik۷9b':b"!K'!l|lؿYEθmQx!8.m1\.{HڏKa8lO&[*<'@GoJz s;oy@z`}gN';'xԽVl)_xE;6{x([c uha&DWa v,׆+35_l !1}/+KǛYefT,~Z. R:3UGёx&h{_ٻI~-2zUlvNF{iB/x2^.*Q!N .P|CgOOYO}R!4(uvޓ`取|\CX'_ܘߜLb'wr#g2nf #E[TR1(XvgbdFYΝ ק\W+yԝsіs}1P7G!N]~hQq=/aoƐg}IR8VYr-ξKӘ(JרuPKj F 7zdT|tc.gXM1VzGJ7ۚQŖWF[ hX~@'}AԾ9&V:3Ep^x9Fr}ˊw7g|܆>iȅs\3(`V`Ke o_)3Jdj5-}|&.f0-y"BA_h{3jY4uDU@9vu&\_! sri(M|>MG RSay@2^D눦}"%aT!Fۡ,_M OtXĊeVYf;8jllմɴw \)\`2ARkMďHfTMl2-* pkuX?cAH+jx@f+1.$j$eݎJL@Q5}z;ۜPM\$`ShFؼ6 =bӑ1|lX_u7Hţ<BYPסg߹b(du0Lg{;amWjH^!@ dU}^`ݼ^z@޲A7)UyĖTגQ%-h>34;x6FQ`EP1E8mtR0Ӡ5tsV&q:dN72`X J{(Swu@|έH;M~*//MU@ ɧ;J-ٙ3| ʻ5;ԡB*lzE72#^ĒA!OFs54]X+k^`Wg& =#>dwQqP0e72v |>!TJih+ঌ+(vbĺY-w6[P{$g^=W;>V ŗpN9zPah6HЖ;]濠0TfbWT h!v.c=NMNJP# \!bėe04͗XK,y]RfDlHQVXT 32ZY Fq}67{׊{sRW(y՝x4"7ˠ{c !u\2$ƭRx:Ƃ/6WuNDq0-` #gyH+螏0Z2S: EÒ[Lq 2ϯN!XY!R|Әtzظ]w\y~ J ThyܝcdV:~Hb}ic64VPx9#v~њKuh5,p=OFϢR`$VQ/ *'SpX|-ɵuաUׄꎖs*P [Qި^i]qdާ$d+m@?f%|zخE.+NBBGN~\b&6Y84#u@M|'5S (BpbO"joa6NڬgՐRۆAKá۾^vw۹l6H,ޗ vv1Ln|"nm=<`KW\3Q%5 Ą?aolO_;KSސtEs9׺0LܱhՆl2\Ts'U^A$ yqW1-yP)* a0D=5.`uSt?VKkD U⅏%(辎އKhї1E(f"&t iù?ݶҴ!.TΌl@Qp.Z7Ql>#)lI7ftx_ds._;Aڛ )=epPC8pk-P,|@{)~zIo$U +<`֛8NUNrVdUV]USRL5,k-4 %qzmnS/ྍ;5P|N$9Su6C Kĕ e3m `ޒ*+jUrq)ΞqS힕q0O/RoZ{ ,Y!G;X+7 %\D8 Ĉj7I]{U ?Semkݑ#<;P~2]D7Ft~Ml"Ua0kPD{)D ZV{+~-6߆ Z;M$j#-t+0Gi[Go?p&'j ~+_K}|E'՝O >eI&Ҩ"^bl·+hAn{~VZy`~9:,)/D|;E@:0a!Qɩvߺ"+/tޫoxH ˦4ෂ:؛@vT-3L725gc'Y^ ,64DZ䫁uXAM*bGz$/م(?/^'J$%~G4p.5-Uͷ!a (Ptp/xIq@$m4K/ O=FЦ<ôӲr #-,ܮ”e !!ZPVl6, 2@AO1d&%QꋔUP-3~/- H-An[Gx`qlc_hfdYS Ro/UF5nUC>q~{tG1–D»K ߔ0et(g% 2AS9`YQAqm֨,_p ;cԼkp0 _Xu4~RRm#4,bPt^8[; ueg'΂gظQ?JۚD4Bُ|@Sb $fqMR%'Ko4,P氀g)dzlCS+ ͿL- 3 @a^i@*3fy5O՝7ف]` _׬bt{y¸]9_S4O:\ px׭Jʷ37;KXmv*h6mL/E9'Bh*מ БfkJp'7CFC9%aAfdq|oo4\Q}IJ% `YpӻEMƣ &c-Aw_^2ǓJ䘝#r}2saFfλ9.&E?śZnd.v=/6EXFJ(s|-UrZqe^Ev}z=Icw{p\X*\Qf90Ѫp}$r K4-U$0$"n\ACˍ7 PHb [#ubL=&K՟j3ܦY!7yT1!.>[c { ^b~mU/03[U.pz e_6o[|dR9m{4*M9IUQGTJOAB9}tp^{iP4Lccv?A]J ۙh:w7jjzZ%bN6 XN|rS +PL2x7|3"j֚*N='UD?ݸab^%ƢRz-.-h9^$Pm9?tɬ1c,`]MMh9HqUFc~^ bfoVG,e;-g[m+' {fcM2_+yh*,`b IP\lr&c`*z(^2ZyjfFPcJuw-2G5ҷ/Lr=G+l'hᢼ7ſ)LoxXC77ʞm'`^xC3fʺ{%ԟu7 d*D$aH?-r3-Kԇ$cQu<2hE9ǣjtMOGt7]_vƻf{]. *alHl T=?6RAx-ԻLS3yeFs1(NW^ E`mKcy]TsW5sq_.2?*v5$7;Pm 9! Ns,CO :0-6"?[Vl+ZFD8>v$F/6*daJ6TM=I=J 踢흫]qlWf#F9<5W $Q!VQtף.Xnt!mr;z=I2BM'_k$8E^=dcOMPZY^*Uh?|*gXߵPA!*7`21-]h1\Ub~Ԩ͵cMj{/~"`_ L]w,vGm7br@8-GhD׬vY)c 9g"EqߎbvԽJ$aU4PtQjXzUJTFLWm^v#{:r )L$x&l{+!{xE}]5v4p7t*g2 PCJjbl`:a5Đ[s(u6r^BԜqPIQtzc1"K P%'CmZYq]Tؐχ\yTbzrY7b޿ ̐D40 tE \m;%ܠbxs:[6\>~C+d!9blNg$ʌ^tE`,Aj ͽMJbb}96/'ܕs.i!z:1 +hJڟ[Մ$%_쐬D 6+8UF-~_|XMec.8u>- !kNK/$`A0A\A84/ $g O{~tE'AєB3~Jq.mȐiPדny) hG><;$}kGLђ"+C1 BL*"_mA #Z#;vAz?WBat@!u_Эf3 Ek.# KfBMH<4Oʶ<=gӂnfAvsUZirUڲ;dhJw5̯k#M*A(@~!CH4u? tؙDت>'z7VDI_ΏQ GwqTo[<׋FBR+ #Mg<"䂥Gy%EJFxHrnԓٵt!&P;&Y^(Q||q56>9*7gK 29u€IfoLׇ-߸|=v*樌2[s5ݾ/DZ:HjBl36\ +M65\ hC\[,G}KA_ ʠNo3!ZUs$EFX|E(ف*z!qubBCLklwMfЅ?pL܀ZC?n;~&S˨IzX[ݙ~؈""@TO5|엖 ҁ;:u 0 2&5n;hh>\(&49ħ豉15)\+w%Xa!Y[36 5U5+E+@JtIsގ^;%F@B!]E6􂺀~Ě_9T^ Q_PGp0u0}50:yq7dMNw>[&\u7V|Rʀ=4ViDE)~+s1̉-e93%3TO|x!>'WLijhA𩕛Ҽ@/Q{^,昲 DܶCZoS-RםVL߿V#9h X/Z6jHkQ-VIs ϑfYH_~qlJ=r[JLs>;$v_JR)M !Zm-Ձp]oh $݂ pυ[dk\&1+ IܻM;T{5+S'2Su2|Zv1_nmυv Zv|R}U:<2Bgp䕓A/.+2Deܪ K+f[:2g(kaʵFغDtp"Oj@mWAAwǞlMvwR@[sV-fA4R89,LjH׬D0t$f,G%ț@zmS6?=ozӠeR3yNѥ .x$I12OV ~JWA ą٠BD~{39Ĺ*|uuUBqWx%07iq&A$ 1N/Js[רė֍!ό%A5N(C+D^&p.?;G ]6JS)}FF"' Bo͢qXMB~S|ԮHD;C2v_HpE]r9@jڜ`r΍J1LJ!i_x wL^Rg(W:*wS NoQܦ 0M1%b{1>p$4|zvH yŔ~*6un{Ulϰň5ZܐF7zLj9b&bNn^s6T+`XKYa:]&{O@:ݜ[%OK*Vb1B+>iIn!ZOڂh _mv=\'zi5::8~EAFymꁼz8N(v@O@>o$KtACڕX%w'uR?C(;vm[(覭VD$q) BLo2|%;puQP`鸼=ҍ*Z1:JuނQf`B6|7}e% UtѶ$yVu8Ŀ(MU@J$[q҈~^#=1y} xokTW0E# a%-J̗8)-pڸWG }1Nߺ=/ge 2"k(Y".)y7&n- vf,㨿iFRZu:KFӅ".-Y QH {onX[ |i/nd6nxu.Mě}1 nDÁ\OI.B,EUp}i90Jthimp%w`erIDi u*F rBZ~µl5x*͎7dX$c";YԜԄWeuQM[/czkk^nɚb!p? 6Uj_FJ )x 7[9c(;/ZC-(F4ZlM,IR9 P?WJ6iQJ/rcP}2_#`22 `QI?i9"@tuE4,whoqn:eK`B$(ƻN^+?-:K6!K>B8_U1Vs{d{oRu^ђJ˚H>Yż?pY:CHݙ$7!z  YG_L:^4"S5d-<[herIPtQ[Ò9&_s߂n5J ;l#}[~H3 si\D',mnbY<8*u푛e6b #7)a_=BqvFT>ܸl)*oWpr_Gol٦Oa6Szm\]X0݅ 9DqB5F@|lo; 'n)&y 18 O"A6BPf8Es1ٺd#BҍahU <}u-=ǂӂĸ{-;]~.啩 0tw/G?F2z5:$u6VLS9`i"AЙ'߆R?w 裑+O@̦+<_^5_ރ]<_ TqUj4Uv˵cM(`r0GvIXyw>={##vu=|u!E^ʞ_AȀizٚI<|SM%MF][ۡ|C3}X}W"Kex"+|R3(鼛4e;xy^iy 58 }RoZwۨk8 t. C0>N6,02'&8,SZࢡ;ٚvm愥 J"iH HXaw+ő]vDTVJ|j|RWuVc_—ίh ՀJԴil+ rl8LT{(4\gg"Ė7TLwݢ=`ʞ G ] 2+e]{wgK|oVO4 }LͽiehȨ ?O T@FJcO(>XwUؗ+b{s 9j g9:q)F7 2c-v_̰}K@>g 4a5;{w7Wh>q#OUH5;&?=E/y;#4N7"nT_bnlcfOP!#^!%n4A8k~lɎ;65;)ⶳ-E# 5.fj:j d^\16Y]fXw4k#V 3W4l(S+Wۛ{d E;+_[ufw%z˚4'_ŵG44{?g"r 4KMDƘ)y٫܄$'d!;%ZtݝzI͉|OU#M>ONO8 r6ɪ GB3(ZӦ$(W&7O}wy&K:.OA\-= !pl ǧPKK e "ɀzh`E$iFIYX9F Iހ|\ssj"vCqޕ_GaLr~V:UZ/ s7=+f<]; B954ܖ M M4K۝Q nJnzE?١$WޱQ W3mѱwAxpvʪ @"[5BU2,n0\p0]E+,O,͚v72owݷ+NUS*QxBV뼁TZ#Nx5wh.|DG.86rڝzY3m@@2w :ewgYD [~zv^쓕%-` ` mq~d:*S6UnQZL1Vy7epg){!ۼۅ:?DqfM0bOMo~$՚0*7W_wμWx)#CPG=m)j{ϗҔiD,"#n2{raowha p_ AULCf}ZLZ'@D{gKFYXt_{+/㕙<1.ʔ:,V,rktj2JwPO3- ^ SI)Tpk=zF:!w{, u%S "^!M C W3H7|X>=I~hW?!7=i߽oæK(e淧]4_e/r)/n/4rSr 9>gDS>OC<(5&x#sJ{\r1 -Z7N nK!,TZSVe.2AU*Ea;B& Z9w;{* PMؐ)1ϵcB.Ē<&R"l7=(kk ='E38\d֋6.yA/',R,gB("'ڴv~q+ښ0=M\:lİ傲j".#&­xTh1>{ g|Kzy/;2?y"鏝H;X58,$Hj];lY;9.%\U)WtvMa&ȴd֢rMHFtyE0;,v4azGP; `|Z9lskeAʹjWX_ IvoRhLN;%nbUhEi4h/͡+ϠiF1p]@͛z*g0*o}Z1}@@;)}/q3w_o@|Dkiަ ZfJ 1ʧr{L;#ԉ*Y&="T2ζdCu?CO͞tI -}(!]л10坡n :/ҿ{z~/UFFL%R1r(R@.%k"e?BC1$1HoAf)_6DCi8Y-dRLk!ir\ aɘ=y9`yuhښA$NFOk9TJ}WT+zb !nZ36R3(\f>"wcM0PBOq4OLAOl`K;qpe2D[NlW:ZLm'x3G4,iPA _\+\cH̟UH:|R؞?܎| ˻.n8Y\(5H;iFc͹. vϝe:8bN M'B`mKZ?:@U[yc d:߆οīSx쎗Z{˨5$5lDy +PxTxQa#.DLqU9ƨdLSW8m b\j%- 8N@[N2ñƩGVʇk/_X ڠz=bgL5u Z6pN4bJ>_v ֒KEQ7?Ӈd¢gKi+)|]Г>n>!Y_:tأu A/՚zs'<';)6Y/sR9[sL G}̰*ZYNw;yuJQ eDfVHRpIod0e ŠW@8 WէQ-Q`8\7eщRBm^`򓞻)GJ5j)’qS?^KJ*upRe3/7GP zt4Ey D&PGД iW׼SxNB1ЏPnoWR67'Y3s2Fyex.GEM(W"H& ґ;XxgqV7tp^` wa޲ R )vljmZToIߛX_.uKuRdgX 2`ȩ#ixqš F}Ŕ6uJ 3 d45[Y_ /P aa@ !Gu8Tg{B X3`1L gaQ2XҋꐾpPV@Yoz0a'hr*5 | c#6œiu:F=O޻o^WiYwQe@k?Aڗd9D\g)-I"L3dM#ϧ߆*A)&X[Ez63}q$̇Uk1r"Mā|&{{ْ̖ql,MW4 ' ȟNK̈(Xۮ`8,ЇZ6V)b8mʞ'~w+˃SX\daQJ/zLՏg~W_ ay$ʪ QЃ`dr̹'=YQ #_}Ţt{}Ð=z _(ua+KyN#!a2ZȫmI4KAʨRM=5T@(>f4̓ͳz?\|d_"HLԳvBؓYπzlSA96wUy#N9#ޙ/_7 f~va%  -8 !}{c~GaaTb:#Wf%(Mz:ν*<hVX.AA#Rq?ǧ? PC7,&LzJl蚭N4Y+qV2Ic^!tD h5::6+{-/,ZYhI CQ^(Ay}q&mlR8zWǖH+ëOyUyIZ&}^/`|u!lpJxȆEQvT4vӪTۓUU7zV @cJ$b~E^oo&WfC(ќXeJ|@oxv9l\suZ* u"gK>yXC6%6 esutUj^%-(ȆX1Vlfl9LlPۚ fnB0FU `|.gi p= r!mșr_@YAob+j70n4#1N=HoSkqzJw'`yO%%j fÊCo3>]SfK7MSz3BH}h4-"۬y_QrB*Pw*&?eG ?x2*}]BPiCŠUR Uca |JajhW{-,<52{Xu0I!iqڃ:3&J1'/CO2qBSKfbekX/7R-ŎQ|5N`y$3#QKjʠpt {^cJ d\]o1]r% Hrjtrրd03'):n(7Fg`'HYEm/eTn!M G.# cl|u?]]y~kq,M&. 8TܿҩmWDa?u7Z0|xrH[@'gQ)lyckpq )CD n:x Ӣ⡷m,gECE+(h1CA;nzT:'SRA@wM  `O3 1x _FhﴰBf sπǍ|w$gp-EtrQ8ؒ@$);v׋p`QL_.-k+vv3M]PdZ~(&{^K@CD؃biy <dh 'QfT? ݲ98^'ʶ}ӔvF aXf0߫ 7&x2oV NjL)5L}?ypynڡ DMuajlO۹+KO~{BVa<}Gw9[:wQ%U 'm=OT'Ctt!Y9_̯4䯐o9y;}'b,ZC\kfN]Ey]VQ!r%TY|!X*￲]/cCI돞〢YvrB)L%;_CEhҐɋ#dbu*7N"[~)un/t*X2 Pg@H2.tQH3vL,y%nDpsXк( M\6 pX%mPl‡fe:Eu^br˶eUD!uVf3*a5,CZol$uǣ$]56Ɲ}9(;R=Vn`vfg YVXV"`<W֌..J+?k7&37ݫ;U CÛcOFݼmYMKk3uWFj}aoRZFH&5j$.h7Y? 4 e0_IIZt+ɂHDl86Qїb?ۋ8:=>5F6sziZ`jp޸Kx@'I/6^KxK"e.DN|\ O͏g6cfݴ 1WfA݈'ti|@%T 2JK[@A qvL9 E=x$o-Õ>_6 u4g0ꖙ!;@.%:mjO$حjDusj0MĶ{yUPUʼ'i*T58j%7ߦUބI4;9[!G9d\L8^͌|is39Ltƶ?o}A={ ͦ$5|].ʩa2^?&^;OsEg꺾%zmf",:'"&F z\Y}vF [Ss7Hzi)kʗ9' mۚ)nԨB% %Gg!d#V>򴓂mM M. Lc)tkcof+L2F)^\`h8b(ǂTWʺ&;wQ~ZX qPdæv"% GWj٥}w* O7a 3*fJeÍ;bG`^ »,w3\GU[S,a,/#ˍFHUo5ߏ0T֩ʑu<=dfcPu;MYNOMZ:9wBL_߰Қ7ɶ SϮ(ʈH̠g@JZAmΓ=0Ɩ:Dpp ],v-U΋ "8N"Y;R,\HK6wI5f5],ve6<{;ov^Z)q;>_9wȄ9YhW(3!UM?BWRL-hQg,HE"[n??S5 (@;Z 4IX+Ar IͻP\0~@t%|./'v\c7%j:IuF9bCnPuO"[RDzy^ø|a$R .O&ZR?!$%N&y(Rѿz\HH5Lftڷs6~ RyPX՘G|="G#6գCЙ}MNMJ*i")u5svN¿?7Ү˽S/ʹע5k &خ4X4[d[rlzO۰Q$Z=!@;ȋ*唫+_+ c/xTO=?85ks l$YTGإf屠aPS s8~kjizj酎¸n*2"!Ԙi4EV ;3aO-y=nZ& u N@!⽆ ?#|Ficq&jp#]jgbj1c&bYc5z|Kϛ ~}g`R2m<OVvUܧ|zd؅<-A'ҙͿ7( BFZ %z8 .<۹@-BGBleLN !2lݫfLm)s2d(X'jP8a9cRiEEvcTtyNI\=vߢaݪ5qwzr)LhlNh]XdF Tǻg'6>z]v,`IVۯDKT$Ї5VUn }SFFb1˸OIfpBUS,c5 āt+W s7Ц=#jt hФe;$n9uÊP>83bA3[ih`0ggE+n,h~<"RvL}֪Y[X ٙypPOY,q嘊X? 'g "(]'_d!1Ő2: ^~|?`ZvJZ={h@5|Տ(Ä8%Dp9Q{]-@$~rgO+ul5Ԃ؅~T [GtOz_8I }X|ȤjT1R}R!]R!֊F@{A8Wc!_Y+=O.`U㾻QҔ|'Z&y" fp $UP^N9c"&rO"4̤Kyӽ:{!ywhH'M Z"\(fP$fEC9&|U~HNן`L_ <@QHc[,T6F;sc/rC"_%" ;#?SϹƪI*h $T Ϯjd X zVĉ8zx +XEoNC߳= De e 4进ghYH2^OE%ᕷ3*7,^Q<6֏+ ujUXL}hRHWw]d;I)vPlQNKmc4PcHH[xK-ZsLo2G%,bQ$ a9dlLsn~І~e9yzGVQI rku~_AtħsOH42_.!?`!7i4vq*!c_ʿe0% YcA Yv_k2.N:pR@ 7kD=G?xE ƶbd/сI>8BrzCeu"γ:v앑;&1Jᘠ5ݏ>_喱ʡrA}edf#֧/Ci̙CP15O0#TKܬsCt߼Sn^ggTg8jqhsq}ؽ/ /ҼQà9l;("=7ȗ}Bmmiي78SA\^Yq9IkhȹزoXv-?lv'փ3Og w^+r|{%OPMp"ŕ}~cʵ,a|2/ ol"y˱?Άߒܼ w)g!m9qP{f$Z6t_27 zO& !WPy5lc¨(h1G ͬVy.|$v;y1-JĿ#0]Yie]x'R$h. e\'Bĉ"5aР+!ܚ#bqʚsaU3hY=vQ`iڢL8S(3b"2õڙeM et2bӤg@W~HCL"K=eO.MfH95"}(*fVha} K3[L2ŖVIT{t.9 3]/2s%P_w0d!Mbtq7 @$H{.ۧ:]L@S%*j\Z& #Xd`"OidхFms:@qS_D>I׺4`:0J@[c\$;@_W!r7LߣxUb;0."X4(~zy/,︸mVΟ[]%"K#SvM^ښIpt?4JC*!=3 ?Exܔ9uHޮn:D!,6xO 4@Kt}X)`],>E&ʱ>h h"{ n`G\fD?&>ȷM$v'@W!ȞH͹?Qδȥ>W2S5~9Wu=l35Eb!C? ̚wW2Sq)7?<6^٪a'BO_Ǥ&eWoŢIrbC>mb9P9x;w,4mDk\"Mmbyyb^[b nWh >ؔ ֯IFg.R#ӆ; ?k51p MZnߤkYz&ov*sn'YOJwT=sgArx.SZZ=h+>q So%"YQ+t=cB/7*(?|?2H~T[5׳v҇VHrW[Ee>^$ǙGDRnX8#0!K^'TY^`C%]ql $6 !U.k[]dqYBw=]#U8`gsE8~6D&MS] v"ӝ=Y$Y6 VaidwGI ҧCZҮǟA2q>Y yo*jq|֜}'p.& =t~YMBpCJ(`ѴHHi}μX[jyT2+Jg(1: u`aaI|Q&Ypf@#q3(g04WN-n+A/3! ZedY- F0p5tF8+rgC9H]#mqq\s|ECCA{Ev䎤RaCT ìԊe1l"sÌ'BM6 (ǵ(wuC nXQ!tKN5+!зt mt[,,HqwNJ`5ZѫW:ScE 1,PEVz4%ܨ`H_ΙOv4t43{NE'?{c'2X8"PsK[5iAǙizeLQ {̯ۄN\N6^-~Fi.gT]O t-*5*b6pr}1RHkm˳HP!K9L ]5f D(łLCd2-kC)]Tq»o$K9VO|x,od.2?8f(=)mh?t?̀ƨ@n*.&a!ֶIio Ȍ{Աejiшk >e3%LA9gJ/ AeF2JghalTT2dZgLg?g5: d<zX?ŲQ3 hN@MCTe3D%0}4K܅3uil?ȴ0vW>d VUK'8Dc7?% n{l^dsS2#[TjR 3E CvO?7:);B&mMpɂW$` v"yoa609"݂$J7>x~uQZ,>az| } ~8m2ٙH$l Ą/غp*:1H&2%JDlYEDLCu$dr`"Srv`L5I~K-Hld3bvƟqYe?KOSffPZq*Ҳa jX&wxEvZ -,,tы,!7yf38g'KFG =Fd^l{`(oނi};"ӰB;:[WS@P"DfX &"bڐ07yEl6ș[K7{N99(u,r E=TnnȘWGA?i#10^!_ӅaA#cЕ~dFɇs&W&%^$C/=L .6ZB<ȁ)4_gBȬ7(0,'iq0`eKuB{ې ]JKM{O+*eʱm BfL-nqudexB&Z3~#ZS5#aPN G t_ndAPMj?sx$+|6'q k0 Hߣ]E>'CYfceZ)m}]} ?&-S0`#|EY9le@r60(m 02.g/zxUq(J HŦnohapth*g-lzeѡ >ÚَP  4U.Ɵ, iG؎*(UF%@QB_Ѣ(PP@aWbOM ׭J,蝀F<[]Up5 fFAt-30gri3q̼؂6yu&؎ҀvnVEC=֠h0'p#L>vDg,*j( 1=va]M` Cnon?b2<lM*M}Gm2U](֢}nfVܷ?[8?)OMn/@ ?zeKZ3/M_>V^?%3*s0cHPʴn~Y[ ,XYSźN %úl<03}~DuyTnPAgm"?|<-oeQ/VMfqsi.7Hn.a_49E;N*T/&4m L7>AId3}p21`9}x-YD| N߁ݡ6]" STv6Y[A:ȸЮ=I[ES Ѳ `'_)x8KGPʙA %)6q}tus@QԵS\`!̭.Zw Hݞ!J3_˞ȠXպqѡ} cte.m֟[Ò'gHת yj nG t`ǭUT)wϨ)U*KΩ0d/|VZ'L1 ݭz͐&{`@b/鳪@s;q FN_3sʛ'OqKD!É)bс߬ja U`:f>LKTGlO;p7t :L;:yV%= s̼(fG40»DI ah S-HKf 4>BYBz9Y@Vlq# m{VgԎPߑż}:J  (!"Cp?> d.RͿc8=lIFf=R{NG tT,mю\fK ,?L S/(n0h;rofJ 7\Z/[J8?dvʧ9cOx6mv@=>)x wX8Qiy|A0?*vօWmZ.~BBQþS `hn+J%7`:]J4H[0@_w騜Y3wYZ u>MVj9cI 훀Ђn`$>&0EG`H)6ew/|dK5J8۶USQ7X<89n2<5djEYcb%FKLBxZ}=5gP,b?՛ 1u>Ke5Ju8f&V{9CCY`z4=,Z/E:UWeȾR]e `TU ׽?ςx1[Mqoh%ciFx8z'IdSm'!|6E3l) \w,("$`;NELD?饞ӒP[:hH㯗* ,M7)]X&z.j0چbhsl"sC,Q}D ̩zk̤>/e~nbHIZŬy}1>W`7KUҹ*u(x^qb=C]@j~ywqI-Z6R9ҟG햦i(Nj"}{hZk֨&WA>g7ҔUROiNo*QeW;lk|`0VvȤ5&1C`a|m5"cmܰ`3kjO:%&즣RoFGJ4Fxxx|k[MLmGF$[%f_3A &3;ǃmMUfE|՛E;޾ uv=ףkަ #x"`%Ey i.&:@ޗSf<%8qΦ#aĞ9aS$8jИSYMwo" )'T0yxX_&d2˳&-o9 ' I/`o (Gjh"?B:V8"$70,Зwfes75t7.>pma>S䕸xՈ03ik7)bwб|.ؙ@c%[ +$KՑM((|tܼ:A ABL27ʁ槽5}a؈r խ#nU45)A1ͅ n/]'[i+^+kd1ʧrA%}K /$ٌ]b I6QxSO=\ta9==šnk$%lj(W|J'[,"<+[փSNŤv3A|[&tM؁)4U'ز̄Vi2X^@F#~AKBtPy]̉4hBݳǧa}_F\[JAh||U*ĵ;ݮ-W U2Y3G {Pױ2?46³.;2mn\}}Y$5-.$K::4!.w޺[=+q1mIc=-?&71a'3lr9q9z R 6Xk 4"i[(2Yv.0sհ?!/nhZiX-xNƿy5VaLDm{ f'Cz1ɿ8ZدlS⼊ ]dZ s=$q-܀ dwa| i+4ΩβWgFtpMBOX;ѿq%1vELt+$ & Nf%O*`6++ ,/גL 6LRrӊmRT9>3P9.;D{V'l,IBL+ߝĮ9h&JSYSûͿgw.*7'N,ze)p~\Tדŕ'Yf:8_5 \MԜ (oNU*erۥm'8Ϊ}in1"53y'm [% )\Wa:.N)jY04^TkB%$QvVP m+| ϭNpJ(&c"_p܉g.E}h/ g'⣷8 +;m6-e?ΙB x٥b+ktL: vޜ|]=E+/KЁMa#Wm.Y;(V ukVew&md7s9Km2S^Te?v;۠U{mꦖXƍzb@[3vyEڹchr?*~d Z[7͹ %XYѰ>Jş~ZC6e鱨WK%d_Ďב/<9ل] ֶV~M2\a=Qк ^,8k/ug1pG\s :b!PyNz^`q/%zoخUH[(!AA|_gXaTYH-F":vj0Z{H2iB0}QkA5"'5-pYP>.0i9CП 6ᔏ4bV/1s?u+<= j,HӑKilsOԅ Pdy:X^p)zAŇ1YG)Ф?%Wԍu-!YM[K5{$^x%7QwL&ڇX8*PoQ6 02ѧfreWУQ+?BQ5b;E?}ݮ<GvkN ϜSN:YJ=? @!I+j7_%$F#wA9l:jOE/ )Up@T칉oTŘ([5n]z.LQa|@,7,Eܪ =ji\xLx.]S3e<OUw ڒ l|.P-Z}y1ɩ33m&}B^$KhPv@_UVyS^hbp'%n3<SӖp/Jk1H;lǻ朗fѣWk+gIq 0eiOI/my o2Lbfv aNC7t19#zHrc *߻0ʛ݆nÓJ?)FPJ:r1|s"Zmfd1ϛx%}7Gٿ{}*w5(ÇëJ$M~veاyr.JV6G3b+q|G(̩@EY4#j ۩/qXlmitv@~GL9Eu\'gkoY5mwh8exݕ*@% ]-\ u#M=$EBDcnnxG j;}22qheiS7e䮬)Ir80jՓM|Ƶg- `K wrJz%y"Au+GcT>BD:Al\Y~ia$ך~.ds١Oؘ#܏e|NSFЀ4ժI&A{ 4|)<ЪFߺVHmWXòDDQaB-m@XS  I@0qꝑ0ZmQX&P .y$97=!B^K[̼7&F{lM3ë  Y`yjёa#:1ܟrWG,&n zn}x.|oX,B[SZj練[]Ņ_HZ7~"& VΔ$mg@Qir m9x>zqy3cgy,k0Oq}` FH#swZ,Ÿ ~qM~㿃TXL&forItмE%x7xC߆* (Fw_r:2C(Ks"N(@e/<߁iJRxAPDɂtv@g5nj7}yx4%kE^\kVoϿ jnJ"WW8Il`=" k-ۜ[!Sv0+r{$}ϝYҍ ϴ}{ nnr?,#5 FM6"S,;NL<(mrz[ v,QFo?'F=Uu,߁92*TC&v7]:)sCqZ~E]ҳ|n?[]Y #QO^CA. 'ĝˑg9hUy!V)TAGWh8}f; -ܜG`s}PV\"umT`"N,@Q>kSe03QyLVs4EFh4ae2y:!&# lүc6G+`f+פF|# $Bf(=ɶ~ \H񡺣M N/pxkt(c:l+ACScvy1ıT\deD.M[+EDH;[gO Qedg__-8qrc1*; tY͇-1̠A2f]^t3$4[8.k"bb찊CcIR r|f ]SOQ,[dxx8)ya& ,LF)\q++%K `ʾkN-88˩u'?%Zݖ2_I/gz׌T?,z!-U JI*fA@tg|`Jլh4(_Łb_br%)lqw#оAxL&m6Rɖr*f"l itԨp~^]õd|v`BOc!O^;w`ct̅-Jԑ3&V.,[,.&]B̏U E)4;f\zAt=2R!0{(7 VB.TDyܻd4cGK= hPtM {=)Q!t;]ު)(q70:V_}}wQӭA)%h1;dltŪ#&|h;9s1Zå>~T9dIG5ӏGKg?S)!I[`VH26i=2ZHr_tXqR+Fx;Xٗ-8-F xo]:!k~9KT}~šۢ"|(vT 9w_}ɵiiJ#l-=-9A fي'Rf&^yl,0:b' uw"尅l}@FwV.2i\J?waOW_bfV&6n}.ARR޸̰S=d'?-H\lyJz^Y uRGef%'7;pv?܀UaH*n[A 1lP ˸ܒGQh+,lƨ[d[\cvL8=$꜈':E&غsB+xSG_%5#+#"!fQl={ X_P@CwU͡ԑI"=& fj6Ih&A6&brm]Na"C+;Id >G}b30n`m gyG|4cGƯ ivF z\ l>4N|{_3,5%˘wc| cHMCc- S(|Pbԭ yh R)wt&q_X94ݜG98, 49\7Ȁ}DKB\.oN!9_\چ'l H=x )#5xGR-_!6Cv_ %cyT}[1L/H T@)xc DVX- -odN/f,*G<.#"C߀sI [_3':M)O9-?ʹo qc>,xSoUgxyMPAlAp-8 S2໐2q- ፶2pH悕!e:P_U)w]⮚6 H@B;>4QDƶ+2V^$!q^\d4^`&xm7w-d''JJoCt "I-SrZZ, JQrDrxq AǦ'}Ȑg:1xꄸ  iGW.ߚu56{ L36k MT,Gbh)N`9ߓt4AƟUvqtmx֠[Ou!7cM=F.xE4fKs꺕OBE'3-j^(^'QquJP _˜ ou/sD%`ԭ Tw$ɷr-\K&Wۀ_w:~x'E1_TWjx@v3:?בcaƠخ xPkAݙrɇ{ Wݐb"gh{mhJ앓v<_k0`׍wwaf6{":3vdT~Q nW=D/ŋ(_!; 5C M!fCj~D륜axՆ>C BuH{&/DFOqDZ,P]ڳN&#Qta]N& A5`5BqLO:O$(hxyF-^ e* }K,TZ!=;<: #H^كBGƎ88E%Vtv3-cn`Gj@b~P*9dT jvL0ڮSU+Y"P9[ȭ o Z" dfQ/ J8rmauQ}*J%tdՆԞ`޷ہSgMSQhՁu]6SzL4mz)gदq_遟C}?:%Ht#.M> ޼g+X(mHZ=v7 %Jabkw5^̫M1?DDk_=RýM3Ĥ1 _mI&o p{+|VQ=XLrhɦ#Ve56pvЛC'y݆%@[gNwv`T"1|%G.a 3q/h"P\sWQ%xwM֙5 YN`舫 B")/ؐvT -޽fk@@$ NϋDgG7+wa 6[缽8\"-RkUGc {spCHmEd%CCLƕK aMHB/[3[ќ,Eھ-=faxc$Gf5FEqU73#Yxz^_'Om.THyg3 ;r.:ҸIF}ưRiv gPUPXR?>\\D\ZJ W'>N_=i_nCjb{lDڝ''e߲L3F"cgl$.#WzM!e%"y3n]3B/73Ԍ P &EBcF V |'N:/2?)di6ueKd8Lðj"Ш6^WerhyViՖRf_mln%P4cE W`ON*.3^da9SLdcp hJ#326az*7ruoc%[J]fuuHg/q>(⚂?hG@͒2ҹ5K&Pqt&#gVQMdc1։Hi;PF Z;QB]\BR.Ik^ၪD̍DEFPIB1z4_>z3J 8P @FXvx 1h*cm NZzO?ݩ"ϟLF7nr]>UJ~ G=@tH5ZSZ j}"8g/n3 vޝX9F3r-2*'l+Kcm6tj渗 K;$Ծ)GP"o?C^[:d ̤2@݁+-k%ǘ J;F=-J4dfYKA HFp>A<Ğn9]i bnzO1 =[1a d ̵oZi ڭJ^RւoDF|o<YBh$\ 74 ñz@8.-ڱ>Ay9~Gׇ#SH6뽝> :C`4O泀AnWkjռu8*H?* 1fLP'|MZ~9+$.Yo>0Q̭$Qآ5|\ bS}A}La0q_<3;6ڄW nvulHkiF[Є*©nlfLlbӄ`,3`J?92gDՀ"PIHUOVRE=u17mLOQxϯXr#bxkݲY[W &gx[6چ  X`{@V6GxHr-@h2|Y1MA5'd8J?-.B\E)fK:D%JӬYsԂ`7UR.WzLN@>YS'y>p[~2;ydEc5?%FEM`6v5G :9l\xD=a-g/\ٌTpv#bWT.ת%m5\OI5:g1T,^ T<Nx~XFF]~QV 0̸libE-C4"ME\:8+hReBA6väH[TI5H!M*z8kٛ,.@Љf ZzRQW!"@>*yoo僡T= 1~-,/C8`S$͝QVX]j=fS8gJ @F%PdA+3mk_:*BC댽B&+qJyM=]gӥ$1TbUQNbj~G"gV*DBl (MO:\G݆,R#0Ae T)#T:<OBuDM3^ϩv-[t4)I uWnM~ѷofZ]\/6Nf@mG8Zjr{k4אp] r|,psp)ąaϚLqiXR*<ܸM=MV9bjV8#sn8AqJ`DhfoF! 0аazU~Q)X{ur.:нb,l:bP4:@u22_t$(ӧ-w)w&{η.CB~Vi>'\EP{g2pIWrӸE'A uX'0ķE5q` >;-o8vjjǎh6KrZ%nt:p1*pcDʬhYoa|5upHu:ա, ij労 }n=PAs~HiwfL9 ꢼ^aZ,AmfO+{Lt"i!%edמi0V1;x([*)?n$3 ; Bnb3 -5ʸfG25o2 13vqe̯NogT"zs7VgPNY+.:z*@Q䞊54*x'V;6w͐+I,">WpPeB' GA+Lit_74J;wCȯ!$5H tCD 0qйak xOq 7! Tc*EXsh{q^*{)"wivQN{CE,ZOz].㫬+㖱_4Ӥbo@ E#n>[UxД֦?pʰ+}3!o=S{ ^ɐ; Y/peGǺp'{^.?YDzq{wPNLx/h \Tۛ0x^iv'|4j>zaO&Z.劊'ѭM%BToJcoÖ`K|:#8'VٌWClFS}MxqrU`%mF^a^S;- n>N./˙OyCB-EhbrKP/9:kApqOL$]YK,Q$;0J/^u0xKxJ9yTm _F&Jp6ұjϬ~'[7 )S}ष"Qcvw? pH:NT\:" P`=0: x{~U- ?_BuocLǟ&; 򕝊#RZtqW +fDq#V D7$2:P6xdX~>nK\5oMvݡ۶tZ}vɝB=f͐:PMWW(=4) +/s/!Y؝Zifվ3\ĎZ\c+\2◹qOJzFCxjv*=4+3%=Ї U>dmIvd(l}'b1٘e kʨPx ϲ/# TO5aGk.`:H a<`kJ]yE\=ҙ Ez^j΁ԍ+\L! ڌh+ -s QaDG> ?)$C_$ë48"ܢѝ!`J4U„ؿ<=0ܖRSOJ/K5 zȔ}`U%ȜKk>!f=]$]E;}T;TtNaG`qnFly:#t?4~YH: l*?%T*J(N*Bz(&6kdY'GƮq~!L-$שeyy"w\XU8'Y r"ĭ ?QVw]WW-d*ՔY%`%|%N 1NTRCzo-|WَaY8ɵ2͢M*D҄bfH,mޔaa>t]^!ЏIPT,Ua<5V@-up7e(9g .V}8bmNu;/G몞.ͅv`qc1= BZ >8~ZǤ1]@;.3E7&!( ǣZ!o aXaVx]36 uq"]swGۓG@J:{F璑,S9QW@Z\_Hr{-M= fwB0Ab'^C//c8kޮOġq-;5pL]Cb}q+>'1OR$INLȞ@ 8j6_Xi>M @>:.쑝4+/Lv sPuݬIp(i)3y \='ǺM}m<+wk9;&vN0mTQ=vRS T.z8 F*KYƳ:UrroO+\9~XnXoIYEFF+1O*Wr,(!w:璗$x04*/@ D$̦Ft5 NN<9kb)X8|֦FXvc2{?::5ɠ5\LL8իp[3&++Dǔ+0Z{iCڭ&,#fc:Aa鰼N2 Zeq)hw/{i^p!7P+mXi9oxczc:TtElg8?;ne0QNDWU%΀ Uw0cђ#=ߋ'!W5SB?>8˗CANL&K'͘M8g[X UJ*6 nSwqVʻB\yeOŃ& p3_;'C @23֮sA1Q3T?>#G\,6g,K Cj5i)c[k 1ZK8 3T~5fm'˼mOHn +܆2>`2mAqYg*CXnOƸ?QQ>iR8צ2|ο;N0Uea wOTnKeL2iA R{wi58Lp2?Q|2?9f72i4h3SRLDguHJ3kmx&46wg]M D. \0:cwoiTNmeܳ|HTҵ XkT DE9VżͫN@W+awo[e(`. (x<Dˍ֏Ud[PZWR÷$, d%+6)!25>|6#5'<03-zDI> Z N@Am;Q85"w2CL,ƽ.D 楉nq~+Z} t`F!@~z M3=Ru%wob@E>Lur8WÌ}G úapWJ#7c h n2@#ۉ. A%a8 4bX֬Ce o+O^;bU OHԞ jڤ;ieMś(25tj|՟1z@@|u3`(hSPhR64M T,󘓏ё[bƇe旖ڏ0c3H{ohIxhY'{m9^ ^;f?TMr7fC}[e[)ըt&C2gFģ,=2jE[s?<ߑ}}+GO5 y‘U堻sR~Ȫ4{Hf*𲦀rNh9޻¢uhIr+ӭ8ALf|/\ɤC9kYд},_4ZdDM}^Ow08 ySaH&~\EҚtQGk(=)7 -/E/Ud2JG f)L)"/FZOE&k1Wqjm:uD_RrT&&9~k_sG?V;uQ74n$V0 <@Z}j-ފ;j&]3\m,KW+S'V7\Q$SWiEx\A~`+ִ-}TthJ"Z!fU 6s`+,>@d^︕G"!PF:[|TԟƨkmOni+u= w|\%6#9M/0>5G*V+p|G@ד#~_R$),*l93:Z/^\u緤ή)iN0XG7m#A!o%F"A:MEYNK0[,ZQ.s%vEW)C,)3A/ _`hL!sIt(UW2^HfµMI*ФP$;fETb # 1lܤk`HEV93.`jʨ*ׄfQg73T8_Tr QZnG[(~~. &ʔ+a:3tz5yDeNVYc Zn ! tMx+xn(+`=U6^/9BV[.O9vH%wC2J>e;n|g4s=-FK]rξ:1`孧K CZ=;GC-e敹PEDFkw{jZLpi4(:Ooob(S`)$z/0vzLGN;×IS|l;l@A?kϸ>] ZwQN~ u"z];"U;ڄIpmaO c$8x|'o@/n|}A|7Vb-q;Z'7zq,G4LZ׺ɲ&擄}LΉ ͷ GW<T)euExE{#I$9x }AP=nw"_*H{s~jZ Z ĢO9ݫd~MH ͝I-U菥n[ 8D[:͇ʠzڒssg#Ty^8\RCpL ͍BEk/ 8,1嘠!Y+*6i N8%דlSf:Ăd8eϓV$6u :{K/{f\4AD1gĚj)v57= )?Nҗ6B9r2*&~-[{" %J}ȳ-`;Ƴ8dok'/~Pu؏dA, _/J!x2v(bVJHr-!e\àuj֪aZeu`WwT7M9;L=#LNS^5TAYڥ,j~= A+ҫ%ڵ,!ȡ} v}]ޖ@FZet 3 Lk}V-\?9mw09Uw | g+n6Ud8j=qinDV,lVqW|H)g^޶vSݖKoDdZ8hJ }_+P//{`=L'tGU*3k5<ʰߢNޣeQEmCFMhJYJ+_j.EL;+-̴ݟn73Y+9Cmw-\'HK?*5ݎ_)sz=;o\Mi0\{Ƌ`K]ީvӊoc`&6QVyy\p ^*QVUخL`ő\]!hXAVYN0&LDn=AK L+՘'IKKdɮϴL輦&Cv(8ǗvEd]uv{x;jMHJEq܉8TH @jI4%oe a;##JBp^+LG5s8}9b6iRŀcY/)2QM͢\mhлJ !Hj7ŎI]uļ׀5<8z7%Wic g)Mn, bu8Ӿ1 /Y9C<-Id Xn=G IuUϏ^FP㚙 Ħ#ɀhGYc+ح D<[yp'}܉n50445Lm#GQIjN*gۇ40mth訛#'J*qoGyU?# Q/~r)  ^(~" }ܬg$$)S2tDP]bQ+pe)&`J͂cA\)1Қh*FW8\édS"c^662ZdN)A@d&F;Zёє%کҐr+:/aBX7+lߩ3|PKq_$2%G/D=P}C!Z(%u5]znv"#I(t~#da+D1b ;N5R>d;44@ɦb)(BQ.wp2r%=r{WM.g8n,U#;: . -^++݃|=ڣ b,, nVMNߺ;_2!t cn*hŖvco#xM _+]K|e hY%#wOG[5C! <ѣˁ}L'!JZ:~]kA|kέҿt-8+wVqȴ*H OǜӂVڃ6_TiN cgvF-[`$Vs Txk:u 0&sBk*6d3Ѻϛ[ 9|.?5aEvAlgH4ěfa@1OV.!; , K _tU1u4i*P`p,; gsja25W>uiM嚝Y.돰y8CRk `ZiqG#bɣj*9Pad/sBb4$QQx1{Ĺaj/ N"b:]Nr^jo/lCfM2lU)> 8XWiMDgC׈ŽC,$=Z)_Ɂ1maWLvS"1*dHʅX1_WÚĕF Ԟ[~Kk^}ӂk!(ཐry<]GOB1>8[j\r ]v\ zJU\~(A1P>*P63a1J|㦝;f_B٢k8k*+@^8]2egq7oC ^8bzS=3HQ4U.F뙲rxMs q 9{s_!Qp.NE#>2`bl&UǷ{4L9i5 NWԝ_ǡ)FQ WD \ {Wi_ɤ+Q01tKѫ3,$hTfV\ >{q\@y)}dxtfЉtƒ.pKR7:!ayb Z$T@\vb/؝7S{EutkeS ނ9$lOhLS7#<iH8f/0mE4Ϋzf‚ F[1MlEJ5rzJ'#!_6$ ӽs &x;Hi#Gǎ#tc4dKE+C;6xkxb-k}N'%ѹb$dN^A\aͅ(`b 1dqKe$Sv2sk߾n b )Tg'%pYy]W rD9Y= z&V?s[2#+r̨f9Ou, Bces3Pu;-|#V5@VB% ^-=c'f8Y + 4?*"z )ߝnZߘ%aR@}=-A< rS/AӿNf.8:_t4rɟ72?^{+1GSiٙ5g׵QCV2 RT>A5jl Ozђe SNB@xE oV:d O۲l{mYmpn&?wv€Ú2N!l-̳\pRiO UZI7BȂG'Qa# 4t*b&z6xC2F %7j r6(.*7J1aӍOie*t0 J{ K&>7Y&lUqJ߶H_c I#ѯæzMAYN|h%"Gd]=3o&YYW+pqrr_x6,׽5_u1wzX'޷lO]y2%UuYQ|/dI-bHRd G`K0TW&ՏT񦰅J 4Ad`,N<(BDr=0t$:|P %8N,GVݛKe[!{~;q،#4_aߺQb@0HuNfEldtR,)O֗"\Is!= Aj8'~~݉&԰+o:TC1Wi`^'G\0rti,_v [%뺄|~ QNRToM>ݾ/,~n&&:s# HM&d9LQ2`xKBL?E,P41)pg믥+CUuu-ط);7(ae\?:^ 33c  XY6eۮoM 1˺q!SH2qݑ@C|4+amQVոʁd<ȉ`V/Pmsr͓9 ɽ4|Ѯ/^o6٣UcC?9PLK/!)q;XUOQS@?@dfP֜Z?i&&^n6bcNrl|'D.[v=hr.@Pn$?uEI_J,)uL!t˂*|DZR o%`1_6l2KϻbTLJp|4I0zmfSm9 p/o=@vH FosN[9x u|`-(`,yCo$\6 kQ_ K(1IA<Ly:@9L#!8fX R$h1ĵawL_4r!U}Ҩ}YMX` oR1"uw>fHzSY",;PhͰ5(X_-Lb!}5e$\NQNy4Jkf{PzrCjoh$ysHTTtLci^4n;lGo 8fc:.nq҂WZaoZOkVKq{:>2X߱/[(~ {Ll"gcʃkrL~:)BHT˕ E,0]t#kQ< Z ͛60轡a><ۖkRp1]VA*G]=kw5wwshG{h\L |wl.EjS 2x­ ).bSAO{̅9u$Z/-3A'y*#pb .{ݣU)&\A &n(0͊ Q6Ius)g.uAfu(9eX>plYI$oTE>H TC9B(ǴiG+E8K3Η`ċ>X*JQB/X)7P̀zUMk I] T*N?ax}X>[o[cDOPwaH34? ъ"RuJ}^(Mtf9;TԑuzX+[hZ=4^>$ߝH-;/\Ԩ?ė!u)} ͞ҐkM ݽi/om}>usTi7_E#cTDZW=DʉtTZ.9Jhzf‚*,T$h^Hb&H_whhfu^ 4LoITW*sL&[Bq!1s,IWit0M*<Աsϡ&}Wrgz'#J> ʳViūm-'&g3 W$bV:8f5~42ό)-V*Ť6Win:=BQvJֻ[:}v3dPXwuݽ)8@\dA8Vv \n"`ӛf=6kz=NT<âG̯hr?,krY++v rGśnV>B̤/[DJG:XMjvEK}UNրnASYْd JK[`Y2 vHTҮ,L9Z,̝] 53G<${z$T@!Xw|1W@yG~2cftH\9ug蝍h x \bmK8Psu>^Y(kP-7,)b~lk~IbѣX(U;@uXCGG9<U~kZ7.ikz C!@wyU檥+%Rb$xMn fxD0Ѐ-OHj8^Вu t32?Ow="+1a4!kΕ瞅4 F?&8kS+۫a x ɥ]4S"BO=tY.TQ#ʬzџ>1Omdqb@`9ͼPoV,[H5O~[@xcU0LRy"~ͱ:BV77.WYu."X?q8rAϋRv1*GhbzOA [M`d|1+2_n H-ԟ()Q͡,4 mCyjkW rƐ;5|7p98QmȽg7TP1aGA ?# Aؖ1ڌ" MD@My\䳛JthH[ݕWwpdѣ,x)%c).\6ґP.W{YN tvf Jk3L+s'p!s[= : k.~aPjF98C@O#edp>hdyy%%Y+"ed+ZbʑJG ddC=O*uyZ0k*5gy6nI w! ${Z/1LێW` RfIF^WM: WӼ*@F7C$`..Br{|)?Y /?iPf$D7i^ Ů~P8qeO krg1R F_F1C .pq@c+yM W_I5}j_hRP^dZMA'cӲs9RTT .ި8185B<\c.,uKL&d 8.];Ed' HS6kR:~-Z@ Ⱦ#՜ݽCPs_`OӦ&mG)it7/ JCfx77hM1/Ih:h2|m??p}2&RTti0rUCEIΈBnD=uia6OjJ`em>uay kG;l#<gXsslDwX #;WV R_Vk%oz͡9.2:OEhg ⯛/S|st \=HV9>;ؼ&>L]RWw> u ^'34C|qyqhG} '` 0 MVC ɤ[^r BaUөyA(ɔNg+7m2a  :\әnv4W;@$B-WҖKh:]tsݠviiH3c_Tr].Ei Y7y9Aɨ(k+I9+oq (DcI*kK|ě/eǖXK/k\#UZirHGNpK<PE-8c¸{`ѻc$W&pN&< η~95|#@MX _U݋)$,H&#FiN]m:V 칔 Yl #/XҙF`LT~&rSD_drL0gFl(ߙId\} 4YR5' h}phc.Y|׹Jn;28 i.EQ!ή2ix/A$dӰM~47Xzs$36*lNf`A QdJ|2fX[_0_+KB0-'|A%^tV\6ʳ2oҿikF^5sFYVBF{8}y^z)+xw`w| BTȽE"+`7$#i Lozɯ:\ɉh~ƹ/d2ָX_fcX1KhsBH/ %#P ;"E{2Yr^lywpǓMYfng/8Ydѥho;8: -My鹌*>C U5!gta BVj}[6J¦dQ'4Rg#q:BQvk3\^n,k~”[3)}y[*v#=5,a)g8˞Ygkr(^`w2뜙٣=*).̅-MǡB> wjHΛ.FW QDhɝD\TL!3_Әܚ9tX9?XkX=_Kjq8e [gSufϳ< E8hZ񿓡H{{ۑQjc{]@DbcSgv!()X #> Tt"娖f ɶAF$X)ވT4k-,50)zH45K(fDٞ!` X+I^{Y򋀖r !shI9,smwtDPĴ(N< ꂀȂjXSltf8atK PSRWa(\I{"cK#VbAY3n-eG>1W49@TY]Iڄpp~dm(k@"z=rog|/iծRCXDH7c}2ZvX"{ jJVsKN76cj":u8maI; vk$p!Щ*0 YtaY~R 1~{0r`p" ΥTο$R{~;{34b;3*F.ޘ]*szؽ'R%[3o}] ;9,C#Y!LѰ9EkqEݐ/ze] Q߁@Oy`fkP~uϬ1׋pb`xgL]3iF1Oc(q6q v,Ĭ_4l.IlزZ=%4@I\:*ݥ* վ$ !eyky l( 1T-%| J*wt: F=#0az4WR~mUkS=o2qVoC03,8!=s(>G"ia;`a.:rST::`"GpAYW2q֝> AmLGU\ExWA ,eaOql2Y7FrE8_p,l:[4^ۻl u`NJd-e2SEnťNGDδVOױQDyԕtcC@5@T\.*(iTSf[=U!",7iI,ǁ`΍T =*Ga9 Ar5[^mJz]7/@Mgi MRCپ/͹SkRڸ G7 B-I5d߼Ⱦ;'S 0mHw|{WU_y2,RGѸ7ArɚHOy:Zm81@nMkW[O_tTǢ$i8XI̧:P`#I8PnbVj$W|)ԤFq'7 =_ʁl`B<'*?CNL7wȎ߅~!q? 慑MKeځvhV[c]CnRwKjm-!<=UA2=*L-NO1d7s J˸HmNq8_vPpi[Ds.Zm0AܝEy&MoCCNwGc#Tto5}0`v vj߽oQEw̬C6Ǭ[Cd'\x&L2vv_'iqiOʳ %;d1F>:ʤdqyk)ُ[k˲T rgj,L=V!Oo9Ta>Ym,W"c-@0lb6_^)jRQ8TDS!voi {u1P _EPR _mʹU*ؗIyTPNvxwa}v6Oꀻ³d%m!&%fuy|W^窎K3oDɗL*.l*]fNP6hTu`HwhK9!,%B5E FSeHgxbHEgd'^-Tݞ\]hq7kr84Aj#BJAi %V4evA2"-ڡ*u2*#„ʼTUE8>v뗰e|8 aoQUs 2lgY'(`,H5Qt.8s5wraeS5n9@1t_Vvj@)wZ8ryDc,8es3sI@/i{2J0T{w_3R?QJB*llu?MP"M܂Sn;/Og1 yх%R?p:yGKzUX;SYz,KylМ [g$:y!ˬ 9E =5-=o7s̲&Jԑhdԅq.-}.\2E sv8LbBm'G(!35? |! ,Mmhf"dZh5ɘ%줓<>+/GjKm;` P4G˲s1jڈ?K xMޘZ+7'8a=LP_bW ~_ h٘fp7ɮθOv4 }gL:$aO={njuB컥l);\ PROEqofF毝[z)egr9'6Ǘȵ]辖-)~߄udQ ^Tz$,+ @2z' YjsAwUWJlr-?~4RZKNgKGa_QQS}X6_kL/],5W\sӊOEQRBEO{S`O|ng]H#@#Cy^q37|Sf?8SZ`s &dc c1U^s\RmVi̐w;a?-n[ mtk,tK}.YR .S 0Ru 3*ǶgS肫S6r5i'~ZtoIӖ:C~UU}ʤsB%ڄtm?ֳ5\M gE6fIǃ(j(An\b_P9iV-<ϮDsd=mC+ M: m/YOR{m{-qVuym^Oտ,&:q2 r *ܭܖy%sC!n^!@-CB@|57;;H$kh w[T .r:|,aJ;kn/D0ZEB˖ӡZİ_ щ}.ȒilyRKȚ,_#M!b ju/az+N.M*MuZː->- 7>^/тykfF1SDF?~Z{CߜL/եXW_ۡ Rl0} b Eѵ\6.mU]KD@..0kFw\D!zXSآ"A~g; NZDۓIX@NAhL Yt,G>sO!qgJVy6"7]S&WIZsZ1f(*TPeH4ẲP޳DuX6y@;cIlyePM`{*tlp4aA礖d#fXqBh;aˑ5Y?WAQqިhnAe [N躦!9L.\n%spӾ8Wv_Z3F |Jg$SO&i7b2kHD}ȗN^{kHdot.X_̗*棶'̽(۟ *%qQi; }n)ҹ5FqKz&AWW&.Ql[U?w+%9X'\lbC!oL|B2u&l/ƌ5xxɒ&m1eDSP$]i9y\G5 bmTsKreZP>TMfQ[(l@ށ\3LO-WуeaE_\[ o777gSWgDŽh;wJ^v?({C'WdQU9ctO^=oB NOFxu5;5vay2,ks y_߿󇮪B`D페 }.1jXuožz@ǜӫp=2);R,>\vW{5Qؔ2x4[WjXzPʋ2&h|GM,YZ!ːnؿ3f!JkKjndbk-.cTJ45.2"{G鑧%Zs]k /!\x)YWE.8i<[y+(r(YjԎFQ-yTM h0Z8ͳ˃t'munC0I'Md]tͮպNTU7jpfd3%jL/@+ZB23b_yG)E s(UohIkn]fIJ: ٱGuU*,'Gˠ$lR{y~$aڻ_Х"% .QS{ uξOP> zO9(I`)Dd?J^j𖬵)bj6cںP${b4c_OP tgrb+IMkxߓhE bzN8h2D@Sz ;F,p^~88~[Mszv}hՏ9t3E9.OW(`M^ ~ 9*!F-+B% .YA[DPb]ߘP08wUz!bN-H쥻}[Z}.?شl2W~J }:>~NqIwXW. S_><^=܄^.Bx;P}TùFuUJl%JJ00cZOC#9 _y}aY _ ~3pG' Wf}a d: % 0 ,P-A1g͞l&u(/ N4tO[poF9!y`pZ),a$KN݊:y`R箮 t\(Pנg{Qf=uXw*΁GM$'% 54Ʉ {5 ~IaD8L/?}kG&Lyg~n'P0ۺOIUqIP¿OG_{~h3 PZnN/i_i ~51T0@`X7& ՓrIt &M Q,v{eV hqfnVݷUwA&Xlw; %ͧ=wuWs^驴D2 HZH9bi;L.9_-AbѻNAwi1kx>m2gr .\{gzETcv.[`dWTuF U -as+T0X߾ |ȅyj\wM,H{̌zƈFNIjV#h.(Ix.W Kp56w_-VA<>T&>/sf?$eS0U.#BO>3ݗzt嚊E) %Qdִxg.3Jt¡ΐRVFG?ui|L9r?0vLĚz}9[,A3W) xNJ-#a 䈳@Sb*f͂ƒ8@=YχUUQ}2qvZ;H wzX_X<ܹgԽjPXIMEBe{S,jMk,DоDN SԃSV/oU_V.1_C|زd7Ȳ Bxb '}TѠz[)Pi\'aⶸ ßSL_7Is]Է1Ra\xk&\<|&HQSWw72 ;kjvO~/[*5{nC?wMOجű^?4p'B{FZ`^5[ɓ A!h Unso#W^$z<' &BGJLXӇWqq$^MAZ)x2 L+mEranߢj&7bʹZח Ogf n=Egs9PG/x9AV&DyS.z p5#h'^rJ 1 xIe B!O=gO1Y@*oj1,^ գ u|{w=J?"g #)%ʍ N dCSUjISw%K^ɉ=QDaIrܫ<hOrUTA,[Rʭ$5b~ ߱#zg](c+M@;bӄ B,1ё~*(M/nw#z;'7V5i~h:P`xBunVOQ;F%8wF8jS-Msl0( S8GEIj f0ǎh[]p< Ѭ;uB Dz,-i= WX×J7N*ޡ 5QSw=0lSy&B HO axϏ;S>ӔbцZ)GuD F+`$\")JXukyO; HQZPN geMK`8P բ,iie7:pT[W2Qx=yCtaƽ%[p-c y%I}(uEzkLk['g3^ha< ]Q LԧT̛v]4{52x'F$xޞ[~Lkbm+u,Ffn1u`}4+il@}uNg}L^ᬩ?@l1D˺Z"X7Uę?]_K_w;jKBjJ ulr_=EfO_dj`.`z"fƆ=-5 UG.]G'|o[tM9wpPB9:8cFB<^(۬V9ug, NX eRx HwwdS2J,WR'FEgir= ]z1?0aJQ kޝe9mۚtL-od>xb ws1h Z*>=g=֓_AfVG% Mj^Tc??x~]Px2*6]LSJ8⎧F|9籹ow Ox:C? B1ދK(8֠BL~ug@RO.L9#;gLrGJ; ۰S@_Qq]:mAV)bb]JR}; &bNhۿNcH8Djvx *(jV1+Bޣz6BHP+*''&\ݎ x6u~9L #Cw4_,[ua<)QOoCJ@,g |e\4r?UĘ Fut^+8߂_.*;OcAC,|^{af_ч?! ǹ>K{" saϗ q:)ne h}W]Jb̫́qWOaT%+^ujr$pfqHgU"0*Q9-5+7te|b@\.ym< }r[] L]FHߘ%JD$Yc;V'X!cmsʜ{~ Au¡M=d%[C0QN@Fb%+ڲi|~]g, L`O?pzf&CG1Wa{(2T/R^BhYXUPWmOV pqvQ6fYGDI"GV6nkS_9C ^/$7`6Ϣ)!fRSD ]֮-1P SԎ6 t&Ʌ !7M gmߠ?'[XCsQ|؁/ǹd)C`kqe ūғ(8g(6+0CoE6p|fWQںNJw1?;SY#@ve2@vFݮ)}вt=9~9O/B'", ,:*ƯDǜ#R=Vi@Eiϲpi"mM1+)ZIvљQ_xm)#?vڭmB뉾7\ˆXohc%)I =Sheբ aIVMđsPW \V 52 5=CGa~ vM湺ˑ~P seEwۍ zJR?p4;7}U8gW=m6Mf>D};%XOgH mbƮT2+A%j!S=hamޮwפM)Dެ6*icz3(ՠ(qa8 '>q:#XN71;7?BƘ_7,-J+!jM*3xX j+8x>Rayv Ho]&pc <^ԬO3862Q^B& @ﳩ)]ZI.\H>pNz`p ,$9,]KCeOܚorT絷L7*_ P:G`5,6 wR^-ܛʽ_Nh )q>u ' \\1}]=9 LXi낼\ iO-_]LQ1yDh$;1Ä sq|t67_˶X=LgV|& _pk֝˰pæ(鏭 3K@z'2HG6&B9&v*)sYQ3lTkrdmqUZ& xFbBKG,E& 00IqUUrļ{]A7I<C)o3}?mס]_"VgRPB7^KcRRHY=SgP/K1hbh^W D6Cio?po}z 4jQI;>߹xJ%̬\r /[hu"ϔLfz(I}9OC4n$h GhE pd?TֽhqR n#MmTǻʈJ0Uc慫7l.aG,C&;f[oeMg8?" [CU2l炁 OU{QM?c5 -jH_/A7Z9VY S{LЩXWKQ4& U3:Ugg`,Λ퀟TaKg|H O¸lC@j}V|)e1bvf;WHti<38F5ggٲwA}۲BcRRsX4jT*209H 1RgԺ/<_P{+xKhȇڔΘK-!&jd1*6`4cuf#)Ɓ̒!K q Pq2p'bKDM\76W{Jeђ\ "c  S k6XM(kL6@КdȭQ^Ikt&]>*pu=IizVM(>;-cq51 ҄ٵVKDdχ*x=(bc;)6(J0e Xb 4)9- g+p Ksm CDB -J#=F8(j a`N*J1.8d[įP87}zށgf(iݧWv| CEN͞ʓ[7u,^mm?kh]*n^e@;bQˌW x`,2G@MG7yz÷|sۡ%_UV".3Qn%pс`A]ԁ8GF.۱\Iyc^_2wgk8 }2/ |Z v07-w|pip <&Di0|S^EEtq5:jQ L ]?"U;ҏh$ (rK)CbQq [~Y5) 1zIzzDoXK% Q&mS_E""R.}Kzr)`9HBzf/ ͆dafEU)ZjFF.TqoDDIH'1_q)YۇU:K'md(V'xOPV\7/a1bQ5S oQw_M0yW sp|A9ǙۼY!OeߒםE508;ApItp~`k4f#V E#n?q́ڝ봣#\S:`Q3q%^0q]|-?VoL{ёg6v g^z{Ůa|CK"*& U)*`$eiDúњ67KbLφsݾfca7KRko>VBKm3<i2Zаs(^)3PoI_eJQ.BN\>$CQ>(:9%F}pl_M1 db< gaܗ{5md]™,??+(CY1M==+(1(AYv cHt;Kl~ƹʚ7{+·R1-(H v&paMNvo:]abF~g BqaA/ T8Ju8c^ͷí LjJ"Zi7%7 CÊNQEpxY2c]i+gmX7J#$p`}g`W򆨭p/2*8 'F F|㡠ܦ@4iGk1<'=]Vb$u7V >1;bPUjf!Ђ>䊞uV ε`3<2C?' y%uc:Ȃ~4"#-[n l$|p/ <U+/*ȼ ,\=L'Q@As> 1hd,a'>/Ǣj}-~ {_oݑ'—<*{i`a}_:*,#^~䓈L gܸuP=^?joo-7kP0.2@G.Yg䑽yoROxhTd>GŰ>y=NulOb! Q ܶT~Ƞ#I:7HZbRGZW=h Hd[ВViQR {Co鞑D?$QjE=sYc&8Y6o()m"۪2P 구S1ȒRO$zcGr PinTI؆ ٜVNdlSjkW aNN}4E_e.@{k?J G ڟB{I!`x. Bآz&iRS~5&aZ4mx +EkOYFogiawأ]3fQm7V=3i@bò+{?}G&Ĥ'3: YF>Pdf4]ݏ.9Xch, SI9Mb/~tDO?7"H3=0*Kxyy.agס2Z>pgޙLBa\Pof2ѧބϮ{m/|KoD?YE- =`A?sRߊ+nZJFg6zw4 Tnw{I[X<Ybede:ʆul~ ;Y^KF(&)FPh5#ȹZFȏsdOb `.˽ژaHJH`1},zJ[:LG}c[+_&ό2y@>heu+j=$=IHuEw:{M X ݘXqWsD@ۢNi4NC5X뛦x9$wٺ=vVhZꏻ/j 9SrdUV, {$eX6[,Z>I^ w PIeՌk @yS䔑JJ O%+W'T i)̵GU~pyfh'Gh<ef1U3Dmr7 9,x7찟* 9}76;y#xUy.}A&%K?Hc0zP,:W=Y04 G_2R{1 Cz;;ɷ-CiBq.>cy`Ęyj %\S(Rc~/zFGg,=Fv03%|8SugKNJ@`zu@<DO O[@Xz8Z9 D7rq{.l|\)/J%[C:= AL~'7<~ٚ{&, >f&nwVS흤(H&ƈ_HV~O m u<ƣRmhs@[p/{ , ;\rss^(vBgLʳ9lsM֦ڢIF t_.|X <7>?(bܼJS~5 ԑh=bKu:p8LiO 'NbKt΂?9 >;Wmc`$Z,Zbw qNG>*#d5/| ;<>iߤ  K?y.,C"r75Š-0APDC t.joǂ*w[GbRNLI~YWf 8u2N6L|,4KC(5,4R}{S${I@35kMfFse Xl\UhWEmOVA h,DW>bԃm̥tÍW6]1,ڙ,Ԕ5,3ȸe/_]~= pSM1#Mp'lfA%J<T`|A2DDZ8$xJV\a+m1b=`bkZIerUQe35ӱ;IB*X;vhlk NhJLeT*Aa$Pa[|m_8pU#m,^>\4,u@^ňhϣ0p9s+L ZQ^F~}/e%f+z{{R-`wxݬwUL#DҺ\7 ts8%A~}x|5Yy^LњST;^b"dWgN$b0=2~t*db]eرuH˸˭H U#qA-cL^>('shr"YtlQG.̎ٙ*C2q{@ÖC# T7)1CْuTQ ֮ABbx1gv m8/C<t?]NVbYT'"B ߗ {[b9(Zl _F 67brd;4 Z}>n!e$6C7̬'5RVEc^^iץqspLֿr/P8YЦl@b(L)q+jA1 mz={<BZߏ}N!Vk;MGz}<.T>C[VoWlZ,ŝ?E; sKz't*S9Y[W}C:]Σ[p#$خz|)J, 9m^Xv=<3oKEc= |O[H2(.wQhzd*Rv?TmD;$PtX7y`Dcص Wg-5i8-;ۢmMO$ gRzxWMYU!(;4e&W*e#Sq-|s\dz(O+ipi{e}޺8SY^}(z.2Й||U승g D4G#av E1pOD/#́K_L΂ ߝtT%a*z>f͖}!'(F5z6OrbB͂{C{ǛY甘@RŸsnO UGˍ~?AnBm$2iW dK.̒F/MIb; (FZV <:, g\:*DsMMGb!++P\B+ & P ճ u$k TQ:#붐* yr9Ew90ݝۚ턶J&2lg2ok(${[hnì…2p$b%qB &1B}SkF"(!)VlVuNi)}RCꨞoD#vQo&ѣЫӷ?) Y_sFn>vOkn}5W iQPԈ US IbX:&7|.G`o|ˌl$E1z@؞W'>4# NLvGNJM~qG5֩C`mԬx]{kPG`✯,c=,Qx۸~-mJ(CVIX{q5ig'PoQ݁]ߧ̪w㬘 }Z8y%64cVbt K>;QaXJ@jI= ;j7p?U,Vn hF K^,LFL6>)Rd̊F>Q~Nϲ h6/K+?@9cy58.Ej(w\OhD ˄"zo1P+ӓ'ngy(w;ɕT;u ?t(pg+zDGΑ z,%]Ҹ^ºEBjfZn"# bvGJ^4P4~?yd]6#{U%Ɓ(fĘ¢ߓ'4Tbk;lAbYgH 'X x?" &RPk*OJP2p0e1Qq%=l;Խ) 4J^)&3$Ћ%G!bsK{R`яzgޠKi_ {+R֦GFű$w#"5!~Ң-/X{[j5`Nh6/ ]\27Das 3OJTv"eOWSDDia}H6Cw`oࢴt4ݙC\Q XGiACzGJ53=|jr/ v@0d\Yjd87Zg-`OjB9m$<|*>Jd>kϻ:Eʇg嗌s*w ౥飉Xg;vi27ƶCcad7D3ĒAD#c|jE7pH^-7_t&Gįf##8uA=RIb69#MA8Gww:wQQ%15D\MF[Q;ϼc|>vqE4[ٲI#A)w~M}c/_V;m_lIR(EcQ/+6jY vo?\ ̺YS)uJ$ͺ64UXTFS7l.fX,_dE"93 p-_)0 ^*Ch=hrIŁ/.t!D06G= 9?%޿[PRb>D\ĻI/U#V3>ҤV6.My$RڂꝐ(.$PƋO ECݚ2}\be(Ws5-ȹe֤khV+7j(v*^|P<0CzFM̲~] chp׳6%>i]O|gkL1.2*iajԵl/v]*KǍ)?2@9oHr M>Q|/0qԏz0#FꗫzFmbW \H[4 6CQǀ =1Ob?+{=g]B_^9jcGcaiu: +5Gͯr)b#m#0x;S{<+x%glK"0]'n=DPnv)U - ]ۖ Y*P‡22r "B_7[|[ 4?M|N9̸'VLMujw {'RBz#" a 1;"}%KA^Ѓr!p};'-?nޫ_ )+}!/XYo)8^02y1b7G1^wY]YzBzݗgzGNYIda8 3?8%l:ѹ؍ꄆ G(Uy/r&ͲpVX8)`VJh7nfS<{YIuG3VWo?7gws?"& @v0L%\M;ԅՉ9S=y RpϷ+>Z;a"٠ǖ:ivbt2p;?&4*-f1>(2ydV3@t.r,#<VVk$Iyqh|zYOR|Hlt`L3Uyq`cAR#t%ju-9f;`Х #|aE7*/_(Tm`Q8 zP\!H\`dy' ĖANh5mw3YRKQۦ#D@DZ?_٨ŠOW&-EHJD{{875(>$A_4=zMl]ċ],UTMz).Ge!2C){rtsq+1pHguhTRL"<s2=Lsfg8ElnL Z1ѿmB%&4IBN&s݆W6nP]PV0.흙IՄJ9w{N?/4F5})ޯ|d/fB:Lʽժ<1X4ݗ87AJ:꺿$ uZ}3Y߱O1- Hj]vU˽-|ĺLh4`X0<̈\_sҟymu/N'UL,"{bՅ5(\X윙HǀP4 Ͱο|0F*7 y=&JA%jBQMX-xX#yLݝcnD}wt$@K% Y*nz]ZSm[ {-dˣphC-f',bC6%aX%~Ԯy I3TzehJ:}TEL\\>_'d[ëYqD{W<V=b|߰J9:xnVM;Gt eK͊ S~!-YrV)D5C_ F{2©Kk9x%#|vw]zn7j\31;8#ɄhRK)d}(Ls՛0Z4nP5jOBN&+ q몰@Y%-Qޱ$_v _fS} ME$˜]Wf%Sw_3$\mAy/Uײڱ è¼ТLqmaDAPH;}mA[2ݓO!8g7wvGq>l#tDJțunx:"#% YJ:]#hOd\ rLǴT<}*#B%7UNVp<`C(i3oTۻK7FܲA)2:͠e #˳PyCf@`E%DuҊx7,źCj30p0-.T(&@GJ);PUahEgrW魠8 EI$kmq^sX|P zi_0ksT įDWUhimcj?_->+Õyq'@ήsBǡ͆U\幂gU rQɨ!Cô6~t)R4nٵ -,M~k''E t?= yZ;Ř^%Ř}svGa0%}W#62Fnlt^;#=g237p@~- *6C+&ei7zqگJ@AH);AAD 7Eua }Gɯ^Y(mUNNbAQd'sq #M`J]xõ6$DLM |U-x2#1_+k+Mb:J/ ЎDΗ°:롑~B9\ 5Qzv\lvd J*,#A/:K4|*nb"ìF]j#Όe=+^7= ۪8R`DQLe7G0m?bFԬycvIh>Dr0 p28u1Q?uSp¦1=+J\W$_@f8vsNr52o\D?6u9*2iqTI~45c{*Ei0P]:M[9|UڜҚdࢁ$ dܛjZ4^FGCUN4% d%18&7?M-0t:xwa3~((!S ,=< ~7WB,? ԇE.jue+wϧKOBP~ & IiX+m0ssvx\x^.堃Z)+4"6rhYEOO+3*vt %sw ^ aڕf$Etj }0(ABk%47V ;-p_Z16Fm@bn$Jx3dIȬn|[d7,BFKҠN]-\ o>Io:1lSW{eDbK&vC cT:nuՙŞe/ 14`p\iexTl OjJ)Fg\f2!-Rrq?_oH5ǹۂ̹ayj^5˓2!ߑlz-@;1-I[SA?_}NI<~UQ-ZI5Ff6Ў0n[ qdr & :Ըm4u}K15x6YBNUnPeO'պqCZB@ZDlHg3y5ܠ6H{3qGQv?FJ3`fP_K, \peV=NHæį~:z .MgHuB@xpMzwi A0äqxcY{`ąw.<ڧw7ڨ7 %M?Z(DduK]] Ċc !|<7p81m#/|酚2N^3tMwhaVU0Unǐ;ofP{l,j Ղ/w_ H@ck|j{rAK>"9^&l}?N|)GRƒݝU%K-6?5[;~hCS,Peze!tt}\aiyN} .}0Q0 zQ圪~ڎ:#8ъgAVq0JZzpHKfhMB{].|f>67ѫzhB--!ۘKUZLiKb*Mⱪ]$= mdaT7 ΃z d[Sw?%}T12wө-rՀ (UJHAゞ dKkӯ{#?<~Bm@K!s(?ZKչ7ތ6j 3r}Hwo|IIժ:~su&u c'Q4i"ٺ") ֟} ?/?WUdScri߽^>A3-8bT8;;Bؓ"߾xK檉Gsh@Et#.+7^#X<#Vtw*UL3f&a:H` ;;/ ե#㼤)x {'כAdΖ)_Xg^, 8Vzx/b$'7)MLxJTm~?{@S")ep~38r'7CEU6|I2WЇ̇Uu,TMj%"fxElğlgvqZI./郪'Dz%YQF&pZRu#iD a˙d\4L=ǫ =Ԝ/zI%j3F8f(1:Y\^gheRw%6&#ImLl#TQ#݊k_ Hf=yxTWg؞jZt(rC` A7Z@3ddٵ@1^ 򄭘 .#$ϷDQQz6f#Bkmjd)ڟWT#wؘcf~Pw4͸{t-̈́-᜔yT_ASjWN$*TBE`Itҫ2\)5Th_Bcuq]$_ k'O{b!y8d࠙dӋ9 2A4CS=6EӲ \Du>ͯT%+P-rs:fYl*9IϣuAʣͪuTij7ZTkyuhh_q̮jK/eU$]Jm-{}ȴn=]y1$2G%cO'ĸDF2KZ΍J'=ƭg`")rKRt0GQAbFG;TgAlǽNuwc4*ZRKUIand8q6Q.͹AҚ8`} E?j4h@"qZD0c͋mCj ni1Ja&%cc Ykq,"|%zbVeNa&bsLǿ}1Xئ5cڡMt ϱBۥciG xDeE`i TX $Fb_z>_r`uJtEz=<]tG&{@7"E\Wץ~Oe zu_&(`rH8TوWb9+hVi+09V v񏆖'4׻<\r m[.Tk7*\C QX\Fn iZ4 @RF@"{ urn]-Rґg{v"oNt͏b"F`7H @HN&1я3MޭF+m.ʹ"4EF4Uzn=h/[cp0Mlj~dG:|0_N s*%w<]ڲ)dX|L0d:wPt/>VY8MNؐA\xO]tZ0YI(Z<)_lO ڍdšمJZ$Wp) a@P ej9= uK;$!DٵfeÆVc4c[N˟T_Oq8mon50\3Z@!fu,d]8דaւ=EqL.YL@r25*Uc4wRs9I債/ th]oOS=+fA`wjYߺ(`:`qZ?`1eT3- jZOanUb P^o~^LEWNxp/B/I^H8"lpr"* WKF5wܠ>;SThdYHH.(%V :RYL[-s@e$u@ mZ`wziȁb gmǟNԨO|,~jlE.g1"`} xq&֛ggNYfl(PR Hj4ɿq鈠#r֪5i7d7aR{$Q)Td=yR0( avflq>mRǘCS ҵWƞ$E vY%IZڲ5/H'S-ܠ1hSp[F/yF3aYY,!"9ؗ`෹CA{ >D2h$v!8/tf_cZQ(E!Ǘނ@J Ѩ1Ȯ,ߥXSnkyWĩ>+.pf֯Mf*eŘ% ,XjWPƖ_ OSo8'_ Pj)ƐBXazǥN]ȥZ|txZ! e4k@"Yy Fj,>yNSG T +Ax>rӚlq|6~ r)/RsRhM{{N'j!M,ld~!}I{Kd{y^:lm`8HJVD(eE.טd6(8N^~tb\7,3Uzra҈IlIN as\5#{krH]xU7 4ۀ*4;\r$#)0|lE1@Nvv!Y1X%:ځA^ე^> '݌s &!gY(x~6a|(&Hwplgc*K dϋas@:{ƪ A~Rȵ..L\{zEN~9m>?B~8'.>×oC ݥ M%2,,2+ hւ(p/P?oq"j,͂ jo+\4vj6)K'mvaNiUncpJ4]*.&FsϭCVsGQgǞ\5`$fÒk=0̚$Kb篐`=V4G؟Um82G&PDO*/g\͉lU@r jwܟgDk0ع6%sr{,U: #gj=n5FzK$X#K8ؚq|G3OJ> 5r,oYf!t]v#QD]LmPfgÓg>} ӐWߺ3/4F ˀSb{lM_euR '.<=vbpXL)Yx ^I&$xOrWMrabkA߷}׎Ȏ&O57+;ԫ;FoJ^7NX[ߺ""x]Χ.=9S߹$\@?qQ--Sx,r)ha;!Y)p ;Nʥ8?}_<UqviD>wW? .XnN0v7:㵽_I1u\xŗW4ILyspjc07պE+kh[`Mڭ.fZ>SrW|3%3+O*dh}Ro/ڭWP!)~Ϭ)دOW gU V8UiGƲ!׻q4ܰf`(T}]Kg5`Q'}x "XmoX57R5{uH֚.G ]lnR MEal6N. da@򃻍ʑ+X_YdIuf )!vk2Ac〽>6$,^${{w,<J r"p脅WņIzI;D Ȑ2DSKFs߸EI<ZxHݘc(-&ZwP"X3>a@Xsz8Ol볺J"B׿ֿCU S\s㒔O V3_6 uw+>ߞz##}QUD5>Hh.ڑUW$QMob LVZо颕jAQO_C~U7& S Hv)ʹ@^HOxw. a%Ǯ.w-4V`d{]>3AB}g2PM5>B}!O)f,`8GVRyh(9*Iyo/i9HhZ#E].aQa1ۉ19D u] guO1cS@٢hKvxQb0{c>SKYoc0;stLyHNguif{tBjjd6n#c J[ğx>PG,(sN%G(3mRGB:~p1<NIǕf2񥢎cz}jrɒW{d%\~\m28cG#<+!!CvU0pDCg?0;ЦQVv*Z0WбXqf+l~%;8U.a_$?"'Z]%ҏnK6qH5>olݰ:cOz~nN4; bj#o`ނofԵ,k5774*#lG.|k:k3^L()y{bV@ VM *fdxģtMw..t^b%oL^E< B"Sכȵ"X5)?YeQ71U䬆N+pOKln=lW'zoêڝ3}CyA`P`lBFx:P 4OCqGJפP51tٜ)ؘb]D|anaڱSDmtTwy&˥u&cl̑z$!8y">̺j!_ uLz%jB1F|]* 32J3 7֝9M`j+R6#(Ѝ1:{5Zύ~o.k?UAQ*`YPh#i_: 2hV2Wv٦i 9fǣ:Հ1L fت4SZ xP: &\5Rlt?o˒>wiLW]g.'TL;ȂTV߿wAI4/7~ crEכ{lP.Kf5hMN,{G{ɼ ڴ돆I_u_ [}?=n7u+<*ޟ(SF:&ܒ(PpݺΣ@+>%K' Dz^-,>Uf/%ٵ4u4iI3F:^= ul5aEDN|{ I9Uߐx0GWLp007bu4ʷΜ)m( x(3MY\М(>& K'g1dEe+(SLXR¢9#ƃ awd$wLmlKxZ2T&ÿ.i݊)B=#3KݱmФJ?Wk^R}YLs؀X?Ro^Ytub'ϑ"$(.dghQ;xq0OZA[Ml ,&YD OrL7(u(2 &Dz5Xk2c\2]&WgM>0'ŧ٨jW)^!{HڂaK*w|ʹFh0 ;tߨŀ8xo, M}W=ߓ(".T2_*Pcs\i6VCc]"/W-cjNz:/{\ $"z^pe݁QMl!GrZCBUAiz'7QiI YyMƤTƛD<PV#tlZWKw+|]#w&(į)uFe+\*V`@Zx c[מ;1n c|ЮDŽt؝tdFZc)7ur>9_Ƶ]Z2j?=L~xFĖ `8+Hpҩmn'~JKIϔf'՟je^_^xWc\W'SN/f{8x54>|Ġm*JyLŦEw'FW6L@SS`? XWvq/E/ou'~KYHCf(H%ߘN,! ]?8(-{dȐFg UC*|յݵm$T787'J>-,%N{ LLk!h6l݄YꦄqއeSo| 0נŅ:hKH^!5D;AWcO]LQ0?w 8Gs"\(QoU/ϥn&UnI $ES@E\ּ[3(d <1pǚKk{?.I0sWVTu$v/!{#jZTq!9XiFxvpg%.~"{|T;-\TNSռsؙ]\&Sp<cSV,x'?ޡqV4ձdzgcXJd"Z^ xxCubaq&J]z{ӵ;RG9瓎 冕#B䀵 ݋;H{.~UJ\yS S!ڒ|O#{ƓvKbfF]S|V MmpkMy/A]Tm%R;g kK ~ %܏{mv8}_xTF[H0s1Y+TÊwrݏ! |9p~|n1RZ[m dpYи5HJCƇ*2l o _r%rC̄׶ žvɡ lh'.Vn~l7^яݐDst}]LQb SrxMEN̞3ƣpٻsa*`tZUX>J(ӃOFzuBαAj3) x `xX;C}4oPf|jN6ntLfPS5xj*F( 6~V _5>3's2Yٜ}&L$gpa͢M$YRL[8LL~t{>d~G{0WADqkUF`M8c񁃸؟9@C@ n[`N5qԲit0a3/͗Kb琒@"9 g̾o B?uBA=<>gqr|;] '1E{(@9>@pf4rvʥ( w5< Clai* rh2GKw.-D{De,099.%&z13'NC]LG1:{=,UU3/qteIT} zXoMPvBe yQg[ lNfyd"  7 @ IչP)@{QAl1_/2v)nnX.&=j 6]S5u&ewC@keO [rd ᳘'^E W[S TJ׾oN.m"C1Y" ]@aPjyTjg<MdFq #B(% ۗ=jlb^3]NG AB(goaJpD-Nou"&chT^fge~_~b@_E~Z&|ڪS@xTAO:]ϬF Y Ld_t ifWy؜w3_E}{wо 8dN!qV&\r ,6MwfدDϒbbOQ7p˟p}_~rolXfep }! ;sNj])'⏌pw_#YB<5W\ʋ ;Ln dn3.i ʓ BaI()S0"'n7~aIX!8q*ˠFTvx=g2%di 8(T1 tԿݔ^.@l.d]ZbrZvYtL572b>=&썒et|-1$rt GN ߟֶkI` Nu=}B\;mELq59v]C&˓P'3a?d"DfL4ӭsP6s:J}jZV'V=,niTT<>u uIԧc\u "fc!s>YuS<9v8A>O>{RkQI He*+)SADL27 N8)}z(&f@1s+uɐضS'yi L8%5- \QmPR '~ožak#y:^EІh)DEd lUhT2h@[5iXפR؈osFkg1GM+O% ݬ2IM; 7;T`&Aߊj(\gQ1Eخ@37/fxjth*KVWFe'5aoXxmbDn0U`lgA CZ>t,+Έ?L:O̭Fn3/_ ^or@ t?8hz3HnZVVj.m 7CTebg{(=, @ڶzYy>&&JКu5-S/{MTj^ob`| lܟ[8-2 J @=p+,^sz)@?>H˺/}&4i؀3;T2]lt*HA{LXs&n6&sDž—<0..W$[n@toP+m;\O5$S9q֨@|T#GH&DOg ,:2}fP/j$T6|%]XX` 5|8/;bpMDIcl3MQM^fucA=̒LXԙ[bL %nwiG34Z32 s3K⯮A]}eBQK^Pm;Y8QX@:rB$n}@x8;M7ڳ6U]r ? y[vͥ]/"X'ޏu[8DMW-Nî& \?aP<79o|a`g@&UGa%^` zbs9rI.rmQ ٲX} Osէy-+/[[n n@LPxOhA!aB(~xa]{t$;k#l]UtCy-3":5/?}0e@P_݅"ǮoF]eJ$̱U{Ė/˨,$MGn*{vϪuqnd^Lty/`Y:ؘ[ЬH2#NT\!ExTyJ&?|h@^H@э?b\>xOrБ\%'|Xb^/YVLqwm~;4fe%zR "{uo:?R=>Vt B u$uKbg ͚d ld8K&5] :rQ^Ԕ2Pae'q/YW|M{} !|չ ,p`k6@k+\?W5=1Q-> u'uL;EQhgEs NtNNOp3XIP엦2E' S.oȘٜ!9/Yڭ.{ߠ|uO󦹈w`sN<?2_ 􈸺,OVyÖ J]7UXX_0!ӎ53 3i\VO|wFd1P?}+ne.KK6.qn\Z) du8kNp@DopرhVT ٛ#Zll.PE BP8jȩ)}(Ro _[SPaG][p=!xbٰL5U_&^,NxR5G_rN[Z)R?Y {$.=:d7gBRanc"'ffsp{W__;wx4p pZc9s_+fV.GrV#KO}І4zu}EҨp\2W?<4gk1RPw">1z\wXHAw]BKL4X9~=Iih3E@hERWL%eAyt'}z}._Y_GZ M*QWNumC[g7?G!܅s9DB9XO1k!e X钉8@WQq4I;sroJ 'yv {aj\Q&g4[Kӕ,׻ q*,dCܑGy@ E:Ǎ?42!dw`7&# e p4Umm VcAWnȐi_Q>L$u}81,ĒKe¸ _R5SL7 h.<= ɜ7[C~⃃T_9˸]R~=Jg\)K-O8^9&k7p?n}(I>NW4_g?,sۤ6 q" Y56/[3,v0,cn\"trD2&$GfwwU5`~Awz5xLقmnup/&ݭTkFQR''r ej8)=5ѭU8Ƹ֐4( ]%U@OJj'?_D@ 9~DŽ fպ%5KWD!ZI%WI',87S=4 [vJ2BV%d],*R8ئ]Z6C 2t DG&%r6jW>䙍j ųI1E'2?MH]ۮuVk/z.%gGH¦kο̙vFiW s)bjz%ÑLe)}_0SRVQ0 놡zHDނrG$e\J|9IAcvAl>fRLIDO N4! {;.* ȖZM4=X|V}f.q#xȽ e;4J%5O7'BIw+uvcSg2zMߘW0p],rKv0YcR8_A9V"8mw0CcbBYӽQtR1Z9ypq M)H'k3lEߤV3Lv{ƸvлKӱySؤicVCiVjذM>F{cuܺD0bwXٓDh29wvC6|٪7\SQ݂" rlZ'-}rHP.hbJt7\uL߭|[74ly]obQkLJHi9Mؔeу2Ϧf%f/k}ٸi\w$efv fzn `nXeQ/-S~"OLJ<))Ře|Iyi{~Yơ3~2DUCX%|IM^m#Hk,fNdxY;@ZrE82$!w*B1w􁐯=E,N 6lȍ=I- e+mv5dKNB;DҼFտ 3Efl2|j'{sBGĬݚbL/`{fC(ߦ,?!7q^jTMACC;a='rWc|V Rq0p м]NYQoxJҁn0J|WZwȘ $I/ zΉXW\6ԥj&Ę ` !dRG(OJ'?4H8>nwL; L&FOl:6Jҧ&0I GvG,W3ԯU%"GČer*Gfu߬e&=R ݱwb-]r c\3I]5z'r M%2ҕfjU,vu۝Q?MKanPV쌚'äzo9UcwW6c}Gc`';sF0KzF]Xi| 61 xb FO{`iJKr`n_${d&S$ߩx=+_]ג 9`:D|G7KF拃{c>̨S~M,_fRmYbU4q|׹P?l o~i;r%#] }ׇruW4F ,#5<8}mac dT*ۈ7Fპ9q4˞'Ha8.$>sy)vlZY6Pl{^G;GZDs%OC(U疌3+EېȤ-~ߥ)tH*..*HQ6w(sT0>ftY8sMwϫn}-Vƀb5y- Q|03뽣@k:,?^R@Wje|CcZ| (xW[c(WOUrl\ ز U7dKCg;g3YE$ tG Sk .zAi\hNA9 =g2hɏ̇ŊQf7DbPhCƱe5S^jAC9LdAG2 ;B ڄC) up=9/F)YtG_\x67*`ˁ["`;Ԥ I^NK["*:ZNe0y]Ttpo@`bI38  Q#0r]80.}mnET[Xs8qDOG:G/4Z+z} 2g?># J(*pSk»@M[*v5$@LwrRhn/ yw> ~߄2M13h0ss’P4eχ)_+$ RoCN% [iK'$qܑ׭# JÅW:2rvU.sw~NnHSg80V͆DZl5]X q{0dk"iY sYgg\]VkO#jlϜNرza.So[..%c`p\כorI8hSyYg@~T 7ն<}:ѓ_}xcyfpvl|\XշXC>)c ȤaǕUˏ}d@~s8u q4w%'%̙k1yqP?KldQ N~K싯'76.g=G#4uysXOΏ1ϊOQ/?ʯ] ^768 7>vx_WMO[6G!q8jJ"bN[\(̘~>txswY !̓?o W.UD7 eHbYw ߽P #2LM4KqEOj#р'/X;Xc2@ p/ ~v~,;KXN!p_vjO˶x?JÀ(xk29 ۖ7S]mk{hJ 6^¨{K;=I%uFo*S @Jz&2H/0;X)7Y.>M6x1%By4]?Q; Kϊ#SYG JiN!44GeW(KP_f Z#ԨS+NzlU<"WޗX";kO _~QS^8:lwגX4*hBUC@c,hazZ߅5$pB  FOvZՙ2vs.om0^و =17T,e ޽l@j+(E}Pno%mKx:nLfٺot?OΉA?S,Ad[h)yT9 i١ z'ZSV~V5 "xM|LZĥʺ!uk"]Q^r0O|Q/}+|]ŐRZg3o P\maƬXR]+>CmprQps r=!9\ps7@ެsy5d&{ 5/3̔)6-H=\"D'pHb-*5za'yL:369ԃ>E q= 8 @tP>(^0ɯ_QLi񰂧ޏ6GD 1 ^f*6""bJoC0j>TIa|f*fq`[dճ]6  5qXTΊvƯ/H6H5 k 25 }XPVͳks1:\_]섟)}8h q[deKTf-vs:!E8"Q4![ ;Uj4yHm H 댊!{b?dC' 5#e;;$?[5ċ2~[r4-Jg[W.ulIy=;TQF!cc9b,fNfȧR,bON6_Ln )Meh 2׌1@}xosOlhDD^}D 1_g8JM~I3_{Zۄ} 0ju@Ot͌dB'ͅ"z?b lW,ʾ68vfh Նd 25 絷XsVs-6ĸz[]f+fn;6Q1 BQ^RZ١NO=A^1SWie]CoLguD|l)m@p57$:>G-M L^BM'e2mH*,Pu * EF}* DHc9kô/[8#L+~ϐܑXF~&;#{)w"fv=;U{%[~F;)D^44S0jԷ[-؊XXpҾ0fF!/̎~lx::arYuOhQwZu.9 ݓh&v̓Kd:yL?GVwc puhc8nfYSc:WU@KBP^MTceix&Ӓwu,QF~Tk135^zƐw $(3cm6fԛ\"Eou"N:all}c4-$r,xA8~+>׮ymeԵU,<~?DB? D_tCR5ezhV՚a7N! zԥ yS_(nyPc5:SW]1RBTN99,m#iP -QiQp˸)k4$aH#^u)^ϳ0Ks^%OXRElA; C텼ׂi 0j]+çQ60ϘaOWoE!NMyz["ܘ?ڰ{@7}M_ѬYP!\Qzg *y,Na=ߩnTLl &3+n-"%"UZ9πLxY f{>s}[]Fu*, aMʓCvۍU.ET~inJx](`WŦRͼwe+? G4)?ء->]M͚JwQL!kɠ0j͇BH߼_ AH .PLK`hڇ5Bs05 P,#RJ4I9ZSC@B=a 7A +3 ?7U^ReE^)dd?>3(^>Cglp2Ɠ{Y5w rLC!DexkIsǣ( AatJ{BT]`6nNeF窦ﶟ4TBXhCug"ȁ0MKܞjT?:+ >ɃE,Q\M "(1P x',xXwoc'e)ۯyn  oKMdYiS\,`%H:kr; 9+q|f $;/*7¢W$D}Rfm٠x@Lp|LC4YK$N߰I6&[G[8E;]Lae.C4{8JgEI) y+J" %?}Q[hgY2NpKh+$zlvT~T*zRźaFps@"Űi+LA95XgX5"@F+ZWK׫9lZB50Hzr1jbPVл9dϊ^9#;*(xJ`rռCʦ/[\wx?/#pJ($7Ѣ2]ZiFVAN5lˆ#}J>5S'wlƿT~ @ 7UapG=NVuJeX=ȕ#/XF}z |S$c2X's9K]bΣF#x۩.X F}xt©<ߊ|톳x p{jb&νZXzbw㷴.,72яpkݜIYbG2|#Lh~YرE7Z7RK(=P%=W h3Q DWdaw r~9I9ʄqăt5u̒i!LVYL$Vv^?$i!1Y-E0HhטXn T8z=m%FC!L@Pjp9=Ycna dWr~݋(B\l) o"]G*Vh ]P UC>[p7;f|sX08㉜CL؝|uĢ:a; N 90P; 8SaN:F;tW x\p#hx\_G+z1NӺj|[aLthmgǼ6c5],vYe_YTï@)q]Z u-(gC?};jLH%uX]KK z {ܭ?W6GWhXFI8XhoBOT-]śQ BDT 5=}ݯU5 7rC==gW%f]KGhQxꨗB~=>SGU I2~)BkxypX\M i()+[ՋEW|[:[02s7LHod栨`=@f`Qf,K驂E"osҚ5}!!8-ButeD҄!aόck}pSaB@*NUvN}qN,5("}fWK<˄ǒz)2ź6 AU:˾@ePYUcCeF_E ,s-UTgUc~߲kF d@22-[gƊiQj%(?j, m[0TP^2&jzE9lGrgsna¶"\=ElAކ5 bq-]3%6v,a'2V\'e9juϹ|F2վ,w7K#Լhp@-m:-~܁qBЌ{KJvܛkhF0MJ";X*Nyut`h@v`L]πa89u|LÂmS%%PL.pҩ8@tf"0G/.? m=HA}cҁ9#@5ݼ٭kOd;90MxaUr;!hw1xſv۰Mtl]طwr,<{Ѷ"cDE՛I+NmM1 Mlȕȭ05VG"@j8N`#OKN#C't7],"yU5Ԯ,̧ؔ2ۢy@I(&h`go- i-Fx?&\ Yj)3@i \ cE ?qƺ i{p#hj>>phollQCu?dןbۆ'!i_-"u!Q>;ֳx6xfb]fIe?-gVBg;b|c+uMYYEv=Hί+wU(M0ߞݘeFy_kTX0 bF\:x??XϝvLwe$|y[z>JFȮg1ԈO"St= 8׃`d8:eb*ZJAPf vE \"qP~[zt[VS [I7RE@6%k^o;_J1O4n0,;1}Mg@>O E' Y~<$ݳSGXJ Bj?8?5" N@f` eZ犾FfRoi1PN$CBrȂr=ؽre=1ux Tߋf9ܞn#%$*58 ]{;r.-r(= 0Z KX,Xa!Qgyjm(gO W]kn-!:(wb75L V.*qm&K1Uo ǒkr%Z1e&\^J3#kf?r f |I/ 5}1QfNT[0M='@g D'֟*i}W7F&>ieq9؏"ʢ+p=r$ٚ1k??""][7qu-) ,@w[J/0+ >2N5t-rC=o|q%kX':)9*Np6!z$ߣCs]?6?> M@ښ-x|Z4̆ Qkіī!V(YxduVhJ9cjme{bHjz /ĀYM^/ o(Z^`֯ >m|:j$ti!Hx}oYиV3Gjrfں=8[%sa/5TYwJj:+X@\esA9+XӔ'Sv&3Sʬ|?0=^X1wMh=g\JаI﹞+u/os5&`U(hL3Cԩ4}BAoK|IX8<;dNU<Ө7 $bĽЗʐqMHlĹX{LϱDCU4g2gwDu5I 5;I|Z>^D =,F= f{{V6>8hh7kt-?l`#m["RyY*>_rHz:Wm<w 0œx50Zqd'@dop!ۖ=FNi9IR~TR݄uPYxн7w%)ee׻΃0CV%a)CpWѠNhbiG ҐRkR0z` uXY3fccmpz8}ӑ#3V bVІ-pNuEǶgߞ3Wy7e1p[ 3W_Eyl›J. ㅸR^LIxq( ]kZIǴc@}Ib#Æ*&MO~ZҮyY{ k `R;y 1Ÿ)|$$}y;FVN*խi(J g W(Cp7ȧ[s r8KVd5P#h3O(dԡ(!t^_$A{9 1cVTJMwiXSJ](&@bVYboK[ &vDxZq 6=PO$j{2.HΩZ6@z\W a"$I&ũ>O}6mFMۿ(ŭq*BV"m*Oz N _u5v1Q]5C5Ȑ~=vBb|P=֔%Z( .Y|hvɀmշ~ a5@|v!`3[9ֽtG\Hl_c`nwœ;$;FuN{l~; i @\VJ%g!13|f,K{ՅZ*m/AWPwbcy!A'lpɿג*U'_4Y8E+:X6-l RjOȯ`cz;z 6{6?.f)B´@Hux J &וCW!䑭#odTm1 = \\x(z;tF<\['Mŗa,Hy_ofBqi9`h/g9qқ$rnF"UZquܲ)bƮ gc>[e&{aZC D:kGTHI֞.Ͱ zeE;I[ (xdWﶮeö}-W;L6Uߔ&У.%!irqRhWbǭVyoQ|n&-GJ} T >_pO*# &ȭw UT*%0&M,5y`tSHՋ ,Ž{ėW aydF_ի+#90ā3VQW]6M4qPl[2uX*_ͺ۰kJ$?AL[pF,@Al|$z~* ZV 6<W7RB`v|ߕ r:[. j>xͯhT_Sgr4 SS??E}G۝bCHDhʤ&o2Ǝ8pԚ!` ? Υэ%աVvjh{bN+Ni ݒU]X/5۞jvk )c/1֭Ұ~J^BiԞ TT? 8h|x\A7Dpp]{7x.{Ћ露$kI.O7䅶Vя`G1XG'qB,^heٷCVm2ax!}}+V#*n@r}pNGm:\Eyy3dJ@>aSjɮ2sB7[[L&n0GbX>x:Wf(%rLoodʼnVǰ\WQ)O4-+xeKJ8/@"hU@h3h!pwj/ ? M41ːml\_m+qi(6Jú+rK jܞ)Yv?.̢ti$ϱ̖5d3c0JCrPn&Tt'"ٞȅKIZ9f"& -Vt} hAY@OTN_i@÷|Ie5&tkq Z%&f:R-L6ȦK7cqrw.Қأ gtGӌ0gqI0_!W|daBнWT&?`-nVO Uyʨ\EM,`xnS~2u vB.k(Tv7B.$ᩧB0&'J]zLb^;r0/mU]_'V!صJ JyBqB!7.`O0Ap' Ey=2y ཆگ uo [!i)C}0vOӵ<)z- pdrҔ-J87km~:#T[֯Ts)UWN;'%&]<#8hjXa]g] \\k2!#/4T;^1-JKgA!/qt VѴo,،kW!)%oh2>}-ك=NQCz`:zaR8Q%O $8m :u2C]g6Er:OyfnٹjHf4^.jQ;B~^[*ujN' SWPd܋PaI:$}kZe5؈u q$, g 4]=`78fZA s77kG7Ai?#U3fi1U̓7iNI6:^{DmsIv6[H ȫԏt=!W}?ϟ۵z?i 7: KF>Rs7^GJ26Z8Cr̰DU[HjfN`IƴFXC. G%/<\6.瀞3@YP:ܕ5Hy ~?⹵YiȽk&sDeG?gd 5=Z$Z[(5! CbMA< 7`Vp<:m_}gVY^̹7`GVNJoaC-x ĉ3Ξ/En4G63{NNK58=di;YxkqXOn(rѩxCW9lsRغ}DG_CekJ *d-ѷ X A4J x#:0Ga1p%avr7ZڬЅm9 d$@D ÙtǮ4pNɷF׽K{[L&w~gr=HԼ]z\ !,fbb3&cr6oE9"Ip%yLI >~oU;хv=^\+)Xwcg9JP20Ykr{A X버K8Ay!Ynw>-]z6 f3 DUK|F l..bn% m?洴Z!߰9`e{όR-@tJ[HC#q=;FS x綦Hݳpש./n!RFg,O{IG]8LD]KS:0Xٍ#lXSc[ ##:hcTSxw=s֎j{cۋuxEŦT8k?hRmDƤ:^a2$y/Wpb(ec갆rߢ_ýMY eN a MclS#!m[< p3N SI[N8 F'2[? W%y" S%,Y 6 J< |j,FhlhBihCw29)]%Cj{:r[2DnGdeJ/;nƫW:4Va* `K3*/n`~0B5E DX4esC8 Q\K Ai r:+nYYǭ)*GTVNcmnSjFjCZ BYuVVO%"I\Ֆ>WKÀI3˧k7"EN1#{24Jpi=g0N!n,Բ`+_a>Qw_n]&P*C]~w&Ϻ*&iY*m _ޙh#nôr{y%At\G$ O;:ӵD005[De[́*l=3[(O%?O B/cG[ٚB5oONn Z#Veu'zߝ 7ڑ:<=QW#YZX)Ak 1`1(FSUl]AIZM& ^ek{4ڣ~#\mOPRB \ kk{ ag9ڀ cƮrZ=AXrUQ!R'"15Vӟ=C^&SDr<DDriSpXLZ#\iGh}~_LB K\WR-pv`ChLo1LF ט;<ߞnR^*{ndgb+ kpO`a?7U*bnnZԐ B"DnEdR#'i!VgCQٛ3+Lu5QnW[T_Fd>^)UT;˅[\{r3\.x6<HQ_$EQك{p%UzyyC,DIB tLQ tSp؛yi!6';vDpuEg :-߂KCv&Djb?B{[~-U6yfyn^iU ]x mrBJUEV)E) _?_g 8qDS93}=\b8=ux?mJ9%$2]E 1(wL(p\JDrږVI҉~kOV%+LAtU`󡀾Gޔٲz6:R{Bk2 fM-2H#pS-);HjcAxR` hdQ %Y[d|QqNԏLWQ&q#y˒JGɳ!~ ܼJkX<RFJ- N Yu>-OKٲnuGw̜=Mbr}̾@꯴eDv,j6MIĢ]nt2KꎺN5Q8 ARS^ _woV#:4MY 4,TaCO Tfb/s$(/:q=_ޅ @S?:;\ ȖDt;2T,bz߸%/?P!! d8׆HAɝ'^2)]Y>=YJ?~t$0Sf%q$ږB6"6*^ <5Ea;RDxӜ๭uߢ(] \E mihyt@M-jo/L SjgqbTaEe!-dC0 Ss|fC5=Uf ߐMIѲJ߃ɿIw^&H?E &Y`jSldU*~Tt#bF»< (^BX!AG?Ҥ맍ēIjRf,  ꈜߜ҈nEDx@bk/h-ܴVS &*G?5Lw P90ꜱGK̽msPvx*8fׯ"2ƅx3'bh 0$yX9ɍb{&3Dꇥ+ ¹JHVJOCbځ7~(Bݿ9S_BIP l]-Ө3 υɩ:tL'nlq_PFGyfK荥l`DLg[ xUn ^U. FL=h,5nՏZ0 ƬbhTKD 󲒗ns#H4*3`pԮk`yM)ݩ{dMw @I=HH#'H7hwD$GCCz{.æX6#N%@{r9'j&Vv0bu%3<\ ~DpR0 avu,s}h@h(@78{|p; 7pr)Iܝt| #OK=%04SX?" ?1Ȍk-olJm(َ [㙫d=]'@AV<5Cԫt;cr'J|@#WFzS.K%FDY`㞰|Sc .oȏű7!=Ժ,*hEkZ5As`^]iBy'(P&ل6s:@Y`5ed`N`QLJ;jsyG*KVZ#' XzӪaYN[;piahrb1bgWA'vbBMYu}[SŌ0 |/+Q q>#+YWOՄ}` 8bvcMb3`xd$!fZ^.Tu` {Yz\khQO `vɒ)U|VV4-(IR/L`r̫O%f7gD$}~f6pSR1 ,i02Gz&sDGüSv; h6 lMI͞oS-yfNqd DV[ AQ:%oflU/5fƅL<zZO] 6鐯ѕEUfPMy1cI||b\Vߐ^Ώ.t?'Xߴe+Cq^xH(/ɡM4, HqZkJ B1iyз^' f>8g 9ef&~>(u~]m~oғE4261|IfM StT1 0n%!خ Cݵ|pIIQH0܌ޙ7\rQɏzők*.ǸG"%P 5yЂz k)U%@H<@V>wS.?J`'ӳk~v՜}APs*F2Z.-- j(%b5* g x[O_IJ y pT j!ZCg}U @M'c*P^[< e|IAH_xq-dZ}Do7Q\gR puYP7Xp(F}$N.W$h)aݭbgPР #f`\|QjcQsE,4q8yRV+\7[oח.4Y(/rv+SjKXobsJF"R?E2ewQT#9GړE\-:ޮ I\);L!8?Sm1J"PN*`x+μnePqȣP(^cW굍T*@.9!X `vHPier}0AtjdJ_wH@SfPJ k=_*lg<>WJb ԞEb404JdqrV^p_b+[< Q3ŸJbuwyQVAD/Z k|fo7.A-b<" ߺNn\*t< h#elK="DO^H/z32@jҺҝwWc]sgZ 6BZnu>r emʟj(XdW# `~tC*d]0;s# _aoa'3+֗O}jJf7wLwdE#wcIHU9?/ȴᬃF-L&"DyL[> ^q6@M@t_3Y<^^llCRgGU-Eh9J*$I1~)k1f`Bz.v`8aLBcA AA7)82^<S:0"oYSmn4hkw/'fr`ςeZzM+餱e|Frz?&bJ@OT(Zsj;иӏ7GhpG]59%C*B B1N#ҭ^TB"UJqVgjc]?8ƩIǯ8S`*ߟߋnMB} D w)t&"Q/% :8Տ`%`61W]٘Rv>~3mmCy9M{,/c 1u+d%tr@z&iEG557Xv#k ։ZK.ః ]Ëm>_G(Ab3evn.pk]P ImJTdP9K%n P*)`\1Adw$Xb@D>uEHƬ9CjT@;CYB~5E Ypa=d 4tu\a./yq"Ӽm׵itp#  Qn[0SH.Jxr3m8MGsڡ݈ϰI_]b[MgL1aٍ'8r bK jGF=SԤM L-2EsbM7İdE"0V\b, `Mk^B%H0Bzjg/)ґKRm {f銍HӔ.xLL^ lkY؉9ްoIXB} UKc7łՄu1J~8ڨV襟Q[7I;xu&_7N~*PCPZE@>VTViT .UIM0cbnF k ڇ~*g@A3Uw[s_af^@՟We 1M!Q 3oŷLKt6ܛ mb;Q9dP/֍{{(NhW{#3+Pb=L/~a~֧}>:2 7 qǁ2q9Q,. &pF^N;ڹRRymrTc$:pCxgpށo"[`\5OɉóuO) [G#ܥ 'M*[rJ޽hPDrI]Q<4FfVrZ\5בvNG?z|qFO!3"|w p<7)NOiGܹ_ M;/eEo 2*<*>>Z&Lsg/^[zI) _Hѭm5J@kD24.~lc=<7(eps2W+չeVEUj dy~rM n7S!f]R"ӻ͘lp$g3P\왐:h ,Q ǎT+z/ EM2>+K#&&5,weN _k3t_m,1 'XE3}( T='U.9*V '4>?1i! Xo}GY) Rh-KpF 7N&WZ<#H\Ȭ" &-Xׯ7\ QzK 4dlE=N3t7d[L%71Xslgeoo_ѹ4 uFfS~Np||<\o£]F%u7dh- U(N DcnAh L[&yҪ#YML߉@B`2A ~zz/YV=^-"v(x!ƣKwKyp&,MYFه.J=WYf9 az0 ? ⽚e>Hː_29'?Ce:\?xpw&^ݛ)]6O5(`IΌʽya=~^Pk2dN036x7NlV~R $/w`D6\ۢs,N+ Btm"Z UTErr1` [Y%RY +uM̆w} VS4ȕ#>m~)YᴿF#d_~I wisp}5,Hsv[sJ Yqt}4~6>T}:hT%1IPk "aT||t{"{F:1a6z!{.( @Cp.E(_W'F5:Y!<_qƪb=#gh6 =BP-trx(鷖Cdn.vaEa|Z&ev5!6^Q:׻}G g fmY֬C]="*o;8*jVYmkTng=Q:8PJEdžsͦEepg:<^':*Gtؗ&9IXC6H>r;,˕lY31:VwM >HK@[ 'oӶ\U-hWyNmtGKcFI#:UZ׊nSx8AF?kGG^%@ӹ8xbUb=*'jщy#D8jṪ#*^&+Y wh1f+|kw8 Љ'UaIh~n?0f }fgxp= N?6t'#h>_`K>R25΋Iv!gZYxO桘%o*QjzN;/‰ھ4;f;kٙjuFtl  >3 S%␉wS"-DtUQOGaNh`toҚ.cu\3C."4姏 |l@c>N'"GQqSRx-HՌ@`wSl+M6[=-:UK79׻j~}EwW8]}_xUJ)*@1MlF6_Ԯo [&S@_6Ypa:{YotTԄ5.oѾ?n1TF KK~ߌpmDiw6Erp+4#\XԘ"8:xYG:a"k7HbU*5LxJ̈馢XtE^x&j6uy!(|+I\w9VeU05q8 Wg^`[߻ He\~o 2 i8SG2/2E\wSN:Uхto3Uzyp6)0h" wKR{`~uZf+=`:(dPY,$N3 `(R@ =+ kDJ&;$i ǞhZn $һ OgXs4 ?ĬdGF|佂">Pn4ŵR.պz]Lg\"<לv?S\,npt-ʟwd3fXKh&4'/W78愠o )~5c\uv׽Od@uLjȄ=w욑:{ckˤƘ>~0 B/qllJ <=f>#/{!u>H`!`x1g˧UWJc;VY{`ߛy90V 8dǥ%)ԯ&x~"j3n\rkQ=Gx` `ݪ+V\BFai!,c6o[〤5ȕfifF70dP ow R?EH'!Z[l$VDF(beùçcθT^ZuPxU7Oo}r!St{A̘ :!G9W:*OƱpT&I,*Zt"9};7QS/ƹ4F`xerrψxfa>Jl2o~5,P?!Լg g{0޻罊zec-&O )V{ąv'; "\c`uaZ¤pˑj :N7}KA9㞻nAq}a̐VzgyD1 (k`9yf_I\֍s1'b (we eF## BP$No'kCr/BTǖfQSdN^Z~JteZaz<՜"u {pCqk*ùYZn+_pTE>%YʉD|OL/'dc٥fd[Z c(sV8>2-T=4"_%X0 3Y=v G3~|t7YU50KxUT^S0R@%L(੪ax,x~`o_:AG* (}qTN-?(eE xc]&IWi?ߏ-2owݕvkmuXƆQbäՖؓOdk4#l۵mŵ1)\7X>yбZ.Xj( ,L\j)ՠBT0)ywv=lcw*=j.O7_']ۣ i5oto\?66$=EZj5"n=cgn@D5Kf<-XPQ pһ`6iU_UʣG=P}6' RT ?5P n#~*qǧ'v٥*A"]ؿGt=uϮy]y`F, {Vcws%BwM[ܮ#yt#PzbLPcQ4.:>Oz[{h?Z!S(.c&.Oc}GDjUhNnCK ՄkW; `桜P=KZA4dٱ5pLla RZHugYib ^8]ts ׋b ^Vv$`RrÞVz\U`v10Y"nnTL&.k]a=[)K?)W?nJ+(#GG]EzG7TudYgpvqP0^ wsh#C'xŮCG&$T~{,t'&aJXf+pnھZVXjY_%Co3]{z,uGh3mj)%6xqA(W/㠉ÛA IPCqH+Hb@9CxX˪z3ugOSeB6^[!Bk/ҭ(nXm|tAsIC6& 47%$z0=ܼv4G0QpL\n"%̯tK2wh5>Pw|>ה&1#d"<3~Ζ#$;4a}$1ֽmy?n<,#![rV:b ໑).~Yl n<*5YjLmkXpK==㾲0$XGޏuTdkK`]I x[?l Lk?i[7td-ke!0n!rNZ6ɹ)(JZA% #")-veu2_`;&Uk/Ƹ:$8̴vPͨDje/muPGLF?,蜆(oxw`buN4a}ڙ , }p.E0vb ڏx-؞pNf(d\i(I!SG}xwK1@9-9 <;~?mh'}UW*Lcp㋲Fk N$ݸ$wWvel?fk'c&[ bAtFV{tȊ"ifh X&a.g)hޥrvԩ.zIiE3B`JՄd_\z \|Cv#QH&W/i~hmbUc`v] W!$B,OJ]Ĭ+_kIN(1wse 2Qs̥ހ0oIݰ%Cy-bjGiQD6^Al3U6N4Y] 0ɴ6sIKV5A.]"LOny"GG!x^-z0~c蜭j'1>5{n:NTDEfʻ7N˵=;I>(N-ӒL6)ڝaPpǗ=CSs弎$< "*Jn/quiEo`i׌tNQF *F%&xz6ThٷCAsXt.Y*)9[,1C_0nSYa+Xݩʋ0ךvM/ 7^҈)Z<;3" % MoyGFij#68̎N9|XDpɓ&nB;yҹ%7]0WjѾD~͟6uP6]T0eR4MJbewx@Y]5Ct4X ̚2JY:`oP^k'jŝb`yeQB9\Z 3Js#t2 q?tOlnFeݤ8^pV5-ȵ];Pd [䄧Nn@SD]0-EtT>@wf6ؐ' h8WD` U\5C3! @E&پ鸛]qf9}Qɽ~莏H{@:\{EAR<4wtɕ[@` RNaH;U>e()b^ aam"_0N$ɧ# W qB9%Šo<ǴulFBNFwk*<- Y )#QꇧfhC8,ApqyPcPe;3>3L-_{ :T3?jE8hQss:/8Q,2ѤoKj#l0TgbY#K\S`v$t2.ĤWgD+!J61N-9,m;F"1 H% [j–AN~HSBHzZlK_$z+ЗQC7 S>-L[|N9/X CoO@f?׭ڍeG.2``tSpEEzfIh%잚vHKTe 6,ɼ!6|TqEi)%CH{ջ쳏r(۞^gGL]%u%o>T`Nk1FqKm5_7(?P"H;~Λ_t2>oy20LI?nkߜ4V$.KA}nUs {驾2c[iwq8ixd}av2Ik{Q[1>\t9U A%XGy/NrqdBbst-*sp[ 3eoV>zDTsQ-``vFYX0=LE餆a8v)i]PQ!ٗ铲" V`L]Uwgm]%הSR}m\"֬͝jmD Zmrxs%9UFh".!aw7_=lӮFQ ],/Why6cML yA#},j޽[҅zKjo|twh3ujS)"RuMhN'6Q$<$lf˰h}4CvB~RgzHX- ۵]Ut}d<"ʖLe24Jdkt v/=EHI3} "A.5 PN?˧je݋VTZ=Y[S[*wz|` %rM~j&Lܥl9Kt'賢0Gk|Eㅾ=LʋEC0'~ӂu\6ʢ n6TLNhNt9Zr&=1QBixn+H?BIT<((&]DM(%J kr8?FciSP@gVʂ]RG_L5[blK&fYpUF1M.l uZ9M}Ֆ&`0U'܌s k Q֍#SWJ+/RA f2P6hEpc[l?rXjGU,i!|=ઘ]:D4$zoګc'k4P/f,`i{OKǑh,6'}g/)\k̋r }NlG#ww'}چ<0Ni ^6Zk;Դ )j:o𥺘 P[4X11d>kl&?/(EL$)>V8;r{kb}P0OшRv5ڠ1OXSjƓ#'Z\~[8QaY/5RfoQ\5 Wη۹KD9eRgVp@!4;0vui E4]cO"-7(NJ߰J=ddRTe+@Ha<'aϗZ{Vfh 흌*,irt{Xa;Ur'%il NJAiph~EL,-Җj]_4ݢqȫz[98OrK>̛bm۟;.Q TKvţFN8إ/ ܤ8s>j=*o)uS\tOx1LM"Ot<)VY$tkC1ܔ ]&4:$oShHdYq|rnWFN2zZ}-6%P2xɐJlp4G<G[`rf2Na W8iZ>2P&@j,gE%\?sI. '^}bSg | w ,N'_| F$W\hꁼ3黮JcvV}.s a*x48i.n@p1&JlOC̍-" #o=Iz]kGgJ=x f}t=gXWYA@^ǧڱj8IV>-\{Ic]P Zg?ʊ#D_x/aUeZ׃~j޿<f^`r~8#ywQ̔_<< D/ -1$8U诃ȋ3"7{;P< 1Vh nc!؟ex]r(Td/A^J,C{6o]_=ahS2pU)-E`eOn=4Slw wwDj0i }GČ*z_;5a}ёAA/rs#Kz[ЭQu8rcα'?Tk2mJ oפwU'އ²u]jwBsę`]T}>۶v^jؕA~0l2F^Y8ͱaܷ j,#F|3$(S3 6z kM -F=0 I'?:@͂:/f'STAzYq3$C ' 6wd`_UEǟ?T'Phpa"DroI@K7  -'b`o6[ɰ# A]bUZ_ Ӟ J@8z/Ƌ֜x5c(9wQka$ȥz?}vT҆&'s 7T&?b&tĮHہng0@ 3,N4^+*a5JEL8Xk2WV;56jX ͇/Y+Kq5/?۟:aRQ Cݩ7f=Vh_*jSp 20?ڿl!ˌ>vmgdBQl91 tSӑ_X30!u6y* R q޷f9(/⧡DP)!dv!%i8V"P>/r*(*(n*>ٙ$N;[_Sͼ B#"Uƨa-Jo9L``bY (8o 蠫Q7}#h]bB}~ K qҏ55 2cum2uEVedN%,c xɱo/ 3* gcr* u?ivc>cMx(ND6"W-/g1=xpdi)lF?xme@*&* * '{ji3>EKNKFY&^!WfCh.Dn{pmQ<{_).-Mnu _9KHܩK3dUz> dD@0]}} #rgfz@'̀8-$"юZdQT76GE{6qi`:L͹O| &;$ $[G}V!Ɠ*$iʉRa;R+v>E]cȑbbL3n>5.Tt=+k߶Ԭ֡AK-3kOaٲ 69WJsy!Y&_١|nkS~Qmc=nf.6:0jjgtmxXr.vN QmFQ_CK Qp9h^cGg('+2Xo74)/+wMT VZ=Sϻ{m25QS PHDB{^ivZ Omb0E`/Uٮִ39(t;O9[t<ҏi#p?dUpoB)ۇ_wcKSO{PTkG> %})eQJLT_JMp>_z9?d>-+%cip~~F_VTvSa\_X5U 蟑axD+֬(!D(2YsZ.`PLs_'MT9hӺ1@ƍ_p?` s/d͑[̸ f("3bAtQb8S\m PbJ:c߄|Rgdpg>y?JPLcDzJY<r'3h~"7M1|.MC/k;^<>3Xc"ivG~;"[2]iHpIX' m-Z`5M@ދY@oVG0P!:]bdfhǗ݆eة_NXU.&#|&imeeˆo\'4C$3 lѵo ](IϯC gMtӛNT-ʇ)Er{OEpDIJ[G/&K^ y{,F7.E\: X>=nӱxľTuV#T=[4"OIX ~;"@^YL/!t͐\g.7ZG(*<ӂ}@-,jzcn|h$.:2#}Av勱!$CյZL![Ԉ+W(`Ha64V‰J? Q8U(<ډZZ+8ý$.3/RHO檿Udg-zqh9MdY|! "LFӬ|^l,ִP>"<T$)=0+!WΥ=x&/dz/3էaxĞpO_b}=Ȇqr, zZ |m#Fڶ ܋blY~wG0%[lu'k$a6g Ch]k@,p% y7G17} qz laZB\+Oqo(lafӼre .VFc{3.ybKZu?fTpq !dq2%/r5.{eLY T>h zYn83ӭc+ݛԙ6JpqU) KjA?T<٬2b.eBmi$dY"+n@O2} 1E*la}/+*(A;<ׂo 4֦vy 独zGQC&W4=3uU4n([XS1 Zv=d{Ixa 7+ hQm -,P4DrJHTX, nݏMM4?Jً,$VJ isf>K5%nuX$Yڻ:V &gj>yrՁO).]8iRWjwzb% _5'Cl\P6ۑ3HQ/:Í\nBm2ɣ)2?;\ye5W`Lt}&$:ZJ&gKIYPYXx:KMV4 1iD8]"5$lו([-AAnWl_ѱ_S9z]L7fj 蔴y@l|zȜ*e?mf<J=?E'$'˼sukVJg5s`xڹ*U(,b^lC}Kb8wZG~Xg s2ǹOӟ:#nYN#yN'c!@z.o&ī_mIJ~N'hWgҐV HmtNO=Mr KνK obJ{w pPgYT/1,Eo8XZ%m;j?Ü(h].XWGb/N0&@mODgN'&YPgفm6 Zs*H㘮DN:1R!!d)8 "E1D2 {.l/.G*J&9/K99\6$ PpC-W^IP$3-DUe $k=O-Qlßu@Vaޝ~a5${h3':ܺۧ9pcMbX\8X`B["ԛw9H6 .1ά*IôhTa3 mM!]r n*NG{3: od50(NRV.:z _Co1~ gd(dQK94SZJ@wjǘ>=!%A51ⳄvX;X} (tp[N4E=@4rB6Z+nrZ\L]<< .4v4݈Hs-2 @̝<0k49G3\beIz̠4+=zf`|_]w'H16Caxa줾AFxL:qo(1 IaH2 EvzV@l3yLZmvX?M*[NC'zIO({~gq愉Uw(}sg, 09Go#/H"8%#ᵯN&_mX T!;E(_{H6,Ֆ/$0d]\-2Og0Y ox_A+),2sXC1Uo14(Y2}"xC&f@wyd=즦=b=UOƈ B<E_X XQ50U~ٿFG <G!JL8FE;gC Bbܶ 9h C=]_a,tp\r!10IklL{0݃W 4]{M̝fy^#,0:*P4P܅0Q H)3br)sִxkB}J=A ZNd½H^o])cu|_Sc~^>}4j~ | Q5\C3.\4-U7:+ϓGjT˛ӱpfW"+6яIq>/[U#3_=p j|QA"2._Q 1pǕ |͈nNdOHm /}֭7M{ mcye(?-!U"/S7" Q9VxzIңuwu.%B6?8vgjJ55Mek<6/*|ݱ.(-G/=ȧ"C{괘TzCըgm؄GAG|? <:=D%Y "z%VČ,A]5{@ɳ[ܤr:Z wjVLtyוn5u߱iR+Sc2֩fy^4RHVJ,BykO. V[% Gt.6}\{7Bzac1Ԩ5 t MD<ivSy .֟OL(m,ֻe~?{\Nۼm{1=QGBh MYNml<^=Dɩ\ FM\e,$xgl|I+BuK[NG(!9b&ZUg9U?Xw{=v#ۦ ҭWx/{V6&*^/߀TD}~}\PrO{ЁfiQ_O ))ZY@:pgIH>DblӞ ZNFZ{(` Pd<7 >#ȞY=_|7J?IÓ|MC~:AI\$`$zuZG9ӕso$7kT5[v%LP]N2*i|A6w&X`6HaH~+4I5¨10Hǯ<.VAy:2y]!ʡomL* \HzOWq ob)i*ͧ}2{Z,uk^ΎSAIGTD~F|y k2̪<_u(lLqĮAEtoNqHՇV1 0@NLyx?Ywُgd]A C]RPOdkV)gXٰDS:m(L gg|[ʹF?>ܹ8&Ƈt<.i[3`ejEDzD#i\w->rzVWZ̐b/>HX.΄ML6k--uRd'1G.Sy܏D1 @-¹C3~;Kx|E <5'tj֥^ (k9oP.  7-70S'΀ryYx 2j2RR>RClIyoOSµ ak|k۵nLaQ>%_578 :NʑO03Cu{i[z4lQA^ԣQ2-NYbZߜΉ@&cus=j;y:h޳ʳF]8[Z#'5DiT_Do>"$*EM.R[m7F[TepAUp [%CLG B0&lw p_} I ~AR[eHڭNȻiJU rFMA@P2~(1Qԫ9cMXEVa?3ܨ!3RW'ZOb : oxbVdN*ڪȳ:xJXjs`J{&`<8M N_'N=Eh<kťn\66nū5ft,V<+y(7;wTC&ӑ5jl0%q~?v:q$ 04oC"V6CzY5zra*sSIW\wnjPbzzb1`ZOd?߻bl)71ٙH$k5jD5Wys`L'W#}N^mhe'.@uH??4"# {uN=lZf{_Uwdi"\,)㲗} o q2 ָ{7ܹSڕS%N&OFG^>LXy9%*Ek Rpuxࣤ{M+e_+ y9CGOd&σ] &FN_ X9q,N$?& yRwq ЪOhi6Qf7rLr"+$)ue!b|1<91b|1m QxFVjnd=U}(Љkm2\|RHd :6D~iFK`vS7–}WRv˖aID1h+Rf1@77Q`R<ட#]._Njf 0m[ASax1b2ZK#2l [Nmy+*Pw?=)_M<̈uނ|gǖ!@I>n'/$x)F^gpNu҅2qvQ忉Svrj7p /> SV//gtD 9[3Pן5~ӟ-F&)Y]?aAH֕>7B#nee^X+ rhVVսX%`]Gp9ӚJVmq.OmKPrރt rD,񠼠dᔽjPXvv}:yYKI׀ފ!y;=T 0ӊ;謖z61r9,xWd,f/|WRg~Mke+9B$6cT[/ Fsa wn+{DZ j׍a}mpѰd*V0#!#*"V'H 4,|Gn?$)QuO}Ҷ).vI@-0^ZH@Xx`d1cICIne]# Ny_^ o_Y@&[,1fè1.O%ջؔ+bO8fI%l/XrʹPnSfh N& 2o%,̼snU?/?+FjDbw)b)jM5Ai$i%J_W? TT'b;kū5H`22UQeGFm!iǰ!W6OZ}.W Ww8RTr`|;ז 96"ф>4ҴS N"랍˃ˋMI隉] "β߯MF3EhMKq;x-.@O{2( rk-"f?󂉑pO>s^Z^\9a Ig)$f=\ teak"^1NUx)a^ۅQ-HTr 22V1>\0Yg9D;p\sk_r OsviW=ClE"W/P$:◄BY1&=!i]qʭ³A}b_"hZC ߷Fv{w8"AբӬJT[Ui4k cG#G0t mƎ[7h ف AK<B ` ѵaȎ|r")RUkYZO8-j=a+Yv PR87Ž>vgW|6Yf#{/nh&6.j^G, Ԣʭ ڽvH٠GdBS7KV[OFESY>{h1LGQ˨BpxL Z眇WUI^ O*y]$wlSϻܚG>kG:H%{_,F_*QG"E) ʦroMuydhksw|>/zzҢ/xɲA81VD cʑ="WDt0L]{h(JiO 杆^&J'c~Ņ~YI2[(hV4"1EcԗA\T}o|};ßP:ֵ@Lg36¸V;ʫ_˴S,hBd:K,uf*ǻ&/2Fŏ$ $~"5XhQ86-IjFN?x}9TVڙOX}s!1rU]b >&ii元M:lщ9(-MbSu.htB5^P-x0U:P!fP;(1@cr`@hSJ7nNnpQj]=XX-:6!lWDA&xd*:wþF\l[#(2Rn<Ûs3`|3'u<5_`*141V2UY=a$5t+E! uޫ(̧4;^x>#2y7'ޘjガ6T:㺓G |oô:+ru;WR2dSc\8;&zJW5ݦ!J[T8z$9 J٩Tv.OlHMۭdM 2h Gr _{1]_'&Lgt5 gNoasuPl\"c D2VL#!iD@XH~daWgªBr\s@Bn2"sD]izcnbt!nf,@h N ꯉ_-\=qZWa[S)vW_c#`S兴<@+Ixkܲ]7F/4$ SMѓz*(r`Q?wEހ&B<&%N]Mut@1R)~vʦFi:HjZ uRA&迦XO Uo7As[wޥQ 1U!{PM4SpA~G#.MP6 } vg C^T1wQZl6328X(0!RYDQo=i4xFdrqOKi1 J>lUҾ: 0k(C` 6l6sAXW3pB ȥ) Ґu  cf@ iX(!sO{Nغ`0)6Dk5󃼍fe DI.|I)?֟%K &W@]|iJoXmq..^T e1y-m%4WYw i=eEcjok7\hz(+9|[vtEânzbXY,{Y8NHvpĻcCK;hgL'?lb7LۘtXD * $LP3*EQl*H~XLׂkŞ+"!ۉaoR/~:}? VwJka:LS1,u?l54hH /]ąUٕk0%ٔﯟEpgq)*8aJ~\E^8xeL*t׭qMaNS`LA3Zp*)2^ @FUq{8< h\̫}c,яܻuio&)~~Gd)ơYQl[Ա5t{; ^Z{hu-o%#>'lp "/4x'' FɘQoXOĞݐ/n0D t:OP +R/ULcH۟v : yyQ)jmc v8w%*EZ8X-QnQ0s3F:md,#D4j|_<0u%ERMQ _9.1&O$lunjD;shY,dJ0yY EOaRo(YLA2.cmE=!y˟:Ph1Iz_Lg3A h =YASOj5,C~|hmuX{I=rki0%MV9tI[w^~rT3\ǐ3cDmW8W7%[^6PEgrIaT2/?՟PKѼB/W4!(g2QXE=8vaض V&;7v}-`nḚ烢/׎ae j*YZvMN+ԙӢ;bV۞[gZ|l[-Qu&W'_gk3R/y嚬lx3}%*#9%UNM`o%JpdkO+*MF q ;#םm:}aaT%X|b*eKdE5#z~TVO(pshsamdJD+5S8'$-|0,J<"v+0/afѳ)NaeZ (XִްK:Ml&j?;{jS^N0:#d1xX©-۱6&Z(-`|o}Bt;CwF㻜\kשr?o!XʁohA9%mDKےQ\{D1LM8K[ZZSVxg9 %װ\AXI˹wt:D?=پʥ HNM]ZQmL cRЮ:>cۢ)}mkFLP~g xc(?9P" MgjBg}jIC%pgAw%I`>˕/TnW)?NUـG]Sh8tYkCB RJ_3E )˫wl9lcehT R{ X4EE<Ѵdݦo#F{EhES!.xFmϩlզ!Ft NH4]msW$Rn ;cIZ&3 # 9yzy5WAM]2dzPkS ='ZC4V q\Pp C7|e н3O "~_!/-)u(ᥭ]+w]{vд_hI mWm(Us \|̦lSCu]DwkCB&W1پ}sNDwHFHŝ2(])ɣAwl˄]t^NEF \2&$ @5iF\}X}?[Ss"r։xqVT7 iJ#u? c OJ(n.ޗ9 {ur $yDO4d1:zS:{.Ӝ>2- Uǿ*&H!a̖ic50Y_:-yuƄzשU^`D3%tɬd ZlC8[D+XC "=1fhMaѴϙ7-= Ÿ¦;+-"p26ҺE Qɺ: J|Gf:/M}5::ڍ- ;<Яm0|ҞGp]j%Ǎtx )k𝁼-',^ږ &4ßzu90ikOŮ,0[=br93Pƾxc\4,+rw{Z$x5hWlfy %|VShoB}Wpق)yrD9 "TECNfK Ao$Y`y <'Ƥ Ǫ #\y&tEX `wY$ W'1̃P)O;y9%g*N&g얾Oy۠v0Mw4) sg+%jI\3rBKsxd Ӄ-;o7QJ_4Y*лv41>8(NItZYrLtMyg>|Xjѱň%kҏyˬtÌa#U?8?aXN: q;7B ߄OǃbfOYhsj>&/Xs} 0!N#rTC`mLxy6I03]*+CF{tY^>1Ss8-`>&F~Y2 5z*Q%唿hxٺp$ !|S,Z `m0n=QnL"KW{%Ѕ.)"w@v5otrBmͩ*ΠB[i(:.8,,Rϔ ~p=px\WX ;z)~ԩ$@pBCZ.^R<æ9- dX$`U oVVWHDsqV3~ʖ{Ο1  лbE6'w(W#kx!?W(mxٽzc?eF#Ap6:d>Zy]*1oሢ2.2범Fr\Ϳ#;{=3C41PS &-?gN\$k Oẘm{tLeɅQ*}BM&M=[[(|*#C >aD*5AHx8_.qSt4VMwM8L,ĝFF*%]Jtm@v4nB,*{/كn7ᩘB O<=b_Vd!U䏙Pn*Xl띯rBtߴlB=w~~yh@E@䍰H2xh<E*Lr2S @HV.xGqY5$Д:FLo<=0nvz ?-=t仲M rkxlp ADC>O/`2o4iC7` W O?2-B9$_*u6YKG"4[;GpOMq| 6*Fx!#1t )mwflev %qʹ< B5B?W!d=oxiv#NúQt#%S$PB{l+kӻv O=펞@9 ([)uRuRHd*vŝ y[{@Uv 5 UH<jb3Րyv \D#l .5G,n.[:Na FYtu2vZ8zGF[ L 2$מqָsá+Pn1VB2f@ m~]bȇ{% by%ei}\ޖx1B3c.epgKPz` Flr2y@ {`û- lVK "~ C/c38i70G1r+} 6~#0Hr8 |̓!DzWo1!vɶT6@oԨ~BR);8&4 ̈́`a{coaXwm <{@mtmw~-/Y"ְ7Xn8$(VJ(".d'ɚܪi usH@A*kcם^o?݌aJ7l?#P3o1>R; Q(DS#R#g0&mXO-0ˊa~m@6TgDm3 m ؝OԓCl:{^WwctqO|i#/c3 | 4m>31C-@Ǡ B-;{iR#.^I 0f33f-h![;s;[e2hgX6럐lcC :v`rl4HL8qmBghpAa4zMn C\xR q g ?7asd}z|Ћ\i$|ԗ(۬G}bA</@y}H@Rfa"}ʠ .YP苝 V? mײΥIb+2!Nq `nL2Y)'~<4`Zq}ã ]$U`R=d0pa"xP_<&!+.E}S_>m"0d˺>Me۸!S3*MM _!˻ⅇ3 tȲ6,Y*,>%rsM@`]yd8Nڱf ~7 ֵMVdz)N˚ ]Dʩ8g9@JO@. ^a~NIiJaA'.f7WZ0ϚA$՗a$M3A(O }r"H? %MO'c[v@7g+Q/9] VWፐ_%-6pMł_Jd*f2tf! 7NElK Q&}zȵ1Sr#^^wbʉbr|%H)ғbp1,z 2'ې{uMa$Fc꫃K?qj!2a>o2AKk^ŵ6I4_NF(x\&NgTO%2@a`))\&<|{R^ ޹ݜvLOsHR sۛq{r89 DEj= '3B5.扗l;y3|N`F|mkP1^q]P䯸V~D18APCC.ࠝqA@G;|''5C44'}>5ĩ.TP#qR6Bx?TWۚJ)A 1$h|-iI%.cND`O1uG`薶FШv}8>ppKxXtC_l*ÌB =}7OϿvZx')_l%f|NI l2X!?,_ lxLYy geg>Vs1'%j<ٰ ګ*+>"ާe0AD9 kk=.&˹<M)9(U%v b J0Qp9DϟDaELWoO)LQL5O}Uq ղs=uE)9E{vl`D ߕZփoKqIz =fL ~ ߍ˔9v#.i Ym f]Cǖ"[9mB*[_ÎV"Ի_,[P JoV~C/E2o]R` Hr-w>Ԉ$ֻh+trVp+45fC1%𥚢;w mKe9yHt-YK!Ant[x}FYzϷ)[]*FMysŇܧӃZ4D q[B)bh$x)u8㦯R@oi8^AX}\^-4W00-Lͮ`@U`8Q9dw(Hnߵ1n (im[6kaH\j<_ȳRgM)Ϝ'%֠^9aaDaWąfs4<~!̓_3Z :ưdD%hAQʠ*q@_q ^“KX=9KX^3rY[. <"'0N%C^{yHElRKNcQIh˵@ zRg+Cd~6f%4pRyW\Y;3ݲxӞI~}/8D#+Dtαǥ[z) [h{~!He+SO &j6`1RcEVe:Z`vqK0EW27_Y#^iEh.\l^sypu+旜avk3fYzh>I?Z8kS>^U¾@G#M kHS11qo0'00d}7Њ֟E]س|G3Jz@Is> Q"1ROjjD pSqC)5t5~\2$ފ0ܖ2 1Yv@7R`_S2y/I&>R-޲ף /ҥW,bN8"-~C0ǀΥc3\? z']"NRp]o_C Qg.PÍ1I^O@Sa!^uh6 ؝죪eV%ݾeoptKX܄ YUZpakeە[N/VCi/Rim/GE2]a rD$E v4z^mc X[U)gӼ ⍨+lE@ar}3ԃu a),Nme^Wu/pɹCy đui1)ҋ"P[XDQ; nH ^3 0aBS,LT )C~:)+BTvjdSK2I*\hXv}ۡt[R>-dd\6?ѾH 89fv[qM0R3IM\x͖״ת?(;88EA {t`'췽)xKK0&L\b@V갂Xs|!>|Aq;{ zTߒ}' s$ 9j"KƘЩ&! yk0Ժ;"X{Rq. PzwO.yxi^uv~t> D!r(acvCe0;6@l<*x9&:PZ'_2:m#fݗ )uc[QNd }(Y8,`/Z>?v^̘ٷ,?[X}y@ . 73n}~v.܃$I',+jP^` 8p}a8+Lz*s5\`_l1^gkY̘|ŚFG8',a-Th J.dUQ;$`0}F_{Vd`e.4I`c@04 Mac^ EkνIQfпܨX\x]ы"qx;k01SDϑ擰dMf7VB#q-wa0z_2?T,X :-Ed\s>ql20"Y O"R Pbk3O@?26od;"]x&BsE#$  tXe!~s,PGxǎW=ʇ4w=d7&ӠBs[&Z)z0U=n$)FZ᜼v3{PYw mͲ FMtzfЏWtԦGmN $yn~ƹDxc|jffb Z [MC;rA3 Wd{[I.S0],3ș={iF̂Z\y#GE+ȵAwҞ.p!v Xg!tpX@cb]ըv1[D.~Qcc݋xH&^ W2^/$},,_D;0lճ,/%#0C1Ԅ~/1-ZJmDj`n/JaXh; sVD9% ;b"k+yE*ޜ#V]Ay={ Zm$aPEm HńN&,BjFώEsv0|0@ܒo9*mB< ΢h >$H&R{c8(fzk"tخŕ:vnmrwFuD"ο1]5,Sʝx@X5U^?̺"/YxzUC"YҨ_G]ZjWW|M3)0ʪU"b?7#P_"XTTy(@L1hnmT4fi7NS-!|f,~TS2R/k`Ԭ y|l>8j.bĢ4Qc'-*u*57EM9LVsfPaY>&-z8ؿj⹮{k Eq\_k9꣇vY2/BG41z0 h*w R.o5[N&# Xk& {n]t6e'"P$ (*';}鹂&ߺ”ܡUz['PqM ^xy:(u)E1:`O@+Afzۨl!~H);=}o#A;3,~04AMmäJϐ='<$7O&)3fvvKe(rc}(`"䄗+g|nlyFz,.ȥT70\zwI[x3߸ô=O_HDE ݹeR{p?*̍J9zf|&k J'2_##U&Z) fLgOL]uy<)N4:]j .$zΡ@D9c]&G恘{r8O9eRdWKbXJ1gI8RqP)Fhgh fk2 눤sx2ү1~KLQ>=|6b vtGd/)ߦq _R;% DBeW8пiddh}㦺/\7e7\0OIf0lk_V7Ԍy F<5 ^Bgn^NJEgw;dm,ԫ[gט}Tc\޳&5?[KzbQ?Z[3tI@ g'tΪ 6C׌2OzEv+zx izǩCuB%9Ϋ%SI-z)Li//;~tA&DŽԂi ^=KlϘ@dW)!ݜH Od}tLp oIoпجvjȻȠw=莬LYLUˈЃW0D,T:X0[V.k66مJ9 ).j㞱45bm_uv}BV+xI!|X- /b@op$E`(Wr{ۙ6J6H] .1xܲ@TNϤ*71ܧ̮P4g8SD&êJl_I X?Ͱ0Kv x2޵put`- (.\y8"v4b"qCEDdi)b0S+8KTƹ}sxfүd`g2 6yAM4w=|PآS}N\̼ /d XF;CFt> g(2UzE ^eܗ[Ǟ:xBA{;k#]|//wFXa3G4F#:mydX/0x;~ҳ/@-Twe!cWQ% _*e^AOn9<. nK.>1{Tc<p=:O ۱8 hx1Re4޴ v[f]os@ޜ'h(mKҹ0!B}(X#0PmzM4X=62\^ʩ*EO:,JFYbJj,z0hdPByՌSjluXlpkR? yvfir+y=4 tEYOov YO$Y¸05 '⪹r)b,_&`@3*Ac7hy1ϼ:WQ/%2/ "苾Wtߝh(LJfz t?קy ! ټ< ،E0-˭M-ARk OqWYclIݚ ΋$^X6تF`WL}rFSPL27%AHhDx֪ AqXoAI(#HkX Ś[1jDΏ~z@|nf{&1 sU:.p̷d%E5v% d*'6%˂ 3~pT(!6h^?LCi[Iߜo?y$ cBXvu!p}+dȗN($}34i kw )\ qt`$gme:b~0oʶ=UYPovT:]0}8dQź%:z[?UDc\CKLXJ]̽,hle_>Up嘭CҝbT%^߱'q '4=|uFrp?}V$~eL@ v4'!vz̉g&\]3`0 C^C _#(]ɮ#ieK"+ogoA"wB}()A`r%<TA.G mN[ ܗ7ŀ~%Bֳ9ι.M1&{<㑺,3!˴b[k@({xu:W>у%" qq^hYcXE"Aٚ("@G_h72hr,!@a{^[m_EH3A0^xAibPAZ6Z(]ÿK۾U? [q/aBXI"ShONu mHl?UeF͋ԃPVPXJ[,,IWV=-ztU/5GRmv|'*̯ %W*$0d~C4fr[Nw iP<:j!jx$񵋌>JG ^HrJGKӏͥ7eb 5D> UTO>tP YJԙ`=e݇[({1/kwtNLB;6j$7~r|,R4/PgfZN>7ZЏ%bHha1&5/Hl>1y'l=Q83™ʳ i芄r]$է1ˆE );TdZ(a9s&%^-iYjP_Xy~ E!6 L G7 e/rًL^7Z{daj'&9ܝ1}1-; ӝRWHK9Uury,qhg"G>gp ʂNxzI ^|-jzɵ"3 tе/f?sV_C,9#wN K碌ąnv8琼ZxOG͜FE&_f?;mm5K: \+&2P 1q]jن  IƧd a#zZt8b܃9Á'%P.~\&6~#EQcLnea/r56TP1u}=$sg'{L 022[5G8 dAPR9?4~iE/}Rs(xSJPn=  J,N:K$Q|#w| o89@ "O8?E9>'QT: XVM\{x0dBp: LF')9öyY+Gj!A{] tLYCI)2Gk#o8½<c(quf4 X&LbKҤj>1!NU)"TDyY` Tܷ 2O%vkpQ@,MNKrbcEz-.AA(si۴BH[OL\;2"Ƹn͆M jW{hxȄ9ptK}gNzy')3[7qHx=2e?s#i˃6CP9=-}kLk̘QzGeZ,:@^>[yu慠{CG4B>Vh^d$V>& Jia mgͶ/e[NR  fy u½DhSЙ`3)HMYov3i/MJ=*cRqR%/eZ駣6uF# bw+J)+Q@JV\%_r9j9$"A&IA[^$eKc2͒BxI@ MeJOp[E[f&g(53b=e22o/W$[^9ջTcΓz+@k"t[< TI(ivN e@L:ttB\ oIf)y25v64jqPpjK g:јb8GfJO+>3G?%]JH|t6^m8Gn5 Wr;v/&L71>L;$yFϧ"g*u%ܝǻe-;Uk) W-AxcLjLE =7Ń[~X0lA [ ){96XE +W; [T&_8I| ?slADF\EzFs(Q,2L؍P :޻{DYaE%2UnZPПp5|@=&pfv[QDFx/!GǏ UC/7fBZ)f9-&2{,U:l]􆼱o+!6T=kIVnlC=L4X,:Kogg'QhZN ~MCUFd`Oi'Lt]tn uX 7W=rb%TXl$5|}y,U|j@i |`T1nNL݆F>e.ӃO]EhxӜa>X;6(8L*НL17巻GJ. QG՜-+wDcuz-~>(q7E]5ެBqCR> 3HjkLV:$)lbA1X^ci=ƨ+*/umach4qk~DkXGc=%ɬwO`-i27굯oX ꩥc,c֔lhgݙS4[(pbcjZ/Q[<;|w{*tҜq5EDc{#eSSM$~N];.W%2r2ls6(Nmm99T$(*xДt)%Lgy V4abO:X( `N}FqzTԂ<( ?_ZgO1Soi8Y%~E:ѕͻUx6p%-$(-Es?PO[/>~[aqox?x (ٯKX:e]+ @_a~zڕ?g\! 9HH=ٝI/֣}ЇrݎkLa7@ã5x鴓uSʌ;O!=Nk3Kc;K-0K aN-x彤b{^̊{FCpXB)Th}w'v)+=D5T t6ܵʯvfՀygdG;̡)4 m+S\n`5hNJ"2ÀuVY* ;lm C;)NϠqH&~G @()?%罄i~+8j #/lҍ("~=k-O{=E~m^3~8M{ǰH~7Ї]Qs{+ގ#W2262zG .\ &{&~&ii[c"u "MSJZW]޺w^##??E^uT}!hGLυx0xk01%?Bhs1.9CuĔ a8ס ook2F4d.u˰bQ| Ҿc-)+tsۨt&$pe%hdR±y ?sѢ# ١GFE6О>3H3)2' k; oRz3ߪELQX0㒽KYܪ*Ts/wWXE +.сnY,*|mӰl_9Aojr#k)Dl2z^z#3<E=}xus(bU֦H)aVPbAPLTdzNX䧀il{ TL cЧODt'l TofVk  ޒ5T@5'f*D5%u6.Xćڊ`KW={HFRmi| i- )=JitݒPܻ^Jsu"N|Jz}]#(E^aaNԋt~NnsK[TI|"Nc L(=҉Zb3gbVLjT<(KHfpڪ5i5zViO=Km?aVO237 Ur "ػ_J$[kx28N;|YDMإf ЗXsCO~/į3:ໟzS=YwƌCrیk>ZSY>]I"fv%tkC}]5-ko>AT~ 挎,&,1l:u4X s<[ -(͈#Q+>f6٨rE5.eA`b#^ww\BJ>N=o&Ym4Gn>6da̾#>-ڜb4;6f'I x*.ుIe]iqFݾ>U9]*"J &zfQ&T]`@>\:A4 @%1ǫޅ~Ɂ4ZS欷b$\A-ȱ!&"y;J88 Ξպ:Rxrzxu^<A 9xzyoWi$+Q@yg5]r 0&ZJ˺@3}E7G pͦ82jҒ 7O˴;'Ba@I@17$申$)Żk婎OS&>umv1C*a ) aETg6ŷי;E]}otd0wiC$5ԝ[2`#pg_i nΉoMu*㲓 ~"N(4il^%ȶ_jRڏpQIȎ*M+hJP!JW1@9.ڴ@S xe/ fvif&6T(#E[hÒ!8'wXrhkFvE^/r%76h  eMqUOS35;lDxělcL z!!eXm`ʺ\b9Rf}4j/Ebq}z<݅j/6/Gk$P@ӫ&L,/r-m%i$vZfm:PӔئӍ'$Ԙ:V4c-%wЅd v+S~f+ EO>bq[J{<+Ռtvegwe1=8o@-G%79饿mgj} r&]UUQ ؂}d[HzEzp`lRꂒ' 7]J~A ǚ/\y־OiGg֝UXOJ3}10BPO̥w5R5qWwMxP;"!GD t+`<\Y96ԶsQ0yY+_26~gBk5#'+~S` lQ(v|9mbWpdkEbĵ@iԁ 1VaYS)BWUz(-0 Yz"Ny L*"$-j隟\deWnqk}#uD+1=$m W8ЫED&KEVʛC-3!Wܣ"k?)}NVL6T oݫ>=&#"?V;F%l>k(Cq3wb#sc1mm$J FmG6{-u ;=U@)*` FJ}`pjf* A*RY)hT%r"w{`t*b9_R@UCDe˩Kku\T[ xĈ^<0AdBzػΜm8bNf4Gkɀ̥őy=`g_ _XDgQXR:п."/ӟ]Ef+wih~ ֽJUsZj=)vbS,*b|+"K7:tڕ`ULz/USӻ8*x˼>a~R{hO|d$H[m,e%tPBfj^YOw58, [P'q&NgƵ;<* &:U1i,]lE.nB\};jsncVC[͸iyȹ0gs64 FQLk e`^!,o9d%֞$1h;3Tu>O'pC1F+gdtsBo{ZJ 9 7I*IFqj ?FZ8pQB'NGZՄ ?0H?uqmoM pl:7˕|U4HdRq}t J(ͤlJ%e^E|tn$_-L 6oI(;d(12tBY,'@?K1wݮ Ƙ~gEiQߊMC,{ĠA${0QLj}\]H,Ķe.iZh!X͊ :k^û")(u0 3|,w.X(!x"#+l+Vׇ_Lo<ǘ2f?:(OJ,c ZvQT0_Ntc .uޱ7F\7Az}=D{f|ceƳ 1|{X\JmM됦 _A)ZY'fQ> *@W= h>1kg9 3Sa<*I\=XU}=޿>yDI(45>  gj]'v]Wx'pF(m^}Bk+Ϳf' D&232{C80ƭ`rIA[-5JU!K[f X4_X\OĝµH&9~ĈD7v>Бn "Q?|莐!< ZC_zt9k`eEsf|u@}E)\n]1:"ݐ#_?sceXV@J躳 w hw܆x@6&F6G1z3WMR65*{eHV`4-ƻ4*ьsaPmlᮞ-מ^ 뜅I"iX 7X.պ٣Vߐ܊҂R))GAserU2rSf0δ6Jq6ZXQIH5Fb]t-EZo%}l(/z&s`zh c)}ֶp+'䞵.n>|g,3~m(@ck~C$SYL^|Gy5'/ cgfdxCkt9"%RD?*tSqUAMpy^|i 7ì~龝v?zEP]ےԜsx^ tm T32!.91w\֙L?OY$Cn*!`XMH7d+}A9kFF Ril T΀9PQHJ.7^HV$Lc;/:|- Z>UEھm>yA9q|>69a-dۄX!>aԳ'xI?#@0@ ;4mc&O0N'?7 z]?[gR?.}lyv=TJյSQ0.* g9ȋRZUƨXu87<&Ws{+/9^:=[]`$>@3,ɸ%2Õz{{P=Imk"1"̄pr+-$Yo^N=9t>Smc,{Ttws66b镩ub1aN˭vq3L:!(?xD46:/wI5mrfsqՑʖ PJPBDZTGFv)~|jʹ(i~\ĵ/?~u'Y `SoC5ѫ|[C[X5E==v/=7=eK>oFXL>϶s. ̀ }-KkZ0uȏUj$ Ae0xF٣v Δ]C V2e)h;k¿CL4@=ԆG2Ğ\4$X4- `d_#ڊ#9<&ySymɦN^x']Q.QWel95H?,$\LkKLȻ+ $,@/Z'͓' =5Q8 }s[3&[oN L^ ef ~d? ˟w$-3wxIlwüZ2pۈP-F8WuyבW_V\YaBr2(W=(U8k_G25hǿk5ʰMѨڞkwTR$5Tk쫻([:sz'Hgf(1C!۴[j9T6Xuśu(~\Ğz>T*2?w4fԀ!1S_Q6AAp6uW Z& 'n|Fo`-{$cF >=mzSk68!UR%vd G }`8XN07\XߴcELpۉIf"g|yUv/}Y2vFDU:u_foYi"%TJ,("{^wD8-Ղbr qMHsS\DV=>&J*0KA)* S:իzR/Sn452p?ːݭb$#W^M'٤ lR;&B>v vfz[ZoΈkҰ,[UVav a*l+{ݲIFQ_QY,dhGuO@VG1^=W*c&{WT+@Q&$^~EeW}W$KsG+kW]ijnϋiŲ oi2wmW/oJs\~Do妠\3<ʬmJ"),z3Q7瘛n$s#HT7ME|?Ci'l=1nPL2#8ȶ=U<߂(EGFqdd3Rd/%stb r,hyOW;[FB`W8F_RO`0j|ޖ5r!1E9cݞkAq J|⑏zV(MVm(&[xwVHI^j$ԭ6g*O@HAQHPhs a#EsҨw6FHsؐ h#x;55@xwDjjlYT(cJ>5X.{J캒.*S[ť{l,tu'Yab_qR8(F 1Pnr@"IΘJW:&I rm2r2l*q0dvҖRD{Rr), CTYG=By4" ިG>HBrx ZR'VM]qAfc%ZWO! .vI&4w >"1_U j)Ig%*D2T))e|LF!nXcTU25'ɉTْ+ "A!N7ROylG׃O^lJ/ⰣhU?AF sA#( *Mgy& kU̫E)Ͳ$sj2g+W97.Qsr>Ƒ~p$[|IV=S(K͚.zu{l##IWAPwe']9K~*QqVS<:w’KU |ģ|.;KjHn{u;i}N$XJt 3~jCFCxrp]!pe&8`ݾƃċ 3D:/NN G{u\F$/w(Z\-qW f+D.-jAVan 0w"ClqU5iiӀejۅ&ʲu G3FbŴ/oO*>y8cכnI 3#vrPLs„^E[lg/_Q jC}Mƈs!Qr$`ӂVYK˯ 5cZ66F ؍W@9lF:_# <|#$c4m`~a&ʬQzm!a~*X!,YFay+Qᴝ(fH)Jcxɛ)q jaX6 E贜$2:?d,ן''>qP [CLAT<=`"VIJR+˳#b G$ϧj37W!2"PO$FCOH+  VΑ6F~A/΄ p5E$PrN{*Ɣ_(*Oy8VE,4@:Hguю&\bHCᕁۂUf r}x3o>h GJ5&oX.(RC-A褗Fq!XBĒҐ.}|]z#N. 9#èsRƙiw,|\\9_[+FW@bw| y \Z)!B*#" A9U"ۃ̀gA5WUkdtСV%b4Qs@nh纳MR Ë.9 흗@!٠\g1x|̮ۦő@c`mL<+KYu fY̱&m:č(O9DnoB+s` VsUVU85":k-ntz-~r⡷=ɲCt+&+˔ym6NIN߾ZEyGc1c˶ͨ 1NYEtvKF%r4&2~_#1CFsЌ4 0 &q#д8Ia*ˉ @2M/L y.a< @&iv$EdLJOIz.Ge_["~Ϋܹ v43)\x #=hCƉEnzA w[V7 KZ(zwG^7v YP+GNeOt \{ ;iPj";!&6 >c MaE@gJoAkѥS8 t 2QxQh7G˱>%_D.xy|k[?U+NxJ]) pl@3:N<Z`wE֪JQ|o#.tYK8Bsh[NN$cPB z.4:'$nq_$XN?ovػetޠypV8.gN\.g*M/^Q-U{ ^+Rr0m<5kC5O{a_E#ņΫ`Ldq#eDy/l۸H0<dK.yHeZ\! ġ7)#ZEQ߼]Oj~k+#i*h<$; #[bvuoaU9DbǦhůْ+7zkÌzPݙ e=WKWkP rvQ(-'UK P6w%0(=}vH=].,x2NݿϦfe3y@XxbrQ tU61f6CldmNc&O++3Q}!l: f ={.(\Ծ8_!\Wn>pFOn&[i8bADq'taz &4n+& 3 Lp/kIkO—FBX hq9\' yOiT0LRD` υdNFlx [{ݲ8^.v,-*sr`=A1D: bp^"2 [1΀m'd.zqv\UQʨZ :+AP [:V +D`)4^:U1‡j>Ŀ%-F77_iW\Wui;MOHr),ӬaEFΓT<-ce5%i'I6[Gv|)aIH=nF`2C[ F6B.khגC]K‰㦰zk:TBXÛlXZ !Az~6 (IE/X#rQ>f/%wcԂBv:UB5{vCPTAhZ`g#"' KkX :KKdTYJAfSh a׊pD&;0 9Ng@I~@3ve_-zE"*o!hF1}:ѩ r- 5{DbJ- 2abl 7 w/t+cy%I) V cD뛛û\ZxG {>DCƵȖ|md["P;hQ<)OiQ$y …Me8hy!ovI܌kLޕݻ .kBr \yv6]yMM]U.'S^~5{W3 uRϜk`R|I^ub&vP}kg >0prN^0xR7HB\|6oH]DEpx,ъY-E2[-iY޿* ^2z'gD;l9+4oH7#cLq9R\5iLyqclk냆}s(- y~/Bʔ0Jj郞+FsP/vjz-B9p\%b4$gJZӉAxDs܃id{rcR%;e;^Ow˯A[+MiK{l*(#xq"%ŭX=Y 10p߄}H:SS8x$ޫ|/\G_J--xhS*7U떅S r``\o$mΞ {HBSt\CPx#sN [V&.aotJ /W S.ϥӛ4%w7i q*woR,5;]%&-qxd@⤸7Op$W0'Rր)#'\NE0Qc{yü)\5z$0 / f`Ky[z48˾F;@˙'biԂ{}w!%"n  Cơ&y@)_p@= b?EhtvXYyC_:ǼစPJ!R7\ihek}BSZfR|SsGzLj_4Ufy0i Im3=&F9PzcWdř`MbI2bCkDhn ƯacQx"eHGVvSỎ\1H=C{).ތ=Ä| 4.娿!Hا)aHCVXݲ tBh).NLݐor=Ly;Aaze( <#QB5!Z|ё箣'Nv 1!&ϿB;ܝ -{uglAxZ p]p$)e4 RB +YXDDba'LzB\vD&_XA6|:7r-$#n@4ɱzRuG;=AńV1d)=hE*ⳆI"cLd2QuO'm'L4^2V̎oo]Ѥxo5ecci)cV2#]4m5\@T<6e-Fnvn% 9 +z߿fe\I| fO0Ȼ) 21kJٔ]v o\{DsHJw_[42h>ER0IͶNcz:?M)~We毲vdfX{wgӫTo="VS;ؼ3S3ȖuYwR/9 *JB@g] T}nhaXѻB>&ɞiߓ`<#v=R;lsalCZ/0[Μ cFG}߲w(*ƕ3"d}I5='C +Z~"}UNւ`<QoZp{EW-³JSưNo!/+qd"֊+"+xA a.9wɫ>N:9J?6kĻ.EYGU۬#O{8CIZ՟kp66{ #kӽsZMms.RI<;IRI-^VP+YO6y:(, aanq~4ţa?f li~)3\(:M+K/- |BѬm~˕`l"%/[`Ulנ-"U55TjX[9I#  nh!wiHUSAv;bh+mӳmnh/&py\_PK:F Wbk͓zZ*nsH̀AaLNI{qXfhVgQR>%MNL>If-)lK5o>zu~s:JF S^h(݌B}A^u?aZ@*] h"2j M㥱)EםsXV^c:XPJO|M*oF&ΕaDK'3cP?4 Y&ىi#=q':Pz1hd 6 ]OXti h .`rBAW{ӡG)]|3TX.UKt\He&xu L͓n4$5ȟ|Zއ&ǴPIu|Aݢ͠\'9)=Ae:GhՐ1 1_A3߆0PRGmF`ݹB"$+{a:p[jlpntس;9Q"=oa~^"ψpFP+ǢӑISm,;nZ?,نary87Duy&GMJ3*)tF]U_6 #2&Bq_t{faU?@9te@Qۇ[zS.;gk~?D=‹=36]_Lߒҗ7Xh v#|,AXF <W3))FMMt,i~GQeZ47Nv@zhd, ':~ c2\w_Kl}?Aٵ4ģX6ufg#֐IYq4-KWSꃊiw㮃=M;Y k վ;R4GA YC53ylEQBAk& j hUKgT@Y[0^ JcΊG#² X{z(0(Z\hܓ٭h0USE*sm~- ◧Sm vK"WSPZ$lm@mc̼è2'v"9SKz ɥd3TëzIf_ܕ@ 9mfIБ'O#g!> ./YQʸMJ,4܌L0EZmO%c]>';h9}Z4 *s G_D2QaH]@n lLs,ԆqIam"X=1rY$jiTo(Xb;5 I~`Qagc``6򣻪Mbr{#;0 sݒfX(Qy.uyNI|EE#>m(B0{ihx*>?7+%AiKK&0(9CH'Y^ϝ#&'&o^ӷ Kl5uOjA]*&R1˙}pA;(&>!:QL7Q!ْ Jv 7EPj%BWlwiHcpzb.ò3{y"dw.VWM"LLI7 ϦL&V ^̂/L=8I5S+[DTdzS݋ =649?u2NGA9@ZS)P?M sL*in0lfێpZa_`{l-j,? @[܈> 5 9w|$;fhMY9 +Med/?dNnOj&j`#c%n B  x '6m@Ze?IKq"s.R+{cM3ICqqk. DG8o%f1.oݥJGy`T䉂;G Wid3*ݗG(YQ1bCAhO.YRWVL ]_]=v3,|a3T-e;l;{_?ZVG-`{\/ϻ%M\!p>Ge7$24k@)(& zL6RHv#|` >ʨlAeԽp14}F:'Ghwbqfjz~Zjl8pDyWn=;c2g bǿ&{Ǭyon;6'*ߒX Tl`I$DSXv#exNij\B4)i  2΍CtzO^_W#sUϫ\&wFEU`X2:D%|7P+օXj?==8K%pR}g?&fKyXI@ ǭF]:QPl3 `hD%v0&K'Z}XFn\AlA^o ۄ3:fFWdD1PQf⫀Zgʯ%f8 ǩn[s5\`iAG*#5)~_“>O_#>}%20qiizUV"mZwbB3yIje^ zڣɋ< Sk@}h ujk*@z+-~FJ{>S@uP$-p+H–}-Љ`+$_^2݈ϥih6')(rV9/|bտ/ͭZݗr`Q\ˏEɂ (W~ӗ#3 D=`Hh#vYE4 ߭ :) L5J>p | 5iaO8"SA3 pw"xp+MJ B 2Զg]J@Rh*{A甶@ U>ov:`8~[O cݸmօ/a$2C !t䟕qo|ç`t{+]P7=j+`J0 .{+~\>Aː2>2oγMk][3ɾȕZg "MtiOcXjmM +ck\)N:E;a ߀P˼S z@[^sl'za:3e[ $X&R lKI߉a:Գ\.|0SI᪗ͮtba8k.毟/Y k`ٮ—(@0ܗgoxc- ?7}[ ╰:jZN)\[ fAxǽ@r5!ܐ7r^3Cj7l2EReOՄ)ֆC ZuT.sM6ͭ Yr* ! ]H;g[F%dvQ89P$Hp*& |^G)v-b E^W9 ؠI]l!>с KE>)ۢi4$\Nfj(hX*{ z})}xB 7R A-FE%7ԇ:LP1Xu70\>8 "WN|`N@% نbʏSK,tpI2K#z{ 3ކw+(}6 fJOfG?]4T·G!d_X Y#bLֳїHl*FnxZh́=+\M0Q Q!WÇ%E б?2`Fj؈oo!S"-*蝀t@͗]P*cZO[i [ZuHߎtd,7ѐ/#_IxFU3)7`ֆ&?*C{o 1Şցi %@+]x\6#ğXw(^ZKgGL>`~Ss2r:FVmU$Nj qoz3e_f}D'{s{0*A'f*8\է2@HF7ܘȟX*F!XpXTiltA;^9zet%I6RpҬ;-K]]nQԔ7k]s#y&ӄS0z(L"-Im o%O~qHR'00R^l~e~!=zD ߜU}!=ܕε3#?M-n fcoe]- \VbӘ4 zkFauo)pzQgp_Zxyqx2toia'֧]~hIx=w;S茤\yY0S^'.9CvFeʌ=,o#mڐ;ƝhS1;Sb??gC%ԕ[Mn q%m+)bX.0q"zB5ĝD~vy9 nLg:>!H_,v^_T ]~S`=8;;zٴ,xPq˲"Dڶaz.\yu=e4 >}gLy:B633_вTsDK.@*2L?N˰l ѢR*) 1 |.qzb6t.-aY!]57#c?o:e}vkUr6tA6ۡ HcI(5<P0r:G#^rxg9xl/]i Ws ~v/k>T8>^+gQO 28"B6'BAxC x+RX!뎮({.sOTN!xWIm:nJwej痝 @6vkJM._c_^ |(bY߇~URCXF xE. T0 po=?(ƗA.ELrI\zhr}[zӕ.]̛y5j>DM:$0VHg/W Qwz^m`b9b2}.꾗Mi(%]wjxV<,!"PMc0M]:m R~H \Fbfz&wzQs j=L76!;R2(F}kp;0C ~PVA)r睽0Ss4Ѥ7yrNj]"/BZG1CHT"aH)WݧTΆyږhj{ꩁRsyA ۑHpkgk }ӕYiBRs\Rű6te|&E\}ucѯNǼ,dJFD Q2@Qg}s cBr|ajIӥ4`PS .@L0(-0yHwZ 1R^6R1%OIs"=6410|5 .3[홊@۷hfEt?nxM8s88ŽIpWŸY3ipaL=qQ5 vi:0ޑwߢnfMK'z.~9ٚGNa١F :&Fc+$$y+Y bTN.(E)A^3J+Qp}Sdj=EYP)^vKYaNz҅FT&I{e`dȭĹ#b fb7xAYrI#$E4@LQ)7!-/ށwkIⱹ>]CǬ^8 7" \x)Z.ס 8enFUESzIDjt2;hC+z]ۃ] 9GS9j 06CW*0B^([KRt<Ȗǁ[ʺs0cv;%VH6{;LɱT í{I i~ f@ ]xRc5Orf=RK\ "V 2Rk>b's%EI`24ϡT6Eide|! F.qVc GYhK'B`9MJҸUkKҁ˥M)Z,ZvHTX Ol:Z!iKP~h9"N56:¼1/ܢ9"-%=@tl a~[?~֘WEbo+Ӛ2zJߵg3O !J.#: $&]@V16{̞XwN4>=Xdjk+- Hk+>_TI'gUýE^H17?L_,?I#{?WA4O|,'u]o3*hqs#+rDiK)yih)(Ң9cl#Hk(lV{T ܒYl:,{XZi>~W%q͇s3;T@D1tTdIa:+?KϸP" doa.-T{`κ[Sp4D^aYY_ݺv3ރƾ Bic5s#^ͣvæF6?Xse֗K%Y<'/z]} tI-w3_/^(}W4j^44`!Wi#ۅtKbll?ZN& 8ZuՐ*՗i; ry,S_~r'j03X > b:g/Eǚ3IA"EwhA{[ml1f| %/l6AQz}ʲͧ 3-*{Һc, 'r%\F,FqLlOLmKvC9exU ?L[tV/s"9䆋^(эq8B >4H'=5-s^1I,nd͐ky<[XDIٰqAh{ʇwgPIo.=%@X$@l?'D}ap UgY$eFB P"92rM|)4ⓜ9֬8A{EFE_@ ӈdbb6VWo76JbDz%:&KHx>o,g, PgYZ"ȩh8%Y>uʕ {\Y}͟2 !q>OGhU}[cY8]먶; IUoe,lnyO#StbHeѷoPh&UF8=YDX~Lz/$i b[Ϟb59'z%>ߏSPWyKY爏Ku:|y^,3[ /eA]rf*lh~_ "057Uaٺ(a)O1gL>94m*TWێ|KS+O S(IR^ʮ=H;-}#zѣrp@_C_K/Z(DelݳE~+J=oR/ `I|bmQN0|hdd ,nSXTpInd:Sh l{\B 3xˮ@^v& ay o8{Ϲgkd* 2p+j"|7RG8/{tjdnω{$>;P(E$N\(+BksƯgCƩQaԚϣ;gBŇ0䉈Ot>6F$h4 /j,(U2<дsVmSVHq)OۯϦ% ,H+QLgAלՍXO*) .Bz!K.MXW;3RK|a'fARǵ8@||gYꦾFP@wW]ݜ s\x*Neuh` ]!p : @M8x0t(v|p6|$6w,C(Or)]8ARAz-ta3eY~Z9)ڐRdWQ^I`\ybp9A\U[MH@CHaBQئ*_%*l-@#87#,W0yZ4|]_R ^Mus]5E#pnPCeg<{m5q5\`e"nyx܊M{mT~\U56>j<?C*ԦK.hmG0zF]P=UpA!UxNo 1yz p(YZ߷ zW kg+8G(4P巂:35nTC3ީtT66COm܄bKȧZR.xtZ&TG02^U G1b=ec# >k'Si 5[̓+|;dؔ#x(R=<òɃ:޻ޙݜxgc-L<EoY[*i|Dͦ-X ~,_8ۄinYdZ 2ˉ5/X 8E2&`NBXTFT#>ŧT9uan [ Ҏ9YZJe Ty-5S9~#?s9}8Au#*0VT:Yo YU6 02"gNCe*8o"j/Ub?-,밶.Sg6O&,%-c].p\1t5v\cpfVA.*"͚bSΰ@@/:yv5w 2L QQ73>*#* C W*?!s2<zg8$=d{t cl`HX?Du>u2_iW|zR MRYT(TJ.CApA"0:y-J|5Zi7P.䛊tِ904 w3/rfaٞ›11yޱ̑F$* ;R5glH)G Fe^6@Y "ut|ޥuysaKR7M@5O+YtBhAh.3 uNk3p̏6$Yօ[xr뀥:8>Oҥ2N& IjXM-33jѲժh)1ޟ=k@>B&Lb*EY[XB'XjBInZ%i! j4 vb؟4Jjf;G {cL~?2|nޠ_w'qV$7M# \a^_r8V@IiD7O r,<wA%OGbshdyhWO=Q!p&t EV_<^{+~_n[Uru>+n5Ovc~4@ o[3-'k>Z)j]u?@J{ԣtOss&+l/v`>hlb@RjI 9FOZy*N "ؽ T\Aq%ib9dC!3p&=)G`[x mF'*,?S:0J4J.XR1~Jt{G{$ ^wO{ݿH,A=}By|ݘZ@Mc~Zw悵QE&2 h@F"Sn쵊Դ}G.y>>j]^Kʣ=[?[]2Q/]ɖ>v&V\!w]edV X 8FW+h\*njED&+KRJ]~}q l1 Sj$c]֫|ؚ롞 KI@ǒVm.jjU~򘁪"Cw90i}SPW: ї]AzJ(7oEv1/es"`,rN}uc33uR<VE}vjv-},\gwZLQ=?A}T೥ٞ_ Z]`m:w :3@Z#ׯ#C:}rDDtikK~§r?<)rIq3f^guߥÁtj8S4\("7Bm_yݟ}߾"EMVo6c)CϲI1gj Vyji==(a z(oS&Sbh<9wsQ14$OʞH+1ꡕS6g+3CL(M_+Sg'z-7|ե&`vv`SWY% SSCtg5(PgNӟQ'xGX7183tӜV7a߀?L3a𠄞GԬ>IRAin)5hR(}!~m"L p)q^1lQa6DI,ڔ*Β\ݶ8rdJ6QM?Ea[pQ<7~L`^?ϱIUà~SWeIl3#T-wN F5_uqQp =D/*!@κZw0@X4Lԅ^e"%&uRuq^cNEZC ڝ UBBuU:3+ēd; bHqI3/L a8yhruoG_:4) k^7Ai>G%J2{fFmd|xτoE$!fWNd;7e~,VBH74Լ1qUSstCg}Gf]-?0$JM*Mc!@… {*}ϓ{[49.BǹM>3ſٶÜ9Om~vk(9e;Qb=RK*ڼO:Ux((<>'pXu6뇻~&d2>tT<_rW}Qg2й.G7exLu CngU#j3A6'vp( I>x v|ttT~q} jgndaıoJy>Ephj̲|:Nۡ0p+h-\),5T8@t[[o?f:O>͜ 9w4{ #5JO*>uRX> y<'{ [lto@ߖ@~6 /a,%9 [m@p nnm8Sf7 ח6kŷkS9;)Yȿ 7$g|lGGZ݃8]BXJPnc^ŵ*x[eѿNt],rV[W ]*+| #C⨂Wp GvN.7Pɕ`?^sbi(0wT -Vua~݀NA+]Y+G|1B뛹bruhDꋁޓ]y$'<(H}%)U~CSgi{wqty!{{Mڙ>le : ニVA篺䤮S/ƧzKQX (^qK#-~KWHEyן]-#_jOein(ňP@ϕ%g0+#fH5Cʹ \U8%QHKY0KM[RwZ  9L|yf @&5@,it@`𽱙%U/4a!t w=5qTty1C Hf r>%PJ\fa1 C5'+6boyD_ld>yuvM_ w#:L gG%Tx7x d>1Tޭ#QCD{b("n},>Yĵ(&:~ǔ* oF5+I~Kaz3'a! Ss>*B$^~$T* ڰ9)$!y~gʈR`j%[Ç«뉅n>6+,^'l27/u2(Ԭ:Tm}[?8 ?=uUg}x܃\q<Ӷ6G%#cd(@75u73]朻%ghKvKK9|H)1Fa@\'Yy&O9|Fsz{?1a)3RTwc`g5sm4PVαv 'LPttCj]jsMZ90z0 kl/w{9 =\- 5Ӎ~O7Yxi9"y8uaD ('[ XS:/n ' 鵅{Gusx8!3tu)\{@ց {Rf?nzc 6&W#hB\ b"C3x\"#XhT]հb6')s:J; eͱ&jB4q[F@Щ14fLȏbPyۣP[`cQ}#S3<\3XX }8 7Z7!3Vͣ(`N+3+Ir 5]#M7@k>Dn/%>#PkW̉X4ԪS*pxC {k_7Y&ejӥؔoF.WIN{U^bڝ'^,%SH[D(פ$L!L0FJ[&Q0ý̱"7렦 FȫJx*m)݀.uSuʜs1|Ǐp뎅:^h ̄歌D{B@O㍽{sQN󿪗d8&[ r"ei5G<s?fyv0ϴs>%U: 6LBkV(~!N$2v7Jw-*),TNT~J!8[97ҭ::ѡGI!} un''`v3cqV6ƚ`P gqp#{I6XLvq pCH[yZRKW[C:ث^#ݩ{3ё.LL"'62へׄFa̓fsO8E79={o p ]}}wSL+ьZ=^qUU*]<~DmXbj_Huv;EݱϬX/I횸$ V.L"އt+5R F4tb#C۽볺nE& 3S{6W_(U, ORZbjrwc'=`㒬ġVN7"ݨG΁{0"w gC͏)/[[`,θ*@7 k(f1C0N+M X7.ڧJ }incZ ’W1~v( ,4 tq(CUaZ3ςx4 e74n` IT;BQY_v&Nf⣍לp0'?I 7梤sDw(f vjd#+Ǥn\P.DUVܬjfFo~:ײ7]᱂CQ5ZQK\1z$X541&H"@X ݆yK/n>*;&(Kjy+ |Dw l˪(x5o!עPl3}l%$ KDxb=4YD9M Fͥ3׈WyU6&c/ `{jCf/ 1gAeȜb\xImd2"r2+ɿyo`+l9Ru FE@'=^W!2v2(]8ڬA꣟8? |O#f9v=wkmFŅ96T5=7޷3_-D<;up=qG.>_|3Oa•=񊎎/ idToL`PTSIV7D_)0Ħ䥁e\tME8㝟oKos4(9 &K@a穕Vz} ^Q'(`$1YBNt"~Uum)P4:4P,yϓ9g_~s dj{h\a>{8G3 8(6^s&fVg:5˱4T[™tG yM>ס"ɉg#{~iKƝ 6j<or$Ej1uD%F7f"泓cZV=ɤ <6MXr!RϷ֯(zˑyL~6+K&2;2fpc1e|$KCt_Cv3+5:^zQ.-i H缴^$tUb֭ I5?FnaWd]JbГC(MM~f&14` =iV=JS6](4ʛ1 h \W wv=V-+o,CS/kU6)U҃mdwF,?oAC.6EPx_Slɀ]=H͑_Cl;/:t2:|+/2W=1MG& R ~Y 8NQXx&Ɂ_Wb:~ΛƔqW-Kn (sIJ%ᆡ#꺞^EP=DT- G%5KŔp\KjX[KG&FO"+wF|4/d:GT3D+5Pϙ Vl׹P"Ĺ?4>x~MأXv**tU~+$7Κ2gV1I's /uNJ58affJ0H%L> uj]zE'% l%,)p#=DC4X&$l8룵ëHna 4 tGK%`Nj("f{rX?*~>N8 (Ô}\ЋT[pV g`fcZoLg *Lq)3œI :UvCng0[l$`nj< 4 uSW.W<+TG5`jann6Qlg%/nE7*@Жg09yY z WBLh4Y-JNWDRbϐsv; P@B@kpH|_D(B8Agl >o1E γ1QHA\.3|B ӽfXc/*KOhILc΅?φ ^yna7Beo[]Z">E.7(Wj_rce#F-\51W%hUW|llaN61Pݴh:0'c'Ȥ$:,85{Ir':L'{ \r%Ȟ9|d^F:P(xE/gPp6e?LdRM}x/%E_& OjzOK" l>$qRC';W:5I^+zva[UF0SŜv(*N ,h W!=svؐ`cV&VPxK݄AWbqv6'vGHq&}܁Tk}8YQɧކ%;!k hj@1\ujڹe« B{H4ԲDP%R^IR d0t$P69KR{"yOn {)m/PJomAE"CgD)^+@`PJJ7dUk[cni%CނhJ|sJ>bK,Ǡdo刡Hܠ~M`&r\ijcF`"̲s)kb>h"";۰)MqG7OEj|B.D8D!%\v?#fa;U6Ъ ӂ4nj)Ic==*y Z3E>cx̠o b 5# lۚ,n-YojF"n'L\⿣ ZEJ6"ne&b{ 4-(i+5$B`=iN3Ϝ!KRB=/Avi G${jws{qDNas d-9eMĮ鈚.N*3LHOAӛ2{ғЁٷyZwe dw['QQY: mZmmq E?ĶXo:˻)Mϩ3yeqY)2-u^B^nqbɿ͌"utYl=m(xmJqu,1K$WJ1S م )CtTC5ɝ,I9#in@ȼBz;Qs YAhY䈁]r ϢPYO~ &". hkt%)]P{g߬B0"?n5sM*T$fS]S#n)K x80s`X v;Sr5RyƆ\DM!ن^Ӿa/퐽RYLR\dQǼV1leg/RL7h:T:d d{όɷt5kbz QM}DOD oeU_PC4b[^$ dTݛU0R!eLW={ Y)Y^O<5{Sb1Xċ{pڪ&YάfaU+euꭀ:Z0/b)-l1ФkXaO{?qji5g*/I2I.U?XP% +pYd^=j3 'f)&ԏܵ"*DmeH@9}#9N/W^j !=bAƫYn ^AxˍqWS ?sF#GPIqn7EbҭOEӆmh IJq}7E^j)臟 C' pi?j^!{Z0OocW#k\5Z _L9zUMQJ-t<{e|.wfzi~#%NW NH3k}>_{μnKՋ3؄`/4#w*SIHUњ;k<Pt e C45˯qaV9[{/ wT5f1Lw09#B GK>*o%- qW+ ,JGIUoШLGQF+ O.m=Z5Zm n =v%" 1-m8~SRSLV;#U~z)nqgp3)ն 5Oct,&QPD(`oEhONa$PC "X_e\ ~м9*;:g^LU WF_>294O f)z"~d|ئ3mW#E-iXKO]`C$Q)ij{>}ҎCjq-\Bk۩D1O'5K)%Bf@>+kLS_̢7naK$n%m-9'#OoK'fd#U:2\$8q`)^OzxĔǴH@b1ɨ*ә=,.EwW dcSxߢ)&_(zSC@Ha_ 0*V.E!t*EfeA}-8Ԁ~򝿶`o5N"6qe@oD-W*`P7QN&&bz랄2S|}2~gȿ…C?Dn`pDJlC0m[kbNH3@d6q祠q/fQ RI\Ëut!Tx9ל)eK(j/y*9̆^]\$ ͈16\e8 |aP:9"dV"H? Qp~%^9l M5*8uO)3H f&$&IĔ@ :*r >Ɇkйַ.&VmJo3 [l5d26WI!!1lȳ("t$6B& {Z;=G3nߎ 1ebv kcc^͛ O?Hg06Ua%mЖR=_vy aq|BgXf)ʅܸ?$A O ^o#'Ftf5hrRTgw :SR7m!RtC~ƑRiԥ]%!]f0rCt(!Y3,uG23fF492vέ()Dm1hk;0]lK|sJq<֥"ve۠ HC| bt hÒs]2(+I)&N,sv&gyE.‘H?`Ɇx)<ǥ=U  }5Nx K%sl< wO22|!Os/]sĒ30R":7?}]݉o$H°;DnT"{!~zw &!mQd5B%:"/t)GHo0u:v8q$3R3J#0dY):Pt;N_@V {MoR2p 3 8=؟x7tew~bUiHiNSX259%UCMC ځKQ^HiQ^r (6)@a|ORi5EuHQr̂eZ 3}őo9=vfC&5خTv;z=ID6bJsPl1#3|3kqoO¼Q@&ʵq!*6t_&`VRfLލ]!R bL$ ^,c1WMtg~Sl#|"N hRBa Cne]4qSvSݣTW"r/PVcA6ewslNHE0 nN,E84_uj e@LRqK" =sa&Nn̮u|iY`e"NόG'@eyT% ؋NjTUh]P!իJOƢٜ+JVvŸފZߙ<k*7ԦIu#wA[2*d Eُe :އqCJ?Bq/h @@8K,+ q-KǶÎz\q΂g+:'.#kV= $H{[",G`-,s.:BO Iz$]a!0h* SgǟI9G'~uQӤi!wA E FӯW<17M9Ȕq;:H, @=>/NnݼѾFGÕxU&BNG(y鏆>AghɄ81kgir7CѯZ,gl3CTg쥥f"sǧBhlYXSyr$*|T98\o[pWf"g!g%e Y5#=k7՛2oyk%Ά[ZBvHBD:!:|"SwR7"x''7Le<@; ^?TT s*D- r/"GexB, wvD'Cql[ %(CvɢC ٳ=+^yYB wہdp,zG;򭼂r7ZL^s^Zs!݊>v>d䠊}{0,E{\V-J⟂s PB>ByԘp(ix#+@;Y֔/*N=Z<EV}鵊Nt$8`V9GvWtiyҡ1H6bgD˜3+n0yD _u50-4bV2'Js~/y"=UT#|if]έcB#=({{v_خ|#cIL>^ 0 xWĤ{SKXeq>slD-SHkt'^jgqñU+7CrNec}=+FVF&\Z"aXrpp,B&} taw3I/}i=0؇oVd3buZߎ3_B6HO65s.j3' mhxAʫBOMH5mP;+ yÁruB u6t"XZ'$So}ոdU 5'tZw\ʠ/8673 pn2BY"Px s(dzܒ:Ѫˉ\i#F.T7znŶU0;#M{=MPw=nP4b]'Wf}[`(A}o @x:拉kx[UP3$uY%ǹ:Ҿdy辍R?vуM XkH bzw;;ʼg}0|@DYL´ j(h{@P>ƣߑ {b laM$q /Ȅim\:1l#sH̢# Z ېHҫd, w|ֲ("-|WkG*R i}.KaOaCvqtc><߲ K(2 =ů/H ܓIލA^ia6 d 59PM9 U:䂅BwcعG 9 +>?2WB?D5 m8 R\Rf%b) 9@We~(ZO g92K|kb=voLSSov6 s!ŏ{GgoP Џ=>;^JjíyٝQ[[):t9ןz1]sf`rӽk* 4'-dN]y%4!lq5mNyT@&+ =E}4|oHЖGөeaҎT}EA0uNf"LU dWRA{3gj?M)B'@0zjwWWJ'J?7T۔2n4ʢćzbĉb'id7+dR6]-@4 Gm#نEQ㑂?[~$O0lO`kq2 >)'ʯx#'>w\ĕs1ؼ>ȩ(Q튜ַ\Zx5yCƴx5tVuf.'wɾo ,q]h(+w|۲dn=gUk2 |~u&A3\ բw 1P#MؘjLdsCZV>%!`%⹋X\U;i󬥺cUȦL3KV*_nF')-<i`AC8qU`18&'SPĮESY IN6=eh% -"~W`/D< ܒ9OC;2N Jh8?lyT:ډbA4hĒp7%I -–5HZ^hN'!94QŽ}<3N@pljڛP1xDǃ>wAP2\:!Ja>?*?-k{_-Ṅ$yC/]ds_&Ri+SOaGˢ00\|Oxeo?w )G,p_yqFv`Հkc0Wf=IDG,O}z|OXI.i(YK*&T=B+-eꦟ pϤ!K~9>$ړ-gVWDi0;|0b|OGO)΁,( @HZ4U;v_QWׁkT5gkKהS 9#ڷ/sa@^=0&$瀝¯7}U9f5R*gi_ *֨Apd}{ZN1NqӚ/5Hγ-: &Y `&~ekBYiޢjgja3r jӀm71sOP:N3jPER#deFS \@c];. ˫AEX=gKg&)t,ӄڋ~e{q}5J~!.Pfc~/ D_i|tq)YXS{5 yl쇡-|%41QOnVeؤueܡPT}[ߓ`sy|kr> (27p.ќ)5bHf%6VGo!Rr?Y:RoZ٦:sU芶"Ltv{ ,` ʳb{3R_ lv#TTl?FP]Haq:bS2e *.%P!_G̩N%<;Oi1W C^Ʀf:-.nte :$AH,@^WԿ=h¤!5 1B}F&L) G|ρ>A]< }P*p%s ͢QEM)n,  VP{?1%m fȆև4 rĪwG0hNͺ1'MSu@"tx=!gN*4B+&2Gmoĺ'^_(%TkAj܏"WsxlɜJ>x|9,4 s&MQ!I~%}?W;";5GNe]wql!ImY_7Lƻnش֏2ECkpsʕ.bcLT~P@Uu!̗/P] i6"CWwNݹ9Z'c!k=]^1^('ߒ$`Q[rZ+E<U\TGQdx=J~7 IY9wPՍxyDʟ86xJ2~#957QsHB` ^"\'qzTZĿ%;bbJ)ѵ8։MjK7C33ِ|V-h:0/D&m N`4HgP$}b!&9=:*tAb`O(])~B'Xv֩upB}7nTj6z/XA|2ZGxjS[eR`y9+ zW/VH)FjDkzIsuy,*Bxg)^-%C\neiJraKVN9kEfYҋb %p%a^z ?yWT$L΁RBIxQ<i=+ʭk -A8dIŞJ PLR}KXX3 du( HYGHc\ ٯ6FoYlRԼGw3ssh²c6w[ WVcugat|C~*KiiC˗VElM>?I`蘤0g dy)0Sis"mƝG<_J:`}EB[.@ax3S=mEGR2bung 2UΓh2kXIKg P-{~?tq,Еjm#X@$ x Uy}_|KeTQN䩥{1Timc;-ыsр)3{LC1M7inOtA7R@t420:}Ǽ/\={@ \&r+(wksc:kU\ɮΨʑb3O{PҾ` 86+=͔-L(LuS)r^~ɼsS4 %Nʏ_:F4 'Qa _HMWPֲKI, a#$LN&E. w~mzYfDCRPVféYQ8`=nU|SvOԛdܭG';뚁L ʚ&oҪKSrq:7 6sIjӕ|\C Hg ѓ{!Z) =+ 0H0|?+(y+<]"ܪb@j~iV>QtJ^d+,,K-|3Eclp輋MR\m#E n5}gӓ nޮ1P@r4+X]\ WC>#b7Zye.?5Ŏl[`jV9qw&c`g0azT|i]P!WosVo kcLw< 5Kn.r@ `׽hf4"'C, cŸ("[L5x6Ks;J?YʷsG Bb 5_\I?3Edӆ@Vr!:m,󂲅>`w^J#[,(62w$QmC~#_ůŦn+-bb}c;3x0K|_3n55=)Q_˻ x=7p ѿ(L4{{MТ*Yb]ФЬoDF0)fLV|w J+A! 4:.2(=:y?+ktD,N;س4ԁ|& AL@ (WYؙh`=HctQhT.BpS@fL-HûZ~)dJ0uxZV*S%E /Z%v;ϭσJ4,W~TjsRu"Q(ʸ6_/O=g-tSM"!4I5^&.[MKSZjn2rt"ar1wT'6] 6%PҚ~yq40ogyǶπPBJHv@/3jW5UgrN"v5GR+dksA޶tc&ԬGm{ wi ©RVuSd7칭9Hٗsj=v!&8Lh߃\B9Y痋3xyVʬM3{o HƝd͌AEކA^mPټRXbυe%:rTyq,-O-Q|tkx^'Eurg ~t/sfdU(zΏV0A΢A*!פ/ot=Q2@>R-˭',\`^*\P.K [3t/4p<9iZ1+Hs<@G,V`t7I {qy:%np?W>j8&̥EC4 F?ݩ7D{j0h@$\o <>!ےZ/G"ەdʟ2mLq`$, `Nh\7VqEg%ZzSIdwGA#i!_ny2B/j"!Bb..hN3%k"Lf44BaB80D@L7g՛r'ԝHUZ4I]_O;nlhQ`˗=xIJMMOBVIHۆX-BЇ\yt@Ϟ#PDߪ9dEf{7$/u@ 'fᵺ pnظ}a(}6.JUѼeנOײtrLXwT4*%Ӟ Y?SD6iQfè;&mVkΗ8ZKܵTx `܏U6T{35DŽ,Ot 쳔mDS%Tbiji =owWAF i7qpZ3B^NJҔ̉, ueRtFY  ՙ n֖{i# mgs:y 5?X16T;{ad'&`C?3$n$ F+΃fb1R%id:Ȍ/ \9=Ҥߚ+,V"BNNR8 ԔR!6]!H}$<гodXgjϹX )z8#Q? 'hX6H]śCųwNy0ڇLV#x{JEc$YeXbA} HVSjOPف#?8D@ڧG }6,2t%鷿IiU6k.&~4bCe{Ez@)ewb;Ѧ%鈕0,d*>ڌ O3;,Wc 1fS"NVKPYqT3ppm) elFj:hh7@96'&ywcD:ʀH@z ,xf*euFsVr.\…q;DBa7 G'S /d |yF x.,VDK=WDf ѷXsVkҔTm8YK^fEBl|rdiL%I$ky 5 {9\fz%Zm:=~cBr1O>-"U-@ƔL7 GI2vV'-ȃj0% k ZV!s:6 2@AJJ8JY`Pc}f^+/'gU|=5l qʉVȂ5.ah'gN⾎R-r l JPNϑ&$K%mU: `? j)"QAi!W&vR,a;"x(ƛs+a|x;qxXJgŴ }6)Z䕢tBDh">mwR+U4-`%9LƆ ''sݍ],@1e?p] lOlBcjbx5ht7G[Țz6Fh.?JkB6ĈmM,jqc5zNx`WcPпVlE& 3,HAoN4Ko(7]$2q\)$5]D>h5JI6|ADVjG IѬ=SLfJl#y鄖 %'׏mE*GEtIA+[vi )wŒaiC([5Nh_O޺O/1,]EI M;IYazsG6e%.7ʯF:{w0dN .J?z15F8}#}607=&nR*pˇT`sK IVwӥ/u!X<+Ԍ @SW?a4ZJq|M ) UҦ+ԉ+ygr^(|,QP{̪}rmWI;ew{`Z%^ ȏi w5X'r$4\,> w GV-WM!:-] zHo}~JWlqpys BI7`|"aBD7;p!kc^pv)GM׽Drwcahx0^2j)(5A2!떼QP̷TICjK a)Œj)RYMu[vٗf`:+ 8Y1M%i.ߔBbLsJJ8ڑSg5Z  M|hg%Kr-EG2b6E!k&\Xux'CX??͢FF2;AP&4 *-{"AE(TLyWIOds-JfaV=uoyýkwɟۚU#5˽:({Rq[eH(gcnf2+xt. hrHk'і_Ά2AUCe!a*)^pv>SƘ;꒔a?j(̫.N@:$T IYȳ_s&P` F|[+{tIT&y}3cSXA*NJF+LyFJ!ϒgް8^׌3l+Bo;<&^X&}i/\DPېAZs[*PbB=:1f=m7i8':Z+GL? 5k:e96r#eӤ9/*^P>⃀_5 sD!xzϡ)4*cс'X5BJ.۞;)jzRsUcDp:~|#(nT$?MEjlgv_"M}xIN;RgN(9dթ33Qmb\v%jHOpOQr[o-uje%UK{yxk >>#ӿq U\#Pofoۓ4çb%& 6gMq D'AԪTo9JGпlqlǍcAgP9GhNAG8oh7zEjwY5.78M)#%NC\ GfEٰ;6_OGQ.fm#3RLqk~w!i'd1H<ԑ+_{QsN;vj=ܺZ ξ +a-Z1~ 'wnYq)ԓU̵{aBМt8o[~i1BS dL5 ܚW"/jِV\8ì C>aYOulXʈ=;|3-Pp,&O /Q6(Vulq?0csNHD{70v 0h%DCY-W$&w[ $@3WdjFNY`#i:8"YqO{܌ M=wPB>wf=_/Vb{bt\g3A{<*׷PSK9CulpwaMwx֙9D)3~4{<,o׀*.TaxU7Ɛ3)]ɎR~qCd9;Ƿ$lu;bh3& Y"1%z%Ȳ[ՓȌkZ|}}5sp1L)q fZ+"^8OxY[s))3A Ɉ=btDIT0MoY'du!H=GC4GiQ>O0/}$xqM<}06t\{zkE]=/~io")bj4DYA j6w9coUCĄ~\DuA"p&sC9@~SMMggKӃj]b OC;}yDoCis P:?Xyb~'ÀvɧC{1U\jRgb6Ȝ:34Sr]XLBj7%"Y&WzQyQGX`KM]%J >N5IhHo+e1b Ip`%ƶK8ޖdBo#߁jV8nH|,s|çGii5hn b;{Cʹ4t~7R(íPw!]8k&d&钏!b,v6Dx6 nPa?6MnY%+&Mg ve 3=<gOcox쬜 Ʈ@:S묱k1LMVý&IkKS&bctpS`h.LJuzKqgx.ɂ昮YDwxLat|kOh>aoCP$eWšp rТd dgZL=A<~"ʾ̰~$[TKj $A+PX Jb&#:;~6fJ.{:Ϫ9O ` UOmz P1(vw^)d_'%{o=};J¬^|_7oBV=* R @9e3")7rRvO=fCx]gyu"g*-!k6 $hVƱ"\LTKGwdp!վC<Вiʜypŋ&¨K %*|vEϧeʾ*sg e 4-9IvTD  /%ݯqml-n 82('{LeStZ:,ӗG-^RU㜐C:~M汰0#hC&݉/|؟/LEbu\!IȰ<k,xi8B[Ϣ c.av%ap*Ď$L>Jy ^qϿKX Msx0.TZQ)m~7N>%An!Agm/6(ȮR2B{ l,OJLQW]QБ蜲0ܔ.]K ޻odQ5S5ˢr&,u;èјR ?7'T-x٩&,ɰwHE;KOAIb P-6 YoOg5uz][KtWAiM6%.%=*3Kԇ⻪#LhV9 T]3);K1ɘDmn,n3$ocepDFɾ *~܇{Q~s44}W<, j?zR bmT^&/zndI䲊x7B9+:>pFWٞ9%v۠Z%T_lՏpu8YV݂*B^z 7WDoV]HV7,ۋ:Zzv`?`_ߺmJK42Uw#O\S3!$7Cs.rR#$ ]rY)@^b6 Qo oYn{G*G:d_ع@sLm/)Oi}JٲuJN5+ʵ~K,R#2U;Q43|/-Gj+>:q\}f:MS]blYJ|.im.rĄZ|&Ołf&ӱfϦ-Va_"Kt\4׉_I2Q#cxZ{h% #ӐFka "Hd=A`Ns  xBUUg7x"Kヴ~;F' sh&SY#>7wB{UqUHXPbs_w‰<4-E/$ZMOM{/Sau?` Nnj7ik)fʹJ!x4Hя5:!2DxUvAwte89 Q0ݸ= X 4=QR*̂Ɇ]+G1*9B/MpzHr)p koW3|P<ӟl-ZZ%\T?Cl=E\mJ9~;G++_2`V;2\'[l T2fAV_8t@+_s TdW 1I) 5zcvtsMZO܎B&NyC{3fj ܦgh`-OD;gkj>+Hǒ`j`1IBEČܿpx*H, lpR+}j9zw;q>w@Avp$]lA8mۋ;A@Ijl7|<j>eS]@#*TWFT cwr8ΝOE[I0-W(ac(͊t)yOl%$-P\YԉՆE3A+U-vMB[|A =iy.p(5XqNȅ]$A72`E%߁_J#L@gNs `x@X*^'8KG|etk!4PJDU_{rȷ&ۼf ǹc: 1.Ud_G3A,):k6>֌,C0m2q 66rUW, i^޿w[Xː?<=2͆(S2f!ڤa^ئu%ݷ@1B@q,@yT~F3O1QŢ|C 8pU}; F$SU$Ƭ;zE QhhoS!Sˈ(DdH^HPkzqp ,AN(D_cEQZRD E XWF`eF0B9&l*Gxŭ@ٷ pNTju"d>xTS=2w~a@K?::眖6#rlGC @޾lnJxZJqVʖm.h]650~'@1#D* |a`UTL'ʛ8ʷYOF.d22p uHaB|tF~wc$? }"e^!o++Vp"#Inj+ĂFyBa}K7 ?g:"0 TP!H&X ?3Ndj] w-bq_a5jq&f$L x{"߱VN%d$5ȺĂ-p ghpyϝ[|Kl]b\3ߙP. aK7m'>Lq,5}^!I/ޒqeVOwDV,zȥ|#%6̼KRk\>S߂z C*Elx.9xڠ>):2~XC׿ۅY++CXPD{ BUj.CZaj+CY ]pRΏLpbC08嫣 SfSB yvtQR?}Tv$V L~.^\P$(&|^`-1NJl&> R|TEYI ;񄇁xK [J<1P?+.ZXdaJ2l0 dI"`\Ewi1)yRUf`j%B(ƾ -.^r۾d1rT*ڠE1W{da?.G#^ĶgNzB1EK9~vB=ݚtTA Ux - xF xɧE -i J8XAp =0QW"R4,$ ]_} xh>Ov/ zl?J-ΆQjEn|-p4E _.\aѱ7D5jçقN#[.pTv -9u.7]jm;mpsO@tB㟧,`0W_0 Rp۹|E4dvs_V Rȓ?>ȗBؗ.1Yȗސi)&}yRgC:χ)j~,%U_bчUHrDK& E~\y_艼n\N!a3r ˗Ej: i[: \)Dz -q |7,k(fr`>L`ξ糽ΤHM*q*}"t\.TTF3(dk8WG 6Fؓ$T43ܱS"GXw0UJWTtE]t6a>ѻ8Wjgr I_+f/7qhבY/%Wh|&3Dpׯ2p|W48qȱTq#_7ܱ@+ lшƆqBfZX݈$ RGP: +L].^-"U+KY/fsjD|0{P1C!`-/ͤ0{ۍwm g-rZ##.G+սo4Q֌:fcSL7}nFQ5iଏxqBQ&AWY_+7hoc 2Ob {6PUvj^@D}ӀgvK7C71 F JaTMGּreEcYlG0)ʎl x[γ0IR-$JxZ2?O cΘ N!M6* ʶb qs_x*Tuw1Zӂ~/)5) ʺʁUԘ#Ja~NWL~Ŝ結Z_iEKZwh,w%gy=M+A@5@lٷYwb߄pD Qgt-ӆ |?fh_+-(|A0T>:n>ҙ N h>Ç3txIWSf I_m漒z'=Mm&eۦ%ClK4]cP(2ǓIefJ#9hyWDuþ/%j0 k= p%KOWʒ@wSέ&}^gv6oB0KF (^ q|maA'7%ΊPJ+XA׵]iXK(rϘ8j1 " x "MLU\]tj FNNh)׌p3SfdgW)xǺwdѨ=Bp4ueR{Sl" t27_{q=~BJdҿyfa Jb$ 7=5o 284 uE949@"E}RD9ʳ_gytG3zj55@0jS(zc|>NƖŗ6/hX/JFS|UsTSt#(;1ҽGaVbP}&Q{i/}\K*)ţqѝk2lA* 9Dk!Ft!=o/PuM<VcF9*K,1CX8:<)3)Բ}Ι!Öɶפ}HmS/ĭ ;` B<8PCYZ=bUtT&2)TaƗoٍ 'p:𻕮VNTv$2Xl{OkR7N2JG%'Zx@\&$ *|Yա5GfRҚ,pwz ǂ# Y:%M:YnN&j.,;0x,! r.o.ѡt7AB͖RhRYxfY/}`h B 6&,Tñ4Eל%ncNMۮMPJȍ)e71aC=qLsI>W)SEP#N2;SE'b&eJU۲f3ā-1ҏϿiTiia٨zwY }Hfey# aD꺭1S1?Sy#GM Wł)ePY#*cޚ w.Cށݲ9aF_\y>Rj(1I'i&z^n Kx(s2Թ-S䊓@,S͓B|#"5z@`|4:g"qƱϬa4Anm!H0ҡ8JءEZyc̭3[\((;"""̳Ls\nI̭a 7w%WK27PMe :n j w۽Ja; m"u4kiŃHwfx77؇R.Ν&#F uI08tR.p: -UQQ_M毊~$D+x {01q!у<v2]L3oAb5foEZVMOQ}ĉ)DjLB)\:7_l;qGPjpviH'z'/}' 2@_ iF -^]0z1ДjN\e4OH-휹ҟ#Lx"yq:L膩I ăC2t;F%G^N5zz3DFYdZ4)M:;0͏X&f 3>t;MT6s%^JY4x25tN {D "q} Je_ThX-ƇRo`T.(vq\,iUq-G 3 hMG%㪸d<| 1ldU%,KY$ߎ:#GGpqu+,eZ75bTc/Ac$ B+p>GOoe2,%l_yO>) X?sH۝g5;яt IIUB-ګ?= ML,Zes 2H Gg_άxИhܷel/0PY\8lۄhيu_fl~SZX[* )//ݘ[[XvO^;b-p/44JIkV^xj>-Rgb,gtw ]2r]CJ&57O|zt~CѫN7=Gvȴ4Tb!cR`@YD)1 S$υW3v p®_ . j11[Pb54ԑtEsoֆAVq$2+#T|+q& ۀ0u->WЪCud[N j~KP|z!9poH}E "4OA?JOv#kT,W*#PL="vu#7 X~d+$r``@eAD(`|Rܜܖ$ 3;XfR@߭A$+y@'uNG0x{)x P@Y;캁 uu"` @MO8m]8? yD7v_h X*[5(v\~5rj1EmS_`}YlkQ3e{!OCJB/]،u^dSOǶprȑ~z[:q}E_K EP` 4pgIf9Zd5T| .LgWEۻ-N2MԊB6N7*=h׮W&E<3CeeNP~,.SyygSarpr8~p,Z;գP=GbX"暙1/ Cݴ7HBk>j]EeR=Ȅ׳PtO-+ _0ͅQDugZ2e @{GAnj%-s)n9ɑ 5 u ."(!s7NUPV^xpY (ك\w%pKE;YkݷZǧmfh>5E1[s`w\X͔@BkW$? dWR #lC|v.-aqd@*!F2nN/:]zy d;[%nõ -m]/mfٿ\Sx؂,ah) #)zu_ԺqQVm| ^onz0%!}L4vY#' .|;PU`/3\J0UIvTX~HD f"&O|`mJBzdN< _?Pc)H"pt;_ dUظ|@jgRۆxCy\S|kBC&<^< Wc, _\n UEǴ+Պ7lRĿ n3cL4hיٽ"deiGPi5q_c`DI&:x)"0[iN Tu`H\Rd8GYJlH߇z{w#ex* 2EiD@+d8ߺT'hZ^`%4KV/rouIW<2e@OLp7ż[MQ3]=BH9?7 ;j@T|e&D׊&B iǺw""""L[l"@ˣj^Eqrf@v ~ ,zm^O%z_o Kp{$yPƌƱ]\I97L+ɽ- CҌf=i&]:TW{-@pH\iܤRXG8&S(wU=ܚŖiHy_ OQ0ӚƎ6%wHY_\\4 7L_xcw7_ pDpl>;M׿xpSU,hF$n φ*tpWs$w.qk=t@C{4!{=ˇ^B@O$j,x96&k\)]2>-y.# 1D :9 ^|dÿ  {c|g&qf[,r~JvzϚGԒ,mI-N"t,S @5.PtY9 Gzd}*ykZʒ`vn_/{r\VX\48ϳcmҔ}+\Y 8Yw18ĭG*F8\~YfiSOEձ@$ÇퟷHi!Ֆ\^<җVb+P? FltӤbi|F(Y-v-!e.aagR*KvHQ|Vy7$UoF=ea]rH Hx[\>!X2R'8W0~1gGsa[4` 85o;1MFH[D:;w7_Zk 0aTOʹ͵a`3 9yBڢSX<-KTEK>@th㼵/%ڷ,q̾f?d &E~*H QmR4oC?Ԇ=RX>s BY:xwbh +;I0*'SeHi[~%1?x%C1r4%+EcX9XoS6وG-V~0P$4_Ljt6MHCخ,GރZ6 á}AF$4<=ԢK,ڕx&ҍaRCS%*aͳmZp2۴k: 'G38ժ6rW|tq,rk-1&M`X8,C(KCY}G8C̝(V=Btl)Wϛ8/,.vڶ:!Z%,ESO)$fFXuߤmA%ɪûÓTMr`9;txH')5p FzdE AO@yJSiQ10C!6xkxHm/tMp 5ݪa43+Ib90U}x[AvyXBAӍ" 7z%?.Si ~AFd2[e%s8iB'X]YOW" RIV`#QNW@eVK[2X9k}t:ywl'/[Ȃ|<vGK#!^D8E b< ˿(ðFz *μK#`a;L:E˵ LdX3-cC;+XE |h+{Ƣ@@ JȣjGMC. Oz}Wp kzmwAhOF1է0(!LM>*r_wnW7!&{q?n(><@^a=.Lj Cz;M?\%"~ &ks@Zp)X$j $ AU3ѻ;4 @4bZZ\aQX('T ' 7܆k.'V8ځ'r"ޤpk5qdX)]FqM4xI92(ejƠV>)ӭT*$\%+H}otIXj. 3 bdq-Aݶ5ۻcĆ W"4,^ZϴC;a6 Hy{\)9'hRXxG_К`- pnhϲOyf-%gC rCl2Z=L@eNgwz_cEFP9C׊.1M'Sd*7S+^+ܠLSuAQX0,k Czm򓏆6^;,:(Y>rW!GUYa,f-Yk[ago1'bkwxH D̲{}}758zS82}"2 C1 .ZbS(uѷD5uXb5)x4^S0=Hq{Lb Tv.*\7j>:E: ?Fw.T"ѻvw Z%"RT}& j B bw[p;J.o-7^@_5aq/ܕ7Oc,cpͯevGf^?mޮz ׺hPT=lh-߉<Yb:=O.aGkjU-.4,{NDBV6`0%?,e(Í>aTkSF%Jgf2Lӻ )sOmܼ rg`DƢN9%Gxt;a1!A XUAg]3)2Rڔp=ֺź*efoHwbnof}jm.;9$ua/2(ʉ>K!"zk|˕ضl%ΰ=t9 |8'{6e3OaY7+s7葕:{T6v"ͽidnc߶ڼ@GSrLG$"Ry~<lQ2/בMn3u8UlCL}̏ZC:sBN0 %_KHȋ:dEW` xIYW>R(IH`FSDi&/}ue\虧)6lQA%)c.}Cd<+s"WRGdxAcŽMȄ!oFnFC~ʹx$iJJ*z/Tfmϔ8K{@SQmt'+xA[dE;Wp*m[]`wҲ. /| j f^ I=ۮ0E?%j::՟"ԦQ 9iB62 sۚdO>vŖa*FOِ< #AQ#F"Cw T&]Ŀ`zй>̍nP-9Ij侥Ae7ә ?a'-?d ᭤MϸSH\n`w}<^'-Xo 0G|9]WpWJʍ쪭/_ x`7J]^ A[ti1YZq6r]^5q 7X -#Q}Vԇ?O +bD`Ȫ؟}Ih f_A6 \Gm}ڌT9ޣfXh*NĢ^P%с&6ʚw*PCL"c4.:m"{2*+WN\LIóqQ7 v7V56/:Yx9twA 2mYx\* Gh#g*}:[E\-NhCE`|cݵM b' ry6!-\t&foޫ!:e59tHJI-Ѫ6j˛8^n8EPyK_2GhdL4bLR\K[c<"!otÐ.&CrekB }\ ziѵB q7*@Q"R:VK`Ʒ9@(^*XGԿcmEA?N1 PttT|wZBg%!.jhfyRSs .;D[wA<~G:c4o#I!.{SotKڠ<~9A_Bh1djh,cxpF/]\g =Q9/b;3. )Shjd\%~!HMo1_{_ē_MٜީNVq 7yR8D*8pşw8Xjz# ׁWN#Wz ^ACk43"Zn)A^^7Dfcu,.KH0cF^4a&:u +j iȴK=V}e|X575_D^WȶvA NgI(Yw'^d0fآ?'p0# o ?<&@ 8XJaAeܿeŒ7á_Rt7!&|kgb߯խ揶bXꍆF7{0^0,+I\*^GCE4KO]<仏̭Y,cQm .;He%U,hYd"s ..brSfG@Y 1H%:WIg=`hG[8%SGZj6>-370nBJOucI 5 4E1Xz _ oTDppm<վDađ k7\7; g2|FR\od~gVIZx+m!Äha;VT Fɸ[ckndLt)ړe*CR0e){&;yXf$m >uSHV˗ŢM;Qv<33qT"zZ7-7vSRC59T$/~o02ckUpj_gN)9ROUQipC5n滙YVTɟa8%gt$&w+ęʦA;Td 'NӸblIc u2D`WXI݇#h'?b`mMa ʦS?Qn =6" ė?pA#L2QFÓ4@jRy6W_΍'\?^ Oh7&5 V T ƤYQ$+It"X&*F k$D7o$ ^S$2K?!cG@PPAlTA,fz,IPѿ {6pQ<#.1|!{R*dg9-6Y(@+.FX=gxgeLr)47}we[bhD QGfl̷WQɑ  BtRG/?ۑ@5}siMV%8Ļv M [\MЄbeݤЪ.yH)]wog߲='*'k<߸٤XN%E xiukc;*=GZ1hf(}MC9ibg^O|x!`P\ҢT(rHfȆF+0Q8^!~eCki\kr0'SѸQ \@J*jb$(LyjΪ#nG&wᒯ<./-xIώ;4~M5[E{œO?HV xGrLbG8QrhK:R >P& V|OD}3H@smKr~spoճahIVx퐢NNSRw :| )߽fhTB֞<.ۄ _utO?d4j$7DX> ;}^?n2\? jד7[i^9־Jxq״f|cR*ql ᡘ3y)`i7­sFLdiHQ ^1P[)/͑iӻseȒg=r5N'~$Cl'm?_PkTDɥP(o0nvjd 8̰54׼ gtb؇m43|Ä}tFAУǺqڍWx}~J7}b菜 JⳆvM ,)ѡqu'[`]$>ˮ iQ/x :tSè.L;Jʾ:%SŻa#9N:.̙[EC&wpuusvfv2wRId9_jJΨq<ᓹIkDf/fz)#W\_<>h=9dq2ƈskCuE61֡EMhê(HHgH5" *Gk)ox83aCyn8#23oKq3↊Qfh^2ÙezOK%!'`2lWf,:"xA9@>{3$_oϝ-V&IA-GpA {kA)N<׬cҀ{<z6%z%$D<IM4(8H.X,B̸j;[Zˉa ֵ@u=|ĺ`369wCmR3r~e"Sb3ZК~Jc%W*l ?]SUl!Ł| ;O%fZ!vr&CxIOmC,2'$-Y,O+= Nƻ2L,S_0 # B/_ܵ9CP$. $l? 6)|i+pOgXzEX<׿D;lHyuj\QMJKOUmʉ[utZ奂 B($O>!^V!;٨ˮgD1]\frPe7k6nT !y]q4i.+u/xQHg;WP=7 C Bpn~]߂7t9X3G? Rɢ ݦ4axq\`42B#iˢeA&".QOT|)>X™~rA}V|UStwj.FX9 O`yp(|f%w@^gs\Jrab~sŬk Xy*k[ |N4e}:CPwb~}[5RiY/Tk즠OkfizBa2fQRnIrs)O$\sKQ N4yS$]w(=7ppbb9i1hQŚ)`xT֦j'?eu#F4֫_e[:{yf.62=%n+æQ#J O@-S7d)wY6>lJęSvg$ O]ϧɇh8/sfWPWUu8whܨR2`,M7c7C~ś΅*cD#3;7a9&!D&/G\@,W(r^JfIyR*pe|V\4HDZ11.Oo}[4<"ܷ$h?CIJ9W `cM$%PTbF(nKf5"=(JkmSpZфdh/c)pP{][!͙[}0kˑ(g7#\ Dr1/ 1أp-hm)P 8ùSoQjh3GA$o/c8\$YN^{yto֦ ݊[9)yd D6 K= 9QL1@2J-nj|f0ki5RK#fVG$<ŬA s7)mvD8zZK}RϬQv;2u,c2B m&/&$x&`;oB~+u'li$|'6̫;)2[RB>8 y߀;yAn"oqAWQx #}%ϦȢ-qս5,M9@k|;L 1u&+ۓRѥ 8R4jzdůHy[ yC"0жsb)v q]hZjsV>dc=G35u_@tt$`eJL$V(rJ.ϙ`}CL "~(KNPn@n1Qu$.w< ]MWE53~utGH!8"Oq9 #g,&)cX€QM CD"3<ﷸG'>,γ F WCOh#c`[ŭH1Y}P>Pi)l.Q̴L :|}߉4H4}^r"+ˁ_gWmhSnLj0e qhkH>H<:3 ʐH,6(]'2:d[>@Jg%qPp l޺ABZ'|՚}/Jؗ'zlM9 I{4>An:QߡCpJ)AO% ΔA KA ܓP!}sWű4Eޢݏ@ǔ+B ]V(tȱ0crG&KL>՘C=׎w< H) kЅ8dGP$S-I (ևT@M`M# ;÷0@GǪoȏ+Z"OoKup75 ċ(qyfK"cR7Smw;gUmyj<񂉳Dμd' bNWFIIQ,`,r, P)1"HmēB"7^xmϼ^.4~2w=Mb"4F|3FW3[¹'(Ǒc:oj2iH:US& 0W 7I&S`d ,e'B-W+]NmΛ8zt{TGHN@@ljc K˩;ׂ(g CK}vD\Bi Dv/ بȯ0"6e+F'lߌw;nz n, ++(yO;*Sv> 8zm3jyalx'=n#&mf `"^xI]D Hs, +31G0ƀ頩'9qN|آ-i~t|T9AT!C0=DLjf䔎:MT6]Gף &/YhmU #DhzxxT^zquҴ0>6<|ssj7 LI}x4i F(l-d\OzGcQ[.g-(/PU ́Xx+h;hswrgʈ YN=^~N]WpZM@ 8̾U6#6㡻=Ӻ~@"蝝;;U#|*1;dUN=6sYhLA2+6㈊}NwӠ+hDUAoAZo9> ktm[u"UWnɘ$AH7'M o;b0٭t #=)N{Gʧm;wZ;raeybDw-fsfYrt!֘;nl.gE:3趶L$dw*T}i 7B9vGRg0M6UYA>- ~׷P3/;6U=‘F8^B=.zt\"t)b֩&㕌,Y,6ôHo Ue?i?Ya+pBz*2w$W#lSؤnaI+UT:yUWDHÞG;[Mg!|$2J𺭄J8n7K~h=7% ŗx; ]ʾmXT/(C1(0T,9ĸ>|xphʭ3ɢ n8ViD]H f+g#2F㣰ޒ f|MlANڧ3bIs= 704*k$xj. x|Ã$/ 8.DA 饘-wU>S#h$qK7Z)C;2lGb8C-B*.jx bsgrhÞ2B&|!UMNFF,ՕG!>mIeԆ b=|hȾ`<ݙ2VtxƒY'? DS?`c\ʚּ[V\k$  wt"x`TwW(p~=%v_87~7jM}=Eڧug6볪f t,Щ*I8N9pnaB+k)* wYԬ-[Wԍk4qalگstJ]Sy~.#VKv(Lɪ $p,rm$$H5w N!NE`3xڟ;ӹG-$ffra_@vxѝ7%xom+ċ7J/Z\ZIpmMLMcջ(֔ ފʹ*nsbzO,5DN35Ty#kS?WgV5ƃĽ_Pw͐-)PUK`[O$t$X,ڬ{eY~'%Umq]t.J\{tYAƍ͜[>CڈuUY4ռrZz(s9Dc,zfSṼ^o=Th*/T<1'ꮌ%9* j҈4h VLqd(౸a킜8#=wJgjqScXyŹen#YZ ʺΝ9-& A݇?qk5:uDq;%tl| oiSDLllP'QHk׵?6EÎ&/0>ksELKF$0&<l$39i1ЀVL$vPW oZgQloa< *Y0~ѭ 6Šw LNڥx2 f)T*.hS"'Eopce>v׿ݹ y ,zwؼ[M=G3E6AF%,aİXJC H6,PЧ'ekRO(y+)_̧*E[@<15ϙfRTۭ*`BrJ:)!>S n#`c-/BM áqwdZa1AFThxbƑU`dCHdƨ_c4<+ =bymvO RXs cԮ̒S,:{'?)o)rZzt( ~azC~D@26(WXs퇙q>]1^Ҵ2Zb}ÀA ߏcqׇ͛?O ('=hw rSQ(^+ki!#'UX 6hLQ6Q.qJ |s2t7vgNJA?qlK @<͍#"oKT1,=Jm~?6 kdpX@씎|fexa>(\M4j.8s#,aW΋ `/!n5}fEڡ] LѼyrуO 0+;|j7aОN@A (ij7vrJVvѩoD=;4(,bx[F? W Z πKBlD Uh?gJOԖ5Od]2JPՈBn]`~%9$r 1 v?Vbv%1~[l @uR"?..Zw55>d_  ꉏ5p7Uw< 8*",F q$#{Y?TR%PF'y+S:-I`SA^KiN<]+g)A-7 7,.oovwΩḶ&t"ѲPpJ6Ыr,okzjj z3Tq﹃5o9c`#-SBF_IՅݔvFY [Bc^W$ C /VApvˡ(>^gL\Ac+}mAʶq #>NH:rz Rq8j+'Y"4D9?ЅdPьp\B_ ʙe C@#p)K+l=r·F>UVR-=El4Y,8 PTYG:_VE5fa2 `+[g,q%^ y{>B T>`hUn>K\LHL%m͙ފs{K[獳TӓŤNi}.٠r5.ǃL a<&] 4 W v|c!,Tr lYƧsu扑[Ow=v\WmN#|ElJ,K9'|Ǻ:0z. gaf M2S4Aђ~qO&  u`Ql%bEenjј3ÑlNT{v ɲ$"A/B"W<4|:w7N;uCÐMG|{meb n'&u'5~7h~FGQJIr!\%vx:[Y#ۀQe!O؆,(_X{&'3'> !yZiq1LHHx*H/%I<0WՁUe]Mp~k~KZD<ΈTTMGp>K֏YUQHR5p-]>U:zk=5~ʝĀ<^}"qvʿrOXp. Z~+еyuPi;4m8;53[%TeܓŁMjOm{/swYɔ%:pA~5omd@Z ʲu-Q'` $7S w Vs?'JXx ^2=L̪'ϛjogC' gMqUxѱ&:~qޒWەƀco˲eRASV{ڂ-M >Ru9?snx Zwiu$~:E_(jpҪ:5ìh5dr w1\o,ɎEwp#izmd ʷ88(O ܊0gΰ Au䧟bo VƔ:(n$OD+B!1xk^: t/0/W*& o.^-eGfA UmDnWz럕f ?7Rxڈ&_0ryrN_&M֒ڇp4Չb_2p99M*¦0B\Up[W*p5\Ǟ*@`/9ןH7Ǜ߱ڶp )yh)BW\ yuJb?>ڶM'`=JgZ(q!W#n'k'}B )3S,Qu&^61Oiamq--'3!:Źe Yw@̱fM5FiWЃJ<;C@ə/:xdBCS~S1CahN6&Qe4/VlX2qhU?XTxW@s/L8ceoi~wM'Y.ƾMn̚8{Cl* П | ;)N D6 ƒ}Rw͙"Չ|<x϶D]AόN*%p#`a@S,=t0΢gցxض|i׆ kKoĊ +iI0[pThιtmܷB,wrUykk[d fɉO5@ M>JOIS"bK-nm0"l-%DPyCIc>-^>:w71d,Tm%߀dųߕg0]~)Z`SX4 C%?:r N9VLYv7}r`Cs/ yJQUZ|ȇ07lL^a9z_(A[\~+'?tOU(Wj2r#>:FnŖ 䓄U""a }h7J!xO]3M`.F\Fd{Uޭxaunί |ش>O= 2 y(D1ehF{V:~p)>:f/w!j+M"k(> q ;RXgWDŽ_ `ߙ7P 8ߛSO"Ԭx _ֶЅ7yPAN85Ly_Z3yL3FI2U'?e4ض#k?&zcE5N iP]-l  &nd=U YCezjzq^C ^<j2|T7M, "U0 i ߎ9o$e~]Of5E_HG=?5PJ rM{ąkNFDe: ^W!ip.1Lo<קP/D\fL5=u%P 1K(rý).rwȖ$Xo,=4b—U/BOjd-tY{1EANbw6nm(v$Aj$q&3Z$NkfZ>xv1Ο]TmdZuWI#zPEkdzl6&z櫟m;LX7yBOQb ۈЩʥ}G,m^j =V+:t*ZXX6dEt?B9 ٟkXC0(Whe@T7gke_t=#LKTM3F%op8zS~Y=R-L2=1k$X4jvFJ&jqm,Nlo?hTS^XOxm:5rJ-ړ\s`dWCϜ^/aJ?|s\}1jGԚ*mMƁ!9sIwCZv2O ;o4s1Jqù}D7s|u;#)vHu,أ콞Ѩ|>VV]ꍤ.Z郦Zc /}ǭoPqNs M-QIyUx,X>|Sa_ -q#.'8hv?6Ip"l-=@557IOq>{c#&HJk+7F)Og>6MgI.3Hj!~ ?\ܻ6Eul3D;&؂4gkm$p"l`BjyɊĢskZB(v/p!5m]h<\] a bs[Z3)}9Yi|+#RwӚ7 Wu&0Sd-fyw8:Hڔ% 6c5gjhX -?=0YSBZKbN {leRf-w~+vmd%%UҤawHJ1u$.KĤL'eST̀ݼ1B96&q7z\d6ʚ]SF^(bq\͢T "Ժ"h|$ w~qYJPD܊dKmS# =A/O'B ה!['9(^bëx-زCHKʗP\mfWR GӹN%zc0|h. gaYH"jA(̃XS k5XN59n'>C:]*l"\jιVVԢ_ Fuem{])Y}/@zjgULU?SmK5;>~ᠵ2)TIج.@Qܾ\e|r\`lL{MGVa964LrdvG*v 6/;۵!uyg霮]=5-:n$oX^QI*1<Қ.jEGFs5Z%1v{CMa~)7(z~.NK`NV]7|ckA0:ՏZq#Q,ݽ &b2B l~l)[1IŤ]q. k ՟Y<7Qce)i6J ̬YrE k- y?89ɚ>M @ OhKl**-N?!TM >؜Z|^'G*W7(B~(<ڥ/’_ܐTYϠyxeNX@AW;JWt@*Kt:$,ro"5.5E(퀄O)ղANsT#TEuFVjQz#`@(K\C qAڙpCu&Xٿkc2h,V{z3\yttr3}=֬giRՇ0MEoFoøg%;~/h ^0EMjbi`s{ey{v$;#Lf}b"j9IVuIPNQsqk3/y5I@hoK6I!3HMhH|]RsQBYm䧟P\Smofm8%'[k&;]&ѓ2n^p#_Rvf}RCH]; b㨰{~Btr,'UD8nٽ JG\'K9?%,7KKT =FgI.fXSK+Tg3U?=֣ij*2>FT$dnGȁ#luhTcx?U'kgj*ch C-ID}/U*a6Q.jĔ[?uUz婧5 lS DK--•s9e0$t mrk*KسxvlɦZw7ǬPoa/8*!} ^$ Ak&>v35O Y@)}"h;('adJme{;(N|՝˓GfG(gqlw- uVXn{v75KaԶ>%^ tԞ=+h֛)5]zbR gKnC[0ܿ} :ID8 4D0\ ɥKaN ;wrIMzӕ0phWv2]zaBM`w~F\ᕟ[m-D(Wt63`y aٹqNmxoi4-P C8Q_eMU0pzOs vdccRxZ,/4QD4 FqH$_@-M)UC%ɩ݇ "(5>[ ~){r"f!A,Ŷyd9Okf[SF}Gs]Hjp6!&0-R!yNm/Ot  PvR,W{Y^SaeXoZ?<+ZIbR(NǓ3|E#Ӣݴ}I%Oi'W{ߚGdg}u8k%0fK,2^lmEձvidɨKŶIsh6B:ݞ׭+P,+RCIlyഈ1` wWg  :H, E~[i:ξke(LXht*(=@>)O`36=ۊJ^ AJʮKX\?.22޾ U@Ia"D|@B_Rҧk^1zT6UUw~ frB *SDٕe͔$t/,%*qXSR*׹ lΟ{Y;8h_jPdn$ B .=5k$uE}yg;3>l[omny*jD2:-Z&/(e(e%0SoT 4 ,-th[r('[bhJ@iI1=Ak6`EYR2MrYq/.,;~eF#L7 #**ޛy}2SԫF4mOX rQwqCtTo&PTWSmJjsk{F>-ޤld\m 1Hà+$LmJ WAP)%iCMbM\ćϜ,wK&wLݕ+ ،;NŖR*C>7K#>7^;hN9mlniE?ρ"07SUF2~;)ڤ{{\?q9XvX:2VVNMaFG]n%Y UyjIa3mm}F̝p*sJ6c bۄQh]2$UW $ )nU9 jї'x/DFl:J"jIn9]wVdٖ%ߟM7w$Hm5ʜh5 l[3M:X‚ JQj O82ݪ ^'CUz_'>\zq4ʛ-R=*O聿f,"%OJV%`L[ KNOGn#0 H#F<\ & s@ev ͊{QKg"": 7KW94!A?&2<"*4QN0c{*pԑ {⿷Xaݶ֜$dk &nj!X.^e@szԴ{2$ԡ(bl1- [=Xi’qUq±cFR|M_7:bX9wI5oi}+BU_cg$;!yww='&slO?|"w۔&29s;ŝFS0KɇxޣPvp#!~SXauq@sL>$c(5tuH;ʔw5;SŢ8BOe_ͪg$}ӰyRHd:.ѰhhMnk怷yjP1\=I=G{@}P:=\/"txUn>:6kd{.*rW(`{hi>s ;Rݹ.Khb`co,] b"zB&4b'*{0 ZVJ[[) VM⫒>aġox]ŰQ Rnw3+-$UB^$7kPAT> 勘z/ޏbyq2! 3~ljK[iۥdQV? {:B Iҏ*WbvT~%=Sb8x&qPm9rM7[\d/XQh~֜*X} kb(^SԵÝձXVTl8j41ɣ6A3sjjeX±c+\:$].Ǹm51vl'ԣ]}^F*dr= ^(%ė:~'b|%plq3Х_ =,$ $Rȝ0gJ$"'t@ }s&m g+@ e5_[Q)U5.RQj5р*}NXVd:uտ#dj2^(SVjGP":sŪ)WGiԱEm򇋟"iU , F_ 'SV*n稁G6xuuB Hq`,aIK#jfWs4=9t p6Sfh,nvxl%H3R, ><*Q&CI-*kH@4oW htōfWy.cGpeA,fwhaXU6Qm]=Ż1W.n t,]AmZB߻f_l:p ^.6i8mAu5"R9wa7=^頜-҂h5Ahzl; Q(5řDzNQGqWx.C4zǂI'}!s0UHѰZ@a$H.po`rO[I?]>h5kC9`e*GW&11t|gD[QhV*K>2 ]8ogy/M (tQɿtezs@\bz#_lNA[tKu=M_#A:TX!Ļ2AѠ+53֙O\df|&#va<8~> v dYOj DZ%}Q,~0;Hwisw̃$c[f&TFoT\oQ+s448Yp0L;Ugt}cdLPqO<'l-24FħjiC܄r<<>FgazJ:ECKӪfz+?ިu?)̝p3)|.`2g; )7ʵ9KBB%Ue ȍAee^؆zثu(CQD}"N(h$|=7R}笍)ԉّZ!}+ D,Qc0.EnxضFM49I1~ H KrrxE',JFMHJ׿Nh! ݹOt $'m.m~rjBF߯.MJ`9g -ENqflSMK sQhg` k a=9P 5Av6K4枪2j@w須wԳ!;1ƒ^2ڨiˋsз5giy'tci4y"!qF?))Vƴ!Eaс[eukR*4?-B Rl"~Y;3os;UUASC4f82Za rSSO(]/ya; PD.WlVͤB!J#\`ON@{Gz*Rz|֑ɺq.Ew;*T`cp,Ӏhm(O<(]{EK $䝰ERUeb yT ݤ;ȑ#v*pA$u9[F4>Ju $2Ti][撸Ɠ)-XX"uO]_dhgg74Bն̚B#}[vm_<(YQ͍{xsXC1v>hNR'|*4rMo2tdMk|]VI|W^gA|ϊz+^VMQWc_4K2n|<@G ?dnY U`]-c;]PHoӾ?[Y1kfϰ:y4>(d[xt Q?eIDVq:nxBuT(JlEaU '-^+3sO+zz. Ԛ"{ʌI=>pC;g%yVr,e-)[ x=ǎF]G$LD}F#"iׯM>8ƨ%Ѯa0&zCuD_o]ǀEu:"^V7JKNixIGd݀/rUQWvߦ#JU(}IQP<$ygn.fí\Y7<9> 1rk樋V#@Dy1t/h"`N!̭v6[x7Rli$xSGJn!N(DܶP"5mYjʿMpOb5Md:QZML`sUH -bj`Hh}&en*qGrz X Ϫ$qV1MH/Pdn6( a­|(BMryTF+8jnp.hZ]m_|8kJ=L @ۥCsN{jX*ۄ].E ;pKu15C7{;im=ۊ_CfVWQz,ɽJO=QPȗWKQ>[eJӂAc ga BPSC R3LEI(2outTXrg0qrP ©^BؚC}7֡_E_ШT9ٯk+vG0-X`˧n<ĵD !M5$Dm lj0 .g9Օ)L;GR ”=hOBZ9 ogy5 zKx+j؟)NDNۉy*b\W}:&VD1.QL hhi2#Pj~/LxV.;jI2m#}X~(. }ͥ v[n,=trpaJkH'UTiP k@|wd['xŮyWz$[$۰ R9˓oUa֭|8`v`5:IiyCWRZ4w5_hx᪬VSXW᪵S0}^kG_}En&lG/E=ֿ-rPDVku$֒J #hp)UGtyƮ\5LD-kbxw %!8JeaOg7Nyq>#P#\GU Dw0xny/k"9`k57&Ue⯋f"@4Ul {݉ útWjv:=@-[<[mkh^ A'cCk=ʳb.w/T#B;m8pYz;%C\\@y [,qU%?{b8[@6d_ϙN#(]@>(~T7v8gdH(V GufX2Z*L}Tgd:.XN ʟ޹l3%4+`6yE{X13 GSY#Jkn/cuMk.L0Z'ՠL@1{n4G^:ƪqy Q[ʻ/,WQv,ǔtť*vA6k;[υF?ΗB`"c1gG Px*H P!@XiUf2RT~uR~iY]:[t <9,#Nh{s$@K T뽼&7Fcr)!i+U &vM7T\6/Viv)6}0LDgAZ)-/+B%Fv )/S,1ߤkwnUQ(P‰d츘֯[U`3vآkMYv>Ρ:?˰r*˸-G2u i* ?^m+7c R;2~L1A)RnJgTCJOaG_ 43ˊF/+y~$ĔL~ rXf ^,0^Z1sITɞ"8@U!5+6 sb0rL{ (%]+~B"کǗAX4 e-F$;oΓt=&$|.ԵQ_i; fGBBz|3[Cpw,"y/K\@Jy`iFX@pgB|#౷K<.v@f%C/c>*Jx?_Ozymxz :g,\&`nSǂ> 4 n}DPWg~m{;X"v1//t5ENzAf\?? xv) 7.VP">%wWZ$9ntR54K _Va5 ޗC7S;Vl]}5ɍa1K/͏t-Gꄚ39  `iÞhgot C`DL%MC( \2qzVV(U~lij{VY=E$5"B- Ӑ _p76wK~$sCEq|q:hnǑ3:Å\{;nJΧ͂TE `7' =ʘ.[A=oK_ O,KsA:pz;Gtt]Ty.7XБ?^CV[N~W'uT_O-_֦u1¥vDo֐y>*2)L wU@1:3ɔRI*fazQ-w4$*L~ug k2Z_4BS_O&$٣ty%3":R~a6sPDՈ6&-^DxYy:NNko ~:aaMcz$!o{f-u~~TM:t6XeNVH:C_}kHe 'b[gs+ЛYK3tP=XҦGGd_o-mKFD>;/j+ `%)/Ͷ)Y 5;1샴8 %,Xg!/tږCQ}nҧ܆F3*%Kˏ'ޒH9J>5CNNtE'FD}eW[ۓ.S⸲{q#/=ӧp筡Wj}5TdP3 L -JrP#`cQK ]AwUpA|ٙ=7)$;{8Dwa8LF7VPT0ϺL9$yFk5D>=@Ǜʯrˁ]*|4kbՙ#/I@cs\Wr}[hɥL=ԍƢhn[qYg&ZD-G=#Ĥwg%"s=d!1oW/?rMCU(?d2ԭ]nEF1.^bbCJԋ`eۚ)ިlYEqT`qR@3]VƞZcr^Ƹx]&r'ӱ.?HQ" mܶFx .VjAg`N%͋D85 HP(5$\w`Ӡ4GANO ܸpU-.`ζPZkx)v[6+Dp0XG`dI> BT5`̻ p WŌÇyeTpsגѹ p|]dnmc-gGz9uaDZ/!Ajs I̚˳6h4R!7PGcL9LNJ &X~8^iE[$4<1p&37I[o'iC"Ful5_Avѳ]hΫX0)s[Eۀe՚k4Fix1._T|YAg3 I/>ؤpUū=bvc615[ rOݶ!Бjs&$Lza:.AXl{x3eo eha#֝Z݇'YE`okIYFeXaAjBW0 gj ԈQʛvGQqjcʳ4<>`E廨wla[Y-[NHs֓gm 8ya{H|b:"vRV0"tV}ƙԑ1[o:+Ra62np`fu{kLw,l𙚓7%{u, 7/ne|S*ށ1ع+4w<#1&jn'F.;ʀfH s?+ei6iAӘS(fDBִ̑.VcT)-.yN] ^5Kt)bJ}vN;x։2L 7Y2!}P{>j;cZ_m1# '(q0S N"R-IrVx>`c 'ח?zCʍ:Nxϗ +ۺʉ\m?sd\OV-$~Ҷ IFOAK^Ž%Y! <=,Vbj`O>F)4R%摨LѢNO SAl Tgאo-;v~~6*q1 z)$v%o@O?)Ag/,ΐb |iFSo0[z|viyE=V3T۫fW["08tgPEYEN8[i jLN{ d(R#._A0=1"e7.K< Pn[l7%t/v90~E)ȏy3摡yC@TFd5"~z6*R΍$R䕸.tYD?$QH@R~"!OPR5\P 5*31 ,TLP}dSB@I/hy4 8=Gu HעCacE6hW8H ^ڐUI\[608sF_L!xpv+G7J'zG)s|#8cnCID j,S;+f6"pzqW`m-=MUM 1H z] a&{[b^ÙvywSDMuBB fھ6h> r[I`uzF!潙 y,bfGjr:[ՆBn3zH+oAvP,,^8=_f0l~s2QO\KfU{  vwp4/p(".veDC<"jv[T}G * #OCT}]byQR_?xl0#Mкt: st=A)/F7<ש^NN~@%%^$w>5t9uԵ<>&+J'C6:x#Qr&  Ң7)ݾOHi< ~)!-Rbl|\[!|@as\7ZB 1HJqemj\SgHֱ3ιKiAa| I '(052u#"ML`0>f7VDtC?VF96Q(z5P9j6DqD1Ѹ#2[nuc^N'FDݝmnnm73P*+ Ӟ2 r1n(\Wʺ_25fVzpCŻo9<Ҝp8|Tz#R.*F4A2JR?FbAf}B iahBzEQh_6Ca۹7Cr7on$݁Q1]I[rr QxB:E,us^K̞%'(J@r!$̨ZC<'˛ ("ec:$6C2ʋ_tf,lta9%ԝB8 T^Nhg'aFQ!DzgWR)f`"6駔 /n E466^ a]]\9vjI3$C|gi/0hK2#8R)U@HlP'w $c_f_DS=dJ+bzP,! v 0Sw/s:B5:ȝ\¯!5 sL򤤱dIU郱zf˅<+^ab$=B\&!:rz0^nM>Z 1Р#BL:Ҭċsʶ4cN&dͲQN&EwY^1?9:W6!qϻڧ27w;1\S"(s©I^n4qHIVk~~o![J\aE=:a$[`A{ ? S?F ۵i1>پ:M'j:IBs9U=|{7xcgdPP>'ȭao﷍B0T+ H{a^;sK ;/h땫z~ ý`]Ҽ6=IH(>2 bbʢ}(Q/LsU0fa~?eA :&V4)|`eO2ZW.J N@2++`5h$l߮P] 3P{Y҅ef4s8np=F <H#U5`<Xÿ`M:bwɀm?䶠՟&1P$OI^j8FR/2I^- t9%N2h85 Xv{ ~֩a5qZ4 NVNq 9X.ʹלTxk,~H) +%SHUv_A3&HՂIa$MP2TvK^u]^4^cA6dcMi1a"[MKeSoŋ8Jx3T#s+ DL:\}:Ѩ~Mqucdh1LA| ""+wJ {bdo"*! iL<u,5 np-o (6nIkiꆴwÓWקܺ]{jDPtt2+hbY!/ET_| ,nԳFY~d^OEDc '\$wtz;sAwRѽ3NTk2a#~O Kwn@--?%NW|Xon+ԣY*K]7웗g.`fESFzwJw94\3Ľ׫T9\|:}#+Kt޻O[` WH?o".QDp"DxN KsWE sVT._L#WQsEk@.)@˷_RCy%A}v:ՁIne,WJ]nʐ@7oo~V|tIdb)ХYբd0@h~ MkHEfMU%U׀SV vHiiWMd+.lm'/x B$}}эIL%iwv4󆴫,Oe7 >u2Pk ^qJ+ mK'!jKZfJ1Pw xi.)=V"[wšYf" S/-*I^D )zX_T:@꬞B.KKolT723u1\XpFCشv];S3l,Cfxd%:͍wu! ¢2H|jI35m@HfVHZ/v"1ɳ]kl )WI#e3e:'Tcև1ϼ^M 6lX{fvrbrjD絙uN8ma ru0/|ܮmu-y }zէS,rx!Jh/f}fqȕBgc&^Ϩ]WmdːfƀsY@h86tWS)儬OOb7TxVT'8 LIjщ8g{ n+$ChR#egc+[eb^тyM"oܘPJd]"tmD 颁ɬ 5%xFx;&ȫ}!DM-R^%iɣ ' FfvwfץW(%Z^]= cyYow6gl>HPu!ʰ7i2_:6brnVXJ@9 7?ݠN*Y͎"1BcuK 0gkV~@ HF6.JBGwz}y/W.F_o#xpA)k a7? sxZ5H-Sy,k䴆'h怍^CYw]ޔBV) 0d*Mi4E)^d6&mɍɱ@ 5 ~&E*΅-uyY hƾkA2{L|H Z kEB{4j}`t`Bko]pٍΝ~pq9,2ce80 AVc Ra x.FN[?5*>}-8޼SGy|1PH3tAg/g2ʜ a 7sԓC?w *J#]?e Eep$#kC@|X ]>/~Ra =uе14AqiD3S^QCVMJi$Э`(C%Gz<\ niZ1̡I}z0E>hkr݂nkE5-OʲP>v"#;wi( DXΔWRj [.Qd[w#T1QsCXbFӟku#r  h >DlH35yl$x; 3i8tAI͟!D4~I;ɐ `Sȕ^t%It'ӾxlqR?Z cX%.cc4'μu\fJR˿ZqӦ.qN)#M.0#g-&t2{Y=r|rPz7]bzcZ5{^S"/zD<(E|a;hqlI̪h"=IΪccW,|ƞH\쇧*#uxjӞ`";v$u/ևd`YGTsn DXܭ\ч pm1{Lszh}4T~|oE +eUoE $a3pd"qj`+*s]@\}OsPnV14\Ih3͗[H64SR 4j=g zanpjۋ8n-[kn;< ?KtTBo0Hw"1IC{J\ !Yo<JP346C\LE-Ðc ;2;~pZS??RTks8&M)ү}/m_3ܦ$Rq.~ \rb?nfq^{ZA$oD*T +C/i/9$P/6p H)rE41uGdVq8F{*-ʄuDu?lU_U);lL: Sa[紨_˥_ yw8ck#6mO]i^~ ?ĵn?R{Wkz6'(]RR} 4ؾ.78k y+"=g(cЫւRE =M=ʋx;~Isv>HNJ3\$(oH9Pz&k>, _Գ&YQU6B" ïG=xUV }˿Kwح[T;S0G HE[{}OzIZ?ϔ_\PLlqbsLR[?7GwhQ%KrsD"БYU ( fםЮMQFW +G Re&PSD@NԌ BI7/zz8;/6) ^êį^%@CGh'^\У1gK9ÂO!^(/_^`vf8wr#A $Ze~9۸5Y n_W3?qU*](y= W+pU*g'Y̚!^TE{'P( 7uh4pLP׼*ǡoQe%ZpnB8GX1zg5pWG -B4>~2~02d76=qbND!^َ^6h$vfruɛieKĵ!tÑJ7@XdN5$z$zA8PY(6xIKPPXb+C9ej1{.ma$ jxip)UĶk[fO\K6xQ.4tTTM)WeUOy] C1bo[orPb4,Lu`xۃ )tPD*%Q_}Y)Vx83 O UFWdGbS,4%ތE43ڧ/0g0GCpnbYD"1ջiy%v ){.Ϙ3wejnAT L%UH4"."}> [6$#2V;6쾖6Zi`";^S)X8['GBlf7l~d]ݍcnAC?{^ y~/&:trPU~/#s(nNx[fLLmq~Ek'BwIf8B~⭡sR .;p<Xyqu0-6hg/kwx~jꆫc;ygK"wIqdl75/!zI4*68_>Cim-&d(až_ilʩUA,C2fVij(+lV/.zIrgo:~,o5Oƪ;Ş.EކH3_DpH/E BWHtC.IԲV~j['c5>M*SGR SC/diJU xRi.Z]< L ^'HXe=(At$p#kLe# uV[]"1RJ&wc/Rp:CPpx |T_a YJKm;ET݂:-;1ywN lK)UP Q=*o!7"=Zi^ܘ3{)=WXYn|nQ)q>$9b4Ȇ2-H*xlI!?;9L8a.D16QAf᰹_%4'q~)JōxGjA 237ӓRʒ&\,|7Gg !E)r+F.n㰝4j*O F%vf!,Azi\L3wqY4L˧^W%֚(Q㝣*([O?+[iyA _9\g>lzmߘT〫rF8 b1.m#n5mY1H!1=))\1̵1Dx<lxh)2q:zbXC|_2M'!QwF[xsA;v!]!Wdl]ua&fI>y n,B*,q6}zżx>^:i L5ܰZXSv<'J')rnUbZA,"۷*j<+*݇Tz!!RvG]jʼn0>=\6/3Of{^h3Do{W/KM4,e844 @ ܦynMz1~V$./66,cFށ*Q&c qUL3jN:d0!a\;ipv J.Ҵ鞠3x~*tI$&n;}$e&gAxGYh/BlіܸBH 6͙Pٱ=0&N~{wxR|7;nf15N[EzƌjԼ_P^5*q8q^ΎTN5K%)㇊k`Ga Ȁ%[+W7En(/AExf4Y#{m:>J~|/b,ʾM x}0#iE=+΃tPZbIz ߪu3ʸg"Rb THAHeu ʲ&I $s0t:H΄^W ѩ)g CE`,k(]Ih8zzǥ.o}R?XFB|5Z~Q7O{cXG#FjO܍/#u]& D18dSL/fwq-SIoOwG3Y^'MپtUTYdQ͟qtMH}8ud-8@K1cmqZ+JXNV0!|l0)S<肌x\kmЎUmwr>y7)0.󝛕~RמqWV/[)"J(!%-Ȳ-ϵ#q7p7Бp* ݮ4 چ\ ZWn D6xtdDaо~& nBxyѱPMexP*J{1B4^@Ei[91r 4BWg+BsT)unFb'|E(z:Jޘ;}aZWo̺}1jZZPv&N@[8dPUףye P }nsYS&}p*ׅ1U̖T[|WH!&5I欫 $_fZFG.mGo/4%+fE4g@VQp(\t%DOlSPKxS,fH¸zW<)' auK' Ӗ.-RH%,aHz]bLwjK]VG QWOR`'x'Oy {,FnAvH[~{(!IN kK!6%4`Ñ$T31 b_Iw^//4; vDL-su"RAwM/Xld<~Zk@He3nWoRSL$pHuNU4qHtM8/xvY4t +0FFսonTǥ.0_Yvؘ}#k4i疙du*KFYlfĖn$APTC*jdi'a&W񱮞+@}Kj=&=Mݳ(ܣLKy3}+]]W^{>'vv:tՈLT[QhG1_LyڡB9#V߿0hnhPՓW8*M A!"Rt-Ta 1ci늒;# )Gudڷ1k "˻hG +=%n) ϭ۫,5F{`ܱۜT͞R~9**3ۆ21ũa傛rh 'GL+=%5Kڧ~A+l@1`\ǎU/Hr&.xPk2:=XG]/ËX;{\a/*#7ٱoABtr%/]yUU7wS\ ս41?e+u[>Gvg4h&=q߲(3p s[s~d`;)_6P^nj~@M/f!?-ko(dnB_O8.$ᑓ_̄Yء]B0Q7|]&FЃ [Ң3OOcq8i]0fRs 7a+Cv{cAژ&_WםCqvo.F` O#|`I(M .ΖYԣ]Q"11.of 8Be'Nz)4&:|u[~ąQ;p=Ȑ CᒧdܧR/W6y#ֳـS~L@Bt [o2/mLbըaG&:8M:=}Ziz%K؍̹[RL&SI&}ho[d|_CU|fZE{לtZ.,hVbzЊs'5FxG8pADˆ*-wWLtBR7팇pc<ϡ:K\RqP`Pmhl4c&]$8 IW UVA,E6B y k.NЖ.MwwчӮO=w=dr G70OVd CBb}8"YLY޹;]~z^H8WH3)6ʈ0k3J(iqu2%> Ú~5+7y\0<~Oa$r V(s3CJuŧ+3 W! \܋%T:YIx,O.as3s-J{SAʊqA7ľ%m%4řY ajUk[f"VrhAYi֖MS5-ֹig>KC,$ rPD ZOs(^;p9cCNi!:EQuH,W'T6'PF¨ON9 bW IJӲYh^kzS# O@'J&)9۟YөO.bW'9FMֈ@Zv7NBJ_>.4+h2 %kbLcKYbi:j7ǻhgPcmA+O`w_4aM;*n)g).+겫^P%ܑ2whX]Y~mkcDjc79Ƌ!ٍM$yZNԾ=֞6[e%+*QbHQb џ(&@Xg{oBǐIDtei~ORgpDDΓLWyQ TgHy/N1fk,*5e)5 _̊:GKuvYL/ &漹*I!I]Zm 6 6HzZXKM9J[)ǭ$lͮ]nZF*ɹx{/ %J^B7S6y0=a^$i>G1Z`}8ʆ˦y2:m<ȃRgh!jR]F$Nf=\H_Ba臮wu_·/ơt%KԯEQ-b6;1aW11<[~,k:VuڷE&c^QePj mxC+Ǩs׎"G W]11 zs;LV18#aYyu+g? {|][}R M2t( EP{K4oi)e)%`01\]Yz/O/vQY%鍶_9>&f;UG5:pa?9<&˧5sf\ܗN' qV|db=Q1AK맛3l8 GmfXs{hJ^3T0Ixxz6U&_euvy.'\{AB7~8;<4fͩXUd*fΦڀPo d¬@!*';#8DџO1/kɪO2z7{(c\`KlxlКqI5{>dQ]FY(~n[X+֕(0 ow{EY@zEV}6}5'ō !>b[s.J-NI$??V|'hp>/U(fZڛzvZ}ɕЕ뎸)0ol-K+mO \bUgFdw;d%&Fuzp#nDUVNsYygf?Orf`wT3+-pAQ Fe8xPxJ Sm 5kOn=pFFE6j5]mrmKv|"Ι>IG^{oF <~;ZCm2y ||gfC4ИV>;Ѥ Б&!i$E&c:`{)YqiQVUW}z;+&y9I؇G9bjƾ{ſAGuzlgl٩=QGhA95HJze|Np"1R~[9N O$H,SˆN g]b1k LuSqFé-q! >, YI'K9Fn7򊍹<5D_ υEɂܜ9۠fݑ]4\\>^&rZ#o h h9]Iϖ%yHWՋ9DFuZn/Ÿ o xvS.sGOmeH@U$kDWǸnb;ʖnk9Tjέ^zgs ҋe﷪H$u,-A/{ji;݌7/` 6B"ه5q99΁z$>Z؅kӐ5=Kp_^~:$#{+j<ݡy#7iw&56#10 O'?8-_Q%k-b=OGPC;|DX ?,ag뾅*'OZZW/9'gM rfA]Hɇ/* s~m#nbSbXI] B7+Q* H`&N Qȷ$F CͺNjaeqUa+ OsSHE$#ɩkAWQL/vx3v֥fW_\m @ݽ +ŔwCy&Ii9 kNG[A$mkD"bg`yA|Kh_Wm (DxG $%0 ~y; T>1V-31"حy7emgwyx}֩EuU兆眾XojREʴ`_Q8f DYI zoñ|tk/%˩4H /5#?WȨ278s[ -pꔥ ԁ'Hb\accHv-uCv_1nM)~" `%AJdd]5/3/pHkyvjWuA{2_F͛j'‹+\Ҧ(FuꖟM CۢV^55ˏ[Ik:yy%Z)߬c!QB@D /BhӈݣA%()F((Pu3bH0a+{ҏx#'l`To{ r解u= 5 󑓨v;ur]"j4|z]j"z@a3c /]Q. 愇醜7򢕝 YV0ˮ4ρtz#3G#\5B"GA]%FBݷ¸BL1r}Dm&eȓ#pXQ9-u|p29CT8{haTGJ"fz$shdv,-ySlf>a`AmNi;e*us(OT0w⾓bիoB2JIM&h5@Px=@̐x;ټʄÁnQYk,ݹˢҎ=,BM2g4!Q;`K O#2dCoJqzp(43eyIu`CE[R\rhyq0526aYֵu_D\ (+R|8WLOq~9!Cy&Fyέk?z2g$a]B,,hFv'*Đ]c Ԩ? i]| jpP~Vk1 +h;>UܛVj"Khmypt $iS:nz!?GaVE[<0j-B1ur~־$ Fmdxo]OUvFo`=h52Eݕzn:5yϼWtdC%cў{ f hPPcY)cc&Ac^a\Mj}v}:|;mn]ieujJb)AHc(|!0uCi}e+ڀv+`Wc8Mi.q6mIq"({Ӫ|Dy<BuoTT#Y3;$gt_ARvnč*= $/gge\|]+.NM%ň4x/ 9 •tN7 vԁwEp] Zu ' cL(Fdྼ1 O%Y~0=;aqǽP(LebG՗LI#Âޢ*8z (%K̠/ˉFRn#NG| rfһV i?nDj0-"igb #>"9xA{RcuʽY}K[FEF @|%< pQ}Am"80"%.t7/%ɜymL][$ai mx?(snXUjJ@-8&M#Ң}z䜒뷞J reFRn8ɕ6ls<&; γ_OKtKVˤ &ك_ ȄkNi{oPJQ(tl 7C`bz^" '46%X%[!+H):ݫ ])Fj,吶1FCվg deۿQ44ujǑ  I"KQUI6">1]m_=r>-<֪Ln)F;\1B b㞣߈eTZz\J&UĠyj$8]hz&jH';'Ɨ-ښY[PgTN~&7|-aBF0ȧs+OFuz*~BQZBÚ`{ڒ5ߕS*f/}6j;dTGNv 3Qo67m|tznhxS%mYl=*=Qt";F#$_&gr9%|3!X Ǣ 0V;˲Bn6m*!/eMP_Q 0E1Y]^3p-SWWS)($W}e`WʃWYԝ:̣|v5&&o[OsTjɀEF=P-d%)Z p^miJ Bfxؿ*\"!bA.^3Oi9g؊ܕȎpǠ{' nZMCZI(wȹGOKCT%;Ynv"kp0_qv1SnTN|lIXn{[~LH!V~'x uf5[~.PٹzˈG< *DJZd [Ug[.IuDCaѪl&ps_5 ^>ț8d=>'I {mJOm "6w2 n_`9юn! +93;] tGKY@mQQDΩ7k1 J K wߪ(Õl{OS D"^0 ]U/]J1e=ށH N_ n0X^ cxrO*I1f4\w-MFkT.[6>jWM\ -{6LWV.hȞMla91|TqDS'/ D7]( NSK~ ty Щjb?%zQ@'H8^^W]Q sӃ,?k,@G5}-8:Թ;'l?k=|)Ss;)#gU. 5V?Z %E*KQl)QNTI,S%;V:NNE ::{"b扐=j-Q;VLJeν vw+Pu~ShdnX6: *KxPglsOo>A~ )O(jtgR1)j GԊQ5ě`E"Zte .˨Zyc|KMƦ͑h!b=K\\qxE{5c$ ^FV@f{ߠsq*Űr~=We?PD!nr,{7`)qOfQoț>{EħD&=,j]WN=͵稍BC/^~"Mk붪ԁX j­Ҫ 6-U3Nv's *ݿGב]P!74(ۣ97Ѕco㌈9ZdMGesϮd`50}a9:ȑj:fMlu#⤜x4s,9:EE vY5Q[)uB#&W`2D 5w.? -၈ofznD !KЦ'.p\pG>j3c%p[uFv3HNɦC m"`g—*.iP;W8ѴmSuI8{sG#C;{lvWm6kxj՘AÚqI6<}`J4*BTݏzGM{{u,bw*PU:a-#B@(.n8߄oKY12 }QWBn̫(%=~ڵ?-$W$rq&UH>p=J\lȵ 1W6k`D5p&Z~p3ԝJűH;U2p|`*?ZI'ɌD7BS<7H͡/ a_4b'Uye\telLK+~8\nlGN#h"V m"ڦ<>eV)@&ـ,3MU"mx*5ΐ2 {Bl_rQPӀ{ommg\|jYqn?HByg2S˘w〇r_j'{*M| ,20qḊь8~taҿkWr(5V2߼n] pNp(%СŠrΑ]j0h:],j%76pHEr흺@tL1M*ZQvAQ4p`ntbw@R B$⽖>@$a  +1k@:]7TÒ#9R~s=♏GOT;])8.gR Ǵ,bՏ,pA> ?E3`uzwpjKF?}Njc`07ʩnQ?sia2i^Fu-sCKDwN(=zCx N(HGpAyfQt? 83HU}hMiu:=YLX`2/ꠈhT;M# O,6E;Ȱ6BϜĆ<Ɩk\^kAڞ#*OˏsWIˤn\$FK dpq&huP!2l^Q-՛ PaTKHi_ \oB#( 3ݚ3ҶMUHzQOZ4ڬSQʳ9yi{:N;[\bolC:*U-@:KcqÔʘO0fZ0Gs<bXNgPNT'!;F_H|pU*amwZU7} z fJ&]&x"Qq1 2k׊R$C.|ٺCyNѝ?eeBN< 3{j7<$ & =szqy=8T8sw8ϯms !0BH/rQ{u9TE`GR.XB."9_[cZ^U[n{&maXfE^&ve*_%OTd#o~AT_LƩs}'63 w!u "+^;J?x;S _W (674K^+ζѐI^!bc4۹2ȍX4|@V!\zd_{rq __y(1[ѠsinrǢ48lm}lxlޢ/@Faɀ(M3}0L.Jwzc i~`"8 IT.ܧi)- js{+"N-t+Z85X0O$ *T@1yGea`Ef{gdS5+w2DŽ P؅kHA ƺ}: A}B`MT췉ﳈ&_ |/i_'rςs{(BjOtx5!):LB4-*JM@J?8^uuJ;jO@@ZIAL[IUAgIщ X`  xpaǏQ +y4;YeAdE7%K"V9fEXxF!K|njGu[Q}i@q"pxT/T%0H߱/'ݣ~(x~ZA)u2SыEI.rs |F@2٢+V<aXvwҤch7WZ3|;Ula}4Gj<{_ɪî#m ˠ&)6) 5cz0T.a_JD„h߉f+=s1TZt<iVqxQ]$ql{;}5=Jișᝒ= H* o͉Ȟfw'z0{8;Yѓ\5Mֲ]LegfLm#FZæ}wAĊĂy  1e+xJN 6J`_4j%XR3Kڊ2j+4) `U-H{(_C`Qs8֢F &y{aar,;+Q 40u^4bbasGe27e&KI(k}-'lζ3KAgo:IC1O ȮT$Dr^T2;i)ٸv|Ce[Mnibk;+5A<#fR1.(f'Pd5g~ ޭ*歳։J^ꋺL3&2!V.c ivχ5NMtW1 N>q.GR};J5G+@ /]&Z * COX _)_ڝ\~/y3o?N):WB|Mx94Kǀ|AAL~h(Mr2rCzOMo>;35O# ^ʜ?T] " iF u+VSV!i!@ꍚ [D`uk 'EvYףJ>MHXW|߱7~a[Aoł\sPhE٥R)Z LtL-N+7l@:bv@63Sw#r_L|q 1_Q2?qiUF @,~q NqXm|wT_ִ>DjՊ)nSRȒNL$ř| ov de fࢧl"*M dڋiIWuNrlqQ\",z-ING2SWO2^:08Bh(AdVr6¾5۪%Jr ul^. Q~)}χlV &«0rm2s&g,ө \4n޻5q,qR@'CʷMBA0 DZwX$O<@clSѼq; ]޽H: nEoȽ /H2 2ba*WRR#~!k{ c .0 (6WCl1[\s+dʤKB\|)1r^2.F)6E˓Eq::Q#dqKj>S7ne#ɳ^*DђyrW5p#\-"^jki_3ٌ -4GcF[Ї)Ρ=|" [JKYB9Ǵ5=zn)&A0,<d׼fQB`- E)kF'1~Y+o@\ Gjߠe\ ^2B,U֘*&oSw4wf=GĺfMILފBLC>${"OM>ߪ=Nޤ@y.r3[@)U-U-hB]4ߢH0K)ѐOmUᤈ JcAS?ÿd^;Y^GC'gum7~i<&g6\7lc:Qj5ΎFf-4~O4g|,dEltmn7 Bpȼm0δe}0kRJ'7ßbV}(r1+lnLHY-InrP_ ?*")Q0ܨ 㬼vqd 7WTV[oD-ٞ[}4v-tX@o׍Ar#L*Xv~e7ld.O*Vk'Fiy≥MF`aE;gvTCEqܿdiz"D*9ŋ 4J!R,3<;gs, Y5_ܾ] 5Rߗt.T8\}zuR8B dp9wAV0M|u<ɱJ .ۆ8+bbyGn=$ 1opxi{uޟ>Q~boЃJ~8a5xʝ<^Ec=vs!^L<>"B(e\E)۾3t?QL <^&+Ae4*e*lD vqwCj7)1t Ja{>yn_dn7j ዲr@̇s@FG|aTI[0=PˌPxs<8 c3_@Ct`劺 KD$(`fFovZ_- `'T ,uNB ÊM8;/fB1^+"d;m#QO:pp@49[XY{<"9UnO=ӮQxx#nkFG4&>ϗ>D0qhJFξP14hAFzyF!FsVdsRd7gd>zݽÍ;ȶ̽H//lTGC\XҴiQt'h[!(3kyJ]8[$ZZۣSOf18XNFX±8_G};?6TIܻ cCZ7Y|ٌ2ZUm57?VQ޳\/ϯH'ԛ/&td*f7n HSMtTW3ENtL>6kw+T1&Tmspxj &R\(JQHxLe4?s?ӝq`[ҙ\&}PA |ImF{O[Kۖj݆'Uͭ&4*3S m$Sgމ07Ē7gkT#\gu |fă_r+jY ضGq|, a`0 @8L <z0xz}v^.4͝[ßtɼ;:z͹Re 2D77/R Ga'Z2iQ:S>Zߋ"\ W5T>B: *oZ੨)K׵U)m0NA(ٵ*T\yF|-ɑ Xf%f#Y aWޥ耔ZbXa@I2?^ { 4oM 1F:&Sa01\ 2s ,<>y}:|kIF_Kq^Q&G_0'.DSD4ox7vC9 ( {RҸJC 1:c:ؤq`IY(̹ ~_c@!grPUGB?f[jȱg˖X6KX&b n%:enR篕Y+YGYhsr G|_BS{\dBj2soNA—=o \jozy @M1 k=le\uzn~fI# tyg5 j  V_ $^jhPn>bw.9GJ>{^U_u!ܺѕ#mHJ(3`څbS>m2z_!9e1?N6XBh hrDPԟAQ6\|u cXLIdN8ƭZDzfƚ߫s`^soX>>8;ժ&1B?9Wot?q 2(nQ볞^=u gЍ4|Y[*JbіYCۧIE #rי%]Wѓ/Įd]jn}%Y=ҷW(٠*bI[Hh kd 3iJ?R*%F]tMMl,,P]ZP(d"[l@lD_ViʴnRjs}wGն2G{I;o^/ E/n'L?2H8@BC@c}MW b?0:[Ks~y#^F;Q'Ot1(M7{! B&3g:am%rvP~CaAeʕ,!KS회p9 \0 憞_kYmM-⬑(ـN Ru-i:gɥd#.$/-vX,3{j}8g?2X-8Om2ʚVF-Qk`U<>CfNNQ%x\ו=/m?~zۍP4) ( :N!mSTw?F~ TNp/^J *i9^ҦV" G {7Ԧ%MtEaCx"ݫ2AH8"B}}dW~ a`U}AhړMSdC Q4?$$OH*'-pA7vFF,HǚYEC8eA$[#hfN3"; t|9OI@gf9eȅ{; JaaH3*^1΄F/ƙ0[-,5ܓW+Wp㱙cଯiҀߞUZZkLtFQfrb|B٘*{Vr+,#/J K(k oE:c|5&|c+de7.Tm]ܺ2[. _S72kc6e-!'ZzW~٣\ZPo~z ^6`S1 /C|Îf{Zم` ,&X:a~!"|4zLMVv?Reǎ L5q9[n\َzEp>e&R$JqS&"B񋀕ܜ<$4!e`yvi9ӹӻQL \xLmۀ# @Ph݊zbGcAc} "KB4r8,Ik~itao@3z\|jJN2INTi*,֚_¸E_Ŏx SƭMl+3f rƟKGd g~RC {^ .m;&!~X/0шuvA5C }i%w7$?{^,^B_ +W„웽ڪ`kޤV/,,`a% [`1;ak[+'=0x=*h*^X[rJTgv]!^{|$&eq%^∄jSJ@UsF҃KRJ#:{o0xî+r 1oeˬsq26H.Hƪػ%G-_]ioQzÀlm?&ޏfN sW VV!LP5l6_- !7 ?T6鲇70?߳σSK lR}PCae!Σʊ$45/8},ȥGG6cd-㲧ӽ(tݷ1D$s)ӛOCw*(ddWcPӓԿMH:QIyWp. Dp_U&ԼWϪ"%!y&~?ݻ9 !.a$ *9HH>Zۤ 2ǹ Dr1}fH6;8*7Ξr2yi?R2%h7KSoМ&/0JL! r݆p %F;$eE? );Ӈ[cΝSL6\_L\[e;uuR`2V VV^b ZQQ&¬,au(|)5pi] t}~i1M%'7`)S5w"Lf^}gZi{f k60-3UvԿ̍݅B~qCpbYXp ho34_yH vK86||Yˌiuc!z[Gl% "*.Mô Kj`wNWUQ-d$ID} +W2բ-?Y׮$2f?iKrbw` =FڿM뤦p?aL`mGgܐ5š"lZt$mUy~Mdursf|(6 A@vdjʷ50*&}̔q$Iۿ")0U}԰LHP\F#tfa)|os3s+Koq-9C҃ܛ xS9 b~I+Ze$ J eCv3lԚWL=l/9L3kO[_ַb:;ry h :0%kPCJ|]tVc!Z?б`ގqK5[Z >riܩ{wČ'fǿaEφ%Q9"ZxYU d {@{~[O9w%/@*/jv#T! !,YzF ę%K]u&nFuAj ޴_]t϶wȏ0UQD}ū"`*gI-B4+384$K>3*vekK00?DvPT8;EڹzHD2 Fϲj5,d_ D~a$_ +rײBoE!VCo{#p 0# Z:k{q "?˫2m*lIJ71q USCE.H ;a|ՈG㌳-,/,/`Kc(_:_+Cnm7lyH/ei!ӿ=s2ruaNDEGcPMe#&3׿ AҖON}ťHȺ릲 1H?_8TR ɧF,aa_fї[:tT#J ٬ۮƿtnl˿('@ 4(2L=3 HЭ_bh[$((!D\ fU:K` lk;>Ƿ{qv4mZ(#Hpb7zuò|UCJr/S]V*r꠵TW Y\IU .Y&c+<єZ7xӹ8IrꎠIU`hhJGmSiO۴T৯ $XwMb=,(8"X''F.9[2ɤ9RtCk h cP7#/NCVMwa˽/_  X .Ν436@Tqn 7s|l^O= W1[8fx .P'Ӥ7wږ_Syg&K 4: {o,Y(#.S䫾Z<_r)*vݴĥ;:×M14/c%˥ ڒ=N00u w,̣Ŭ8'Nfc!na-9+tǬH0RqiX,AWL2Y2AD3%nlWs7AM#Wqox9|l[T6ws-gxh@;"Y0ڌ8:=G  ?l/{V}14rBpDۅ kqӠwR̸(Fov8{-6j48)U/ȶ0(zO6 zc m8b|#Oͬw#BԳկ&4nݑO^(L FR1&O }ut>-pZU0JU/>=w׵kCk 98$BBmK_N(3.?ϋE,Vf2&А1b+QM8_93#5Aƶ>":Lx6Y\:%_w+V^ڕlmdk\n۩,UϘÈw|_sgiF~v,|-}侢/v1٬<܇N܅u} FM^. 0cYD=jǐysg2:iG,?;4|6t#^ VX[?EaITp{g.Y3j^F>.oӭsN#IS|+&8fe 0{+]pUi^iG@No5:ֽ݇[&^?ZJ8Lh`w7LQ̭\qL@越 ؝wXE{ȡ&dޤlY(@ҔpTBЕ(~ %XBp|"qSf&YJXHr[yT3(!lQ9kf1cNye$YR<B«me 3 PXVnHn[$`T0׃3b(1|kebfXN ȻnhXo>ڬlpڨ LVLX|ME5.øVTHf= ,GSg7P>Z'#) jcZO2 [mFNgoV_}8WB=/"^gFCS|01ΦB>Qyl8U"61ؿ Bsx-<,@ۏXrYv`?nW.SBs3"mXn0 R&Y* N@B@[ѥj<"שrz Q F2ilyx>_%+Ԕ\ JY;#?g E0Dl?{z|j}Uy ^4m9ï87n#l*=4i0ΙΫeH}tZ5``\d[TGK3{u\l=oJ^l0X+ۮ޿4MPPq"ûΡ/ ^Ui)$*I,a'+ZhX=i )lleAps&C,o@JMKEbyOr.gY%gOu Mւt'C/,xsw5Û HIٛ9.àx\&+5 R9?(;rn7s&"yE㰁Cc0ȊUr/7"(3i=5ݼ:zFVϝ$L',ݳRof'e!7J ~:&]5z k^y5''^/NL.e88-ٌ-a]/8S{h=J2|wDY;VɆmEݫM\ nsxs*0QaXx2@D`u=Ҹ{jߖu评Ɂ󞵎|F۔3~ vۍSxoM!H.0#1&⠕^=T(.k.#f+@s5ߠSf* Jh9XOҥ;^Y4  i'mV1S[Z;>awiH$ ՗Ť;8ӂS\ˆbυ,bVcC+G*O9N6lqM'G!>(L?Y-uDs! gEz 7ŪQnٖ0w'q8 .az$du Yy|/*#e~m[bi&k;-|J) &G_$V-󦇤-V|~$@re@Fo$1MsGWp'$xqɶmX`f\ϸ i> U'L:jᐬvC c0qR 09ȑ>R ؅{ |fҞgzMuM#Xj#ҐVb胘)e,-Iӑ4Jwܩ}j7j(OZ r u>4c ʵfv E?)S?u] IK["|ds_&}L'ꀁ^ Z$>!dXVH/T,[xfzIeC>U/]uM2Z.y@}%VGQDxɜ4>6x4 ͔ؔdH+cGϫegiKR}"ϐ5$C΃ 4Ht6zG)InWƱtT|ʸ [\Ct?y;1M'gM8 rlEclwl?HxZBt֦R rO<|u߄ZWgEFw&̌t3DkOi['iƯfT6':dcqv ݎda7]2!pd)RRD]MuxEYc;\쥩#0[/vw@K-:7ՒR\i8J6y[rz;G1 2If[s zET/ 4"(atzJOaf8|Vg>ziwIκ{([vy9^QMy>爇-wQ`i€ׂ .@QM"rM.e[ qqo{rH2ͻE슶DY鱪X ԣpԮ9[]ر-,ޞ6z034qqSPjҖM) ./-C^ͼ g,FۏŠȧƝJ>Y[¥n s S96MhCLu&b\qT#z9f_ ogx9і&:JE6wo,4T4Zqƪꁝ^2VxqeNs,Votsx %EFfK1j->% VGemOeQ@_?q-A4|7yXдm߲e&qJ9LFq0N67&U6}TF]G馇g+:bs26EsPU>Wi  J1=i#F~%<{EIwBS`|K=?.W;5{A n=*6y b+ ny*Pړ 'AyLIml ʫc 3&cC}0kNARmRX&o'I,uhBA=$2ZN"{[2=r9Ȍ11}7I-q&ЎK|Z/zg}_o xT{0YxIJ# |2`0 k87B5r澷 +7EI[Ƕ =}8ʚkKti;)kLOmoQCMPi@Bj}.٘Do>F.D;ǔ\[_v."3^R>*E>S@,*f;{\çx!b F_yȔ83,c[eNc\`9t‹%knb$03@#Q?b5J? uPь+ g+"B~K Ad\s*&Pe@$Ǭ|Xka~WLdrpjν%{@NYy/|/_ñHWh"N9z},êQ1h&Ap͍D̲2jgzM|Z=zV^𖝀|]CZT @qT4?GOerTw@V: dhhk.P('|b&nvg`!RM z );j_Z߄x0+LvS~1q9礒󤱒9,O370'.J:cMEnn f8!> (4 +h hda%ɻw.iH3adT忊a `u-4!Y1+7V?f c=UJ8WƤ,&d] = VE\i|uaˀ3!!h@J]5v3R^ ,t BOws7Â1_F~aT!=){Gn㋱Op\ьBlHQv l8-X/ٖ*)ϴ`GDx͛${F]3"2-&fףRp#c`:7=D#)q]c:;03Hi#U;\OEEL:<saPXZG-͌_g0ܭ'X;ehec"a{'VqVqi7^:>cc?0'Q:S4޴os}?s@iYpϖ@-a1=w_WH +R⑙ 3Bh K%x<;ZHx 4800}d#O )bOhfwUbt(~)b)̂yz:@,vݳ~4=ZRSTj)y{u"hsMINGۏ̄Z(uyOJkP_0||aczZtBpXXxDK ~&Hm)]ʕIUY@~`3Od;yBT_GDVːv-̃p .)G$D_gj?b~[&xoZTkzr 9+T!R9^EOa|#ͷȇ4 0Ƀv8#Bm8`IQ4e$Ӎ(}DRH8LP[nx7:EJWSϸVgL'RfӚXUE=&tS7Uz=6V $!ΐʊ+;ڌȤ(\:H0 -w0p3]TI|O"g kpӅ&QqrCL"K]7~ɝU id `M ym{`b_*F9>fDJUn8]\ɄVR.ΆRx6l] u:al6tFףd>ɸpr`MɆX9O\`[}u^hQEwż)4c.m(q񲈍6Qн6y1EWv(zMhGtut\q)ТpO?/D$j1w, ] " LiAkL+7`PMC= Rh:Kjߌ-:mi65 n]d%[UQ5X_y QU7яd6՝`@Nn6teZm#6+q&8+EFK_Ӗ(J`H,jveQ=!ttyd+QN8L-ppe쥱=MCPc *"D"ʋ@Q(s /GnaW9gKM#Gڭ RP/̊@'f,~lǀ>dTSO xcBNԳ256B]%󼇔T5Ӳ.e/HV9Pv %@+u + #D6f)"Z:v eYwG8 )zrFxhȣrCR g`}ݭ]vOڗdã }X5'i*%F[RċV.[ xЄϐ|&jQL۩JyuIn^TrmTn3DYv ̤%ucsog֕ujMTД8}{!)^)V>.!Fn5j_o[ u}38KES&+/8W#m"y} I)V^_v2PFJiѧ Qp{TR(j:Y6ok#%<{[H#ÚUd!.sTcnCc 5~qH#H1mo4̎=6'-*;bPBf0 ittLu;ׁH0vv qbBFmVL}0 i샥lP()8HD㎈W7Er~iA3݋9.Z@t %$̛(f#OntCG u!Bje4D4CEڽJޭzb`AָSD;ubd<ԢRhB]U>6wKo XZݯ9DE1:drQ X~W:f"]H?˪ $4w=C@NĖ‹Ne 4o}V*Td> Z9ޥqnGsGYߨT!d[^aTI}LSO?돒"D꬯1< ]+iOOU}VEre5|n[1JWP~Q^) ";wJ0"ܢO52 Υy]1_5XOl`;GȎLBI S `,.DŽ 8RᒚyuBC+_qݸlَQYZ9c#j#/E+r ~Hw3%£ctPLDn9*ikg' L]]< jWlXcɖ)= !~a|輼R:aKe\aEùEĔVıZ4wy@œDZ<ƓB8YN͔ 6Z7";o0tM\I9J"EJ@nJ}cPS/](-26:ÇzWCvF/,mAISOfFN['5[ M*Ц3 GRkZ0'F rC~ j#+}"=5^yњ{ʟ 'Eb ,y~ P?1ܴ!t_sw\PaQ2C;>t2 Dn@Fj;P[ -r@gJ4z/}FC"H[a 0" U[jF]"nJF9~)W,|%r ,!0 < .n(~ ]㝕nE4)8P%{%KO+۲5p"SY!YFs['롱WxtWrd1*d |IͱLcL6 9d(8{y 0(K&~KlEB3IZ"Rp'|'3-KCoB׉3B<;-tب)%3{o ˠvY=~NE>#W!5 cd/VߋiF۠*;â;5NgZ ػ-7jHMM6$nLkwWwAđi##Oɀ˂L O(z9mc~ĢQj|9Q xL}\W9dSZSv60ÿHYj9?ͲP}+z 6kT5-Ԏ/DІIu/H/Y:jᰔ}T8 1Z?4=y4 nm:O hxD78bە&K0f p:/!jűtƤI)?gcXp+3¯ m6;m欶_/p!I\Pdh1q?=, xtﮢ{p(w!3sU!(\@DGAP::y$;=璢ZJRQWޝ-sV:{9i `Q3{ۖG¦W[8„O-%j-u*@*KOJ>&kSyjl$>),.)r׍ HAWkßGx._G`+ Ae3d+鉻P}'k[M(&XoʐW^:d_8&;A luohŻx '̥y2w8 DvIN a@nq#QAT[uh o1׾jg2L u1GQBzyabkv@`#SX[1Lb̍n2f$8LHGA@W@y4,{rALEx Bz8 kL:jtTS̀7 {!]k?6, ]2aRny49\f}-`0VyB ~% ;>*DB>/Q\0\{(]o clɆnuj*K6KZ'?NbjNgcZ|q#eLiXkj%}`]h{#KYo/$% ;u08$*wCwI`uCezo--h~PMu90DR~߲\-/!+lHsW sVEdd2pUv/VX)!}! |be|egse#wܲx0z,-U}dY|"7FIHbg9Sʧgox,߄rSq;K#:K@EKx3 {:4+uI,z(2 @P]bUyGu"w'.! O7sOI(-W&3MP_z@h"U̢#)A$I%JPigL$SvP*D HNЯ4 _;U 79.n[jl4j1[U+H.8g]HpC-  SNX[zisvm טmU难rsqAc>|1$܂si-tȽ ACD]وrA#ىNos$ب 3e.ҶR$eR 84SrR=} >h(|B}u_G.4E^,厹"<6uFk^tVƯ8j"ZhO2ѓa^==%=BДmZbԕ˥efLpb׿eson} n>fb #$kHs-In{A:PD㑕Ѡ$It=8 pwCdR&}~@*RsD~6w=$Po lJ {Vd YDGx[pQ$W4(yQ =Z:YDuV>KGqU誎&vʒ}0aS`bQI)H'DjO~u-q:%~"HVve=#t>an c]>O i?oLR*|]dԕo$D&yKwniJJ8xK0~+VvQ.Jj4F$I]Mg-eY+D6,AZRZ[V27z96 Cl۱_ᅄ^i˷Ess0«܃Vl J ` RԂFGqdJW/ӻ%[hԔ~}Inb#y[(fF'Ex`Nr_2wlhJAZ2Ԇӂ$ 'Ͽ:]M_?/S[qRfjzk? "M^= e'*ȤFS{:y1LF}_M*JS.C|v4QbeŔv-G>*xZ„>vёdbG+`o~ۥ:Ʌa{~0Wu+Do9@4iae G밷1]iL/o3]Avia69|ZL,n: EKn=yG׀mWrY45p y'/%?J nK:I#VxKQ!"sdh#Y>ic@ FÈwLP,d2.^ϢvLZAIB]sϧ"rQ$?QbS?C[߽͊u,D* p] ?`h˂2DBx}](<iKgTJBIb&u0)>u6پDz ;YCM9Dshɢne_ΉR#U!"H'H4$&v׫S]&&lfW-"DU8y\Xn-SK|tBC8akǶ,jSNK/Cjk۪5/uWfnQ+I>AcZkcWis}3OqL35,jz9WDUW tl71;u)"[xjMq-B&jp 4~G_|sM4;#Agyo!=q.cÌSC ѮT*|hyF!CRtoalbTZO1E90ɂrө97j /** 3gN4If5Q8-Lb c= uZ19V}5ntcɶ @IPjOI=?~}!%ɍ@e w Zw3!m^(SYceR4E H[X-R]P`Vd.I!Nz\a7.ǖ* O:1=(zNc'&oTC5"R.G-|R0z#6ŀ/vHu} =,u)aϋ)1E/Yq1쾪wJՍ? aDƾ ֭1=4F Ph~@*i=MxkqBoC>=3qe*=HBRB U%@wfef<V#&4д҅KjMHj ×F6|2X`#WjqG&Y7b Jm_ aW[nn*-3~H}oe% >8A71eC61~5L"="sRLL֜ [:u*ʺ\M!+ >+ H@}͉L\K">g!p݁'*d/8 +{_VCж4QZe JĤ;=Ul>M/>Q,pGe]xSXC)8k-/X*7#C#%rFZ&TIVEP,-Ygt` TvKhq8f'?5E>^M=ɓH ޤHZ-\nt42Ǒh3]@Ԭx]ŶLb\(VmqsL>m(=inP/rpk|tJIQb$nTcg XB+{I_A(q߃-B7@5 i~ d|s:M]ޛ(?A&u?Ke8pmUׯgł1n Qj3)a'H{XIWm6TƉzF| [>h*BivuA +M޵ݚg4__GapZ\`KHz?rȟUo/*[D"bq@\H2^V":xSaw##b{:_> jGF3dNDu6 [L Kk% BxkKO/o^4= F઼(z1AWeRj^ B<7O] ^ʯ_@G5:*v$ C.] .V>ֵSNZ"E .8D-10`2{elBgfzAcIdFB3`|E1kk]-9Ѯne-|LT f_?׍ |f_V<g۠2il@]WĜҘ.qj AYJp)ʩFe'h$!(ڱ+y':^%Ol@C"ulkv%B倂f;EL( !XLnk4Z%mP?,jgH(槇1];B֎O9fҊbOAb/7;⪕!}t;tAPȳS&s~ܤ Fd-} TYhEf(26XFdC!@VeV2h56[6;@}ի`Xqtn٘-$7Xѽ8wN6QKz7A_n}Zݣ)Yz忲2$ngsj+  #0w#ʦ~_{Zr`USJE2uD'lQ>QNֻ\X!בFsnHeoU>ΐ~D;4*LMȒFBj-;˻9 A-uhWnF_|6?q|H-[DuKC57cXcG{E0hv)xr7'ݯ+iV2s}a#}ҽ .TN'j+⡵Vt" ]C\4d !5JIB3DVE'ٴIcI>֝@Xo܄L stcݣ1($G XUnrlř3 IykE΋QgahtO.y(@9+'rfڂ[5vdɑϻwdYj]mhzveam[ _W(_eii!=ӿ]\e @ &"$;WvK"ݽH/US̝*ijmחcuuvk[FzOvݘ7k -݆]@:8dQ7kzT!*iD* vCKnb@ѣϷc=-5 r}&6C4? EȉE]yD(2 D(<ޒ%j:νϽB.*Zg*ߥ~. ĭD lUcF*=Ӵ þ%HW噵"8ϟy/Kg4]E(mfJת%k][h1KNbׁwNJlx$Wwwz!ȖaoXGtUMoP/ΔvUGX]fQLQ4Dy49D?AQd{f- 8U!J$)3OUft3l0* h/N M/{Zj"،2"v\qax\3We5-NjJtp%[3U#͹XAwg4<{/&kIx$ۯ1CMy~JͧWASNdJW㒛1a9!T4JIH$)&Df?n5'2^\+і ^$@BLR82IcY$\PRjkxJ%E>7 Ry?h4mtO?`eMGݒ7 pD!ԷXU9{V6 4Jǜe=7aO!&Pqq'ʏj߼Zc`r#v\^MFxsÊ!G& |n@D&:_.b>9Bo})ԾAi!CXn+4Rm;rIy[{L:lQRKi KFM%HI9К"eր]2q6b”=k qPtBmq]J{X `-{`1XRM rjydf˗(`bA[O"Z +T()grAKd=΂e 9CeϜn T_-^zW>7v'|| _7F!;Ux-OOKu4|Gu9^Qt&Tw9l C&8{1s:#Ըr!Wo7RX sLy^et3NLU^D'Vu3DŽQYװV -2BmDJR/J ycŭMϥx)نd*9\cGtqȥ![ѯ oƖqc F!L.\dɻfݢ۹K 6_EIֹ Pl bM!=.%`&z\I$f~*@[֍h晜C*"ݐL K"QɇISMF"hDw.Sv?޴8%p%Ά+۪ AM;.EB2 "ߪp]ҹO˘mFCZ\G[?m `KR*4K@cvUwfHdtgo#\JzNY0 gi2R0V$y&~ b?~"=Z[F;`=WսFo%XN<\@Ke' HL6 4n+ңԼ^E<'V25R/Ұ^v"wrb]a.$^Y4 @rɅRwm-,~GdJT,668KQNqn+y* =3waq?g(a.f~ 0t=wQǀ36H?N\Zr"̮.;թp@EP`UgSkJ*Vgryp_ 2ف'J›` \BTY pᇕv44Ut%1O(r6m 8v{v˼C+zާHR+dL@St=t*'4J{y#AUչ=;tpĪbhwqR6WMtu-yW90ZSʧ xw MKބI#, r _{tq  nZlV/z=\g7~8:* 93 PZ۟8a>/$ (L{'VB= @q?o4o) U/J3d*:ZXK]LFN:<: ctV'DzzuCy()Ov`ڙOBs\1-4p򴖒9hܹZy<pہT}JdT "q*ՋR{B 5O=ka 'Xoab$Nr7Hjt3  M>%!%};,"A\5Fl|GФQ4.9(4*wFN'^.!nGڔx)}Ŵ9/*~aV|{0(&;LA ܕ 5=U09 7-ZUa-(sOr04*CN$g᜛1UGR^fiZA3s;똪C3̉N Nr$F/}ǝo M+농T~zg /rWr%79 /19Pw~gLω4Q(3h~DƯ-{7Vш<\iyr Yv@4'XyN!!l58ս`FɆe "LڨG .=jQDDJ5zAdV9 ТrX"ZSAN%H FCձs 9/ybܓ+%j1$٧F Ld[, 80-w . ~2R!y]16Լ"y;DgaK(-"}l>>ʨҔbSxREĂ.7%% S³XU]2ISd>\Zmrf,^8#T$ɶ®]XYT8dwA)c}zVth-DOr8elm88`w&ZCRQDW]puenGS `WN`J{bՕr!l0K$8}iwXC>/ "uu g'OlBTfU,D .dSRymQ׋ceqAe pWMl]0ϕl> Ǖ Ӭdp#ue$__yHPbam-H1tcca7d/}BI΄x#3UDp˶1Pnr E|MhRDF'C%Nq ލ{ئ\;/F疖oqkA+h x"?f&vKaǯj fNW QRzRlKjJ7mF H[h0c腅4~sQ W"i"F * v&7j M_KeݥAIvomՐ'I332`ź|sb L2ewF-%O1nL1@ӧ-5Z/;|U֑FE>]XZ>״*w|bFC6%NJHt>Xq$Or14uӻ[Ic LD螵ݸj(O P0s 4[n a~yvxEv'vj>OY&+s?vlOC J@Ւkm?| i^L"߮vd_pQоѱ s4a;X# DhaC d_tC`\L!f/x$HFfZ WPc tͰEZ`.`ȫr/t2'ƏW 3%5̏HuR[@qSo**~0R9 @jި{qӎ@eeehǿ3 ͳ־cb2C@e|C)*GSxyXAt$B?όi v.xC*J+Q7|z"V5k?J]\\ֈZ5faY׶Zg&.V[ÏdzsL QTb,Q:d-`gOwcW5-|m+Q)U%m[+MK*zpz=/RD'rԃЃEur9u ;їPlU`#joF7CB=.Kڤnspm'36 pNT'x`U#yFUE0$ii1-&A$П{#$,\3|ӼA?QýQc*ju!c,fnN?<˃5ygAٚ^jm!Hj~FJVah QoW|Gһ}Ol U mcy42"",v6<.̊8m^V\gLe5vر-MTkbQtZi`ʘTuM.aߎ=N'!NJc&pLgo{Dڙh`_,`|"H9y tUP5Q_JL+`Q}9'؀҆t$pEpߔraX`W ґTHp"QfEz83b%U(bqM9Ik8#hHh[5捉s=jO>YrղM?`#e_^"#v/.Gtjw{]FmCs#Qgmn;.ڵ?gZ7.vϊ,F[H.%*ٯ_$`D2ҝmN;x&VJs7KB*BP@zqiټL 0lij35@`-rڱ#Ҹ!orX_SY84f&3ؠv Gd]E wB f 4?jp bɾc~[!ؐ G/ZYKOKCP^p՚7?_gUw;붋xwRlͼ;:/qUn%yK_BCY~ߐF1һqPT+(T {!κJI0$Q2qUo#NxEה{S׃hv,] ,o;+#ER(Mĕ Hȥ%$cm'?n,H2sg eugkq4Rah/֘ '𬘈# T_/vE[acxJۍӰ)*/Kd:kd,TR;HĤb>tkT6+n=3 tYU5ԛ+<z糗שJΙQw6)ٲ_"R+C]{Q~Ūݡ.<J1]àwMD@ sULDK&r#Xؙ~Oѓ5*#kOfς\##I0Ě>I)'wQeOXgO YK4E~* :mvbcS<6@^hs=y~2a27/npo#OKFwkuꍕ*rg7# ᑧrG]q:M[Qo?%WSl/ev=;>b )ϦV;#]hHe]-3>/=6 `i~o' AQq]πϷٱbB sp0=B|$kY 8vu(Zi  goF>~BpQ]4MTLLR]̣3iMQ [Kz  66c rrV%QuJ6_]t?2$5jXXRڅn:S\&txxIf6#hJڭ0Bӓ}]0 j&,:aDZ6 6dj6qmXўɛTF</3/,knj];JKDJb^E%Cj {|7p'8OYlA7Ǒ$Wj<1Is )#df{ },1ӫL7ɾpπ]SE NDxZE&[4/~QoEvW"|^ӻ^h>_a+<<;M-46ƍ!h6]JhZEg/;wb9Wo[!b3bQL+aZ 463HhaƓ$moI"=М/auv1s*`>OV#7 rIjXG[o)`VԳ ꮢ=QX{cq$s?.mg)H(#<ͧ}_`S QNw Mza3=$j״,1jx AQ : O \=>,wxae]{?@+ ]q+jXtd4wKiD>};d1z!! A ,Uۺk2Vl f*UU3r?+ed CL}Վ?t- aJA?𝎰^LzԋP'n^ | XnvD$cdcۜ[`v( ~zפArB@8OH nȮ3ȹ֠0ivn2ZZti!ZNu{`̚kIBCc7n7 m]$w ,ܥ5e셜btB}&s<SzCȎ@r`6ST~?p"c]. F'ֳJ]BW~|5wnjcGXG>fQ" >amq3|B~*"A > 1ۋV1*^,\?ͽ7s_7\Y\80*nFo}&lxbJX=U$?#X|SC٫snoyizpn`F}D( ْ4gQ^]0ږ J7JI8˺?@w/>5#:/۳#>4<l 1d)';LL5$ 8g…-J5[},ﭽd@c*?:_jW7@A7єa.r6&V'9hd>2')NqRLB<AȆ+\%ht Fbߧ'O 8rv)6ALgvp2- ?߁\4L\ ]qX6 (\r~+b A x ,<l.p+Ǧ )OvU~48Pkf . 96jA9b˦sj9\" #E_?YfWG TIXʘ`k6Y8.A[84Qf筨-CYI <-W](Ziz!G6 Gh>d?'=@ZoзKQKS3H\9q"gjb^;SP~7d0ތ͙_4~tf)u>/ZSU`nUq8q_]׋g6;FnJ^$$}ggH+.Z.SG4GArFick;mܤ\z"dm! j)'DpsYGb ]>Fj/[Ei҅޼%$\%u7~ьT(a, 9rFu}4]mH):[ɲXwՁQƮn!N"VB y7'C6%{R4f%vl9N=tc oC]w~H:]mŨ.=v'f*AkuTU'n` ub汐p `Q#.La֋% PxPyFS9TEEg3)5p<.Cʗۚ{Q8T7\JËC\cM?> V1O"&'B6`ˈjh@6G׿a)Z)p׬WƌYW[''rTdCkEŞ0h@@ްżUm)).  <۳bEKwȈ{z-8V'UЧګp3Rb-D 3T-^t:#OcZ^SJL"mi{ xNBLRHHw"B"P2Hg'K [-1Az_Rywx#s3qʊ[.KJ}3)m:ƞ.0z jNFq](K!`u,#[+|_0vNBvݝd@fe-،UӹX]?C>8JǞT"|** '~IsD oSql^_58fSw mầɯTJMMxcxu5{ 8[o穰Ph;&̗̐&2cl{C*`={ݐЁdֺALMg! ^WX:7Yȣ zE-`\ \!(nhzsݰ/wep0&" Bϴh[)[ J-:ltjv^x|% 5_o$d  '~,c_\1v_͂2-֛Npr?, E!!Gx=.0H#"Y1gU>߄u' {{Xf}G=Γȅ&>Ɇ2{x]0ɰ1f+8/qAll_L .ez?,ixCÔ';㚉xrlH_[%k6;CPf,O1n!fhx##VN#4]Y"53T'`Vք^Y0BӢd**jyt96_()/sGJ`HK@u?mܱV*-o[.G68Q܆zС<%s}꒠BH& .bQUm&@RjDR7^X̝yp0C!O1Hc(^FG;p'w (tER'-I#OOj$CIƗbWra1Gm?eCD_t"I$qg zr8,9EJlc6 "#8׾kXqNօ|t4\;_JY'4e(L…]zٺ-$vpfERVrK*z {s_u֤Ԇ&>`i\Ѐql{4S@]=v %46kBڻzR^HtEtq֋ Js лb߸K}U #SFaMѼ4=}.m0]4\XhVVwwkbB}`On˃,PzK\hQtR_53[zubEKgyFZ{ψ]&R ƄύUG%LALpSfu x ?*[xI\޽筒'mp{ͣaA%'a:6#K%Zd2H1Q].YҏbRY(Ŭxhki? 075)CuM[b4SuesݘSf' 듨.:<]q͢6Ǻ䌒4Di_2AC7#Kdz\Gل7 y4w׿ ^PK-Qw 7ٕRJ4Lx o҉y>#DZ}8Kk A4mePrsE%^`hZva zkb8[%|P@8`PrD.p0'͋}#V?ҨKsX#ʳQ0oW:݌7funFHԺBT ZBbYǫ⼔F7 /%òqPj hjU+wc C[$ S:G\(xdZI$4N}T)V 6@{P&KDRUH"21mu(F=XI(D.!I,D vs #RI20$|+|+0Sv}^&|u՛մڝ 4i&F獈_-QϣѾzyR1UJ*hꀕ~]U=Z_sQ֧%2FXeh"8;9di5 ~s[#?)4zPX]OӨ|Cy<AB9v xNʄ0<4m <38AbWR̉5 7(3oG٩1esG*LqA:"yj[e.20+W75NO]2Nr1sBHiϏeؓb$l+Ǜs&|Gq-le$aE1 7->Qw@0j_RC1 c0kD9vvm~^p7r}㎡R#r.byF)BPm.̍36?qڃ=seiGY6+OtjXmQvόOVdTJyŏ*öF|=T@Hn-j$éeYf쏹˓gw̼pd;N)Ώb$HPF"җdXIAGy}:{C,jj&, ]aDTvU C ӠafMi̘iE ^YxqFMU].5X $!vETUSѨ r7/Old^e Jh&78(фWo_U6X1yj?JQN{d3Un ϮOxfaپҌf~R)vd@ ?qf4ԈdSo[?Dxc%z&Watu#޹B`W'P,)̚v֚h(b3O ;bN~MP+\ ^dۘHb]ylTI<%5c&4gw*_O{\6, O#3fDpp= .UFx2LpExˤ5jkX$~ln=6z ?TZ+%*+v3Of~<9Lc3Љu4` _sbVoim@B0XMk=aj۠2mI:'MAHf'$2ʿO>!#(}qNKH )`T[kc5Nl f[  QdٸUɰjS2/rfC :]Jw"XPD6$9KgY_?& fsM 'LA,~$ݩ;x.hWv"r.ض")e$aP7MiLzkH8> f"댬8"<5fMH`P8Lvy(+c7{rQ<33k1}YkժSx]F.7(ҡZ qg1VM3 qs$ #}T*6GHcg xz!]p E眸KvDCz_IA~NfCn>sPՊ6昣&y4lpoճg^5_G2\N'KxӴ 4.wsY+z+`?GWpeaRS3|6{{ DXgAdz@?mLO5!NVJ&Iα<ݥnM`z[\W:QAF3f+]5@Q!ǥ^7h~A/FL<* ݑB?ZX/l]~]#5N zJ{Y&hL#o"eRz>~(;LuBβ[ƘPc:׹[*fIlmuF6#ⵎ"@Nd =9_}c-~{XKas0r<=`g;)/;SM2e伻f|qǤ5os ~{u]MEcJ"|[JǼ?aJtPVE\`ևܵ┄IeL2I_V Yݨ>H'y:1iypRX2Q];2?RZI vz *-ތKr5}PI5vnzcgy!ŞW?;{7!2F3Yߑ_[VjHBIf-+ݬ} ۤ)3Z閹dJH )J+^_aӼeoG q+Ki7k|zjC%;v{(;R/tV\O>-7`˟ˮ[shoPMM #ӗO˽\~I-s,tDA Y}2KW'FcD R>FVDXx؋`Wp˄BgkBmaa؊1a:wP|Gᩱ}aRakvQ/ zVS>6vlρ;FPgʣ=fn^L;݉ Qc^Vl3u.Vĕ̻jB.]eH3k YT-H47Sm%rvni8foZS.e7 I"{!,NF XҲD!MA^"k %X:J(!Ak+(uˁV<$WL3iM~#_^pgIgh&wJC2ԈRnHJ-tzib k7#;-/ A z+ɬ1 nmNT5b+tBo80+xݱYZj.1pt4;@4LTQsvCsD]݊ٞN:)G?=ϋ˫U;HzJe]jvJ]z{ZAwB\^1wL7iTr\Ξ$^`pmmBzL1jz U;K)?a9opлH]k4\ʯ0 hHGBvU7#aܡ|5 =_⧊F7k)&`φztGYV(M2(mMZʚn NR ot:oÀޗI(dcj(w..W.C>dvԟ-701 -mŮ|lpo1%>=b8,f6x|f#T 3| z5fЋ9 B-$Jѹ7r*mߊ_HBrolVoU`ӆj5"l{3ZޱtC ^+^VX7mASX($)r1G4ǜ/"X!c># u_;V?t@.@ w޸"E}B|zwycc8G\͎tޖ=K6X;QbCf 34:|^ FE3$0nr'? vB'b,BĎj?q`[|8c5bV ?VUkNJ3:,T n~y]\a"ݽ/vi"OӋ>-S9|4~4Ey\'yqTFZŝ ;պ7Z#;H(QU+P}0PaR/;e\bD{Fs|1^dQdBRD>\e*3:~*_i?L2JToVQXZǩR %e6񕹟`w hHr9z;߽m?%(Z">b`l_p< Nq,jTqF |s^A x?F7L1 Z~YCNB{|?wMefIռgD=  }fdRn4|2 F3{yF@%!Dsdl|  +RiP؀=NTO!Kc0ŞFO{fm7qqI- Y+RtAlW <\t~tgS&6!pPi'h:zrƀ7@iAxjy&6΁29Ckm`$]Ijhg;0,KE)}wMH%̻0a͘Peg %ZR`?̭ڤ=wR4`~r(@﷘5yNs&KWwF$(+[z'[k9+(~sXDwov%F.l{8r3VR&=L(H5`^L8gr%شNͲ<$o>klky8ӾV7C/jj54VX^*p~d'ZOb_;dZ[M+1/(S7-R)qIB ?$TzgVS'n 4cNxQ%ys˜2yoc”E;9?^u#uFB_U;_tB[kq/o뗯wp:|kzi 6qJw{a憻t '#rimřj,\6G{u9@TWɊKU U<%p6i>Ԍv?An%> e&Ԩi l޷C’Z5^Y`sZ2x8^Ɖs_œ+\.!AHoNyy½pЄdIΘĪMwֹa3􌏏vswZOZ-٘+HF*xmØJP V>*bt *h91^$dKY3zigzE+@aNcߘt"+7pV VAڽS5Y(938uըї,HD#_(-wzqp˛.VA }3Xx\G#[?Yj$nqNy<$+Ƙ F^q{ANw\İ7E!gWEvau@pbhP<0Q~;<nǍn8s Nb#>q]XU,Eb 9pLţgHR)B)HNS4r>*"t+: U(#C85"#B7]6wZ3dxJPQ׎?7jC,BBfiZeC YJkR%s0h_ǑN;i!Ih}!6ߘz+O &]뿝ACFo -n8b;"!sqdSD69OI:#=Mf :-c?&iR߳iJ:X1MQg!j͘nY[UMڬ{pyS|Fo^D.7_$<|4UQLI(N[ԙJ!DhZ,PnL}%KFI:L~Gl >({U=Q'J.-kROe{P(+TmECZX*eB1xTyLY?-yK%{~\V#l^٢E lj6P{t䑑Aƈo͙pysDQ6fG`˚Lq_P/Çġ~$ˁt3$GB'b_ &Fe eȰ"D 4>jIYӬwvQHFSWP "zK~T^Wh$tE6G(37?!-"w(`"vu̼nƔϥ'1ю ?'ɘɵؖ99WD_MvgQe so5c/ޙ,2]}+sF ¡ <wK?ݬ ڟx|}g]?ϼ+<%X:̺TST:=AO)1(1nmĹ5pQG2;.wm$ s@bq"*1&) 7 fl񊵐[ʱ7~ZG꺡kB_I[sS+8Ib-iCo{Zp&d^o#_+3fP0PUZeAƾx.ˆƤ|OpE|}zۊDUw7g)؈ {.dqH ?>sEB<cARYUXɣh;X 0`3 gdᵸ\m-03S'Y k<-f;4y*#+zt$=22Wj)Kp10 wTM:ǖwn Շ<3IPM5r`=a?\"TqbСya7},}Y(|p Dv3yӬFV)Eu$ 7X~[P8oӊf*Fvsz:XvM~\:Ͱ>u("UnbDCԧ/h3D{AϪ0'V p0ye7 욀ti_jHe^v: Wc057J%{)ؓJ7K) AɌk=z3@3(*Z.Wr-YMP:EzǛw:mWыӎ4*O=ލFe/ݺJ^ӫ3:PjJ?"Wm}*qw-}XZJw0!׮VHfB·v`.HDdAQso_ꪆ+8E\qKMM#ɗcYp}uLVB-f2 fGN:7pa QsXef[1CHgHƶ폜A g½Suv:i~-n'fNjXbo6B a?$X|S9׵6qr?DϲFF]wSG-~^qRHbXɲE3%3-Sd~GjZ^Ecy0;LPLZ?_#Dy4\IoU y f#A6#ܣg6} -OwEEv1Y7[@3ܟRC_'dU F4@' A6`=ya+ y=:sz,ISJ^gV=\l>B~ȥ Qw*o ^J͠mq-#pT0Wu="[o(:G9t)͵0˵)ͮwu?-AZU6~Юb͚|=A{B(>P,5OC.vQIgBb45Pj/(pmJ\o:ÚLǵDVY E/pyIY3ֹ/6!ҝ\YF7w!lr(a:'+wD] cÁX1\d5҈J w⧦K`XʄM yb2@4z;cP?a=bPXy^u,@v(WQ' gceLKaR"?,stnO^A^ pcyމ(jL=O%,j6Py!wO k=͎KS?3&~l3#~:џ)#8 櫿g[VQW`,I>zEpZŤEaUONlD7Sz( J,:lQ=Nc_ 킏4Axs5رB×phO%ddettTTA)V :Ot8:)\SAe84̝Bgh Fsx^,WH:k!v Tu $1nZTܐL~U˾_q@>J/#\eNU w|nVVxt1[ \6о\s04LsI*1K"KkGWŇ-0a&翀oblZQ31P@JUe%Eߤ_3NhFZ4;we lYv)VG68x7OLQ|_vF}6 \Huy1s8="^4/5^Ǜa˿/Q.4Tܟ۝*՗.0Ro)hK«'^p㮐3sՖH8"r2_"%'ytX)>Qͥ N 'b.b3.TQ{ߌXJg͋$XB_LDR-36arD78vtpfȠ?P{`N/:Gr~A%%OVJ19#/u~*ge6-KnN2rW&vIDpa7ˑFRX_+n6!&|ӵXkDzK!mhq2r2ǜ`۳m[۫KL *3Z6i9|S821&F 'W;# A^O⍻@DTI_U]뻷)qg߱gȑ14ѷ!ⓋnS4mq;tUs|~HZr{w9AK9.1- Ѿśv!gx04sx 66^_M_y4B-lWTYr>%zԮukk! xE-D{zsL ٬}:]& K9dp}_`!|[NJX)x]BozrP~h (]X?Auk Lg m v~DdOelb~4&ޏ =Rsm[\UOcAI: ˹͐╻xW1VvW`/5||bAwmX69[ s#!קif"iqr7gnʟvO dZP7O[8 JTy+)iJSLJ'Vbo[\<(~MÀ=N77 R:vtd6 [XMbIգ ag,n$u+j~V8B$i){&n@9+MG[CDK>0ڠ|rlyh D4zeo&tb?s 3,-Αa>$f`/?GzW'YrD l񇽣_q"K$3. 4F4~Hzj>C #kK \^)\ N+Ko48sAiVLQAQ~ú K ^}m}0=tn"` Kxs-6etM/u vc6uI}RÿnuF8n]X6 @,`Y^W+Zr.69;"SDĮTJ)]ݰcz첯UH-qGx,ڄ`6fˀAv۪俤3"H]3jҽ_E՝D45s*_V˂@ ?)2@9+H'3x8/͔ME AW} `0ڠ>޲jmǎQ iEh;l2f,ZlQ诘i׉&R?"fh A$pn:[Gymcbl{ς}=ٴ[bt^ݟ!yXԦbvR%$m .ͪ,Ť\o`I@ӵcXK~Kך [ۏ?ZH x?HB! C$dIq5KXp0T BB[Uv]cEfLpƊw9tRńD3XjB{t:Glp1X파 < /|O3LStu 7O2b{7 @cc5S24#?_R&9kISk|ZrQa_yEsSԴdYPR ێk5(ֈd}5%I 0\! 8nKvl ƮD6xhͷ`qY) xÃ(h()PhďPO27 G9u 3Nc% ,)"+`|N4@ wM-ՂfR (̢kcܢ\+5.:tNSU8|ɺ$;|T_5ë&zP_}IEe7evՠn; AyyEPߎn*nm?;aID.r:xŝ1Hjm7T,;dFQ0/~UZdQ'VzT_ga[nشa6&%$dZ>NrVvMÓ~EGZ\d}ȵf@@f#WmLr, ?[!gd="3;\ZۛX% z"xG1I:Ƀj^Z;gB!o!5c;j UE=3cR|vF >E|0w5l`nK*@2úOp=:~gSB LD͗& ̖]8(hTJ?Aϭu'Yf77f t\<]~ob6֊u5sGITOIzbɧanH~%u!hvt0n&?N.@݇eyLh+^ԡ D ]):`ZcL<}N_yW%0(e= RI5ӽ|OV~=bfxҏ 0  StD|]6&n"o)#}dV u]._pBb<0ܯ$MN-i"ė=n) U(54d:H^'FI'*An?xE-NiA#7ƊUy2;ssaO߮@ `B621 VNk\7PsNl|T$XSļ.DYvNR? Wz0_($oUWzH5ؔyvwg( q`|8PV F*6ZWgj\XWIx[%)U}HN6. qĕoiX;!lm/!qQF*IBr:^ڞ-+ $ݣmCȅ?VzWY{;sWw2ig7I>2Uh*tj@)D5|C/)וƀ>?d&ԅœEou N(nVc u!9'w%Ӆ4mcE}1DC s[1 `4>pN^ 5|9Q2@#nQ8@ꌱl܄wB_&_X Qp~%<o5ZcC'{ǵi&KPG%X%­5 G^a#rr4YЬk>SCXSug~Y/ [ʢ|sJZhUg dzZf˸I v@$#ft*($ H1Im9)p2\y @_I%ރ=bLϸkp$$vDQ X6Y9\dX&ZɭZPDaRhMggk F%ܻxp},`+B풫E 5qPs`cl;CvHɜ)[!r,ݐ]VRk/O V)B'>9^d}B.E Vm ߞ 8è|rѲNs?Q sl~Dޛb;#O|Ӽ^c,wewU7]mQ%Yij?opcm)!fV_fiPN]jMO&LE2#?*-Ҹf3́ |lhI< |5xTsZvѫSO`R#L UB8!ev"Ɲ;ΑMgG` H*8O/tcw3b!@Gҷ@F&*n/-}@k! pƼX 1UK؊+O^5s8 7kbUWRe|WuZl7XPdKhUghj }j; x;Pa"Jv$5d,Yɿ Ȅx}1H%h lIӨKsf$֕8QAd ξ]:0;B2,:gL֩o/My3$``S?~0> Ic]L?p#ŷ5,d*Zۅ6ny7 l+\{.8i~ ~Y--{b%TESϭ8$Pc5A)Xـ$:dp9s]qDYKS+w>p蟸-J9 W_x}M:OliT;16_͏MĄw"}"x`yX ߌ IMP"!3,M3=lnjzZlIҢ@nUơНƄq/LTÌbdMTnl1,h/Tk?.Q aZ1!K~0Szf7t/,E:>`Q8^A /cS@YVhxC*j˕ `%uoG;-l}^ Q;HB"WqB'Kr1PCÒeaƼ?BX-]5 ԍ ##IR8GRAZzٌp24OŞՔ}U Ȗ~f} %Ot^;}ƗO0Zy)3Ouސ>WۦeW JdSN⤯x9@Ga@z5S,1&5Gux?;y+ށ` Pt*>?spm_e&$Ȁk~ i~>c/NJ2:D6eo jqɉm &ɎNDUf@%"GrLk, *k9mKu |%4ڄYJ;+%YA=)D-dn~He#e$Qʇ@i|E}D(pF5۲p>eH_~HAM?4֍MHh}+_ \(MqnX>lZ7L#$<^!I`Y0D\ xkp2)uHɴHL`r2iS`ЗRK9D&n 胰fK\S9qg޻`<8L8R"-bt '@z(,5狱 Y•7̈ 4+"5-2 @kF?&tYf52)W}; yy.))J)BU{ꘁ/1W7 hfg L(L&R |ܽ*~\pŗc%h$4p#$ȴUKؗa4ֺԾˈ$g6>nZ:SNXN1}s0e8 :w..U_Y+rpC r3j=0٦`9j='rf~ 84zc 턳c3['|HoD{~c$9XU H/v~Ȩߞw`/`/#;0yo1 klq#G.擆.l~1`N]wiftWݿ9ksϓ_Bt˰a|IM|7; - Ft۶q}0,*Ab`|)f 5Z50!o Vt" AūAhKqL >n5<޲Zb۳`.D+Zp.cu[2p@!yD4vR${L)w>5r*8Y7zs9>8#PSϟ\Xӻ^MOR~pC,Y 5HkҏWl3MԜJź:a*8m„amJaT7Qj/ڠ FbPDۚ!:?T'Q L@f|cѬ:mWw/ۣ#ZW'RM5HQ"ǒ@TYfT膘@c`D-eJ)kEy3nޢroRDhLݱżȇj|1O%*lb^#WcZ殚FEͷЕ&]"pEaa"b>߬1]s`Dc wt5̘C_H$A{'=Iq\޿գx4zwZ=@?q4gOm{l_VH'geHe:js_[( I͏eב8,Z6t7ASi'Se*0ԇX z0,U:\!:SeLPFoC`x{]|Db+2$hQl4S"lÁ|{pphݕP!Ve!;Xud-hDgo=(z UOUiɞO3G6jQ]5+ `ԛ+Ax0uR)̳9{-М?joȤgH½@cs?՛<2_!|Buf'9 S*N iMu`]riy}ݕ:yX <[17eXo^}HzTXݡO呁W )@ >z4SvnEWrneL2p&6DCrmȫU zmJ 40&~rڝ?H t(jꖻ{KmmB YH%ʮ@fRW{'2fkkN8xžK t:yd4]Y84ӳwɚCt.)} (~Ƭ^&TU8g[ F3IpwV4 D>׹%s/"EoIa . O0G4ra nDDH$.|j(-,13;9 [TY˝?NfeD@f$Eb!+@1QxĴ K^>$1Hap ct2O(.9|˕΁R4#H5|ŰZ5>8tg"C LTG`Tnߞ zbp8[Es%|9Z`}ajIw1ЩsS U],?l<]_tnՇ('\UVU3`]a3\ub}K&H /5_8e:FbK,6GBr*e}j`ޱHi^j^A`6x@LdhlLtA&9'g^W"pL\ۿ.pL.NkyRQZp~ FF@ytXX}mNED/,xVv;Ξk˷x_pFQL=Wtu*9"'~;J&cp2PB3C @(4.Hɤtp9Mˣa8Doi`:/kQ(ی=3.Wt΍)z]1 }I qRwaKwh6g6Q|T^a2G$Ր='?2OmJWB\*9Y׬z j %S ͨCm٦E"xc&.:k) EhޖwkV~Ct<8 J\Qomt}gPе@b!Ϗ|=tѠ}ih]31>nuQKC""]h-yag|#k>o!]I6dnrdڂˣɀ*zwb#"RKY g)m'0:Y=/ ܮgi-MT8yh]wGIFxGz˦f#͏\4A-Mk&[/ jn zM8ĭO~')U؜;u3HFw|l/ >P"wc!o IS0U@F;zyT}@b!ݢa|rJaNԟS}\)=' A1NK9BrU}\im]7;$KQK[*k G# FdžA}d4eWKDýkDۨU|σ# :"w7H驧tѕW67EZZB.8;ur3*;Vw ;;-d؅n"kt.“.I%`l>s(kx&]+$xhKb\!ܱU▿O0ɪ9 H3J"ųe r;#ki;1GejzYki7Aw8m[\ J̹5"/1?"XBn;7\%KM B$ B_8}52 |a>.684&B˴ 9h㊮5(Hڌ>"2SMX?*/Roxb&Y._9փ*Uy[$ PB=`֘c`!%ʃرk0Tu0qފ xi#y3)ӝF&/~m 15nB ,.keщSw5^.eOHa+.߭ :̡ןzTt9YSU(koװQRཽSiEX1Ƙ?J}E FU9טw<%n0FqJCqNxlϋjE$-:U=Ӆ ׊;- 4p`IM]5mlAps=؏j oaP6;0!?tGM!,U 67.t50Τoy]z$[⚿:lqJƍpJxvf(j3p˥`<, k?oޕ9 n ):YûC 4X HD ac~J2 `!1*pNɍE:%2no ǟP?ւZWPV ⦴;ەf#.'$[{ e~ь`)8]ņ7郃ƠGmCB_Q<6ZHJ^^P%wl&9ٵo>H+]Q\jSDιO&"6Y⪤Va^̯ͬ ts%PǭwJ㣯Kx15+cH"QOVPܸbK1 +G EC]#6\:$Lw# ԥg:S:0şXdrw0G3 Kt{8\T Q"}Z$0|]2IHR5Wz"Ƥ3X̿;| Z%cz4ӌp^()#eعLKX;A4'PИ=it58 Zy׾ ]B !44rn3!jur{Ћ= }OxԆ\eNU1HyM!1ߠpɛne)pRCN}_7ζ=h qP's* DlĕͩmG3 vwWq-Za7lw :rۤut2bFd@GQ5-ǐ=D%5NHxS(PM&\^_=Cܣe Pm%WPmH$,19V>5"8ZWhYq1r383$POsNNjQP$"ҶnP%P_!X/H6NUZ[8tР(vax@B9F>Е$-K x o.DD4*BK[όzZA6 qaoydqOfw恐1i(2haIxE.eРWy &H$ɹe.z#㞡Wm)P\}Xӄl౵?舡!_GShiK;?PGyr!`{4Mk% #vH4M@a:[TBSj# ysu7nKgӅqCviVH&th ݀$C=]A5j(S^/=}~nYiFtsPXRI&:,}/m%nw9ƉeQ3;y3RM$ Y"&BˆPοpFpK'L{~f`Ӑ,lXz/Ho%,ʧ->m ƥS 6k(:Z l*<H3 T{4CUe1a1 %peUX>ڪMU& Em rHgvUX{'xnW^P LuƌJK$.|*PtP r+0ڴ!,n9H\W2/ tL#\' Nڕ*36 >`b3PlfNGh-EhrFaopg@7氢59$+и0IxWNI+; QQ߿EF&_%bDMcT@=uZ﷩jK{=j 4u:f~ŜNJAЩ_Cq!\i2lK;VLI]ag;^c ,fTj B7-Fi}Ye/v'i ?H:8 HG[ 8{]7p"-/0^38)?i _3dc1p _XB.qFO*~)IHCD&% W:; ;*xOFPوCKfW|s e6Q䌦ZJU0rWG{4HBI ` 3A| $$t`=jʣS sq8B̹S?L /_Do&087}+Xܝjlߍ-ʊ@ ƪ&r$[훭׷Ids5蘼NB> Y\v)_fcnPO΀aقXþa-N߁!%*jGo',8#VUi(e{Z1W=4 uG_v2ʿD-O*]d&5Bi~zL]aY"?$%ta bUt75A6\OU*H_V~|Om5"} gM+cb:^KAqmJA \e[HnHtMNxz=im7:i&Ln#D]h'/Hk<#\N &gDS׬e 6YM*T|<$)-rf"v3(*+bHkn`ڋv0ȱu6`1P`f8- Zdk%wCJmG.d୸ Y)vS$ݼ,~X^RX}Q4>fVmߺ;hWݢ繥_TU'z[A=O|)BI)D_rܧyZf.X m٫#*%fL%&2:\gSۻ8uh*X綜s#fg7ކ&mc"E(aHS٩DL,*mt}]ҘDlPUoJpw|Y5w yLwxb>E:W 3A $GW! 5* C%Uokzb'E+~kyQ~ c_ݡ'DY- z 0lVX؏V;Vp" pZ8D>[O4nfH=c^r]DQd_<$;4tIFf+x Xy=o ) $r>sM39x XGaw$*xky؅ 3]Uzd/{o]YG_SwQ!&oeb-%Kh3Ԑq-rZ+ޢoD*_L"GrX1BhAQd`F$‰Q"W_a  D ' œѯ cjPאָ!ZXi5"U jSwJo<0ewo\T$5LYQJ4kH抋!+Ɠy)x/oxٔ톉CVfԕ|J)Cm P<& 3m,|4; P֙T͡|`OL[Ɔo-s0d/9׭N׵6t(|qΆ|R\M"+\Ьʐ[Ϟ\iٺrFbs|#JUwАk/=pli%h! ʽ<r*ÝJvpy,:ƴUV!# J6rL"#̄PFtLQ"dcI7kdjO}/}t!kJ eU)qOrrm f+%. \ALYM~k$ 53pױ&ʏ IbIoba/{AO˯z.I4ۆ: c;` ϏfBhx{Y/݁** ş/vk,UUQc#`1HC-dCc,^K[' 0=GuJZKXj 4h2iEaYBAJ/Jrh-tb?6^Ic&&E*XfX4|*Z㬀 !Jl/\% :fFS/9*Upx`zCDif#8l8W"ޒ\mvK%pW7!9c|q.6,[M"age[&EyrΧ{Lj66My"U!*KshZb H{R OD "֕8Hz(EśN@aaj#S <ת"(ۄP|̥P ֙8H}\dqyIO}zMwvúŖCgvyNІbͪ ׈_vxJ7ң̬aubeK\ c2QFA_je[- I-?bh%GLXb( u}^ v^O426;/`cNc^wDEdcuf)RF}]xQLB D1F[ {f(yՕ6Y (D؄ڞ`E*Q0'ص> Ma^˛Zclt.a B~ovQp)\{c&R<ffJ :o:/<=YvuZQRUuJ;\bL(\V( ˊ&ZռKY^S~@ṢKc9dHx9-!׃n}Y\rFY*ԵV##8\a5"|apjcY&=Sb`ws , wHE$-dBL>۵kq~)ςWK #ig򂻑okj\`ሔ $*\ j.-DJpHqwYcC۰j Rmwr(I*:/ 'WةBd0rBV 6VwD7Ψ~Ix 盢{*X< gkȅX,yW _45r(`;%~F],|x@lߤ"hO'x %iRZp50b'7V̺) awl2LUק)F,?SW9lb_:Wɽl*IC<~^#.2htG=҄K&b.xJA!Gc]8A,|wL6 .l8軋tu\).0pW H/ r\o]x ZX*I+JUQ_Sz 9G*(04@J,T`@[`1VB|-fm#L=E֠^h\*jP>j׎ O-E+:lPWf *m3#cUcIC%rXn0+UWd09R݇"y)9G-B>UPHBD/Fܜku^P_>\%0\1QKΥ@x_2ޏy̜U݆$hlȤ q:zS_~:$vW|E1V"xvÄC/~Ū :#}NU>^f$BD1q. [#\"8"#q~MC鴣]|޵g6aP`NDûsNIQ4#0 dOCˤY<D-o8kիJQn])-jB/5NB9yp=w:\vUkO0,W-Zn1) ߍ:KXR9NuϓIojqgV|!CWc7] /tgBK +N dӐC*o% (= jcՔ寔 7zۨ v):U0`0!kcVZ̛B&AV=cڟ^=vaavH1 #p_bHj}BĽ7Fܤ ɟ%u 0GjFs4# /ٸvQB&c8\Tj*77M :Rb:0.LpQB4m2Nk ʆR q7-pz@Ɔ;hg"Wz8vc r 9FU*~TLidF FUߵ)L LArq'awʣJQ%e{H*J> EH0}Ծ+ZZ+%Q/7Ehش?lgQ9cd(s-sZyiH -JT@u+GdsHn?[EqҳέHҜ 9nϣH܍rbOSZ$zZٞDB:埋koJ"f? ATNR,o-ZzÖ$u ILp+l}O]q`T)هDӚI!D3gATڬtNcvC_* g1g oCou$ZrKoR}7m6U *.lM~2.SC^7z9V#,m8jNINcrgXt(o>Xpu2k|0QfKHVSSn@zqP0ĢTK6O۸!vHP|2"lJ.L\lZ+ϻ_:3~bn걻hO":ɓpm]T9g&˯Ba0S@E&5jgby3 E93ۻ:!+jrw5]J4 o[Q6tt z6g? mz(rřQ5SbՔ;0_;jFq?;ܘ.Ebp32st_ m~;" ]VNa6G}QG3(ֺBk7 }C<d4yJNTk+ڹ=o! >j)a[U= 8/=I r@ml),;N\Y \bƉ.q=L@pPvHш.ϖFA Q#$9sV 3G̉RLH凗1r0'J 3SWrOىQ |`լ'ӊdm?I{7lSVJᘏ zh%#XTy4c΄6@k/@Pʰ4Μ>Ns '*x(x J.bn)̶\DZ` ^nz kQna`$JȽ=Fۅ0 =pq!6K*2"h"o(2q;VMW8qmСFrKȵ8nKϺ&ZcVTxV'VU@lhxT"?L·YE):3CHറ8 >fw|&6cE-!("}X T&*~&:(ҐFvMrȜ#_6Laq/{L(0ն#.+pСI}O33vW8lW*}px)7iX)ze;R@I>$5}Iq+O6錴jx~LyihIXzB]pVxzB⑓g'r靬@dY>3:a-?8U}%';p[ ዯ[WJ7 ``gDa}z |Jæ5,ko$MlH{`65@@B?f0ރʏ,Fp;#.CߡxGQϰ,Jׄ |Tz s]xt1rWf@ũo @ӽHrE9E59F$,w6sPQUXՋ ]k]}ڎ׃= OmGtKд5KDb>/2=fot#x-vLitlBЂR/e=ܱr Қ(J@.KROA"u-#c$MpR.R,cgeBG9@3m ]hټ˿_- kM1iTtNZ U /T(QD̻<=%Zy {p@a@RW}l]f܁}-a"I+qJ@)--/0H mk`QH)2f괲8UslAF xV'3_u4D6?Gu%1ߡ7| ˀOrDyd~oמp4N*|> ]&-"T``[խ e\)9^Xʞ/gms_~m?,s'%a(xA XbmW*k@6Dp%o?Bn )nr"' OF CcBYQ܅_%(wHbn,]o5&qܾx9hnr/LH?.l;ooWqVP*1I@}e[l;pB~Xu߾ჴ0?`Ef(U :N8ʎ .)z5|Hi;KBE-8ϙSxBz-S͂h%H s-ےM=2aǞˤiD5>BPO~^nJ9p+ ̛_e13 8l)Z#$_.AV4h[{zp_ fD2kZڙݩO(1M<ۈ76V ItS y0 p=Y>0vz6_掔$E ͏ elR !]pОΨR5m,'|Maс!7{*GCH!YHFAKw_Q3Zߌ 3wQ/.]kѕ5C$rW{娘E; Q 56.>bO#hb7UJuZԯyGw¶E |R&8{<KؐNP> O.{Vy51ĝB9ZzIb7"i)`ҧ#ޤ07/ fHÓVfGxYCM)oa@PI<%$/1΢ q8zNy_ڧX߱W9nqKrNmĻ +sZ Kgج-}J/W;g}ղo05gY  d%`!Th w=XsYÖ},휴g$wd;-O"<Ђx/ ŋ YVRHwIor-"؊Hfnz*=xnFHD[AVb ͠,npPPH@xOvyaCe(:L tQ_:}P67Gݸir*g r JͶC jHpGzEٷ"AqQ+fRhOA::cSdWuF&(fSe< tŴZ`֏*N8-s#E0R;C$XTLB1IaUM_C9'03 >.]Vi ",v :VyWpjz>> T(^#ŖtDSk ˶"$u`arPmF.T*+ Tk[0-`C݈}buvz}w1 ye-:CZr[}$B4.I"qiI TL掞?IvוzսLH:!'P%FFz9[DdH]D#$cMxU~Ӝ+ݮz TL89ٺ3?5PkOC &mkô>ɑotEYm16qD_+^ eq0OAl 4J :M`SIj bFwb?&@WW@?}[:{}W-晥sl ԭG\8kv='_IfPZ¯Q׭?34F;o х%U\ַnyUˤhs'/b.WnM]~:XϺ-dxV1OKAnW(O+ODy@YvЉOj]8m"i4 *+F1g|['k||~w\<͞O&򧉚Bovkti&Or;>XD;4(2;k'_mj_j(eb_øTG5Dr1svGPk-x@ԒXŰ4U;`@#JcMCMry@M7 ;8{x&>GZjyX(GO)~Vq5`:fI@"m`'AppNbQ)zr f{.La@ EОnb+j['wd{‹Tӟ =8ht~,@wV&cel-mmaӸax\*'!f}Խ&e( 'u%FOQZWZzYTg9aW%?OK h8*ULzH 9ԝ5RxOU *=[H2AZc*J6h?aq'D0fUL^'. |NTX|/9ff:+QZ6QbRzEb\Deoqw^q0yCg%d֛0  ]+oi-M -]7A=Ktm19eZ269tɣteg8E |4#1}oݔ7E #08]^g;l/"y:/ɬ{PNʳO&SH2OPJLޒ`Kv݇'oZ#Hpe0ad /yKv 1폵[jQ B{a$42O?nM5uۭ' +w;fQpg 2fe܉'{уQXw) fZL,?w9BsklJ}^--bTn5,g,UK/,Ѓsۃ1gx*8a*}$:\vfQS_7v4Y3>üANy#j 2.X\[ w5bT˵<5l;ȤƔn{~(bl`"p|u"У蝨NasE*xw`Hl4Wj=n1JPMX !s@eযub<S~\n_}0orf Jn-n*ksP |v3~U$- A:V~KE!L´H]mc]|1_j0DOjgqb.>ʾP+yޥ0Uc粙rq:͡w70h! Q":z1jsw N&NU _fdJv9VODأ{*h"BG,E~씮QL|zfuO8 C 9i2WPw/s`mZӵ2kzw`NeoꧪgsŸ[ |p%:' -hvo#J z&KDR 3|B ۝>P6g;'#I` ?I qdFe?tCf*%-.*Yb j|[ 223{ǝr. XY8BiOM+Lxp""zpQaqp&)bphl:`h%1Z@)TbXxK8Z=b?R% Byq"ăz8)ǎ mR 5NoxJBKjfUTC*Qٹs={Ԯzڶa+8Q0pqu3nMbEsxYde*)N@soK:OLv3JZBF~(A@*ZH8"9uO\Sv*8:|?4";@aK`s{ahX񜵧R;JAO=*K42飦vO g&-JfE4Gٟ6)[N5mJILxeR>\y )~֍ d<4Ls,D D2[7TH#Vkm%\3J>;Y!lڽ#s!EqCŅBb,V 㑫F8Jq\M ۵$(:;2!!Y&]"~Pf֩!ʶWPy Sң꼬-ŭY)JUDqE%n݀vm]OG: Hme_c(jSL΍pd-`e"X'2Yz̬ߥ񊮝zзਕVRu_~DP?Z P6,FcT~'wc.㕔\; Șw̺q٥SskJ@"_#oX5qR瓁䍊WN;ݟ C&tkNr6ڵ43zH4ӈs9,?4jZûވ(>`@~HŪn~hz[a #qUZMXԳTy$o1n Dxi]HK>ܴiH)qirZc$Y  R3gth|W0.(K%#X4R@Y*3`Zx !e5M#_d~nUڹ0Z[D f< @-h yx`?yJ #MZ|[Cp,[xjAƕ8DPyf_B% @urG{K:aN=#oAZ:w`cYTd>(77'7{k!ydIsG`:2xl 1ik`H.)ZRMz IJ5ڊ)[_<"BOgvej3"ʷBT+x x V8 iVsha_r kw\'rTTY怉"!poѩ|pu㻺͙2Xi<[^0?:fb&^&&b0 {Qx)y=Ffliګ8d2֑%!no)33); ]&rVy]gI@qL" fƀ` VAi o (rL\ ,{85S4.Y!k-e?xO׿ mD_ޙmRɒ[R.J?q\^ |}aX[;v=SJD04GLb 9OʭL; 7= ~Ϡ?(YmA}L\T)؉hG?C@NP0`$H bRH)?OV]d+JL@W#W.C ɅyYԡih;gU3и~: MyL!Vh)Jz?&DMs~=40  ˏIGP! O |?/9;hE'iå~ׯg >×㘭8#;4Pq[9on44"i܄+:NҢR8Â)͉$nb@j>m A0$ -RLnl̪3Ia4ސCh)dx"6U3Ĥj-_o,$o,QA=q 2ц]D]4MNVf2\->QQg$/ a};?Cܼ)ֲnN1#T91 )eWh䵃uHnb-2>By;G*?OS%f{d?![J#6IJ,V,_6Xm(N+Wmf"y1qjQ bA3O'Ic"A_Y-PEe3gmDCԷj{;4E)<ʣFՓ.rL1$㙼gC@A1-v\aa2 YaHۻ?wH;V365^z@۔2%ceG.}#e4cw45<*2Yv6DYCyWBp#\ kN^eh A[Kdn/0um!}Yw.N7tVGX}pq(J*; "0r`=5ͬrOu\ >Ƙ&g+hlKuӚdq)XX:h$_m5!<xf ^ (IMRM*@G9RRVШ]G*8#^M/+aF1v1&>Bu(0izGFy-xt#=·nS9V:L+jB["̡w^y5G䴎,`GyF۬=LRMv]%[adr[~KuL|k6By[x|nLVA'T r?MD7>:ɗ^y!jzϧ+AymʁV>-{PF!TtPVQ2G[zu4 dq1f#;H / A9]p#GM69 o;{j YP%#P|K\A\t1~+,2f 8oňS+(f;N%vj\hTK"Ez%T;ԁnl~/ZrxS}jD6`5k!5L׫S,LZ>8mG|OS}.{=o炶6/yY|3q=]o+aZtYn`oN W܀oEoUEfUe^Q=\,6:jk-:+-UwZ2z4f8C.Pj)R4S2x+nJs, q^˔ @爦QMѱpD%'d|~lwI;Fv TX>OX? 04M M&kgɄUBe~Vܫ7n{!6j8"It#_[fw8%ݘN,m9NH2Bq:Y|+k=>rI'{IKlTb'UҺ Le=q À;; *jq'cRǷ?u!g8'%WBbɑ&/l텾HUTmӸÁx_ ?)&/H8EF^F_Edh j}go갴> 6%m<]-$QJm#o IhRE~[c[.5#9 2rM0Mmzt^,Hw,Qv7KRrdj{Ts/`SfՅ@Ht3b@VK<?\G Ue@aW Ǿ+BMEƠeDLW?ָŨ⣀irO s5p !l.Gz:!QqhSX0_%p{O_rj97 sOVhNR?NVi)zggAUf / x$gPtT{.6T,$`ĀQȤBm!R:t饬E^ h!}Rѡ8NZSfwG,6JNggӲPӚDsFeVK'PiqkVOPU'JVu;ȯNz+AOQ4#zFq5#Q0*ٖ>b>2G{hł~{JE O fpEˇtFF|ˍb %TE ~W;K*jcE:f4u7|Z?.3}%HVQ " =͍źJ@}gs{$Y"{3sbFdsɕnJzZ HҡdgvÀyTSem秂kci_;π|: $ފgg>֗] U ا zO&О=ijD\T=~?q̕7']Zhz͢?/t~Qsƒd/bDT c 7rau^6!s.SFQ듼$ĆU*ih6iDÉ8dÄ1bqdEϐLۼ;U8d99WdU۹Nup8AKZ["TZn ঍*#j!Fh! _2ara=^.\(Fݱ+ J`B,djJd8yKUaO  Ҥ vl•O G,]*kS:A"ݷ k@0|_9B9\h%@'s 2>pMfmNQc 998e9[Hmv빽&PAUKG.>HY\RBEFO+NZ.DC(] qWWC {t6t;xʝ-8|64uD{#,&7 +cu%@#M, kT7i~f9 8 WˀK*#m N.SoA:cM\w8.ah8HDXvy%e?()M2'61.iw:RQUP8r 0^%=zF(HdXy*!o˨ WyO-#GAI07(Eh"o3wyӺ_V~V+h[-.:&JAdAh~p6*CJj]g5R+WK*ơoCm+|0cgb^)$[U3^!mŝZcIE(MS٢%tކ ]s)i*dYz9*+ q4AsNk4vN7Q(aք]9sX f2J7펙 #W,`|&3eɴL|:UJ >žf1Hga}=<ⶮ j"wdO Iq4_ [|0]||At=5tg#iQn[_/Nk<ޢJg4V\qVvi_d}2KL7CҔjx8֑>dV⪐)>?BaipV-_iפm? fr#K38{O~t8#D̿d9WyiL$xj Ōp7mdЇ;Ʀ[D_`6n9.>L;{lOf(`;ɿaP۫e'_W=[" "]zu^|PW?2wrE-r)%KMK4M%񵜑N{6ɯ윴q'x3-wߏ ##\`|S}~% rA x=E힭KO^Sdį?d2-M v~_ t;10Փ"¬BleDucN7<Вҥ}#*l/QvY|{ "cѧ՝}N>@'+ł%2Fe*XIpg7" ķ}r׋/95 ;g]K} :xw)EC^)Y3A5]o7 YeF{(BzcPɪ{T{Ϯq(نVyQ9P}1A$c`9+ px\ȱiFx Pruan R桚 ~ ě } vz_?` p]aiFK &2h=mf41?xUna,R1 VsYt"q ۹){QqeBJsKdWi\3> nHכ06NdPVlZGH];^bc0/X5\LVYdIItDQ&X:8[K#@_̥! BCAuW Ox ~&O\"]Vd!99p1; =%؞~!: 7B*1o-P@sZ jí~^gxVD <nR(!{mͺwуȆZ?N<ςw;:R&o6sI'x [C 7OX J_cOywN~+ppa`<=ba>`/Lڂ\K_^` ܀]8:U4߈``->V4 [iw5y*%!.fUV1-֡TJK_;@&paĔK Q52 ߤI#|/ E2)< awU@ܷʝ/@]>f wz_H ߖ1I6A_Wמye0p0龲Z$e |Ѽ@g)RNq~kHd4N?ϴ6IA)O#yZbO,QQ]ە3  ,]0f VET줾#7^ Om ~Y|3_BD;4H$e YFV-z27̬'BV"@ΐZ*RBnKm"q:H^.]Sh…4 e-YoNi\5t#D*j<2uפgSf/7sY)PHEjI?ؾiv6"ݫ<%5;C}1R"op}b؈.0 FmImwK EQvM2J$I6u"z.±yV35AFΟhT*/Yя&\.FMOYgL",peĢ@к6vUPS4L+= G\ KXNau-b0IO0-M}ckO$[;*49(TP'{kT@Q{/5H|N5Yw}_&"I3 Tl]2ݮ9OKkp\&>_0+)X`&=*^r(/#S s1710&8xG1TJ*{ML[mH7ZY%<#mkڋ5j^q3#D~h0Ltd!hH}{UPu4!OO\zJu 'Kwl礃Ƥ=#9>tbB]A<I乄IEoPA(0c,1D2v& b~&%fф3B xfhU g !|Mh2Y[e0|*ʭR=Iqb19F\@YŴ(5‹7T/6dF8){`2ZalUѪfNdϢ9N`vgaْ {=kfFa 9546!,;x@Jv{_ XHg) KO52@KbMjV9ztM5HM9T,JIV"Wm M\|M8<U G${2BKY !NuGV|_ ^v"k^RE%Wſ%D|,-4-B3V؆I Q/''|N#貴;! &䊉<ի{H /#j !3:YEX O{HD8츿#.ů#(i9~apOUhȷw4=oRk\]:;G# (*>l>@ɒ a4"3@w8`1(G!%^FūYit3D ")dSt}bƋ#elGO9\O^B>AcG! kHqsT. =8y,}K/z˧b&až5Ѣ84 y5:z#8ɦ ׽z~n:ހ\(pQLWAR7p"1eE_QAhbl~:ݏj._n`"`7DkY0Ӭ|X=6$5Z~ƝP]  M w_3!c̼Am.r,SmME=$CwL!'?~9(PC3m_ i,3{Q,228d&Vxdn?gKŕ'j%_<2ҥ3J_;:۩@?X!ݳLg/=H]se~3UI^G" ʸӲ8*ɞ7ʩDK?L+@- ([1?~~f-QHh lBKJ8$ 4 /C b )/x} [Yc%h@-|^Fy(,ZW㚵_{uҷbnW ]:BU VOSp@GdhށCiY*$I {gĬLot)xm ď-Y',4v]'/h5VRT u|ޚ6 cD!1wɯ-J>;yCcM7łA9pjz| *r$YpQ$R5˗#6w;&j`y<6$XɟcyPyNTLE ]Nq.tbVj]oXΈc)>ȷxkz;\Ҽa_](gnXɸ|QƘvb- 2d$O;g`X@iP-ԥbw)kgKbMژaFiz4ƀ̣?"&k^IFoA^=}J$B8e(?J[(!| G0ZQ@k [S{3˟ QH}*}i+3p+$"|AVyY.M難S>'MYCWp!YOH` 6WnS t TRUR=IG\/H8XaIyj;ěrC3q$&Tonq,Mrd,)FG88귴\WJ!Eu}O엝jJ4ifzf1U#|Ͳ*PV\ENVitrY~"pHc y:KD,ބ{u@ͤ)Ϊ!{uuiP(\#!MkvΠ1ԣ mYamHxn cu0Fn~l:c{y[ID[W!Lb4H#N-ࡱGݶy,|LԺbFjSɫ;4DR$&2?Y 2Bb2GXVmŭB˹˖qCP{̪|z'yۯ -X ,?;Xx hX\6 |='mk۠:CZdn, ۸LxNF}Yq0}BnFOKL_tm ʸ1Ǧ_z{I{+?"nR1\AՁq&X4xmHC=B]35}U 0|>`ZQn"ln̮OG=@f%X Kt<"8 ]Oeo0 h,4.o% ^;IY Iw ,.MUB9j80X: A0aQ̔ ޭ ~oj$jU /d[œ7 :!m&mZ%V }Vu$4 ~{!z-Ҁ?2 r{ I)xq=|=F20#x VxAsksP:K`\v\Z]r0zy+HI=OhiPrX]T*+܁Ds(̸!b)F;^nR7I7=_0gFgRoyw|bI"R<TߡbnJg׋ވ(ttKuErZiom0>q˸Gh\qIA6bvy,w$d"*7"e-g*궤kE/ޮy>nDW܃FJ. "vcՆEb٪XX;OKb׫߱f @Tl3×2"@EɤXTکOL+T!EkMhgT n"FfhZvPWC#M9aUWEV}- *Kll0ڞtD~8 8IJ?}Á߲9$DL0;7$׍k(ːoN'ќqwZF{<mШVLq]= m,;$6rsDy~^2C[ $|v%тQ)P9u<*>M.h"*:\kF,@T-_<Ça`?dSA|W+=ػ ]04ɘ7~!Hy7iQ.v"'wԯDI jFvRr !TqDQD-W3bd+sUh$__e7T=jFs%9u( _ +J/6_M޸ lQov ~j (3(x"=$8?XZ'*-AV7X pzouSzwda&~h#i)PzIXKέ.4TbӁ"x,. J7QOI^wǵ*3(5%lb)?gyTbi]J ~67s 'iZ!,,e+Jdܾz*3\?YcեsOtjkzYxuGJ^M+~0 1!yacgڷ) jܗ2M[|udr$*j6/$ug?Fa`~Dm/ b>J*c)s(L8mG]c4ކgH2j 0aTET>B~7ȳ52F@{f$̩/Zn lmtlhFz]sI:i_{ "+{h5< ̡mZqR> ?#˰= SUHn !fWh먨f1~w4^5nC譵 i!9w ?ٰ#WfgFW+Bd@Rgi[+ JLx+ ~qJ4`GPo2ɩؠѿty?3/L17O`@`Q6]o-*ī!MwGro|M}ú!0# 5f O6đ{TlQ7,F6d uri v-u0RVn;>zohgFق6"kj \>JMbsQT@T;I\:mIWc[ÅŔ{?>:ZM g Wn>w1Lgs r;2pL?&*Wkָkm6 Os_ҷ^t} Z4X]ahO{t,H˿ U\azHE%%;l$M \\!bk'B`CD~׸dp-l) oVf,#֍!vI8;i2xX9Z08oHnFd \ϝ& fW|w?Rĭ6C]XSD;'~@#@QL|CX,JV j*D *ҺuwOm֎+YvʪV4+ s=<T; Vi6 +> R~/B1 Ӏo_ H,C:䩕dEmwWn1еɺWF DoN`5lqY܁?=JYotWvM}t1XFLa8$wǂ$݈Z[:F߮,MM2gQ0_09#YPKkWZ{-T(q G9fQ06U.V1Ǽk~!ok?KSkt}? K ?J eN2:au%phAL(OO+}ϫՑR~yx\?9IE?g161܋~K6\~Ai(~! W#mr69=a6s4~RB9"djNe%l+nC>scEr ,ggVq-E1[6fnR"{$zfK7'ZW0r?l"6ByJQm`ClvoŇ9e3foݓbv{UxM?`u? )Ig%_*g~I! m4 \$O fo#z?YO #0pS\H\RpbvQ$q$9G!LAw0ACO_e-o 񆔔t͈~ZlzbV#+i] /}mB7gd@!f'#0m=#=g*qЮyW: ~N<yBKuU>a/͔920ŠaRcyJkd%*᷏&۷OI%s=^~;Y׃qe[HTXKԧ%z}PdB uAZX$ɵKuBIJy9Ho).Biؐ3lAAݹH;øV97a$ܢ;w ha˘v7b^WQuVU1iT&<:KH2v$s{n`J: ~'V,dzj4ɬ+g&sٶD ^՘!M_U޻\ƙ8y2e1>%){ zoyxZhFb]Ͱ/oyDB>t76w66ӂ;qg]lvѺe+_ӵ\6FpRy>'K b't(ފV !2i2f㽷B1Z%TmLtlh>H hn*10俫7M՞14@mI:͟1tBvoG݇*wV P)=wb5!w֍RQQl-,Fw(] -yjI.et?)²Së+A_6ɒj2 :fϓ$ܕ[wxlgL.ܨyy0aLɟ^otVN'8Lj+MX^>BLʅ"AHR(!{S å<@03U-Ku&q `GPhʨ^wˉ,_5. Yu}ϺTP]?Ŗn4K埕.x)u\U$<\r8//" g) E>4%uӗ*/ Cx1pua"\Pu)P DDCiŠbgn=&$E}f.<~~`'/*{XvAHn(k7;>X|Q)jHEmnc$q%沔/cܝ:el,IyHS/%>E>)";|&_`-9W.1qeKhϴ-_iXCrz@]͆{HNl#7sT&oZeXK UEtÞon(M_4{~:B]łVZU9w^l:!5BMcm/CfEnr=3Qp/uL.GY鿅>bs`L7zM;*G$4·[N؍{Af#%ǣ[\ļpVP(a(ا4:z%+m=zs 3{t:qanMemNZr6-ؠi50grsXfAg}g "!RV&2&D̈́/z6C?ABW\,]<ۊ3-Irp_{)7δ60X4@84}AvUv:#ؒrgc:$wea]ï({EjC7_r!j?6<5lWګ%(5d0D$I-[?ʌo/_d'Q@B6jdQČ b3씕 Doņ@y}鐒8-}q{Rv?z+Eόoo#` j]P|za~%uc]m>C$BaD# QwI3P$ ]+Y4zN;/>Dw^7=IxEEr ~R/aOnљtwYNRP>H mUBjcKu]n'SH@Eo!Ԫj4RD-P=H _cl@;8r^8zT )Ԑpm(ܖTM P %KgJ<W@ Cv#VSE&Jgi$oJ,p>D)l6BmJoj[V9MHB8K@תwՅEgE0 L^zF˾ć4U !08ŇZ ׽łO>&E[BDM 4T qM25os*)U-) h 7 ]lIu?\O!xGz#ίXtkT70e\D\$ G7Wp;+zkNY DwpKJ/&Gk vrbOP0[nA1!^Ik!a(7e)P2G ,س9-&;%毃ﳎm[z\LW2iz7Xعyތ,%|?dvjuy5ZQND[D/ )=Ѝ_)*+잉Hj8fd$fD]MmOD.[L?%MJc>P , Ox@A;RtR \2_&{J!ʗDy[_`hްr ʃT'l}n_y*HM(/k =iyg"R*wKB4\]y , Fr| #Aa[bWoc#)buXNxˍ|䅻O>2>RRjFdj2mp65ű0CPndﶃ`=,r| bXnEjc)땙 ҧw {$!PHY`)DJw= TSU N|#a6D7ћ`D94;rI@<>*{eSG qA GSS\$tj5 0%ݖ3 XXZT0kte,Nlybu'oʴGY'9ōQ+ j LjbVnxۙ ntFEŨ8as땕!e}q2tguERxS Ԟ×MV${#x#?qLۭG:ljQcL6r&,dx\iOYd(ץ]DbT76wT~%~ 7q1]R s[ٜ$F׏Bt$H/ED (PCXDkt:b_OpPvxpWIW*hom o-f_@8׌Ro:;C3ƍ4Ha?hC U\oVy\g[}N_R߉&Vi_-{)kAzjh>\.3[t ; dUKm.Zӏfx ؋XF7{ւ'ڒhdwv[OotZ?"Wu 5 <Ҁ`RzvsF:cZXeD$|A,d[@rnЌ"NAK4m —Lۛ5Vg#tFԳ`A4aD(;XĶO%EQZKB<&e4 D=o pRL;??EJ`5w@j6r}U kfF $f3^u&D<}&u&+F ΅TJmҧ=*Mc-X*GFN>*=Rg\J|cfXg4R4R>Fa wcy?t~<~'KuMJK!2J+2ŶcBB@x9<T=%Q->gkxzO3`##gm[fĕϕlte+6ۈ/Bf7zza'lJv;9%^Cg&v-@5Ng];k8d7vUjhXn';\6)?b)Īw6Οyx|, &%g#(IW@-yjVa48~B̟D kDF+%IKʯ[ȩp \7K;gD_'eԨG+)K%khF^h R7(>9CZoafA"C21#,=:}6yqʝ!;&pϑp.5\M/@V,/3|Mފ8t=mͼQWrcȐMHҊ?Â^ǡ>t>}u|"z']ET2\ys .z%6+ ܝ:=Jjt4n?uO)G%$Qq!\?$S st4 DBqX# B˧ &39\wblk/ ޵Wד[,D@U[$GI\j3s;JT ,ĉ-T0JoB Apxs+K,fS `]3? Z~BusQ1p/梼'7a4:|МUmnuwǂn,9onۚ+fsF*yk`O/!7u7SZ/Q'.=Dv5wG;vc6vh߄X^Zosi=9}b{N s̩q9-\uiCNaU\āhݧ.,8py9El($g˳ԋ}ӛl ęHW3wI <5+ \_01Vu6bT 3> 8.g5G ko]'Ȕv:\X&)VZ0n**A 9Xޥsƾq$R ]<Ƨ. X5[K@_54Ue654A0?K|቞@uO=;,zДl˓b%z ~}S؈TҋcϏ , ZXU5ΐ\cJW\3YnBCY뱙1&I{%S_kua~ݴ&%?b,Z [ګYkW>&)j2\RnqYeͬb;fPwf\!a"u ty[!k+Ҫ P' `xr3˂ ʷ9ur\|b{hĀkm !_8"C-=?6uٯ[h>:($ F,֑Q }[mdX2ж<0/CTuORfמLOC KKc Cs6Z8k!:Up**=Ԡνc=ҷ3WM{1ao&fEDk)z#1BXN %c_SaPɰmZס\i9qMٓobP|aᗾV`PAlGgdV1,xks+b],fF^jh!U\ac"P;pr7}n Hwhga, c-T+_VdK=FɄ _7"0oj}Y/pB<2+\u̺f\D!kv0-^k"$j~\VG,#=*f`azHmG-O%>S(DWHgY3kX{ yȗY_rJl&V4)CWzUD?AmvT| 'WG<;K+#Dx]T5Z i_ ,4\[AH2Eln<+Ҩ<2&09kߎ3(wEЖc0H zu7^N}/ &+s@'gL[&{Su¾@+^C9<)^D˄bHcpC,muY,U\aEz,{˞ޫ}*bH77]4 hky]v4ȃKriD_Mjl$xaqK)(9#Xb13&CMΟ" it$ 7a'4zAMxV3\K\3y =ļ4uP VT s_`/qN jƇuLf!RK#)|ݦpjk,jde%ѧ+ːk6ҳ5]%נ\`V`IYeb%Qoʬ= DbK2۪HD>:c3bxQވ#p1ƈAK';F.|C3yӔ )R 9r}~Q͝\+e26*#bh ]tխYG+H|xK f zի؞< %r[^~1 S}B׃l]rTwWs%cq1y{=Mf!-"!8ڜ- &_WjB409I4<뵵r84|j.s_>Tئ Oqz\6cR p1JX0Ad As~KQICv4HNEsC :%1m$L(n+2gު}h\Rn} R٘fa(`k^ZػG`ʓ:ok{EK|zqr, D =([ A oSvÁm pԯMӷBDCn˪ZKU@I!mINh9W=)M.!-x2K=`mbYH&*l? 6ȓuoޯ *B@|v*Hr T5(GzR$d$BxA01b/ƌW#9~,c ?8ӛ_I"ޖ/5Li7ĦxX}mc8ycP4"-G|7 5tat)#=(wIE<8 J'dϥ%2|6~5DH4[ 0bm6WXM@ݤRZz! `b/dv` Q 3tWiDUY(JIzջKv4S7M]Ƭ{d@AY|P^WV~GB+DL,rK/ W[`+;\Q/J̕AevoS=a=|YRԛSVʑ5鸴GJȩ*+"\JZ;S!WE-aJ lݮnJ2z?AH襉l#%dZJu.k&~SJA)ؑϔiJSݮh= & 29 >NQUNwY=03ғO19#eizr ŨS_Y)pr?5uA/J m\q6[eY&qx_Wb/Ehxl`42{@/էРv8`0 Nb {K;mj!Zt2,JSMz[ƹNq-duG3Z>)1+09.V.6$h<ԁtC(i^٨ѩ pEy <R184ߋr4#{E ;$0ԇRP v,u@J|I1Ou=UgbaI$]Bwd̩|L_wP)o,(zF)^CBR\m*9$kUK_oVPeKJ1r- yI5Z4|{m( 궨2ͻ&}=/; #1<6hjTX!&@[t){LWtЉ^ =B{_tRm7't,o5|q% <1Nq˧l ('&-xrV*QvZ&8wN?9ޡbp~ZjQ=)^gɃV fh.lhjH]=Û]\iJ}rM$6y|mS\ v{5jbaስYD*PZ/UC1ԦaplhCRp&<9Ĭ )EkB&47^|fڕĸj``KWAƿb+tL̟6,V CB0<{ESIlQ Rۆ(,GxahBM>Ƭ&d GU—b9T=i?5#fUO eRHv#ǹ.F_ltzY#[ʍ&š^YSmX51D_⛉ Pͧܠ/JO#ULz@P3j?|Fmnyfo;o<,x1@C#6(tFɈL1z`Ȇձ̙Ű$ NsV6НHœNOǣuO嚨5 _hT`J%GzNbp0̬˫VrϰMiSYl~e{lǧW|Z:RT2敭$YlwۥQۑg<[f Y8H^Rқb4IVf|GC9fx~őM Mv(gvxj- FbR"bH]X7j{m%skWPkT|^W ly 8$h6tfļtCArU@ev񭐳ƕ )^dD 4GjQ :+`~ܼnK0y_STvܢ䏡$ h0Nx ەmq'߹^jr,#k;0m (8gCiJ!=G(IG r6):+;vX "xmȿHz"/ Hg/lHBgpX۶TgZof_cذS@wH\lflo7ʋr>`[3T5Ii^lм~<^pO%py7?%kP1oL5eAD1X>e7qʲ%s<kɾ˵E5$[վ6b)XbU߭De뱩4tM2ĶdZ A'bOyh- ! K3O[єLgk|H~tpA7^5i.lC69Ҕi.yxsd$Zf ҟqcambsH!Ǖnc}Gfd^UC hd#k!*q)waKĵ}1HX%wU;DOꥻ~;q` \*rB(X>\Ap}Pv56M~G~As1/$*W.O̯Ltc ?&:UT_G ioԩ]$d^{3 r;?ݏBP U0ɚUa,(M4{E;^PĨrh%^mxPJ'f&㷄Rd$*ŧAHk/S2Y~/?|A.@f l&x¢izEMřo^ @IۚdHsJ,l*(9%zLǛQ1`C2_ܘPN4@nmL< ͢zFj'q~v8D.73>N%2+Zu>_aru^Nm;5Qi gl]|`u_1d9M܂EKuj&Å>QŊȩmFSMWp崷oqcs Gg4`Pu8=7ґkCȳ> Q Wa]MeO͏4]מ0Qf9 |<ŒЧJTuO \a#p N2ڴxFh!j\7sße&xu:.K#qY7O_biO٨h%!mSG)Ʀ4^9Yœ?w Bq>7KB/lX{ m5+ jc$(ܴo@jUA;PTH:_md6k@کyAA7D# -_{{"CQfz&/L* NFQ<_?Bo Of~I(؍ArE\lPnO@BnLQ~~__ec1K팒΀9}m^f!c$^46Xgq ô܍%R=p!c\K#ᅂ njKrE2m2cYg>35c*c~z\.>@4q^間!XpƌMS=E0i:rcnR2u\KO=Dʴ\:rEk3ʼnkK [+,Y))ႢW`[ZQn,:<>]4Mщwav脘TpnC6`Io-Y҇$ x 5/#R:jqC hsMk .y&,4YXܗ= o썵YV$ۗWq<[ \ }!󎡲DohmTl,Vԟsk,;vjYp y]HtId9tT1H*vѣ@Ρn!F_G\uL+96YWb !٘<ß^̻̓~(}@|CM:uoFs]A2)ZtzrKC?+X W R@ { ` } ` `[j=ػ_%=>N[+w9x"w0.,ֈ$Z)1j2DZd}@R#&kK`c1|2bq8t)<\J݀LH?7j7S׵r4u r3o&(:|Y`- n2 ΞQ8aIuH FqGClsPaXmaY,e|PJ~JBӢ$S˝V=]mA8hceWz5VGi7jKF8 hB [P*0OլJ'er}3?a-RRr_i}HD!wq߿oZT\i "L޾zATsTG7D9jRzXޮM\t]n*bm)KqڂA=HiwG)W:OL<".@ߟʛצLS;(rl@xU:r?$]"-'h!hC.KZKA"pPi? I琱4rǨz>{Sc#=ʾS֦Kt7g2 Xk-,Gu+@𭓫<cFƒiYMDI.{S@%[{f< g҄sPvh1Gf?mȀowz5e;)Łf_]ZMU8NY'm˄3(A+;to;An@W?ЗbQ&?*=!4v:TD%[,T̔Ŕ¥4v +\VO]D7;6f3y$On+R]P@cLɭG: pc/%O_&Wf.J/C^--$ 3J$VXW{3(VD0#Z<}r QýP"\:߭Gm}mosYnd9Tq]D!ZJ-6d4Hr]o;ƈ洳WÍ3&N^Ѹ-5gJ)`!mȔbIY Lc5"ѝ 咅HD}R3vzs)^ҥqFiHo cV ',}RC/| 2f;7M I4 9L7:I(l{u7%3P7zj#ի0vo;Y(蠉|I{HWcO& yt%)fsے SP`e0IL4oQ,|n/?-!U";ǃ0=nV3OJ"|Qy YAТ|hRH)^{ $g/8Q$(cq^=q[@/a xQ1nQ9CqQJF3H_ZK1J՘4C)`eLHbӖSPc:]ZEV3p,Vay|CЫc>iL@T[8e0:$2qག c'pSp&"`{1<0I^̙ΧGWL_8yg^aX+`uK+e㫊h}%a.fȴO)EVE4'Ӯ8N&'~Lg IbbkId~*K0ۇa0HZ4jǕV7q._!/>8g~aWïKcm~oւd^A$5BX͔;[(7?!MO?aӸ@v?>Q`R{\%ZY"*e==Ox)潣w)F 3NrA ]l Fj>ceT2Lq~'(f8e[p^zI׬]&=eLGY_Պ}R_mdT R F%ho*l{*6Iqc v ‘a70sztgn=\4\WۣZyJ!y9]= ԡِ.FøXx2nG.j!5ƼˆE?Sy԰KJ}@W?6Pʬ-mq(HDYW_ CNꖔ oKt/ MԢf'[_Zi3Ag1PLmi.IpdKgN3jc6ۜ:%H(si[zaa`;zya}chX#z~"U oє=U2j(N>8~Hf ,ig\c_ =7YocdR, ke5Xa\ ֣!q#uKBk[(޶Hg6t "ʫGc'z\vtuIC=Pk&]Jwm$>LC~+7qsS0x{464a Y+Eu i >m(h$OCpe )KtЌ:b1hl0F (&z~#+ I%]<|DG['*Wc sr_2_~].XE_)ACÈpZÇ%Dڛ >`O{?\<. mu#ҷG-n$%qLb躆ΈB9`uV@!=Ssudoz^5 TlՔ’|BjwkW,[y린y@cqŃGG)Gc=|tXLLKdhen fLŁT]6.OA#zdزYYU9*Z(~ac [;a>vW{xޗC0,~8}ݜ T t!I#Kq(J  j-,ƱfI 7 5g(r$nvŔvb}$MX/,DoɄ ;^VH!^y`#[v[Fw0/'xlF3uR~1JseGĞ$ʷ1{;G,+B17%qS:Oc$gtu:q^(E: .Yliq62'ӛ,$ g#;T ?K yX}" S8#|-EkazbdZ=[GjlO=ġHR"/~|HqTx1_^~F}O:XpjǙTHq nw|̃DuU'\Kak)րu^`EM):< \HR,YY(9;r9-zD%2Q neWC¹pb7boIml)>ƙ ?-f,TL]ɕ^֟`0vQޜ\ h-b?!qVIE[t3AՒ]o"d΢djXut 4T/y:V4/h*}yLӬ:[_+oixϧ ܪ*dV (Ϊ6Vu~OȲ]I&..V5щiɚM\X*D9%B!>C*}OI'" CD;FEI9QRN"Eyʿw 5n`GֺxV`b>Zҧ 7ȽqqoE=t(#|g>q 3Ɵ?їb}3٣Z?*a V%~ENgÒGkMqNjsCJ߅c<HF?F_\+nC*q֛jZO݂Փ>NmաIVq֦;O䖗qԭekMN$`I\ nsiEM}a\K]fy |Eƿp>uN)q 7sWԬMԑ@182 F(Aw$asF9\{#{X&yjq^ (z wQ\U8S!^Zv4a7^K3w @^hEn7d[&5D-rufYwvv4G,c1gVZi(4^UeOpjKoʏ i'"l5Z4HT]IgR뱅1v+P1f@m!!F[*N#5's%ܿ(,|Cl3>#C.%i)ragVe<1S#‹ޓi]X4ջ4/b$ 8dq,i9.sgN(ŒZ9wr&PB$ee ]B t燜F5ɔM+@ɜ󻊩Bj8;!HWKCnya{%@;[e{ Eɕ[X <h䓅 R\g yzf"U}vX]muYsQ?+@RPj,"#ua_"И=QPz/Lt Ӵ 1fi+ж;vuLtllBө qvl ^VC:i+ĕ&vpZ[ϞHy!t \R+>hf#tRчl~" ɖKh5O_;>ϥ.$1|߂$q{m'c[ ЯO(MayseLR:W:C ؙЂ푅;E2>zIfXTV뜋IAjfñ&XF>,+X3ԘհSGѫY}UǠh.qAѬ%|uN5yxӇT~VBȍiOnYFSc9{r#%Ii!Y.um'W{:~;e#.co}jVq:b}Ǫe{p"BYwWYw, ÙunX@Js`SYbm.j?&=7MqK %0k hu-rTbӴ,Ë^|aLoy]PpK՞"93Ith83#p?$+p1"!'\j?q)7UD 'o\1s|x9 0fF@ f7vzcR?z><_w>[.;i1|@Jp-\ |p V}&QK!  , }ö5 ^)cpJ3F|_a 3DH))gJfqf`fxNRI:VG[Ihh5[3{b-Xv2uMQ݈pT@ʚ51k$|My a@CgXiS?Hf]$,a3!]J2nea EcMՇ 2 ?1tctTkLI 7jϤغ=6QȮ@fwǢ sTm3]e_ch>wܵ0DZh[[knJyCU.:Ee[WpևMSbiJUk]Qc?&P]\N?L`[ `n7}nOWVa)'"\E;.r͹* kc2Ռ4?Zk7Ļf\!̗EE`%ѱѐ}ܝ5L1B<#D-svg#>P>ev)>((jAEEoJGBb;Q ނrQUj_0ROP6"gg) 0t#I ?gc%khΌaܙARt+X6*o" o ;xI|NA~ 7'w$~whO;卢N(LDL櫽|- LMzlou,7;k7u}Z5+ر#䞔fG%bX {%ziFq'\ⴋ /Er@ڞhzwrYx^6^[ȶ}ާs Zsb#*hN\f)$CEWdju\Ct'bw#y 9-A=h( XSJX -7T`b3͛Gw98%67LEJ-x+z;НYΔt弄NMN*x*L1bfJ7ɴ}|xXD1zc!eqX<o(,Njv~  ڎ~&7)uKqBMxܘ W! JZjsM#Dy&[^ X@ ĭ&|>@ZFg]cLǎFH^ɜ6fC JK 2yYʛh*ML?u;[-fJH7E" ~K MgjR  HTHx _Uρ\Xh'C>> T1u应 "|ih'Ar G+ @`> yB/$ɰ_^`2op[K $ Cw^HQ^gD_/;}BEX=5Gm4΀ Kb1vvxy7)ـNޤ-3%xH^]̂'`Q,\QșɆR6q 4 z1Qf ^+M楕Ynul TSm>v"2ʣq74eiX>32, $(᭕V+/49`7?Öќqצ$xvnFwLlx .D_D*g$ݎh[U EOEKU eE^n@C:,G3` d!#M} .؂<_R:Ng >]lK]=vc-ȩŪ;A{w!Ƚ\2XnxF(Slb.2PyՈEy`%ُYwot5<bNV|g@C$/>bK\ZPE!2O /scRlEts̳W$]1ō*F?[ SR3TIwWsvf܏bvuV$n^]B hCc'a=Q,Fo\JflLb5-v|u3`iߟo]TrvRt4)> U Df77c0߰l=pmx ߣr#m"ۗ:*m'mX)5~q)9#[ͦMT.UY_pZ,+v3.}b"1 herPFyqB\LПkt6B6tdݠTe>uq\| vK86V̩Q9&{v!Ǵ([J2 stp0 *FX A2̱R w5wBs6e= p UD%HmpXkPfGc } *ƝLB̃t0ZGAC,uuFy3Oq,tkn<討P}La&tRzYG'/*CHoUp&B^L.BHʊ7 ѫcwYGe^p5xR|oCe׈C*%ahhzK=hNy:sKOuGn^\- %YbY4-L#ɨ1jhѻ[ެ ׁo@M]:uOԢdWb730~u-4%_m+XXצUB2-H/ʥ[?c55Y1Oc#fBŎ .3GNȸLQtf^^@78Jqe)rҰ|\]lS갿h^FtaRy,LMxhK>^L.]⾁Z;:42i yͲh%ft!ug1UbY8JA<,/\˻<]uI%񁴛o>@xNO VM@(&;+8!ʠ[lL/DmGls ܦGb4z\XYM84rm޲.=P5"Ig[~O;7+o:v1}pq}|PBG)wmmcP5eNY->Qlēwp!A-l>O:SIRD! (He^&(iB -+NHdzU5݈gVSٺQX)~"ѡ!a\uM:hT3zADݿAWXmF[%gmyR㕏ӫxqֹ@0t=_* Fs26?%r,w׻tw}]SLE,1 pSM84_'%.=yPw0O*^x S}t^P/?l@D} BζZ}u+9Ȥb2N)iI 2j붦-m"3 m(7h80k05B*ܭ!ig3`/.4l~ ?zb+kO(-KkăоZAHD@O]PP^Cw`z2<u8,(쁃♂F{Z*1gHz$õ!N.ep5KnWlJ\yDuxZ5l֨7Yk3QtЪft:sr)M eLOuS^R=j.xIF`~mIjEy+zp{G/[oe=ܟ'5^㴓Ք8fPbi%[*?oa?Ȑ( јo&?zhl Z "D.RIW8)6_"K6ޤNBn w,VpVfO9 ޚ[J[$lkk:|³ DJA裕ۺgo'mQώF+}RqR MȼRځ>0ԛh-LβHbBs@ Lc8ʵ:PA[dϽ0X}4HVG?d)qdpQ\+iPpTLԡVZ֔/iRbMԈP@ tDVWqϢgfG:O BQ~\w 7-] `lHn+hVj0zM}|+(P(20:UՁ2f,Jf5w# v׶[P|0{ /oo?N6\]H@u =qnKm\ hył=HUKMpfjo;du폆'>ApD{l7s6 5E7'1;D%nspܰ.Y J?FwSB\kZ5g9,{ΜH_՞`19MeUѡ~"p r[ 7mU+;1#Uu{#khe>ZU!,* .oEߍ6PTNC `Mi/'gJQDM6.pUK;|k+7IF+0`uI@z6p]K:6d*oUs%<6 3 9uC`: "泌t AKo@\IUP\,C!+mj-h*깏:ް-4eU>2y&zI`e@^(J`6Yf)9Ia9!N/:2A|<[I)03&1c={2:bxi,A[jVPȪ,L!55/gK4"IS+1e!ͯpE3WOIo;O22{'|)1l[ʓIl.e=o/KXvҴ KͱG?/-jv1% TTAR (뛓 wsraǧ$#˂ mfJyx!Ogpem}؜.dFhݾ؟9ʼnm)sתazsc,b*G'}uSd>o5!:9/QďT2/;c:}H W4\0tAO"[tqN'gװNcU˚`7<}A\7G+'̈́ )(1 ~ȱE< R6" dHHœᠾ!j5#I$|*_">O1:Pg“;ۨyۘb 4#.s-@HkڿQ3iXЫx)M-2Nϙgݒt5n(mҙV1+tA/Y,+ 斏h'N)Bӻ \%yKRjZ^?~3?nsVO < 6E?Kj->*ѝ6IUw:g߁[v; =[6AS34Yjk߈i}Ǐ1+H*Z̘4qhyxi:v9KۛXe;B!֊.a ?eBuP~7wFCo*1 T&CZ(NR=Ac(jw:6#Jf[bvGy^ݤYˋ7CM{2{G.q*V%f=mmnR] JzZk,]J P)>w4X!H>'Ld=)!ğ s  UGKdi%)JD{LS&\Ձg2J W˜ԅ(4)OgUUm_vݱ#.ؿEoopƇ~lA>KacͶW?qaܽ?k5%i9EK ~3D4wfξQ]bBYKNrL]ϝëonAtJ;Z$}^w7 / +B,4oן6`a `UȒsUo=T74znȝ|ػ yًRQᮞJ]mu9L/x~ġiyp$qfzէe=cJ<2rz} }Gx|(RMmڽb2^xF1Q⼲1赠fږZn 84<^ ֆ˱}̩=D8N7c%,瘎)_"QzYy_n)!^< $:œfFC%7Y<`8PH;\UR]kÑXښHÿyՊb²sm 6 n)<3?ZUnl1KWI q)+}۷CuԊuE*l8(4 bPYf _K&l~&q}UH7]U2D;ABhR0rqJAtwž.v4! W KUS&z_KT޷5|bZp2k>jfӀ@!i%< 3aC"1›RiģO,2w!i\4V;әZ9D7/D&nE̽[PmT Է7Z!y$FI+GCElENOVǖ\Y9=a}em:XZt3C|'3*HA?ReLL>jN=ךJA(%-QJCƼV0~G|k{w1YPܙvRДX;9i1>q>Dm,VCH mA*~x6NGZ3bEJg"HpsSgwo{BEIԆPHhԠVtp{k|T 0L'&'"&hir$9VXMs'Ӷ; ` &;"Np'٠7;qI猴6z(3wvZ W-4Y uGȞS9"•16h\VWs[ 7lO8Q{F0fky(i`Z3x~6Xfcxg$jFpx)?RP%?dݿqhbyH' @q&qHcܼM'0&%ҺEPL&0fsF=λ1.AT Nn7qΖڡ 9G|=Y/blL*j|z5QꢟnvY_00cudPg-90 d`qŇ*vϬj!ЭFVgW틯PojZR!ɟ, DAdg"tU)7bĴ6?1.w MC NJ/C6K%].ǜ~*D ٢:rkxAf9qǓS<\u5);x-I&e2~󩥛PPQ|.{K_J^(KVS}]bYX9gծnsf\K,b_]ybƘsΌ$/d?/Q~Afg;cDX[lu}}ztNav8$MMfݹrʑӹ; yo9r+ak(zS:mIiBWE~nHvc.^̅@s zs9bCDŽqzʂ 1O3e5Z!=( zv+ߕ}X wu탹D[%h")~% -V?гs3bʰ9D- [~9qU2AvLP 31NةxM4Y/m" Jj[2A~OB@~J*L5l''xQ$=[Sda PVcF< -Q?C7aea6 ڿk.Ex]  \Fm`aOgb8Y!_, /zP`!HE$!;ܦ0_nfwu﵌hx2hQ+4΅ N{>վN,AW\ )r ׬cML%mf9G;뮗fN:pPfA M~?M4!zN057%LKв*8JQ0sʯi-SA% O77XsZW$}ttZ.Y9)|>H 2N_!1Fe/9M"_b-ћWZ_JrVh3%FD0ؙNQ=)!$팺GXaJ$^`\dco\N@̶Q7Bndz*(uMG.&+ų`<_N= xN9w.Dl4)*-0"t㌞F}YjIFD藑1I !8O#mVaSHWK`gFy6SzGꥆ.d@aS#l MKv!d9CC ɗςiYXhn|_r&hi.TTV)i@S,ȏ%M~_:|2[SLOnwf| eOcjCM|Ī9 3g7[=ƃѨ'KTzm- FOOKz#%Mtq Y <|̂ۖ}v5c?{=u[e1 w^5(yb-e_# 8@ +s9A!Q Vʏq?f 9 $u{ZT\ +.1mkz$zOx {̙p8ewKݽHva-] R$A-`OOCt17[hߟCɋD>1S OAG¬^e]J5\>>c,=k2;r*r̰=6Q33lixJ*;1kԯOUԓja/dV_߂g0~n})5$uҥ#]'pnS䃛O/ +6gN_n,wWfj\J7ю_H(2tAjC.p6,sU<¯4u{a1P"l|DSDL7;'RM$<u7nuyy.G/V^t8YGU#m(y9V2o*jsԌh+Zˏs^TOM8`_e! wL 8+Өygj22rsx&IP='fp@G8>&8Fer-PW~_藱ɵufC"nVQg˯ZmAKp*BwZgk?&TGSٗgPifdԐ=pV8ܒ {#;تBۿyrDv5nѼI_@|S:2BK( sq !LE<=Rz;I1vr] M 7d rHco% kc\rkJa*Mj'p ݤ8ą;(KEZ߹ 6o4}+XQmSnp?I+31Q';<^`}'U _8\w -U(Hk?8vs 2 l,$u]Es2*}N{LҌv?^}4WD\$n9zBPr8)G̝^M,B.aoʹGi/UR**/s>C):S| %]3- '&eܸDwٳ ,-VP!XV_"Qʅ@s a?[EJp(bS=ʀHvǓRTҘhAGԩElB4F#9"[ jPjRJ})E%*V QQ?/,Ӟg'&LxlBY3LE󓐻U3;L(t3/!٪]dMWGk}7匪db ?kJo e-sPwG؋7GP٤%Ͳ;PWPu|{±*mE~6:50Nߢ2W/e>WD>BՂ4o kZ{jm 1"pcEE5"Hy'+vKOINjp Z{BHtiHcB֍UPהXYʩVFʘ6L_CeV)\_[mL͡E켰`3nMQr^Qt/^HP7^*Y!D%yP~Yc>)VGGy;Ay ip}rnVsfq]gK Tsҿ<0"4#|mKH4t} ,jd6z D71V aD__bۚq$ybxZ}_hlc]?棽+@[+{s 9:I(i1;L<[jOD [cÄ\S +zŦv.z\DlΙ0|M^aq}BjR{t}7q#]{w=p* 3T[")1*ym\ ct3URb/Y zTI6p/"s(}J:=`a&+zeo66E6~0w5Č?߿"_SE)W[ c7p^F# ՖCn <%!VJ6=X@k]knUFԇPmf*wݘZkfCt5Ǻ[ E0=I|[ka8Djࡀw"U9 fqn#y+/q^%&ln8/#WXrj [YAĀc:[_9@:NCD񶏲-6(al/s YҽMp6g\E$}zMRXY3Dxg%W7"n:>t~@<1X]'wlis Zow6C=}vǓis|iZ93BlP=^koE_„x;% n݋I'\1F7 knwcxi N箆GIO>(R15N+5a]#/Y/x2湧cNXKj> ɝ9oq\*Fx0Wko\JZpH38czKk;hm忼Ufac_=勀Xu dI 5Ňt&cmFjqa7,h%RfDqO>(U~qñ|U<  Ѭ_AәcAjgK1 7qSӵ=#><\cMv'5,7Q* PUˇ~Bzc9TP.]ZJggK13W)H ,lPN$QbZl0*wX@ FvN# E4DnhVfl>Ҩ&++GS=L("N!#kq)*wHqD j ƿz91Sj?eT9Tee43=J_5Fha6"Um_DZXA׵DN<}pq,}0k6R7R7Me ){P@ȕIy8Qފ6'Ybk÷"D U7{W̤֯vfsuqoxwڰ޸bPחmҁZ9i-V]F+4.=i7" w(˅Kd` ޴a@'e~,ˏbPAWO|B1^vi55Z|4 yU{U"N4vn>=gigaS`,tkqJ:(L~B'¢+FjX^v񀽄$hfh ? Jv@uy|.hݢ%ĴOQI_sOQγ ,xQi' _Srڮ>:6wwU")^Z-1H,o%j0O, #I SZsHeY-bn5>&4jyd>\K:[~xl} F(⏝d@'+ĮKʠAh{4hK)K?ejFIs۳D\Zߣ1+W+ veeЍ'nR? 4&x~؜>É8ÈOw`^ natC33 gc3ӨV)mцNZ&-ZҪ[GJ) bd@gņbȁ51gҙL7,|v_˴ya29bϲ`v$W `1v3oX"ptaE1lO(CoJP5ÍbdpbIh/6Ɠ'.0c,&E]&fm4^s"ݛ?h[x'84ma"{# 0Y`gMO*(o"ɗ(ɶ#^2z9Ud,v%c˾?"'F ( F]<Ͽ,K<(Ubf*طbtbw%D3"4 X wc1N-l9S T\m[56ğ99P\)7n8=@1.waDGA%jG9p7Gp ͖;3٧É"cFT7XBMd[ɘ0 f@{YץM xesHd':xV9{/`H#g앉 & ͨMd l@Q J3mI8d^Jyd ԋ#uR,.fTlep#1p }`(mm]GRjqg%'H8i-q+HYϱxŒn<Ҽ(wX= h~U]NCIjt6bbtlHSi ݑ@ecɶNĬga,O^_#(˒&M©=L Ky<;14MF^SBv#dnH> ; ,lq Z`l`$96bQ#B#$REP `39\VZН~+p}!ΉehaSD%d3;M'PzH}zIe~52d??cI3tU*xg Aۧ[KkC$\TT"v+DOagX=w8zW$a1:pU(KqPnvcR)g(ZNNe*v6%4Rb 8Uh+%WA[~Q:ׅ\#:ᶯ =Vn|^ e}k['̩).#T sb;ptꚷgXF(F) g6)jQL;̧^\.'B[lH1f!Lyyf,/L/qA;g)׾&nwI(&o S `vuh!0iM|O4`* QRxjY \<8L:\MyF`MHkbǶvYtS@`͎VOoad}/Mx @{$5& Giv`nͅOҌ}~+*gArGHTh"N2QP+VXچ{a=m>0V`o |j( }0Jn=:0qR[Ҕġ'% UЉ({$hB>, -jx絴J~I/O;Z6.Q 4wPQ:5R.u[i ks ²stva0k {JW@Һ%/0MU]0: -v@"Nl3:Z>+?P XHh7z3҅,&]yf H9RE4˦rԢOȫu9"[grd+-~?2տq|O/h:W3vy:@ K}Yߙ>mdҁZlh&!Jva_i?dѻpj;+7rv%ߙe/xuNXn;{!#Ԃ hV4uإ'`iVI^XߖP4>$Gip)Ifp%keUo2ɜijuOط\=06 џO,U 5ėbfG}Ɇ."" i-8a4q'ُ62Fwº1u:AuEP`xJKG?r|Bstd_I./ӲUq3"Џ<^ZKV/Ŗ$sAl=C/8ny`\ 4Jb 3:8IBOYżN]awʁ( L-F;1_h}SSZ*w4x"߬Ol-fiK,#5+:-WC㋿#phFtO=iwR#fesp% )0nWP*aJg4< ȍ4#!,Js\ET?.|$g>6*`?/^t$Srodb?+׮Ab7Qdñ5S !u1/+I.?x|,A| CмeP*fVI! WO*da[6eI4i1 ['zPXOQMҾB}oTsn#B٬ ҭ0w[U8 }s;+N g{ 1^#P@XzLAm _3mu_3 Xh|ą}'b$`Ʈ݈?Z!~@#cFH(U"ъrPR[ғZ<['| }k3brwvG[k[RK$teKB*FN.e 7 ҭ O# T'WRWpq jH[cK'cN11BhCԱX~NJOBCۘHQn1)?ALf䃹 0;z\v5'rwhǕm}7D; CtfmhA3C%7IQs6bCXn9FjN3Wbe(#xbL zI=EqQF.9ͺ-_f^uuִAP4TXtr.Jq&z}L9 ǀJ)u_bGH2?~SmVҤ Vô e`jlXVZ6Xx $eiD+ֺyy{I&E+-Bq>^񮫟r7IjEzMtW>H$7'Q9g?W/u1AFYA6{Tmg~bp:m9{LeJ'Cu8GVf"iDl]˪UVKЮ>V0p*@E 4XFJ+PG"2nDœ;Bh+9iT#c3/{n ~@׫7gu$IØ_K$WCr;|S.?5ԋ2YJ]lJ7jg1@l؁`dIOϐ]g.QA81+lwICn Mctz‹/úߩo҉x#!,`3 p]f8߁H,x*HNTflC0$|(!Fv'$vڶO_\b1c9-R!1c &4|`>3b^զ0;wʌ# 11")8<[njwyO$/xf7LV*Lq0g'P̖!$"GT$#.{IQATlό`#c p!n7W3O15,p[ܮQ]m.@10ՂqD˘0K[ynH!8+O̞/„uEZB7q(r6'<+WѺu(PP P 5$p GGJ߿MM`&kMj _>BӒo9{5BZ?3ftIe@l'Q1K%V8e K݁O)ȆZI 0gel'hok:L{C頰 6+ǒk*B:{쁏 +lq5>Bz]I,ѮXVZ5|=ӅzZq8"o mN#i3 Ae cZ^Q//QiA\95Y44l J*bɇfHXsӭ@^>flWkR(JOXR-xd K9t,n8Gx10JM 襛 RR :f |*PR$2en7 )6G|ˋJo7,0)P+T$^RG0W/B^ q A<?9AwEY4lATiݮi/gd-F`Mdڜ^`胭G..<]bs?BF P<ś`0i6v-Η ׆Ea*K;0Zf,ϘJY,QCtO&pXHƈzwS;4̕s,oڠ!N#A|݀-sTMYpw~+Ai絯ǫ6o,Y?%8|ub!եb+*Ui.a&X 6 Cc5[PdJi%힟Xǁ[X4Jx{lR?ˎYP%>>Nj`L_nf#`]|kxq ƎZzm~ >q&sWjў0v[HlW_fc"$0DXק$ăS9{ٮS!èfbnPبw쬫|)_LbYz$gH}gGѩr<_bbK}QR+ ծǵ^Q%h 9Af*·90M&[ fKP3R 7U5hN&EڭM8:V=ۅ5q6kT'rʌ+JjH ܖNvlIPǖߗ}.-^nm$]c2`$:EQQ#l4ҝu ϵƉ$n΅Z2Z]NmJUFa'T3"ΐ~W@lo`=]a,`\sX{.DnFZt}B ͞\(&,L(.ieB C|\9) V(3dy|Xx|֭ma" OR ip=+G`K N##/9 [g7f`-0hP2LndYw a.rAS)OD06e2l *$M2W'vzeBo ;au']N$pT+څ~0Hy+t]x:ԁiPGy$elN^93AS,ov^Vqb9p<&0 S0CV$K[6{@%O#vOKs 9&N+i oф;m;$FZp]ky+ly>s}ӌϔW,{:`ɾW',NaY^(}})>- RĪ @t˴ Yo=0b1+;C`m`55)u7C٘si[v~bC5 6M6fcy7ͪ" e=>,GvBi|^O5ӠFf 3<PHf<ޢٗ3KbHVޗj#p5xD6~Ggk4))y MmAN8荛8EN6.\/m)|+M.ߗ(ث]AoMO-$I&"6NW6yľ~vu+/8eo Ie,{8XDCҠV@Rd끚f<ѭwQu!{X_" {WхOVY153횽%0Jahr^uxA 퉌UbܨnNك,H)[=x]6Le?üuv_Y)YKbVR3:Z p:sA%5 YR$2iTΨJ*[Ƃ[w(6g5+RPE=r ^ b|ELζmx\r,L#z}2D4=QlӃ,KHІl|wkGg1OO%q9l1? 7yP"o :8-w_omH'NhKݞWڞ"AY`EbqG7s|٥0l[!ka"QiԄth)7̫^RZ?6yBu 37Eك^ MVM |GI 1T>(+WOSзͯb'ӇgxԳi>Kq):XoOSs\BddZHŕ kѡ@F\O]=^T˥$yͩXA ՓywM^yK&^$fcvϙ'6@fuf_E_3꺩@6Ⴢtq-3v>G(ָ:"1k^6l4H(3Gkc%% X˃ &^+L.ݯl#t-*sG%*7Q>rXc eY[}Pf$Gπv:}Uz^_sD#ڛʚ7_ gs-]Uu*-jo9ז%bۍt ,lCk@,t,%2㮞It/QǷ<(: eIU;!TX ;O9 ޟWT@B6 ݓs[{V'O&H ׽7[ FhIwl('M/5 7(!8 q&;T #xoGLV&{_s.N?)VOH?q"n$gs%5G_Ӈ GWLp%s!,&ZK?M%QP ;H-mзad]G-j89&VL#@mm̓ [KlRΗBXS { 2WY'KZxb:k xVlG&\0oR>;/ґ`.Eg Un)[ȱχZxl!/jlFC0@3?Q-'9.4C&vR~^TF1JϲEvJNl;2`LIp#vǣߑ@5ql@d])f\Cgb::vW@ӸG;;k";KN(|+i|~;Ώe@,b$GXÔ < J`O,FgK;]tjZEoxwM5CWs5f}`@DA]r`Nm"^x [5{Xհi~%l^"N+a/;#]y-þt A펕C$0EU>2mfdL#t^}enцo[Od3Zc l*u?LZef+ݖq8zۨ ٍ4F!03^vi1ܽ8=9;X|)٩zƌYzvYOE((!W1}i lK2_NFWml^o'kYO oN>Iܖ[v/*gT 3rZLEOm֑ZۈaV ;0g1qqBK w&#}Njd!(G&CvwR-AOt]@ei^y)Lb/=>9_o La߈!wL&$n ļ2Ty.ߡWI@?|v·{R^CA;zlhVe/ #5nD>t1Mi#'x"-y-fYOm(+նA7ܬ`Ya,'^wE?%\cD1T6RskJ4WR>08~R%vMa[TfPZr5,Q̄Bw-n juFdX2UԊR+d2$DTM~1*75N^(92w 5nj6TAzEK]ɗcl?Lxik1٘H?|Okcu6A j *? ЖMz2zظ+,[ED4$ebŻnkD%R2F x޵z]-";PuR˱Ljl"nf0e"1ЩKm l_:\ s'Tc<;'q& l ҭҹ}[eGFA;FKebtF0kc)’M "*A;qGEw?qw>pTvn>`"w%iFuytKCg#b=0 \ /M 2 qӶ _m+5pi zץ9~6JTգ940J M<ٺo 'EvQ8iZ-?a T7ІhI&SB\(vRԦG3F/-k0]3ғpƉ8*5 VdֺoL%^uanژA$ :7sVVw,gȼ6Օ$@V?fNߌRpl ;NRPſpÒQIiYxXh@6fQQFmNۀS*>5}z< HVYoIB^!n 'ąëտ°:]jl0kf6w'BN͋2dխ=qSI&1qc=$nS#ZНѣ mq` r$[KqeQQwR]^+~MWx`TsM7jپfulh.V-HX1]l/tMZ (U>̲y)س<,>QQk]޳B6C=^@9[D,GQc4~F^ԡ K]Yqufk> SO\2 ֤ e6'q\KGmD2(x*(*q×'n+}]b%kUb!n]4{RU>ATRH,p2Cs@|2=CJÈ4-3MÆ~/VT%oW[,߄:ڗ@4P1B8ѥ~Rb|VK(d 4;U}jǦe5ZĄYZUۦ%I^~ SY6n4I{ kW{oƟS˯n(Rt.=A@L]lD&QXlNr̤r}bm.F+VWB4Gy,' R?S/=)`d\ D)ΊцA:2DT^p?PxE~\,KU ehR9cʨN K<| ɯnX0}=:X1= VZ8F!8GM?ْVֺZnX sTaKcCe93mB#[7F<6l>I`dT: :KxY, ~aw*2,/aނ.)mXA*j &=f32`:jA܆g/Do4%資r*2?>w ) )W=Y2:H1hxjj*~#J%\X5cc{#ۛC!k͆~7LuSFc]6n]1?q*Uq8a*MywL]=Hf]@䪞[(8;V9}yM1Һ['/?8o/G[# Ȣt@jZbZ9$PFo?P7~ |9[=Kwٯ\rTWϊ,Vt=SSm~!geBGr 8d %4YҦ?K&"_=@i!&NNů{NyVp3?%OhcZݔyD` z'ľbnvj?%rm |qs;LxE׾ZQR*Tݱ! U³)=ԱuH -]rHPhs3.BeHkF,6|oI[$۝ ASm{<\F:*6aPfzu`85\K岢O6-M[$8eHJg.y fiy0MJ8* MMtUw"^ҍ?T:Ԋ&Uh$b0 4?pvS8z>ʸnVN\%A?3*P1kd$pQ`H=mI}ktz/2YD5[(+efPP2&H+Tf!rE7"me#+df(\L\[f*X@Є2FY MB3T?wO#O*0yTMA.́VO.}ch [ۗGo{(yx_PQVǤzc)T'cHj먎sʃթԛ+kIΝj%$@YtC+*gN`C+6)}}gh!\-1?& i8{1^YMJrw,ezv#|2hΏBm<@P_qo%!(۾o7yYNvxZ:>+r~p(WoO<^mͶo. q&7MNVvAVpR1*1 z]1\['7_ %6q y-ҁidtfـ¦WAl<`64U%ᄇjJ ]t ؜vomB!CgMscw#8X!l lVc" 9ȽIf?$xq"+PhxVgtd^Ѐ*`#U' ѷ-x[]Gg67-WT&J*^ÛEBL\Zhqg <"$#T6;ļJ1d ¸o@ *ݙ{z(`I(Wd8U: e*=W Ux:q2?'M-հɪ`4|%K7( vzGv-=CS|1 +E+PW?4~ V[S:o1㑞mUExTpi,@ f vT[ l] jjI] *k>Q0v{r 5r ’Z0 ֡6ލ um 4*S5r [v۪iv+Ptt'd9Eav/Q1L >,ksL'_.0qp0},}ŌBl0*[f_;.4R{3(W7C7g$>Ko1P| 1L7L8AJc6v@^l1QnBAo=:Kn/ DYMc:9][wO=ϥ/@b<¥4vc0,]|/SQ̬`p7`K11=aOG+" d&ᔕIՙLdzyKA ;_pcOፕp me6r^cXiGW¤: qsFvm[ L1 ӹWIqXX ra:Kn.\DWlmf?ưVlǮOpYѨkȨL,'B_8>)4Py>Qz.x݌i#dɜpg,nE)bZj`ے;X<}7 @%_YH܉7K%t*DhsDbwTu3%2jE+50 Ҥ}C)LƍKc,5`b@"% E\%GD؛3_Lt zRW?Oyio#P)U[j(smx #)R6}_oZjZ/8$#=qnV8'amgb+HS^0wE(zn˜x€>کR 1A_57yϼ+zАI(S1 5Bm vP%}\tE̙ꖬ^$Atɘ.A ک~ܘDsWY Ö))ΒX`R'7_:Tr! }G+vPg%%ܗ'j|%CdDFwޒle|a<*?@!2NbZCѡCƪ?Y-b6HوQvjNy,jt*W w1b(kɠSi*Y]mKGr?I(s,uy.Q0!(؄UWzBX1,VkĪ&h6iۻ GtM/`&&ܣoY$Ōwx7fx@zH,ߍum_s]l/Y/pxH-Q[sA_M+y/%#JA, Ԋ@fKx--TT>T:?2xp;mMdҰ%mbYۦ٥\CW #7n}5a4_Y!l s@{$څBa{$uwQh*$\9%#>'e3GD2N ڎ"a!.y/2AZ4s$T咫d:nS)"=&99#M[GvДD>IKqܴ ZMItH;B):lfVuf^,ն65U7Je|,q]'V" BcyPVĝQݭ{r]zSd5&+iM|xz1CBA_922S ˝Zj'J8 OI4ѐ o{V2fV֩HD:ȅTB߇pgyoqh#3Ɣwl ܺ]D(B*R\u,6*U߰u]n.xᫎJʉuݪ4}4%(y1IG;$Y 3 /5uIQIGݑUjLZ8\B{PyTr7tL5"d2l\ Aռt%~;tFOdI}&[ޒ .Ƈ!ۻ 2eᒪs#F58&hWEmEөr ʳҏB [:iD=#ܺbW MHզ3wUWLR+v _sbL2OU:# h&:N v|7Lfƀ,ǥ}0 &3 v8[Ҷ\9FN$3X2ҝ&&u^/a׭]Xz(Nz^^`룅 K-˲pSKi3g-*_$JZBlu#lh+w _ý (;! ᦆ!tFEQ{=8EJ7`Kˍ{Wk\zBK\r;@=Sٻ_l܏\8KLdP8US6Kۢv/>bf-EAѬ<1UK֎}&vC3A3 E‡1@nOMIMLqKG^ʚS2uN蔋ґم{D$[檗țL%įo{*6PCM%ԃA-:-LL1Y[&jqeiu.DhiZ;*@GM~ߛs^{ӥĆE,^ { 6§6qi# ETyk ?v d8F4F"H˟6sAhguq'ϋ]"?(nXeS+ &n*!F@EGcޒ]pe7P.xjN! 0$%=3]M@ ^II][: p 0~2MEDœueu lнUU,z~U HP8![~Z IDqV9KtSYOZo5lYxy[j1t𧍘~nLc2mHGPk_;|/wJW)qm ڶE -R-QRh%Jlؾ*D/~EfrW ͌2rYqH`{лܳWX |'tǮ._vE#>E up$)J5Xѵ#z_en`;3o%yzǵ]k>!T+}襣,P噡f+Q 991RM X]7M*^zV@\f;l+ tkiQ`ΡUK豇A{wHͅ)xIU6<4Njpڭ_YYk7f0*:v⃞ma'`c!(cEt+i?:햵2 Jj^^Edi{'TOP\)7Yb D|' ߡ[6 W26">YnFkڑ))]G _8]DmMV%V*̧Fd`et/Nƒ6se ~|,-l٤"O: A(9Y40b-}'U1XSLƵ9\<󺋻 #Y?cah 索o n 6!I6VD7&єx&Z@UǂA3a]F}M?S<^US)k xYm%FwcN|۔MT&F*OZk%T܂fѻx9Н3"4f~c ^޲~D3[I|x T{i\y*TKs CRhOrgwD6 C5~f,n|WjyglF9‟*ظ7(!~4O7x~Z^K[ mӰ?2O$`Kt%J)F'U OM%ehx//8frFڐ5 *͚ NQ&&:LbȦf&M8;ѭYkDIr.> /o!Qe5wNQJ:l%'ź$ne:ዛAXłʌNj ӜgYoӇCUWP疤ufjߣ<8wZCw!jX. >8†4+Y8s&< B#pObWuҠޒa'?1i;f%AHԀՉȼ@8'&/ך@vѶ7'#c?_ސs)~$Ф)7nD>df.B1jj> pʹ˱ۧ.:7VG"k|=zL콯 Ӆt0+"* ZVhо1AaK;g|1M/hr{?:͸E|;>2C-Rrkzp1!]Ef: V}3+w5GDsb4in/*қY M H]UbtGKW> *EV'}94pqOg6>v@-[6gqt/" ԍ>& 3W`P"{J+D-씈'-@ '$%081[ 2Nw E{\rU:lo \@q.'¾9)lZ!ͻYu\,n >o64Š.v e3=rE]U1Ol|"h EP oI7.v,wfb},4kVujٯճ>sq4G2+EK~fgO&+D1w⮉eGˌz0jUN@Y>D&Qvgwmq,M; Cv6~fTAJ*[":z9tRՆb'?K$䐶>9~ͷP^9\} &Nh9 >W(ߪF8;T:c"G4zӤh˲-\78Kp/>|DS质r4}u0dAf ͢h\3{{pML6!8g+WE\9 9ĴV{x AʻM~!& 2}#Ÿ́m/Fis!aݭ;)P = ӇhhOEJ uU4"pK:X;ií>]5Y1EZ ALg{zd|IDne{ ,߲v_ԟcon\2߲A;DۄYX5ZKpKʌL\N<^ DXh"pP4+۷a3́2#:lbo'SmAnPC6>fdMp_15ڙ\-]-.ʁ]%~*ײbNYqWZ YyqyPj!-͎CvAiB.mv($\/D@D,gكTE:Ex>x b0Y_R`:J!>oo)PKv鑸l(Q=W欪^w{PNuXvًpX@ίfYq10Z9Ypqu 2PWEMXAS5PcIۇ q_zVi/)_/k7qQ25`]dP rL0ewd&X9KgC3'A  uSza mSFY!!>RƏ=Zmu@^wӄ2QFr>K!w]CӤk .&4q`1.=H^NO!z&Ѐh*:.4yEv6-io{A)xqרM{[9[\2t|"lC=,J;]g{KƯs` $s] ̓7O{6B&l@dy[b>9a|ҭ,ho9| :OţW+; )S> AVkwա*D?pecQy]0:#(5OA.HTif E3`er)OxIP)`Ae`z^5`&w9W0\@QplCUmdĆZ>n"~y\8p8؛GaLq7 ޠ]p>Z8B0pwJs-7{f(|}zsR˶u'SQUЮ Y2WɊ.$2Q^6,U.^﷨P!ww_p?Z{(;J`Qqҥ,7s quv̱S}|SF:Kĭ`֔ϬNW IKJز4菅VJ7TV{ ~&g`eLVlxneQ?<:mnr!K>@!$v?n:_k [+_]3Qai0vp8Fg65@"Ɂ(%j`oI}C (q'e+׆QH0% jwS8X2]_zߺz0v.ikȚLύ+AVDE7P{'UTix3:=?XQ{ F;a-H?P`+(r-hnߏ  PUҨ-JlK/4_;܇:i頁bZ"X|rG6-AD$h&s'(:lzJpEA#,bo.m3hoߕC&U,==[{_Bn Dם D]xpJ1 *ބs )領xu;`zSa-]}l6r(P[f CU T٠cMY=#[1;B&$ܯJ%xh.׼7b%–(Gg)lTZK|ſ؉:x?AeéҎ.t7sZ[o@>#,O|YbU{:cMw < gN%g"\&%I^V_8Sa|KSP["cX♧%3AޭN/YD`K?ˡ7HiMn+z®(;lC6!0Y&0<0!~d}e"N2KL)ŎѡP<[-pik}!K+zKge owL*qa_Zx 5 i^EX[7tɤJHN3hz ޔU&D#oC:wLP;gEZiaעesW`  g:DybQ_9~-5*yv&7pmm:J9pR(O6>?aÊh+fv @fj:9AF61"KO3hg{° Lĭ'}_Pvc9볒H*J N9^_'V4> tR1=v2s_/WKvhoTUǩюѿmx: _'yٶÒ8%x5pGFpX ~gsS=OAZ9qD@̍pl!\IL3^`] ۾Hqy޸DMHr lj@-E P%5}~zY`bDXxmw GYhV'ӔKC3! TQۓwr&D6ksE{yP+[3  /Fz9Ƀbn)+4=m9煜|͎ZuG(GHFpt5>5Z6& }/ˁRJ%ͷݺV6 J끹~fީ |=7}|S$IR͸N&_@Rp3vud5|TP\_+ C۲eFOPG$jL̰Ed4Sd{3 w7V;MĎ0Oz1ʦKM"wn8f-1[c?/1s'wY NrP֙vHk?.rmYw;T8; 9 Z s3m)!5MzVyM<5:QPP|V=nr’{}7 j~ݨ j_\o8['XN&OYp'V8O( R"1?a먊Բ4E~-ea|bNbwgٷaE#g[iA9\t|~i)#A'R:\+M;֠8ÅVɟ PGU>â!V|g>Spx!YS}~v#l'8ARPvW5RR :sqR4/RqXDF,߀?4%A3)۷NUХUYxs^jͅN<1p]4Qbx۸?/$|#'XaﯖÕ@0f$= =y?nثK=5,#0jloj\?*a}v,<Ѡ|Gm ȸYGK$YNٕE{WٻbHf[x׽OЈM!ǼP1i)c W4{U~Dg h d2D?sk}3Elhmϊ\)VZ&11\R! N. hj {,ziZTSP-, 8؄cl/ٍ2,XF[but_0E2-;CbwK|>_wQFDoXvӉKtky0yq)oV`kDF3lIDMYᗖ0I (jQo3AUl)%Y:.<|{99! ɗ!,LJQVm͹6}МC\RFT 8בT90xVDZv.I5B&vǀ4hbKʹR uoڅ iCQvB,eO|{g&a ]70\ +igǂ#{Uc7m;)&(;/ (vf2SNF~^L_c\kY-f:6MV4-c4߿ l2VhJbdF~؎2942~xRy]kTW@W7#IU) pf$+ڿrfd/Jzds8vc̀m sirX;.hMhm\Α|,G=jx[9H1D0O;u|έ4m~<.&2HKsBcp0)\3+D%A M6v:ԝ~ߧG"ڈ ˓UơG,-m]X(X&YT4u::|tHN=BCopJi@f|QԫyT&"z.&CBяt4@$pp(YM%kfAoKNd5@uR3% JX_rHc?MNnSCP ;"8wd FSK샭 Ὸ)ekilrQgRx8Oc=T8`}Ti4Śs' 6]ΒǍ%BT~T<,~0#R\3 ,/ ,g(3[~iuy%%B{A}WDcg+k?e+ğPtMtI?ފ"b{V&-A [t7yBzM-!ًoo ^bq'Ugy3VJy*VE~.voӯSiz~QSWp@fIGɜ,W,PP陞 ֹbh㉋^F ,>+F Z+یfc0d=M%9GtWs]m8n|iE7 N.;ϾEٖ0Ҩ(rn[c7`̗2k9Pg_GhvؖEFc[q\Gӯ>8o#Efϧphy;~۷JB(؁|YSG w=-g2 DpGBF;C;I3C"㋦Ԟ;/'pgg*5><(*KN-q AXtau#AN;{`;/Q0>&KLs\ ෭:z`գj< OHGO_l&L5T/hsإ"*n1\r[ه'XfUݙFHIdHK:(<ӳsxRA(+O 9=uc%dHqδg9$gsl{( )Jѡ~ N^_/]\f$Ol+&VI k.BuV$z 0(B[+,yhC1hU~N_x]̨\R}IZw|WУEpǼJmg[9W 8)sut.<~$ӝ^ͤ$>ף i^)sZCr?O8Kx+"chSI>q_az{ Zc;@sc--1~N +*G:_mo͹ms[rD%ŸFI<ywBqɉ ܧkovAIFɟv1okү"D\Jjᦤ 鄚MԥW5Yu BLtbKծa.>}&N_I!@ >kxP?R's`%RG^L8dꩫZ E J :~KY(CNrdU7>6@E b62rpRvr}Fe'!kv6 zslHLR:A/ 4t]ث6 ZN'/"Di#~yCnma|Did:T\F<_HolxSπxVSo>˿Dp=<g%-eEdKŖ>S8Q#M_p[!F6C/Jޢ>tVV<30+==crM+GiY0Dy u۪9f38XJ Jzl|DmSoa% 2BBDg%:R}՛o6 -{n6ىYV`BpNj8+TKgah xFevчVgOtϏ `SMmƏ3dpDp6 8vAvzս12gs m/FO.R7<#ZfOUB{'v9ڪLml|| gÀ5>:jpg 8I W*"mR!V8CkwS3mKh;N uȈBW,@xt7} i! #XSYG v[&C(A^'UJf#l !bgAd:Xp^H iml ~nڷ]rs78ea 5CD&yn +.%D*u=pK:mE@ h;| c~٥}f<|d<$ 157䱥1ܪ''aC Կ$Vg(7>ۃűYlғ52t{A(~!DNN5" Wɂ*z%Rx|+6hh*u,~ar@Z2%1R*,]\(֟7=Ӓ>{iUzɟԔB:x2r^'^l{($fq[w Rmf3N0*㵁 mjxvV1T R&˼j8 Q'#ѥ X~<ەNS|G8/8HL20Z$,cQG!3x ]I-t=ɣ 8bTɓH=?z2 m,kg66FSn:YPEױL3K;JأoL\\tN]NVNa${VlV {""SXb *#8ē#_@(Qox[& 8eP5LƇVӌ*fɿBMh&KikJYFhX/Dii+2QfRڮ;~x}$pLl0V "fU6xbt a%,Y~[#k5EWyrO )=~w~e%aIZ SE`(Gվʼ0c7.Ѿ9z ҷ_Xvh NP'i^\e[&+C/j@f+rT.+[*/uFrA;\W> { iG gD%lya&[RHԥ5OG} Ȱ7 gJD5/ XN1.U+g GMg4q#2}j4]Kf84!ԕvGWJ@]j\_с}_ 3x7;ՋSM^hKZK!`ԝW+iyY0՘_q|7=pl'AFڌHfN_( !L^LAcE .|v&]D!g2. 9F|j|(q~!tdZ9JQ nҢSs{]T%97VFO VĞΌO޾1p)F1HKhvȌ$X#u5-&LYC5 :&ZkOS!BqCIqƓ1:JrMOP a"NCj7Rf)ηrTt52e% l  `07ޤŇ;,l߾-Ck?2!]t/$)P8H:h[8> . Y@Q\ש!3Ve}JH }*HUDSƜ:(͍_3[ ;-rj6> |j-|:)cX B sЉr`>8U7:YTE(QMXR;-fAKh8\z!.ݻW+sFnYH-x")RmǬ1RSo-F~L{ظ0ц&疘=CE=+FON .j'+0ACHΖU]EjSz7[Ia&[#HCTMsȋ "ė,m6mWLn'6+'LN3tè'z]X8 :cmBj8Wf5Ɓ52=^!O:jm@h%)Aユ/ CcBɳ C'Tb!y ń5 T!}wQMmI# iݷ&u Il c G&KOnA߈[CV0**9_BV9e4*xQpiTCT$[ЧL0f-?Fo5eHOwB ArL䲡Id][&ЬcD"nMfT7鍋mmf&a"fNpsxj{28 =f\ж+>]&4ߩ96b9~ZDsKAVF893pÞ|LjTe> +*!k*eO*h[_{8 F 0nY`$?B6QM= =N3GҭA#y\ D*BǍmoM1_TblLx"95~'7yzG e+`/vsBPAwQ]1we\ۤv*\`1WL4"D(wW)Τ`&Quo[N=Gkވ 3VfNÏ?u QQm`[\4MkrR,=n'?\6or?0;c%VY(0xx/)*MD8bKw>!3hK˵l(W׼[h)/(­GVmVrW3*_JXZ15pqU:5kr*wȕo->6"1'kSs0b$Sxڃ/>08}͕*n!Q]d8\#Je /ImnˢO~[^\.Ȣ)յL[E[.B-q@NMU¶ϼlcȓUCWu4 ፟_Pړw'N6F]\qGkH>dv)tҳ0%  ]pL1]M*x^ .;fjMdxO=q#͋2,E4!aY·1>Hhs:ΣX_y)"1J[/1)8cY:QC>jAmQ<Pd)&R QѵQ8:x;η-"n1mK XZD@+_,oj#x!˽~Ł.mF63KSVI~CdT#Q*RiB?KA"}Z ɱ!KBa?`z,AAV5"2fR|C狱agPr;N7IxsJeGFbMfCdA8C\$XlR"Q;k:B۽4Y޻%zݪA^Y&,FCTyv}1 qx j\o-,thDX]!j~aEs c>ֹMgrK7M_z6i5lQ&̹tx'myP3 J^f*<(-ݯhxvy?#ҕ@%!#>Vl4lUK>Udc,^Rod+em]3QwigDŃ|Z,\ J5ݨ |$y2E)[:EaN  z/2]G:>P̭3UwwEE1Sd;FpZGuhQ}XiA*R9c.I@s[pѓBꋳ}⹼6$|kԫԴxs;H5H2GKoYq]pt 9̘c _B_O:ēMP@+c9ĵۙq3dPz!)c}L`!~C *z2?@1ꢪ 8gcvIu aN>؎}!\91iK^F$I?1#AHvi& lq8. p6zBEXR4meF_S0MYd=#ۜ*4Mv3&(sag o@ d : ?mlu@ R_G5ԍ|z+%p  n 6 \7;5[T ?\Zч0W= X˾ D I΅U XAug B*3}Fo"xI',gp~31h='&-"#wx)fjoeWn&\d3M=KjJ;ɻ U' ݨ~Zx>T,ފS]D jԮ49Q8K'a|V'!E'i&Fzvǐ6(˼6Ijagpn~X}qb+[ly]X`u|eVqbx;`pg!4 cX4nr]U3m/"=3GC+mʬyQ qVK˿) v *g?S!u䵝*(&C_)&s5,m6'\&t$ 7^=`h=/* *ЫL-gB[o**j'x$nOYi 0Dk8[FF%CWW+'$H8JbǢ6.0 ;Xjf8"a놹Gu(8|Vkgy9oks}N|'0U8IFJt ҟX8l·z뵡% |c`UI0,EIŕ<7rc}'Ӵbv-08=Qf,w`%e턂3<;ygb0Ǡr0}dp 8?$YT126>y[}וdPI_a[cH\pe@Tӄm!DV0;%Ԗ'z 6oD"J|BgGV`"AY'2*oX֬"E<C9[ވB3}=u[ue mۙ[0ZΡIܧbB 7Tqʿ o@n[{%S9N>(E{ leπRe >P/,)Bځ/UaCԾk-[,v^(䒍e\%~zgTygߐ+⥽3GCXAJhBraqQD%~Ww1{d葩'm~ޚozr Id?.lV1}8B ly؆9nK+qޝnQ.r4{GcB[nOUs2VmD+bo[і(J-3y)T]! kVM׻/X_ʭX9ͥcX@@2;JY:ORu\n.ߍ3>_f)2ee;k`g)x ӖeQjxB z،dG_)M2M[U#"{oh9\GmsJ|4BQ1"ʋЖNxLkIo2G ޺ ǵ*xG8p(ڟ$ǀ9";aXjbʬ3|yL  YxCZÁV_-s`V7B3*ᮟ,Z"#H7O쩛u /rװ{.)|~%JD-.̽h'H3ghBݗ> Kp0WHS\DGF"&(UDe)5R25QPdJ90WqͻELyZdY՜1/I}^LINbTNuCk ;ßodjuZ3::pBXU=յok-.BAN3+LЀL.?JWXI\z Dg ro,6w[ߗc }ۂqX8\x^I“8#(@EQᢍr.ky_f}!¿ú J&_G6 >eǷZix@ ˺Tb(<ژBo>9uHpI :xttFN~ 2AK ߨ38CI*f)m~j;K mʤ>K4ZE(},#ڣK낦kxUB+"mLl aL2eh-QQmdRZc樇fOK ֡;11[w.>XV"6\*nyL%m|p;͹b~W385\B͙ ' Jp1$z@m#>lrG6.uGO~Y,PZ.6Nk. 19fU(3 IP J&.1,‡!}0AzG ,K8#5_;5;V|Ÿy7)훀 (+H6d>n m;>渑w^BAr@AhvfNSw~MP„kNg_G:HM h3;6zX+ &L52H} K͌])HRQoХl]l@Zֹ˦WI6 +R&(z14fwN (0|4fe-qrIjlC"b7O!jBRbH!,n2_X}· t" I|'Bus(07}\yu1-۵|m9iVAWwM۩do$ ^'<8AN[m//&bb8 mt&|QW>pdzS‚񻀬Um|{E=iVR%dyG/iP9-M&`Ne[hM[ yzKXMKI=]cP$߀שlմ,]- 9gagQ:+=Z@9gNׂuTvYI8o>:&{48TtZ%\d+ۚOY tp)[/Eu(Q+Ub:dm }F❌z|$| da ɺ dwBtiOX TijvHuSSΖF/".S鞤؍4^CgWIggFOBP%;6Ŷs|v"BW^։)UE(~}zà$ڀk먈 g0}oׅq-\ gD@- e^C6; d|6)᣹W٥HVYl$SNI7Vq^3@-9GҰE} Y/V@YQkQnX p@j_QBy24> B33ffO_0Oa&~z#uX"EזchfBf)S M$d)EMLҖHNF_J/|f%zOE9l1qq.t#%dm9(]0ED43WV%k[V;%;_p.%h8ȷҘp( J}h[O(n9T/>ȿFr!~}rɠv]EI-݀k& Y1dR.B=RК`yzsm@#wq021A"IBOt`@Beἵ/#+8-IFQ˦{ YoBN3oD- ۵8B@$*~.=J=q?YqBgVE`#a rye}WȰH$cT4jbbc@Num Uէ| 1۾sRe>ۂ0upp܎K߂$z\ `0 [dLAM^TugKp`%Z1D=Q8el;{)u 9kOG!GS(<'fN;e3 K= ׯG@(QyZȋFgW2ca*n\*, [.TX4m_vavdznC:~ebYC8LZ0ϯL%gP%K {Ƿf.ا98+tDFt ZDtiioyD <_}h@|")1ȿi~CB-.Zai-ܣSKSG nO !`o܊ʟbP\ڥ{[i ,:^~$gsG(}g$H%̟lvi#wvb[r0w)5$jfUPnj}8b}IHZx8wl^o*XrOw^؁3: wF83fȀΛRe8WP߉*vErY8y(B5t"%&=(*S团*Fo=M5(ɪ lOfoc)̫Fbe*POPdA0!&*!K7]2hi +ROz& &Ͷo!Hql)?EVַ:r甮Ue/ lN^0vaFϺ~ ڴ3UgnJP`֪׼6jXM q#.Vh2\{>h6͞C՛xOh:#> I0ZUht&+]J~GʨӬ8נ:U61WM#Iv Fd@`p]67.ᠥ(RL~-'hP3G}A, uW}R@h;WZiʚQcCA '5'LQpy_'c KFH@ߓU[|$*EܠioL(t&Y~DYu$3 .>VOf  ۲`|o9ag.#Gҥ/-/kw෰ (ǘj[ق xgWkG[t?^UM8?kvvAW]ol|)i1=G2.yd9T5Fh< "1 )*Q5SF]UiU %c>3_K"m)Q)pv8Wx<Ć# 1ktu& * p؉`^5>g!l5:GA4_C\iZ9gIl!%-,1:MCõ¡:S+ 4f0ežv SJgfo$/u EzA{7׻ # G;l~b"&[QgDuUoŷ`R5j>&rʥXzd"]ÊLx…z/qâ˙mˆRmXwId-zZ6kb2ɺ]l#TLcc€s?TH!=Mpk@f_9U/lDЇ B*ۧO&MD,3EQ$sⓍkw˾^g|,M5|H5"QP[/ұ<(c:WT҅Zg9"JZW5|k0G@n'?RI.W8E(8%0up/*UEh; #" "j)Z?7^_JIhwN<b0Ian (eHJ _&t4D/ vEpV![1G'TzPr< ~й]^ 40V"8F*HVsf< ĸ3B6 I.jV{('k]4t`sev͟P:Rvɰ7)6m 'dCjr!{w(*iEɖ{N!훷SN@1\{-$|6PpT:ڰd#z­Ux68Ӕ"v$还KuXƹ󱆷?iD&ؑQqч43ڱn{=3 $\ˏU~9U# ̏iխ7JaLA@7lus˱j 0˂n˦(f>"d7rVnPGC Z`֫CPZ,CUZMty x̀w:֞ktyWYrw$A-4>{}Pmzs~ɏ2) ge;wx P@s(W}B?L=OV?ܭuXbۣ9: bjI!=pm W/)Zm``{#$;:^Va2W"0YpŊ4}`̡ 8O;45.SH%5}`+}/-}zZA?9ʣ Gx ]I49%D2x"PaB#x7qN֋ז Qkݯ Q&q8JHfqߦa G];E3W<e^aȘVɿ ڙv@<Q ` C =Itn#?۴.[2&Irv ~<î +7vNOwS|Zb\gF}^!%€L*F݀5wu]D%5&0Jziy7iLZ/ݹ؈E5Tpn?J 0 Q.sjVflf[xap˯JCJ[P?G(|MT=g0[u"#F) boCHH;C P8[e$J^g8ɫ>)5<s LÄ[oL䤁0)5=<|5[ppQA z>lRJ4|lM]7tiUۋe{Pm?ȨPظ`ty63h o!|=~>+DZ ;j׻K>tłB<qgyC5甙`(cU'Ŏ skFrIÝbDxַWG+o詑mQ}iqs*9I &7 ="~f)6-V A%pNͦ~bOD]7{kU||bHŷߪv'*'^܃ xsz+?5.l .PiKWnZv >OD>y|v]dgy6,9RSy[;bh4%:Y~Q[;p?-jHMn:iM@؃hK\%Ѹh58Uϑ!Pڸb"R <@'BNkA~0+Wͫk^KR;3‡4q;OPz7Mxj],%^>i+6$)|7ff/v: 4B+zZ9Bm 6Y[f} Opctm/֚nOldvG Sly*oJw~b˅m?"kW" mxKc*nkӬ^MH6.w_ %$ O<7ne~3c]XvJ'j{!{E[%vܛe_ѓG@捄ո*mq + z)3@mB*U6ԫ :kh-fݬ 6'(sKx+68(&Of_VcO -N 1|8dpCyn5g n/ <50]1]6?qqM] ,k>!CwKa4]T271eP9 JtJY:sÁI?@Lg*-G:S.%I,m:([N2y'e / z/xރـcht^$J]C'ߓ<FCy}q)>B6pM~ACd}S.sZZAO'~KzB SVx$qMGW1;xոՀ.;Q'glW7(y/ri R%@6pO}V#K`=gLBQUuȿ L_,v=Ero $yi`'+*z'd?IϒAyL%e,TwA;0sa#'Zt.-0L]4&!^iԕWxU q\ǰ>ix*ѝ[,:j3'އ}{l9H f3V_Bԅ+aנZ'2vᑬY.E]ksz02? ٍ0}x3 UUkw A:.s A~ Sd3/t6e셕piLjb'ǚ ߿͟]Ev"Dp59 )LG.6FLyi\  Jl+'ڸ.w;{y&ɷw\="Gv<ݠ>hMt@ű .ʼnvȚ$Ap"o?޻Y hmM<  jRY57 6 ;F @8EЋuսmҹHҽb)dfq5 @4/*#ۉRm? 'OL37*f(j*Ȯ #kO(?֐2!{cWϊ%U*yF#%/T9,Gҏme.ґ 8 R.Paa]@)\/g&a>=Թ˱sӭb%RrA_&h`^'_\_,h5R#ərNUl73̀X]Dh(ろK*ǔA’myq&FE%ntw?|L.P)xi(#t76oNnaaņӛZ֥hcn[ *Mh*p<^[*/Vo+MFrYP)]o'g5J֗lW(ѰK8sq/>0az)>achJ%=^gn26FD3 6uhq۞Y4I"4]+|7_lUHT3(tTlG夠{g{s]O_jD?=)q!VԞ.S$(/Jcpv̲^|d!u5MTc.zTGYSI.Hư'=P3DBm))*n&ZNx9-6^2ʡV@zzDuy-SDKL@`Ǧ_>S*^Y27Scrlډ1tA(ubU.!S A~}HQa*_!CI5 L!e{5>4v}> 򵶡5w Q:|VQyAYk"ͪ ,W0sk#R8̍U?rYe0M}ۺB%&|}XjCW3ARz+U9E{6)qіUQiA^)p(t 5=w(*u"FNjߐkRӅYu [e_Hcd]0X=W,oMV4 mhb$n L/D#Qּ%285r &H#o eo읰-UhDnc|xHu Mٓ/TݝWgg㉿^)&7F 1Y}Yhyofa dMHbc|⨵/zXV G=7&(譪S#_6kiؙ,BZYxK$vO ZDI> S 0ٜ-Iopgߒ8<kI*홪,X$SnGϥxo]bBb ~ ; &Fz6݅&TKiݪaȔ}QDinNt&f_j,JY:&q%װ*t2- ⟝a6Nj镁3dE4?5FAepyl?DDl{0_ٝ /$xҾBi*xLZ)2IKܢFrgYu>+&~ ou.lHTQϘ N:XuMQJk$oH % 4ђaʵƷQI3&|݌&C}? oXEpI?Y+n\eMvECh%/WKǁYԒ>"\xtwl:D[E/ Q];Zw(18zTЄqv2u&rS(vJ{%?+pV=yuv>μ7 ރJEFb!̞5/+1k1gQp<ղXOvثʟ=})]drza92 bo28ڝ@:DjҠB74dQe8Yht1*wB b}4 նAj;C)R;}:%K&[,mi_s&o]B( ]G4w* AQ!_=[ϩQVή&"(x7cB\1$ȜÀ8ͦEy6TP.xs1m2d\zw=bÄ+H_y(䖀hƴO휱xavk]s߽#BLͥ!w*HCZuiL4H\IU KZZzOIXO; } \?$ nsR~8zZdhXhIc/2+?%}!u&hru&o_oXIw4šI۽ .h$)]Nb|Դ$TxIw혈nhN)>YFzW%۫η* 7q! ikY;@7a oX.]CLg@j/p&IvjcT=`žmFC^A O'&My-󧐂j\0T\1[)ՠCN?E?RbflêIWfM`iAe}p*XU?ׅITOG' ǀ3b(h|SF{Su)h(Y︦^t ?ALptw^ˋ_޵o_lq4,,Z11&-ASY<_Ш5[se%B8]ЬF2*O+Nm;퉜 cUqI? JF ,ԟAwQjwh) ,lb/2N%~+@/Üx1δYI^֌99}xeR.fvNp.㷊1n)p!yƋLoć)&ٰB\7 ĎXX\N? R1HjPOv:A6*K!`Ù}&_Q}bn]ۯmxRʛF~?RN"~.PGcZHejb\~KiG o2.:)Zq0ڗJWQjK> :˧i&殍!V$oe SNBu- 1$(fZ޳{pqW4,8%v>ҀRnG~O !AȈIq0=HmA鷬j,#!2OtvL~.!R̿vƕ3YTaЏ`%< 4$bgW*Aj]}k̪3%iBzdNJ)ˋ>KoaF4c%"\7YvPhP9JqPrHX1YlmըTUFtZ(_+c~3Hb5@Y_J&CI;𶹅@wa27w'[f. I+%@ky[G;jݷKGH66ô}6Q}aVתp%2k2?rxU9Y6@>&Gk}_ ^2k:'Up3g )|JQW=gR/d$R. 9̽cEZ\` !ˡ'"ak"UtkoX_u 7 tLά_XPk% ր,Y!y_za5l0Q ݗ)e{CTv͆v/;K>gycsVաRBqH8ѥ43ڜyo>]p̊|v5rSh-z$F8á2IaaP,wy"FFӥ[1Y,qowEe[ĉ>e?%8fd .@DUy%/x4D݉S\i?0ŮP+wT,*W")~ _;A nve [|h@B9@rWeصɐgE(YUZbRD2jSgQ Kb궳ZϹwL?ŃIdK+{`>oUf Cڐ$nme LQ]fHtƚ\X3ӓ&vHNI}a&ֹI9{PHe3lyYSwJc|MK,!}lȓ[/=vp?0J,TDF>$)MFNίa'XENan|9X2YV_<(wRxRi*dTQƫU@~Fe2l91I ןن pK6P2Gl# CgeG(e/*AJeK/p=v:kmٯ:qTd38#fg{+3Ȝi5eԹ'M ЍO/Qg F`&+OS2%!vI0b EӾtP[؛Br7ɀm[n~I>f;W&ҴR|Ce6ərńPnaLJk7.b6rΝ%zRj)PQzesڗU- 5yc&o30[Ң@y{##f 6\T,g;7X 7ZCz1<"M/f1_'%8c_t’$#3uZ𬣮c4W{%oӨTsGjT^5VuQ&"@yўY)bc|F4i@m1n+lk m~~2OеY1wUrBN?dK6/Sy> S 9-2$? [#TEpAJuO)FpԌ*.$:d?I1*&FW^l8"ٷK%%)W1sK 8|]|]T• R1rv-a+[O@xֱ=BY̌rB}߰['xVSCҘ@:K?ڭ8حQmntޓ*4)8`Хԑ{0v2],+ω'y$oipF^+CoXx2M6l6a4R.tbQ5I!6A1(( wX:&,?6wIX< +.3>|G5WDWFQr{}Si6dbB{UOXĖ7u <$B R1ϫ&,qZMXi^]e޷6'e2&p, +z6ӃP&U߿pLMu䗩ulF7Lbt Tק9 qgx\NG']&oYέv*imyǥxVxFOp# ?Xo}ى }|X=Df%?K'sWt*7i,Pi棎rP9@9=#\HLB d@+{w]U "C0]{c@G#zpmcB \N!GL.n| {EL TNwW;xZ U0PjWr\ؘ.y<;ze[4`dȓmFq D|9`z؂HcP@F O!_3 PQrzB7iI*m!XH͝G!+79mv

L֫DY,TOAɉ!)dp x8پ7EFeߒJ8hUk5fTgy2Pd|"bzo ;w$G_*ɽZBr& 9fsY{4BP-K>)IU SJc'Ϩ:^uM8jJ|2i{=<{"^2~-=I Zϱ 4sʀˍ;B1YE טQc*uҗ q"^HRZom!M fҶwX#[_vV"u < iTrnVq 6g\%6] +X_}<ɕ5〰*RLNy0M $# ϰ3.Hyx/Y5`8G[ =v{ K[ܿ IuWQ:F77'~T\ƞ~a;-T4r;wXogYbްZ!\@8 Z^UqcaK*5J&:ƩthXt1rh_?=,8IzT@K nSaw)%lR9)Cg5,? cHYh(ͼv㯵# #Xgp~kyZ֒l߽[o8`"yl>CȮ\:GJrqgP@_H7gY uRcRP5VspZMNXL?TH#}w*庆EYOH+tQng<] m;TĩzK20$~ A`Ri'D g`~Yq}OՍҁü!ŝq?*”_g}twy-Dt{Xnyu}IJ.ĵkU"'كn؄dA:(l7.l%%$usp'V$XN^m2EON$K c  5%!l …:*cYПlo87 ORI-8{ A%Q'瓔;ɀCQ"vþjXHk4K@Y!w!~V^wP)H0)h%߉0@֌߃oA?gn >bXI@y~ ng&/EQb]]#<=,e!(ĕcРa0ZE|o0UIBZa_A3'[/PUÞMqa~V^ʒFկNn|nr!ZCԏijst;P?=})HOIi=o*ͯBPyIWU3 1e}&{⇥F+`{Ro1{A4%::e.XrL:[H`oS8kAɁfSѲS:ţ#@cy=@/QUUhʯ8 `ܻ#E Z m? J֪:z6fQ':Vn,E5}ԈrچUh[`a`KOm@^$ |UWV.V]77rixp>%_r9L'a{lz <Jr{f0.AY;!@ e;Y^!Eߝ$וP}|9uY{.%Pl w hYhJjr2IjK<}Aݓ_~G_BJԸU~1nB]I@b bB2%+HeYسf[cUoHۇ/U$ѫ!ѧ" 7)S#wg-NHV-6AkRc!ժxzp\C+)[CT{T`~s\{XEN`-"&wȬcihWC$>7l$JвZbEHI4`dcG7w6X-Z>iMcN4rm{8hǍ_y^ !XH>f4҃' Z]uc1}YFBRҖs_@a; K-! JduFф ]c?c}OVV vۍidhbK0JU3?!vg{i2̵aZ? ɖ/1u9 r-'|<~D;6'z`;[_$wH@$EI9@|QcrFZ@h9Q.}uk'']qv zO7y'w֠hK1 | U\ TlI̩m}.`vץ/Pj6ILAaRWQ >qǜyCw#˱ `zc5U5Q ,z>RkYvƋTa+MDa} <¢SS]q !+DhK(H= ltR' z֎wBOYF @(3PgB+4zވ4\ 'qNgPl=`Ho1JSу<=ozpIeP~68jtdi(%iCtZ1K|y 'Zw}jR.iZWcgODyF@Nƒk"|6#}ieQXf/9r;N隠oQac>4ذѹMUirDK a=اZ^I.Foq46ė ؼR-V,IaR%,"J+r΋fODA"<Q8|Xx ^!ؖh9}tD-B$k]'9J3ܯLxjSKG`l֖x]- 䋘>}oDIMp ݄^Dդ 9雼Ooi>Ud^g =~vh1zた& WDMNMx[I͆I,T,6D SbNN-Uq˨}LЮ3l;LnܸoL&ܸ[:՚wNuM{VZ V\*!m7q_ (>Z>{DZ+ZKzeBMgLZL}hLi< "j@gf^z"9V,K8/|-(!unKCDBJY͝T;"zj}{lIwsw.ߔw0t}EFJOQ0XϱjB:(اFZhU-G9)~qe+!n ķEt=2z83y vjOTljPI#sۤր5 $4Zul>c[紽MX qVc,GJ8?*B+VIYL2]!_Wk!V3bd~29R5Avd{6/5}{Lt=bЏ?탋sQ{: Vq S8fP1V* '6 PCIЪfjO`Q+|nl Gg>:u%+e?#dtޮIg(l'){:-jDgF{Ԕ_8Ww|<5SHQ)ox w{֯kh2`75ރ 2J"]!dXĖ\JzVo ܙˈEjim4v5wtP&}9&jNJ3,bYpšOU7ESEg1*cPDvN> mGN.e ]ۄmge(TۿI*޵&-jf0hDFA1e샍/f#޶(/zcG8(OV*57"l?#q4R.8wTuȤϻ ##LMUxe ,j1!n0N RC  D1y!"x1m;Ŷ%=!~eRӉ,,2@/%hП˩z#K4^OYV L]-*A3u pL)TVzGXv4|֢Z:o8^x} s`1tyh)4t mC%>YI߹l̓^ECҮ4"Uӭ/I}`"#n-(;~^:dZח͢;U]/(οm"B`R=/fKJa@uC+ͦujtxd@b5K% J;oC0(/ Wha"#aKatgWM&#pq e mi>tMF|VwHqn|jJ$ׂk$dM'݆"ˮdSY?ew_edM0-BS`zR`sB> <1 R WHPss}r.+%RfNˬ+3R j9@o5M(2j9Q4+MõhPB,z}< ɯe_ UX9>ys}qB%]qdVPxuP׈Q"@ xFlت|noTbj ,.r]mn1ZDsN`]Q8LA8㨀Tw^}0XtYT->lrо#ދ9b ͧi3x)f]gfZ9>24+nv,>uuV,W.5QT$_H/HUR1ggp׼YK#w3u!1S8|Q|Sa?d7ȇx[SJḵhgKn5 _>â_)E$o "xt0CMAm gg癝´7GgVGCgcI ob!wts,NEYQY!aq[IڨK?qg/@dG'cO2s?,L_ lB1b`H;Ɓ>ŌdsԁG7cdgVPW\a>&Z_bH.-ewc:rbEC'$|"r.M`<9Z XLp@gzV׸AC|9?8tB>mzh^YNE9UdYpV;L $,l *@1i[U6D^A)q%dyʡ 6̜uzw;|uͽIš H5 BA 1O2!E<ǴPju`E $QMzn²2 _زr[>a xxk$ 2]I}-#S6JhJ^-IOz SꉆjpI '-`KhtKpޡm L caۃm&[ ^-2Y]? . 97qgb?1qqzt/Ds,^{G(fc(fX_>WK+\̰u1S8qv7"5UZQss\Hh͒VT!cP$ kD-ʝ{r]#s@dSLmVf,RP"b@r)Ep{Jqz=Dz?22St^MgRLkHz;ciotk;v1 T 9܋DY?0lͅmт3[Iȹi5|-,;*wГw>0#+B );|}`%laO6ñOEJ34@LXuӂ8#t'L': . cuzZ BқۥWdxOۋY˥KSLjW"@v{ /wSZ3ziBw~дԽ?#k#eUqEH=Z!4e)(Ŵ0h-̮*e~<ר`lDʭGX SƸN,j i54m{s2wdɁ`CmhW] 4%L2齛j%N~1uFuJ1Tֲ7dciɿ_%?Do+ ^B]Tt^*{^s?+͑_gcx_ Zc|fc*d]ov!vI*!ըr^Pj6 w37ِQHW +iʋ}Q4 h%҅2 v Rc㦞^A `+F0u; YW c5DM͕OT#.{-?ȦH-yIr ?gU$?$rg5-G/c5f2QNߠ^U,U"_'TU0_x> 㹲&э1G|yt4a*cTH2*A{*$>ϔ?<]"L<"@ٲeG94V@D)&a oue2Z4PѸ;dYk4>>~#uwSt5< v~[eE d Fxp0AqTA@AZC<;FB`?q:\SR/}AQiۿ`;[?Įge654/ 8_O:S@û)Q~hrԢwq(GKoGOz24Wn7̦4S) [jC $JKDUY8Q!/1MeݸH']xNתC7$d}r7D񈓖k?pS\[EpgF߁TRh.(2Eq^"VR"ᾗ5މg[&n/B~;P:''9~A.]aIb8Pi ƍ0=ǧəP=EK}fyH أ L3 n=_ciu5!g-gVLX5Gz-vBOV%GA+ SNrBhz+7ʟIQ~yDpl DSHG#\ANXCQ7>~nfqo-m(.dI%nED?s޿?a|ZFYt:Qb#n4HamRBf$q;Au/'i.FC D6Ͽ\BRS%@Aƴf6M@d2P)R_.12 Y3E͗Hj0C FO*_;|J+sƨp×.H(L'OxVC;;ΐ+--XGti(jͦHD_+NnZ2=cAzh&x$AoQ_k.묏%g&6KHWmOlP4# |%wLT~h?q"c" Apګ~>}0 4Jrh^z;K>um5Y=M%K 1c31y@ꐘE ~lԘ:m!wѮ).T0 ،ӥ18aOYH`tH˗F}`ue!V&x|Ʌ7=z0.x^9N]7{ܙzbzR,J yG W|ۊќOIRt/mм[^$se :pBHw>DZÄeս6L;ipD3(( QƐ{VU%!*9$$Hɠ˝ Ӳ f#hݽ-][$)~@GRj|"vEQoرvB"un][Ө c&~wUԂ@;nIԘ,Ke[ .l Yx 0tzn)#d_/ON4]3KB ' "J6L7–Z>#Mn;OUa 9 A y@]NYSv'4C؇&MsCR~ Y g<+o[Dl}OFG6u6Hyde0T/>3)lu EYtS6ʕOyz#xO)&]kjPMܭ~AQvkt-qvMY ۭ' fi>Z RE:9W~kAJ I߯#N-~bo6f \ud[_yMey9*X TyB 3'T9Ʊ|PAzIX `(EkbpVraGLtif4$ތpHaEŲ/X }^s<++"'vB=u&Ϻ2ߗMAuA6~v HdKSmi1TBj*`m&& <"&(- !!8X[cQV-ꌱNȂ_nHD# sP0 _S$d)sK?fTу_w'Ν)/ 6MM7q&UIV"ML -fԍעv86'.N!eQTӿu';-KbMx:TT7W E=ih=V)Z,,B)_{yZCHi⤊a~ax.X:3'K^aS7b>iCZ[I[:L|-Tx뱌f׷&|8s 1[2dud},Cgi?vyna ALW i2O޸'bmⵧ!2_QgZh1^ռeHrzDucFtv(#yfNe=JvN V[bň+wx?OsGͱ\sK!*AP}V W|aR HՉ ɅVjn1[Q2prwn" W$%,\Srz }H |1?]ܓH Kw kls,}Rc,̲ml\CbH%Ox+֥M jyPxW^B*H\Wr.lr٩FPmlK p: Or@ebj9í;O[Brs0p!G+q9+1;O.{i.DMhLO 2pOž1#tRnun5ɢQx%s!¥녧BT(^mXoXO:׭S x5pf +ꝩY\)6ly8$ɧ+ʽ[#:$_h,BOQq\ͰYSՔG+Llx'bCT>9LDA"vu}bRTnCDJVSpà8eRrB;X5ۂ#'1K=SU+nw>^T=FZFGgfykQo^L9jZfv ^^fVgq#ZIZP S]a͟Hٚ"3yځZ-<QnL;(f))Fu5'h:tGӗV:3 e?ݡhM6nINqђBc`46gǀiHC̩\c\ޱBFx?D'+H_)UG}pI_rEh.ʠ=]T_u;c2sͷ!O- $&%6y`$4-&H=kz`<ġfֈL=fqV7&>Iqdu*FG([wx8s豼ה y#JըK{hnN{Cf)氰jESWm:EY/,Hph.Gxjc 9lX):gl M;|*UJx|Ij3[XhE4(d5ʋ" ɢ ħ#835vwW&9o~mm),|:SW3@Zϰ5O+p_E[nݴ(Yñ$e V[B_ HDWʉi >3+8Zڔ¡% r}ֹޔ9Xؾ~xiY)}↯;T~2 4hyX(H:6tXŋ<<| ,h\U܆ӨЭܜ,!A̝3niKn=,Շ޷D={*(pn/+pv#Vi @gabk7hG#|aX:t7z&.yD -YIu oguo{F=T<}] T4(,bkZ:Iu6 @onRnGoED3_#:@/zQҸow /|U 2/6obeDO'uSDŵ7"^j5^~sLҁ;[1(>٬SL(Wh$'V1~#뫽oW,)D2۶JTL2zlz3tu^ȇ Ǝ?;{@=*G9,kuGǵ {~ ݩr:h]%Ȭ&uνi/iIdlڏkw! Qz@wI z9n ]y|B{8Q=5Io2?cV @5Y1Ig *ݲR4_+W@ALhbr"ߨ^)[!w=`V}^QhaP XzҍKKoMb33leT/},%1xǰ<('jCfDv`{e. ێBOСk? Z6,u#B^,Qv9.f% Smٗ ΑrFNpIfHFҹaYR  E1^|gU bZ졈*zwӰQaBa[Zw)ߠRe'Ni"#/i$awBGB{=q/zF@<~/Xmv/A!bիk&Wf֌ as[oP]Rcь jbD&7g 0ʆ Gfߴr8}u9i K=~ow:X1 bKnd~9{,<32qhق(W 8sIm$?bhp$ UVxLaow AӤ^ztOEFelETq}ʦ"'TF[9ᛄ/r>œX>GfRm|`j{m@^DqÜy2=|:=?}ݞtr304z/ m/iP(O.Cbř6}c=M)~;Ew%`/K|DU.6tBaZI_hvYpMJR-~0f%$5o$b+#43Ԍ̻sp۫b2%=qHakۅAyN[ p, |9B ^[HDDXiM<"h7bY u?nC3+tgne ˣ:{a = >1?]`]Bz\qI5p#<IWv(y<ۘDX ĉ_ U3Z > @@XĀJ%~ki*wnFvǂ|gk==o kiF'4$8t7yyk aXw:TYLO&#{p#~< ϜV\Ψc+D-~I a3Ia#)IAz B61>uWBReʅl˜sinYےcS)5 zs4=k8\_w}PV12 \#e^ Ne#vvp:b2A=%9Soʒ{K CR,PP#US#I^=1Ng=cAM^g]'h5"&Zk'ӜT"kӷM)2ht[^ M@XqS$q |{ ܈C~a4)o3ZȫSUօZ[\k{p|i ]/0Ѝ+ه/ cYVrvF*f:16%Sxkl=.f>OYFSH<|ѷY٧ FeC J+\+n®_3E$"`.:+ ))^QSh77>.}Lr[UnZs/ SL jwa)D4f}2怑6DȄj --BbӰi!R@7j@JJ %zno0<,~FAz2ؠ.Y5P*cgr>t?*cs.u DKg\U[6.4NrbZ׸n<iؤMT|ˊyiG.NBlqb w@ƀJD*cfp"ιQ$A01uD'zRZ .U,ng*._W7BeATFS>%NPUް0v2:i뭢z+B/0K&r"},_ h{I>v0Q>49 /v6Fww1)ܬi}n:'pA.O?Ȏ'q࿕壏Br1H3W\o3 ƺ ZSsn |[o>bƗ]ɨ։xҎI+4i@I3D;Jj o|HȧѭvRUOQ 7` 0m,;!sc$*0IbAJy= x@%L!4ipYn'"8+݊7mcw1XVDS ΗgLΞg^zGFxZ5@ϦKwFR?3ڀٖoXv aRro;(*5r' '`w,U`uNZtT9n.ljO}s1h}x b7@Dt}W؏TɡjΧzgGrȞ׃Ikro/NKS/?>@%\ 9MQPT@ѕ\vpe.N/6|D)-453v͠!Vq}=qK G v9#sɊ;Idp脋Dr*} ak0v7|gg,;6#g_2x 佀9Oޭgz^DN=EWBB*d vC~0k]K>CHzVxt*%k?B"Qe; H&Xo?^5a62ab_mmɾ9q}_ئa$h{j5S2;3֐/d!@. xr1hƀL{,ߟhߠiϗ88[U<"EC5R?ZiL=sݳZvF=Ƃώ^́φwF rVi:|Ѣ#&Q5rܐcFufhMs0-GmBU?XE~eS7FLq~frQab溺C2ߠŏ-""mTT|x(J6/g;2- y\\4X\Btŷde<^,T[1CD_v>NBQfN0M"Z= xD"KPTm K焫|vj)K/EAqyE5:VmGO$[4"u5~ hV@pG(T>)0 bIY8CꕨRBFʔpL@{|/(f~02D8H{ D?0i.'Ò7^iE@ump+i<) qBIuUE-{ZzB[ O=|wwhl*4^w9[sKkع\v xB+hƈ<ՕMB=@Dt[?<7 #W)v ci?̝KdzM~k-׸}5Ғ s7sbϣ鳏}sVD3S+ᎳJ֗ 0uc@.$N]{-,{PvVr1P6iIdOZʚ8_wME8%X@" VWv, 1j|T./kM4 p@?~~.o>Gݗmkx ߡ pE/azFVQl`DnS^Kn萝UNFTZtThSgqĜsHgf^x`|)WKT6I$9[Ѩk{9< 5~Qå z++SRrC^d„ DD0 g$-ux&w.IA\cD4lNzgW/O/1{WI.FRZi0V cePtw`ш"estPocQ .(z3 =gC^ToQu e$qdfjۼhFkO r$Hp \f w${THG%aNIlcm82]9}D׹=29Y NbD=-Q6̚JolPqi\`s0Enz(䨞{7$T?m,ڹ ;: #,SL;fCs/TG+J.u$]J\,3?<;4QĽA" dֵ>^hܩg(ק^֍foc j_U)!7\)_')OsvQå͒N{F]v@셕iHpNxA-#pi|e_@=bzFlE4@2:+içs 21x dŠgHaCVչ,~BǖzKV|Y?1c{q/Gj_2X?# >?CH19ˉf=Kã'*>jpJeLlǃlvu`Jvcݻv@zF>G"yPEHQ( >ػ4iTѽSU ݼwCuGB *ϔ"wh!0nΩ1͚φYA"|pb -d7F<+GSTxe8' _qg/Ё$x ;OѮ n+}7_l??/-J,sZlPt<_Uʫ|l`qyvQŒ2z z+od߮7q 5M^b :E}501&"" jXV]*x'r߆.i'v6Ww@4_J`'d[/ oĻ 9%W.S=&!ͤTLn<5_]8br]@/X5EGoYIywtM (nΥ2w $PWU!ԖpD(jY#8QW)ΔXz ]ۏ h6$ Vwp!SDsr4yQ?bVfBS什0?q:;8mn+M"V-H-Uyl 뭳v댛% w]`/Ǎ&}X>{%tT$R:荷c1buzNl< >$IԪ]C!rC8cp^**8 hS`/sZ86\џE(=YEOλ~CjA %tyOJ,CPB}0.7*|g[rq9yj>% J 1U]pO|Vq@ P @+1}!5blAm"Ue g+gt.څ:f36f xH"(5*w!d _+Ua:ܐ eZR ῴ=]gH&UvQ|iTJb.%guGOa= يp*wmJ(%kyKt<nFq>+[v.z#p?0 2Nwd, A˾;ZG^ai'TgSY³x5jkk`7RRRUj}?<%WD-깋ɐkvޗ@&eŤ6VtH)??]dZew/`E0 ՗>B}ՏqܦIB _:l_|Gqq .ڿ@m}j)a<\2I$60o-pA9$=j*>ʑf-jc/ڹ_Nx+w†'~;Bka]iXL2k6~E?)}l$Iəh yLP7 bgI_l.%.׼niFW=nU![h)/ƒg%ᣄkCcYAHd)c?FV923n2XmEm}[ogMd*/*4w%w:c0:Џ强'VM&0|/o; mԌl\@ha'Z6DԈaT/IͰt DD_ڠƚꓬuta[ɧh[POyPE ; nl-d%cLm{g逪N]d|+V5\|2)Nv^Q 2 Q;PX6v=R}s?ԼT$dnKb*VGb'zh؊IJ91>9XLWyh;M^5LC !37"˯@Q}<bג>@Y=F˿Q.^Tgu%iSTZ<)ZHja2QX`#4Qߟ97.pdlud#+ (LQNC]DŽlY7*Ze |1$_ѯ{Vzশ8HBVUb@E|J&q@@)L%>aHZ]k'Bj,RL'i01q\^ͨTο=$#2Ig0NT8l^_"Է I>ZhX,U{. Z-ivE״>dpB^듉,]⥼GcN 9\+\2 E:j^]C?RX="ԱǦfIp*KTuU#2mN^@DVN0tϯ CB.s+<`g9F,IɥAկSnB bBkڞΙ ^5o߰`Ycf "/g~?#ʹ1In$ɟ]8&Bizń[?Y+J/hSJc,('bgM`\wԻ&C/UTɋcz۱-ũֆsLn.wQ#@8M c ʻPmճYL~w&7j j԰ce%[}HZ?_e;>Ȗ;6M],zp.M}=-KsRDgͮln/*|oTx{Rd"tVaDRԅEH?ׯ-/KN:L;d-ZGe,8m+*T y1'XT /AcvB0 & tM#)BtiU{IչpbXeI]]=s& eVeR+w2w ypI**v9a{ś8]!1ZԄg|EAhƒB+CNt~c;)fD"/.$"U%e7_yjSp=Rb~-"-<4:TlaJUTzk˽ĖO `O9cPeϏ[VC®-9Re(iLǐ&FI4 Jv% V_RE6)Ĺu}Ch>#h7Q+SM$kx`~zi2b- Eҹ̫fn^-t]E6Fud1{=^}siɺЭzlQk߮F9z0d :w1,S7l1yO&5zRܣ'(+pM2N˧ÑkK.ݞ'p{ùJ[H,kH\Z wIIew*Մ@8ݭ(l+^}>9jMIfPPvfkmѼ;oH~go/w28RTG-O\?mp\lXIY=3zoaH;EıZ*pSxӢ+DWKJCq/i6a LDV+b`|:B^ߖKUD]3e*n:xKaz\/x2wHx/*L5,ݡg~N8&juF xH뤂70k_CO~PhT^881F,d i S=pJQ-1n_o!سI4*Ye:SJ?da?}/CP%l'52lj*;yύ;eop-%KV{A)#*%%Q&ὅߣ^].h%?+|By+ 8]i\3-i)}y*>la&T2$@_eRk^S@g\";k{_Cݑ nK ybb[7/>H @E7*kkb1DbBB\NU(jD;\ ;SJ}ރ卺'SG{^=. )F&8db~V]eMe?w6bQ ' g1Ga%%,<놃A%ngv2 vo(d2_K2j?ۡL];R:*%80O$ROfC h#c7s+p%A~U5Zac6,g36I<m/Qc0@iS2Sn9yudDBIO:{gRY;6ѧG@o(Rj| U@q8>d!Z#nb^6;jpq^ӟ|@?':W%xQ3*w|v HV,$K3Y/ ^͘/m`=i/[AiT*򳘌34n 8^qmE캩pO&ٻEGڷ^ .'KQ%-G_rDe5@"j Y\ tgaSZu_Ŀɥu7i`pMl£7ߏA1te Wxeލz Yf!H8d *ae3[ۛ_`՛X`kkDOFKDEHq@w_ۯ a)tK9΢ bN3 H-Ūlt&5EIpNÌѷ;2!5u ZvP=jZ0?>= r7ٞzɰC4vC[PS<=1eLPPj7"zx>x~o*|B}glѱ E|bQOz;,F̅SkD>(!6E?YIsA9S}?@% &ncU U N aĀL PGv灛CCVyv(NRv>F?LX[gX(tBny桂}6\@s*T27aY-v{ߣK3f ) [3\E!kfP Mze!mrJc$5.c^tJZqa؛ @Vm8󯖴M{udͫJ tg D&zy'#@W틱Cc/uqebԭ>K~s* |kem-G]UZWMQ#oli _KSX9?Z$4Ժk 0b!;d޲҈J#wcoorțLf(ZM^=ɇRW&,56 }qKϿ*Kɺ͑u&,mCfhs7$Vܔ=7`VCà91xV<,ǭ޸ǷIbƷi6uؗ3)⫅Q?XUHI0l L5ڙ L`KRy`T[i[wu \Dyml/+xLiB?6XpT>N)^csZ+Z)hPУFHcdei*n:t@93x< s&g\v@$|(>};jҩ͍S XƧGǹ;yC[Z reZp x|զ^(t2EspKJq5':&3!;n?jS&4G&fn0k^,z`uJ}BUu扢qJnE!A9&RCİF{4F@4jLݾ:cYy@L_I#8C;M#fxUWY`hp1>5wրy-ֿͣ@f>4rƾ/d:SlʄGU`>4k6s~]c h&o]1}K UZ )"Cx PCScB5'g;\w,o;qA]P8hC > LbKJИۏ"OmQ[8s%z?OyNUY>TON-lw6<>O"h}(LWnscY)v108pݖr.r3ìL.:!|}}Mche @N7Ss.H`㰑g}v!؃(}Ƒ! LwX$z5y.'0Qzp3c[I:~NGW6,[]˰R $2w1h" ՗OBF= k46 <=AkEm^Fٌڨ~C޷P=S8cb_rN@eɉJQŁn2rd@Me$QČuyOxbmJo*E[X hBjxA},:'xCecmm:p%ZZX}KR$ &JB_,)R#Xb!Gr?k+LS"Ω_xKMC}jFJpCKNXD%8,G3Y MjCO&C_gProGd 3/& =*N,%`}ujͮaeCC~& k^^9,S־7ELr75ڽ s5vvi2k9M\'k0(D]uʭ-W}O 23f9r]Ck,YU+]瞧}4[HZ;dKxE;^h((@cI4L֭QKEtxQ_ b{R@'6h⯢zWVnCt4kV0j;Wћ:nR߄#"?e)DoǍ!zX8ҋϫN8. ,]%9`.1ټy͈3nv.}RgIht,5Ӛn5lDLQt[ϗM*((DH_%5WdDP{p%KΦ tzqMc_әӝBf<}/jg_@O 7P+iXA{K(̥ dhfMzLu}2칰,9 nY;[&}5RLXlw 6)ޗvT ]䪤< .P Bm qujfQh X>%t M^gӚl3t U/u1i+f+ p|663GR=EVRVzhs~םG\ċZ(jCʖ0PF!tL"V$r$ I1nǗڕXYbZph\'9轝 :%<44L0@(E5`)m8zSd;NߩQE,r:j%BhV, Vɻ讏ι¡d˳'~bvPƈC`:lk(]wZ4Xa"QϻUKM64/~hܰHאh&̦RPI-  Aq 8E \d$t2$o& 2YEى7n ;{2(6a '^_y܀]=s (H&xҬ" A$ "g)ȥp\H]nv=h ϪhCLy[la]/~>[,X棸!_ )\{ R25ϱ~C9>X6~hJ@^U.ZE2G4 Sʈ)YWQFU2$ zD˂VE7&՝E`eeZ@JBabSZ:"bT=D,e % eodVF/͝NjL9=W!vz^ DӘ3H@4vOPPqK۩.KlQpaY8%ssM ķ4nY(3@l)F8_q92<LqU7{9 lڷfx@@lZHʋ鼗h BuoV sM[̍޿shՙs-)mLǕXt>qe2:l0"FZs i7; qЅv=LCZYB \Brh@7? =զR2\ft& /A *ĂT?F"CWIuP[ EQWyqW#I2z%Veg A`/ P +~Rةe;b(GqBK } O[=v|r\O)]{k8©w0tV!X`?oB2p?"wK`l7Z#CB`]$}dS̫Cd",_&b /ǵSCI 勵n)T2vjpYŸN4q e+wæ +e4trp',.ObznV|d lrwCC*^PD/)Spo5ubؙW2}qɐruDCQl:5R3~|px#t#PeHEaߖ.dYl؆MM|4`R}.@skp X[ )je\yYW/PKVQ^ Mȃɉw$c›Kko|#C! b5m1$t1TxA*ԠGł?N} oX$DǟA7gIDjr+0P<7[uҰM U޽pόf˹X϶@˶}`A $1 (SDLFvGȵ{IEYA>JW[Xv"FLUI/e%c;YbfkIdž DjF 0n2E.mc1䔢\R#^;z$3ؓK䩟)WkQz f@zX@_9jw Wљg_8%Uo-d:(A"]DώJ@5tPy|%bnZf"=! ?lu+ɷНHi˘VvꅴR*t,@ ̾ߓZ=8 U1ư6tM)6C!לˀ&0w@$\dmn?UA]tI[ޅh1QgEX9MBNxD!&YwoӇ^!OdNG砛oHJPDNZO.r{5[W+=~:8IC6:?x|#49Šʋ%_nxE[l4/;#cbczn1g8$\+A3ZaV !894sto.CR]w]u&_Gܣ6̏j_%E|::+ڌ/d (`CZjr j?1헼.~OYTnWsv>}K`'ai]J^O+d_m]'׻Z5*LQ@L"hؔzmt^mmT 9o4A'H<)!." `.8̏bfm+_~WHĥ٦w)XhCۂ4sHѭ^ s~w"Fu1*aIk aR˺ϔcUcD:T` 3dhsENI~7lpHوYCkNS5 6SRXS_g@oRI@sRdmv9TI(L\1@E4Dis[:>rQF5uD__ȼW(eXs3,tLjQ^lzNf)jqyˆLTߖ0Y~~rvHC|$ 4~mt5f>D /ؔ }P 8Ҏ3hd l cw̉5dqX!4, ۫TޠV$w У+% AHQxmK/X/TtJZ?ߐA(-YಔcuTCtB`&Bレ}&"aD[@]~Ljv4O$KKv~ld(^]]Q wmbڭyRe iSG3$l4 wkˀ$ h2eĽEj#jw: P)ygOZCVϒ;:qNF-Ɋ?3B=ԢYxN}?i ic+Y#iҙQBL̹u$a޺'@*i+ќB|C$C"lupS!gOBJ?L3ܔx`oO"\g1ݯޏ9~k *u|S5GJX./ D6OɂH͈y_ӹ=Wa2]HڭT]11xq=H pl\1 xϛwMa=* F@n?WZOGB3PLE59(HA7Ol4ӂ4zꍙ^VSm%g_)| }a" r,&/Ǝ1/BiM:{{q3͊u9/AϚƙaR,QNupZ!H-s0}{^7ubH020RoͶ"Um# XΕF5 qp#T@TLlAq[Vka2}&>D|?)pxFQ"L.q+RaAPnH&5la{O GjY3I1i4Ib9F&YFù@C awq @O3 :D8+nH]JEZ80|wp^"3=4-\mHUMF*5PjjȆ,]IWF11.s 1-&Qwt\bbBi) l6oEY0Ej{G[} 8|pT%͘Kd7 |$Yi4M%%/_R:쬬 sInZ![5y d \# GNEo׬U`vOqh,?ɟĴ?Z7sMPO",GJ6m&/1#k IϹx} vE*8MOdjE8:oG'!BDl?_qLd;oի-Kӯ+? DUA),a3jZμ[}Vz[tm*jHqqnZx ?`p K-.L~<5fez4=i\uYNN mg)x,75WC5Rڙ\!߭r5*vPC Ho֔iɅR<ǧKKJ Zsq׊ f+OB{.6=!k}UT= e[%qs IK+JRJE#|]\}c]r{#h n((9>1V71Ύ*gpWuF{ 4$TMފ# q>;6qYe!!Zp=K @KSDEL^Y$A8bp5+R ~dGuku/mO)a?KF5kܷ-AS'^Y햐v T?#i%!pFާb,2JcoxvՈ Sw pe  I_…dS:$@CQho |ԧ]~&  @Zh.uBt:WUO!h4-(u( p@xbdHN`4'ej߫9EoHl z:P= +^-VVb4k,F Ew7ޡL1e|m(ճsǪ܏F2C8+CzC8,kojVyCnF*GɟsҘ08Qe7g;VeB{Enǵxǘ9{S+S X E`b`0w 4 hn@ nn(Np_zm7!iF:.rwkv[\ɳ8Y7%^7mqO흡 ÷ep`G=|/3Y!M՟Eg 1!0.5*fͫpʅ,W5>'Ak.ބqf2Xs1_CRx4hnާ}tg]K1W[4IL-XݝjR3;QP]c{x ϚM.k*Rz*U*ps.T3-A_4)}%0 4msjt=3-DҾ<[ NRࠧq)Jr!tR䋑@gV.K7 Oۥ˴ғF%"L.MP& S?I r@`?Nҵs ) u: ֈykVu+> ֟Ԋ =mBsHў^7 2',jf% j o/r%2;/kzE=Td0koJuI:#OD>?WCfFi+5${?9a`Xܽc/4D9]ۉE?`5s&_1} ^ "s 7L) _i+SI%v`hi$Yx6k@KP١B. ?|mmrܬtMe;R3c_AQ[`cz%һIj~!)n-S?(r.{xZE4 |m}OvB GBwcq9gVYt#o.9Ӷ AgPҲ"WJ_8wH,rY؊R] gfGߝ梡0OEZFW-zG뷉/UKWxŚ,L~+) AVvkIEnPav|6u] pb~3env%2M~&2H 0?.&o^ uC [W&;\$c]rM$gLuꄂR@6lmځN[o +T,q.e@JIpst߷jx"C&tgn[pE; js/KCV ̸yU0 ә?; *ѐW)ώ/2zWAtP-Mo hDeJ,]>@*M%8b+J2zgp%3F?1Nt_QrU@C>9HQ2Y6 A.a@iްRee&AZGVK0AH V *~DXJBrW2}JJ=#v!w)*__)D.ygELɽ*db/oV/HPN-!Y^h^* wiY9A+1wPU>8^^(?6DyR0빙0 AFRYRwcvh]%i6 tӧ#*"cb@az9D`OZ2պRJg|~MBHQ V*y."9'W /idT(`೚锁Trio_WbO4'hjL܏B:j".Vs;6l%'Z_dqXni]kA'xH 6m31EfR<w+e KȜ/)OT;v1+\@Ʒ6c-LzB-HhYLӯ^"1By_ʽq˭L#w}`[}_n =z=Z"vZ99q V;߆O.KʘU=Q'%Eԗ|[-~zPCGh3 _x(ҽk'FAξ .kdL7*ZP5AŻRuc^J^ۣډ3X.|pOEw=H{$d6O cϗ|<~(§Z\!-(tM¸Jlf<ˇ&DaI{i.Т-[AИ;T AәO>iNQ0*ҋpd%KAڌy{Q#\qP}:IW^xaTd˄ /s">Q?/ pF<`t Kzjj@l۪<`Sk>kqx\ߊ." W`;Zk;Ul69-SqZ;xMlTuf^B :QeŹ.R9p͗ұ06gYDǿG]V&I.C;7?uZjhCԗ^ XdF0'_wo@x!8ƿ3v6TE7b*Y*"? =NkZn,!J >C/D.5"Pj|7[tlo>(Z au:ZZ5nFu>Qgf@,JD%?D+;w[f77n3EwXXzlƾuLk_֊)>Kt Ζ@@O3܁/n竬Dۮ&cÑ {2T '=^rnnpҢQN 4&X. v޳LnMXCFcb*β>JgiG5f7愮kݫqFPTRCy\~?ˆiMKgAf -6$e\|?xz)j$a/d e@"a$Aߒ:$܋u|Wj|-SA #>'6(VF[WpCmE2~tr1bNj!ڔ7f?Q IG (M~ ڠˆ1tLl+Uz~8s`3&㥊Fl^lv3t >P_P919>XE~jP)w<ɝzy igX85D䟂,Z.b'4)b/1oi*F܇p:y$'[A}"S}ֺL?Wg&X]̘~$aT! ;ksPJm4-0ʲ Sȕ:KG XnUҗJ#`%\mc]~E4#oRJXW|i.^ {ݴ>mpix?bh+PaVeR 42ZGMܤ!1oWAşOWj&;&8_o[!yzoSBFh1qݵ|\ qUtvQb3)u^7Yd'S?a*S@W} C˖UDOY.,2(߹۹mnv -$yNV; b] _xpvMPݞ9B ~,$İr寔q-DVOs{,j~.eg})WR*<=d˽TbB311:[Yʬ !SݝIgH"(ED%b -'ʂM}ShwKFI^b|=#V?ָ,[+t!~]z\v֑@a9y|{^>/.$:iJ֗EH:%B0&Z<)a8@Ґ蓒zmM1tH"5{VO.XLΣbr^V1~TNgx U8C@I=!쎜Tm pay,$$/c Re;QZW\eZvStZy͗yQǥ #"Ih|'6TwެN!!:1sVҝb_(s/%λ4tW|ڍQtxZoYWYa sZ7٤cb6_Y?d|zN~!޲x…D,M?Ton|̋ )x-ITۤv}~KYAiaeΦ6pr͡msiBH󌕊Tt^:ߊ>G^{$Lg M藶vH T (ؘB #d—0Xt>9 &Ìuf? =haHo*hcY̾ Ki:,+MG iY/qn `iwҮ[x_wj> XceVrqaڕgԳ:OBL%amzMJT`zTRRYN}}ᕨqQ 3>QcHJem'c#lGO3uSLƈ-ʶ(o5J`_BqXv}v#G”AXH);oX"Ҁ 7v6ĥcg, K\)y3z0[X( 6n*7SR=%-in5Q)/fyb"h 9Ys -H1ĪQWZ oG4fu)͵3ovzA#MRb !pj,oM%r, OmIa{㟋>aikUQc<nfؔv2 9[T~uӄ$P Ǵ`' $Z\C:j@hX#O#Q;vUA3=' S1<5Ny{xܽx SMW 9߻p;U0*^xJob}3ka-:E鈰uy7Ӡg"J*mu;5s:4H̀JThFb\r E;A"8t"ئ &ay`l!l[e+;sfAGd͘jl0a_'tNFD`#,ڃvLzoq% u%kpNnRn>1MRG9Q7e B *g2BQ܄ ](~֠*1W (w>S]„ 7HH^_”Y69~H>?_M?LiBiR "-ӎ6_PR}%;@4ѧs ȘdJFyzJ%9NNxJ{RgaظwHiUt0_l`b؜[S~y?<=)3 ,G*Ze>q;YZTX&t|.KV-DpŬ؟87t\?;hߩѣPmR8"v(^RܟV,87}Jv,efQЊ{:ןzB2&xV;ˎLCB>]5ߨ~K \qB5ZS;-o}{M3CI|޶l){%&Z#LWWG3e2Pj4FѭKc0}gNgn ^PLJbc:B Z`r퍬+W,-rfa@ yFmaL;*͏;|&Cːy tMnfoċ__g g#.P$%[83K4=OmξW8N"kFB#*% _2+]pbǙcy}+Uw)f؅)njZJn,> T@ty:%?I*xMjs!z:"EDߗ֙L@ZX\x\⼳s/G?S wF6(n\j9|%H2WluheD#6_hќ}B tRYwVi;6jwҫxLX,nrF;jqٲINPޓ]7F+5?~-&(Foּ;aJ[n|uݿ2S>)K1\Rwc \mf1ƜDp*IB"$a TWRTbmKVbp~B L49ADU Iߧx;3%3vHp?cA P5B#I%9JbIs 's j{ UO9ҳϡ{(<RЁC//Pk9i'-h;H5lY ;Rs) w3팴 TFX %)AA*ب2#njdAs* ([$Ecj1^|=$\e%پo::3 HS\ ![f.@V{yMYx;}3ܙ J/AeMTJC:^".61X#lT%_e/w>:uTFapV䬓&Da7{)ɖ<"X,@ g䄶Ae|tlʵOɃ#?r:U"a(#L=Rrhnx,P~ V]ӶUh?ȬF}w?*La#^-Ts4nE x֋ h _?c+#,%6 Ft wЇinX3#͔uvoM0E|RvS͠n ɀᵧ-F*.Ӱ˛\>ⅽu<d ҴVJKL8u5f먰nc*k*Si6c}klG(s!P8f Ke `K=^<َ460 1]+4` |- )`Y+jH@j@{^ YBMGJiP@Lyݛv2 s*sW-(TvJ/c/ww3Hv s*"Xsj< l 2YnC쮔߽ʍ}Ľ2]sI1B Û,c;(5h91vmH~Ȍ^bhu@ks49u1(}"A!Pk{*܆Xb0Yhn$.d \-̍xoE' nXgj*OОTZt>n4O>t7J&]w O)C8N˞Bc bR 9a.w]-[;[P kxħWKK\ÖGvM5&TMB:ݡZExHp|P1JFSy7Nx`6 LbcGi֌h !Q4op5_kbާT]?a &EYOt;u=z?SŭX7+Ddep_rVH@Vڸg'Y +EBƚtphvx|L!נs>܂wפ`ö߁'< f*&ok^tChƹ"xݑK;9g!<M)Q&ixq2/@,NܱQ2kǛ$*ʟ} Ū'U7ڧKIޢ𿫯L7`׷'oE, Cz_aH!>HivL\23rZc吿`˧w,e ^Di|zok]oh%vm'6 ?n֠ڿM1,j԰dtCh +g֝,gȁTaP]C܋\aJ*Ma%GEz Lu׹Yl"p S)vF#n1IuzVӢvCmC}`-_{h0_Z3u;Y4WzۂKgq=/!cQ ':M&br@ZܮiMUgѯ؝WpmlSD!1- /ȉ`m/߁dDGCS"kD_ ֣΍ P\+gTGq!=Eʆ:->-|W*xua@f Ͷ6:DjL_]Qgh'a9֨&tlUS/Z]rY0%fqlXAG^őH00Io4B H /4ieVܮ#|DvH4WOar`D .K٬+;s= dW.:Mת'{ܞ]RL0ned;xzQ G?jj? -]4.adș(\JODvbjήM"{tB#GB x5ru 촍B>$C ~ُ˻Bcd: դ |d;Y+@A\7K&g trDVc)tC֍mV-Fjցt;kNsIִ9>KfxA QZ=/<[cGi''U,[2ɋJ= [zE%߻\U1j--AǏurnA#m%/4a-nFwëF -D:0S8lƂQ;oJ!Xi_i`DӁ 9+ѐ@ټ~X1"I 1H#KQ g4K1T7Q/B-xaΣL hu:0˘s,õy=sQ=k/:sZcI?xwB==6C>CAljI|{ z 0Be AmF*xH>Im Q~~K,üZ-蘩B-eɠsbZ6qb2YV3#=\*3z2fU cUcUgy& O+05v- RerAіG犏 Փf9UF5wcO'Oj pԓ#7,3f/ \c/[XAd}\«Z 0=zq+088_Fhg=T ch,j_/!Z@EvTWy @B9tq% \;fDKJ-r'߄K;t7{4[ڤ)RLH2VU51? m%pY_qC;l!m)m$Vr8+9:JͥJuYC$HuT6v2k$x>lU.x\$R)tbeEݫi#ezXi$f+V l6V(*ko7euա#Ymdƥm0;17FSQ]!eX+?Lsj m@oD#C&G:KdJNiq+"ztg [Du-RUM0p̭ȡ~(-Z*wϩ[kЌ!.﵇d)^L/9,:A8݇aSx59ׯ͊ ncؔ~.mV90{^ KfPМ4Є(imKТAPc/$~]Biiڬiëk9. Ę.O;iʈOu""X*v{|z<+&w*wu><\A1Mmj;m3ÖOE1ElF}e^ᵡ%L=0HXaU.GT9H[ZUp`e[G 9E AL^RF2Y),94[ kczcGc<~1<6z)±EpQe { WR }]ND:(ųˁwAo[+WjPZkτ_:\IE4˯_0, m>-7 a"f3L,?5983s%!fzղ 66ӤzUrR>Xj ?%zJT|u3{0 ΅#t3/ã9;s`Gt4^:ϲmmnR.Hx%6F>j.Adt>q]y1a|-Izb&P7-y?C㶩88uEl@aHK伒!S >Ϯd]?c4i17+ںP8Fu'czBfD _4{,\yLa~\] c5{"1"AHfeD! Lڤh]N):BXB*Wpm-ϷQ<!ˆZc/>S9ówݢm v[,CG$u:a jbWj6sA[SvHc#w'։Xi^\l?+GA4`PSK>,naJ,Fe`/Z@H~9G/8st7[g[\Fv RE+L|53{H8ԗ J5=P! ܻa/ֆ:MFYSO5>]T%)'*^Р%GyqgϜ4Go[]5uU宾78ɾwcw%YvT^|uj7,Aj:A}@4<:cEvb*E/iJ}|cl[-p S )GEJR6UcrCTm8RK}i# /R;Jq0m_E8F5 tf-Bqλj};FR#RVYD0c#4rũ:> a]ߝ0 IDr wc?U,]gUtw3|5vć| "OwO ZW@ :Lڷmh&Tr^k^nXOr!{euUwr9sND)_qNn8 $X a1#Y'ت#00IƠ̼.vW#X}Ѥ WVZ!.yzx/&&ٳ |q H=/2sV/?8Z.mYχl$pe< P;mūxZW5GĵS[r'WnhI(!ߝyQtPi& h92](U`(v(jYy/-]D1 L *KCs*8Gjg7+VGcgrw'I{f4)H8~S2 Pv%qTr詎LtC޽}]|jV Q;5,H7o.?!O9:WFc[4&  h46k}HHϴ7t2f}G$z]ːL ҵ~CB=| GОb; U_Iٷ4B4? 9fU γKō#"N'MF ײ9CG9r@G7 |r~Yм Acm)ɠ>07)G$)W*$jD3zttzEA@#՚ vђhPD|PF\.C0yMd$h,W[ ,i;*'^t1 gHyN$(nF@8Ʃ5"+X*w>$݆.~v?A̯Otսs0w-'խ*c%!t,8A\ռ)=΋2IMh&93\ߵ^kLk)[>@x?D (3!oIb`]@Q~qHʞG`] ;H@]K{wmCϹ V;֘(27rK^jה=?ZZx;,zן<)H`N`DhJ/R_m?Ci}\6gx#>GNyL%JN91T/"{lƁeRftOEdž;/77<"JjJe%y--:H.tXq`g"u7CyG6J2*bYfLhb3xfv ~!vF"[89&۞ jjn$je_Xf×!"AWcB(7 Y@Cf}Dyy/ʥ!KJ&TD6ԙH"zum7f/lF_6@z|Y?2D2ADzBXk '|%i.e?V>kJ$XA*_N@bh_#jL?}2pn/>5GT,h8| nj`iW15OT5b8~ցOq>=%AdȆFj;1Xչ0(RH/_qVl֎CGBM[ͭKmV̐ƐmARovm"qaN6?V&vjLpV"3}`Uў8ГBtUP: zGUmAZZi;L:^nqԋ/uWa'dw' r3* A|Ft8;3܅˻jrPb7;POHjΎ Zȡ)鷶> i<|h1~)^bRT.׉+dh#3P;4ent™ш7T/m& |*J**_uAfN=eC9vFm57j>01`1kİjg6r7XJe O|*QlO@ؐ] B {UiDsWuB)@  Rt`L kSWX`snXkQjkg[(<6T7N+s )o k-7ӮQ6@=?sBpǪqᖌ|\tI/~?wQ[B ?)thyF]"Nτ xh.wmhQRym4Q#acg"dF 4 f)[(x%@j#Onn(˪>nrxģlNz"S{>!Gw6C+b^BȊ=[4{GŽA2T2~CYR"W /Q0_~#Cyʬs5 $z$Ry'h86omrٳk<V縇@PmY~U^\WDuUvhnwTbѧy%xG%"އpsGkKH%wtxPφD \Œ("rUAGV6sJ Ƶug3[?kIxcTAmN"xޡ4n_<,|HMz=Y3qNyͳęZq!?'*~=qU_t`ʭ9@vIS?i\vsBsyGlḶ/*J_SR:JJ خ&°;_'$c8-N !PeHƏ/1`\RxYey_Bծx\ơ`m;gNش#oN PI,B4H ak$  9.L>n&Rtm֪d-e䍅ӬF8AQ;`GOǶJ^c- O]Je}$P/NPծ4Q`SJbdM?)לYZ6s@ uڻ =R<`Co %cgE0 rH8LPQrh|lؿ( c&m18SRl26'U*4 1n++VFGoSHX "dq?/y]0\[|X>5yޛ ?D}o\<)N_f`ݟvGlCIE|wɰx\36؃5S!yc.:Z]"K&җ"~:XU1(D>q.A(/9s{#C+4/wW5dM5iLV{\#/Me|JH17X 0hl^wA2/c!)Uz}5M.Ol-ydrCާn17Wq^ ܹh:웫{z\vT/kZ oGYj-QPWjoL&R 3pVЮ={M~^H0eLJSx&KgS4Qui!6(|8tmDƳ39D:/9q'b"?̠ E3`5̄M?)H^v7}WD^y t_T^7ƌ~)m<$ |6K C̰i =P@׋1Bm0KK'6u_t-*K^ t%5myOkl1r',clsZzbzZPLRC$<4[I4,PBj5Jykr刱H;-ykX&hE6([ u vpҴ|2X;^D)o [[f4; R}"r,vt[-*7bJ0,02KsJmjlҿ9=`OqCBxcX^ILO9+"f)Gᚣ>zk%AR6= 9V*"8 :;r M/ "3,$ܺ3ٹHIr*6&8g5g@'±Cc7%u0 .ǂ2nngl׺}V0HU$,d[}5Pha^2dQPq.;x sꞋSF^Oɀg6d9̮$F=A6AKUc _Lac٫$i 3}02F˒^jNU ԰E~gڦsԽSeRѕIPtZbr*\~3 slW(`&Lb&2Ql-s7<㝧?1g"vqH/<Ę Q)2&K\fDpSݯ8-O;_hct/AsTP E|BU݊?:زji e[S1fʮ6HI.J~Gd-ji3D~)TB034K:3uĴPYcCʑ}ԸI 1k~ V;԰J@GHGuPߵ^g2ԅf~dA"L0]9 狇L |.3a&c)"hE X5:'p#,`J{stlaP)WXq!et)64+c=]Nyǵ6I2,0f.)saw_OB,ʈkK'jX!im#D(@{[9dPYX8L%c; AQ0gq<nPhe$kӈLM!wr4|e_)wы.[YʱWN|n q_)h,1֓.FĒQ&wn\ʯℎnRQx(Lp-aC9y3p4 dd1@ Yo._}n0+Et@bmuh9!0Ԍk7va6f*FFlY~:yyaa%]sνuo"Z&k)`쏊vQFu&R+p 6_zy8+4H'm\Q3 [c(.L <= $z A(Ɂ݁le%}8$'A!%w5PgC" "HF">sWDDrBp!y7§W% vW$" !/ bÝ3'l2T!v YzG RTX\QhCI[jh%ngS+瑺6YO^oYYgr$--w3D-[ n r٥(/2x%X AF,78]A0pb.q#D'f$6;0yJVR@Uwu5=P %?Xw9C!”PqGZ{F3խٰ jE6zBBf [O3o5ML d՛T^ wp;k<LrFѮu~B@H2*dY}mp4Bz9/ʩf>%$$61&E YOJ oϧjz0COxz+\O}B>  YRH|Rk"6ɭeoTVp ~h/)b#}iSỲ,K^U؄y#@~/2c z>IMQw]WɔSnC>-gK.UV%Q 嬟ohu4o\T\EL}Dܶ%,g82>- xV  %'I2|R4@5Bw/` Km㺮* ԡXs> JVcBKq2eHc/+YBnjY4 *>W Dynf)LGHem? , Y܀IBpT.^R$X#IRz* /9p۶ QP̿x`1]k9B͐*ƴ2&Uer0[;OTcNx#vx.@ X %C6Q<^_>0O F'1 1ڃ$,KAKF W9\~yDоX jY_!; PoF WR QV묻h\Ҧ]qFkœdTAE6_L73AkeNbL2rz'$ƞYJE)Ԟ@L=b]( *orFβjG4_P 7VilypטDtwpdaSTKN/yD{_чJ%`ij?|~>+ D8A_uz󈋄n~rr `x^]-WܼW!)xBc>xAbu Y }KnĪͽ%#fjA1`m7"H;1H&P,G'$L+D`3 Hvq12 t»1QiϜ{GCn聮N *@ f:\IDCi7+) K.DorjZ0&\cڲ`Q묁kPdmXC~wY<؍RaXԅ7*nn>< 7X\Hcv]:Z{- N"HaDݖzdB>CC+/!Qu$ݩ3w3醹Op Cvs)jssjHN̕/@zf5EEܼ%g\QNEWd3|31Yz)RM)B;vIeLD@Z5k\tPO+죅ptIZՎcNƧM^3)%)@i:IJ}p`U䏖diY|E? ÜonӏqAa 3v (Hǫ^hY8z":Hx^d~Ws[RGþ| H&kulϑ}?`xb3xF8UpBF|.px>0۷LPK02$XZ> ws)6"[Uwb1&_)GR]ȃUh55l@m;cR `ǽ2Nr>S$k3~ +"ni9? p-tRcѪ @BENG<(ѰX=KY%>S9aylW3"b8S?P6Θ q;ba8}(**ݑ ?=f#͓ӏ .km1zlHd@"aFɌ/,VUIwu2163-fNLݼ?]Fp5= el#Nsi<o-W!t<[t) 4\)hkFk[`[Ɲ Ym:ya,8ύa@|kTFbOHpIʋ]?OK Sȝ}z*s6D%kэ323 :G.R%kW( ^0&8BQ~p쥲>Sk/~Gi.}.KYY⋹cІW]H@1h&˺A#LtDX)ĄVJSuWOf%uԻgn;V[F%xXӪVh3QO@zy[mSBHc@y 9;.Xү>.ߒfǒhZs3Y#(2(KHq\n]nBWpk ۸yDSL\6-#[JnIN0`{皸`5A?9(8`KTUn"9V="D4xn咱 aը %zθf% C\=Nh(sӶu("=\ דuG!4\L s*zvH eSPegw:ϙ:/7->͵ (h3{:Gr S(]`SVHJ3ԩ83mzq!e=-Y#cò:[K,lŸWy];SR;y%_L7ȃWKt̶= 3z-7X50_B/YyNOȄ3%"pf_:1d)گ7IZ~Rw,éAk),k*$n3v+TE2MwU۽s(vh)aEg`0RG`S&Y<{EK 4O͆;yfSβ:buT6/ ΙuC2OCrhS873nx~/]9@~fS-$bGXJ7v *prWp"K0;/0 pއzd BgБҿ| k#j<fβW}.Xnp'>Dy`t|Uߊ[`4X4i\G~veVge](yX+E[VZyj޿+s :l8swtY &;`: [v~c'HŭqH;$AGb.l?_'Y7Y3/,Q<Z}a@R+PC_+dk`jsf✻"3-*H_7Ybx)s$r o ]JP$kY2rHNT !ӖȚU=&`E/}*Z7:D$Kuqw` ˷P.tb7Zpqqj#c Iu"Wyxy,a J-hQ-MiQ6eaH.h Y59o8_iB. saܻS9\bJ?!վNT5|ڄH?NZ{l@8t$澰C&UY k5PگkpWmߜ0,7!`|8,mjyQ2od~"\ּ {| `y {5fqa)֊=*eM֙1/WCF@3~M$]j*^)9G7`n~V"p]f6UU^X Is i+;=s|֙`kT#je9H8|dvz~k1(aR=B_ra{lX|4I=ƚ>2:546#)'_bB}.-}3BC V4l0mzh-^.Rk^%"*3X:&F˧ޟJQL/byk> 4A-J}fFIru`Bmg"Hr@rٲN׮h34µWd~D q3VROLXNZ!|/m41n/*_0lqv6?F ōfD(~⫑TY}`gTb:ejR=>}j B"C3S-zy5&k ;G "=V%,X|6}>Uޗ :Ak`aC=:Qʼn2[t"x; 5ɢ{P{c~d/q^Ʉ%;uZX]cEAPMYKA\[0xՒ!CڎJqE s9tKi:z 3Qݭ3?Z1Y[<ԨA ]sf|c#`/l&M1 MįUTRG0|X_#6- ۄh#jDLp3 λ`+ ߾븅o}PD) ([K|M5Jvc]j91DtZGX)pU;ӑzr廵ױ e6]t-4ςf,䓗?xJ'tX\pl7lK;Q0cю+iyK`&/HP9{ޝ=IL}NlRk$@ޏi~].fp'{㚖(Rb*t˭+k<b_.:)_9H -av~?)ԍ'm:qٯt"h7 mPmV[2Ѡ:v{TX+<<) (.#4qBODRz-Y}d$ms(~=/F6L0Df!Z~ /J5uOQ2%]yKǶ{i ̎oDÊMLGrUg8b땎A?, I?6lڂS 8Qfu&91HG[ek:>i3 Ͼ;=u9y_Q y5ә6tMy\'(cXio0Qb /Me`woDz ɴ܆~&KUzG6+!Qe :Κf@-9kedF|PFDܺY~ک%iȸ$Ui&z4[qAs}]eh ;R4%@8D m~HW74nBじm%¤euFjR ޛR,@;sv-M uV#-.oCO}h+=$L)x_ |Ey -;\[2Zj .uJ#gmF? !nD?;>D028o)(vow8w˰!)ۚ=mybm\WJU/#Q =6Xs*~A !GAx:vX ڢcRT/FKy28X$`"OjOJ= G *2 NB d[iUF/&B"[39[=t?#XG>@\tX'Oӽ.F}[(„|'"6CGJ ADGt`ݙޅ#?84C&6#?D~1F<< 4CQͽxN$mr>}q>@bշc4Z`Qzѽ+F ->mlcMsdN)u㛞 % ɣC} O0C?d9H=B CdCjA|mIآF w=F:BWj*zkzzd?~w7%15}#Vg t%-}FNA QFz~٢Y(h"L/| 1.#XB&7~(a>Fpf'א؊ Z:lȆ*:D/V3rL(iZ'۷rƽ\ ڢ#;Dwu;nKV' ؎-6;X5TxO?+Pjd2a%wp ɾ۲YcZ*ݟrN +TET_caLBѝUZT[A2ʘDXŲyn5d1l>"f?Z%t@D \!HB3V8{h =JJp n?`'Z=u<| gtꧏ~Mgӣȅ g+yqbcDn xe|Tv2iظzO;94`+Iػ};ĔDsܐ^C^h[AA}N!y@.퀄C8^cU"Q;j9-Gll`)ckw'mt1*`MA*i|"itPڞjLD|BVΛ* _N_\q={DM<8>f\vS^Ar3K7]SlSX[qb鞖zyI4 2ڭu t*D{Xx|NaKo.Qjr SG6QU7鲩6ӉrA o3M/&];̍6ԏ;m'dyo}+K\O1 i047.Ddvpg8 ^vv0f͆z1dpQT}Ll7:1it:0oL^$ Y>&y2Swʸ^&n\[;햒W#3hg^Ic}#+Z0Uޮj IUL#e00Ha:S"mc*HS愂m[>jŕQD@pSL],s=A]vxq3]L1Xn3F՜N;nr_xyĹ#_}x ů/O%]ΨQ?F|#2FG8qNp`wub:ID&@lο~Jpu /ZI_dBܧd|^3g}X!1:Bht *r!)cZ<)b0He tߖX/IVwV(/2bA8Q,toKccG:I5+viND&YFg+6F`4ްț8WKJ'щ]h6Ӊz>Tm_QռGpq>喝! &)ƔL;V괍W1Oڼb鬒 LNUmUTnC}1u2 .|EWY.(=E22 ϓLv)hn,Lo&LGi ~"@bśBd$1_qCDrlη ;&$.bFҊyt?cy"L$47TQxy[[ f!=jFeW[ hGzЄ5b®:hG{B/ŰĮج{.ؑ6D@W5"7%a/T?'/ -הn8j1-VILHA/FAۚJ#|`EZg:jhIE bue{M*U8A0ru;3+* VP-ʿ\LVzA2~bDꚔ)e0YTFsѳM]K@ ^@ðt[)$ ?AoV+,3ɷӯL u&e"\;wpB`W]L +yz D; zZp':^{f4H4w1{, c'ud~JG~%C q.OηXGP\4ۻ;) Yi2sr;tM# هicsX=:‚`:(G@׉skgo~;˯q|bn rI5.;I\tO??jx؏O삻ㆴ_&bUP&֞3o9O^~~rTؖi"JI s҉{*Mnw6H\i5}:ZeH8;\RV́p>R32(U-Ŝ+x'$beoJ$_,&c!wMq5?o V׋徿YOu4Z6ҟxK8v--ӓQKuHڎ@, 9^M4;3I;?M4&TKLSUAZrLI<^|ݙLnZF߮!U3侧}*[U|?.ĤBy]γHKQBU64)L/q㐧tQtA? '3klFp.B1KI:uofh2Y`O}%zt=XE8m]Γ˻;}߉! )RW(g!w^>0p|}[ݓOۣx #,+r*H>H|RwBZ!eL{jSk(ǝdLN}4t|jc6,+M 5PU[t\8f<%A1„1J9NɁ/[Dٹ Ɲ%8Fs O{5ͮ1p4S R Y%Uǫ #y"g(8U؋wzk;3!Bᬯ@ GCٺVqdi;\p.T]M0s/|+ F*mN= v-{~%JLM$E͡&~m jyz`D2Frn8wy=]_:ED猅.ܸ']aۙKLz$K'_2'BoP`P(^B1 kv0Tv =4nkk˽֨t(@S:b雌r~U ,t{||}]yu@!|8~5 c])4^ϟn0Aד+>җۺ}4٫F}%!yn EhfNUk5Ltcv:[;WM !,~ѩQ\iq1[HIˍ;M1A"%!ls»~Q[ug0 o", %֔+e,ڀeg:EA^B0 i5{m<_Ql%>O1"Jl7G%Q'`QÀW忬=A6mw0Gyy+1`mEEQŪ˅T[4'pFVt0cM(YضYc&&3弜a#G X V(@eV]E o‡A}KKߥvQy10_wUC<yXF}P"Kג -YpREڗB͍G콚nxZMT :P{/4޶ 5?Կ!A֟i;cVK*yLW<ܭG|~B6ZU͘]܊EΡ #6W5Nd9'Rz~E@D#=: P[{ГP6$َ^@)sui)"XqUTަ4_8p q#:9 ,o %o4nR\~`&4e@Xs(Z`=:?UżᆪO΄WoD3>NOOoEt(wxuh MƮv8um]&2'"d>9TZu}T'$f(aj!wN5cL]e,hp7#Ӫu4D*J4P't5 E µ/cD} prOZA[GrA7+Đ"J{=} @{ |5[7N :P7ihR_n"r0.. -bi-7W_6(S`/t--DxLXBf e% wISWg}&ۇd8c7UQ]y } AK|5V z-ʨ(?\A7vk@G~1YeSI#m8% .y?uTń"{jP"K 4v~Ԣ4G[@Em+q\$?WD䣎+LnߋG\ҊtFU݋ރGR*CƏG68zjqEf"D^&R"T 0uB P9/ɼ]ْZe6 mba *m'PaOSC! O~~)K9^<á88k8[T6{3B~b&uMO:@d3h_7:uXІyu@%NnA2MYoLyk(xCZyMY aN t`H{մ)k (JyRNNlgъ8D1Z N({iĎJGGɏt游јZmBvy쬃y>`P Ec1SZUTT!,]  vVeP*4;R==MVGP%QK$#~`Dܲn(pkU4Km8(Po828>螴, aWJH,UJOY۔kSoԇKޔOZ`d6j$ŠsL\B$~j;}sˌ(oD*LUGy%{ѹ.–v_s;sRtt K7{wEr0!bB&.%40ZG371_+{"LPZ"9_n8h!,'Dl鮟dJ]w_ەL4n֫3m Obek]+5 gagW3<{ RZ#P\#?ݴ]Y^}N^{ *sςxe6h/&{9LyjW.[EO|Ÿ.ً֙Ia3HeeܱB=VhHTe MõK/7A Y"yZkQ!M/b%,=$('ڗO;lYzuKD+Y 8sTۦK˙:yRxKys;JRKf? &^f-q]w^@DdXS:S.>EAi_~GXi}g-v=uG ۊ5yI ԋKB8ϢΚKb&j$Itv=!CHA-QRmcQ,%WoJF)RSdnW1yٝ _sV[>7.Ҍq^)^G&Fzt/!򾽕Ubů(?X9/ܗ׌*Mx$|qCZuV &,9){VUaa#cio>B>fyxYf"aWM9۲a5׍eK%-sY#s4/FJlQ~{Q`era-|?e Dɶ0N֥(Ψ/fW?T#",͵q9 u.FYU,{D-0H$t1 E`qXk}:;W/-t/*ܥ|w5Jpg7pGqѪb)f"H7٠ݏ mdol5&9s+}$Guk9W"R̭O^GZ SWDc@r 38sA9(nR Z+x?m7C ~`^ gqp9=<<ӟЦ:U[ %{C 8FGC$ xP>'um{4n ANv)ފD=d\ 8bywcob%."@.ېpi T͇Dc’7H enPUgBq}tĮKpf24ˣxiBzfMPoYTY(^یRJFM^|n18YCv4{cE>M(IB؊hvAtC^񕠡FUfV %V2fC.^J_ɴIEV%9!~Zz9@\?nv yP_vJ%7 O(ͱRqt0vtm|(u8H<ʄѸ:+1b*џIP@e ODD=rUaZ$Ӳ+tzdU͝ޕH2& 2БKz,\CKt_1%YkXp<]RpV"}g>h~W͝))=sYߠϲ,OͻM)=)>T"E#Uȓǧ`#w6Y[c>d˶W MV Qjġgh33ńxs9* T)ĸeЅ%٫ DD5|{88T5J!60rƤ_&b&g1% 2w娲j&V;,ůEӲz{(ߣZ.qQX:xÒ4]Tam50?F$cFxgZ ч׏40 [vF` $h/w;"-,d_ܙx] g#Bz=ԧn:me ɷV(&;ԞRk#7R'uDzo0#!V]4c4+',/)auC͜Pm(+ߟ\;ϾCMwԽωϡcܖ ]XiWz1S<עNmGtƀW+[ ӟ睉)ֳ,ko"%Փ$^'Z XM[ 2GČ>eXe r &’3zY@D rXɉ|hG "ny' 0]k`a7վ,ܲwL!'EkI3vْգXk ADV%9>t| 22`( ^Q#!@`SPJ;`u9iS,*}`_ZWoj,R L*' *SLUntiN18`jQvʿ@O "oM/*&.<_#J>jP̏>E-*sJz`d|BzDq,e)UMC2hNЄi_֚Ac,5'X'.[QoWȰO(-*[*6;(Kîm:Ɖ {cēwJxH7t AP6{%~ahZf PzO×׫W& 15_ L6[I=.RcVa{a]fc`=O>Jn79Ihg7aM/wme +OVj}@Yu]ԥ.\82&!<*,R-f$ {`OmK8j{7la`8V$_(k[H&C5㈙s7DǠ=eS X~%HVojB9K!*r}퇗n:|I$@?ɹvdrPErF5͑tid}N%.sئ#^}>+~q-rO'j{"kTDXl< 4ߊ{W y@w* H8xt`휤]W:^^G4m姴^mѮٍ/#7NGXÀP Pt O,!?ZpS|14c#`*0п7ۖ"ۼE 177`ڼKO{ (%s(pjD0VsEUE#D;%2]|B'DžəTZ!MpȺQTR-TIU݃ճVf\8 k#@1{`Fh R>!'m].Mjr1 oR!GfZ$_,bc鶀PE/`ੂq,`dO3Qd&F)~#^ [mMiQE*WD0FX||-21|Ns bVgJZY}bEF ؟>&5E xÒА,AIovk)%HBa Wm~ja0(xs&%_1UR#QT^Y̢XB}9pHD C?R- A3R* "; nA˕n:FC.tYKd]78p qZX3~"$q)r% @-ьRpƾ (@ Naa-4JGpG^q+nzm+x}>I 81=𴑐їUݺOMП֗IOTɥ6֨>:iS@NWʤ2,H@ٱ떒 |Ft[4gJh}66ٓ6e/Ԧ-dpΨ>Jԣo *h,WqVhvP@8l9"#ߛA>r'Wdti{A c]2-0'D0E *\2*) %*0RA *լ=VUN |aު* 6:6MG. rKON:a^;rP[t&*W*f<5`S!faCt#.PV,vfxe.7Z*B9 ?:Rh:t8"ZGQ&-',xIqzFn|G9ڟ!fXRWb+n}p?~IjzhSMf.qU܊x")P6A IygOd65<5KS}K:M8sg'naD/v2JS"4\:ir_R( %Y &m'O?Q+P#~tD@Km=Lxoi=ZuuoU鿜\iN%O'aLK5VP\W:Jz8N1!t9-̨Q-*JCi7TDԵf=W:s]CU?Äv9>욑/r`oŸAЩ$֥lҷ*)|8OW2A6'E5WJ2kmo(o%!m2Xn Gq5jSn;qU }}V\&v/܁C#jXRM#[!b- AYf=bsb^N"_p0EIikk) 9 |Y[8R[H4HjƄ'au*Z}S>=^D/!JB=っ3u wzI>.YS]PC;^2<[ .ο9DžYfpUtDZIHqCWlxqWj)qux !}gэZ]zXĥqA-&>X7S' {~I >\S-ot <MK{-*N$EqnV!h)93@X:\J˄"{||m7lx_K\#oٷ; 0|;_- lD=9=mGA^QB_OT0RL@{GfjU\-zT,s&uUΜew~~: /hM4XVe iO>%hyH0f^#i4^/F:ػˮׇUQB侯1gy 7 {d/Tw7!Ãz19i \ Aכ}xgmqJ'#컆[w+> K2#_Mȏs;~Q!cWvy!عl8hFx Ε6%PT>:PCQ{}PH8" K}ٳqR!pѬGK-mH?NIPS3Q^g+>=k-It m`AF7gѐx!e#'\쑐"-Iޮo]aFqx=BWd0YDGQpr.;x-? ںҶÄC`r-iNՅI t.-Ml'NҠ.?T d#`3?=Z200%`@4۳w3&F`l04u#ۗk5d܂c5>Z!껈vx7dϚÀTq1#5ؓH Z~W'tF u 7nҏ 6NA 0_J EV9ui 'x; ۍ:Ē1pN)~ig,g;5,(DPLYO۵ ߕ7.jypL1&#t_^}s$(Uaݞ!'h*bdH iS>BL㫫# oH%z|kkr%I L^o,N#2Չ c. BhI: ]D1Ffr}cŤ$U|RZj[K}=>tœ_S~6jXDW{uVppN-gQyij'a,]!L&H[îO.N7-ʷ-daIY^c$Wvnf=7DN*qYB(/J~yͱ+ E:1 3S_ʓ D(E5sb|,Xwp0t@vTvKUx(A-3UmpDeOhd)Vofi|)}篥Ww >?rzٳv5WBNhr4*=L'-|=Uj].2_Ca*ܞR};0d#RO(Lg96&53je٦6Rn֨Mԓg/ރVZeoa3ۅ߀b]5V'P1$V"2x6x -lD%G݋>B~V^gbG j墧ȁ)N( zoJ FnCJnh IH*VT#lvɝխ apD!T00-m'c[:z=}w| %DSrIH] 5mM{޾Kg3;ЧGu~*ۯ q$!MaoVS4  6aX][˜92wh*_%I>5D/~NJXy>g7%?j(ɧEM26(`(1RZTahL>Vau.3r"Qj)E C%qVӼS2J[FG&&% q跛>وؐZpVH1gy!؞#.3#s qr$)uQ1]|>'>^ {X1u7Uv,P#h?{p;Z|j)~2m^T.["Z-C%a_憅]c%G$M(X2j{Rr^fZm!lĦԐGuȈ/G.CJ"B^D; :?_7TtƜ0\m@iݬOX1f#_\Xi&g$7 y wEA+EF uo JS )"~4Gj xt e:ゔ) s3w! GؔH!EoZ[h%< Y툿VH[XQt 601 +Umo8ʪjwGe'{ <)b8 gFk٠1eD,{T&cH!TN&9ԵCEA()8 ֈ/1cB-IWK UW;dޥ U*z@mk)imMQ|5@3'bHpV|ʌM6Aeϊ뢳GmhBAf7 GpW9/fmuѐ#-(q̊d›d"8lSn,muĭЖs1hÍ,@/:MBMΥ#0 &^._ozLYOb=ߣ f+ܖ }/nځr]4죈@Q9soKFfO ]\(- ЪMRn^4yt+#8IJɔj<{Ni +z>KV[ŇŦCB\kz\%4L`խ Lp sx[u0:}xha3,y8VlF;Ϧ>?J}Λ`Y#(Tlf.dO!JF_rtkѣ^F(Ryϖ'Csi;u/|$= a#!Knm=|j6 ;,x%yڈ38`Ne\gJC7ɆV߻wɛF1jb$ ttRU+h~d%~]ECW x8]…;=a|ybcMivM#BturvߒmHBqHSlRFnrbjݔǓ,Iqb|:E~JSE$es Ҙ;߮:E 66*!E!Ŏ7,&f vi*eZOv/BMaWBq >C q?Xs}X|P𡖙|S *Ǫ1mOXj=WCEm yjěʶ+&[2OMuN+ t/j#Lگ,Ī^SJW7f+gv.Xf"pE#MUobGwxwƆ@W 8'ɺv=m0="tG#CϏJ;ڨ#L!}4ыj_/K,a2͔Yi<}*ҽTTS2j[S낲eB<΁ "v:.)茭N'c˙I j!7{8HS2lC?4YДO~Exz6F/lN{Jmjx/sDM M"p%ڪQsuUe%~W15D`[昄:LdȏjHDQ'8Pη^b@ǀcGwNr@2±Zf$;>DH{PrE*s՗w砅`]HTIlVF GK\r<[6(Y@IƟ֝y߳TkM %f[H5Uj \QM6Dš:$f%Z8́j%^d[U`G݊Pͯ%-Y.ҩFWW _Ƃ3呧|~[p|9AyE5֒{Cq *Ƃy,ڳ槱޾dMmU{"#7G祾KrakSR f<疊&,1lܿ5r8jxp͖-9㨓 臠+h(ZiejRlFxPlIt%H+=@׌v, +T)T(}{+(V88,IR$ ?xul91,"bsۈ "(eϲ<}HkF =ƟSp6f3]՞vf~x'9{mbRTFqn-w%rO `҈6嚯I,mNdZj[%^&՞ڨ-<ۢSxl<_Ev8pyGLMNu3}xْ !a31^ n놡9ԘRRQuȕKbtZ4Q0yD2ǸO']07~ g3cΆM/ xh% d{V5VP:tGzJj QVQּ8p]j\ jhFnTys' Xi  TD(m}([ϥ`t41 5;T݆̎ pӣUH(S{m|" -i8yb^{Fg ' Ի 3CJYʧ}8%z|h IFeL 2jgjVru.sJb$J+KǘBa%`".C %GACx- A BЍW]$~|d֘8vutŹ3VQ3@jf*Og//z}^ə򂵤ute  Xz O2YQzcbNdC9((6{0jND4z&H(]|61V8pOBLPkv~o7s8 ]'쮿Tރ]C%d/#i#q]NNlOŗmg611 =ܔU-V5MXKck̸vG¼%~q}4`oeqp-t%r5p`"d aMfMMO61u5u*V=ӊQ,X9AlEwy9x=x%Ue,ɪG&FZH jөQ'ߝP'{ɦʛj*޴\u "7K14(^?Q' ]Igrb7To4,_}H>f>R޴<'54pu7K9@g:I'tn@m!gGA/zឡw~}%ÒvmZw3}'`Y}vbǂ]hNkSPBFK 1@~Zƥ+Bg= uhc4:D(20 QF JQ5|5E} PDeFh{4AqզAJVUAi#Xs G>n5JS#m?^bstxb{P__ 5k9\$@ŢiQ^NsrT$xnļIИk@'FG[Z7vycZBf)TNr)µOg>qi(nC#&V 6S=wJpvQ e!+KLHxAmUE\UNͷĦL ~(xҖ5O" p689 @d뿓KO4@Q$ 1O{9-/m\LuL%?w{02tǓ 4.e$M[!a@Ib@tLK9r2eyׇݧ$$j/Ϙ%09LڬFҷ͜T>z}96mU3 za#Ķ)AdzVfjQܼNXRݩz.lcϫ_*š:Jf6ݷAnv"\A{t]Ta缴'o[TɮXl@.NG'!W jrS>B@+{x/׹Be# 7RҖƉ49hlg=~ʜ"آ:3 ,RgLYݼ@rj|v2G~&6F܏L5gmSܤ,w9Twf^?0s>%]A,Rp:%#ı(!F͍*M߆_s! SپS\8 wA.cjN9.2mGuM%wP¸i/g@_ؠ$>Ld1T/+l5g{m=D,m$td'1c]2"@U-{yL)qcg!l'YiR'ĘzbghQc_z^I]:?V~˯[6Xg vxKXީ5GϞ(Z'Yۯ.\pS90;ȟ'RAt"G1 SaT˕Ҋ$+0Ҟq}C}N_CÐN\OdwDv!zc*+GNmYcjDH%dc0^WΛ w3ϟ;[k;V |^F_Lb7AO. )Ug1bOsV;.&#jWG-@Btl1w[}_,.vNbv$)q\3@p$[.c5* 5DDdvΎ20h͠W|HTm .Aа,ő yi7!?1鮟]YHW'E{00HU{%.̞uF2?)G,NrF*K@dהi\jE`?'wsz!`,!ȳ>Th$+>fv{Yeuaq7N6 W#a=)ذQF2@Buk~[ge z=5m fwɒLiHؖR'lrhzmkyF3KMw4dn؎Iz"ߒqKWABBH켕]6g}! k-L~)Bx cw C8<]IgY5CQgZ:Sgg?YtB <҇.taru|'Zw{΀9! 0G̈9y2ĸѨZ)fi2|;%َR S[~YA{)n^܃yi9HυՖ.%QQB}Ei;%vr#~kav=h8PNtj lhT=C)EHJi2I mf04N"?yWN\̼Toїԗ n}"]||gs%w2|u2{138l@åun\V,zh9M >Fi%܂jvң=VƠe$F @[",DR@DթE'A]4O3Oh')#|{G8B۬. T)dzDnZ5SpÎ`xS']^Nd.+7o=з'Y* 7;{(~>|R$bmӗ8<W6$^M? >}JG!]u/;Z 5/8iBZ,ȭu tu/E8!rl%7]ɺܶ~O|X:I³E4;S8^#(+zH_Aޞ񾫷BT1bCe eB[+uα$JLZjzf ۅx 4rm j WIwP0HDQzPIHCG֋cFf=L'N'JW-u$!ٟzM-=]Yn.rدs|l40GE0j˷BJglF*9WOfs@D-V ZuD#kj?,Y&n? B[׋#Ws!{8j6L2[߯1H&|NvbvհJX0=*QOZ$] P;thX#gt%E= jLƧASr &d}Y|^PQ}Scein߅iXvB5Jxq3n@ |bA6/bqPaE%q@N>J\SWh >!jb` 03(x%U~.zZmfh.S8e@OdSJO#mG{ VSUU9槍ŴUJ7Vz@%s^i FڊR7苻h y7b=^nriod9` Gxێٮ(^؅ 0veQR˔}$Cdޡi\4`oSٖ>a ZO*q a%<~Rr&Z,|uv; Fĭ98Hn=!rnonQxev WQׇt%EIyb5jXnh3hO@v*TmA*ZXD'<&MvѴ!*(K^[b})g~$^S?] 0Ao2APo9Gt6z,^] 8E^&~=p\8fi.l s0?D79fY$qhn0ɵ Afl pܕ"I- f}LԽpYpZh>$=R׹6:|O zF.vS/|<Нβ_楃{{W=E}f{ ߈ }qÜ) KPW( 9pln/HI-L /K pzyMEm9ں9dY")=*V`6bt 'ti1.)S+%jNx #Of&Vc[Y΀^;[HYj@%ylvOg]9T \:AT/ aKdJ-Tf kf$páNo^ts[8o'}#x1f{-+7| bpَYlM{VX)dMQ |zxsPU'"ե'tS(h¢3]8<ܤWx)Y`耫ʪksM8^6!:滅TFg[{N!}6iUP8Qa2/b` 8 >;{t%c xQz44[.)m[f^TnHx%|FZiW '×iqqR緇MEU @\yO"! 'SOt,Dk-뤝\~{s)+8†lR1V/jF_bX$;+:ѯAڛiR דt`sCBft nSi(Dge۩bAG2} h÷rJXJy+OP(b g޸&j;#x$d"/,4jb$ba}ǂy=Ζfa{P+,^,:u ɱђmFgLJ5E[ 7*VH^ڔ`n4Yy;[>T$ꤋj(AȨ0mlu|L[C_ Iyx6CʄapĢšՌJq^9OJ=Z״CXo^*=DvHC`m7g۱h 5Aa9aWKwI~R)g\sGAp/_rO-ng? 4z'bQhDg <_B*).+AC~1ٖ䒝" $҃Ƒ,p%CbҾ4D D "+Lw#>}#dz-&oŤ:dsnzZ{uLC nGp<@@S# q$H/ź9 &*ݠG2a>,^sgAv6ٶ`Qg6Av6I.w1۔=u4oɿZ6RH$>Yf0rPӋ5ҽ5 xD*`3 m󒺫ڍ3b}|5">0\juPb[O=NpTgu:Uɬen4V28agtpBKyAը-k dS>(4/9‘XI*&;`o}/Yɀ6[ I/iMTg[KڼD?)RzL-Iv0h B+k,$ҹx7Xهdkkb#n.F޵Ɍu|Wϡ,  *[IΦKT)z,ܿ:d3!6JόG6Mf#):@ 3@9XFLMާ`?7V?D\Y+. TqVP]욽NidL#vtH!tE, [=wQdMQY4p)hfqha=;:ăb'x}?f9Hf* gXmh2jW%beMp اQ " ܃ociA7*kY@mA׀7[ơ0=jpCe|Y1ba79w亂쿈Ftbu`vgvX(qQj޻ QBrr])U'nx&]H{R3O…/>EclX1sY xՅ£pX̍PJr= ug#om^.1}y}nP|3(Ʊvh~|đ\߅aNޒ*؆Γ wO1+Xë PQ\TYȒ[R77JG?4Wf e1X=TMB%r(<뱊?ۼy&9BAYk\#Vt̹ MZHy ;e-sD٘)tE"vP:#ޱ.t@~6io?Co2 B@Uj(6'5G8{ 0T{C0X]gauW:ìN/e_iT&kN+h1\1];Ylgz;B-q ϩkœ93H nw<^_.>N 71Z 苭ȷء9D\^HdY=OJP>i+8/rPD)}Chul:#,\9E b28AHI oQ|%%JRq~>SL)[˞XI3Tgָ3y8llA&IH`Cs+/ɺ=N`_aAH=܉10MM9Ce9M:/\c#+eΰ{.5t"4W:U ab^bpY)NnJ"gVi (q!"HK^J90^]^8pa(vw3* xպ`q<!X e/dc²$üftw> Ztes 5^ jy6,˔{K^SSQ6$C2< #Oɳˀp6rDSbaE&,ʧ>m,.m:,FtvM+2H &o cF7wjc&/+" 5YXɓlFd @; J CAT)zHKCR: ?=^5ZBJvL;϶fSng>oKfAKi "csV [c&e֒zO-ꋖj+Q t439- ȤDι(M<&Jg :?iRec6ű'nfw^fvh5w\݈xi=ZH"Xj4$l.s?p,hE/ 5RW\ ɽψy1xmb{t"O˿%sUaר; p2A̫LFAQmCۚ!u8L$κh]d[n)llYa]}{~.QjOshU4jQ⅜ViHcXNr0B0bm;j2V1tY hV0o} n"U V[ەKTf+IKggII0?+ A/PZ:TU'^:_ 0[.Njc0FsFMFLل N0̊w0kl6#4#4& pKv=dQ m(;=n3ވSq+O!&ĊpW1(oU':jOG:C4? zPHOE[z֕œRPg ۉ?BQ'V6-dzKåŎ3!!*̾oЬ&qϤ7O_X,w2}/K$ hsYC{1&8+ A!.&RHka՝)5tTs H_rg银{XdA"8M"{k^/ =ƻӁPc~ ( **n5/_$:DCA jdԌwJ f\v#\F #'ʧnW R\S벏6p)@nH^v/j1$(:[g,\q-Ptǝ83oEllE-eٹ!5XYzX?gw<0mDo@q}e4aHArڭs'Z1=7$f>1&i6#d9u=̂ RDRIg.)8Z](Ů JV)hf>,eQBx^eKknqBRV"洊ieRrP:09׹-qlKOݴ!Cjc]G$ O8I:xǐc&<$q׍%Y'7nMm< |!Erx7W.O%GGqIYs-_ܽI2 CR/uu3sVf^`Ēx3<@2frf쾫 /.V2SVs~/BS͒ JOQX0?BAM$ LӁ50R0czŒ7anˈA.12xu7q퉾pw8|4:ؠ9 wv< *ʵ7O#!(Y\dQfѺ7 VV4^P%_}/yx8םYiU>HҺ06+dkeiK`b& (q,ѾHER6PDFA!^kk#&yq,G傫lZ() 899^G4|r%~+:.f|+oI=ߊ& dCҍ 0\2dieBAox̣ qmVجҎ[D@ ;孫(lXg2‰[P7 C)WvuH hH #N?Q2ekw۾*yWafV 5fg4 V^hſW‰ Kx6|zmUCVVlfLr@?kǒ! dԊ\Yn@q*dT؆9)^XW9 S/Ĺ(£N(\1;BY\ix#Ч@?nդI{VxC5얆|䘾Ru+1~of u9z_uDq&/}>7E#& s=!W{JsћiU/$w/dC\=1WsҾ_WѿN6`}soVJk C|.ԏo(4[)t;+j3EḞyP޾TaSt=%< 2ءC6CkxF^vZ=^N\q BMܝ.?=ly㿄Bd; ѾcЉ$ 7 %XZ|41m՝ҕ:L/RLEirks](+kq$D6啜rg69W%0Ǎnz8؋c/q9E~K.hv?z 5lͯ[WtIoOQ?© C9(tC*u|H׶V@,+ii\7&2K~Qᦂ>4R ~]G.8/b?SToGO0*W^>LE7P2rt_nNmg!z{l܏6iv#]3D5u*0~ r?e^gZ$ vltXΩ.rXfŌ3.ʇ_0tQ!{oX3z>z5=z|6-LU(#8P׍;- /vδpSɩzʜR7|Վ@-!4ŬOk6Ԍ<2P=+Qt6n0D͑kCٟ[oA2.DA Uk ]S')"`H|:+D`)>p Dٟ`$ 8;1QG)u ¬u] <6{{ztq~F4,o%w#M\<.t$#mڮfi[ӁClѻVH˻_[I"? R& tvg Dnڀy6i)ӝ'8IIU8!G9u;C@q˶17?F1d~L2[_mFK+ҹES$m=bnz:t;puPJ;Q\E6<-ظqaS`Ӵj_Ta]\u?4$W1П"Bb-l!Az64L|ڲNi)G:|B:Rhrea;qe>;9б 0Azc2EU '4;eР}3:R|G+\G݊=~K֙b㧻/:"}.3*OBv|/~6{ *2xa e~,e"aZҘ¹hux2[nדA3i.[rAdV`w(<0>M*z='G /ݽ_ lgO3u >Ī2 mؤRxp/SDdQ'"$C?sm KƇe)-vq{J#D8&>1 7 S0TC-|IfIsKľ䳖aAз(eQљ!m^{cbuJylU) -0'{ n GojNqh/r'zQo<@tSbhF+OM3%1!rSF`A՗{)`nr5H$fxs"ӿDH2\0= } Mߴ%fz?iY{|c#k ^lX{`\Z񡋺4uo炓N z5:C#PdCM$u;H}TݱWK8_߸֋kL=ρFaԊDdM)M k]1-X%q^tś[qcD'܅͛vw@@M MfL{:s}rYS%o1 63m(VV `P=mmp"j@Fk`Ad|9r-wQ&54X-&S!gb_\A7~y{ݱNsyƖmr|Jߑ%)?FpYiT!6ȭ`Ǐ̒Z}AA+nWr9Uヤ=\DZm1V|^ O"3&JNu惀`iC\OlM{;uHwRWKCLϧs嬂7nl?Rp6Q%ݤ\{>Z,'EGo86Dpk(;!1i{z~i&i ^8Ѝ[~sH|Ϸ-hJ (d*AT,RlT]h;qSƔz )'Xv{cӝrI F7i\a?ˬ1˛ ۼeS!EoKU1ۛDC%#:!=MPIBMV%uZ|SVc堕>[bz K"܀wTW5: h#8|k|bP 4'XѹO Ek6JXȹ`! 6CMjV>ip 1Mz1.C!au_Ry DXߙF ݄$4U xw}]1^L;e@8p ѡk֝!dԞ1HKޅrGӨkPl.);&L]gfy"R r<D8ٰz [_i?bƩnRKN̖ 1v{x9Gqց|}# WbzKe36\<)C0"MX{#.)Ac v 8R(%DJ0L<0 X2=R]nogi TLrDE8MmKV9]: k}EضM#݄'cŁL ooy g":Jہf{n듿T N}nо/c~iUO;8h u4 F+?Pd^}Me:ƋIL/bqO{{3' k52sǘM2p:o֢tjZ LO;lO9>ŢQ ۿx<4&Ǒ+ʚh 꼖0 'gw |%_la0ͅmGo iKG-VmEQhҹ9Q gkl$)O WiX-qR&B3íB[eHse٪2oCR>1?Nn@;5ln8jr!ʍ/<&?>&/Au6wZ@`qubh5A)`g L ZfFt6 @_d(1KBһՍ%'IstX1>{iI[:bi^M}!R$SUot2!_>5l99gHknkƯ/iW$?rLأM*#$PW!s?W~ $5P$a. m max-ݥ_wnpb*|JӃ YhƷŅψ35_-Z܉NFD`Aٙex\qYxN&E3<ǰ#a})V?V~ډ jRxuJk(B?W@qHŒ&帥)ك nG͘apii$ZI"=&:C;,_Rcy Q,.JB"0W5R+("Kj$wv-gv'NCꊈD?;" :/Kr!I΄$Ů#~]gpGBQmwaV{1UǢ<"̤vz;ī)>qX9?ʼn wk4us&BV⨖$r|Eg]\M+yEePڽ="e^& ,%8 v۪/nqåܻ~`qA47Q}911L*Yqnh<&]S9t}|`U-I h:|M) ~ihCq?&34m j>J0'iQmO'ŷϪISoki2ZP.= |Rh%XQJԏVMVGʓNfmHcKeY 7&˴UE|B2Ŗ2p$GlNi'JvְeKЛ [3p6ʴ-<҅V,&A' @!Y詴o XR/f`-YJӽUHJ;lr(<|pȻ^ӥ!tFdCO<ίI(|bjvjJxFL1U3$zkzD|Y͞Rr=M\ 0R^Ņ?hunڕ!L<9s oFo3id斾@q⑜dlu8nɐH3rt7^ZI>_A6,u#c:YLtS7KhaІXN[B×Le:/D*n TH~Ľ;ȉƈhÖi\òDC 1I!tsɋ,r,e~O\\2.:E}Jq){_Qȍ.o-jfY  `mʬv = EvH\V q]OİX{`7XH\c.hi\]Q oZHm[F׍3 Vt47v{8YЎ1{t{[HVTm`j>\a6^ AL&~S~,o[oц I?Y X"=19LQf"CR?3䞐Fk ZQK.okVjf,:x1LW aD:< iYyO&1^3^g ]CT$Y?Icߦ}kxe nI̗,20 ;[_)uR/9-;z|D/$qˆUTR<:M/}gK6Q_wtR!AÛ.TO{UqooMin$y=5rܕm.J~иeZPW:=%ZpVqm55Y*Af(}4eۗJ3.r@՟3hrΞ=OD7ojt{f b#"BiQK!WM0险'Rb]l8W ]觯LJH?ya_: 38!h$ꢋ=K,ݙ^v}*iW㣽yj/7!꾣Cߦ */ݢdf:8 aNP(/y |14BU]ʌD?% DoUQ86DaW^Eu%3Y_BXdŽeGS0fW"Ļf;G3k̿ߜ*kX% Kmx=F|a#q{r0Y+NN (HWt4˅xcEqSnnQU-|ezo&)O.8shAPdƱl>-f`v;D2aFˡNyCߵ T[2KɄ4Vyexy[yTS1&zwץSKzhѤ1p ; &;[uJâRv)`=ծ\YNiZ9=bzxPA:VQv|.tqØetgi\o4EawB,\9pުc8^#Ok~^IV3)L0:ˮ.UqR Hޝo"&:@9מ&(=Q)r! lؼBXÆQmqj bpv2rV8jE_{Ђ s'[0򣕱?*<`]>7x.Jɨm[ŘM2SdBF+esK;x؂G|kWՈϲr<=mQyzc}0i@b%֙(Lp.'8 g:3=CVC/$Yy6?ԞJΫ0 #T(#eҪ|BL;cwY bI>>edؿNT_C@:"70Qf!&eܓih1x뫀ƏCٗ@oPwhCÎL6gKsbX?y6qсɊDtZ{~\FYؘ 2߮ )01Y4Z`#B 7,n*\fUHv1or/O)K&<텸lUCGAonZEj)x~β2<gwϯr٥'@RI`p O!r_xiWfIU|I`c Gˠ0NBq@ΉMV2* NP qy#~-/|rB&YdS91q} ve3 A24-+_^R盤:;a41U~>`-7vL^\ƖEq2]#'H9Ck;kq=$x()` Vݭ~%])O;ę;A!_~Ԇ›az0Ov{#@AIT7jhyv"3O𚰓۩KU}X VOpo0}(Z/\w/)lUX+y絕6)֤vtB=;pݠō|nHI]>02$IUG4}ᕿ{Le[_zA%R(BHxIŻ'ӯ}&g"Ul :7F\\G.g+'m'dٍ9FκCtVbIEK#߆,*Ep(:5;8&j9Qy6b(0M9}ݚtdޅVX1RF/V2L`/DŽqAUyJE -9ehhhg0!A]$nDHv '=Jz۵y|ML?>i+~|:=kB+1^a?T~8礶l}WSwa+3׎%`s#]DŔKT!)KIӾ-ט9 ܆1"Pl ݋%$Ÿd7Ω)OM( tk{5,-90kG=A17Zt-[ƼH(!zFf}tcSrZb#GEQK%օRiIJdkחjUI'r^ p0IxI^ʽjtpwZO]ĀqP^n.E+]-.&$p}2!2orttV+;Vcb^_: 嗌ki Y/p҉X:G8;^=ׅVϿq֠,PiQhKGjU` A EI׍'W7gpaр$ +t"5V\Z$bZï.[d@0E1'"ɗD&l&.᣺  _D= E"yu2Ѓ}X{ϨF5k$yiГ:ٝ9KG_sEc_j8,kŕaEEJ9MnjeFoJ^u>{av 5_5:ޮ%J$oE]QyyK8F1 %.#U% bYg(?A,JƧ,0NpT'1j=Gy\̯rMBӅϭᶏg4{\t/XR)C#kz<cB&keIMј_LcńN) ȅ/H$Jr1>LO5BWN˨:4]=rZ*Qy<2R"=}@ |txmH &ygeVn#g\6 jXqpP,?O\d]9% ॖ6tҶ?N, bnH"`ݺ³nR uE+ZHWc3,z ծ+L8a˭wݶF(O8іNgd=+[ W#[ap0=[ {XN;afWLh"%\ ѵR;@ PaL "G$ڿ=)nx4߫lhi–vyYf=txy`qH)H$ٖϜOnY~!Bɀ`ncϏ:-cDþ}O\d4uyJ+0F \W6 &h[P`ҪMf{ 8vq}h`Ƶ k4\z2#šG%-Bd͛D+c%=!}RP_L!0l=2Q ?1RO r+w6|0Djqq=PA/hOojoX:l[1"7/z3u]*)|*Z02!pab[B, rs#g(tX:]2DrJKN*Sj*U?#=?| O:+Dye~Fw5ALD]T•gq (ymr(]S!oܫ!l ށDŽ4Ct|+Y x XCWᵰ!t1=Nf.'#uE?!!ǑQjO 6t奇tt}I4$L{+G :m +M`gCfJxkLk)~+[dh ȓRb@ ΏP?in[#+QB@0 6ÑWXgu^ۛMx+}jhf8) 'TTC5|kn BRbKxEiz]2:msno!4̛oZZ/xa XDWѳƬ?I ζc[rDND5f i8*^VeM@77i`zv)+ۂ)HLq';"<ΚO*'CRɹ5+kt`tiWfDeKx!@`f #bKt17X*BsfTP'3"_BvUF'Ğ/T0ՙdSW[>fOE hz?at%yҖu AtǣjMhJ*84P TPvr$Sl]gimkHXqi2.dkp)bm͍ԫPg-aej3=]/ , ue4(_ d^8zIݞ6;K\[)H*GA94̰ߡDaĻrJIm&KCNBhf= + 7vN3r\ߑ̳ Q )2u¦T1=OOɋϖyb2+RIƜr:L@z?Zt3f2x4&`~m }/ko[lb>M*oڟf^.D&UV&w[`KU^3~PmG]3Efl~~{I?vVyc z7!&SΘ ?u.rv)6 =|KyE@.&*G1 cߘIZ]8(䎅bR{mjn; `y8c{A"N<qdk?Ak{gsQwoВfJr/@3u 61~WIp(R7"+Qh) hp{=kAn {$cNLwinhL=5[j3 '3!כs <b6#P0gG >ʳʔFUL1Ö<ոfX3/qS1[~Ɗ7<$l Y!*jZQ>&ʷ~:cZʠU X0GlG &Im09RԄt1#^1m&訬z[r D#= #.Kwa؎>2nBZv qf̞Tϭ-OzTsZdȁy̪:2X&:1GNh+Y}A/\ᝌZz5ϕ 4N@g6bjN$/z^=k=T}TIxPOSo XDp*ylž/|l9$꛾ }Lpii v.w\ЄT0{r1ـXLZ`ԑzֲDnoPkTDmY%6,fh*cmjjѿt;UX`9}Ri]" gL /?j<%]L EuI~PHf 3rÂu Ն.!/`$ iXx#.L>-lcH02g> CMXABU,ek*]uL}!/'lG+6MIgy|( f~% o;V@ ڻhk)*!}K w<]bZg]ėZsnJďۥy{,\wBQ> 뼧blWh9WwQB6K{ 13};DlG0%"<<{F߄q#6fڒ3XQIy條T#&m88 Zq$|0Cew:lLѣ!\[VYu19_EM͕겖Ռ1&F+BsV3\^v[5tڹ&ww{`|Qb^fuY;1fy2\7}ݬLuNd؞\oyHQZ۱r0,.|Jlt':}Q #)ΛK;Qv $# ˯*E]{sAzӿ!}چ@{^eno57j.F E+pɑпÎH?[w^{8 p1gn'1 bva@`u~DH סz.!D$q1NلS-r Wa\+ ɲ |uD-]{@1\ gx#DV(i\|65LF'8'mț9V# ۄ0OpX(ȾQ=-)Ў?t]iѰ1+J'? 5(mRXp[2)ײ>C1Pe&45N/ cj3ahiDStu6ՑkfxtB$!VX6g'S a;gZ?7חۨzũuEu-&L*t9iTkԍ`W>F*`Ų3_tIAݚ4 $`H&J[c %c:"9[Fjzk{K5.0M[V, ['Y"^ -ԱUK&i2׽\>rZ{`+FCaʇdݱI(CGo@ZgwyslQ6}cq~,@3銨gM$H+N0liݸa{R:rrF|Wy>g^!~lC21з!$aX-9}]rRnƉ"ym+6=gJ"U(Ta?r&M(TϱwKi6Qʁ٦s-jڈ D !vcy1U沍֪͹+ 29ұOrR,V~Wr7RlqUFs暖eEZ7foes^yD,8'wa$ut/S F̬vN:N||f4cu< Ii9?5Oa=?Z?0x!%E U3~A܏ѺD![7)*f1Λ4& Z>KH4>XЕOJjG/[Jqg.K/?Yu;' %R'Ƅa`g)Zb05>TXU('9+}ET)hLD)m ܜ+g;H1B9lOWb;{X˔b` XlNC>J,8 YW8*8yKrߏOHE^[CTR?$ǼA|TKq,5B/YQE6ayg`t^>Y-0׻9e#H :h3Xg-i][ =>-t֩$Ӆ_h[2kFP'\:u@QAsRP~fh-]j5FTgv}0x}gbS%N 4=Dz>=n5֦<&j?lC~+f{}{\nE=&Vī峜[[օy=c KKAu^G$NV4*a5䄻Y*+wM 2("Gz<"0ֶB?jvU$R%]s50ۏbF o+5#8eTHnnDUO7OVc =PaoqC+Zq+Wen F|k`#S)_kb67LFQ\=p9+!E?FlCM}CדP>tcWP܏O5^ W[O}Զz3m4s^šiwgTa 7Ll%:)]&g(i,dy˪mYw[UT!H#\/ulL&3OpXs5۟bhzBZ|jtC.@T1SP &fv&WYUΩ /F2$bV]>lqwϑ*;5O>wTM: ;$$oO|@͔B+lAkfo G3/p{:Vc"X#::l薛5b_PD(cl+ri'b U]V32Zlқ;/׮4DrASrn4^꥽| c&FhAɡzpӓ@{]c }ɰ<9o CrBw2leM`O A&zi0W*paA#zL=p8 $'f13᯲ SU*Wh2ͷF <'w".ꎰWi_}ü3U]=H=_DQ$XB=P%x I7BuL!h%Dʥ%,C9b裳YR7xhkAo SBᦐDTst܏%)YI%ßʗ__ȯ664y]~=vO+SdoCi.$4o-v+Pi#ީRHvѦ;~ϥNrm.2ǃJXu \khfx#~bw*$+'b05 r\wx67{ £-WrMxKug!y_8|0$˼Ӏ{mjęϱ 煵.`CE#h$kYNxG?f_VRtyCvD 4㵂; cˤ_9(T)'qJv@eRE7P#O!uލIռ;}^mmB,<(y ̝t!R~ox2:il2M?^+BIuZOyJNFXlw*u|jBY/ժh-ycKcF]h q)S%jCLfOuroxvϐ{L^$$C8*2 kT&{_vcAcո`pϢЙ@p_YXHqu;dOB+V![бX5jߙ;5!k {}9D)@K:?QUGNk ay\)ԏ"Mj9tp Zm=BȽAպRӦȰ+[|j=wk vAp.ɦ`EG^拖S QW_ydUxH˼_#q\JQU{'fU@nVf0N#243{mgBAcS0$[2\.a;*է0Ed~{U{ak'Y+4F6Q?USW;/݂YQ]HH_pQ) YfJXplб-Tas(%cgw 4Q|VY }1DFW8ql 6yun_GEs6Zl`JO2!<1%(%W"ݙ[>|=^IywI@Ŷ[IbGU,=od*7CB =W\fxdݴߴޠ"*\lf/-!0d. X N~? B s}.ATT ]ыm5E;=oS;m|o*9AYġDZ1iHscзD\f^Wd!^ chM+"~@B4ppZi=cgl:d2pG* |~Ŭ]l~D^6 uNc@z] 'SSW:F}Nr=]`.\=jqG: EMG.ZJ3d{ %cՇH\!/mZ=h辴 2 |kǡ~VzFOu#0n G*N;^m5>*:[P&e֢+|$]am(_J/#5Q+Jgxt|q ֏qadKEI<\RNbq7PbKLW6ji2Zy׬|tΩ*)R#`j29py ] ͞Tve=AsG{J~_%#05?c2t6Ɩ0lYX\S95a4!SS;îXV(F| eOtYÄb!o NRSX. }>ǁg' Q&;bX5U:$ oKL-'2)sy(ܑ P^L&ҙ<'6٠W85^%,sж %hol(,H&y׆@0z(u:DRO iWp lo}cfsjcWٵ3%QHqtp#ckmWՁq ~CdƷ&Ẻ*zn!pf\3 ÏwIO#Hn 8"V3:`̱MwGzuā6bm)K(ImD4Ef$_ڧtHrma+F2lK8tɸ:ـC~9a!hO5x_Bբ:zK:$&i\tpjՃ7IRC}ç DžՒm^!1[4fcc[*NEW7Æ~–%8MjЊIk8{g(x(,Hïp~A2ړ/ {!<`,= Q5 sd߸C~vZiƎT^&59Sי@OL~]O+̵1Sl'mbv4J Dl-@F{0qVM/i6bYcer-GX]״uٶ;JwdPBnoUӻ$3 nMe= :=7Gz@P Wx3KH 87 Kdou$+RzBIҐ^{!Ƌd⳻8υw0zA!7>GL'JA忎(t~RYUhgFwv=m<+ baw@ XOZLEUeo{ 6(<_Ūl"#j/‰DQKWb-Ď|7NO0~dAqywD䳉#;xb56CWlip*&Cިx>Da2.PqD)Owsidڳ𾣔p')I\۵c:%\$cS*oc SPs&Ŕ>Z-0|1kFM/&;;ՍQ0w*T=yLh56PcHc%^$e5PȢD`,}}Dۄ8>=~ruU5k$w៩RZxZv7 k&>4|{$o IW%)< , j3D-tNn5"RXb?Ps st޲!FⷛNES} i1`m G̺ИjpWĒO"@ sU=k͚`:} }xCzL^Y[ O~ M@o6[:E "D.K^I~v?*-;Q'ʗrautwbjn.U<%z[s|rE?sY/߶t1iq"rOV-7Fi_XwktN%]B>k2 _N]'kLt`VIyraK-~Х)bTv;o1.1-.PG8dTR72<}WN@tzJo*)|DWNt%$4QxX+&3`ޤ@P_<8Xg%' mkG-'U[\֛ N8pSWznhӎwc/ـ=ӋfY\ILi3;Tv9Nv< ͇|  j+O(3m1ӳhf}1u^F߭缸ÉU6* N$u4z;S t$Lۡ:"<|;;tRũɽh4`fbZ,"S/oԷFRs.#ICKiX-*4̾է?FsU3mߤOMɿcե䌾ΐ ¼_8 p%~HF`zLo _ՒCp6X?r59IhZca- ~Q P'zϙ/2Oh,_d T2*e5NW$Xmйos  1XAaangg uK^QL8b')PnM qIPỹY A/-24s7)7G5JsF1d-½hZHt~5vH3z7ᩆe0C|YeSYm4{@4*: 7\$Ku]wwNJq|ƓwT(;+fyhn /"gskHIN 5GF8e{`͉Ξ1+ '@ㆹE`AO'/ϥ&jq1#[rZ$@}ADMHr3]nkrE^KmKhQ=3qÐ+?wTll[pΣo\yGn֐HU惼 ^8[TkvH'_Kff,WB0\CCfu3,$@QXeH ꏊRۈzsͫ˩d~t'?s/u@lE#dK徎٠@L+-k>u+Iļ"M^2 8FeZw ,YΗ@!0K֬VNj#Boy!{zO4B吩a6E8Ih x?Q/Ah Yo4v>~on|˼2ֱs[jF!MR[<+|胸'ŒSOo j NI8qTWۜ1IZ;Ia΍6wz/4PYiTo3J&l*cpdIpFtܬˎuovEC;HJda&/k!Sv!DSgD U#o0'1S$? G>%e5l,DKM,lQJCӮO8O, $kN$I:/=Pdi ݺ @\"[!Vا 8ZVA7aO\,Y}rKJw7A[PY CG-?j+WG #Zpg1U`|`'8pݓ^%XB\MẂJ!N }~$b iD #A8s(k 5uV%Sx† fBj° }+7Ig2͌@}IWHP澩^R)a,!c췛n>J81DF[,si9@[&_(7ʥVDEIz{a6uhޥ/ wJ5ېE9c{ѯƗJ䖸xvW7` .6Z\[dMDB$,+s)o#x<6W)TW0 ).kzLB {':6?ìL<{$Δ-nT%Ho{f);\̗l>6hxU&Yfu6͆cԹ`*@s@Y7[!f2u7E)\PA>#ȓ%fSQk|)s>2̈́Yt uBgGo Yv0N )z5?uXl0N(%X~>tl#Hq)B4Dϡ֕QkU?OVe2KlIӍKl4 [Tcj.6+)#}~nÔAQn")`,K.o6K,Q4Z%*(debRF ҠK+U<=n{=&vǞA"94pHט? s!TB;ѬJU TH%z,6!I^>No-jBfdU _>LLN%C+ݣnL|(G@(i]v۰ ~6a=dnW ! JZfOri߶#wDcy4/u$"|b}=*zW@1Sq)s@F׋+kMww2GG7XRКjtzK@.K?*1EV~-W f :b e1+v)UNex'gzF |rMjܵa9,퀇T-yb*hj;oO=YUs3,,餸qo |&sN%W U8(ln9*pb{J Ot:n3RֽSFӵJ_͂dž^i, wVUEltSIjR L( \FT^/l?l WBJ- 2[$ ɹ9'j5(l0EA,8Yf!g+6~ V^RDh cZ3~"بȠ ] }=M}emE7ars<CY*J?*rVQ|:t>GFQ3IWȱ~,mwkO4>]2ND$}>Y&gVmDŽ=$0.`8g@՞O7b ~q(S#Uӛē`}HRߑ3ޕV)SFrvCJ<[2KisqCSzx۽).a! SM|5 ٬.>F^js rbUfh,U1'@gœǾ.AaU Vtg聆l|(|?.NZ%T~:JHBbbmLaŭiw 6/=AAw[֑^1s*onIv{]<"j.7]w4~"yoļͦhLJ41hizpt}蔆N&8q+(\f=9 O3|GӛEG%"y% ߋ0)' x/&㾯%-Lo^FU|` J&˽# hBe9ҟ(za@`rX ̌S~@N#嚀ES"FˋDL91QȤD#F$\w4:]B^xYD?d%)^4kQ~Tr^LPw8Es%4P U ׋F7 Ϸ "wB&Ã?Y-$lu'Ͻ1^@^F3=\ AEuZ!Qu&_њku+:lM&,j EHxQ@F?Y$n[Е(!*Jzw5=Ӻ{585~⯛?ARQ33 <5S0]98|ܜˆz"G=aY_:83a!^rSōy8&νkzT bAzر=GTw{z8G<%xN:zIhF}Ռ&^]B65rIE^]<=&_XW=cAw~ ΓU Fez˞06?JSjM=c3!,2)[2ߺ1 ~FEx-?OB ?UcBxA ֡ G"41Unm FVy @(d9cj _JAjA "AZ 1buɗA2ȽP2]9|AH̨ٷ,qPR%o1'U|4~鿌v,UlI\qlQ#icȻB5o Mϫ>z$d NLD>Bԓ2V~Q@K#<7Oiu4Kiڻ{ U 5Y$%!£!hJ葱MTř},|)>W2r~|+uq? 1u ž!^* =LQhns,1Yj6 IpO}6f5ǡ`\#&"L6U+`+iW_Pj/z-JF V,)9>ŽZtR`%vov2y$zxe%t>q3C9 0U!7Q䎽2Df)W y'R\>G|rj\̄Km5S mW.cpV_0pWfBtw8WGk@*g ռ{V^neVpu=}+m3j&7$>ZiҦ`iÙ7we|wеJ|iaK8XzC]Ի>"mfS`cuxp;X7Ɣa9oIwUl[W![:ccB9OGM8 u(.ޑ X.NW[ wlSț'0b20I+ ^Zu.1\W++C;'pP-n[r¦TanW|hy2.X-o_!{|UX vvHY-6U,HAh~<EcA.diLF%44+^MaO<,fBIs5&c`Czl\jSˉwvQ"*;ww[IFgػnIwEp"t@#ï̲W+5M??n.TOb[{1N7ĝ( eRz$_ JQ b>Hyc٤BvC!ZuB0Da 'F'KMM,!¼N*?NbX|ШfyA(X|?CZ-({[iC_lH_sm"ts!:',ؾt\P+8i @3eUk$gF'{I~8`>@DNRu^t%1 p jƪKT\Uׂb(mj:dH6KB>f^i{i+o}m"u((}yH>aC#v6_2ަ:A 4NJV*ш3[]GH+pRZY[b#zi{ŦsCR }-\4G`W*n#+zɥ~DbG|eB#p,W/OS)rU?c8֭tr9$r/4(a%s ] gmrGOV[.>fN $& р=VVy%N-DLΞD!pi8bdo>yxN2&[I<mHY=P ͞4 ^oژR."l}p+vD:d[rOF.i7cP]+IC6R4/y71Bg'XqQ=HjIiOyI^zҌjt4@c,b4ѓ'*7l1ev;tZq:9G84kvs6YcXR$#뉉 K ;hHWu}zT6w )_2%'&#lr_9] %p ?o7;ؠl6ۜzRrK'#%dw?oXFcXSj?:J`Nҍy-xdS~{fWOd3Zsrn'%m$#4cCmpW]=l3~[d{v~Zmۇȓ dj${ɒ|֥EZI<븷jvil8fsјL&V 16zW8gv:+ "SB}`gK2;]XjPB o:v;2\zkY]% ?AW8HԁOf0>2GTu[4.TtVq傉?bzN&_/q{Z<"E#?% ?3K90|xvF Q:^$G%Jfi,X~;xZ[,(pݗs9H#}g|]מRSj#΃d?D5D>RYs$a|QXFk>oBN-U  'Z)pnGX]wN#w#\DU\Vx얯X3z ⧧~bPhI d 2˼|6 86ER'R-N,Ef#E6~PMRn4q$ "v_J;'!\uab3#=N}IHVOdyJENmI(ϰH!~z 4iLr5:5d:#Mx|F%tP#Y yAGD$;b_%ȢBuqcȼ8wmןA6v~Bx,p]et%1(&gHhdԆ0f `=h?dE-+ +w1td\8VȬp"0-'o5;2yߩZCqӌ7`5=Gk`?1-7rMa͙n4:ɱFA43o.v`!L!:ʎ ![b/ tʞ(H0<~AD7޻C4ix|Eߒwm>i]iꐂ(/zl]dS#ht T?c Gzak=p|,)a)ؐpe0vfEBd KR b5jʚkr䖺P@h|{p~(OTL[N]LL<]t$ˬrD3ۍ1na!DvsTn`uY>}-IW^PF?:!aFB~7rًI9reX?,@\p6 5ȂR\21Hy~W sPʪh+}iwZʳ&r$A1]TJ1HK}uC+6[؅ 1F: d;t >,xƠ# FJiک;5%|/묻5ϰp?7pVLJn6hA1G x!aEԉ @n]r{QkBC;+f4{5.lMԵwGTуj6sQ9~ GC o">Crt^sHk|bͯ3NW[=}cygXN $RUA%Rpp 0/o: ˳!be$RuW8^׃ FzB0NCc2 V9Ƃ^ .bBbS hq2&.T^v_HZ/ţs5wy爢Fjsz;JkՅ X2a2}B~i}?Ãb-6dM~V_5䐵pN{$i␏FAtUC$} jFq,; 3݉LB:¼9hfэ0$1T߭_qȞu6@++.H㹦Og{:ghL|@@^(tvȜ:Ƅp<eS?0G.,[1J'J{_iK $,|c͆Do`XLͶN Gӓ= #oXˡ4\d& }G,:+OᚙxɭxTߘ6J$_}*-G2e?FYЊgC.~S mXyh,NkM2M8 ~kpB"B(*_%2l*O+|$$` YnߵxϽ "Rdᓥi <YV(`ށw=7^ǃ41Ň7߿c]оj~[Vlv GTR&D M)Y86Jodo3hJVt)#K)8;:ޮE|w4`~Tq_W]|$jUd8=ml.bcg^ł7,$d.ZI2`.:8ޤj~wUX9p%*<цH=-#x=ꊺ@B>TpSg+Z دRW DuȘz裭cɵg{S0.dnm*9g Umă=agmGԬA-äQR1 )/pIJP=\Ҷb.vz[*,|ģɾ20fQ[<068t;hΈ+FٗPVEvCm,(4_CZC}Vh}?0枱u 3> a!?^ML1EXQ50 dxz 9a)hgcƚd~( X{|1 <]_џZd1(zg nu?E kΚ}C04B\#Sv%jX'E]@> c:lb)%Ţ뱺)\y5 (a%ןwK>dY]PnXJ*g,Mzf^GO;F9T*npa7~pb|n#ZaOQ1msnU;#1"1Tф /cp>w)H~"N$U _JGXݧaV_Ȗ eZU!;c͠>eDkۙY 7涪o 3 yU Ie2?4ⷑīP[$Ro8[ÙpP)22/f=o^j:J ~P  ֗j=0hK#_Ѕ ~4WODs*kf.pj-#L<Tt\STWyKrz]Ԣ/mȯ0nn+{5k Tb.cZn8nޱ@_U`oxA8x)Mk(]JJEy$}0>c'PSL]9XD 80qUwN(>R^[X)1Ygwނ y*Hup먆hh #sLT:dBf5,] f1-ER=h0XbI`cyV'7@?5soNЎ a9(Yt0pIxŐZ`x+'U꼉]6z  lJSdt6qLJJ(ABY NH)!< ZQt]8n?Lp%S!j/:VVzr(X{ IxoSD:b:Ω HxL5U83Fx z2Jd[Dt̮Mx8cB# %wQ 2SwqqMZHhlkV"cb,HG(М]pTrr֯!=`PLHo) !dgV˸wlgcmsgyxW]xjTYzfa }!*h]\ZCM?RVaԮ-lbcj{\:M.id%Z`Gp踪DTIs 55O0aӥakEGj;:gz|24iKU xQg܏t'k֎gӧh) A'[,B/#Gg* ^! uM31|yQ׶_SiQpxBupvqԥ =sF'nJp%~.5WKhX*Oჶd߶3u;:,=oFfeW獑c@ں{pYsCVP׭qZ$x}WQ=Cy-Ga+q1Ia(r"8kD2DE,ܷ5%Fp0հL䙗g++NuŔjq)2[ddwģd;s׊b>Xյ5H$򓇯vNHAI>Wiȯ&si`H"da!+]|ȏXKwDTMqEX"^SZ3!ͺeaX,݅j98ʉ2(]kHg@ɰ~UYvV_Ž,eP޳_Xk ot֡{2}:»HXUJ.׹YрwIl}h$/ɸ5b HI\7,G=i@P5v̐c\11N5!F?(jl{q%mG}%J?c\jG?ؒEq+Hu` Nm|:(Īk8?{Qw3g^ou/41 1i:#Cۤze.c )Ĩp=B47IȚMK\ aef]gO^x[{P(IAl'NH)J6$G;ҥ+2[!b Lײc6Z0iwb~ukt3ુ:!*̳c~[xM?7=ZBv*=i4fSHX;7*Ubc(G>Nܩi'Ȝeti<TkyKH>ZlIbWG<"\[U=٠I6|Rnjaٽ)l1V (RUyjZSP-2xbqk)7kZt?^G%2}C t$n͗^|;?wɻ>oP+KNJΕ'"pEH_J촏?,Hi' HE̲Xie\ v; b=&;N%uNNzl֘I7Oat@4ReN7bȋbXc):ii!sr#,(A#H'"(4wt%ˌMh}#… kǪ35#TUԾd뾦88n^W0:'~k"Dx8N;Ɵ]: Pf3*oN(Nw7yww;0u 5|#m7I;4BˤF >ϺA6%nSzNߏ Y3lyw+# sıjXuBm6:?'U؄`{C$.$2ˢhc뷹8BJ4szi\9񤩉`0 r3MZ}<ǰ%飘"fTp^ pԿ.{ƾͥ~ ky~hVX),;&h*!]tK[`-n'9g0. >V>zm*$PPP~Ѩ{xӹȊ90OKC=+A|MN(w'eJRH@ ;-XEX߷EDvk7cя7^7Y#&'8ӖvBܤFvHvCMZ=ш6*_7E&-x5u;'"̌l &;0}kF3KTb2DIT>Ss/6y՝;^;7 I4!@ 5T ᵜd!u؟+BGqj+gu< +'蝁ߩUN>a0L+Nt2xGdHipXz~9]f], ]@ͤ*NZcF߶g0:%*8t*gm܌<*2 GQ]l˯葒&znN4}`3zڤ> & | F#;m3˩Dxg1 أ(^wIf8 p9aI:x[פ[MۤG7-YT'X=4>ir *|{xr'hjsD(~?ם?u 5Veku p@VGJWLX,LO_yhreˋIҺ)y!xYXE)JsĘt7C9lD %qӄOyDwK'MOP\v3KOw[*$] ? ƺ.(JK4a?|OѿlcF `uq 6`5B52P^bj|D?0q@^0%x| K @So)x"Z哮[jyt=j0]uMp1@Ghp'Sβedw~ogs.f#GH!J?wU9x^`^?&D#az="XykƖC)Hq8b AEz3 =P:X͂i.PWi ʚr8dSb%53y P_<JNGߨ80iJ^ 'D0 !pK*aQβlp@E?oqLTOhD"CZY(6F@gշ9Ň3\%ZF@0Bʝ%u~-)+*%e$;zj_- %, &c'HgVgh݃8gs>QҬW"1GF.8jDŽpz&mlN|E'(Mqc>c ,â*sSs _T*yBMY *zMX5eghe.JT3Gv 3_W17M;9yPݰ/BLh>K ۬,^ԗ(}.2i/P2!Vfl`IMͬ O ɛ 3M#xCWS$=@ uL<2eXU#V:/spYԐ˖" Y;%B?[q݈bP.PftT PF "[xm~q7Cou͎>@cj.kՠT6Ԥф!#D^(]?X=<el.811[bfE7 0e,ToJ&Omq=Bguct?)j ['eA?CZ.ts x9SH\p؛^sD;F62{i˄gR!Jz6 ~S`Bq=uy uA۲JbbZl߻pr7DUo|&/h˝hrn9 je5C@}\):ñ.4auXHmZWקnYi\k>bh]hPvs(b,oPrΠ9QV⧽QS <% +kU\{$K|h۪kܐ8 ,hrzus g":iȣy=+s}W)3P~QRy[ϭZ5KHc/SZ f?{ީJ۽Ui j3.` Y64Tm"bh0y$!_+m(j6I}B@2 XCP{TwY2#"\. ûzՑ#Ő^'wl}>Qq}7Ąp SguaRPF{hEL\{VXK@Um.%+Bw4)d˹tjݵ u.3s5 ėjJHD Bv|Ҭg-i-G#=mIDc*4ZaԮ]jۼfJD&]D_梷M,yk+R:yk@++/G^1_BZx7(UmDzsakԫ+dwayA]8|* c.e E-> _;6n  \/贀mߺzrc d7y&YX&&zt",F}}4#5%°$ܗh#Fy] ە AXN rieٞPƊgAf;HAc~ɉ=esPQ4UXW\zRkgheKȧ#nqCfkF:}u3$e.<kc3^Z^ȁSe>A8W3 1v7R{'7w5 "Sn1 p`7OzG_N-%ϚUswe=?6W}כo=DͪSo';e=d#$^DZn~XON:]987AQrn2@` DE8Bn^YƅM-ԦF^$n -QhY47:˂ZHFeK, ՆtLh;l_?c.b/:OLcW}4ns4EII M} qJ }&lm7-6Îz|~(́6* ɏ4EQH>Q/ =ՃjhHI|.XBMoKFZLfo7l(J7lIJKr3SWn'+;aJEx̗ko@ ov6iB^N-}<~WѵÂAް]mx[!©ۣ沦Y]y/AW0"_j.$Ch?Ƿf bGO Τ&K]ԄƟ_douBv;e{=Gy !ͬLd@p^♎evQ q,(98'@:'Ԓ®ELsp, 20rU~CV[VWnABEb|J?8 gJPnOKVs!L+_O*q:X`O63,Vsw)J7TLǃƲ=4e-8-nzNQipS?rSӏyygҠ㡐B%-b SX(#hmaϽBq")N ="4c*t2b:M`W`E(,mWKCiBteU:+c[}$t\R0+{ F㻷*@Vt.~<K,+U""Z!p;R*E/?mDO$K)ڐˢprȳH.UԃQ 8ᗡ%$&CmrueJU9 Ɍ9㛔z1`Яu9a-*\RÖ|]0Y #]wĻBZ l(\܂%!##I&A`:*_?ѵ$yV<!A@*{U}H6F5Dvx 4CX-fK(4Kzȉ mI] GW/=<"3ey#S oɋum(,BQ>^ar)ǢVd/[C$w?Y䬦 }rԏ'hLVcEǞ6 2}"`ڝ̀n:?>( 2xfA־ݕSKϵqkÆ 4ĥPb^%PYUC!Hٮ"LÿDoLp7p5+< ˲ލq>U5& AF0Jw98U&]MDJs#_߭׏umtcS!2Qd[&KkL}y&w?V (gi'B(J,bҐpfrB}~ⅱ"s;^MPXRG$KecW.3_ }%vgEMS}P?dp[6z ne/JY>i%&Ki%{Զt 9v^Ljq]4Pgb<'r{eͅl}0eI? bUU@="B,TQR ߭H(M]F_,eCUD0UyLvgIMW}LLuRmL#hq[ۗ U72:ϡ l'SZ(4sa?sLo^ߜƻd3 Eq3-1<;gfxy}>ըK^g fd!DHf>^lapE0#?l̫gȟRDGE|ֺ۴BLj" 1K"|㮺D?[l)yAkm/<@~yZKFwssI;Jo,ʙ^1S<:+AT7(ݴO/{HX3 wzylQzN6fI WN¹xK|'Y(g#.Fb `)ÁdM`VB.5[ Ze d?L/ʚVe.6z4,3t;co6 ?5Ⱥ6:ͥ>h ,n| _m"k2Ra͜נ=3ʁLzR ?X[}@oHg!bO7=D'4/~5McP=!%2nG?; #lFQ; y&u_*ks$"UnpSҳ(oPvR6P6t"M +H^ge}'H^h=dsrReœl-j鈺,=_C@jԻVAeM,:MIcg97,"yS@g?B J+f@ OÝo2u%' QOlQ:w6mK)N>yнG;oga%P]ތI|st5W٦cO8BذԢ*V4N@䃴G9w{sQ ̉lg UZHGNPMTДP08#·m`6])|TPhzaFc9@XW>л-3g H5`hZT@Y9vj?M_"o~%FXkNlGVt]/iI d=2 .؍dyUYggy.wM[uSv-У. g"j]$+E Ux}~nn3">'wGa=4ǐa iH,VRZ Q4EGR~g /Ad: V,gqQT㞳#poڈ)ermC, Pt0,n}Opl6wmOSsc :ވn]$VSh-lZ^t<`;q%Aas/(ŜGv'2_QNz Xk&=YHxhZ.6!+%ۍT&H59ժTB|Oa\ a[dI$HmݛgjoIuT[VN a5҆w|> سBkdZE~]z)\s|Btb6ʇڑEP)׽m_ߞtFA*+~;(-DteYpn\tq gxe_tQ0@cDǷN6*:HȧБBGҌ+O/XL!2"_sZ˰*RfZ)n  Y> ÜXJp6|/NՓ! ZD]@}VLBdv?SŮTH:`FS`> &y_$~Pg^P:#AN&Eq^tE_nFmi"bٖT EPڛua#8.$6-NrSQ?GP]ᴪɆ#P+:<3o/s&3U)^}3]VO93lQMKpFtRZ7n(&,?l,MzY]ua+i`$zƤmS'hX$&P[5{^m?)FTPR]s+y~`n$]g:IszkX|Lh5@ 4G&!<0& vzUX77 GiZGR"Q jz}2>.K!sKRb`ajTrIwϜ*! L sSUêPK㤔/Z'FV;&jx#4=xg+v"9HˢPÒSO$ '+/טA(oL1vFZ[go)~h rǾ~ڎYqS<0fW@Aa %2z?3Oj7~{>pQ(5-=Üŧ!s D⸩|x FBH%1Ebic^݅*g⬧u((/ YG&GOtz+OX4[̈n^cAG\ U|eʴyǴJ^ZO{rœJH?z >$8Wy&P~kϐ.9Y{>?ʏ%4;=OpY',9W"]Y(WOG+#< l*NJ<a[q6GRɲ8i8\͈Et-^(b̓.Y1'ƌ i~byo!//V'y E9tvX=O0;~+CAj z%T7z}F}d+W<TMha'~`J=XoΧV8-L6̤(ǪfKI {]Z_^/">w*O )6‘]Nat>BVDTTWĨDIV+]^ꤢڲd|QrAKKɭPbG$LUJi[-q"cMҽBc< Bc˙r^Q2m(A1zl$M=nE :n}D]q6d *kj€/~R6/ .6,S.L,.λ?n Y4$Tч'ladX^Rնٹv@|']kPiw}ؕU9QS0ziBD"lV9xDukN>Z{n0 /8B+Hn;ꃈO0D9C $qm9T蘯Kxꍑ\j;Ug(:ʀ #wS.tXb=YEafsTY "@[Uiyb O0$S7[ 9G~-\hLa9񅢝l}Ɇ8WշnaIes{/ܚ>N tP{Ѻ}?>oNy~0@ e*\rRwSECq' +׿75sT:jt^:ĥS?%vD>G@APkSpZ-;tFJyJح6ȋ!`/Xn-ic"?K nY^2&tVˏ8w-m&J*rrWk,temR&bL8;ƀ_DkKH4׳nwƻAe*XK'O$18V'kmZ*7z2,ޝ kN 'NK/l# Rj2:*_/K#p fFwϤ&i?6#\O)VgiP"iMvW5y1Ȏ1lDknbDCoY!Q˵ndU2^Fx Xu?j8+iVZ~_?ob4ڇ&ײƛ#{ϔf(Hv6{heًLYӓU7$ؕ3]N"l~c6}T$B,Az5~U㐹M.Usى)MOF:]7%(_ɗ3 N p"RG8$f %IZ~v&0#0ePb׺ڪTjvc,=BL\w$aGVlO4.t?-7d~)"o} {v!﷥B;REʾb{9(df?6B<:>4;C\ LveB A6WG80l`MJ9^b%N~W#c9 Iy$zb,OR+tJhL-Xp q:> >B^o(QQF D)0\K˩r 2 p#%qƷ\7> qCoT~h<}q skͳ<`S,ۤ*vT`) 4Yh17#]5q쨏vN10 8k*7:io@qT*%GzA7N:\5 ZT4WMVGwG=JZJӷ&Y-d1Oko-TᬔJx@]QZǪ3/J< +ho;)$~%@LyRcs5X K;8EFf#z'fiN8Mçi^X~>֦NEX7Q3/HאB;3InZ1OBճZn,2A\;f ),-9(JPk`7P95j]` +7ʣmUՏ=C:dc6g+b4E-@fR8k6QZ,[r4Vy.['9alu #,nCx9 e`J=BÃͺ'_|OA TwN!\ֶv 'e T:A?"t4dFk!HO|%YvmsݼR9k i.W7ubMGDkhp@m@&~bK7D3Lcѩ]S{6q|c)Ng @.b 00f}Epl^6c8L]o4YMGlͥAhR6R駳\v+PdĪP44*SNIx9.cӝ[y7i{nTifmK!ٛYJ50a>\XC2ۜԞNpJ)ܼpǨD~2VV` 7j4ģZ|Zߐk7+|WbPguf:x70?Hכ#5OXRK^iv?iJUoLذ3,K<>fO98CS(F5p`P.ۇ]CcKyeiFzGxAhpJ=ٿ~yqMx( @^zۥ~_,n-(R/ klVꅍH}?ckP|lypkW&{-bGA‡ø`iQbЬ3zs7GA9?:ӓ4ªl|(~{FBlCƓ*%QZt)JJeIDkt}I G%AWhv4Jyfz{e2|wwC)$:sdf׵ |L,D10 `;A婇}wq%kK)xG> aXIUGف^Eq:nή2`?ʴe4mʎGKqrlUm5zL cPsc7;酐RA~Z9t~[;yU>W{EBaXѩRI8vֆcMe?n^$cčkqO zvꍋJ1]v̸2XI݈8☮5QC9ms|e21 uPr$*I]x<|60~Y!;LSa4Ǭw&OmzE4;- lX `iq`ׂE?dttk ڳKB,ay;,@JP'Fp ;9ȶFOB8\jje`2y7CDa6IkNP"t;_%P;$Eo}plla l0ՠXs:SȦ@Ρ7.;Va:Tb5;Fj}柒{z !.$C@Zn)zB>%@Ί#̳BnV*sX=Ł4 6W\޹1k8S׾:F|IrN%U*~!HFySsseU$rߜq3zķ; ;Pv#h%߶+N|^)*|8s}fyK;a2nA#]Pe9slseMv} 'Q_rY)?BU:̱w^GbSd+Gcsa8/PSvqwVsδwIylˏkmK?lBdcV <ԾQ VCŅT 91~nÕG0X b h`lPm~i9=e`d#GU2&[9n==OZÌ-(( *=we@wo Բ`*   '%ٶ5|S.nVdGrʗ f )8di삩(ExcM$0R$2tDm;?w.>Ϻ3I݊{*[XT>:6ZDOp+zJ(3t?*?@,ok@Q9e 㟻3*&Hj9=xٔ"Ufcih-GF3ao_yϒ*Lƞ<:O3*k=z6T'%LqXhr@s3 hxCOMlJ?^휎!+}O+$vV~ " VۦL7u6y2hLmOi픿C$IAEZh;r ׷ Xb䉵A0yx"#b`K=q /4ꚺ ѕz@1v2LkmҌvHh s{,OBQ9@ 1f !$E!\&)i,y̓}u$EDLp eN.A.^:w{%iH3ΟED[TPQ%^O%i/=WAR躆S{@AHYc-RqDI怄VM/HX]ŷ?vɊS1N9SG&Gqom :Z5݈@d {I WeUp6jۇ@,K9Vl(>ob nto/L[9V.ByYf/բ$kWɱ9o/Fx Vmtl wjqQױ6-(v ;٩#pyW'OBfxeLgP+\eVb8 @ObvqJC-fjY/[N3m zwBPrB2Mx|$ <—z.kam\reT,B/7[B'[hZw: ǔM9}>`#ssE=]/;Z8]ni*(Xj,{^&?b&_ i6G -I`{)C?}} hK6d[UʷEVBŘF}md`?XKTDGh cT QȤť ~Kfp q G)d ! }'Ab\٨=fh-Rc=N2k9\µ ~F`wCuBaZ'5'h1Y-UD9Jt,$4q #M3㫦*=`D[^nvK!3fŵaǗ=ȹKKeZ)%a$'Su?XgHǡ̸4 A+mCe+iW&p8KeZ +^3\x۸l)eRWIQ02X~Iӟxl_1J/cAN.TAlk[~vA=}8c*|=4S&0CO7.EnRW2Z3@;:UJa@&`Mz ]y?!^d$?a>(Uivv%op_Bͷu[p~Gj8Eref?ў̕\\F eLWBow Pe] 8YR-F1 Z=/}>V&DaZ0>¥qpgԋ.s-a↡n`)%K27*t:a,}Cm.zDv0AyEp]>*}te(0Ixyfg^;a xyx#@/`i" H)<׮>Iep#"](A5E./ޔ}]Ȑ~+vH6-.HT2D+ cD@ KDJ.gG}mg_bPH 48QsZY[paf,nuB5+0tf/w0L>]agp&E-%rQߗt5OnjM%+l%b/ vZnS~ҦɼH?"#QEb70]ʓ JbҜ0F[ Pqua01qok(ˊ( $tVz-u/{ GRMyׄ1S./:ExW1' {otYIm%iSh˄| BuIc\کh,?!|| ^SUhlಓYqt%xyˉCrlI +b{*<兪|PP^.ّ0Z82t7+L/96$goeyf"U>{|>\p),_FŸ+bY/M1K| x$j[GdB[A괾cJ: #K(Bsq+K<:k;!{FǡZQQzh01kM{G#HZրsYGxzkI\;l}aBݺU:fDnE O&Y^1>K;* -B#o\-nuXz<蔳7A0DڑZTg#K2mv}ݵ|0 `ǫ/3R[R%e8to3փ9 ?sN2,̴bN<(0$+KJi֙Ťsw Y0hY7gzuS#l P4f2RhYcf-~ܓտ> @['av 3q)Ϙ,W&ljs2)(TW8{tbUD TV϶`L;w!sh J րhD˧3MOg8&TV `Tk5J-@_7&Ύm/3&tb0;usiן 'f`nکj9C"W:.)7|ļ.-1ٖC€lfkADzf2ƉݿWmVZzX.x?~9P(|GxI%)ݣxvq bYzciuOye|Tj>"LDVr `1uGps.Vw΁c{ g&jN܀^M0ctV .NTq ԦX|cZއ÷. liQ 2BZq6tف|cu٥6ł_Jck~ඦ~dL!7q CZlZ]E烀r7m~@cgv[UJq怇B*&P⒀tjԮZÐQL3A]Q^",gޤYokqU RcZ;]WV?Je/j#fwNQȾ#`);*݇:h-|mCׇPڐo6 H߂`Ń@?;&KlF`-=دB+{K7CY8xF 1'k)+T+֠-S7V`uDJۏ)hg EԿ]@acPo]hpޘ?<N,m1ό;t $)%l2Źnz1e>!`I2#E-z@f_ruDT GS}|<[f)Mo iKIӥu-)ٝS^]?%FGb4LY;$˜J]2FJ$0A BOBbO'pAy låޠwe뤉ΊLvV-]!s Zh2b#M 쓮;TC0kF zc}\FshZ7 WSY?6D < 'spHDtHw:\'^P ,D{QOg5& -ڗ'r|j脮 Fz9ͅ 6ke"HB"B&T& (t+&E܊a=87)iOrWq탐 C yL)cy,LkfO[luǫ{/fU&]ͼ>‹`Mݐ;ˠ(\(pi!Wy,QK+%Xc>[r` 7hSÃ^O˰Eio6KM& ;tMBJe^k 1ZO ~EF3\!#o1~Zό lS*rJ·jOf@&dK$&̻*s=gy:ehģe$]>{Pڤj6~4{>p? ײ:o ]ЋyCaLTh 2Mr114CVu>;tI_[p>y7c}YrT©o(ǎ'0N_[?3ߐ̵ SZ5 Qe t4t^O$_N!@Fȯgv/ͮlFDn$9N;2&Ll_9U1^TL!\[ưS&:2|~Z71# Mՠq m`S(Śu;RKƓ4+YpS`ecp˶-;J6DN12?41HKӑ,cgO"Innn4n\ԠiԠ#DquA`ٚyU_F%yl * #:d~^eF~CažvL7ݢ [;0{[T m\| |C%rAh-Dn  Do tIz &ʴ>/JmN.wޱꐗo7!,gb4! ]֞<(лiMua|uxYAjRG: Xhn]~"2cEZ[yd@Q}M,8\*CN0`1I*.n++!@*;٢>O& E XB3tC3QmHJ =_7l50SbjM*Pp33 pBM:q&lk%ug[\kw# IaIBkiQA'JWINu\>=t6I#?v&Tr.KgAKs> tC2♻uidwEbpp୳ke`mA.'T~=%wZX}1"Dw;k6uҒUAM^gNs'~ZӵúE; sAOBUT_pߑ*$ͥ\0jit1άs˚ǩ]ܩ,kiRNieDk볁RkI>[QJ- P; [!K6aٞii x>z^!n$g3'ҧiq}RCY]l텈x^  {* f5,/+ & ht"SME8.9nQ8=Tk)h+ EL]b?]p;?:/pQCM Ȏ&Tبh}5 R`E_xãkK!dȹKD=4zXr>ɯh'9@wqA J`͜pZxyeaKshԍW=)D=ţi<>:V+a&Tcb_=v¶;rm"zdn?48hL 'M-VK^JEFHU1WLF p_ Œy+oDAVK##MϠc0C5x# $7RƲavꄄ|bDHɈb K@t%iF%r ћ{1j`ci_'JMcM/;QHO[s+7gp&uR\)EҬN ZM_Mv6dӁ걘GKx*)QǘA*ܞmV?6SYM(F2L(IQec"&ޫ.CX1:^ҝhQ=S1% .}f2""#ȕVHzIVL,p.SQ (7{125=s"^\9f^bN?/?,ɑqEELkR0қvs:s`g ĿX/yMd5 Hvhɢ<!HN4#Եl-⪺lr(( ]}gݞmjAiI=_%> Ɂ DpޤJnloǻPHO- [Cp/1|Ə׋]'7XIШ*ϰ$\brC1A4CN5:ciOWX[P%ΊALltACUl)(L_^)ⸯ\uḎ[%2!ދ. 4OW[d>hDLF5,3P)]Gi%ԤXo ݓ;R{ k{QLiB݄MCᙏP1 ujkQG%FvR5`j<9J.RS1v].2Cd$9[6 Dx rf{#NuhGܳQ^#_ν4c27;~G1uAD^`.Mqߗ՗[B oxS WV'ĠqǑ*1X蟀-?1ԓ0@(ncYiJ[#4g35@8Ƞ#872Mw}pڥ}*lQKR*BgNf; TbG||OL%XH>LTЬD;ӛ9~8I3͐.]lG2v68pn|Ttn7CJ[>%m"J/徢+S{MA-Zƙu*Z8 b@ ݳ!Wh!1lcGV{ y7C1]B7m_+%N(T,0 dt{=vOm))?ۧ2~F5äH@f{”8lI۸"wZ6-;8 bY=ނ҄ ݓf=ߙYiM Yrq 1O$.eA?xZLmܘ^m:Kh8i-0;g.G 1$.z Z#B ߢ)kSЃCъ. aQЍ׉]eǘAhrL} [h,vԈ+X6E 3u~$9@"HҐޝ@>s@8q;$ނh ^mp/ܵWIɶI[%ʚvֆRqɪp(==OO3^(_re=Nzf)0|@,_CŬRdn9.@ҁD3DQ Mǧ,̓=,-]'[Nɵ^_zd5H?0 M3#D9t rX4d}},Tj| ^ҬM3"J\l1؍' 5S c|`_bYgQ`N K/'(1;$4$p}) u{RʴY<+L^*)Sܒxyq|$5Ozڵ3W\`v{ 6ڌ!*>kqGCS 3HIw8(yC $ WT3?)k^hA=1IhH5= ƏF+DbopY JJx'psK CmrIŢX4Lrߨݶ8f{u2"z2.+^/;3#EZ MzB;4XkFĥ Y]T! (i&Z$ġX饞&_h4xKדJy2reS5,pJ$F$M R xr=Ƴ@|*SIR[ tL\5?#qC3C`Gj"*|u*--`@ &G9 srE Z`XaҸ:eV">VR Oƺz$m}{u;1ۑ́RF@CEDP=aqg3:4U̐3+ɭ+-s)Xb9(MXx~iسK+$Upۺ[*4F_oe6Y9,P'T:u&ToDH*&U ox|y϶V£Y[ J}*t3ߗu%3Gd@wRzǵV Z'Q7}P_XJ﫜HRf! 3Yݸx* G uޡ]{4y>"C,*pGlY"ҌZ%פ nH{-<": [bd>Bg,nTP'E[Z:kcDT/6d$ kɉۜIWːh9^0&+,&j(׊Ʊz$@ߝE3rE-O8h-= ݧSyP5ua(!<Gw.i5,B\]ZUoxVajauEf!l_?qbP8R,%J) TW끨""'wM-Sb7dqK볢B.gL6]*KŮZ?㉓7A\IjX81 &Rx:sl [s/EdyWHFMk35sX9H&mqEEM':. 2B>yc2MDuzjA[3ՐGNP諽+G:Iqn "\gG#+ ygFBځ@IMB49s'1Spqx Z!JO|X K}._ؿ մ.EZVi>+?P"2 ". @ċ{F8ݪiPVE}|. nh՟eښ,2:>C`52|uABu\{IP5}9 CDVSMxI𙽗`JXIC;13wa0TљDGʖس'?Zt ƴg֘#ܚ)= GsK@ ~{Ow}~q^Lۧ&,%VҐ9OZo<UoF|/d0OCuf{eb ZoxUtTWi[2\r> jIA-JQѦG3tt+O'bvKa:#ʹDSwL?Fڙ {.S0%Lkꓶpr(CDP,ufnYSZXй2\+>#Qrgi*{B;NG)U5W^AWۈҝݜyHh{EkpEj?p ;X zP,5Tkτ΅cfٮHZ i(FqR|12n0v|QC?N&Ĩm8w?{Ws7ŷdk7շԆ.)MqnmW(m=l voH+ۤYk>lA=惹=n$2^ڛyləN2'za['u_X]-,9횖|b8Uwg3y->u\m(*fvIۡBX\8jmca H0$~7JD` _~AC`r~͗rr2Q;˛(SJ5 3ZWdnZE`J[* Ba\`/5ۀ'('S7NNa1=c}5,#Ld+UȰ%O:im}a@_2N$)N5V`aq~ԆG*ewƁYLϯT9۸[I1)4@9(p:3;Uȉ ]]ˍ荡ӆwWo F=Ǯt J3<8v1a=Ap=%1+uj70 :~e,-Js%AQy~4OZN(j<}e\XG0؀m39o}yo;ٸs}$v7AO,K.W_yV~Dl'@=UlzrG;R:Fn%^_5`|Sv<)g76ECmz`=l ^]eh >lsS` xS@SGBp Vѫ)@Tet5 #'W;5kVB51Tx*dEPހv ;("-\qѐ,Rθ,08{>~T#CMrNK>9ktu4(\H[/s`YV "G{UQ{xҾux1I+$@'~jzN:u1+ &UKcPIU M _lP]Tvrd4z_SK? 'W$oFy3iEg*monTsTQDT,XNt4iտ7h)tYw}`s̶cuﺐ=8)^KT:&u~>Й.xCh(MҚv9eSt?4cBcnMnP}Mݶ_,n0k`C:U)!E<)U5Iw#!AW). 1B-swk+mNf.qFV_֋q]Kd_.` .8u]PL]T3-ٟto'!Pѭ`'/#3_m2w޹Ih*Һcz5X7@3e#D7 S 7~rgl !Smt@mٓv˥K=w,V-||Kc  INTF3z;;@I5i$M,3alېށnzPk$|dh)3i@.oO"u#^ 'IM]K?[RLC28_|}+0$wyA;raYtakfx$s'2=@Ndx[g/UQ+o2ՠaSZ)o0U\z~dc+)x'm  4soj1T{:S!ri2~XS L>7~>dzW7N<{h&l:).jйȈ$(wUx {<#.Ta[# `JT`>/Qw7>g dVe3~Ԓ[EfSrqF,'On?hS&9(O5"C#mv0y'ft $Yvڣկ0lĿ |=bx*6{)0Oi#8,xTX(@+nbX'Z7Iq}cM ~XZlOWiu\^f39f]Ԫb`˕iޑk 8΋a646F^Ld*W;`_-oI\ب0&;dz6knPj@dr'+Be4 }bKIk\~DR2/< 34q}6QȰj%uLnq;Ƶ*s%_u,=S>%`hZ'aԳHBD,Ҥ2SZ|L`g fjzIKc7%Y@;6ǎi6cR$uꪒyS~) )x62fz0-(by)5ކmP=l{1{s 9b~0f¯>0tJ|au&`gs_5P2zËu6h. /}DoP߯5ԟ>\x QE=%eb3 $;3#QbS&&d se|*W-:F~Q=; ipJ_x#H|uJt?7O7_M8'dķ+dGO˾-,+͞)#~}UԤ'T+ ^E)7G[M"t~>d\ŇL$;F [Q>V~cwey PBَU]e7 j~ܚnJM^^QWA=NOQJ邙 5oE:2e)n([\AS::fdx YZHcC6[0kB fA3NdixUVnRk|e؉{6D6bNqIo Ӽ5:<Nk2۔򵴚|¦*qb^:%cۚٗP`'Ɲe~G oɹH6ss !8uD2K|T7|M=.} :R^u /},o?Eݰ kp&J3WN.oGW>Jrwo%~)H@aQ @<xBk&S}~V{ 02ifd{ ?"0eVWЊ*EQ:PUPvVEļ##/S}t'qbtk>h0@< iKީ>ߑ;Vp; jĎfW}ņcx_YQRi@QR*ƂY\ Ӓ"djq,?p:Ca^_'afbz57n-y;wG v Gr,GlCzZ<a5YBflJVrw4za% |o vYU#p7DMXpڈ~sHH4W:[]҇ꖽ]6x U5lKC l SUuU#$i'>`Yoυ尡GvR6p<01 爢cSFtF];ʈT*ihX at|OӦ +o7ͼNc8;[o ,QP:,% T{%6ky* YN[Ղ#n=(O() !5`d^i.@u\N{GRVpnn" EXE ]=6V J2 Gg7bw1GX`oBRB͏DLqhl܎'9dnsŤ=+A "a V۹ȅ{5NO/0,K.gWesdT܋'Y:"t0<1[kY*apS~|5A7uu; M<iju潮bO*;n2;,AT0 ȣA7u9%[}2='YN2B? : ·n ?yҷv} `޷|)~,- q7H~)S>7eR͵JY(̥$Ѯ/j$3|9\-u4e!&ވ泹٦?TԲJ& oq[j?# b~W#'p $P"lBd|rvBGYk=NQ!"<佑MiVH*]1UzE͟x~͢? ~ m  ^W h}LFg(y]ãOxD)'+L|Mv_z&6Ϛ-ʟ@ҭQ3[:!G.*'RnW̤2Gbm3F.g=~^Ϥk36N{Hdv ffDlE\=~~)#?v09V|닪q ک UTRN&0clE\ʦ蚊nV]93;捒2ʚ]:2)X9{MMW8{1׆HkɡMm/o?ᬉ'>[qLA%[+%G[*kmm}nWIPzVDx,"B.z]$Rh'ϟղQ!.GouZH^AY 7o?@Hݘ!*%r@eU@ʁ#Cv9|z(6WF%!@߳bE+Z&O̘~1m Z1E{!;JҩWHEso8TAr`] j=vVxVFdEa|C[y,+vYf+ZܓYBFs_+~٪zLYOSgd.)xr!o,B^usboj mlXKD|zyiuEy|DIL.kPˊu"Fz.t:❰9A#px'[yb4?y.NzWOePݐ X}-n4<( AW_f/H-) " St^](|.%A! &b@tu0ww{  j~ si8߼I*tBv?,fhCF. 2i= ipב&II#>?${\@tb!̍*/_sHv٫ 52~لPW8oD)/ MA9Qu%=$H 'e07VcXc 0W9G!5O9@ʆg`[C5SK+#&?*^<]bt:Yz4l!]F8I^ v)dC=LOceKIC22" % c a`6&619NT;zU%/}۾#kL11+vN}{yH>jzMH'175ʔ,V֗̒k d%;JBa7=_ƅBB> 绡yF{~<<}7Dv).7kۀj_LN7$[K% 9\f-{C3/RלF` uj#lKe| &A~5@3]}VqE]#(r_czE,J=!&乃-00]p֕[B@pa`) W yHW+w!_6wp8o-ruɝbSH:OƷEBI-sm\E;I87D#_"渨ȅ1*'zǤumctɑwUh7~ll I:yդ){GLQ * Hq5 =H~Oʮa!, XvU%- *ı-1%$5_NGAFwzr),M9(JnJZ a;1j)b;\08X"# 6rC AW"nd@q1J<Ѕ!_sMdm,OIP ~pLȀҕKz+>u@` tLQ DHA4\Qy0|(VK'>-(af`ā'懼W(k^U'>CY+j1x4j+DߵJV*l q#N6B !G Ά!e(uyKj\(3HL?9 T.14x? qIa*4?Ѓ"S@vb޻z#hUIüh3L?#4TN2x5TuH @w]pY0:Q"cU Dm'J%M6ٚAϠ30P +!5O= [SCwf%K9iY D=ݧ iIhf1x-kT|A0sKt7&T^1&4>So- |$7ҝG{LkNK_ xPz~Pə2vOAquc4uj- Tt!qQ& hbcmN]v bpzB6=|u>[]fow9$F8OƁO&e=:C6/%0gywȒ#W LkF>}x/pKqX/;T[S||F i=La5'N51ʭ v*0FR"a(t:=w_|%ri&k C?f=vZ|_C _oS\_Dvٶ>+ L̝%r0ƃ?T(DBALNX`agC_]tՌ}7x}!2)`(\T䙹DZVtLV+Th$뢌ZKcmmނ(B"2;Af{3Rn7iH 61EGwtnroO߶O8M< *C/ad.cp}$!`%OՊ2]#yאgqoMS0㙲c AΙT&F(g.nGqY* q'5LGן@;;03Btx9su5miU톟*C޴'^ zm) { C4gL W;V"@gаp d6_OD`DIp "A'c)xK< 4\7"(BMPtU{ga^kj3&m/ $͵lE5|]seތP&7?bՆTS~.8Vdfb>"h,C~M=U8zGSU ՆLo}_yث)m+/t y%DGu nr1\ :zO!4DôRƕЮUu͟ڻ]\*B8@IZNJC *O-K 9"ʴea,Gtv(>4i4#1XbG8e|*|Ǥ|b3wao2pY +Z3<'LHJ@KͲDQi%ao,uzl~'/yB!Sjc>& {Fn.<3,U/(:]LFk߬)8>w)gTc)=c Rqf#|u)"P`vu6-<e}& &^bS[rY8PhlDj#3]h[L*G) KM^]6o'*:J쿇ȪUS_{5N!IB.l2!|^1]9?ـ)KcNDrqht2k{m7tU}X8vM1'vp(K'ifz1 G!C5zL#~s'k->0(`7E T15hbݬӹ2$@vȜz\ M7I.y#\}B_J@Qg7a+nhwuC+CFP|UL)ZK23VELknAL$p]gӊdڝqŶd[E e*QQ h,Kz}--s9Gx^ygd8#0OoMqυBM=#gT5׹8r f^k-,",w|n.`5"&l|NJ#hG&}4C1ֲ3qImUL?2wcey^ t|s?QxTͯґ3ki܅&]-H%Y NFtq-\NB8ttj}Xb$| ` [K#=: |n5Ce "D= A6|Qe_HDٗ?puatu\ 'L/ףQ!{LGB(^q\e8}hD|rh~|S:;/~2#qW )2staA%^q,p?BUY&"BEӼ"q0"œtT>n=٫[9Db)z|wuHRWs,V=F/MECcKEVv "н"8:uZ _>y*O)3@-!VYPKa*?=)r\ůh5g?ޗ>m;pOz3?k/g]fw\r ?F!xjR"`; A}&/kl6raȊ{&L|/gZU.<إ߿lvlo4:K\46~_S?ʆwaNx+qv∭VoKC%]B,Ë|PK z4Mg7"*(z' xaHdJTYRۖR~~`T# ppeRD1qatnE&*aCk/xTзT4.S 2ÑpN!o׻+ko]yq s,00Gh96 Pfӵt8j}kC!8 ߥ`8oyDX6!Jm1H"A<0r?)Uy9`.݊ۚP:S*\(jZ֖jbk)bgpONq)׳@X5H1YeeR{_h{gO I0nzlN{u2TOWM^Uۢ+ר,TdIsKw!$ljZ@8#2ؔsw .$)-bQ!G~h(&/ P30Y+N BccZ3R$)Nq*D\ƝVShSk5N?= lr7")X3y, BsW%X$u `>MwdAM.E*4l/OGȝnvxKFo7ҍJ>hQS"%TzH*QU>xm:e݂︯ŀ01G CGj?|!:2=CN!07tҩA; WOGuMO2[ lˑKQ}tٽsQ\\wR%LDoR"x+3w뽙N ⚡M#ݡ@hCEeK %qg&4&RH8fg,&MQBXDM+ Kė#;@G7ȤpSǭ9FdQ}jG^d׽19>ŭ1#nb7yHM @nfSn\ІW "AxCs#oIݎA~qwϨ <}Z2:qaiz S=526dКgbW]ؿxT2hD{eMlLWI_Tvmx{'џpyں FyY<\le&^1|K E|Fmj_ 9F.UyV:! '&lN:ƒρ1eZih ?AaWTњse.av)S&boÛďXdZ,ieU.ǘ|kAX;,53by,T$/Jy|7>_{(.0~34*؟]!McL{&rT*,b`p΢02"/!ZB|bHOpF92m&!AD*>5) m%%zUoө~5kT9z[icNn]oeMw'U; ӦIX52E +,~yw@0.jƜ1n3;5vNY'%DZX=.uziJ)J -xST7I4btYLΚHݿY;<&>즤(;d2BV ;b+T=+d\P"7r Tވ[Ƶ{ m( 2tO!Eaˆ@ F`(WV5fDTYEj eKabmtv~k7 a\]hw3 ''BC |/U._y!3TlԾuմ&O-8V ԡD1zF{=TĦżuܔ) -bŹC[v1q7TSR(HwJYq zTc(Nx~Pgt0 #(~1?;6v]VvlHB&qg.J$8G^5[=Ev`b xR徆TsnųI5P8U+4gsQU3?XBqiZ$?}|^ԛ],%%YV0 8XMumu'6ZѦjSo]}#c|/gη)g̎z۬(?}.VNUYwy1)%L[!o;8;0!:sR:q*hW5UwcKƱf)5n:wχI3KX5^xܑZ-rI1uqC5^aoRD̃sK:oYSwՈYJ43ğ¤!F{J/prkTbmU;W`mnlSEANw#)2qS]g逸8k*Ncx217 p%e-=GgXM0M;\ɍM]'p"ۼuh!+ x<.Xm]ppkXYxp /֛^|휍|zY*!{'AlAptJy &CAi oQ"͗n/\8z[D_ sD"#dXDnB*e 1onDQPZ =dIzS,vhReh#I/+эkK*t!w}ok .ҷwgy&r3YOToi0q>=kdG,qeFɖQ|ebЀz/]d.< %`>h'(HnC6 $8>C(zB[>7qR1Jr'q0+V!7 \ż' +jsG>:%"J4ҫVSEpR`wFb{'n!CGΟ}&m]5 :<>1-%싚*!``55 D̔4H>/˃`y4`^QߺWQhGQUkץnH(BA̰qLӨmϨ%qƢHt<`&hG q}";٤>:dgczEP.>ns8q]؈nN;o&gc4,<]Yf{gdhѼ#;\ )Pdv[h\/r6OK_e 5_7Y?+п"e߿b<@-W6B7C1LTlEnN =R=|튩ĒpKW^>|؅[N#$1>B (2F2E"n+c ghI&OA825j QCRNCU 7` 6Yب91?bcft5 HvMY\&±|Q_T;3H:aPƯdV2r W7!,-|k;ꑘ !1u:IWŊKʿRd5J=yK,;P?GrM F8k ƣm)p1iOob̓C%\*/˂mSdlXhy$&ƚୟhKƖX:X [7YlqNCnIuЪ9 q$8Dhh }%0n:j D旅dƟ[js"[HR4U\b,&EA-cUIsrŻO<ǏU@2)]:@ԽⴄG E5IEwB{6z&\ó#Rt: ow]feNxhuJa`"op={'lv39s;"[lvߪ<&Z}VsE}2鱭21 O鏇9 2^, &'XSV:M渚罠dx];{:1" 3v2]j(_29[VOZ"BPg-OE g+aKS_dJp1 q  Łuv8{iM?"hdJ-^5̿Q~`!rmQȺ^_u('cS~>kPĨH yM$MT^T dCyY?skk #g.Bro/xcvԀdb9M6\Co"TTyk&:⠿ɻ|$j^ 7_u:+]gI,TBK@ߺjj8`CUMRaãʣGWQ4֔%/eWut6;k:YGcVY{V \V~'a+X%vw1*O4~#Po&9}3p1Lf78}fw> q<@6B5vW̼SElF'X ]`/ rԜץh6hO!Wg|Gvy5=xhJPIȱ{?ayĄR |) LծppNrn4XM,q\T {O ?{Hf>-@tUT{: gX~]y߸L{} v!x074g3ĸ&%̃@?ص)s㹧0ާ--ŜU!J'fl #ֹِKyt: s̃~`ژ壔.jgb^QWt>+R( 4oA9({f,+.t#9YƒQM﫟U eX$pƐ^O$6? <[˭#uHRUI]+G&ƛw*8nf3:gVㄺ72P ESGr.a;//̦EWAW~&=(jRSpq+fŪ)kv[,$0s6"_p)z\lr9NjTҀnRs?dATO4 G؛<]zE Y6U'C]Ku?!@> bg2 NC'>UtT ͱ`q3sA&j'Âܠf"#3{*hzjj7j5Ȋ0M,rCԽ]- r¼ެfY3A@OXe^b^h挬>Uͮ~tDE4FSj#RFˍaV`N{-6,]iԇ7< Lv1v@ =_SI)v+;(0a#\1;! Ւ%f$?mH>ǴJ0r7d_+^O[Vy.b1q]wQrC&JlF}1;WC)Įt&K{!o2\}_Z2*TΗ=rt43Oc,??WnZWW44bݺ-0YC|WxԤŪ$m> 0ch7!B; M^}IwS:lXi$eYL3y15P]N_If1\mx J|6ySҌdN*H ZSҁ8$w *3v&s 4LM ݩm4 W`f(RQ֍Ϧ#9 ;x]s҈Xo=x>k)vSChQ'`0jFb +R!?\]|Rf'?بQ-'0U!*5oTOuw3|?WFv~ kQ?mvTV/bJ;6#xm)>BhafFd6mӰ uVQDHXy,ՋctvwHsUֈZ^Ӛ U$i ۝ӁvGms"~ }fxqFSf(ZQ?>~GK5X;VBZR^ mژP( BCb]l{|nmGU!MNgмڰN=fvK%XTu`Kr \-sX($GK%NMh_utip1cI `k]pðpR狲3mdk3o!l@˲̈́D%z|63Ջ^n&bO3f'3$40yu77Ĵ[w߱h%m>\^EB hg[1G~y!0-st5{w=I ё"~{!)n-.n"X4^v4aS|s&M@۾O#;6 Oio&"SVIt,3cӥӟqEt恳]oNz & H|9v}W;!_ꄜm=9e:-o*p:Sql!rn CC.z!l ykxPIV1k0xzd)W.AN1H\vhgD7ق_*UQ @yRpEԈ#WԻ?(w4.z6uKO_՚IO,PC ( /m:.N܌Z@;2ҚЋD>0O`7hK(K{EUn"}d?~4er^U딸;?Fϼq$3\s޸qR] cx>c7Ӡ1燋@P`bQxB˟e#3YjUwݝ0HOpy@.l]dKzr{G!/ڴ5|u$`yN_lɅ-dn:L'dQu!&CIAY ?'&Uͪ7 VKT$NJKHWfaLČ_ #i(I !$bs*/v{Cj w@c(l(jop=xv+kH-a%d"PO4[f,&YKMDzr,/> %V衋AJKx{Q{VX n=$?4D3&Rk?J>@=OO,Dt 0!W=en](ݥhV;a]"#.Qo— #]'O>O#^ ZO&. v}.qlsZQ$zYH--Li--:{Fs]#|bh!qKr yaCی"NVɠ#'yn>%ZNۼ*v1us{VR % )/2j_8aG#-W$@XY 弁S gs,:EWݢ ^0/}p6o+|Op;E+}=3N/Y2{B#?mS+q)RON:@kY軎At}q֭ XahQ<&L1T uD}1N_^]%V'='5w3&I"Ow7q1P` 0/³73Tq*_qr;5&d雌B%ܻ6f2- )C3-"ۮ>hA!įjͱxiSN MP#*QME.]jp&s=w?%KӚF[[yx`A.^N uV 8E8whv:Bw̸Ce|Or '7pPo.ƹm(p7IQ#k6u>O~x_Z^\YFeA;4hDrDޭiity@~"ueP8~Pk7b' 4ctd|P<@fQJBZ'Gj+B"{f]e# x%ȼ0ߜzGmncO欣&P+vڹg Ê{J6]f9c X| ۍh υvlƖ.Mud0s8 xbHh^sA&;6v.w/j])Y!)Eѳ%kSP\H ZPɶzJDh#=X*M3<n{3@f1g4>*`Ff{G 4t-a0H.ClOBr*k \/uFfewn[}!}kFLS ٽE<0{@LK\}:>D!&r]IT<V92UMlFr?FGE:Ʌc2lWk*yH-'D6@|"I-ͅݪeCs>˰ЬW($L=?ϸw?Dd:L(!N^-m)뗡dl;JWRZ;$0/%+vQr5E(b9()?y)_۳LoL p-F޳ !(&)+ADՇP|o՜+sOxquՎp]dkK?v /I%VC'';6TV&t__J.N'oP/6_:!c/p,QiKI5!\RԔ6F \eǯ'u&QE5s| *Ħt挌GjW"TpNjwf ƅ)-̂Zh  2KֱC23Nd5Onm:D!ZrflE@%!ϼjXpQm0?b^S[ Z2~jRP[F)5mU\.$X3M 愠0ǀήq$M D&L[4 81 {=|&/\*: {.))zl?%8SDM>,wVAPqCp"hN* x]u#l⚥jUMDZ{ /Dd}0y7ptyvΚSQ0y;?w  KW'i񓫨-."ZH ߤFw(LU&?H."Mt glxž}(x mB ]X>z .U4GJ]nUEU"Ӈc?8^U]Cenm9PWx&_pnIs hm(zxAKHVoj.)Z?xUR S贫Zj > 䒢a''GspxtAR%; fb9:ncM*!%sܮY y9ƕpE~9d͖-z$IAWRd_b*<(XpÛ'K:%R9L`܋A*$C2ڔQn{"C=q:D+ M(iÉvE\^dkOAnT8̂KFC}&bSx>,пKjiVi>v P]$_ƌPsSwf~ SeL&3Çvz͢NglTQ[jܦ2<47UL;AGX߇E|_9 ~Bcֽ0dQ˩8XΣhϓސC4Y L8mfU!W50x2lPVyW*nBT)m_pQU\7d:ߓ6a*mRRm SjGej)7dڿ?U-{.o߹QS宧wU*φ˳8JWg c/y~Α1p:P]:'IlCӶ~ީ9,?㉈!TlA!=x $ȼL uLyLXc"Hmuٶ@ͦGT",X9o/(iGقov6Kt #sA-6YDK,0M"xM> { 8+dfzC , Ih:}\b U_ÒbO?';y̔T"K^,|E&(9/K7\q^`*Tl2'PK(JmGED.=B.wOw+ HzP=Д&_ !QURX66>Q&o?Yu6qus9!‚iwD1(v_5Άٌ[uW{GE.̿uAqgB"{($aFtwY^a:)&h' x^~BK' sGh>n0SQ~OLg yAͽS88Jsه8mW>!ԌFKms7a1Mn5%@#ɶIJ(5 o72AIe:UfKjrkmWkb4QZuvC48 |3݃?|KeS]g7l 8m׹[Mc? N k D=a'YsyLN5_ԙT?גneU_kPv"])vR,U4C[,*6ٍo,ID+J0DR3%W&3"QwPfv"#Nd,]*>,ʱg[# BLLԖgZ}- K<35׃rJ$V>Fп`㼂Q]1Ŧ&VGhT416P/l}VQS;>8\#rplJnF+;G *a]L a{Y.L|51I^Uˀdl?/~n/aQsy6J<\s,<)dM I].,2Oa  mzlE-uO;>)g%bhq] jC*]eIݬZѼ4*$NWѮ!35IJdLM!El2lh$X3p']E^r[n 2h5D&6ҕt;d{fuԇ`mBr? _0OqVtggfh) 6a( 2xwMAӯSҫOy4g<؋pH\(ۊKLw$`xbZvgPG.vCb`QycC+1qeh+ɋ B.Ci}PQJzB8BEiS$NV%}ohKRu3_wJ~&^{RR\-6ڊ#ԀZ>3/Vp l:|6R ?vV<$0Pȝȝ0?wnN*݋*>\4-4.U}ݾ9A}J.,gl pc YJv,YBto!ΈPūUg0ǁQo!Ň0,ikW.$,e34[rjG-ˁF̤lC<\O(3D*]*?Fg{f&~hv&#l?rH0[*%Ǚ\e?PZJ už^k\MJݬp8ծg- 5QJ/ `B"/QpFKL. vJ@+tQytg4f}Ϭ _kGMRş+l$  }:31j:Dë$iw⌘l<;D(+ eWEaD?Ь;Q cbo꺉7Ӡϐ7X?."PGͮ I2՚V`rYk)O\3Y љ)yf(WT}rp;ȅSoL.ΥgN  O*ڮ^ tt^ƒo=aCNAV/? ʃyJIWˣe`@@B#8q,j8߆] Л}4P K?]bScL7˵CABP՘fo uM8 |(H @W6Ȭj mYת/ѐ^Sȯ(M⼓~Y*.~,,a0F8!4]o~'n"I&3\(Rڌ;mWomP6_X%GۀXtЍ<o#i뗁›n10]Y7gAR;eC"ӼW.ClwKް d`=dAlαS,p4ʤ[ Zz$lÀ7@\A)9b NJ4,0 /s:& !6frbJWsh]GB;mŽ=n K+5J־`nzw[pQxf H7p){-]跤0~Wd5_uwB,06o1c\[VaT#SY1~$ ;8?9Dh&_e)W&F⭱:rӻʭ/gQNFgsl`6e|\t 7e88 wZ 0kyGt<b%Vj-@Orȑ. [0&1vәha9Gxn& 8{T}S!XqyL*2v[q-}+Ҕi͈->Qybn)q Kf(nXzr&̮sw 6m{|W)y^/Mۮ\+FL8LTL) …೯{Y؎yk'߳錱M43-1r:`)6E02@(!&Rn?L*Z輬= \8Pz44}42P\7Zi\Y17nYCk?l .6j "J:Lƪ6Br6B膬&.AZ D3Mp GNsCŪ=cSvNsJ8{AN\/eKal7\:#y񢚜29?ЋeY̹`?U§g2}?H Ael cհni}[HiBr-UKgh6 }T*0m\*FS[=1Щq/8ZA zވ8%@oZL)=$YnΞ7VUH>KӚ:S6w]'٫'_o~X<]g G IG*8m;d#8u;|J&uXؠ_?F %t#{41LIpULޯ6Z㭪FnE?QF pkJB_QUcI #xeیQ ʾ u=GbM} ݢ[Bwzq1ʖ.2 4)!b0k4_+܈?unr='Wև2f a JԘPڑ=%Ӗ$0† .bWefiF8m칔gqBo_^VX͌tV`&ݲ[{ΒeuN> +<(("6~㣋0G ; yKN*pc~sԙ5v/GO癑4SDM(>Oq t9TEҙ[ 5i<Ѱ7/?.V?˻VW6+Ë˪1wO!jRK-oXW l׿ՁER>3acoҩ\Cs%%) Dvh}%n]nc2X zgd}/]s~.a 5~A*k!;ۥqҁvUc5Zf8CZl;{EK}Qk+Ҧ18Oi{ < A'R9lU7URZ#Rșio Na71q25u5!nT N"Շ3bgQ@pzCe▯h鏗FsϚPrp+c: 2B}eFe#ذ]&#H!=yX(ų1Peq 52vVhB_aYr/V5{&]?k7euBr\+κѩh~z-?cWjI9o@Skj1G% 5Ct)oH/,~5?X7fm+ͽtOjVBerTW8}xe= =.:$I_={~3\x]Z+/EΓ:;gע#j"s#$KZK_tj|</B2Awg OJ2^gdf)Fe@ @* zuャ봻~L Iόax~c:NIcF+ .%c RM1$Q檻7T.ZyRysT ^haFA'7D\S`hdN@C&|!aP83g> 1ePo8[ٗGZ Ӵ+Dn!Rj2rw糑@]A/đ^(N!R}KTFʫ8{v V F!V. bUoShb߰@7 : W֗'U&FlDuuLJi…: T7yU"ߙrOK,h'VNtt >tM:'ٲaus>Q^)\MPN4y}ZAR鱄dyS4̛f3}zr ΌV,J)]F.T}Jy#:S7Mx"{cvqw5f7"Σ #b J~ sZ]õUMh(4FwImr>w2tJ 5=y;AuLQ< XsF4U7v˽ W$b|x.E BxʼЖ70nUU[xn-&BQq5ʺtDJ:$0(CxN._2?6l1>bB_N jg1ZVIF7ٗEjȘzM8).C~Ê|>w I4}}3^w#M\xgwt 5DԘdEp kyL3&7\ ~Z(Tr tl\`)[)#sm@ ddJ^eo'?Vf$y%s-ܾG*b@k cɗ8ف4|ISӒ%&0_I4Ner[Z3 Hy&fAkMP>9ΏCQYzf2i%Y=ҁbXu<Gfo.m1/ ֗DCV>qɨu.%V:f R>3 q=|Ґ<Ҡ' {_ @T؞ =,3Nek ^G]uDPa꩗be \8ShmRelUN9@Z!d'8zf gRz@15=`aYJbЦ>9I<|^)LY MCt |4o8wu (FRFK46ŭJ UuTţϮyd@Td/\'R-TV` TPK\_ *!h""C/0}ć&FC kS]}ec},Ykdǃi`F.|措]&³UsyLi{$Qv?r]כizs?ǵ4t%-WOt +HQNg*20)95Zh|+hCHA.hG_)?n!鸾L@HMM+^,<ٵ hͩzD #qH'I!rӽP8~՛ZΓh ksaC)c^*.wX̽AU7Bjj4)Zs:oN#!7{ _%Ҩhd ]}/P,Pr&K*"Ϝ` (mRbo_xS4(Au^0AP/MٲFη2$ͅ.Ɵ [ZWN j{t}3fF!o *&RVuqpߙ x:zm__/JciFbSoG&&h5cn}A ɶ4#vTSu(k ]GdCeùF|1p Ͻx;%2Ɖ PR`L!)/Me dF޺VeSOf֣;&1> [1hTY N,]e6Lk@x`u^ʪ$h˜YmBc&U Mjp1Vg΋>I_ʪxV3Wnb'7 E$/AZП'8_E]VX/ H Z֜Ϗ{4璎:ߋxbN}4*hsC?awM6I&(TD v &G{Oj{jG}LW?럍^X-l;蟎<]nLA%=bҠXyA"FQXse&Q"Vh[K3<;WlsiB/`8ĕwV]F`K!lNKݤ&.+'J@C!dܣ&(61-g@M_tR {?AI؇ #}#Q%EVJfo͕F']kj)PiXGXYRs򰶙f R@˦#1,L?J F >u5{u@uDDUDиymHV>loJjᇄ֓`/^mBBU8#dS Xfj'&l;-}| q<TnD>6V9nlzDT +~^u|wނ}5 egJKTlw@Q 6Nѱt0R,[NA¨Ԗv0ro-w!On&(22PQKp_hnFZ,I**)PZԐuLVA0/y0;対 vfi3mKå\+ )W/&.*@NaCp+B<IӻSQ)r* d;*Mxw@R  ݽ9ȾޑSğ6Dy8MOg/j`f3Gd71u A0mtc2XI}63ڶ.r}e^TΌHTTE(A5T4GZ v)t_:LBoĜU硝I!L KSZ{ޮxp5j5'dCՇ'Q+3ݵ<.p;PPp碼 yE=A. BD_ -Lq-)]h zϦYrIbdպG=:0a"Q;rI|$r.&`Z 1o jQ^>,gvh]&Aoi3})PF @A:uS:`p(8;K` # V=R/ eIΣKܲy@_q\>̙2X גB 2zmd;z=6HYgSH,$\2ҵ{b (d#6#ό\n⹏;rVn눶i恪6oAT}zh̪f h B-uE_S nls튓oV +'0i^725TǠqkWt ;npwOeԔLnܸt9zӫz[2|=7]P _֑[>< (a_Jw&&8:Ic2#i} x6{Ȩ.f.-|/Yf'Q@^Ť<ޕ++uEg=@gg '+&HwO- [ *Wpf"gL l]ȯetG5GR^yX)مĭ׈R\pN%FO%[kS:`] N؎"&2̀rRb4Dr_^XzbB0AY?FxE˲agW) Ŗ@F29i_`ѕЛ-sɉ_xxpcG7k'dzցz|GN[%?duGSiiÄ؋bѰJ i7tԺ{^{̷^@3ͽTOE~=arOR*|hdHl˯5TKZÚG2>fbd{UR/qcewJRtZQuL b[})-\gא3rO=4:+znfʱ=gˬlSc6|V|+]P ANkǁZ"2qIzPwc"N)ώ⻈YGJFQf[3j$gi?Gy gD'%9e &߸\1u.u!>&HQ-*! ێ) :.D[/q=;Zc_6 I Hه)H'XA<RհIpjyoᤀ\P;A|s:?r@tŚ^IQjǴb#Fۊ~锺 De0զX_#ǛtBBWE8*J*qę{ nh1ĂT,,)AMbǖ|4GX,3W [<;ng~&Cb`}&ᜁR`Яr2a*%$ enNѺ;V$Ͻk=2Km֣B1S(Dj83" H;F[lSh4X@\x gw>u zϠLzo8F_AI$XVA,fӄtXgG &NW֧I`ԑLqh8ƾ㸘QM7CY{%}M)Tm2Ĺ6OJnG=AX}G Zoˣ-Ge^XWV@9čqk+U[/Cvb[g+_H9G~ R}.wn\Z +#X&ȅ/"PS4}pC]es҄w*l92Ǖg^z:wg'묋b8#x+aekt0Q 47 ՅC(*oRmK(l9kc߭#ռ(0S?_njV3m2ڝk̖lo 4}ǿ҅ˡ暬04Lx*% 4%?nϲq5}1>u)[$uQjC@ue 1M^8+MJ2T6@oEKbl]>,ڗrn>DQU31,*`RذSCh #>Yj3thZ=+i~IXޕŬ\d lp0Rnv@ P cyKr Qpeˢ(HSMW #R!<o+\4nWxy2СC3{N6jSi:N ZEC޳.mЏ VlE$}+g;j" zc賜fC2Yŵ.ԀXUD%;d2CS2Ru_pJ]dHl. e@@f"ۥui);X(i;|e2*Pn~uwj7IYl`W} Uݖ 53/Yϑt&Mt* J*#424~ wœy̗(>ԗk4jsA2 M)'8'5=?/;6 օ~kp~ɶbVW7&̂r`wb6٦%̂sbOiHvXԨW퉅_PGEcCt( nyzbw\6;o`dLsds᲏H=zh030y+~(M2|Sֻ\Niy^߮ffQ:=tNe:NTW@zGʓvEyZ DhVm;3=' Tr[LʙԴe`7ub JIBȋ N9?t7ɟ2+L3c)fD:j+]Х9q} d4hKL4h>BMt>\S&|/ř/]VX,|.s잌b\f5g߸sqSI~Jk6=g6yQGmn UL2l8zj!v?d@D$Uw5I?(/:m c/~kx4D.N?߽{4#h } qA)&#`ʎtI ñy5 lrMƦ7:gr¸f9pa޾ 78]k ;(N˒{g,|΅_o+љ+0^QfNt #r!Ǘq `-onƟrR?,!edGΎa[406KRV4SеAN u))Ai6p쎅Yֲe@[5`0i"þtl51UKDcc97R Qrܛղ&:in~=Cŷ達((}E w=KԈ>V¯ ]N{Jt 7X4 F'@>HÂ}0+dߠ5z^6` |KG:|?Ce1_D66kE;rN)?)iŐ{B؁=;S[Z3buZ-*?ZbjU~Ke1=h׵.lrú*4YQl~@4Edw ) ]|Hj_51gCW*; ..u,_VC ĺK-v<$2'wkȥY.`AITƤSy@k>Ƈ^E2? !{޻ s/b~lNG(/r~fȒ6:"[ref~&|rBI.ů[ tu-tfa5pHla7i2 *<Yug8q䟙nhGZmve6rZ{LrJZAl+K4ac*Pee]n0$~9iW-%|런su`uΊZ1 tĞCN^SlME>I)ѵSN[uX/!8kKdϋߥu4Haǖ$o6,b fheGIY1HH1I> )sFA`|3 hi;mwnJ+&YĈ*  )DviD\"P oUgB^=] ծ"n֣?c#o&yk,ڍyFw 61b\ ~ AmnK!`ÓPH!DWST0 +<.n,Jq}<-#QJL%XQ@1'O(\D7fGLXeu9l g#hkh>r 3xч;r#1U62@g YOaD0B^TZ*z3GБ{'5ldRAkm[ߑXz|Y:oAy*I3ڜ؟` j*#n 7 Ǖf-\$o4.v$69|3k( K&N]„j+z }07b0Q"^5<<=%L=c3RNs_AرEM>ԒIxRwYBёvLHL N\̒ 0ZZd4zO2eKV.H%x;Lr/wsƓc3cփ [ GvK̹J%t?y?]rCeҏտInDŀֱ:( iaIA0,3Z$L$+-׻3W%q F\V?Z2zb"裓| P63'AxeӍu6j/uNFRq:D]2Y]z0R[oTeIu<@h5Le惋LH~j)gQ̰1rAoo8g0̔#נS8e.>edı K#HU+r6,>zwt*:ڹώ,Q3${5ix=y1$`< ~y'mңaU[2lQ26~8ޚo.H~(" #ڎJ0nuh }h*X" V^q0jɯ`ǔVնX,&#ɑ% tT`ZMY?6'!,6uA 9.;HĂ65qG[;kOoJB̊&ؽ&r%Dut WtFb‡R۲jx0B/0S1x\I%O·>5 e/ѷ¹ȉuBR0#cd"jYy45HMAgԆw&1w2d9(u#0S7z!jK1 _!K*[6_R1<kŶ %ЃWTп{foSL 7h X AjMЅTi9|'f*=&RX?dufs͗jK Pr9o[ NG(|^(h?ߣS|ܬ*Y9:+m@^|ZmvCǴYk3:thii4 ~3>ޮʟ[\וnnD'0]*0#,Z8[w 5nz HHj+~Ș)~nct1 y]ڰuK4 .ʜr釃ؘW y|\S%EE?Y,%>8(W%=!'moYbBL,MEpwPkKc%?ex.XjwsS B##|!"SΪV %}b8u JP93qjgAw |z]gB0]| 8hȌNR͊WlX a+JYuj쩀Jm 2fMLfIo56~LDThS`5y~驻vM`{(PI qm-YIO) VPĽc2-psq`&3 eG,N~vF2rCiTO{28 6ƢĜ\p,k7Yz>I9e4 > [MCgb"CD]喲FP( y6Ypp>/QíjyGrٓ~ʺ塉)xJ`( i*3]6 B~OEb@=D4{e3ȥs͗ P8Hפb9-sbMdc[mDt8&9@)0k2G#(Xu.UX ⸦!'@^kۘRFmt^=fDy//;mJ>!9%V07 TMgNoi<| F[x/lh3ܔ(Mu4 FoXC}a+!#qzj)(.އJ%0fEdʕ1ђ`nӥ"-Bq4h,yEnЯVy ؆aW%qc% _&C`M7*y"8$,ŋӅuR$c>gzxeC)!v:qsJc~n5+d ̃-YjD6b0Ȳ3ⷳ{.BXS7Y| k]D=!Hq+&=|ә؃P4UݣR62b洛G`<]Yi^+ԭ.m7!LCӺt B+3L:G&}80"-$PyL:GfxtmGmHX-D*ÔiaP*ZD|_afQ}jaOsH>uLlm>tkAǗ;i<^:x_H SaztSEo׎͏~_&g4h"`7Dy 5+..;^5GK+. h9jl.^,߽3;*(P}CP^'xFmVy1XRl~$ o!"q&!uKWYAvoRw-p.|jQ'߲"p`fτd5fm?،_k+;1e0Ņ0ZxʖɌ%ͥ</\}RN(>زjo=iI?}eUi5=^Z5,e?R sjY}0:B-@3vʐGP&=eCCu,$NF7g^tɫҤ(iNfqVPb}O]Ӡ9ޑmO2|R|O~Q7 gI%&$. uuBnJyd?ʵԻ!:j6e(QA@@`"|'ow\Y>t%u12n_K!7v3*bp@R`KЧ2Εg8B*enD` ĸ|*;*A?Qanxl>xSM@HJҭT!TH!$c=S~bG6BulYL"h@?*^ކU)@S*ϪÆS4aځm *u4?q@C{f{}ِ{S &c~T_]ElIlGBZ"cG6Áll#θg]|AX8zNLgCGXa doTq1ERa&/$HC%S #7a@fCGa;6f ͢F\v̈r|'q"&?@In0ݺ­ܖx%1eXf͔̮J"7Ս3X=,WVK[cҳӴEZ{Siݏ8mλ#XBeA,, ,EaΪpR 9=7rbyFS{r;פ],!0- \VGp 3S3>@CԆ.4V3] W>;`@M6z9_cq^8¤s!tRtKh(o@ O41=i(7]C,1rbB_#y7Y)l&3sXc%2,`e\{gK%D3f̔MܽO4;lbp0إKuJf yu!t=!VzO]HU*[yN43 3@A S+ ǗG$2^"Υ9{ԅ97oqh(@S$C+c@#tm9a# .SZȎy8!t9QR( }FtV}>pX҅de0LW^B wYS/ݡJBg4Ӗ($fdٝ킐qeΌm#,nãp,jx ou\Msx,Մ[Tя>K#IItZ&.,(FDץ>{q.vA[G_ $5Q9#P_0gLē\ɻLi]+ ֋dGԕ"4K9 ݇\XM1QU*ueQ(3Sƶ0Rs!#wt3fl[9|ZBdv%L>Yg4?P1v eFEϸW$/LJJ^+Ɩk gt</̤BoS.*hX H%|ښb)IDN6#6&KCVTN$qtI\!lkg֙'!WV!Ρ)|싢(#6=Eqkʛ:W 'GF7t$~!YtAO%kFгi VFgH>H)Ug5-y%H6a'Xbjj30YHT<z~4b.@mtZ ӐKr>NխRlK[[؛{^w8@~z.+vҍ5=\&qݴ|< ,)T0(̉Ёq%r>m,sÿ\8!/g'tq8QLяp[ah+\HwCL?tD\B;i=c!:J[WDn,6e'JX$Xa3ʭ譗5z1"ϱ<% /ʉS5ֈe'ĉ5^M/Rfxsc!TGBN&ϓ fyP*6IJc&$;Z,VȷJ orٟ[6jW$c "fs*X/@䇻%E4Gk)Rdt9.p=#F|XKdvucTDZ009k\?WXw_VdzjL&LǢAʻ_NJ:X>a+5ǜ6RK ¿Djn Xҋ~//7@VkoK1Omyoh0 vV٢u،%26h-[ATϡr7kT~5\%3W8!]5"%XL%4xSe8]&fsʭrn˶/)$ |Y,RJ 7h㓂5'|E|p v*[ FՌ]ww1%>ʎ򏲨0LLpfks\'δdWnMxfWY ڷ@l>pa]xpW&O`{SV/A,ɲEZA(VUXb-!&΋Ofc/k !]Zz,i(cDB&;y5fsWKtS)?@,B/ =?B'4F[1k?iŢŠ܆?l!>wT/Om頝qB4J?8rn)-e lI7u[# p12~E&`&FR/X%青1ofV-$%S"6k&\0a&|i42^(9oDV[~%ϿsSwajǃg_JM(@Y~!'򇫪tvt=4}<ocy.y4hs 5 wg cqCANdHBbIpvb=n FoftHKX9; ]ĦܑQvȓ|xޢF٣]üPitϭtQ}C)`aC w%ٓi8Q B4Vp z;"ě;2ݚז+Z,$b]&ͷ߽e~YMn#ik%}( (?[R]roj yMiѓf&#MǢ;JqJ:'W;NdbYfƊDwϨqNujdnDq߃`eR)D95D%T҆ BLA:W;cy ƌk75dbT٪raUؼO7#v-4vd6at{U 6ǂI=2vwE'^53FғɩFe~s)ݢ1UE'' >0LͶ%`Q#tS:(7{x\uǁhL<:rOGe'%JbIh-Z-NHEBڙwlzox9;xZ0.=^kGH=$6QδVtջ {m:.q 1`N> >ad!,CF .kTF%Jb}23C$_.zMYkּb6EX'u]ly\}P[b,h_#; 3ޭYBR>p*cܧ\eDL2?p!v `sBԗS arӞzje20B9m_.Nә[@¶`. Z@]8~CÂ6/}l$+ qc#R-rh)f~=nf'9x.|=na/:[+`㦃Adu=,-i̻.dPQ8np~2vedaRaΪ/2fi|l/zJ~ {`3e1Ӗ{aN5w~OF%[#q|*Ad&e+?Ͷl͆}/H43H |7˾!pR7=V22rlAR֮3urdC4wqQ7?_zsB XDbGYûu1зڱf+dC|mO}^޽Ü*Z5JfBͬ*’S%-rk.O7g'b-N~4ӛr.l|ڌN=KkoJ萋>sCqr#p@7\K.l^}-w䨙s] i~]j;_Mjb{?omN%0Q]Zz D't 5/ &/0:ZWx  kW㷼Vh׵PԼ}. \2T•EG;鍳񩴝Ƥ#/8LQ!W["v?ShruLBG&lNUޘtz6W'c+Q ΁>WBl]07)B}(Uv{⠥c6R2#E%{B@AiKt"g!%ni;#ԁȱ"fjWJă"K'@Q:'U0.ZJFUϵ?!~3H{'4x Kal=*-7~#K-dE)UF Tᕎ~#.cs`lS LFOhD&dj[HDi-e(rf1؀qqRH*zQ bׄ gZՅLmh+1/fPjn(}!a;\32*M{ s&XJi7ɨW]'a9qv?%+:5c͍c[Z wG?£(Bڒ5 ů9@ٚ-5D\}ʉR;$f*[&8ߏL^ Fc"DtUtb,Olw\+͆ȯ/$!UNγ;npe۵%PUkId UZ"|9ԒIfؼ]q|ֽzX@mD^I?d[jP+tfڤ-x`^ke9 µ HD?ɇY"͘[Gy`9 Y1Hg4EVoo#Nуq!4±2D>.)c'o >;8h)/:3>Im'4=mo4 QD T ۂ E CUg'dl:ɩelzOx,g4Ÿ gK!s8Z/":3 !f(4%dJM9dIy2y :j-HNF<iQ.u(]`d~=Hu[7MX/k_":ZX/pxp߳Pz7XGgȱ]Wk+-vzw, !?j7hKkGދoh@4 @2+~fbCtǤ[ΈN < ;SG(~)o`yYŖQˍi7=9_ (>[ ss8Xf~1/Qc]2oS8G, 2x^o ,|~(1w7L HOzCDž!DV  N'l0'uڛDUzx.  Y Ӓ_YʺhibI-h$;)5Dx#A{tH'>‚}MEhxB`}*0iꕀWƸ@w*ȼP_C'6~rR&\2U /NLMBQRYw7aD*1+oBfߢ^]l:xp[cP;dOEWdUȅq`ȹH&Xȩ!HA]Kq+g7\/JQ1 תŭ2 daV`_PNypj7v(W)3m7ahy_Y!aIp3 ?o` .^>no:ݺ4mmxC똾ߛCh7k9\@pΉE}GJ>K8Gw ɮ 0lMr|<4M60ɀ "nK%Pȴda0@5ЮM] 43z<.S(? / id' O~>2$ճÉ\G7%mYxcgٸ,PӪ2*hbae뜤\/ 7[+hδpR/;?vXW%;#zK> 6ʖ0}'즀<2!$GSSY؅Jy]8ʤܜ_(Oa >Lin mB4KI˸leU #7Lq{Xя(K]kEbi;j!Xge>l`e ~##Yٝ$xIHLVzqnNǮc"PR/_±CT|ft_k䵐Ϩ@I;ggkmy䄞@#]mufz4YM*}mˀ1=:`z{I|78t[F}y+ x =Qgy0rZycv G8{j N@n}\50;BS$ݵMI@C!}pTmZ##5o=Fx襰2Ͼb=9({#){, -GI;?{v0wGA%uz gJDd__,^GWP('GF9ug!"au>wMa]8koUCJטO[KI9֎ynJdH##5ntNSp9ļHmݮh~آ\N˕-8O*JmOW%UB<0/,pBPE!%㐶j`TGWa~|pLM}TԠLp|27"_.}rMm!t75қJ5e"=^) J*<Ԉ1rMQdf!JKhHGP.{(EγA~.eȣ1_uGdXmJANWV*H9)7G;:.a=NSk3/w.Oڱei+0g|#ˌ OGT4,-|'m0M@v7tRx;I,eC [ b_rǬ,z^9X>Iy\XrXXL-8MaV{]_$qqK!sىEluW sR)1rLI? 'uB/vTnש#{8/mOYܱ3|jO6ߛn-Iu oNfP ƌ`Yf'Z l1n1{c8⶿xdCK ]MY 5RUE {1n22iXS-P[28KWh*7ll #P 7T7VTD a[nCZ^:߭C H\62+At/i*aB1T}U GX xtצ 'ߺ}| s% h/1>>MIU5f!Ct=iRZ&Vγ5D5(RiПf: 8O Y>P.,׬*͑w{cC,l{|0^>]~ZE=`<džQA-l^o `/O¡\쎗O>rA, zNmc"SCjV,U-O#1P_TWY҅>kx<ūltHkp|d8kPWQ`9\[xi4)ŗ`%JrNO$'B̵wm"B;V/(JrWH`<NºsQ 9B8uAxxUSh^K:M+f>{Z"I$rfv1~QPKU|`*}Ԫq:B*h#پVlq;Wq]:Z˖"#|%eU;J$+-1D D4jU6sc1SH 76 `ONC_?if bձ#o3;Olw~HNM}"dcФ%ղef2Ҵ@^$<إ ?7M19|1qZ9jׇaRD#% c, Ѥhamf:__^VPԆŒSmܛK+>iu$@zP|^ŕRfUkY.rs>J2OV~iw`iF?ߖ_v&FعPrjj3 {i_$lH'  e<#5h`nY6-q*z|[WۋJWp',ua7Oj4zP%m1v?^Hu/mxs)G8{yRПo5)%Z$D.eqץm{.6D=\ϗ`vȋ@sh@Yet]l O΍Kf V66UXsboj8U1`3z]pjogx6E pjef"bwlE 5iRQnH٠<0+"ΞZqaѬk({B38'H D|*gDwP%{`+I.> ,n=?v? ]@7X crwwqyGq=ȯ8Ou`Xx? Gr:iqpC *^QRW4X7d/&6t:Zg?XvS?ɱL 3l͉3FT~XqqՏ?j'S}d؜k/0&ò8E| Q rY~=fK bqS@Mt"TB׀h9p@a 'fvZq{ޓ`VCEխ78P^uPuz-X^ 㬗 G% YEͼ c@d.6{Trݵ’C,SdDc"yտ*%sD I!JN6OoM!``&=猘:b?^DL/1=H 7c3nСA^c4Qk57O5{{bJ @xy”,p4ׯDKQAc惡ӽaH/왹 q"&I";㕴R$CB7J|H-}X ހ_DE#9p58͡*U82_9k k¯*69 웼 ,/PU {~ҏЗQ'PĊ3.@J[R6gݸ*Ҹz 8U-A!-Qpa勤7¯UQzSs+q0O݇8fYa.Z!Dp"Q.O$0 umB7o)JEtzrK@wO(#X4kߺ96v tn:a[hK뇢L0~SjQ s~·o8$jʷ|9_8{{ !i AY#TlA& vt iX_b .t/he `bpo;մ, m ePA7 '/Mho_IVC*>)5&+*Ye_& ~DAIp\*o L1guQPd$!_,Oa5b!qVX"`6RR@F& ;]D'.FCQ+nHy_GUȠ8A3eнhp xf3A+mKi't^Anez{˓e؄G550t֤F%~ kkS֛S$Ew@x=e4_΋aN۽^qƃMpE: NWjutR1rB.ގᐩ3譓TL"j."fN tT%օY5+7zXpngz{hf9< @&t"hhގnؽdNxujCP6oxe]Mcng҈|l`v6HF^[ J"."m0wUHw/9yNG [fإ 8&/xʿɀBP5]pX\(}iG}Oɀck!yDHhB@ adS!>jn#ֻȵ."y )i {k9)05!5( ,?W/#bl|Mc=8~=a@z\$,Ɨ6Q6 5%zT04rAnO:_<{C`7>Yk +ϕ$@@/3; kF9atzR{7k!OJ~'P\>GfMg ؤYu;חu~ 򲮳-q2g\`T:&N-U[R1 bp1 .- Ac;7Q[@W!w(#oAvoCL3rV l yo^`@su弁ʻXR(4_wsr$s[ uxm`-uu +7#'5W?2S:wc(bޘVdbb .ja2#^~{dxjI\bt51@pVEFg|sMwbf|gi]W [Y}k3~d5rwu4CWV <vjgDz筗sٟ_>P[,#tPTw˿Gz&"TpX7Cb%ycӓDg2,7Ƴ*&;BU '^D3E(oheh`Ί:C"wj>s(G.[NG9 r҅AyLb>KS}9m1R#,I nAv0:ݵJPIpsɺ]aؘN']X*s5kUEDE0!U^C0bN\TA <":#@N}N{[2PEME4|9*N䵗zfCWq~՟s]:[C mTElRF:z~/'W7A e0#NsvPiǪAFv=c*Y `]S _a.HnOuOR.&%w${w0>m%4qܮ쥇/}Yޛ5iw s7*_y&w'Stn~p>JKc"w.br}9FBV ^>xc#OWG|zƹ,eysg`쟯JGt5 }cˮ\X}EXD|Z'2nĹ"Fc„@1TPnvkNTR6𩨐š`9`y%Λyڅ8 {By@eܿzCÛ<> rjd\ޝtyTIfԈW4 7'>S6;G@XWo7莋YSn" *‹_%}U1KU~.d(ISꤰΊ +>n~K#cCty`Aq2³9])BK Zr?[$zT 9 E4VǗH:¡vv_3!QW$Yoy汦|5)d|!ƐmyjG3竫}xh`SI$'*+:C B<;7PFw?Hhٴ`o$j_d^_'ssĵP #[4V RܒR_4wY8-&2HƩM_u5m=2Q숛A 4 e~s.hZ=a >{5]A6 }}MIU#<$A> Sڙ}T1bV?Շ~gpcK;i8WtLw &-ŃSG-Fֆ7g q'bj0˜J.~봉Qi <~diNl)ְ!XŨ% Zs^,[YJD!|=󗋆΀ &6FNmDQ:MFL* PLK]3 tBT2lڨZ̫ *6#aң/:rh43ND+flĘS(RJ/#)R%WCwcj P#A*EDbw0q"Tlh? L#EiC=\VP1J´l:~RtUPa^R $'cp86Cnn2$eiP…wN=\],V)6({Sf jPd^.'his({D%dhؽнp>Fc1)-E>ӑ$$#i\4T+G0" QpMu6sjrk!V#R E+*Jjں|a?vUu1?щ(ͭf=k\?Cs]/u8iwz0>' VO^ 2k\ ;h`|prռe_h>8A?d$F JqRS\>is꜡k?<Z;9NY *D n7aW]t_ƖʁaJY$j *Q7{Ѷ 3\2>#'ZHS}]ulΣ+-ȅڣ/oJM#=?QJ mx- X3%x5a8~.~_󱅥q1Hd?2R4 ^c5\geL-FN3vu0f_Az2Щ ΕBk=Y;[h&iVPTWA A:t*7 m@!(D$z 0l{֟igtSu2t Hb%RP-I搾}k?Weק d OgwirH"2XeTUB*pdUx ne o)J?)5yi ضSQ}zG3ΙЈgJw?nY.[P_Hc@@ڰ!F 0{zbDHĈ~hۙ3vx[rqmO["ѵBhj":lwI^ ?ᗹ>$JJ iϒgkIR)V\Ďim:d'X1@CqʥmDTIJ=X})vDxE@1$~z.GXm8x6z묆{Ghb#9ѶEQy59y ^B?؉bq8` j̍j&1c ?[ ~b ǭ>3nĐ[\3yxIuWv:f~9u1uУ⁷![3MKcnO.*J؎fmi3Ř&1zCee $! !61vx.)a/XB+& u7M(*Cv!1>|أ0zrېzm]VxfAwes Z/tJ98HCDWS0PnК_4YSbO̼㍷Qu F _]wV̀_4Lg;0(pz> ߄ʻuIqjY?d{P`}NņIW.}mQS,һ WI,Piˡu텥B0c_6 _'窐$('4* >۴J;\",foȾp; By9˨3nhM"2I b!sO~B'8h;RNIv. 0'YGᢋش|Kk/Ȼ9!eDޣw# ZJ߉ý͏V5}ͫZwtF xV$Ba`Ӊ:?fo#]8|bdh@= ]B'fFs-nw.d=iH(ۛ=\>H;bۣ駏` U=C9X/g`U ^">1l iAIM@r)x&Zc8*fL RXzKvKs|W5@}V!j `b^c/Ww ߉gq5KUK{.ؘ}̣YAryĝN|h<0kPp6)|3 s:Zk7[c*8"QQ\Ç{'9Y>epU,y#&:R3h˕7 ateAUV0Regfļ(=x)-a0A] V[:!;g&">iSDX"`54񶴹~9o EMS, 4%4@q;p,Ei2KaTKB J5+玝˹!Lƨ?VbHA ZY؞t儵,L~.'bqbcԦk CC"u;a~:CжOwbE"W'ݼkb\d pυEzQ =ԦʅvJϼq@sYqQ;^v,K&LW5pCRCa,jᡣ@B;nIDҏ.g6m$F777LJZw5wcB:e~׋yNa`%p~m4&xAzU6+Zؔ6k,Őd`s1Qth?h!_W\):՜-U u4T(iA\+Dօր36CӴcM+keAc/]ɺ9br!F RkgŒsTmD“jUSqoxb_wdNb=C;nW #~qJѦق`3f(k& V+mO;wpis/\ Ջ>6 9OkL0gʘd/''ݚnU};].cO9(}C[rO/msM B}(*CM Fy Dv[<\c][;G@N: k瞪)aL3=?ڦxkQ2?D.+U572lNR kMɲ xnb)lAţSqnRc ^/_i5BnkL*ߍ9#H%l7_m)#j)Wfhcڋ ja=_v+wrqꓦ2mw=SAnH>KJe\ _VD|;7vqh1lBq }dzda$gƻ4hslMA#?ӈ+?Mck5qɕggDM8ÿE <8﫧BbXO 7%>hӧ7|*+R'/alߣ73/Lg#:7Gɱ LaV>!yp׵,5_ M7B VNb|eFI[xsduȞ:@L}WjOD78f`?zZs@uHh|R4/_O}`QaU̯ޑzi_O[38GSfZƮ&T#_# x9:+a+\oWZ`H@y..,O3p3}aN&EJmDy9ye`A*Y+l'&ш xh~̲{nfD~7#} 3t3$q4g`}N8U+11p暋 LY{ciRh}5Rx5\J_[+$ꎮVr0i9u_҃IW=~:lq< }LKQ',W?"_7°i}px[܁? DIŻOɎ9QVsa|)z3{/$XrRRiE7%)rÌUcRސzwox;XpF-4R^$B39Dc7==S4*ɐZUUzuf3xSerVU %& P Yq}FIpUmSpSʩ8g[?"{f| #k(!9SlRE2b 5:o5V[/V7Gq-\U|=ȃp(Қ37Aʯk4guTHxpP`0$)eVRۇMH;j'C+8G}({O]~.`uuq@"{F@j»UoS?o*Y~9.Ww4 FᴆtK=&z5ͱA( /C7 b62[{$pmAt]F<ms|!>j | Ew =i =Iz&v>i|Zvza@E%bZ2忧6֭~W1.]{OE2|`BT>ՅV Yan{Ci*k8?΂4HKv19IVё(fQyDNy75&~"1|Y~~Dn.Rk|` ɣ.@uIa ﱆu*٫qDHH[B: ͣ k4ʂ궥9XGRyje?s!/Y?ҝ^r$"AÄlcs ifUJ2dѣgbrHH&Z!܏bO:c*k97PU'1 h⌧y }sk!ѣLjۗ"nxb`h&Əghs՟k*=?,rlau1I+o@y` !̚LeH?71gYf_`+Q `s!y!iqD9T\uR7Psr ёK4^J'Of2S&b2 ç4Va 70-(ɹXkxo:4G)bE[tg% j [A˯yڄAʇ1+'01X +\\1g /V-bŤYu~uaI saQJhW˧TUvD5ZypUF= F(D8:ci[sp˧!fTօ[w{S} US7X6DdT#[4SC:~U(P1FZ-R@->8,Vm37ڐY9Au827O{eyi0.#k (ྶiohr|%(;{iEh4>P[ᅝdxZ3}9fh(Nvta|0CL/X_;FP"h Nǂ5^OkY~!? h ;Ghæ|}lRvމp2pg8N,UИ }^uofQv0zϬc@MoyTVAUyUZGPжpdklL/, VeBfexOě%ٛ@6 @H& Six]ʣIAй߳}GE^O [Sp"soN2P)I~N^V(W;})aV*r㸒6߰y/qpМŪ' mzn=F⇣ ,pIEJ6Jl4Q&npMe`&w=5{vtwUacy-ǂvO^O9 P7@OMKC6}n [iTta(+D H͞Yvbotf{^4ӕbN>4/Gֻz>Pwc{v4~V*dne˂ߞxi7+Ĥ28#NS#Q|3G/Ta1j0+ `g?eRNlJ$Z@ud.HI<O.RYaȕucrjܪ}n=esƦ@Rwhdҩwu[lLbO9PR;QXϟݜ%{[s0[/CrtG#~ӃbȻB2ϥyQ->KM69lE }﹜rU1=A0ǘ]nU1EW!lf\_+2XǷI]JAHvygNW҆_,D%7Fٯ0m p592AiSIUW ۟i57DyzBf5λ~KښYG F/E$ D";^:\٦A\T;޶ЖkHlb ro$z+en (dSNli,AScXD_vt/ YOgzL$Uh(6YFww%Zi~\1ءs8F;8G5F[Fr2z$tVQ%K,6=ֽ8}'$3}8؆=V B؂) H*ce7#Yj{~~-8*<.,`IWUA z-j;dR`+CE`Ah\+oqWZ;(wn|R.%{!Y߮d$AփR G}紕]Mo57rYK͔у1?i:i kWkO.Rnϭډ<H} LgQIvP]a?*eA~!f&PyHCt9@,kdA髣eԣF{}9GE +}fo;ި2̟6\4r Qt1Q5!-IPG܆" fs%md ǓpF:BX(=0ǔ0f؁Z$~lAs+՝'*JX`^}־\jmX86]Sw䱧=Ui )}yJpV/7js !js'{<Nauyewx'ӎzd5",Suȴt(;CaSŊ1ےUbF ɝK3%iiF%yuЩI4/}k. Ra9rX& !B>z@v#ʨWu)>+;dE\*9 Ԋ朅Ӛ*ńw ThIFe։UΦ)tpLy$}V!9F'J-ޙvF;^r'P0n}]4rDjaif=[?)q7\d11< vɚWg+ճ: mUD -/ 譠h_ݮշ(A7 QjF͝MبlZr4_4C"$Purߡ9Ov ĹZ=?ۚ*%rTk:F c=`D,?<\0$XVj $qSGIV4h"Mj%S O +ROou&9LzȖȋ:zLvPĈ-] G-OxLz\$$KL. Wj/2 tan oB#bČy>1m3 G~tX'kd%ҞPʤYCo8琗NtO8Ryd1L)󜁃kYP7}o9+B$t~=:a.Llô|t8"W*?d۵7^`8VUY!}}s29m!†ku4$xʴPR!Q`̮3 '*^!.jlc A>' C7F[g+#G8pXP[`Tp(¶E_"(nnߖ^K\Py7x3D )ߺ+`H/}NOP2JnEt, hͮG3;`%/GrȰz %Ss&t3I DE|CG:JR;[ErfWJOB1b ~5fS7}3H])ދ`?_{L.2mwI9UD\%gg,YJ e]@ZP'0e!\⊴Jn lxɥW x"1j5ǩ'}YxdC8Pjrˁ~ɡx2:xܴWT[@RHU/wI+/7e?ܾ4ͯ( ZS6m/Y&Ho['e:W`cf7.r3^G_BA4{ P5}:*Mga*ү?^1v6e !2#3+]zZdYWȉ7r}mSw icij,Fa"^IS$<͔iQ,ȥlyCℭ:HeJЯY?&dsQ|gӉRu(۫ F&3[yFY`>U<Og{O gS,kS:"L%!bT+)@тRF+7=%U WV4,i0Z_JrUpIW*H+v~p21TKh']9x6ut׈{_+U\7kS@լbo^S ]od!zD;`M҄jHA9E}[& erH%Pl\⳼ʘ!gY#ATKзӆ.' t>szs(לC字1Zpt.Ե"T1C6tV݂CAܸ\^Tfcpll(^,< +2w: G4ܮ%Ͷ<+\3CfRr;y~~&s4!⌃f&ݍ@3lnL5&jWO" Xl,;MՈ?Jlu 3" ]|z/(reUao(Nfn}KSO/2ɸ+ ގ&xtYltcm!~FND$`PVH#0{>$CqM1rSOZsyabaS-;֌ E !+)^@#DýߨK6]鴪Czٰ$B.b '/?uͤPv։7.RgiL8؟ZbkU9[4ů~&-v:l&8U44>q2^?|#!y]9PPaӴܱ7#*4$=j]uH^eqR^^DHvH:580`b}j/ Pƈ?5+zz(KWAaF U9cu;pWCܽ=?/, atA}RSM~ fQϞn 1.r.ȷ;L:JqRa\ >7"&E7~6/j q^-Fሃ#:jJM߾:׭ EʏW"ҡ4(G|vDk!|i.AYC'@d; s: 䥹(aBs"~YT13,gcɖ˻Aލ!֙wJg5KUJhv8O:Vw@‘"lqa)b:5*ƺēod.l +˱u<պǾ~Aϸ=*lFO82igr~T^;˾]4JU @d5&S8ٟ8ك"+F&ۆ#e$| qR97(w*|AKe!cn'mr<|2Y8nNGsg[,,Zv.,q9;vZъ<ȻUJ~Ή: maZÊ(?|$"2qwxdY%O+|d =>zGUSI~[t*:Mu=77 "oH%C'جDYXI;O؀]%㞶\YgTU|59sfꎂ [dt_ճuHZq8@=ae7hkըPυY>jpR#`kK{{!IOa9LfQYa'5Mv4U~/|A܁&lvn{t E vc[G#: i5L[NEޯM)yS.-M B[4=}sD"vISL߬nv o)a{ˀWڟ J/+`P2iFc!RFz8q-8^z"2MF_?FK@e gnچljN5刺o28%1"p9]yL.3L03^6=v f4&I$$8ٳEYޣx*GW:WyTyR8w)M6E]I/ޮsLs '֯VT_d71Gҋ]oTm[ެuT1Dk&ߍP _$V;UXLm/z . H168p0+Jզ1&VV1qU"Nazn~;cb[ f[*ӉϏ8R`6:Y&7SLII"]s0s̈# u]#S +eS6BOߕQs~CӺ;(YDk/lB~NX'㊱=j^_4uU' d\Xަ?{7!38Eʦosf9:CmG*շn F$ ˇ"CejyKlh⃑}L IͶ~qgŭeխ=U`Xge ն wVrW>$hzZd)2fI ү9]^9|n[PW q0 >[}/\i*wi҈şᡐ0 Hek^el9qTȑZmwI<}Y +(L͓` =oxqY#g$#D3Owr}z"y_KvgGxf`#GqAiV}Z=*rpx/I/\"Ϯr5;lهg:k-]jG!sl3a) UeOA M_F%"a-r(]7'dd#^+j6 xm{;c*;Խ9Q+ ^;2W=Pֲg~IUeD/Σ?S'O%@{;5Qs8h|uS GP Ylo  L1VK8\|#VP Nʜ"&W3snopmgD7IpAz7qs-Q<8P+VM"{lt\HgAsބpG6g*b[a8įIZu+StaahX ŸdAɗi Fj6?tԝr~#\#+XfMUF ` Xp&ݣ{J7>״7|qIJyC_FF] «HM0zT _Ķd6TTKWX'oyeY0guE$ko!; \/k*_t>%桒+K]͇OFzY݅v[z9Ɏ/b7gLSAiTAo1ٓGap ! < YL]WXë rr^⽎mfe˭Rm7-?u*>b=P@&nu4gmK$ҙMOyYv*f ujPALjo!ݨwY!2BW7;hg#cmu{7 (rqR |;{\{M鄴 { I1gJYq7QAOHZ9ܱvYĆz -V4n\!`q]@fY…HiY^~tOH/9SĻ{=D,]8G}mg{'nƬEm0U +NJ{%"/5P1@*hMR\bZ@F0WTn۲˴O%{zfocM\n%+WzAkH![Ѵ  )ߧ>lSGsX]v"`8<`aeRF`tƒ܆/V߃xku=KBHxo*]kWdI]&ԩe|r!V(ŃTS[ bXG&TI1cSέDsᖚT̅toS6z:qY @+b J"f!,["H^ԙjd??zɻ "=g ܢsa3M|m,ѓ=,Eh!q{#cXCG9|Vk+R J6,دyk˲)7h?/;h~(o $=+ae2\4nP|ԬI ''R39ӱ$ۜ;9KL@֠%uz?5sGQ/æ\M_|a՟#~s2@&IASKjKrzZՔDK58zye~  (cX!͡L  S \z[ ;s^-Tt}Ӯ*<ZU 9ÍKD"+٭c{WkclL(KVTH$/\_H\SOov]&R 1sW+y|0RU6 dݶ};Hwq(ІH8k3VA <5%G *E5c ,(L=^Ҵ+/W3eK~ %qSH8o{s@c gqV bZrA5f9?LSnG_ -4I˗!<(uPLH*|M.3Σi3Z +ᮌ= o+Mp:sэ!cЊj O4i;߳S$aCFe}e4w| N2t`>X:Ɏp.',a/ׯp`J&vOJ_.Ʉ^竺^* qqjyAވm:8 =k鸸&g9K2eX+9tw0dTR]5]EiSJZ&ε΂t$`IeTbʦhw93<;!bwݗ`Ԫt}dm w#ڦ#hhXjcApۿᚈ&Zc: yeZN+;"Yb@N튷3}MO\|J%ϐyM唠V@0R=7wt|D_IbxgI۞C }Qz<,&k&0',yȚ,i<?!3^K/SPyoi[^ *yu顶p'Wwd/+ V~*?JcI93PT/[A#5/#BABks k)aNk3*}9BIg0THs|bҠ(M&k>`ؑ"DD t&'ώcb޾: @=Лm`AOZ9w><}:D* awy_20py6:Epпfq $%963ȀDtVQ,K΍dQ/=DnnD|͐3X==z |ݶpb&5PB_R"ēyB^g!ORJcvE _]9[Ad4c\R)Hxilͳ8Z*F5tМo*L,BͿrcY)QixOП%cFrU$\m}vq d{,@(6MS+⒭7`BET6{V,r98;oH))+d_^8 AplψE{(wy tnb|#\O7Z hmU'5^xC|E#?HO)*_;?e "O9(;躕$!|E1?y6HcrOkĎl.6j~[̘)t7Q2ed P,+$aZ27rӔpeJh VGNBC'mV CJl%o>ʡT~p;?ݏh;B~aͳsCEO5Ѭ-:e7(jzJDZ`hh,~*Vh',1OmuЅPuf'ae^vDOa3ˆKs%^gpm7F QفMѦQ-IE)vF 6iXnxqRtsm!^P)![d-8ܣYOt?'?;޴px򴰽d M'5ݎ1Q%K :-RW ߭٦5Ak]i?Tx 3ib~zXF7t2A5]DF ܓ ;_?l.Q%1NuEvRq\yڎ?wCAK3_9yKS݁zU3T }Ck5.?L?}? ?$n81:9>gg6D+l暓(S(aRr*`Ѥl Pِ::;O2hyNhݼyGq4apmElA75Ä́'s@sOlP<D`)t%l?ݧ:{w~PT%Fȃ&'c=9H0-S.bVQpŒQؗAOأQܓ禈ymM&xhB2hӑbYv-PJÊVh%eKdUo#,)*H7SX"bҎpOs<{~<~ʊ6"D`e3aYʞpATY1-X}}N! IpeE#Pjr_H8d=M].j$/¤Lvg= wiM.q_>Iսx(+ b!VĐv+"H>!sxEN}ר84.ܿ'2⬗?%]1(*&Q>\G#t$ikLtxԥcu)8j30۝) EER5}#g{̜6/$vC^vx%Trps4a `=уu sj?|Um{&>wwp.*ͭt>XU@A,PeIB&}bzƱIm}r)BI#rIq7W7;n WqS VEe3/2qkhDN\8jDa;nG`kTOu[ff}Fhd;*l).,_W}iΟDӱ7Ӥ'uaj"] Oev;gC[v[J2d&blM'73U$rSiLY8,pGSĉ9B!#($7hqx_LH\խ۷V~Ӳ 1RSܷQstTw[s|̩oxx ~o|NPnOO|Vl!VQnJ IX1O8^mdٞ#4t 7k㡺 Lh9*>, )Z!(OD hnc<9GxstM/A3Sly 81HՌ؞`.W3dXxQ Ɛ2xR*gXAXȄӠ;aQ XF?<ެ-,!aup\Jbv z[G09Jm@ 1?M~:@n&hec5 ٤uz?JE'"l.)73d[<9^CnhPt5T, h}kK-vPkH)6}y!:m; r PjC*!_jί@xⅡ6I{t(C9c|+4/igLest@z;P@"{(`B\z+.BCmu3'a>E)G)tJi?[3:L&U"fm/ϯӜ<zgpaE>3uV^ Z.y=0|s&Vt`s_#rcآC5R㧡Zť=Jq_FߞZ}HA#/ y.ڟ8 Bk7D >>bC˦rIO;5#:%d 3n@E(I#6$-[ Kʒ'o%I&eb~P(d$CUl5FCSY\lW̮l- #FT #W+ p`Alf#EњL#8(A]8eG*'[|MO6~zsaaPD,JqI%U-@ ^[*qckMŞCk.}qƢC2c E3y"$YZljgT~dN+^~dXj"c $ۮ}g *X6?tյ 7(-79I>+sfdm(MÉgb-O OzvUdm t J`gokT#DMH/𚉢i{*b0RaANG C'YKfŔ݆/whYfKp* 0o-DBJ?ܓ-(f̨i7J6T9Z 6'y)%܎݃YBr+zیM ^ig]Mtr 7RXzn96. l07a#)kgĕ\F6^c :4"hFu%Gh"PIO*`!%T@VL&nS%m'Uv^'}fI(feXm Y 8H2]#)j'>%!wN'B}g+]>p r7"]IӔSMp96=ٺ]ru;Vs펽1 Z%#qk"&AK!)Xn5: 7!Sꁴ^`Rݧ ]y)LI\/0)CR;e4j c7K"Zomm`qޏv;5Z"Ai\]Ts6o俯XH/F{^pVA[Xri?#"a,d3H ?nHjOۻWglʕ\~(4%\9O0ߣ{MO<k-zѓ$oW_%kwkȲnV3n5Yoz,.ZM0~^'gEy{#̼[ӃF,k 4hfd'EĈ@t= <ƐDnVO;fٯ%Q:{d5 ˗ӇKx ~FQrUt}p]F EqfMCiuĵ͟tu:O|}y1G%iT6Tl~vh]||yO *[r<;LJٝ2 7@t{(Tc+Q,X7!I{^3898/sf*|[SbyxaiAV#]bswN.1blvǔP.裂]l輕_l͈d .'i! BgYa:[Аj1#r0>_SťޢM ͞ 95SA3ؒճKevYx t (,BaKc-7coN}},=MO_uR;%{\ePC#ZH+wzFUJ<%H[[n|p?:DL:#/{R~), /laPP0`1OZ eQIZ&N2&N;SkCjaj, g_"Gm}H0dԞ oWi ,dpP qT0Gf@) BiN"i!1^>IfRjKC5+3O[GRrG-PfDko9ߤQ# {6R !ШQ(`96#]g$gwQlkDjcG6I6ޯ)/S1KA:MIx+QI×4JWa]SYn,tB𸳙(ˡxuW&ޏ'bq`SPWip$cj 21pޞM$\Ѯ #p!NDgB`<5%Ps7>o9,"# >QzGN棤UkR^QJ7案H +mrQՇfhʏ `.̸D#Z{Zjԝ) 621DÖoS͚XlܫFáhkr&s`~ttʐ ==#>蓌%h` d룶̉$xx8e Q@?v""NXP$Gշym08Y}g) <\ ;/>Xv {BDلzۜ[L>(}QxKUO+uD.5ǔ5wJH R' 3⯼vBS\B%ɮMw)*qJ{*lZTͰoHY,"A2W7ot~-ؘ`+j yS*DDu@err/!}ZZ)osү Տu3x7eYbН%3haFFe8w)M\ ) y',`^ˆ6!`}']rja*eRD \5Qr4o }䢗<2*(W1I9cX*%55 s %F{y>"yU){_e0ϛSCMma3)l+-50ǢCΏAF& y ݿcq"d%ס16TmkIxkN{•?UUr*SBz9Yf86ڄ/Fԓ2[mry c;+I!w7wKyXy V&#HeZdJ] uO 3a(#Eݾ܀ؚ/[co3TNB/YO@.lH9 pzloӎ\*2Z[<9"@%Z+r83f!C{bZga+<K#GO3G]W|4ĀK94n<߬Gi]dBw&2|SYp${-)>%OJ)ixzt3DTV8g9p;ۑ]W @eT7q :†k G:B3\= H\xc}JQ4 }[xKAmvLdaByqh$I\F RζߴY=HԆ΃\"ɇ`n,iK M-s5ۻJqv6oOgJ%Px1~(.Dnx"1DqˌJZ]dq.X-UL1 YyH/u^ ._ r@>cMte5GZAR<64 Y.w.]W^ȳ W ff'\S& ճRb2z_W\ 죖M?*|x+PCB§,֑.nW;!jJmxm.zX_AU-s3lc'JÉG_*P.)ШUGdpj,DAb}g"4yRZ~{SsvyYk lAx ~=/Ny+mbh55kLȬ_}ņV0=)V(.8Y&CՓ #e62V..R Lì5kh|\Wn, 2- vPJ6hOq%pUxfݲTJg\f{lZ_cn,lH{6$A}:ĉyGJõX(Y( +>}tl;Lq<;81ީ{Vȋ|q8I_ˈ'7ґo #GĖFo0 8Dq HY$#aw&J"QڙxHw^G6 hOC*\(Э f3-!c>MXd0ƍ80k;ڀr'mwܦd-(;#nZDLeb w*AE%R{B9D#oO }n]N،܊E7KcC!_Xo`P žSn㸥8!iOUӻxuݍ`%>~1~T8tRnU1 7vǸ 55k`l HܯEҀ߼?4J[KJ (L&3)Kf#SjY\w:Xc=\~J'΁ ==5+ӀYû͜lx@g&+AA_`Ҥ`v5?^&A"tu]gjP1UB^N}ga6P|8vuK '2ֿ`పGcJ ^;ѯimʵ]Ca)S ;G;igt)\E:1DB!3bϗ{]w ^(?oy`B Yvڬ*Rٱ닳fVfނBZ:K3rK_dsĄ'xkRt[Nd+G%i峽d -\a}HTbǕ}ߣ%: |)[q#O FR]כ8P8RC:cC!}-6FWl,i/8G{ɵn8פF1!Nqvm.FKoļ`(ξӲⵞ7N*ZJÃ=~̫W4)nwT%A{#WpgΓ'kE hq+s--=_'dz?.u )2 -anO(n Mz2Eί+60Ӊ}~"Mk>Aua$ NpO bv[DuXBJLƦA0 kpdK_gL^sĹ(Q^5SeK=1/Zz'f2Us.{8k G! 'Mh. s233 SgP@<'ŴO+f# ,GFCuVL+405 4_W.Ce3L]$=W$ۂ3JhAy oMzKK\'1?IrBosKMoXT:y omLlZugS !F­ X[T k`TˉOz {(4 B\ FٺR$jAzʦNĘϊ1N6~毤ITtb h?yɊ1!z;Nb=L,YCcGh0PY㎁΂Euj yVswkȷ1>·5ƷDde,ϝ|o/3t\`s>X_\w'lD^#~R]RJ6Ee&+:'@ڵD: _ߝC,*U:TdWVn SrKI='[He`PF#xA/HD]2苮'si0|AavKVY6' 8ICDyd;P?{4w)FXvl//u %w3Núw;66~Fܳ$fHE2,_Nd 3 A$DZEA d7"V%VUexP;d+fP`^gϛ]y:~P@$_ Q$l)ijo6iHa e۫νv#m0=}4W9Hީ/Yo)7d!{knvcF@N[iv.kw~"w(0r^9sjQ&B R6kF0 QR.5)N:v&ZU]̚@ugㄉxt15,qba)Nm$"箂E\ JD@QمTy*ʎ 1j!^V/tJE//7ފXYlͷeƜc("UΝnaFhyl&P5g|XBls5ݏ3%?fLDnH^#L"sA9^/VȬPЦU1 a>{/ Q33LPu @)24s'/ $rb](\ 1hGf ǖ|wRkE$@Bw_g,1PxZs4p]2x. 0vLng#m N8>i7eB:':J-lԘ%|9n@=*kJ0js G %mg/ Z@% im<ʗcQɟ3 òڛbkJ ]ܱwo1DA;(o"Oc-BuO(veBۉ׍Fr#o4{ t OuenXE ^Wf11iCNX :12Y*y[͠T1tl*V6q\Do=Hu|mdIJ-˛fEui0<\(PsW,rTW_}.\owe2E`:_rxo *%HӿkŖ`\8_@qΤ>.Ya~xr4r|8[3֒ rU-Pfdp]e=lg{:^ D.#j ܏CtNQ!߱Q33QF49 9#TK~n3G%>JMk=*èiM'g4dDSxG1m R+jL#i7_4Dok"ΠNaF֟ܚLk P"~Vﶾ"nN@B`eCR ȋ%no9K/dq;\w?؝6ZYҀeV PҞ2f @͆C8y> Cs.z8 `& E\Ñ<#G*0 Ʊ4 X=]8v)Le SUuu!%g@$>[~ű"P7$&rcys8'xkBaw#h!{_x:>%H%*8:& %k^ȷ& Eͳ A8*/ [uasbgԃ\rCZrCT@7 `SD1;!gmN+( *TEPo+#CR7#9KpLd?.qW24פ7ӂĘ.ckŇ qFayH$&1&OcgXm7>+۞sËY?cjԟR T񖦘*kyT1&jKɅݷR_rŝPk-98rۓװp>ĺS'暞]7Jz|7s`8ae#;0\z9<.H L9s:5g.zƹGpe"8/8qĐN(MFb R ޔOU P 6c(J hP_k.QZ~8*f0t+ׄUILnyPxLMgFsCΤvn&|~_nIԈ`Krp+W0Uh0I ϛµ.| J$}ʍuZ:\ W؟x[9弉&ݽ;'FjkIAˣh(y8JNֲ#j6|jw<4w'eYmh#ڃU#HTc?!'rxhߵ8W4*Ù7*"&+'*P}e*To&Rquv8wNvNų7qf`;UhY$>NGV[NRa!7x1̢ClO-Ryb(lIXzD>_ԀB__niC5ElYBE8!9ݴ͋ fVh%`̤DƊKȹɬӡג?.7a ey&*>T>JV|vev cbp]| VQ_`wY(ݲN|J&Tw.>T:ۆU?tlj+ٙWkY;RȊ Sw~Cu)cũ]~GvF?IqhqmWcfCE?!R3]z3!#jRx `Jd[o}Lٺ`YR垜wYf2C*veZFcn}}K y`sLжEFpF,sF?d o!ZŤQٞU.1@/E Zţ:iBHNR %31+ ]8K;pCNLJژs>jdYgX铑GJ ]SAtFj{WU#`n{@ǯX1P(A;S/2PPb<;ǼA6YR>cW/XĐQOMx~$;sgrZR[}Ǡ8H;K9Y`^^};JXҒl={+r0XXa"WqIBgT!h#z\g:l|i>OmG8a KvGm)x4HD IƪלMk I1,N:vpT;~.s߲ny] ȆQ/N)H&J$sRDJsacx X&zeɟU˘Y4y~q-Gc*y&Dϧtc]޶$fZ.; */?w!`7ml?zծ92S@z'|m-#zwO b.~_1͇b/ty?\KS5jh^UWFG(U2Vhlfe`y"Jiߋڧ_XBl"!Y2cQDۓT&JwZD:%]#%pZ 4^]^ 'pg|%YЩ m/6/|0T!"#_y(EH?BN'nv#<#Npw_cB9k9`Y;ļLO vϑ wC!d*2MxE<aF[* *f(;F.1uo7gVOh3#<jiSgUܦI).1VC?"\k,`GPd91#/ W줜LktOM^unMՊ@΢[RP\-V\l4U+Gy Uk=!6uFh0nߠUy26/iBHqқ5Nwz.('QI,dof 6 pHܵ_X~0|TaoV]))[؆xv—"ܪ\x+q~W1|<<}6E~M$MD]"n,A!pRq}U@`k d|W AwF8;ћS#7>UןCf穹#uϔY38 }`g(;=ƒL"K`h%`jxa[ŏAF}|FmHAFF!$_PO2qKQNڠBKN"*5^vɎT)1A#1o@q2,OvR@NȠOAm-&,ԕ+qֺ@BoUP'aMvU^'}PJ1yvd˒S>Aa):bWa1Gԙ4b8kb&6[Zj0`bŦ1oh*K.(~I;{9sT_L4:RbhQśycO`Vp`Ð ͳ4ҁ(d"+5h4 !::y_ aEp݇#l&vI~Ԣwn,*/GX+{`q !#|6-ŏb~'1Fo3doυ:t+όot[D Lu yv)~+r$nohc;@Qq?A$$3TUI# NWt k QYlf!"\\8%u躴 \ѡ:J$'l^^bк\`c24gԭq ak D]|wzvŁ`b@忑󶖂RzC k)iW:*"[}I#I" A1ќG1wk»OSFF) l>M\`H!K`u]~^`$ ~l kZT[)<O2ct#œ`zFFWg?7[n9 K'QsMCk,I}"lNplϓ O!=3)7y>%= oԋQ1iLPmd۾lGAO+uc Jy+is,߁Ué3#̇ˀ᠓c_Ʒ=HB2HYߏPz0q`>?{)TΎi_PXwΊ}?ŔךPP%Ś0P1?`?ԃ $Y|Ead$-ldh{qHE&|G>7К6ur.(@߱!Je`.*M=X󜐢w0I{$:Ufc7u]-CAY=z>M;V9u~Xq*kn,T{wd o߲yqd(U00^ieE'/a%;&>vC+rB# Z'~s+uh zaR[9aGN Z kf&) /*x A|rTE q UJ0MSQ[ #3LVM B(;WohWx\|=sMDvr7k6s݀<^Zong#Z Gz:g ZR?̎+,5}(~.1ЍW=§Zºhʣ~}p@g[zQK,~bL[xUxbtYO NTOǖG (z>^w}ةd"ΞHLC)JcmWRJòG`E?C1F4y@7ikկwk| V3'֝KՑ;',x+ĶDz}EPQ/+6Ly#E7)ƭkWg^#3Վ8(Gw>]ORvN p߄BEt!mҍ.9HfJ&`OZsm"6O柏s-8|sY ;4ij~:~uݖ%F"ݭN \^oWH̻82ZT>xwvB3!iw<#k%.(ѵZHq? (a-H>u=2C$%oqpNdTXɾTX8 meyU +ԁ P4[lK(˃"6G?8C#AŇU]иeo|8A7t?L+7G 1-/"v]**D4:7Ŧ"Z>(0\w83)Ӻ?6ͼ?%_PJHm>(+De6@mp>C4UH{s)CwhU;cyew># :~{5bK!)^-bme*OEl?>] ̹  D+8lPrK"mbY[I@r,)&pKH~ZɇX0֐h0{8-o3f˱3cYl0ؾsJ2eK.OiGT:Lp~p9,4l8ag/4 ;_"yhAp&FC0"-8}l#`@ ?17i!*lkz]M` #I5meP Jɽp؂w ~ȋ4ڕUo^&@^˴J'|?v``%l{XJ=e]& lC6m021;vFFSfʒpSf+pSה'(ȉ9Mܻ}L:B;{˗jmsWv*jIXƺʓqYE*Wup7aP -~Cd`ف7y#?V~⍈@ W#%CJf`e0/AO03yQ:1u8 MNiyt#Ad3Q*R wY<זkCAsL# ׄ1[qbtxI(X4(ZJ)B3 _QOdMn#)yz2 ڤ nE'ՔM Q ˨pW4Xh/O}HYHdt(bUʹ^~ua<]'[a$hlϓxP{^M9Enj S|dǖ-SU';2H )r/t6`A+&{ 7=j/n:ђ嘃L>jX; `t'BP]#?Ly59i+׀z*_ b 'JVn VeVB$Hڒ?ewvմQHxUG;46,j#]ww@HvHLYeyAEب !On#@aCu#?PhYEˇ Rt" ja *p=$%# R]H8`0{Ok^A5ve VV`Va)̻HEM\i@vRvfҐΐF_npB@Pzr)qcM|5J iDܠ  6) nĀEGԮU:#9wپU^KɒS1 kyo1?5}xT :>UYp.%1vRCМ ]I.Ŝ v̔]_-HiABq1lԫBhzPAB I(2=4v P~vX=%` 20+ycEXxePO9N"HG8n8d|!U(B!9@+Q6]5e ɶ?Uooa糊(gyyjWv\ȃ갅zJ[{FBlNLbT#MygL_gY A[5c]޺j\Hvd`"I6Wt 9eKyⓣ(ӒɃWa?Ty&A$o]6"h"( Jr3:D 7D$3 ??H/PHP|zZiJ&Q<8>Dܐ>Ca19 ߻+c\;)ڂyr6@j&2t=F_msE;8adPqZjB`ehnvLMmvdj`sPH /pj~vIJv"uLJ,-B8]&濪ٺEtUGa0W@UZ0F'v  e3xҍ0+!ݠ{PӸ@nrU|;eb'X08.HBDX&u7T(IvG G(F+&vӻG7-tjnp MOf&z*Reš Qm-x\6y xL ~+X埝D1V ?8|Ljǟ[vz&[7煒T  $ Z^7ÎDt {6:&M?;Egs}W@mQpnY-GF!g2V~B#9r!a4k.1+g:xoU)۸S)a3=7d;,k׾:dy %}Q[[Z* fBx&3)Jd .$(7AMTkJtFsS U?{ypG߭-pB?SkU" 2Y*YaD #W{4FƮ(:t\# zoLG8T&j`+R40hDSIɊUZswI 䡎Zc&^zhgdC%]%pq<{o~1*Ud]+Unᓕ4o\bRæCƨ* c `1ʽ{(%2#}T1i&-q+1}ڸ;a1& ۨ>Y6Ԧ>əx*j3$rr@=y3`@{lwO# 3NcZ4eƆy2;p >&[\ҤdIEs}ZjOgz_> 12q'`B6HJ2Z#"+\OeOD):We/bF%-;+UKαMk~J8r{b_-U8y!T9_Ԝ֧L7k{Nrt.ηvzU3aWk*!wKeh*FhMy@s#BA9G&XTSU͂/cN98VAF'yD]we%F_LN|Κp1Ψ+(tAlUeπ.p3 $u"ݟ='fk>xpѭΘ(L/ O[פ, e=gf4x{_j8HzʾϤPE7ɕ E:*t`P/eWоTv/Q$6}QH]̃)4G;߀Zc6, [5wA ޸#XN&'^J@ a٬Y]1lሸ+bD є@G2d yػ ߺl":;w2!ʳVnvzGnM4ߐbAiA[)U{N^pb*;79A1L6hB9f*myGf^nĢmu8cDž6ۊsܫNL7yd 7CE=o5Έh?tv5Gbf 0~>tCkVhÚ"aAH{l{ub_zJLya'\5:ݝ LQ6}xxFkϞݿey5ܡ xmZI?c\ziv T%ɇJw"';+]W gEruۖW| 9. fIZ{yJ orevo(%ʈ=+m~۰bSl aYio)1 <(XRBH+Q-yk,uRL0ĥ *I%<|krS2~apC}[LiJYrbx;!} PklPU6?oӇIR[!X54inbN8JE)l"*5E Z ~j/T :X˱7iIn]"R 7MR2(;> HS+{Ϝ"Txz PN<_hT47;%I5~>M[ȵ^fcZB>swG i6ԶAߢJ'}z JMw7Fn 2$OHԖ-5_>UW#ٷ\\ת% PP,߯)lm3+C| q[ֽ)VkҮgNl2g' qBX\gTܗ?Dۺ؛|A,h+|0o/"6<6܌}ŲҀpJ/VY)*/ץB^8R7,V{'zZ˕YRT(>h lߙMowoE1‰ˉB*Bnrڵ*0%G]85+_ha T)HxX?^#pVc}7 Z'hhE;"/IS]0ơYAi61nr%k!ne<=RfO h`F;식5T>vHs|ZROO'|`Qބ5aU =tP>]RPM bq !F:EM&oښBMnbg ]g)DTla0c )#y{Z7,1̪5=BaԒ _ REMC\OW5g>"-u8>X$`$BǴpLfe6>IRx~*d!D".h^>|g3EP\u>hMϏzw@:QQ tg kO-dS'σ?4;)WNTs R:`ǖXcñ\a'Ca\_jmm  Ծ'_/.a9J=~8;ekɠ*1 to#{X_Skibm<& =1ݶ&ze:b.ϼNydYz ;˲},|ej*x'#;\f(+-.\SDWo3ȳD5 ^1˷z.ŭ/.7^fSSR8GJyBlSv:̉| 1/h&]{#-Æ'6„ˌ'Aph }q| aRݦ65M>Sfoe2ZN.Ž108 $Wn"$0LDnд)KT 0#zZ,6$eEJ5CU`^%R"] yB ?@m9Ž|ϽQdDrI7vO7{1oեnofzMpWdj5#DgVs[<8q0r"ξ"P[P 3S(WNOnnLA8&)ӄ ^#9ӞgA zj)qHn l*3rW-mD ^:G0l= =,GEtN5R{p1qmr.Tz|XӝCɐPUoI |bO,&a X&0.O}I9<׈~kiriNѨ[|uj%ΛeC^3L1 Kq1?*Or[ss<RA6G݆Yd<5 Y1ArѰkV^@ğ& d*QQ\iGNz D Dq?k^d>\aez! 4kfb4ʋ!V WψdJ=> u%T6݂kC 9 t g6]mj'pzy0Ow^ +-[[]ƻGfow3B6aKINAՙbwS',q沇|;ޗv&q?}jQ+:{7D &+?dr=V^mO]EAc"IR~߰ۤxlz<=[>*T"-F97`K[!P:NxY(&d剅n/B4<; ?(6n18J  _v6i KY ܯۤQkxB[>; þX8̓ yx2/񫟿ȵ+r/rO2|glÝNٲapc7[SlLMW씼7i:@4N/A.M`Հ+L|~Ea~v );KިJ$5y `z ?A@98殏0v>U=Tl_k$ճH)+j93,d/OieZv^.$yh KߪEJ?CsVGɰГ[̝6Ah4JvS^ɛʄ_R!]0[vC׊ 5yQ󠤉ph(,^P%L)mZ D'圮 b@I:)įʑe)! `Y\&}8e2!ir3T"9Rs&rD)\J)q6m'/ S#XdYFZT.k 4#Z}d䫶)@&7%A;J;1wWlCY"EØ_n(3?ú2r^|+FAfxR?열{<|\V ۅE>H [ME;6I Jrgm犯}}heeG"x,ێ5ʘ+o HbW6cU!"nKI.;sR&"F/XrC'ƶl-e~:%6qT].  ,׀R\\'߇ ZbƲRy|71۰ ɽ"{$KJ~QLoRYLITpBXiO' NM$' doxi+K@ǧfG2A i j b }i&E}P`bZvU0VY$F3<%Z|㣘nS lKLJ l:8YJl3VWzud` Quu)t@ӷ6ߤ2~`1RB-wձJE^v}̅N@  9&vnD?t-#zH/!w{[兯7Zl!2oL ̐"_\  ] Ȯ߁7p/1uܻ/oZewVdR}1+υ–(GT"u΀ F0/?%e$wγgfC5[OǴള+"NByn!llfPوfX)?/'\'8Psj@u7Zq>Oږ܌h yĈTJ[lЀDLc$=;@V=conFEޢ >C8QI*"IU4KӖGٹ u vg'$(ჴ:ψ@C(:Ff#FcK& `?؍9.wc-ǸD0s":@ШL&mdf6v,b3 NhU)7W(sº(3Ĵ8:NQe0:"v=D 7y9$p/- Rnؼ}8yhbB cgdQmykM#)2ӵ^r楏KOZν:|pS%$Uh(l"zP 3$Wx@j)z%FS{{q}'ggÉp)介 bHg u۷.t;b^1hja5%}C+d"͐/ h' QĸE*0zt-{ˣ-S+&v 1KD3p9bf)+Qي׆)6GxJL'^:ĺ2rOw WQFpQ,9 fyy>63 ^0pb/.4n͈F^5F0O2g ZDĭ+άob5[銥J֏bT2oML; !ʨfDK(|mi(Ă{$4xQϬ|ʾaR,θ^Mɒ)rD%_Ad^xM :cHKɍe8-0Y)b0G-#oVhT ׋KDSs,Jȿc|=;k]H#R#H3/fi"U"SZթeDzřO8M@75Pc7&Msy{ӽf^w.#شoZ1^B݉r eԞ#:seHՇM {:1>;9Gi]~U8NϬ·ӶoKYf=*s/7X۠020UxU Q00(Q7Ӻk_F@0*ZaF]ʌ51\]F*!K$z/2 ?)ޭHnJcnKim50] ;˒ 1\VodedZJ6c*W dٷ0h|{}s\L}=υ,{X@%)p("W.f{lLa"͵W!ӭr%׮U*M^Tr.wpc弊A芞ԛF`"ŞάH%*;j0/ptyLj2JiTm o1gΖҝ'POn z)%}AObxZRnyCYKV԰򑿝4˵2W¿Jo]ryo ]P,IJ@@Q{>]\=ֳFx6&h2{G0$2c%ۃg $No8dY鴏g/9Y lнۄ5 /|qU V`]P8dx9׌VVDڷJG:~NL+I KB n$e(c<0.!z6z7hP-bgPu/;59&HDOV?$FN*UM=)2!Q[/~3g_hQue`բDD$"x:*^3lGحm䜲iLɬN"ڲױ0{b m0L4>[v3캖Zʴhw}n "E3xc!,bjWgKx&샴 ؀Wz+(\vW*T/EX^p5!e!bұgk+h0ECv|m: AW `+Eցp b[H?n #Emb4ͨQ˿@3WBϱs1fVGGr10ot`~ɡ'7kHܺ`)[0xxӥ ۚޘRt (z jNò0g\m G&K:x\Y ]1i0k)Z;= RBK%7f\e\r XXף[Lč뇆2 Փq/{Ə>|IV b2;ESXp4}6'"f5sk a6Z 2u"펡m/=܄7̈́Ӹt? BG8pA (=l}էYт/c X :˒̽p6۝Cw#^Ay H T6ǀ/Ѹ !o ›#q~GBq򳛋ZNmrT}A&\k4 f֬?R M65apO,N{)W2mU&?΢z]>lҾ >mZhTw Y4 1t<@iMcWgR$Bvpd 7/́2&ΰjg.Ds"̎qeL1adИj:"J$T`LI#mVM0bh}HPQ}?Zk{}8ټX( MU{=;}QK*>eN/6] 6n>SI㟌?6I" ./杉_`״2$[ -s(.{JK!՗{ANoYRO6.mc5ś M)*C;A?)ZcHy t}Q~;qg1=rs˾L$ B{pL 5AmZޡ"6gS&yU"caBSx~aI1\5 EdÓ5mŨvk(h[1>] QV:J:y_j8ʩ_И<ٟ${NC1u$][9N~,u} Nw~GTs +ş`x'~xg@/QUBL͡x.(|V(cH4I qxמ3oc&"Xʾض8.̵$+^"YЂ]3L¿)U&}s{0=S0$32)}q({-k>oM/`9 &lIMI@i;4| Pв@C˖Ɲx_Y0[ɺRЯER 1ƭ=*.`UjV$Hqf[Q'ɶs%Rж58t@X̎.~Ҍ7Upy?#YpjIo*6I7\FY q=:pv^Te:j9֮qVcU@8"}^yxC*$uQɕjC끺iMJՉG4I\*mu<*y{u) (3,7F`JgUNY $yϿπ|eo.+ I&f=6xY;a:2ag17h|}_!Nw^!M RK2 DT*מB*-9 zq0ܟW_z7uz5>0n!7tFG@jCIn/\ &yE3 TAM sfo$(U:Ÿ?3U}z"VSM0f>zdd!Y:܀4*(ވD~w |?2<6 f_f*7 ,dۄFقfk-̯H)=Ka,yw33Q2.HEa%&9$Vg(>ppMElޤ™i4OE>"5EdڧD.sz[4`]>D-#Vm;g"0 I9|9gvDqOe*gA sr|bk|%H46M;$˄X  7^i叅 #ϖxFIu Wܐa챉 B1'8gPɘ)ٷeH.)|NJ7ZD1_xO:o#ԶwA'l)O tF 4{'5lhGmt"*>H%P^ ( s'cӲ^,x_ M"<% Ǡø8ti\(,`¯F~: 42B6#&C }uPu SO lv{l+so0D|fb:o_|g\7$>c(ujq;z(3u;&9:mC,Y6 v"*ҏc$B~W`7 b0ӛ&諓Hggg+}5`ݯƎyJ?Q;{r ԍWkMSh9n0d6$QEYsT*wZ頬"Xxj+]X[1#J|˥%Qf `ig5=>{R;v"*!ԀnNHA,qȉ__X99*viq܌BzsmֿC<W%04uJ;bG~(vWo$_wV 6_9c 4oFA `NaKxwVuM4-:p`Ek ^Lr@H v5.v5eL)mf/3W6'")/0yW>HÀ5E _]NQ7r-дh 1Yɰ˳Fi|T;ˮW_daMȾ'8tS7N_ GQ\|wRwrf }e8g_G$/N.7lVۥ!f> D5 C lQÕ5}(}V/DDTU 5SUMPth.݁~/U{%!(k??(977Ĩ'%x 0kYbm?9j,ʖXky۶wIx܂_Z~T0uHi~b/8X ZPG*SK` HW:Do^g>sو šj fſ[ 5eSڪiy`8MЌ%M91<5U*%CiލWq;"= 朞1V#} VNJ n$79jR#Hq]Vq%tS\@K&S&qUCn| yǯMm]</]iu!ܺB}if4ii'c!>̀"S&ĔԕLe]~A~z24cjGvQօ*)>ݾدh q"mwjP9w'FJ3e~׆DA^e rdPx7-o؀96Iֺ_4א.qv_H1JQN$OYsXf3;Y;:+D>ĎLp$P{I{Tz%dQٽGSd{^f^$L01z6Ie61Al`'6/Ү]$)a1ͤX4j V $p}ŕzhiXlk%rXkϥjt=*a!8[Yw'Б[%ؖHf<%=X-uBCFm^:fŦB$尥x7(:hU^Fc(Z[{ac\9b*$VDmтbU7 l1F?k"jJomSgJKoThҢhiZl䓻9F(`%իU֎SjtB#c>iAAz5O:*O ѧ3SB?f#U)r]?0OxWK˜Cw*qus1VPQ){9n탷ttUr yNZ96@@X96CS!Y;̕"R}oJgK|7 nn򉧙dFZ0+kfV^rM$L߃=(e2vӫE2ӣ[ jl?5@Hd+Cd=Ðu\s}f4KAPͣևftZs~('I4 lDw?xeXRS-Ώczo'B/LN2{A)g+4^%LLmpoX ~]c HWx7#|\VIcbeMn;d=TAǁۛDp!j+rMpM :[[ F\uB@l]:DN3ހkcYF14g9@H+hMj\7qOA3uQ5CWM+:`BT%M1؎tمRbӥcp?,I?;.2|f#Ugܽy0HMW] m >3@zprzKP);?(EsrgBlD@5h\KQx]YG}mRMkttTu>h<'YmFbyFj%}@rcڡ\"iM3@ ,ħ xBƦuX_ DRB:y,t3gyjpF=2[9pZ1 yuVZ/UX! p*n"dYm K(.8%ux>q  J` p!*3G2MR,|MiJ)П``hZeZ-oyX{6YVVO'`U1&Xz?-&Ìc͘ 1ǫR^ZC;/ݯ s @8RLD|ŖCgӨ> uXȣ_R}[갻[@L-i[V^m,`?Ok#fAMB o}$EPₔC ]L.jK @?Aâ肎:-ZC3b2 HNYrvܯ `{fEE%=C($VaSKUn-TIƳ @a) $ zdw7k7f׎VDPv"aمɰXpƶԽ>l-N,_&ץ3׻P ŴӘS)c=-6[ fl3,^Q!6RmfuɬJRHK0l}V6][iLq%^c9}knD6w˱LxHxTi1ȐS $* L'K?T؊ήx 8*ߙw5z(0*MNyc'xJQxv%>|M!x  ynْaב|_]̖.CB2ơ_Iǒq ~A \_AHͨ(soEN ~qkn2u,)}ֆz; ~+m +Χ_ =3KaOy+@ҝ:yֱOD鵅XwﱛyۢrjNfBG0lc~u[х.pJL (YxNg|cn?ثkmDDETXv7zkKr=<ߛ9`S&g<M967 U~zMwuv(k=i8`Q(ةYVĉlCjUfV;э ̖JoK*ʛoO7 Ot%27:;x+[$vjAW݀يRQq5T mB\;ߏ¥iPˉ|gK^pwTRcIsZGfyz@ 8 6-Eqv?cӗ{ J^k_#=a^YU Vè9B10DȇFP[PDoM;̪:,{K!oA씍wGBlp9 WsYw"|nX,z<>:4B,,פenj OJ7!gc։M-qA!;Z"])hy$ PjЭ4YC+25_%/w)E6F8װAvFp#= &o } (}2coPOPo ރp-ԑg W\ŽT00jGo7xR^q:^G"EK,E?N'v&DCe.Qe"(0=}(xZBeD^oVu>A $Op-^q+mMDp?q9BaOOuݹ%bqx *nMw&B)YגX2JM|bkZ2`LC i0. י  LR1TAk(^ǐ^09,)`Iin4}2y+(!aő_]~yPb^d^1x0_+Eʘ:3t'&k+XZ/{rt!~|cEa:hw{uSA(keӣBRb+XlosI<{0G d`o9hs4l4NU(gY!KnOVrKH,ȥëcRc]pFXNzGdSGaӡ.@WCtKTdI]}aBe (q#C-VV-Oj'/H]tjf]njlm ( 3ThsvF+kИX @x 3ܝ0XTG`3fg*Ggd։iqا*"Z43WQhy)!}~`2lF6OV" Djlb±V"8p厜ZҘ!b[%=j֗Gw@v N+d@1{{`Y|u TExn\38'r4ӽ|'l/ U >#0$[K&l KuzZo(O?QltriD\3J܊CIdȻfp!+W/VJk%@DZs> OӠQ_v Us򃄝P+M۪r\y9kD0803.}JYKAd&A{XHƪX&ּ?<~)2`ȾdOfT<1=|XDΦ(4ǎ##C<V}ߛS@ylqw8PBۮp} .j'VWg-)&t_ er)5m<*6]-,*w- f?Iqmŝa.S8EDXZeqI+;@2(V8#|h'Ȓr-' )R(Eiéjn+l5?t-V%ښ`N8p7]ګ _$F0E̗X8RS?c7O_qY_"O+\ѪEi|y^OO\H61WD%",¯ :X|qWNk8k;/&j5f](Y {b=(1ۭ b \kD_5潾5Ʒ*׼z|'>s RKd|~{>N`Qh@xEpbA7+Fiq#B'Os;J;c, Jk:ǖ5B*~i"HtFB$xZ#<&%MF*)3ȪwZ-#`3yJ*GI}ڒSA~ο"mERgwY-vx9Zo{QQE܌&hzQ_' 2^CχyKdBGƻ0x?Dnhњ&ǂ Z_^3ǴRu.mFq`_1Bj߫H8=1eB'עɎc)ˊC[jѳE>%|n${+>?CB(For-3p ਭTM od GZ "a$Vq}®6"_G|t3#߽nw\L HDb2|5r^t:J#MKĬ՘]zLTT%W/G)*]FOzG[")ǃw.=2 XV!yoQ$?-Ջy%n㿣))TS,ʓC~W^JH.pڐ2ܰ7}Xd6 W `vd@lWENg1ܯTf~Fmwo[um߾j px?-''Lure%b U#sQjRmsuoeK,mKEMrMH4RkdWj:tS B6-r(Pp%#9u#2Nl:}Hp$Gq(ad+)1?#["o e,zQ~kٌCFy xCEPt Yz(ɟgsFmBA_# q(O>sjIg跼-n93l!z9)w¹KiCarD΂5( CRX豹-DXLyoTSՑS*K gYCm{7 ؜-зاsE&G= еBĢ_Dhfq?moʚaې=r5ޠ V6fTVC3`$p{ܟaκ/voVq=vq틈ac?gL,7ԙ{׊"kӵp > )gaA<a3FNaRRr~JA?;Zj̏+ZO" _{ݗbN?WiX˞{ހZiL[M~T"F4v&qf+w*9.nm/aVoZ]hJ^_:"@壛8a+L LmD9"UV R8-ܴus(m^*I<+3=.j=0CǣB̞ƣ0SV3ӻ_kbYؠI<īisv|O\1e5i1Wx%%Oe(Mq` ,zqc4HyLeeeLޭ˷ `c‘Qךu{:J4p%E!, t24T mv8ʞDmڡ/Қ]wj+mA$`&+UvF<`Z *O:QM1,_o< &B݇낇%-YC^ hBM}ᖨc8V}eˠwe|u~B~"vS<1w(bEʃ&aFKJ we/0~Ov !} `t0.ulǵxZYvQ:"yLJgr]2|j%[Tuˆ!AZ`wmYQWʭ!hsH-Ѱ_pi8$J ,E']IY\o$b9}r3PPE oM*ԎUQ>a#xOYQZ󗲐Дxhk\u?7gj~+1 ,lᏝNщ9m9s> 9S<8fįMG3yt91yDELJIԾ2btjcY/ð7't_\} oȋH7jGBڻa #-%  NM&l'pzLWe{KܬaVKJE!Ds"&9.|)DE:WY묻JzCY3@MܺrJ=폰ϒ6o@uL -\<_G .RE}Xs &%U"f(N*ļؒl<,>5=!jƟm7A9ۢ ZٓVC/HM0ERA@8w=Xkv':c_f+vmM> iL%^_Bvk uBgn@;E .(yrPsyL]1(woxHk9:hq3)pJT-2\uߠ^<y߾jv1֪jm݉ p"h%JR80 %峿ㄚ}"U83ʈύ4bmG.qHC|~&r _o xR;q OeNG08 0MdW篨 %+l?$@TIV$J%ԓhfzB]_g ' m:/竩y*L>AQ(b;~w27Rn;ms# >hh3E(2.TOѷ#>sBhpwZTC:q׬iUqc5Cۆ}k4&`d̎r44-`3tY^g ٸ"? |K %Phч*hdn#ƨAވ gl;|-i*֛W r&+1;t{۴>3{5ZӠNn1M; ;]7,'"b|kX4_rGݝ &H-VQs@p" YF +Yjѭ=}ӗ~4>jQWCݒ nsT#ջjo"m_3+)Iu&l 6Ka3V06W0\ H_{rn/M]%*T"\S Et'aėnZS'Ij +Z1;{W:EQ*#߀׵w}O=h`/rJ :]`dήJWqGz{u͉g<68^ō+M3yygrۺ[)?*\+ɵβ` &ID@s5D6NA|vJֆL^@›:7(Zq@*5GlNم  ;N=d~|CԱ"S DTyD< BܡYoX$R 0H䀘 mP2@hLrLJ=^Iy@К)NFhݵu-7/ٔ<\wrZÚy[loGҐk'BCHn$"-`8f_{Igx ~1ÂILGÓDa4_iEϮ k3W>\V~V2R~?,bUbt YOH[V192Q4?e)t&Q u.ޤB{ǶCaN_պ;+_]Hh\ẘϯF!< ]z }>)>:tb`2A`(1PKO?Rxm JlRRXϲlXcMrsi W>E*>47V/qHh}EDQ#P(%3ʯ0}Ckf*_d͌T**I*"@\0s 3CG@#LOf0,c+ȳԲ 9V5@y/ *meWP 0B'E| {gf/nޔ[iLyAH,(`-`A[F&kw/0x񹚶 vB[hJ1TYY~M@ǡ , n)͜ˊh^5>A˽i(˖{V_Is !%cb2Ч<j3S+B.n)p33Rv#NW~S*Ejr+t,Cl(pB!%R͹DF^sXyq%a>HK&q3/1jz[bF1k bbIɕ8y1(o8M2r\rO.Іl-/Jhb!Rc< xLҒ ._Ey|B{lP3IzNWo?$ D OI?4Ɔ 5  ʹvyWZr(Qc{{A+ٔ;{‡iYvDtj  zxh$$cl,ؔɡl 9T;xb[3E "g퓨l뺅Z/ MPppWXTG}5|4݊-X :ok @o}Ι=bZ( |.kz"ֿ)YlXEs[Q1Ѿ5GBwI7&-]I1mn!U8m`F,Hvt3>"hOJArOBۿE]5i>62W'rp.к}9|98k,BJZh+3_PC_VܵS2"qmJU/4ndd&Jt4 F\I`ǽ ~e\(s _IP%Z߻n3i"!_OT":Ҕkvj[\ ٣"A.w,XGԚf썍0 ɶj|e۞Sudg@ !: u#S~mpcB mSr-%_fXp%gRue{O Z895@3$){i)ׂ/{v?%8(*Ψ/8| .$,#KɥX9q_#DpyV=18z6a C@`ˈ`AJeu3 dY1ӫ!>+ ~ĺ:R~VZ9[P݃t DT %5YnyHN`#q#&I$yj^J<{-W @@]|8.k`T ͣR5簜̝.x%$SKJXiF2kɏ9[D}wą6xw&hݺR^=hmS'ZԹ,-`muY_1kP٠cApS DSg|cšBKA!]Ј_쳀 =8N(sQE.ڐ׺qztƔ?}\S짂`NdU2rKO}Wu_D-ԶhJGrSb=9 {g (.S8߃'@]Ga=OVj1i2[quHE8]{;T)TsȓUO:RkRNW&^ sa&B-J4&ؔK|T|;@q+icYSIA-LC_Y(UGOMUabK1Ն*^UZ!gdW<#h-vVFͽ8%ёEN1bz͛ l[(WsmF+B\psW{YV+N8GRqU݈z F u d$3F1;NL[K"}xf+5&\c1˯ %SVB!&0ϺD٦jk?]XUNhhx_$tItd4 3qʑ,"V$-807em1i$Gv:l Iqg wԥ)9z: vj>;A*7M;m()74þ{G?`Y6GQj.g he"Y?.0|,A9_zs69a5yb6(M]U C5EHpJL!㊇~ۛLG- @Md/Iu,*Gzv2PB& q2f*Rj]d?C:^CE, (n$3 XX213[W$TȨoynԕ=;!w^PmN ~Qm5#l+2Fo[ 9vTo߼_•2^y qO(+wQolq! ) q"_#,>Iqe羳V|@ruܧ!33FuK1IQI \>]/ uPTQJF8Wx|q1.bVӃ ؙsڑV m xRӂq" ȃ*M p!_;Vj Re_$5{20]|McAY1 QONW k{ߚr:sя־J9q/o8RAV' hxc {ߚWe}{L֞2"|8L$R?|F!ԷBluF^u% _\^ʥa=>Lwnfcy3a˶xrC0yTMYj}?"!;u=ߏN^5HY(~ZZ?ǁ^vu̻zx$,\]T4` I]gH6u0Mީ}As5L"&0TLD]M^S@"M;@o/˷oJUyjòZ+l'ο@8Jx\zU1Jp ![瑥ADj?s$GXf" ]-ݧ%itX"_X(y%@Pv.J Gts ]=8v֚{RЀߑc^{cLpFJOU u-ji˴j( [[he_>Pdg%,_dj%km7̍B꟤`Y(gdHVD.)2QkҸ?8h蚬|g^@f%~KhI8N k"A :^/~Qؾ^50"ge]kBD@@9Е6L$I+ <B6Ө=[K֢^/C]%UrGv{BuZ=ZB*L TټC0 .xk(Ǎ M'1)&0X[=`s *?R`H:K{J?nָ ȏg[gp,/'>swĬg,sϯbi<72*t*QvdO]OY80D"ip? i1ɕ>c2 1Գ"HRޗ%cErb3ZG"ꯄ~dgɗ&Bcҷ6Q&K&jc1tj2))Hl Z)5ܕ'c3/ +B66.Q6S!9Jh\?'G@%JD +3I pyxu` 2]H*2o)q{O 6+p&t܎l{+[S6Jh",K#o PmkYնL}QpnJ?nhWտk?ZF/a++3L- QWyO48d7( ++HPs{,ΐwr}0ۗdWX8i40OљW+lS!( 81PzL=ML _@r5'<{a08D#ׁ|bt(׋fZTuTއYSEĞڤŚI! ҡLYe`腢{ͿT D]ճv0O9lP{yO~ Io\ 6JP*݌]43FDHG‡*kdIMtOXv%\x:RKyDX,AC*Fǹ({H  rqaSLRfS8dKa?g`Y0Phޱ4x~{5C3ݶ)>yǠg$IPgShRL\jbY:R镯zruI/RΑLt"Ur, "v2ן`wLׂ%p%ѭ+hhmVʘF>uFah_B3ë M ppQ}&koήxmҧM&U6-}̪пlpwodEnWQZ?$*bػUQV"@0DwJh=ڌ=!lBTxt1.me>6/,|F%u4$W-&eФ%a7ݟ\ؾf=tiҎ*ΥjSmk!}_R+&x<5 UB7Z W`Ѯ*\E*r)UPȧ̐w~2^m)`]Fx@{ӌ2F"/R5'~x DҡCH5t E7ݎ2%> jSZ)qџڏ 3} B6lzVշ4ˁn19KG5#$r/8[#0r~P߇zȜ\B1`JQDWj[=.ԿA;ըD8%C8g .$7`_e(YYWA)DS" "v4CRE ғW-OdIk6;$z3Wv5Kt+Ǔ$(IF9Mogw(Khn ;^-oCUŋ.μ4(z{rSF9Sk.;ρ+ 0pHah-K:a'/4WsofӇ]y^ܐ3 L&-_߲,݌  |%(6V{z>Z'eBpqIŤ,t]h 3:眩{ځ< 3v=1N41y?dz\ cֳd#_eZ8)ɤZ!+Q\8??ryHZѪ߸+-=ۿ|Rޏ32$ \-Y8ۼ MTU!hcR9`6-xyS"SIzWK>DDv}*_P|@ L2UY tW~GVo(ɠ$(NIp$Z`(A:m]\SS̑v] = ۉM;2lǡpioR]@m7֛׉KalDT Vov[oטTv:83 ۧXZ%&״;nv3Gv8/6&ea%3`N^7prDV{ӻ-09 ԝ:,i@/I lfR'-?﮳z)E n]x 1=WsŋG7f fx194lnE =[R e)M1>Ij;952q2%c,p#>g_Mf^45a:Y ^#?@}ẎZ:Vƅ,%C|h};((!";u@!I;/6@z(P\w@ Zf {^h=a'Nߊz$SGUو>MR3]*I2W%Q\7LOe6hk/OS{v53w6/*kpD'U^cljB[*eaがuOͱ+DwKB4.!i!3{Q@o|t%k)sj3wSik?lN&QpK!>pTOӭPrMrC{ʺq/%dR ȖS-|5lLŝٹ]Ԧ2aℾ*@9|0*fh?#a+;MCZn/RIVNjdb1rddQ(H}$U+Cpt ڌ "!aY+eokl 0E뛸7}z`IS05$4 VAڔD)AKI8iӞjϣZgؾK P(2{jf2-3ᕫ$a|4gXkK1E 1RI?`ТbVc3wl>dFl+K?!K0Dž08.O :RZ.4aS2MJB}X#whlU">VC InTj.ና lh+ 7Ht;I<ǒ[Gȷ,pu~&<:;4KVs{(}^'\e^1~Y#UrKT!}wVkiP#?v&}AË{ SFŘC׻sR,]t8]KS e$?+fB$>1.YGE4;}-؊"Iwdd bQby7 /xdDmZǴ]鎙=ڎ甓BbRyD@$7²_O.W r WNo: #Q Ŝ]{J/UxLF=k2v7S$xHl X?dj-*2ڮۊt-;m>J"ǿZ!3"D=\B+/]Hek<9=HS$$Dnk/{tRaJ~5q~8I/Y}"{ n/2[ݮoDWP .OGynJ'>iP8|fxE{S/oU֍鞩qߋ]WY+nᲩcr`ǡzxphyBdJ)㥐Lp0zZBJ _ z=E1OK+KUkp&)ySzZG7s;ݜ(D@dEd^:|u2k!g)iUGMKp*~6h F6D«BL $S*kr%x!g3nPk'՜Z)[evS>iZꕡMx__fSq 1Uw wt*<@W޽ZѲKӔJ9kyttT+_vtkSp*s\`{\cP%f#Y$\@*GR™q󚑘 $ Z7z0U&I3r P$ 便}\PTs,QaYBPI[ΌY.h5U5M}lt zڸNT({je;6!rMF꘩ŗFu'x7cN|.:J>ƚ?P.آN)0[[nPbJEބpV񄪴K^3Tݪ1@{U9xT|2ADV=C*% t |QDT+,F7HasԸM`(8J WF GJgJg"f˫XsW [׭s: 3㤌n 2Xm|!Đ*GΗhG%opvS }[|G@(;ih뾝֧S0"zаzH(h@O;ɉn*B8a$Ṕss `ELD~"KQx-mUҁuaBԋ,}_Z`[!9$v~٫''.y7g툸k[]f~d\ yd EfJÅO0G+q(-K\ZÀqy KձjF Rb͍{eN]mGA+v}uش"õLf"<Ǘ+IOb 81ɞ ^ӭ݆bW +2:^cō%¿ K p`=)ƜQir svu/Fj8!ܠiΊ$&gCmIrSeB&%ׄ) %s½ ;J,0NTNsɥ"ss ʝj#Zt P% k).gq];8,=qc 2%>t>+RRCeޚ2hB1bd%%L恦')_2= w Y޿J'Ǐui XsAfKؿ~cP0 46ߨRÞó_T [wTl,̆ h `I‰!wrB':Gz6c!F*^^MC &R)G>Z#00ߚ9gQP8\KҤ>v&7- hQrEႝ$r0fC7FۘAp)l |jF>b 4'eU@SVl,+{m*<{Y N@%! u9--#B|7n{ƈ Ϫ[< Z*m'˶5^%p >ݰO.իtL_blhztLQ2l5:tҁܜ,ܕ 97wmrV_Z7,ۮ}M'}f&5[כDTfQGa"sJ0aFu-P~`= s0& o:o^ [w[2C͆D6o> dϔ.PPi-A %OvJ{|i` y 1R)T$?ф9ʖw<@i6_bMO,&YNw|nze?h)+&N~[T=:l?#~a~Z@1aY]u[fcҝ'kCfQf#f6^+PXmZtVil /NfƱ PdHB].LA&3mFu4Gq,&zcLZ(AQqJ23.~KVSt}s ]3G}a 2­^+c9‡#vG`&+iʻX3ͫ%iM30(}y=H+J1'8bܑ3~ν(#\Y,#zFD I CFMS_$pr6'ʩh@ *&:lͮynpO?殚 7(01jRc|]dG6bŚȓ]&M ])0*syƤP[6݅mk-cZqc$׎7 j0uB%kb?ٰ"ج{RמIOAlMDl>_OriƔq,|jK܍7KNz^>]v*#m ;AvLl PW=3yz &>Ϧ5{"l$,x?o`S06̃ЌSv{W;L;Lcs@FM=OV)D4f=*4[WoV3w] [>>sjprr0Ô2`'dW _/~"?2Q)d29<1QlWO[&\zv)0\2d r8 E vj6*ٵl̃mN&e(]jb` z;C'#E7,I$yXxWl{7<,vT2[yehLZ|{_ HYL =Ch8$T6{ٻ/n1t/x1-HyqB>T;rMy=d\km6yC\XJryO Ѥ̣ftҲ"՟U^9`&݇G.׉,${0". Uy?@jhoBׅ[M]{ǘ?rhI_,ɼN 㓲.}PD|BG`ie001 hS˜4@܀z8'R: "Aؙ\4ZQlDo}܄G8Tq[{KX\dSnlǁ' 8Y;%s:K[RD$7&iKA(ֿ ->n6 ͘oՆ=F^y=Q&uq!?q^7+!l7Frl&sI lMv}f&lTP?Nۇ,Eצ [GFt*#Uޭp$B^;Od0Q 2_Xގ&F8_yKy!?ΏTK@w˟VWJu?=^)D(c_Jn3} w j 2Eսer{*j$;k;rwȷ!/\P?[H+&ŗAbjppjNa^{I|ĹXg2Ic|G)A=r$qדQ!1|Ӂ$(ų Ȇi^Kī|ck䏚@ yE`NODSvڅVa%=fUH:y$ 4J(K~L@=O-lFuB2Ȧ5dA7fII5AZ|2"0Tif|Q3n]2kƔFB[=~$R؁2khAtuG`?]ް6NUOZuD>Wm" fxDգ|fb{+.׀k9~}EŴx6,ƬQ$"Acita W EVpix@MpOOA&/Ϙ$YZ@%+G')1Ѵ$WGg_/-H?S"*:m͕1rW-62.bA|2ܷF,53)J_ͮuOm^=UV{c!D"1W0o?-oHȠR0ǂmx:j] ZWf)i u@[=ׅ7А/ѽU\K'7р`&\ Z7}1q٭"iN~٧puPkJ5&aݍ 47PNd \_e݀җ&TP桷C SY;JW$A-e5‚rkጕ|to?!HFcypxb!lim6V xr_PdcmĊ?l60fZp)۬3cϕè\6=&H/0eo29A]pQٙ4@\${"Є Ato@&̑A]BrMq~7BTiPr|kBgaCsHBnzM*J 5Ex:֛MsqEoL#wSID]Kbdf,y#GOIghO`%fw # rQKE'UDXňzOTb!ETMWëMo&q3 ׁb5b&&HFkv* 3;(虑U1h큖AЗ_`QZԑEֱ1vKU 3+ .^}AksCȈ>+=yދUI/ZX@4MTT0:u& !=^oWfi@IӃ|6TAjV9ݚ+ua5@F^`H֡Aq>R0{3TbD0iЫ7т,:gwUKi}Ƃ?_fXZ$UUkѰFݥ-FQWWzPڎPb ;:FΕRL(+NN)[s.iE@l*czDj +Qzfj}|Ԁ8-6>x1$1VbiFz} `W-`+~_5$>ÜxivS:dO/\1ʹCsCT۵}qI4vRxæF)iL=,7^KMIބgA#4D'0fp} CzX$,Ql 9{gOhxegu0!CpTȐ9YHO tn{H.Y0jcj8Ez)'i[]7HWS>>g$&tvKK/" ><(޳f\ԃ\ D1 nx8JD4-wwf]tge~lua}@ ~z3b@&Z욫0BfLv-;`ƻT$v>zڡMrLH T:f`ZF3[$ ԧ7D{F GH㏴w LSP?9Z06TSf ]0?` ;Ylt+!O!GÎGb7a.g6aX36SK, g={sph~L+Cw 8\7ٟfʰєk'ck"c%m)2tA{_'.lНZgOTFר|*׻@6{_v uȹ}U87;\$PSn a59<fu=U_^~;.Ɵ?X}H1V3י 7}N){HaEZ:h \ȏM5L U d&cKy0Ma<,v| &wR1|ms` uvⱹzbbB`ͶMg#r˷t=y7v>]Nشؿ{+KDdw.MpbDg+Z+|I/WW^;YՑW =~9Sh6v{;EmJhtקfw h*! 3;j~+#Է3,ڧL8%A&q8US\wbᓭyl'<@3G:ϼpgp1ET1̘$87 G oB0Kgzr)Uv7SwWAF8β AfF#L`rp'U\L=~֞k$*렏ϒ+l8%#߮tHH1l$X-MwЌD5D42Mw 23 RD+/b 9K wHLںU*ՄG.,> 7z.Ie &(;ˑDI!ta -5|;-Ks[*3gU|Kδ>) "s~r>2>C҇o+1yBp 5 Dd%~:@E/R5+^^7N_(c&őKv=M_?|͂սވ01H}M*6iS<$s _2`aR%Ԅ,4B}Gu~M@A.EQؤj!ǰT<m6M3?WϱEқ*ʫSݲۺXɭ<FR˫\AWlHBBqaBq|f*E<ސǤ3g̹ Tv>7/^!siV~`s<ƛg+THS9[-79 lT \O{k8 p/Iy;JTے:F[-H!~U-k {pQ:soVcQlP0o% C'z@Uôp4Odyj?1I报Rj+b"4]=❨*CFW%)dIiJel#}Jwؕg%ʽ GyM+]*!q}R ) ̡]X" [I§Xi(34ZTBzZBѬ~hqi}6~CA`$ecD6֗ v:ztt<|{pAx[Y;\h9P](i#)`˽u%:6Kr,p}ڼp?5RAB'w< >4NuӪaoy|1V4)!%u(cSAQkooQwvn !C9? (Oe_x,VJ\oXowZAtP&5o.="GKlƧH tiҙ ¤4D #);Qmϔ]c̀9^UAf& W0UڜA&YuGQU@H d觇eNvəf1iN`2 , ERjT " H׈,Q9#ᾣ76nUTV8}e@}?g(V+hQuQgh?^o, 2VH*1o9,B#MK=AASA $"5R DkͻLQ[DL~ߦQd̕ cH+8U 2:#U?Kqp8vD 5݆%QuŻi\JE:l8Z4&~hKX'be}>g`wH1G4Cxؙ521C!}`zᥰ0'rMaID2~؃w"Wa 19׽cD.*LXM1ux<Ќ~dBe5wmM!F0q@M5 KB1 dwNa9Âx?Wb\$zaKF+Vrr1`WŜ,VԡF`4Ʀ+L8NNgs_b焽/ͼATp5cM=M&(1f|5,$@  >Cq/+X\C S/U~Re%0.:.Tyi[P<l^o);×GR\ (]#yfWYR ]ƀ\Tj*Cڈ{&?Ke1mXWR1 PnAjoaƸ*Ɏp=DQ-}T}N$,-ζ_/1\PĚ^Ə9EM2Z/"J*@z~.[8ϦdhL2Q6F bC_-JG-_<k"=)vCkImJ^AkfnKL16Kd:[ H|S |`cd2$ewY@!+P)$5^t+h9dRux((&LWg^k ,'g {CjZK /$E?fa&{J^4D0 ն`m*~xGCcAa Z5 Ʊͱrpc;~bF˜[=p]ݙ,;s Yzn\ Ax7n:ҸqHUΖ'|Q_2Qf[j+|sdQ(}%*D`1 9/!/mX'!KK `FՐ,pV8|ɬޤN!ކ&@],yV򇧣,Pa!@,5A^Ę#!)ͫR66x$B 8xfTPԋAep޵&bh3|5Rц<ąmV O X )xij)ݿA2}\?lڛ/*}Ƿ1SAu@yu&˼NZ#RP1(qY9b8Co !4IX#?/W2]{s/Mk;\\8ytҴLt c|R0 qreRu.R8OmMك*Hv~9ldֻ95]X/%#c!ْDwJ|oXj!PԼ87ܵ;)=PQ,luXE  M|Zlb38aͳ r8-ѩӺ8Yp 'fN٭BC!mOFgneZm#]8vwR)eE1.[`/ċ:&d< W+Za+!uM׌~U:YDf1CHZuUs&)v،~q9#=bRC&Hkޘ,]i%k\G.#T45,5 3wz, [WFD0)f2f +-͡ep3{Τ,{&t >`O1t,CC([P-a_d);Zܥ2}qW  v].^f"<[68i`xc3]oSzu{fb1⯄0kqUKByL}"N`@d\ O63aڅIX^L LO(U3]C!kS݌ay8[ za<إ̚yˆ*)|CbCi+utZ"&NujEj&>CPkÙeBS2@4$"/5nXJ qPEo;- `5fʰ^^~rLB",T`cm[M!P[iݺ\]v7ࢠy?bЋ촗uMl ~Qɠ)XuOF<:nۺ>Cݳ_''&"W‘];6=G/ݒ 5dPdb"锤9*Kn !{/!z,[s,E)[E( w3g`XPO{ b /LԸR|I$TS2Gp 0Lf ,OKQP]]YrSIٓiCjx""m<]f{)]tz? pz3%ЯKoB^YSDip;I'w $؂hAفz"Qxd,DS9홌FzX҇asZI^o?ZV$aR8E켆 j<0s&Aj<!D%+h l|ՏO修ߧF$\:`s/e%f T1niI&M*`ic U9||HNQ_>$슷-v~Jա{inksXn|~ #`M XWG;OlWڻFFNITB6U#رAqs_Sp*(VDALzTvu-?(#qDk n~d_nZlL3Ծ]k%1yb)P4h?Ìbz$ԕ;v F]#M 烰l~)b4rSOmzguHgFRmIM{@IBC'-\kr[0 n})0R4xզ/ /y#Z:39rQ.AmmiZb:([<+̧\IB`cN@ڣ,3'G֯DCї[zu-m@c"{&D/Y͔ri@ܖ 3[ųlx;@ekQ'clK9xҚHqjGո!Ŗj_yV%JTly3OH1Yp9~ֲ.LpnGUkx7y~NXlRcb O"Şp!Fh:lFͅТt2:on_ nB75^-eCi.QQBOjOt6Q3$KeHĤ;nVeiAmN]ՎBSד]MIc f#݈e4(,9a75wG& q^n6Os|{[:Fv`KF+b}n~Sߝ=4Vx ԣڵq|tL\}4 ȎWvUOt[z<b}a_L_|EyW1QY3I50?9)GQ~5Og,|oá-ef.9eLƓqgyd{>\rY}>RW]-1w0?nd E5GyUf LeP$}LDkthTBtwM-('id!Vpp~e8*\12Nl90>'=3n$['";SH>.$Z>ZF؈hru vhoB2Xβ)vxC*l*+vMU+ˡkH lu^֌SO?Wb*Fօ w [Lρͪx{:EnvLx qۭק<1bb@FA/jo#]2ҴE 3l9^) [kneY#Vm01I 0^p$~Zba'rQJ`)˭d ZU@^D\:mUnf%qsh. oOș~\)\Ejs K8';H]XY>VQ9 ,O'k x6D3(7 yMhBuLx2i?`?b5МZqLI 0<-9LdmT-hMXuAtdٵ_mb/?Z[]J U|6cj]kb0D)1S|[  n C,+}%iLj{0`5k[|%47I+~QT;15)Y5!RtB&ˍYx!fkqNKFa_l2x> wOpF7L\>S ,pҠjj(M㥙{\`gCѤZzQh~c%g܎@2j D'tcdm2ŐEܧNYBjU=2]Omi8a&N)c|Q3[c& NqHGohuQDwyF[L_QFV(y< VƂwa|߯kңBQeW3m%73]fE[J <036P9H3GibV ?4 sN=qhAɠ^cVHajk ȺC*?I~vml41 z[ #*ҸZj'7/ Aov_J0/vrV7b S2["QDI:W0KX]43d'WL"1XX mq;=4ȴH$PZ!KA~SU(rJ֙őe6%9Rֲ3R0ʝ p :Z?z:=k=VsIZC;Uxf5TaCU}tΞp j*fj (23􈅱Ml$vcFVbnVA|#DNHSUBȈAZC[ixs 5A?-U䋒IM78>^) ͞~hީt5 ^n($5FZ~agS}#F?9A/9q3J+>ibJ]7Gqav4fKc_tS(ܹ-. T\}r'|e"10R_8^$Fc,(YK:nmLh*SeQ 8I"g5U T4U?1%# "թwؠ6*1,7`382tretֆ$nO>"YFAyc~n0FR1LB_Z!koc m5Pmy筢]=uf&"Ĝ7^cc32{e '"ý%X9WILRP3Ni q\0y,,f}%n䋴 h,/rN1af]*Sr0P>.̥VTzC.7|hCX1amOΕą`.6$x^_,.q(&#W("1f5Ab@3}DxNAIe͉˲_e-aHazS\p7G]u9fM^X|~^Z & R 97t;h "^@PF_㰵#/7~f1yNǝVݟ>^:ѡyU"3u@ª9OQ=*SlT{qP8Gq8m@:mOcgT:I.^/ec7 P]2]PsJȤ:)&KٍzAT{#{hTo.>{3i57%+z\GnҗZ8a> / sx^Ho\-"9L!$YEdk;*o,n[SɠNRq< p^p>z ^P2-㨴:|UM!huMLc}tJ^h^ [k~55ݙ'f5px\x gXFŠFE΅V4/a.Ә YNN.r6zI79ftN`z3F6?^Qe6,nA^ޫR\>-x)9׳d|=)g%ic΋ L|8QVmg']i,&:GS/qp,@}V 8?z'fAUQgo9hgPvNهR6v!/TT].2/Djz1H@3L.Q,A\66q,]?U,Ƅ巍 G{w_'d^ߦ41qy˛RV72S)ʘmUEB鯉 P^ -"3r^ѐV^ln+`%1OjPQbx~db!3*Bi\F Mk)$ h+NH3ԩ-ܷ+ߵ,\tY5LGMZrJt'|1">@n#fP.R]B-HY@@\{A !K@;C^ok>n w<VL^Ǚw=x)" ?NžHЗR +Q gY߱L"ӝ^AVTP d`Ǿ( Fb{͵7aO3VV뿕VZ矍/`7etəI T~ .e @i(gZcg??Yq:D` Njamj~Qsg˃~&p/j+vNυcbQY4% 孳jjRz:ضdJڤA 1KǡP|%wO4}s$/,rE 䌪,C-䟜+b,segbhipX" v0Cd:k':me&x>3ܭbߋDe=qߴ 9?VzEnٖ-0 :zRVge>8Sr?V D:M58gw8)[$n R./5es5,N`˴l.E#5 AP&DY3V.h& Ƭ&Ip1CV)<燰70`/fpӠ\=}H[b_jK>EN' b$țP5حYV&"ظ>Euv@䘉Sb@ӺTQ<%q"bT7=1A?W4#U՚l[Yr7D> "3n2,URH=@VlT(/Uxp%~h-QIJ{†CG`ޟdhggmw68faSUWǦ. Nl6ZTڄv #rpc_$-,aƌɗ5U½MsJ, Dzgc!ǧG9m/Jux$R$). oH~ޱBq+۱7jPD⡐5VFDH7EtXF67?G],e)Gets*ړBۉec\*WYp 殶 \SQs5ʺa  ď'b`s,cB~v*T[u;GLh)ӗeA2h gao_N)u=h^FeG `0'P+!< r'/n=L9:qMa8k%ʠ]U,5A;F7F[b>4GGWeC͹>JC=ǣO nl'7=!fK2x?@6`WΚd6j7/6@cg"Ge+$̹gg*yY=o`1oTVNJEnz1X[ZV:I^I+[,%= n)NvZs.{JzjDP^@:Ivd MU[z],16Eu^R;Ιo7rYrGl^Ga%|mV7x97MMiG9qb{tHǐ=*%GwRQ _`pd"VAц:l/ތƞ@Mj Q@D1Z3>T K~egG޽35CSfeUok@F%cNdaߑ"^G{JtߣެPҿ ⾊̎@^}\3 S4HuKV{#jSD9p=.ju0r^w8{w}\IU<ךmmUpa$綄҅TJVLZp׉+q0`Y"nPy kl;F ^z-M5S^k_+s2*gy\$,ɮV}Ƃ:_-w^eGԁ\E}п4Xy1TMΌ6WH& hI<9~D@Y/@QY+I"CcҗC,qh.?4&*4AzDLTe(|vMG\Awb khdo& mbKt\T$R\g|,+'Mh2?KkƹRS< dhrぷW^*-ò+"mחumQ7vZFдnUD#f !ŷ(bPzĈ/%v4<^. җ%Fbgc-+y(Ǡ+'p<8t\Z?hgSH=F0{;wG}LUF ~3ԗSU z4U|߰g{j!yZ2zgke=pzϙ0NCMH=WUb Q5y\ *MF}b{Ī`ƹ;^as Hδ߄eB%-w~(F!rKWbX:VRc"mlG ZAܩh(.UV6x3-ӗjf!UER~f#Fk:&i"3 WW}Xey0oWD&TS/!+/;S{ZGiFoS \,YҦ Sܰ2SZ1;@T\!;Iٟ!Hg F%&5z _܊ L 94pp?}wBxvֳgUI8/~7PdF>q e52  fY۫(8C,U00S/vwOln_Qea {貨9NDԴ{Q QJ?;~9\zM_U-{>DwT`{YFKp Z.k,U4/uZ]7#,L_vוUKMb%d_l l P7L2ņ, [> >|7pqDеبW!+9[(z^p# gs)BqSaMI49g<|[hpRNP<cșC UմtiiF*7H1ﮂ1j5J=ܙ_wT (;FLZ3$[2Uhh_2&b)tFlOe?$B6ô,59Y{o0ͮx#7x^\F 0j_.^,AKΎǷh񤷅= 1WE =U.U56룼avyK]’{O^wcXڎz}ȴjbI Eœ&'%|٢b ]AtxڥzS)9X/ӤgDi4}?x"b^櫠S\'u6TP0|Cnj&hsXpigڳdp۷lI,pWZ1ࣰw$r"$*9o]j!dT^Uc8F1G(qZXC^r5̌8\|Mk gM`DN4s<4Q;d70uja~"xxVĮn)ś`召C:P "\R<\?=ccj̻(;}ǯC2 :&l x: SWFKr_3hR)$؏(A- ~{F١jBq{mVZq ;0,C1dB'(( @qM& G)b/'mĦL7;@gzqL>5{3inL(HL3\t]'d%ʆT^@T|l+6;# MS LN%]I %#MGnO;d~1Rp,4$+.81Ο9t6 zngLBZWuݘ]!@S^;cS^nEk'+kx:P"O`&LMls+…2 5L3}Vڥ)tHcLr֊"نÓ/1pFk[`ô8jQ>Ľ>d)a\,/eD_7JDO~5 'UEaǬ3'ԙi{t@FFFF*' ZE8=[jōy=&lY3"E[N",Zt5f ~No/wkԶ ri{|#EYS䯂*(VpV Tah+;2mE,҄hpp^qașQ4Lr_?M5zI-ۖrLEڙҚNf-طeֵ ab/V@o0,cZL݅7[>191<0l  in!#ʣ Z^4Brؠi3a/]],ATK5YU2(?? !*+:ykd11KŢ+$>L*6ؼ,qJpzy!NP5T1hr{>hA)z*BbYţoohxj@5bЧhfq>d-Q6ona؇l;-4oߊ†=B Bm85ܙ@ǃJD]lTf')TϷ3׆ Nnp zr8ylwǪE7ԻϹBb갌>|[},mbqjWae-7^޹}9jJAl"LQPAٛw{a/F ʏKԊ#TUL'$frͶħ A9ঊx kO `fEA_4\Ws[VDMe 3'D]DMg&M9%ǍGD,*5 :`8q4T< t!}|Baa[Pǩu8dH7ILek0QbdʺKJ"&Ͽ#C+ɸJ%7ղ?v.~,nBa8w+wi7KX.ܥ@rp#\?MJ- 1Mf*W7of<|6m8&ݏi> ƩЪ9.ggi]ɱhDgMޓ_\$B[)FS,(y݋,o5vz 盁+Vf: &X9=5[=b=WU)A7e`zw؇HnB3C>3q5|/.jQd%s3 wRUq[4SV'ҷ2N;_:71 k~,zswmJ,Nk ȣ1Ӭs!ծWXgIlCJsolh Z? <Ɠ$[-5Ux9gUCK̭`Wd(n7Ru1M^+Jap—N,>It8B\њI Z/5?֞_61_~؀$7x_l4P%/0_+SoiUOg m2q %b Z<8_LDZstY۩hօo7V|P* H m! [A|E I O&/}g_os+Н&ڡճLvPwQ޽Gj+ To<~yu"3/ղǸ&+#EeEz?"oFbIˆEl~][GQ=V]yz$ηAbljDH\٥H=]j\Į§5B4ԘǍ5;9~vr>V4dd^IW "}ŨfM믆Xb(Ӌ󵓆_)7N@|gC:H 0ӻhVU$s%f'+zK^?v-].5"V q8)vmW6V4e0z%LHm<_04Qu/\A &mV1kcCIfޏ> %7ZTnȡ(4U %+,ĩ:SdQTp`PSWH?ˎ玚g&11Cd祝hjI%fHAO-#`*d* E8QN1\&c7Lb2&]3eB4u^?CtmGQ- x4hIť 9ƚ<+1%G/OLݡ]ioHM1\l F{ k,8[,rLtEu?)|~f[U #g;9,(.ζzX`o,̿{zR6/b}觮RrvjMe0u3rtK+CVeN6GƋ V,+a>t񳤙L3j5'eKJOe xhgО)Y5 $)8`fJ? #h\x.t3R\sT _|QD2pv)Cn5K~z(@Pz91;v}M(JىCqbcЁƔO=&i?W&!^ugˉXSyi9<`c̶8wgJ72Sh|,rZSv4@^ iD؟"wCPsAN ^V];1`b :dVqm}帚A$\uJI8DH`^ OD8[׵Qxgue_9/wDS4c៪hѵdf;e.--VW\x=U&|qjv`㶼yavv 5o9 *ُ.'u J8=`(W%iU/pf'.ύqluWrt`tw:7z˹y%ze% )ͤ-t[(c]Xeԓ8fF/꣌OUCa͈Z$c0mZpaOyՓK"dچj.8"̅VP.k(vB; gT9{`.YhֵN@!Fof`}W`#YwF I}@荳;'3p#PV=@Nz-J7n[j pEFcyzAڲٚCenOpۦa4EMyd!GF!A,)xv-*0Rg7=a]kEX? B)tKpc^s%eXGpv7`Ѳf̧H7nTG 8lAt>'Zs+zs:Y%`g?LlJnVxR괟f:],2k$גA_}R&]r8'̜1cJHsjܶUAf1\Mˠ"xEX_yrk M~L q!):X٢_@inDj w5W j,1ڟ%>!m9Ym7m{Vj.ڀ]L(jW%,Ajʭ@ر5{<%)!ֻ GNy,#h$y0SؿB~I^~GO180&3`oɥҵ⚞mΏ_iL@N'LAEJN ua3(U]hK࣠p#A5(No^˻]̬~T ?X)lUFTs"'ctAW ٯH*- %^Pq?\-/Q0Ix=x̽خ%TuLZ A$Ĭd䚵 QAqce JpdO4qAD7\*+;?l#U_[0~T .ǐϲxfgб񺈴C&kS#MxTYE@ro`oҕJ_3<~odg[Aqq66ח}^!~O}f0"˝A}/@ą\XPh4ܘUKtzo7/33zblĒXIJ TGUJ /GK ÓC7ċ7I0\u \ٗr!ve$ilvXa$2mΓͨ$W7erEcWV&1pdrgؔrNG|vWǢ 9_ ZW:+i'*lGz:5␙(LSD zD L,slHAԞRưpHȄ@Jʬ%C\uQN#ɒf&4-W?d(x(C+mYM^DR '}J˞ 3`+-/JZDi05@.١cG:hsKBk#e>=}/X=IG œ4G:OLW~1(tTA,y&PӖ~q>K>ޮ+HxI^#꡹o#]Ue#"LjZ2yNf>~! !n-Jm֮_HeS9&PЯg(Cätej])lre 7k6`g%)4\(_ ₈C?Cb\OT0Uh=V4O!;4t^G$:,p0(-h"3w#ҴP*۳8K ZZ B4Z;Zd9`|; rP|9DU-$KM(:ԖK\ 𰍕\Q>X-Bn3rC %n"hh{OƟJjԴ>^A} ~ж4<";o^Y+m)q= B`r._Se _&P'9,GzO3io`7rw8بi.>*,oǖ2F `f<`rȿn~/[0WEf D+XrCDn}a&fWO#;o __L -u 5G>Ӣ#Ŀi6WUPDЪah_f-Z\$C"I{:yږ+$9#Z!)[mOn =̕mI j_!#/|@spN 8D2kS T؈v]MJ+@8C>*XZ>yh<Ut.( ѻj|30N:1p(he9!]WnԵo#9ڭ+gP }a#8rֆv][9V6D%pktcrKOǘo^K )$ɟu -h;23%gU|yAkwC5{'M󭦒j`j/H4GŅrLMi_#_>=_262܌Zck|d&l莠pkU2<'K=ES^7t]yJ H6fd}0'E1Oݷ3gi R]gVP^?W"X~⁵zbJ0]NF3O{+\Cjn[=(Ejj$ hf0 &|ҙ5Sq9̚i÷X+> 2큞lF(~ sL!_fCF TMm2 xn8VU)%<(!&܂< wޝ4]t_4Ձ9Z5Hg;WyE] "KM3O~ˬh}D{'zi!H{' ,h+?7RnRN˸ P>rM,jҞ 1To\T#[rȳ4pt4RfS}yse moVfт\pOL23=Q͝N42ҡ1ܽ"13'o{$q6|8eDNA=K&QG˶RءS M"P+bR}MzG5n ,1[ll$"jT 뒅.mtRM9$fl 4\ N27/y֩*~&yA`'Ƈar^Ԏs >}: ۣ 64OgϤR=m"`Ff[*PF5dϯp-aB66T4MX3=k+vRp~/脌,XE&h0* ljƼ#\)P/ v-~M /N`+UeIF6լi+(ouw @ܽb˗1JݏH?%JUa0uj.8J"Q %7;upT4ӉqJF@lcЮNnN_XxM'm"X^2ⱦ 1&h!,0HRsѬF7Os/ {^lctV 5T{i8#*6H9sFM1=I5}squ9bf_t`tW?d*&_>Fj<dUD:L֙["eQMR8sQO)24C: D;3C?u$^=cL6<?z[W^ \Jm:"- /Lxz>Eg]Xx'r@4Ώ wUu~Ah2fT`i >4*49w,Q-n,`PS(QNN`A@D2D$u}P:aP0sx\-ڄ`pSBv6xmu(G(G6KQMOݾ֨_IMΗ-$jR I~mcݾE6z؉vC @ڇDJwM,Cם#p_N@q&` S Y/*~)P#[+O! Yyr@Q\ Y}SArhZ~>tt=NzzҤ?APPwwVg/<*ƴt3n YÚIJV@գEʤFuUQt<[kt{/TjH$octe7vx4hv,0D{QN=(HG)L.]!Y1"Njzh]2Bup @Z 7AKϚ\5f|2V:t.߸ s1wk \!)󷸌[MB‚Ze}Q{C"9aP9XG;iN` $0]#xYxy[F6v 1@鰵{cS4*9$:(a#ruB,V8T p\ܠ_9wV&TyhNvCӰڊCevGZ(YQc Z&n.x;ƴbhc\ǐ-Y$azsDAө|P6C\? e}E <$uGC`'w'¡hMA! )#V3vs4 bY%X^:F?R?­X|41$]}`L@L~}6:dʰHT\scԶX;h?<̩6|R$SÈ;fx~&;J,MNWd9f "KnFje *zc?1F/kJh;A2O3?Kn{0Yo} {Q"z([:. G.u`}jgV5}31 mhm;_b4ŝu,2JΨЖOUto[gfKq p޳&0o?B "*;$NtMBY:\ 6 If粟<2:'gɲKDDŽxmvktܰޯWPReL?qaي]n}nAv^N60qNpejrܷe8Wa:Cm$hh%CtI"-Ta:n\|ZU%`̂>~lI)^!=9 (qM*FR?d`LIo h}pL;o!Z^,IW# ܗ(,"Z+MLλ=-&n3Rչkm8.%2X$ "LT+CzrB$'1֨\Kf8;sW; uR65Acm'*WQNr'bYE~vϗRx`g5!wY+eH苝9VW?#x^yZ4`8"!)ŅXJ{DT#< N**B27Sa74.)d~^*`RM#^ Ow`JZ)8HҔ|>tkvC,-ǩ%y8Mgؘ&+\bH ʜfLhb}ɤ!ORwzUYBG(Enqma 9Ԭxc'6_ZU$snunQS]@2{\fķ~,h@uqYJmk[yqΰHbW~-e̙kyI /er{kQO9slyr?N[ůvJ!ۣb**+k-&8>5AlW;؇BoPp+yE/˗u {! #`|U&ݡS92 #w0'EtKYb:QvS_x?gb|wڛК:=Ui{EMYJit"QY9uz, KQ]B-;p#@ m.e%V0^eIK2:h503 G Yf1|$ 3=1*aP2v"CwzA /3*neթȃŜPV6SHhgtüPY$ssNV%++UJϴ+HW"Ȟish}jH3J-/zPx,`@,4D*!Z<=Va=(\mPW}>SZ 7> 2m8ee_]T?.}ׁ,JKCmiTmv+K: ivD'-c/CPMf"{ڛֵ~Ɋ':Y⒗PWw_4Et=ڟbQDhzWzj|Ļt M爳YxU ŋZ0*vcL?#ԍJGmLWYLb0 D^G832 wtvڛw1,548LF~uf[&گ1(ˬ*I7 &e&A~֔ЉZev caT=6=ߖ}q^ݢ$0Z¥v祾&`0 r&(TGdK+.MkB;[hk#vNje<:#xt y{9um1/|"a[~;.mzcmyB۴PcQp]WTI+tp c5΢ M~v"Îkln~_/hUh?)* ީX{Sdo;6ܹ[!6CôNѥ:zeBִag̫z_%ݤBȲFq=-:͎S]?Nxj_AW̗Qox10Ϥw_pt$ngáv^]dV|A-\+ PeOEi`c:5j ׭8/j WD7&ةr_ʲ>՞*HX`j |vM_J'WQHop YHt谔MA`#Nݍ5DP,_xP1BN$Bu9}G PˍXgz Qˀn0՛S`wb U*c:|^Hѩ\>JkX;ͽ .sE`(,B#qҘMi-AuDG0! Q镪,"H^vdcpXdq [Szig̀9r8G>0ۋL%2R]chՆsecrN+d_ .9i;G/~[k~׫˺ 4=e>An暉pA LE4D۹mf\IS}|eYPC!Bufd?kt]燸Ԇ@` `ꤒ#@m 졠fqr~RT)t`튭$IyD~y o|AЂ `E<ʹu[u`[@70E]|L*6 o9%[2;c䘝2 6E\GiM' r}F`pFRpΦi;蜫OtʢZbe$B! s?LX9mW;N2A%kVޝj_Gѩju6֫Y8gqT##gyݣ-ɮzvx? i;x ?)Ff95De껢\I>ԟ`jU=73=-l~ʭ,CMY<e#WFe՞̘I=>YcްI%K 8xm,ԫ SjDUۀp[਎MgˌQ ~gЙ\pʫeIe:,-u P;vpGHfSRRN'}k,nC|_$|; G߭[s̩2jtQ}lGɾ86r+i݊R: BE Eڿ:?z!`I"bɅ]IU?l+`y~4poa#8&Dz8B9P ;BF[sd"ј}m6ga5ܽTWB I,- @Y׌ZJ/yhmu_|g~xeyZQL(k +M\%SzkR#_xV*tb4~H `vY1wvOz?wM`ssc; 9G1bSJy9Qi[l6JkzQ*Ӎ8Ә 8}9mĪ\7Pj 5EbR-:#㡌ZJҔ(T.9C@L!Ops,1ĬҏUwI5f _0>}E Ҕ+ͥ'^raV֩ۊԮŪSB\9PUt@@1#NC<k;÷ƿEqGID!?ߨY˚*XqJcE<[R[14L"^; o2)Nۦ,;O*gZAҋDH+fG\?pnoh}Au#kV4/pwu$;XTBB*SR4U|)^Hg{4dތ^+ 5[U=0:UW󝳵zq8,G`Xw-E9ŁG5HUNOwK7" L֙ yU9=C|EĄJ{=H`\z\7}Z ؄5~}ǕAV}1qۊwR$wh#TGW9wp8YRvOor18k&$?$ ~>4 ab*~4$]- L,XeeӴܱEPޔ%JwҨ!;mNœYkbYr%쬳K} Tڠژ9/Om!I5F)Q-|V3js@*0w`a+H$l)_Y޼5|r;X1.COh';ĥ{! | zے I|yUkmeV3&sT+\`~mx?p!CRqW@Rg*6Sc\ͥe0tݬX} !cp|f(4My4.i}pHM *v93F^ul#oO׳:>ڨ蕗8N|58b%>('4eW} H#9zS ըA=DKZ`F{7:q]76]-7c&br҈4dHɛr}1DxFyI s!vkZ^ DuN3,+["l l“Y?l6I0)Ri oH{4Kʅ_#*/QۍlX75x(@5efk8p_&4:q "s4WO~L*CeTz(sW''{;y\1IZ ~*|Q.^Q>2 ̽xN5 OvgA8HSSJDsL4`O}@L\jF0[2 Ţɣ@^}7i];P0}m/8-:-:v+\5҂,o[1P=j?ʦNDSMȰ4 *i6y[[#ok^X)ޘHp" ϐNQāVY݁#Y{KGLaEA $^rj2\ڲ,N؋^K~e|0Oc%<X3U3:L u >T A892cCGt]W=FmI-$&wD , 9ϞSB@(3a0K{ta["%m =Z bV3o=м|ْ4 02Kh+wz},тRbM3k~;j^X+Ǽ&F[2^=@ܸy3N3eʮNUBEb/ cJ]`(XFt)yrm3ÕRs.F8XGheG,5F1zkR6h.1S7%2-^A;7!$n<}ah\5)Xs1Wr!7SCY ݴ$^ 0m=0oN[A}(Fؚ9k4f}ZC|ro4],ʶw{"iZS~?1i6H_&J.[# Xc?ѵ;GvV<H*{nGVaP)kC}` i1Fjj:42Y0@QR2ķEX{1}ػ)O#m LUuqw5^Ƿ8Y~6~ 4\^釃NxD'9]&;s]ghC, FQWD?ѵ||69I3ƦJ'npkTꤩCQkLXM 9ki7 E(GbL4Ў@rI!|7ͩ ]|8,2TU51&oDۘ%K%M3Y;Dn1/0T h|֞:WC^PAa0ßq=; Ծ\yX=R 6v+VK?gőF$kl=`ʖXYÅ4oL.c4)?0*$;+c^IFwq7`E<)HM8 inŠLF+%@%y.:zC%p L׍sh߬O*ߞoTW?qc ć:YŨbkE`t V )ߌBJYԼ@JzTAèCB!,pYiG;Nn5PHI\Ցd~vߔʑ* ;>.޷9eIoKi..;W{ixXLWsAsM"ڝn<qBy?a)`=+* Ra6iFoa^]6$[4~ k-6R 7SM30wi`{0i}t:^r\;?yA+e9VI+! ƈѓu@ЇtR%}_xshHb n:A@~vh8S>Tչ1fp| .o߰P&zM2O..{rJ[S/U D:D}Ɇb%U*KHUˬ;u uƲji4˹@ *i;q风"Rߛ95J޻؃0|0uKv)𮙗q(1Ҧ<+wm*LJa&yC(qpj1:WY6HfZ w-JkJDcJyByn޷#iQ#p5J֓F'fo)Bƀp_6xtnZQ"0[k,;7`s~ӝΙ/AD'ohqT3I P~. 'KP,.<"+kG WX8t!xwEʪiQ-xc/({e$ .{H6x::dX9- /{ϰ(2,CI/ztT@"C gO﹅J,^&m$=bCGitV7Bxj[4! `^hӊf{3BF\$Ըiz\J\:&S3_fH L}֌)?xRݎ4M"4^{0PH8p4K VɎ%47'a[˾K;h0Aqi`qiՂ»mxX΄}F4RR~_clQ7ػuaE{Ȃi!FcrRaѧ-i?2"źKҮ8pOO-ƣt|_!< #t0f}anAA)ѫ"V)Ӈ(C,bbcu<6fV!'T*Ց;ck"ȃ'[x[BUaq2J5c?+ ȚJ zl0q:&a'`ס]ug.ŋ?*"7n|h19 ,}0 "|T_Ku #+>,"ّl_;l)f0M]7}MoŸ^ ?1}bf˜7|> reAư[lBz:*RR7E3Rv5ACG MS.z>ͱ6 sJNÂWAi߁6w]!<uĉױMCTdA-3ɷCIj>xmm4#|oy nqT}Gw 0\}ayը.QErJb̀72eJGvLD]7Nh7Eq;_CxѴ<ğ?ͬ_ݲ;{2ɤa F]A !Ǭh+ SCrt%WF\0Q\1ӿ623cJD=WwR⟦-hbx?h[-i')La7߾G'[,uľR.3 6A0z@-oŎ`Drk ]0`miR;9_2zZҰGפm+;4PZ:l* TwKN>E ߽㜔'C@ߝU |d:F^ة4L&~3/?q|7Αц3B9mklLO!7 \GVkb>DLNz bXC(` Ac}>v.nKQpCQKh&4>1OmRu 38r  = Z?k iڗRxb3ZhICE$ mL)霴|7ԕ k`P`Q4Gj߬E?mK >)Zn>kf1B3(Ng0Ax3HFŝ@3 $A&p|FZzFq2`lOJT,j!l5ԠkY8YFmSBjuhA\- 6)AԮy4] E(ay$0ےHT~R 7V LvO0V3gܫY~PۺuNYP5`Z W r֣1CY;7? HafT^Bd v`ݓ:ֿCӜAZ=<'E_X#+sm72*2ߌ1dÖ9$]ЃA"&2ߏՔT@T72:Up c]7t6b+Hpw\W0/z3:a~Ev~N9?FQwf7nt]|x7Ȓ SYMNbUy*,Ek25DCy:Ғ#rkv#eeW7*qĺnpGjK4y:zMfV) d" AP˝!q!b4|=Yk0׬u@Gy>u]]>7z)Uփ:/;{XdS;aFOZQHGWnLWdH_yuӋmԶl%.uXW@ls-|j+G>;V9+z:5'*]lH43=Y@f`3r⊢5l?y_(Lɬ@f vcQi^#D0Xgb`Üޖ#SOJLdCѹ2mLOo:NoZŌ[߁~c\ Bf7`0dފ H8:SdzԒo\ !|;?L涤0gΐP.US*Mnɺ_k`}؁CeNs;i/Zȡ{#: лmɈZSG7ZEKL?00{ sS۠#U[% _uT_STnjJ}6q7\S0_R)*b G:#+w 'ש<NR48a2D_Of3f o,SŇJ&O [ hf$:2f*ۭmhtl0{:c*9 I1*-`x#bOij3Ӎ欟j=y= $EXjs3 P=wk^YwlM7*$׉rR[6;b;upKaA[M0~$)[ n<[T::p̧_!c:Ns_l\,[s9A%qzT>bVqs!F"YAX'?k0,$J1iܖeNW2pǐu'tԣ@AgD5CP^%SFth,TώGmXa,ס+x !Ψ}>5{ Owr3iA$j/hbCjU8riI2NQja22v11k?}BV/_åEnP,%]೒l ̐0)F +@61v!j}n…= =kqT掫is BS@ ^ VM<_r^ӄRHUo8ebWn-+kdنk {R!nj>^\!@[C2,_߉/xzM \lF׏6k2nuxUK:sW1徭\Gjq:"!D˳# 2J1MB-(Ghܯ `+<hu+?λj9ʒta3T@2t*q%*U 0uH Z؟A_yr/}vZ鈰B ۈ .hJ.[jBSF j Z>1'xjq\2Δ\rj^ԛ?e-e> lMܸuFC(̹ _^K.?1ZN@T5p#9:PT֥3ȿd^~y`# 5A08KdQg:w`"a'w >Fs҃֏ ˘~i =ED2bS4[GG l_m0"ynpH}y$NZvޒH O-YT1.oSczZ/oE"&"R4%e a  c['D&[HkB۰̆9\TjaCy2C4??AJ3GghzaQү4E#bN Bf'd2SR.a X)d$ B=pOcs؄ q搢ޡC+kEbXVeBCpE;' ڹ?<@_G@ B_aӱ3+[k6Jia+풮] bů֍L)Xhi,4w:0s'nF1&VTTws?$gܧ-avS0 iaZA xatBCԔ' GaYXMOm\da:M*YB0H)طb8fw?OO4{\7iA+X~Cpf͊I@(>̤1dÈq '2(7ZQУDPҊԬ'v+|aj/ P9r腘gIVj&q A.YѱO;f׾s 1}T#x@G5]b-)_1#>A()igJ0-eY4Fq7PSLe`/W1jWn>ca> ̰ <4XQPtur_+wGhkAHZ!nIA j5Xy$niQte4K͂Ym}iA6'dC9*$^1 *}"Vo{תG)C.O"JLA IF!_͕{78?>ǯ&69[nɯw/ylcѫ[{SC(8 Ѐœou`XAfg?"I}Jl^}n6@':c0<+PS^MdTgrHzP:Y u]-:-49Ƚl;Y85'3?Ԭ= C .;S\%3ʽ'W7vٻLJmw&)HJl_xey؝U§pyS74˭ 9.lXX<̻ & (rU2~y?K|W 3)ʌ5)![DƖ+"}8QFp5Nķf%eb\#0T3u䴽BNNvef k I!^J̲mI&5+X>YuBM*$\Vq>ˊ`Ur,2+Tc4.4nmoH,6#4!SNΌkt;8I)(qA}I9sw&|RZ$oy{x>4Wh(=irʂtEy{R'ҝIvQ, ^UNm_Wf_Ц?8Z}+rc @Ңy=Ok߼ z [wk.2HvŇ2jnh^eLqx%x՝(]P | 0W4tUhb؁A22{6`3t(_T(,,;Vv_4n 0I^ &kuȿ"*DĕC6*[_a #{@ %m"aw(DS)XPhˤb'6Pڧkb?}[0>iNkd"|`7g``0 Qqyݴ,d^aScY:1`Ԇeh@-ˀjM5rqfZ:Sn5 59Q; @,0Ϗ3y⚋6- y1 > Ryq?I>3Ҿ\J^^h)+21 ww}x^Z76M+rHD)ZW[q#ƷbƬ8楙sarqzMAA] J;o1 ňO>oWV07f6>%$3ᄔ +;v4Pvc2gxy(,f YtoM$ʏp̉4[Hp3Qu:Xm6eҘ>|ȕzF{.[|I |M3V :9<_+x˴{tpm\n_MRHBjT0&o;IA6=soqYty~XaL[|_Ȍͽ|Hn(œ9P)ؘ,e' /qY+:D>Msb%wi=lTjS!5[릡80x}]\r3 2e=׏j7~1;tTnMw׼Y]nܬY;Em1u"Uh7譚N熛8a%nb@1Ç3x5 b˺ EFWcjxr[Z0$r$i % Hଂ3Jd,3UއtaIriUYu85m윜g@ے +O7 9[~A7(,a I 6lE]C6P JGᮑVV%Cwj?|o\(HpԔ2tݥK| /o5W]2{e:&$Z~,]a-eUڑhN0NKv 2xyU GxSk[I`Po8⼊:T.#܏ޓ6 U:"@*~1:Bf}3z%ȍĢN5U}c@G, a%gM?ڽ`m#z%hOR^uTHPC,(CMT z"$knT:zo3+&*,dq#<"wg.] ^\j0*dz`JQ7b@ř5mjwIyL:59FZ Jq4ZFZZe |~$-֙7nG$~||_ UcxMZE`be dIl!bqfP5ǯp׳% g G4;BT /)6v$}}R"̛7 ,mkz r{EWo8q9m_7x%FjDmEƗ4L- g u5M1>*3aӁ_񿑈 %Vu ]b4D7ŚEN6"4T=YFz.$lat@'Z)P'TQV~9 X0p.;[~Tpw lF+hlǀ`:IN8MexcK8#`@ k7uشꁬL0շ?9n}l훶.Y'!>^=2 "'Jt_o4B]8/dF3 KMlמvLsjT{D #B5mb -`qsY .'ԳA|tb}nmXWgΘ)FW\|yq|3`MYbdjaٱ `Q$e^BM|VSvR[\L1 qMރohraP =˞S oL|٪kl}qlJl^NO0'm 2.^hX7E'j/[@1*ȵtigWXu/iF Gz}mhn((R8#W 9s;hUVw< DqjoC;քFL7ׯV&D\3 pW*#fӄBꢖTNvp d㩛&af9D㷹"Oi,@arw -a!a qN[J |I ]{dlxMQi{w@"O&RK}~;$ N6EΨ)`_=?  XySSݟ4;rѩTvnDLi|5K/+0؀'rg\/JD Ybɤf _T#]`ƨtY^y7kZ{ ^mkhq1+4ix3IKLƪZŢa& ';q&6nhʮ,9pv"qoK㜄fB;:ikD=2YtAir}],;lMй!)~3`9:w k{V*ŨX<09$3$TFιpB"ǣK^X& qף˥7+;J&|Kn Qjnњ|o}xFpv=PjiӜҪE:QgJRpt󒬑 ΰ5UyJϓSwM Wy`R""cvV?a߫BnQP<算?O Z{BXp2\AmNx2I YZG7<8CN CJ=y:+E}:tN,n>Epb74[sVX:U8\ZϱRU"Q{ZSj6ܦY:W8c<,pLFPHVW37\+X|;԰ IQǪH]|㢖Z@ 鸑! y|- P+yԣ~e㏆8Nm=! ,c`[ 0dh{RiG2-S  S#+K ڴP5DˀZMWݯ{}|P\M65j.s5dm X/kT;2fUԙRpx"sw&J ]{Cn?xy4{1g'thI#)xr@C)Hnˤ?/5iquM U|&7z k0baf΢@Hߤ۞Q@A>UR{e@e逯Gˈ97[O!nvJ`{a@-p{L~5Quy<\@|T{v¬ (Cz}ꀂTh8iY$we`i F&7ʱFXJK*3b' ~#nĘgdZxAʜU|\瓧3Qxhbnɀ6= -8TVp{;W+_;}qDj (R=*Lޒu,T9='čߊw(Lm*Ɗ,} =dfyl;c#?]\ɫG+PPD2Jw?3n舓8Quq)!]`v[DŽwXZ|t>ƂRъtFKh>(c1)IM浳=Iy@֯. 4~bWtn+T2yg3DyX~xg>xgBO9@jN΅iKKIrDpp Og={P1BoBly ۏ-@jU{MB祇;;.kڀ5eOi%3pAUܟl6+e7]c<56gT ql=ҟK˗&\/ޅm:;1sN.?0#3M`p 9y1Bl@ ;{|Q~} mC/iw +KxYm,?c-&GYHA<9)LZTr֛Zr~yvH]ll:A` r U,*$]VPwGdg j%)UT~`a,كon>0 ̙9Zz'\Q9fO-}UOVg|D?8<-;0g/C::[vl.˽EF/3:,0'@rݯMb(1;ʮ9e3cLm F YW.J|i6Yv GbJ/%o)xsvWΤX"\+#mC1z;oWI)Y00'I0ʟJۀpIjS;bJ,͓ܝ-CXk 8ZB62ZA9ضyL}e{ }Z8Pų@;I>_"oJy&ωoP)  cQ!7ٴKE$?xae2&CA&]1Y%+tÇg\ͮn"JV @&'],5g+=;vp65y 򿱍weɓ}WX;Fj&69YBWkf54BD^  C{T0`ꚨA'1VgdBzcN=J_aT]$;,3v׉6Q5v+ /m7y42[ռ^+mj8|\|=sЮ䇈fҀDfV%)&*VУ) ~c xD=Z,c_MT4 ۔g?-jlS(ʤT 4L d| ; m(# 1j'@;DAfZ5b_'0Amc+Hޅ fG(z^ kQ7Ms;M{dՌ+/{y;eݔv1$jύ|/]MH!-U\4,7kX̽lcRvpILE=`vo\=:f\{}soh)x֐_[ו4!RS.ftmV9ؘ;*"γvNN;ܺI/lQ,.tUGf}Y~1,︅e&aT!,ú ^hߎj} ӯD /~)n?|:&bP4%'ٳ7'9*VnT`y7^t] ^rLȘ6wXw&Tz1>C"5ziHEw`.7 i8[M]C-l/>ΌAOdXKiQ%GaPM'7 =b.k&?|SeyJXSy {}J`0mB!+ a'pPر̽NM,X?M U,F}6`/d ZtbUZ&p5ǃhv ?fl`~&; ,:Q C8KV 'i ?skr93f,(ʨ71{sZFf)%dYC*>D7Æ=_[0>4~1bd`'wq W,;m9\Beߗc=ļv͒P0~L挬舖PzuS|,9c^QO82Y㡶0YhϻM8ޝvީ>n jQ86áQ=9!4-`d\+!TygՈ*;0F!1L ]uǤy~-s=lBJlGb#)d>{="Ŏ9jʒMVd[\w~NylkL~ъv~ϖ_jq;||ʽ-*ln2>Xt$\c!Yhif?X7% ]3Ɍ)rc6M]a9/ W *|Ɗ@79j,F80Ѱ&^$I{ 旺!kS$ :PPо n#MUrz2]SX a2/`\E@&Mo=GӺs  Ed 6tm?2Evo 4p5@H{ 㞓rιdbAYOV!Wܢ<:  f P?QBw秕}Qa}geJUkv8cx6O_&s}8Hw UU}VHG43 C~3E)v68ՎlIGޑp YsO7 AMo:Н>rL꒳i>?ȧCCG(8Zdĝ:QndYoK#3{PDk'P/r[ސ+[*y|oa7DEm=5@"KoPS3ҷc1"8w['PExRB֔PFlrhٜY@֖aqˢ+^f|;1vwzsyw&bj;Sf  .W]SWA-Sz"097P5P A7];"InNq*zf$aEwdZ<57{aέvY>f>8Js[L`"ق@Z>$q|=*=1tgblQjMS1gv.L#tk' 3#z+${ݵ];W[M>4-d-EgVwO- ڔr0k]SǯQ.m#hW^sJ=qU؇񱘟orP*`CM<.rK|^d4 t'?V-E~Uw %PҹTW,&5pTOڐ"jꀱVnV5%VaI9ZǓ)(<.>R̙* ڗ5rҌ]r$sN2zĔ\Uƥ|l ƯTv+wCLieyךsΠcӒf.ʿs#PxqXO(Bh܍y556JҨp. 5W6 .%A],҄^f-L&e\UMu}ښ(#4ᖙ_QR'\硤c\rұ?u 0Uìpl\]خ!Ր8VRXI u$*qt9LeZ{A}Ktw }Ҭ <ۜF.:WȐS5H+w IBE(aw-UyrW/GV n%ؗ+'76jB$r,wmgsOո|sB:->`&; NOR0\1YoȾ m=, #,i̯l[nm%v^G^wܷYR=㙠W:fIx-CÊw­yU0Ͽ;:`7)qy=5nE]~ǠmxL Qa&‰H3O&^`o&ϚӨd' P͈H7iIU9O:8Pos]JM A.y#^IsCzի3[;s\o5[C f%{Й]3>| |"RnʵYN63NU)\ZXùd2bظ[ƻ'0d4@ pS"M@Ø0gȺ6-[^FaٗׯΜѳ$%*˩bܧjm=F+qw<.?z97PS"C9ߥ6-8vֵDG_z^8JHݐw؊CfԉKQ8 yzNJc 6+XX?aVeAc}J`?iщT"WO—z}QOߩH˽0,B? J$sGeRחJ8MWo=RH븖Y팳d{>`KBY&֑dpq'.yCz\2xh.- Q*|#o(-saeCb2_4&59lj|w\Б7&oV~#V,Im!!c6: ͷ⊭">'I |-?&}i&ZFF鳙}[ymn)i]Z{ܶ+I^gsLUzXu ʫ* kqO7bAe1.PUԐj|F( nײG5QKD&E:ry$T\` $mHɢcCB>od !m=1 B0*ibPhZrܯv j,}K)J _B&Tv"{`ԍ"߫+|s**C#3s^z߳䖭7¿;6%C=*TXZ/H5~J]_rBKE qj8w wdX'`(_S?&'bG%MV|%'sܱQ`(O7eeQשΘKh}5y) ~Hƿ wC̙وLVd目F@vx|WHAaKQ0+@vB6@n4P@H]\zɱBg BͽEK:e@~\kw`Q-iTA4L.A9(:m6 ߍTMM_,RF*@6;[I@ZV%s\'kU׸# g:9HC9ēAix)q̸ 6^w$*1.dBg*jtMIa0ʝaO B( 1"?wY\+n/ aͪLԟeq{5^-8jdxM(S;2!SQû$/mv#UH ;|sPRʩwnF%KѮr#Y ?6A¥e涆k0:p¨JƏXOh 4O/xZ"j'!"3؈G2zǔujbJ~9hi؆m\%TW"=`y8XG`ȸ}i]C[D漅X g(<+T80R)S'Ykն=:NިqmlƼE oa Pe84wcW{!c|9R1צּ7tWT./Ap6~I.nf_Wds4?O>UFdFM>©ctunW'r?d 6NZ7X{j` Bk&@tޠC"zmFT O;j|KE3IKJFx )?䎮7b*SL0&AFm+UP*ts3t_@H,VHɲ&h0| Bj!Z XaHnmM=U}\=Dˠ.Lߛ^,(x#oDSR(4C P y%bM;n| Z2ǎ _:Лg#tgbl}XK< b"K3>~/C^{WXç{rSz}D#y!{Z|E:*țWU_!)\E?0--;.`'ɍ)bwR(GGWc$E1sKd5JI 1(DBGZ%II]r'b;7[s尠OHD\JXMu :|(w݌4ء o[ıKnUݼT- >8IgZX#+*%6& h@eqqF+VjG|]/~g/V5t˙,Wy}\S] Ej.QF&",qlWds,jpI+8^n!)偾.|J?j]^x@M6RcjeS==l~j [| e(5Fj>LR;C+W8{,7y3ͤ"JN`>ruهf>q[+NT1<侌me T*5* vր:#ia.^+-"θ˽-?^q92,^=j:}O$9pP0,1&_}h"-S-ᖥ@(RNOuV_xFvH>dDžP9xf'ߧ/309|V|L!?N%7$dS: 4=4x9Ŵ"Q=c3qt,#(>UZ7_1dOm^a pn^ Y5r+#i^Wk'v7i9vƽL|"6s-"iyApN\ )_e! 22]~;9 -m 9, [Y=h2M18ڤu80pA T2\\<\ѽ/~VzyfCۈI&#?t|1#9SS`,% %c>q)jw*f~rgf{DNQW(۳NFmqIfBAeY~wN"|yq` `st^ƳiLhT|?X푸O_4zTx̒ ĮJBv;D{%jDb i%]!lcEkg)ܷ#b6snKK-rt0E3M ˜~V:JC閄wIgrO-?_53⡕=6a& #~[l9@b*ɷ{X<Y\{VbabI/7. pf ovE\qqQHGIo6+nIhZ'hCLњxEʦ A @&8=ص{O|$)o|'0fjر lXT5T?[wKu}W"* aG7WWEƥX$~k'RonpS荢 f#H̐eePTi(Ycrf3wǗ``י?*KVcp_YQ3  ZVvo?c8mưK (¬\ \~ !Zת>R3OEζGd '_•oy/N,P<{ ^zs00mr$A0{c`T;ߋЌo1Y_q~m8E.͌լ6FSȭ9XFqY7:'.l =nrTa斆ۯ26F3¦VHsŐ[Ba3g, wAs$nv(CttezH;tű7GDW4x2؞ l["=@ӗA6Z"RL 3ꇑIjbj&  q(|>UĎ.9F\[Zjt K2]#!D4g'!Ak8rܜ#.r)H!^@+(XV$mƹKQ^ rɝEYWIyz\;/Fa.4Z_ЕDž{ь΀.<K.EP_-w؞S#/Hk2OjښT2ď{/ۏo/N7Rr'U&d䖩/BnJ6 _8EJ2=,"BO2ms!+ޕ$"ބW:KC!>ms$eHKURP40;bH_Du-xC:<`XS#b$ >:HDO߆h䲭d Ȫfl/IHg&EXʊ^1|ajR"qiq~q'429HF̹g=H b9#V ,mhɸ?'  I eߴg"6߈ 0l(^CWaX+tS:@b8) j3C|`Eg+ŘWy X>mũɐ2qa5r{j=Cd!  I8R3j3'dj"Lo%܈@)?iӪyuq< L'fZHeڊ +;14S#@ZOJ_]#X@dۼr݊Yn#՛[; g8İɓ7K{/27؍P- b䂍VqڜOETLӕ78._F|2 Ϋhps̐l-2 O9[$Y[|Y37޹o:y -#h1Ђg_;76pln0)+z-ߋk_ki'rD:*y6ZhԋA6+?nrRd\mfOj]g">,k6)^o 45c, h>Rwg9X5kv zyseM-KvG)`>U -9 {"%sawkw*PB?=Af Oa@-i0ݖ%G>&߽D=kj7R1#~Ač; G6%JW"S9^{/-P9ɨ)RDDF#oXfĪXI[e 0f|Ԗ@Li <]F) >zz`'ǂW}P$҄5ezdbIɰK2zM[""!"x!ǃrqԎUhB3hd'klf|e(H.6y?bk3i aO%xxb*Hnu"]/nUIlVGCZʷX(Rs/KNkÓcbO钧<=2kw,=n2Y/IbQ&deQ {Qg)M OZ̹'2 y"b噡cjaZ?j$<7 }Ul΁5y3{UUj~ZI`4oo'Pg+ǀҞD{@>R*c9W^TA["fB[3PdswOATjE}h@Tuʍ߲ ?Z f{ Jf> APW Y!G(0=Qv A^sÈ@jB4bBV6kS03>jTGoRTLslDTUaew}sg\ԻbpzJ?0\' ~"ca AuIM>s&^䠑 +s:#+_!.nIb |\r){^QR:zbz*Ý}С#_ow0,3YQIF c[, խW({I# J*uo~̘A>\\a(2 /4;܇]ŇP'.'ƣۑ 7Ɏ⸕ p:$V2]! */Z7+J'N殲iֶH\&c/A:G -39 ˩&CzÄI@& uF' Ϧj(ӊ;"tK;!п踋b);#4:AtS X&nDbx#g 8yu?"9&'}kpǷ'Y1ͶNj:"QK.N5R[v]׽ =7: -5IF:N)>pYQ&g@6 "?&vx:Xk>J[?u&.ذP3_ 3'tccAU*}.Z\ݤ W >f7!9\icR}uNӳɝ|\ IJfv5p7^1]J: 1T[iXxQn'{j@=o#.sh'c뙶(,)/{(ʓ-;L3"c ֺC`/`20(D^7AG,oWu\ TA8wD@ ?O6;A,V̲ 8rt|<S wLDӆ *&i4(wCFe\g v,}wCE-(MHT N TN&[!k`%tUCeL4QvW@Gt80Oa/hy9a*P| wӭL/P^+1E2=;kLbm|wd\"f<.78TנvcLͧJDj p.wrۙmj+y$Ɔˈr XF)58jm'V|rHx2p;Ky 344d3OUU⹯4}@X|oK Xn)xD.N0q(X܅<=i c&PYzµPDcñE]7"2a+R+rerZk&nS2wEeD+ n+]j>sNҐgd޸)^)Qrig 3($%y}/9yr0?Ca %LӽA,"ե>Gwj@^|9eg4@\\;OE/{A}_}#d L[|r{QQë́_:?'Yz<7BZio[xЌ]%Y}iô]DeC{eu(P s.Zd;*I Cews.WR,jDהNB$WFpRjFXurָ ͩ)DfƂx^d_ ow&]=l@ ~Q-ى\N lL[YzVܟD]^׉7v R}r+/=8#'fS.3+-ȓ190OLnC.VE]]?aMP؝k3".v :5}2:7rb ~/BgsX!RA02헙5j,ndT{RH'j SHa&fs.o"`"meG11\i^r\?Xf=|_oZ(ES6àMGsq[uj% [[mq-~oXnKHrM/?DJH.Y:ݹ؞'@)rsI͎CFe=pS>2os(ml i>ƮbTr!5}0iטYvߒ8>\p~p_TO*^l)}P'nc,dpwV[vNXEWh$gj=Az;!N2gn P=2 w@ ݲ , -ػ \gUia:6ɥWu5")c+}f]Nڽy1 y<4MOTW@Y[jdu&E pxRuY=Ge@p IM ǢA:]fLqٚY՞U܃QN^i|0,Ȟ9.6 D)-RaOa\ )>+e qɍOX jExd@NF}rj0Sݖ4 11GKIX\dNB4"ʹuda#MHr)h] 9]zCqPP $ W׍ڪvm_x8\85^Զމ \4Ɨٷ˾W,uի |;:r8:uͿ4捡rOjěDO:#9yݣoxzÔi) QtZ#`-·¾mr*S Bd-|U?!DBE7*V{ezc75\.TPYk#tL`aUpFJ>"u׶ 4M=ʊTfթ {aPpmS@^JqQ?oh/"< =Ԗ0>5n|R4s(m=8{h_ UIqwT. Bɱ Ӷ[ mˠlM"$#{&>IknA~WE,2FS2,> 3[tAĚ5x #CKR&JY 򽑠*o(V9Є'ėg{՛2w[j>%0e{ϙkY^ss\Um*sDm؄ -ݯ킄0x}+gUWI^_IlMh.!2Jē:CSӜ#/ʴX2 5Ie4|aC|qPqs5ȡqOZK1805%E X_蝊Bk( 㠋.FsαsyQ[ոBM\%Ә)/އyIS~Γ?aC_1_#Ǥcl+s2cNP9E@@z@EL6QqHyKį}OAq飝;Ȗq[Epk\`8R!J׹N^<1Tͨ[f5wo/22/#\8:UFt֨Τ   3\M$Ů?F$W*I|7rgjQv*wK c,A{'+êK Lb"•_kjGgѓnPR]}o:|; -W7gx:PT%~6KaB +ON8 Fh U3kg7V LWǁ'^L90# p-M씗% ˖-klh5_bW;T`-}q:>rw7iS˟HOi!РGvU*/n.K<UM4Axr` -*:Rz+yasnH\T 뢛(73&6. ,0`7R:C2\}@dh[O<6EDB]{#UIdg0]ޏu=f1PGGwcj tDѠ6A ,n-:$٭%JwNu] LW7HA$υfa&q:-/bdScA&oL:Qp'oq΍zU~etcb$oK>,`6FwH'd&\|4I)_ 4+N cJ„Nkjr ZHE ː i˭~'il}1 ._;7B;ʟV_s@sSV 1]`M8yQ jw]$-f{\ )֩- 0_HV': }zz"[`KGxG~)=ad4JӠdhJ†ViD؁/*(jVfqpb#6Of5|8T˗gKepլa}Hk)5*X.εz#ƮE4g"ȶqod X_˜_ \r-vtIBvk2=q=vDg;6IhW[P~J*%\g:5RYvf ATj ،mtյy魖 H \J#WHU52U. xr2k?!9( 4e n<]_vG򚓆;GA&xt8awuS-Aq0dEiVweV@_~5fB6E:(#~E(F5A(/ZvsIԁJ3̒>eD.ID bXP9גQ?)?Mqse0|,]7d,AKOr4&ڹ~iW2_T]mECH)],`MS>ぴs.vDk韻3U:Xh)#'bCi#pz~)6ᇵ'2sك"Sv%`u%oE>"/L-y8&$',,sf6 y=/ 0KN*ej~xݝm#2'yp!ʼ!:)0n7K o}M@ފy.~b/(/aëdAew @J Q:AމcF`T@> `MEO~_Їiƍ@R({mA]S7gVqpF Ӛkm(!w0Zc L@۫Q7)2?oSƟ6b301WW C1[`ܮ2՜/^{Z؝ 3~˵'gy84'k6f<҃G@6WrOʖr}i+&X@8+_1!&Ahti2VXٲ2jV:f> QPmhOtv^]#KNoA+X*efC-uv6]L܏Z U?Dvy yI %~ȦƩfahC >6!s1H l" 5TJ˰ /\B~4 Ne+qyuxuNĽN\Cu Yէi;$9J~m뇔ήm W;\ 'B`fS΄kƽl2Rgx%%~t6G3;s@ B3W4@@Ǡ@N#UCV5uK *%mɽ@dȧ>um^v nЅS]RHK57$@ѐ8Wm"r6.]v P%hk:V\ؐ% dՕU,*,n-e'Mo[nDt?kk-dySSRQyԬ%}O8FIi]\P=bRËK6!D1CDB+D*(kafKK d.~~)՗ܟ`OaIƭQ;E8S! dr~",1ݠ}( _ew6yx<7phј_S:zQ`o! 35e`QӪ"t%{9~A9/Egio|qGria9qj)F8MnE+{1=@odx[{sd cBh=lkVXޘ T\!: 9{n,~ZYaQ j.e0HK Z/ ]GaDbN"aҴ9@D;E2X#yvϣ*0 @l ]FU?gU?{`Rqj8im@enNXDg!I^M k6D2ٴ6{kbekG]-a`}A:Q,Pp_ s|#کb)4><)]q1i9*_]P2j3ŊիݔhKQd|uDNɠ[׶xZSȰ"J/ƙՓA~ ~U{T1Tlԣ74~lp /<7[P"I> *.b٨pwܡQ@ŋƀcLw}+XUy6,>2.>HlI'χ :EULeS?6L8Cա(h0@{ZV:\ۑͻ[czo;&y0*?fntō0&>MD~ADӢ->MiDz'sմ+|'\P73N`I}>YyNziF3r%X41$tK6CC zImAC+%zEYN^ k5CFAN;wT|ŻWkDŽCIJtO&NUx|Xyr獅-Πk˝iph&kx*bq?晡=r\ܣUSmZb,[e@6r6pL8|٨hn&8W4?vp5 m(&c7pM'"r4g#Tl++\!-*zP{T]9Y rڻ(ȷcQsJ) $6wɳ1"gJty>bvs0wb@pO#aVb<vp`FZ_Fl?_Ң LؒU+R^D:Z# \ My=, v1h*`/Y벥 j}Jrz$ѢdhIQ=kP9Eޔz\]FHi#!TԐCe&Sb%R7EpRNuC/G[.J> 1{P̫l>:'}w/5M TSm'(ZZ DGkUښ 7JJ_1&76=#^S#X)|]=9>?uYCX":|4-~*'evw5{s?F 2|7[3 IV,{Y` dkMsSo]嘏կ|=d{3Fݛ]8|}C(knn3 z}dx2:H81o 6x7gZ klaT0C'\1y) jcwvMLՠĽpm>&$奾?TZDNmM`}JEjK*%ӹ3.wc<*VuT }f<yA7aӀ OǬ5pG˪5ӕkJQ -.>p@*a+>ĺM~b8 K fR$k # [G( ?$yp%۔M&x@)&a49əGzҒ;~ Ӟy jӾZUn֡eb8$\ЯL(;jmUS+`kUh%f'V4ob-[Pt 3\1)UQ4~cx F9R8g歔jF'z WXmSp?f)E-O @1Lc9qa_KTi`f~U#&8l5r Џ_@l%`WJ%0[CI܈w2ZƓwjͱpGץTJ2|3ZF5'?3IVhz,&a=t5}'gN\LXPE;p,I(DĪXխG gFl ϧׂy&TdڜP C+;sLZMN+EYk,JH:f e>-o#^@2L!Lz KEj!ffPXIU>z` j4,1wBд<{ #z}yȹ:6lUu6ȲH ڳDAىԟ&qP 9ft:u=oi-[DRն4{n}St>_;r9tH]L½i ˋ@sE2DW} V$':T Km5pzˇfxiωg҄ >ta(JPPOoJM ~&_*s:$tё &sk;(T Օ!koe8^ڂ~Ɂ@Z|U+ f'pr[BF t Y4x ԉwbXP)}׈և>[v] C_7iL.b'M6Hg;[PolXf.\]A3U- nǴ/uLső:Q奛0!-]7&oom䧂K%#㥚_6:h} )0|;g !bg҃/Tkz >i<y5!jda_3MPAQ!K%etE ܱc!z"(G9 5J[2X(rz oT>|Xi!d7NLn Oh|]Ls |UDj8} 31'Q0^ss2"ur۹ 4i5T>_n?bxSGY 4͠3H!1/j9_Z~uؐg-0ĤgC<.Ή.ưSObV'KbSX~.G;q~Ӓp]׺BJzYhX@B-s:ictqa7(÷vҳq<2^٦c8:zK_>k#JYkd+=ް$Yl^NQ:~DW'UN4_%|'2,"x[v Thϟ ocw0I5VNTjT]TX1Dam)mTSk:@+ԆI/qA{+d?M?ʯlӅƸLe%~wR-Іxf 7Q۬uU^ꏤ$ڜKDH᪉k.gK8+I&B 23*SBL uZBEѳ̶d[nX |6 u ۾MP' 8MD""Tk]/э]0Cj/Q7߯ -zilBeRaekBP1SS(׫y_,) QV|a;oOdhgm#i^A3񨛌_(p w  =E)a(':O'-PZx1v5$rSZFJޚ\8:Hߴ@8Zq.e^T  > f E.(-ljc2jzwV?[QϮz͍?Ix ADg߹6S5R0%]]:ҬP%z7f(y8zHyuR7m^?,G#WT2pJb2Sbk'&IW6hl(aYSS[(pEK{J+U[[FTִx]sE+AUHA箑#Haxվ^#M\? Hכ =pC(?>h]a6j\jH>Mmx9l5S=@t/9xJ,k l6B`wgpY5ĶV !D"nPeCU݁/2hֹYG)D o$86(F:iwIG]D.4>FCA%Dž{EFl <<*'qGT{Q_'ޯ@Wx_"`^lc Z E>ģ48cgӜ fMY n?Ir(5­$;2mPRNb 2'ܑ!`'L. ~Z1H誾0?^H=à/m!]9쉌5&|@% 5P$i ].m|/zA"Wl!W#14- ͻ°:cOy3gPc++`+_M#謖!])Rk5o0{rOrpl~|7"3I_Hu/ugyM ICtǔNe 7-(xam`Bأ:?#ŀх|- \Y9`,]"($d1*gxޕ?-aWl;r&4>[dJnO37-I;K8Td$x8I%XSRu]c$_#W.7<V~Av,|{5Y?1y-F/u_=#i>xܬ i?aF<0yBhv( t !0{\+ܰ8ڴJ\)b.?;{:k$ a Xl[v 5Ef^7A] ]rZjB3bhj2(U߭7EԘLX;\> ή`] T>\R<  P!,}G]&23 E9 /o֗(ؗuSrb*(n3փ+ND$cMahWԵn]dIPBOtW7Ɉ)<: TUtajOlVf(v  <<5zNk)Piw}#I+Ir̢4o*ZBkJί>(lU d] wIG'|Pv)vd9RrO!,`ն4Y|%(-Fq22ٓwē1ᇄs|(l.H@uT,6 L\/(.NakF9ʲ˒z)?*Cݿo/]#n$ͷV(M4EO`쥁7^"Q|9Ƽ)k@xnU5!CW1^{qbαwʽk5KK#DA9GhJ咀qąMl{22mZASGϬTdawB Nar8X韊GIp עâ`ƪ <I>c'{;|-h*A)s,10w}n7.\z9f7EQ&[/d]~3woJ-/ըG!2 >F?*Jw3.ᆝןFSI9)oGV`GL8Cu͠k1vhi,nb@Zo9)N"+F 򞢾%8bJ@ft9򠏋ně4a=;22C76 7%YɲJ_ڰIz}Mg$ (Ǯe?g}$E9HiG Ӡd2@LQtAǚJ]EYެbS|5(Nmk,#. Ϋ =)0{T% tȰ/EG`plE:v]Cq|@27W 7Gm*{1W-*ęwb`_\=ȨE`kH<І =ɔ,b&Yyӡjӝ3_so=fpV%vܣu@ECh58GR\v1sC-kWǙPT'J@fdvd yIUꚙ:U-K@ޗ#gi%[ !cqbU[sۈj>^88&>W󟑀hGuO61<^Uw-? a'T5N&&n7IG!p{@;'!?^ŏԺdfl~Yoj2 Gfv =C"_`v-Wg9V,8;ϱ{1)5~϶v5ve%3vk6~]Xashk$DzåJ¯?gVݩܹm|LڡA^+S^[>:陨WKVM:v1Q VLs2piUC.kb\uXy1fĀ)~X^y+m4Ӿveo%ԼmeB}BvkG^-sth-`笂ƀ<)ؔ}l]kӒfPW V0iZ2碍UDFF0R-k,zٻn{#iXi섻L6|l\On"=%v}7 }nzzؙj%kE+o3+v>E#q&ˡ'aq4+dzYcs}?zoHTPܚ9~D]!,K) JBzvzXRJa~84udD0Cj9љ4~ˋvT/zJD-Rͽ.rg8A-,FPl0\S4DNxvPrӾ#rv"K+8e8gK~(o\3^IRNܣ4vg Ns$+ W-a^mVNF/$dӚʙQ0'-|?{?$`P 8+ZXtmM>ۖAW oOWW.Ό#_ NZ6uyGr*kbz /RB<_fxԸpU&_VT`i=I|Se̛gO05rE4Di*_kds6a] j+faB{oPr߈|;Ö́d&i qp!~.x*S̤ґ\[-"Ѻ_٭׌AIjQwyVVJY̭N/y˳ۍ@J4qC(c 56Õ.6+  *y:硎 ( K!J@ҟ rU9##`>;g9:,08үIii|ꈗFa#r#)N ^ vGlp!*ZX7㶆-:Eo;r)rSLSr4+V!a$|I[#JLt69$M5_/Otٻ<ҍhZBDAS^FMW gu9-**~za[;oѻBtE awff*(r򑅾=1|YX+Dݷ󂐻l VvMt]bT쵯DCq_ͣ\v*Es ~b Ҡzc"Vmwy0va/)c< /}4Y:y-HQ1L%54:mǘMg8W0_!2On75D =&dӠ}Zםz&a$J'h%qD㹆g>)ۋ9T*{LZXWvKͱ2*_|׈~^>/#}H9 0o.K_'gK@+$*4: LTޖzǠfd K{02k}ym :;tlmVF:.Qu>R ׌ɴliE/!h c=Yk1m2^ =LuL e> /u۫һyj2z ™zi̓y\秈 -!YXC*7i#9q$,'đ^i25k-<SXҷB/[='=~ 8zA"! ]=#|H1 /I$~ݫ/-0Q$[oGar ONFQ,~*4auXLŜT =6]#uAPJʭ:j%to-PՏ EfD1'Ӑ˺/%@J[u>8gw*k_}jq!APm04$I/ЙEZְ"X|v) >8RI{A ߞK)$VV4a~_o]z$]42jThZCUhcT*iJ̽d>oG"x7Kcdyڟ (jM[*iUSeD+)RSo!a 6=,^9ep*<veӻ?|!sU'ڻ)Yۺua] a4t<K}Y; SB^k=le4l+q 7gt LݣR^l6V6 }i6$ NqMzkۀ; ګV:AiC_WW6eQIxsrlnz]n^z@`6H:GfFxN3[-@vw,NF}3 L V D2Nx'*= ߔ1j+<\\K6z*79V[?PpP♮RQ^͚z$:T2R"9vS\慟baćf@!U5Hb9?Oxx_r-ˋ_W'h/yܾnQZ|t*~*>*m Ȏ6bd#_Ă* $؆6Y|q|DRliV 3q=xZV5"ɝd Ped ǭR<%tJiu6 *vJVz;\V_UE9 {z~oXF@/4ч,84˵R3݂$/pԿk?i$1}d\% J2lRcxgIAcߣ<'|MYf-BP (h ЬuC(q'ADRxxԆ()h%qrQ-UzrK.\>J7Y &'0_X̎k-,'fNb dҨR b!%~*a rxCx;81G# A$ W59$эBB@SS͒Xܸ"E<΋[;y;}ag"tUlJwG-^yQ=cX2KU}O[Uqof)52QpHBFLG,cG]:j ʀb/HhbvD!˴ z{?B +ۘ62Y\9[g,_dkn@C_$F q hp6%Cy7)44tȅJl K{ -7}XVhQ `2VŨQB#󼦣GSLh:*y4?5|HA;p* ˿_ d 6E A_'J+T< iʌO JITL=|U8nfmDhJ8cxX^ͨ$VdMZt2{,g`/E@bO] G42=& ' 6,!&L: V!yOK*t-Vx>ܳL* >uCd)jCbu\Xu!k~JQ2)'FunNu59a{ T>_@8Kap]e@'y:P9@%mgx AR V? aBI{yfg\*/MO=%C̺;M,>߉/*cD`V=hǓ!v.sDg^%u͠~$wTI 04%z=ۮ4x'$UG1y@>?cLvkeO+#i2/Q_mΤ̅g2cAi$G1[P׷(MJÜP byF'}iDAȯhUOZ%2f^+wޭv1 Q^{?ҩMܦ:[k6в 9"T.l lT0` .]M =*ܵl%*l&&Jҿ . ܋ i]M3h\͌ $ Ak:6 q"(߶EY /$h{GQ @ ?:Go3@PҨ8<$C0ˠ!F,CmJM rW0@,f.{y9oRI`%ViT 2F.ƒ?uc ҫfGѳ 6C6 9@Fz/oHET泉, BH@ RgC~ 'RwIqJ'nޘJnx0ڬW@7+ $7:Ӑ}+|o.6=Ei%/NB^nrWwg !*5%Xr4YRZeh?k'+˵?\[0p.0w@ywv&^g|DķQfK#\/UH)+<zG]pQ3\A)ddSu ghz;mJ~!kxMP$i4"1ᇐyK@Qd^F9W)7NlQNA†Yi:ֵ]1iF7˚.V2wd,DUT 4egMRN @s%ѴwՎf8~s# e2k=3tEv >0J.IOO(zd i?“_78<>^USYA;1>ch?|87`J(v#_j#^1QUSˎ vvjhqL-zY 49>y7Otљ8Yc84\NTBv6,zk }ҭm詯@Ȅҏ~DJe.@4E%%<4Q)Q LDž"Vz*'>& R[.4~MߔafqZmD^0' 9R6 M6^8c2GK'5˽2>y_/C'$ڒJ`/ٰ-|lXɈ`3Oϟ")"?fB- 넜]=hԤq `A%bfCzZi# r휨rÃ_4bqqo鹮TY˿jIO뀝c4h:, @rk)b1.u,@l2 _׀Yb L'pI!Wh Wϒ*}XaO l*<3l pm9Ci{tCU>$gUsXRu,M>!GjJ2n [,nIqCJ&.1L ~9H Qa]}KOG*\uZngWE3AWdE)}{-&1 +p@LRZ*IYIpCŢ캟& ''R-õQ2 bTӚTf^TeqLk> X /[!P$_uU򭕴G},|uIdJZ^H 2`rWJBܩ~RA& xWz'*'d w<ֆM4 zEc+] mT[n4"ryjآzld MIњ\~q.K*]ƷTyU'/n’{ Ya[@뚔ܬƘutjB2vWxDb[܀z+)vdpPK :2bWya2ܱ\v6umh JZ ~^ K3kUӦQI\lJKT 즭W F4~˕D*ΡHyeZz,|lJ0}y7Hϝ?8-)M'hZ@rOvլr74@ga'Lg wjF׍BPJz>g,{!O wtHS"| '\go @VތeI5|ei {w:㿥˱[vuve8n1B/Z<둜b׫Q#4 <6a pRX7CveO2}#6gNHtWK!KEju" KƁA? og0;LVO)ۧdUQ)fehxj~m(O~Rؘs"ҽ5_I0w2V#M ^nE2ݯ [\9+;O*pv$exmISPŴv?rxcԉ4UJaQBZsgU\%Uԋ$B E6pɕA2S_KB2qqܣ^o GIq`+rބ"A"' ,O(#5uU Pԧ$/Ks@|3AGvA.Qz.1ɒ^%%j8rofIA>+>6h3ߠ xdT(H⼑PQ{GZ{Hl=?(}Tvbo!^o2(L'])/dr$rKoL* ϣ_vYox{0ʠz3'3r9]yo 'gr? {acy _"_}&eBIuxY q]]odB J_9ZI`1mDrD=X2oq)ilqt]9tONT.bpxy&'ǿwV*v>yE#D4!VBz A2 N)hrqhݙMsj:[.1?.jǵa] >FL5{kf0X@>eOgja0iE}A1ap1m=e)x,0nOΖkԐ/Ꙙƕ#·( MD4a:(6bB:rTi(˯@ϜC!)ّwLl1M"]=ل?]MKT *ǒ;#'y" N;ܡ'oCڨ˥+k_ ( l{3==|hƨ|jowAI͆UnC@F/PkwÑB &סFܰaafL(%1,C`_Q$oE c@1A4oD[mzVjx& ד fv!ԥM=p` "kB'3k9 J"-HXyYe_%hK3^^199ch?c=5`N#0çʐɨ~L~%t7qt%y+J]/V)f:^ Ypؗc~GʚD/$W۠o9P 8 4{!E)5q*l~Y9edjeDwQVfܜ$sll#1wC%&{E'XBLab-ƙT e5t~(GNx)J`Zh7|Fzy{"kV߳,`IE Pz123( )Vfq!Ԙ bx|y eNI%%rk^H 2%9%`,kJ+1w=8FK ˲/ WQR -Ƕk@)ڿVS[ń\?g-#*RĄIh ՗B႘am:e=tg ,H/hp LX+<9TUxnzn"X}|OǷFY SD@x^1!||Aqkxo"}.WFć5oY~s:Α| ]hS|"{X SC!A˦{JN6^'ɬv: Z`:.9L<:FT~Ď'W-h8\Z}X:55HDBHU)dWU˽n:^Gx(uV/B##pUυdtg#\cLXw@C$D#d $dFG]yE6NK em +3ؓH(/ VX0yQPo5c4w/MԆaNe3fݲR .lb&XU zXlQ#QZ(9JVl@|PUѽ 8]eMX5|i8qYMU1Yx%AVt^>V5@ÆWtgF'u$ON?j*y i凾ÙѤZk:|*iD'h&H$,ʁ/A8>^hwoQ% (z`EyjlR/;쩌gQ60T{P\(h5bCE?BᯖH7`n01Lܚ pU* \|xI-ijjEdz`7bD9G`W0|JN<8cƎ_4xSw1dpj$2baFM9_neX]itxUbUp:p-t9!K's _kԞ-Yhʃmai E]'JpF^*MzhW4I|eSH $`;Emm:|pA@-:^9P631S>mc=#ex-w߆]V ҝ@yF5Mr ћp$7R2m*˯Kfc"y6 *)7d/Y^q4~)zL v$߂{DÒ}N@Aaq+;,osBj+ל_rgw8=0J֥H8@ZԸB֎:b^6ZPX Y~1gr۹WVñaJH%B.;yr)|L |ysۑ TQ@YAhQ*hWP*6a]&?#7xRe/Ӝ{2cm" 5pɇAb$B m /ij:Í6M~ o) ^^8 *7*]VUqDR:v XXVm(`\Dʷ^@m\9߹Rv628fA$Z&Z#\ݍ#FUl4?A2n/Mw\2 [5seUC@arj(J_7Iq^yWOʩ$WbLe ^\-zqri?l_ujdbti%q 7H'5RhmMhI5VZ({[o1n@%T.Ilb3$(_SA?1d_AYK_[2Y4*($I ?ҙrO TXթzͲͺQAPER!'r@!Ry"rnFm2iEU1۰#zt9 h}?7]4N(AG鮲Z\ uf3}Ve.e05^[]DŽt҅kfLkC"k .ޒ O4Z ⾮[xHGF+m oNo50R0*h❾Qbz?T1,ځ?Sb9"q;@&Rd !1dSXcCKxf=@+>qkQ5{s$JQ?tEWKLxDʴs/.!+X,b;TY0KHm ~/b0Vse\,lf_oƼyC&j [Dx0%v =(ԡ㞵zgJIAGBo*a;==̬=p~,*ՒUSְՇI.`Z2_bbL|h ))^Z)S|&[3Ȧ˔ GuZ5H1Yq0vbVтeb#h:ƕPלwgӱ$-4f7IIJ)^52Ah=u²xDtw2TGP>y-A\Ò.{/[n>ç s/aڷ]A Xݹcz[&gW+qd%hS8S 0튣ކDJJ3"b8Lw/Xh¨௎x lH&\p٫T CF#Ȅ bdK6#3scmx9.V롾,M\sAD@ߒHX тm`X̊CzYiچS:Q۞LuONڪZQE}"lE<6ͩoݕqyOy?8trH'M>y{IPױ$"_/|똆G&mU!yY|~gj;?N13!p#u%f Dc/+ n-cmPe;`H ̨n#k v1@jܛ!4[< x1W5DtRn 4)x6рO{[: =yH!/#&X}~@>/BDxL9 )I0翼hn zG k  L=O+iTHf"OiwkW} 4FJ8z4~[eaXVDF,@~#HYG9ttA{ݎ)f>a:n1\'x?ɮ.ny& =_Q`rF\>R(ĒmCysn: h1[G[[+d!6%:Ҟ!u%$9t -,Ms,A,bk}<`S.>\ i`GoәS6|5Y|tv Smd_Rū26pZKђ}֥iU! "p]Hxwk !oVja()_6tČi9kӹن(8>%PartW h\] ~Alb(p|]fH)ȕÛ"̥LxWu{*%dU6T\Y V{br& uD/zsjD&it‡O m'Ol8k{Gxa>eDMtaz%϶y0ߓf "]+h̃cRm~ * ʭ?Y\m~:XU\: g6)*:<`5|)I>yV'NBTﺙIY)|"yǧ39,?A𷍿 5- ^FC9g(r*7&VxrxәD-])?,((r8 {Ȭ혟dDE~Hb~:zڤ ̳:lEuUȚtyУ詏SO؜w 9~^PWwMjՑ#D%̘8)M}Ӷ6\KG,>ppn5+ß`٤/'N?Wρ Z*gFIKriTcUJrlLFCL-\{Ln$Kکy u _p} o!8N[ER7zn)X+\e?9I|@M#0yh5O8`XʅS&˃dftΏ+ NVQM3$[VGSBOXjl-nPQ]w(MВ-t{Ni,eǞÁ M{5OH`EN`>B8F ZmDNV<]x` YmDa1 =tF(Tت0X 㘯)n;6ؓ(|B[L>Zg&m/c,38{]u`}>ȑ :^B0!´>Ka]}nﯲ-3GE1NAIg~Dǽ 4;02Bց%~\AM[#² ڶI (l`I}ȰVqS6l | #N Gv~&v`RPX p(C5Xdf w.Rg3hP|Ŀe:4ATV۔r< ԏQHiiJ9HIbGpE4.}P={.v4=8kNl5gD*?M/:]VXM{ B7acn" yYINMޣA9@*2R;`A0He.?r?iʋ87}Cw.PyZn@E#b!0V&WLL5G &UMLs}Ѻ5 1VD{WGi<\;@ҙj,Uk@Í4 KxJVFk>AV\M_jՔ 4el}Og.md_ٴ\ \%KJ+L ;ŒȅEu[ "޺RX";eqaD\o=t^&AW 5M鬳p\ 'n Qcq@tL?=T!bd z2 mP"s%9HY8EMY![*k4boLnչZ3((^`Ż:[ٶm%\G,87j ډ*i_MYSLD*.rs%)mÒ8` ?[a/Q޵ K sUg2GvbD<7RTh=P -+N7zovYE7Y  UdJmV7֯z2@nE ,%ڱH #F숩JQd<ocM5{UI+OOMO>8Zv&bըQsj 2Dn S&+HHQm0%9"DCyYF[C$ط-11wVY̮TJ%7pB7d_sn(%W^ K]/(7ڗOrpN:w.z{Lducs4B "vi* |.V#z›dISeK@R63׺yBA' = Wvv*=qSZT!C>I37@"69hM}1Nwcl)2ʬ_U3D+?3nhQَ}ƨn͒,PEv#ަ;UUS`l\jK1Np!:!۠i,˜ط̳imʶ%u8A~-eJPs%(\8T7"MQCmdn83M !=hQ?LLaqy"֡66XK}X]l<$$*|L^tpjyR2k@Uf+U©D%fKwv+7)'Ek 8T=a<llL EX_=)U&&`0$ΔȤ$64p\"goHF࠯KIn^e人+I F8ÿB n4pR wBk-x,ޓ#\!lLiCY'LUd*ԏ Wdp2|sdq;7ydp{u8ʗ/pam(G˴E; wRK1r_uMA2BFzQ]_S 8;м]UCg)eQV}_ OmY9y"%;-c޻uMډNWjHDCرؚ-:ߖ><V4y@8.z&(t!08e|m`}Tjtkj%1 )PQ6 iG-b. b)؁tLXtDH@,jw'Sd!۪n :*ޭ"27ٖ}P^rO[!e+|a9 ͽI.^.#aEkKx3S$eiy,9Ȳ̮AӚ  MҦ|zcqDq^76oᤔ a)pxӀ<;4`U\8AՌA=a ȫ`O^M&j)9=CJU QY*G}uƘV+}TG~dG&IɟW2rlq]rgëm7~IN"zueK|Ffzu.NO"YBeqZV+lǴ˵Ɩ.1؉yaA]KL]UxjA :qenƺe !xUNMY ( 4+GӸncd{ㄐk LZM$8"r–!7N3*= ܢg1Au<:,v1cĶX7ba$}u@`5Ӡ`]B%0zJֳ :`DME9O¥kC3 5ofsI*Z 9)ڌ\.8"l!2Օ%^k& :QC@д%*c5BmIבKQ_G"vɗz9'_YG 6"ޠE(I)ʜcO)2"S4UP訃9L5SL  ՈeJ4y#"㛌I9ސ&AI^ۗ<:| Xٌn]^J7g -zNyp3"m{Ƨ5\ih@{NG69 Pkm֑hX t҆pxt\bRҺ}q*u\Iۀ+JH\Zܹ 7Uu긱&OeZݱ|p\#PP3z!e)x&_rbNը|qB~{{\Aeo?8M Ofz:H8m;V^%$ʽ ^NH xCbATgk9M$%*ݖ?!̊@JYJI-Н nY텯eH_E.`bdNs-{@#`+ys )%rWZguZJ0<2䊖V8oD/&∆f^Q QW(fA={ ^e$ ]Y9yG32aKSd U?rdkƶ w7-~nOMQ4\>e[TނP"t N|F VҮ;a,MwqO13JP x!)Q]}T3^v~HcJ'o3/bKeT vPO@@֪E<.n\+FfЮeDZąΖk]p9+'Yy_>(>Nj:K3>Tb5&W_FWkj9r<#{$0sB7p=aZ{ Q@>%$' -b3LӚXkLgHˌ M=k t)V%ḀMf3HH!屧rp^RQde1CMnmUARI9PqP@f;C>md WPDCzU㗍2a(hZ^B$" !vUם:G ]'K6d1 O'(u85)zf TcEm ]xm":ԫ"Xl02~м;u$? 0SKd.SU$;e*1aQ}dҬ;0kkh*#kUP,$dmSb[H]mŮqq*PX^[{'POz6R]Gg>}i-('v"uѸzPXOjk;k񣔑ͬ3ג n5?(DtI_n}fFxC@ ?y`J"ʮ2ivPFDPORMuW>^\Zz %ޤBfS!_<\_$l2r>'>GEtF_À=q=b" H_8x+aGt-gf3[q^>R(g/\m,ƌɎl m'p:U.F˧H+Uc4 FلKJ=]V+nzƕ0nb'=()$h*\ڍ>pur.9L=~dc=FݶZ\9b}e` a_שǫXx:swAOoĕ "dDbTYu`: .* sOn<ùn~98Լ*-{JP"#h n $iT\=LLhc2f|QE襼a٭ օU?51e֐GK0zB+h^F2 F P6?YU q$htNVrUNBM/PdRAa`!'Mwl mU;xkq5+b(DpNd6Ly򋕖ic!iі0 ѻ{!.'\Ib |j)CtfipIz;eHańڧeKdN"b-FKF) 6 >3[df`Hd2SF+nnZ6~ޛKØ _$}yT>{k翪qDkyޖi/C|j^i LX&h"5s T1"KΰD!wxStFS DaGHc`߅G0b)͓rL\v=oiUEUŅ /IHS" M\dI ?$SK6sv"VXNZdV%bJEQ["Iǵf0#צ\[7{PK)gңƇ [O)V̘o8À~5= eG%5 Ks gL7$}жn5HXmGLsg}Sauƴ轏?q,V2 >寑u,PR tܞy7²7}-A؎KDD% d6icseJ-^ n bݟrRFsT-f{h燫BB!BL ё`Mhj@!W`L`Җu- ݢ*ŞW$WQe(~gmI7KV0fwD]ީQ43*Ճ`-9*9eM* ka5;5IeT#U cdϒ múQK9`CKH4 ;^`t+D߀' g&!6OSSbhg'% [3Vhͼ˼`HQHUfˤ1. G34J4QG @v_ kpt\imBx;R ݠ/Z, u] }1;ԡ|ڳ6G@VBӢ'/Z;܂U<2>D AUA6}WgwYSY7+!nMl,x;ԳI.@A}"ttGI.M*wV#c]v`?7z7<]N8ZLn~ЖN: M0c#苰j}3fQd.SreHC/9Xq7^n@C,Y e7p\=7+xXA;>.\m^cQR.-qEX$<2'_{U*X#Byo4j{d:u~U@*UA{2L#؜!aBc@pkq XPy$9|!G2ߪ_diE] xA:yb@ wӴĝ֕k„ IK,sgD:JBQCa'/~u ;[Wiʺ$N_1 ;2erdLf Jmcu^}z >ȉ|c&.)6&fF)Ր'TfN%k}oFUΘz2h_C%…Tz弣FX)rJj9}쏊)/_|UP_VBe γ5,o'Gi-ߔ}MPSR&}X]3sn%!kSm{DtwFݝ*yM<S yKjZyBBTP[HO綂Dž.=n$?M0i "Ѱ蟺 O~^r +5~*}ku! 3y Kت]s4Nu}~VM TvCz>۱Aƒg?yi6${^Iz#x: ZiYN}oXm ,QۀHh>_Cvy}@z ;CWg|a٧9xd;$Zܸ"20 ~!cQ { l΄%JcD% wAF}jjCu. 5Єk!> ;_rU\:qNCxlfّ/)Tv>[؇?Y"dRtl.t\ $ǛK%ǘ(YGYnfkV6Hl⽁+@xg{WY~zҨjQ+67"Snmei5aDB;l{β.Ba/S(OhsuGl+-F&@!^ߚibVޣRprΟ+ns@m,۲6Pؼn/g**y6PFngXYx`7as*)AN۶& N7R>N8 :@_r.mz[WdΐPh}8᰷l`+dUWul /=0pN+Cn X;hf)VנQ{% q@%ӘՄ w±ghr٦Y?ƃy5>vֲnòA_ 1ccndr%u~s^Q s JOoZHA畧فA:[? M1km]DYo216O!҇PZ%U}(:kh\T`lHu*vϛ%5> __3Qfb[݁1Ϟ 215G9|,&ЮO%1fJC-yڐС(U6xAE8@~Fk"۹B6&s1!HT̆4[bDGT x=ջqo22r'ߘ0qp9Wd>}[?55z[gy4黱j1o=$cI޹}PKiiwgs5W.ͳlhaq5.xUKث!ZiG2̲O@ݟ'Qy˿jptݔ>q?Y $  eHa>s)..ֲbڙT?D6 ܄Q'˦hD!׍*(0j11J2z|甕з0ofJ֌!]<@E# }TfNk&j+1SR5X[&:VK ͇jp3 9Gum{iۙO>dc\s1(M%uvȅ׈㽭f;Tt!4Z`FƟ^Bu G|?g "2!)7FSqS; ́V[IGoqkK\T{7U:BPQRFUQq1m[+uE)"D>7)A7Y8w.$AdADx}QK^ߚd/_,5ș%$eHҜWDx4r̓L(IRŊAny(/8.X N|4qNU 3ߕРPz3فpj+_FQ`ėȴx7L`Slt/ވ G"8x+gb!̸n.DGgDYfupU ;-jeSܪgA4勒#鳠񆠏u$b I7Vl1&I( =--@HUqA b+BR ~u꼦`VKo ]csuAPD8/><;2*w =|JJ\ AwyPuS+$| *ڗжP猇1jNX-!y6%6wjn&$z,|JTV"_AIo)<|Ax8p5gngMBtCe`3v}'@o7 _CwzRcU1F n0Pa#ha;_Km&\S_1k:B9N-m]-UEH5X@+QӭH_[g(x!ζ3!qO7@_KwNke= [ɵyv'>BvۢVLђFbSn/S/~GCZTŬV2Kr?^(>*O ‹xg.SI'M,MB{N?8ąӽU*K2\M!ׅ+y!fv($c2C=M'/ʒP8_tد.h?nɱ^3Hm-LVɛ):+p]I@]Y" sK8WƁvoKQs>[P" o"FUo -N[2|^2uYYy*'`<o'axJg} R8=uH}smB"pQ4=ke}fY!$: N;1“ǔ"~0z!u=>-)f"]2κm( *OM#QړRɈݝߒ ~|Hz b8edȬ4LT.'Wӄʮgͤ~l:1A'5 Eɔ7 @t]MVɎ)-:d>ވt`iXN3W!ۏpNaޠI:V]8gsӗWGo Fa&R&rǝmD8!|@=JSNvZkЧDO"6{~[],0 ͈퍡GO!`STp3moP)IץRosst3^ {u[o~e+W>aCenڸ[:;GvzMscO;H]sTD5I;Yb^;T/vYU_LiyF/BĀusrCc']g8lŀa^w~-ơ9aCH;9n/ ~P΅YnzbI`Pp}\ێ^ %)y<ϰﵞl-y硣X0t|7*u3]uHՖtywY'R9uwN ?mAa=7sw'yz^'m8ўCdls AhEGA2P mk_{9Ƞ5m@^Lg u$TR+V ;Q4G4NimY["BVC*'_>GJd]ݢ3A=R(}e޾*ABĺ?$eMg w"_UPB=elnvz"3[?{M˝qf^3L̢Kg"L@_Doɟdfp +~cTO2 xq S5X a{&=b˅PxF`rE)MHp^cMU % DލjR:7AAoѦ5+9$CI@l̐&|4mcP;K.[ 1F~_ĝû EY157\^Ç!ҕsi)07ރ`r}gR1֩\LUL?-KPZN5S\.͛!x,5&3Eeg!2N~g/X-hMle-iocDt{)4b;04߬gP*fQugq,1e"%75ѦD*Bp./fz7"%@Җ4֋L2,,B\g«.d/sf\,|`ZiDZ62_ֱ6`xLz !% :[^EV-#jG.tKmIGWlIMQ.GSڑ#Iu%u~9fJڪ^uM^`_'6huFT->E۴d\#iXLsGU^A ~yv9;֍9Mtˆ7d3 ޗWe?/bڪm){ [P?K$gz$zObdLitj)4X*p)xd;4 &BrImO?ox )i %Fty\ȟ~,y$2==Le$Q:2FAL)>DBUDC*댦Q$6K&?..ぞ_<|O&;1c«Pb θuɌW[]=M*LUgQ({"<c$e%N _ h4=Pa_3J VdE'OÒ|b`5%~6|HR6_YׂKC♻ɩ A{a>DHWm59m{:rkUʑu $JimIZ]J"{[$9wZ|gҺ'yr˽>QWD p"! r 6,˲AZ !K!qn1TsS}2DUd$Y6KꊙRwUi@`,*EAVƒVh V i;DlD>u?:8DȪնL3ys2yb>$E3`᰾\6"^~&Z.=ݿMQSNByx_aۑK 3pܣEm7[|~)÷?|MNUzQQfg2Yc;1"" $ O314 tߟ\J 4ʸtYi<gd$(l(lD7+eUh xR2#ogƐ0] Z=TjJĠK'PY/}@AyHN$P?~~`.V$Sk"Y'J#G€6P|8΢Zޑl]+YRwkk##oa% χ_(ŮX =znjJ Bs `,ȉU3֣ox)Bdںտ&Z%3RcI>>K}Fv#siV08R!nI```t`IShHiRA7eFz.[(c!~24]o'2<_&E 3(OB&2vV%]*{ԚҰr؏[Qz#vYBK1yfl6 py^[ھl%E$lh|euM&jHWM[̎RXS s&h t/BU>8dLEW'q0gt>A exN(sq?]Q3𹨘;wWh LcH_J*w>2]Uɞhй.am!kg{ON}UE{ҏD NN#{ɲ7;!q)<]*ݖydᚏ?sY Ǥ0.yR9h?Ý~8NvL1#D[h.hy2V5shh&I։t m[-L+ˆ5Ƌﰫ`UlfxMe8*{g8'0BK?L@o7mw\]hpG.6W Px-q^h2uPxEq#/{cLܨoUOq~hd! m_mnR%Ѫ+4. ΄Czj,Q\\}ct느~KH=aKf? ߳Tq@-XNSfhdҟ/~@#mݡ ȸ7~#?\Ís%ܺ&'⌾K~:ezjb S7)q_ポM&gAs,rẇss6=w S {iM,y2$H_g gk5K#w?QOk0@[T^E(5QIHg'iem$U==P٦F0bpƳY/wǭgpO ճL"k,b:i.+Nb4;nb17nGrMZ -蹼jSSO|(dYA)s+N,j[E1q>" W@lD3M:uُc$ͨ>kF'3NȊ YV/ ҟqu)Jpm;"L_3"bdWerhGqJиS2wU,[i bI@~5HH%n$U?*ifKJOqeO|Hc6|Ɗry+ԢpO8D_ ?Q6z1>(uzDlO=0}ciSa}C!LhIX%*rcV(+dk׆ WiZ#kj{-QC`޸a"G2uER#6p4Z1ݝY28t /UmIdAg +3; G ӳ=\Rnroe^} G.զCaj\P.E:ja֪w>i-]׺.~&Ə=M\u@k/ <:)9],Mqԏ;/ƓUWV$GTnlNI[syJ/SBF1Q 5У][F )GV.b{7ggvAvL j'х^Q<&Whé8.Yr"qQ,qbpUNx66_8>Xcp~*2M1X[ % /`6@ $>lZW"@b+_' BoBoR\M9OFݛ)uF*։pr<؏z4Mo#t?J]d~j+.bڱT2'g1Wqe^{3]u"o {Iq+G {oŬ!UE5V$cz h#`t!~<@FY$'S4Ǘ5q; Q.$'$rS̆IP3ũ G1U o^Hk3A@Jt W;^xƃx!FX)+,xH^1F:Ԫ\bLiz^.<;- !aO(˽$N;ЌN b5,"9yC8`F#倠܊SݑҤ|l6:g]RY&VmC[ݨѦ5x] Z_Ɠ@LrF&mťMD(HBu(p#;}Yӽ\%{D8qIPRr!쒘-e3)&A͸JU>q+5kw\ ":9{ҸAuTfѝW0\/%dc=} z- RF}T.{!N.*qqiFlZvp!ZZ qo96i+:dɥ&4aSeHTE09[3:вH{ & 70L ( R@J2Yּf'-QF!+->;d䷹)~#dF&@uAOƙˢw43r KQyn? 8e8lbl&iFOL%4oh!묈.(ICyWi#hA[mQ޽5 e4k6/(1r@c !I\jZCX7cs`RH[Qdy:1f=>9We ۱_ 3?⒌TB#`!U:WE_$s4Sʘ^2 Wk8e۫p&4W-T=%~lF& zlI|c:YB4l Kg>v~`KQd*H0qnv"q|Eq+a8.q -Bi.r;U6GX˱cWg:QgF9`.vx$)lN ߎdotùLE/HIGt[hYJiZc΢8{x4ݨ>OxZɎE%ȗi8E>fAJZ˂.Au; P9*D[t9r@SwI0BM-%壙\ȗB+s & 'z1 '#oȳE9{. M7BHo0,헪m4Kp B:b?_*|w`3ዂ$*u1A-jA*)e~߄H^uRɡ'6[  )\;U'w9Fi06HtוpEL1~x6ALA Gb~drT50DHzNin 'CSN dAɟZIBn rU띸7\YKsSrK;_bWߩLhw#YE{t/RgcwX\?&ʯ#Bk[|269Uη45@PMV´2KrQۼvLfBX. }:YEOzxcj #23ea8\6֛B̜VLLN×sETXA}'oKi>=G]${z:׫mIݟD@ }SlA- JчLAIHh!#Jyn>m^E+ 4zdlji#jDB#aYc3+ tbZ"}$̓+gu[Ry$ Y s!0elo?\7eKY`5Ĉþ=[6|~G`*]{7eE?$YdbKj5Iľ3?/ g^ZjEeNyɖ${n΅H9ʶBؚͮP|틯*ʵN NԵ,+i-҃t ,yy1> ժ;{ F<ʐrٯ3yg'9U*^H@M;ٕl}ll7Er:*c?pF۽)C.2߮iY)+晊+WZ*jRE譈.E^B%]t6S,K.h<=1Z/uI%;Xugu [p ?9" 亜zowJ9z0„e_9q0dUWr?4 ;Aࡪнs XxgT&)FXTpK|mll+xp^O-cNp>W(UKH/Ƹ*Z HؔH]3#,fÓmf ] (.Y49@,gpbi)/kOT{EN⽥E2@9Xz?~?h*<;DF$O8///5+_/%0jY,/"*Jn%3Mz.Oл2eA Qhq+p.1fR^{ %DhP"w ,+NU]=Bzz展j: 8\R m1+yZ_ f._ M.n>B|̏ _'ۃ9NJl'[Jg`EY;te2TiZeX,xbsT_jw){d$4o ۃױ.T@,!-Y5[X|_6KԾIj` ÷˻mlV߸ۻv7lvM NH 7؞9>э8~Qd}EV_8>،pxХ4#  D!ʕIn4(FZG8J)-%Vz (rE*{TlkUT|5ے 5KL<<j{=TAoz 7(oRzT4}[I8IR2$-Yݠ5 tG~>#bNwWSl"(oEۥFIc`HMO0C&`HJk 7Zo + #o\İ D"E3bO KXyzM ҈ D'#; æ#_jpdV0"DyC>i1tS=^5BnQ[Ԙ`c#m5欎'3 ֞-e t' (Eq ~)/$щj$Nw2'@1c>i#| cb720dyH3h ڶ A j/As4}Iݲ.tu!r^lwސÿT%jlĦ/,LE`Ò`3 J]Ùa*xfgO4̓8yKdZZPue$SoË1V!;NK`t/ !ДuQ͠9uH_J&pKpbm&5=z5WAlEqM'Ǟ3lZ 5cgf}ۿ?˺6Sh8pO-,ѵ S(ZF]ŽAO5k7 wH:|N"1"Aϊ'M4̼e/No(l_H^-29-ΏF f)|7Zy-NvRTdZurt)3;h!{D:"ʱ[]# cѬ()>I7K2$2/F"$_3U9E1\&YOt$wƥ @7˞GFP׽pKc&Vp#\ZrtڅiQT3QHŎG\UC)0uAbGck#\5ptHW:M5 |(Ll&cw̪2-)Ù*}ExfGOႏI̺S7h]5~ X@^{N 1 2ޓ} UX1g9]c`1jxv/H̶9C(\$ [JYyOAKcG7Rh'[/Q)޽!/.Wj(wᲨP璓 QC<C{GGinMwn8׽~?Wt{O*kN޾nLYM[]nbH=+% k!U1&c 7ٽ˺~/(h‡ܸ.Jh_^*pTO'-wu=^GU*RK=0r' %<3G9K+ ęŜT+7k1ev` Y7gwim'MԜ[ϑ5IFN-ν$::+@zb$`14tGsx/L !qNiwAkObg{_"㵬FOU_ ݒv6IxIq5:n*G 1U${,- 9]*Z?]vs$\9L}g$NM{Q K4Jր6AurSũt;C<2Ǧ$Zn)2Fݿq| ӛLHgCf>e,*VXiu4ltT,2xn'عvF#]RP5+M6 :roR\!6hsu~- yD? cPN53K˝5LAUIx}V:zJ"s#0=:PNA ¤3b٢+}T/d%_`Ԙʟ͸&ae&)G_ƒLy̬ CG,w;kKͱ{ȁy3ʳEV oޔ?|cSg} M<gv`F ,cМFq|\x6d5٦]IFF#wFbJUuB%s@ tL")p)#y:82Iڒ|q |xd.QcyH(@'Z(Ctwsءլ0`86 °sy \ Kq1k}֥yu&tD*NRnsgBZC=v}I%yg?94 !É#ʬ6LeС & -h]$+t 627g913'9UsVE0  Dd\`蜺" 2{ e0q,V㖸0%j Ji5ՉHWlYo)AWeD7l\A>{K*K%|X<,9Ta3%i hVD&Qŭ|aJ}%ʍǹw55\Ftwk#Q50tGos2e:ׅ/ % ,6p o6S7땂>R\GSNIuYZܕ|./HACL_ҘF27;#?𚌓ɎkH;Et0C¥i|XyW:AGeHAD eQD[9Ʉ:oc@Q 9CX\IퟲmEIcԆ⚺']6B-I6XgCq{ .M\b;J GS%&PV{9tQ)b: i~aHO "rC:Dž[^Qg'<ݏxAĶ~tS![:bٺVDMwV8[R%[V7[䕲F$JWMd} ]mB v8Rh#FƗ "I_OOmh2x-zs%V|SWу<,G.V"U0` >BYx#h7ܭt@½Q{e mص\v >AQ M$m(g0ک۬VOdcFyRnW&Z_I-w^h[r]21C9ITFsyH}F7x὘5ƴ1 u'12&F/Y NUeb]pP^ y*9p4=2*IBzf%!^-Ss,0It| DzCvZɆswq QqTs#%='iՁ,݁l,P$QQ0DD.pnh_t1:MY;[@tMecEߟi x|}C8Zw - J7@& %^HTB!=a碩#cc&' -ǪRz"JiaɉtXpGT0y z98qgR'4$ )^,DLMWJ_d[3dnm^T b=8F4ttCKWpM-STYđ7deQ[!'cG2])&$ƖD2dEУB)#|97CsN})U9.F AUk&kovCu3?Fu^^ =Dk,xOHC$ yLy:k5\ (U@(y+R3I>h^@BVJ1q=//cjDC, z='Q3Rv3q8s׬1-osMX)sXEQ]+l'j1歷F hdY`cU IdOeX a|AjٚZ"fo }/d CTa↰ `jF4Qvt%gٱXDSI[sIh`gQ>xqRUpY@*gd@QU>TkhV5~uZXN [3fezIQqY1|nP>8}RƷ- M=dYY,)?d5;b)F]Fۿ|ȩs|̫-O@. G6wqhUfݭ:nH5,ai9M;]gjw. ;bD]:;W4|[64c%A5{=,O)$̻ "ɫxgtYog*x9?qȤhAKR OQo9TU !@e{d.11%$gh+ryFӣFVBI BGZ}"n>=,{jhs!?mQ*✝ ̰2tNS;H!@E;xT,Xx@d֍un -(.{`m2وn \Jik?PRO}MKŲB#oez<2uҾ{QDaV5$0ӂgPx(N`H[G˔Q`wq~kءwџKFwRr0P`/x/;g7A_vOFl9a ܉׍qFs|ȍM\9/`ow" N.jG=G7}qENT(`dd Imɫ Yz_o3 EH cnUꡫ1XЎp~Bmoy;~=]Z ,/y[%k.bqf2~K'BELnZh(@Cc3 a6-eRo3*G{q߇>dejW[T}l|@BΡU Ҫk 2a\?{_/QقDs2$8)m/uX]syHs%ܯ H;;ymbZ&Z]!]PN.+p:Vf ,Щ̧̗0 d`JdE;Uq7Lu϶R?hVpV'V@:Dcuʃf % qWM%?Jzyfb-Z1SX(>2@.kSåN!9O1}Ux:G?[ a!.ox?%we/!YsF((Dc^>[g @_Sjx`a]ͧw~ 9%C ѓH5J5sԝ IC}V] ,a! zuQ}Wߎ\[®Mߥ)%VX𗑓FCZ>B>o&h/Kbh!,D=]4?`O^6N|jC-pQ.+íC4㷶ϗ{_! NX6 ԉFoIJhYyaWXZ㐼12/&.X$9 oa+؃' U&^?NOEs[^'XT?Hj 6% IjǮ[ܝ~M8c&1S<鸕I֚nc#7*rs#/6#ECLo* (h ?GS.xXd!R]Q @>B\YHǬ 8Y8ƽ"tspi 21"dde ]{*+ՠ{V^͞8}.,> h#WY>w~Tsǔ1Y(]V';Tz*ON%j5T:B>;7C*͊O3NKR(V5tjr"ruxe=-[\$nCa^/ƘG U*.Ǩgepk0h s"-(8/9Yl )SKgB[}-`%7_+P׈#(!XZгH!HZLTBR˽kJL)gt'V7v4b+{b{zbybpQu GRe4Uٱc)>+ڒy^UՏJ, =ns̛b Kp€h FA_#9 Ɖ'W+I$,T+UYϐvR'۪] d^<6[1h ~EثŹoVT8&P@iuD:S@"aK0rajgi.=Ar(]@ :H"3;xq 5]1dX**e}V-X+H3f|Z[Q>ҪlƷ:VsK+"l si_1`!~,+'j uцŅ.>{3d6$<@C܉]r@Iδ8;QɌ8W#VCL[,8x6d?\n%1A~8+K 8$P//xڧp |'݌yR Ya$u{v%bj\,}PLb0a\ ~&4סʼ J\XDޖmOwp|.;[f>ꛑo萕M0A!_dzMP3{K .ci70TATDЯ`; 5L:aq=j @]kH񝽾E Ϳ|nv/BNШ̩9C#-r٨q1,ISj7AO_g .OQY6]"I.yoH֝ !wd~L2$XH FHr0uX͏JlQ 'Kx9Rm]M&2~9Td"&^ϧV&q/3v0`O7qU;m޴d;NcmCʍnW=?=l^_lBvƾkSw"Ui0藹 ,ŃƟ2om)Ÿ7u"F23đcb둄r\.-7Nwrc7>P)`UM-b1#dPD7lY~?pTvh#q o Hs@plqؙ~4P1O$L f:n>vQ=J[,eka@Awd+pjJB++[|-MDҚ^?濨ݲ/oE(Z8w/4'Q-$iL8=Po vv5L&ED7_{;<,AmLր1ƄlKZjHkSC^W+@ſ;~9pyTou)mK0G3xP[o ᅰ-}kųF5皺䏯Ao3hC;ΠӐV=7JP:0E>W`SТ$WM:upr͓MYg*!_Ke~++gu~.s&#(Q,DؼqjW$U#GH75Ԩ̲ǔO?s11 W)C0b` );^텻l4kfdTäIL (wQp+oH[ Dd,-=Rt[D*[xc;<#(fq>KMy畖A帒Cg(@V34Ȱ l{v]`4 U):f ֞>Zv4!օ.[9Sp$fh\q8F_G&tP|#цLJ&U<|}cp7zvݞȿRDx#k[ٺ;${f-~ f C3+֋kUyfS vm]vGH@a@&)-WnC%l oQWGphvtIk T{C3IF*T؜`MESbmA y?v0&H ~ۤo pt,a"v=8\fgș!ݕʭu[73t.yyaRwVahJ?0ܷn_<)bt/I?o}í$kIL*<) eWu^Zrb }ْ>F+򠲿``j]3DlȾ_"}4P_@֬qCp:PfXW^R P$.]n H%\ULAWТ:? B_4=|lp4wO21%aTL(mk-S 5OaxQ\mOޔU6Cg_ -o3v L妨2없|\eo~GrPC5r*TfF))sbq򑾦OG\Pt_DLB蝕:P0H :bz;^B,wjU^3/V4dDpnܠs4e6y]7cZ2'QpϦp3l~A^? ~̨ƷS~3*)@sOx[s:2Y΁+U|QH`JSG%.>K[#'S)AƴvT`!]n6[& ̚FJC"C{?W)0N Tdc= ~RW⤤FH/({MdFl`ߺ#uJ[9 h8x"H 8M ӵޕĨtq*ܞ> ̭<@NXmbAS;`8}4WԼ 壸#./vk !^` xe57cN F #,c4]-dsU+&({ r,oa %[z jjr2 eu"hWZ SۦuFSMŢ<;W"-ݝK݂Rw=_y .yq.22ψ gr dAt6x~jqFY@ژ/h3>Mm+'VtW cɴ B\/C&k( EaP_nKЏ_ zZ)T#`=3@RyOI6(x" V~HHkӔvБ06\")FN/jv#5CZ4ķ{z7ƝG|2qz;<ڙF&#n ;.U8 _Nxg0_Dҵòa]ihCl4Ywy5PҺ*AƐU/Q:m-wʟl )M ʝ5B-G/Ja8$}O->&G,>&Slyg6vU%odAϐ9<e q֛X(˱=xAo"8yd?csƶsfsQZ^_/N 8x֊{k XKt ٞ_ .vѰkjS/2ks܃FhQa!mԖ<ĆL,_^ht%MЎ*z3s.JzznuPOi(VȦ=99}̪ { v5s7 hK|~wKeMORa#)9Pkڿ"tck 1=>G4DQQZ }=ƓvO55JX[ۺ&f)u)TкCŴD4Ź}Mxm! i &[4I& Md V>a]k;?Fi[ud{9ʎ qWpwЎy z1Q͟s[ODUybH~Д+j'rzyj ol˿:pq> YIRp/n~u!ϼv*iR:<(.eнeLŢWdNR:;ކ32 sqḬggNsx௝jIKF_A4B *H{9S&QLnE؈SFgR@:u$/sM+؆)=C΅1[ѕn[ $SUU@JUe7cJsEGub!#X;l%`0tS-!߶:s8ґjVgWvXJ6e0tSqc@ѫ}'bze$\k4KkB?ztYH_Y`1ӘBE1sKRv0g+wE720P)*i9^}mm)B;މooX9;Va#r y N `n3AmrT- ]~W~+)dvi8 ,F}hv[aG0>$:]P"qyCcn^ˢ˿7.AMr>u_p - .L @.G٘6'ꂴȇRȾbeMџOzN&wIG i f45FKA\-R|NLJ^105׬։nP BoTv@3IPQ6p:;~dg0<{(<"ZETrE=7-rn Gۮ󀈢^ˬ5]>5G/KwAf5NU6Dw] m%L PpA\$uFo7E9ȾTGцX8m1Tz?:A@!X @嬲d UcG>k&źtXL/D"yyf.2嫈9DNo=O&u rf6wU,lQ,T|@ȎVW"_8^d㕘 ~(˳c&(JFxwit*B*1||KdXyEpש s[.'ChNQRϯMIJtӠ!Wi=v4">IDE@d?xd4@T*HȤZ[z7ETJ)ETH*DzA-;D(7PfD2[uq1 z>~VcM' `Rb%c}=:k ieME,ʎ>鲲 H<1(6ྴ=)y~۵:Y(%+Oc7Wacغi,t=F4"Ƈ Q tu^c2u\)a7V;XlvTnRao#t O" me$El7gGn`lZz#+5.5Έa%f8JVQ-Qb'vA{+P߻VGQY!X4C"g3u18=6 ھ@ سR\`jq&+'B$ ~"bXgQ,9AH{ym)Q{rp9͊H-[Kux ^@=c"^ܹp`,!lH|B2-k,!Au+b m@098?đ=,F#Feо'nDf鞙2J)VHqfQX^x@Mւ-0閣xnD5()v(7y|>G6f;$XN&d؋5hRHճ"q: \K]98eDD/\5N΢M3ZȠr/hV=Li6ҙ!ah{[y{|eIǘP'b&l| F`8;W7P] dH>n4넻*u1z,uwXLܟaЫ-6} 5qARP8*Ɔ2Xh7yxxL"-ӱ|.qw* WkL֦vŐԿtW$Gq@ΗHaAAeR$v /T:(Z?(GPA{씔n#&c#1 t]ouE\TGLIGL裎^ ࡙-?'M<&mnLvT1'g>+ƺXE|V_-C ѥWJn7q#i(^F}$ϮZ%J f%/P3 $'ed#7qx>8V6.9d1*Y6PYw1[;mD;~}$S5]RxhƠj>}-AOr: N-YeN~^m6iGDL"LYckf4Fa|Cngeu PK-ޭg ZdΤrDG"@4ƢlIÓ;Myr& _F4"a72lvyWŎ@ `Eh]|*8qr/ 7p:Z7ΐPd~!urܫXLx۷pŸk_ngǼ:>#C H:ɶd "4~󹁹*PQIfOq$}`"a3uZm-šK`͑Tܜ;RX=.?f Qދ뱄!U|?~YBID7UOuG:U&d#B'wmipD*1xu!| xbkvU2A:3y[EOJcL ?-?rv10) 8"M{?V޸H _;ڟO-\YSc 1Ibv"?Π[V#v]LLFkSVO>8u):K7Uj(B#`ЕB[^XP AH-a"Md>dۢȆWpGU>N₠?Cnxe;t]XnKg6j GI']ۡxE(45xq M_i/;!2$$%-##4 /6b#@ŀqc1MqMbLC|cᎍẔ8 pG@O9ă? nxwM%踽SawUs݆1k;45A31*X?3xU&)3yJ__rU8 \5M~25m%}m]@)dB) qRLZ%˦WM܁ *7';Zl2RvpA4܂ԡ\^ Ž]ouFKry#XI [}bz+$!3 ᔮht>;陴ATZD)ԵƘ_zj0Luɩë` }s$BHBgwHHx =BRGd@~3FP% LM׈f[D7 S. F ԔME Nz6~6tuo*&a|Ȯ+v ɧTtwwN*eo"E [`/,?, 4c;C+qt>|rn*8\!;K f2lO2 BJ.?^R&$QuTtv76kTl:5&9,=yzEŔ7`Зe ei*寣|XN-$- v]V lsdJ$YCo .@ r+Tvi-/U6aŔ `am~LtN>hS:i f:TĹ4(:- r G+ R%}I_1^\ALJ4/i{s'a;`-Vہa5$xpvKYG"( +JI#HuMP:ZkE͝\xI4p yUbقBҦ|Ϻoaz ןi5wz YB<ݿt>k#<ia:y[c> Xkvd2;LF;"}V"M42U 1:)\bq݂g-PY Ni 7˻_@۸7 C| 1@\Wd^Eu듚ՖuP+l J,`pDJ?;(k-}&:T1hLB#W߭YS jEA4#mF"\HC!. gϒwu?[dYI܇2ooik {>ehJ1wk -Wdh<'0Kqv3] wbG7_v6'F$G BoY3ߵWG) Kg0iQ$u> Mqρc y*ɷYs}rN5 %dj|keC߽v5WĨ!n0`t_b>UZge:p@>X;MMh^"LP{SD BNͨVO7"i4ݦݰ-;PꊩZQiP3vӳu` f.~YsXpbQY#<.zXiEm4j9S+ɵ\OIjBK՚hlw{_/ΰ@F|poCޭlB%F3à,`E8ǰL knWcTم10`ҽЊ ϓTN]@'͋䀴1[, ĿF*d#N%>G(JIQVMr|2zݛ@cCCce|ƴ3r`{PqrlqlL ҳ륻XV}*4g<9+y Pq/kZD0?Vt5-.QhZ:ŌR 9'7]A>k&; BᒂRЍz0ӱxiQ(+85xE(ЮKǟ;1{GFV0U;"71wCXocMׅUN36[:h2K، mtfE:1cے]D}/.$D7LwͿy4)+xJo[5<ǛkA1zzY7԰N "vM#⃦:R ?;6 -vk DNERDVáC6O5 #0JXēI>0{P$ɍ}K"og x|Mԁ3՚:Mz66L }4{O9yu%vpƒp۴@S ɚ<IGٚ,")Y}}#OHH_Hڸ1>A1 هOVy34NG}w$HO2*6_$)/p# )@5A)S!Eu Q`m/Vd$&|[Wk-Z4ǕeOyN-L{u oXN‹xt=M<|鵞J_띏#1Wf+ܔ58o8ZUN| )eŅr>Z㘂g\We7xH8nJ-1䗮o! $ wU q| y6a U6w;9rܡ"nZ<r uBY WpO/{h$6/Od Ymq>E)F)?L's6`Ly͐4@ߜsj-qd &p* -𾦢ِlCtɺ;5& 틇]ҁWװȣp 8M5yYIİb#ztvJۥ6s|\0+|^V7_K-f_h7o{xHO9U%Hەk-@jm::ʐ28X?Ss~!*aT特4_@/UmؿyqSt8J@r/xzIV3S0n( :}F0ޡB eS!GdZXOK1/>=%sjNXI{kuEs䊾9bL`G|BO-jVGҦ}/6q 3';eneSKIB=&#eό߇Twf&Y抣@o7tNTs6%N:A)ٰyG/ E%& zd+7D"fux]O9*l;A(gʝLѺ&XT рn"מ&Z50ͥDe!M."Fw*Oh|5x>S Q+tF0߀[v Prga~l@5D_Fɩ俁Ce!g~x*R}Ư4pe+Bdc^<&q 6\@E0*B:v>R޼Z"G7PIFf"mimL(%|ubdG!1]`?7E;ZDi✂&/(EΧUx@>&lN;c$d[_e!#{NgkG!Dt7apv_^m^D>D Ԟ@-1A U:iM8Hb'|VQɲf}s|_D<>yL7;IVv U֧jS$,* }_{)eM"k چNc f%6@cRGj4_t*j-M8tehsNtcm0{Գo~'FXyoj&SNKc XZ!,q ܴL"7M/#o[FǛ~~x*mޖ N QxGoA%F=L e[܇=/gr,Vsp,YWy`}EWU3ߛZK>l"sMac.174č`ݹgCZ{ (hw!VV´ct[)qv4+|x)⌤?={ڑ\W!c /"Rvyo!Dob '2%7f"1%"$mG* L!CY{Xʻx' Őv -`*p&2J&\lΠ:"]jT  &x<4Jm 8B|xn1Ͳ:0+`EG]Uo-kA9\eh-; kRHR}JW~ >.L(›a6:oI߮u#b۷MgŔaߠFq1;?UcŸidOܽV CH6lk>V$zsaSCd*5m$ 4,2g4#'Nz|]9r4dޕ 3x1ZMA"WCEW_ajP9#toq5)u/?n=zUd&W$&SkL,^i1UDci뷥яA-#!  6Xs_؇IJi!<mAʝDW@9nqpM@ +KmR=Ǣ?-#LWpv z*1PC4(+^f%ICa,$&rG.vܡ%'&s*)O: +$RqlKfT8c(hcIux.m+ɺ!#㓻v/?M<[^ ]>/k4Tf(x{ޥDQsqE bfkH2˱1m9d|m8ix&^~`;joLw_ >4 ;U٣Ai_? sr J{e_>݄ҙ\wro.XZ'`.`:i$:v96<!T{@rPvZ\jk&pˑl˹YX%*X[Vbk&e&UK9,UM,gv7!&At~kx beA߮f({fbvꚓn+LM^1}'zW^JM۾;ѴJPf磒g7\ȲthE@.9l%A.kLk#ku4l\kaɔs‰R+ڶUcvFbKFH]<m?0N1#C/8`_޵ʚaUb誃n?WCP?$ޱINiT\#z|* Sh^'ÎH$a] UKMeKO6.5L) 3#Ftkm_:atIF>z+of*%VB)T`KHgFK W+煔@c<:$Ӫꦢ Zn 9G;7,ylb!u!pu;x[׺pѩ =-M9D]JM ק&CdՇL5-2eoE0IrUc'b1۰1_*teaDzxUi.kڷFx&.*6We?noQgnmEy36B@9 $h+  FZg0>mMfd9\VUŢ]Ly_7 v YP:"91u5<R~@bRZbƑBf"D?ysL3J}ޛt30.W|v8(Q{6{S[H633y"4{jwk2tx0hz-N1#}cd-8 SYt(*̜Τ%k3~t$ '<^z )V|f/lF8<ܛh/:xŕ@o ĨUAQC\"֎*)L՟Wo:yK>!,$6GBc %'}+"MVUcD5ʟ؍_kcH=TKYmE _/(c;W:2~NX_S㟛nv杏j/͋ ;VuzC3H:xd =M}mT 77v|=hk ]"@ 9F̝|`H\ R%oU=`>_Z^nXDv)+^OE^G)FR.Q .x[ZBVtJvkLOYB >mj>?Ves&nNK*6q[GZ/Aբz93MN$;_merOîTc>S-$jF2,ez}YȘ[z۩#̴TtBuޅb/Ц_rV婰.,s[ejyVq0꣛{Hy]`n.}`ji]h/K B $B.u!-Bģil9.@qg~_ 'ŷ&22 jcnr0h=# W`jh۴ƪZ۶*/L=R9wE/=Bd kY sFBy-%\{VuUTmSIG~d9~2Q hMLj!ra=3,,%z&TJ|K@auZU}x`t嗌Z~v()}hs.5_ 5]n~u<|1'(PAfձ2?]Qﮒn +nܜ N4i:/`%} gL" ^4x(o d;s.^=#RMh_ 9r޺NB}p\pts7a.dDiS8dq3ZF@B{o)K_|Mhm[x\W8GsB/#l=Z6eȻsRI-ʇӡGqZF1β`j5}?Tk<NX,`W1 dJ{m!)6LՎjF2 z)#b%_)]2[ CGSbswN5PķRF86 ֵB{,X+QB:dۥ>zc"J7~aTj+0҅oN.@pE}O&]TI4|f8:so}\O tHFt4+;I Mһ,C1FƋϴ,S-u.mMx9-%vO3$)c}/սDhH8z|Rl̜( h+/ X7 ➓o\!Yq<`BTY!":W\q DM WK=F+Krϕ:-}[ Uܜvbsou9vߪD]3r6S6N5) Pl'$pw,O sV< /1b)GqI.mH#tpݺ^jP:Q] 4?wX8~EQ8IFTD{x~ Z eGPX&5ؽC;+Hț/h%wpA>w9%ޤ4k ؍CznMo}+ףhED;&u WM2: IM 2Z-:eΘG!HX]<:L'a9\lf~>_Jq޾n`Acd `|QZ:)g&J H?WTy=-e[&wm7a-Ssxݒd`w8yB{΋r SAk:)fng3qO3H~?8c'ԆAPAr2; sP(- j$W`iHmUAZw7r .'ZNW]_,Dya3b43!gٕ%=DQΎKBcxғkWy]^ן~ͤ9c~@_|Vo;&]LFLbY?l|DK'fF]Y¯xIu?O0)+km /""4I֣4[{ GB P!v֎9nѱ]aDeAqƛ󩰌JәrvO _'zu%`ڪ@Kޅb?x\3_\] ܞڃ,{5^]-E˴LZ}˳0dꚃPW٩psK87;bG{WkO@fj3sYv%`cԂc9TMDSjY.s>Ѱg?hs{)6iAf[ g$ssGp-XA51<n6^2/Ҹ0FIS5Xb^3|`/'>v h8O')IE҂> ƆGj3A]ߍr@3AAHIG1a D9I\>lL56l$ |&6i*`.ݻ_~Q,T,H rKЬ̙!OlT<)G[u"/XM4$ujSP&}$XFac8{NN gUЀǕ|9%pH` hOIfZHz@ALV ؏] uMELnDbW=BMX-<͋7:vO2PWxZ仼k?e6qV@ϩzT"gR-p5i/XX?V~}$̽ a[$<֖bRۺF6ͱ/i]$&rOGNwAfZm7=٠(>t|,؛LۯGW>/2ɀU_WWyYX3@խu E]:WkdܫLrq7c)nwV~/ qG%g5Uc3Qive(߉7ê7)6+~W7Žf//?Cx^KvpzLe%ކ4mH\߸n+#/X.7AϼJyXrBw!bs9وAn g>zI9W;uBwqc ;=r&vʑ8Y}:H{@CP5d֎ȼlZ?"\f\O?=*!'Ӓ(UU BK1xxkoBW#jIH볬&͞8Lab"xۼl|@ L\}`CfS6?8I=D漵s̝1VWOT}:In_>p.yx\)1kisT!ܼrb έ|26V-J%؍3Dcz"/ kK*">I{Z>U*}m ܅Q'/k_m aG9hXo(kC^67'&rh@$_ usCS}dc#+?o)[AaF7KOɚ#9/)2ٗk-YfSAǣK8k?.UfR-rIBi9`?UA&讌}i\bgkOږnA'r;-d}g x"vg~;:1u)8W7H'dx1cK'9%m qybm uMhR<a`羅?vMUx׼ R4$ U܌Fu\jf)~ScTkl";1e!ZwHz (f^E\3;$81.- j0dqht^a}83؁-l5 .j9RtW~z )^^>MlcRI~\0f C]`^nSdؕowߤHI Ur9H WC2k5ɛ2M3 {(bVDd OoZ'B5h ~U[kH PeR13&K^^؀d ̓Elor bSj/Y*nB[;R)M!L0{/~b$޹8L&ݒ7< IaIg 95`7 8m;[]#hi@]9Ouk ridbsrT]c{c Yam} Lf)pJ9k5C1St J<`%]Dj( 3 ;Rq )ݜ@iN1x}sAWC|h+(2XpoM{*LF< >6\ FIS {6SӬƃ'XxQ"HVw.z?DiP0xr7WI\UN Ba"{k2>白- 9HO-qH얜>Lb`L2i3:N2;jpI!`YPEVA1A摄 ui-w:%(ZlqI oz#yF(%fުғ\2>ѵ7IW lzQK/WKDMˤ3*5RW<6W;BP5: G: s8YPDFf&s2i-\k9lއci.xcئNz0#[*fSp8h|GOE4h ;D?MT ]ibb"`;?k͓(I `fa^1'# u>QJr2e]8`h󸃏K<9p\ؑyrk'ʘ.*vHgM}`c|·,/66ڹ{r"}zk3ق뮚"a-'3S%d$sŕEU K{[D桉UKL !Nn(EӔLq-~!הr!{3 ag}qlb;_tqNԅp<ЪWK͉y ;6{)zJ]ƳbuዿG>W2PEA N{AN's@תlb~\7Lb3[gQC6czJu+S™0"pbP@J".V6f!HWr rIdQy'э?,%}HZ5#4:!=|keoz\ Ϳм+ulKow9-j [ ƾ$]!v΢!pFAび.VH>&@eҐ+aQv@˃)+d[svGCaؔj MeYc+a;Q[&X$ƥjٲ\ߪr?3X/ C׌1H==sLA|~8jPR<e8`߬_7WX~ò\ (fufve.xI#ź\&:ue7F2.IyqGzI%~ أMKߴpJ&_Fo|Ay,fa#0>-xVh05m?x]ӡ*5Ab8孠=e0uhV@wC|uC׏#tV܁9y=$<XVnuDU.V0i98/IG% yD {6?gan^N u&1Y 1O7 2v #I2Ot!^$jeȔE},R G( !6 dC_bFjgǐ-〖_N[(iff9WO|ʮIBuLτƾ3lPBB ""gRKhdkΐOU["ʼnb _t}JAwBzBv(rtj.[o^QՈYi% 8 XV< p[{/ '[P)+xEN2.6Wm\]m [Mb}>x{vN,%`UP1ӗHTmH 3w``]mb\ ,q Nz`3L0)vOJ8Ae ?nW+B?\3\x0 :9|T KvzbL7a=--k٦vе]ʡGxHm6:~Av~[ũ$^tcRUe֋<2:>p-*@JsS!NؖLV_]\I}VLގYz⸹vFME_QZEe!AE-r{(8VOVth%έQ\ NԷ_5Hfߣ .h։jv2fs# ?\)<wLiʁ< $F*z_0jMR[E~>#aޙܾx9F0FBIpY)W1H!ou,2ڿ}}VAk 5(iC Y%A`GxdUh'TW^(]u^c ?U<-Ol4Q! *v|ˢzL%ǖB-A0`q1z)ThoN _$?D0V}HUyJRf7̑ XREfꗂ?d.)Q8>MQ mv]+^5QY teT^VT=2g XXksMq~]IMaAթ%KTT jb5{X ^N$ĵEBVQKe5Pl\PJQ5 ; p Kf3b) i20F]zip)f*'%.brˈh_ Lӵ%dܩF))ͳUYoB%'TʼnL"Q0΋ ۺ,;kLƅ13seoW *$^#Y&jY¼I}[8{Wi#p {Ӯ7vx5+̚c -ͳ_iSɕ[P[%3"X+cԦ~`ZO:9MLS\~9piuI\I&4Rcʛ7+[f,jd:|V-"-Ӱ Mt ;}! dĤe P^ %fz/ܛE+޵\+$~3!r_R]Laūu+}tdȔÌ NgB hF[Z&FJwU/IF2pKY9W(R2qGP9Cd"HuD_/^w(.js2]݆ kڊyC!R}64FӍmϑd \y>ez2e_"h躤7mOaoXfWߴxx@zQQ PM^Tpy7qd`~]9g>ځܝ|o@ ;.̫8Q>,+sɹX8\̬/uǐJ % yG:ZSMeм= +'pY^jOw{+kRĥO)Q-1wKNDm޶9T&OŖKѾmj!R5 ?7{vflBK.uN׳MXpj@D#ͦBM3)scC&Kz1Is; SB@;~^<N -5BLZ49L*A\٭E?.; (j@% tǓǘ{]U虦z䡳0Xbav7-u5_4ydkjzPԤn&2L5%o*; J(+,@k9B;=L(e@jNNa05;7jщap&5AcG Y)*gI(1ln^͝^qZDnKR2!> =Ry4C#tWfeSO5H'$LJ9Np]m{,;0޳!*x⟭HM#'f*wH[XuG&`G|u1 ~ȝC?焗N{#0>)v̪MM*6\"&l. *XxZ`Mv6]2+;^e{oNB ]YKS_q5nWs_O^IsR#/f1вFK!hrSNdY\k:[h`oR*N:n xl㬼ݛ«pwAqW$ X0NNȨ:iڳNyǓX*95[k}\ C]8O΅GTK#a/XOUۓ UclfLw]{k^Uqo^S\\ّ3 ae*[A [ˍ)fk߀eҋVvjWU:S:J004[ga14ss58B4${bj[zO%=omUV6rz.SҢãӐւ 4zeZ6>md (y>tH%KYԈaM2/U k@D#/)9?@(*:n&ёTrp^Tzl~\cCij rB.sb`GWeѱiѮ3$П['G&Q@rnvm/0?:$//65Mo!Qo@=_lA~8%i̚-_.ѼViWd^c((O#;vk'd*,WNaOS]0!F{h'^-YP|nLk["!'oy-J KHE :NOr_(E@, Yjo=F-l? :ROd5 TU?/\T(&fsٕhEh%Yj҆Fˆ=1$NiLdF"5 E֢DjkuZIi=ތ:owQyvWS1Yj,, hGb*]* LNWZiX1E}-4M#CxoC9rտW%j_kS0 \<'76uW+Vb TZU|38A""~%qPԅyZo#?D&cF0/KF õ [U؊!ҵ/Ekw/ \Ogs8`~/ "?T.09!gKSdP}'F!NNMiR}9]&! ɦ[GgBf/Ʌ?F -ԫvTⷭy 8bi*;Nnd;xR$ݠ]I"jHx[\k9!W}zfX~7]vEck.-s_ ښ/!QcA(r<|3:7 rHWN=33o:j=Q}=rʧろ2Yi`k XO$շ9%n3l#;ʈlTl&b7K9zxw6 +JUh/^ 8U>;AYt.e >GHȜf`~_ N}+>wh`}7$oMc.YG۱ОD~Q\Ȣ+]vI,eAb5Lf=$M!@>2G"pv:6&ܴ[38IG8>W۞Osxg!)(`pֵċD#/:diu+]jRzajCL)R'b,~U@_+˿ot&@Kmrkj6}xwTtڬuL+0;SK/#-bS y# Ⱥ2 fe9IZ~0x 1M<6 $ Ti^dH eKyzM⼹[gds)& lib 5E! F%Uw؇ֿc֜9ax=װU1b5.Xg⥱s[¿˫DX '2}* |%72};X ";Jhvg ?mD&3%jn1n *tXʤzꠔ8O p4S+Y=[qkc%{Ow|<$ū\wa- ER ]@B׽ީTěTQT3?Ap2Ao}7;Xޗv @(/bsD5l;\+C ]3ڮgbH~_Lgϐy24g̾zI~Lz[64q~,Xw]ͦ传6=o}P|hJXEAHLh]{wz%m\b&U@m[} &fD}`DIZ_uҍh~p?֭ @? hP՛ P2q=6Tɷ=t5d)dPQ$By^i]d"Gm^BǤH F"e_?@ɿsJ[rOD͘s9S)8U)mwkւ)2AWD'G>O3$֓(Ͽz ^I.Z>?rPJOL5+x}Oc޻]5~s<C#$B7uqkp~jZ_o$GhtJVЗq2V"y$iĐ,8;[X5HvȏzjVHJe2jRxw7%$ )aw] 0ǴK)sL[]J9p;0YBNmQGhHm̬զ E!~&:Aq&^s;sτ;_Ŵ37TL`mWPL"upD (t#^ZZ(ZCLi߀ռUꩆWLA+9ߋǛxoB6Tw¥(wǂ=wPyz|䖺.HMȈn-/>iJ.,/+@= ~Ś12JSg5 ݗ4ԚDX(UBAFn n:r^*L} KPb!.ʹ]ro"MiPVNCz"zA-Al) 2&`T NN0\dF#M; .ldxQ!o}r}t͆wgkZCꃗTLez9`r(% քV1nBƫ0e0Yne Z76+y !|p/gvh*\$ag EcOȥh3#_QCg4 ƷY)s O%|n~,,(HoP_6z=y"vtz3D_N)m L|d̝ eS*'9pE`opZ&-]Z6yu~|KSnrr)g}@CZOG`^PxwS,Uj.zXJ> FA槴P=\gz1bwvU Hp.RNbIr9-f2oױӖ_7_Nߦ7m7^AԽ|OYV䷙ewϛNEQm|:Zs7Rz&]OVz_ Y4o#)K0"pzlTȽC(/'7$1+N=e}fyzF\uIrzҾ%%+rt}C\MH6:%89ye?^LR KOzBcdrbGtBÞfSbMBi4i8rqt2RWLcd lzGqXOEJggqpJ X<>Igizp-⽅\(ɖKuIhۮCU2".I}e+gf(clB[-:g%`` 9IVuzrO,jR }k-$g]_w8/$k/[,N6c`IMQAT=DŻ `Ӫ\k%Y 4\(آ*65\bx?f¸:|~d[>QT!"O/姱}ܘLNM 7z(D ( W9#:(0w )\j$ R=T|;kmDޖt21~>Rbq+|/ʪcb>9sSٞ=y2w&/ g~'V228i vp[`76hSN"g]w6S3.A t6hZH_'Q eC?Ee l]蹈r4ˢ e8dGzcm._/MzZ_ۈFDB0-$ܓp27 S&M57@-KZǵQ0no)iZ la'?۲g.vQ7%K|r=q< v/wf*4ya9Fcq3T|Ii*lPԐ@P'zpO#EsPMuȫ.Ez6ZC2~WQ~{ ンTgF7G[o;gxlgb+L:?֣MN9񜾯N TDZ~5V}P"bޠu%h=cNhmM0>+Bu݅? 9F]J*f~y: RrSxݼ\t5#:">V$OoX&z!+ wiCM>vbRSQa'p U*RAOmr?Ғ꞉FSH,Q5! +qz}r(fry/_xݻ?+6Ltcxi G``#(Uμd&ZOeBJ#1SV m8g%2;އx7н9<.RDmn@VG(+toJ ¬?bǧ wG=I}y+!S.Qy2`[Ò_2:/νgM^5s`]F /nRkc὞yB0cJԭ֕>|mG!sF#Xo F cVzӎJZd#@sYiK#IY 7jVyNe{Zfbw֣b)F^7" ֊f[g%גUCl&CiN1];Z@p2M oKR`  ݱKt%~BQG̊Ðw+}+҅E;G'G+v-A,[ouW<SccM `TKL;$];EW ^Jnɾ>7n |Ux ABǑ?N%խa !s3s/W.*wY5p[eWr BX[JQvɆCHӪ(p~f΀VФ+~bwoCDP/16> fJfYEy% fJX.'K dfxx ctFX& wTG63n!!@^E=`PR'XyKѸ6&QU "]ϾZAr~캘} ? Įߑ&jV>,gm&ng@<rY'P^XQvFk2T̋?q&nļCwqrX]ɩ;y T35ذ =4RK޿ Ę X 30'wiGK<'bE>P0zs2wU{n@)ucns 5ӷRDmdoǓ5hlen henqqKV.&77MdgXFVJ?m26&?a O!65y|#s 1;A`G=1B_ʜy5$Zas_^=I He!'ExH߼?,wJinu*o;Fag~rZuҤӐ~Z֬jm"z_ث_s2;m 4IITfޕQ KXc! Ȅ!F&YƠ*휵RH߇U2""4=Q,\up_4P*j* d6g甗q|>CV>e=`H0RQQzOdpv:@9[K^d?kF |$bF+ʝx.Ug>>U_v[d13zn)i͏62#jܻ0BX u 1g5K?U M- 7ӊʱz} R*je/2i#¿eh0yCuE sl`.b̠DB LS!ySZҠzK)9%Q!._A ʿ*iFVP쥐)!ΩㅚqO|xҭe|nU2[0VRȝǃӿ2=K`X0J-jo\ìt*&ʩ#82=S#q'C9wQ-)FNmN?8g-yS7h߃߷t9]{5B;ox*eZAyfr^v)_ӊڷՋ;в^tB^?༅O>ZoA >:~uE9~-r;C6,e҃&?`w>9"9` _* flZz&PW8Yѣj]";֛QH<8%ݕD|ݰD *f%4C// ^_Z4Լ\t";~t~Y]N._FI+cSۭohV!d5 'A9Vnezˊ._JR9"jd'5^{6f5&VYZFl DsF6_ˉ'z#+0-yBbw߸)uKpGVBW5 {HИtlB) io:0ńk({D^ ݺ;t4 SQbFz Ҋ8S%lJeqrA*;-R8*ޱ4 ,_AB|md;[SXAj8C,=dyP` Dd2X_XDHh]X9>}/A*P\MExVh= Q*@ 9b-76~Aq i )\"H1B'&K1ko V o#!DoIRܤۑi( b]?d-K"%&Lq;gi^Ƥs`sS<%Q۬P slpu%nhHVZ/CL(8w=,Xy~þE31drzv'q-r$F,P\_,7|7xÞ!EӔ7AXoL\9eoMZQt+^$O. r߫zK&Tlp|b0{8 '(+td@E4a=R3r<,B3@M}yG((Tqom4P6ZeH$O##3%8J;Ǎ*$b Oב@66eW~2f͔!w"& xj{q? + hO21Y Y=R`;%ԩ|.|%'JB& }]hh\0Mr9Bت[܁Y,rRk>Ksa$iQŀﺁAVF^Gw k iuhQbm;p`:$p TWJ?%_V>q=$xg&Ҵ$ԩ"kh"yXPS&^4TG?HO_Ɗ]TWjV=u*b܋FwohqP?BZͬ;y~.LI )VDX2I=\@Qb;eeNT2q&i>Dt\{ 򥃈7(;$MōkB]zUB[ȴ&:cW̄.*]g:'|^ڿB"%c⪆AO7[;XF;[7&r7kiu-GFV[ u@.bt,&lL_xs`&`eީ^mQtgN$B75N(Nek5; , { 5BRabL_5K3SS0}=Cew}-jÊoX ۶۾ !zPw0rm~E ]P],.ȒvΛ_d&ٗt̿cV,NPhf,rE#Lj@'Eb\ennTΎ].j1y Yh%OUu7Dڇ\GppŒp Nq"ZMC 52x"5ſ{ROs:G>ҧϘdMywԇ$Xp&,!Բ|&}g4w_<=lԺȀ|<9+wIYR%vQw<k湍tPB!Ň$ȆvЭ1{Qп_X xJO6 co^q!oq \jB6`)t?|a?R>g_Gh86(zόpH M:ASeSԇSB"Z =:ȧ!qg{!u =*\: ~G91 s\ܭ[ `1`łG^ypܛ f*,Wz~&n6]ʔS؅G-  oKɵ}m /1=a̢mK%{|˓AR_\Ð{@. ڑ6Sdteٽ MƇ~+!2wC*QnF8j*62c!8S! ɲ82Pb_wnr*z*:ڹ϶%}ɺXsSu9n %Ixg/{r\HۖAYhYW Ʊ|'cl ^"͠`ȝy1dA-|TyRx։ ތ'#nIT|O :`ő>II$RfL 8>!9yPl%M)\&= ap  ߄|O)Mk(;rjZ㌺{Fˉ 8H颊z yɃ4l ߐ0~"vU[HG"Y<a[VTg16tpmI_)$B$ ?>}UT2we %Urk|Υ|LjTѵ:0ǛVdem9@ojJd׀2MH49 )1[bv3yА0 y n}/t]0p A8hLEU73 sA^rJJ\B.x_ q\jF٧aUb+e.|\fA""޼eJrXaO9 Sŋ4ozӜN):!bGhDKEaq` 'Jޞaݙ TO?v]cq f%W셷V 㽹q !_&<=<u߭'.m^1 Sr!{U w(ӳ'{/4*.z~fdhsӬ[pȒfČ?ھ][3 r>0+g{;9$q.n6iS6Y:iyfcU0/.q7@ֽd!qUߚF(@L+Cؤ !1tP7\D*ϴ4B3H2K1yInI-4f\- 7 {߁}ˍ; Uca30X9x)-=w|+L4T|sUnYqx7 Ĵ%%:vYcZvQ.W-cWއ߻[l!.Ǡ݃c! `ŋj;Zru6,yͰH{B %!YuF矱K>/0wC=;FEJ\HVI.,}~=Z/Țʡg{0Ř6#B'a27̉x B#CLg0q[he+7\J^/]f<[/k*1GLT&5;A xaUti4-Wzf5 |yK| {~AJmBu #LPUI^f KS j;?5ƭDu 8*i #j(RPL,^i{\)~T.i}GN5 GU"Y4I#v_zъoy?Df * lcuk r$x]u{8B;C"%LuTc]H~hkS/;u8. 4ќT/&ndM5#"ΩV1 ?k_Lu#KS{A Ǘ~8]̯3x4JdtaV:38m+Uc~"| 4Fnf!s"Sȴ?@J~';l$\s:o8uE1M2DvV޵I,wN7urи s*ݓ>ܡ4]d4צ :橝k8Y-i\ttFNL2o5Pөd >=3.̹\D*_lOVEHG9vk̥!T&5~f>b}ʴMjcFe ?@ ~$L;ywxuSHbٯ7a=$tNһn;>Qfվ+jLW?nH AAOd7]'̥P>[wӰTaIOOi݅jc?RJjCJ6xu>>RF<EL6,K5ufƌ|>:+h9[c{:?I`U.|xR00kU+!j29mnܟH]mh b)!Or_f4D"A`ȭ0AG/iMQ1%QMaEL|B`1Iճ|p2SovuV3 ,32qιG=FCh%;6g~XY`=]˶XE!1~ʘ˼MkIo#EsˁY:96Y)>RoT`~Աb<=5SUf,|lJM1Ǣ\kk^&~f܄ F͢YlV_JbgOA4 _pV-K-Zih267Ԋ˫vLVw^oՒ\ -k֗ .l6K[||Ug^J!-].|ٕW0;bhNY `WU!S`ut7e&1]q@ȕz,_!o_4s88}oZh:bӂ0vW= &Ml՘%J5E=oyZno~硞\@V\{T6ُ Okd, 2-d6l]<"6E4lȈ>%KT5M۹n9|Kܳy 0zugf7Ph!yn,v/h ?F* #S@o1 ư*}ʎ%0]:?=pEfX deƅdŋvXE<գ zMvzeTe|oc3:ң I0NFgE"-ҏN-K *8F鶔~\jZu/&V4Jo׎[k*e/M%v.*G.2v;Au/O(YiB\bl-jv.tN[(fO1Kœ2$ck /H%E=/L)z:ZIzdɮ`#=7ݬo>FJ5`vhͥSQ/Ov"iP><`IID =)C&X.]=Lo{)t}C":yxy:"z28Xw,Q:.Q&DW_-<ṅ~#+xY[0%^:;4$FjţF!U=-C d. fVV O #` 2/K8Hk$v`a(nBY\#&kX~^n&Z;iY:O/LKľJ3bEdd\ݠ|)=+n$=7aZS>FӚLP h>p(1r"BsoI$s Xg?sA}đ!C_ _481W {"W%fEOIk\<3X˶;&npO+d_OJm-4i foDXu 6A(ٵC]_嘖ãk= (ۗƔhu䐚{)dp!c!x'#L܀OEDG FF>c\Vcɜ`*Ory;mɡ6h)$Q뷿xDP Px3jFyܴ|>C,6EON{l*=\fXq9XgWS//rt #\KniQy_VCLF` 3S ߜ}`* Qp|f]"?2t[w`:lbאJhY';rRFW`lL4l _6'=sDQItLya#b1$0j{!ǒvEF?\pEcǢ#s|!y-_o{+ѹ"(O~d@bAx5Jd:!Rg* vh;qQZHfH*}jM!aK𦷤65Z;(*D 5v^m يd J9Z6lUUPFpgRAraYCG NCQZIvVK*׬]O^UNg>BɦSr; eWl]E惸XvaIQV@ (p%'N(F^Hw D2~@p kp|2@ C$uU`-}K#qףG-1|7ƚdbux{UPC]kHZmeݹPX9ỈېHʯBnvËJ ;%bCXmّ5z=!i飑^/2e}>*@v0-~I\7~`W5~մR̼̲ *ȕЌ) (Xі\1eYF+`߲byPɾƺ&SFN9ڀ.@c ?Sֈy>>'wTr-"!ҕamvgEE{?K_Xvdwa. 縗 "c_g We7w:smJ[g WQ ,жksT{@8Gz coE +o!c)FtJ<{׳]~i Ec`A5kv:aHR &Ͳ}tۦ&q1v Yֲ\o|zFQSj`Uʲ6 swW(`G%o-{ܶ H$bE@z_ӋO=bI{6BZkUX+WAM3@HA)4Ϋ&^̒6 -[k :fs%`)^U[t P 0}ݰzך 5(e00X-_y/xv|EQvk~_Sl;pwnpGjTCgr .ԅj3oIq~4PK$ZnkKȤ Jϫ`$on8{%W8S]0b{/ Y<+8sjI؏s V,fe_Tma~CV_͜RaO8fA›oj!†$nB}gRԔne #ih1|Tm[ ]DSo.\/j:,c%,a=`[Wbjb[zQIUY!oO (;ț벀n-FSacݩKlPF:52 ؾPN ?/='7VirGlc* 3Vx)~e"U#[$*L &[*F}}vRT<FC> Jo³ P[E4A;@*)8 s "3dkQtنY_%%YgZ$n=5gJ0z 4N$fF do[@ƀsVBߚ_k;&Tf%MGjO|~%6!ۨ~ou|(]uuwәk1J?&SZmϦ7n-ز%=e=G!3wFEve(`["+$IٕNQ8SVHMrVRsݩF1/UCi7҇HKT,Ǐ/J_0ҵ۬؟"*׋*p.4y~(+0%7mChD-9,@GAk[ d5glH0a+$WG/r&k('\ckA,K;-L?`Y춹W{ gS0Ɠ{*i)5te~;4z++_W^!kCgM, RN]`Q*(JDEo,d EGԔ4qY=Yv y\!(ů dvSArx tQ "M tqCO6(ekr +6`XD1%v,E$D@c8! 54?{M8]1=*Z޸P},-+hJ#~mIb ZSLBI_ tn=|C_hYD3JhlӬMʟv~yfDo]RKo[sQ)T,WhgUڮt=_4_ h%!*%rHsgF["':w H}GֽQC³J8Ǝ<1d٧huPGcylγcP@,77`oaӠq`5aG?qrŃܾ4C<`'Zo`vxbAgi .jv>0]f58 Oc#ߧ =-^RBNQbrr^m4 5"Z#mZmkT{⭪3qe}8.\H<үaLc6ŰesoFItCW%wt43r2, LYg S IeVsq<ӑꟽ~):VTcv!930b4M2OF׭!o,Un/ 3 ~'cY1d.q&[kYW3 |0ÄjF(iU0%+X;)11KRZFBQRWYmEl0ι' 4Fc?R%f9 BO amόNg\MK#<6KQIOnvݿ|> `/d.TY¯ hH™(ȠP vdQf B&z7\`h$Ȁ-T27W}nK89 Dcd906hOd6ēp* 2/)DC{yi0in_w =kcJ J V2֌G^+vjN񲲤GJ/yai򺌅I.L@H^|G_d7y=i<ҷ#I?%%` ŝ\\Wunݤ.rR{σ Oέ!jRhJiy։"e`_r|\hy [t hOr+|@|6PpAg:鿾Hlsp N~+9Vr=y5G#CˆjUnM X4$'C9IO@Nf@5Ol QSn Lٺ] :$Rci.W,vԣANw.XuI{𰧊n@gK3h$*Yni?Lc.Ed~ 'FX7E*џHĐڱ,QSSq^gV,~ RiLq gx#t_ьSko (_Q'@iSAmc` <DeIrZf'H7OzyCųPП=b~X8(1\WmAx6@{-JG柮zYbrx]:hc3wi>5NZZ4wOt ]Z$ 4@C"!8bq|DfGt&]ZL+y>4 a l]mQ5~)>ypx j0$fGz1H ;>S#v)+ݩ由u`@&;Q C(O:e`0<<xjp9. `/H8՛E;H*̈́@q/hGB _,Ql§c@$7֩kY2Q5 j Y3LxIQ>%cV0@Nj _*j& д'Hf"AED ЅF  Ҳ]1#O7^*[DnmLs=yr5Hb`biRp)Y]{ٹGb&zd,6 ;t%jDei$g%2yH z qOpF K~m ,{OE_,',X _Gchu0H+* <tEt=$?&`wǬkGEyx1\B똉4*LY_fD;Gw.M0D*ۚ/l+5W(49񻋯Ft *|DW!%' rЌR/(Blqe3)nVqr'UAo8><| ѵVM[xW\o53#fjDF :'YA H?d( Y=Bc7(۟1>G$\AV#b^KE6q1o?^N^ı 4c/jeXk毱W4PX ֥jF8 ~~,Mt%hZ /< #gpJatu|dTCy'uTwjPXN]KC9W⽶Ћ>K}m]A/( /͑#DH|d 1:q/H9ۓ ȪȽ]ؤ~Au26'"'_$3hE>b.cR`Og߰9b|,C{CHo9J=hdOPj+.¹,҈+C2)d3x*>ɓR-LW,*UGHMXV#3s~@ }mW$yC=>!qt>)ԯJ(YV JlJ{КPLJ\ gW/ <>n#4~[-;2&ISXeS׷9~!ѥ#4-9|6WՉ n~ǎ50}F@crq_M%mFc &qZ<ƹ,cJ@Apb+lZ)nԥ0$#kDA:*MCV`%gȯ}E[9GuƢ WIgy HJwMJ۠*-x>C>Y_U%yV,*VɅ t QpƂaXTYhL[Cq.qPAd/:w/@)NF|FWJ$o<6B ,;7b0D0 tȥxWXv5RG $̼>m*Y׭d=ߞM|]J8 h(o ҝik[b䉮zhU#dJ|o]> U'LA78A32 Lq{|xN-ݽK,U㚽8yΆ%i&. 1cBZTNS D}*s?gfwd3{*aٳP[Zz^=Ĉܱ|q^@eE0F]90:r•G m/=∿p| Z|yoTv)J EPE@abPs68%H\JtV9=MJgH /"0EROl̆PO/&üѱ ǵc/*׽u}ks.ZXIx~طIܑg+~86lg8D=)|%vKIqfSrVސ( PTw[~t&Eb3͵*R9Ԍ0DF:&6Tz O>G&) WӭaiՈ; 5Uceb댂 TJd9L%沈؆ {XS`٨o[Y0` IֿYUQԏ:\̽N;5|m`uZ Ok ga# P&+b#(Kz!O-^? n:%7\~!Zp$ږ#)L8^A#=9z+{ 4`d b"5HUCFo/3º2Iמ/}bヒ DA7{"ȝ >Vcb޿i#7K4EmCK~ntH)Rj@6AVtm6NNFLǪ\2nb2+f$B6at 247\b>L3 KC2#ȦP14,瓖W{u]^sd.!gB*$SL^O{\*]Tx%7d~*`DV {i䖲lvs+QE#}˲Eյ̧ׄ"`FŻ^Bh<@n+khj@+d1bP$ei&<! mۂuR  mP#0)acKM+Wìv-8Sɪhe0Hg3lj,؋V2G^oh3&yV1&~cO e!(}NjTG&=P<2 ?O5WXXc /uĻF-ۆ1GYBxV%2έEy暦~&*W m9KJ)>lt `WRR`7.wPJ5ѢFrfM=y*Y\R$3*i;( ux>N dn^Eq)ܭm*9·v] ^'){԰_۪ s#}4p|@- - zk,J!ߜ;Rl|Uzژ$v91N&4n)21G3G಻XRAX3;nm}?FUԢw9Ӛ\Rq6V6amGX_## \`5q!ӗWEtm*@.vEt:b =[cW!r1A^YXD9SPLɗnsP)QX1GX2qMHݙs+A86 J .|f1fx:Co ۿ9k eW č$0r@%˄6r%"$Z}ӪLkf\<@ާi6jw?uG_7w "s,+wxaZң({Ll) ә.ˏJ9ڊbyV{0ϯ l2}TD~=(;k-w! rٮxszʽy+;>OqWYk嘜f^9wϳUB2@DA{XY//8\)D F8N˿ҁhrhÔok"z  yJk&$iRacP+_H1y GH6>]k.z/1B XMח1jN{^4yi،b;FI0IFT36C@Sl3ڂOQ25d#kE!)38{,lkJ\eB_aFgi>,N3$ 6N[C9պ1VKa'SP=Wr=3ݻ ;վ7x:FJ>mYy^)  {`cDV>yܢl"g2Es@ rc JjR#Hz $y+|-ML \{7D]P]1:U2N)^6'=Zʖˉ Hxn.b'o|?oZ,ҥ# |d e jѻGL1\Ͳ;} JLZXvd4;+=H`(j逯X^@crV^$eTr8-c&ݙ7'b̓+;SR 8H빙ݮU 8) Xنj@ZqAϰ/Wd҉.ɗs,|V*ט-C2:IӓV Wҭ#7d+k}܂ǘwE4]&kLR2[$ N|zQOi_GBƄVk/tͅKF@)/ht3oAjBW&eZƯę-UT'xn5E|pal!)EPݕ)HF d`"9!G3`2dn): ͛&/94< fJ%ޱ[Ձ1S2(ia+K#$N>u^d^Hf@QÁ8FƬdpy!D9pVGQw㧃4lݘဎى&m yHr\`=kEy o4\I(vVF// >Tjk2*m?sBGuLtYVK@~rEǙOfv^`x()cX;37>B bJ$FaW DNlkuz )Geq6dG 7YKJLC^FX!*E`Vn3$# ɳ WKYW ADacQy{žq _oRp|4%L]'EVx ؒĨ5]0t y DW]FL~6aZy6dc| FW4<6KAr20on+FylF(#ƳZP>B E[VPcGu^a#H(g3DyB3|xL&8JoNb TP 5`Ί$3#3z 5ŎP7^̂?r)y ldZ$Faʰg)bh&4kH8ƿQyAPUyHnxCpغ7Rzd1G'RSTWj0{)nDH|g8m҇2DFt^~e  TB q2v2G:PJ(NuzǾԮ}ǂr<-UF@2IV}4gl=o0(i˗nR?V_]L.&J,g.%^NT)]`4<,cGK1t&f->E <\81 eTeD1/FIq 5{L yI#, Ḅтayk5"ĶPd"a1%ew:=@0厕H EA,d2`Rfvr^">!9~ CD b^d3S+ y/qEs&#j2ECM' (!% { URH,@BphS-mUtr')ԃIp8˔՟}Z7slOn*g=tn[ۍ SbT}rsB^mLg!bҌV]6PQy#%(`s4-wiN2ɋ}) UgT;1,;{|THE|c z;6QC] (M_pߛp0a - {0&aتG])s4׷2YfۋPuO`'1mpZ:Nj{ѓ瀢1x穦)|Yz܀aLٟ8|nBeڼ ÈL:'`< u𢄤Ux~a̧_# QRW}9˝kHA?Oн*V"3Y }fhQQx!iJX;k8=xN͋'0)J~fzz_@MOρP̤t) J(MbA 'lKۇ<]Cܜvh*;"mY ۧ8A+K^@_/ ֔ G`QU3)Ơ Q:b6sƁL(A5$x$˜i%MY|_2}(=Yo"^HvwAO,j/*x#|ɀٞ)FI2:ɋX u&ez'f)r/1Ko^%-!!;f?0 Fd"'12f\[Gq%T'k6|_S!qH$qUR7 OZ ێiF|Z2":ǛVUe w fU5q $t" |ږq+lƣ'>]%ދ\8s~t;TRҁ&|E`YeqJWn( 0S=FF|u<ɬEb~S,Ǐ9O|,sC QftyogB`KB*kV%7S@sifƈLXQ+ w9)]&J 3<#쟪 qlyV3Dzɬ,&J㤀vafuuEx{uGٕ :0P90ZO:IBJ'PA! G/I;S_@_4)aҌ$'8tA}p š?~B:%ut0Uw^Z]L{gub~&V箖 7',B%ܦl AnN /_m#\̵yZÉT ǮsWQk h= f.)2S<x"%*42 4dda&*ia?s"!zRHrTQ_}ՇC#)族'1E `YTo;Ϩk/MU*$SU*!+ K xi- AGN$=rktdYq!;A Am|1ծ׳;:R:o/ݪ!8D>(nL^5_4f߉8y3=b;ih/갥29Lϵ@tXd+OH7`$HbYCl}jNnQB0}1 VÒfؤ GrХaPSoot:NS*8O5+MX!Ϣ`ԕuñEgt.Q\fU`o72o/Һ\YV&khzT5zNw^j &O69g8AS Ew)C&:*q6Nu?`6l\^F7QngM% Q,;nJU)pU3=4Nj?lCv4 J.`^2BG(nlSn6ȿﺗ1Jxp/d̥@Reםwž|Ӈ%<>1&`: FLa* w)et`8HlO2T@1,A"ʖ+N](zÂإeGL5U/z[qA8!qi)cHWQYKS0A &2wf)HWiJ1pc[xZwQ#y!Q>;~0{dnOq.^zn\q4L_zw>jE7Xj,qCliNݕ~ )h]^cU*!U !au!kLyOkg x<>R4()*[tfPVȯ ʩ8r EeEˣF1n#Htj_ iFiʲ*-+Z0#h*Tw=?r=bNBd{9O zζ?Q>r^_Ԭ: B=&0y!.!4|zN}huټƛK#O ЂLp?Sawa}Ɂ>Vb?jrڵ%$_#JT䉅R$Tp-Ƥ$vTnČ^^ F': -{lhe!{T `Ё{qߏ\-5^0d@7sVOi%uI = ҭK PĒ)qߊMtl)8HiC:maTi^9Xzyü5 u JKBVY*'\hv3**uQh3 `$#} r@eR6onOwR;˳U_qt@va?L&$32TS%?ntqN(RrGrueP\&B@\Аa=t-&)=mE1*y!ᝲld$YzVOȆؠ$[4Gs<߼Px6*MHMbswﺺPVqQgw:^&)1N1‘Eb/"U/!x&%*;l* Xxw1(&ef@ʫgk;7z5hKtܟ5M%x.؆L[Š3q 2H`}R[r 7IIE)X=ZhB}Z~ 8nwWմ/HGnMoid m'!!/qMXɡ bì ^=Wdr~xߴV_xl6.k@A4AI)1fvS 7nצ?JCb #q/il{?l XeKUx# !CpN»ʵ#<272SDgyK@=C*`ex˩4Shc)7wd^Hi$EDWdzkCWc47: _}(2*9t;5Bp4樺guJqr>$ 3r@Y%`bUmآjL%5eGs6 :1U`' >vOβB"oOQe?u'>@sKT CGC^Z8~!X1o^RSJB @lVU_yرâr]sr#ŤvƲ-nnо]o&c- IyWB;7f;%T" ?rՏRB 5q]yAmGc2=p|O_tG6QtH|UISqQz| B QM :_w<6+9}H6bLq#Ny`^Qj,6R-Wa86)Cn!C[ aN$` 2M+;J?QI8JAŤgLgfA`pRF(\76FXѽ Q-J 9G[S˞,wZ8^Țb7 >*e-J)xvoK$FnidlD)c ]m^" mѐ6!we?{00k H ޠ .f{0u ̎܂?rY$AUI~8 b2&_/V}z $Wr|Ks1.[n=P.^uZH|p XKw/b:/F*+v3L;;\<}>ziPz8qXȼgne뺿q{$@bi{>1dalX5D @mFo"4r!48OjivIfvB,)/S,}t o~*/,%ET*x!3_7rt16ƑTt! !4j0(KHY}Nh ìPF89k1fC3ߣR^+PRێE P2"6`IVCQ,yȁ9o^+i az=^., 7CCL!l"~,!5ټ\'",G5݋ˆ(sk.i_',G?GXx QAf۟Ҁ,t"6+&e?j36O7BND<]!f;f왆uj|E"eU)¥]p+2׊&1J>TF{^JaX}+:+{~>ڲ~fNI1>XnO"8و&Y%IQ!!:V9y':-tI Xso:3V Nmas+ W_x ogZx܎*g5Y Q޾F ŧ/w 2DHVw!%7A,JWCcӲ=>Y>E5 rOS|'!^V<%?dj XA96&۶ɋ!{Bmx"ko۹AN~U=ZWa͜JXfB>E[)*Ao%!JP~/fj {qJ9'ȹٽu>5]kێo39bEp76@1zϥRu ۑm!gH" -Nfr0 N 1k4w1_') 5-aH}$xi?h 4'USu M`%g!$ )uH&j*e9`0iA|l([gPY ?a4ήe ՊG,mC-Vi@Ѵɚ s_$,b@S.H$) PUXy_`z^NAoBe&Cdb:X˝,^1a*}*)5s ^eq,JR %Ϭ? 89J\4,G_fO;0=J՗l&jq|[&`i<~<ٜ.}q̠FB(ܓLO`;9x_P$Nyq2dw;ʶ7M!53W4E[ȖzJƶmE(%VkEA1!:[dhT>_h4Tz9~GON2G|#/{4_* 2I M$i9%;;GK,Q2+Wj]34I7*nv]FQ[2m+yUOfG|&=``=sZH'T{ %u3!`tD;X3/z6HH|:lxF+ 'vX鑘#0uu(D~WslAQ_|Xxzo8:LLXB/:&K3d_h|0| @lZII$DQg ]F\Qԩ+VPʦ(9qJ8JwtRc[r_9|v3-VcMVϱK5J;VlkhR-|-ӑHǚŖpХ-bo&P0]7In)nlt$}D64}':LË3@߰˕"Td>Ì9AW*~"Բb{"faGxy;*@JDžΐ"Yw0YafBj=0 Aqvnr[16qԲ~J% 'JbJ1chMIEg4|VI5$|zӜ Pf+d؉`xs ,M)=>pLu݇N?D[8E웨+`C( j"._J\d; ~0K^ϡÓ(B|%hjj8yUDz#P߹QWy*#ߨ͚O ݢ~liY'j3rO_ &)yErnx[?}DOp U8V쳏G#W|Ȕg Ӱ dJ)vf."^XcXHƿs<ڵCوm𲖁XFaQ9q=zyB\BVcYQ'O(87-.[Hd:#(Y D1 !t.r:MYwD.'sOkC&lrws^f1fe޵ U] 5]0x#>wiG{㸁es4{VD8tڔ+mzﰯPu: 2S;Vh:MIk$>{M~Q,ѰYxT!]5ooJ.=hPߺ:!tF׸2XH,$9|qεL:ydNe(+Yz= 9̉[ K_t}yS6o3x\.(Z퉾`QsfkF6lͽ5wӪ6[@o\ L>-䞄o{ qBPlܔJLSW:c"'P Z+i'>jI=$B5H_jbs:#t|,wdV ƨ+8al&E`yHd!ʌEI]D]he(,p||Hׂ(DU ZT΀' (+os@⯔٤8w TmSaF~aBE zO(d.+ÍAӯ+ Q0oKߐYuB tj=0_f!~RfvMqNeQ֖)vF Q%}mL'{ȶ[5qȤkH7ͩݻVxYu5hKK=,|0҆hQ&o`ί60hPQ9H;5\SZl<}B2尓uhRz&!fR 0KFDZ<'GIFF 8 t3HpOڨ(.#ߠXBaOfˋJ H-G0nmpC[M::"mEc6)vyUnG w)I+D|zX:ne[[w}X{AL|8i٫nc7]͠ŜwN*OLN(PiTrٖ*_Uʶd:vӣO[S <4vd`cQyҜ/ivfk|35- t܄ h# }ʴfx{ii+w lmt)q&;C ޕۦiЃ- ra瀂C=, !,kgʦ;fXTBd;Jad6h(I MRͲ;)ݣ類ZT';y )&7/C{hpxaZO9<գ 12~i2[at܊ Y.Cp. ,ڰ c˟aGJA^` *ghY`FNteݝ^wx` "Žѳ6铙(..̽cfA[(>!WK!y(~gN$U=;ǬBâPm㰶lS|38zg_ϯJH NLw=Ubg'j5 (\>&ʺ},YdSשgIJJP [rhkZcNEw1U#x5vu5 nG6pH oF$<@LՒz`B,^Y@& |ı RO5{O@DF<9#޳7hBhh#-NUgsQwbyCwHSƙ%ly)](3@ QbZ#KnmF47ĹOD 8  %kR4O)њ*TQ!P+ 35c>Q4qL SR=zjU&2bJjBxʤP:dl}/08VKp!Bټɧ#%fǮPINw Tc6&9bAR% Y ;sSCZj#A(ݟD[Dg#ճEa_1BIi>jjdQNL;:"F <G? ,9O(G7t & 9K(-`k6&K,:рs)c_ϡՂڀz t[%!]M1-|~!0>1 -8F1%UZܽ^Q>+*NPMQYؿC9{˂4l1H56STm#De1I`ZJj2]a@v͑fEt"X[R{rn&\b;Y[<Z=FNPYNr :Ry EUS\Zo` =5ڿ+|7Fdlh_$0ڷ@y4E U۲ޑNj6 b@{YhDL9| D"$dL)J.rˬCa fƁQ8cyMc5]~ŧk,4C 9~WxrH`܅u!9 s4I`X" Oc!$u\.ίvh cj£]u D[}mᶷP=3扒-(W+Ә h푷6wPj6 X6e\ҞRr94鸢H-&Ia \zSlfLvVpd?3k&'$ o4Vy]'+VCCu[Z>?⑺ߜ/_4yJ0l]CXnVP xZ|] :T~_DcG%.+${:P aoEkIOذ<>1%IUbtnu< &Dd/ȶao'A?0 PA8 rndg+3b̥!N[Azq>RW "LXkmfQ~wTUTuip9Q^(Cv|~s%&: |MuYDYGByD}?e/݋' Fb25LG4Ɣq8T_,Xǁ~Yŏ~wCN2aۖY A4kĨQ߭VB m(u}dzaHA41= (C(AMv+/:_厓4HCxwI|ο($x&:\8` F˝_Ӎ)B>ny -'t \O@la;}\u^(S3;; KB$d hd2ĸyŶ~ ]) bη)&0|9(SVܮy4̓olsF>+i.?;67߂ eqf2+v݊OE+g׆GѻFZ1 n ](2_U(EÔ-Zւ {_d<h͏*H!OA"f6jBMIkz-$54dbNwcAb$)z< H{gD#Ek˭XS٬h7 B[/~L`\ 36mf)SmfC1!0*0˲csآDw(cC*e i n9L^ [ANwc=;iT!Tnܐxxqq`{rhqe?\3-iNۛް>kd@e%0,߬#v>鼫VI10@.̏e" *x=S7Yl"j=jq,U#8wZ V=~/84kW#b{h!ePJ/g'Gկ_+isg2u=FUg: x.-Fܪ@/ Ccp[5W[VIOՙ)) D_^jhlǣe_S|$5d3=-:0 >D;{ ]y֛I`ǬGk))[Y96Ѳ'zZv2Un&ת*T1㔥-Uy6KsO%ȑ&h?w{"LO֖_{7>)TiTccdlFo ndcEKn&pG'xՅ츟75MLŌKId$G H3C"ab 4c`7~˗_,5:JDm`s>B,t;}s%/H,/vF oy@{fܞ_'rΊβy L29kHb/uZ1?׆n2{3䙁߬o|\ke&[|ظٳ;vk2ZD#rE u]x+mh ]iwMmZ!CdmLTC1,̖CTHA+zԺEs֡$N4>W"VZ%T+)ʍq)5`%Cg~i*nIQ^h'kmd3$Yd_ k7[H8"m]C|dD:#|/ ?saSLR ?:iqZ+t~DmI_ z@Z7gGYmDbcdb.nuVܜ)9Ve;ǀWb<{?s1>PI*ضPmTHxJoLb<_&!~ {FמdCwUl |#tJAGq.( B/kC+8J ^+v삒 (xVDtS!fNόل|TQ~;mɟVE#n7Le-ܜ;"x49nr0cSuqO-_Ԋdv"p;7N_O{JPYй]l|-ӊ\XOnc:)з`͑j5!T='u|͉]jb%]WH(?yUoJ*hd,6wmyf10Qd@=Q ?-Y:u־bz '6dI lpo݊I."'b_' <6?=EuŘ, =T>,BxP0i|J& [ޅQ~YT?)"WF lOf{-5Z =3 mL:&xߑ^9_ӽk?e kԳ0 ;BrDN~^u"#( {S\*:KI} z{no~;r#JXZ\8c{Pz2T7 g)jۗVKm m(<7JLio\sp̒SX]񟭻3svsHZJ/`+čVQs-XDs拸E;כ(]/hZ$&+Cq3~Qё:?4R_OMȹCxٔG*E$4DK.ESbIW~>oFckށ?0PV@3!wdzU {푵~^+bs4tLnJ2z[5CPoXv2bҢV΁)y{Z}*pw7𑏧ũ\x7CQ$\}pXqG3\XC ()Aڐa;a0 29k @$,lp*q{& ֋sn#LԝQhN8TSjNWL4CSBQ/EaGF!y?X+!XUT1R6Sv,!/֖X@]gn_ ؈ǑĨWxIÐIDZaZ46bĄN_M/-G^|+j)Ğ48T$^nf_fu<--|$Oۥ6-!cFScqG]*>G.NI_Qbu5L*y%~!4mT9yCy4,Ze~yI_JR9,X{wK Xs=%>wy}H:h]Z۝2l]@7B0wbZ冾]x_@. R!.}aS.| wĐEsZ'LF8sfHYE|Dr}u3=XRa:BAhKh񟴸-GLf͒&4Olh֛ ם+]1B#ޛ>2g3DžcNX8.ieQ7U[iiCW\ȥ/wi&Np &F󩛊Ȧ#jl|qϫ*тT_W[3 N[2b[^]\unX\$gXI[ݱ@5cs>=U!V]qU* C{$V=k 'mN({1ώTY  & =XuFo왰sxX\$$5y[.+Ƣ_(Kz;^ޥwܵ%xEa:,6i`{P_rb~e,cC6 ]Nk4Z hYF#ShvR(ۣ1!^) {gDˈLְOj+aO`|17J &V9 ׇc6d?6C[UAMrR ELmT/~{KG*n ;W+F \\Z'_Ȥ} DwM`a`*M8Ȟx؃qvx lZQ5b}2O riD[c" 0~3}ԭoB+qT oI`҆"&qʍfjInUh<O󘸠=\767nb.w:XI^Po+mp/Z==p~Ҙ3[> SbKbIIXIKtbRM*FEf_Е_77N7cto4YYf>U.RQX3rOCG<XAKMRHOzRp Va0LH)t ~c& 7ؽHR_`lyÞL l캧 |â8P|eVϙKwQyUkNtLTx0G1jC, Yi&dtvԉ2 v;Z/rJ:k?CZUPvf|/Ę xsp(r>pgZ/GZ4 <YŸ~B }_^[lF'OeǁpSqz#=PvƆ,:UegbIʥ+T+ &X`k[R]&M*cudʺHke9ٔ:!)o>JԚ ̇{"pנYOQo9% qEn ch\pYJvrNwQ\i9R/D<*Er&bk!0-gM)1CNK``v : e>{@+l#QG>]P{+AZf%FPF3:ZCA Ss6k~WfF?) ,VpNri(yuס5''[L ÛT+1Ak?es{Io&`mտ7K:~0!- $~-#=1&Hae >L͵zRY2}$CZu,L4gM\X6ͨx]QB3-p7aIe$3;ArzL*ę/̈ 0L, TW?ϲSRTg]?Rtb 2bHfJJ4ަ8I DUK*C{];▊OSPcLfRgvhTG\3sbLN,[#tɻ+ZgQ/&?+iY4ܪ]S>.6v9 VIs/#+S2P(VnF:`^bIqD,I)inwW`?zR[>"sj1d|e48aضf$MB{"&Ն{ kLwz@u~q(l1GKQQؚ#c:}sT-cB=4;B߾4D"05ZO!8?Yv%w%M1"j`ETJ5b#wO ޿!X1/: 6Bg.07" 36vsC:c!Y`IOմo@}YU"P}7,t'gpAd1nXC-GcQ6Qu$K١< pֽQrOpdsrA?@$V;}1  `Wv^:ݏj'stq|Ghm96p ױdţ?8bl|o# ƚ -B$@ÃCH95fPc4hXafp #6LlKLCߔ,՘v$Coˇh~Db7\4^!آI]dC-P1{:7aoz{&:x@P9jBb^  Kt{HL`P_R(?Mya8˷YHɄ9Qzֵ1AP% /G@ltQXc .a@#+ /1Na:x07r!j'9f a<կc2kOѠO'VRNdؚMfڙ:P@#Kzg;`nLܺ&fMˉFc3C%XM˚H w1ݫ5PR'j~-XNpJ^L20i=NNSP򑡸:8X#Z'ag,P4i Ab~j{"+]Cr"㑤k\6@^zZBTUCIh#*@#.t~WqgtzUL̈́c`-t|uHr]F|aW`wJST 5F| A`nzr01]@ƭk\M63f?.'tVJd @aGa]p8z12bwp@k,,neG~q;=s&|Z7v*thM$Qn[3NL BS@]ÛӦoĎ蒞c4%"[iI5bkR(ap8xeGR5{12(l7.:U wP, wS70FXl2ُQɑ i&J'͗{0LarkkXPW(+#;ms׸ASN׀nǦ>;1 /iqn>? * #%bx"]PQÍWHn{׶\)i%Bi^c$pvgQb');jj y1󲉐cNf~n0p|'+Ty "FPC^/QH~'v!j˘gh(2uŭ5v `*Xictȕ|u'`;unv&մQyhy6)XßbxX"c̏ Q䡫tȟlOtPy1/y2* Xњ  *_ YI[K8w{ h;vv:tS Id>f syBDO=ܤR5dž*&}Qb35 PxT7DNT) f$֢U"7Ѵ&e?+ P@$v쥎 M xjT[j sXWTH{NZ֞dvUJsr ܓY g-_ EWivYJZV&I⬞b"?ǦB-sB~rDzR'kXÏLQA;A"apwC 6-ޅ6"gԛ;C"TLCu:y|Hj(wCe~IuE=B}IS$=~J[I:%dE2ӣP~ጺtzg+-_)%>]x[_b$kFt=s}ۓ.kCLj}Iq$ ĭ^cQgPÒځ, VU3)ߏmSq4cA=%(˚ gc5Lc*3{a`; j؍ CDMhv_m"! ƹc_I]4V |9%WXBC VbQ u[Pi):mt,i){%r]iu )"$`KK|}Wm `|r##B]rNlyNmN>S̵*HUc]k\Pe4$t[;>$Y(5iէbeڥGX{abk1N;"pHZ7Mw 8MQIn9 \od|C(fCL+|7`I-0VO(}sdrL^>*~O(jS֯|%*캤pG2m|mÒxjZMVDiP͘CT$fE<[`mbxvuW_ȝ۱^lPEF:tqurƚtC,?#PY" HzKTMJe˥H&z+r 8hJLc0:RHs޾W<6yӾ"pD-@ʷs Ʈͳo$mVQA U&lW s aM=&c'ܕaC0zŬc i6 gd# _U|lT?-,J :P|.=wу}A dCr]7i)xkpgV?C.֗Jɮ2vp# gKDB~oIaJÆa%AN#,{W; 2Ēxݧޒ1#c%hb}=1^K@-x5Jqg鉓VpA6`c^>py)̌cS-?e=##Ƶ=i@<,qoخ'Cq.EL}:' GUsJi!K- ahQ6Ͽ̣8A^@0cڒj}^9`Hŏe ovڰn#jrf5" 1?&  \{Mĸ#tC}ILtg&e`"9X*\.Gثr6n)"92q vY|t\Z~'_1/0x<<=)-Bw b!^dZ%O Tp>M"rӧr|SxH2dRˤ=lf8h'B>!WLiOdp9c[ gmy<'曳ʥB,kAng?)8-5NiDeIVq P֥"҂=~L ( Aa&fx w%I:{lJ*1߻l腆ԍ y)Kj SMO7X"ix_Zh$.XS&G?s%xRDk2 z.cWgDWz =m r|\;- jtcˌr%iQbu6$HG{FI5,[q,F6T,cuTd!zf"̴L6ݿe$FӀZ+Zuwra@¦%QvD'>SKQ\"! m|A/N P? C5T p0*P3\Z(F)I@V}ItO=A‹tSqu[˴b1 g4h4珃M{Ck40 0_2<TE?mw32 Qh-~Pٲ p-sm_0U[j@K1"GŭcFR ؝6LVp 7lL6fQ$xFP n(lf9qq\ȋG)ȼgjd%nx2c)PE˃hI![ҾT,$--7iė|ڱ),hB!&#a2Ϡ#{y5:nA{E FkŤ }Ui9C,jU_ۉؐV"qmpkq[@D]^WW6lc? \y7_,ǃ Af}̩k(GBl Uc?r"AYr|Sm GJT77&DR۝=Co,8e"V 9͹ȱ+ذ1̡p} 0 ͷ}bIH";7gbk K6-IigpVv_y P"\OvN/Ieׯn4b<-dZRCg&[OQb) ,*%$J.bI.WT"fgc)Y;չo43+.huCA']?g14ȽR-w GsZbw e'A8N4պSzr[)ӜiQm$ _䵌+j&.0 M͗5MO wt-ijw pA.E묾ExjpѮ$[`Zm~l #;VQkqR65+kѹӥSˢ0jiϽ4ah <}7:=E*Xfmݧ%.1 L:6='PptGB0pbL!咙ى z? =CLqb Ktop`Փ{wPsV EҔIV L+T*dUz$WfzLqpQ~] q8`F#z#`Ņ7+&>]#8jdwbۥp-999~,̚EbXF^Mל"i9|s 6(@8H$P[@wE%dLv{x\lC c ( mVs7yp)1@d ]?ѯe_}kdB$Y Y#(GA^ٌk UYچYT .ZqT.$xXi"0)چ=b]d{sS3o&&6^FD Sk>\ N'іݍB{Mך)WꝢ`^q}&O;P. Yڑ3uf/yp,d[B`@Ɉ 8艹 *& Em.r't_}(TkFhwz.F ljK tbU%꣑PL< pEhd>SZtS h{CЇWi4´Wu*{ 3lh[qJ/0*(Mk[ܓH xۮ- Ϭ&s0(lXC9$ruJx\¯l,Ň7g ~f :J؍F #0`6|c1toG'rsG iǿ"=xm='DW-  2kF~S_$5ۼWAЌh1V)MJ¥GPkS}(du^\,ƬWVn4grCK;cڴ'^x);`*%xd@5+%j$`ـ6Ӟ)D!S5[!FqTjĨY-IS j#r}bv4@OZȚJ1*rev=ը)O8 Jb3\8/M.Z-NDuP4|@Szl2MBl)|c:ş3Es-{(RF!k8YKܹ3H8!-yF[[]L27Iq/!2R&򭯝A]9%j7)̘uA݅@b=Lԍ/X5bun=o[q 2, kzKE# asQ4ńvV}d7K"xy Գ"Z*:i wd<sz>c{Βz2Ԍ.ŷ8 E7rdЎ']Y/fVZ9նZ+,~Irxs#d' BaL1f9ϯhbP5Гu.x@o0ՖiʢbK%H,dL5T ɟ>uj ´E ,Ga*oAus#bl2d3[cUսG{t'%vE\w 6sz9n6J@/h킍Sl DH< (75/= E97NHl v6f}X)Xt?jqV!e7'|^+bZ< Y( myh^dr/`"H/e̗@Ԟv\ŒEym?V,$i)*m a'9ڔFb|<Ϣ|Z} @=>F%I4JwTcBX XmU=Ŭ`N7gj|*0ݣ3m<%4PK{J@ Z:dekgr"?:13eX#qhMa`C' W]Ո6/ "PZRq6I2']yW7Nk=cltOI=pt {(+0D>ӍcIj&4*;(ƌƏ9 l5+p,V+ܦiyJA;\ȪP_b9ߺ+,:'ҸpUmi['譜1 E]77t]q7>Y/o$P3xhu&{9;‗S8srdNUNڲF;>y&jV ⣎CT!(PVk >$fN,;t "6udYZG2>Iިid >4R5Fܾf5=caׯel2\rE1a3j\N %(CTҿC­֨|S] %-v Xל4qM,7GM)nrt6hOS] (,DnHeN$ N(Z](^ 1ג ^.%p/WQKrRF?|F,f; Uֲ6ZH;Fh_㾇;"۠\ {Ge DZYƟ_TL(M_N}G_)Z Ja 'atP`xkbHWJ0itUN)ްiGdߊ& rqx`V)j!z0 9d} kz{;_% YjwunžÖ5!}_Jϓ"Lf ܌@N*~*}wCњ82o7{28a$v&>!"9SoA3S-A椇7r)_J`x69Y4Y A )5^B &:W9[RDxA·=O:Rm}E`@GN&?X /Fm!m6ðZ^~Ōk2;Ym'_nrt%%/9"3Ǚj1FO#l[P"8IRޠ$%9|'I4sI0(Rtxƽ',{y Y #$:hDQw*y/M-D^'b2whyȋ&{ o\9"%499 6-^%WM]*WK?NXiKZHЄNc;P'ۺC<,\< \a#hbKKeV?(ߗ?:-FiGarfSugLvecWS-.#6k Ip8o8'c5kq>ϑm:fxa[TSA ,v 9ˀ`׵ET ©x>V*VS#S^,j^VКS҅1kwa6y |.'3K(bl_.6[/ }ؼ,XzS("8h`~\]ŞqؕsKthޮ2 |D3ҊHW8uQi.QiHf7$Aye'BSCc$GM"Bn'bKV?UNs ̀!fiE6_[#Dg&mDD{||ڿn-)W0lM SB8ڕmTI8FqljAi L;RJE *6_2A'$87r_'51 ]3$=qlj8&/wF>Hg كm Yr|cn[L6RtX{d9G{ǀNPF҄߉L&鑰4gFjhه+:6{0}/N*0҄r&ȝMa4(y %VW5sȕ;c0!d~0:bd1Omq0APd;?pn !^I&$t5#<Aՙ0aT#WjuUp>'wZ+ }fm#g 3"1[3 A+D?8o 6 Q lgsA KxN"?M("'gI Y:43捣j{S׹IcCK:&vkI=UJu,|.ߞS!Kpߤpkxw5oTptf)|3c p5PI|$X5xp+m9kpl0㥇;]B||M}"4`v?o#>=iwhWj@aP`TE/Ad+R?;5b) dݔ\WEMľE. nS[Qh9?2cB '@W/¦^&},W^كyj3@[jƉ'>&3װ.1|:ݲu"/ rߕ^+GCSY`P ƺj[enYEr!C#{ҷ<$BWSwSiJ?7{5'㪨96q+vHsbzUanf$vv0Y>bIN\ہh\MʵEv/]Db9nM v_3v]IT'ev"4̾,4FM>MlV*CZPGD8`0vfމi1&V-ei2]ZO}Ҍ"mټvdL:/pv13m뺭'z<#D -8e*>?WHgoۇK8_\};>Q"8Tf07Gm> 9+C(d{P"XK )/}n me=;Ȓ!%cpnbbb lDsah^g2Jʼny.Y>Q<vR޴>p{׎[+mD~#tᢹ?,k;l+j`B51&]}]G$o.&(ss>3ӺOfIw#/6{I,Qv+ԠSjޑpS!]ٌݑy.3UNv̸PyN ";q|Q!Iy- R\-WlT"-K%m̛^t3 !lj@,QS$1@DEbJiԖ1@c&C"c@{Da0Mz?$Wm ei9~7 =*&Yg( 4(pPZQcBvJRĠ('m EJ _*- A9_ln>à=75[nBL 'PFk=X.d}OW,s,?9[$윣&Ss;cu36p9Xx6L_y3hvPW+>fI"F\{rϭ %IX&Mt3N;= v'ޘUFm-AZT@'f &pdI#MDx^Ֆ! C jRz|j۝nX1CPnjzc.ߧTh]"BDuвku'树yR"tȉ%C(Z%VC,`Ǻηs\= 8˪I#EuUZl׻[WC?My;ڥYо*I}~B~}g xv': L$RX=3yDe.nñ,!Hf>R.* AAM1Q1#mMxN:O`q ɻ킉"۳ ODIMjm⵻.O20"*FRB\)R7L8E4I-Q3I0`nX޸wZ+- "9)0O- ?CcxI.{;g6rIoE荱`RHzP{DuHPI;џTD3'% Xz5`4l~8);(Nq]F;{`BhH^rĂ̈́҉RVp7>E1]"QhDڋm8J]GF B ʈOǹXUC_Oxm÷J*g ))WSKhpdwKь`F!}uuSܖ'L){hR2Hvu+BP!&1^vsP6pqmo5Ye puJG:r'0f#sD|eJMQBtTeY6R8%SU3ţ:"Q6"39T 6j*:f(Zp0\[m8MK*G\Bw5x,Xi1_3C/ 쪲Շc'L_" MVEO;:W0DC ?b,jߘ0P_1PH RC[X*?UEt^GzO=wrrAalvMION8Ö Xe=ޡU'nlÓ]8qeb`Ĵ;D$Q`~46)Hп;lw.N"v9D’O峫J>bS*>BHJF 毲kp4w.j-kW y?jI.`A>t"k%+ӧNqJ,nڑ'c1F$?Ⱥ?e.$9MoX. f!k{cѴ+2='qNf 6Kj'/Cf:Z$KFfvYkak)[IXF)::C vmT4\7u" &8sv."PJ]_Cga q?`(Y5Z]GKay\B&jl?Iu.P5 U?>ѹ0;9EsqI mK.S2~YB(1oQzl2{-MW#"eDtOzi{?iԩ5SwA]1`:Lm )uIa =.?OϢJԗ<Ћ22]0in?[XN :[pR^4uסּRxޢXIoF~^-Vao/?a,6HTn<ڌPCI c| ebrW(Y)(_, w]{i52i8TyyS$2T&ݪ8޻mE[8Y_i<4V us8܅((D"תBH$'^]QS]2gş DQ>}N|%;*r}f}Mʺ#q~bV;̲uuܚ݊DӯWO+.]aݱB\pg-av8%]|pN?)?FiťG /uw[xȠFvhfV+EZVcxA}£S<ؠOrizL[G/+'SE׷Ct^!bm6DKt`P|??S5\T>\"8?6"^IdGHLVt ю>tXh_hyh4Zql*w٫ij(h7-aոX[/+MgxLTu˦$C@+!)[X H}˟ܲgIC-+͘ǃٕ6pɠ-.K]?0kHKW~r^LbHyqqtpޚz]eS Gur+&pŦJ-dd;HøMy=-&O? : ^ ׅMڜr13Bd_6"l-paj7=H!be6(>} {3iKvLwHmov[$y!1, /r,aPQL@ë ǣ젤ZiCi.U"i2uJܬU  A{ƄmK׷Bf^~*2 ix)\tǧq$œvd@3?H-I$pq?5 PԗP7K'GA})(BgիіJz./)f^~وWuk=% <'q]Y1WcJtoB*WQ}>zIJ̶SCpÈ̓CZ؍R7vF.pn9yUi( :5,$Tk5|}΀ w$3DsRWoNx^~󚡆+ "w`MHU2NG7 EjζtS\kĊQtVzP Э҉:4^F %O )d` CMӠxeOBt>(gZ4!_m$*]?j fW3m@9UUH'Lћȗkg@j]rxOĴ6HD%"v~/3ɦ!d5J[˝35XtiVٔ1_fVe)݇V%XhbkGyD#k[dML$p h X- v˶KנE'.X[5* n1<:'C>IzJ?y)**(ETPew^(2@ҁI1h2Z)i8렉f,0T]LPhA r%찀ALPOFWIo3 3#=ɠLA \lb ?{ 1~$ep`1]tj[qz4OIQNSǗ7Nco:J `w^R6@cʃFz `'  Cv2$J>&jAdZZIGCtIn2IUh |FʿT'2 Ȃ@%A*] *FRUWy4z'0w]mH3XA_[KE$( U{7Q#`!|E 0U}}$^ȓiWn;Y38h*u"hLp28|~BY_&m/K"fis_O^I¹inuSgANwTUӂRy'NizM\}W^үsX )=̲b=3(Veo JI;:$ȿxNtrfg2<,l+3' Z$i9x| E%sD[19DzsC2#(͑*k'C)b8%چWMppXH7msC8[V voBM/lMi薷ZzMO&h >OSbC$H}oPv= d%~aIug Wt/, PS߿5ƕ~cLƎwDOO -:2?1lNC6Wrb0$b:1!T.G>H*)X d7ҭ+oED@Ϫvuլbo:tn)Ȳ7e)#"mz쐦[ >v8͹}$fczOWpuB9F?OBN4TZDC)$PTt?3e}Nz`t$$n5phRN[RDZ튥b9V (g11.'PXv(]\C9+ߵw`TGa!.#fIgO4w*VSi1Y[Ub߂|ؽ1݁Аi;S~ЦPHDo?C ֯TT=F2[{`¿I\!V*j!DtY&9] RL_[ѱ) k~~}xZNsWx;]O3քtqKm5Iz)Gƛ_,EeHN i,5.{adD<Wn]٢x\f3/ӽ%d]IT^ꔚ@(aBiN&7ڔ(,>?;dkeʐp_3<&t/PV94qh\?ۜ.¿\88.ؐk?JBnʙPOO໖y$YEvP}k(]z׳TQ k ϼDb# at wJ wkZC̒w䈪+EgtmejaW%ggAikRࠢPP< Ш'wh-Kzwp>׬u7)I,L2-b I+[t۵u ۩*egr&]EƝHzH Cp<$j.{/sJ{ H]NZY=!]i)c Iɿfһ(GSQJ7S̓0Jæ'BME^”j;z{"YQ0ݑKfZyMM=zU!Ϊ !(Kxo{4215neVdv{Z|z5On|jPEC1ki!xu5  fbTJ0[TU>xBBdͬ+NNJ IWPU4#5H[LcMct~vR!]!K|&zN;v擠bˬmǩdBWUfֲ3n*f PEplE9:!YQh|\8X|c^F_PW GmKќ1&-;i=O|9A;SxW)mUEX&lhG!]/:=XRޱr촬(!FDac#ˉP7kV??" u Z'@:~^/ vW)9wu_!B7LIqv5H>>PZ K!Fd€W%7H愂E|B]0g(4H^z98#o*@h;dCBĢDȪcg'{nBM3Gp/AY7_oljiYρ ~EHj1*G'1 E1V@3RNJۮ(̸(?p6^$[s} P55Zs 0Qdjj < ^%m"^;72%)Mtpw"}6mQc]ٷ0=qpTp:p_[R-?ZcWsy'c kpXcRQ C0 =69QTx_~v~(Ch׋vF2k`/O ={FZ2V+ƿuk+HC;w}QTL U^$ +#2h:f|`ԐNW81̀VxvUI:LQLi#("QTW &᠈.ЂiB=ˍ_=y%Lvs=GWmH!P_DY$ʽb쒔qJE6g+/P#E=Cjx7!1)o;y:8Lo gp9rft}Vx%dTh[ql{T8ŷ5<4 mCt;8lz!$#NCLoɧǧ9R[#^cv**rع aTμ;G|8MNt==W7-=Ρ 9Rp `xe/sG u4BE+]8l&= a-"GуJ)|x#,D8LHu^{?CR)!ZU5%=CH|]g&uW< )y >kG))J+ϗ) uqJ\财F^I e g RJk8ý$H{JLt$[@v)312s_*h62P+YZN1]ve,>^ydSQRV41%~HL2vRUxFw9s+{cřTg_Aeb 9MŒ'RUROpaJogv.QGI/ 8E`$gl1x0@sHos" V El}L8А*c͊Ў zX YEF)na% CڥrO#xUs!IԟOGBtTBV6RZt8yJUٯͱ ͯ.-d^cN <8}P/aIBzRD]6N\w}-4+\"7oɉ- 8+^bL Iʂ%AS*:Xk_kS|ڴNy- Fs_AbNÆZUk=l9N2G#ɵ&~yQ{WMeI옎\ejcc&wib׈[P15۱r>.Y;6f*e%vu*&3LB#PЉ|r ˜J[-3S7y!o*p Ns>*몓HX9EUh=b   18 [# ]XljGɦ"O͙(e/"D9#09`׫08 :94Fq4fDvXM|ќ=]- ?Cy>Oz˂bi+d549KdhOX&r-5Q;I.GrK91Զ۰$H 7Y\9ŷ# 3nk5[_'n&7O~ׯ}\{Z<ʧgZ{'O h/zi:2e}?H{[ծ eN0LcD=]iymn?–t`pѠo(eh0fW>!G@qeO)e UNV3}me 8,QAgv3;fooYx*;+0:oM3X5gt l$N Edޜ} 1P`1ϩE;1~ɽXi5<#߈Nǘ[C2%(>)K/-v);b$(*YH^ɯ6G&ލw&6}?;wLsPz7^mJe_rJS#_2wKA:`ߣ;FKkE^m廤'^8"*_ƹ&=ԉK-jZ%s7ӂ9r )aaqG@4pkg(/Jq[ǺI3-ιOZwm how jn4O_[+Aݓ۝:~@Yg/^{F os+`!UAZK2"{2>`ujXsԈTZ*#ՏD fht!bC>#cAns VA%v%W'_(7_0;"rR'D3ÅOf9)qoT:Wu|NDo<U|FE~BՁ{zJ- MB4VmFYFzF ;;nǠZ?/(S, FP?#,kze Q LA4@=:Z}l*x\YԻxvta-H^8<1ҹ`X乧[CoS_e 6/%O 9J;R 8h%:)BpH EJg=a@c92_y!v TVɭe­rP^"T X2'V{g "KL*A!Op~uHoUqlW*LrblF gq[Hg^$^k 9ĨߪHaiNK5O{&DcAMnE8(gZ4{.8eHXUuO8[ @dL&%ϯ1pVq8u>I5E}7=Q=XJ3}9E?@MTwJ]+D~"v$%k-hҫYe \L.$X{cNQII 6m^u?4*xoFW?›* hX\Bz 3},V5xɦ{S{e zDx%HC,l94[ PwIժὠ!zS+ђTS3c%lu\jid/ll֕k)7xqfU +T82AOK0X=wyh{X&MaLF$pX!|cN&U.澊s0nlj4y/G:!AQwB;HW:e-לs,-o"(&#1'HN/C ]f){`jM]\Sݻoq,ij׻Yd&zQ4|/VeyZ`ZRLO(e&]#v\hV ~ R#zY3>|;Y9y㱆Jv㫞\eFV&Z*}nSM)#)5'qu2ظ}#S;@_f:}kE=򔾵,BYo&U8]e݇囂bY"d,R$魎êކ? NRDmv wT!+cB,~&LzC9A|قWеXn%4w( L칁Yدb%$l8~wi"L;u7h%w&EV8CJT^ wpT[1w"JwRE ɢ斥kQ:Cj{8vOh="%lb,U6BЙ} 𙴢Y9.ǟ@򙣚u6\#!4~d \ue+HȸXp9|4T4$$R+>c]V,ltRG .Ħ!͇۠:S48H&xXK.A KS\ި+͌c|LњJٺ179,BcgT@;gehś84jlkUƜQtdt0LzHXuGւ57E0LF%&c) (FPO=0):sg' ͌/1G.0"\I}gԍR:GHDᤅSݟ>ҟ`h(B;/=rt.2Y`BxM@b`-{s`X90㖎:c^HmdY?mpZIa\:+e.ݡdm3|PGY_M= ˸i#l*<0`mCCsʐ^U*CcTE"FGא۱+Dsp_4 v kSJ 6=%U$.Y09SFӯUs*bwk>nf!ZNR0aE^j,+ 7T .զ-Oz&Wby5-o $=3Ys hʰݻ⧦A?,gE,1<]3D,^2tQ844|?!;VSzZkYsQ-6_jܥ*}S,љ%ffoWTSoW֞t!H1 7n'ʺ$7X`E-6PRO5Gx>NOeQ`}U Ey_P`C14;~Z^/%:+gi͘\],pay_^cU~]Y8Gw= (SƤl8gX@.ТbSn,3vLfHMVEE0ݟ;t~.1Fvufj)CJ}0*\-N^m6*I˻TVgu!S3oI~s {zϒi<1u E!G؜]8+/BP/}OBM R3I_h,D0\*$rKqㅴ"]n;ڨH'{Vw'NG 8 -_`"9R0X냢2:5іqUbv6z.fN" Ͱ.CBŬgTUL9k[Y]8rЮ7X tr%bDSAvu tPV*C.oiEmcg[AJbF%}d6 `؉g$z}RA\-o[!VnVlLN̿pyYyi[rUd׽RUcP[/zpw#ŀC.W^^idS?Kn= *Q8?P5E$U iIS!E>#yQU~'׍HJc 72KЭb{f *nVۂ[A*T•PAn#6쮉%xCcEqw+IqG7b\YYz D6+ԈU,Ҁ;B} }r8!k8خ~L =G{ 1 ոosцfܻD0EӇjյҀ\y,y s-F&|V2LTn|VߙGn %T$H<ʆwoc܊16hqs()m[4ߌl꛻IWB9',l[n9Qj%;԰m-X4:LM6 RW<-h$g`ln͋ ƣ"zAؔ4;b3˧dz$[[wXYaɹ7CN[6'ףJf1eH?~PGXD6xdp $%jJJ?!ٿNXV(zQ4hֹXr#\*DsQoxqmQ {qqKz*ցB& 9|T 8>['_x 'VfX|"J~[<ǯ Ga L+)/zZ2ʷfpy9yzG<].4Fm)/LtBj //#x2# u7KnK訊T:4-Lub#bG#ig[Lq?HOغz5GLaCkbVk, PVͼ`~pEf1uUbla"+C6L ʯR رƮjTZUF H)ge@t%26@M}!5{S~#O;Ǟ_%Ԝ7Щo *U>NA5iRZr"HѠ94GE8x.5/zGSa0&kM tR.;gp@O+6\gPfj$HGq'4䳓nf)\O?ZS>s3lXAqxLT!]}"Sj ^$|}Ror Hv3I)H/ӣ}xG{?AIޯ󵖢‡KpiNzc&̇7 4ߓ-1ulVة)%`=bk6gor9YÓۃ˲[s hl#ZI6EzV_3:ދm-Y-;1ӲXUV&Jθ8OպJE2@+( &cҋ;И'; R3flA_yHL:±b-2~ۍBRۯ9cO^x9xM,$'g&RYCs[LTǧ['j{dYiu -4{ 9dd4w"r0%1Ydz* (7Ҽjw|G?"O$UL'i"U wt@S\*ҺR 73>1-F(t`F _Zn@v{UbE2{R]fYy: /Rwm(*%wuY F?*!L`|,5bj:]24Cg3"׭O땹G cٳɘY@U`HXePw]PtT0@ciB1k DearH2Xb%9dǿM.AI}xB}c;nWwoJtUa)qPx@Db{jn.ZTfq5/Ft!^-{DdS珿84S5L[wά7,,yGÎ ^Z]=wt;S\[e:~W3eZ .Z#Xy7:L;/lqa#U%xytO)V)TX_eMn^1VJ gO|: o!+UBrZ/z TI~]d^mG!=k8Co彗# dDfr\!a+֙`X:s5u\6 ?wnNBޱQQk&M"LC&ಶ{{ )8TL@ 6wk48whkTo)ԷUh69}\cjCvbx0ra݃K:]~<4Fq`IF[D49%VX0a+18o)֓`sح)Rk7>sbW!^* ռ0./^x.O>0*5Ż$AVAf3kX >Z,#Pʿ [l3g㌫A5sW#XQ9;bVge=x4@IKp}zIG?w_W~ u-%\Y GAqnM/#-(i\Z ھvt]&@<^w3Z_tć՞iCyޓ> @ݷFbxl'n%osn c=odS:'?V>7,14\E=y9R V}!]ؗn >lUIRzde\&Tߖ a^NƝIuӎHنf@6]j2:<~&٫p0i+8Ub@뺃#aVߨD aD0UCNwSIAPP]5Wx;}=N$̏dUSҍw\ẹ̑TgdYMKe1?,X=(d"g;!:/ґ3$ܜ&"Ivޡ<ħfg3!06wKcq1h>x"3[7q#r* 8]!Hީۭ Y(11/<=0\z:"W[.Rn6Fr #@c^PfҚаwZ/qUKfl3ˢsNgb&[M nܛ+V[±c-MhFYhߏxʵ3b  Q ^\lg. {i99&CS/6VM.Bg_M5ۑ?C&骣Btg3+?8n 0OOZS 6}ĉf" *DO3g;Q@Us|d}.dK0ƯA8|=XdO+y)x҉b:hxЅcQHFoC㝠 ^ [%Uwq94 %XjwO7;?40M%2ΊGkۗt_VruϿl8ݼHʒvEL3af.h/4a`ܹT@p54[lA+6 WAYF#H\~r[6'&@ZDo(1e l,(xT`{xS/%Z=L?n?-j N^YU N0iR^l%yCLl(+ճ+yDףތѡY,Qro:H,;a䚑MfG;JpnTPgxb8y׸yVF49ᄛT=*{YbYCB$1ŜrP XEcbJrvU1v^QfX!|,}u1.g.P;8G6o*蠋cVc!gSxpc'qx_:4#q]!qѪ55kKSэZӎ$y6C[I YV4h=mh#a)G[ R_\drն̞7}L^Dxqf0Ȧk9$/PGGtu0"nW}u \GU<1>\mkG3k:Vj1flʵT#zϥ-c6S%4;(`ql& nd#9~)ywX6D`xk3~Eop4Km600*G=dt#۴':٣)FYˊ~7E%tE)T4[Qq œַ> ޶cԗ¨ /}ůك:EFj^ % o=kjR{1Z~:~ #zjLOx1t/>a4]OiE%#\C\dMƚcvF<{4ŎFdƼuD nDo=]̶G͂ ȺdqN\OHs'@2Ty+&[E(C46ӗ wzEsx Jel:c5i+A{htwĴߧ-hU%%}CZpmH\B^5TQJodE(0 aY;!)}RIp*( GsZ 2Iq[=uox?I;҉(*PFȃ٧4;ߗ伏%,.@)ݳR(L魇4LJ QaV^.o+X#W-@Jӷv72h+,!6Dm[]57*O0F`B˹\|7bF\(MJ+\T0f&›nlcZø),wBM1 )^F@a =}3Ca.i.; LL )yWbnhYV1ȒqSmRy kR\o ]q}(,faO7*TGA@ LpMJ{gpH[!G4ZH fvMq7ۖ2Npb;E/%9U(b*ID"!\;i7lKy{BQ<FpW`A PJB >- .\ըY6Mnea)S*4NrCG wOVb ԪT}2V1̀Yb]S=r[`N%UuJsJAU ,9ȩ%k !uBkM<{zgU$괵xv'zo@-)57mMɬ7 9\}LR<с}<ϓz@`Nf*$W D ;B&Yl9* 1|SƸER^KOO-@f}AB9mCeTJ{ ˄@.ze0 X^-~3 i$^U@/5p]~oOmB~n:ܬ;|S/fmaAs:}6l괺Zx'k60-"3P25E.#P%+fke#D.a 4qgiT=E,A"V+|iW"sY =Ƭ|Wi"z)7T=,NgڗiXC$yLQ*rQriND ib,R.DCɥ( /`Z K3UռAo/eof&H38hG|%~W.?MVJ#orB9a"{(<p,jOtgfF[Ubcڙ(v1+bUњ1ە1i2QN#\aZpWuOި8^x*P AA`BԬ Q n[ܳ`_ d);7WK/hs)a G?NFQm -Ct;b"B;5+:~)>e_o [=WOk }/Sg2#[|8oc}Pkap`aדш~ S!)M$l%is!H%?[UfA5CS*_U%宅σ#?1ߠd-+zOo9Ꙇ\"EBڔ!*5?G 3Ow3/}&WUYlG:Г"L/qOD̵־E%W _/R-宛\]oVe!lf F, XkZQ4 ^CIjNLS؛c6N 3Q؆V)Wd $,4/+j^SiM<ԏ%( cEp9% bѵ*Gι\e/?-Ѐg-lyc!`< l?z%zeN ̜Ztmq)2C/0op"Y?:pWOJj^L;'ggYG,ˤ7\UҐ\(fwy_VG-=3Yo>Ѱ+f?A-BlU.r;U@K(&YiC9̿!6i|`J|șAx -*Do+VXbyJh㺰ؐ,aʳD uzHeUx.NBbU N|e+eGMv *U:^+T {_bҪ[XU;c鬮pU CLn ڱs8`i%Npѽ֦u9psM,Y|lH#L5Y?V0ǴI/yIeg8Bmﵧ?JȥtG)6D 86`Uј94& 嗑kl>mfKLmQJA#ikX>#ɭ?֫JoRX*Rj W؛\%.ȞB AFU3Ff?]ZB:_cO1GHE +?T:~bdbbŮTIRRZ&5E,ko/weQ4q+#3RƋE,vc&^MG)ɏ9ގi[ijS/ 18ξ2G8{[rϦ*guK,6tGvg{ězǝZ3>7UVL^v5@v9r( "0=tEm |HwBE,(n<\$´+T3JɸUr=,nPeM›=6^)3= >7wD%E.dȎ_㑂[:乃jUGm<:FvCQ 2qvjU,d,wʯ;wK<43|Y;_odIE,~4 #2Y0#Ѥr\2?Jsځɶ0]Flqu7Ki4è0Y_)y(B'TjPHT8] 4i|_2kE(q NCu9c\**1-}>I.XcLK`"`< eO! }LG 51Y,D*RMsʻNҲ&\caB1u m[F{{t*@&D d|nz)e~_Ըc XIZS o|E}2i<"&WOAIa9򑖓l= [S/<)7ވY\ӯNe8c#qϓXvgF\#}+.Fb_ XEABK+7Z%Zcף"{2V d~*/D9L2!~~KEFnּ_Ə'脾䮦>k@ z͉KCGCz5@\%Ev.EÏ < ̞($-?*iً/PX@>65)U3" (}Kfi- Ѳc#jD 4bBiJ] Ⱦ/Os7m繀.ߘ H^C( #,zV"g1P-QGyB=/>3wW-pq/a?op90_9E|e# >j HN:q  c0Jܸ|[O哲@ۋd[Ƽ ;  T{7H|c)+Z#/Q` JvБc ^SdV&y kYݨ=a[[/cX3H7< x+ X Xsf3Tj;Tbr(&:3{1.i`;2}np"θLۄRh C/} ˸&ƭ`VrHxZ=fO<~W6Z3*r1;`X /5(6Pghydm[AFRz EZ}ha!/}?+!G  *mw)xȍyt ' \ULRjg#HC>cdDpxxJyfqZn`Gˑ,ɾt3tH$UT=FFsu#?Fٗ>1ly1m|CS߀ZSۇ89/۟Δ[SwgB9ZRO bw(̧{|} ACeiyw)4ʨcFznt-”C(/]QBO1 dXܨ^#3?YPNswBڷv BYl= v=ZcadGyXޠj1Q+=CO)IpxR[DgC[Ey(J]u 313@ "L^I=|+tF-v1qGș9b$+auF4^{ޚ*b7*0?s6 U$Kbw4ɮC;~Q f@9a3㝧F}ZE$Us 򛠉+l u3;E5dm9wFP9tuwv YCKxwR(^1.Y ' .0cXwZ֛'5*PX1DPV`_.louXз>^dzo "|UQ*!:̕9n-)Ab @6$zդZa$ֲx6 9ip +"1~0q[}E_K;]%TƞkS7df ܘ#1 /q|TaUațBg0 7 f,=}cRAU)vaǸhO,EmЖ!mWx$2j7 &XyɶNS |5:q!8ڝc,\:'꡵K&O1|3Q=iVv1)Aj-.<}r%;A[ ,QI7'6kFd"؁`LyԶj#R {ue4q`},CB kYK|ڴ¨F ozG  d+;PO{XAq7NfDyovAsXr@hU>a*ۅ[gccqbb-ucJl`PD[EPws]H*[u3Qjح,vh#ѦJ0:mS.[QvI%4/9 CB˩!os/V{ȑ&2ʽʹ,5D,WQLyVxwB9P 4ed[x: !1F,#?u|&m<*>W?ޝErA"^P:sbmgTs!|Q$$oPt oFcd 5 ^_AIŶW>WS; YǍ[1+5 nL pGeA;g،/K11Tk߫dxdeGAj'wxK [[JqTTF.X@me,II:i˫@̭>19Ȭe/ ǒeՖz^7KUK;]YVn[%6: P AGe R/?˓A u.H~N RVx4< DO~jQk'̨F]Rigv!]$Xwr>NnZk8ǑIM*{{5SJx zٙz#v{A!Jw3g*)f4MYgRx?kL{ZsC\@1 {e**p%2b Qgm_G - Q%*0Jc 9 ̜Iv3!)I׆= %y3},(fwneM-xZpSsh.2oqى3+'M]3Ux|'\IwǷۀ #B,a!j0 w}mu("1e}5c6`[`Nb FMa)'J8g%Z4& AS\3oN~X^/Q1!LENxÚtxxBq 邸c$tm%YӼ숯!<]hk}"?haݙ6Qg#IÏh1a%DSDbQ1†,.(q490lWߝSz'ݔ{}dj.b"WTD\BVֆ5RaBi%/J{!ܮs8Vkn- '%45 ``U+RD!8_w&.\>+vY7J.=eoJG$IՈ')^ tiA&c;{.zOHy~۸]O)pL!F8R-z2 *½o.zWqUˬCwݍN+xS^Gdh[(<ˡB>#aQ#}=%UU:X_:R ;f睐SWF8XJ86`Pi mD.%2cJ+H` oICRv)H^$6u6@ # |-cypK8~ɞ B<Q{g;-S<m4]ώ.Xn/;Bsr>4qf67*J;vᏢOq*alxq~{.|d̤;+Q({H:=RAOYVm5pY͚[oR!ry  uJ< f0=oP>:iU\ks7qָVprEBs(\P{GBZ'k󍀄+yohHk*1XK9`t]CE7*71JpQ.j8WR 9(}Q.YM P:YjԓZ##ϣܚR6}i r_G5D'J6 nhṗ/SD87uJBܭrRV?*gxPJk`~/AcEzT'`mf +&aBG = rT"qͷ:H HZ-q **p S>"~b-_RVɣo?jnCj$LJV<ӀlTMo$茏2?A'U ^UF{E ;IlטDHnY{f;(DI/]WDdHQ vN'jS?olT$1 x*i'C 3BbQ|A&Jlh`R1T25YYTuIP݂ZiuVA-jA'rbAA#_|LXŝҀ"N,q6{a2 &yGFe_Pj7&Iŷɍ%XX֥k,ϒm75nd 5(v|OϓrZ9|Ϯn}/h!7ihvrpa[;!:t-^SDf2_ARg3]K1ƩSlp+N2+;IO.ﮩA)P-#6C:B.3VJ֫G:8?NpX90޲=~ٵ?M@WyretZ5NDmʅV%sI1@*o=KRi,Jl<{Q 3@^"'Yç͏ZYCX vV$.e#Є, !cp%:rR86@r@~)H\[p|!vh9! fTSדZw*G(9J x9AHմ azt#!l $!ط XdRR`^?dw)7zϗDuVڅEn}{=#7dU[y$$}@Y{EQ%ai=ij. u(M{gaiuortN^ W7b `r%1nJB#3/o,e y_N)~q^ƆNB8w+ IL Oȍ7:WTOt^fWs=gl=l2S|*"ܬa x%Fhì ʠZPmuHw tԷl&(l=|9Bcuo2?g|RisPtR@ShҨ0!-|a~:#R:Lf˹"ai.Ɔ)Dc/uqH]FAaYXzY{{aa!ؓjO!Ը9 1Z9$vhcDl/U4 ku.ڸ&3h\ U?u8`OCX|Y)q3;,wlu 5+xP@EEݮ8{NeP_aIzSrx y{4ϔm+7ÔX؈~Y|; [͈:=rC}уg.lj_K$I% MM{"g$; 4y3g% )bcؤtS"[cfΫbCc`19eEAwhK5'៵~SCE0eo;uT>] )f_|OMm !n\b^w9+$ MLȡzřl5w^J< Rmy yŋdŜC{fkPlpG/˞H}0t?v- [+C,@QNM-1,mSu/BӰWHPlSk}ndMT]F.!"|BDd5qf ا1#5oPJ*Y#>`twxZ1iy[ZRċP6@'R4tMcRUƉ9U sEb)k0!HgǖV* 'hl;X~29a̫N d:m0EdUWk P@>POlayȓnХoIie/jҨ7[wr,mBOêQqy1{cL,z$쀉4CDX_N*"Mb+l &H{Eqѐ1c&CS@`w&T;}g.!*>^XahXZ!(d#oZbnPRhcQ u){G-QZFK*ߥrwi 3tPtI难`6vɬ]Ԥ'݀Eԙg&:#OU9}JT^DPJ<)Hx?rF6QB1w!P&Y6J5vn-zDp[Xi#wpFDɪe c R1>d {NRDx &~Ma1ܯOQU9T\"~AANjcE>[ pc9Wqo1 E "^'BR۞g}Ixo6jqIȂKjO$mZ Xs8\hne*}́W-VƢ]xvY%$ǥ=o!bi~ jdIU#Bd}I98fI-Enqq>H.GyLtO*!6<1["lf UB~6% gf~ e F(vkgY r`9#oh.RCq6c u\!:]Ο@TOg=~.<Yjz EO-n̫y;O֦ImݬHn3raS&lv$& 0͢ulnP ۢ .dx`"+bk WV?Of" Ŧy Cw- nak/ao[OS 5f*u 8hፀs#'G˥(yN>DyBA0W\/2"1I]I! P ˩ >:'#*!\=Tա ~ZR3ii'>Y#* Ju[f3qƙRP/)xyP([._o\Xvpn|M+<4O^x2EOol,F 9$[P4Y >W.]qLΙNͨ&|Y(dV޲y=T()T|mI7'|*If-GMB~0%B>cM&Ss/ҀȅΊUSwTf<\9>Sh+)U"ՎlG$tzM/dX|f+ (bhs%MXrj̿]H؝k2xٮe$I*/eL7PL(;FmBB5N 7y%$v1t W҄ŗDH}iI.`sۉũl$4U:ae$i'^` 3$INƒvEŸ $$J8liVXyi'ii:_hގӡsZIyGqS) C{Z_ߨҖZg^%" [ X$jOo{d[Eōom.|Hi\wo,߸?J>}{Y'6zrM䖛$):KfOfXZ}`̭iό؉H0aG7zkwD%Ba_Mf1X9FVo ͪOkH_XEd{s6+Yq-hّgS䗠4ց\cetJ52>i "$y?sLLQw)D1I =dNPZh`lzX?\'=9ԸH+BzҔ\΍GQ^|3zQK?2IOiV 8PT+}/ݔǢh`!u^,˷iIc9?ۍ49ۥCh"[-XWUk*8 j X )BȟV6ޚJ`J}f1e8婳,A9"qs4vId_OQƻkOpr|{D%0 ~D2j+%k&Ų垂Iz"}ߟ18 !O{Ymكz}7s,Yd~2xdmžC"ߴ- Usf\^Z?J0_R>"4NB 76~ =A͊lEr톑T?C4[eh㋬?}쎫C{OutҜnE=AT'ң -kY]^ zH'7,Q^v?3%Ծ>UwϿ##Y+K+v遟9[qpvRj}ӹK9+O֛WWQ1vlK!BE?rtJ&wnM\"PrgJʍՈ=geHp3OuON1Sܠ~|u,uLa O/n ڛ?; n>uO;ia`Yz/){ o:Gv'K\zNk,vGzt(? ҩYs/Je,P"vί<)8nP%lh)Ӭ~W ] -ocԹtyPLY"L`L^-԰Op8*XR Xd\ºK ^jS?5Bv;Krw&< 4, "_O!>߈ zN-YQ$T6Fsk5]{NYN/;D2/2D =yTX,~1}eh#0ջ%~я4d.=`_+P| !LJXFz@UmD'U* 14oC ɀ|}r:vmU՛*y@t7i/L6D JX2!}tbg>ޘ_$~_V$)Y\+(c!,+0v  tѤx' $t"~ _f(mS3lTG.h"d.YHmf'G::oSWB6 @얨SW+N`R'鷠vM,ެRDҠC2RwQObQ'¸Ow=vu$bx};mdB-Ҝ"^A\ xe'׽y10$&EeC5Wt4jYo;!ޞϑtwWOXQy}mK]PG,)ޙ{ǙSnՈN۔c'3Ջ۰iފqYX=F͠˚?))̗׎K|~pwS/yRx~뼞ݮ%;fN^1"ӟk[κ3@R94lzs-'dL|j|z)4yŤi?C59"H6##2C>>]"wΎGxYB1Z O̓n?]o.:JWzׯX\[q=ߋASpEx_H +%='#K S5:>hKjmJ:]YOQQR+DOnsڧFa1v.AS=$rv rP>]W lMq ,Ht1yzI|?(fblA^gxlV''xQ Ǫa3Sw::. RKt[_M8HC E0flV@L[b6G [ir#ȒZc<$ˈkm0uNa +Gl-_+`QA`*-<5RvV}ga^>-͙ffr"x)̛&a^YnU_!DUa V#g N۲{uҧj3.%!vrI¤)r44imz%j2Ya7nI jsxh]@ p9\?F$NR*E̜')I_0dQ3z9"Y.xm UPh%C cJ> L'4cj &,;i S gV tGCjsY[z]*P`:&xs'X)$"1v!HQ1WVvi}u`u @[D`r`BGLa1Eu/.faDɥh60ҍ[iye|(~5ecYP#CAIXpBWINhBhgLt 1Th64u|tgÛD+}-2g|^4]V k e(sNxOX[ TW(5,6yb:B#79"Wou ;WJ*n,Ӗķ5Ee;.m$uq5]+T>qF{}\ՅdcnM3R7uۃ?,b=PZFoJ M@&Q6ZXd$zyn&`t jTˀ9UCKL!USSo0s+;5Pu$U)N_߮?υygbFΪ58$:pN[vT!98>7 [AwE|2d/'B0[ϾScPl15Г0*@C68?J6zToI=T[7zKhUu zezf 5b>\ $T#Otޫ3S{I޲zH+`7) noyl% U]?4;zmtтw;7 uM v#ARKc!gQAY$"#&T=wt,dk^=h6^xMW? ̻ؓtXR6O>l~Ptׄ9m|ɬ TM(b(CZRJ|}Z"fǁYS"$bAW[q_]l}y=W A~R[8QsW<`J $'1@b}E5E1ǖ!FBef,c\ fc1y0$j"_'WƜKASF#׏Ys0~R@`re1 v[?b,> BLׅV/xZJ? թPn2dם.b{rղZ;5<$o e_,;cc,iQUo0!K>47QC 0%.%S냋*SR LdR\;SLVC/}tiG8*~FHxsL4;7d#Q+\8|!a~Ѓe-y\FMѤxk[*_r'fEpL`BOrtö~M0rnrcyÙ?q"? X]Cf$'e9iLJZqei81)ӌ &Ht7q[P"5^3<.Z&@E]`^ 6^]N@7]y"Yon :GA5i.Lbʡor#/4w>vyQKYeP`i v̋DZ\uS @+"X:8MNY;͵,uw^K؅\6%P5VF6dk>g:3wS{B"G&b Z<di8FawE vRg^pxςH\+7GGlaQ &2vne`1)Utxb.xwtF`qi l0i^@/1؂D5r<\X{[qUnL0.IFvuCWUI5 jRu0:9왿+?r9iRpbG-QZ0c⍧/=AojF wiH7 UQ$Azs=LsfZq[<./߽O` k+ׯAZ܅=^UF6YЬqו >#޿aT_S~kmB:}_0= 9C2;tܓPBma^\XجLK;W4S"6԰g*lѳt5r$VN("ҪjC:xqw 7*Vl(\\0% FۨGW"6[ SmEZiq~G7>tZj2 2o[~ek|]e&{ݟz*i4E'AOwLSP\T&RMtqq]X4Om>6P+b!&aF8b.Φt[A$*bw&(*C4RJXwCD_j>&}q:ʱk(|_#*$d[~X/txi}/ϸÍ~dacX9%2{AjfsٔK0TU#JK47;&g|A(/_mu ]ֲEU.Hѿ=~.( z}:R9|-}HwB^*DҔee 8ΞW_GK؍ b7LZpsxTGڶ]C 9p|p&ȟl49B-h:¢\G!ee&mGsuMk>+70^"%yhu^EV.E< Xi:0h&u*{˩$[[$.73aeplm.r"Z2n![q(|Ϯݜhh#WvF))%c4[atUloX&ݻmwwk{g}Zg:ʑ,)fov#qdP@R\ўP.O,}ʭҽKV6KR$WT\Mth=ަ0'ҳޗ62T֣U ?wވH)oѿZQƩ}:$?3U&T o4Q71S9&1 n{ڔQA D,"+ce9ʡі}Kxr>9ɂ[A脼D!QdŸ {ʣQg2D jG=~Z3sJ%L|eM‹yO[9_+,+*uwm['cE5XJ(I&!cN<4rMu~nT\"^2ЌC#5 oCCH|CG EאruC8rfb2x Z ‘21M4uf!m )}A=Ո 7 9 Ta 8Dluej/vSEJȺ bZR"(sD&7 :d D[f9j\7j16;=@m;;%9iap(s'׃2JN\7^D;m܆NnR~q#W/W @'~.8Kյ >YC."Xg T3ɸYa:-'@I6׈RIjIغlV@*T &ͮhWO" Unp׷̏'H: :P[av,隡uQEyÁoKJP5f* AOBA O nȏw\( %ɉr T&QOk)2a3s8$ht#npV &cݭ+TfJVlwԏ@χUtX }=Y=> 6#(}Eti|}W?hMGwEP7|d%#VV.뵁2,gꭱ {tǙo Uyp~VWM`#sPُBBҠfܚ:|mfcgېGvLN1? h,-'VC@C d_=Oۦ9P;p6e{R\uyJ+˿4ZK7C2K#d-5\*r*Kz*휸JyN#d϶˻_V~iA ~A{ Y̩j>5 dw;KƁObk/T+LwIckeze;ܝl 4Ԉ~bJ1cxC$&~v>=\J{</NA͒OU~Sd"ן؏麎Ł$# o Y 9;^v;`3 D<347g7ؑ-Q9iVg\z$/%Q=&[6ӥ,s.:W"WL00Tm7{T`XŎC7*ֻ8!? lfͷ{ZKJ,|ؤKj*x;SC2-6~2g4PM ^ i"'Է.2TkT΋88+RpEP8vexH#kb$&7\45+ Ite4&|~4$pw!SC.'E8.ÔBWss(h㦼߀WT MnR*3 `bxׯ<; GxQm/VS) 뻇ެm 2IJu! /䞝;u8/,W/OH=ɬ/љye "p Z_*unKֳ7^udgI7vlyMJtr? V<8hbI]a/f$0djgnܝ}=³N6Y>+1@6./oH mt~>OGʿ١1/f~gUxC6{<Swj:U=ȫ] %_G2t(%B4\xH;dZ ;mF<EqABB$1S? ` UҎcCU(D6e73%Mf3v?uEdž(T4"*Qjy*KQGɖ82jgEU !2b't >)kq>*tDz"= fWg,`/Eow0hr ۿ_$A]nq*.oAVۑ 0󤨿)~v֝li',ل>Vg( YItŇa9kU > j N"ed(b]@ ^aJ4|bV;=Bڞp(-CA% j kTTPpTăBL~_tibHTXn-v")CH"F}H)w(018"ۺR̠pK3Sk;`v`N#r{7ϠtpH(rs?zR~^7U8Ǜ[9` +[>xDwYj}xT{HG%|Yggc'alH:VLwrRMibJwVaQ9^x,2A ]1 /rh{@L0Ě4؞~eZ2ށ{3Uwj]ҜeSҝv>5H%qH.S@ِf ,Ml צ7Yaۂu™ I@8/sMMghz4[0m&ʌ{NF&dLCyaIk8'eS&֞IT L!o` I5ڬ|rO,>lUiw" h$q f}F 22/AЧ?4x8ԉ2;7?^ub}OQCwCm[Qcy}}B  -GtߚȖ@w|pAW{O!hϟa6$^ERI F(>jm?}&!7K )Գ*3ȐbՅGZa0.@k)l]Q؍sgilsw^l8rc,cT;d}׺hćKwMk O4U#PYo1 Vr%/šS[Bʨ$+ p#"GDzI1pL+Տ8sn^Yڙ[ J Jz)>$nY!7|!A%l{+|]ZGa_n);Q8m|ElE/vsɰAsF HKnn\R6lFDUFHŀd:YB|&]$K†!Nsc:]6z ʢ;p +zt!s2C9DTyt &a2!NY=g4e}vt'Kp A/1~v3hz왉c>h߯:ҝD״bbU]$3H!?d?kt"'4+cX]s#3I<3$pb![_R{3j&?B\)%rUAW90bǂJ8jL#ag#DoCjC`l=I)P[B N?jQ|oDN>a#_?fgawC<&˄"%,Մ:H+z$^O ڳ|r%&XY> d\@x pHEhQ<bԢVhlArsՊM7icT`%LHm/qMSIm[Rωxm& r+j\-B="Pͩ1û2Ag,%L߶ :}qOdrLyK.㿝L\/+X]CdWsrpp.4CWm1觪u)-s@kt>ԯH%3史8.)kPFr|lr~OUa**0Wf~}bUh*2 e/jfS9k1慓8Cw5Ù^v4BzsrV^¤h.BL 1}oVg?Ǹٹ嚨4PR+9==&sohG A8@nP1 4o$MX%C;rؓb9CG BB“V oNPyVtvv.T}8W\ CI2L nfC #*E&iqDir(|z!闬qJ=@*y0FXb61`[H>W**h/j\S;FFl;l(|AV]ҦŻ 6K\꣈5/5aф)ў\gwTvPAkRAjcmFy(ROB({_Ho7:ye'?( [j@cm.z=\LⶾsVP"gID&'YPtbkzZ*c0x"mXu  S#sGDayBYt: "ĵ=W'w9Nx~Mž4qit$#ϟDP>ecODn[D QxHW<j>?u&8)l]wFkz&쉎ƀ|b*;tHH9N8+/jҼ\HP tO^D aqdCJ!YzZxDqI6a\`ATs?K@Á8g r8R*@~ɻ^ P)9l|}fqcB!:4_k;qJoKûT"al{r))aĨôzeOQ: u!=Ėv^[5W?N ~{ R̺ ^Fh'P?4~a, }L9 w3iGV7N<3[0OnLyn@O8GbbTJ?5z\HycO2lx]a Gd q;1;3PE&yJzCxQg M2{{j1Dphe Ex׺֕K%8MwٵCA(LkDvP>4cwwm yp'z+UyZwהЁ)bL G*YyHqJsIuͪп[OR[p$CZmlmu;l5&ɮxbh)JsNwAz_^Gg{=y[O OPt;ټحWm W1LHE"&,P%lQ$7[o8: HTbYl!z]c ba  =q0f= c+3l*&PQH_ėY2BmC0PRGػQz&ɪq;.׋2庴;(q/JiˍIs|$>Y.h|_V6M:;)D}[գ9ڀ\+ljY'լ^I>Ɵ|{Xoɰ3;Z wqk-8XB}ԇ-XUcɿ9w]RtV 7DgeDg=5p%]79vz&h/ SB nJBTBrPhd8'=M3n ^f,_]صxtsZ@Jj KuFaMGhŋ^$6Xz m;50 Z2S~cd#N6zɗ?#G<%Tp=,] GE^ x aJk"5?K5Bgjы6%HppC;o!ݍ;վ39k &U/&`8/wwtjeC֏ 0`~_\soޱRc]6>^hcͷUdgd "avS\eiux]c뵃i $l i.K~sy)L.[S#Ce'gM4{K#E6(Y vYU Do=(M5%<]wA 3m1) @ft:#oG'5|Luvfӎsرx+Jj(lw+#ALQNZn::ܜw-/F#iy:4d`jE`YMn:kp\6r}HWQFA0U&sg~OtigJOXk]REC'CaQ8JϲG F)9&$ZHm!E]f~; Ld3/F}Tj~zGVj2ˊG2 SCT2(0wA{mrqmo=Ӗ@*"c1q cl_x`AZp̝^ŚŜ` EK!źWL.TUw}~ ( +¡#Erʃ=0D otffO`49҃N5S*mD})7 O~*xY!YZ UޑV%C>+-2(fT*B{\@, K*秣i.lk]A#:gj58dE! As xIsXڈ5BT@^Y=N)ߐXnm*=Š'p ΰiQBEm8&;3fmBNUۉT H}^EbX[~y71jD$Y`$kշ=  8[w8ݰJPb,m9/"OشuVb/b0$E׀pl5 `ފr>2iI R z Q12xu`! bsϞtF 1i|>ɗ#bPfd8dg$W~$'IL#E|1V}7IˍaYV"AzĆbTJٶPA?"R,2w6'nMF(Sg䁯. \UT K -Q-''!X+Δ28peDaRaF$k 9OT_XiG04 vy߰W`oS\$]xbn4&7.K B`I@f~ʸe(HE{uຌ3J)?3XxM*y'?c0ZsCqq[u0'685[1ڵw4#kր, > bqTm=BZitjz\jxM΄k[;?%IG~+**6ٚ8!(rY m kd(I>P?_+kރB6[g35{2Prr"DInHZ};T!4=:|ÌmԼ5AA~Q?],U"3I֬*=BI\ɲyjG {}xEA!:EN헗|Yf-.i`kL|Pܘ8b?5njՠY*%qo%,tq7D@ǓLy٦}xzRHZ̓VkGz-ot_tl|c~K;(IY- OGK\ ûʽ)|F=G /p!}Ɔo)ei~PxXr=5J ʕЌ45)^ӘD굩ݪd90ޛ#s*z =pҍZm:”X 2*_2"z!ꍐmdߛғI0Dt-bQ6ߓ\u x{&(7Gepc3oH}ԲY+CZHeƞ׀j^q.HAWq?J>[Y@QH_}08Pv[}^Z{BFQ`Qm:cλ)e@W}"?q yZKtK. 5`irxfASq%yvzS*$l~Q.n{"ҙB1-/u pC,ؒ{KgӜƠƣ,aOzO=&-E(0/q GZ/`Y t/41W cpK,~&h^]L;.jOW+y -+|d-gj*%%=^yyBTnRE)9R-SK0DV^NDLR)E@!emiGe̲zmL}yp ^P Ex)y|dZ !֏/O-?>+J( 􇢦? [ӎ.k k)eϷ|Ǚo)|I5gb%L4vT?ަwDŽ4HD#$PG+C |L3>ginsco܂G@<_ej.oKytT#r$O%˱S7WQdʆ*nsʴ#<\ q`jHÄ[W r!)l=M~!l~F:DxmjIKHCYiFxL['A*0s="6WdÒ(ײo#E%<zu(l6y boB櫦P'sq{QD  N!a*M(NtU9%ػhLP(e,I6U<+.1zzz_̴HL8&2'ӊM˘˜.np#Qyˮ\B>CK`mISZ0+.${As;ezG.Dž᪗Je@$x <9Qo7X _ϙF|ĪdvY(zno {L]l5q`Sc[ __q~WOjT ֜Nw꟤ Ofk^3uXVIJL6牖`N$* x3z,AUY n/?0jRqo&Za"l"@xw˺V9cQ5g;JѐKPnzp1Ld<3 fYQdAн:_RK|'QfF ` *sBIyO1NV/> `&Tx]ʯ"G7|F_^)ᯄZXt'Vvxfi9\S ׈oHc`n"4F9^\6S"K;4W2+(J̩RTKdWNCJ(**VFܿTص^; =u_CVB@;'jܟ_5cO<^ 90a߼nR)^ռleQ@2wY_TqBcgu_{̈m!V<7zل!+X׋g7QD{fs vH\VpYծ(|,[^KFpcrT^hv2< 4iM,oZ1{梶5ϖa'Q[Rt!Ƣuh"g jgzz;>Hezq'|.i3ቲVI!!:Lj, e3SkPqzT9u+eu F@ '苈MzP(uY qC[mY9Dt2w -晌-@ LP\Z5j[@ܣ'{8 ^$y0J=: |?,:0'k;~/Iz͡fʏxZ ɴVX2szPQ3@Zr71@a>v 'F6w,H$mOc-D,Ⱥ_;$! Dkl=|843Xda &+H"1Tp=tAnwbQ : 6"NmιB{9 \,g2=6Ai"&J{82:IRjue,p߲ḱY:Wccح)c ,DRhWswfhbt?VDk`^lCO֏ Ლ*{RO mVpfºEa|㙻0xO/9Tn ęַd5W_o* L @\tPv{ퟁkNJu`eh㮣a F8yc'f/R/^"DNtoY(|en,3ІV֐Bˬڤ|$qOjkX;*3sTǛBv~s~ T|9NHNq9טmх=q2iF1v}ȿ%`?E&OIزz?on͑c~E ]J w5F#g֜,[$\?*+6W!5-;<;wqmFX gQ#hJͣ+#xl B, C+>EBa՚A].Q8zisMG`3N@9|R uFi4 en3`i~|nlO2O]ol k;Pn02[!a[zQB胭ZHΥ+/F9L%R6~š渏.`Y~l'*d Ͳ)fXcTkV-eR?:ͥ'4Ua#AT_q*skZjTtcf4`9JF޴Hs&Z9.J3v]A&D, (ߩU%èO.I߻kF[fFe&gS&Qk`b&1>81s؍kJȽ t]jRx{ 0 Uһ~[ҠJ>O daOSvBe ׺$T; $YnI!DoxތܚMSH.s& :z pn#hz bnRUD>ZUW\cO.^ÚE9\,"z[Ή1Bc7FF4d9ԎwLÚav\ 30%  `z-'9 ZG5b)p'ut,TMmiS'PnI."{BB&_f![7O2olTktNLZŤ!l27c,jmhg":]45~1ҴE[s+'yLJp;b89}`D -F5xNA?KmUƹZfX kmPV.*R:ѩ'[mt"9W)ui%x?\jiT A13flwYg2#&z"r@۬\J>t1XH=bX#>t1Шb짐X KB#MP\$B5Sݰ'(ce>qn-6W+6?@¶WchZvjFZB7G_\|0Sc8`MVĶ[Vw/S h&:UaKl^z%@>8$ΐT_rZ[vWɞqFLSL6"7)Q!BGGgf7OTz/.hQnvZ93y|5 Ó~@{ S haaցI8]Gd΄Ja2OJl 8&Jw6(Zc4ͩi1i_/UCJnspUgX=YlAm3+PO]> 8zUG籭o~.ޫ07ԏo*KI uST<F˸f%R.[Q7 '+GV@Ǯ}}fWc]6$pAKTBR: :Ƿ@a SJS'3YkXxxlao]`ARD_X@ԍĎm*#4 ̹LZ8`C%6iɜ6GNs.Urڱ);6-KVFB2Iifw$! y OuN" U3cǟڣ$vc+84K}r1/]_Mr X7TFŰg)U ùϚ{(.i@cj0 Gp֒N;Dj<|hq FEQKcGHҏd9LA4INdR($?{ +\Ud}늈N4 xՋ$`8l@.7A7_}\|t%+k}kR~ ^Ch9: ;1ȊO3hvdkCn$t&)2sӃ^ K괯KX!(8ؾ$|^C|bTbȤ =^ay(0 fDoUq:6*+vͧ3Z@ɦՍ#_6DDG@}lAdַy[ Eع Ÿ&Vsr?6MXiVbnbvW+ؾ^[6i&zXzUأ-Y>5oE|O&M5,'_OHY*H\G8 rt"q7[+^Z? ͑P|k=!oO+勦=W?#ʚo`7]r>ZgbN]G*W1 ;UN,~t[fR2-n?%EB:MEjǚڃ V1[wKa30gk`R8i{WYQܬ*Ёk,ڌ4 bBiv.*}rJGŽ *`*0\2+~@-2-yq<oMɉL/*(c0\dVB]CXmu UL7=H4xԝ`[q[򍐴E&)Ig(]5~pQx1a406V@sw_t-ʁL\}8zP0sƆ}*\4Ʀ@K%({ `1HRINRF3"RĦpH}ruB$ѝPJ_,ݾvTg/Z07> QV16nAkBi*]Bn(lm=Ze1p90lu?UgIIC{j6b6ƿw?\㽌$Ы|Az6)8 %ץ>$NR7RdmũD JIaN$Ck0x00q?0ZbVqh{vkq{Y!LLP/yn^u4o:"G+z}&'=PZ+f?h٭w08p-ii|<ȢtQ=As,bG8C)mmB 8v-I)V@#Uj~_cp*1M`_VsGACUp+1 X%J8][`1 g3C’L9z۫%J0Ss")T\kvšV"$#Pwki+J5l{K {N-l@4Hw/s+Q2Z,fH{[x) \UѠ45ΝUd.b(K.p1_Eoڢ,Ee\{ўDKE`KɘU^!]|9ȴB6hVnx?bW@;v5`r\RsJN[epo7'#~i*y̌%׿< %(e#ajc [O+kB{m%fR6'OPcqBs vA8DteCڶ悢[kՕoKwr῁X̦[c\,PB^މ Jk(4vJ43*2w6=ft\3k:>R:D?wpQ5e@-rG3 oҗ7]k#‡r'ގ͘܍#g:Q$|G%Y}viwjć| ,h; -Jl_[Ղ\sݣ=B]l/v[rwKE9@{HC,&#ٷ~z)yϼfGm컒gHklf/G:hR(¿Iñe6a" $r\gjY)0/ЫȖ&gW]7齚qBy Z۪ѐqTTX vrN%jMgG;d <6Y qj͹ʏ.; Ylю9%zz?*I>7KYJ%VIu ^>;kʳ9x0*uW Pnb/*HYP3e'SD^؞,ݜ$9n$PSǾp'Ibdam5./eVLeDM;ԉ n#GD"nڢ<;vo&?5e {UMSڍM{~cje@fvٽM1jNbIkk]1H1u\7;l§LFeW`Jqf:a`ݒITNG)4\4oaʼn]ӥ0{(>ݒkG?7~ fU*|'^-СjJ?n<{k'P,5FNR=QbKE;q_u!RHxTMq*&؛̹K/oE?C94fXهj̤[-<$v!Pd뼭Dcq}$H+7Dp#(%&ڎoYjh|u6rlM5R*0@$6,6;fE}{f2cWِS|ϵyk8{XF# Oާ 1RRIK""89fzK7WG)^!hK/zzfP5eчVѲu|;@'P&8}s Uwq}o@Eb^F>IK@+{H{sm]r3f+'B0d~oyX22xsz#!Lx-M 5+t6bΌF+C" R.+:fg,BsR^ÈT%Ov%wz0VU iI2 6%?>H(~m1~S'P,S;A)Ɗi҇&8}L#h!;Tɐ3gDզԴ [@!u'nZs5/;A ϼ~n<2O(bi:jQ)FnnДKTXO!?~U38|_/,ѦW ~⡁IC2DWw Q'ޖoEa#90Qtz E}1w)XЬljcԴ;prH Ӓ|q"kBҌ~笫'<Vʥ!D3R_qLEz*P1d+; jC9P}PAK,l((ǹB9=>gJP.xro#1Bm-yYSrH>p|nb朒Ukeٱ$+uatVhEJय़>!u *IdlE&ciQ)j^%GK:~< :fR;-!c  1o.A3^RO:!t[%1}_sB6*AUed6 na=LKjhp={J9AFm(w ]wK(ZTbQiA)iZPCpxMP;TG]ZJƻ7jwܑkuKmrܹJuj&)VZy޶C۔m2a8yg;2p$ n{+  {ïu )e 2(F*&Ka"~* $`K䈑VCߗ/dI3w_hMoO4t7Wuv)2$q[V4BD$ #, 9.9ʬ2lDLĢQa. ^{{9{Z*We J%q" =0Ǿf*'2h=_#wmO8{֞BBx98M2֮Ռm[ӫ3>u\;NӪր{ݼmk$H˪ #]FDСڡ.):wL.2A1nh1Ȃ0\Q%JBouWD_J[IOkJh6d5Y:5Q?>XBŖA81;/jY#LV h.ydz_KԲeIrS6{¨=d$ާx, f\cۭ4Iӽިj7Ih Si/ZM<%/d O3I~tƘ]%OGWh}[iS~EK7j1{{{iDd%JK@HTnPF:= rtj'o+)d5,s{i'çcӀi?G`1wݪm\sGaMfVx4Wɾ\ V'pԦsmߨ?i<bjKM6$vybo1A'dmݝy% >Y3Q%2*Lم ETxiL8Mhl1|}2KS҅Y4ŧLA1JQ.5͗"=bĞ/p8mB'r=]ϖOv괜Hе?X5,>rz\ǾT콍%qM@>eCO=Hô]"%1~$FPr-2t\YD81 >4r}W,)_x=ۿ.pWeɓQpJ}$pX+8'I{,l|`?^ Li{CEZ*"aδ~cYN[XE*EL>N C*F>y) FcJ;`82`œ̿G$gr}jida@џ){GT+,Cq7rW##Go֦2gJ@}5^YͫkDӕ )L$hB= CnL<3멧K<2t}M)龻_M"_Ց`Am!EI|P9-s\͘ ]g_a#eR6㸙+),tr 4h<GqokKK8J3OP,Q.e27\[y'7"3t/ԥIG"sQ^ E $(ȿT[Tq2dﯽ /e𹭣ƴK` cL\ib`y|ЯE|3?9~Pܸ5+ݿ\-sH:4hZkd"1bus5s]=-C*V%`}II>&C+G)m 1Yzc9 ]<r+c2þ#&S+ssI 4p,"NV9WQg.,4/(n'0c؍&,BQ^-U'oqjhV1 uRm5ݸtxR$>w\bg`1O k2b_5#h3-awTY<<"&:A솊R g8q07%rUT,@/(yA|.yUQ/^GUႴMݤRިoGAbwZh:>C/(aUH:b2rA-r7 yh}4v-׭)Yw5$)I@G.RC9{YhrАqsgLW\* 6IU) #.VCB2; #w32sk|ܤFgMԸ7MnTd$lC$E/ 4yd2x@~lQKW\"zfu-LYx9np@iLA+s7{㨂6;moKToADjQ̳cGݯJ9t gOB}DH,{%%-X7kڔ8]Հ}h TDbB7:5Ŷoy.P92R䩁*iX=vvsyuiqTه}*R3fA6O5Y2kcHu壨h̅;Xz fi=N쿻M>eo7:*ouq1Gx ThqJ/l.g9ז}p/In'&=(-&ٱ6VZ \5M_B%] r[hJ6䭿5~`hi>/ΐOP@6ਡjJ)y{S]tOm1wu\rƳM%OWmVȣOul {@2A4OY^!2 CB+ >V,mqFP f| >K ٯZpIH0j5•!sCLf]~,s%xbWB])E CR=UD'o" uJ f2P>皐 cxLXN!X.Z)*uQRj,ֽF;ԮܐEN$"ݒ3ż"m" kWeeTARK.=JYM勣/-C:m숀ᩫXm ~ qK3GliՃOt/VMcC _2c$zJ>V4Gp֎Vl;^VddrZAd`oiN]l2C^7Қpi9nI,ca;j@/Su=G?q}ca pLR*beąxO +vw$GWUJ)=&2D-`{=M)lP&<8/;V9nJNiN:E lB!=k#A#/u|+:rNxY.m5 _92fs^iQ@2E7Yy .…ڙb4f* uV@'tYVG62\Q|C~e探{^ߙ_?y:.jWJ]S*Gj5>䬉]"B?rC3U\9 h:.\ᗦޱu /@H'AZš f`zWi\ٻMG8Ax]AqS乜BRrl0Zj4uE=m#`^A]e)j%-VP 2@ucQ(QWa#ՕU>W,>oܸ! !#WH|*Wn#ar!IP˙?EP>'T`qr^Lfl`- UF]VLߟ6#8"3lݞw@uǰ?.a_֐.Gv;Ku?7=$.TAw~'3U.3 u şJREKYS2w5*7ŵsHд9bNlD~E>J6-93և餕 C!|>Y!$qX%އ[8rDV n)0/j4[=I@%pcɌf UkI/1QJ[8ac?D؂nD]]-3; Lp݇p-1ѫ ˅tkMo@Wn-a iO\vIF4$E=P4uzMȴ:PXE)PWA{L*CAk!A;ӰaH,L2ט8B‹Jjl(kȴq=)}ڕoSھ;32;{d踍BrVZ}ԩ{+Pn/,HOgĕ^+wm{xRI_paBM䁕ïa} JIrGe76` {uacHGgldVL1mrV/ ˛Nc"6,;_e\}NW8=$hT3*X0AB O>z8|fDRzc@sjnݽ1{3SUfBgA>i)eG\ʛZʃJL.ڮ~Un9{'cqG̃yUꆏi#hnPT 7ma&Pg' ԉ[&x BlDLNpȝWÀHʄ $*rv:-Wx("h^^^ؑXJs?j##33 #F~r]yxmT7zKu*hC/Ta@f ĭ9HbqR/d}k`]$K` Lw7735;^ev[/Yh*o:ۿAe~؊E%xB7!Z͐dVPNRHV{-~vR?fP;|Q D3ܐ1PxKo1Mҕy:ѪD/;O6aJIt^M\K\f1:uTE7QeuFzm͠,u^'BW}BtPJF)вnŵkй6|K]?sW eN@nhO j&X1/=kM4V$D4Ituwn19}qMMصq&#!xR2:KVz/i _7\,L1<7ajߩD>)aP`q,t \WZ>>&KNj'͇M"ft˥n XsEˇ/sqcB|JRc<1x~gR=6Mt,s&Z,]?c*n@nà XP⤉᫶jKa8?m;S1 I=G?a$T^Ż~҈P+Cn3 &Z3cwV!}P~JWN~_[e8ht?.g^ս$rj T 0rQ /35f.!b7Sй֬/dBH%c=xQ!}k{ӓ 0%s6Y=$3H@K>w`| "}]@ej*n:q@*au&mMd$>k 0 !Wf-Vy).f6IJDKkw?ctC'mBL*Z|15kfhn\Ǎ^ui}q$[ hEoVOC_1igB Wu=Bt]휂Jץ~dlQu|^GN_S 'm Oe-;.vޛWz|ܙFe}Gbntk;U&ie{7My&XX&"Ud>Aq[&.w|BV9 ܅'ѷ]X=۬aŦaq#nPfJJ_#U=ti!9k@I} T}ZԇL5bGX.P6ݓ -#* Q:M΄|ȩ3}*Eh ox%(q2j ^/d8z)wϢYI޸P9OΫ|ϏrˎCbY0]?XYXQ n_g~Vn` T<~mJto,{r.e9ZV\o٧"}̹Ӌ1C`0L2 tnk5~ kXvxr6ɩ^1;SBJuzی7gZZ}g?0n{~Y&iX{AH^G%U!TڂF&9$M^,]MQKBV|S]w#{.`E2t{F)!T.}i-[#`, xajC Gr:hn*aV@`'xHtI}@wЌX6Wшg<2=dAlF? '.ȏuC%_H_6oސE b$p@P[{==e=Jbaԥfӯf*UOIFr|ط'g~$=FR-O'6bLb{ר$'M<8 bo5E\Z.4~)=gUY@۲JKJ+"*nN3\:C fE:}4 |e_75mx4MO`5S^QdX̋9uϽƮ;)DiƱ.`NP[71]%'Kc?X%ן^X8\[^ Lżlj D[_Y5b֗n>{a |žﯽ>-pˆI'ն.NEh:?ƬSI(T9Dt`hC )\5Kٴx N☕T(ݯ}I} Ȟ Z1ت t?9 bx:pS?_ IYLE&/3''}21,sxbQx4CM~G$천M 67#f9{|Ho2SRz55)֪3DXu)6DV+$PZ4/C;dBD_[fdo>v=35Ns \^f\"y$#c\C$d jvuيȇ$ v52 ZߏdYY=)eKN9D$$1e[Gri|eVy{0RtQMdĺ$ p^gBj6G,l8_IԼPS׾@F:*GE'`qe7M ?G9|wDɢpq·#;x_ԱڼB%@2Т8L['?ay_˖2lI ۈZb@m(miV||P\R%JD~L͌U."H+wȡ&'7|BSmm1^| r|ۋ?H{::/mo) qT&_i2f$I5$V'<,V]',&BE e+eo\aISԅDC6ݺr (ϕ1vr} ¼v՝\";_qFb2h%]Cdi/˵8C*䈔3Z`%(: L jTDQ%ٛC$(8ʚ VWۭ^W Qr$kjf. 螻 -D7>WۮVai9%u>*m'gΓVGp#RFU+>ŰySC[ZMچEIU|*!ʵX}<ާs ݩ!}6XV_Jݩ{oqSӷ⌧tR)nV&z h2of{9d 1H.FSH/AMQ'ӞO t*qoX?Q,FTVs@'A P' *Jfd @ KY#JV9\D8leWk}>aʛB֛~f %Cf v.z(c.'?w7K@o% Pgj(}ZXvawH+aO@urS A:'rq 6ߩ'zҶ7S&4(;?n`^SL&> Ɍ|nu5A_/c3Nڸg(Ck='TYIގ!ɼƸa긫45E!2"h?l=DYl!O,lv"~i)O4l>%y hEJHϞe&qG5>O-|Q689pHCKE`-މY+퍡F1~PsKU!wPy)`V!S?۔) ]2Wh+ `2uK=rIMe!4!q ֒[#}<.f^:HBƒ)0% gÛIͶ(ID2Bɪ$; { ?}Ȇ湹c̣!l:jgHgo`D΁ CM ?xR9Ԝ(Dl=~5N~9t@9'ƽm!^j0ʾ'RG +4m=yE[F-:Y$a[Z2,]Y`!m/ HX^k66OU&8|vEUwfo}#2Q[c{BwB6ڹ\j94LlsV~w=UU8KFyv *ϦJt޽=\Kͱ`%sz[KW)OhIU`ׇ.@^Z2}q(b\ .]D$9EW4tat[e^ .$!~*)zwݔG)m;QU7΃_T=dUzf], \PXUGYjru0Z@D [,B"8 Q 7O1?[66f_I d9Gyǒ +z죒Y'Ԉ5:rѓQ#s/Qc$:R4C杽 b(B_>kw~˿2:$!OSD v{ hdHN&pa+\-u484â-ZǺg7V0Lz܉ʂ|z^n'E3m2sz)RJ'Y擕-QGhEwW<w  @1x#Oafc'8 &v֒Ǔ R:{ohc8.SLt^T^h#VO|zD48Y[ !_oBWO"Զ8w,٭ZQG*ni :[lk:*hYՅ1äI)A@zO?3|ҧUnSAgWߝ@"[vO_.4V#q9 Еk2ݽ"Cv.:V2Ѓ2yjs@ohB?!TVpզH뾗:~. Vc|㖔@#CGed  6ZKMr[6M|$ȶw+U~Qdj7B'ytCƨXs۪۫zí9/ "R S-GC޺i~}:2Vos[Rv.oW92E!-+>]<@?} _(I/L5gx)tȱj< zDBݾPIGe>G["Gd@Y{H=\Y9TWŻ'{$/=J~ ճ-6۩2A,|U-{Ŝ;haү2rX.Ep.0|R\/#ߪ4͑?-fԞRUM" WxY,((+[F᫴Tddr8z+95P0͠ECOKj׷[#-οO{O!(Ĉk)co2 u--sjEӄ=aQh}q&(-c \5iASxy$}{lK׮=†HH.Oq4ˁy ] Ѭxl3{Vс2 ҝY=ĐmG'HU3{y|ˁ Fs itӽOcnW;G,`xH2bnf.hB~ʈb"K1q6O)w"᲏%c  2{<?tX%vw%9 H SҸ$,<7fv0!F7Yl:]?Q\ \ G^b┹%- ȋ;sOl@Mf׼caΤ4*GZh$QxYM"݊])Xj<1h>󥏿л![H$|tM5ivXH6pa 9*ȈQgCv+F)3-/1-4 WΰO) -I>5 6(6.0{x SC/Ḕ{!UB(ERrO [#XrA$6&Jh{c/Ha K.k1x1^kXxSX2G2mѩ4`WhO};$5I:xA݅e8Oɩёt(cV#Y-M\{͛KiحW~tT Ր*L^/x)OS#mX\^V }XG1} _Q]{r 2ٛe55n4T0%!?I+?lKuK k2=jX9Cڻ|>~*/#-~ hJ>MgjgmB_){}*6˹VKy}[D}?,"CV$QɓT{y@nA\a/œf+8jod/$}af7'* l+l-nos'+`XZ3Yس2e{v xZDָ½l 6hAwmlШ:;wM}кVzirKJRJ@8vv}_P} ; PĂyR/pH Le1"wnݝ#)=+a ҩ_D̨{r[a3X#zE8{R#CB#ߑLn81Pav(HZ z nvD ߈yT bsѷ;/1:uZ0W>L [iA]>x-9YIZ6Lc^&GU^-[;oL cMQlaI<,Fwjpd]sҧOJP/% 7usJy臘w w }w|*Y+V؀j82G[HQEb0[P0b]f z0jogo9zdJӤyn9`GV/KXF]sgGPZLM_%9e<-A咢tьUVl+"* ;;JcOdߺ`#ƌ~Žewb8e.Ax%g\SUDÎ Z'(6InHEfiFn!YHNSU)(%͠\nHwva'"ȸ_^.~~e<'+B"W1+|j`VPTW]6cɬi{,|Fݪ; [`ue.1kQYS^屍W-u wtLY=(=Ҭ3>?۫>ĸ٧kĽ_ L|ea _LȟA:8{ s  Ɓ_9]F>毌wbtU 0.LL(iO? 7=,"*Ęo rqWA-! LIG9ԳJ]B$մLfĬ:nO71Zly@+_\9=PSM.Y-H=;Kn>pG\ >|7B9iq+M/{>KMj $h/ F )uK ch]v9Fs)Q#8BOqW{Rea<}.r<שJ7(R8V \\mWgG9/$P@>H82 6rcM퇄rCq8{L ID0ph^K4LJj쒽ĸS\`5g2g9{!;LL \|vfzՕ ,`.j< HXZsjT~I'ɮY !æN/'珹kC>Bd~¼m^o1ƁŝSDR 27NQcV' hXI2;Yinc/X9>5 ʧqB{m${t`Gdș=6?N"lBt\ (D ,EP ]p%Nܾh$o!7̀: SEYGԝP%-snJtk8rʼ*\G p=v(ZTIs S˹N҄EkMJ$t^jkݫgؓR)O1K8Q-Q1l;&T:FJe/ˇU \ZAef1ݲIYlu1sC ))"v~5*(;rED "~@q'ߏ9zSBDpwi"* NaL k%A-C^f)Jc-5F*Nwq+ p+2؃ubI~(h#vp=[pTM](S=S9mQ0lbjJ܁L3vgۋk yn&¹?RmsG7ĴEy'tSi?q }jN~SB:=] J8>] e|38O%22[X:pjU2ń>V[ I0>'l x!w8Y1!$YiUxC#&16%CbmM혀-GowdxAO3qA\!Oɳ]C`3@*LRmIUZ(T92}ևpĞg%u?yl!ߣrw(mhfρR,+'.vK$:C} ^ʃuʋtzd ܒKUz !Cځxj!C_z^1%1;(Bp׆5)$ oSwydN.8 -c'Ӧ( V+ w5cQPA>GmDۯ57]ppC黮I&}δci1YlCRdg/l/x62G6NsPicL9 }JiH0:`p;{i oP G๿#¤w[}" to4}vlH@ƌ.LG NdaC 6n\\O>t`NN~N Ne@8<7*+urr_hu J9x5}uFw.Њay}5[=um&Z%$Z BQD~i6]>.@b|3\ $􃟼1R4G $wumHcHUƧϦ;,034P6XtӅBqu 9{9Reja-gPvff >V{-G@lrY֫pz̳WcBZͺ/+kst2"n{jaqb:'\IdۮJ2ǎk8mx +Ճlߘ35LZGB: B*Cz<,ΗSkT UdJv+ԦYpmYz(bs>Bjr,5fi(yKK<QfH5Չ8o-lF"9soRG0J뛎 ?W⻯0mD\4wHJ /YU'輶wk7"H.x\|3Wu:TM'@n7W~B{hYGqSh>*'՝{ ~ v%|F@~tgȶ$@sV=#\8dBLpvr}8Y1w됺("MpJOaG`qH7a$AœWWֿq<^gtT!#WZؚv };4NRQQQ@]_>f!C|c@6M Zf1?B@Y\R0Q~o&c+wraZm)0@=cg75F#ǟ-*q5yl &s+We>Ou.eurytdi-#G8݌ʼn1X(w%)[{]""6ꛗ#{}:C+γvG&BKNlP Vwy;6aHdZc (QӼ@y5g7ijPtn3W= ­٨[Io"n/*SΎm7r`?FF&^) n7ٰ1EemP@<|w%IӥG_*s_( cD[V  -l~gݫ` ;ysl֛iIryJ64 }0/Thw 7ZemF%- 64ɓV2x*Fav0rƴjj6@dI趢f^$[7FWX{>txJ_4"U+\-8|H|Ͷm~ɬۼY4EE#=į)߈:-/<|I]+Du,#ե;e|祦Bu e!IH.H\$%8ש ꀁ%kϮ0a@%:sQ!K dҫF<Ft)ؑhFs\FU8ƴtBMFC-׫Q;ԠtX.e BLs ΂Ug@o9gvxaZo*S%Vh9pT;"A?~0)xqd gYc&n㎾v%M#Ҭ+zΪ'#* D-,9V]k)%vO-9x;MYz*R!S5ՐNOCf&[~QׁRd)FڊܸViҐzMnBּ0M@C%Slcw.LȮ?ݾ/`` zag1:5H[Q[Dv_׽SRzuIVSɶ-||V9zM+iT^kД7 (HxvGJ(t0j]%%Mpi>JV@vM!)BQ~,槾>s92\C]z<{|.'Lmm*b USxfCY;)+Us|4}@9e=;W  ziBMQiU*K"3·5 hd =5P,+P?BZT .v]Tt )KLDE(//CLT<+@8g|ڢ- /%3IזhpH+Ryjp_ %l]B:aȲYq3km@&^Zȅhe؄Fc!X\UBW6k&Q<=-I.ΰh8L'-$\O)aAeѼ$ݘ?T]׳ ɗ;MYj}/ZH# ѦeFt)֠hpz$GN1y7ɇsS&nuCF5O'"2sP)y\na*2{E$t )pAC{P-Z%4D%߹[p/ыh'PE]R9QbtwuS 2礠 =߉I܇5IoT`ڿ[m)W ܐu~1ZކOO-S OxZ֠ۻGd`b}*‚|k>,*|ja@A<Ҽ˷. v$[v?A]ߎmaxCagOLW={@$X]t!=-xaٷކPJPh 7*NpCrdr}-82ѯxyT٘nnr ,P"od?TDWS/HBs_9_6zHs$?pɤU~5hE~yž?a'#kw,9C]p ))B>ʧ&ncmwSaTոrBkC/f4*FHkJ{yZ0Y H2d}1c*sI 5,^ :h&♵;#od!]DaOơb\ WNWl^)m/st,E)A ,=3 ϲ.?2L{&f$N4ө 7ZhpYO12ČMYh6[ʾfH֜eh#9 [Y_(]fi `|Kv 2*7vc$Gz)o1_#Erw ?P_r !ͻ*HC̥љs, %l(! SMg!`aY޷&K1 BƒnWv*]o[YXo‹jD 쁗W:SW)s ?y ƪy.E`ТU)TVLq\L4Si MG4 F$~,; bk!}9c{ TLtى-uwܞBM 6!m:! I@rQ r))PN#kHs":F{CqPx+z+$+ .KkD@жk`<0D$,v[S._zPz\w~ß!:<*2E?vo+-$\}|X_zjo$u(>/~7A?׹%%pۈ& ӻb;Mf2Rp+7Dq=7TܥM"fv\/Pl)lJa-p$$^ kY4~P%1Ʈ迟s9/#0Ew^vƝc GW ĢCu;&KQ>(zutFw'Q{#uX1+JHzzVJNc4 Y&ȪFcYԔZz0oQAlFDRbYaBj^j2U#wb$W}$:y&ݫ,˽NEKAZWO'-3`K[aDf`EHA w憲'4h62GrmfiƳ]y^J+DoPaJucL dlY>?mđދktr%|%;j$~em^X9,mײg{s7V!Y~:Fs[NrZ9Zør;cz)D6GJ[RGKA<@ ZԇŨ7Qج&FRL'dul D oԯr>Q1'#}cꗺvLT#N q-g {PFfsW>e%~3LyIV8/k( l9i׿ C݃<Y(UӍ p.(4^^LMd@gt~uCSpl[Xװl37M+Z54h@ofY#bi-6*DND+)r6wA}(NL~=[UѠ%3A`w3Z{O^=];9& m|8H9箚ƀ ⠹x=nUJcO#"(14вݻ%I;k3Z|AleHGmG]Kt0PpҖrF\%oԧ4z6Dķ|ّZ9tÒIHO/g`~2yCʷB*z1.B$ ]8Q TIՍ鲾rb hdvV;ǷS'2vtNdWQSD=CO~ el sȲ?MdfD,˷VBa4ji*mKkm3h6@JoH|?w|>^wMeŮaSeXW}uDn?4a{N@Up LpLmшG~Mc^%v9 4`Gcb7Ao=7/Ge2E?zd@[; 7s8A֋Y*\]O}(t$74`?Sga\vpgɬq># "v9e@ѧZܓ?$c?ځQgy ~ÊijZqΜU5G4\ޅS^J38DZk]vl',˔_]׆}Ogj{S@',$.wN/10pw _>&1]N˜ 6tDw >gEre$!EfLpeaz!{i;}pe8Z`~@%qi8WTV=ȧ|fW?/ٯF-F 23t%aYŅK~ŖJw#dVmSE#)( 65sqŌЖ <8'{\-][ZG^ZҪD}"={QwDΤ:Y?!AO5W a.EhO!hñuPa!&OK=|y^;75jL_bsdt1~rwV)>a0fwp1"|+q=^b"Q46O= `mA3lZa*Љ3Zܴ o\. c=='@"WiaQ#?ϪzA."UhL=qp w|[ƑHmJCskh[AZq>6!P;EXdouO  $ yLéʏu. y*"ipTy)(-߈Zlir2shĂJW%r^.ӁмO?HIhJU"YFY45K2 4tZ9-C}+V^V jע\80$J`ۮw7J_2ZX3oTl89FdziM wN J24εIWؾ@`88VPI Gc#'G*1(7\Seūcx `0HǏ6čSR2).w,~k}3@XNۍ4ZQĸqś4*(+4R/lz^uᎢT2XjᲣŝq 𭔜s볡+KRV#;+PiS΢ AX8 `kQ0%MK0Z-Ul3aő<'Ll3@PRymu]E-x""u$q<2b2fw&cEtvfi5ɶ`RvbOɾc_ja꿅igbJمjC܂M'\uθ$RG}6S+ 4-)rhW$w?N^?(g1WucL %LM:7VG N'UG\;+3]8㓣e6}r'4aj7sLe-oJ]JɢUro.YGr!LDpvYB:,[M^VjÐl;)>'!γ/lOM9x /ToEeM"n(YM sZAq5wK7]W=;%9 =uYSX[Ƅ>#[`_)瘜8*M-FIpZu8'|pj9mZ}VsbybD.e@A`gj(يiГ,唩jȒ NE`'#lKwN ^-6̗2ilஙDؤ|lt|jݹT;JJ݁#ھT/t]Ggw?dUo!ei* Ss2, ( 01".ot EE(nB!KghuU|Bxvc W?p{ &!;_):]JxH~yyI1e>?jFtbzdɬ .i'WPSjߦy (D$p-: A0mKi<Ng7KJa.9}e.:&0Ύt2w9v4Ӗ獔Is~%\rSe!$`\:d,551 gnr]>EWú5o[xpC ]drc\%b&řx^+\HdjZ!v;sFH15jͭxauQy 'X 51zF#"S t-&q]O LZՑSJFgy!^7 >~=F/[!f~rs/ UdYn"?Z>zOSVMN8KbSN˻d$5arYQtՈ9t}pnYG`] 2꿞zSybczz_dwiΆse*s|~[MXYl|]F`57Ҁ?nv;X"0aypcm}xzkttcoYƕ^4ܺGqx?4W / ;k|sDXUИW0U| rʒ 0+'n(\«E_,=9;oҢֳ$>f"iBJtŌ ,+]d,Ef?2 6XZ6b,CȨ^|BEϛIJ̑C2f *HjTZDw$0Xb+$Y6`*TEbpJhVn߿o 1'#캃,Qh|:wFpJP܉*M$ZO"IT-?l!W# A5ɢ͟SQ3p2WD@82` 4a-X{ kA'{s,fl,vSe A_]#k\gQv]y;"ZEFfwM//!ܽf~Ldyk<5 w֌$O;`q^;.8t&:ї0PB١R[JXFA/S򺿟E]kqᚘSE`OѶd򞫨gnp7.0&[/4*uEUXߐ7+{ď=p v/vЬsqWq2ʣoMGʤ@?W ffO졁 X*cxY+S| v2_"VBqЉ޼M%xr]eeB& bg"zFXD橗hɿ9tJHHۻ_h]@Lѻa=<3 ==U4zJV3 `` ^n+0l=p 0O Hì-TڏxEPqSR H&" w(^`)Y]6~?ӓ3ۉoyїN:tgYZ[44=Lf:(zsNOL!C˻6-ݥ|z" b_FnVxPܾ/3?aNNx5XʮL;HpY_mr=L$ }fµfPc3wYJL6Ȍ6)ٔJ].d֐Џ;OKwYF妰Rd1(NHSvIO{=RPD5'Is=alk8i(v` RyV;sގW~P@dDoȿwL1 R/U> ;V3_ ȍVm}ÕReɮu͓9xnɫ(]i[bџ dWI ,~s_2)N_^Qzс<-sl}3{ \~ɵR"jhng8j =x55d Z(7,}Wt쁂 Nv4T8B;@V\I)vPA\J9.m(%+'?9S/R@C) Uup]LFz1P z2`ݗfN,(åYGlۭYXd8j|׵T$PSd K#\wn2#-vv ݄xS}qJB٦lFfQx,vĕChDmbG4t2>JA/#rnJ r?%L M-m[t1{r4R1'VNjY \nd1Dl1 Mc TCM%w"n. ] !֪&BW򽩏fEl T{}BX]֎#"+gϞ&= kd\^nDINW&$ Bp3⇛Lz\8,A 7 I;Y6O'N@xU^(ٚ?Ii} xst C_Dj akY fu~"^hxT!WSp7X&2Fwi9=ca1X7"jI@J% >|>^<2R7C8;}ƫf{54'>jfq#W _G`hcUӛUse,W .ꭨA f=yLFE!L%eGsQVq=P023Tv[# $d ^alxF_wvp3;,aUhkW˻Rf?Dv\Dw0 !?E[2dV4C]I8Bxu!D|" /K䬠ۂoLZiPV'0 -+48/\46u-TmVh2Ճlzʍ5l[gu7{gP %l"l͢6nbqds_ [DA`Dvkmj3͋KTW-؜8¹#-&/N;[%-ǚ 4Ay϶c+wNWWh$}V'~zW  fBޮc) /i 1q/SdmT ɲ\Sܼ iy}FĐ 8hWk" uU =S7 N`{ʌ'fN5Y~wL8\(G^dcMy2#NJuq {3?nO:0OHR_946:r_8\,Ѿ a+ v-MaQ+s!~>hlx8c`(GL#~Jc,Vjrn+tC]P5) G%i< )<& 9J_dWM[G)u:?{5Bbc.RJa"j~[!A!c FigG𕃈, {T[j@Mř2p:O4 G y- +fF[_SVn'.vHHo-UZ~A0S| -;YϟG逊 9FyXtHY̹ϜC@M1Tu(:0;(8M˴/VaN~Iֱ;?*g3s!2AvkoK)B3c[`S;C ±y*tuwCS8HLOn8wǨHxc f]%=h|ߌ[Af~ DfYF#{bX6~nTIѵ|KفIuF}}T[^e}iKMrE7qy; " \.+1Vs3 .,NԨ憯MMƪT\8YoyZ@=>"MXc7(Q꾎`U(n*C =Ru>H njFӳ<POaS4AwzݍG6w(+Ob"!C" ZhOWqe"qp֢WWnYĬbIRcȵsfzvdқR^)/oߪ^؁Lͳ}mb򩣩2PvjB;:R.QAh<6To.KGR &0eE(pu`֤7}WjL{6oˆNs3(gQ'3Mu uT0dWNd;HM_D"ąa󂬌sbng3^"$ߐ쎨hRnO8oD12>r۳j4*j8]PfjBY vxݎ{lZOf=9uH[T~V`X[m1o[|X4T0r=Q: .nA d:t7܎e$t:ᰖ~8݈;mC Yz+v+/Z~sn9Ҿ&\JJz^}h×2zyVfhәc=(0UVSʺYsDaKp5jcurלve @O# uM!@95 Q7%c(6J/Duh~ƌAVD:m +Qu[bxN2щ#w86D^:]p2 ~kYvtsk)$8UZq_lT#n1 (f ƷwE%_5қ\T{-$ jm\…R~-)4; &h2R^;(WEu{pv2{:ص8/݅n^@vsH@R=.˥=*}kp?a :ltCCt >XZ/ O's$+s\+#Ax[Y(8UﭳjbASP1mm%2X`DNj&ZBSt#FKbvj2unCGH"LVBLS@;O6fxhD;CT]&4Q^Ր2Jk@[L&S"~,lꊒG#'mf᠈Hqk 6!x p@)N3֏W6nm?3W= bR)T 񢉸׺v!Kބ rN 3M/A@"1|c,trqCP<9b}x8d{Q, a7ƒtTNk~P&YRKA jm`U&GO*dUZQ5ŚWwl@uqE = %#y4@1"_D@&Mm8 +%utn+)Q_)`6si|3C!n$ ALtꎆ1+OZêz 1b0[P/W`SL<TOdޤ{y.E]l7f9H)G@iƸ*{1ƛ^W[-*W4Hhsm6@{8SdjQ 48m8 ~ GO cqGXnGE%^J.B}&u]Gdؗ1 Bq7PS&Y"y(\ HCO$m#T)]U\UWaOYH #UQyH;I3)a׫ȹ^XΌB9tHV'2oi/+JC,VO*r΁|10/ϺeAy`âq6yRdhzU֔E9_ONZ__z3x5bip;xAo90*;+F7o9ruvupOcYQe 7ivA 4[+e3蜛N KX* r2y9NoV'֗,<ь)}>g;lnhq^6@owc[ӝ'r$*([6FԖf^$wq >U{BV3٫ ANNTziF '(^c9+jFq+G+^#'`uK`%LU{ńVNQ,#;ӏ?%# S`k>{`4]ך4_)%K +dQK#勦Kt$T:?Gi;@x$āF:2$W^&ׂrw+w2E8-p[Ku(--qXs1؁2_t6u:Q)\a-H2lk3=4)LL:-$S}ssJ FvRU~waւ0.wCg=?pF C<6`nn^/IhL?q?)fh\jg%3.^_| &VfEg܈=\w]8?GVp[9įʋ1@7Gо3Џ$;A&Yx|s}V7JtSQcJG׻[JYNM.(ު4ٝpS&[  J߅ V/CPe6:1[aIps*|A A*E\U<(kiUU:Q"NōFK[N-䞘7 gSֶ=Ԟk-{32w2*7jk]QGH( V#MV}07`Gz9Lꊲӯʎ´yЏ[qlH SeVqT3U!缺Hcw\Nm @]=a"0s8N0ϧ `-sQqW+@VM=3BƬF+O|'P&| 拵)6߂hf|G> X9GWg}*z QtS#]ɑBhQ}t'0׀o874J:~n͏Lӈ̿EFטZ(U4km[iIޥi2E^DC]n>(^P~~-)e-m+nge-'D Q a1 uޡK { cɤĠdEp/u6jZ%f!ϞSb6iLnQAB &x  ˲DO1⌍DTkAqǰ5RU"6,r&6]#Ĭ[iV5q3l DIR{eN$ B#1%[yd/{ Ġґl{?m2ObRqt2%p%[ZYWDL<6֞)S4ssy~G :g=lLC}7>w]t O Q\wI`@%[K;phBM96 b+-4no:p8uގNB2{9#5l Ո Fy%f,K}O.?Qޚ^TL=%}uj/8 qJwD*a[\k*<VkI9|P0%Hyc Rtӟ2ɭy[TŇP9{Җ].dd];( J1NR5&R'sCA =#/P3N[ _\9(hPȗfJ|@2r 'x+m+aIHK&R?h;UvGxW"QtP]ܭձ zz@] A`rblbŧ`FD y૦ηxH:6m5buo5#/j}fs<+X;&Xn7gLؼoX?[d$1ܗV{U|EK2G=ל.}iY6+Qʇ;ʖv/%hpj亓<"?3>R }K<ΐ0ՙGiq LÅ2O1W:6T.9 X'E҃a( "K{N*'3UڣPվ62gMCJ]sEZ _* 5b<( `u.S;@3 J/ˍt2BECwGmib5%> )?$wΗi]CȊ'ye\=}omnƭ&h/̴IȆRi\DahbSH? /6er*h'K`\"d ':9ܟ4sr#eX) ^!q_({RUMj(?)7#' h5Qi˿miEl`,É@5qyj_$avokwnA;nړiaa@HA U7w©W%%5/uQ ςk[x3 L1#vlH٪+ǵ6|+J*bI܉v/щc炗\9@v&9v OE$p%fʰE帰W'3MTJ}5|N*?OYWz?3C3K}s^4{' ZDNui|}30$718\7èYO7X +0 9J4-^ Of+'f$jCx'q]tvCǔ|it` 06l-p}yF 5Tksz.|l&d۔ɐ'J)Sx\n#hx c}xc v?Hhl8p.bɤ?uA"ن"z^-3t8 M}in?Js Vn3PeևL$:i/.>E;5g!,@6IYj9ċ<@̈ 4( 6i|}>_v0tO) n:ZWbr!‰ ո{, AH$@\KȉV_1HЧXT,JlT j|p Nb,LcS!$UJ!\g +h1 Pwm+2 Rbȷ4L[C;T]#xp=`|w]#0:G; K?_4JITfI1 jls;qLW/1SsVF)9OM9bV^rg* hX>7Imqu݋?KB|A!P53UEՑ>߻"t FB&S!_\9@|uiҽg*T8KӣޯIQmD$`9F$y:|Q5/'y)brmZpq"W~=\>%lH;dԚz/X/R4|8% N[OWsOK"%Bm(D&$^gRza$p$C:ssfW&\`<8'`LsJKHi@ư(=l`1l */^< ?;g0P=I⨮΍֣Q`]'-?59(i\ GO!I4Ng|hm(hJ.y66ܚ%:X|) 2R!k^2Ch79H>%[,}K>2 k]x_ǭՍA.ZS s[ οF"eg eK5~LOxfĈncI4+DOPEAtxZʒAqCzew@X=j쐯XC's03K Pb@o`h @[&Q(IUPo ŰҦ˅fnڷ=.Zú7nۯcҲRБlAu D2w~͸l‘ߣ~'7x9~f[1-Ȃ~~0KQwDr]mhKάP+kP|ll<#-K;.p@xaF+u\gIi xCfc6#">~X.7Ta Yn.dڛ5 /.~xxj( IʣQꑎddԒ端` WJzu SaK}B39gx{ nNKΣs:e4_QA޵[5SY&McԪ+ˮ?^ !4MEpD] j:Rg8ۗHL}vCqP-ˏt|eF[*8arid],:A} jgM5}xYW]m6X}\uā"FfΜ^MM UꢼWT:\N4,4%qA"䨽ګF ]PJ@;V3\MF9=-10 w%KMv6x08(ZV-4qj%|DT"qUJ;NѪ!Cf01ĞTy\ISx1趕jOm)k覌b/FB%a`w4\C;"pt^RKHtF֫Ք9Mާnb!0v?DVU 4]9fX|Kd~w[K݋Qh0;~@Y[Y?S8IcXWϢoyJBqvx!/b}3`w61MyֹEa$&GAESwZid; @-+'\7o;NPhw@+ 0wLxr7[ IX< A:Mv2]>뱎|iHȾ 馳K*^u 65>l "i@>6NVB7tكjN&JF[ŌKz͈|^)KVBp_G^6X4kN&l9JUO}ӏHlI<"{o#P+ 1[ӂdyw:xz~ 0ӊZPTk^G O㶛ׂPʼ1uiJzw-C_} =XϰUbăV$: U=tt)TN:rAx0MA3WBs,qvKwgԯ=Kһf h9.8 raR6s9L.VmɁ+RWA8#qɰa5R^,rzpFyQF(o \ZnfCBH{zgg6+PyM!հSRiZaSQ'^:BGBu?,lW )+(Yȇf&.sߥhnƝ70BdEVo) 1ڄ^ |ٟ4A%kT:/=)&M'ΰ0K32AGmPX8CQ 2x %gQ.vM NriɈ#?9 ~sգ;KKZk:<\!GQN lЛb=RmBk^ }bϙyĐb"mҰsipx%mI!37};P~j;OO.ܧ/L`P>hWlRP;bҤGOq'h`ndoxjGadਠ̣TGv v?aS9 H+q!)ȟlNm)s7bQ(FNx+> z !lfrB_kb`;6J+)3©P+) \4 (>tB\;(ȓ&/nXr*V&"l@mKݷJv̹r܂BQ0Ŭ{ѓUr> lBb,^e@ Vסڇ z6^y7RzTz55 )'fgUN?8tE RVYh:"IrzYYr ^F'HM0`cǮ3ŨoH|?]_K,,Lq`;'[*QSyf1ah#ڋK֪4U͹NMƘdJ )m9أ\|6't32źL>20&ӤO43$zV6;;M#ROE;Äws/fv[6rF(􋱠+8c&ajSC6ERJ'(<9\g1ͦePEezh‡8CR/(-ٲ/~QwKuks~`tG4v!NY>&UJe2)S/FRei+סb|I['_^}08qSg#mqt$)e(?. jb9ArGH{S6a邷4xO/MKb:g`} i.lQc+C0-u쭊&Bwd/|C:ڌ<"ue]eF/ ayGnh> 'Tqq_1iXQ/zĥ]B+Ɲq^St{mP 3]/q%ZDnh[=(B!WQ AwX>NQq M/>#.Ttp@([>YT-Z>]3w1 J&cK 7Jg%{GX,e+ i9`!/@탞p 0TO ?fcL݃gcv*x]sd/Id\[ű}TO<1urh2}tW(q\cwM%:`Aªhw}~/K!? ?i+9awgEC4nTa4jNj#KSQmpӚ300}0_:3j9sPd]2AvYIMtc&I·Hoa" jaOXվZ%{0xNyR `aEwmL]0Ņ=FBT[m?۰WתEF)7SseK#,JR(nۦӪ|*"ԏ*wșhPiAj<^6ph&&#/ Kȕ|y'u}:CItɣe%~n2 ?QٓhuRdԏu]3կMGH`,{2ƌ%?)<Bӫɋj+M,Gs ULj>*@4PLcΜq$?9rLq凜`O$ظA_3$#hKNNRhuJb>/-`m9w\nk j4Ϛwi|H_ ZSpLGrYX7ԁUT\T=3vk96KzԔt}YDº{j]њ ,`eإG} Q}ƃyzhQp~`*.puCE:_eIxR юb\0̢í{F blrk5 glotHGEnA )%"!RM:QD+ pe1(zqJ|~S;hw75~W2m ZTGi FcGء(kδ27汅 _h/AB}Z//p$~5 WA <̝яgng  @.C].zLYret&!ht!WmɆK aWinsDC!RDVJG=H#S3[pkcM{: F}Zfk ^h^=.7AxVK%c.? (τ85ӆ]daw yQtKʦƗ_OvéKo P6Ufzs5hdY!HW2oȧz'gٯ q+[ ԥ3 2l6t3_22@ ;ܺ),=I@#VOyAPm.F6JBa0OX;0q0sxBL$;ǃp6|7.>; |#h?xLO7ZFGr%͞|^0}HЯ>W@$>Ubv(\ȹx GӰX=^sm_DsҽDA0/@;\Bzb|3>"O(yQ.n||א=3p%pk }eF{*8^P[FCMى٭9j9Pc{T\)̝ZCKr( _3hN\TcLv6VS 95^K-]߱F]W>Vh^a:50.|4=\},$YT$50^83~3#g*cR%NXa c~m@ 1W'-ϯΆ>3zO,p \1KͺnsF;mׂ |i(ՒnkJX{HS8Gi:nc,e}2{"y<G$⚞6=t)a! =<&gq-=ΛTv?Df3{QZeȑQ8GV;ǂKPa e` :k"3z 9=xYRVζK#̽(.O(Hu0gGR)m3PLl`<4Xr uπ@J=aji@- 9o Wp鈘B.񎦾xM? D#qnyi} jQ%2eEiT>I$sa:~X}X~WE|dG[1-J@BCYzm߇ݐ#ExiF7& n 3䜜PKG#z .-?}G6\3p~0 Gw,CUv="c:xҌ AƉgHP+ ># tC>*#kc׃~'/'j|S6q^ʬ2Ayf)y+T]88%y?& =_13Szu)LsmˍL8\<=@ 䣎ZCΤ]HT8z$s|;+w;ϛ,Zc}[Es) DpS.eɦvfjhG0ي+G6rEqL~mQ8aD(E<447-'9Xɗ_HV|ך3vkӡ-O9lf*4 k[] fA.^"'-fY? {֍g~eE-Fc:EOM`;- WvAw ST /ddѨ~@iнkt$wxF㧝׎;9Kʅ@0AMK^40|ZQ_m- [ܸ(**JB F_̻ @UhUqs(WIN?gĘ[7DEN- Zd֯g-4n!>@]onWa"n3ȁGEKjsXoCwbxia2cА ;mGb:wO.jǗ:Nz^_Qp;6*.P=7+DEP%\č>{OMEZ,[̈,Emեynq 4o1l^,>y B?{!,rw*Y|6^m R55:lq k!<4e|{"F$WXAn;?zZp7 vu,HV(Ḁ^Z-ěǼWz"]<"3ZMdM\ ʐX:O[AS"1e "3*!z>rzㄝ 0<SF &4~&@b Q"dژ@8u(M8mmHU٭l>__u'(E6xQ/7W.)dAHN.h1!rRFCB"ިu8q5tt ABB|6dKʮHIlؙ.eVF]xnIܧAA|\߀s?z9c;6|a[R'N?6Xgja(+W >,ڔnxsacybghe*;}U9t#%BcE)Q_vNܬnAd!ֹ DJv"@LV]*_׸o.v91`]>$, x5 JGEyQ9D IgB%?Bq3`tQѸOB~7dDf]}KLy2)cZ`8T~TMFu .A Fz;egI}W< ܖ>i`2?X ]DT%t7Mrީ܅e֝V2M7m7 dl1PE`/|J=qJy)AS3& z w~m,sC.JwEB`j<8rC2-\kY;%J)]_*|GEs\\h=sj\ ާg[GȂ@4D3X-R N"{rEO zfn42i*tiX[>yRbT9/!P:Q#q{ڴΆbA]Q2V#jjx5ˬר~G_?L|6;Oܽ|4Fm "PkE^O?~ ЁJAJU8å@ob䆐j?ciNR53q#guИIhgRGx9y#Mnc_ G1>"G 4,R;- SA 򦮷qwƬ*_kBp%kJcՖh혾5!9d,W|L)7uLv ߟ*7ÃsW#ą=(ٽxN_>z>56E\eYogdQ-`RTCmA\83Rӄ]tI(RS O#z^7@mA'(8w:%VZQiyMO\C%]>y؁nz|: -QXQVF:vz^bᡨ&'^dabĩ|8dSV}-I>wߡ9xk"jq$B\fcV9跟Xi):z\0/o`n1>12 j{ie&YX`Xs,XnuKn [C:c' \gPݽ>-Մ9yd/%bkVH I(_wW~J/jrbV J^)-+dn32q?ᗅ"bQwk_OR*Lb%צq]Rra8Ȳ5P@](vDQ2S}kVьNyu֢JyM2 p-]QEuJMR$wUr,؍mKWy͒,jܳ3p@U0L*PqejgS :-2QmZej+,Vym$xf^{d_1"1< `̐E-?qסbƤYCOdƻ^S! |ȂRpH+8:(L.Ƈt6 %KP~K+͏*Z08Eok҂B^[oӢ0̷K% Ɓq?9ǪmH1tpct:8uzDK„!!k-듹FSz'YT]lѾ~ aWA7WV+G+)dm/Es~)>r% .DR,0)i9|B)|Ҝ GXRP҃4@R=1~Փ1 -o6N9Lv?YK)∕ GP,R1cçZ-7J8,O7rZx* o+mߚJvǂHk eSLH}F& 5uȦ?.Q5J"JFKtU\,p'-~..XGc&Qu[<xzDG9&0π8R@F?yeS$sj[Vq(oS'V u/Njqe@_i~84ri+MЀJoЮZk)2 >^<y:0h=e4.G[ULUCȆɋEM 4@SEڦx٧W]!p 9=dVLKk2+:i5SТlP+H T%p&.T .uL-Ad0榦!|74xb)L6tZZ^sqȖ :VC Ȏ~K?ѱ=!kžFUɉ)v .4u|Vi)y5zM&7VC8"gusrqUfALp͋Lcln7"B #fm2{e.iA)Q4r-?%/|pф|=pFsCREai1fۊHݖt 0_;|W'.r6 ݙ0( (2|^K1K4&>3ʊ$| L ШVVLRgcN0̿%]9㎂^x쒂_"%dyڻ ]]A:H|9yLdðn C #Hf~S|d9vgU;' ۋiEQ<ˢh#~qX> ;ǯuT%%")P F^ y_|.-`BɀAHg23(O7ha/4qIWDzeзݗ!pnY`%1q4dљSG0?}]",jIOOiD056RBWs8Cm34iVŪØ:4;Q&2`_N|R=[Uذ"F$Pf|=q)-lwIZ /L槂`“5wzP#")oca@j/'{/}`rAZm׋|{a$@+τdjz :?-ŅxA/ƀ8Ү=n$㼸 ~og63c | 1;ڏJA]mβ5o^Jo[-(r~ FL-[Tl>?]%QY3ZlB "iP/i3cE9.l YT܁Fimؐw`j[S; /K!NLT7sua*S =XҶRcÖ(4Gh;3X7`yP'DeJT/,#o VS:8)tY_0>%P^ŧLi/IEZXl?ohw/c}n3ap|!tnK!55`;k_ sH~ǘǰ̖Ul&okx_}EcKKNisiE][2N A0>=O:Ɛ\ǍH.?S$Ӱw15J"jcBA1gD/OB~`4TC{wQM*gdy6&S8ScItjS#u)WS U?*3@he^Hfʓ4F8;W< ^h 暜)+R4vpVňY BBh!U@SR[yoFڤ21\-MEB!]JNюI3 @l(d^ ? 9(Se*/=Kg58 AO;)`ٗP~F==AQXxU274 7ij:r5ۍO-2ԦQRhcfhf-+pgI~_LC vp҆5$[ى9C-R,xDR]afRDj;IB!ISv!tsfOV  ݉R/G*p2Zx*A1=\#]@,#'؊|#TuEx"4 W *9֛[cU>1 ci)YB,8캪%=*t&>P::#]S % tm0gW"J 89%ɝW3r]ͪeƶ/_]<@H9WP:BIh`ґq*킛dͬVo50v8qyCOQq^5AJ-  1H:⩬,PBA'-JI֯?f;i7ݤvXP2% QK7jp(XX+0_ׇ3*bKy3f¥ O“\q_OR\!".LL|y6*sDy<2Ġ=ȉ((]*IN*Yx]f-t[f Z^70%iry&?t6VU\+i_°j77ʊjqŹQ Q$a ƷWǸ?gщW4KL[O2w P9Xu7AY+ĕ !D'SϳJ/R-Cz+f^7E"~DžMܲrZ2 xEDcY2Kbovΰv1.Yr^u[Jgw9|Oݶ؝(GO043İ:, :U% 䧏;4[缬ޠ^H$Q1XvJq]BY׶uDٵ!kJPF+d*-#?pUWf].jqd$5^6 > r}p˞L{!swO2?!R/`V|,J <<^gi&qihSKzװKk|J8rV 0Tظ)1:.OAG.M©*&[ z|0"ڷ\Ye,t W!b6ևkٰ$l'M~y$Ҽ ~94t,DNȂiE1{p sO[Z/_%m/އ6"N[\S+k>^ ]n(31|DOlU,ݶĸϗxy05 S8裏D*$}  ڗ\h2 oyِs^ч6> 9UN?62f8l&S`b dEK)$[O!ΛWgB2F!pGA~NrV#.]"v+ El/4nSp->F&-M}xѮ-'9L؈CfM$^ɵ'D<7v"Yew\Li_L\_ QMx Iﳳ>rjoS漖& VeLRI{|ocx[9ؕr]Qڧ].{JhMgz&^<,&v<_/pˠ{0qv|n1x*A cA' ;ZY-˄{F2 vehZA g3LB|K$j+A#-lBlhw^@<g+{,S=_w{3dǫzozolpT$y.pzJ7梚^c}ٗ`;-ʤSe)~7{*}jPbm߄/Va\݈]jO]#fBMƃp*ׇw{&WGT=Qڒ}wL  Y[_~t|tFEpwJcF01_)F_,%/mےpaUD]0>(*)_r] Xo@"qU^(TJ6Zα.H962[a _j̳3rPwߴ,k5O f#7J";u|fngQ9K 4w_;:p1YDWL4O˹\3tt&j~NE{XctWVTuzf޸6s!?1IQr#tP+Nd(~7hy~ͪ ko5NX~w6l"Q ]^WkU[mYWckG4ogV*&@F~wݳQ^KG{jlg#GYhAy},`vp˳%J^X(p\cN8|#/菎h!6J)o֡[o,m1G_@Ѻ'5쮡qeOvZHXRV&zZh͙O3FDMDy#&'N"2Z}U0fhzy\V_{{zV΅69GjPQCU] |*3urLS;jY4o2.c;.6-fB5][]Xr]Ꜹ۷%,!=h ?1d?硚yO&Ev/kDWGQ؀<0[cBH[81,e%yX%{Y^v诒]-QþG C';YwTzށ-?癹6^("YBoΦGx5ȁ&: U Ne"d78yJ.#8Pقi46%ڌ kfY(4_sVM0cr:NlI2 G¹Xjc̋fl"Xpm`+I jEZ]!|JbȎP8k@cT w@rVM 44(^آ9C%jݫz>}L^v\9\]j'wX8RkA -톒}m_6$0pdCrB'@Aoat<84cԱD wS |hIwmtyG(ÚZ&No8涹|),:;w>Wtaʽ/D8LQFF%S`ɳU-T!kŘ`! yNQUPkxIJ(2 HA& BfnD&'1PYbvpDˎ.ICɒ/:zj@  N&%J-"0;d DL$; LnZwUQB)KYJ"ֻ$j|7p"N]+Eg#C)l*RfDOә}@H5fYX>w '(.7ή ջO$f$Lryݏd Jr%3zoH bR㖑;"#_)_+X_oLjCvJLSD8DbsN A{Pc3Eq1iT ٬ q\qm!Pz}`JS@/hi("-K]sW/w̷(xEx lVOwbM({^VvDG>O9M[SCd"Eo 6}W^pjlzp2)iUA6vm`ցKu6$kotR _Wm mP{@ =VsC-.N`{XɹHml!jbSJsY$,a9k|J$!0c%N.UK;7kA_q}yezsvv J9jВRHLZu+kQ,n| 5d;GjWSuG]Fa9OwcI|1 0)έxZ|yCp&QZ3R^יO'HJ̍H]GGd rq%r2-$kYp|4=USj˭`*4QcO_!X3 CR~|~zADJ֑eJpDZ 1[ )S"5R^zEѱ6520]ylNR}^(IÁB-dMah \g? G~ޭmJ51!lE9bRL+ s+:5x0>j  L"@DDIY#;8`8RJ<=HbiFYv }[z-V(%F ߽Ocy\6U|ǙvR0ʼnacYL|t+4 2a#n]pБUPf:C?pYƟV?}_4mBL?ZځI*a)U=߱4B%FX$Nwڈq3Y(p,eߚQ.-vxbs:Y_-mWeId=*oeqEKCm,A?S, sɌUb˂)bq./aBtI EUMj`Ăp$tBZh9.bcfh\p{4ytCrˊajvvLMg!SλW|QՆMP62ɍG3NeY{xϫĻŽM1'>3(R)#Xih:U0tLn:4Zp $+앁&yZ7j{`) VaC5GF1-_4WGz_Z|?]D"4,B׭j@#-6;'6ŗp)J~U?ߟ X:22i6='05ۅH=Wiqs>ta<7I]HIqB_UD$q-Yt9te2 H׵YlYmA=7ҍGrK.2=G=&q*[OqkDuݵG~?_B gQCU]O!6ޞ=WH8 G\}Iϝ 3$`5w֜6`q|^V1ӸWq̎h"VT۱$\!ZC(R&G.j䞥3}*5yoh*J&Ě"K8`*pтbr r'^ !L|#_%z\59+޺vql1&r`+uMzf Ļ"a$q}[/!J Ꚋ62l/q~rm.S^6[=pBI5AxߧʓuAq#7"DP aD/j?п-?DPiveeK}I|uYF,Oda1!'ÒK&n,B9$£ޤTIfkWXr[kJMLȳ=5a.|9 8doU{>005 $(" @H+t;|yרW/kݩ{Bs|4FOHi<V'bFQ1}= 'Vx6dc 徐3iE yZ:ѿMk4Yو-̦ #G#`;T0j9xt*>ޫ|j6a*~:,)\4UG8fEPS|rT-&*KԦ<,Um!xX6q*]<:3C$IdtUݔ( -pynh+C62ݺ]O~X8(P5Ӣ>ŅsՒb=QUM+bqi'UuSl͖VGh'9$\$@m绕pL\ۆ$n\,Ś5{mA17T,(Q3R oFۆxOt>ng} /Ynlc+/Xz9s[J" /]H@w@ĊG%!q~jk.C, C<{&n$lK^ݶqæ<_4M`:#qN]SͭG24&P}3ڲ:/V SGMr=u\YT"팉mydf@],B͉vT[i%kHT@ I߆-$&.O'qsy,~P)V;R,QlF(۰ 3U " {{KCvTxklԢ7TX2IwoYz1%S[{fa >}܈@9NMC,D?^(vX!8R2TPlOOLس݈:gj%J</X߲wI h0EB'9gGs٫)V;|~nZFKe#P4 ?Q) Y ^ܭ_s1C0TNVyѭGRPQϴf`mNSHTdC(MR ڥ#HtJ\lM<*h/ap'y3:[B}2^WXiuȷ(JK\REa:ujև1}AlrX[~j"#'':6[s|NhUqfhw螐']^LAkz6J]r{ nIn~Ml 1t5^$"bLO_q m.@mZ6 _f9:ƭc9(u'T875Zk9,MNd!f<)V-\Xs8C~W"l'=ye(%%re^niN}/Vvd+\DǔoWM|dԎdiF*Us㭱nǛ hH!X#2̳ @z_YQjCY< u۹5e*B(zΪTO ;^c果3ȻK_i1IAk>Nm&΍*&IS[[IΕ  d?h+@2q܃8q+*Pj|Ȍh]Xx!A8_&UIv*&._R{ %.I﯋덲xT`<k(ן%d&ӳ#ʙAi %DKP4Vu06EO,X!`MJweV1:FJrrI&1{֖NTT-P䫆 0hw/3 ~P_ `O?x>*?|qV\Qш[[c+Dʐ?V: V/'ų)B_t_BfD6`Ǜ傩yg&sm= W&~9U=g4?Q ט57lz:njd8t[bB~ܥi5ů)aȥ~LdpdI vf? 8dftrTDy!?`˶H}&THwgKm`vdqU1-t E֘ M/`Y,C(X_>`jwe6Pv 18!^"O&aGh*,U6$F kS,~hYW4ÄVaq/b-=BY1EB;x,@/+$KeZƏ 0adQ]9oo7/aq-&9;0JI8:Kṁ%:U.D6 ~u̳vv7k}*.KY8r Ec97]Ux8סAx#Pg֔ߕ ,ķwc!u%0k vh,Z -Mx %RL]O Tc@03%0 $nJOl?ғi>qjB!\pZvs7BBst>е'ԔW ? (CR?r!NI)9|b:>-9]u5ƉL@}d@GQ ;km[1hU65|)e87w9- ϩ4k(@%_bH9#M y5S`<.⛤<"ڿi q׊ǿV{Y–DAuu,O5$쫙\xC2UЋkoQ,fAGOQ #Ï lIܤaij:p8kBqp^tYx<П8xŴK'/܋;xdV7sS>S: Mh4=#1Y+VYyAcaiFmdyʮ Fa|̈́ C֠XÒM}TZ_UnewKe~"cvǕEv "Gy]d 69~(y5K@Ⱥ?|DA=@CKvi<<-#Ni<=`>k=kE]. i?}7j"™ƱSE ])Ph֍(t ;NENJ^{]9*ު/Ṇi uD$-4dԶ-粜&V'"Wޏ::;%#ae|NNbV]'Ak[)؇H]v{ـќަ l.jOggtfW['i,SIORv;*W,<>gޚ.Nt&IINE`~azv7|Y*${R?ZɹxmQf!7;[yr!+s4אIzcl~# 0ŹiO%qm @։Y%#vhD I| 譲!$a0Pi׳s2G09<-m{w4gܺ+.r_":\Pzͭ^ ! c"'.2Kj$7',wd+=ǭಠ#rIJ֢JN`6Tr5])ML<Z>EC' ID5x^&D8hC2]b#=cIQ9(X3q],Ŏ-;LIQ\+HP%x>gbǴGj!CNQYM wZj@Al` "2?0.tPC)Q+rjsĠNPN-&BW9GI+';Gcٯ2uت0$~ !L#{= Ugs챂1伓#@ ǍOc׋nm+KC;X@ g)+DEfpiF,!a킜%Tkrw9&>h }_QCo>xRnQT.Gz% MNtb[KXFuUT0E9&KW UM;=;t{+i5c&lB nWe’%!'@` Q].|xw0mr %2Ty;] M`L_Rພ"걤_Gtig6鏄 A[V*^)J ?n(x4XҜ.(u:i3W_j7FFMt] A2'"2I.3GӮB迂a;xB+I(Q <͒yK>dtDbWk[#5+y.Ijߍ {G+dpUZW4M>iɺXY5ܑPS7SIj *j﹫,H>'"Ue-Sc=vzZ/ }amrFp$ZdpWOa+-Vb8u@[|,مNG!(\r`7ůn0c,v3̼Ʀ1gw$_#mhb~|nf3Opv"R5e Ul_d"mEEw9vD#$eeWVՋl:7.0%l`=#D&ZE]ĿXemr^V'"F`h6FJ&j [s?OhL?G CT^3:9[zepɄ8ZLxAN+"1V`)uvlAS|$颯(&9H jY lz4*mmv10Fkd귕:P)XuK_ P 0SSkji?R~p._E>M Rƨ=vHhQ3cؽдZxc?־SQ[m5ɷެ; )sG,'@_'C݂H4nqPQhej'̐z Zsg?!mC{aZ0b|>P35Q3o 1l69b!x꼽Cu5[{)AnS|^'o/iYpSws\F"9t\0g0NF_r RF k̎3 ^uY^¼nz"湰B=2 47_3ԛ?8>J(K)N܍%qJ(m5e @>0[ؽ[(|d*9B|uaII!6pEco. EcF_~RG "]~ED:f*)OwL* r6, r _d͞ĻVTմ~\7(QF[n'|`jS}_f! !eǷ R0zn(2WR;9[F5: io!b9jpr@-ڴ ͇}-D1VZ$ˈ0?ZAJXnx,O}9Gt3]Pr,˘bU2eK nZvC$ ɡb憔^.Wa&g^< l1yry- -ޯRmQ߱]Ai?ӥHrclvщ;bѡC?1f:!i4xZ>R - Al)qxr0X#/P*A,@dǹ028 V\'),`Z&% q6IW7 H@~n谐ql>AR>ZN= f@c%5o 9:U;U%δh8QsC\`A:&mZ3C511}.mc\~cE,Pr7󽉍i}CIuDàdL֮Vk MmDz3;U90G |xfOfdHP%?7/y'Ij7Aej MTѪ=GUx+"k:DxZXu /)iG2fmHu%JϹw5DkclD5sJ&QT4qsg]uSDqq5JhYF-S؃U,\(ms+n[7(aNkŸ?\B LmexltZc4rF_YZOkF%A!@4QpX h;֦A٢#qP=o"8q٭,;4OUfi@|Ԑ4^/^k\*Cgqq124LďnZAZ~[+_?p&rccFUrn4ԺiV@t=EzdA|ϵ7^JH" v4Dqew-(cݪgPo7{BmؼJL`EG[u4YH赶] b)h֗~.nw$KpCidGKX3V(ˈ3R71;8j*qފ䕌a\m&e"s3К&%8ŷ U%AVgd"ehX:>fp-{5ګ 4g(sncI^@Tf赙[ Df0L`*.N[Q6b>de,R0Hdz5ØK$q:|K6'vc%N ; i튌g% NVpKt0oЊPv~0V<ƨz57K׿odO v-Jf%c 4/ԍ0CGA$!$kab#_֊ lpx7hwL%u$ J62UX*;6ԋn$)Or}Vs)d܎we^G̩$y Gݩyg+K T<) 6=Tc$L*?!$ AK=T_rqS"J0{9Osl/"!FB[+/$>39y%0p^IޱrxrZ@SGY  ot;k\{n'>Gs~6cce@ө$IR_m ,"wў,L]"!,$gfd a~)Һ ZbT|rRMTKIC`; [b\WFJd6L`Ԥ^VZމ;Q['WFTqS>%޸|N1ugHWS V)|*tZYbRI^vsۢnڐ]X rjǼTJ&J_ŰL?Pby0kY}ƤH"ICa08ȐPڌ7{W.}FJ^1dc\C\XR-VkBvVaFLB>Tw];n|LDK@v-MD~A]5P+glm9 A+ϖÆ=NT;^.-f>8Ҝ a|1?)SUX=sm&4Vg?p_{ocn{+?.&N.wβ':f{@+ɻpQ]lTA-i !' _%* ovu&>lʿ8PVbs7sOuCAy=ېO̭Mm.JH;DhWgt{q}$MB ,1|Fčwd$qѰ&tc ޵wψd^~ZIB+ɽ5E fJZUl`fZ$"yGH_U39Au\deb^CGU3_(T /@]8XHS٤}>IgE%u,`;m"aCpP F9b&d3]݌MOܵwu/|R&h9qTwuN&` !/|^+rbSDhC%JC&x +>|'kN9^V]]ŋ tYX5™DhbUIj.W?)WZlL+-2Y=9`>.k007鷾҄:|%En\!h_]_3ְ kF R%Hg-F @u3[gsݯ%_w+Ո>Z8fu1]ygΖr[kg])ju$ a(Ƞ}/~%[8zgŞ<)" 5hهZMٺ̏g{A Lq,Wqw1J?ELLj_BPv4Шk\GHb! dtm_|Z/DЋ8 V Q<Vnn|^dE\H۹/~m4PjFy"iL:P_ԃ߯` ײq4 { Z1Y $W8vXF-O.n.woۉ4Kq-Du\o/wÈMkQ,=mrؿ=fsIab^[νp@X8ۗhjUm0W׋)T >h}XJnb$bMg9V(`z;h.qrTV-8hQ`j>5 S{(_el(b(%wr_e8uDr@iдGYxXߙc#()^=X!h֊NÃaNZtGzhvq 0+[z8⏹g8=}E5p\>qʠnVW<nbrL{_x#hgb"ocϤdf\%b4*Ɏ]'\k˱ .;Ax2e ٝ ;2 l95+x,5A1ݒeU"d~9'-JЏr Rny W3ڲ%;PJNsB1<6q+CxV$z.t) ٢3z*ᜃx!o{*f`3s|P ƿכ'ZT=K?]7ߗ:<'~L/^l^҃E&Gi"\ W߆m8h3S͈ʼ)_,rN' jeԭzи n]0߫mW:f J,4RH^I{=-9|*RZ3hC5)FC5A4C ޻lJt:"~.V[4R{ ؐc=^0WzZa\sSZ΄1I}/=A F!GԮʡ3lA^D(&ΡO)U2 l+ mU$& %9[ .A1Hmo(o՛oZܴ;H꾋\$9E ʼn ԩvJ=6Hxꌙ$9]pƞmCkO. 2kӝK NCԂ@@o/ ^<Lc5o_|]]tM #|']ȿb}-yCҳn'~S( ?Ѫn GDK ̑74"Y JOv]BP.WB-&^L0 0;"V4"c-T܅ȨqO Q9o07r#GZsۨ.\&\`. S I~DFE&VX.OE7͜]j'de-+"['J.-.O􏩇t*?Yx J_;Y5,pۆX%yoH[$)"i'*vBf|Fl/w.:XU $j 1Y)P`w)` ɄMvsUtg6Ct-_{jKTTX;ӻ9mdxco= QjՒ>^=3y?^9>*ꚭp?.zGv<< ¨57aq{۾+d4S 8+ ق3ʘk!F e%pA"9uںiT%qSvjZ x9uOEh;C)1G.ZM EeӾv!=&mrlқz7Ъ(g"> P]5 e(jS"r+ j=OXPpM]d^L/9>[.l W8Be ] GCռ'OD< @䖟FG/ g>~*Z~N;/Vn&3D;^ʘ'Iߴ2(C+!O|_`ڔ-+*5}0߅D*ǃB [4B? Nc|t(\c7i%vS gWDj%-*)63,-`\`/[^Ol)MVvPMOjfJ iA/=&[R*'uo~Jا)5zF.Aso0Arz 'сZCIP:d5Nֶfuze ph6܈z^'۪ij?kˆ޽Ix ?Ԏ ^u;fc 2c\P?.ZW`T_z7H=iİHiv?Rwx@^Tym EAz`fi@u!-!|`ޥj,f7åD, [(* WZ)JPvWg4Q%jN,w5Dj{Wc`J͓"UgWԽ/ br3N'JX hW>* t+kV̯ K;];ږ )M7OIbg-JAJIa"[ 2,ݚRg;}펧+L.5 f ~Oz?OtWr*"kT_b:pWhk=,õSHaaȜ:ue8CgD@KI?,I",u8[!V*L2b>-+&K:|_&H?!Ev1G:. mk'")Q+H׺Utuф,f@t<Ʀ x5 @ 3UZ6U^ ;$H{Sq%4$g-RĴa DkVj FzՀjևLq=>b߄WY)gFYYt^)ڌT(bBe)`D(1U2B&]jQ͸M;wN? M$%]tV0%Rl;n7wN a;oxN*1fd0`bF'm?k~^25FHo:j){hh)d?d4~;eꕤ(k5k\fW_ql=eU>Ĵ C+bS\m{@&Zz_ ʙ|i%OC6v! }=~Mی V6X5+̄x}K TZgCD*ΠX9 _xkLa,WbUUBϘyjHЦzB:9 *Mfm.s%4nbG p?GM=2Ok۔Ol*\AH4:NMk\uGy[~%T.|[-lZ;9V^g21|o%f)d/DiZ2!: 5l0&oܲx<*Z AXŏc&^sOkih^N #:ݏanQTMtCDjЎ-^wB6s(Qbȷq!mE% qZ߾ɱWS'A$ZwxOc^~￾I `CHR\*+q\Ena/͍^.ak)&eb7>XخWZLU"ʹ B&{RN _%xwMd\pZlF7+j^g= oMG C<ϐ{/ m*VքzŜ^iƒnѴA +4B&.起MMU剡kkbZ&?}2gV}r8֠yc[WdQzzޚ{7zFƳqaqUP\j4R:Ӣ=Ňal4.HiC&ӰkBP`}@R Dq}Y BL_cU;vJ֡->:( qZΘg¬W^AiTkG3 tu!\Ʀ@AbR**oh.Kx UmeV??Ώ&)DX6~sHʔϛz-B&9I|h0E""6[D3@+KBv;%XYwy%nj/uxzu2-~ТRLT"dG+ٔkn eyEQx<쭬C}a-G CuW@C EM ɼA(\0rҧhM׈ Oe՗HULlu -,'ڲ V+78Uk-vIq:yh1dMK:/'%&YWRU 'l}.l)yl-[v8ޡ 6~{+<UG* )0$}zŌ:/:c! @LC*^~t n!ʼ/?^|愕|v_]<~(#{cYLƣl& 2$Ҏu)XG!44}@dŖ6ٰ쇩f˟ 2Lwd튂_] M/'1-)7P*6Kmec}?g!b-]N7bM KҥAH!*T {%¶ùJttuh"|D6x5P~*6d1BHǮ+S`MEDؼ|:䧨4  q zm6Xy*~3=>T[Q $8Et؀ShI|!2W cT!n߲,;ɠhʓ/`5_f 6ͥ][r o5<@r FTz@5zX,qWdﲨD˄ vzސ.yWrAC ۂ;,eFN$>(d_1D&jaqyg }#kMaOM'l5kT:;'cYt4>#9a^ Mi#OCp\Dy,0_ l8'%Cbw#}/s;Ց|M =v4Fάo'?i'8<'``L$sW3l@`a% yer`4?߈ | 5gS{Y"CF" jP->jEls^X&okHe~r\?#LsigdRrv I"3K!REYbNhUE)>_@f ZƣEw< .z2-g!3SW.F,;P\10k;4k?{ /Aˑ 5 `s#l1AswL7`1Jr6q ۤ|44|,5x-(;,[{D߮lH (_WOL?Rpu(pr0%(Ƚz\y=%Z!LSyMd6|+?br)Zxj&lPY|h{xWئM`` z@LNUl E/ 6j%SeX+h=Q8 *.-BR἗)ơnϰ*P<'lp z !AE.GFhNwCTgzQ\CW"~ԑj}䥇pĨ5S2t6@߾$_rlbu/)qA$kڱsNd+s;=I@9}N(>[5R`6n}_[f+cʩw)F&QIf0Od 1>%` o&_P(R:1 $J1whԉRW.3Y;eoc/MJiwՈ,cvy"~G1;x]%%cs*0VdrHA0O*/!7dv|(P.`f`RK~ nIxqd.a[+bQ@'AK36.[]i +f1[1Q1wJ&FHxroJ0r=&?X3H1d IXP-ܼҼ:~^Ոr"KlGgTdFd&:P3AqِydU!DkbQ<lf6<~5^+G07C$O aq9櫳7{Rh 5Lomf_fyoܟyo>X1CZ`IJ\i8i+,! I KPDJz \x^-cLQ1$v~/Gtz@y/Y1(E=P-eñ(HJ/qi-3Ux7<ɂQ#5+na \1uClApX\) ;hfȟ&=Q\b }uuYc%z%Ѯ᭒:pQBba5{p59xD 'a?/e/|l$7 x ' ps lrT;E`!XF?J@&jΖiː.uW٧%cz9XhPDY8D_ `}f! ]0k|f݉/|Aɞ@*G@7&-nqp"K醥B[F()jege$ ;n5v@q93;a CY}T.@ƶ ci&(Yq4^ 8>qY)&?!TR"Iv@?Дo8jQ^4+~ "p.8v@5_:wgA/nj֗w,.*u U#`Bŭyjͥ1Ħwmoҵ[ONԙlZ!\r|8zζ>X6{r^B}J.ZG'6DTJE@rzxK%ZPuGt"HD,=L8XhЂ )>Xd6\+;I(p@}l|`d|0˽>Q}R}{D2 )Gh"z1?ۭ=)=e:/{ny7*+EF6a7ΉGJsgr$ڙ%r צ|MpǏc{fA,1ۤ1\,*: `ƉMS*%d7zM!n^w> yOQ#B)%@ʄy+^l[?5A6)*l b@ 7ƫ /v+6UgrzrcQ0U \Hw/E@(OBU TlӶP`R`=YZ6Ȇۇ ,&$̌䈽̩IV7jn zUrHH2srvzNx|ILp.ȐN-!`{P "qII6":en46w,i 5)!mD佔JDLU*y@AUJH"kqz,b Ui6ug~m1,f#k&s@! ǿiFiõQ >oP4ոK]'}Φdq[=ۉ=WH,=T:~xll gfh GNoE^JRaH-(hO/Y2ʀn;GhVzMY4o"0T>+8ض:^xB &j=@KzBjs(2v#Dl Wu`>}Q )7O(Pqϔ{2>S}_1sv* :R<^_<*LZ}.Inɵ1!*%2q9%]_03CNjv(̶"҉F(|m&d!A/pbl`510ca~ɡN hԒŀRD"fآ ֮SrrCc-BlA([DVw| n)+w9xDI'@ެ^r@k[/$ R䉇L !-D}T r~RM P^$z=ێ)(o7|X\?uB>V [z]Л*jV[ dP|j2h L RWkKAu3W ! W(#43JD,6?_=(4CydYn^죉M,~ 㔁(ni*`KΝDǝƦQ*=ėoʺ<_GaY.pj®"&fsjϼ[tGa|"֏bN>nĤ~CL=f'%3c2kb4hEF?s^Rɱ@Fm+^(GybrA`n%$8 m蘪4uGO,E2$FH6_kz2*׊ )(OҔϬ&$*ASV&K.qQ+Ŵ.V^<<4EeJ]u>AO/rқ/B-u8!j)*0yD ;RI4竌ꪎp".H9-`ueg%$QUI`tbT0 =/5|{b^2> @3/PFNB S?YHPOSpI"ux< mnPE1{|M). >I(uG΋|3ۙ#Z=&ȟeKb.1r[%NqW} ت\OsKE=Ȉc"wf01`3%>x9btNSZS(QeC7@ ǔc1*}aߑp^erfb'0I? yp>8RuU/ߓ!4U~vp(2F ӭdKz7W(!l JhZH7`S%`fK=<6mE)U|Ȩqe J W׹эf{zxRI| E3ģ*ڤNT}UFo /EjoǰUVӫwY2w?3bV 3r9FG$4f`FzBRoOJG}-? T_ Ty:" LIS \.)<^V Оq;Q+&vD- TR0Um,*!*"^o[u&^Y4Mȑ ³wl 50.&N 11sk!R4_U%8jҙݨtȮ }~ĊvbI&h<ILxn-' x_ rM?FHգ Sdlȟq,r%KwhJBfǓ&q 4g/MiAniC~Drmemn1^Vp%wOmHy@%"}Lh1&L&Z~IBq ^NaZSBz1sFj{6|dߘl `i`y q[T Jr/δFDv-bu'ׅ>%~Rbn#;zQqbqL9vzo+szljdR4SA}Q\jc<,䘇B)D7ncSI/'Qd!PR>b QZVNAܰNJ_UYl@_qf/6\.g#dغDHވmwyZ8PX4ZNEPk1ץhuѾ˕ 5RA5B %_mw8Qkr<rb s}ߢg('f_}\+{|aUKzh'tp??GЯ^X:a UsH^&լŬMe"꟝OQQXF|_wg1fYKH1h4S*b. i1ӆC G$E/: LoH\φ֦A?'6 ]pW&~Q[A;*tyeougBWK$+jЛVR0/;)ۨp}ϩo0>3e^>[=!plr\$U'Fw|zTG~TPO/Jce}?!&hD؃cf2-CNjJϋS=l.Cy'`2P Xjx&wSt00JCIa^c,} }V;kfVAǾ;US/>]F♃eApv93/l='*#'>,( /4Z*Xý^®\w|m7x#Q E5:K Z@mW\AtɗAOa>ƌ4].U A8 ); M+Yڋۤ6=?4Sލ*Odŋ5ת"J}dv;ڠGcfA?5ڿ_ vY jS/E?aj rTqc;e>{0Tg1g'2Z"~t6=N[M/)^mebYbyzeC>\oF֫N]dUtW]OLnuؕ1._vq6.!b\lKcOK"w#~V)c#[`I`cP~/ ѳj4 +^I iQEgߜLD0O [zYmRA0w_Ã6f!M=N9 L> IeK$Je&mDi9JY:7•`V,(E E^x6kxh 3aJYdiKA<^sQ|)ǟW4}5I6v*Vp ǽ`TB1V׬+ U({=No.w\6\a(+2ƾDj|9Ƨ*CYpezQZU  }8,]"xa}˽rڢd"d_H`2)콹D#[Jߏk9ٸ" 5d,=II>!.A@F(ezO U̒n1ir6[i*ɮDڏvZQd 7szuyK@AÃ_(-¾pK]nqŒ$ cVۖAikY1qaGUO\R~Cq<(MRV'- cq c̨A'B~JpE9T$&  ,q]xeMf_ &bAa!b}*l\uCɶzI[pf@K@LYsW;,S|~_&RlT2E >Ϝ*D[p>A!u'L{ 59\AB\8&!\3ۇ1(0j<ӫ&vK=^ENc$&YD dٽu,zy.̆uGl+-/Y';Kxn2|YE7B]GZ˗DHuRWM]2MoDφg_poB!cًwv< ,G[?hv"GFxv;J)8vZ%yg}Zk xs܁-9cF{hX4^4=Νn6n)ZJjW EFs 0>|^2;T22A97o,cvLpB7ܚ) %e،v:4az< M]Awd#}uhw/J|GEnr2̨ԘbJP.:%|+2bl%:>I1 .OY<38y`E{JqhBmi2Z;|GݡX\xMn&LjPRQYjyf@=T1l`7)$TY}NH,j+(1!x7~?kLC}M]w_zwm#Z7e%oh#fܶ7MrIib2IIfiCE|?]f]MVp5Kc-S[x>8D51 zgLlާNe-jTeFNt諫;AShTbNSLa=nw"Ll97įbek*;BpNv h_^nS0#D11I=5zҥt>\aFy qӸ^B[\/jwU1C'`*e6&[kX[D|bơ4LrFF<7;aΏI-CS8-^(ꓸ8 2>?s"->j-ق#cl.u!UfC|j4< EɡrP#|c*E~~ͨ$ "'`P)z΄ +\F{-2 6_?,S&Dc|v6s!+ŤںGą;S K<2Nf* ; x6W]ke豈w̉t&$v;\< $?+swQ˖"<\A~)OE`;>s\#XP-Ax`w︠ʍ.wz1jʂ6Fu'ʒ%7])As`j%B_ ֳRM }X7/R ]whƯK4[mX_rC(i"WA 5M(fZIeHe?Gh wbu9kQ/.쓄Qd5Ffw  bUU&:d;8ϥ 1NZTϵvB\ k *(: 6 $ 8q>y3L~9Z1-Dc h|/#OA H[A'i%ܔe>IZ"QF!.RE15+`%h`-2]TGN#?tyɀD}Cv%B >ѵ)eWwI XôL踽k]<y1aXk}&ʿrkˁ[0"M*Ec s#|=8W 5]}:=Zw,!ߩ1E\ ̠%$!ʽ 0D?X{C'g?,QR ?#ɝ;FKOS48'‡%y }g%\F ^UA? pjx:`sofI(3%]tUnw #ۋQ$V@R6٥w&h&lw!Ԭ%Dm+P \BYt%$*LfAVu2iOݓ{HGHt2UU'Q\jՋ] boaWj:ҵZ#=Q:Cw6MQ%gwOaQQd`g'w4Z<J\J/N'漉d^.pssK)HI:U  tzԹr̕p 3+sja(] 7cg JdHh6r)jtSFm7v=1W. \S@FEb,D? jxԪfIShhl~=q |n%2gV] jwٸ2Dˎ!j# ϱֲx.jѐvsc2a?RK1GOn: g4 N5]P`{VFF>}1L?0s74'ܾNpR?/Й~* JZC^@"bšm[s֖bS]P$:22- ]|A͚QB3d#4JWrrfi?C5>m'0@Y`\=*VcgW{B5mKFW[3 #{)w:#I|hO 6kl޷)agb|(StSdsglR\/ Qlw!Moh0slU]).EzX/ A}k3K CY 4ŠWq^7rᦳpHw92&C.FE/^3N7dF2*GSU Rb"z̈iӇJm%ر&W9$|iznNkǰU=F9 9xmZ7-}5cR +/^8'iJHZ(? Q5ɳ𪘉6wV*-0nQox ?PCG5bvڵ  1]*8V|t@rZULʕFeN^#ȟn}M nwD|t_47"rY A {L$`˲k5nw73g0#@^ۑSۘfV_J( Ї8KMXe~[:6DU2:e0o'$uOCTSsT?,|蔰f͌X18Ӆ}u|އ2Xʦ[B߳h($Jv3c0m§f7KJN[BP=+B:^e+T f5D#~.q BE|lsOɳk:OSxT04״5~nؽƣBbN"j.H9&R޹jlj+E")}6zEQ7!C|eTcYZaxIZ(E5!I2L!+MaUvTzjstL*|&}"MRRQ>%_ gOD\zZ:i|SKa^.5!t,dL`K=\?+αuia{t%МH/hOW拈0r9^w$ xD6ͬGp}d[0]Q=`x8grlj*jv䕉DY i9/tVB+"a}V!)@ ceQ0GĐ-5X_;noэ_F|;%n.,>c)n`rnS(w853noL1o lrʽM0΂a?ڊO/leZD dDʙ21va"cY"&PE櫚G@ ? ix_z|\S šce|(sA`/ -7YzPd5`)%CU􊳴j&.L7> e<"11>f!w+j8?*꬜?W zӵ.f#('PÊKr6ɖ¦ Z-A7`/favY+;vpN"\C:ѪG0~7YxXٺ!`b3~GFG"cPn=p蜽Q| wi5:邫C`v3M٦:e}Z<8s耣fQF|+މ#~) S5!4UQF=/yl}_q0vSYnjZ>kxeSD06b}dnBVC@&8!];&X(G_(65à pIJO s5d]r°ET6`$n+N;PP#Wk{.xF|j+;f4< *u*6{m&x~]x[$xt Uε2L,Q0Zj]-`&0.y$O˜ -sE[ix=w.^:QjV >ySSɑk-9+Y) }=Z gۀ4KQ9o_ׅ׵?! J L OĪAw_!*:f k#B%f_y6<T-iߍc]`HĹ* l<(~`\R-ߤE/5\, _eǛxpw+ٿd[uk}!S9oRR21 Rs79`fk]t*$Ѳ'{h2D|Vlt ahPy#1=qԩquO,) /):gHŧ?Fm}B')r&K9\JJqO@V6y{69cʟP*5_ C Tѡo18Z+w(7D4d2C'yx) P&AW'SFk#3n,xMvَɬ奇jRyكܼ鋇ٖn,J_DLjAa%+a?Qd$hjJ# `{w{^nuoq)ru?̝jPoi}~Gጀ[jg.4c[q8dJBm|s %5)/އOϪ;w ƛp1 gPז@&vί9)~)ҏ)oIڹ hl'iwjU=&(jb g)B\k~|&w UFGY}/b8j{>asqMOhNO=+c9[ o}6`n GEʣ>Yqe%l*b[Ax{G9tڻg`b@o f*j}cG1H%U` ^!H䆿ؕo yC[]ҬYԏgJ,eyJFϐaNM>CL,RDE=Z*y}ݑЄp'|_{\cm\.nS=НÆqZ\ jOD_@?A5G#KyȺ =j~0]Kfq ?AOxS=Nd|f¬6?1(QbyfC-!$6x5uju*%'^axHd?B hcNc .1Ya08z36qƩ$2f(w]aN`M(`cgoT^ÎOdS4 pNNt%Arc)kz5`<@~(ԟ;:} tZqڢU˸o PdbQa<`fp8θ韆j:sDɀy|NeN@Ƙ mw a-XܨVㅀY1ǞD0&JR2Aw! U\фтT"2-.>Eji~^Ÿs,^ԫA!iPfƇp/cb0cyNH%6YBUw,p0X#8im59`1XHbu+hE'>^WIƆ69GwmdL :b" 5VH~dA‘d1_4nA@3VT휖xzc5f+!'^o:?1B'we Pzq|If= K@M)K&ڌ:i#!\ ie9[d3cm]R.)/zP.5uzF9j1OC+^ea RJwp~Ē6LlӢx@zVcV:LtZL9iCː/oL뽭l3вt $@4MBHA) DJ`7aI@ۛYMvXhcmu.~96 12myG?= !ëkQc0 fö Dd,N@&)ý7O}4@6Ƚ[@AQº%_.HZX- /40! B@)L;Pl.4Q/ncV=B=RFY7(̌Zt-g &BKQ1)XBX13 I~a\stn3B 4B\ DG/Ǜ{|;ZP3cxt ʳ xJsl$tO}_660b'ľ/X|QȮ7]ݙ4ބm\aӯg2근NR5P!IXq1B7 +dc|uվ[Ju|a}=Ŵ(LB&W/x:Y((aP5Yk4EH5 6|5mjujvdFvŽsՍ^tu8 ܕʉ=uZP6OYG҇gW[x` :ru|kwPy2dz32q f3v6۳N "݇|r@ȃȋ642&`}Zk*ifGzτIKgqPw{.>J^~><MA'R$:qV`]'v}ph'}^oII!AMM@Ht(7?x]")؛of| yBѸ5_[!0rJ\!XO/N_~JRK?Qro'|ќ⍕º&.QP^+/ /m׃YD8 ZhF'.$GpZ㌚%aCN?Buo5C lR5F"=\Pb9vЩ5^r.ruВBrT4b~Uƶp[ַC6@NML%Fc˭M~ 4Zbl v s\O iEH[6U=noDL PB8yςٝyՠaRt8*R&rl!ѥ'>](@ :=>ZY(hAt0{xYE*__ \អ8WX]7`k)HDNT?Oh%g00!BB[f8ߔlfxlԓ H~waq\Wmybz'P s~kx) _m-2Pe$$0#3&-cGS1m܀Ց`,zZѓfR!;< Y@`[E#&H}m*ifQ)@*c 4qa/j6m=5B!oyvGQpnTᗨ`܂DkvӞ<vh~:3l5>/})נZՍFR\yTiLnC VpT;L3"o4܋y+{%VG7 I6Bka'>'al15[ sl׮Az#1LR5v4^ Y-js/^pFI7:SKA*/Ԛlm50&;U|S}7,R->'ν5s7;LCS.ΪIDUf܇-w)Ů.HT>pHI_ҩ9\>(mB4_YW 0n=+p'`F/ġ6B^4 x2tb,h>|(p>@݂77~O0 -]V2?f$⤼KeӮN\wYsS؁/սWH@.pGSj۟$шJ_Z6p#+@ U7Sb:ʵ"*J?VO9etkI}?nN|U ?zȀ+[ozܚcjiuq= KZZL%ba?!:G&Ym/bz>"QXe@{8Nl2S v1^EL L"s2b偋?r]NjW7=PB]j.Qoyc/&Sl 0`v!8}~<7UڝOGaR25p$wOp! ^%rj %r؛ݿdH_A^o[f'<)jO#փY%k qjh_oX@E{-} ɹǛi D^puX0ʬHj|U &*tRT4Y #iذUHE]P(j[$ްe]}d0'"k]|>*#Z7߉o8A@{0kN?把y1|PD5j,0SG_ TAr|+ n3ˏ4ͦMf'L^-ƌ֟j}gqkKb x4"EN8!tN g ppjgW+ܓ| arۍ:z%|Q̡FheqdgP(L~twh&Q* ?12^:qfQUBV, `3esAoT,#ۮL^G'#:y ޑqwyǻQA*p`l@sE >xO""|LkAB{lSxyoOVk]\:ȣxG9m0$KTL">Хm݂\`me#/l*a1L Q,5Ra-)(ﹷ+} '$C⢵jzkŇu xڏ\㓪L-09}eM5vk?[";twK+H,hh 06J.[tw3a]F_eנ|zVBT[ԣϞ<}Ɉ@,#_MEm߯>/Cv9'Zu@u#gw.WG݅]P>HdpjIX.e jd(! yx[2늞K1a[([fK=4g&xzaSy2Nݝ}ț$kgL/Z]ml &F^su̕O-smkSMTh }`~sѳ6t##k()Q1 8=DkﱥjisA. Z8t PgMb[:xBhC>[ g8 ޞ&;^r|o-eHt[O^[Yjefgr)<\OŪwGE0^kP#б>v,3 P&sG{<4).[ 0Oa ;Pϕ1bȡY!fa'>m.j3n@ƾ &SUIj; 1b |f}E5awhy|eF*KLq b4yoHɬ6i*Iu Q2(dF[4^9]gIo m :ѧe)$aOqׯxԚ #ıY^fϝ}q-fcJF9u]iɡg-E<]iV Bj[W5|aX0ڵ /gɻa܏<0Mξ~Tĉ@NSwC|}^mįyD{SPBJk|Iŀ$ TTCJ:XJ_( aՏn07"I8.3kC~R75y2'D}~:SJQ˴DN[~QҍԠo[( P?ټua5ϼ1O+ 1ۉ{,b0$[e߮>#OWASֽC~fG{vۃ0ޑ#ހZ!(xvS[\iR p  z͟h/NE2ܫ= ^")O(;|}cE\5xg^ݥO;oV_cG]{ZAּrenEraa鏠J{% =r1Q3$`7jnFcȤ7"/^@sOϮ۠C$"ӶU]G$S!؋%m4ic%=n  J7G8Q ROCʔB;djm".Rge텛xoڋCoQ8꠾,h\ gtZ 65H߬^$Qu5önqq$(qmGRD̐CY&Aq}RoBNk"Ly Wȏ>U|n.Gqmf@s-l{mk^Uo) pd *6L (!nUSͭclg Gjdi1R]|c:XZ5&9gj!" sprN)(utS.MelBuA2U[Y?￶q;侀%|jbPl"w3$~CJ4G 4Y*nǮ 2dHl?]mn/psw)23WK>5-' uWqGzXU1nLkjWurj6\ !pIDIy3xFrsھCf{!:eXW5 ;ſ+ܼpX|T{nxRaaޣAV[`~\x9hENʇTK{\ !FU1vyP\ol"fxkB:dHAE#lك[lқ@9[GB3_9.Py䕛15NŠj 跿SE=Yna 5[ٱQ#x+nj?㘕ѫ|@e 3n|"͗S|ɬH1s:'8QM1[R4 \w Z2q'=y>uzcۻrFoahcqZ+}}DuדȬZb (2׍(k#ousQcFίcN!DWm[(Y2{"D GWbBL*8RMKLԁ c R8.iH ΦD9=H:Ǘ]Ԃqr`3PM¢Ćs hUY@snG s<\N w1#>#p`!EƅZ9D6URʨN`kS $>`~Gj;}:/4;U: = b Tn`\(2"٩&.G8s|c9]!zR]anYKCM-\j5|_nde i$pE6z Iw>ԈUR@rGsSDhlqRE FK6Y,smHxSR .f4Ƚ2g MJ~:`.Z}tAW89T?G(2>dbh߮f/@\;ݛޗ[c?L6= @Ήc- 4L=25q@s4Ϩu3zױQط%K-r7$4ZZ<,^`Wvq3^D6Ȗ0H2#%-Io}̉^/0#kicM_ !,}ItX&E|eU-F<ҩq3prdwO(ޣ, wB-|{n#HQ}7z39 . cI3DTNmezTм TЬ u[ČYn O^Ro#{#|`@u/2m$byݹa}Y4&1׉2vd-1G,HuSBF曟(h^[ЈF̚1 kRaf񦆝^2kX`Fz`oei4rڈ+s;ۨH'҂J~$8\M1'z-m$.>+``p&^ja<1@ x|B[7>cloA0O^kՀ6p=] `h<3Yw:_1j`kX]QMbSOŚ0VQHWcA-94ȃ"8V].>yK]O*$:2(x]깄{~*>4e5q`G$~j3]F+>|Uگ5)7=G5_ewʛC,ud˖*ؓ4xj'A  kLAi&~)}7+$k]⇜gơ ٳwż7s)' ]XBH禨R"-_lS&Y?[ճF.3Tsb eںHǽ1-IEnJxk46ajGr$ah۾hS2Nxi9Q)?;ҵ,Iw)aNp{Mڠս3xYծD^Y˕V .b myH"@^dMⱷrT*pm6uAB6d޽>F dBqaj ݪ&NfARiFKfb2Gg O|s !S*XНd#a@^ܭ*%t \ۋ0P㯾͜D.$Op_qGH EEK5@pUSj i}[P`$*6z".y&] hwPLTWlDfǴ<3آ0~~VsU=2‹NzpIZ̻sT<*@nhR'u"nĄc@b30H:*N5=|hOI|Фf&ӯj&p#{(U2Ԡ%e=9sO%;.Ǵ3ӶU:#J]dvU $L#Myhz*K\gRgŸ@D+Z?48rpm(W_VZ!z_)ެfM9{ fI{-48U[1!W zb|8rWTT-d2qOךI/U9X4??Z C2m.dfriwjw;Hw0\ +QSGdiÉ/\|L4\-%6|1PɊ(?Xletˬᦔ;ƹ8x>m.f (f#V>-ҳ  3Pi)kT˨A:ˎY^Dp'(8W'soD+Zg~'p\_"cb#h_ ?w[ 7`754' ;Xt͌ B;hEvw͡ GZpW= ʅO@_Zm KBY"[jא  {:zJJ-<|M9hݍ{76̂\"o:bXM&g9RVj,?hrW5ޝMG>j$F co8IK}CĊFp+T>a˻i/QFa1JdΞ^W$to.2n᧦#N\+!D125x ~ԯӑ[/RѪ`Pb(sZx"dAxˤi!aQx>_i,|{nZl~4RFH"I5wl a'% 績ReA̭غjPSZ(/zg0ˁtf-a=bR~[D?I$.Y#E(ZU,_y4G==AH:F6٢>AG6D uw.9YPFEkeHFtB ظdFqAFe)`7ǐmJȝS 11^:^}+ h)|OVLaESB&Bt\v27>^'SH=Ϟ'k|N <2Sͥbk<]N^uG ;Gg7wEv ՛В_:M}f˫2ԯ 5%?cZ~pQa=D rϰ&@٪1?gdwסgU:0MBҁ]ȦlOPxBB>UST<ųronBWhrM6VeYzr]ǘt@0ƁDx>´'z4R4e+SBUy#9fוPxeܣEoԸ.]Q]*}C/JRy9ȏzGPuB4Y3YUδ{GlU|X/nj#ˣ8,m ]lMKY#0#ZR#"eǪw,Yω.~Xnj@Ҟv:4H2 1J;x)rE80b[KTjuZ/gT+σ*H27m J Vma&=@IuT/A:ag7_??eA4cC{#d;E^k 0UAm#=6h~<>42=Û -*M0Dow G f8+fޟAM'WLc-s*\ !'ߴ"%_mLgBQAm}D0;GePyqz &!bVbr];ʌX],A}/d՜ܨ7Gjnox cV(}$xpaVp=&!}G3O#a|/]0a=tٟ(\XUG;ծ_0z.'2Vf~#X۩kp_/;i5]Ao]fnw90̎MLV$yB8bNetjlZlgj151=EPTf JʟnHC_C!ݺw&27|I| M"O;Пx*NbJhʃ;]$Ӊq_HAlDg TjqRC0,MI`xFPއN*8JI$Ao1ԠF݊QG!h+m5f A,%S?o?r|؄t'~B(p!7cO\ڿ{a=*gRI%zWMXh[}t~#QG1QMrU؏<>=JơE=x+6X䞅 k =siF^^27_V1KvEGXc }T8-ɇ\ل=#n[f2 |P ) `3b;(` '_T}q qX)Ár }vT8}*{`-ϒR,m ox =PBmDR\Ⱥ$4rD1/PAQG l\bh@uBZH%0fG*V&5 Lʲ=7nw@?\s<TaiJPjIa@\v$H)ݚ[LЩOpɚ0Lg*2SU8Wzcfef\9{%J9e[2ngfE DPb)!P*~?Ѻ }b:mxmqAkX@M$r}Xx\HyBS*;\kKOx89@VŖ8V~g2Aay [4VPXßewrۢ<G5U2R!qˆ:C5өLj.N~S\rgG|EPL͖u9/K1ԩtv ,L n=WƳCk"$TmbaPJZƍxKNFJ@{Q"DbSnn_ZE%a2PHR X aU\iE4~k|gm3BQ3u 5/+l%0')bifK؅߻Lī?eDԇϤ}b/iiXm`[U1\\}ZshA_s>hҠ3"C]C- g!Ǝ-Ù2LjujΗ }?=X4\͓Jv`M{+= `eȬKLz iGGSg~;PX\$Ԑ(,ϒ6[7M.݁\m\\dAU5kV3KrtIH|+DybR+^QÐc[jZUyR,k2C&UrK?g(~*W'e{dG M#b"[CaՅ[l6pxH5 ' 1ysdjp SW}T|093͍ Rmuzd8,qtqf(IJY mgQ9T7=KhIJbxy|+T,4=Y&]yw"<;9g:~D0y~Emv$.uPK]Zq; I]$[[ 'vG }Ϋ$er{&a.CFTTR"i阜hFgS*P'!4@NWI g%* !A 鰀:L:byF%QpIEi::p(J['A{Œ(v||cg szz:E9ex ;~k=t{QfβeBx* W`؄ʟvk8(}> qH8U UavjI({3wsSC3u6y  )z'D a@]6&}83p:ވ%G\ɭar5VVGl,@n;{GWxV06[!i1Eo9UԘbqpmS2jB¡UU$ ?!#ԟ6iW +u|IB,Ɍ]Czw`E~t#=j@$,vXCyW`9sE8aٴfn'aYU#R?e"C‘ >SA/bYh[a`cߊoٰЪgVcM5J)j|!=sq.ca:xHP)#IZbf1C1A-]9qI!^7)˗oX\hӹX9@MJ5~K?D2 BEMJݶy䌟fl\Z>)q󭧉+ptIP=;gX9?e +q+ìOW 0="'x;,_Zs')va(АKWb L.4Ϩ3c5>)B(TZmvM|s',m'З(E`E3 }Ɓ/cձݓ}DD(?< XYQlUbx~Y o[BOLxҴB4..3gNbBO;o!nU02}VZd-F3(» ٩!-8WOmLZ&_k;EZ)uXPjRK|`'-d(2v{ F H~ kVk'>O:Y%Oڥs QPQA2<?ځ*tqrS&2Q8s\ = >CAŖ 6?|",l.OG>!BD["GY{@:}+pJR:+>]1$ /CyC;x؛SZ2戚pz97#c -Id%ns8x t&՟\xx#D7bAqj!KAֵ$ÆфSߠ3)ntBК z[ !a=h<'f#b:A378_B[cRwܯ},_?m䃢_8}cRhm j̃(r%;mS)=\ &T4tMҕ@'NcүM|B&]uun &x06PZ1LL_Ucm&ո 2yֲN9& VP"x6++<̱w,ZK(X I?9kT|Bl9>bd0VoiVeKpM9vqš/MTrs~L_yX(3\#E XYc_l|wҼlݝPBUn'fyu%v)nxl^n YŽgs?iM'ݮ#!;7GuN _#sM+SdD3',f')씢7R2sm/phV9t!o5j<o?'#Hx(G̯ZZM,~!N4t|W!qj)HrBL W"+Z9}Q %V=x7f^XLn%eی`u]|+wȲsŝFta߇LH'PO:fbr驤K9Rc;dL20[r!Q[ Ée Lσqbp 3Bp/U{SWn/"yofMd^ g /^CPytpaq',ߔS jYPNӺq60{oCJqGLмz ШC"m0RQ|u~I FeT] hw*(Er8pP 4M_mO{%*.Vt7l}Pnȥ56iߙv5ok &q∿" 0AO|fEݚt,cGΘT^=PCkYA?|.,[i uNã#=}V,.NNDŽi'9.ѥ4 p`O_F@3NJ}HϷĤK|O{1 R!u$ r8 7{\̬YN@<˭82B֔ *0D<,oIN#'9uwdٯvgjWX( ,e,("'U<0ޚ墸:@. 2EHJ$fKZ"(F9.OwWE,+cmn{ |@,E$o !ה/06?ӱx4p~ |<쫑, Xk02raűQ}9n=oF(,nבkp RE-ˈy!]W`ԇ[0KSQsN)W>q[9Ύ.|t׎xSH. O_UrMU!q6N5/WS3Une<AbZgvѽUs+KX ӡ9O/FzQQխMs_H'n얥5xLݶCYS+pGwnVm4wg e~l6`H*:N!~^AלZ@]Ih;ow#Zm6o-f߅dg.'gAowcX[/<=IfP;by8>QI\As/pHE5[k;+'*u+ _m_@>'iF{ cΟb56(GquXݼ/hju:Rm* G`nyaB|bK1#Bqb+ =/A4]W'X1>i9ʙx4f΃L#-pfEGbcwf@0˃^@1C:>ݶ~cAYfڲةo=jv-w]@B87&uχ$d~IFA5,E0tROObt]WiGdrL;U@T-™'SwCe7pZ8KRѻ5„i|+~N/-:-pgd_yY5m0-{۠9&uEQ @x \cS4͐8g4VԔ]Fe7s͑[ wTsC$ m;,Yb(wc((0 cpODpjG쎻yUWW9Y<;6Z#:(AE > Ħd#CCڃ*t]n?ЧR/KMKQcA~ Zms%?Ha>pv.XrXٵ9 *oIظNp kP/yFş?Kv|/V}uc4>,|Ty(% JW}b0묱[ioA]4[ m wW9YΜ<)TfCR@ 3HYK-DOKiB"3_W1mމjF);7u.>;gX.oyE3+"GUf0&ҒjV܆IZ 8_ֻƲߢE:㸄- >K $`XbSB*S!fuWYb&*@/m\]x:UHGf߸4Bj*S n>p|җ/E8%}c V׹"|’GFyɮbQOkC(TZ $<!jMTVF S]aQ/2YQqoT ʃ04WV.@`Z>[?e+_lv:ӆ=U쾾r@ųY~VOg p.n۟k/U:@ޒ %/tVM>4g]xܣS #aGl Leb]hpI/\2Jꆡ0!3r7ͤiq aJRB27[4dhYFs Nvz+@UG)L2rLS>&V,18AD! =ZMeY7엣)9d8^V;!keiXV w3F5x̍Oj TOOaЧ0Ҏ'I3n"R0h)I`\=M ^6{f %h;-}@•>53N ApF5%oi{b",:nNftpʍ5/PTb 9zy{JnB0wZ~jNbc_䜍7ۦk N,~nVsH_#^9kU l>S=^bF)݈#sg3 %R3CZ[bDOwryA[³7G:C<:1hHM[(FT[M`AX _TТϪ(H5S[6-@'| ohQOmBE^`<7ƑP Ux(;,QY•g̎8p\ (z|!0^t~eDnt8 5 TN{kY{2Qfd F#ȼBh67B("IS:`0G1çl(C9s1̔J$$b|g+»;݃H2f 5dahA-KoB ClYVZg#EXxΏD݈BMHf;aI&DR's̓bX]栗|`oO#CjG z2`j|de* /c{|IZU= (7ߡe=シ}8!ٕqY`X r9ҺP K/+X^oh#Q\ˡ;9z5kpv D2S*Q%<&7n@Y5G+Ӄ|]eFd3P7>Z{a|7&1@:Α'BXsOG+4Xij-sSR?SkMx&zO-A6 U]l&jJh&KpzMm){Ŀ4s5@WI wEZY>6K`4Qǘ!BP\t^~B }U saiD l0)8 +"TF; ?vGv\KU?m0ĘEnزx{$ i5wnmqk>z+h ͕VA&-Nmo>@$C 71>%BF0KRg 퍝~3Z4I{BsШw>LT%-?L dB4Mx't4c5DUTr L"CEDdJuQ3̑SGZ_8CP%ؠ_aY.ahDMr4֝Te_-@8md zʜ߯O=dvcf[WzE!@7a(wfw Ml0‰]a}5Ư(-vC+>ov4 𓍚C@X0!&q$),@ՏtP> ɿXw?=6i(vToN1ud4@#vQQ(ԗL$Ȃ@& CfVl}}a5UE(g%a \.3niGtG6huBn~{xs;TXRQ ϒ9fkA2t3Z8K"ZxMh >hE& Av0b4_x Ji)Fכ\ $ҘK];:3R?l#:5kuq4Pa$-I{,;k]ֺNiV*049#nFV+d,h'DZV*[V:f!S,ɬ 4C[̞ekPl\wɘ%?:'˼pGO|LA5 )9m JٔVH~KߏER01R80ZR;c@\SjziqD_a5%d%Jӊl=H _m  r~jMmYNZ*ԘxkbI_.2:?=X_FiYI"dJu_3o<^Tъ'&>Ms!>٫(.;u?Цc6 nOVu8eUS>p=sk ZڭU*6CLᫀ8eEр, <5[-4nOt:M9mVϟVi\wq70K"89PW( {+Kb<@&@tT~GI,ҹq?=k3W=g<1>AV@q'lcsf.sg_K)M~FDOS%(#U]|Ntm/!QxqmUh H%·Ѩts x,r ?%GPޕ{)ꅨy&גD=pA {{"c<&Cf?+i0Σ9MtfxYp 44VΝ%X/ QDf'悆H ?9#pB\b[]MXʐlI`N@ EIYSđ}|',n8ѐE <0 7=hQ!`6KX^i qNykw:ӄ/UG-d 78BPt~Pl><~; 8d5w3[ŘJPQM䞟R;bPO4wD6 &`m'mGLh]9tb-}[9jFv0=iun_UlmP[d\Gby%f&tkdm IFgniƋ\TX.L B?/Ȍ"?W 9aW3w3>침8ȓ@{595B}Ǭ5AὬ)= -ˎC灴]aY?m;ȍ\028p?o*b8k5_(&S.}rAmKvqڍkd!]Ԝ|9Rro;aH1x!cҿ+羴Xj5a5`¦a!~W@E p+Y'$$^+D]475r $įK~K(u*e:|9z 8LF z> ur-8D>xZp+ FO29`6W+"pEJbtӧd/j mg..:Ԋ̣_34zwCϪ,nɰVFn KAV^}}oΟ7ʼnQ,b297ު?M.W٧wfgNX ~IL J;QKcq46bW*+"Ô68"0-LhM>9vn'~,8(_;}z,_<>2\~ *a:  y3$/[(8/!I7s(J)Vq3qu dbE]8h5ϖq]YK 0(ZWyN >lvNY7>S*(.`JMn-ṯT~ N܈=,!O̕F{a^ }U,܋ۛG?),05@򩗨pDD빮.D|K:FYyQ~,GoĊ|j|nV 格~C :@(8)X7DP(anhN\VEl% JFeUl'tt{!"|iدtNX8jcv C 6Pؾ'%# Sp Tձ93[a*(tx\/hQ@9p΍W#4@PGeUfp>CCulPmb|˓Qhʅ (A =i|jͼm8p7(R0/-i'g"]o3rnͫb|OOl3ޜ!kt\c2K5qzα Mo;ΏHf J1+u)ı]4G&{LdΝAA=UO!stPދeW0CoBM.b\m7߿EPPIxBu[ D:VzO|a:L2>%:q z?LǶsۋAOu N,J\P.E~R7pܡK>)V* V4'ֹ%K"cq6C)Oq&" ~DhD Wťi+D, o@OÃ_jNzUVu͟!Gh)X'.(J;6Vʬwif$害ٰYj7M~'{.dXq?vEa[/ݙ) P*_剦-8kJ~I0PNa@`пD'X!jCәnrZ\Fµ̚|.<2Br|0ؑIwfx~%dvQd(œh=i>)Zc%GC iH1 ɴa-k^ĺMtB (ZϱQUʾNrzý)P;K&P!SNND`JZϨJUO)H%Mx+, aalz.T;4f?Q7p&)+v>'2?_[Z2.X6j|_s x3M~% +#{p섋q3HvZUԥ ώ7 (ZRfƶl,Ln_ wG2@?A-:h;ZmL r-a%iAc2#w{Ғ@B4kI/lx,hL2^~=h!f}mf(ؕzKl3X իh@Ze@cUc|&6";}Ȼ/`Do 6Lw:T48c#ڂes鋭*To%: bC,Ҩ-^b 3'Ttyȋ;p3`rw~͞8B*2bC@DKuTxU@VzzҫÂst%KdX^oT18UI9w>}@#O8QCAA-IیFQoF <{HUy$Dﲼ-/}48Y@|!>F<8X_,T{O'ᰖ$1jg>vN?Z=% ڪ&&&`$k& W1V4Orfnd+UG5i)pYm3=6q] xM8InTPL>XʒPOe#vףWOYqSB&K :*j9'yk`*L:VĹ#L\hkLl;ϙf??P'ľY'L@sm(u5nR/`鐼z@Qi5>DztNW/ 6RxKQ { qr :'CU'mxWB'm=ۥsQK`FL~7_[h6/Ab-Խ9;W&į{ cMNoU+7dlGW<N Ap +2!yqoͬbaxcaScZ΢%:ٳwH+!4 o_v]x|4{JACE '$ƼdPQAͲp,V`(DAeO[ TyePe~ P'/-'T2H|kPrjXO$e2ʃ2Q9 fa@V_Dba/[,D]ög ʗA,v ) t ;#^ĒKuWg: 疗t+7X<\Ѷ['3-L .+ۭ^6IB\#Fmͅ%bK`T=w~]41XUCG(FA[JɏAnnfLWWJm}`3 )0L`EUy{?ڄ[KPHPWWyil:n>=å b"bۓX`zΟ' V=> 8?8K8 5BD}OJ|EtǗ D6m>50UQ x\ƹbہľ&ỶԼM b?\Ű9w֦.<1uߢ +5u]5=s2T.٬V(^o;LM +ʺv_B넪#e.mT΀fc=*ptdrLQ1*Or"n;kY/-*E"tO;i;O8W-XBȥ/&>V3}gbUk.]LvdClK{Cɾ@ra(HQj5 ֣11 (YI%H0yP8l;=yoo)@f.!rI#<$@3.3iVkB8|>2JEDNH 3m8,2c-h']y dLHv"ct-gF0T+Uϒ~s.joOЧaΔj̻`EC@鯚iSdڒ Ϸm<Qk6E!tKM?}.ؒ]X}ܥX߻n%x&܃ٗu/#iٙfxG@BXRfΥ2];S} LYF4JW֯9|,9CpIhZXP`Ud-LًFRUG^^5esG2DA5dBizKΕv<&!ɑ5wa]v*h Dh؞69|yߔy$](!@og3x XL ")T res5ȽQۋfaLr {KтxȨ's)Ipv ::4eI Lˆ_bh1zAçz8߭Qə"jMz ITc< [=UZ"W4v" (2im)t;ҰTdFeåGݑu(@ڨ)bJAbQ~ff wc5Hv&'C/(czbg'휤`ͧ luܦ؜83F%aW+433 <VB6@*ITiRaBLUNjںFSEIy{7vgBbJX&'L ˲"!G`;U\#ϸ&E"Z Ns?D.Wa5r-̭$Sm,k9%(: \L AW9O!5ݫq>’rfyMϙpi1T$KK9r -@PX}|y;0#_mK4-G*4|n%f}\:Cx\T` d-%4fF-k/Vg½7ElWc@mՅrE~V^>d1F-#9bUͼ:C̄w'<'SGœ2d]ǭ ^Lm6.l5A} W mN66T s S#}: /YKQɔ V JԤWK(7 ۘF]\ΌHDHfLd_R7 8w!c>sAw^>O7,Y-qh¢SZAl_o󂝕콇Pd9 XYی)raMs/д^ k2F+;G,u~'|Hğ?T g~R"Fn󓷑o1p:hWʌoya; v '* jYGeZttp[I[':ΰP9)43#hBW.Bb-ʲj~M-[- 0Fz NMʺifCڶDKd1e<.m lb=[4 0;Y=h;WX?iqbk=Wq+-n~xN;*xvubxnvn eLDZ̝'<8tvZ8W `h["(,zJid5}";~T4#ô6RĆՆ*kHն)>fϭ/ o5Loޥk Z#:o  :>L#/$H~L*}],݅k9X|7)HB7ȡp ֝4b|NlB5#-CmPȑ_o0͓`GtހLRm}8;Sqx`KJ3_7 |Kua7gZŜZ aZE_{9,3 jZȗ>|f\Ǎ]LO/*cJ8˻= RhS"d+ :(`q!5Efr'O5lah曁zzdozF.#ar(eIկY08-X@=?nG 7$%Ӣ]aPދ+V]46R)d pc$ic* ,AW֥S@qCyM~P |)eZtKJ3fV^w܉'Vpy3%="[`,'K'U*y xv/Hl݆ze5h4wRʅU*LG9 낙P7ڄdcծq fCzܔIrV\o>Z{Eb`|y}}ZY8AxqkDFu H<;1H$-rWʹ= HӞNK"5ls ߿ VRZ18\L w6uI?B~6J[9,tܬ 9))SKGeHI5q3\ ; Rn-Xy P-݁ o`>OQGxARbHi7UulYA]&mJ{'c{&8m+<&j!*֨ߌeŽG\E-U\Tx'OTo?H̹ SQPʅr2bV#"q//K|}}d;9F_K} 79B/#9Vyg(uM\A@0o`0KYƬ/=G*Gw9ӫЖ `,dFArvẠ:D4QM?p!k!PLXC(|pv"QMX\=on{䀡w )@3ix7N=M ma`I4 *4 t &NGgFnAIBrv|i]jj#s#|p!Xws Po tpߔ}ga|]HJ+!!6 qGw6_+_Hb ؆7FN/{_z=#J'P k]>r.\ l؍>}PwOώ_mOB/yLCnݳrga50wD>a=:~V=-<֒v5*02 {`"zY:{AfhjufM=+'nY/wʋdZb@[+'Om0baP_D;SZ Y<(Ydv z#x|OKj#V!uz$K"·D)Z )oSmJcVAla8;2BbG)䢶z tBJ Pqb!9rTV4 oК8!5ˠt~n9"ʽW_޳nHGYa"bH}d ,02x04^H?Jӥ%s$Zx ᧺~3:YUaO4--;o_N^J_ӉFOJ:b^W F;͙%Dh2eC/)jlrV,c TRA=*氁Q*eW@%= :v `_o3HgX]lߞ`ڭǬ oOGҿxϬ"<->i۴TcA1 L q1^[O1Ը Q~F;K;EcP3"@o OvVXv:T(\SWaDfRr]jۛ+c+:2iॏdϼ@mq~ Iq <㥖:4DGsJ2-bӺf_Y|ho<Ҭ_žL.0N}@{Qq)} #*wЁ GM  '2t rNefVw'':6ZcGV,UHZ#j6曷=(&SSn!0̟?nnkxB…2Q[:GC @y:և@`;\tQ/ܳKכM3̞s:̅ :LjfTmAB~,6Jԇea;P`g5(_ Zj*9Z*HF$D/aM&ލ 3g]P< ie\b#7dpK! 73RUp5Οn.AD}B{Rx^!06 bv& Oe]nWDMnxXK yLIyNRy;SGܬSz'h 7ܯY>s$@V:ЭTTTڀY2R^Pa3ԃ|HW]19}^',z_rKpKPEĢV3(\92lu k݅K}/E 21h)&mŪvҎ=x(R,vFsoҽ"<,NmœWSUA1H^ {d~Znvn\ /gko~ k ]4dFw_d$4SE?ї:3v]sn3$2QnFn_5k[kHqX7,Jw+u1ND̘Pa+Tt[J t,"70?V%U$ dMN ~ɧVMjgBXMPC3$KMKbHl7K]F:~@ᰝQsGz˼; 8/ҤFd+ThőY|(j.&EN [$B:k> >hK{sGh,pSf6ni;߿$`+0Cyܚ%i+ݙGdHHJQpQXzyJGŁunL9ALb 5!T,ٽIa`] 2pfLlOοB~iBl-+ĔK_NF~ ݏ@F L{q!TGrͬEͣJO@l7gq Zb1s2 ΀!,нR3EdɄe\h-̔ +l).QQ93Quń]>ga)=14UQ)aEnHtO3A9\g'@L^ Yw|F }x 8LyW>cET %BTc;*uWWG;H .p-6Ӣr=Bk 0u Uv j &d_MbLDT<ϻX+aАG0r>1lm$ 1yt65{JD\亗Ne~q10k.-QiBo zc&:D 龺ŸV; /:~crOg" "bPq$luE{TyGE],Zx*Oo6lC]'c'0ӡ 3&J%߇sXO oZ^MAG qPTQKbqt"7^p>J>VǮ&#F!τ/'lĦG>LDeKVbaW<0b\羃 ?<^(/]RPFi64/12)՗%}Vx+>t- 57R=e#Q9\{A,uGj,5Oɱ:~u,TV.u%Ʒ@XΒU$Y}W[< |,HϒsDcb 3;SYTՃbh&8I O]K+vKO{ř{L ܵ=jmѢ9"x)~b\"nHг梀nh!9YokyC.ߎ49H A5eB[~%{UB\궻nσAP,6^m6!A8C<'0LsVH?Ëe_3;v]oUׂ?pj!qD+4De6oR+NO^ԋ8$D? +wqq^$Lf7gRZlC`Zw>" 0C) qj%zgo` W‡(Llp[n? <2$\C6 i꫆Oi21)CKI/[m*N0N7Dr~?aC0U@Saޡ[A9cm8LkخOijC㧜{8eI,U&y ZyՋ;s7 T(MjXRj㿴u򏮖 CV5hhx#1Ft$bg{ <RO ͕^QG; I0EmWv<\#N^jȾDIOI? T]n%jq:ξHc~ZKH=u€ߙPOȵ}vumzwGAE6Iv֧qvt!؉X:Ƀ&V`w3 y,9TRem;ُE֎=zBK#NUQsCaMK7 DbH5.Aa!Y_yqza5C H~y\)#UQxjxGtz\ B;[dA#K=@r%Dͫ:%L}o oOv FVY [\{"vHfi|R~5ڛUZE?3I!`!JS:L{ V0cOe(FB[ lTMKݣ;$|qXct$e'Ej[B":/`*rddv+k B Gp؆vɁӳ2 WzREaA)dJ!и\,\eMXxګRsp>~;zv|Q.7lS7sڙ5DZOwscIg<'k K`]-30=+u#x7==Q:HW'$_9S\ý뫗 |?ޭyLJY\+njS:S&12d.ϔi8,k3Ud`!)ad,vG7G[teWev ER#QIy'+A[c'Hӟ"h86G ?k\?\SWcYp*s d$("D@^Jc3#͇=3:Wr pFKh YOP=D!{Dh{q*^>!]j[U6/D,RM"a$ iTD1=BڏrfG \䦪[|yd7E!SLLvE*~Rr&o\3`]Jb;"Qh3}? >? E oX* N(CÅCr1bƷP|(\WYl Hu8!Ƭ5[\yswY^ `B"{hE!>2Bu)A>tFs@tO܃@3/ez[+-gkG0  P ³J\F2ELګs"` ޳ ?v/W^*D˼\~YMUIKqJӔ #L% Hڼ 1+(Ap04{9[e;e+$稬GsMKsNv!,߭ ˙_i9ࡏyǽ:aM3gds;a2 ~]Ռ64aCZLFY㔱znTXWNao'4Fs@EkVpg^%J׏ӽagR"d@/f-+M2rUm)pTWS[9+8=bAB{I4jZ)rl#E᫬ `<>zS& gIok|wt%P&iّ`iS5?bJ,4:(,ʣm;G_ AMگKFFc.~&b-EvpɥnV%VB8?o=":U" ,/$A"Q@{U},!!HN{.[;0$1b(3JnP芍f- [!ғ[ (zR/ās]J*sFMBEbO+`["knDҖl-8_ĝq@י{7)6- G)0c(,Q#SdtQK1-@P<, f1DC{,f1y)PXgqb7Q\uI/g]-N]M e5K:, Wz5E lwJR8dЉ %NZw){܎Z%L*SÊSM5YK|y܁ʪY01A3yo#yY !eycuCK%/ǬN[f~EMS ޓ#1>$] Ãgfd[F= IVկ']3Kzj,xv,}tmnk+$^ QMyggSд.l]3Ch*EǷu D4?f(PA.Фbmr)ebN0W)!Ĩ?gc/ {qչ.D\?`ׅ'^H2tVw`9.YAĥ :I?fsoB]*| Q9jLB柯I[C~تġªݔ)-A-SOa,WwbPX70ڵ&u"v>1Ga/,`(u'RPP[ )Vؼ@tM}bյ3Es?9:GsFhX TcINi 5WkPt#'elu]!4=HBX^}W(,D>yIom k0|Kjo3A`V3s/ט8"A|,6E/YEKф-/+KS$l®8 C!5guLZ&u=SWo?S=&c:Ã4,?;r#5 k*>K{' UKi6JqUdC:%`)9ȳ9n\%LFQ=-m%QDsR[p  %Ksh9:/|o/\Qñ2iF} (̤4C9@.UeZ~Z!waFIltK5pnx^1wzZL5ؽBX ]wB`CNitC sܱwxMG(`ËԦc0\Zv<ٙ[N]qHqU+ WfX+37L INKJ0m;;h`Me{e DL ߓIU(a8H|:UZ/}}rd=Ñ4_,*ytMt s HץׯT}baFv:(eΉgoK,D<c":tON4H2S^"ء9Vjܸmu;"aX pppF(ۘڦi3rZ|\Xu[,W(BOdQeVeoksi]4ۛ.GT?fhdNa\%;Wi|\q=d{ [M$j Dsr]; qҼirVNMZ(_4PL}ɓ)>Nm: lb\T QaGo4-]>pQU b>bGs$.|M(dOx:6 oV^ } kޔ -;gb`#5*uZD'бFM\5u!5+Oofb ِTH$$`=P|:D5#&F# 41u,6alsHj9\T6_Oikphpg3cRF%}{?iN8gSpez2 _3S(%YA!*rL)tݫxz9̜':[Ti{?t؁R,(Nlh4+:،ԉLIC#vBB"1*?QI;jȧh(`箔kXCH~6cl>L!%Kn^k p>}[W3/Ws^i|cL:+Ҍ axown[ܡZ>'wb]}\u}-E.s鸣]|ǯ[UV*>VޓX7&37}EgH,fmXu<44MLdav@hDB_ =6E[LGރc p<5:Cit3p;M%ދۻ-׫mP,ra\_9жs"sag |Ot!1˯/^1fMQꭗ8 /AMDaJظg&*Xb^m.^k&`tvpN x7(13M9eNϰ5 ܒM[j6pvP` 市II-'ư2 X3iCuj i/3P N.Np]ΟYq+wؔ]qG#s˸nK%C"#!?IŮUT1%L'(uf/A Ǝ@֢jb$T oMG&u /v}5<gЎ r'4`^VxX[cV#FĝCGcn| J3)AlÔمPyfb2x49+icҷ Ŝ( [\/e\ kG&899+q ~"$8J9;tEgr*'Ήd}Esn$Sl6/"ҌZT<=u%u#.t{A_̌(WUY@lT܍6=X޼;+f)iҾ@FCf:.9BE.mkdT y8[6a,˔ U$tOyO~okK<|2Հ~g xR Byc-GU{}j7}V[8:ɹ3 A;1Xþ3UzYp-ӗ68V.ַIqDvcV%Gxu{}W]2cӎ=o8$]\^w- 'WdBfI+&i NvGP>F[R#r0(1MTkjD,Qf,e8;osFiPS-8)t,/OmJ9 ܡ09}I5]'Jf1EMp?! XU݆zagJFiWDHR/q)X0QOeTZi"Q;9d=^37ޭ4ҒDqMKSE[*|L|R/t3uNR vyCeiiPt~IV6o|"f !e| nP" 0^ѥs0P+Ch%_/z8~hXF}\ذѶ ?լ0)Yca̳Cvr"k'r!??̈́㇗5҉YB/YFB e+#anz"Sk";gm/)5Ajw`u0Ac'T(B]=v*sAov}g]&Hi=Zj)݁6n;D.y|dr+iPC{W,B6̜ڠJڃz|A H序I{EJ] q2 kK)^T`)t:Ԥ[" f5b Ps D$NXBMQ$Uo(X Wx)Vb2դ=d5|tfSlx24PмBF81-F^:UPiAsy΍ÎqN{j%?]k]S\(,ڧcs9? V6<[!DcM(=\bHXLwY5;Pߺ*:s%wzh%͟*$qz5>nn]iieH҄Ab 4}L␧fIG4)>xe5$A(zpJ'6't8F 9:/]Vwu5|uܶ " c>XjȨh.xQDy \~01.t25bnthN}ꉳ D ж678(0bqs4Z%Ub9`ZϐrDsT. o=0Q v6, Zq/$8NdW;jrl]: UJOC+I]3ql+3Cqf}Bk?EIQ-.  {yCwW;?fQs]w18=@[Fm**24QfVE[鐴`;i+iG_ޡc/[TKOv޶D#zEoЃQ̀EW*_鲛H^쒕kn0q){bO K:SmnSK6kҭy*BF ˲[1@Xg*.9ZsuQe Jlh`Qn\ʀ$bw~I_/Yy+t%%"X]҂2ַ\.&|UQ'yH?BߪU @LO8QOȁ֐7I4ds)l_HR䇾=JRYCxR`FK2Cٝwb@:#3}Qf}&hs=qE6ذ1|܏#gvMöV6[߅w.M%YbSF/8.-h# ꑒ 3jB01^5 {E+D*~pӑ&r&?ڧxɨǍ㩜7W_ vաeޯ]1t>E>,?@&8gt Sw VON*#9ӀUw:*QaJ܂dO4:)O-`ULiDAc7T0.Xij6h޶?^G[5Ev Mb90YbyA[ 9\SSNTwޯUl.J҇lfExIcfC37vw}=EIT!rLN6tj7}u:YwKK[ 2BeK~]*_3|`1gy7ˋ~< ɚSrA {()^hg`*. 0)rڢs濵ajP9;Q4^۳5|? 8&P=X?,EG*>80?< *d^ꒃSdO~(qdB+RewI㠗hVAV\u/_df"> .a;!ǓQUupgEWlu^FQa8[3mk!OSW6UN-(wKЊz?N3GΤD"' /˅C*EtNf!5qsS^ Z;b* 3r^KUBt[5o9}ٽu荈{b[2+V+T agC m w.Nrims<|Dr:d5b$TxY_N-G /&WҪ!BE9fX ηm^T7{tR2C5njǤg޹ShI0>(9BA/[}Oĕ}e6i K;7)ybk Akb1Ébo8җe~#] S; ֿ%pQϙ#o;KL}"do?Aj5.)n]4ɤmQYw7Xb8M_+ x0I4Y5ю2!+\,_8ځ 4`(-`/Zi7+ ~n*2dXq1ur+Kya7ԾMW|2ɇ;AGjɾb"eo ۝TN)!pvb"NѺ&&?ɿ);edW 5[6567xC,&VO4nxSG(᮱!|Q!Fr|=p<ںӒOiҥ ж#q|G| ]·9L`swpce|9vU);޼p6qY =IbUT (Nbe2(;dY=l1݌_la^7#HΊvI,w7b`q rϷxrVEE/.bƋ%F־< Nl_G~D)+ ^]ޱ͚`l-' 䇙1t"ښt4$cJ^^™9+\굷Q V>634TP;tbЯtmXva'@clF<"r8t7\HKHњx oT1z|f0v[/OĬSهh@9ZDO׃3v Nڙ <9fӐy\`5t;%4g ] y[xk^MƩ!hP ϛJ,nk[BI"֯{A\c?*nyQZW-ݢNsH`{g h0@B uP"ftH@'J &@չHA\O@>vl&suӼc-O{B|r?nyLhsIdoQ[hzʶs\ⵁ㏱mGLrJ 4l+Z\++pOBL5<]@WIgrB*\ޠx,F~0![O^_LU~dcitj[Dj];Nfϱ ';,_T`͟s"ETtj_s zfJ %"24Vr6|›;#DNA q ; n7rWY^Udl:0"i(i/S>L`#$0Tl҃'UR ع_Yk"}^;z͙Zܙrn ݅ƣ|XWenH;RC?ܽtz5Xv -}R%|(#e7V@7w\/:$#-_O' vUu nGyQC1=N|QE!H7woaڸFB})bVDY# O #U_aZ$LhV *@'4ǒ>}:sMy^N1jG$\;YĎZGڮJL ;#C4Dߞdߍ|}0o$A*n2Xn{0OMF%G e̬JW2߀HjrIQ974jH'5`LܴmVA4: OIO-,l"' G G TJ{Dwx㢷 Xgz ai)*}1d˔܏i989ĒpB +n85S<J^ tEJf> T<}3Y (&-3gx+m@ܠ*Q<bi1Gl4me*#9L:CÜBmFx7*[ 6u ~uőwm*Io}o.ku#fO.r|>,*G@,9?bEGI8fY Ĭf m2Duuӂn8pPFZ`*y 9e`˳g1c;Hӈg-9 q5 ȱ/$k 0HC*[,/9{vpi _(hIQ&sM{Tܻ ;DK#Co [EV⫛\75}KK% c+;LZEnºZe21 _8/8vc*ёNmYjIkC穕yai4`.24=ZE2 n9 3[8lpR̟=7- Qfa?Kv5u9;vɋr?g(|׸\E݌*l9 ƏcGO"nĤ}+4O?ʍ%7[aw#[\syP؛*6M[ЋMGH CytLWdriR!ò0'P"2RFE7b# 46qb5wMH'jq;`ap"(AfrXއ1IET3E}3HƄDn],!/4w|&Qt6Yvl%@ pBVQVc@ BrPĴwI읔VTa}kUif֙}wM猱9y ;_u~BeF$Gbo!30#SA춑 &$x NK³tv ZӣUgOݺWihH Ɯ!ՈN t.|*.cG8!s4~/'wAO}' Z~^jPVÓJ9QWQϔ&? A[+߆NR(^Q 0#9XfS-9{$0 ՝]ֱ-w@J)2LIeÿI#7/'k3aܽ%h 'M#fW맡ۦ 1 qvz &RX2 X^XLH C_ X~3zܪAw)Z/w-eQ;Ak+8釸S<:MSm?H@֢4hq m5s.(ރp'&jIn7$d[%rv&G,Pu+NFH9mբ)b}7VpJI9k.^}#9%*E z=| C3]S ~YI'tݙKk%eDB];54 *UlpHO]t@kiT[ _/8yx$}qd*Tep!}[xl6<-ߜD7jD `H2k) , xm9VXG|Rz+ͅN/SR wі+;:haz$Q/˪L'_L)ly_2qiG`:}xMh'Z <:*TJ)OХQXC>xbEQ *xÎ%. nrb\ѽSk:Ā3K,KXn#J0_݁ Ҫ 9\aW3fYٌXV: p轻ZHJ}2H#R=II#7! gti"iLQՐږ69}>'Ƹ)lz,ӊ!fC1*]y[PEp㰏)ةFeڝNIIf*FhU.2 W`p}˫n׽ ,g۸+oA y9_!MlY7reT~7-f'(n#&jǡD%ٗ5c! ñ1h ;de7h~lLϚƯ@Á$t654|v5Abz!-%Q*My ~ 5nK.ĘOfR?)hHğz\_7nT#$Ih3̺#h/+՘jy\3#XH 8>[۽tlسn$Oq<XNG׮t8Ee7gFB~^iV̱:oБ(X T#؄_$'hG|!L%9[춈_ .qnmD4wK!ZuO<uY0d-R3W|կI!hwQ}R;Ȯw9geG6lv w2ܢ+ hU=S1u)PdȼV47#@PN C# 7^4s:Q~^4l5Z >D D"mhد{3$vၧ㾽:8iCU `;ƐBw;A8&X(- gDꚦ@hWı$ cs$i%Q{Yea ˜0\Dj57E}?բ*,)r Se1~]xaژ$;` pIw-v 1--~-)xDO)g"jl z=34_eOϊS,0[?WY$o‰ԄEҶޗVݷrlLVj wVbڃo&$ԡ묛 ! ՚ L- sX^.23ޢłdJS ]$1młr%ÄB}. Q" {B-B)v2DXs[iQWDyۻoĝYBK, yI+iQ Ӎߨ/-r|PGa0Ȅ@Uۮtw}spV)ܤ~*v"?9xb[ХNm@$4q;ui =b w8q itQPݚC/DLÜ9I${7˳,gXDVw73޵o!rUǵ %YWS52=Dβqp}!+/楖n`'mf6Kֱ识3|mrH+58_تtXɕ0Y31l]v@xNj`~ gq,Wf&fA TZMYI=OQJk !Ľwn{0̹3\ہ@7w.oi;h D2$-[%8|0b_]ӆvK xe-3kˮ'jO{4r4L=7?qYb}Q4JUwR( RqX)[xⅰ9Onpwx_:SC@~ݿ# ˳%)]^cnykxL@\ 'f9~@z{+^-u =W94قǃ 5/"Pk{0 E+@=W{V|&Kāv@t#=\*WR=9FpICׂWeDR:yOaBdјįk5wuWn?%#23ؒ+qF´$DzHn4τ eyo:!Èd]%6xv/Sit—3O9iWf̙GZmd!,1`ۗj@Y}&]:!)t}tp\yyCbnݶN1I~})UO@C֩}EG[6κT9(6TCs2lpLu`eT1ȵ!Tc|:El3s&jdY#i7ϏI\w%j(K-P$Fh[D4H=nzF305|)m̪+H>өnPG5zqY\me4j*7ZA (P" tԌMeDA9.3bW.(כ^Z-Mb_xA@m鼰ц8kn K@2& [?E̓)cu6KR֞>lV!6͹6\!3+d i8/QgESTFx &9[x#^Tr&Hu$\+A}jZ, vxî+p_uׯ#͢v"ڥ:肌=;#|'jb'6"eЌ>82hc{]+JXǟIn;Md-F?ROۮ,/[q,ͤl}Le?Ts!$]F¿dPyﯩԽ*Nh_Dy%)a7R\>0EBiɑ}Dk|7'D|ڨk}-dJPݽ'Ԕ#(aeE_ˑG3"P]" IEʅ;i7i!oz(=4ztzНopN6YƶRj^Gz ZʄC%]p/v1IB2%' 4v~7":⏇瘐 g]ǘ%Qߑg;ŴgK)48e=.,Ef].DM/ fnS6P~3=W/=ȱ]5tU?.oJ^H֋XN?ݪE3QVL2(~l|<)S9C{bifJ-,.(sH^X  k 2շ+u>1Ca|y'CW]Ȍ>-yr[sR6FkBbۈ)7EyAީy 7^`xͯ;+;9SD]Il~ aێNR(ah}XV9|Um P?3|ך#n` Oi]Ha QxG|`Qe-q>>~on+\q9-!J HnʥzTMoF<]BuL9LӦիyv9k^Q(#G>O貤3sY `fJ^Zn@?^؅'fM?*G$sd`@)v 8Cx#09T"3eCL%#L=[nof,կnSAfL7bY_-M3gyVO{>-Ɉ.̰ ɚf(-P^0m[8K!s$5\!6!dXUdy}52UdSh/BF H`>t9c ǝ]]d.Xpzk;,%_HQЮ;:N]Oq iUWS^8"Oz$_pòO&ʇP;3] E3R=kN@6U}6Q}&{K;e4S *Kو/ҿ94`6kbکCs: ̸9<~O B:!*pAMx -('zJC^9nH);&#b}a9iܤ.:6gqqTOmbIwh&yǪ@ ' qxB Ve$ <9(7YPv_2|D=ue6쌗l' :&OZ AhkbUs#ͻ3>INJ{^]Wi=Rkn%M!h0ֲ6^[!A_^˜]ӍWɶMPQnH`hK-X'ӱ,j L߰t w "! ۨM៕S8XiTLX^t'TZSaDQ$%lmEq2s(Jua N:N<]OIw sQI`UFc `)sfң.$NDap9Z"{Hf.3Z5,zax%3Uhp&YA*fð:A^=2h؁N8G?(y?5설sZir7HQiJ6;& DB ˓뛈1!6#xidCu7Iv,}%lb#KhIR%4"l{p|} #X0F=A57_4Zdʲ2` 9ΌhІOɑwgZsC\C9lkiDNV0f͜Di?+OI{YJ-G&νw:dj]湐6vܖ}/2 =]񨪑x yV-$Ar*k!NI_x$˝TK4PWZ{ߓ Z}EOO|}e&ESʄYP8sSJϤf b3[qbayԝhr/A(k\> PMwr2Ǜjv kٷc1> 8F|[?+qt?(u<f" I^(  4=AKPp|m~E`7#mR` * }zAPPѨJ9% ]`96B),a &iB@ 1W_]N }WUuX,rErQ # .+ogSw C+'*"e_Q"xk[[(+mgE6jaZi_>/g^N15p^i^ F T;{r wzDrd.d%{_dCQk0j/|Q<6A3Oh%˪j8 {nBa;`ÖAdƭرHe7L?`E4UzJ\&f y:T4Z҆WS߶@Ls$!tVSl9 2ݗӄon07t ,k?Ƌx[Xڔ^矶t{'Udx( @ZL7kLLn1tݘ8<";(;$!?Lbex~`Q9ueOdoU,_w~]VMyhHԟYނ=+s{V"KM9+_-o"ͨf*9}iDE:%]^ɱ {Yqv. q~o.$@,6 s D%{K>nҒU꯲i\<>P"D% %9®-N<\;>}cDW%iMƊ-iqͷ2 p!E+wBa5Ͽ{ se%gP_K]Hv$}p첷KUD/ si"܃pDT&VI-x vK;&rQ"Jk 顷/1t{RBy!ySfsp c73Z=jv|uNx_="O`џi7s{$Lm}oT ۤǵ0sj:dHԿO~BYcĪws=BJf2PTZD P\mɩ3/??D=-[ǘM9WQWB) |V"u㷨h*M?Al[a3nNɕ5łWxN [$q٢4!+1jX -xi5(b8s89xqۻ:-` F|]yT\{n r[ .Z b˴d)1uCofBIKZ!%T"fB܅4^ U,v[Jߛq1_CS}phM3/,IAyvgL|]i߬uyqr`4ܚ 3<{ӮAax/iaRt$}`\@/WZ_I` 7~NJPrn P"莩;kWZ0q ^\X)S47;o% J/@À0 ~/,O%}̮C.}GGHp IX hʘg::|ݴxw?6B7&]FtqpGF%'hO mb_ `%ސJ1b|OD=E-LPWMʑ!tS3P՝9++D~yWIdE=`*5RydM~3 JmG@Wʟdk x<]VcAˡ\'2q_4r Jg/9ƟHIBGoCp1~3i9}X{5'4ś`,j+(: Y&g,۱8>V/`7I|ZN>L*d%5W|:ꀛ-+zyDv Z=OuvmX<0l"`f}P\_ǠoC1XX `vou', M{l st^W@|05,_.ũĊHځcdOW=?8_#,hlQ)Dv)[3xYU#MJ.7GX^^jjUG=[Q`i5$(Z&k4&pII"G %w+ ü^(k&5ŏ`|#fݵ'4,s;o}NO$rssOyC"B^>VKryXwJ^o9l:1gI)P@)gIJt[jH5&+ܸɔN54y8Ws@ n9fnDGl =fRA>6pvARG T_JiJ`D\x `8Q!RY辥q"\rMG'/iݠx\S)R3w.[\ 0V(ƅ%Ͷ.׊)|*Uρރ]+{YZϤ5o zJhnW*˫0.dp+fUh0yꯙ/E$Y!y[={@\MZ;:-SWV/WqKF 냂q{:Ӏ'S }ĹF{8Rl-k7]"  $T=F ́R+BT*5zͲǙirfo˴lIfRjד4`3kK gՋ̫(:=PW-Ò~GmPyn*у }ב6ζb*8n /mi'"6ph x^e*":]6bN5/0/ m:RZ,잋EA) Ez;,̍4| GIBFv%/55O*|ݍT z3'|hf_dJuh|ؾ|.?DT;#=C)vt[4dӶv!S4 ڦa!{$HT DisoFaԄ 4ksE(YREX$5Vld>W;q>{{d8"78s4sx/j.CsK^+OmgtI3ƞ*Òi4npA]5f )5܀4ǒ"A0qpW6͵62WDHԈ =Jm%{v^9]cHL5 )ˋFK]~21tv=L^d##la.)cs5oR"3M+(>ax81{T2e{'O$%ÆA'`=#,Җ$rh%tWn ;XXd\9>^Ug:ξ: .$]ևّ {%[Au~b|c}/%soSΨ&ʍ%r.4d I-^?=V}{~ΗnU{pOkZSMw1MA;D&B~\(OQUJ4Q{ElX_4z|oҷ&&;lSU3~q dy_v}jCvm ͒9Ci$4ósD˻q Y(\V} ?]-7/x~tJSCftccWYw]tg'G#ZW: 3Q~kDL8SMJjh/:?F׍ft2c[Y쇭'<u+'CP܏FÄrEMyU$jE?Q\-bbpz(!!3siv-uC$^=6,'pm* =ÝFI\xqPDz\hV׬48Jǭ)n;D(*/N = dJ!gٓC*]Ky(;'WxڱKffvaoh],C>R;-ZŽ+ˠ?LXKO|`&Mf%EQ|j;TSY#.KJՕH?NQT4'k盬'2ąHs<$ƵR= {1d̂l\ro!Bɑߐj? ෣?&R_1Ppp̃Goj 8]m^P~8kDbw,ƼE Vo{E?qo + dQ294AtN3,<2dMMµI^m6=xA׊<qT+FY2%iƮ`'|Z.b\=F^3]Ǵij1S|Ak̶#C|4y1BAW2 R0ax8F ğN!ʍA [?ŭdW1*+GcɶЙ˳~Zm)= _լLߝe )[p)AZ*rO)p0$\OPcG;ZlQE7Y*4A9,S\7OP2\M.Bxƒ魦&l0b/ f$, C 3 WZ5"д$Mє)=<Ȧ'~q}.8޹GV2_;7"]iGL>T])R|Etu t8GoJ۲ 'e4|7bCFpQ2 Pzo*͟!o10P,RGJW[Ug΀x^(Jh(¤HSJCj6W,DZUm  zxu 1ž@}g -=s`[%qO;iRh6&%pM$s- v3k\xuP]ʎUR=}ػs=0FHpRu%V'RD;)@3m!㗐ISb=YұvWj6~1%'{#fa=k,mEP+`&']Q#&ԏE|GCa_"TNrcfuEDCF/e<+$ ggkd+ɗÈ PBWI+VHzOha&W8ḽx$EAJ +\}^\$ĸS'u,5F54I@6Eq &ϙȗĊQ0\ݞikS,fu_GJ%mMunݕPX_ #5|@hww^N8(=3*N,Sb y:Ĥ)#X[*ʃxG+ɷ~Sܔ=P}#V'8Web]$ϱȖ J3;@;"E=pJ1G?+|P"~u<%ӭK2x_C Ow&N3N [Ta6ƧQHl! 5 :rk"m8'jT)a٣5#ȅRC,yC@>SAx+hnLqG;v9qUXCĔGF=l8iZvWɮ/@Mg;#_64.0X{d}Ӟʎ"TO;v2kB"h`RaqUiK<4zYʏja37u_@"Z8 >R֐>NjX¿% U"MM\fԭ)d  ajJkZ:P _~MNbmDfzPw7jZ/6ڱ7wIx\J f2&[j.gT"<_ЁBGadb&,C-xUK Z/څJXt|$@ ?dk\~޺| A+3Y .+Y#-}̰9xS!?tQ#ڔ@+)nQPM%?9i}ȟp= (S4̆ė \iFnI^%B]$P ŋ\HLs&q<#2 yK ͖H ~#s|Ǯ ;zuGc7c[lK8=T!C;WKA_wvɀL?: տt^ o#GuC +JeOxĈ̱:E^5"@QAoO 5͊5c#)usHù%xW$Q]>+3 S |7/U7QQ5CxPXqUVC"Jƙx.RMZFw8Zp.VNwVDIgH*8ީ8K"9ZxJ#lcwk}Wuh]SFx46n&"k~#\oa*/6g!lIPH_D_ԓA.4aG"\X_ ہU8t!P^[34)z z(ҋlږňNY Oko6 Ks!k*8'.y8D~a&e$hOg>0NO3>^~5QZuCR2mBe``̫:a4M5Н_ sŔ2p\&\Rd#$_jdv^r_pښ%uR>(I$! '8z`Bت)_}@z@ƜQbΤb6] ~2#\0h#3|jGQ#ѕV$+;(}|^/`qbG b:8v,0ɱN.c/%A҇xR` 7%=ОT)?1GQ 59?ױ҅RC~$wjtD0GF[xV}J {? ׬X2U0]~'?-!p`έ5i- F\Ʈkw.rQwVHiFxC \`a+*] h6ě >qB*Ldjf}FfAA6J Ŗ,u4h,IvHtS `uzdÓ..H um(% _8bOrsM1FXtͅh4 9nߦ:. ޑ+!\ S^-RGz=="']h%$hNjvt)H<=41?9p-'͵9Ad)nwS1i V I,җ.:T pka&d>DpQ0,c1޸n(Xs7 {@g[`2 [$ÍrZ@$޹D{}y*@Z5w N{|sF̓zrlR'm'_-q/XkVQUCr..*,D:b'-sAYXK&=vO,37x=*L/w!gH}L}G柧DhXԷ"Q!pv -u rI[=ͽHKO}w~H99('G v  .[yCrU 66.'_+ v WuQiF%J;If>ٲZgmL K@xkf"+]1vK/5jzN'ﮊ݇>`f#W%)-0%EWT[APPƒO Wz38r$5 DŜq *NCm ;E{ND1j-'(qt5: 4T3@K t/):\SˢH;I%>*?شqǡK l6=3)YvhT$t pa3rA `hm[I[Tߣ 1F R7,j򶑟UD䊖;~1WHǑDЉHܽbjj3$DX?f$;hHozʬr؍:6=G`$w5-oX$(!-Sb>L* q,o-Mu@k A!d7VsLa}bm#q;73+)D'N8Y,͜䒪(nJ LR1;V5;|OANi!6-_þ}hA`y&؛{M!Í&j) (I{sXZy>+wM<f+dB~A%?ߕ^Z;?~x_;I^o8H^A1 lm#Qu xD{2-q|!jƮ cw:b?z2|o bIC FY#q1 T:_d]5gpFEgqڮ舿=/r|ֶ<ت $)nk^wTѧ Τj0-eZ~ Y9\+N}qF_W ӋqshF6CS+ކАv\JĂ'U~Ud-WXbŭ4*D{XC}oM51oU@7!bW\tENVgX3#$3 X|q"A9^C5Q[Uua*aq"Or- &z&QNF Z}\{ f'C@[$u>\D ܤPW"S~≋ *ikR=x[$3lgL8k6SQ)vJJ]@ ٲN|^@C(Ha1\ %0~)uT9ѻ_TΗfoo!D_Q E)OX(_򢊗:i#2EouHԤM4YEyu]);Gu>v2DBh9&&d+Qr]p9G5.ٔ0-0ӕ !p@=ai^!qCm^43Ho_qP=/!h{~@vK]* wkrס>ijdhӼL_ %xC$-K ]F'bI/`ll4)$}NbF ;MKa鮬puC-'*7b`Pp:@L -h;=ɴ/k )8hmfٹ7SNk0G,~г޺e4+Vh_i0EǙ39{-Su)xԁ٦uDEl'+*E atrqh[|̩ێ{u?J7E 7^+ϜbŴ#tʹy,[q ή)~ֳWt@E 9\oK/u,a^39b$wM[II|sQN4\J<wfr~1 E|(};B 3X_(28) N*Ie+۰{+/y\91D L23UP]W}?#+4/t\@iu:\uBa-$As̛(1DTc_&V[xR` B~fQ7Gcutx)R(]Wz8}"~;tȈ4:ַp+,4. a>-њ_RŨ  e^887!pf@Sأ2*zL'JkϐnU‰mmЏ%$mXf.?܂K\^ZEڰY)Cx.O]kQؙaJ$ؼD Kdմ&Ԓbikf}wQCͺe_u,Pk~p7ɽ VQ1V83{awkݝ6<6+P+$ ]H3 1X Aڳ=6"k@8FLū7ͮ)3h6?_E?i?yF%E5ghOW`hw"nm,bMaЗ6y?v%jnJK~}]|ۅ|8 ss/2X&}mW >݇}C!Iij"TB5e!:ցi\A``G4%1E sLT o[?.֏;w@{y֡&y[1u'\LKځPlGkdly_-8YUP1g& J+IG'sJG +z#wi"~kV~'FSK ZS7vBnRoF%=7)s}U=L&q9ѕ#ٿv݆ɺ?9R%s.s-V&S (~ fʲ_"v l'gM3N{liOdswF Nu2ybg(1!v$KO>ӪlP$ B;dݲ 3vөΪN}a}YP@F$6 r 3Mx'&]Q91X?Pc$B>U jD *7_T&=ʛ|ꮪ^i!Qj0Ϲsً/~-ӟ` ڱykS:XEYNgN` Q.qDPesn[VcjuGPovkY͞gn Q#n'ZS7ڄj*U[ ̷,E$É ;^d{⿬:&.u%_YJ}_V :7YͺդˀM8XG$[dmuHas;r?'!^C9ip77 X_ D\QrcϥKdttƕ"5)̀ܭiN]5nC%#CǛvlX+IOGH,:.֙ڋ?_3.;cW'538`se /Ko.$ŔuezUQ'Hp XjGZ׿=|Udq :8*f$HedM2}~F]lb9ŘaPy~7fx$O.Jc 4"h]3F1uM;RDr;Ram?%qsB'' P݇L}KATh #qƂu*7~;AִkeB=}THK2{2-җEHJ*$@t塞0\q8@ҥRG&kB|kVcψ|YR6䩖,8Ckº'}fڧ ޱpzX\#>ӵCJMfQQxYSD"o`۬5Z]_v{ǽsL7X[bI^[Izr7iSjV"4c-'2]K F%ص\9 L@gMnއq\2"*/u5k7 n/="_/ wE; <;*:6ai6('+TֿQOH- $ {p{;!u,6u kMk(%Õã]硗v*x ~1df Mϱ,PLqDSI.k~ֺ|6Rn7SRx,}tqӔ2Ʊdgՙ!^1+c #& qweD>0`8G #*a C6`}~s1Spљ>oC{.y&3Y$1` NlMi,tmnE?6hb$6&?r0%W %G3+e 8)mA2zUEfdzmuxH/_9KNZqʴͮeC1jҨ i.%OP0jI?oC҃gԁ 'x)CmTCgf/fvU])`kđT~DBv\ؒBWݽKFJ*S}%$FHgC9B@9!$ʋܪ> Uڢ(y^5M/ fM+@Wc~bh9ntMK'ED&ԾJ:7$71ɅC\{G: c σ|3zǠGIIoy>5Q)U(s%Ol b:?k!A%X$Je c78C ;tEf՞W乎2w-o`51 fc2S0T#ұ't;'<# !\ p}9;.<`(ܟ1Zd*ݟ&sB ms.vEbG| V*w6^{3:zNmĮsőU9,%i{u_t9i+)L%HDu}["Ԗ-Kqxf} !Dr"UҦlc;Y;1h>iUfDz6e22GN"'=:w&VٰFGe: f O)dRI*%^"gG/e {h>4aYD;mdu@\ThH+h_5t@[83݈%{Xx{:xP`ƪ^=Iq)_b)P+K#V68ӡ怹WG[li#W1L!nSgMrou3X^~ʺJ:93S[1aӣJKGճ $o){$x00 ^knChƒė"k}ZneAqf:}Y_oӪmY&>.aηnЗ Jkn kVJ l.#U2;4%U(Džyֺ6ן i.b1TzcNN lym{ h1a/iߌ]Xo#F?[lȄAR ^߀?k]5Cunuێhg+\`DѻbQȨj9#|?$5+ /` R*r|ov춶%g/e>6vpԝK33d,VA&xHKGoGY1g2q4̻m%1;::Y\+//Nb(r1xbK4&vDk{#sμHF.VLSu+jJِX#%N 6XNruօ%/B,URĺ =k"X&vM̛/{PMSآ3H{du2 *YSnv;r/,?W ǑTcAox)|ۮuJn*MpNF %+8@ȿsTszWuv;Ec BH@ɼ槫cO%vf~qb³3n]*”]X@nIРP< u)Cy\q`(:х``Џry>A;&cը:hj}תSL^+ݜ? _$Փhwr#%dIk|&;BUnVџ{"Ql4 39JAJy '$f[Pk/, WLxeh7eA%\Mi˞U<;gdࠊC^jK3APޯ0ҹQAa|0SlY{ˊ6|c{{ hҦC°' E|H8EHqhijkZ9*SNdh$igz63ՏlLs~͝☶}e(_~ )O#zBN/| ZnkYptk[tZX~\,cIF'[y d40 [ߵBORDFiC_oPrá jݐXNvSR6krpAߊWC.\S#V\Z_?G#X(dCDD#EWͽkFJʓewSۯ")-LiȘ BY֖+c։6- sۢ+{*?0U*h ܂'s$QTܸH(aeyCs't;Z- B (@<% .х[ jz zĽ)pp*k .na8nƿ``O$9Ĩzґ0wCnݖ ZH R.~$P*9\1[ xF]RḎ5SJ&B*j eH?1= ݸ;=ֈ:#˃2+GNwνUTsJv0yک1)g@q_]~yE؁VQ2S<.]YS.VltjA@ P> vzN+}pHi$? ;k;Cy Ðnm^GB$?ZB0҅vv)Y5%< c t6Aua۸!qElb'r/z:]rq: *LH$!mӔRN/M9gq>r@bb>UPN^S֟ѨHG)'71{n?U֐L𛟉0\qw43<ڭ_eXAՋj[. ܑC.G䩥 *ptz b|φضo|I/Ns (;棄1=:XSN?I >|Tvfx"`Aq An|7fzu4Z-~m WU9s+BNpGAN~9B3 s_.MkM-m_B839ʼn}5F=Ĵ.8]Շ)rtˇle~V27Ӂ23L_e$ 4{&Cy:PGM~zFkOjz.Qj"oo>E).4XMYu+y>xTp^5l< Ka $g7 gm2MxO(h[@8hGC56>O/59,ȽjqԳR92ºrK3n>rocK̂HVRu lAS4 ;EF[喝}e =\u0Arfh@/! ޚiMJEG[>s~3m%&>oŤ+vF>#ăضl`GZ0x`x7b%˒{9/Zl+/ TRQU޶^v՛yҷu2!S9#+;!>' ϰPV*N(D5dh:[.f~f5t~"b&gLxV&~I?2߸QH{W?_F!Bρ \Jrݸ՟ 40P::]%ba /SR  *L1s5WJak#,vb?S-"A,s|9$H{yCxƏ>+B o %~7-uG"#ɕ:yRXfls[ ǽ(Ňtj:}l/ )G;p!B@(K;"Y Mf}.̥,)D%Ba-iA[I]% |F"4NZa5g RV wQJ l{b]| c-o)(7m|5z@Cl"YSy!$FJWs [:k Sb m9I^}*UŽo]rQ C<)̐}K!tbf>v'Y9u,;Oq9>R0+#WF# q#1Yk ) A9hMPiC7} /o9ˠO&`Obۂ '藓3jsN%Custi8½M~Hͻt0mWhS|S!DaMHhw+o ^/z!ID%ǰ~pX.|ieh᭵S+K:z'FƱPOmpB&'貅'RUa ;j[gmOrYU`a=sΫTii*)饣$=wwph"*XB3N,Li14_#ەNNvS/2 gM[-/z^]TãbyS3Pn]%R&%3 BUL$<-9MV =J{0BkBc_gDŽЖֹK8:-@Q(ts!O?-ʪ \A670"ti/Fk6 Jxᡊq/@ۇ*d0ZuWi>$< 0A2?/aejᑔVQ/S:΢[rszHhvŁwq\oӑDIËM69BBN'v':NI s_X8.?.s=wbrΒr[G վϦID/}rkWdNU1`>.`i#/5ܤ3뿓L#87}֐ٷX6J({]Ywj>_WjhS|?Yֺ〼mWF_"@=m~.ᗎƋ1R@]|ƶ UJOՃCcyEqdRLuȺPgQ)šsnƞanOִIos(yeʷ&#QA*-# xv5Qd^0h0V|5s΍}UXl@l잤 b C>.w1|* bL_QpQ k [-MU]<%F3uUr"&hNJ)fU5&B׵<_vL3j3g@\ ;ڧNE>TQqXY= |gYٻ6PcjW/hVF 8 PKЋ&9\TrLzlvbGظO's<W3$֫J)朞>pV_::?]ڊmV@LM5hA. AP y R.\ <[Gd.';S"LˀH\{&0L"ۯz͔ Lu v`C{5N%r@dn. }oiCv=1Ж8n> d0Q3\Jx}q`O9_A><xߎ%2LSDY# MQh8kF(ԝj E} &~.[B2IQP@7=u1b6]US  YǻA^~ܓŨ$׾U t轋H`c#^8#E㛁" (\SbB)P%'G!>p=g$.PCpoY)!S}Le`es7 m/ۖ*<7JS+3,+~8bk& XqVw2b%R*{%Yh4'dn:y41@&MX5jfLӑ/KɁhE;s9H"?LLS#NZomO$WU OQoOd-u~iH-bb]Um0+#grn~/쟪bdθ}5϶U<1X] d[iZ'\]]nN! D\8z[;Zmb-dڑuId&;h䖵q "scfd X\:0PycW[n11(J c:H^c&:1|66Z.ѩ/mO%sAolօ}46nU3;M?(] LuJBl+%~3 %D3Pf|Sd䳛u+gՑxƮ8e֍"{ :5%o8RRQc,|rxw@ `=w$˫4oF׎@H >" ̴$4d e*.L} W- I/RN2aeƇ¶OPnFI6DffW,hw)`߈PW hD?w=1;Oi} 4G 2@aTD_˂@*>/WL>ј)Z^MZ<>A䒕h^i?*[ocd0h`O3TvxN>濲sްOfȸV$k3bgH(]!Si݃^m/w@!VaŅ)!B:'u M  +6{(ˑ~7ڝ.M!i8,i6[&D3fW/\{z51mJ55kw_|!n8?9=*#tcr} ~3qe51s0oGMPamH7ZƑ ,݁GW kfBͨ,^o;; TY _J׀+cV`>+N ̆Gs(ܶO3w*e?9n\CЊ+WhCeA H> lxLی$:Ö|axx9'1yh,|T sg/^ @j{s6T"#w51ZFs׼4"Q.u۰%,e_^ӜbYE/e׸y#yhfûӡ{CF_]znU}N* ch3g[ ?7轰W~NogwU{0|ԭ]/(ueFfܟǽ&I%VT,;oS3* Cn 'bW-"MOqQ"rbDvr2 ?lK$Ye<}L `T qrc>rffn(-8[o-լH%; $3S}їvpP9cAj]垫oѧ)iO- _^ U@5Ӯ=L͞q#WK4q8۳= d1 v(*+~i{t+Y|ゐHUJwcK+?&o x+a^-?UpX2u<:M49զN#^ >xBQ"ܒco Uf`kjQ6SC&&H(zֱed`k-ԝlŽ n04_&u]>+-Ɏ'JD-}s+W92\_ܸrA)K@`\o:-؃0noҘCJ*( 1q »۪{ Z.Fzџ{~u)K&>jK[Bb}#mD⫥Ԉl. IS$$-0;9"+”۟&]W24h,u?g8p]$QR蠽QWZ5d\hz3칼U eħV s~|qM{# ( 6t[4`a%fDZ=2l4u}hhJSءXfJ\]hGҞDm~6w^Y 6GQ ˝"x@I1پi Q[h60^A%{גv&'.H pdWHKnwniUگ0 9٠@"7GP c- 5Ke՟ ~JW@$FkhXf;l7 &{lv r8/䥪 O9 P ̵$&'`RzȊbA]E@<9tgz)zF} ςe }`KfQT /([j3Zr)x=V<(Hc?c+!~pY@s\gBv-{nh 804S'MLx8Svl}98 'S.0_.mgyjx?ɲBkeS":7Gx˶b^`sdH<щ ckwŔ=:@,½E$s} m(! q{/[ i>lER[YA~g wo6JVbakJ^}J8V@^c= k0bb_6J$ MwT2 Z|#bxN*s>Uvr_BQxgСĎ|=.EAḦ7f oy/d.ЂNCPȞH`VLvxXh :oO}[g-cL簽4S %)Ago-$D\3h *=|-*) fF!Sr1IT<䱖 XrƴF^0[fM{@|?FiJͫ&ѳpSa0FahKeɄ_z-YqmtHƺ$mSx25Ѱ[ l)':6äH/N)CۅDIŶZ6Pu㛞 [^=T[ocv@}v?7:zqq\בZ [mF]XAFOƴd(Uh§8,eˏ.b)(OFfU3%ya1Ṹ h9D6gF%m[% qMz2"kB#,hIO$Amj{gG̾&^Z) ~bു@J"$=R.uvF(CBQWotE5WqF1U 9g_/ΐx!30_p/t[j#gYEAj—4X/hٜ- -ȗN&}o剓%ݡνMGZY|0Tڿgf&AYFl-~mWL9yH"Mn9._ ]p8DSZCȝP# 7&T;tPp찓-FS8BRw1c̖-": q@ITneRΑD"eBI|atgmNUnߓ/#!~kVp5^\bHp_H*%*Y~}/`ﯱc ;G"Pz۵ÙrD?|Jʔ 1鞤ٲ)XV0m_-Hq C~C5Hi6^JE2Dm=ig !蘞>r (o)zM&R +{+{wj/fMv(ቃ"8;:@ky[#ZFR$j-!j]v\ŏ%]7eFK*m+{#@'3IQ >C$nWt)PG{HQk@<aqJ#5a߇As/n@HJK؂?(^Oث>Ҿ(V!IZJ k odG{ e^~V{XH ~g>8ʰXkedVp%wұTqqWuU7S8߀C3Bss ?ֶ.Zx3B|1Iw{ Đ;g0͝FR{q.{*М(Bq/؆筛v?ö>";mFk1,S*zգۋIr??Mr Bn^3L쟂xQLM[7yZRF榴ī`.skFxGkaZ3Y$^"Ƿ-חV1Kd#35^l+`DvLPCbpm¡ԥ)̟\9K)ЮE5.`4 t]zZt}2ő NŐI0SBHpk,4")x X܃!qA$RiJH)BͭE 'F<)x?ztfmX<'uKq9K DiI9r1̼$ru`w(* %(BDά[Am{F77V`?PO1h,{_kGJQ +&Rvw2l|*t,t;)ZkҘREnF&t)O_nA6mR!PA[RLl^MPzB\ /z$=ҝ:= ]?l"*tVUDis {6j"\AvXkG띚2F[g"H:A 3܌I˻8ʑI&TI\̀рsRw@;Af$4[RIoVKmyx.Hӓp7{EKHz46Y)Jwy:Ծ2Ekdֲ}L@C^9W@?=]h^/׃b91SU7x\;wM;Z&w }ܪQxd:iq9SZtt/ Wh5 ~*P7KK,hn XDgS0H`r8='x:&I*}6f>ї$s]#!y I*}#R!Ҝuw'S;lgVjCAݎ[yZb=O7 7RgXXR{USoI/<_r8[OLfYGI6&Ag|}Qf.uX`ymq&TҠԤ8u}oXѨU ?EuY2@&5!+]FɌjIY&&ug3[d5Jm")6om>rPv n WKq ]Xc^}LU:E9nIR Rih[lmUM+8]Z{@ӠΏ+boJ s)k]?z3ZK`_GOv06 IM v:mX' VL/\ юdcBs\b$7fJ`hKXUܠN .Mچ%3\<-|j0ݗ3WL"a/1 5ʜj~+Od鋩ûJ A KAoJG?)_iÛ:aV/ -zGebqX֐V<]|t{DWufqN2,E{na&Iz b*?`i"Nz"',*\0|Js&i5zM __x}=~PˇE묯|M ܶ# }4B5-g%] Cұh~ R# i̡(eQtg\m?O4WHp8tgܿj;%zO k2(ʦp`L:Zb͵F< dN^-6+NT4g9hR\! ]sԣSwezm[԰(Cvf`-Aga F.ţG@\^䡑}mp%lrf:<@V)۝|𬖔[bJdh"n!G/Lkq\YFrf-XY02<z''6sP >Uw/,P0-zvEU|] M \lLK[! bJK9}aa ^6AҴڑn_li*O=Rt,q~=t9JbT4/8N7mW=cYO_,=kU"``oRق:%_[Wl&7+?aDD0N=mUR뫯[Og?rc"ZJ ب_¢t 1ךX$fBr"bׯA4UH [zǥM< r@-ލ1d†냪w _LcѵESgт1Ymkٜ#m-}eWQ/ǦA^kՁQ\G"$zNEci+O!4nH[-|g=&@j^yȶpz٧!˅h-TYMc V"?~%ۭEq7YRlv[|eŠ>3]['jnEG)n<M(P_z1Y#CI JxyH9l9- @[r.5zsSv; .a!bPKrɰ}4glf⣧6>zc yD3\wPV3$R1%[(&ZH$I1z-[oِZHn鳝71.6TrBE tFJ-)LG1?: ၠO~|v UmUFV7 ͫ1m/D5GJyO*[kIAv3(9SUE~=eS0\rq.m#^[`R^\Ni #hj$kTڿ3yb&A_'7il3_ BbR$ŦDcTR,r8~deofsXK :B[@ll"(GX|=x/T"bM?3EA(TOMNkSǺ꼠qa죸 CٻE7nU>0WyrR)B@ mz1mh^2/T68+>yE {ɳGޛW-]v/Yۨd|yEEml2ԥ"Q2Luz$T0]HPu_s-<N|t(.rq7? [UY@wt?J^CAHIN`,dl~z$8`~+ |BۛUs&ՀcI33>\$g$1nmSaU@d鮯VHd4FS4xbtxU?1`h z@bN:~vʿW ;Ҫ;Fτs=JgD6VK[ɋ|{u/ʃ(W)E&(RSM3H|R/h +jg-Mdj,&ʞ"rRIap. G ɡL]`ΰJq|mM):}CQ;IWB{F6W1xB@!GacS6gk0yzW'0L89%:ޑSkԽR `/p炏B?"{ ^DޡSJDeԇC@ zZC7˿5+۪cDߣ%W*u5RlV "n p N@FI7y>*a?Odٓ/g>JI]rMwFg.K/J`XRp%pgb7/u)/H92~8_7cz)#`XF0Q3Q1;dcbLɑN~Yhv&E)\knש+,m|z2<ich{aL/pg5j ~)mSׄYr`F P`@3/j6l#zDֺ]PAj._HP -x>-*>~TRON[XeJ}ێ[j3 R, c9{8QPse1GHu+DR4V "2Ȍsw!rYqM _K|\; +;C'%?0^!ue4гN1ܺ Nԓ{*|^_2i4W rPEke%w4<6̹>)(ocVx`ܾ2h<{h-nML2-  5p(ڃx'4`.9Ta,gOq: K=|8UЮ|_ ·+lb*;?0F W3:[;"QUYm*}ŖWlCGKJX1^=a|IeT]֊ty&D:Ʃ§[n xF!'I8* aDfɰH8y\]=8 1=YDžX`\Fہ߆fv`?II9S0l/3f/ļP1-a@i  vFE8eҴ{Vqn|S?Z] g/C 妶nbn`&CLWtO1WBqD@R~5Nޙp5V+6A=`@cF[sR4S,[R@5`}yGG0x[ﲇŵYLMRL\~|P. aXGKU #C_P|HyֆFp#7+$9jKmğ>'ZKGH25†A V?#WDTdDƑ@bZsHa7 _e F5fdA&5  g˛wT";U=))BtY5Ng^veW{T߭/lE=,-4fяW/H@&%U`ȴiT2 9.u s/9k+cOE إ=XY6M}e0ׂ\fR;:^*}{Rc\<۷PR` ^ lA߲؈:]5aD1 5vX"3^$'u;Sp/>7!c&3-ȬCKoa8!ܡML5 y0447*.NO b %d䡥i^K5nqv t)/]o:B)j.EAB@"%̒͐n+H@76 1nM\Zlsx+3ZWDzkʄH=7,oNKef OI .byBqV++ZWCHbq Ѹ^L{xǪ\+Jf[Ia`*֩CGRF׆` vA']X"*j9?]X*5f?XDzAr;ɕ*gnLi8(̰ rHWҿ"}w{j<3 2¤yYASY89ݻAԼ=\^(╲U//bHm$-UN%%2ؗa!;AD8E^*.:hJ9 ΎTAr{5`y<\ YUlGkgiE/A7}-zvv}܂R5*qh^Jy\&ēcF EWz+GIl/{V9R*TdSs6}}6$~ %LNJ4I+3]\ +9v%"3{5R'a in@<c͘M"!*VL!@n˅ &-=oxNjd EGc_3pڏ쿂OϾO.v5~ {^t.(n.c GȵRzQ=u/_emskq TăiJ)rtٙ"/XK͡A2+lOش"N) |VυcE[TGz2QߖU !#8q̅<wH&\'DC aګ = w8{p6N$ b$P>a0`kbREt^痎cUA W q,}$k:RECUGTqrkdHu~=m$D#v;4n )#끩 y]0"[v5F")*@ ߕɐ*4 ^cVsrD.|bWQ`:'h]:w%5 l\4h#.|IYT"tv$Djp %A\rxNwJUwP_XDBT"e1%pFn;dkԱ3Øgj =bhZvoc>ELJR#(`oyt) zԏ;PXU[-`I83UqKT!kDJ;$&zV Oi:9ݗ脧DkFd%w9hؙNC'pu-Cs{#&RR׋ݸ sx4<>e$ :V +3NF X1 .kZPxjOu_ +9NHO~9lpvl<)O :wV!\!Yyn\ FM9/YR:GKRޖ`Ѥ n# ghB权=>.] aB*EK] /(3/VUi?\IuǛY7|Yt"R W5z iYD襴=qW3=ulzY|`DnݯԜ6Xl_Iܱ.93SA ;#kJo{8qMl/{X-zu,G-<[{ 8 b=)4J_/_s.De}_R!xp-y ΩrQLŭ!CcQ,e&!mM`#ziL~T|vGdpn'f1rIʠI'`?2u!,k\V-][_"xls&|ZNw#0 #:KwK6\eCЮA%;ݒ 3$4@UҔw|PATgB+5b&ʂne^S˞,]+㬈Z!Ffx*^_*]GFl`U;X$Sdd&S̿-N_)Y;zJ!k#Θf?SGİBtreKo@bBv^ 1ZoiE2\iyxDfWW*glױ!Q1 -6m>&?L Mun>gV|e#io9z o< t^ UpyZ=36$x$Jp3%*TmZ![Aou)?gcSg_ l&T/X,G6*[ 9F'9a&T[bj ?"/;E+6ګKLRe(A,!pΊ%DտIUHJ;Vu^VIT]?́')켟 wа+oF/j $$ f`)4Kw`-Yd?*x?e* e/x~F L6nBKQ!$ػd04">yJ{XMWsV 9үh_PWVy} _`2},U$1'bK#>;ze:ngYyeȤgI*ivސdN6 {6|4(k37qjf)5ש+;fRٔOM@So^T= LohrpPOa+Fs9vBfޤFSNk(W18_k\-$~D$#7@;P10=Fi9?q!IU깧1Ms,8C 4P]Ub"xAeA =Ac\u"GeNzDz^^M7 ab<~EtKNV+M& *Z/h<ө!(76Q-jr,]V]أ+ 4㉋ A \آ{WIq:r"" Q{.iUЕ_ğDrxIf&˰x,qD٭_=)pgȹZ O!;TRD$0nyocBR>՜JB25~]\@oN[Q6K34&gvN.\9P"W HRqR7]dh~ɬ7b.ʎĢ m gl͓x_ z$/\;w Uѡoq<=.sdY㮬&8LT qjc?e"Iy64-!zJ(#w85E^gkSc@H)LQ2_@NI}(L~`(TJk~k3\3:Ep+^c]Zmo~+h"^mA:8N5bwL9X ݦ*]- .Ua-H3j ؚOCZN@0^P 拤w\`43du_E5lH!6)!CвO@ӥ'Zm XO]_FY{No[;(fX{,}4G#_uIN0fz=û!!mL&RS0 EIX+ŗzkkٯ%>6%齷Z@,'h`B+ w6\Tsϒπb 2]:ײ+m {jҝ3e"{=~`oi#'2gf]\2V*Zڄ 0/v} 4+E3UE%0#p絭](7M8@%NmOc.$ ί-X`6Խ%vgM KX4Th^.}vϜ}cx"N. j >T\3j-B/[. Ь,;i՞QBԿW@ӏjUi , wߟ+ࣟmomq}D['`r6>ulbnkx[M V{9uc"O\Q,<E s0v% NYޡ "gv;~<v] k aN96Q|iYrNc;.Ӧ"}:l(^ & ;9'FA2hB, ͮ=]V faw0\tCų&Ű DkGF@;S0Θu|={Jp 4`kRN;x04~nūOuqQ( p|L_KE ֤C?,E7lbm`!Cw܎`tL9q]0*ʼޔ)9If!3e5R S"O4%J%%[lkb?i2¼eघh֙Β9yCi(,xLe|%1l T]DfR HA1={&H) 7 1Uk΢TlkVX#}OPv@:C-`AJҤl@"=g!?c8^Ed]3a`=Rk$\T. eWK@C盡pG;W#© |'413!-T" ǫl.Y ]wJ]0EM+!ZIRoA ~]IJ=}Y=lB3(:=q +UJ00~Xo.1!;OsKud>Xj*273 Y_i)mSpM5mbE;`S8gzӔ3xCHDX_ W$WhUN&k9-.s͛IzPNJ?c'Gzp3 WׅXW)IUqn[DLn[k׶m{&Ǎ.yPL*\PlQ@c‚ e_ܹr܋qy7S{[`$0`E/cv┳V\¨ f JdN*̲$i?2P-xRIF SJǍh]~mjd%q#KEMܽ ۽/$wuarP0FLs@ize|.J /N I%;X`~Ocyì ͗r7}E/P%/=/ݯrS3hpِ4f1F񻀣CHj[Úi&⦠FeփQ<)i} ' s+4 O72؁Vg~Tcu? *BdGn#Tޮ9r{L6na>[ftC]KGZv BmX铋8~e> %X#Oͼ6'ѼWZFUK0M54 :L0dJEbgAE;an+k&Rf)hhVpu7u[Fj7Is4 6:+ u?(~c/Gw*J-q2niB33S)椪Q"PUkҧ V gHR NahԀ=*`>`YxOByUUf veh;A0/>x6* ecrAHBl/3m xپk+SEGԩ굉+pl!k\E90m&isv8փVz 'pS2Da֢ԑcŻzn,lo 2iH煾MݞlrR?)gN>fпܹuUp4- &{r˽ʕS(?;ލ CEͫgsK  f3d_V+ (7 K| v @d?![ρB- ұxZ_p\̯H[簔v7"V"le'DyYXr]CBqh䉨zPT neCצ$25nIdf+PVnt$*t?0GI~mutXNOߟQ5l0"UDkyaqkr?kzU1vR.9|>uC=ETbK) vc3ΝoN#2SRXnvl}QT1XS.u(<+[B V9>Ą$9DivyњjD8N72Z/ YUSz|>[d'_Uxf4TP1ԫnqУHB|01;q SVŁ W4d*rhϪ %1p]t Ek0?wwnGn1֢0׀M7c*=?`BS'ӔBUU#3'N<1JeK)ONׂX I5k-WiGhҡ^&6p? !ar\ߏ^I<{OAO\dS:ڵPSaKq6ڔӵ3OkeQgZ*֕Pqd%Ȼ_•oi>SbI8wf -Wmc~[i|\d?i Fdt (UDkXa00۹Sc. mj ʫQAy M+fLnKT XZaE`"ZϾ+4.!#dvjFz5IqX-٦C/EɃ)_˄cuЅ+e֋vb- \5Eth|/w(о*$1 F#'ERvQDqBEsd5pٗCT=Q4᧖? ą|{:TDh`5XorjM6dA7LՖ'ZN @B,-I Ϙd 0:'t]f*o2#BYRmAWaze[c9f9:--7ɑ}npzЅsdi~zVIH؟.4e4&eP;fI!2}N+b~p8zR8_|%,;BsW1qٿA`魣h%ddNQ]="`>t>CPdYW\)ot`H<>U~3̩>%scNI'u3RG?oil!όՊU^JU8T 6H QWB|X?ּ AĊT4@Amv+/$(pnզyknT0_2:*5LSW%yB؇;D'Py): HgY pS߻ s 樘sލP gKcD:U*&c+Kdm!nm5(橑|q̯턊yc𾥚g8-Ja9exnK7MEU4RdW_EWuKOh& Pw??S$Yq *}2-,U0Z -?ɹQ/n#px!rbXp# zLcal)<_^}Ώ6S,T%ߢWr Zn_[ף 0"i6*BҤ4Z#C֫p3bYDLte(,"x4+|jUhΧ/NSSnp]X8;[Z%fwo{QGv .'F_rm%b rYz~ؕy3ϨL]ຌY*ύ?|r.(EZ/͆4i:]*eLl`,KA墠vǔ .\tB؄)٥5 SfY##C7ށG7lEbVNiz(2tIqOk`TdF~ʂlPҬ*fyJ5,GcrIt&O? ϼ1>zH&l=L5 q'> xW?i[~c=05)2H՞GX nj{5嘉ǫ34{k ^ˀ1cwO[݀3a̴1ז@=`jeX#1)9X1$/ nǞzRJF#Cct wbXr@rpQa*s~cO?҄'ޒX* 8.o#vo7EEH|5r^ M|: :y((8`z|,#8/"4Kj VbjXۑ yqLrcْDp5$*>l`l**K/„+cڨQ"|Ӂ 8|/ͤuew[{zFɥ~m\TxVZz@sɂֽ֓͒e)@ͺфvrNEWd>Iz0 ;iv BRI g7@>AKjm׼^ n39 1'C: 'ζgwSgޗOm#ajjM}A!5^QV9׶]} |f|^֩A<@ٚYK#N,ڂt6#+`(atN աy*;ߗOD-sk. zgz9~$i F2L#CLWMEyPGZړsRC4; 4<3dAI֬VjU"*--iz4bNy+ y(3;BK!WB bb4PtoRFz>Q$ <?[eAX$c? |s-E~P|xNп;푃) AQ^Fѻg,9HRj~JF-YǸV5P↼겉H6bUCH($L5;{[,sm:o> ;}$ fzv]Ś1e$i8Zoic* ܏7ebqrRjF [bmގ7Y"-b˫pzvY`"Jg١apDpߤa?33VЬZϮ T) {gΦ>$hj/)Y=9xU(#~8._ancFCSځ:H$Wܠj$+~ ܖtGeϴ,A3cWhyWҽQȤX9|Ksƹm@5MT^l|d<MYb~~Z]1U'CF(!)-"S$GF~x:. (=TLV9*ic$@wk-NGt?rUztq4|W#g?!Ǎ7bbI$BIogi4ћk08D4+ɗRJ1肷/8ц.kzb ܛRy/S$J 1v\NW{p%θtրPq˝yg­K=g @a=B3h_Z1RS|Z6l|J9* ];e%>k2j:w I:U;o$4UT"ډǒp2h1\u=3v]*]u vzus?RЦ-]MC'5`gl1xUԃ99SAu @] 9^Fӑ> o2!!l*cZʥw ⶦD QۙMg Q`%*r,Pm Yu=1\{lQw߳]JDiPKK_.fy`C+OV[% <8Eᔖ\7d!+L궘,Nqq{+:}6S.Wbd`wVB&7ܶm_a5{t}?a qg.PNņqB`jMʀ6v4m&ant^%T._3c 2Du#&`fYmMDcX>E#⪢W08D@,=& ǐ߫AvqAF[GDlxT/>j툁=\vĀt a,re箚aQ){ loe(I,GQ^]t&T7r*?6cT9PpߓYfjR'AȕQ s5wk[0q9!ߐI=HJˇ)ѥR I`PLo8{~'ڝwrwiX|6d֥ꃿOhWG|:~Pˇ[?Y!XRc@pt/d|q-fࠥ澅 T$0nßayWQg%}CTItF[̟Nz`9ڵ*g4dۡu8?Y v!gHbN$hRovQ/+!Fy,tC@;Zu`P'ZAEթg]5qŚ#0|@Pȅ"؋\w~SN{pL.e_ `d$A_CG[饨<=M'i?P~1e%cA H87M@5J Sp]Gg]&N0 ,lBxO^0x/z9'lQ^QRuy)|[<8%M, z9J▷sT̏md4ڃF^oΰE,rA e#VUB@1]`G@Ma`z~L܃( ΘENNi4&U?4hFhRFZӮb!kv N7)/j%UNȘI4 Z}&Tދ4 0uSĈ%Bp("BJPM/ p:1#ǕZ 3s6l"'H_A*PTޟz7sWadļHd OԿ+CW@@xOAa0TdBk1yCrzV_+$J+8Mv޿׺$?HаXsq<{d8{*r܇!6If޸}%1N&HV K%QƹuIY}yX!GD1j|7=eM,„4}]udš 99梬>"I |u,JJ+~eFpU!śg bLID=Шp蕭G[]LMrtO#x0Qzsj̲\*+9qL_0I <I=CѝI֖R8F"Z a[nD|>Q'\އjE@;YFG*0I/lJ/5x-LV j丫"g2D3kN<*'I*_Nm:hccy3-!o{/|zFP9AQ٧;qVWbw*C죒@l`$xGEJ$6GC@8O+x}58RД1(WarcëUQ^ONID!0s}+ e\H+'G N9amBov+gt*%ңH8fZ, UUҙhpToX_ּsKELq+3>#%ٲ{ WEȭh%Ã79 t\ԙap 0ύ5ɫ"f)V_B߆~L 8E0t;@=kz&lmUS~cr͔q$ k(Sec#||;0V) |ʬbΚlwc|x7{/10N7UȄ3f!1pCecn `:zEK`CDd͎4WX#kS_ŸLO9&D˶$vY&h@n|@шИ::s- DYBu=ܶDZەXTJG4_Vυߞkw{/$(KKTp*Pqy/|}V qV 0OJ@lly䃩J,8֤~z`"+wdG\IC4 ͣ:x )03g``v[vq^c5RřHч/HX79!a*{B(h E8CMFOo2t!Wm&3OV_ک9܍ v1<]GsѲbW,syB`O#aJs|VfMyձqgV#WG(+ˀVИbm'#Lg-Eʥ8_:vԊq} l9mggq l^׈W!}j^a"HXa )~|uoy<Ya(i sC_>A0{M.+ŮuMWYZN5ސe/HMFbq5p,[1N%qܳƵ%"}B8{+d~azT#.M5$.˿um$RJL7Ⱦ[ _N eKnn3B3md3(iNA0P"(m!1+<{ Pxx֌CKyQY\??gʖ3<ݵ@g>"@~t:]P|jl8ab#bZO' [/',4X;[Iec<+ 놀K#= 5c-f{$.󘌦h8Ѭvw4&Y!Uij#p$:S[:AȐYOqkkС 眇bG}9sU`s}njK7P> @G!\(hcG) 5X,qqChH 38roC^?Y#D !=fό7.iyBW5!s b$*lB2ȕ@m>/8wiV?JA=bu{YҟFPGCmy[KE{237B5ί^j/+؉_IWSp.<u_+Ӂv7Td!J06-:I72e9 oK ?"`D uW714KRzO: #ݲ֨yqd\`j3zJ2o#K&|e_,G Tdׄ:g(8 -F>1`W#ovXxFΟ`Ni{Tflx 3;DQ&] tA:ΦZqN^f,[?]KM Mdz 'fb! WLKRLuuQ.x^dUA9^Z8N̎ug l<._$u4nǦ^dX}k3%(tÏkkK7˵E*~1׻)Uz&@3ڱU™[Z?HL0ƂB9 l%P 㿇> 17)7uo)MQʪR9\nj/$}w\?:\ z1%ԑ(:WpF5,ڽ?J$4XR8if{TSvo;mҸI+/R/ǘbmU :+x sbR➈H4Cz _iw? \!\kא, n!H]a )cYO[q?_zR:N܉Β 6ƏEFf geT;Wʈg,8 2h%'A!,0.wƄzT:u)pLbxn s;ŞQta==R3^ΘSұpm|Sa`E3GǰQ`}OyS'&ї>wL٪G#\٤m"K,se'`<+i.5_Hr9}hd 173H gv7iω}3qLOۊYS*꤭ X?XhmvhVT;s.6 \mm>ڽ3PB؛=ytŎ-f1pm6 `M!O=g})[U!Z1T9ɱj_=QHQN`f^@0#(&"=3c@QN QNJFjwji< ?b1@"I23D5 +@r8U1S5{᥄<YDŽ рstUq֮)|m];]vIrnd|곅B4 pg/B0ݣ\NNHun] KAܯ-Ə(sbq`eww (6XM?rpcpn:5r㢼ˈ̈́S.[-~J3ѳ;O$љP &B\ޔHhVwUoheKO/J"9~C9yby1LsM_>!y@>U@!L&ͅf$hFc<׺/ &iAϳ_1 4>s{xz1{b0VZa{vϟ W_͔1M-1(-0zJQ&m)G7YsKztȂhGT{NQn3]o,V K7Xڕ5%TYVO/ 9z6^z}DFq"Aw~7;xn}-DLy+ML}=CP!<]X%zk+ ~FF| ,Loo^uK~A($kHs* +8⾀_݉.m[]ރd1ֱl9 ^81!+j`}Pm:/+4Bq(3` 4?Fj|-mfYN{f`w0e?X某~vZ&/ 짼,82.6K"ߞpbm, ω u&2=M=n{gG/a;FSQ[9<hY/od7D֗ǩv K|\g$r^+iaO} =`.f/gHN&qdGaoI6?1Rԡ6}vO+΄ojiq=`9k>U('A6s:t\{H[qo3-S݄E{ vn RĞq׽w#Kqj]}2r"^]Y3_N Yu]Nkmw{D"dVsh=0C6d}"G0{+,-'t5_85ɉ64ϲ)5mIOu( -˪`_|u괝AO$:Fj VD`˱Uk.:#1.}N !O/&D#ҨXc&<ԩ- [/7_a|HI3>QOd(һul }:,whOLJSjDf V%O5UT*?L bޛӠ" :nz8g\ov|D?M=G$Z$h3q{ꯇcAke6SJżCB˖ɰUsE8UeJˆWнM7>Կ(N@G_oI[F}&$ Dp3_H;wyt*iTV+X*1 ?&lo0.q:#c81qLij(yάU(A:.)kHO7:gIԼPGJk~1Xm8]?m֣L@_g~hCF͡n}y?͋=6eYT9]*Y*qwyG)VvQ[XW>BZL0umE;*wֶakE\ra@X1;BW<b^~4$QT*z"r[X5m@p& pW¥љ@Pe [c6zsFX08f#7Y-o3Yʻ~&罔 N$wĕ*rr̈T99ÐC/˜m~53wʠPvCN Gi.^*6'LnqK.]);BoB^Rk!t`͂|oU@a6pڿL52 `躨vc$Eo3)*-Z)g}TOr1Tx!똃527OR/pLrIEAr7#)َۇ1 z>~NҦrd '?Db3ݬ~ `A)<|6QT Le8W#:{GRMviWͼeVq'3"+B)Sy.lhᄯHa&I3اŒ@5,Dz,V*}0R<敮ۮoͼs'65_:3iw `~+DeZzxbPnD 1aD]ܛZm O]QA<n˱'4|(,s1Jco,U]8k=7%vThnTxe̦-,=ÍpDsyfgrїJaAbfɊqaBNr2؝QӧZ~4HMu?rN:ɜKgvcxvYmTch"l`0nvRD;OK/&^ao?p7M"8*O9=DatW$"kQ2**Y S{I.gGY&=q"]DJMbRػlCb`a'+&r}>$l_;L(0L 4rq#PZב1pĔ Z *Sw޶8mWS)fcC6!kkX<->b5TxD"sOb?؜UBHo Kvhφq R_/?!!j20 (`ٿD\C&x(mRw_:k`\\cdWfV 8;dM/5RYrʽdj#4uJh \vQO&#RRXkcߡTӵ/ b'<Kz&)8{x6?^8!IWxp$Ib RogK&H Ʋ9 TRi\ljAo2_#4G't^uAMnT1!uUDe ڏ7Wwk]d& ëزM2;l( )o!$O'~fRsٔ+땏J896C$k^]cD^ &Nlj:1&܏ƾկ?-WhE}Y>3xAͺe^w=:Fd6؊G'QYTWƧWa7EYDRD%yh8|45￧\_%΀YB'C >#?H[Zr؜u@ki@xum,_[rwR="KΤ.cX ţ愴˯X `j0Ah=_r8".ARRV6<]8\ 5 mV(TJ_̟D\ѫ_y_Ó֠y6b:TI(ɾ-[]7{in'Avo1f'U4Za4Q-oQZ$GelZ R<^=NT8Q4 i.gBfڋ"*٫K:{¡os8aC|/]'fسK0O(I1\IiPRL8CvRïgYG->_]d5t̨/SGhD,kž;w24}Rւ;4x`Y0ut-13'F{ϤA:n 徭rԲ`M~Gc$h's;V_tMȝ_PˀB"Ǻ*\^,ĔP"-]sGO9 É 0s%>D 5: _j􍷳ЄXqmpՌ4¾+uPY&qV ZV[_*pXoKٵING~-0R2,6ąO]dDb}}( N@V#׿TctGn i>KG&h6Ũ 1f s,g-ad,Im96X׉;ozZ^@~"L",=v,L=!b=8kM*~e5H^mk lV"6#bq+*؂g[aK ^G}rIj~̼ꯥC8eM\'$ aw2;$i?x휰+`@1D8>QR_%͇ie&{/dBfH[o~v)V_N[)5>s-IKto ' 2B^{2;F,jOQsTEP?Mg8z=t>Z;2#>"[b*|֛읃Jakn!;J!BB].Sc/W5Jm&92=z8[w!Gd nP(Y `vM/zp| N-xA/d:y!9po0 %23rF/I61( [מ7XvҾ6[O5ߢ}E[g茍۽K:(Nm I;L\=HN3 YDiU;VuHjE-HvUJ!/(`@W eP% $aY#ҚthD] m{wKU\{sCa.rA9mN^u6E]+|z${esYdkZjX3;6)`;1`E}l-p+Gnp{G)z3Z}EzҲ#֞X\'¾*&8藞p[&{`Q >{3j2NL,,nGH*5m5ӓ\ս~nKf%_"x0s5# (g@Erj:[R%EZB+* OYeU<ؖ"$Iyˆ!d7 SR @hԎQkU o]4.amsj2Ң N5D|CrvMȡ͆kQ*(5\K:WAfo9 wI Ff.!f8Z24Oav@oӠUh2 Ee|)9=;2 2@HxpmL4(9gU큹s!@ 5 H)Ğ'oݚ 5ڋbwI$7.'(QZf5~<ϲNeʟJ\!27G#[E х|?d"ї`!bu. P-#}Ci~JR)ΙKnAa= u "Lc(wb.,dN;jauCל gO`D'ZK#a*뤈D[؎|.rn?*aQ<կ{ Hec#=h)WE/ARP`C.hGp:t-~C\czvhQmg+c=ѨY@@C+`^H>#J>w&f~5hWf$޵}!D(0hoE<,'O ]m"1M)a!-ti*t>4>}M[su[jm38Dk0avzR4#1p77?b@+H7^kKn)畼 396/ݥ3-lavuP;TRɖR6~iTz>0z|BXh A`D;_X%%R@$,a^5U `ZO>"PKivVjÊ]j~14V4˲wj''BLj}C!|~(|~ i:ll,P "1^}R+nv{ۂ7GUcSY@#_KKJ kF\xqmDF4^jH< 4qX l2èZؙ7[8siW&Xx-H\ߑN؃;f(X={mչv=iE *z@MK E w-q]%I7JV,Zs\;\Y 'Wq"HKu%Cp^'T!'UD7W+?] MC\^ d,6 H% ODV/ylmuMQH0B)r@`5ay)F)+&ᆮ.gF]L>ᣀ&;/12JM^Dļ2$kCas~G_.L@l:>KN 7p Bwr Gq/VeV=>-׫IFzmwZ d˚eatR!rQ7Sjf3]i 4x>ЯyAR=V]Z}Ւxմ}Ap|tiY\ȯN .27IWrz~xX'bܛvjn &ߝ|}_ 煇"n"zP6:ƆiWL*'oq_`2F\O΋ty4L01>5)Wuw7Tۥ?qՒr_`vߦUPR*0a,Xu|Jr+aK[,mE>[(50y'#,ImKǫR^ 8j#'yv=BR=V~&b^tE~uT8c{3X%k d"j,TգU0_*_#+Xd1Zty6.N_iFA69 tYu&y.J\84 UBS5wpz=ZU\͗N oE 0NUAunsVγ !5M5X;7i@jwVUG@lĂJH{JR^s-vqh1ud[c_=jx$mPȺx`:'Y2U#mbܵ>4uI^ nQ>SzQbS%,5oT^~1% k`6nTJ3?X8b~ZL#beU.!&Aդ;s*ӧOVb#D,w}xGWbODU&XOUzymgM<85ſ aӈTz\ͯxͯj!k|ٞCxK2D\]׷z?5КQt2GD8s?f; 8byڝlZ0NZ>cdkO #ȨzA2@ȃ [-'CZJhKO1v/7r'J>||/)Ilvx8M,-F֛d~/Y?8WZ?q^wfR+p.ljS<GuqVȰ>WV{\CIUA.`29Y8EC}\3sC!V&6Dfv8wӾi/(H/"`n=[ ۣ?Ubϼ&A(ݘZf\etIz4ts`Y|؝F'!hA-rXAB"^t s] #fS 9[RZx3trbroߟ>bq8O˗KĴY&)"vp˞(cOM B /CAGtkyh%6Nh4exaX*ixfV15᫶=`F EP!D.,Bs|0#zHa_hZh"6՛[hG>TY I*j_i,°N* 7D[Q_v{cՐPYC7%(OEE2  8gP\TmI[|Fb΁[Hҳ43[JnoH+=WRpI&Pϩ[g?oi!` ,<T3Y$2Eտyq_JY\*_#(9+WCuˆ žYsAK*oNrstY]: I2As:3{$p}?=yoC;0ܒ 2hó\nYkkWCL#yDuO{Oէ} c؛%l;gh#q?2̇)'}.h%Da2?aC$?k/Wi`O䡾#\AlQA.P[ ;mi Yoi0>6(t T+k4v:OiW[\u6'QVf5A!_Ž?27&>J2cd,V9'̽pU+_]@( tkѮ}@)|6$PAw#Rwa?]*!I*OxhEWZdIG9qI󬭠J:0YH(v _i^[痗ǣo'ʞ\#4- BsaaI,]|/ an3N1qa9ru@HRiKũ1r'Xhi)%M N4qnx|]kAhP±bXe]fj z%3x(+b=\4bPoi`ʑAz:ow\oQS&/9hmQT濇Z  0wwk@9A0jBxގ^ T'YM Q{_+16:r˱EJuhP-Iex"e *2I4.uW0n JcZ*I$O"Xv-=t9\/ Vry0Ը% &h̼(T!{+.IvOSNr!" aK9gq_- u5.)1*7e+p/SHW0{.`m[E(r,x B-`IXP.Ǹ›F?#|UwRuԔOG Mm kU +kSqa^ KD}?Mh$ܫʓ S-|F;]!(Tnj%%b:!%Mʉi]vn |ϥc^:&R( s\˺¢Rtwɝڅi빽.=SnMkX$`Uo q)q ZE,ۥP[G쿥azl;bpxXUBZyZHc,%qUߕl%e!M5Io|@9̞lVpe6Z:]ϫXOSaB&HqGD׌^F}zR.(Dva&Ըr>VYë ap%]o('6F]^hc#;,7*p."S=ؔ_ÁcN0?v-jL];09yn$#ֳlUskw,5_;pJp `aQQ;bG5:bN_eIڳnF$F3H hUtxCKl){_HaOb0jWƛ9}8,.~ ZTm`_S`h>Ml|RIe*۳'aZ6Z^j*X wO;~0,=;deEfb! .bq^fj JW?,KgoqA/U.Xc`ICe_J)_J%%M&Y)~/0Mw!W~Ad}q35T}s;Ѵ+x"m]}=uJJR2|۶Ӱ3eGgw5># /:Ͷ;9 ;&l5חG0hs%On,O]̼RX<&\rZv{W1ˍɪZΤZ΍phM U'52iA!ߠhm%QITE ~q[u<}p5N=A7סŇ Tz|fe١=(\s96PFݹ8c b!bHs1< URdڼܶ.=@4[wǶdD!kG_X'% P]gegͭ5asX}R& 4>U]S- P +JyeuageHBߓ|\/ 8cSFUmWiD[HFwաၹkJH*1yѧaɨ)!W߶5y =.tƖ`Ѧp/ón;JɣŮpݼk1%j3f5 Q 㤥Kҁ)_a\*(8Xlںk&x6W)<~՘:ٰg'霏 @,IGI<#c0Z`g?@G5=8f.48\U]b6(XvgC~icN`n3JVJ4vaH 6>XG(Ȼzvؐ:521Weͪ#1y t7^{ÀL |٫0o:ݣ5pk!6'y *X '|\ #&蘊q.ͳ6t蒘s :!og+,jR{lGGa %d\t58-wRfzM }4o/pKfk7&0f86~7] ?k!]Ek 8v:R kY٬:i3Q$2B{+=#,D}FZGe(G:vw;S@ 6Pmt;I5E֝ŤKL:L Ϣ"r ]MΔiUY<S3X(ѤNH1`~*VpOz ]K98)QHS-RR>u㖘i5Q5^<</|+ s=^.tZ֡>W%gҁWD}H}ÿ3&py}@FV>8&U|j*KL^a.,!-㶃Ėn,1ž.6PGKgXyP* 9*,qslJr*@ ,YF*vG3fZywj$K#HGol^(N k8h6ռKoPfjMjEt@ߒ$ ~9eOO߲T 2E /$ZLoN;3YI|T(*Ff06o @T3+W14Gq eE {oபc_H ?h*V{qFk,,~/чRȍcG<,I$~ͦZ:Cys4!7,td1P#J%hPZZ9@ZǷE޲h1)Il`Sĭ }L*Y'Ggh+ƭCc@$;c[nÎyd#;QV]DVM%锱sjCIn#?+1_b@# b#l1w_ڔ*h!e4:@WolW n^g؞k+H;o}NnV.{鲺+eеrց\Ln-$+YTsVڑ8R SG+b-+IAK*|Eø& 7?JHobdGEᰑ~J<$=Ohgc׍W A_Tyt|NU9So KЏu\|[uu-\Kx;-hltTVdr @k}w_pNPM`wt2t1REB`HrT7[]۹<(+X~9\J(!u.GD}{[h~s@,|\~]xϙ*ksqߍ{VKQShA\'Ed0~B.R0|)ɋ.C%F4TqXGdofc+` ZEۖbT7#@UMܙh |^fH vyeh)kU]H-Ur\h6EKZBv*ē9"E~)с\1 Y)$}!{aN\D2gybI橸<ĉ'YK@w}˖}m j'Cc#"T&$o+oxXf-0"J?^Re{vH/bfm>/=;wouo<_N~zsppQCt,}ION<$Bz| œ7~Co_Uυ nLs`#}r~ʜ%5,oق}f6[E‰*fuCj&>ЭTbl( @Wu}&=O 7(&'OuG! [͎r>4fxל(L>zKMOV_K[tCQK&x0-kҲX\(Sbk8Q@d> rN V d5yOY ?=E'nZL$h|T<OzCTj89{铉M4*QN7Ev=#ӻh9G/Ҥ>e=xr®t!SߠKC/=pBi("pL٢(=ܘr[Rtky\trݤ =<0T]OF,"m{L?O7<2ӵ{=jFpkghr9>F\ڱ+JN+l.dixJt.ˠ=*Kxv7L6$ImoM5q+ or1Ej uY=)R-RځpK"gޒqE'n*mof鹄vjPitP;^@Vt@Y6ӥKvڈ̊@fESpF)%~RMHro mÆ~406o E,TdFjuu.C;ܐX>Bj{hH;ǫC4+?6 (grQ)wc@ ~Ec#2yHclI8^E&`Cl],JKW["ǿ0G!.]c!HR@v-Ar=ve%4flQ"3@E  r&!6i_Dw,XSgb=J )ІvsXYLS>us2̨$3V%6=; C s=@:hr V1YJ#Gg]9aȅ1'1OWuoi@i5"S@esu|"(B^d7x2< u5REcXi@[~7qC6k5xL=Np m[j!$RsӒiQ\[|׵.UăE\pn6=~4VExW8#"%Ш[ tTb^}qR7ԭ:37+8r^>srrp*/Yל.?wݐ]y\xWS3sP)j+DBk,ؗFqK4 ENiPk8էX<(ČȀMҫ3p'obv vRpg~$=G"k/F):-?4Up4ν@o_gea2 ieIlr_ݵ+)aji6ԁYvB@7jhW>tkZ m 1Gu09@ +$djC<ȥg#e!. 4:ݔq: *ѫG/96E_.ܛ PI&&mkÍk=`AzgX}Dpj;!{\I)7NLT B.#/gks֎)]7HU9^?`3mrEet(G cUx#[1j\^h^E`nQ&9-0v* ogF2TZdx0!WozvٻYHIIQPƽlG9$Y)L)&;?J 1&¹VſZN*'xG^5!}ɺϺr"M#ٖ9_1dwIM/1(F5ny$J8pe̦%&rq}e ){T12ڊ1Lܤ`?:p3Ql/{ `7Ivv[6kM2Wq@L$_eEurؒ45lPM;Z+aϮ&#}-VR/ޢx"apRIbb*KzjjϜb3`v.=Dx&Ô2!b=JJ iSpTiHs QDIzU,(Fvغ­s6sK31eRKN+),?mv3It|Ga58,*.~n񕫔5 rWQx4K/&_ˎ`|7|QXS;g,ۅ;sbYڽK}Mw͓MƈQu0AP1 1m).𦭄hfLֽ5XGqhdC :gLε<'Vn)RZ'~{A(!C2W\ !i46 %Hjy#kb~Z4L;JjLZeD~+#0!h6TOo.KFjL"ZX~}MPיy.1@&g)׶p]/b^~!u6EaTYvz%opizvm P8e]wXf ifGƮͷgR~6/Ⱥ{IӚE3Sn?Ii  " ZpJ {}Um ˈ'dB`b,ZFVRm}d,DKw D6<U~pn窋\G8'F_r -tXݢyTzMH&KTtjELm_Ǜx_!xVWQ@څ-(\K-`j{uAozDgC<[ZփS.YbOv2V=g4y < ^cLt[r[cAqwbyki.8n#ZfK=|4mj_o6˝<6b(-6̰^ ˋZMӠ{ wcr S~̬Z*LĮW0t!_ H_:]hn:=pw#ﲂ90l u')5d# %H=5vtUaFYEbOcb8D "qJ̡f' Sx]wKY.mJxf P[/mpȆgB[b }}`K$F:Dۋ8gƻVeC//;B+zN"9VOۃK$C1Hs k:I롡4[!X}BUi6l?9?]CVpdžvoRNN;*Fć(bST5nUC9"0!XOzfűD i;|d"VASK8㍾[8 S8"S,(ϑ;kT:М\Ia;q <`{pVDBzAyR$bDNKI/3xb?^ZI)AC3}P\ {Ȕw{"T*ꢊT*l}zJ#:ޮ1Xj.ph;œ0UO/}oY2# 77)ŖPaOʥ8qOa$$9;k{%4cQ + 8[tEI蒸bI-%M6*P2S)*y!&p95VaBB lm[J܊>HĆ v0N@4l1t`Iq|TA&*PX…f@;yC[%c`?sf;YN%V-r 3[%ᲦXQ}UU\=X ["$¹ǀm9ƥzj!hE K^n2d PqGm +7-;gQnUs  7SCe jq;_N`J=UbW㹣[LglʦI{Cݒa7& 0+$TB9T۱O0&g{(f0C(%ɕnxAx V(t &PvĨd0Rc%]c=x{{QiӼ4LW܆o4phgve*/ԈІ:5dI$EiL k=eG1U E |dÙNr߭QRϒxYh']*8q߬ .[K "ǤG^?U .~7\dnNXE~ ^h0u[O KƵ!Q D'pčyRtoViEQٚWo5ENҎk $@ξZ^蝈8fusfK.5]j6js3!AУr1bE4̞C1[6^ޥRIȔO"l#X!NpsQOfELaʿ|wb 1\}ƆzrIwS|j"6bo1u w sT]R'NCMm?diI : *N2h~0)m'66[/=5m;S(}l*߮V!(JF͊(; *46abd0J J`j+ ei>$B]"+I3bR/ngݿfgR0;ڴB(+' 'VywI.n79"`"T z-IZ)'2G5 r31]i]}v}/y$⒂rul`W05f3LWIk5{O}i4b=udճۢ?C $l=!4x-OHo-v*ZSn/5Sgo /]ϥȐf8"Cvˤ468eػ@] KFFf@dAxEFwY|9~TUUW&K~HCjazyټt~ZȼFGI ! {A>ķvov"`x9gI5Kgɸw>Tެ0q`yq,ҾeLOlq^? 8xƇ2H Ñ,MXJ}%7d5zH%p^8(:<`sDw<}ݼԿf@ָ:J "ƕ4:(J%O6NP(WQ=.mwV]==fEr>q̅CM3|93 L6چ RwE)Ը``_}M(HzoqGtxZ1ZfN"x{ڂ3Xs/mfVR, ͘GE6H+͙h]MU4i5~B liDrnU1q mͯF^f&ؾ(FƧWlytdR^54Or/{naG>ZIiYkp_xR^KAz/7ev_zһW`H̻~)WwvѦRR )U,;yԋ&1Cd')5_T:pA )/9 Eޔ78]RHeU.mėo]}Ȱq?TJZ}t3^ekp) }@#&bc>;;bPKMe5ufdxCA3,wIh;5[ơPc;t`d~胶Pe6i=|$dfB&'zcA3~D5ƂpJɌ^IA%xAULFK'TS]cP}p?B6~:v@ΑP䆮q5y <*_-Y]Dv] f8 p;cx%áݦ.طt+ <{G=%R 2эpn#,JdD^-I*Ĕ<+wzSjĞZP i>:g݋Ck_:Fí EQYKp1Qh׀2H$2W!y{6 $K?ݪ؛ZH1B ܻQNfPvuH;76JA#k,.ɇ-w8 =3H'WLXt4 >$)gҗQzV^idjMi7+xYUۢHuLFwJ5U蟓"-a(SBM4G̗r ypKp@6B{<T9]z;N1|Q6̻gXáǟF~CWSvlWt{1FNV2Tk~ttvը5l)<}ZaMql[$ͬ|j]"3 Q.и| N7\;F1}Kjf~;Z4!}Aҋ~ ~F{˴u$` ])eTh TqUQ)A2, (D3]pl+p:E॥n;[ zpޅ4' {>(54"rZս |Ȩ3zDQCpwk;צZ4&\癷a>^ܮ !7$DL`,1P?,}g8iqkoU0Yn.egHzjT~Ȋ>\s8`2s9p"{c.?VfnD'U݌=K+̋tsm+ )RYoC bjwq'1wpvN {,sF^6(c^Oj`ι0zo%x K5Onyz% hwI׉B2acuAI:[Yy5H?.xXS ǼDGӔ&c6 +f.3L<S: ()U S3C{'|հth6)mj7<O\ 8@j[BnH*y"*۔ԱhSڻq?ٔ }JupO@ܵ"2̞_T;%2ByDT[B'@x](H[`A}ZnOt)M+%2qndY?C,ht%yUr<r `,Z Y͐3A}P{tPx:A'}֩PGWew[ˀ=NjnSذ0kev/CSF v1c+|k=$FCuG]SV4ޡ[/7-ƀ@Uey;:M7Nb/_Sk}]$"A>~^ #qJ5wTnn!=+gEf lY~>tZDh鸍(ŊˇMIL>O5LX; Ti+!TFqOK"wb,&؍#\oqX%'意Za! xh{#Qr6 jIAs~+&{M򢕳4Qƥ\X^ҩ- 1?6q7ܴǠA2%𞱐Y!Z g%Fg^`J#z/<68\Yk4-|ADd VKJ %{Asާ{rbp`]Y{Ft-{DiYK+"`=vظ7tgTzUcL!,U)VSamf_yAMӆWoeK,CV VJ9-cuN)\uȪe@t1\`'AxF!\TmdR&,Сn;ڕ-ts|{ss^4'jWÉl c Aҳbl^eʪg!MaDOaǥUմD15aJ/4"ܙ FA+ٖb:q@nwOAO5oRBi;v4yM+ #ީ*j>q!iўG}[;') Q>…3"u5OҒ|{MW=ѫY%J͘i>Y,=D˱3W)h ~vPtr>9I︲%miӣ{BDH5L"|t:PP-Dt-'z.6,2mΊq-{]/Y|jAAq0K}7wu68-L3FԓcAu ;Fdv[ ,MO6 !\>@T?&M GVUJޓ^:a}%`xv?~S$}BemWߍ\ "8U}&ׁL @Z9e*0Ps8Gi`:JwUTo^ĩB1)v_C]}j{Yy?yJ,]?/z:w*pa%qHk,1vGa&gm1RxIw9;_bOFG>z'Bԝg{qlb+8$x# #tf6#4o ӊ:^G (tME7J~TP+=5zlm#[Emᑋ>Uq5~wP}ky n@Æ'8ΏV޵G`Y(P.Ј6Re%dg$T,0oJnf&O15|?eYH,̘ 24Ń;NܭIW; DY:)[/x^abU?/|ڐ-ylvQCHyEI>ң~aQ]֣Tbu?`^,, Iˆ~LS?*3(.Xl]婛sb;r4 U ̠JPo&vvU};[asW< _Fa+{:V]277 ZĎٷyAӷAdd{u6 ]`0 MdKlWY3  Z " &mOOawȞO@򃞱URI2Y]{7 Q,`ݯK2}mEpӏh7խ}P2JDtXI3/358Nb*w hxwWV jbnT$,k4puB'$錔`KƮ%$_+ >a4!!nO K 1[w'ȬoȰ SXVi^ SB[V rWebS8_!b8 |# ]7yJqc~<X ~^_+wu|}kɣT鸈3%߯|Z>5=$.Cٵ{ݙZKm5ȴB:rI1$e2d$ ̅9Ё*|\=ҹ1s$0* .ÇM,eD^[]w 3ib^fQY" | Yᑓ);[|!DtkdIE}j*4z%k Շݵ< BAt1 4UIʿLX|G(k [M!?{ /xs{QEQ̗MfW&cfѼ,q4S֛A}{+6 V#z?,ޜRYڂT$>+4^eܢx4Ev ^`vֳi:z l=y9h4&9c&,ze&.x;ZцRJS8$_nꥹ4gxDl3e(QW눸1b\K䘌 a|)D%3UH2(yՊ#]]/ߵ$GP|=5s6ԝ;؎aFfBv O<[JZZER1k\ p Ӌu\I/ C;cMO81q;czOyjijcƹgi4PuNF ddSHhs~ڇh_^ʠLFv2=9;;Ej(]d.iҶ˚.&l!vz/I;nWXdl}_{1'MAL)H#$T0i?6ns`kZrKaË-#EvT/hj.bEØ65<i\EVk$tJmps׬c5ft*>yK8̄ak/GgIuC*Q7EDY\~aur;8 'Ɩ$h{Q ΏnGfSh-y ſiBc S= M-sXP:P+ n7`5w-t*7CNK"_THw&/RÈ$5~Ȩ]NnVǏΘDl'4ߐzC"Fl&BrFFEJeQS,Wdқے*? JoE1sH\Q,_6yOD5]mRC]A,[l5Pe]{ ,qKChꦾXG`^R YJf ѥx$tMؿg* * D5*=cN5M!Í{G:J+# &^Ըv zI,b 59f 2*L2"bA8 +BƐi&0(aF;$)*I{P0Zb+]~4:+w&ӈ.c ̖ˉ,Pj7ش~I* C%GFN۔:Hܱiq>PsBunHܒK(ؾT?<'(xߕMiᷤ$W WAyuc6o3}o,=L ^敨H8t;^hiKS%gNU+~9Qn{a4WHEr98lTZ쯡QZ'V˦kLrX=n eaalSмB gɒV/@ ɲIMNWAu'cO\蘽P6`{Ǐ2L6xV}1*mFOcX c <(OlK1Y9kggk d?<mFRȒSlXoP92Ͻ fp\@+ԉYn J%3ͺߤPfǷ /#KsUJ;tlui%3iˆ.j"q^ N8z^}}DDݶ,^XLboWe7`/mbիKwܺ1;㫲sQm%O3b )!(g8,vA%tNHhOeu)+XHg2rw[^GݧP.:ro/1W&Yq5WFtb?ji?+Weeje;b*>CKmX0&آG'mƻiMZeߛL1V)lvw33VPDؖրvT sS` X.H 0P4 a5 +yscPEGʤϿQϙYy,18]q=a* GlylMP{"-ڽaFU;-_  Y}݋ΧZG+IU"o; _?OchCd&2h&gZ왡f&UE"Pd=ѱÈblԸnvuʱb9t(ة bOՃގYpHKJ*]5 D=y;n뉩z ̣"&˻'Y!}D5Eb'Q,$a?&z#(qp,R$oȗt!Zz@#B{Z'[~P!>-Y2reKvA qbyF"q?"mC瓐#w:3zsnp1q fa[v QI/s2npޝ5 P]_Z ZtrS>CܟsޢH"3NrřQ7dK{iLytM r0 ="4&OzWr$< k I\,R}PÇb 0:%u68Ka]хFvX-yv ɯjᗤW{OAKQ'2,S8>YP`֗/=p|Xʹ<Қй܉6 @hfB!UK%|{#dl3Ht%laCñ~HHs쎆s*)┵MZguLevxmRw+~s"h5iGTC7%0+#(DUh4<9j@^\ A ="I7+apK.OXh_$J/ʐv]vhp>v)ŗE|mú_/ӽ|+V亏٤ҧrq:߇/jl uR3S/ E{ >M!NG2mj 7DidivD*`~ dmNY=LE"˽Ѳ=@•p{ϭz~ DŽ"e(`*wΫV4JgЫwUk E> \5]n xJf%_ OGG7 t _'IoyϩI yRR!=Q"PEΠGtjc1*{g>i* z?<v9 /T*: kLX{r' &'Vrp\ ٘m!W74b [l.hSعz!uCBd|dK͌ ķnIvh(M`A \ 3YPKҘ?&V!$(h9MO8:::J᰹#b=^P~oI"\7Y' l](Q(1&bVfnyXT) #>h3X~ڧ#= o Z%ĥˠ$+DpsV*ŜT>rH^gk^8ue'*:[981\,W#<$S\[ޘm=ͯLKPI f@zP0yF~D{?! ;A#` VV})3|8h/]A%jYih:CvTQc8Av 7KM3V9㔊Jy`[Eq_ٜq\QK`mò0~dx>hrؔPesK[+('0{MV0WNLZkz~!.~9CfF[;aeSyXo^+E?YqI4n Xj/0/= 'Hق0%kĝO N|ĘZ1EμJ gw"uA# t5^k< Ty۠tbE`4Kp!}u3JCYpw`(}05Pӵ:+jUVW Ro[UL&בFaD |;so3%(ZԐF1T00o۹ov(So4r4~m>Buy18R2z:~^f~ /~ <4=Uήڼ?^x#kHLhxHy(d1Dr?=x|ʓDOX ǀ1(p4~oؘzR_3-v<xoLC"TffcaA)% Lͭz-Mɍsb/SE:, =+T~RanN!\Ta~\tp8ʰ* =&EK_ ҾtDUc%W*wS @>t6fR<NK^'z=%0*jSJZl>D䥰 NchVg1&Ac"H\Sx-[Թ%u9]7 S(Qe8xe?2Um;յtR\cͯd׎40JhA^bbL"F[<}+/O$gF--tX2Waڪ?nyi zn5TXDx Ba(L0E t(Dy 3eхY1:.*rܮF=OJ+gtgPufF#,|:xWh ),a>{Kw6")>ڢdx\_2*-J5>5$J2scG?5S4TeHuW g<0Z{_[6ީY-t]Ukx [~*燻K\WyijO?)5n23<)Ѡ=i<&U 0f7MkZ;3H͜ݏNZ-ՌFĤD 8t!i2_Nied +NY\*yDG;P%cr.CcgWPQNGK~K{-?M3_uT$H4C1 RBli @ =sY5-ZT`Q[E^WN7+JW1q6PHE@ :$$X@Y]hm6]2ӄ-/jHX=oO ]-HvNAUlyn"D[,fZ'5t.3Kd>P]o\/Df%8ص IP ct9 :] GpQ[]t~mT;­#qx;.Z[]EIZH}`6$*Qw4r̀zWv$ .AB gx/ABaO6Adªx¹/5o.KBzXY;s*8h7HO7)ṭRCK8*8;90$>\WpF= O>LDHk:p{[}G9,i,?^(ǜam*ד@l2+'voìM$Po/W$;˥X<Գ)d"m4|ۏdTo^1g%p;Q|#ZLσ4#:-Tbl=)OJ^=1Ry{!аgJeZY&`vQx ?W*=D,&u=KPL,z bԢNȒ < a :]lJ]k/:4ܝuσPU/˧XH=IKU0K 06\'eU\!5s}(~%:)Գ;3.ʪmPWZ82ҦWmg!?Bs' M{I!z7d^kZXC^{+;D6VY\n`ylP`qȕ3*݀ H@* +6zrMp?2^;6ʅߎz-=_ENݫ نc-{ydEg QJX'u/^q{(݃\ NT{b[IU}!>p J鯗{^= &֯z?Uz =VChf?(xpJI^T@:i `*"6x`#MS%Bݫb38 +eڗ222)+5VƧ\E2yPîZ 7sV(ӑ˔k *~? "[]*Lxp> ']$4zH+JKTnd}#pG.|(ȥ;gwF(w 腶U$"e`gCyM$R#VvԤW{%SQacm,3wL xX$Oa1^_r^,yi\6Ř'+Fh`ZK<~D#Aأ73"zBf#UKѠM9D^&2vŦBv]_<3Uu=X0ҨWt"& z0a(zkgNWG#B6qVF ;u]wU& x{oEQm/;V@|ԧdD bƃ%R ,6p wX`nUc#fLq(i?BmQs\=2[dPnS*> N!Cr6Vq/{QWQ @]i_n\ޫ-qbRVdQ@G6zj+1;|G])h˲/ND9B1xиYYTJdfcZex ksV !*jk׺MunU`g#øEr0_QH>RrmA$OQYnjޗAǢ~=&"!qłW6uѵ{o{|3SQ)KSI!㓚mGbn(𛲿X~ =-h 89Cg6o\} aL#|H0Qͩ"9îvBꬸ2e@0`464Uk)y@V0 1n+s0W{'_4RzjFF_*]nI1Onu!>ԥQDlmZ#M#|vF2&a{esbk7Q{vgE#zKr1 3U\C#'erƒbniwS0pk@L[[wrl] v.-M2U\Ԫr 2!"y.D@u-3!\w#=ZT.8BNxSa~?u1LXBFm^[R=wd۴|7FnUzqX*l2=4ٷ7;MjSЈRE)X[ >mFD2N c \qxuPv͇D?io?NCv(r]i+L{m=UK6QM8Y*]H1ЊKc\txG-4T5gUC<KaG65^rkLkfOz@D͕\N=Uwahko'a8_48?\ēwu[R78",QP"FgS±nř4&NB}k[]'Fh᪈qpU"bjK[Sg 8~gƑQ su< '%lֳq^R0QVh5[z|1+8x=9:9qU0©YvA8BvyM p&@ǵ]Yo&ptڦHAk׽d۳c7^63]wp0swDOXbп^n y> *=D`rj-$mB`n86 _(Si߱oF[^^=RJC9$)~AՀN`}nqtҸDE~`|iڍqP$8kwrAL~k]F~FjIj` zMI0wTc0 0t I RPW?G~0}bǾfIW "/ʘ'`z.0KF/Ri4s2 ].ƙcgi e]bO,"}Qe?}qmQv48AV1Ё&i b"c$*3I73[G5fPk HVRS;%Qt_' - .k"SlL4q1\gC>DN5Qsbc8P-|;r=K邖ibh"Mʨ%UYnnL OIkx|~oS4T'T4~L:fX58J*m @oxfbnR&>ᤀ< {.Il5URav,1ž XdeK>D^$}r 7L76}"[~&xpY"U:5w M/!/9UnEo?OL1b72;qPd?hՋ#pB97} b-fFN 6 <0W#s~tAqٳ{IFB}o"R_@@:ҁA@7['eh|?H B4!:{{0v t#DnnƱG"=c{f?jXp3m~9UL&iʼnn 4S^8u)Fdh"U.d$JU^MhyHe\y~gtYs^:@{Tyn{*CU [Juj֏)i`_ffp -BGWb$[>rSO>C(}IGb`QuKsrH]f9^B+S2*[#U1gR/E46mZ ~DMiZZ5ZbA]eh`TutÕo}UQ?F7in0g g!& ( қnuή~)S*1+ =PW5[S?fJ mW @Qb/NJ,"sAL&jϖp]B&lnv>!? (mO:Q;e!Hݶr/`ƋC!94wI5Ϩf;3LErt=j m)rP-\bRk|B(7BJs~jUyZ Won?q5m(ϧݩ\G +Eggfy@n/>(7|:}biM !oFG)y 겭f..mxb|fss: m.uQ+|;HX1%>xҋ jxm4*~yLw?yץa -o1Sz>'5CWD`bK>Ϧo9auvW?+l, 0hfj\\߮7[Z5F@?D[$~Xw`3 D5ØUo=Tՠ.ͷĥB r] r)Mp2 N 0,Id=IѵfojuV4Ax ^ہ! [9"(aTB XwC˘{ٗt^I"FcVsE, ϓH")bl=Cq >H@8Α`J>pV̓WXCj9Pצpύ*2qnȧەYL.!f}샆o]A<鄀v(EL $vM'av36ȣ*'5:q߈!t?r}" ZgI$1gMU݉88bN*{$ F֌Ly>!>^[ymZ:}ۋ; ,(&RϨlfՌ)f%%294 NC"z_\ma{6G?;D9]qJe&=D3q^&|].sly6yO*I7TH?)LnDYCQP+x!Y^N zֲm5.D@ mnpޒ5QJ*}7q%}Z>FkpކᬠcfAI4z78N5W6v|"z"jɫ(!At]x56gwZl䊏2=Kdʹ#mc,Vw6"A,_3gnFZg$Qb[ֻ6/ QJ͹&b 1mM"¿Ǵ (\@tkW#7}Q,d/z _dh')'.ϻm0wȮYKdK[G"`,Ә'Ť4Ãl53N7zHizv0]i ౌ"#V,6乊mI'o\b4n#W*XalV{,Ak9qG1 /H${btC £G+HIkU2U4W^_ħe+VAƃ5o$A[+}`gMլvA{?AZ1/+1VaD6׬X VW:;_t}(81I\We@hIyo(3ja+ڻz߆Y}p6Tzr;%2S+ + ,oTW:-yc늮#hDB34F̜aΡn6)K,dWWh[ޘ4POzq 騦:I>1JZy9Aq18iꊌ w|JI*==˚ N-Ю$w_]3G lX7,v8}VN%9V{Ig}ɳ6\>yz2]H SqUR 貃S RkW_{8a}SRK,]`O`g6ЕhI0 d EOIL*[QQ;+x kr> Uqrgչ=\-8\zߙ{ PށǴ-KyT"?#)׹ձCUǂy|^h`"ys Or׊yGJ̬bC*@1{5@9pIwӉ~Ѹu]bVpt ]Eb:WX!2.USg4`i+:ő^j!BiEs^m $ &nbmmwpLJv`{yɔ?!/r+ҿղʷT'ofd :쓏X %,'k>cx {+r{IUjk\#"#DCBNc&/5 AϬܞ'\Y*;\$ !EdbOlIށ[$q1):13{#̎=K& ٍiQ 4!ٜܣY\_Y#@r#e2TPlQDZ%vd]\XZ ~jPCqK.5@}-FZs/0Bf+yW$3SoV ڔDs.?%3,j]6^zD%y+BZp,;7j' ~T9 t Crzlׇ'FIQM’>hL KV`7u Ẃ*k6ߵj~N3xֳn mݩ4[?C8˫JQP8sSBjGܞ%BC=y TGALTo;^!b7?ulxuZ&Y/[gDCpNoaxJ3x$iCTF<~fCOvC3 ԥ@;oT5 h5 HP>ze5eQ5 Dhnk=Jܒ-86kL)_keezcllM'%6L׎'ƅI+.:n 8p2҂uw.xhK|;۷;'fs(.OfFUH'iol'5^$ uR+PjTǒ=LJQj,/ڙF]ha RҜ4C$q㏳~>)ȶ]ueNC% ~^'inIeoNጼ^5c*ԱX 0ƃvZ&,\wDGqdۺUbl4ALW4.g)>IF:5)QN34ԗ`"}S N=Xjf~{3=X}vgA DO=D-GL o dD\={VyD<ijW97(5}9t<:*$3#S)v$eȮ-Q[o~mk~HB@wHP^8%F08Gs=ޮca~+5F'@?znnda`1m?!#!Pc7#>/dOشTaY!oqS>:LXo27N$ɏtyki* io,f k0u08TKh:= EM9|(D)dC_ٚ>ɲxj}DʊrGc-g *|.G)exT&ϣ<>k W0, 6+()L4! _xn l. zsڦbae}{>9a=9J䧨s$ޒt/OP>. }CNt24u()0O1>k;Vq>=cO Gkgy.֪ l]ew֊Ԑ xT80HG`~oZ|O yUT3sNԌޞ^N3kHGk5jzof3 (5ͿL]lSJ הҠ2% tR9b*MUK"T ƕM/3*G]+UKoe{Ð} > 0XV)[zO 3j,$vSlv];i>!"oz85žMgAO*wgTiUI#,Lh3+N%haRIȵ̤cҤyQ n{r;4 VGrӏӀn<%$2ϻ ]#Dl lw(M,f,ѯJr6!:=cPB5"fi*E5~C/=,! iR-ۨfzs팖g9O@!)k%$+l?䧄oe!SfR)5<n%3֫`ը2arО'?c3heN.At\s"B Qf[ٗ^> {ق\h۝9BLTo[Gwl`g xւxEy"Rb%ڨ.|(zc7󖟤|QkeL۬ɀorjV1[m}4MfB2*2ep^YNV Q^5Q! LfXN1񽩶Aq\Aq)ӇQ OcFpلۭ 2/"l"T#QΝm^c5!50|V#Rgw9*p.aNtw_iɴ+ iA0XCUeYq$ZKE\ 4 [N]Ps@t}3S,[m3<[gq9dyo;V U]'yS`C`َdB] Xt2u8:- (T ".wz A7srѶQHV(hO^"eM;b\BkF߉cRWՋ~,hJ@9U RfIA:\XdmREv3m0PBÑցvY|:KS9p;dX'X?IP.߿K1"Fxpv`Ё@M32r6__nQ7Yl'x7 jg@xǧz[LdptӇޯg׿v&Pߎ,_2C }]~uPXTB ~IV&8^ ;_37EhŚ9N(8CO|m|ew3Wdbnc-~2< &7hmKiU҈OZm$_/n|0~ -y&G,`0Wc99k_Js7qsS._C7Ye T(),iIhPXPGz&`a@\}_fXK q N ktnz.ctk-*K7)B=1|cU'wu}`  D{+aQ*EMxDwȁa+ȃ΃^ζh$Z YXb(o 4k:gXzώnt.;}X*<$ ZȧN}yCGz3k'J{ca~<:~LVOm dS"%Bt(s}5lL}%O߲-*"E4/ 3S(O=;',Ta7{˲Lr,C<9oe8=d8%m5pi`u4z+ZгDHeeee j/n$ !9B@ !ppˆ]\W(ߍtrpVQG3"(+T tT &{_ڛڝr3M{ܜ~f~.7LvR|M4_#%&66>^~pΪ\Լ/rd.W05'8t hFv [YAV5[ 3S0pnU`ɢTy]e'z(%re1GޝU=`dY"P|\s`N˽ s"ؠ!NI`$V[<2T7Smy/NKY0P^jzWC_erzwd}+ziV1;1R$E!W} @,ձuӢbBʩ^wzs&\;]Lqf00yuԁ~˜,,e([X;PCۢ).u;BRdWrI6XVkӍϓb? O簙݀xnl5-*qؘo4CM!3K[9+a4ROfz6m\cbcǓvi>и^erfTOO5!j9:'kEXwÁ' r&fMGNQ͠TXZ3]5|mCy Za3*iÖBhK5iw?w4G+M+^UАhϝ~ygUR_Q,JY-o.MችKW.aDi&` ^1IlGrj˸i%du//?:g7~B¿xi|s*F˯'S*uTnBϞUM P伜H0Jsvbz*1d[ntiVkY&3g[ʞѮI; 97̀>#RP0WƎR;aN}e̻vTh utwiBd &z٦[[dۭ+R'2dqY7P}~͞D0ɶ[ /ܕI۱ՊH<,"1X>@2K25Zm"eej eJ;+]h݀,ћDT%|F\[60 * Ͽs.=[4@=2BJbXei%fB:;|l#ٖOkT&˵]?@'>!xDY۹a~}ur3Iw\r8+O 7IIR2:~L.Aֲ/ӨLGm=֔ҪZ*L$)6dǽ ZIkĄZiM ϶($E 8pHԇ? uS{V-QcsW-9UvJX'-[m|Z9S3DzRXAw 2췍>%( l۩o^H`98|ή=ϧWl:o4Q1y{:#B~eEf?%N]S8b10,m/jF'Wh؝Z26񿲚$՗-m8s_sXqA 픕_o8rd@(tsZ65EG3UDoQ&)#Tx">;;Fa,ze)Y70nDO4'Es@t{.YT"۱m; QWvFh+ 6_Z\HU/aKoGͦQb4]>jhS:Adz ј#R%nHIC-Yi? Y oN8b>ZِǾ:o7`] 5`Vs vy10=ھ na70}U5EBX)qM`ݕY`xG7m fPdFH!vq[ǰ"vƑJz~/0z {Q˶gg!*$p%&RKc JX%@orԕ**O9-uk?/W+EE 10^n::"w},eJ?YlKԩT10jJ ةEZ2kM٢LI'~~ -v$&bB MC>ѝa~xo˥^iE{kf:350?ЀTk$kNtzwk3h6 ;&IƟlI)& W ?a:_uc lMNSYfs>Mb|Pp7E,9GRzB:'13E bQ䥡oֺ /≮ks |ˏ3Džw^o5d'5Cy/PGTD{!]e%R@ڷ}\6r-P6D]q3&xL;gB|2 % -yB=p60wr37e 1 *nF(lswBT><;h]x.I`;GQfH{L ɯx Y%rbd'E_-8 FMAU;U,:S$:O6F̓ڮܱ۞X}=57.Y`V:T\H?B}Qzl@ bu?>M s#o  GS7a7C i}z`F8* ެI~AV=q=*5{~}\'o\ۯѧ7GxJafJC%X˹vE*\ZxEƉY*6Z༛-oHKK6Nh XaWx)[#ByYX;7s$4令љuj٘?Ė:O/<9 Xk%Q Eqgl:/0'Wl74s%(Igt/-&VGU 5sk7W1'/v!=>W;@Mz;PYC"qNglpIoT2ȒL=Tm=TY~A*_z8wVFyOSVPֳ8IPw?O-۳Z?h4`W]b+ZP@JBi eImHaSNә5>ͦ`Geg1&& 5Y(&Ca9I s񺍱 @ p X}t9%߶su֬3[Ҿ+@e]2Zi+Kt;r0( Y-I5A Q/E}unW(Ɩ5;m~TF]돍 zRdhUuG|07N/O*+>дNQ8<]S5ڻi!)2Ke<*&\bWi~B[_b0Itn uJyc#{/sĵ>5{t x $ĵE?]% .ۀfzԤ,A *dDa*^Vv 1C !jD =6nK_ CyҩAGGQ<|Zy :9Zy%5 ?\ wDyGDsC~Y_QBmx-XVtq\$T|GQ¦; 6wȼaXoyKc~|aiC5!<֮þ8A-pN^\ z?$<ʞ= ۖd!M}P7}aݔϸ:X"WK:@<;e]7d 4^僬OzT0yz$l sV,gmqdsEdNGaKG@T@Mt6Vhؕx ϮpZ̩iGn5lt2"yFH4pՃ@RZKƎGDn/sJwm׫/@^ah } CeO", -%nZ!&@Yuܤ9,~՗ߔqwJB١)9M2ʚ)| xzьs\ro@eCק@{lѝ΢˧Qi+RB Qß<%`Q=i8cՀ~Է]8!L&Ğ!7^8YYL5[,0o*qR_r<kM []*$\9OREV Pҩ.]&f"ZI+yh^ҠhEt#UbǛUΟh658<OB?n(cЕa0$ގjMl(Pа\n&履'qPBz=F#I1'AI=Pl$ZW!̡$s `ļ:%0hpƐzJPhziUӸsl^JKץ'a=dQ0^i /=|1\Shϓsvs-"U[n*#<;-Y${(Ǒlbeos4rSR1jp*OÕtIoA7H4crwךMʟ}O( #]ЍlH,j(paY(wdzIbEC\t2dv,52!-} LGv^KL0HzE^%Y㪽+SN`^aU>0T.-z$x@N vJQ3Y[˼`m[' _)`5q,pOY{Hm#mcJr5zMxڄjWBTA'l.i@W };CñjQߔ_F]cW;XfTE 4I&~C9Ý:yYwz0_Q TĔQs~@귡?Z\2uÊ5NKu T՗vޔ֪Ǐ[gmFXF9{6қ) 187l O1Jxi~/#Ӡ=0t+%vH+ML)5wgح+;[tOTkB_W!Aj z7ذcӛ{HE6Kd\ OyZb?Z@ED=ND5=6HJe|)cG(%>PiH0T/SP5G3NڟO~ ܫ]*"/j_=/{}s=dѭ]V GiQ;2_jDFZ>7:ʝ]YCr{i 0a#EJ9s?d^x":Vn޳+'[ʈm˻ԴC$Z(a{Ǻfaę>=:9Yju6q%{I!(4꿧yUr}+?YS~;Jn&[:xhd'%  nJ5 އ7d3~`ǫFto#Y(ů\|$w%ӐkXn`ʰ<[\馵Sov+25;c`!Z8!'9&}@f{EB `feFB2[`a%mBJgk&ۙ^^'~2#z"ߞ5:!"Er)z \K,k@ HsS1% /gm q7p``,b\PrS/nOkueH9:~u5>j>P^փJ+Z8%Z{G>7'ؒ:%8wwMw_w45+nئ!}%3],,Q;ԛ wŜ7=Pb{UhK:c g8, ]`M4CǍ4I%V#Mqvd⛤|Ʒ y;D:ڟ1Lp8 }1Tg炤HY}3-T@"ˮzf"$!չP4ZÕ"q(P bBMwd"ZWj^Xd0fp(0 Ǧ-Q:4kΆ۞XvD1T+S ? Lg./Z)Qto fiwg: 콥S:У}~I{{߯jW!bh\OL:Ե F9uxDTSfuƿ Y>z`W+d~cz'Cɵw3Ҭ`:R8ąLOS_ެld3 K|ac#>->%RR7__Sx ׇޓh/FTm?e%XVt\h`m;y^CTisu/j x~C#ڝMN#Ӎ`ڶxΦ"}B5aQ 8b#n2 fnWC"PGaRY[ *8냞_%hxW''< tw Ll1UfVb5U"9}3:X&ja$skVGEkOEkPXi_kjj4rd4FWOO BL9`/^eHp߶eAP rܠ/͋pܻ.&08ކG0c 4OQ=EIR%Ǹ`lƍZV[A(ykSxw{xtH^=$%tm}doR.qSX6i 6{$gjrY_$tbc:Y.~f^=9R O+ى\-:2QufeὭGs4^{!}2¾QSHȦG!+9Lr(-I}9԰I2QuoԜzVrj2$jrC,*3TdLV.xr7 ~s3,HKCU\Yf5Z @~eRv"(^.q $"4& ԕnn3n_f|DH"lJ3߷ʨ)T9?"VX'P4[>a-3?AT:aewd?ݻglfy݅NF68"'(A_Q9Gi!Xmc҆ܮT!;K$ ,jStਫ਼S' 򪝄#1kԐ 4~Yi, g[7(4k:߅tY|[:E obKȯ y32ZvW-Ex|M <Y, iXrqn:KjgG r~&kV >~>H'$ |cꠦ-(?YPa*)p vdF !k1Zm9n^=O{&.JPXqMsW. V}Ԛ^\yX]Z[T =jq@Se[?|20Xm xJ꠩h13i[p[i?sm81IdhAHGߥ+& ַ\9-r- N׀^K&K1w'CnwaI.i[0A{FDUzZ_$78PӲ↝Ln7lT3ϒƖRcDOVgALsYa[حMeDQA/U!ȯ((HǠKT.T* D34?!l"zBcV̴ua*_׽U8qV*Mq(I= !8YGYTa7`2 Bq.B>{Af>jCUPc 8|)xC \dwQ%]ኀ˼qV99x|U\5t>{eR\2OVra͸F.Ȯ=UW~6j$>8yw2,͢DsOM>ndn[,d֬Nb2VI&LB2:o RLi-H eg gx$Qp6-Ѧ΋v6~L>Qfl_{KRgHk]Vl֨pqr<fBkW_s&0H ._#"H; jkyS2solyB5,4cH| /f !b̯ ]SPoYp@Hup5"FH'=VDpg__؃LTB glVR+9QĆX T~"(O[LG_P1(yX,x^ )TŃhOp#Q.#~y2:̈3vi9E?kq{1Ӹ 5E6.W/%zT oŜl0( : \XMA Bf 6tGATqL)[~|E|z62JZQN5%Q+ rǀ\ω@\39!#~f"'T'hE#NFv=(k"fArZ}xv[Xiwٓ歕ni`1iP}jڒbketʹA/|F< V{-a Г7"^F_.9s9XcHwS2QL-֜D*Ͼ@ք!Ebgd%4r~)xq%nkW l/=~$ ybpToѹL c$n=5,=,mnF+~SQ`6yVh)#ƻN- l 1IJ:Y4>;ڥqWeR?poPCa9, Ôh JGNžt[{SR{B+Z\?JpG9q"1_OQ 44ۏ2V&fS!렦(@roPTk؆o[<ȳB/=OZʁ?`} Ͽ2_*vAzv5rBa'lM]ױi{RLDOFSFP%3^k%>TSgAǝ.fkO6лxn;ѽc\5e>_Vx/8oz0^q(S+晇bsdw^9:>/ -k‡_~(0)mYX-ݪ+~woOrpx/X9^\[@xl\Z"Yu8JO%q@=P]%> kjcyANU֭m2kw`VL0Dv2%|ǧyj::1]Gx# *558H81MA< CkW>:UrKoExEpo_> )`05yI ˗FXJsAYFy.I. kCAs_p/-_Fޝ)}UE 8fzPwK{촊Z@ác KQ:Nr\1z? CЛo D^9+ى>6v2L% ]k";;~eI$t1QoLwb7]5H`)x&@Y F{>6sb 2F=SOQ~hfX{'PRԘLx06| v" p] 7@QO;Tr2 V}!fJQ}zrԄMñP;US!4,WuLHN%B]BM/ʎc1xLR Zuץ8|m=N*=(U6 /+9kJR<',ʋpG+x,ivFqHA? 8cݔC7x;y52"1= صy>~'Zp}%&YT3 k`&[;$3r2PͲxvq婱+h1+Ǘ0TݐJOp5ǂv R>%(8ıGU#jh"{у$ <@:f)/1uq^jXʁn Xf;{xX-!d~f/J˩: @>(<ӮS 7gN& rC6(Ii]RSĺ2hV];'I UUPLAMJ=#HHCyBV8Ǧ4G5dz'W-1tt:d u^vfr:>nH&cO0lC\WA]¢]=8wV́NZLj汶/6SR0[. *d"0ش p(^U1DЕ#G#az ily"kxK !~֫/;?-C:x<"Zp$ukטCidxkɻhG'j2$Ö3)mk.9 zǂkN`aTY,͕_?uoE4ЏùtH9Ky "UQ/uQVL !%9fN/oo>TA󒅯\9Ȭ@,08H:#߲^hGcQ ٌݯTsyPdN-a vv h\mT?gM\+TТDإq‰Bog| )\| An7bMv(9Y V Mgضҹ{$'8x9ЊGuէwas8mwylcѤ <;Q Q uXζY>n7,* K~!餀YV#X29|A~}vE뛈^ZT AEz9~qA5X 0K:,$ͥ'a#}hum=Ku]{~KEį9C6]Bus]ӈb$c$d?ݦc[S!F"Ѫ ]1Y>֋=)GV߾}-}șᛅ8?حCN;ROTMk[`Oc65tO|Hա` 17y9=N.Q L R¹!'oԆl;\\t'Iy&,46x`>.GM:AE ;=|t__2K H_SQ{¡5tL7] %X_€#5 j1--U It+9o<&h[N=q|mr4D}tt2 L}yd @6p'%&Mb| Z$ǁr-zLS8d˿у֝ $\ʔ7)|c&5hd 3&7mL& `X,&]i42$8ݼU1z@׀:`gՙ,Iheÿ-k<ܥIj2S ^W<6 chgcqK ;]`8ђ,m߰oW aig²g>[2u /ڍá V}y]|1t aqYK)\W5TdW"gW4TkjH$eN歩 DTw˒i[y7op5mZpЊ/Y>:LV$j ݑ\.$" "toӳ) e1iWTʽWxm5y ]U 2!o Rt{mP#7™7*u!&DohS~ 0v0Ǎݾ].Bl&+~s%AןBItieVnB]0ܾj^No_:AX'7k\V=g$}ޟ8fp㠞}&j?&^bPE2뮨/.~!w*YS*{1#/(]k7hR;T/9Sښq/'w%kH7l(R8۱#NPm`1C ųZ`Yw׆ 'xʲ&^@Z>q{[ɠ+5 PǑ l{4m~2Oe ys3 QΤPpC0èjg&J &t7MهqJ"}([r O]ǥ;+Zpf.<ԍq 'kt]L/AR^_`#4(HZ3#sA:||<K%' q>ee7rix2[AjtZ %m;mxV͑Fѻ3hd U9xf[Bܸ_,M'`^`y:`@ ӓ{ZLK@=(.'$q#z .]*ϩh0ɤ$n~8%': P*?n>׋GϤ`ʺ3ϫO&hFU:k~2@>LcgmK'K>1Cvૼ(RaP9 7.E B}[1\@"",AK R{DRfCqDZt}Io\3!?#(oyn^ٗ7ī,Нdl֖4_˓BNkbe0^R\vu~oA_>) %Z4qD\~@u+0=j.w48p. ÅDNȣ$HpڕG^$ *5k0u2ut"Nӹ*مS?B(j{bfǨL~2tmqh은ځkJ؞3- vŊ3fl;fC ;+â^8e~t.>T% )ULAH EsG;#{nOoW`nm#xrrcd3##( 4Úgl:I>hR @݋đm/:H^UWaa|^ n9K "X`9_G5Q^]ʿ-a θb\IWdvUK l 3FV]1oјs 9/͓"'(K6\b/Dr-VW;O EtMnxMO}ͦif?23Ԗq@!jy 6mP}DXBddNL6n Di׫v{ "!AwlKv[񌤁PHCgʿ8WQMGa&=Y9% z>%1I5J<XDW(FXb";~ešfFc6FDNNi eH qB9܉bއsۛue.~3$%[֌e[fƲ^-3m@Ia^XH?د&Ύ")8-02:PQ\V9hr,8gX )/A/u\Pu Է ibJv=(*jA2OB2L'QA *{^—mϢ.F:Y#%N7Dg%~" HMXCD{n%]+DYKDԅI ev1o!P]8Vd:}7jlv~)QTJm6&i9dǵBM`1װ7g^cU[N;9ʒfh2~įFfVaU\k<]A(Po?phv!-aQ_f7%p^"/UZ2TG&"yZ#`^?+wu2{q`~f*{rٷ7#y7,d$~!ӕ'LK_&b+i>[ 2kYۨz's7ނd.)qq"QLn% `{kf+V$OqlGS1{A8{/̷Fk! ebF)r&p;?;HbCOb_~K+7B.ֹu36Jbq݆;YlFZ^KeK?e~٩3cS6Y@NAŞё6NBM߷ii,_A@YMY twSsX[u

    RcfmdMX^q\`91N|ʙQ@ǓjI~dX=C_Nz͗)ꃲ߃z;lfu]Vr'5rsbDdaIdLE yeb 7L1“ Y;k%;vハq<F$e(@-g:#͢#ʿuɂӆD #R[ˍ .q XBםf4gG)}l@"ޠ!Lx] h;C8ci1lMZo#J'K ;9RCtkOa:zq5Ц|g6NH`uEU,W*_pð< Tɫ\ogq,(t@}刯ı AiTeSVjiMAN!nq_! >-3էN/Dd iNZ=Nx}^n{0vBU oYF4ؓ0uxѰߞYhX4u8ϹD2"AiF[5 v"e3>#c'cY,RIL~Y5"s߷Ẋ'+uWX=S*+OAks/7;>o)yrN{/|}B.i?ڽPź)~*KHh,<;-y.EڐإM2npaܕ_v.lsc#Joco~< 2n+FUʝ=b>T[=i .bڰNMG 9ԌM^L?=W !^ܪ:pk9M6seJ w,,=<>^ej}{QXB ')]eh}(Jq/,~=\9\x6Ƣ AYIM~^{-Hi'5~ bTW)/`Ż\LTY$Ʋ<`Htʷo5عqP1W#&OݥN ;p<Ư^ 젉U}9āzKiALK!nvF=^;ˀLi&ĭ]T~%*nX% I;蕳fΏP݋7)zYWN]Px+ 5eltn/;$JY\DE))V :7ԓl-% /J2L(^ںE;y }dCRS! L,ij,R>&妖kT ' W6ĭqk(ރ_Ɨ<+"ŗ(۝Y5QG_ fqsWԳX-M.elOŞEns#2cQ b)sLL'h; 5g|*# DhᕆL^ a7T5_کC/nX\,kޠ[1Y:v a^HH?/8,WmNP[0'͌`5UAn!~owؗQǟEbGDa]Q|L aBD81 \X;G^i5pH)̗=wÛ2Q5H*TDێ XjuIWIG5tu&{?cMI5Uyzq ŅƇqIj_}az 7ꗲ+:Pۻ:ZDe7b/zkȞ"/euRޜb.60Zƚ]ٍ6%~4 dZ\+0;;!N/փeWҼ IO\7V7YdOۛNCXӅ]cMAI ͒d}e`'OBtXUkJC0wmޅ:/VxlܼD/ .PG.g,,,O\[{c[D!ce%)Yּӆ*;}@3)ڡ灦oC%nXVHm)рUZIGVu ⟛T!M?/Yd<"r|>efQDd}lE@⃵[t4\ Y+ *glF`c0#L}ճ5TЈqHr.i+J 9uH}aEJ|j]8eVnj&MˑnQ)0H# 3zZ/sc W):}g:j`mWiO'tM=5,.^Wa\ŷLe o g< >IsDx=/I1q}ye݉g1P("5W$s9>: Rr ҄˟#EɆ 'LF吃UPz!W`ڼK^̾Shq^~aǀ--oFl:#<5"90I '3PQU=,@!DPpgRvƾČwgx%;ji= >/:/{+,9~S <&&64^vV:"s_q13}T#ih$V7S E4n^ũlwjϤJL|ۿ@Ye=U MHhDO:߸ޓOSC 4M",h.v# awmY )ڧnU[3<26%%@s@O>Q&vkL@" Rq:,]B׆(=Gz~H:j[ o'[a%j9vעh5Ԕ;BbHRA)tU]Xh=׎K$`UqZvoㆻcKH_&vNUjZL+6ψ 8bC"Vܔ1k0?RbS:(SzULܲuc .P*_*y2 Tɪn]lȍH6`^HGkY*Wg>=ʀ&4"ja.nI*$w #>ӓ`*Ë KUeZ IAجws!S|WwOl%H^3٘;{+K!;,Nj|գTV9lS7W̨ v%A_ /{R)kP<5\m 0i(c輍(/СT[^olb4 -} t X-rWT{<׀ 7?pRaA-)Od7Qv3Ś/x_eZ"ʭ4[27Dt+й|HgcrVS\P~0$:0፾&]6H kP 3A{p2SkDTzC@+!Ok{>m:kn4=ǨV|Z.HӤ-F9\xg14{I..~=`joж80 9Gf._1 pn{!|0#tBZOR =HA~`ʪ#z?ȭQbHO:;z!Ov_ _S XI?]meMoA!yoОaI^ -bQlʼ&0&{`Q?@Lg4 +;-0pcZD`[ǛmY,ׯXa}9B+e;FU-k @dt.e@8)8 0cP JlFي h=(;]{-#%<5r8:6IF ܐ%YYӰy0jZ;t^Gֱcj,cAy*^&%+E̤&ƀ-CgڍPZ#(oU՚EH1MS v#5 $VŐ?qÁͺ6#J,ȨU\P@l*LWQk'شV6g7?,pGw_kM eOe(֗iWɒN&=fZMCx3'q7#4i549;!Tpk8yC"g[ kq#d$4myZW&lQpOacCT Yw7/`O`Tj)c-CwYJE,])JuoJSS]a [䴈FfmbV_!>)?Kb|rBM]UC_ ԗ@|sd1e2PG[&jiG;_LJ!JbGgw2`@*\\fK4DMi-75L"S)Sv]&me\B]RяmCCc 75Tgs<Nbvq9 j(]itR?pk [BfY#谥kFڋd% RG~eݤŔ U}L{m@VmHMfljyOd00z#ݧiz5tt0s:drqǞ d#͈Fք`SO"C qCyj1tW?_|+ (YӬ,uc8똳m>t{Q6n)J ta5]'p{~79ӂlo/Ų?_IA,cc*JFny*US"c ":2b`R*U22,!6 E@'np>Kj$<b-Rݤ#'*,&L@̸%躟ItNt/ "'دwu,^EԮ;6Ċ˅0S*T k$'xջ;+Z- U_"6]~f4k3>.9:͑.i2w0c!j萈-V!¾ $z-ΫXxD zAhȡJ|.hd1e5oQ}nP`8Ƃuq @7w=:>iHWQ.!QÊ 7w@Fk%Y 0i ciqoj >W%~QR)A|J-hdX3orZ&ƿ}_pLB*[=f3s[(e2L=~×_;-]p+/qMԔx 'w?:3mw+V/p*XeA|9Kwhʭ&`uG)gH@%x횾ʤ1X#dIV~9Az^y ;}v4E(VE97WIB6Xe)-(bgHZa_:UwLd%:v) 8J6!xVS!I㟌rT XqwWxaLQ~Mim@.`GHq9 R ,͎f̻  /&^7Sf}xt9V8M^9ED,@j}IT mBJmXz]9yLsݞn9H$ڎ.~R ˉny6lW`=p[=%^f`LRSc|!./e@w˜ N}uݡ6ü;HT5Eءl?9(U3E1IRJuJ c umC! 0FU7^|kzR8Fz5ڍ՟Ɛ~Gm Gw!lJ\1kmrj.^oW}<-V"Oaw3N4FN i%e ֝TS#P=ڙSn  䗸7Ǟ/9-mC!C)A9/\*a>: !/5jtxΓYgV'3/,%KUz>gCӀpC'FA\i VSfj; & %E"\5cͶNDlğp5W V8[Ų,P$MܴXK_-iBѕkKvnW|d6X8V%ة0nu;^E ^'H ՃW?1^B A[A~C|mLp؏PAcuWjӧ-*WgwuYQZ!1K[p[T>% YbO X-ܠK.e32d6SX[=x<`ZE[j:`tg5(bۏ_W0s 5Y02JfԞAOA^SqθeIfaG7mjX 2{DwK>`BUs9pυyһB䋰B-m|4?ɵqC`0ܑHˡ)rJ2a4%=dSs݀xBxfGET]Ũc=EP d> 7N3ybR%c#Pƕy)^TjX?uz-w@M& B 9DF?w(]w%%Go7NUKG J%,Agb_=;eJ)̑>܍v0`ھ(tW*_YGAT.7/2:b2*+\(/Iq wd9lѴP (3. S,H?*Ȫ.-XJ4#6ՁI8(joJC5f]qzb{vU2Ê;x xO>/X⢆̙LVۼ`+E+,ܰ -~_u%;M֩%TjziU;x23>V@I4=8P%ڢ%@w %aFd, y9(.Ln iˈ1P~A5SVXUUxYwwqu|xɿJJyEazZ|} KK©38!oʙfxYnB}HK2x-qc ߚly҆Vw`ken# ].A@e˒X%aIEa8d{[hb2@+x^4:;n=U"BO,8ñ$^=Қ]zK5Mfy /-p3~ޫU^. /e1a#XO XIv7CN.c};=a3)d2⯆-Hm.;il$Ɗ#t-Lro+fY f*;Mo1a99 ,Kzn!\iTE"f9h$׃JLKރW *EBwRR G#)Mð9[A-fIhg}ω`HZf; -k~>v$HbIQɸo1R|[BCBnW&tvfX ا<{Ap*0>r;Dt!0 XJi3)DrKj Iy!^ ; /F^߲FL(.BVjKi282?#_d.ɘf7ST?5X|MEi rb_^~ںq|rP"%c :o dcniQ.0 Ei  P(H2SD] $f1- />ˍ"_6~1E?*;s6q ]7 si y}/,#NIjLG'aƳ:ΣF}mRi z_&/yl&]!Fpr'9u%lXH Br嶑\Ya5a־,f6bI~AV"=# 's$q ""\)Uh%u=ҔPE*0??/ .WWbH Tབྷv[ E;rσi s #o@AK'G%ܛ zisv3 ,Vi.9;vvn{;j ]pEw&)ltMjmv ةDZ`uu)1t~tVM$" g5;KuthM 8r!&б-#$]k(p_[ lu)d/#n_ QX}e .uWʚxuc[YQL'X¬rW{|):0-pH 4▀Cٮ(7]ׂLk׈4_}54œ8;6ۋafR{i.걎}YA#W-|PafB$0j1? Y)0gU}#Fo}WCdn|)9V?'pGoƹRz[/[,TUr5Jz%S D4m(Ox %}ݵ>$rRB8fk`1m)dS Ǒʓ-rɪm;XE`Jo@wy!&Tqvט\#}Jܼ5K]+T$ [xgsW"WcUyp5YGl{Jl lI/[*|<,GO~a b8(k+qJPy00Eyɝq  7^cؕx38&U\AJɇӦ 2Adhn s{˻ѓj2"lxӞs8Bꏝ+_*Sl1_D1]e? rT;C-;X$ e6!Ƿ~> tT֋J آȲ;Y<^aM? C\/Ƌ ֑#ƳWoLNhȔѡGaJZHuesi Q_,O+][F.,ض(l.Bu&*VtH9!6nuu^bE7X r㙐f#P-pyƠ}%\+CD\c2"+&Pݏ"xMm84a(>}rҫ$5l>iw2|+!_M#ueתM>ӓgSֺxW=ͮ\c MJѴ޼C[/ 47a-Gia Q!kZwJ/Gپ:͑/yTx[InIpjͮпzk6x!ߏCP*, VD· +;|Jӂ=X+qg`i<猷푭 `@o{ʷ+yb_9)s狌9b,|v.!ķ3mtU\^35:8yZwd30@[  @枯w|d}R$6֮D 5W,gd:=+DꡮRx^ Gv{2fd'I1TOe޼Fh7L+Ü2}6xeJ~u#yzI!,ݢ*$gD_}ъZJ d@`AIɔ\^CfYb蒁 D9̐-eϚ^s7ͥugTͳsx{u؊Tuf0")`B"oY"44/ qGN#-XN~s 4WCW 6a3J%䧊=xpd3v~)GCW<$YI<~i6]=YGd需EA:.*f0B R%N$\%fs}NS(cСG 'NB:)qW1!! ,iAXH9Pc;2(9'|򼱆R&MN=_! B;!^YQ|zی^]gx$b6$qh +.:#]zm?ve' ?T:Zb 8Lwƒ*lY[ϛ$GmY]xsscXS),:d$kHR \ÝM=ˠ{`~p8c!#[Eo;3 b7D-uGz1FW# 3 E?\pw<}i".(&|{KřFAz9bst¶?jj7k$><+Y3eF7ŪVS^-]@b\"OBu>A,bt (Bڶ)ݙ`1kbUį(W&7X@=<:tTm[uVjx|jCL<%?nt_4[Q] ܙZmM^AHC-3^tA!FL |\fh7g25IeBHLZxt0=Gy=?!*'%u ޣuMW ?fk-N sue}ɩ#=>քqr3 0qmf agy䷏Kkwge|,=O*.wy$2=GR }k0ӏAdS-ݣ^U:']r4z'A%9؉譌zu(1Wo~Z-jWL螉S/E;.S` 'gkcBps nJjr =7bu|OUV@S>2΁D٥CVb%?$G+0~+Σ&l&& !M>vu@XxT ZO-J ҥlL38z̼M01_ č#dP2P](y/I )yRڛԇT"ɩ':e"tU 9~tk}n j91 M}y2D-D=HbѠmrssWre  ЊyRumW(gCЉuY#lmǭ\\].IJ G CqR/Y_}bQVl+[q!iŶY7HDCyƁzW'/+#FvFJd@d*Jp P /69f5۠8LçR*CS1H.A~ E(Ggr[y92gpZ3{U Rzև'\Rz2a-Zw+8w@W.Fs;N7'P^#f]7h&=/( f0lt-X8֧-uoJMmҴ 3ՔF:j{F]Zu2`N0D3ﶉ cSd@T9W~3GM^:cF}HSc)Njm38Yet j N(5TͼN}@;Ԣ݉1GxsWwbn^Dg N6رgIw:_{M[INj`d,?2/1޲}G䯑;.tڑ315X! %9< Rd^jQuoGh>yS] Zۭ(n%MGtwOTdLVo^k*^-c7$(P zfŸk0V]o!@jxB,~"Ya\yc8ٞܜtPkJ@241T6KEYjb/ wd`~}NμJu0:O#UǢ c:O܆"$=Byq>ho#0cVG(_V>7>XpJeqa8NGX^cAn ,~+Ćx.̷RY@HZZ4/FD?j5".[MPoY7ò9יK|r;Io%΅ϯÚޠ)&~8dļ SQh4ot!d t 4z\So'tį #c=/CtD<& m2{^W WR7ur p;)T4V⠚D%Kw7i-0uu,֚ :Zwk Dp bIS6ZPόMK^+G-oРM p yPTFQ֕s?{:۵#i&e7Ȏ&%q{}W4chBzw߹/ V7tׄ_Yyc1}qO=AɌ D`0a -o&w3lPľ_6^%!䰧]mflȓ)蹘OLEMy0 1d&xa4` kEn"O8rN{u9 p飦!m!%>ͤy{rdDnfyRZ:qg-+q>2Jh[;T OuWW/k` HϯL+X6-&Op+0@1S=_kFy*35L2㍖ }ѥT0rnXG|Ma$8鞳0G<( LLJ8ŰsMў(c`%=śdLwEcL#X 헱fQ7XMKB_!+v|)F+}mKC d,%FnLtRH8Ҋ)όe&4IOz#5s .ie4{!cp렴hcfٹܷ@D;{-5px~xdkvg "RA:9n؇mY[WiӮuۋ$׏![גOpmc1-k؉aY5qv,,a1![u~ >ù ?+̪1)tYbZǽ֗&]rCbtp2.880ܺSJv|hEڨ=ꑡZw` bAfbىE*QO`ޱ P&jм=,;X#`PNڂVm 0z(`y YplDp[ܰ{svQYb5ex'Gr/$hr0h~qCe7Agܶh=A.p:0n$F b\=.Ժ[_1R$xEƥ¥a6X1'FIJ_1Zt!or M`_(/?Hۯ]!GzvgNl]sУ]YSʯ+¼G`A.1WwYTۼr?儮tB_8VWGﷲkfF+ɡ&sXO\Qq=첦o 4P<]f=|BK.[;$a)2frB VԻ!~fuKBF ?u e󆤹eJ/7ͤ-Id_} Rp1rUl9F?&%g~\ n!/THg6pփ˼ GٹN[2QHsv3aЀ}KrFC;~4G11)<3 j5o`Pet!؄Hzj(xB4_JU±B"˛5r y >u-ʾBSV - G5{P%CE i:+.UP5-ij@nVI j'K R$eE|XZ W y?C|Š 2UjKV?GmV|?}[Rhԙ z,  }6 3BoPWa1V>V =fA<xltbWN [ZjbsMɽ  x<UhNPC4'ogn8ݏL,1dRfd#هm,|fn"kLVeQ̥f/7g+FC+g<-'! I9_ÛoosպNOS6#FY5F"}?Qta|gɷۘ:=-}QV u;b9&=ڪb E17̬wtԲK1iw{Kce!!;HEJERvcpH[ka;:˃mFKy-Ivwv6IK̬xkM[:"T8HV%޶:QCrk65b!A~gM`7dj BlwnC 9)r]mPqAqȢ4װ1.WMCBثƌZ6V7 CyO7C=bE.sJJ,bQm¹3d[UMl9cG!wg>Rc#D֗.]7PZ ̣=9չh[C\@A<15M?ᗏoq+. fR HoEDMdټnJWQUcE?-,2@ n>K h / -RH<7E9u$$¶ JYN%a`Z=&jRB8rnB*'~dRW8;aP 4o#oOnZĢ*k橑XH!'͟(~IM˄=73CJFHkJxD?RK}?7GyLhjͷ޲"'˨>nN\!kj4Ж}&|~"JW3 .i9JhPQj~E|>e*Cq@av~|jz~-VKNFeONS̥#+v=.2XHnj-0 ,;-mWtOB15P*HDd*6p5'ap0Qv钉;$) ZxK 8-0[̜ţʔrM>^dCr?VM53ݚ(cwHZͲ0Q bt->0)'Qa ~E6Y.&VrmsF@E!xs# r$i,(Hm)HaN"G.Z=2ӕ|cyYR!6aJ(M*ɼ,(ƛJ!HnSHʦF1{Rȍ('S(ݴO! &EpEPmU, !#W{.nn.:c)k_Ucg{[Dt}*{)쉻]AW.ܙ_!k]=z@HShC^U-XM8ک6S{G|Xr`i$mTk$t7ݽK;ul@&n,2ZRrC<~#e滾w|5}!(x&ê,!޲[Q:(0},l$8a0@]霶i˟}q9(L+m:|eR$*%Y\@['3#M,O: 7t0*(FPyUS~F^tq@xJhAd]%̼sQ,2p|yRSQVe"패D?/W!vWW(oYˢRMBʳC|}ͯQ@(֨wٹ'đx9k" v Ǭ~5E9|̨HCGmjLP.eYѠ7R}aWlHeRE$__?jg+"O FJ.MdطAn>>x3ׅHxD=rwѭ:Ts(|E`484ݐ[9>@89pRjK 77_r@-R۝ #ݢhi/ <c2vWژ462S2`~y{̦NU7RqjX C-aE*0SdA5FgEgt|vmaavkNy^ lyxnG)09)9@TYK$#_|Uyξ^ l?G nQ R)/-6]WWh y]l/-ֈl_JX,Kz-\ !IZ76'`eF?ifU^σPmIBgma_RW%@fߠP%ℒ/`%M)CeEZ?VxF /|16‹@gW]ڐd% Z:=g`_}'(7`@(~t^هt[??/J!z!E*Ѻ0L#qEk'Oڣ/=7-9Zcp Fw{ӝ.KëzSA Nd,ükwB Cg#SO7PmW!(oxƽ/7@M .4% 5\CUЭRQX TŠsm>o)aMqu?OD8#²3 7՛%pDnt 'sJF 'o3k&^6 3dhYN]r]F8n+IS~,5[ٸ#En@Aw α]bH5Nl526Y8j4t* \Z}Z~T_op(FaMq w>)B\6Ko1CEL"9Ӗd?@ŅK?9ȺÓ6ϓWp]E\$vp.c@ >o T^Aچ"%b߯y[b47 S}D"J0J/ݦŐBNge;xN13`_dSAT \-I~$Ww4z"\QZiDd-'dɽ$nV(=䊎Hx]f 3Qq݁8IdPĩ` ?"fH@ܯ' &Y7h'1ZysqLiYok[HA nɱub\wCnw;^Ets>iK.; ]3ZbxsPBA p㙂KE*;>a` ? ĦCߖº>Վ@5'0'y5<Ȼb?G*AH X<ڞ]^DI'1F08.Z3nk5L })b gg3.kdlR b'->6X@HaOoH$T΍awKFzs I:_ƒj=T%m ވz/cSv rN7aM΂#{RDHR sQ)[].…,ۈT^vAH՟&PUfOe9$hn3bF-7YGAM:#^hH%Wѓ= 0^ l&4EԶ֛&ỵ^Xe5_-Q ozz?/f4UUOe&򊗰 |R bWqFz`dS&*륒9t)~feno7dl&Hfm{: t?[Ӳ2 ^asVŏXj^ya]ڣvI784yq Cl=ze{a7wI5ꥬpPDr0Xn BgiؖYN!S԰m;Y5Q^Hbn8kG5rjmhFhzZM8AWidϔ' ^7cW],LhoeK?~4! HfrŝB#YCJSrJA0Camw|Jl"&Ⱦ`Bto3C"0A` Ұk\Ry0ˑe6iTN~Eg&gN.6ͥQw9v8xs|ƌϐ}(mtwByȘ@#;deb,]R-1/W3ЎhbHx(5Koeѕ ; Gofw@˽b%{Kj,VD>K,/cNwR<q J[R%mqo{pN}--6e*Gez{q=HPMFؚ͖>a#.Mhi;d xA^(҈J{@?MJ5" ş|>>TP! gH!@ -8@B<+Uԝ΄ Js`XLrUUӔ7^vko P,Hf@N{~ s$/̘ӗ4_=tJfR=@ؿp#A5mPm;>k`Ͼ06VUk0r1]i$A#K <߭Kl"IZʮ^nm;hkHkhp;'c6@wձDtQh&/a?'{ǖVNDkDߠFydW*&m*L[]ᩱ3HBa_] W0oweNa>HǚoojzO[=ZecPԸ7'9w0 x_Ym cFupB z73׏+L\aշqG=Ujƫ{ў465OQToW$ zFJ`(/Q' noz-`bdܒP]ALCv kufe$72pׯ, y{+i- +6.=ӢdPDRt׭J~/zB.3)fuAC=o5؄0}cr:(7F&r<q%ĥ ̯ ⹸@/!HuhS~Y9%J"y[7>ߡGw3^6;"#AHN? @۴T/I{u_;)ʁdb";&=XM$a f/ݘ~\=҉߶1R5Zwq52\d,4#G C5u_ԿvebnmB9Cr'Fo̫{YFś? N8?l^AVX%I~Uo a/<#JQtFX #AeƆl꯭PJM?"3*f:~;>Smw)~f)%GE.SX & F8b@~uB}J_pS&&O?k= 6%bX:R㨊8#3 m(aCF#y6gj&)RWRȻ脪 vkM+#hkQ#3AOPy+Ձ *@ Ds4>; LW`9 h*U.> n_QE]*^it!O̔On<*~.db܏v_%Lngⶭ^j10#XįFaZir(J{jFd3ɨ!m.a{'sPNdvB^IAma) &`hA*6wmjk蔧Du&U|ɂ;dM@Gf{dI#Fٶ`yaÔ`d5J+ BA}R1?K_:3n#ve+h,S#8Qi!x(g0(0fA  FV=0ւh2,`?]dݞW~EI&:~PI>v␮GTD:Y]IB*#URmzc\3cx{`C nkZi=_ΞŠ0 4TdCn\<O; ˻y p34nM])=3YS'/W7I@ `pdHI®8R_ ì>X"o:ER$Wʣdq9R˨c7kٖde3/Gڬ_^kJ L.X(Z2IMIL-(j1]0 ]ߨDՔR!j~_L1}vnO#mRq|u: %V^9Nҹ|i/H߭wNpB`U; LV2uQdz]JʈY& 8[ 8!+wX45ܵ)_j#r׺ݏ~9<%_ŸS=}o9IЛ:Des Lʮ_4?P.ˡ,5 ?!!t? Jph;Xb#4Zœ+N ҵ,UO2{#̚[q%zg>D%hY,\R)˂ ᳎r]4 V=*Ό.}60h@IJ\pnrZHǩ{t~c^2s8l:Z)%h(:Ja}1DE#7wH\ef J~]VgA"b!>DCFz*` @wU(@UpA*8S|cA0)o9$CsG|[WA! ,qH|GR> >rA$KC,q7jd$Eu]Hj*{OV䐉ȱ>N m5oF 7̒N_2Y BЎƀd5u-/Խvp_feQ-*oe8ubØ7Cx ̮Ht:v̋q3g,`u//uM!Ieir,]0lF6v؁?dfB͒ȝZh j5k0v 1|,8"xd_%}dyyaU U3L2VE1\1+ԗ'\]`YG+7?`@={fQ )oЮ#'rV0#qꚬPǜ E8ԣrfLWiըe^^^p,p l3#/#9`11ZɈ/8R<3n[+<1:78NW#B1=ک+}teo?\laEf5UZčt썓z%΍%qA$pYs4p^`) /@%utzy$NĚ ؁p߅ocJslTϾm9'4*aEtz HeXs/rIvS}`sJ齃pIxc< |.^i#* 1Qp:@-S4˷Zĺ_QJxrt/~pQ[@hƆUac} I-H5 mܯ" kԿC Éٜ\ OerƘU[2qƄbvtyCV u.^ N~}Ar")CNJ2 +fc.u6dҬ zH]$D_;0QImʭ0D@/` .ϙ乎N'QFC_…_"F>hjX1Z :cXc wɴG/AҌF$3&9RJv ?)`E'ᦓm 4]oͺ3$DqT^g+5f#2kmZ~iZMW}U,y` AnͬGB<Ġ퀮7YckZ Ѕ9xvv3(ZG0 \RR=-,zR9'Q76lc!:SPnk:5n~!HEHvm;#/T[+|+RDĥg^i c̏T`(v6L1Ҋz6IyrD$WRDj0mmIjcl*`k A㉶);˜5Ë&Y^4 Ⱥ̀~:0y.W0in!sVfZ,F̹*J-~=_WY&!(syfh`E6ef3fI@~|O9UIYA*OlB9ڶGϖ1_F^āѾt\q4b{ "7D&||T?b*j PdXuw5Ѝ(-1OҋUCɤOiQ뚟W 9^DRr }h6w#(?fR"hq4ڬ};RETq_ /d5B>; ;kFk."`hɭ8qa0hKZ9#tr[+}sTVĎ9c6-CI:Fz`eB;v%uAFC >A׵}bL@}]O3׆RkUȐntF׵+elerIp@ ǯhKi f?3+`G>kx5d /8hsݬI b aƜ~BT6fXA` =ok\r! N#!p,]lBLڒ Y{mK=Ҙ#8VG(}wVO\n _p%ߢa4+K:·A]2Dd<$7>hcR/-+d9 퀀k)s ltly%KGC~̶o' t&?b ]e-¨EȪ7lOfbP#T[k?F0jz,@׋x3+ݳǞht'#w 9Ґ 6zZmszT ׿/#&sD .YXsTɩ.huZJb$% )"ʹ3s[*# {# &HD[y% -P$i=&ʳ@ }$4̣]ziT1d:!(vK{!c ӁXBEZ#;< McWD̹:>"kMx>' }P7%}'QfEr VYπi&mO[B

    {$r ɟs`OgF\@Ѩ}M\RB o9,"q3屝5V q*綠UE;.5saI'?@CDvl)a8 ےiۘ 7أ VjFL wy$[X('v~(m?=.;-&pq&?E6iܗ%ۙK IZ`z2DZlh_d, Ur/=_KS zuDM6&:UO"8Iidf)n`P1 O) myU([?uz;ijVca*"wDIr`<&bu~L#-kWW7c45SR4Y֋޾b&ROkh!zZP"pa F !R!2 ?ls^Kt3Obu` JmwZEyylsj<S,]v ׂo oh_9Fd s`ZoqraH@W]3n&.D`jz3[?(51 $qoAߌ>6 zKރ daRک:Z?=`# "yx;<#YE4గQaAlhM8_q2$ɹBR5زAEɚi1~~qӺ'f~wH?m3{,nb=%|KW ZV9slpdyT 9v;dj !aO%J>?0 u8?`xkWZ6s"Zedl_mp@G[Hrgs>-'.0L->>E:HؐSJ;K"@s_{`E)< P&~d'~*Ci.o/wqP6'X;R5VP>QžkOj!":bi]VkƦ u` q-]%g,0ޅkJfʮKщnWi"- /_XR ;*OBC3J`Np堦$6/CLPyAhӈPVrFYB}H̟vTÖ9InD)࡟>v=,z?qBPIrǬ1?E/T 4puG#Ij0N5LB͜Od¿(hFXGSHnjiw>'.0ʹ; Sm:H.ҔX(YGϨŸFVK4?!^J.,>e*+TJ}U5IAT@|~cL DBM$$!ooljyvVf݈qk'@^q_W#M4+&6uLi Uum4Y>FGGӀܡv`sJ@wj":tWj:kq<]2 nI`>. X@ZX9#dB#Lx NP؅S ,f\L@ *6^:owؿsHo3r؋\γ`VQ3g6X)~LQrۃwU)9zKOj FLc'朮Fqm Ŕ/ژ_4i*FøY2ttr;Ät3<5o߃Oe 6Q7'>"|S3J(>'jT́hWG!J}hܵ;$`Yg 7.DD4;UG'd"L8-s%yxBmv`Pv޴ܼ srD1hِv; T)-LKq[a?&Aٵ cxgMyKOk]P50V6Ŧ)gc]CD+7bް;]a~M /;dNgJ) 5[;!;:߃&bn6.fZ?lli3YWxΜqSvyz׾\$,Bc9J/O7&A$ fywȆ 69[9N˺K~ߑUtzW.6FR6 K'bZ,hNg=P޶izNUT[([CRɮ*w巰 !Fe` hqZbE.i/WP>p{il5? ɔj)c)to{[y`~nYUE @+Xӭ> -yNs]D8jǰ= 6!ξNYG\JVim_QZ`\W4]޷{㡭EL8i=6[&\ږx}s.KB,ws'UfJ"0ée.ksǟ$,;dB)>Ylf@dGV9b*gWM5-k=+KM XV= IPz'Wc?tYa+q&=ӶVXŞ)bPr3 t"Uih$=t3Qha>{.ss(-C|t*-;=Q+'CT8`ݠG=v57c@/Q׈@͛~ĝ9DA~ƒR7]cSΖdHO9Hp7wOc3j~C:V.YJo5D\QF9X˳@PnB [KL+]]S-)(w@SndZ ޹\g_O\qZ~\_b3Ҩ@OL(W~gIB [<-JB߶$6 t+fUR/p?%sV7k=U2p GA2 iW}b Aeų!o(L)@mpLȳXk-9%xWyM syucXD89'39|C*Gdz@כ0 b'}=l/, 3Bms:{a1v9_(y)/%iNþf#.1^]i L=qjTFf!XcC`ժRr:Pz3^YKf& p  HgQW.eNLL }-хNol=g暡vA94%X gi,wTrWN$vgVHyBaP2ý4,~ RSS+E>/Zd s5(^QpYŏLq:\)f_8TaRR)A85 =~ZɁpk@C|dZi5>AsX`^Y'ӪiNǗB*ʎa=n;3t3 hbk+s\l.h_X@A .̆4'|JĨ4\C@5M<ژiSiaP`u> WW)̉n/3rnPBU 'k4X}^wCNWG}Y"d6%8k77=c pqwkioU oB ZcCU_q'k"/G}-Qh7ERbdjlpD78t0q*U`G"E@X6׮HĂvcW 8?}ubRfDE'Zrn-so?ƲPFRw%\X!Riq=; ^_v^՞)W鑢YLL!WcDܭ!AN$!0oHl[zFE8^#$rj \Pc^7$DcoҚ'exO;mibM>/Z%` 9%WTւ-5X2ZUa.Iy3mDW*_; \Ҍ$2&B1@3zi`0CXяwHw/AFсb ~@)J-4'XozBXmMSҹ8T-=2?Ӑa8.myQq3V{^g?o쿼/#\Ar iA"е 6i=n2S{J@p VpEqI swM=Fǃ-T ~P%m—Hj)-%Fq@ bߊɝބ\)Z\`liG lm?l2:];~UXA3|d|]JRqF1<-R<pZ_o4)aa8v#+#,AX岕:s8cO_6bO<j Dū#?F;gTykl@Uk;u _ Kbr'TYUj5Mu,J ??$Dp|ϓ72ovq'E,KRda ]%+|Ak7 n[C!{!D>QyF t Q~@Eߋ/*Vh`]YcD_kf{rqΏ/JmJ rl^oc l-Oz:R}wkLnPTwYg5)lzICSsG_b̍5,1S]8XTm m7Rf'k{[{4!~yT.ҪƩ6gѪ`p}vŒ\[mCtd[T<fcԃO=Y*t8#`CEaLL$濂:ʟ(kjTk H:m._ݹ{+)\;7GY$,w~Fބ{kn n*!4E 8=S;tzA6Yr pJ}t݌|A)1dѵǶ;ū[g,!YBfJ-iHܞЄRd!6 q^))@| ibTۇ_j6TgjXsz6»+r g*΍X[M)~_ǝWb,1qAZef8v } 2iU0NcfarLh,-Tu˗ve,|e;sZmF SnZyHR4 N0|nfi) ԓQV[.o^-`hw2:`.WPfon$`1bGsɰb[n0Fyj) v^Lo+IBJe|Di OmH:>ض& Sj4N'7MaYs5_2ջ b3c_l ^3 8F1}lRaqhyAdmwc %QhGO2&f2M6d/i{'k⃦2fs9DѦz76m;v/ u(i p,Ng6 KNKGnj뽓Ħ 6*iw7$Lr 62`^Pff;Zm'jQ`zpWЉ~D,t:{V4rS!ϲ)PGZ-SP(4&%pO@Th`4d9*tJl?N'NrT~iWv\6C]2#^F]t 82G'jAy2ܪv{‡[; 괎19h~,%(F_,}3xLڬ)>Ķ -HSэ<hr$~D1zcW^nK _JRb 'e)";p 7' r/8cdCf@vያEcD0ј:K{˳ךKau!\gU#~F)+. Mx` #1 O{4F$ }?}tL WO`/Rsi6D6]?_j;cbM U^Z4']@{#mgze1~뛢7y?wua;Vz6oCl)\a fW$o?-924 5{rcʶ oWNT>ŻFw)ZX-¸$"VR_%e!I}/_ kZ5^Le9 /c93Y J ^{+){Nz b*߶\xK42ayl-hbJT?0pϧ9nQ3Vx@!^Wsj!}ˀ:1*5hO/n/50QUv%BhW.zСdTalKJ:V=QyX86xx#9 H#ǚ(Ķ71hUVi}0Y5E,nHKfi? Նf e&9A;!^YdrJv>5݂YN #jNČ>bLcѥ.y%܉ gnLG'&21"z07^׳Fb_D$ӍP1oo,ۦrk6 "᳆:^ 𴇒p5"w1h=?鉻S\P)5cu1x׬]2 9^,@$T/V~:C"$d +rT b](6RК$N$`\`?o p~U` r;êʠm2h#>}Gˎّ4ެ5'O {^K.}t_+dm;Ek5nitaRS[x~ '{BzM 7@lVX+=}7yFqF$b |"f?[4G^9.8;QxwE_yNkI, 乓4˯p]Y(_b#a)ң9Ǩyq6]SgOSiH(M8A3s[> r%mG /k.d5w>a4'k8{0fji#E3D|e[ՋB;#Ύ.̨uWwwl *i#$`q|8 L|ԋŏ Zhd\,<5<WRB`~VLܜOEhoLг$W(S`7}d-fftY(>>%AO/AW do @WowsDU*Nf\is0Lfўл>P('q>It֣ѵ'j>]bDpc{8m۵W)2Fx!H]?0x! #&U<#BXQ{ $8iJ=HCj`VpS@NYlS_cc!G~GHQM\7׷jFB!3c*)|I5;PugsIXkVgj5jp|q!< 2G_桷K^ohAOTa/uJmycRiVPS|sމ5GDA a!n{3p=/ 5+>Zw'3k`Z.>nB\l h!KR2aƤ7Aف'pӏon* VyGk`*ؽ*jt6ΆN?$5A"*t?3vƞړyО|quaaV|!M$rÅغc: (k\8Dg"M%;60oֽuN(pd\eS}U;P"Y;ȱy /&|^ U%5볰LՙW`27>+}5Nq"89'Xc $ĭb]6 4;vC{Zs~^[6\x44y[\E3ٱBIpS*MxKFC{a h@3 &Ix ov[lA\DnYQmZ0LB@ubƝ{>%a,BLKp&QGlhS 3:^BiCILꑆCrW-IqG)V?%5iQ&$I*ʂk5azA^wPu 7ut%EoS.i\RKNIs^ԧȮg&graFż_#Oҝ^H I^1-4|w$p#i_7%度͌13t$#sK{`}0zE&ЯL%CUըꨯmM*D[-˷Ϸ':j Gc`2#BctgBe˜ WEV;֑]HJ}M[6 \+: (ň*>„mP)A'߀`҆u-uK~s\c߃]xayY&)؟Z a33Nb\["uv)P"giـ{!OA` _"w}Z2wMDAR9Kڪ?:O&8ay]'Gl:)e^jW!`Y LPKc LC25}h5p(߹Dgg8 s~p܄Œ>K9 uK^r:jj^\CzP8J9cv>Yjf=֯3(ij%{_ H%ӲRQ_$)%z"v!\b,XiunѐWrg'yz!?}"ee)K>Cxo&O^; ᶟQh]TB+(KZt>ZhGASpGˡь*wTszaP(`P(^~ @ D6f3:a2{`zkk=Un@3^Ns D z5h6!סWV~$B#q%}#-7MfpPxO *dY[ʼn.._>' [ U0lm'Lz9&E$>!($XLV+cT|bKVF]`NVm@VR:9Ҽ~эHD'+4OC*/NiD'ЂCu ˮX޵?Gx+fq b[X -#o(C[4ͭ?) g@N1D >UTe"N gRm$vu`s0jw,y:;=O 8މ!~2M9yJ[ӍM*y3ɝnh[}eY*D6Qy/?|o$;gG#7JG{U_f֊$tѸ2 Y5r^!0s6у," bP%-?`>}t*/J+h t7db0bA)EYje ?d}(4ƙr/MQ4Mc)E>=qEsڭڦ-z,ƕ>'iW!`s425j;p=@dt' UJɄk w4Mlҧ\y[* j.:KvԚC SKSx7Aq[fF F4gS3 *B<8=0*͜bkݻj7 GՇk{zi {GzY-J#bď@BAi{yo\%am.ŴӲʣ*?:aȔU01zsfcT$ѱX#ӝ[,w0U6YJêǑD"k7ͫ24*qtl|_zM`Qsz)ǞE-[q6 @8Qm]/~i$t @OgUbY)pwՃzY8857jW>47vL] f4IkbF+h4}oh1xh:X[Ll2=P3h2l/.c)kE<$/0̩Ty f CJP*m!ljLIA4%f#g`"ɻ} i,+$ќ]1y]MDu՟_."4v|?9kBlu&5٘c~U :`c1L4٥~ =pE+?⺲żGdvOX\,c/wA5Pv02uFĂxn2MDZw2$;$3 (Oqi#/wP!, mW'vEfmCVF^%iRD> ip|qN zV.jN&/OUnF=7u7W:V]Ny'vۦ`ݑLRb!BrL2dPcBJ]c*Gx E$:\bt9C.4Do`.0nvt4p4?ӉcP2'_$uP=01&l^Ν!mJHF^P6;`8$$ף#Z 8`J<w!b7rLʨCV{ ]4 WD4S݅.9y]oā49U3ޱ0~Gd6S0VK7U0|]M6/j4%,h{oǖmX?P.g~3`-ܐKCbøԏeV (UORYfE3 eXHw Mtu5'{W  %},X~M ː * [noJu7 ByR]#A֫nJ):Ŵ1[_,cqg[5p$w7TTW5t7w_!$*7+5diG0JB\t^ߗl}u_3Z3m7jD yDR!L_f ~úDgD6ڒ:o|ï[$Go@~RXoH?B CroK,]Xl7brE"/\`LZ[#5J<8Y2?O`㡘'螔KL,` NxBTJGW &D;b>U{[_NNB( ˭f_L$ Y%_WU2ތEPwb8nfssDbB2[J2(jhSffD{W#qWFT6D0R %ffu?zZ^i/'I@ya=Wt'OMT&`xxF7CP*]gT˽/=~DP zeSBMU(]<^`V2\ +O3ҥ6<7C/Eݫ\ZL{&i{w|*ؖ2gà5|Ax"i 7(6^t_#K$ǝo;qh$9c!a`1mwfLk1vᡞp( o  P@׭>o>~' %M qx2]A/[<773 ?[ IXZ2 P}_>:E 5صːLJDV"F?cQBMH0@gfHC 4NcD|dc-$ԵRSe# 3F LQ:|P ̝#0IL=W\MQ^V$'PzQ='0Od3a3-0dޙ`$p:3U\ݏC9y۞Lܵ/ZqH-[@LٰUd#XE"Ɨ`"vno H1ƫ}No؞Ua^,CNwO0!FwCƼF[iPeEM6{ƣƖWTۤ- c^v0IӄH/q b7EʼnPuİxHbFw%s-٫XJCϭ@ȏ^fQq 4+xvu4;XwExRl\аf6lciHMK&%ר;Ž%_CY"!>}7/59bp9Ow_]cqx&MmGYw!OzZFSMK$:AXv)^MS+P6~fƐZ̠Ԕxm围] `~8MF K fr-M2"l a 5O|Cl[/IX[$3Ϲ.&Lpܵ<&7,Qu ٪AP1qf\3"K'oJ(9F+3?;Wi8 m5su@,]TM~Tlkp4dۣh5 ^Qx S/(?X'WgIrR1CɅq#!u}/ bsioڴ];J褟@Ga^ZĎ&00 !GI0dPC ed@ǃjue)H٣MbX(EN ya*DF4<]㏢7/I"hƲXS^\گhl`Eog]m ` YYs`)3%>īYJ:bi&,޶ygbCl+:l@C(ӥ lDIW%C@gbf?29L cP 5,yx q䝿oXfڂX qk)w|*} J1qйDnkO`Ljc&Xb)hGh}!6,eF?w"u5;صz!)NqpkŠLZ3ytoF-{RgyPf }Cj|eo*Ϧd=Hhi5cH_ƌxﲗ[ߨZjWZS_?ihd2z|NǨV6 dZ˄m0Q!cMw .PQ3oUô3,ΆnctWC͙;Ӹ3_eb`Ȑ\F%O@]iۧ[xߧ ,5 K]R΂ %g%JTl.}?" !'3ǹiҳLDar&갅΢SF 8x"x0*Ķ"|Z@ra0J8=\M.p%B*݆60JD -&b; y?"+QeHn ~¬.9Z;sw l㲊 ?|΢yQ p_}u@RHH>ހK.ہaT/3l4[0V TRn|O;]٣ M_u?1& 9a(ЋۛK{`swPv I>HAX~?c\.3LQ rbK)#?JNK$,upSO?b ٳw4GZ@ ^c\Rż͕]BL#PtC4=,ȦO|zpR6P.}|u{ V$FYCGJ%` 7GeA3xWqyYX%ZP%*=D!_uU+ƵolGi˗\3GHw_Tˣmu( .iDyql,jAx%pw.J$(*%]I X "HSHf,mapEk "t]mCg@7 ˟ nmwƅ_Tlˏ(^lmjÉ9낯`Vn^ל dN,}I xS &е^nV|/;L褔HFR#J&`rO)dm hH6ap]"[~3)ʩtgW?F=t' FٝwZ?{;6Kn@ҊlF `o_JCHsPe x$_TiŲ937iML(5UL/aR.\ՑHpngCd af+_81 0-$osicn 4_'KPFL!Rݍlzl sMcI V+FhvOϱct% Tՠ- f2xYp,򬏾X?FDz'-T[&gr0׿%9S?DLu!VJ7.WNolւ.@L9B 3Ӽ)Y**S*dB<: ܼWMnP1WhxWڦf3G:2(U%MHu8~nEQeN5˂ ̴enŀ+qgq+`&PXA{(^wl8Pp:0Oͧ^3D_V傩˵A;LrA@cmw9!Ϥ-(AD*^%/I5$;ipk.Zaqu}_V#x!;G>$ędyXR'9c06/=Ton \ T>밫 tQSH4M%Cv6鳀mz(osH[og.+$31u@*=&y.ĸO'HZ6 Y̬*k`{*鍀kA%}8?*l~: n[Gf&+opޛʪTHS?Ht")9WQq 6҅m px,0>i ͪjy]pY#Qit4c,y: %sxUf{#&}bgD:d%F@X %%y< 6L=~w-=NW&4H^nC_\x@JHNlJ04q6ӱ9W׬*H@,SAg!"i\zf|-K&L#*K߮'M.ڌ/B)g!RaʺQK&gc` Q]ZkN(nr!6\Cwf-bI7pY Y0E:yf xwͥbn^YԳ2G\oK`CQ~fORxyR kuJ'Z}p *}nƲhc5a/wy`=8^,4G6|<ˉ{OEE|&D9KVc)f/ΥlfQ.8hQ#,Tz/kNjP/<9+70uF4L(x;|hr rL?ݰBhdB /͋Ի"Zs$,?dd1p`Ͽb+)JC $cp8_lZrzCiWY hėa5*9]ȅS{7{$6w憔Z}ý 0&$=ceX5u%X1=p~ߒ13m#aKn Hx~n2ok)HŜrQx@ѻ}}d-@&ųZHA;@ O_5T I= 0}cDu+TMMƱS.@gF58)iۮJT1 KCrqKfogjK3OyJC]Bx4T>HP. Z$iWмm ,@ӿI졓s7헢Iv|ehG;"/ ׂCwsmKaL!rȑo,jv_[n(PGC9ʦD##΁*;"6AK"6qbM 'pT$u72h$E/-j@zM}FY;LG+j2XvZ>ˈ.PD"ү_^}?zͲjU=SJҢSg]Q _^^d# ($*sB*2 E4y4q['[ģ'[Z)C&.EzT)*Mmxb6{LW*ۄx_׬x!k=;*6b"7#)&?"0fDWy̷|1͔-,o=_pqQyg= "u, ٞJkqx D@)Ni~㰆=U-+DD.wQX1[SjXW#ׄ+eF?3 }Clx/C6̰vu-^놁z-"Z4(vj#cԽt%|^qo!T=K{] E%xOd0L(Q=$-d%eǓp~;&;nQ{֋|{b~Fl(L='D\]cYE`)%If33R-}ֿgb+\T4FxM[H0҇N_nf./fkI9󥊺uPa*,պ{G].T3[C|]&*9q;!:(J'`QV΂PDٙfڼ`P3BDIIn;MtuIC>Ue ;@u!]e`2cЛ}c %- =fb my-pn|*&Ve↸^`WsMs.r8jRO`hְYULK;P1|9N ;ƃu4n{05fR%wW.5 ٣Bl3!xh!ŹN$X_P2I ]<DpW8#9!Ns`s *DXϝڭaP} Up .U`YK1c>^"Q@یS)p+y1QrOlf۪gE8(['Kbۄ4f|+nOdbV 7h\JmQ[.dl6䇊̷Ed`ql!'mᛳi:jfjoG4Ү\>.a<|]`MVzԐK ;e+Phtr"պ\nY*}`cČCErR@'"&U9HJ \M-Ju1SF 9"IO}_큹ץw'v&2`Z 5S s45 3O.̬ (\XyR7Jh-Wr scb|W/L`x<.X z6AO?0l'U+bOeGٲ Bg=kMm: A -Xkh^{K* 5:3 b 1T[9Q}8KhqJF-&?aǹI.DT.s4:ĄGLX`֦'M3h}q<3`Gn]upx"5A&8hAKi(Q{_cǀhG!b`)wiژ8X6^Lm7,!ZBr'(˽ #wܥ'pY?Am,̉VĭhȽD`kCot7]ޤ3_ gZP7DOb03AMEQ#?KZکeLˀ(.y0T~u>jPJbmTibBsxiQ5J#-;BI5WZWQ̙V$F;q~K3UbUvčUAn3 <=s-!.au""nr[5wSZEOhwڒ` `lB1'?$ G+v#mKY<:͸sd_yK s%&?+! )AgodvyPve䈍/ FMG^%ׇZF{X~2܄j0xTK0ZOQϢOT%\Vt n!i; nVa1ҐMwQ6L\\ew3~|&9II- d4<4g?uථG1ts"zTB x3=h=YWBA^`#6 ˳V7ЍfW-X:0wzFGI⊦5]Fk3pȩώC [i[+7d_﵋ ϡ5 @~C&Ƚko25% LEvdI)=6>u&}W>BtfsϴgF_>5&iY,R MaZxC\!} U9OcUrRR6T wBn@Zr]\¥Y6& 7YrRE H5E?xrf1=d 17\}+t*4^zВ_hp%LxQvP{tF|l2\M&9SL.&31ŸKʎm x:G0 =>He* -xɑtL->*`FJصMUp@O&d9T)jF5qŕ}~ULg#axZ|xX\0Wׅ7m]y\@%ʖ ԰9.BYZ+ib<>. g9@^U`Vͷ< 4=Qa%,@= 7:5Z+LsHQs4x@.Z \ ɪ{Kl^s2tAE ǍST|]Ri W$ 7ᣎϓ$'q`C/*lfW3}Yg |V②ݗ@%ᔄ]vƏFh"q@mqzjtnw+v*JJxk>ܟ 5uc#ޫ/⃉WWr%$SlLrbMI8>!o`6Ø-*Qd\UoZh„S-Yh|Zw!X8w ß4M+&{9mLhZ*ÌF 9{-[mFY(hri| #Rcޭ(Czvጌ'Z V$ >"G9D?Ё\*Aj|Bs;aZ-&rK x.:n>0CM0iS%Ʌ}פF Z wE;^HF8oj/牲9?~S>D?EYAȂX`jQed,:pTSWQlḏ) 7J,Xh pw4HKJ&޳ ]Ss!R]lh@nxr=w>Z8Mw,4^x*$"eVlŀ$/^HQӼ]uZL6̦㾳0F7B29]X"݋bM^rvTĀT\z|Xsqk]g'MRDbCk ,E#X̕AdH&$;u”]w7فe9x3j\ݩDNj|G\OV3GHa9BmW_cB3s^܋ W9gaISxqj i޴kr;zmk[u.&=_<qt˰S'׵xmӦ"ѷ몐AQQAL!qJ~R>sv d3gBDKnɎjvjW6 5oVPm2=#baRa_ "֪13=6z ыtG‚)nw2zg):pH^8"rNi83N!u23ܣ(yG=]!"IdoOY ]9@1>62UAZ,GV6m׵rV{TڗfMM*qKT)-?or=_*^:D Pb OnpS_3fʪz!gGA;2mD]aʲd5vM\iJG&jP @m~̘^W(bgƲ8דEjNC-22䃬Nׂvю.㺋0MϽH/r=/^D3'sevoF~A DFcm-p2 ۇEpW;A.ڼ }Dx dW8Ѹ ~*[3(U. a'KVœԖ+B_>1v<3j٢ft1y%u=01m_^ii5L[c"&4dj֐{>aqm+sEsỌmFd"?ScHr}1_8Db11W\ iXX9rlqvk8/C}9]/M?YűQ*S?o^ʠ0`dKrC{g6bTLD.f-N,e2Myu, $O5#pT $˓iVdeΊ[@E 5>v7B@CbS}2$=~~Yb)?%lτyp]iܛ}7FjVw=X$8]SVP 1'CTi9WǓkOx!c؏9}(nLF@g-BiЕD/8{!`KTnBi 1_ؘ$PHFahWqw|yNM!ϛtj'plnm>뀋Mp5'$Z}jzk\~O@l1T͍|UE먅ڣ1LJbѐ4{Sb`l۰&th=nB 9$|̨ƳTYpf~WRgܤNʒuQbHhޘiHD[HR~LqjG"F-tl$͚#q4T_L>u<6N?YwxCu'*\|5ѶRb :5c\M˺K1k ®2Pdf3%V+M70oS n gL6%AA#CJ{- Ȑx)3x XRwt/(n &+‰o K._lr4w0:L-#'zo8,!6?fbʿ8Oojb2yJm|[[DݴԪgCa~} uN 2P 4F(YW/5\LμGmȊ/H,J8կQL|ѿPB('v`on&@pOd*S=Ӌp+Hoв޺t  LTbxup&#љ"Xnt03::QEHFL1KVmMh]9:҂C?*>CQs#`ቻK+;-p#ߴ oc#ǘvdbR12U@?L~~_猬b\3nb+1xܟ3L7T1?ClbJ!*\uY7[M$b;V`.rOV%?Ԏ}08s$`3 hzЩ֩;7FlٺTV1>1y o*^Am^ [YEqYY~u$=;*=u*X;,.$WF ߕCW[FnTB6?$ثɝT=} J4 N_h0 7>7^0*~to1$7cvnJd0.ZcߏQA bP(!ׄ";d`Mhy&pA{f[3X.r.Z)N=kY$X]  p߻-d9SoIEr8yNHݤ.Գ~2 ׍ 㜱X[_*"ڠ{joZ{ώQ*Q " n䀇q"4SBq7ax(3 I-F_1& ؚbURrZoh:U]2 ӕόdBױ 0fl i.< @T46+IX.}>Od:IjVd&aB&ڢTU//M:"<skl  TOLtMqꔞ6"]_T[^_L3=ݙ"xd/%S:BKV濵.s\ i5],v͚ЫV o?_D,h [Ď{ r_ɑ^avʍ#*Y)7p3.|b f}AWRtzͯʝFW.WTzuqow P^'$iE〄 ?*8pS|ʂv6腹Ty(h?oѸ\a7.n%+WG`*E=nI{/ 2t|cqfefE!Yc,N# iC.뿪J6 jPB>|jT(* % 'Gv_zy9.Jho&3t]XF==srP[_faۼ[,x ,ba3\ B%M5V ]v7^}S:(^DiO^jJih<1a{uOyS޳-9;>pIʒvǭۗN GV/r% O' ҿ`o"7ؠҫmSTGKՖ Z1;|>=`wud7V)5*XVͩMC=*fU7c3\(t\N mQ)HDC74(+MEoio >#FSbي^ZـI p Ԭ0" &_wliy@%8t/G.U#-v9:hLw_/=m?כ} oZ/~xTR+@|OA$s{ACZ*C [62ჷؿRuGnB!` J E%0Rfl%_;ʽD%]6.,R,IK7(1(W7-}6frM]\]82:^nu8az,)`Yb nEϸ6idy?ΓqoS VOFƦ dڢ=|Wi͝KvM¶#Zds ;՛?*ew2sD*x(6H8VWQL"mjMS.7lP]EP+!x?Psd) WM:o( Y %WL FwpCXE-_Geގm_/> rA>%Fn{q܋@tV1Ƥ%Ye,;w;ST8<9eD{:/5B%Iw [$@36djlO 1/ea7EMrM(D&oVDl,UBGC5 fiX z@n!EWG}f<[_:ع3C`HCJoػ%CC|I_BLAE_P~Gׄ_\86v/RՈ,+{Ɂ~"xّI7 R k EP4%0 s#΂|j=_{$56j] vlJ¼yi9+ș6-Xԇ.۠rUMV%.c JFBpy`AȮy29rH%dM;UXȹ50\ی33 s3Gẗ́۷.qcBt^{%}ǭniWE&BКfpDRpcDylrk:&l1:N gka_aB'BoYqgU{Fo~kG[\ /2EmBVH$2IxO.uԴrpY ϬI= }'/.|XRUiax19ʗ1vq͖j~$qsf&f纯3 iM?kbCIҒTq+bc[CCe e t͝=.β@v7[GLW=rc5;chgf#)C.<v;5`@lMb]':^}l5"%NmDI>9_XK@j69$S] #L.DĎo&A~ڡcz>@afdYW3|l'C3ӟӫ!{X6>'.gy|r MRbY=EʕzkxQ]X Il{jTXũApbƁzc1FL x]X%öiS3k6#fnv 뙏Bij1"CUʇD4>p"Y&;b&#x$IԦג_Y]ڐOo({S2t;)$:>q8|Sifvy:3`?Vǂ7b"-~&3kZw:T \Q z\,SB4 0gO9W3ZxwXZ]ffg50{xiqۛEh WsL${w0bdߎݐ ?IfL@š7 vDrv77*GizІ3^ 8rY8E;UD3Iϴp˯t3BTj$ōt.;@N%n1GB5^Rz–9Bh.CzU먅*$o(i1 /z}NB*k͝3ҥ 值wcnT}W3ڕ-"3ETaͤۀt\@SEƒX*Ѷx:nRc"F Bǻ*4*-=Rrv85׬et˔/MySF&@I/1T續%rGR]ʽCK^1dfZnN@~Re#q5u[bmw1ʣ%L;Fꐟv ~1'9`(hvy1ei9XMf(2~6F/WVCF5&?6zƯkeUw=Q]@h!x_N$NL0KLJg'?m:ZZ& %B!IrE'IqЬ 00,1H!qSt{cWR[] 3nk/ Qމ* P 0q ^[k{'ir#m?8hW3vpsxǡb</+dUO)fd5΀-qB^Ў?0Ϯ/bF(yW,D3FGNIkz8#_%܊Z5p Ø}8:JZؼ5Ճ1ot}$4mim̂r֤F j+!!"NSmWR17{zϸ>.窖Ľ):qZqb0^0 !,+;2g׶eb;+YAz Q::w7}U|u(iC4v {\)WˬM4T/OG~R9[?U&&.$5p*R"`|"Ws .۳Y(#ϿkqݯC5RK3; [N{ ϱKޘ1 +쟥 pFW;{MEq__mDR "|a @T;|@6L|Kq I|кۛh!* 󕌃!!(6OeH`T2.)%\U"_3YVS„"5Ue-="6a:cjPȣ/ 5aMOFŁUOCm2jՑs:5_4PʠzliYZʒ]fXUl4}Tf)7(u.+%p ^1QށT7z)uE*iP iEnQiٯWxnB׎k X$(5&cMYgߪFԗtļ0k3Y/}f0slKsB wDyVy=vV#|L rc!c [DuiXkϖls zS*m`'|qR}8SW ;9V6h 7@Kp)y'K-rT M !CNR=n&ȥ]§r݁y;w)l>iϬڑzvU^ ȿ2ZR/g y{#T/HvKƯ<^5:D3Ё^K+5͋,oj !kJ/I/G*{c&Frf'{~mT">md(-kd6, {^$l ?cPg߳.0ϗU0c<4BU1 K^Kd75a%P bzi5&/߉v69@$V3 r)#WR4)C1o}bd\7DV;|_&wٜQMҦK}u(v3U Oug_+hbXn wfQ$R _&gIR})YR\kٖJ%ln}(2CXKDh% tD9"I!xotyoQ[}0l,ZC %%M)ÐGM(9ôL[P1|;E6v>ٷ80 `=ʭ7*9Mo =",鰮MMEB`Წo2RaI ݃*@\t uկ^/E ic q~}g mpgЇ_l (. Eq'cJ24DV;6R<4qJDsG3v${ ){ڒqZ]vHFTޥצwX%U_ '\![5,"(ńa^02O54C=O/(m_lr*\3<`,k/ϭcc@|"$m~9G]CO|_8^y} vڡXPb~y8* /jvYlX`)ςC. `ղNKg~x< q~bD͋Nw~[?귛su6LY>%G/sD0{%<%'Y Y+^%w{,ʝ0T c9"f+mm,@+ɟaKsC㋖[I7шGZ{zRn@P?SU=YiZQAW`*<` SgP$iz5G+W"A@q^0i0q3d%pr霸!k jK嘨#B~)թZnҔFRCNoy;\9]k?n5wMw✞++[4?vb ֵZ>B\Gʋ<wܢK(vy j=δ!zy^/d &L7oҎQŇ^ٙc#͏1haIg1Q8 MZ*uHø")c[QHoV k\,=UVJ/iEmY pD%[ 8t0?eydzowGi{< u4s>y>C=Bk+g9׾Aa.,UQ%lX5Ε#8eB*D T?bߎRRffu\D3 #GzS>D#~JX'KkJ 3ċNQo/Wv@\T^雾F:W!0 ,]\17eؤoJv : *1ş3]_k%_Mäp\K~cQ0hi'e©X/ ۦ3OBI'- \i גϦ2f!c b\Kj~km9'mJU.@ AR4sVYK\C9F_y ߭d9f9M", {^y|zuBU0*6IϻY dK(S|C" z-RV .t\e.v+w؇JRf~h/ >n ^"Yk| ˨)TqQÑ63,DXy%yJ]P~kLА" -iayKZ˘ <6PO&:'D\ך8xᚻ,C2ӬbMŦMmd }8 ;ŵpi3ݾUζ#yb+F3NN*iP++w >@ЂU4웁Ż_DDZA&5*T¹GH qr\PKSC(Z:pQ y`6stgPmbw?ELsN,`EYLղؐ@l0A 2*7_G(KcE3ۿ9eK\U<=N~ AO !ăEÆwqI͐@CHiIz `8J?7DےUdsq"tYfM#IW4[\3ѥ@"<;0wԵ%Br]=:Qu.U;lH3N9(*Vk$f˰#޵0>_Abc&5 xc(ؙDN=u.VPR)ctCF3UU*1wMge$aBNU ! "> =[K;Q'ƶ _ƸL պe- џt{02\m8$Al]~f c!;4T„u: }6N =_f"9< PNpF >(uj/:zq+ܰM7҈O"x% a zorF L}czz?Oڞ4V+>GgHзm_$9J%Mf'T)QHvK0bϧ&G fh8kD]?ō. Bܒ7|2f]|\A,}3!)z]ZP[zmP keD`dw%)mN+!kIJIׂۧ2a)iJT,!Œl/|win3UEMƷi RRM]ʫb侦/صsS추042g{l`֙V<0};:x)MP x+w.FefvDiȘ|^\_xb5I@5]X Sȁ[^9 &'gkv0׉=F_y9^좃jm(W۫Yus!e\lW-l΢кԧNZnwy0ҫLa:f {`):풎8 Х@V"!+ X[c) zʳ|"Rc֌o'dЏПSFX jܛXE B1m>r/=<9GqIO)~{XWf^L=ZYV\ٙs5,-0"GЍ0Vio@l}E 9e98t_T;Y4ዣ?R㊟`AirTeyd~| 蔔Et5AF1k~ l+̷PJqLC/EXeao >(! xkL_Va $E H?:+cj  ~e$R)f6z\JecKuh4&W[,iFL✣$fw,fm1ʧp;; pyxǻjnE=i|@@N2C(iȳJ_o{E#=aC4 8>Ip!k{ֻyS  2EE~PLd(?:{͹P C+RA |>\ʮz1hjitJ;A:f)hJ lJֱȿ s1EOSkxhe齃A>&=j^ ?~1q!> )=~ʛ]kP\BJ;Z: ,Zp 훺b($3S؆0)B0$CR1xiȋtsPAgUns>l9Z X!_u Gg&~s: ؔ KD~h ̼}]HXجߒĀ\hݒ\1W)WKFAv,;Yѥ@tn܋r۾QJNF6,X,Uw=l[03gY Ϋ['09M!gu<Kmn-XLQwV8hɡRj3-j&ʿI@ݻ"GP%u@~RybN8A韋F9|l\\BjK2`xdaFM.(!$ :?Xj:]j@Aje|IٸVe?S=AJs!"(R˳5QTtЉv[r~oԑ+s`BG51,"qJ3}͖/fs4y{ B(KS4.[EQ݋2'kՁwŕG 0a'Y Z%/ET$mNjPVI#t*߽ L?qpux wly{#h}6Ygl jpa-[OݯݑĈ *7-b$pGܧ+1 'pr rH -`9- y=ĉySfRGwm.)6,Ȟ"njV3M68uڨ3*MB)ae߅/5RdhIsv"B˫E=,Ց@GXi}[MvܔKT\︛Eƨ;n<ƧFMфTA_b2ПimM(+,"8ʠ81B+f hq{JRzM5'n=뾤t4f*^4f]Yl.SL F*/|`\74,g sEGt<<YӅ1[AouB@uG 򰡘46ufip+ǿ}X\?c6M|ÕwC^g S^qѓ 5X] DžyjS&yP2M\C"+6dkK%:/EYGS5'OqűrqaO&7rçi]h7Gۇ_j0n\TЁj 6 Й^+9Pba ]wB|-Um[7yJgL|o(=L6taO&G:y|0QMNT ]jAjd+c+ ꏼ%a|jk{rȘw$Øl/` e ~4;켒Տ^ ED`hy$ }% qH,jɣ7O~^ KA=&ű;ƒl~E͎~ذwԂ5WgbڗD (pHU}G);&= Ow4Hӆ̀fKm=ӧũdY-p.!3dsҰ=柸lB)vDVbv`ܠB:ʢx`v@\,9 d\ ?,l:5Vm܇/*ŷ-MFe$pq/̼E};apV@Fo@zg?َP<{"+Yރɿ?cy9@Ԛ 6 Vv(c9)ec?F`]!_"dE< B 1$әQr]}0!3G2A=xkkQ-alRETVaUyNL\B)q5 G?Ca5};o!Ҭ#m;0%huo:̺dAQR> ژrjibӵ5Z)Zկ31Xm,pߗOnUrI%N!{h۠ULYZNdI>]GI Ov"6Gig>u8&ÎX!v#=L$q4evl $suLd"aiaTƎQ0z!$: ^L2r͇ȱVv!-O! 6r5'w1*72bޗAsiJ\B,JKOͬ:ɷ^?aIĸy4F^5VD]_bmUWc= j 3GȇRl?Dװ0?1iE6%{,?&OPs؏^9\Vlv65Q~= l>WQ;b_eUҙSXo[?aGfWvܰP74f̭*$gt*ĨRsP0ile|BvUlJLJpJޕ=s^#dg3$%P&Oɭ] 5% 10d ټ 41{Y@{P'`Uqm )v#d~jr>@dp-ԑ%HTf@Iaة/ 4)L`?nөֹf:NgC%nÚV=n0Dl{y&8yj梸[`U`c2ONp[ߖqGST ''4J#^2=%]ۮ0f#pN!# eKkMω Vj^#^ʅN/4Y,V\۞*g\:-ydfO\=-"-xe Q:TD`\nGOrob~#⁑seŒ(= .8sG.߇bp_9aJ< 綡\ݗ5k&֐DžHK)[r ]_I G֣%{vNſ^n˩Yu 'q`- œW YW=2-QO>o,H@VǢUxD*qp7c1x>0yGOhGnXZ&8Rh"պp.QQDѶZ^("p*tHi~F,)[r_ar̩X|P8uH2B: ^j.g4K[v7I+\r'9%P[ A'I xBgkR>wE&/<籓{>wmZ~ 9zP0\_ Q0a)Xp:O4!DPt⃔rk"} j ^ZSj$r&\^vIo eQg xhys7}R`- >鹑ƌ-;7"7\ULeѓٵJk@3o/4}w8F/w%&q/|눼y`+l~ ];^;;y6\WKPs{[[zV'.OѲIm,BTȼNxdlЛF{{W^IYnNha-e 7@H,(9; P&ZZu5Vgt""w@be ۿfZ)ݥIoC`eU Q| 2 .m{So0AX\tC[(T-sV:!mM< ҩN8$@pL2u7KKկԠEݖM%!̢Y^ŌD[c/5*GzIs''Av~a%B-DP v~&df? _u=!uM-ި>c3Z}v޿ ܛ+{fߓuGf-Imr itEaL8tZ*+Y7-;bjx).v Rc.OkpwWElEd<}'Ye5oP1:dVhE_[19Bjlp̨K{A|r򂈺xʏv Rΐ[Ŝ0 ?\/===6:OmeWonc?>gj[Mv 1vFShBDPA4% q4ά u/*5)Qώ N {m1{0ߒINal/MLk#yb bZ* 6<>BP=[tÜwTJ]-}O1@j Y桜Qݹ&pCrj u3ɰ/$E}b~Co~z-k@^A>QD.>(ֺ(powQNGxKAE!s=nۈE]2e?w0Y^9hT9#Jˠnx3 }j٢&5,֩}a2L,( A5l!ګ{)X<<>[0 s;6(uyk&<7]W &e99ٺ=j-'Dμ5/xNa8gsd;Ea(92,4wD~{-. qC>cUQ12]/L4e$E "q4߇#lN>#s-kCɅDsO-rY4R&T&P-5:GxYʗ3O8H`owdh.bO]4+q6ͫءr/oҗU3XĆ=^Օ qs52IW oBH ߵwCb5p 9ΒRy: 5ψPp dCps 5rH,-6'6cM~/tf[Pەwіcz%9K D+o0*LeLCǰ4߰[՚BFisɑZS^̶vF6P5KXRӉJ1a[{أx׋WY b^.WZVq:JCl:]GD=me\C'YTZK?2!#w _uq\S媦?Jˎ: ]$MfDAcgېv阅5W17G)'Z G8b:ztR*j:tju5JZ*9"t f䙠Ե1|m:yq̣X0۹-u?PR7FK]@dqf,%rƄwe<3`7V6YM*M{Bx:rcٵ7V`U*D@ճ@UJ>fx/_ue]]!?͇aRyƽ]DNP$H YQʟ9ByɏIῂ>'Am!NP|nSJxpFI+K޲sB1ՊNᢍh`պOm&\(O z:A@L?t?)D7psp>P׉8}AJ/\Ɩ\$5я%0 L`(zJl<6{ȣ/FhGV Gn8cꙆafUxνVU<>hx꧍KK7QnNJ!tbj?Dž0ZO#65f'k PqZ~5ꃑhȵz8D%f8H9_x!3)MM}F#V;[?ӗ4M{~j=DAʾ(]DH{XBpTXJhLB;R4r*R0& b-YLG7%HF#fn%Kpj/z+^etmÑ`16?Doyc.ӊr|ʿ  AOGJ2D*<͙CB y8( L4/%ajFzg@Vݛ93\>"WZV&"9'Y )ż󔱐 L33hjWgcy!-BBn6/j3h'QC*&&x^$k' (ksaj&UfH[Tc=-^F:QO wۼ:rfwTFW-ꮮ 3t0O #BïUOJڙH~ilWA+߮LCA4hnY>_Wh5f3N^53F8!mH`n B{ܵl_P M-2P%)1bW- Oa9X.Γ]guM>u:JFHiV7 l<fn?*bq }T.NK[m11tիsvF8MxPZ_)GIDMSEp,e,>;Meug gN sIfgS-7 U 3ll?*9񥙰)ױ(o>sg8 f1Ɛ+Y+jxKShXnL#;t>ڭ2PZCQjn3 B)t`H'>kI#ЁӱTH`XsXB7kVS\I DQA/rDϴbbZ.[DM/<,>驧s< Fգ QZ*|j@`L(4qPŽˎtz+p#Ga$\BpWjra v2$.+8H_ڄD:NGW\B|@B,c^b}]($sJwAɖKf0*c RE5''R:$\CGc'X\nև5sZ%Wa|g]K J0٦_qe| da| 9Gڂs(Q/T3'7C<˾|MP3n/:B^z6,Dz-!Ճߤ:R\~1?FrC8B~r lF.Z]KytYY$zn.{ktaB!7WE#>e]D)OQkK HY:iEQmh+g,L`8H WyKy1;%26#mMRׯcC  X>eR H HC#4 Lv[wMt0r[abgu:9竒X =;T҃d1IRoS*Aqrj{R/T0MOehW56 le!|"x*_D&|."N@#3iuqI0K#`7kyӧ  {<@@kt&Vh~ <r_lnr}\Ⱥ -<1KB([8qCt1ciD˹('4NҊDZc/*!۾ HeNʹrXS=&} Jh8i}3; ^3,I^d9nyfZd0+V3.n  pz2 +p" D>{UvDc7 fqLҳeKEd ._Bkziς 1`5)R^Tتr@ i/6[}ܦȐ Ĕ AoyiT^8NGQM" R0@e:[$aYzBw2v%gVL3JpI`5%.$觶R4(P aodY,Ҽ 6R};!M1[AnTʆHAPI@ոfE"{r8j/7F|{EBz=kB)tG({jG zp1=lHQn](cb-ḻj8=O]kC-ӌbf +LT-c;Dpi4N=ݧo*!1!Ny|gÔ7*-hPJ]S0hH1V3LS8-JH& Vjn  q2x=@3Nl)*+ \M\Ğ#nM@r]x]-]pGpBqh!?C&T=ngTeI|yHho˖6Ռ YJF_9 4M0hf6|{eңqcPqGE.70K˫+"0o鬟h`39 #֐_(5>f/@Go7X8$՝F0vG8H+:Ynoʇ3\޸h gV 15%[lMUjD^` }=gC{"O;Aۆ`ѯ%x{'" {W-lgZa]+VDc( (aCfOVv' 4̯oԏnA9~4+F)5c99FHU<B-xwl|dStKz\xv{$^4tcBeOKJJ w9BTHe@%,)S8]a\,aN-prH<~aU)/b*L w%M$4Ԭ XKQ=+[URjR.gP20oᬺ`]&Rئv8: Q&:荡, 38'Jyhkv` 3;9oG 6VݧqP-fiSU\-YFp-S*5?d”%+qAQ0x,(-&pr{|,T (r xFkM!<2RQRDP&non7gHcA{ glYçP儽®oe1tpLmpN/VKGz#'b\C優fuawrP 'ByڲVp:.鞭Cm]X^}[u4r|5/ gn㜫Qz@*G=NR'阣x iNZÇ/ RdC_zYǷyƊTԊU:+NwyǙدe4i#8^#"f}w) vfG{߱Т:T]]l1Ǔtcp2m,V"d//{* xic閭~ ̏4AW.=.E;qklД{: *&f`ǢT w1t4>թKދl?kbDg㊘' L \c#Us6ٝERשh^~ݱZ uͼ2,PhuWvm&}F c8ÎB7%l>DF`Mk炵\F[qȝBYaq=D.2怭[פk$*MDT48cfdzf-qo-4שl,wX+&gu6cL,!Ԗ -+p݁]OG=Ye}~籸])beBb~Dnr>Gߺ̸2k5<R)71NIb)j~%E4 ljUz!|OT䚁\Y#XqI$8&΢֍BA'zTW\CX[N9p-4ʟo%|9 ȉuQX)8*SלʱVG:g &̈GLǼ:gA([P^YqG ʶTpr` Xsg 9Cy &`DÉj"GfXg ۴2XUvhj#Ke r3Kշ<.jLL限ӒX./vs)Ȁz1T6Zrl,k`޿nҘZsЬaxk<jQG_'VT}˯Gl~9ùCbp.6Vy\sxIgiɢ))"~FŷK( Gu}Sn^9!e2?s׷ `NZpPʜ-y5b[) M sdzom٪BUy(>ɤpR$6&qvU-do^`&'e! ߨH6Tt, HHz~7(T@WI#Z(hS9 <lܐV4! 떶,@8& =USI1 Pq?Z,IчJ%|ӞQt9L:5)µ̹xӕIK̖ vX B~Dy♼?jd  Oyt+ҋ1ԥں_DLfc\8tozX_8/Vhם>`/p%t2Toݝ(r/'Zp2c?h7UUo;|[L&*\Gh3*/9r ]D*(w]%3}jwj}"y4ַh\t@VuBNb_# FE&.tt=`_WH:`IEmm=,5Qj#\j9nB)HR)mNQ@tڐm&35}jSMpFoYHR[3 %&"PnZA*EԪC JnSfCkE, QkuʼnEE>|~RUcV $u ,Bp-,6MY Ӵ3E^ŘY d1Ci/oB QZ̼L4,c۷V4N,1 (٫7jӬnIPŮ ?۠*PZN,[m Tx\ܭ,B?W%]Ӱ$'׬g,$nYߓx{&"t x-yub!QLw - t}I9$xkˡqٸs$i Ż\̳jOUj:b\ ӛowggC܋8  m/N ;˺Dz]*a,e-LXכ7~nd Yw:?z]zxx%KT&6~@'Mg[ h'pB ^8U%LtVs$#\1rrٙgy3#\:B)mr\eA˷̜66~~ oZd Lj?"A <3C(Zl$ fA6v$J$ 1?tvuy`ĕbKFյW %>gj C⪣\~6}#I.=|‰EZ&a?Gw>"pc}FO \Fz$ "۳[?1SѸϿi= @ TO*|rJ; G7VZdok Duc$U6HwGzu ;wk%gݺIr2_'^#-Eh#ck5ĸ5Fߴ,ahTǤ%djHe33\޲R2΋v^. }yշ`Iv׆q}WtfX1qD NMY"qIڄWv?od.U(N刜."?%תё aXعp΀^ M! p3gÿ]m)E< q]“cьQ^bF'X+ >|ĵR*/Q)Go3*THR\BK 2I;Z(ga! Jy}J7RZiEbEϚhmvóɨR&DUOZ,':54 $@\Trnю:V0fqH#\+,jecVB^\鹜,B> mt/jBPmCFxL+ -AH^NkW0}ܦ|cvצYkԲ q=>[k~bYByAXQFFv.KFGTqtbbx޼I33x̮8mx1;24_tFv']fVCFdFwk_ΆϖN 3U?PCj`/ 2@܀6y\)Ei5݇P6Wy*׃w@/ʺ[ҩ}X !Bd rW姀M,h6Zm^o/Iy'ңK]-폭(] z;fyi @g_h_n.R^Oh˧SS[BdIM\IK|MW1& m57@&.Pr2܅/B;'VB::>y Ӯ!c@|vlrmCŪrͣW|6E',~gk9iSs g.r9"@4 Ÿఘ# f\S!r~:4Č SW`GggG nu ֻ'e5n7ӣFYx;P?pWIaZ(SkSV {8 ;뤥CO_1ZuW+?`*cL0cmWU'G3G<1,Gc} ?t JRG|']u Qy3Y\)@Z.tӴ!0",v GI]ʀrL^Ca54(r__4S5B%\ipf(N.:܇ș.`ïuvAhHē WTPD`=$<t*' JrXtw#|"TS_Nxz^ psفaW9.o=\DN#daxr|"ڵ EmFiOhsX :7] |5 "{(r#jp|k:ǒ@#T&\?6~u?ٍLG54{dip j{(L/`̆+wy[|I3PM3g'K=uTwO::ۦ>:;|>4=[3H. L7dgX(]@L?ˁv '+h Ѵ'lf1<6 Wh/9=Mp&_^%rLx 8hD\!GTϥl `29꫁/)7a+H &QX.(4A3:36 @ݞ 4S%OukOqHZN8o?`7QgA\SZ:"qxZmqX"KzA H*d 4mjVwص7nڃ܊2C,/|@hչ!MP̓>O|N”#vt?di䭜"JFZ0؍Uzh>K_muY*zq}{ &D9xNK?fXw?f/&S̷1o!4fKn%~GKA1XKEcBe8,ܾs ^^7 2 A >/0~KWs(t,푙ҵLҽ[>V kmZv#x2x\{v~c{0o u"SE*|qogin/v|>sG& XY؝$:WY\űSɵ1,n2ifSS5ǎ)2Ic' R孲I w; K ?Ո .#>5BKPQ[X,%@$>?J+y L+u:d7@ ^}pӌ\_VZk":^ΰXKWk 4(C׷}2xv*YV$%ogFU:@-~0\oaBE)Q m+DzSTxK Kbbq2={2t>Yղ>S#y|iq2XE3 ) 7r'/ZFI@we'DE'ǴUY`b-07v|L:X[7$qa4=Ft_mRv5Ie;0C0^?<! |&ǑPqnLSaAE7RtC~~@ 2F`n-*` :+POaq dJ*z Y5>)cTW:^o }Sg|;e8IU|G*4/%Z A1x!wِU5 ,ԝZdNKY>R]hPЫd]r* i^u!`Oc? =)ӽDi2.;cS Ԥ _K2t+F39#m bORH7R~ 劬HFO'ꗽa@T ĕsK 04NjO̲D~NqNz+Kl#`wZ#"?ljR&ozY<{ 2i}'%,,)~99 ,#AJZ6I(ENABtؖ`dap#jL/_Iڶ+U"!O Qg.|2062zbfR65)Xm>QN$èlSH-e>l1&A&^ڒh[ zJŶ"qPo9덤lct-RfyqSR^uPreHgt{gq|n +O uQ酛lo)ATHrfqkg. 骽aɇ3Z]gjq9v{aqula ¥"5nO0; 땾)lXY0IP JJ KNs&rXQ{9"jZy֛_py"() -!0-7:@h:G|ZZTwPu䰖,NeCw28R16oX2}o6ˬ75-#>1GqS?F3x[+JIԯC^Z:C. 㥇'唨W}{cs鯻7B++@sq1ehj:VB'%K@Gi`]3Д!/wsj0niBah(W=@9r\BQ"7Fpp&X9i)XF4f%E3F➳,b'E 6fb;#Vxo 98>Xqm0hW@wEMѫ6h2RǸcuaAPRC~JEWN+ ˻AX6stJ.<* \*'E:'6,<.[Ȅ \*~EYG8[jůi7~"qy%t1[9}640彳Ţ,xۈä~T0xB.0Ʉ^,[q/ eʐ:O@m݋IYa5i4,2o dPE5"Ghr itHv}[ʟO,0Ej"alq$ig'/pef@{lx? ъera#"R ~m='ǀ_1t@8ipy<z0}ݤO-bHv ")3\;r& Lc78kE Ga,"Q)0i[ |p텿U[hesXڷ."} pMC |1b' p튂aq a퇠g@eX_8f9hlxKbJRPcȏ}_ӛ[Tػi"Aśy!Nkɶ) ;laoڜbkñ`m\\-rKAh/kp>{7PI7y($.$ B1#)097*[ C#H <_I&9}fT. rMM`dlO{p4j"T3@q[t{BmXw^tӆ~-dW[;I|hV {?ELȹtM& ڍ*%T3UnlB}>,عˣ5 1J8l҅h#/.s60Zyf9>ڰ(Ӭ>lO/Y|fP*,ōjI瀦*ϝ>tp:jt~W^SuWD-]l|Dښ_Hl'\Nj9-SIs4ҝ?Tǃ~.Msҩ)t9N䤍8Meef$_4e\BЌMp/Wu4~) \*̧=Q 5Zvb~2?F~f]κ&tYg{=n  X3ְ&u=Kns24c|H<َzbLa댽9Е|b.yjk@!/18c'f#S]r\wt5PJs&?fXF̃C0,J֐t=Uk!.R@`d!IQnR5 SX$Qu+>'|X|ŋ#vTԚ^*,3Q扈c>-R*.8o=40҆=WƵl2OȆV%лq\v!h(4akm̩Iq\UN~\G$4ψcزWFyҘ+"EY 3ySn{7!RB~鶝]TgU.N&_V fByWpr6cZR̩!G ⿤n(g>$1lB?k^o-ٺy*'0{揾50b-[d^(|J~ُ*G`ubnv['p?]ͺ1JA_`|AǧSF s2"\d"C3,QIJ܅_('U= LGR!W!Ҭ{i&-a60-hߞD7Wc᾽LLI}yzQ*,HHZK\ҧ}9A5f{1br}ɟ=VTn> \lʷTZH.byмMoǕev .-Kzszv`Q"?th܊-/>'x4}8> a׽߅o!!'l%7Z/!à T$Sts/mN &t* v~ZQANȁt¢vR0ˡ ?Liks, F:'.~& kl98!Y} [sMU/P̈́sɝq+@Ju>'z RImn@@7pZL'KV$_2Q!ٕ£K d.+:m|⛳1b\g*Wz+Ю*ZN0dntsX#.ƿ*4xdB囚E)]HEΕWpw$G ^ߴ A2}dv$gkXTZ Mbm.S`]DnJDvN/dKAt@ hV;!!IG)5 䀃1(@''SWQ5Es#a+"^pb\B#x0{tBF)>D-YЕwP`~n@癪pT MǨ<ֺcT"V.wFy'|h-/_K iԬ}½BBޛy툅 )kSz8$@"R|:Dr_&{E`Q]{߯6Rt(Akx!jVC,3 VW@́fUQۙ ^AU 9iK9Kxpš^2y"AB4){/68͎BwM45bpM߉ޖGWlԃ;UΘg`fn">D3&}٣ȥM [ɩ<3pﵚq{ ЉTb\R 7!g[%ˈ${x;K))޳J0l^N4h.{_oAhkDX@s{zwdbr$4= 4ΝLC:ֲ2 i |w̺ۛ"Qp/k=~D)xb5`G!Q$Y`Vݨwj%ꨣ{X*!\ft!  :I.E4 68"Xk p̔3^φT(,}h?T6{nܫ70ܱ_~? 2 Bx,broY<\5@]A [!f:ܾ>LgU$e4۶hU-(* UEpQ7kə/JtdCIqfϡˏ\V}ȋy%~=)mCx*&N`@PNǖa%}RSzE0HWr;f{3\Y#Mže+{5B{VڕqɼLCF>\Y *QgX(J4k$HQ!0rsša q`l_cVƞ@%ީ5.ݻ!Pt.?ې;RJ߇0*IJ~Ub(uX A5Y``,RYĬC#&6,Ԋ^H9?b-r5p0ȍ曎 UD1zdxߖ&sX6EZf4*fõXZl=7YP'2HR'z%KhV_Xu>Hɘs}ɸRց_Pރ F؉LAx^C P~wVA`8: L} SSY\L\$Rl3EWtfG+"akp] WbЁL_Pa639 ̆YY >`U_nh xxtјJҞ {$1γGUm-H!r^$sѵX7P3[#LfлWzCwWCl փTx'r$x?̕o $}pq{Zj2hEƼ=nz]b׃}zA*?T3Q֮G+\u-O*0/0#,IeD\=|+7 H;[ZMYYi::=乶+Nvm P t1v(.P;Gb:hBR%I'$js%.(]Ţ՘R"nxNL/7K2tĤ& 䇲#Knu\q*e3yp"a{͗2fhsI^^_喁 c92 9~](+}vwZY?ZHXHQ+cG6JIFğ!aZxn|K*X=yqҿB&7 o]KHP|h>xLik+ꄺ xh_ll3BV!;iv-hE1CނvU#VCtɀ8 "cﲮSc^RMJJ8;J )Gjjvj1qpI5! o.ƅ pkcjl#sxdt,l^Uİ#-BY!.n)\~NcCKC̗l!}/ͮ,n- 7"Ø0#:`YX[2ڒD>1Q~dA}[^"Ś; qE*3@rnMKu>i8H|}\A `c(b("##bCK,Muw >5φkG#-_AM'7 V58Z0=#./c„z10aB'm'ޟ[3VUTrUyN{ME^v=OYS+WbLIShf=gk9g92O2j mjMۏM[;t4(0ew& Ә(~8Aӡ0z[dy"A_HhWIZ|8ne+kTd`L U@iYwjC~AHKQ'r# B<5UT3<wy! <(.osrn|p]H!>uB-0޽ Tظ!gMd=!~oѶJ~`ObT Ҿ[6؋F|$Ork5b/,/_Bw]עe;-\ rIyNߌ|Y\{+ @G]#ᆘSBN|B}wԒ*jJ/U-{vVK :ӮY)%i|MFM iwH9!jt^-]ժm%B(&*BhgKnҾ0%oȶfٺ@fkJq5\tyT g^>854}!e͊mZ̒L՝m&YZ4 40R>P +9#G!Tո[5wP1D~"٧e޼aIYkѴM/R *vҍwcy79)9)&Hcg` vc]0jon!#6魌|JޕʸÉDRB+'%َAAG:(&P6I+-Zg-dqE"nաpnJӴLEM%8.^5FzmS!XT42}pM&6=I5h8ùd9r %5 Z,ζwZ.prYz\X4N[N% jΞ3H$N*H5厁} |>R!_`+"f2`f6\ljŕ:%DoEsoݎ9@KB`YӃH 3հYTIKf֧أr% `'nCG"-Ĩ mHQPLU؋1"x10 O3䄁)1<5ivٸOvB#1[Gy@Y"HmV@MR/P#z q)odp˃q6>a`KC.df!. D'ꭟGRPxO#>ՈU[p\@dJee9@>wh-V6>"d]D*`7ԹeI[Ju59L-@8Kxv\#as$1= XKock `V9icpASpYNPlUyQ}b|h>Y (6TyG#OM̾h}yjƊA`֡s $;lih/X(:!pۜ;fipBjcr^jmJk*c1sk@mm7'1ɧZ~xLԛEͨ`c[3pN/F mp.&kx+;K7Cv'd`w㒵e_'T$bxaHoo[P be7%;Sc U烨m۱qe{r&%h%!?I@Hةmk5oߧ:ctُ|Dٌp̹=zeO 酖pGHؒ ^8t<1}Ќ bO|T>(Dn1 }7QxdϪ,*R88#aF8W( gt0Up>9thvW#@| ]=!Wvi1S \~g hw۷#>o\xI5h@ܒ2yhP`d[ú<ֻ~:Ľ=ܫ꯵CF<75z[VUyp'պʼP]6g]fm!T"%MSh迸C|\aPx T@}x*(1[JLaN9y_6l#t(/$ 7JR L?B:S~V zS{HTQ.EBUŎ<理a)YڼCDAb|`tAS! 4R.Xؙu[t=yI˭-󏽺7RNHDo+5:@N &&6=kP)goUF@le xN~ulO>a'vai[ln9VZt}mHߗgQ`M jESnCKX`NiBzF3@Jx|-;~H>ڕjk_ e:z>7&% xckWƾ{^%Kw:#&=% 3U\x=|1rҐ2K*Ȩ*a)ܗ K9@db:Gp5sVۤplMىĪ{B׸K9n^D;]pd@*SAa;q=GǓsʐGO˛<`d…m)*v YQLJ[bۃ#[MTGN )̝Mf熭;{ <-GbYz+C(ɳ>j˂ndWH%rq@SvA͚-v'ЗζZ ИIke8O#3>D_J }0mHќXKA@->; ^+ɇB5(T(-T^ b-њ9aɌI% 3q}/ʹ/xML㰣ck xRL;̠PC@b(.=iZS *)HM{ ޽`)̷̄Ws՚ARi!%DZ{+ђ)[!awZl TICH ~6PFNK]8Cqh|wDTmx9nqSo$r"_/TT!؜̝/MKXxX3En%p?@~s]QuaN1b(GrD6vK[fC~ڠ $QUh(3ew.*M=zbp )Ί& mw<3. i0>XPwku7%rAH6yۛ%m]$\/mT%-rHOU-,xgti}XkXf4J8 v+ׅX񢦊oýޑW\n / `k17a,~d?[{h?oҒm/;lM2DǢrs?Ԁ)mӣn*SeWj7v۬&+6pOvOٽ{>] ]mII$by؟&KaDM ޤF?}V" L{auz /7ma쑓ih VMhn < O(< Hy(K>:@8=VH3y-Vo @$L䈟SBl bj f?>iUw"WfU} d8rU<\"e6k  -Y? 5x,+m]0uz2*Q@fU1bZD3OQ8=Ӛ1`ΉwkwD۬UFb=Ij UtJo-_TW30Q,쾊R+% n ㏲kn8%zWAeh201͵pep f`lU֋!V 0-GOR[}aaF2 %,Ve╡)X^&1x#UfwLx!BJ*& H::C#p J鯶 קcB/x_Xc[wW-P\F^"^ K.i?쇰QLu<ͪ&s^}b|aS>5-?%əep17]y`䞪=d6 "ThMރl\)*5óJ; ĉKC1ㅮ4h!)) ]d>)Rˢ78&9Ƨx Bс&=r9%0l`5o!Sj_Gm<♳Oߢ%= [i82cn.gB6{$^tecO`ђKbt\涅;D^T4GGvYJ=](E~AEXE™'KrNvZk"6S?";8f˗?C ▎S]d&, B@E&8 /́+" :l~*JN&F w#%_@ { ]AP *wTȦTL+ָRs'. KR4U=-}SܷrQEd"6:`~Vk$7?*cC:, &΂Q dt)|[&ӆ<GlŜooE_wIM/xXR-X&(Ɨ3u,E  ޔڶ?L@nuA*2c92VG13;/]ۍ'roTed4r<&.F>efq\j,]'Yzd y%at$Oj = \ Z1L/)$k!ԁZo֗m֏>@?<=\Qώ֟7F _,T´ȣr?\j1iy^IzTeãq ڋ?A@n?R&:gG |{*>kC BYt5ތ7*6eOP@)%\ _BY32&[j784K;1xPn:V򣞿vxG.;UF,9O%wvbV'94'/W-~U(V9E)6+5&e|8TMMFA!ܕ!s;sC.HDŽ-'x#X1 "+ҁ5"rIkx-:|P܎~rVxR:>漮x<I_wRu(ؿOUYV"*V~,\uD$ R]i&Aw.fqa>_T!&ɺ% آ_iCu e\S4|((2?up. C8%R_q<Qg%\)8y1 !APpv E2n|(uc)B0_]Ušep@d-t];}U^)Zܢ[5 s0!N!8 ;74g4>?kE,Wϥa ߧ*5S}JPFʋ+ jfjǬO܎ JфݺpAi ˼"l .&Ð7ziU8Gqḯ0-Y_{\.Je.D_vDKĚ+/5V,cľ }r}pwI4m.乎Bu7&hcpgU2\呲 gMRL41{"ޣ)uꤔ%hfb'G,޳ Kq숇6r→TT7pFPU pةIv ̿T#8!Ɵ AOčڬ{<4<=y툴.=  3[o .NUtF'_nwWaCަٶ&30xn"v}v&\hyZh;]1aaVb? *24#"YblaoHd ^y  N_Vqry$^$Q7YUA!WOR(_l '))uqqk-u<馳VNoe+x1οĉ=g,\ka;jHs)sI Oީ2{fB _ɋ2|a>ަx&A@F̃H$HTtmzwSoy_j^+ϕm _P{N#$\c`i͗_v+*;mRWŬ;mSc`N1Yn2HY(ITD- * ՝hfD#N`>; ˱1ttVvQP8n޶mc#gdC Mb.._UX3Gt9c: ^ND4GG r_`E\JG:`l%k? KciPE^V&\'t&$uAs^iiN 3v_fWgzK&tX`3}C*A`B-Uj\]Ԛ2& +$C['qb}GlTNW;)z1(hMn]p^뢽drhgu L % ﮍ$|죝Syr_ " ']LMcJ9Y6ep-JK}tH U >"yd5; vR Y]DmY;){0\DYCa4'wXk݃\Πe$;^GmlR<$ğ/=l` # ߨriE4 ֔9}:w'ܞ1qɞ&s.vxL$:2*?ᒊ$KM\wϦfy2Ӄ|dOk"dn,cǟE+2 }~]&8a-Zр.'."@0c+/sЙ*q򄺒)m5AJ*)*Z}.Z.jcvF][j˯Y1zєUvV.:~*b_t<؛zi Wp<>G*V1[B&dh\ %ixncq]s'%ֺ/nV{E2ʗD_: ƍQy # 2-.dOK+brI"BzW5j=fL;ѳ+/Ϝ1w[> "S]ٜ^ڦWM,MRR""ݘD®O:zљq;ն=~KG,,\B&2n|[KL)?GcǟQhhq8E#Ԁn>!_5w\xPSU>l ZUpc)\z>>T M@ЧCa]qȾ9]jn{)^`ޢ!)(mwp+ƍvIB{]3`"%(1y,%U/L,I,2Əm @-`;&~p; w~ϼڹW~ծ.!)}tU2|/W ~Z`awB !h5n2qI[ٿ `eƩO b,O(-HT1N(ԁF!g.X@^|M qj3p>xС&]˚Z%]2 ~< %5 P\rM~+^)ϖE<л CLFO5g=KhHGFD)yOoEBW?L(wrO {aA:PG fonT%ҹjYef+qN + l!],ּG wFd_v9!/)cet箼\m+"98?M/] |tܶ151 +%;{Ƙud1r v1OgGt,'bsB1z#Gp`[f\Y !G[|(+Bd>œ|G8&*wL>Q(@7y9D#@ƛKZMMŲ& cakPj C\}o3Fj#9h>r[jR+ZR<=?dQOXݐTMoN8cɣ@Nh\) <KZX{ϒ$dI+]5Q&aEXW|No1rI*GD ?׺h})ܡL%?J 7N:1^DrEQIJ ѕ٧lk7 GV',JvX ޼^ <XCmoqv@/ :vL5u)(ECgfOUcߔ)pt%-{c&~ t|cGXĸfreZȃ^ .TŠ .f 0-YOD&a*γIX`.!}ƙ"ժJ;e*W5&8ROYdY ND.ZW6Ů+SooX(ԾYO1PV ;-8zqזzwAB6"uӁ\ZHZ6Sc# =~$_SV+ $N6g򪉊s3q~MZz2@jXyŎ jZD0s0vMt_u\?ՇDZ"LNh@?c" ݢ#oA>RG 3&2[x KM{BU!@R5wFֳw(pz} +*nz%HK.lR#9 BiR׳̆ì^.ڣ Uzұjdž8ML[n$bKAc 5B%i#F,7JEs2z 0頪ɝ[*yvS|WɞՊ^;; "N MʁuRH:ak )9$u1ij"17ܝᡴ:KHkO "w3XnV7bA ۼN3(h9}>H>r_'v`hbiˇ_L廆9=Ui>f_5tW^6~.ct/"V>_DҌ|CU._]mrM=z$,Uy K1!>b0WRݼm#I P4[Ft:E3W:ɓHloLŽMNHIIZ4 Uc)^y;9_4o ?q:|3iמP.:-fUt>җDp&y?[= lp!Ep6}h1Ѷ|em3 MJ,OF^FanZ$4G6(('eR%Ƕ0<9Vy+ڂ+HA&5S?"H_hk`k_(3 e}6RL 킣f `V:B<(4Uȳl4!9߼BdjÅ)sQJ:+YvK䥴6ŧ434DjRv0fӥ2;wWEm[M봳6#Ff6,\}Щ&+UGya&DTF2r/g+A! @LJò+x_gc&ӗev)]˼9v=^iJ?ԸI{6o^ 3jMsφQբOʭrWjD.u@&`= 7`MCWQfU]?>OϳCtoh#,xCA }ݚ( 1IC/[]=EzG5 $USɋ/ \`[IƪWٟZÏ(uVe`n=8je/Ŵـ@)1*Йsz oey$FӼ7j,.@ڧ#fo;9ʨmqe7g|{S& e'É/Ih(0KioQ*0{`E5 Mo罾5nj^(nrǚGY7=!x=qJdL'ʡ1H2ӭbSaS~ jyOY`C}vl'4ĕ6";(s*m_^|Ӡ%!`]qʬ 2V[#I*L!=Iȫ͠R]/+oO1D ]`pe7+N ׉zǷ.)cjb3w\7bДk+%)8b'r KZL֓#E@=98^PPi)K73N `, W7v1,CjU5_-ʱ:k76 _Heُ≠/JRcu`k!` 7\ukSZ|Fl##Om5ؔCq$Wdvs-XH>:-A)%`-Ƀe/kƒWUIi?fFBrVJ9Di@C3U:cF8\] !{?F Qgd[Zj(hׁ${ |KG2FoAՎk_\tv'gc3pG ~ B[j0[?D7Q@Of#]sZw(:jPnY]rEWu+3k=4NǣOhnBh4ʐkLYkf;ۙ;<\KzLJy}A2WxL2@bT o%̈́5c>T)r)75y Tc_on.Fb.SE1ҽ< vknyI23jX52 QY5'JT+@6(wQ&E ISxibHh%7$o~Ȭxb,S8LC.D7Aw3 ,] q%QYFJ!dHZΣ hc(2l1%%&QL~â@gkaWnPZҪ칱J'* qFzL=I _|885FLf*rN5u#Yv'j=lH}r 4D~/hGqK8\Pva4pg#E-ٜEnK~7:,$yq&"oEʷEkGɟt$$ /u'!o%[NwñFmad[4;%V<T7vFWsz3Bt%+Uam~".lr/^(Fݤ/xV?^ɯ,Y;Oyr'I<&V}%]j$\җfX Z|jDHQ53?f'uc)^ŲDtByE1,'Q, E+X(bC4&,a>>z^x&2l`+IIڱV̳he*hR7nʻXE8T1; d\"vzϊF^%u!+&æRb\cfh#G{L#hYjB$Ro█" `s9 lGfT^cCH!;E0?'mruD{sC&,>؄#X6|J\3h6Yeː[oR^DE$3l9rUC=mfw@b%Fvk:g_Fol BK,$@mTyfN$R!Ǝl?:`̽τ5U%h6m)r7v=*&LK*9F찄fY)Ō2N NChuEӇ=&ꛡU#_]iu 3mlNF癙cVeze v;"O[q"anf79 Y,< rZ0X*9EULmd)9n& ^iwNˤ% Xpx#aWa벪cGōv,G@I\ Xݫ/rgj4GbP @opP5X.Nr:5x\;V;9`WHE">K)O#8<3>:ķWwJS(x";[2E6oYcr Ufjv>}骝IľdpJbxHFD/ |)&Z?'aIȁ%T2f%,d*8`!:.ĝa ^F y#)$[ߎMQR16rWRF Ŵv`#px(;u;+ZʲU{%qZFyH U0 B ?rE"ݯ =(Aqn@F':z܅:q 8(EY۳w=,b1j'p6oxw|f< k]Lx|_a(/Nhd$4/֞57yTK*N)ia+[[2.o+Ζ|u)[0-`l{"F5A+)k[S16ܦW/=hʆ,;Q\0` nD]@>:꼇>Yqrx̅u3^Z tK2;H_ǛjKclY~/cyi5Gvi6Vq; )Z0F%P۵^$tlAY?}ֺUiZmY˨'dЫxƎjjZ_H=d6vCq7˹:&yN[<ؐݎ` 䅮L^/T4=]Ê]YWP !"0#tAQk7wGZsbG%O_hJ]0RF)ޱnt"o"ll +0@WUVmO&u{Ju>ώ+QsbMAO_c<]L6?G{|rYX֙vJ١u)\}Q; S.rw\$_rѾykUE-ZF$),/[;Qr#>B6=2SMRVb _} Y*|20#p:N@R iS{+r%-{laPv=7T%`ey22=M! p;m!XִD$j^l#8Qe=8I8/4'S4; )++'r WJ#H=O]sdӵg#Fɀloå׳R쩟He)5M 25CzԭG4SF^b[^Y| |W\K귝/:1fJb{ 6<, Ll:\> ;JsZ@!vJ9Ȍ?^f /w<wTsj)AtU]Z/hm#snAN:1~{Y*&H'0GU{!)|7 ;z 4k) }ǧ#tr2$Gu \ឲ7x149#= iVgų vO]S|H6 (Ns]x=nniW L<{oRn->^)S\;RBc{=uOB]m~,PM>cNF'n ٢l;sl;b!ۿ=F9=z?2HVx56!ǎ pbuok(㱳G~` |b0S*2 upbDI^ԌF=P)M`. CHfR4OnZŷ, Wv8 w.Q->Rf]qX B@S*n 1 _}4U82l;Znͳ8|([䤰lW3wHժ!->Ҍʟ FNL\˔47+QaND;(Z{53(Ky  s5;3ׂ(q & GJh@R峁1;z©玝CrV}6 #WXt]yI 1`A`ӠBa׵l)sdbb%Wê$fj_ب$ Y,1QhC4dfX_])|1MzTYb/XrCL$gy!/B\*zMg75$LFB\j#.+QbOucL,r0+9pfBꖅ+lrUMx=+hO؍OZXwf@l`Msb &.7xN*:= X[q[py*L88 DywN7p {8t2BK%9R0&8Ba,WVfuw:d}#&gޒmg 4so9o>pd-="˱)ҎiS>pzJR?f- hK9%"}P333aMB/Z<$IpS_~ = <(x=@H:mNJ3wXNp&OhqOŧ_ DF5)P~Yqc9^ŘKX?q)Ww dQ ;Ĉ` e'"E$gf݋1𱬾 v`n9mFuGVz0;j._SP=RNkYkNhS'UQle-sE2yNb ~wT9^N\ J6jIwC:n~h_0k71øwGMFv۶](nOFLwZ-6zkM O_g_iXu40]Ԕ9j+Rf! 4~' zaF W7r5kTzQ5{b3RgTYUք8'dh9% sCBj(kDCsTTDڣ ?y\y|,ͽ)|#ֈFdVY\ˈ4[q $Xrz5=}-Hm3>^(`lWaڝQǹA81KDN09!JR8pQTۙvD)W'u&z|?_1ϸ{a5B87D#F+ / n|u[NҿTzK?:"7m]rѮ zTW.Q֩㟼dsv̬힬*iTd f3]JzUzB.Tw^ gSCiꭒCU8qei2F ̐| O }03~D{>@DZ;@b qonrF98Hʈ S#TDQd5RXrm ] PA<%4Be!_VN:COQnl6uM9_(3 u{?05}!5[>3ÐS|ma.K@T!lOTD+хJ#_'l}of7cJY=˃^>щ,4ƈrN^Y KN8g}gKAJ0;tb=A}CAMD? *mtb4.AYXGƗlܒ\Tk]7D?P^}% ~gy{T~1Ģ*\i>nO (6@?e6 ֔ XōvWvp~TEf(Ż&e+$a-Cp|ZbK0PlГbYŧnIbFPbDZXZD۳.|= k Z,GDۛ0ZQf<KH.ә//͐>=F uءM`a@ĪW6JX3nJh g1H8%ch\ǾONX,-+iDdX#% >zE#=iGu=6F~WphX+ǰPXp[wTRG^rGEUWS#ĜT;JDoR.琥kM(MfxUˈ'b;}q{3C)AFa'='3B97Q^ 4-OYQ-']WXTGk uGzI ,%UTHR4f18oԅXa2|wQx mݿ7ԳFlȊ@D @f`Ŝɀr ԆhG!LwQbחxՊ}ś,~1s{(_0*SPyݳ+T6p%!ܝI,oUv̨ n 2 "lI@wV|6Y[I]Iai¶KgBP:NeViFm: t( =A(Nλ?J8ar9!>8^\ w0Nr}%汲d8FebOº>}8pvx{+(JS~ot9n5gLչ=K}]jQE2LGOE"kZO.QSফx1U }mQuyBMַO̽ {7Svԇ5,JQ4V2ᕑ 765_NՠWsBϺz֤ ONUTVD,ʁR*֌&4Þ jƟmCDQ,x Y*/+W8v)#, PKeV&GߘXmC衈ei3b6k*s*/Mm:3<,x={J;$?u2(f1^ZD5K?u,B}h ʑ&XEp]Ot㭰$떫 кDXsq!DN}\HT.a-3*}Wf !8VZT`}x I,/?8>@Lp~1g_:*1Kdi-.uY@#1#A(@o2`ovC>09 Cl㼛yWgd|n]Qz,N3GTP}&T ظ N~GW~BXI[6?JUy E=6SJ:<.Yh;J4qy(7 # U?n-@RNz_l/s'$q0h\prDt{qtr# 0_f.RTx}td<2h >ʫA5ll@pn'U_ J9%ȿ`N 4da2aP _n hIvh_ h8)j/@)q_3,{{?Ӊ9a5JGaD&T:!2^f0쫯mp& d>JnV{>=;Bb[]Khd#曙):4vrt c ,K% 6cGGZIg-,7F]0"v- &feaBS!0rEp7#ROJ-H\w=$$y DNkPOjkF4t,km4sI#[U-be@i ХQۍlFu]0z`+VUE2bej˰W| r?}S𺺙1,4yVb2^ߜQE2ZQf"wCtFb8/W[[Xw.UZ-&|ݜM -21QU3 9XNB q#qۊ0VBu'Ӗٞ<xv%Ct[ ,wbrfp_j)XRU6d X)An@x[ʚj%+ɕ ^gwx A/ȒEKb߉M5hR wۊMMf$Bj`h{7Bsj`̀^ #o a܂ H-u#g!18]r.S^g;6 lkp 7:k=0~'a.f GƱCKGܮ,ߥg[ |gDiuk 3QcD|F1D}x+!8ʧDK~ iSqaw.τKWZ;iH N%,dC:%/@&;:- ]Bм{чZf?v|((όO|4D: O=`,ijGg4a6FG//xL)vqf[kM&3%l舯+k)P%YΪj@hpP`*1\<Ħ\`%0BU$vEqv]` O)p൒dUpod^fvFctE@Pd֦ T;R3 򒾔;e=MSmPBawgyEE?:"窶\-*Z@M'T؟j7m8,ws1JԜM ^KK+W7G-wI;' }eosvķHtsĮMĢg.ܻX`:oIwȹaj:VQ3$ٯ){1X@*6"=R/uy#'&[>+ϵ^[..Q LOԝl5wn`4At̔(p.%ũPjm&)%=J5$ DcBAGHV`O*#cDnjV{rϬf)j mƨ\|ZJJ7T(Qj=޸ ;t& 2m˯瀍uTGʇ`[dofF+$hfcNpI;~r NljI8a`tm_Y\WSt:DvD@OXꇱp ɰ*W.^/,zf/>tv͎j @%7~gm)rR-35?j$hg s#$|ŕ-Bҵmq^$<,ǩ]!/\\S EJ)5êRnX]VUm~'-5^RQu7Lp&϶ @:ރ!{+/ɢ1rT滼?eVAWtEށ;Rm=Fiwmel 1N=騠[lf!~HI^@䓁"ћR(+ ĎӿJepj,m*Z'ueVͰ&UٗJJVŤj_KeJJeqM8ȯXS~@ص{f8P7NOìTly{V)_SrJm<[&l(:Cz_ zk(g@ix{좻jӎi<gu?+ $cY禕7q 4[1v:>)zѨqsHb-AVmG|yd##23`j rhO[j\)mAvk}^:> J V]䶄WIpkIqةɟyCAAF0~^8Wߩe'ґ_R|s>7:ףK[Pa!A|@<1l]ճ '6 $zlU]DdE+6jOD~k r_`fE?i\u\4wJ^nă "G*Ƙ̧qF j(GDc< OZ8S. _ \○cM#T :7LJ6ZBKangT[VU9E5| 4ί ȸ}Ro߰p..ɶ.]wseC/x˴uap$zVm#N5Qq=c~F,p[svɏݜ*KG xm1u \Т~A ?[]H+vÄWلj~Ѵ "AJ.#- U#U?,)<3wNMb㌊~;ް4qTJaνP~SBak$߫ӢXP6DyoJ)׈IesH8ʸ{FY4lߔ{Er2^.d~-(85'x]bk!jU^ZMb':͆|[˟ zķ49wQ8/[yؗ9F ue ŇpgsɠUzb3r#(յ?N 6( Qsx?hu g+dj3C A%Z$e1DZtglȆ!EvFB^Wj؅"k#qvXG[{~,Ed yc΍dȃJ~_rLh35R=@_ ¼=~ֿߨZ;k@B9SمY0R> a-lbrW_tLz@W.s]CMy5U蕷'W -,Zjd[.j #dP'9f[o{wa{p_0sf`AjpA4%GǯLHĽp(rLwqRC{;!zPh1ʀ(4Ln3gg"͸׈i\ȋ ;[%tdA7-gd]tH\&a`k F .]zd!Re Xri& ?F^BEݛTaI0v2g]ZFa:wJ$ @@߻ip$s速ϰ%6ʀ4,<LڮRq[0cnjzcK8a@33rhVIq;d Iz׊!]|dgk 򯯕̏|,43L_vIMmOm8IV<3kmq—Fbtݸ G 0{p+ND1/z%Lì}.ȮZ6__4P)Fc'@dZ\>bY8id07M~Nfp.oQ9B.P$|7ń^~ON52.0ဦw_&u}E*5/{Q)*D%q`oFwjY@ezEy pOIwEi6٧t|='w{d /y6Rr W*kf!k+g0ÓkWMއxkO3ߘm) _be*Miu*ܣh_\uBO۱"aPh-x̎@ݹt/^3| h)={sMt̃iXOvZ$ ]5pq6Ehe6o(qhN '[9b--db0]Q ˽19Oyn=Z GOm%J4v`qH8iEC=oDgomç0Vj5,=d% >,zh䐖>m;+Z{ThWy>q^en%ٳۏbJHe=%^,Zh3~q1򗾸*Z]^l{A"j B͇Jש&Ir{/z"ܕHMU(-oDv~%T~/`{D ,O꒷ U&2?fS-X/U=>> ]Gt£ ̫cN_Dխ>xZWoNdT5W2hBhvA\CiZz:%,w5˜jl\7p[{+xLGS~0&}ZK|Ml#TS揿z>> HbڧpA_%2(˲{bmGR]~g"OQp~nD◓5$Sp]A)6!WݢElX8c].>iۚÙAPzf=fn^W0: "yOMΗl?׿%֞Y9.vV! [#ٱ/c4ޖ۱Y1ǦCV֑Z ٬ Xp]1* ^E747 \b1]Bϩg_)DM*<1R #T D$L0l}Dԋ8H*] ϭȆÒ!OgOQG(Ao+]2o}LTiUT 5Eq&ia<>/cqGxt.Y"D4)]޸B*5*$7"9ץZEt\^n{MŠD`n׀~;Ï&ұҧosEqJr2Kޯt˕g/g=Rhky& ֽsMITCR~]zNt6VZsz⠽_A_طR$1< f&AV߉޵R!a]w?OdrA&>X&Q QF6n ƒM,o4_.o7՞}խhBB.A†e!6wi]Hn#,^mha󱦁>>>Rh +gVY{b:KuN?G;mZ<(p]:qzWUaZu;:0N<'wo?%miNg/S"jSuU ݓN:!E-s!)KuP!ĶbBȗtLX$F2[çפNeX;r)OLSnfxKAi8+x94,1e6ku^ħk:$ZNY#|ق%E$H#Wǡ%wލ[Tи|R#YpxRD8٭yL(߆ӝ;V䣓C}$ibI/+p+NϯN ONPC73 <<5"b,}ءoOlX*<%c}T / Y= "+s_9h;\:ȣ/fh3G&wEݏ_VZ.Qp gjf'lMS D >S³@ @ oYcCZ%;wǘ# W읹¦._fMTgv֗WJި :->__$M(HqS#K ʃs ;z:4qWMxydOX&WZz>uE=Vy&ɯjRӁHrqO\{x-ȨݓhS4($.>8'JD{\xݛ1,@Ri+W;=!@y:>ke\jq"S=K D9|/(*H6SBg8mhSa1YQU$<"blp NT5!ɵf<nD!e(^^PE!vr{[6YjR![0m61f(w;} v6?u.7`1ATbOH"0x W̧-L3JIy8#hUk5S|OHîʄ*둶 3R)D [O:1rzQOo`gVTX4Sace}y.;e.BAfPai$lIRFć*-b t9s:tǙ+8a#bNl`R`n~T'.]?_Q` {!.'}2j3OV[giUwR 272N8 Jy5*bͤ<1>b` 0Rh^cO14svKjڝJ Ok}Sn Y![idzZFaA6^"{A+,fMpc\Ɣk5)U|sod%gלLHz0V ;a8METGy'`8~ZhEqPJ\]<[c$={GS_`r!"ggV=%V3+'fL}ƴ2:Q]g6Lg&rݏ̾WMɞ* ^Y!>qK>edZ_zև69;y@%Mx+a W"fF < rA(l_0kQV#FI_ #T0P}p=zse(A|d;0l5z!EEܒ||rTWq t.qcB4iQ-1m%l"t݋:W81+K{}k(rf)D_Ɛ{ƍRT|u-7m}Cd#!խN6~bܨ??!#9.}͂~]s+t.< P])n=m:qF_qN2VK0)bJ1v76ڢX FǤG2fYկOڂ Fܢ *d j>ч".]Y*RMМWPGg;BL,%։Mo P(FmҁT~[D (wb0jX7k Ca*(%du ZΫ;kn ALtnH]ʆn +YV,\|5Y5eǔLjh\'6-7#-Znئ$Fz?M @ К^t)E|rOhK/'&\4 9pRSVE2\%h7 Z=BYjhkP*:.H3Q> -P J04 `G=lhy'*0!ǜ:fսvyT@[X_^ =rFO/¢Gt8v Zk{U/$l_OܺX:k2HKC ƒ(Uv(;Wl|h3Q$¦> ;&XLO3rgSlK2*F;uzNZћjET< 5{L !ϦU>,]齧 Av#{@ٖmqG ]t)^iQD0JeT5;aࣴA 7@1KKǘ pݠG*sKS=-RZ&fwy>S 7?v; mlolv ˆ\;s6Je n>|?hG%.Պ^мE8H{WK\ /$",^P[q;g~'Qm{^&r,WAQ (4ܖ0)uMpa|HVdY ?X-c dJ>5g ~}>(~kuhss%T֐1,:6\C}vvXPJ7ڜ46DmE8[u@F(pUąyIWx60k6};ko-߫E^4%P=[f$v*L/KhF_Xޝb"k<')xP=.]XШod m*L}50H GeZjKFx eBcFfCcJ?4B>Dihj&h`(:Kw?66t~Cyr{)A *w]\G־eH"gB/k ϱp_(?sf\Ϊ6&h<=ˏ %<Y ՠp%r~xLcl]R!` <ۊW>I_p+=eeK.gY%"i*ӄ]r{7s2ZC"9 dX)Awt5f|*mڢTFmpnD>ަP"e[v;J8vsr MNYD[a 7 NZ!@X`m%(][O'E3p vIj=66INUYLAʉG|t$v$N` ܋g^ n.B()2WY dy8uiNɯ?cIX$tZDGh5zo4յ1zc]A"s8(_yW͕[+)?qJwA n/T[єOoM7XJ`Z)m|þRϊKJisF} Y -;͚uM|4rEOdB~y;]MBdx9/fT{°R V-m8Îr=ybp\%\ ]TEk8bj5]'ce ^I;l|RałK2\&=>p#s-V}c_pT̯Bz|Gֈ&vw%sKN-dtr\ N;m&tC$Q6B+D6}зfwv.fGV+os(f" |W\@Pג 7"ebEoFmF ϔ:[ 'I=z>T)Oe]N5!Dݝ&[{ RWj^~gMwm g<%9A7Kky-Q`e,;5$qR 2v <'hNٹcq5f6'nÕRchVnJ ja::N?08XZ z+ O_r$Pj'>n9Xh[NN-imҀQ߁n?42Q@B4R4+/EWQh.1 WqQ0?\ews(s9JJVX%ȴ'FU~MEuwj9[*y$Ű J)ze G@Idf-S`T,}"#%%E7Tu+3ʣaQ ܾ &`* lL29\xry]Cxμ"! ,cZ:r<1b'kx%ᤉ= ʞ%~3K q-YJ!&Ǽóa^Rzqfϲ׾Je\,BLTKEQM{RMt_QP&bcg| zNڸ$?ņ`09ܕEP<%t& y,Vd{.\äBQ5* Ǐ1r5wkʦ4C"[7vs/Zj Ӟ`ؒʚcf/WV~5;vpxr=sDFǮ"F.~=GH_ "-_j4ڼ~t$fh8YRrWwWed EJ/F҈貯fC ䷈AU)nk}Tp^@c%$ 4 `v(~nq1Ƒ*1-Te>^KxӅP&:$K2)뚬@pzR0HEP ޠn(lhrt|Z %Bj @Id>=`(ZuKOl=$|DzKPv">/3$XYam4}P9P=L ?SjhbWoE&9.b W'Cl*Ñlt'-UV\:rPU2 =Qاv^B0د$5@5¸@ROB]FIHSc#N ԳeOiǕl`ۉ+Pک|?24ShՁ!( sD%PeRA+[ U>t= _KMN`r!xέйw#{wJ qZispq7LU? #2+ZY+:|$/V`@)ܦ虜+I5Kw2O:5 kwlXtJَ^p.6SbRXIQ'jRX}LwPa2xӚ&檤3h')5AV Ncv)J[Z^RSO2"=6uIG,=±j!vMV < kD&JT*^`GT}wx@Aqed~ L 6MA@?rsge_Y{B=g񢃹zOװccsR_2rXjg VP/,a(;z`r7F L 4olJɀA\w~@g4V̽#V.vW{KAGj'լDY;b["}o2Y\Vp3ԛ4: DO-ȢߨL"mvpEuoy_ʜ%"["~ $2xj+[&}0TsTI!K9?ccR$&xy᜚bJBa0f2wӝct?^Q}~ 1f1aU3܊'oοyDPƒ?$eEAec._w\3~UyS:"wx=-gE_)׃p+4si<<ɧt9 fPzc+5Q*2TG?D- :c@lrV厯/iF"#4;=- ۭz|Z|G.2=ŖD"ֹ,τ5!xcnR$Q)u&$]ڒ8|\v_͔~*O?7Ycx QW'm3'יxj h3E;^~8 #92'D4O̺>(qK9_`9 JT&Z!F?m]^=ΊV] bqJD1mIJl_eRڅ5ޭ+Ly<抜(8ACvBA(=FG fj G'l͍h7:h?g1RPpFASi|_<1C08Cn͌x)t%Mʚ:H2&L,8 >@ R[ڰ|By]kѱ[xԉbK"B*3)q0B(V(Q*m=6_6%UPkO^CC].p%_MG 0$`1&݅HbQ8a]5~NpXYvcn|7~4J', K'ʂN]AAe>z lm@T+bʜ~Z:1i'h}t5Gg w!zjN?qF^^Nt%LdPUC9&FLl |ܻ7g19?/9(N쐄Y"uc f)V Ƅß'4jDmt? 88S&n&,OrpH_W!0ꌧc&&Y/,z ,m[Hٌv$][h_sdCC"A$FgY cKxr7:Obf%[i&Dr7h@:{I|젤n_1Zኮc@C6}t,WS`'Ur`m0סw6qHkrX)Iɤ nsd}os;Pšu^HoJq{>5͚*!?mG`2$ ]h_81WN!کfSaEOf1qmrdfVTvR̹̗6˿ I`ӲieKs$a}e5 wE [:1pm !PW>g^8w,wya a^N s5-EFOش=c\4mV@T IoLs.NTUC۲6#'h{Bof$V>NqSk>Qk'q򬤻喊B r/w_|`:adѐnܻM` ͟"9JpZ$&pE\CnK2"{Ac,4Ǯ>N7+ܸs Hq{nԙ.XE"0U̿b6 ₅ Y`|`;(w P!H (K 3!B^gu:Q2ۃg1.wd"4I hu/DtzRkt[Va1K\€Eo7f+R\6妙=?g3+ > ?^M^XHHKXrOM;sׅkS^2o݁R rQ̯YiZݛDo󷣺F '6 P}Ԭ1|(j1-٤O {w`Sԋ"шCV"O*%Hc\ͮ32uq-}Ӫ'CSU|S>Gj~+A/yޢ8-pjZ(Nt[{! z h`cFbaLǜBB" L: 9#˥``x3EE2CyUʽ LFUFb/Q$!zЌЊG8#bf\8X^>K/K%Ñx]?WK uC켓HsЖ/=5TCWTK,$K&Y6Oa)Nn83YxT&I\PCNIwAmNS0Zc~7Uh#`8s2kCot`}Қ:3q#tNUFϫRJX'^ a# ҚX@ř$wT _mdh1Պ&-!P`K[\1"!usgx>Cų`׭Kvu#.+O~QEz8pFE0W)}B}<H`tCi,Rq$D}PPͧ2,V;Ux֞;$LX(fCs${,QzV0:Cw%!se:Cdc Uy&ڠOV Ifå8z+ ,钋[@:h1 zww<EmBuDV/a`QA`{Z?Gfy8 }n!+z{W#cߋH$MI L1aLNlAVuBrsIbǜ;ˊbU6Į[u*TuߣZ2]d 9!#Q ,O 40ώ(%οV6q) 4tσ(gxQY}z/Pdx\ӁJ0(7Ʀτ{sSfn;%a2! xkXe"ehDD#"4<"XHƻ#\Wյ7 r>{Fhuda2՟صʺ5p@{nwGi16(}B处2+J4$#HY{冴>[ mdmވB2:]sbh^m!Ja60AzkS~r,""bxQk< N"AqxZ!=VǪ\qJ_YѵF"/LXDt2Qc͍Hk l٧s@kCA>O=8{3JQY!=D@kl! VEdh-^}fef:_i. K`!x&(׆>d-vqqG&qL1ѿAԨwPTF_4BڹziaחIu<,;9wIRqSEނ{G)(w*m9Iqǻ\8 '=I9mՅJⶆdą++8p|vBɋn2g D⒠3v3<)~woI\2Azrq|7L0̟T6R3#wZGC J835;ksU^xD (ki֒@Ȭo( @QZ263 T70/9=(Ůp/ӄ15o*^gbѭ[+v{YC/-D:rWc'8#]37"X]8{s9+"ONa<$lYar}8wjNwmQc}\R N:4OwAI}%WtJ+#B+? DŽ}tg O,'~ !:n1>m"XW՟ kYl؅̈֜綔騄HUQ8>CBQ%.*^fQqi_ )myOa}*j΍E:>EI`l$緬lA?|G.9͢g]?an\U]6ieW3?$Jã<B{Ji誢p3=ĩP;m~ĚC>KR#|\qXo͝z^/g5֤- { &Dl[v҆^k#m.O*1X>Ք~ g/7nPEJwՔZogD4l)5EM(Z/Jp}ύ٪7jI(/ܖ̶7<~ՈF '͙Fϕ'-*IjUWθ+ Nb{zKŞ'kwLOQ(KW38O]JBՌ7;=>Vpx/ڙjoӸ?}X yl|r㍥9OdM/qI@Ҕۓ2c"& Bo3Ev (7Wo߯qkXL_{Bl+OY=__,g#|WBFj(<$_=Wh0GVH(r*p-u;hO&nSOh hNLkڮD=8^x(c9T,V#;v5$癩ŵĢ/HyF\>|G+5Ѷb8QY4lq5=ŎXJ14.7\QM[pv ;eJ? wNTO>'[LIzL,z{ՃO&:!N64^yG .i4٪L}5 nߠv^ _09κ%R!13&z )+M*9Jb[B>4? 6@Jm";û 9szu&N x5z}UAMpGG.U ю]:ʡ!E#a ݳ#^i9dh+4E9,5~h셥xݥk;)PPy*qTTM{Bi*?I F~O|g¨[T M=煮›KXeaΓ3HjS"o:ljA삀ɜhV-}KS9-oZKAMV[D-,׭CG'\Ҭ@{eR82b9Lc ڷ5β[5DF-4_迎Sh06jF,.]>qX޻櫊>tr&v + ЫۂzPȻsm!{ VPs1ɞ<nw)hq%PQ#0k:wFm?XI%#Лu(l)&s҆pN?0Q%W4a͆'pvG3 +tL[3x[wVI sL p3% ?Xnx5GuQC%@jTǐ^]꧎6|k_#0ݩ\k:mݕ߰WDߋJSI7Thg6n)zdg5,A&=Ɍ5R.yag|~],Cps9ASCyVO͔Rp0+qj< LEgk=)FTA)5B."[sjeo*rA5o8&{8w[,kHfZGezH>`a C= WE7I9'@PQYݍ;4ni´spT ~8) j(%RX\} =m]6:IIj5M{9!v(9`d6Q'(0 :FZM.bm2 -G2wA *{КhK\A9*fN B$%@ib-Q]CaVOpܲaPK⮅xmo-p+ΦE]{ M0?`WQgtKϚsVlN\s~hP4dRyvwb&ѡ9G[+ReP-b7I<:Y]Qx|ءW8-!m߶xn8!()3y][5V5LQ)Äͣ͢CEEdIb%XӋ(יQD&e`[Xq&K,Ǽ"ƓTPh؞{8{Tr %iN&(I8΀!/²l3Ԥl"r[Gn+ET.0wsdPw=:8]݊& s%W9*Fֵ&g2iLzjB:;qptJ8ơӖKI Ÿ$z:XqblKTC*8 m}i>|Z 5K3Fyb nÄ\N`=Shvaz[2ҿZ{.fҖB“fK4e7 D˥Dピxm("59%G~&󪛰⍩Il˰HJfA}7%W T/;?"J*m[1{hp KxQ(- V!E D(m17p__v>n[𦢁=q!sN"+x _`s4r lgxB}Y~Xjs +R MӸXؘvn9QͭsӺ ` χ{a/7M it?Z*b *4Ϣz e %Gk77] Qu`Fŷ]_ͪ eޖ#7?coF7ص^O\i)S8׼6]5ɿГ+?_y$nc! frx([GRz cYrqx%\2(8ȫ%4֡}тu'b?>ZRm!^UY%.`ګP '#g;o9V+{.$Gm}7Gna^Ufk&ΗHOJW{' sڢr 8̿O`!T6KXNCAȚTȍSˑ%f>,8Eg6}ߡ osN$!%׋2CTc:l|&8 رT*}\U E l!=$ًj0F UL`c[iZ*NPz)^!t޺9&J! ./Q/oOTƇE`"=.0 :,$Hy9U@{cZ5GV@w'O"xL}⧁ӑyv] WjOC7M}3uŖ_X'3E4"RW\8O\e3%O$[HiYCYK%!ķπgZ-tRE_$3AkgFo .30bZ:r_1rHy,Rz@1~' g\[gBslOoP6;4v>IWЊ8d]IWf]u B0 Q\7C6(Zjk}8fâ#[-*X )YFg="m4Liw3ۊ)^c^-}ﯠG nѽu#|CRl.فs!:ם%Az*17z{7S=Mtq^v-+?v?$KOU;^K޾rC/N"TLlkn+ȑ hw F ?tjSetq^Q})EeڊN +)`}- j%qOYJ WZ3&KH0Q˨Y>3 \▇5g)\Z|Uï+g)Inc-@!BXQg<?B}#}%ݛ 23{ @xʣ?Zr'^ :ƳݾQh_>g"LrgHX,=>̚:k@+~}fLRz'}n%YQWNOͥTrOгj;4Qge#ޟD &L?/NE|q?饮MD8h_pݧ'|R 2mkGټWc"?OTՆť?,OPUwk>պȶr/ pr&#`b=xP8V@ a>ݒ/\F~;6YHƠʚe IDB_˃|1J§߽4ZN_0UQuYf*!bg\㐹А+ S􄁹ߢ^Jͷ }/2K؏[\ա$dL*s寄)DZr0<1w'0]vZzI`p }+Y4wDр%eh#Sj7RӂCl,xV_3EMDOYݯdvۢ\_FNޢ<#I .:O݊aD1L,M˩PQ,`7vkW܃5{_7}'o%J |4s#(ZȔ[P C|? XFW&P 9hէw3oq&pq):]):!|Dq'׽[$kpZ4+8- \DL- DacaD.svɶήRV,_ؕKZze*.02O}HknHeZ L3B? ]& IcA&Wш2M @l@k}tu$VO@xT*CG˼YFYEˊn.nmgMA:1KPlfQ9vL2^8[kKZ Lj/r\26v$O(ؿ?L xտ5PGJLJ\jOr3 Sqea@W̨׸ >=b`ߺ,K=ojwJe:Œ6HkbI%Ahoh80/"qs.{8{;,0i 4LwemP*;4B/C4/a>TCYv}L_Y:r0mJE+Թ7nUzur[HK^Հzm(\>ZXĕA>⸑6=_Ǔ *gEǪ%?FL{PU3C._[É|Q/ص%hM>ld/`=f\o0p.]L&*rѮ0-ARÛYX"&?[nCFX`—SerFh[<I_Zw#gxL\H7fI#BG7<0!bL%+X4bsTGc*o|i8`x%kW+䝵Viɶ9H2 _ rN=9$ARyȊjX xUYbCу +͘>:i 8 !Y1>_I\zU {R=%,E/jZ{|0i`3h>M`dNBFƒ#ܞN'vӇF kҺf,m@R/ۡ-%5",Ђ+=0We!{&2@ # Ҡ(eg/7i?5xy`j+-%jV[Ʃðh ab(LE(iݮ2((145II1RF`j MP,Ei>EGj1/E8 {KB>WƂI6fo]-3ks 2-r0 '.2 p¥4tVat-1aldÁeGou?AG[6x K_tt+J)?m`Qt2m:0zLm'+)YE.P+d\==soo"pQa0̕<:J{5PVϵvܷ>vyxȨSdU:)DU +Mz?j]HTz4yuꂙr,1)r]a`<gN-ˋ>'TmABluG<=ڈ]MotY .W*Io4MiE IjdG[q>./%ro`u`<"y3'?$-n_*\:[(N'5Wޠ'ḽ"e##F, nAI۽'oqI4%eP-x QSEzBU;o<'GN)]@~4;ڕ`p̟+-9G'8n~tTfA4Ǟ15Hp&Ȁ6u0~KyUa0c畐l"#[3n@&bөfݗ(j$?PD롦\'ըx^І~"OJBCB6tI9!0_Zt' cILW+v8WBKӿQjv:ϻkj|2 iSlELMt4}ŕO!i/=O:SIN$)p;7]m[j(xqnu+r+Œ8\9u"BPN~4}/?, xUB`8° akQ~/.Jiׇd_l '$Y-{H`]1& eCOycoAe]WE q"0*\W?-$c7 FIE4fAE/ C\|M46j;k1FȓNi$/ZoўлnݖUY&c>Kawu61$7U9ΞM[%sjG :.Jbǝ/嬌 Tnv#64 BռH麆M;c= TM]fc-'Yz8zA {\;COW7CiѬ4dY7lv.w@su12m͠YT>Ϊ(MRTnԕW?jMMvlTc)=y(;qo}!:.0#gSTm[&Ҳ/ i;JSoJHTV#zkʡ_[Ćf+0NΦaٚa9Ԁ $^Iz%v`4 N3 !05` M?$I3p#JU=( 0솧M_/OX ;ՙ29#~6РchJ@#pHKB5@bf$+U z~4 '܋B2dqCbb3,e`Z{m~6\ͦ~&sRA´aHwKo^Qr'T|-=L~ڴ4Sabq BOf} wi"I5u+ _ed7y tH އ & 54}zױ} y9;;z d p&Fm*9#Z>j+GerK3yZTB3k$؜ Љg"WOlL?yy@7Rs)?"+*FYbÕtŰDqYd.vC4T?b''+\l*xwfü r 6j~PlyUcTnUxUJTtr>jُJ)^cNϼ*tmx"4,F5I݊D{aqHCs{{qԊ0.DdN؀T4!3w  _p:G]27YIT*cx?MV5iLٳ mEBUcsG7&jT䓑 _NC}BG.q GH5J[~'V(uu FQ~}$RWe *g]ԭ _L7^4S6f`u3G-ɱN/5Kk*Kg BF%IUś3;U)\EucY&lch=ԗdë>w`l0XX=B.WV˖I-|S`?u/IpAv4=.߈_&U jevJ_5dxD#`݆7B҃1ۂΑaVf=YR뗎ș"vy EH#K%PB 3 ̵+Mȿlr? rb+a Eo@n8'h3YzDYQ|9ld`(l?hZnB'\+OQM]gIJMsfH!n+aɚ\5Sh?˃y[6zze ͺjGL*/.S[\O߀_jvcRق&*AQ{q-ޚpJ,"ʇHK&X azR1wUE}LM(LD_ sG(Z l&G$lfy*UfN]zArQD?C +ň8%P+b cL M'#_ɥE?U\oE*nS❜򸬀[kPV0XB)Rl5"В@6 ;27ڋ>DyD,L\sNJͣks֟mE@Gclڹ*m]w 1}팥lr]<%`w5,5qO^]䲵FW%zʪe;)`cG!9ɬ7Ù ΋uIFxJ3u{RS\_1e)U:ŽHfZ0 zo¡P}fkm,n^?Q8ԊP?-v d[C~u=Q0t=XdA ێ9~RDL+7/c `^f0m1;Wx>͛?E#]/"2'I{l>" #WÉ1w/K-+]m٤%m3= aNX1TN^Vc" 2,9(N0Jj/gGNy ]xzW3'Y,UbXZaZl)!!-Z2֮XfM=ZUՒ(2_\xʤ=R;k@+ucXSf ]%jO,Hdxc1̙=Ss*i~jǔoI\ScRh>cv8;}'Ce~VpI8K _s'qsj?.1] Qq>3E 1jU fp7}! M_q1n2uޡO<_Q:3"p&G#'%NNYУ: .54 ɡ/huH0%v-A2L$k;LLw:8'x)yn3O:ĮuX7w':ox6=ؾEXJ}7ϸ9Ҏ)7z R \E?ĵsic&MyԳ-k$`R?>x+@>$[f.YtЁ[g[Nn M;Bؔ[-Տhp^ear_$S 9"jx4 rY ~kI,d"H:Ú@Gus(LIpU"mөWaV hV.y( T -8EZXnⶽNW41x͎TPZqS P|H s( ɀeQod݂K\DΎkd`Ȃ7ϨQ=n0i/'bm0WaCCקd;KV2S1۱|}R澢ÞAE{;2 p9Cqp:ƹXU'wg2m;L"^hL~@\qDSlKK!|$sA`{*j] Nc9rRv,59 _Z}A=سɯ!R'(뺆kno;~#hN4U6D~޼,A'^GBՎ760pM4ajKԼVʸ8,['O:eZ虔#3 ߊ5ߎPJE\{2" _67"zT~%WM"L*9-wQ5M+"^Ё~"" R<~w[VK@Lȥ/.Fm Mݎ}`!$(r/cPW!!6RnI<:0wQ6/ ALm&}rP t_p0"\^UU^cwd / )~m7,ou/5STU$ql ǟE͎gةg>P'Y&}F)R[5YԜmfۯMUX|ݎ(QUI}R.roSq/+rvc1k.ń,pi'SwUq-Cw{ʁZ1 ZFiJrq;SLM[RUtjռqvݷi_P` HoP tY%2<쎰k##;o':L\I'S+wu3"W5&eb 0aws\c;+9WjL Y 0yKb5c&{xIqƏ`JR"psrCpR۶~5So~ BlLUK8 {s꠫%0Bm/p`CO#(k%4A;܋>H;^ ݀9ʭc$.ك)hDpZ ?XU8yXX ?{+Bf,Ǐg7z-vl=~w/>^ͭ KbɶEp/H-^X;>CVIBe&NPN 3\W0;OdJ?N),7'ځn\M$ӷ\9AdҎVVW[>vMU-яY߅\я 7_Koa չx# 2lh9+;$~~8agH#z* aV|<!avbX,~XJ࢈ ,u/i҅쇥G5B#ÚU셣h!G եX7(`źȾ쒃x:A4+~Znfs6С7,E`cR@]21e}YǿEA~5WKV/}6OJ10ā$giRIi%žN8aK-TtmS]wdvu;C2+omͺCK}`$$9koܪs _ڿ<^]k؁Uj(KHI #2c S2qV|dSev|ArTRIǤzGv~i4#I sOO46z8lURs@9]FbpUY:iT&ms( )u ] Hl*:n&oZ 7`4[V {Cm({'7-bM]kJ~=>޽&ci0͍@$Y Wa@ aWءuojL>)+Qa2BSfaAm&7a+t>p7ZElozy9`p9HrԩEH?pX~#o%> z;>f;\eQ"]o%o!p*1`:! jYݙbPv.ɧF&B~NpMKյZ&۾؁?e*'"Ϳ\_ra;&6EӨ0_kz)i>sV4`0$,TT (:3Q&VjfW3̋1|_wּ7Haƶ%,BDx{sR"Ʃ.7o C&lgC-;CQj0E̤Z,rٹ%у$u2pj2 RFշiWa1tJsh@+q?Mveҡ<{yH.tZqmcȉ'MóiWih-Zvyft%3ǰR0ʺ8T.+vh֕.& nIe?3!TQņ1iXl}G tLr %R0=A$E S&-Fo|X I‚hSi`XwaM=X08O6mzX-]1|}4w);V&b ^leϰ5y[E1at.9mBrcRٴJ}Pw;@iWJp %˹2k4C=I2d;79R(nLPpkJmv t| x^_|S: T?@WB7vFϋ> ZtNHj0}rKtʐ }Bz.)>Hi1E_Y@qERP0>k|?k ^:ZBĉPoI/yVvM S#J.c?p:M+$39RtK=}3,S`c9Ph| bT6hZBV<?B;s%)wJ,0S(҇j#Sן Ҁ.20_]a^?Èp$?WtLgxJJU.֜^Qz[Εi%cyAK!Hqߵ0 hMZ=\\ MjIkohJ^Gى򕢫式gkY3NԎbBAr67$( fۤFrL#T,J\G ;(W{(jVDc9 }o&9%SA~D.M}zN+(FlPSסVo, WRGj0M3Z!q)89*)1Y8G tT_~hZvYUءcpQoa25Z.ɽt[7^wGFQ"~}$H1TD %Fæ9 ˂!Xj͹Z%-H PS`ÌJ zEƴ%c%`2QQocEa+"Kg_ X`Nz5 WFM^3Nd_Pl`o n'B6)[= }#gY@Z_/5aRZQژ\7ߑHuKxB#m<{*~ST2Rg 8MLD*_CvB|j+^(׵9 Vj'Mhl$z6|F29~.sЯN^E>Xw9 dW:3؉TZXNC}Ezϰk$nv+Glj č-0\4:g.]BPŝ0^IH>t8_o;E)G"z˛_L0֊ YHz<23LJ3 >6ƛWG (ȍR摸Uvj0.+UpJrZь.(%P7TE/{iԖxJ9@OnDm!.?X%R[qpu;滤]X3Z9֑]G}eE[XzEՑ hK!E7q"YٸW$6a}?NӼa" 5k}"6)Gz!Lp-'͡}yx'‡CU 5 zyǶ6}y3npWzߎEzz}i `Vh6q`mAc6\ŮG)k,P_6`I2 mu~}Nj8ܕ! pm[Q" tLqZFIeF :#~CsCۛfBCl]<3fZ8LmXA}Erp_Q,x'] n)J7)3$He}+~ 7e+`!FWP(a)$h;U6ŝtbvv^GagdOʀj:& &;S[ a~ksR_,QܙZK#ŋiђ/gƢ0X;ܰ> "sl9BgQiPtp&3ںxƷPrſ9CojFn-5~ ̯v˓ I' M~4hxr~׵‚`yY/Ϲ.&s49ȥp6moիȦ#5#R0YXVNa}:<} >Xkí% {jKi'ek+`|sn]~(4Tm;ѱkRӮ γ0m :T(&jʰv:H]'HBLdLEn(!fVU7ҽaOngfB3paTm$<nla?t_gMeLr﷔LY3!T: GIKEduwRd^A&x='tv]IbPX۲-`d -({bT᫾iUf Bsʸռ M=wsﴡIjyaPp`hncB^%.#8N) p$f: r%*(]_(F^Hhu@i%c?%u?,QzGm2B &b<[%(7$V&_%IrnL&K&e8 ny֐Vhz'3]uV޷JfI{ /uiLk+|.K5LU?! (J0-N OG,33WctX_,s1MS:ytj^04_X4I/Rj[Z{UީSwt3alؽ_a Bz&)y0ضW˩շTҿ׆L8O/k(Gxki/u4@s/7IvAcƎrzQbN!)󹮥A',i[Kȗo7 K&{ w V-èӿv_E":&eqe\&0 |%^l63Pp;FR{^Sì'rĽ .l q5Ôw--x{66z`@+6Xit+\EߙEQ8ݚ[pXGM3l2dVTe'qO-s2aJ,Q [(?+[SII:%Nb- wW2jbKNV \`ᭆ8=pF$&c Ea`#D_'¬L5EoQܾMǥf4Ƨ2ab{U1>T<̻[$?c!m0J 97u2ҁ:zsDq f0?t*4֨cAX"fޒ VQf(2ē%wM [b ܟ4&+SH L;b{6N7{~ ڭ)|#[l*]t$Qo [lNn~)Γ|tÈI`x8?/[I[GW,aqD5oGl_SVsM2R7`S(kQ `,c:wÑ(!6qI%}Л6m Y L *PT@f(_=fa^@]Wi P`%0{2DpY#Zf2vE8iqՍg8CIuыNr|@'U|I1xz:@3j ^&at 5|Vʧ-4 ʇ98¦6Aj،)QK_{wf$YLb[*Wк]QLB8s(QU &,'wH8)w+P4ru#jmr) )uR~z2k=| 8%ZX*_=.q*hfL X;"'GFB+U,H@i@G_d+ߞ$0WO*q@sQZ@&."@~<aO F#Vfw%?)NFgJus̊#@1Yh|*LAW>@f˺Cr  S~Ɲ2}]t:Kfߪ]^KCXbڹ|U&2I) eCw~5'С9Ȫ;@е407<yZ}2^!ǜrn@ O(I֑U5'oՇ,G1в'; ..6Vg<1nPZO&R{y0A$*<%I{ܠ1dh o®"kGdx*GIɐn>&̇]]"#֋c/CI? MGe]s0aaiqR7Bv܋52/Tk v]hw+Í2nOڜ?l:*,vR>#8*F )l V:y/^!Foi`r/0>1[\-{QIו$e.=.6%fWaJh'1>]R h?ى>$E/!(yCw $`U AuRkU&kqUc8MɐH SN$ ZohGHse-DQlpWRKΣCd_twMHV8hMu}+[[%@M"MRoOJlQ1dCE%2_- 1-N16B瞓s׹蔜dv#k8m 0v^"įgOy9z19~+;}b Pg%T `La+R˨TgM;ݴCWO5z1J]{CAZ/A1%fN^ D){F̘-_gw3kt1kQlޅKi^BTM!C5K⎫ z j{c3eI-b (:[T)dZM`hU]g}B6g 7zEAfxy|I@עyPqȗ4f&m;Qw4tyn}{>Wlp߃i>7qh-yt*0!Pjanʌ6G+EjT okD=y ]AiA.6MKEw@xeS߈M!̶ # ; ~HG˩π60V\HQ B>eq1]s2il, ڐu#rB8l$?б%a АаJ$PW Ox#/`W?4d]v;=;S0?E嘁on+jNh"@qc Yu†ĩZM շ` $ sCJ-)\/:c}ms3r1fhVf0l̄Y\Afz{P6c57f#Zhhk(K| IP:= ZX6su9%wK$pumc`YԴ MK.uD5ޯ aő[&(/:z7pۃ|R.ci3!s x ٭gFƙ0@w xj 4PQ#`@3eB҈|l:. SڷTu$*wr;@B2$,~phmFda֮ &@Dz!2wsǚg$t8wY87˜$}qvDZ!K6`YF){ &ަ6 dit3M!'~*&~JcZw [Tamӏ4g(귓 Og#뜧YO7kyRX 1ޮ<cH7y=fUuue3*і ^{|iQyEo# T=⑥yAZ"!E5m%F[(tpt>V}ChLGK Dc6w Xt"M^,LjIb'jc|] ukR?&*ے%()a}Pe^,! =fI`<`EŴϋ+ ))9ͯP-Tjd=u.^x8m.~P t3gN۸Ùлm,Cݑ3a$7OGj&ª:u'-`8 J1S 5141o-)uZ ڑ >57\txW%_4`>\~^'֗;>9Upv9E4H~:g] 1m2Xf v?wl'_+h%nxѥRQj~y?bxE@滦b7F@V$ogESyi h;~ʇ"N]SE{FCzSx "JeÀ F`{(~̂Wi54g(\}7M]q?tLőf} .eD(Y81]BX0p$= ?dي 9B)G(y3FYu,^w%aGfr-NUBL'M;Ĵ ,#HjpgHaJT6)}lASUj4+Q#.nJT4E.b |M役ؔLn"Bs TΦH @/i1Jzk/rfܠbǒKjțdeI셤uOF[Y™gYІSZQ@֍ol,QAR!{ԸOTS\T(@ނ^CNF2zyR0wEHXIVP?^/2@w8,xT=V>!@aḹ*iEJ1^Sa/9-M5E\Jnl*:(zD"|~h;~K,m#'Rsb1EV!ƚ@I@ևX|S#_eMK+]2#ur$MMpHnDH9Y?lo"l#zr:ƗOAglX-$DZï6Bl3Riw͂+*{URÒI4-gN+bzD6,W%\=X[p GB_B")Njh啂&tApjM[0p{%]O?]e:{;"h7 Μ} VdNJoq~r_MkcN\]%^:Ld5ͺU`r2:.7AX7UU\8o sQ-ũ1NƁr^Vtx3*kٝ%#~m[*bj|=— W$F0+2M,5CeiT~}mj>yu5'LϨN٩P 8gP^N&iGνsZZubƝ`9疋b{Zs|҂d9QNɆn¤nxQ ~Huz5w22 JHMS,ڒbΗQ\qZ҇l[:ŽgƬõg압Şr?@V1EƇ|{ CJDvg9TmYN5tny6Wce~h pL?nIH0"&A OR:)6pWqT075'~Kiwl l%6&PН?~v#F]gLlhl:[ xhL@Kd(G-p(T+"HVRd4I匷 E+!%ƥ6dQ'͸c^'DS5 [2+1Tuh0^IxkEkl ^E0J"YVtL#vo:FY9L] uT^EtЋJ O7},>zg&٬w?r4[*S<zabrؕ܆P_|9Z],fά,諒Ka, 1azL_u`}6a>ۈwX6 zGQ(hl$"9bs W+{߷bkz;>8ley\QK'e4!M;Qk,](oZ  3Gu,aqqj3gR j㴔(>} " :™`\q.`hh'%U 5kYգ\&bBzK+ntr2n5Դ&c;D&Ⲣt5qy؄v]Kؑ D~G蠧{``LgC {yttԁS>3Q6f@8a_ AB GU_u w0(& R b+TL K>'0"37 ۊq W;rڼ;',Z{f]jXU\唣oہL'CY_~鴰Ygz퓒0]ک5^*6uck~Oj)g3fQ 8?N*.<#b-S}[2yHJJCJ$LLEAHYU9FQ"0ɖ MR 2lƳ_m a_+o'̓zSV͐`vA9gKIqɨmcסFnh 3<װAc g7y6SXLq*V#P,n R+ߛ#ۉ]eîC%IEGć=p ܄il4iasdqd '6ELqa,hAKhku+9foec[[f͐#qlW(H,XbgSL)6]l"K4]PD$A"dA5z":fz+2o+fJ2g6{̗qs1p:<#%e&1 t٥ܭ@ EfN MlRc>}j((xa6={zt%G^~A1,q6`ase oƙKײg_ ?B/r"vLcOՋ\ؙHJrx̞XV"ftjnyerUE3e>q9H9%6wdCY''kimS'Ec}#`+&_$ UU"z@x{D|Q,)4}LQ<{iDH'&?!ՆRH|ī,qTW"J5m7R}|Uch؝kaF˯\6R'5w, 짤FA'DhkR=g9XFOK_{Y>ʶU\FV諈?%3Bo^j\ϯ.x*t4ΧI D\ HǘG.~{ǎk7P,[cJ-n={^esJ*ba]k! _~}.|xsg})neMN*}Z4 CJ2U[ ƬO\5d1̤49\{#~j$Ehÿ a2VSY !6c2t!1(ڑ94A2E&4oxns*po ]QK-&k]jWvD ,l-ÌX&1†yd/;ޘm[ @g'OŨ P:nOGLD[.QUY񑻍VYvW333иuM*X:O[ +߉.cF5(')ATm<&{u%GMG:H$u ӯN%\t'[rj~e'CqܓuT(Ԫ[B2%/)6Ϥay5De)POYhӂ_ITᨩ} XTb16J4b=' [00˼W` {gM^)֤ {S>Y &XP݈ZF?LM̋)(w@r5K@],Qۄ,G!5+iF+60Y)xu.ͳd}3=J1ԨNHddՎyke{Rl|FěSGv la&!/.˪d;™b_,̟e9POk` =||8J}A9b ͕K,~gS%njh[V)g03ڼtf ezbfžR)WQ:^T_n-z|tlƸ!Y)mqېklv9p?@=LWăS2'_4lNzKTg=e&-RL@TA,3=SnP- AP (U*J´-Xʼ׎ijzT ?X%>DzohOVz7l=I[K2s}֒)epʽz{B]ÿ(tj3k eB7u?*sM{fDN{ʮ 6&:,em ]+4ͦ&M%R̀O9em[Gr•}k=KnfŌ $AL_5L2tZ@KZ&}!-”=u%jGKXAp!^o*wD>bTE57E9Y/_3CmNf?ʏ$篮pRXoņ7uG2mL(yf[vwQRx\b!]ǝf{7kO?8>nF'Hh Ψe#_ecbjRRrѯ$,CZ%n9kB~;KhYއHSX[d%d[#7v_.3iͮוx爝s2Eݘ/3@&R%Tׅ#7>3TmN&PKVC 6tg-嫷 j" kDv "`3)PP>7=t.'3,XrZ=4V֎' nK,m?ښQ WLT'wODS%i 2: WuG$s]!lbFؑTmAFi\jBaIUgA,۠vxc">kE9Hܳ2U5\ځ]AcnvO|kPm 6gC[*'\hL=dg&D3bS;;ʲ͠:t rݼOhY_U`$0+U%`*Lo1,#G< V=r\ރkc%2 (ߠO6B/ Rҏ|"OR ]B\H3pdH(#"&[kovI ^qCjf;KƁ <g ଫֿ^b˯!Vzp BD|dPE]/{^p]_`V:rjwtX%0|8bk(+Pkr K Z XeD т<RɵB8[ ࡧйԜJ*Zb=v#7gΫ' 5g .Zh8 sٞڼR,_H,Q.iYAJ&,CGD bR()cD5Nt tW{ЪKD7&%3' k pSZ2r1{/̞&yAp~E&[PtѶ6x$H<["$PC/@Ŷxg)e aP;vVa&ϊHI, $}ȼhVg_gsGT6.F:x3V NOoNjя? sl( 1_Ero$򆶑yByiGI*?F>beg bݹ)DQbR뾔wVm?Q[^賅 D z&ŋ1ݍ%ϚSQN|p@s;L>6cxHr.0\}fdD3#O6ؾc21$(̏zyL魑?hnO`wj|S#Z=g\1@#:}%:E.NOhՙ׆]V+*:&JG5SA+c$|{eh4s[*lM&(D<"/T˻-<AH&?>=m8Q$Y6; ^[šвxd DwwHy d$40 7ьO?m3LeS"mŐF)&y yM)^i'Hږ8qd誡GcL⠗"܉h} JәǜCsIk!>8!{_es/]aآF8Φ[Ӳ簵e)ֈW^8"F86GO $(mFRJi>Ե#t{íS.Gxb+wPߪ>@<3g3;A虭Г"t5]iWߟ!2GEU6KYUdcP HvELa:1]2o7l=+%=3nj3Bo Eªa$H2TMqDc"m69`{N*hJj}c8,MnX`VK%|Jf^ nvSp#`ʎB3'SZ86aTe˻/TnV2t|4' 4!, LMuRo0emaCx+kDB+'@50,*+_?g00O=)c2"F{=)JDkYGpc!=>$bw%ؓClVq>cKB`~06[]ֆ͌E![)Re"D'y 2yma?®҂xܼAڏt:nE bC&&O#K<47ʆoE;:QAJ_~v@tӻ[nyr5xviK)a^U$w<6Ճ}x ux>nQKyʃ `wʸrHp!S>\{nMl,>iC*^f#z"sMpLzwXM 9>%L׫|]@5gVTCx+ӥNC63m/ ۾CJ_N` \g?{`Be#5qqP:`#1(еWM#3yms`)TbFC귙~>k eq,x| KK*3 >xQBnw'PzcJpCv.Rsa$}vOܞfے3(m I;{m%|)!R&owh`.3UzkHeJe {5Pwe[{(qۘۼmNT}uؐ߀} kBI5oˆMʈl5fĄoҞwО+uL6I' p9J}S̞bJ{z8B'齊'㷥<]~zT,L8Tn*p'8)bgIt~mՈ|Ma;2YƤH󐬚 %qÔ"M$7#k:ڡ~ͶooE <кlM؁LOrk-?`h?QZ,ibkG/|5zcjSawW)-qϝhتc+T^֪FVQ(% <K[qUpvnjQM@ T nlj]x= ӊ`o쥎y2߷~:,7Iz65"^ 3xañxs/E G ub65! n84 1/hOSt.asypU+`'-$Q#-L#9yTƶc U !1f~.N߀p#LH=KM'*o&)a֧C#B2Z2xE2-U {ixe #drZ%"/˒96[!#'mx/z*d#^TJHM}w_7 t$mTDĈ}BHAp\N-‹fm+q@0ZCaa * Zx}!#q n1;Lf l1* ch.ƩcrD2*]s1 NJ"2m{G4@I᛼5@c2[~;2TZM"Kxڄۊ(CZ AĉA ,ELN1 H)&DДRs,5U;&w;ՉBީ 7Z$!P7#87&G#>V@`f6 =oΆItZä%zJ8z_\H*v/"hߖ6!gz+u6U1幗.X^+a0ֻ\UwZ|>es{*O̲HK-Yb.YbH8(: 7l{ƔpRbE*Ŝz&cA]:yjA`#Z&~vS=R@ Iq^z"8n&܋_,ds"3=A+P\Rn3icV䔌Tt&10ϖΊ<5(Z*3h8)FT|(0(7BRA.r!c&Oەz$X>z9 HQ\x{꧛'s0K{n{ņYZ_ƕUY-su3)U<V}:鈺$C9zM|k]j#Lf#XeEF򲥓?+(ѣ|Bl:FJ$#s'LHxAxB]gK६{qKy7j@2nA% B .-jqvM%k&+X+ޗC[vH>!U(@Igyt: hi->iAUWNc/Mv3z_{uҟ7m)wZw:IX~Ř-{Mvd8IӚiD;žV/M؇*J5 俉%O'*!:C"fgʛh k ?$m 徑eA.![څʛ\j/3aZIܞwH=knef5WiG ^Ay g9Q/ s`gުx L /m?9T>8YX+cUUޫA#rX~. <ɷU})B!~@ﯘk ONʅ%k~)%@y2[BQ4 x,,~z%S72˛5Zl8~Ul lmlxvPzK8b[1!qIM% KZ3KHB1*5ƘA7)P1MlvFhT!`[@4A\(Gmi1,杓|m~p8*=]TTM꧎nTŏs3wB>^Z*sp:ӳ: PKU~H A(PQF%wEjI'U&?QW5|/z2v T2ٵ 9ֻ~1MR.KhJ~p@˂T&< C7Ir lPѩ6z%9-rD&^`#[N}+Ham>i߭\ DzΏw`FسA~R3~Y٠ 灞"3u?%SޜaVټiCrDO*bp岰r"%Sa6f||`IT;X(dޔ7Ed]!EUE9ȥhr넋!bL%i!hcX@G6Mfr&j +߲:Kd>r:Ǩ]{YyXtFbJqsŜܙ7NF[=`Z4| (-]w+ߢm@[⶧{D!`Io*,&v,/Uv%m#8LSOIC^3ao3?g{Eޜ Ĝ$5hU*jmC%ݚWJm]ߍo3[W^BfHV,w'<'EК{~m@C:X."T, E) Q{h  $34? &S4XOWy8$5cq9"i)D{ɭ~Zk_IqYM!H5sG7^GK,,K6Mny ɬJ(qPa@ݤ^AnBl(!Q/b(^Sq@$>&=~2nZjp)kmZ &# BOI'2)3]91OB!5hsUWw /6CcOd"Ε|P-Dg2L9rY7 ECT8ovG]do?4 m4 ^ad t?VV S{ߦUu6lx*U "a2v2􅚄s@?>1$停6QF ^e-z$+s0,%)WCH:g֍$; {[!iЇ͓)7 i5jRgp=ᎁO!Q'MQw*b&`悚&t֮* CUHo%Lv˸|X1 Iƨe@{ 40'Y<BC=ճ/d."h21?u(7p v@C:s9(blvJq B}aO;,kan((/ܘvFSw# .r/ۀץ뱒7Ջqݖ!bk}gӍK$B$m_نOe9%Zbˁ+wR&pTޘ2IW=+{k9LnȒK,V+{A5d`?uFF8F m(givcB ɥ<3:ntKZ%V?oTӢWӞ@h)(RAآ!oZDov(XeԳ>+iy𰻁e4nC"3Q{]UafU"bdݻ ,Tu8;o[3(inՀjdKlpt)+CQ~@@6cCv#.RVVLl6/7΁(糆O'o93K~7Cr߫j17d4,]M(1[@'325Ib9Zi@>جl(u;HYCT*(rÅ);L@[t<@`]#FnUw]1)6%KG{Gwa+Iqa_^׾yV`85[G39u,E'|~H x2LtԌ*wvd6 7&[Nd`E ɵ A h}e?<4u s*a;W`ҔK0 74pX<( 9qwM}]"U$5]?K%%Ojf(fUxm_I}Eڽb$\ /W$cb>uX((d'փޒ=LlF~N#75w lEezD/D6ڎܘs-fH8焰ȑU<="3!sMsXGg.k]!.#F=2*&X^~s]Q+:?95./8 l[kHՇ *xsQSˍ׸hO¨]dV2#ԏykOy?iycѣ#PG0䗼8a6%q#멹zHMWU4P4AmMRYQP_r$6s6h=3`k[ v]@o{\#mճ99]~+js 񻻽m{mQlA y+E T  ,^m>ޅQ;7]@јN=|f̤ VK_jLt,|#x}ŐoLAiͯ[Qu0v_-YPnߤ>q#K8cӱrŌ3f8ڃXINl-|t[`u Ov6t Dx'Ag 2㯤fJ,*zڬd eFbt}LX홝ǙQRK  Y[lY߈Aa‰>SƫaQٟB{+}KσX i2Jܛ Ι/}pLƂb-Wc ԍ~'D~!8VsPEX:52KUQnkf)Sb3}+/):2dsh)'ǺAyneKQj  WRosY\ "C|N LOn.:ӫe"Ϧ$p$ ~iĸ}_@bZ(iBf!t|j,s>V` 3]6F%D/cT QXZ 8v"Κq8hB]|omVV^(;8wT:'vbO2`Y#6@JZ뫰 c IUn0AiMf>y*W;nTR#ܜT|[ܞ%CYKA n)ʞ`cH'N^hN;08!-qYdo;aN\{.GU+YHk 4[uj$wi /Ա\c?h}!* fgUdۧŶ2L9؉ODZƧկ鬇IS.n &IzM9|FS#/̔as\Z#)οE/Eq[OM Bn7>[ߓs3f䛒—|ɥOf>߉jl|/g.!TPU.rۧ~'W$ A= I`{e5@:tEPhЏd]e@/kȼp%{xq' FW+;Rɀ=EB sNUU3K.2^ݞ}A)wֆ?wVHEf~%-k7lusLdG"N5v|Y6:>Nl:S3isv并 -ZjN,޿1\!A߹P]4|Ee8|/= ֍S?\yѭh/I\+fw 'vN ߆/>%E)BbA/"ئKC+cY{랚@AS9xIտE dm \ړm8>J倯Q8I3}'C[\:Om7Mۿﳻtrhmk@I;>2Ï;5Nݹe"s->7eтmt~!"?(_qC㛀``(!BFC_R\R}iYG*:UJRi,x~?ݗ2ӆ!aZL\!tG:aO @tfuƖ3K%g@nqbPzwg$/5CM )0od}.dKOt趢c|mm6[`D% *9ջ}_9 2ib~3]Z# F ZgGc1% WI dgCKweX?sժL"?hkw>N Ncn{P4 Er ܯ-yC)~d^VG8r_(a1F OdcڅA:xjBm?aj"g1ZY*gkX(zd ͥj5KinM ǯ.Gjg탛oŽc ln.w͖W X#? 9'T}ȅ 0z\NlW\(%f&;evDLg ʩͽaZޡwώ%2!xF*p5;[uI=4|`31Җm,#$h;.]Fᑋ"{b!/ȉZ}s6Q- 9_a%<'*b*6~%]:VS/1Dsjx<'o<>򈜞 r}z.6`j6T[:ccbon% :OxssUNN.^t?FX$.9ħK~;?Z"́r({q܍;K*AO(^Ҏ'"cJCw&p{TG8T"7AH{HڢsoEaB7^4.8("nVLwpUz/#̶i2Ї\(zC\ĖҜBN>al+@ϸcS +9*-%cy|Az+S  A>L~B/8%(Z;F$ǖ,<*>gc yPr5E}5DQ)\սTHtW2ɱY^+'dE^)6*wcko>&K=u)Q! ًl)")^ ']Ri841BdRL?ѱ 6@ȴژ5]vqP{ma󘤽>)]X@ւ"/}ݮ`ӔtyL8c/($Shz57|{2(/9HRƽkG44f1EprQb>l>P c._ ե.iNҦH|ܐ'(H{IU~}N yrTLk]0ego'[>G8:YXpXuϿ++LQGUcP @ֹ}ϝv,g$X(`nW_ok$0BFBr{<QiMh<rkFP) $ J3N+& uQHa6>mffs!: *x\4qa+b .g |q8 _z)VsB81pjV+">% ^`~2}<)>r>%.Sqjׂf.'|:F1"*H&/zXje20S9oA*rg0+OeCr?,U=}o b%mk+>>Ӄib69uL^~SQrz[gìJ:bZBu4h\"@hP3"d*0]7P=(;ω?i+sfnZ[Ǖo'0IMzӈvc%Zw Lc?%CE NR;!,%](c,x.=ۓO%sEH08YdM/À9%7~EȘϙ&(33Abm:3:1"Ji0/ÒPbx|Rg5Ss,4܋ҙ/2bKk +#úę[,EiTQ{s TfB[,P'ÃjJm躔Q-zE +Nܴz4mpȩbh5pk=fӀa8 }TIJ ߆5&RsԎ28u3$kէS]uzu"q|nx`;g:7"ح5qZ,_"8׫.F¨F09P&U3+m 'ј? -p\O+QxG8d`#?C`>VZݓ>E6eU%u%C5@L3v}OzFq5>D [ ]H0j#AʰTI5rN}M bRP5W~1khڮ |r hhhA& jp\*aGQc9{ :pd\b`/Ǖ5* a6&?:]# L#@QG':[xOeuߟ<`8z]JGl ox) *@8/;VIHP ^&sg&?τ,jeim_9L!逮>mV$(`??pAc@^S$1͛̏ofi' 5F?otBu 1=1w%(KdpN{m*]Gl>'ԷĐv!U7_H%x?W^@zN?`LlSaz;x~oΥYgYnϻh%CuY*EZ5 vR.ɣr!Ҍfh4sVœ=iЏJWKVz<\ O+}*Q' تᣍIh"[m6-#F6r,3I2EK.ӪG7ktv$0i:(s`zVQ/6:mo #\E.6Y ;$^qB(8Dk)`!e{y5f;[,y; T  C =\ZJʒ+}57 3BWpb 2(ԑ5]^iwH[ʊ#pbT, {͈Qtsӌ^x UCce|ԁ&s$D*.N9Jo ǻM]3ޭi~C CzvVvDt!}]&q)[`_DG:!u0BAhSkڶ߿ghDV }ٸX#˜-yNi$4 5՗h-mB3C2Q7`e*F_69q`FUXxd{)K)ȚƏi/VyX#H[ tHq n9`Z 5t0@(_QoPa7Y tTw%uŌn R6OS)sxHt NxeSz?jZL6Z4@4?Yl8߼bp?n ҷ8,&N:uNE朗?G^KHl7֌AxqY =&ī a>rAW?5[4efg!%PVcq7/y䵖nR,::.fCnYozX_nskmE"v= Ad J`QD~(Oh/,0n;1>D96c}F(.SLM)!,+͢HpNxSt VXsn*.q(eު#b]9Jݮ7:P7 NmW6Y? g,jϝNdAcmGM-09C, (I#83Rbe&&=)̩"<|2A;P7)߆ɽF8od/1aӅd.> iC#OBn9,7uTɝwXAO2³%سP>p'},eFG)aveRFgAfTM:[,崙KreXэHWʠm)ZB~E52p rMdx2F !+3g=>#"H]RI!N^?j'549 7(M 5ՉA! ͛@䵚.tHpf|X{IZnQ aJm#o(ZD{Hϯ uS܀R\ʍᆍ.VJgI!!irX[`맰:<>=P'O_+õzF3Ia5k:V4Wg3Bi86%AUZ1:F:4D:pVpoL[GT{!$82,S]7gkw10ZYtL#}OZ_IJmbIU3[efM6Q}ݢ=ZOc+_ܩzxRo-Z7*kUj=5_۰IMLN]QR~3ge" &}cG;,2:TiۉGK2q%QZtD JN}pH!υ@ vB#OFOƒx}zN>Yg 0އ@*jE-A hj.r9 <~!jw!]yg?GC,4}O70e5ɂ]{y+ZxCTz&`Xfa" A%$HQaӖeJ?$tELF4Ym:ɩ?i$8ZsTl0E<VgQd^6'p g!e }0ncם> 5!jQa:at w:UM;J/Uepc1%ꃃ#]{+)om^;tR؅K>}6LAX]!N!d f2,ٰ*=W -1L)wZs v8Ӧ,BC$/̪ h荏;2?m9<!ҠaH[:@tͲ}rTȵ& c^lEH  y:#ogQ#@+r}-[߲coh sF68k9nak*peB %~CI8C!E(~CPUNn) .y »J2풚i!ḜTcPR+\rW<Ì聈4d$Ut}L *#LnT„_diẻ,b@A│/3 cw%Zh0wQBx5 ZP<^p $xҖk)q uK;h)3'҉)Rӌ9'r/2fw߿rK8څ; s`@\*SNY$;{h J ئ2:_ Hf;5>O <*+aQiJbË/H3c<Ey=!~ڦ,ۧ=€v0fX9U)Dk|rƓSXimD;.QѠ @(gh-Ě@y#Eu7ҙ+e\jύb!PP} :bǬy 2#yoG1(]Vmc:CqIonE[x`S찓3pc0[OND:ltǔ;)B1ye\D&6+V7\ >'>pO?\*l^:d7,=ZRn <=D;ҦPcj6#WU2䃫ID7\cɄG %TIh^R|`qm'M\M**xt/gTR[ Xބe7Hc$~_U7D|`4`V~0%\PP,PG=L[^ YluZfMtduspZ3qBAhxi!9agC}Up+̛iw #&fYdyKgUD! :xI{Dd} K$b 8a, Gltj:Ma$wrk*/x4.-~&YPmvG4K7LCB -OD c=w-+V瀹\nE&?4y<4;#3yqcOq|gAZBD\ճ)W*=YvSfXU5Yl"eF,sæ=UW΢\_pǝl\dz_v+i%Pr9q>M'gR, %!pt.6ɷM)?=O~yeو7 !:sYرA| PQ]\%jB-x4gr^'*K6㧘.޸ :d~Gf QJ d?dw7PG<TB~c ȗT\u j١IKCMS$񋳇ezB%L-3d*k۬d$/p&QAALЩQ./|>0mcuhڱ Z\cFђY;!X s3ңBkaa?|cItuVET%EUWC?Ҙu:eftћt㞙{`͡y)dNΌzAs*\cnV=CC's60siWs/5aƴDb+r4O FiW]7끈ø@+ni"د}k0_T6&~*97E1^#p Xx/c5wOYNXѹ~෍jZg#= >,K;-#@iy Et؀d`a.|2c[PI޶2=k\yظ?c֖ }A<71Y&X6H(h'x P, MI`->/ᝓ NX;P͞~H" @~$/٥KE)P}Am+"DCw+K!S; : wQKEPM>Xi7u! $# q#m&.).f-;Ve27 z&^JI~4x962Ԅ^۝Pn2^RUt8.;"Wd8:p=l؉BGqܷ.v$$D-aOt݃3Z&)K*wfUYtVl%WfEeql'BԈ`^*30sՅTEYX'Ҩ.!C11C&;Cq,жP6k.yWoTDm~(EK7 F;RZq]!E<)wX-{+ MD'&1LR{t8ha ¯^zHὂ^lTneM:Zv zd#d:"ysimbV c5'Y@oߑZLˬ.q.6ԷEi[}j//4&},܃zϳlu{^)Cu#)Kgˀ42X?;bnC?z+·8$$ 5" qSMx!U&旛ɆV,ABcfQ<[<:Er{%etQaq߅7y{ _0KyRIF3@m27f{r-mݮ,&JuAR=|(*]y  ǿ0p480[d sxc63ory "؆XLS/n1x>Q'{qKPzIJKf~xE*br( N5e-c&9plESzP C.;x_ߡj܍/@̈`S0s?~B {+2Akg0ۓZ7vZqoրwgKYx H^7-H9͈*q\]V-*GQ)$?JNM9w̽W|ZDNˣjUMS{" 3sܩWt^%#Ub9'A9D`/N`ӟ=+ӳ q}-6 ) SBQ:`jb:'i5w,_qYMEPkYْ$1fS$\u/ވ9cv|+ǚ5ac 2 y6Xi& 4a٭=7`5k^.Eqw7qp˪nhjq&/EۼH+5LxBb*doI$&DCM8Mwbɖj*f·zFǑ w-Hj=L1u܋$o(1gU\`.S59",RO % о2Y5+Ms`4.v\N?"#|&J:or_GGB-D%d.XheJ:c1 j`qjAC$˵dw鿺NLg@SΔa˿$ u#&)e)UƦpDq|;Sq,#B|niԺ L5ѻYQ4jM8吀FmA^lenv:BOkg`IPAjM};\uQAp wPX (jc[7?xq+@# ѧKzݶW@YT1էhx;ccL<Rv=wZg\s8IA-/9' %"ac(F8NRTuյD0; HR{7D6@/ћN1N٫ PD#D$W]>&7]V=b=6lfюl)+h H˔ZeYME,wbIUq#8KeRg`nV^6n< AcAx\FyPmmҚu}}t{ Edc(:;7%أu`&w~Z'V6h:"I` %27 ٝd>EmĬ6^*3~X@NH`e-yG nR۴h062S<} xef{p9‹QT?zRDp¡lu"oGxN$p@DCcA}9I3ev`qtb_q5ִGޛOl1mQa!vcENPW{q83Q" 6mr K+5θ99>yvPa2tOjOJ!|淳 ]ﯻ7ᾠ8F_5_İ@>GۻDlIlAeטa2/g˨-$t'°@&dӾXUIoq_-?6{ ;`[_rkX=4{Hɭ7:#d(Kӹ$)!Y=?XÂ4Sᯰ]M2^n?t`bAu8u9 xN|܋b2xI0XSY#vцȏ@Gc ܱ۬"vIFFb!7aБ8τWF⽧1x`(0d\g_$ovy/Pᨢgy@&sc];IUB%t>&V=:+I':@W? ՛ jn9}ǸxJ/EvΒFM1̀nf *Π(V`7_$KвNsDGh?i# \@5į)n zi7i =G^CaBxrTe|=X>Ag[eYi&>ᶩbK.S6Yb% U"5Qb(]/JmhDL=̛P˫Y0_fL4MUG Wp ?ֺD/>SYMw/D|pMI{lqz` `j@eӂ'2Cmf` mLE>^Fh7aW,xEzDA4A9ۦ@m1?BO)53tLfZ .5*sHg|9c'Iq^-5930תZ变9b1<We(炄NC!< -~ Vx'--qIV*Y<`(d[e nJpFp7k'k Qۗl87nYtV;sNծIr+mr*]Fb rW-ؑv 27 J vOGY-ȝ̔_nP+av &(X!HVz#VZ<:L ʢqxQ,!UZoa@TubxQilR~|6[騆Cfblh=N :X ]IJn 8a U)6ntykSZA`FD_SWcMA8<5yY.2 51:n#.թW\V!j{mSrA p?CCk^A {p$z:*x}:%TVq>LO"zTw T˄>&gʛV@@o2q@CL++hIVup=ؿ/:QG/Q0-ڂ,/ JGȑVaU0 BGfu%du)) Sl2+rƠnluKܑF3;Htx&ٕXX?n;x4YXz}wttƻ܈Ju[Z<[q,fl^Fc~eaPpI1ȁYhX K}ȉx%uK`P5[8rv9&VN {8T/hdQiwg(o+;؈Y-熜qk(+@2&_/'`:__)M4bh'h" : P]2:I^IS2ƑX-2 3cNbѸoo)ZZ2jy[$L\"?p{navɹeU 8씂 V8V{&f=_Ylp@2h=1tA>R*@'~0ߏN7e$VsG=JyS8?O_3B~lDEIcmN7ⳅEŐ9$膐A,~eBZL #W? њ.'?OP9eW 0੧1Hgko Gi PʬM-FA28mٴ_1b\ &>.`ϼa$fhٛ%W'F :Wkn7btxXo&D8[{^@ɜbgTX+/ 17u**. H1Q?Jp2"#-kd"SbÐ"fiR RO!5Vn XǓ[DvXK<} $Bv|M"ay )=KCJ/Z%awUV̖epHBS~` 9xnGg[kg7QBQ<_[1EEB?u/귧. /K|Ւ=2uD4k\3Oݏ~.j;i e7\V>f&߹h/^+h¦a\K1ޜF6 K@t,sKZ13c4 L .cr_zD_蓬J8vůEL/3‰f۩[޼D|L-[3b*wK k89S^Ú\h|އoHn Yd/y:WN]Or_a#0ʎrEک,")6g2W5ʯడxdT}~Tu?{3 !Ֆ3 ,PUڈiWTqCFO4)7[$ zv 3<Գ3f/XMRM엢rxhO!Ueve"UfY6rl-v$!T_; X ѥu]!j%ghY鸚'vTWߍ r'={,[JeCc"/W[cӀWEzdDvvI)ζwP7kNnqcX*AFB[_G ^2,P#X->y&,d_mݓyrVy 8'%6 UЎȒ",;3Mla`q~0ld'/[P!8$~H. M@!5|K; ¯I7Ÿ^j@!尫E7`$ Ee#hInU}J+Sdc#ۗ9=o$%cFA\X8u8:.uT,aj5=v,}0D|L;}#6~!%װ,6W_׌*B`@jD Ї>2^BO]DV qMRB 3u \%gOA|S L/(IW,sGRn,EQ87. #$B.#B} LA CkHI7q42taք^ԾT2"6 齈ӭ1>+/6ٍffq QX`aUasPO^GN;J _ %HSRJɷo-j#b{Hɵ.$v~,q$F䰣 >Z2MEudՊPuR_҉eP^tw:^3 cWŬa&? 7.FTEL5R"(' LmgEDDqK~ci;\q5 {(5U5`sA|i 4Lqeke"s.$@aI#IĮӁDӒWoP rPY[Ij &i &a1A]B'ڄo.A7I˞u(PO?jT4D7sƮnj a$"%^tڢT 9Q!+Kw |@H ȳGӔX+J \ido` LA# Be5t(Jscmh#B`mTfE0{f#5ɗ.ܔ ၻƺi~s [؃f}q*8lкTR5Sm.r)j`>wm^>JJt{m%R(/j' sTpef<J%ͻ#uA@2+IIl:ki Y.:|IE:qF32(;~5s 7BoPs+}NfEc0b!Hؤ04k8Y%0>hhwO3i[DRuom5C"rTcV dw!>{LuxJVu{VE p.BՄGa>>ID9[ն[ǚWnyu[uo|S=oZaFn07ZIBZdU{Xр*ȉ(IMP"tDmf! e^pOw aV26n3ctI6CΒ9zFi53t-ʒI?2ȥMY#NOh]o5^rZ425FaL,¯0*fQ!Wn <_/P[f{ V/v@RnL\OZZ&wAR9  ވAɍFQ#JVs2a/}#F_9E2쭗Cj&"1\;_8F~b 0^{ 4br9 !`9VVf,e-ߺ}2 K7(6eW@0XPNs1P5mD*ckYM8WP *FELk4*EfKB/"vĉC9+ "tNȹ^Gx*mpk\,w8}+>EAfdeǓ(f>$._$bw.St/U.IĶ5AqpJA]#i薃G8hmk0`L)jH<;%PJUҸM4l-D/~kn]Wa3!m7mV2mW2v o/^zˌar$.wY[th8+$OZJT ݢ^1(hcMaeNjvc(FJhsK#.ADkUhcѾ0ąk.q%QwVt _ĩ s$K#so6]Yt:d׹4fCy՛Mi ({B^ RqNͳմ QFv\ Y?fҲʞBSH%,+&v.JPW la9Ҫge33t84-RdJ6`@x/+lWvD%U(gjMYbz0d<>Tc@-tǟh{.AD0m۫Kö$٫'ɛrGYX h r\ȘG 8n?V2M>ٝr-/>$ ,j7ƽ3PcU S<+eJԣyqV>kBM$_"\5`5*C]cN4%RwVE2 ]whfyDxLB:*R=G[>k}3;H`VK + A#jTeT8a:-T Tc/~8YXDTXykԸ7Og.iOK*#lLְ}/oGӹWj̷l!\9jqsJb0[Rwzq?^@O=InEjElU$?7V7/ymB{ʄmדy5T⊻gY9c!MB{`BL]OCٲB}D_#enT{NSO悀?=3\vuD<hҞh`@Ax#8JL\iKM@ۈN0Nyp@<+G$eNd@bbHE//t~JsBT'}yyWY^"qe(sO $a"x)GW&Ɨ`c!`EdHF'·<1h\Qw]#oȇzdQvZmSk.OFxҧf߁C9pd+j0ro7- Us^",! ճJ (ZK߲̄Wswo]Q. ݀TDdJH8W?F !hYsLӼ@MPGJQTD*+{3jcqN\Dzh:+#VxIt3tx5>3$4lr r4N!'y;`R=xb^Fe/bH& N%VlBWm̰Gd2dӁݩz#?7 -U:wD/Jv|jEo@[s*ꭦl]N"2Ӥftg:Nb@̹n%bX\r:BI6}[g%83"3QvxXpHКhu 'Z{`IB9T$ܐdyLĭՙhH7(!`ccE0beXNsX\̖ P`<%_ExvTЂ>H<0;R[(ccezt*n&E_R,=*n.IIuIҮ ZPp< Z 6tK=,֝k T@c.(+տH Mݿ}U c]jM+,@ϖ=.c#£Ab1O:U-6 -wWQ ěڑnrN/,?(]"/2g!Gh<&˼r'F ǩ) 4{E!҈ tZcs+n/bUݝx+CSoރ|s(;N81͝gH7<gۊY|miDDl#xM]2Z6"*l@OIs轔87pR}xb,ƻ%>U//V6W9I+;d;駾bDT}WDƉ|M\ݿJ6kiJ1 '9a,'kvfp]4.P:'JVl^TQU/㻔 '' #s pngR)(4u8^9E͛Y7>W(=1uxnFGKΩn)I8sp1 'ѷa U 2y1s KUE,7hNj$6BBxSiFs$bN5akĖh߳>6_?$[ eZrV <ůnֱv*~^AQE$B jZR{ Z1=Ӥjx͈+ìpqA! %]:Z^5R%,"s R0N<2){Fa˪Ĵ$tж! G@od$"WV|PS3E\5߾LfOԬ\&Mu}.M2;]oOPJo^.`l)Sy`b /n,{#*Ei҅Z?,.XnR9,o˂=Jϟ~^!2f}(!CIEZ6T?HSƤC"WZX]nuJKC)'? ԍވ揃& J`U&kgİaIih\gUB.F*lMn4@ ȾɾoTRʄǥݲd[OXn]V) ܮ QP3_'W^bmLص>Xı#Ņk_DFb+FIUdH5} RGvzA78mn7 ]rjj2jSS2~i~C(Gvl>0qq\R.W+`AIZ-i~&W0\w^~@(QL +VUw@B5cg fmr!&~Ą>]r#!\%y iIV<r?X%\PU {u73_y(<[%4 /߲\>Ve*MpOhHP#y0c e 0HDL2:!*`/i2Xے _IkX9A>uw>V6{5@'b&#&_"^# qbu _ӻ 7fW1%e;R{ -~::B+s1 ]E* &e(/1SݩA7(:9:؄Ǫć$8Ccʌgj`7D*ب(7VT*U3sWNbVZ,-"X69/K!޼bΏILձw'wB=L@,Xd yʞbC#:@-Ě%[Kd͓uZ^1AAR΁_g̨-1GEI]B'ULc vx{x- gt`(Do L*E͍qp4:wS_|4ϳjPhW뽂\1:l@^r2BoP0 e az!fV(8'8hl6d؞FS[-6{F<2=gz3--HqT R0$UMvu3u}X~G7pJWw]4:F1p%KM㟪Mw#nEqؿ" Q06ur(=5t!0{B;SDwRe& G7ߓG'?! @Њtb:A0vUG̉зjRN]7$ӫ' ^< >:aN)`8nhI@R2U5PBQ$svA#Scz/?65=| {'{?OuGClZG򑥦Nd᳉dTmZ(,G 'Γe :͜1Ϻ4bL4;bjNXfMȿ&Jb>'׳.ԩn)wb4|k<.Zp;# sSgI9D<0Jj5TߜQ$zޤj|S%1~;VW7v`ؔ(Ɔ?nޖ:*8<@6 Ոm2wϺ$9QBd "-X ҷڤ dm(׿&&Pb?^.]ev. YxK9hBDžrЃo>Hp]['fm2GܰPTC:-IZit2us ֝^>(tF-CQ\Ζ] v)#MMp; ;(fMdUq$m?Qu(@5]Yy>m`sqیvڲWZ/Qثܱ%QZi%g*QL8s5p?,#7hWvw$Q U&@|1 1TB1f OR! 3Q_hNW1I|e T2$>}BT9R<]cJ[ YRauǕl qqmmt~4 W+{ T;35":D%>.a녃vM#G  hA- Ŝoa%)^V-Win&z#e4"ER'lz*2) v~$V3ij@g!rY9r=o$*OTcs/ ޚa )LF4jǎ"`[ӁFMQ0VN+gON7殑tNSGĝȬ7_lmmu5$7kk>)4.SvCGT/_2c+$+Ѕ,|EԖЭK JhTLg%J#U uJ5Mߌ:ˑ(?i޺kZ&oZL Zx0 ؇ϱP}s6P\x,.yx@=ٕ MM;NvM,$u/<kԇo+;0蚘) ʚcBqvH=x8fVy+ BI7ŠW+. BO9MpQ^؍ OL(E=bY?XOwe:VE.?걢:;Dh-]*`>B;>z_żӋ1#0[deC\6DQc3)g:Lƃ@H "I q= VXW,!i3]qv d;gӒESH@ixK 1]*x$ 8xsJx JUL dxCs#BJI(=%PR'Z2 6ft,7L#WO)H{ߘ%!yK:a0w^zݭ<NOAnFxtV!ft+`8aL()g%S_=PjL$ <{1D?^Ly)mMNlOw]\BwX@B|9W ",r*jɸG3]{#ЬDvaKUQ!; Eyh鼚Ff83 :pꋖ=XؑO$ p˔;v5-ަ,<8YԢ4 Cꆁ U/O){F+|Q;vD8eO|]((*gk)d\$~W*\=Ym?^mhปxFDu"+"BܝsiL^=3L8{8ux2td\-Gz|VLWk.n5Z&̩+WMddfK$OdOQ w51 naMٍ[)'0"56łkPrC;bѩR## ?E^xݓPa̋Pا X.IgJdY_heRGR!5?=}I3 /!JT~Rĉ$(FL'eqSqm"\9R+Qh" )&9-FrmQt0`_*NndR)3cm ͅ$ Qw΍R)VM{{oۈɜ *?D-Fv9\v.֓E@v9}9.Jz2|4YY~RH*T SLqĨ!FK٩d rc 2_ʼ~t<LI+1_]YАΦ̹!g2Tac N$/Vd/WkL⿓vs{1(LY-w%!s x*4l$oEaα~EVm^'(D #wkW9{ۧHVBLp)⢠d%|:go1+w (=9E dI)脚@]b5r D)wկP)+>(EK$d?uN2f7(Qmmu iS?͝u)q !c~ E!_iWbOϞ6! 9DF`ņo};2-OfDӏe9IqU'u{-5$vEptkJI9(ɤI 8|{Y7?J5nwnWu$!~=ҧـu& >狤Y"ZxN U}_Qգ^A,-DOBg]`d*Z_@:uOn0 ]Gw$єKßT)%0MgMk؈W0vEy~`k6oS '0w0^)CtLB Qg[kzjuŝ^'!&ңPWDLDЁ*ڿZ^=R < MY ΚrϙS\+C/рW F륡D=N܋ ka. -QU'/lh;f3 a{[oK#,ЦݒF+mVnh1hsfVA{ H (p#ٺJLMQ2d%ݞHӛB||G;YjkCLptڮ?V{piN!,D4#]f~Dצ-@x"W+soT\#25 ҀH"]kU󈆷e)F=Hgӑaj+_k1Ct-&÷[Il?O7;^g@,C g{ks8e1ߒQt5 ҝ/!#u5*>cD2yaޅpXe<] x U&,cg+5&-uN֝ I 䇍$I|o4E9fA5 J3ɱ-0p:܃ o2:r&evd7&!+fqy.!wlX>= 0T(S,^$C̅ɯT*zT~$|ᯘU|Jeg?t#8StU5)~uHN 8`H`m-/+❣Ԑo]? uRW78\P#a^cU s;5/2 f A^Sa r9;eD5vb.<(NqISt5 UIˆ%To[ؗ>ؔ`˂C)+"6d w E'%jոc8e bt8q,͕'2gyNӜ$oSeżf\bϘ&r{s]=6O2}v 7.VkI0.w[WzӍ{,,-8_1'F;Ywl]Y12ےFq HkʫkYDJ&J~j+;FJs8 0ڊ/S\Ҍ(a@(!]ӠdRZ5$q0$Bݺ3mOyewTW?<%Z8C;H%p!?u¬sWF^ ьxMD4tP)FמeK#CY+ qJu.@_47s. mVe f*wKEzg~ ndMqץ)1S|?Rx7{Q{K)h}vHd#bAB6xgZBp̊ڟPԜp91@ 3?Z U_ҭ7v!J!Hc3%dX*D'Tc'U%p;ge|L THydHX>{daa\>͝_kUL6V%A"fߍzT<"o %l"9-i*>O'vYRwG"lz1Ĩ`n3C*˥H'E.H3ZY !sң$p <)ndt-(N2oFjh``7e^WV? bB]ūF펑`vd" LQ) 6{R@ 2y(2qa= cqp3(T|Hkؖ VȝTL{GZ\p ӔW7⭡;aŕ暙.f1^g΋ }!ZCUSUK_{kʹm~|; Kew͘.aM[QE.zRkr吳ɕxF_\rC $A߼PkdO`)/@tXoŲxdGdX`|vMg!bf &{쀔_x1@ G;)Ghd>uu\)zH;syUqU5*6 2wfy-o6Ng(9Ӊ!XWakd˧Fgo&*U (2_淛9`#_ eG]4>'lb7՞RiAcmLg@ /rCa9Zhm [wK*V f }p\c(=Ǩo4xX|=$!YHmN|7 a$^>ԳIm} w c {QM%JjOM飌ŊC 0~&5̽Zucnͤwr'iee QQ1)ubfS]8ؼ:-N] {85.ec*r6RR Nm<$9syWlHt[J/oܔslPpPOAt|#šY>Ͻp"jwsYՈWYrL:wMAǶ.z~4" kӯ2}$T&ĜiQoC?gB Wx \THrr$"Q7Mfq ~YyO4H%_ v;FXh' _4!SF+|# EQ +SۖԆǎ gh[TtW# XOn@kvt?0$I P>t^omUp^hOn֙mCc4CMȷbU!GgC3+ 9{"|=%Lpzr^%"CҢ=z_8En&xM̱r!N$w6Q$W{JrԹ| =UɌ5:l9^rYzE+ya%S'Yic$Je >UO,ڳK.maĄy72i36\d޸Y\_?#xN R|~&] 1f,h p"> >ޚV|{+*pJ|%aBBϏq]~c~H!{6 ~6Pb 瀊*"΋5UJvPպ^\!nbTUN*B_fAzj?[Ё\كze%|\ ys@^8't˔r7//f+={v&b#bci'E^Z`hfAW#?="kqI.vrP%WN${bߜikJrI2O ]qZ/>74KmyO9њUB  3LH}_:Xi ,s cs'|!)v'|nOSDk \hȃ<wչ^ʋ>BbvǵlIXqb*if X ņT'&X&sj?ʌ6:mRu5SJc7E5{N֓Q'n>kr nr*bd6evˣ-@nVtKY--|:҂OF>2͇X@z hKxmR % h;#YuX :Sk `tpW>b<;(-87 2MMa^^K?m01$ eVFi_M٣dֱg]_wߠSVL6a~I$Ɇv,PG9cvUowggd/kF EηuP3QhEymz2Mu8LVQ`=^ǚ0~ֲxn 4fpKRD+ UBt5j&fMv8"*sWF>\OM)]y| ScJeHVG !w637N͔?}+{{lP0kv㡃ֺ n;,3_PYY&Q+ZpW7$zZ[L nQ [gKtbn"kɾoIY [Ġ9]nId7U6^6_'5:J.GuLBk mXwG 5EBkic*GwnWHAO_T͟L'MX`B>UcW<- dTߣt3ۀk?T9z~ ^.Uf1ѣ!""ucgvQ6Pgy$#t`x+OO3ޔ-[l^HP=JZP}5iXίwnv08Tp沀<W>gz;++wyB g ";%x$yC.X+5OD.ow7FZ|} HHguyu> F_"I|3d;(|fyY@Lɜq=f}iHfV3;fs~.0]*=S?d _/ M ck"L`ȒT tE ] }q0 Xy.; V_rr ʹJr\L͎^r.6.Y?ۨǹ& ܿFF*JY sU/UE̚,@O}c2h {V z2%w`,EtFA$%o}h*EKcP:lZ=U>|7$kaCANW>/qY#Vvm'ˮYv*@tǤD7`FyfQ\~/jWCop:vG{za]N)ϔ).0%"S`D ϯIxymů-j|o3pR*w/EHZt]GFxcR$0FB8-=N)S kkӕkɳ9H4{{tTqY_n(RkuLS%}((ޏQmu+VR\aG Tvf%)񞷻0n'#l޹ףYx2Wr$&Yl7%'bO /[9nH^"4 &81W-edνWxuR/܍6$ye,=2P!w›ys:quo~gkayYtߨ-SrDo+ ,dg ld<ç<֞ز@tSyc?LRXpM(ElatTj㯇Ȼ#p'E"B> ً2lP6C1Ơ݊5$J>fq`Y 18\ 8PoD; Ө"V7QK##1#*}g>ax2yz{;ޏҌ 9Q12' M6\^duG Y7_\;. -ՕMBpP^Җv bHP2-wSD_(&T0 cI엄5şbBNs02g} kNA97 XBȰkKՆPƆYQIu pKe^8{X^{,D'*۩JU"0u+{,)ArϐcUpj-x'bFb8)@ԅ6kkxm&$1M5`eY ^z`wpQRlOuC:)VL7{U[G>O/;s%B fP@fʼnC!ʄԟЗcfĈRM25գ#ֻ: $Jz𻙩gȝ :VOB$ܜ,!<:;"N\ʓmeR[&e9-Q3E@RkGNufP0Zo"Fs6]]xBVF#YIb=Ϟ0k&ES!\i'&kN/K46۽@% >%tx:|j],;o}[.7x hqYXY 7_ܴ5A HA1SvyW?.ZCNV^]E/ZsܘX'0W!mq84y xHZ?Bmc2޷nRb{`bU9ɄXgPA.vd0ѱf<ܡ/phY$PV:FS^:u]HPBHZp }Ǯ_wݫ+mN}va qA Mץ:^vrj cJg?KzYwdm"-q5- 7NY;2Q4Wvo#kiNPe""3 ͕̽%6yD͍wTrC?v2\{W]V߂(d\[%.̻DLU sdh 彬ƀسW1n`W̭%CmP7?.߯G`&nv4LE0U84؄I4$\=vpe䀃n'ʸJUfYfZbeJؔǕ׀ $k{4m pUxT*`K# ו٬qG]> /f k_rXl-Ny>3Utwf< MAijՌu3;nGhdyW!sqjh*LLq-S9E-Q{#Da +xL/*K=#=떶ejL z$_j?ݸ&\vG!dcvi_F z~xςlXÃUH.%I NvJӾSm&zU#Ŝh_l oUg[z-T 쩨jym?a'/GX،%J Yפ )v >v0n+ZƧ1=k~Rܒ9a\_H %b+JX /{"Җx\E7Q.T}AS5E,=}:AVn*sqU^o OTXԱb`g,k&J̾=Oߗo@CC)p ހo.p*fb'<[@wn {ϰw RhsUF+q 1o$='Vf+iF&;*g ʞG]zӃb3c1,?W!#e_fHBf8j{{g]bKCS͌`d% `ͧ_*E nV_|qJ:%/-=*ε۠e0z_33P~2Qn#dNaOL- ?h mDE$(r>;VU-Z!خ֟Lm==p%PVҗvfY5ּ3F ۤ#&@կCy'wn1:D+fi!8ZY"ڳjQ%5c08\;I\B]*dy oS/R+ot$qlu [ +zn-cP<1pcFV֑^ҷf9Ajujt;R*v[ܷŐ޻F7I;~:R=sH@ޘv:rR\zDP?` *7`!=;4zJ17s,ٞ+<[V):(j*.ūVv+8P;5jdZm:\ڼpΏ&'Aee84H_$4iKHy0 p=+e_gv`mEx[\ˈ) |q;6^|m 8rŦ]{ᗤrA[7o#6`M%e ~k=w@˽C:;I>(OD.Zsߊ@Hu7r7pxP؆iS ~ķUR4yICNe`p-vO׆K71>#y͢A,}l3qvAŀ#9lAl]D/QV=oKcb==17 'u$]iIMrUFj : lp@~>.푤j֘ܗE@d<ũq2>QquhaCC-UgLm^ ,ݤl6Oq[PԩU5BKi@";"l-G ,\n k&-q+K^yEl] ~R2Z4H-t->vk{,~ UuXj"Hx|u"= %6sCu.:kP x0(0:PDCJhnv}$v{|n=qb.U!bXTz@-r /jax׀ Ϛ.˝u\~R;O@AFP4ԢP^hʻc“Ǔ]݋E)T6;x*AyH-W 1:-u,Nӆ` Exхv .45.T8 _/ZԳ,W" O5I"T̷CUJhIזsQYk|y~+ӥXcgYX⵲qFiX/Ծ : '3_uvkLڅ? 389,p}?r,l|aҟׂZQ2Ε yx!u3 {Pc ^FUwIsR+ClrU)d4'r TXڻ al-ND-XԩxNRj<_g%F693[7à:!rbK1)+ՄO_ImFIa=wBG'^#|hJǴ9ܦ +=[ ggE,w㧦dDV:H~g)6_6ͪg4`UtuR),C*I3 9<1rn2hCeʭ79>zr߸C\{JmMNuRmva%Ƒ~\&0na2EZ(W&ԱdZg]r],ȝz8 YF[0HRmF2,u9GԆy.D1.qDC̭k9s:&do+N!DADbt2Ե/ ԣ5jQN&~Փ^mA{?2Wˑ2<$J'4.֏p7Ex{:]OQ7"NW_v&@k\ss t"V;?wӇ]~i\:p6SS8+8s 2]xs{6b\{sÐ t)w !:0[w%:hrE7)]wtO*$4Ѓ$]٬F5Bs Vuݜ!ڼڹAFT B $-11ʛt@ZރL cݳN\y-E@%)m;aobxYhm}#qȵYP$s09fܱm8`Yӯ|΢.̊E1LE]je炸 !Z oNtiq0qD@njz&?jLMEQ[0 Ged]5h藓,P?a<~|=O&tpV;u,wX9{fQ\Y 2pu|;4<^u%I:0 3dM02QNଘbn٦!_Jge &Y\W&$ѵ ܭHl&s'LwV3GY'K{uDgʣ]ro>*ҍLR;kz uj[al&!ӓ: A= \ ca\w ;Lր]}\]ZQrIɬ=);We,ƌtf=zqmn§}x} f\hBAl='HYf\xj$ZbRh4 Rk-೧2 iyW)0n ( *i<'r 윾fl=,CC˾2u 8IbF3>0%.zO^nO;G k3TP"Nκx2M~*##s.of/Xɭw!W`ΏhՒo L ȡ.#e]>uvWmS Ƽx#M'=\-c4GR7GK3d-ЦאER#U$K$–Ag;zOʫ#˩dt/]C9F#:E_وkIR8،ɥ' UQJ͡#jg>uO ~-^̮&9^?+ +6v: cV$j$ V$zB+zj5e?k-8Ed*z{ ْKYbZ8\MwɐOJR@㈇1Qᖀ"iIm0P{ێBBCjn% 4VD;/EA@/N=ɐ)7&`8>[t'F81 J]2ӕ~77Yg`ILۤYAir(G&(c ׸r ܋,Ȉ /k)paKНvX6[GFG$>dG|xnQӓ^WCN딖 ,-3?`` 5CsxogB# N#A~E:? .;YşU).B,v?&GKgb%}sTz`acj(NdRn]V=uI(C` $02{zvq# WRZ-\8l:W+80Rc]f7tfpS-2d?ZVL~x)3nhHR̛e׎)j?rxbҰ \ u}&;lӎ,يQ;JNސ֡?/홆CDuCr`j{ ~ti.p/ApIH6 'l@n"|}!P^=m|\OӎChsQ#^NfO[I"oNB[ޘ#gBcˮLs`6hnGګزa]sYJ~"򢓷0 #]ٌ\yRA|Gͤ .bF"̐b%'9P TT- +ȱpϹ (|+UCd \l]Xlhl$!?z'lDX[Zy:Iopl* {3y%&wX.lXaB=YȫԨkqr,@D#˃(>7ٹٜ?C3[\{:¦;yWѱz sk,-QU\X#7+L= K] SYCF;ߗ 8&I%`=h(4$xl[!Z1GX"s'Kʑ rgx]1-ʢN@NPQ!Fz~MPW[]9*2&N~ҟ睙㣅Y٨3:2:3KmZ/ZϢbxTM"~KgUtX+j C6c:1POH]:!Ϣne%10zҼN#M[cbr}jI>Z.ܰ/ qa$vz*ɉCTmSRgt)ۙ,uChZުcZ<%uײ{cȓC=\"';QT@$=lU\)/?e<\Fj6@,i.CRD7bɛ#(ދX@lU@ e1ۊܧxzg3$-$4VxBxDFp>Oy긦B !#S] 8]Oy.Kt6Q Ccilh1ӯ] p g_|7$Fdxl {yN}u۔նu'QA+Jڵ\z{^pe$%cwX az#AۖR',4|afr@Qe0jΣ#/j'muid SVsNrX\M&Ie)햅 a/cEȯ粁NALL9V hOBlsuHe@zl#S<5A "L]SI-O؈#As#R6 (rF]2ᶶ^՞[]N,z3!\0̸f*j=@ ͟EaB]-ԞS?IF B{9o3w(RR f7՜>Lxr䢈ڛ[װd&+=(Tjځl,җ}l/n\qSHR]=[-=~\'' G"޽f1ar >K~WS_Y =+xw\@]U"Y8Hė!Id @gnbk7ӫFCqJ+ʫRE I?HQHR00 <HAmI@!cn=.Y)JKhN:hTH1, Cxo+ ?T\mg|8BkQyuChy$A%w#(XxJ% K.o" ]G(}֮@mi8a0Bs/ שDmb=ċɞ y0k1Wk%Ҫ3vA5]ӐgKZ_(U_s9Ju޲/~?r;ly;֝J>DniaSN gKV1QI"_.e= N-g5Z~ ..Y#=KL-&_7%sof${kDݞ}*"].C%,"N/4 IЎ?{ S>MylflCl)hiÑMV(γr7J+ۓ+8xerPr *h+߹/NKl"ew$"yo_vuRpwG8/S2Us-[|8nʋU1_?ΊD#NmI޶ %}Hǂ(nwMtb K2tc h~7yt$"wI聆PUOJ$Yp MGk)trHzs ,jkjE l7SQLPv/tS,d6'Rrw;aYWQk F0PhDPO"5v:y$!+H;!mٓ4!K[OkEY̌O/ QHF:O=>Z Q_qy?ݝYFlJA-~>%d)&-ޖ޴] <h*y#\ª= ѨL"mµ'`xq0ɾkxZ1d4M3#<"Ac\`u28*mJ3Feݓ @ R!'ie/:}QFI̹{.c?wQ%e4v9L]{򬳅fn='psy?}Ǎ&;tLඒ`.'ŀ #8 duq؏دܒ9u\F!1=ϲ?3Rw=8K%SsR-=wHcTi]y%7%UVSET\&NWIlK XV| <3qa*T SRԳRһ88}K?%*!3_JN\CY+jM5# j.[jβ ɴv$fIV/nf!u`юO]^,(hEb :U}џef{Z%9;ͮ3Ýy2d&.2I=,f^ hF1^+ӑh΍ 4TSAwt-x&po!iG~Lg{{>)[C^_4AӀ^Jc Tp 0u)έ?K?=ѺΨvk^X }v*P*e!?kfhd`7-zȣȹ+kTsf, I9wB wng_(K*2;uQ8\얬_Ti݀9]LcLCH`$c#I9>fb@|AzLdc"a4D+4$m~̀}S%`J9k܃V۶G{- t;0VmV"&FwZ^"K+|IGw 1ƿh;KQ"x5njy *O^`y" 6db+DK ⱩL ɵv0<Bf)T&gV%kv)@VPYް߯[n*͗p({~ 8zOKA6h|HK;9hy]Fr_oB4(B|W)sBPǶT3j[E~I;~K8P֣Q:_ܯ8ӹՠ5CxampAy$~_CA а&*iu>>=V8K0:DYm;=]qOOo9D=eKsAP r]fc1b:1[wA6Q=]cW\aHCJNEw!o\^63K|媗T ys8̱0JV#1Y"?@-/|DOa{gH>`ٵɟ0)=]"'P@4V2fKYh`Fن(imu>OLJpC8ڻ׌w? \=8ۺϔ~m̀h`m c;T](9Vmڞ!?Փ=d^viW|p>dSUR_z\äҐ;$p2/[l'_R rUj1&amܾi] \:/ Ajs䞑a X;HIO0_HQ7p=;E/M.kvgٳ廥%^Eh}Nm,5oђ8N)TER1H-,Opˆ܉vˀr /CAMHi&3܈Fа>F0RH `ñh<;U<.^lv/}EA6]PTwTCb?z}Zi ~)GApfvlq=<;VC1K7m>}34TO(EDܬE60TL<]IT#G`"9*"y3/LX&kM;#Q=EQjPwFr%ߝ3u q|Gxp'KDJ\C{"^́!lR/,RSZ<3q.gtL.ЮКt.Ufnk:IZzmx"NZ-224s0f*p~pg@gqeؙ.BMX!ĽFWԌryx#M0NlaZnmcܳ0 Z9= vSK(G?;ۧfwɤ8vnҡr/{ yg~DϖJOZSMPiM=MJ9s(C3x Oq;QVߣ@[`v-~͆ʍbxU-%nkPB LdM%i̛\ դ0|\}SMUjcپF΂Zq1OLn @1ݤ:痁z>G^G2E qB:n6l GN+Bt -"V1l㴑y0np8҃s9W%5@ӛb@dm׮adz Y oNk.ZF"i an[3CHfo&L*AՕw{`D杙ou% Բ~qďRd1iymV/Ӂ~4{E1S܀q~ h&Dv*# $ڏQ  5_ \_UQs14nJ–mOOqt6tuo5ƵS͏>&`Z|1Fs<89 u;uf#!e3t\VIǁf7 ]ZUөX}hL_ۜ6͆%⹔,z>Gx%FZ hGO#Zr0]B)W0 ZBeo#1h׺p A@]'DQYݺխ]˭K/觀[x :,,W- Xӗ(iDG IӟY8*X Ikǔ[`eg )#y 8VJ>*}LHƚpb,1J/̯x%WxpDweMSHUjVƽC 8B[gC8<MF6X{4a6* )P !e#i^\uڦ&6o[,[a+PI/reI#83Nt8-U1usƃwW__3y۪)gί m( 1]$nH59V+aS?@4#ˁ[nKC{f!rQ`cQW֏h,ni@Yc9+R|c#ePB9vO-wb;%cTI׳`˳kMKAl1?D,6?)$҈< hu[%v] G#">ԥoQ&kLI2I~|%^2hIL!c/QuZhYن/[d'<GúIuGYub,.O,jֳp6źcoIK[S=A Ǜ&Bј.19b[qO +&I j/zXPayG f:I‰–҂w  0FiWl>z.O/K3!_JL̄1pUI ٕQkq0ؐZY!Kڲ{8bϾy!ۃ&|#c85̳B*v϶B.Mbӷ*h҆TaJ $R]ZmS;m|ecod҉{pywe?ۦ%rSb53 oPVSj*/h 93ol_Xn"6Bh߈mO(=Mw~-aI4mqZ*T0U/AwE3ž0 =/wbOQē ~y9;WQ3T5ug`0)E7Z_ԔzKrH-pm7YsWW'KTP il{w]_g\L;!&|@  G^8HV8s|' #57x-( N+mj;I5:TK~=q`-`f`Dc\Yg u> Z^~3-8*=A yoo> DI_G$q*w 1Cˀ++|, ė(-;P&߿hAcy'ZEnKf?f SJ5^Cz8 d*' 7Swu)a@ Sl%滦~"=J20=x? Dmln{ԮNg:8k'vS mL]P$wJ߂tc2a#Wm r G ZEByV,6M3EBƴJ@94a@]~ev&iwA6fšdPzdRA'%c]Y1XL`ie٠B))fkncUf_oޒv+O>^ˈ?p|Wt%AN@a\nuy"ӏ93Bed R2F4SZS7xnL]~eC:mq@X͠[flg~aL *!pG]Yɂ"CAY_zp%Q# K| 粸8 +Ĭ/Zb盷G(ȥ<-T,PFo&c҆6{B~&FgVP/]fA p&X\ tmYkp>(GtF#MS +R!V]b˹r8E> LXB19pH尦,clG,`rVqpRBFA,YC;-k kU.܆ lDQmɏOU0dY%HȦzOaQ=b[B~SUsx+{BkjX°VSFޅ3Gk![iNB;1YTMTHvFe۶q뛵} )tj4os܇v'nq -#~W=%,$+ A 5ԪdW='ҲZ vj>oNTomI ǝ%}onMhgus}Q@R8Dx,aH%ܰ^KZ)gLnt0e| \5I3+8tYaM;QJ0UEtn!>H!6Lt?m:6KYO lvb!`9<=B/v#of?v =Ǵ_l**$~ $!Kf.8[73zE;90p~H׶xܜe4*ui9L s~Ջ ,$-RrW},k>'**+)=!s\< ph2bEpw^k>\Fy)]j.DDBsa?/jlVIjBhVԦI5LjC󆓜+kI YMIc+\[lyHúݍ+ؓu!7bG1s/j ۼNY46>hq\0āPIi D6 vhQ`JȂ/ac9AŐ?w:[NHpO@E^Ɛ!hJ]T=yB,&RʄckϯO_bhy]ya/XaRxuzt>'[M%ԇW R1ӪY50{Ƅ_N`09~tTCT 1A`0e-tē`#9@|-$,giB Ϊx҈ Q.O +})ë}fc/nx``$%AE ˅DŽ`U2͂ KbD 08!5N00.9ӼY‘"qji-B0-GxQolyD \9;֏@a> qgU6s\Vςhnw5h%>Sfy&!R#2[GચZ߯KP Y7i*Xk..q蕟mR!5tp~X)ufG"c%1>7`\Kk c_K<,܀o8ݪmL:kIWk,ɹ{ㆸW[)70*hxThaR&kKtB! @eY8lfi},|2a-x~gvmKyns? 9gcIsИ/׮϶fNr#:?2AGSr٪ r#Jj{!)io{f  (=W' +LI4f2xuҳF$\ع`F>?ɛw=)dFgM ϣ*Gm'rfHBs6$f`ZvJ|Թ12}\1B-KOaٙk[}XPKy8s, R( b9~]x-pHd6Ȧ%#K&̬D.x61\a7Kٸ@Zؠ4| qLi'*q_@p 哲bC;be{G3'D'`}M:JUnS_\bdR%Y E`4"@O@ !9#%p|rLsJ20 {6TީKXsOzBZ0]tv!Pcn,ު !]4 7 m o/p u}^ ڢ9j܅z('!.M*Wkv\TSV0)soU .:@GG y4I@`8w)abdhOt\dweO[w:LO:H&U@̧\طj7{Ww^ uxZ+XDh+ETn J}ǓOLS2( L?VDF^Z98}_+جă¯ezjOn<$Szy+魀9T` `@w/櫯Q#$Ej;yvJlzf D|R?_H* P!/WR/#>hOBHt^y/ZqƓHF! F? I*>?~ˆgjN Qto"޶,ѵdJF;{VC΍mG =r/2@EYgyIfm~γvk˂ A35f\X Μ.>m w1=Qa.$tw? cb]hE6MsDl۱=my%7 ,F,\/RE+TcL~[2KI1jɣ'7D2j%LT(}slkS}l׬$ JG-nfiP-Cra9sppPNj lCkf$C*O$7ۗݠ NwMZCck?.d!wp)WW@{jQDr@(*xKQ*4Pgvf0}%)6'[,tm*4 W"wƏFGY&GcWdI^y8,x",#PG5%WѲsFCS[j}e;;'g5g t:dDD":#D(PzYY@p۰niuMņ߿}Xngj >{Uxu2I3/87ڔW6Kˢ!GI =5s;]@}%Ae,^:+'nO>ewXJ:QYZKIxz!C(Xc;iXͷkpޱDHȆ0 W'P.-q9U$z͖-V_,rT eC~iV-Q4 +d5/OᅙklAd/7)VW@cʤacmBqp՗ w f#+@,O~3(π⋕`dž5Ɋ QEQ='饾]{63P"*HLʷ' A_1P?&Nr~n"aoy$أCzȞt%_@^xh0ޣBw/8s\CyVT(ֺ'yOW=9?ߋi7Q!3mq,́DSާݰWs*Ź@g?Mv\ նt aHo\27kJ?lՌ<@O_2\߉Ag"|)xb [pՅfʞ罭R }N{ah^>ݠЦXlt=EepP0`&HC,ǁ(;U6d me89SW >V\ U*ƦJ4j|U"R8\WqP]a,ظv Oh|; Z{ 42DS.lLexn8 /s1|e{&)d웽<E<3C,rrF~!_ocG!gk霞l#Zru/N0p{n/eT^PP~pĦ(봶2gy8@s;se^aL1/u1AM,?6mS1.1X i궭xe4`v;w&uS!hUc֝D }'$;Rq7w: sҭu혣^'P n\y' ]Js4W= N!Ai {TCnD1iM5WE sK >My%yNN;5ēFS5znY!]@l7N sG6ֆvŴZg<$(WBKU~D>2)b[m0|bu6k'#t{3"cMJFD6Ӂ aUQ-p?65!ٵ{:}wعϣ`K A$1' q*~Ը2EtZVdsX$1dZ0 `$q/>\[mrf}Zeؗo0=!2(2e~WPWԪM‘w/3i0\n?Tv9(3 Ila/tD?k1T2ػY ƹriDŋ?ZtC^o)!$p(8IaԃFHNR J5~",Y?z7>,m}wmic$o[DcS}-0h2׶ j4@;ôe \n!1`4Us|MlQ4XpT=O۷(QL@k"6-+5|cʘtIaY/kpE](WHN(A~tDRͫY:/[雗ES8g/.$E oHERr?،<[j]&H2<3TJn8"/G`thۦ n L*]b<×;s@o¾YsNljƺW m6 4׳X2Kۢn6F0h+P pn8H|̾Ynv\4w󥝻{oZ /8>ʁyk`o Qgmc@ȍ!{Bw= :;qQJe|Mn%1CE=zU7Z kzڮfW;,ӺkwF,9!$T}C>PsN¨ސF،̀᷉uZIt0Gb .?\Fr [l0% !Z;o"-xd\}e;$4t e+|#;wpI" 6IWV `ӷVWgKWj@l/K|',qP<'T(EE-B3"uv$_;}k]\97ƍ %R*F0z^7. 1/[vB˖ykT +u#]Lk>Yg+# pDL!rue@>{ ]i0ݧ5!uUuiX{q#"~f~m~<ɠ-n6siߗg_́,ߦ4SF"zmB/M .R#&IJ!'%v!$8Շ [033/w۲d8M]I~œ9TU$1w{a݄'zeh<_P5U Lؓ’l8ψ((ҚF:'&&1NP! IOaRAIA69"`kzGIDߪX 6dMM3> |-aS:3*"Oϟt|&t|Ұ0S!ȮL|bBؠlroW { Fx^| ]~m"{2n=v{Oj V0sniyQF-^p 9A6nuM`\22 .'^c]uO/6dď9#LV9[q/e(aí-,V+ziՒt34(#t'4wpz&rК5__)|eWj>!BgPVð5iӀ\H2V{ݩ&8f ^ǦM[:K8t2piIliեe2 i0,y헝mDW5%+$峓7lvkO5yػti.ԭ};7iok i  @,O{vCϥ1@GU:D.Og4ʳ5,h: {DڷO }o{r1AvN=ƵeSַmPqZuc ,?X9"Bi&eLkty_*fz=f}e/dZI4igM \MkWfJS9F4?ڞ X"} !\f-%J k~!G|>}?&zqt/y" تnHxkMH43]/C7w[b1mH0WV%ϛ}5,q_nꦤDY*g%eلJi_ 6T}A._$IsVZp/̜Iw`2F[||5'Yu_# lUq5?rc,lycJS_񐜳ґ,M4b?iB|[7rg+ڜ ‹ͷ+ͧ .}lKi¼ԧǐYZ4}4sd*sZU2Eا֯:p܈hިtjF4s#\=zN%ۆҴzWE".M#WVO '$NleAckJbod3Y܈O:>aNHږ sfsFᐉ+7GPX䘄F|AuD2Z,-RN 3h׈m&/W1Oo_Q}LDw0`L8G'VWJu rklf2jՌZiG <|[)t|[r` 'X:xyQ.=:`z Ztu /Lնe%Iyc-լiZ7|u? Ӌ*z4Jƫ bϔ= Pc _jTo›ܫތ  4yN !x?KkNz>*G!9k150.QW#B[T8{=֔63e@vw"Tƒƴ2__# 5WCgxF`? 8->?^t kICAg$I_G{=<ˑrŤDƭ~RdQ*١r۷$^ĥ&`[d:Eb]x!_0D -`jdէtHbG6GI'o~7U-ݙ 7`ȠΧissʆ (N !$  |}w:1nmrXG5T}TT0]=>2WfJ[݄?UQJVO%3 };(QVm\b=w~v6(H-5(Ӯl,7Jo@41o>-g+<%1,x#džG|=18OHpAJ-GAZ0񒏫R*}ݓI2 khgZY%GaH&p-C;` d| MsRhRT1(ޣ0:0(-d MA8ᰇzkr<u Mx~&aZTnmUWgb1d+Y6kB!|?*,(8:Kc'R~K&O2r(q\!lW1L$Wy)ٶVGg?uErjQq2/N\2cn SN곌L0,gԅ_-K*:s@g PjH5.ɮTfX;\j(Xdn|REU8j;Ú? W =/+}OE0 C ¶&in?ȸ*LܼL$c4Ŧfm9!ESGE`e}.:@Ūj`VTSSIETԏȺ]{S{=<PØS!'P5̼)0W$o sEM]^`_>A1p8q4ޣҋXhz[ݝ=cu QIg0(|'4J}o,È[2>?;Teeea\v zQ 櫄x{44N=q́G֐'yd+tP0օ'\.|>_شKn ($Az ׅ$< ߚ!Fy}Zt2n`@tC_~L (*}6ˢ^цTzD5-UǁV۵z!>SFnMTPQ"&{9*Sg~!6Ɠ41bPco&K <*W(bkސD|hkN⾪H= XpNmvH5ˡ4:F 0;FcLOTܽ_&ɞ-cjό*S"Y/\PiK-ReR'/x-`,3D'G/IX"k*(͢yz1'}Sړ e܍4pXhI# Cv_S\wѢ"Q~, |i I,T1a@e0-$']\_Gf[S,uUN64 ,@*D_ bUcLExBvLo'}N R36ndFiânΖhXmsXś 1Q#'zER-ECt*[(k>ſ+ؼ8wMVhq 6ux[}]Ev>Oa=N / K!eQ$` M&?Ө龍J@_Z&VpRBhxjC nZ;vwY$r"KlZ)ʵ{xBrW#,/35l(@|B>B1@ӳevJ=w0 Ktexҭ1Ƃ{éZu-e82;`.*/>k8 IM,O|ԽG2{mSaZ S )n5N#m` (4(lWJ[60IN[/տ3 SW7w? =|!Q QĸM˻jd*gڑD>%6!qY,D*bsPxxq+KεZ{JPT^oI ?,@K~a4i%^ROM}<錴@ 1,ەםlZ, g}3?:Nʙ9{N/ ;񫫮,g7 iזּ\9w4:]Ò{3_`^+ n8Q(fit䝸B#M)x,a `R^EVOyg)8js^AIhciˈIbhY`q-}B.-){`(`s*o$H9suE}:]KCҦ.Psi_b;mmJJ \unbc IQXњ!R"¡gcNC"x&'ⷛHlz-(D4`CwY;_˝[H귷[XR\"cKsau'ە妢^VcXF1{2%c|.zL㺣#y{5C ~%3 G<m"؀)Y9,^sz2's jQ<RU{a+-AS4`*H|5:(Kr@炙Iy8o*exe|aʷԞ<ޢqW'Z:ŔgBmWj|{avɅ|d|`o҇Q՟J]ȅzFm]QS{<0Om> ~+?.qXC˔_U3؜55)pa0 VY',RU"~= AI*\4![ .=']e fC]aPHBvNPuobS}D5BF (tՊP\]LdyJmrZ0A3$T+_RuGb$?qfJԪeuaLg9 4S1e1 svfHfF(d0I OD%֬3հ!ɱ^tS2=j US$a#ͱaTb |ign6;@Ԟi" 23t0ׄ,KYrD:`ǡ*abhCt-.Y6z:X4ɿDžD̷)֒c|Fjj`HV)zd`t0?ARLXX|*ޯ9堔ɯZ>ڔKV Kժh[8)̼cZ)ʇشCpO@Z:z8쑔PFo&6P~OufZ{z!hnߝD9si,OWWD>DkuF% 0qoXqcz ~1zN .ϝ:+fdS,~$^VR<:Gϩ-xsL!bf/VFfiI(g esuuS2nĐ*433(`,Eٻۖ]M"@ZFOEE BYXumSpпtC]3Yр4jͳzV=v2^{y2 HK aLp*Rg9@. `o5H8\ 4WRUǃo& 0fUP2B#K"k`90M9~aVt0BMG֯l?YSxZ 5+:틓Ź $;lx SL{87=?b _5rhj GG2Ź>|s,и=ݿX?!rJ7Tw*G>n0sq5.&*i>Q; >u`أrj0ghT^0,bsS۾̩Lw)F dʮr|Yji2"Qƍ3e&a#v#֪wL]rۀ݋=7Һ+.'zSsl5jz_ $Nx~=F+  b6є)Fh-"Ò׿{grfC}#gc-.lǀS{~’mƾ"|Hw9Y4"F'C*p@29%Y4Nа ]`,aH8#'F|ʮw:Yb)"XJY;^{ 32z:cra۠LVuci\TINXoL7])iS6yP'\Uq5B: I_(^JKW=o ^qG#>UQ{1YLdbR.zbR1HRJhɐFB%e3 ;JEEp=J^5+K-#nM ؜+fjs–U~|S2Ss܃JxQ 9~7lr<0-?:C7`Wd#M7Z&D) sS沷(l5\wY'B3e@ 1t&5-c,gMPqBW}||SQ5Uz ,Jl{1E||ipXb@2gJ%8d[}_FOp@>($]ݺW94ξO lqbY9̾=N4QzUԋRw]=g(`C7C'<5(9B`%J6ctN4c6ew;bQ(CRKZ[K#MR@Bhf=t.xY]@S# 89Cı::qsҼJ~^ek$KwfWUYOV٩{Cim `NZ7?] MaMwܝBoH@%{;$JjQ-B_+l qr˨w%a{7VjF| ]qEыpCah몍 [L:ŝ.ZuaaGG]QAsmh?C,B> 41X6>n$4?9,v''@"Ss yx=}}L18q.i7Y%qwJ6 FM7O{htS"|#:!nmTKa4_@g6% H,:n:]lFNiT.? #śFV0\{P5\,h!уxm"x\x??R{)H̗*Mp;%3`Q?]Nz2=zYDXm 70wcs¬фT']j3w!ER 쐑Ym$01^ċ&\4< ^'naCpd T/c; ߙj^+ml7AF?Xs㘜6n B8cP$&TiQXцp{_1%k;;8 fThQi_F.W}\Yuz5aER:ǮXI`}=a -JhsG \q,a.1t'?ߴxjviW$P4Ha1=i]](N6גg07x{+ )r_B f00IYRS#Ymz94C-hxw=P۬Addl5]: |H ~EQ-MLr"lsU eekoHWY f8_(c)$ :D(4}L.4N-݉wUZ3hTv90?Okh"Ty{s hĒ.L\z$R^[]kFWn!ןB]q]r{ਧ.)kd]1@ Rp*DR'' S?Tئ%u-3l0}J͉DkB̏g#Zs% *RWI ̌`KRܽ}H;q9]J8ԖӒ0ŸoonhD/@j^m{љ=ގfrx)R.MK}cNQjk~Z+ ):M+uY"=83#C1j۬b`#[܄Y> <6~" =T\,YtL bDe%SeVpfB#)/Xԭ nܠ ukD@?{]m&&F&L]*ףo֪.WNF-`Xbq3_{g:[R. %4{8 -eSɂ\ 2B?I+{znE+l_N |ē)Ϋ'oJnaJlJ4x\lOᤓ&+20g߮gg%wһFݮ~ ;].Iؓ>.~խ&}%+buS4>jo]g^K7ܽ *sA7Ϝ֘ʳw}w8+[:mE=WYWZN\=)ƽN4/8jfU U/ฉv5y;(){|f;vR捴}QmQ:RUM:H%ARD0`:Z6r{|4yv|">9PXyrHfr(c@6r'mf΂yg3JB\Ū 5jgtX,ҳbd8DXthw 6:=.w0Cל;*O7};}Ǖ#S!ֆLJI!lRV:$t[06t:H<%*쏔r,&|<> ցA> W{ ؔq sƝ9%J٦D' p8C2#"X3Vct,15I]|K_=岷^o2L`4BlHR7Avb:*'(f "SDyE}kAeETZKvu+`k M4{QVXOD~ʧ7CIZ> Omee3$BxA$ɡfK,yYwa ˶ ;y<,-Ip %|;w٣#0`ikqX ݂簘6h, TafH# {RUd"xoC=n< 仇lK{oOdbx~nhF3ע^}(^<-g; s-8.}~XWRj+ruDQRlp y᱁R~ $ԀuiDЌ. sgYX؊>c_`lO DujcTQ l|)yx=!ޣSgS1\wA!e=iHv(9 G^2ԙ*Z!QfV#Jwd^ zwWNV;% AStp cNC캐rvp9 r>f.'j?*کɁbG2s1$1:ɗXBHv{`?vsӰ1ט"N<ܤ̈`&ͥZimuл\Щ`Ts3 58xOfr99fKVӈIUO<BxcfըB2cԚwܘ+VR25 ']y7knnPY2|(&+ww\hAH]T{Y;(^}2nL!IBeSjⶤ6! ;-,oNg2Nłݸ<+Sv:-5Z{O"FӸ1d{2`[)t:^ٵnjj3^H&ٵ>^B kގ"J#Xd_m5BN1^H/;34Ҽa\^¹loO!Rmn5[|KJS ^dHX!s;e-`COe QVΣ֢AۨqxsPF(¬ndswqR.. @&rU1.ئ:()3E%o4u*늯%.@͇՜/ZMGUcgK#W۬=Y5 M: a9S</@B7^ *4nY2^q\fFT"7䯜! o5iZ,ID-Z?_pWb|or:^O[̘<='پAfώo83` m5ܢe S )!]I>HDb |d](b Ǖs$62W[="8 ]J )l1x+(P돨falcmr nVGޡ*i$e6t6!XIm4{q7Uar^-ey=3#ُQ\lQ'IB}deZS(K gjP&@LhEc/!{U^I;$u I",j"( KÛ򆆰gu]w47, @74N$y#~8kQA#qIU숦!쏫 C.U̽"lB+>$?RTRYHZѼCd2L2J4w>0ܖW1d!dT ՔOY:ɓ쮡_"@gN=T5"G,>e-.|17nZFlcңd+5OU;D9KI( bz CE/o106jΎ]g_=H'X}: 8v椡6&kr?FQ)l!,}McȪUO%j,⻝ x\C=IK,xm_He3=[zU:s~_rYХC/ w1Z6wF ,OZQ3ҜW dz]8Á RRcu01 zGdH,YwaڬBKNCks6/@GPv4Dt6%`\dvx3t^~5Hx+AFpV<ףM<_hטio_R>|zOg%# pN؍\ҏ_66-?+狟ejvT<ۤ@-}q*"1]KZjb΂4~*}Cjb.y˃l yw..(Vch䢤D*I }ôڞݠE %Ôŝ@x,. 17 3+ m/{U+Z:ƴ>I[!$֬`ڢ ޛHȂܷqM%V0m֨ݼt~t%M=|¾ֽ#&}PE4ӥ cBIw-yEKts:I\n^uƴٷF5S[a/?^h"q{u:'gP%µj}4⒊Jz3 j+t3dܯbGc.es!gN.~$ѕq{̗=5@D%^ T0V?y8 ^0Ej̒u5L1^c锅MɭԵe@k [PhT(Vp2j Eg(%vE&ӈ?j#lZpq|=w6sRld/z;N7mUfog QgQ)4cxT~:Dyde`E;cP8>t",@'aKwj;ڧݨhR9:9 ckUV4\Ʒm:S3>mZau.wth)= b0;[I}UE1|9,*U _|PEw&zp'!' H/=08@yزDE(I/,ܭ/A+zmҴrnJ;+8'0HdMNշ@\dоV8E Gs;%fEJݧI+ k4}#)4R_Sl 3j'01nGkpي!2R6 oS(${(8 аjB/3}}7z`eSU)v `+lԅd4mZC]cT_Zj*߹abDx ]A]Q@Ac6HxA oֻՐZJs3WdJ I J3_ zFD?vԿp$?mnLu y/1Wa}_b{XӅkGZ; BR)+8ÿR)ڸ8&;)Ѣ) ~x NFH$QnD3Sj^IQdzzKH>!" Y<2m[Oe&hDM7)_in%PX4d8q[cԷ 38\(n##ĸ<֡NDa,aEY°&W&JPCfFhBe0{L..(S`!l4&#mQv%<˛"[><kL+xSwً\'JF(>;h P0:;`AhIU|~1crH~hma~A,upI Q!ُIՀ51 Hz?ޔ侤8u' 2LGe?HV.2RѤ1R!Ï(&՚o[^^96 /r3'm=t${][5 =>QI珁YY~O1uR'J!dRaq61YRg՗+A #Oў gYCZGy6!r`[=ƿL!b$"O#`OdDMUCegzl| _NgHBxU%n| d0"CWoDܱ us ^*SPRO=Yo: JN[n73ar,P8|LZn7]r4!yz߬nP3(}:Fr? H %MbR,p\_iշVC '@g5pxX[ \V:Gdki]05[9?ܑLVj&{'vĄJD{Et7X6,"wȫ2-:6ӟlU Od>Jpd $A'&]nSK]&qyIql5&wRR}"I60TEk=<nHDK,#+*6١[Ǯc:»iT ?CFgU I ޟȤA=G`u  >u`IxC:;J(Q|jy#:P~{)C%֎y=?XY;\8¸dMH(NXZ[Q`@9v; `ݧah% 6>v\"#7HDqKCy%śʋ8ɋ̈at:3 )Edeng$K92{M(KA١+ >2TgF3 &D1j_q1 ` $u^yhS.NҼA=zoD Nنb=G mR:R9i9\қS:5*O82lP;tVM䝃?:x+DLHz yӮYi2^~Lhdu¬̮8-K55Շu4C~8-b_4Hjt7^%i\oC֑/"C:6jSd xBǻ WpL>6'qMN1#(sÎ=cI-ovNz);Hrx/*%F\eK؅ Z(6f} x_QF8BAx\hwrg|b>;I!f?PM%, NcSv]$nvoBT5I"q؃~$i2j#ꈰm@< _q[PwQP cvKaҢ04T7j+1". 'kO&8Ԕ]+:c3K0Bs;RT |ؙT*HIq[z3 AOXm-c*|&PIyԮ~Kn`+X@7 cqܟELI,:^4h2SEU-Fֹhe$CRiVF%33ZW2 {MiW:OHB*Dz]í%EI}` f$XceQ2*S̰1Cphϭ(TS,)5sS4 x̓z+GJt i2 38}I=Ytۣc/enEzry(o#P۪( /E&Qymb!s/J'WFY(D@\C'B"G>kw4XBE_kv '}TDgA:VĬB5ۻyΌ=WW$4dqaf_Y~˵؏6/B/R}GF r#rR=L +StBj:@fzdD [=[V۶U]sHCjaHòpHf&໵+3j7 =M@IFxVi@vN!=ƿ^ Q'}݈̮W#@n3t,Rdvj/ h>aؿp*1g&IԒ.ҹ]f}2Gv>oHD:HMsFMZJAaAf{qɵ֊[saYeުfu-~#IT';{!K`V*׈ =e}6i_xi A?AP읲N|.@s›Zp;5^D]_"n?٥vw8= 6 )D *>5cS㽜ޝTɲ́ }=j*3x́dpȀf>S`Cۍh~V,iVf'ěV01 ^t[`hw U!pMmlCg$a58VOӫ!MyW{()|URGujGٟGtS}Yg>5Q}M>˵OJَrY7~uБo۹8wW (U\ _qy L3E=f:D:L@&7_G WTe8FkȎD86dlLc㧔zud3QD@Ҙ% CuMo-5Z|ΐ+j`Wp3:;LU?̫߀_?G 2~PyNar-y6ɹL^kϧEQQR({9`QtI^q`'"rj{@V(]"jPy:g?bh客~B'\3|+6sԺ*p OÀ`Dn_IaCj|Fz eK˸$Ԣtr$;}'GKjKuЂK ԳM׮0?O2޴N@M{I~YaJLc0wMbW2ycdIYA Շh=p\X]@CSYUS4o+>sRNCtXhS _i1DLv; _@ۯ7d.a¸f sc*lV?m`%G k27:孱 cǏo;𗂾^$|yre&XWZ}+Ih\%s8*Oñ17 {N-Ro1U#?>1LTh*@|y&Fd}aYVU"-SS`ťD!Nsst>&ga=]œ0|-ϩ [i^sB$u(6,ElIDdQ G@s6Av_Osf4J,!b1]1ݴ0SveH/X@IqaҤ漳Gt,V)G2,Umr5 .sޞgk: 5wsmoӆV5'(zܥZ^2e )UoڞP/Mpf=_^v.b1+ͮU4`EkV@ÈC؞Ҏq ;?80ڵiNW;8_~MBwjqx!˳GCJ;$PDLb;EZm&^P#ߒ9s${:Pp^_♕P!8_uu9y-c}an j|>uK]uM_1_!*?~) [ dwre~Zt7;ʢK[@s2XvMɲ{s̰`&nX86V=7dI7%nx8/R,iͨ^g9 {rqݾɀ;~&av!%1Ty@g/Q*m;8ɰKcZ.+ʇ;prMDqv +iF2u([@^nwT 1\k8&"4Jz=Am &W~$H*_p\ P2P*g#,|#qa,úYL͞\?|ۍ ʈ3-sǓ1 @./ɉ335Q|7t6A @Tx^͞m,aT:f`>NnFx?W(Ɋ@ mM4]a ԚX舏:swJ—4لDDzKX0Ʒw/6k9h[e8 EcuT(IG}=Q 0|dKW|Of1ElPN7F1YWvԃ/Hqs 2SV~Df0A7~H+8vYcRj_竒+yzMDn/! 8 |1vSrٮ3u ~u(MLrdxҡPޝ2%"uʰEdH)ao1JF8AJkLW%X1Km;彙+cWRFmɈ摀Di!ݏU7.*R%qz8 s$m3po-̵ 7./(59YnMB)8Lq˂FJU_[D"jw_܉,#䎫Nκ3gTDa@Rrb!Ny v,CqJ[wk꿗x@5٧4lb&j%m4Ο{PɖGs{Do'ᨄNqVLUoҨ)I1  fm}yq+u"w[^zl*/CvBTދqHXR3BqpMUp? %cs]t.ԫ`Vn9VλH0j_> {b%A_r@0Nҽkm544˂Z/RTc=ĊA"W~Imrxu-wr3VOx r|;c9ְC-ZdEyVF?#2V)"  wEPL* mtrg/Mtx[eI\UÒ7H5pe%F\Ӧ!r ׎-;G]>_ٴSszG[iHgT/MI_0O-ҢbBU@Z.ߡǢ.MTJAU![tw6nօ=hڜBm@U[l΄d?;VDqL nzt1ϨnW&\y9"Jo"ۢSo1j! 2YCh\S!za jx>tT(Fk~> X~R . 42;XKįP$6z1{% pr:Y H^H!g2wt-VF/V1R떁nNpZ^+8ϯ1x|oĕ0lc`%uHY< I|ؼG<.Ķݦ5c]4k miqv&/NIQ<{0dy㱔8.݃ 3i.D'ѽh{ ;HŘo9ϱrPÁa]@lLW'򵑓r1"CK}޻m[c* Zv|c"BC53$Dhʨ!~a8ݧ o 4ct0G;i([VSo_XD Ԏ]O=)t 9]oD[s( 5w;nXi0S>*q'0OɴTV)nWX0 F]![P⿅Hh8_Y,9hZ;jiTt̕y)R"0*XN@ <3fj%E=+HXzmF.;QգS['}xF&WOAY]) .Hg@cp4%lz +moJ'Ijv3g2$ZCmA{Igy\CeӟA-G"h[@9VP^N|n,84ڈAe.~8DYЊ`pHsrG%Vt*Q.J0{0}ٜ!cl9?T)~؅ M|T,m74kQ#>p!PhqSK,{7QvlQqE/+pб1_tHSz|0}C:FY=lz) 0I lL$9EwV"5R.s<[: ŸJ6t ?%*j\!w|˻k6Onj,F7˽|h ! @`䵷4j(Smz]Y~vY`ϧA=hIz*p=vV'sՄdtÎzg-x7</Mi`M1Iv[g6[:{:*XR[DV"/L0HYy 5@T$DsreGĤ07-uEnŁNT!FOUv&FC#&8֩(4@ 5E]7R r;esǽE|~oI} zL2 *$<׼ZJ{D*~|T@&xAV NQRN@fEcjtz}^ i21A e]mʞl2?Κ&7\]7`Is~|vBǟ#d%r۞ᛣβyFwV֯k47HJ' lvx S=k # Ees*a Z><ӛ/-4gCp L!m#IrG fg}YrRq(UDIPGؕh|g]zWk:xܚܣ;/EaX*%ĩhXYr싇z3-͆f(*p$bm}ljv ?P"[k;ktb9dr%ىJ;+:9-.C;ܚg{ ʞHC9{G. RC6ū~+މ.#?&Q_;>"`ozXkEpNr*\wnd 65.X ^3(ݓuaT\pwbfg¥ZS;pr 'J9Pb|}8U nx`&*|Һg0 ۀ`* K]iBPIooV=Pm1C"mO%(k(OV8}!/Q1}+5 'g xvJ,`(]C2};sRznAu F CQud Oc^^c[u{-ڪeXkcmfFn Bׯ/[- 'gsG5vjaDrEEYFMݴGX\=I NX8x # ڭT  jT.B"n>W#-:X?$kfCS=aP4ʼ?>VuLVUsLv q֪L-OBs)jX#>#)VƻcEj( EC߱}]2)CbPQA@#Dj%SAC^KF+XkYGř' kT` TXtJ4($[W~A~ MWK@nkԮws-]DbWyn!}=geяNĩu>8gÑL if{mϼUa8'mչ4F=$j6pmE GU *=NDv-ɓgk[* [g`SH0&'ƹk(,?dHʫ7.F wX7p˥.?(uڼW+MeJNk^ Ru[[B*ặ<_̇F6}k>kՇXF3p#lwq輙7E.ڔ!n xEiIHߡrqedo e1 r/XV o5ymD1C {(ˆ{$#} ݍN;XMiq+A{dn-%9%cT!R/ce+2}~I(O<2m>/F7y(B,åh=&p"o8j |Q" {ƞ} ޸iw3`drBFe$>7$ uv |'-%8\>?* L*A a47P4 C^E,sB2Mb㓗6sxy$ F(T~n-K*rj?YAYpxq3|Kfd~&j59gz}I=gȇA!+?Ez$[O}j")}bH?vQॗA5F.G?g")K@W_8qtiKA7pv(>y n9T/"I۾@=p[eYOy9q:X^*b0ʼ2ZYVWx% Iӌ>%Rf s)E"Wf:Sa?E 0 {g"aA/!ș# xN 8< dmͩQ֝Fĵ3(-ۖE뷣lmS| 9̽0* fV7Ɩr X9hCB>S+|G Eo$fXll&YrZUgTM#Ps#_̩7a{Q l=$Vяc)"~Uiրlh_LXg@߉D[RH+ rRCx.ҽj[Xq-p"BdfU3z"~c2S RTۓ;?Y=Tb% X+~o(@+4jyW򚔕z$\jFG}#~JJdR^}v~W'TA($a7"OQ#RRB)=]OF8'Nv r چkK9A7=0@.FLo+;Y܁|2|/$H6q=pD?`~gP N~Ds cPCGЪc q[V{bԿ38i7EXg,gaf?ES͖ۗ,$Xȸ@"Uxqm3~,غ?,rGKU UrR%僈Y6YHbf2z\QDnmMaOHp1q7+VG(]xEGvnR wtTYq Vl vdNL8 <>,z~/|?sJNz 6dq$pElՈb#f? &<5äymu?ݺZ;:i7Pǧ/N)Ήeݴc339 3MW)PU4 %Gjs6 K.Vyj&pSmdJ^^1rZ!mH?jO@$\J vikw  w]i|T(Fٟ|bL4{P`:Mq>q r Lw˽ƿ֎E5]Rsi#MNaV{h"˾aXx^˾S7уAv h; M2ıo~kJyo2 Hݕa}#bޙT?moHJIkܦ;.^3~}= 났Wt۶OP1cVm7@LU}k z"acfq s+4QKxwaK^?PmHŒm7\w`>jOgVY MGq:=V 8;AyuZ*bDt+Yf }VΊ@fD0>|IF^m.C(W\*4&KfM/ Ji8fƎQY,z4TZ4e0 y. 8޵l}+'1^wNJgvF/,Z%eńWa3xBڞ-O1MհqzNyfo͵=4su'Xx.T@K3 Vo75(U'$LU8C}dCHNO_+}-zm1C-pIm]?0.?ⷱGp1z/OEǏ&ki  H;"AC0L} nⵉ2er;9爤?DBk4t8x{BGuzt=Tœ#\ L0MD^M9Zu)%u;rJikU7FhMȹ7C_w!e֟A:ABzf4U5\_({Y(X^umm̉yr4"HG~f*Mu\Thldjy뾖R{*K>J%j12+4*4Y%;NrXS#kqص< ?9)gm'g6w-vUjpM6SV}z]!|yM04 $njTRO)xbg9:&Z*B>aE #Y`Rs~\R)tH}8]s+ۓO]Lto?k㈶x D~f //y? qޘ!~3CFCk"U`ߠ6)B׿ԼLM8:DD,kYZd_9z:VVDnlg/É#RBi(f,KXm^n&})+0:cA#eG`Ib0A9 V"O`^Í:yʄ 닪=>cWIT-k՟#5[$HӉ4NgZ ZX'H^1|cPhy mŽc?azu$=M{Se46DU mեb>g V?͡"E<k0W]  ;_5fǽ ENziVu$&u#< N3+~Ai+:ZO슎M[ta]}쨲&tI{[O{8cz*ec(Itϕۅ+q}ƦZ(LRYDGYmF4g56S2O"uk}'XآӒI~ThpkHW fFn8Q!"Ǯގ srVtl;)t {kd Vbw$[x=Kc>+pJm~W&_s2&BOl0Nl{`R HrZМϐXS"HF19pGc8E7)7ZT6|:OnDagXߠhzBdcX!Ւԫ=/j|f|kEMQ}9{!/] rgvKTd5cdW6-y}}vZ37^KC "$$/Ɂ!|e{9Vxu]FZ`!)@}8i#zD#$SgEv6Bql)/xQKs]C:=mF퓿kTiT-y9dލeZ̳pĨXJ:)sMH&_IvFyRh%").j|3E1|wv );dCjs c %Bӕ5u$Ԏ{ɏn\+Nz΄*襼 lSCec]5>* [7N ulZMbLϖY4b$i[]eWu! 1έK)ϻJABŽ=*<5#VVxڙd]{Hvs!G"TnX+1Q儼p:܎.b#VľJ EyXIW$_c|PuF%#!S=!q&oX!G֣zy-vV^je8픊HlJW|pd/ڵ(aB1I)HqYmyP (LjJCRDh~b}0?h4ZJ9'/J>SIʅTGӞ`vwKٮX_A?M)*i =GĄw L8Z`Rz~ZuҒ1שP@;k`!ZEׄM%M>%3 mÃơ}k+!=ib\~?ۛ"ɵ&^1&B+@ɛH,WpcUyxܭh# Kp:J5үE/PϪs+eoDOPq#i_R'<0J]+P-`˄ ^z I饝.>(kK-OޞܸU.$tQia2rIݿqtq E(dwL.&Y1VBJJø35/܈\߭S7e}~/)*BwOE tL+,wI .R0ӟe{Mo^+xRr4BHS:5O ^.\|R&|-sI$h;Ю`# يXxRI/p+|ng#AaByʃ")l>vF-}P17*?s(f=x渥@ؙdR6c D:Ie] z`ܴDw»4xm=(e/[^δIrYuxX"؀U55^CLځl"0Apޞ Zy 5UN!;t9x;Y\ݚFZՃ쫆bA~  i3/,<(OS*IBEK8xzt˜)m|:r{G$Mp@uk]aoȼ /WK& жc$ʥj\l#~6^G/>8ئ- z% xb(4Fg*M8*/L<2jҴrfw\nP1B󆲜d!M›闅鵲}\ѓ!TY̓a[RvU~>:dR3Qg7Ϸ׉yqK֕5aJҤ`3!G][YxP,hÕ|I읥, axqveT7ϳBu*s,.sQڅ".=0T7DTo#'\fpŒ#Gc&OJ{_:EMWZk{o[BK%q$w4B*6D[ Nx֚s 0;8[:&߀=~SH<&hTaך !{Tn;ː9A (zr~bqsdnH>@)33ά j>=S˟YQl0RAYƴchrhp#.QކyBJ"-Y=c\cf.p-~)6.aF EuXq`˲\%i aPXC?ސ?Cf_~'Xo;w S{qO'@'|)8?.Ncby|71)@LV0T0Vtܸ-So9ǡ(y }@lX%`1&L3Sk`3y%𱴻*ÆbGLV#-<填)3֞ՑbrBRR3E2{ >xo\ 6{Akxh.*Y)Γ! 1nzmfP6J uǰ"̶s$5J ct \cpsAP~[*zIFym靖ꐽ;+טWWxFDD>wLk)JS P6ԍ& wOH1OkVR+HzNxȣB]#5NQ $랡*|Chz *搡P"OXȷ462u'WgS*mOgS޿{Tg]?)Y\ +"w| bӊcbhr_MCYNoDp}9"%1 Q!ͱᗔƒ}cp}ը-^xzIVo2;fƥgeÐ3GDjęѸOz'(&~a ! |e dVPd0#E?߸$K ,d'b Jӝ裞ʩ9lufm8{ (%OγFB BHM/J/&A,ޗt⫲ .bf1oE58r _TÑ@ޕ_ }VGփB 7v(]^L&W? -;dMzd.k{]"&*{N| V| ZYD`~(/_2QrH_7 $+[! Zl\HC@A~4\XX#bZF|=sM`$j+ɤ8zCV1%ѻ#sZl[9E5UL&cWTG}I,k~W!`5炝 ZBFLgoLsTd_iV닾D?׍1SpRx_&dGːag_Ưƣ!=W5y0 =N@c^{4}>)^FQByAx=5QHYmF ͞E_g$ro6)2pS~)'tfDk!Vf3V5$ b.SL; 2ǰllfcb`K1I'sW]T]i7py\P Sɱ[p4-T:r+3JdhQTx੉%DOG3uJI%GY롪w "Oc1Zfui}, L*fSݤ; 9--^I ?MSw?taaFޗxMY/re}_6~TȰ,|u:F/6-h/VNZ _]!N~Cd{G&+ȥv\g="4T~OHGo󧦖7~|+I]xfr-܂f8| u3(\hfyȢ1}w-;οā= }.Q)g.@׉l=tF2 ]^OgJuv=S9zWFa%L[/W$B mA+iz9/Oq4O!.Zh#'|| !E0YWŧNjXQa]vm9! .d- 6>ރVMHL\V`RSm GcI}vs Ԣ Bo~Dw sTQ᷻-Sg{Ē_|AHiDn-lqa䩑C3YG *o@ Z=/cD/ ]5ShU> 3#ʚKed7WNFoьuj&zȨx~g>XAMf&D}eq$` o"zteLs1N>;g](*BxYWV_g sA^gR:zi߶] @zR4לf̩@egvூ1 Fs8tFM@y붵QqxϥZvb Jo_Up] "c8F@iYGo8H_2NGJ507#sZ@ *X8,$rRǀ,T.H/+XJ .$ 8Ji$7̫P#8-a,-^`=8ϕ3];Q 6 t= 4 6_E:5bŽ;NJܨo-<Ů5G)VBSÿk,GҔaR%secłTnJD;ko9Fe@؞S<@([xda}}x]ɸ!T#PN~?G#o"7]2 D8aShP{)u>?c MT&%ˍ' 0 I1WUx3}7#)[ĭCuJrG)EJ%5 A`rnVCЫvI@r:!YY^4 1OZ78df}|]f-Ջ0|Rt|]Д4ɹJC)ڟ0UQc}[f u ]-) h$84żP! {mA$Pž Ybe;`=1 +g$eQ7Lj,-3SFiK٤9'$DHGlНjcY,vl5e,|Z 9-N )ϷJoX쎚] 8y.u+Xs_`mV>g\͞x))\:ݚ\T'dK\B^$?2">6T_fYgR$ЍM@ssd{PdPԱ&֊,ڑEJ=q8kZpΧG(]?7 s%6굜z.*UB ԗݣI7Ϧ] v n لHXlͽqNyjtćq#BgF?DQ;d~4{FC<ɕFm&6"%diyl @aӱ.fSΓK5f]\1]g#1(bXŎP 2t=fr:[MoRA_^ (&X*ɕsRSt8N#gZl#mr;kePm凥]@SCO⍿ mIoڒ%6RQWAK!oPr5k(Ā9+∷WIG =!=Z-+gb/]lR-GF2BFY F:sMɿ,ʥ) l`E#a= 2]&amB,bT[0ESD2}OHeՅ$A *8blSDBs6i5@P2&6IWQx+Op] 쐧cXW~IOt[%,Ư v+ne}ͩqI.aws^ɵҾQiܬƷ]j|j-q+P ׼A0R-wTJN%^R kΤȭ@ҵ|u}i7tOEO45^U3A $0/w qv{y2jmǑa ,޶n}S}~x?G" %+`1j *i%JBS*,X&GaB1#@Ӑ9iV- : Pv3JQJ! =Hq4.QYo'p ʮHtPV%j@%6'N9p"H$AuƵk(kւ^covE'7uz !q]`mA,&W#٢ϷZ a|zWSv(,J3^F6Y;uHًt9ٺ_':=L1fL)PЂbKo83-Sб%J^ÉReԒ_ɼKb$àc z]LL}kD{,,,CzT*x ƕU oT !j9*8)D/'Pk`w~Gd  OB1YCg8KBFJv; %}2*Xۨz?Gɢ W\җ)>HrJLbL^-$D~q@uwF1 #Be7 65s-<*ccL.GkOAmcΖ3TBPb|7ru<ɲ^sl/ZU]jsY^͕ʪۮl&5BkèĶh׸Γs VI$ϰR]Gy6@j g6&w(յAX`AW UTUx|W~)@QSȒOMFR,40ɤ? }?B|]%er"3T 6Sf)HLvo{cٟWcB,Tм~B=|k HN\O| 0K*(0=,yi$d7#ɟ_$ey#:L.IHܿ^ _L46肋d` ,`QmȲ&f̪z[壎̍UhThpE9mB_1 %pW}9~h)1~2͊ x@l 9Iw%Z0T5.:w<`Mg*&+y`E<{ zNZX0ri)#Y(utEN2lɷTCCV6\90AYͣҏ".|M2y(~{V RVo݋)BJ绚#s0ϟLY{F>{wYf$ә b$+:>}M>›-XWF7:AAoFH v$NZ0dP|ԏ?v nXƒأ5@e/v7#DiyS 4lJmHl|V~b"vu_C՚cH~$H(:vNA|H&9¼~-q"_u7b+kzgKf ¤e9:#&FKl5nJƴX3|wmQ>C& YH Ov8rLX$͠GʛãB)8$S˙0Rd6f+f3\=$< -f)i$jM<x D5B$&Rul^%ġ/)Hp~X`"ԑڂ2Ƒi)2Joˑgm+ ID{J$KY}v8^׭lA,?y5HDҫsR|ȽvQWA@X5+ 8d{{G1|* ͛XYR9HHTE`UVCJz Bi͗-7OaPY 6O$yd8Ƃi|trow]łdD6YA>J."= 3!8t2q[6~`b94]9I64HO2u tsIQ棻1 `\Wb1z׭j25϶튶$Q܊Ephzhbҁ̌=X9CRjkyEق~Х~v'wtYũA BQDX][-r1YwS0HtcEãr$ǽ8ZqLD}lA^@(%w(ؾ Ƽ N*I."k; >\!5 QdI7$QQ[B ohS_>)d;sO @;~. Gt&O@]`\9rM֫0nņ5*srp;62zP13,]%HS`@NBD>XrOypn~GS/Z.}s2@9Bix\/Z ^}4Dml02R<{8ߞ#Nҧйr 3OV^7":QRu,pݳAb%uW hOCABِK b]嬢T+:Zow dC[*Dvc+ ;cR_UcTTflч屮v (&^nd-/+L`ڽL^"B0 (eSRWhe/wv|d[80&[XTCyoyv>3]E$]ĉsn&uAR 73AV_~["K̜ v/{xpPZ2mYZI߾j#>\_`mʻ B$ '0ri#%E'~AH ]"o4eJx.f9%Ĉ NIJN恞iY[š|*ػm6t'(]J0M:DbFьE_ڵ$|qa͓pL?4d I"3NVXΕƐ c|EKB< هz2jfV;3*H?{ƛAŒ=`OlUPx!An L5 ߇,Ǯ2jg2goq;*.VyY4tw$eQ3@ K"aXZתmq\жw0#Te ʑ,)`C6mHxp/,]eAU#D11f HIg!՛L3{c_1q;|ķv u>}>؛L&奴;GP ޻*҃@,:I Ȭ`WK&w yS6ǂ񘓜>47v ob {(UCyZ]4}; 5(DbM6aT^=z Ʒ .u5: jѫV}zt}!!kejީw6oP8Ɏ}iVa֌9}(-W`jdt1I21Pc Fɶ˾Ŵ_ΫI` 0xc;L0P5x駘?c/s 9r!+m ոTnl-ШGG%_ .~Q|#[v2M6hy8Q\= t/E߭&nvE`Ňe v]n:g&) ?t |!!_lfҶcA A]z2[?_*=/:V_e>txD]=6@@M ƎCp9+{ǵHd&66y%>S\?9fD!s—)JV5sh !aG߱rIN/d Z=Q&-lrl!jv n}jp,Wyg έ`M{QV[1TX$y e7h(^ᳫlxXNThnJDq/; ~g>ۓ`z/#sU w y18jr ^6|af@T>IwkD—5uHjt]_ lsњ$ d>[]RqYL{}*5B\ȩQ js|(Hך]() ;T1 WLsgt1gvHm~ԦEnQA(&{,|/Ģ{ExRGm Ny+k,AI#?4p{_EWdnpQr9T1q穈^4`zZc FbB`d_Y`+|fՍw3% @H1ZPYn|rc @NܿX˅ɅVbGFM¢ZnWLPDϭ}.2 ə[Ggg˃g!oЮ5\j: Q8(U)й]OUh]SVF\^oxz_=BUN O}nhx'ӚV a,F;jR, ȱ =_z'huU!x6MBbZf&7%5Do*Q_d[^h[֡ߕ|2P9[TxˉTrbG ҥxr/'Y{BJ ½ab;-xC3(xm4v`HeenODQtR!je@ↆK"pk*ܮI7QJ&a[Y WjȒy~GdK]c16-D^SP|`P52Oj l&87vgE&v=Է[ UNk6%0j'`x_Rx04r N=lfƠ%)IȀ2&-x܏D]! V}u+Pvh{gSE њW3I/MbTB8䮇6@W;=HRcq_~uZ}*,ݯ*v _)J>~咴bSƒV"Q_aj{MFZ#F}fї*h7bar~:$,ϽTN#rPEހ@haY=Q?1>[a'r"\˝[H; qg8VbT/n/eO-遼Gp0?u[C'^kn8y¼DJƼef۫x>߬u"r!x MegI"G{!;F%`lXGgDziA7K7Z 9u1k" Ù~+sXamCȅ{BQ4َDr< vU׀e'AL6WIJoF9P66|[y{SaЎ0bnj0y]a+w|#Ĥ{aV4W[Dj0g9}s30kQ(.9F<[TZk%:?MڰMꪄP ʴEQ]"\\ĸO캊z!FCӛ!!s0ݿ[6E'0x]1ª"#,>c@'zxzLRz J]$]1~uv5'NImQ t8YGYDp2/5)If6SIeRP-g?8Ԫ:JZ(i,g& XϮF| ,+^-I1NR- bCl{5'gV "Yz`kkUBՌJaKlA K5' "Պc`pݪ1tsYnBAE| ҈e>Pc1MY`')Ibw'$4(dQKY*G펋q>+Y-f^8(÷kmV.!7_q1a 4'i"AQP>|]y+g qeߘvTE wtڍȝ%@;6g |3Z I$װbY3h[G-?5G^U0 [*)aS5J-,{q:ip0P~f=IUˮp:Ntilt.f%yզjy{//om!a%Hsx%}%ʼH0+OKaS ؛̜3R+Yl ДZ>\ ,_Sڟw킎3$ԠjI_V&.=$]yA靴r7ε}/:tor`.BgnրjwEg)ϵ@xLz8)ju^ _PG"5COq;Q(d?7Y-R-9?QA!:2-Tz±[~Ao7Ϳ6!M:lbOPjtoBdꛬ=s2q x%A[H6CUЎh@K~šޅn ٔJ]A]Q.Dc`f]8K 1^evg slU维AUs?-鸒֛*EX>#G/l̞[EDuT' n_ Q2R3Gr9Kt*UsבzXՎDV"ZO+WIi᭖Ku  c§g|ˑS;jwkW.YTCJ~?\h=q,F>G!9Sl]4LH4R Y$"W ܯ]T/C8U!aFe} ht8Cs7UɢkSZ XHP}[ԕAjefC1LT`\sKHQ(bgrs̎ڪoI$" !ia+ë=n5}3ܳ+[XJ?DɶJ09,,KK`ܭ5ƪ^bv4(2Bb ͽ;9`-$&dZzE(:YǒKiT:KI?gBo~6뱦Bژӎ(tG ىщ y,ս"qdjN6߽işE>PƩe4TK>*nׯ7tVl8d E2G~4)hYQ.6aYDO܎O{_<ݴ ki0FN yTyh/u#=U+-sr)-CJY!]L>ztMT I4$&4/7oI(9ZO ІϹk7uyxx$ڬT/ˀvW=X5j V/=r !q[jdʄyNi2عb8@JM`ySP(&ܔvHzggnVW>͹5G Glmݚ*܏\])bZRIR]9h?+ 'g,uXV> Mcj/+N=Դyڈ2^SЃ&_7D%SaoFBCKː\5C=?bgCD3<-ԩY{+IK@:K$~feJf~yT7`a9գ%^\qȫ`'4U㝉DN& F`:Ѵ?v?ND6 94K96i nh]m\Sm8{;;3HP5%{fcYo`6cv."T91])9a)n1'rX K tXTV$ qgI9{s-%!E="(Q˒ W oMDݫy^P4Me>+e>_v-[ida8l҄: ZGAa ސ!Agj&h  9jj}Y Kj+]H !1 LT"?8mb=I&Gg=4~~?JNZ]$qC ~]D h7"+H}>zq92Ehg*'Psi|CAJq^J7;>%;ziIX JxRx-*8_xe?0{E:uTm$(yh̺el0 , OXvmș9أ~E78_>of.Pzgp&=F6F=65|&/,iK d+.}==+iom7]S ep.l #z›*<_`頻<,[72ɦ$֨Gw^6#,r3swc]uQ]/IqJ Ns Yjo>^s(q,oo{Y0 'ihh9@* SѻLv_%`SKOThA֠Oǘ&\}YN8`G *|e5N?+m(aYW̍%g-(Ft1eC7:AN`yԓv8*q!och%0I.ENpr2D$qW|Z#M q]EK<r<>72<;װ4+E8\edBL90[Ԣ$w~!<}C I@uW8w̵-٩ZHgL|.%ـSų8FNwtZ 'YQNNZ7JlUM0R[ǜCw?v33xwO͖ \{ȶf*V5KQy*О9_ l峚ړ7B%N:Asvӫ'QF*q6$(wmw@IJ&t},4B`Td#=ݟ2XSIvU8wfExRe(1Z$inef ot86Xcjފ~'&]`(&+*cLdE?A,%sJ0_f?yf\5$bN PMN)Kڮ~$kfy\S}[948u.P;YL~ayXx,e d^|*Ϋ,(̔~ yWIq'Ş(*&BbeT'*H3;Jlx]zok}#Ȕ׺crc#{\'xLZ:e7 %hҎ@dqoxL@"o`weg?hZ`آ4kڵVZh2/Ը(+ͧ/l8V窛Tem8  G<'mZ}^-r6&Ox'=D ]_Es}=G^ʾ'] ʀ 7?EJ $%k Ozݝ%Ӆ{ Pp$-< ==jԍ׵,)I@Ji^wo-E4V}Hq:s'sf3x}j.K/.MGO1NT'kr%`;RhR D[Ca%<팀>7w$&J'_Ý6H4{NgE,b}K/ m9@sd^' 1@Blgs$V%-C~;bڍ{^d @h +q7:uLW?"y n__xbc> 7wjnTM+/ 5b*qmkJY=2;lG WM %B,ybb@.~)9 f%Y1[3v5.D~1_br{O3LLf矐XaK(@Ju߰B 2hP_oS "= QdЄKj͎/8TWw@c `ۣpVz -ЕW )p#㨭-D'@ XމQ30OI50rPއ~)85[z`爆i:xAL&z ~^f}ݜ#B:-d"Qx,>(TS5e^fjc*9O©BGz>ri9,"trdmefYKIZU 'd弔}#]?>59+.RbۛcxNI5d qn@oUqbP{{OmK.Y`붤}$ CFC-hCU&M>Oj{!H4Pw( [D{uw,E@40Aq,F ơ*fx>ʥԃKv q}<Л2Ї-ms~ʱmZjX<+2{JtmSL^u!ڭÂFi юIDd(ukvC(g YnOn擳{w+@}GW @sR5_0g5  i3pql0㌩in:- Oۑ '.3?5 .`$]3YV!VhPйXA/aU{vˁ_{Nh[p{gmx^dvVI,, 7a G,^%TLhh (^ˇ -=-ySDN]/&F;g9ŋ}6`cxHQcm3ArE2Xs\sd`pJYocB7+ UԬ:p.>;(=`{W^q,bܐ-F~zQZиcB_8HG%%A1o :~@UzcgH JWAdPo*EWC50gdn M-k~!hOP쑡wZ[OqV)kNc mOx psd$ȶi8VQ/e&Qn%@~\ە ޕ'q0ƅZC'?(:B~BEIKP8 +W 8 Qִ{~%ˢe˽7? XwM$#Cde#c`W͊x o/ڧ+y|%E=OڜHnޫq)90}Z*-]<  ӹ̩,.V%?H@10j9m\$`Z"r {2aT_1x Vاj Oa)4 Q4%C̿7M7* -KVL|H1!}C  %2y$bBTJ7TH^ZˣEW!M KSw%S)m)Yٚc(=oK݈VI"CAl!hR@luv7e;ڶ_p5,uMZ w~V\I.~ 0 !0& axfqNb s/GHzH8TƐ[|C(:Fhpp>29C F.u<{ZC>Z_+#XJB.NUjnv"~"+\ YN>xgOl[%.܆Pw(bIݚs*-yqЮ,3߾ZC28hd[sA8f_: (d_ ^͇RKvi/|-0a@nt΄ `w=,xdH ֖>OhV"v|ί3QaN ݘw\nhs'GR[_I[7~ʁ6|@u=ܴ-chu :J|)ܿRd8%oNpcl g`.el+N/q76|sIK6wyv;R^}%GGmf:0KX^ekᗯFG9҉~.c2=:!/_0nXm..Gջ]D,̇n8TAԻbQ^yyJ"5m_\f9j֥%: nΘ . [|c3UAL0烨#֑f 5)&5.V1AF;,ޘ;aBF]v'_bWl1& x5,R~hP~qp JNpԖy>w .*'yx4<-=oӓ83Ɓ(ɢS }qr@1/*/NVj6rTPx(Zތ>H;ݱcX=O[!6U¢ŲtcO8DPKȚާX6vu4{άG1*3vUT&>Hf=S؈*wxv~:NZ+n)ߣɩ4K93vT4y D^0^ .)OdzssZՇs>qzcrs$@CɳA@/ 3eH(V”6OGΏX1&dFF>'w^:96`Smk,pzU @cJ@˫wM̓mO+]ˬctf}zbԱ-Sq5m]!݅i.4{Wuݒ(n[VX1e{wl%-`y1_tX6Me6Y8t Ev3TA5PvZ[v[@,cVOJ&|?0C)9 ظt Nzud0BUCO;~YXZ#rK4Ix&s}?M|ӈ-I|pVǰE6~ȭE'GۨU2Ff.XiȚj7آ[ϴM cAȊ﯄s(u3E凌TWs 5G,#pI0]}SVgZ|`뫄js`>QZq&εx^BQuVE?n]RI=P H|[s!Ta=a}_VM.ϩM5 W:3ob@N _IShȥU%K {-e8,ǭUҪ&aƉ`?[% [N;)<ds*FQᰖfmH =LsYr8P7BuBGxx[R&\Us;),xHki~AQQu~Vq-' Z<[P*djCb HtNթ=LEا<\waoc. ֑#ðj_i>܍](&&I#L]6|BhiCo0Wqof/8BNwK+`s.Ke3},_/clx*:WR(m!_*x SriP604fD0x-'8 :&Ub%e:y\䥵*$L^nH6[9qrd}6x@dC)9O454k'as LQo~Puew_S!"i)'L܉X2!moц s? H9pӌ2QC6꠭b- )Z]j";0Ռ⤾t>5/Y4ԢLKE;l?ew &jCX1;5(-pLk<GG`vjx`eIxO"tc+V'!x]|U%Hok$ᒺÈ$OHlN*;E䁉E,k!Q-#%~P=զ_уss\:~Kcemz{Q*rSي3Jod*X0pTڴX%ʆ18n(&;>'j؝2jqФJ`X@y\"uʲdE;nw~Uwԅr.@Ir+i:s{pF[e|nfWh|S@E dJh֘?a)|,dgVx2mLE@}yI(R)S])[6%_rn?{6utIM)R͍5+Kv%(^cUA`gGTQ)ieh-9סojxPpP1jT6=Ā'q'<^g/.l3iԅԿP(!QEOG(3~*=q26HrT~"ޞmx-:p;!tJxlp^Wzey׳Кfpr+2Gxl]!_m>.詞P}CZbD<wDP 1|̔rL_ҦCr=VOW11MA[G')OVFn][horJ X`*T\SWc8Λ |I85EmZ 537r O8GW Z=+ +nϪBI ducj-HZV^w:dB#$q=䝊>Hx*{"u d\tk-#sH z4Gϸ$= cQb(PU՟6vvEp&*ȶȸhiԱl kH<(g fn.Y9e'fi%Aus[K^g=l]#`ذUnOM f^ ͳQ nD?Qʺ@8sl@ufnd }~1ϝ -ֆc.^Q wI%+3PCq][:v9uIM,7 dk&&v]TiBO|̢;~{nsEaǥ$噪nP-Je hQJ+ W:GGdE^.'XoUf&ҊU_Z_ϋK雐!/-&%TgjRz"Mi;}VIC퀝#9%Jk.&p=\KBʚ:2o ١r2MlރVǠKR Nðvi]@pyu*p4| tSրi(VҰ}xg"0AYCp.۩UUW0ñS2fJWCA} krFz3h,0!mᓄ?SwJ0oI% ^},m ͬ/ NTPڗ.fnccCJzv1]$9rf> ^J c \Lkƨ%51t] `6~bN-ypz\Ny#% avbCn ]P< Jz ' DH5^ľ&F Ů'aJfh9~C(,[ʉ* DmQ;ȁH⣓hm6XR6&B9j}35P2Vt")}mp[[1'K K8GvFIs2 zw ],y%ui:*X7gńlثBbS|@R4?ըmZ=H5A@7m=ʫי.^CQGѥ#qr*^ W_%/#?JE,0NZoκ8)'@^?^b.Ua:L^}7y]{/Qo_  AKRx,T".XBbhDdzjCˇhirW5 hx5 a<1Ry\?uH⎨&pkR)fr|UQV `IRk0e@!JrpjO`W{!DT78[>HlG DD'W*b諄^ԙפ)S5Hae 8ڵ9,3sgMء`> wruPi/Wx):E/{}̇0D@o3břQڒE-!+gz7O͇ӎҳ1&R&ms Q|}jz[DfdPXtĴywQR{d?18+.RT:)&!uX2=}"埯,*qZ,G.EؔWNɯGsCB&IZ߄o/ҦBdf_@$/\W9pScvKSkCUg觱xT3h*Y.LEdCh4b6tZAļ9{yy?ܯ]slLPҍ(mbG]@aA|)}FTE(w:nc&;Lb 09}!~fYVh@0 &n|XJfZ61NW 2ܒ8w[834G?j0Vo+.㫤\G?+"\?Ι!{;Y!/pЊ/B`f+EK1 h^F> !ؔ@2&FiB|1ZL KozidrO9p Ye3#mTh\WyIyUceZ ݎVJȭFNХ2 $tR:ẇ YG1NA kA]R 0^12/}@+`<r Um "^lwr(䖠jVx깿vsh`k\ˎɦ/+GM%n-s߫V67-R~Txq./~#$|ZWJWcym@dfu&F\ ?mPk1oA1.*l,E>( up;^VOy[Iڟ->Ok[Bh1.9+;GiRyp3Kt sPO@XxÝC2bJ-<$RR+́ձ|>о,d"f qy'"d~N]-.qfپnb@! 9`4@ߑ{Cb d%ů_'pV~Gٖ:fOυq~7N[䔖#9Q2-2<ԌTtn9ue~Z?+_&"n,օ" {S؁V ,L@y^">+W#+.^Z>}I(H~*,z.I0Zc$6 :(w2;gaΒ(ZYr7g:R&qgZDA;:bh Iج&]QoŒȢmۣcJOUE|RKaj(AқT"u;lS,3DOʀz;ZF/ a1s^(ii卧*-e;a7e~s.sm%@%bHCqQ?vZ#A{ٍ2΃gGcA x8%0qNĚ際GP9W(CLS8)‡H&8\O"hM Dh0ΖTgL_g$qdq]ۏ\/)P/o~HJkRVat СD?)#t5 5&"fz4'_FqoLo*`fIG~6-K>"/w/p/Qg9'r2d7z{jUʲcJJ,vmM3{8BY Id ҄@q=|cSט^ E|Ȳ۱HMERF14Мm3gِ M HT ]X}@%{sOW?|w,z!Mœ+I)I >Ơj>6zM\:q4Q`S>Oj)iߺEEh1^7oI@dlC1Xd%B.)=O}\4[T6+!5kqsd{_UQRɈ Lۋ ׀y1 Fj>(w =bo?CC{ l6x l5ZȾuF;U7 ##I7%=o8>-i<%8;&m m+k~PEsAVXDcewW2#-hXhr6^Q&g߿3Mdk5i`$B%uFX>?%ihD^b#9D[f83k&pP+<1O-m\l+,5`r1+̂KSPeڦ U+ M#cjǿxjd6z0+jpPR Fbs-'Avnէl0W;?2ÏTJ֢Y9co"qRMmĒ5InW317׏͟GD@ 5a_H`mJ: 3\_A&IufCq.#`74/p) I`*n.CdBHu ]RfuG9ʚjzژ;|HT|G߹/ I َf8zCB:;F7Ioc2 S* .Z yc{Ӧ3Ѻh=\s Gb.UTب9*t+ P!` aYIt6Ɗ3A=5jR |Ím{'9-LɀWR;^-Q؁փcsL!wBO擂 n3_ljWΙȸ!bb5DuF*/0*HegYظ H> hG)fѰu|.SL?EW15p'Rwa9vsV݋ȓ:byhA8}PNe p@]b ](ro}_/Hz s#e&x'&u\qd8 L21^y˼%#e!r[<@BpAȔk{-^v}oZI rM+p[N3E'{M {$ ~Tϥ@ ?i)H2Fم'r)@<{lFїmf:x/P-N#o_4׆;eyT~ZgXv<&6&w1nWFj<:XQ~6nZYqE^ v1:+=Ҩ,e[ P{[7zKLlpE5o gu}E^L4XPHBpߦMvAGwɢX$&7Q?5j;c%No%cYb9 tR>&W6k2/A?^7[k02BK< Z(i2K!_ GvMe^72%z o 7|~ $V:UXC5yMwF9shYo#V ]*;+Ī-(\o/S["--J"z}*e,뮡j{ F2.[$hwk (!Pgϱ5*nϐ`˻"..vR2W.-Îmr}ZF,; {K ŜYwD~"F2!sZ4mTsb`H|O{( J"C irK{W}hE &*EgJ=1XʚޅYJ[ V}Fo/vEK&Rbޮ72h郚~fMpme%Nt"s֑5@f$an+tYX9f(G۲vxLT3$2~g׷ڧV0Ƽs[W8bqvn 2MM{f''3C@_}kqa=sy #f`L?]v,*_I]`^z"o4 +7ݥ$-\:ژ<=zV+pjWb_kid#tq)fb0ʸ!OUɚm7& 蔄&e20jTf+[P>d~  >:Q.0kA>KyQ+јy`c(+2h}qdc'S9 ֭w+3`̏v E2l3 ɸ%D܉yK?Rz{1Ւ/AErPv{rRi-\aԟ CFd.:G1jA|u0~4|OW^˹s =g񟁚ƘS p4|/6k>y > MQ*n0֎r'ӪNrAˮ0g;Ʀ3G?lj A'_B'M}(1LlQC fkt`'^Whl['jwq&t!ϑ5I0zEY}*KfNcm^CP~-;WHZ,@;|Ku#l*W΋ڐ- S!R_$dv!'QP3 cW,]ljO 7DvH?JqYXf^W H~?-\ez yS2$X k)貵Cldtk:w1%ORt_/2$՞e8QM%8!0FYֹt(YNjԂwu[<1偷sR&o*͑2^)Wy C[0|t-ƄH/SA |1LМ_Jv4QWH0dUӚ,_(q{Qm7' _+UG^fQS]76%4aHoOHC%rI? _O X/p56Jfp[s_X.hX-Ȫ8|6\XsbNoط07~br~~i ɚ1c+qxuڙ5 /(e*7 #yӽdcX怯ϘIo/8gJvvoC8ڠa$ژc?/c>~!{>#Eu$ȇW}5Fߜ_2(.'kI?=WJ&{FLCL(|աA PO_/uo%r[Vˌ -`@3?f2NoaϷHb!pY>8̇w^^C?J߃<wqyB1έu9y{A*ozScvΛˍ Y4[R %~g,D1Ead†D fOq`]qcϷf=xPd2yUm|D/ADHVp`j9K*%R#J4f%Bg| _{o}VxgI:ZcOB4%Q2#X+1&{钡Ǘ}( f5fg~ֶԏ( ,d*6Yǟ-& 02Hއ{{e%MaIRϰG aܨ$U ?Cܰ\]5`g8&$J! G2'nЮ̾6SđX蛢<=FPQr2&xx7\e8BsK'҉kl2ڶϫFk\?yoi IeZHObJsX?Uk+QM4_qU¬(#-7$  H|8Iva1~NG7ȇFn/v!Us5UȵYk",H0+jW-Ts g-*xT7hI1!Wy+w=u]q$/H isQM=XmoV:'̮ev>v2X3-lHe<)[\'(Otދp!EX;l/CEK^&sdrLa }636 ]܉3[r/fxЬ`ÎzЉa~Cηލǿ4M⪻Q(L^ %uNҽV,-2W7{ԇEؒiQ?USf*:Th2whr }>o>?@D:b8aeβ˴ O.Ц_-J[J6/wit`N̒+GbvMY@qk [@ߑyAhhF &o&c9ɬ|0uR-] 8C1E=qK8yAB +CnQ |`ij%zݺeUE24x91* $PϘyc{,LVcwQ\s ylRC y߃)¬_VLxe{W<}Kk8;*?7!+ $4ʼGt_D{ZfvrS>8V~ӄ#mBb"fH]2>~ U/]ﰮn#Xp߷O"kQSl;jXioMZ5e"iB ,V/oc9ЙA:xZ Hrށ(abQmNRT-6٭:qؽ p v: W`Kuqv_}X"#,8oP 'Si8ZD)(}Z>fl!C- 89+)E5I1O, ߃HM)}7#S"jṊ}4_[ ?yK fTMgOŃ\}/ps [0a`+L0?afcD)ιӲS]AyXMVUjH1_&L0_Ҽg `# z8:kFAO mP1d3ʼnz #yǹObX.;-BV]CdvFƩ.(Qp6qmQ.glaU?L{5$x ˰f%K%6p߽RLM }-:k!ߓ^%.jryQ#'W*aF D$f eBd#F߫3PS.-~$eą3mFsE~q `tFH 0ٌwHu$}G'k }/YBbDxk+թCW$\h m0r` }{HDg\\ -*8wndl<2]s(NhyF 5 x?5FjkwT! n5Q#>$ xU)04/Zd__ K 9yŨ>{sT}j6s?tJHod;[0Khub~4$G*Aw=[r0 p:^(fxuV #XYFS:99{S9PIp{ᑝֽX EfaQ.C$'b}$`e2ة /q{hefE"S+%;+;470bc-:ͣiKm\]yu AX6`,&h=^?dȮ%ˤ^ n ؃cQ>10MVz |Ƣ`Pp>+G9Yw{h?MRᶩϤbKg|-'0y cm Q= ܳ@.oHW$cd' Q,UmSQB8جڮv{˽T.fpP ,V$!'k7 !8>JFOQ e.{%Q~tv^1]u,יZ| #' @b8!ͯ׉dfoz Mtuݨ@/Ƥe"D}8̃ގbz#`ސ0:DEGgpQ81?wj+|]kÀzN.Ҷ>8Cs\o-lFƐ>@pf1=Lݲ0Y^ޢ YBbxE"DŸGjF~W@!wS IR: OySmXś|}D1䊄dGaavb9wwBq&)Pp`WF*̇2&I|NlX;>xXo]y S)E2!8MN'v;lJIRu fȷ G"ՅWrk|,mУ;f>8<䇺:_䕮#UM5׏;K!Npj[wR@Zx߱/qlp0lG2h[ ѾPp6-c"C|g|g9*oblQW(u dIfthn7L~{Ԯ7ɚBSRQnc[.&?r|WQ+T J%g; 1'~T3y#pi:w]G M (SoW1!@vnl,pqbi⺤& xSeȕv)&ݚSCh@925lYz  b>y,b,S+Tkmu}^p8l.SLgLY,?|/M>f;EJSt~M?5cxm:/6JmwYl jߊB3LQ8,!3':=X个G lLA^Ytia/fI)$(4Uݙ4ZV ),2>FJ V KpTLLވl_rտ].NspGtx8vf+ʲaT9J%RTi7(QQ {jp1osqUAc7k1mjvIΖPq=qp$0+ag3  Solh^c e~†"f:19_0{T(:tzd pRBl侀ɻ|1e tS ` vEhY^ؓhP*YlnO6Jd ^'bw@4gRaCuuHPbJ!M=H` mx{dRN/8>ڊVn *xy 4hRvG' ș|D9p[)Adz/A ~]/Emb`T?EHCa̦EbrDlJmqD68;P{2'_8)Jgz zG rF?Lꭸpom0p}O+ɆucvxuCM=}DII:cr!@3 c*W:.\J<7U%Je{uquM< kT$^ -r*(PQȄwa cE(*d s(@rӒqx%nT(=c$jQBkz{ѸʐK ڛ֜т*  q"$/ YNӻF[xri"l7./ V8/G[n,p\aㄇz!ë^7]u;UnHkp|y;C:he>QRGt5Ɛ+NwjA&btpsֻ3.ų!5ڨ}:. G44dItYm^{إa:8 h:Ia[HufvV}d壑Y3:e֐ &@}<SS7 3RB0**|Gz!T/xn}1(ɘ߷8X`.\FRB$;M|,) "W4~KH|9iw);rlYſI (B2MXy+X@}z_g$ڱ VMԪ DLK[8|\X&!k5|Re8hw2 Y@=Z'k]xڨN~GZRՔ3).gWap,,|VxWpIog' ^kBg"G˵;*.p|5jYdPgx);ņP=SʂO{Ǭc5,7MyYߊ 6^X[!֋Ǝ^_XMx`9p!k d'1]ih,-mnڹO_;&Dz~gn~\i\"4ӅcLd)"*h{ ¶ V>yU ) &+R:g\ec49LevyXƏ3ך"9 ZuL~k:j\7%@!u/mc(7P0NAe`.<՛@[; dbi]c}J߫մ#ﻚӢcP0ba[#1I}+}>EQ2]D2O2}jm&2W+>%O?ѩ)4LB~S]7^˵,^[#L2۲kbu}?_^0)~-.Cr%fxsC ?L{ s)n ztԳ#j?5 :g1)oW+JsBzccLEUZ*&C%Pu/Mnu!W}>Jz`78Am']h/p_nqtWE61NEҶ1 X#o7O$o1/s0 9>~-0oHWvmwhnV }&rI3W8/Q;ҘEUJbDęA{:"\X!1w/dz͏PAX}/nz 0j۹vɭ ǂ&,`RUki)1#s w6`闰Qȝ]稵}Z 5傓%GA {"ԡ+RA@V-LIxVt =߆vWk- <%}o۴*Q>Kh&p|u׿^Y _(!4Z.3Xܬ\9Nb:J,O8/c:Cvׄ1>#"ʞfy5ZDyS.)G!v:RQN? =M]8k"`SV - 9ǐu9( X2[IˆI;b}O!0gđ^&$mLrCa ;H@UccabJI7#M#xڱAV7^`&XS~s(T>\k:sgg}7RI: Sc˫GP|EA< > /HeL-z`PYjP2:7]A딯+k]9nE>m7- =9ɑOVc`X/1{#ǪTHeGh7ה(qpzkS fZP;?h&lL[oհ2Kf!jXչ۱Խ&ؿ04ϫD7.-QfM&"?Ϸ i}ԺzcF=5@Ug&GfyZ"-^vs6C$j4p_<7j۹FRRgj]7q1;'@9BzJ$V&nxA5Ә'iL  tڐDHWqV)\ڗr6$g+}?_\؎.Y= UǠie_x:нNx-Qk傧Y>6rwb-λW9CUЉ·{6ЉsU]xЫ3<]oV$1i5՗\G~,E}6>qCb+ZG?24=(g^^sWQuXJD8Kp}y2090%;Ĕo;B>ђ!| v8B>N#'qSnsn-7=Q=#՟ՙ 1h .u: pq{]$Ӕf/hۍR[^l쳹k <0"mp ]l|7Xf.%`DCZM?9#4K02jH,zFܷ" :3}+5%p|t3c;+Cũ~攧`JzgSIxxG5-?hPŠRup:/`F_56LȊYk&(8gg҈25!p% 8[5IbV&.dAV_OMd~ im:S;Jد=fOk=[28zYMDQ9Dd5X&az0?<+fPYOE&ZEtm&Xmp-^\ !~x6r9a(b2K,3WGyf70ZnugQ]3{{wan1Eٓa[>mT?O{)➀ytn`頚.G K9G :˯tbc7ZK " <%@+W3X[\z&co-ܚPRl="[s#{;jQ\@RthGh0U}wTC=qdhOn*Vۙ++mDiQTv 3G7F+"ۿLHVWR^|.i=F,p(uW?AY臥^Љ/>hKݥA߼rmadh s"!s]$4f.#FܼCiMS+j5[7'rϣPo:WJJ7JUf.ٻ|w.5: @qo #Ԉ*gTY6U"&@ ak %N)"*+'we/r0\qLN<0҅?Ngs6 >/w %$wE!~Y&(F 8kx7H6BD{nZtISNUYO'HSe'>NӅƎq˗ҮKR.!9 Hw+&8ИW\+S SX,UmԳuRj3.цJzBfTs}D= DyY.ݲ .>sX҇T {{-RaUX<"[J+ $1>΢_\CQT3JsT k٦tPJYkSұ|+Y_tLc^~bH|M9픉ܳ3^E ck;Q FY5d҇!td}᱊5_v͵}%LzKQsHkK9EF$\gKhƃΘ_Z W'y'63t´a0BEi;~Ɛe1+,Pvh)i.Cx!Guz.MJ@W/$.̵g 8q h&QTEN"6嚚%ia78VkdJ d;?hkĶSe44`k;Gھ]#m qE^AtYosAd_|6E]rp(1:)sMgF:Pֽt.ϱq*t?w!(w.tL50uY6?}Yh{Ŏ*,C!vXg \y S'-i 계fU~ KM &1ɸLoklin蒮T`1 W?D:YZ8\R#W{I{+j~LЦX+a&Y)aa"@ä͂_ jJyXgiPf(G@*+!6k[n$}hh :zr$,ǵr\s(+ тel*  Ovie)h/cj?%xǬfأ]fŭ,I䷧O\M8*o6 4 +Σ)V6щP.L]΅b9M@5:Q.Ba^L̓+?K쏢XAN?Dٸ1R_^ ([ٴuǐI n>2zR&Ф/c=],IH{mC!f@fzs1m![RBzfQ+Jy6oTGݰq@WGk&i¦;@Z&Ǎ%0쨈lD&NR.vL2KIpe󶞤Lv/K̓RDTw#W5{{a' m&.N 79HԹ>ja%AZmN;QA+BADh4ϐwߑgJ{rGe/:{)#%)W肔cuCpU\p&^!G\2GRE;36Sa\.|!_S)=3!D6{|w— Euz.2,[4c+RK-5i.MN>ދSMql rC,păO1Κ@3$],t pp7M} ]"d`0A+FvZ9`aKJ'b4ȢnXjy$5;̾*5@XϞXWlݟDW p.66ؘ?x'DIR ht @x"DqO}O1pH'!aU&&+\Gѐ\U.=Ba ˼A QCVbڋؤm* z )kخN!TgjH~>hNłLo@vch20ku/u ;P/y*rd]ĺCQ[tK췽knMeĝX P buw9daU7YTpKӷu=S{@ ߝ0uVL3U1/{ѿ6W$@cl^ \%z(!v!%+:f]S|@`ީPvX\|.X}0O128^mF~6v&03k|3PG-g4Zd9d.__.&0Ͷ˽`I'V 6u3dtZNtjsB][Xm2Wʣb0gƫ f>u$V/ }6 /۾s@?π8Biq]O~!yWfǮtJT+qzJ-VV]K{oÌ#saՆc9]r|ӊGXl9H(m NET905EI;rO2 )q"|44.:89YSu*4hEdy{c? YL1XZƂޠ5bb3s9q9Qw3 z!:~lc݊9:y̢.v Di 3hz ><,Y4AaFv! 3<]Ek7NN#Vkt")D)}{k+ Fgz}%*9%?Av%SU@T'N_dtmK1H~VcK6`1zŪqYDnex<̓3z0|exM 譻3)AXQ&K QO teyxC'J8,]w[o{i>j.PS̝Wf j%>Bi*fZڀG?* ֒VRy{"/^}t1OxW^RRuq GZ4HpJ(|bw'>@2_ i31cj -#1r]^?2Qc~-yRhU{p`J dUqfFr+kѠ8R`K-vj0~ׂ?.gBC >4 lKҙ][^+_,$OMOp|T?(z,CqQ kv78\{rv ų+.JH ~|P]g(y:bV)JuuH}gjlP*PC]p KgN)) V@ \s)]GƷjANv]ùx&5XHH= +ЎKJ)^Q"R% hɿ˰mW.Cm!%HB8ث{^2;+r>Z,]H0+څ׏8f& ȩ({N;>+g}]F[=};/שy|!1 ^J%o`/8R4bOD >sx9X!vJ}ۈ&V9U3fTsT (x) DV]чtaHlKms~o(-ԒI7Fl@,H*D։~`sZ{|fK l-C8)J/iE}~5=Dn z[p闡H#MqwA]CZg"d0r:qbCf{C[ϸSN񵽝w)lr'BH&7B]g7v'NE}ićwGrg_h Bܕnj!^ 4 g3 6o0UQHsgjMh6dzNkd|LŠx\lu%ZIA+ )sPOGԛ(ѹfB`L>}ۙj22klˋ |N W'jS(h;FmΩlˮHcbۦ,4[%R*ewU}7TL<3xZzUL.y˸Ġ$wX0gv,t9<츶s.ֿUO4L 96RŰ}hǽ?Nw=C?c-PĮ6yѯf^_!-#T{Iw<{3:Ee{XϭCz)AlK[Ihߵms:e\FFf8ucXl24.٥{A9C i=21FPXHWW;@ωvjX X)}Kض=h7%CX61SFK@\+6QB8/RPCGHzwzHus:^DZ+m63MDwEMG< 0@Ň޵mO̺8w ?&Ex4#Vw"͡>8H;l3l!Sps;ϖ%UYwzQŅ5C^Gڝ9!y`84.iGUiOD9Ȯr\*xG ɺ ! >OkEя~._>'5|M{:$(&353=}ye jxl= wْ?VY36"& A.#yM"M0kK;Ld"p NsMěi9= 2q2uֆqa(]+p=ޞzb؂]xjFZ ll*)׺{sYM9 <ۉ< S}3!3I&:wc:/Y\: 7P-C'|w-'\5bD} BUJH'W+zv!i;U݇mEs eq)`ϰWAgKi!,AyH;RHe貓E!4;Gy "i;B *-'~b_blWmv5[UAwaM:$-I9>?{xV\s>'?1`Ni}E4$W X߄aP*h q;O5OR4RվI-C_(ۡ§\KX%P<  ۲Ӱȷ a 5YCA#": a3DѻhA:TY٨. -[~˩vˌ![vYB/YezG`d54QKC٢zܷX/lط1Ngn01KDJ},Δ m$=]%n>Z5f{ńOin}` 9[M1L)]$,{ELg]=,Ie.Wzj'y2Coxc-Pao8]ș߁>b[8bJOɳ2lq:L)@;Ʒ*?+٦ULi@NMI(眃la 9v7@ɚ)ڳӷ-8`Ë\XyҊq:unL#ϏHwإeΡ"s^W X0wo)AgE4Qa|fଏh~HE~Cf/_Z]?Hٍ"}w SCHl/-a~zJ8[LZH9Z1Bl7}|לݠ}YU`Хpnc2:MlnlCB6$ƮvG2I|٠( Um+*" VcJiƒ6GtBZo1D8$' n$n֊qIp4JgCB6Iw;!eF;}bK^փC{O\ !OԺQK T%# hl *hwWm(~A#/LW@^#%Ѯ OĻ8hN}AHO>^#=U_H5کk~*ĤneTO)i|-?R?;դB'"X!p} ,Oox{;C*f}|HnM>u,E"XbH6SX ܼ!@ | sAO0IĮ}'Nuasu|d|a=$bȟiG8kHw+DEc7Q,ċʙG7F#8#aAPvoJx w< rFte^`( `VF k:;\QZ4Q3Qc<ZގCD>9ta[RaGM%3ЖǙPM%DlGzgT ~A}89 b仡ş5 -e }ҿ#Yt=.BY p^ z0(Bwuy|Bk??~m|czZJ&,7ܴC㰄EP;e"V֕薠Q=b`bCues;`BуڇAgO.dV PkȂ:uRGRh%6B{ cEiA Bӝփ[:KimчWlJIC3^4wa0+ŧ~qaNf4x4fgdZW%`_cVՅǸ=uOcFH?!8O^șdTs]SN6wiےE* |$Vρ~l)&VJTRPikLpNRJ j׎[|Q? УsX,7\sEuT\;Wˢ1 T/bҤVΦvc?zMqk 4;7vE/|11P:7` ͊U-zq6ydUxMGnMZ Ϧ0B\BXp]gp5,$_M <:5}I}:G u}W !J3*J Y<'Z₼ wR1i|c j&`@G}ª3tc%IU:M#*{N^+J M|TtjkL&z4:0{)bF/jfR4 f]\AXgS YR -at1?4k"0&TʊkK g8G9+S픭: a@,*6tW 2 Cfvp7J~1>ݪ-S+ÉEW- %O{xLPk\wlA c]gwBw24LoJVO vJVCa@Ոb+DEr%d1$Nߵ E9|:HYE +pWNZ>%zvU5Y1fxH9J &=3/)'T -o<;n./C[MھX!U-ZE qJMxtэ[P> }!ĉaV 7J}5l8d' ۹mf1-QtV鋇 5o3O(X}Dh:"h&dm šÓH$܈1@cZE6. ORJj2rC;=/ BT,CEIV𜫌LkĎ,kdV$(f㮪 \ v;TBN1%OV/i@%e(a[V:r}+ssx"8/ A:0&nwzpz(< ] E%..OVL:.`zHtZ6O117g ƌ#P 2FZXL"l Ged@V̏8;hi<PC>P{Bǀ\@ټUzDX^4V؉k%R?:ѕvrXgo4dHPu7mPfUxmN[O"jN)1꼐e:zv r jǟ^w]жˬ|Gg%W,AIpfenˁ;j$۵ ds=3.5:ZM NIg^1~%h!dϛF[P_ `ڦlhod`x\=-QD# 2U˄Lwȭ|hh;'}r>i@E9m^Θnu!2l ^ܸ:@r@KO"sKTre+VhG:qE sjwUW}`nD(1L bc)K8]*huA\ܻ]ߘ!Ol pr4"  Ȇt]>.CxỲYvD0P*m(( ,78 @], pAFο=R}r)W01Mvm:0TFj&E֡L|ڬS6#ȱr>XX/s~̜p&79 qgbVҚUHe)̒r,cu/H{_)q'WKf{w4$! |?y( -Vnm_aOcf8ީ&E (׶NPŠ::)*⼋+{52ӷ@Ul6;jGٜBSs}~G(N҃܆m6mV)G`Rq\r _󈔲{)yYyaEm.Rn}9LdУs 'E>89 IƠ๛P&;Ѳ=00(}O* [UZy,V Ԗ9 {{.3QbZ<Ȉ):^RW~:QKd.a=Mo qI!1і82 !G?6>8vx|r%&7.G5o0&kPT5Y2ȁV (@+~c #f6լ;J]9`NkK4J?@~^nKWfp>K!dܧ5xFVڟQ<6P1kIjci,9>02r׆|-;!S1XGWL0ޜor,6G8rǝIbHEEcE3)ڸ5(ԧ.Fm3B@ 2kW@Fٳy4ܳLk"@hZQ9|s] rRE /{f&97%&*ckJqMbuL)ZC J@P e;MkMba>lIv>:d}]7sqb=֙R[ēL=Ysgxs_,^R3(T&y-o f |'-g7(0NGxYP:JzfiϻaPaDB eImk7E8%HeJ!ab4D[|=(q/8Hyel0T↞{,|V$[:9nYQZ_~V?hz8g+~/\zg_D'AhP 36^D ְ)ٻ=%d^v!O%~-7uۧ$y&Do<t̓~FEqb  $(\- jMĮ=gnJj)dNHD \T;ޱ;566؃m>[WRt/0F'⫹.C}\73^C_ 1GGT\ |Ї[|b+Z:cRo&vBZJ ˹kCtaA;Oö&㩣(U!s2&f`* Z+>m}̈^Oz&L$w\PĝaZֹ'{6LR3_K6rS1*%V*:bxWeDdA=,7ۡ#l{i|lbnnKm"ʑ>C9f{+ffL$qN@%z|<#Räy-ۿMK38~" Ev ?٦_oʥKx۵Q$u$yoU3BиrQ\0~LcK 8=pj ԷyLͲLR=QM{&aZtA{8䢌]Cй`u\>cOLU5=nߤܿi#x /jvObsk5\$# o%lOuCx0bq32{j] C3ź M\((+lzfA3^0OjGJ({&ro k ;lG$Fp;'%y,0M3r*:{D"} q!ub "nz} ͥ1yNgӁz H8KbxǠ0z=Wϩs*POQJׇ8pB)$r<^ҐVecv亇p!' m4hbX>=N5!Q/+Z~djE'0@^&)gSG'esDNy z$}{Ez{P7.5DŽ|s.;jJqrSM'|gt+IY BeD~nYfYjos@{[!̈́{7~ݰ PR02a{СDUTUc$Q'I⣰cj  M)/uK+)k"]!<]H4# yZ1kAˮGf4*lu?B. `:SS* W"*nRGxYug.YW Fh>`0A;0UFRh8T\KD=CeS7{뉃j߽`bIڌMm.vvǼ{Fũfw8#{FG& &cg|oS i9+ؕ'^ְT_ EB; ]CeZQH{m6}?xZ\ 5!:ϕNv"2'!vEP#|'ȵ7?T<$Ⱦ<1o;N(іgB@[훺>Xt@gN%1dvlѻy$M&dw2-Wùm(q*a5周PKZk25#2:gYЉwΰ7!e`#cC4}[&Xk+vҊ{gu Ӕ'VFĔON=-C,ChT[H ~H|e}ӦʐA3ueRvޝ b{JhڄX d ގ#A(85PQSJ0\6TkVهbWGutt(*)ln{8s[_Ԗ;sɯܵğxo\HU6xt.F,wxae*>38ãu7N8U#yثAO3QZR-%n5мb2ٷrV̑]0kƻP$PrNL"5YZW卺a6,,G!Р'!_"3%Shhy>ɚUpn?8AiBVE CxrgEZ(Ip=DϽ h{N;vl_Z8˛fW|ͅޅ{tpp 0 ()pT}1Y~`C3բnS![KNnXG4_l=gc'}`UgJXGCa1 a,d_=Y?W[ʩ6&hGp:U?3N?Brj SwTrK cPe fgl)1E.xb)>n'(l#_$roj E'cq}Qq- do൫q@B c'J)NUw(أ5 W\Og9q7brg+eKO@E꽏00/t,.# !{=_a@0ygAT"n{^6WK۠-c}Sɻ 3rpxsoUP26q\ GBE/EO89SVs4zXF^ZZ#;z.uuCq1;X&oEroH@pZ,D F:mmgyfaGY[sKiLDʨq79it2]`n;|[#;[ቷ#2ޡΜ[RPA!kHy=)ېL 5w!c2T$!t=cuQ˪b )nV/܈u`q/ZG"_$N%*ed14r>RK`pṛ[yϢ &# P ;(~duBNIigg9o`N(ڽ%?JMe.,߇Z_X]( Mtj & |qcbvrgdi/YsH"Jziz4:jnEoo3INuIٽ,eIxe+.{F'uI.omyѝ-$X][ isN 9ۭgy{<Տ>|jE>[K'm^Nx{2y=xS0[IB~'NjjZT餰H[&􊝫<1V T9ʭ0fO% sR oSӇ8L({-HfeKwfz~rc@fG - m:ާW|PVbPsth]7[9Uܲ 5xp1x;t(FPY*ȍR <Sn4M,׳C |S:,<F(5&oXNy;y#R|Cc,ٯ~sY]KM#\E[$vG-.82:%c9 o>=<_jPhkFBỚ'agGѩ_FyҞbm|^,m Sl9|AyK[;sU|~L8ǚAߛX<&ڠ Ӌ%{#mw7`=,\Ag$nn(a/Gq_;2ur'<;T|0f4:B$k&NhLqlpl l̽2 ?V* .WPu棣D"lfY|2{HQbz>o_ rҔ[O[W$ bڨW`]I/"堟li/Q?j9We/\vmiB!}05y8[l9%"Er" j>Kw쾒ӹ~kZdrM|~ZĂLϑhG6to;]ڡfwIzCUUz2`mBW"ܾ3RZv>f%z- w*o-fC ;kXnYm~57LjGD[פ4m7w 9?mdvlYB~P[R_'ɐPb:6<3Nɒz#k;QpZZ E DX ckD`ܕ=>p v"{J W'0hu{?m;qTY(VZ%q%JC'e\){@9ÞE/" e+Ojz;ۭlbiZ2甁=Q> ׶{=K_ qeŵ{qV-4+$P |Ƀ?1S^ZB{Fi9F;6 > i茿\`rS=AدYӗC 3_Wy2zDL葶 KtO K>׀VcnS]r3)kb{ ǹjLbST5y]n5 C4 }#sTm n }禓DJ&mcąg䚨S(80.e4濄#!%{8} +Ѳ@AȖw^͝觌4rgdC愪NNj7NTO|$+O1!o?E oe)]4q0syV$diU40!t a8]$ PԕuD@AH)rƁ%/6e$~ѿ*]%-ݍ/ FI?F9}]j+4t}LYoҷE2 rb_)F(dƻYM#xK1+f,$[t='ڙ !xѵ(~n*V}qt8;_i1{#LxV>sF'4#wf\]/DDRțɃK8r9jƼCtoGMܣr_ˉ>>g퟊>N"% (a3"l Xsy+7oHq2,a n%FT۰j|ϹȩSu^pD 3&Gڨ? 0,klXwnV|emN ratoWHnh]jaժ\ C?4cN{Bspz$F5LoG*%tGgR C>3 ܚ"޲I) k Y`>XÖ`dxB?@&mAjB,'~"pL5䖀p <[ߖG|Xp! l] vaڅ{8U +{FHW}{D+rzT!i7IվfL2fsv{9pn:dwozտN#Fypr+収?hEZ6 _IYr٣exdQUiT\(5$M#'m<O gLʅΦϐvLr^mYi8ŕm,h;ٳd؉k4!ow=I_Sq`e=UUQe_(Y=ϧ妨۶hك|/)Bz,(>BSFpGĖ-<z?L9p?O˩+zRq$CGsVG9Qor QBk4H{Py"u-[,ARZċևN F C[GTZrNx决V`ⷳ& TkΨS4Ъ|c8z VC#-%3f%üx+bzy;Әwm(ɚ;PN TjY=1x7>ֶY5w:"[2k*:25vu/;է=m5` nYĨׂ+|GL~| }{elr;k5ҍ{.ڟypB,%G2rM@]^ܖ%wZ\w{ʭ4x܎*hl4QtkCf⧀0d41cgP\+Rp?ѥ+eޓ/Xԑ@Fɪnu9 rp>$$V\& ۍKEz^f[7mxV}RQsYEU&I=Tް:bU5ё,?3 @Z4#F{G CD`6 nY93IP6_uDLl)>ZI0KL.cReL\bS ~uɟռ:4u K ̽mՊ ."o_ںZ_ibI}݌r,̪ʑߑVށC r >Z {+oaQ;G[I׾U)NNMY=;5v-qj쯮b8 \&C`;o\A[eU9D ̳ -~ ɟjr$ut 79ĥr7#jۤLU>)93;"JdxpV|\1f|*KHINT[(3c'g{*Æ ǾAQQ6L[ Hd dL[J&M{Σ~ײ' e_*}Ļ\4fkx y|w 4qݖ7(g&`K4E[tDf#‡KQzO,Wb~׭£?XG=|u"UR1%tQ醺 VB:B<RM5ӄd_@02$4 5Šw0LʢkU2 6R;ívv GPmmXOP!tYRn_}9M>37٪^Y}^1H ܿa0987Iz/AY%Q>6 !.Z/.Jr4WINJ!F5a"2'zxkse%45J-s; "Yki`y#o by:Fd$/Bҗ1ǂ|]+_˭;S8FMEW(LMsEC>,hq ފH;YB=Jr =o㔮y-R9 zD@AM5z*frzDz$ab;Xsl0r&=phD}E~@ 'a#0}wgţz T'p_TGÀBoSmA_8F^]ƙķymo>{tfm5-#cK_"O$]~qVYnPڃg,nRz ֑ 3{ڞ/#F.OsK4m.al6z^ۅ2b A =fv-~E[@v|${8$XUK'<`o!,(j)=8:wL}&e10RB!G+O6`S7>GӷNh2Ұ}$)2֒}w^bȓ}+`=)/DI+"\x @}D.O҄PoɈPv z T2 Y͎Ch<by}a2DXh\اiawWx ;?*z:y:eh^Ƭ1ܮDg)^!RmS>ekvՖa4{[ԥ8<#m5l dgP:8sϱ\B5> )&54ddH1Ez)T.P &7Y~NVUȐOq%{X@5kz56]nTJBZ3 t9:ת6O qopMjD]]:]Rd_t؈~ V'jC4o]=ljy4S45䀦\j%3YRЮ ,BoXoލ@et-=4l~)=U=gϗnr:G/L}7cJOܷL^@~]RD#uXXT?,Iʿ>@4ƶWqT+OY^C5 .9a"gsQvoI!E՜[叶q5͍mԯZ5=_k 2c~нZowBf)R("l+PQum>">:_>39Z Y hwvE*yR}0鸆s۪;} #~Ͽa̠u # xDtTnt bYe񃳺<($-z_eoL ;Og&~))~cvi+б+DR9 'yN W_Aq;=Y/K[r*Jz5{PpWٛBrc\ Y*RIdv-h@ebdz?rV38i A$#@^/GbWA&X F^8)Nj_5q =zUI$} nͣB$MUSںRlkrĉAk:Wxa*Xd]8I ҂L,a]:qSCDC'%3O=)eV.JTlHȵJ:.ciEHbXY[=ȂamWo8rJdTh7AM΋ͅI+b |-M.p ~`=NJgFZ`iʲ;n|ka 5"y;a^DE.wRrV0gL¥"@춤6[jQʤXV8e{\%F9ϡr9p?}X߷{ 3Bμ,Qg=SJAZFX+0Il(]]ò9 jMDjF4 SLK6-V42EЈ@\M9 ̇{LsjW;A ĊQvnm*-AIoo_˄v1Ċ0BO?R -qWrkѾ@Y <s*U J<ӟ;׆{@Ɲ;gafz1aD%Sw(+8s|kOIf,H)4Y^\mA1kf/]LUM~mXeXQEUtL/؛nPP. ry6hVԨNhdNB4~g//S8QBF0 4Nq=L3H-Q9/'I gEr;NZ r.r3j4|Q-䐨=CP<:SN1GvV/}2B[(ym$mMt&>o'daZu(BBb`v~=lP9*~k4]WVhظO?^|h49zE༤O=-2؊;(6^ALK3ݟ}z!l/yG%r@Gc{Ua&:Qv ]vkG撩Ci<&N`̬qr_ A2*uh n*hhI {Pw*w,3I[϶.$rtx]5Ti7{TrFg.UxuEϬ (2;K|ב u_8n lkR*v+}(JS%{Ho=K L9 M(WωxYIZE}r"ZM_%_ŢH_? BNeCG@!rv ENg!;,t|uxx(IR͉I",} A& ϗX6 H|vL)=!J=Ǟ*JiڽF)Sjvu = 8 | ^'xDyB?5; @$p!*)(+!(1f'= ڗK)L+: ~VslHކnA69M"~ үƸ)Thj|Λ˴}.%TcA\k0T w|1B2{o#t 扈C4 ]Z9rϋ-Y50tåaxI;Hu[ iIzqh`gevqGlO$h)ttŒiD@`?e#J<|,Lx>;|`ܧ`,:qh#d4#cq$1vZܨM$vaC[ub):ľۭEsms)p{)/BT]xx 9;5ŨV}v:3GG C%0ZQaXbWnq =,d˚jτƒ^LUW^շ wy##%NSױ"j"5"?g\ݏ<z>_T`!C^35ϋym%6 HYk%qZrrѓL㎈)x9[7{bJ}OޘSd!AV_V7TOغ&a8=&RSBxϵ`:ђb ØJe}zhQPY Vzx/\39CҴo8PAp.xF}|-ej,-mq-42: ۶=~hFb$ٙK٩dG$d%@ T{pdɢf=*C|^qX9=g&pY#%fŨ,V9y7spH9u`x+ 'j?^K}쀉񖌺fйHD.2]g\JBPl  27;] )=ԶFזwHw}7@Fֿh#́V_JaB8)m9j}Q"hx@'[^ju+{-'_TL*`M`h׶nENadJ]cEHc2 +q>¨:>EnG?Va`v7N> )@D`ږ9\)c~S > 6XMhQI{j2Yo/puD{"UsI IRFZu76%xSkl#i/t %:(^U{{"ruYb$H4S)I*PD 7)[ͳRQa-8ZTIR;kWŁ1x?|;WzFts'9i`ʷyGzI7/hI 8(* 1v?FvM?JR}_HFl-wfDKrLɌRuQ KSsE`NF둋y *ʗ &tiRYeLӽ2)BMΓHzbACS?-R𛚽*1czEqA#,¥ʔќBiHY3 ]r k;̀@`FІ)^_I2Z}l͖R }p|I3وPb=[Uڹ0LZ~(OsA])Tu₪Zo ýh<Րpݑ!>TA<,GMR9۩㓎eUq ږ,"tDsӎEɹE ө))K-eY%#n{9FJ ӟRGAS'CX:(ݛL"&E\d?Bl>|Tpsj_eG|Ľzc0zt>LzN۬%Y M*(̬&HݍS_xڴԮXk[PSFbnQ;ma(3YuH^tn5no@{i i R<=t̾aˣLmV8!r q =L!X(to1 9%J,{/aüv8? Tac4zYd!j5G;1s?y-\nEbz b>I} _]hsJ`m ޟZF l%>sdZ#*Sldqb4Jwg `.!o  y`sVVãH%]{)Ƹ:5SwÇW xe򻜜ǵ%a'ꆃ R}X ב-7'C螺4s"}+<es0j-'^[ ،Fk[7O“wa>J_ )Gx$UnRmkt9aH`(a*tfdXr32hvXMiQzJx! Լa&Cv&zVf=3I9*Fƨ&eoI"/,q&Βo(0yz9d &'0Q*{PLEFl2MPgA6qpɭ:Oд)* ?=hҨB)xO|H${5 6VVwEIz]ty:H4DbMn^agdLY0mJ\fiblI*% ́)((C` #@Ld3*^k]*qsh`Yw_<\meKJ`gUEc^껎(W&Pk("!1nũh+3HKVuTXǿO`v@$.},9c?T{ITO,Lme]hrCϻ.6 vJ<ܞ,!49 G*䛲!Ţö6Sr4cm=5H OIq5bi6Ofyd@t×5-mz6[g){uX§`wAOr7vW` ~m(w {w4v \҃15iJiijm]m&GÏKdw[M}gLԒƜf'jFNhNo=~ݕ" rAb]Fp[\S?[`T{}M ‘q\Ο+sŷ z܍Qפ'1@GTM#Λ^CL崷w[AZysNR& zn 2HtwThbbhBϨK CF4pg9Ou]W;4i?YV.?rF4-qљWDV&7$-YoXp[NZwv~GUOYs'y}w.SmVQT *o wP$nU|H=e=ǻ_{JdCSLg N!ko[i QҝV^Gu׎ْ%J5Q7S*M7آcor:1EdHJ25UQ(oF2!Z~DڣC5!2aTrI5/r`z=_X>2 aMS Onrc1"vFޓ9*Lx}K E 1 yq #D XwUi>"^EqbAGp;m狆 i,?jZ~j@APZ.N?Jm#u!N(8V LuյP&qϼYrlw5t_Bڜ TWY@c+pi#q M&IZ^ICG*EiagYxH}Yr߾n->"W{,p$^VrWUW|֋S0=뗁v=]z20q[ΌrǴ(_q"wI. &cB|4~YHϸ;{S;ˉ$OL5TAA95wNԮӹmZ-#$ܷ:<s` 益jJ< ) E]Rb15A_Y0YQ5 ^9#6:C QP0|MdÍHk8C4i@3/[<2ֹB Kk @,AKRK_D[ؔ׮ù8PG2zȽkew!#7|JU2[|Q+S "pR\tۇgGRSAJ"T9PdtW%˦;zdTv2sa: 3B۫'a#> Ș]N[rT`: Z4kWLzQ=*i$@ 2jp9~%,q=JIɏC 2zIv}@Bm:YcжOҋq$,ql̄wEpVц19J}TQ}jD/}ܰqci.L R9 Va,m<جNP(Z!IGyhɆWL&uD$y]=%?ѐ {cIϨy^vFB-(L(jsmDE.Zqw2릸@+sՙz&;c̶T2|䰙G(&{nIKp7H  Y5B1'C!p[$5sz@T>Q}Y AFP ;T{&v>;Y[!,lxl*1yT~j:nb5cw Df Zl.Z\nNLLZڱA<0_Æs ѵ**(-`m`-Rjhn%9h:pg<5 G2#om*?/Kil%=&r)~z'Zk4|b[VAFM0X˞ ݼA떑Ƹ+vitW fOs偃Vf s%1Ҷ.)u@ijd BГ Hn䋴ԘqTS`mJ!Zmz^%fu-k+}0iq7DTϱe:E/U?ߠ?a:^8>, TnQ˫ϳ,+uMT?aT(1iZK / 2뤵TYޝyo4kj\u tUJI0 8y5t q^S8"L"}ߑ/} yƊsm#BmJF߮@XBk-ifZ~Gn>=9Hti,|g1zH/!!/.[!CJ۪|*0Q pQ'MeK0!qVI9«9ХL`lV-PEo F aP;bzƯ4c2%.t|I6}C[4čē]4zIPTh*XkP*M#t2C? xABc<I?mB/߉J7Ԇr5:cu/͐e?>9Lku#F>$(r;q!Ҹ&p_o:Aym@gRCꕴ:KL W{C'dI}5_/$c; %mg:MDS_M/u^Be\NgX+(Mz)XaGnNX\ގ\אoɷNz=7!Ńur|P|_HV苲փ wkl T6rN~\aipf{-(p ,˖l)#0kXBj=%E%h"X9AVrqk` jD`_-cj8KA&.pOUS&_k5\1Zpik\j>^mPCT=+38+͗?D7 0ŕ]]V͢U54`E?piʊ Ry9'UU)IVP@uQ?gtŷ`Wb[PaY2JL+YAHDr_Cסe }Ər~^o~+kWb~ݦ*GuW~&<\%_QG"ϖkkOv׌zmv\saBq.sf7ՃxHImwP{^V>qiKUÆ܊ɡx'ߌϣSAe6ƳReu&^JQxb ` w[5n ̀ߐrSo`fLl+"=?X:n:}7ZN^kO\Fma~sʌЮgD|l*XX'·;Bex|6ec˂ r;?\@D@ Hg˰`_~Z|s%HR}& 4(K|ɛse(;>M[ZoQ Ăcg'< Y}UȤKgHOux/$m\P8Rqw(AK}k~uHSNBѫVQJ8/| Fm*5Kx&:bw zzln)S axݞzQ?Y DI,gI2hڶikk N'J]/vD[ݘE#k^©%by}u~oq*0#m i;hLL^oQh~A)D?}O+)U=*?"5 8t^ң0L8Ӵ#͈O^I7,lwwCsqy?nyI k4^9pts˺Y6q2DL}8&g Nt  p(_ٗгj2,RraP}] `I!؅"3ax}r yFA#-`lKHΝ=3؇Km $DEG:]Ԑݶ;@E`Z iYq"W`ϻ:ƅ up['F(a0 HOFڴ>ړ3"ݨ3m7NiKv,}Z[ܴe ͐k{F@%c;ͮ>/=lA| ?9f; ˿TЎR5fotq < bg14.ܹk=[F8pVs.VBWx<xuIʿg֟@E:9σ|h a,MY=g\)OW۰P5m2镹vN>QAiM**CH'p ޠ LW쟑Pw< vPu ϼ͗<_1{9f&JTPRF&QXl_F>fvG}({j#~itpX&x a}|fH'uu^$Qda~ԧ LKFRd-{ZRyhQG.CA0XrjIf߮Ak-Fa*r^rCLqsT~ *p;!sٴI ;$6ǶI&ܣʼng|9dL۟QG! 6w7xPP?#(PÒ'~1:Ժ$A,fF LhnB8E^`0RYq^|7W[lN&Q/^+u`JV4 aQGYmF?q/KJƬˎٺ 9AZ. F{d_T %PF.#8A56'ݞW{{z|sƀ⏔sӰ@Y1g dh3Jޖ2c6rǡJ Wh(z̠f4pi.k'T,x-4T97򌀠M0$͂'ESOQ2|!$u% uɑ(2Ǘugbm=N{)Z'!aǙ NJCc-%DG=Mb|˻q7 ~;p4Ԏ2= ksΜõuY"aw8VϞ_ yg9sqr}i/c'yIFWkP{qUC>u܊+F+M]v3/Ӕik d2?~ oJZ]WFo;ƻs᠖J {O,VHaQ5h3Y?ꨐ[`\*bErH;'ƀ^x'xtVozN{hW lalD.w\doU3.p/pSh/aֳ'1Ys_-15w5CbBjvD:`|l2L~ "ef8A'T63ZQr@(K.$0o.'%k$':q3YFR5FtW90.I* *@X" #=[Ѡﻊ-})!򗓃ó RNEw֩"#OʙTS5 WYD&Ѫ\n jp7fpweRNkI8Jܗ&4y,/rnf A$hD`g)RI&dԺeV-믢˲ߙQz< r[MxLdpXVm NzKt`N51[[d NhХy C,XԳɩ񇮙`6/Xd"a@ĝ29@S̖@3{"_N0b}[D$etjJA;Ka$(ffP]S%)tVxw=\CO~Mj/jO1ԭViU?養eSآFiDS {Vq oB6kKn%jhx^l..-rҷނP՞J?GSX~-_1wgO!"CR8O⢋HI ^2QuXq3A#$%פQXG͉H~cfgf#L Ap&sW0 jWsTJ$/mJ?H?X@(9Gv4"{,+꫅J+mj/}'ڿL1gOVm;݄a<)ZjqtM1IuuSmryw5cARs@V'Zz UYI ) 4.fZ-=${351gaZ]5X#5H$?3A#/F@u,!Ôs$2 -Zs/r_m7>Rd?^?ݯaL^Gw4(mtyL>ƐEW*hb醯 B>Q]EuW0#%g<1q#58RwVmN/CI[7K= 6vudo^ o MDoc J7='pa9Q#,VsJqS*=Wɀ@ܓPոۜ1)wD#h7O^ddp Fnn ƀ-9b5@/'8.~ Jg8B z3NˢqEtBAt6 TSqY{AZ }PXVa qrGsDFi}#wiґZ]N3=)5R96.ֱOƐ|MYaRV),ڜ32.ۿ򡟻GӂO>ETaNzuu|ir,.3cΔ{@`yLjFWϴ&EdtVj'Z ^&RgD:дljؔ)lܠ=\ {ݦe}t^jձC8X5_ wcI OBK˺"p`ku 갯`F$ BVC'4M^+V8a^  ȁWx7E6 +bq $Uf #$C)&'S͟Fp]mK>PRv&ܖ@RBZCs^82ؘ̬j(#%NXA[2 ? 9ʚ gƘyvб[,/uc텲̶!uC!K%K5Dn/X^#KbnsD@9 OQx=Ԗߒ &d<fdfD#: ri1JK;ӥGogψlTLv~ 8d5e$7.bG@y4@rvi̝{gW17qݣek>4L>R޳Lً;F6O:;F{ր j?qEG^0 _(2 //F`y6J}t_Af4ca)nRLvfv[3BB3̗hI^UO ~ G6rn^ZΉ'HXhH͆x# )X LWZ:?ug_S|hj? =~nSziGI;ӛ(I3"0`/{"^xyt}h Su>NVS# ̊z@U*8dN mI0[|⹌#?x*ШLPÌ6!Ct6ƙFz} Ss P5`:ė:u8t<ʁ*O c2ϼfOS[ȮiG4vE˞A=B?aH Kz~f#+f"-ߢG<ĪNL.O=H.|G50'Vj|`dWNF"jjT{0uB+z=:z,_5LGrh#@XÀJ࿯lʽ p"p?(NȈ4VQg2 y4}׶71 \4K@; BJ$mor)z cr_Z`;@5tP2Ve53P_ ʼ PlbI>c> 6M:~`lVD*VhAڼu!0BHȔz 4큋eõ)jh5AIq83>˷gDBM [uE縄-OE?5ʱS+%I<?Y-DW<"<3(>{an ] ܼ&8tu_AgېȻdQ8Ã*@)LSdI$ ގ$uԐ$:_DN!rІ ᗆ,4GEA;CDϻc,:˕(GjLYo.,=E*1ɋoR*}nb%=C˦8*t*{X-}}ǡIIJ秶<>mbzWR!1H,d]1&q ljकOuྙM!U$E\!I41HJ5eX+q\UݯZT1 X^$ğ~d;E\Y7 ԝ(iaG?MV9\bșvIe'qUnԋ[%v⯞m-asU'Akܻ|,jSۊif5^t\9lZGӹV!;}qzz6Čr*WƣAJ=d5$i7=Y:4ۻ+fxFt]JqbСlY99dnl 6SV@$d_jpj:FIJf| X9CA. }fVKkRGZGHYG*PCAQ FgVR|oI~9K`3f6Kp`~aL 2HEf~^[N%s`b"b5P2%ª[|#VC)ao,YgV &mh!0L`PQ&/P&zO_U #B?QCt́ 4_AZH%*5O#0@u4"Uk&B% ~ (XDst`joQG_Iuy$H5(CϹa-yڲJ+[s{_[xaՂ0Bri)^a$UIO He 4 T;xi: 5-0Y#ޏ 2ܧ"3CB?:)k˘=I@HT8YJxΛna`? ~2@iB{w*aXFKzȻSTu!u?^9)P(Q`ż63h̆}sdOaū( H]+͖L.v "eve D~)>p9HlHLacxT7N_xZ kQ?qSAS|/<iB5y9CD;EpsI<ȐuM+yGˆb|̿*&Gc0(fqV{ی@e\HFW^  7mSYBWh؝?pZ/"` ~Ec=˰A}^jM"u?̥q:0 0dHO`)$M„$5 * -, VUrZCF|LLIjvѤ+c#L8^tk J7kpWM{b @G׉ڴ(mDfY+db&hR$p5sO6D2gK=%ݗ\a/ mcMV*}i2 aɇ<$G IAk,~:Cኖ^Oc#H=mm2vHʉǟzOQL;ol,itEh`Cn{0eWEt?%,zWi7=6n){Uw£@2&w}ճ.J&⾒^֫G.2LDwf 8~'eµ8#T$*tZ~=ltI)#֭`|K J>neliԘ㄄Qa09u FIOlo 03ދvH5H5 ՕM薥p}JJmK7B|l,>|X+0ɯ![~HI,yQiC>6hT7o8940BB߽>~Y)yeηW$U:DJEmu9En_n:xRi#A`^3 yCufi FW*\f%&=T'!Z1e  . =do9I]M$'k̦TIV{`_I^+|:tFmk} V4;GzX8*(Ed)GY5D9M]H{urny9M>'yJnM,F7ebDhϮ%)!²`㎋.C[1w]QT1sv|O7]ԡmC.l}Q[{|(ΉL3CLǕԞ 6Vttsҷvq=b78>C4|Zn}E4l-. <(c"6l;xmVQ͍xRPlHji<0FME͘d*qRA-G)vx/*4||rF6!G 7p- p>+q?d iau`:Gy߉ҠY7$UV ovKL8u6jp85\k8BU Tl/Zt G'4pP`ѻ P2OL#W5bagl@Y_7iJ M tQqH)~9B v3гj-G;DYQz}jT~n_Vh'*8>Y9mlsNniL U  ez;/A4 o K`vCy ^3&6/&e{cCPZچcٹ6.-byW4&f(iQ>&~pw>jyiP@JkK9v  0 hag!,É3oW72lBa}8@Tp.CZ#>oT|{vƦrJ焴:=T^_k4S6 8Ny-3t02D]?~h"zZu q(k6-ehG:RˢP^ ,`0P(Jrӊԝ+ g.KS"x=4O{yC \5 T<Z6 wT.plIPbuHQMnt ^ї|D3:N7CXնJp.| 5hp4ۙGBC*`}OVҧGk_\uGЌU^ڣXaV=&SX+&H߃]y}RWӳÁD1M.H)JӳW]zdjP׳'zӺvhobDPN = ؁dzuׂ8f$_Q|lzpB1׹ƪ "K }Q t)/xiUܠ=4~3ҡOd& [btjq@*XG0޲28pRx}Au_ }uBh!zBJ*=>E2B]iB1bǕPݚ$:*<l1$/iZQr+y7jhF=@[ڏD(rV$QMu|"~{W]5% +6{<ד#,C?Qr`''dԄ'x&e.ۤ?FQU@>IlthY 9ˆ`pK|9p A +\w6Bxi o.| 䠽\TMғ}TY W;q1M]pow6.4-ۘj0?0Ztцiz|J}EPDƹ1sz3aGGRd"n7*4ifیy(}F7–if0`lFAxH2ON$o_1Ň=ZfK)cDnڟV cJhJťˎ["B;Ɓp &j|_F] S&H︩ P;6u=D& &4y*xօ2@+s2yeE,%W6̖&8@dz363+b֟.\7V(|l=h{A 8 ͎wE7oǽ:rzKVŧÜ%((4yfy{dh=XsQ+ÜWKW-q>xl^SR\P1FFsLR%zɖwķ$W7hv fr(`Y|+uɓ./j: <4k;?Zs ,e_zo7In1?9ibCBlz~oqu62FeG}rw vtHR- 0t,s:]C/>m5l:Hߧ9I\ʙ[^Z XRL,3#)oة_7MO~ X|xm!fU. ؏%F82KF|9dӫLS4V$L^􁇼p6(@g=rYm"y<=b0dêV8JdG;a1|J~ƛ~,G;&eR!r>]-Ӌ)'M] a1zGCa~W &T?zkCy2DyuneksIOrT a(TH׎C+޺hX.aVn|RhiP-578F= I R A,7pc +j](H;;=K%б[iiJ݇ ;0f:H2 ]lF%gFOQ{'jϚr}`)= *CNr no1)_c?>]{eqV3UDm}o-mUH[^8)΍Jnd !ʳʕ# x:+o }Jf 95.`y6f4qEub2KՌWh,vmTo)" ZS˵F쿐`T-7a6_w@|](ޱ:n[ejZ;|aA[ng`m.!ry)>!Ρ YL<KQӠ2!S%\g9=\rLߡ(hH;FırRJ6MQ~@BYbMbͷq,qr@JO+jleQny$k6_4 [yQ/HTEn r&`UP߸@hh"]E؅E/QPmKthܒ F-{%bI"@@!j'+:S֬p3>xR_n yuFRf{5|zDD#x4y pmڮ ]XxPiB՟Qg%K!W:c|lC>8Ռʽzz&xɃGA%%S_阪7eեZ~?Beϫ9[y)ea&C(@C+AN\$=6 /+iG17,Ij$&q}2RL/5`i^arXK߿Azs~"Gvācwqz5Wyo1 =֓}tT(S̔iK"$d>r7a-~+z#9ժ1hG{N) (Cv.CdUJ4!JK k#srJp[-l"@sSXNMޟ;Cp.zX9}ΒS@A3B# .f3z$3p.gآaM8C7)9:3ރny5W0^P[V-|"(Ct :Ҟ.j*2:ٗ_p[,1B/M!H~fp e¸V3uu[pbgD)] 7O\@ ;xS/WjIaì m@`U]-K!`?U)ԍ~WnPJ6:[#
~rX!LN{[Dz͓do۴~ȝ4 |ch6\1) L#N眬~@N0^n۶WN8$Az1U蕆C V_|B(PMcxT*u| @_ A\LįöIP6b|Ę '\ dJY=QMnS%5@ɍ|,Ե\3< ֬]fM^#KRj\nh|7@zۗEPeEDB>(qG Mj?UK8bɽcَQFӯ/+9¢pϑqVT&wAp;v(nhR'^) )hux:_eӵJg#RNܽC Vk rc.Վy<[&ZQA|E#0+2qH9bjx^,D|d•q SܖBVBԐ r >|hJ}Bg 1<M@zM.83)~aهYñ+ɘNkCxC2+xV"КFį ˀ&If4NEȡXگFYM(cvM8b收JPc[) ~H{.bm6諾zӥ`WbR+ z¹Q|>z[B&mDL7T/ jjN]|#!c?nAA䍪#ޟǽa ,A3>,|60mo&xLSh:hYLmb<сӕSW% W?'(cla#zV%P(#qI^L|TLT< D7S=Rieq6ЍRae(Gl)q_^o>Jm'A*x)7CTms"~HD*P&T$S} 5~J(db)θ[x{i+oLDTSDsOIpP2!LAyD핦#/XGjlxP%Rި_ ZaV;5e_+$,NeT:~C_ H&{G,?{ NuRX;}iF`H+GfPȩ=B2'fyLliӲ#~Pi*{" ;|Yu؜tSVso]T} BmZ~qgd1MFpP!>nO1S>‡Fݛ3JImEEg{)[D2@J6zvA*h̥b NkhE$Al}-i&3~h㫬c| <ЏM 1?Cyhdu@;Gv#΅H` @@%e"ᷰČH>f44PV^a XJV?LT؝Ic}t(t&r3 V ΎTIͻ(D5k㎵sU9/MwB''IMB?zǝ)I҆de2IՙVac@7J؊0?%—uc'quE;GZsWiaf!Ni) Fu W{&+$&)ȼcMԣA=1ŢRV9 aa0~p+LMs쭋1B\x5"[͹ |&s3* l0;t&N[ b+L|x@*7|JBR%N n@KF猷-znPBMIVvÔ@Q'S~QZetPts*6kPӚ{j@k&yl@Mu<,-CA ÓVsL$ܥXUǹX[ jwS`9ئ ܉J5^6/ؖݾ@lx- BޒhWhGzߓ S"i;.FL()R { l_S>ua|q nA?eH 3ZMB_ǩ-F;HUEVJ+**ًF2WJBELG:M6inUAٰKYR[,\3#Mt@+ʹ9- ]CEwfy{E6[_лp{6z'( miy׻cI׌˄t"9> JA&k3;7w7ZOp8~}-Eܘ])} ¼S/<~,eYmOj#3Y&iRbJ-[ҕ6JE>wY\>V~ڻqb ɾ)Ol+¬0SϠ xdVҙM( (ˑ4OřgAz:c7hXX~=bL'GQHEi;0Pbf)[Z0R#00'Krǣ~鷜`3%o*ԃLZ!]R=̴gmvDBXk,L10`Bi㙃{Üyih>w|£-\m3fɗΙ6ySGX᪎xk BʺVfa#(4R-;, hhW;y6B< 5qoڵЎr r:j q¿B`x q`WhbT8x)]KqWfg#?.kchj^Іz/ ԣ5yX`8+X?Hw<5#ڭ $EV͂௑bW7迢 '-r<娱j"ٹ,K< .1o*gzL8H!k^3݇-1WEC{nH>r`2] u+XM[69`٨=iDǹ5.غDJ(p^wNZfQ7Ew6v`lŶ(-k:7+Ta)|PaMF&cA9E+~lgөna-ә j4*9i2WSR(dyZ+$A(a5Ѷ5(@L|dNȿiǀۯc/Ʋ-_%b Q S5|no .I~җz^E/eY?, Ъx8 eɪS}Wa*'>q狼KB:_pfיڵpiZ}̶1zLzYB#t-]!C SZeV; +.JV:n)/WYq+Z]NO]J=vy^dk /sTqDd֋xe#5VlS+Ο!uxgw@gf&Fu{/%7TcJgA_eM܈Y]\3ziXO.ʻ"RbSA'/ݛ1qܱ͒Jcl\;n`dZ*V#Ed;ƁS]F7w]|/.GF~JAͳ|ilv>jU͜H!Mυl6̴b35mLK|Jb}jnORN\Nծ).[BwԞf(.$҃% XUz@g1l u1a1a߻aΉ5%uæHK|lR 9p%n5tXh `v]!O%\ޑ-I^_u=['JE4W;[<0Ow"7 ^κΙ^fgl')KWזJ^wɀ(!Wn>/A_c܀erѺߚ[|.^-zcW'E#HYsֆ}Njo,-3S+lքBk%=>pA( \ݬk*DrF,m8~$RDO3|VN`OI/O1{_ =\E_,xa#מtp9a_@)%`҃e}+C=؀ 0MJj ;:͟62L"-)\<LH]sm;+yjͥx1ڝ{m4o.`}g{';DPgnWI=,P?>x}k>*|Mc|3Q=E#O_#8dscuEfA u?:Tx?ub1'ݯ<ܪyLeZu~Po# c۳jz7g'DMt 1 9TC߅zS>[^I$Ŕt)9a6dP Ǖ7)OoPPFtcq#YY pdC#<? vjj'de- sLnJH3+E(/Ek{ґH7]wʗ$H؈`nyXIחY=$>~@osn&~X ՅEт ~5Gf+ -5wȵsn0=8wylX3,-5`QT6n 0R/ Q-b69 190WesF[n8 ~B! 65uTUXìoTD/Dg~ 3z0Ebt^3/iNJX%.B t<b(<(z:w9kp~]ۮBׅ Uv`ާdG. 6j.1Te ɲ`N)OgG|}g+Fp7, Zeoߦea0-D; %in6^kx7{E,+芥sem*h l%6?D-PB5(QK/WPd kD :.۸ AkmC_*m ~Ϭp7u%IOKss]Mbg&\NVsMHB B/(OtyWS2鼵EX&MBd-;v>12w #*t$Aݛ@3O |;CuUQH.v*l.`qz(}2yά}UEzf:/~,ECU'sbe! b `lm׬nϩ(r.5n6Yۡ?Q!_m _1$!%?bkAal4/gVszx%1ҒIs+_oylbjD`%Bxt‘[^/{r?"ѫ}yk@i=YLhm S%,tCkC jLe&潤UeO.LPbꞡ ^@lDž? sڧUUH=%cSJGWQs<$VBZ'Cۘr:!HUlO+Z8Z~T:ОnAF\tok`,}`Sw@%pmgjN[~ H=lM8`Y_lXL%A1 MPއ++㄀KobJOttjRayMӎϹ㸔2v*O*s,\4,&װqOש([MA38UiyS:*ȟʷS nW"}‘pt"Zd3z:z2@m F!=fr.uq VEmO+`m5ya1-OH_K` g1LB? CYC#rhI )MlǯaԂ,@aZѨU6{yJ:ybq66^CK_`rdU#|d^!漖!@(W&, noX5? (aOf|ieHI ?FE \2JsfK'9'膐ERrQ-Yku ^X[_sz?p-S`>%e䖟PEZy(bU8)=ZWaPSF,~n=1NF9<]{9$F-(s*:b7>˽wB!xfLPPOelL#]\@xEc$}~EI [7d܎ST&KnV]!d$~QŦucw*bjvlG_ճeW9e@4^)R0CnlLs>(vBҮ^ҙmJH K7.}c> F1qi]s։Gfgi|SN^-:1Jrx+u8'PP f`m@j+ tDmAEw%Rd"ZӾp`|0>7SaԎBVK#E;sV;<3vmY|ag=1݇=9%#iN 4n~ؕ[*s%(1lpec4@~R?0`ZrkO&٧9L+ ڦ^0)89xK{lZ1y&e֤aeNz:g)C%A% :JR ⧱͟y$PO  2}Zгp< :{T@ORRdxZݚ 2_)1YoWq>2 C6+HAtQ]f1Q|R pCtgM״lr^@JIߗ_ԏBgZDDh=cE''k= s:nY]ա-߈Ƌ60XԲ4憢oweLo@O$oOFEjd·pI=PKG3kRF٫+?/#9XϼA'AD,a/NgihHhg>C-չ[f.=3'oQtb73{_ vz)rY=tR 0Gg =؜g'wj =Bz&6N |qLgbA,2ivC>>&sFK]8SG1\5dœF[rkmQWF LN驛U+10elB2>ZeZdbX(] y!A-#}9t'`i~G+yFwu!čB֝OULł,G^oU X) Hpl5#3懽WEIϠlu,~x|!{KtPo`EB+Xm@eFbXHʕt=ߺ{i*'8k{:^q;H=`0vz-y±^(<˩Zph☗6هroAAN4^0UdԓI5zD( Dbof8q.eX\ eD^߷L(4%hQbpnzF[X8bNJcN)#Ҕh;a]^j,>ӂe |i5L ;2%(cȼ2G;{i {0'YY19AbgSO#m9̋3 oBW.[![|PNhl<]@1W^_mU Nz! T?|,؋iNhVPMʘ5M!pk5xOw ke,HaDŽ9&:G`p\ǯBB|8dr\t'00jVlB$dy 8w:4 ϩ$KX#i-.0ofKOȣ/ȧXJZI̅(;NIظri/SڢE4E둾 "9:cm]g;gxfx3.ncᰒ蕺QZ N8*3ӳu=P ֓&{`1( Wqx@L/gu lf2 >[F={~o 0^R0o1074TZ ^ .mIm4H{Ӭ *CqLhV>o(40JsNF5$ᶄ-=5ZWqO"y数ak&?6QRM;{=j-Lys؎(3Lq1FzGm2h$͆XĕkreZMLoE(D6oc'n\itrjpX!6^L-vOS Ӆ@U,BY*zpozC'I+ Uŀ̓zapjpkeݨ>NRۨ󸈃 +onGaD_-f]8PC\R;^ 1}ht[uyA~ ft8`ʻׅqo1}6ΟdPi7O Mϵ G%z><arb] 7c xѽ,u"%%ǀ;%q2*=Dr3ٷ^D_qB/Ap#m܋1aEW TtpI<;I8sLpא)nn/D).LR%nUD)I>2h =mo8+1 [rȁCe#W6PrH#~@GRB!Slt㤏s{Hxl?8uy.Q޴>7Jc%N$noAz:ZoX Qi(<{Vзυ?/aRwޯEnYQF2_L!pK{r9[(4lJW-3*yOj5'D(oI<$:qFCݴMap㌌Cd&<]9缞"bR?IbW*6R֨ʁI ̉zqm}/QrULl-lMe)gd;L\6v6$` e➔ exw"O%8|㝴4zJ$Ր+ܩgTӴ^m@B33GS3- bXR/Ɩ29(Y%~C友f(K fP!>h?6޿/s-<^RdZՌ ~c _!K<竍 1@!]4n_M'֊F7z*;, L-9Y()~X&(\(ȝ4Cֿ{Pn ߘl = &g7rW|`&db6F%U/a>"PGcM0?W: SX>uI:Kωz#+>{ 7ݒf͚ewmMrAs֞^?d9C/~ Z POL"Ϝw3Ӽ* =9|\k4?z+JV-=ef&Xg|FϓJX”\Ԅ<%N/FPXQP{Si+-H31BU~01^@oj\LA|)v Ya+"IukF'ˈY.ZS+ؙ|"ܽ6K!ke.+] 86YGbDR/N_Ȝ?D4F%b4?Q|6/;)OQvƏ}J k͢ Q]kO}Q\k}~4-*im1U òd D8w}SOF Uo҅zm7  ǿ poV.!`'╉}]kqAq.E gO5:{uoC`0'HC耛2qSHt1I8(@0gq[nhMq]sGAfW;z)1G 0ͷ@MReqģ##ڛn+Péʰ9b{jQ>^hTjFȝ%Zbw9& n>eqW3 {T;R:$UCHjgC,BNVJږE]!˼V; +X㪫pN"pKjr#H oq 1jЕXinE-v5\T`N5?HNYؔ=l>j܂zA"DC!1j #aA8UW'C?WHcP^h0`X"m<[;lyIU:S3Wv XDUzв% o zo~$T$@*9= niRk)V琍 cPVсտMϟ 7.IۉfAKMnx"CGI8x}$T#ΠT4 h9y [/Kȗ|gf@)RO^4]S_s)X. }pΨGH,BlMJ :IƤ=6~཰VWc/52W.99eᚬtSqG"6N](rd 0 ^6?K0pt%"W[JxHw'ZP&z]tFϩ,3찴tC8E@VcvTIKDY妩|D>;8ndTWg;9a]Yg3F,O*zp}ک0FKIHz3݊O ˁDc, ݖ.!%B*r#@H㹗Ir'7f @8d_HSFWtOHL@Y~,YV.E!gV ٷu./q鎶*r,KX1hUM7#y'Dn(TRB=Xnӳbb`Gja=)3iqZ@[BLo.Oս7rz:@ aޑ?!HM9zq9ci$EĹzHЯ&]~qjwSe``?\wMAMt KȀ=SxNEM9N{'q11jթO4pZN ɚ8Q Bx-\_zWAtz/ǔv8gsJ2!I` G赭"Pe|OU#@W˨rI/(up 5xpa$ߡ gܘ'I`}Pk)FuQN[EOۖ:`>->ӧ+B<'&+*2%G0Th.*Q|gpDdAgE,]@u2Lpp$8In,˘Ecvyõ~NoFO|(ҹDufCUq 婉蝃l{3B2PCbp[ }(*Bg P"\MvF!w*bBdr\T-1;q,NŮ{c헬>XɈ8Ӯ|XksKe#xJABAС,ز-uܛ7{pb{! hРzRoס Če:&QL`gO?R @)#a"OKI=nE\$'~ U>V  wᩒ"0Pͥ۹Ye[!H (*hSmz':zb&/@YӐ-t񢛛UvH›2j-8PF8-=ZY( [}X^t6!g3XETMDvf iuQcҔ;Q8U{^ &f#Cqmjg̿eXB*#nghlaKshᰣ}=b׊ V̳4q|rڼ 03j;?Ke(PMcxw%(Ca g %TA's06YH\g'qk[A񃯐*9J5Ϸt\ZIJB9RawiUۍ`#Bq ̛iZ#{HzEPXN5}""g {yǎC1S5xP#зl' (\&j=E1&$Ч. ~ߛS[XA%DF+Ωu\Qz[lhkXI/4m[%UV&쬺-2sG!{壟y,-,LX`/U8`t`yГń+0Iq65p۲3 ǁ+LI&䚼cidŮi!s.?bwNm;ӂ'Iag_qݥSȱ7rtA7a?@9kKӝWW"얄SBxOQ0d\<V4v8`.kW QZw-Qsk$>ђyv)DpeLgҠ6hÖ9ȽwԼ`NEѨ:kANDZhpl/& > ހ0u(ɕj5GgP ՄV]SmAU?ʿ%IhFGq &_#j@[!&z); l^R*R`l? u8n;Y-eϲ&ϜXE#0h7K#fKM8c:*o==R();rf)7nks${rm &8PiMB, q/`V.jysk}nPvo-q gy^IņE+^5 u'ې uDh-)(I:\t3IZ#3lVfs+x4Eo$VvbǖJqOUj5TU5@RƝV3$njo$(@8XZ`Z@ڒ/V]PmtS~Kqì.d_+L{ƊtFr/VܥL*:QM5568cȤSSNy0_trhЬm`L=?f ut ҥUȎCVLw4dj>Yhl>2W|Q4ݔδ ձ\UÌ4v[-%wIwͩ i8) kpZfHN,_c^Ňp֨-ՙbܬaɄgV3?=dL"X %L)hU~J|_̛ȵ" ٱ_>^drfYWc?2=ntb#vYR-4͘ PrqU޷n:bG)%d+]>V,:96`{jRr:$I(_rgDZ7q5WxB~< )+@W)&2*ƍ>y5ćb#VmeQ[O",Sґ+E ;Uf-e4 ',-uD. fˎ +OgT͝q )1X,%?+ohTp[q{I{U^ ~v09طT=IGjyɡbb{U&$E6p6ʋbRrY'\j+!~]"_$ sNj?6ɢ!aUV^ QNȇeghm$XY`4`#a?-`TZAmxMXZnf ?(n%f!dmDDOrz|mͫ De8E͛ɷ\ٕN9=;R0-Oe *tDJPD|n&r[b_XzmsDƻL-GI{tR &.#|t]DF-.w0 OL(䥵@O>2 kuު,E$ !\c`SX"51֞[{n:-ۆ0z($<+*gaOeQxseC8a X̜ˉ.I.Dytf m2+MK-=vL* iI-ȸˢGVU21֘h];]0Z!GCfen

    zۺRl"Fsr?#)`A)BwIGLcMΫ)ڮJlCp1L;˸WSqt0k! aV1r^,[*;3.%K"-*᰼?%Cj'kn6J_yx q^u(_B1VpCQa:%JPǛz-SjeK[pIn]IN:gf4l$}wҦ^3awt9"\(4X NЍ]A.w:ߑ5-BԁB+IIոE.afl! ҽ j/L&~mdH/i"F8=4 G~g)+jEv8#&$`Z!x#[lZb]%/.C;z9F(N w]rpONJ,oaK6(ůI1Mn9[>p&F6@2J vηZ}]p9n#جN =6|XH{˕ ]{"@R ϪIC ا^Fkq~kL?ӟKR}-{d/6rA"i2.AJXy`& mĠBz{EC7ӋlaTYܷȁ Uk , 4޶-qi*O2WF?C9is8GR{BSMC%w zV{uGBWlb޾QtJ-BV /'s{EIܛ(J:%fw`^6З WNy#9$ʓA+SO*ҢMHWI;AU*U%}=9sf{jd ,y+L3z)jj 'Sva?AW8r-Mexݼjn0 Ŗiht3r~kU70Q?W }zQ{w*sV`ŝfz'`RƇS$wՓIQ_޴c>-i:$v DZYމ؄d|?w3cAY RBD/bMfZ1uz=+aVѫoRX,Urj[rg:x\ [卯q)_& X;Xק/ %`&웢Gߗ!;Vxov}PS.oZ*`52#[ x?&]ۘŒ=g3J/ǘTrjᑤi.TedٖHOpV:,4nZ? LinjdNZDy}sg@ܡQf * Χ@p~_-Ѷ ~uk9~H>2jMT\lh]Í!`xσ]2Kr31P Hr=lZNL8v_+-a#wȻF{+MpSw]Z,t1׽.6$%{.'XeҟxzBbV4 ?S&(e2_M@^ Q:?F(˽]U `f Cu`K*\SV"teEuA.;>)I|edFlAI;F2k34M3~H4Աۚ\$-MkMIjӽL<R f qqe t30c}-Ki}jWn; u9)`9Q([SkrAO$i68 kҰ+E|FlMvTp;R0M[B&AyM`pOH^H3%hF$q?zO"Jc(#(L Y!~ DELzQ$X?i.ə 5m*TZHuڍpQC*m|bd_mCǿ\T}&E/';8 NΖ}"(8m 21`)E_}cRv>P1_wO⑳<-;`-5@}"*]UɡiGmTG.(E%Iq.,MpS _G-_Dk!~1vJ7nNصKZ5R.5nl6d7an\5  B t) 699FUL+Bh%݉uZĺ2%0q&J1}C^EY#sY]qV 9xO3RT-&`# FdкڨA=(pN&i4>}xm4Y$KC̎zݨ"7yWବZnH~j4JD*B0@;>t_Ԑ@ƠN;i%e+Qr1Q,ga*w˓Xľ lLT6?ꎭ,F wu94ydWu8$lXʎh ܜY~QDoK?^ B=)7"H/E1}dD|肐&)Z5v#釫O&M?^<3kĄ}C֜Db]BG COyAs*Ձj3V[4kV=s-gLOrT@y!18pH'ZRLYM)Az&Ez4'>wJ6vvax'U:\SGHc\8D@gIkXEYBޠo[j,8 xn0d6w\$=% 5fP-I3LrM9۱Pϟ]`\\~Pdhz'.kƯ%@Kh)<"ẃTX]O$Jw '}@KeP|z*`BV_#yimnb#C`Gl A|1[m/AbikޖWCN϶}F`U uCsv$NnU siީ#>X盽D;)Q1E;S<h^ϒ\} E92RSAi0r8;@o2R !΀Ʀ6$ũXoQDHkXO:c'e),*f顂~DESZ0y|(x-N~iheR^M{R(E=>J6 ʎ-) :[úTWl&MX9LL:J&'5y\KDnKEkAܤW%o[Qq zx+!Ggl*sL;I51^k?0;oh?=7둚aB,J3n6 Yl;]c)yN/bt&d _Y> ۭgN\AP6!CӋKq1\C(wz}?E!߮ ϴxnttX,300О&И٥AT#?]8wXc-g8m̢dGl}kvZLd$ g<#+O6<<UfΑ S|~$7ċum* 7Yt2= 5iDA0cYTnB~8H|'`_ M%d䟠S ?~ ;d'YɇmPLes7yy2Oٳt"(!gaU9 l&>q-*kઝyG>FWmCQ^a9G^[8.NR+ĎTK)yb?<l$}֛#GB^||tu)eAKaHd4 &`X {&N%W7PsXow *# z}Q]aPVk\SHP˧Cb*m<>Ω(nz" .bO+,I4?,dCn9]baNM(6^C$t&v} >,o=@c. afl٣Q]oT NB&]&]Vus+-MKJNwptQ=X %9C-!}f<50arBrnM:YRXLΎAqe ,#5 4Ih vsyё`l#A!҇PJs+<,|ᙦKqTSzOZ`5f48ӚѽNwny9fPةB`-0hT,ڬ*GSplXjp?8- (8Rlpr[#%UN_M-rmHKhVkqY_tm4`gaZ΢{[^% 8 1+G@Qۭ2NĵJ )-@MǐLC)lc 5Ԯ56]bcN“ZE$ OixN(^L/76C= ʅFh5.v?/1 A-GC˶%\2.=0'_ar_`˽ND*1΀$Eid"c$YGǀ5fbԚ9NPyE,im<[r$:x6,[AhAOt|I7 ӘD}kLroGV|^Z(f٫m0(<0ĂFB|m(PMe +am?y[Kwo/;4D%Z60>'`zke[-6Ի S;&؋Jo5n eK;&OuT̈.d iF8ٵr8-ETUi$F盥c, /OQh~j2oL6+ 6m85U7oKt^I? {Ѯ>Sdώƚ}K*2{,~#\!ocw %yoL4WqG xk?SIdΥntqŧhGNv}u>G7S6`kȎŴPe%GmȈ\ ogܐBFuK8d•:^C^Y+>_xWH/^'PBͨzamD:^ni:>Y wON\ak#4[O2|* *4t zX>Jk`}cn-)D,ٹ'[gW+ng̒C?bMokNc)`d!nMkË{y. gC, -tL$Ih<@GD<].$LAp 3tV+'D`\H~5(o 2p X㘼bBɀCP}i*/Z8F*i|ߝ`fPb"m'+پ }15v^_]{7lU#C LDfT@?*|ek@}VQ;@hZ-ux %}*bVpկjΜ57,# 6+lsײ~銀[O8Gi&F&f ɯYM9to-EsqJa*7:qN1(.2;&Y/cC`oe q~ޟv6?Y#6FJgz*D9x<_q!Mս43bk ЀvTQgqX؛~c@ҸR*:TO8[8}R<ͩ_͉$Etc<-"fn|%aO֕F2sER2N:>AsuR5c}٤ivߎ*(~/fPʸE%V%}Z~3/˴F!0wx|l}H |$JTȒ+y5kgo!o#9Y w|/5Xcf%^6Yo*N TjZ-@tCǾ}k\{3A餞wTZ9C%#adYw XsJ͑M"'L}NYY-~0??MHV݃% *HFCIDL(Wf[ȯē4٭Q "NGxٱX7 n13|oK#?ns~1#%B>6w;k%Rh]Bh?P;{K^a=VDӯ] Ƞ{ciuP&joƥoVȉX! 溄C> {8|j$`/պ|ei@ؕA'+`/Jg:FO|ʈGKRI 6si@vd KKcfH .ᠥXG%gbY2E~Zm tk͈H9zaA-}C󉒘5=Ŧ#pl[!d<[VkGa%&ٜAQV%']EnG/-$/2EpWJe,%^\ϣBM=Bw>03ǩj׻ъ rAsrѐdT;_{:4_v_5ZN%1n$#jR 5G[Ő͠1-CF%OT |6 / [Rb_L`VT|Q&[aj6mf|:oz7<3dnh$2 )utyO噞ğȺ/G6%npDxXxrfRQ>o^DWuRbYI0rmvk|KH 1˫JE1s6 &)n 9 ٥Ŗ60rX2t.&td4=X3liJf0^]=j&&9.4 Q,J(D|EmZ>)s>R^]"^7upVjH 1yG9iaRt Ya]b)7}&+>t=u!f^ z𐢶XBw~vFN8bk0uM Uuu8 4_{3k|%m?oL <> S2EĈSCypdvô=I~Bx9Q(:nK;;!20PRH3XnQ2ppACosʑ(ij{kOQO{{/ɼd ^.-B;&J8"R L`dtJ"1%d̙Ƞ\pg>opƐDt!HkG08CG"8c28BEcȾ?bl;-dԮ.$+c]t%[N5rx6<(zmzN9C*)ZDg?mMP G?K]v.J `"^2bxO{ =u%uS9ZXY KveE| +PP@D-rVG.7:V]ڲ~`S' .&iT0&aHݼ@йr` uM %uʣߌf "\M`p;{?`J3 W~|_ 9`~ՓpW!u&PľԾn#3Xw]]Rٷ_JDL C7 lj 1 dP:r [\4c ;|>f}Rw"%v?8h̀7 TugZ||23T*9y[To bWʒH!5@ZMkrbXe*WNv O V  01QeKhԮ'jHmo]x>:hdQT.\p[oux?Cq >g顅W8ˀYsAE ua79CGVGi,KH1RG #\|s&'d!g*S=RN|V/9Bir חz3ic-A]#t$XsVG &-٣Н3 ?j@ZsWF̱Թzd8 Ic ҤmksѳRH!8f3ރUiL3S6j]9ӕ파 dy\JbA tBi"&zjc W#5wI;ȘYmt4xU1Y/P9A’i{@,rmqn.r·: ֐.a<9_Bxb9RV6SHRxMqlK`L]J$L[UH98/.e+4~ P)L :gT jԏݳThZv6 ڄNxo8@cgu>]<U|$(ڒY\cڔt[B_,x7En7Yd9)ڹw_ߺY/vi9 QF6ZPiwK O͜ \/Lj"%r̀1n8ZP~4sz w-JR6~6YyE*_i5n$fg ~@F9pO` j?KLqe2;Ed ?2ִ$ȥUk2n0de6%(&yDBP%F yv)Iq9?FCR &fjzR`dDr 2H\z;v®|*Uӑ#(;EL>L)VD{:"ߍWai&zO:smmgwN1%LlĐi[' t vz饠PKGb6j^>4iDgŚ&0<_[ ]Xkϣ4i39_?3LE;o6p89F\9)Aܦ6mQgr E֐I ?n|/7 cq).(+[Vs=K4T^w9ub*2ȢpA9\BpiDph:|kq|5 qƩȜU=%Kt"lE,2YAl#̘&Չ? |J*0t#mG 8>3D^Wis@s#) x9JJRx]KWSJ{E\6$`TkҽW/5HXEgۣLR7C{Rǐ9ᾖ)Hkrm"PY.Ʒ'iI0I:Ӯ''%׌u.pz8OV\$T/mZU4u#k4%WE`_/gs`N#6P=WJ Cnm0(3sى[ᝥڕZ|DU,EG zDZx9 衅_ QfR Lpr$n$J -{CKri+?3ƗkW;f|p];{(/Ư8p-J?̵c=TǺ{yoCf& .M3& j`eYV$_$3Z(FtqY}ț'VeG.=1auWٿ[ö|9+°KVCw/eN9mTS[K<0ἶ`qJ!TUx䶐mY-s9ezu7-@Hqu-kzh?3Qb3v!\PUŷ|?ЬT0"):-CGѕұ-Ylokv.Bc@tI,NXz8\Jr6 j INMJ$tr¶Tg\Ge2@[7nFƤLͺ bd~ypLHߔ>SX1c;; DyQb}^h]ŒW7B Aez3X lRКɔ>uka^"5[_=lVNJ$Nd{X'»<ނs(-PJX+d68L/ AʖiKBX8@GGS7JL[%XSQ0pd-OظP r( fQu0|:5K" .A]h{2y98 $VMڨ78(#SxՖ|1:ЯKAQ|MkЯ0ۊ`p;Y#b>f/8hԤOng[F;?j\˺֞PP.;Py F^`ۦbm9qmw ;׻t NWW4h=einiq r}o&x@eM Ť_}x}p;>' QsMx^qYD! )àlYhs2܉x4rh1&z'/b ԁ>-\d"nm[U߲KK[* E̺0T̻l;iH/+ c~[G`m &<:}[A~'v S){ޤF[d06E%&Y9i͞X{R)YRtIyT߉BSibxxsV,MGy_=Ta ig6OjգӼBǟb҂(T9S֯-TnZ1f5Ywܖn\Q K{QXnGÝ_ sLH o%96f?XV2A'Z:5@Y6 zʂ7Kp/m戉qY:tًJiQvJ\ReP+H4KyǏweWiV!mώzcXM;H8e(*yՉm˲; 焄^mk[b$wc87=lZ-< uTGov Zh,2g[AeH#HΌZ AS@Ç1q34pS¢LwO@%<%|%t_r@80=y#3yalAIbpK =vVQϵ5l a9$;B^Liufao:j/i{r j wSfa].ȟq. n c׹}BA^3 /, ֍R bo3MCed WbnqYt[1݃ߦlh,o(ׇSmΔ4*jßb‘_:` 罿\6̣}*3ڤd*lA`Y1HEkڈM1j$k#}t^œ[U.|\dT-hTvI.vo+l$=2;z5ɬv0}bhl}\p|nD9ŔsרWN+_D(0>lQiy`vݺSc]Az0U X5Anj 8')s];ҘN) Y:˭q*:/`+m|8D%dBq ݬ] |zKɦ1,XXo冼n^,e/G'ew#p#:] E`ySwGcZ.~|DmS?Eup(C%ާ1A;T!|_FVG>Uu߆^%!4Ty_C:d?ם;K}Jur pBP0Nx23fY v7YTvb?;)_XN;tVb -ưv"l7-2#,Jkz OALC"ʘGb@@PuMRЧ&xׄnL]#\5]ެQBΌYGw뒯F @rlgS}]1]c({zގW,{EK5bVCKvߎD>eLYGz3F@N&'X92H5`{02Dcd_nh>oE&])mVHK?tY?q&$]{?`I=ト8sbb&|} g&rjy)WJq\3.&6G, #d"&Vp[Hnn^L`Gm團}a2paÞ9 %?Tzdz%c)rchxU$5%Ԭ{3 @D~0+H"D,rFoz;U`~qs49?F# m3e4:ez]0E\ زwSw~͹AI6$'(NjOZ aFW7}f S"g{gҋeoՓnGx/rփb!^9=Д@c^uD6Ed^y6ӵ2WqdejgJF(5/҇e)D`a= _'ѓ\l`GGr27o(wpׄ–yK{3 v6C-gY' AeީpCr1،^Xlz+e޷pZ~Q9rE'3>W j"7 3Zwp~[N\` tr W$ښV0a%4#މn24rZqof}[lPQ| :Qrz|;͗iѳI7R`ħlR(#mQ|p :KJk"^%j#8ސnD-|8e1nm (L9z"ެjdOA:L`"c[4~`++O`IǞ~v+ bb.WPٟVfT֜x@vt{zlrEC~I+vw \ `߽N-eIfr{%qJ`\%mr%m h :'CyMn-.8 :1̐T1ߞ~#y,{P[,t ӋU՟Њ\OX{bP!<+ȣyVc bݼkv5*=8AX!B$勜0/w | =-E%D-j0}ny7XdL3r#b.-A7w|'{U4LAbX/N߯  !O5\ʰGtyPJ5}+i:N.ҏO>덐3cM Gj/`/ xf5+torx#ʡ{ooWN>SEt) UfǞ>B%X~3Dx$<υF)'^V{x/,3d͚傧@d zc%wyٽh$lI]yD*}uR(slԿxi S&I^jFcCcb=xdkmz"FãL 3Ğ7^7-ƊJc\<2. mV̀) 9 NÑpuS@VK<SFGmS[#iY3%%9h$)O^ 7[| "BcS`c;cF'YSGF*.ˡW3M`5;jҒN=vURI[V C1vz"(ʓPTc} R4V`Td3&e;=S,/y-W-Wߢ;o#U Ʃ&eP^R 5<qeaCw$=)I`U-T'V|5;Tǖ!|CބG wFS؉ Hy~L_RJ7󍆜Hyw\U!(\B=7p [Л#Jn5.v&VS_JFݟTRtvG54v`׌yQ \ ]'0L m$CB.r'Z)3J{y*oJw6reV:q@L3nֶE{uY0TN$,4%R('`/sU3_Pϵ6K.ccTD*rK9rĩ` `*oe4;"͗XMkR e~MCo;-Q0o>YAIfFW޵2ݗ-MkՋmkaӝ@Y~f2$wM~&S)^vY5zpfֆ+6;ZG@}Y{H/&~xL".n)H]% U6HjR-tmc ۘ l9h“:23/! /6S0ś{`O ĭ9mRdW)Fz;EZvf]0-/. 9boEPr:qR{[hӡ^?XS(?.(AaLW-^vEu.T4&HCYvtSl:kDZt aܸ_0Bt1DBYJ G T _e*@=aFLBkWsM֚UΤ͇oyΤ];zAcѿ2W52 n?k3ZDLmP4$#{My>ʢ"R|1dTlci 5ܣg 5P8{J NKL=/zf6y+4gtIVs:?Jj# kod=.ucBn8RDw AƨՂIND͜J?[vR{Ρ)hI+;vѬ H^G :I(Cϗso6 ֶƏDž&JinMgmvT_CzÞ!)eɴ9)jlr.mTDg/՚[/\=歏V>fj-fB_\ⶦoD)#k]t7nr@\ǐoFfq:0Fxx_wGwzTa*1ldcD{ #uk3{϶/ ilbxmpT ѧ?r&5TXSVv/Zdf?HYaU Ej2o,:Շ@/lroʗx\*V۩fr8qDMP_Y25\$h/󚢗. L֍@3Wͬt9}DEfK %m:!r*|ًªУYcMNRa:M\>kST89#F%,m݊ l5>H45eX%\qNxmYg7;2/,M g;++/\)Pi+̝GޯƘ{/.$Y[|R,;ʪhoBYR{ꪅ"zvtY?b rK\ ֹ݆ $K9 /aƆngi]q3SC=qyc@8f+&;̅3 նgN"#nN&'gr;XHaۚ?rEL$OWÑˎLx-jih3Kd4?['O65` ̸P@Th[Oo-Yt=s!j1ذ6 1I"8 \:.V;{?f>MA.%і9SBĴmVd @B&~6bRy1&p!EvH1G3`rT ÔfXz2uє^z0Nkַ'\%mK7ԝԧ`,@ꜭ$ 4 x]:'R]8:,Wٹo/2Ux%aoF.`Jm [Cd٠B)R/sB,]_N'wssyw/pOy4ڪC!ϼY ½uo#!c0eAļ* 3ft %Fy .PgSQKJX|'̭-W$|#$ H.%0Ţ]vVxMxE[YvԜXC'0]O@5&E/ ? -TRsC lVr#{Liɉ5p*Taw?}K ߁N&HhTAZ(Eu #|E_\,)U#&EWseu*LT+OU^Jk/c ouIxXgʘ`ʥ6Xq-SC%KO8v3vvvZDջY FZ|S%T9[8 u{]}humkyXt`_ y\Hd4h/rK*l҃bc`McS|pЖ/~.E]q9ܗ/}H7bED *qJSzM;mާ/L+(g`Qt@ܚ@%6jdL͊flVܙOj!R_"vLj(_6`vs 9bD2".Fj]I)mxzt_R'Ti"IPgϦv'4AAYףݜͫ$ [qg u) ܈<^lp_gXNY u^fmm-,0 4@iiJ8^FZwLg`<4&`!=Q бW*1/ԕe[Cpb9J@B!4ܺw2Euw+ܛVd0X\b^Dr'F; u+U@mȧ7֞*mjl:T߁GaU$k^l0;Nyi]XAXeN̬:%oTܬ'E;l>-gʞ?,ҥc˸YzL,Z48׮έ;x,myk,7$Yp(ݿovD?oTL6FoD#0垾ӂp6ON4VI/S[%joG#ÎL: 3%a2[!ҁ+=hcw;?+]zmj$W~Lbɍ7mC&*&|K%.zG{ճ).8B+7 #!l+-']T:d$'V"ѓ P?rz~@"V~[CI_/5%\&^f )J?@IJq70-0ڬX;h'13Dd"?5<gD#:;hj%2܁.xjl ʩ{j"/ a/W&&di ) w } YS_jVEb|J &7+MP4U!9NQԥRCBÅڢf!aA]EgR>e-0*Z킩˴gJ E`Bv/N䁀t]C^W'؂+fYwhΟXr:xk%}ؙ>E][A IT')lVckaU9ABt3L^&B(ѻ[ůˬ]GWȌzAi*&d)}珐U+RDBI8%z5]:7cZ=ol4H
ڰk|wbѳ0j>SxxI^*A%ةSZ^bu+{! -z|\:8jWf-- KIhEhy8uI'i7V]Y{_cI4dy|Sqݏ88D ]TyswǸtQo>K!SIqn+szeAsdtXcL  Iysyd`up|h )eW =0P{[$v& 1E>9#Q2|;ya@1}+j$,ω:45WWEn[o(u.< e3cg=[-*`4dx m_^Z;Cgiz&}nd)X hb~HɃkXHzTU3-(q k^q[l)6y.ﱑ1EZ }Iv8!>PȲ6eK1]A2,bVV?R8$HQ\w/Wk}H\=@Ԏ$mB>S#ϩDu.S6-[< bqːqsG?Gm2OCUhEZ*-., rݝMHH7XDĬϓy6U׼Ӌm{a  Нz{!~Q3̰v綔,Ӳh>ձbN+ m h!WH:ap MBY&|zux= +/P5ftei_1yO&f*C+Vh}fɈJHG`)JA񓉝(tU?ց#K 6HJإGD>[[yc[T;Ê窒ޣ[2/{H=JZ0mٕ;QUxF|d[3ۮ|AXH<1xi!,>Dٺ 599`*5Īu_H/Wf΁W~a3e+I-/?pgMO.1M߫*FWi#;^F7.*{N`%a5ڎRᣘ)QmjAΕֿ[ d+ٖwⵍHQ7XS`kVK1< ɑLn &y}{`[V_-!0<ޱCrBrDux؊`}K7 dq,W2j92~⪴H1SLN1&v tSB:R mmGKOʌ .!qQ~SAq aR~< qqܚAow?D )k0<ӛ__FlL.rc`_EXuOI:: 2*dx6z=*̵,ǜD@# X LVOMQf1O)v4T >VC ""xMO˗h?"־|n>ߟ9(F3_[bd]2$)5%Y~cbRϗJ>x!TRXCՓ50ꮟgfl񎺍 =Eo&B ~=(hU4pQ71>FBVp/ ,d(;O|@ь@ݤ/Bs+bCvkn5򹷲Z:m0BGpBc %@.Acw=˚^S#{P՗NHlhTd,~/`#9 c\E=w' 37k -a(Kڙ\GX | m˥wYNҕ}Nb27cl%4`ɹRkNy[/)/lnլŸ9ۢE<%J,@r3nu"zrP}iծKO 8)!ATIϑ/̤ǚ+#0T2+ݹ+~fluHyuVJj.4YKX Ly=QɩJL?6Wa Pr~lIoeܻ6i&XM.@ǡ2 W!IPEMeL}/t#|JvN8W4O"ϳ MpU'c%}fS좔y|t~2HB,9 n0:Z. M,ෛzl~Ԡo;)ؼ()Kd*$e.JLEuvTJt7n=~_ZQX(8߿|0X 9ϔH J":67/oj%zTGS]-Y6 Âx_!  bqfVN\ 7jHQmiozm"-SrVtsJ _S!:.E8ByD#F6 ٤ET63H$ /QA7͋!ˍ"Pa #t'ܳAO>q85!BOo_/9; 0%Ð#) CR^#M0FY["qw;~L}4]{YȧM U">mr"<~&ZN)JŃDԚf+%PVzNKu oӱ]$hƍw/;9Gcc"T۵m-5}P0n_S,' Q攲0Iq)milFߥ9:EZI n4VB*.c-- Z4>WFE4^r:MswbG,YFTxU8+i 8è_-.[$87:Aoz)$]# yn5lM@i¥Rë,3%p}蟞S#%`zȨ.qx @}MȳEgD /v.΅^U$ ((֤琩^/x m~|`\ήMރE0;E B. %KE"g2=1=Q`>U)a@HqZ5.Ae3 yUWr>g tH 30n!%6hYu` Sy?I?fE[G~P‹I^R>z x7oM?$m {32mkSz9Gh qV4On6O'FxOȗH_9 ~lB/6f 9c\w"7nÉkho}E4qԀ<}{W3bV\ Y/7 \ V%mDX}Gk|.#,B HV#3{4 Kt]v|DBy5N! ^xvJ_" 8Crƽ. k) :}\DUAM.kT͢Xt[\,(Lj-PgrQyHP%܁d:_e-,6L$y⏉ #W\4Jn=ږ P:nʎց7:>F.-GnX3psaMJ[ۯZsHN qٕ 2Gh¬!$lt]TrRCf4GrOtS@! XYokV*^8_R/23W/,^"cE: I6_<:|c!*3t^gb@橊;9pvu;?_J}@ kز& ҝV^[T:"1?qf[/:_% ] j[ہ6s(s0SP16wRef~׎jpcq?}keёobzqq9:]Y nR7 34Mt:C)g$!vR֊#@Ȯt!1cP3uY$6X~?VBuׯ2TE= ")@{'E0^n8 P6Uj'$_2a4xb '_#p V&1->*2A_ f c54 YO/b&k&d'螋qFn~t3- =#3h\oT~o >VdLU'r3A.XmraG`M =*m}p3.%=̏>565I.dk~2c $x@Rָg$9Uhoq^l( |D.uV>wFlX 65u:CE0*@]7L>hcEݢ@֐< Dכ6]=k8K4~408[b#wM Y?t0Fr((;LsZVdui!1o$lTM%L*;)о⹮\M_6'P}[K 2ǰPP؟C#\&P'ZcJUwwT!/3n4v>9^yIxVq<30gEsq~ng7G2=nHxЭ<!ǡQHnI|GTٞ?z #jƖV8:6r]7C-꣡ ",N*] )v~j4*+6lUw2@m[Q '6=;ňͯðc5߃!A!iv1hs}lg  #4NI4CE%/4[hY,?`p]Suq?4Eś/AD=݉<t=UbYuZo.Еmdk[.$ԫW5i[4^&8}(Č"+3f{;Z*??F׋pҹrd%| E5xIMҔQa#nwX=o粙I*zڻus&=X| R\ 6'8&%b"o\`ZܒO6e$Jy$\ډļL|RY/dc>t$a52tqqI:Ȯ֐Bĥj5i|=6,i՛֮BS汦bn}T]z{[~,X$H(A~^qg > #}f#hО@c9ο["aj{ |lT/pǦ'mlK|lVLVTþ ۙĠ9#\;"  #d1x,xwc: $S4ְ Ofp2e/?>{lĖ-ә UL`GXwLUw})cj3grE9{ұ `$"*@a_b$ Wgҍ˗a7Q9oa=YD ђ򠉦 OqYCJL3bBMa QaNu7ĸxRN^^r~:T_٣k5v.hwxr\qsyg^K3WMg)-C芬5^ ظ|maٜV;"Ҽ$A9.|+lhx+PvzS?jehbBMMid\c-Ÿkdt5A&J*5>doP|0J3Ü[/:t`!3Y᜿Ku#iǼ)GJ*)S* ~z?+U,{0\w ERǾ ٰPֻ߮k(F5?ԽՒRX_ĮmVe[5stOf$ XXQȋT>LRfF6eJYX\qqT bVio"-0U\/}01neZ̄55t;Rmh)|GR>^b&s^G?_}.\tJr7UvΏf0evtި\ ;iH+MȀE?u{RX:EAy>Gm!L=cɳD# J1jZ.ACnc;Î.(k>N-ΡPT[ T}EкU.g͐շsbzp\!nFZ3G{+m,\QM:g C>T)k#܄"/ζYlyɱXahӳ9mABMA!~d@zM@LnɴH\siPnaFk;͙ZA:37͂FTM]C({Ū隃n}2,;^ \QSX! lܽC 'ZdZD87hGOV.4~oIr,@F*=d'JEUm1p27Zi sґzju1$C6\ĔC^dyV;?z?E-M gäNux ͇)% ia+mT &iT4 CB3p OdoOo0Iaݍt5ir 2h.3A]}d72-Z eSdI5~XA&9z gJ1:V,BظBy]5XlI>!ުaOIBfFLTv um gSdCGC /QpuuФ Ӊ ГL, ag_L%EI}U,3re}@EBB@t/_<*z*r) z֞Ua yiU@yfaam]S3AsSV 1Մ;5o ' Ja%"#y j%f:y ;w3f|Ԅ2er]yN?*'7WXf*[ zL2ȾP-.6jYϘE|{r8WYߺ PYq4yꈏJ\yRf8ւ]LW^!r,ZnUُIR@BMRu5Oţ{{Rq[tE33ޜUX0jHr pf3 C66Rb[Ŀ3MZdK.p|5ۑztm9Q(]ĚVRj * 35Lvp:dVasyifM^7Q']𗟸1yeԂ3" =ENL gOg?.R}o(l2u[VADw6@ڞ5林CF~gJU%흃/UBeJQSڶ)sN!F1Cg4I)zLX,XSp8!ڻqDWXChʒVo ޲JuOj_5 "lJxλA (b+U:J2z_[2ywMP78_kWxz="bH( W;^nÀ=j;Z!mk 31]\)IB/^ENXj0`r4{rteQ,5Ef[Jf`]e2=Ad-hݪc:TLH?7L@ 4ym;գCS侈ۙ$ A Qn;>DeŲިh \]_S}_Ad]Z !ւTKuPw"GkFT?·xJjŠK>V[8*GL D=vWJޚgƁоRq~40Q~KOX|uȀywZ {xTN#By Rw: ?n/J.|MtX7Q6WD` X{"9t;?BӿYmM@7;ߜVabZx|_ vJbvf@h_^tA&BΑ"w3;mٻFO Nt/{Nv +WTh ;E]Y'LіQTvс}5bl$]t(#F<=u$-1]ȓ8MRk EZArnϹrҕb'$t%5Xk;K;j7tEVymCO5 ū}O-0qھ6Qc[G?C > y)N((7į]dܣ\I6x%ȸ. ?)y^ds*p)G[ykxwIn͹!tUXȑ}[@"r驇CDb՛L2X(J;#PǙ\Eټة-n, 5bomhT0iSZQw7PbV Pp$,9[ʃ^|_nw=E#u?5 1nΖki">ph[YE =i{XV^+C8]qg-M!MmOi*S@;ͥVk`iBaê9:76g>c9mAVzV|~0$ KeIQ}Dl'p>k7 `Y"usCl,Dz6ؽ\;d[7f 6z0Dס#4Dkn&rBi DWs4Fx>@?]"7 9 rR<2qR(BUCN! >>P~峣nxN(\PBM,*pyJlI /El[2b[Brt-1|e7(~9NiŊ"BpkJ|-̟0[Yc2xQG|+8XJm͒"仧34"^Ps b U) 4x_:xejps(+!%`9Ji1D*g/]],G@i&^ZFGs[Y|3_JShaA6MX!WkO2smٸ|zVk}ϜG3NUz\qp'˓` :>ẀH^42 $d\ |sQ9R*~5qT8i|[/20!2.rl/ėx}$:k&Njs$"D-9ޟ0VՂ|Yge1r"d{i2 ɲkh.y]ssš`,*Nirag ʡ [㎰Qdqi7O/*&I<by$}is7`5r`Ej6ӰX "cNtYf6߈"<:|7:Hro?M;nU!vjdeEkD)I$JT0ŷvj)(bv2O@fbUWEY^9p#Ŷ< LxB $Q?Y Ϯ зӮ·}8m6z6Azk34yx˥Zp/G._ )(_ܠ;?V,F0Ԝ!B+PJGmph>T7[4i.ET>OKQ,] ͟D'Tc᪘<[~vHO$*M p%Af0:=PK9G糰?ʝ{; %y];%HٵEzU!|*Iy˒wUIJSMWEF{ɘ AkQ])A.ڬl}YKW]U檅b_U~ ΐ(M|YgryJ6t-H)W?[I×i~1/ޯ*`!4ƀ_KV6`6VEG0 Թ䐕?|&%wPbMDQx7UPNxA^ id^`2j {;D EtQymRZBe*P|bYJ%[6tqF ԷF&GoR`a%o:WGLiTDΘy9yتOmOǩuk{=Xf?Vp3rs_[FOq}D`tlBᬺxYYReNaW8/tD,v=k_ ) O+_$ Rz7;+!uEMCY- |}NxUz"f݀2/b2B-8XbbAγj?,ir"ٔP'6/wy3Exmv=*x{"V/ޗ.Ru Isx4N$ZNb@fьB~UqMn\١^"Nv;޽ xf˿`eEYItt8nW xy5&j d-Jl +ӏ+1mia\Qxl#$riOruBP7ʅoSҮ5Lⷈ3.Q Fyq1xp܋M98i`sݤ3&NVn鎔Ή SJv`uv;pq(jcm%5%w^Zj-H_`)/" s x > y9+G 4*G.|2>#-- avcg{|˅^iG0"Tt^9[9 OB. ]pǠcv>PoPwOY@5'y^2~R_V30apAډ2_CX/g x9VZLj4&EQ^H~,s#?k,aVch}6jW LM/VS"n5_)-n!3aZLӚp*S@k<$XF5v@us'нYH6.!׶e}ΞD[XWo.}ؼxw(OҶ[Z!ՎZ Y]gвeQy1*>Co8ΤgM7Q| nJHy¤]vT2%?m#kkFz1f.xђ6?~tw?f֑tӹWl+MeÑxށs #l! ;6  ~$J3p 5xcܘ2 __hJ䉵daN7DTslZ '-=/qM!P.sl.[7*pt/Z@WƇ}!ê[%}Eh*" KF>2NY΅qhRc,vmCo~g_H%jx)4ZC`~ݣ]PoQ7We*1p*j&}NujB& M6֠NxzcԍrMrB8=lg萯ud6wymh0X^(XËCEzC1b\n\D##{ Xgjmd3 ! 'DtlDt7|!{[h-Q𮒹{"W:3ԍR(0a^g^<]5m^_f \?iڑKP{EouJ Sx%Ǿl pTa~7QM$,gE|Eg#lgaUnV/5hyТ-?ɩI!}g:02=}&"W,08JkkvV m$XubDӆ<L:Rw{aaLSm# k\ڹ`Q, No4>o\kW;Ak;0+kkƖB}m*%|R6-lL9û{k4Z!. >{ eH3I8=0ܔ@޺Ns{90|c(dah(174IT +Wz,ԅx)8'FN fK /r:%O 5 -] #*aǕdDYP>3Д3V#sHY:?Z:ix $6/D²kC/ECJ*[u:u(<:2~Tb5Ss`.K*&f# ~85=5 0Kqc> ķ` Tf}PL LvbV?k}qKEK̂YU6\d}s &).c򨆢>M8x!UWi`oݹȺVq},)r>;*qWc;=#cS/ IțQYnD&bi쨬Қ-3㑐:^ș]qX@)| &ա;nN)}mTiuq˛#Ik_I׌'WץxxCo%\ [=%)9!dc+>8ZA=^]a =S. *_@E- Jn+>,6l}|߶5LQ.p8˅&:J#}+k1bav2ϗ\<%[XǿҌdt31F#lHݴX+NkF~2G c|{R=ηS'?NtEElMZS6|amq3ʦHҝ!S"%-n"w ; mL5ו,;"< ٍ+Eۡxv|C!2IzyeqV1("ӈ6-I!m(z `=튣XF)/O>3t/FM8p \=*wu(<.XF@a]T7upfF'vT]{͛G\;|x^7FG SxkQzӭ 7C˾$,z$d@G /yrTys8a3^ t^ R(rцiJ2 󎪋,KUS۪np,&jRˬ՜HQGTy'4KsՋBӜm@Ϡ7 :vg%xY{yVZ"mcFO1b P1D5aL&'`fj8cߞZ0QVeMlxRZjV ӭ/U|y/_ҧnįF~;Kl2At".;FJլH=;($xغIGg{im3P!4=kO"<?3є&Dkܘh.~:P >h{)-Բ3ÁboPVB?byށTvjt %V,tq( s2XS8_!4I`s"luw=h 3?1];!io{n+镣6HvajeN R%]0!*rJ:Mո޿sL=54f.SRQԈ>UC [O 6MFpB.fޅ*Wm`hW(%\TϱqRQ 0ͽ'2KŢl(pitJ:̥6`p g0o7yFhCN23@#L-z2H&2Ǘhޥ^o*yWL<}^_79dq59u=ԩvG*jX:SAH'; JwO)Zۧb#s$_F|*/X;ؿ|I23IJ- nބ3 Nd*r] -rDoKZH9"wC $i23~2+[%E\ 0cqZ#jC{:u}Ͱʺ_f9נNTimOĝT5pIfVTg>]>hq1%d?/Cv]b^ W-sm{)s#Jc+#G %3K]Rso8La}d1IFI2Sj)~O/\&41^ٟm"<u&rfvr6x1ʧ;ף$kH+2@(: X h蓫k:\A'.(슱㮼 >A N?փ}W+h68fBQE 2f}-a*&ՀFZEEWGLLgy9)A5M,ucC2 a :l\:-u+"<" 2߮:|NUs+Tո?ߗb1D'ѼٓUul<8sK ERŹ O1 _ǛD@VWGؽfl>ա9C8i[G=PJ ?ԅT4 :;[&yGAw笾n*tstB5'U%z˼ՙo?4Cl V, N#c AXR .W#&Wt23X"-%0K^T֔~%"8O䲘'(S$irj D͈Xt0!\׵9\YlF L0 mnyxlج{rlM`nuRJBVp'zڿVQo+`k!<szq5ZWPI۶I>l_NPt^BZ,Olzt/w _h&SRxF'[LJW BwcQl lίIo1[#.ƕ-DJj!8TDQK Qmի7c[[;kkrk_(4(|Xٱ!V^YTpC^e*+_lUM/(& bl|ftsb%;GsꭑjX.CbӶ+44y΢Jo))${(`r|5|} >{9;d캸ȆA,w< [GAoQCK0y q*K{Ǽi˭sŌ–AGnWBbm- zNhiVerI@,&Om#e"BlITmQjTIA\k~vlYg4wwuD´݅4Zt$\q|mڇMLi^қDTknqZ( C!)ujrAXPw5( j8B]%qq}.(Gڦ횤&9;@kIr2T#Fk2o0RG;Ocv(W ה[=NK}zEYg[1,~4SQkRK/ݢialZrg:m;> sL>ni)ӛ[TT_$ б' dF W# h Jtcxu7`Ṿ`S!܋`V4/'{FŀYk1)Ӈ# *W#L%zR'o!rsMG-k)^J{j|_Ow f0gQml e TهA>>G%btNԭDtc|69 X/PG^nW1ڈ< |Rqx"#TSW}p1Li&9=qRu<3ӝj|+hG0yIŸ3X ZZ tԳ?y,tl,!d`5V$Mw:!A+JŭY~J^7"L^-Cu@T7gQHPjvcE[ٽ$GNHIи㠅`>JYDgpϏ*=#u[JimةY8S=hxJ~X$јhSh &UMɚEuB?1|<ny!CdyD{D?\#M5/&a'ŌQ᫬e5r>ia+'?nfTs$e폪o?rJX#q$+omS~0kG-g@ !TUJb>$-2IIg-aIRm>bBqFdk>5z {\Ȓ"7WlG0̢.GzK1aP"7Ƨj!Tf_ǹ- %(k)k ,t}8qTWsɳ5 "1$ޮ@F#}`9/+Hjn`VL͝R> _4Ci'X0oM-e+@!j~1fB QuCqKz'f4Um[s0Yj.U(߉[W\$ĐbE&O V%"Ux#ZXSz ltct'ez_a|q%Ae ő<ޟIŸ]̰ F/_$CTd.,b_SD3Fs ;wu$:n.fE]s>-)7Ԛv=;G x9aSON,_ux_VmV- \ Kb} W[XK4ѸS&jx2E6iY!c[o ^1,!l4r3_S~)9( (* AbJ wn"ȽlV*k)l!U训E8q9HX/B"2ZN@«Hõ_먙nb.2[p٘3pC Y:M*wsk׍$4N8OB\@5p5hJ>0r>oQMkI1MUj1{=?!S^"Wzgg9jL$&MrpW{e+Z{xw JD2slv\T@/>!Olhen@ydzZ.,5"%hD!}R:ն gǴʱnՒ|^mOOsgsﺱ@V]ylȣgHg`sYgB?nQgSDqN4FJg{Sۏf` ͠I( fMA\lIxrə՝Ѳ L{wC]]kU^zŵ@hAO'XyUUOI;:Nw>Kv {;/DaNx`j3P[Kc9BcΓ0G=tQ0|Զ wj}0j(NCȶRuW<$kg6< CH|_ !UU3 l,N0oc kw,OB9$)VEM\ _ɗEcH>5RTDW3Ge<rM5L>[,eNaBT]5-8cZ] ^p˺ a]G#QEԸrOJ5FV+@bPy'A#OkR%b\@ $PIf?{)BG䂾Cm ULioޒE@`G|_ުy+=gt{X9?0g h/dUl[;L1e"XtXo@H1 N OYX27hG|ݱɂq.z_kGR﬊SM~G6tIBV&!{W0vϽF\0H۩'y};|(&2Qp]^G )FhNxz雠 ם-*b 4⦚i{Ҩm2J_OCSR'ΉAK wz<.Ok J9 GD,J#uo`GsvA@f\z3(^E+@rKl@ov5Ze)FgUHUT5ÜR>I:BЫµehJ>X|&TTUi$>̲ nMe4ɵh|ANx H[`끷nC #" $Eэ{Xəs?]{|.i=wX^<',aF)4Hk7 cypr ?M7lbrS܎6;kWcLg'a|/~Ry9Ju&XvƣH?8߀L[%ϥT Q\2322:ᗬ$s/!Fl'[Fhp lH&bf:igT\7"9хb]Զpz8IŦq'1 7ΘG  (`}3 //]Rk m8HBlEYD6<3Uvnz{wiM`a]UmH] ֖$]olؿF-~&ԃHRdP5J|4 bF0wCMr[`} CẆ,Ԛf YN ߧzUQ^H׃R"80k/ɣN>'a~$8aV!移Iɯv^+x2xZ m $G/#M#6Q;SK | ^v=kSHuwi~mج@m&j|lO$R4zJ 87f)r7y(v~ Iu̻a`ĬFıR|;0!54|/heG:&bUsָGPK(|+6Q99T'dq#x cPoQ$Xhsc@hO Hgouӟ4cxhLeAY vK/E=Y$#Jeݢo'}#mtk.kE̢e+BٔO Vf(c_3z9&WifJ~RRiB ͰPnuW٢jG$"d,v K%pGfa2Ê:u&*T%O)8c'!tLÄo:<{6}W^ey"?'Jv8kal<3a`gB^'?JPQi:Ӵ݂ *Ԕ磫BKr)\ SgS+ dv2[+/qjly;bT6MGDa1GZk,HP܊Sy# =D)EBx?$KcHʤaZ-c9Z J|<府KoJ7}Q/3®Ua.qT/H lEO=Ф!RX8 {yJ,v)^-F@e3>D[o+H146u7?mn%$ _vT/ǂ$8"ZT> Q7]]>vx=nsȚ!kV@,kjhTJF pN$j3nEF6vbcMێ?X~#-:O3Fτ~5je~ =JyX~1eZYA['~B\`RY^JaR=+'~W}pWx>w.ۼE?Wv5MDn{HSm/rCY4=Ҋ"Q?PTt©̿S{2X,l9?iV Oe)y]-+̲XzrE<"{PhTz$%YEZrZhX97Ea2yl+茚CeyZ}Sbl(HaПje|P">p}MȓVP}oec0mq7 2zn~OIk$ED i,JLo?=ohU CE$Mm)? 'ʗxI_[?jQ8 PQ&ȣ!Uب^ۃ>~VG{w^ڪ~ɰTm/bt'Рp~`atQQ:Bz.gEZB%_Ym OYAac;ғ;Bڱ doR"]KU t|_O%{"~f8C0!$> Ql>xUN.4+Y 5WFD?^[8J-2lT=zCwCUџ/KXI,Zуvp쎞vau+~%=nGHfgSᐔ5\ UFUlwQV;XeH#Gcqa-!kCy P"zF@X6@ B MebGW9`IR5A4s* I]U>g=_pS rr(8u@LcY-gfK&}ʃF?|N̝Kx8r2Eqݏfdə@1ݤ8%旔)@Y-Fr O.YUdL!){@R>K1Yf.9;f[֕ {<}B}a0+I:SN;<p _) 89er _@#rCDvn7N{r! o Mϑv6RӶZifxv(kBӎڟşYZInP4[FҷS6 knOnӗ,tASU ade=NZm钽Oi swK( rx2MSuؠptY}#beL{􋯳@F Eis*b|ЂTz(,*ͨG[r0i^s7'9z[ P~E\q<Ɛ?Lޡ ƙBvSy ͂O $uxld%9Rx" iJy,1K՚Y28ALlN )Ɔ*a]bU4q ~l2WE)sȁ8RtJڄzA)*P24%~6|-٧6hï蛞^'NZ e[;Wwruso^S Vգ(\<_$cW~}O5DnI}XN@7H,nD9b;M D DMj .Sԁ(n>6?bhn4L(aKIaoIt?_TFnx'̓eT:DdVf=ZǎsQN0r. Pt#1ׅoeךq.&/t}@G (=:z ݫte)~m"d٠wr *mn`ٽ\`d!{DEICP(]le͑qxmVFS>E(~|b++% PH%:6'=byj =[s=JHf BKom/A{iBfq Ad7+@%J^sTo0qX| ;f(N) qqh#q\'!xjD')C5Pu XJ#S@. *$0PKP H>] #E# 9t\BQ׋HA:jyD#m`Gy ƒ, Im|=xO qqظ}r1phJ@wEsG :+lN\2=^80y eyg%̼ Iii1xdr ޗ-5owJ=-ާZg!&7t\ġ͢t'̛QYT$D*z KdGhcu4ī=6%KG~P!pb\pHJlBxځ>ipn?˜I?KH<sNߍ(%qN [eX.΀Y[0$x9`(ne4hF_f?Dj@\GM˗8aD,QK*o C O Ν6*GBV"Z:&!ҀT?#1Zos\ϵbneM\,c5FjPY<ҲH^Uu#'xw5&?꘮%3JG.k{ [^wR,ԣ91ړh@=Kt)կ;K4,3X;ZK?RЎ3#_pOX)]6!u-fuNԓi(=SVqDu'=߬p *4[^E#,>R&޶asVc@ M ]&.Gڳ!e[~; `.2. | drᆤnҘWKv4c]O]^ܬh19Zް|W/> x,`VHXldzA)܈LVI0>FT>=%+S{Wf֬\F~Ր,{D3/%VLہ$CVb eeW%<$,fs6X?D%?u}TU"P_fCP 4J/`+{iJmמr()3ѺdrzOs(\N5~C%htg Eab+9=:\߷t+A5?v5XǗd Djry2$Kn^GHeMx۸56A.U"'i [eys~3*l1C~Ue侬p\FB)$iwQ-7u LǒfD((\SfV"$LIsSNTOb_-U{nYс6tWC{L%abvb\K|@A|[jE#;[y<@5! 8ȕ1|0/VީB1Lhɋܢ:+7$S{Jn1mα&{r]bmaɈa4."l7AcjIxꤼT$2_5d`AIRasj6%//.XVzxtOM*>ule)cԒ gfk=s;;wA :ilвG63e[C+i 7W2uInj]}l/]6.I gƌya;x$8]ܞʷ ;Mʃ*h+ĴQb WX4xa?H/l28G X{VDk3bizitAi]O9 oYH ]NȐ?@癯GDQv"SJaOJǡ%l;untA]<$bfQ$A٨G+J}Ul+_(heG+8'&*wmc  k ~Ēb*.ڙ#uslb\.QqPtLO*ݬ=0{5d>"NZR[MUr$vM`+b:6bgoc}X.hD0HEQ:Y 2GcY`T߮+d .)ՑXM ȉdvCU3GnK_ACRDASn5ky]}9j5M탨1.eelJd!Θ@n]#7zPsͧAR?2=d Ug[Y83N xe'` 60!l Du0z'rnQ*.+"/3MX_Js2^MӪ 2 K ƸHw}]jd%$"qAf68o|aaTS#WV ẖ{X 49/ҽa!,kT'D0,wDY7<ɏ kWJ] WĴ#K@ˑXݷh(PcbȦdV7uh&xn<{ tC)<2Qx7 >,} ĻZ13~U6&࢚!"J2;;p6URbE`^-_2ڭfW*vaw~X+h6]Vd1!VB&L ǮfLƖbW 18 #vbشbԼȌp ŝ'] [@/o $Z7{Q]mJEvFE:k ø|. z}ТHDh5wnVB4K/08IgYf_{X1L JRV|w.R viFT4wa "SX 5GjLz ~4m4=k8x֢Y2ĦbS1+[Ιc V_Vdky-amDPVhi/r y]|Ku4"ۺs͔i~bs"ܮ*S=R6|n#R;|E4C湀ւU2 Efgm- ^`9סs*Ѱ-]"̻8O_KA'Nl<#vuޚ\-l_/IaqHtڐˀE$HzchGOƱk \)f ]3^*C#[@Vb[ؓM%BgjٍG_b܄;'9iu&TDz' S'M0J.P5T\lQ3 2Pc}> uM/W unV[ [BfvX\Qn̋F^R3Ԧ5~CWj|ыBKi}qn;@794y1ō mCЫR/O3n})OoMNx vcLDt[=_?j-y -dTJk2xx%T*?hQp'kL 8#p+1۲E/"ܡU?Dnіεb_XD,?RmLȫq$jz.[d$>N[[hkdj ߇OgFVo_1ڨRBݟ0-nhy;; XC /]%buRW'jTNqwxU2V  d7/#Y U-jC.z(0Raw^ 5 o̔3d@YޮP!umݸo?8d~e|6aKjFy | >;쫈g)HVOFsTa58nGJdهY=P0璱C `k,,j2f>%;L}AR|_BLEfp]or.Gl G(4HC̈m<0!6L3 ɘ:\y'xݷF5H=9k43Z)!BUo9 D>̩"LrUAŅ[olP')ѯF߳y΍4[&5\oڏ;L]3)۟.!Ƌ{;5'^A_Ă?ZJHt8BzJ ]gv_iu@IP)Dr3-Jex[mfCjN͘?/Ht9 jy0Hrb!As/7ks)a v/ZKM{5Y`W/;Yrk̮RD _eVDokkSxw50WN^dܥIgs p/m:-; TM]w- Ȧ2C2cFlL7 $DzS/qg A8u #oGsYj78"HfEĥ]ùTԻY y)ʱXr'Ӡҳ =OxKw,aWuăyDFGv9Z% ()]JR^YStz,2`E#y8\ ;?0Sl]"֏ҩ~hAxCD^Y!'z~1.w92j8jf[EaP N+WSV-Z<"6COH#ȟG9d*-qr^U yFGIu=d<oHTm l0+0腩A;fcF(M=.u<)_G?PP7㝨ۖ_L/eX']cEQx5=)wZ>ޠO6fuGhwθ#g+@p6 LDyhm'Q6q1/ ~xG6$>43/>h3u4~Wl3ۯ#J`pM9gm(߾=)fRnu;GCh]DLּ/daY;lmͥm2B3$S˼{JMmC0ئ$t:=Tr.azTBy2=;ꐚ'8% =v%՟c>|Qmũ:[7nl,8fneKH5aTwfؔ<ػ\D~, o&<0k"!.;>gЫ6ɓ^ pF @,v]v/ pR |<O75A07St y0 %hyib> []4Q,9PR911].*̹#b?Ͽ&hR ^̆[X^,fs 1kvI 5h q}a&6Dx4>13YZk<4S@ m'ը^QJdj\vUa%AF/MHB}R)i,qP ˓0ksWtp#u!6ClAw~#{+a; Ea& InZv k@'J7e+0>m(b$l&ch/C%KӍ\c!9V;-wxZlUdK"-]x}5-+T2GO]Iۋ,ŀ;՘)nN|!AK'_CzT;eFRW0NV9"[+z?:<#@9jU?k:ۀ21VkNdt:4K nYӤ.!iIwDqVTLt  "F$~ de2:2:dبOgIYNWDHY5Uc[d04Tqp;WO]tOuo,>L4r[#q}O-Ę8+s\2Vكq&޾hg2@W o;%ž] զsuoO]䶏h ,Ǐ!`(] @ x \^UG!)±bF!e Tb {&;o6MDvM\2V4Vw6?LP)"=~ Nhʕ jMjn* ՓThCSO61D&E椣^Uvx?(q'XPWآcF_v$N1G1aF *`{["{K5W{776(HA߭p1E.,Fvi)8Mą'ɒv󆸀^)0ǽOQ8D#DW1e##sD7}rl&dZwBxv#q~ Vh >%1^N "Q9Zk0Y`!aDTKFnp˫Z^ e2/_ }t`cI4$'kB[d@AqRmV\X$ K`2H ΂2@DfPV\B܈&EKm8W/XP|fn 7]XU5,Z-˅Û%wm5řQder% T_KRrHo|GΟ`3̗Q-0A.3A! ` p*P+쒺xiDƹmCr;[c;3"/H|A~32ډ=3~)/$qY+ʣ=#{_C(Fr2nfŐ/GcQ* ~E 9%Pna5dؖ~,{)$2\)s//YIL?%P(6e[u~ V5A^j-Y=TM@:r`qӏʯh@Zb"]-r?|JOc҃| -10 [Iq>+7dT3~trV3LUZ,B/ Aкƽ;i2$3-nGռo ]kP8 ,F@dA-G œ-q;<1֎z⤏[*~k' &MLi>p+`Ϥ GKԕxW @}E* -Ż ^?Rwvh^ګ͹}4-lʚLsW(~)STsbwdTxv%/q!k$ID+3dx*fo3&Q 1< N:kkFH8O>sWb+Eoa i<^qilN<O!H֭0eIcyymXRe/nZ'>“m=1jĎŔhC&1:̸uv8HJLFvkbؔH PJ# &կii ΌSC>!w3*A{3"OG%\g3M U첎X&n$[qhC<"B>"MvUE4"aZ&4Y{DM f@uD3FD3[< 6dWnx NFYZ%FיU_HPa~(#t@;q&ᫌRHm^R[XKeU!oBG=r%Q:}رD$q'neQ5w Мid7@ΣB)~(ޣef=$y}u@߷bB:$H}xX.0Bwob|0ˀ_&ߟZUsDճJy:^D,@{gu{!6SB=@kx&:KE\^nHvQ\$) @C31 *R:Hu]w*  ʌ8~[bGlL'wq:{_h2ܠ+*L]]`5@}EJcc)Jx #&Uݠl =ArA&+S3tV !^6hKw3SGmO HXyƽUh4-nѤX˦&WMEȩ.]!; u2-):u dxPm-"gH&-;vָ&~@Y87&*;m}4.rUM/]g[2V<)J >ZOFtI(P [(;VqЭmz%S0 *IN C\>DhPդɡʰ'}9G ?=J['p*OҎsF=/]iU..ہMltLNn_1ubzrUj F2 'NaHzN5Ӟ*/[hsj:Cv ǪݰHQ<5skSǼ3@=O= UXOX=8סdrޓ>iu^ Y_~C+j)BfG{сGc.dF) DQ=աwbI,D)PDq)X0L8^$w70YE6h::Pf {;OL+1U𽢑a)ñ}Ɏ ˶@;oڮ[#.BWKv2 AiJ 8aZ0)'qS&KOQrXiD¥R-&!`xľ^C)Mjhnō o1?{?P"@h'\x]|?nUs )o;Ln rm*W Ȧ>z]rFǐvuIB gV:<>$Y>cYASZ2Oc5ՊH::?[-to2ܗKGa3ճ2E>CY' L5MyuFRTH3 śew YtDUz+ZjӍH(L,VK[܆!Ski [&i4z;]aeyK4}k.yoHǥ928b5\z9Yw37b(g s6hFK[ .}P)FS ~e1D}>;?b:LU:KCBt| ◑j|B}zny)iPrظ0q=\8*cZO}[4^0fdeªd~4 !+)ÊIwh5޾vw`J{ӕm{h=k/!2ꗢ/Z5Y-&#Wn? hm-ḧVWU\]k; 6to j1Q|)8A,oPM{'kF4z4Tʢ_Q=m mpM>K̨-Dci SJ̝hgIڪ |OdV3D$̩I"E8fJ G`tbhcl@ RaGYd'byah y Bйn,?qI1gy;2Wx]}Y]"y{ yualgs|X`#OݺGTOFu Yb/24" *Qsb ~T|7$g}a­MGs<@=SlbHMv@i]'i-9g$7-oJ ={ ruc?² y|(7ɼG"P |F<0c؋!*Az" {qBxE-1l@صwTW;}ia}]SB`CEwyZČG?\_YuK- f>UVvTc/=Ě!&~j]n2h7{3ׅO9Ga|$ d/Sw un̼YoxX.snj7<8D&xF9m=. v\`ה1>~dQkh>nC L:0b~YӔm0~w nB)~T$ OwHȶj¾RE? Ӿd|J;A"\yxLfHetYCSKqvWbtE۵la"5u> Mco_T@gWHpd* 9jxJG]d=Oc›"&NV`ݣ&`@ U MELn`t;Gn #ˤ KfGGoLm>'U/WT$䔍'R݅Tst w ?}.̚au0쟠49nW2&f0#邓12#FdDE۹$ p'4oU#J%'Kq)7+noi}UɂiG'|`uAI2FYN&lN{dC?;Uo51=KޖD).+ʓTKɘlE?ew0rR[]~a%sԄE/b'DiU Ev'υ>յ3.{+BHC;s kɸ/1d‹;A~!hq7v_tmHŀ!=gXсLgk j%];1IZ+֪\ psdͬ轡ᖉ{Z&pE!l\)܍˳_cENzwsRsǻ2%Yѿy֬o?H@ڴI b\KdW$Py1V/HGZ,!9)%]ar#jj?\rܐ`[9Ld[* Є=CxC@_{V)W]Zgމ/la6DH /&N-;uZN'ձ(-ѰS|2m ȣFȘQh@>vt-%uM{6TBʊ_N ͜,tg弸9,;-{etfaYBz}ӕ4TOg@ ͓f|B,jSDBr*L c*{TE" #aytW˘6tL=[5{ %z0}j&cfl;QLuWpi-A^R)y a5J\p<ѯO`:Eo| |p!|W/ 2S=`^pҙ6gxDI&\`&H&ĊZFP=;X9 kn|t3}@Cw;_[eb7MjW⎠%taσ,W_P0fDY0Ne8 ک%fw^fصT*L|[,6Ba]fAini<!H|ϙv4>)Bc@̯[͓t_ܢn@L+9FDa':а"12kpF؇sXÉ?=WK,FAX#1Bq/I  iIMld)Gae-W hNU>pҒC2L,BSS9%< ēcKYZa1 {>sJa§gHJWpx{aoONflH ]&<2jJ?MQ*zFbYqRx$|޴hN^ac5A2 4=BLvfKM0KFLnh*"SӰnlR_ zPJLH-uyAB٣NhVdFj7Wiln4BiA[k`>yc<[b~o¢I ;;5;uBJ2GVHa AzB6H}xnsJ_ Ȓl'ͯ9;Vq7P$n€H[1' 33SPxb`G/io9u3 I7(|Y{sKÞ1H;,=L0/m) Վ0F:!AJ`e_ y#]b72@|O xbsXB\gon?Đj+X^)cݏ@7S6NCB[ݴ8@6&WWІmA9,%͂&ޤ%̣$kl=)2bM!-R(Ob,_սK7miIoh !]&`QK]4ƣgpe-MxU.DhۏT31Oև$x0zK5ꎿ;5%(Sk 2t$}!; 䣔i 9ڋRKQ5CȪ}}iW]QB+ !~m*(}w"3Zb$yȏVn9bpҹy.۵z5̠^TɚOYtG.nNTGO|Mڗk[0maٰDErމP-wZȜ#aL5?u~fpNU1zAlakQ՜ovkR{V!.AAP5ߔ SܟƯ&4:UT@` _㶕$Mj~XGE9]]]p(M DTZQ@ kmo ʛ#ix ~89"vF0J̊_V0RF,WHEi;EغSϛWk=~ BJbn\Ft*ן-ṳ̊4Ю\K3.q%88Z#d!tpԹMqx9+3ɨ> v5X4qVs2 řq8$Vsc g*V4Jv\2nC?a[T=8aqJɛ4B]f=D> (d,4|vy,ːBE@*#VSa`,&m &/aCn Gb/$zJoyXJG\%"w/d98ցyFA$@-{ЅdK=̛̌OzDʼDn dKyc-GI P3{~%u_VsAjw#<dU:vkkx{( Ŷ RbSHyr[rX|gEG%n(1_ H%7?gM6BbھqD>x#]G(/&"ZK_;^$(;hVv!1<-F6>O"daz3b}V}%1("*ԊmCߧӠ^u?™*~9l֪+2?TcOn|zNRAoHpI4τ-e xdچ'&!ң[-*}iIƟtހuiA\׊ O Īx4Bːrl\Ucl&V&_MF@l7{ͩϷJK59__b\1nVo _ *kZyI6#TZ;w)nqcnHd Ń5 QO;jo+Gė, El,B䦔Pl!@g$"$I6 <iߗQy_v )=Lpy޴.%uS,2Z>,ۨ(6wӘu&lEWea7ڪF^$9a53\X}Uc.t ͭh{ņe-j􎙧H8^lrawX `7<;x>`.rRҿLc'B0ڥsRBꭘx+lqU:BL_QS  9b0{V- YRtO+*+N{%{f?H }oGg)|5(Ct=$!ʋEQ'g^5&]vo9$FEszϴhef/z63Յ-@>Lrx2ס0XsSw|xhm ^@qW /X1X6p>|znmq_SZ²C/32LeQB;y9CXZKB_MB4!0$rY WH5mڍK|N\L> !' gvX3rz0Yz7@ ^&8prYϩFSn.gCÔ5IŹ6zZ1K͸_-/>69ߜlg.:guC@"Ql1%G?`s¥KQT0dG.3F8w΃x I9zTHޥU;k@ʝߨma1,Q5U֗/#jO&%{O9N@Ok{c&@+6/Vu0qgZ9Fhɚ1Z?,({$Ur)/OV5Xu:ЎnZXQfnӁj.&eR?HMoI)"6μ6/-- iƉ򈛚H(k^_ʉJ'ߡ=D'qD-1chIBBTeL֗ O#A 26#VJnq7ɾ578F3@!9l U=`06,2"?;0#}9'r_Ɲ騖5RǑҠ`@זr(KݚJ40xhY;qY-<;dዄYk7Dvlv5Y =" M"_|^Nr e歽qxpn5kmTE{btFd͙I>d8CsbrBn+9bRN(sZ5{#1*׵+'kB8T$`'ݽc㟊saՓaXegd:dl'">y݉qyt{yYΗ5B ؟bqCg3o\j:r>VO(yv*GZ_1,mLJ Om4 mUl~<(X|Ik[=n@~ߑ඄;OSlMW$}Lca=>4[˳Qnׂm>qwzxdq=?3O"=A_nx{6=99١/2 gitHMXꈠݳ)-mB >b[~ 1r %ls,:0NAGg r_@ܽE`GӰ"!D^h㳦.SP?S. u?UBK!!\܋LV1@0ʂ6pRͺـkbW3_ޭPf"F=.[ѳ˂v,u 1#JZlir|jӔ|ol>.קV1 ?;:]zqjʓ`J:qxQZ& ڛ]%UL,9q2ܢrT^5f՝~)K򳙚A*N?~^@Z#"2{|h~|h o+GG/I&CHK|bI'qP4_1ܾ;#BW@[{ ~Bob>њe@.k$؂xF~ BF %B)+iA~Y>_F.V6g0 )!{h4C p`\\,A휮^3RSpbP\.7o:0FH]&&y@t͵GųԜG @˜AۮBtz K-26: N?Sq<uP-+,j c p =6 cqR us+$g+}yumb!Rfi%:McgFEsN`: IqI@m5d7.S l&i\ڂLLu^gz@!Xi*"`2o5 JOY-p{J G8 mQn/DF6ȃXWGᦟgVԇ(A@)K WUC`Vֻ.%hqZv IjU6R??ޥWdiG )^.yU\[Öɹm;5V͎j``dQ!<i]p@DYuلs)r/÷c:au`u9 + ꗴlM5A_QoXx KA%a LASalQ 'w|5Q0[Sccc R05=1p3 Wh018,sn[CpD1Py' 7U\&4kՄsCmZBr kdX[{CbgJw72*ܢ S,0 ^?|ݶq$v=&QQyK>&Fx`z @2l.z7.9:jp.2/˫3IvMIhTB xW#FV^6p8m .!'Lfס=Tlqʄv QT1P~-9ו$.I̜z*Кi@{x5w# I>,vOmʉD-@I`c?,6]wd۫~XFBzAÓ?9&'썃32c7`dhw`C)-.ӳwSz{}Ѥ)njr{t(= {!3 >=(}(06,~FyhXm}[!] K66OP'83#Q`tޚd: L9t2XL~ ;^M#}h>!U%R8;-뮺e3eYqCC $IdX _wՒǗ퍪3SW@Ok8cx]GObӈJ \Eɞ]A _l&?d׏v";@رatl[le(H+u +Q5"jjgϿpA@T/ Zp0 A0s$m-7z)[ˎYWez! |g u~tD5O`ǁTFGw,AOȧS u"Q.u|3_^F%FĀυϺ'G~{o gcy_1MxFO3՗}e.zHiQޝ0LG+_A kor(Nڋ\F&iM@i'O &[ |+̽)G IDS3fCg+l (~.Տ!vwUʟSCfSذ0}bd]o ekQ4,ºhNha%'.}V) ӱm6nZ\)5+;>vNJ2x c x] 6;^Ks/œ({V`xi@@m9kh DcďCY g3/ڌCr@7y{vF%+]PRFHܓ]6JMy廉O!ȞCJ.`?) "u8mG|?z&:~DWgC Z4^Р6Bm6s vf Tb-BTHB!7M%出JK1 90UW90c~i~(4fD}v#m/~#BvU(}6RaSfOKN bi-.MXg6jVw]ҢgFgGbmwjLO Xi#PARNsob:WTې9* gd`N)7LK/i9:.C`WӼ(" lPngNo3z &q-?_;[;x=3]E/G, TKty86vD raxr!∹? 0&{AS~&Ez r A1[+8g/{c-6VǷJ !<@i<|{ 4yt!wkߴUMoBp:Pb2q=U`{p&FmZV#JzvC΅?"_w`>򒞰Zģ@{^ ,/%9^/0(ҳ IǻL%_4oaIAtIaZtDHi A3T'A,w)d$7'*>V뼛KS?nghS(% &؉yٽ9GBIe#<8oS3$n}͕ Fi.k(T1O{n <)AzTX:X٨0/N30GE\Kg$m׍c;bv?jn|ZDX%\č;S`BMjk2;K`-V.WҡؐD80`5l6l_%&@GD,?urAsoh[9TaUuntwhI[$oox3 4p<Nx:jwӬۇi3w5MXXɾKjz@F`DǮP΁XuczCJ.v\ }f7ޠJbY$PL_;l&"YcWiѢX7Jڍ NJͲRt 6A-[w:-17EKpݳwxޕBo!_ZaAd46 ӁBſb!”+?HZ(H7M۔.vOp5+YH)_@yON\ťur+e0,D-~sN h)LjS.]Ie"rs 1POـ~,?7.k_q)ŏ |(S0|Sr6P:.Us #^;"{i*)ņoPm_° :]SЁ^0erNM/8U1 tubRo2Ho.FRȍfC=D(M' Wa1ޜ@k l"A%d/,F#{lsj( Wd0$o`eǖ(WՍLڽGJ)fT}]/̦z>r%3*[0`F}81Jj8SCD6ǐ:%M>yT2Ch J>Y^ ""h$n\Y KkCz3:4bt ̆RF%+R$@:xnpBi"JPrPmgzn槬7:rh3ו$LBi0|6Jk&q0ır=_P/0c*w,2'dH ]c=d1)4\3e[st2|yUr}4=H*-դ+H|si)dL!4 s"V(kGK}J(9աiW҈ gO$XI7_-NʤiQwaF#xOs|ylߨIS4;V"MH~E4^ ?:g~Ϝ~LYi9q7 ntcA1ބ!n Mbznq!n:w8+mHC? z,4=<#BMX`]\?nV#fM )R"QK^f\vy֚>)Zˉ/G~Ij3W$sadBG^/dx gɎSy@ z9Mw`Y^n[5HHWvva.H}C_t)?^0bИ]qOJ w>-fx1۪;1YlV&w'D HW4)J`!6*W2 ;×vJYP=rx/N @43SEvͼQjDN5I4 r&Չ񎕿ABWj+_eJג"1M) q}""i+7}C<4ŵ| OP'Жtj"swmu‚v@e9 p"U0*MUz`Mj9ZXϸ94Whx` >CQ[`3ADkX,j}\Eo6||.sZ)_ 9W<7G]k`j iĄ^4\.dl+m޹U "/N 'StMXeI@߿m]B]P:֠c4%]OSwVnl}kr9nfI2] R3+&Зn#<|DakȉiP^-si&˸?Y#Z/[-[- .]v 0岀{V3^G3>+!ȸ7K^Z#Au+a_Dgq*P9I  By?xAeֈX^6y}zî̔X ״Mp3!9amVH2xl6P׆OIYH6bh-so:DGjt`hsemHN0;_c0D¸$M*v(V{^FG)M]N[ʁr[2 `^V-;m(1~uU ~>*e̾>I{cLrF ]7( ߝ<S s."rO1ԶkA3BUíS,n&q6Lk= R?BR\$'9RFy$|, [RYz)\i+.wVZΝ'9sa?ΰ6zw e"G *WdN=.K=/RMj/:x$?:}CWn4]K83n$s8lS]\'>aQ{qb,sZeڥ4c^K|]aPPݔ6?7C5sܗ0d}S lgBIkVUUT epzƤgnZ™&n(ͽDoSEc:HMzz<rAL?4XSTI)'i]is+{iqoi^jĨ\dpa+H6Q~s5-f Hsu,I,4k[,W+CAhҀ3A!hezk.{^cFvj_֎MWh0fP^>`ivm,*i8jWωK p+޿>iGfUf,QfLS;JwesREf'焼@.\!ukӍ4W_m+OzV 8n()\hu4cU($$GT6-*;x9nksn{=-M91ehH#w]u[b٦[]yiRd}d'oq#P撙௒K'_k_\FzʠUJIҼPFѓ<x-FWЛmΗDk~Bffh_a!xX\ -V`S&P߃D0Ḍi¢O C4`ɕn4'4rDKFCšTbKҬ}LX@J9#Vk6cG*135NG;qz GvkIIMn]֜=*wo:+g4h1W6yx]N w^_SKr.N8MRGA"#&TRw9PW_蘗e+·cAV+7\Rf:}Vd . QZ߫\B 3UE{-B N4P_hgB"l*Zٵ.mS{L(rRd}PD" (QЮX"'Ċy 4?™l`sb5=+XulVR^R{թ#Ųpڝcp C䫐)=i2xӠpVLƴl!e]S"N<~LLjTie1kE$H~>.+Ʊ G,ttF>&{otQ+yP{=٢?mGOh/κ3i fσ>߼ʹݶ=&mX~_+kZYuڶZ9>^YW02#hM,}XJ$'.ŋ|2`hOO eǠWz]#yw:[DkڷJ.ܐ3At8~|{+R͏CydS}d p% n#@=Ǹ) {URR4V҆[! z썁ΗhY_qT|qw ~H^UˣXZI ܅}Es8lY~@I?|gH7X~22Kڎ y)ybc}wR.(aJu2fP2-?ԿY Ƭ=^՝UlfeM5f˼ODKY} J!{Y|fF<Ff[ZN D)rGqs{R"AJ7j u򷼃BF>|.[Z,P)}=~ I T).٤ - 1+Kܢ LR 9Iޚ~M8,@&(Sw8 yDBG+"J#r9y1`UcU/* KLJʛV>Tg&[,;&k9~s 8Wm_CԱ[TSC%Q9 VU$JK"cL)`Saxڱ~ u pKmЌerKa]v&l^_ec|SB^UF7G6*>Fb{\+,KN'rK=g] OnbZh{ڄ\kw4o^ڴ^Cj ϑ vGoI- =gS;AujIyƗ )[/)Jȥ?2eb=@1\1(HfyO{R,6P\ Fs\je2 aΖP__Ŵɮy}r\p 12J2=#cWv<ם t@vD;5A,iW (\$w;!ss":ό_>N!W?/WPp.Hsɳ};.-K%dP X^GdfT(tQЯSk{T6w}T&Eߘw늃#ߴ9=x޹f72\oYN@ [g"9Hlh$pZ-$XuJKg$ZKG|pZt>/7Ҡ;B o]2M#6k e.R6 -sqC \j AeR2U?s^Kڊ+zB@2Y'; QED䳍:p+,U Ǒ^Gy3l#X?.[`Q,rKo%uMOԐ)I܏cgۗoFCnmFBkQ)w'y.šzfي PF3SHC:J0r¦[T=yx L`y8+"xbf8sF;vjKa׻?lMʄ(2z6V8#aɴ qh~dfx%͉]؆|鹣A8(mkWVmZArI8oa 8gef. e0p(π[.+[XEogТZSݕ>j%ƙ Am}/lVi6K@kLJ-}ԶE;8-2BkNKUd.X}Ǜ|r+_(ɠ*ŕ4y&VNr^8B#Tp[4W6 }(|@(S5 ~LQB„IKhw)OT}{Yb]VtKUarKSh08nmT%Y4n u :'P^`boBb6Gdir溃XWL%̩AnMG" >G.%dTGT L&AFՖɠ{ TK3SRMTQ,;;## : lbҀ7W c i,/U=jLQ`Q:(Vr1K+yB3v~m<SSPZD@T~~ \ȴ6%e@ptnzdŨh+;cmNr--8{b<]3USn-n@גIn#fG6\#Ѵ)n|Âj]c7uėmEh`<˅oz$&=vK"ުL^̳"JXƄA*¬Mj68m 'y$Jf6@"lҾgOad.RFs{x- ?dS*tV&"% vʐĩ-3w%X⚑A“, *ҝ $PG)y` F3t:!]4٪nnQ;ѝ/Xc7ZK*sx`7FF! %/{rlE|s;$g޳ae)YW!z,~_ntWLy⊹5էzɬ@h\j掹Ĥ`A %~6ao@,~8.i4&%|hM&& Di;bBhp$c+<ﭡ*.[
r~','ʅR{=LB7ZZ(tv>~o+u0ĭT;oޕ^̚cߤv-h_^dQЕl0*UE_.3R\3 lz7]ϭJA 0j"S(ͧ 43nr$p0> :w̌KN7ʅw]i(/hMF辿I^莛QU}v$b[\*FA P@&ԘG ߓL8^hK%*]Rk>h{ +w,5\wF@jʵAW:P:PMH~3 T$p0!8FY<4_\q 8nBDŝ3|J<җqQ>4LSE5{XZ#idR֌8ߞ 2Q209|ɝt[L錳hZsTdI&yθk{ HՐR0[焍aZiv]ia9"Ow8ʕ.KDk= 0DC'v`T=rRɣpeYh;x W:XU^{W-YRlt F,$o]<(W 7.$B'75fYH-ts$ĸX^+9F;4Q D2VAZx$I/1ś3؁g´k,^FaEE\1/]O,I#l[UGXK =#c[ UNx\))5?!no3$ ,򏭜&ɉŹB{RrGHӁ_["n|?Aӑyw[WC 'Ld+(E`XQJF*\0z~N)LM/$w5{)`sdT-ظ; i.ֹnC[@[ཀ0^_1{!0U#v?\aVɍdH7cꄖk?+/c1%fMUL :bXԢuKA .Q)ʭ U@}~я+j ᇇ3'φݴOܝ_-ZWk[:Vefo vzzgA!~^>Q$J uoJеُiłÝE8b /Mφŋ;~UK! !*a(c̹U1 )ułØKOԔE/?]xy\e.3ճ@AFF:pcX "{yrfAԣ)t: > >kmZa>LYw--kyǴ]x(q,5&n<+XG#%.pNn[S^pYLѰ%;8Q* 4ꨊ4]M.̠d7)=Ѥ?1Cq&xz?cfUܜDN1Э?H*$+dZN*4)8e;mr7Wƭs *}J])یܻȎd!F_T65vO>V-e=ig96Y7bc Mk[0زVЂpKT)ͫY Ge{q>հŬDAT{/ _{um“hhP8R;v 7?Pw gdA׵jbr J܆1hKVQM;\T -+!3Pܧ<q-aU/$^qMEGE/I2t#1+oR2 z"nLQ.vG{L]̗/̀F 2I6q6]o#8Z%] PeqCf.ۇ!!OBo}Nt$/V§}w7Å{j9L$^W۾D0'qmY`*/ؗ-MU7h Xbw,Xg rQ6yj7T3n/L_* is M^۰hs(9MQ&aih_d򕾐,m˧h-(<0t(_YK1-P҄Hwⶖm#]4Ma֑;]I.enZ. Mlx̌%|!e%I5 }58ؔc Y8 }s wVY$l a4ag";0p>ѯgUzMv*P Ԅ9mp W{ ʉkVVZ`0npMD A\c PϡǕI#}il1xC9Tlyt\|=_e<^=?$E3 oWbA&1 WY!ת_H]'ۛ_ge| z:֡ "8VQN 0^Noċ',$=jSg5[N#89\տ`d>nԅƇ4ROgqf+ҮLy7TRF:kʙu#nl#ԴYBhBWt_4%`\ŌpeQGZ( c737VD?2Ј~uN$털GKO ,g]qb7z~)qdHh㦕ꦋB {jLs2|#ʣ x"wV<@Rc"z^_Gw\q~]~5 xqM♢3)>y,WA:MH]$Ygaz)f&7mEݥI4Sd=!йzq-Ȑ(kxPaMZg_QW.x~R5#ˀǣMhLoa<^WQi\%2 [OOb*kJ?"ktI@*_fM:ޢ! {șA>(193YPυ^+ck)K ,({FV1P'ozG+By&B<{f`i/n7V[}tY >v5Axm*9YZrcuz 6OMh) %mF6=o 63`v{ wCX^0Pj V0j6]v$*2_S4'UpW H=0ʨ>Wŗ@c:=oz:$/W6^cb:EbX+ |[ Ek7#4®\zw,ABYim$YF3T:8R{&L)OaÅf mu0qKMWCkLf¹٩T"<γ"a3/_=5MtOA2s"F%f JRhkatM( Yqjc_:-|Hy=iv#8d,05RHD߰R NuG QֺsDe{ )b.dl-m@ -*g2J-$8k}d`/1W?%'QSn(+[{˳#)eLc8*=~<(.=*fK*}RvWfUU xL*ƵTOL{ˏ:u2?/x4.ӡÑdk=S-hC]2i=* \xf@~XS r 9M&~ksux|7YѶ]$%y!=ߞ/و`ގC/Ϟљ(Ie36d` nیɮcO">,AnBY!@I_RmKo_r"3)F}8TjR~%7jTwC$zY/K IhzQFnͱdn/\`I`wrۚrl-$BH&j@K8%qRvLW$&9\3x2Ah‡* t(` MgG'@$QrM"J:̤mZpA;Z3U6ޛfrn?ZsGeܡ^o6.Yi@iǒյQw{*ua\grH1;#tdrj(O6td+mgXO? q[&ӹJ:ks!%`ES/V\ 'ַ^iev6Th~9oNz]]rGt@C\^Fx2cd!ƿ*jܰ*j_/%ܬY>x}cqX]1ߖ&E'޳y&15VWm>ssZ>a[)wa]w:÷:>r^,CP`2  ydeXSNOT$^ .սMܟbz(:1U 6;wW9]?I{JHWqGA6HKYǷ}[/y!/ϞNO3'P.xB0Q`@f6C`*#ZRn(:]nHjC^pc$y}G/OXYHZYQ𖄬"Jk@aZݲŹ 鮫6vkJ"Ix* 7}W4xjۀ2$5 &JI ^FxZ{)6+1>6E>d27 f0vl~%*2Zp->>L鿷Us/uB8gVI@QW^3nsHٯQ[;xLUޗ'% (jM2+%bZa+#sk0>0z@ʐ%+G)^$XjЈ8s ټ>"M /WhH 8Dn O!D`ώf(L-ˬq,  IH!UmY,b}sj88^cRba8ȺsCar3a 9^tœ㚐3$\Ϟ'9J vDNT[u0TFr] B=`ќqAv (0U.LkhB(!Qםү7#uj]U%?4Z=g9̕ :׀M 걣^&XqD %{ HxRBL:Rm)(wv.4RJp/H顐O=._eu,afTHo<(s]yn9^sOʦ3׹Brg&ƊlMH| C{-¹(XJ˙?H,䜍5H%7ʩViAG(-釬?DG6sTGtGIdﯼIۗVQ-zqtU7(m0Q>K-/*^IeQVXFݛ3.y.|hmmm2ڂzWa9y.-vW _Up, DQaI'gcs̙i|e_F#o)uTkj76] xu^uaIh0jVǛw~Φ"pDfMϭ!kԜ$yDeY_Y acpMڂ}!:;q.vHPm%};V?RMRȞQEܟE= _A=RhS` a6zx& s[ je|up>moН9yׄFͤ X~1R,HF4;|erED+&0 _8L_ߜ+AMi /uY JSe {s+z˜[xx@S})Ezt|gtx 8/mrF^5AwxZZLj躹ȳ  ÏO>cB8)6(6̼O 3_oۛ#@WUw7j (SRRJy fRpD9젎+m{ imY|.-(JWnh:(EtnsH^~ ) o'793djD,H6 k*0=CjjwM{8(P2t Ke|{{eZϫ_qk^#>Lܠi>{B*# f{UͻO{.ՑmϤ1}s11wNq>~mnѫ? # FYXcF~Y2`D0 ,,}Hs̢C)y u/Xbx2@?'"?BKbp%Ҟଥ+{'6ss3p@ uh<)m_Hz{@9~?D\d{L|p$2O$&o+>;aV+yB!2CFs"-!03`̌={zb(6̿շR )_ zOKt毀)I̊Sdgrx E2i SC1w8"K MyWخnNIU3}'AO-T*\yb87&0'V#N-++[yƦURĒrVE.=agbą) 8-;ۦWBF!߯c:h(/7Δ.1B`ȻJޔ]ʯÃ/Y܊:9m,lþҲFk+X2%w'1* umz[rREkVq P0~fHBW/zg{OycΌ)45_dN>n`CGBqVAwK $4|^BGFRU*6j P*$-S#D?XZ/'2iBMOV&_{·#0( .JfNe'{0=x2˻_!JZ=+/z2w6:`>l93=c +2ܢ9nj< '9R?"rFѴI$T󆾩g@!RilSroM|WCoF-@ )CNwTj8-F(B T8d]*›@KLj = '@ }U96@cւgC^r:ԠPW ۤYAÃ\[K UF^^߶? 9@Nt$u2G@Vl|PuCҪD s5KŖ Qu0&>k#&#Pj{3\ Lb_Sˬ=ղ2:4>cӃ}wS^Sq7E1#3Nxo㜿f,%E1>9 _]W3 ӑ>lVXC)'~?Gd{v`3fV_V_Iۧh$%XQo=ѦnK\DAmhr6"4c&d 'HEah-D7pu5"bTHVXم8oN.V5)3o=vxWNOp [ےao᰿ζ7Rm\QĽ_Ou ,t⍘k'*e;-p;8>i4"$D8~id5lLUaX-<49aj?dV}/0/X_,Do k1bҀ/Z[m#GŎ9ѭd*h ˑUB0S.2ډR];S6*tlnzZy\yk6J-+ lC&5ḪZ+ZOt fn AT|rjne&?AF y3Aš,^_ >:ZBlQb񦤛ΜF ߌmt`a* 'n:8mݸrS=g^+~ nЛHB"6uLI.QQwEcC^W~ȒIm^rmjn+pVО:?%ryy4 2aT]y177XEȕ{"B홝>^C+B,u'VmS5)|@83j6uaK2#杸G@)/z``aQL55>+3/KAnnJ}`^%Tئ0((yǂ<;; fkLqi4΢7M'*ċ-,M `FB@0).*C(-o3ډr(؅ʢay.!VUq-7N"hj7$lR([\b+.~=VyWxs4)J@}Va;mk5R" _?&?bf\N<] JhdYVゎ #5'-̷Ö @Z{⁌mCŅJ6(Æ1B9 {;QC4 \^-m#lNi? i``HӫSk:IE3S*T,O}er&HA *nŻ<-r!!,2wo U0w 뙄S|bć 3o!+wE/N` 4ػ۟Ƽ3IxDK|q-ɘW*Ga*ҋ"(kbRR7ZQfFdx&>D$TmJi^5ia n1͞z3(z5C]:f6ݗ W/¾ /}x1s!tip:,N1ᤉEuqГ5 jǘ(ۤG^GE^vLH}Ql]L -ŊٔuѶ5Rph>hTE"vg!o`!*:F<m{+WW7Vf uO~{=cc@Gsjt&*I{0}q} ]NhYʆaH@4"φ=4@X,dۦ"E3^͐~Kv_+G3 ?-| Ib\z= 3٬Gc8l3EjߚLBz;U}Z\1ZˌzdFS=1QfjɸL)QSRċKpa~8Hﶿ}?YDNŒP"sCa.*>^2F$jv #5MZl$e7]1łQ- z( ߢK-2ōf;\N#muzq+*#<)`^YUȑ>-N좢g;m:p,B#pL#w(FC>lJo +}qWth7Pq.SkS+pMLUE&)a'iD2 =OHdY܁Dϋ =0/4RZic+s:@DBiZhQyeph+V&Bhnߚ])Vht3C98gAW*;f i;L 3:3ݹ*E"7r4E5Nm0+JޝKywO8Âc4Zo&*$'~'Ƣ{ ['zMGVPqVm=~Qceh|,r\qǖ*#LU~EdkRg+j/栓$'8n"N a}t7-p韑w _BD!] @7;NDI*]m.i#?޶p(?n$Egb}%BoSc ׋foJ`P",gkMkc5Nݤs <{B% %|<7Q&h'*w'kGLuҫ@"c2AQLa{:OF D\K^نb T{j;q8/;Ċ! ϸ!Mؙid]xǺn~@|I< q'E Vpc0C4moM}Aq?]SY/ʅtֳF!ʿ-ռa"c\-#yZ,_IVɳhW_megSP?^h<7+I,xRD׊^ݟJ768wƟ=g^pzgL"|?~6pZ]rTK SP M BB_'uc NNCV8aNOp/rQGdmkG}H?b՜ T5jBDia(g2rxYd)z!8e+{(0I<=!oȯ97:6fub27-C./?j/(nv?Ho0K"4"FoG_?oC4;y,ȶoK^sp ؛ʞe|q&h {p9ڷ\l2xԗs֫~QL1:sijV,HnCnlpoMPH~`=О ԡr^O h>QIjYrBZ^+LA2=t}/E hǦ`0 ^jdi -;Q}+Hj[A~|MZ;OWҏ+M/0D{^Vpѕ"jGXCu!ASc;bV7v0w/D_ HN? E:oʅx轎gc8%7}¡akSejAH=rVjy \ڽt!oP>t0A)Vd!o!Q7]֥=ԻZva 3N(Lv BYlQfh;vĶRJ;Dw rյk$)^Ϗiٖl,&DUwx|2x @["hދ왳;$FrLǺ Ě <`:Zg]Ȝ`Z R )Q%.w?rps"LiceRʅgh|G)O&0XT\TŚx 6"Y5yR8{!ڴL:C[FtS؜\tk,,OT fy70q,j&{qkTrh~)x+ku`6DlmOQڗB4EU{{迫v+գȊ+M͊OueAk@Qud3`o|cNs?/,:F-4ni~a[ı'z Yh"t9D[ /1X!PʹwfQ*DTPzެn2M!zUBTaO¶|Ef7e5H.tsH81\\Zʉ0`(o Вޢ/^fk*\wA[]q} ÆGYp##-Z׍"imfP { [VOYb1.9xk(?v57Vu廼i8RKmϒ{0>463}Q,tǧO*Go5>&jt*)5BQ5墓!q5ƻ3^;#U\5X1j.EΖnVT:E׊uvL \8'fH!C 7ᐹf\,!N?z ^ˍbUl}M 44!N t[ s־߶xoq!z9%‡ ŊD` |  bu9Rdv6ML%ZYLL#O,*ۥ/A i6m9&Sf|,"܀#f/ %^q g7U)EıJ?:\>,]?m5|l܅3/>R6YV|윻z#F_Sىu&'aNGY"p2;HRn2Vx'}00>hT7vIɄ;]uҝrhȲbXj3QChNʑauh(W`=JIh Y[+ oVjaӁ Oig/2 RVBT? X aIpQ0a{-;G9k&9QZ.OTsPu"ƥy>n`Mr[M#"> \dzvlL*$" c aM/ kl+ّl= \=;ή9Zp^#P%b/|K^kܵa@BBD 瞌݌YBjBċnLXq2gw\.&ԜӖG"(3" 7p*ugV|93Lΰd(']Pce{>id(zF=c==žy-W篽$>Hify_7e%!,NcgPÌ\[ }7Ŭl_ J薀UW7x@tĤoLðV~/T]HXTo]~ۉ;ЀfN'qWt $ك)i"dO@H5I֘d'[R FNdjxhq:+%haҺ 8m嗃ѦeåiIH6H!y<>m,d<>6u\|7G `#qR῕p"ue!{ s0Ϫ;\.h?6դBN1|cJ+TQTE ^ԿYw$bPb*KD!3*w`o(a@h [*ƁMRO;ʀ =\<+*c+P؈oˋӟ[Tba zꇪ>ݼH-*y'bK?79 AːaBEM)#gߎjg8#HjXRu.jNu`%59 Kt!eY 2h;,KƩ|b˻M{j!3} OqqCnG10&+y98~ԫl}OS6S]~йJv(4ʠ. ݜlL_2RB|=SrQcp}~t5[@0HwOwڦyO1P<2%&tV#U?֚]F_V]^I}Yid\bD0nls< {UP_Te1\H=`&^fDT$%wfyn o=Ѥks3v*&tGC,sf^bsiK g-HU]9H#+Z{D 4l17mMՔu{d<( f%ڞEc]EzC / !GhsKb`78okpoOʔN2qlOqhqГ2>cւ}ӽaT|"Rj <1gfv2J14)nbaO+VV,Dm̓]8Uјڋe2WDPWBV-調wt#4x кI4BXxV^`t.kgUqF.]7Cj/y0,ET՛6C1;bzϖ#2&~u`IH$8G%Ors ,uxQ>酩 9>Vecț쳩>9<%DXM)>Ӯ/3b(샊EJ' uoT6C/ӒgP-sT{7ȓYTXfy:Uvzޭh;n·],;=Sa%#C vK$_x :ft*DH9(DB{uxSRǨ |zCC*x%YάƢ<<0ږb9fXq9&)F܌mS;we@*ޝ\x*4](-Z 9/lR2]B*hmT-i7%{ZИp87õ' ]8r;9=VnLU.N\<^[IX%<6Cs0Ì _:R՛cmtJҗS8D_պ1TlaS}!p+U4 OWC~5c1b C#eԛ_ͯ-k`("ʧ"bcTg:Zid}U|;o''Ѯ,´&zYitH"-S5SО͓*Xg7ti;dJKR$4Oʴ~@!鴁+ Eh$w1DsWn`"D&a):Y涄uw$c269!frElKjk-xNC`/4<4pM;OqѓLR^yp9;DJ# uve舂+ӫ7.B:TNUۼe N8Բ5Z1S7Ώɥ(hO &`y]aX».}> w/{V\qT|ɽ)O; (!IjIgP/GD,rhNpz xjQͅ+UsKL!5B]uY痸d.4 *A (q \w֗&El'i[6>m+넋 eǗnߔN9k![xJbRQYOusSM0[Ϩ62~oRq{d)K}@J{2SIK*똚A>'PDc hK^ٶjFGYgٽG{,$hlP V$x|tKCic\j$$Pp+(儽ʩg  mll(PK>P NIDJ{vVMP3"X8{Ƣ#ܵ\pV5\]6k#-0M>5gx]@2G74be!sV޺*Io$* hi$`9aTBץrս0JF1ZְtV7X|Xj y^/%S\l8@7l̺$ƩMH5]cꈆ{`5\?xţ$.W D%DY?2'ͳ\ǒ$H[ d8}++{f4(46齍J %wٛf0]"7]\y%J%TnbX#'NoR+ /™_Q5Yb M%+NYo^ 38e&N5$>/>ewJ_Sqr3?&(ЇGl:#:^. !thx>"L XEo$7p\NV@I\-@]= H oBIw3;[rvvÜ`oT/b!3@ 2^+yƝ;}QtP쬯O 'Ap(+JlbtDf s;,*PeNx.>^# 9e}{)vEj~ɕ"h˨əϺ̘Ї>R(;r3 X"…O]ӲO]R)۬4uԸnMmm|&/+o&ƝJJcn"] -+w|mlxMݬ!a7'H]h4L`}9bjp![$L@(hn]W0ncVyvà JO'lrgGYxQcAE T!YP)"?m6~cxâAXp67*\[EGGŜ?h}"b }IbՕ UqUuO;-E</pWIVeR36<iܒP#sv1sFjX1ב6Ogȴ~9y}aMƊg'G:Oyy[ GL0 T#ֽ癶|Q呟z7%uD߄m7yVF끉a6r!HkK ^fcho0JpCz=OQnȱ(k.;}-=珖Wfc#FOoϏ+,ZY@t>oΝ˜51k9&H͞UHDLUK&,1e} 3\l{OAz}$uW 9k!>.ht$Pg(nYϤU.<f]ƣb:C⻸NsB%q5 .w`(6M-Hp DJUR$3c%]GO'(l4n'xQ>vMgO mӄ+@ &&dA 9p:!x s{JlKj3R^梥gs7VT'#[h7:"DT:,aZ,5`[};8`Ϭo2K:}6`*IƓ'H$gmy, -z@b(:Ϭ 6$dzl/ 5VB3x:gx'7~Grfle@Jr;|EbJ3q!z+m>5D,|#h8<%CcI3DLDo2p"e &qw>J jҿD_Sޢ#!l[[ֳX$-|.Ʒ?HP/\ *d93r DvH\kKq-=5)G6鍷!ΛgQ{!*[ΩǑhPܪ D1.vh8zYa1 d@bYk"+=Ӕ@@?i(;U.ٰ-oĹ Q4X)s+\F Ee}GD+u;";탓`jcS)6>wKY'&6SaS6c%XP47q3rV6FnDIބ bKL1BEh7<ZнOC>bk4\?l'qBbsjo2=tžIY#3L)ap(~SVڌh !JB^ fyzR* `$:;23"Q݃Z3bm 9xZxHX0Jw& ~ieJ4Cّۙ]0<~ 6#`IZn SK+ä6W;ڤ aC3M0'|փy45V26F_80c%'vI0Vfsޤ ̤SP9i=Fk8aXAW%w?)g~:ITdD >ߤa gu}`>/V "c͵aFCmo)`+Z 1H9PV5jlaЍz":J\w*. ŅLm`b:h(N8-£|@)Փ"70lw^veD|b:t0] `OF0!qj; (̹'=vƒ\1xG'APb~(͉:d7SA[y;=xgûy1U*\/[tk32B{1OCW }{n. P"X?4-x& m!閏foߤs#xKKQan:4ܗJ`o>شK%.Dߣ< xtqCSHLe4lu-ȤIQ;  6\3-83׉z6Gbґx]SwcHC5 z0;`5@rOAf|/m'.k "ŒJ&,A'KȘ_8?Vh섂j=v (kY`Ӗ*Vj_2߉K; !]vRSZNW:Z1)ܻ "^+{68t,&B+{ "Ѳg߳/Cgز@AE)e0^fzUđCr@BLo&ߘ1MqҶWa(1mp&`d0a0hMn32gɒoh!d>b/&y8T~-•Ê^6ӓa;fҖbMLhQ:⹪ Lq;0MlΞEō'5 ݔ'<6w{xm, T}!&R~r%{"ŷ IYs`nb=С[QK&G?D)ȮLvesYn5=8] d8@#&0v$o3Xj3r3iCesz 7ȳ}=q 0QłVRbx%l -y OI%h:u#<-w7MK rtڐtb )O̒c+O) –$N{%Li\5EF7r`@ư4u%sVkˊ^z@@Hl^L_$8 bK-nSdiO*S@`j(Ŭmy`PL!Y9dRZId{Y`cMOa4qDvhR+Mۻh_e/^Qj^d ׁ|d3_|Wz1+l|0'4]V6^` zO33lGpQ< #Q;ۛQ׸0"Olg }ءPaZ?FV7' )|*9{I[ fE(D2%yWăn HWpr`;R\/,sryiKos~܎m2w:;%,/M"Xdwk膯}z~w5VDp? 85r䰣`Q@̅ZW2{݁dA[Ů.bon4KqY9r&J:2싮972í;܊-td}åEh*&=UdTܻN6Z{i]|=@Lr6dޒ[y,`lpH,=5% l\P^ .-Q`ZJ;4S -!+ΐtz8!ߢ!CԖU2*5:)3dkux׺+f0Rnkw[Crg1t/ v6® i)fwo,lW+_fOK!E~eb|v0|,na9./1Z.6wJB;o4<.&SY(_̜}? ,fvPDr 1_KT-У+M.CCݑ~YAUx!qLWwY5pNFnr 1+?~uҹ3$7c`z>v:uOuSӭ!Nu!}:7eyaִ?(N&*\6خARL] SJ/U5xsSNRiDz3o@+=8,u @5N+78 $\.P`K|پN2?BG|O@eCK 4o2YGRC|;uP[W̐s=G+f1/5L1r3cL $ e`603MuIρv(;ҋf<?D94F]M`.ߔ'<[up&;+8 O/:qvw{g!lxw;`t;`3{g_a1Q¼ EF}VH|"ai|p;6?Oj[t}]eLk߹Fqp ȍ [o ܚ˖o9w>bbl'b]{R/: ˝.>^ ]jk ݔad1Ǎń(|fn/H\PESƈebc*?ÁV=pc;L o1yi'_"f)z/CsPô1eLDI'ks0G#WK0OD߷G_󚖈C9`'{_*Z`uG6̾ث$Ks@!߰Rw^ uzetG#s6JQ/ Y Qd)Oz) !bI_p^Vbd-,.Q>z,}ǓuXxyT<,/T~ԍOJHuيW,96H8?/!K)`5`kO7eO>dP#$ xh[yکL(9bH9d? wD.c4OAMŢ 5cry F?Y5r1[VVt?̽G 6JV @h2;LQzXhtH7Z. 9%m4;ɩP0uQ6BvWadiB'ۢ\i B|8>~T?L<سQi&_`x0WTct!yj9G@,|EK)Hڇt\Vr :ME.\"I9t4^PThGV݁M9(\D+ pl9Mhd*pw=,Q|>;LwBD@xZnl|C."UL/6 z.Ø^E~2VY8˿OSR?/ sEmmֹ1?ﯣTN_ $hNBsNeZSMQ? ;qoIܭgˡvqq :$󘚀ީ*)c(pFSڬvA#eSԟ[ńF^Xy@w;ȟ " rqdLLvv0CSKxxQlY8SfM).$U}L0-4\X<_^z㯔 a/!**;|~+p3"TC7ɲ:l~X'f`8N9{5dsp״X\C _%̫~I^Y6fO"D#W,Z&i5CC@ZyܷǾM;Jg$&a,6%OChW ;cHZgӹ{S#SB[$V|R"f,!k5'ZD 98Ȝ+ilu5C+=}(2inRByR3Yk bL8I <2Ys%vv Vw_v@_!4cfB2ˆ^f1_DG y GYFKTPp-:sSK{ Ę%<_w cqD g^>CLOpwr5G90\j!c,d/nkRVRw*YAʞLզ=2*iz13A;@Ȟբd@:0gL1sG2X&v;ލ!uK׭݈t \EN>R|4SJz^` s(Tp;W Σ.2 ygZ&BDŧF+絭 '/a|Ad)zT'}U{yXtAFG5̔M qSel,"oO<댔yӬn1R#[Kã]YVgOl2Ti@|sfQ.Z[n+Xըg'p? q"<\xGKq#E.w@,f0Um(p[ylOz刿Ԏ֊К4RMߴV%dzq'GȞ^Go 0O qXc>w0y擒X{VzIٳAuL|@@gR *ҶYFi]QʦZCIFTve\ZF'Q+ak\a\㢿[ڸRzEjSWYԥi6nkwO49ۆD,]8SuxS sPnR1eN8Bc@Oit qi`tX .T$Q)F2 Ɖ6<*W xUU}O̫E"'z6&Y6xRw1I6+ l;fE0{22:HCXviu#TK@y4ލ9| n"(W{Ą@Qvh.Pg;١u¾4a>WPPt&x ıyd A'gM܊[`Gx+8eS3mpvփ(&Mw N*ԄdB.c zE]ƺ* {#?QMvͿ֍|o-l tÉ pR94a{"բ5F"j@Knjnrm"E+@Qv,,lmȔ?mEɂBdS:ҝ)U91+v6[YKWX:b/abd2Wi[?(lYmWF%z'<]?XrM-= 4lCy?48BOç= ѾQ!5%NCODA9 wBdO]BſY<|YSՑ8'?V"ZDU:Jj.[}H]Hpn .#Ea9s đQ6p;d9.ڮGR/ "o!uK8&c6O%",L&%Zd=*d9*Z}ׄyɡ;^X$J#-5qį%a:U3S۠oёh^Y`P;t#_Q1 i Uaz|g)E$Lf3]OY#7`gl3}8?:6#9i0a,;bm{r p20#Sym Q@M2Ӵ$Ѝ];;QZp!K [CmC٢i-}z-CIJJfQFU:J8{ DF4GA<6IYUqZcs&hGa'Ch4}Ж808)Nطvam v8@Rl7 "'[R)F򜰎u$sk~wi1'8QvaH. |1,XX=m|sC 欠r)YjO*XKsZP$3ƄM6,=Be w'j.>Ŭ d(AS`TM$=Lڟ{RԳm Րqj&cZw^.u4);f@F>k rwq|LE/Z' \psd@GwQP=H]Ԧ1\{󕮒_'xgآtậo;rr\9JD/Z,vFA*W35*iz[|u˓Uu#=U)_8Q4t0 ,'47GKl9-Id/'pwFX л/|C}2-IdRAĐ %aDȁܓdFB `7#̎$Va~i7b4 8Hl?Q0w/k x!)!_[]ۋM2EgQ)B-T5X;Sr|T߉)]{3C8a(QU?NE-?ю}!:R9iW^3@minr?b`rVmYY^oLNE?]G<&O72 .`_gaS>#dv&1>g[}'e}ZS|q(ygFھ䦎?pXqsȕ18ukCk6b+ąsE3DsNK_wM /f@pKUJ7E$ Y:3svޣFD^ _M쨦H*" Tڻ.. ]:w w.`\s̔!s/v+j9"V^U@-ED_/1oU`ڑtځ]gpdf$N1Jv NMv뽷\0٫'PQCdj%nS"L5hjY\E&Lk"O)9oW}v~ ȖÓ,<| |$!i[ j;?F|8m%8g8(l;4|rS6qDfʩ93c;qHT΃@fī@7fwJ`BuZr^K(}9euΉy7+ W` ʯk{ 6! /] h ./$Ξɬ $7Q#g-f Ic /?,|DE-pu*XEd `a)|BdRɵc9D0)4#Fyِ[*Ġfcʀ@>@VY6mÒ6~!:&feFҞeuȤXʨ^WH@E ~ɇ>c>Ot} 1`zLJ=繠䔾)ưUx}ݴԕEEK;XT_Ԟ2xRμn2EN/~fD3n$}o$[Ab-[]=t|pRypa+Tw(9 RjxWlBu 2K<2~^ 䖧n!ӟ'D !)7pwqeA (c2ΈGđ~?tio+/_5fN-!PqYc+ ?%(>Ԇ 9'іپg+ނ5/O/v`_?k#৚C[u#j0d~M{줜-E3!ȆZN30E&g&?>)[kA1-/*CŝZnZuГ6H\G~Αt~K`3(/[H C!r`ou_L2REBلLhGY`0эݰ}Tg`ㅬEeڨ VpdUoh㒎4D?ITk}KS +wcڌv}+{tN=ά(uiq޺rtNBU߼֐qcTΧn9mtX.J(,G[iMժֽt3Ps9'/-] 藨~Z֛d9gpX KvJupz1C\3h؈O_>Rm[:806,~|G"^4i&yӤX?id2. HPd'ִѲ>KyNR Z[q:0zr➐1@B"3orɭ@Gb1*y)j@VW,L#6Cȱ0 +NB:e1\ڤǟozpVb9,jeRtDv_az&K6A]̈ƒδZdڟ6a!.r.0ۍCd],E_ 7}!5B@A9*rripQ2kћzbŠrw~C+}gfVz+]dذ~@1u0 GXOјp /_-ːxh)bM WB7fsZJ)Ivט0 .+xrDw0$pƕV90N 5h|-A-z]ƨUiONV&bF@@a#$ 4B3:s~J{c Y˅N GPzG1~(XgZ|Ad!TNKjy#|ͷ]쿞=DtS 5'[8bzFh'+·#7`#nŗWfbl/3n,3s#Xv[r-W~h9KV}vJl4*o?rBe«Vh zu36$R(O#ɷ(.5+  ek,&&g>8*U&QGגˤ_vH7^=MD A8쬿aBd}1"_bԡ&H3 eĥ=)* SfqwSLPxCReqF{ ģetDmyg>Z$mJ٪־kۅ }t^KW2x=V 0j+ 25kn0p1JFg~;%6g@[fQz+H5a$@(jl=<kY'En|@` jY+DçOtoH8(}Ațs轎(][.TIߑOG8ojmiaJ=SKV#tJQQ !y_wunM|i<# tYsYpc-S Ͱғ'0si1v#ȏa.n@3#cd8Sq0L.G#}x̟@jݻt*[ dCm1nH^њ~ói&/?_0Gn7?Tld7x?]-|DQۃZh?UtU9:O>԰ucCeeNP|v,\=r0ܚ02qC?|AR7TB{`6vCϖj41 'VŽ gԽP8,NaGl dk2/9gY?e;36u:zMW5h; ޥVfGՃ[(hȭE" Zn*i^vS;a WqHO$:W_",&/&s%VI8mI ^-SN/!=RbGFSfYԹL1ϯ&B! b2,R@SwK](3?iJk H?f> ?^)67IcSUJ}fܩ+?#1oMN\!XYA ^M]/z B㡻< ! kq:m"=)Y%r&Dj0Oѓk{?V$zO˽'l0!\OVWWg[;k21⌐ );dv#f5}3SľJԇ %O@P~zE.6G֊Vr9}t8KZlED6\Wp:.w)GE6#&x`ij$l =coS7tXnI{Œ.?'$J S2ց>Dv\5B"JOHI?/HfGxN{/'uzټ2Ĺ0Ĭt׆Ц> e{JiԔLmyafvh,(=^ ^P"PKɓQ?hXqK{g,o};uAG} Ԡ:۴Ep~Z-{/ok,#L}\Nrs`V.0` ? :b2iM$Ckp멁emVMYM!Fbog3(h*,ՖMaJ ph>i2CQ+c:/b%I\'qkpY/0?K:}xU4$h"='K&-[R9߸憈.'񉒐0Bv|੷9﷙^eO|Qfs:^°#(뺈-!?3(V5ud80brv뻭Sg+kPBRyr?@|mGV40IbjR|WwnXuBNu-O\ uc^<𕐨FoI`c npWlb3JRǥaLRŒ_gUv'qo>[r, +/*V @OJ/Jkh'$ `[9Z'<בFA槇Qjlmh^ rMVZΖɡ<4nign !wb"U;jo4 ^Q+U>󲣽 5C>6$s HN+DŜp?PLQKL8_pbF`>:;rVV82rv6/>V|I5p'0^ ă[:+rY}FYfLfxǝT)GuZ`0B+2#A ~eЭ3TUlL#C; J7xpЇcU(7YMH'3yכ&"0wPtZ`:G7(a'ī i93 ʸ.B}4ԵSmcо$U k [k!MxRS7tt c5{/aFR3@-=j8$`/=t~=& Yp 'Dj839gތ!ǖ- <:8pw;S;xlŐWa99Ha_!ESĎ^nt5˪7ɰ gJ*a*%(ϋի'h41|!9lZQ:W JxgvF!QcbFPnUAO}OGےeJwH/+!W( atmnjH 楪[Dݾ$ϚE^Akj+= YEQM% n5WwQ: ]pS^R|`K#p>F)0Ѓ@Fqi+udݥ.E9{ƒ.90mGny_{K!n9)cmq]4: h Pe޾j)C$#.Z! fC1D¸KmpA|N_;2c-¨Y\,즟NRO2[kzwo,6I1!H[94C ymyDX8 {U?AM+i6(عi증zlMM _x|̼hE} k\|q%妿AU qn)\uL*Xb\@676z\ =/oJzD5 f5f f %.c'3  Z$7#vCYs7 ~Eטn{NNFM3/iA}3LlHcTh!wX޶ bGjËLVH1VS#S1>D-ûƈp*r"`-plvFfkqºg3~g74*( ܅y&q{nެg #AH.8 \+ WK\+} no(⫸bݷ6j2ZO(H\rx,54pmWXgƨ羽.K YcVJ*$n"}Be~~xJga__Ñ6zY3JԝLfbZV|ַ 䝈Ug{@U~=I3g59bkw/7f"7a,@U1RS a2]@S {#@j&1f᫺,Z`5Wιz:Ŭu,^iOF}}";X|# m .SE7Fp;##/B77;+2$ǜ:ڡ?%!y뎐Umjkz93 m5<2D2@"UdТ -:<ݙݕn~T32{U! v4nlk bӀ΅My9X\Rbm%X5P!0Q}=y9iAJ9J@5=p*QTZ9Z)=$>/_%e~Cr ^[izeU !2wj[E?`yIxҦqp,n?(͉OԀnfxͪ9~&4 YBw{8ts=i<h"4(|*7flPϩEWX}, _ګ'S"h%b?qLjB'ef^6]ݠ&-"[3fSYy;<wjy8jwp$2Z!wUKdLHEyp"?| gVvwj.:$3h}TY9MJoTaAx1h5y c?] !UZ&e"_fBUiO:%7t&9^"h)Ջs_ӭDGYU/`5Ȉ^ALȳ( }AmZjy&lEE]?A㊿궛I";ۛ|^UܕZeL"E`W_m0DoO @T' 5T6b0 %X_\`x)d@߅r ^-,ߎXaznwl3ƗH{˸7L,LX a X\Ky\} WcJ犉INF X-W65ԎktJR]:k)#%hus6{栽36/J& _tu#A,OCKrV%j+#VĮ-J`ZH=R㴤:OmbW/4@#BQ!3+ϭ$ytD GB>Lq&<;y/+FQFQj7/Ӂ w-Ld $>0ɭRP'{J sD5h#LUv_ҋЊNS^@҇ vK9CLeYX)$Hk z05z8Ri.fAʀNNReZSS!)[nӉ-3E(_юw䀻:v pMd-Cz摝vu`uZ8p\  S*lܰ:nȅ5@e%@P({[#m:_$[Ɨc䛙z"՘Xq"WOnH͢VF`{ 4'1, ile0U;4dm ƨ9hLf Xj6U[o hOk8HɘO0 Fw"Vж7W_!!}Qi(!ō1&1Ow(EZTlZluIǮ7Wq.JRf+Q q3(,i9L0Z%U: ՚u/ <=ϴʿkSᱳ("I"`)b_.ԫԽʮyDLA dOO}Lͦ-Pd摒gСRFUr JΘk8vFAI%['^Gctn`,MQuEugξ4K\44aCR^-["f 2YTmkxKs%0W0ؖٛ,XXLRu v^0V4c+F}@L:l6S ukkZ)ɤ =9F徬MJvb}D`N"pWޗE۔TAQXRB)~326D{R݄x-賈0i0RbXԋQacU0p`iVњX#7Ŀ%C!h[^f;FeVј޿u#(֎,#fxH FAV?>2}׍D+JeR{2&Fu_;1_ʊGnnNEH15f/I @"QqB[n J:OA4Rx AC K@r¨PH=B ^rHť>"]QQ Wű|Q\~D|j^:4~d]'ז(r$p Ј4Ыl>G{类a=8|`o )"zU0kQG=KRlt_7=-鷉*CB+m)r4zNYQn-Ss%/Y&% f\f1ffh5eCkts˟mlIHɶ,UaRmDcpO, F~@1\E=gU.xWėgv_ɝ,rx6MɈd`ʊ\LWR\λ\e;"t4!&6;JՂ%>g%ǐhHQz'LuaQvV]3 ~O7kgUu"w~'ngHIFG /^ 5rhgV-c.?-j)]m K{M9yݔ)é=9tMՃ4"=>͒C8 ¼Q笄4c |Lfaߥ}0es;qO#oX5'CXj8MVX4R 8""OW( <'"h"p>G1TZ9>M%`3Ef蕸dfyϡi@;0>6=#7*e'ĒuCV N js9aq8Z:zw]U߀4E^DAK3 YqD9re%b|@hfwU0em@̍-vFΥh%B6~WjZ,d͕k.V!bءMj@ ދsOdJCe>I^O1 8nDS I.)}vpy}~lgt^&r52x[syhW3>r^#\oYyV|u;@H|9)B7`=h?)֎/\ѓ Z^oHs-Jt5$O(;"RKrTfqA (g*XRyGaw*BAϓ1dB0*Y:s_=9:A| C $oA If^]DgCBrUE?J((7b|l)rw¨QC ` [p9p3Q#9֫$aI~ߢQ hron+5 ,bf1ҬB5T]Żq`y>Xo~}OI C8c9t`+̗W`D_lCӢsA}lBN V@p]%# l>’h7|Znb.{YNSqȩ1Eű->*N OuC{8O`xɏݥV١_)w<bEMܾzEtH=Q@t 5t($s}1x5 8. 𞋋؇ }:/א}K0}[PX{fynƥNugVؤ(O>}j(SCam(vG9,\b. sWUFLn#ϗ "(RŒv>&L^^x3V|\&[IX \ЊR2h.tm3)6~0>:'o}uqX(t_:T|K'T>b|ĩn4-]tswBs#:m]Zƃyb#s=+2.#d&MR)$jL6?)3Ue::s򓦦sAsY\ _ҩuǏ@/I 6@߾#}6bIwse *IșȟRA–ک9AwCEX\W4QKI\H#~{fҌ}LGLڃ(ֲ -v=ҋlz  ryRe -E9+?|Q.SjWNR b4BVx0,ڦ*6Uv/2?:B`EQq\>TP_L),g-9n_;tu 搎{Kh'k+bDClK{ME(bX$ ;)K-.hQ嘠rbFv2 y,= EoiVI(~7`#"v4F>94RWHQ0֯Ti87ָ(Oobd~t`{ޙn+M7))?W$pI;sX0UmvR!)nfZ?qŋIt l3'pX1cб7RO'7,^$K7'0zG,;f++P{AOk74ܣ٬h.WQ[+,X0{xmÂD*?˙>7;5q́"#hp$KT$IZx:;GJ+͊{'a3ClA=%E ~[i8jD:&|P h`= :SC$tiYOȫVpC;{ž'j.Z%HS^0!4x!P]}E^(" *N{(l'@W̔(9#*6 xHvN;@IcR 6{sdҁ7}>-~LY"6|>nS3"nլV)Z=,Y1|XH@~֣7׹:ۦӾ߂0ͨaaÏpa]Ǩ=! {R9'hXlܛc=-SM,<\ݲ c`rꁅѣLP-4Q6d&˻Z3 LrBgne7”|usv\uE8S4ށT.y"qɌhS.;=P?;߮mnrE"iG*aMvUn*|q֏bqu휩wxDaip)>̆mL:GI?~ꌺ p= J8oGlҽN"zm0. 5IV񘏺97TD^jg z3GKjȜ/ۻu, ,yZç{yl>P/Q3n5:>C 78azğbeغ1=oܕAeGC<å[,$Lg(d/ oDƒwYacH3E`yAfQ!;Pd TSPھ w cܱբ\;( y鏕=1dH?j|,YK"`Tހ%)s~駰+mCjw(BPŸ*j0f(+Z_ ~1넊tlun8Gݡx 뵊\ۙ$ųh)ŜVezcI,9$пIB\tR< f4eǻs!R)vo&AB911"h[#=HܛiV1$bI:oa 20xG1?OiKy)(}n4|^hy`)܉ ruǩZ™:IloX[P}qovg*c`mBX kb;~a?8X83/$C0x=wؗ8>Vk7;7 8=du; (R%H(&ȚlHJu}rI)uq$k$}ot'BZtIl%&cSdD 0ee1D$NN+t"'.,+|S)˵6AFIb9e:wĔLA2N^% >!O{:<隸'ŕ'9==|$RmI_gAAlFw/ە_N Ґ)rƼ6?H{:e0#?:DYܡ-,rHYWբM@HqUlz|U]y=hZv&l_HݝO,%jBv=ka &*\͉8wE{y@|7Ov×ZWL:%TՏְu:-%;ӃD0lhHq3pAzuކk I5"Z5XC6s鉯17?؜HiV[Up~N /JՐ,&IuR Ϋ5-Ylj=A 'PD3׍#Ր kFXG&K#tv7)Wz`Of-q#jY +ZHG/%7F_ƣ7"w/6UY=sgzLBf|NXJzxjeAb!̶vGZɈ=vh\zL[k,DwD-~V 1w8ޣr1b>ﭳ04EGۃ֟kQ,/WƛaKLWsnۃM|= Յ:HRmH Z>m+4,㖿OsUQ,2;z(K$Btmb/|BpPT0# ʇcaTV';V` |([ t0ih._Vh2i9( rA'%8njԟP~ ]/CSy[3l=iu>?w C&4}.cA˗nxwoHk7 4z;1iC.KU8LOXF9*x93quBޣ~[SomWy<zmI^ax&V\2zUNG`j|hb*G8dbCf2 7?QPڰ?ywU8Je7e"*#3ۦW (^Egx~gDZqȑ6AcgNo@ sTQSaHT8ҍe.a;"Yh]Ƞ^ #$BLzUۋ!\0"| l3 o} s"{oe0e7sP%c2Y 4]8G \~0ã-ŚZ6)Qndڪ/}_C]`uKO$Kr~* 𧒶&hZj*oVUֹWlR5 _õwj )vBnj&IE}v$YD*8b[wZ⛬肆=Ws7+oaAusi{d6ZOu*rxd19K.U=*Uȇsa >oɗx5QKsgT2bc\FrxvubyTHx D>Ë@T@|E4.k Q,/%s@ں꡷ݝUa˪!&? EM= qQC k⢇ PU*M`1^=m[6d*ټ h@TcST 4Syb.l5vRH.dl F> @Vz%kz|ԦǛlEY+=j m.]>M!UKSns6h+"/Y5L=S_'B_ 8a1!q0 +y^ote &V2WT@BVHo&n\6(yslgͺ!1s%\WU-@f rk[]nQW sm̗f7*F1`M<"ЙB\ԛ)fw3ex/oⲾ@MǸ p~yH5]wMa A/!1s9ٯ4`LӼo,y󌝵}<‡p3-Šw$.4Љ,>jxVfLBb؝^+Rs[ x&.Z[L%ᦢƤ=%y0  }( t|NO%ZJ?!E-W}MZb2m3?.L3|)!z/!$q89vY \I} 2wI, FC2L3& at^WIBt~\B9Dt.y·0=y;W՟/©ܸlqF!S0t7*Pַ9x*WwUnY,~(h`e]A0 L*#n2T]aNf831֔Y!4NUYBq׬ʬaC16S\BCDp,4gS~1 cOt;:kd%{ҫa"Fڶ gi\mYA:=od*o%UUx }2jV认ڙ~idٞK؜e~h[oYh/5MR_jD|T* W9%`w 5(?½ǡzf]^ْcNۈ_1\kOPEQ\R@i m G>, Uw}`~׺׍qS8.LJ}jwӯx}ֱKT獪SuΊ>XHN EKAO8#< x2_̫l_Ĺ_+ QCB1eӢ;E\$qpJP8jpaXY^`QCz c/l5.&BTO^dfX.u3nQn<uŌ:cb鵾`k^ýIR,XLJ!vJFhQ-f2:`w]*)A9r({s GiuO8_K;M_'kVD$k}rݠb%Kbc=גyK%siɀŤ{>`eW刯L3kN#vJKZ/XF0jӤR=F$!c34.˞K7A篤Y.=NxN\bo8屠v&keM"cBcw =9|_BdYXHt GGEZP7wi^Xܲ_Z s%8q+R.vRy+2G 'Aa]d_ O_^[VEC"RNͼ ~A~T4*fHO g@@xؒK?)wuJ)79L@K~E>Z:b O> *j:l!J;+"bBUJԉ>@{$)H_;()sOWw%FWi|_`) _\;ՇMEiPO4>8 =P hW\3B1HY5|E;dw갚hK`زu 8ݩ6s^\<{l٥D^qPVo {fME*QD-MrK_l[:f+'2v02J`^9Z䤚Gr\is5w PTNxiqŌh~syXxa2A"jsj M7Mŝ%xU8tJxv~ D>3exA%+g*]SA.bpRSi.~Gk#:ӹ 鈴`i}es?ע#ːh)>Rؖ⊮"#,I&?a޼XS_BՏ] kz*(h7T I^kB۞PlKS8w`6U}s/[]xJ)*dJ :;?MX]4.|Ru{Sݙ~7ݢQ A9jj0l"2l@ 0oGX}F pS9d{_we\o99b쫰m"/'Nn_ !AKDCj[Q\)c3Bj >I x" uNi@>khI_Vzcǹ2#iSlKSi?`bd{0 "D3g{8Y0HN' q[;4oJZqo\H~r~|=pBzp4%nR5?G0XC(2Xzcz'f^& { 31`JmNuz_XNCӠ6qeW 3 t/ѓ"ܪ]qF :2J6" gsn"!Ս#>]1xB:&OTܠikL l/ii\c?߿%Ҁce}gw*std8ʎ';cH yyeÍeFê #G^EoYϿEM:=yA]D9o)ѕ眾$JzOfK7E~>Xe=e?_\p T[YS uo-DM}s=XxWAUX}=TBZvdRPv؍RzU) )b-b\Z w II1S(O?/k ?@0zJ V)[n-Ap?b#?txzZHtqZf܈X)ɢٚ~G@'+C 4J:\LJ`2 FDP?d#|(#}7V 9|ɶW?xz4~wbj2U"-' >BlL$=Ag2lsPrvaUz˜bُ UM DB?~mXsz)8 A{SX4w4ЫFY؛[} l7"E'5~${ ;\>!j"hpC'%YwU!?nP\Oua/F{Y[xޑXܥيIWUNnbgH6M`׋#n+ ]!2KD `T.Ar`љkKӫ*q/Mp$zy?~FUmP!J9}E~. mX2ZYin .M0yÉ˩^sýfvs`5@ڷSG)z(/m)*ɡPmJzsS༙  H Yo1;: 1(Z><#E ʚ9K f ݜ\i'P{#LOY9z=Wp`Ɖ=,w魍{BgZ[DBvN 2Ŗ/R 4 @\J dW04xıQ*0,u"-bGm C.YMBP-mpF²w0OR䢂t#75r'yMJ m%5p;&ȱ}0b`Z T8Gٙ0UöA&XSS<!9ZN"J+ѸJ*&.Yk7phZQ)Me'd aP-Ya)TIlrS*1΋Umzm{Ћӽx1hYB5ַ'B"2eЉoxe2~qn{Mpr;ͥɚA=vnn#luΪ\d<]Ą[u%ů 1%5fjrnpd8AA.w- -2f}K.XYT^l:uMjqQ,'<m,]!TY %q1|:|PT*5Cx7QDh'1XY%ӌ5ex!ΓᄕpȬѳ}2,S2?kb|ثBaggpuēu>~#e YF^PL?n5lj4nt۾]<붣e:l~6<dRudPzaŦ:hYpQ ^їQTvfylrIgOS yWdTn:Q'f6E$ 7u.R J(cn޽P'A(H 4]Kf2B2BD !D\HMV,=)sA>w wR&':EQPa.U9j%? Jөe=<Ŭ-~{Tƒ)LWfY#FŻ]ûr*lY rQ6AM@k꾞pp8G;ɷ60Wä@w6Qw!18e篣2B\]rշ{ӂ{|э-=py 1M^bKZAdߚతfxwlvF & 0hK%:(Y\t!|ӝӠr=4*}0 v%P?6E/L}Z:47c>d-mI3_b̡:˅AZ ߨmjCF _Ԭdpy(h18Xv@+()+ꎜOH8jS5u׉40 "S*;ʛ yءd!z^FƑM1]fe;&1>Lh;s0刹 [7A[t݄bGjYD̓_"& dBd(ցj"H~LXu!ݙyg& Ĺ$$iYS@EҾB&h\rL~azDƵ(h_aPECNqJ;(@ 𼪞C)uv]S}!`khveVVսzC}b ᠽ+u膅΋!hɱ^ýͤ^">~;*~bsnjrc G*q% 8_ꂝ>>rF`DH]4ܹ$i1=;Rc1*XOiDy(.,lUwci*25DH^i|TճYl̞ 5Zƈ 2rrG*A~WpEЂgF64[S2o]Hsg@ ^8R`{{o-UU'A5ns$:!ۄۏ w퐌,'`P>M+r_pV^E혏&~2"B%3o$*+/O;~NFOEȝ8L J2F'3̤S:zGr0N%hq_ÖlXu#^Ǔocza'ܱpĔ@08~g \TZc÷ݹ -{cةӆVqA~vWČ`T)1`ե& i M cՃi9x3 (@(GCJ*lߖ!րϽl˯:OڊTm0Fa׵{R%i]?63G;?T*YOI*YħǙkNsZQÃq0UˈCnIe1-2ANy&F>fa HybAfoX=[p~m~h4d=s|@Hx8Y]p#1x]"EA9g6`bED{`Hh~\CӚ"N %~~ /ӆ}<l*[!J̕g KS=y4KeSzkd{'Κp9%EtV6C\XI H C8TB|%>'I^<HsUz /Y;9u’ֿTʸi{|~KY_?T]ޙ|ݱ 9%=n'\ ]fH9B!1 1t(P>KƆY̩&GہaB#taR@xȵyHfBޖ.MV8-'lP5YoŋЉܤnC^})f wU6c6@vn}+TqձcJVm_Ha '=fR!-WCv7(h; Rf,S1.U7dZPb^XbSxvL*P޴jueK o6| ݀hL'_sv qt4i-ɝ"8 !LeTW6g=qM8ɞ.2v {-[Ew(VƫZaRQZgx ĥ] `-,Lw=4ϗU~8nOGd@ 9.휯MC S]"ځ_ĻeT1)؟ЮưoR/9%[hm?PM6X4>?Qj4d۵+e*^*lVȲ*"HG5\ Ky6%s:(z|LZY#KB RyqcU S5:2B,<ܾϢjr3R,R>c;LyC$c`sL?-O]Wllx*$|&@DcנJhߗj? ČulbXj"m=~K̡2,eظ!Y[8 l;U][iI0Ձ7r21p:=S/"E6"dTG6clpW7Bs]Ϛɫ.͈CYBl '6Gp0Swr^YLYu9z#=vI`6}+wmA Saf̩cv91Awa^:JnG/q˰kt^k}q}. Gd~?1eu\4"Afl ʳAQᯬ&F'kQBKK\NAXOKx'0dڈ(=MO _PplS-X_ ˈ/T*%BGVtL@Qвi@i?&z =zGBm7dGY2cM겅"/,}zF#%͢JثlR;7qs9mAVf7dߞAe!uƙ|H%^6g($>Af3<<\2@ڤgOP3$ Xv+ \`) N[W$Y?|$ I3wN&t[Ee~u@ 䟘"$qȌPhm3ѵbJKdFK~c?HI^45\Rq0V'1}_N邠 InJ߬>% <صޱyݮ[X/xXDITpZxM k@lEζ!h?w1%R`)&8'ͺ$*=2ZrmXc;J u{)y r5ك SC+}sx$yĭV:/7a*F< YOjX<0.mYy=ò;itgցR2B|Q $tґfU<J ]ܖftMS8[k^#|frP0I;)csP0j:MLupONJ*z3qIZ)+uov MO__Z#~fGjȢ3q:4-;ibF{T ιEl k{*3!%.*[8Arh3?Epo:#SIIPH^ܪ?;ƚZh73؅l2)a3$.[OB'j=̱=ql>ЊcɊHW5o,*J@y{ 6z&-3RXYa}>*q"ZGv. A Fg5'肈Lop \11\7b͖ȠLTSQɰ| x1UTҪab2ѭ8 r|X]S{H3&Bo1酃kQ0Y>(L ̆ͷ0LtWA-l1hD KŁf(KCb[却r{bMci0dI␬2]xTJ&J:P?' h@>M<56) i4&#S+TS5ŚW7E!Xy}^8LRUI][oy2h` aҨ1#XV@f'؛Б%u5)[jƇK +3lrec6w1 o=5m3#]k(S*sӄ=ݔ$<.w. ٠Юj5E4[ψ:̜$-*@JAW /uuW,$VSN.p{p[hmi"0Dz/{ 9{O_gP$HGڹJh?҉`-ٞK0εK ?Qw$ufY*Z8Oh4eҽ ,|UBN\!\ {r@Iup34Z} `Ж6%hXjZKLRa'F-٭ Jr JM^TGlT"{ G}֚DLK#sF4/+rAO2(+hYs'sl w?#o"?hm D[[Chm?NCht~x5YҶ\??:H4־gx(ȼn;WB[qCi"T̅.$j F\d]6.R}V"d8j9I$J_C)4ܐP! sm0ǼeC}h|mv  G?Qc@Z/9!Ҁ}LÛ|:#PJVL ¢ z[أ&p6)[WȑIO8+Mb*r׾I1U X4E[8^Nh=cYU1.'Ѧd ;42:0Is{,7cza,f2i6It1)q4yq)` 4A6oQ=fDQLQ7nTyfJ q]kp{3c',eW 1w䌅䧴h*->*ȝGZ{Oi3s嵶kr !e#`=.-ݐJ+Ng24d3,vz=n"'#C! j7Ao3YSa L:twţ!GA'4ܣG ʼg@`i"T&-9Q(-lTBҡER}c0+B"DВLC^byadЖ~{V)wᄌ/A4B"6k*|*x}RBaqZ2ido*tUddkF @=f;)Fj=\:ģPƦ.]&+ o2(|V PN,U;q C+'<)Uh|16sN[Ot$2#Nve5k y ry0̨?,*.vj~#>.FV4Oݑ}8̂]KR||Mܟ$Ǯ,9۪䛀>y~OYb~WAhlXuW(8r]Q(ԣr8(e(H7Z4̾N.ZcC (KK&.KP3 czfp%-au"6HO^ OA c^#?֬mJh68 9>5`v9Eb!_KE5B*{+6c%*j%ak4Mt],vEa4y*Upp{i_`& t 'b,ka[?Wo -$}lJBoK,4 e`5L ~h 62(x ~B@~A% I6BEaw~0< ]Rb WyC,"40e"#  xkʿ6PFF(l A3+_!s8v}^#}UaUa<2F.ߗĻkSYkHBŅ&x2m,r)njxZˆLnVoAg;|4_Vh(`/ џB=&X ܬ(œo޽\(7NV꙰kYoTw{\~0&d^Y%i /W1}B"㍝:v{{F^yh/q>xk/-W4 T hde}JR@._c@qnN)$Q%|;X- 1aB`S«ԃ 6}̕EM3XyTE`U,`4ɾ?9x!MA\d7vlϣj9YtTR#u\N!#'qB{wPwz-lD-L6(WK1')+fCSGI_~L[ E[uP[c6KB(U^сaz3)ҏ^l8܌*~\\Ud2Xh.F9ta<ne47mT:t:vyO@X;xB 3&5ey}#sVK"w-:nUIaiOwT9P8 ^؃XJf.GͤdhMۮM,{E5I4ؠ \ .4\8eo1BSVH1<1nZt-ٙ Wi rjK[] s5"cE~[>c4teI9r,r`Y{첤E&*<=쬤b(g"Q z7-JJ0vu$ʉ4|py)T@C1;X^mC\1׻vr.ԂqLV&j ‰Әak{0#g CF79h$e3JD]R[, p$XcUGh gT*cr 6YҺ"_% AvG};+uzNEŇ)Ǎn5B?$ 7,b{z8Xˌw3&#x&Ғؘ0>&V7Q'=J wT3cG:잱FʬP8:gv$}Ka냈u`ЏCZ ~(NK͟ؾʹЌ0fT o֡e0ϻ"Y&:+Rec CAc;/*1:&7Ǽ̓,qqSpV'Joi b%2$%QGRj<9$ [փk5;| t+Clӣx!O{rz@!*ψ ,\o-ɦ6h:E~}1_)QP_J؅j >ų3Z!>Tj AON @E^^Q/=̲ | @f ԟ``L(h^}m]hP˨'z(o?㦿.nئZ~4ƏeN:Y[蕬G|u&$N o疘 UMT^f? DQ+Uj/IPLU$ޮx:|췁dl2OpwcAha xqEeng,+lVc4=XL tN6^"FDIG ׍՝m~Yp :)R2ciy(#ןo%ӜU_WE Vm%"Ճb|XV2ގPZ: A:o,)K{a8P,>c{x;sGWvuvE%~_pt 6PǷqNO]V}’)}G:-chKo loH<1?T Q~-[!:KVJrX]o)"Zs&Vk\UXeʓ4%7agzi ƻU[46"pC8-29A$ E ]Z%wOˋmc5I]/qUݐNGOlR_ߪϋb?.`F tKϩa ۪io2eN9Md0N#byP$/1wYepQ)RNmuȱJ ۲}ugof(ĉQAd_3=sY*>L}>)f\8|rsS:C~"`.*&:9fFGA>:n4Hw2B)ΕL.vA^?ɘTdѮv PT, ᔚQF/lY ]'ұZ}.;W3tqP۽Cg *ìD8x1Zr e1z͈c&l5QFs$r_EET -FA`9m5Пa6Kͽ</fH|/9*ιEQtze>歷H@]N^TF<|K,/T}7\t8ڄAb%$V.B姹m sDaI궹Y]|b1JQGӢN-) cYp/"}F(0iy2Oݫ3OZWӑ6ubl|89Ee(g- ӫ>'Pr@cย>ռǧ>TB)-ދ':B u()qD$Fd( &,:Y̩$VǴoS n|wj0ájvV{ꞧbօ dG~)V7^C#)yZR1G55)JNU+rw!? B5jT.WZDv^wiqw5qkɦ Axi 43(5'aI\gS?Md.q4`J 1AǙG-ҵI`ZXtUT{ 7&&XfYA* #D]Gѣne9 ##8.XR1:r~ڬ[v07j=R bJ0<{( {X%$8vm}fge=zZ]~1 $ I[AiS]5A&W4}{NM_]6hƧϓ8Uӊct-ZZ7~$!jkO!n'QNB]>~g'"aݥӄ `$^~찣kPo :'h9T,*K ֬ ',t'wMQ Zw]eupaחO4hmSP r &pӶDl +yEX祾6T4]9~$OD+ $g]ē!9T>I+i8W ~ w3.ʆ; A.KP R,ggBKʲ2(݂րCCWИ\;~SJDM9E9GEқ#F'GdGq7LxHܸ|i645xEל8Y]X#g(yx/{ Z<bBCiц,iC0ϑX TP{T VnzY6 Ir{\@ 5+IAYE zrro#DZJ8؉Up7_ЖJ$B;ߧ1J:K,Z2o#0O}F4$zyiUm3 ѐ`H_7BzmÂ%y%ICa1j#iZ <IR[UMÆZYPE|4v)G:_m01 ) % fo'?6tZ"TKpLilDB1Ąu|i}EZ)!m~1vϳvZy1! 29r"H .(;U1ߍ׃4UZ,^ ]S;#° mB,"4߄D3._\ 9AT~PbѾއѯfYd_e-by-qPX;KxG jjڔ=[9DsC,)7:wh3{`kYl s܆)֗icZ+Mim+ViȟS|jPܿ-W'' f>y-:aX _ps -FsJ`2ZfB hY&ZV{m.%|1oUm\+ "kc T GU ]rv. kB׽oap 1(3ȖJP藙l^Y1Y1zC d$[5%daxr)./ޠ/ƽo{@)d ݰ<=}-)9+0a4wF OEjxa.1ja$4N~9ʴ':۾85@ALaīW@"vuPH%Š+6X€v8suM&'zXeo˩ B6\ƅ$r^+c{(WziL&,k&[ԊE,  P= My?#1[TzIi> #a^巶6R{5 W#3׿o~+zJR<{#:l};qrC`dOu&S.>y/?̀iJH 6٭qc&#D#DFF"|pΔԫ/pN3bɵITg79,jAoPK\ʂ?WM4RڵUQJ9c?46H`D=lݭkh7.];zgD*g(}B \f?F0RNˆPXF+/4~PClaK45+H Jhc"kxiւ# 1A-U|dđ T6T)]@ I#Bg*/|y8%[yfR'.A59xi0g,m dwm>A=Mԙ"%on]d]d2[}6~3-kt3"7} w_!*dpKƥr ML`/PL<6 *:FKV1CA;XBȽ8K`i( a*ퟪߋ*<0wC>܈:j^Mcz}T.Qt}[dksҧ|X+.IC.v dž8R۳J2@_֜o&ETշ]vnp1͔̐l6l7kƧ;HC =r/7XY(|mFhvA˅7h$3sAp}H/P,D#ӕ.kUnl}O^"Em4n{TFL^E ݅K+a t:)&v#r Q՗RV\Lv`êHأeueHBԥ72gsʦ ߕ{_9ÈA?lT/\g[ 3;6|ਞ!u ouKdVZ9#DtL<3h77) Сk%^t@zb-=T}nD;YڛῨMqʣ42MR`Q $*'d!:$oA2-blkHI5L' 7PBbR rDBk4b2e&\r8Y#sU".ܑ[7(fft)K,&$l?ʶ:j+~h8v"vjM V q ZG--<ڶCz@"i )/®hyW? 2&BlMW,x&_gR4(@O)wʓ'F1WǗ:%znM]X9t{n& :)/ơŠ$}:XGC^(%Tκ򾭺?'zbqB0hT:"B#NqP  *םe{!ML1T\ۦx^1[DhtRFNMZyH(+Uv<#%JZ`~B{!ʄ2-Z # YM _Q4}!JT/г.%yG2o­ S$zH(YDK/J{ C^%fOG5}'=kV$3q:HP_Ddи>?Lqw'$ydC չ?9'iB"{Y’~q]pF2SK7-n ggOaC=n'*|cDhl:].Ň,<!MdSܘ=B CBp^\VRBæ,] / cK]* 6*+jx?,_t)y~ڛ. da~:VЇa(.8u׎cN^flۓ^[wԯN:ʇa4W%w? azB;X{"[UZI>Bͅ/ %`m=C:"#!QD?`E>"(x&EjK"_Q7Vq\AC S"^?3-XVV$s4;:t)/8J` r>]5/[Y6'sF0®=R2TYG jFbV-z)$b_}iӺx.k1jAccZϤYT֙3`?oDRFՒ BZ+,`נ;_n# ^C&!3S:@r{u)I vbS'Wӛzr79_-ۊGh.aJI=)S]]jMDl@ocF[˛zϾβ_: IpWąwh}3 9IJ%"57ܢ ;FkZtGиy}ADt&-riYx*2%GYw8r{2Gk2їPTVCc;N俿͑Ƹ6;Sv!a*:o'ֈU=e1h<,b(åJ"%39.󁕕ꨫC{\i/%^x;ILjV! q!iEK0>$9\5Q 4P2$xIF25`_n{EZ5S]D?@ Q4ȮpFyxb<`}E~8<$HLU$Ƣwג{|l{QWí ~OsƱ\Pk9l]I|8/1<}XUƵoOwTɤCbP0nBq/땗VZYAI}."IYav>l2+O,N&, #,{ )R;pn;vIL=VSCdzbImO]oNs4˛>9P?Gw]1vA._e kIahodZp>s]9njؙ|!$({ʽ%#Fupx \馷9Ĕs-gͬL!5Q|B c,72}Q3] ];`[~Xg$67oqb*~2 n`ȠLadG'm!~`%m/,5[n2h=uzT;@k ؾБ[xMXvܷ8iGGj(#X}Ȣ s|(Q*6Z://8n@D F'+=@]'mwek燷JQuVLWqki| p?QˮopDۺV.ÿ|V"lӳvoE6{GԜpվQVy@%R(gIR?3hA[J^XrR/%2}{̆7so6C(\ o2OS D?5D {( -"nt=y x=Z{Bз`o} wW Te`aϊ-5Ce=C4L$D[v#ld}U$ڼyp3Tms'FQxv<!w|q </"}y-PG]8|㌃kj$1mI'QI1r[?#\eH?c \dw!e Foa +>h"\ZMgWFWc!Oq7]Am1ÜtTq0ƍsb1T7 Qm$Q%D;]aSf-Rw1_xwW}`LLQmһ91@۸5d!3,j" CS[c&*}ߔSI?o9X)U ^5Q]NWP7E:$^c5 +͘8Y?u!jFIWfJ -N]jCaȀy+9J:<;j`c_ $'I:1GC ~iq! 6pn>f٢`R)4K.(~I܉d? pVh$?HIp&~/>*K=o,-. -&n\w)'xÛ9{!Bwg3҂t_3/btߢYk],FmM`Iq}:Xay2k]JԹx˴#ݎZ,^H^y(=.7SY`$7J7~h#g#2vûX>Q+zcJGuHЈ5ntld@ڒkl[mϞT"ףzF|75Fi*N )ݎ䋊 Uz:D r9pZIt?Z/ KI-Ie4^# 1RqT$ΔJ76㺔mF>/C.I]#ZxN9*צOWaL'{`)17s٤d:.JI[[x, 1Q?LymK$6<#fRX(ZzpXo^qV2P(H㝎B?w=,OEGNxG5 6mWU,@)sEn7E]F4#6<Ec=eU,$ |8.T&.-v'N\EuƙYciZ#)k{s~ťRYdQ t@!us4cOrz9Z!л-}:M8HuJ|B\h4^>fM6R淒=wd^vFxc]d%= ]6SF pXkXltCD\!ruC EۈmB4G(Iq) Gyԇ2b~cVI=5ί|SX(NR}"7p$FΗy^26\Hf'5@J_+*y4`_T:6e z m\x^.,$=)JZ'+Vvѱ \4H6e$*P17~oE;6Wxt 8 ܛԌj)`F;R X*ɦ:0G* a8o5Ʒ^i5q?k}iF̨=y ӎW cGb(Oϒi=0I|^-vǘLL+*^2U ؘAm]ЀWdְQ֮=s"vodĀxw'kτKCkT0I=g)ڽNF>yҊ~SMavD~( kjg-r:阓VG \٫/b!(82v0:[vk`0{5ti^֓tyHPpHc}by84Z+mM\7D^Vl{_ӿ8zv)_F$|DR:ٚHJt*y/[`Ԣ4T]EeI9mt\ $jmP`*n~ʙ{!Io8(r> D9bҏEV{myd޶Pɮy 91j |ZԹwA`3?Ȇǎ gQHQ7!Jm0,Ra0;]*8No/PL!2sc?NrIJS]Wujgf - KM@Pdb kN#^䇎أ4[8 jk'iuv8\0KN ꆦ-Q ϛ yԸS7L4GcPG{3wh6L:,!Q; CD6'>pʱ VYYϓRY ˻?^EE+VjҽHmx$UfpԎ6\=r~NBT9G< ֲebQ+/O(Tŷi)eeMIPr^f_YY%7m'C9ΕV[~aIQ1}wRqrō_jT T-IM\g-{APOΩI؀ ' D0xڶ7c%My}"^Nzi4~Uwf2)_aȸ^F*atCt<5"/(3UCtHp\q(H&|; =N(-8wE~+ :5'v۲tpbkK(@.`n g,tAvsnDv0? HDTKxgzHZC'gvCl NI26[qjl{|O|tG(IfFIP1/H I>"0+N9~mv|]>p2MM/aX,#PUmdj8a  *f},NIy1Tn63WIfN9Hǁ};3Lpnn;fneVfRsN}jdpht_ŇQdQEq%lJυJ#x#)2dxnbt^ ,"튤XK,L?]ڽ`{$ UscKpJfG졼pq Z5koEf2B2lz cGaՍqX c0^:%Qv>8k%pkODA2%ѣoy%@h)o{#Ku@pA\GP<VVRۿh=Bm]#m(ړUѦ&$.mԏb%E sr X*=R585)E*l.3*y$4X1(gY '5|dv}5ڞOe3n@6i"GjɹuM5baukcoV?2̏A9s 9B '^GZEb95H6_H‹H6M6'œ-#o)NǦƟM 9^q$HY.PF J5=NEjfv RsFS|PRDXxqteB($w9p7tqU/mMj7ohen>Zk0 Tƣͷj#2v"N/4s<-WD. v(7Auf T%'{ޱ\cs(jaS8޴ rBgY} kJ"'چiL4ﯺhr g5/}01/X2r9y!| Ff+jGUz 7JZx,|M#AlM5KL6"f_za+Ecv@3Z3nP6qpZ SBnb9z^% 1MFs{J̪֮Iꖹ42{@mJ+d$kXE\U1hzUZ8j?{o?Vl{D@{{91Yqy}nR9lU -gZ 0̟)_oAF8c#S7:9h6V)ժܘC| [v|OƩjHإyh0FeZ>6qa>sadҾ\-9L 2sScڭrIdv2:5m@{{4lR(wzM{Z]\qI%8?+bhXTTskռК2yH!Cb9.NPcǝl".x m ҧ"K=}D72<-kI _žl) 7|n*423 1j .9|77 4ċђukܚVjB9gN^@׾C³ ;KIDωj̍ݗ=UPŶ $ȬLVHGE\\35yH b9%PyZ}YUJѧD/vcT7Սt],A 5µ?KAMK(4}y}Qw_i#do|\Cw uWf ~Ta$c>~Py)<( HI)GRn khy8SOײPIN:v@=I':4}:gyAY",ئ:8$ /VtLhɿGgVmPV5|j8~,!3JC@㔔xa`G`/ Ō !5QUf|H=$ S3]L U qr44E8j}` p3w`P4p<_^W@ozFK$UBD{hZOA[Q/Qn go {FSfɌ`Zȯ#Qb7`8.I/bL/c}˻DV JP %*sމMCF{GoH:G!jh4!$?Ǔ  %*N>z>(ۭvJ^NuejQJn<8:gTJxj5tߏ3b3XFkA>י`p"n崇xv #ZYDtlpQ?Wgr`Kۥ1>/_χ6Z4,lTFSWi4^P"L#.u{H0iTwZ-IW K6ťg elR <Fu:?jEiT˫ްm7R@mDW$M :-=U3tqԚBY_hh3qNJfeɐK8=fߏaƍ?lkQc|KnhpiՏ$`¶8A8?BɻYڑKZNL2bፊZVP Yps~CYY %7㿉 Z #vvĔG\R4~ƒoNJ.@vڪ{aLܴ3sh?鎒1*}3o AHu\hq?)ٹXh1^اhEFy?bM(_Y< ;WO<[qL O΋WwyY8'rA"g؞)Ȁ)u6RTs7bCO }"G|( Ӿ3ᛚK%>FHyI0w"zzYVљb\=6NN҃ ǻBc'eޗ?myBzR9Nd yjt^>JI̝8=uf/jDcF._M\g&X߽ ȒYmѹ@$!(}zwǫ$kt3`Uz'"`M >~W]&z;~JɎJsR77ad7sY2Ϥe:%v3aÐ>am;Р*(T8WGRBosHt {J'NoApF2Pih/latA|ibd ޓ|W[Q W|sXeDmEv4ZJEڸP GP! eS;͵gYlO]$_pCqmNΦT\ܧ(8, ABl~ΞS8 4KƲUdмsG^+;xwO|\ 2!@y-ĚcN#B\OPUU%催1dѫ?T_ fNT "t\1[J5 \1\~qPbs>J+fȰEE"7X ۫%+*;Yq3`n׊zM X,bA.i-Lu1XEP>p<;4Dl\^Ŭi`0xzB0%gn@_'kA41I\=련S*闊觀 OA/_l8ۢ?@%.^Ʃg߰V~ht#$l3;U@R)NmjsL`gWS˄U I6.P~VBv۔S[Suʹ)j F%})JtPBx$a |+U3yaURvm`3]3Ӡ?ihQY?JlG ܰ j̨x?^KR`wrFsgJZZʩ 4?+ӞL~m 5c*Q)t/@IS%OÃ#$ Shݪtv;5GzZ?2aܞ^}q?^{"(Dm8`_>dϓimyRR=Qh٪B yZR}<)}L)΀_V+7OamYN~f=~Kz\/޺+F_e$ F#TGXԅ@t΍gô*+ޠ?݀T==a@Ϟ츣oLOmMUw!#Å) !/NgN=-uQ .ΎY[ᨖ3\]e٤éhOC:sI4΂voȦÖfLo>by<ԵTLU1a:_h`oņq (< OkkPc%¬bGO|@t'S(}h^7ep@'BMCIK©ӵ _R?|;J].e6X}@fQW|OmO]T@ΰL{IG^T]6^Swo~nN][(SWVgٷ5ޢ<ͳqƞ4^;LC47`Ƌ^iB;Y: {M _4-avv'=nw;S1MnCʛ|ϳ=c. .".̟-D%6@jUOn7Frgّ-Lr- j_H>Us /]Ajd{bZ|4|ec" X&SW|`DnrpzUC$[Q,W!d:*61XS H ]ڎߗdz8H N]<| U%.{/ȠaNh?>+6ݕ)uoZIOQQ{z=( lVX̲c@"KUwH:fA2ą՝u=8{# VHN=݀!z&}ЭS#YO֨"qT.\Qg]6cՔh-)]C@y >-n:$&h h@vQ&uGs=>t0(0t&-TC5->J^J&t;w>TwU3S\?{X&я٣϶lR*Ip?tW_Y?QS;Ϥ!1_,HoP#np bJ>,h )zU)Ma> JW|I= TTS,a[3W)jtPf;7qON]x!KnajzZnzA$XXΤuj̓wZg ř% Du7[ 6PcIg1EZ?kucSReYBC5Mhi< q1"͔Fp窍f2 BY^ݙD,;z w/(Gn-PZe 2$oEs5,Ü" |p:!%.;+,}S:C šc;f PLG0m7Jj1",s$y0 86h:Brjx"Y^=Cu<]5[Iqaw:.fV;V4L} ɚ֍?., Il5!bԠ4<r>aے ÷ vi8j3&(++A Mm~0)ѿV"کn%ZrXWBp=8 Y_}AJ{3c0ilQ>[$5g ;kގX=/C VXhXm,4n˒&RƟ~د1=*I^4P`%]Yߺ3+96 n[jP&PQRݹn; ㏘Qķ_(fƒنPNU@c#^}F*& Qơ-n 9~Ɏ-w6y,[kxө'rqQi֓rƎCČ+Vp{ &YK5n`xNc~B 1?K 4FRD" #E/\], cߞy9ovT7pz)C/e| B5QJ2vN6 x dSK$ј &pr3>]xE,6rJч.>~Lj/<1GRܔI P'=_ȅg3q#:tތdr^dO?_ڔ{@m׳q&~ֻ@u$uyO>[/uguh*bɲQ߷^?ȃ. džC|Cgjʰf6CX&OI8%Lz $jKÊJy`wtM+?\cyp d6{9heK;:jZ*xx%^X6I&Rƞ2% 4nEy4&U|LlC+sWӸ_ F"b9so8f!#V`dq)F4nTN:;4bCB2]K+m@euIX˨u޳ﭾW ]OPCXڌѼSkfA[C^vfӬ< 8~SOof A4̴rHhy1&3=n6DV-9qdǚWbOE۳m 0DXG5lu}P-?-\){6xPWQNfȞ7ZB+!N!Pp%tsa~/N\hﯖQHO= pAU;FX3V73pG~Kb2;ȌR*fr%DIlB^(8q9|+λe72Z= }}jk+LeU`UHgs1m^) +{1sxF~\S9(XE;]L;`Ƌ \sc Xt zVC6ES"4 7u^[`*S& @Z=4kw 4xM1csllѥq|wʟ7\ ֮]e*‹=2TBTTB}ABCYNrjyq_KgХf`lnaӠ7B&h}\w"Hpr)4 ȓf=<0r_VFkA^|"@DEmǢ'W0#=2pS۰AԦbZ`J<]5*(LhըawzW]~Il4s49d ny[8q! mUjC껬1KNx@ 8ޱ$Gr/tXC &Nz i8y-*R;H+7۳;4C)pN jkJ*o[ߤcl3Y.iA\Э{m[տ /=BH^:Pw`RӚfRRٲ,ӕ+ZH1{ ZPoP{)5'3?[=SQP'm,w2 V{Q i Q=\lkFUxLeep&H$5 Sot( (Mcun&;#LChHz/ `Q{S2hG@}dzP-nMH"G9kx!)ub!8hHFGaFP-SKg ^1Z$:WeNTfgI͔W w:gd'e>,|+A`l8:kՄ78^X׿ĆojVѭm7&K!taYmكId}GWX0*)Ix N "O"QO@ ouuGBrfjվ3#cvȬRx[krUF&sҺ#- jqN8 `oC?pL#Uah\؂Ǖ~W8LUvXeVK1#)gOC-$aa1W۳Ŷz-Sqg*+"4W}L̨xJr3#L7}*HyRMqt!.e5[bq^(-`Se`Q1uEݪ4?Żr|w]5!uwg< `J堳9Pʍ~$y¨ԯ:&]BXl< 5T<-tYHZtI|ojcB {<7g!nĥvyxSt|xtEDK@7GhGN -GBw*eDtмE[BRMQFxB7S8Ġj`)V3"((LOI[| c ΍h: eiBR$̗q&X@r$N Q =<}?ĕ3n"AJ^!+ģPd-Z_V ֱ߮ݵYfaHY>7dd2U?'RHbQW+~@t4TJġC,֘~@́koF.ĥ]:@/X>T}T?ܑx? U B%BQ/aF$m:|^bm 8f:A<4*myfpٖPe]9uբ,sm7 &~!%/(I`6 i1]eai8m T׊@MU>Wzpd9y2FN א6ؒ ,.ݐ *U-`4Das6!9ݨٵ*7(%(Bu!G>ݹc*\3`u/Vzp7`T`ll`Y&3 Dy w_3,rnѤH3cSZ{Z^kgWMa4vuXtlʆ31puJq%fB ;\ji 4mEȡ'݁C0@帝t#`4q_SƳw\C]oAM`Il5r,;}̍pGXu*FNk.C$b%̢$ɐrcU Tz>1Zٝа9LJ)u?MkB+e@"9kM8$Q7UCճL_Ezaq hib:D!Xp[\w1yS MrUS6Ͱq\H85[4QaGC2%1DŽ>uq1o e|Jj> fgޅu:MȟTq~Ġ7TPAcMsl/aT&7BDeJ9taǖKtIܔ*lHm)FٔX=sIU r3&Ȥ lȏY5@!jk @%~⾩U\iv q;N7]JMŤΚYU{*sl|;$oh2 ׻M/~ hΜvkh_Ufӥi$5481 k$^]$~_8[BgKX "76# L #(m9Tv}[ qErNK 5?H}o؛:SֶζjJ*99 bT+/? Wkx9b@3MPdY"o1P7kvD2u\rK|EcRT,*OZH wD% CHkuUW#$a+ NvvI7b>f>S㬹*4|fr %6';dw)G㓛V1tZ E"~[ĉ%pj\D I`Wb>202Z} ;#eM5'iuI³V<os;@Cr %gdakgtE _T87gM@Hmկt]׹ mpJG N5ݠ=sRR,ԪX4%ZzA6'cfc ~essmڻłaKt|'.}3ʮ/ck*-4NJ[KߪnFQtN V\ Kxd}-G+1/3BNn 5R<{]; j(W!07ҼkCl/F+p$Xc,$$W,1 K`䣇h-i8 coHVh `?}פKKSZ|p/ kCLM⑍elX-UJk&kAeQ5h+EhWQ : H=3Y{'m5;ⱶϕZ6 MLp-=o{YDV;%[`Y{_zxrQ:[Z:|ѐ2-djh^&nb5~8<|m^zmjfWEx}H*hE ˉ;4z o\cV_Ǯ gP!KH"h'X܊QV2zHnP쿮Kp28t ͗zQu=L7 "}{\~cfKnQCaE9jPݦ_.L5RT0^te0cuhq#ua|6xE٣@kex,|#1Ū YƗu7ѣ'- H,[tyXyZGV'i%FMM 9wQ><%iZaۭVsqR6r=ȶ Vi%ؔl;NլTHеՙ"E]0TYXӶ7=UѶذT{OZqb$ɺC|QNw&+XJEz*P߰8M)Jω3XbŜ$%%$Pr !uBh\gf/zdPf4mb r!f&I+GeUH(h^V;p7TA$KHƔe0l>U[?sRKI_[|p@v[!/CgϪ'xAd*UvFN턪o;׋7y6<+yNN v|jۗI@-{]݄b.xjdy[1un#չ}~G+ݎa IpѠWP-JTC&.|D᝹_]:m^3ۑd_aCEi.rL9surʅ] # V]Qz @@B'؇_Uƀm~18Lz#=i7Ivl \$ħJe4 fTΡh玉Qj}H!2mtݥ˽-b6I8`xPkByZ욣2]`nl,3C :ѳUOh-f9HǙ2B;J"yV R/calKxnعJ\}`4lF\Vl8lU{-j+z) >NӺaxk /_}sNC(?E/)CbӰw_IWj-;=EEy.Дce1/A7xw\ ]r'?;䝺Yw] zq}~1>#[Z}MB&*ӂ.@i6ߺx"2H0_iHF,ip(R jqsٌPcv!mM A%m.@(F(WfGsLF4'=|j]Lê׷ڴBtDŽ1xXmr,;>Z τiilDO8|𺇋.c8#_K"=Ui @aф.~de_:ZP+L) z4V:: (y 'A<X<gl+1\:UBEBr.R>D[ĠkS\iȽQw=YI?U  ͡g 9fp#p v>Cp6c46WYWSoÎT{|s9ҝvJ9hjXE鷈(aBG*Pa%ڃ% 4.bDʓAmO6پf4xL#oe+D( F h*`;SPѾ.K%Ҟ e#)BT zg6"(93D m&~ t~ehu/~brgF'C /63G*БnN6pr$9Oyv!`7¦2yn'B5 e͂bfߪaVtK-p!_=)I,i)g:z~S]Uށ^K3f-MTB&C-E+?>fHs A$PmL&>'zSRe`$KdQϓW/y_TNCC_ZE=ݧpdF~u=WV٥5dNo}*4%|L+#l2Anxp*Յ[:rGv*w ~O o/Q*)TWRe1'ߕQ_5ݕQ'=&׉No<u 3Xi|l 7&0tC#aX~}[z0!˷ŢUE^ԃ/P|L-,=رe*edBz;_UZ&Ǧ1J酸Ǥ7m&v~=LV=N]p ~xT7X^f\bϋ F_X i{@S W}+"#SOk|oRCŲpO2 3J=%0Ku-w`<t>$ka ޛ΀ t; l |;~N;ڱ]]=D  EbjbƶcY4򯸣MRTHT9ο]M08f'x){*[$Fz|*n[uQ ;4.U: y:*8y5 A3y@DZ~=u# |sz}yv0qYl(ʕ%E5DFJkAVp\ }W1ymz@(l+ n[kw6|sAC49cAOfx/?N@ ;s45_؈Vc+EfD SaB ^V3n#Lahɓg*e;+$MjYSmAxIO(~i68͆!xDÛKK !8 lAXK<2aAMU&܁:UOiNi8ͼYugUhD.1)AYp<8os$ 2WTn•a-y]-=c( !=7 tWĽaǟ*jg++HzČ,\&0N)&F⻿WrXqˈ&#?|KR2bu`c΅ZZipp[]5>stc Ʀh_PΚa ґW3zuF 7M0&/K$K\I:%~ -Vې꽾Jxٕ&9I࿟vU5]#uێD*Q4,^*F: KExVf5zee?}m;µe?UWa[2}Y+kdA^B]N,2#.>F!Gnȶ"Q40O+3x(S'p:}$xտp&a*}أv(ׄGyy(+ ˲6w V3*a]UԣhttXD-!?@%}K[,$r"Pt٪}I LikD_VM q4\bc4夬k&.R_9$ Lnml$?edJ#!4!ʵ&{k_0*NSS]]l{}\(aQ6Ղ*J >m/5 n V6IPPU˞]z\> Ԓ "Qe]n0)W7yﲚn>< iE26z\?A1]j=Pkݐp4!AR 3Zo͏*?֩45q6@Gci$vUzlt&4-q[ˍN<c9B@ãK}sRn_=3ow }IWy pJE5%OX76ny"f` R}V%O]:rweOm [5qe*%,o'8\D@E x$bu"s; u2FKk 1s;"Gq(&ds<*hTHl& d2Ԫsc,CrXmt=~M9?#A{ , 5'tק$gQl?WxvELnvK{˪AvQ!\dXJTA+M0&WfFn~ѭCWԣy/_pDDDe"$Fkg*E^٫zIn qȇ  Kd%3Xw*꾋'ZB싊*JPe+$[[`8A^]34޸k[[vzy[a>ElkLt'~&p nUإ~ê27s'o#86.J7Te$]t(ߘ;cn'Lp= `Qc Z{2$ht=p$F󘈁 vAal!#:eQh;^΄. 8<Βꂈ9USνug /x#kcE:NA!էg1?}ZD@LPlx{ M'4IaRh&q'ܻL{B;?M~Jc:4? Ik*ōқFZAGۯ`Cz_L-W_nˤHQUpmp#T= G8CR0 +\6(Fx$p&*IB|.bZOս )T"X]SGG֐d14n8?/+r;b4WPǢ ?jFCM0`ܚo14d*Q?.΍e2)YJqLE3=rQooތ:qVbٻWcl/p;BԆa<°K_pk`}*7y{B$7[iDVBRxe@: sPvn0l-ka\~TZ%)H!,̍dXrKJ2^*w1oVЪ(Urk*'2V: 30q1^L 1ISŹ?άfhJ?3cM!((K +ׂQǁӬ1m̼{$93,: >۬hO\N.GAm@V#i++(5oZF O2/`@n,.2|s{v|Zت, lE!;j$Mulj|I#jjiJ5EɌc 6+U\xZg Lj6+Y(2IsKQ]s?)[/BzSlb"-B\Aޓ,,4u$k`E3Wctj_A=.$͎ҿ8RiN)x\;mAUVnbkx+UY Ϣk7'vT;v5oa-wRXfkhcfr8P =ָ6πu~cz%L#؞yЊf-ҸLA< Pz>y殸]xLI:-޳f2w[lMoZoE8|,S ʔv%+✰YKf%3d ҃ 12d\T֧$-^<VthZehU&"dQxn8ۄU`ĊYN)o%(d{sNLCUF57K' :_.QJ8X⡃ ?CF*"CO\VHsbFC~u5KGH*{YL#~3p|JUES$:# J8DFKZ]hsPen49&a!TC)uI.͂.ǀA]A,"H*~ ,j$jS!L-H}sSpQiɯ;Zե+{heTyU daJ7V${BNǸp$U|1@fC)k0䠔x{\0,T} Ftұ;ggy+ 8.~B4Ar}|Xj6hɜ"+\*y]K017z9S Pm+e8t7|f@.qg a.)X䋃\hYz¯^j FDcWan Xiwݝ_Y'5D1\n:@js3Rj_[Pu5k3;/ cPBh/K+ٴtoU gJkU)Llx{ jn_yNѶ42dWtoٛW֢/_  s!YVꎛk'P:Q`5~׀[;d!\:>{Jѩ󙿯Y,!τ#0X.?LCΌ &t1=ܙ%(H&=㯴*O@ ?ؚ[f[d 4б".~)@[I}-RP׊,T1ߨ?}E~X3Up DrlkcN'ARC 7Eq;׳ ud\2 7y_;A7>jcm;BuM]'BONuH֜a9؂ 0"0 B->M0 Aޖ//펉s)` :yOiXohST~HٰEuV7{3O?$b,ќR do.3ѝ 1TO.2/A\.f2{M x^w ũvH_tԡxyQz!2}w> {PhP~2}I/\cgWpCl2Abh%6=t98<^ȿ cK]5%^.ޓAAT,ݬ/|T#cA_W~#V᷑{$"[Kj;I bX |%3pi2P j)m0mEpV\O8;j (c s CP}n}*J]1NQ҃l$XFN yS Eodo|C)P+ְ[IoeĄ׫6:;!p(LdB~rYVBuIKM Q  .l0WDFwI8trq:Rkn'pL[3$X͸%K:¨b/ YhADܯ64Es;y$>0, `Kւ3룁$>u"\ *Ѥai?gH4*ye0+"ޤkJఁ1yM27GxQ;ЇF'\,ds&L0El0b*#lzQuJ<NU 78򡋻Um#~hc}N Zd&;Odh2%ƳDse"Y"j6Qeo ;X5 5׏1WgzMCD@ڄ#Vr!Wf\]&t҇f 3(Q/u /z~ARRLOTP_2^x2L-8tʐW);7'| :s#B_CfobCV}\A҈N&F[ ei;{pXz7,ڐքOkv?pDG"DJSI0/bdomwٿ{LGQDV ^^$5+ޜe{_(p!P̿s׌EC:B;N]of#wKꞞ"Rs@ES^dzsCn._f +SǏt177qKYtl\_%\=W0L8F2ͦ>1ߕVpQr>ZTE^R.yb]ITHDu:+oCmlam[tQ<%ͳc aHzI5R(KA{ZeC9 NH>T0_e 34_/!ޅZ׬ Pu hOtۼ,! 81޿XpV֣VLg~S]Hw5 7&ח*򪲤%<`&M'3张M#'ުk)q7mq>k{N}˝MRVH PA9wܥ<v)wfLdb10fHpWn Im_ 2&}1Iw." f>7CE\/ Dgs"4xIDݫ}yZXQ93|>CڳprܼKeX n?S3=6^-}rF6ZQՎ6E3;bCߺ<6 N |j,7 4B z@3_v~(DD3O'8IpFz^|Ma*C7?nV/Ɠ;!m.$Nktx=AnWdan#yL\Z5Ahҥ—ti _NLCSi5] m=oV;]a# Œry{'s?x1?THg^*Wv者KY[ڿR_*x4&ʫwϮ?kQI>VH͹I1r 5qԀ@.2k~jGYl.3<@~kR?܄(Po<_xj*16xoXo2eEygr:Ef3Ɠ+7|C텠K }b:6 -GsCY}ܗzx@x *͎<ԝ2_xV' C)d)YnHs:4V]`Z!f`㡐N`M'v(}2mjC['ufU[ K1xNdŢuctZtaUE] ;k^' 55WsP|3{ ,|{؃'zr"7 [_Ԁns/~R.N 5Ri%nrX肴f|PG-5eoS L_UNAb~mknm\BLveץQV:t+E~2Zڂe7(-Zs[1 uuaԢ0G6ȜΏn/R+P @tH}ai&vv#vNY|1r-i^%$EKP6yT dڝ]AVvHx3bsq;,DZ4`kU\v fB`:HOh^ՋjRcbP/+)=] &Վ-\(܃cbvz '.Jq t;=عȕ]V4~Kv5(bt3$ݪ{G_1px|pOSS-T q?3Wa"lpjAfK ۬74͑4Y? [dIHi'BIIBz˃ 9XEAjr[Εj0_1c{QwE;KG+\wExp$s,#Q zR{f!?ZwѝsdEc!*FK:c},TȤW{D֎6$K9Kp|m6Q x39귐ҪǩeI_8 4+ѥ:4dmvRW8*9 & 迺Qb2AUKm##<(%*:N~;ptL~4y+HB@T\(x$MyqQ,l:%sY2XLSH\3DŮPD3r?G9}G0J Z=ׇcYT.ǻˈ_ЏU~&q2S~õ  +19SUG\3\ܰ,uV۔L(MYNWI$cYx_ŁX_lspI) TeQyTqlqY0ŮMot\×FSA ; 0ůb&yv}lK°W\zW\v|vxY߁lpS KCtVjzZo*XiRtFg-8_6I/6ތ#-^|55,7/P@Il+q~spa/s)z^b.OKҝB]wH ".DLݹ*pu/աrK2k"v㪔(`? .|ӿK=Q~{ Wr~+٣FK)g J+x{ޠs)]87G\#ӼBZ-Sc<Ѽ}@aQÂqܹboL.'fg$~ͫ8JON==81H8 ˅+`h?795yt)'迁qy5OVO3tw#PUՖuM"8M۩l\",1HJe|2L_B{"2 $mM)Fw5Be CSGhDI )QFR= Y#|Dbi`?p% )=cQ2e mYD.M AtErD!HUGz]٭A)⽻)#X~xX__CT}|A0PZ<`@y ĉ;6I^Oq+źb ȫ2Mz$P=!6n."mE P&  ȶB61fu&Nh|4_ʦ8aIWJ=j]rT~NrbG0R*x\pgq(!-P}g70H EA$~n&`xf\b3U5֨8a9^k2ڄVgt~9,Ken\ it0Vb"WJM? sr"eWM 1@"jS[^)Q0R߿S6~wp(P9]&yïd6"zԾyJѝA{RmǗȉnOE>2oT8^|y'Ã,\Gzs {6 }M )mN>jJ8PHfΣߣ.U,iL&h@x5ӊ>[_Ğtb.x\ZZNAPrbbn(,K] 3pd`͌:T&S/gP$ɔG>qHC<(/!nGҳm*!2w[* \g3n:}{[h ̀~Cϕ8(=b*$v g 9͋|9&gNnq] @ ӱS4UMJ[lO+iiCs=]H57UhW ;d^IC|\,)cЬz5S3|t}վU0]Et hR E&hbgӊ!(%%q**jQJ5-ݜNJ*7Sbܲ40X;[ubGg;#19|a7;%5|6}3 Rv wk-4)XMa]byv6"zd̙Kp{b60g#yb_6gF.nܷ5Fu=jG"+I? r!v{ [?5t8NLZU')҃wxPIk=R;ija[UP9#gz;_˥=oY<NN6L&?pRxu@ g]'nbF:}]Z byvH^;t[%$XF,(.TA*Q:E]8d͍ƠFxBH[.{>`145'噟m Y%B,?U._Ao~M/ ;[?X'Bf1[A5Y*$=0PN6`튀x@kh+t|[Rd?;y@+nYMdgP(pwoIE.⯿br{X2ykJ69>W,$#1b\ 藯ߖGwMzRJc8z/m  # E˶%IW4ljiQEj/O6՘x(,P3iWe] fձԩ +e~-v7ׇ' I1l#<茂cPugB> 'J%n%-(:iA<35O:R{I`E.b_5G!{FJR"Cm^vg2Gwo)"if9B HiF=Q>?D$1WHt*NYcmrΟbΩsCإh=ؾGFK`( 7c "Wӭ䝍x?cLÖ-YQL@S)[!dfݜ$}LP/2]߾OvɆj@*ѿ(>ZA=얬A%iCH4ud&ٟb, kC%7:wKp&QiHĄp|@YX۩ø)y}x/V5b9!BiR;Iml-C[%h[>eD VP`頮qɄ 6V(nߚPqeoO߹+cv8`]> &0-?ߢ#\m~ܽ7t'٪@٫s?x/s0Hp᯹1 sz1~hwGLܹ/p 1~ULRD5H??!97[GYbBnMiDdK!w@̻u>g#ӊLKY`ai/kM6)JK}S^dr>'nsʅxp~v\/1[s9ؓkX3 :llg" K}&HӃY<%kSU/ix Z;==Ajҋ& ]^5D/e 5`) T JciyO|s9$;n`޲6%nl-[#CCHsp?E=☿3yt:bujz{UH^4j:?Ldzz~D(j wf+y?L+O5QPh5g8,zhzJ^=LI Yo_oeΞ>nב\bq-㲶S2Assbr9l8,c#і%^h{ߞLg 6%x0fqIXMy.Qʫ|「#nL ϣ&IhXӒcA;i$oU6Cߧbx߶ҿ @fnMd@Idj+D>?nGU{İZs_73?D+ = 60H{R58UYΚQ@)`"پ$FrM?&#~Yjlj[se %V^SN +},Lg@qg-,CFHːf7MkZ}[p_®rPaA7,W>heې8<4`x)|h,Qz#!p2%DtTHKZDF>k)Jq g׭.& &UU] a+ pAΚ)ʫ7No cy@US~׬/C3 Zw;Axu\]Eȩmd*m6-G ͼI4]:ׇI~sNpWw~8sB@xwnXkl((j < [nw-c!l\!m޿4 qN/gNCncc2~.t׆jG Fjz%AeG7-U(N0×K-) ;r7Q 6 Oay( 1!57#;nu&GfI$ay] -D44JOlYXjuO."s'cck2Jb;<Ɓ@ ܅"=lWL&wܟjvmۣIf@0kXˣ"z=ܾx;Dt9Àέ4=o8Su( P =bv+;yAYDb ]3͢ .jRG2k޽$׫zA"r଎t' _]YbIYElաҕ|W٭?fKʲ5Pw/<-"/5YdMkb600=1 ,65PKw'ŻT;j'[]rdBMe Șh ,^][ a޹`-ͤYWT ((aP5 jeoeϬOFwlg'ժe93'N%)Ahhzk"͊iDX?yC20[Ois햡< dl_[oCxo?{s=F[QM,2|[ʄm4_DmٗfR^k᭜Q'J~(U*;e ] MoEH35$I"_DLՌ^fx8d3ާrgZ(l컠 :a?@6b3۴:3l}Hw2t"r.kF~Ǐbֲo/ nY_JclEemu%,i Vм#8VAOB"g8 0ލU+0 p>Eih8!@ZY@%#OJJp ],vLq:v*Sj8'Yu; >xXJ_j "L̵ Ja?>-_CeTlZf۹a?uCҚ.̜OMBԮI΍...xJ`1_{|w;C5 idUU؜Lb(t2+ (E1˯uG9G\v%پtm rp׬WtSNRpv?ܜКsɾJC]ub@{b9\H > m=Km5KBkE4Tv,647\R/~ϣB |h }A@QkR2UptRm5XDP6uP 4c6;27ЩIAhŜڌNd?>p T%h:j;)خm[L{K @pA5 ٤KI>ohdɮV Hq|$S SJġZ#ӓG,_8`4޴o^PPJpœP^%MzU |;0wĞ*ͮx%hMLTEhʵNK-% ۉ55mUlq^ugoZda kIÊ|\ɐ}5N0\ܵj-"D-@{_=l RԄy ŶĈeob yFp^մ E֎-u׿j:o->+55"Hn뀱FCț?ʵ$^b^v qJXGJII)K^8w4pk`/nI|=݊ An,rKIPYx痬0Tu[3 K3~v DNS !EK9ڶ&&q-笚!hu'^7z->3n'F=#U`pS mH/gg648-TF[Rϱ|!J<`xcę".^5N߇}b=r}Hk;/xV4܌|@2 jyQjhO!H(+INdFZ H" ]M9Uf.׃l\#+~3sl_)!b&jշ~}=`_ӂ>w,콐'3[j46U/FN ^(<jz)͒p~%ns*wP$ _ȱ BVz w ;}7!lƃ!P)mJQ2F߇+= ö"C}ˀw`(klqi nqrz ո9-WiOzFp0Kyw1MdI{6~4 }"2勱`RG,K<6<- z#F"W%$168a jg>[ nZ'〭0?i  ׀r+~Yx_%ҴiA(GWEx7'DJEtE=7`nWSg`P>W|^c9I 6ʽ]]ڻb ` -IdBbay }`DDw#-ؚt&{c`px;b.瘬k{,0է?n+Ƥ/S`U۫Ի t7mHHaQn%~3h7Y[2(ae[j0N({y?cmwo^Ͳ+|𲀠h.CNj`ZIxðuVhFn 3OaY-Ngh;j3*צAK?[Lٶt *G8qܸ^[Hw 7Ɨ~v@veY>fqt?KI32f1;+#4|idb ßSxGB׹1>9fJEcBH(I PEGHFZ92Cqt+8*Y<3$1|GǾ/T~.ցXBA/ a=v%* '槆'OF^?sU&{krY7LTCM|^1]#h0ĻNbЄ4G0YS5tw >Mqz11\N0GC\W4"CmV@EC}xP:d#i+,09eOƽھ{Ҵqԡ }pug$'\M^!z-UqS4`٢4n~iW!a\&x dy'ʖ.Lw/]nO.u=n?OC;[S#qԦ?DuʵH4(-l\2zP7ϠŲ PH|t2d-J!|\$0&֦D*} Tgm^r]%:+PV_3K}nXܴ= qf8 2NҌnN0Yc3~;ѫXV?C@Cvvc`EmsN x7G{$8~d06WAљ t3]L*L]ӿh"_bH5.Ehm~W/JilkL(m~7 ~id~1R^ƌ]$cLJ &fcԠgD8v|q$mBQ\v.:ei+UfI"}'l[|Cm[Z~K2C&YdRz(CrLKj'/4-W`zR ;w-Z3Jk92єWّ uއQ8iNPX3}d0-tPRth$r!/E(dW]|*<خg_`ukLCO_CH\\յ;l8E(2pj)hg9w6g1KҰ# IƀOnļ=Ok9I 9/ A]c J7gaƹ"V> z A˷q/DQi =N(lvHE>?s,2l+g\5|NƹqzVϟ݋{';i⌬$]f銁o;i,`͔8w^mOdU^o tȄ+r=&*d8_6@DPM4GL,˵䰲xj0R&XPs5AWgxҲ#'r|JE Ic(?nȢ?.[\ā#,*db j/@Zka0V=1q .؟5kjI#NP2_iN?aHsKs>γổ~]d+0-w)zI׶O߰1gwB,g{Bkka>m5*5-&]s@0e 3 N#=ŏB}$=(3z!P!g~K'[ 1*8?\B#K1X5wL~%"ȂPK \ފ mrl? q6=># "µ܃anfYH ti_ PAUAΒ kR;8L;oRZb/=jTy[5~TzWg 3ΩLl+cz Cf} gJrK4d/5I,Ȏ@j#X hol"M== ju T$r:TU|]< ^H"q#5]('fM絶 oECφ xbׂDyv-'ABj֪k<<$)>a0; h:ej!7Br&L> |ܧ6>}9rxř-[e޾ t pDhVQ~t$M*NsNv>6ۭk!] Add~Г߯?ҩV+rZRbUj}KwnT5ut ?(ZMM&Fd.)YFi$oQG_C xH0:Zldsg<}L8vMV58É ۠+quc% MV'&#DZ VO฼| l ArqIK gjc"4qa)т&Pr : IJ>ضX[m)iA]RC|?hI_юKR;0:aD1&:'!54Vd}?h*sǩ zjquM &SpY,RW>b-2hHV1gDϬTzo>rGn$9Vtdnb4p煼ޕAhUJGm\ሹ6wm@ -~h|AyFmQ%&(V30Sw x#NGoe?ee] =Isi :|ƻ >L|bkRKP #3ɕ-C !!Py;r4ʳي`Z{/1Iʰr``i^;<I?QOBj4oTRt(\o>mc68aWgC>n;I=_ua#( KZ;)wF3d֣1$,Bz|Rd"h9k {ZVDPJ=w%$ D\ 5┪)?t>d|"CVL&1%HYukT]b`097S9Pdu| jXlJ}hBEsYmɯr!0( I)OIԵlL/Bk&p"'WDj.jѠҭ8G٣D* =M C@,Uԧn)j%a$09ޓv ޘ!2i;|Mm߯xy&[2X8r3l4^a׊Snz= 襗9*IϺ [fM9 t JVq2ɉ5~~8*`B:k<6iw_u dC|q94"fp^0ap iVpT\|-I_D'g +\Hξ7AjrޗdJ h7>Ul)͝VY*P#b6Xa7XP=3a"-{L 0qΉVQ@mu.D=P 3bXaJ,2ut;QD(qEr;H@:9cGcp(54l+bB+1؞{H]A/֧-^WG ^Pζl>zr}dhmIOrvw/[@N*܃d.0,X}Gp4LA !$ )*i篧G84FcFӱ_E9o/ e;S7e~X t+g4ꑰBO>x|sB tpۭxo DlŎ>khƷiS`re泵;t9%H.#cz^ޑA9IN|]p5="6[w$.v6'-$.xӤ!f&0{^$ +l)K&q7h()#&Z\=,5c{r7s.!;x;?R,1)N4V;Nq(4~XcnΣ~[mmn|) 80&F q$Ɯ!(:T9y~&# +}]|i $a%˂"^\ؠ)̯$ Z%0-,Ɲ/$:T4(J3s7< +p',ByNTMR顸žay%iG )Ћq5;3S`W|2(EJh\B\0wU0Sgbmp}QF5![xIMݱGA[MvE(ݪ[R͔ZY\<G6-z8ճ% %t: 6m"<(4=Y¬)r&$ rGFToA2` (:4[z$FP +JDDjL%;,7' 4|f4N /(? L2oԃwTvԣk} D|%LHEK+qꯧgc5gh㛙?~ jn=[,.5%wY]} K U A&Ҹ#AAAS4'cXf b0 .|CD0`MxQ1A ::08]n:OQ4&\6X*yQr 0%)~%G1!,9urgVEG])fo1eR/ڡGRܑbũݾmܮTf)sT}5rro^0UO顑ݝwp{jۡكG!ny_Wf3! *&ߣ܊/w /"ðg521~\q~kjR <ސ-*il I_Je Ns[{ ts߂p$N;_AYCp^hifVZD󳋧k(UG}]'崢hà} җ+ ~c!"/QRJ7Uϣʗje9@뚺 ^uys}sk' U)h'E]BM? ;pϓ֓Ok ]QUf\@%#G5÷V?V)TENDTC ]hKoFJBy2[}U Pʳ`>c]!!aJCSЋ!d+Hx1Vrj\}lz^Srl%z*Vw`es,{wו}ZVwI oĬ=?IM?mXLkK}"(2Ի1Օ@ۈd;|% 9D[ޘmDf$gxdTDŽ*iiULsQر|A^ aʭp2sV_Ì\#N3a!jfh1k~σpkBƙ >T3- 6qDagןiĞK2{Q"#g qCכ_ J`%:yFVd$ bz=5Q}=OO0Fi9MT$\Q.xaq§ "0J<+sZ@2N0UiӅ0>NaW@ pe0:lc@J.cg#ѝ'2<3ug}퉠9&(-Go_(Y?d˄'-C{~7iƥEԼ$#ib\K1tȟ fm<(DprѐNVTw<6nShш8"8+ V_3Ń6&G[FeZ3GU!d0\m&ʣX^)íf/0i%,Sqq”"&+ldԘC5 x"R8߶2",Hؕbj53 V05 -$+H f|V#ю $*E|lE_ĠE=Gg!`~U\^VW1F_pϥv+NP; Tƃcw -z[||Y7;1T,K p4}xtѭ?dX}=[ժ`Q*8xXj#6m\:W>XC;=Gz~\ժѤSm|G vڛi7_P%ZېAݶ+<a6x,BWnRϰ=sSECt@y}jLFҩ"ED{=Źѽ{SJدC%yE:O/i!&8P kR&dQ4 BZN!PнLo4OJ&oYg<6ɒЃ@ s *9 ּ\ѿ"2^na6xn|֪P4#I[)J0;⻥ nUG|F傕%_(ygZ2 Tc[3)f !3?| sI|j4Z&r|o&N#O+YU>":USMmc_] ht\7+񙛡M8.{FFElۚ)VzDeS^P[]}G_{GW9,:`g#hxM%S-wa'W<[EAZJ^ ' Pdg0fi=x}0@-[{K|?;dD~Óf]qޞYLqU2f% ׯ OC&@Tgs\ 5A$-Q>6*rs3$QGW$ts cFD eӳLZ'.RvvO7rcV-x]?cZ[7#zц?" V^g7aI T1MO3_r]W@&Wi|!ìc)s# *nG2pMylqރU#SPZS [k_dsg@Cً|<*m ɗg}nٴl*#C){qj?dyScJNLwk&~0I˳QQi5H.sx9LWQEj(Q'Ju'i϶W1$B)du߅mF /?qm798rQI$!@)1c|kM} >J/)pn) |L(HP~zjFD5],灧A=e{4#䙑w/9&7o ^|"1 &>o;Na5XH?Y,plh4&n g .1.1߉  Њr<#JrJ(%.4v*d{;_b/]$-к}W^1>S@cWgRz8ˢ4/c }>q}[DL.y 1:tcRC@ɰj2? 1ԧwra!<:c-]w\?[G`kT|[f@:)@9@)8$l#kǧFCA,'K?/)ZU0:qXxu#/Ҹ-~G'ҡ]Y-.PϿ Z9"7s< ؒt7xTZ&.Mc*{H/ Eɵh(ث!|~kcn :ymD[ nA/3h/_l'3\i'U}wò{ȷ(<}E/O.a9.1'xϖb2NۢUH0>1:~#-]A ؄_!0FKq֬ڭ^"j8jdT* Xj0̄s,8$=_wqۇcǕ'ITLPYF$TYhS6k_?ޝjWC,wxR`rd CU'"[c'8ٯmS!N{q=SihkО_"C<5VfkVä|m]XnXw~%%_ Xn$,Yݧ46ٶ h`01n JñǧG2TWb6 \0[:&70(6-S6'Œ [DNc޷r§] oG,T+RqS[>,mP)i 9BLpw iК_BߵuB՛N]W9+;h1r`2.z[C7ȥYR"<F%$-%/l XvsuSBBo o&s۶ ycg2 ަHDMJ z$BϠHuU352~ee&]@[  ger1IS8esR74u5a|}JF|}"ʭ{2(aM7>B 0^:/)LJW'-Fh䱭!I0!Lg;H^X0s&Mek |H7 M({Ϳơos4zgh&s{Zy0Ch04#N; rgK 4H@46c0OT!TbaЬ0=L.]bWb)vy?Qs=z| fmF=ڭͷ67a$u(7(+b#fYI  C" >=T=\-CA6]8T4 3xhx:m(V)COC8}m#̫q9c[=1O*2VNsStGx2"󽷀CVw,YscnoyU߭PXcfyPF.[F3UO#q]7,(0O=t|sDd+!S ax$ ޗ>7gNSQØљ(o =Zz.!̨NFUf/$SÀ )-|+2o:𞭓`Ք" #J;\-z6 lAwg۩,]8eB^uvZ$ʌ%'שeL&6ve?sȶH_p7t7j0.o$DrFȞɈJ:et =ݰ QF:4Bi˓[e42?A>.z(7c$(b2-|SC^{Đ՗?QI_Xn4ץtܰHi&uZdk2՟*AE2ʡp!^N0CM&l{tl^&wTW[/Qeۧ%E#nQ4~RArpσ@&O|4`Hx6PW/ˏ 7?02 d4`ߓTSʅ^ӿ3ɣqU |{zrE5ɿy&;=ȍ[X>ވJiz]zU]2痺aN?g"lޟt/<?vb(Dzxj2ur}Tƿ)GAmٿxIcĜl*šT)޵\"뻻/ ԔS;\Jˡ=vޙhdzrfvZz$Lx//Z2k=ol99Coe#g+u.  $84<|MjF> fEeဃθ՜o^̽Be`vSI-{g%JNTk|\z% uJGo`,Zg9gxUj"~ <8R3蹸@>ҷOg eLsTJ6lβyU+`,BEb2FN T?X(tXoTwim$$~h%͢ϒ^>ql-NOZ}A8R %FG8k-$~ |8[Rf^/2>a͝Ju:eNXT[)Q{0z@'0tɗЮqb¶HҗY\\ɞcrs}Nݾ)z;HHJ-7 8݋".SzLqLI{X2\EPdTMRZ}^iƄȺNQpC^N3;gF9%~^hqzPw>pfQ(+*e3Io8Ll}*Pi #"mq%J%Ȅ8S_Lv9+Q꟬$1 j._ clMN2>%"H`QVCUױ@`Fm Kllv7OjY  ]DNO+ Vjt}k2 "CPc&ϦJZ网qP/RøaWﱌ JeQE^=RE(6ql] 9I|6罺7F+Nd 7lu# f}8˫oRk$h0JHtVLvHv{jޚBSaPi<">EVYi? [LOuAq㥠Gn?.1Z-:h ^$a,ۏzOmٝ~\ 7ww58n}A_?A<>,~t>Dn/N={JGqIIIwX,߇$ -vg F 6ÅBX:Jvg#zkcQӕ$Y<|^38tGOy0  mQuI$M5Ԝ*MZGOpP;FZ"E]$ .`pKij';`H}FERm A^ c%'N8i)+ P*W`@y\jvkD--nn:SiC;#mvGC5Yi"M+,kq0>~VwS+ ìgu:|W1J9lAS"cy0{G HC}_OwMMg'+wD x=w+.n/,-Pū/ (m"K6!}WL eӪd~DĻnJeF(AحD%(}i`H`EX?35Lxz<}$QsCtX@p"myũ!ijJf#w,Z;_ t($.qt0@:$䱥"p> fX5a@*I 0hO2sy뙦u|FHg./p\ o}HfZ%ljk#6w[3/Gn#2!/opB!slePa3\v_zOb9((1DBSb+E%V6" `@V kv`E&/Y'C$ a!%$)BlۜbuaY2"#sbDnpgTD 6GZY:/ǯMDKt2Jp҆9XXмs ڒ`ZOіq8)"Z(h8y o,}:aYXR%,4;scsR~jsnƋ!y0+.oN^gj.HhVQHFܱqoz6#jq.U}}Wک̓XwQC_T[=B> iP]Ҥ(Z||O!&`it< [Mbf:Δ6"eBu)O&%W920|!GKp]\5;u,g%9C^+3C[ QMD_08Hlv_ 6eb.y BmGu;2.؁DqYnˡ "be]g mL 4o/q+8cj]A$2Goy%AT0W׆Pg\g@~.nMܝ|EMO`TD@b>PT̸ Ey`kHJd<$,(UկS7ԵM:^XqP Ǝ% |w# >9ysWdgĪU+xF!N*lq)Dij c}+D/*_`bdJ pJlїO=^x`ҫT!$cS=>U)Ⲑ, u¿ԃJ/%<QpYxD_K\s΃el1AN"ɛ!/$__Lں%8@C)sD~ŋ[h˃Cv)j~b1 %r211IᔎtiTh?˲]~:/{A=9m"HZN 5z'ѷƣ8\ŮĨb؜fl"kۃI QHrT.eZ\s57?r6d]G4N^C/"0 `)UI/8f}"8C$ȾRG|YL죕 iW$:.PD Ilj ޤ4قRqpA~Gn ~efNq&*>feT|Fql \TōVt58@L1B! ݳ@m.kssn ci],q: "=8 J5W=iW1,}/vMTzMg!BʴJH26[@ ,uQgQk~?yoBG+qKbxo8+J:VHiI+|93YZw;i3+yȈFS$8Gzl4}H\_(3qDˇgISrܼLUjc ĊIB֛Vb"`AY"qW rp`ChጥAV[rmL1 hr-BĜ*aqv 6shU7c`R7SQ:J(rɩR]DLA]!;(LHOP?3[L8yR"ٞՊ& I*|p F-dz@'~NDe"W_e\_R}eٔ8 "w֩[OӘ?Ѡ8q;U8J m9v)^W|K|$HKsB5E\'j# Ǔn!I=(^>&/w4VўwUovYAt@TRq`6C A$Uez~b@h4N!)%cJH;]ەIBf2pvohYj|A7J(}0;Od4XMpS?r?ae6` UEX˖#@1Sj3rx a R21c] _% ׀n3QNҤv%6%>쯠* mj|.N GZV<,g:Hr~Uθn:;dRpUab~7UKmx pa>x̒VHa~)m-n' lK\3ʎXɻ.G? ڦ6hH~#hX4AzTmi#!* j*|?4t`i GEgK/uϾ wB:V BgIYSB쎺Gؖ(PX%Lob Z톣!7n3-3$b/3R<>\7_A%M? &fgQ$xpxL[0"T T=Rnn*,{4HVm%rd f)NhWzr7MVmS=xinW)dfG"XzTCmxռ@U{5iLd;l0 s56Bw>?IB7aSMuDN盕N*):K G+К:6v+DL 3`HEB7}._FYX~ ;gxohuaNS>ψkv<3 oIȃG D4;7CbGe\v0¼{w۝H[Ȑߤ%&4ukW{-PRS|Ju?)BI/Ou'3-ݯU]zK4ަ8?RBvV!] [Zq@?)['uTwN.;JTрN h䃉deq&<_]3鿯+m$knf[Ae.,˗8[w'S7=!f5>fWz 9 kw8(J{}-/C+ H"ʨLp t;lgЭp|9faO+*Md/#I$Ӊbﶈ(ͤ¹>eN$v(`;rmi~3UQ)uE6}94P>^7Bc:?r_XyvTyw|/? 'јAAjDlcO *>} ]xmQLZ2ԯP~R6,svs`e# vt!} a hw._2ofY C.:AyV a$t3p/Nf9GPFx>M8юȌt-j,g7 ~@Ds}1XȲvxkL'47" G2O؅-!$.\3ծ,1u&Kn)p*ݒp7C>+3o1$\_ &#T'ѡHyr"u XG`S$ JЪb %&Pm.9kFkO D5-)lVdpfG jH'M n|-ƀ8DpNSz!S|ժ[e)UzZnֶ'npI]#8,d Xa6Q:<6@8'fx0vr`~НE- ɛBw.E@U\m}3Q' { alo Ĺjp܅K]v "fo8GB$Mʘ80DS޿B5P8;lp|]Z]j)jl-:@Š6rTD4KA?o 9t'uXQPdZpgrWuba*upi-ˑ{ 4upT3vk]L0z ω%<J[dL_N< 1J~nJJ{J:mR\H&=dDxd1P!QۊRRmǾ<4e܎Y&%wU\[cIp,ͫuyE|𼶉=u< E *COL/!)ˉjj&rXBN9TG;Ssӓ0Grj<R* BЂwLN7fA!Hv3+{ߵC[ٍ7P\>0f+֫oJ:2g0uPΥr:1iՒ,~rܣ*N BWaMJXsM%ʧ&[:OU!=I{c/`q8H /0'ycri{, *Rba*aG׫*t0{ݜa9-׶8Β~N,1*hi?&W~{ ܇^|5jPGEJ?h`Ip"^ã-3X}?<y)վs+[jZpӔζ4hXj'YXa^$֋u (/8ūf]cyѺ;_qsn,%6O]QͺwǘE_NDv|"QWF$EfwLR{ҥ|ՌJty^ ωi2z]'VJut\ O)a%KLDFYOMw3 GGnCJ$%)2щT 余 %$C{\( !m$^3 o.i,!ӶUUi\f?R`Gi[/ɇ>3K@ '9-_S3 Ǹ 8 ;̿o=묦';3EQ&`qB6c|'  F ֱEXP#ýdzpz?uO;ȓ=/] JD`!BqZۯQ9Vh,h%Ӎpe*!CUlLJ^X(W"K;m>ED5!IXLBHn[0ݧd;1 BlPNˋDx&tQnl耏Gte|–΢8%\ѥ׮,(\mX1n?*dB1%ԿvN x6H q0|QE @Y&u/$Fy A3o5dK=ZP7S +ΞGhR/x50"3s\6ɄM/j]+ pHj 4 ?Ew^T=7Rz`)v7 ' Ӭ3Id-dPtK\ߐ?Q|3)i~hD:Ġ`9ėg\Wec?(+m{WAJVU @RJEf3ۊ,RrіN`KXYv*k# t(3db5?*Uf* uob{9ݹ5+~r<=/pv;{=4zKa]aLD6+5t] dܭP'MoNؓ:JI0x\U;D1VD@e"q5~KwR8hNȣ hͣLAĘsPEks&~=WRh:/߆%aؑb$zj0 ./\ 3bXYܷm`k,8ƤL+|Bu݀@jcb8j.m_iI[}cM2dSC D3_ybeb'Hmh7nx$nw^U6 QĤ_!>]Ġ!DTd9ϥ$yX43 & w쾈,p4+IE\2 zk V{nփa'kcF2RPHj*F?;vv5)"ƦٶENaE[ [:AT 3x 5H rWȕq/I54U f3BiHwd*[RctdIFql.{1E_-&hu e~v8hodewPG aa("jep4%R^DG2?DXxH*05;l miú^%>Clcg_BG u@XܵJY䕛D*h՛#P<͕g ( D!8͉~Sgݫ?Cy .HU)C#:GS ^#Zoݾߥ )_D B2X>|-u#Ah&HFUBo2{˺AQו2] lCژVT0ʛDߎ1mgp`f:CE%GrH=: j# H , L,w5_q`,4j`&PeMu0u2&;*t}C1wclJk 'Fk%(y'wuhKWCg*kABf ID-/$|&QԈ!u;v ~o(8vj81gHnBC\Zf0h Zcsbvᦌmrٸ=Ԣ̓p<Me"=4*}3ѫISli %0 ȣy?r[OC=VPn*!|߸Fn3 ޴,@9({t6ij҄{$6 x@S+2&Ԕ. 'NY^z}Pnؒm2o!<_$$Uk|YaDem ~uxd͉〄Z>Nd- (> _ޚ*;X}-gkǖ=H"B,WpaNfJ*8  xAYuVlHy5wGWqRvc$STcn]XGZ!)4,\l̂ݚj>TGZ%vϵڴXτNzAS+tU漨(Z{yR_Sb8LVI;x0Ph\TCqSO2:`^b7 JbtqL`C zE vw:U%3ơPO xGX ћR@H_Mtg'GuӞ}M/FqG3yG`etax's*|1ػ`z1tm$*loKo@US>*5W>X`\vz-ّExC._u}:loKj%1\7@Ĥz}7P6-WA-u ;p_bAcX'&\? y_ڣXc=aR%lID.W65u+`If_x& ]A|HnQk(ܷ+(vOt΢d}( Idlț] ͅ291K0#d-D/8_\|1h_ 7:ݭf7c[_(Xl?gifOٶ$@8^E/xo0 I@o`Tpb $\2|90 "cᲣX%O"G'KC7ܳeiŎgϊ*$|VcQbWĔ5+iV>Eǣΰ:@HR6jP6GG(azOY.wTnkQJǂ/i3Wx쓿x,M\<>lXkT6Zt翌"}6MeLUp#W v:E^6~fUZ@\Q<qaC ) ҂oiyrJv>yI]839` z qe@;c"gS@t8utj46/&PdIYm3t 8wB~`1&[PZ*gEywGMTl>7BD@*(8,Q5 ; x|ͪ磒%vӴ^hU W\rN`a5k»c "m .YIu\!Q 9oi0D0?KȴLb<OVB!oI*Ϡ[* 4OS=~RL©"WUN/\bbʀ8MG$5ryr!KOzc k/XLQc3\>N]c'lېok.@G>ܖЋڅJڿlʂCJ{KܢIUB$"\ų)|d8Ȯ=HLӉXN= 3纇@6lW>vy[bhWm=~c-?=%XIv K7`5%#$}- wF>I!-QnԁV=v=GU"qGso]5]F ?tHk|D$EQfpXbAl{gW[QGBCǍb"+}aװ"a>Bb}T(bFg]Y<8Њ ?I(7|014頜 LQCǯ]]c3L ,Ъ~Y+|eϪ! нMsߢfŵ#lTE{ز;>.MP~ғZͤ$]E~aP ]f+Lѝ w9k +R΄3C+b@4Pv[1cp-):8nWQ5 U#.x".s% o1k^](w2a`]˜3\4AQpl(}gOj`a^46'E_@Sc)6Lr>M4G~.+DŽV(0`bబY_ Zl(MsX?蓬^OwZնbK\}F,0lq5DKi<LPt0&B`L"]~/37i)t>aHP9>У.)P4,\w, yr-d]}~#`l*xiZsQ1/; gGm#,b|rv)vz P: nWfB>=G1P(5H\k Huc`nt? 3@fc [ ~ݶ_]/v.A/Y{|b*KMf%fmB$M#=B[6(TS'!Y< p&8Ky:N}z653j0: I$DW}`_#f#TηSi%K^51X 5=qy)x"UWGjIťJ%*[{*>pJ! ~d':£;È-4yg1XcK6fP>w@\1Fi˃<(W"oTeVn@%`IV r吁 r\YMX'Y5ռw6y?aIsaeV,lt.D"@C"Aڃbo9 3r$N =ro2;*GD3P9Aw<̥lµFIU;oABFMef[r- Vܱ s4$Qd򜡙W"nOBںfM5+V'z%cUƁ|XuMl< M"®9,״62~XuK qdXURKFTVY{\nt9\_Tb ICc0']s,-`v1gYa;s7ik2<8V}LM f\>x>)|)O<חbߡ`L uI7'B IzraCS"V\,TEYU&" Du..ZqPNy ( 1qh~൝bBTD5f6 Nk1 T'5c.Z)1/v_)ho -cAWT^qIyi3_bpA-&K XrhT+)nQ,ϞIQ򀇻nOw>̩,#zx1-Kb⠀LF=S6 #/H ~pDżjϽ=U#*ҬLtUI'GecHfm•\V3\@8m YF_Љ)ڂL ٖGxݼ2ӠH&b(TzA?{<J:Ao@n:gDuހyw$!V60˘.Y?*r3Y}*wigY5s rrM^Wk]2Oo߱Qg`Ł0h XrQrXaqCZV.!gD <"PoyݒL_/XSuNVC;F 2_u5K_mezHLjtAhv1 YUֈV1#O1,`|#:Q?W#Q&4Rv>gXjnQuyN y6 ΁+l! eJaeCI̭a\u@z m&sF~X$"f߹/QF[FʪHQo 5P ɷj@a)Hɹq/"ʭlW)6jU@&e<:]CN|REtϳ~i,WoEYQ'+rKaO‚}t$ G߃ZVW^X =ssMBjۧژ4=@pn+]߭nF5 rb`DhvvkE)nCuښӥ_7.R!2lM,Ewze܌dX‡tXm_>!Lr@ QkHg2˦<%}eVwƯيY$ AK0W&T"'?'fn!4|y3O٫-yͭ5xO/d0YyVL@q(l;6&],s{Ns+RXё~W 5/\Fv T7x$egv~sg&Nh¥ƦVU]m5})ܣOڒҫ6hv9yno.բw}Ii6؇׸S7qI9y|HmPs8'*M¡<fI0-NU 6~ a*u nd!҂ Q=hޮc#:] > ru~'!V٦S֧|^anW\w ]fہ5 < zP=} Sy32*FȊWpSnrBtYz,$T=]dVIgukir=K7Kp+CB׺'GT@Ī;0Hw7M5nw34T I8s\UoS4.]>f2h,ܥI.[` >di #{sWK}6="eRh:P*VDuumIZ}B,=2}%38 [ʨ" nm?DV0ȇ$kU6F`mMfqQK@h ׇb*kYjçM-kcs=/=sZ_lKFNoOa_8+Uc]=~;.xHuB[o׈}!%^6BR G~7&NqMH9}kDZE"I|=Dz=?dcJ# [Xr>K-\I"M }lˏĊ70)'eWzoR`7h[VSҺ LvA e S ytϷd9i m=_$MưqM5NdU4֕(r#V뉃rxvv9Gid27 q}c*y%8D_(1]Q1JsJp)2k]C=w'A5Ű-PQ>qv%O֠2TatJZDJ3[O1. ~|!Z@iStMvK1i|.O5Yvhc6C mOx^2]{tfʳy},MULr?{BJn 2%$DFtWRɭ|32pV Q`zgRA 򆹛Wޭ-aڬ'+qσ+vѝthOc DAסK*Ko #&XSh7P .3Du+=j_$$`գ?؎t;o{^.7x/%%6:]lXiqG~ Pm۷#A'XӅXGF74P&*O7Q60f!K͗:K굈KP% 2^Y,4U`FoTϿMO52Gg)ś\5^o [+Z]ǢEL~{2k%MI%9hua'_6HrqaKH0:i8$y3[&:kq4E.syZy`OQUYHNN' <ꗉV,M2}#Xz.*7ޗ2:FBAH;$) 5`>HU֕R}،jԘC:dƊf2͔En+(9>bc þ)RWPO,(LZf-Tp7tUmkb]x,K˖<8Ŀߥ?ᬾ0͜5q,,Y$zv\m I`y1']d̠Qg{6˚Uc ?O!W&Ur^k!DQ#AU.Y}bψ]d ӽN= W0MYw<@@\\(,ȥ?; 5t9aDQSǝdEϳB䷐ V1BTyt@JSPTczHa*;8$uN2V7YfOcʹr|Ձ7TH9v}S&5g<1۟kP&V9s=ZlD?Rq > NczHRn[KLCB9nāiWs9?ۢ'HHjclm|Zn>OҌsɹ'H۲xԄRR2!t(9t?H3oVo/Z+@. [ F@)Vg %q?1JqءY/[ۙ-Ek CHCMO; g56S#q("P)pni{O d.1l-B,=e9]2b渋PDHll l{/bXy_;?MnK3d #t4B[xW3ܒ})PQp6H[:JoYvԫ;<.b#UYŝc۩J)F& [}Z#!T(KʭRS? +icː9jHXLeP tDj|m=& &/ EZj(QQCXNU|jj3x9n:b E!2P r^i5[- ^9m0nu.R-%N%/?{(-`24踞^D)/-,=vff0m钠w +K ('W?x+"zgm.X?v{qj|Y}1МM Q#So]:-NS&qam1+OYsQZF٬+{ nbD/5t HϾ~$QGЂmZz"J@\4Bymb{#֙])N'uSr:ԣ|<4i<ߖ6!lg_&l]TeW2KIHQ bjS-n[ ;,6P?S$WUe|5GqaGee|>%E^mf(;ͪWGt3bY3 &'唂N^{vB zw+¦3[@Qp3Y/_bɥ Mw>$ͧf\F40 yP.bp}y~ 7i$C4HV;:jyPew =@?jDE{x]WK^zžfTpP> $.r6*Eвz"Wo~9Fې`s!#Y^^ioVr1*LjH'u`3Ǝgx3$~Ԃ_unrҢ?_h a@2B$t!$n2GUV3kfӋ $T(CR4E&N_$c+("Xcwa|C4n5!FI dCSD3+27@L1uTFDжɣsbMWbD2?:\V`mjCާCvh Z D@inH{=Q~mVc$G>%$;2e13[+Vm}3J8ܒ_PڷMlRYɎHD-T-O-liY9y8ܓƾBN}s㎶$3qO@ʀ8îuBT +Mo6$VDI>{ ,>ɰ 9j)wUΜ& TJU ^K/U`BoX%ǎ*8rsmtV<9aQbnn BC\pP!vjmhc rusFfMifli.ۥvX]!?eά{NY`-s80bڴ'@]CG3ƑuUa?̱iG,.d5$GgS.:pGf6@H C@d4V_y%ɜsBW-1*vJd>g!:&8(5mal@"g G*4$^\_G-jed\O5ǫβO!!-٪)~k#yR2)+9HT ՀڇǢq2*y4ӘTMюw"̼O) =[ D$: px`ׇũ!1JCE6d }5U}q(>*-=8$ur&=I\NҷKu7~8 Lks5*tB;;`D ,6,nŭ\ Zkբu1=}*S^I3mS]g:9(ײ5أXHCU'ُ,f}Uhp;,TGC*O7.Vx\݌ _VCo#,l3HɌr,xԈҹ%wf(,P5)4l+M2{,(}_{:/޲KwA]leN:g +HO/3ֺxy a &c'Vh  'A5@'=6l G6 %QXU+8*_s%Caq =gV!` &L)UB] 0YGƧU ǝ^^O SS(@f0N4e|3cԵt_BBۗ0?Hܮs,!Ĝ0 |/FY3":Z?_>$#^a *nByC$4>NҎ?1Z v+6ꞎRpb DHVK7mĤoZuV2[Y.d1ّ$ȂbSmhu<35n.bvFMϻ1+iu$wSD9F|, RFruQ"YzYSQ뒒 C[5h D FB2aЧ?/ , [u!VN6-g't44 ZAس)\BGsKI95Iw&fR•ʓ|h95.9ɛꏵ|Y,D,09=Jn)>uRrB,NPqCLMbTW B|*Cp>([!72pzh/kbC{lJE#!:eSoo|㑾Kg5-OCsYsXif,A(9ÿ|( t7қhp[|qV&ݟfK0+~IMl,˃fcb6&Vp8~TPC9cY`:4_XW{UXGݳ(y$ ,5\È*6:SH]>էL "jd*|x KĬsHbI2.E z𼨭XiXQ!PW?ۯ:CxI&@jz@{:u؉2K#`e`J"L{^ 'cnΓ?t[f%>N?2ld|_k ʼn՚0n;6ZW14(r,ĵ6F_ @[{L9F^>$AXE9EF KR`oҴ-*YRWcv`Gғ'iZ0&6!x!B}ˊ" D~a}~P2rb0X؞ L jftsOZe&7e*ɬEVO*70.b>qc\RQ˸ʎL>vҍ4zu).N)L5WGpgK l? !S'y_ʧTeCWIm d p"iŒ% ibA 70N`|o6h=X0lkկ)@nၓq2Vt2|//{a]\/{\ƩN} qX*6ךpTuH9Rv>B35f4m<6#*!WuPzV';e:yi{qK(ר 1%XCzZh6˪;3h"0wwNvKxO+-K?-.]Ȥ32& [ӪlՎ5g֠K6|y~[d-H),O~tx,L~@ g׉dU1 eaٍ$u,CqxÓvY_3煎uA@Q9Q=h6E<&@mFA. u}?[:YĀ@~Ш:=A\jߡρXF͜&F碤f{i;y_O/gDi;eȱMrdS,L݋5I%HT  5W?'cv(6t0D_(.#ciGfK#F'yX ߗN}r|-rU#6JS!1:Һ(cnv"l2fk+"iD@JΝv[`A똲@>KReHV2Aum_n?7VD}u!:@WMz{Wh䰽6d^~\kdC?0F!%&Կ:ޛו4u[YЧOIÙz>3ܝ&]G:I n$[qM*y:|]M'fFHW}#FCzktjsUM1>< B;&h.`fnBֺMdvaw(DlOKĖA/@Ykǥ쭩w+lXY H=/|q0]Ux{ {[된<1G:>q?Ȧp,9}qK䮴ZKg_?̐pFqqɲTLO['4Xf^N3ۙz&S;9 i]>px%HjAm/J=i7[VCM6)yϒmk_(ͮYpkYIbDve^i@t!# 4J/qtevgQ3Ghn>E~Xtu8ls 1ЧZ`Kۣ F:US> aTak7nץX I J2%, )Fѧw" 2adjpH"SA_B;;GC,qSTIgyhlи`/29S&3ma`9rZq*y۶^(N}ƒ%&sJZz9vDHs,wR?wtj{R{;= mq(iz̚^cTfWqBn_[DOIZcKGhP.z<&M**{-QUԣ/-BQp! A4NU \ţ(Qy"Hԯe_a/ٔΜB>OF {1\3h?񹖎 ;@ ՛!qnaf&GA!z4 6 %y*gA/0J]_ZO86&Y:{.Ϳ0ҀnSVzBbrpyuM .rl5hUZq߾|&5m,rauq:[u=E8W_w0,9<2g1lbHz&kϴVx7o->O_> 7`g6YwE gUe4C Ma .q~7jEr(;K MŋOѓ;]a 7obrF][Wm+_DLu 'U@=[fBRx_( 44aʔx9O{}}0H6e3>_a~\9O3CQi"9ێ J.l&B,,@XJF s8e{,(_4iτҌA_L g(F#{hcQ-z'H4. 2UG0fv*-5@zYY\:"gteknBbxE}gݦc#:. zuMEJCk<7#wNt'OT 1b Jkjʜ^J.Y-< wvPNdڼWvq'VrfHH`CgD|zJՇYkr,{\cP DFGsV5 ) uCƁtDS裡k ۹Elk4T{ 2i;e1A|=| jX( ty }c3L * ߽`&bj0zoT$.Dmtr5}0f $:uQ+ç9v5cyI'םVċ\h OO'ؗFGAYn}VpO#5lM/?DX_i m~\pQ P}\E72W^OH⋶t\T=_-<aE,Z]?njLU;/’ǥ@aOA'< wZYyޅOfcv82┽NN:R-7Λ)c;)E3g;Se.^F_/A5$Oj]?Ǚ3b޸8u[r7[R7ךxkxRD4sj7Uuu`#h؍u)Qz+u@C|%kWrt0 *!8bN|c9“]pdLDfܖ]1p׊5(mGxl=ySG>sx+F%@&mυpF~oOF(fKQx# 3vV⢛^(? )ર6TM?t5zkFGK((:Fg O RP}FWԦoӗd;VU),[, n 0 #5.F+_ ;^#5D|N l\`~!4L0HOFq;"=S,2^(N""p`M7LScϝH) kC2Ԏ| 9/H$tpٯҠ=GCAHsox9q{ ȧatUi턇v NƿW%+ji&̜-S˛$IWUr61XUn_7elA]`Y! SVP7 4AUBO7_Ѩ:u 9eϬt[U1ۅ5F%MwomGO6l?wAƵ5`1%t)d' wzSM?/9ô1J 4޳"uʂL\s3{G^6X{ÖH(ŵxN4ұ {9֠X[ |]%8t]*j]J l00q -6)~;H ' B_] QC$ $Y ^ʷ&5 뿾&>{)HN) 6&tSru9$S9D$9*no?jyEziTlSٞK]MTU&W{-0>J+}GB Q9Δz%(WcppsFƩ"}6+| ̖w6t&o?;æ*7LbV< H1k < " ;I 7/q (_#P :YY^u;6;YC7s,<8칁IbiU fd=U218zBsn.a RM;0(d6jPS-)~e#}ǣЄbA2ā'̾ ij$Q}E"ZCHǀ_E=I73:ZΥk2*_ۼQO̡vKH +2 2CivV bb_1Bq]t[4w]!~y84=\c[fA8~Ϣ$:w:Wwa %x".pcSz:K\0#4N*~ct:fF<,Y{?Lrs386όgmV>1qtM ڲ;:rCaLRuъ%c >7IG`IɃF" i3!R˵2pOaCʣ>xF8|]ێM&dj>}.:dEa&ҏ$<~6_f?={2[BwtHr`7cOL4j9̎G$E[?۾ uOZ/y rHWյayuUcws.1XUs^\+{גE:L؈ G3hK +71Ov,˜';rP]ij<#pјj6^":6/41v]Vs.Me<7LzΉX5/k RiaI0JǎĪxgqMRH Ԕ鹲E}957PYq6Zx/^DALAuz`t$$qkz}F ]p ;熠;IJ/)T D- aU]Q>(M%~ fkX"_3وXPFHCQk [ZO(OJ Nt~# YJ~$ t XR|$Lbj3^zY>N%ށ(gG&?Dk:)M"QHuG2"jFZXl!eϾp^lW FRPɩLk>~DrD_Nt26n d`xu=<{%8XoVCo1ۏ{>0Yd[Ukͳrv~1(Dm: 37HhY ,j(bEo͌3)̒q 3_ޣSK:7\9)TD^&Uly ˂AϳyӼmy ұd .[N$)g~Lqal 0%{ 5;1՗ UPer+5~?!JLD :*?_, dޗ$݇Er(9L0g_ %J2k*mbB]aW۸ӻ)ݔ UٕY D`WWM"r&Bw|ՐX gzV{\QFiW ;=މi`Թ3_Y 0.Ά*΋jn4+,uKPLPWh u;mԯ+*) _JT靳D \XiK:[ †6+P)BRQOQi]5 ~yr1 YDg^j(˶oǖtvS3c؆xn \#hZ$ө V-ikR{Cf//ca[!^3xŇ|6rzOt[ctJu~(e7pC{z l*>$95͝{U[B5҃0֝D#dS-?~YB]ta2ܖ\>۲HWy{[6Y.l{(JXAUz;1rn wpO'69tTI´&E% &guta蚪\3 y03[ro~͵&)˥I:(\Xj ]z3Dٯ3BCK9"lTvc/Sp/]1.&.%OfrP,ԓ#|HT]/h hgPL-5$p_0@N>EÃϴP.er'.92wfXТ%{9E'48]1>rJN1li)"g_wV{}WEbAo:OĖ< &E%oܸQ1[Θ`*fVL?[Sa(@U~NUw|TUz*C%Igm45(Ay?ީ!ѓj8hwp +0)Wv^vS8<2xje`LP{-RV(gGCJ[KsX0d1USLOcs2bFg'v۝ ݓWzKd7(T0Fg1\{:Os[CT9K`0I_Ƃs[lEQA9tAFEߘx((MltdH}옸D!i?j2a>96Aqpp3GKL#0c "]\#5W;`e71 4w:mWηMd~ !/ ,9+*+?]kOAn&#q(jDĞ/By83NH9#Gd cg#eu\QaM TV}CE~C+c75a8ɠNk- ӭ[kB$uTǔ€5'"feR+4 Jnc ҬxV62Y;lG">(AieW],ZC G\sYZKiH%* 0*@ɓn"E=qgF{Y~Q´ПRX<VJT,RMYF;b>GNs *8jCWm>m L!t<@ИɅZEˬ O_-[T̞Bʇ*,3#A;췟!Ț|}&>$k>.55UK㞜D12JR.@(mQ*eܣ/Una&%$)\O>?Koʄ_E_ km% X0My{*L|9X85ROZҼMz.Mɕg_x-:w588׀3 $J5B^t.7z'-F)e(ދ>ŸV9rm9Tn}iZFũȕi͆K|{DliGq{ICn2Bih(ܶ[@zvll1E-ʩ\Z |xSCvh(o|wkX$OS3xl"|AjOc0gfj 9!j*pLW=!| tBf@tz5Gf?YrcJ{OB`xg݈S7jbFPܒC'z**!(|r- |S\~6U*ʳc1V%1Z|nSC]{]%<- K1f\&Sϓr$ͥi!Aka9=)P~- v= d1 ffsT]z5 rrC#'h{luNQl䡠m _}pҸo3qRsoxSq, kqs}}ۚ :x2P-05I8"=q 5= bjnB0Ϣ jG|KmNN[Nh< d̝*ǪN'&8@IrJ,,\wA{̶ޚHO}>f|=Va}$<B$r۔8lNa;ZW#ԮOpe,m ~R(3yPnm q>r/M, ӈ4e5qyJ5,v$ȵ/g9͉5t)shMg^*m&9s#u9!Qmn;7 @$ץN^dF;*:~= ?މ%FeVmjk'RSOwq7(x66=EUj+׈j hCh<:t)mdl,=Ӷxi[B* F {2'&0 6L_"!Ь9Fh/8m32ud$zz*6*L0YfafQeTǷoؗ[~sxKO,ħ6QΒi+H2hn,P~sox ʋ1V1uxMNfgꔆ6/]$ #l ]aD!~$&ji(\c_5+F:ܢp`N@RP ة{3PJW= oz=ؽ|XNHI?;Q*>m/*vEifke|f K z!Jx[u? 0O& daam_{Ɋ`ws "M+?0 fuie3,]ᣍuq׊H%=0|S=c: Xlb[0ncO>e3~9>f$tSQI>P=_O&%gl $->PhEqmV:I\RUs,bB4.=,u!Sz#aOѱVz(Nm]{PB.ߡP*b' ƞk'ODOp8M%a/i8%R%PƨM4DSE܅ޕR/s868.)%;_l`f7)p^ Q-Z?JyP]B$ʲd2~WQ4?.Sz>,~sYTY;:W"By@Cӡ1҇|@ D'jhՓkӡi=ǓJ =WNNi9qn>JG !Sk֜rJ+t<R&%Xyt_`X:t~U.rGH*˼ЪJ{`G:.h];{c3maů?z=~FՁVd*Hi5e Bt?ĝ0,K.Ap(a`6@)Rz;`$5ݳLi3#l[Vn|TxTSwQ<6tÔ _, Ҏ2%AP=>s*YDjIGKi}XYlf*e7XZOpHڡ%pxsiCf4ݩP Ǖ~ !mB=+R_/5rKfeJQ0:qiYhާR$qEK;a P*䡽@at+[oUC'.ET"+k9w/q&H:vwN f([$uƐLm7ݱ:M"xv3Hgŝ5`d@Pd?V`:7ߚ>?qS;w[ {M Wξli]h`]4n?sE,x\7Y; R^.ғ !v!.p[@r%t[pkI"}9%{`&?9]y\j{:^b2y:}ʮn@ErOm JrWWt?oF!'oH!h*wD^}Z`EuOۊ ̣.h%`JL Xk^߯z+U@֚gN,~֓1ۻ"$ݎ>8ΖEQI:eOżDtÉ^Eo8jzztex>(6ۙrX^i<ԕ#Z2gFG,ެ(y|T6l]^ VA6޳nVX!>%H9G@.? ;'6xL /0ևԘoPxȚ'm,6,/,QI@~wH*M(F[ aM!fu={Mr>טtwS4@Yke*Pd6(QET`A`# o1;FatsM;|òj p5 |%72Jb00{_\T&LkNH%+}URJ4!bהd+0r*C,B/>s*)c|ɔXuOFs͎-`(L/`6H8+1anOFp=5&7 !˂vC`d^}۪I6,ԝ 'rAIfQY;!܍R>\l/66l |.-EyXvhH'XMoEXs&&Za MVˆTTSO7!&2C _nS.R >5g t >pӧ4(^q_Y:9Rߩ&lb/oOxC.8x$(&%hSOaohIղ&.lS4IA90R"ikE̳g6x3S#u=F0Q5蟛IY,і2UipF $We#u%[Ύbkl/bPP,d4Pe5FVáWpg,R30݊hoq^NMfY^Q7tOW=IIj-pբ<$ o/S6BiHT2ί0f&a1ޓf,^]2Au9˱Iqɨ@>akOJe՞map~<=e &&=JA$G@@!Lkݦc> w&0B>7^~5#RH}=,!n ?Hc~zE&/D}z!9 eeDwĴ]Q̑UV wD`ߩW.WU!4&. )kȚxdŬOpּgl>dXߍF++*",!5tPVٵ~~-Kvqs߶?meZ-J\8׋ݦ~eQ8om,jTc<56fЗ6iݳU/;?ў{$*Ue@Ռ/j4hhnu 8C44"JEEg!XO,H:X4d♌> \@}bIʅ=Ře.%i%mU/)B^ cC<ʅ`ۏiQt:k\bmKbێApG7x\yP"| /ylD?~aRF?MTaXni~ 1q2K_ k) 1w\orPJ 8KժQI Nj[`Is:or =.M1 K_oWw9#y$*79F4u=lѐ ^Mю,brtx#s<;@Ji2d@ټMA)Pjذgۃ0Cc׹y"\k!doe9bA7bykeiY3y!6\,~Fv[<ʈ4B-5hAw:VܚtzZZ)|~`$j9iܨ )d9 TyVܖ HV[8)/nwJM.;xԇjLDukU(EDʶ$JGE> hJsUdSCA2VK(4uYpO&% =5LD-:}Sĕ)2rGCvS%QxvLoբT^KtmβYKqy %E"} a3~|V0zٖyJ-JV6]³ȁϊ]apQ0#4͛iD\7[Rb֍Hsh#Vp=m醕?̿d u1ŎFН)+fDMOxQs,WU)H%ҡACJX[lՎi˙]; bSdl;$eyA0p887BɹSٵEPjaZցN(%}PydZҳ yY-( HIܬ[AhδfSHĕ֗tgYJ/,g(/N/%!M2kV3}AN\޶aGzEMEuߖ?O)iW!?x?QωE/-E/rXIp*k/f>֦O=,S_FwOu! :GV_7EB=1#N" ^\G{z_VmBUsbvy/>F1͠NGhujw! 7łӎpWpgۗG.vk,^ *W9SdPT,oV')q\ <$#/ז1QmceEtג9W3WQ_ԖRzӋZ+}C{d jqða}5?J&ꯏƒUzt*5M()J^NimHAFuYI<[MdO@,@ HbO{do=.(!Yi3]??[lˆG,D-8@k )䉐% Ǔ3/0# )~E ,e=͖k f7c2'X`f` 1>V  ^ơ<]x.eʊ&(-Fh77~6Ӊt-LGsAcХy67hL>scin蝻UcvM-]ÿ@wI% ϴ~mJ}׍VE/GI61 fDt<>Eiigq E)|3>K4jt XChv'{w֬-oYy)܈pA8  G4c{̷C[u`ŅEXS7*voOlGi=&`e ܚ/2SK$UzL+&pM&=oeӿ=pudvMN<J:%y &O8ڂ]+kv`U=_s7rLP 3>rl(c`TC55IJ='i&߆'5]0q6, 4";z?G_VFƶ, ]ofN벶jD gcvt4l焅w&2_ty+eAL|Vy$B /tfo>+@4rh4&WŻ?&Bb4c{Y0 L%}bh.Mj~R6Z.ѵն~k728عz.[=ԙ{]l$*O>']e29rUOtd{}M=b |*ssRm o6\|YcZU/HIH>JD (UEDd˯@Vίm0*PfApwjuEf˒S:+&RQTz.󈅰W]E=}4[7n0l{TS0Cq6lZLy#l1©R/&XJ ,hB!oB- .-o؆ 1,%E# -S]dOjB1Hu_ԄAB@t&DTJ˞pq[gA>963;VgeuHFJ$f ֆ  6aGYe/9ͅ w/9fkq/LXg[jZ|wKqӫ ^zBX"5(] M_O"iXS|ZEń^Ectȥ?BGMށAdh|TWoBOF溤C;QӲܝȸ<_qU@s~bfY?8[WX E倌LpgxPfU`Ywe<|餅+IKf6vrL?>EB9,;'-40ɂ- }3[VaQ϶W2$Үi "'!WL1UpQ*F[TvG'^Q6h\JN$!+R&_pS.g6|Ƀ.6 n^S-f\&\t-ua `;t Z2",Tt9! .$cߔ{x2ARg=JnS."4YnD=VQJ yuF[6}ڧ%Й YO X>0tc&[_|cE>[uL4U׉_#3^cz \ L;fjư|+p-װtq]vmHt-;>(Mn1V7Gmmθ X<\F4 Y\h2n +a{2c]I,s:{V='1 [6b* Z/'PoSJ8_mn'Ff܌+ Dl怆;>! 4Z"Daz޺)`&5tcQt0 #KogOǿT *cIC⌇YO[lC.JV=%w|ex̎ɭ RQ"V@DO%a]PРV,H%Œ / !a4.y93< ÷n KrF?1pXt*s\n?U\- ?h4OXA,m^)v Hca':Lm0CLy [C) *oq%2 u:ZSiy;(8X`< QR^WEgD pe ,cjye)搲736''T:PoO9p([mzlt,sB3Kmҭ wR3XY͕qxh ϳAt$Fl56C5X{Nաj"x5o=euZ{bP9ch:rBo1$.Oc S:4$?ˇM&=Z[ ƺw ~\Љ{}%QcD_@duM:Ρ jeQ`Ф"gmVa֐J8axό5 ۊ>d teƈ/KDuq?LY;Pm)avwpx9AցFCC2tFt*(1+ļ|ǐ<=ķ&Bdj0 K韔<9u ;KsŒ"1][Պ6l-4%uia/L mX4N]AWEco[']7MZ~I}n\@umɯzlL`1qp`N3pHް >o\=o0В<25z6iްo~:0oР*۔g0jDcoHp|u,W($g+bFY䏶P,Z/%Uc sA7{v"s K0JU8qP %WZyD{=6ԙqƤϭJTI/ H@)cX<>b:"qnTw|!)F ~yI3p伅rz_%śЯb"d7Wl 3Dʦ ҧ6Wb `v* ̏Ӌ\T:Axg*.I1" ȀjXGE4*{|پҮx\j,-=GsQu ˟0*GGK<< xrL#Eb~ zt.[ zdpNhLNh+UI3ʋAS$dhm#A뼜 DQ}J22e!1.2Ӏ^-6nߍIB$( cM(za'#03)DlJznܧxM7:H]4fsCʘTeI^U`C>U`fT[ǠDiF%`a aG]W|,26"2ȕr |+_[>GyPQ$nmDE!hhLxv Po)a&|Fls9wE@Rf#i2M(>d a8P9}6l F؄W݄VQIRT\f[b\cz6^Cz/6ܒՎ<@pH{樜\==_H`GO-x`K̢8Ⱉ(j:c/ALJLݡ_bq˒ys၊0 T)*~Sx$ d3zuϏ;KO\g9םȧUTkkN SԷQ| 쿖H`S| ymd& 5{UTfX m?[ >[9ZS{7CzYC/jGH YnaQl@UؾOܱR'>l0pA@{?9td$C&_ۭaSB]^k ij44^e} n Xy*3UGDr\d+*VX') qVFJ U)?v š2|9 hƂ(">=U HM-t+XR<L/9vnB]> Řt!61ZDZCln|(NwT_.׻a~f+P-, v٢5 zZ򸒏qA[(SOGTB]vSe|+6JuLU}KO4.'•Z7Bu)GrK5+<]j|tKͽʼn3x,H oC{aɿƙ+=y-@#@ @*ScG-BzS$y\0=bGoDi.)98guWgVmP} Jep. |ã=9\R(|RAmb#_iCLG?Pl~W\  ܠSG ߤ}jڒpDy>nL%lyUk(a8 ק>UyRywXRSqrNeͤp*S7 [3g%D5጗OD2*`<|+Fl[WT|Ը}NrϖUEoR ycd6+TބC wc m{ժ(рZI_'h`:\;YyՎM+ ^.?<2/-xZ)U\[qM6#94qkcIsw]>%JQC" C-/,9OJRjw*6!D x 3kd%igg21Y L44󑋘Q~:D \HTOߓդLcޥ{|LGH6 ˆ} y8.KGc|Q7 L遘Jl8W˖eډSی&^+i Thd=ZѳM. CR<nWr D%ց0 86u FD渱'(dcڌ%1iCo֒yd,kW xLt zF]~焽Xt 03);ꗮP*.H)[oNsR6HãeIoSQ*/*U-8:'jcU=3ǷbKZן8k ke&YjT*-7V_LrC=;f;udWβtqND>\m|-|AO"Q7mLҪ_7 ؇툎&I'g`aznmcYT"̶؊cxWkcb]82UjDŰ/;\8y<-yKWr1jVX.`x$Ag|SI)R/}lоײ@iS]йe/}!6PV, JϜ m:Oo,L,kF?b۸&xLif.x.y}&ڝÿ'+ Gl/Ϻ?@Xc-<rd;}Ώޙ}ϐ)تHv'.1Oz3NV;a2.۶+]@(C)X0Hk]WK/7&'`Fsk6v7|BpyeZ^R;|ܯ G ],ʌ&'TGXu P!f&AẆkFyP|xO%n:ZJZKJKKB YvX{ɓ==C<8rcXm=cK9GŃw}[ļ3fy-9n+Ppjj!$V=+ +%Y!)wbD,~Txh>WjC:صDv)@hgԟइ$ WEVʟ S (1t#690C3SX3Y5#4;O̶kGً. @XrXQs|mJz8p/񌱷/$K#t ~r}@N!\(d LCJz/۸o51D҆D.33ZeU>"21f #^)ZJXQx&>}+_\ ̟$fFؔg@8A\ %|0Lu}8.!#da`>g1zHj, Q-݆uSj>shLߒ^HΞU; 6:L}Ai W6|0]%&"14T)=$[OkP"+8dFp}w?uOSnbl x{>fP+[[9?\z~Ih`4QrOy%r?"% ;5u+=?=&nF{$rw HXM[WM-8Cjh75h"R|-=UCFMmF NVlLjs  ;^TGJT]j˜zңjɮDZa֔Td;1#zw:͜tFZ,Y7f+!Q"ָ1oV^/^B999V +M.t2U5g@|f:kGiV*=M&)۱Ja0_;IY'Tp;4ZNn3#(}j7=؍M?t_O7ksz7zb`Ȇs$a{nC^7if1zkԍXy*qvkngB,얳~LlU#F0y%\?M!0H^6t薀Te0$lkI5kv^'j+FV##ae*2$t_d'?VuI 23w$"h<{;S?Vĕ=?^LԉFdmepjW[0; r-'[X%oxhƤDp /3^9 WHx!7͟pluUWhBsSڈ/zI^6iCF@%73V!cPȝX(W`{Wfνoss,\M.~Tc?yF"16sl*IjPîX>:*;sN^ܼ,/=UJE0kpV—#Vz+/%rm |‘N71Zb%'G_{l2F"V4 ё!|Mw7Cdy:䯙5z3ʻ Zg`-j'$ ( kY\ ʠgp2κD^kgUy65R(rn*Y8mp \t9i"?TfcNXU%&G ~ >xHemdĠWb xl90ٖ8Jnjwy㢪 *v)z >Q 1U\oTUi/x~%:Z$# S"l@cNQ) Q3c.MVope H|O1;'\f.!S)6S ur'2v}0@ш直-DdtB+*Q@YoTH<͏ⅴPM#Vo0DF_I5l$J/ےmbA)q$))h~Z@S2qR˥G52#1Re6&_&Bm6Զj:' :a|C^F`M$/KI“s"v%IV K!肮Lg) %HqG*{xH^3ްzTû, .5.huq[ٜ͞->e͏:$npAAE6Fċp1Db4ig58蚊Gl.܌Ds\+_.qb2+=+=o@gA~L3#>$ *:*`'BR>Ѿ@B)4i0FZ(!,ʃ|RK>xY&GfmtO/{ZzRsl\FM&k~eBŽjF 2 {"m<i*WZ:;O#T楴-C[Wu&0hQ/`cwϱ}t1ԠH뺎Yb?)3.K̠ \oaHFScUzIR5Z&ŕ}]LTgnqሚU#vqIMo Qm1㣀яFnK@."z/ծ[eU.EL!G7sMu Hὒ@"" ߱\ƕ[JG0Nen̥k2&k@i7 vN,rcw߂0VOxuZ.qCJH@n^~>c{k }xpߚbx^o_\k_u !&r}H ~{2nGE߲+T\nN3uDh_ExjOx`&Gs-5p#99OehSP򯈤j#;S!A#V >*Vz4a(:&O*v|6g{[cѽ6H^P^E&H [ CtR-JHF:zM9O1eNDA$ԷNZ.|0/]${A6کg_ԢVZ/lIgneZ k0kb3c;l.U3} ZHg)vIYѯ|*h\A o%o#{fÍ1JsF`b:ZX>x5"oy?ݭ *;cL^).kd&',蔝*QNGujHb}{0C/qZG.!n^؆xg3cЙ2, r\z&poȇaH;dI鞄 !=f%P?_3 /+V H .KA V&Fj @M3AN>^vSS!+fquvDaݣGɼ;?uSa-VgPx $%t+J(\cHLvbZYe ]jɉU-+~UQ` Q@ 2꾣q;Wiz1+3kWcl.I^ wEQ3rR5O @:4VShE51:b&JogSz0fQo8yEKVdxEߑcHxZ3T)53f$LȶX׆iѪSKke1.8u[8!WmcdrL&Q 9ԹWu[UYF\hh!B>.3 >]li4QfU-g}:ɺ+'0讲E~Ŧ%҉<@@hO·s0Ʈh#ME5_1 UD I/x\ %>͛'˓hwe~h俋dž(3gFٍi0%!̐`U2J2Zj>zmҫc /qܹx}' C~յTiS5Ut7Q~jU*أ rU̥9<%gUKk'׍eW_|_ᎆ{VDsܷŊVB 2'ߴs~ϭlQm& SP4Gc_Gb#l\O5V,Q%myd} Ǥ ,uMVt|T#۞3΄ Bi&$-Kckm HH.> @F8Fׂ{SQp.չJ@p.uI 3f]9`9!B?u@-pڻP5{0GF6K( $F5xD@<ș`̱Ѩ.b](:'7ڈ+lCS*Mg5t1'9QqlY;䶳:/zCXTC͝$![fc$7d﫭TtJKY6PR/ӭ(®.z!V K'"`g&&^J+k0F9ZREA"ێhJ#尾Q %,n R`e Ԭ&𺎃MᵝΞpMF5 9M:3mm)xuπd&YBx1:Q^J]zU/>.>0F]C.$d M{gTtG7i"& He̼,:33U4~׽@3iCuO\H$hN(0ea%SF556ѺZ=A"fE((ߐ6ӣlC_^%J#=!WIvMAm?SC)P/_?)$"ϖ_!j}cL,DkzA`εq#ì02O\ Ʃ:oYSݳu&B\ iװcFZ{l1|/t%IdHuW&*~hbjHΎ󷗖U+:P}u? gEr6g#Md"6Cb#O_B!s”KNBßH*VeiP6=M,*e#X![pxws zY(IȂZֳڨ\n⒳xJkF$_hۉ GSA\m"0CFܴ=o :3uAY-ۺ3 Āfo*[H"jꢲׅd&q.#HʑBQgIl[.e6.t7ݩ L89Uk-JQ^Xn%_-rĥԙ3;w^Qr򸅨#hM ˶!pfsOjmop0ry^>.j@۸.RӍ (:Q&TIf ;XF>k5yib?MFӐO_sj+ %IDo䪶~0m|Lk%,}D |Vh{[&-i2| xٚT>(Z4Ci[XblZ"_9tSjI0Z}xiXR'Ʋez[WUS+V^G@>yEX=9ٹR1#}Nu35 \XmXm#ŹG%#W]88Lj"a 9R:Bl t=v2گ_< nK$ RUpIGS&3QdB_s0'gh2njw-Zv\T]ӈ|AZD٨N[{ Z;eljAJCs ?r/qLDM,yM !6y"4t.z(܀5#ϝT_/)076tc۩ H-ԆgudTe|sc?O7b?/)o?RWt񎱼8/{b+I}lZ-J^a q"F_[է78@Q_- k<2d/ M8i)|E0 Вs`r۶h_Z t;F7p]˶^"/5]լg2],v( g^bĨc[η#c_mzpe({wb}}8@x0RnOيB3.G:3 |-D۽ _nT4ee1U]/"sRB܌Zosd*M}.X'VWʳj*,鲊d3w+E < M-B VlR0J$j),d0fqq6=vnK씮0˺umǽ})>.Ƞ@g`Rsf|5!L oC]dzgW[~>t ^KB!؃@V'D?w3v4 1pSmS&wf5=bT¼4RL&JdԸm򞶵R-$l}ʥ}醣|I 5*q.B'؅$客b&0}-:yX%9ӄ~:TRRw XJ]1̽/X\|]?s,pX*.OqEij&x60!^ӡ7sCXt0v+Z׺K afc. Gg]57m% ZMUgh)@A63ћu(#,LhtoWnJ(|q)Z ߲ o߮(Ǵ;Pûpv vp7M'k,eL5LytN<:HT0#5TsY3{Cd4RRp ~a. &Lhf&vͯBSK[=|b{oDm3ƈJ7^P@NZjy[:jGo?^3A ) FJNᮢ+Qe;F U?)p%gzlzev_gn_ Ǫ+ĖK~y"̀dKڭÏI8 ㎝vR|js ,Bߟc9?[ZI4#hf#:n`L,wZ4ea%᭗N=/k= AS8YP6K赠V+3,1Bk9+-,SzPjU?gnqeG}©R;?FЍO۴"{m&(S~ ԫFĽ`RZ@˽  =d.X=f y1`_w^=e^]Q/;w Twvd0,\`b9B4AIpQDl\K5%MH Vn3c[؁]8{qH. 4o{5' >7A[2c!Ӷ跫4g Ë0hːNBy*~q.]`9i6Ѫ*]_IGYnt4\Q8iHuV_2 ;ٰo8q M뼸lAȿXqƁ#R^YG~S(_0u WX4Z>\ڢe k'ae`~P8fD'OtYш>QbtXn~qXRjm/wy6gW ~`TL}l/kbb\s ^y%_Am Zr 7d{`ul#B|rJ U_i !$k383SMH'vsU\ lRDAp8}94|MQqqK P#Q'UA*="im:-ĆO*za6j:1O<0SwWC۾//|Η(F@6ސ|+pgw͜C|䅒OA)m&a>&٩Pyh"yu(JՐ¨\CkuWpuZ%i b$5*<&Pr&Ԛ@kED G@ٗ7Ul0iuP+1#8@, aL1f=O=q/`?h&( Fho!] T?kkxt\6媇K W-u#$qt{.+{M;c *H5,W"a[}usZY3|S>X]vC6 3#au5 '˲PS;~Ki£JkIHچXÕ#nA<V U6 N?(25.;(+tЬAnevɬ o^*ܛiq)4O׉l~!(eѵ\pelvʧ:CM+h4&-+R͹L椺f[fߒ袪fm rxt^)Rc\> gq's"\\'zu@*F=%(?~K?anz7́%:{pY(p-iF`,kms$I+nH GK=pŭdkdYF/pw(0h_nA4x\Y^%% p).OQ뒏rı%k4 xa}fR٣O}IGLf0!&@V9*a|Ȱ[4_Lcrg"r" cLoI颀"z+9&՛>X *5D*D[_ŗKK^3zO-Li,هx 'm4*z$I5Ƴnɟڋ6 6 -h.6iVjۢs~?EV& 8kC tF0)HK]wFK :e=.TR2Hmfٴ˜eYH5tE3 }g0 v7֓4?L$DcRk1.#ckvx̝.*C)'/) 2R^ocpPׅ0GВ~g. ͲK8.4lG6F>iMռeJȌ5ƅcHd629*lړ*ԭu>Z :k'1/L̋2Sףij{EڟI&$wG~5#576oc8Pڗ{+?r7g&'o]tHřs#*_hqpQ6WXK;UaU*TV+> mY呍3$v, עj!rzG} i&@uWv1H^O'SaR/*tŜ<#fH5% mGeo QQ1 l"]W6X *m6.{97 }j i_Ll4,\0ܣ-"j(q{Q /RN}w  r[ՆJVJIu}s`Apd?+ZNŶI { ~ܻZ,4+Iym7C@osW#R,aX[hJ]i,ߩ`^R11}17NghLa7iDoX.,:cfV{yv(_6D\Nm' )z9E['vjbmSC4W+kJMq੠~y|iML5 ^‡U.Q}$CD6Կ^pvƹ-DD*Q t YR@gA` H](opه o%A Ux=`Q_6$-CV[?Hg6Mj`nh[ٿOnFf%}JTpOMA蓬 ϙ.-壗-C>=3U^`ִIaq[/do3܊Ep꽫a,.CfBͼ2v&J ]z!#2QgS:dG`)Xü)kfn jy23E#gX6 4^w<ZDdB:cByzoE@|v_ {u^o`;}#!] ݓBxJ&|SJ=ja™B~㒮G)6-;W+u^}N.r=Iۼ[yd LB"o:|0F8"O,S"KX#|wX@c9%0p /J@q@9"hatݵ}K  VV]2QaГ-xCuFDl5y?ZhVW,7mBXcs`->_#CF #Twl_/yۘ!\?([[ L7nŰehR3kPH ^Py`<#!h&@uG&=n7Sml-Z:$Fp;Xj+\F|!2T@4eTS"CmdG 3ur#k9rᓸ}3[>s.y#;. V\m_#aB`&xOi$=Ks~p/Czfxأ;Bӑn8e:``~a:B2〚HD=;hodJ|dMe(btU$@Uڣ+v,wF` y'AaO3nfO}<3 ;/@G+H;u]JlŞJ6uYԪp˓,WK;vcLʨ~0}4|5!-&VTA -нKtk8ZsD%[lP="ǰYOVT/KUcQ YlȇD pª(*OU{}2eQkwG$4;vʾzg9,pS.Vlڗ%LS 0τH٤akEX )*™3-k y|=4UwZ\>m>1@$<xPuc]YL6;X[xKՅSMNX:?yS9G|(m%anegeoNCvŜS!%(E1Ǣ^c a]paY Fv/ƜOu^?_'APb>me+i oB>=wU'L &,HyEn'8^m"gN~ eIߎaFDob MṲ[/YZC*P딾 yL8v}1rÓt躏?Oyt Ͳr=r<,vyMQ>nF0^:r>!Ad?].42hҗM **B_m'_ 6\zistQ4ް'L.j,Ǘ( L4v9WR8"c18 ,~')r%͢|mq/{FK 4J8|b}\:{0$fgJh:bOsz, :lY(k5c4S7==9}RwrO @c sӃ(T[!ųZή7WhsJ^e"V5wuͬ&M5]WXt*iO`L=nkof9^8Wg"{QG=E%i!9Q ԸzC߮dq7fO.>  姴+AC YYƉťx=[@$sͺf vvLr5oLmb>4xOqK),()mf+''gh%IȯMXF[0{$YMPR5Xb(FTIUNsFMp  0nYn,CǟVHHa.cԭ;{/1m(^'fzs6BW>:tN[B}B'L,M Tfj{K),wV: A@.PFeP(Y'VJo}r#Mgi8){7+ɑ"f4lI#P0Y1l8jwŀбAQ],pJ?Q4-J.79kG铰Y ^'Q;Ӣvg{4)mS:pQ"=GHP %%Iʏ}EG+;h akFC$2,wyщ+4v:;ԓB#:+_Q Gf -_5oQ 9(+} vu8xCNf5t[ۀxǬnA\7\ήh-2A_oʈSW%tBkVq@`.cb!?6BkX_F(7x@wh %ᚻa|󡆲6@gX<8 ԿdVT7*CO$AP]EjyԘr[4my, bJ>u^}R2/P{ +)U^Li cږ@ B$p}>P҂e( )(E8yĭT!Ճ ,L&Ls^5 MP"5Y6 /4 }'ir4YE_z mSB`3U )do(p$h.^pCq?b@VtS?,TmR;&wo(agle56 7􃀼Ux> ʸUyu*h((P:r\QR,ǫ+ f=4Hx037"H!fߐ+@7ؚ#ybD)L+Rh\(1 oيɧGGʀb.P)db^k@+z^T'k1 *r j?`-!-Vz' =B z|J 6D.ێNɂo/uc_ܤ{XyzIqjkCZG nzG!'\d'kYR'(x;Y O7lM<ߕ0!EQ2qSeӀ<8]96xJ/N flULSRU`kt*oNin+QoHC#1F6K:FWVV>Բ~Ҽ#&]yP'X"0mTЂH'#ٝvƈN.˥*Fb\e)1Tw #~+fk;n?+pjۨ+N[aF( ׈(*h@0dm$- @%tn5BjFYT#Q7ZL;DN@#|0ɭvLjInd,X..r9p@.]`I[?Pyʠﰮr?)HИ@8) H66ac:RZڷn5pc}iA/K@} ٣5^Mv*A S2q #۝doK5YqG;ͤ^cǪZ; I)P\η-u+qqM$fx 'y\(u[x# 1GǡRJ,~`j voY@Ga܇ %d+6pEPEǚuipEV2)/!O 3,ՉC&.Y+jAr΀AXVx4֞XQmŒ35ne4:OB5]vPB]按Bmq(/+1y!={[ M/fh_ytŽuZCq}[v,vOjD~NҀ(`f)FJŒHLD2^^.doZd)V4p8f!FB"})` s"7l採crh1[vJϦ(ςcŽb<R= /&%v?雥19xj4@(QUd[^s&z ~9wbE`(o)Rx2\:k$ eKhW_Xbޙ|bbM1C!gv 5%07V@x76V51Shs+pzhjD\Ō-rLh]BmM<ʳORU8.:!hEX|OCjMApռ -9I ƬTPoK-|`^+@aCA /kc8ߔh2xL wual)Axfoբ/L@Mj{Lp B@1fE$ JǏQK4-$QRGN*\>(\)zά(+żl9˲g>[ x|r 7H*%HMȆ&Seɰpg$ӊ ۫]qlV;^xlV;H贻D͚9T-,"^Ia\V7Kt]zUc) EilUe~)fs;¾ cȔOT\qMB9!ϒ1*PxЌ45"e{T)k\tx/ -Yc<$CAo~jW<Ƃ0'a5'o&["M>S.uj)r~&^.jP_I|BNXrt7#+L&l +WH^yrA4?'4:ki6: 'mj{ 9/9K~=eahk|ūKF\k^˕|;YuTh]ZQ[SsZhYIAln*43V ʳ\>б[tb d݈$̣D7[R ÷䈑^@3DnxCK!t8×c~\ƒe`(3M)`a% T|SLͿn#J2RiPv*leZNFJp8 I#3ۢ_ f >OFq:mae_t*5ng߄i.*re| d4}$6ve;fjbEi BGȽ Y'@\VQ,W ;6VYِ7?[G\ hSDhچ8>rnrF?D72P$#e["_SM5tz0$޸(S-hzBۨ .8@@H:K;K^A˘Sr8/ź{rD hba|&qV3my律.Ndivd!Xm;{5\~ L&/({]#EJgs&yRX<vLKWO6oLIj5yo3Co^(3զtC wG*YǺIK`1kв-uU Mv>K3(< kaߤ!ZF:`fZ[ dt!L`\t:-jd'_4X)JuC BiDt25RmE\Oڒ}^whnå>),R^͸pۜ"aRF -Va/B9K8 "bPN[ =4L,<\Д{^UзP:!KW2\4y@|pSU)`d/l׹m#)ǃ[--;S]qd6o̓mc/Dm2@BI;8Яu:Cʔe8, P5\]7qe* %/R/p鮥J-ȁ4(QYs%1Vk:=si ~@'UcsPc >>DَJ:H[aLs8&}`IsH֢=$(1aTRaqDP,UuVE-zZz]LFHߵ $_{;i.I }퉂a\a#qӐ}S[7yLbxL :{ eR.J |"4չѢ9nj?Hπӫ߹tbBoظRƞ_RywdII`Mc? 3&*?eDD 9mǥܠc4&qR`&翰1:XVR5A]+ w d0ovh0"nࣀBMm̷Yt;78fG[Fhfp68ۛ#"B Z`^y7S|Ui*Vg~\31܀L$ ~񯐏{& 9V ;vNMz5Qqa`P1EXeݱFTẔx ;X937Sb0ׁ lS†~,.=- "}ֈ5 MbHé2myưϙحUe頫y5޲TXHV7JwimH1C4Q~=6MiUPko? >:T֟Q3ƿxݴ5:U1Apjn^629᤻ пv}¤Ep\K^~A鲘p mЩݷ7P8[,UDmAܻ͗OFmOl@%c#) (T=[o@_K1:>xGk@ddzb">~GH<c1 ۠ n !),K;/+!9DΚsQf$gî:Jڦ,oygIOZ9gM餞rjSJ1ԑ.6 s`a\gP 8ipe+Zjg {uKC-vk($:n1Q߱o7cY+J4 ,1~*=^I3L9WmUD_;=9W=:k`ҽST*|\+Oy{YP]SaXЂz7C=РcU:,ҵ_%,e B %ơtw>i.Vn{2tW :![ >5HBWtiR8Oa^O~JU#DN3ũZ;̟ bϾH<noIC xp;IDGe^כ,\ky*fNɋ}xǡV@ wjjo~n1svw^M|9" p+$ڶ~"MO&\ %*n%d jnsݚ/=v3r86 qF'M3-|aŊJumcTOe?~U lhh1?{j>wNJ'T1y` &&-$='ɾ\ݞ"c'qY-?O. n==0l%KW'7v'[7ZҤjL QYƇvG> ࣋L ́hsGr&p]{,D8G%%yD:SH9.3h7kѱ鯒H[J;JE&<vd1HrtIYCt3s,V`p$vxigם;bSsg4\7K_TD_D ?qLTYUi= IoEw'OFWtUT+uyH%'XRkBJ J(7Fg&AQh0-/)*+Rʞ }b`e%4[!e6xٱ~wf;ցEN[yYyCzaFڸ^W$-EXfM?t2#Ei5,Za},מ.tnM 8hd<^HRhxwPO1|G+T9[ p *3*Bi#o%qP ":Dr =QUUL&&sq B!6<[E%h|{fowQ2t/rdoVzohu?}3 '(gܿF'7 &hfɭWYo3?^tXt)8  @G8Bh߅sq֫G\؂u%K+Y`VF^kU%HÖ/rV"pS2De/Tp1aςky.כEQ@(˼g@qeDϡuQ'1Z'hJ|EZlrm -R6txKY"řay&.a SLjkCLg YQALA)}a4z Ný""(,OeJs,+=Z>ѧk0TzԇΟwRVB=399O;>x<^~BBz2ᢕ1LFC*»l$;L΄14Q3/Wqla@ZMϢќohK2oMjh'([dyZrqY 5-ɪ:m.OeAƭ*@(\rA?1z0kF6ncfnqͥur=79y!g8f(5a32yȂ GyQL&1x,|I{%;$>&blONxH-yn0vs|1*^YI{_e/&E3Ƽ&UWm/.-0)#URbfBdو: ?sɵ@*&m4mfgIذ j ;ql1IӞh`Ÿ̞#-Nþ#>`~k=ss$T5H6/֠RT_+@@OAD^h娜]Y` [XHs'K#3r j?ϣh+I [!Gɫ?VjȑWr!&0VT^BVlon5O[Q&i`)tcѶMfʾJ)fu܈7huܱ CH-Ӱ ,qcG-čy-1Ceoܝ$xxUFUՎ`|'P!X5sJB>@O Kۗz7=@۞/ՀZ~%r4klO[>V8q2x&uՇ^3A7WZ8CRy!K>T{/Fl^zn-[C;+ A+{Up"M5Ǧ;xZ"$FoW (kKb095ݼcB޼scp =. /b|*qKPD/xv%a0_[t'%," dФ/&H#:"i}\YO+H WlD!\g 8@e2闦2%ޅU6-eۦq*(o@nQU8d^ur/. \tA #G%"j?,v@e1a<7co9D"aB77_G%:Sz+E2>0S<^QF?l ꬏1[&}OԨAfI75 C8r@H< yZf͚ϣ8K>Ҩk؇c,;k5cR|>EM((pmObiH ne+{+3ԨU`ޓFg췤3JF^y셥8Θ gjۈbbz`#[Xugռ(.">q(ynhi.jժez }=X<,.{MCQM?_Pk 5;|f%[%M=3R ŶOyiUx*V F%tpJ4Ls&ZzeE .Xt D}ޮ؀QAtT5f#RZp>M/b0k4=v0TAsW_XZXZb|neuED\#5_ -~=ӵSL JxD)=3B pL>XZceP|Y r2O.۝f922Pǎ=۠*%? pS ]$\X D0ϝM`K'1zC=Vd4:r^԰<"tޫ7lri7 !sS}QS#0W:v LBot/n\,Gv*GU5OB)!FA_$˞ouTX4CR3c59GM*'",pp#"ea}۰1CTt-ClGPD@hdCG>SV1_/dm=dGwpGb6,lP`8Q08lNrccגrCm=vuTʭH7l0pOh o:d3ڴqXOD&psCj#F$c}qEkߴϵ<t&H[k5K=Z? o`0W!VP1ANF.T(Lk;O̪`E O'Uu;Jk]mGZB|$:UE^ }p@~2i%A,|yKhaiKI8ța7}m^cuR.!wjUYYrq_%qOfK\I{bp >4P%Q]]HeMJ^L~&>9J msV.\#$7&NrU WiQӨơU1~+GÁXWA/[aeWz"?*37?@Ehk+ NO)@"^#͖c+i#I{n|TCszv$Vҙ6f0lS] +Vsꆆ`q; 3)Tw5cP Ǻ@q $0d2҄H( ,@w'{_b}&:C$}7#$pYYDc{l#ak ^j+K4YU2d@^FB'rCThiT<ݨ+ٛ }OYBh\{0®E3YwQXQe;_QuG}}E\ |T82 HH;PMRJlѢn\]$Ȳp&G1YؔI pn2n1%ER5jN 07yxtϯf!d.~>ʝ͟XSw_Pp¹\UƨgQx%1&4Y dMb<خdh6"/)љѺ 4R cEv*nr;_fo+ZDW-gzlZgߌg  ~://+¨` Lv2s4asb P]3́|C "hoj'_+q!Z/XMpatcOv ۲/Aca *f H}%|ӠY}DͨuG`|$3\h55_;VL$+ܿ/bJOҋzsfH14+M%fFg>X!+4tVunm S/6>ZP >Bd.CԘ̳ ݩ?F4ԫ[O 8Nۤφ\­ֱ,8/+Z~[_%O P/H ǣK%L4djzZLؐv5=*̅@I=L9Ifۆ@*p''I4rcNi8O1ǍkD0񨫾t[6D$>s(hnB/t C6"#39wL'T1G5A(]$G1Yϋ)X7uAEҔuaH8<'=jNW߲ר{RK ?F6bҹORۢE', EC{y֪ճ܇yJwyh+is$obPi_9c %2 lni`<#i= h"s#gnɡ6aZE8mX3 lU*NAnv=ȵp~b g(q<^ q` l/x_.uA[YT`s1<0֍ k&e “2Ysu%=Vܒx,:7MyoX*?-Gv]S>,Az\T1@RؖG*㩞I<{.0M~ހ/ 4FiD8򥺬ҭ+pY7W3c)BCՐ*۞3&H;uU6L(4y:"&Od$P/xbtLA_ìrB@خǬ.wᳶeG4ߘKjUY JˑЃ%Aۉ|a `Tm֝YӐ: 4\TC#;4`ѷ9~@&LQJ$^Џ5Tc>ѩ=Gut5o^T-@tAduW+'HJLNb:MYhC'`IԞS q,6EOX\)} y9&]tAϙJ:AD]=((~`')ZGI%TE0]ݛVDy]V޼;b,ǯ~W.b8CIF^mP(њ[٩/%Q+id3\AZw/!y~k@C+ &ƍ^|A܀1Li#"%c 0 ˧=S}{5o.7Y^JF| auChsxӕ^Ic uUL$<0WmT$C K K{C_깾5tFc1^ u\|0ۯ]1D%69du\*,Gsouh/$\lVYkmF (g ̈$Odq _" /zrOpEŊܾJ3B m$3;=euUھVkƨ>CEg -iNM)hsTu`{no_rԖP#NJL[% fs X=Oxtg x)gfQ@1pgW 0e~i/{=h Av 앞_XK] :)_{ngf=6٭~ '){7w\Sk Se7!_~KmYDWӮ"Wawi:tΥ2X|0;Jks^"0Uk hB)u@o)Gc4XIyH|YO/Դ+ {b*Vƌ9I[K-XU F&BY+c$HCmJӈd!}qp~K@;Ci/#JE?1ƏtCk"R}]g'}SKE bxT9<ä =Q Erfw|c`[a`&2!BO9Z1cWLK_WLD/=dT3=RD"O[qW?&t[q>Ȓk.P~9 [Ba83=7+&J=+Xlζ^TV㑚 I&$" <$_(J'rܳbȞU6'K{bg!ء-= q-%gh 4d$4-ˎy'*aXqt9*t #:?\Sog@5sD92I.qPC>jT|3UϤ gJLpPN\V65kT45f05-_F+a\a pMa5SXz ^}26i̲a3b~䲢ƣnGj';8c=HDJk޾d lF1 >d f>g%8hgGHV6ϰUc1g+9`Ln H4{ͫĨQU 2G]L[P& t~|r|8(6L 5 )nbR$Py?w3<֛Ck.L98 eXLa4)=?Xd1&tR`ꎩCɥv67Vk w>DFRn&lPsū u]#ܷctf튊α0*Q`3 jS35I+*3Tj{JiɾSЋ,"øp2kǦuo#9QNySa js4F}$\@V/0,l0NT0?^J9nTΪyBg6U6> * 5ЋbN jL] &OeQqb㺩ؿ[Jă5>ՄX]3v6m73fZ] A+d(㖆Lnm?'MthpD`]A3hn/|v>rYumᄑw9BI/gxKMt}Coh&塵=Z^t4!C¯P Z."uJw%\GfP"uT~ Rmk~]@ws@vV!JZc( ;b$:[>O}䒾^Z ;0<H,Z[|'yk 02A_>)&L@>~&R⢴H_ӗ9I0o+#(4]BQUi`]gHү!/ɓ^m^L$%]9K3kdpo@wN6/t^* y"NC`T,7.W4Ѿ8 u0&jNj'QC;aڪ.nb=x af-S4"تnbhD^elyy_EЄ^Q|7FK tKxl5@=هdCmc/sH##dxZRYZ%@k mNKDy7i{@[wСy&yfcb/C\ʮ"'?׎*s`$P67*k"W7r "R1_g3B@Jy_UJg`ƍO>=HY/)(?=U~jr=QbeΐeK'TIۚ*o=k}ߺK.NqglS$QE3 !cpp> }^0Wuq Ph9:|wOy,ĕfp컯 )PE*A>eO;}7|13}D&;NF8|Po .*ҰmԷa]_ÂYizUr#)~'ʸ8[6H6#T1ąPmhdL'U5OrgJb {#{*zIÇS mW^ەyl2Ɔ#jY΅2 16yogyZx"at'TqCWÞ3}.P1GlNoNrK%>7[U3F+Ї6Ҷ2 97[4c0 VY6LC I(a#r/R!>2f'@<; DKj}Y5ȡ(jUp?v<31T~Z9¬AƖ.,6|ػ焓N ѾH `vi-3vmp1F>TנIq"MP@VC̔+KJcsK`d$'=X<4Ca1OlP_[S=~7R;: =Sm0P={byÖ0##"7b,nz17◍ƫ:Ƿ B"J8#g;@UDo~\=G%)pzc]J2 i;lOM%/*d>u69ed dOX<J\LG6aw >Qm<:R,'mQ`uTU)-]IKب{ k! ȲLHtϫӱP)J@Â;IZrw{J/`G#ؘ,^(%2`F,_XOҒaGyMfA|-8 mDP '`A Ƒs\, wtGwseBN§8*̘'*qQ2z'Ig)}2Yv}\Gd?+G*\3G!AqM-ro5) pf @땠GcYءO:.$U /õeґw`FY޴x:@\DDT#\}iYljH[g b}r6p^r8v3 tvOhjoY:Cd}mxVFHW|il*@H._ MRPHh=^i) 8Ɇ'+9/sqrPŲ|{:$1a,򲝭Q" k]AZZ*> 71m.c,C) S%.*H!{qa~Ueۨ_[wk?䪌Up.5h3>?/o*ڟ򂨂 AFLT˷sD,ʥL(7b $N =@uZY+K > [S|%5~aNF;Olƭ_.cFXHGuMK Jpٞ5\ 9C?ַDͳMh qU* tc:bVu)7SՓj6.th{F}˹ d u?{#}yvi!}O$A##Jh!@V.`G[\wɾ,iK зX6?7G5MdO8gЍd G7j/!hiȂo𴛆*a*˙6QNcLNdh FSZ;Ȧ_dpt^̰?x(6|GSpOk4iNIQgǭOz 8,?-~2}X.==S2YX1BUR9z&-m@׬تF&5* qOq\fp%k#zFotl; O8 FYZ-w#vT ,u/33g?g&=A35Z َ$ ;߽+6td>fNm6z[.s'#K[DM*tߑ?X{ԷcWh2w:63މ2$^BMZEP2ʬbJlH3s ZB,*B-*D%=&.!O}uj8%uJ4݈˃ݩ@#Xmp^;Df==;yIz&v΅߀2i/rձ v4כϖr4+{*78R&) )5J3u[֡Zut]Z]̏ >S$anci<, 9vmccA+V $"Z 0@&Ru#Pᱜw{ȀTA$a.l"XڞДYM_ɨ ~ UmB1_HBݐ%bez) cTg9ρ|%4yuX!Æw1Z ׭ > [aY:ώ 㒗ͮg XkrD헣^xU0S%.ʕQ\׉~ڇPF8/IziF0+mV=SNÎv*i2UF脓 480:g3ÁѼv!`e5d|EΓo w7%IJٱUZ_Kn${3F6TVOJ3vy͎ͥ(}Tf,Ik%q.y7tjRG6 YwY\G/#\`!K?,ngToBs@1|⪅WIZ&JqN53eS^hӫ=QK 0\ d謹#KZ|dx)myGVg/UE7 l쵬PGzK{kȠ)HT&4ҰT+ʫɒ|o'؊˝Iz3e8 XÞӁ+ЊE~P&ݯֆ_q+c+P; ^[Vng4U1:T)l &Arֹϩj u3w;pP*NΣ3-Λc u*т7qd8-َqr) nf\֚{,:io/& `cdk1PD>^^>dW1ЏpOccS:d87\GI"yStQ>͑; ?bFç>ϖ%BXi]`r>IPϯU2 xq0}zP~;L`W\bL$P&dn{8)3:)Bnj>-~zdRI0v@k}i8t8dqV1{ itX;7!nAdi77%zڇkn}Dۦ΍2*,-~|}*{p (1k.F}S!ϬcZ>ް-I>'"6֏kт% ]1^ZĥY4SKfѶpJmjxR6K@W}gT G+~Ƈ:JEuo}"%mSn7w8 8^%FnǔE׹\{cuؙμw; (ԍ,DWL +}osՎl2ޫ]>! (|J3V1، b DW?8o].GA*< Kў"zGBGRF-MYn.eҨG LM$EA[%%GN2zPɗɄr!?F(=d2G|p1/J8 BV` 1 2*Uiw0-?ƒy(pX/s-m[K,?Y[M M!]ibe~O II `I68XD)o\-9"jFa̸ъœͱ9Sdq1hYǔMFytZt-9YC33B{DhNfzm`.3W ! !C*- Xl~q"FoW/W#-eΠfvE4J buL}dz@64LB<_a1cDޔ@S;NOgSKE<i{_lu;r)j ]@GtѪ~]te@eD©·n~Q!@sƻ98LMd% ڠ!16Gߑɷ}Z9m`ƥ/r;36~F8+9ArPFfasLІh׀ HJa4Xe$PFݢ8|7z;Uu ce]g1ĆW0W!KE63Q<[@uDhu*'NI6t Gs/\4s6_oU\F8r~ 1d%CDj,$.G:TU5bk7,Dz "1~7jp=/KX w$Gҟp" 9`LSZ#ݵj]0+Ag}Ͷ{$Oa3M;ԴBTzU>,QLOEϾ*1EֳtE`~d^2Oik,-/ QOc\-Et>{(QS5u)eW3>vGJ"Ͱ 0T{"URd! B3i_&[sYGUo~K!MiN|h""Mb/%ULjf'<= )Iky\#eg\EU4ת.[Eiيew`MєNKb;~/b*fo.A x@e?&W.hl׹cGU+ XP ۮ^ W,^[PT#8}@dKa$A8WO.JQɨsa/ۆW[O=44+En}}( Lj:촇|amM{wSoKQzkpƮCe8q`RllN} SmT`74aOコSn@d͓J>9e9|Lcl|OBKE|vp-)ftR"U f=ͷ_*LFF%{ꂙ*Se\K dt#,5,RO{A:%ZE mV;u#+!67 5>`<^E /xdItLZ{&*Nzu M8Sɺ쿳O әGy;Kue[MmAPBWOXh5Y!)ޔ-yһ/ 9χzXsq0NxS1|_MƬ?o_y?NJw-/|eMH68LaKt:yvŖ[~"NiMi(̯ ~?D knELD7t66*$NT}ḈC]K@UF,B5+P*K+(B8]yPWCPFv]Gh/LOl؜'0%Vj e֦fL N+vԭlI~V՗}z1iOw|?,>))߉p}AzD5|P L`;ב SZsK!CYwց +TE V|N)ZKHbrH7ճ"OA(q6ѫHCCTc%ӳ̫##S{cE˄ 3(0"ZɈ~QMʪ0CWԊ([$.9$j6ĭ~ןz2@tYt.ӻ]khC/c6qaRxg,UkEn h̏.c;)gm[': fX.xs%P$'~0TU*@z[:n|$ueJgL{戊 #8ZGW*Il01bhPI&hlḕ?NiP: { I/!`&r$^Bb잰pK͌~ .^_vcH㒘FW pB db*A=Eֻ|r!z)XGGhi9In*v!z0%a-Rz6;3~ MԔr}.Zu8g)[?^]xGM$)}zާZ(ïnb\Chkԭuh"Pp[bNQq9&9* QI%CÅm&_DsNapڐHF}@\gڗd з2߁Q=<]9<\,S DB9fO!eN0lԆl wCG#N.pi/@4*Zwg^Cad81:,&zq~zKP \=T$M8P*sdިI٘ˣsqZL!!Esi8 ` TXsœX[J-V$k*oLYnS¨cIP1Ej`t=OO{^nI 6V"P7$ J]N%ޝtwq**i/# r2Mua4䁢 2#,Ys˖RxGqxg/StP}0ā6 n61PkN45.* )t,[DdS6I[Ղ˰L ,1yA, oV1U@TvS/X:&x8r Y;uwLor>d?_3xJI.0c&*\-}4CĘ7k"zJ@OCMFB98*N2t ->FolY. 'JY+綦=WcTs3鐐19[Y QP'7(guĥS˜-+/.)4҄t:>z(D|Vw)p-J с՝H+l/y֜vΓȨ/ \=me@2`+>|۳9:wbH HKfc{sqq}Jw1[@M9|߱!фNl5:Eg5Aui^m͠+\vۧC:$$5v'J&ِ]E=#f=~7QQАUoNFP򴯧kMN y #8u%4fs@@TUb,i40gPs#صON0G"l%>3ANݾ2ZPw]'on~`8ȸv\l6ր{ɝ^xˁ$˵rm3 r.zԔM`RL(ƃI7{)¶"0>%TctIWNrD7bkU= qq{]Uz!@LpυaQ-+Bolnp?) nEMZcxcI/1Dp^'W5sυ޽ћ#$)0bvuxìm@ܒ`btl6(4r#:v><.EIvo $bjS4%# v3&?G- Cr{hfuP!MgK20`קЍn<ɑb?!F00DtN JX t TCDZւ"W@UN`%[K`^ҲD]6{i {1Տ'P(O([vDÚQG8o,DrZLx*rc}}(tפ`Ys.QcrRS?7 ˋvEI:tޕfMu4X)qd""3Y81E)dqAHsONj6u8k 9x *\P%5QP ƇqoA.* isìr6_.Z?{L@ \Ǜ6\Axf=Y [FуGR5 4CLUu"Hm-!!_֧ _ ftLta\śbLS!GSWi9N|(:^wQ@r5qDXpTɝ^yZ`k``&Մ2Mi7*\^[*2G5{ JPҊ#^O`\Fշ ]7 =}!+uIMic,U.{'O>/p>te͏d!_{dL힩:n\%vQ[U@~V|ͺm؝B9}mhȟ[t{p"7on*#];[*.W1dv:RCcߑTj*O,%Dݎ7`I2Q]bΥ'?lS+@+껦G$,P;,%5 pNLY>bL|kI/(BYJ2-Xjf40(ey_boI/O`a}9RQͶpsdC6I[i$0+ d02ۯެ䛯ͣ^Fqzu|^F@_h\" ^C71m%8KqKcL4 injB䫷~p ЊRvcj]`n b$_K; rok!9|f hWNW㻦vJSvW.=䟶M@fpw4kͮf~S_!)1;뮝UlaMx-q"|+(7;y:!U" QN(-Pf.3?#i\LKW5zgܘoْÇP2-00|T0zDTt0{-lgv' .⟨Tq.CXY:~R^a4%2{*#hýI7P?zrR.=7`?/eHj O5V&bE2@6T'~T"B1q=(}ఔl}_X` Np6}I+ECbDgq?dHQό;#:mXe,Mh!!R$83 JUK' 6nn~AX?Qm \gy +5=jCK8mFGRǪZ𵪩m>/vR&T9avL]xYFKwҀL2R$%4vbctA2l;CI~s=8CUJw37ѫR *mn)EBM:n<>Ӗ$СC֥{s؝ȁWṁe ܅Z!0pݘzǑ9~%i}aGo<8} Gx`!y'_)g,g]8Qu:7޸Kvy5rW`{؀0n(˸P]wz$y@,]#Ka +}ڷDgF!yfw^ߞ e0p>ЙΚoV!V&[Ž逗9eMgFۄUE|jvQh (rgDXљlƂG]~m!nfE[#58k#s+AA"+qw"l._̷Z:A5rvž γ/нdJKE>:~[p+}g3P22*Ǣ 3}O_{W cv8.VG=/0|vLJGv:bڛΉG8µZr 6VqEs{'kJ3疒{ h88?~iHe ޤ~ ,_1B(ƭ!Cl8TH_\=<!':*sq(AKAgwd"cPI mf%赩>`c[-{Ye7R ? ;Ah?ȷiAE Ǝ>KWiέDxϝd/]/z۾i}$ZXCRH3rf:}XHC1C]h4wąG3 iu|*筅8^PIkG H#}9͙ yZx (:6 CC/pP & .|CgWwYmYKEZ.%"Z O4ݍ]/hP]z3pspgt 0`/1\M> k#<l2w_n~'鲍V+?ĻV; Pt41]4/:LQ!b&*G6PB0< KjHK#no Om3>9 b@cv䈃)N"2L9LqڰgXyJecm[cƒbokZ~s2('S|tH=!42, y۫r",drQyOXb{̪"҈)4ṢED[N=p'T-b֭¶R"YQ< fVOW%fC] tCM"n* )d֒[Sx)=drkޓ/czS8?\L&0VwR^cx2=>ռZD)o3- nUg v>iY)m[n?D!=>yg@*GF# |ʦ84o#̪-Q/w譮<?+K^ _cB\E&)?h:kfڈ#EԠ T' hpR239[W Jk@.F ~8`6%rm:ԉ5O4S(2=0 ?7/O` zNJZZk$\U >obG;;ȱ$=~֬?IQgJ޹· !N[vKFsQs˜h)_AYj5׷tuԆle3 >FRo(Y bl9w@iGFM}#p{tkE7#|i/Q71tNT1^T 3ǓDohl_MZ%3TMR-*|k -V$9`~E\@Za^iYXb&j'8yy"Y_iD0~Yqr?9C#buyWw {8q\RF[R 8=EUW^\Nb\˜?OgzɊ'B*Yk/J3C^k}nc^h|$̂lj0x%p|fA5:T`S߃[@)+tӅvRN0wZGulVM?XDޠе+ `/v&=Y&T'Y\z6Ft@|]E>&U^Vb+lhw/룜>SF>1|U_||& mSRC+ Ƽ _~kA`9<#[>"d(,sefWbI͸ҥJ6lQ1dc{_%ܫ14YO%Q~ҠgYbw>1CqVgGǡiV]9r'b T%`B[_Qr~g9P%= @binG{Zry$YU 1E{+boI˱pajݫ6g;0bESl' K.-cOmƤ|Ҏ2gKW7!jhOLTmE9ۃ{Ԯ:y҅jhR^M !pHey9hap"%~s fj"}o&~"RSKeZuvы eAp 9B\/@32^/ VD) m(TH&Mv$=%U6֞K;3ֲH`̂㼓Ox:{|'Ơl:p@Ӹ4x[iӢ2O}μb'aÑH&LQr^R%#]@4h?ZfHdhR tŸX5yS:.$}3 DW]Zg[$= ߦZ_)sQ%&Zj:7dd+?Ώ\۬$_Cƞ-9S\._\(k1ݒRVaUZњx`ebk'+ cn2WnMIFVKp]&/IѪF3꿝B'\tEic ;o{~]fQ0pr`{}Emsc{z9N(9&`LuR\J~O5m)4+5sǽ,`@vO$bDtq`DmJ{Ev o#e]"ʍ"NMÚNY1#7Q{/@) NgTum+ f`O0`o%7ɔK!&Ŋwe;=D n븖ɻ1VzhSbBdCY_jn@dM$oQ1%/@=oZ mKڏ~#C{@$ψ4bʦG':UbClj6Sj0|)tBCe/siC"gЋߠNM.Z2 =/p6B5 `@YOQe'o ~Td/[ˑ#7 7kw7suKބ?C%q:F *܋gAidذzk[Pt l}4d]LgIu cؓ? 9AMi^g;`hvS4.ɾJ M2dWir30VIeGBƮdۜ~ KK(˚ot$P&Ͳ|7a}\|paq!Aw 3&rvz`& HI y&X3$Vj Gɾn^,C=g,sȎqC9ࡤ%$۹ZlL} Rn_YNzy\ |jzM6Kd TfIu%<Sv8S@dOtWɽ0b$%$xkp[1 gKߝr$e!Օq53jw A]{@W5+,L8e]U Gl'|RVmb2חc7r+y(`㲘O#Tijn<0銜G ,YP dO:;iCnzsv (QBI( Wǜ/ G ;KfJG #>ć7-B6H<2ZS6Rj.%Ywk\\(db6O[3*s4ChF1m<WKQfףejR;az6Ē]SjxyN\o?,DckJeIC!4m A7 Wܤ`8|w:g)ף#QJk(wl`ZA&W+=s$rPXVɅa,OXnB-˔O?;zdbpYyƌ͛]Qdj+a\oJb svBf(hU<|~]xV̡*48lH39O~gn홺b;ܭ^`6V.%r? p\E;tK|=ϵ~JcؚCGϡ(;HwG,Wr~esr4j\79x'8E(EkgX'Ż?81`":h,*ț,Ϻ.=\br@lԭ\AL/{y 5!k?8JRiwTnkV?Ac"kx=;/rPli^\l,[!^L qs!1LcRwƬ3s辏%Uiiܤp: 6Y|z ;ޜ/|4|;',| ){wH9F^yk1f>.),Y0 3FZL?)k49KӅd=h}x4K@]M7Zw;V-:c$פ~CזN M \YtD"T́[ncםr"_]66Pn-(\m0j[ʩ4j0QzZtDIfXͯ[tj|+s~7a>$9 1]OZsV~~}(g vna>P|yܦ`< ^}P?q@k*5dz"h;YuG7̜J<ǥBZ/.c\5 LK]c G}Clx(*qhXCW.P8YuH``X$`ㅈn9&*@C&Oxp~2ٯьԛ*ܥ$M1X%R*4n?WSa`Tn 1pO[R(g4Yx G0[R% ^%e>@d?4@B.v'T[1ցVx7 Ib4?u0!VSX1n=|=S2G/!|xy,'fr-6Jmou.mn0(O'[#*6fܤ<.br;7EIt/;WT _R0[g$]aDWWsWQmP?eEwp"bxj%f7߉h!eXcXx}km1)@k4Rs{^l^<涾6kVt:Sjc9y66i>s^=+_2_,X3] <8C>{"jd׬;nu mlkʧ4 tS/C\G\(r]18vdy#?;\HӚ0yv0t $Ԣ6v,2c^w*d{kگ[zyg;=?('MHTw}cޠ{BkAef/= ui(.j &+lI㸥z U?.Û>y{7x\g&׊dCXG .mSP/GG Y7kR8DPZ7(f]۲PŒB O+.aPp 6н"K4^Ԯ^6͔=A-Rv@ާiPSx *œ:ÄW#}U`svWȤ ɸhֹ4?XڂB>UTC#և&S*ޞZ;ZkØ8OcLwt^|!6 A@%aV"h%Qx @?+J :oCB5ۉt%̇WþϾbuO%֦+|UժO3 E 5NGf +Pfp#FJ\%\JSQ^+`]C5ㅈiXdkp&cfAC3J7Fqo̐X5%C{0I嗶G+M:VYO oç Uah߱sY`yiZsueu,Ļ5]y\ʇo + ui{ddf@d_Wy<^=zv1˯1-:֢Y05<$-SAb֬~}`ڌO@ ҼJnS} &G$6G5 =}u5ˢt Q)<_&SX<`A{ճ;z7ڱ=.%RmHe{i҃s$X!q 5^z;4( [(f,@Iq-g*ˆ )sAWS{._1|bˢKBY\()-#}X OYoS8+bu/ɁGȣ% =I6]dZ|>ǴxL&cy) K^hVW.KrjWBR =*`Hu {u$a0DnUg+t-ݘpJ3\d\նmqŇgn8EK[M1CنVS0%]e$(9i9?|ےqx9oG~KP S< כT0!c3uk$o8tURmy Ćl:J@ΔM<[rL4cYi?`4|" HnĂC YpiC>yWYaҸN|xpPZtˎFYڔv7Ni.H\a0n+R59vb\MC랣Jc>Sa^ ")/y8t!׵9z3*KViif@R9{8|m"ebR~~ އZVjDf@9+$3'~Jƿr@Ӥ( @_ŧ^"p7FwmxLERG+ϓ'7KYuP%sfZ6xYUĪFL 'fǢcQB#t)S,!j'5k [/':PɊfI z@#v15GVJ;~Y!i# ܙ U8A&vjCS9=]ha}f(sP|&",ܾ;Aiv@; brTXl 39Ց^eG#rcPYB U&1@:!%ʈs_q(A7 `ׅ/Jp͉֕ u̕ҺiAa~qI> ԨUnPcGeʁun%B3Y˧N\܈iFŨ SQZ:zSyZ7 r-*+dk讯eVpLxaӠ^%+s]:)b3^o? W *?,,`]  a@RwDU^0f&gEN9G3ٛsO*!O`'vh5G F[#ZE1@lL^Qd@WLZRbi^Dxo踸?Zomz0{|-9x@3z0)M;HdܰIϰ? \FқyMj}po˳[<ɨlds= 8 4Ӂۙy"bWj\<,>׃j.>'c3ԼI;x> >FB!7pB_ ڒRC77fF7C] EpfSZ9 ~Έ=HvcGw45J͎ >)T7Բ&gq|g0NBvfCS`%-kG#HZ+( ټlȔ2X-X"1'7O>*0rtkH sBlxAl[1槤oy=s;J|`+E#l,*ͧ\PHoaP&83*\A m)u5w; 2Ep]|^PfInm@j4?ޘPِyRKb4X<&/C|nI<47D޷E2M`*|D[kP_*`Ԗd}%m{1Kobs:c%s܏D9'y"%M=H-7 %?7>)køn 0૥Z#p͵ӿq$wȎqç]g86,FNx ]ZjdQEn5.3{0Cm%e<V\ۼqH Ty'mR4Jg){شh!{,㬄I"H|հ DHXeDZҢ;7JeJjD]Aaw}NMbkoha m^ٌ@( qŏ"ڂjq@ Bp4- CI<Ӈ8_V%ļk)]Ag }jT=}JLVmƑ:Kʪ;R[eFLFOUwxcʛ Rf'DDrmԟE}!ڼ@:f k;f)~`/9i3"FTgj Xśzܳ[v+u=Z QaH;O%Sy櫄 +L/e]Qֈ t,4IĽXkZhq##"?IXo Z#|6JYI <٣?z$KRba_^)T,L Ϫ0B]D~&96"T#F;\hOL_vf-,Wyxz*Mv#kՓ(נepT䮍Fa:@^B[9Fu^},AB(Ey>wܳ#u w/JB~Ũr1k/W)Y zΚUL%̦Оt;F-ou ';x~u/6*͞ )5W1?sDž!\ t33BkTPv3HY0U;!5jM/^n1{bN VcG;1IxHx[M3c Ln')e_f!2D7:xpq3fA.  #&ڛ"E΀ &]9tw_af2\p B[LenftWq^a3z3f1'_Io/H3C}4?YN3>!Zy„qrGMD\E5V\ߊIAu)Oў=9vCpe @P+ ."Rl2a6!Gǝ"ğQ]}*6<,zQ#_J^'ehw^wC~h䉖 ĆFVE wApRv@6Y^)NF7 t9R?7X+wX1 nY"̝`KhӠΌfQT~[r9$1D&>I)8sm!ʭX+L=\WjlRc!]NZE[8(lokPqUi-{M %i? HBƱ.lc~I?fHޅڍjܐbX?Z~%Kݳ1?m8887f*EZ/-89(rJ1Qꋾ\ }ēMR6/U\ҫ_/Äz۬}-lE<ٔw[ݤP=6U G =TY| #{_{ {$ĮˏJ?ޑ&@;=4r4LtƁz8=?ڄ}9m1A,yeM~¨V&PD^ևr2G4<͛f !oAFWkĆG2 wid([>9 >^L%hUFEjƾΑ8=H2"8p$;.jľ`{KܭqWpSceWiQIHoװIQS(QcGv /eG<`W7}گužJd18)]ҳff7os9ī5uGlV|pf))B6RwȰ[9}sTbBg6ϋЋC2_MjB!)hz$ަF7\i>l=n/PޯA'w)bH OpD!}?DO,55k&PQ.ypnbšHs0$˚&כpa][#lV}&uIViyaN %#nr2Ј"ᗟ+k?WW=[dH;"pP,>VB[!Jo e/DQb?N`pxQOyhykOEzfFA%."}V4u$lYJXє? j^(b7S^TZI,do!<H R vYQ*u:ѡ0CH*-n+mUkPI6b%BmNI^߸ӦFlvƋ 1ccP|ԗñ]jLR, o3yLC׺"aAR757N]tV/֩ML(Mг͢;,]F#MR1^.q_xs~V)Bp[mcZ JK:b`쒋9qϼ25i ?_NJB=vm8`|?x"9F'=DuzSdTH2FEc{ٟ#%Ja9uHX1m5ElLXM.!3"k@?z& Կ|w6Q@)N=k@bGUk=3eU zz| {c0{t1+CGr8_IZ"6^ ;4RuC(mAJ5~,[Aldf![(ifNfr7W?X/]B.\R,uĝㄅ>NǬ75WWGİXˌ_5kK9;lpqUI*db>\VB$d;|-J\ŰHg7JnFЈ\p(Lg &V\c WIg$<<&Iľ0!WosҼ>V61ْ>*[k&6_j7sH0)KvI/C'Ef$ZwR?X'ɤ,W-(hzN .j$v*:(FM62t ⻋A@dU7JL*.o}NV9їI?r \t5݅.junԽ7"$SU.,<AMU<#q:t^鍠UUbA@&94\f[q&9&y(0%):0\"+?q-E5dmx64`;\vufIWԿ!}. g1fRA(,J Ư-q7 E+P[QE56(f+*@65jU OFIH Kti; lO{ gI18؍N`&0"90::Z ;$$Pʣ7K>0 dx" ΆY!il*CdG;jlcRސ #FSoi8AŬN\eI\Et5u80mtc]W9˜4Wgy|iS>OJΐkM@hnFa1 Y2j~ʊgD}36ZS;^qa?Shemg,h\e;jg䢿+6X"fd@ >[ƓnbM?D8Ѧ_ 9$D:,5$I'a ^\ip^o*}'=;rD3Z9QzO:drT\2$8eZ{I%E)PNʤQrB>#nE!Q 4(ְψ⢖8dؘZ1N_m~)t<]I>dhLq2-<KrDP;J[ϻ>w ʫ{xt~\M.mR>:Q!GGцoJd. Dkp|#鸃7KxŸ$ħ]CHgOE,Ry bS:,!YAkvq(. ,C&Zg)H9&~1.i&N, ٪& givz#K9eCgnP6'^V)5F-T-a+D+l| \GOq-! Hl [~C'!v2o[?_ Z*02ƐIDzϓl@b(0l8^#~,6Ϊ>h:rA5ӊi\pJe751/cn.ڭ=A+N>l8ԉóJ|c/r5oq\dYfE7i\EyٮbWA-{ :Wdѧyj!\ƲΗ ׂ. dVݜ_y98)9z@.t]}DfEM9 ŏۣ &HC`R]I>:Ǟ YjNvzQA(3)V&DY>#˙5MSsa?t( } Y8rFttuз˪87j[2k~D#pY4>\!L} 41-e>nwv \]A}* LtӴ:tÞB 9sD=-@!Цh$ 0"[3ea}}[XH|':_uf5 Ȁ`#P@n6{~" /%O8R&b|t,֒g5}k忭K t@Qb󑻒o>#grOǧ& {R?.Ujl.z֓vgMVWpj6pHWرY.0Фwe [F0b=PeDUg.rնEs<G fssEesP {*iI'c<6O˂`&b¢2JSK'M.Dj&ےHWI+o@ YF}瑩#F'x[&_o*rQRߝDhR7d!}#ŭ׍:ֲ$\jFebLs`܄w( lo[C-N.SƎ ຩhl4D^ɤQhiёit-qJ%j1:&1{ X`=Ɉ '^]j.ݍmt܀{|Xkԁ?MO9@mb3[ASTDog~%6|G< _ϾGR8+ȚTQɕ" @J<.὘ʺ zϣw0ćFG'>Vl! _ھwpeZ7W)/W]m \{m֥6pӵ({pQ0`P_n"OV8;?Z?A;U=PcɿN1Z_[YEL<|gZOU@VӤs+l*L]"Zq[#+8)"a)2ԨnʂpzBy|UYwM^ڍ :S7MPN>?Za~TpE̺@V"odP+o' l5!*Ҙ hbCu vӏW 8ڙULA{jY rRKAkVDZ&?t3 } XgTT;C`hͅ׍:;!VTSCabD΍/vˠ+uafg&Za6kNsZӽ]3dD1tzg\P0j'_-b2շeɏ/M͞,¯RdLwseЛnorXb -@>զmk ۞) |3:^ Uy"[(\ZrA5a1Q,Jhb&ctɓl $j|gDGbȄM6ܴQ{]fbɳf=!5auS71 YS^NmXK "N*v6GBU-|p\d&jr{}1.HwN(a~>0XHvŔ;<9) V3gl̈́C-]72g UeTG0C?Xh2s9>݋3cTpPRM0l1VQ;GuT )ٍE V;! XwH`.NX>>i=}&m+|u+[Ԑܱ M?ʩUU, $MK|IώmňͷS*tcBRY8YS$q#g}"#j,]󐥧 q% N,TDNwԽKu\W T^󔕑_! n;:JZGzaWRSenEv?sI Dӕ (-kJ u&$Z5ɣq;4 '}}ۅ$i0%k䊡1־YU][H$~f+ٓб0SF}T~}DIi5=1{66ʭj ٝ=blSVuJ¥Sg++19fg{J0iyi+om2ÁIs7?V^mⵅZ'>ߞ_C$>is*nXϦ\C~YLtD9G"ct*|O# ˱)$6;Pˤvc(-ZӌPts[a:ySu\PW%_dF'?s[IIbyot>@‚k:g+%6-󠺙ųKTW|'*c\L˙B1"`PRvq԰4׫( ls|&8 B=Ol3Φ"~ YL)ת3)#0+b ԥz0l]xBoK}l 󙅱I{ v5鸚6!1ĠW)3l 5Ec^1<5"lPQC{]8>{jKNn^Ժ⇎glU bLS2S֛^fD@}\z%XXQvQ,+qN'̍c.fY_`Ds}bX Ĺ>va e2&zJ4|L$Rd#pi HNk nc} -OmL+}5'q$5ްGjswzUm7I2n o_Z|xti#63Q/_;tֱ+6451@Š ?ev] QH1mfx$q64xܦ!زNIRQkugjl>;tP_T U.Srk~clȆ#]5%!&_+tQK0M]|}3(Bdv+)/O~m2=RDrYKk߸%悷vڳT99G-EzhӴC5Ge0Wٗj= 6I*` 8p=Lyy˻ =ؔGqDP,p]~A7(QW̆)P(* 9[G<07u#H\_, ˥/BeqX-9*}!ylc"T*hJo@Zǩzߝnͥ-YkX|z;Eњ`8 >5ܡwxwUPb=\ЁToS4܎^YK5XZ!_] ;\8EwU*D_j^~E@cF4kٕ`oJrhiL$&n] W ;&{!Η6|dVOZdLAD4_]33"71ن' &Pw|!k{:+(NkΌWuCk\|Da g27jۃ%vNԖhh5?_(+gB!H.>}t˚l! AG1^|L5;DZh9t"y=Eh?t5IzK`d: I͖Qq7+xRߔX}b<܍IjGPBU|` gM:xn<.LJ}5wlU-wq~0gp!ȟQuX~6U4Xb鉔ڻ \[:<:4@ɅqycV51M9Az\:@ޕqVY>*՚C"V45!RD9h(*{$.Qح&~ e.dȲwS_bYʵTEg4wAC(s l)qMG6Eb:fb:l ~f6ceۓ(QJގsKkƄH\,yrPǰ]<:47"<3rV]8i岀G3#gC(`A`/D4vB^ cEuv.npCt9s66} au7Aym OcFI\-Ku=1Ki)_8fX )SlPyg *I8ndhEaUr}_@Pk_a(0/KaJG\!;8z y}La*c3~ޤ bao7QKeNh-rFepJKO[s m0Log"4pK!/B9CG*%'O% o0v(5Ɂ#=3c7Oi)Yfݢ~þ]:VRAie-%[G+4d.in%mc7Ja#>rQX.=knS'4>1 ^6u7Hy~Yg+ieƞkٚ7:`Sr =2)1*ⵄs%Ԟ+cs4'Lz6]xb7p Eo - -Ϭ.kpJXѰR;z E8z{Ļ*C՞ӧ($Bnl EI=$`j_jUy *L여z|mc 2R[4&fʆ= $J Pݹ:m7I ʤP~,4O.ⲤK*? 1{$= ʊjq6uC zHWFfAeZsЕנ2|`?>DdA&QI5rOョ]t-8V\NQ3-Uqp/cy~e/Uy 3U}o͗W`ֈVH'$X GtsF\k'&j5.㻚@iTh\h02EՊ4eP->*UhC~*=!׌8_U DpهMmUtөKop&S'D9-6.{EUkr!\UTټyPݷЉY1(θhd^]9xh61O-1VUO qEӆMkնovt;@'Z߈.<շI'υ7YW5K6ؿhcWp>>4_eyڃO[hgHZ'Wax/y\r`)l2Ws%EK+`\V'1=ЎiM-` *4josݲ)og~6Cu)خ %gjdA(j925%a(Q>X&BTΚKG,1/W St| : ,老|jG=1Y$2>Cd_f6<"W큕lU5IZ}Y{|+ji? /_I,U`vra(~6M_{u7oj<Cc&=9ljL}:N[fvHQK%>k`ej8k)Y#k_m&vttъ HV-}SS+10FmYV E5< #θšϘ3 +YΝh,L5asnn G 8\LT:n쓰 ؀P 9L򐡋!,\aQpꅽ'Pqatᔉ \Ⱦ%k$L%v'gГ%V}qo' ~J-D 2.VWg䷀!hDTD;.zMDfgyؿK <Tt'U&: oY |N5V9ϙEGw{ʝ," vTkM\d}GR\bb:yאOq&{_Y堮n-&3Y)jʱc1d7G 'lrDm6-Q^4z&S^?Vݑg j.n[,#&KrPSMV`@_jm$nx[{_jCCbgB4gA?Ya"ܥ MYe Hr Oÿמ(%qcUR݃3*bvBL`l smunߘ}S{M~j@Li8̽<ȒtB@e-@d& : ?Yv5kH6z>:C{ T(?d&'[noø[-t $|&*hgRƚs#ׁWv|6=+/[Pa L>qU"o%gZ˓pc;֭ZXm' 1hcC_5ބMmy͈aaF 0gz RF}K 0-z; zJ݊ >MuM\\c4ķc5.֢?h VcqKJ*YƱ' SfQ,uu#lWr+R?b8k4&}j2aVq[6;NQ% u=bAD0+UiG2ܓ hܽO\ ݉V"O%CI |K Z' % [/.*)I bD@LQZ?fgYȄFH#**椝(;I, : ٔ$JX?ۧqs qc3o~…,+ؐ@-S³hl;PG@yPz7 1/DG+;8AҺ*Lgq'N0y?+^;/.Y#/N@w 81+]P?ٍOAz1WCPw|јT55뗏o܌BMWQ7<( q#ͩ/wtW 9pA&V$eJ&2=g$Σ@jV`ԅQ\wxX7KZʨnNd;"}މf FAŠ$cNY!"< *\SCr#t&})[]ǯZGfٗ7)oJ:&檃? ;z˃8.A# Ds,%P[b~[t?v0fӶ\z:ꣷZ<͂\u ݏP#*dW'屍-4FH^…,v9vU<|LLvKsR;ǰ zr5^{8d+\HI!MH)WcOxCgsY%,~;۱v*%@TK9c6bWQ$젅r[m xZ<."am-5.CN8 (廦 +(5( qx̰:=Nes_ Oڕ=R=ꤟhGOwkSrhf#|Xtmno4s7C$1G!7lk.LI|nSk9͞>qڴ+$^ ra\2;n*\ FfD]Caik4M=m},*8͂ ʎ|RA\27': v,”㽎 )ɲj; c"ꍆw?87ԁ;%\'d| npqcAtiH4wl]ыcff|@.Ndwыt"{zf3WBo~,AZ7[()=ylmns <]u?XP1]YfZ\a֓Τ&!á-r,p?,TAKQ3"݊"@Gm%ܮY]^?9dE")$ KںCxqBH!NmxtfRl3iv)}xnŁE'N)VڳRa8YU|s J$}%f <ɮ] BS&@䣄3/v|d]Ա~" a`' q;(ce7[C386TǠ]DLnZ&I`oŽ)-6&J)NIOXI!Yj705lHw'c \1(smD :=ײaX:/iAQ&[.cYԈqpBB.;HEڑ~kԉ1HBiu5&%SnE !Y7]2ȇٌCLdft([/&bY6ksk}ՊhۑsV1X_rxܙԹ`Ғv^3mS\=7ThC6\`ޔ(+G f{0Q*~;}zĀBcݐȊ\#3?ZO#b2$+ܡ|h`*SL>YkyqcntC0{zϟ- UA"tv v?Gf7Tre;rAGÐ235艿΁ߌ2~m( 䮥`{W3yl[vMmJ?-x=Dlz2H*BLqi3-Gj[ZՔ\?Y'e5'ir2K 3F)@g/C; WpUi{_YtHcvsyqb#$[T)7P!0Y%A/Qfއ0PهBE̚UfVJ ꧁,<0xcPD$5jѶ b\J"[G4Wr#h86g]*i1jm/J@{&-[s[y`VDBr!nqim@;f>s:VE-G~u{k(g] \ bϪ̸ҵ 1o lLtxYcb5(},x"y{C,ЧSl*Oxɘфخqy V!HU u:t5rA!/´"{ĩfNhmH39mS)lB9>8S[;8vO+6ð՜~ 𨇄.D$נKP][4E*\qwϾ7[uk:97Wnlh0S3;v8aD\+m^vUZ(c}^{ wDԾs*OrtCrϱ~7+(Wy+ߍI[ lWW}W}h^ V!{nLKӽ?ӮІ>uUM|{՗n'}"9pGԽ=`bNihGTx+U=Vz౟ c4Jk ͓;lY +jFg[hwR<P,hK l@%jcӶW:Mgtbu^\[yB?XH9;3)0]nE||\|y{suU|Hpf Fw+C!2lpt Ug> W6 bN&IM)8 q!m=zqU&\Vk dIɔrR,bQm~`V{r04\}s(*uitMIǨߏ0Jl}7VQOOƋ\S?F׈ޯM+f9Ǽ` ഡ=0`E!KY]~ tK0 eꒌҀ$GA.d>X%> 21M dLVss'8+\4yF}40sסNөq*WQ3ydX}1Bz\:Gњg\1x䜻~?XzmLO"'HL.-"aWrƪsApG⯧ԟYy\Uv!c*KOzh2!G0 s ~,CVs$ i~ DD]  &9fOt x,Sĕ<]RFEQ:l}w8%yeQZhBNY_I͓y{p9g-[ϢuC/%BqG˅t"_QזEL"NWK\ntM_kLG6uj$A@ {[++{5.M 4czYkɽx?bC|SY+nhw@DhTp:<(*6x})A&̣~v _D.&+E O?ox&TFI(UdJ^6]тKP*:3ɽizy a=|$Zq>t{)Kiz ! uES3بn̳ܮǝ2GCu#ə:aɷȄm1Ocj)1IҨž0N" `)wMdo>d,)cN)Oww+/T50\ 3e͈3Ҳ1*IxIO{608vS?d9US&)`eZ)7F0>(႔tex,-N AQ **:UBj1DYh(0i?>.f?r -͊T2Х]94if~\e'?[oW+¼rQa+[(7:J3M1Rg_ !nrYzg 8nNgc?kL&xY vX5\?~8[۱b Si]y(17%- 5\ǏWt'ࡖU:JrSM(i(¾ z7,ЋYpLTGu 5-.a龍pC9fJVpj^Gz!`k4U`3I_䫷u-z'iN/xAZ3v?@mctԪ>KZe\%%oo+"!KP.l%$_j ' WZ4H36lJ],Ȉ<]9@G3927"$?7*21=`)|LG9?@/j;^@cˑS-u"n4 WhfGvNMsqpVR+ϳ8|*F21DZ҉zjY,o93Ǽ+u5-du`eؾiaigh~U*F^wgけpsB:+gUzjX֯5r&&]MԪ$܅x+4 vOvS>E&>?T~n{S/m_\˝lMwW31e${"&uy4_!U7VϮ}6 D_^|B/?@r5H~$rJ<&vu_;4 :FLxR C8m;Xx*Aؕi}NO[1µo[=[&^5NGn<|/1bHȋN>CK`3# 槀\WuALO6 Fw,2E}{Ѳx$z?|*lf9҅ H%pg+,;]s[}R %y.hoRس3Y%Ql7C779(@ѩfZ L@L0`(|T;~SӰ1. U[{ΎbRGcdJlwVDg Q 0JJP :sR]ݏV8OMSO:Gs>MfRFYFdfU4/u"T n@x.;+nNߡҾ Byv 20X \D6ْbZ/,@޽6_Ff;Ph(>t -y;[5ko]#1.C5zcl8ܜœvKfdPO"B~l,03vg":UƱe98-їtS=IS"N_$1Lʣ6b=hXJ"$b58j鍃,Ja0Լp6ԇ0Afa 2xt{/9*MMw.R5/DOlAW^/.XxaTڝ7f CTb2[<{G݆$oWzRW [()8^d?1?r8?wh/Hq67nPmj"0# SŞ'RxQb-ƴ^h<%n!WYnYó_̴Z>9[FNw0sgf=}Y q_J7]^C6cpuXVfMXeqW $HV͚NT; Zy*[ԐV Bqc@DWvѹКTꬕ L~Zofi#o /*ZqdX ^tTkV ԥK’>j UK#Jz)6\w!DQ^∘;^SU,Vh~IRnC6* vI@͓='D~^Tx=4K`:J;uOT߇;1eEZʠ6(:;q9)6s*D/LvTi=^'gYBCMrW cHC^ ٬lg#[7fhŰK*L.T S{~8{}e9,礉㓃 suqVnm8v%{yl^ьذhtWy%԰ix!s+LD! s`VfxCܙ܁mr`08ǵ1!C.mOw`n"ӗ7L䫄2*hK;4*I gt"HhН 7bE>'9~[nѥ(oroլnVIzMH^:6 EB` 05Õ* -ak+֪6,"l#}hgBi9">PLq)ʉTŕL1X;~vGE) + դ ^]Y 6/_=V2Kؚ5b$,Zp-ccMcilAiÄm-a@P<}ɭwcf leVɷ&1ma)c7-ft7p +ê7#0la ^ H<Ɂva b(Z:1y5tEѠr4vBPAƿD2o%IY$L%_(F'0l6l WGvcoc~KXq86;'c9_GE0 >9B>,DݏsS ɳ"LmgÆ'7srO1#i>| ,zh@'CV:`J0NrZW2 D2?!C|d11^ay|!tq웖 /yA |=:G=݅tU+.n|r+u7ֺuT _CW6ׅQcGHBz-v'g| 'zJ=8O|"Ô SHNl8nfxx1kg.4PCzh[$bUҁEi'JȍHcND| K[&t0,P5 7Xt>}JC܏Il_f#$fp83=VxOjwMYBf/Y⡻E.c*k `Ql$.1-+SLD 7AX/=t[,w<(˦7ׂ)e5z-<=sIq *Z@ Id`8l(aiRP<룈T =،‰+32GxCKž)nROcLoۇ˧zKAnԙ3}/f& |~ d/Mo>A(LBk [6 ND$7VezC[A j,n5<:Ȣ-\A<~ۨހ6U:E|8s?T3J%5^2,12;W`"GrL\cOخ'՜'׹1*` ^pE$m9 IOS^'_+W/ccjп֟j"7O0{;MiGx T7yFjx^kn~1QVI+D47I2}ҚrI_(.3HWPoٔ@]i%J&C[-Z\,f AlבOT3Hqx>uX /ۚw-T)3J192KHU I,\@XvEkIbEUj] 'Ďn5,O^P-#ӺNqXpaק5{ո@Q|d#~KHk_{bT᥌]_rpS۴eW /`gqd hR)H5޲`~>"<~Lk'uկ(&oPhJAA-n]xBZBy#omjtn$ȷ/{0̓$Ut\(NzE !Y(c^(}gօuȖ+tEMt2,[".ǻh Vp5(b?_3C P+ԗ?>{SuV>lعw;p^vLK^ jouG?: nέ~Gq3kZ^@wyWeʘoh #aȑdRHFDحU%F睙 vT!;ov2Cb9:?*VLg/&0keeg}&=Qߨ6 a1 [`bޤZ/\ PN$6  ./[&yDŐc=WiKno:WىKS6:bK#J()/ysREL7{kyD߾_ N*dĉ37=i7e-9!{ &z9֠搵{2v^z 1r̍{x8bqSSQ j8u-?\>깼~W):A:ɲo7>DE٭Y `KQj6 8DJawĸXޒWHaޮbm$Ls2w(.ѴVOS{fڷ{dp@ 1'J2e+D MMiI3Х!PQZ4x#ۉf0L(輐o}*ʣ' U vp%K~ &yR'xF+$[*p;M}IiMxC1USWsq pQ q-`@cld 6%obxfbivRroilG#G=n^ T g|Ihh+ZF:.~.D }A D2%Q1㱃)>@ f)m@kLBĨ!z EOQc;TF!6(j]װ nE +OiD'x`>A A^҇KʊTس,͚I.JkiOuYch[<TM-9 %s29bFo?3'` ьGCrgc *ӹEn>>Fd&ٕn NeXm[Jv+@ѥF4 ^R.ʹhWKZsöo# `x$4=pcox[jT,ʉks* ڛ8򜴆{@ܲ/ 6pUO5}0M nFӨD8߬y'.yjd|❡֫ʿ5P u?5 %l{0`BSNU2A]zl<ĭ?^DM$3*pb푯, wuI9wށ9䗢<ze[emTm'U҅צ#Z2 Z߉ @C|rFָ3DEL<[Q:" Yvn+TQ NS6sET$Osp4]M Z .>ܑ%2#G]e9aCqkvm~w#1Wݳ"K GaoGu%@BQБ 3ܱ^.+ߛ+" k:8CT O:C]y 7'ddK *Q~TΘ@m%<|5C&)%=-\9?m\~WCd҇VtZ/GCp&O&z Tr> Cc|WEDg2E~v,{7p9NζE-i³D5Ӌio]-t̃#V 64O_qWA  ;Ciyg <kIwNV)UxĐϖgս+|KEtr!VZ\]-S"/Xɲ35]tWKx2ؠಝ.:QW3jZ}T*(TFb;e DtӍ`K_v2=DǙf23S64HaN–!FY$FՀc>q YBeN{sGIQbfI>tr8 Aг KQPЁ`B > 5ъ9_r'7>4ơ5Y p>eu+nzɓȜk*g m뭏`J*qjCAyX0$[[iKjHc7_-Y{7 'm(#ߺ*!%Kg_Y8F9EY/`YR?1=YSƑ4(q֎.'dɰZ)[͛$X0-FqYSZ 5|y2 ,:NKCȈ;ڥWRZ&+njۗh Ƥ !ԔqÌ(1szo!i@C_,R"QW>RZlk^Է6%RnwSo]鈷iXHEܡ'Q"Q!οXA(CmNe5$ĬyJ;3(o !JO[]?F!-uH58H&pZ) !="'DFIM1 ]S%,G@9H͔9FQdMld>ܯ/wg&ijGG. ){zb ?y _]&jp]U=IJדY1_|^HF25*cm1'(eUr7Re&󴡤5;oqPp*8,6:,У@GO"D"Ypԡ_u!!tUdk1a=>8or ;T{ 6$ ;aË LKW5,Euô#g: {Y^u0g;#tmh,@*ra7>J{6@j &c +?a4z5:5)|mumrw~6oPU@o= ̖E@%P ,p4B> oFq,a+6/ wJXOJABJ Aǯiw\ qbtV}dţ9hAw M#jD(^ %cQ>>\VK.͌TQ?"t:U.x|"c%$"OUzr ǃ Sfc%;qsqξ]W$ An1*.O1!^_+hK8u|dpf,OƤnTd,!C妄ښמL 7#XUfخnc9.RKKRJH ^}ЫX&QF(8-״G%e8!zA=7O;gB"EBǰEfZ^-}ͧBT(Fx;?%V"z0lIk\Iڅ~.Graҁ8ol~!Y͢peo@OsFB?)% YSP2wXxFcc}%|. yD&ۓR)/#q7aӉD'^wgF;-dž~Fٮdzi[&#v\GKNP/],)`'G*45zBڗ!G20^ D ̃mF@sƏM܋?vj62F4I-1B`ȆU/zI?n rIEZEi9Ig:/ɰVaA PHQ\V1)~'yse$he6E-Od3SѹE75zR\ЋC s@}=: @."⿝i*Égx3YM~cE!E|uh_dG:M,pCm} 0%?(A% @UlEԶ쭵A;s bbn,4VeV 6Etixa_#U-u9[,E4+G +~>ҏv" M9TXGiW{]!6}ߦ-+1r`MPT-G^f Dʼnf aT4;׊%L+ gn.jƈJfb4u4UDW)3l0tbIʌֵ%21/-{*%ЩɽAk3ٚOUy C@ n]^u\7 T{P.>U}cEK_TSx`Z̻ۅ!4A}Lsǿb\,9ȧNG7'>wFm3ZwF7*=h:RY,#iXG1䁠씚 S=%nBB_"*FUO0`śCBS()wƘL%CR!)F`@C|N#DDlf_SDp8 mt~t2a@Z0e `v2T BBVe:9J?Aw %*'I)x%35*-C Y1qfgԻعVIEyCx.$<7@$L)(=,~1bE6d5iRU1~]fCbU}?yU-9Y`?e[:\f~G)*m #v"`Ĭ8h ! Y..=Y32 -,Ӯ֬=6} rhYMx#"'pH!| [q\*۩*cfc ;g6J||5OjNdA}##O×kG8@gTQ4 3,ʠ|=-~( JDGMhme:국wZ_H>a1\o/Kq ݀f y\vC6x4Ӈ9.qSWXquua%)GrNg<<ɮb_g a(3؇q[&mf5S&GbjrTJŞ:&_멭jN;';j7x^ 4^bIUvϛ0j7?2n>|#ʄB+=+^3rb5=8 <:c&@uB 2#-NO!ȱO&%N0Ѫ>-Va|v\=f7?*m?"G eK`Jqep `ǺʜP՞тŮ+O #SAF)b BR{;sl3gF8ap4&1# j:ΆcM-gn4顨R!E"=;5S2 MeT7P!p9ӧQ,ڗw3bX.WQI5%-#a^{@_е|O3_Z-O*|dwiG+FjHHԚ1hl\3on~#oC_RĬUvXiSH5Ꞷ]eBgR:w6Xp7Ha#:&G\y; 5/WaC[_6UaVBiZy7jʄ 4̫Q|֞ :r2n-Vy]++orro-L#z6QSׅ`%=PS xL0#HsCGfh!wNzjK%ɲ|Zeg£(Hs[MH{;.y rd-%$cу$#u$T<'m6~6dbF=k*B*'P96z@ y^)l Up䶿բc>#G_ @uYcD"v8̤]΄m#;`p8t {!ِ`3;GO[\ hp{__PL-Aڊ'Ftה:oc2T+Aـ6މ/-pkn/iD4_nN=SDF9[vj>",;P!? ͙䈽my8IOXAti!u@ :Xp[ly&WhfK,zV&"hʻ nlj!QC5|&WT!6 ёEAceA*[H ,KTZ= >g[aMC=AAѵɟt3hQ2jW9-a'[p5> V_A&`(Vwwdڟ*Kܥ WX;jDvsEo!2)A7цzsÕJ#B 2}fm{g^>WO=C؏_ 9-W ýՅHPӕ1V;zSvA03ҺVf 0}gf\5jaAE"z#[kttɤNl'c!K` lM\Ώ )EYpPTx!xB4G΀a8yUS 'QQPWnd煷 o} 1e_ݫ> J}X"7a:U(Hu eGߋZHEҀT/ DYSf֩a'cܾVa/Ί*7>O "ww>s HLM 4ٺ-d9 TNL0~@$[ۚf)O\H2XmH.O-q ٻ w|۠B-Q_컇1KxVB t3XxEW++ɀv[0A>zRG9B>6?BƬ)NK  1q=J >M\.YuFlZ%7Ms_ =wmUKSqw[:n322qېBAk$zGӏ "Z΍/ EE~D7UN4EKGP9UNXAs g[+!XS):\"6fMh՛dgȀ mYI_n80ҶA: %Q C(7{U,feS /fld(X'qQ~EKߵV @T{l)Bd>dA/C|#^kP%ܛďܜk܅9\O_)(X m( w~`85z3x'-̣{"3yh6ۀ+" B)5Qk5 qH('N<#CzL`R AI4K^|c4qx`> 3|/9mk@/ E'5%ΣRsQܲ굂I;a#}3аАKŽϣ( ɶfCD}) Uɂ< fJVw;-8-lPes;$^,g E/XWӺ ¿R3FW4$sS:K3yrM;YN.&IcSVnL珤\Ct}ߕ)JbFδ;: &h@mqe`F% vd3Qf).pb%˿=ꔈ唞 ʣr v&Ѿ'.|1^YdGe Tгu?\ӈj6:d>6N4W0 7Ny]3Q .K;aU(qD;~mDe_$(xJFz24У42dwjZ:eEnْ4]d"r$)]}5iKw%䋦Ɣ/G\#E <aq<)M(s%NdxfŲ (2_Np3kgD;m aQv EKf6_75%B%aTV-b1n" ^OB~qnSGCѸIlie`65_#k7ioO`0V8VK-~(¯R&k獠RYh󄅘p#Ͽ`hW mJq:5wxJ \\^RSrg'>|avjv'dʳErٳNO@\G<&:,nɯI+_]7w RonRwQ%UEXr/x]{r|PZ_ ɜ* v~Β~ʀ$dPNB"[ E]žᤴxs򎳎~q#ػZ=`ʆ6d\=;ZHT[J-J~0^`uMc+< ?M7YT1s[x<:;3 AHFGm |˅6fu㛵3jYwSkaDΤp . עr$4$h}9۪;1hy|]^.bHOo-tzP1!/vwfQ!d SR~q{VV$ϡCj(vĻxo)$N1&)nhEF'k(loz~ׯi%QʠPq]U!jK1zYܐ+V0wybZ ȿDh{Х} vB-̨ɡӶu r ʔUN}bs g{{jq{Aʽ<7o$,U>9f& RCȍ^.hP{qשX7f͛ohEw\@`2nqtӣc я ?i} W)D"9n#lo"XrFQݘH bpVn$u /?@j5Ɩ *(Le`>dMVţh[VzPy n=Pm8wj0r|T 𻉬XSUKТ'đIU{;>,7&_R{ՇIc:z`VhRnA1ٗ}$[R";{jXۂh<8yCԧe-D=p1_˥AA[TiSFJ`ݿX%n]DL~) nG 7szZ$;rLQ##Pok5*זm;Y 1k"v?$x^%FxkO3*4z;Wd1E06L+/gA0I(X)MK,Fd:>67}hu@uQM3R:`oд ೷A_?yo:Q3=ѡdT03L#A5Vp]SJgTN,PHmd,3ݎ:sˁYhgjm RėyBOat.DI|\v5ruH^PnG7Y5*l -rT/h!mlU"( fXhjSuݸK>O ok\54FoIB=:նQ-x:4a=;Z_GsXhH'3e4){uZ7ZQIGaFA_zlHCĕ>NUQ,Vwϕ0ʙ g]{inR ϑP:tsoƖ!?v{=zvV"UIⶍ~X G &%aά(*9*(c-.ߣ)Eu)Zܧd,.@Cg:Y_nhq\2]"gSb1= hwj~km_%KXݍ^]d^M"KKX\mCoC4S/>Oui辅W;( K7g UxM!cG]m馢 5&Ki70O**],~ī$WvqcŤ- 9{q~I/!1 EA&RrH : qIFvQVIm[|~__b֢gˇ[^Zzӫ?)BRyGƎpW"n֯P^mal ɡ ̐F&pX)Jׅ1(`ưi+17qbt3@("T9 Jeu I$J_ZnuoCC}^c-tudy~#直?fF6vd۽vO|1( Ьċƶe'Q"4ʻ2}ֹɛ׸v|26xjo[k,LRJE@%ҍ]hk9䋅$>P ʁmTyIÐ^eu)']c U_E RjGF<(6ʙ]t?e)/wc|mtejn(OEt2Pfi:  ޸B[٦KC<)p'> ~ou_SC]w-M]YOR=e2Olj:cAsP^9YJł+4 ؉sޓ;I`ULרθGcx κOF,:3SʢZJ'c\[Gܹǔya&&'3=-7rGTVL0xt+RH=WOw3L3J`l!C.ǨwbilTϞ0coj՛!֋eŦM.ڂ3il8 BDYk rKD=ǡο(\'xYꉑ'+ s|*TI3SZp:9 oWji߷JRپyV9>{ּ7"gz{DpsW!]L`Ɇ{23z4{{!ZXkQja]jJMD&Èf qeF +=k̪pߥKUD7ᒃeQɋ^I#"$XAcCBm&X)nQn ~/{ƭޖp:'LeVA՗uLҔaڼ:ӌҌkJW^z7y߽Q&$( ָCi@wS#]g1gql%pk]4gSHYz?QM|^"Hj-g iך×WjE+jmm4Y"օZ$K.')*Poq*?Ϋ"sH\Ժ]dx'/%mlc'2M q5 >̞/}.'/Ys7dz@Dehc1q>MoN4eRT\lΕ6rH`<År>oH>GzQKj-]G<Upty4T&޾Wk?F"銧k!'N"h M$ch}PIx_SGa~4;e*dߎ6b yp<܆QAGK0׹oBI.&$opI[q*rp^Yp <=mp 7sۺѱlZ*|XqUl "4lwоF,A_if@!:벦,3}-'VϪZ:O齐Iiȸ] $U{ Sx5AMZYJ_\ջSC*Mmnɐّ>g>a_aҝդCFE\[u],} 1cX+׃D1IZ^yCZ U#" Hnb=QD>p0 X 5$T #/e"v@V9˼m } c6whT LoH|:e0FDU.줗?Ciƣ0^-"wHOb*dn~tlm1G?yV!B/e̪oS󝘪W<ٜb6I%bVth?x U[;wI~#.b 9vz ï?.)n5%|z5J'ʭ)ۈiUjup2|{5%1Ůhtiu!ϧzto?=;uRN XA6ܡD9t?:yijT%qᗇ*щ8oά Ekڤ15xL.!`gn}ޕ|)9*+;&IAC ȩǼ8~~`&LS6>C<qa-fCTff| sͬ= :Nž+6Hr2X(-Ӿ4rtf dQ>nn2@j+i `E_[B`? /48$M6 |:&ln'K IWdgy5oM*6Yy o `QCLkC+=\GNW/l%^WtR;jk%,ڱgKS=`-9<$Î#'t*kx=Cקa3%!y4D%nA1)!gN +l%xzz/`)-eȖ2Le=gkak`8D?.iXs @ |XG|rw=ʎ#EᓓtV(FaH"SMx"'6jyFwO%\.F`;]T-y&_^Yc~UGnk."*V8bǞMy ;#ZK %ê 1,#SNlbCAU^"B(ש.4vw+Ctқn S D1EKBn[n pCQ28[S!uvSUIщ\4/Nn }X([2 8SFKu`;) ,ہna]94z=5N/HdmWq`6Z}.օU={iCkv_< T{:_)?0$üV pw(?h0YXKd}6 Yq+W^w@Q FQvtkrPR)nk? \|/ PD l$=tPb, Y],tdo1 AZ8 Zi"@Rf\|J`!{I ~qhcV7,U]faO5@j1axᱶ0s ġ6ˆ%I8jɺ;k72b`o7{u?RgPՋbWt`j 0N?6R<oZ~!is-zC9fHB_M)±]-m*lWQG!CeG 9AO>qsF=7Oe\;ˉgtn\ UoZ]kԝ* s?vʷK9h(0~gص|V~.2%tB[0{zutmDpo[脿ҔD޻.CȆ>LAgAurW.}8B(5fa_&)P5HF km|{n2쓭E)0z=dP0ЇJZ),"c q_@n}Trp=I԰rΙKS| HȟUV9 yôE_p@KpyeσtGk %ؘ Cx7pº#1ִYayen|V_[H(>QA;tR|G!&vHYAλGe|撳;wI߻֚*)L"߼nđu5`&nDjQKGv_ +Vs8m~hqϐ2pk~Ht̐1dsPdO(FY'2xvONԽG]9ia_Y| , "agiϯtKi.oLlk 9FѣSI*Sez E\{v1#Pz;i~d^mu騲H-ypswuh?EAۤKH$ |@s-U0rU̻||nlf҅z niN}KĬXH]~-XB0c2m0G[Ɩh2/fX=~,?ϑ؀y& /RuC90er }cow!pHW힖(|FcV#txpp3^%#1ݮʬr}8ǓDrB ֆXc>&ɖ_JV_Zy`@kOy Rxxfy> p\SIısdAoG`DE&X*~}ehE FB.y|6JgPDԗqbFJ'^h4g\~;a9Iί݊5u$ZXֻ _:ÿ. @$l_}dh8q,u Ym_& `'O>\% gU\hÙ lBuA(֒gtaB$18U®\M'C`NyTH% Z3z"WKyi[\M)O/t.eO_I5(z轷0D.Bi'B X<$Eɓv1|8ĵ줼VÿdA0U_HztV5o =5WwOh ㏫YYy(hSm`m ;b09<3#G'U1s‘IS)wbV Ym쎦Kc(`9YOIR^ô2v1hrBv/H0KN5dsjzSZ&d-AnF*v ldq\ZZ I}n^N3x.QOxKڨ#ā/;AULµp[3jS4"jF($_ʭ,$w ˿Ι'!zBf#XBm9ͳW -8{m/BkKҴ*SfW%m>z&Ic aM2RO`e2ˬpv;M@QH<6>wҫu/Ty)[ Mi-JJ+%΢#'*?yq7L翊,F}{+ !l 򜇆d{_Lޟu'qi.FqzW[#>Ct"3r9yEfd03~t1ܾuꗈv|̙}̚oVL ęL.k={0ix(z@JTKu)`;gqMFlW6w8αQzQ)U Vfv^b:2hi}h^E6{:(&F5E;0y[E%S؜i*VȎeoٯϙPdvmg 8y"!=0gq]L6aK\OM P(B%@'L#$$J] ^uck4;ZΎE[@] `)>(gnIJL]<P83# y !msw*RTxO *R ԐifCkx Hrf&a^3f帪-xkrJ}4PCS*QqDgoe=4&K!tR.13ԅRBb,FV/:O;N'' {kŶAL3ɮ( $ 't[R PN|q"v@qv84!u6X܂2ZM {>,TZ,V$=xiG_}J J"֑.2e']57л[ F s6GmөhIU6,)w»C^ޡWb ۞[Og8"JW$3wc2)N/ ½ :%o"[EYiP%RԎgem:oW2nYq`R(ajm EƊ-+pE_=K^#.E7pa$gU@wm`b}2l4 F'g[4  uq) G2L-pUP"+$ɻHo y{׃EtB[Fu:S%kHT[Yyj:S(sP7AN\:( Zs0=>WSjoTjLV1 ,uRJ6K_ߑJI]sw}L+; g-( ZWMCUZ\!~˗wx!aݻQaNlj:sKy̠DyuPAGp憋.W"1 gNZ%iD"=T Tq'KM/x$v@.g\@ Ks_Wj߻ٚb lZ/< zW7]ˬ:G6jV(Ob i4 h}*PT]rs 4m1Dl)qj&%=sUa]6Zv޾B)s l`xZeYNDVHcXh"')s S{H͋[Lb/s !brqVPwt1z-.nVX>&5}Yװr4b@'1p@AkCJcgpIkmb5'ŮWtDŽ͑MF`h QY=m+Pȋ.3D8 GG~8SύHnڤFq͋'Qw? W:f;/`%Qb-w*4XKy;OBӘP%劕wO씆m)Ք(wì!ușm-iHSm$%$? =rthdL15.6>pեüP6csCfp>x:γ]@/RMLQB FDS~_<Ԙ}ӍCN7y2+z7տ8H:&l!pl8Ba3K# _:&7N37I"F0 joxH <-״xB2l_ &u iQLIE&!q4PB6ʜ 'l}u)Py-M emÏ(#vpdEN2۞ه9I/o0y#g9⾝/0>C;֋ݠ*VUU$)#$r; }":2AZ߁lK+|xa?g+֞uKhk\`t7돟esn]הoN*Ql `zʊ6_,TI3\%tQG*(9k㛺ElZjfZ/vS6W4~{B! tD Ǘ.A+U$!~woUϠ`ԭoT &|6Zh## O_SbwRu692\S2ӅQ܏87'cp!? s^~}_ \`Κ)~W^ݧr5%+j(BKn(F@49kΏbyTٗROaPQ@HDt cU+^RDH2tMabg+S; P c!u@މz5AcGDIpDžYA" # md.~=TM=~JhǪ=2[NFo3 4}֕~_.Ӛْ6uꝒ߇Kc@>~'Egθݒnb ` ;@ UU$#qaP8_8lIdtc<9qq@T3Z7N= [w]lX Y}-7FT0<,V9IM#5//P S6^'ovL@\[K+u|0M!y!󭰞/cFc›F&)=R){/7UzGq%~r?wzl:_M~@Rk"Jg>I9#~fnO8fM/N_&̨b*OQA\J0Pb1`vkW݊/^Bk|üTWPX|f]dzןkF~'DOॴ<m)n#3Di9<KN~dпunlWX:|)&0Ԅix^j{Z<)څVL4".qz;; K8,(x XSe4ꙿPS> ά ynv5hx6sȣvD\ݸPΥA"GXY >hNh洇!6ޛjyX|ٽS Ӂ부%Oړ&5vI,)ơ>R@W'ob ;%!ߢ9(ʥl牌j'm`M \`Xf4װ͹߆!_vI_S`F* :jFg<Nes?qE5gW,ch/<7Hj;tG|%y}qmTZj][j"/ S%("1S:ľ1FxZi ۹Tÿ$s뿞=CP9@$S<[UgL{3.nsmqU\GAAaCgZ%&£E58o:6?O[+eέ n ٕowӁ }y'Y ]үSd9mv(s,_DA!V)NE蛤0݇?&Yu/Bn- e&HҔN],mu0^Y~/cp+%<&Lu SY7?:ɵ, M|9&6ݡ6E` `h&P >Zb~`,q˾2!jäΫ ѿB^QCD8zMbVŗ7_xdH^:3):,RMgeWn.7e׍2>27l?IIK-k;ՠǕx\"Y2!7zmc8Hd'\)r]8 p]\ʷ$WiMnGP?feT1pښIA^q ؃ZO鰑;Z~ ?4 %*`X Җj4sZXY&x5Z7N"k>)ֲfB^17KԤv. "e% v.M P 5W+' - u_坙50k:+ho7 KNdO\[S2\j|/hQ>L&+܂PPXڰfs2=$~ȈCuxKB됸e.Н&Hfmj\VwJ.?=%u sn֑3 E&vMU]X{B&_i\n3gCZ͜`V=6+51R" I+\g` IZMb%,阢}.P#Ȱv,Й皃D"kvR_^2 h\WoſGK*F(% qvS?ڌEb)%jI3I蛹tTC©RxI4 *a">wҘL|̰ypk />Қ.:N!]FLt $`F:R[<d?nޒٍ =f* rH{4~}_vn/d$~"6{B00 UEf W>€cv~;zqbT$\Z@WE{yElm2-=^L;;5{=1LR88A[V睖8 !;~.q@lOsti;|EAxTs[.ƾ?S2JV[;ɗ XzD21E3CZl ` Ig!OCo)e;\F)hp ֬+t6nEnd9Br^|&JYƣ>nb7PC&h9!xX dݑSJz?☔z4fMMms8bhmDXp&\茮ێ_ݬmf%4ٺ/RwEH\%]X55M{w%O!GO0?Y~ Y;c4ZMV'NQ|[oFzx>YEwIGt>A֔uߞ+\np ŋ=x7=y?^;8pA"P(=~D݌poI}+,g6bdK^j˗A"[gs9ϦzAٷy%o Zk{Bsr_ĀwlG|* UDY܁f? Q:9t+p_o85ހïUi|dX9HW@OIg>f'WJ$L is)'F}oW'7:#xqͧx p!1l:0|lE+6PgIl1y!G]h 4wمu /gaB!:LLuVr{~vۏmszazA+r7.|]Bn}%Qwm pRcA ޡP7r͍㍴$;${h\|gfYԽ&̨㮢AzxE8e~E<2yk*o/'?8 \0 $9%h[.n#tli~δ{tQL, ՖR=~T0k\4i>:02Q+ r2fdO?IV يr>`&M`Rt#)p E-jMx>W*Sdmܘi{D-aCcD/l0)(fo4T⏧a' ]kQ} =mtF!LZ$ڂ#c:e(ͰɡyG`fYd"Wr)w4JYO͆ `n9J\bbI VT=V̛k+qܖBlqdw@˗`Cx/Ľr;F ߪExQ+[p\[|(iV/^S(3 Uja)ts=v^2\@Ȳ$-WLD3ulCIE.Tڹxl 7 p.\<.)j,PS#'́Ohex<TD} .W]*"{ZmxKFv: Zi2%RTQ?ɯ~7kXqH 2QJdu&w*) t?m&g 0Ld%u .@g!*,2l*[= !dړ Iv9^xeSdU&7]f|%H0ZC{L.J5-8@p}t T$W *UmH7gc1@_ $`T4>-'#=-`A#LZn<'?k`VfەL|Dk<c]K ™FE)xқrk_z0m>NUj6~.dzw-jؘL橃ǩybm#x̠IQte^)UВ ;ijVqL2>9/yH,R`\ BfvPJ%Z+p7N}cVgR ɊyYPMlqj pCC :;q6ڳ g>4]TD@ewnl90:9 #=Ziv0GF>6GO KM6|d.O?l"άiѫ_UTߑ4aWV*m1NMk2e95hc?|;=*G} sj ē$B'!h wu6)WBУe{V FqdbSFb`sjE%I=Gk6Bq~9Cޣ܁ύ. q:dVjLP #E>lY-*@h3|k?$[Yc;qB[cGKŢư*lOyvղGǯJJ_Fqvn,/=`}ڌvx v0 p|o?q;[>7IٕZw!qUk7H> FZl)> O'P] 'y2к*KQoGmjC[+t{bR-z[1hD+, !ybۏO(x0p]{ȵ#XH΃4̂'ߚ'ݠ_#wʊtwF[Uy7<>._9h9C7#8.zxbS`+G^{bN>'ke3`lI٠9CF4eXva3D5ʋ8#m'~wk:i:_} 1cXf #Ɉږ L9Q?dbEy) A)&dp;x.&1J1yN*ݨcF/(2ma0H!~;6}Ro%ʺM[h;]b SU5~:e+}g'2v?5|E}mE)ӤH?󴐢AE ,XzuK#͈&&!:3x,VϫN|<^+fWs3M|w}7@z$1nsv~-җUeW>ZYrp}SWXx9?ٚf}=; ޫV+O||9E]1ESFe>|y̩H|=/} 4dYxW֊"BwZ9R8.:[9SEyTob)#JRi)[8Gvw8x@LPUiSޏ@TMMUvZ~~Ϻj먮C12h Z1Ӡ l 7[Hy2zNjH[O|b//WkqQ-|!+p3cх3vQ)#4@=$n9ϾrRy6/} Niܩo76e?.飼ɶP!K2$K6JG@6dhȵ2e_y 6J?Q^xcRx gBߡ{4/e5MK~<3 ZCzmchCUP#WiEŨ, Ll[Q}^܊JFA-G#ts̍^-|W%g6Ehf RPѵa"MšIR#7Ddui&@%HEɫ3Ѡm謰<8?_nX$l8t` 8 q';y$e`X9x_vɮqWLAI.B[} e(K,2O] &V/:M痢f`1 {vO62OsC] lGyn) @+Q qR;dpNO 1DmqA#|U f(k]@W1(S"sC р-p1'R384 csm @i%V,K@lt?hqO#]:I1?I-łem?jAA>jW3&`l^,7ɫǜ2voX;$E4l'IFg^l<#32aJV :g~Rbh% f,Q\Sxe1CSH1_bN |Y&ԙ0KgoEySxbD M4q-QbєHRFe`rNr H'ᙘ50ns%oko5WlV1LjGDt"xRrGtŀT$ԍ0wB)"{!>91L Ԍ.}-T|]Ol)l"s8SbYt;&hCavȴ{WBJhʱLLS/Yev5S͖~:Ąز#hkΑKiA%c_ѴdMaBjO0MX `?yb!l?nMEniFbd'#Ϭ\ᓾPӄ9]n,P;Y5]#G,c쑛/D.AL`T$6n BᴶZS9ՉJ|n&HƝ҄AS:{Xy:杆E-6 #Z#ˁNbXF=Gݛ_UAAZjvy8M!;h0ƟO;JdaQ/TX6 wEZԋTFAؐ/6m" ĜH9Fg!fۿ Qq|nVtLGW"*V4b"ކ4~z6y0X1QqUZ'2H "an~db$0צrӿntިz}[FX N~2}n6es 9hKL}XӸ- mq½p,y~ t 4*_^bž2H^z)j5bT@o*iڒ йqխ EqW,0E{_Ōܣ~wRԱ!Y5&Cb_f)R0k`ڋYl|`0#&(P\5`n=J4g*pǵ٘DGײ1؄blm}^ʫ~ ಬ'^VV7B|0ta 5h' c9)iGf{`3d ׻Kxf`=[znT &Mi~'ǍsDWO.4PtXN#7<_ POO$(5u΃=9e>4tJ2VaPrSg$a: K]y ;i6,_ҎbFC0 h_*t l43֩LG08iē ۛc{vι$c8.K9v2ۗwqS:)hArsE0W˼gm~"9GZ|NkY.Pe!EDM , jrS'I^kNq者ah+:MGx˩F/NVuD4}R2@D.xoc;6@ zDIxٶI@߼\;`)pܖ?9ƿ Kuz߉d=@3xRVَdAnLtIZ@ &밾DӫcdxGǥnzci^f\r\gbf?y]o2("l>vv}L;e'[j]( <՗d=nr2 p0&\%|fo)Gۦf_"[\M)zJjFEjpU8E8F6oʨ PiYdvRDH{'},N{R ]a4\7l o.hau'pk  ͤ, G kb2-,b5p&33(ijȰ~pl8/?OF.F|m0 L)eLZB9R|6օAr>/|]& 3_KQgPP. )k)oX&i>iD`9mOݨcag( yn7E[ʋ@A/-mrndanV-@sj2`Kڴ#.jG,,Pkq,Q΁x ۗzD3u{5KhΪ8 %g{D8O` J((w4&Hc2z uԿA3-ј %ae*8LhFSOca"O ]I赵/\ɏ9YL>6WbtchE] ]DoA{")8pqHv8;O}-(N+]r 8UÈņqG%)COB4(ns7fHSq`1ܗ`))}1;DgG&H|>OӜSרU_-cn)"cpĚ>B- UP!nLMNsX1N 8l:S743)zͽ,B,(v[CHB 1!G,.:0Й+3K4pR7m&sIڗdX1 hK3 .D Vnj,BTYSw8Q^Ux)5uwˆ_}(;zx;iw'1YGaR1Lٳ7=s+QxЀ_MS* f?O,YT Qm?~ԮlkZ 0f?9ᶙ QN/탃1߂>Y#\bac 3]e#-)!!ZvwgĔwO=5W*vK"Eef>oW4-Κf܋pZD)[t^T,<_Ľ?@N#QlZ`@ ϻx솂 h\kYͺ<)s Wջi$jgU15I_4ӳ \±REP Y} ᪾`^~ ~9_"rKuW_A~eRUz~5dќTaNWǞb#$UI]uc6I- f-~Y&EgK4kb He+}qTLDu)JY}TTwb$lq ѭ%жhZ_ޞ0ީ..N?+G&~>:ueuDJr,}5 ]6Nk*l:ݬF*:;O+%'izKzQsݽR}mI~g'WBɵS3德o?߅5*jF9!ԑX$KiZ&6zSY/6:8< \b2"0X_;!Y+dܫZZ+:HEXXyJ1-r61MRSVM}I V|^ {8Ax|N!/<8F꟎MUjXzX-AݴkZy_EM59 oSa_6EKbvq4 aQ h6DlnVbJ,Yp7hhddzG9ΉUhelK &أBu+r11z8ّ\b, YȯXjwRCg @o7E߰$3$2zE.^w`԰j*9Rr}`_]ᶸ ]mÛ9ƽcIs_t}F䮴;e_g%unruxqٞ "v{q 9W]>iԼliĹwaPق#!PXGäCI*;,U5yji4}`y NCgJ)L0h/shOuW+ܧi 66[1qf% gtV'hyh8BօY- R 1Mт<"mw[xpn6ls453Ɣ(p]lSR: aُUࡱ1:~~*J 蠉|{LRʢve*%h aX]ɕ_ T*ˈ#쌛~[&5E\OrQ̖'8pr.j{t{tY,onDž@VH8bAIBAZRF <*u}`oͯǯqa:t?ξg_b8s\u2,!Sڷ8u2@FJtfw_Ei:?^6Rp0Aob q؅m1>_pT{Cd4w"j8;Ate-)l[jqp,'` ڞ.9ªv6 4! 3)c(0Lk.,+'u5\aLj)^ Y% v `}²Cx'B) DB?2 uG,3TWWt+j:Fzɔb$5/430>vWA|riR8>7AG]I)E|v |\hJ%[hDeduFTێD:LvGqKP JVPR.ϾkidY},jڿp1!b.1BRx 5/ېhnQs #WXM6&(p0b'^7$ECrЀ|Z^OrdDAcvJAߐ+=KL#Ofp!#D%1# ֲ.F*uݱF}w)UBhWh742W .Uғa WFOo }fp m~0rnr6 G|R&{54(I]`Իw2B@[?WHI͸ۖH6LO5kYR~"KtSXwe'ɨz71a&{S +/Xs|/VgiJquHy|&xUF3Pt]>ajX/A=&c&Dz  ,F/!%Z&)h/#·#NXSEz.zdZ L)$nl}O7"rhK@_pvw/anev]FZfLhQuο u2{ʬBK6[i`]q y^۟4p<1J{=i<)Q7 :Z4 ` nB\[ZHpr)eJ\BO*ӭfM2iM'c:ʕ1c- ˚\WӼ.TkkPr[qiJKG,$Fn_pM֒!j6b-: \Qz[\v|x,k[~[f4MoO#XҘT*bkszz?80F=- xLk.&u?>#(?:M…E<#; ŀs1:'g׌ǭl'g:0#,-phDbW/ě`l^W$.-ȻC XY~cnƓ%YtMk5CR^Clk;CXIϷly.eJRD"fQrʑ]=m!v8e0Z%cfinecmKnQ8T"OXW ŏ\'>K9\6H'9K mxM>2{bgW*9gME_ꁙH0mٍt%z\^sɟ b,ރ(NO$B۰+` TR/*0Y+&0~ﰱ!+͊41 _ ;{Q@3͹_ݒW*B}%4־ 5> dDJ\0sZ;EF̹D\/-h3Q4g1yf:xulӜ9xv(QOJ$a5tJ¸}%qjHs6 |NGa`Cl:"^^"$}ey ǧK@l xj 𡕞yA*wT1d'-E$ 05bi7-euȝ 'B* C3~*1C h;$Ŷ"PhN.TcO&uTLQ<#SlƯ@ⱔ!65qlAVx$:`m,x JުG΃z(.x*~+GS @A!]w_I&;{7n6B;So*F~'T>Y: b{WLP%zy(w9DspA$%-]\;_3PoZ;:M:aGbbl!SԆF0ܣ7w:ݥTnهŽmsX]h |5Gqf_NZH2ϗIDC~xVҌ/>Lz]5O~ks% } MRIK`GDh}ʡ*zN,d) w#2\!tBWEhof pn2=bn:jBz.ز{?D!>!Ŝ|ǜ&葻:?DۓxIG0)ҭj WHLKI>x8 :[ѽ? >Og/+Q7 ]][sef+C\0f['ߜk*ύ݈\\RLR63hB65}Vr`;>AlgČras8)u#Won@R.ʦw-i-KP(D:j {FB]g,} AXVZ&ʓn5';欖+ԋ.-Ȉ&:O9ͽSݜVԌd5.uN￳V=|`pг`NLL]`ϚodFUaVgH |fwըtENxF~YE:1tri=*POfTT8a` ;?<9Rw>Tn$Nw5[pOv;q'Fpk繺j2dR`N$2|\Ct"}*k[a"(Bu/23lL>A%ڙ aM <#{XF;-+qIkm )&SaV#f ZMPҋf]R]qIܤ: |8_UfhkabQPPKPP*s-gLYs+ q tuUy葋iX%}|ݍʆg1ql9>ۨ&]$O2\We{fy.Ps7Hex_r>MQd;^P˙tG 3wJJkKE=̯!mZfM:A}|(hw;~v7!8LWW: k$ug/irthեaW݊7HtlC SLC1&YD9`F8^&BSnƀ-(aycB܌|~֥IDxFTjQ-5n;$nge4"ʒ1p՟QFN} k$o^k};\ܪzdk (pԌ-C2fdr7q!dQ4eJ:^z'jغb m@:ӠDYՇf+6cտV^+6;~ J\ ӭ"d#m,0L il[hi%{x@X֭?d!fbf׷QJ.+"tCeA-O?XT{^s|]4&WVB `َ WKVF,TUJc;)9Bu8TOV-Kڎ+C e1Ss)rE60DLS5]LƳ "#ovav6U8?s i.{# s*=\24(Xu#+}$[[2DwOM84Ho%Wo~Tm][/ə=4K26CP5 &XC2ɒ=$wH*[HY lPunwEu;ē3€G|t kR˵Ӓm_vJHY$r;}oɹ"GbDFntnXl޲y蛃@5`LK 9zN4HEX;Ps!DC[(Pշ_?&휔~a@3{ =[xyxέ;< .NtX`QAD;hׯ#H.?d9d+0 ƛnl2Ndۅ&Qo '$͜%:krFp NQՁ[.2uaYjlF sVrCQL5ypFRһ 3z&-Yf 99]}ҤP YBx'wxW:9BOJ!b=6e8bWpy ]1VavLMWGy ٬y ͱHt؞@1Q"5ZUq?bh@V'c]twЙ3nd'&DĹ,}'Jd KoXA8q?AEa7sYʖ,iLĦ (bIDInXP+`id+7Spc"D PmeWÝvl*=L)t=HhsH{ @7bOꪋ lvе̻o@ =p"dOD4W1Nއ@n~T%UVN7k6j)-]MVQDRv~0`hhKm2̦ !44xYO["ApM yoIdC.~ jGvb֦Ňx_Zvlr 1[eA,]vnk~zbf͵̂sY[J/fݬ^\!% ˒Q5b:E5K>AAb?sTU(5p#3Qo?v:v)qc/z/R+!bؑha 5C"'C*1 vIVe6¶;!Qp`Foeǩc^IiIv|b3.P7 :Lg_JĂW.\Q[{-v &Bk ,S]35'nqAQU^)T {)_փxx,;A>|MeF֗ nGYҀ,˰nSz8l7}҄ w :oi3OWMv: T{ooRO"#t,cӊ^bTb=ų*t^4CiAU0ck#<5q犔1z.mp\(+ IƦhӚ{ɜbGOf/p!n5 tw6w)i +I K9о}dY5 yU,l bA%SA=o&^o2|l'&m9*5ȦJ=">@{e37i9y;؁h<>=,PUYĖexOE4`]B񴥞{!NX rg mdC)>c ߂qB-~]toYϨ:.yCtM9GiHۛcޓ"[!n#x9asX3[ZFJcûB!Bk (dٴLQm /Ch4pflؤm-Z0 DXH6rv=B*Y~sDH$ ;N1Ďkq#%I1uބ"g[T (v.c?؝^d(Rҏ'A&NEԲIa>|o!:\2&hX5UK<"Zg61摎Vf`(FV$hC20MohBF]jU\,f=Ut؀SڂAȜRجVG|TٻڼT$)񤉅HiM$i 9fqgWSM!z\G%3+ڪ2ߞJK(N 5sV@ov9[u7e򍆑^)4 bPcKM4U c.*,:9O݆C:G$R]LS9cPnPuLdzK|S"+~,YcřX+"d0Q<-{ck cy̹$ LzWPXt:I<1\\gG'ؙ z>7ˬ5XehnB Kk .땑G` A693=lX^%"لN@%%}gDg']H)Jf*h{V1_j3][ ֝v- V$s񂐰$|-\/(u.C%,>AXcEqryT`c<2a^hacwGKND*MG??荹K$Ԕ+ Œ}!\"m;C.O _e3S~ rrSΰЄ0+v?]Vժ\IU–4?zĩaPqvL~xwbD`egCfMJϗ!o(fX[Glv[g`ylsW[>α0yHfPXn-Lncx":>^WfM,88X^KM\.<0\>Lǀh |)kҴ#`1@/C?m{(tRU;t]f|Gq*_V:- LX>Z4PϖKLZ&ne`^qAP;_m+.dV~4]S KSpۨ< 5ʥvDӈ9fޅNM 7Ԁ _.Lj&mLl+sH ɉy4)= Gg&;=45/V,u΀ C, ̻h@Py]J}U_fY H] gH3+/^^< ]'ĭ4(5*FuŰ' e,e}clVz֢E!Ugh=gp[+N%|.E1 jR2]3BV^g~N6  H2}LQ&n'SٱMS 1 @~vf$XgF:` L$ٮTyNA=oa7LK)PAr=n+tU&-H=HcnJ b9gN*K}2|Rqb.[}j}lj~YU9Yҍ(Aznܝ>&3}dn4+s/EWƱA|uYc(Fj$<WҡFxg23OIno^LByJΕ`m w^Nr I\Vkʑ="}xѹ]-E(-0`Fi0 *SH^;/p~3~"x7Y>Vq% t{f>>Xˮ-B3w?{Yk(ߴ}j}l#ђ:&#ּ)yq_03M/B:ύG)&4լ(4mgjO5e2kaQZ.[LXSmc^6]䊴یR|sK"N:e'e:㾹a.l%@PhBk_wf{@(1 ^Ffgoցab n/(nC'dbG®Gfj vA«}uqJC0”CbpǁVZCg לuU^a9Gq$obI?#z|vņ}~%]!oP?z?E GIzfEDNP q#ws3}IolV嶑t. }괘\']p?!BSo$dv.pT-nQGn_g![`]HA-zы(wgiXrT#l["$WO5+[bbEhKYblxY(0п4: [b }tRǂcq1 :>.zJRLd;*-hSU2!oҠM!w6ϣs/ u' Иɘ*R۱1(GL oc(.S\o' ߑ8}skq2vꔏm!h|duRRb1:TsyJߊn.0zLƸ:PVv!N~Bu^ `c7 ˚qݥ}krTAo4ЃBo;2I Qg]e #!dtԅ[.Wlϱ bW4hlKJ1vXtJ^Wٲ*>1%1f~z^Glb8vɩlt(@;>KCס /:/ɦEH٠hjbnRwe~'7끦}vBϲi}DAS5&:q<@ar:+JEhȈ[5(9= JX_m/́<[JBG9Bf눡}X%Gݙt,Ir/q%w2eQ)uI kR)ڥ146^$B1d蓒a'3;D>堁$) q\aʓ/Q*G7~}Z .r-((iD'ϯ%2|3B2| Xl="kkc"#R)];Z3kN_!gHlW&4#9%/1*!~Ҳ 5*pu"x+u:*@3+;u"hSBl6\zSeyoEtak}պܛbTWtAJmjhgYŻ"õ=dT N*5Cf\UL_s9/9G~C/bRqXEɅ\LHT,vƗύ' GtMm=7?(oAawA@NC pDg BhPFꂖRPc_Ʈ(Ya&[gbXz.¶NiȡWlt~Eeo 9iP頦@8T7?cOtPTdn‡@d/AD{==ϋÏ1P r :O?Ɯ#LvǕΦBn.=G Zyv2G/B Ib7wi$_$>ロ<%7|$K 1!NX_X6s>9-xР`,uϐ6Dl$re# .@kK  OFt~*s7d21: 4[+oIٟ$N̎;̍UJvEHHsˇG(3IEFnC/.,vzHTcÝ./nrouUJ.nz%-Pf9pP]~'gW:> >0ܙ]ٯZw77r.wv$ ^J_4a}mQe=N;9FIc,yƳ1Njn1Ȁ4ܯh(Ði)] |#jPmIZh>. :T0&xX'b2nWn.D/OT0{ olbwnAU,HDÖ!Dtx9̳+)j D!N <]\)v+$ҍ\ 3y[hABLIsZR4w\ߪgib3z?0j;y~ ?V N#v(=n 't~S;}}}1u; >lYf7iuNOmjL]UtrH RKo2}쨘Eu:C~~fןơ @oHFIE?PJY^h(:Bhcue_7O1%% r03a!y>5A&Ԅ!0VOP Bmܻ%1b*Bps6i;#Vgy;јJ;Y5Y&1߻#K#pjmsk;|=kR2c >$4ӹ^7Ăs\qibz0(e giSobk`,6W*8R'SznkceֻF"`^h_"d'78ՙ# (z>੢eqRaN #IVE4⵫K(x}4 vʄ>K_LI~WOEs6$hsR ͶLvs 0qMN˰1ERUdQs_ߌ.נWa){@bԙ8blrxG6'9~ m"6}E ~{ߔՃ;0>.Tǹ$۫ Hke.'ʄS]'tE Fb#v0r- *@: zZ9r 8AحAu_+֕I獅$+njh$grYiu`ʞHecpWpƝJsY`M+~4C2}Kj۝NDhZ fx_Q$'oM/gҾ-:w&~.I0ge6ҞVvz% QvH-n3dZm?[ӎXta 8*b'(Qf2+J$άV:K3ɳ_ϗl!qGlhSBγzH;fXNDK5mOr o|((6mߓא.VfYvE r6*fCeL[ryxėW>,0%Ek?E(NeT30TaZ 9FĦ0oC|UpsoܙFY =[F }+=eZ!HU0[m@u(5V]ԃ2㖷`b ?-6`G54 TmSԫi׹i"@HXē}ʜjC8G/xCm5d*Cԥ6蝾"Vq;IbeQ8z%-@S44r}a;vY29[-0˽4sX| uKU7X)ȿp^>59 V4 иi{7\4F6{Gj} O)pKŗn 6Dri; 5˭N0JKsZr=7׹6k$1 b^B:oBd35ԉ#q? zT Xfbr%gh)rbcx&D8VX*rHo ?K 1 |XE/h{X 6t0w4Ag<ȨAhQvb?V]~VUH{x5}'s} a]$͛hm{TE.K=rLOM\u6zA,S'nĆ/iZ$/ߨ exJFQ%ˑZ`=Y{]V4D~a樈6x+,#IWJ, WE^s D =p1p 4vY\8y6*([-"*9'ƽ':k-xM+L RA)đboD<X&+}Lt#T\A?X)(Ȥ"q 9J ft|{FK` J|^+Y+2-.X3 ޖ“<a_}o?n!ËD%!޹LJR!*ڿb'fkqa>CHvʅ `^q2j|yc0JF%ah#jOl y;lG^JlNoZnBY>O~G8"Dݿ#_j=;aC=wyAO1]!J>m˱MojY>£R<ı{ԡd+Co6NHΞ5ۊI-{(R䢎^  䥐~a|u u.-^7&9)넑ͳMQ+>+q[t?/B #[t/Dvr%3C}:NUbocˢ' %Fܧx\htbH+C-V\](BD PBq{ȶ=jߋv{85KEs0J7)vyb.$jLFқދZeF%&ƊX|jU: >]S@ ɗPv oMReL]!埴Z3Ϲ#mJFws`' U8Ǐ˞ )ng1d;SnLKIfV< s ׻'GlMtfl-{y62Ybkh/:{)v´Dp,vK67y6p9dthX1zH&+jKH_qZU x+!L-lwFy88GF>rAs&5'j &Tŋ/]t ʥd%:lvEB>55bQ{f> RmJ0yGsz..|~,07xea!֥OWLSQU)}=7N%ЯI?̒NE)ŰC5G:r7$cGPH 8mf]?`=V+ܞƋx9Ӑd$_%,X&9K{>!{ q:/i:k8ж2GֺevU5l^f K5TN0rrOolKhhy)N%Y1J)o'0W?3;KXBݸgYa3r`Ф{ZWwJ, c ^(dC]#m+ȢOW}صD26LUڬ}^Df ր>i}@,P1`wۆMQThu>[} ,.nG"jzU[6XSDy>K1;upU4IEG5) Û.y'qC 1%&O 4I"BЇ eM9WOBIh@|-~v0ٮ92e={#0ߺߒg0k틋ãNm:9s鼃.Sn.[4|]6~uJRuaF,/}cDa/( ]\ep/%^5ק,zB6UHA(>H %y IQ]#mi!fBv) ${Y*qAE_a4J4ЯM;st+K ϱgO $|m-Ah|ޣmy KQegD"Z&zoHt lN#{fG˅wĨpj$m+iD@ot gGӇLE.\hXK@sXG¤\eɪ!PϘ_բaCu3YkVԥRy9UYrݖ#X_-<^]5&)8vmpF46?BLMb=')TBj;%7U+:z l3 ȬGm)B]wo1dCaOeT  5嶩+ ZE_2$&sUz~4;Fy^Wy.,sWLNɥVaB1@$Idg0ۭ.$YS MZR]qv(ѯX!)8&3)vf~+.d`)) .]dlrە= @%#{n,3($*kzނz|ګ>2}SK3(W8 ͤ!uV7hխq#6b^і5{/oh3bȐJ{6V fkRT^tא0}ߊcpWh(^no".iv]U9q_\]A%nmNz)p,sFZ$rr_LJ ?B#͞%P"qI#W5RG(V1}x24\~a!VaCIcg =U73%Բi^IJƾ4 0Q>Ed|/q%3/Z̵/MvR>b }Acn;0XC6퉉f@$R~֣ ߪ}5lXqy$ Mt+KJ82o5?ձ5FkVcX`peʗx)խ<@V$!d)O') ~AJO5JhEVU1ebDسmgGns4cJl6iI:E̖pd@Ii-|΃d/>ky48q19).Gʧ#\SK0%d?4h5}_kRF["@:p;Hf%S9ƀ J@!i5g#:e0?FdZ%b֦4IoEzX[KTOS*M b"p@o? ?As,4*- (2M6?lړԾKd1dlL6ӥaPL7IS-@:lg2FiZV ELC2TO1Eݛom٦T&-)YkSڕ԰Ϧܫ;U46sE95Z6CTudz |&,/}}f{Wm[pDZ'{`.EUY}$b@Ctˡ'TږI6,wPq)ksI.ݺh:| "~ug7iHά)voxVe,g"%*-P0nl ,09P9D7b=H38V&tsQHvzҰ C^E~Hc^BpttA6ޝGMU W؂ [Lj 7*L 3k%x7Nת6ڴ h,\V5_`=8OD;SZOw{Tڹp5! EZ>dGweMAd|\%G1,oxE´xd Η^tpzs*m 63SL?Rw5{ܷcVlc\ o@XtyFb|`uC>\]P&4(\(Gu[.CswvgMqnesQ2ϼ,hǼg|Q{€_U\𽭫:-K_mחi"e8,OIQ;RXzp"M&>βC<ᔷz(|Aa$zec&>ϩɽFyQ@%a 9[]֓*@v}gu=2\ c5& RH'e¬U7ĭ~6 Usx<+y>[@ĢxK|Ŵk ɋ2muVARG4iT] Fv|?^A.\3 6X #g -ą\zsXCW{8uu(!'$P1) , pu (23ݚ+ b Y[QȻy%dJƵ!2RX^/n? sg.TK ܇ykRkF_A07UqW_; I)5U,S̙zWkH'%/l0AlO1iV#;CEv `|/k5o@F4|c#vqqZZN%~B:ڲ0~l蹏|Jȳ?QCԙ}r 3;Ha[aFh;\Q*h S5x1*]d 4፴*['8W2g$8۰.̠K|LKW U(YN6b#inܖg8./RΫhpo+Yu-P;.+ԠPE)Q\ԗ)qISQ=.vSUOF9Їی1c֛+DΥ| Qϥm$ăSٜ Jr+UظAPgޘ{Fv%T3% (Mޑ;ڼ==`0Vx'!Ur̗sh5|7$&{:ACQ 8IO‹S9`ǁϐcʼn s,[]LCOo9 ^и)t?Wڞ#xz·~0'ByA'w_h=;(wRI{zX̩V<יY7WYm Hwũ!/oe\l[O#TÖC,81\qń✏_̈|dJxRTtJxr'QD$ x5qzh(!"7 .+W1^2pnV 5".C{= 18x%, O*2=D698w[fo&ѭ?!F  NW~ɨ YmYhwX`[511o&UCixvxRS Zo PӟcUʕ8.0|UKWU^td]N?ys$٥JѺdQ1O"`aS]č!%hC.CJ {P|+} !}b4RWђBp}s_;̙M"+kh5Y>Oy0pf]w).);6)w.705^ow-HP>[[P?rL Bpp`𷳊k, E놅v9 =u_}h\Ze Mb_ˍs //m[%]uM(ɯG>}5|ޝ+ؾjP3uGʕ.P1xy{AB}pbObEGP)XA/m;0 vqTtr<- qZ`P}Q8©l.{4AicaՂTp㩁XɋX۹ 16MG7S(Sحwg؉K0#Zi {5a6K@y4-Qud.(6 :3b?㿕>L|<^w/EY2Y$L WCN5,C"\Xz8zաI!$&EބA1gAP5^L|ak^؇`Κ[LÂ>M=&Nm\vdS1#VQ?Ob' }B&~ `V|Sr>8ņ<{n}A U1ȥnFEi75i@L/^*J.^PW'2]!uA{8cǒP+[H|gD9%YmjWD N3oyR]ӇpC?[z.uc$!f݀sG? N 8M>!u`@ѧqoeO/r {gO$DPgҿ_壾t;J1_SF,8>}SϥL3t>DՃ:z֍mm|IHex~INL[mūkزm'#l0c* fPd%Zddo[wwrCN%ڒHPTn'Teem-lpфfw|u!bPYa2 ! eU_Fx@Q[ vOo-73iZ:n$ƨ {okt'׬.#$CimAdkeZ}f^.nqS;(-eyLDzY$tb`atK+t.$M˷J+qpEz!GG1<{}c툐#_#/y[2vI)B䛔76~v[QTU`L={;2jԍ)?*7Bg}}*R ?W;YG/b)vvH$R.fVIÍX!f?pA祔I%' -3_1k 3ª0. Yh0q4ͮ4>h[Ԑl |z ;c[m1>* UMI4ny6f%j8AETr8}*9.MZTUR@!b~/ elxˣ.64)(Z׺\MwL#as詵8޷$ƚNI#1tu6f.:[OK:73'1awՋÑF:B{OP^$bSVf>7hJً[tek/`4sW:YS}?w'K@#p.kӆ&ĦcVz>B,Sog܏0mߓvRu^8:7bܣߺl5 a:˱8sIuTb? X^yR{1X41$Z1[vN/"`\ܷˬ>A,}(M3BY©d:wWQD!_m4 VC:x"&Ĥ#3'憙|8iD j e(L(-e1 ': (agGԚHe DΦk&!V g=_;%-UUXbzr)~>n[G?8VpʋADʑo<`)ԏYa6(¶2)G}Y RtLy* MVUOep^wVmFՀ3:H~suU=}Y4^5A#+xpBeZ_=,08u a f5v{[p/vbֺy?CrrUgmd!sRn[a^`l1ZboDwed}Q!-pzlA! S›~߱:y>5Q x8Z]_sڈYT&;_dĩZ;E3#2̃?1"dƔCR1 Ң0c>]x EH ZL\Zǒ)Z%qC}YeeЕ骥yk(1Ğz2B'*TuAhT7 Ns{lӞ"}O7B %uz>L6fxN_J,MF[V"Z9+cݎM2J (RZaB#V$ 9FP[b(N[80&O݈svիVd #v>|)ѱ2~Y#}~ {I Gᴉ,:8(?4ɵ[{sKԣvGE&a1ApL Rl]j鎼dp l՚t`HCչҾ.:Jn ~7_N=C8/F3\6-SS 2:M&ϼRΫ?}{&QϿ{ c''ɑ ZBȇ7ϒn ގ爇 K[l"gC=npFѝy?SvXX*Otޯ쫌DNs!9ր;qV}:Qz:ʫ[yZ2uK7 MF?N: VGEX&S:ʢoǿAG+N(xe)~n3g*1$3%kx1|"b:fPa<p#a&>@?kAT+?HUzҿTvyǢrv5% !fS\ַ!́=+< ,/S.lf͚d J<hIDδ>:XIOh𼞹~Կ&&\ԕNQT&SVFKXMZwX]T1.7Z}z΁lpT/7 pho}b<_`2M\ jWkWqxc 8,t3ܰǖ _ȝIc>;Qw/.Q{$#i@g]֬jk A](Qtٕ)F] 8ƥI[ɩRB(U@r{B{qu}j1\Ӈz790NV† _VZ,P!Qe4[7q=>T>lƩK6GqX@{.TW>װ*R1W{rdI$֢LFRD oQGYQo#d4d{40 bPD wEϡ3iZ{hG:(ܭ+lljLI/dp )ihI<%k`w_MR #Izk?T̰# ѓ06e5v&}){TиNmKn&SP 4(>` vPgRI|C8]Vw~,n?ZT ojcK7!iLWoε!vX]G3vn0KW_PU9vZѸ#N$./k%xcS?zt?ϴ|y!Z}Sxn\ :-xSD \;p8H (ӊV|3Qah9!,^tzL>"DV~ X (4&2c&Zw%vz+Yga})|Me-g-2x.(䃌k&E.|.)#5D *!r=׈yh:!ח* VxbqbJ@#X /ς$4p{ΡH臻U1N~[{f| %%q&2qd $bSJ&!aZGmG`Ύ`ȻS_fs2EΧDFp 1u`.BYM0U nG8.Á%%8-KKMc]]tkiN7gjS#9=SI}*h&y{U> \%bF6N׮SRN]׷Gƫ^}Sׇ@Mڹ)"z1{eNAtX@Ɋ}EWb>{2i [6JRC㌦]s>ߕ m CbAY~A9ԧ@n4{ Jtz3M x%Cucg'RO뚘,=wkAl7YQ.ɓCV,DC¿dhcMΕ%׽7Pc&J$^'D_D72}$qܸMK8וrμÎ;CÍ?p<=ti>sM&zrU5_U>Q4aj i g_}6>NUP[2gPA@I f|GyN ϕ(*w-L62댑9wyG_kN XnPqH׬n .M2Ԓ6n[%pqce?+ w!7xJyhpMlOsrS^iK^=c`wP YݭM3fMVb=a 9i;sftER@eTCP6!>q˥nbV06ٖϹ$Aߤ[lQwŹoo>S^unbwe"HLd쒃UCp)qn)`d?eK7 -Kl&B6M6r8z^.p;L.vrCB_+_@|PE11頤K`9/t3 ew @qӧ hxITXQ4ršHcYǠުc2`Y*!4+>7]0k-g 0^wHV"H&`sx|}Jޑ:l)jOgeη|*M!к#7hu๞lqwqyF +> :)Xn)ѣ@ <6vW#ih"v=]ѡ8e9#Ҧ G!M܈/V6^p fɝ}ǿ^.Ge.K7l[ѳ )a[ZƎ+2p &Ol᫯i, ̐qDg98OI o6|H*K}pF_ ` {<*(^|~=@?I&ą[D~6}pჼ--(PS.iEu﵃w7WɄSW``dS6l?P+|Ȫ6qPeN h)m7Yo)Z`q^V5`? U|34Fq>{} g_xMPL΅7e,v-l8zzEݶN]I+!v_m"]@2;BJbɝ_PU{o $%ݻbz.8fwdCҀ^uWfwrb$VM\! 79aƖ mԚbaBŏhDڳ9oW%vOOZZJgL.~D`N9T%kgG.${ĬSMz)vR g%k" eȼRJaBI]`z]uRԡ6uXaau8<#"iPG#o_amf-@YGZ׆/LũNZ^ U;LHқm^b(U7\ Dwi~&h.ɌWJ!նh23G-KޝL&{fN[6TY9+j)0=@wdK4:n40^zСM.M&|\]+/6?:DgC26_I`ل}অ8DOǹ#^* FY(PƝаۀbVדYLcкnp8|Eh8I`3440A E*Ui撽 \24_Nfש [,@͛z`ֿ~zmW4iW#W1(5}D<i0+ԓ e i-_-%87BWQhԘ@ kchoT]Z5qtyf MN.scxA 6a"p5ٗ:)Z>c VuQ^PG ^'V=)f+Q:^Pr3Izv9W2i-i&&0TP%d?m{vRz.&&fj |Џ|I+(bK&.v%qaRWBF8O\^ͳO%3d07J{:`Au % ?!OC de x|&kMA {x>x5>oJW%L5%O1K\EK&p0_FInԓS4zX\8*)I zN2-7Şߦ=SAhVv] I:0 4_ j_9p>̗ a0{W|Ghf+ӑ*H㸄Dv-˄..qYY&As0t@}2Q/ L̜Rhu4! ]ܞLԔ~;;E{Aӏ~ÍwSoZBGv”`E:*at-YIA7V$ݓx>>KΩY`8V:WF4k!'ntwt{BN^C-)eI)0🮍"W -#oCQP1dƮS4(.`M M_S/^'1k H9pz8SZSR3.m_{r{Bo"537; gʀw\sU@P,- OMW`8fa.IO U+^M%ӄ 3>MmIeH"m͚hy}xJS0UsBo#&iK,,p>eAܚQ9/b֌[qjxo' iq1dmC;k%0+e!?LhX\(x֥ܨnq5O6a,;yX H&|gb\!Mf`֩Th%Ib7NCr/h5MBŨ=ԓ.瑠pFIpA\QLYb%@?]ε͆qZ 4p`p3@Oi" N)^!ͣ&8%1GX^A2Gߦo=2׹ObLS?* %'C8҉mv VDbiC fן/Ļ (w A''po;.mֻ6qvY3w̠5ϤKEm.P}s.bH ̡$ِ b!:s ׊o[YR)} r#Ao%5*6JI ur [] X% +4Fc0$q=^v'\?YxݚKl&Lo#}^m'ƘA>me_XNb)`wuy#sM[p2bdN9`B{}<)lfI2y4Mż;=C{`Ⱥ3|L)72eL!lHPLMmH `cèy"tw|PS[OJn$CNq1H [DZR'UN؝O4p+Dj6$H͌"a׺  ._Wyqo͑G֡L';ƙ%bN; ?tV֙:PPz;K.ZJA})kWGy^HۇRuV*74]_2͙3!|ʙr򋖋b/sG ˊ%KRZ9U-I>h Sd܈sGa]sA(kK HPd }WO:QJ/ uMM _7 Z$bG+mgKд ׯ3Bk}{ e %OR-3Uԧ/o1[cBrF*]8D=tpəG4* @A.G*Ϳ!̇3M1ã\CŌm3Q|~=#g'vۼqTԎP2-mȪEؙaJr5Bѫ5We_ ٮU7I>`yÅ&]:rTL`Md(c!2?Mdp ='nk, >&8m/`$H-,~ á۟ΓJ:aUd-Zea>[OX}Yd9)9I)dM j״Hd@jf;KyA/~6'FD,vdd[k6)ӟɑ9d+J[4i߯rHa:,}f%IpEH7}O"fU^L,}$>2r0!V #dbFY0%^`].V%%'XLD~gJ=V%~z32qaU䞻\jrᒑ *iJYj0(vIQ&j>`]Y<-fɁT9ovK'N*>.B +VJ925 —z=Ʀ^h- m&COgzĵީ`ߘ|XilˬG1& }@1|+ 4=F凎%NPe݀ؑ _'X!07V%ФIR.%dߞN,{`zYչ]Cc5霁sHĖ%&p)uo4nSX!,1Ќo+n"c j TV}LFN0,r#p|ޡ+or)xW;_Dv>349SСs4ҳg9D0#;qg1\tʖH6$"s!ii=@: ~"[hZl$bgA5AoT]31ɍ0/Dէb?x0՗Qi8\w')BwzgRVW'eAA&Ii7F_cvǝX0%!?]S=x$j:Ѫ.P~)dP;_q`C_ nY]#%BaB%~^_tWo8tHIupP#|+w*aS_A/|G==vH6\ ݙPF{qI2W6[E8y h[6F\&Ė/֦?zpϙ@/26~ &RA@DV"hDg2AmsF3͕[л &KNv߃UaCiYx*ErzIJT0Yb˴L5{wBB>OrQ)6ISv+z쎖 *{"CKvc?m w%eq*FJ"+SI<k,KBoyx.{M9 1YyuY:h&R#eW3$(3;oH4щ;Sٙcty29'AK4 b獅d +f#+<;"V2v!'v%ԛzy^oW@󸦄Js=˓_ut,Nxd8YoM`Z60a/n6inN;leRbα`k y s'ͼ+;`c&NNtԥ\ vhȽ# `:J/a]#`6Q:Æc1>x![Zì "PHD B}<Ӻ|k;|Es<4׻$4g L-tf(hyCXD$vA\s e9+fqY69—i2Gps_oxW qn*Q4ξ$͝j a69lQWnN",VIƃwKg#P$&\ |AL/~ ,F},9l.ZJf63 K}PI/a;r"yiKND͔^!Uil朩S]mfNWܟڇLvgbt%H됐v,̙˛]0O!cH0ip}U>PsMWzJS ݣU#0VJ&1۴\2r} Lf9h=,(9wYnr/69b].h(+qi $Ho[F)P7q_"H H44ؐk<ڋ>x6qߍ@ES4nu &򐮨M"bd Y`A ʘ{>d)qqMm̀ dY ~\A agB[悎fCF/ e8 ="t0'K֨_H-WIb!@מ ͛FDzn!8̮Az䂷WާXSxڍhU+Px6e!Q6XNqS_ dр㈚)_6_ KmWBPń"WP1I_qV *I笥ΌO>%XI!|ޏ:'HQm-7v3WqiX7Iqͅ;HwC~6o-%nqv*?=-j#+Sv[n', ԁ7V-ȮqFaӐ*n}  #ȟ>أ6#Pkc Th44B+h~=Z\Eu.Zf4goJmn70MQؾ#:)#oxBITRV`j>bÄعp7nIjȞBlQM\;$ j,3M:W&nJP"UnMfєKVʀ3UZZIӍ7f,.qxDP80jztIP|',*U!@@4'V-]ﶗw%\c喭ͷ^g1U-Hj0[t{W /U {ksfKnhsXe`lx`Ɋ ]#!CKV|]B )Lt.#rn;6﵆8x-L1-jF:L"907.נ:3itgڙrc%ee#OnMjרʛxWY' &v(8}Le>ߖ7 jgSaյ%jDpD(n'KFY2!l 孉_6gXGDײGGW҂[~Z7:s' @QT<'^ $H L2W2Y!35'&Đ0o?k1,)K bVe.x?0k;.α-}/)'RQȕ)FHE`C/)Ch!^ȤG&|,r? x*8=n"- [Oc6HbAJa hztFwH Hԕ}2JT.:1\(_o ijW7g)N h 2e|J4W^op_ &2[dv1|v|_J{6nj%0ɺBetjV=|#u'BO36$ ij&R-}(j8O<'(6/qXcY~QF]aYӲ)Uv[ʂcj>Hw֖O=2ah&.eNp8u!嗩I G\rVu2;Hh:0Y_p Ԃ;FY`OyiJ(trxVORҲW:XdXxVsIa T2P$CUPLoz.-2)a ( NQ׎#(?F0Fԉ-:v (9zj&Yr4C,iTEa/nE2ئk8Х># T}.{RaA05Mnze OC՝Z8ZH8d7Յ. 4JbZlNڍ76o6^gxZ8/NHt.Lw^(;Gbsd]m*TX,>)Bn[[p"I zf6 Vi_  q;'7%~t`EŜ"ѯCm. ]+`CE,b4V}d `_kp9~N`ş~΂nCp&[V Kn<~yR#@}Rm,6Y Aqh#9c֬d;ok N`m%'v&Tp<}D7GS~Wbbsu\ ;0S[-Qz@-O<#(x3NZyIJlX0rYV*6E>ɨFMDE-,#<( SazL1.GB|)z%^-9W++ Q{-zC}/? ) lߍδWS&Y`jvz•;7Z\|NUsQehPxN(RJ1, _pwn7NğZ7GXQ' u\6 &˞Y0ksTԠsЩ` poN3~?`7)z؈w_eᥨ/|$0IL뱉>"s:N3OFb!~ԓ/SDԩ|Glwd5 I=tR[pgy>tzjr%(/6@d V\ ~H,C{k;Zy#,~-Rʴ \gLGL26U^B(IF}'hz.{2,g ?27"G,qQ<U\ɍ|%Xkzz ɑR}i{kjs=zsrǺdULdV ,eߍA>S~kbS94ߌVA%X s|ljZmpuugj['1k#[)W8צps#".o4 ƫ,cH+6tP̋.iL' I%ugn[uxc4B64ET|wF>`͎:J9VuzJYSRXA7ZB:}UqYk7E^kg8ԜWRhW˷Jt۲ϐr75tm [a* 4"{/{wn"ݧk#&M |B]IVPR J(,2Hib{/߷$ˬP~^zp3`FOLJ}@t!YATJXBW@|FʧX#׸>b!˟caY}rh$}g)>g;9Fj ʮ۩0z{A {)]" `ơ_bMG_0΃(IPx QVG+3`+;mjLIv\*"-U&abUq^㟹!'xje( İU8LXqn>×vV[.5Nݓ+뢛܅/r`.T o!U?q>f1Q[j-Ma@ MB6RNgqd"TLJ5A'KyH} Dɬp3{g +Iml^;kXz$KI&3Et]%u"iaOכjQ%a\).O"'Yb(Z)K6MD]ux%%[o4⍾BF<"^wJ߳S?]T LrkCrJoCeBlF@6{N 3X#n[? `[޳6H}ЎeZ*3)I|PVw[vo;U$t+ND D=oFp 8M֗@!ۿLzY i{Alf]noq|=YK62vMO7xi?cظ>f+>"7Pv0R>Yj? gzH\[?N{Q+._LdF>|L6@=rȒɵ|7)Zۭ&%|qʳƵ\@ߡg'mc@Gz,];I2FTiťJ&: _[_CzP(,IuGHyc~]aKH{[sϘZ7®Xը' )6 *@CQ-5^Q"/zn߯wY]we},3CkҖHYҮ\,;dX=3XwVZH~E߁ҤS7ʖU'b ,I]rr/b7B-Àd>Y&KJ]Hlq1vʦ(fmM.#=Wp"1J[п _Y2J#(-2J[b# y%z!! < ?֔6xF1FMp̰afkw7.խB븼h ~Ȍ[z0شBLR!㔓fh UZa%JeӨ*ZxzwzO$@q9')/bS_:p*@sp7IG -uz|U5ސs:%]%3 {Cס2ZD m*QM"0ߛ5vLzXf&סLb)-U9HóOEiX,6+?kVLQ%kʦaaqX " M/̥c6wZD*ˌ [N iH=$X;>)T3QO\1>;\39>NT TWDǡRzf+ֲ/gc#v@Q}mRĻ(jE*U('}0aKK{ť{ F6USK\uS7%䙄*[P0R\Κ=*KCB9{! l Y?r l,5\27-0="MwڔB*5a׾%/b/3ٖ]ڪ95e3]WumP2M$Ը-eAWl)"'pV"!'_BBЛ|W+Ic~ ;WIlf ӛ+pb- )pueM0OpvH)hV61n~)ٗnR,l𦿉r76"T1k$!)q"V>MQ2st.Ei>2"v!L2RK tޭpE "@5gtX 7Ւ]yM`W @=,G^,巒QEsV d0 H# N#/)z<_{X5A xks@t$ք+nWЖ<%.}k:MB &:}qzRDX>2,xMMTT^r"6U=FAmt0ᖵb[/XrWolpe}.k#-Ar9&t:pT[*;r+otI&0fRtl W6K-.#ZIQAB^w7EJC6t<Ǫt\h_#sL&+j uq N7` YOիNpb!O{w>Ae$UXϰiW/> S)?d< 6'J:89^|U>e7V=/埗dg_#$|q⡋t]N2nsҬrr)jw][g\ءbV$ߌw/C@&-n*C݈f_dF~EKwRBB&j"O 3]%`r n^z,r^Q//ccPojI"`Nf|<2(}t{E~& 62`ޟ>iG|#IxRUxR #I^#s(ӔTٟ$Mɯ*j TF#~u%w% eT1ègrl~: zIs@TPç`)[gu(.M3~٬F) 6;> 6ĿđUWB ^&'؃cz떬D)0= $zs# ^+)=_$U]V!J TP85F1:b2ՑN(m9jQ 6eoZ%>X6v)x{[ʋz<^hJOubP^k7(cϫIeSXYk{8-w8p0Zkt [$[L>}ǣ(=Tb9%0tH$,7cbB!`Q!4-~>ia||d43,>: ٺV׃)h/ PqMM@R"i rfh{֦`s2LBkJ#:!V`At&GvX;jb_|Ȇhq7=myw|.,B%yySKn-7]i5i~1S5$*3/>PnB;Lh$!AiYq&ge/E)$ o9;-0 |N/}P$]pd<+/,'WpHּ47H_'+A poG3z|+7|eOȪP=ႁLRE[C4mZ2v5M_b75 }yk`VIel;1zJJtz#%$էMl7: {PMY*207{{ozOd}3N䭊WߔZ&čͯWZTɔ\qM,lX zVe31hYb;Qa'PxJnn PϚƯ*DNX݊L܅)fI vH:0ȼkx7MBR}U="+!o$f2S_0C*bqLDpb<07m}YlyûD@U"[WzGu0POcs֫n,~zEC.~f6ylCWy@\v8%+jQ!Qs7!J2,bχaZ#!>g\s[U }`.qDcz3ܛ ZӵN4ݳJ0b^!֢wB[7>yh `ɾR1G c5|ӵ)HHyU ^Ʃ8/s= eb:u-6!_?d~)ٞ(v#w ފy&k-}1s"q\Zl!%^!TvZ ^s٫RYIQu)ЪtXU%OS]z6;PeK7C6:I٨s\nq$]ۀl; d~&DYKGWSOjW?xͷ!tӂe-'fc|hix #B8Hq@XkPJOGyw 2 NGCֿbpV2?@<RpX{H+Ӈl9s۾дM=Zp)ׂr7 O&J(xaH]<<v=S;,eJM(Oe;&7 :wg)fkeU *R)xJ S65;qCVeL!CYZA3&uqTҡ &(H.(k ,հ Hz1nT6uc\0S'`ɷ7/AyR w݇@{-ee!ub9O!Mwl~2.ucۚO3Qs·k[c҉<+cfSkn=qِ={ C?snٰK@H}JÚ1?4v(T%t '6-KdUb]m#xtF"@ c'&G/f,ZQe;84Q$`)CمxlI!TѡPcy4I"=3nSCЖfpmxj|~Ɛ.*Q7ᥜTlOGjDI5 uWiSeJx4 y W eOd)6-YF}d[ę$Pu.-nOz#|D$q0!f\+UH}lԄbԈ/6DN~iМxYA WtbmV;;ݢ s1U@B`~X{^VZ q!~ J6YgOW$@/sK&*7Szf!hVTmM#Y.{V$ )9U_4AȆL9 616h^Zf\dSJҤxVțj< /Ϲ뀘. r-G.\Yd0M+a_Oj߳A>FᾹbUcDɈQ }2)Jqb; <)V2Ώ^)$&(3]kםo' `XI(Jw'|ujZ_M-A% Lqĕ.)m)1 K K; ;Trl%%4v4OqU#[yb2ZZ2PC|%j(>kTBQB㣔w]PSŽi2a@ ZTh%}hFl6!Q7~h5]Azjm%98%RA ČУ#QjVv'^=O _=1V0Em|NI2KG8 RdKcĉ<4ތ(h1!v&&dy5|O*hw3~Ccx.koY-1s7:qyp0fD83h"l>c;< ގۚs^ |pP+q̌Qto%#-iDvy-5kօ~ jO<@6%&G'̬O ;$f:QI)CB֦-n:b}e`d#̩ VqH"6Ang">FYSLBaJ5j?TOinP8Mّ< ŚDQ)Pn _eI<-+Dbf#΄abNVb\ 4W I(Fe|dkޚ)-%81E0awR\P Wſ60We}6_SvcXBx0taz\~H_%3k8hEB*P s"?N hαg:у'aV`hY~-uJ>< Juod-sài{v `Cf7{VPL[dѷgB`x1hb36=#$^?tӅ:wZ{.wcӰO)Q}7Ds[Z7~}EG]v/!`GDBD |}sP ʋC! @?cYYְ͢.*BW+G8t2B,qy@~_䶙z\Bϳ>4%TӹU G4R:^]hRm'V]ۨݯAs-8Uur%WsϱSxdѬrK:V2K4^ y޵JYRBB&o [H{PFՕlG mk61j}GmY3:$ StLc`e`Ј)D ՘F|f0XٹwSʚNaf kΌSF߳N*8|W  YW~~l#Ǹn+]9r&:&ia+W6^Idׅȼ,s>`u¯!"#k2H,e!-*3Cd3]6 b.% %~p#1Mf5O}UFp]abGx&Lh:A16iE>XXO]/9rw7k_7m1Yyg\VcfId+E\hdM=+qȟI,og(=oPF)DJW@%k']QvzsAtaXh^w W,G5lRqOFuMo>l~OOvlTE)"u1]5TÚVi%89XUdN0-*f>|Д丯>iJ`Ϙե;*1I0nF7ec"[LFOD7Xqb/UK{*fHrkM RGNGVuzs?#٭W7ߢwII)lv |a  kG̢͸oݿ QwgKu{ޫnՖnCOPDQLkb[A`%m^ϚxRy,z;A3,;),eth>ӎ?:t"D,5.YNmF_Hk]jYP+_Jt?2]bK]gZ1Uv3c7ͺsi)5@Unf!}Sd[:[Q֬ZKA7<9ۈ-u~*n#II(:.|V`"Yn8U²jBZ@R>S@4RYCCRBMJF{7Ͼ'-8-,/gbAG˾Jc 7xxk;*q7M@;mH*]7d0lʋo5MK^lw[C7Ӌz?W6ؚZ\d'Z냿RIM>9x;:.1 GxD׭  IcJʠ䂄aRs"ػu -r??E|"uPuo']NvȇfDt ]9'sK{yhWGF"o2Ǟb.{O!Q8sQL} ~,6q;#+j&V܃̂mcpʔ*k%X1:7aP_*SY# \@*ŠJS'ɑ O d._4LWtv *0sv:L:0 x{V񹗰ўpnb&q&J1*I0umW^ϩh"&rRq2ZjHJ=t3>nLө$9\VqW#Iy;u%;:UsXkM] ޔWsRFĽ&[WŰdϰLܸI޶jܲxblGp/YXgZ6pԒ.@';I M 1@O׉0W4)oȉVaQ#XHQ^ϝj2>پ3&l9yU(^%Yݵ<᏶o\<"s90{MxBܐ) ݈O */f˖d NCIag$|hTӛw4Qu#dz+ m6(B `w 85: Ț:>P;@ibL\ݕ|Gyl!a'sFsT 48EKLYH1vzJ&)4 f(7sLj*1R/!_DZ|3h^1{Ӟh+Tf 67[a#*){Ȗ [Ԩ)n:#!o  b5 2Jקs~vv7a+$4U금Wdcopitǚz6 C۫b*XA#@]M7B \:4@v" H(_&G7 W9'9G'x{?8mz"$syHKcASGZۺM`D,u|}JCF}B}9 ?pͼ+{ߘ#)[z3a Sir.|@ qn>G5F2Bp}hVgȅEP^M5 38[.H2asPTűA; & \"92 ݑp:[1ԥ8E`SK*OUu<Ua`1j# ^ƙb2 >DSm2ſ#T[VlOؘ:R;kN{ E9T{DhJa @+R.Xha-n +0 KTn;S 4Oׁٰz^`_ SjK̈e:BR=~Kbp&\3--m5)ޓ5XcƖ- kqmkS ;U\ GS2 7!X;b.+1NF$2ͪm%bQ<Ʉ|{QxYr;7TA%ȴI4Wmb N@??Ek6 ܧE͎T7 WKT?:N&F1;%)7L+-tDPzs?!jM><:-4:i햭>:QЈTFS>yꊊC}LaU?P'ad6U Pת;C}VMQuF@:؝0l'/fd ∸/FHܙ'8FzV-a¯'[l K@~M5P mM:H541UsMr4.oVj__X.Rj_9\PUbc>uOuþPpvz/l_BTi8=֒X"Ph1{R6!3[;m4Qf0eZ}Y`Hc=ya+R{-S'}yCJ,jo(x6?et1%(trwnĢGuP cbM&V\ ^(N^a%) /P/wa8@௣hLMIR=9N/?#M]ȃؒvr+ ֺ"Pea=ݳ[˘cW|8vA|woCp hJȁGC[ pX!*̀ ͹܇M"~6abWr24Í_0l@j樃#jBI $ͧ]ѿ %l@L~K +*eŰnn/~ ţcRoïV.|]d+^] da 7^bg?@rzl^F@;Lʎ?y7H}f:ciNN*}]IyZ%Bh-6,Q^Z*ϩ$_#m!'߬O66oL`4@ajžB/5r-RgCV8 -Y+.1Gxw{s\5]O$i۞هbrCI!F8&w|2ђ$ܼ7nۑc67ڟbI$v=h KK 8?4h7 HjZrKiu'[leD?%3cH\%ctrۭ$[8VaPV<{5(53TjQ[j[+ac8 JE| 0iʛ|ES^u0C -s1&E(M)\ܧ?N.n+#˛x  ӴӀ!K Lwg}~h0lNWNϵ\Nqcau}#f0p׷bL4`x >JC+-ꠐAtA}r:Ͷ=)1SPkц톞@1TlsmP<zd+~3ϗ5(nZw+3> Pli_E4Lvio~XRgǸ<:K/PKbg}ᤗUkߪAnh9- 5`hy!E c{X6Y"QZ +ȉÇ'!H ,f5to^' W$bqPl4!3.A5aTcmP+7Yc_9C;?(syqOP ya5}5֍/$uA΍HnMtΠG%]s}ʹwݶ5Jx]/|ԌL@v'+P$*t[c욚1= ڵDy|B4)?7Lj4=w_ʢU@j?U C]- ̾8zSBk4VS^(+r0þ %8p[Zdzv-{*_5Zj[Q)X䩤Ǐ; /L<". ^(VwY9rs;) 2Gq@Bahσ68V.ܛ1%gż?Cc3ndb= sKW ~%OW]8nN}d8ٰVl";I+3v"TW:rD,Y4! TY BcnB؎S;A6.L(G,9|O&ѕG!0SDL!<%f@+A@Qs `ʂ Z:;zaD |ر*5d"dNlo5ֶ}NF!52n>C`x uȥJ㋏f:X9XƠy-]KcrQZ@}h ZV/P R$ylrX \@Fz:KBW'$s,d{?!usK k0?yX= +E^6ˬKUq;d޾YBEf̐]d_m{\kOڽ[4$wD@ da@$-i P&bر3)Qc.8/v\21 c'is-7ͨw>'Zf.ӧY?o%5 Kf4Ukmzܺr1׊w*YEPtZC|dvVno|![ S@Z^X9F t,B7/@~{ɨ[nZ|L Cl"p#0P9,ts?8]hb1h6$W.6K=^EŤKUaº WEKUyZ^-3Gh >[YѥS[*SC-<b-7DfB p8z@mRrsbSW$@آބ5#)k6MFꠈ4u#{j"p ڈu͈ =F( \Υi R\3A=Y@θ =AkG(SG2@9ښo(  } c )~^f dMJkC۰4/EP z#dH5sOpJI$y,)6Vo3di*u9eBka}.VOjf8(*g7&.t&,o~^''xci:5k^r C;IZ8N[71vy8>sVt!ZiI׵yY` xxsǧɏd# (8Q%UE)P𾀳s= snkڮѺ71}1A}PՕ}}+_y4qHu޸VN![ grw`jES 6"tǸwCE -g\9MAjgGb䏑O~9hK$ZCIp{r6W[iZfaFdßc#CM+Go\d@$փ\^H F?\}ZI>!VhZKH_eE:XHCb"%+iv0$o0՛[<1 ڰ!fs+:Zj"3"N`aq(bq4>g>iئqcoRZo{Bɀ5.I*J:}Lݠ[%+JD8=DNvڑΤjQ!ȃ+LMwEsz!}SNP Aɻ^ S)NTy߬-Hو;:ڧx]]M`**ewM37-g;˜|!ᩲF뵄N揟BФWTOwWF$X(@$|B . ļ2E^Z>© 'Q/Sb$q}e܅B>A&1:T` hd폼b6A8. oD$c"ħ,KQGEv+?#yƀEe|M ^h N^qTe yaULBpۣuF¶려LoE@/EX@&J%)wmz8dL]l 7; uY%%X[V10ߨ#.8' qhQ- ,-I0o;z}ss,jeכ1l&5/0 1YTGv1 LO@6:rPW,k"t͘LKW8HйfQG$xRɶT/E_`I”.9KqKՐD4\0wr[ѷr`J&-%lQ ".ٔ.i1IEaz]?e޸fť4yF-69 vJQg-q%g"k8OkPnnp}>IJLπU*=abӃ$.͙5Ux}Q2FfxrjYk*X,tMG%zV|j9(5?_t810։#qިi.zQNZnG>FES,.8Xh\=5Gsvpl>q$Zmv!?4f_I B:/Lu٭;^4}# Z %j0miwqF +[D|e%P"f.nx$>YGҊLv*GWm $9;)Z hj^H%GFXSлnMZg2~˴/Q2ocu rXep:@K/'ZXD|;x<-W-N5/5g}2\ֆ#<%X_$[4P!ApLa>rTyTj|1iNr'AӮbWӖΊ%%~%em4@Ѳc)q*|O8INl~GXwnSL!<"Ҷ8Nd5Df҉y>Yܞјn!U1e?`YG-TL\n1XJ[LO'ct% [&[e]O&$fZ,lj/;AI >G@QM2/=XFQ(;e< EV:XITje}9F' c i"Rķ:j[hjR_GYIb'.ѡ(ۓ3!vN&s\aU=sh&2ma:<o` yuP[+p+>,j Gqp\ל;=HVc^ּ8;_/uc>U;#\YW|Dq6"ewf%Wsp0@LX[ܖ/^bafzB]Th`_(sl8OO iց|GVCFiu;M';qӢ;, .aV/q+<2V؋?. M9E݇-m4f^p,{RIW >{9Ff~K!O ^lNCm㱒C! 9G#l8 Mjꑥ{jD`-%j4lPo=Tbd) f8c> bȢbŬ P'S$F^\͔]oZR}$5qX@KҌEOg. 8\}M ksZy-=)уL6˕0-J8͞i)b\g돨I ; aɗ+aWqTl [GxeF`X~-x'IԴ@AIH@y+ss"kZQ8:ʤ.>]](D5g=\[l#9 f50oʊSh+B5$SYF"}"4dH"obK\\tcQ3Ta=|` 00 A DuIO ;r;KD?5+!̏uF^fu%`8z]RЫp7@ /A Ws|T\zߖ 5ܟlάh]DҰXd?Av_uYED-ڙnu/+.Os0|$YfO3B{tIptjzDxڔʰ]&#qXz d_/@W(7mսc&xUw+W+xԡ7) v HHbs s Yl/U0hV wJ>ڕ?S7Qr,\k:q|G27頒E4뽤 }[~L(K'he|Hɏ"; kAW!Ec6OYK(}HOSDO7N+ʱ8Q렇e4ZJCp%+zfG{ YK7nB㗪Or PY#[е'5}.Y] ,0$ih!HbjSC`?!4j]ۗSQ/{˦ԗj ,4k7o!$PC~!'/h[(z04ÄW\ $4#>&sUqv#mxѲ=n W&$H<9EH"uz̪L;MS;( ig;~ۮڨ$0+W yr?G#{#7̫&E]DX[4_elOj₩`ZƔ˧fS3B)N4lcE8;d.%S4Dח{mVHt$e_M%>7͛&nUw"t|] hkg7ۭs 9ʵrvAy'8uu,Zfby\Evw܉aԃ5脢zVQ/=/(\CQ>+ˊgꈯonF% M]p>=Fq!%7{Kf}H~Xg6=DLvF+C^Ѽ*ZE6wU@3Y]R;ť_]/E\}/;vyGMZ:gUBJt#xd/gO ܍K<;cVIYqj|;^K:DUT(s\<= Ȃ=f"-9 wێGw I@@oL$>w3\&]PņIm[::I ăp[N lFJ.Ù+(Ϥ!K'=Āzp݇fx@r(<O.JСxTM˟ є+bQWk[>`*,.0X(iƬjw7Ď9<@䙛oN"bm ^8.LE9C iaR:?R$'&YyN1T9ۀ6͑ e]/#^ ?BPF $D%Ms퓐"!lEʦA2cqr8K{OQ,*fz+T}hV8Dc{51Xdb+@v@c3Ba\s,C]s}Og`\ĝXxcu%1(TpA%Ss0dU;;6V&fS$k-{Ũ|Ʉ8(Eeaѓ.meH bά;uPr54RʼnUF0 х`W/FU}( Q pĔt=nS z)U1 zH8 \XpPk3#H|)x=y6dR XQaPTkiSXXd2̳n1"J4ZŲɂ=>6ZZu)$vLJ U07hbQ'+vóGWD N}_Y^ZBOAߡzy𐅓o"?Q|MlSn\Sp%h$.$:Go|P8y&X>Q1w]_uʮ;[-RWPp+ܓv@&*%2{üxr r*뀲9IȐ tx {-|!RobT-CthMdUNa.V7H"#(*~ QɊJ(tg@źk"Cl:o0Kc8vGj47<~[=^g ǯm&1 Xi$@^%%ΜZ\z/S؃ ?(86tvRV;Gސ3Nqg&1tWDa(¯&GK•'gEj_GKJʆ{W^㌨L362rh'FWj}oG$?8aWy^ RsRߥ:"\`j@ JfV3I[, LddkmXi'n|08X0oIFKa.'Shfbxhv}[+#%l=+m&/|d"Ov*10ۏ( ]-`*re>(ˎfUŚP/Qj%艗 6\ys0CB_eŢ1{H+WG1޼x=4u(D!dVCUX{DhCoF-$;q(C4:{ӏ$G$%^y{/'eRpU|VARXYЄlx5OǛ#L~-JeNns ܞaF R9ݜgDkcL{3d7>aw_@i3.kwƐyҼ͉jzd{Z#|V]~W0~9 :U8eORW!wj8™ ŽB dkYq[+Zd7rd?Ju>D7Fj9U&e*Rv~6i?PRy6ķ+|y$Ϳ ^aX: uYH)n}6L@3A:A|ov,6 }`ɖ)2|χ߮ o*h ',0P+;LoMcWJKT:|xCƯ%BWkkթn-ųSy6q*s7!?pP0$l܌<>~sى.'3VN|o PNn "K ~'̸mC*64:]YW\^0%Mdx֘RJ2r6&őwTG/kλfsΧ%^>KD3nu鼢- 1)>TG~@WF )^t4mthW+T6ۺgtTQ @h,C8A=ZƮ߮YNo RĒ *wOx%ZWᄉvĦ".Χi|q(IsZݏP,;W;"O&ST)ˣ{Jx Img;2<~:A()(G0AONS'^=KS:ݗdH0gɢtܥ,5{sT:\)2Z&a,{ ȸx=O @"NS_y6UfQ6n~b$T o[`]TfHbprx 6W(&~# 6?Cf9r6=t70afk5uYi r еG u>lZ(aɲ*h :m2U@;+CV1y!F-ZA(: 8##s@ ?`j<0mo0 Xc_|6qxpLڲl=|"lQ Q8OׁۣiQRU= (5obIYoxdžjշq6E,5 N|L-RO>td݅w`QRI f|a̹4#k\-mg#LE af&bauA6jTFwHS Uޤf6D\SJEkW晱k0%!/8㯯ەBs^[Vb@̎D\U1<]}?ї!U=mOXW|(+EW^Zp4'g.!;M=m 3g8 ferAUmw ',|}G0Q)n3.&8Vt`JbN=<۩ ||g(8(dmﮎԷLS)W1šX/w㱼tAۍ]*` Jq&Q8K@Rw^sN7y~zm'+Z'k>7jnQ);f? ozS^ÄY6.n挆@b;Jr8؇H$1[Dttډ8ۣb@>!9)cx:ٮ;6Fw ]UP E#)WE2<\ A(®>css|":j)ƨWZ?r9% zC~GT h+bvHud~!ixӘ@oU_ bLX*EؽJl>TbBji }5LuUgcp;,S{x5s ^ZqA8p|f"|pN'5iUeGVDfb*0JS/G֩3>^H r$CAf^ϳ3^SzLU5b ฮ` 6|JcqVKw=N:$~i^)W=Dr]:GN= JV3P)Se w쬏f$VAO{TQ`g~tiʼn3tn\</h=9\+Fk ^STѸhe)A"'EsT-̱'^W\m.F(B/& Yn0t ] !aaE,ySXJ"uS̾; ~l. sX4(h{ IÀf@hyQ5(N$yUKwc: /;jnԯRKǒQWQY歝~Bh]5OlKdTu @ EgֈD/]F96J>eUP֓$-mYQўFRH^]+Q0/z@+@\9ve|WrjumR9bvT Ze g^kۚ9,ұĴ\aw4N{Yб Bm̘Aު3m;xt_ɯkAG.M"Tf~oH(m`}m뚔 Պn0= s(K[|) }dU(43oʦ8-K'@e3>״zA$ Ivs4c6Dfu8_l=(r]D=*W`fUkdɗ-mb,GFȠ6_²>ֈi4Nճf $AWܻܶzXB=NP,M.bܹQ-w7qbIBo%"hae)y#('hFhKnb1{g[9U,Ax~v2ke$5e ȊbV^&*bod6nHH @mW &P4oB"Z%#-:h&>9Zd[i 2sxCމkjnUD =[˦*qHYE a/R&aڪ0i=K݁hXc.o t-F{F0+ӘJʡ1,#6.s~vN6Z\i{5 k/P)h)!/YB{Ҙ,) ZrwC Őustb{HܘpQYzM(1ʠ#_pXnd| !o:Gndv`{ݩ+!YEZlvKG6-f*ړnW\1XigO(0IEs륔_`l >gꋙY:ZlZL ;NAp'`*(U4+d4`=N?LSO@Wǽ^ndA"f/G O䒢2FݙYؗJMIg7vV?l̜Atw_c7^L*W菎jkF$'@0⽨kۅ-OڤO69쉲Dg(dmҙ ڋ]\ aG/>H6\؉h| `ؕ_Q ~C~tV4$7Ғ NP3pQP"g\ {l/:$w^u\1~E1yM^[{ƢхNHM ШC aȂ4X}E|0l2alNq8SaoMrk ͲϑQz sU3cٱST~LӠB@6ؾ2 @Gz(J6F*{'vl6&e @[uU쨜ے%H8#2/CiJħL<o|T/Ց%E~ΟmRnE=x =d&"Ɔ| 5PAgn]#˳*%LS٦eHv<&} ɦX!m/!RN @ζP,ZuN:UqRuرCY̲߇[q HV0ʭnq/ђz7Ld}"cg Z>7ϑUwt4}ꚰQ!ow"V̼\YG0w ,#QvS lg">rlh>1\:JO~^ݝPQ8arYyF8|wlЋa$XLLJ# 3;Ѷ}wj8>8-@Snp a(~LNh 8~ỵ ?p6=zohMFw~]&o 7BkPT&/ , ZG90A/X@㬋rvsJ;r':;:\~q|C%|c`4dz3V |ҬD:㲏2rLu?<>V&nH‘f c`Vrd煌bFLl>ߺkݩH24T25OG6VyjsHV %`cS曱2嬉iS V~AFcR>)Joߥ6X>`'1Q~nXɯֺd}BE/\0jRcv9{djҕ $buR u_].y1*I/McPMoW*~2$PĎR嚙u$pzf`~j ha/dzg^-cX?蜬9>:9i&+doMnpSb<onAŢѷJܲ2rm9eShǎyܣϮ cnDIƷÕ|d+JM)^m1MKZnJqwJT.>?d 7qBgL(xX0/̅3'*?@ 턁V]Dnu,8!lBOJn#*E ұˎb(;j  mv o4 ..Zr~wҜ=,AdZaZY*GS@WNM2)5cSW]C4΁&}>P-ue^/ t[vcӭg҈#/OM+5=nL`/}wӹgR&Ùq '[8NT<ۓ /s,̬p+{JP ! $t]2 Mj~Һxvi 覰QD;)0g ʅ4X )Ɩ@ R_9461ټ1XIxPZ%2R)sIn?QXY H5ɹ;*_Q$ 7"N5o0КV'EQ zMՄGJ|c+ b'N,{,D?j//,Y]T6\~θil{ $v@tdy@g5AzZ@a P L".0h>"Z>*.I(F 2nHŵq6*nIŦ]!x`76@)xtt*(?"nK@N'H݋ϟ,>uы%|=^HdDE> AmB6fӹDe1 2h h8es䅶׃G8Z k1bMuv9dECA Toy M61c'g|BcUxm慤*4l)Hދ%͟ntjCJeT倊hh0-8y @O6{,Èx݃Xj>qq߉ViwM|'Ҵ4-"a'J̽|HevGh [Y_WCUw=Ymoh e#mD]Ї}f7l:>[_#+D%b}׋7=tl$7"p7KOh)֬!gv^aQWd5Xj?h f)PVsL]P;ϵIۀ-JKoѢaw)2v'&+$#Ŧm> "T tU8LJ*v1[rڤN )gPIz1 ۭ]9EFwSXdH%;>E Ufzw2ބ ;,x휣k l&%2r~Sl_l`#K8)n':7:g,m?+uY ӇLp@,P--[{RJWU2Ŭ1LJaꡢ>1J-cÔs#Tfip[CXbLI*uEMs/?]ĩ._Jy/ɇ;9T6 \^Քb $Wv񺩌Uh7IZYݲ#HF< XR%jf)RQ3JP,U+s4K~{NnjNASN\.%'[Cwc{G_[y1f Pck/qߦu,U*2oQ b[sn7AN*VLcΈuZM@B hka< ܆Ya_:f8I'r BJ/qgaVg-8 $ e0_ #BzZ}C+~Nr "&g0l—lZ`t {5%t弣iӼ5.{]=֟fH ?9>X.+(hnd~31 UDZׁi E'TjzFw~}Ɲb+=O礜MФ<AZQ^PՑ3R _ ]<\@<ynLq{/rZp?" f]&;pvPE_|yfgHp䂡i@ɩ 7k8S|dlc,VQSq98 L 4auN|[ψR ۓhU\KW$#A5 (q>NGF%JʝV_92DMd= \@9M[ ƣ-v?<´ }o$eUG7tw"ľkå|2ܦz|BaS'kQ|6\#t*SkF)gjd^A5{q.` 9e`~޴ Q'lϞr?FН9^ϭoBnAt\NgވnZIb[$u'[Iqfn GTJfG69:oOEҲsZGx}uHeရcb_h&; C>)&4CZ-L8{R\7L3(UL茹;%-16/J]L-j;}MfQHEuE<9kO؋ b^o5;]@?#oD%r$pkX77k|D>g㚒#JmJnIakk'RTx >qyV>4 1JS592u .IYrw}gEEEfN]ɳ'Ž&h ƨB~oK{fˇiߞ IOKQf|e0往. *EcJ.>yY}4YM~V¶U;Q+i6˟cc"aI _fxeJYll:ĂM< ^;@vz'd!ZSQIŶ;N7S 1îmnb~bxCyZUhj)X3R+XTsj- [u2 iKSbn8@;w۹G8K#m*`!Pm./,zU:F"qk3 ;ƚO7RkăFRQ!R3T_D}*v MU:;bx1URր Zw4O׽ZO\Y-ֺΣ5ڝ ^`h%6.CΔ[f|d]ZS|N6q{~))c%sUE2 uRJb-Oȩ᳧ӑ(~UYLZE޳*,FƫfwEtO_nԾlm麜)*;/3B13cd FI(Bs!̝.9` j?7m+'R:WtZgFph6Ɩe1ߐxWSNĈ=(GrݫZ8J "HILn #PLLZrҩ|Haf40*HAVci/?Ψq&Y7};tM6& Ib2(r&LK F c<rvM Vi5I2TJ.tWb!C6, 7q8st H>vs`x`P8T- 6{1SBg@E tMoD%U}ҩ /"Ƨ?d L⌱׸6/lu(">^.%N !ϫ(H*.T ] *80oK>]WjIw̟y&ګS'+]{i>+BL6ѱfTp8 簼?qD͎݅u9N@\Wcq]֑&H-R{3àa rrS?Y [ř+O᰽$P;cD:=P$lG (>*&{nHl:Fmy˧-پxz D-n]k]L[Yg7PKW_`oWA~Ƕ`:7Ou0 +t$]!)DS)5LZ[ ؆ [I?\_x Z'A>Hp44㧻M15۾j9 |xfF:]W]'. eF{5chDn K|~8BY-)C(J!֚ځ-q9"s8@= FBW ,V6X_dcaQC&8__XVmnNQ幱0RK `JU|"8\T٥C?t7%:KXb(=jE4=X{ DM\uĢW$m?%/vkם뻘ӨB,W^ѡj|twk>1{ [=V 769h$*9 Fy.PB&|6-eT̕zAX\"H'y<橆*U' %.U~nRVdr+Is mZ7dFΰJCnIXkd@;/MۧGN4.q#.EiXOyA{UauŐ<縄m[Ĕ~Oc/!hcwp`Lam]]h 6ZwQaM  wc{4ˍF7EgPZXqǒ ֏n8=VӠK~Dm RzKkcSa$6<} ;mhxYED;=.%( @D!^uv/ -P##$5:;,su:ׄ>yd IQfn)9rBS I25kw/]XtZv ɡv/UlqsfE9oVF6chs >vk;{%9눻,D $:u y. 't3>O(lumhvA]B$"v`&oGPC1C]vTP8bv)9k ްKQ(t Ly|oF?C=%Vz _-ct0~.5vhajE&!Pa>·!HcJ^:Ii)H+v#;)?^ƿoN%D)=`0A!%%E#,( t5f+ح/am!- UF\k=YWHQzA7Rd2|hNrY4 dty7uI1S2 : 3mK"d>IL\Ƞ=䦬ʬPXn!ls pg"&W,,QqG U$&^|]m + |Ԕ$޾1.yR7 y8 [ܪ⫡9w~ʌt~z7ӧ?~5ky1ɹ_}K?TjA+TwNc"[Gt6+.]sW⣵!@,&ZEgG8^<Tfo"q0^y8{u峜a"B8 ec]vË䃨#:)rxd̈́L89%w.p&Y Wr [sU@ڢjr8Bmk^PcN2aPc9TA2[>GJ$K"hRP=IA6ǥIOAcp+b9+y w9kZAh ?0 jD[ <ٗ_Px~T3hmxcnyS2%{ YgڛkħJst7O{~fqT䜏 J;V;(/N}D>,1[MIC M|GC }N$Һ_qEI >';L>~^}MoK laI/-ARP JkenA>)FyqG5"]g-i|(+VHp,qv'#O]ɯ<ߝ3Otp؞,A~c;h%<!KZW#J8P'Q$r(=ȓ{fGNur 0맚FG1NURld`.PQ!M rT)C,FܴiRJbFZСf^hsM,Lо1D@AzmFaC~"Sj !.|+ѱ@H.~v(u [3n P8\"'mD"Hj蒎\dΡ$5Niu5Ch&wASZK+^HzG+SoK3}l)Qhn׮錳KB)S2e#S6owϾgakeڰgymBP.Lnt>}Lyܓ#R'}}ZWȠ:FQ6A_ӶZls$f_XRCʾܝ 'h[j!Tޚҥ(,2O:O|=lQ߼=9M dG4*Bw1/u4)jh6 *e?1T)ԝrGR }G&$eG_Ldgw[X7Y(_bKrUk3M|̀<>QhGtWZG=?JF몫u 4sT懿p4BffFBBީo` dgvKz\ rǑ^Fŧǡ2yN]OO,{Z.IѦ%0vd ]r;r \#Vi9$V氖hFDQ՜J0o EX6v~%C>37({#k⮄.;NX^# u+SFS28nc= k,+ElnՖ,O2ȕ-휥)tݡ!#M`>~2Te[??OhPZMT vInSKouxRddq5):7B{i_XlJ ,<T~>61=QB9{.9"Sj,|`G661 |͗Vh/] e3ߞy, 6Q:>ְ2KA7$ewmԠ*@Xh>Z8;d\ b׮((t&>8S@9H]hl{w/1ۖ]'UtRBİUh1 Pl-T. Ptn #9[£^? .U}L.D>E#c/ VL=[f]7.*.홏aS,QNdh%4om3H6=qd̵u1>&u)[GQy>\-`AD6? K8J3'b`g:UhYJs21j5(ȴ'wup8󴷌*DˈVu41*Xm{.W?V/ҕXd6'U$E'0nk62SCNye<3$Vg 7(簾R/I$nkyl2Ȗy0lնuDBF'\Z߾M~-1G3NȼM{eҷ$uou߂cCaQ-V}(fguj^A 9_Ό)UNZ޷/*+ AoV#Fۀ0T0ɥ[C ஻ݝ݆8ԭ|"p;ـkH՟BS~ V:JR :;\vɘǾ>2sĽ,@*Y"7ף)I:_r,n"*sŒFy*Zd;lBY]?Q,t/1 ec{8HR3(t?Sj<>қ-qE)h.c'S8 *=BH,Yom>rTFuN qB\yZUgh-^?z*?$E~cA%s4oD)w SlnX\~'GڪQzfb撄(K8sJ% @C& B{\!(z_1u".֜s0>R۶'p4G2{/Ȓ y3_IBLվvԶG`T]JJ{Mfatb]+oEvie:HHZw~R\-;,d1]&*F‰4 ڙ`ck$Kt/a xjbɲފD<8vck mAǕf-G㻔'R9I))~jT*@X;-iɘ[,pg)p'a\) ,]<w3HFk3~zF [1؎zgLK/u'+VOcRQXYѦ SS ښC& !3|l4zm8 %!9 W9Ga>R]$W=rGO@݊jg#WRn=4"삓^s>Zcoſdd*2x bKzsIns)udהfXjzf%IlK]uׯf]NKyMYzk S x58s*9vr2jO;㨙Ps:O[9kl}鏿I~|"V9+p(-8顨]ŋ!ѪT89}|Ebj4=Y֟Ɨ-}Av-<Ό5L5/Xv0eUaN3LMAX_Lٗ~e-g82w}=tb cCOyZȉ5O 8R}6e[&h1QOP5IZ裁A7]lpOGCvE fӻOy{GprS̫ [HdW1Yc~kKMmPO YWsk`Zb3Z~VhpPHtF **vRxttϯt- Mه+WUa{pvs FhrbYn 7: u; s^:smL%&<lshT0M5~7tg4t6^>ӤW{xQċ+Za9(=')F҇_Z?<Il+}٤@@g4B?PAOpCC>kwba4Μ{TۅUO<[sWVW/wϻ 7#A^z/0~8HFi̜#q: o23~# W͑QjW˱`50ED7TH4³1ɽzôߵ ;<>#ԚYiHn/_e+y_wڍd-֟=8@@@K}j6ƺF;_riZ/]Sw$qZމȿ >%iy b Y2]Y2 ޣIS'grʢRe:fX|4'qKm}|nߎǥ u tgDօW'Hw29mtؼ9ie l 'lr#,gz Ƀ!ƋF;\VLj#;poPdFh ͶZҿ2S?^>%eNnt;z@7dnmH.ҦF,Ѽ)ʭD>cE@dH|/x\[;5$l@Ѹpӓ]bE 64{5UYT"5Aarv)xڄn~f6L\Acԑ<^=Wu΋v} ¸}̤w7Ա; &#b~H/7&}-5Pm|I&\`:>:=ӳ4WZZ.:sWt*eDFABgP-;3ɼTR'9QtCZʭ&fj^JB-f<(UAȶg Dr^xz!pDE[6diJ>m5p[@M\(05>7{,Kӭ(=U:2`1Ѣ: cPa!- ԃ )˵A30nֿI9MldSW$! o,j k8=YR^.zQ٪ ; fkOm)@~ʩ[ŦF O3̥v}<,W)s-@-CcKߟBR 4g$I~I>` ▗d={2rymR'WoFbB%g7/X3u+wkuݩ`A@t <vk 3`ڙ'm,vdЭY>>N%9hQ| h,bqHgq0&RU%:B4t .1X!Rd.5ZZSBrsK'Й4az\ }GJEɋLE*N/,Xq>|p=!f-&g!X#G˩^0 o` C+)l~㈑L3LVȅoK|xi8WЭa9,t=jc>AWǷ+祄fMhyaʻ-O^.XDƮnr Crvzc]odh Ք*~')oryC(j뮞.7{^#n5T {Ν=H20Jn:eɌk MA .cG:K} 0[0IRW1aФIՓTŀӞ}!@+:{J*7Ѧ23>` F3t"f kcje^'d ı(7*xL eN(D,PݜLCV{(-0(/-HuI݁`uQB6}a ^@ :nOR5mBcϟ7(̟?4+:XHD`Rb޻p&ҽ6%Z1z0HI@</da6pgstXKg_r:us t9 %8U79#qÙL6& [Ev9(٤}DNuQ)9G q6Ŀv!C7@MЁ آrRs辻b]g8L|vJ4([zJ-}ѮZh)\ALLFL7pVr9d%5&N|*IMF Tl[VCiM!wm2kWi !5Uux|٥\*G=kDnSr{8<"xQgnPr&#4Cv-ĞbfT ާB~# Kǝѻ,C6'/'#u4G+O(N\d>XhEPyH'DBrSQ/hٌ^w6: 1ft[ҝ v31NA5CWыpZR~=홣U*†Hj+M4Yϙ3̀ ["J[mn!¦U@rk^Ӎ W>2lipdrQ 2oyzfMt4'zvAyIk*CS] O/a5.z~__ ^ΐ}:#=~,v˕7{*}:v?y'+H}E4T6q>SV3E$ͫ>"=d!,S@o2sr:3ܽ>{E~[j5:%y=H5FC̬0қ7zx @z8qo*u,œԮ:v7NQ Ӹ *_zJ^K厦utcy:+|ퟵ ׊{˂aUGjǂ iw`Zи\_#O=LkMH!m1p)D]W`<1)"@s#v& K ?>~ĝd|.X@RU&h-[e #s !jn3(<~c۩CpFܮz ׀4ykcu`Cܝy6>{uX' Тm{ah Xě<4n7Y<8Xu}ֈ 7"x<k+/Yi׸ ahfiwE@ޟw?eoykЂ:LǑr^5P#8"^lx3M79涙K^S `3\LxXw0uH p[5 YvItR5dV UU4>] K+ϒ6?]Sr4YtGmquA\\3!ʂ m,U^)Q_ڮl|2`Q5>w߉P-. |)xj-җUOJL=@S͆ Qz<"Cnj i*rYO%*$l-f `ي! ,Ǘ8T:i Ji"N|$0/>CEm(DH; qVA;zk0aF1)>U|ZzdsGkYmN:T[(лשem8&NUQveȑB_T$6Rs㧁O{Ԍ13Բָ4]URͭO,B0v(׀oTH&ψ6p7/u#F5zÀqvHEHjgo)ɟ\aUR*w-#M`=X(P娞ht3TF30 &^!"(R?OÇ48e0Jd6દ#Of`] loЧ"H`xxRl1҂Z}٩BhJƶF3|'PwxHQ_M:%5sq9 < @/GTh_ߎa)P7س.0{U]s&;$ ع(cBk} M#o-*A H/j(S}G,N|GZ\xd^J- c`{Af(r_|LDg;dyc/ѣyJ+S,1>WW^yj65(ÙDsyl#6@JDOED#pRN̪|!@{Lb6Z#??XWχG`rUl}ҢCfTqն>Z g9[{jʂꌠrνL{8O5?*5#?oͮ"hw{4n3اSR1{'Y>U9 .Hk%]VuԇQCE*j8zwaqD)ZذwDxA^𠨲зY 4\9*dTrz#Sdeu.n%|F25uL3 !#MО^{EkCV.٘VnKtAX݄ʜ\l+MBJ0Ϲ#3;ՐOn&‡&z.&sjz?qhax9.1chv3?wO &&iTF1#χz@V/cW=hrM,k CBBU;qȳ0x|Ңtk%iL He{>an͛"\w, q/ziU`G1Dh#B'>Tj;Q~P$ɳgM4Na^ԙ&.XI6^IUbJ4] iLyV9]}ܹ̑Eцm'VL'9Y * {Te bO"儓[EzPkm5Y%Cn>Vꝸt}3IF$ %siG(œޚ|dDXX_@uC֭^1I^J̹ lc "P̶4]뮁%K DŃ䳾 jLO|*:R~iwVSD@gU;:Acg?._( xt12VkQ]j^=l2qS4ad|qy"l[6GXRn~=rmŪD`_qz~nf3aEft潙pGo}6i$1it2j4dQgG4GPg6hQlWu+픷 g}U\ xBNu_?G+au%ި4hg PÊ\J|^jPMw ,v$,X5ewVMWF}+MNJ{?=Onyj'!ȍ׎p|7sqc ?{k!\k ^;q!)勍%g;6Y0OvOJH{BgBep\3lµ!m.Ͳkb@j[I5Bp)(s*ϔTE-$Hz iWc-V.C=3g-U\{AMr'@Ƥx t-#W偼y<tO&P} 'B?DlSz冠)"I=))q"zՋ={Т Iv|j][r0qO${لV-uV1ݾNYnp2޸ͮ\)s͛zsft4ly!֥;A`i93"+|e [ˎy= Z&I^/#;L0Ŭ^l_&L ujMo^#y2-04va3 Hp D1<Ȧgu vڱ=؅_sKOni7HQ23{ ,L%C֘b y6^ / n @k+8[$ʚux% tGQRK$Ȭc\K?KCˎ;|%x,aJ3! *fgOw#uez` g爯Z#8bq玷j5NV*&|ABg`g4Ɏ"Pqjd?Ǽ׼G9U`!qXv쌆n+Q;IdQfaVJbX9Z#BV/g\ 4;X&P2>J\z}\r9sJOKo:6iI xP'ˍxU E%($F2q*[!s%BG@u.@mNZiqt퇡$9:M(-jLtWo+s$9.BV!,I/a»&1tڠvj9i#!;}HHʌ{k(@ ~/C|YuZq2+N^MG&I7O)/P=pڣ:HYQ&MzGM,aP`![A΄'<XdGfUZ:P~I2=OXJJ ܚ/ξW[ $랫fjz6IBr 64=0H.\V#70֋6dmW~nbJjbJeWY^ ~kׂMU*>gl5BVdq.&ovx^J&v;R:`fBf .E7D";)fQ?l;N [ jfS&"QߖV/eh̨w*re̪8S~EJ?|KiYce3SO9TV%{K2 TIvCuļ&b ?^QCyN1vɶɷĨYyI09fU.PlQ|_N}m ^x&;:ҩ|L򳜰Cy c;0`3\_p+^+xBEgL=9ss&zƥ{a+qN~d2Y2sP\r^hv׬v8L\U$ Р=7ɡ :.(AWx6i^8B6ʺ<@]o܁IZ@Jpo*iC:}>E)Xn{ ^DcS]d^]U{,m)] |V@f-ƀ,^X~{IQvqa1 }3[tL"U}g>C?rQO>+N'>DwXgJ\磨/f/;(&쇦XWb0X5JЎhEvawX{ G͛-)S%4Xn0'Z裢!`_?AӏDˆNb+- >N o{vI# dSxwb32y iFeQ +DtBoҳc-܏g0Rg>Q+HhM{EFLk=UW(}lVwߤd=b?^ 1Mi} 4mZn?pXQ7`1#M'ܴ+`3Jԅd0Y?;$:m܁ڒ xy δQMr8W `bZ쓄=TQhق[2S^?$ňbrr0^\ߘeq Fbx1% ; Ė{Ջ5WɅN\kmdqt{JQCxxb:ARm+֠909 O>LSTP>N_XaI86ޗT65fp;Ƨ)k m_e*(BkON츦J]CѬ`b^koML@IBєr31-湒ZzVkXb14Ki29a>qj9b +Ntmr"L<4u6i`Fj7/D {!Q'ԩ<5r;jiO# = ilgB2&.LL=krpsk4XNOfd4}5ڜ3@B Ψo;w&Q`jC?OFAA`xuHQ(,'CzFڱ1 s #.G5X~+D+OGQEY2)`!ck\nf'i3k҆H8V[9_g'IQƑd`]p߾`3}V ۸/qGFS}K- Uwq4zY??[p;о=䨻Z<R3Ku<͟kCܻ`dȀ#6:va~)sMyZuχ k'Z ?X,z1F}QVb2Zpz EXԫbp3Tg6v7Р5GBHU bUG8M;$ͲM5462 y6&ԹB鰧:g<'tÈ%Ah8vi !M p{U0tttF!Ovm`R.Eӫj$jW2LYlr1|'[!ctYZU"6lfģ[;Nfrv٤KRI\ͽ"0Y&43mYBHg}vBkWͿ"vδ',` !er_݀U4"-̨ %,2f#>=QZЃnsM#w+(9Ht MvN|z*}/~=2 m;|i疚iB+NoGR#DCCH| cݔ֏!:xAΔݤ'o }$l:7a!S 3 w*\3J/w08^aٱ&؏j:T?#_1-Cs=\3'l+jmZC2Ӥ6G-n`; : nC;6o(46tkd˰^!o{$5ak)B3ye,"NՄwQk@U\]R7KXxn.PCn"ѫE=H%7., ƌ˴F-2Cal^oMTIB^ߢRR$}UQ豵)`&J|6+c_8j52*5co#ڒ\WtXs֨$IALײ"3|ya6nƒsu @m1 |[0v\vrYxnY a,I.((aOȝ|) k`1j,r3X<||롲!.=c/,Ӹ.0{;_\p|3 %SDDIw87QnB/e%vՐnb{ [3 KµT&m?ƋK:CMcITM$cMa:%YFSdnx1"_&›jI\͗G zXo[eˎMÌVh~'H. :!i9=tƶlHh%W+?aXG<^DovXf`/rW{ Q.p7/3͗guB4iq8h+iDPIS,Յ[b`T^ H\phDLJVR9(.\k .KC[Jx;GJM}iEҲzYW?J\wSHߍsBcg0ǽOKH ."Ns0瘟G^\56m_J?JO ĕ?|\6O, #VBlԅZ+ UF@g3=/B5Ll0\R^1>̫.4̉'tyH(*Dރ\;@P}ꗈ=p{]e:OW> n5brsr>YPDŽQlz5CB6bKָ$tm˶,-!HxNV!*x}Ŀk:'8Dl%]D O=nB%Wk?clZ}-%^;7daT\j'7V9O%'}9NwS6 #DvӮMl9 ʹ]Бpf3zs=L@ tmbwJT[ȖWdT,X{%bD 4KϷ7c_q:{J[ѳSM!!1#4vB(Oje^V7M(q=;?i NXI|8l{h`?19cUCwO;Ln&ϟXejw Gy|4CUB`s>Khr(N: Xt9JP3ٮtk12A%: ;jĈISl-&2}m~[cdY9xJ / QEo,z~㜐3=}9mn%L*\"8,M'N+PΣn>%KƱ0;a&K;KbāIN+fc:(Bџ1 hKZPyW6| ocؿp(wC3Q|5#ocz}pM>}#Oȹw0 `$*M Taa 0_云FHOM(@ҩ~zMz cJE(F4 M p'1jޙ pƝlM9J>zBqNCZZrgE_璏Yyaxpwm $oPQ7Iǖ)6&y۲^w.[9t~(#A*:sWԞ ZC,J;sSbmLi?lME^Ʈe _(pXM]@{fTڷ=C*fDŽ6pBD\u h$ I 5ʍ^s[J.)Χ3P>Av}έuOF(BD4 5xy=kV/:-d-Q4˫"3͸Qi2uN$'ڗcJk(mpVl,5XOB/{?4zm%̀#F (hn<}םhsx=s*2(W\OrǮC *!SZ Oc# L<$M0hG2RONOn?8p‡~bBبKޔh' +xծjF?vb tKhC`!V݊65^`Ie FQu>4ݿ!]0idc#A I4O 6a=KI/ES +M8cY$~L0C$%Ry bYߪ=`"$Q_1KU?aHk_%']Vx2P<;gBS<X@ 6&íܡD&m)xMWsIw/P!- ԻڴsNeQ0h~lηaz3hKs[liFCZ#uVH]* 6q<H|g 4 U4Ryg~c2B'_7xU64Uv5qQp s?dLFͧ7==ŗ㹳ᾫS`UqTD?:YI W!^Bv{.=:8rJo׮ݎ_&8T^ ' /_gGRf}ܬ(Ep8WWC ֿdUaz2EyS@ᤈe@fi s<,Ħsl9q$aD/Z(jyZO+<'[)ѫ#^IiDQr  ^LHo1rׅsCx4̆/2 o RkTJ9ԤH/(钤#q@O4c?bn 7KEc=W%-+VBJCzNcčC̈+gDOe)y猢-Rt_PVKZ1|1q X{hcdcm-l4f*U-- |LЯ[= Ul s*2&R $-ˑ{il:ݢ|QV#*\Q6_Xn|KwL^5RJ_Wթ8b ⠮԰eq҆7@4o]  P`ݽJϧ7M`t+&]&V ~E״R kD_->P%h.;}bU(=>r-BKPäٜ9-wX E bdVnduFZ~%>/w|fYaO˼G=HȻ5]`MRǷ9طᑅTbq+.$Dn=ŃeZI=r^JqۡC7CP+iM퍭Fl 3 ͏dzIZ|VRc0>lzƞ&TiTM*a"6h,9oknf2p1zX[S1 J*7|)oJwd~Irg>^iYujH^*g(^r eZLtdz[ts8LPp+173iB#艤_'X0"ӘQ-`R&m"JnW? #k:m[؝VKz GdhFv.Y՜y㛂F'$]p{G~p͙UH{f3(\,5p!:)FݲxfsvvdX@cm\GSJ7gنL.t}4MA ^m2D9lV$墲  Dt>̐\ L+t "^}`'T9}u-g5yĔ:x"5S";W=F>:Ғ,H7g}AQ^ϵo2<ܽ,HR{O֋Q6{W+3.Y# * tzeƢsR;aOF#G&S2GXA*+ISA| NSv`s+Խ>—ibU*"/P"!v}9eTsc]QmY~?Zo &zDse 4;Yoxwق>Mw+6'L/ve*TDWٯvIE I%CdLŸ6~@<6 =a$y Q3"馗XN-ZӅ!o]wfٽ/Y+ޔpYk- ɲ;2A!Ҳӷ ߄I?JҘ:Ev$΂K"wrg]OaQWP1חYCl`UPzbh'тWȤYZp Luj)=< ߭w48R ~m?S yE;b!+Ims@ze`5N{m߿[)Bjo]5!?;AiM7IcR+ž,[K> hHlN 9̏*y2(M@&r\fg^uOhMs9jJrLJپdZ-Tx|zzG~qWaBϷ@P4zT2j&c%hKpFPbu˥avq9Ȁ񖹮Dِ 5cͱ* ({驈B&<,"z+1c4=dvzȑL^M3~&!uʖ6ˉ,6ZNb'yC_^($!A>d5ϽqJ_Sq {Ězq4|>QǫvN;'3J5&FAy]zdi'.dRٵ֧OjuTQRG^r¯\K)6eM6-o||0_1! rVu\YoPrcu k-9tl &$au'N?GQ6`u.*}-@}#{4 5PS/4g:=c\ȐZϖ|vRQ`jXrskDٰjpl󡶩apG7^ryw:M8K #T1LL L!q6"ggpNnayӹnq~wrL/ۚIqZyݶl<0D+!z~5Gpm)QN2ʐQ W3{E#d2RY%ïbFëaa(P s Lso[˟(|!ҔSӳi2u~O4_-`eJ\"踃({o8ISJSYKa4c[uWhGjg _JFy'p)m>h>њl$-HL<\E;#Ӟ~0a(M{@P3|z$Aϟ B:54?1`#e]V ^4G4&.ezh+H-,! Gv'KV?;Q,~gJa| *v/ԝHh:.J+<2d,Q%(lW +e eUи¢Is15PӟG3B`|K%=đEJ푳N?T6A jZUnjJa\ 7E=ep>=\+}S Hy*gbk8O-UK[!SЇrqgE[dQ̔-Av&+fHF%t Ne`_M 揼2x%@ܖ-rIkΣ, SukVk/US@Cfל/Bh.~Fɲt0dH͎/ ecj]"f8I7~!ϣ?&u\OBW##42 jP|v$+_Q* Cͷ-B/낋Il +*\Wn 6۫A2'Zg*V.[|L6pPz>KB0T&aPy.tѐCY-'5&2/sźVrr K) UUޠ& zc7%E"TܺU4ne~8*b*?Ib8A/^FE{CyVGq T D\[ܠE01"C۹ #;N^<($k4x109F[ݼhR+qׅU?# BީԚ?B.%<(_0(_`g|c?)kX/BՕԍ&Aˆv dZyϊtC9 lwiBrfgr#Tl:/VXuWl ęo|bZ4 &\΃z( 2ZNlX@cHhܼXEt/z/?>wNwv!LP-c4~U&#{T)km{i,3粱㟝?b{8V$@A+tpS<  bopo3KCH-!&d>#-èVkm}cYdME>ep:7c)[LD(i=C_RɝF}kXo5-Ԍts26Qgrlz%fG;* n- gFr5'1_,0\GBAGX-=[ذ3=" Y=v#).W_[8녧y=VZȟsρ(IZA6,ވ xڗwQ,WSڧ˵*dKͧ=ޤUU7t9t~jN> !5;_Ppea"{gzU>WL H7w%H iqJ%˅\v/ҥ.V TamI/+#L(flQ߉\/7]!,]njme(jen8-ƏUy4I> qYJYNuLU5ayFs!}fWܠ1 iZ/LoL)?8 >y73LRǠ_'1f^!?ig+StƉbN*; H)<rF5CSt`Y#uxOK,EZ5"4zc7G?uuT0pxoz}%Gf_11z˭W%rbbEްݍdqcr43j7)־ߨ{hm}7=q6~5gufwwV\3ݚ*w󝕋n!Bp. xPSrqw+b˕aupDZ\ir 'miQ_/dO9`iTcWl;S#%}Uڇ+?XBauh<1m^R"[}2H TaH9E%0=K3G[ktsփw=r9j9Ѐd'DK|lX)y6@oLFv U@|~vo4zz|SNudbO8"`l; vޮtN(89c5ok,~at]JRȪ|{q,J+ dލ x]DH镺৕eQ"$$]H;C/g>6xфt]4A8~wgt3p8 bXۥCN"fyӀ 5>C] >8cLE+fgmRJ F> ɲ"S׉ rqZ\r0MhEOƢ4|lEhYwW32M)<;LxJз;༛ a3.ݺtLjJ2v@0 C7Qvb7.MKg'^ńlݮ6ͪ,kCx+!Ğ7qKgp:T&)w}[ܻ_rNA2mR's6 U̙r?CmL5qARCK[:ZlB>Tlv$U>{dPeGm`*rp5pXfi3v7xfc}iGh.`o 9KÍ'. s\IeX4%[=GJ8JܬJx5LgY Wb^{ <rs=X18kQt@#v6Z 44y&D.0JUSK$ ƔX6t߾I[ 9e{y]U>+hi98a"o&J,,^0,z yʻ2'`EoqJcopɡ0n'|ׇQԷn'쥶#3Hg ]p7t*"b|[ m0q"Ѳ}Wt5e+Go :Gpy]=8܍PyFJ`PJ$h+R5YpSAN*t?NA/g %хcq9usEǢz!B 5XuG!8+59rŌƏ=q,ck_[{Շ5o^rÆKVXMHDyO^{T+Ʀ)w j&6C!C*CuFԸZ;ozصKM^ChpP#ii^P@[0bgsYnߤkn>#+z=pyCA|dsGZt"҇7f&AQG>+lDMQA"ht1JΕ;ʲ-'r|!Uݠy0q?ȵ(<2tY.XSg̳)6E5q6fĻ=>в^vw`R9¶ҁ:H0B9WNM@1"Az 8TKM\DO`eĉ%>F#a uح襯6+!Ћ _~XQz4 lH2#f]lӖ%0,ɀX9KyJP5QE8ra.|.e94 "*딯%I :ir@dXGH =j}۟{u90> L˕.tjAC9)?*R@VH8/? ͇4a/R [ @kx)Y*^_,d^#sbOF}ܮ?+Js xkmR,?iOOapF&2pZG~-8\]!yDIk`݈?Bϋ  t4L{f&YT:\?qp]Tbh,VA!,u-@EA\<#7E!4Y!ȓ0(EDyboiѳGH AF8`Sܝa7QgBm8u4ɑ?މN{-"QAaɏ(Sޛ&x8:ag+j;noo ۞#]!YNbZGk˙3Ez? u^:wpV Mo`oq$HS)9opƣvJNQ᜚tM ع*%U6ke@Il;dEv0W'yBweԱE:8W/3F^CmkHG%luEĀO=\j+*KV4Ly` g^\-zXYLI;V4P:9#dC1+)pZ>t컗 $|PUJy'D+f;?{fhY]1? PCYrβ`k}*˼} .AzEfEd6)&t6<]rFp>l6_i33}FG ϳ'olϨ'b'wDCݶ=rFHQyBZka޼cڣf WL]tv 8 V"hC)Q=Q}^Wb"D|TN!G"^0L|a1<<-JK"c;>AU;ԁ`0f{Ncv{y*{ZKqƾ;k®q'&SXmctجe3JW_V̕ VzdVJ؉^R=*EGGDYY_Z|͘@iׅہH?I~ R56"B44ij8:ޕ:DWP5o3|_ :F'gbwTCtA<r-s2JP=rhUhZmw,^Q!:NS7"կ#[(F;t.k<5j[t5i.*j"+nx~3+u chA˦:BpJD!h"W`>vk-@_ri%Cwk6 W\Ho Wt+tƙ?|Y5MzG'?X8B0PbC?,ʚ3M^Uڨp B4=Y.rBw*O%g"IX;.#33m=| /teIlQ'آ=.>l$ ":5Ӊ @daC0I;i9Z $B)_5'/Aq?HƉWMhP`c9T\;" *͆"·}w\nyY)=xoiޱ# d5$JG:vw_s)' OWY`Tr>Τw2';O[e + E~C D_؏-(k١Ck_ óupxJq&@+LVV<3z6K x }긓:=(K<_Vu&KtX fRlnȏ!̄,#@u`T[u4Cjg4u%d>sZדb[ !|V| 8݇os uY;!uGj#3-[90tH U]@VW. "}2ӊF!ɞ)"1^x>oHI<5, J./5eh'sޛԝG0ҶnSpcd{w0/]!Jql-RuMTܗxAE4-А/,BC nJ  ?R$Hܗ 'M?H߀Glб ڲA# T4j~YQlwMGH? ,?3!^o#Eg@`6MP~835qR!Pv~ᩏ^Xڱ_ڪPLz *X|^}d#MM>k%ỷ83&qj,IƿeBBWj7qZZ;u.d,']9"* ,D>VW {rVyf3ؼ!R^ s02Rʥ!bּ?UԔp^ ژw'Ȃ߼.EuV<,Ks-*P,`]0`u^(.T^q\,|aJl&ϺS*~g_:ZDaݎ@ō8H -IBa0C+T+Jq8m^U}h&W1_WyE;Ԙ7&/yM~ ΌOK4Ӵ04Ш+kQE**ͅA``-$z6tA(zd/$Xmsn֩䴲EXY^K4ʲJķ s̹J5O ̚y]-;ђFV ɧOQa[+SK{R,hLDz޸Iqv-?q´[%ŠR4?XD?NMdKKO~35l'6ECsHu9BI%JmJW}F-\iRnw$W6lUY>erO",\ޟ5*؃([ W6)?B;AyWx[au-'RWȿ 55&A}9{o}- 5B{\OjOn#1S<٭v Ԓ!iVQ #"UKiz.еe ;t [``wSҢߗ ɰQB 3@z`qs .RUi|ذ!5gߋvKMIo Ž*%Q>q ɍve~m{9ڃWOo\6OO7 ]aYw&G^@Q6a.x}R!iƾ5e HYҙRbƂz]Re ӌ6זvT`%o"yxx,@uƖ1MjAՐV^no|\~*> ؋kٮ_NW'OCa]I_.a#c7235ОHƊ78cRH2 a7(>΁xUkvIdu٥  0 Q"!FiE8kڜO, c#f~P1{ar sгAЮTɾK7O-2bGil3b(a3W>q2j*aH=FJg#@R6a˶'&X=[غo>kh8`#pt&KJ<ܻ\\.Osiظ\]Wݐ}}x^%A6{UU=Ɓfjpi~X$矱u,$}o^kͩrő?6a~F"&s>0)Fr52/u UÄO4 v&qVDE0ekA|7_a?K4.a7ʅIy6j„=*{ix!wXF5Rr^h߿_Ȫd s1]}&߂կ7 HQMᅅ ֯ZJ9]*tn+:xw@}qq~-<\غYrV9C-UbԎ:ouȖTK-KқyWs i| 6h#;KcH):gH, h:&3<@N%x~5n o!T]/__D){@;]""]3sJD8>b/yr Xj\#kg6H]CgdW ^\8^kfD\5j naOT.:(`fG̾{awiYTo!P4.QNȓ(50SƄTm}z/}p!Ljk b )b< Q)QYkPt CCT'J+rupg{kz0'gQb3r0fZ7?źFcJ:~Z3~8[k}[/!~Goe-'{/nsY3%wcq'J%R孀d o9`RI{bafJ`3G|jAZ|e{!EyqjE֓WM!<տ[2  b pIS VS5S}X@1,mFWRN2眿 =xb\5 e"WLv;N}ֹNDQ(QLX"f|A=a,09`- # 0tCuND$+pVp(|z\ޡnzB~x[W,Lx33VqZf`siRqHʨ9.7r[57gKfCs#cN<=323lMFxWٶ΍ZC",jE}hj5 Y:6D,aHI}/_`lTrRw, jxDƥ6<}@iyia}6v6&uuȨ[ >ǷBbKK2T\[Qw5Е%)krxSfx;χD(SCSrxw'"ZQDC3!$y#S1a,F!W!>#ɬ7\hM$9KyZO¨Oay/@S۲ с/ӕ|BNJO("B\J,=E^t 0jN~%zQjbܽ<޶SpECwqv-RmB5_+1H?_j0)Ns I!R 5 l5#j+omA&':vb/&`3Kl+$yR˽1A%AM1DS"SGƑr6*$2F]o78:sM;5p\C7}싲q-+Fl crŜ N ~Wc>y$0fq.dX^#njZHtg7u F͜MҤDnwì[%!<9_m1so9%Xh\ /vlD}_ŃvN.j^}rrٳ?,jj&(-m;Rg  1;#7/bЩ}B s?] !{պC"Zޛ+ԬEB B!̺d/ݹ{A3cˡIvT/ffwTȬ#I )J]ObshYQjѡY9V =s |3JyzF 1\g7T'wE27,є@El?Wҷo=hn%01GvyچрtG+w,ɲX+fM7JKˢm>nLQsSjX2wX8}? A} W<"K>zsJAm%ߠNe[XIu'tqgOZKIn!XWey&-,R]1u֘<46j.VqXe-buz'a(=Ɲpga@r,#(o"muUlzjk9b=q5|>)P yڎ倿}H tߔ ~C aǦy>IJoŐEQ% ɤ07)6|(yե}BȦvsjhX$.8`9 |]*J):^#fюؙ_.z+ K*DdNLFO̻ jA4~<"P,Ts-)Cs v fvڴ(c" fR$~j1ĄEiꅓi%ATM@א `ꖰ:]wv\®(O(zfFeDVzN-[}ktJmncK]?Gu(Gٱb}4 L`:ٶ 0+bk$Nca]Jp5Gz r,K|%+RVb$gx w0oBI+)R9WbCP߸1mE}WE1d*w&zf\{}J{fK2R=Zjww53Eg}#+.Mڰb c|i!07Faꦷz!~t+fbpSsxV&u-C?`7ATr #pSsAܔ8*O|A79RbA $AV;reo>5ƭ68 X~y4[DwFڮF5PRM@h M"{dgʝ4Pf,˻&A}btLE}^(0RfRH!Z/NP#OŅK>|1k:%@dXA0*|X ?#ŤM Khm "6suOÞ 1~NNV:ƥ`Kl1uj6h1vtg0#sL=)X 93}h!_˰ˠ#]̃~Čw;v%#(\eH,|9CӋ`J?3ݑD}l2SlS} T0Mx%GuU?Iޭ") k'!~I"-S:_jgyֳK%-p jz!ѩ.IsQbID7:E@ywsͣ1 sW8cPfr`^,b~A%-#D+7_T Y,FT[OTCqVi'3>[ηϰbr=SMPCIEa9K6b,i:aá#z.Ug 'Hwy4P@si}/_l52\ 6*378Oֱz$%"Iq,S4|+rx; +l˫ gYp!!5w$'ut=ěʲmvKY~z9ؚ4hY):μr yRU%)T_Ɛ$>!<$:S"mdkᇔۀWВ[7Y ,\H,AC!)C@>̣\4 / # $ ٕX"QNG0u!$b[Y">9ј YڊXI͕æ? IވmY\M@v/2"nuk1_ԏRnՒ^&[ÑPWfP|>QoaC:d 0k\Y%r(Rö-9͇ K:͑[Om|QMuB(ni^I,@M+* Dve_+(Lߌ\c蚩Qkuve4pZe|`r -rIWޔYؾ[T x̾jf|1U֫JW(cۮԀ7T{4 jsna7dU[fޞgԳ 9)?GhԮSZy!HgDh3[M@vkO[^U#uYfr%s o.Vȑi #Z&_ofW',9TpR4f`wMM_/KZ յY8~N}DğaSnmvS4PY,+܈7͂8%p)x*_\ӣtqt j+4a)f+LPح=o8f6FP!V&OE܃k88qH%)d['arF Pq.%8~Goe7/N~kLAџZEv'G$ 8d]ޤ1 š4_cGb뱦]%$8vӋ=,֪S_H;6i%o~0B'ƺD3'RmmUs]gWūM Kt%(iYjXyyVDnލQPYQwAU\kxz\6p~rT>k;OeJ1OI{ćST< UrQ=@Z27B8tidܼaF Y Zm%(!ӨZ/,b=daEWdmjvҏSRuCl1RVt1xֽYdnK)>ilS EwBMR[:Lzޡ|P/@/ZA|;lolQ?I"Y\ JSQw߀&SoWYȄ@r6H;/$_* \Ljn:dcJp.f^SټJ sB _Q֘m, ou:%MmIY)F3N'en7+/Nw.#ʉЯmqwv) VY{7|u=^X nU'#pqCCz(⬭ZwM H8N5yЧ>_<8|h$q7ҏ)t@x1o0bt2W2l5쇭\HQ_P[26Ge0{6_,`@Hn6# z <qP-1=9zc!rՌ`RA}#nG`iiHSb"fGy?l9MkjiOV@,wr]jJ1A:HV,;j_v?-XT5pA$F珫3}zh,ghA*mr !T Fƻm91 ,ȵؔ`]A*! kg-Pp%sr#C(_y`%@II0gcGU4jF':,@8+ҭ7Kxz%MT+?}Gc@i9(}~s+蟶Ky \=ks YQsZ_[>< δhkb|{>?Txt/)6稿! beY H? 'G̀v Y3<|VG &,}{T)Kх9 ߝiEG߱lVf,m+1_vAe>@ɽC5,59̮KԎ0D qZ؝hwA\ Pzx^"_HQ$x+HfoGgMCn\l9"cK}B+ "^xvBmErbbx.O=٢j4L^*Ƭɮ"0.-UA~AɶmWJwwURgNQ;=/ʠR)7c1fNcZ7KB[rқuY q(ҏ$j?7a7*q'ϕ;F"j=@45Ѱ3&,]%Sc郎mk}[gt;/R\]dvLf&׸>Xlt.55CAh#oM\T׎k&ieDL=/S)ڠCs)&1{HA@#mֻ)wk##盧Z.պSb7wWSv?Qpˎğ$@kn֦פȿhG+~? nKX/|`тNy "mm_5Jt]-6(lpP9JP&(8)+= 3"O%El hYc2WDҐ+L$8~X36f3/p⬍%/1EdljU\E m"?CxfTU.wq5=:QIQYZo0[i 'se8ϠMV+ :u΍[&Eq~#h.A[c蔩4pXFGds-H3ȤKw&s~}ӌ[5ww{Z3仇Rwv{c3֮bžtZ XEr!ˬ:^?.{/mݓ$D~ (5۞p鿉d,K5/J&ވPk FNyϖMmkrt):6YT6R*hY ٻJ$ 6bߔ8V=+ |DsR|Є=*#WdߏZQ)v5K"ZR%9I,eH )B%IzUVЧf2U]#-'hK8dӷFl6kFRK~+lK"&eMgXqDbZS ⍻zOjlgM`]f`4 =-EE=4Ⱦ1- '}~$麉(*~QbZQpyy<|N [wԂQ QShX0՜KqO65u|ZH+S~vz4r*`\ɬ6(Mt53_|˔[>{?ek \E]h&>|-l&Ҋ[u(#v%wGҖ"%^-ێR+׼*d{z^T#mbd4+u^g=tp&Yo`C7کpKhkyGa1-G1a/טpas`'aр$5,̔X@@ݶ+B#HjLܦ:rroݍށ`4\V#L}fq:vDe4SCd>3t1Y^F]a< 382-o"QiKfQڸVVZj >~>cyj5Rh-O)l'DtX L mz`O,VG$U%ҡ 0"#22g~}O:I4 ڻ H>ް_3v SuЌcj#[/߻,a3IU- dN3Fe:f9GImKp*NW{X4H'Q_"m,qQBbw9aU?wн:#< `\0f,OFG M3vGcUxOZ ca㟍2 &` a:O0lK ΅VU{i1#]6˥BW s]:+wY Jrg_)l1)3*dmqn+96* BO y4Qev\rLX,ϋI,khTv$ylG%{F}@0T%+6阂DVVYN}wL3ڃıliL@Mf3 £#@ gּ+kFJ}sf;LQqC듩+Yp$ Q`pAM.H(`BS^377O_ľEdשm"C l8p;Xj%>7{ =N[VznJ _Ea'HO*C;+#JDtȼCxSF*YuvwH1U,0-6罙W$;P+/I/ U-ϲ;vR=A nV&GOEt<6yy>f%%j+`LmسTYl{CHI4*Bnh4xBqj^U&Z*rĉ+p%I Ijzy4a}$ȵufKNWc r'9-*xO1k[= WM$;ף$\a1%VFj@Dj^'ɑtMpHm֞WJ6Gr9h[th>(gd6 0>M^gLQ6iʛ،O)`m,;gC*RMH-]|"EE80slҕWFp*,NhKZ$A-N)r{/|(CC6JDDd T羵UUOfQc|cf>mIث#ܞ<+ʹ] v'(k9AQi8Ƒ<6 M**Ei /YF31foER?R-Jb P?Z<gڐʛEف+ uz@FoFĢA2wx$e5:;y!k- J>1Ik5LsïNuOvǺ"DaOJ7hҔhw{Q漖?D{Uao[[ ⚪7Yt{֌v#Ջ+RZ7+ycg=X&ׂ̻6ޟ~sou)s+{+B04L]u 26}rvH?0I  )H$ "uCha`H}/tKܫD/])+RB@&8*ۊv/ <l=(x3B-a c\1KՉ4Ւ=vZU@btGOXzJEFMiq\+NVӪ=vD7hwo|%#F+%c 9) 'zUEՅt?6F}Nq\µ'c?0S~5LA@˧&}sV勰*?2 omrV9Q雅Ҟ櫄Z33.3 h z+ #C"&p"cHޣV(7Ëk9(Bg\C5_ &Q3?m G@7\xupGw\H I58PGȃzM'helZ:\~+e]8Yh@:?L&" ʛ-5"kpu'i 0g8GI.Ɵ)kaŗG2Pv`Ii~F^EY0wyxg%+w.0"yI֠0J}Iߏ]@:r-kԽ`Rwv[Q\W Jh_MY?x(| 8Y1{O2`&1Kdϒ۔.Lg EK^[ r#pKqpNU춶dP#7x-kݧ:͹|EON},NG\(6`$I5i?5sQd갵lUL>qt͸>H_wl tv2z:E{:~^bBR% (j?wjä̓GiOP'30RNd䓐S9$bD3x7aLаXֿ}AhHg^I82h-Q?̶ZB Ehlm_7T"TW~Qb[9QȘo,c=]gٕ"f \.gjsT5%#b? ^vn{JF4jmB_pN~y'ԇ\C2Z&GjP/%{]vl|2Z$(>kk,_`EߨdHR>aa]z ml^;AHF_$jMP(wKȶ&C#.iaj%&kDUM@P8o{0U~4#QL= S*k# >xg֘ 'I4Cm@и!J.*lz^"Q?xvE6)|j`o9ّAET4Ra[G2ֻ|R( Xw kHS#./CνL.gss/\ 3~b7C!퇏ȉ1Un鈚+,GWNՋm9(3L9ߋ- +Khuy4YԴ 9 dž%F6\c*ܜH q"s~HzYC{*ݣz\(.qfB`)0!ĵY$Q9p֯{~9X@ UTnq/ 5#i%UjJ8϶Y0T*hg'Xд3ѱzN49}T^d p\B^EZڿ&R|*-?ؾ3u~kq72P8 +nUX::@cЙӯypz,- FMζL8}^]jjŊ ch, QVOz(c'QW0c$')Q;7aվs?=!Ӛxt/Vie6WFҪCHcG6t)poj[4b n@0P8fxsPE?*Ir&ژTVχ3 >73^ڷ %iC.D_!4E^XLcuo MC~X_ 4 \Hw?/IwAĈXԠsjR' Bc+PiͰБՙχ2q#L3k)X$9H0)nΧW6zv<1|1uO /,\˞j4:<^h7n{=jUYoӻaW+4;8@>GYȈK'( Q`6BlFO>մݫ͌ sx^$=i#^db@-؞Unk*H=~p7"(B0Ȫ)1m/98u w,ؕSퟆ֖ [TTa,B0͂GtK!qR+4;2omЦFyu@W$!!)FPGp<0G `伨ݳG8rV!݄ޫc]`XύA bTūaxTaz g059ҿoUW|n :½ }0骸eI#7 @bq Pa<& }T'?] dykx3c\VUT?$vE*Wv@eE.owFp \琞}Ale)H!%3'v .`J. T]NB2 ޕe{Fc(mY_ZzJՃT]vr`XpIW-uohevy qt~e/]#Md1VrNiqH0Ao1`P @ f2h95s QQ@qII:sQ(u{4;FS8@]kl@oUt Y{f^ic┈ xO,T:ٽ%6WM,Z)-TߗU~ONGV { E3c$촒 k+;5̯+3q: 8Ȝl}_1_Md2'l ,dtKO*|B/]d҉ ݧf? {t%ҞD#!EP-@:"na6 P$еZ`mD._c%fkD>ÙG-tהdȓ:8SA%uKr <+˜m>}2A;6xl:f̱.jJ0)M8*,;ENS֥^|116ȣ£  G]!fq\ P?!-DMeTp+aA[XObŴ)@fdK)/!İ']8B4LIWMߦ~n3^M5+&o@ᰓJSM/ Je:X1z˞ *NԪ59Wn =3^4_jQmhwY__8iY ᚯ?aB6'-'qly b@2f=~t /YI+"F71mt^be~in='^Z@ ܡW}ճ#;yM&S(4_?1(9!odin1eI%*,x=<[;N[kN7CLäp&OQ,?n 7/ 'q}qDJ\z3N?ޟTqǔub%yN͂qќjkbP/50}oYBnSJ0n\&y>*3Pr:U.1X7I|(kکɴKa8^ZBσ5KZiX$(WS55UAѹmx-񟵛O5H.pEnRW(h&\opL~!q\wzgpNեÐo*hwx^2t3VO7Pj}e뗨yy{tND놏/v\!E6;-(W|kYF!) v{f4܏I?a)vWM)键: T-lJ>40yD; )I. {m#VGkoV-ҵ61V\tמ켵mtE~7e;zc2jV^6nw K/KrM>*\"甉K$tAu.};(H_Qh5 덎Y)4۹[*/ [8*Ytbub1r,1XtB-2j|<Oδ]qc\o<2|ٿկG&M{k]NzǑ_.\U 0 V"FM \W~OiRt#f^3gY?M%15B7Za

    p/8Bz@1 }1U3CVU+FģϦ|I6v`RiK5 U ]=^ð-M /qC9t㮃?j)$)-2:2 :5"|#cOwzUߩmity;S"pBm(2A/,-%6ț̲u|} f4H mA$MU{*jߧiʝ/Swj n\jmс[mXGKbذc|"@g:t>;x( \Bif!wZUbTkџԶꟽm *3T +;ie0WvΧب$#پ ?0? :]—rΝk`޹ҢG=  9i WVVWABmωkEᓾnҟo:7MRйcnU#:a iaG4O/'6RҁxxgDR6r .GY`Gpg2 etO.:' wo2E|5 )VQ]&QhWuKy7zQP:!++I!n+vk.WAd<AoceE>BV FW K~x=Q+t?nk$9vGzk׌+-z;幼$za4dAgl*\!Hea=tubk{fdsroA5eUZש.2r9__[~7^.~ |o](ڴWY>6Q"~504tgc[`uT%N92_)nsBi@bng^\xI1 'wy^*>CFn.iQ5g^o'UXc34.$A03uw&Kt解hkm#s ;(X'{Ud@uR@#C^xt!~3ūhF{3u>p=U*ydN␴TB'w^S6 KU"Z}c.L 7D6+A(7`aX(| ;RW^]a8|3@8EIl-+i| 4Me`HV* Ow ulqI6Rתo!sE+ݑ朿+hYI܂":l[[K=)\>D&\+.}smĺ2\xjp![Køi_V,4566|iJ`zOہ?әdc芠eZVƃQzќCt0nܳXZzs%USRvYaÞjؿ5ȳ7:YѓsslۣިkfJ!rb/J͜ B G0*ѓʮoür7GuO+ #CV]t˵H 惛pn^yL b|\/A@x hV 2h/A"6פ/nS }ruF 5ɳ{:S!jy1伬C#G ,51BdPP~2Ͻ(5e˪x6n TTL>d ;0$_$d r"Ի|pP8f0eMc ?Yܷhp 4:!{ZȾadu fMۜ@54V}C &E❀~Ŏ?& PVa4߈epD8' l^ZJ]ӧCpm&~.Zx#16=u>(5RPeB&C!8%g![ f'勱VM9mwiZZpX\uD(0?i?i%j)u`cZm@j9jWMr 2a~w|I67~lq\N nWa:<25ԑX?vd3 seW]++8s܈(9&{HoWyO8_}EPytaZ(*.u{Fln`65>%%IY"׼ Kԧس0@O"L]hOW$i3Gֆ4sS\3WgZ(?z*iR-j גs J,b^[QqUyh9` ? [Y- 9,8XOEhb,k}쀜͉iʅm3M^f /x-1{4$kqb+HzO5TX2'R0IBQg/lڼ?@4}Ӡ٪)SJ{5Zr߈7ꅺb!D% 2Dn{v-R5e:"!!2oSrͳ@&- ~٩7S] -&'0/Q2m.8Nd[]uEjBIֶ]ٌ V4z0sR+96n>OǺoQ)c~.dzdJvwr/?'- O]9x3r {[doD:ɖ#{+ѶFW\*ߡL1dzǍ>%#V$o( Y"Op%4F"UYC@* T*h_ئj􄛣C+?Мd2[]2x2wB14Y4mae3WW:Hkm)a^fjX|l^/}nAl@NKdwi"ni4C8D}AxV$e}&5.>-Z*y\ [j[:h?0vnPTrp3qUnZOw^Da 8|2d.he!  d6 BєZC⯾ngH+TS*qrW aa.V/$!eJND2v~[8ؚZfB"ւ1 :r\LouLƦF[mH1[U.2`q-w E]L둊q]iJ:{G@(hqԱ~)&~6ifh~ r/KsX l<10cDj ͺ$gDjåG* L `bxl*$ƅdGGFJ4Ǭҟ}V `_#'eHCzr#G\BEWofT-\֣V(A*M`<^g 9 `=gyVQAqM(PVBx0 ѐS_? )`Ӥ[nDV: 70Z1x_/@5#_sܢ*AZav <3hW|1y{+C-gw`Q/bguEO殱4[ܶ%`51$c QA=i$8/v;$؈w"Ca26t.ve@`5`k5Y0co%=#XQ5'v fl&mXuvDC }#mf%5/dD$[eW^}KLh瘕g>?F6u,jno ԩ΂ /=1^M ( +P>m/SX:ȷPcg6kR&p|yٟ>?&zZ GmqNx>G4F!gdK6^qr_[Bg4BLJr-xT4e2B4R*! 1s"f 8Nzw8^Z/s7bA7:f[~#s0jV~p>m͟`O)Tx:!w@=wئ?8PH,?h.}(A $;m.[+sy$vDJ DGIVuL̺4FsUxņ x3ʃMhTO_A_^J¦3Mгң;A 4cuCzr 46vO%3 3'5&g͝;bkωQ1S: u5'/qY?aeቌjQT!9 {2@vSo0+}%߂/-~΄  gsNYʂ)E]*WlʆH]}AUҡEE/ -B#}(/X\o2G,Kw_e4EY4rm2d᡿ttĹSUiv}wԬIƥ5fPnMj9z_UDvJJy,5oAkc=HE185%NCrw³hRdh8s:!ќ@<.o*lXbk~ǹ"`qT;@P^-Jna45WrkשSx=(3 9ʮ S%Χυ25Y2?.[fiԙ)kZVn8HEI:\[&*9ZT$^*[J"VWq^L~hyLMg7"akKc4pJW}5 b(;h՟BǓI2 ?lgYyt0<SƜg,,GxÍON4Z4>UL"EeπazGݠ HU2x9CE聚4`UlB۔F;z-R⺦6f.als#s}&lD=@j47Em2/;s,5s#Itx!8f~1LMn+="pC52Q}?"50Mj9vJk,\ -FtM Ob]\U;sR˟OZI:#Xw}\@W/{e vSxޣ-}=+F_>g z^ r=z:@ ɧM(y2N+Ɖqb3)NɖUWnBGF׮7aq,|qϟWȽHP&tp5OrA/n_ 9ܼJ/RBȻE* .+޻O`kP"Qiv/L;V[?f}&.I;y_LlU+v8Q]vwVՎq$HE˧(No9M8),<3mbyi&l;N H阸)-_DBঌ}(lCc]dκ[vAM?LFIǧaUB^YBvDxN*΃` ,w'Iolڑo"*j_x*y܄r5N1U%o0QI?ڤB)O@p'=07RPذiEhW;r:Zܤf+;sO!lp&6Ý;(Hƽ +-jjw/]4U;YRbBեՖx^ ܝݏ|fUCJRq& hA#唼 t@-lHSjL JRvlre"}5#.b@2xhDXR?%(Bܤ[Yi2~1{<'OlmI ލ1C㵛_҈tKJֿ/oDǒHyE#k,{j/yP>&=1%6>iw"lv0~b)'epk p5eqڤ)yA c"4];vFfFE}yaoE\2(Y3h7L6&~f&z`Bb]|r۾ʃT(kLi=?JXJ`tܴz-WYyʿe ~4Si{) .9)6J8me#8/eR7ΣvC 7xF|hPD7DgBNtoTFhuwH]m/ߔeOiKJuyF@>{[d >җQ:P(4 x۸&,/ry MG}kn :R59Bp?_m̏'M6zt^GFr0%ݵq.-^|uz%l3>|fR>%HIvC{_'oe)洛h˾"Z (VU OHPv#Xe{)x=6EN]rq\JLs]ABثVkyiͨ>?  Ag'n g\뽶ռh*Q)f;ԦR 9XU9()\bO(jWI|JnM$KX:q}&)͟ofFPG<.J:#oeܮ!c9a.Pq[\5 Bif|O$ }-Ϸm"O[5}%}VEг 9D޷KBv_V>ZrTtྻ I Rk]2cl^C:BBMݽ: ׫)kL4Y@Au#wX-/ Љ[ݪfm&v/8JQֳUfP?o ܋gfNYmuAjկXAGd$T|o#\ VI1AIrE BM|- 7o!*Bևt,*$M)ex,=pz5|hXa(|'^~}+yWuKޜb?;ٓ?05W[D~B!<Ȅڝ>_̾>MKm@Ưa,ݭBJ^|#AG@@e{[)3 9 >È䉷 Ÿu7 ` CgTB$*<69Q|F9 8JpY2F:t֬ˈ8A0ջHOz2ˌhK r_2tV]/qi.  5(۹s}̯v̭o^(nazR6jp)]Cr:FgnL'__Q*zvy 9alqށg[B qOTa5 1_z:1;E+2M*x :RT  {SQۉhy43 m6k5^8*h4Ɔ9*dQ4 ݢN I=ϙf`;Qy3v9 z- Jأ}  DOgo&tw4eWIv|X}wlh3v<[l"*n6* -dG^zY5uQ}g1>( 7ƏxBYDoҚqj.DOlX7Vwo٥f~rNZ$y(C nMtAr~Si2#Swh]=KV5-XVr=EjJV7FAmldrh t|ݩgU|2c&DyYΔ:W09y+t3 1Ir=^m Wl}';sx1ʥ"2̌KL' IʺcEbzw8CڹXD"ӌeoC20/"9*g)@! ~R`AW`og}*`.˽vpGIU! 4o]s.2K.g[*)ބ5ȱ^E t]aQۙ$X<ьAnW@X[;6$/$6k0DRZmWJuDb&7?$OҴޖXxo@&;rc%G9i(f{ݎfFo*0mN }q3i " ];Lg;RoɹuiS-!זm@9:(/X3T0Z4Zx0harovE_e[{c2[ O|eˡvk#f>Gc&ZcrY1cKJ ?S14*5%Jʱz ^E$ ef)Jh IKΑ-nQ^H]1Η65H T,Pq\M^zKbt)!Y\~S9(F}0)\ԁ~fT L\1\-Ňu`%*4; ^AUˤ KپcmGbOCp -w4"@fkؚWTUk;憧#dZ?S)3PjmѮvqE25lrC~^u F*/jri}h DݾQߺ|5s8a)FRta? ݭR3`~އ?AJ8T4ɝ`&piPzNʣ&T8ڰ_AS(ĂDO'L.*d?qIrQ.OP1|r!tT0GW%̘Yh<8SM4ep5øi`saсK~0j <7#]>FNumyphtk'mƢAVd@CnjDt/ ~?oVHڗM͌~m NH ӊ/3]B2p es ճI˙Lղ8 >y+v0@5ILC% yUdVHL [pQ@Z5hg߲-3M WE:XVԫV)VwEFjCh:;~e% J'ϱPK󡁲dWؖU|6k :5)&i&{(g/-$XDaDZ.48f#Ok~,+7BcE&Z?/ @sչsӕ%o(2~*l@W(u6ȻD} =fkN`l n!~o aɇ}[`z -v-Yyj&[ELX<"3CSPC-BlDJE̶{{mCߑdkz TJL0,`\-/4 !<OO-h…-X%xo?bz'?+H'yCzJ5}J9Rf1hȫ~0(>Z=gq3^#LKҍ+m_F%R4m ^H8,l$ySjv&KV9KXW#Y2Suȥ3 TWע tv}| l"E9^o\ɮ my-)3SeG%h5賑bZ& "9j~j"ol+A;S2 #f5tɫ%$$kSp;@qPJ- ((VI VO_PJ q0. <"e6 Aڳ 6#XLmtq29IE>O^cPc`BMӞw H<. a>Ui c-4q2 y:n($ZnOD \*/bBKH{C9K-k>0 Vvف-%H`!Y_ ZSm pUB x jGAl/Y!QrXڧr3ۺ0R|Z63Pg;Dpm#0o@YnP7X<;cvӚ_<^, 바Ha'(G6 c%*NYT5|1O瀽c]!LC_Ǒ ҬBo"r(Rgc.@?~b10ShچhG2?K=N,4w;>n<2 U 2ǝ@WFf3xVS.e/n"l`G$ORą]9{Cg Re%꩸qJn$9Tàʔjoka&ڣ4fm|k}Yv-,cp^Nc1| ?)NnȱU' ]/'YlI? ()㚉z9@0.&;tL3AdR]lʩ}̺1&1wT< 3|m7B >C7 #"` /#^cL24ϐvNXv%^8;4I3qQY q,KLchdejTǓL t<ݚ`.%E"}=ԝMF]Mטh iC-ٸkco0ɛ lnRT|OMXR|GW,_]h&i*OC!K[ u㘕ZO.z>-[(޶4)U,&:|w ןe*gD'gT9~=: k1C?ؑDZ\eF\ѵ g^6HI5#P'@!}&Ģ8wƝm&B~KRݫ, dLY!m1_xb~:YwJO9K}N%lW/1Q&Wz\'SQPasTDx&3ĔW+M ӹ7WQK>`Vn#=e##67Kģm ü ;?/Ԅp0ft-ʕrh@P[:m ~N,~ī'*3-<\xZX\aTn9К_͋ymfRƳ) 7&7*,@;܋eFڦ|=8B-aj`[=pR?&lCm '˧YcϬWB=S=6M.yQ"iU^ޢ^2Sy4fL3u {Iux\O ~ 0 (#Z*K|/D<!$stn*^Ƿ/x.Od!LgzPX <΢uB8s+7vTD*Ev5 F3sotr廊/dc&O>~RxyjkW?i Ð#Yk\ SeС̷Z* kcn֢z!_DRO/xZ7|OzKp(y\),K.(HBGXv ;#Oim MHP*5ӧ KvwT9?vTE; xšqk=̹T0񡰴XȀݦz\ǛHMb zTgc"Fu{=2 >pR'GG!v+ͼ(!ѣ4$`SPʄaOhE \1K5؅r[ 7f&1Jj6vSWV\@ ;&~bVzT7sT:zgsVvW<9!AovA*4'DCώd~GeerKc0hf ?cԊN\4\ŵö4T "B$"Y r#e|W)`M@:lxhg:jtxBWRA0+B[cCY gT)w7!Z|kZcEo<03AscT@%p$jCqP;)})ٯg 25P3ɯ`@iEZku ;pP]S<ٹ SB4 &xC_B fY5ƸsM\ȯ%֨~ s%M/AhDWH(;-OOx(cCc)bWW??z,e?ta5~54%O5:;hHs}9KAWWjmSx ?!by ?RxCoB$n\O*53}^=т] 'ԦW# ZMNEvB,no^'&oqqAuEJ VYטdx n'l*'J㧌_H32V&]TU9:=Sd<]ߣ ,?aASe" )D4K l=d'u*:Mm"woYcvFS& j+P3mvح`r|xχ~SD}CmSz\~f!&[|KO0aМN8N(Mzv}٤QW$rɑ耄 Czx׬4,&1zHb甆~ő}!xS-?Ь|R[\QmKiU˗F_^tg%qop"ޒLGsbdZwn4E9m{ .Wce>ٮ4$ItCl&d# [3D$3h]dbwHe尙s5MJ‡ kŒ <Ğ&vzpV1Gm޳8V5NxH1Ny'?BwL- Fwbbh XS72ơ i| rQFPBB5\]uZzj8%xꂺ*B_4|xz$/*q`N}tɮճ\) `%nMgqZOm85hzR)D%%@vCTh(=gc^cѳi#hb[ǼGQ[&!G n28EMđ ?0v8u MIv|3"[խ==Ā}ǏCz̺\BXZ6r M|O@ 3i(n1UpP Zq\c膥Vb#mAط!߆KyQ㙾iޟLY e }Ss'sU5m?"Ϭ/y?rK5 ̞9x ;,Y~w؂Nh\},RH_dRhtflpF(f@w" {7ٲ$/׶|ABdh}yAوى.|I.;`L*/ rlJ ʼs0e3qtY-xO!;vR~fi3'Η!),C~Z C qmc^S< XFMlrߏT+~CRs۲@Ղ%^d!Рul[2hb$F=cC[cD>ֈnJ2#r{"N`ִR[:gd躟m䭡[>tlw {LʳL+`3`wޅDu`oڟ;'wk@t8!`r})zt_\J~IaU/E fFT5)e6Ww`t52cѰϔaq1bm@m'?~X9tPϝR3qAA% #2kmH g֢1C(c'UWjx#*ĨZ%DXgB1Bmݦn0\})@!R.RʮV6?oh{JO%vwy9#-(ڞKX_C.ˣxbΘ2WGUݫ}p)~LEB'<3hjN68Rr Uؒ nlvBTC(8TMA 0қA?E@$e aǝՓ&!(9}EGUrYɦz i*Rͳ~kPRU'}פBz?Wuj]x B_VNh> 2QNL|X FATzz7K Sb}Cn% 6nEZrC }wB^ϸV܁l,xREC0Q%{~G[?9f&gv~eNWs{7o  rX_ o+dJ`-<,;RԘ| 7ݰFD/-ŒrrJܭ[2 m(C]raA< +3QIQw`aΝΊЂt3f RvD6?q^xp \kb~ t7O ثB .iNy٢|aGUU9WIK:K1e5TJDY3?Mnp}9#k@nc\ޮagL/kyµ%eW z/jzsn@@w3F&?EsK ]\ϨZZ°s:tI0r/6Y7:Os6Hq"ҧVƒ@f84&F3P]o&9h_vz` pj58S%Mgv)v2{` u;[ &-¸@ OՄN|cN<^%o̤Յ)*w~ )G[N,lWTJnV:C^\ee%`dKjE5FVT4:}\`?0Z#I6O_W=~)ĀD4;BmT4@cpQBI w:DN '3b%Y,Tल|Ckp'`͒uሴT½@VDVtF%rdh]lrmӄ()9c!MLjÿ>Xձޔ]z:GdX, GX+[aR%/DӮ\{`!m?yR;CRmZR,Do1řTظpki^"H޻ #ʧܡڌXRC'Dիr|Gol#D/<<eXv_$JN@Z<b=gI{ՏQ 'GROYw!9qCYU{xs`Vlp* ̲1S<-h_h≲ޡo$PZ]bxBa,c9 -W$AiZ :4?sz8Dy)K!q]+9jX%mmP.[, =G{]:.`wmGTqlR-HK@plN<4%ĝ{|̍;Y-wmzeks2=EfaԪU60! i+x%RX.cz;;4u[.\H!c{rT4K]ylHk)<lx2;%]MMplYD%xLbLn g%zJ\t_nAb|3کг̚ݶ ͞gF=6~sd/̈́:qIK!+I(݈2KUOiMn}eF-XmWjfB_u^z+4*[b[7{A.7l~,-D;O)񨯷} zb{ǩ^ jP_ ҉ZLZ DZ{m=yWug]2dE=yܞ Π 4̂X@zjy^CbINF! mJ|j8.RTO Q" {tW''B%?.PYܟےR'%@ d?vRp6EZ+9"ޕtm(b6 ФƲmAW\8"qX1S[Hԏl ~NGh8wUb;tk >I>QR4v{hzfse+E,lHU'C.:RI'fkup=: ENrH;xx2t3)8{ijð_vBU[|p2+bnw`{X_Ѵ'aDNw˽W' |%юK 2Vƣaٟ_}fTPvt r r{1(759/jdӐh4 .J<`ּêJ֣\yPid{I ^E%>~ͳ)Ʉ'9?0`{V R4gΥalIMgt @X$EꫩEZlBT?&qtA hy^(3`.8-򤟧OQN=T3d&&5<2i`g`E#0{"Y}_5~%~!\g ?zYyog L[VI"=b5p߯ bIFUNގ~J|4uJ"m4RX۠K2 S^#QbeA*Üރ2YlHЅ} ?('ui.NGͲW4 8c! vR*㭯(i.})Ap'/Ǯ BPLEt̂,1EDN }biΈ) гQ5(MQUi<87S`x;<¡'aC2Kc7@BQ^]'uFUeHriw+*^Gz*Cnk ٴ/Zx w SLrj6\_˟$@x,1j Fm 0ZwFVP>e85i+]pvؐ0$=HwXl rQyѝeAY[{67,~U6вI2;^NuTg$$ciݢ =+?͝vR|OR\IfSfs e9Q {E 5l; fiK狒j5 l6Lx`e815قbwL3IMLn@ "V?Qȼݫb݉V+9tUnvС߸;Q|}[26r4{OyQ&; uOxpgdP|45nok7g8)AV.؉ :' ƈ(DYKsr״V=߷gMޞ*(iq{eVX"?I,T81~Dm ˙SvY"##g01z'Tǒ]UX3YBbGȝO)}tܖʡpRci Se?-P6$feD9`1+]|>rԗ'kKMVy<-m/(Qsbrj,#ZzƦ4+cOTw1.QtJ֥sAVzE\2CR<4Yq^nIvM}V b,6nZEhKDKŧB l \Q8ݢ|%a 3C[MU-nZZ}KG .(Znf:S#+"=!Qv`D۽n /izd A IE5<&$p?1C@k5ԵiM#G5֥PhہZdiuJE9aʗLp HٺZzwN{~ a8ړU)pboU;>kCRm8q @o9%Aֵ@A&,J/3ŘvK&Bn(ƈb.10ݢ Գ:6K]:0tWyqβ}A͌ 1: ?i+ mxv39>qCCEf^W(u5͎yAFPhHtIǹ%8v J-HHm?],lM+ O3ԏ~7`sI>?P6\^;Wӯfޱ"fEÕr׳pjgP&'1Et 5(ApuwVVV)JN p',t>BcL.Sx-C.8YG~~"#]_c8N҆}[uXߏF6 P|e۠|3ըюg"^'K`L:D콲2ua"]fŰvpCjᾸ!H5yh8vӲksū(BAL/R%**xXù`\#&3V_+璳s8Wg=*MC6/C̊zϙVL_m4wE% tv'6lƫ-i6OL_d\x@,?)rɽb"-2o^Eh`VVc`b 7Ő nȗ'lVq(qʔYYX2B\ZQ3/xTz:0W3ΈFLHaa`\ H0PCm-֚IaB=v[ Pn>Q= ɐyZz!=~5֨VOV]}c.a>g.A|TоD8G@jtpP{+Ym>Z<4!&,ՓS^pp,{)}-L3L+A _Fah@?|m1]a^@- XtQAkw q) /! :~rT aOfc6, ?AZ][(B竤$!V I .;2ck[xs.xezް/qG88}]vO=-nP\j/#2S /^\[sN _keWSd,|8 r XY& ؖ{:b @sPzRA:~>w#v݆U.ԛ k,GzR?^ / = *-:;;#jw)i}0+K]nB+3J煹qk.48Ǜo8 o͒UM@HPEn6? .@ĎaWɨL8Vd#s^HIK0׏+`äJ`Ժd}-cn>-Kf? ؐおLjvыyi^aGqX6QZ<'Iqݍob -qӔhc*[LB^`L /}ڄDse 7R[v8;a/H# ovia~“Lި5͛.qe{Jţ]z/pry^'aK dTeمUІժu[6@HfCYKBëw`*TҚ،ȃ'pŋMݨ̋ -#!Q>HIAk3[9!r!ؽBiLn@А$ջ1g> φ:bѓ"َÅ8z5# sea|D]p6,Ϣ@_ XcjGb+q)?0nk˴@1X?;ԕYq)w` [ќwY^ߎ J}!;C{u=<]"iӗT xYD|Pj0s]d=mo+С٘HsK(sJth$v3fi Kgh_7Xܳwl9,"+D,c C"_ЎPmuDZl\订S(nWN֑S5CxC"vtXDZM 2g(cKHxVb,қHu;t5:KH^_1ġpZ_jI!"Z5>vꨫ)wAL^W_<> $֧D\'Pc{d,C>?}fJ=7W0K$XfAKv% #p]?QhN+PD_3lBId>:(s͑ Kz[" =+S gu/-$13$'R;-lN.'v)Axgح\=U$KYa+οb,m0}+q'i2kAa"Id`@ڸ?Q5?_Z$n/Q?f."bG^y[sFH-t.Ap>s>bl]Q!`r[Dn(Tc`mk f#6欓y6/mG0Kb7mgQ>?Y9]SfUEaF p\]8/!s]&W[,5Ğj\Ӷ uw{d7}([? `BMٻ3jU^QWs-,c| ӂ'Y٠J2@F;0rda dhP-~^@FOaW7ÑS, ('2;FUW2Ca!\}HJi{%u֮LgRd+wRZ:ҋ @O±7&QlmΛ$- %2M$o6@*,!#&t>ܺsJXY=(/"r>wVlEҺ Lо1P"p _"j*S6 "!_1PSe5Fre\ )ƚ`j}g>MɜP+P/i߄ºK?@ Yciykjc^֑J1vDDNtgTʙxg#1 tPf X}^ߍ#uE9^׉YWFnց}zkdd0a^Վ k}Ћ`c!4TDYm,{!a$.>r7B1k DwwQ#b9JBL;û[mɁgTnon+ - AW&ZS*b%^ן*t/ @ęo1B?I82hTg_=09VseoRyjǖ,YI |CZ]b~~A'S1wp Ѥ a`Z<ƒv\nd]9ϣuGeip nr흱}QŚp"O2eh+7e$f콴sAw.W~_ Xj{!3J'|9oaGvw~BM"qL|&H1$\Ac?R!G0Yf\V-0fB]h7.7_GWF-ޗV$J5f)36ś n"Z:#H`Ŧ7w<@cq~gޡ8E]k|t3'! S"q], -(>`򬱳pA\F-vY !k4/1)0r;nyW@7m(Fy[8};JPRylt[v96)f_~Ǻq@:'7 m/ P Q -9c "V2\e )/  6=/QTIxߜR 1H? :c$}&7i1('uG/iJjn?i9W1^^=0|k7t$\!X`ov|L)@ m|cMF/KhL&f3 /pi3?kHq? K!RF.9H E%1i̳7i6T[>!ɿküc`ִŠgʩ# I ҂'"^s-&W=pU0(uH&=:nHCEO&7vsD@l/ąQBt(,D6Z[X2N3F>:A* @ g aYZ0VmQS3q c[V"m[kޟ([K#:m5tDeoYbR("۳S~GTeM%V4lI]^rP+ھЍRO94q7(4rkpMua;t'7 Je!޺> 6Clsni}tM0Kicyfg9 m+1e3;wYz <Ȫ5]`f{Ҷw%2ZךVV2_F3OZ?q*}0EP"NՇ[& uC)yelAkxFQsyҵ AN7latu*V.Z#) !_,>T Mz;l.@pMi0]6sx7ȖTe>Ss{oQ?m*;iԜk$U=tUN ͊xz~ sIEö^>4H;OX e T X9MY犘)*pB6?]/n|R%f F ̇ņgߡT^}`WABmppԁL*)oj jS)hP8U#8oVMS'ju\#g[e)Ғ½adJᒒ@d0U-'ոat"džHwG5>FMY62{ذI2y|2σd:&bkG]1OT+*v o}TCo9e+SI_Bi^R}.[?˜=ߤ2`T $r P9PP~V0m)߻AuL:4,35zm;,6g$m߄6z4 %T0zKl߸~1BTuhC"vy(~Q9SU6^fV Z f]ьm9f/k9ҏ֩TwoQ/ Y%GG{e/оn@Z_v]{|{,(dYILO}V= s0o:UfRoUG m(b]3e´i3oP"Е,rQ`76o{ (ov($=Dph8 Pgy| T9oټ݌Im"#_|ZZK$2CMdϛ LgO`NOF93F±Ǡkiv3Ixⶉ(DB2 콦\ ̝4B)h+[°$a啟/M`<1a8vJyuf lR; oR)v %\W!oۭ;rfF+m}뽳_ZiɟljVeA^&!"epC$C[Qp>zLYr![0Hޘ{hFG$ TTk?5Ҍq BY VuvL*.ق1P>\ )T_ĈpJ{nVax mkRhrCIxX%Z`wK¡sFd{vihQf c]i2_`ʩh, vJ"WZq7z,M>yw]Ed[j-R{n;DOגovϼ18)JsҲsG\C[ØgY#eNS]Kj4ԽLQ#A[ʴ!218Z+gB93RTk0ObAH5/ TGDw H/5_fqS4M/Tڮ9fpx7k:'^pE08&'LBlJɹtHϻZG6m1  :6>|{UVŭ=R4E,؋AwvB9tF#6t_c#(k;>?eP`&o0a~Ț|יC, hBW5a3)x!8-ҿMj4OM eO8 #5Z#{ٚz"VBݕ `!h͍yj,\ޙK{+vQ^U},5&;ւ=b@/V^fbva1w mO"r Hvg~%eD&5עېMLР DuH5WDIWAȖٌ;!}}x$Ӑ_&kɈŹS_VZioo\ӛ%c 5G)W>QجSBiM?aA'y5Qf[2J\! D| 23ڲ n5]S;! K=TgN ack~%{ZmW%x '=̈v0pSյcGxi+V]=mdZc$ 0 c3bq%Û : &2]Gy֐Cr)U,W&T/m~gsOI a8;Yez+ALdZk1j2ѓnz0[͖T7z ԰}]Ff2FDT |g(cUժ`NzKe{niaQBN|9 2r,<]<0Td{Yؼ$\ JE}dM. d:zY4{o|sX;f\h<0[?\-tՄԏx3Y[À;̔Y.C~`M]P[Y$/J+dO> GJ!B10`Ny+ߚٚ[pノy#}Vq6v7~ "h*8D-v) NI+[y(EA}tIeN.w57`bN=ĢTa #KN\c?zFr"Ows#X>u̓ 7XAλUYf\k.Xa`I"}x}ӧWNmW%o%eCT;J.o"DL'VhF#Cē#DKc_aG-j۬@'N!BenpqPT =NFi%UǕANۃV̂OS0q4^R+Yx"wN>HK ɹ]˷3!d/gZ;Gi1O+tqs?{4~Ķ WqzzFսT;=j/ƫNbދel7[N lOU/~O$μ=r)5=d ϟJcMu+4;AG2h)aF$Tv N!>o%hI%js5)L2D~ZF lzchQRH _gLe$ZX)d.#=K=UG6/iek8?#h^)J=9X߻VhDhirU!^pDŎ6t(Z|:P8\C]şl^o8n/w-k(1 [<9WĹiϦY~Љ`]nh *w՟މEc 35A!oލMK xI&w;\`}:7Fs:m,bH0pb0!dLf/=iHс5r.F"{!dpS>$_:.m!"I@L߫ua ^:dV¶6͸p\/)'\]dMi:nBfZ{qem]]Tʂ`_J3rQj'oJpNLp_]Ω25 .2f#sV'[uELS7^ia3@ ]&.azq^K[+9{DЈ~ǽ pu&|5׿!3Bph]zO>8AZZF#GwP<߲U)s^X>օ~o+4f y2ޡ5Ү=>HǍX)uaߐY/Dnn!E/_G"m/Z bO>)ufFԟ, ,]i ja@Q+NAεxERSgmC܌„;V}ф}0 13IA2g7z>z,e:aU:AQ-bope.?: qeDFFf>p0 Q߈Daqݥe86-1uɟKΗa@|Bҧ:v2Jk0>JA^ + 'E5hࢃsS^jfE1 Iڽp﬒A:oPO/Bry 1_g[8ys*fÚEj U~7<ժ*|ʎ[Ө;s! cr[c94zVhknԋQ;`7ِ1,4Xf-V\ghz:|uj9T1+*K"D.W%dؔ_0͏:5ʿ~SywEXuj۝kQa 9nk.\8Xʲ.AXFQ D$:1 8?LJ&c|x$֟^4ĐTsYVXT #8҄ԴFs#Gp Q?Kaz$ 4j=[S;yӖF[No!_bC*rY7&Ͱt.t/oc",'i K$B>l=bךw/8iruA@?U1j^ =ǨnWo'mQgB,2"T;6f^H7?$3d"im*N]l.^}`}{B,_jhπRukSĊzk 6!*-fr,Zχ6J̌`Vֿd0̴%E~] ]? gzz8@@ՍHSY\0T1/1iJ6k(hK`\lkzcC^COd?FAp!azrlza ZW>~]dĶ* 0: WEu7ō%)+)suHP.Y0ʁî÷/G*$*^$Mm]HsXrkw]{ؘHE1N3R]y /0Ԯ@Ki5X/m?aP{|TDkJ~tn FYfXxc/F)ORGW(2°\;C siY칝JI,TJ#nWSYPD 0p5$=E0B-n: Kݼx[]E{},)"@ Tc2]EW' $xUDՀZS-OO-S]QK 6z\ДEar:䵩z3f| bμBƍ%Q~O>M_1 m@Kj!RWQx,2/8E@n"$OۜCJj+͛+|9}Mz5\y7j |!H'&`OiiF_S fkTa۹!Xs ͛f<Xtq[ <5 P&%/qaX6#ÕqiUK~ jG]f"~BQj7jiK6hԼKzax sOtqoZ̿F:(c?<=n~KWF$$ !1PNVbTy<]u}jf ?_2N懞rr-p.GO n5 >t:׷~(ZӌMIn%$L ([[{fGogX8RN^~ݲvWee~dJӊ͡rρWKG 0UO֙(S`6Q1wPg r]kbˣ%~1W"s vQgUwT<;G<>=zbN;#oS-8Ns)>^-u֤",CGp`yF4*h"8g9 ѥ:S nd{D}=xC*eDa ӱShq[qOW9:ČR ^jtSsK-K*.jKd}wn t"Oղ53RrPB!+&EՀK6ҨjIǾg{d]ʣ]kT&x8T;OJj,<]#(h2/Wd-#[n%.OY0Xi5%$K8n&\e R1]>?(IpdYQx+PcRIӵ=3_$h9: EMvj]ꇋK GEr5C0oPl0-n2g}vG>27Ytsc/=ⴽׇRp> _L~jXФ V:.:E3ReIkT˽"G -L,+wR7V' } Z|KKi2f*>rt:Qs7)q JI:Z\[")qjSjx~Ei 7LsIJKpn4d,TnKuj8[I)^{K G^AM R N]ChiU7_i : 3lmrac6τǔh`Y+Ԑ<%+VE33%և/IawA9 .lS,%\B C,֘dB8F?L&ٌMµCli8'>xKhL13w4PB)O)ÄSe79csuV@l%o\%W]q1~MHMI -SZJ1kJ-c/~ej JXٝflǐQA-ث*~ՋY  4 5X I -}\B| ǟֳ֚qsN)aːh_ֈ V|>ϓX(=p  U#\r7NQ9ۢRM4W'Pc}qDkʣ]C$\$5 fg ]t`;[t4%5M138{0dz W.EƜ#@NڻNՍ>y8x4x5. n8̊3/4pPI4)*6 +@~ >F Q1_3X@8/H>/,0 U^syfO{}=}v&ԈM$k@N]>oN-|4*An u܋ըIE3JखwwaL~gc/+һE.tE'~nSU 0OLfԴItŖod:{ԃ[aǭxvT'vWEDCau~gUIݺh=i DN9m˥.6Ck* L禅\;!L1o_\KXN^mhEq]FҲx=]H*CQgNePwJ!-T8BHrcϗPZkֈJtK5g=΅g: t04_-7_*% K? d<$Yq"n'Uɝok" &V6g{a hkeO4ǻGV b[b>O-$\qu~&F/Z׋?w fhx։PB/M`>o 5`~Η ܘOfTȿ/puO^)LoTB[T}*sgTš]|] Uw3Uwg!đj`Gz+pwp5TN쏙7t3)wwQݲj{;uM d~x`*r?p8ubPU[Z-+[=r,E{I>v7ʉ =n Gp?}|dWU]~rS<;; @Kс9#ILaғ.ׇuTcJG)7XѿF\j!4> 㐕e"el`F@W0yr$RRN߹>\`^L76k]l\Oˀk󕫚ça[\4z^9ӍA,mi,=vHa'M՜;Zoz C}gp/O"çupz%yϛD'tqR}Ɯ5 ɹwUфؓ/V]?HP-+c C6 SiAU8uBA*_ p2.}|乂D,6*NA[L/Dӌz)EswCq#J]5z1cP >ϵ}.]D/WWfMzcR0hE55%=[8l tDE? ]?R\[ ΁uPy1avjZ#HE{nqEtj(N_=ܰAb0SZ2^&ѩ L9s[jBZܢ#JDlJ˳G0l"FR+}oSz( EBB o-pǪye% 3;yd(tzґs3?-D: ߚ0=SʖZC#0[ڐ&Za8 V%0`[O2L  ?v-9^wYkߵYeNU bU6M _ڰxN[B8Vb m#G5Fq0toXl%8C]"NapQw(oS[_emM[E`Epk?gL8BQaZ_d }ՓoPԙ zX;Gӻ=!p_WyDlef|!J#=eBW8Yfu|.袐/۪.n<3eЃC p딉 *hAhfӏێȯ2d?E`GقbUAbuџSm^V:ޯ[ \HW9E]6ޠ#\ > BsZFL?GjKeԧ">h];/.ɲj >}g%c#A(=q\X+v)38Ïm?b>~(cLUx#hZ.#دv[~sj> 1HVv El iuʣɐk$ WRja\sNxRLYm E>^J2l 8++̒DwyCcA* V8qETVW,f5.~B+nk27¢W*?yƊXlhvX*Yn߆nk( B1 _&Fr$(E;HRمF/`+e]8@@w|k&o<4`Vd ɑCx3B/W ]n"LP.i(kE:Y?)ki @Za0υ EKVvqf*hK~=*]75A/fHTa"!Yڳ\0/{ǔr,fl'aX.qcgώL&VM`va[6تUWab`a)" #89QfO3d<:0*mjq(:"^2HZ,hGk4'޷}iz?MB^ kn2?7&MpYT!Ua{\\ٚ]G{u-ف8&YUƫ\}C31ƽ1> y1ޭ>{.`8jF4w]zw%?]9 j&w裧G;8ލ"&\'#P,pS'/5e;Z~[[h3wTm3U|^w}pls|~PXP+~ApziJ\N҉zopeAˢ򙞸{D8~m!4d4 n{^)wMgb= V|#,t.yRuDF2-_gPD1Aߛֳz!_2ޞbT.Ran "L(*ec64?Um-=БDz;=%v! l:Ƌ~/B8'*vB-Hm,'0 Hmߘ@ qB&a\qpJjRq,C ;[ E QtdT E*?} ՛O20Hx<9*S@%P"3EMAlTgVa,o_ÜHX'GugY "4R- S*a S|~ꓱ54fݚbtto^ȝ.龅>蠌oW(=H"7bwwwsVa ȇjJݣ+dY>*;#zY/}_"| "6U+XGǭ߿=V*"5mɨ.#5տQӽ1XVhvA\! 69AAJUi:#Vatj\[޶9Kj-/@}z\!4ҫ60& Զ.104M據"?!%)F0|HiBRm ptW_|c7$~vS Kg/TvOg130š1XpH }Tr&#!eo$9q_^}!䚬~GJ" o!7l,L'V`cHZmu(IͲ3R[4{I&6iGuU/A3PY}e"M~-XYg+OFBȋCIjӝE_^So15PBT:?)cR+['Ԋ$pHcOzA}Hz&yjZQyy*5Lz|OA,.Jw8  G T5aUbBbSoRC.PC6)ܲ,ΙV!I*,XS qFpqN&L 5{cTPD5YZu'%rJIPޱ7^H9rņB6s-2A\v[Uxԭ$/%@n1)B.1N\Ay΢gH E+dkNLlC;qcϨ)"3X!:y#ɒiFhRF`5Y'@]"(PŽsDjGaFV94w->ƙˎd5tc 0])O:z,AC#E_jLN5fcaQze[ذ`ԓZ{hŅ1_5𷥀UOQwNf*##+v+cBfCH.VY ifM9% L<p\!6#' eӡqJW#-p[|Al?v~bC#Xn:ʨ~q1X5SW.'VS ǻ܌rNVJ2?|G{pHm`%Bvwsx_<".HϦJFE*90v'<Ꝿxg3f)ӂi6%uw^0Oa [q*Ql*Sf=RMPc).[VT@j`v)6"VQ&,J.s<M-oˬ‹B)E7SA2b_~%`ᆿM Е?żn5NuHEUyTCvg>+rKzC0s|͘Lz :vK 3r]"34-/;,Mnuvïzj^pC|v6!9L ~d@HC$+k/-,_4)yRl 4*e2Ÿ&§=k܇Z1I'.?hfK' H;iIbg@e@*l‰ b'?3U ♵ k?i%vX<Ť~{ACn]$ϲ͎ X=YjB􃀼8pɅoH{-a%a>PӴ \۶co8AVrAmN\;8)J 4|,Q]p ;O~A Rl#ɨ}P}IBy?N< ts5Iר}/XXbv|]=4#Uup0Ɉjs 2Fq-ֻ o3mc>Ԡr!3Įڨ$ c IƜ7O+0/bj=d.Ŵڮ W?oӴ[a/.쉾ʗMGH,1 %fv%q>l/[Оvv<4!+ h4wZ2N0ApPM:j{_an;ڀ![,E|׷¦ 0NN& =DdGLy#L˖zjVJ6) ]hC|½w3KxɆ@ۋFPr\" eրp9p}v5IhRm՟jp:<)uZ0;0ѿdn@M JU@Y1coWA.:U,C^ot@D&mQpw1J+X|y`!l90?%U}sGH@/o@l2t5](,0?Ӡz6e<[o~qfpBG􉲣bxAv rzmÊS WXľ֡Ꮸp`2xA]%ײHX="Q;o^Fv0Kzc&ԓ 0MWgiYonjjHYi39򠨾(gx=Аw_lvw]ø"&Rܹœ/"4'Өm k??ùuA)B+L$]_T.7rĶ̺<7B~*qv';4|ܤg:-@?ZP= !`54prݽ nPu|t3Ad/Vx8_';0 DNrf] $r l\qj1uḂGG ty>M2'$ X,[!(ع9J #baS3N}%]βܭdk,H6<,lU~psOC>tTL8ԹC]qhv/9q$cj险=Z p>;71%S@m  kSWiA/ln.i`~^=l+0'F5t/ tLtY& aj$ KNlA&4}_! %Sp[7 ەZOI%p-?sHm~ u D qyoӑg[s0dnБ>: Pe#06ҳߋw+M+DJZ~vs H?OK0|—8I!g=̳tip~}7t3 Ecq?, Hǁe`TXDmX΃^K|h1xJ*,YS011q4G.L†v HSpFx{k X:ϼ0\}#S/D^y ֵT*}Y>QrO'dmkF/í%tI݇H@L nO<Mĝ[>F̽IED,[-S'9ZR_%q8_A,H_S P" C[ɻkC Mz½J 3k>-\O6 o<\i7wTaX`e;g&{MPTso;[c[T?=- 2Za[̫yE䊸Ќء_~9~GveO)oTGƎPfz+gҩv30(MSO*i o  ѯȸ`S^vRD( dڠ@Ky}oL_̒V7Qb>V,̛7*8")- 5#z9Ĝ)/cPD//mَ$r2(F~AL .9{j@ZKe_д&D)VVm; I:nגwm8RNT;%U`˃}8zƵs&` W:MlLϊ؄x%U~ϴ4-i-i1&Sw53#:}T_ ؠ6Qz;8fԥ@,'QZ 3pwRIÆwA?JcV뮋;Ќ=#whؼyP(ıhմoTn(9C'XJMGF|Í l?śf.gdF1"1Aϔm*3ܐka;G; A@kܤ8<>~UFhDT:gJ6d%Dfͳmi=;jpUJmᜉ%wӨ[np,]΁ƺ1-USbzFEMAG 쟪=Gy3$\~9PoaO݈oF:.-e.W'o{ 3.;}[Ւ<\?MmEG1 6GьFw Ըoq%P9W:`FhQ ~8f"oAOu]-ĩ)b(!un:C<|,iduJ sWR3iE(3ɵܵ?4}WN0E0g3nyU=D"p,dϽjfڝX|rڠd_9gyz](lsSe^9 D=b2 c1TyE/U?wtۉ\}5I9-ѵG_?~X:"ifXd`t&."Pôϥ/D8XıGoNU8u8UN Cvi\pбM4ii,\R5)ҊZT\-ufC5 @AqLvd=UZe̐m}ejT`SaN Vˉ.ؚDٰ4 )KmZxXHtS)|Uճ_}5{c}!bd'飬!ZɵѼvQ+%w4Vl<8NSoI9$7 $&\Y yUYE 94fUD u/f@OREQsЫ\k㞼ڮm{4 ڐ7 \լ^VS]I߳}JTxH借'Lk~R3{G"R!eaLoѥ/߃W[ż. TBѿ>⫮5#b=sg7N+ Y܄c@*&(P~9 ՇG ~)PܡEfvTKCZݓ~1Q"r9_^c_sZgmDyJKʱ\6yIr8PY߻ Xʽ`:`FTGՆ+ٞ}]%bD]71 "akyDK`YpGӏ}5nO wk~+7/dH kLh@#q+n=^4Ha.U+>/e\wEx$8.Ʃ(L}i{y5 uѩ+}y & sySI.6sv3S>slb=n5CtR%4W[-$ax)hfb.LooѺ-̷tkp-ۿ,<'6@ QjߍGNAތ]"U QMrTCYivs=Pנl4E:-fRJ%\@"_Cg?YڈWA;u9GSUO8OX8ИkӅь]3sG OijX_cmz׊$LHFsY-s$=c~&CGhW sdH4 6@s,NJhܔpt6;BHnپۧ aa1 kV w緸3WIOߟbe|p;K F*!/ >~ѿ#u`Mp W:(~cτlGHS~2Izd/O@ܷl˝w>#;! ?{q7VDԯ֝}BP| Dߌi 9h7 i:n[ 1bB> cO>vٍfu /X"Uet26_ŷⴃӯ&PM 2ZE.4 p[F;4:U*`$ edKjZ>2'OfԃD^Y&ɩ"ϵ#H3xuJXȸ=p%oL(:*![x ,TۼoPj>Wm c"iIDizFhMg(+d!(AVgRH>T -X]c jTnjgqBW5F43qԟ$Q$v~ЁP̛bݪ-uƍ]aG|uPH:C?ESFՠq%b5Y?ye`]9-+Cb*cbshN[^ MP{fw_A w'υ;MZ(&.gF V'DͲJf$v ȾLHXŗrGyC0mFjr!ݼQU!:x}TN螚q\-K*ZhݱHvDZJ' #Q? Y?AH|P%gx4MFę48 _Z4 Ƈ*SY",\ϛ]q섛5']VM+:!s@xzӢXttR3o 4lRsVϿ_GÏaLfj 84?^'ɫAz*D4{?:G۽l?/tc{dYYjKI\1gZEk8Cԙy"0LdOk34vHo@Fk<"($.E{> 6~IKx(X$PmE}sn ?P!)(M=!$YZ\Xv{č#O<i6D1Eܯy_4\8!tR2;]$}bڟr}[L"F˾~VB"&.5aDcM}T-&fZqA3o'XCy"k]G ofbޣ4QUE7gp3X]Pʖ-X~vOn5r(wm euu+qկO[ׂAYS4'H4ށˠ$\wu`3`[-=5wȸkğԿ,RƯMFc@K 3LEic@ %ʽ*Y,*\T$ABқPP-K=YR@mr*ul=9<3U=o4 ]1răN쉓`_u hSyѿ}=;ӶP`6(W4dJXT9.W-MqXuMz˙ pn&GF/6>,_Kr@hBtS! [d^V" ?tEHnz .ó a.cDG֝@!P^.1J,/lMR-j٢1G@ΔJ1[] ^S]R/IAom}c&Pz!ZSR޸*2:\P3q{wL;fm%E7@HO?/DNVVuȎHC2zN/)~LJ.d?dokqe?Ua+U!>ړ<$K[̰N̉!&\mIҊDJ!\ ͤ r UU(ߦy?t3iB袡S=`΄WE f/Ԑ~8/I.s;;MPm⥾o1{oI+N#z Tv>0LH!?*-phv6q._c  QeЩwl^@oEYJ~tY ɬhm +2D59b]ey~#Rn /bK'UfHGT~K'R=`,w_v*P>r$1UQZDq-gHK) ,?(γ(e>_W 4#;*B TLr7EBGq7H1_$i7yf#k:=^,uz0QSj寝*f|]8h>TrLMc}Oz# HcAB -PHBfG6IwocL%lhŰ2$MaY O9*f)OɯâiwwOs? B0TbW!Z'ƶ?CM6$zvP%$)~&i&,8J+?kyj"׆pfžs0=,})-OOBYܽ6y[87| 5N9~[ c(µ9Y#I6ϓB]h:2q#c;N#MROE> Co^%=\ߢLwDBqW"XM4cNGZe#Y)O S4Ov줻+ȱY}Z!uaP r];ҤDsۛ|#T$.N6>3Ƥ2`δ®"%*SGa"XsuIz-0 UNذm}cn `#f1,oE;\Xm;J"]VJ+v5HcrdoV)*Ql{ [UʴE)0Շ#Uݨr)Rk+OEA!)0A1R9Q? DArnv₿JVE7HsVO L_Jm)BZa ZEkVWtg(hu45N@TぐXz=k3drM?L; χܖI-9[1AtgmGNyGb.s˯Φ8gM琦KR.ں˳2vr;R:ATZ%MR@t卿bqGx}6/_IR ڊ+7BM$= iSwE&ԓ&*x9<f4W!V6pz{Fa5aLP o:fZrIΌ,8)i*!]n}\j-n<ޅz&F?A@opx+1eej3''? 1Z,852qX {Ccu4b8Jc~+6I͐3c$An9 z r,&ȳ&Q:6A  5fp'^n3S@?a 'S&tɐT9~0r04 ΈYDcŋRB=?^[wޏ$t+_[P<5<6v+"3V[T[O㾒 sT E4EУ&sTL!/\C-DOFpU5͐B};0q/%g:=O~SN!}{^1<.a`p^ 2O_5 ?F_GKT=~0x6i*6UR)R|{ryf,^zM埕yi&g(8O'}d&|q]">dZRTu[&:/ L^j!$CZ1&GZi-}3pq[R#`" uD]}'x 5_ O`I,wʅc }E-vRp]^GQjj.\}Gq64ˀ(#`TN9ϊ@V^/>K7Me [E ;z^g}>rJ0"ʧ`O7w Qy*I uaT|unY[BZ s#T҆MY咁'kq~۱j}#E˪R?5?ev Hg^sIߤ]0W:_m,cZPQՑ'C@χL{qb)/*,x?Bv$6fʠ`sǔ~O 3x20 A.d88}p﨤`#4Nb?^ds@Ȋ=?nMa̷5a#uIꦠY8jN ߃#qz@ Ivep%Mhퟜf,tFh;&AѦHm_[>-.] NƢ\֜5wPsXT#E qiS(|@EF "tN_î( Qwd;.V2hR6&r^ DSF7ch[ |Jy-y-^nw^60qFQ2~oh0u`qgI[φvr>w9\g:K,uȼ93Zo()"L_";sFEzKNfbLIZɲT<!-3z uWs|٬UѨ*@OV zQ%Ǡ31Y/9Gbޅ\|-+ u^qwvעaLIIx ɌKa |sTGYP5ғXL#L%x!}~2, 8akI׼QU !h_q1+ a܈ y9(w ά<ٜU )/3YP _ICx;!?mRP]$*Te8 {E fx F^TOۋ|Å6ž C=5+GJ4cp7uԣN@ɭ榰+"0Ii8m<<}K;= <{$ă(ۢ;cQ32޸HBy5ºvERxdā>Lf >)kHJ3EM۾ֳw MinUy'Sp٧<\Z-Zu>-]w;1V|[%qq-v$KUhGsz'VcFzv|^lsK \ +5Ccڊ8iG1z(r*EŃۂ(N`fK%Mށr>ضrA_8aKjHUD3{ngEhqNa=#{(ȑĶjO8ޙ֗pUzN4i:P 'fib#_hK^̇f!R +L: مh_ ?SףGOt]O@2їxO?f (}[ 4z3n_rprC~gP0 o+ժ"3Y,!lZ/>lx$]G\4!?`꜃ VN,.8ID~qneasD%%tyO37摆S {,'ٍav{mW}ﮈ:zn`ϪUjm@F7 U [O|?X%x2jreYKGf.Vd$N͍O̻s}yRY?ˆy[V6;I +8j?*3 i\ v[p hBM]O 0\̨Dnh,12 )4DR5>s$|a'ʁ,jzA 3;@O@|BBN{L4K;z&cl  (wwj$8z4 (W@&)GRvp$3$% jl=f_R$ث8HM#2(ۊ-@wi}Hn`d4H\ _U K T MZw(%[٬2~qȬPP @ h3Ӭsг!Cw O: o |,sG!tDLSL?B'r5H vh:Z4 Wyɐ P,L DKd={I܈>U~xX /F+Dj`nڑ*|rI5X5QNQK[#?zMd[q xBKoo$/0JeBn&~'B֞\)Cvر1M^Ζũ՛幏Xy)bq+ߕمADHHwi0C٫#w P m%I:vlgS}ByZ=3]YI)PzDza0O1}ryunt}E.0-ϧwB>-r,fLbbH':R<լ2qA:uU3UEeuS~X^g -Ys rz 6AA2VMJeORٌo@gIxMfٔy׌s; q@(vR? N5BɎ_SC'Jevrk5hĦFeW6 ՝Q9<c. Ω.R`]x?й**sI2$gUhמK4WkΣ :L^jRBr;=^-.5&xI֕lV2x;7} rr_ B$aku{|ЃLcKXN{Vmn~x~Đ:'IwtqRZn0  *m }}ꌠ) d"Qt>EKXU~ƫ1T|e y{,VO?3T_٧m9yδY6/5]*Hcܗ%oIk G-t/P4ϷR}!Ġ*@*O17jqEJ`VO~@濴HzjEʵ{_Qꥩg%gsB~]{d&׆kJ"1yS 'p ?ZwvXymdabݣewHj\*zz ~~ wҍs)f[)-U-zEkY4ƶ0$ ~( ډ$33R2-m:b9`9Yep[;-q;` -&n*'9\|PPAds *pH ]iP&QV.]C[]+xf2ٻVԱ3|3WB ?׶(VgG 9rԒL>;sps|.,bСՓp@z2Ug=e9Y?$t3]h4!R&xIiUő!tn ֌/k&!@G1Ra ߬M3:N+OV^uỳJ \}í[.ؓf|q?E=_/F?|LY[FWԀ) gsi"H$1}ј\\at@9U쵲j(5"MX^#2/JJLWD۱o;LY~{{z8h|V5mrL l[^vD ɷBgxD?>LItP P&1 u0xxSy˓?᢬/jFЂj\BŸ t,k0_С4n^ 8ZEuzfyRBlɂ@jHmQnIx#T#lh(Je&0h Z8SMǒX]$ fsY,~h שO(dxmtY,sÕL8-3|/&ZST o JL%'{&~@G36 WAd;a^H| FsĺI[o3P3R,?r[H^KygakWA Z],Ag,е9B野L+ׅAS'u&A0ʉ!e'WcVGLC tgSU\h; 2JTŊ; $%;M))=^| },=ԛ;F$/x9Ҫ RӅٹKC!OT>v30gV-@jrã; " Ι.F>g>&}^%RMķrAuHdOVLj+~sTL588,%s1x AJ4#%ڪ{pZDF΀wY`F" *XACB?0`fԬ!֠)wQ|k۠[^$| H)ER l.Ŗ[_ٗݩto0Y-$K0%Y)90ڟH baؖhVΗl3И 7YE_Vҧ@e<;Z(Kn̍ҳQêBӦp?L֔9r:͗,@H`=~ ]oHSBŐPP<=Xt7_ʩȰP<} Noؼߞy]-Le|KHt{R lORH?M_LLJs{ԑ^[To,S)4XSH~\* P>"g=\Y[\-7joqUcF2 Unhsi{$.`QaْrXجOx@yp)KG |T(G^d%I,|oW;`[#kfT%亂9Ȳ,w{Kx|xf{&L0O3<6P<숙zۥqJ4EAz"6)4]iLh, ,+iE m楛S0>Wt'Z:5,lʑ.8 1Q6`o8=zxa#f`v^=UXབྷM%}4r竄ҐA &akoĂCn̥Q/TԐc-HMoVbOMfMuU'N9/s@v7\k(H71amD‘N|yO4aM^>f׷;Tn0Jo!5VlU&"gb%@dV<Fj! +@=si`==mDiͧ8*~aZP2X9 D0kR\gbK+=zчMa8 T̥FLFoS[9Uk'DeW0/oyuCpufjַ`d~ 4φU;+{pn]/8sq?=&;&2hR u:)'{ ygEy:/ >44)!5f)ݕ;IvK7`ll<"e}?v`eQ|s 9#vwO:E.L;zS{Ow5YoR )}% &fi ^e.zIfo7'(@ 5/V/ eQNMU)2D{G r$g :zfoIпVp[{xXNQƙqdP*mX $Jds̸cFP7}\'g궕wKO?!F=<<X!? w@V+ t*Z#OQ`=8e^[nN)JI?=qQãLR7yq0h&v훂Vdo/{ភAyr>Ia.IBЃK?|\uI'-M rn<:KOτLBMِPT٥e5ONp5X1 J!pyU6M~9Q_f),GŻJW9cy&Li[9Y5C8{ Hr;dz<9 [`nP mEn7O'}Vf^J77_H:t:z`=祥%֞]Q##PTϙ8*u؍6->G>y=3F#fQ1^#ٔhJ%DmDonMOt_yܠ`l>z*œ3HaıR$G,,+}1o\bT*RJ@z3;_"}^,wv?nEO%t9/W } @c؞e(rdA=n+8 7ɇj099m0&A&T5b%(@[hb8Qd e>߉"o'+(|Rt.éPjK¨;BS[J)2fj@HFvǻh˯7V5f .캱HZC{#%`B:4Wa)w"6DԹA&69O7˄,:Ȋ%Dm)-s ǥ,МF$͈%;KѧRfOfқa@U1HcA:*qcv픵3=:wqېƧ:=fOsv5'qVhX_WО@byI`.|$Ȫ˹{B5_M E a૪}C Ug vnxrǩW%<3EŞ?Q #LZZQbD#A{zvch->jr/Mj7j1)'M@ tnZ٦.$K9V&k!p@ΤQ~tI$y>w.z%hC B6U2Nseq>y1^#G  ~ˣMJN(􆛊3ێh{n {2\JsWF_*Y6in^fL6]J^5p,ξ4;O3\?[QH#/f=zg .#"?,Owl~Q O2T W(Wvsh! >sD0עn$nuHÉMrXXBlg<Dz+6QRतAOUv+/w]_vKOz;۬i=fMRLck:[a;h cNRڈQqޗx{I6_W^+ /n>  J3*BOpET_Q+Am{F:k529hُjpA p5yNy][.,s23?"!EG o|CJ/#O@B%aG( '-p4=5jI6b(#1d( ;_P.d!(,ŽeJd:)4Rʩ ­Nj6%cfV&5&ywg50}ٟ#,Q^#*STd8b6.8nxi#1⁑(q^/FzNY4_ꈜ"sRK{+$(S7iċ0-`43 8^"sLHW)=V^hQ6n~OhLNv2-Wwd𗅎NT*vah׃^j B p*v4R+9\)¤m:, U7}&pZ'itՠ rHWdd+i{sj`uEegzK`.(4k|i01j;C,[1n_Cγ a% MgIP'm2?j9 4)DyV3/g֖!] JS4G D{93p7@PV!tDioUԂ `-`Z+XHw Va۝uGX0y fXpq,TSss8&/J&e@IT-#5]kaNCkn_BwxacU,gopq%զ5X VMvP_I&΁O/K&KLw2v9bd$>yJu2gs*9rQ3 :}1;cMC1$q#L,eY:.? ,n5@- 컲b0 "%W mv29)ȹ_uU(dc?bl&kaUk˒JGؓ)JO< Ϡ}i4*(1 =9:-$d,%Z("v ʝaƔ'3jR)Y'#tPjߏ*GwzKפ茷Oo* 9LΥÈ&3Jն79ZXK.teWrך>bb.YFqYUuQ|Yq'Vax%[zmGi.A?^X:9P7/D̀=2mh%pC@+t +$R l9rvYԳ,&RҁRw:1G͊Z|լ-P}nC9l4/f>jp`\t0pcew8vA 0Cu͔2O:"mE`]u^wa5wsnl[ e`qS5Ԥ g5^>! _O}d%[ 1.EYH!ZQCX'eؼv<:dtA>NHZé=k:RݡBg7P19~s%Hevj17DD4#w/cJInBqvTw\@FޭvW~o@0{>$7{?6}C|7:c$PKǰ!  .63iz1׊>ZB5X6Ҷa`*Vϯ5 5ڶsj< Ŷa0ufSiԳbݽ*Ufp*b.Qjp?&znKuAV$5Q663ŋqJT}%]"^ԍ:## 2'۬WΚa¤BEȔUdd~s1iI(1 拪=-AyC璔ޞ{. 18SIOQkʑ@,~M"[F-<|m].Ҭn%\m@o2м0odf {K>L=:ǦˊWkj[G (]9UvDI^H"Ș5B\P|TeQ.ؘ}KBV'2.໢99s5\'8'W ,9Ҥ=o_Nl0+T%ZK(趉GJc߄.8퇔}aI93依e{GCNM]GwpT0GC+U>pŵ&a3Ī>דa'89qOk(a/~f=rOTA4/Wp쑖z3~+].0_GTP ?ܐ^|( b\86FEr]8e]$I~#'A+ݘ |0_wz-ɯzZKb0֣/$ Cu jD{ 5bJڰa-4<}rA{> Bd+͇)zۓxSvjYcE{~oO-\Q8ٌB-9`/;ql{ E>iY7L6}sjU_Mhh`l׻k܏UK6^?'F!=8"gb3,wE{"4?:>tgQncBVh4]tKU>DG7:ͬyO[g [|7̝,n} i}}R--qzW[lz+G&fo$Pj` }kC"~zLiҟ?'N+<4F/|r+>3qr쿛<:)=/, -dI"N?PݓcqsK zsi8S/(MF,EgM>X< ݖ-Iss oz ՟ +^NF+{W) C8,e; BI>%uȕ̡omelº7ˋX)P@\c 'FG={GqI&z Xx .ֆ!|:\`}Ere:֨x7ŇV7 BK][0(f4J]1]dGӳaC53-7D/DlI~;hUNQi#'*SV2W wa$GP}1_ rAxE]R J$CPM\1KBCtڜ "-|2v,)Lh[}4LviJ=k6hW(1}̿wc7hF ai$4_FyJnh+Q-SK+)ioF]\' Zalm{~Tj,bI[&.%'jPS&'UǶc鵜(Gs̪Ƕ:lDmcal7ŪqԊ )$n}aF0h9E2u.M*ށZ\[˾=g yͩ4V'mL|&})nscKc޹=ޝtSIh>|^+Ww$! ֎5b4QH^}i](.&o Ѩe$rΫE-0ZA;^*r!|ˆʤ"deEm;\!iM&͝NNx4_Dզ/ t`y"oct}HxHLm)tm\!e-Dͣ|n$my>l?-*b.q'u9-e^/z^υtP ٹ.OHl>epgxgba= _^:[s(aVU2GufuEyK'm ֥B =QX?ĝ8w~]-Je/T챱&Q%J#~"ݶot>=yE& c]^ X7ãݣVR~s鿨<3gxAݳO*E]4Qx䉂VZ'_c&UڮYu IEcmuOYLlf[$bĝnxR8P~. 3mЊAOE_+rO1A[vŹNe`OHۀQ1|:?y7_^%Gnr<+h4DO1¤Nǻ,c<4,IrDA!Gm Xp0٫}1uA27RMicG5ѹD{ ,TTe -37ivuy&;ٔx4 \B%!W>R0M%U#GA ؃ rN5hwRUYk; QׁeQ=>p!ìe%dB4q{ٟYN^OHo&ҳ y%zćk<<^JzJX<*KwI)W5';Nd.ZP\d Kt%V2i.c|֓LJ[pQ 4DH`Al^ `_Yj(©KDh-?O~S=cI %dmI> lR5.i)J9%kĴ~|BFJ .MޘT)3w(&781=.e^J;\japױXYS`'c>h*5y^InH{/$dLO)9[yM.xtص\_\;xCOEt1'Fco}lH@D2Q3fn/rσe*@QQ]4ŅW-rC0?QS<_N4)⭍:pOۛ+ҹE qjŽRB%PYwNV.bc}7xjGۡ91ڂ;Gѳ$i갊Ln[AMh˵^_CgH<8hvWor񏺓iQJP#L.ر<Zj}- u](aFTCfi8T%w"‚C+;R+ 0%-b1_1ʈ&"ŌpJyÉ>c'薆Ru跓\ ͌rS`E݂y4p&ePZuҤ8S;$AwYiLnQi5 u3; E[h2~[ @@1)QCЊñrی)PAUOZQ#!>GYS*p.98rkGz0iV&m$GB FG,p!gT_i^wydYeMBY]-@l _zo%0h?Z{=UnЯЦ47b+K._.2k5/0vPo#y6VF?O& ɐ5{~5v$3 /FXma8%R%ϱ&7dd oRN^L5;dө ;cXQZeK #Q5([~kl! 4-: z`Ex`p#٭`[Q󚜟RfF9-2]ke*kBy(/M ~!TԀU˰5t?L'#{ع9VHs\k}V_g3r2 L j6\-O45J7&|JR{Eß5ԟuYvQ(v=3 uPmR;;̌8(|?Иc '޻ygE^>i_C?٧'JH+۪3WMz& "s!LJ}-{aA5NptE.~BrN[\KyNCѬeeZCXL0X^jg WsT&l}'t&#x.Eމu`Fm`i|~%[6z⼁`U`M` ,'\ܰ+B?tiw% \gtac 䪟,<Ԑy⑬(M Fǰ\.i[1>e62/zzI&٣$k8A- $a:y4sj0Ğ\yd,{Z$t2kC*;p{NRuy3%f>r%FR8[ᄽˬ6;A}_<,LG>O|5QA_XuO HپRZl{cj}`R~Qj;:SM&R21_vJP13Jޣ yVmff9|"Qi2X' A #Wء?8z{lR2]TL^5`A\͛%9+).F8v1o/6cWUI F?Qf]__vv){'>GPFdXuscN՝#N[2܃ƥBײJ1#g{zWݭ{*9LvMche$ߴ OaV[KWOk*ϻqVXbo ˷P(̵u_xjdAa,a&`~X醨o 6@WS7mQG:abQ<`W}J. #F;,DNzl؟T#v LݣWkO3 $+yɮ+9M2YH_^'K_]R M_#%!((i;RN[RW[c@f{!Dj5%%.*e2HFxXMp5玛#g m=ki}]S `2c ܓ@eZ䴙(- {&+QIMe!WO=])d[.1,'n1Z rwHqacA@ou/kж ̥ZӁISD5ܬ  ]j7nA͌xs~[NF9 #Avߡkd{~1F]Z扉؝˒~7`t%ߙ7o]vU5`HSh <ސ \&3- Ϗ"fz %051pW)Ř;\daGCzr<3?*ㄘvk6%9 4)# #& =~$MRWa"az襗0fwWT v68V W@._њv+w2Ku BG$8r_~dh*uZ4@0ɀȽ*UQPAS뷋ށͺcF>qtz%ed!bzZ ?ZlF¤O;EPB4Kufh;kzS2xT!9cC.t&t0N928qL҆J2xM|Bbߚm .e~zoG4?3.n 6ut8 zcN<ǰGPH4w>~T^~W>i{b2.8&gIJu` 1m2:,S )RX' 7-KZeidWW|C[0ID$}6'2}LP10X5)V! dVyEW.^ M&6 |#PCG [)XU唦EY:)a3lĜL/wޝ.&JCIx'BE{žM`} PL$t!W(͂TD535D=:r? 'd'dlF1aܮh Q&[|K󊅡Xm蠙g^SEk4e3'RkGcK/uY6ԀF唽lfǥL1"0Mksp8*zL wk?sړwڱq-tX۟Ee(?mlzjN➞q߱N7GaG# (HA) F'r{sÔa)b@K*k]?(&G uBS@{.vhY&bG)K u&H';`PЋzFړ>Q%H5sa|q%5CJ6R(|3*%̰x5*[N>$dzF舥3}2WYzb"k!3GsNW,TغU9 w|{w(^>+u1oz.oraSwDcDuZ9]G^[~'MfZlKuoz4V_ nר <ҫ>gS9z/oH+-[-<.RloQ3a1`* @Z*:NSlh#iXZm7Gl2=d#R9<43sy!Hpd#q[@!ٓD 8jiOl\ŵ6ԉטv!9mG)Ri^0kEӁ^:L= /7}]+텍[ n)w;s3K\;w ;WbE6C'aV ܵw>R1zI|;l@^0s¥DjKbtzS8 h|Ci!ۤ @؇sqeՍAxH!~vE]Ky 9.TiW2+2+Z>'m&c LD\el-SZֱN8]cd R?k_mP$#; .%~Bԫ, P_gV*"VƖtoVp!߄HPxU1Kږ&gGB)E )#_Hay iٕ 85ͤQT85mxߖAbSeH{?|6(AikfTw53 @CU1QԵS?&v hi| XMsDE60mZ#QO"+7',UW#֡˨X12k+  p8zAٗ; K9E8?`ua!eDW(S`]5EDipac'1'm“q2]8j"k.Q|F W7A^Lm4oGɩKY'0 j/ŊN 7i:BE|@bk j1<9r}J5CP( Mp1G@dC=d굣zCָto7L6Hij4eA %3Rqg ,ܥkX p!Plj$˳.vXgd0􈼰SdGo` Sve`"2O@;#|1:54Ҟa7b+(hG}Tӹ7!0cxm2($n찱\+{g =wm$~V4 ч5<вLJK֞eǶU|ȏcy"TN͡}pk̠;-=>o Hʢ"GA5tjaZ|@.\6j<[ȕ@Fdbe5]>N3h,-r (T^˥xxM)Dќ(h/d쵥`ㄻDFJ⾠я|hx$D fn.m@ ֺo}N'62Ul1QN]ퟃLMw-(e0FG3Hb \ Rg2<ȈPՓἰ/&J @P<Ҝw"3fy=MDJIG&bCLTf?5gp\pthaQG&ͼA80֞`#XPTL.PJ s)Ŷ (7gCjq#;Zc[h<**Usy@vPl#^?fIM-DQ{X}Ă 4Y}Wk7 rI]A ͳyIP돐v:8jFz TZ,jʟ"ϲk͌ĠS`\ރ֥8^'{ql6PVs/ ](*e!iT6pYv~ʳU4r]ΚW,85&sW}eɅH$9p Y#wvsr!MnQOGK:#exFz8=M!5wEy-r2W$2JgnU*FPBd&(LD }!XtbN&%/if_nz'N5e(cȎ5P=3۹]b)),knA+>ĦSA~a۟e/D(!x$#ijƥr]xvuG[[X$&"Em(^5eX+FdXG$9yay[F$<+?"llBЧ `R `k*n ϭ)Zl<|" IY'|(6"KcEjN ?Il%99{T\ =c =tDs]Max Xrp"eE'o%iIh= ĕ-'P]:JVrqXkn·ѨT;[4pB@!S(}fb-b!#?F^NMy"2D}>FEђns:ShcDfôGy&%\xC^GBOjZjI `mh Kŀ'A ;$Z$/G;v~^8CN~t6.*sFڋ+]AZ- YP)E9kNux딉sn&3wW&q%~í  l7JIORAwI7S(}V[|,7/C"+B!bv aIfHjtEB: c}V#,˻X,hW՚7MWUYu uq}h-ZhkbMHyF8yl_5$?Sq# OաexV/7-s`+B<Ib3Ry~/}АnOBuz|ӗc=_{_aΖEcXh1-=]5` . ^#oE2p)cl.60;qE+[/]M7 t,dzøo X XQD d*BsxN}a!Euv?g&md3lLXS:Rs=%?PpY HgM} no~KHA&6lo9 XVj"_g5gOP]!+}Za3=m T6[EcnStʽ@Prh8`2]Io.#N)$=WmF{_ '#/\h|4>e! aHcцu\G2zR/;V(*kvpvfZ o˵J ZMm)6۠8H%pbR}7SWk uT!S VVN(Z2Ju#l9|PWBp%W;_'=;gJ8arxC>s])T:G'Bڦ:! ,)3i #ERt]1ʝGa!xwDOeV0ګwIFeek:dw[-h3/`CjӽήQx)"o!B.J{YI;a+lJ x(\@'. J// 'RL?4T4 @Rnr`$LZ-ls 3R%,@ Bf*RF;f71aRӡ]RjX9GhbTvha1C#sԅ -ةA0/sf$+wcH,Vr&n [Ï72Es ^HOI:nkS-r1UDŽ, RJ`kHisFҍ ~ <>p*y ՟6xU.͔u8lɀ߰H_\tk14/b N?>lbF d~?D' .AXIZ,YToЍۤzM)iXs1-\Pm~t΁ P{{XGyeoܣ5{koƵZ"MJ?RohzhӶzQ2'Ƹ[3JIt&~f!/ -܌k6E"L0>OGJ5%6f"XJ&B5q"2Z[(h"UB ^ Z=ΓʿB}#.:'4Mz`Ʉ&D^. I{]9w,ǧfFUmkג&xUT4ܦZTv1';eNl84ų|G#tÐ qN|8Aaͪ1)A%K mntlm&ؐ%*Zh|'%E}r7QG~#` 3 oI x<<\|%\0ux1u)8MB#r@TF|GL >6f$@*Kp%ʫ XzuظJ = lo`9`VJ3Jv Z}5QB l=dI4sUD5eX;Re&PaU4 {ut(f]͌ӕ;BG ܛ6f…[-sN)Mw 96~0v#`4ceF3t$Da"p-V Dt)svYmhoD2дcۯn3d&pQ8}Lzi|AB}}I 05lVΊ#xÀqPHpIH9ieހ3 'F7w"V]='ooO ̹w_V$$XޝQ>he~AIdW=ݽT5 6C תGno\[$B>_qhX H!>иg}KOF#w8-&: sWw4+Oe/ԫ__("B_Z+"߶,-wG];*\{O^_8p7ԱJT *H qTJٸԧr=gF1:*kGܝ2)k3%Zß0;=ps『Xs;w'd$E>3I{S/=]SKX2Әcٛg*e2x7l( 1x¢it&\>_aab>0E<pN^L )NJCte')K)gn ƘnҜŭFj6梧iIZqa#fВF&Jq+&+0/VS0aԼ?L QtR`5f=񉘌O#]z]Yb9[;S#zĘ*;hzIX3ST+KBJNksxUNW(u%ca>:_ʹ@+w'doG[<=XUȅ AZ*6t˰nkM~1/΂8# 0#qv}Q: byO}A@3( l1H>d?LQ<;?A;"f (`z uqjd_w4.;hB!aay[1\Nj.хO@W4SqF`Z9gsfm)H2C~,!lbI^O㔱B,B*`tmm*Uut&Lvy;:Ua1a#DxUǒ5t I]ϞR#u70W;d8CUCKjY9vKJ0K(m2o5#H0{e)9UFDxO@p;LUJlL݂ҿb}@1(Oiis@Jufk MG{7r3x(4ԅ=Vd!/qގ=ps2wD14hPa"ʦ r۴Ђs~bKA,%V;0FFiyDEÛz|@|XoFhmڍ[+}0%9h3&?9*-i| ٴmUɡ[Btݴw0b;h5xQy+'|)ZBO╕p(H_V$&%X<)4WɑLCU`CF8 k=1>>tYh`1 }z+'bf #;AcS Հ*o0Qy&%70 xט{1m4*9՘HYa뺈k?Lx dIם 4]-l>ȀIcw]$+n\rۆdx'6rbHA|^n0$R/(-Շ n٣Yf(M V\(ҊKcZEp!9^;vz3kY=[Gc3o6y6댯k~nyJb +51`nXn02դU!s6-Bΐ!irŹ*VԬk0YOEu]}86թ:vK4&CC(<=+ĩA0KW͇; a!w#CbW) ߸5!RfRIkN|y=OD>94ޚ 4y"ڬa׏sŁPsҡ p8b&V;}>ej4L ?,R8䚴{^v\IG4:ߠXzI3tLI:|:al'Pc8?^'$#9}Rk@`eq<09<< 25Jtٔw:TWŔ0>9]9Qo<2R`, 2%5?x~UƞLq|$'xnfn\쎚9p" Jq sJ]bT Azv k\X`VVD,G[ s9=h(*Iu^bH^r];Z5nU2|]:Ǐ^< 1HaCg_`au1`]쏝Բͻ&) f*u4BdpeKjmsExR}e zL,ߡ E;FF gO=$tt"k$oiJg8L%B C '  DȀLxDK< }+p?Cz /&Zlfͳ \T/ҏ8 "\tεe7\O-A}]Yo<Ns<̼'t-IiiY;S;xuݞ`:Qm]Ƈ'푅 >>H'`}Y4\~` dVz_(\.M#K3Bj Yk5@TB1!̕T ҉!II;&c aOVz4 RJ7_뫤~Cp_yzZXnk M7CTbhK.)f̆!_& ]3:HB" K!5^B4HlՍVAA9:37=(8~/o^4t0H:B4':PI2z^K>uK Q۹[J:{ =kMC:# ̫_7rRҭ{_=MI;\?aPtf7+ūJwU5\)FB-jÑb<[DE"2H͖F5^}^6U@*\#bQimmޝG';6!}+MjPp1Gg~ZRپmqpB˝R?#ލxZP NZR ϳ] AiB "{ؿ.:;i"8ژ:i29(Yyl~oIsPHl㦸t>q>璵Ug:X/ e&NxyOo1BϩsU;Lܢ$:yru-4M|ݜ"#lu/mjhE @{R dI ETL ace-ⵤSm|/(l~{< 0Aw j}R,m}ɯJj%+`5T-rA%@{G-ݘD]p܃[̏H@2E5Veďs%Ձe$ƛP6~AO-NNRGrq ZJ`Vٞu86@ Ji:$I"K#UMAP! ?Pq[sPﲿPJkgBe4E:g(; yʑ5 _ԋұڧj [_Jp+A &2nպAN搐꣜yT^QvWGY#F^BMTfM|t@R1T&dD/↣)3;G[*i ~#Q6Om{.b YfyGwoy S4x#(7Iwu>Bze5dmrQ/%*jKj^V~8U9oz#tF_U;ܶ9 ca"(lE!VuE}<9Ff8CT4%".D<  r њT>%u% c?"XjReO6bK:$>֚nkPg+bh0amywK,o4Rl.tR,2ݲ^{[4 JƊxƥTIt}Kҫ SGKz Qjك.qaX]*`\{q&K5a.Hפ=#Ts{,d^51=P[6`{R1Tp -) NcAܔWU ٟ࿛}dJ27>q 5IykyëAN]{Eʖ7:SLKy'KX(4M ?/Ua(~浳*,υQ`& !VU76(/-LC fnU0xAp /D>-AcXc:wtn\'/i,O=H$ ~szXbC{l r2hQfH^ǔ~TR ˓dkvb[aSyLA?q/!4yH:DPP5nA Q hN!w\YD?#q,ɕ3iչ0HZϬ _fډ9D`f t@:]o8#Z?$q|Z 0o`$jU>kiva7g6k+T?=\nL5etKEOvSjg+ą݊@:M' rIuu2U :҃LzO'xH`bQ{ʇQ"w8/(|_)%' q;:/DgZj',wK:2.\ qE OE,$JTPyA=W+~㸳1( pj1OQ|x7z#J ƄvxWrjǤ|\}T+az tqIK85+B0*=SoqY%W3KI?K=c( H9,SLg;+}}  \Rƶ"7ӷcqѯwn}\1Q6^8>:h>hҬӄ7Ur />ڟ/anZ?u(ɘr$4sD7~]jx+>cơ3g[<mCQQ5DSr}]Ȥc!o:bR&Eۯ>[',Ef ^4>AG;0h|uhD?W'G:# #ᜲ&* wst%кB*V%ui`8y3N8K'Ģd{̥_軈PFiqhׇ/Eu[=#iJ]9^jEBƌgP[n46_[{u)!=qV$(,߳_-:6q_N 7QZrmxW[!DS=D'NP}^zNFBwn ;cDކvVaN|7<* ):hA΍9U|8i2ҴL"%I!D SyIʀu }nop%y~A6&: /"nC_a2O}tc?)fleKڞȞV@ںGO]+Trb(:(+G[$:(k]n_u#5J o>*p^:&Zl#K՜օ20eAj]E<|aN!<Lqpur8 5 RM8sBCc٧lkh=X"zt5(h, ^!ɀPhߓ\8<4y{ ' ȅxWe:(áP#܌!GӼxFſRRHm[lISODsQ&7dv(@xde/:mkel!ͭo@wJ䴓>zֶL%~%Vw0/ɦ夡JF{&1Ϟ4#"'B1<`^jw&GK_& V&w@W~ /B˒{~4ϹO)Р][2sX(Y0@7^s={ ,F@!ep0UjvtpK8+E9-7h ]CqЫ[|.swY B);# b1J:1מ!#ʿEI>r%`1rZ~B`,ZtgIRZH|AZP5J+ÀclD>; :0^?nnO#حo >Y!ƖQvLgtt>91p ^ybp$l3$򓖧yO'2i>H]Ll[!Mg|qRnUW S&'QbrWZb={gz}^pueXGb)-(g{Alk=V(_yKtzÆE*?W4>,OL#gJ3K Yý(}L4A=Y&&k]?!FƔcAt?k{n!,(X5Dq_n]6cZz!4ͤzf16Ph-G?eƀ07<"K>'8p ]Y)pZ2*ʲ"s**6wb\zJI6q"L+R7MADR2bdr0Zp~W|D,w XNeO5DQuoAkUN1qXzH8F< ob݁@kDt2W@+N$T:+\v&[ gu_[fй_@$fy4W|˦sʢ} d`&Y{ sqe_p tj5gN<ާIt;w'[3'} Tj-GEc֌veJ}z@?3ɼXj5+Ϟ{j&LJ{$!1ʟΜϤX;h=%cSML=eC?mQÎ os;eama,?:oH}1* Uycsx1~a <{Z PK5WǛմLAY'(*o{%4v\.ua Kǒ@Wh͝juڴE&&ͰTysDh7}{B9h 3U{s:t~+$کB ZZ0chO{҃(P^V JEOH^Fk׈΃E VЌ(D[#4Pf\\3n3GEݒ= =mv0^eW;y{ӛIvo M^ Ԋ?`ڻIǨ+40APmwaI(<u>p1kZdH{\ɚ|P;0Mw(jqo ;6!3zyɹxhCp=DlrpC-gv C(~cYX/Y@s2zv=ӔtO%Zk|f6J€⍥HhVl8PlǡCW%;5t2~ gͤ:B%ۺ=JT$ks,tpPov ]XAtLTfOwgu!sX9YSx\#hs/Al.!}A'+Q+I7V>$_5С RW*tpwO)JubMbw34u!͒-, k/K#h*Pyg2宅y\`|*ebYYg piV )/h9f%βL.(^_h}s6hbjv 3\iMK w/v43džsBrr[+$ԫZc9wOHݩ`!q'sN?@WihYUf4SfK:,ʶL"11}KV. F EHqrBiuZMDg/'KvdObl2nėH>ΈgۘA`.zN46Ҽ`"3: a"^Qȍ,PNJpKԲuz,3ʘx01CrVeD1NpF(|m}e'Q}?Stmmo\xof ͛DZW>D$T&ҋF0f#tDV;D\.҈o)OϨiF: NL6U ][n4a&P?#ty׊MK 's FzkAZY6q>w"AD7~zvLngraq2{ߘz;gK< 6n,'j"D}1\`},ܘpvk]: ` 0U0b<݊!~_hYbK*KY XՔ=H?EÊc^Qu~ڗ|7'M`aBǵ傥_F<ЗOæN l2g͑ˑϚفMq/lO&JbHRʾ=Fo-6oǐ!cN91dH2C>ttZ|ʊx{0f=K,"|B-I6&L㺥|<#?i, @;fq׉Hc"!Cǩ^uwXVa>={(6Z$0.` 3v?\65i&TN5ʍ !0"Ќ TY\&3!H5o0,?T -1lܪ9+@~ %6ty]}r9 ,jTü / y y,o6p³ZCv\ %og؛u >y)i}wrݺW Fd\Gv_n;X:G"ԻP}QYVBOϺ=l嬷KR۝ {iE'e/} 9(㬑8QFOnVb  d&B/,Ds E~x,2ʼkd7_&z1Em:tĖ%. Q?CX\g(A)#sQr?Iԧ+gz Z@".2OEǫܩi|չY F`ٺUjq 3Z-44C>׽>+&#GjN!]ʼn(r|mUW*CLeRLgymRt&1%Mw؃-w_W|w) 'mR!^]+I)(S:M>.&"MF4 2"/s2/xUCC]j=J$`;vїS%L>IUK;s.sA_H LǛ k  $uX,&¬.V83)݁'_"ec0φ[,z}~dv=H]ODl@YoNcRq+1-X U1JMTf]CR)2'G' ~ RΉ&l{517Z4C߈l*>eQk,u!7__ T6cx>gC-10M,y|<vzRœt&{nMiW΄? "/vHH*E,C`MH MwWE.).v*L~^pQ it$-fJs֚7ڤkn :9LIF-J 3q9ЧZ"\$D2g p+P8ML_; JO-*豙X R 6ul%^L@֯) x]o# Hp%%ⱢBC60t d![,tAp]#Vc:,|uIVb-Hl%t 8a+ v?B s9 *W$P^tu̸ՓJl`{\;X(:]⚯"F?ż=!p03?6z-I rH$ތ>-( V5axmxBrQ] @(f$^OMS?e:].<ړq[lg@=%fO4Nd3n``{&pia Mvy5KJ{n?&k +~lr[j_^ 8Cmm\F͝lWL)KwÆ.3p9ɘ~c!d]7u|`~o`z fb:A1!Dʍ\t!|sA7YA@{gG-]Ut"'7|`uR1XKL#:  >_lؐrјlAiJ r<8 ҉N:rJJnٳ0m袠id3S~a@[e,& %%5#{ޅOCHAY7""elኰ lBNHEQM+Ψfv<ϥd @r^>=.b|* 52YUweeE犮"[=f> >'Y)`Mfc j:tK4- ,}=-ɤiZ`<̙j00re'"$6$M_Ҝ7QlL!r@ 00K $|i$؈kj V0sg_qѾ"hDƊ!q s$3Z8Fd-ZDP= U9kw|Î1k 괫 $?ufgSџ"l ld}ទ\nIqennuk,P64..rCѶ󛊯j#sBڥr\8ˇKCu5=V}ɬ@gbZ:㳩ٝtⰚ1\V?|"NKGkH16mAJ;UTsJ+$ jc,y81/9n}JCg/SH{Mq1HL̲Z7? xUv5E]!k<\-s0}Ѐ8BDڽ} <%֊7ڋ k֚S+x9aȿ9UG$kb\ToQáJRgSɬ%uL&{ &[,#g)&A^?՗$-{φB%7S KlռZyEakf훖M6WXwSaߍF`œ8tU%qCPSx^:ોRKh7J/o ((2eI|97*N VsJ e"v*6KI;TicйLt^o=xHAz4ʰKy X5E2uW@Jsetk}Z|$cs܅96uDPzMTS'.D脃 o>,*»Ãä )7EjWdFTI>@/+Ut霳qX?3W>ITĂWwJ4R* ܲlVٴ 40}i wœY!_W %E`~%+D,pgeXpߢ!9(Gt`H %ɑ4fFF*66/;$i}x 5%)0Hs$D)dRw}klk=P:U{w1!*-ۭsYJzm̋7]oq}࠹ja;|cewK>6 +3OB}0(N-'ʢ)/1k.vOP1recUۤ&蹢,}y~|Rl0TZfI߮DpGwC CS+idK?Eu ׎ 7r\Jsؼ:aajbrdx~6kwP 3*+ :Zf޽J{oW\Bjv|Fgq:+W0J-ܴܕ,KW+jWF{۫nݞXn %9 P\S;!{e-w@G9\2!uZ^Zcf;ScKDrx6`BE~o>(r{{^J?l:[҃7mKF:')?ɐC-#+Wc+o Gvax~pB) -+J'H8)u0Zp_ƤY!. >u/'*r|Mo}I/OiepC/ǚ*gvaFB|L^\⹝L)coԋ%\ eOq pr˛.RUik{e{̻ӯ!WRypA|Z([Ĕbm}`#**=|d _V.B9 ]FfZ4 82AcbRҭu5=-!Ѥ)?|*ȔKq&嚘_ &P-kW%W`C|/2%Bo& n>$G AW;qjΥ22 \;=U(EY1-SLyA?X g͎*ybN f%;xo U.RUb4|ug{cbӪT= anIAU?9$z4<;~[Y:̕DI0M aw{ծQuF8Ēz:}sj҉eT紭#0]Z'(ml7'Oqu[cfe-~RwpyC2K#[kL0U`]d1$=kUMp||{(v¾qjEFRJA=s|5=NEqt LS6)#+zHGՂB2K-O&pIKW>,E67&(I(\֛"Iwp w9=/԰tDNe㏳ QXۨҒ44Lz8`mNe4^sVUf\n~H`z}bJvȒbl`CP~Sn匴EZvolD&I#o+A{ǣr^N9 a"JmPk$'Q (~dJl^*9$m8Et{)EZy!F1=_(-yB1х89}s{%N[+/*̧/o~3fd_s{@H [EI[dᏌيkc,r sO]"Z^lwgd. /,xϭ܆V o5`N2TS(~YP)(K3]; &QKU V5@G 9Od凷ZɧggGSmF#bOBR-+ s7*6o?@4$HDʝ^Ɉc*uSAS9U'JisL%uN>M<$:8t)v 3RmWT'\+&q8di.4$bSaYit_fi%sa;?*Ͻ.N"#k%^ćS l5.FVW 5q(|_);طx:i||CD'ҽ( x,w P?_5 5xCb0mbBa+fp 1`.s5_߱)hLXf{=qqv~*Թy*N{%NKhJsL}8@ ~YNH;G OR RRYWߐ$kͩ'>?\w0oj! 4IsbXDK'(ɥ3CbQ$ E2 n.3!HML+zkSѣCEկM0Axr,^#K>!L3W0rTԓ5a@j@akC|C-%5Ȱ-2.sYG?&fm^ tyٙ噊bh4+\GLd'Pu#G X%hU?A ]MŴ{YTّ=!ڤo: Գ*6-%W=ɩ 2Kn([nr *1B'LmE^۱G|[fԟmroWZY?ql΄:,P\%.s*D "/SinOrH"adj118( &Ӎn +6ӌhBMԻF= α)925'=3WӮYw$ XA71R0CԥgVin%1u&Qv@WbWo~*<&U$&l 8ďiYB -agxXȈWOᅃ'TWg6Z__4e|^ L8wjGl?zǨ!O9NhlWxt{Ӂw*~f6=̰e,{?D*DUH$õ:]=mM- )Tmk$wNdV@  mz#l7I#H\DHxJC+Ri0-RXԅ1sVyzCM,FRAq~ڔO>eK~+J (v\GǢ:sFH;fi2@ub1?h]f'zXjpYF)*/zfPLL*'yLR]X7+j[`ҁi5SeU8,)8C [im _z}8`}vN H$M6>yOe2TO^ 9He ET:1hMy,tQ\pzCO/D2|XK^9,?&d!X(8t{tNj+"R~9KicGX.Wva,&{2fF 'UTXR;K\V#@$C.s. pX$-j[G\zt-x9`[9e >@y{,i;vB JMi]ȢfpXG.-ж`;dB")$g"]b L^9tFn8e`VWÙʙ1~v-V4umn"֞@57JhFNE/-Yu{~ a8j20K oRjݗB&Q1OXoi׊Na|&➠FFb K+ h1@툹? Ooخ+}KnUh .赸O3nϙ?߮ 4@ w0!+3*1.+0S}f.)GwVg>PKh}D1Q=ָ(S #%\bJ^;lHFiڨ:_2(!Gc%e=Bz3eTf: HmOU1x.4zDWߜ9(A\!""5O-40}n.Z"ya~J y-:|Z\1v9G.LoM qhd ionuS`1-E'7f ,ϹWprSR8vIĝ٧/E5@(z5ZZ{>(?쀜a$9*$ʶ?pP䪀qD,VAy <Ϟ*qBH|̍/ #}MeoC]$ۯM #GJz򗗋:8QeM` p BI*.>R:Y>~D_qI)ۘBTAب aOSY!ɨQh`aN.jOh!V 1)^_#:8$c'm.&WCuwEQMpAQ@pbMKɋ1+7<|RhgLV(XXuʶV8a{t>OZPJ Aq;C.PRCRD1ĥR澈>c<Cwynu\}@?Ƙ9DXkBl^ ј[ ࡺK;TEC.Lsq򊪻i悳P9{P[L$lU^\}/eSAaI."Lį/WZO8 H>_ڤU) ci#ȟ\OtM U6h&!U6<>2QRA@ɄWmN ő8舽=a"߰qmJ"\hR9B^jO=^LKRc"ݶG OÝ'Ph%l剛Gi5*P]OEOepTmޛ1(+]W:Nj:Q$$/5,_|mY5O2v3+[4zL|Dک}hJ9΅JMZ'jw *&[՛mxb7X7PSS3QmM'u(I ᅵ_gYc qyI1`jX.㹻tK Օz_ԁ}!]{++ܯ߭T y.>(dԃ!*z@16DqZܓq}0&"alvmvjpzP{8yZJph34^9jy:}[1ΐN[~bj2jds PW-xӜ"b=H!9[ȃw& OQO/ZU`_aJڛfQm3\ߊjzeBq،..#xbkyp(|yZn̚ubKeQȶŐY1[gA ]2P3qYXϒl3>|R*D=[}3JL/Azԡ*N'2 -؁6ڥdKgWJ7Ga_ Ņ͈NjMΖV+Fδojձ9YBLC6KzW+/\H+qGLi[Yc֬t1-$ׂhEȀ` mXE37HԘ>dJ'U3 Ӎ1=ZL"c#0Xֿ \˟4oRjK(֋je>˱M HKUY](mFwh#'Mi@}(P0Ó0 #OknwC32ο)jM CK0`Ry($)v@owksI|:W v tH!>mR"';Wx,E2|(4y85nn3q#~ygv bC8{۪&X9nxUEGٚES lD[]K{Asѱŭ`Z"S%qIHR%>NC zˍc EA;Yjy7)H=knz~ ;keA~hB,P:-3;gLB~+z95)0T\鐳{f};2\< X@wel Evh tONυۊIuY۽@DΤh?U>xyg#=$Eu?.9FR>K!6w4D~]&5e%F;jl (3c T=qA1`h63\#`Q~>̮9)& =@Ȼ4 ÃGhUWX.es(+t4SP0{d!W̮Tmo7jEVK ҘYjYxuwD{*vvX)K78,]M )y|uR vP ק3hp^wNG!) ͑FVlr< 9ƆD-3X[vZ=χP}c~^j@ -YBR(aI~y4'!B ugHW8REп3l5p~ d \L&C>uo w0S|> P,g;\ZßR(6!N&e3s|K2_h:pz6OybU2k w $!uUD"%q-3d@ 6ۦolAw59[R a,mgڀDz%hM[2F? }IJA1t+C`upQ3`Thu/iTygҩږ޼$FboO'|Nj; ;ATe4 u!mLT vVN'/6Zd2-I o[O_Yns'HRClC׌`>|0JjzuϤ*7C3Kj{]PyR@g5`i\p)18*Qr S:Q!霩foo\KNs (`(vѐ;ك5- .T⊒)ʴs &{w {tdQz:!ni!CGv Fb*ݪi#0~yrpTadv;chf^` }N; z Zb~ 8˦SY5% k,7<Wܥ2]pClsP ^qZT Ӳ!n:w6rZa{<p[- M( @"_>[>-,"kEv?JxAEjzzt7=O, V* /`m"w'YXR2yBKvr_*qH`z=O֖kd\kX?=%ʠt;7UQęO E-P^Z. pD -$.G }8m8ؗ dxF5biXkq%ij<:q e:_`hʕcp%xjZt.VpsglA eA7C ΰ~[0tXiE1'p/]N[Vk1{<Y"+YlHV0HM[K%2Kڌ'+{Fq[dv7 KɀN 6IVqf13J⧐Gfcʢ]6{2tR3${_͈]-_T~r: p 7yCc+< O3s%Jl$Ef.ҀhRp)DluI~%wdnF򬺝IYjZ9ʳfJ(}G`=+L@ hm/f^>" _X'+(eWTk\:(M)(]MSA_fswHP>Uo@>MTb%ꨈEdJQFUJ/2lC@ ׅ1kG!U\B̃8P'?yr j]wpod)w8$zCz~8{d!?D6h!: _X1|-*MaeeC`dUꆋ F(1#P8@C0ćO`^@ { ϒ]M9/uCWer{P`zpM%6jL3YJM;n P?" )Qiu~/y]__0WCn_GR](\Dw^VoI| ~,R]H~ M dHiԕW5mQڼ*ި_W.Ri 4s.[/-?6ci YLgeeo=;VPm?XKw1#!2X rHvAԌӾ}^v=jSIFg *UCϏ3\yos'‡ijT+~:M̅w^8mMx51Ba@E"{OU \3x{rX *C9J´wǥ; `ȷ1m-q6%K?S"N8L>mRɄW}ĿY40V~0lb߿.<:`/d+$΄E+s&5>bkԇVݜG%&ƪbj9 E (ncOӵ Rzo&X\wd"&41C=-y3XR >WZn*fm^+)*qp.قKeܜNKzUe="$c2A? d7j7 +_-ⷈK_7'U/>TThB\o%C|ބEP ;c q'3㹙5)?T47YzIdSָ`v0KW: +q%﫧:RO;|CY!cDW 5*<&ϔWvIc VVpxhhGAZ-Sp  B7JMixzLhn/N< zM!\0U01i()ZNUF6}\D3˰Esg8Ȫ[/V}r#>!tXY/!$!Has4)X*CU ghBw()'W[Fk B ep Lr?Ppyqͫ'dO;4d}v]o3U:]@DR-7UEP~)~(jg%q ?}E< w s(A vש_DvE Bvz;7P~2!M 콍 ͇[: 4TF\F1P[4r9?+WogKdsV]BO"a4f@! ޙ[=4uQLNk3'4ła%`>S!v@SХMM hR'ZQ} ٮ~ˑvb?ӟu G UkxUt{D.k+?~=M^=xKF{!ǒO۸CA~V*[cdt9ݫupy A9ѝ AOKBl}-VX'` @^(jj;T[X8fm&3q.#{38WҪ<&}$LM=;[.~?t=au/Btчc?qh0J fW}5ҳ6=;b'~hB8yqH/AY:L[V;jy^+izri]ٷpT<眠pQC )[ @|1ZUK!Gs t%p˺ֆ 0pzǢȰs-#)f#Rԩba rTłUAǞ%O hY8nT L&եWOv0~$icud+lAMIsIۻ?e 34 ,'0wGMO7+(M`9glGŕOĻ'玽/Q  NLi>c.*g@-.M-z~=2lvD oh S D%#Wh׀"b@7DJvVf$P#b{EJ_P&gDc.c[# M^'Xu W<;/X!:]y|ypMVk츀ȩڽaJkā#p5iS V cy57&M-zh͢^[a oSdF)w4f ^gQiCdjKӏ0j(>i'ѽ10m! .5)B~_PҌ{>IWjGM6\]-!qksQxs|T17C.y@ôq.t 5gRh% yfp..m!E!b"67cEGvy]ʈY>ӆnr } ;PL_Mrw:\*y ZQxpR~ iKKdn P[p8s?/Cj|(M>"J>^wmªF!~ePYwuֶ39ȕЌXI)չ7 7承Л@$֜D{`{o7h,Qg댻^ gŽ(TikT$)9G_+9^l ::󆟊]Spz2^KiK.Ѣh))pTin^զ`DCCa_v}RI~# Fo~._Zm)""%#q\|2J\1ggT>a}Hx;;FL1/dHJ)ːi*H&7I^ GR{5OSO@$K+7`=9C̽Yd~1Rxa A| (E<}~E}>iR[{tMzU z`SMXS%>57j(E;;<8)QaDCtĒ0F3F1KԒ~aMƽ*3Kl^<[bfҝ 8a H Ȏb7tX>+k.]`S>w-PMB@HNJk4w:۲^s>]gjuLM/\x [Y0p!DqzU:I`"Α+u'NɈ4'_Br=n̩ /Q@ 85H7kg:ed1qۧq<./5]А2k2>RL-ʟ8x͒\ֳ(˶lrd3`PI- "ʼLvRxE h߷ `m4aJhipjpݘ+F}tҖ=XŸO__"Ȧ'}MɔtQ73$\#3Dy 1Xh9ܩ҅U罌 ħ7 RN?m@x83 R4>a5O!Z$jK>ow%G˒ SME0uE|9@X9|@;X8a0d׊~JV(Ay l;"T J%6`0n?;tQVy;gu" 0k ʢhÔ(uXRZ/- fS4UZ"Qv] K&(]>M˔/6H*BA/)٪:j=rPpnwAH7,i>q 7%UoA!czIyWby")v r!d ğ0fIlK1Lŧ we@V>}б_BANlXaJDȴY aX*j0հd4Ha\ĺ.p{l?Yη4܈lHNCN+Od`2 4s[GNP oג,:L6n-} 19F` 8j|$?#DV#HPSΓcN@Z@rEhb:#Rld)kC<>.!obmkLevEf ^lVoȫ}Q5Z:܏ΘC9)'vrW*i)%jrW1֤4ؾ})q'iTA%k_ Qh3I5!j%JKͫe2 ve;Ս s-bozésqB}QL^gH{^w**Σi@-׸UEz)Sl;i1S-A~c#RD8>Ohan~Yf:,%‰J2q?6;x/VT1Y_kӿ_dV Jh>Lt6r3{j\ Оc y PV_pN )""C|fzï|]o3Qy5}-ĕe휣&Ɇ+ Ԋe:?רU d>6`<#_M aĔPh}{{Q~:9pwOc-US pQyM$ZddF`CeYNg!ݓ-˴ݜJ  m7P= R4?!%ءqֹQs`'wZaolU ~"p/bؚ]B[a7'jC [I3jj9'!_4,LXl-ᢷ a3lprǪNH);^P,3]s,Zh^Nkv}} y2=oelihIH+tIm?ysgxlAN $1t,v \~1Y*poV wn/*;PW:(|EXV,L; f$-'UVT3@4af݆Nk>c!~$Tblbe̖ 憫w7C3@CVztIK3yB2y($M3U,/1mmCg <$ Q2QԧuyN]] mr+WUkmsLT䜰댾-=4ޘpw^6\ɣTWMbLd>\֜C1;]xK,.l0Ad@  cWU%CZ}(i`+ȑ=5TEsI-4 shCN0zA;GTz쯩Ug-ԣJo2?Z#/ThY *!< V[BD5J|ODcx=VġC!G }cS'f! +lW~TH=r *=+Ak?<D ׊i Lw2Ytն47[ҹaL}# %$Np'Ū# 6ү,|>O/\_Bpc~[=Ȑ\\?3fmh,̕_Y@j4:܎:ini+ .<W s jF_ FH6@\D|5MNɦ{6vUd|<> !U r}nLh,;Er= _iL- ^ %q"fM$ŝ~T_xpAΡ^5V~/R&* VqVekN~H#? jUԟ`[G KGShѬ: k/|ɂhhY4KGc`Cݗ UAwl% :ʊ6 )9 v?nROb&D,f[ժo񸷦sYG/ZUi3)d\w8_QbW1E2{gcge/6냅kp )M4/ݵU'ITKUL$ٰp?iy`%WdGTvcLsJZݰG2G^[>|81ңrE ;;&Yeiw0 c3,>?Lc0vZ{ Qg~wU|PK^^NzWY"IA?<#x^uTp~3T.A/1NLlx! ;yF.fk-< # ~}OH?++TV shRL`ѱv\n*qE; 3֡_v'$I18!QD_wd.UϘwMOErvgcZ*NW!. ڒ\уȷؖk hЖLYw0[(iq3e׿hPR:<U<,hxZ TaC.Ͳ5z60 ޳H(1rײ~^x1'_Sn3(pSd~]F@qI]jI״̸  \r]5buB<~7q>ReUtgQD6- UVu&``>M2R-YKΓdir99A^*.|4|MkkEB@~hZ<&G/‡@GEB: (GhnCFҜ<"&(=E2 NRb'f%@ Md48)ٚX˩aYqWxUB0|&>چ׼qǾT)'\E $5>! QUr_i~&4`t$ eۊUq6/H!t,yѻ3ת=uI|ӑ@v?s?)$e v-㈲YE0 b<49'C;~D6,zkY&f-Թ*G= ֑3,]kLBӨjzl'ߜ0M Ev,WDгB56Lh`x de鰔Ws S/4tx'@F4*scyI/h믥hQAdVp:9z ryHSG:[׀\Wo2p1Vo 7C ڬRi~"%(Oux0kaP>6ˀB#GkL y5B ψ4dYseRuvIDhxљeAfG\|QzהMĤ ovV=}"Fw XTǏʌiA\1-l? =ֺjMbw/G39eܾ* /<˃k'1>uVE6x_j~ [(_>]l17M"x6GY6ӿ Lc2qU\˜a!{m+<K)t# r`fXx. &=fWsl.\%@C٨ꫀMghh{NVK8Fr7veùuVT&ɨ/(Crf4R9fK&;tCCֲ㻎 -];6>uĔN~It"1=r\+ pf2Z>ld~/ Uߟz;y [*mf%TN!s yCAƋ\!vC8W5Q$߁Z#",B/#cDI;|6z3sh>AuHJ8}vhW2]}EX\TzT6A1TE oj5K~a}ND\'ufDewŚ {mmYӘIB5Yܞ}Zʘ}np)Iy<6Dqhqv0V*9+$t ]·=?[?-L]Iaaٰ|xSNa/nUghi+LDпoeG'fjd 1ɕ_|Z=DoH{lu+7+mm2bMϥw6޿z1'f>I{@`+l7@GBN/fւ>^v12MؔЏy;t؛?L92ɈHGiYĝ$vrOD)krFeұM./$(muhX#6s(V=|:PZWb4ޥ"ѩů~޶1Rw?Ƈ|Eh3tibEeicS{ld}f~4!9LʏbaWBF $7SZtqfMB889<]O8 dxW,j-k#.6=p?|i/S]?lp=q@EXɷ#ay W) >Lڇ.!OC&ڐ7=r:XA 9QrA0qnIQK C %qUܵAaWlENH˜*Nto{돛'4{: !k;|Uti#2]5 w~v{Nl(*KeŪ59,Y֯].3xAbeMfc &"kZ^o3Pք<Ɏ[?`z9Qc{η$4 nM]e7n!QB&mYR<8U(U =0 ܜ5\j7k2XjaK'M{q-_qU@ 1J+8O@bTW!ұ$zKyKhxo-:Ćރ1kjkٌ[ z gh 5k8rdeY"GgKZw6Jg9@Lt'd{Mwg|9[l`$4Z:G1kZO(Vxs)l=^8Ubf^:XN-SJdHDzhn}a =j+Q^U`]O\b"4o09j-LBZKݽLkɄº/< bm>r x2?W%=!9,yc{)kAv(5;Ê[ӺvAT8?;Sx8!:zO*OmiA|eU;zw}" qJ۔*^t%HШB9bͫj[P?P1S{=(/ fQka,vtw&5IME2J=+O1&^! 2A{jQy3Vl#íBVJ Z !Xyf6E Bni(nJTHD8fq Qvp^̠slb?Bd)S# ,NGk/".] 3Pi/DS 1 mMgZԋxpI-Б P/d2xE?P."_mv&5f yh%Uk4s( +6I-W!ꋔ#>GOwWcL_~#DIңh*=ue=]=A}7Սux-=4{-[ǗY&6O;]|RjNIREg^`1$` R%]Auao;629 LԈ60!3wJy%ڥzW;/BFtWp￙KXw ɰѤ.I'aY6o'~&=-ijAq6f+ay P8aցv~K׹uM=6U3ZLUɉE(L[趩4>)Q4-̀"4o\6 E/9fzB)rA }*At̩ycPx|MP 4WW1̣+O^\ESM;Y0bҗȃb<&qJK@_JlmiH b}N=ԑQ]n3I-f7gU6_%ˀz!?<;쌦JNlCYNw4-'0"z-ȣM5_kgrj&.Gt2;Ԯ() |3dhZ\<+'y<:Q>D$aBP͠Mѹl8HBɮo !P`TP{е/ѼȊXcûkՑ2Lǂ[ʽ(XQdג+,R)4R4zPtU;׼'1y={5FSY < r.|pSO}g4'$."1od5MeK ]R;vb0=X2Ҟ)-vʟe*S#F9IXs%Nc >Jy֕%g" ~`0Ct$BM_J3I,ͻLoE0K9u[yhv}-уx6j_ӘQ `kPbeªnN$bne<~}>b#CV)up  %uSy%^JDž1 FhBBI :pcE51SmEi=}@"{6*>&iAm$jTB'|4qfxɷ.qMh{@tlv+usR&$mڂ\lN{f;A9kwn)gQ_嗹Ƞ4PUfTޜ /pd?/!tڿaȚ).mtnlgvOPF v`k,RI"ɚ9Nl 4IWW_S!*QF]zZ]{J,4.敉}  ]әwTpi99ؽ,cT>DA+_̐=d+6gp; Vgqh3Gئ`Kc~pa3v0rv4)ab"5z8֧Ҍ圱GY;1qqC x{:\2J2>bW#$n=оG>҉5fFzcN7Da44?(ނ_ylާ1N㕄8c(:~^Ds] 8oe$<΀FjZ% 8F8/IM7 =^~۾ת顸#i&ٵH:1a_L$~a2v!Ul7ȐtFb[h#Нc]Tb<"|6ʵ†>;NZgλ*0*~oaFa]_ f"\ V>=/S۩&} 6߱&o6}lE6 䲐ZMG"ׁ=(gS8沛Jq26sÈn^8.U(6(f!O`?I(HAGڰYU"<&z&ka❟XP3+q S];)]p=Ѹ*"t}VKؖ O_9A;}Ѱ@#uH~^]h;l2G0c`EJXǒ?"\v\1(*&18bPnNj{FD*څ!}hջ%mH7̪J̸`NiW642QZ9o Mcᓼ#ǭ@y@>y=A &߻׽R^HLњ~UxK&g8ĦG}]QQ{-FY'…N%E̖"JsΫܭ %jEc:{B}?ղftYw]/k_l|}^(@.,.2eȏ֞neM½k)pȻAh)ķn [c\+F"R1kb0 W{WoC$VQytM?cx;D $"oWtn*=l"d~x>ʮB̝FD€sPar~2j@ڕ\RW:qY̭W֝ `UMe&g칙e啰Ff13%cOR,9.V[#U|o߻\(^׼ͶPH놿vNx_x ߶lAMT]Ү>^Uo5` .SI!v?>'F@-Zc~Z^^3bf=ǩyxSaS;48 X8(_F 9 $*n 1h\dL0(dw@LTƝ2UPX9P).OeUzNECMF#Kwdb-4p=K̓1,Iۮ"} ;MŅeRW_:ecQ i1;v0[ ef=粓ĞCˈeVi :R6/vWJQ`@RK5@w_vւOT>f*M+T!tלW?]]n{Nkk-q\6_2-`MZNV57s|H𵶣]z`߱w*ZCL&/hfu&)9:k3ޘS?N*Qu$0gIϼU4f juSwo-BE [Scb:'=Bӟl{(MЏheJjncKTq37\nܫJ/'O97;-X'>7x4c+J(zQ3I:x>NvscVT|{o\+>/߄4n1Dхumv N\{'aX!ZhTv A!=SԢǎ0C;#<#@8GO}WMr4B%*<ԤmtY$䯩( `UNMyj(e.Ŧu'h9N$ ho!~INUI{"jx)?D ~Ǣer ?3&CCwna#0xyRI:)F7Y(xkΫr`iN*لdbqpF+PA3I#3.)1ɎܽS'dy!^9(ArSj-F\6u'`voA<ؤXٗ/*ew6U)@uПgoB"Nn^hX5}tt!A?Ib-"TSCl <_jWOP);dt9NnDZl*.L*+l^4DxB1rި0%S%6lI`iɂ])W_L :( 7*> ;gm9};fvZ~j ,Vk:OIc'1M0tSmAHJ B]&ܮJ|[]ϕ]رg;75N<2h!-ZiT$b@հZcXB [a!'`|‹)yRIE_S3E_Cz/t ,78+4&3(h |55 g(˭(DT n|& yTK.ʘIQ?R~$YNg3P˞1ns IpK=5)yjTLVw<v‰,ܔOR~MðePʾ%sۃm ajӅk4PUKm$pnO˦wɤfe?j1~ S X^YvvV4z_'Ƹ_-&WUQ%Cf 8#qۭ9߇ע{P07Î]8$It7Y{w `:p*\o]\T_YE2"j;R,UJ$[0PrTMC[HW ñ{3{јTaC3Ҕ2>QeRj\'D1hL-$kb<pe)\ O%9l}s`9@ԫo(^FGcp7dL7oWzY8)g xl&@m/$P:ǃ,ZʿN<4b{YnуHs)/Ç(t1»l.Ɋ-)ՑŬaB%t-S=fúp{ Q{xejZ>]:H1)*m/΃ŏv),:F^&-RDCMu96bl!K#ܸZ29Z c@5 \@0'w^#ˢ<`9~|Do,:WlJq% uTfХ+d`ukQBGLg$/XfǪ-MG k)rƁH*7} _1KUz4t|%o~r8JO۵ y'иbJ姂nkƥ`&odۨW- h'WdG*@  @Qrme< ̓t^\ Us{>վwE‹19v6ӒM$D)X돪t)ؼʪ T%y,¸Έ>us;#P[?I/3! FьQQNҢAz+Z.`4wų_kb*<78cg'"~nŘ7 ̑09%hM EmrSt?uhSA?Z3J]hftT?HG)wՇZt4!:'0[G.le!_^u'zXnB߼*Jl\%/Nj,?nj0;T_^VtoVAč^1)Gk;++XLѵ2[#Bex~򱄋5_5^2bɀ A(:%|782uWu5Gy'Q'(XKc*B ֳN}N"fA t)Ӫ#AMt5/nɛΪ<9Z׷y`֒*IĜdiJBma;xgH?xw w}<7o*H}UOt6YQ̷86\/4EAJE<6;5[KykpX[;.di;hnb6F*sGo,0tǑU%֖u,+7R ב?#zpZBuy/\)7^ͮbbJà6 6ʰ7&,F!]cIۛӝh$Bq-R8tU&+ g=/so-NB>j3vv 7lb^lMQc *c? ȺgrEM@"{ԻowL@2<@Rj-5qJ-q"E@@f#؉֋%${MD? %Ê]@fO9ZaR#FOXrMTiTd%[R-P5g'HaKTT U/OtSa8@wpH/%{z:E7 citobF!m./q0wlS \ Q1놏h;²ΟUJ<,x# Xnt5v٬M]#k}_Hfx=tTѯ/GRJZn n-Wj #뿌vJ; XU~R%;)ShJ@RnX*Md|fqЁ|Sԍ?۟:9v_NGdF3L3[b,Kϸ!]9H|r#*PsuF=fB#nXJ|чJgYJ&+Db9.SFqt8C x$;C8uj|nJӗ"LT9ۺG ȺF (ؗٛ13Rw&̃?Ôml[O{gIu~x£Tfkn|xuvk(Gs$Ϋ[-⟂0P> tk>E_o./ m9Y9/L/4-~Kpli#~O뎐fkT3q_"D1)zbB6Ȣ.I>$@ݶ؃T8^(No*yÖvIuC3 Wa| W- PvDl:,U8$D(miKVۀ ΫkFXc;6vv#ӿ ҤLyk|,|I֯whXPY&GaKO/k==n8d 2%Z)휆\Q+@i9tQ_OGæ4(ͼAUqjՕ#Cd:g>//$G)'%3fˬL3iX:ɏJ kBNd;_S~oNFEYlsMi&c )g>Y&vyb`NеM܉9?n36'F4 Pm#wsqSEg1 ׋ _ x%ɑܐwH\Hu5{m /~X"(pGG;7H:oW: YЬIT4Cw7-Qy$ tBpё_qXwÜCM^ Qq{nIT-u(ʴֹШ,Tk%N3-@:c`N}4N62}F_~CtnJ&\$m.=ev۳4lL_ p|HTj̊s:`UIvD=n$Xh!0V|z\ 4lj 8 ᰂoOҫEӘN"u_WySt\HJ*"YGi>&|''Q!ܒߐz6~c;Vx1[lt{>UczFԠ5d1ɭPbpok/~Q{);45@pR "9v^,̇̀}CHK ]U<픣$W!6Z܀"VP*i#>hfOWe8>!Xv3T5%z̎3]u),S)1?I":=fSm!C9,irqq>>ܘ~ɣGHDgr}a-\H~qLstWN0Zo6#co58o$:Mx8M6kb}Ɔm/g7/В3#9W!3WsI[Vۉ^c"\fknbLP:لDMֺjX<]l@&nvJwmeFD?;5Օ@H% } B>U_ $(U]JRmhudSN4f{Țr-ScvSmI-0#Ym3};mHzCz~yWHDxIsKg)q7[g:T^.>ɘ;.dZb^j _=. &M[pMWt'7CD)_1{ N6c DQ}C-la]X(k.E)"| DB6~ˠ扮_QRvF1j 9莅$|nas!Ut%g&2}$Ic FuJ̳̟oHejS4//i[T$C;}[8*K&%}|Ai7]C׼aHhaL adAI=1]4 {'#&dX%XI$['%ҤC( ?= $+U.o!`B *k§=4E_ -艒P qu]+FI)QL%4" E2N 7lpPZƑU,B~NͦY9”NO T2]-ٜ?c^?"%ߧoӺq]GFpڵED4vQʢ:egH `rx̲ @KA{gHo(.(1~ GRW:rYӺܙ3ݶG1f3)e9M|{>ezBqȆYtk᪲.2̎wyt .hD ! SĚ˜B5J/E#3ִ ~(sL]4{qAGO$Cś2h{8ƋM _ٟ0hGxa6duvnb a_i.]!Mpc*QM"8 VN&{pОƿ/ lEysU,DvcX@._H s lݐX6hvBQKw9nɡ‚nר2jS^*/T@]}l^tҹG-B=Z꽓u6HղI2%}PMuo|LETGA ǞR a“{(9'#E*ĨΓ wɳ)ЅRDװ:C.ڮȚd9}+hA}aĮ JeM(P%]B r;e҃L9ƏvB:¦kEM1N3 cvIv^V&Ywʃ^KS^ȹr iqP Q^"vc[B[9CEPn4 \]&;0!P+%P\ /M<MdDST})NՋܶ.&A3\Y\[|{Ƥ=)(SP}$v`0h5׀Cl\ >F8-AvIOԧ~8oۀ1޼Q"ON72dJ0X~. *E*L'rF .cqEp *CCuR4.6ɳ$HQߥAV HtoX{l>`؅Įf ~6"{cAG @ xkGL*@( llJ7*۪&H+ =#fV bJM9f9ST&Gڅďq)2ԍ vX3T{m+۔2~v# A6)f<6Bp2% w: @c,W+߹rÈc)u g?n%җʽqCzB7?+,|0nE xUލ@dr% 82K6rBPD6y9ì㑃|yxtj2Ipzol$Ҏ0V&ypȇCW%l F3_0v}RjvajM: \OU.2_Ʌr&5stt2{5.:fzÆV%~$!Y*)d "}!rɹ*s"/Rm? G(#<滕".(؂Ls&$|j }%ח9~VIE3Wmt'X ir\VЦ?rwc> Ўk2- {GrJGsN~қ*_D;2|TAW@ԳH?NeXop5B}^yv]%L:fe=#Hj ^]0)߷٦xXuݯ.tFNTѮ'QHqJX1Ibk@ : ݤ{'8$V 7j mQ`2I/3<;yu$hV7~xh x#6&<) kE`Ekʴ[d!picȩ?8TrM;"axhYwH&xPAm~N&DswcA|yb# %#-?S_VzAlXN3OS+?G6ԜMwiO69hy޹$H %Pr(bOYQɲT]R$x3}Et2[_j37 =a'ؼ3Ok!L4;A;5u$GiYn(1Φ\gF|CYK{.ﻺPhJ/A0Z%85 #w/UAK5/k;~0m"|6[^ʳc6%݆RhZ*ۼk)46TR^ w̷YS*Nh}V %XO6}Fg`:U}&=Ql?I[TQ!/:d/y7pFK55LL)"ScWx^54`9gUG4?LbW4@}C8/ ;9 k^`:~ RE"~ ¦2YQџJ0CFR `ؤ hu&C\tw,aHs_0avĴt+W骍A?>!'Ӝmb$~v"Z^ldA@wmTUx`բԢQNk+Zp^oWKơ^eФb$N\ YhFlo)֔s>p"ɒX'|I5ڧ:pjFIcp٠3^'l3WƊ`(#8UE}~'LQu Fp#0+[B{ 9"j}_4*Qܵdwm}ꭢ"2dՔɩ={EcƠvQ0@S*(dV ó< CyTHxk0z\刐 TC8n Z9]Ŵ!7Avm*+QlMtO"i8<㫢Y} 2f:Y VV"s+қ~ R}VVTn2w>r.R;R oztrC$IC@=>4zq#kACn T C28vNEpWCH\?1$5m_üФ8Jl]&tS*E+~Hto;cu0h :~VZbHnc)femUeB3Ԙxbar%(mya`H2ܷY^`s{ny,?{E؋C$^^jX`N·Dufh%0o} $ws#0Fuj[41>؞o6L+-%vFS(T9%ޜ9؎i^ds&ŮXU,Eı iv[Kո` F\v^-_. 3*A0.,״k R G%mk|rgXՎ>F/A;<37ri N?ـ(VX,z@'IłxPDEGpXlKIޘl!|h 4.HQAPԁhn~oE.vG_G ^LpϞ)ToVi@1}"$0h\7Pzq4c`԰?}yhS5:<3'F=r@-,cz <'Pb_1ifnID.hNkj 5XP!#Ⓜ['«'MIN p['{ aӧUX zx?;.;f6}"Sn{^o.[M!8q-bd쳾,2ЛxxYZuδH[`] Sm8(iS؅HAP9d DG!_pUL)7POHPAհVH(![('E p#e)SDƽzmm<#UYP̰U8pbES& M>^Mxס7)xjV*qf9V Dq { &ʽ4SA5:7h݋;x0eIBV#@eyF x\ 0è{Yx@\}O$-m7\C)DQhPS L&,H;s:Ȍ ?ˣz`V2{8 ~{nFѨ,Ŋ"*5َc';T҉̀Zkc&_̚-%δ J: V)J2 c eN-'/@eѥE  gD^Ƽ>'7|e9Y""Dҋ>:0c᷅?x'b: m^Z4C`|`:(09Q^EӃT\v=p8Μ⚢O碦 exS{8*O)SSܓ&|Fҏi(kIYnnzUhN:M!4 g`#v>攎Z$`@]`"Sz'.252NDQn5R&a{JhY h?LƖo9n#Ik"Y>v T]IKƩ.(F$e;K~VӀNYgy Hr6o4kV[gN-qHq<+[ &Zqv$9lq_eg)F..K4^x$QO`%kFܔz[U"Y!`bfM##zMo%wxC3q\=H7,#!g  | rNJFpX@*,OepC4s)eUp7L`5|Y LnrXJ,t]X6tq.+׵Bح6338M̰N%i#8N:jDoinB&04j1aK,[Q/5F Lm*|Tlqz ِ0{cf[q (sodrli`arPqvVsUAs&FF5nqjY%~EzV<<*TC1%w VS `P+>hݥpm8j3qeNm"!bT<)E) ?zoeG ͮa [k"i%eBaЌ8&v,4D:Y M d}"JiVFҼ}Wn`Hu"Ż-v¼K?"aX2*Jbc1vh:9W󊿧FJV[eV7$̎+Rw2h@tᮍN?:ui|s<R?mMf5jUvkFwoj Z*3;$-*| Ĭ U`*$ x+3Q.xXmMm ^E9B:mA4KqAXxnY3? sWlxT+LT|d>ސ^Xxtdm8QnE kЛ>N`$iOhE @rQ A HərO|y0E;]AtoY/>k6#[(A$㔇.|၉_Nl=6K '!4UTFbFץrJřEVÓ<(;K7ѩ1N;Q\UŽ#IFH~^#M91f_:/r P|K*߿'CWђd3' C8f] ;ñƒ595ϻٌ;{{sGg^ g_=Z>,pp }" 6bLZ< 2n VBiC J 6jvT{nzoUʹ:8! ߄SKFE@1zCT4 >+RFPPIW"(n'>CKvqI'jPOG0 Yuf _ "tPV7ZHLL!ύ:PM2Of:0E@Ww/>|̗QxXW[iq,ΤzORc.c6,}J(&0ۓ2+ fi-L7(ń ~s}+;&<=|51d8Q9r:Q| '4fnHfw;o) v}RZ}wMxGiCm@ ]=>Vwu>/2}?m :$ [6#́cTv=FP28AYO/FB0TDJrGw0$#?B߹AidT4/ l3D$6TڶSTХ|u!9_)؉ґ4WHWOqPD((wS#ϑJTRZo7ZxͩvBj$rW4y $m@>M{!%Fc3|ș0~Ѹ06qpn,pgM H(7Xpqp9y g?b]Y7oZIٟI E'-cqakɔWr_ŋ83$պm< YJ$Q;Xְ)Ȝi}ޜPۮM! )J7*K ރqɰ{.,$Ȫ#ǯ{}+5芙:Xg[Bs0*qBpIVd$41rD;m04.hl! _ 9YĜ%Dꘞ<~ rCY9Zlm hy,[~;$ AR5rcڃN7Pkb.<#IP S]*O۹vX'οDRӭ1FB.A74jBt[bn/-R}fJC&Z6T>#V"Yv][=N*`ϸIR f{C.驷=)RǪ7{Zpr,|O'f_J:\/_*NvVF# NPfwP>oEE—*ёV.LV9a6]@޲Sk`drnYI|- nv'boA(x n҃[i^G傭 ^]O vɵ/A*mel5hY&/bhekio{&äorNWh3gII(u`) as6*B^/Mj$qӳ)tYjMw"xC_v4r\,uaw)Ĕ,NX 7*lSU2NOD24@g\T1<ݒzGB\K_ 'הa%YH2fvFn5/N} -~M>1ϔn;Y8êRPK}亣!ǗDT,?xijWp *C޹MغE,ۃe;BokPMѲM3Sv3EyV *hBr(k+u҆\@&bZ*5:l[)gq\~yN<`QkOkLm )>9Wt:?FѫcsXBVCIXH y]6ӫܢr;H0n9քP{@ vM*9Q^\OMtLhx"Y иĩZFXIKTUcY%0!לLLM j"&]Uqh'9:R{wS/˘~q7ˏ恗gzX&!6|F>^;P4 #z31dY_/q-0־[LAؕOI<ȔDa@D Ei1nг&25.ʸd0Q cQ;y>\Ŏ'Dp ),|B-o}N5u݅?H.m6$iTI^/ L3 6MyDNpt*=3}KdPTi-oTzNL(Z O5F¯h.>o(rQT$+BmXdJ9po="A nI)/x9cO,'OxU< A%Q0~IK^:i1k }*پը ߱VY\c^U#"k9K5NWAMe(9ޱ>ߊ \F ] W(> Q@$]?c >VxE=:Fh4]&dDHmQ{ q ']țA#^. |mIx3i6 pu~bј~ y1֋%X}4͟ yc ]bu AYζz1pB21)PҞS#% 1)"InŦ]^/gFcx#\AN~.3wTۼ=eߓٷm̘)taѺlfBz{Aћ]hEBlWjl+klm0>Y\!@#g R0HL'է@@Xd{Brz,qx_#nKQ&;8Wy N9J"OgYX'%ڊ-\W 4+ߔtӁxbmbl3N/.Wu#xࣥ#<3m2>>u<;u ̦VJT rn{TR{{Ǔ3j0ܡL?j>8]:xY2Rc.6<5^((+c~ofRQ,6;Ҫ+o@W΄΅~>@hv<;"TlƖ=(5qbƇؽlrq0GILggƘo7҈0߼Z׍zfȿi'^E5Un-GPYJhLt {i "_h\'4qjd{XNQ%Q3(PB Gt~,Dg4XvEĞG2[y,q],p"`fYx׺XR< Ŋ.>V}^R3&(6/='p1-7z+Xrf^ Sȧ jc)K\H8$7Y.D"#xrqK+̐򉡰J+@fP"K A'bV f3un2=QWH8'6 !x߳9Ǻ0@in{{mM_Fr\0и޿.8 EЅՁ>q$EAf5'гgDUWȈ0}b|CO|)U֒w ݛ͘_CD[J) ;>$/5h[h&%)kAj.m2,V37+ 憥v0’w 0Ý Z.vwnԘ\2X"v" B{?< %|\)n [ ț>hkh*RAavZX `y)yϥuZs A+^͊+~ш0D9x5RD-$uޏ ý2:h4 C~6 l5fH ZDhTMfqz6Pa R=ڱ95!|f혳MޮH#M؂hPK)lwr I,_E;Tjz' 2JPc{8xeTd0*&1k;s/GykE16`- }K]8Yz;xu t*\p uzJcaZ+YzP ՔNfրMs.ɠ=dfK{kXbVrxT{U`ŨɏeDXWkJ))|;,`8ꀇReNijUD1AoK\SJw2z^ć5=Ytqঘv3B#wBPMGYVNP$R9=jtZQ=R>ɔ,?cГ-_X/0)I~~>t--Mcl4B,PRruiދ]H THԠ9^nCWoAN2IAҿh)sMlzw#Hl)&ju>@NbL4I.I i`2%Ze{\TPA#k1eqA;oe\ pبcq5xo A-_R{ '攛Z8[sҬzjaL5v)OxLoD)ƳYDzhӔ)ҙq{ .f|6}tE[̫Bt 7h\  Lw Ԧ}gw B~\ɀM#{op }M,SE]A aBN; i[ vl578#ՅYZ1GE4eit=zl}*+K씅Fk_V|hh\K_^:3tSp/'BtG` VUg NikL#C˶NH( -? Drpjqp1ѽim|:Nǎ ^=|/)9$fe}o-N5dTS5T&A[[ڋ^C03ޥ,ؔ;`rnc=?SԐ8'Ǚ(2ZRsn5dž%\Itv̒q354_8,*.s";CcYؽ=>WHI>0jTyLȻꥎoM2FN19&WCOՀ:-¢& T/k7+wx9 ZD^Df}5RYW YYG54 !1ޟ UFм`ӛ]8 QTh׃*N](j8p+%`bXځ9"ޘnd~mz_Xu_kҲe҉ SSa1<7@{<0[լiekcތyOb͂0tV527#3\bqYdJwF\ p^=Z̳`xS%êh5f Ť3do#-頝Bf/(Bï\ rѕmnh;’$h |h&F icԿ_t#"XUo,ihEk"0]K RWLUe3z)rd43$ cwA4+jUZ"󂟬U"fPk09~X}BٲCkdμQ;RT.籟Ydb? ,q0hwDVrhbM,f?Ɖ 0d IExA֎+!Lob6XPɈhٰVJ$pn]i }Q,C䲖xc C'1d:?QQ$~h BAB3B<ҏs&(M: :Pêj^K::>nnrg„[ТϊgL>s$q:ou/)W2xm%k&}-+4ҰCi#_F. yDiӑ&-Ŕ͎7GI]j:EZC'|mtx -bJi͸tȾo;e%r7iSѻ#WۦPEPt^U#‧e9N J#_x? =AHgZD[]%$Vaўq١svL' .4}m-=/@`f+͌(lF[ 1~%d0{)+:2 2w$P*P8$sWAW9|,N,4T H̭*B9^VɟɛACLiAb&:4*|Z*_qwg(1'IѶcO.dUunA2yȨx2$/+#אW5ee\=f1؀+'vᚅ{w{Ihn eG=;gv* B~arxئjBg'Uph;KR$4l{AOL9-N>x#VU 4"$E'Z=v|p|2\;Op)wܑ\ gAvH_nDkQbP '6(K1 f;@q/qE'K@'oU ߎtGn 1no-'ѕAxG+@j5u!pA mS¶^ʯ585*A-::׽Oabo> p.Lp/eEЃ-3S[3`uj: (0qKA@wTtXKV jV^`O&0R3qGsNZCMhkȺw0[Zmʜꔏv?T{cWO0CޭWWcyYϨGeW$#n߮|2/.$I6aJc650k)>OHIҡc@/Zb!}ŌA7FcXh:0IZ?Ɩ" BP n`. R8hd jAL-+k2U7Gɕ#o|Ҋi`FЏmRg}`t% (ךLID|"u >=tyMHZ\_J64/OFQX;KA#5?4ꩫ1&T1aXLtS(Pp4euC~b<7 M]zSfElLN< pZ3~ZgDTYq&=`ȳӻ_MZ9Oy0H&$'H3{xDeB$[6~`g 8}On!x$&ڏ({0z7uDiU m #2hu}9Z(& x*n,WoBnlh=-Ij6^^u﷌<3XS _ndٰhšj K` t;_=[WY1KtK= d`a>ۗ&T.Z $4&Ӡ{00{jMZ>D JbWY}'=RZ<"k4̇bV|+쏾3w),Rk{k`jip>/tx|쎙U+ό YFfvU_`2[mLay>Y.[;`D+RMjznmgUlm-`XO]wZ8(k 9LB16]x'83U54~Rtl=4?b? /&od~``VAMGII;6 ݢZk8Y̤I4ebKcq pH[@K4[t=Po>.UIBexBU|EX9m6uehĢ8?mtgw!I|*dų>ųة\X8FݣI Q[{:M.pľLp Ҫڦ1@Z lxRߨ>L*𫀟aaC{ `~g-GTa,7sjԏԲso4[w ҆pD{)Yf$kc ̩ W{@_"S;G=x;"C 2ӻd53@55QBr,K<þRy<i!*LbrFS;BP_ *wȔ Ԭ." 89H7=X ݛG؅-QNX-^V}K'pix&A\Üc&-+N[|. Č DP0^dR|-ѿ*`%fiexl\"Ѣ%Dh~|~jI [-7;i2] e ;n7rdwA<bF )Jv'sM^hg,y#< jвlM~V *~)z#Ȕ=#o;5c+(a{pD^:=tPqluB:V=-5.K׺5[ˤmTrIfaL8]U0s?Es?8hЗ  %Ӎ@Viz_-XHRL=hO >`F$~c0&jr ?+"MqT`"sX@D I;୘PҝiW!}?lujj}vdqf?|f]Ǘ/a^9%D):'&^ > Oj cywS`K}V94vAuo}3;HǼp"-.k?~eI/v@=] {ֻ}.ҎSLRZԺpVRgeҷ3 ֽ6u#%cǸ -2Lh,,ߩ1-ZOύtȾQ&<`&(>Kc]_?MڢI2!h:C==I[I!F4%piOThí/incNH(%st?PXVd? 30B .K E+hYÞDT<3}uN4.`L7u~:j|U>#!ߒ8sotu.`٨BVɁQ)QSYa^tĻBM &fS!Qj ;M:7 :%Q +M譑9`fi_=ZOL{s8l핛 9~H^} uCO+*-^p70~*c\ٶKRnH>u[L/mxLkEO[/ ̠U_ wKݧ(1giリqK0 Pce-bNI]u<#ުă.g͘hXJf=Z(U$̩̄K'@{+)o,Z3 C MCW8g3h y۹Ğha MZߖ`\׻ʩ;˞ w:]:z ky( \m"W \y YȨgHgS Rp\l謰#BuW;קMM@q*:caa F؊!6t [׊/0[fphh v 1?vwٱcPݝw||toą|w%VSʔwkCw>9L[+EɐvgD"?)iūs61s5S@s_?DleX ]Q<_rʥ KU8n?3ʴ4Ql?_,fET) 2G}G`}Uˇ \,,\:E~ Y݊~ћ=O+O' ̺̃2֮yH*  N Hh0X~SڃzQHCUXtD_P~>|jQ4|$ ė[+[4)?imKwv%pв9FUိ6UqkvrO8|)[ R]Ί~LM  z/벨uR7ZkV$713hg`;w?^˓=M`7_x$*'rJv8BuodV_<"z ^y~3=KkE-UJ|#Y0SGf 5+A6o8{/4,&9["3jf'~U:$ՒIO;0!3o+|{DV R7=EA8p#YY}HfێJ(~Ecb,UŬ ]Nt l5,ǁ5Z=,CDOк ͑j$1X&zYC[ aAݷ]ěWBTZ<V:ACۧ1JIcYi: ]MK:MD(~DVa_+d@d5.SΩdhv&\&qo%9  d~1A-fPEDe'Z2o 0_D E9by4ml$*"6XN"KLT_a/aR.gӝ<x>lZJurfha\Cm]Pw(:z`M3Kx9SiXZ a?Ct5R \⣪.,?/x qM[R~{VN;ͅ-㼄B(ܵx~%WڽdUy$ c"}άEg:JTN_7" |u. [%:m0#8J]`]ycC }. < vlj v`u9bÇ[xޛuDmU5q JN%vj70faS6$*9Pex{Y8iK)ik]Z:)+K&~sPj}e6پ[%ѹzjc.- $NPR-X$>1Xƭ (IMxgv1:>p( krIl&Gdpȭ0̐@l>k"CB:.N+ QVA'&śqkHH-sl{At 6K&&{fA>5S4UVj> W#O)@ܒ/x{qL~̊UuI $ ظㅯ(#?[kRRE$v3[*Gu}N,-)qZzeI|>n+c|N;6l_ ;I >h^P#Oah_XWrSw2~ ,yasЎ~K]FNjNlYllۡ1I|{A%ƽ!z]ԼE( ~,EDW $<#B8- ~x 8=>Cx/uYGUW4*הiDZBKsi0<&r!;Az9O>a%Nq uXNC/{*51Ԩd8in|o?0MaGao*G.ydģM-x 8n=E"b'?m-0S)U +-M߾ZV9'*rG|ϗ$0CP g4O Eo5tdFYG%'g`#\˸~4֒صf^f \,7`"0Q? 5|5䥹_1cd,K.uZYg%z1Y/%wSIDhDRcs19C )xF{Vz#2f?NZRo}U##E,艸wKx,iɬu`9 = KaD}c0f)Sc<ΨAEsS[0@w4/L]S5_(DRs.@ܡvxS>y Wz7< Y!{{νPPu#^L )׋Dͳ|h$;W 96m؟1,K#ODc6ýkE@c!$^o!6$oAP2zI,rEx.HhԀ͸ҭPdV~Tπ vibMn]RDhn2T;(܉L8x_2|}OC,8s!oѾl,Wf< :.X pFvE`Hb_]8mXI?i$R7nojO _ζDgnǖ)j mTKż^LWK#s?1iK@{dֶxz+U|b@2$;4 "(^fz.E?uW9="$:`q#0AA#_!#SzZĬlhj^Es#EFȠ|'Da3s^2Ԙ? zKv_:R_7Py-FOO] ȕG- 3FP ]Aȯa=_zs>gn#ZoUIcÛ? y}_2C`/sep}_+<ʧw\yon-K׭8{#u764w~\$f3ݤ-?kKGہa?۟TW sjE-i# () qǞxp=([_WjM|8VOhgҸTW}_*3s5"f)1ĻSаZGd@ܙQY!Y-83\reBkG'`Bzʕvc-VX?/;g.ܠ`yJؗ.{iW2r>2(_u$@6Wd:PK:ըRH[<Llx6$o DHXɐ Wފ."r-/5a틚ԑoA_̳Sƈ`Kţ)\P$n&}!Qy\1:bLF7` Z[ǂ~YI@OmnKhPe[6^Ww+OJ$_^?e{.flM5YvUߺ ?5qk*8-nxo5a !Dܜ[\u=rY l$B]ܼn~ iOiWeynIMp PStC~!=ɸi8JI>!!b!e%Rv^CL.[yW'dl982F/7Rm;g~9<$gMrIK/<|)Z}W;^8ٞ { ]?1bۼ=(.,֠`IWaxshě/*|B}+\k+(Y>źZeׂ+ veEn.b趬Ÿ;wlX4G ȁڗ, `iZN=A/ׂUn%Bn:8:!&:LfYy35-\J)vEk9ҮM5QS)c'm\B>qг4Xn\F=Z8LwKvAӊ`2zq^}[9Қ LK LogEY2)Ӻh}2)~k5HU1=u&(wa2= ̼`@{eB5ex j-ٚ-zOraZ_USU4 K\537HiT/c6$u^fIWz eҫѩ-c\g? Vxx 4T"o[lKz% y;tEpA2R.-Ѿo|U6rHPםLؚֈ;x/'HJ[ԉgaILnY:G:-t JQz;}2x$.ȡhH8fnWg_?uF j  S'Hp"Nƛd%iffoo 3rx~'zr(V ^yf6no8#Ӆ֍^[2m 'o{3 ۃ} C#HGwgKm6ʆJv}Zi&d3f גt ei.jpx_3 ddsTGdWunS-I:˵0G`Nv<")╾}kތ䌵{K/nCp) Wg~U|⋌ C7K {Q9wdNi@ɗ60,,Szz@|JogKC,Ҡ|~.Lg{`'>}V2@CZ{8I8`<eǞN ZحqS铉.lt S/Ff%\bn ='}h0+1r>"Kv2|۪pvn@iAMqyi7ϩ˟Xq1ñhNM܎YmcF*1zL*%LX.T6WUخPU>Ap?ADAX@sZh y–Ģ~ITpdy%{\یY]ڒg+gyu1]ȍ$h>l;tgfd*SCLn5ukXL0z(p5<}?-a๋D60SQˇBh9#^G|N3,xaɀBn6oO ttl5#R{ (ƶJ5#oYH/*GX3-)8 5>" +gj!y&ܪS&z D؀Vi^WzEaߟ 2 #D0*/Ҁ7vX 1PZ=5Ǜq?06lD>w&`:(n.m[_~;iI E=u[HXb Ͽ%|M&*^ _SYkbE#SxxT;CA6F|^F-[:IaVG?2/ p&*9 dO% ogþs)1C6#↓a9X5 o%6Tq;X70xb*lKdZg̃nDt6qvѦ>{Vo܍Z|H}Ԃ 8p Svd]t7'B ZTMe9#ڞ$<uۗ7m1:*X8窾?o&8!,b ї:؈ckWc8^UHmE@C›t(!4=g L_f_I ,=fA% 7)ed|Cj>y13mX!jEL=I?@nB mVqu.j/Gs\tD"$); .O s̑ k%KǠCY}VQnc٢DZD'qD,en;k;[R]BqD#X&[,joo=/QR(CofoQfMyd̮GZF_rye蚪3X4 'UJ~@^zjG)WE|9?'g$vGtZ :sDLnlavv6b>0 _RغlelQz+\= #v4@Èw 5 4ys`v7_m9 >]ĜT} ,r Ggtgr:a=ѭG^f{͏AΒg-*YȆ8unO> {z MF{4H}Шo$!b3xMBEϯOS6񰫑F%Ǣ-#YQ uRѭH\g0}"Éz/-2gOa@31mA()gsX/ֻ_ GhmAbp*Slw9_DW뭵toC*x)VAs1Z¼{y7u\keRXF~rѭ沐? T4bz$bZZJpSh+zb9HQoe@ -䝁<=ї\@Y~ֹ 7ӘvrkLkR?Jb_Y'rëLWrgEkR;c 3u"=ݎ N#c)ʒ]z%È>e)I 3g踙lELpmF‹q@>6ў֬2n,Plx>ZwZG%yEQ+a2HjBc 2; /^|LjNZՠLL0Wd=U= #&#QPXr GzPS] p \a~ 9[}b0W}jޤ6oķ~0q6 X^$;m;b)ؖ] N"똿,s1q#U[ \:ˤ7ϐV~pkw]O!!{7>䏰!<ch8tx I o`7{L`%n {֤BHzP$LXAȶ0 50an*%[lA_ NBYkct >W@E?|鴱G9R";==gH/#*r x]kK p,-/Pp;?\~]kh#jjr`[W| zf͊gtwupqIPΊ .;`KdqGhy_3[$ZRZz+?$ 4,os-'dw̕M$Op+eO+p< PfqAl^>律D7-7MʗuMdJq khý)(MY[*!>zbT&qݖbk&J|Ҡb3v!='raJ$Hae$jfJ0JNźA@Xd^V8Q '7?7߯h**"Pd$撎:teq OJM XbȭQWP/kb$=f! _h-Y=h/׃r?Sgqnhke#P]Oz[]檈z88Vyn^yLk+{:1A5 LȮ9e)fޭBo0,Y~nZ MCKLgbYt7L Zn684 gtq}oz6 D矷K7>dAS $dC -K"^0 ͼV>?[@n:8euʑ[͗@ 0̘\J Z!#;xm@kmMa&bPkA*3TBzF:biMȑ9'۔#'sN>=Yzy'EMfɋ;M.* c#DL}8Ga p6/3^r3=L=PJIM[Oiq&SMyOXs_CEpl8AbVH"/XzcJ2E:6T&ň-˸wfqwտϬ['8DFyU$GbFBm%_ˉbpՉ)$6Y!Io}t~b+ShORfZĻD*͎ĸ_<.= `?DaЛ)jM-ל Zve{Ru>gHe$3fT 5}੍>I87Kf6Vj-kPՔƋg. '/rv,4c] ̮=OI%a/kpׇB(ʃ9P?9tZqMXO%MXM8jӔ3؅XEk#6J?Cl-$AHv.=R/as6TZ4y{8ܸC처$ػvr] < EjTaYD-xs?wGp@g>-+v|x"ί(9u@ A3厇lz6À{hCЫY e1hKEFGb#mʯXeLGȶC|na,Z x-dSܴY)W]Cc~;ʶNq2@44vVsa9woEl2gBehTp(ߜ-o/4k=o 1luy 2vfT]^=Bzuj‚x<>?^mms^LF"N:^ Yt aWɸ;Rj*;2=)Nh&_Wg(XNtfX;XϜ_XP5G:rm9I>lӅSfB:&#}FHa~wg'!qkDqެ-)&'n:3M)5S@Ms h$حT,a8!7/ë3բu>|qLcc_2;Hޯ$fZH.|B h m| ;ܑ>xw0x<9N/j} \uv={#LFٟ I洙؛ ݰaY*[x A*y  %y{ЀF7w܅]|}"/h` ; Z&DI< LI7>zo\K? Myz|UMr)^A.`wY86,2..-V7fJ!m6^fn4ui9d4dPX댈rlhj69>|w5?َuV MC>Ks:Tƶ*(=W]s4'4/:JGjE)RG>CS둘^Z]لSEvkaPZ:#;.=ψ9h uCXT9@ʃ :߽X/4Ђ2SLSjh ]_svfOHi@ExYQҸ߳Pq<#$QYSh;Ѹ>L&5+}w:g/ؤTu.`: 2wOOr2$ÖLQ$S,'Yo LW6pg &sz2d{ VòtlG&ek`$)Ye>I<{C$-,?LUgfjp Z1_җ"CB}dwC6z Kܛx`(߹ݪφ|{w5Y1R`Ǟ5Dfx6-W7KwFW:ꮯʀ~[{mڑvuC5OVW~$_$o.㇮^*Pyz F\M 7 ̰݈߭A0.ܵhEcPVwS;#3[h8Wz˯h`b"V_ D˧ ve2:Z2.V).ۙnB!YUo&:0'b L xKhx[GTa֤.yF AVF_̿@F:NHd̝uؓ_l[WUv9¦yn깦|Y|Edcu4=-WF5=rAxKND nS!蓌:>Z;vٌCtęYKn)Z'ͅxC]Џ=GOAphGIB*U œ_4H-0uG%p37 *dJ)^eDi5Rp1j0<5 abj.o"%`jJFۃm99zS9J n3!tm;6g[ TXu_NUwylkNu%u4/&^J7zNyN }z G=7jcZ lj8 U~֒y,4>Ǡ *cL#B3Kd4W f=:65fㅺ57;1cebS+ ^s!웿T!6-gMzIYvG+tBkO*JV-CQbE6[dy]^aEؼʱC e;英CB)t*/6.҇.=ǸkA/6#lnzC a?oDN"tFF?1BQЂq+o,zH󘦁9M0MySRx[sqQ#^ 8T X,bFTn2:8):[?AEI赈W+=N{O:.Ɩlyj*,aW:&f4w ȓ95p"RkS?8;?|_[Kٰ~ќq/&sDm KYKM{mێ5.EG_:UڹMޥC2`yh{=Bz#ܔ7zZc9zO%J&}/FN,1 15Oc- EP6qs$Z  GM?tXi6 .I S=N{ttoO+6mEVۄ³[U|xkcmȶ 4u#Fb<:\(7=1x gҶ5i@OkSZ1]j!1tSت}O I&^Ŭd$yțj'؈4撨 ƫyIC=FFl]UM$\x"ݻXb$ +8_q/.qf8 ʓ/ w4vn^̰C~ {̋xWjg+] @Z|)W5/>*h𺉢c)0N\ 1Lu3&sKJq0(&~VU!uRe&٣  P( >ߤc~Mq#m^+V媜T+}YX`P"jM^GNeB5+Vzazg*Ӑg%j% i ɩ'ͶcxGI2X231O)Lt',WU`8Pi='V=z/K:nPa vOgl!M`C{@`H~I~{$۾\n]s;?PlY0Ybߚ\.pl5 mT{H:y{o/اUfFX84y.Y8LtNL`j2 ̃Ɯ|;iΉXOR@VV"$̈́_DJf_Dn2!4:Y:d`''rzz^>>cVk+3Ytc+h'M wIOcc\\= Yu# ${`;_D ZQ~k ?(WT23(9"3s#DdwE0zU"J1DD/M}NPdGUР uN_T>"?|ݐZ4w'>ꆒ utxnY4@;ԋgq N 9!0%v!@*gNa|E % qC S—TDXM? TCAܕ>bͥsO$8 PD 2aQ7gy{2z{ Stf1 6s?5eY5E/8M7*wGϙJx)}Զmh}x2(MS Pwc.5|H>ƎDF/ L'帕C'f5 EEre^ֲ^?}{1wajӼXL`R~UG}2y9KIwb2ʓt@+pQo.'g1n_,F( CbG'>pmhe @pj۶u u P*.;?\f?j&v`zYкc Z^v;T^ Nb˜sO U)5a_) Z];w>sk [ "rDΔv%@hà&_FOuQ~3sDRt!2+$p1Q#FD {A$,0@ٔA|Ρfs|۩5@4U55F`]#}˦\zQ7ȕ ٢W<0vT<^) ]S?nNXPȏYnTT{:l ,o+; Ej\GDD/H PC^yGz#N$\6D+7s}Ih~TP+Φ$.hߡ YksXleXEq?YlYS@nJjdU]_~4@S9jO1%6;ژF .bHPc \A5^x}]{c5=f2ׯ'&Aj9OqW,YOi8! ө* _b#¹:̅\Tx/<xH@0@^E =\'k8RfP|3̑3JC|Oq5}vQUs`c0eǍؗ:);Qp dpmW WR&p ('0 yHT0)!CoRt?,)Pϊ1=4Cqs24yJ 1'fAG?pK˲5uC ࠳(cnD w9PJpٕ/; P,>]-7 *B> =lF}K9li賋g~ޯ,Jfn%1#WYA*9 x-|ςHL3Яek@iFp/d;cdQII_-[Lk.5=MpEPo0>]hB")T3[ͻvSRnV7)Rܼg*Ċ=;ym7lOߕB%W4X2A: ڽYI{1kmoM G6 (6ukJ,zābLOFEѝ ˾Zs<ႉ-̯([nqaU>50÷_),ޜu(ZuM4aIfs0RL&**Kmݣ"uN no Y(X;.*66zf͛?m' d 2ƋDҲ=tN wi˧;І7wD1m*J4'/0C!7t04$nw|EuE/y%2)Ibmy-M^ύ4!j7$!e) }Di`;v"Dd Ma/w 5|۪Q>ŤƒT1Պ❌40Qkʭ GWSGXM #QҀج,*'1. V2GFwPoa"X2v{ʒDAipQ(xߓLDsӱ 3,,.XH'Doi_,iKQ+3]1.v3Cx׸TL\J4ݺ[W1}Z &u[_:uLZ]8T[$,+E\ÝNJb؝Y'8.z?5$a.K{ҍ$ʱ'](Yqn^3~#4o=i/glTG> 4E’U)`bTtDk Qn"6I0LD0g= ]lIݷX4f:MnH~a@she7hS[gC[?.$  n$ux~*!3K&} ig:LU7#uz %6xBmnYUF~EysԆ[dHcx5YzPEuXLs5MwQkC+s< @پIi)TMs =Bu;~$<9,i$)w0ȓی& {Ewwa:˶+$ŰNdK-fbFې]=i%iJN2a/0s)5CYSBp2Zfr$bTjZ =nvӖ EꑓՈ.6nb03 񷰋k4V} wɍSr0sRL@v sQ] z2 !!f:xV}W)a;oLJpDrkL#.Pp4}؉o}MBAaJ(.g+#jɃ!ܬD. _^f.܄7ʘG#'[Y+.!sZyQArǩ_V6ՆZ1_c7#}P I?Rs@ZW>zsMR ̰>3I=,E"0ZY!p">Gݔ"OJ,M"YmӺ?9k'=dGVnO5eo\ANߥ몍d.}P͟5ΏS'UpA.rct> ;vy(`"fMPLWoIUxIF8DK= N ~3@Eam= EJ `gv?lLh$)YKWSP"`lAw3?HF,l_vS$ n@ j`c3FSK۹ø $?jO~@[k|Ήk9 ̝6i]p@qa#'NO0'2h<I/)#Z ,ڍ磣*b'}cd"hD~ x3XD$!(#38RN#kJ u+쌆RPԄz 0"dKBj჎.0Fj[[TAe=mU`Y"=m=mIY^ϖԢ,q~u$wJ,F ?+*='MJ%|z"/Go+:.DŻ4hJ&Gʘb/o2%iEKfNrD`3o{ބw-f QXWUW̪HRҙ/]*ky+;wz-3q ;<#a.쳶hmA-P5&igh |j[I 3|YFH #\R`# CqWB KNy R)WHJ(z#J9\/^N<@5 -qC q/Ic2 l)lT2q ƎRDJB; ;P<6\c3e@(ZOvpד= W ~ )CfQ$V&ygԞE<ؕ&5מKFfOUpm6}AJ= X:fY\_۟-r=-r<"b[L,Cֲ0PD%欐>VL8-qzI[;Z8 ÜGUP<|7q6&&/G7ƇRO v i/B:7Jfk̚i G8h02ZC=BVGյqFL\NiEdK4%.Y:g;^Cs+KSa8}S({ۮ BkI!ˬ g/6d1Tۼ9#䰌FFy,Aػԙ7Mzʪi_V:e̦ȏ :΁Res!>.)=Q2<ډp߯ħᝲ\9K}+ )͍n@MUyYlݮ hUuWG>Cj2ya${$.z~(DdO@Q9sȉ7\wF:VRǽ0 -q>ց/jXśUV}ï([ǒj+q9G/_LYb,N>s,tT*d4rM9 cI*WpElBuʋIv(6)~3_j]dis L|M OXP)iECf jDd*JߟK^B`9rl Q"LS'EX>scKYQ@Ē*) r4ץOEΧZRYڒ GoC9I' `NsAU'~1GE)lwQh@+-KÒ NتcdI?̵E^2#d;Gu@9@oPe]pe屆|7]z"`_MhX' i4W4;jWRp)m-&~= qNSna!=E6D]#_MڅS$TriF`76) V+RJ;ni[b^,uګz PT4X긒|DFLrfiWM<|SA 3!,zO-XUۈ.A'$a^[)E*H--Q1أEzeJ+ }Ά?^ ̒k$2ϗuxk?4MA86}t,zz=|SD ==!h v }KVlCrvwOa_b|_0?g1Vؼleq>+m;JOSuNpфC]m=J//Iuu$plh,F4!|3c2fͬٶSV$Oɑ"RYOS).^ۄrjƕr I;vx:' ;Sp3Dʞ$%v1]eư8p_~!UԵc:*l| | 4olX%*DaOٶ*Ԍ_ӎ =kT}` 1N MBd{RΆWHOEҧ9PhIuNItc 'Two`Vmfd0W'kfPi ;]G*EO-K8a!dZYBr_f3&E u h ߝ!Hdfÿ3dOZZ1FGdz3WoǒLSqv ,))Q`5~'( ,G @Q>߹ `r8Q@xxvՎm|yj )\W,1klv:ynԽ*Cέ1~oyTO=$]]t֓2ҟ̤ïf6W4=Y[5 m(è_Ahz 8"BeSF[ElQw x+>:'Y%>sr2+.L^wR=Tə1}jE 5N5nݖQ4twM͔M.rniO"{]q-jVPW0}dT]s-f L$oKS..`\U "!԰PEr l) *WVK|:JS׍gB)W{`b!21g[U&G"u|lg=u- 8]$D vJ8D+ ::r9"pP⌭̄1AX_:84LVV4r"Jau9w6w{o(?Ƙ44~L)m%GOՄSoWO *[z7Ct-('V_AP8ks]fEtQ_x:L|7t19 m*ύ/ ARvWKr6J(0Wm`&_\TqsQiS)MxR bͩ!-K7,]|޾&9&L%zMez%C{l՜%AR_v}'R/o46H}>zhμM(CYY*QtSBޭB$&K\*Hq⮤g2ZZߡw^UKӂd}:-⁢~ڴ kqO۲0.FjG B/; +יjIF+c]#6>W$ fXk YZ=D\F%SeC7zE13#/5Y¥ 4ܚ_l:/e_St5]?K^З|`pvQI:yX:+ g_Xu+XR5ew]4MIU hx[IuP;zʌO $ߍx[oue,1|OD=4Hu|y3Gr\OgOUzvT`ؖh Wo* 6U3: I}k,4F`"sv~E7+w2t;|˷@R𤚃hF.QsQ.b!OuQMƷO"T{YRؐݮ6 tS]?,eAFINVѥe}j  LC;cd0IO9|BC֥Y{7O]is*Ts_ /_6~g\/#<1 bK8vvE:Jr8&lh/>ݸ|90YGP\kLW+l#'X->`b5u}RRJj3ѹpq&3e%{rlܕľ}q- DEoE_M,,0.ۂF!,\ b;- Q!Bę'^GX4ʝmp+&E{}j骪7)[j2uxy4 319w' gz' xy$+=@2 {iLtV,V1yG>!@d_D\OP##V;*JƒL>y೗/E;:V";ߊG+WvLe:p'HPZ *s͌WFIb0M+,*,4W..2=FwNq /J'EFu=h,`9uŚcL6w/8vZQt2vW&&yVybwr")| 0=ڲ&b[1g ;hu+b#4/&a֑ܭ$9-X&?dTdAzYtiTl7Qx30<&C)B ğE5&)bqE"l߸7[l~. S켊f/ŬpCŘ~jg e"Oꠢo5O̱EQJ#%gsV|`F(lW| X8뎦v >Lăxۂ(ir~ާv&6F!܅|*6X-QK-(hu@QY"qyRV6>vZđ#HAىŴ^ #I~ر$~T.;7K#łcvXV,\rˁ-( +ك򶬃Q f^P0bm9.n:V?ǜNvrHYcQ¯l%c{-{%՛)|R/6"V >*3!lC{!8o')_Mw(1`2t$jF,B?Z%ZO?eDC`,7|j)c[SyXގ٘D^B8 ӻ> AFUctzش"\-j`{mDOGO)̐Vxut BI)ͱ-h2)x~#NJaVc #J,,JO0J'`pDzTo.. \ 8F}F8ݧ06%REpvp)KA Ö#V*NM/&s~!aQǥBT0+yr/NJjX#-q^WD4]>7ڟ?KNC&UlwQ hhqLySp1܁<{H\oRS;0ݿ\{GB73RҷdwӜbL:YI%hSQ@P&7 c['7+ >~,x~LNMAZx@:w`+ؕ秞kd\4GpX«@==ֶ$M =)L1Ts߱RƧp;H2s& ޞGt?0\1 (5|+ Rrwe.f^+PxYo&pɯe;Ϊ4ځSc4SP>RT[/Vjvm{$PĻ""b J\69DWԎD!S;#Oz*"Y|7Ec>6L_TɈaQ[wAĊby`| Iހ1 z<>?by:e3{wU K7istԜi2x}|^-gy`9?XRqqR ! d2VW *nkKT)ԯNv'.<"^Wī B^Y١ƫ0#%/ńl憻^DK~ܡ D̚UEO<+SN`e߳YT]&$b=A(^l="JXʆ.㔮_ ]^ !n2rwe97FBraxw];tIhfHqL$<ɚָvm bBs.n_y pLp5g{y#0.u :LTe΋z2&x&u3kJ$ť.ddN<,DoגA"K690Ҙ'4h>P ,;e$T$moYģ WӒgu.z Lݛ!m(3Lxځe\1j 6{hhB 2>HZTBr! ═HkO>$>0GGҞ l7řmSNQ #)ّM79hlm@'"y.T _4"CٮnvIȜjB6p:>Z.bt"jjx,ՠ/@8#>mI gMy0gڕF=npxbTxi8Ewns[i1hE('XclF-v yi;^`. q1fЪK~Hs\qA~0C,d e%8?6Cf)],(l̿2js}IY=֖ۖ/0)<2V? FHn睔_ l p S0ܿQsGpiL7_Mc7c#@EmL KS8muGfb-+s m ]ӝ-Uarx,x 5lYX3B1 Y#߹hsؒq~7Hl-s m `Y.9\?szr=' Fû7<f{ϐuT;lŢB22аU9" A }ޅ7;9~VUL%m5Rk»\3BUL ~M+KM{sZz۬Bѻ9Co$Ԁ߆rԓb49l ('+kj_IsH@M A,C91^ݽO+/8*pͩ\cpIhӚl!cĝ@%E̻GZȭY6$:)wN"ET*eFV=zR[e,*g6i!-u$]LRV,^v덙^>Qle¥*KTY9].**QY Guq*FKʩbXp$_]1` (]"?ojg{-=<&1N>qV Kll"h#M' &AA?ȓu{leϿѷ*] D_=V W)?]C7ӹ.Z)q}2yTܳ3-w>̥vL;3* Yq[=|-Gwz7kGh$۫'萨͜TZIͺ qVĉ>02'v=m0Pwb*V,E1ğxR /cߪG%lhUm>t*R9iI=`l\vct?9Ҏ%\L/&c~f 1 8,PqQ^9Y$ê'yOVAdj9.(V~$eXNX`2+`xO"ƐDEƳҲ{qșz0-k#N!ge=2EmBJbO=0bV&y+PsPlm&ҏ|z?l( UMK~d{jɞ )Vr`JH![h<#2` |!10R)Z8 !(: ~0XEeEKragz2Ț_/*ǗmY< 6#餭X-ex!B JԌfH2<rO d#=KlTV.?eRU ҉$~[_qBLغebk8L(#'3c"gb7MV~YH'i f{7--] F p} YWJeXPZj5}'V*g:}vXuЦhȁ2FӈPܨN1 RΆS[k ZUe SWӥ"ޗ!6"H'r*R#TJk˂v\{E@GG$ "<6h+M+r:A ]-hK:{O*]^?hš|ppiC1?AosS4;FgB@&drR8Nϙ衎W&vɊWi.O .`nStw-a7 D+n.o0t[y<b. =c*}՜E6)}ƀCkmNa?oFni38NaUxӏ2Y]Pqp{ >՝<țsM]Z|CFGD2MrL꼌ﵣT@&G';O0cv$2kI=dmi4geڣ`EW%p(HxÌG u?&_Ha)40n7hk&p5l4NHcZ΁_ cQ]wG܍Nݟw)o!q+QX\By&MI'r%;P7ټOo?=\_ w 2u(Bqkjbxbd627j"BT^[fN!Uؑ)(̈?RE+\!?[Cn ЋŢVw7D˃{.nY@sZE&bOBB^ Pn*1T˲Z#zbpFЇ5ZHb8 O.U߶[UP_- N2/"(ǖF?ѫ WVKйGb554Ћ, ]{M^NZ"Tȭvxb*Gd+@ ucpፄ݊[^^ˣVfl+k 8R/%uM.~aRpFBނ(Ђ$|򻝠~2=^vPVJQB4v>|`,%~T%Υf7U;N0tNo((ΚȫV.>bV1Ymgu_mvyI=DN̉e`h6I~]6F4zP!ߊq)HDn4Oh^G7TD@!"eu:;EP)ˆ6xA-PT[suʀMwgQ1h X1JE1el[GfרGl!R2OF2&c+m-V8I5${_ܙ@KNlI!u0a=T}fSQ?g=몐bѦېPϓ{aAr.=B9Ld0h4"5pi`KFuDx{˻FtwzϩxAFq^PGrCYegzA5ZO5udDcn_ĪfLXU~㷷nWP+;(N{5?^`LC2ɈthK[4eC+}HȇJ2^Jk[DG-i;q{u5*2%;nr S j=S#d6 i#'e6)' )AptLz|}%!)=?🢏kCO% |J!訮 :aDV%c9(Q-6%[ķA%+&v op&G5~kSt$۴"Û--fmKyHc).Ze!UI8`nШk,U(P]`>[8Pi{'ɳx̥|q? b :4tAW2iG |Y7 SU"ݣ?Eև5(+K ,{ S6\Fk6&̵VUmrR܅]S՝Ha]rCO SSE. U>zB!d4h!0ۆz;6Dt^fo);AZ݁i121] ^t#H{O3dvKN[S$Ƨ+߽ҏ>ej&Mse:ؼ)ib vKU䃜!S'aRK| Z y *^ڤ߹[U'OӲщ[I/UlHXW'8/Lgs uߒW>ƫbPgO sgM>XEϏͽR5l]M) #u/v=5l!mW#K8΄ a0RD$d-w% Td]+3V=nsZ|Rw %2Q6Sۊe4@q);Rg֘B9‡^(xhwVYHUN5[-ynlGq:Ra?̱1C}T ]_?; C?S.<_vldsU۟u [̝j4 kђAPF>:"|I=wMUF(S(wI9trT9";c 2o*^뽧X3E.IirRp9_i>ХRݡLae Ufna+j1e偏J\Z$5h;^`Źo ݷZB9:.4c.fAe|l;LiHkѵ0$] F&\T.~#s,0s=RVSi9ePPi>a(~ei|rY^\5OV-{t=Ea h0bORÿvGÍ0%6!9O=p`?&)a lx'aw$׺K3AMvw0|ЦP] +; j'GJY|J:wBۇJurAɟhNI&U|>BL3az4%WZM{b8 =ƛ *Tth˛pQA[.o.3 NFl?"Z.Y)_˶~"uvB9~l:%=]c:R;g`|dzZ}ԕP)pV 0V/ "*aUk§ǥ!99yDqtogȴ9bU_D=\V ߞwƼd`wʌھ V-D1$ޤ r;28}- Q0t|ZeIY>;))<(]ʏ%R-I35)dB\v Fh55 tMfu뱨5 GՍfD:ߕj̠&X^cY8']껥jM?+Bl"7Ќ'xj' *Uιt5jnCpB8'uk>>f]&pRԝi&gL9~/N(1| sA$GQwK9m~bc5k;.Lej`5JݤN;9 k .;´7%@@_J}L'l (I+) ьF,g$nIr='x2ZzQ씭rzņT@q F2eJk^Ejk_[1}~!BkSe kW~ '$`П'RLvp?Pg&X>zNPWO]ܯu he{vÞ7 K[JG-"mҦ%L8f?V9Q'䒿FakSɣ雿lxԆ;܌,ۤO4}}oбAqǹnŤ1kҰdoa8q>~-g PR3+O=U߸@t[#{ώ< P;;3'uZ=ܱ 'Qj#i$fNQZc[~r¹ϋСl(`b_I0X72͡6OhTsmC`;إ7 3e~b }'fl1)#d<[wq_\QƈjtukVHjU/a(1Wq]:q@#k`^PȌ9`t&h$ no&փ>yms?2Em#x.Y"4&-XA#j\/“,f@*4?(t=Nny,cvuKc^ QId:&G8 qy#?:<&*`סmߞDAeȼ9LG\x~*`,5ڋao?|q5 Ek'u7.iഅ\QQ ~r9ACkIDŽ-$cX6t*˗C@ xya&73>d>_h2}x ƫHA%\w4Pt3B@9J< GCsr4!}vz$ &u (ߩⰟM$mJΚ{ÝC| _qPW*Az s9^h~` }`"ZlF!M[_<# }/)zX{xE3meeCXFG_ nH:wdoKxDmt@PD3AE(r1ێ8aRr"tY.9_ұˆZ?)H_%.Kr%A4,R#UC9J4N#\{NKrP&E\W |  ZN!nh?տ~xdϏ|jbyܡBb{TU36Uv45}Ya0x)[|8>yFavCz u2ܱ{ڗRV,Aђ@MKܩr2LAdžE.Ler{ aN#`t@A'P>mr1Hd~V(&OT&OUUfyߥ<8!NVY J~5kWl1!|i-u\( '9yK޵KRph;e-2׎$&&ʭX{?V%m1Faob˦kGY6f4i-PlPG$d _]ss,a`޸BݟJtLU8RWO]xR !@#M  Hg Vc$z T;!̖aч{[+A*m5Toj~5Sq>@qgDUZ2ŝsuXC0`2,nW'X_yqDSfp[@1u'3j(ظiϛccVDMJ= +Zp)hFO_ndhTejgn3YQi@[AA,W +u3x["Qtӂ㓵BR0R0%Ukޑ>Ήa9 EbӤ"7c_9${vWfen˱ޤ}wmA6WL Z d!E~Y6 A'^$3N3au!)L/M vAd8r^Se%v Ix vBn1 o0ɑ@ֿ`чs4ֆBo?N,TO 5}TG\ \A4,ԉ0AՁwN3;\hL<8l4V/r w[&';s9lR{Yڣ(Qƭd,)@w)gJV{ zMlqЖ2AMZf6xaB倽M($2Ii&,"*V-Z @&grC$j:iR㷃RRq$Fc :ڬ )†L8(#JaA$~+vӊX9RdJNI|Ra|"ݜ>uNϷ8&9l]_8j_Nfˑ/;M?霉MbmߟbKzm>;SAlZjhlCY6 *`_F&|XI8 .s9h2"J`G %n, gYSbHBs2o!tdWr[W;AzE  X8&T$:AGT,r?ȹ̳4ؔ+.?LZDs{Ӎ2{̿w `v@mm*$biqIY[ʱsI6̓ 6"ԔGp,I;+$m:l{BvY!W9UPRN+eD\ <}$v?i 0q&s, abU3ҧ[9 F}'_ HpO@l}‰1D22iv.kte +>S1[5Nݩ#PMBUY/",0͛WUR|2?Vw$/ON:ml&![_VvtJʺ^LDAG6lgVލ}f=4Mqz09-zy~AKP]^@k dUJ/qӢMɌ=lMVB 4ܑoiRV@.Y>b^pl'Oioi}`Њu^2Ux` 31hLٱ!ح=:_"p%B {\@i#,|@]ZН&V6Ūw̓Ѱ,CyA6n/3Ll;²t-wN^ꀕ66wUHNyW|| XvZ,|uRK:WUxƊsH+'$hއ]Mt̎˛#]% JMO c}"GdrX:e>(qO~cN`̧K~<=Y?uȜr)Qi M (% j7|I*}986$˚a_/J**h"u^1RM_]CWW)`k}}OSa]D%pF!L4Z&~[*/̻j m ZWXO)$Z*xQ?5\V: ~ap77#KJ Da` G H2G{Fcſ5'z^، &W/rI׾N?|<x%[%Tm8~]fx7L}{ef`ap<* >.Tg{T` 1a]X/ x <ʿ ^ڄl=R1ˡMy$T6JXR3=XFkhqA,P"jAI3 ʄKI+4q`5 m|O2&Rq'R^%x镃"^/ˏZ<$&dHb e[ JnDn&o<>I{h-0L#H5z>Ymk"^2"bn,ϳmx)ϱvhRO_EC-I51Ȱko9uqʴJQC7@V' 8lQЋ[JWJ fJƈ; cj-GV<펴]@>'a(Izvi4YS޴{:[APVs\i98_ &D0b KF &RȼQOڔ|x(QF10~ގ3Yia7YbBYYiql7W:.is,lA W0&a&.g@Ft` Y3y}P=cAoLSsM ਞk7J?.8!9z=VSr&Q>"f۟}/14; Pޤn$)ܻA\@X"BlN$O[Ր*.?ۘ]Ԃor8͝䶅F96?R/ZFGqw9ɩk@n5<\eYi0=9/y; WsVga%P4Ό?kH1qR`#F|ˉ@~ e%9տ'iqF6jwhljI}.qS.'5hJwlDwt+V68wZ${]j*!oG:m/(m }u^%(~96{: 'rEoƞRc^u %o0p`Y}.vT5F4lk^r17b1X-"g% ӚL h(>~i~.RP{?ُSZSid^p72=%yQv\mdR/T48qAna-=~YQ[%qV2nX4GM-$&795 _ynNxՆXU՘B}mfEg0G m_VNLgS&4B^NSֵ!l"×Xh]G4ܜ~l) tVV HGlV |E=&A:Z𲖖~>3Z8Ϥ`AO욕VC؉霶#'I a_KfQ6n< @˥#7?LHfwȃar\Y+MFIh) 6T*mDȜ( nc'"i2E&I:8;XP#6]zb 뎪;n;Uԗͭ J#FO),iw"n&#S~( t|{xNLە&^TaDݥٻ Lhą)uxqP0\zDU3eLXlC'S H}:郍AZ|l2Er}t׻$yY?ZVj^5r ? tgYhm1T 0  rV:ǭ`ZP#Ga&0 )Xq6su}9&+N(!9d(U8/ZbE; (#2J3s`>D.$Atɣ( p4eNZqrD$L~H@/@Q~ QԺ/Gj3giZuő4ʶkJ`᜙Vz~\|` y84#~Ef+;A.K~ȸr0$9;ԸF˟̉P\8"Kh~wHyʒmi`y?$~/G"o? SVHisEɶ9:|KLʑEģU>- O#I*bu@xIм uNWV`A/>k""~hO'.\j$ňqtBLsH hXFKVHc)u{U+ EZ}2[&Atۇ W?s=h;_6J:8)."~gN ҫIS|h'ZȅzS3394{E7!E $F{sHɶ)"N1AZ[q[Ud=!gߡh;r*蘂>X@v [J(5˹Kt:9QiaflT8w8 RO6fU2Ew0d0c+Kz%j{8{jCΈ Wt)2C X|o &TE ae 2W?겖s)?}S_+0 t{h$<ݐ{ӦT#wIRB:8. A/92$ĢRo|NCI }m4Z%huDqM7%R9Wȥ=ޤx<ǙO7τJImS \\`D&NOCmkbCtYճ7Gh3JW9JxWv4x> K4ܕYvM ]e=J 2:g}c1dEBvM ȳ%uAD4qתھIEpj7GMDHΆa@W*hZ ឭd.F+I9s0=&n*ӯ_ ?nyo݌q_e^F}AØ%a%@M;`BDFalm%S?X:0L!)BR/;cGt~{)G" ɜ&f9@۵VCcVM^D77;MV J̶_Ź!ke4o17j?/I3aJpg&MUb3H@#ڭI-䒪;6:UNx$IYjÅ,:X4sP-5v4;áS ,G3R)@erVjBP;XU>_]YRJPk X`881ٔLdg`v -hgў&]l-Ɖ@(㣧D _X oj%wWqrtT"I4+qWL) MbUP{aZ0 Yf*}b3!2iHp b#Xѡ0@ȧJhax).MUxٜR ?U,C*OD s:x^\7n= #{`0Ŧ"@\A[8^(o(L!dI8<Ѐ {f vƢܜ孉i^D-lKtۜ-=U3BIh( bow*g1V#^W=u[vF~`%ks(J2zZ4~5%mܠ2g+j|,uN֋ia<nMOR,<dl]OsxOi#|>SXM݂"+f,@v$s^= ,Ÿ~]Pok靦M>cb{9(Ʌ!mϪeyQ֞F]A|u) *oeda0޴7iU8~i)z/b]Bπ}!"Ͻؼ;A N\f!UO*PxW32I?wq.nz|q*B),"?J*0Fn0Sx_)")C=9Ica5)ztDw6>g?'up—ZPs ]6zڿ듇(M\ Qp׸/|cJ*U۠=612kV.?Ǽ35-[ w#n+V=[{SsEY-c>nj5?7* I7ցZA`,R#5Ǯ2%H)=# ˿ۍuCq;1)(7i% QLuUhosSpLS%5NnD[p Nx?N99P#f vr!뇔-RgV QFx)z,Zd؄5Tc {VF` ueߜӱavՈ%g"4oK3q;oi&9oc۱뗅m'"-WjA+\~yq#o~ng/u8Ww-h` :1=jSGjT?Db(HHdRb8nM ICػ[9RnDO5{|r׭CIIwFiɎ{b|ڲP!K)\+w.M@cV;f5᯻T`/A{=3NJQ-"SP0&ԋV/U1h' MV}KwRV4>sΜO t}KVTlǯ6_·"ٳ A`)|.BRu!I~{@'d'לhrF4gD)['=CO jDPG`WY)!wH^OhjE8Dj^w;p?&h5"~=˘I^Md^k/Oo/ǀ:ΗbmG3'%^PRuC7xXP+¬xziUm]5MDu7ɏC+zhب4«h\[k)IQxAN~o/~hJ p0@rMA t R45}ճ%GM؎XQpQXyj/-q# 5N09:Of`˪*Z뜕Fn"#t ~V?sPUKQ%WKma[BdZ]ԟז(9l)].t܃_n5vJDF3ֳ!%+==dR ,Yb&]1ůMn=q,Qp%ɑ= G=W5%ZX6[{Zv(&yًF<;. *~cX|i] F=J$$l/?ϫEKL^Eg@qVRͿ/B>sJWDC}D'#%VA N !V\1W&àoCkQhc؅s.0 XճW_pׯT@ڸTTuQu~ă 8pEAsWTulb+`pP{ WcW0hO`HP_}¶Q!lRdPUTng5eSny1 ;sr^g!v Rۋݎb)G2$GpJy@=❛˼S8A)źCd G#)+n Q\ .޳oj)A(CDy``0y; MGJM:6L&c~FP֜,S0*4>YADI' aO&/J+ ^s^"%uWօNYԕؙ{,^ 6BSzƫB$rQy_&6N _~YlkU 2diЬDȈGʳyKEs[x¾8KpSIaE H0KvM:64;qdH8d؏{:݉ N!P8 W Kė˔p3%LZHtϋ?b|_"ӥLVD>꒰F1o' s4Gk!:WuU#kNw=]C ^:MB"3H/W7aceğIll.P 8[.#3S½1HP$fbCmܘ|xkn\1Y\Y.ߪU[ApwԜJnjW)pIC Xe0g#2nL)q2"_I#_Kk~^ͻ_?49QxU&eobYsξv)`Nܤ3sVxKkL.GH ;aswdZ3&(HpazEadEQ9ޝis=!Ƹ-MkH%)eԃ}*I /ػ<2),t"\$E9ct7fѲ`cpn~F2./@."~.8F Iry&Kw6 iHB9 3!o3r\ZׄF^WoR%ЦL}aʆ *׋ACw$"=0$Ӎ WwtՓF0P^N#p3?Gм߆ŸL\u*KW3^fN NZPBy x)I{bsL{!,f"̥'32]&Kr7BN6:g7"R\{fh@z7( Rb9U *F1`|~5g(Ջk;k'k@55zLtΚk-,qO}-g; !Yfbp`Nb=JZl5ergeqK<;Hv{RhH2&0+19h5#fI|%]s80-d'XoAIC**/#"ާ[x ۼo v4X?_jw37f\NMasCWIKX:/ǧSWfTQ$‚եn/)L>f8tO;n1 ò Pɟ,Ғ:@ 럷~LdN?t pGU%j .,Yn΢m:dž9Cڀ^EI=S!9Hu ?JC .gZ[lܵsTjf<%dd 6q$x+º9͵!l_ '7uHQ9}kx}&?C8Fh"W1DD"-jtXuK-ej&*gMB${ ˳j5&աㄅ_}]OV× Ԋ*C89 (AF* Ϭ'JOf (_ᩛhkj"?_1*J j=Bt,BF6hςoU2A{3xwsoB GX>}zT/pZ^m!UE;ZUYTqP$諾r󰞑e2W{O lmXc &K8V9q9xC^a+`VTVfyLO 4'E \K=?Е aQ0f ob;!iӦH:֚"bq\9ӯbLI߯bZ)o)Rk (N͞a闊"V*Nuss3L4x&FBEm6~U3SHҌtvPnw0#u| `UĂY/%s~f* V_f > =S͏)`NrEfMD M>_x&X,*FhY-GA'YY wۏ9bÍH)N? fs]9#] OH|(ud 4Ɏ8Fqӭ7o:F0לS)"whz'ay3QS#a-%s\ɳb3a`<%XҗƁ}[}шq4@/xN؈g-r\sLB%"Bv ;\x%tg A B,'-6>%q`ްud[V ڄ玘Y驅{,C납#֘ 2KMA1i 6GkN-;_vƮnPp,@Tzyٕ^nD$]WcZb"n߽ CaZL\ ecתׂ [e׆U&9F i0=W3&~JtzVaA} @fb;qRv?k#ms&L$L&iۚ޶0w5ћXݑG'T9 e)(b9C[Bgl1'Gޒj}A +cMmܬqՏ4{nzuq聵Vޭ&ڛ7)畐9G⧹ m nfFWΦڷhO˥& 9;1-a~$$/]c< BYɠ)O~r7*i-C)q$zׅf2և밚~{cdu@9X51I5(Л=]++Z1.m@Rea4ݬ^yⓌr#jjAAKM #e h}ǿ}c gK/edΛLhqVYM""gն.y,dfQL`gWCY/pߘ%mG}H`:=)kՕW?:~a B}},5ǍroWHk=)F]>xV,mk,l">^àˉ0n;߰Sh/vmO+qW]Q֕]=PS'XQ,i*7C&>:5/rHϰ ^_Ԫ4͇B%yQUQ 3 8ĕw/0P`ACrQ ']! Fpf3Y>FG9?L5䷏"bCtb"ze^9xYs8KN֎\M3k'|*8R?^ :Ԟ^ Xm*VYQ}mCL(oؒ+cSa$矿o_>[Nqͼ/G?&וe!\ub 1G${_?ҧJa6D+#PDvpu35 lўo9;HV(hҞPӃgp>xAeZeO˚6 \}3G9w`0/6]HmEh~AZ)rPv;;SO԰Xhm&ݻ~_9qݓc =R4D2Nj/RJ,KPD kB# Q?Ѷ+ms0JWhaAW!_{By^TIG{ըBTڄ,_޶Wp  AJ3 b4TBf]MRA'=)`юOUځd5=뒼bjXtCMhm†6=@?gYʉk4CGT*Aݫ!u^2c8iA>FWe1URaw -9K5^??p)R*z37I]1O'pfOA|('U3OGK8vE%f a~ͅ9dͩ_R}iō]}{'=$UץSgEز4  96yO#\kQW?<*Xnr 6( $>#W(QpQ:^@-! =<2/P9L_`/r_NjWt'{3m7 Lw|U +Ĝ-7"!gry_9n巳tjg?]oϲ˜2Ʌ"r 3' \eTDY sSS%$Z٬vBfLx:۬#^Jotk2h1AOޕZ>2L2̕AW <*uZ eB/4;oS<$`ehr_F:\g%% y8˥3Յs03.`4 d?K*&7Wo.<ӮP4$gT璒q6=I1;Ђ|ںg5K{ "jbO+NԿnp4|,ec1#<鑷5<-Z7%֚x \+M AeϜ.lԮo z,"" o ы!&8o6* lm' 1/b>ȈCYbՖm3,TaGk%,G 9<˂EOd N4 0l,(hq;]׶BK)bP=?eB>Zh 7/Y U|f0XlC 2G´c2'>\ M8(8{BjEQ_0J 5vki@E&!ʨOɢ߁?Nַx 1C[Z/ [?Bҗo.ڽjV 5i)d1}F1vyÉ[C;tGV~ٰ)M7&;c.u^Ahn.gͯ@1+F0L곻0xƔ XEPMAGx0bNZFY.X1Ov|_ t|3$M*7XWԚS >ޫ;q]XyvTu ׉ʆvw}rAKvo)b˻o:諂So@uĤϽ  i~OdiCm׾[?' TV!ry. Qk`|R.[) x̂nz9T:xc-ȕɇ"^VkJc*C#N3h}K1-ێ{J묵( -`Yo>0aSVffko8b\??5B}*5vyf[ XBEnX^&k5[0ZHLZO/S?i( h0vxxA ]%rx9谝ayewb B.#kp:@ 9dsJLDO3S=}y,ؘ[X_B\΀@KANi{0SZ}EУ y^?4%7Y|d[ ;Ox˂`|gϗڢhnުnxߓHTsɭQ8kN](kSKfpMZ$8ֈ$}55SQgW?EYF6?MڽFtSzϬ۝*iV+@kpG {fE3fBX^:I:߹g@N \ꥐ|w͵?=Q.Tb:hKVj '5KUNL0##\hO#Kz9sp*^>_[e7;-U!=mq ϼ6;1uup9 @q_#:<% 09Dbٱ\ k!Lih^` (|zd7M\IHL<*_;DHwlGHuy' 3.q:PhM IRj5l'k3紥;+e==ń=c(oOjgJ56n)fА#kDE߈Xaw0~H&hi C#Yj&P},Wi M~5׭`Nq]/GgB7Շ>aD2Hk/͏_y_]uQ|wyeWa㨖cu D4|OKnjɬ ;&N t i{`LVEv(ԩ^< hk#ئЬ9=bT %WzEaJ;joQt5nm}%#Wx0]cWHR I ~EoY8꿎qh3 &󩷜e< mĬ#`w#ښ* Qku`93 .`UTwVD04MLY6ѵRcU!ތTmjO@s<%,zo(y'vx* ~s;;LxvmR. yKA;k*Btۉ^$֏H =E \m_o>s4``.辤 w >@0%kV\W+5RaI>үZgNԲ{ Xk%f}#F`a2WY0Q\tIgNRt21 3n/^hH|D6 ]⡿HKMWv~КVYoǡ&ɪ{3nL*{'<;x!Xg+@k |m{lkKȬSTgH(aE|@鎁&##~3M3uBJoj<\G& r0$|5C^pB V3vW#b cy4:.8\1jfޓIOC&*J`I ,k>)A\C3$R425= T.Gir&bv Ʒ?*Q-Uܥ@vTIW?w񲔍CcˊQ EΌ߶Zl&>A*e3$ސ35Ghֹ- .3 }0 9DExhrN\* )W>QQuaA?)?LyLv&Hͻd͙ĴPXxŵI-L9l n>7L^c_;!NKb,ӻeHOx*mǃIULR`ub-rÙVlMjjk穞R ’u)*"@7+w*.W %<D:ѳ{ܠ,IW22SBEq*g`ɕi;1'[9ah#df1Q_QN%t@4s ~/<+ҊBӅA%'zo<\r= !bkQYu5!hD_h8]HYLy~L(J**+VTytLBty.Ge}6.qQbjg#hƍ6,7 xY$X&$IRyw.&Gu Iҭ/3R_t."E騆p]$܅R?[NלN԰ג_پTud4 nQJ-g8<m Рd! 'Lh|5݁{$^ֺގ>/Pn4CP\uS$=q CU*N< ޮ q0 57 '75gj|&[;NgìaPȦ *CN@kbj8&")9zЈoۏ%>V s P&bT=|ԗѩ^iki/)“k,CT:5ȁBśaVmj1'!ЦF5#)pj@#_g'skmo y{` U4oÊNG [ -4-Ir{بvvJ o`Y߭ߌo ]N}1qظ@f+*U-nCc;zޢFH2㫽rQЏ=8 kX[ ok\tՊG 4jv?<0$y D^>zٕ:6B7$;Nl+S^y}'J?s8 PG\.# G<D-ɯr%4׾\ &vZE0Mih$p䙙-U¥xtL42y/ֵ䇄kHT4GL^(^ECc[7A ]u=EˉssB<q :/740s&@^mQI1A}JRӕqt%o&z+H;9‡RΨC u t *W,.mC]3&JTu䧡wm]#'ѝ]w@jy`75%o[a+`aa<ϼJqjf zl;?w'Z b"J;Z!ɑU2*u?t\իǐrUv_J=l5CdN[ LɝIojny܆pǪRriOg7YZYc* {FZlh\ ,<U*ØoתbԸq%UgG?¢tu[H9KwtHeI5T +!1is: +@vHȔA9lV2]Vwà ~Gqdjv6a:;e*ʮ%8:k3M'8}*^e V XL8FW8A#Of5{ 0-X {)ARB7ArT$-a-̣͞hEz~SK'UArAhU4:)eHЏ'0\~R&ά Kcg|ҮΏ_Ng(>z52.^@4̝e?uH-+ڱ9kǮb:l&\̕~߶HA1JaD#NP%9XMo,X; zG716;@L NZR]^g8HaG&A ^kqa5ȺMMxOʵ*eHPJ? J,-A®yG}'AդD@uo982;G7$45O/i5k3 C<ǻ^CBɴOӉmE;ZXlSc-YJ620; }60ٮ4{$:MQgRe0Hx ,o|{׹$!VWG_?M01{_*> -P dְO$o3MS *f: To֒zUeU"gCH;\2ppSCz#HXTuK0HܱR^YBT]VwRKB*]l[ȫ;h6s`$Ǐfp&c7MCLDU'Nk9>3Gpw142UB"!k-,~ t;+t1 prm1g@+Pq4~yԸ0zPK }]iggҬ~?hƉS q;Ч'*٪qLIT+guߨwQ0-üJ=bܠ&ŇN˓| &YPnXmi[.2 77wƘ/n>u*)Ȱee{Nd y!3?T@X4:kWѦ>?FэM͊Lу&(/'3[#^aR,TA[t 6>D֪nVI$*F} e@HM~+J;Z[\\ưԇLvs AboӅ-1]-|H\߿PV&42T^ѰAN`!TSlf'wmmku;{`aVL$Nx. BҴHɃ,#>>RnV,}.eS!+)ԗdHCafNH`L(q=3Zm[Ue'j,|4rB[0 q;I}T1kbUbEYitc6UeS\~-4fz"pR5⃀~EΐD9X݃ܚq>2E1ų lꋥmDzˍQ? @ha]R簹m#cf )@@A[R`,Glu_T0rnܹuAr(|Z"гs3X614Tfl83 |-@HHT $ƕh{(Ⱦ{1`jc@mg7oԳO5Wf4kxڱ|6#>v ^v7ŭ{01>zstV睻0jK No}o4+nw:;75w{(9;?xoQE$͆FZNrSz>0n¾"ALqJۭL,&%uතDnCV>(Qu^C.66cF?lREš*4|݈񫬢Oc})?7Pb[!<0o3ΐ(3u*wPT9Fة}-'A\ьњ T?`N QVrXO'>h4UuE(SoaQ5/eH*g_XQREj>/ú*9Ui2bF^4c_/n^]݅SJ:oLۊa&7<,\*K}=T]|w: q8SH})0g3A xh_VH3I+H&?\EҎz/ڨhbT%ؖ!de!]Z\QMP_/{GA'>f}4U6eP4[/6aC`lA8Cۻ'PF*!VU:d,%& [ϡ`'.A,` -\PRJB/,v{Rz6V0~NT U:Xyﱐ/V+nՆ<ħ/ba) -"Q_̡zweTH'wE_NnCt5g\ u(E"AY^{!z3^=Y(vE=v}7.jp,zz&. 5@7KԮ[o3JcʆkuecpIRcWwۦ!y7LVs5Q{eӛ l"V jic{z.amy4Cڱ4~JQ~qȶx]x 4,2FnG1,O9_,9%?WFsijMӫN߱3+}H&d %=;g1H^2[OP:`^"J&MƖߖ^V2+A=a;l%1XE݊GL+ R.8G z5.g'-sn5t%Yy쿍0&fUǐ ^vٞܥ`$߰4Q(ᠡ䥭H6RT4ظ/)`q@,!#A]@h9ٲ8\'XhYi{Jĺ|\%O/ҾusQUќ}γX J\)ru=>; 1ve`8С128oǐz;? VY[ndְN`E4̻݃0~rs!sNϧRRb6˦j[}mέMC=tL*8(Plu f%ԭ., ZK!QZU[KjCx̐UIspl{ L': d aʏT04ԜSQ<3-Ӂ${?6(M7mwsYwaB][sfNv Jh-K9 tZN)` > v'&x%=%$,jJ*U''ǽ9D xw/:;e{deE&X $z}x=]S|s[ rc}5} v 3>뒓!:~ض Gt硤^7–l] =~ehםNYV%-m P`n}{?8Z̫طx*nz0!-M3#F[]_b= v$VI5GYvA?H}kg z6e𣇽 i8U/zAN+9o|9c2n2Y" bxFb{E|Ҝn =4঍?2"ʨ)hUZs{&Zz|OW cg_I~kD6/s@RY${VBU ,> y JeNX}l([f Et-JU*P1-ز?Qg|=99c0udɥ_)v 8_ _V -E=Eݧ&57kH~u<)3dvrIuӠB)[0̣ޜv}Э9 (A$Ry:Ë́\eso=bzyy_m$W0o ԺzWоz`AG}5k*{?m*F{.@]>0=<;DokD޹6nYc,%VJ?wd ΍>Pg7ϯZ`\&-Hn%UuP(h'ώ -\TkԀ *"u[c h3x7 {xiߌ9Z5{C çl#ei4Ʉfq0)ZZƂ]HL:؃%~4לȺ7A>HqOdz |}&8iZ ;-}:{=Aj1|2xhXЈ4?] zlBFʘN4§T 8d8&wHE&\N"I"o_S}ZZtۡ]WX)+C[/}ݪ`5K?w7(9aEqGX(N)皺ZM|; n*݄dG ;TUWlܼFN7^SIf ۅKx|A?RuwQjUae}E镅7tfx"+-c,ݣ܀DrZ3:LARG|C &Bkf+Y#pt?<{|>;O}TYK 1T^𑰺W?pw>\su&:7մ-y'YoUYS0^푬C*@^]]J.í]34kaSNխRb}tsuȪןܯbrL'Ĵ.f6O1Yxĵ+P5Sxƫh/Ci=$L>,P|gTPf6{t~bIv.R@jy!ߗ~%y@k!&$<<Z\i?h3"X̏w {_xhcvތ~OGD X}a tٛ-3 gXp~WU2s}5񽌂#zx=7N9OD9`c_Y,ee9;th[C7^sMqXim$;u kQ!{1IdZ&aqP.XJQ7xH_dN]oJUWW#LNwCP5ߦj$_[3]_$C{=6˄" ݭ3Zҍd8dPR{iebRìr߮/Q.yyXf˲TYx±O'q(ym4fs.y S&h~°Rnk{F?5_9Ԍgl]{ գ(4evl⒇z+-{,Y[v>/i`yk lBG]X`ӫ5E7H.[wLXWRnԏ/*ăWzǜ2s+( >IpScx)+gN![/ֱ:sg46$RZBY-8+F=v *>La5!fʇ[l:c[^ݨ2EQ\C0}rN%iZΔ'l놺4p-@H98msm}Bz= 3[ߕi5ty1r)Zm P@%0 )j6o=05h!r36Xg@g=LoyU9 ߚ;rYIp9S̿9à)GeҌRPŲ)h8,Cړ|jjh3W:,(IklXeI?ZfV #<4!x5rFtjbOXPPs fÝ=z%̉B){T)k&+}5VhO&| x[X?fb$-s%;s55$ECU I3V$ō^Be\Wu?| C b:/r,wnᘚNJT_0F^ &9L&'}a Nt…$$ECdJ}'w &{C X  &AkU\t8Sc8y!Ȥ1A6A'yY%IX "0UŁQ4"@PsWcKմŒ!y[f/k8M7Fr2-U+^UfiĜ%YJ܀! `齨=  bE;IуB ֯Vk%@Cx<ĺi)W~EI3xÓ1M;/n۞[ M𑕙c h%. ;^=QyDpb 9VÕyRR؆b$#h^a<1nE6] Lk ?Sc9u0Aƥl5㏐yo/UuGn' oDf Z.*!3ѮswLUpZ d^#5ni[_NYz]Z%,}ptlb;\ bn}PTc)N%c2P7YZ}ʓ~,"nE0Uڵ> ՂV>W=ͬp>m #k WlYjÊ&B$7Pyix?a@䛇+56HCj6<5TuƗڢP6P;뺖,[n3oM%a:l#kvH9#213ӏ竃Ǩ(Ȭ?E qn=ǩfv<(j4r)Sqhkprgf< It[haܰXA$:Gp.q}Q1 E::6'޾0&Rͮp>V3`0P?3(tn7f;/m=jvt-@AH]Qg*pC w< w0x|XMp~{D,X2 e|ETc_tC\{hL UjO)W,mH0FaY 8IBf1n1º6E"||xUY'3mvbTebbSFWp~a;XjeWV{pgϱh}hNFܐ.F ZnH8Oށ3UgX2&RC0zdHh7^WgwB6n؆)Tέ8PVam2D5ϓ1@.zN]VQ_Jg#S s<w8A62ӳ w^߀9:1$"w3J Wa+$|:*o"&,X\ng0D`LEtk EYpb,!1!^-@6KwVD9S `%c*TOs` KƑ}|%"^A| a~)Ky,޽L8 rNJ>td%6ũFt:* ; ث QU<1qt {z0ʢ^%DX)J6UɖAp٣ʻtp(; , bLת~c vW/׺SG7ĔK&yF]6 ԤdRs&-$ /[!+ <,f*6y#HHOe~V۱#WGӚ#W*).Xm1j?=>:U&稄wu^qN~f:!%3Q? Aṭb%Zg&eqZ 5;Zcdn{cEO5y O*_z 0;Eu#i{6ٸ`];$LYqVw\M[6:9p˖ki t1f`)Hd|[SD'uS$*L!*|OafA2 W-4$Uha-k /DM($*@XF VS =BшĊON@ i0sqABQ{xo}?1?[U]rckL:68a3tp$mC-\JArj|FD쾩(i&D4 ('G[jjF.!n:k2?L 0/s|_=6Q0},DMB635;t? "x\rbdQe)ƨr|/*AL](OU&(tNYT Ks|b͎%c: xD Tm|LNӟעQKo8~8TegApRlM,A}Gy_fmRDx<78H쐾kp(4ao-!Zj5jC8>0yDԊ LMO 6ZkED O(Dva ɧ RZ6}Ug TI.IDj3 $(ڀՐ dH$ 2:nW? _9 l:hB?WAgx>\Mzpʱ7ѡ'`f~{OiS:˦rVLNJa\4G<П_?or_T I@% RX^S T/ "ۀ<[Պ_ .ҧP|h0ڭX!ڸ;=-k'!RDrg] 0QCL>,Lg"$;a e"Z]ҝ2mE8J*j'z=*6|Qlb``"wՓߊ OƙA<6$ݵlKiY%Ch5?"Ag nW WM$ ]YBIL8׭8C=I<w dsqN.g<(_13Ddc<+&ֱy6!fLqIgr,Ώ[f?Dwr:v.Fvie V`ٴByXeBK_y//3'OFO )* Z -k12dBhHpF6!~9]N^:8`Fh-nAr0@]&݄<Q}:v[z(価)bm3omDlvZ2ϵ9N!m#Ju§t*-gCL<M}\7| VdWXc#DL} &۸4K2Ad[b6p>4>O P8Cz&|{D݃6NV!5Y}[dA'hxeY nK_?5+f< xؽKq)DQM!${qĉƘfdCN.+K"v|۰H({";<+yѡ9&ч2ʤQ#ʆ W}{=堤pqc+cr?`̔JRIc3+@2\vSHJ k}Vӄ5= 7Xf0͛F]JAsПx(L#@n >>f3 <&bh:`߽rSUO {]ߚzGrHq #![l `A<7!, m/1= lf1gMˆ3/I ;z׌F܋ؗU(~v` L|_'6e1hZV L-c~VsˬQ/B /U&^mϴ=GG&kTMZ2E@J+ $hLeNKsn#D 2"߯Rz# gkM1p_IEA XRmRh\<ꦈ5#$lWg{6^S|C(W/*BmF&sѿRzT" bF6?Ov6-s5e[gOm.Yk)>t Cl!dXSE} b+RBM dg~VnjY~ 43`.ƟIA*2VZtĴmhGO§V^,(1FY.{*{e㶡ɵRعC 5WntlQLP<~O"O|:aՉh]FWʀan7S9^TBPeO$7?K n,,.Zd4V\U9[ǻ/Bv;H0Fr'oJnB:/v0&Y) 1EFYZ͎5% r!TxD]@]qQa@U_u¿)%>Ul3V#úσ΋ FHͿJfrt+NlgK! DQRva'\5%}jtrD p,"@ev!K!t!};Xmvnѷ晤'Qi;NA1<4_ r _\D"f>Ea7lpџZjX/H(w1BiUCe6 cwmY%s^h)R5UH KNEGpoSzQJq_Ûy&)-L$Z1Pt $,|ﭢ>$);O9\E5! GDSm"C?ك&ol~ڮ1 s̓}X&(_+'4t&Ջ&!ڟ͌e7aWwSX4 NsuDRt_<U;ڤ%է0ި)IWBW*96z1}U_][d k2ߵUH+r iLq!ڷBAv>gv)cHM`,&Oɽ4½b})dx= `W657چ?>SH1*CGp]C?E׺"|QRXXTG th^AJ㌐a$ EաţuDzaF V&ۘiZj5$z=*]!2cIR͠>W.QڂQڐ`IWmp¿|0OJab>67+ oE)`r#ozRu#|p(쿔3!u|dn,(- ZꃛAlR %@8m^]mMP?0c&2L.  ٹe"J%}xwǛ ruuJ ʅѯ2 8[7@eR9lA)iJWE-o^*dw wr(/ZH MnƦկT Nd)Jl <;Fc7!o<dܱkRl;qaμ(M'xjڍ`R=:/eИ+&ICe%W'B[ fiFެ`?UJ%s$e=$3׈Rxy3_A#1R+礭f>m>GDm]b@Ob ^uݻw+P}m?{`ܼ0* k~/L:y h8=+auYq sǀ&,+ЖV`lP+t|Jz,I07R٨ټ˴k\C|d^a9o)l1+%oue O/kKh@H| [Rye9z% W@! I&:Ƴtdm0xJ+8w}lIeGf@\Aˌ3`N]u p+R*Y58vF /ڊk^J]}QaAOW$c836,Jr܀#FM|9X'SԌP<7qh@4kЫg( =n<(2OUh]kc=HLհz&CyC2:h oȊ́p/ccZ|unء/ݷeD'^h.XuY?M GYYB΢ p*aWN~.:ڍΝ|>ll0LNdq2PퟰT[@_CnT0}˟h#%ߕjbλI! H9oC@ׁy$V]č#۫'q"w)W-/7iz6,#U}GNt Xm@@7q/kRrp'A᧛֯A1%/(S0< sJw( #W2 ͈^5 ar8z??t3Vu 5:w=~|Rs: xQcMn} 'thV G^#_!clduXY5{q&,R\,P>xnXk i(q?5>5y5BIl2>'aN݉hT HP oj%\i!c\ўFUZZR5x!k*1<-GMxҋ,Fm"*Ym\-E*,Km/7m]Z LFo%:=cqԾq}QO#&v͊iI×iq6P\6H\,.ˠ#=ihJg)3 [^7pp*+9?@]yW(#o3|K,Bn"YKډO[f d%503JO"mIwEu -7ʈ?iu^v,&0>ɇ4Kя zT'Vh I}Cm h ȕuXN-Qz<= KNkV9ݛ ϵ98wSΩL/ȭ,4]Bq+$dy;G % + 2zP:{9Q)GKcs*i!96= 'cR6}gOg,2RƸ` k*3Qii3^&RYRW#&-)S c^g _5XJB ˘ε._&/:6/76{"Y4, j EjĎ54\.u=¤}Aru[sMi"/O<ē;-ʋia / J49],`n~w3>ֳxvidp[(l2$ᣗH'lh2km(?H .*z患01H\zb2s(Q;*p-3G\~Rڀ{r>]beFC &[6h:S?YȓwtSi~dA7-C Dsm8ׇBdžiCǍfS9] U1?ʫpA *E[a8l/z7ʚ]Z!+z $?j4[߬R^3X;4VMEnu?-'s |bǡ&AAvB0FGA'uhHi Zi:)Z0/& 2pZR4˼ >c%ƸGҌآ(. I釪PEz@Yg@oRWIѬGxy9^qUN7D筣49WUc]3N@;rKTc3J2w}{#_z0"ݴHN&YqN UU}stm~ g:깣Icٯ"À &]SU̴;Xw+_$:|mG?T kՖXѝі[|X?|cz2@e`LRv0@+z~kWO&DKxhZK [k(?g o& #zv=ZDΘ6PEi^v̦Z%$gX,<`$smrvIL6_Pe}Jpűd$q:`z;7g΍5B90uh-P?7w^݌1©Fau2 I㧕)3~{F(>ZN1bPiHDar;W~Oê6"3.(Ɍe3yAW7 \6^AKǐǚԷFp_lh:sPpp 9d9m܌๋ٿevoK?Ԡ7hB*-ݔcf$,?! daeg=MN[ Kq;);S)dQ69WG9kYhE*6M cl$q9 ZW  v4Gm~̏BM1򧎠 ur4vm"d-HtnHξHW.1)rZ~Es{uY(tJB59{7\>Xd֞/N < &- 3{m]>]b?JAœA.WJIR:/VuO, +ypbũnɿZ=.5&rO+R@ge:ؑىpS,ݶ%ߙBj "Tz#z*9G%'B !\8߫K;4o ,3Kϼx #͜@aa2uU\43UT:3 ?bQ渐'4hzcR"U?1's`S쵝(t[lGI'U$~I0k NB'5 dOE`t~ ymD9Ƭ y;զ[SWѧ+7wQ.~=9Kk6[ E s ^o/gg!)4hzûgNR[|lB&% [yLuj|e좰\(.PB P d[awc)6&wz2,kJ i:~&25ۚaCHv5;sf5tZ~0SfsG o DqB-׌Op&dGLr\ iDsz^"!{f]A3Rk4;N]E!Kg.8B&gybM[|&G,]FSM1tAc ۇImF"BSOBJeir+]?fɂН6AJ7 S_'0=} eV C+[slT=Z鴧φq(Wbh5>V4 zB,/VXgI4;m釖X,`팝+Z3ܨ o@Qn.Cc`/u<ӭ]q/]F)ol9m&VZ|]1F].7 ١16*]1,'b߯),O1؁ٙ7jX*9q$ ՏsX҅E8o.I G{ɏ |duxګROndeI92ŋZ-6<+*lqtPmʜȒGScz(ʞZidRŌg.Q+%NjN9W[GܢA{p !,< 7= 2FA_Z3Rufȝ;? gv)^mfw5 [EyaBKOq}yڲ8~e1]Bk"3!B.Hi誔^{qFXUT+^ez-8ݐ=OFwb? HWPtuЊ2Ds˚3 twD ^"jAPƣ6XeZ}8PU z ?z(|@I U/E?d6JN#2Dnakb2Zvym,汛ؓĿ۰1&*YRmȒP( 8dF+4X6^mA?|KmjCgg8h:ѱ!5{DG~eLI*n͡<`>a=CkqDd20К $vc^Mg$[ڢ)Je 7%jeޟP  jc4'w?de86mG("ӺGbjh#+oVZF ƴBFTZ"1Y/sy bCN !T0}ް HKcwvЯS8LgJ T%|)w]@p, uEdي|B8iĻ.ksSͧ.ZItQ2h5Dձ81Z*|_K0+t Xv0禉 kԽ5/>YHeuK78 ΢?.p@t + tr0VzP)Tar7k$! ή@O k9GŠO[<-{-]춠[N<8`0QwPp/ rBZ!E+KS@obEY,_Jn"u)xau]BSˬ#ucn[vDҀ,Ќ+f#fG1*geʂISHyKZ@cg3T:BcoH?Xzx;.Q?#:Qb:NqSL9J/%H.z\f[^>0Mr_x%]~cR*242Yɬ5eVhɤ}|%`<~,WQ*W15 a s=s[q]> dt%;U4pX #?LJYꝳ+bA1B 4, xpF)}Zm+eSEjVُ4b7GqI`{Nl*eCq&+ <2܋EEE/3=,CYRaBpw鯗չ3f5~v9C3 q^3] B E1(8Bs;9% =yiOz9o#Ӱ`6[a|T{l9{xpz%tܴ0DnM9~A ~;_J{6^b؜{z Qk餄YtD+7VX;nm/&qC{oi^5;6$ Wk\d,\Дqo&N8]aaQwmH-0FVb11R֌twElY%ZknoNJUfF[Cy׵!LfBWPJ#Vɪvx̮63]@zf)bRlA& KOu8-@A$~\˩+J,;{Bl@ BO e~>R,VegW-΁$~\X\!8E2"jS͖- 滌+Ȉ=!W/X/F62FFsbü0$_z>DMū/LLЀtvxك{T}& s-:}xgaA-ւ̶!Bm&hlb lKŐMGsB/=e`7mE1)Qű>IGs<_|e:TLeΖ%+A4_p{hR 2Zk0 -#OY2)@;u>inZ_Z8o'۠m: } YjQ;mU$׷vޘGl4[y҅&\y''4{>Jżzہ0@HqOZ~Ǎ$Z[پmFE ښIF"} #ࣺ_nΖH*e>l˔J8ȫ!嶚!F`fʚ^O)ӓl֧3A/X?B:"i?u{{(%q)\r*cA{ nZyQqr0ll;6x+ΞO֓zkA}/c /86IIAV STFpƁ$6?/E%$uEcGeE[ab*)Y<*;:֏r ]pW}u{6/8Q1ƕC^2*}pvj#h .WD 9]S-z6>ܭXT|E藹⨐U,B76ÿ<.P{bc֞N)ecpZ%Ț1?ڸp`Mtx~/o_?ㅼθ8/,3|AU Y="3<3- ̷7&PPh(`ɰz'[B.QfAtw@m:C,2 "K$kIvHhդDYKN|H1浿JЊp5~y0ɺ* ũEH1-Ƶfu-rqkX 8`w,1iYճIDGJ$N +U9@)ZD+Èj ؂XkRi #8a): i֤Ɉ<zRvMmM_g znzy74Uh6 x mC Tx|-"U]EФ\af| >&^Dd d0AZ2nNsx)`c 2Tj`؎GUHE jly{sx 7xSYXwk_T5vtI1m Ԡ6ܡ }Oc.kTߡ|p,JjfyjMYz?z+H^l Ze*oW %k)u5 N!Bt5+P̒(y;I5n't@~alV)*#3BSQLއ]Gⷿ T+?eNIArʓ!R~ʺbl*~\416I |`+A%XTaaI*eʬ$0{Cdn?e4nhM7,^Z03|-mOe$#F0b;2LxOR̝+ƄؗdO>h,n5!|Ss_]HY[.R,W}z XԶdΟG8xs`@9ƐBOɛ K!%+C0W"OLdz&@\m{bĉ[eiO;t+U@r2 ^47x߽eÐAK6-48|)8i$qm Urb ,;̋F~.OZ#T5| dLEq)+JtEV.P p-E=pm zD[i>Q>^{ ])Л[2ΥY+b2ߣ#l|]^J;OFnrK-Y5ƾR*K&2x3l / 8 d=L9fp8Y#&&3vzN{ unˆDfxb;5I>,EΟwpf +-m1%<"A<3DhDC25NFcɤ$+odDQu '4rhq4O5;[|io,?yߴ.bQ>?'ojxWcu,ٰPcWW7/\-rXP=`< B<:*lO_6i?G Zh ќZmkF_^M% Q̭`;)l"n8 8Vg_܎l.HĦTNf'AtSHښ}ЏZrq4w7QKmҿ]8OE8 &-jEU&F:UhMU'zt<%bz8^@OK'ұ^Fx$ktͰ,5iU*F%&M;jJfl$Q[a$U^oom ;&<:2`JjsZnݠ# ]V9/mAv%OX)7n(C H[Oܷg8F+d&g`קCD[.ڏu$\z5\pvL˭ZBǢ |kw$$%7ѥ,mw5x7H!91B * 8]蝹!U?i7qiRiѯMj"&bj[K 9tK;Yu7)wE=ezL#u((%vihWÎ ]Iosmo3W5r6yj~:y ?-~sGCC,uZYHB) K?wXdp'J1`yhJ_$GH6Ds]؄'7Lȑ'Iy"TZeHҵ|' dʙKrA qߩdXIK7u B GxAy>\.gH?b| ̦:f"苈{cTLWpÙB`ߣ6q!FA+Ά ܁/+(vK㯕 եY]vima'xH_aOoJ%z$6zf1 b[GuXwe+v{n?eWQV#6teKJj;I0{ iž,HHQFSgzMz9g| M9")Ñ"ͣFͭXrt~h ]|V*LItRq ;&wˡ=a R7[ 3z$G߷HzL>mO9ך.?N193PLx2o%"nfGr%ʶ* {7͜ip|UC3b;bV\bxrʾKY0pD0hRCzL8 V<+Xc+Nc-kzgpϡ¬nd nqUc&S w .p1>/%^Y #-CPZUR4S㧅#9oCT(w֒DkgHxOݦ(.AcaLEbYk]rHV ;@`~(PT.[T(n$ѲgW u>n43,c[C'%|vc9 zL%ZG7-n#`; e\\jӹ}u8"`~{qKg X3UtvUU  s>Pg?Pgy.w`uz-y2^iNcvos;H9tu+4!FkpMZWVs2No+>p؟+^F$ȥsq?VC%ƇfLP,EF(3WW  *~2caaZ , e48I!㏁"lCs!o5kMH),Gzpd T9Do>_Sk=U:P 1αu,!A 8Z2>}0vT1l۾} h"pϑ3tʺګx-x g:N!2/JiKG``< Jm;áߝ:;f\s(%iiqvV,BP`؞~- Hɡ9-I4.(7#5Jm\=^Uˊ@tnC1޶3#SN+WiFZU;Z^G#~$CԎv"|CٙsHwZ+򔫙h>9'Ѷ eJ4\f\;oI*vKslJϝO$$x\Ԓo.)i8;2mǝu,v*&*1lBg8԰!:vC/0a) BGQebjv9VM&L 57?y/uXQ,m`@ -?yJCQ83H̵U'ܭ~Y{:v[Eo ԙf2tZF0S?㟟r3v Ⱦyk`+,h}rCG1evw"ʿngR 6h-""{7gf]^|ʕכaZq#(@1/. j'DQxj>K:or( Pj/H*ihȱ(0eVQQ " vxyrikAC i&e@t d0rFM.?+l;|n1&.a[guuy6n%`>o52|ѯ6y[o|Ā"V7YZ y6q>*;¡yA8* Jh,k*K!'!/xIHHwE?KB$ 嬲'5{ϊdJ c>2xOt&V=lSK PbpBJV{JcB [x#\B6U*% ]W &h^!W (E o%.c3(%z> kt bzb&^ ˪Kł?MrTAK@Qzցo}xd4,TSd}BQ)Oqvl򗓑C Y<I'4RL?ݸcښ wefFf3*Xt-9 }IQ]*Ve2&-f^nzyJލhB,leH׽+lL-iq ISMqI͐`8k"\$J? (4rˁo,;NQDq~:V&D3-x4Zk\#ZèbCg9'jXdi`î;^{Hfy2IUK b-C-}4F2L}-tCM]i[/º\LOgTSf1'yPPD )a bh :hCN|8cS3u ylK1; .G*zzC܁2_lEZN圆5lajͻLHҹi溄7 xGxj2 u~%bb){4M'?<6{5}6oD8ۘCnO33*] ƶ,$M*ʠ<\' ďT$eVAWQQ~Y eQWs_~|99A,F |kN_F 2Bv%H4eR:nArX t'yT? 8QD|FtӲEE'債|녬v.\!ۧ  .m4\zI1. ׷Ӌ\aÂ3iuKdz]n<ȕ:6n4~i #`Of1:!/_e򇊅zޯ./vlԗ)z?R9O?u&FN|g5^hdtA RD#:> _޵eT`(AȂ&f%![t4e{-z@^V[גp}_i4$V@f_M~1x"LU| x$dPGR? DS*=NB{ԋt9Ws2fI+"G4e ZSe[)hri<<< OZi'kT +iynvħôSL 1OX70Jip}íe5ZF*"p% V7{KLy8ain&QpY'뛜37e6YG+_~$X  j$ Pzj,8 FT֒wQஔҫ B&XwD'z5Xgu cJ!sMYwBeolxtCU﮶3fkN?|r(',^oaY4_82g4>ZNu 1l^<2Wik'sJH_ '08yyAD pQX9D@c[#^)Vzmw],ύduX-M.w pc{)!Q LpGtIOhQIj2wnd O:/I_[5{H݊0d"A 5peUJ!ZR 8"h _q YPKՀkVM95@a׬,tG*c@hedؼ ē 6=w SȮ( ŽgM%nEP_:޶;uQ5'y6 ,Fܒ3dGBeX&lxuq An-xqɐ.5w˜gs $C֒45GB3S*棊GzںMOl0v-U j؝ _\S?{$8~70S nX&½qd>*2 [A=3Ksm///ٺR}eRI^)+W͋GS2ұOt!QHtB"njC;%flcj?z@jZoudC2iM 'u U)~oC!7l nӎ&Q%ѓzM7)l#E^Rq \o^L,@`K*Mɟczi:&5SªÕU#YS^{{+J(m^ʮ5" Dچ\lh/B4k7 վ,SZ={*y+:py7>d 8c88PǂǓv0Y&G}4a15LvM<`I6nh:8*%&+u?R?}%vnVpς?qq8 _ZnAi]a{rs4^<wdE(*DlOʚ/U$N #Z/C^8!5)QZy=o h1kqT ,aE^s}-x+l >t+f*ܘY?xR>⋞=MV1Ocj ǀ\ەT_oJyIl[ vt68=JtbEl ~̏?VU+V7lL4Xo ;NqbkVaD\d=1kv,_K`^H Z )fͷҒ4ނ}߳+2ץ9!H^qhMSd0g 5#/ XZ&Qnʫ#;%e%lJ!Y1vwPlRsXrXj*PrDz 훖οX4(O _!|f񛢞}K%i7Ny>@piqظ.WkFh(LH'7~ ]}Ȼ\=tqd2׺bYF?jD= Q M|Шnu@ٺe7uuo4ތ_s(fmEXvܮn*H䨧dkꚨ >(C {G$E`tĠDqFXq4 N4A ȃn#"M5 ߅gdw9[fꕔg@>?`CoA>^E{H%W]X+hMptngwY4NVht׼Tt-ZR6\aRMЪm{N:x'1 L5=Vlݎ3^=7@Gb( cKS;V_sk *K +v k(&Q~  x,xc#c< &q^q Z|j6x9..@!o% $ w{}yН).LSl#8OC++[ЊsY{a"٨J/c,qw;bj7 W\"/6x\[2a]9BFi&{-5{A(6/#wb3 s@F!hk6G$3`gD^仹ҁ_1@q8V`zo ̀)1\t߸p~*Cxj1u5RP bdmzO .:mEzc^ j"h?#Z/g;s1<8H).wr֊kb; kE,ݡfr 8LQ3y#u"I]'RF?ZR8s#hfvt,##b)YZȽBKQUd4欵. blĵ?Hށ[jo$E\W]=~Qumu&iPYP=oQέ=,փ7nɈaTj 0WD`[Hl[#(QILGt_\ZG'p;GRH1.g(-0}Tjm h+ d#m< ]Z [d^4N9 Jflٌ¢Rr}c&n*ݨS#-k_liw{IǺd.dP\6FJf7HP O 2p!*ݍ3Wй>zl@P7tJ+FY?'GQ3k̝Z|,>#=8kP=vj}_֭#UO ^#pᶠєFISnAF8*yv_i~8sW ۢdcermbj ڀ:}1j@azhU]'0-p jD H.@lﶿ^}]-@:N.Z1IJk T{bitk'ȇNMR]( ZxI3Ctl{LuŋP1}&Iyc}Fq]gf~˺ 1uT0whT@?HjDi&'>`Xk[J[İ)nKBFozs$LpˤnEhG;0; ynM,4I=Tgx4j@nqoV5@<AK3e`L=cJϊןy4s؀TEF#=ܬ.FIp]Q^?$}%T8DNXiC= `#s/@޳ ևO@/ C&1M b:hm[4'Sl BfaA)P#ooiwR&yrOmyvQ]KW`[mi[҄ eN*#&۵ZL#*֬ЋyNcxBFbު+X8w^E[$la?n*iTy{d>D-~\I `Ru:nmeפHM\:>۬\/c:tΩAT֠ȮH総~3x*lhRlċhyF|G4H{#e(C7NGԭwsGf =J2Vgɹ!1*PqOׄ1[CD걱P{N{03 T\dS"VYF"%g+k:&gC{ Ϻ0vfeUnCe fwnjmWT;wFH걹yk܎&oÝ-r$MI-Aqc.o2k.-?H6%΃TIXwźN&١k#1ZKLv}Xs"$=oTԔ$ n6)FMTCm\ ɉ~m쾳 ?J_{`끻vy]! ?:W`+-܉+8[@^ NLLCnՕ`es>_wxb3(:qk~[jLm炩;|LI{&"N}I(QOl|5(ɧ[u x\q+b|ٿm5 4/x:̪ũnYMuۂ!w[(w;i8R k+ r`'*G3#6>#*xV+1hwRM Z\ޚgu=Sh|S:W8Wnհa%:M=>iUUf >HK"g]Zi ([},"sE6Ffz~U&NX[&z_B2H;=XɌ5 gaX 1٤5b&PP22nwC|*gri;\y޽oy]M i*_*.qc{6Teb(GJ",rvNqj$LuZ#fq Fp׵y9:6vPoj|AYa.ř'ϡvf wnVs:$t8Qa'䴱GpaTR1="VNhFB/4qY06"$Gg3B|v'|IjDpPw'Q."HFԅnWae V("dF;CAH>koKa 8C rWӰ\Ǔ/qk=kuI]O`bslđg#$^ULqʄ yiaBQuȶњn"xarTy+m;#ۑ&-%Yᘷp)nf߮Z>Q阰-˻rٵDطcvtC@ j McSQu~g0UUhC;حMNѓE~i$0TP S{^5\.ؐ*旺/ru$qz0& |I+H +Ws3N l})kܰ]'w<,i{q`I@rd)'3/꒍:'PJ1;7 (+=$;AҘ>G"__ՇWǀ&GIQ7*f {Fj 4]h_Юu "F~^scG'4"| آs+)9 aP?D4-EtqP/X<sTE=J(чǰ 0_=2r8a}sNm\?v 2Xyj8 :s5<½ - !9V 7"# dٝH̑w[|Mbծ/THz4wΔ$O=g}sTB m''FRߑmGgIrTU (ˀҿ璻GDt 4ִHֲAyzom+Sx;ݨL+ 03/O UN7Fn- N;*ȭe]iFiYciEo$*l4A҉\|_#l+]LHi5(HRٕ6NbeVv >I d8'v~ hDs$ Lnx qwz:=AAZ.:Cs'ij3Xm,{}N|q"<)PViH>yeW fm=2_$vur_fw{Nx$6-+PgTrDY&ʰ$##ƇEޥ;n`92+a7/:#J:]geT#BZ%Zm\]dT!pq |"6].U~&Zn HSkn[ sE1!?N./:G5gBA<82Q4-%쐽a*^أ?Y2-%x Է"Jp-`ag]eriVAwt괭;BC:Vtdmt깉t[QNU~w=LB$z`}TRZ:NuӞ~{ߊO@`OC:eAU޾UqlNЦغkX/.!Φ jeIO{'-H픆Kzį[B7&U(Wόk㉺˖e.kFms –Vayf,ܵҌW  ^=3`P9qvh. 5E28OX8yxO™$Bzrq5\OJjÊqmQ)Ƅql"GIGx۾t g_|ǀÍ&8[#ơscx4q{XaƧ؆򰵊ZXEfOPye\C)K7G+ޘxj &BWQH-%!DbI%NJP(*]"^E:9k".J.ӈ,3T@9ab}Wox:Qi@55HV < 3m yN.l p۱؀_NdU~d#CN-xʽ&U:lX 0WI GOz#S|""p5=CtPNđǙ`6VOMqcD!.XKH멎W+LhXESU^-yj78{M3WΗ|6]BH5n[iM:{rV;.nCn˄]-O]Kaa!ǂ8/h*uLщSZ큤>,<TDRDTvSlלg>b/S\sݠTU?=$ZA[}6؂nEϏmWBn-RᮖdUx!T1=g#d{uaU1Z3V N3rA0dR1*sԈSHǓȲŇ~>fpi`5Ü W0^MPx%ۇ:lϽnu".C.C^qlJ%p<9t\¶6ߗ~$X W |7yz0;Yeue x$CT",PF1zuT12/Fb9j&8;Ӛ&3oXӍLe~ttt$ś7'D^| 3%",S_3lkL {`JnMBkbwv,Q{Yԋo lԼͳJLz`|!/T;ZaW&EBzX$0% Td0Qi4BaʹB7qM˹=՚],z>mSy&h!Vs+NhBɓeە,t-~niR,m|l,{ށԘʙlsr~ _ P}D6>7U8=j fmFRT:N"ǻi B25 W1'5s̖~ްDé"~*_+¦4{e[6ixJ-~}ywN]Jͺ!`Ko}˚ YV\i> ݣ*,~PmZ} # Spznk6ZLce(ngfM_Q=5j {^9xYF:%s4V%l͖jB'RO"ʜ o0c͋1xVtU ĮIfB ~x%6`!u}Q˲|b)SdF1QBwսσzB*z 6YpϥaFWSzt pNR*v޵G> ߽(@c?!:fDbtpU:m8ӪkI  dzSnάN0j ¥+892[2)T }P&w|P8fJ%ꐗJkZlj$7Qs?T666Xbpc܄& uπ\,z?Վ3#uK8J.^VY}2P@xچ_LE֋;J |c@xZ4bPMji0ZLo[Oa)}+j2>PeZ0 ^tfL6h-G[_is|įUW\ Hq$|W=Y>BoAkOWcALTX КUH[tſMRd?zHW 79&q橋DՁF E.0&$5|t.79M_^c=̺&wțo% 5)ɏǤ +wlyM"X2udam vl)U/]%9&utt6Ǝ)FQ ePc\[ ^,շuAvpDov-ira?>86Ű|.ڲLSJ kCXDB掉KcȊ:oV=g8t|pTJ#)\O?tiH!b՛9Dw'3Am2%QEo7v]2}ޢAo ?bngtŹ1j,1_Cb,wț; *n;n0=jk]~fvL}"'K(x VC^.Hy@!L8$-2;nyv̜Ĉ đ^MX~p:o)6kgdt{![\͉}MYŖuh?rxbcTom;>ٍ8mW F:46BS=;jy ipK>q>uy{/!.2p"WA7drN0-Tq1Կ6@ӽ怄qryг{y.nѫ抢Ebd~F" 1U8beIUm8RQO1M1 I0oȐrTD[%@"CQ:-D+~*.8b*|0m8Pn6Ghb0z{æ+-pi}_\R9ƿ#pc8Nb,I``zBAPc#ek\-$ `[=R`ϠuI߬P,"\ 4ߩV!?wMM7[l^)y# { wfPж_IVoW V+S{ tl=r]v@e2zl,#hҁS!_Ԉ\ #E`AmÅkZq gE~/9ݖ-;L%E'B>R(Ro`c^ $pw﷪ϥ 7ϚKh7@AiS.431+pdmY*CǺ d95 ؐb#6 $w*}_O3oA90Yڄ|h61:{uy>/~F53ߌK|?D<ď[Vrb nbӢx&%p&St{2PcoQwT[wn7?I%doU{gDr1t$ ʻ"e~؇ 8Yh?3KRЫNqzY{^o_)85b}m QA~3ƙ ǻ|`ұd^D(#VCP2 ?5Gl0ʀ{\zquG3<" cnO{P,@a%?%"]u M#R Ƽcg\gnBRnK?Aw P]o\ StD8C_plɿq+ڮ:[ eX']cGV24Ys)hr"1q];f q7FlӓKAا a7WE'iлG742TuC.U TjW`DHzC!&w.5wev R[;d}<l8%Ïͪ D6 ѵ#.sj@Edjա7L KYXNsM5p}$+V+`)HB2L 9KMj2d.O!Nу vu?޳%3ldEQ&x`Ɇ_4k4HZM9Yg'@lGY]:f3e>XqtN~%ت09x6=Ǜ$ P`nг)0ܬa1g Bk$Zpyx}fSz{8 ?`;\ ?FmMǒ'7Ydb}G x7$&eFfT/LdyϺݥٸS}7v|C\Ae.g R#d"&FFW|J"NHEpج鰕i>s?pv|t vsbTmMBJIӤj[O#"1D1Aha`qyH*L@(6i|`tjx>x Ƕ"4ad?yߜ( mc'妍 -@>~51>%#RzdGH+a5"ᓶOpaHw~;"Hizإj.U=ԈህY[ր { T:0Aq&P WdT ~rYpS!4?ԋ*0&0^KvG:ߌ@}wO4;7oϸ G`)[uSi!"ZxYK#2W!dor؀Z mҜ]D` zf7LGl# vhnYxa->-` yBߘIaxŧ#YUvFFtM!E͋e@=&c4ݩQB;e,_`KXYWȷi^Ik]7y{dfp-BuRE6jIܺyn c*:PO߲m"^.UZP*gb]ϻoZF<&D  7E #ǾX@v|@$5kjG#RXKֵyDwQ^g@a*vHtHȄ<6d >3-v"uMPnpcHpc`3L腾$?;&0/Hkص_}E@$_AϰcZ>\NO4kGѯDu>N6ō7-@ag=pfXzRCUNj|EY7.P8 -2Mfg+U+ȰґwAwHD,H^r#9O^Qxxȵ6RVV\*)Xݙ5Nu;nY2-L*xl<,F2gtV_Rdar'džj+eb@P[!BxzE56  Zqt~iljK,=%o0DBb/ H\pe=BJc_~mHhw0a,l,gC>`73 ?*bƆaGuڿ-1ܩRSM3S.W, l n,99*Wzr?^>|M#b7/k@,DO&{X@z;`]2r4nN~ @|bRT~nehǃ៑ 3SɛrS;SI^|sxdo|F}*&RN)mNݵ<6wH^000gG SeU+__JSGs*niRr3=&rǤ೯<Ӱ@F4AvoSΌk49^ , &#o.KJЂOC~k];o-"_|$? '(y__35̋k"7Qm/3$E`|E`T,JQ9ٝm'Fvd#[O+Od Y#tE%Zth5z`shd=>ZbioxyP<hz#u$Sţu~/~^:8+H(uaQ!DܩПkgVot?R֤2(AhM ~ORÐhdhAAqG3T,:"  q3 eĿmk?i26_ZM0cr[79F*T<)bтN ntm}oþac,ڛ'!L ׵n"ry¶%I{~F#H ']aߟ&ȇ?bsiNK;yYJTmSc?>Ză:g3}qIa`\Eȟ,f٢QojQj}ҀJ~w̚|!}3X!g@(夺Q*8#wV&EU30=%n:/BtW(05' (âlw1T&Cd= qHWʇ]imRX0J =3ƈc+}q:jI[qp$ڜ Z;1 QBɻHO gl Y!<";~"+ 8hi?`FuC2*&J@oypAO@uV܉o3ZisN]{'q^V~UC! gEQNJY%fюO ~S OOEM4 l&ťK7Uk<ԨAJa6p^>V=AjSߢO(΁U08uGe)"aO$lh9 owOwwpLC=W8h^@:Xm'JLsVg;z(S=zYm~2u:9 閭|Y&H,2??9pcʣhM%ُ:!.2.6Td񾥪7bt Y* #+Fvv,qYJٞ%pk>o"5^]E~ڜ\|4ƳO5m֪?e,łW=S_"r9!q " 2KpEQ7n\M?R\V#rx9;NFsmy Oc ^u T)/A$6x~+G|2}S`% ,h +~Dkrm;=IqY㽂abe` ws_,@uK",iPɰ 1y,WlKPzwCT^fD^Wpy}wA1vz,kB+<%?`0'Ԑ妧r1\5gVhAcC*}{FќBzD-I az9_K:R>\.D D1\ Ro.-(:Lx8Nf%%ԅȇ@p BC}=YzB$(P-Ew+Oĵ.6>Uvnh7\pѷk]5j# J@g*Dc}7U?T CU,,{|!Jzj}:Ӽ _=O=o8,`B ܉>hm"Խ~-D["<6z@igϥZP/97dCuB:l+2i#m*a/Mɥwʈ%wCS "2zdl ASk.#2Cq0J9Ymy~,_3 ÏO0( <%B;ٌL|wU+zh=alHxO"eAnr3t8zam"i},+ $=ĕY諡w Taw3YuSTPxgj Yvf*IN8(Τw0=0SG-V%9cB8eRFAbn"fSQdA)mDϤw h9G/ENt9wPLIZu2`$(C7_ȋs.a VFFC dsieoq/iv#B l}R׻`Ƨzp@7$ZN7^D@d5z'׳L 1TBbI,֖o tE9i4C8]Wd׹Nw L.!t4nB؅Ba%4 oYr:Q)bL?:i4d^Eme$ť++LL]Rvi\l "P8:*-T- t_zhceVI(*ֵ ǁ`$?~Ll5+#< Dr$w@Xy"'3*{8"AѲސWnk! $oD4L{:lKK֞{w% iz\B*{J).B$hCB:]*[;J(V ).Z%D]Jk Tc`ۇ?kW7l?t@يtߡ:d썂 tKZ<3bJkb}נl6E7877$zI \zA++=!Ƕ2d] w,وSL^!aStt 5i%>YWcVSlH^"+h}/̌H?P+1/8gg\dMl<9|EZzK5fAI |rgp|3WZy+ 2fQ gb`di8NI$r U)*iqX3oLGN{!m#5b^2(HƎuz뽔nsx4CcO8~cx+ح_>'T][2RJl[HcgdkԹsĔJʠ|#J 3&D˯9}Rl ͊Q>|A/J8sA ]DLuBłW3e͊Ș,[X$ e\+zf%=BI1F۴VMl'Tw%ptt@[@̧H&~4:d ̇%7=6W$ZRpۘ$+lAǞSqd cϚhN583qK WEc!Q`CnjDǃ@L$Ź"gJإʵm$?8ZG#Qkeq9Rjc*;H} =X|[0O91hŐ"q݂PQ7i=ɨj sW꩸ȟcH0ؗJg4ۮ!ɶs{sִR,2 wzٷ鬞﷣.qHQMn-}r 3F厖H{mVS4d \t|"RҐ*~?t+koG09C8rI٫ {"i&1$8/BVCg_cF . CIR4tNu`'; hR{ԃ2%JȈm-9*y},BeZ#2uey$9IIpg=mT} :tlj{;]r)o=kzΑeEM:0{x2EmA+9$C;_v14ZASdX]:\S>A-*r&Ţ- 鏩-&j+{ (,)VBvzX.#)8^0EL봃-/S'9rWZ_IHOM(tUO@gX{+h<Zïk:ǀWdo_܄CSn-:t9FJ@@qZ+y}x`2~ȏ]N@0Y`ԓKsy#=S>uqY3\eDm ""/.odwZF7*P::|o<- a|3 yo*kߍgUcl.lݔa 5+@2rOäPlE#h3wpp`)z684gb!D7G+GH`t laeϸs ;Թ7)ˑ'gAOj<>.ݯ=TA+d/yڝ´ Z.262 ym#bs@8{0ʨpR*jΘllu.$og46QS~yUSK NC@)"g{bC?F? F ݻì'͕)UcQgf) 9 RkLè#`sթ|>Jeo^Rk&|'H)L(&vA6;,+s@}g uj1nXK[drmoqΡ{ WDlL'?$-g޲,d]ױ(0+Hhj~k)#֭L6IЇZNz:,g&mo8TOOM|[#_nHϒ)>\Y7$F|!iÊ91d `1MB ($tw=e\ i{_*k*tHĠU-O.=G}0y_kE9DH7Tvʔ1 KQo{ %KCׅS0w@tQΑhx~~~õͰ)uh_8p}tJ\WwJ 1 t{4[î-~9%}wnLvg4IM(A#ĞAnfsA0E= Zލf* bKxpY9uNM$w^&5 At/XY0 kIN=1 X>?v7T@H2LdYRƮ]'rX1WF+)Tؿe_wdyH-m{MG%=X .j|DY4WN8KYPdkg/qub)U_IHxnH)/Dѧ ?6 GRϒ,\ Z1g0GWUa ~2=8 ܐl3-kk>Xt)\gmꠟH,]Cھz#Q u&=]E_(6!Ze#ya5 ,2pl'J~d#V˜8D #on@뺯ctPA[ GK@$Qqf@NwlB<2nH\Vm8_F/\讠<*%GHHGP{;wg vL_ELѡ*XpzorLd@E`-,Cϭȹ̬l ~D-%z[XNH"a?>c^=賚ɬl1A&m5 :-&.ZSߟc|K?[lZwJ~M@)_v/\~0 MzNZ#Z&YS]h&!=p(W 2ab.VD8vѯ g_OiMJ)8[f[.d߱"j]0m(:U*q:Ԯ\>}'plS)M0} ̥8#jq~{4j-q9q=MaUR4cgW(>.cT&%Q|XQD"] l|FBq.N|ym /] 04% LOnyp&P (Mm'ˋVk/SMI\併ŏYQR=B@-d&Rn:Ypy7K^16Q<9϶O ieƧz v?&x*3D azJQM-3YOlŰ2xυW˶7wT o&259~Á͸^;+f!8KƮaGD*a!mli1q j3﷬XGͿ@,z2%MRA/'̓X\["^'6BeKiTYČvxRע:_ursyh*hjZrG!Pk>ם!ܪˣ렖*@p k߈r;X-̛?97}EnHciK߈v_?vExq 6o#n"> r^ОTFљ"#?ܢ4o`^3L}CCP8{+:tw2%= 'kܜ(7щ-c(@M1[-WT1+9~,L=z/ٷO2%~ I-mTX6i &d26ډJA$l)Q,P8+5z> ttAG <\UÃ&ӫн>Ͳ{Ε=[d [e 8ee)ʐpJ\SuF)*/0顧 U܂Oɿ xj+{|%=ٔ!wv2܇ z>| r\I 3*w*+1$B}9 t55% H4/#1Ez$aOZ y5n`C2ؖ>屢( Z=m 8o`W6T_DԾ`lsRdw1it& D>{o$SC=wxfp&]СLA%HLiHp[VWa!?Y'}!SY@X˲GH=y=.󚋶b싌07[ "CXh4dZ}hi!۠`w>\DH~Gh0z2wGWiV!3؈ǚwCv6FR3*}>wмAֻQos dٳƵ"BGЛ$ss(>xwkE-h_b1#׮o~t_7?d]56RQ؍{TIVɟ%/n0T&^s01 ù }6h° l6fHr'x|i*JI0u#څoBEl NOkXd݌'0+V=S+`?L8#:$,a"igsp9"0Ŷ}~,}+}ݻ Kqw|]2a~]ZK9y7 Pcd )Y#8-؋kV.k(lB 闬kO+lP*&5skIoNZ)pW[xEfg a6E˵`PcZ iS^X:)C{oeZnfDoqjpTv:m,hσ\PqUKcIZ?ߗ5/EϚK֢UPa3ՐeCUH#hpm; |_(?{q>rl{:" 2@ʧjg?[Et<0-3 ԥJz`g|œMEq1>1,ߘ$] Zeh4Frxtz$K4|51ZRq/?b.Ih^#Ձ?Flm;^G7V^4G BNKU,VPJ"^)λ)E,.w<Λ.R7UyآȺ&VLFݤ#NjWn I{7T7Ԕ[F[aaf cZae[HSl lه`)^-Y%?;?] y%} d6\_# @8W/i I|5 eK5q xM!ws29 JN'ھQ|p@彨^"E-6XJBܼ٧_MO{YdcJsz69Yk@">V49c7Y\>VWؕOHirj4BN2 b)EO?2dSk '@0 U>EU$t}428u$=Q#3$?-yw0? Pv @v$ +NTe~@N@00FVr^>^1  ]Oux{ ξ5f՝Cvz(r%z&E~}lA~6:`1)IП;I@ݩѠ ޖ2ގ+*JAil ]6Ei*~$^v8S剴yy;r{/b1uZY.TK*dXEoPP被6 &2h T!6߆(\Q-P?e'8Sa8AD?ޮW&X'? T8rʩOFfKfbowE^0~U(0W v vz &uN|gZvQ֪DZ+{4`g_ X?B?ӝ_PG AUX{HQ6T6&5uDv5~'rV9Xku֪*$ξxI'cWʢa3v_& q_H`gh፻D:'pW0b}u5}0m @Il{tҷ ~^iY z מGzYk]).|~$Fe1/@][IIZUPnHL* 0*.mR%:U%yPRe (V 2z+E Vrܭ*M,Rt 0B-׺Θ2;uҘVĭ89fҼgirGvHqgf $"LmC4OK-ʠ24.1zR5>B4CQ}KofSahN\\S󀆬q^a`| wl:Qo.W]FLmͭD<ỸY@\˓Fo-r0[exLG? n q%:rl g!(zzvD{A݄)trZB$Y2}0h,m  a"SHtWz:jz~J=P ԽOxV̍]NAD7S=4\BXj&>+f4WL* M&Zjqw8t\!JaY30eJ,]h%a+#_{⊱iۙҫ>|;Wd#8P_CPOcsE Oߛ$;n,Ow]ňɭ1f zXCƗDc1o)0Ȟ 嗶;GIⵀ]P"tVz븼o67OyI#6B HOm4Z'"j*X4 G-$P\`uAŊ1víLff% hӇøgXcz̡7ȾW_)ePR7w|BNWa,S3JU"4ssf&V>ohs8ɺ0RJ* kimsY rI1 5<"' s%в˜I`` -_V足'8 8!e$mXJR|Q)kcexfr\Ѱ3!+ Dbll+&l|8p^ 'SH0ɼצ~/?L[e7?򋉅$#쫿d gwgnb`k wԄ`\76res7u-Koxˁ"-/6 5\c Mg)J@v8L- S@4vjkz3@ld<:h k}C^@Xk撙5;ޘ6wf+D;+tHt@9UU]p%< YrzRqW Wڞcac8QE~F1Wຌ@pү'p/Lĭl4wTff\%XNN"wNYQdj(DHsѱR%fT;gZzn;-ŭVy_݂c)Ⱥ+:{*`pXnA<<όhAL7|cd>wCw* +/דPI2kMJ D5BF#yM>h ȕch #%&`X|m꺉Y^>Ils8(x_w4^q\4s`N&L@8V_- paΖlWIdnK;mu8k,%x8sM)򜥭-Y|[+Z{7C0fFvs꜏>v* ?r30&kR~`і@kĞh&²IVlQyvqAGI;t?V{Ob9 <~X  h;K>{n,u"\ˆhϳnqѝpTkԴ5Vl;{ -lq=ȄDvpz٢TP4[0곌QX>DϐK.y'BN@ذ4 9I&@}X+] p1(,S}OkCκ G1rp8y`H/͍PxǴ ^,*G)F ܚMYQ>/M,W qZBUw,lS1zݫ%1CU.Gz>rPźrI-׳P2+NV褼NFpk!9@>t %VԸywg ̨ Pc|} ͙.}a}T* zO@u_SJ.10˸C."fsP \Y~ ~hiyc>`EzCO |sy{`I["; /8om"sn:l`}fkuŧ*0uK9vrJD.B2. ـFASC*u\m#xڧ`jgاm C](dۊAO/UaV!zXDrs5s->դ`TͥR*byG&/E$^ȝ>g8Gu@|XJ,%b ϔP<8%0mFbn{&~cޱ/צ3;To Hr}43\#E*N'8hc\ QC&H#rLvLRN,NA F[A{W›:ptԵ}ͪvgM>c7XW$<,Q0/09|LC7dcc0R]P9E]{E*}j)tVNν`@ܝ d2=F;U˿ d'VAGmq'$sZ]eߔP{B,py>ؖ?"zH Vslt<XhuȹJlP7qqlL%2 AhnRyNqAO8:SOpd x}W Q,D9=ly#sWN"Mjd?vJ"Ʒp ] fbf$:ޞ:Iԓƒ=3:GndʬdvT H/TErr]g|IݶȚ@>Ϗ;T3CFy[Z؏w,-H2^A #K_Dw,;2C@r@+WfHL`O8Z褎r)a?2 ![/UN;߂|&SqӻmH sg"֨ . ^v%@;]ӸhI;z͔_lS݉[JD\iff+,qȟV ?#'QZcwƵN?F<}LWƈPkHR>|xMw SQՂnjq}yh#.8Y~G-,uVGLd%T>{dž<,>a0pƾ8P1[ALuG0ZNVBRQҎx}\ƚQmꛞ&&W.WޔS5">֡ ͼcԽi7T+}Y=.U9OAPADyL+^]1qs9krǰM=:hp:ѺR+v.*=;9B9F4gS<]Q#!jN3 M.hl8wUA_WU @7d*f$W#$%Wn5 3ؚhУ-Lɂ,P@CM!iAN*&)ʘ,n_,yWA7\wk 4xdLo.&Whoq1Y -4;:Ids7h!=̜B,0G.0cn#;a)e]K1ї}Iw_$-:-(>U>wd @Q~~k|(42sWQ ux]Zvto8ޭt)3:^9$CC=S=a:"QQ q2!KI[*?R)|+l"k% ;(M.R DT dZN2R\<:X'|ӄº2 A$m٨0PT%֮3(Lλt,mo3ދ7P3 #5g5anc)nsgn-MNsz*!ȅ@4xU&ʇ/.# ~{iw̢̓jJ}Lxgռ|PK}(DgA9sqB*\dAuBʓvB41kl 'gYIi`* GrժN ށN6_8!b`k2nhVVa-ƛh[>l ^pU^T$BCf#BkZ8CՅl:o1? ۰8E*bn(,hq4pL[b~ 2jB ̨ʇ."L9&6=%6hwɄseluL7͛:TLaV*73yjM/%A" xB6Щ"B]R/b͑?%Ȥ}<_ryBN4KӨ5;}LkQãrrҎ_$g~_ݣT# + L!Iehc8ؘ%;-0Po!壹T[zHLp,gӳĥ'Z*q!GR2} !S`]$ tj(u y\mc\5riBw[wu55}cEO$ ea|Zi@E\acZ~c塎'}{bYF <ň qկNViPqp`$8GF J`E)`V[1 Clv*;GSpK=\ʮ/?#GYc>ϲhM*[%ēwKoH {/8bJ4PGץ}3W מ*tt YVU|('^p9wVnCKh)Ud ֎1/7MT~fܳܚS~`<2C$ ϰ? $ ^hV|2"i~h}6Ǚ )wCDujY pMy)Ngq'W #6خlw=[쏈)C=1V֨ėb_ٛCkM^Iq퍤BIT :ڢ۪V@D}HKmuPWG$qNq|QMFgv^bUܳ)hQ$ PpL/ƟpKWXpזMT]tGQΓIo/!95rAX/+ڱYE 0b`ܮ@eSZ{vFxQfA*Ya)PWu,/$2Oۋ6݊(IB+"my) 0QђWEq=uy41݂WYtӧ7%I@\۸86sy77KbщZ 6yCH[MYFSm=1fKD[ϷLHRAxZt3#(gu?t%cηWYkYզc-1dfDŽ;\wh.u [ϋ pckCh- SJ=|\B"n`&\'J_!愵2̥eœ+ZooiB_RќƝtՓKeTi' +$v99[.=K@an|YX\Zt40a=P")y.r1:o^"dTAGsIT_T}XNqmQpMF uҘ6dsD8mI)9_ ~v h mP~F&u>L^엢َ̿cGbof@~Zy\N1 ﺃ"jIpMxDe̓ɆQF!u:QkL;](¦}xG ݖ?' 'l-5R`X] sóP>vOX-njܧ,B0|@SI+mb8n y%EϦn>KN@f A3W#kHk07xwl8{C.8 ◴izujhΏ̵]wr^54[5k= ʯ`F>}%kr轜\9ȄR;ӂ0"(,@+Wxv6̦G`dCrE  Ca UQP }Gcg)$T*( C׿'Ejo,rhL51$&)9z-HV"f'7"Q$yMqV+BSS9 ́aP+]`cz,붌,jZF!E @s;HWtIP:5JyS "4Y&v~i %nΊLU]Ҵ= HAC QlB#'ura(Z-MhZ/ǨwEd-cg.!A)a`qoHXj  m7!j22fg>,u@hr~n&dI&H;H,QR}JF0+Ry 8|XCf{Lk}!A$e.%ƶu:-{NLΓU }G5Ribg FT &.cu5KCԏPKV~hBNXN4?r{̣8ѻ`$,DS84fK&f4O7̜^7MFq !ߛNҭULCh?۷2Qԥ8{(& #!Z:h&p/8} ˑG+fYC'#^+vIN@~өoyr^(dd`B'uFCF\']O:$C~^nYӍTbBBG0 9ŋ+BTE=G{%D+zq21 Ew+T4O3%UZ \*Vyo 5<yrI"1a+<=;cG]|bq.MrЇSnBt&)ټ֎-l.u1VXLĪ$ҫVqnծY`Kkϰa(m 1P[9,)5Ja#ePUJi9MOKFnl8>&3rݤVVyX7Afה2)PX%~sW2_")|_: uL;[TxK'sG-(+&yuGc!X3 V/.")L?Ȑ nl9ȐcWX5jg{4|M2H7Θ\E0`M$/n` rS"D;P̣YK mCRs);*~.[V)6Cgm VQL;O#|.ҪCZ. ]hi"U@tPl4\ $gw^)Rtzσc9 ɱcihwLHPW $\Y{bigG3!)?[bs: z]7%dtyNaظe^r$ 笴 #{hH8 L_D^jb  O͌$a,Zx2}mRT|d0 LCl\@;-漥b3Bs7㧳!`sL%IC۟^&~V;?Ʊc[Vtem d͕řνǬ8K Jxꯀ-n%>g5YB=Wg%t|┾[̙b5= ׷uKo_$NEźcQuYK9ɓt{b1'91P["}B{ixO(d0Z9COHV+ ;8=#:y-%$Kny.?7!b߈"@ŏ>|9 ĥ٧IZYT0> hFY0fa ))lEZRCe)6[w4O8 6) /~q2ħU~;EYvR,ϰ{r@:!*'iCidM=}+E8k.lb";މI^^xĔ< H+MxK ޤ2 ~,Wn,2[כ jH NK@XoգAfGZ{Pfxa央^hv{ZXOzptS9эttq{H<#![q& .`Zeko. fWu꭪i|X.;zaZiCrtEi3@>cIWNw~&]⫪ .PA6hō̈́]2bP~Nr1uV%ʌYŷ7Z>ϰOe93b`?z5drUp>i 9y1W$^A[i'T䡤:ɭgWG-eM&ZU[\7\t{l{ 㷠cM݅Aa@l7F]ǵOtVEϘyw똱PpW DWhIKŦF&hԆt⅘MJj(YkA UǮRtSa Y5Wk>=zqFcz|{Mu9$%j/n1hsku@M{% W+̰&BMm/+ܡ#i=#m׹&3uڍ[92qں$jGj74U$[EYADSA=rq>ϓ ߊ2 RK*mЫ*O\)MgROdK侶>ɔI+t)DC .! >Yggt\z+NjfXP I<8a-@5߿J[kߘޒd,LGd"vkhxpcb8Wz"4GڑꕍYF~0ՅmMVAC|-j)eJЀu*Nΰ%h 醸̽@5'_2.-7r7ڄ2%!K.Mi6]sU}̒J&ozk~97Zz#nGsԆC2KGS<5j_s w@M0WX֝ף0 %hoY̦'EOfRu29u yb qUE~,r{RJ_H+]j *eLXnvCiћT`IAD^3J-@0~jsO}\6CrP+NSf o%h6 SY6a'_ oXbHNeC''SSSxŽBNҭNݨv5ݝheou,EvwT.#{@OI!!W s.QV;m}?`D%7L]_`#d~閭BAШ%ehXtT1Dվ^@gʹ2Ws(d]*pB4OI<ǠMY ߂: 3?1}ѱQT์pZ`} avZBzEѮ 7sADǂQH0yZ>wt?ʡ56Z&!m̖%0E ܉sنB>jDGeoZ+%3-LBX+iks( 6|F4۩'D;į]?|;ĩچM  yq6KU*] M4kvI`|on`Zs%Uw(9nƨOk4ߐ"[i?7P"OCa: 00N;GmeG$$ј)9x1"nEmrz8|c!|W:A KA,RNu VPoyt͓EeP]u* 2޵=mԟAsdAmEBKҜIƻ`Z.O/YQ:68&+#ДZ@69&~kcXSdAu|ܿQ>*Nv]' *O~=:5?4S@#6ٕAU.($ͷ! k'`xKkTY( +<##%7w ^tdP(j623OzʸWV2W [,^_xh9Aچ SsjT rGYc$NM[݄tF??RګѦūw4 J#edxפKr0غD^:_.oуO8*#წGb@hԙ@iլnlzKBKjV-fRNĉc;bNڄg)e+{P9#,`\Gޖ |uv5p"pHnGa]%<8t%k˛d}6h.Ѧ1֋O#A\;5*_%ZŖ"KR@ׇJ4b)ћ[s%ӋI>|EB @)X~zK  uQ;mz00. Nqn[WoG߀%GTIK2*xSMgOJ'-5$kce.~A`8"_v 6;|æRS v̮|^,ϼ Gxlxx-& tbS_]6F]̉(7BkFi0af˩Sbɴ#b32´IMsҝW M`>cj(V=*xT5 Wڊz^gUMWDR86h0(hJTk<æRUW\LCd{,Ḙ.n(z=kV`LǾy}wG" lLh}\ W(b 0?8 }M+O *주QkE#>X_d޵&MCSJehWW#[a;T d a?>BV?8w2eC!E5SlQ8~3JLh.es (ӏ$6Z 719`[vauIik${%|ĸ#&>&ְÍR\F7[%KxNB%(J#Uź5YM^Չ($y'@X@LnRw6>.=]ېN٬4&}?"O@rF̦yji9=Zw&_w09I}/)@zӎD!\'h_-R rHebAODd$j `QdS#6(yK{j58Y=NTTјBĎuׯ\qЯ=#ok2g"5]E3l(LY龐z{ q[QA3,dfS_̐ RW$&WO>한e/ޮT~0=i떂A;~EIl'a/W/#3P6yp_r8R 5D: 'VۛU(l!Ѿ}25G~67K2@_RtFdCו?w_T8Ϻ|tK.s+&%=]jYY35e]O0^6QBj8%ݦ4xnBhyCƪ7@};`N1\Z (=% F2F\udmnonMtvzvQ˵ÁU:줚Pek]4bG\!IwiֵGS52ǁ۹KTO@1>ɦ].?U6s,PDNp`=POacH^ Me}qCL'-Xr6j.)ϒ)}9f?fIlND8H`@igXp X1Qۘ`9?Q{{ /STKO5: *pꋀcZe~%y}g>G0d?0:cjH ~Z']+aS/unZLS]u)r,9Z@lG]oWf](gC<=J ՙLFSũdx$KKPW9}kL|aĿ-XZ,aK*c& [ ELZ*@R9u!Sya1G=x*]5$^r`x !t֩&j nXaFF*zá{J.i&֥ix+@Pf.|`qٞ%?PhԱZŊJ[ܿ$}0J-dw*:i].ȃJz3XeSmU?AuZ1>lO\Ѵ6^X̅5Je( JApMOo op=z`իa$kDƍ6LPP6kDr#zaH]uI(~#*  2SW­lUM> a=M fd2~F'T)E6 |HA;G&[q0DT?b@{@rs=E8pg¥U7uz!pPl$e9H*v#pZX謓fqRl,&wtj"M&A ?ΧPQyVQTaɽ.xgf4( qWk%+gwnFeQ/˲ߓODET wuc,m2"??k4DR?;G`_j, !,?(PO$Zq][E ߫fXOg* #FQ|umPQWXAKDɭ Ӓ?`&sNvrE„g pmy.ITN%e:8䜟Z>c/Š)PZ #K5ր\Vtt :6,)pTsPJ7I#Xb;cWU!ظS/Oke<FID<нkGlRRچ2^$@(T&lhլg7;Z)Vy##DKlIC)e:Um'47)-FqAG訌1#gyV8]@geuJ!N*X;3L/o$=7onTڭ6_Pnj=a*m#pS l[1? 09]/*f;Mw?c6 ]S/R\\fNqQc}=QlH yx%ٷ֜wJM&7%|rrI"LV蹰ʫ::]N8>Pc= QEd pb00Baj5aVI 'gR^i1h*+p[?o)W!0DŽ!rJm/JLkKJ ,0=nך`.,s$_YO/džã׶Qe⮌vtLB uAC{ Qr>._̼V;d+%eXw󐉽MQyϟ&bjC#p5D]y};*sf/n\_R;Ebწ_X&.Okߺ2X,~& x'@鴤lU9ՠE<@y'i%z w Ѿrrع8S`F l{5"4#0YABB>t 4x#:w%tBCrYo'F]9XT@X|MD~*Bc&v8ER0Gh`.QQl|৛~?L 3ȸ9lA2?夵)8VTgW*&֨qy d\f`|j_^Fnt];/"+R9MLG"W~RbOz|n52VK#rXEbquAiF K2sD9E#([`&SR@.{ +_DǃzP>a˗рlJ9#@1x*ʠqJkAoR;bA Ȫ3whh ByI`k ܔA>P1N BoA+1 vvʉl; A _ hI u8zDz8 dbh B+˲c3@-%#^Y@V6 ^" Vf0 (Ũ:ЊdFY..E%lQ'B",{:A=GN s3ač^[X+5Aaʺou w}rO™'ß[h+Lug)4qͺs}~ # Vh` `g`V6biA.W_|9_ck}Ot ^aAKR͍._Λ!O}#rFʈkctƞTCݔY $mO 5c_b,s޹V-Wn/3$4F2ԣ0N֜rكZPvX?[;*Q]dh?JL[T:u08$_s=w]-.Jvˉ%eii >֐ H$ۊsT_-ј$#PZb1J:tmrVݵAaK*'n;av6½'NkZ8hM>?$(D)H&L'xiǙ"1 wfW<Ĝj}b\i@XxbaXbl*TYJh~|,'s-A$Ol%"G@_E>2 G .N"64FI PHi$U:K +Q%{$&Fl]A˾kFqΑ2j+ 0,V6If k5שr DA$c^InFR8nޮ_:fֱ:+6MgS N1F]YE|)Lq;vv\\4yZ٧ũf RnziQ?^@4ijW;E-T|*7\렜>}[.'9'Œ~{1'6 زޛ2=ewrء2GReuў;;E=ʅWLY.܂R@F",iLq McPr8.2 VLXjAyqü_LoU@U#PL0!Y_G6emy)nY&4PϛLs}.L0#W&aQd”WDP|e6WmDÎD>K꼊"D)kXmI: .n [AdKTv\#PK#%thOM;dr$n] مacR\J{¿ϣ;!t]e7{MLujQK0NX_(ʏQ/p994(ήa% eeh:j.FwGN]tG¶LihP~tQ{MP,o̔4@wւ͢IEkZSh _K+ H֨k#WoU(1c9ihXja>bOȝp=C9ԩ9M@WIj@pQpNBL xy1ۖ~)uwFT<نTWqga]}M 5vUVVyl TON?gp챳JK4|qXS7`m'8-.XtZy;SŸj63X7` CZKr6Rf;~O/bZgH.Z.?u͵U+Ʉ#rк)ky%Eȯ~ltLV2cŻ70)փ|^t`DF458w4 R;%C rޟӘ\ѻ̖Z҉\Y^2 j;ߠ|E*GvR!DpJn 2尹չXYgkjŎWDq4&և10~ʵkrcxn<emczɟ-{% U}*3ћXsH!r82Rzn1O X6۾*x{}]CC˻ItʴTk@#*n.%^!ٗ>S i# :8~u;2u'S4x8՟ \ HG3?Jmɜ"A9TXSQRrK|̐$y_LF/Я !?!Z.N~*GiPrp uFYP]4E'O'$2#:-)I)%K+޻+ѝ? ` ۃ./2Uz_UoTE⠭`? }>ii7ABװgn !inXƒ9‘E܉-n-Rt߄>eی5-Ӻe*K>m"L'@X (K/Q%oA<(BCl1x0Z@],J QE[NQ>P\!]NA:6'!jDO?2K0닚d>Tcj,5E0 (F +.Ə -SJcs5~|{ >QxU;- ?ʯDmKوFCZHnqnbIx+ݏ3КiSF}fo;m?{\N{##$Ewdxcӈj<8?g=ޡ%n<֎Bmjpc`gHx_J.>x Ҋ&Q;Cv5n"|jb"wTVɒ i:9(N6GB_:ob#*Ve^g .(yUkQV=' ;μ;ەn[ZF -9DT"Erʝ'>?BЅh1ɴid$tǦ6NݧJ8yja j2J;{ 8Q t'T7QJRdltc=ho)q݅4MbSx#4ɰ sR{Pb`)E Jw XpFx8Fa5x.;: 3 x '*`F2o҆4҅s&e_fN %>&[*wPO ݬݐ(96x=7$dDfv.JbWFtd4谛*@!9D$ʾe f7MĿ3ꕡtXb*,k}gx3p"jHt˃Fk wd1LG` 9N[ZvڕDš4HDTqYƑ } %O Iq1]7d<ª.Ge&]DGՏ+l?glx@Wjaqw4L{JKAMfWV{GpdtFOk0@P*Sp2U`P I":=$73]SLB=B\>[]w"LTwr2EMviVI@J'/essnSG4 Smh:~!JJgrYZh!3?/|BylZ0j+Ď*WUtq1\"$TaJh5vӅNlbHs\5^>I{֋Xz'%y &s3 h^W jJW3M5~48_L"wޒ2n5[\l>6-q+\:V D; eN{q-LPgʺI[6(( !qkUK43\7ʥ̯`kɎ_iBFk,Os$XP>]z/a#ez :HOuhCC;FkE?$49]e\WC/6nȇ' Z09$)U, H "zq39f9u 3B4mR3B,{ܨ51} IBab8$6vgro 6W >PR,ۚPko[G!,Po*@ߐ^ .Z,( J^}~d'E}oOO)2ûOBo#.h"ĶU$jbZ駹brR0="׳c`ё{FO$ӾH- a`k=]GnJ&cn i̹o }Ajn-USn. <'v=p-GA֌^>AG 4#SYc:i\ +bGw<1"Xb{hjf_n;XXI'LkpFo`S{eY ~O Öp)t4,o͎Un T':IiBFm1Z) T*^ 95eCH{PF%<Ku P?qGAURw䪇2h *Pnm1+Lй8T`+Q^gİzoGu Uh_-ځDoMEmf\A#4ʜIKc|qgkbsZ)i㟣?A$@;N뉿&T=U?vjAۧ`P5' Q] t0^ LlK/otG.|fOO"9J  xE=/$؎!v{/>BPzmt K(+dpuFf’\,(v&\T;ׅy7SJJE^Rp#Ք.#屐]eV1cw"ەԅ6քN *H?" :oAt0ӵ^ Wf}@{ "v5❺K-W\K`kdP0!M]]-Uz8T!:e A~[k9jrH'bl H౉ɭ$"ݏ L]MQHleasz_ך`C'}^˙V#N.b94e&F;L{05b5*zYn̝$)69:n1Zm$*"d!nk6t1i X lŅ%4W|*P@_}̼&+ u;n5I= ,h9 )YB A=-A %7~ 9᠈`/ U%%fChAHh tZoXiᇟvOSk~Fbݨ5hԄ@-1Rv5 hȉ`܄tYV~4o}T?`^ .6C:?t3z^ܯru)&8_ MY:1J`⸛bMQz4gAߚ]"7ۀF8>_y= DDre^{쭨3$.=ȤTFl(N9蓝+BGo!A+ݿSYw#U|# O^Y?!(hN 2CjX| X0f6.ηxGC88qo<1)! K2Z 3n g%^^hzsdx˚`bb&5XWlWmXn4-J K^c.SD Vר^H I|R&ʾ@_DӬ[fC/C;Lb>P]D\@/xu?a* U \V b+i}Gv7yHm]Lk-낰Ȼ4=ϑyq\8Ta|jᾲMlԼ ~xfJTOcj;b&;7u+کBC:<+.H &|ւ;,b AlZ҃;m5,&1!Z>Џ cmib:y;0f[QZEG9&߀#*]PԒ3/JHL]ʤo'0"',M8yzhWC|&XPiGHĵ.r@WAHrf!&ohծߏ:ιe.ߠAZ1iӋ9r-Ě̬qTX1@m!<0"]%ӫyD[?g_f.~D$6Y־kZ5x4`)T#*7G~ g}R U' x#xp>Bz_,ͅ \N@P`!'1 `}3G$Y+iAFjTľpM[V3;ډR HJn*Ȃ%2#EPUA xy17 g#%P1U,ބBMԗ]+2,zDT!&[~D!(KނDOR9WBZP;P~෼YV3?~jjڬ'? 砅[drWњ'[VeГc IB>r|\jokl$"kx'! {l[_qqR|3⣺ETऐ󴦗,e^)_;? ? ~R[S.rǣIv{qBǓVtoHH[bۊVǂ0ګCDR:mh!Pb~౵\* r? mlͽs8h]0 ۙAZ#ܐѥpAAʾ>"k`M`\\~YoO*lv>Nҗ{}k8;w͓}GјT4rSv!RbU?`',һ Tti}<u:U)fUPaپ(5prK r#.4)&hAiL,Q틊,cw-qTt z`7BEHjV70CE: X,ȄV*DTF0NLYYaVšAAb9>X;ŭd)3/gU z-`җn",*əgA"wV犂NK0ёdSI`p3r욬3 d>G = 뤽 v*[U 6lFcTXκq& B rKkHSQh)c HR|SOh. ?u Xf (XCO9{XƴɮڙuH6ߺ͜"~C'[l;aCnIrҽhI`1;ZL$"}+4tZ%ޢZn*ߤfd!I^(%j.tveRE@&Ь6oIs_JQZ#۠GB2f5x$j8B"õi}̬"o\4-JHdzeKqc;muy+w_j KJrQREřT9CT斩uL‧X)UF%+CJC_mES#3ponkVHTSLq*8`nhV4[P1𢁴J {,Ӯy>Qm%фZp@;dV;c??_#xcEѶ߄/[D}Ǫ{W=_dިf(S~Ȇ}pv?ɍ]Ak~tK[ uܙ ^.U|%vTE - 'ygos+t 8SWm'O]l4~4j1/?X3K<VzWH$nwi:σtC,ʺfFG4to{cI[Bl?~粌 ^ qAzVx9:O}VsT"jqCVl Eg7 ')\ w"|W7 Wn"K4󦬛~6DT:(>:%"60KW$ä\U>_~3 Z{xa[6Bv+ q~ jOUh~kgKswG7q$ߠsG64$I76M[~ox7we'+I*\#_6ku(B8Z rRSQv\(N{Ɏ6H`9~qRvrmɮfi-jeN3wx f߾JuWpOA8>f>=T(0UL?K0;Hcrhjڛ&5}>pwF`wdWϔ޻;vi"ąr"$&l_l$oK#.`(RWӳNr,*ߓC-[0سY^Vw56C]}޿o~ٚGt`/:MpAmJ*1?cؾTq& in#~$Fr'wqn`Uj&Sws{_r3Rv3yu0WلG;l׶k`_UfruK "{u}9SXLz:&{c7FUDYe|CzE,c^@%\b>1h' MM!myYI裁7WTb9OP 3Gr> MA4+ش /* QTK|M8$1O fۻ79 >Zl#%Z7Z 嘠Q^ e6lSuGtB_4].4@0Sl er8M<E܅-b~[ hj¯,70MT f&d_A4Xv##LhV/Q!1|lhBDt^38P/qDt*Q6\Wh¸"$㷮[j4iEB[{Ù98MiMܼ6BևUCRFNJ~?f*04q/:@k.KU| ,*-fӁw"(U,1Femjti\7"Ū!R=7Pb8AV/Kd㓽߂LUG֮-0cE]X_sQک.l#H$D 2eI5rR,?Z8k]DG?r }ک0g)D]L, |؃P:R@EbR#<$S)k|mb2R,q ^1=Jx%xұKƉv@ 4C* M @W@``(>l7ε]ɷ(:̣zX*3?7zjqА &ڨrZqLgq;?b6Gk=r'[Rl NK$)㋒svl+UֈCȧ| | ς~RBuW/$M:XS.+Aq7}Rݕ>Y=}&;9n8f ,)؛>f̈0>< TqWҷbuFAs7q #(Y zݙ& @Pᦅ5\r6U:e8vI#xߋkJ xLVb3CyB<= \iU3i'QwP??d;_ΟlYU@~ ,ޱT:qhs1sT:.f Qzo 7MZjDs=o+ itN,;Hnq5c(u3 &* 6?BCp#k:r"\(;:g,N>5s9TK~ t]+GEX9n8]t2o5p&oؑMw>ޤ83ز{ -[в r$Ck`o$ *@X ˶_ɰß9 3o{.eM`7$d"ڏ鋤D qY0ƚ*&~Rk EBa_ ?m_Ұ¾b )%E4-x$}x =3||Pc$( poY/Nǰrsi}/Τ¨l12uM#Q%Ŵ92Вފ (\$?&* ⟎[І|Irv^TUm*[p )DP?a2eGU1*ª׎a$6V0jyuvi$\Lh<,nBr@ 'î+5,@_NXc{9h<+L^w؋onYz4-e ;e:7# {,[YI:pu`o1e+A~@%l3:WFaWt̐ !w00aًv]T(L_Sb4𠩮$EiƏ@̠8'm4OBwO#;%Cs30=R)FuNb-ImAsgg= 5a=jQz~Mt1QѢny|vWmrv I8M(Z'Տ$|hTd@}եuMS0:۬pp?!vHӱUm[ךXP+zc؆qE G{}o޸A~3d tͨ#>=34@Nol1l=+l sP>$|_ƯϦ$j U~a.<YyP-xCFThzq0ݳm9aaIIO^if4 Ω_#߉q82GCR~cȒc@!=>}a :s/V`s<`_~lʎxMJ"Gj? \߃nl5GpcW= Ϡ;-~sSȐdȆD)Qi]vv'cxɹv5oJL2L."P ڷ5FRД3š&Y&8^nޛ+Ɵm6kM9%E$`TN@x>EH@j<[v pc;;{Y=v,.Dz%dgQ.AH-[iSL0b<{ }ko=0y=&8'p8kqlu`3KDGdNi 5!yFBdZ-Y7RUпP$/jMg Ncl0Fk>fH^QI(?fgY5f쌴ˌ8Kx b-x=I?, ʑ59ԭJ&*nCu뇖LDOqc#5LBGks]HK—wٛB7LZl8Sv$ 6IޔgtȺګ&3Ȑ}bzS݁ \5X˕:GE8&lB!Αc s6+Ah҇6тP.=M:%+͋[2.̢88ķ#VM~3SsS8C6Z갇Ci="2d(_ /`L4@@TuLG$26,l[20 &y鯄VCsKb61Ug~qܭEqta^JsmpYok*y BaH'ZB Pi4B.8fXu))gt\Rn10 X54qO~wx/ױa .2 bvA9{kbE*FN܇On=+T GWs@'xAXhmMa 㓭("lzZ-X{Y>0I7P;d;ň/ջ{;ݱl,7M:5b=;K*[?"R?$=_RQ8=%3̰`ϝ]wp_?5{S['Xɯ?~ A1ʛʢ٫cqz21%==u_}H|436;ʋ3hAzuSae|:橊kJ~aQA~컯47œD^Ea^TO BLO.!ꏦuLYHsB%/ UtU 4W{|k3jn5}*GC VOzEdIaIR1,?GeQY)j+ɢp!T,Un SZۡ(؝|r$xJւCC2zG[O4i R.Nr^O̍V'ņl++wPW(y}5H*ﵴ練j:0Σo07֛ՋӐg@NҸ锞Cna2⬓d-jIAQRgK~fw٣Q#~Y *i|l"2ukϒMo zժxLvpոr7Dc7Ǹ,$ܗgM*RC?D8\>WBB%"yCD%D˙,Cma&!VQ.h{],;@C;dr)U0 $bDƙf@2*knAJw&83@`M aT_B#4Aޙީ>E$u- wԌUX[=Wd3Z Aߕp҉՗|?]ADl>}orceuԤc~)-66Jo@B=HTX ̟ȉo7d)GBc}x±gk}Vf/Zf2l}h[;1>5-=`"')\,;aFͨ$@aL[nXt<5w紹s՗rUF[;I4091C_-3fڢ2364oErKܪ?a_{T2 qz!6BI eguɇ,½ClPAT?M(~ca6a $1m\E;1Qgf.? L¬+^RY} ˡHᅨ(V:O#@oMSjʦ;y'`<kշkNʤ[Y/wo hs3H@4)&ecV@;ܣ9 Sk~;%vqGŎZ!TgB >&RZ^J(M8G-bQZZKRBFOw]<Ƹ&C}{wkynAakmPn7N9 wjϻLc[c HUvslMT:{WS)d%ܢ;x4kGע _N("55%Pj p1U2`R%ZXzNח+8.=%s4.G `,vKXK-8@͇G<%6@͹Xb';B}Zk h$0c@l;:Ĵ\;hzyZC\6@HPFsoJQ14 ŻP &f&b-p MTz 0ʁ!H{kM?x=ݯӶ4۽%@BaZbٺԟ1y .i z{cc2lC:'$-. 2߬xțvVKH)MM@3G +e^׺z6#jeʠٱ;cjD ㇸXR(-Q!w*هisT#i0zU0%d)G;+Xb{W $mz\`;:=7#ҧB8. m;Ea]*)v7S#yH(({8#'+ى>N_nB^7Q=r>oՑEP%ivV@\Ho^7쏎fqMGە|SD u\?ʩфA.A)?V#$P 2'1/N, lGu2_SXZ8c 9İ\slf D?n3leA$ͧ?gv斋4kf 1,gH韲R+zAJ9W34q)|\| ޘle S9{B2 ְ(u!U>2囸6zkֳy\'Ǟ߀ByqC#Z ͏́/ߺudS0?5fAwĒήuW1)|2!pA3H-y0Gil1>/ʈK?#7Ka-UYli/..6Md!4 &V"'ɕ * J٧Ll[X;$dW\+4];H8Uhq(9jջpC *Yf߂m(?Ͼ4ŒI:wDaHL ~S3Hxu[8G0Ĩ7)֗C%QBvu_ai˲h75}۹D(0ލ@i֫~M$QfGWیvi6k["y@ì9v`]E"t|{''DA7lWc`X}=1QhN%WLU)9}fT-0ۭ)|>2}|꧝9"/]U[W(|ގ_Rhֵ.۝?6 )fŊ#iyze/hևn|1l :ǚ縞V&zsZJo] n^uoX';)ۯr'< JHOycuy5BBLgC4MG@b~NWΆuM")#ƼwaO槼}$Xji,'(o5L~D_.,|CP**b\Qt a:ӄ+nI2}s)H#~W{0k?M=C;,BE1i/<̿Sw<GPЁ~1`͜MMAz6 8Fb18 ,8Cq7,%07ȏ*Ii^o:3e@c6S[Tv tt: ^>\?OkOJE3(nz!8?*wYTЛT]?ö>N4vEW.)8?Z%CPexҁ}5xJ E[RlA}r` ߠvJ^(P2<WZw9x[`¬TL8_[Vpx6nJdO{ (4Qc/t7/vCM/t'_*s]}7Z ŝ'ųo'Pg7u f'swS@,zM.60h˟P*7E.: p'SI*.]b6&I ɼ A:o?q2qwpM`,v2ϲI 72 Ly/Pj%T_~N

    j~N,1l5~ IKCWn_qrS5J>ϟWӶaYc(x4 cMǍawsIvO@y~먀FFL!ӷ Rm! d]ȾGBC9|l \{E]P(aO8[ŠX/AU꾢ےjU8 h$( ]E@H[,;hsr)a_ro'sfA #i`ڕhb(4.ab+CU*dA#d&*4vۗ0{n`n+B~W{ 6*y\g=nU FG@ekhj]gҮd$3_BEx_ݗRXL2ENYMCxY ~N85jZ+YͫfZaṰk+ą׏}LؕF+eaˋ+z)ZV:B(qw+Fl/= g8>1 `gWt Ř;< .B4l!evwdk4e:[Jyh4!Îq#֍ v0Rl KEXSEYy@"°o쮜@4}kEshGP81"8,`KtܱTY((+G>8ng'gZ4<&DK#)##@m*|:M M0,NzOν;z s0Y)VFiRVm ҡ2tޕ5x+Ss b^\Fb_nǺWnwYI)!x0ޡZho(SZDiia'AJ>7iO^*z0սa!RwǃBwrҌ|#̉-`hi֫WoCݪR7؜$YTQz2J YT%ZG{%#?i$ _a3AMAfS=*΢zۑtzyDj2<SVvpZ`V- xc"F[Wb3{#311t [&H bIgX$2s~A)g]؇ 8_/~V_ߑb!#pyr#XucyG8MmY Ho8]ح VYVKf`ʨjxuxa`vL3BPO~ pH]u3"}fJ Y|^hn8 ΑWy<bμIBeհ?;y_$^R(,\#mɪsr9r-T?iO-!@ԅJҕʸW\ bլ" 4qU;'AeEKc32\ SIHewݔՍiƔ,q#9[Cx'8)t Ʃ$n߂{JK F;J* d l).׳nKݖJ)a{3zA➵~` \MU`i4h'\%kh_uvq#S ůp&id-, Tnj"Uƻ->a=͡|Y :%ۮQnB^R8RHq[u" iY]np  9|j$D0 15ޏ$SgƚK7f9W2j"]DudKL# l ؈N~X9YK{" dõ _ҫG{])CM>ʐa u$W,TШX1q} ī)brA>d'CuG0hF W28nK=Du&7yDN]'.~q+)l:xhO+gjd3=#wj [ʾbUMSgR74dhӔ0n 35b"Qt, e!YǓpn^d-FCɚAh\Z3pU$+/R;TCy9F&jn9mJ [YE(cwۏz_媁\gF8(8>N!Wݦ֧_"$> ٦nץS57Wc |έUgMի[*1WaH>ű!0LḦ́ӭ ,Ai̇I]ߙBu_ȝT}?J\oЋL@c 4pd`rP7f)DYɕ`!Ta}# Adܿ9uVEKR"c3`7xClIMMaˆF<v%jGfZ_t&"q vHh:Mi6΍ߪX ;wE舚EӒ(H7 'eAtm/ 0ZQ/I딿b0|fF pLL7w* 7W!ɨ/.XM -1ڋ|{a F!.e d5#o>keYPEFq˥:{r.іIʑC*%ǃ7gAJ:Y w*5L4O2(3-{Q` xR#RMPC+h:`]1lur"34$gg@]QmyzKhBUc Qdpo?X|Ż\-;czK֞J=eey%Q2n h=mxp bRL+#M˺)k(VhhtZOΞmصZBngXdo! -])1-~^׊S Z`JF1u2 ]\Z~2 .T7șf">K~ x+g.iq)o&䀄']Sh5 V6`BQ.&l؎8SĜ]n٬.g>PorVX>pG; ~veB{Uo/Q˘D?qŠu/M50|YmPefj_h\$UV~@8d/HCNCʩQui 53 Q,$5֓qѯ]RA f q (]k rDŒRoYd'3SQU~<;҉N( \E+L Ő <;&Up/%:ثP r-&Il QqQ3M*a/zrC >&ܿjPy)|íH[;o ,w/XrzNGfut| wNϋ-rGgf|'XTi!QYI (װQlHӞϊLG! v,oq/&@Zm:C`W ߏ(7~Ȯ`tGxpAUf KΗ }TBiHtwàWG\p.x>mX[蕀14i%TTqՁ[}*R fGe9|o2E|Ig<$9\cXzTscob}0M\'{s:N{T|ڟa!ʣ6CߒO.QYC^ybPM Sص"j %>^Ex5vq7М?\xd w%xsG Q_"J5WNGs KV/F-ni_0a3T3Xj5v/! )w\ԫ|eq23( Dϖ%IlD}T&B0Ew~$!fgշ6.9( Cq!zKr^`>OKn$TLֈU\:ZВVDQL[4%6ŚX/}1蓎@+$ZXƥ12M+鮓WHBtQ"OHMNv8ޟįQjӏY=o g e)ZeM0mWܐi|%ln-P@S'~*:ߣ;G]XX F*)MWt1ɠr ) 捇%6֊dkk4sR{C9F) +@~mWpMvϼyVNKRXEg;ָ[phk!S˕7Zh+k,)d՗sUTI *XqTmڍ*jdWJ(,^\ч06spQ .TR )+zB &7֑Tc45AY-M$ܟ*$bS_&T"D փP6cuڌxP47eHJ 0ZR=cJ8VLlj-4;RLFV {g=;e"J/*2+} #= 5NuYf(bwCE G(2jE<臔 f*a8>!{֩~~lHK0 e`.AwacBȩKc]}N}9SJSэSHԓI`,L~=曢n,;K kl :.|1W NJ 2Z;P<)Z A5_L]cVb?j'}l%2˴1JW#Aj['Vt)w晵.ɞ"tjyпaGC.LRC[L L,Hћή֫!_U_`CȧI$b[Y iԑs]#-,#9|ۓOTo@oDM|`QZZrW2_8a"/p2*K`Q]D]Ƒ^DfGA1>o͊S~G.l$^F+1kr+ »-G/4))8p_Je^ⴣ ͳE!gl;XYq}Am\<7/Q8%A =Q.Yf>;ޟYk>?TWM *}-kQA& Xk ѢP a䝦b4 Z&Sbi~bH+ӣ;xHfcl|.?b%M`2oRO2Al%-Ɗ(V0Wg >X \N#ejz$pͮ%9ıҼPwT +͋r!B`y.v-W=`ϰMdVa C5Wh|wuc̎<\7 ]p08(a"Z0}\Z/I9ڄM1Pt 3 >iqy@c l؃p<SM憟]mIDNn@E:8X68=snEO%[Ƚ]`El췜ș%O?ҝI;lS|~06PEX# \HvK*?8m4m_:P">BB{i^x N:}4稒\ll\`d75D%́I8N5Upq}2`۞L >oON^|Lă3HK !][R+-kH@fq7e072waxW<6B)hIzB(hV,( F޾L˔G6#TX)~y& j"OɒH(+/)8)^?pjO (qy*bNΝgiS%#s@1wgQNIjIV@;7}`Wi0T7Uz:./@j!H+@(A*$NH-[xj8T7ަw#,Ϸ@ӿs6'OaEhH01w(Ql'J߶١Twd0>{ROPoS'onK@;,ݜOjן=mR|7{bPeXhp=~B!Zh֣s=ZɡO^)HOsXmȩ<=6 2³X6[doxN8i/bHhFEt:$4` bߐT~ѭsHކ5Vo_d9}ݲoA&uÕ"K!L i˰,nZDDE4*}9'<ˆ.t҄3 =7;ߔk[ʘSAffkFL񤺇qgc éN:U0١k2Bs)(d[z*z|9G|E=4Fsr2nr"yIJ.1 _O'>SF.h>ýE54L=5R$H1G^mI'/4+Mw4kv1}*`F1O4s,[!>c=_i.ky^M&IF}eiL3M#S}Hl]`6U9ʒ-~lQf됵 ٯ + x+;YotrMFIn(|$)Y]?QVA HME)O5T?TaҘEs 3J /(|nuPIZqw%MI+_~ SaSTns1S_zNeŔ-01$k/cnmN;=#b^'uFkQ!ʔJ?# w~̙UQ ]ꆌX#ʻEtUt̶2 ƟX^ɂEN w)_l8;r(%Q@\mrY ;Ptk,eX[[L (X-6~MF4ű0o?S+*VT>rޮ/_̀KfhEcGvQw</qRxxa9YTܰc=N}9wbSyaY6Fmmpf/&W[b91SbuWHw*~+T2|y(1GCQdFޠƈᄦH~b'dM"܁lj&qu@ބ+^BPݺA}"gԔ' `GFug xBAhƆN9ۑ=9X\.}›iy'%R`ֿQ>)LjMfrwRtch+ù媖aD-_Jm x\nFvlh*{SK6p: .zmA384~bc' txu?apهmRuls9 ,p\ˆgN~NjA\jnv.xkb FC%3t݉1 L/$`@q+GŗKR>g=fJD_o_?qXIY0'_mÜϐ GӻQ vn5αSO?_lΊ>|QN˵wI ʻFFS%`y<R3/Fu}ӽ7}cPSb<޷PPzWPбyS!xɦы~gsD%uElO4kt."T瑘qY膥8lۦzHU_s 3;tI }CAᾟsh\ZS}]BG0_2C=醒k ֧h!gw@pDEwL[ h>οM_rlwNoFfڑn܁w,}kн6] "KXf}Mm:'޳kVFGon4s@W)qe K 5%u< x0x*"k(V yR@vE~f:9fǻ:ĝGu ƪ>گh&"?1 J Bȴ]<YF}R^[^Hw[ 3c=+$VdJRM"̑jU44]_nbODcК^BF1qջ٣Ds ÙFa㕿Bu.vɽ 5e|EV$I7~)AQiǺVaY>y]kd*b*A8靲!)\l1pGj0Zt8DhG¡+} 3ŅpbAqv؅L&P#ϰUd27EL#uF}s0cS; bc.ˋ ZgzAY7M_PosېTpڰS6QSY'EK.C}5'/!7N[ty?.siPBv1T^֋&]j%>:,3oW+Xa=j,q֜}(۴4V}]]Xx%`aƙam`A<^ʞ)GztWxf3{CizE6?N\>ܣk(j%iD7.vffRQ*渊^ )jr/x|`&XHM,0qbmP0PJ2ٔC._/vI[1o- UJW\7Q  oi AhuII%֡OTWW]QJzJԇ rsBKAi~&7SoI7ճzv$=xNoЪ [Æm vx%@q|kF哯Էr E})Ny'WLZZRvsp-!?kK ",ӿA*~(g!pW zUs SQ"@ƴoa +8(lF<,P:6jցhyI_ G1&>'LXw}toVKnK1jvrvK=Mn2"/Z{H+1GSY޺ s;g/mgVUwb)db4GU?gs/ D4GۗEnTŶ_`y}gyRFʶˆ'-;'ũL5Oc0sy\fqO: ſvzn` C ؓ>E{NFaBO4˭TwR>6Ma2VFoE-4RQFF"Ʒi`Wiszz" 4ZqbPkU6 ~eAỲ4W}r+D`ZF/f5V++@L% ԈNJ)R5Mj=]cϦgW74RԳ +>O_TXOaa8O乲Ԁz spfƸ8E=?KIՂ!N$t( =+"6{sЭCBGߟ<3E _Eik80\rw2Np4QZRV^;O%$A""N]H?/rL# ɝ#ͻ.cL3gM0Mg1}Μ t EF!;HкFhvJM>iqoyMovQà.U5.3kh̑"%:Ap6rTF9xg8,Zf24?t曝5v,ʉsߺ.^"yEDcBx01"Dy=wT%OK pΚlHcn>)dJ6% >Q RVf2J\[ɞUBW˅(M0HeX)/h-A?"4: K39@>@OwkچR"]F5fɜTL?uv N 7l{( -c1X?FmixbQlq$M+Cl.e KѨTEA3n > _Jb^ 6ނX<FLҐ+j.&}"VdgeAA# z]*VSo]x '$.% Kso"lNo_٣Z 14N ~gNeiٍ,VہGyrEŭ.cjI-86Qwި2 ffh@/C֧tV=ߐ -YCߙ6Ma=Fz, D_=CFO 7%P D^Tb. =L9Oc,:H=Tvnv|T`!qz8lvcQĢ`n%]zQvo$4Co3َA6[~r\g>O亵4-Ҿ:}}q3mnۨ %d8U22ҷ˓LB8YE砛(|XC*٣=t ]m;ky_Q_$qWSK~k_ 8QL\#V~Iz1f%]N+{G\3իc..8цd}T|zX5,ۀ%m8z4%UK5_ͧ@_›, )zJ'mg./hI&MM8.ЙT']bY%v9AxR2u2>bY.Rh,A}uÚ 'γI?uF 3'd~D ŧW+>xx ;'B7z6O]mCr<;Ba%wX>Xc%& J3/}QXf 1_e^:^mH1&N}c/8w-dplbH-wQ;?ȴxЦ1i -bwVGVju !V 4p̎mqh,Ԕ^M2T'B;?o`V瑹8JewZ^p>lCe5P+G\!Q/] uOth+jI,Aۃ 8!ƅ/5u+vɻ P}ePߟ{N/3"J-kxl"+gU;*KPOg^DwF_.aOHaǿ뙊Q'15ɔ@06?b@ᨍQjfV($6#5m SٟI5`;E0|~aK:׏Ñ'GvN5j)-CNJ OoJ23icg3YL8{ބ] bӼ2T&`b(BA1ͤ:]~,bWYɳ:w'a`^9(BD^A?f&f`Bk1F_ DyPp **q_Ow.*MbT[.j&XJW`e~w=Yn ۼK_PCQM]c +'Z`s\`8<y {}yi}ruSTmmkbDTDS+ /?VۺC{8 _Χ7ةW\b1\2*6.v2֏RWLJjB)oiEW?f r({{G%"Oxϰm^KϬ%9vǦCtAV߲$NgbW?p}ZDlPۙU2Lw՟M빑&¥Sq=4a>` wjI;ۘrM^ ˽f~z6UVQQEκP{]xhN5!VݜYgX4D`L-dxe>t0oSޱeER_ɚQ`A5#dӏq^Ĕ+yR`=f^u:[_ݐX`L$֜JE)z$HD$A_TK;LN61f$k ыM MYw'WFZhՆ:`*; +5{Q4td[ùMVGT> @WtAmibl̊ğARNR=N{ϴgBN04]l6Oj%Ҁr{#? ӱ&e c{ZS'񅱆teʼnm]G|-ҽ 84SL8ZGu6Y.܀Vw@!5I \f~7/L-XzŘt d=eNjtS {)œV5ZRG% o0>%`G8hBlv3h9Wb7RTԒ÷ i1|#Z<#mbF=s\'F I$X? +]28GKux ڮd VH,@, #ݡ!x-bgHC@_)o=No\A<l!o5`+n|t=Ώ*?‘Ti~B':R{džC߁T夢N={P"L@qs>J хcFJbQn" j̝{SI@Zn"`/5KHatIFɀԢWţ(rkf>F4GpF_QqVGcv]\D24J_ܪd7H6zw~HsC4&m{g5 .6Xvc} bgR=I ]h`*L0ixp,?JvWUMyf'Y-Wf! Bj5F#/N=c*JϤwSy<{LLx"Nw/^ -Z,׷ YV~%8|}ޚj]Ws]0Гxdu?g[-V%3aYצHDc޼a(mii3xEk)3OOhdf"V&v[Yh|twJɽ]YdOqj;.ySliFv_gf ь@ *EZu> |ENfJ0D ICw7vqҜh[4 5@1Bv1f"%RW0#5ONƨqV$L vU9 pǑCg1\(, ~P Ԅ"I|%Hb7*6`0\SB;70GA[cӋMZe K^jn'qNU!m2Wf{Լ#YՌ\{]ul6jQ7YF,#D+UAXkv=9ajJ?i9d@oDj4Ȋ N ɵ7 U>se=S3&iwSR1/g+M:ѷ*|MU69&ϣxRt+p$_1_Z)b?_rOn:Q`U HaY|Y` @ڔ[f嚳oH'о=YaUɊpBTrދ}͗pLD˨aB,-v'ns_ErʑŎd MN;L~4̳3ҝb+u+pe7A(ooM2Au#';Kr VQ wTմ`+&{p9jNG8 eIfn{5-=`|AJ]ttRo ^CAYrFkƣH6u2ΐ^M:LeN:oTXHNaO},+5v$vZ}SB2 דڬh@dr'St80 =[{"=ћߤUBqj?JS gzB\7OG\C Vج7ِdӅ- :OS}_h/Jsm_lS܌A.󔑑\,%@l[ 0=3.g6~it ?15@hpI{͑cu*!u͵܁EĀ L;H),[`%@X`-] UA6;^ CFSi `eO6Ȃ gգd}13B/ҞgK7\i˺ m0R UA dH+{&.ar2YXN[7uhG y79DpFn k#p\-+iZL|&|@_M WE' W{r$<68!"}g,AV~ͱ.4`vۑfq62hu8Hvg10 N<[}P#7γ]7C̰']%U>P/Lڳ 1U)IT~4yD(t84e;Q)K~+O-,ry Hrr];-t14,]{P4:,Ļ܍tz,mbρpn-7C,I.uc-tVNsY.x vf[mp]-wJ'3;q #WnIg~p瓀 +IMUMrrQy5be ϱQVhlӧxwYaI=n"Re s_]²m$*hpFp3/8Hۅ#Si<9#Q~~!ʀ@@hUޫEP;k(`o̲l4 LtìKBhO uXۿWtA-B]ab"=؞wFuG@*)ji'}#Jb){L:F*qi@UCسrdG8mh|mehNm,mO^{kkG&rQ6'r|6ʮ8ؗFu XLŔ0A4\trGI)7{h!\f%zJ.9Y1^c?dQ i%{)}ٿ9P躖e2o }kQa>{"nyF7lHxg;BABQjs_BZ@ށrk`O[C里 ⎧NO!DbxG)"0 Vw lXfCԡ\ѯap'_ԡk7+2i/@ۼd#X|DަMIF~{[$ГNñEӖV_jF9$tO(:w)((:b${Y, [Zݖ4)`ǻ;gJ bZn#}*~+H'; rnX9[6H>vF__ƌ)ۗ@:'n=xϔo+SGUXz~lr^rO{YDvӕ`*o&b3Ű<ضNߏpսKR͉n@ᅼ&CjA`X뙝0=ҌYعʟc#W0e2Y;V=7gc.f:%ྵ$ΐc$pVQG7]Q.B6k+җAN ÷=;F?*FDMT-B{i62ĵcͻAR 9KגP0=JE1F_<4AVy5Kj259]y5l]jK~vWpg|Q)EUL{El%r@A`%:֬Z}`ykI̷-e^/ 6tAW9V#VEaTP2,WIk]'li/ D]|8$U6m,ʍkTy %1}Vޱ!4H)4r)8MjQZ!mjJf[a] Qx=A}~BQʻ {z,lź n\FB?}Cb kْK:Z*u K( GuԼ2q #O4:F}Hd$ ?C|TmTz,# F/(rU8&:."e19@k'K\Ǚl+_X8Q[H5wkol ;djCB=F[%Ʉ<0SB3X3'6]MvLJ| v)4zs.lB*s=Kɗ2͖@ -UyE£rcdX2dEb2٦o9mWٖ ATpيuYwT$NʆNj`$o#WSNZOmrt~]=5۵`@)khb8s9ԫy4'9V#5?hM8N7 =RDz*YdH X2oȏ48y^ktsKtq375`#*mK S![ .:P\;,_~t՜w{4-_bhug@Tg8.X]flB8PjQI,q R)45: +>+چ&u$QxRJPE}At]$ƈ{<jZpH? oqrJuH>>ZS]~eQwMeCѧ _#lf`W?X^Ne)q1(JrpUrS+kshT 9%`Gˌ+GW+*_a֎%]UbN`X3gsgS;WV.;CReL&~tMИ ?=i_ I\laz&¡a-ߔ`fi8DFԼlgk[/i,9ŝAR$n}a4SC#>òW;C/e"ezguA%]4WR=>ҔݱA1L>TarsrE:h9eNH4cv@.WQg58 JHrl$nBȅN js#r>`qpjCk-Žs!W|ܘSQkʚ {D'wؿczݬEgxސ-hm-A uLvO 1%p,SrjW ӿFD%Aڌ'ǹ]f跒!N6\A7rrϺ[ZLH7 2.)kmJ\!E_)”Z: nз$J35i-Jmɐs:R y¦jKk#mgC1EFy69AKYfx`3y0WdjX & q*I6!TX_ʱJ@HuA >c  o{%{~Y/ި6G>1^JY=de/@ d^Ϗt{}K j E$tGsj.X[EY2`=rf uom׈Y;$n^bQY͆vK[9-b-Oqgm[g!htߏ4:0VXW^_*+5<v$ Y$ݳ71=S_MQcrDS.bcR;>a%Ym*Ӻh9e֏DSg3n_Uʧdsbwv , |9ZLq~*1&>d$C{:cm~hJ$j N?Rn҅Py :Cɩ'Au4\= ~z DF?!..c=ߘй7=+j ON.Vg"Nd߰$'L䢤BanasMl(/AB:wqg,A1I# ot֮\f3HQ/ze>D0TM`JfLItzR^V R궸fbΏU ™~}N@ŴO9|6nQzmBAޓupzeu?.?wl&}w~qP8eeQct g?"=uK$S|'Db2C2 ,ӴC$>aZYWxXEWLXW ^T3\JlFdz%9~eTG}i~BF!ޕ6e/l^{(p[{[l a Ȩ䄒I#rGw@kɖ*2osBЄ}|Sf\NMOPr26ՠh7-u͟5 $vྣtވf+]-wáiT%B`^(?w%K`ӊ`;U G ~FJZ%؄52lUjII;ʯ#YzG^1`~4Ɯ/̻\Q|uj ŎN"ܐk+jbB!審fpiv_T=S` kr%HFS^ ĉL Rȿѧ6:!@RzۥO%zWFNSj(#5Jݑ-?b 8ËAh)meUxvp15vr`lG:0ުc㵛lPZiT`"٭&AߎX ^g<'Nj` /HY𶎟jS51;1(ɮU\H IE4tB(!RN,$cE' ʛ317㒜ƨNJ?ār W PP_X Vph.#!0knp=*)oW&D͙1`>6HZ3u7YJ4X5Ds[2eg`XԧvwV3ˊ_bFOI.A|2V'ob̙uj[ߓL3Dkb $iSyG8FHlcx*̕h / ޑwFgݿcsC6$_ aJ0-z 7rq?@)I1`%絾ebJ,O]/tfւhȴR$&`) tJc\S:u/l7Ve쉋s2{?Y)I|.ôJkizYQ &ExBk?fkT.\vI_CT$tr 4ds^WBs9 Uo+)*5"6s3[W=+bg>{,(-Rf{0Q#(dRyN}^K^N!j|'dIsV+:8a7b?:FY8ĖSlMԑޟtw)ݔKGsܔZ4+ ^*hљfUrtOкNK'WqO>E^ x!- ]oQ"Hv4I§jӚʦX.H)|z#νg˼kOnjQDe4eOLQcZnKNۙ'Yc)L (#!`!(תȶPO?bGBN?%fQ$!et"8բ~|ZH lwg3soY-M]BATL] HH5Z] /{ $ߩ1FM?Fn\n Y'Ӂ9;Pzhr{۶%g :Az@Mfif ]C o4pHidZ-i;"<8'/ Ӏ8J+.O* +BZLtZbrFS'ddƩ[M|R@}E'Yn<$]i[,zRJ`mçcAplTpns5 d{=SE0nnaޝAGYeGvE.NOq8 BsUPjf5͗aؠbd%l,G)F5!U`g%FXi܉<Gm_:+Y{& |n/%ɕl(;C\""1Q0a-z_YWepMV-yv鼡ѶK!j Op3I4dN^1{ Joiu Ë]3ȣS9krcBNوNp]ICz WQWϞ:Iѫ37kbn"9n; _l#*8Q˭ ͆YJ>q%9< 1wN4͏肒 rKǸW YY Bbۄ|HhMqOq|UCIOizMzmiXb>vÁ'6Py}lVreB!vI _N9+`u^7.u8T?_^|es1zF;=5ܪ02Kp,ijrh4FԷA"!ا0,|@T44&D4RtdV`\+,XUVX~;zrջFũ"Вzj 7 DР~{)WT4Vd4+5v*sc!0,#*(3TY&dВ\,d~C<8ˇBm6&QB"?cޒ3팫*F^tq/^6AxLY0y P<0oP`ejB;)ſhr_ ~F5lg W¡傧{?ڴ אƉTٯL*kl~Dm̕r84jXa9,a^50z"{I\ eTQ=&X!uIsU8E {?@%eء(#)mq E][BQC `#Ey) r/+|&.p4 |;E[^+MCp];ܻ֢!O"o7L"TZEIMӸ$in|~kԓ:!Cvw(WZpMʖ+a PS%w2k̯)oNOT NlOQB)UI? oXeʑr tUb+uy7hF&BLOB)ܿnD>xt7!z%)LaҊKb'HExķQ_=aøO{~38~k܏Y'Ϛ+`pEظMzVQv=O1Fi HjwB: %AC !3 8<˘\ 8N0fk9`˭ 3# Owl,fH" =^%3tI=5(o-{8(NYH%{ﴸoU {yˈT0)p6ODk&>YN Qjה'Bmd?!^ 8اu}]g Wߦ zI/ U-msOĔ#RNaZ4P ^+-x.@^MŗnqMiKd]T'BI k@)d-Ijgm6'p;V%*zr%t!.bqζn<-@j,$i:=b7IAC {oQ{C֎uVa9 8) V\ E|.Q#@M-*U$?Ѳf{0hرچȩϚM+ׁ *''2zͭ+3pHzȵk:;2\.r[+DqSx@U[^&ҴV=wwLz(VvSv\ ?2r/TK]&V<'ZGk.Dޚl9M@1LvμcK0MR׈-ZG y0ez/FUCnH%*t s2Ulwf~sD渢 fraYk5<;Ag@U4ڇU=t1U2&"Mآ5 =Jy-HLx$oCǍ!Լ*υhL8wxY*6^{oQn-/!#v@T2̤@60=hdȈtF,Рʈ:Ӝ{'>?6#w!ᳲkdLjO%̫~Q !PdD=ҟ.? =P D-rز(84?~d)1?®\ v7G,,ot\9ڠ&XONgw^?eY'\qyU3-*p3SIM& |Xk%26b2Z]pxʴP 4Z Aʀ5ʀc_u*4ꦫ'.8)yʙʙ*,Y,^E3,BќI2.3Ua1Tw: )RLq> rb8_0Jǎȑ|JV;"\ .8'љz5! qiN+6SCcϕS/a:|#_WRtHoPD,!q 3(@ |lL%EP+7 p{M6Pm<g'ri}Zy'XG)H4Ju`ۧipعs%a0C{~?II?3l'M;gNj+&p<&ӫXx=qzea„6Cх_%_L6DssηtV8s)MXd %O?eT2%) J."5JxՊtQq 9iYKrW kh ?;F@ 8Yɾ[ECs ;+?|fa"_kXѥwGNJɽVدgLCP4K8 ݰmh7X'Z'NH nb0Z5l(q CSlE$"4@X#=Fgn?dWL UaN|cz1oޛP5c>}!l3 \,MA#1:x u-5&J:~N ^r=4U.ܦuLxv}S@߀j9h#ƷF)3x{Glzפe -'^iI?ɰ$3[u鱴E2&>z^P@"rl:&ݿm@V b"l} I/UUEV8H67-?2?TīMB?Vy8LM,'l!}3H.yk[(L`3 P]yd!rm85LJҤyC&C!&OKz1] W9CD,dk^+k؍ՎPTK49$$!k;JH'O< ۃe]9%I9.fޗQ؝ԤK-x3={iّWO/2CY̜ۨ=YH(P\U`n:رcL=7h>,itxFHWH1VWK|p; hhK} &@MsMo&0UYN8uCt`G~*鷒"G6qh$)en/7=ۤg(GA%i/1*VF\W[nZ;hƔl[GV>zJ =zdE_C2*驆+v-褮gCsN hevZe".U zq"gtPGnC=Vϋ&lb>_L8=RӴ )I+2 SѨ8'&z&%9yɾn#[۸2zbFU_jw6\Rl K [QUrt7b` ~wie@b@N]Kup 3e>#O뚬؉GZ8?M5{Cc{C 2>tt#0#tz؝-zok+)*Ӆa4$9LekIO֝=P\5YF>Kŋ,TX Gd_,Nfr5pQ=)ǝ\:,y .囝m-0xźy Z-A dL?$SO^yk쭁FzClDp7-l *3&1B>/=dX;Rx." 5& h ޗH'$?/T>wA8w]f&-Vx ao]N&~sixd|fކ2ʶKC~U[JtmG+*3\$ z#>Γu SC߿| K0+}&賫B^ح 6G@wŽk1-?FO8GW2[I3Y@"эe!i%CVTU湃}+۸x?Љ8N xij,%(be$g#,Ԩ]! IXJGTbKiQs*_d=yʲ ST^_q UK)\=&UvmwN1-TI8+/QrmbwmD/FLV\#b@-1$՟C>sH-QePQhHkliiDE QxRi`8}%#KZzW܋V0p6'ا͊uf[rI￉`QrƖ{FB CI`d0:܆ޓ~G#6G!ۃ,BxVvUڊXyZ,.yhc+Wc冪)ƤXn9a3mVUBZMpQvX̦Pւd,jKz'3&-X$ZiƵTڔ>Rz276 @L.KBBBcޑ9c~%X%XS,,u$w/A\zD(pH?No_[<i][6# J͢\Rڝsri0Y±RFBzKpdG"X6r;82!o]_(y؍+9YjTtؼcE7r\©by%pPV M`CUl'O_.dq|CUKxvp h\r| x!⻨SqAlLO1eX!8>2rШB6@N)6E yMC>DjTRvU`1*A2k# U,{ֆk7NWqee]Hy3j J ;<  svwT={OƑN:hUL VoژNi%A:*^ g]ٓ! Q%wBkd_=#CYg#~ח s]ZW?åκ4F MJT3qYie8 =nu{Ŝ)z ISPV#np^4`ku r#7B'&qgܫqM8"@ԼhݐnW,'yga.E΄w:QOvƺYyӌ)eIc @5:preفv}7,6P&h+Zi GFfmfj18b5(1"1 \jE*` ~$u^D5V3z;5 K}|XiidQaJgvć/RKL ױ |VۤAp+:." >1 1KXs'p}WX"4 Wm%MY lD`z7> hVjG# lT=F9_u+r 3 Q*0af}i 8 vޔM.{h\>|pH̫Q{ ]W2?Ki˧.^\_ C R8iv,&I (\yfϑѳl>nm-j<9=Jv+&ХHqq72H3 ú4e/ڢڢlRG?Q2[ڃyKKh's$籠x&wp^P.8.?IN`)c[rMrfhG|&wLC ꗗGH$gMړvd8CPzk쐔.SpztLPƞz;Mgv?8HLA9!r}0!ReZ]3bzDoH{߈QRw҄lZ}H~2$'L(iuS&Jpb%H]dlS&X.)1yγֹ:]4'IH`/3rB}uIom'2Cimw%'zEvbtGBUv͂h?@ ن Z!\DJN-Ze+LX\.QpXT0(ewQqі$~.Y2\ĄXMM~$bIMMs6VwiFdN54Fi2\NIEu!EZ\ /|h'1xryDE?gaIa3ӈoWmG mfQ>V5Rˠ,}Kؼ_NFXN&!]併C~y:=-a%g9 YbpݧD,VKt КP$_Ll GT3YAKјײ24/6{>$0-rTT;>G^UAK-L9,t1q0=L䃝cդW]'[@/h&QD9mU t Mn$2cRP`NBc@{rҰH;1woNR!9}eRq3\gm0p2<+[MYE#Ϋwп)y i$Pipo{Ffp#w{mb0c`8ЄyfS 8փ*z X='0h,dȷ`>=mπ$4ˈ MZ"je[l~ bDm5q5M} z |'1Rp(TEПQF ]3d$N8D}3-~@\zO6&8l->oG;~0rvՐGZQ_ML S2Th9|;Ūjݕjh/uf%!70/;t#I_54fT[Ӡgq p^OM)&hL>.I5rLO;腙 m RcS̪cQK֫ĘOI\zo3-G(BA1am)ZyhgWS%\뭿?\) W禓 O%"X{: }@kl6F%e{uu@p9/`S"gUHx 5[梍96: H9m,v;ܢEg|c?w#E)>ꕺ}*hG ܙzYO%YO${üo堫ͬ͑gu̞"I*3#qol̝񇼧/&vBi'(1cz'4a]&tɽ[R:^h2%'<ب%p ">d!ДP#DϦłxҥp@/ǂ' >Fl&EH$@@KMHxp ǀ̀L0ɀMb&29][#I/Y'`Q0 K]V/_)NSwI~xmGls_)[u5O8ӃPr,ǵא{i#ۭ6Vf#$"10zGGiYG$Q۬!9d$Wsb.]S RԸ|ELG16R<,jF1GxkdtPJ(\/IMDVqa0 =PgzhZ/lLP%OMbv=ܷmU7XUHsoYiz_E^m$n:_&Miz~cղ 4@"Pn]8dg_JE4k ]~LGTVD\om6OQd"݃3\! ?89*uE,5H6T`3n;?-~ ¯5.4{[6w)KbfLzbNVKPʫe{UnY ppL۴>=I6vN!qU`XEZD""(ۅ-oP[.w<˓ N(Ms?-fHջN ֊$Z/rKJihᡸOKǚcaHfB:/;c>9P KyƨAvq8׵Li"=y!MדP^BxANѷо!㶹tdgjǁ8p ǰ hq䋉Uԧ-dq|f kMy0Z% tf'="",D1#^seKhdc+NlXt$rK,r 0gV\義!3h`e%_%5xDz\xs(~=Yاzoh۸!8SW`x/-Usr?R  *>^ =\Q O 3w~54z,@T 4H&Ek6 \t^=uV;yF"l:Ƹl̦XSy rgX;_),jhJY)7HzQLH n9Jpڷy»C?E/jLDCF(㉮AE+A\T>C yJ$GܦKCQ2)}Sh$ls JVד+dS>Fx=6"(=o'JQC)F43@wVd`d:-JP0f +'M(UWMK4!-țib slm$0%q'0Y_L|,A'UY@w?sqEPMҥ׭O3( ,՜Ϙ4ǰ14(SnOzb d{)+ ?-ikD_ul #Ö.]-;$D{ -QKLnjJ o}ZgWmHi "f)AXC:33c J7LF&[A٠B=t\]6G>,P)OP=ܳ{2 X)FH_%-i'~G){I:8ѢW1 @x LN 7WW3ʅ s[sI-=dY /y"?lH2,$2c~]&yqr_jGv `. AJY Y PRSx/Pz˃<3*ob5xd{]Hy;^uLBsDO;zB5]N_Gr8=C1AT `!͋Dºo037*ʸ/`zDNQu)8ɭSl/Io ;LrB-"mn"6=S>-˃vzQyދ`?I_Fd:N8rK6@CG4}oEc;L W޹v/Zw4Vl<(jB=( yECsͅ_کw)-0I`7NZ󼗋T }&,(jlVS2>ynr $~M9 PjtmU ;KZ:G"HD>\Qi"+rb,6>0(rLr=MoFz*kb$tAbC5Ȼ"~JLgWBMi*P)gFWY.&m]Cû"JkN44EZ꽋U C콯.#bY}ѵgO/A/8L.H-Ϣ1 C.-*%؇0i=7$Sk h{r!_hHIUCP_->݃$eZ_';&MX qtHhy Jֈf ߨyeTp Ue(h/<3P;Is %K" x!݄Ŭ ?V{Ѱ oyI`_x<{rTz.!}O0I=P$Yabq'Kqn08Gh>bjצL=@?; Nbk_Gɷp$^frL2rbz;O\VXQG&yv_jA %n H`ACd(\q_Q}e+: Е _kM('=ߴG΃oc*'xr7A_hxfb[R.~-K3uǞ|ZK(2Lߨ|;Fi=ͳ~WuHt4IK? i|r?qX-sa 9D;}Ŋ~Y92jA=6b%RCҌM#5\;Q ,n%A_ ٲn .â0%rU-Pjoa;=!pA (qi3cB]-ؤ))1zY[o 4ôWSN^z8J'Y@}^+2 Lo>YwM'n{M?_K],}Er[gMTSIX{4=ur,f#rb#H%&C_fO/;ЛF%/r8f]\#DAyM͐2ux̓G26?AFPxf?* M+Hl袼$ÛAC1O{-&r~Ej*D_!ފ]Ѣ$޼lJHY_s;F{5Ĉ~8z5·׉u"|$,?"9&\Qif3[ 逫engbtpW:nOWfT5&`}TD-nZʝ}=evbO1 o<.h[UtS|T+3˱"2#rZhR[I ZJ/nAM }0&ÒWѕ.%{Duߚ)o;rm+! U/P.|A;yF] |%*WV1K F8d&m|=?>ZZx7:B`H#a'%laؤk>a-cpkpwC 7^ A*)ϛPn4a}aB =,GgsKb/(eTA,f\!T2M17Lx7NRed?&S}ś.TlDooKBi&[Ll۷n7.+jC~gSb%;M F:ui$IXDTY!TO8uYEyi;LIА 97i J!TK=cqC7#7;?VoD4 K ?$*H\=4ڊOsXni\߀4Do:m>^E .*$wn׺9"ȱmh1oxmh"&RB9 F2f]{ ?0mPW5\MÝ%N)߁8P1UpKek ^ۉ`$Km;ς!7 I<3bz { ,3.6C W .;RҊgs L,>obc4S!EL%o Ҁ=9_ I9#K^Ί@h5/V7}G_ãq2dI2(d70dh)iDUVmvÛANa jъ X8kBDWś; ~,o\..idSr0%S+4']Hta%?#};ts^7hjɛ1PQʄyGF_&1*Hd^DavG9HR~OEqU=A2?$R[4G¾|ͬx'D 27ojL`XV"a7 B4+.R53ԿpVTMꂯm.ӝ~s1wZ} !\+лq"#g@ZhAM2?^‘GsZC*ds }Yeb|cK*O!E\aS`(Q0:c2zh/H 2 bfxohBw+UkoD W^VYٴBG@,q,2RN=\ ~1f@@;Y$AѪjem7蓸!LV0*on@IeBGAe^uٰGpBKMIqWH{밠я1**) 9*/PQ@3f@27sjBbb ;ڒPy+i>=$$HR /:Rҽ_eEvi2pN}[mZmYTcP3fA"Jd̩-r|Qt{}.B8\YY?(b޾WWxǖ27MF iX}ڈZ+ avRk=\Q?gLi};-Z[LMsMlRCdK}<P uDcXEœYGO8Q3)Y񬜛Ҟ89pW],(z⽙*+nBu1W%n'sVBc3¶<,; dixNzд-8oQ @eNpD.7`ҵ@X`M ubWSWʵ.Dh́QvI_([j33E(& u]Ww9'4e1 nF,&=Q~wy 7?J'|mWɵvh|no&;B=EQ}YmK%&8G~n Gw7d $kVɟ4Vn}M̨;f}Fn%3BE,}B|Brd3{ ɺɻfi SjB0G^JD#sZDU_c:,OIcCiFS cm h͎"g~cP2cӞ5H#RgO(&A[?sxh]7%Xᆰ35Ԩ Tv%Jw{jdzSPЊ߂rLe9nj^R\+$|NpZZHYҍ%'iI 7X0Lx9Yф*eYQ+O,g:pM_,gߧt:g/-$JgF/f-\Q%~*@>2C%{N9'UI(uŗx7V$8:eT~ț R[x|+OpĔ!zVwKz xdfmЦiihkP~ר@TPn^fe 'zn˙'|rgn% A<0͂k,JDG(<KRXLic<ѷˀ[.x ̾K@jmhXsF>Eۗi6hj\@u!B %EsHlkSw }\ZKnn :qe/E*% \سe$ЪUYǙ,cM6J:U}$*vmgd &)#ѽ"q֚j,/k !WLBZmHq^UxFda+l!;̬<-ܙ )h8c -Yl) ;YK΂ZT(5.XG^Sv ?&z,1;&蜾d}.`cw&}Я#B@d1,"ځXm22yEC6NcJE޴r~v_J3(K +k8=A{en ]+Y5 m!5ҀzN"pIܖ88/gL0'|.!V/ch;Kw" ,Y1{ rϻVԹmXElPeް畞Ψ7b#?uڝ% ث:v+c*/?7ښBWI8mUiJ¬۰x$LO.CUq~/oP2ljWZt1f :Z+v SFBƴzPݘ/{qYMx}%ֱG.c/&paI5\f%4Qgdcc$5 S-j?KBizOڢtvR#7 7i=D.w@Rߌn+Ұ2{/_JҕV%?'WnW]D 2l:1GA`:WА<7pVSq=oUc5cj5}j*]}z+%vIP++7}9}D{>Y3|tU;%ƿ1%Q֖AلQkMfw$ޜ5f_GJsx?8\))$z]u(o/.{" sTWg5)72uPA8tQna#5)SvMɟ[Da!i93qN #(7|#MP^Eil1|Kn4ʙkҿ'?Jy&0<6\iA~;)U2;GżgR>,%la`^Ji_"DɚTJ'@Q Rl{'3!-L:%?x ӎ<3:7yEuN̗E^?pŊU*geDU8A"t3ڒ[ )RcW7lp .Y,)ט;M 9Uāâ1t rf.h$ʉ"]ӝ{uBHH5@{gZ1ǯYVxC<+ |gC8R;uj+̿ K@<΃E'"UO.O貅݋,[P@'on+wvi.qр@TD =_-wQۇhbg}wC h"hD?c<3R-"JV1 N.Esn5G[ M~X>Nqg+hn W҄ `>_a t_q*7lAiH >- ::YhLuL&j2^Dn]HqO{``5=E:z[L?,݈_ATM%DzyVixΌ';7Y)< DzNPbZ}jvsYS vg 5oq#Min%fFhKq]0@ ]a}QF.~q!m H&Rq/e#dLՌ}--pYxf| Zw_=3s_ 5q5CA|GTԑf!z m1T=oa;ˊ[eU|nYVV[]]) zWy专0ČDҺyCxu 2KR[{SO56TyhSA]LEj% JbGGn6X-a@4f$8zizV[h\hbNߨr/(v_ZrMf2sjF{ElT7nˆjIRBNv"#V ν7}!@䆧#)%+?} )`5 k u!gi-`2.oKm`W_;DECʰJLi9i 3})>{cX22PX` 1y8A3NB2]{-^)|f "9l(9za@{UMx<M>q G?}°g!>& S =}4rDRg~EإbZby&Va~b <kN#6 ާ/D+H)G3#;VlGp^${VSBu)5AHǭTBmՉgc"@x<|qu*اܮ@ZCq 83ޱiu IGM,ku6֡ŌMk=Z[a󉗝=E5TPJ ];ԢŤ\jjR@{T>1Qio䯳ԟwYIƑܻg(5MnC$nbťgVSO=)vanx,Pm[hl֢@]5$7j!!,]g&v6v5Ǟ\[OjrF&[ 1H6įqJ8L(FDJFnc#D?*!D<[΍Gd;36ﹿ([Z& (K GB+"+Z_1p;yt^Lߓ.Zhvn=(ɍڣ_X| at,>qy$Ypa&i2ﱪʹ_N[aJhOxxߜ4hB58QWױ#pʤmN]R`8feIvz)lq(@UUkAͽp]Z2]M|RBvoTHnáy%C",cx娂FY' Q!33`ݯ@9OYeFВPA|p邗[XTe΂砯:(,*6~򨡄*WD* K6;5GǀOL嚝aY-])teQ['n1W$a8A J"gŷ! .co]u[}>,#K%26i#82"܅Dg)qUmfD!?q%Mܼ&{7PH0Mp>N+GI!V[i}GW:׳X41֍  {Oѵ ?oH]C*Āo ϶ΥL> +֎je}wWWo کϾL+.4q08*š,0]Ќ/Pgjuq“G|cp(^XOgUD`waBH$JAK9:{uǼE2~iSdxP|,.sK6^O WaÑVyXy ,s fWrKb)vCjg'broht{Sу ;C:}&fJr4!bA<]=AY0I\~_,\ ed`FUd>EӞW`J12Po%A&B_C͈)w A1}P.sW3(~o`Ǩy~2'r1 wU/ΖXU>Y)ײy_ ݡji%R2?uRTACD[)H54m ]K' J @ޭ1^Wg m!T&?yVIt!ZQWJX g!CpC-&FwL2׻q[hЂʲZڐx(} rF^3y;gMV j!F s@J c 2珼$<`=xP,__5v oTQdbZ^|v]vxm!R@8sgIB,B#/N?=s\z@x\=A#T+=.mQJ^` gĉ&xT/)hDV\OJ4deӺ,'jǵQDmjHtB_Xv ?roOں5<^`v B$ttb/wׇ9iꨤQg C(!G#GB `:a *p!<=d x.&V]e}ea2mVH2M7pK,lfEGKL_LoU#&EaM>nhc-](JUn}9$Cd01AM&B~Y*Y=6D 2Ώ'ZEHݥ#>a¦l+z`]Z|HU&h3<nnIgjP m,vo1ض"AxLs?#A^mC:[@ }h<&*iMdz6N'ܺ4"r@[;UvvzZ|½ Ωtu@ k?{3_ZRZӔ3X!/1 1@aHG455|1~zJQA 8|Bj{" #{ \W2 [=ŏ_ #pw(t ?T9k\}A>S99%rk4U'ϣ]|\jx;"[LJQ݁Oa:6bk#' 桇LDSoP\x@>nACa53 QsQ==tl)9Ŷyzϔa @! pUjl![-*!*kRD9G,1/巘5'6+r1GhI&0N,L9rM"cb eǙݬ*33!:0;%Fy+/oz *B~T۾-\o/<,T-IiKw(HU҄EpK+2jZ8~Fw6l߲|@&ћ\qhQimGy$'ܞu"Evm],/=I%5;dg-P=cf-ABܲQ@zᮡEŊ5_X !㴝g)KǛ~ |MX3(2MqNZڦESFSE` aС0z؞m|UzJ=N ģ1Fᡵڰ!)/+'.ɕBJR+LJrM%GG$AA*Wǃτal噡0AA>Q#o],G{w:"-$6\n#&m)“߫ӠZ^-g;nA#ϭӠgp~&uP'"pdzF--\E55Q3 5eS3QI;%s_vIceS)Mu7!d[d.lVZXǤ[tZEݬP!RR3 '˺_ț]ZԚ%JBUSsT!_WCehnyƈ}B9ٓ,N}7lce l=uoK&SuN/kHLqލ1 .Ne9cb}N[P-g^F]m8_'*MX` TK~`xh;QiD>5L/:h"5<:AVmce`g^jDi顟:ɀ;rJAcUfsũ eR%=ȫ$ Q@<4wBfXm !/xbTqVZtUDM63ޒǃWL;7 FDS3#$4lD\fi˨6 ݬ ])"pũb[њB+.>5&O'0WS=u'ؚ8%1 A1]BHDZZ l.!t8-ռ(C N*@\Rw+kw&BZ54է OEb;cZx Icc,ǃ>vu Ц "%*if3[GR+ GبB:[ժA!LW$Ӆ UY Up)Y `i0P؋ÿ"(vKBCAW7R^Qo؉gx_"s閸]n҉HCD}Z@7qjmC8w7+ s^ĒyR΂"ۏʾYV%;Dƕ-w'q.Jl KyVBszl-m+W^aN(JDB(wW^jE$EY@S=}'{]*CÉZx??Pܔ9%l\pbĤE0cq=|:H[!L0 !Nxf (t* M5f-5wq[.v6nRx4 Up!E`SkɅnhR#_&K||>\XJ\ I'y}'g$W+r*cc5 ]1#>o#?o2Ư,7-dK%1-wc{.-7Ǯ(mp 1%HFl/>`hea0Iv]}g3EeT &ybq(D``3"A@}(ݯ5t/s KP5 Ox.5ѧG 5v 6$_,^gW̜QmҾP!q609n~I6gmA/~T7Vt[9W}Əcg}\c: ݫ}hh؛8/z@5"A5Yњ Iԉphjr#WvXT2KQ/{gފfQ¡n449w+|=J &/- A&`}YD=k@v["В`e1jZ+_xLEXи(&?k~M(ULP[Dɽ;CF@?.I]w0,@'<şH>3*ݚul겚A44IWUffB502(gQ&R+؞QKܮwI A~RucC={ eaKlGRL`f9(? tpj,8Qό?g^X!j))w&6qhe?j̍ˁYSi͖K &s/ń\&!џ´/X )ݒR17V|"FwX9oER|G<?hґШVǡ𸣨VW]渟ࣤF7^<3O"Cv-{^',S)@Sydʦc/_HyeWbM<7ٖ[ԅ ڋq1Lxr+++v׎x{5& -'/t#|ZOai1aZqdIJ\,D+ 9jޮQ|K.'k>MsEh+bau|O\?iE-upgN"(]h衠Aتp*B se`yFUVcÖW)wԟ&1GsY-r@)xڂ󑖄jyuZ>Xůd sVzhJŠƥ8YSڕ\O}۠f4_2WLG*`&n;E|JL{ի-%qMPrϜ oFXD^rF/]/b70&O Au|>zFd c)nߥ[L0k 0XM%~ْTrR͂0[C]}}·Ng}$ʎyI.ӕ%j*z^D q%1C obYį[F Î޿F~~ch, TO: P*S995>FN {n%_Y!v؂ GDͤ#6[%$e$׏f%ڸȓ;G|j|; DQN-ݶ˨~ɏgN'2<с!ϖ4&cKp{ R=ʶsM=G  җnpxP6RɂR0 [_<)#hze He(k/ M{Iw^1ѠI($y-MH􍑽"4 բ='ӝ1*vIǣx-wA8K&4 nFz>R&'*[ E=#AowoKcq .+xt7cRlKa1@,fRu:fGz̆>_glϺ};E.F>| /Xge!Y:# |[ϸ)%$X497KDYYpbP p+FF3RQ ;َfҵ|)X513iMV))2o2;erJ4{e,[֣i?k>ާ)d gcuf;?*wLJ9To!l.0)hؠ4yN7Qøg:fzAC2@8X]unܓ~rm}O񽇲^.QL Rm`?'-USW0U9nL3U>h~.~m=3xqHGYV}9/!i؈P86L0WRF|dC^w3Ķ-~Bw+@ &8gQW?9ɮJ#Y{= I,1;|iOOH24CL+]AhlEv#?+p,|Q /\ Z@+M0j~ݯXlWzuteA#uVxyrY-WOu 5F׶yÂ)Dw_&F]ԟT&k@W{Nm'0H;ȆXĬ-Q[ΆX-%: l3}B^{e 4pt~à`ruE}t^ ZF8~gV Y)~(]^ON\ՈYYJRSPw6ŷ}N"Np |m՜ڀg'AKw07>lM*, =cnA̰R4!CCc#AW <Ν[uD6qjE1ФnCk|c[i;ܫ59翑}M\8r_'LyfFg[T֝yHPm;h[)?XO'w\bA Fgk MS:jufr5]12;zߝےzQj`L 5,M.YE-mZqF#,ᡊZKspQm>4csJr Z~hFc5 ?+CՖUS[WK'*΁eH7%ĥIn; #yNNsW:7V 5*E1%"'FLPu(zqz%`](c>1hr^`A:}?)wQ@O2LnP O"=3gSռ?7RǠ֠Dn* ux/N8L_m bRscgw]I bKܛjFٛph,~b xڿa:+g.+yUnz]Π{ E yϝR~0Xz w[K < jZQNrd,ԕB3ܣ'L|]Gqf]P \K@"yrQW[Ϳshvr-\$O *LX;O|+kÀPU[Vvj<[K`En#+D=Q<Ym?a&s aXŊ)d$-BUxI$6yʿ;ֹ,@Є12(M>CDyB? x#CnDIxSo/HGVپ%Te\ cҸsa^M!O:kqZi V/Xmˉ<mnu7 L{KAG/1d4[/s4)?y ؟S? 'A'"FES<#qJj/eN'V=Sțj ^ԤM`jϾ|L\b`@ ɜ S,l5:ɽ MT1[x-.&ܪ]5N@J\tx` ۛdԌW5@B`tVDcIj1`{l3zf՜+98dT7T-Ii$AG@Y5J%L D ufnV%B2+onya%:eX]^˅WOz'p9.^fY(umWe5 ӐFG}ns~51Å h4-E2i`N<fvd;zoLC+崆!1X+SQ8 #BmAZ<*0+eL==Y& o7ZwPjLA_l+~ے-E-/軯']cYHbl~yS|yՅ]"?}Z YeJDj@ H}{D&Jk%mLz!WmX풰MrMp|ʳ=F}0͆(G |AOoWx}IӹLـ|7ћغ;˚^wdZ:`]PMj]<+L*(gea7D4I6AtbFd$&WO^uJa? 7K:3y[m5(<:X>ܑ`h"nhWȥmvT1K蔤S"&.* Z3t t wŎ5?Ww& pV-|RjR0dxIvI%Eͺ-=-=a:넷%Fx pl1܏"⦛hl1}IW1ܕI; /j\J8iz"8RϊJ֝_8b?D*o>{}D7i0m?)OJoss_lt|0`+ kK:I뼎M pdÞ?4d.#߁];Nz*i7ԄS$ _9Ԋw\[) _? z[Gޑ4GVi5ќUNLv\_w <ͪ9-pAz%SOn}rlm{ ,xQ}D,bs6p4%ɏ"5l Ÿ:Ie aLoڱ9gɃlp~s~=6ڑaf0jXƳ\ADw:t%Ap v#c2?69RX6+JXl񮊰`i C Wv7`riC+m~o aڡwIV @T !r)yQQOxҊ޼ YJPZnG36KtrZ-bZɇR +FAta>ڑ܉ `ˑ{!&SVO!L<̻pnKR`wU%L!27NUz!CLɿ|keb65Q.ޱC$E * bRg搉R` ⻘WEϖ~H^yߎosBi8Π#ܢ%/wS!Р8H@9ɍ\I϶T-Sֱ^^t+o] v.u$Z-\DCx5h!Te&S}ԽFmQ)>wKn`=-$¡ppwɘjԅR|[,thi?x#$Bti,WC]Kn./Yste>i֗wy}@ =|AmW8QT*~^Q.^T4Spk8lWߋhQP V=i6\Eq}|u]Ѣc3r[<&l}B N%d:.W::i<څ'gd=}/3@yVA<nWPJBmq5Z| j@I|6oȑ$_ATGيAg]OI1:88#C9*T]U `YD'Pv6 *r{E$83m C (CY곷sAP%Xz'KP6#Qe(Bp|&B=FpP5loFk s~lz78`Hęo:g*KQ+s[#M؅z8Vt@xQ7Җ&[*^ay! K?tYv[&ewhW s 9=0)u5 t\l+u=n l_Jq b¦dsk^M2 ЯR(N3:P{CWqnNJꈞR I=p  ?Pҧ妊T埵8,2PR?ӓL[.G;3Zj4WQJASy݋,uv7e:Yy^`x1Y6t- yf¡9ܓFAc"]MZŃb}4)G4mM~{y('.:J0e}!F%p:I9wK'.1pZKZosR ~'ph@5,sJ}1\*3`W _C:,FD*A ??݉8vĵV+\ϳU(%)/! =<[ԤC$Iy7y}D#4gX]˪S G_W!ρwMtȰ )6jm }thgpI`@҉D}4jݫ֎vKԭBRsQa |7ug+HJjg&>ΦM隰NFu UcXgMuθF1&XEJ-jM8h{q/Jf0MZ*p[W.mҶy:n8x/L!?bK3`KsOzc>C2< Q ]k+_̄^ 7AT 8%Ik)gKtE Df0O y9c&?,>a"rO\Y~5+\V8 ^8dtdX=dSVb /d%e[ՄeKA't1fGvc)̭>R{?Q)g˝}6eG\#$b\9l!0hKⓦ4=JY3Ď$g+ĕOV zZDbt Gճpĺ B^hT"p1U`[^.u_NY$4- ; ]ojlBu<þMMY1 W`cl"EhgZI$E3b^fEkŏ5U!+[.ﭐfcBj_n{^] ̴8}NAY*!=KgqtX5v\mo;@/AO!V9VF`֦1d*{e/A֍El*8O5g_}EPYbDt?Qyc8Ɛ]f >OJ?ݬ B>kB&W -)c7b3c9g,sa04vfPp(Ri*ɘoTlF DE1{'k:IP@jQ Ij|b"Gon%,gs7,WZNBJ׼]@jJztZ0^b1!Z} !T; #[r$\8uC'XT㜌J\;1N1(!\vﺟP~8D)D )gJg|g1-z-šF{E!yBfQ.\.RQ^xs8'#H{~d AzC/L)vkmqB='vT%[Uzpb -[{H [⤮VO2c'Mo18&#{j̹fb fe|Ikaם׼$͵M U8h#DZi8b^* 2Fɭv%bE@8Y@F&̹ 4ׄA7Ϛ{xz'`琪1·\t^4TCUc{(wD&VrTYyVJ7s;XU|(LnʸmV閩k`n&3BFdd?Hp 6p[X"ϣXUeɪݙ;H6Z^?SK!ɡVaO f=qDIZ Bҟ[{lxE=~ꌧ[m?x gGuR*EĢV_ )[^(\#6gz`B$p%֬߱pqt&64nr?kR8a8(%;!wU(=idE%[mPtWP7\h)Jqj*97a(<=; Ζ+/qkv ;$)Fj?2ILN  )8`Иt1^|2;^sJ3]'V|4K]{ M^ @n&[#Jhk#/`eQ55-ڶOZxe)Xy8]B3ToڕҖ&lp+?,ۤ>VT_|_F-y\O)uʃD%@mh~4?T7!3y :n8hT[a \jI [{?'I8L`"|3fSh֖%6 O1 0paT{Brh3'{:Hr<.4kЏ>LGڢ)5gsn@mȏuOW0X D!=w Ud.'@W6cKʎ7\0O ~9ς%[)Pѿd {hv,a~ .M'+ӝc{e%f/\1Bk|s@qG0]PY-gtiT G7{D=uZ7FGta7mN#QH ?4@ 䱑Jf(KqSc"tEkn6)>H[/;%ovB^y.'V9sij2+UWWMECYdf''er'׶|pn1ij7E ܡ&ᵅ]!RKn5~숋n2aSrd_(nR\la(Dm#hahv^uky HKW:'\ovIVa`e;  $O>,%^p4e H'F_̇ ׬!gf WW)(ɝx=mI a*ˍoˠ V Btp9Zo)JwUY4s>_;y[( _>]{oJt5ԮkSSft)m#Լ]7\PҶq\2Cũ4 :]5a'_!.3beO?oRB5cq-]H\t>m~6Sf^J3O_&>to%'3Qm9W!?\ݾk*x^SMx) (@P q`nuTZ-7W|GaH6j4RA@C'LB9V…3lԯ76]FKLGȾHYK&s p} .dT~&=S/4RrԆ:MQpiY 5᾽< \3s JD-rD -Q{XgbJ{ζC.h (©֒\:'݌0eO|eCC}bA{]"t?W#* 1`ON'E^L)owgCbxGgaFXcWO3|d0OX^#('%++W_e d{7vExTR1^}'Uo׭MF;̝!GnE-škd$“!̓z"ZOs[9N@!$(.hH[a{-z!]abT+ +$8}D uҧu&c?kL/`W;T~g/9w,F3$15&_ml l@nQa?P,A4/WdLbFtR=3k@K[R]-?)dCγ%Hڅ_P $R ٴЦ+|[pfm7nVo)`~8B;6 G@;[aX$0qɀXCsL?XP.|?fP~YR]ݖbKty/ȯu:,<ce{l\IM7o =|[A.cf uu>fWHh"4. Q ɓ( co=?O!y2G*T^=(ؘ.r/}YN 0ng^N &Zp awHa-̘DPaxLˀT΋.s5<"DӺtm,tnq]7r~̖:Ę _Xw,pfODe.T]#B5p(]plN_߇ʠN}FN,I~tӮ!"CQ,7HQ,iFr7Q}*R6dD 2i֗zJfUJ9|D m}8+Bl¡NJu,JUn*z"wm BTx0"iaL$odIc;'Bj]A*a<] c_ܠp˪Kd9Hw\< !'`KV''6QoR'?ݾ9"G HC"iY ʑc;t7No  3aZ: ^çK3?Q᥀e֙lPf_reD޲cXR""L ;V 8Bmzoywb9PSH+wN{-޶o-F$cj9d):ݸ@K}-ތЌ{5*,K߃J^j >%i`uEdȁ M6'lAg o7-XSo 5 -ḵBJC? 9YX/+p2<| 8Io|0#%R Mx& {Zv$pXN=ᒢAo}zr발(jCNO[/:(8qi/Ng-9*L8L0eoZ-Kũt ZG:Ћ]yZ_Z91y K3Lj"7G2#oj}iHf8d¯XqN ifSwQm;EVY-'o$A ƪ]ʷn ] LΤ?n+Jm@ww<̫>z1i1OmFVL5*Avy'z4.Y^*d:0{!8:Z/Xb[1 ta I_Z> r3ԀŬ–pLyz>qzZ!"V>#'sk A(+IWF_}D&U+ /Ya5?'Cmҿ4dG0MWJQ5wVC s ze3KvۦoY%۟5<+SmY:!fQ/л.H/~%D /'a'a+|oVСzO K& IV/$q21VUABNu=&;RAPm$18|s ǎk*jjSJ`Zh"?-L;;F{]&T]F^M 0*r:BkcmO/vFkCͅ l*z>05;;=V>w)r!|eToH /cB8r.Iz*y## \N' Ա(_"U?Ɠ>GgYwXgaLh֩TTfFɊǏӌ@t\Im27w55WnAb~|Xy4ፉUN.͛`T +Q s!"ze1 :P^6Lк0 ^އ!:Hz1qyːrN(ƧaR@FvdYA|hvjT+X\rAN &Uu+iuf7] \Kd;Oj*R}eژ^wKam>r0-y gA$5~f? տ+2e#PbС8O]/BHm@nu a[[lcM&}[nqəgWZ?zEd|%@i(Mc[%^ɚ؛wy% ǜ+ų|*/+HU[f7n;=1W5] rg8*ʼ$;(Qt{SCIەL<:yÍw1xgKg@ RsD,tUIcUČPow_9PKI]MH?jE*'2[uY?f(W/wΚ/>ۋC +%Dz+% m!sN箈JF UR~% 3*L }[pp^+1n#:C;-M@ =#?q%,Ka` F|]S3̾DqU(<١SC77H{=`s&ejoN*-z_lԬu*n2*^M`bh_֍dkd5Qe qZe^X;J6ڏmcE'0Ⱥ~DBvޗem>>f:YoI3V2;4-8NL0a.yLTq\\5`ԸcDCEJ㖴0jdsAaY#W~X߸a+ ymz~n<0^+-%v{R9wYSw,j%Q)p/)/e>L(KGf5+jԈrTT?%3%".T7c͗4@ͯm{lQ$f çB[8#38Bi3,01F7.6e۾3pPn$v)cLہ/>^q,[!ax)*}0$#p8kRp- vZ YX] (9ȡkKW'߱;T-e˝-7)qjK*w=ܽG/5hV8#u.xE Q/A DވEx&nBz&0;*;ng1jY<;7a Fo-ǵp7N#Fv&ut"2XqWbqa•7%fZ31̦Bxh|5DuGmy Jvm9\;`SbǧuW)ؔաe ºu:[H` egYg)@نD)ͫ2h tIzdxgS)rɍ%SVu5 >ɢj T('CfP>a3!Һ:?'Ю Y^7Ylf<~/Eu{|_Nd .[BD?ٵQSβ6X`WƵ\7шI١lkd|e<^kZj>-T3^Miпګ wY]˾`(\,+۔ ;SX*^ \ִsF]D)W)·ō7vl-nlސJCwwqk7WaTB(<P$%j XOrp?UWkY DuIemWHB m&ЯYVl+n>a,Q-}-cNxl`ei;Xߨ_p M\ Clb ~adG {ƖbFf)#%&)QDIm,P &8HK yʨqbNG/+ h~yaKluQ7cQ^3#vVwtJ3w_PҔ'[VL\]`D{^Jʢ|.N,V ,>aOR vfVD[M~nRdE&wM\QM?Hz<)*GXಬ^Z;(n=ERAr;wrs'|.}n,_ 2쌇dspS00TVq)Q h uf[XN\ jxPW>/٪$6 %Tz*Y %Ð#C 1 jb Q9#H(> _q3YX]gumIlnF*I:K'묾EBh䫺9(Qlx,IA1txlTeGw*^8X =@\+թ!$mn/X'l4kusWcCCc YBgmcØzT*[nEqDS''Nd?eN,Xͨ-J|]pgjܺQQBH* u95 cu9gUXaCkX> ;shbkT>Yaln󊖐tm!,t)%/!^MSOG8XKL\tuFTiOhY5/|+Ӌ 攡MLn aڽ<ҠB◌}B )IepE] N",.BvJ氂I蓘svE'kX4p-+ 'v z1ǩVT \S KD/ðXqSdvbTB;];c- F}:|[ok ׊LKUtWnyCd B/W%C^Df]d4! 4l&mt8fڥCnTbW~k;$<#u2.2f(3 ߩ@\`|ZaN|A/|xgj7 ˘1K7 t.U5KJ3/9@Iы8;d۲Y0=Zs\/g0zR\e \~CcG#O*Pįhr/P>CUrGk9f47>j1Ep/ a};%-#GW}F=;C[Fcd !Qw0)U)0Ңf'ܦ쪷>,ekl:c,kH:۟ji1RK"YO2[\4֝ÊC;H>w^&V'9cFcm/]=;WE Tq<޶? 5x7c^@11CE0@31?"]J5* maU?4}ʻX w[TibyqO=K2݉B[APjBL`C܀}Ԑ%py6,*HVI4&~q!rG rn*S0'UzP9iOAO±Adt/:H8e{a!Psﯟ#taqE" }`<Ԋ*p9Z9I gYzq) Ns?TGi Ro]saNP$U~F(!HF'+W4,WBiX<nȪ,c0ɦ]R_lă,UvqS+cBRq3A-ats^/^ZUG?!%Q-֩?F]d+`[0d嫸ץI4HϑչaߛuQV͟1/<|t-9/sPPxǝg(/6"D}3FXqZv;LyL\fU09 0rAWrBaR"|i 70IJ^)pwsr$"/G8uEYlLcjк@.TŜdin9dz.TuO0wH20eA%O< @ L#Y$I-qa'fx]VuP pHCotqy*ā6JT@+/e.sgui) T᷒4oX/3&P\0$9#C^7ˑpg2>Yه9lKŕh#FrA--KBi:Wߪ=ـ#VѰD2f=[-C6th 5sZƋ#X^a PjC+OHnв`h(>s9+R=ޒ֛I{kp *"ށXH%U{)VX( g3B/n&"gzAcY=Ҟm2>Eʎ`C(%?>kil:+ݔd0cSuv\ +m k8%(ʌ]_4&8+OggwȊ{ڽ)d:Y|8١%w{ I( =Kwi{G `fy`@ kVW_HTqN3.uOJ 8He^B/jAk%[% u{Ǐ~ PB ߩ9{Ɇ_2߱(OZxr՜4bQk~~oBiQ>_AI-5l>-x+4\h.<7x"_}'Q,ZYbs0AEɉ ,y[rQ/U4xJFSj'm?FS;ƂBKOcn}S7P0S17Γ:0CZkLB@NwUtpW&Ms g.(=m=% 3JkhY;u>~/ q϶Pg2K !]|[h%MT&w_?_Qq6(?Wiձ2 u3޲dD񐯶Jؠ]nu ~$aQp_k۪^X=>_M&J }":l3|v/]I˹>"ԡy+[^p0Ub+A(),~ ws᠂K+io;[1f18:sz:^.lzm=,~ )^f_lq+p[N~6Ma+KdZ d&V^mu}$c~ݝӚ9#.jI>lK eGh)2{X[d7KH9)d*pe1Uː['T^tFLd!hg 1QTpz31dOq5Y;/W's8dd g~''V]rWdfɧg 0LP3g`bRHCyЕuÃ-7Vr2%(=BfE'IkOv 4F2q=7Ω@s}Y(dۜ)nBJG)Q e^-%N!P%(iu5ڢ)Dfj+M0rnǛr >{|%HkG(I0x`IFKNrpyv45^Yz?} ]pu>X,Oc K2ݿrm ;lߢU2nz\<:VIpͨQ>X|cW“ؙ,\F'+&ZycB`zU]c,QEu\~컈SQJ k9%)U̷:)µٲWr 2CNӍ,=`GCp/|8$B@C"o`^B쯐)^`G' aΘsbg\@7n yo.Tn\w*9( eY@XFﮨJ;8`ئ/Bvs|JV{ j&2 8ZcE|yO}8sA&j/mmq89TᔂknjlRc\&MQB"gJnvڻx.GtDԱ✄_@sCqT_`#tk =WD 'T4X;~m<̮FKܳջKPZ dNɜy)?≅IQ#yѹuu[sB"kx%,qFS=c_drX{]HG^liz-_VjLEf_(j,*rY|fbB^r"0\Yp(o\䈡˽5Mlf1ŭ"\vZlq8Su$* "x?DZg[k P[1_|N ZIϽ5W[TJ{FFӕn9$\\np%~D8*B8y[Qޗ%N7|AS1g4ʰf1 Df;!l. (0C&qy0AK?P[rYE4a9Yvhϼs:@uHAl-}%yCG%JдFT-yc*w!w'|I\[+p:uLv}n]QQH2@yv6}DH:Ty"~S_-\wz{q0V#X[4x c۩ |66֊1pqV&'N^'0]M8 R|FOp-|0p7x XgSWDe ޏ XH՞Q[u38Z2X(A|]7$HpEқ)&:})9@M܉V7Ʋ^&/5.Z8lʁRTijO/AkK>:/(*G:9W3eI}ŐRB$%A<0>Hm{BX8v2x)!-äSUj`Cڣ`opn(\*uU[]my_!G+ Fi d,9rםOJrϱ"\v}]PBH4\TE\=]4YjNHY.Jt~11 o'Y^sT yLGP%d4Om68S=ٜ;G|*V'i҄M[PjI9&> 8Np{z2 ą{p6}̊ǰ|cR!~ Uұ'J O344Puf#G8ߍ|&h]ꩱu߸yBʣtw>–jciƝ@B#.Prڟq:?s='tu`"f>oF𕞛BER&g ;:w,׏ĴKQ Byk&4x=.,Z%HrwW!sIwjl*;8]]T/ݞ`NPυDA2CьhQx|Sͣd]=rE H,*.nk dL'LXgs⚐pU)Ӗl[mz̮8LMc,=+ou&(WJ)%uKYm6 uX8 [f/4|Sѡ/;7S41/ZԡjvݢmUksgUs$mk6Py969G*ۡ.)_rxnM&c|ݍ7\}l1/(rD^S+}As!Go]3n9;_70$B,#vYO(D12E[ܖx 6wS 2f 2Q!*EՄd K>QD+pO#4tFN\KLy6soLmVZAgSFF̮҃gxCF dZ%;>0ALⱟX]l=.[r4 a[K#SjmՖ'3M9NR{uhoɀ_QVqzO.s ه 1kJ~ĈS!<-;֪(/7OʦR8~j] :'n&pUK!rֆ-Lbæ(xj **Sɳf7.G8MBFO_f y`R1,mWb73i.6*&'V,dqt~Њjio84~ [_*Xch /exr49KHai:Erdl!ٚs+$h}/c'o+ ѹx-q 3C*Ђ2;CKKLpv]Q+j:$M-Kևٽ_EPu ᮱)Z ׸#W1 q[.̑1 =2?/ ֤lt wvV߭~W0IO&k,_ȎLUG*v-qɒW㜮 VM<(x벧sՆ{I \Q9N~:")w[ dSu[.(sPLf9xC# ?u9w.g~p^bՈ}Rd>8ʯ!?Q_rsYE2'6~:AHʒD_NH‘Vmsɦv8hg}(}O01)15?zE;CR xCC,.+\*P\I*qԟb0cRtu "lAoIQٿw5&R%[PR1AXƛ'k~ZsJjW-9Eʈ57fQt`ywilj2 X~8{&ړSAUA7]eYr| 2I4)75D5T #KTOJ6̯|Ny ]ͧm1J17HE7 %#; ]Ox˽,HhV;Q}ePhQ!D^ fB~@_3_oȕq+}Oc*>qRIDd wMc7gޗql+=raVpC ?ш]x+._!:N+;ɤO OGw:؝4o$uR|.+)P~$on }ܹvyFDzuW&`8ۥLh,3ǺS)˺WNbSxފ!yVfF/Yd$EOL{9]Eoe#O:Sh%00ם2H[r,--N(߄DyV \*;K[Bl9%^\CJCR  H (>;vLI:G囬-.z =֭Y0"R >o\1pP\6tAoW[3)iΆx`%Ӎڤ&l|j[4{BB=9¼}QљY+?`l#IK(jbow3;FWr ~*{Oy*W/Z7xw]\|p~:&IpD*4 6-?-q #63KM#i&ّa-]5 aCp[fKp,~n[Ve/ ?#OnPDO>]KfK{/1MI!QY2H"֠29\AZǹT..X~p-C`gDFҰۺ#,nl$"@C$r*]kaAkGUtroj`#-;|E+'x9%AT :URI ?<҆ ˹T#݊E5Cku3KXMzg{xK!῜H2 \Ӎvdʭ5m{bnbqBTB)f㍩K0e R|r9(!0l34nKk,~%AYk$ C챺cv5ߺrPHⰮ-t} DVGs˧}Q{jWCel%N,ܦ]n=Z 4k0?TƦk<][Iu ?8cuMzmt+4դq} JbƔꄴgga,!̄rǽ1KZ^x;& cHp9xO`%c+Kdv!H2#ʏzpGlb;<= !wyB-fKkFMp&?-!D P#79Gg3.١<,ˎ)[ƮUۼg"uA_.j TsˆGT#҇"yr6$N,~uoI6X#2*1ٔ*q:[mߦO2{kW1nPd]č>YH`K)_90vk$Stʴ{8Ej8( _Z*Tf3sS\mOmH^En_a| ^C[P#"߱V)}D<S], b}Qrf#qƙ_)pmYfJBI?@G}$$k"8SDH= Wb7~ ްbdq&<30/&6vy9jԆUT%%?s47J ϻg;M*JSd;'8$ X#64-agꏔzmPFI2;=.q\Ǩs7H=69V1(~87iZp_1XԼmzuߪLXPU Βh6EzI:TAmN+ #,F{@c)$|nL:,jAc?цYzBiÇe 1|èJ&g@E|h.$3u3/ |z!볘0g5:3cVp$&ˆpY[2jԿaiA*A<*xJxE;}'ɢ3rR:X29 .~մv)()렒W>&F JҡNJ\U&^JRi'ۑ'c@ 7b =>GT~5D=`8To=P$`TX:VVїG}u=f24y)+esb`14:w(0xz1dPMt~7fʧ…~ՙmUz4T Wv< yZ{,VԱ bed~J6HV,^yZ^'4xP;yzL1ܕ%q/+?$.#txv}>0T}Bߕ~Wʑ"O9\koq -ԍM.ƭ3Gs>ȝ`L^6'c0Vl֊+LJLmh xѓPg}8hTl8W'V6b!z[ ]XYzet6he*fY Ѓ1XJ*Wez sI邖'ފG4,%,[}FiՁiz1Q^6bY?wrtG{Ǒs78 *szn"ucq{VO3t}XC-t_4FbgB<;S; cz&W'$$D' 4Th~?C}8ev)I8HZ?NEɴ޳*@7@TIәLK37^#EW%D!A_7B" Xu\ifm+q^)8 [,=^R0KT浼 Se݊[|"ϜHM~a _K?\@ m#"m8tfb5vK<2:i4C @t(͌)MͷlRͱ7אJqOK;=aw'|6nhc7B  kLwnq_j xK&[~wP7X{gYjy$DYBBȺi PK)/JˀMZa]N'J1[{7Hڊ//FHٰ$OJ.Y|LRѭk,1Rؿ͒*Z|a"JLl|K4/01N]E z>Hϟ(`~0A)LV!C g !ҍYጔM-(C FgELADp0 hExq[WE ;c5Uo/޾b}*GEoĐTkHNRc^l׽'}+ϐdiK5Ac}GBT5P ~9zIf߁AI&;F6#S?F֣S'ُ"rjl{yTP?kHBKןhJi nNZWlHqQVb!WKa}ơ.Nt6.db𫍬% Ebw.\ MEY&/Y Aq{UgPd6dN|2e"-~= Խ6n>Rą !y`؊ķ-m\X->ܨfڎbc<voy+#Z^ pmߒx,iաɞ*7"8=j J&;\NM,w̆8&i&qzZٙo1:sB~GliSŪ(6T (Mx83.ϐ5(NȄ47' .%鱪FFnFٷ 1G_]w21x u\Rw)[G6N֮SVo e*Fk v'ldq9MҘI~Gs&Cb.Oőao;? DWj^[1whjbiB*wCG,2LVG6VODVp M[)BNMX^畃u%bizYA`Fu]g*'Q?:"Vˊ fNAUWbSd+9‚@k\9jEUt'$ApWuSyɀsZbn/R)WBL.!Lv~`g궁Úo*3/";)yjM%MXN%{+ _TerdJ3|{ZqPʷ ǐh/sB+]W0`X%D|ӕn3kb(;% %l8H{jˆ!1CFǴ_C >8cq{ 1,NmwM&i%Nb9SP%_W&M#3 oQ Sn$ٷj74$c3/ >&1:ǀ 'p%hk W"`$wb~ o -E.@`SipʛxvA8HO%Iw\ [g8;_7P<&wP`lsppH Ya xKi5?b()URVO P)HdJ Q\⌒<+\% єZ+Ϟk4* 7Dشbf {oq/&;eS>Nju-O4#疙RB 2P6m\ R, Eq ZDm{ߝ..RxsO3XªM$Z /;+:.8[i.*DTbA&DFØѯp#8VܸĪojr8x_\ ̐"ϐ x/s=M@N.ChBy|hYpYh(vζy궇 .lW'}ӌr\ӫn&n*NhqO%AޑS)>c81=w5pD(%2\Rbo1)g$Q>!m֡Րs:nSLU۳w _!O,@ ƫN*be,1-y(T9We)LcmA3rW7ZV4s枰lguqKcMxMO?8ׂtA] N͹أWo (`AψM=RC=8,Ӧ6ȴ^Jhah^D -qLwM//9B/c-V; sPl#ADpѓ7WpNqkLJg?E}Pw.҅OB=ƣyU/wwinv R2GFowTU $X{Ģ_DO+Rřd ]X1&ݚ`G8YldVY@ P^@G=cT=QYBh[ NUײ ߈{~BU{]D#25}bj~ zTEN 'b ~z!dA|پRTH05 %uh?#kl ^g\+9B1ۻA;8۟Fc`D#;9D: ܵvC-u+>3 |P?Z|˿ZtQ_4phMbj!Y}tǝʃs# e.K+  C][8V36m ,8Ւ<):w&-Lk6l%q7w'7/h(@c Fd{떢 :0OǮf_|HfN!~͙P}C 堦aӫ_p:pPqlǂLEniz9v41O3zXdX|oS9 TM`Xjwq,22KF]ɾDpbbSXM[ti-D1NP YS08[9fź4䭇pZf) ~;h'ՒQuHiF pM#s6jpkuB~7Ĺ‫eiҁcwq[az+dOɼ7.EJHphBEaa[Xe PѺ_X2O5mYB~+")*{qMt&y9$~#WHw~7P,?` E tT@*g3%yYʌkԏ5SRKWkz ?Xf jN .cI$&Z?g4G2I;<׏}kѪ,Ţ)fצ )YSa s }T =(3~:`b]fАP;) LPv[a+\Uǁ3/ڱWV1湁Ք16E %ɥf;v-Wi*ԨP.4'( |;Q3'|k@8(E⎢P-$x"9d[Syik$Z28Ϩ·JyWIV{;;Rw4hb/;U@uTBŵP$T_>!&52itx#8>N}ЀǸT|+(}=9MPZ}$vYr*8KlScpj[]1:gtZoIOψIgWNVV'7@%P?T.x5G~ۃGUęwNMuzH#. aqLW+9cQ8pe˙ ,+ԣC:۱Srp^ ˚c28vTTԏ_Z[n]cYL|+Q -f>nbN$j?5JY4}hlioN48~=I3`2wp4SP*x٣X%ߊz>Ź Aٞf+Fua;u,in|3xd e)V8?nv͂oȚ ^5,܄bu0!Ty9}ZR P?ODۍPGhXce\Rh v_.:)]1iIMS<v'7ߑx-ԠOqȣE},l:eKw7(t6(̅)"9)9{,@|ӴƒXکhg5 q_(F͕B2K8[au xwW`e@%TN<- &/QRSQLB\=XC.zbyR=`u+5Oh^F+JɜlPK0/x`ś޼(svs{Tmک$j =7|byWX#zzrCz#lWhn>{9硭5n4>*: %7K,(`2;CHjS>3)CU:=;?A`m@ .(R!)/]+H\+ u-Ng Q)쓺5gZG_enƣyȘvT S.'j[]VMͭvlnV7W< B~8 9z)<,d Lbv:p1%gz X,UGq@/ZG`Sn2V_Ҷ xQ˨GWt}KA6u:/> Zgsso _ 8 mKN8CyIЖJ|-0 A̧7g& "a9f\T)se T\[w#`a*F͂M5D+3)?p4-fyyJq)kEsk.&@LKFtIAز_fƀj$ ]٢ 2K%..p5DR\B6!AaOqŵmz|4K 2T̅!f?"&jO Avp:]9j6~A0~bHlpe" b&Bz7:'#6zZP0E _Sh=[# H(سT9 6Lqz.q)3&O}86~Vn'vlۦzڑ/,i[*^{T_, Jk}D'G2{N`'I"pKg}6I$lR$Ֆ`)vU7Xmϻ%0smY"wB#TE >0st5GF"7$89Hxܡ[,ʸox(]%փN/|iJ WXkzV kSC8ˀqK: ۚr7p ]iwt2?.`4+.V՗l&ww:Ԥsmib9%Fzo[J P\1i,k }\.9LNk.o nlUH/Cvt.j?jJAl=3dË#@޺TXvrMȨ0qa ,pvxQpyWs>7LO[(.Ùt{^N%k5JDž`i5~D=oSumj}Z^]Dǘz"IC؞`~@;0Ks&ZM5_|P^3HzkZOs z,`3YdEK4̓8xk![o `bdi;XL]}KW`) OzFY A;@<nM% -Dxra:r %_#\/3hu^<*~>+|ʠ xA葃lގG-+Uww߂(1YuTJ(}[Հc#˶+HƊlf;z'nJ7OPëE9MԍD~ؽ'Wt6**k=9?oqr͘x\CGf5t՚ =2_P gw]=6nS̟׵lJj > 9l euAwl}*?ߥirՊ{!BHӒ2\3-&e゙,u)ݽ 9MOU\=,A=6~D72 dLdTowRCEm-מXzF@ŗ< j6Vڄ60 |Þ%(zYk QG6$)HL;n]c6A#)]_聖cGY={ @$^oQ<7w&!Z 4( 3I{{p.9 oENW)*F<" 3"Q};5@+ǏjB y6$G_&dJPI ׊ :[7m '*W\<6Z,6]Et1lfvHp_<:F"| 9ZD Q,ֆY4%HuZ\-4la]f.*Kwdc'4wwRc,U5:H[K$@ȴI>1C6#yT0Ȯm= 7C8?)*І;QÍ*#n; ԏ2 sta 8uhX؃Mc*[uIbzhΔAc۱Ix˂ ,e 5+R.H_GFuAA价KbVїIX"N灱ˌ"wDU[ȤOMur&q&e֫#Oz٩)eFNk7ޭb!P{1+dY!YRf؃'zI8iMuAcP[C1*(,;H#9FG/TՐԬ!@\Hq>:ViHn]q4xa!b7zWǜihڣ*{jkv^| $X380mOS2k !pmu32 S B"hg_)Te pZY-M\qAG0 MYu楮Ikbt;#JRo;1)mm068I-s?gg_.Tu$"yl -$B7d8Uqqo+l7V'\z} qBW$I@( By[W|`YV.ʯ_ћq}*|*>\} R| ݰ;gә!4J,gDc M[BF;$u{xؽ3@ deҨRmU'2nzQ? ff0[8oG3k X3JBQ0{"˚RʊUTxgV Εu{q,lRML FED,%{ܡG+9{y%<Aԫ9O:^2hlyFeIW}fz/b&S񖝯ly:ٔB4>~ga:'YE.q1,eKswLbFZ| 06"= [t_MZNh^I>p_pO{7A\2Ȅ<G鰦2-U\^h4_j(o&7}h|$+ 'e;P R{Vf(jv8p])Bf<TJ ni 6w%%UmRì bZ$v7"Mk3_%,==ޡ{l~BEk{8:mf*K0>-=6(G檓U(SA{U1|Sϗe|*dc.hEz1ˍWm>UzAk%^},|h/8y- B\0;רVzJPD;~'-毨gBUdwOA٩fJCo| lૺЀ-.5ǒomEo۲g|?lyGF7iN)H^Tm@Fquy38A)3ToڭŀOa6?7ʇ-FbtpۛƗ'9JbROy k:.s8p%a& K *ySE:La~X jΈ}2{*UR}jm1'YqD \Ags{mU 6@+e~CO!&l0qQNi9ϗƹ* Me8]? zbdptKR/Ece>Ғ|YHT:RRv۾r,Az9ilBplҭyu$"!82N[m[PD@2@5[( ],QuPI(PYc5֠_A!w;ҡXnL|=]ؾ\t{G茀O7`@Y43z13PwM8aR8pUd%1L;ɯ(CϺCL^ ]vmBULb-]Z c:oW~#;BEY~aVۿ kM^:Pvu3 w3#ў^F0kFL`K)G/*=I.AJs9==ݠp%]$Hn5hqKTY֞qXP37' j(49[,.mފ* Hcʲ$9&tk a ?<`փ=aTz&>Y<?0|1iْf]x{ֳJ -FQi]E>Dٷ=0N'B#GD7#h<C|BLc{rlB (k?>Ĕb].; Xob>iXZyMX~fs5Ωڶ?G=!'!̪Mg?[]nϪM. va5 gj|*EUA%S+2EcH K߫W8䵂w6۱ahlpW(E |qH IbAŌa[%x^ء֓>LYe.t &_p=]@q#F*vynMI;gGGZ }!$ňZmZHXITu ;&SORU`Q 'uL yߚ@?΀6u*toA<b`evb \~d6AMK 뮂U_(+y= ?f+ H6ǯvs#<Շlwݒ}Ab[>0;G]AUG&!VO\F90}9{dk 7z|ѽ9UQ8KZYScbbLf(JxWE$ډbI5nUlRFUK.gBB ~YA<(l]tKS;bCG|{F%4G(%4Z 4ˌ 2ԹX1"(kϦr An%bq}l+՝W"Y<ʬ`ye 燦)3q bDm%L mH@8x<x/EtLDZ!/f@Y{L(gm@` zVʚbr8uFiyVrBn]k?{Ty!cxs~huĢ"k=UpR;öV= )kRrzngw|ՕХf |.7]6/,: nn](l|i } ~܆+,.|EY gmV5ܰ5.lF*,K> X eNcMtAb7qCWҬ߹5=x|15Tw5knUP.W#a/%$̸U(0QZX9 NnY"9&S/0xv=ܳFlnDy{QhN6-ECNhetvşnQ{ D`Bok#?sCyk׎P$dԾx}&;e =ʍx!Z.1|dƛ5 o[  \< ,_KT L8U"+ T{FD,QҩİiåΪ`*ޚܾV'&1w뛽B7W__DoQxT=[ٻ39-jn(3g]QDICl[@{Q@.?RYLJ?Oiv|J ̘ &\}@UY(ZA(Pck9i|T #p̕J3G`IФ'`qdR])ʱzF_D.W}n芜c7WrYlAah# 5X.IrqJflsh#;! ]'u!""1Ȯkݼ6>`4Qs4}R6rHiCj",Kv9{FStH%{-d9t]qJn \/Vا,Us *zo'{.AAkuL0P|z<5 ?A3va\n+_5+`$ M4^ŨI؊2@x@ BC_Hف0TBTT._lKEX+#IKxݯ[ cC#)YZ1,[ѺZpj! X3u߉;~NqP|Љ!9#ˮ}D5|6[[DOPFW]=U1P2Lv^'a>5u-m{ژQ[_9<cɵbs|>}f {az$ſ`K~X#z6xK- cE\,퐁IyOGF/ MTh(]ةꛇO n^dsYZP,!C-4_i'Xm36F" pZtZry<ќdDG MOISGX|@Pzn_w8_Gڗ_#n(zm6{P {|0]F6tg,C+ "0Z_9Df 6kwnA=hcTLZjVY]ueH>E1 %=(ti]J0DŽy`pFm"NCxo/LG伧+0yzz+\ݳnsm)0Kw~airZte'CӒOs{;V?;ϥ'^p y.E%|[Q'qlnM@$@}{q~n[4[LW)7lF7^-ʼn!- \ٵ:M3TM IkD`dAA'co|01whH#DKDoj w*Ub4׬f̈FAa7ȩq t,/x[HqnV-%uGv8w镎A=By=kS[{?C{gRC5?x\Z>gGZŤkX<%#<[E}+GhH{"m͒[*;5߽<.;b7<.#2ʱ'Ч@`q5" {3𑦋9€"8 IG0әAhL>FYb4Kc/@t`!ںZd6!W=B[G]G?X,O3ׄȺ*5j͝[vLV' R_Y'i^R*mqٹSyz Fbl[?{o;i uJ"A_.|S) byOGA45zVAL&?aj?kvtZ!+ٍD$04[(B]ѫjCMN/N߽elllz鸝 XA㚜z7ʐπ< ÅI W4q]DTpo 5r+sH o~Z#$ײtx"&VYȘ220_#<ĬYGAoExy>OJ6n"Zt|e~-+3\na eGixpP[9y iQlcIޒ;+e`HZ H)|"g9qG.發J\עƝGvk}YA2$ѸTbβԦ[Mom@*"]Ҟ/ ޷q۶tKdSF IM.e95'^!Kh )nY|TjJ 2ͼ)[suT\`r1'3tu?B@_0PH.yw1Ș1ua/B&@=0dgRu`DD{H: nTQ_KYRT;?Miw㫻 ,ڂDԿFL)G"R!wbCdg^̐urP4qdY@\]T>!!Ȥ]Bթܝ'zMݣ0_mDq K\+x?]H/[ !f&+|=dּU-E#p1;J6iQbi@pX9Z (X`NjY| t{a\!kfЉd< Cx%ꏍ8mn ҆qG,f*yknq,glZ'똧p!g2vZk`[|4H` v1kKg;j A&J>;y,.;fɇB;y&*>Y#3-^ŝ.\'-ǟW+l\'X¶3d|hhNMC (/%t 4 ]d0> G䏒]O%$J*86BgA1J8I{IiFF _3+k1naϓ8x{WƤ(ً_|I[/=BLc֧s!hIDz } ^UPgr՜43vg<^yFeK |ezi>A|~Xvt_IK:JLU$ DQɱ%~nYչLy(`#I?ź]!Eꮁ_oVO`.0eg^NzVHJNwǚ9&KRFsgWPGa4Ȯmj9XJoF%@/w:Dig7{ d6!ΐ3d$:^.c;VSv[UJԩe^[R803YT~d+nmzvk;k3ѥGb.Z|WF]לWo7Iܶ"/f3@3Rlvf[q~#t9Kqe4Fl  YxH,#10ù6-Ib;/6zaSfaSom.]<ΑcA'ߖIϹ'*#bP<>%vjq}AdmNVndгҺϸ!*&]MaȱRA I ߤNPCIjih{'T%NMAr뾃;`aϵbo('))M{ ] R[mAeIZy9?vpv/]0M`mk~U{ &t"8)q=u%~I: ZU &u`a *nROw{c)R ũUPiCdC|co*r`[x^1(`M.V* 8{WtZd QsXOe+O*| : 1REQW /es8fqM{}sJ)2ܨ?L /^ Erk6?L(qO+wEE=Fn-c$BONڂP\Wao(5؈Ia1 f܉ +Gk0Tr`tXԁSg&txy` \zm%twZW,vV٘q\+(SUcϮ ;3 'A&&)7yI^#v=@}xD{֤%Ϭ&;.z п~9w܉d P[c.TKxޛIR֝^w.KN0 ċ'܈Ѓ2/_G1.HkZG+ M0ycv0Wc+۴o_vCӛ-d%+ S::΅+D9X1_J13MW4$+덹A@? G)[Lm ͵rچ 73Dҽ  c29g}]L3opW G"G҂ХrɀXaaNnI+."W'x M&f|O7s&iڠ6QD{2%$ Ye Oyok`\ P_S YbŘ.xW(^yS^n-m<dɖo|ū",t!k_"0 7&![WJjvM*ZNHUQctL}iW(%] 5*xqv\rey(J|XA qO*.lX6փt՗HE3|]ՠ7ōf6)bg7FLFog~ÔP<TV%wy6J"Y> & 3QMnG[Cڈ<{hf\.R"lۮ2A2s@OBq5_T[c=U֘{iˈDfa_hP/e&*tM$r0FȔO1bz_OׅxDa>oQ" nRcA,pn0) 8%ut+%$kɮP#??QQr0|H X|7l}'Ɛ\Q׋h`JDږjO# tB펊/zpы fL |eOSΆ0&5EBUR -f5^j.݇1o6ʜe5 N}y^`pcKw4 ls L:6L$Yd{׮!ԏFj&lxj;LHyI9(eEI6*- ?4ՙO:^?SKl_\D36L6l%=B*q>() %̗ Vۜ݇eP,M/@aZ7R^)>2m݆k&F@1:K8>iʺ\%2jDj%NחƱu{*4 )1S4\(wŦ[t 9u;kBPStېY}wG(\rTL82oڽac&yBy2\;]U_7Je@ߩ'^c=4 b5bg;Az6iwN%j81e|z.a5Y^wfi 銽芨?GM`e ~yKW d.siZՑ`Շ4bгiM~k4KeW0y_OMU8 #PSRiY5?r '&mRe{ftE۰x}YpjxxȮ0%A zgaM-<<$~|yz=Ȯf ݡ:7׌2:A( ٷm$06XNz?mJ ;xjI7KPɘ;.LLN᠛~@9""xXUmNIw·VS9LxVm|-WvG?Q@x@wU*O#eB=PFkG2aSc.P,TShgs\QƧ ǻ#`^"gtVobVIh^`CώFG8@zKEf8}%,) 2zԱޡQTBQ&GBo[_/HlW`qX z] u<,}y7pF sѻG.]5~&,VC^<&7K `28 2|},tF~PdQ`O3-P[a`A Œ?DV=y4b--ʑ r=BxCd4NHB@*Q&r?ȏxz͢ 2!S2{AŚ_-H3MA# +ܟwκ-^d9:9I$S= .-!P3Wr|57#}`5MQTwїUM+?.΀O\hQ'x E##AL?LI(JUy3f^ ޓOw1= PCХ{I:1IYF ? u,`*3l[cշx@;U&:_0:|<"NE嚞ɠV1_qR+Xlegx+  phA0MѢ~Ayhm5-u:"gqjgƈaAc3 %H1f!2QtNINX`Fm($C oy}yjZFs3`ȧwA њf Ey1HLv:':hL4==YjdrGgqF_T ">L tXJ"Zkyַ16>vR5r7:g  p?K Hxjr2Ԡh:,Bb\H/QqIy# 2-/'6qiah>lWr񡎴Eqcl=h^7eEDl7g#u?{G?k{Ҥ*sc,ʤQ#̡,e┎ jCA2npV/ a!M.9saԊBC9vV)fك\,]rC'HtY6J< `=|MB1Xk] R ,Ws( e#辫q=%8RlNz)YOlNWY !6#٢>[zjCv_6|oSzLARFnʏߙ |jMd"dus>=އ-Z&q~']>#&v1O@r/bqS/5F @yu0b`E0H㰋D2a"TRz?P=tL\Zݓ*1 7^8XjcdIN'. * A 8y Qo,-rɪ j ߚroam4J&7-ڸq6+H@ ˰9N_Yh\m]Qsv9}'w]~og 6]*xڷ2ٷEO_й"$؁9e ڣ*@-S$v)UםNj(3Tbn-Qo,'6r!o246r\3?=cA EE]@EP%:ꥉM' YoC]ۙ,ɰRրz.F/GьݳcbOtX+4 | 5%jsL7"GR^o9>+&VތLaputSW-3pn~)"+GE .Ӧ:97U*序 PҀ=HYAH CgoFSMcOd!9KpB1ttdYj2V.U[D fRYm??|bMڽT.gQDDϸϫ= 2D5U>l6ށx'yyr?mKLA@Vp5UYPBg`6 k@"jB.+0 /9S5T\yOd,H(=KBE\sIW-LD/|d/~*3}Q$Ehh-M%Pb)V0 LL{G-{d%b'_ ii$*h``𨳃wVuX jt6<?$>9j)A\זU\wD*-:#Pz~8W/r]Ƕe-j36wU&>VBj_E?8)B'_X ў&Z8.a5 X <|]6lэ#v]U5gů&)*|Eٌ#Aʺݙrw-,^^{R?*sBʈ۬`/)Z8z ޺n >&b@b87ٔQQ`ms\: q"B|c Z=ˑ|}LHM Xh+,|H!8R+mf9XaǔS6S1ojRMh/îXܬ˜F @z>y3z槣Z1rfxٝ'6%W-r;|."0,G$}f'I@ڏyY6<곜!Җ*>Ve&uUb4{Pɲ܋ypd>47tn:U~"͟L&XA0˾,.y!Hr_.AL7;Aon~b篋}gJ-ML{37Ha5T{=U/>qK@%ieR/6HEOAyi2`V>xM;ƣO.#«jEcٵK` {, ;*]h`z R=~"eW-߯}닲g?h&?2 7=CX{ Ik|L!:) ϛM$U * )|dƹ8| /g75fK!wglLBout!H1c? F&xk^w)%G499N| XS rEBNY)#ڻp?Wb 8^y9D\Q_Up[ҥ5<*)(1 aQ+Pp;ágb\s+[wKNb*sie^|iOY+/e̔5UUT)T w?8}1ZMG,,u5Ы4o&7`*B(ÉvTFϽs)Z`z**x 1kgҩLu U8SdM/kNVo4GV Cgr=f$JAo^o`Z8>)v+N}/ V/#cxc;_ 97cb >$lE,:hhsMOP>Y^ȃ`Kf$"9XA¡g/sf&1gD ePlsd>a8m+1Im/b׬b^րݨA@DLϞ˳|' -_=$n.:nĔ}*ᶠnעn=C)x rqf9oa r9 ˜+N)w*3Λ/^0X+J[LjZiǡ*([3]Z S_d.y럞lQUq[o[*iYAtT jƯ.# j ^/ o~aG{4p}Ml 9LoOgl3D7ywZ@Gw|cv9Rc1fXHBm (Gqej<{_ſhO!\]Ċ%3X>:E@$ j'GvM4o{brTΜ1k)ky&T+h@9 %s\FeQMl;N>,*OY3ԬjO3CJuacnY[(<ޟ# 0&[~ѓEA1և%GMZ/x%oEeGsj/u@8S'" ogӿMZ6Oku%bWvRP~[1zL#P;)w1HЦẼ])gU/yCѦwi_e܀2b; ǝ>^;jĴОFu-%6LwC|pD#\%\A:z5!,!xv(lXDA ~&1n#K& чP)*m(]pTO ЮpQ+1AI;M; DUTe E zYt'1g7P(HqG?q'n`\FPAe=od$6 X=Wl|ʘAq9a⻔/@2w]pdZSق3C:=Vl:5\P&2u N)z P '\aJ4S[SM<B k#8*Zq;ra"F!;?kY5pe0\Yqz(g Ze" FOl0gu.~H3DԘaN~n>nhLD?}ߥ^-L˵Vn2fd:*l &{nXލz%ؽCox]bV7ϸCі 3E)u'IhZW}%rҀ;C:/뎠O|I͈#!oEVh$.Pܣ3_h\^u CwEmM(O] 1jV筆KW'fQ[Ī-`p |k`+OXlUȿ7i$A[|3fZuiƹ' ? /$8>l^5GTHQ_xmVl[5C8]R Dy~LZpx '0N ͱ^ j7TI[ dH17 `;a wsDޛ~O<ȾCW2gmgffoJ&C?ЇPDhuT=W"}.pRy Xk23eS#Am[J>K!Kiq, u~N!9%M>{zk"i+]י =ǟ⌠C2O 2}O;;d1҃^ATnm]R8kGn< LRaX/h7܅dYR jrP0Ov.nILݬc,BXI5Ω*݇gwZP7:5-y}q!?"ƕw$9.L~Dre|h`oO*&gs*(MM&W;'ֳ1\ǘ a(D/:Ӽ k*]c[1 L)fB@3P:ӈJqFN`{`L%Ԇ37|d5B4k3znsr:, :̀ oGѼjs ĉ4#&6`b\b߉H40,Mef$)qYAO%p tfNT`"絖|O"Xs%MyCPhN"DE@%Q 3&ZIT?McCSd.$j{eK4ujHr CΝ9TMųAIY %N hRYR3~,•AYMP&فp:t@H<*1EҠ\Җcjۚgh(p /nĤ݀,И?\Ey ?b)Xo)]|犋$EgIǽC|'6;dkBQ~=4n ̈́PO)IޠϊSn s\x} A ]_jdWl"K N<̎"?)fK|1=87X]ps1uɟd8=ƓAtWk…3UI@[)HΉVQ2{IhK>ag?S{:?X#k/!;9?z%}KuEW*B#*WHY_B(%KAH7Yf@h"`,~EWNj>.eg/+;# ϐi\z'NqW,asOj̆snnHWE;b$6r[{QFܞվ;,e|$& @Dpgd{7'lНK /u}ދ $qA9T̂i",U \D,H770ͩ4;2 k8M0b ,L{_5yG F LoFza(_DµFUѯմ|>V4Աn[,/u<3[*c[լEf@953F[>j[QʕX^z_<;ņAiBnN_^Qy8хqmGhlsC گ=;t!p t;ea ?WE[Ai@~0`Ǝ[TgW#t9,A?s2gJP,>LY%KAf;K337*#ppgd; zQ1KSuM;VÇ*h3(Jin^PfsmC3.< ]bPAԛz#}>ؐr p Zɶ Dی c aRיHi:0* D+lc+X[%FsOBnٞZÀm@C볗.~2 :(/2457jA`nj3D svJW14֋ܾ 󺌯ضGowND:iLzgaQlX޵g aa;$ }o@.[F  TE6??޻Fݮ"?$sv!pJe㐢U^z@i U" kY\ e56Q̯>dPUUb#5?`Cd*ȚL♗PT8sLrm{hYJ NL>t=83fZ=bL"wIFaXY*g`:Lc+%ud::/w%ZEApQ*PB@ġx*ۭBp߃RaJu :B-1v} -+ohw PSWs!xګдcaTv=5Z[DuJ~?l=6~H..n=7$"=M<ʊN3x06Rq'ɦ;V&0{75Lyvsu]QZ D dT+ /FkNZiZ@ MbwK"AgEo6-gKz*@< Zܔ2s(Ųgx`fj88 p-O $DctI$4PO;}|%k4s)ڢGDX+ngD%rJjKMwLƪWj|8.(&¡c0FKPҀ&>TWbf9!؝DݷR&S$_y2 Mw9Qc2n:6Ѝ\brG*N.9X[* '\ Fw0ے(*^  |J$}xhYyZfC:Qprq?hZ;-\=OP"M1ǠԖܑo 5{Ej|rK3hzkHn2 |ru$WBww!Wm#ٱa)6r`T7ZRm F@Y`Y|", Ӕ REQ؍:v,|Əf-mrcF`lsV-!a*.c#vQ4dj &z,m*X+W(?l^6/_P9:Lz VR^}$e$ %#L¾՗: Ty8Bϓ,RaҖr&|y"H@"C@Sz G : g'Z0 d9"\N뵄L;2q:%Ng&n)ҷlFZD(ڔˏVSo|eLWՏifEf_q䯝hYO/p☄sb ezT*rb|`4[P@UHJYm-CߊvsG> ͚cY艝;[`5K@#nHܒyUȻ*]0'\p̕ip㍼S]ݙsL,&G& |-qs+\,wD Pձű>(+ w/صmQHsmKtiHf?M:wEcy0+ b< X4 z7t0W4喝;!Zho^VU$|~ms "g#B56`F0h_, lgݝ e`+. nuW1P#TƤ9~5l/bg ;DnboDF[ f .o޵|(;jr@AKW>I髎.jY]z.#*)lo)zYk/4~Ꮰux=/P~+Oϵ(桅@5oE%gPROz;OB,?2t薇*BtH[sC|&Md|C !Q\vNP `*A6] ;cMbR.ˋoQjop5[G':n otHY&؃Cy_; ʇEc9z2,6k z<4i]<\irC qyֻ9 cކu*EIN9nfm(۴˞v9|nOBpxw KDojfG>xG*W9'ZFQ4r%Ƨhbս o/nw5Dxj^?֜!#mOMP" G!%^&zāXf9k;^M$}TJYaVU#8鿹xL pz_C٭ xMyEz3oٲ90K^ڬ(p] m-D Ae+_z`NӍI_k5 ]$^/Rlj'lt-Z<$?"KO睑Pη~h# q+wHBFq` WCK`@n%]Kx^ 6/6b+;S*B:Sh'ܞA]qj_? Mڌas $OnӀi&oV>wC=TӅenZ~nu퐠=VRńDig6KxΣiaV7MoZFYQa|Qjy޼zMtpֲ-ݲӿWr@Ҭzr:'<gLS{2ޓVpc݃.O:ٖ;̩`%W:ʼnHĆ|hvԾW({Mt$˘kN&0ER47r;iEfTc9NJ'vy@|ٔȋi+J.nOקL_"9V'M!P1c y={ Y Nư5%ErI\ƸdV(ChH.%gRU-ʥ >ɮEpMBh8t,! (} * KW pFjA4._]`J2~z`ݲcyS0&-g0-gM$'e@`~4 cY'n?B5i\Y FDf〤-P.EuL8@^lH-xNpĸFΡ(+1 1 FfŪaK>--F#;ZVhbqGFr6P2IȆ3: ~J)(_}뗺ٱRⶸSBMeuj5ۂ`$᫺" +Oޜ+NnZP_.Z8@Ŗ0<58_~ x%pWNj\xJIDУ򴖨v'X .ƥsXSC@K7"65둆UghW6A &0E }{tˊgS:LmdȨ`;ZXt*On# ]>:DlTܭwY0j8\fas}qj+㾖 ҘP^fK|\p'BU6;~|]ϥ}3εc-@|(V)Jf>+«;l:gcR2ycz4)/Avs>&! \ܖI[N]G-`1f̹*p9" HJ'0s%NՒ3Ρ\2-w-`c)o=PA}ܕ:`ArO^*u0f6:V2$C8ݛO7%Yy[>̼4JYN2 }@`^YV|*)"p [~Ua*\?*zy4L6`w.CGͦ2>y; ɜ=?p%X6Wy.,U&z]WKџү}f{ʏSZKrXN띯?j~wXniZEgoAoEE׍ؔy/)KYm8d׆/p9XQ,p&Qr NEU#|8ޝkӠxgpD1H%;VT-Jx3WVZqCX&1ݿ)Oa^["h.ݼvZx}^/8kO=x\jtΥJKAtP{(\pٶuY9J+`In/,7Sr|^z a[f^#6wQdL'?8,=W7Uı 1^x<'h1֯hy )N [EcBXeDra+ĥo]R%:Td.y[:ҷ*Ի>AǏxmwFz5,FzV 9WMJř{C $UG0g:Ҍ*8y.3D$(M௰>m-y4|veZc_Q,6OkdXt͙(a*ʡ G {yr6BxаL* %q6psd͜~LVIਃt%',,;f؜~+h㰫LkYO$Be#=WC""M݈/(Aۛl7@o /Q,_Nex_ Q:VF3k6 8+3XsMT]Jt$>=,!Щjy[4vaƭK+:K1l\4]q=.2 8:#5;vY?y@cIN(I2ZJ-4X[_LɚpRVvПQyx͵دXq2 MiA+|'^O}ֿ@}/1}jZP%6y';'eTD:LwICߺ`rG +H.ЮdtQpb#SlǍ+G=1wɁD?`?v@l ܽf7B A !Wyl"hf$UܱGVz+( X=8#;hg >UM-8 F +5xDi)r_, X8N}{$nn{s13Pf>Iݴ%+q>Kq%X&9`_izRB~W jX>,co9}ޕ(ԝ.~T`K=;؞6DD5Kv ]FCtAp xjQī@jue͓~cD52C_4&ۘ+e ŷO 7أ(ӭ0 9JHNP{L9zMMsQP=[$׻L~DZ>}fFbM+60ٻLq`9^$&Hedka<&:|Cm\(IG x>w+Lԯ:E0̒l08lX@țcrd&A2ɛO $|\nz rq F]%Yn 8/TړPUf~cd>.& =U*# I~TiKGK:_Wz bތv;@%;r5\2N>Ѻ U"@zsUXI|y.=(j, ~y4_S=v&BUԒQR$dksGeܶYFr$}4q[c=ߗvMJf1? a}8O]2jU F60T!mKOde4ĸj~JHi=c7f &ΔYtE^ϬT.G?#G ӿX^Sַ$i2fv>9@HEY޽o}ށ Sf ჭ*@;ɫjGȿG}4ũZt1g`E[xc/㟷46G%&",KwNϢ%n~)=L ^_ ~ܬvx/צ5E\*>F˻G MxL*dnA1?*Oeѝt]c-T@IbdU%ىzzZQZ¦kP9bObu{*C+s[`bR2ր%= xy#K"ZKh~ckW*^Ob/T| oߎ㈣CNܾ\;J>Lxs׈t oJ؍e1Kbfs$xfc!cۻi.1id$x8ZfN~KJtSats~GŪˀ/CyR;sFRbTe'$]_cv,i7faOH?6;vCl6h|k?1q !'L7BnUppɇTnSV 9`pDuˀX!D*M{CKhhY{YR\ӚiBWoCy,~qB 709Z@vF(cr^UY+zn.wB.J9 ܌瀄/.0PZx(δ|sZ@e71'_B+ZpfIM ZyHA0gM2(I}v|bni6Rv*jvr ;ss7bi!هFɺrbyAfmu&H(A~݁Y+\i- .'% XKQ-Ծ=5uX%uhB2 > <\YZbS;d,l>]vԱÔEh%ͻR5Y;df۾W+--$=ܯ _"GJ+uck:4/Al/ލ:e [aϯ$LH:2Y'qf`7$%T)zeW%X$Qd.>X-k ՒbMxbucHG@"M 1Ǧ^$K#7w{MZvRxؑw#G1?PIffIT5`Kq2z0>iJID PF,[c hO77kN + 5F8cEX7%$@ҟgg8GR$Vҝ1兝Po%QlHI3Ҟؕ+D꣱SE*Uq 񛲩k o-uYCUB1~2'%A@rxYE" I?}^&g˧[r$vd׫n-'1Wy b3t^PzfS 1>>h zĬ=@WN'Zl%"&ǂdd\OzqKL?9[ȭ8@+R.Qh(qC[)!bQ=T% suP a1xALn0Q4}2) /7ڶ FѻVw"d͵SRJ}?v5 Xt`ϦKTXœZ~0?f7;}D4ȶ Yg$~˩.H. #LB33pk$zKBկWlR5 CW637#`kĵKZ_ AD$+B+xWZ`p(3> z<[^)w᱐WL,̽^.@TVIkX@\9tz y"[H"5𳑰*ix%H@͢ )e[I%='KzF||e==>2 .vAQ/'7)&Ð LZ/`iAG6MF/aɃ1;%MT4XVe#̞9w6T,н@8<efVDS{Ɲ7-ӍLd{gT\pWƱMdQu[WAW*woAb$M0FB\u͑&,8܍JUڊ'^WGUGxDAJu ^=|F(+l7۶[DpWmx-PU˲dwl%M.F@d:U|6z=9ˉu Cl#*E1vȷWI"fIY4% K'Xp0ov>P޻kbBA,ɾ0 Ĥ!MwCҏו'aNebaͮ6mUXZ}iKQؗIa 0ʦ+/q{1 H\Un%ӟ\$O|vJlNsGYu;%ߺTf?n#lkgG.򗓘ɇ%?\Y!tMcs 9[ dbCO,50m'kԌavv͈A`I1Bkj2 k=q@wF=$σ&N*.9F%_/%8 ↚QC|sF>ʰjCu8q>՚j˜D ̸dYb)bҽA@rњMD5/|݉K7i/k:Mpnϰ҅ %Ԇ#6NfABK/ ؚ3R :Rp={EZ\@oDZB(2iN]3@.ݟ*>$r &50޷sSfZsy[Wm boWzCnԶXE(*nsH--/a(MʂKlaRP.q̖$s z8k;D j&͉"f+lg[ 6E=c[ֳY'"0mJ̬Q#?5SHVB}O-_úϸ$m?`%Lّr.3W7œ \|/7ړoB.|vB^ +]7DpCjlk=|< Efʼn:<_W2W)y'*::(~s+Suhϔ;nI6^'vM#u5ۤm 8(h~^IvC cpAqЕ8㦈!3Tyq.W#]KBWEKm +)nTD!k_yV\ _͂D@O_R{Gz{xAՉiXGh/~Q4ϭ2`ƁMx'Y,ty/11|Sۗ?71E cW i =&-3!KzQOt&SՂl5EFw\%6~CJfoJa0gqNr+ xCT-?o(MrLxDyxJ3 |*|QA8mx,εaAOOu QAB3U2R5|/@~JTާņ\4=1mY xORro1oWq{r2*L^n+;L‹B 1 e *'~f~lNͬ8K/vsYbjz]^\!͜ T2qiA{ۧJxmn41 ,>N)OІi2[?K> vY-k<+AaNXk鲭:>n|S+XYp-`yW̽Vj*Ź&waQw`trAVjUo8DlE+r% j~46ɶ$j҅܃.'V<"a]:%6,\cTZsGjy^/BcA)BA"jU?HWstF25O̼lS,8H#x zkF4WSF6M;/qF}cxu;*au,-((׆=NoKo0q̝dTUX7I-x44FLe Tk{j_n1T ÏhwnxMu7^ -YQƒ0XK#Qt_!8p]h9Ϋmٙow\a"cyw&7=yYj<ө"ݮ5g\n,=^ƟJل?ɪ6`9Q-W=N%5[*Ԛ ؞yVѿWHAmM^C/- |vE`G*8Y#L30f;nXWn =CwE[nj6Yë#+~Ԣ] ʕ$]hsuW^79[JTr<ˋDcO*,Z`UXZ',xJaI||}w*6f '{"pZFn,9 ."W #uӡ}_7Y@f̋ ^TZ(Z0 bB@[ku$AW.|AJ/Sوڽ&Ud1?ѿ سQ-Syn_v{M"N!y0ْi{_m0.@En̜ f W̙E&~wג fwz.ZJV^7^D7PIy SPYzoSe//̝Fd/:mbI/U{(aDϝ.;Vj=l;b9L_YbG=$"moe2g{i '@286(AMEsKC2ɶ7kcx,k Q l@U` c4^\&=oKcnҕN7!Y<-?~h |ey-/:6Л2:4(k$ت4T;^NUaSbU^[Ձw^YL[*i#NUGQq3L%tpە\ܢvoL;߲\~2ñZ"0swKv:SBAY/ſKY `ևqҩ-kIn檖~|4,oʅu(41i^R׌7SiDAfB7ઐdDY}W 0h#wj,2Ƿ4k!L {7@~Bu,1= P!$r~;QJ~wdmh;v!9%Pϓ Ye?#@69}tڷx*|u eME0ΘvH|[QTV/g̣5Fgo~S`@C=`x)ݦnKMl,0=Łh҂pDr[E.vG+p"| 9di*:A-КjINW\53~ŘF(UI ֱQ 5Pa }*6`ػw[(Mge?bWp>y/a>su3ܝؙV`y0$:\mej&vʜ+,|=ʵ}~=T (Wx~`H膘5U?w-caP_N=}rxtChw{D7A28oTv:Xs>?Bx6"/𓵹m-cr̀mmtet|/Wvac q_oNAU f_F-\#N)N/n [˕rA7mmhDPsb60쌅-VG+ y?]ز^jׁN}"y۩~M0Jǻ<5g4 f3Zm^lI#zYMJ:@~T >-ɗA;2{(ynykI/8)Mw@W*/Tո1=YPFe!u|>_i|dk9 Hp̈҄!GaE i^{5bh.CL;cH͈;8QxcWʒqCk{~~R:wj<ul6 oX5Zhjހk!AEɿ{=W ^)2Uov8VnFHZ i ;@v8*?#_1b;z& uP#;VWSZÌ; `07V&Jr@Zgu }- pםޓ`k,bI2!бٴ;qBxuUnNLNآ%)7WJ!t L܇hw*\qpr[̫YyjB*\lU\/i>X9Uf1Pҵe' ZbS HƳ&EjFjӹ$Vn0nMGSd+T|fHCZiYyI*:6, ND ^'KJ*f_ < !yͯPw S^RڭNF8- `k;SI_ ZI'rP&LtI r!,|ZH5>g5}BJWu0o% ezN5)E 8p99WzhNӍt엃xvlN)qk]r9ݠ=ϩbbmE6r΢MXR=}\O _xڊiyYaq)մG=߲7%!9΢Eue\r~!J5s%n Rřʗ?4Ru\;AجBVqӣ !QӾx׺(d<8x\``QTKC|F&L5 ryI/5$ ̌D zyDx!p0&^#E Ҕ i\R}-aaF1']Y?gqPxtx_ }m |`FmK_)AkLQJq{R >G@uFcO )7`6myh+EVqw~=ѭV4W@b2E܏IOHS d[Nw5CWq52܄[IQF$ʺjF`12)Xv! _jk!Ywd!ƭ?vvi9JwoJiTNk$D98o1{l0+7tJMy`rTN쉅hfvi{sm]KYS|jJRxX[6AE9a|dXj֙}z@c(&A_ {/6VkRA#D0CR y& ڌ Ed:D{s9wk63^qwym X$qw=^4T!6KHŖs AV? "녹Qx/VǖsK9AF!tˮ_A+DLWI7ZqnWN98QZ4 OҴC<eD1D/@5cU*-iy6Ab!mKJa X3g0iˑ]4+hTA]gAn^Sm[ygѼ\R `D/ДCIJS"w&F8*sw31wمCmZh^ɖ ]fGi3R[yN{\rKaDu6V• +!Wݪ!L~%B!fVߢòs}q @J !Á"8 FL4Kzru`BF {S )P{`P @QS[ F#C=C4PYcbS,ȿK #Zٹ\%%"c/;ŃSk'BBKJM"e2$؀2UD;%.`XK}a,8fΘG L }'K{AԊ%kqQ;uQy'‘FdNkoZR9~R&B ,Ji!G 2*,z8&v57ҍh"h'EfN"tl$=|6Sk"qUFՌc<w[;sDnJCЃs6%^dzWֿ:@LFF~Zݿϻ2wAf-cJ3G=a4pzA~V>B}:~Hʝ!P$xхI3U[RqF0Jw/&di F 3*P//"+khpgCЩX e_*$ <%e3֡-uumwQHrRpwDƚy|Q5\nnVё"kN,9 +ȞRJ߼ؚv%+/z+Yu]D귿B `B֒T5]m5 >4abfg§uYSy94.rv)D qh1)J}iɟ=τ'!z+~:J*&0&G5[y`{ҌDsR4 JHBP#j ==9lFI`օҬt\VBq_4A{B 0ʲJ]^ƍ@y:QcqYȟ>Rm, ;iO§=5^ c[-]c bC}^"*v8N{*D^rGѥ^-ٴ4\ &glvw۲0h}me4>rʜH$ 5:gw|LZcv?f\YxcjRnoUCFGՏWVͬ K kx%ŅےQYCԣU=٣[],d 0Z#;Dȭة /cΖ }R C9ìn84t;PTWY24`44XxKݤȺhBJ8V'/jj`&lw$$vUO\؇ngy©/Y_n7a8cAJ2'Zq ]aFZ.c,ҵrWU~[Mt}R೺y79?",AwH 3;|NEH+xYDC` ]ݕ1Ӿ/$p͒UmD. g~ ? (ֲ݆ҒL(b]O]4y{iq gF8*݆ZiGRjgaGyY>u&FĞ^bɡ0./",EXPulP f@uN/QLzw/a;~/WᏰg3?dU NNXqnyfRJ'o( A W.A_I>ֿein^0?#6__oCh]_ެ VHN 2Y:ݏGc38aU*>MzLMg^Ms~~n`X纁/e94>.Ւ7dլe%{U-R]\ҽ(`puh;zaBׁk"iqj}1 ;'z 66>i4pMueŐu.G0:h^W!U |"K”-o'&}IB@)k iDl%5`# PX{rs,#!` 3~oxZMDݹv9QBFѨv@ĞE9u+ ˯tpwȎB*-~v6]0sp,ވla^<:mK,4%rL*lKR+ݽGz͑;K,9n)P VX&N4]wZ<J?=ǐ|AtaλD{ZGOhuUшss3r6A[P\״FYsEz wY=hM 'q҇d}T]΅_utp%E_wyU}0US8*l(`O0IfٛG݀C y:ɷpEPUo}P|eNys#mbr_.;ށC@LT$N4!*٧ZԎ9zL> j~ZpFr5dR=Tt۪m:I22O6[[Ye4iT2 nnoGW!mN$ߒO?8L^BhvX?ڍxo[JPbP7'8C( j8o%ȩ}j|ț ElhTb[yL d CLJ7ZF7S{^P<{0;!r/ݗ:J ;5}k3øO O-Dk'_ Ol @pKx *Q/#sc^%3xjOHV\֑).B;U:n[[E=8tt(z`qA\=?9 :ӫ= (rI'&~nxhLZ@O !4X7S2ҍGJHg%XTX'#ͼz$+*`/52 qtW" [/ Ėwc5c =R)݄uLf7XL)|iZ2lc1_'K54؝<y,Y$G|qKՇ:+3ڨ\ M\3Cy^0x?3PX*0 <5mOb}AkYg0SA|!s0r3#tJ}wRp%F"'5U0`_Շk]W38-z"9!,"5ERPm4jWvliU9mÔ yE꫃Y2I+<(.`V즂$KP'Ǿm-HjOpX&@)8 (ɞV^2Ki-_ ]{ Y:uZ=Cu\$?n?Hr- vxQcZ'f9ٯžPZEL(FHp!ۛ(}v3ouw+Ƴ弼"GfLnwF]@_ݡǨ7;Pկ UdE^>7m{Dޯ~M[lyo _-2#6}oǬߟƦM9[̗5 gJOJդ}h@[q̜)m̖UvE)$+SIh!vX8;V uCM3&=*\hhO$C܇f% ZyJu\ef.apj]lk[ި8f >O 83XT0:1s$$\,s{>3 U[D irE帴gb8mnW;=wqu0%.:57}e(")$/ \@t]<~9kzpf"33;&k(eA2C [έj ,Z>&'B7v7 Erۏ, gkLMue|wɿ}O-ݨDAךkh6Kc}"%WȘ1UpS'r~dT*R@ VyR uG{ZնံEs8?C#N X]w|Г@Lt8x>g!g6H ԹwUcؽS'5 G9D8:KpfP2ߟU>jBIq @UiTaމC Nw 0T"ܻXw=Cy^K{1;12mv|@ :gtD) 謓|^A^gnaU>O^IM[%˒OXT-Q^mMFjaNa8Nϊ45 W^F큿厼G*WWfC:1V~zBms+; qAxgl0i ݸ6`R7u%!e\%2$}|]XQ#xgLMsdhQ) $8DlTB68Zce󙇇q:C ypK9Xiy10rcn⟢9iH h YƽO ?9dFK'oT 8t8. M--e1 нT5n.w YPo2TWӝfo:4@@6$e0NpTIEsoI#IZW:ܠZ/ds$u (app14r'8@ڹ" |bπNMg=kTm8= t4#SϜyOX36;v7ʴ#% .,sNySk![j_uofM$m@3ʼ:vN4gOG& ݔ9`F֦`üyteh T,́Y 9|@O]nvȡWm['96^qX[녡@ N ˞|m}atÞhf:g5ʽw"sbAL]qaրAR}W1WV}?m=\< qXLkVݵ=goJp#<0ˆ+0Wb'Jf}©\CY⧵P]o 4+VP׆3cT׍縚4dv+94p*C T5aEy/$.ˑ(R6a `D#bIʖv^>MSCTlLk&x^ViF^NۂM{hmY(x=om-]bs]*{+]#.L{5n ] ׊;af 9f0ٵ;\Mb.(~!GWh$aBϊrÌ}ɍQ + +ҰK0ȩ)zt먃D"P~8}PVJJWIqFC0)i:(y]8#\=1Ei$.O,;4B?'o ȘkZ܅ tT_Pb-oP6جTO~A%FB>RN}bu܆Vv7o/װs+5EGPޕ*gfe`\NV~Ǧu|8UYhUCРi%<;+@30^UUOzMZR$;j,7j25UVhM>m!^~EnoF[gً0'Kh{3w_e_+$f|LW(!~fAh}?EwkǶt&n3BӜ :f 12FzGZ}bVf@ ߫Y(1kk;~y|/7{|-wj5IӇ.bfGA=2vfzΊI2 b|аٺq"wY&q wDžK¯du1 b-A:53vjhq]qB/T.=4l:2駴м$˥I>DYr\'C:ӫևɅLci-lz#c O LWA BgG"BFie j-{];b&iTۖUh}oV$yr㓷㳼.-뺁ڦDP1_CzK z&d37h#.| 9&xV> iTu8Ց^ZhPo1G(d37Op %\;®5ʝgET 6# 809ԝ(Pw7KՑAsf09 qXRH%$ysie %uDZt2v=к/xC1k8jnyX<<:~@;!#hERN0=9C*mݸsQHN>6"@yFFU勇`!vMVqyqz_|w)KW ^kJ$(E$[_/][P_O|T.t5:Q2*Hoƃ`JwRxAi͓֠`qG @Tg *=ρ38\%߃SKfz<)ԘmpoLQ`g H A/Bx}q+]Q DjIe^z MJT7rdBEvTN)>fM^Gl .@ tff]̻>HQP61?<MƦppG}`DX-.ϨPekq?ώHeGRt3:h_1=ZV+;=l 9u2mԨ7%WsWҖP'bnjޡzG]zCؼְ'+ @-!D@ӟ*2*@>T 4,HpNZ;\iQYrf_F񈞸Y|g fb*D0%zhb(M63%|%oy{IuݲEVBV9J6ISHB~"0%ګҦȣú!G3\9NO8ۗn-llNfNSNqK]yP]pY}Zzt{ȏ=@kQ;@o}xAzq_":PBaOgsq4/0!2$7G%^hXbNY-jBv1B4*c*6r2~8+OU5PU3lfѹ%|1DW5Xҧ[I|Mե5_DITiKPEDV:d: q{.Hc6D&t[ԌG@w hGI Cj0|J6mx jUE E)ۡu Cfkз!TtԟkЎ5]hTF[BJMfz0CXdz/oI2϶cfy\J"-, jgTn!IjtUn0Uqq!Od %9ФWz(J:rRl}ߒ`Rn }DsOصn G cQ#F7VgWa($E[xQ(2%@YXic;HLrg})].IX 1j0tdl BǬ8uޟZr/3Gv^ Xmΰ򂖅nr3n~M E4ƊP;z7BM" WԷ&_j-Z#&+#ta[Fe:dݱAwQĺ[cԽ 6^3Aዃf&ITK}i& `;zeu+'GBv)~ AZlK3`o[.T\Zr Kc68qҹhN$Y=_@ &OT,. K(E: ZtNVo6FwzAQ;DV1OE8މZjX6g|2IJiO..P%AiҁMbH>Y7jL`jd)bo`WXZNÎ#DžKܗ2ǚxf<BZ?`TI.3Sc] &c[ $hlEl"ΖL4w Zs@I^m`awAz>Wa-f0~@4=}>6]\_ĝD6E/jQ1GpRe"^K()/cef. _&<\K/N"e~J7HYr[ӲYW W.qeB ZZ,n\K B'Z2 6 jYx q>Ha"fUTڬW<>aˑh֬ؽm Ѹ̏R--=hzzw c]srFS'?]|q+ ? 1"Ӱ?Hrr #p6m!@tʁX1@qI[^ϰA(~HR4A(v֣~.0q~hd%ʶp^ ZɌUJ=GN]P#xsHVi5XU1ℎFK.hsA-as<0гoͭ7b5Vu*V92ZEjj1沢5^Ū0Q=<4 $ piu&VMt%̮oاl %W?SNm3aʃUXCV`|ǐz fi~ы8L{[up$t%21SZu{{bSx.$G``*VؒKSޟҬ$S״~ҹ,RF! ]v*'/% HʻatIe W6 Gpi@)lSTr.O#)%m|0黤f7 wIghY3t MVnz{?|:IP^V}RgtKCRYX?pAȯU.\e hw-i&(p^"G-w55=h+˼(A q;3wQO9EwH2習ȡ>Cڪm<~SC7&^o"CX<#gi:@!;zpC2M 5JnQi:i5I nGPRQ2f3E_ tdV: ѵ)2ފ;@f`XPrG)˅4m(b"7*JkU<嗶Bq«IVawI3z'zs/  xT ?1L@C^Z5 2]ՕS?\L:YoPaLHnxKrSPXvj &X76[q >7}㔽D4o@g5|M<2T%0XhԇcJF5%bX#Va=Nf J?YrqL"Jjew !~W5- ]擾*Hm- jc&sR%\:M[Oݨí0-s %!g`D9DxӒ8kܹ覄םKbi0_X ~TSמuTtt`#BLdv4g°VPeU5x"C&329 H*y&tu zWL@#i ìQoen2&e4H3i`D8`t4'./w3<9:zg`>8]Y|>2R+K1ofFuʠV/cUBGVvbۿw&N]T g%"اBnͮ_Jok-`a:|xO:5&Cc6_4o7`LҀw)NqMkQ^ʋK)@@ *{ͱAWA&cr"ɍ}H$UY?3V#?.D|PoMTA +:J?Z~q gGF;U*}d>Tpin*/hYTl&ag{r`}Rn`=UTT֤VDȁrɰTlG'&;W':jy,G;@!G~Ű)# VEg)ja*T写eaP yaT5gB. äNOU`aTQv%Qܛ1iWӂpcC,8ꋐ49u +9zب1QyfwcmFxzsW@<d?|i@ L9t\r>S:]c7@~r[o ՙwy-$5ؙqq{ݭ/UhƬ~: 2 "ndӍF.5X_zejy%INE6n }$|ʵcFfnzZ#~Lg/b$Z0T.uD(Ŝ UjKR$W͊Q*5 Ed~kG~Џ*߾FiFs^KFx>lgWlCpԥ7y, X}9稛Ges|t>0a,o$<.lҋM=$'R4Q0)4u#0;ÿz,BM=<^{)P!&=%+4`f8>2+3lM LO'q#+mΓ \V Gx28Ēۡiڣ߲%_7-3>V&id5!F夭# .RE= lHԄ]e):og̀f}>a :hN ?iqӖ#zE΅}p9XWen<ǝ'&)(6NbѤEaDrYnYru(UQ2%iR6K 6` .ۘbAj_\&8M4a8WyU#u*5,=4J;'kb TF,$qQ`*2YQsg?8@᠆\^H1inU)2jH߇>i"&\1y.PX_Muf1:Ҋ'R8#g%D*2uF0PchK̤O|qp!+W| oHJK0]mG2PoN~jڏuNXㅼ$6T,XeHӛ(%gxx'^[.wP|buSt @8@bpG*Dwݼ_e)We<JU|gRY޺fS.D FطajP ZZA R+OT2 oHp1n=+N=f7|E? MP!dJ@VƏmfÞACwx:"&#@@Quzcbsy EQ[9E@'7v_m!JaY Hy L/L4f}{(܃3 Zk/G[3Ca :7vjpk5K3I Vȗ;Pee68xx n'!kP>BHGRa{x6oqӍ:1]> \ܛЧl$[ pC|̤d#USK@)uC{T*J:n$D~Z k8 l fPj6C._Z;W3fZ -d27G?z`)bdtBF:m26g~z 5v Nv*'xT*M+7 "_s^5="g  1P*-n,yIӛΖI8Tޅ|gn:Bo ` I]nQ\^؞ʑ;5*UޛK;{Ha0W^9܇w1Nzz i6F UJ,=J`Ck5K}l:°7 -@Pf\a#P6˾l6+x8(:jdꄤt Sc_r0xaīJsy`jED]'#$ESU9F^QK8A,=ݘ9Ld:sXt uo6U'GEsS S} Kq h pZeU~R=i.~|wCf|03UtDGS8>6%F}?,m3vٰ"F@Kh2(Tc·h61A=F̕HlO8#Y ,=D UvT/jf9E<訫bYke#* zȻǨD!~J瑟AVmh!7;%H$a+{;LA 6o"4#ZRt]p(QcP6%x*YLbM+lJ*.0?FYYy AIցb#& # LfщE|bY< JCnZ>;U"bRqᣀ ֢x.`PX@{J ȃT\Ч!nu%;hE\l&BH=fj!Aȶ.ϵ8.K .J;4 TgG!(T>HpS)`~6JiL?{ͤGJ&-X)Z}m jp [)Y`KA]ҭe*#@\15Gˊk\uDX9f!أcK@/H)?M@8}̫IV>)`؁t'xX/v+he(!tg9SZ+zpMyIA{&GCOɐPcCnv(lc˧[noLd@4omqNT WRAlF&zc8s@- RVFl;3@_(թVHg*uG݊=6fh(/ɂgYҢKm$T( ~7G#g@A;CH%#D9TAy:CW; hȥ ]8t 5]ײ}y,d9C3UVbP#ɡCԮ'ux=DkoHğҵ*VY7[1$I/>{p1>1 `|>LeNиOi{ݕQ:{p-q[|5Lʦa_y6耓D 'αSe}oY,BXgD;0Ύw OMʥ/DS}]⤞lOt2*"aLrw^jrTtUdV5dϞԎ0!R_!F1[bvSItZϛ~whi?z(nE[Kc J'>wZzdW! Kb1}SN H"E[: O}]RJau<^6~ Oձ.j3ǗߵWt L:O|2b?Qymav1%LئMb#]Ns\@"0U5 ~IW>ٗо^KZ~\JER/X1X}]F8\ϝ,kVyj[mbZzZ8S%o3P4銓Ad6hNWLtQiSWh6 &܆#aww;>k^X$qi!W{ DD pɈ~rIz&7n aa׶x#vxz:dh\s/= R8z>|5|(ƕ8 @UIfB |'kD} \M f5Ǟ ~W Naf==v'Ԕ|"Ӫ F$ M Kvuv3&.JYϼsZ^.fG1"X+VغN MOדJMlN~?â|#.1$BC#E8}ݷP+3ћ3.L2C4}"YXaj(RiuL-B@RN1'א&4R"} ,ܚ 0^mu/~ZH^Y2R L EeԳs(AԕgK@ө+RmbfUcذ'qhW߈w2DgVl4sK_Aj2п^60*NiAT@!aء ^4/Sap/y=h 3ص.!*yXt{l` GTvQ%gUYӆ$d%|KADiarQ餔sp {?d; Pp5hz2qgl-"?OnoMςљc>M\}Q?KW'冥9@#dWs1$΂!nb֛A>hmnPf%4`^=v!#j-ZR;!Ux 5wjƭ>Trw2Y3 *1I7FoH3ݢ-Z{1Ҁtzr˾C??I'oo-RWzYyMt #ߥHcGꗿ!/;^>:/Er.SO?Pm&f(}r+tp Y&BXGK]kt9DO1,BVN>YSG$mUYS 5AZ^Vi l4/eKt8d2l5l 3b)bttbjm} ϞSvGH)")mO֌ㄢA qyvB:=#g͇ oqS|TNz^8y G'4Rx溌vOkZ2+y?~x{)s=K'J>iTEdVE5q:]O?\bWq']1$^NvJMpI7'K$XL)Ex=HcÍp> ah񡀛ߊ022 mXկH=ވ[+h)k/EˊH>҄8)&e@7 }D@rpd ?\994C~ެ󖹏6R bU>L#u7B$ݾxH}FWϡ;;1eۄQ)f8?gIv rSڀY40]+8 :;@UXnPwK#oPmqvVUFdja_g&͈))sڞr򣮖 p;%L|=9 mǏPHpWT"#Il 4ߗHIoBF XXGV$f.=҅W?kƤeerZ䲞Ѕsb0V$s!h=UK2qPU4x$LE$gr/–,3J6%Q𿰢bjOE X6B_D/HXR.12sDd^tiX97)͂̓2a7VfQc}G̿&KnO3(~ .1Y^P , | .*žq)gUZ)UQ"\58yt5.Zx2Y0c8 VOls>i}8K[7`7nie4ޤ;"Ʈ%Bf^e~*"-?ذ^=ngڑHXގ%nJcХ}0L讜.HhR+2|IzIi)˅|Y8r_r22st=|:2 xgGutMVюt;4n?]a\\/HV#EjnORAȻ+X+L=DkbQ )@$dFJ>{]z [ w}`ݷtVlaK>9ZTlIPցo@kP6<R2/5O 1I0 O23.;(rTa㼌{:CEfxg6J"XM3 XO}BSP&;VLtx8N~#FesǕ,]?i;?nu2 7SW+̶wd\o~Rސs^=>?QX$J{ ᾶ!4\d8pcHIfrP1j vY_r&#D)Ǟcǂ傄c򯵲ư>4İf ?ᜱP_ͣUAZosR- RF|^)TMZ `o q1NN (usuWwzܬyLک"> g{]-_3zئbeяW{@m5T` f 0!oMT=뻈-xaI2[ZĖbl`W24czJ z|e=OVm"2b m:9hEti 8#T4z!@fLfЃBsStgm/ nD T6 -? aAMf(*H㈗Szd⼊5a([3zRxk}mh`epn `ϓL:-]-zۓTr`yVmQ ذϰބ$2vRh5 3Y8FlZ"> [u17DCEF=QjD޿L.xOn~D>/--gl eL0Wnw |?lMuw?8BGt~vho r{&9sp8kT0/Bsd@P.h\hPݼZ)r f f{gYR4[ ٕ~gEx(":2R C-b~y;N\w& hv!jqE. Y۩ ±;P-ԨQ֧p'9 ]kl2[^CYSȷ 0E9WNw'p!" 13•abW_l<yKmؑ {"<)dGZ^6DIͽ,{x  # P3sGp8fn%zeyAn6!"6Dq$&G_2QI#eVzTNt O xY'>Nu:dbhcj df}S}$Op@?T'Nޒ*ΩH ?"{R&OUYgt}uy7˥=>AS#Y.Rm{4/[.6_zRrF ;[2`W1ԡ\ajY4; }| 산 ạ?]>i6s>8"&?+-dWiPWhp7Y3@n^KAZٚRU@\F*5t ~C cNhsCQH}&!$}ӷ$>JQG?,L"\=+9>Y 丧jJZ_ahv %uԞϩgT\וGnuo㎳x8ЬHy,W?>?|"a҃5!9?^UYJ($ir-8|Zxo/%N67EW|->-2G$O"EY4W2ux\/QmlʜNd°d `>it7DO*Oĉ*o2PWc5ՓY`t,TྫEyȳz+{{'O+]ikQHL<$uWgC5  d]1CvguK_e+鼖Vwə5ekyF`{ULɖ2:!}w%VvpԺڮ6c]c! x0cyDە\j祐,1,`o眖Ot:A?MoK!M ]BJD!g bܯCԾ?0N,kywr&Ct-WkOMS4]BW[*Bz };e"yoMe|ta@x,-:sW8quC, ߢ)O >C}|?_{{ªlg~xrgMf+ "$#!WQ1QA}ⲈXEu CJN9[[Bm1ޖ2=5 Ry I[-?2m@ĸG(GZ'D3C2-k*CI, )~saf+`"˾l^P?%lfnx .ɠxUl-$Κ_ i@pu"QQad+l"VQ"hj.Fп5 4sw"ɶC"bKE0VY\Г#C Q%YQPTtBfv]b|Zi%%a0g%`MKL49x\B(Z)a ]HAʧv#|y*mdDfڀQzOVxF;6M+wc%M.z1|Z>Z&L7}E ogj%e[qch 7iK*ܙX=REI߇BHQ q**p}5n;.͠Qq(y5*V K`ƠY_yG#4GsLuxV $ ( tri@__MيOQOkbD_dm⌅L?!4ހ/2ޝ5Ҝ^3AA^aM={r%۳ij,rc\Nt^;=nB7MNme)\TcSѻ;J8[T? [(_+m\n=\a0@C>}3{l4c,!O_KݑT5!!N!Nd'O}D@=R_yt1w+m| 8k ^>̰lqRk#,tNcC[*3KǏ^{tMW4W&@TcSw%Qb6|c!Ht~Z߹vE V&|.ENj[xj\i{E'fD69__⚊S r>DbVBĭ%,'&喎3YQQm4EPҟ"c-Lr;ЀqQr+:˙GHRj~!`/6MȽu. W}UP}'.'.VL@@a4dj~:BU0\gኽi[<e|몍iy8Wzh"Gx*J8J^53'Dв`>>3{w4FN["-oHP? -JaZ P$3U*<#@Nya#&|K?`̓=Ud IJ( gGq7Ld;Ks=F}𨢅oIT"NOx;r㒀6=X<2UzRW$ڳ~DY,6WCû<3'#_Y/G,`V鿛:$9B?_M)^v * Yn$ROoec"]ErXmq-[&'T9)pXcb̾D5`ءjY-Qd2 ' aJ"S*D_iX`qkUx/u ~j!Ѫ/F)M 8?!?4?vax=- q{l;w`.na{&sudC^#D a v1yUf*AcrVoG Y`oLԡ(4޿J I r/Eχ"Dt;Vj pz 2c*] 'ܚ,6k40QT/_Ȕcq"aWy(: ȣ(>ҔFKOmXcL%Zus JJjwBfӂRxP-? ƍi #jΑ5g"]rd$Uv '}JEz{L/8J`M{RG[3?mĖ)$n(swpk`q?WlWיF ,OYV0=Ѷ=0CT[j~uћDG TWA-o9=f s^B`vf)oBO:)zլąsTϐ9yk[mdP!@Vn#^P ؛28&FQV3BCՏk[§A_99*~'7g&Vݶh~3dl"鶋U(1]2cB2lȸ#ԗkv [0mI% ZբOżZ*>\}4iP״/iE{2lv]qNs_ƪ;tEgmOPrMC(|^os2y<vb?VHuҐ_̀x ^4@+ R礲.<#=`YN K.2xCf.q(vBj:hWqVN%L{WzB&+&wv YlN_phRGy#<+:=B~4+RTd?W-_jncv'I1"(#ֲ@ zsw(קT$F :R4QZ[p7>,jZ(ELsn|gdL~0tx=j8fxWI2iȭ]&P+~3^\oG6P`N14SCA>?@|)垮J5^HrT 1DZ`\Y7m@4X8<ȶVAuEzu<ȹ f|Y$k' e|8zSB&>6ʆ¨$XE"j9Yf yz>M|@ē* _&mfL.fB9Պ$~Ս_)LfpƂ!/Q'o\xC|$ŵV19N067ejxI?@vn]S}I`_p@= ȉ.Z۳ǎyWBE޳JmY/:/p<_4i9K I~9xeӟ4U*aXl]Fvs_/hU^k7ϛ͇5y]VBQ; jZꉻu7J6bjUW yhKB1ǃQs躵/R:D5L/a$܋JʦD&04'7Ҁ?&>[gG@ 膨6: }o ~\Ua0ra@FQfns#>wJoC- yBڗ?ޝkC\#Ԡ(55<6p]7˕UO] 4ӋOG "0V6Ԛ YiIKzVkN\s R.>%E@ ~:4kDRZH9eqR?XU|ǐUĶxεu^ "@HHD#c$I/_k^lǛx{^ױGFCS3yȸِ"(ݜe"?.uZU?U4|`J y-}|1')/RG->6kJa<^#첌/~ f51igGx]"|t ј)S*[]$\ pw%fC"}& E'bu}P#MO%$y*!`S-5(^a"#6XggfDt^` - s&kDZllFc|6׈9d|C_Pŧu}RpR!o* jto1q11}%4+=[>eG/gR$Yl"ȽrʬJQ8ev cj*W{3Kwop3rxyqr&c&rA&VAJ3K(.Um?߀r*<}:)Q<57#5Ng(q/yijFL'H4e < X:, o^Җx8X 83gGO%Y\ 2Rd 9!͒F'C*ˆ@m#ݘ|(OY D0i> 4GPﯾX)i I_fI˳^)b * lv{_PѺ2p|w"6dJc*=۳v )2G2 (,tA 8!w5S$hЧ-{0PePau CVFTKٿ}rv*1Qs(Ů?^͒ӬJ%''Q6)=ܭ($@[9,RyY˶I~pb /Eb3 o+\LdWOR"6zCÃFggDQԿ})=`*Ē@=<ܬ=şBfl܆cQQ\WTՠAv`A)ACEb "'PNdK2C_Ni}GYLfn JK O ,ĕ?;K~KZ rOeU b?(lAo%a̿,F  =Z!F }(Iº/~VLbH.g;DIve0Qʎ;Ιd&+ݲHgcRo?N80@fZg'Qif.uCŁ?s |Cr_x YbнXK<6P՟ݗ&^rn Kx4$Wq\A,D9Bdo/~F:/jsMEΏk& ,<% izۣ#֥*m2 k{}NAPޘ$))8Q)Am^kKL?[4%8&f$DVCx? @@z0G7%\!ŗgG1"Z h Aо8NAt|d9*2};-Sn(ΌU[bRen֘䄕gNaeqšE ~dcǑ.,&aa&3&&*OBܴ=@b_$R9$)HLp07C:"Vvq=uB|DlZMJ} ibrdytxPF.7 pש j:ys(5ׂ'\f%$`7RXn֮۹]& waX1upC)rH >)ُ&i=& 1DϗhrY+/S*pp{VyK"TnXQ}dGAb;ڄ51ydg6Q&pgRUʶ?zD`lc Ń!vEixʩhA/eÂ3 YϺ?Jʅ"$SBZ?$ٗkadjr@O.sCZ+d\fj>Ιb[l|v8GHaVN45Ҩ5vi^;l΢}l26ZVHV|h"u:xY/5ы[gXA &cጷ&c0+$ĖU:$ 93da[51^a$vr<~Xߝx/8RE-ď|Om^^nmU5RvXSkwI WuZMLl12kc8#ضZ[ϔ=¡y Ydz;wOD wNm?l/z;f̽<$ߢ'1D U T)T0@H1]#]g=7M_J{ғ%b2EX7.ZL4h1Z5˺fh;a/lD9%{i&t^U7GBTt^؋fNJ~޿Ps{X3Gs,n#?z?wϕ.]!+uV\suBr W#Цڣsr+`k]طC-SdDzĨ68J6z}oh<F>dYMB\I ϓ& igQEqsgLZ^Kyr9.Xyʓ7L(U (T,px|8ۧm.r&>NB3cnncnC[08c ʺ%t-d,Z"FN@&tpnN:E V\)SK"UF((qYizy*PImqډh!xq2+d~3IeƪHNc->"ܱiʽ[,﨣b+.oG%ӽ&f(E'-8d*Kf!~LNTA%Ȫt $ \|mR3LV`_cm><Y;IO1-,]k9nKD y4rhL!5mPAEXAA M<Y81k\27U]21[%0! oـ^QOdUD&2IÃͥVvT"Sٕu6:C477U:s,Om!KrhylX| hB*iH!:T# <Z؎Ew2ݏ L{]Z,j3ېVi,P͜4?p.a*T >^qծ*mvv0j6OGM3r+y`DϞr.Vlc呂 O,m7VQWЮ2!Zue:ܤfW@ѡc1>[GV6߈Q m̨5,.UQ5G3<ՋIoZː@׳VCAQ`mDž&zc6 `GbaP(Y>"tɃ1|Y11.OtjϠv:=9{G7qsbvwwrb#z]ķDiJ>ځC3W1Yx=Q,c' :Crͣ |(Ҽb/8se3:+iλνw$9OLHb`u<'ZJ|)P9Hych=o:dZJE.}T4Trbq^ɚ3 pojz:TYo,|}kVbd' ‚F[B1þ{ѓcv(UmV8nv뻁dsEdI/t:WUKzy}*FPԲ #7g/ۖ 7J4FNܔվ˝B/r=8jf}㣞 - u"  gO3fdH_:SZM@ Cl\~mi 803_>-DgZVb#9RȽшevz;{6e,>̋MsE7[:y̡ˆ. RAAȥ͍({uV+ݺ Η[ݘ@mѼ<A3^{m/-s[ˡO : If8TS[6ҫv4䂐"l9{r4ز.EҡancDbK˞t"vTpڳmb6G,'qu2XI@39l"R;OSaI脱/U(U^xLnU/k-U.|RK&`"ҿ.H9>"1,/QjNyӶgي>!)Rg+5^'ыq#A60dۥ,E, 9аssW_ykWaٴ႟h,EB ̜8CKƌK ΄(̬31y~ p6A.cbP,>;[hVQ+\2{}yk΂mH8. q_fJ@F 3֔ۯ- p^4&F{Nk8ud`(V CǎY+!hz]6y&`C^I\Kgyv޴7/sD0F*y&DI(hϑYTt4IJ{ tţTE=$p(R#F`ڷ=B #LrG&> xHeU2݇yOj|]Y‘uRyؾEƩ| ,)u?Lx|CVw;*26qvj!=NT %~zT„˛鬐p.^crBZݱ&Fe)v(7 w|Zv3]-aH/!ʜOi?5Þ7NC(RᱯG3AL7.G˨ѭQ3_X6LơQe4/yك^ ܢvlhH}d })W>e\=!!` (H9%SX;jЯM_:Ãn t 6o4LxI{xalX}yk% K+K=UGw c #XLVh$k)E9gAY6 p&'ͬ*G|Yj{юRC01N |!8UJYk@vϒ|P_i>iܨ%e@x^!Q {:iNoK鼩7"* ;I[U+-é#ݖ% T͸LZ JWEDzX({}=w-MYwźq9\S#1JYXzV[[ǹޙ Mȉy`Э{& BODWrLDPtXp\Lf}Q?PC뻵`"uATh *[D\nyVfUNJ/`'!k eb9fFmeHycLL+!ԪAW}\dΘN +;ӳa%_DF1u/UXP%_m ;:j _L&J_VGp.:%#^k/6"c"!tqŐ$3lS.?ުNy)y Jܥr?p>0;=UE{GMrIZKIK^f=\Ŷ8P$݆ Uk=;q {s/;xZeE8~µ3ݨ^2^r|ߢO8y5.cSL~͌1PdumBgOuyC2aȸPYdH笟z$.dӞLV$!7'$\d?YdeTөN"<e\A̍~\!%m&sգ[{f :KhIݜLZGd GI¤ (V:ԴkuL9ʾTKjJ"9asY.h5퍈)ӶEm.U!>c)&O>s |EmdD![qˆZߔ@Ad!C;D\FR59D G|bvŵkkG+n{!R3|Q:Cn#1* ^BF|sE±^VD^`/^'DVSMmNJ$EQ۳%\8&BlB~"D!@jrA|1PS=Yږ*0Nl}cuhV~~$H*Hgÿ)eQTx8GMg)@\s!y*9 8쉥+Fe0?݅J XJg>,?]5۫o7ǘ5@,VMyQ @5jG W# )zd;uizlYvj5w*,$@*h EDzư}"XAũ̿ղ|Ao]ZL<qg&z'O2 N8)W8Z7imoEVHĿ(=Ft`Nvrn va/KA Hc\ RWl@Zgm1#dl 19@•y+ZVܝ3^N3TMD|^ 3 P4/ʎIU!>/9fɨ \OHM 5`$֔UFM&An_a1UЙ8C͇#'`^/J B)*4XL*{,ok=ָՇTFbN%KNDg&!\p{ hȋŴ۪5I֞3f 0d3 CZkcJ⌦ĠIGyUTf ^c`݅Ar·AYX)η<=?6nVZW8^ye><5w|h1 3y /aN^wփ u{2W@0@?3?f1QIL3CtN4s6ήlk+نIx:2@@{P\VJs/Ѽ` =gxQ7h: f,XR;4YqVXM4$Fe%>ܽ?HU ?>G $n\mN4.:gbC{^n Dpl@v&~)x^9zSj۫wHBG2hUĔ]2䊕2_Toi0˭ fCpꫝǤT^Yh{Kc'@fW*~YDPQڀe?~y4/MWH`dQ2]a$%E­1BS9QqLMT|+xH,9E.r9_|(!uY4#|&j;5fcJT@hm5x}mawY ӔwkՈƲ"?WC֒@$XX˩E"ԊODqdy@ycK̍b=8ã*h m͓CU$pcQ=1%S_e`DkXxK9gۘ(L0vpc"[T)$ ;ȓ_˗ꪂ`;nu%w?^}4|]45}0ouX`Gh{Yt(2^F[Κ@eޏ0>_r!`j[EԬ9E4] Ҹ<-JmTranMƵ ^9ԕO^AVȉV% :dm {Csw>8cpa7!fZtmWp;%Rrc!'"㝧cssd.s:ap #7aڈxNk?i˻mַl-|elۓrL4m$DFZf rj^߀+{~ݽeE߄#f,#2[ZтD,].V Ȳi6JU ̙[8!}0_L]@٨K`\Ň˚]̂Qȑ#&嫶W Q\RTv| PPiAU_y$)Z3 Y H2mEd4Jxfj@ݲ[5o<2~ g֡,-֐d [dY\ <[ ɂU|G k#GTb̒[}QK8{MsxqҨ7)lzs~}p0qsmMB좶ol>,kem cdCF.nձn|k0+Kv"ϲ鹌}7FByevb%~;+eR{Yܛ~\ͮ^jrsZt$faњ:rKat3+~2 ˋC;__k],tw?*a6'*35uGJ޺V=||J_;}t͒Ĝ7մjQ*B._.q$l>a՘CC01N:%>wdtث( <Îgf%0$mֳyGX\(WaE(F֟a||M]ICZu@ O")-jߖv:i%?DĂNbTsVh|RnyߩI0=]+CXjS0U z;H`+PA[H|t$6yq鬽nao\p>'+zl@WrB<:6ʎNV1hhDUxH @Z*0"ޭ+O◰Whπkk<{J6 ")Á⧌~MZV^|& L jCrGfj9M&ӫ&Oo34_o|a%`YAO7I/,B~t (&ƪv˓ޮW&!<WY5?9»uR.'I8Z: u_Pk:.u"po@U6lc6 r̥ 'vmghǢdj3ISM [5@1[Qr8WT[Q,I: zdĢ<84#'Cc/beu!ox5멉ÿڹƼ1p|Uiս~JKWm<߉*xڃ9-bx/ ą8ɯw釪=#, gb]7Dvt߈ĦDR o?,!b إ [HǤRJ=1o?dHHQˁh+(Qsh4LKsGrWWߘʙBYxLEa0UlӬsABxO(XUOBUA{KHy#M Xc aq>+K}B{)jJ1fo+)Rai'vXi\3븷9)8M,W!1bq.Y菜ݬ8}{c8+tk)zj9:Q~Dј އP\ä}]#Y:A9n3zyϖr9b&ύ "%i>Itt;vy~ow@Xb QVGdf%P)+_?"l)pmUMp8ZW? ٚ4ƙC"R|_z K,@Ѿ#Th/mыv@3WC> ۓPT*.DGN΅e)ޜE> *p 7M_Sy1@D N+zE&) Tk1 n Z<͞VC{\>p<z)Yf K.M,vw&Q3m4cwJ/v*1q˯ͭaȉ5J"S ws}` 0?~%3AtM㍼4C/UV!61;P,G$m_':bBU(L &=2v݊"s$!4ءŔI-uin P#%\!M .f<<7kKQ4;ޮ}26 8@c*7ߞ.UpVpƥ|btJNh)I/h}jLq/1œ(S =5 ,l`</g*INpȸM5͖.Pw ng݊>vrwעt T4{Rԧ?~{.γc0eMJl`% S\D C]J?ɱblQcOåjU D27"/ĻicJsEڎU3nbtCSS 8fɮ.-K{%(e^_…ߵ2^V5P`BmxX{}r()OB3\cf`O| (e3sPP|B9l~iIh\'[? ~ Q!=dbA,\b|jz^.|QgM)iջ,U/.(MZs<ڈ!edDE-Uh9BvNFY0=:%*1~ʶo)IӻcnD+X/<($鈊_ \Oڊ|N/n:5&/W mz*Ixj9CQ>sun^m+T @Vr$C^+dBN[ʔ%m6$ɭӴ!i GFK<0 wQΪ4Dkܵg-dSqp:Bo\{i7r!5-1zY6mXG^_.D7B+NWS;fui=BUV$>Dֈqgxeǯ"<ϭHbmhrwWLAÅzۘw+8j08G|@,>i;La24Uξ-š1`b(_G؜>X|Fl;k̐8/j$4,O.l1A( k'lMXnh*!߫%6\.nj}z/k2/8^?ʉF7%As0krQAzh+rbX׆,D9^x,xmgq2޳^7ޥDGFFmi -DJ%XP2H:|8DcMBG@FxDs"/nX Y͸6$5.gO^~}  Ӝ[spLt`\TF\ym ,kBm\_$;?Ƨ<OD/|}ݰK oFk]q7M`ri,.fW*MJb?tTƪςd5vCWLYBY%?3eyz6B'3j֋Q[߯ `A(bKUk YG!*;/ yP e:S_"~ߖ'gdU"js1=,\PWtɴQLjA,>]hDҐf< Ԡxc1vJa!w"3Qmw^׭(1pF@A OAo&MNp[+P6ph)jL>*kð#wH^/i-,%9Nu6jyfU%{U^ ׯM+ +9=Sߚgp[Mͫ9[h6v BB=Eۄwg3%(ё$:{q+rA`O/ڪСh2k=n J9mb"5 aZ 4nXICWuEs)[ʴ;ѐ:Gx}i/Ve{7t40_12|ؚy FC{aí= 9N 2TKvE8M\SFTJ 1=&|p)X[$S@cCe'1>X )ns`HH@ġ `azks$lmX8yabukAyvǙDE5[̈́R׳;8NQgH2.fp6.r2$wa˟a̸MbMwcx+`fG)#խbu^3VE>JYb$B{!5AuoT ڰ~|E7  frҐ"kcǨ>~7Ҕ9Rեk䅬"pnu&v/t]C]Si!ATw3kґj/_¥q?p}:KRYIq_c4p]N$X)B;ՏxȆ;;$8HUURl+@I]r1#Fـ{,JC \{d!#~a^`]>D4M_c5ȋ"uf{;jX${5  ;h/?SVFT[;<{&^F<@ȶsă]oƻ@Cb{W5!­JP `e^Y|fCwwy 9+T-dh1_57(Dfpt٤+b烀_kVw화xc4hQ>?+/?fKZe>=)R%7V7UK=4⋅{J];O! nғFοMB`Ax&>M:,P{DUaKVݡF;ztHXw#sGYc[16?5xWDzwjvD$Iśbb_P6B$oM̵;[gZ&Cg%T)DܡZmF}= $qvt p1[߭xm;ooO H{4짪C+2S똅- ;a.aI Xokk$[6&9s< aee'VN7,Ee~1˶CYODzcV\(|eu(zOgA4%. ~@S̉2YwV i=i # ۏS%Wϴ|Uq0BFŌU[Rj#Gvo(ڃ}}y c1LtrK`> fVЊq/K X\DŖ'-1W'2^x#—ނ)v-{dF+q-uG*}ϋ1 ~o؛siX.GGְb! c>  eJ9atc-{ CD͟PuJ:"$\x;LDE ւ# #R^YTٮ" WA6Y(;kw4&kco~TCjUp;lJUBbS{S0 ɞjrb0*|47rJkojNQ|\Vo,Tzj< `z7*3koRyjW pQJщfX,{s S'crrؽ)=V"LHy;;sh!=K.ma2T ,p,4rcWx=:nڝTxZ-N@ ycKl"BT&|kX8TcN.8aTοiR83t{llˤAYs%x C9em*球Zћ"Lj\ku&B{/Bsx>lP3B]#^(ވ_b:v!&9D"*!eAy`ɣλ/9X+"LoL4#dV8^u^ix2?f ~ )3oftn rmz&h'ESW *$T֠/,a$)?= r880".;1(".*ᇎse^>y:b%;Jt -}C2;A(E4kk.L8Ҋi=EzuE JҞ~#7,SHLt6kTyrcP, X!^۔yQ\O*ϗѸ\F(f[Q͌ÉP t1UF>*B&.M"a{yIt!zӒ:K"Rv%X*=8N"SbSu}#z'5 ypGߊozS^i3:?Ypi<_Ib/Ώy$Alp{ǷN?joYV|F!Iw۲U a7@M+7`V4}zQ5a!r,_6u/e)Dwa}3p `l}.hӦ"tqeb|n>S^ 2L=LHo%+(s:-hCUu>Cs''yg5&e_F]Agc՛xdoLww$2[J,K~b M?0oL!Cm˗JmK,vyɽ!])oUW O}ې54H`$D~{wUp͘3-Rm}ڋIIX dDu] 4M/A%kxbQ~dѼ5MַGd MVo+O^ZvǏtA:lABW_ g='-j:Rb ֙%tgWZ^}Tkf̔JS*{AU%LN![לƷP49iWzsn<,?h֊B5y?0qo(tf?a-r#usjtQNnLz}r_=lJ Ym|0C8]8oIAe6E v4 {qO> 50넽w)7K@ШNƯKQ&4_vg*lUÁ"8k=I`.Bui ZMcYm2V>x,Fk7/uB0diQ.4}^>Pp,t7&}q&yHp26>دav©̲G7=kGŁdu19'0{Ts[l&ƅ.19 к? cgLM7(k;[叢xwX SdֺJC5ʢ|7 3kTM  Or'f$}bn&iyX^ Knp*~?6&r]R|Ȩ"fds>&HEÄu< ~eV]RQM8[LQ#M|>Bi\ִ~Uk0$n^!x-}tl{h.M F]Q>2M&]BR{}^FƓғJ4)χHGgkR KZN9 rJLY>S Ҭi%vܢ;+t*69Kϔʚ8sn,h:/AtejdzⒺRh gOdCj=UU⩫U9, j/oX]z'I{_j(l1(rV j\Jtۛ'PheY#PCm=%ER/y-Z &bⰜ.^`B"wK!a.u)8tAO?o2uypqPK j#տ*ZQVtFkۨ\c$59E%,NZ)pOaOhoI@=:?{#O{H,E)lR;04Q~|>2lj鼟y] B’ F a7GAʔSV =',b3~l ڶ\|׎KKd`Z?k(I`yZI~؅-*A%$-pl.Vdpy5\ȧPEvXo=z-|J!v|ܴƿWp\uMaȃz<$( e/o5|gjY\4(Ydjx<V?斶)~ʗDF'\$jNXϿW޼{`$G 6Yf|Mw,'v&Jdͨ1c&&)#+DVFy\@QGyhig<% ox`-%x;GY.'$I$&cT'V$י`^'N5"I=0acq[R[NNul_4AA#p/Var{`}/Kh2% ƙmT_6).8;.w4'WIgu?A OtbyzDI1%჋8iN׻.PLevvvhmZ|ڪ%8AeL1qp w^M FYw(!/´N+0GX 컪 F+ $Ud+]Ax5~;9viKu:\ӂӽKA+>zZ2S,v 9w\8f= bk"1w#,}UN;)D? )AuiŞ 6 IE٤~Kת]LFN~VɅX ڑW H meH#+f pjiV>l34q8 3-WԲyɓv`[Mp#@oZ>?Z3COWԛʬ/q0l_(qb%?i 9mN,}jp|}2ME򓠢$ V"Ӏl~zrmSqWXlWCTtv"V ~QH0WyT_RO]T/>ҍy#ki2+'dߦQ o5f_/kG6gү4@/@Gk)Mg҈*#:e[)BXN9 @J@R *C'`z9, @~N-5Qx@}_;g3p cIG<%zcmM"O\U{b)f>1^raJHl|9`ΟFOo4|PNwnV"o.OGÈѱ1z-,RrM#d"H?cKkӬ}퀸f1N6VjC|Yp΄|hq'n!O ?ׇU5[9[c(ȿ+8ݝOylݎJǪpFOG!kݚ5}ӽ Q gDDzlDLɘ5:~w9ZUy06AΣ=a %̈o\^铯SM;Sdkqnl(kjl 6pV 꾇?٫/u0<)uqb1P4T)m2SV=)دO xsD;@p':\,0^"~ Ip2x:^*Al{"Ţ={YזIf-v!X6P`NJH+z]$.*ձYp5%;TPi`j(G-{{ %QMvKt͒J4:.2%| N"Sjj&6Yb=ח2pd) ^_aчF%==F qY+;yh- tR]jFBsǁeNŎ^YkUz>= G)amCҁJWe@xM~Un#З]6BL)ᬸ&[w5ŏGYE2LvrDQ5Wfl@zFn\{=DD>Z^; iD90!҆$'Щ+ATD+Ph0f5ﱡd>+6KFw')=? !02&)E)zQpp < "at I\Q-BC4^z􋘁^zds2 ґ2)JKKiqE -͟Gڜk.jE6g" LRnRrC7d1 oP1J%&K(@8D&Gkr6zC-d&S7=MLS6OE'-.A%kYs lٲmD[ȣEp x5Q? ?1"Ipښh&`qUW' '^1Ŵ\Y SjW kl~PLu7뤽%` n\2qdOtD3g'nъ 5l'C0;>X7!SƘSD 8áyU5@ȟrXZ8H@,)H\3)zUE \ϡG#(eU״uc yqCۖ8@$\Ig˰_7܆+A-lIz_:} 7[UXPO8 4&D>NãA7?s=$QrP2c6|C>X\ D zYl`YѕOOuŁMz*H>}:5WIO~}LCĽ [baƪ=H%k'*YEr%&o4HDɼy%w~?=_F:Fo+ܛZzU9 Q@;OT2ǔOjj i-jPQ'حfֹ ]m故.,(kL Gc2.ЃgG@e7rxDXq٭0CKةc}u{'j9rGuv Ri\tO9֮z7ˮtxt RFG!]2&sG"*w Q~Qk7HN-ak %̊/*s\`+Arl01u}(Sle4&S{3{y&#x 0`Z=!: &~B)3s3nK0TTs%֐x>V$Jx; w^>Jm*0{֨|=(ӛOkqS~ȱpmߜA'/czg cÄ5բݫ=:DnO_ؓ(`<`V" RX[5w[#RHl*[dǢvM vQ]6'1G*m9ɋ:j_QDVdl%|GZqTEo?jIJƟSJA`ψTW*2Ko>kr޻z'nuRS>=ls:s:'4 `AF%$@ERxjgqr>j~}ˊziY%7mq4G`"W.g㘨~M%'@*2S,b@cG{%p۸n ѿitlBw. If@z0>;&٦жP;tg.=]ӬF֘G"_"+%\:,QeehQzv#lĻ@G\y;4"5s{ ʉr~-0b)6G_>GuN&"/‘ctu>)5db^NÁ@-PK~94;ʕ?,kg78~ّo&bFoϕV$3.*)1˽84/5K]'؆˖l,8գh"#(B3+[B'O O"8넶NDD%HA..,(D+9oD1='\,WF!V \0N(1XA$0>:oHdA= !6MK|}Rָr0V tﺝf*chZ\N,E|nZ3X鮵1"a4ӗtV{)"k*9!fRCe7^A /PxqcqRxv!0hF/".y\ FuJXNa#!EGOJr%C| j5yfJPJ>HïWiO(=FaCJJBWdÚ!@&İ?5#.UNL& 'i]pNM4ݟϙeJ)"CzWKc 1_hIk[ڵ.G%@}% d80=1Nc^f+>&0|WZ4#+]-# /H?"q AOuFߟx =}lG56ho8qt]rKlkriGT4~vul6һ΀v#lS)N9|aǪ.ܺ* f;}l @,avA( Cof[>]ڀNAz%;}zFlKL}MW*=l &^n޽nV[`M}F[8+)~ĖDrJ%pfӪZV&pU)%|i3uἋ7~ ->ݶEpaosyMM<;^HϷ۰,)S3ƌ <ڰ2dիH-ƵR!dEWZFfX<ʏC? a|gt@=>.o!wTkѤ/3 iN5Z^zeIa&3(=# xXs12⸋I)B~GMWð:mAw9#5UOZf?)NF4e<&/u&#YH Z Kvf|B*WAZ\. 6/;`tloE >sg8qS߶J䭙tMJqrn=$ :+tqF*YmtBV`BԺR2tLĘr@\ :l+ZIASCi̎HwVK9m{1i X8Y"P(ps̲!JVmc.*xe[5s%Z"dtyw/_\O'3ۥ/=u+LUD2#2ԙjpu s&wD}DHF5.m'tDUZ8oQ˽[qA7xЙ]In&6ueԄnK< q#8kɈ݌x2y$*詣pLF0g0HNa KL,bv_c*Q |XUUGX\=?gwxI9{P;ᄂ'}2#ث&ぜَ8 |~6E ٺvtYaPTĭ!^+_uLg~^on,R7)5 p:||sz0iIB1nqcUJ`JDEK -=~PK o.J0n?U+;G=tJ46NO`޹gΐȺ>rj0}40S2\{%$U 71im`_Zv3pۇ^X4'lu-BXL/03ˬX{1.'!qǖFRL15 9 ТFNz~oD@ѤX쮣 07ɸTqI]Fq)(p$" enژTgp>Pxy̸Feu&82IS)ΒY.Y8 Wzx qư[ ?R?'@t3ǣ~Ӓe ?[-It7/eQ` x $xIq)aqHq[˄d`o{g.aB* 4DooeR{wJ2ĺ+) \¥N +GM%$9-Ht=':W.8Lt t1F Ԣ'Y} lɶyM d "ҼVsÅIxXF3 ҪU>b%|c 5MitdMwiDS/+2raVA eFa(Ķ1I9ii8mNPBItyK~iTA)=uJ`X_0IJ5h e0/i/kwTPneX"[!{#7OH 1~Yxn?`GLurdV7 /FP@d?g5?$rQ(' d`h;F[HO4"s?~k\Dׇf!k-5 %U *u Oywx!%oR xW84T3)4H`{HLArAIl]N WDL$a{i ktQ~/J< q_K㞆XO}Lbk%Iɸ 8qK]yƅ}nի}օaء/C(=.xv߱HKщэW R'RFDP[> m&%g>q-RaoՃyU,ZcC+z;"f,yQB?F$3Nj/?KS@ԈKXiMPoUC 3ɴןd06@~UUk/5jsp˴HL,]C/y2 T{Vm`u:\m%:w`q!'s!\#Q>|ED4,-%/>?ԹS'a4nx=Z]/{˶-#FbE)Xݫ8~Y=*ՅiEJ TÙ0漗G0E!G:z+:HXiDibET:VbWuat أC{U)9@R0< ; {y:ZĄ4;UK&PZ쬽猌+G.oǼGvp{O=חCH{'\/o[@ 7Tee)늒eKї٬bCvk57{o jǛ#ŁQA630 @4yeTLR;||☸FЂ;o~蛻ޓhH[);*L#Ũ;NOQRH_'bǢ/r_qJS8ߢRBD՝LJ zV*?ϬOUCFg%Lj4}] Dz<'u 7tÙ[[_eMn$3O ,53XТ*#bhSdS2Z $OOa7$3nry j-OLґ;]mc6 xH#*OD?ikޑqkDwYY5iۣ#jlԲM@eDNpCqmݎ*H*Y C j܀Ho-ѽ6mCX1WW*H䪀5DtT ` H4M9."̠C|5:2g176V`QLQr煜 3OZ3Eg䖗っ1yd8 Xg$)9 |L86mr21D𼼪] 4n6r0Ea_IH ɍha.r:z ~p :-1{ّׅբJSwZ[pÝ]ɍ5B ffctRmjCL#dW~*(- uTwR&@otzNU0h#<:B/'*8o$/x V% Bw?Lc_kP* "'.(^*G6pakeܤ+WT٦ +Frt3D!GY6 I[-RPne0}Эcu qT|N3!oQ*UPE%C3p,̲6:dA(W%r ˸vLÓ$eD9iy!g,*sƙUڎX%R;1P^v) UW7ҴE] ?}ҊHL/tD)(y(0=&Q6z!m8>IDžǓ8ֽ^14 A9_ gp1݂Z47[TO>IEoN' ƚH&TjfdI |S"#XBi՛4|I5v3X%b].BY?>&o~&d>*P _ C'c٤2%q]BѶs3ݲCo6fHϜ1cbC=3[(Դ\A=(X<11a =XH{t*C-@Ұp33TLmK`sT_Q/!؋"̫' B7yB峵Ȥr ^08`9 U.=΀&t=iJ[ V nj"GLnKF24 rkE0BHAB)?4."h'/ʻ0Fc(]-sn8&M,=vD]"&89>N"e36lMi_.kq ph) Y3SO9ima'80FUGΉRAJ!3dKNZ3gĶZuxk?\#Oxߒ\@]ߓ9d#xL88BpUb tBrUܸr4c=2%1rcY%'n`sY+6[,ϵ[mպU{5DOQVhG_nj?yUyGde"Y7N d+pl|>ɾWLåZ 4`4OMzҋJ~n'vk @fZX#׽wD*7FT'w7`kX_|ni4N磁+2E싙S2"@l4Gn*iI;ǙK[xՇii`0{FγqIZoD|YWu:`pv:ܣ"ҳˡ8KhTܶ1k,qecַأ`O+QZ`&7puW-X nR~};H-GfzkW О}g:HE&:+#C^pde"F͓t~ʳ~-a{vTբY?q" Yxg$rAd zSf40}9zcЎ:B RT~ء0^ /J*_K"t |5)qDJ :#VQ\/6LZ)զwz41qouZj% ŊxHZwhji<U†% =EBNxjn|+:C6G xCG2 uzx DxD%Zx90t&CGPHP\rX;YSpZ LpI LuC;+Y(DQOP(:j&w}$6p/kc;7ݾ$T컪mϚV6[\4:bkb{488mșerZ6 Trw9kg ?9%G 7H>mqb& ,Ǭ_%Xk%,ZyHMq&;L>bCAf,bGJ܊2={9ibV3ʱ dSkϊjFI0*+Z;Ĉ[39* NݥG9:9Kup"e@lGn|Y`cNnKXXfk|(:\5/Y/xͱ_8jAPOq.7Gn?V/%=EH.z'gt|ʏH|Z3@}s%m4HGa54~+8ӧvFyVrמ荃N1`$uiڃqH")gޢKBq@o3g:_#˩=5tB8q7~ɛDoՊ஠c·tDRe ]W뻸zl :Ԫ=;&Q 92JmV6N[\e%k4?qrq"W#ldoéBُeC*X&{@!64jz_b-?,ݝ63("y% *hW-jf[uIUSb[Ӗ¸{fk_11bܙ(^޴ ;WfZI;9챥ev[ [e\}~5ՌpWbg "n13_kYc5@./>}(]gXm_~qj)TXv {P2dZm2YJvӍ$ ;{]B^]:ZƑ?;P\"# 8.IT{ՄrPQ'8\nVX}ĕ.BoaqfNM# J0lAn2)B|~`u?T#x(dGW,ʜھ}[6l>~Ш޻97M8+q 7=TѼ e0l4\;la( )؂; 7=c!O<&׾Q9{ l\l3!,jgº>vưďKNtD]I=IgP\aɪ5( w9R)bH-V {@N;D«Q٠)Ц^5YLߙڹ Q,) .+aS}[χ(-妀Ǒ%S|ms]7%G1!Rq n>LG; . ňp;*u~$% "i}%)ޞ7Z n'm$"$\O3zͷ7;Aγ㛵TY:VG 5 `&ʃsnd3=dȌk$Ѧ> L޾]gWx;SM}$Ӹ,4FI؀ZN9/Kϙ~Az-. T7|v,jnmxE% c|'|0rЬԹ'u[\MX=n..m!*8wf)AdaZmVXW8˺ln_ckA9z?RYqZQpOcT)a|soD5q&QHt32#dhӖ53 +ɈXϺSl !v1LN&NB%W 29!qYը*vН'ZNbvڵk7| 4qPh-CZPL#. 8J7TY<;d\1=bq"HdPt(q.$TRxvw2}L\KTءQZF!V Xc2bu}2k_/92.At)"L3J(ږY#lN8!2)fUjH 0 Ar*\ ~Ń@!voBSLFJ*970'dB]7ʘ.aEb)nٗTK~ K1{It};(6^"L3GTrv}[~i}=)a=+Khyf|K6"ղfIj?ɯWAtB!.|=o6H-?pכ'"|RFYjhh\,' Dƙѭ_H-׮XQA{D`5#wڽuV S$%v|DK$ajԛ;O W҆ϥm51 P;^mS}! J2qQ:P98Mu07Cq,ߣr9~/"e .R9 \Y:&V Yf9!iΆpP4i,K{#%b Q2}Q58,z|_iAƮ 1BܐUc3N!M)l` GKŵTӐzA0XW qǹ-\}SBYWᕙso+-OJ{&b:۫"dxuc 3GL{1".->mڦ,^[ rv /lW͈B ޻*>>ּ?Uѕ*rEbx5e;QN/K1o+mt2 0~+֒(|-,]R&DA"?dD(?&žDx}bLcՕZۘbA{IT̞d#QlIt]k*CUblɬmV{[ gtlxA=~|IKreaĊHQW{km@e*W/DHUh$mzN@ GW@kɓ456}!,U%Ht і'0'F7.L-y3flEM<:dMz! &qOUU:R`_8`C3Fda}S 6 k=uFfEIIW헂:@Y ZS=] B*P[\!@ckS7^/Bē#^t,Kk|}1r_ j115܌u@\C/(|9n]+BoU;Xea_2t=Q6|h$yb~?G&I?x4 *ǚaTf[u~?Sˤ[8^k 'DEfP`MWBnO<b9(%ƬF]&{Cf"3,Wbū@WgA;%rt ~k[}+,'NXe"'K|x|˭2bQʃ:˪8NkG":v5^Ҭ~7ers PZüB)L%2ӷТΫ/fcFy Át_'m[DD-%k8UuyUt/ˏLצfѬ*n9i쪐Ά3跆).%9J~uz#a7xY !"MtmeHJWN0.ד-ch=>|.jx QPop.3?N-DgIM|1byvo+0fP9CFRىJ 2M*#'ESJwY/OįWOXA;/iC;2h:+#Uw?cb7E[ %9$su,["j!_ٖOe3Vh#15#UKt ]1^dMF@%ȱ ]<>u J?bkJdPQ  xŤ?pmP Qv`FӔ/~ ma],6 9fL{ zO̓|M .; ;gގ0VL,K Y tIkhSAlS#m`EވnE AZW}COv?@,qhׯab1ֲϚS'<$^X˱|jPcP0йN[q /'x%EuBmOh^ptzW hpR3#kQ}:3'G $)CSE^t*p[,bJBM'Ig?ph~@0+sC3!h0UަV}22HBcCǠs-!7$/3򵤖%*"(@ 1 {Dkg.<>\|lzeuJ(05L(ٮ@I7V6o!PuKQxW'D/( $<g WV}ch g$Y @T^Y~_&o6VlS"T!}StIpvC֓pBlpZ\+jf9 ƾyzgu(Rښ3[q3Mn `"t6Pk3s﫪#i8wbUjskʦ Eo'^&N^!>?SFSR;K'ce^͉m)'/*4X?^S1|>#~`,]1:MSrŭ 7Z[,vWfDXءfM!f' &qb.̀çA9Wy[kRb.Rt` Ċ4z3:8N&2H]bq́ ѱl/%aQnP|D+ "BN ^CBgF`~*bkFѮ7T\(kE\wy^\ӹ|x,DF2ɵIuI:y. _,28/WakTcbtt˥!jTgBWC$=C:8 ~9qL 3ae%Y{nHJ U7UQ(s^f[ S dӀN\{Qzoŏ=.JDb#׈uc*]10 ıDmFH '@l,k݅.9`CE:J0^[/ s.~R^E.ekq؀8lm1F=h i᠒T<q48ܟ9WǮASFeM܂B%dΖb*ںY"ڲjK/h(#)Ntr(NQALz( )ptUZ$ eƥ5Ϯ'3Uy.48EžyvBtYmueY< y܎#Ner+c|Yz4f=FL!u[n>i͊rR_ K@V$d'-[^)X皻ǹTB T3ӴuL;j MwnK [FȤn(jp1#>yCE*Ä ]~~oϟ)U/֑2ycH -\W-LҢO֧hY(>g]kBrͰ) { bKÚ^01@c1QQܐTLVD6YXB<@Yi:@uj}u PX:,"P窨?X!|Zs<2/gݙ1*9ˉ b<8It{ɼi*D=$Uu&k6Gt/SiT2 o~aީII23|zj!wc+W4춰ŷkZ8P2)sIKy}hZxԼju- i=-BD8{AۺH> t =u94c 8Eɣ|`uW JFPaz0# 9Z )@䣣GUsGLhBlPݗUJ:L^:hs=h`.1~4q@,1c)(`q$,^Q:c%K~[@q_ed0t,ńZm;!'870cHRΛ%yȳi?ge`a_鐹-r7.7r\\ng9KU]0ԼMc_*4yNt$^Q͎\JkvhsZ18Wyº[.@IQCc5tM܀ΔBMF kپ V@GHxo5d&i;&#D՛p65MlZS|:,$ۯqF4OIWUW;թO{iZ2Mj鶦u!y:2e-J逐{GG ,  :Ժ^e;Bxϵ?{[FDl`tN@G}YP+S<,!z!)=8qul'6]Lj~ QJK3Jx4Ihήeۥ;:[0YkE5\x00;DBGD|\QZ_i$zu*AZu+KS ȍ1'}~NWB*tq^V!![_n2~*{CR7[4h쭬t90֋XfO\Pb{3JȈ>[ERJt@̚-1kV6k4e+r|-ƅ=jn3iz^eQI:sUg)0]2{V';dٟoD㤔8ƲrvHmAlY~? 6^!F? ZfeTW 8ot[;$'L: 짍P[-2Hh;&q R@0/gݠATO ފ}8Kh*VkŅ?Ji69(i.3,?VP3Xy\` HWj/~vt.~7wv6^D"1[ ް_iE,aĒ n9Zi$dn sqY$vtcsg~&5;mgO'Œ-grU6Y\C?`lu_f{/)s",a=9=Nz!H.C& p`) xd$)uA= ʌX0 X>rKMwOps!'Nv^Q~Oy5~w\/)Ur߶b։(Uegf]s+po+Gțlx+Fռh5^c?MH^}8yff6!Oٵ?PIjK2/h zUI[?]k|1Ad*N&!PgSMBɢ(EEG \ݵZ-r9Fg/7LC)?Ƅ.v^\7- WjR V49| >#Gޥ~%VW3}WUeLRy[~2\ >^RSLAer^*8CH~Cs^$^5-p qWK[G*ޠ*=lISSu1nf?7joǒ.3G$_03s K$*1,#k֣:4|=d FJ5'-, \3ÉAU*Ea.4D@g&~0Oz%Uxk䣼Qq*lE!r9 d/>U[ mNt?:|$xեs04FWLbd pM: GSlm;r|T Pn99D (6b()~<;';*"}oKJs {Fi-'~nwL,}`.ׇuEwjj`Y_}$%YQKUp+z4'({: ֗# =ozv%oƮMO!;M6`z·84e~^b[NY%aE͏,%-af=:Q9Tc 2((0Ur\I4Ja&7 ՉM2YffK-",[wQS8o5O3||_SVKϹ :בF?۪]s 6mjްxi_&6$ջ'3 kF%z14<;:+w^>\Sz 6 Q#Bτ|嗬B2jVTOt cdu&CJSf&6IrP ]F;&cԓ*r umŊe@&?$zqpUdWO}ϙMݕaVּt鯛4N (3v43EX: p ?8_ЄsC֜(2hձGo/JO &W$ 1]{5y(r zPϭɄ2:Ì0Ű3o 6Lg խҚx&1 s~6bƭ w-l?"zI]9?Ms85ϓÔN%&\~E0S^!I3ז3z$eB\}U0z%U三:<Ӝ>Ho<8 #,@w޶цќs a)rƎ6({e><QȠʴϠ5PnX{ݥ}AQo819kKS3l-FCRKPia+ȿWm;{3}[a0tRk#@0Jt>qW]^nLu&x%y>1oevdb^30p fN4',b:y@rI5:ESiLJͻm|h{E,Q"ٽ1yZnO#Be-ABc09%iYqa]H8 :P/HKW9O=Qul$μcylWIEq꨹^oC<r9N]{<`Zmiˊ0ق$28o¥niAUg/o]'&/o{R0i ֧ cL YTN7]l@!› }}Fӷ͋lt JuO-Vx& UCΨ7ES#ˠ3Smů:h ?;Шݸr.]_S)jxoߨw>FVtAI}9rFnَ=>TΣ˯ԛ Ewb-魛ODcNx' ׫Gi*WdYX@4G J,Żܑ-١~ʡ'7H4 &R[ }8) (GQvn0lb:$c],=7&h}O4 uWuBM 8nʈ}gDɳˣ*v q B,@|֖0 Ac6`ƻw kN]boG2c*ܐVuq-*cJ3܀!ri|!ͬsfj(}BAaZH ^{/\Q$^G5.%Mob5;DŽJ4\66|ڢy2jqRp25ERdQѻgh$s3rvÎLĎ쏜A)-Owd c+hvHICP?-++\Ȯ'MUE YlD%Ci3un yH1Z#z ҸA$&ǹ V`'`{2fJ]w' g<8)6 Qqb_[Zg9Ŏqʞ,̩Q3j* n~qFtFX|/-;&ǫ{w8s k ȶþU*ۉ_>U'~`c ,N<%A gV\:DGbr▃|"|߱slY}jx R`J"6<<`.Lbn'1w`b;iC[)П 'gZ2(;pB]GKU/ə0&ȡ5hzw!p(F/kVcRfԹ17AmGmG~a<,Ptp8A!c5]YN@VɜZ@=ix^,އ1%4DJǟ.1_$|n{_Pԓ)񷎾fuHŸɒSY.a2,X-^ X} +.<.:HA]䩝Z%k%+{|q!l^=Xn];cjDK,I9,5)`=)5V$^JS {BW?P]6}5H3-^ Ǟyw+]%ÈE)G6^uP5.,.__T!Gdy.,uV))u5xcȻrU`/$u75od#SF0~e f^arW-aqNG޿:^*eZ,6l9bDPEW"dIR);5U+W8<)A!妽7UB>J6{^;g޴?ABF'INpe~CzJu pȭ_uL3up;%|hZ_@)8{uh*ʧ>2ړ߃(zB+'Vd&q8N`}u?3dN(O~kNV(\@1#~Đo1F˜Aw+)|ڍJO! i?}>꟔5%`0SZ*Z\4@sq=cs+CN[ ;a⢀c iV7%?&6q(;eA#Ɩye VWJc&X.ǻ\:HVy~KIN/ǯ:Jgf/}_f@ϴ/h6f ~>snTO tm2Gܔ"]D]q9UA"je~Sߊ_̡#fO-> <%6HL1)й"v@VgpY6^0HćR piyY0bl[DS,҅];A(v\B\Cuti|@I PvTTo_4]O("EBa t6@fV-w0}`S1(R@JsQktk;K Hy=ow`0,}H|:ӸQ[ z+),_ ([O` r}t(a%Cd6[ϲVk Znl/\Ʈ%+!!qd vi5zO{L' $JH2~3͚ @)T3H~\p<طqD8tE'Ws< e" EB)w"Rr)~B"N14N^N>ݐxCɵn6>ʄCgpq{fZ.,4ٓ`s>a2Ȱm򱳷 Ԏm.Us}қbgMcѬA܀Siq;R mQ1 H;['kn7,YYmswjxNQʉ"u)֠CA=:~bTftsͅ˕a m{}/ Nyّ O%1T`瓥+Q#NjAkEԯ{[lP x,"ne %\',s,in/N(rtOmlO:5Iv'ɦ IwLmjww ۼ-i*Zy68dc+V"\fmtQDj]utD}X;ILM1xZtͶŏtH 5A#43jiԝ˫q!})4yYȚUv4iM FvP]IFQGpX9S1݋4\enO724^S'Zg:S_'[\]0Ķ,gO[U fIw5Mɩsk+5>X#y ̗yd.8:$U^soJ3֐.&C|_2:zj{ٺؓ. [e6zϳhKoN/~dd;{bK.PwQ3$*u16\Wi;-矨NRgT+@wF6Հ 4ʜt.٠gȻD\bC?B5ܯڲAD`tm^LX4k'Yr/ꜚ;3ʝЁhŽc c=DߧKN ktgG-2cݻPb;ҬduNzPǵ Ԋx)o,[%_&v3RRVk5 ŦH!`m+wtP26 v1){6vEL#MJlcM6ᙱ(+JsyKθWiIFp銑eBHǁok-Yy͜uFE <'X"~B5pmQbgGÞLcZ Q\Ie[ͩMXI9wiyR2Uj܁fh\{j6[Cs0]~Tb@1p A݉_UXC@ ^ZJw}<͢ Gg9ٜ8BTH\/5) %k,Y**lMX_Irvįd4zp~e>䡝>a|ykVZi "mV-G';G f;ct H&?0D=XidA9Sag/zwv ky0nrw(rVD{E < q]9DET; Co[ģX#_bl9YQ{܎ =t28ϯYtu]E][بs̙Psrz-d9Yg>3X>Bx֛uW߶6,3h/ϾRGe:snT5EBW5[pbF8Pd z M'rEf@Emy3whr7 >s?GĂJvA\B lM}S jps:5zcz)E . R}VR!Se >=\32o7hKV+;Ľ/؆C/=daթaacQ)ڱ_ߨlMWځR@f҆ -oD y:nϬ^-T}Xy~˧#}dmjix .^P~NbMm_ `.ElN$`]z[+HP^i Sh!kYt>h%9+1D 'ge|ټ'*+|cP;gd'}o@3 ;?pA[\ 7E5&地6 4'{|]W^sCLY[$N{)B`CUuSZLI"I*x{m^KΤ+Ch#D(LK1Gh B?:r 1j q0fV\wmxri6kאָ#uv[e1%ֹwGA?o3ϑu.;3= ʟHx`c.{2tps'S_9{)WnÐ޲4E (t Kg2b+ȎjVĢt}K=rH؂s 7K’SeM9^XSީj ͏Ah3a|8B.aQɉlm&i ǀ/#יmS<= Yy!u>wq/CX3ᲝIQc[} R^*VG@BLB!t3Eao)W~(ђVQʥ0 vM(^UAS=A̪4cU|ۜV^B$j|8:^P.&LU iLn%@=63ceTskwR=JvXKR$g,kO&C=j|#^[o="t ƨ( \$-XmJn)8+۞MH ͚$tM_jysՉ{[W}-4s&].},f?lΏNE~#vd=*M .UKoO B 6ƫ%﨟 -B;Cݴ ]}uك5z_@?5qfv/;96.jJ;̝ЄMڅ?"H3=:ݽpIym[=wуA':N*!Ti)4&F.}!#p͋uoE_3x%}4s6Gysi6hڳZO >C?ycoք}IBYWRfWnCt ;Uwc(3ֵy~lQq.ww?Э Pe9a)g˩/c`XXت9nȹTiFl:3t]5q7#DKbx's K`+\B (a4$R-o QiΌY Ϡw{jM L:HbyoPtp]so eXo) 8XkpJ~2$KY?.RǏcz87`tª)F5įad!aM!]J/a*p iGSʼEM6%q^[^!|@Xa\k.0AHzqͼ88=@({VtQcK:*#G@ctc%P4@KE6{>yU*UR8Y YRs>~J*m}qy}Qhgwǫ q-5j9UQb0@}ED/XKw)5)n*5i#,(E:De4˻dl ~o>M?qTj yr$=â;y"P`BCo &^\ (1>}PtW]nxEU[Es7L+S*AL|u =mA \pP:u-=h6QR2sƿ`UGSr_pG Yu-}gb NKP>HKjSwV*B{y=j*@`:*wл&%F鹻՟:0SJxږn&Go!୷&Ͻ鄙PF1T 9—ë ,i!UB yMQ$ UpRum"O]Gb֓0ӕr@ s&*l7BTGoqO_|ծ^Jy)h82S//N,c7"D+a6U]CslSJ9۟i]J[.Ԣ̖HE[?pDZyVI(̸vӾFEfv3::~b*?\^=~r7g(Xϙ {YMyxoWV;2FO(:}˷xn5(ŵi[g`qS[(E2lP '%]ƛ~uz_d=E vu|nOǶ58Ղޥ R* 71ryQ,%/nb߷v>QuzC6XG*{48eѨWHt"h&8ˆH}R4?G8$˞~vVōV\["8{1Jv쬗tP(P;ΪL=3H3xCU *yqiYoeZ͗e˨r\SHaRf|;`+d1H1.],|ZuVil`z+lIoTa>}CE8 2IJ HDi'ݫj$jNv'v@|1w18{ꍫZԀB^\CjQˤ>F dGINzmٙc ˅&1<1\``B$/eriZ;D'įaENgg/KTn#1qgK6W.Bw;Gm;øy h+s? u/XPG:KCcPmgN =Ohn[/W)D8T-?<0҂8n ^BZC;"zd d[/==ChftwwP;|XpU$w & f+)3T4>-,5K{-@ !af[a$|1WYM~^qX#DLxq^UJ 0 5K_+%ˎRwӵ`u¯m\0TjӧSĕe Uf*5 k@>ttKIb`ztبa"/׬k ä>YbRke~ E1xPV+S $Z"D %pUB8BL,-#&r_H/?z͐j*!y p'[;<"Nh{3eO@`6q^BXUd#fg wh ^~DGXyv9qֽ?JYr@&7gm/PL␛m%2;d8yUҺK2 GXG[#OKߏw9Q KyxY)=&`W>|yGu0ab-/|b%n-]30](}*ntl!PFcGLxf5|MIMyR'6s{-X&΍lvCsz%9irgru:}3EiƐ[s1HRR6 fL՛yˀiy;6^M6O^DSĂ tG2sysf3 ^\ԵKfâ7.] ASaР3$ΠB 9B֬EhATGcՃtѺ"7T!V] .r_SxUHϘVm6e8.\y-/(%%Sŗ -#lOjf!>ms  w0C_f^2ڿWQB1mNy+N_8(b/~w-٧vg찭pyc^4'v VskX"N X]1z^`cO (Ѵ/[_`lY,3@a3{;?F??ғpYq,ch:GX Q]WMz. mDݩdtt{B'N ߚ0ŷ nLڭZ3>\ӧ\qii2m꓉J+}Oz탥%=t}&p^?[mSU-|ǹ7È} 2y9h{I<0)ehd",oSxTNʛ[=07Yka^m*|+@Z_]ExţD29hZW#Nı>/3~98"?kꭘuWGg,eDIl`UC$2OuhtϋZsrV JR>Y0a.B]ԧ\L)u#tD@s+ `=h#2__}L x990#)s=ߝ[CkcY;{٫DfynNDEZӖ95v<ev8Ũ}MLTHU^_\?I? J%nYSx17}[;Tިvrd"$QCП2ml|% ʗ \2$J̇`\䝹NȼȘ"s vlŞ+׌׫ ip1{=f?7֥S*$|jy#, ּcץ_x2'DY'9@XMWm㹥[FȰ6*I9kѐdN?O=/ ~: (`yBW];MQMe5(il9tW)1ټ8%60Ͳ1`qy\Flv@hj<8NMA5R  j9a]y\ ` S gPJtO^e \^>kZxD._6_kF"ˍrwaHw'W4㻳?3YO7KK$dS(AEañ=@A _1Jn 63}VL8ey}zȸR |2ƇSڱZf*Ca9y;͗Ĝ`. DW[(.I!Z+/ K»b) {A׎{Xmd޺V'y8g``X6bri)Vt49Fӱ;aR3X ]Jwxu+6Pxe2cF z`Ip9OvoieV?FtJKB P}f5Zson57NFh1ìsHCި1:auow;~{U`N9!V2ZF4 lӨqtPuLm>iv8[FZ!QȪdv.뿙o 9WZ>d"4a7@1x\qy3]\+Z]r#ADU?Ptj‘ѕ>V!6QNCKW8vX(VcGM 8> 9VwnO{p/G*8!`Zb|~DQW} rj⓲.GH4DW#<%|&~gZZQ;Ā#͠ vT N򮂯!=4;̶Ӡ 4 J_",X* 9Zn~>8"NC{E| Q ,9EfI}[Y|ID:(H)vVGV75M9.cc,?;KCLF(?3-`,̝ѡAy7,y=94oUW^m8 0} (cdbrAr O:N]H1 V u4PpH3 H:+箏r +C2zfῸ 7:MsDVZ&DfmvmYLVUI[nΥ F?2 Tӏ~'KR "!5jm̅HS/U|\[{.^"[O組62K Z&y9%{*isUk /lGi fYJ`ǞPrSͨP!-Ko)0%(,v ? c_ 5Ak,ZrAŒE]R%#W z륒Un[z(Bǎz+B# 93^Uڌlc͙^WWU5@~=`4!YJ%[WsFeP#~ sK*LR̵f,¾L^2UN>o!˦ԋKwJK 5WNSk}Vݺi4 {t}dyɖmD L3S˯$o D fwVױQtcY!mE3a[m. U鐳:1rø)1 5lg#UdȖ)DzǹVh^O2/e"_K1жJpg#u,26 JV8 ďq$`"gʟ`?GG-UNpBIp4dܟ X{!N0DFoȿ% TS'!l2Xif}Ძ榶dKgѐJr5^HR@fp&BF.ȥ a-}8 TuS%6nm=?aJvot$AO:evs1&w|R/~*r%0xiI.5we|1`JwTkRfďu%%szXr 2wuxc@(Π#s_Z  o䱦i* E^F\3D9 xNOڕ8w{[N!]{c&Rȼ#JUnC Χh,B"d٤pČԄ@eC1ecgx,G-A ^1uĉYqlK/Nd9` %K`fƬ%{}ֆvFYdG{f_I`%c*a`i%y ,ՒLq'T<\7A-^:M62T.@BZjp69]vJ[EjVʷaFLʼՓNYzܲ=20{ ƻ3G^mͩsۘW`̇tKB6i% V%沲*eE~K !@뗢nس_إV[h|wxvq!CGmH<-(DC.61MS:U^7\uq*ʟ[iΨd'L"Nd̳̍K[owRr1LJIC%qkɂ1r6K :f;zgWYYRb4ײ%`cOhӜՄ3#zty97@7>3ܿa-g<ՕD䀅VEϮ,i}tۋH4IȆ1ȏ\+J~#r0٪QY#  ߱'qMIMI'[C=SEZ&ka sO}>sk9tK=27n}ٟM*йC>^)!mfYY.y}> Mmazx ͬ-ɠ 5bPUlGbn(\x=ꑔV|^iuΛHOQ}} (IjmHc|O|p5d^5t5⾸˗M/ o'MQF&Iω.Ӑ1sʃeֹ8_7YMҧwc jf7Gb ]Ój<^fb薱=9SZ>3PKq)m2NPye0\/^;TˁA"}d&?%Zeh<] ☁5otDI6/F'(Hg7J\z`4%Co6gA[l]wo:BJqZ~v(T$w>"_Gw M!tX)p1f쿀E0DlDKӠ}Bd̛ y0(˝V:(ke/75Jy>Y>E?~3ވm)pЁ(OL0%Q*ԑr՗+ o"bW@]ƯQ_Ld >vfسr_Tu-JGi(7%q3F%kJ9֦Vϸ:&o sWpL|5JƬR+Q,YaFu͠~i-Ŀ*ɕ1X08 R*s[ o uV׀28k@ gV8>nh*H"osLlZ% n_,Y|sq@+dHr2t2pW솠+([~$keg0!F]#/v3vqxÏ.8weG$}dLMf6]uA!£i]7 Jٌn~}Ԙߑ[ #$"+\_haoݱʶy;G+5.sG D+>s)vl* wW 1;  9$kJ Jh!lv+~`4DXJa Mz_T4![{[lrܡMn1Wr.|5$Wwe @g8-sgE-~2▷Ἥ#ުHi`)c&vu[vZ)%R'5 ڒ`ꇾM/৒!κ#¬Hz;{L[%TT|BmaLݧԗa7%e{ rz0 I&ZRKM=S#'&;+D}yd&Q[g9}._%uhQfG.Zk\"4a(|00ؕs eLvh@C7FMRu#r`zaģDZ]~+K?plfPdΉnRg6N.Wk;}f[fU@fXꀊJ6d#].$`aoq\퀂a}a'MʘmI#+RY()>#tÿPo-*-%]EqCp_"jȤJPXn"T[ fX3փv:Ӹ8Y~p, ܡmq]G1SΓG8\҅ A%]+!xs"?Xk ln Gf}ˢ)R"P$ J Y;uv q33MT6DEᜭ W@2v{8x}$--{o[[9ŸִC_-QJAyHD4ɡʕ'غ(-Ŕ.Zl©(_~ZSV2&6v0Yz}S4M|=ѸsM+,$>C ^s;~諹zįu#Kp i}&3Gw Sb\09xV~ۭ~8y6E'{}V:4͐uXVE #ݎk>%U3"9Cy‚sQس5VHd)n$ UΪ'{beN@wlfۊw`9s?@(&mmwpwlR^k#;[,9%j'hn9<k>1) {M)//&@DJ^nDVEI6Lk.uJ` 食>X Rպe (ݰ c~ygh cꛂa `qT6K^#xIXG_0JN.޶PSTkGVh؀%7)UƖ\Tx3MRT^$fH՗L˔]xf=&\{׃':)81[;LL1U),fox y8Q x28ҍ\P$p: 3< *P01s@96֔'SҒ )>uþf!U¼;Ѥf/S0,ekBk[M[`^V#I(yQ;Fy8Z9l:omG>j_)$á2˽p<>47;{F@o\]"Z&czKy a5ͲjFW49_S٥˝xr~?nTؚBuNx'8]ԇΒ(4_|[c. 6:6=t9!#2Axn;̚&ߋeKV\_B{ZT("cUb ̹;P)3Fmn193 U:ΠD䅝oѻ dXU{n3$( t[MdIL}P8<:Ւp&]_GNڋOIij]&<ʙĮ⛱wb_0!*2KqI;@H}%wXѣW0~iM9mEV1'k>6QꡌSՁbDV6Kou0:eި H20J?RwyF5ib ?!bnfu~D?ҜZGV9 +-t xU KḻT'/]w+O0i䄱τ%O3.c,7JNϗ7P骾y̏rO 9nøϖzgJD ,SJHaG$6xMphM=sdGE MF nuȻ*aOߩh2R3 ؍{ipv:Č(w@TbP1xR΁m֤۞-FG{ntPb-w#A™ZMD@!%p$h@!2d,sƨ}/1QGAI XGk*]n.:yn隐'&dЃ .A Lj]bZrvi׃"ܭ=F[?z]iCY?vAr5ͮFzXCn3WGij'maNg9{ЀDi @N VqUy#Lg8I9fK (B6˃Ɉ6JL%eȜNǦf&\)jC:&YIVN/ܐ 7&wjN0l-IĊMvŎBe|bjQ0}quݑ. ʙ(|x,g,/$cu&ώeFqoM` {?$Yg0KD܎𭻞4 qy.³kq4U"XAt\z7tuXmDW`,dŖ\pXT;+$}xLRN5ȏQ"'OF0쇅2Q0u 4> jX699 ~K{NJMR?hC_>;"z&vÇ*N:U:OgjһvdQtRӳS-:M|XĬ}Jru BN^ŃDO8h3_ޞOkrФ}{ nipWK ?BYYZkMP#>]*QCHvAB;=~ߪ@x k/i]$R9O|քJ\X<.jj-It74hcSX&_cTu%F/r>~=`{3`z45c7Bten'FUǟZjٵ!5Ԫ)]XyR?CaT,K|Ŭ+@Lb ZQ[(`u2$ឺ*=3ZTMd[F(Ro0laINĥa!Bo1Gv@dl"O*(wWͧ-]ed8S}ݛ&t(Dk8f<@Ybˏ:5~= iq͌c%yˉ =nle(!&5}Im E O|/ZVKiw-yƃXV2j_=RK"c?llui^>]wKiML2JN{ 8VID USLʋNkp'$j6F*AEƏ|.5M]wI*4 KW:ڼ ۏI=$# j^65r9W 5IO=XREĀrym$e_բLYZyP~AFyh'Tyo#Q-/*uόE*zx$⻅tҾYߪ4 (=<Jĭv@h~ hUrv'R,v;=etIb3:vLx 356gl]pWfI U9nnD=<& ~ LX0v̀<[2ɭ n-3O97OFx#UkHnB_;! aSKU[n(HA-ҕmcM1 *ٱ5 "#jA:t(t<\K&l#qs"ޢRSR{7 gz )Ȗt3_]AKҀ*Bo"<"Gh` GDV̤.!_pV*Iׂ[gKRA+ pl*'{*6MOjU@DM-gO-֩sUT^? x 7*y F*1,.n[|7"Xk*Zi(nܺ?*pr⍩'= #اaC EW\Hk*;WK j+$EoVt`=Q:0<f̈́H!5K9U ؖ\}"+nc`m͜"ǰ>E|a=Cbڞco7@@q΅Rb3E=t0_}|}avn>tR{ Y#| %EП!Ɇ-~!38dc ikL7H{W &+=6\V[H 1%AY#sINÄ\dC.A4LAD- uj6&jJye9${mpaW;|'~l5e_( U/R̮v.Gs0OA|es4RJn4TEkPb;ExFp57Dzl .]jM':P HPZR g Z5w!`s%Q hj>5Msio*$,K39.܈Vl!mcEQ cԽmKDZJ\%q[ˣL1M5GUIm&@ZvR8ԭ..dQ PfK8I s"аly,..ɶlZ>yɇ u>_ vR}rXE*=7_9g\Z^owպ;~8-R“}w/ >qLK8 t ?VJUk,YaD"g;>!de1ZK%t4_0j:8%o~P@ ﺅz_sMYdebM/ /j9<nk)JDR6+')m_#g 5L}[po *>|xUxi&HK nKVМWڨ/j}j,t[[(Ah*Ӆa QО ]\h9QD4d \7v1ĠѺ³H|;'b:Q<ͻxvڐ(,lj;#ۖ{3:D@RAF?``$Ĉu}Ѿ{R>r2C$4-a4xX֫`Ǫ6x\oba9f$+ T?eMZ0w8C mF=+o i[%`, ߥ#Ŗ5;.2ƒIJ,W:Sp{6WXS} 'k 0#Z;Q}U##QRlNbc{hrE^˵v ?Y|"50U;?ە|*6gDbIZ&] ͨD0HkduyM!;oX'; vZ܉/ht?W&JʌQh.E$CTL7O뽒$8Ď͐CI ( v> KT`y_l-pNFj%E4_En ՉVǼ=0-X'BB[q4ꋪGIU&XmNŀ@ٿc8f)z leUH`l)*^f:F1%y$('R%`j8ZF[4>iQǍ%\DAXXG 0b}7GlL?Y YHtm&[‹sM9THUĿ!vԃUv۾qE1ԏ6cXfUF^|N 7(FP: +MZ<<|ʂh&lw5WiUN{8o6MQz)v? WRxЂy3X=4wkA镭7Eecc8dDS5Py@jx]ВxCOY8CK؞4=3 A᧰T (tbA(p!ofh,ItAv[b>[ 6MuZa%1 Aѵ d6 F(RD(Pc0~&~+ZuFJeU} G ZbUwv9+NG@ec"IÎTx003}z譝[~d~hUZDžN^mE ([tp~Ήg ߏ:T*m$7еV~;]4rpE h&S+@_ʋO"6n3vbLkZqE$+@k=(2S!0'j?:˒p/'\-Nq6%tGi()Wo.JAeS7lSHh|]S+,-LwS:%2H-@L)L_墊ʝ$}GO>K[ SP%;cxw֗DDT*ڟ׽./Cn.:cLLt88ء,n!?P~&|zr!g xO YoҁltyןyN}ZwJ~yio| o~Rl`N6TIĪmr(jiA5~'); 7wЬEfHO'(8Y]s:jEK\b [6iH><<>Cț%IOk>,-N SлL xk+A 5,5b@k0br'@Wڭ ߰;Z9M6kȗ6Ҭdeޘ\9VduWtcmˎK2,aZkU'vL nf -@\I~I7cFeBf4GǨGw"L|pO8\uސS*Q*y2&c;~TwEwj }{P^)6|_U$q;\#aİWY%?儚2GQl {{J';&,:nǠPSw wm$}A#oNJ+lopXKD3Y FHi|_.:@1^ip)rX@KRGD.}i(NKb3 NRJOzjWM$#AfB6B8\` -L-@ښD߰g\ð;Mnj+X&&Y}8cv/@Ѱ 'fp<$!wJu|7lۊdo]_o.u-N`9"? 7JUf 襳m( -EǬU}AꩶS/+ԧwv#uɫ=U&RvYzH ,s}ua.y:f[$7O$ [?GD~ |5еF}Z &YI~ B)oONV+iIYR魤+)@Pyߋ:.](b XƉ~TjCXGXa7<.uǓnVE0hv,EQ=C=%<l2Gei:Ф ` ji8Ld\"8@ҟQ!.k5sLX^(R@ 7ղk_7/j%nvm}K&8(.K?)$3XͨjT>3jX$9VKs򳈊I'0SKaRV:4#Ϟq1C^x |ق SE.bELȹ'f٩tVU\?W:ҎcuLyYP 0> G}Ӳ}fֳr\ ,^Gs:=Vڈ(RBbSNlO}YDQc߀Nm ΃ v8`ݗŦSAzKnq|e+YJyJ3wA߲#ӎOU?AagA$|#Wj?l?`uH}̅@]HT.k抢[ + !/I`D̟YON%I7 DۛAUٍGTaHc:!})WItǬS 3a`,P,|8%!X^c!g'R?6qK3:k@$n!܋׾)EV.nS =u9krHfF%?!Y1| y4g v<^9#%.K$`k#5{)̨.rS84\- 3Q ҒL &])&JS]d 2%7[ͰX0 Gx5![pFwAGG_O+G23O`sT,Q-!l|ojջ;t*k\Qn [3?Z9RǞfgb [ ?oQ`ފM24J@w.yoU͆1LHny\qUU3+Gρ]yA8 >K5`QDA-$oFwս+I pWh~I/ΰ>D<ʍIX:sK &@l8|}#tSxv/A+C)i}j/DJmI_> <_:GX3H -Nk"@f5%Sn7ZY t(ur;jKy+,0gLRr{kϰZ;姟8i?,G_ɘ]oB&+*dFlܢ.< WT/ch<0!nkp!8/ת qg٨Hmiֳa|08>m]et,At@D`}~{X%Ld1ϒU\+5\)=saOX#uzn&JuKrigV_'0X̶ Sm9,?Vy3Z e W vdp3֟xMFbFJ=k Zx*34 ̀u(nDgעXpbAWIyy=lϩaHHxRW_ {qP/?jx%j0dBza͐1fcV"1`/Q`~E$ Ot|e&Zώ6yoSNGE{یF.P;FPި9$=IxP'9Zfb;#Q%k`nX8MPa6X!2)1 l )Mz?B^m0_K7.h 8=\ 2MUq8p/:$G /fq1E?4 [e'wC=&[3+5D+%锰v*}E!.W=&2kTMF=woB[1KbE*x:gF|#](DXh%A-h IRᩀb Pj:v7ZmoU)31K>|8৳OMM n7㶋'kjhUJ0Ly9U M_85 &}~Cb"APg…DEF|U$K'd.VgTO{r!b|,'*}Q~Td`$OT6S9<^'$<E5| yw+߈o;+(/=`=Ҩ |JD5FW iȵڕH"^Fy}f `3g}?vG ՟8z˪ YN؉V]{;t('6v&bc>'E2v,dօi5tg8̣`a*;\ I0@ޢ a!s3[P(A*Efe3 3':O6yOĭ\Y̩Sw©k 'q7\ynVlT$.~HJEX_ζ8q)p+Zf-ئ|VaeŲ2>:D4198xSbs7XNt?aL[[%c_=tMPCp\3.؁瑍gTmiBh?#σyn1bD-ߚ/b efYWUI b 09@\\e]Z;ub'e\ŷkϘkz[NIHKA`(sx.0Ä a~Ǵ]wk߇ Ԁ&Ҁ r=-5?f[HEרZI)».y*$M;+i(s&%ՀPyWՇbnOEY) :I%5K}8*wРGxMld:<9M58! 4azҰ1^U⽔U197Ck2 cIZJ\ 9=.+8A,P? 7 {xkag <?jxli4A@ exG7}NqgK|\/54j_4ɤF[ҁJ~ ۃzk{(M24V'e бռl%NWcMG^8q {/6K|V( CF@L"oG4?WgRnF J:oeLkCW&*T0\1 (q*@ξZ*<)"I:ڬY UL<(DS\،eyՀ~H%zeQ#UX.\D#'sˆlެ6g^Vpwar%>POP*]VHiDfc~btEo}fUvGFkTKgQ`%!y )-=oiq@X1$6[E{Z.=5up[tBxyt+U@\]=1w?Դ[ hZl6&YF*1_wh=־w..qVHRYru6ru1'8]}Wꮲ9#ƟD$s½>kX'PC,V1Qޕ< P*ˈ?r蠽<cb?JB GOm9ե*I)c3#Bt˨;5uj-4S7>vp6beY%4"4ye cJg%!ޔI ewiip"Uʰ?PZpLw 66jDEׂƭvvi|{XB>mZ҄]̐P{n^ /B -}2JM|REiG ׋ft 50ixh=<)hS(dB1L8up$eZDbtT&,'~ gmmVVxci5y/pm'=aSSu9 Չo;Js*? Z't"sLu9PpE~nTP~i}xT3ԘcQY ܏8R.$_Mєu-V0UK;ym觥dqCr3eE(]tKr-`K"6e5pBa}&E/7*?\Ң==.{ $)/E=}|*KϭcFu:9Oh2ܶ X&CxSbWaY YQ6ٕ"󽼖xW,LކlRH`hpcAʅa@X3%d3xv+`ݣGM}r+PCbw\>gG^ڤz?[@HUpD 65aL )rC`b4ɮV*խ_ dCRhbZ,/˯B1~҅  t7ӉPB=)\jRz.#-0Y~@oJ~< 1Qxb3(,\2+@GiU'U2_5j#f1v1wYFƸ)ˀM= &= ^ґql3w re1ۥ퀩dD#Ã~O;( \%fŠ o;fX|w˭14f((6{7>D'EDˍaFӇ0"f2 g`z_*]Xג0Ct)w+%V/@^~!T2ZPA7=Z δߛIȆ\AqIPP gXz'xS㜡Ͽ{ˉiE.گz ZV9,H$wuΫ'GV:yx,c0hFZEj}}6Q'K"?c=x %NL_"kI7j0h’>ʮЙz*;6SBbŁZX( 8+<9a/.gc+kOcr$Z޺(C=zu\+1ǁZjmLD5g⧮WSD1-OlQ1pR4~xJ_%+91!PX7\wfן. ʫI*\K A(m##>~wa a"k& bi*?9̿Qy؜Ėi1CIƔKWyI CΡDΓhN|"S16TaSDO{_xM>6fs캩>,`h_+eU{d15Q3.TP9 +iVoq Jv/6dKy CDߜX;N$|TB7Tc 9_[]MiD$s` -ѵ34L1%U!)|O 5eTRU)qaSS5UC05_.'boG̹MLMdN꘤T%!#KKqxAL 0sT>Nlghq!t|vgODP &ϾY\wAݦ#HB&S/XN/O#6 OeU{HJ;}^cMvO7 K(ynYIXoKCERؔu%*f}X[ WK|+{d:#$ڤqk'ĘPdژ,)PhQ 5Avp?]H`s~&S HsV/U5pG'(__wԻz0œ>u5_/ m1#P꽃c EPnhuZHU9:_1Fr5]3XS,~Ұ$NAwګ}dQUu ch*bjXCuo3 #l|j+7> $9`82޴?0>i C*Yl;#;|0p.>ؘwjτbEΚ6Qӥ!PpX.9ᒈ _{&w001LW|s5t<(9)x!Ko >wM7bHMa=F֙ 2J4\4Mi[T4 'mgS^wce%D88P承*Lhe<.y]qI%Wf:kHsZ(st[Ej:36#xoC߳|Y[7S S i{,A4Ұ+HtOEO8DTT.QFo(U^h\cDT{D=t݁EȻkzOژ-ZF؊h[t?ޓB՟263C/dmVFLemĦZ|gqf.pCEFRݲ#.O|A+Ƈ tdוT0&ຎU"W+2BơٺWaAFS8}8㽼vT8Lx˵K#CHc]N.b 316E.$!Cpz_V|_$Ԇyuq^%$OOk%,̊7F ϻniݜT]01ZJ5k,T؎sg,~AkՈ<"ocWf"L~U5=D3I+P4pP((tM*nֆQ%KNvw5BZ]`PkPswoZSݾW*_`ԉ` #RZlΉ/Iqy j%s犙EԗH~]8wa=ػ[엖Х6sAa&X!3]›hK^4>?ٞ"n; 9Gm[U(I]0$]A[GTBu@dbSƆ}ʱɟA'l( `w 9.fO^kVz;eNK@g<W$aDMc#6^`ocl15mi@)~C 㔬s%Hez_01WjH"v-8eZC~\(%mDRF&Ĺ(7μ8֋=WoY d71MOr&EzC ĦMq%ͣ6n] hc3=1(J83AYQ~JO' 2}90$MB+/-nCrzwne,bn@#|ewJ _3tu|j|i9.bGO庆zmW8t pʰp֒*JsASWA@属/\ mZV>`:e@\"qR5靸HARZ!4YD)zZy~2ᡘ׋W!m3F^/8,̗;3{P7pj k=6 x#~0iU9(xQ݁ﳧ7π}es\mHhi+G o5Xܖ /KMU@^~E!Ԩ*Z0f;續F !R*4 (kPgQ`= 8Əfm6zz\4Reċҙ(%{LPk>L{)aqnqNCRv%sݴ8i>gZH.MTR\\4g**|F8(_ tiݿE_`DN~oUwJ/Tۧ~{|t0 \A4 |7'{mYpC1WF\k]foK<8ižJZv)me?]`b2tR }w >JU?j˛F 5}AR?ĥᜃŰL#{`YVXx?AyD8@#J R ~YN6ML}mi w2]另pzĦНIF?#rL3r^q {TϧQ9HlbgVfj2)!bФVͱSťtMذaMc^`a޺gEur?1{L f⽤RL[4iѐMJ2wW<]Ld3ڝ;-!׿Q![\sFsJ}\?ʳkC@U\@ HnaCs8L;2<ޔR&|+_W&/xrd7O|R='XJ@9%>nY߻@G%0nEh=` zvcARU 5 mENqf+:5,g$)5x*t ,SLQ& ^gF7*eSAWUhgلpR'k~1#&@75IP6v #?OyJ!0u)7"< Q)B+k7j'KT''%89ފ%6rY]@0jdd+&lj܀\~#A|w{=wt,XR/Gl}20{į $TIgYoqKrO=@>M,ӝ[+4݂Z“&й9dQMWqZkh^)*{nhavQcarG5H"gwX`o,}9d8Y-KL֝qr%H$_̛ރ 4 hsYg7$ɩXJكE;3mѸgCsgN%xszd0΅bE\FH.0%F߯{w3Dw0f#?ZdÁi+$7t4-LEiVU:S7.# 浟꾳B!є{L7W\en/%Ym*Sh0Gsmmc>a=?3偀Gn3 ^+cdJK71գŦȨ^R'^f0XDodj^%F̼foƿW ny92h.*kH9 j!>ОB0o?xU(,%S- t BKILNfB>:nҫLFؗG! `y,m>;axϮryx-ʊ\BzF3^4n?>Mݠy,4H675. 5Ej/^-gC-)&@UCW@Qz]/M w9:;&3M}p~s);hSܬqLhեr/VZy`zɝ<~ڶ|>ڕ eR¥\'yto6vLF*}ڼ |+;T!k v[g_(c|D=fG9%J7b_xe658r2,D&zg~5I9k{ER|+zr1:cUVNn4i}W =؀Vʔ vrCtYA3BE1:mp3=<[_ш I:dž1QGKŨDm<`hP }@b^x}7W'݊;ELH# ud]P$ʏX\c/4{o-\w xs,;ݻ-ӓH&!0y#jnaHdD=ymzӤt-"nzAL5K(@\/3FhwoN ni{ wPH1jc#>. BV@ `CXT\8/C$z ӇAzD_`p''9qI᠖lJ XI3N"粶(ϴi$Tp԰|y`i٢UeѸmxxcXSY-g_k+zl[6EtY)!,SX%̸-3AfLɤ?ȀFi` },-T]cVtHS,&ǽI nNT{\1ag_3EESjo#+ v#12.QzW(D*dY*;~{Pڋ'P}eqV!À&*,~6!،NL ;W,DL }{"X D0`n5 4iw57 +d0+]1:-P|SMH>Z$`=wa|XӲ}V=N#N[|urt9i}*>l?dO0JSPNAIljdO,Y^ Xu W& vݴYz q QeSqp[믈ZdBH;>w&nQ cJ@r"Ro)vy_3T-cҷ?OM$B nF1ɕs/s'Vt p֠˲ZJX~wf ~į;c7??T)Og_Dzp]TLǸԱzd5DAB63W(=?â [/bzBa92Z'lQKQ mfO& 1i gd!}Eho%n.vt&MYR@Wjg"Ct-ܭ hש7€DR@ (9WbL  X.zuO;LSQ#ll1< U(*-!LojII VdK+*eEHæ!"'Lj/ dB7`;ҊF6) 7.-v)0h {$ π+5=xt=D@ mƏ+4v~]hb3_1a A3"T5T>iR_LBr>TIj̠iچb҂ xh#x.7:`:e#ZXP c=flEF!9 zLz9\"+U☲ȲowD+Vro< K8wD[I9 O I -m^VprB*W}2%ZyRYýݞxb!¦~jʌ 6R"SgJ[e@p6p$NsX\B:j).p0[l(rV"QR1X",!c_;h0Ƹ'$E& L 1_:Fu`+-MW2;OcK7?I?p33 GYHºtZ Nɀ~S;$r$"ȑ趯 s̢6c }9Y#+xhgtHL׺~?藹'7Uk1t$o3I5Q/u:G?(:fpSM- -$Vyac(qr(kP?55b{,6z ,Caؔ#fįUKoH<7pξأUB(A&kFϺDR7obHq\CԊiՉдdɈ@/$pe ٣J./6amlSgBE)MY64U25d%>Pg h!m`ѝJ\dDbQ;rіy1A5bb 4;͋qu+4˓ᑿ$yf1@F*tw g҈(A'V-z9}t0˒upM͎n>P$~#\=.q!Mg2N!bv= 踄gLI8t͚zZGV0׈p)c>6l zW_7UpJ4ߐ p>Y>ዌ0.U 쉄=otfi5-!Wޜ%Iũ$s+] ɒ>`rpx^ӒPo*'L-[ tT!4<l9joMy cm"*As>YdTS -f ̈ o]k[+Q6wI&pp𷩬&N}$ꚚJݞ\^K Ot, z(DIAڳ㦮"r9dB%9j:)"$e8_}r>QS?}g]4߄8rs*6fI8 L!vHQ66E:z&8ZE,; 7)ʊU*-σ.FMq r֞P<=eMc]B_)lFŞ8_'2L6Ige[9"0؅/kE%V X+l3'.p-!}BmJ髞XUR `:{bkzp{PO.I$ c v- Ƶ}͈[~I p\%3EU7jrnUCTb'32Y'Xw=߈4%?tlȤ31pVEW]R)}qӒR~͚#о4~ MB#SNZ# fٶ5lWkpNw!cP `^XtW ֘w;!ks PaQTabVb(/+m+.#7搂Nv}zHvG zlG3#҉:O" L qWz_ЩziqaB[z#})U?J Z;8pӘz^x0$Ur`.vќ9nHcUHuFtpN 3ŕGK Y5޴3NWy2|,,E ?PkTgu^\SN-0XAʗ> u\I/,0dQ{I;c`'GyJ]킎pRz˔4 -Nى{ӌpԓ -~TM.TSa U7О BIPT93r hO0'By nSAf1D}NoVhbwX#\ D`Ht)f't>A\OFeȾuo5aqK-ڝYW5aB4M볘S lǿ0I Il0hisx6SOL*Yrbr1+Wi vc̻w>y9mP#6c*s^x+䲭}F3H-Lۚ1h:HUNY8Z 𚴡G~ |&/֣I }F)=D@eJ!3'}L9Mqt>lQ"ڥXD@r.^l6 wljGu((q(7UeCΞGbzl)"S?A[*@'u&f@'(Opc}otl£v7p7 /d0Bд>t tN&q|]g`qXZؙw  V[VzdYEE@\EA5D{:>ıoҶS\q)#G[}ܸ9ELp%c"ܛ&hl jysC&JCm{l S}CG]eŒx_H#tD"ey_+Aux8 .l%MI90xikwpaقa'THؗa:RrU}D1Z rjҫ~l8yIB4ұN{*azSXzzzxy}'n+p[x`ޡm=+3ݟvu[̺{D\,3ԝt&fLBɮZЯP'pn f6_1@x#? R-i.=\_! {hxd$ >}_J1?DxJ 켝jzVi?JNDLIx&tEo\-bx3#Kv %;SYvi}Ւfq;nu*O  Utx-~dJz (u|sRsw'dt3{ϖok>׼xi1:JcqNJ9 zi҈`7aexCf Oj =to<W%z᯳Ztw.KV jQ[bQZ3B"V&AX(jRoޝw,$+Q! l^=ӹEX#zC 8O, t]j;UțIF6Wg%JOGyr$A7pZjδSDiPj:$հ{AbWp\sSqn HU2uS!K@ZSz.ty[eWrfoF"&{dj)wи.7BLe0\gf/M-q&fvGGbP4w>wmf&gu+u֫:ޚ_. CMN&NJbz%|H^P{Mh<%lf(-ݴCr =,RrGmeDfmŠXpv.ؑEwu2< Cn|B+Wuݴ7R'nEN;g /9>fxGVc{NbxXv7Y.h=_M "j08z#c mrN D7"t7'\X೛sH)US6W9&8{1DOnӮUt)Rn' _d#Ms&@I  @~3ZhvBFŨ 5[ HtMn-TltNd`u-(̡F 12`7qvġ⵱@%'ъ|Q91<GC~D79Ʉ_S|Bu)\ 2,$pIg><'uj[̄{*>wFi4< m^[fF W$M2~ؐΈA3v`*68-HQu9Fd[Mawp T&Z20,P?NLf /GS:2'!<z?^Vd=.Y`7]ά.B~71> ~&]e^CzAb76@gI*O&mmп)<lq)z=%fjR>H8pu/D= 0鱞 -*^*Abgi,veN |BKp-ٲmϩ Psݧ!dB ډ >.qgnZ0p]b(}XHHh8,A㬩v3fp֒&-Mz)T&Ӿ8y3u_Ri[cÚuuxo01Yq?~:y-'q!th /pco~ö G-gx݀8L溜;tNr1HZYP<b+x7NB߼ h7J@-:$\`+W܈2HT H U}p^!H9;|ͷEԑO9r5WFxNYX9ԿOKz 78 dLAl9 WF,HZy&r:qnz=L& 'zB蹧l ۠>yٗ'^ɖ {0$a$$ n.є3\v~YTGqJg'bir@w_SGJCXʐӓ7@-kZEئd@܆p4ӌtraH_L:9Љ7%\X2`ܷ^ 9n_N2 $Mu 4oe2ǜREUbUsr:?8lzB Yh9o6R"  L9k2u>h_am;. ؓ=-I $1샄K>B,p5{z4=4[h>3{) K5X-hx13L;.0GG):9k6 <z\V˃>95?~xwvA.N,wTF]6o8g</6"G =^%Xk6䌋`%S{)rml-`tUAE`/ev_z_*gݹ9h`Afda.I()pC_؜3keit{xH-ͷg4, #Gtd5ƒ͕A‡մ-b[wMD"h>P&L滙t8l! (yL/3}m3DIc*[l9_52)r76^"drI,|mD|Тm'WH8{ &hw6ȁ?#*=_ĝ,c}/FQf0j)sfj u,ucz۬B@8ї&0HOB >sy'^ZV&*gTu1%丰ጁ,TweTړ X`1wϋ@Y IJ]fElr}w)?9:S?J)X7ߟw}|]X+:x~opbֆٝ+^ !% &8hvLLÞN!x?/z:.ؿ3̩H$º1]/Gh[" I& c)ƥs7tFyrMMdBP`m :xg# Y噻{`wb:[&V4Hץ!) )N.R݋i-j7#K 4|E9d/LLH- :>|b\T"+'':^E~_t+57t|mɥ dn%0yِ%B ҡè (=`mvRt?oJ"k۠Oo4]iFf14q!<2&*OM 1Y+6U*|vB9ۜA,yq\XA{U6Юj|Ήs.X5o8eW{H`-B.*hߠ&Z@ƈȠ9q*w cHʟB:,i?Q?y\ߟkAl lrřgZM*nd2`z ѣY+*C/7Ib EHW1>cvDd ih\#1O'B乯E@İ 7 2mi m( ͆S!fo(+#G+}8٢¯);<5D e&AR|Wg/2|d/tX "$Bc\tl==6ች*яل|q;2pW1ّՓuU$R $cϬ >~ۢ%c;2&#VAI:PUۏ>J;OERv )EM뮹g.< yAIѢ$%cuɹj {gB3ױIH6IwпÁeUeǶ|5K*~vm@Y}{@Z5/q5S{rjg I;ڛQ(K+!Ŕ/B&d'60x{7@ BlTA%j/5E+:,Dɠ`0!'!!KIFǍxcva43xsD}U K,":TDLcQzHL(PK&9 0ri!x#®ޭ6g{{b͛*-vU ac.Qd^}PQ"^[&hOڦ\ >r\{aKUe5kfit ) 9"a1L {Ėi71Bڋd-""ciΔRJP8<>Ÿ:*~|t @v.Ŵɍ& M$v2VɹsWP|K2N> C)3LBEYtug~B΋/ly7/%h+N S%ueJϻ\ݘψ%ϧ$  r L` ѦXA2Z_Xmx+G-3 quFo:fҲ+$pФ6PTZ=mDKs:DUkVnmHp}jHy%QPtQ_ѷpѠHGaw%kpO{u^ncz_ |@[1 #/C.bq g ]B2i b;Y$L.4^ Wo\v oa_4qbEA1}[d:#i 77Ġ1!F}+s`ޘ@tJEO9p6=JRBRnj:t 5{ټK!=˩K1u"dUr. 8-wOARI o 4It}L b t4/w;6a(9J*Ã5.l2*~궫I%k Q; bkľɃ''ԟ пxOog[Al<=aW'A\RUPY:T Xc8VYTI_>PMj00/8АwmIyk":{bf5A:`J,C@ineXVc4@/՟0 dE Ge=eΜsM`H e\ ~BR{M֫FQM6 f2M :^ ,Ri&U윏`dex>wv & AT?\)2Ǽ[A!w'e 4j"iJt=f+?%v@nk} g|*|0^eddMր Yj?G8N`]*mqwƗB0Iͫ YGM@FЬ-@0gon)9aK ỷI$UM9ov"Lާ2@Q\z'%AS`x088Ndtw G;SY\InǘQ.#YT(-{AG쉡2ʸ!7)QSS+,c[#d)FBS! uB6ry{O:&N`^t3:lKń pE8OiJN?~!enjw%\?(U ߨ̎sP :A ++iKS߾k}ۛ [2wD(N cjgVS~+n;. `N ˦P?]bpaӜZϪ95xR<#?wrcC÷R, mp9!K6%T2&+GF1cS>gW1m(_&XWng ct3si䢧-.zV/C Z`h!F6 גqNxR'by6aĽ5j(֔zsrV@\wJ@ 54%ˍ{#DIZUQQzPR;(A m']*җvdá !8%/uiwGdoU*ݫ=K/:UVv$[4+_Eq:Q/4EWՉ ,4 =wBcR0791 "\¯a5*?șN`lW RCpFfwlvu ͨu|mJ3r:t#á]`jHs:X%BmL>PV~hui@ ]BZj6X0*E_2Gް } ep]x$zzrM@'셽eKޙؚr#OQh1B];c3z߫H攐V"E7gPmǛ|o5S}i,c~+N%uG·^YgρSm<Jl5Lb.&l-vز(14S[c/*/RjU+l=<=学% .8a9'B͊Kt@Oٓ \R|6L`;n80cļy߅wv%hz*)U1E'>[4^+mѧ1IJ\$*ܧqCq&f~6Er?1^}S3+hR[Bq#j5xאT_#/TcLTKƩ>lyD>/kAl:'ƽ5@J8,ES@sbEMiKj+8ژ# Q5.$Y'RNɻS}JVհlXmz\i\YN-4Z se'eci (I,(vl>׹Ct4Q-~`7a}jKp<T&L~pc_.gr}QKW#,%{\ .O5fd\:-.͢bgώ.Z <lҼ&tț.y']&Eh:ڬ&d)Ŋܤ!x!8SI6D)VQ5]\V8mE1< <o]=N'qe<-_r[j˓ۖgik'͸."TR!a el\ O0cU,fDIOB0.C1 uF I zщJC.hz'9Wlg|,[A)eu2KVM12p!5XNGOL}fFU6T%xbR**+Q,(`03ͯ|~{qD`6znhK0\.M5N!W[e]C5.v~WYyxшp[,oy#Efpoo3yY.ywLcY'#!@w\z)Gd4E|7'0ya`4fVc'SSO䃄q`iAר/de OˮQ:`' Q4`H+(!n7 ]~3Ϗgd`[x:Ug ag0;˸>!vkᴦ(]QQFZͳ`Yu D.rh;U0FM=&T- eUx7s OF+ TQ AՖY8(ğ [ _.zMPWExNN kVWLZE".<Fy ,2Hۼg!:Gfu,`'txjU0~HEtUcw(k]'Lb>-I[r<`("UW۹}`Q]=9|wǶzu>峊G䠱ON Y ?,i:Zrv#m6F!B̈́\՝U]Ijib$w ]e@*x7؎^^'g݁]6MJvơU Բ¶U WB`i]'Nsp^7]ZPT|F@1#QiI "Jhi+)-hSت8,wD p6/MYTo6@²WKb㕤*rc:9R3~q~F2'Bٍmqa0zk J[3:2ƲmRd+a ]dd >l/ V&̯^AAtmhrK;]UkFިmr#qvZBX,մƙGԗIAI<2DwtwNLQml몛G1YH#k{S0`z3E>xk:.˚D?2@%#m,@e*Q"5PW{rln3'؈IG߱Z;b=U8W0x3\Nj Z+cOa. o0|ףDZfY4Uu($f U>iH%q)nK 6䠦ƾֳ_;)&1v7rjdj؍9i؃R:62bAD=DnuqK?ѯg]W~u=N]* !FŐ0;O}v5Ӭ᝟*67EKXbSש| 9[Tg1KMUL:n-F'Sܞ\"X6Pqxti ȊǑB|T?׿2(MEifG!aFz{Υ;?e=.~|](gKXϫ+Fw()jP+.f6% š.H;w[,7m}7< }5rŹuppgѳ 54EΊ]dq֔&4=+(cn(!V5#~l`oaZX*չ|ృ}n!/)@FN4!҇uMc4~Ch,l3dnzf*_PϡC%*L9s]s T{fh¼;I~)w6{gyMW5Q0Ib~BO06R9ݢ\4p Ppy%;6J,i8mekșcLX6`0B-S%1 鷯q}%`u 0ϔ!^thg- d>cocwےRt@wen VN%޵hJn8CMDvX1\B}LVS9izAAFU{HHO7lºESM08+ڲezOjGu.uFJ.<.[1c:,aVs `:떄nIKE{"{ !t6yƴ";CO9A0 '/Bdv'lʢ!C=)ѵKtX~zaÆӣE_{L!ֆi1vEq#HbkJΫg{Bx?-l-O- _uN9QP;b pDnp#+Bz7[7;X{Keʅ_ckӶo{r'lRd ޲Z}܄F^PI=߆x`_hA="o,L9/%Jdyh|:Xo<pVR ۜE1O}1v*h0Bt.ҬA"vtg#~;ڡQpjqkH9F5`\ҡT!d 'X_[T}"Ay'&!bKiL׈~?33t< [ ]v'K;82%YphAK~v %;u9#q,rjp* { Vq$.Oc$nIgʼnݾbKяBW_ ҭl JRgΞB7XQMu6ᗶ)Hȶk|<3ouH)hCoxBM%r2DEӷc V3n ls 1(OZox%7MݕPPMr!]E Yt|+_l 9- 'x<\1&]rV)&xbi8ds1CKJuRQ u*轥+B=eg= zj;5X1.{¶a9v"/<وҐ$s]dຐ>2DɋaѮ {fao[%_GCVC~tMPNCrm~V0[s[huK{36 7Tw,o| i-sN 1Iۃz[ ~ Pr.`Lp7?ڭGT}E H~XJMAгltg"''NaK&ڏ%ۍsdw"\&Zȑ16%is*E\] O;w*"KE3Y ~;˻Av$&\RS7U;U}%05gRhD S|6I˫aVܦ5s=J;$ mA,ȇ:;0|DWP^XKƁ _#[ iPaϴ/=Nmg;\A϶a6;r%̣|} ]2!߁xkMix>8>@Vg($iE>ݶqZ-gbR=HSFԎ66!,jRx RDbd@cQ47.q%FW1Oxt{5R-Knw ɡ<$5TvO6~X?<<٥7@p/ȗynmެluZX*kflShJ?zWkuan"4դ_,z:Wo(P;4[ID 4849%%}ʍ # @GքDEվixR?qsb~r?)\KgS[+O 2!T0s2|~z]lͱ7<Ojx[atR|Ǻ.Ylpս=ZvD䎾!I5j-u_U :>諸N.fœOE~YHlkagѣ"0|?%Ho ?!|d9_uV{9^z {-=ΕS7/"v==bp !KJiA2gj* 0yB4͋ H12@ۼ4jh=pDjp?/$1jy:rq:NuZ)ȰtjV`$zFw$N#iY^v ̪#)E~ni*i!_8Y uM4`ʾXF(5R+Dztjxz"jiIrژ!ՀȗmݻlSѫNlERs oةp`q\J= Ψwj/vXyF޻3WPOo 6kRH+AUVd\mn{2*n@'uR _l-1\̝ v^vTej U~q?A7:_AQ }qi#dE5J-mJVv@#;*l5F -jfLb%9 Nzc^FLl=ByM?ky(oh-5'SR*Je~Ƀo1qwAK }yY҈WʴHӯܪkfS>YIq䕽UY*u m[ѦL+2JŶCRQH쉛q Pdk߃2vY\E+f֘';ya6zU;8{:B9PDy@[5ݵG)G*GR6- 6UxJu_wa{/1'FYS,jyUŻ'Q!$* T~ҫ̹u0)"5&){<Խ^.'Qw=@;+ hIe[EJSL#c~;d1 hh)!.9.D˨nZ,'ni/MRH O}v5> `O^hƾ[pUQ`ۅ34(T)Lv˷K7=0pVJH-a5S"1dl1#<ޱ$ s"5`{)(_M{ 8&żG+b% ̟敶6G9ejSH棹)Cʋ_9-*f(/^4YA%4ZqigXJ y3O f WGf$ڲ? 7&.L:I\߮YDIRZwo-XBVpk<9ŎeoͮV7SSXAwlAk 94M'9\I}<+NMti=WNt0q-ZZI$l^bH9VKIRv+ = /tk>wnGzrߴ h_LQP>T|+ uT nh56oA-=܁%˯V8r+]@N(7 )Uq R W94.fOc]Y3K_jܧom;~JLVDseFtrx#bM_~=N&<\0}gC(춳_?Nau !"ȴ96WNLL׳za9.BʘKgv\#-BtGN7+0n[69@]_a 虺T(M`% vcVo. QÔHфjS$6¥,pGᭊf0?$ M. 7 Vp1wVߪ~[hŭ pO[U6 كd Uu̓8 q+ #ycd#|--„Yw}=OUTEHp P'*RR[Ŷ>iWpf ^?!.ޟ+4L }jHffr0.ۥDفbsU,XLRH/&~crAqz;*7rGE T)fwj2L,@YL/|\+aD*FBP1=jzbKh- VDelmz0C76ьk3DQF2O$Dz<ؓ2ítܗ3_[T<:`M4UQYr[;j+e( .ց=lOƱSEiU#h\,}i c)?䰫@sIWbP |t-Usy9^2W{! EoF;-;*nݻjpRU辶ƝG^o"$R&TQל ;O'UL}Vj@ oO5N/fyY_7p̍oPEE.O DJ*seTՆUN2[A(3t<ˁIM3G4#l n!>ƄMG=~Ct6 wuQC ,ćNO9ʹ$:/>>9+NEݜIޗF~W>.HC&h3Q(g(t=xٻ8/`қ3%lgV"N<+8$'Sf'_?QXWU"BbE~[u*9 ;\?LqnӐqa¿zNSaI~ٕW9XHdR`[ ZFVkO"ޔ*ZX '߆KVbӑ7(1G w*ɑ`3!e@ٝx|Vy hԲouCAf|;~Ww$VOrhoaT(ŮsLdV-h0j1`Yw>?6&d6L{W hG΄\:n5tt4XrTQ`+$c0 = n_$XJiRoW=>9]& pC`3ᥦ@i+rA~(793JV@YdyʆXB 2k,'[RFq"bakKhQ)_q?^J} ux,xi ?׺C~+Be Cnj_UB3^ݺ@&CPg#x/%rcNcͭwW;")-NB~&T,l@Vl=eӵіNIZahIC$'Ӆ93CLwn#J+޷?2k/;#мRVƕ]CL(xoVqi85rXG<\Q&\83ī/c|ZU0kdTt(5] " 2Kjm܌_F1l- Lr\E,P ~oV>'eLy\9Vun+7]Yz|\Uez6Q)6'8xruR`[!q{kO*79]'ABbŒx" ǡ~~H&tGJQAz69Z2z[с*L-Hdqf"pacE%)sus1n{xߛ͛>%]V:}>}&0TJNfJs. ~W"+o< ,k#c o.V49UFB΋1,>*n~c:@ObcZȣ4s)]xR=ɁIDxuu|̛_wD - =όw?nM^E qf: J@zx>zѫoD=TYϫ1\ȷ/s(),PvPHo8Yx4X rAP, "ӻ/fg{+tS1B/URs6kxHipStG[Na Si.󶭹Z $gm UHXb4e`[K6!e1]@3DjMI i z2|ٰ72AJ+ѬWѧYlڅSsd-y'F$R B-m dW^l`{ᡘ|.R2{Le={&Ҿ$w+V4܊guy:8J=C}-&h`+CLOoLT˾{Q!5 `aFYRCı-?k^!+LlJYG3EyM&D4>U g GU-'%\ocMeC?m-H?6՚ZĬ=E*ϯ\x5957ݢ3+(fUS"|2w宝h_'Rxw _27>DCCٓ <4zBP2&kn8Hju]xMZ3nI=eN gNgID/hrBJƝ% H|? `E^M`wzaZb)˷ ν:S ,WD34U5O,ͪ ze̸ W}\~9 &U?`Y9=:^W H|nh =kAXyv<8ڨVebl\V19 צh zjn;aG(ȒsNt *1Jp_13buE^s(+MpX4t aQٷF_phɋFxC"Z!5`=0J7.h-_aQٯ 2gjIN-c JF2̗C1ؖMR!+?Ps~3؄ -u,qRk3 |ժ7T#~evc1B(LM=U[?'yfsjWw퀔Kdzz<P \N 3kBp R`Olm ?#]-,3b >=Q_7>.C =ov]ن(C'EEَlO *r^C_ [LncO?90Eq`ĞtJ v1::)B$~A3MGA~hZP/d(٥m-ux޻B^)pd?oԷJIr[;8A*Y%I },Џυ ްtʃ6BZ-IJ.2nq!78lӽ%'.7Yl8E&ZVȔ{N#D =;YO)>o?z1s9պkyxg2$p@y+>D2 ?6&|sW*ʬOdl-6VPS(oux`N. -s7އJu{ل殱F[潑zlKH-SZ*Ssȴ sL+p˸*ֲ/dVϘyP9O_*`qdUOy^}[ϩ̄'pd{Y:oH+!+<]Bhʁ.boR r'G49.qRm#JŘm-0b !uA6a!=*>l"bA\%)[Aݨ'Z;H 6x=/:}|Ɩ;l \+<@*rk2\::Y|ʷ†lorPKR.s;F{vB<-ZG!27즁S3sKJn!$Gg.ќ)>iuIn, Mݸbc'))YZO@DӑNn.̋QQѵdBnN:?yu2Zͻ͉ jhi6"إ̋n0mHeϬ.L]g|50o佥S\bx{@zy.~fsB,/iٌy p*t[b#0c8LB(jlK [iܨ $tN^M mW7U#mL-X҈s wߤ.i l3d\? Qб=P<wD3y;DcZLw9b#5d{-7p:"Vg4.H ;kmE[xiauHOL:{o^X*`j7OVu7Cf@i{kHTm0tN],4juNMXˎ;B0n _UNA錶zT}(dFtYk<;gҪ6WP8q.'3 ,++}~Nc43(" `g&( wqOhI EnؕW.9wĹ$`: 8x68`ʼn-,=~#:|~ų([<8H#?}fn #3Gxr0ttS HTY7yp0D6v8-18(HTGz!#-'G,{ݻӵHSqm8 je5F=%xE[nYݘJˤ$ⱰڔD7¥Z@.@ /01LZk1{[+qF9lK_ude\BG uB[ Z;FR)D>3J'27[y XGhj UeSzPN*?,jp+٦UY_A>"3+U22j|lȧKG֧xIE*]6yo#nc3'Qc{ߢ*N)?-X9gxV\>#SeKnF-\s] }!n:[~zuҘh2WrFeuEG  7F&ZZDB)| a?OـdERZ!?e+ AsnVw7&ߙ/`mJÃYxuپI'&ؽ]`ނ>vBsK4[ckw(eam <]*Kb 0S<uS&>ᯄZy3IuN[q_tQKK^cP:DAe)> PFՅe@i a/vF߇BzQ/;ofL4DU<:EtȖ)p[ROMT jd.$kfSG6(lf/i(ihi*ȓ*=_UGm,8Ӹ w6%w`hCu:пl p׿` MA3w^KVYR!=Vߟa%);_ӭⵤq5 v$Ch3C/?ȕoR_,ٶ 3x⠊Kn,w#)i(χ PGRIRYvLQ[ZV_ EД$FO8&'8Ѹt,tCW/e8 jNe xjRS]XfiE=y BuGTrR{ʆmKڤV D(nE6h}t=cI?401GR,4qnCW '}>Jǚx' ˉns%,6-Kr)cNqpNH;@reɋmmvIl~e!H8Tq\{?1=ǿCpωv$/FOˈIĐkSC@WOEs?jė}0:S:|ptg ^[ɴǫU2(e:wPLs0tY/0AtF7AK'a4 O>f*. ~M.*Uf̡6?4N l7#W;_$'e1nWQjR0r3)Wӽw9*P e2;j}15~g<\{ia)$}=WTs8@"/ d4ǾV/Ϡ4-[1!qCєb_ֽ> DXAlf 2"U|@j8>$_D c3y4銼 uG~$ht2^z˾mS_!wCT=b}5WHn=Y3a]M '>EZP0Ds(m->?{j#8ؒ#% UZ7C1믈oJ@lat&q![ږé7;1t oW5K$&s&u. vzh5@Wk ylp*4%p, Jf-i(S7ozsߕ}茦đ/q 2xV;tvߩ+.ճ^B!l~S2mj/yXLU~:ѧWr.E3EY B"{"Ue*]l[db/V䟡ԏ*S3nc]Ǿ_J彏Xʛrٚh6_<@E4G YPCS5@ 30ML0e쀭Z'|T#YR=`_(W8҈-uXE=D؝fYGv2CDҦARqCcf3+]}ĎܵTmס2T uYl´Rnm18஌M?! ~Zi|_ k=W~Yy.aA5IOhp#SU\~hj=k2bҵBdWVwS ۺ,s31$*~ù%l!15 g%\_My-+o}1'+]É>Y_!۠fnPt8xtP%]+h9l[ooS1}DNi|]f(_#UƧ{WC}%vq$L&V~7ĂkSz XG ' :ی_Б1A"|bi\~b؄p)\*.1R4~6\E)[~a6;d ^ݏu0p&[+ cdsA/īaߦ! FWG$}6 tO~C`1*F꒓# ڽYZ_N23ڲbNKGr /4Sji`.bD9bmFmgn>e 7XAJnOD=bMIƘHhͺotEšά;DŶUz K ;'݂ ;wPk9q_3?RB?LFCB ;LJV,j ” cdKt'K"TO )""TљTo=B'SЧhXVUꂼ2T4$8 Džё謜A'D,Hʫ)1D|7/G8E-XdB 7*#%68.%HKOMs$W\bՇRCѬ8F A>%ס$fjacȍ]WA]`M5KѴ&"Yb{Ouw\Ŝ4 {}.^iB}wΨ[ o(ġK6~ U]@sO9Lۣxn` },)Uul6C~('`=9pmq-*N/ӏ3*h[ᳪ׷K2"4|ZO=.YRc$~- IQ{]C-`/CS | 򈳩~il, MsQ+DFO3@@طϑXZ()7(aEM"u&}y>]*9mZjыf{lk˪~jz’Ӱ)(=.u ~RARwbҮe%sӿMd1z޽͇pZ]bc%J/ 0NuPzp4F_M+ ĩYV6̔+޼CPC>KXPSDnU Z~O}AdYY: ffH9;lJi?&_1+ibԇA ,3s{^i[{+8g@PM}xRfymٲ6m' uAFN;zW|X{j۬:\o; bnXi0?Imxeڰ< {?+z 9_0+oIFmvP)5~;Ƃ(9+\6MbD~m`ts; ?lzgz!St+*b2|K$^Jo4¼SWTi!2&Nz;6|g^p8'Bڿp:KR_!@ )ylMf!8^mr8<ڒ1I\?}MlV-g%TR@#[yS\czfS9,Wi>h~krb`9^Jjb{Gu"3b|͈tm?$lqhsj-3$H'(|Հ6>1tqpSBbO[J,iJrTjzʜx43G h-A+?̤h'2 N',U"ܪhkގzT~2-]6d%l94z`[tB׌E0p1V/Xh3ELS! \ͫaSjI-RZFfFHoy+7 ~bPB0iȑs"B!$B6 T8Q*oNt;KU krqR6.(wǦOm~gE%V#*’&m?m]|^M㚯HʰlNM"]imsh.T~^~䣾Sp} yknQ. b/ڈ>ug3Y.F#_ } N,#d"hNGߒZmb;"Lud йQmkL]/pEPgb6+Q* Z8(W䡠x L&&7[-~ HF|^#u^RYKwS^Fu9wo@.nPi-egBݐL}[#3^?]<,,ew -b%,s0w'Bȿ;}0N{8,&U.&mǁ~lGIfQBq\ O̳3" B^5ͫmIDQ+V i~3kٶuA+\0.̓3(F$NQOVEKLҿJ=A8v7dsy׿uQX\~v.t>`ArLWeu3_En^"Ļbp>i<';3󵕨Nq$1N%zƝP/c+SH~|_춼w[Bg*ףϚ/]4kҮYMu@EmBdi0#jЖc/lˈ\r]c[AtuL/u(@O[ibq 7453ȕBಋ]3p•)A{ZVXk=:'U oBe צ#m=/ץ92 ^X8@SQ6%N@= >eGf /S qnʐQjzp⭔4dqkbJkW] dN\b7]2>xɉ=lӥ^߱2ҩ̲^Dp̴7~Wk8Fm-I]q+' CXޣ=@Fp'4Rʲ 11̥ՙk~{ 11 6$yy9dYeXJ H' S=BM)KS0^kRpI_4ckqxj̚:F"*~#8h?{#gY5h2F+&и{ûS ez\1Ty賑DK%FW%)gr#nΔ])v*Dp嚳V}%QfeNj er|߄ܿg^HWIȼ_n67וJ1f"հ!`%X6cU[ )c2S8 L(]IdSic""w8̳D/  D~Oky>rAֈ0__5.ҳ| rIJǞuVFr򚉈#ײ[~@K-/R3nhHu87+5+NA4Dݪ #9!q}x+¥De~;z5> HQ/ոUIޚX(< .]VǕ?5ֹuK̒rtZ[hPVq|L8xl0ԿS< F>d䬳/r@(-{Gf^"? Ȧ5~ %}Z0dX$%_5$H:% y 1L+~YV+>v_)`^(sx^8RUxa={V6/91q(8 XRڊRny Z@/7YnF@z!#n3{8&6f૩)\yG# DƓNJL4|cL]k+}_l)%A$Γq\\kߟlWґ1)}.=,cFi-qS.5в!zfa]WF$> DhS>5F's!Nfu 6Va=BiVA&杀2{KvK'6v11< "1>ମS5*81$D7tŊ@\AT\W=rS2J2DcW?bb<\z:? R"PHn={LwM9 q0RZeGkLօPPˆj|bE)WeS7ɓ\$y0ڛs*/΁="ԅj}8( JsӀ|5j G,Tt9 #62B ^^zv l}]MR,÷ D8\l}&_u@X>=+=İӊw}l/>FLȂ@kٟ7U=},4:1U1ŬʪvP]PG62=sI0َGRgB('~8yYf‰C䙿VRZ57WPY{lj_OJ&=O7!qET b2]j927TI10 ]Uoqs\'wzm|O Ոvei9;53>pQ&UOV@4' haz0*O MM H;46y*r 9n 봨 C>Q-G_IavEQ@Cuye6U, ֯kB0s?ώ3= u %:G~w.$;?Lg*nĠ-{O7}`4%3,Ͽ,R]Bk(t] WsG!e5& V,ޮK&Ǡmi^}Ǜtqfd+(D/Msz1x fס!Tr \z" mf;wLT;e`J><ĕқ ZF}dY˽fl R/J8, Hg< *p!Y!3 o[S̰Ɲ-yn2IZQJ NhgY-/Φrn1̽s> 4myKwoeh961L$.h5J]?j7c!_mЋWq,[.x,K*|[>`e8PDoi 8?tT_W |T" s@Z3 +²dmF(UwNq?- O;^ 6>w'Mm$JmT,ϮG~xSr csŅqu'=k3:Qf] {HX!$6G_BUE8T S_dwoكم; Us,Ib\uK (N̳Dh} VU-q9Hm{ }l&sF.v^@ќ=՛ {'t `y>81-xN0g,i%\pZq6Oj-xu&iՇ`[pqZO5;-L;20vhL )ܝރ0L.3gJVhg0Fl:UI#9n ju5{?4C揉"ުP4D(V?Jt_sCK QNhipM(G~HQEs[ iEEKH"h:)p :մŧ77q[U7z7.Xޢd@ U,m5RL&.2gD6l6C#/ !._GCx|\}ݎpEtd(ˢ.Atu٭1͆ݤnCJ%ZӔNS1o;*9gD2߲ (>KZicUGK(*T4 &ZUxӖ SxoK:T9"geߥh.Lt#JHn0qftm8]( jr%_#KM4T^P0մzf.4*iNMZH.5/dkw*נ55M(R J gO_z t4ؙeUm 1'{@La`Q7N` ?mOiƿ[,ӯh $EPIAs+aq|\ݽNwS ǩPH&4LN)D=:z>Bj,ǪʾhRGM*ߍRqQݝ e_>~Zܒ5?=?%F,Qe ]13LZ!N -gqL]rmF{VՓϹv򺗜` DP\)6MRsbHH0#bBY*#5oQ{0!9p@-emR͡G4@=)͒cC(Ӵk$Uryӥqk'"=.-L.Lw֌04\ÕKVw![<PjI !9Cj9ΛZn:<%49HgA{ #j؃\3_w>xYtf _v"v D]O%ldoۘc0ax`b1ՖN2ŵ`A97MwuS\5%:p|fk1MO+6o"@M&ǔ>%>.h!aZؚ4iKRBY)V5 ' wwFW2Y!tm2I=QzP8'՗YnA)"_.hvyyo3Vg(ĩ(E_ :V&T~Ũb}ʖ]J a@' 'fnBZ lѢ =Ɉg `U/e =SVUԊEǶ5̳֔CP7Y$o: 륺iԢsLZs-l=dK+z G? \yR-ʴeIImqp 4 L'H$U_(fӦ8sZkn+'E, 588|i(FS%j1ٿJ?J/9;;*+{M)PHMCoy1<K }nGd${Đn0OPB*ߡVA畇P(<qo< ~Qfr6k10AcjHK}|Ca[.Z%+4O!B DKS|aEwDd(G)~1f%t|K:)W[fE '7^-o_ˊ9>c&ֳ9߀]d^C3FΗGPC#@b?Y?~|`SpX(!YĦdR@f:7,QxD5-TMKw?o[@“#^8`F =\BU6HEBym+c>𗺕Ɍȡ:U6+tM7l]珍TQg$L+,8S,";dǑ=4J.ZHw9fT[h.[3Y,5*Q>O5$4Ue?ޗ-ey~SmLbԺ G"|%5u>dM{Θr6q6u2LP1_v\2 ~${Vc:|l-z1ֈf%>ukZ `(FlniA ar'DJRO6bZ|D3F Z "IC sdB[&cțqk@"ǜCtb8.bhBm+La;}-;pPH Nx]Bhx=5#JWr `9%E .ۓ"Ԋ]4c8)%$0oUYyVYlUc(M]//&XC*\KWhNBҗ`#)HL~q$6c$A.xPT%YY|(MKču}cHUɏubߟZ $?*XN}FCiZ$H|_HVIUN)çNWY~>C*q wɷ>=ٖe&u_0xeVeQs6KCMIgo٧F#-'goȦQ('ҭ7ב8h10qfX.Y!,;z2\` ɕR1,-cS]k|9`\zbZCF3ÅfZ^(_׽dC@|P6;2Ӊ/f kA?)tml ԓUV5[LrddUol~BͪP̛q$ݷ / P)F׹eØƂE;,_oWV6 @usdRn~z͈X8fLN_E]b JWɘ,~xX&Բj_ t~g=⚩\qfî% kwUOȵX]:,Ks>ewAj ɵ4`[ݘ$ Ǽ+p% si#7a"؛XmP*gwtVJ>*|NS?&h O÷c`j= b%"˭6 FUPgZ0P[Uye8ǘ#gx=U JGf~ iWu-+5.~zO,zj=Ŭ4X~#E42Hh}`'N[%$E< 5ANE?8_>Y29MbK@0+ߑ1au>g@,pLKvjK%y~1Ek{K= ;*efU4zSdg &JcNAl)Z)v #?@t˵iCnS(Gˣ& yNz$ kLHn #Fe*=xn(ÿ-eƩK)80]rɁP<^THOS%;^,.=w877_:oJq`,T0M=pᩅ@;$F*:<4Ff\>qlak.lwV<%"\]$_,uX D@:DP-CʏSGG/1ky.T>Eh \Pg,6e,ʂoʗ'`|Cb( xv~)nYWT,e1T"fs_) }]Z))' \>=z߃sԧdS9'퍇076_ blq@fL\~бn%ҪYxM P~or~Y : a"ë́x&-K]|M?%Lh"Ux[d?bFU^d6! "-Aj;'ùXqqsJl&& 8%߱g8DKy/L!6GBN8iI G1Q-rn&:NFb : C3hBɓQRgtZCؕF+OJԭ'#$ $X⧝| l@3+Kf?- 4C tnͶˮ0񸗙&dDt N} jYp=gdZ|r4 SOKo>5#¡,ejz^knŌ#195Vm8,3ueXA|NԎs>nI\0LT4_*58;~ʛ+K/WS&,(AQW"JGbI o*ҙJ 5$o&X'ڒaBxaTrX&/Ӂ. LoY*:)<|s:w֕D{* \c֤ R( W5 yG9Zʚ?:G (g9|*F$W8:qp;i3n⺉AҔ\&#'^$ECH>!fgKN{e c<=ZYc22WӽJӕ*U'608q_YbŨ҈A͊ %h'Yjb}$8޳Ywz}}gY08n[k;6_6e?G}YW>O!*LI^2+C2UM|bE۟Dm0A,>NNVaݽs~l/aۨ4 AU\'& SE?, #~"{\4tNU?K|n|Ϫ2lI@]a'٘ g{ܝM<;|(iL ޗmywNh;:rٚO^7ܦy&}_ <[>U޲$5VŅPK-<{[6A+8%/UB Cg{ b>x,V"oN;&'ˉqæUJ0hI`zaziYHl#7&#ZR*JZ;p=O0ɺLRpȳ z̈́s3[ݯ]yL5 W#/ l1jPAH2qyKVએC`|[O.? $؞d#(*G6yok]YZ55X\ -N¡h'[:~qFQ CCVp*ރwAɄ,Vw dҸb۵u&)ƽ!_ˆVQʂѸl]mYYb@R\# :K$Qlʶ?7c4iRAcLg8c,K0%B-!T S!'1u%X҄O'b7"sDgl7[4/K~\5mx]z˜iu:\ VxbqfZVrw=229~A7dS[7IMמ|h>E-O TX(S7ꆙ&rlF}^ChHC֚"c'{RY GFo+x (]S̠jzճqp܈`';M{0cgU*6ʚTI- $ZP?X~Q,h=t@86G2_<;?}]eT0Q}W}VBڬI;FYv 7'1FeZ-*O4Nq>yɃ C(uZTU&"k_~dEc`EyF]Lr7LHu78v6_ S>0n:#,MjT"NP7ٶa FW..9'>7oAeO;;RGxK) \Xk|K8?59@U_ o="G肷SI#9]Mde딧yƎ\uwd%~P Avzgd,o6;9(8at?xM*M k9}ӪZ;0!l1vɒza(Ð!1(w/szBƅ>ug 1zf?knİЄ 쌱i;~J.'b24c{m|}scG,N" 8fS_xN?ͭL(LW ! 31 ~օ]66 ( VySEsc㵑RkDT"C#0=hJAy*8񈼷ǿ T_!WȻ |^_S$ |ho}Pk5h"e!m{lESF '4]Rk r$ :!^O}2z#oY{@d.CԂ8J\nz6 @Sho֘R;5C/t'H?nPhr4}&@|-]bJ[1F5gEga}Kx<=*( DkO2*>ɖ.PtN9k"#1~'r*W1WiԳ9V{ e]QͤzrfG~7i 8X0JT隃Vk҆_לThpevgbH!QwH5+u -wE[ X(2I* 2_vVƛ!GҍHEFiAv6my0 bS9e9%$3/\el@ x} ēB\R {;n(PyPsȉJB7ikxՔ5"_\7ؕ0'oӁE8^ӑ}˱ڐt|һhQ˙L0H;བྷI'_/٧𺊇֠"TX|r\>^s4|4矈2AF=%,1՘'iA!]IqޅɇӢlgŊi؃.voh 0s~VU"R+Z`$\d8Gw$!J~-*Bi/u*C=zH0@X*+ NOz9 b'χ(>%..0y -t48 o+%c>gZ<2,3ZoM&O.ΪO _ptM.($p8e4GD@5 դˎ;JLlwJQx.١iAn\́4&u CCQj|\K-+UȂs-'T7OA1ď7Fp Q 'Cո̣q }J]Z04i(0?/HeQL([xcnɨT[nW4RN-  ;3չdrMUv"E|Zt&\%)RCڹZ7ӁOm.ES~n݂S(2RkL3(V\U`6G7U; ̱p._8B #;tsj]=䀃A->=_ۚdt>2}x_##X SS$~A56' l\fo dCZ/Rc~joTqm5JSjр>#D8B5%0V,E ,eĕGYڥp#h={]\4ٳۦ­k e,4YZ4̧79x >RS`ETgi ӛBu GUNE s(vx"[ cFgʼyNGDsއĦ⨑X>z)JBQm94ʂi9d>_F} Aq52(TkngԦ:C̣-"Ôfsu$h K晳f47nw g*槒no=Bq  R.9Ha .,&|"s5/ [jַaFll!]KRkxIY?XKIPoa -B N9eoK P-gF^Tk{Bٺ6 #':n$kԫr07TP}[A~WNX6D,=Ό􄵯46*u*rtvNicNwG6i]s|a1h[7D?z#B1W5Rd$Lå5gǞ * /秚?"N,-NI?Y){1J;1XjZUΩ駲D) .r?)_b#$Y&9 B[=ҙ OC%֡ ӽca _񩫒#xNA[쮕IVnOPltO}@X`4$MYQKc/lIGz%\JM)(48ᤠ 'rVĀu uK-לPoX cB/SlRLg((Z8͑%`yKڇ6OŲRד4EMf%,P4ΈznE͘\"g;@J5FltC4НF `u"[^-_QZȩ˯8gn "};,X0j:dQ}0'F^;6T"wԺ`!ȟOM-}?8TDrM,`h׼/e␢][BŽ%2+MKvK6st*k&0Ҥz^T=C9Uq.L1=zzKY[g}IOesV R˝#IʗQZĞkc]@EK'iVW6L=b^,<2@k^ω6C#oЖ#&VҲ=`oʺ>1oe˓):7=P0wpPic`nTD^ڤY(ZnhQaXGd) #Rݷ'=2_m8O{9 _p8Zli*>_A8!+$.Noz;R8x"z)wy$Ӹ/Ċ8S c&-%k8eAٝ q! Yפb.A2^I04.Qm2_m_oe-"WoF##@MXVG4([\"莈L%cnNʤKۃfI]rb-Ʌ[z*fѷ߫V.t=W6xw 7 WG'˂tQZ@0.& Tɹb8QRphAWFeqS *29݊m#ŎIde01zNb.R4)aJ8 1$ ŗBQ6ܕ (LR)rA2-D~X8mVH;RqH8.sH4{ ]t.`'RA&0˅'2MZ\eM%{^kʶYk&w%8ɹ7 @WG2؁R6ͦTq"H*om^+,osq/ #)' m6|Y .SWEVc!p$},%/Ae˜׉RexSvc !J/yp(ʟ_vx<E.gi,|\h$b(F6rRϋP=qZIY-Á4Á IedfzSGKqԧfaxfeAaQK@35v0D;i߮$uχٻĠg"y@"`)VpW0}DkL}OSb"Ԉ_ uQC9Bȭƾʟ8M+&?V :ꒈrUw36r"6qls3!/mo(gY5@bu.dHR~؝jSgnHm+L)veVup ;$w>}a<:8m%_*7K*1\`joOa} |Ъt2685ԩ䥕MhYAuڂ6UV> XI-P WOe;#c[NjRKjEN'Y$?WAť"OK#Bz'ݙq?U0 hJ>ieisHcR?IjR!h2^sR麟 6>;D>jtMA];咉FB3-@)Lַg3:Vk@7|#=ew%G$+HRZ'z1Ȫo[d(e| 7EtMDYRi>H;KT6ze͊`uA"r87j:dnZ {x3el;sEw)9Àt sqrk/\H{!ž2{0\x:Apc9BjpKF`6p@1n홱kv )Q]L+'^vO?g@R @h̚aZZ#&]G9[3ӭg(%L9'B51u\k㛱_ )Ē#gcチ``6YOgtn %Mr=lRI̳:ywsu(ނP܅TSvd;A7z٠0/!}<3m$Y{\, l6|EXw!D~L`״gKΤ:l%OGp~^٥<,gn Z/'lSğ97=ػ8nU)N~-͍o^^)g:uO#%u ccΆ!:)a$ǘ* aL\!&&FY-'?N>\ؒDAzW0 t..//G12]uZ]\4uKL-I9,$L(d~$.?C/|^ύq7rdZhWP+lK7@ci&B [(7m9LU){,|dr8Y^ Ȋ!5E׆i=*әaG1zcΠ[lqC:h*L>Uz͸׾qhٍVfwmntNUQ\[s^>J}x1†-ofLP1nxB-bZ09O5d%bY쪈>拉/l#d3n1pM~sAgr6nAxA~)#<ہ]EH4M%zH]@'љWhFϢ۔Ӡg/[Q Uh|O>]HVNznZ Կ)^_˿m &ş.,!pI{ E#߬䝙( Q(FS_l8:\H3CU.S[QIAթY #R-`rں"7.ߚ2ӹqLGt 5*Γ^nL̨$LD, Qμ2ϭμApO :}Z4!y˧GjPQ '! =z4SJ Lֿَ؍kz+`d0{O=GEмz #o]mi\Z|LY,&dXJmI̖;u6'OJN 0 "3i ?Ŷw</ M ʊl'ZP(MRMSX[+';k53%GG H1r+'l-xYI.=o~sޕ 7*嫼 yF嘗/ck5ngb$u~Sshڢo@*/=lU![~BBm{&l ( bG/?b|8P-dv8 T&3Sǖt'-UeNsYeLSPnh+5'{%FCSZi3Ih Hɢ6jjRN;]X;hu92!E uPFH)Q~ª^eFˉʼ83zczD|e({ "6Du ea{}d]ȇ: ԏF hVq"-WX+Ę"k9fc _}! S\8WT[2b-c {F,3}uؘD^۽xQw3c%$C pE>ݟU[ێB&IN~o=UOzZ E4G hYiI𿔟 =scjh9_[%s#ӿ(*WY4}y۩, N^zV5|Sʣ^Me2 k?"u2 nQjX0 ӓ)` ֱ&^aJ1]Ip`L<+.`Ȯif fJf>l8a*m5mPu#q ^|Š@'?o 軦QWr1OnD>$~$vYRkT*t`Z&DqR',>^g|.&hAöSx&ÙU(-d .#挑Nq^9.^;~4vg$6HmPoPTwlɏQ{p]_?6b;ςMϞM O7D7(e (ӑo"˃ۆ!N䂩+z c x~6]w'ZG b^#bHf>ǔ;l, 1^7dc*)JS*u~_fs:=[^bu5`"}\r]K2 HeKH箒N:}?EI d DS=e޿ М,X 2.1. 03)XVZ^aRМHŠ^8;[/ơi`^xB:~B?EM5s  17X}@)7cbijH~ѤQ4fm.iݞ<%U.?1  +s| EuohM=ylD; SZtZݿt}9VZ,jƀhEqTQRwn|e[~o{Xh)+V %QT]pVrVaUhqf&ce=:43ܥw:2T5Va3N|_MN:r]0_,zHۊP©s:͛s 3r`-єJDz>Ȋ J*jV9*a"4G|9l&=WӉ JH≛'c1`/ gWa{ѡ\}gU4ozMֱk1;w^8BZ^&nzGǗ7P{{fd$EN(LA`3p$A"S j09+Gg= :o] Fxr)ODw62*zqԬ uc~nͯ~< h2#QؤR(ffoV3=;e#{I$)_sqq\`МDAk/uFb' L(Dgͮ5͇a,|Li 8MJ؀_qݥq]ojd,+:e=Yk:6S>WZ9!}ٟΧ[;R)zu٩Uc:Ƈ61?S潚TF3u !:4!г-eu:"{%Rߔ[?6$G% #H4tJzq=]uיv Eq4,A5ȆDҗQj?Rd>+%[Tsib蓕k$[6Dw[TawH) 6כS#ųPVOe`!|;ٌڐ5P#Hag\jEX:GJ:mf /;8́;,L=·s@(b5t#aU |eEC|I 6`MT 9ΤD@Z%G[Ӆw $♱mEpAfƝֵpOV]yP^肪hC+-}avg;gotM2> *cҙ0==|˒""w)PC8k0A I܄p|R1x' ,_b&+OKld nV &1yƎE瘳,umZԤIː-6iJokxGg JTuN^|@ |G&DW]xw#Ale`h _CW`Kz? \m;vWx &+y5pxOu}lN6`dh>a,ZZ_s+@rNQײkE0,iH̄^97h0ZmcִYCw4p+xk~IF[@jZ3ij۶Dmswo YrĹGm[CA-!2yleZsm_&AHxxx9+=pm+Y:S)9߅@NkikEQ|ǧbT^嵚ZZyD"ğg޳"D /`Sx=X3{-ws!*Ϸ},ҳS ʢ(O~[@ װ*+_j C74&K;If®cho~X7 Zl AiZis22M [)JHu싍\Czp2Մ-B *x C:bM{L4E RDAڑ$hl.Kv O:[Ԫ2ER6XN]jmmF0,Ŧn~zՖN&Iᐏ[(A˅J:*G^Pϻ|89'ҩ_)G81L{){߭Tr-,wĆ`eCoDt䬳D:gtDiM +#]a(_xWXN^ǃkUA`OÊ0C"5{4و bЫϢGɪh`χ4Uh|n%W jMǞĈ}`SpwnIQW;ց2w*4jHr^_v㻒0 p( سNjANʞ=֟P6Bk(?A@8Fu~L)xsEB6NB]H% \GDoY^bj'H慉u}C]5NHFgZ=p5\: bK6ddb:GKC rN{Xg1M;Q {аPt ɲ=.-1 꾪eh&Z;'aMV^E[/ٓ"vMq[kTy)[ 8Kعkҗ~7?-Rq2$^n)M!Wʟ##zʈk$l4]6ԇ-&0-#yh;#r)C?{ +Tb}ԩsKWjtatq4BǪ Ït91#1ymm9eZkcj'0ڌ)%"s, lc3':{nIbƵaCa+mh$zRTTc:9ȭxD9~CQUrw^lϓ]S4QwSAxe= 8v$ s%̛``t /u̞S#KLikj-2{n7.J3{B^JIgDbO@w1XvRwEÀr r5T< ;OjO=2]re{a u)m K(tW{l"+~& 㨉Q/NyD?<&Tot>n}K\i i{yB]V\+$ ԧVBl 0w!v%t{LԴOf}:9wy%& gKU.^{״[ Ts1rnGS܊;Lp1CB)#RX^1>p@bD6`Lcwf4OdGӒCQ S  Mb@DXM Z꺚̛ ] O9ԑ$3߳*:Kz_yv s;RĈI-(B#.Za7YO5/Ń'qT7|?ĔA&gq] C.Bzg+B:M3)$@W{,0R6%/)~Lx|s k3DGwOz~ID=4"v( Ȅ,TwfE0;7zИŀ20bق-N„ R${C)KL߆ vK(ؠCV| p@v怰VJjc>!.6"'\R%D8!s!D^?ɋު%>NnvK]b{0/XAk-}ިl +H35 , ~0sX KZ ?*ywfy6Nfzya%Ս*ݭ[Jy=ëLh/̲֫12[sX䮡+klmNB4#' ~atƴVfYac ) s0D::Zz6EHR*owGXj^,IvBxE| greyqH 5vi&,FW?-k_)sq[7GnV|ar6 /rOJ针1z|gD\[_\dVyD4o%J8d{4f/@0kpddB+UҌ\7))Z1:QPSj%hzNQ5ĺ̙:ZE*,UPz; w3!A~*|?FSW_$ K;N]X+¸yC?+5ĦQ+@EA TҊgkT V҂G(D#,2wL\ފu"6 #sDzE1k1k?Fy m-sL+@`c`)2Ǯk0 kl8BZIݘ^"ߙ !;pbD^YbL` +?C{\IC|Fj߸pPGwڵ7A_eńs%[٥"!U&K%Lњm3F rml|_ mp;Nf{%JOsuwwWi]|#  PumۅXMfs>waa@K&FSzXP|.݈a1 Ǝ q; e=;7ozݠ༦Ae3u$gl(R2\r~0~2  ʡnW?"48E^jZ$L7օ TP7̩}deyo3b:H_nQpct6M&v :B-AnN8򉶁]mT8PH+lii˻3!ӓ5rOJg  RqT{[}.BIY#|4 nl۞L@ S-T%2=6˸^eØg/i`KF8x6_@56q H{_aML[0UZ4q3NLj 8ԌnNT}qQhd?G4ojrQmMNt`:Ȭ 3O(`܀¤jѺ[,y jrqY)hh/a`Jܪ^ZkMH9ZzXp&Sd.ӐYE~ QP f5!,P.t2gh:ůhP옇CK@Dwd~J[KJj$1x.Se/9SRKtLMao(x Ck#ӿ$+xmN`1r^.(]I]:|9L(4t3BeJ`sO7>1-CR1vRb@ʼ'((YnfFPc/~.naN㙮A`N bO0FH e8Jy7tZWGkrMS=+ $[MɐgƏYs֭{iܔ@zpVkS2|īZNҌTPKVܯ],}z 0_e:ѮG8#YtV z@J=qw_87 ^SDd&Hj38h)]ŠM;o7X.YY 41IN}A'2hT8J,;o~HzekZ' - mZS6᥷jNoap4\O7wY(h?ꑂuo7~vc"gY ?X,ǍYܪh[W'Vn,W/ AZo~eL n#πKMw5c%r\P9O W 箉-. TPgSt|Ӓ`e8_Y9Qdq_0@OׁO=G^E9V^(|۴OJ>-UVXpinKTFe'-:1v;Y Qu{)ke6M8رgiD0b^C"BRRku5Ϥb0F.Fah(G)[VtIn#nӾqj;b$"B@NW%ɴlb?Ry+un\`pi2^d.lH1}Q#wz'/o[BN"-sBkOpK:K)2 x$O|`sJiȧ 0wQhϜD`Dp @ӬЫ%$ |yX>Oaqp6kQ]4ܟeA~tFOeckߍ P $QfPL 14jJ(e7^%{_UPҁ|xbiA7]x' 4m jp@=}ǡ>m%k=\Nw#%?BT(&pJ@u$v$m_(Kre%jq(הZ2WGFY}9DC+;2A :(43rtE3Z 6-KpY6nH9h/ZmHGkohXx"l`c\r~K9T P>{79F>m66\ Ϡ쭐j@IF%LD}PqjAT Ҙ:N?PPӏ²Mq_/yͺbA⍆w`6,iCd"Q-$bI~}۔Jc'~=qll U%jHWk1O&JH,+ZwQ3xdoKho+zqG1LTz&L8' + Gp\]z$onG̯EJ}E=m][E,lr9\(;W,3@V'/tLihztTA L>ϧio|_SҫTgI`ö\, No3|0}amRTQC "͂kb`v(mY0nW_nǏi;H9:N/8񒅅LǬ􉯪ؐmxO|qκyȷw~&Frt @jr]Zl/7woж1IeyC j 䏶,h!&`Q𶑴'+sHb\R!hl1ldi<>lr*svez0 TS,wAPi ׸ms&I>(+osc<j1 jb܃9rs!{0.VuTq + m&yTEpmLdzON ZϷ&* x*j--0P;۞Н2?'JUƌ 1;A켃XFT9R٭̎|ti/nsQWd&ގ9N;@Y?Rt߬ayם'JH6^fZ.ZKȱ3j,xG*lc:ʟæ#e \^ӫ)k)3﵌VjhuICbLRψ|e~K +&,Iye[dx"H"V1PBFLp% g49k7C>dk]B/qY?P G&LȢ!}5&` >k3ޗXN8 ^'@Spd]0M{O 5췃 "o`q=K]p#q O|n^`Nb^YgJ~|3;FAL_pV2o毩q6F5NfRJjБ`*w_J(șŔ “A@A_/ _q T.[Jƽ/S0wP#z8}eXz>`O|D֟kK-R%eS(%A~Z\/"0Ìʓ-}TbT[vw _^-/r2_u>a9}7Umfg3a!"}Ǧ*.󉬞Kyr3rT%hk8)Rߣ5/VN; |eyMݷLsގ&]U(hl;eoUNSwp{F 'VuZA۞e)@B/EҁM-ޟ|6x]*M}De!Rxw¥QIM!ONt4W?JKxq)neИ\~Zfd ZJK%A7[N䲳%휐Q?9R!-BpIT7b)u/W"20` paCTM FC e׍>r6Ln >~eY+7Qw<=OZ;tQ@,|9/<9`pr?3z|i7ޱç#Zͬ/wNxҭI'0 إH xȆ|2౼\Q?_D0dkO-K,F\47hMQwEfߖ!$# zM+<&35ʦ8'T$CWfuL1B=~j潛lw] ?،e>wkxi6])(V~})TU"o d 9/v2Nj=$|t>79.qPlI{~>@Gvť<$]lѺQPfD p/F&y ln,[p{Y$ q%^K?GMdZ7&X 41F[ଘ AW\5XލacۓYwuƢO뵌 w!P_Y ??n(08ZaDwV8;H I^8[DO.LJ-+_D`Pd3"d J6F7oM\v7m 9pn1i /Bvo|D*b*^^2%&ǂ{WX#z=%Bqh썗bl+"f 4O,oz s&"ӛ@=mB*#Qky#^  CIߒZja`q3WD37ŬQ.-96c{n#J>@}kUYu=\Kv!mn}?Cdn2?`K IJ2!(k(>1*LFACgCV"2iuUMp2p/FѦ'5?A(]0_Jr| Mlints(hBKlT1t2J"CC7ɩloщC̪E{'5C/)秣KXW@5tBPbra*Ds uU L9^ Iv~gI'(wo5[#v+")'_WD{4ԁ=JTN/6`(ctgU[gUC=u/2Ν_E%I*aS6l <;Rx{Vq:LHspdeeFϗ> "M}s*u#V |xY Y~X\YY-UDԕ$kS"Wi3: .0U|Dm{Fl\6@a]τqj0?vT!o[J{=Pw Ui9*STQPX',?f/ww$gxW^}'Nb%;\uZl]Vَ0*ZwqPٯ}[i?˴q)0r84*(!O .$EN@D'R]?|=Yb2}|Mg5y%e%qj||#!W$}^|)8au+o޳:|"$Vp+(ko2 />+GnKuvd4N/7f9/1 s_ղ;O[%"\=W=}I2"{%:VM>57:@\WTV{f쒓 I#OOhmfQ 9&Zi$w  b 4b-怎!xXU%m3T=_A_Zm \@yc]j&=>+c.mUW~UƠT vNXAz[Zxfhr:Dxɥk %4TAVչ3^Ų6ݡ@1S)qFϯCnCb_F~auܷOL*nh~S*43^xOm($k\Z h5:`ݖ^OiaG%/bU3+6,90XEs+gCr=Cd}e>8uM^u\AmVk=Pjje;{1F*1]{6ç%]DAӛIh &p%"6'I;w "!@PV}N0# 3w2rJ&}P ݱ݃{B8Lka1fd',l+y>x:VOz𨿝){U8DneҪˑx~%~'+`W۬L=A}N.&p;hu_#+]s:PzPVU3$﬍۹G-:pFt^ZhiB:R7d%a=~o `m ::[Ytк'N$o!F6-nD\@OZ B|<@ uB%]粭lӏk񅫆Li ]F-x26v^y`;$b})H7H/D#@VyveyO_ŬR얡8 k1juG^JyjAH[Z]T_>xD#0" ИZF;xb35|ET2WA>tGNSWn4i)ɘkDiY6Bp Մ>gpԏїSaj g8//D>H]F׏IQ}`!J`GPdV+Sc}?LOٌ/'rnZ4OF^A Kiն~(:P 2尦󨖀Sɚ6NgpA`q=*XE\F񭕅y~ &HK [`8pd[(w3Vg( JawsE|7^_Re#[sMVH&(L5lqWx`fM* 9ŀ"nv-1s:Y;Sgb\pQ5'ndѧ@ڿ4SeJ; W+Huu4gUdhgd$_́ȹ E ߹ VXCK3˨B%Z{Y5Z yKNm,PSZYuyLQt#th P" ӕZւ_EDiS(r>{n؁u8MbiZq;O"Ĉ]\*suRk9h1yj7R"qYۓcb@dv:DqO4Pz &[Fx':r-l39DnakKEXdoōUʧrsZ}W/jSUnv/$70/*㛩۔nJ_bcBۄNA+X֕@Kn/)l'V9 pl W[y*ʌ˴>Sq8p;oݿǛ(\ǀٰ Gq˼O}:P nrU#eկΙOơY'm  JMLX/_Wgun'>A_&!"׳3ɠNԸcBm B6CX„'Z~׎Ih~)j(隴E3YTW B[lɯN|EҠ.-ylikvZmlX^}Sۛ|&1E *>ێi$2֫sХwԣ E}y#ϏBSi;EpOi! HMI qZV|6"t4W 81J 38dD];j郂s~LhvcoӹJQf\etQlf>]zIbAipÀpz#"5J!ݒA}|mw"4}q ]%,  RL;ϑ/SCr_g:|yK% Uaoi8T$#dEXNw'e"q3(w8beۓ0aK=10T>1Dks#'w9rʼ`خMh'<H nukDsAtvI0AI86[T#oaiפ!IQӥ/GIHooϕ& 97,S*yyӑ. H%\..3Q0%5yfC' Jk?>Zhr!b'`~iǛo4$Zn[#?=sGWBd#PB:& {08c:I3qԳDpwo"ioY~is0Sw-Ur+uI79DorX84Zn:7G,}l~ 5pU_l\@Pwj4JMX7sS׹" LE! m/-c+Pv3z7OňH+|(J ŀtO #ӱܴhP%ȔOiZ"Mb#>Y\Z(Ƀ&ZU9JDGzeےmVeFŬ-%v+uaր !ߍ /کKS%l-6z\fF5ލKUxtwdSU{htIjpHu m `tI3LdG`X)0 USq<|MUlF'[vdfjy+9+^:E~gvp2@qMI5x"[,<­~]eK>4kHWm\^?d.OB>)\8sO֓ml)C?r꼉ڨ7àJV˟Ag u IS 6 Cb({O7/AקK!T8 tԶI>iNP"[Ħӽ)˛zUZJh5zoP漹baafa+Df:l"P}KdΒg^;sQ h~K X^_{"O|sgk-fJ,Śk^0gpYb{GM=] L/Vz<}X %N 9zj7g4jAl bG wt*&ЃhN$. V"O[ӤJp}=i2M{6LaXK@ޤ3'N5(T՛~B-}'*jD-!@Ŏ~(ȤH[~ؼtj@Gpm~iNP,%|y ޽-AHYGzMh ;ɦJxHm#B|6ҧv8C'u>R+a]G"!:vvvԨtAlA"k  N,0|at:9 Em !%n*|ZYݼځ LbT#[Bw.1!iȏ Ͽ0̨R;>svS̬XK_hOfnϐr~#6+,6^)*IKx aa/B+RZ2kNt~ӗiLz| /%>j7!Kڠg?L*ް, LGP ) ]ɞWt]zVJ;1>C0 N۽[\&B0-!`lz L> jmmS^(Խ{r]c4cv6Bwqӫb#lmӛɧݬyqgq nٮxe f_+0͌wX؆yHq⣉Er~ӗJ?"#-y!X G²ޫgI<0p+vV1;دW Bqr!Z¦"=$g^++a@ +ЃEQcڟzvB-;=&0 BܩFy\ YsĬ.4P5~=5AΤ~AUl>piuFoaцz|n73-vGјR1E; -]Lb\wۛ>8#MV(]xs`8&,UEUĶ9DV +7/}I\>gTu}oN}|)aĔ "vҴm=GxF}]v'[SuJA)maypyuڤV3./f:U QXeA6ϔ/yOJ8)v`x\"uDٍ$ @C%[*Nj#f08z[]kh㌂Cfj rh z6!Ŵ0٢J9rBnl$04_,= D悷R\\F =l;*i܇lħLՊ%*BkN[oY &lpjD*~ʚ5эx2)ˮ]u2@Y }TJWBmmBnwK8!oK) BĨ8r7D L˅pg oؓQqQ>%vt^Ɨw\Hz~1vub 1=E;rAǼe>A K}197U̵Ҏ7ձ6>Jo9X:#-:9^pBOWߣY-Yf;G2lh~QpN8pWM!<=|gӛ3B!k&w0Ų3k%,zzƍ"%uԇ-b)La]ЃRYdmnʿ?fxpy$ .X.6LMZ$cWFw0_ O&0V"i z@fKgeAWM:I^8`1gy{٦G7},SW]ǩaN34ؗĪ|O<5݇LM^2JhodUv/J2%)f5~1}.3u·@!-Z;+fDt'\8N+Hʒk$90}j_'-Zw:|4Q|˅ W.jxGI#Rݞjeqg\q 2u~,e_iKkNr%& O#q P&\fM~b[:jTJrGZZWɞ~ceY^c3Pl@BN l-(r3}8VAHi\l~,( ]٫yAW!.p.#мM#^(iV"ȵ6[zҺ͊Y`t)|.L <##e,]CmBKtlޭl~MEN=r!ޅ@1DoVCfQ2@Zc,5旳hL5oM}'TL1|J+P)~A sz՘G)R+ t9~҆D(D=ܳɃO)Jb&'hncrVMc-Hv|Es J{{(jREݭL=6&<)\ 6 LMzhhh@Co;>8~Vc½"c"T<~_"rWtL. LƹGP~2uu< Y39Pb,n9!wSZUt nF2Ε;St01ɸ]%.xp`ds0=YhF T8l,Lq^"~0[va}QU*}񲳕X"j_ 6yN#D4fS,"^t LοUWMy|NCc'&Zs4Ê6ڼRVU{ƒy[~TcA8PMj/Rhy4-" @u9 MNȮ@ > fycn'Wё'C.( keT:J+P]+p-1anVUxCԌwќ_M$ gcG _7!y2908q rSQhQD%IW+c,g 5m z=`Vz4 E{u5iŝuJ.wpR  …9'"|~Ň 47N x=WLMN}ڦKgmo;Fk/Dᘣ'NuwO"@3"sGc:kW4"(*up( \s*}1q NT+s9 .ק%FAѥmY>F1e <\NE|Eo,}a> s7CF0*6[_ٙ0 qKπ>j5W.%T(܏CZNsЉ"D~?GA|ܧw& )-M\xT^|@iC=:JN%5ɤ C9Kěmp^nKm&҆5u{pS鐑Yf:҇rYz)9r} o@I0,LΗo| K4^C"Gφ@YR؈˭fe 1AhnȠ~t P-EEXNJwǃB}M&x<&nl|`(圄r]Cmʬ\F_ 3[Yyу%nJUַD;_6yH.{ӟ7Y]"PaY$ !]S4 XQ}GtI?2T__kL[*c;UA r} p/AZ 6r="[eQt?ֽ YS;<(臏jkmʘ.:ԊM<*A0_e`6sQ_0G"0(ȇk#yWrM]M"v%vj頰Ov7 P/YTV<'LDj;ly6s76d;'!!b^ҳ7RK NqN3Onۙ"Ǧ(-DfW5Xr֋3lϑ%֖[R{6֏⑥T$qP4\*Ҧu-t{굴IztBhF5i8`.Ki{9\Z:Ds}hd68 R<$zG~S[o G6b {Ϙ4mNtWH h]hs|AX{0b=6U T^zO4읽+ԑzwns+ g72g,جmIKZܕ;-֡`z,{Ž;g*}ҹ카"U&:‡q^2ZyiLly!]zAP SrmAPDHև^5nj2fe Zki.mQlOKe{4^0YLAݓoMy7xN$4ˊΌuAM8y:Ozw sd\|2_Dz:Mv%fқ}P* ϒ&Pa̡︡ug%PdzǍU*yizODZ d馷]k Ϥӫ69b'YA`!2LjlTY:tcc"A~QJj{^Et8X*y*uڼoo%UJJ촬1cTm"ޤP,fL?y*|=g L&G09j zT4*NutJw~ $mU~[:vX:CZRy{IfZNēAo @ѪAw}x "|g .-06D| Dg'Sav<+j12bP腇)F Zb`x"& # 5 d˫BŸ4Bw;˃-lȊNҲCu)ۤXx.3)U|P~wI++E% apR/6 y.&o8bY21btֈ<#W({.v| w9Ik,s4 S8)_W%!n*nx3֒TP,=5cacM)zH $sZ &draFrm%<_(p^B>+k[!\C1YG3i~əlD.[ym`8B:}c?7coo!g͋pfLUgrD8{n%հOȞ*6{HԶ f({fm^BC0wOhH/?̓azu3(Pimg]m Woh[(ȹ˝,;PZuuYaYiU383`u.Y;UH{d{T5tA7J؝SW:/8P!:2V)VQ "5-{|OGX5HzfkI?#p+ͪ,\gD%C#NaIC Ker]`^dC p`ѷ4U(qvƸcyóMDxef=]t3G۰+AZρ|f8}B {/u1o{l$;w'&*AH.`:*҇.Ҩc=|3BDL4„q)fQyGKtecT ˹fv1_yq_3K.Z he&%[pEH&%US sËQ@6Cɔwhi<"3j 鉎P$9*AmS7Fx\3(!?dWm}>* @#^XΪؗJg)/Q@isgWRRj)Bv?Dk cxed-Yӳ=B*O.A# PG/Pv$eItAPc"5>aS< ,9swD]У_X6XVT3RhC)?)i18+v2(P~'ja_ a ɥ MK ~B9ڬPz%AU!Q[+\ wA]6n:6wm<}OW2s0 &S Uü~}ftP*{Ԭ TZz(HpQc:2)/8G^D8`l/Z_oNu/Y1Iuܟx/ r0X*m" I(B'XmbO >؈:؍qc 5c_uEڞpA6$ CYV.ߞ4[3.J%O&#%%?m‚D.Jp̰_(h6U@W'.T9A''/luz>BT [jlO/-pG8n32 ;-vlnf ئH]]ě#\x^TvI( -% ӵk"| ;Yv7N`8Zhm>THIKBEm1/ V+oBve2+Y571֓h ,r#qm2^% E/bAxUR;zC$p1>1_ESEG+j|d G^58l4Cΐ仔 CoKt  \:b腻Iq*w64ZѨm;BQ;ۊ#1tvm^:Bd n}7 2ύ09ښIl6!ܲ,6y2oog9+,M|J\tHK2nC-""@-[ ɲF Ϙd-@>7 X'Vm_4S6jw=5= ,iI> jwh_ ,bwY:EϲA+PaO|=}qKȀx rshٽd1,6-IԮ.# E^-֑:;KrD c"V'QrImϞb`[{Jo0#Zb0;}uR#=T9Mck HVU o @dcAHvyİA!c'1%ħoNϷB쏊#:E3lE\1@yy~VHzvYH /a}rhq|i?@SK#iN$̨mi!a4d|KݢB*2}Uh[oWvK">YsN>,?&~:8(t7bCؐdU6cghRe,9ߌxUT Nz4AL^&tm|VG?cPv5Aǿ"X 34ZXbeU'XR7ͽȀy 8<5NG${ko\cԉr9T#gʻN=Ź6ozYrAX+(I?" qoGWw:7ݘD%$QۛFQ[J%I#5nYQ.ED=.bq[3SC-D Pf+-(/f vL]sJ<g }-Q|fFvtH_X+Lv $ ė_?$G!]kK@e}OIx'lEx_A/d"zh۸m\!QWյיjZz?Nš5N st{}Kh dGo/*:vŬ[O-Z]ڢ<D[\ŒzUbfUP,vöx7ڭ(-DUΒ+ wǗhs9e3kpa(&^@@O~YUg3-3K`!KgRZ'&Rn!G|:*[p|fU,%²_fc$bN+)L݄ IlW^F@`OM`DҨ Wa.}.wYL'%C+ rpN+0UܾU4WՁ||f.WD"͞\{Tu6NnlŸq7]KE)X6&?{\|/BVӪ$W'~ #fQ?@0"+`ƔKګ"ypr]O.x#N V[`Q/i3躙M@m0a4B(qH#rS u7%ex.++kB/vֹk)sU0oYs.|J8,hC?wd~㢒aovk0LfYEoZB+NIVkS tDoINrJ*&Ł,YX @GIQg %E?O݂շNA΀8pW'QP-B) 4WC͇3H=5Wף!VUQ_|sDU;j^]D5S%?.~fg},o$X5z+jybO?E >&@AvKcķA#Y~{g>6ڎG#[Wo)X C977xbݬLH-᪺ !d֘>"hW0 C!*{0/B,)ŝއ0ToZFn.K&?X@ict:GUQC@O9 iNe)#mߤ2xOSqY4Ӽf]J kK)py\M|NXA[;)P?OOCy&2+E&;%GZJz3ל1Rm /W\(u'Vai!oĈ$TDhR%v Q bHNz #?XW}2\ιPǞN݅[*W1Ӫ擏@~BnU˾\oF~ܿڰ#,6'KEXd6oic>x;{l/َf^l9ntȊ3Z/mďivj~sg@l;Hsulx4~ ,\Aʒ᧥~Grk)vu@R+\=oR3S M#%[4zKz1Sk_XA)s`Ǧ#&lM0Lұ0T |hҀYXӃڄw\ e3t"ZX:IeyJy dp~M>)^q9n`V/WKb'y}3iU(vPz9m hY=cp`P>p=ň/f)f?~fXFDĔ&4<"ě &F0~_zZ9.*C#asQȓT?'"=&7CZQ+I͹ 12AJ[hNfJ1,@ ꃯ]WrR]OwKo<`/~*"ו_L.q 9NZCE[d2]Djc|g+zp 4s5 1{))clŹ\ DR&P{`'PvIrTϱ46^_ ySo*>ucDʫ78%N\@d3'E'R\oȹH2sGb05?j !%0~6A=#J!cn╰UcP_pe&UӐKP7jv#GU~.kv!Q{cw&#z` ^d#qGk#/n/dKReJ5Eא{#rʫo\j9ǙӉD@$dbȼ{j17VٓԴQAzR?)h o4hzs>e.e?@"vuV!^QZ{({k[U`(~ 8zc)=&AJ5 T:;WU C#-QS:DaU9ٜD-C x-K3:cܶ]'|3$$l/-k``km Z1Pߓ MGBlLstq.L0=0nQ+Jx{!DFK)J̬ٴ%)F2C˺~Zc)YBG$r3)b14dyNUƢSg<9r(=bֺ%Ģ==cPتo%# ^@b0n(dq2Gѭ:bC!?g9fP:<zuHn\VTNQ藗1WoHљ 4stNJUE1ԡ )>y(ߙ2H7z7e f <")%k ꐅ`1!IJƂ-Cl`m\a|XQ]x3hzI#`OhE\?öȕ:/g沱 1 PPXm G@uS h5g*-sj1߀Ëb_ %ROpmz/ʅ"Tgq $fBQxC'l䦑()t9K;Jd);h: iՖ!O&* _z @ƀ2EQJ|qeqGoL )1 ޻4WGvVWD !\}t97_[C,$ݛ*׹S0 X8Gav]Ftq*;RpgHQf~y9R Bcz-YL\&T$` (- j>"hSղxɝKdk6^GrLr܋Bp4p g%&=۰e9 Gkք=(XW!aB \jqq̿yGiGzB%Щ3{Yg= hJ00W6}~ {s H ~L`/w@} R gXxm\$F܈ lU|8gSEY7-MÏfxs#&-,|oA>U"lɖ_=e|-+|4[gPDl zۨ $٣p@MӄpbnгfRі71n@wl(px0!TkL̤mbJ Z9_ "QpZv~'[Q&O$[%M MSg=9 T{Ga©.vwӵAQf?$Wy7k!tHa>aʽƛӗWht&[r}uݚ0&/zvžK;#n2bҐGNxE-zɘk1xSF[yxf eʝm+Czswh˽,BD@i$VEo8R k8UpEoO]3/=Tfqwb_q/^_;T  `ּY\qhy ? I8zւ6ه ?Ubdp,^B_%˿0ѿE#ϥX&6W/g6vJ]Z9tI[)V3nOjvgE; Vπu=/$ڊ;`nK$[NZuQG3} Ïo"`i8㽹 =x&dsR@42A{,mvglZal9ź3F,R8)(i}3@#4| 擐QK6)y/!xr `r.dA>Uk4tH?|jT's%VcVg J#TyPД 5gP *VF=je fT]qߑUDJYqCnnQ A_(ˁ/\1fϷ{=)m>< z-{{Cy@L:R5k{f#Ȕzf* \pqj\Zc/4FMF1tc1OA,_ JAUy5Q:g/dCi*1jR TCG3)RR= 'CL6ܱ M `1F%M(6`=#;Pb(?d낎M1q);6mzWS(gFd `ba~,.L*F"q=b K%CGTuJ3W5|`@FҔZ]b ݋>t\!NqE)Ľ~_*DE4ۇGe BI<7P2Kbx~ƿ]w7ϟ[HZ HbBMc1\gn$.[;% Cت2ev KdYlFm*i'2%{\%kdtwY9gÍ?SPcØÔOuL|xюچ5 OOz. d|DE( k֒\ z6EqP~b+#A/#'cg$`O]"5)>ab8֝?^i$rZS_ DF7=Dɝ3S/3.W:kmGD\?bb*l)3#79 奓n7eF{*ZR ϬX)Qq ('R a">J4ƑpV!"^P%k)st<|Jعb;֊. u/P1(i*jļ ?&dI)T6CʌqXypp" bܻYX6,_XԉJA:3j x'n6vPJ q=޴eP)N*48n^% ^> 72V.GWᏱFI_gH6}J=¾ eTϽ[`L %j. :/3 jJ1=<Λ5P8uc9ieMҏؑdWKyDP*ꊙjz7cwsu5@*⦃/;b֢ѣ/T1&Nw/t@Y3ǤQ7p*+4jj2zDf.LqJcOտs^/f=n?{i7cd,h{1rD OA}~>rHK,xXU]3KQ:.cD&s .\"<69SZFz}F -`PU]kxu%?fETipޅ/6SפLjij#uyM쭦X/e^Д{Br d*: .])Yb[2ÃlqC);53rdwxw .mHPOԝ:ˋk?.KKF`2xJw9@Q?LMk&p,h='.$ %T$/$^q!񜂞jG&sAb*i]F kجPBmRG-pg!U t=w", kR L \Xgv3d̶3n ?#XVDXTr"LEN}aD1j sKz08dMwөXStß93U-s+ڮ $=O.◆`=DrchAr4p'tK|+ Uûm *bZ) Ƚ&t> ОX].TKo08ƢZ:f7ZBF`ЈB Hj)rwQl3DdWYZ'vGhWlF4paN gz͙>Q d68kbjumʹ%U+Un Zz)$ <CyG{m}x`E`;k 2@?Lt >n/ ir5ۗ޶̓쥕|Y08PS~ԲȀ2; ?~7@xk#^6]1.o.|j$4\V[8(d֭1zE^8Z@%bAz!5Zƒ%5j<׮WTQM@7 ph#~OLȌd|p)=D 8/a"SLe=A%'c I)h=NFG4_sXt`o@)\r9Áo."u8tbdR33qBF 1}ْbܢ_3جxWCZ;_Zby8)&٬@`IFA(t6I?bI~_|Pṥy{œJ/8Rut xpmvCTFtQfpmCUțsDIqK e ]>:ÑJPl3Bea ^c8\E++ذ۬C72̳QSIݶ/-}#ݯ ie 5tQ8zۻp/K 9j4 )T{N^*pI{p ݹx/HKޫjBqB,>rm\DmWJ?:@ 2zry]:>}@|!02&L%@ޖĉD['#ܑB%1T5e͖VaS0^vp7-oC؎Rv^EaAn?6m,2*Iҳj)kB؎t#vv(Kn AQ~e]0෿*XmH ߝcMJ>O2vC/G=@fTI:eu Qv=IU>zyRЍ,mb@B/ħ"1Jbd(L>%=؍AtmTňGF>7V&A7"y~^jS;||Q[8.!jaqeIx;އF|.,O<˛e +A87dT.Sh;rJlE~JYNW~2SA>߃gE[*Z5X̛v*iv X }z&r%m$nph+*;pX4w :kan&[Cɨ4r*3 MOd%#E6A*M 71ƥ "iT|'dBGÁn9Bw)r9zT+EMߺ.%x &l5o6gEb|HK+.\L0 ML, U7k~ѼO% ,R/Ej婺%#ήzlVWh,ZUvݷrNڴD5we~ҚЛM?ӳAtLY~&Rxi??r:¥#^Ho&T)]\yElI?|yM@kYo5-r&\Wvrf)W{K"K5X+ӓF:|RcUׄ}Xm_ %(BTݹkn+ +E=Ezۼ..;k]OCEYq[4ĩЁj|`dx@"7(qu:f|$bm7(hyXnHXx+t;gg꯷|N{_C9t!)8u#eJ AἙ@?-U%X&^dN\9ě[= \[7a\zN鹐(Sr}w{#@b[N:e*@*xҩgIh=''=4Xy\ď#| 4wfˉ>1Om52ES ]qM{Ee+ae'G Wm#h2k:7J0cNB_["(y#@I<S,Ukg 5Wfer)MfDi Ki#"pytz_ݻn L&rjT݊~te,#D6A\et&ixKl&,"W58~!k Ke{3? D^I>J|tV°3[ZkuE5 ΏNo&B\]H"@ f:0 D+( fk'mP?Hd+wvfPnWL)`ݶtR0󫑳"pU[wv9-=cx;LGŻr|f& NEX1+;lWSslVZbʺ՗JMH5|; #FiTpY:$S 6^J< ˎ@;\ iC+.8X/E(|2kC(MܧF~3=0NeE.Brk#?7IdG>S xYUNBz bg~Αj3d*:Z_KgRd=>dw4h4oF]8~'ϝ' OIz |A},0"H;r^W{} (%$ D8l{x{u;}|'wa x&I@xlB7XӯW &KfuPrļ$CERCup^?RkFFD&ڑuXNIsfmNԓڂF( ~%2σ`2f'a \OT}qRe^F X*nǷQr`g2U-=)A慄\T-@!_Es= q @\&[cO%ml҉Ԫ^lk*Yx3>є1?TtL~whBCde{NdCYt@G?RZR_O3Uu զ͒M#6 (1Ym2Emȋ^ )|7MT͙LxyYE{HDepyw><{|w@t*J(S3^S~hQ62lp~YUӮد ;T:[zV&=MڔJ_fCo%"y.bSym&~ŐI 1jyX?ԣ9koo\侰A }@mݻnnSI5%4!jUp44+r$v>9W_ht6SC}/Y#ue ɖV:_Oܪ; oڊU3QH=O`Ӡ0 mS҈w$M8΄+Qk9FDN 2 Vxa/\AHy/q"}6DINE}DHvzijoh% miMΎHcRKzh~x%Eqw #!8uk .#>PF~k%X -3+|7+feҗ !Bv־nnݪr&?".^;lJp{.8N w7ld65yeXIM,2ERޓ"oQHSpJG(S(}㝍W]ZQeb>"fm;ؠ'> 0Bbf[*+R9tKEQ;6f[A(2uZ?cvԎ(/eOmѕn1 k˫n@J]OR`!H3e݊)Gddnvd:/\~ytUPS$I*v`ڪʓoQ|r@+'&*ax䖌>ንl)8&h*s@G,"ܖ`C}"m6!,XΧ9rD[AE}?q,\`R>Ü+Y[3:7G$8.dv=s@ߡHpYu^ GD&Ďe Ris'lWt-~sNueD V-ds%QE5{є{ѤP'D6mǔc;3t}Kg:K, + 83A"cF;5i Ƕd^Fv {IkȊ+gcN-d@Bzr%k6Θ58'6"8*⤋S1'OvY6cKM? P<jB˻WaFY] DZNz~DtAtRVV!CD"`IG>zsy{n Q] 1sXKBD*:N_mEBLKR v:1ה w\4WZ)6ce# c-{ꝲ$7rmHEh^ şaacQOv qcl +$ ̴"imu OHL-TmVOMIs{o4 ?TjJܚJ̰YS!!:L&+2ԝak'&I@zCږSI s%u hҩϝ]Lr5ܩJXLhܱdNzf&[Wx <&žm+<&;BsjM<ˤ`<jw8*ou?7Ǜ6Q[wR~?3Z6L@f,3Ὄtk=(QeYI"bH:1_3keDe$BZ#` 7WаV/zyEtW s64U:N nr*Ãr3x\uM98Eg\V7'wD94ˆ^&Nߙ9ae0]'W ^\";|8HQbB ]S~VL^+ě,ukuTʕ$bNsُ~:T do3t8O󤡎 α {>~kH/ԺXp◨)H}gڷVhXL0λY9ɗ$5fF8ϵFǟveA76=6Lk9ii$МVЬJRu 'DwAa虪_dݏ&OuSh8m ݪu.C([PߚW!{(uLK*bLH[XbCJ.刡*S|]&I NXĞ|pB)> cCf4 +D8<5C|ٛi`cZDr̜54]ZrqY0CYP} Ʀ}N4DWH"ҍPLhpLn{J=S tP|5nNb!V񦜮[}ۼ2NW-DfЇ5ru?7JbimE)bA_ӕ  h|/dwGYhՙ0հuKWZˊo)+5%^ȝIRʢ-?q@~p@`TK^vINz-r}D!L`:7B@C[s֤2ě^g|C k`=T+Sb41Iˎh9"_TźB@86}\hEط:XUׅf1uL\hO͢)Ԓ"6 bT́cov\TSzf8y KSY&0>;ɵm@sG. F .mQet0!3<P1;;.v,#gs№~OyN|LjV^LXsfa43~ fφZ(<6R2[B@wG)"疖}-t 6Mnqd^2fCn$c~Vϰlmqy^Jl~s8zF!"ݵrI7<9рдk8KI oEj /4ZygqZ1, eV.q eT(ߴ Ecܡ;{K7 &*RGꋠ+(.ZDJp2=SI(ۨ8Y>fn#u)+aum=]Gv&l@KZ,fc h . f}kDD!FSն@qC_k'aH>DьCBda 4tHrSКHh_ l GxTtQ"%p:7*"?rL< ٮ n6 g$*AKtZ`SgOQ  nb6ߓg@;"F91`.UCX۩|LZH0+JUn?p~k? /7sWʆа`GVA4b|5 o'¾z(c:$m-BZ)G,i WJsrG.HȯɟAbhžra&C2p3//qpSM )Bq1WաsݦimT- x n-2$E<ՠQ V ޹}\O^G399~ҭrgjbp|,Ң1YP*ϙ¥X)"YSO#bÐv$y(,[#i3'ԷK%U6yF3#/Ӽ[;괿vÇ~1pThi٢"劖bQjvLR ͮs<@c[|RdzG~s!:lF i<H-wg 6 Vܓ'ܷrm!Ֆv )A~L vN޹[?Bg4;V'1LI`Q D!^ u`;j]SA33X|Vщn'1. JV<*"m1c}Ÿϖ>f*a iYMX -tEᑑvpM{I~g^f|A5Q=϶]r~( I1HyZ /GB\ 5P,H+%Hݍ lç I؏7^h T(<' XN9Ft$8YMx5;H/ @c }%D^ɍѠ|*qZi*F Pzw@!CԺmhdE O;ג45~ o[~Փ|h5tg)3amlJnb!Ou&fkˆGI4/IXjRU21!8\vudWdó[ NrY:3V#He*k´.cEi00-~Ż >D=g원19’8^X"Vd[k [aIq|CU-FWn-6FX 3b%/4-70{GBL:%j.*PGO^ǵJf uShzRvxJXXBaXk_dbF2)m1K|:||^0E mBFBeT?16}\~ͩ}Q)w zb=ee9Y#WB% L*vך'B:, Wh0 $pnq KCoRzk([ &2$ iJh?`1F bB !wtƟ(o%x":i u1,.^JLx1ŽEUaE]Z_@˘~' JQC`ob[Ge^Y~u?^gq&JCZ~.CTߍ!w;a:bP]/@M Xe^Ƥz+4?!(&9ߗ{=9u@Fod>ܜp#˓\GnmQM'yU-bf֒t]nжw`UI 4ဉ% |wpBg", 9EHlԃ`ڷ"e'nNVKIF/ aW^ErYޮ6YKn9fĈeT QbvcHrj(d6Dmay p>'%T$S_(,Y{O}H-eMJ,&>(J[ DAW/Qe^p @1 i%(NYxѥȥɰft,ih1цNl,9݄. ^g[G%ܖ#9jO)a&b r;b|P:0PPBHbܭ>{0/F鉅U` y.v{#-58Й@H0dg"FY=Wj/}]bO'SvRlpˉ~S%jgS.W[d\!}Pb2`|NL'7ceK"]Rd͞,OgŢ[Q=%Z3@K?YD$- CԹIjbi<|^-׀\}w1Cv90J( 4R.5("GIs=" FKi&U<c_olR{֞qELp`A5wXL\ L<#0ԥla1V6t> FbUQ];Ovj'nryk('t!&Iq;C#Cޯ="ݚ NL_A2֤k#eox B@.Y}]aIN@,0%8ӟHHSU-Is Ŝmxz1R {eWoN+/q*?4>T*Co˾L'D݁%[pxsÎw%K=6%.^ƥ{ -dkPuAb9pΪ*zh[H/)uYīqNPyg/-Qق!5PBzޭ'kL(t^أcWHN ̂/ pFN$D?]y!#itl 7Ĭc+X $= "Тc;yy-w[\r#1hN"$;ͣue{%48_q͕{?)+Sg.MjstXR@řfι7[凱h4-ưyd>=]+T|s+Ytn[ F׭%JNm%37\Բ3Iv:.'8*Dy'pQ1JJ~,EXo7yNTf l0dO\!ټXu`.Tq% `xho&.` 1UuD?9t0΢E1f~HǕSq ƒ}e}u ]tAFZWt˝LCvOt͈qygdUW9ǧ||=\MRT<nI -n R{nV޹MD`~9(1$\m6~Y]YrppHWN+$ulעBk{z"4H /dQ|*W* Q6?ˆwYƙeqRCU|j4R5bmֆbY05LgII<Ď&kU=R]v|^Zi Vw=CWS/d L#cMaLmL^䯯"Σ\è@{BOJp{?B<v4+qY ^hEj|5)iknL T0|]Dr Ƶ tByM,=l Pp.鞗yviԠ,Ry+] ]'A8wqTأhƮk;<.{PLp!Gc G@Vl-%K" Dt0>f /[p`]:D 2Ԯ ϕ{X*p)bu#XqIY)kTk&{}^>ʊ% `7K(7^iGx܀4M+|n7~лcfn4C>^i spLP#< #`[RhXОxD;&A@+$v%+GkaHdƎMriO;="fA`[d!ҙژGe(cĖN2'!Ϭs8v8(0,lzL@U<#8|@{k1̥U8hgg* tc# a|{8U qWB񐹪Ӄ?fds~U򲕈3\ u:UʧoDGt(ǡ/nZ A+:{nhrIFb،xȘ"&C8Ygݞ̰Qi $mT`SھHD-M P'@¥a /aW_9\ ==(H#{>8j0]r`jUŹ];j(߅ dpt +ٻ1NQ<?7(2Da#TC-Y +LpjMˍ&f vU-15VޡTN'Tx˲ĢXO x$:!9m+֣Pz+9{(fj0ʎ]q V-G0xbuTz<3r2_@HVWrlX51}Ї}2߯؂6t/+TeܼqⱵrjy zS11;> ~U4J"lKLtp!y ,pm$He: \( ːfvڹe|.kY|рI`Wb12 v:۸&:Rnyo9 K>#Te)i/eWOw \3s;YWR]ȦP }ò23m+0{#JVԅbyk_݈Ee^gRHF#w%NZR#}z# mR4.{4V6b$1}E|^]opwUs˽jf\7Psݽ@a =O' /@+1^'kO5axhl/3Οq4Xiv(m>1.v Gln\3#gaK%!_<]rc V(H<3xIӇr\XL^t~}& 5>s _䍣<o]WiM?&\-@) ឱd{ytͷxw#zk-S'tK"R2>hy=v`Ưu}֋ɴTEB{䶇 :OvJZ:.o0фHU Pב/|$ NXLE7[v{Dv' l#991ަbm|@ (8fou%32Le {`f۲8M_1ioǬ= ^&؎f?}a#v xB\ ='Gϲ])R#Г#/z#OCq$t QQ!m^sv'Z*@,V9-2`F;C~VQ~Ifh1&|&/:GC~"QL3J'pO-,* UJB]dU  UFߝ(#W1!$LNR"f^4`}"Sh-e L/*݂`WюCDyɴرU\zNu ؈9#Av$RbHA72g'c.b08N;1J|ɨԤwNűਪ|4Wr1r'A{z7jAjc1%{@].#xH'JS3i7BӒ K4 E ]0<3+ %݆兎} Y&?; 4U3Gaz=/F^vE$Y=ߡهf"jGh rˊd)zԑTB%t t/R:"䩯:"˿PKN-@+bXFT#u~o=u#Oz"KNR >iq7w3M&_!Tj_ZDE|?rkg n? `6ǔϋ(Ց⣨ګixN3ѡHqW+ $0zHpI]?,F:_nTAM|k1I ;ea{By3 &{z=GT*~|)dSz~1b?}!Y5ÞsUvF쿡}69=sQK} ph_o(E͗on3 ê^@n曬vW7q Euĩ}' ID ũF}?Bo \q g.2Jym   K ?ĸofb1b4yڊe+ \' R,xeVFUP=dIJ(OJr>F,RS'Ոl5 .ĎpdȌԐD/!ϻxp\gm`:=:;ch"==ᠧ9qX۟]q]zi75@~! ]ΨiU2ģѶ$ @dGK=-B&y/2Z&buT()z^?aKANf}7(K͋0=`_a v`g"8rE]$HɎ2L^qO}*eI)/ܙl[sd7<:P守ni 9)?nh&8tQKpl| -zVY[B?7J֪1߻ߍaHH +v5 \8hm_Cm<([vf! 9'q4&^z-^P&~ oݮzZخ[|G,-hx9~8 ޏ3|-kO_;8 :,LtL$JG([Uܼ 0~犫P?15fWfVzOrM#-bjByO18MkEsh͆5 kB8ZN u,PmX6-:Z#Yu úݣWyӑLᦛ%# p{hV|0FWJU&/V*o!3v8YnC-lQqZpsn*Ty^A{%\^+3U#UןLJ6H͘I e3LnJ#dM$@y&LX| b܅Llޜ Nv 8 m۝a?QzB3UTKz6>h8> ֳCDƬXVfaߖ-#Ox\VԖx_d?+ rm4{:{#B]'4$Z?QS%(RXseɠD,% M.Г}(|| Pl/HY{y,Ιuݑ?+,΁#4I$R:f%i7˓db\B1M|(AY 5g^gJbvfNV6F  VNmsgvQXBO&av:Wf1Bf}rٴǯaW%il8D 㞡VyJcGrmE (5,R.zkSpDpl9Vis&]Ylh(M_*xCh++[ID3u瑥v7,)F7kܫHIlD Q|T1_\ECo4G5A[uBgOWzeTR^"9y ><<.r7 \ -,BDA"[\ß؟@iX!2%.$'&6 'c;4G\nqtu<X?n0؟zN/>4P]V VN Ϫ9o!ηj60j_C%Lx\#?6 5~ ]ju˞|n%S,w{_CF(mו`)8%iT~p4hW$x%x Ȋ3Z'5lZ=i!XfG?/:v6dW<.V3 1?$W0mB2zfc<= {%:V<}V)=΄O˄iE8e,'Nmndd6IߝrTs<$kM3c1%.jZc9}?hT뷖E{ z\ c~ו@nr'e(8uFe_c^%0Rih.Qg6QߡDI~횑`{*MݙAoeDk+BXv8Pz#lVM#?J7 |0Ǥtb<^U>}#ihX׳1$XGaI 7]R "W0"X|KrB"#͡\&T-`Y%F :ӪrW%RР-_'+5zTçDn=棳Ψ&}$ wkK룦D8CxitYq*EI,^#Ǚ9"~hy;! JR-.Ҳ:U4[/gx2|th X[馳{F9>T1v4<- h&x \oNB#b܊^]2 <cVQڞKF}VAfmH5S&'KL#aXY.ywS[e ^lgi {( 1I.,J%;vSr[V%>~b-ЏՠH|=a[-4l03hC AwDTo0C)s8J>pm3h@H'paow3X慬8=y;$JFmJ'U U;4Zʶ7ugMeZZK<_6D"]87+FM-+J[McEp\tKw>t>x$TG(>&AӐQ[桲P+1T.Mk.-WLNHM{CJDa2w~H%#_s Xp+:dg`>`&ΉxK ,ʾW1c.K޻# ZJJ"'P"4W`t! '6 h}Β͘w6PL͚SRd']UG0Ի@`Dv]bA=#φ* Bdr%hm yZ j0[E"˛V5$YfiAג|aw*;`'ݗ)}J`ts7Ӭ7E*Eo+5m̑0A 8?DQc{#2}X O?u nEݻw) +!:+>mr;B=dOyƚa.;]ۜ7j7.7xɱ~g͕Np0 w׉W/Kf%#H`z~z$ess٩ \G:7=!Gk׺ ScS6V"||N+cj# Z{sW(6TD(|Rz\Xi?ₗC#h$d? t5YCh늀9nN*;FÓw ~<.h64r`q[l)fn N`ˇym0TC*}q薏 sdM8n-]b.3~x]@r_oPnM-\  \sWQR{4gKvMl:/ 6LdyN[VKF<K$I_:X1ߺ{e8I&A{O&u$zC-2&qy?s6<>T$`{>H_zkPgx|T'UY>ާ1\s'+Qf\l"0Y ,Pgw͘^0EfpL*0ӬIq1Ɂ  t3%ޥ[-a1ꘗ2c+,Ӂyp]jŭ>Bm 'V\76}PhOɉ T&$R7mpgw,Ex7}Ǡ@ʬdM6?59J S^J~e['mz[I\;Q@(].>g!RҾ>W;gƯm]Fc/g~Z( ٜ)~F=8`6 _T&b@H?x Cz4U!mI\ kxq< <.'fC_l-8qGJt8(/#+蚹2^a:417@W?4G0xoqY/xQQsߙg„LJ# =uV-G?}@G:=^H<`rEV]:0??W>>͟7Ϭ$-OױgWn}235? I/q9(6u:j#9~45͜s';9QB }`}nnMK:Sr]k^zwi׷'u;+G _@꘽ {oMfۑ>xm{#r9#)M0 G\cD%xjgb,I`껶dכpΖd p*0iʵ1dꉢbqh!} lX(3q׉tqH'19rDͭrD89*Dy$Bf񐊫ߧ yt.%btzoL͉eZ 8nbVO(. Ջ'^c$QYgRdnۜ ia2C`_ĀPшQ(B}?Ɓ3贾N%Q+AlI3 ]gd,+eה^8 P?fI4ad\O3AOM ݄UZӠ>xHH{a)ewC_Ec㾜]MύvXTHLAdQK$hGUQB˴O͡Μ$KЪhA3.RxVkqk,%['HKf_Ub,?MyiZ  8T2 !g1+`% CqH[;%v'fEJS Nwe!~Yiw nfuF)0kiW0܊T:UƖٱGS@ K3I}5Cѯ1> " ~(#LUviLڡ | xs5L1 X G}-F Pkӵ/"f&7^# :"~{"`K^Ұя,Xes` UWYup`~w̙%c=} BaՓ,H+c KgpP "Cx%KS BrH/2~<gǵp=$rV 6GRZAy]7:yBe@-|6.SCo&6|wO,?rf0;Oe){7~XrG`ҩfR6=O EG, vz·,ۺXq>jQهy7-Nkt\[&"ꧡtcWD_edhL,|ՉWhdPabi44WO0fbU'*K3F.tw^ )Yq/# UWsR-' -Թm 2Drg {RxV2+)=}7PBUc}?gTj-QU؉n[?WަHbĴs)lП*:{f88s=zgc"jo!.egÿ3gbI4j/a'x+"9"[O*E.pG@[X/=bP/&z 3 ?Nn[eccf')ޅQ-3'Y >zF=D?Ȕx7_6 3[zn%Q"_q$✣[}FR]g޲)o9ǪB}ۣD2ɝjx]<%!KWj(1(WelRiˋR_ }I$Dc2>]|qJVvp>Uðdz @-ѫu*v}SM (Vy%q@JCɎ,ʭLv<#GGQn]rX \&g-7Ԧ4a$Ԯ|BQ^BZ]O~qrVI6dcaߟ&g\r覞_D{ʊ[}H6v0# S̲^mBn y-&lBziS:hE#o UWn]E4G# )4hNN#`;9[ʂN?.az]-:rXH갸wǮN/,|{#O.q+s" ;0ed +BbZ,Ѿd9= m!79wȘ2X2eٺ⽯KQ+gT:9-e#JB%l}nOy5T瀸V"R@-Z2K !ta Ȃ]ik8<U;d걑O!=]嵘T~D_brU]<(aGJOPe{H5붘h =쓢 Dī7k4-7WtӬD%e,QIᭊL$!:$`QP*orPNhtr0aC`![]ĬIܱne#?V3+}4ֺNS4~;TZ ֤[Rm ʆx"yB[XECm6ߠސNw{uc1ePZ#6f <+2ҙkѯ ˄r9 2oUý,/iaEgk9zq9!Dh˂)Shmz}{r8o0?ب?I9ݜFcDTʊ !h<(P% ɒ lܹIbax* ZZc`j=@ՑL-{%կnU֪, lMQ^ v&L`:109/K@9Ci4 5 z\С_,O? WTh蚙K7tR'C$eȩg)%=-!8 DQ ss|a2ct0n $}mع;N^GnA0wh \cޠQK) >uSjg,>_UWTuok[(V2bPYJR.reK2G_{T`*MH%s>8Y^zZVg?)w )CA=aĦkP̷!ZP)K=&kB_)RV3j^Yygcx*STOvcvdyBvFF Ti͡` UsK 8Ax!7{+Uu8TUF(G΃7Fj^]o^+Nl#C/5:l ?O 'iT;ߣɝEvZmi[61Ue ' ;42W)C03Q}V] ~)E;frB() OޚR|(o+9}ObH~C9k07͡c'm>-5mU+\:TCpB5H84k+2$e|yovu^}9_JmMH8(^R8ޤ_5NҼ򕷖x'jM d H{LB^bqFDw&_PRRB~8C d7cS23c$,ѣRR8e~~uO$w EfK9j53n-y:(cfo%w>Nh~*{uhSb-k>P |XhT~#%3Eˢ)ʓia}w<[w{~Ȍ XOjo~Y`6f<1c*S|Mj0I"V{3620;g @3NK;XKy_*2ʱ8h@`5cOaSjF+9u$D6[c]A)=PeDRQM}btg嚍PͥnQ$iyKS{ %0J;)IH W3!gX IU;+PRF|16:9iKOqɘLYa=$JD*E![{\Pc/u#:_K2ru,NU\\>OqNg"buՍrJLE~qOQbV{%s{#2wkYeq}r`)&-} e/־aT~~UmA'mAa2k:z^ ݿ k= 8zF)^M>o1+&YCұerUe {+pPZ7o^O`r^9%Xa!)6gHx$TrSY׶hUd}0oWY/ wG.Љkz2977'X[r1֞~NQ㹘Cʯ'Zӓ]?5V}#q֒u.l^6)t )h܏ 36g`>@=#} 7vh-- \op.m3~R% xs13 35yl{gZt3xgkFkAf2LvDCpad| c81C86],O=xD_ñ辞< MEս*1 J\,<74>A]bD2K[7iӾ*%(7}Q¿6fSB,,z^m#>P%D[-lyPX٩hĈ"/ $~$dFzҭŁ ̴/(fऽM%9|Oe>M=l9FK6bΖIbM-:17X3txؔ IM~q*Ȕ pHz؇ y&"kzQؽn,k̀bh1@5n/BlMBʭl.ӥP-UHHpnĘaiqr DlSU͑qTqJw5UpsA_*-L#exySQin!X3\Yj>QPP]"*TGd ( 5bJ؂xN>7# o9N&׈и= db }C|M8]_`dƣ!U:. 9V iokZ.,8mq r[}7ʠO2:k# ~di .NLGgV4v S'4 |wڦh((/Rpr^L_k}O.,U05rD M!dpx0G.`ط> ]w]SKׇDF 77` W 7cC)KDH>ibG4L[kJj{;LR;/FLc9apzqN/8ArRa^PFůЦ|OIr e]7,\Jt\?TZ1i$}vt 쿪bn@}z z7fRC84i ],+bLojEXb$*ݻ?)T]߭t_q%}sD33w*1E܇W#Z"LR Cڿ99 ]&纱J}[һر$Y}q\LeSD֓]y=o6hI5'-t!FMUDZޚ^i7}@QSĄQZ֢$2xV8o&8dk[apd`ADRer2S71dI=.T܇@.s;G! R 06Z9DZ<0DMOsmHOUSHc+[VTۄ/y6_P*.tɳ޸~{1Ikz:mO#p1K{Gbtrg35B"꬏(4F@ޭ1_ۉr}Fw p/Wڑ$ȴ?E(pK7\=NvtTHsr@G}Hk/yt7r"|6$^ PoF?na1z R756lBK3p>eP.ނ|W{G.vKRͣ$Q;KlA8 NǧVTA\"L|Jp+qq1ۼs>rbOUAk;cOG9n?5ΘiտE5څb5'!@W&߶r/4w҇?NL9-8_Y$$6^߬[jE+>򹱪6 _ xНhw}պSYmOu} }BbǠJ+#v`#z |>QÒO%kL3^xwb!l`J)w=edyx?½ߧU];!84{Pw1Ai5~81GŃH/,7W@&gvC[ /b!o1Ӵ_62>t.-Of[ݬ tu? /Ϝ Y6! Bi &zzțGtlwxIF0u%3 Ǫ?Q 1 X;a2IjCO"G(qFx'1~CHKR}WTSxDYJ^Cj;2w!:'ԺR.؃2e h4Ѽ!U>OM2iIXHr`17[qaܠ S6qYt F5uo3]'Q/'<)}$nfV؁`]bOl(*ZX>_8~Jγ@(%to9M"0#.f}wx3}"H0cyLʆhɇ K17%UiMͽkW\ 0V >&qjg9.Tt k-N Jȅ2hgK64FNj6@PǬ~'.,xQ^xǻ7 H FKUA#5oN)+6x˖L+~QGIŭv_4V$\\xyLT4P@x^B1!Qq iǀ;i%1TԴYtː7X/ F{S駜|y AGV73& ڟX73'Bv]AY3_j?@_fBh'%a?|7W8a:t ž8yS͔7EnxD;[E6߭Ty"Ii6ː|K[OHDqjllxJVwX1WWüMS‘4*k2!2:])Cb$pgh~Lд.*ۡ*CA ,?TX7zc2JX$/=' 1gʆo h—\Pg :toZY<@ yiЖnYT={čOV净#LPNߥҞs_oBކHR#˙Iy"Q;&$j<-^ .1b4h3^ +P0t:_4QF7>J p4egcI8Ч}ߕ>.Xlɍ'"bgh:dUH;B՝A9SAM%L찰 2=pDef,z;ln|N+ߥz9l]t>NV7j ilɆ hfXyqq'\Hꥥ3$TUw5N#hXgV9.fY$/B-=< Im@e@ORHF#tݎcw\q7…SxRx/c= iE7늨a!oŽla.V:I* >Y餲ׁ[(aIdLP_Y,sۢ W\.\jpߵw\Cvtlㄸ1S3TQ< eŷN&Ŋy"N$!hJQt==[юn`&)G[1`zl{ʸF$#*C5[؉#1K(a ob\:y.muuu }ڪR7"oeKjr/BXGǫ/+{Z^mmW\Y"1AW+<)IƷиϛVFV\5oeن2[%9%ނ`˧#D!rۉ _6̞Х+:=)x ~,26y`XX,wAݣJQ[Ox#r![,?\lٺZKKfOrJ8 )-@{t\@]kp L$= cRRH!$95@+i%HD@ّXBI-< u^ڳ(\Py1` e/cxXVsF"y$qI兒E=Ocrq ;F_}.Tܵ \{sk ܇`25{/+0xXjpJL%6pP65` *lX߀jF 5~ IJPaK$͇Ĉ{.PԖṛz%-_.żsE9yɵve7?/Hb-EXO\e듞Gi5?䮠gݛ ; *XJ^e^f3;¹#oM,ceHI&ѐv_MAsQRZvf}"gL"H"V8_[EDv2isk'nw0n˪;U7 !]iTa O/YU쑩L&6-+( XH7P1v;~ã/Ly(bM\(k}hsPTpE s!>|#](T4:C' ߹U32Epl' [xo$X%JNjENx*2~^;ݦO;H}0jj hY,g yF+iO.iB^%x*hEfJ 3蟋.a4֒@29 ".בG-UGltH9FFzx:A.C|\c"# w&c8Wy Yj0YښZ׊OY^7ƒxrǹ9# N[|QX?4 9nӣ>y۫`g%ؑ97mG o-r Hz0 r;⋅V m"LlW,W[ nm! %'&0O_X+fjK~DHcpɚIn {f>kU} 7G_Gev=:PZmCʢ϶2>(oTOH iw$Zw w6jt:˧:`,aGыχIΪo8Jp BygyݞhCrwG,_gfa6ǺpSqH:uTm[E])*rȞ/M% qu_D/w賝6@Y|qO'tU.wAT2$a\;.sMu]&\&:QTQ]}ݸb!rfPErsnY[phFb[k|D"T5;u4źuK[R'4^ \:Z.Ru{UdNT !aS;jɗ;(Nʐ$z\,k5zoiZ |L>G]]@ mS9.lk d:<A9ECf?295*0ֲvLMی>ӌ^ R)#H۝k):q{e5dΞQސԋL3]4os&+]-%+QmѲ^hkK&BA54\z?pw3nǟa^~!w:8>mӈ> -'^5y='ň8_ib|uɍ"D2XAb1pܮ{z =6a;)$zoiEC8d9.gv\~16y Kا{o;&zdL/C pJBv#/n8r$֫\1$'mSU"z ̴{XO!~OˊW:V<=#`4?8u‡5CpZ XC|X[(` zGb"}]-8lKr UJ8E gSd_"l^2;5,lwK)mOLOOg&}l;,dh[* nu\nOC'Z2 -T0'E|YlY `$eٕ%a wiF= óiҦJDGR_vQ,7a`uFoIJyu EP0J`鳣"dK7 i/Y;sԌXZb>Ox5RDP2&7&f+R9ɍ萫0_,1p؜gwPO蜪HεAs̿tT*cY o=wv U+{팵Utۡ-xPͻoZ$NQqkh2d"N7b`V$3R7t* z=řWf7Qebkjj`ecX B 8U`&M}C NjtB;:<)5-s8d Wݺjiuwɓ-^yҴ hX]~'-wPȾܓkX9R0z;@fp5(O~ x&ܡt y!1aiq@ oԾOvNn(>D'iik0Wa.(ہW JΥϰym9]q,Yڡ,HY CIBiqDȠX&gn֝fҨA<{-%=;ͯo3sc#(O$"h2>R) V_z2m kzbx-i :Lǵ `Rv'%bp"U>WoVy?ki-&iHQf$`;HL%5RfxB߫t_1;_@㸐۾)FtxUf'Eqѿ)x퇜l `/ .`kY0k!8[>G$]bb܇ ȴ=BSo#B-Ddbwi j2j.)oΩrlXo%OX V.}n< R;d,T@ t1Ө1Cl+}OVZN n¦fg8b!#7G(ú"UAb؈ol3E mo|bv0\RWOAga@WEE{t_ԙJ3R3"_c( -cSZV|pqZ6 dIm@ ,Ioy)y㣀V)/&/:llͪSgmΗ)S~"f5V OyhS Ù~~+fIG}rCK3`=_&$@!b*zzUBJ˩˯uGl H#JsNBHJ~hI-=-*D#`5`ۚ$n\?TwIoyt z8<ڢ-^j0D?~ҳ_gQ,{%'0Iw =' kcm&T%0fBs:T64]bLA.of:>A!n3=`JKA0@2ބǕC5_!:KǽqU aQnplF0A, (2ކ1׾~0ypEN}sBb֪ͥwZ£ԌӅk>QovGWDC m7\}ϧ6:aH[S"dguT }x)-W W1aRlquIX#RؙoR!Q/b c2S2Y CdT!2X3Mgz?TE|;/U*R[s#tNa7ES-@rE  #DU *gUeVՙ7=!9.DY6w!AI|؋&.#9Yh eqcA)_W;7Ф F3P_ͨ?b UiP):՝ hR0L5 Z޾b$ypx@\>)H1~v 2r)1c/gAlK[7E( !q7dB0(Q{aҤȧyXKیE͚< 㽘i^{ޗ/&L~3 w:DfQ{ˇ:ԪI}2R&ڒJYX%ˡ!y=#`Ƞ ӳs{cSgx {x%DF]=T!ٜ}u=X_]#攸5Q33t ǛZ#DPL,=wcaד[4-,@;J(] %$! MƂ>*Э C2*"Y{ tPx~-sBז6d3^ÍTDJ3z7Qşv +Ɲ>n7 -qElin%z=Hw td*2&kq+0~{̹P8d}řv%qdXGe1$AL &+_!UtS8 Ou' ̟h!hbGd-m;7v0aB΂8ڧ/rr+ˡ` NHZlTCJ{mg򸘢lXٔ4PI Fu6dbPTGXa/=wu6qa!֌ɡ)nxSA6>J pKv% H{֪>Ơc*rN`kΌ߳$^ Q8 iv&Ru(F5"cH k7r딗MMؿshLaw~$Լ?]*C8@OJy-, oĵϙ/h%iU]i'1%:kq-Y /YYŔ_Ȼ6)R;9!qA@[/y] D;\ =/Ěgzg%"ClīYxl{נŲB37#u.1E~`el9xdw%'$[okǣbl49?|L te疮?t~Y7M_ \򱉡=d<|{ֱDcARB-Ϩ=Îд>$d@Z+jk>6OY.X_S9gee`He! L/Rn:£RžyNLaw3"vKHHGVmEhPdvl?[vyulej c/ djv, @OnE|2{'iA)!5KCp3fYY>[*R/r66M'=ˀG7*8l כY"KE?; ga><&~sk/={^ kbN<RyhG-f%qD[\lU ʀ 1^~SK1 z _]TC͂;,kdB-;2j k` $_pUp :b>Ģ,fKԔ5 GgtZ)E;0Mq Uz [ĨdWnHfL[o)JzZHNT`G97ԊAm=k‹7q7K._W[9ndž"W*[8ٳҶ䣼2&#pN&Gz1x3s91Ѣ4J|AC]#' "\6%9&e\$cOyrA9g_:/jV[K@1qRȮ՞ȗ(5qIX]G͋iωXn/>g?Jsl>evkbk/{]2> X߭P ƷϗCF.N$H 1_6_<(Nk?Fד .$W7UX'0zH z9#QӬ,q-̂_BCzje\@Gx<@zl&"4$V7!7$EMzxp4wD7VGȎ 7qMvj=Zjq-'L47taBq]"QU+PG*tƄSE@5@fZzMHs"CmrUŶJɾ|fnSo|dWB͆cC~gvyqNi:j/79ZU*'So\",*vs䇾ѧ-̬ Odfpv遼*ͩmtHdHuq-r]QU{ L#e%x)cu\#'uNzHh1;k ,SZO5XN?(AB67dz^p^n_1cbg=z{űUhY')֎tĄ eWٰ10\̸Wv4=r]Ipg!Nq|- S%m}zTpQ.?[+a l~_ב6|=as}G&S4b.A/IHv:^1uN5K\L<q'r; %1?E` Zv>vOL.r' 1 >c̟bo=i(HAoj2b gw(ڊOV4|z24W^!fKQmQ`?L Mq4b$ k$5PJ7YLm=l{^0AWa6Y;Tz*V|t7BqVusWTiW+P+XËd9k)'+?UUbo= lT43t9W!jH@o#+7DAK)qkz3Ha.ySlߏ qd ;l1lx2v1]ߚQ  *۹ *߁Yq_iЉfge kͻɀ)W4/!$q&m`s,I Z aGÍ6Tc+qt[+aM g._B7v2znQ1e|٫C) ï*5tdyӠQlWUuZUFHPXࣦpMhYUݿ۾0ϼRyLޡ HY45y7k3pv㼔@k`OQdb]7``?DU Hk|<l<C7Ěr1& v)rc۩ȠmW u%\OS©!j̮֬٩/#E=x9Z>LnS-C}%i(#%ߌrqĞ66HL>(znx.bņOe8af!7W_+mA"!)}mUmIRe0dh"2j4`2uѶG*K pXlIs1u*l };Qa4Z杽YQj" nС|2?G$EN'4ggM]k%+jM~htFGeĭB){ ERmzo$B~i it[cL!6[ȅ Y/AԏZ1^z[g, "+>RS+hU. 6#$RnbyTqHlYW(~sgbW"\b n<8uwXOt/y^wSUcwn0R_>-3喰zǙccε/\fp%>񾋏Qk^d5 jBWtt!{dV?\T))v^W7=d2=(lB 9IFLiĖ- <`O׫p);U}~ڞ"V+ ~{<#ɋo[W y㚝;̬tGELʱ<ɓ talhUP"2*DO4ԁQ+Ir]BS*E.tqjV|$v \+YD^ C_/eFbO66(op (ֶF?t?pG5OHqmğ~o,OjB4woS9]93f_W_8/G?kJn)a7ܤ< dwkɭdLSc n,W,-gcd@2 ܗ{߆\Β'b-;it^lB|U#{YƽpӄvtpC0i2Œ܅* ExȆOd^ovnO%vI3.nɍuMO0U*[YWaDצB;'p'L,A*E@5WS٪pd^0ٺ VgƸ#)/>j]Wz/99M;KV,q[EEat'iO?waQ eڰ((CzIp9TGQFgݠ$WQh=8X'ˍGM"}&4he-Y%+NQjAX VvՃM@}6PԹۿa1"}hY++<[H3Ojk?= 5q쮠47&DƸE8>q·mq˓_v°:b+.1 Av`gV̒NA^E-=4rf+ȃ+byڝ|kק`6>n*H!\ Qh&Va~ Czu#]i'Qv?Oc/RQ?/su ER]hFA){cM)$DPLޚ忚 ?c !Mf%~(Ʌ>Y9<l1p婀;,0O dhg~sonIQ*4I/3(W V%PE'(d TYʍȘ<Nj|2N b+_B1hwBP4·OAsٗ6R蓱caN@&f 8^xY- kn'Rjc)AXoU@1ag? bmf~eB*l”9${AI'n[-ڡlV}1̌t3ΐmr!iU^qa'_l s='!r5%gLVtOCAb8I Sa11)(G(}ϵ&0 ϸ-[q:$ $ӻjn=Iߗ$,Ʀz}VaZ 68ġ/Ӫq:k+lIJNOzXYE1Ҵ  ;o}D8&v>P;4 #[t%\w\$2v_]'o=016\.+Ժxnqv.H|CbY5 VHL_-;8pAi:,!z)Ɨ.=7͊Zk:I@*:0W9[A{o%t4:CB>yZ\C40qS$0~T'@sťQZa{5}rYT1c i:g"hL+bm-nt/PX4m.c߼  Ma`nJc9?{`+( `8Az5qMtݐfhՑ.cXTwD%Lkx(;bO5`„WFƅtC ;Nw=bhXt}b]:%(C_X6X^| qsmho(Iwju_jʂ#"_8 2jĂmPS|V\U!1hGgZ̴ttl Ww]o.U55l"]๼P"Zܩffyt}P/91]}m)8,E%þ%%"R]{FTz:q;ϭ!`UT4X"a*~+(pʫy:[$K"wmhjH'#2-h-Gx)8o7XFIA*KDSѠsK:w26|D/'&Pϭwr[ {:ihy[xֵQ H0ہmA\e~t0L9jM=ߢnyN IʙR4}kn,g>LG>^e`;4^b蛱BRV+e퐌T&%`xG%o-МHZT?E:ߦXA6 Rc =xXꃻ% KPcɣ5!tVJbCTsho;ZLNH/b_7]{Tv!YAb<0q8 wJ?t!ŎO:eM 8@!0-B-J" hMɁmWV}jj~)ۣ5Jono>yڌXܾBrkWe3A 4yz'xȸM&K^Zg6+ZJ`DqddLJ\)i!Y\~舜y=],2!49ݜV`e$=[V[/t5v,{d)Z,*.c =js= <[_Mo e1>4&Uo8:GĽeԷU~ng x=PɅ>žv$A9GjGLf,yr9*. t XIHf f#dRP-"-sA8 ~n]pr? H98^* &ÔiiMU_?¾Ac#:FN=E1j;#xCZ^x`gR:iűF D[{Ѹ/E4U.|[T_ǫGdl]tΪiٸItΗKO~M3 T;nqLS=֢|_Ԏ ORRt'wb̵!zĀIئMTzegtO aggO(rWF8).&{* HKUĀ|=JƿGL1M R[$xY3uQEAeO$*& VD,BԘ 4<{#rˢNz@;}%6CMZU+k79%pɝVgS绚922guu/x0N5{H~&D);ȵAZr5̘ [LrpD"|xhL#ಂ悾mdRHiy@zZ,ܶGdMyJKC_m01tj}4Q>5G<ϖZ >]V|!Ob|~4 UEq/a2!|irZ|:.@(e]2L'}ֹs"~-܎.dO@+(A~z ap<"J&[uá[\.lRztcSrBw7+$ȖM;7 PPLrIZcN:Hx:9TqH0DLFfɶFFVF- 78*BQ7ޗMv.9ؔ0Ā qiΓm(&/ l‘s.* Kg}2Oћԉ?.5kdF^ۂYcb赴rGxMMr̜$NO);وl^ؖ&]ԕVj|kY5˷OEa/ 9M7yEV-PY"rΈ+,v! >=!%-/EvdU@z G,VVB@}@G"lS4NEZ>4_}\zXq g†lyb yxÓ`h0Lx&УL-|2e(NԞ}z7KyKDs/z.Xh$JD-?#'Y]/M~ܯޠsy;c ˙mAѝsd%ߥM1^+DyIByL"ʺ5|uGW d;+5iDq&&U]Xoǹ^qJz۷8Paە0ãqro籵U9ZUYť*t-awiqT!@{7Y *Km6CR6ݝ;=ɡSF5,KFW5e鹯${HOpe3Q;>9]!ָc56:qAOk(ٰ音PUaEPwd^܈ Qv؍B6,2g&9HbRί ,VZ.hPNQ :3ϡs촫;yP3ػ DZ0\M>I_WVGDIkӇS g¥LCAusΝz\%, sn@0"!?v,qdJn Uw1Z$B췵j \_\Dv9=J.-74N݄#ƎK"RڌfL:=ؑa^60lJ&q 葔8 NrN ZIM,BӶF}_;!lAz6T+ɰwA8h=m6kONNLe,cMۇMz-= ;W(ssxyFhZ,MA!9;uļa "H8N& +N4u|cG^/TY쾞?a" ! $n*t;{~hD(F#!ۦ^riqaG3LT3k6[&6s<r' 0Ɂ[웽jmI{:a%*Gg#ArL@q1'j}"@<ڜSb.o"-`3 )jXt(V>ða\ڌIPh0w/w|bs] Q@IęRf~#ElR3fnpUtͱ@9YJ_5;4W.Ecwr<'Kqf==i0* Mb`[AzbfDf]~d{LD@>J$`Pi7{x`ggI=jqQb컳- S"Ĵ>iQ禣˭^R_TpPjef/&97+,}H TBgjz0R^Mߑ&~q‘U.$h.AV p(|??IeNisd6MvЛo}0h\ەi$VJX'J9y(̛GMoXg0m\N$W0R}!4_pJ *W8@-fXgۯUq;W&&ï 7/K 0j=zON|!@FRYWwD yaN(4=f&f% \И0vCH'Vƌ|EY{KE4 љq[J%^N(a:W7U# ~7p|b@e3Z2{yIàraХ!*c5oB…\vsCçͬl!R'o RaЭe^*lZ4EءzwqVfh4&z?wnv&Ҏ?ӆ7GrڎƜs~U~1 gVmFj!^첇:.:}wG,jVqa90쮴M֮V&YnfP'&s֖&mȤj\ώ3U:UT+M]!!cPB6~Bc stبYZn R۾%H5Gٹ.U͘T:5?F=r_2H fQ'~,䨟0ryqPwq_,s-k$fĉ9;}Q⚇t7BF *(ʡ^E?A|0Gf lzO#PIV p=Ca?[d Jgq>Yhɹ#]DVAdQ7 Tߧ@!6IX8JReƷ9z Ao2Zר&$r *9s#i}"b?1>t bF Of7⦯Oo'hy!N^#wYJ2 \3͜qG[Q;}fڋI  rJ\UBn֠ .SUl1װ `T!(Y" / Щp#:!|_1 -|Gԡ5NJЍyT ԣc u+wc(5=W Uļu'͸4eoMW`VܕXFL߀`j+\?@=:l c"ܽ']lCtEb6{leNxr" "#oխtN &HF ~3Wp 7˶?},4&; D esjŽ"7(z P#2'$)\ѮyVBV!,EnYcnB4G/|=PyѼ1{X8Jh^1;N)l;,k5 5[|c`kd6e`yo$(¦kkz1g}Vs:0eUԈ|?P *>r.qZa@a-Lγi/yCNLUy n6#%oo{tuW0̕]nf5ơsGa6RmQ>fKP%}L*[5ëP7tu.#~K,rk R C|Li [qҋgZ(LA!Lρp⚸oDdݰBjq#:ٚ'#W8LgPV!/U2bBLA f nVXsDFpt\;ޓF ep&jӢɠ(<moD޿3UEgbƊ,jPk|އx jJu9#q(ê}2(*1UuX*E LXn 9|*Io1m,`~&QhW!3d)#vQ`,Xub B `{ǔ56}%\w%.%E~Ip"Á}p2ϖ+yDЊQb c]e͐_`mv<ceؔ(}(}3bA&ɜ0;V sm8PuTyaP"\гg u sxR)-Й'߹?Z @#>#LpB>G6$s3Q*H\-zW3݋Eس(a;U(.HD=o\MtZrT>+.u"'fn5|B-E%x9 ;yUn\dfwGb>Nrp ^6!1ɉliTO$^*3b٦@} 'HDz@HÝdcc'h۩=#eۥGP ]Uq8E0>YNфR#Rs)%az['Sc܇`$V=L^wgUѡr.⛋4P+8Jh<. 9ֹH_ Op`}$&ۋ\W|a$P滟em/c CA>SrSSfY됬3m0R7%2Tt68G?^anda/mP|VZTxeū^̵:$@ڙϸeqSycym5{L?uylh&J u/x.D1+5 R$tوY6٦N)ZzƨlyD{83bnY4?{eZ,^ERVs0- ~.mDqYp"Is>#O؞`qTqi~A!^Z(#]^')=bb(^BXbm^p$ gv>Fopxu_YBpC8fҜhND.HNBoն5׳"Qf͜C܂qNKd:FTӥ[! -941 t^C^'C\ϑ \(F28? 'Gm.sEAv8VYi{?*ͤu@xki[ZT ٘#ڱ:+=_ֹ>gF $%'Ae!K ޛsbC,$giºmc748&턹hc 8\Dz mo wPc7\S5xQ7a.[0Ŋ䔄Lɕ)|yȸ$Pz.]кžvaXĠ-}ץjpȠ2g37z߰uIװ z 8։*xWTgq^ -6xp)H1@P}^F:-t7=73VI?F޻q#ލ޶~4 ,^[XGXͅge55c?5}-HI"9"ѽ&Ub;@rw˾_}GSC7*% Yb~M=\+Լ?]zvn\1%04#i3#6xzǀ`F/(vcQ$F/S(q(O{ځHe܏4i{ !jAcK ІThLY{^ 71Jz<~KYm{'v";|S\s  BgN?!j:}^>^F;%I;pcbLۤz)>_ m2=6Zz=jZ<V;"@+t$AyN8MZa޽ߦ|4a*@-/No"1W1pF-h~+#$yz;zR?mS7-(C(F߁㏼`:jc2 9?l#͚ϿMFL9vxu*ߟ\H> n8[G3I% SXh76o5=<;#9?Ic7#pw@fS#ࣿ/K Dt'8P63Yŭwc :X8.;mG.Х8! um_yġ}^ ^W!E_IdEO^e:~CVl-mI]΢ᙩҚjVHGҸmfEVrv57SŸ< \$hv `1+r#cvDKxfLa4~%oN`)"2gR V9SANvW`oL(皨G$=q3K5. w0 h47 w.EHikfaNBԻCQj4O3{mm#5tGX{j=v+̈hG^g_ˮA,vL¥;{%&`oHDm7W~&fPdx9p#Οem&GWBh4Hr0i%U#9J9z=D`A^{4>+R̎GCV;q6O |?{ *m ^wqrcFlqߪ@#1fɰR9Гe! X[sۏ;s].hy<+9Ck$U&_}9y<ŝۯ cg"Yѱ30 D=G&}LJBS`Fھav#K˓וy]у8|m:Snx&@2.3dKř 4P_܃2FqDiObUPvϟUGO>iNi׹^Ǡm_at,lk~gkѢp/ !W!ZA`[h_Mv߿KsaOpC x5<)̗& SǑj[hT ۬O[kO XfzڹL&A]fŁou1 CҖb~41lz6Xo+@N2;n,ɝ=") ,y>SNu-{N60U|~jT'qW>FT>ϏWtthO8ڔQrVN.dhglK kfmQnp '[^DcFTh67H5sNDH8N|X FӋRn E^s,|32j˿_#&pcoٽ-߆$_?2N /K }rzE@Bى*'rdQe\@eG;;vx W{X21չu'&dm{*nߺS0Q=,qDG>Z~wbge 6Z9AP_;cQ+θCAא-$`=jHjX&ɣ\8e&B;9ՕP4v:D9lɐP5؉2j<@ ^0HjxLp$d%j<"4{22D%DP[Pa vqrhz p عlW5('1k+U_a(FVFrGfnL4㕝iR.]N,St0W ύ{O]},rݧ$JI _v@/X@Z~CS8wK799kҁwA'pMе>i܍2%mvʏYߞ%Xnx}78yr#Qȍ=Jfc ZkXԬǼF"<@B,O3&+*3{Tw "X ykOHII>QK0MUiջ BOh܌]ok^ZML'I.=&-޳GSa 8tۋG 0@ 43~'2". 93')so:&t+6u9hr?$ RYw9Cp7ᾮXX@ Y<S*f~ueâ7Qk)h bNq`%!Oٲt^! Jr~'A[_BH909|l b,-`ѡM_/ Mx)x}~Ε lM%!:(}UN vN(@Xދ,DTgKڈ*>Ꮙ {g9Ag|O0aQ-HRu4 \3zThK/J|ax_uG2D$"dvOrAy>-r>cꇩ.?I<DmA}8fF=lGH2ܭ6cs_=#AƗ. t^nPuG)l%722S"_}ٺ0pR=h^e֥36t_ `@fa|-,YXYRto.*_PN-SIQcS<42/_==QCδZm?MҶ.Bˆq d9sݼZx*2oIIyGk8d8$NgK*G7Q PL.$[jþt@dVv/6a>yìUX/MgEw6Wjjs{RQˡ[h-V tzN:{u6f( bƯo~wn?%9K7\1UQd D}skiR0h7^3߻ŝ=ZװWx?w[͈mAEvıPN<P|1.xNԪ a)T#\(X Fm(u1yc< RѴl\kȴL[> ʩ6O`@nR%@keSA$_5J5+O 2:>9.x@T*,OFW9f,qs4]N|K>jb."yj:GFǬ0kG&yAo An!b9x[T2CŪ3 fFFuk/:E_k2ML.@ec6V6m:'$1stס+A=/1UTA#Iύs7Ͳ3*׵3D=)xLb= ;kѥ%(c5sT֗n~HPlXlZl$1=N1+LkRu)\mYږw`h(75ID]!I;%idT8y?*M!Fu)/ *9%e^7-J,) Kp-@h{kCmij>b=PnN1mD2:0b6}ؐknY,y4+ E7ye3qk0q]}†A[B' :8ڴ<=N(wNvl!ʐJ3INS{wBHqFT^PP<1ˍe=zV#"" (6fMeǮJӘֽyPK GeuUaZBپa |!7*uKMbQmWt7^A4gN{ eqW yAu0R3mW*$eD$W<,Y0wkӌ3uD>KN pbw[073]GaG߄47;-Fby{9 @,R@7^b312yC)`1Y8$#}"YZ+;0;/! w@9FXRg?[UL\8A 7\i#M#AR'G]?c ,F@<GM"#IzJ,le%&g\ |XNg.4 ~ujslۥQv=بDv|QuͧQJ0kŵ'9Ͼ@d=ԡ=lxN_Nmf]GT^ǂ)eOnɚ]/~zGSSl $X2~ Zר^kwfh,<9Qmd{FwNv &S4yJ(j[z5EK5=K]9-45,TΥKZ1)$r' ) 9:qBQ܇M"RegH )ŸW[Z+udKIش|GɆ]dgO8rZ\}y1p}}@Z:q/ 3`Zg6 7UL!CV?R <9Tc^MM~a"esK&i>wBpe^;gW 㔦A_86]ޕ8!w*E3zϓ'ij O뺦%v#ۿ80`BS>28֨Ɏmqf?gI[0 浒?TwC:ƎM8ll n'dà#@gy#=5TFٕu77䰡6$<<+IVg!i3s!'?ȅg=ۯچג8ytK"kG<g#%Yt7 ƺe+cH>0CE/!^0Xj֖W _J-Тš $闗37&ςIRd]jv3೏w5t$^~%itZO`MEPÆ7h?L8rx&9,!Qhn <ДfX?kanImդ; AWD~]:uдrOR|j}ϼEj:ƥFÖ[FoW򾢽x+Z5ߧPRXXIO%`Zfp:< p~k&ԗB.3J =Wbt={{"Hc 5^$؄.à%B0a|a+QzkX?A16vb(.\təۋvy*ԥv' >\=ަ0nBoYɒת.1hBCa?OZ2RY^" [>l ʔ=V:q ΖwoJ*>ZI_$F78v2,f![4k!W3T֜ ?O1}u;zQG) F!/R<ŀ*OqYHUs8Ttj, >NĶJL?ޛ2 2d%)k 讪ܘtp ._eE^Bm?`dVg>HO-,Fm|PVfS4_uK;w >(:@5הVMeDkxEÙ^&1jk:zC2.:&ۭրGTVP÷+Bp2︵7q8" vK1Hs<)PrUa#"3ʎe "8+P@[ˮ`ʓd%SvL {Kf7* DmdRnfյdO4D[4AAAFԲl]F+0*AgV~F'4]N0ZZFTu'#h[0}7y1:4Un)OL5ۜ} I['E!v@W<$~.?\/1X!/vkeT^m0r/t^.++19.-IU굏 Qztm11OR-[{gLV,e)|t2&p_1 {HZkkhOm9#b:ٝRsg#U[!SkC}3Imrփ QUob1UPn=ɮZt5az!]e ̪@T-Y qZl̝Lv%J6'|D;p z_n8IJVeJmG\UJoҀoCf&>_m`> iK5KqM{Lr`AqWªM٘ac XRU𞈾.L?pԻ8ৡU%1 (DjI)(CtGlKw6b nֈ /ĸzp h%e5Rfߊ ('ɚJGmJ=7zoE ^pC{fL6F9T'g!;ZjZE^O5ŵZT8èo5TN x$KjxSgnōK?T.͢459hWSUHV2uv1od0|e1čfʺKpUߑ^ATԒitB-ᆐ)}M+]xKCvPB2'nUJP~L)8KyRQ4kJj`c$xZ,QDI*H&1ЕZ&E$k]Ú,t9Hi1!Bdo=TW񞰂\h^KkJm=k'q?vI(`oXт_jw+ӟ} CZ:-qPM1R37c]~ ?yV!(x(lȹH63 ZMDq-H|}X/b*-}˶}XQJy4\wvREw~ۀGRC+bԠP_ܹn`fm#ՌzALSBP~gdtՏJ+,r <=%Ak gv;(98ט[¡R+Φ()#Y\ĭʉxԠdWX%(A_(⢙Gh訜U{f&7Wګ[nλ 74) ؟;dR3< .Z7SU7o z SjبFm Z&**"ƒx7(Z,"B5VGc .? SUIs0ĽCoRԛH Pu]~b05']z{[)ޥ~P<\\un]_to(sT[z[m~lXazA= H&+ ձ[ XFMttVx=n!+ 9 h74eZҞt*YVdntʚ'] |iv`AwH3i Qyu~}',`<`EWA%Wǧ$ t ]7a ܘ*ZRy(႞bk[#ǚoǺZ4 ҹۋ H!@5tO% ȶW EEVCdߖᣕNE`XX"}ݔ zF>f.4vvƝg='fṅAl~DM(Gt)CgD$ju HOmFNʾ3+-<FnIz.:H47v0,=tQjPY0N‡˛jź  Jչ7DIyX2K[{5ydהzYA.Ĺ%*nU9}uni !Ɉ%`?I:vB~ES5EK~Wi4vsj e@QeV N]3wd6ڢW gH$]?"۫'DvϘp0ujαZ1>Y JJ $>_ 2r`>`\ImzcWU<уς9)GRbk%i=3N'uf?alP/-É^It/@i(Ѭ [GCNANA~֌+6TATmqkYuشt+}ǓGA(w2~% I:ky Hlc[ͤB6/ioB6VԀJL~ii@=, ZA}Ej ~TWW!>3(1鶼2e87ެWIJA' ,QN%t%itu1GV^NopsrFVVe .^tD@]Ǚ b,z7B,iY&'4Gmf06dK"vN^c$@Ϝ/B#RJC6!F@I =̓e6>LUDyL f3v ŎQ'ּ3:  MkfSJ t3p\TۜS%g|` 0ۏD1h|h7b@>uJ0]U' {a*lo><֪DêÛNT_^0ʞhJ%O0j8iN*v 64)ǿ`!|5uSsY)[ɉ20ZW<`ߐŔ]sْFv>%u3U,ոN^FJQóU) Z11g6_د㺊Id[yQ ? 񭔌fO^݃Oõ]/@qaHfgyi9 wﴻdXḉjTQ{g d0WTV!_PӦ`08_|%j4xVYYq؜&ff(2Q#cr=}Kw>l̃P*;PY;r ըL1 8lUgL]!4^/![{ܯ&h% zw^Z8s. VZ#FA(WecLxREfeX@Ǚ$`1ZrţlVMq3uʇeҝ!);'M%vʹ*)FӮ˱b'ֺQ*҂ Kjj*+.4>qK'ֹQ$W43Sk&wXSsTAro2>y/>$YatM$h:,(߸sgőJ Bd]~rr(`㵬r*cIθ~<VPg⒠(Zffe TfhS҃T'= FU6Z)+T52CSk$0-{ڋ0E9LVLhٜ;"V'}\bXj;x yO~G2z,~McsL/RR*_┸oq1 nh}VI9SA2p,Cß7klA e$lDFǞtcbҍɥ5/XϽ6+1 7 ^艶|ox`f&n^`[n׏lS{o4Ӻtru˙Mf hl#w|-\Srj6d3bCZxNʏՕmAȾ0ɤnClzD@o-]1 n9?ĤF\Ao7 È(9٦`nn(~eNxZF91bVɍ@o.0LVF %n A5a-Ag])ƍpVUQROpb6?ܪFP-BwU[9ωaX"?9~ؒtI^ݞj4gE0wŠ{@`m\pGޔJ%/6cr1h7bŠR!4(4,T< ?>>kT*97*$i,?U>%U\?C&]V[$k'6)ݼxUxfEѯ@~̙ ,"v5gC6h#XV''<'"[3 Y#Bd\eV;A 5$ֹ/-s ^*3y=g4AC2iB-#A4s~:".?4Kڸ!y*2c^]MfRJŁ{;flY- wۧɵ~WL8D\^)f0 u|ؚf  (7g% d^,=eans6( l?7rӄtXGtTG&M’&maKcӊLI%fN^Fg^=Xj rt:X**^ۖeVIyu^0Q{q~`*ŎH3Feg AnL)=@ [h[E?Yjzϐo䉘5ڢtl=Qk΃w'". 띡Qc@ Lޯ=E}?>eMsSYf{֎, EufBsetDmjG)b},j2zSr68xrDx7w{AKF6yu 2?%bRgLAX8vinʫ~[Dz{ƥzG6D#$3rb4g*=b.H)`(8"=}"S9̗Oġ{b7<Ы$Ř pe_ܢi^ CU,~簡f/ "@1Gw7W"+D jlI`tw!{E<Y3L<So,("i|}zֱ(Ĺ|}*Z׶`LĿ)ֻIA.4JUcc.? LѶl͊f,pD(0/NCsaR JBYS?xuaѫ#f㍷ JeL ›J?B[ndpeψdWp7rx"p#']z=KwQ49XŐ4w'|SXw|bI`~C>(79<7\]ڣ#9[%Zi( Th{9V'@ g⃾:-=.p`8wXfs{K<ʧl;g$B@l1$H'yJ}Bޛ:O[;=9(=H2ʡ<t}m~0i ƈθ߿-ѭ2BUIJpr(6pJDvQi75%}xTӾn|}̕hrBcA8%ϺJ@,֒%nc],n`Xr葚y}aU+$nO W^AE*6AJ ,Rzjv1U˨~>U0RE嬝+DɳXPWH Flᚒd;_dM3_8fqȩδZ<$ sz,M=æKCA RWԄ򺫽ɍ7^dy9CAʼp0wk jԮQ6h/jbȠI<|J E˭ u8{:sI{ ƏQV HXʆ:)9Éu$[U͡uR&$4!X BM!yI\g[S3J7x[:5)V9/޷/p`ѵ zxb@x8nQp +}z/Cyb8c784%mَ@u^q7|vbQ jKuH PE__ <*Hz.Y ٤oқ.",C:S-Nb_ -CYV5sCh !+mpg M"$ƒSҽw\D-ٖ bYر*@Bs-;4flX1/}l @D%s1 \ 8Eo@WmF}V\Vհ\\LE M~#J`rtÝ/F"f͈cB JFa.1gOyxR/nύSyNbfU@隔JeI'5ЦlD!]1BTQ4&% Gb$X&?[]ط R |ry(fRtKdM01"[!Ԅ9>߯ƮA׏7q?s3EMQ$Gs᡼NN|}L\iNfjkR.|(dBz='&@ , T&UWȅP3A>hnAk}#HfX?/(]<ם##_+(X|U >/P$O"S]@OW.0"2=f&z3F rA~mbn⬨& )فuǭMNߊg2_enx"V)):lc`34*Vt}غ$7w!ͼ'?f7 wE]/!c㕩 sť\XNΝxG:{X?XRfY7%/1r( 8%1 yEV_Ci_JjY}̌.<ϫʸi#\GS[Y@xYyk>}J M6ˉk-o؎Wbp^`.J_5=gvn04֧W*橃@ޓV]RT4گc5DÛ&-),H a#"-)yp>)g^2&$Da Ĉ }pCtZY|g`ʙX %'UD_=j3mABFCT3UT;~ >rz]ꍼzP?ɋ]: S/Kza 1" I¢,:if<[n_V*͙\;:&Utl-1UF"|8] 9I8-Q4mc/h!xZmPۄ W{-$-$z$?Gkwv/{VMy,=gMZCވ%%nD}AX^ eg!2ϐ*5LU*.m#6J)R R^ qL{(EתXr%Ы06J؛$Xq(MZR-hRP=nEnŲHQPrsX )v ~o<խBT/ p= Fy:?ku<)1i>XTĕבjL}&{*4%Bd0<ΣxeHDZen|1 h{'%&/- R(8d0[HIC!cwM_ǀU x(:PV+58qz]ar}^'X6)sW!5]CΘ\jKEjBE~ar > ?H}UYYz2$Ͼ,Z'q*DkajCvGɐz RR`@U-.L_Ax02@:s|j ,rZw#&S|YF(2q؟h"pI|)[TŚr(xZ904STC̵_ؑHcU!c >)g2Ъ2!bE7~oneA5;kgƝd=Gkl;"͚l)L4PWΛ!aD|C{ߍ*f.sYqձ;QD@^1Thq;,h*7nKs:]1621,tM}"}6Ḿk}0߉s:6,{& LZ!E) }wV{G+Gbko|i TWȹ`ytL~YlNW>4#g a >M!H vxP%; W8/9WI_xL]<ċ` Zx2B^2f|*["@{vCDLB{}e{gwcs3Oa,E41) a :U*+)Kf|5=Wb7n1ߘMͥ3 {/Ņ~ېd64w~l Z ұ И_d#;[tѯJ]Cw9e"_qZ%oƜSp@:C2?+Aɧ$eCHvv8).u^fիb?B1BJW__#YoEPDjy5n`BF=gVMCtPg?( {:>A00]!zzݜ} )|p{Q6}x*ct$t;RM4/(\̽%.-tHOS<* `}Na^yL&RDWyq<|X^oWhrLjS6gHtl|MdYjX]}+J$@\+ Q-4'$w$pGGXԫ-̜fƦ{ߕcPX0[L Fi޳y/[ I &jm]ߕ %Jk%3Dhw57F/! 6Un?{G;Q*0uGiRudWf'`RΥPd4+1fO%v.*fbF.2S0hG< ?g .1<,p,c_fbBYigZ&^`3MT0K^mek^c(e@,nBIKFuGMͩRA,wM(A؀}MfRށ_R2 jѕ7C˕=ġG-Q%@K*,aEZ17m֞ 2_P?^v)g>6Q]XoOfWN;)X.#YM-UEdrJ4麠oNM{W*L7/YPwS g`c'I(6_Qm=KMlǑ'; #&|&1bKU]o|'j?|J0,ToDd~̞,t#DNU(h;oʕ:j'f,*G F96BgpnwO͖ݐVQ mQSS@5 IqJ B3@\|/*xj;|b%Sp)WSm*fN,I+tp2f0@%*xW\ȯ?6QOh_لDO>)rBbwy!Zh'u{zBeI_CxۉGA=nCHrGwHOh80qS בw)UN)H=?B4q BU5\I|(1_4(UH}t@W_NqjK\VBj_1yBhۺ۶E7bF,+%`uF\q֤W.n!l~*w<5Q?5[vgEd ^ 0­_~%0BS&96S`nQ|CUhp|W JDO-nΰK=:;7j1ʉM?*o)],'/nKC:,u"~X nTE5Z&b*)69Ll,gw6oh ˩Z9fu [Wm?O]irPܾLA7 WPu dvr~+4ZJW@tWҡ>_LjO )msxf#L- %vkV;#'}:4q}wv 3/ff_APxlމd˲;E(>|=[~k3ݚ:KZm>LPLS7[Zeե_oEppV|g&"Jg_ Np9al/ 1g^h)Y HuXF*bN%ϜصGks?,tmMä0R!X` SI ȍ54<dTK<U)Fǟ6{~(|+z?yÀ郘0EC Ues۠/Sg*UD/rT"bmƼd=7Ona_gප99i%%9ւMX)(/Ί0XIA#!o凱ktљ8oxIyHhO PT0]>%~];Тma ?-,_R Ο[$lؤqEyk;coOq-":)bNE t :Lj N=uRcq+h80n*L80u؊y!F.`!8dKJe4{HCw52 njߗ `++ 4~<M?5|E%:6sV"l;H+ư׀[%Ŏ(IJ"F̔!B^:<`2(  =Wtnӌӯdog!J^4h$0>kt3z7_EmχAP5GQX#fIPر_ Z[@#[܈!:v*hnC|m]Vκ/3coI2k5ˬ2Hz?THrP,n&r3xoHR*?ž᫞Nu(8$v%0`ټs]b 2tCkX3'@1H| Y7 VP_)%^}}MeLDW pF@}m5qڢV1560Z`v_Bs7c?>p W?ncjuF^ˇƓsY1&U) 4N9TnWR&BP@ۓ<3|`B7$}s%&EHUrLZ!d2ձCzIpݖ%P1!f0el nߋ"þw꫿`R v1$I8z+ sH-YC*f;ī)hGC ׷| fznNԿ;Z- 񜣩-HV#33c" ?rRMϹM+͙LzWYK5;GF=dzx3Et{t$Cc:5=?@*CV_=hM`A +HЇ^ɠtrD9hGW(o}~zYfdC顬nP5+"f`2S3#%7zXժLSSY~w)Mzݽ-(uYԀp}\[{Uת^DKp%3P5!AHsF뽞C;@TFʻe&Oe&ްV|MXL1y4s&)_Hw,$GŝnNއӎߏMw_c`ڀ|3qP( ݘ"*,VN NΞ \'fJuꦹ؜kB#4\;Nɾ40 X@(f}G byߔO.^lD\%gHhwdugw*h"Gw8,+~)3!fr9w ~կɍNF= /lK^LM7#28xf$HdXRG',4˃O>(`%Υ=Fji#l5N<㜾`ʡv-»03 L[oYU5;q `w DyAt Pe礀P7_`~BmCK 06 0ܦ;ӝ,h> &` *8:ޒ}$A kGt7%[h<?~'|6]0)e?Ɯ/LgBd"i4!M?#'q%#e*fȓ2T (6Guʼno`Sv]o&#}ڵ<\_CにbIދx`i&:+N s1!9;}I6sER/P& O7z<Ha=oꎫko | /ɥnvħޛ8F*nYhZ$.G=U=jg`QGs|܀U5y~i^بMh3V=b6-L!nM#/-^pOtGg:<{)B%kk9ӧr}z/,&!>bФ#lce˔2``]^Da@Eb6oWE4)/d֘h dw)q2Ϊ\:m%a)UTTKQ(=hըP t"sh{:06"&>#@sy;BQU=f 67r @?Kwu%\tyS0MZf.K 7jstRǢTwWٮ8ἂA$h_e֎~Yq.ש(- >s'{][#Ga7pCG%VVfF]Y&c S=3'gۿMCu˔1?3~Ċ;QtYH)O;D2tL6[RFP.ōwSA*^"wøvI}pNp["QSNpg,J;@ ;B&D6427=C r0Y%6[7;êy9Q}@O.,Mj#KnLO*4v0%קCm{?[&:1rݼ/Uryt#P1ERHR$ulp`Kf"y6\bLGU;3ɇ&uti7|)*ͧ\ L\vdOe(KOs0͚J}hZ?CNߩjnk"y]n{NorJkU2TRha΄ŷ*Ț~+6~4DO [Htpy~ -Lyt ?l, @ eаF4@.9@}Fn]pZ=h_F.GZWjMuQO#ޣg<~%B tȾ)-!VOZ3A4+ gR>3Zɾ^{oK-y)WxC`Xi`]RIKƮ(o9( c%a}iz5 OJbJ|`J\eh!B5hTZ p)ds,.rVt +3iv! Η@ %|[iZ'دp]:8!Q˫᤬S=ޫΣ뽡uk@U3=+u >ܛ@o iI;|P9~jomv5B ewdq)T^6/oնTn9S+cpL]'JCPr;ڽS ꤡ3!jkXHC'B) .^I{KBLY^"a5 $"G(eymvVSgHY|'uG1 RyR++{&.7[< 1F8FR&!!SFWѦ8+jVY`Q@q=u=xE.u)H 0) gLOwOIb*eJ6 B}rHK{Ϧu؇%+*S(!0#˰H[s(aֱLfHK9Cq̞Vx⅍(%yzLWe23kQl:E/zj-S,9^wBmׂvɯQW~vZmSL4mN?ҖihfүVl$K}fe!c)dOM0qY߂ggZ)c6C$QVWf.{,Bl Vo"kHBDC1>-rhTuO,s͞`>s'dg7R]_Ȉ})R="gkTn sE%)LxqC t = 㭪KJPXfԪ!ƅq!jXc;8xEV ~~I](iSAZ-o9L9ZՉ+547 g#sZ1yw|=cRq <2e"&g=`= Pؒ]&Ll?m >m`9|q A"L myUR*E شȭo ~ ?vAr,yAT6>L@¦xn˂YdP |~nO=ɤ*MR;L U*xS!9$&uR4oUq0tXtBP"ӧT?b˄9HaRR9PVvYKr,|γ,SM? h(=E5 yrr=6z"uR+v/ԧ6H;N?[P?q?hmI<>qnt%wr̮PF]I1ncP9Fֱ.x$?[r"b5RL9s )V6숬Iw #A77|x=kեLԾVoCoy;CIgb ;~v4˟Cd+b2,A-A['"cIu_B;Vo ԓb)Q8BZ'Hww2- gژ-_e ׁ9KwdY'ٗ^'T4FWס#j XqL66 iB$dSAw4o~6-]OJh K%-8=yN @cA XP 6bu!H5ƶ]%<^,vxnjat 1ea\?xv)mX2, ErߎDaJGm|~aV {Zf2<(UxFYJ/A4uII>:Ud0ؓ/1; O_~P"WКZSaٸT² Zہ6T-7upTAFlYU#UCo8hG/G^_OE-窒םAY@'B0iF\btgI]vƸ܌k5 Ӈ;8G;Mi[ "_\q`l ʵBd챀Bn n6IE{k#hUjKreηB삅K41tw0M}f5bV;Q|~l`[qrB}"ˢmlaE F' I28-*Տ<YƘR-| +.f0fBTWnee_M\h#%1^iDt6t-59S TG {VvZSxꯓuxSK[aH97\t;\%^22oFH֣1 ܩ=z\xNGmb@_bp.<7J7XbXieO-'Ē\MZJijcΛqE$Ĵ`+w& LsYqw&_]̅ LYn@0L׹cbi+柅c9[AvTHN/Pu!@ef(e1.|dR еpiCIZUvTf'-e)56a-6[א&խ W3=~SaiEu^`{JGq%u,tm{BpJ2<-7A/VUnA] \HHHTH-AUd.lHS.['i`6&΢@-T[LiPx$r9=NjM([(XkϕY\V2,Y"PpJ_3]oDd An z:MOzXQ6i(׹ vLZrKzq0(Hm)*[/]w.%2kg@kȞcB ϧ]@~?ԮGV8SQѩhtjcܤ+|V,ۿzv4IʻYZB^_ٯ%8MHrKmq#TGa&oɼ(Չ>E2F7 "Ruy;9T? X)Yx˽H$1V/QZ9zAOKF@"4~A^$ F,U.4t`:kkK7ְ 3B:69Pctjsى}.Z+KAfKj\Ƒ; sG;D*5!w^ҁ}{΃px w 2:vydxg԰Q~^љ: 3:ܘv!d IVݯc#k 3'&h?%F~ZT,۬,.'d#jKB,3ukn-01m',`>(b& d/f_ !-vlUu_E|Sys%ޤ|^#NMm$Ρe\j?Ll9P$揫L$q Wu3;4I y<^e& }q2c,Bxvؽ]XZ){B×:{;vwsuPdZ'oG9v"^Wp͹vM q*0 31*Vi.W*th=LN:'q fH4Cv_otb + n3?i^NXeO[ee\lhxL9ixU>F&.ǡC`dX8 VxuwzHI {Iݞ/}H#!OxQǬI l}Kyגgw-ZS'ZZxm|. "J\Wxz|$<GJ '`+~:CH͖L3Epj])b0; _@ _Why h1[kd\Gޠ} sf WLUcRnXם/ii,L u~~EM&,Me'HLG\"']h EIq"\|'77i4K>[)WD"Y4eÀpr+:,iďН{ =3ˮ҈KGƥ ;("(4"Xa~clvjL XLHˆda(㜴Ed]˖3igʀSZ'rcMQ2ֺ`{[ a{VbiS e3M|591dk!a&(5L%pTɸcHyak_ѧ `7`[!yQmPh_Uջ9+o>"Es#r>1) m/- k%@iI~@!5T6u|?ViÃ+_ d]1,wӜ,䎖xt 4SR*RN&Xɠ>1eO4+yԗbMIꞭI`i=)U! lcVk W1hHjzqʑdN(",Aa v68>.#L49ŵPʳ;BfdJfWGEmLҾ{!O,ց ?Jt cSq wYeq&g/myN-KI0xwܕ>v$jT'`8<86ahdp rqRj#{W=!iMs-x#E|]ӜBzm?P6}# s g4b#eX!:ň vp` 4W1@_ET#D +O,`w'ҥaȧ~?ݚl,^AkIi[f~ewJL+Ջ~n$\P3Spc%_W=J}$(?fƧc4ˈQ 4(3ԧevY0/Ta0 DS2a FLd܃%Д_1ۺb3dzrF0;EtlϮ" ɼ"~fWuqD. MlmW:"0[/M0zuL~ X& "Tf&Q;A J_RH5 ( 8!~9 vDSD]ڄfO6[骛p揿:*WNUsǚS?-yZAwQe/5У$v)*zEP!. 7iШyVV0*#tU_7s2GmxQ{;fSE,knHP^לAI4weypq_Ca``B)Q>5Y63}]b_zUA18 1\i&Wac{? &<q8 @@^ZZLzi3ņ !¬ it*8J0.H ;&i5f({/CҡbY!fcTEYJ]:Qy, &LV*|Jܼo)&uǜֱSG}Dr^|&Cu FgZcV|pR$`!e"s⍷yt%':aPd`|=BGqir#Q'D",LW#rT }?tiLi<#w1S0zwB$K?|\r0O*[ А %˩ٺ=X_"_'dq .2&AYs=N!q E7iDIHӱ:Ya,"G鰉G+@>؂K2Nhfa?= 8ԟWkZB< 뚩W0ݑgWvY~҉aҔQWV,ZXo|ǞeDIu'a(p)S kpsXc@OXa[.|(wD"gդ;vL=sH 8<[뾘]z).K inKV7r<8b'4Dˤ>xd$o3V vRy楜hi~ 42@$H<⯇̾f\GԄeRa5Z9N]c{@oe1Xs4<63nRUDZXBd`D"Rޥ9!|yeT;Ƃy+-p:(CsnJ2a#jԁήHD%T0rF_N6Ց磗A9m"wd%>q.b#E4z͢ҳ^C v{vr-t_{]7oD+G&vfӔ '~[%uL$Rlv]Yv ?a{LV Q,0ȁAi(eN3jW Jݸ T 6ov-N=Ѽ;FUj y 0B`f,q-ZN`|Jˌ%)_Cc_& J>޳vwb{]:,=v\[827%CsOd2p,{}_Lh2xzdi-U+ƭ`-K˪sB{&(C3XC[ʌ'"j ||K0,!Gkoa3Ǖ!Q%UfPi IE jqToB^Ҝ[6m pAW; tka&#{q) kk0/H G/9Ǎe1?cJ~ʎ^Nܪ7S!WxM@{4Iku-ɵU?\:; Pm6#P_O|i6#Vfч:HIyrVqE|٫j8E<(bRXmf)!_ $/H\ZETsĝO7[뷲ߦWPPM]<ɻk!׉TYL_ۈ A!R $R`5KuW$CJ{ XOgK*P\j 0PnH V}04a%o*o&gs3KohR)"$)&H<R2ҳŜ97j| bfxxx$]߅˴Y"7-˾9M=%IFI)RϦRVб,gsm_O*<8S_yEN ўx^)Cgs+@Bef[gM.+[)o G2&\"PX6hn|-He2g4Md}qLu,,y*PcT6FGԹPߦNmeR>D"bid/n'7k܏yД}VXw{;3jtmiI_8 p}.y9T2\ڰ ˓\sn=#N]~XK?T^Sv?[.BCݝk!e,i%H;0=\K%+!Nב 5 gd;^'mMΙH##_7 @01q.S >>'<9EL*ɞˬ u|UT&/"1IK`+}=vH~G4@8KbnBȷz +8)*&ŁH7=J|< GKCdSށACYKRi -)0HDKI-˷hOm S~ ^}m]~H!{cVsr["vU7 m LzYDra=L()V:_>s(](iG6+N)d؜apxIBRsQZJG BHY 4|^"9~nDtLd( i>[~9{*76eAeFRH+Rhz@B^&b~.ؼ˔gSc(C?f-(_Y_Lr,zVaȐ]tdC'ju8-)(,Y5>ZUPth< amZ!ǃ`U VW֋9G-Mחi ni#JHKCAfݮ%+~,ry"/=Q;*ns[pftqSϛ TzS#"ދ;z(+ꟍcEe8 #v ?z'$cJX |R,Qq-ZQǨ\,w<9"+x 40<,fn2eiU>:A1"D"Xj GjV;IN 4xpųc(zA7{/b3ꜾO6S&xoy6`wùmtD/QKCm5MۤV#4zr6EmZuO՗O3ƅw806@/"MXiCg؂D]m_jNRfO\!f~s"JT''#tٚ i|UA}$dZ;G2#etRC="Pȟ{ ASQ:(@R0­ Awjoj[f s=~Du^Gyq_o1"̱LC}T%Fذ6F Pxn$%OC"kCN;}xwlN0<0&A'\lI0N<- ]ތb~\G@bg;_CV#-<(0;oʬ_mLK}AEtC?M2mDxQ.wkVHp!;a~gpJQPjn|o-)Dx*6)S@t2@/m q -6n9VOTuIN'){̵)9tY58WDtr_[T>Q>eVvpӢgv'sBou)AcN%]*8S&-i[m~xa6^so/mP>t Ea  1LNMQ>f RE?1$_\+EώPR癡UERPRVj-HJWG뉄o#Rp),e A{Hec%!7FP]ƥ ʳoz9Ak(kd9t4G}aR:#o>+פG/qk)̌1fD*.*&dxOE fJUO*[_P-qQͬb/l;)OZ$Ix{WRv:Kpm^E*бG&~3T0OP`FDa'm9Je뱷(ƗbX _uږ4ۓ`ч:]& 鯃랱|!Xd7t³*ʌO-icӪlǷn`A: ? Ce>N75j!'77gAM- hftp,f(!LM?2fhQ ٳɜXsNyfnɍQV!Y%Ƨ9ZH`V{gTb8DL͵mבֿ`ypPx@ FoNME/,h`SSݢң gL?>LP[]qZ*25X( ">wg$^xan0_t,r[BYܚ X?l+bu^'v#\SX&M +:(rP'Ȅo}OFa!>,lu*aU膌)R*>s\GsDP}aNHkR}Új mXR-(Fˉ lܟ¨_-_7,ҖKq<߉V̑ocwP4Q-R}^&yeK.BO.†ehǬB0Lmm1[}z $mw|>G)r{Xp#7OZu(1)`I߼vpWb!3jٝ"/@zIX#OlkAXh6必9yjBc6z7s|IQ'(W ( F8_!np UF|:צROye4icW|_f;ah3Fq˚6sm$]CįR8!Ծ+J-֞ ?!_JW.j(5e.3TGīӎ† CUS7t2$asԥ-YV S='yJ4=h.ʚi[g&j.TٻS_8S;ˠ; ։\CL}U{d80* e80)n lo\;+3cD`J~/?VNK5e y"]D| 0¸)}'/'szԴ& :Z/Bj39Kt꿎y4Pr#H3G3CY/q:iN$r#3l1H&1H+ 3-ϸ>Sݙ UbӋ:,-1<~J&ruaq }(L/,~bL ?3c^{֛<3%7Db1.cޭ v!9,|+(erOyJbYSӶCy|rVrW!Lf˞M ȨM&mD4uIz%8")`΃$Ffjϒa?k&0-aO1ڒZ]\CWr" &OsY|oxMİn $?]&ۘx`}9%KDu6:hwj!d{kA T"Tfʄok'$dOo(Z3ԯO{^/a7`Xoۘ Kڬ O4=SI]U^Vݨ<#1;ߧYtoHlsTG5%,px}{e[철 X_И9>]q}yu*& z;; %[p% U6 aY "D49GfC_ʁ96o'/7_Vƃ01RM'D0  !t`c]csL=C-ty[HXȃR~irI tbps22#$',%ݣ؃@#@^" M ۶&sS2Ȋ=o϶\#%:MLKA?ډU:C {Twp}s6I^o$p,I:?4^,>7 B 9(v~Pݘ38/Ч(g3u*BblRkQMj,,L:"z]]Љ)R-uDR5E,cܧ㫌7vy -_{|$Kh)t2Ƕfu4B ;A 8,|U58 8%KՠȧOm&&[a0I@#D=vpU) أ7J#mX;'dWw5ѳbEӱ_e`0ŷOvr<1; >GM?tQTEVE"KR_oa7 xl;e#ycj,mAd.\}HM0vr*u E(Xw*?^DPWs{D[$+u7ߚiP/&2cjwz15Jq74.Mc fx J1yҥw]F0J5Qi[T80<' "uh=NNIؼz)\cU4 l}G/Y{2_uI3<};s舤JK?*^ѭ8F``U ݖ:RW,@X`yK@&.Pa٭M1.=mkMI=(E9 'Y7< ˆ9DKo/Z2J CJG1Ӯ<3Zb<-O# ,3ؕL:释dx& +cX`C؂#:[SVʨQkدBp[['6[iTZ?zog^wp*@۽ϓ#]< ;Ǒş@]턟lacÍUB=KªEL!G"Q#i # hHi(L"zj5;+I4 ŔI ɞEsËz"->oe}-4jAyLb/(}C%ޘtRpKC+FaiC= cŞ4 %/'10wUFfjO F}7kNV~DO_*-W ɤ\"sܕi@H;!tH!SnV93̛LRzx&u)OT(% U7Id .S$X/ ^:0Щq̍ŐO)Av|vrOAlȈ BwqQ*Ỻ#?˜ oBY1] =,Fj,gf1Зx~$εظ@9Q_hL.[D84^7J Q=>/^Jx]Z_ӵ=F79v 9~\}5b|(v;]kT6e}rmo+"*}40(QƃW~LkoqXOs]kET)cA[}+2k\x 욳b(?>3QBx|fjv=J<ׁ 6^(d8$CqI'!\ke.@ܘ@BAiw[Cʤ}fKIٟd4Ȕ>14CJ1إ]7 ߞS-FͲ1W]^6 ^mӯ6=_EWZ9i+$2*`m0[ Ȱ) ·e]xxmKq4hB*Г~1ʱ{%+B15pU+G 89`ی\nՌ8a#TOm1cz~&~U k0xξ Iog&7RָA9o#L`/kHl B gO$ee c_nq-.|ŋxj'UKk;!cQFJ^p>dK tz g}NSۤ>яܬdnFV"Y껨U@մƎ_w1"1a< г-2s" +D |%!%=7Ms}iLGw-Z%4<l/,鏲(]ʟZ?'i{"vͦ:8)߉Ft)2%xźM }iv"G8KzX4 ‡vmFd:ϋ e%KNXEا=v̿\Q?qmi?+dͬg*&Jʜ.q[6w3()Lf9t(uS;Y0i)47#Jq hjбz:e:{tKA'ӆ9B=i;S$Y]WKbU#vJӈ*KխYWˋuSU+c*'}CCx U2J-9݃{iLF䵋–QWw| MtC`ES:5D_9RJ8 W,@Yǖ[?)wm b6+"8Aj9!JC!/4J"׃$²m/Vj.׆?UfX?T/ NP!>IoZȡ,Z3a9T#ELMxwgکw18 q V dr'ryTtXJ?Hinp+'#XT8s^"O̶V с 1qy3}1UOQ _\kMXo+/G q}RJ;T68K,lѝ//oAI0?M=I:>eժm\d~8~E;qRn!\Y^T7K4e(/I,im&]H{zg˦Ymz[.f@͂w.߀NL1l^lԟh 1O̸EIT>q;0/^Nsg{ذ$N8q*4pг+0__]wm\l^VIfC OM8* 5y#8̨MЬj,8Z2VC3($ ]"~nֈ\A4:G0*W%L7TۡC|)Dأ=Fٺ1Flb]8APMECq@n:`COSgeiy>;k <`e_DB㻥o|YODOkًS9Va$ _7z)`evGw.Cb MMcvÊELXPBTuk5yb3g-t$8s瞁Wv<6j/ ,v9!KRxrWnPN* \P4M~ Žq49[yhc(>1V]Po _U+ 'W3R%= ϛݧs |H:\5HI 9PB 0@lc>7RӞRCk3=h?7{ֹeA~ VmBr;u}|;\Y9GV XCƊyih1!y*`A6߰1}wK1DtW6QzA6*-:^ XiTxtMo'ziV|]2³^i6P'>"sQR;6|Դi.ڻn>&4>ʦ}&/hF8 `2ly[$c${7e)߰Lbl:9tJ+ <0)m휺QT튮hytxom``4eq㪅qYIz'F:!eG?nFf9rc%3ԫmNCspÓ]zh77)u.ϖ!J-~5=<4X,렀.X$cBnn\M|o޼ 3d"ZMGߋ4xꂫ$OXj(Nֲv0RW(ރQs244y]i<>qRϡ 1H+=T٦l9^` 1ە*{T9vt+TcI=c"hOFOdHl?r7i jLR2Zr2 >g@Nnk trB/j K8 "#K`= t36D:Rٔ9 tC`3$ĩXiЩ0Yrllb#wN;#ZiZ5N1 tޔ\OAe:eɑ=Z`qxz2%^+,Vߪ_Gqh^p3˃bOm!I`I&Y,+:5Xlm-ceXj7kātQ@pmUy=s!K9CXn܊R,_험<2p#׎C ɑc*-sQ0,ܮ3<T5+cƐW_d¡t05Bs28LAQt|0VEшn'1O60{Ji ?sJU\-;hG~~'l7w=f>m*Aiy/|ߺ\\Gu`X_na,7O׾7J,9.~\2Hx Li.鑑fso9G7vab/Tb>}QܣM4(V1.<(~i!XdHыtgӤuFy~C"oBC\笔R`Y/aɬx孆Gz*μ8U>eVXQ[O(3dZŌ H#ǝqei~al!\fek!e]S[ /Dzr9b Մ ⱝuA;d4\ɮQPL@2,zA eB^C!pH d۶RL?Oju+!J/[2`AJIP${e,^$,]+vc8¾pF#x {Ff+Tjx߷m}]6*iqv}9]Fe00noU[;yJHH:B`%H_WWv׸ȶZb p&]t&3LS'ųnś{+\[Wqs}/tɋ[8񩣾4UTmD;wK&8rڜf}|F}8R'jӿb;.x.|#HhJlV kb\a}hН TijMϪW}Gw8g?6ڂ9j[eɓ~u2l\j]z7( 5'~uOKX2KڳzEYa":8Z, (EDtuZ~joŲS!˜O16{tw &%K}}PeV1 D\/2<44fߔ5 xᬬw];=\Q,&_d6ڷ c_ `G-kvv V8RNvuJ܃O|CsHhXIBПfK ~N-XPys?A գ">5UQ笴oZI0iI 0GWz=Ҍsi̬nD%è]o,vdVāҕq 7d2?+ MxcɇכT}q]yM N+]ol#H([!}G{ SciTn˾T@lV?,QIo^Cota>#[3|oE4v$żkS/;M`Mh}N@2yxZdSAP7bRgk*Uollp=!!۳݅B\ùzpkRx(Q@3WrZVӳx@6l |d:zqunW&#km2ퟛ 0H3fRU. 3l`v !P$# U]Wnt_SI,nPG0wӣP{qR(o1U|Ɣq8}qEy]Q|JjVF:~ʽ5ѣؾFt'lΏ*$N BPDn@Y)MК{3'SO  Y п >_۽EΟ4V5`sXC(ֳW\q"L}38jY2Uo PZ2G^2*8ܨnezz\zO A yb6J.<Ѐ f%3sPgLR(ʾ2ӤèdqPB%_|}ຫ;!}M;Ðt,GK$>=-;쏠d"_t3AҾOB;^H./[QSs6hB43^߈SXYzV޿6 Zgj@4ܶ.N8<,>ӔvpjwP~U㖵O1]5"`-E]z@\6-{JXz]-  ?p"L~(x34Zyw߷eUZ"s'dy*FH6~a ix9QJ`{GPtl%G4!yC)k,* 1Q&EKm׻S4bd/~*euI JUwLYa.;wsh2!≞wH$t8乚ꋲP@[@nu,6@6ިD܁cVD[RA 7=Q(o7ɢ'KB էl̳mA(x/ޫitʧrm<ҪASLZ0vY˱Ϟ J/ݴ]4|Q:2s&O$U ̉C*zHFʬ)3Rf+XtFuY8:Ģ()5xH>TƼI  _"2G WlcH5߉MR UeF+Sb0@x45u ^w``2U83Ar3A="h;CqPWӰwKjo 9\~Jל)b=)ZscT1@p.wbۨWתb&W;`Z+२d e8f}odžCp*>xa1bIc(C#A;m޶D7T(?|JW,NgRPNj(?"Z1'l>e#|!sf}V,RࣱǭaH>ruˋz .M!!8U|;.M=լbp 1m>vPވ/sQ?y~~]zV Ov 1DX[ ɓpKո:d~Xґ<,ٵ5la}&?Boq 0O4?ڶRby5wLhzՂKj6+s$c]mw6m,W ;L v`sFIDF3JѼrEy vk (dOkܥ ݛmL;g+8tk- x&`f(FVa6:%YyF!\󱥥Ze0!nb^P{HÔGj 1u(#ͭ۸?_W 0}Lu€{U}+ VHF5u0<%Ҁ˗T6 96}fg+(I2=鮅zedV]C^{%gzz튤I5m }'G f>_?I抁voF8̀޾No޹7u=BF1ި:@ߙ3/7}zڢ<&E{LL 2@*b}4 EhqDb, #ypbp{U_b'{Ҭ&-c>r1NF%JZ`/XYſcMTqL*j]#cˏymrX@kfjx*kAXȍ}>@~UcgӇ>|umW70QWm7qUu):0 +_B潏G:pUMj(|UQlتOVNIYcO2x-=ζ:w,\RZh澟*nj,|ia)**3BJVaѩ p³U'xG^Ȃ@gnQ% AXȜ;2^DCӋ_%v2chrοFIh>8;jL7ćf#vw環q, E辯3Q`gVY1Vu,5sg,{҄B/(`S|p\nAuc`^ >]ߝ׳6Hɮmѹ)7)p'u}!:h8Pb2&<@>cEj [Z# 7GN. LM? "8]G.15D>Θdɍ9YjJ9 rH2-8O?r^D?4$6 ١фByF|nlZc ;Vn B2J;dl >T|B/ v$[}.m챞{͕uX=[KA)>ڑ `%P)H:rAmؖ|ǣMG>hjLIg炡NQ_fܵ8}+hsoH>j(>~횄]t~^|UW{Q0эUB Ic(!(ՅJe˪NuAe+L ާ?~Vj$6$W)B4jrA'(fa[ V91 W^! H0R !T73.[k"=3ɨkC^[%U "[FH_vt MLr?Qs?b<0y" T{8׉'C1hEc)RUKE}F&{)yE>~5}<=':#JT _}2~NTGHc p5zd{ҽ9wĞ ss T1\: t!dzLM =çFK4$Z]w gpJ;P+\cekVCָ|Α[D-E"ݳRȍoD`cS%N".e"\g@Z^hJd"OwG Hs2yc,ӎR?A1HqCê4.b=)3}H{Tp>QwG B:v䬹fշ.d(ɛ|L͊mħƈdL攰$M}bɈRNޱؚHTfOOf˼DBmvoW"礪(/zs\oOl5K f/4hcֻv sPt:9R)|e+puatv[_ C1x1+l)fFw ML_nn2pw>yhvvKvakQ^FIbނ߉*M%(`PNDpd>zhP7Cy7C]ޤqe ?I 5Dm Uz,mZ?XEnl hX<Yq$ƎϙO<>)Xm_"kt/2-Uה焞yM8U`V ('C蘅ԝQr8_H Lt>ʣsrAeN2$vսN(Mߐavؕfk1qoNNϰTozmfIʧl'tPAIWHc'-;,{FmBi 72T.p9^LcE$\y)܉s˷zx1G-) gU=db5`pkJ8"P^);cxz]=yAƞu>0%4&_Д7.dd> _SЯVNpC?Y*_֋g@ Ep9^fO"!@b$Ukgo{De4f_ʸFX]&k*.%*ߤ`_|ݟNhb:IlQ7uyh7b zN. ߾^Kzٴ>#,=\/l S 6(# ֳ`.p }ކw=,  SQfddߺlƑ"=u @wG aܾ.YIHۏqAz,0ecWl/9V\ʖdpѿlq}S n:F4QR۟Vl]Cs`!3A2e֢9û,7OOF8 (Lq_[xvHt@10W )\w5>bYo}uA&{) rOcOEJL_o Ҁ\ 7'H< ١n~lsSz1mkI ;0vsB`y&m{4 f(G۲*U."PPR#'PDXn3”rFL<ѽ6wC%rrU0C|*hϼ ļ&49eq+=}Gkmb1$W:y .Np /ueӼUu8pe@0"^A媎ml0bLLK9m5rkg('}SjP# OB-/CŒ&y1˒;smD |K6Pxe$8AqemC \$\^[0//%X^p0m+J* }Wp(WJYn9Sףw\iAum[uB(۾Ll$D6rxS~FRu0 9!]Ⱦ>y\|'D;h, [t3"_:6̝Lޞ =in&Ɇ qҙJg)sJ3 b?>Ejj!~޺TZŰF ,2Mx[Blr1|Աͦɗh< \MMc^T~Ma(j"MǤnf Bأ:^ 5rPVhG ۖf.GS"J?qOd.gM =Ҳd nmH%K30.:Hn&4||/ [_oOH8]_N7Nc3iY#ba͉?yت`KyXm\jP-=@ch,jBq@! C E@$.us~$DM*Qқ.iRs،YQ T%&q"q5r%|q-fNL9YnWc? ʧI̫Z H.v=$Q:#~n }sgr -j[VD@fTw) t Ǩ^0'[U`fd_(cs˰o%4\?ﮄ]'/qn|.hUjSP1׸q! m55@d`vk&r`@7& [xEgaIȾsɶḚ}! U=J6N5%pgS-Ѵl0O[*Q{Da@e#"E_Eې~MWZA&S;-CP40~>E-N.?$%#}G_og.[Lҵ[g%m2c])bO4h0#at4\JT:>(N401lMCa@\3qTަPGY[=5/1Ɵ5˹{۹w4yO 9%! W= ݚ+?( AIDeߛ?ZTJWiz)f`2S2s2TؐEiۥw6xE | YHffхb\ )'Osj?u>|bڿFJ2$lGΙaےS E.YD !D+/@}u y]BGU|I f$-0,Yi4ba|St}y3V@$]ɢs0ZC/Ze4 uqo&LFc%ʭRxPʴOȓ$ȟxU~_zXds^g$:6p|D|x35z;q|%}vAQF26f'N@"Z :nh+؉l'2SMџv$<8Р r $.*))lήeeg؎@,* o6'~hҠy>P>p/6p=CSj%gO~"7o3,5d&fak2 th¸Fy ™z#i=Wl nd Ho2V Z2 )L}1$ o^LI2%>3oaƩ͒˳~Az7H^"7Jf{Ռ3OPo"i)j5X87#DZ b:1а!7TÆӊ""xkA'Hq|}Cy@FR&i0[ݼieXkA vܪaF>"]9&16y] /Rt&{_,p.s [$7՜YH/tPu)ӴЏe k?NqH̗;+;9MpГqwF2p伧zAW,?;AUWo_YAiOq1~'qXR5\m͍R-t\a™ԱۨIF#Cq,~T Yoz6P\ D &1< ='O)*4."!rf#L[?o˚NuwTtdVYhQ9~p̚mP4>7tm"AGCx2!N<MFޔa6u]L9%@U2+;䪥ũYp5h 79'|NKawqg;MR|KǓ5HLHU3xI0vBZ׀eKO}I( by%$⹮}">0ہʷ "-"SWj½d)G#vjLOguSj=t@93lO[1}x> 8dͦ J_XTm 8SIܶ9 NA;BK>j}'zDžV5L$HI ̺DL9ݒC:RV. [ZQ9hSi[Ra+;# jxMP3eQO`I"~@nx*Dχlb#=4%}a7jP+]B&x|U7O$ Rt3z!J]Oatsz͏+@CԞ!W<-jpI\`fƼ3<;(~j>(Z·`b!Ic2f m?wEJFYR'i]ӧ/C[ ixYq֚rF3HĖK@?^ !)D{ uC¾-cMSK`KR:!-iF&|QZ~v6sJXnh<fQXs!¼ɒB[`h#euz/_g3x *XOA:>^KP>kJ0Uk1U?e6N1G.R2G֯ :^ABMrJ# ,vguu05SVshߖGM#g'E8 AanpzK?jNs:)G< *%a4ն (ɘs A{69@W-CxIa䛋hB | )[IOٺ|n-8.4O+}5i"yE Шq1TImI1ڳI)I_L4i_$g4p6=^pӠӠ)mϚu%7_^9[4eΞKvHSnbKq׈J0K̟Ų"@=a2-lB:@ULUvz2OC,QqS&O pn?.CƩCc/?c wB1>L%}Mct yQ zKٞHCFTo3׎3P)g^ӧ68"S17&ڭ鯝F>;xDhc(^A Q}"`ӸtX|nF6[~Zl;oxrR~PR11 `mya=hJi 7a%+Kf|5)W6_mS747bLS8}`#Mt #+[FS~3JxYwn&Jz뷟kO_ 0IuLIq?wSGtLif2>Ato~):P$ԝAbmܼP 1QH =>.N>c(xK [ ̉08fVZj.vLBIlrP4̼ӧ)Up\Ͳ[%vCg1RHJk&OYQjϫ~RC[Tv"#x|Tw{XqxBE˾S{N:A9OsB=Q!Q6RY;nΟ[@w֛`ŘewmXaR9aUUOW\]O..KOJzk#j״]M7X|\:)5.v21u|8>XaLN;"}#=opuƐu7Fx;};DIf?/y:DJT84&@ҽWm~\:ʐp35Wi*F9Pl WxnmV$\ϷD[܀to 9=HD8`0YKdDld|)޹!M6L U+w=sVTڴ9> OD .2|c G&}#[³U<,Phǩ}7cٱ_~d^`<_1SE$zDFyH dhSx1-vqK[xɜ;񆵎Ylu/RS!9u\S<#+ðl%UgHRLcgl!~yn3F}zR̍>@ԙ~ I׮]4,>%yC[H*2Z5U0-J%zu]% 5^ yԀ۶՜6Lb `3a]A>(lZiZ8 $ĭ߉WQ :f%'LxE4-1 3$T,90$I^Q%C_"yoj+o,|NQ-C 6g}[aK=ao@ ϛA+n܈'6_ tk$O(C}Rm1Sep{\.$s_DL'PVD- MFD|)V9@ 匮/.*pX?L;,j e 8%vBEѫ=EێGƭ0 yY;&V|_SQm{=B4LCQ 5p^ՕoCb  ]&rA4x01q`ؑs &!z عn# /VhbEh0!occgܳMUtK#M  tNy3GLީ{ՉuiE~9O-)T$ꟄlvF۸o~. f"7:0VgD|i Mo"rcx# ~==JC9GݝQjϓ%N^7WOX}J]@%F)ȿt-]R -璡F,xqw*h^RbvlvflLLYwFK$bt >L8E%$OUM.`,!DmsR\o]oTe>z:L`RN~LpݔS]X Lj- EQYJlUFԽ ι=[/䤖)Hv=h//@[&fR/!RzÕ ]%̫<ʶ)r!.YIŒ9FK?.\iqoaol1ǓV o%% izL<>px5nI[,;k}7[n Y_W9[7k׾4ʈzֻtˈeײ_̓I5 ! e_Zl0Qae TI>2ߛsDYc[c4ge’ $(CǑݷX.Z⹋PpDw\C?CD:MuQ=NGB S,mdmKoA 0'm]BrwvlFIܿ8ubz֜*,>fb$P[gäFШwf+TI'|ǠlΡY(`nԷ9}uə-WޑCnsɆQ#\8Yl_U/r5o{^g< == 9;ȼNB{2ӶSO5н˯/5g7 m*p=tt^r# LAdyO]X ~ͼ3wx27LY;X,QQ^<'!)Uj(muV-ͫH3MVJ (@ן1GrƳ};TJ˥U>!ي-Ua !"Q}I̧}TY{Alq(claphD!sbtc.q 7vlslYX &Lҽ57VMYu+c5'F@+ѻsH$_rU N`{|rZtlnQކnPv{o:{$saF9T:LAUYmz-'(|ff۬d eJϸ,le:DUh$]n uI,W9R"*~΍‚DVȤg:F ,c}U7BiϭlJ^;!<wHPCgHg%'-Ƥ1_3y׊\0XP  \ٻX(kQ Eog7UY5+M讋QۖP"4&.͗@QjAsl^ҵy#<0]9jc:LH []L^E,߿yp>Gi)| &  nq͸2'>:{pH.QS&QkY+GoB:[sU!L)L?t蟖o[v-MT׋Z -"h]/OIw8Bߍl#S# SHi]O"j/},a ض!++[kxeĉN]|fsNu^tuB'׽ls! F!`H+rx5Ds\<aōm(AW9ڻHQArޙ$TI PDBi^փl,F Սs)}5O͊cWf[Й-eyJnyVIƧ:&7y5QpvO귪 !!]pVlc\?<_;P(G]\'TH*X qn>'vJz+&ȕNy|C$35XR/4+t`rҒ:I*k,_Nzw DgHm[ rAxY0!QO08DDCX}]Uc4v /D 8x332)Zf`16Ӓ+.lR4X+E\M",F~ EOM{qA4L ([G?%TX֕D0u6AVhF! ?0>ȿ֯LS}fBGZLY bx\itY'AVl}@6>RCISã ă%tMkU혖@"@+C&- $B=Z]0֧ME_vT"%/Uڃ!ЍRc!pيDPP}0޿ ==SâRnYD1tBQQ5FmocMUIM6?m}*4n56wf"Qէͫ5د>u.U`ohmQveK1uV~sx~|q, 4"]~fr߽;v-T|B˿S+u5"!(4*υj}?#3Ӹu>[]w audT,eÇ'GnV.,`Mgh 8n} [;V9$mskBTȤs=I{) 4f:' )L!J*n^0d? ݠiAj^-[ LQUX$bn׿ cq=>х%i6yyபQS8m j?nɗ,ٷ.noCPOct1Țʌ Z'~--y]#s+q0-)YKi2|!QJ,  W*x0{\4/(6ޒZ^F+;vXU7|ADϷY)s@Dc@`vf]F7!h PQLgЈG>df7=3O.V%{UיUNJ\-_#;[7jh{;X)<[qu_oMB>&Wa|*6(eq0> 9V69F1 Tϵr* Z"sa||&mk_,tKӕ#j8~ 2U" Ǽbڸ?];bҳTv^t™dB?i&Xr!쇯u~ӱ{SLEw9f7ڬ­4?BpU*5f++<4Ve.aS2MDS+zd34-?Ewʫk9L3&dSclv:]YOWߔ *mayhjW] xrxb Rq'St|g:8b5.]%C,l3yT@Ġ:=;l Y\,_5m.JS',ɑuf ?ţ7Cr{I?˹y!Y}oϵ Rӣ#7͎ Fq\F9CP4 Zi 3G?n,mA8*M;k8jpPL1I{<#%{(u:ԔV?'W|".;`>9'H6FVo z&kPrX;FW1  @V7ϸ =@/ͲMފ;{N\Dmѽ;8UfiHAm@h p4jD_T RMG,I27dmh +U|#XU`uzq:,9;wjl-CLmiJ5gB/yԸ@9r3Xv wLn:$ؑDu[s Ьʁ(/NgNXsFxXs(n!P{VkӒGEyE]Ee~j hizKC$rbr&u74G5xh*ne߅Ԇa=Kh1d_nJ֝ %="h1'+(hUɢ0[oTg@ Kk+oEkzQ՚G3r+mw 6r\p1ބVx~@R1C 9ms|Gf yX_3* ,|Deps~i< j:"%a}Pu5;錢n>Yg@3ю5$Qz ~+ϡxJt3.7绂i|MJL :k3& ^i [-wuˬ63>8}v lj#=EH~ɡeX'.m`$ȋ1DWyw%4"D'I]U$#YMinn!U]/$6OŅ$h0 S-GIs`;x5'sQ8XpzP30] }gXS#Qt~KaykNbA̲NQBlBYʤIƏCw3S}_[X SI5 c^A^gD=v`.Ƴ;:.30Ѫ7(, $/oL)/aQq) 'F;/햣N#6|k%f3$)PM( CiHlv: yBTWn|z lFHSd! FI+ rTyi vf3z/PD ` J\E=D:vFw [ѐO璇1Xy:KlL4/꧱D gc9*U]lX ᮶,֨9Y^Gdz aޱ 'C^T2 ا-++E1%˖_.HVHN-\ǧM<[&O^pRcn(:Ȭ&塘ۯ{Cq/syDQ#$ ŀ"yZJ,YZ(SsC!%^8TM~ Ő5m8xNaS\^d6.?I벓 |OϵPL9+i.H_}{ rPB||Cjen_!Wgd:\Sŀ's|MA@"BhM NjAe#%heK3Eۢ`r?]kw+&~#7$KZs ֲfAzO {{fVf5JF@&pbk' _:!# *cN]W$l4gau׬K(j9ePIl ??_A4k1y7Cs+d74#4הL'ƛhagn8_S"Q H&ǔ 68lٝ1œT tR$i;vh[ol=ͽGc`vӍ5J>EtYtP?ȳCV]눢 S/ jl/9[GlwrKRH|2S "}GFdmQsՆz@D}Dn7w-OL¬ }= y{vwm_)^ګ;P\|GSw9Eo&wCv'%z׋i,XiUо͐%6*<'q 7/l3Jʦ1$澜>$ȫ)ի$<234=Wsh6),D-HM11tpq2 V7`IFS^R\_ ^>P+a-J x΢XS퓏! 91|9?t X+Ey-([0M_ 'cQQ޼ x5;m$˱ɳ?&2e&éʚɊf>+^@$!,?ր>HŻ=QZ˽n\=i< }vBW($OӀ4hV.%KO7ѡFAy0]aN-:.NӚE׎gpJ6M%lW:988vkY}1ƛP䋴':r*yM\ԪC2F|NK 5?t9)pΥ\^2PTcCk^2-J:؄X^$#B[0fu= eƈ*̮pImϦga IsWbz(LHǓ}dXòvIf+ՊkX% $dVɓE$rPpz'pdFzM*%<桜 =$;q\5(][ &]-u-\ڟ^HfX^7?@֬?A>J1OLTQzҤڶ\R &,x&45#˨! ' 5Qym#[/Ӂ^T JugOġTOoGK=u{Ad2ήSEf_jpp3OCyS:k%Iݱ } _?^xX/Mr7dYt6yQym5e/eC1)RQ}`=r+?$aqӣF#BK7^\H1lo:)\ 7mjKq|'`paMRʺ @P~(g&!ٺ A) |xJ"+Y&n^*yx" Dqt}Jg80%9 uW@H 5U(]WEQzS:hC%z' ?o/[lI-M6W%g!ZЊ2ֵ"BD=j<r;Ibq-QᏫ>jHygWy zڢO3۫1ʤG4kWC-**xsq0W4c?͌M̭A!੷zҖ~GUF!RNXiH=0,HކJeBwXI!`aX$vS+E=5!R`uC. zCG1 !wQ:Bŗ uۍF$!!򃯺P gB? TpAqYDu+qxtf,p=@Į4q; 5hOGo/%NkGqwվ[D!yAإZgp$c| memjC1U@1Of,zj1?+֔7`~d8L1y%xw,vJUB:W|jok~ju'ȶx6%iƒbwnۅ? HY0k!p-$Euz89P*YHο N+'^_ik=z{T2Y#qFcb:n\YW.D}C7<?0?Ar/_[F+ K⁇0&b}7z쟇tX}ВH{m~>rJbyl:}CȖo!C x#QW&|uA}coU-tEIC$c\}S{.wl kΩM2sΡFwo !akaγUZ0yMiQ'rdLt,Y \1(eKn>l"ErpV[DY,9x<5 _J6kڃcD@0fDWX c-_^(\d6e*0zZ|s?꫱4Dr{$)ot߲V 궿#"{հ&H<}T gNR棁ɆZ/g2Fߎc~gC\Y'p&:vrW)NM^9dF,L#=R ?vyāЦ(ֆ_iR SmX 4zzw$.RXD`BqP5; Gi 8@y7xۮ ]0y$wi<| i!thiP ;m@g%? _C /H5ӁE.z0B6Fl5DvJ}'Ƒ%K'_@s 쨁D)Bf阇9ʙHP4~m7O3 +/P4 ydl \"oFqiQ^_8owje 1(zJdLȢ3{* ^F{H/yNǦH0qaTC)J7kYڳ1..^xV^*qvU1}ρfpZ3,{ĤO@Ȯ W>k YS+A_O{r  cX2s@K= tK~ϝ˸p-,Gw ŏ+(tȜxL5xҒ`K}wvNb~}d.7N6;iP9_Į 9|P_QLLz\͡W9:]Bdѯqٲn6 v[_- OhViot<= Oɋ}x]PH59޷82kq5"Vyr5?p&ɮ|dKت ,P,QsW(N`c1[<=3c bȢv$Z#60Q~R^8˛ntn|2!)d :f!tmOa6ZU#9͠A)=D+Ų+7nnwLdvtAӅ%޹H<&%P(7\Wcte|zG((K1+J]h_jZT4'5YB<f* =^N,bH"h3NTZ=(b cԼ4;8>\VOͼ_2RoE ~wJ£-ڃ"@!n$#W%yllu)>!eĻ_iUdScFj2S6_!&uaUrPXzMnwȠ84k$UzΥVpbW!&eU_}2v|,;s Ϸ­chRJUmWM O@k„@e*2k\Zy!xMLj oV7TjEڮ tlh@ԼU 'al _'xA3M ;H>lDe\2h+% :ONIЊE[T|۽Ŏl*C?! iuBabqH&D=j};\U_0F̭C MWW#s(ĝNy%64u^7|MI?2-fYos2BMHH U;P~4ʌF"|c!a3+4HTj8MNN#e;*_){wp:w{|pg=q5͑bگ2kaR~RD16@$O4d#8y+ti΃vTS|HxO[,-=Vq'9D R{𭂛7z9PN S?JQ5몟.iMϹCɉ[tGJVǻE:"P]ĵ6 y: 'PTX0E%zO ^~ڸWw5$t;A8MZ*ʹ0,=VI+Em,s @=9j=t?&LI>᫈p/WSH=ʋA. GɬF#Do^?]LlM=5]qjȀg8:C}plޙ35d+]†D3!HdV \F2nrx̽!x"D %cRݴj-sCqUs6tZӣ &K>nju:qsIx!/" Е[1R;)tHY܎[ <^op rPbFO9XJ#ޢRb!Wj+6̓ڡʇ^9TFv͟TBa5wٜLj~4wČ8?8ÒQ&pj RGT t<Paٽ\Vr}uV1˔Tzn (ϝ V/ t"8\N jP20|=b(oj>%̲ƙJGNYyr(B^Z{HSaSx\n1[9SlܒωpCI #`$8^Nj#(,=a?+]?V"gV6_5I=(pY9nFDk԰@ΟT1u{> UK9  =?P+ғӤF" IWm<>&["'iTIQC׶_ntɋ%{z%>ʝ\aLt1Su/=R0Ue UsظTYn,ccqc`#-2+Il7 |"|ي(-K"|v+'WDiܟ D!) e&3*~qzHn=ӭXO,TWo;.; (“;a(߂C=úESHG= {͐nu;n͏=KB[B8)8X~ /$|5^ VZ~ƽTڮ1`a^'{$d=!Ͱ@dg$%a>Y2Qc 8Щ)i=Cru*;ՙpBzNAPl(PFS\59YJOU.k(*þzw/̕2"bnP[)(Fs`{G woZ _ӛ@K)%”%z:G UӴ Kο^cʐ (8_qzYxW{8 sqB7s|^cWM"=Ca=Wѹ4M_FxT<'H>#x ?MW7$u$g7Y q%1q>%_Cߍ̻'G|̦,xL!<{@&X]8@ճZ MѺѸ1B"WNz*{Va\Q rNsSGc3l~|#GQZH~p(N3&;lJocsS?\PދMɉ+\kY.&|h2}~9qnq|0VJa1N]tVY6IKnZB~_kvUuӂX?l# q P^ EAjwvJu{$ XS%ll3, !`#8)8SR}HEhjN٫W>" ǩ݋pTMnN]ip;C s$g`k8e ?t4z >pU'+6!^DP "3Gs&&&83G)ӟϕ!eGhhB3/ Va}PRy[z9䬬UOqӝ}&G ~ؙ{62Ox㐅pjMk]瞕\*>OguvqczJYiOhg~:!ɋ2:(Fˠ8yH G5u꽚/fEnA<`'/'$a+j'* %cpyd,fR-N@7J:8 ,_( HUOu2Qҙ/fɫAGUtt:Frl:5S~KK^k?*B--P@q6g~hN!0O.)CT%}ۭ?GlN0H*8ADSW>@iU%O\;,.|Z'ҢgtË7vqZs"ԀJ$ y|0 17H0;" e%nSi5X8<201[r8l^-_+ؕgul_ֱ?E+È)R/+!WVZ*.~{p̏3y>r;_hcZ<|T$ 2e8EDNv3l$8+4C=FV&#/߅>P/n/Q@"^Ϡ\[_Κ: (lV@kzChWEy(KcC9R;Y2C5`kZQ0.+ۙCz;F<:3* RJr`z]JbcKð`\Wg(EHE}np C&%@Q/v<|)Mb紣Q귊S  k@xͻ7o+a,0w]멂fVv-|F%&:Vi!JMCz Kԧ^0qfأWw 3Â*iɌIw맞tlīܹjC L;p)~=^,OB-2G"u{@#=ưURQ<%a]ꁯJzKzH@}<[Q[~`sۑNH3#K)F,nC (|@)au&ױ Xq=` SFiop߯kT|s=?瀵iG + 1NY7~m0GMzuYM # !qBRx5Ƙ}CQIs4ZoE$9(hA6{8(|:v}Ͼjzu7./bX[_<ۄO%[':P)TO4"@5xq_C& NV2F) ۾{(JHmFNK~_j5M+&~ || [dZvhaAURm&dF 0B{e]^[΋`N 0oh%7> cU9V=7hA~4;O2+ TO]Rكez  }N1`A6=eࣿa<1VCznE_UH\MkuॗE^URt T]# Rx@a3pH(Yɭt'xփU1hjɘ8%|6W,ڮ) ej/hkgcF} I([{ۉUJ^"QkF78XUW-^#|x@U.?ho ANO`\W2( clr˓DyLZQα#R={@{";#ăh;A_L  y4g'yS莛ϪT2}hr\}lsw1ydmXR5ȐBc~N޳6D)3 Zk~4jd[Zq>$rG4diMy"`d0w 3ھ7TۑzP_"4W_az58i3V?P c9i\p"#@؜;l=Q:z~>6]9Qp΃hh#`Ӓs$BFvZQ܄K6s\~=r>yEϺ*E"Ia! xOR}C^"˶$V@LO֩ʷ{eMxh}ThUI4?nƶ6͜ܚp?ZG`k8#r+ӹohbaڀK*@?6g-] l1^w#3@Z)gm3(ѱ2|Úg[УKᩇN|0eN){*-0JU9z3r͈31%MK$MIG~ uˮ0'[_!-4Ŝ3Pӄe] aу)%DL$_s?F8VnS$^F]N{wԯZr6^ݭh4_iz}2cK_cm svQ d8~6dۼ9|Di@]#; vV*)SCg4bg:Oﱶ'TD27sF(`;ĸrP`<]Rw]>,*b^8U+M[zC Q^W&XVWˈ898n/kb8陏Q dSyX2fY2{xI$AqKHU"}t&iHjJ2^8!4||#hy a :8Pi>7FN:.4I dfeՂY;%.$ANM#i/):pU,a?8|M">sjUD/J+&Pkf߹~DL ~A]nt]%GQՏFVOHEB;CUls#~허*ꘚaoxA>ҙv7@}hR5eLQ_q9!H񊨈_[>”yXí,J%6 bDouRZk*2j DF"JSy>1nw PO锒Y>ӆU xZnbsƗeg!%(RtxY9ibřY)5:m7AC8vR*-LO&:5x֌бV_s,/IJa[b|h]*-P0rH?{k{F#J]\!\dD 35!XqyN. V! %r(A=e |_B3_ޅrWu^#CiSree<2Qc=A%*nšK"vᵸaF/[Py3 SWU|wygsO!eH9vS5- |e/S cWtDm̍>Leg:DW87 G'YbH /i]?}.Q wt݌(ʙSap#UR& ?a["@6\uwi/Bw湝T=nQq9AD™)Lu[:C@Wߢ"/li$u<}Pj9۴"ۋs"C @oE\4Eb`Kk8[=W$LWaFoX5+O&:M^9`~_V\G(ɫ R,)IXCȰӎ*tFӗB?6  Ū ۉw>g nLC]r28lṽէӔa]8WNG{Y_Pt{Cf7),1+cV+" NU(V!r:>/yoٍvEm^cF,uAi'µ8 Ez]yH֜FË)x,f&HJ ˤAbZH9TwS+EGt 3tNKQץ5BtUr3=-:.FaF}SKu շ (9Q)#q*r5kE-A84q4ҏS@{FnHI͚#Ypu=xAy|ƴ+‰0+;$6%)lsW",E*o79é%ם*ܔشBp7qf]F/gY,rd :Ӌ۩1M"p ;J){bЊ# y/إ![XbDeq\axO\#W@0/2$JA^d0f#^szRMQ}va%IʡYx$?2X! c ۸ PvOwl8E&6RnDD+3%|y4Xeq_;w~fo'\Ŋʳ|f>3'翡HUC̘=Ũb6 ΥОzY6 [$r l۹cQoOdxCwDO`?|3  v;1X"i9oj3%8MrK=Ga=wD:m_ᐃ&r$gIKbaTPk-;&\7&~7qvm= 7f‚ge:#@q1ـ4"JJlPIO0E͡5OڿaY/,W%5NƏ')%dD^%p8/Q2*snO e -.Q]Mu iЎf?>UsM9m=#]]GMT[&{/aTX4^,i#]  ~h" + Kt23 }{Z AfʥM4yp;iAcɹek7-ƟNϑڀTT[!U|}Nk#ۆ!_df>^l'x/X燂ڛš_#,? ^4`Oä0/k[Lnew:ИUJJveR;e$ =l(@1p:Ӯ55[Îx6)5bm%I}df(LrtW#;K y`vpǍDsξI5J!@&caGk7Dv|"<R׬d"$̅ GPm8 }MظKт W{ /i-T9 :2ƬQnryq",#D"ٚZ9g,-V j-r@soRr:VtwL{/ &T1}qP`p@ԕ7 l'R$hpUXVk 6t}w絈2 bhpMU H<٬uB}֊ߡPgUsL.(1QζSK̆~+  aV+k_a?crW$. ;xpF ܞ>xyD V 2o{%644̭ͫ}Q30DӴWi=心i\;]q*44"uԎ$L+J2ڣ6ȕ/ĪS)dlu}U55nڻ]} gR0ɮ[v `c[hW4ɩN@ yRjҸSx`,(wjșe-Y3 Uհߢ~- :Y dXq Ÿ ^lS-"DVBL'IĹ!'(4I9 > \G>T#S]ce޻/ cˆs @w5T wwNmPEI7EҴe: Eb5SDgr$ ]]NПpc6(0rI||}qfY6,ke1#_-GL g# `X|n/c S26:VQ޼Wj^K/)ZKw;ğ%$#ȩ"Eet,^Dؾ vިg/{+NyH:lw]-y`y/nS-i/S8hdfVqȾ#w9) 7xfbzY\o]=VBY wRu;<Q`׈x] =ᥡRf /:waӕKXoc`b{dtm֖PAh~y SOp%n4gI/ zrjtQf8&(i8-lDFeay1;r/xX(YJM d|voT\]GKX5T`{w ^ KXw%,UtFW6o~5+# I[X2{30/ /S/_pH Oוy|-V?$w\:&Ξ4\7 UlE,Xh ԕi~{>}[L' >~aԥ(kɭ qS[Hš<IN.7N676 . ?@sO,yyF*H8v5Oq-n_͔ i!P>1%Yt{?Ԛ3Lfu1uܽId,lADV,lϺ0Q]ek81fX94Wƈ}*uaQSz]RȏF^#4lo)0d0'VNwW={VY.7> p[\n{{*ԩ!tۂ{OH͍G5zzFGKaFljsYl.0ّ)$SnYK5~h0A !h$w? -`BAo!vGpqٛ3Xf-3kJ0^;tV̓cw9ծcIXFCAfX7Hj!U5\j@=Lu$DmVcTDeqkt`~Bws\HEWJ喛v`D&=#R.-%naCla_ͤ͢(Qi}uzylH_֡ߚ(ƜLCPo;v$ `\;O0ehN\&]m-i":8lm8fUY'LD >__?pi ( ܾR@br3_w3|ނw hRٗ˪+MXSw 4?XT+ NxI LBz` gfr~:My#sފM>}WL/`pgչ/w|Ƥ鮲˹KeY6@Aa1S.gkD"G^#C #6ͨ#l;ЭUXX[$5zu65?9s W;`k0} o.fkXvcsK†CQ ol]k+CMMl~=ޯz6o'^q>AW2WbFW:]Oo-T/CLTעBӒX:H:7\-M9zk3L%Z%/ȶ`:KxVdn$)]zYN#r!,+|2%1ڵJ!?W}Y.:tf9V\L yU7 7F +eًO ىкDzK$:Bjܓͪs;A:I֣ZH,ɍco pnK^SQTq.Hnkܹy)KkdSl[[Qoߎ4Q[[`3P<^K@TT?Rڍ kw`M혷۷A.>pІT/8J2/xFJI-֋:0ǝPQRf7)=xgݱHk~/DT)ׁ%ko7Cp3iN\*MxG܇u2EAkގ;ºQ(r#[HzBg>N[aEz)HC|րbTmU"qVZ]@IVsʊ,6 cT{*0CR4옳T JқG2L|A+c;;f9Ե7dM6F6}"W -y㫝 @viVHؕeL1YK *¤1rѣwwq=mb jkr]̬- WJ$נ"`(b㊛ 658oH>kô F zm!إ Li扂:20r(쳷=ʌyH.=[21+Bta7̍T::%%VbOTt`L[P0}Id)]RC<*qSa Qz\MKlc=&Yxk{) "f@q{j*J=J NѾ-ẅtG]D-uFSI0)\.a ĭ ABZZ g/91'&+% FxuHȚG:Å H_CSTz` 3CĪ!L.V*v@ssAr'Ujcv[+q/\j Lvj"i1+֒]G@B}>F#P`8j.6vD()1k/mi8 ݣ36YB._=KgV9Ȅ >[~6:F PalbTa4X=37Dd:WSxtp6Ud0d!Ga,z"PI */usM #}ʙ`_ZAE}OpXVЌ'!θ%*쇍"& nͯ] RԀsKMpGx<خRhݱ|#QA!NP)$WH9s0^wxb vmшYfR7(YH_BMW&bG< UOQgÌ!BD<{O;O0h0 tWB"!AfK|z"ZJt,H uw5Cd|yɌ0֌V/#:/Z+r.@HM>+u(c6-Q:u2i~nR `$9qUa3ّHH t;l8t"Lio0ՄK({^ $NyYXECT_B\tVK%pS]{T@7I=p[xW}Ɛ>;aEM-3 IU<2\y]f ^ L˄f?rT?ЙʱIGTy] g d}E>u>LFa*Ժ"d) 1.η@NA!p)vbc@rzTb8L- ,+W;/u`@ Κs%_TJl|8>kLhȵ f={44Ϡ\~Ѽ~ć/0\},̅R/5-+2cYNUʄ&( }fVolAU#i =Uȸ$$y1a9'W;3993. @:6{9:K@V+[RT`DT$p|/l4"VbǾϬcr&z;qLE9/Z ɞ9oݞv, ߑ]تU &7{r;9׶}CF w֞r/?h~pmyLiDZ97]+ ѓpt[ԯA)^N7MқwK+u( C@<1dPwg&lsXfe+0asQcnX7!֔_EniGX]/zdܠYh Vہ=|p2*W!њe[,։ ([lh8S2>>?|i㶸enim,1 #dd́ȍ^ߔ"eܵ“J˸x @80U;^ 6*.f;*EM3vQR٢;%LWWpDs?ÿ prr@H_-]>تLv!%uN3B{A+Kɹrr{[2Nk`gMCJT$O3&arglxCkn6mcw,$ooH-Dj|*bקjo<BX˒d@ö吒nWO~ƒl\Oj±E -eXG=g&@W! zC 趐m9GP@~z޳n4c' dsn5?@DlaL9tG/Pw9%A @>>[k%C?uKkMgZ]a-]MCbIB E#E5#RݰۿMG G?E_~mqg հQ;x8[V me&CGrGnL|qJ&Ǹ1GmTIgͶdE uIWڇG*}noe}_GD{Ao(ՔΕ Y?em&L@+/={5fLз'c!ƂϢO̷{LbCe(G% D}eܕ終BުY0 З,IQ)G@6KQa &\GJQfh.aA-V j}pA 4qo]q53 eQQ^el(hEk>alY +SmB0xivA"[EAxd ušŖyo51Fu5l~wDAnsᏑU"ۅ< *!,} (!4e2F9)`jDm!#P0OYD33d#J _3?"1nsrdz#,@v=rLԩlځ/鳯 If+) ®ݽ `YҎAbs_xa4vqM S+)D(`j{W2804ba/$RJO]\nDj2WB[P(Qg+b=xB"AX<.-_jc?Ow~-iX}k8EY5LD)bdbM0- W¶20*6[x<\- /;8J0⤼]fXBg3?W:V0i¯hE8<А@/Cxn >NXϺ:`u?ZvȮP8ssDlxQꛚK φV OzSUKwV|Xk;:FI}čcGB1 6f1Q]? 8Ym'=դf(ܽuŒz=M{Nɽ )<#. OT,cRc#TswiPElzǗR_V[\ƋpC3h^nf+˸~Q̊9oZC)Y{kM^OA[!Blfz5ijՙ%)й-i"\&T`C 0=4-m5c3AAճ2HZG$itV>̗^sj U9Po3˂)oI7O׻H'7&qGU gM|hIӬEm J3\gb3hlqaL3LƘ POG]{ryTPV;3L_(ww>a0 *)wIq8E䠽PMljkd @ 8ib#yFkaD,7$ϡWH?AJB!?>B^g?Vp6&HZpk&k:k,' ú@? _$MoMX#(肦/]EB%b%C Ar&|,wxA|sީ?tpP92)kaiyv*rwy5OeufBUu5H4w#.GOrP8sqAV-=J>kÁ"h(F *v5i?_OH[˺%Pv(0G9D?>G,(Dr;zgY_ ^ a()bĕbѭSԄY*`AϘі lL+0駂zp݂3s@詌#TNn@|bX'/ؕm#݃_Wy {EbO -}>T"3BԩqH׉0u'1?sȬxS>!G))C }K LSVxS}R AaxdDY 6T&68U. TTIM\KlΔYXc5zԱRekĐ=ӱ *.d@Me:D-qK^Ax;z75ƃo[p%γto=Oq%{l/dO+bwZ(ָ hCkcpHjI ,8=B{ג?0dX\3kbyV?N'0hMpg3Q\OYBajX] Xu% 4qKt m *@[e4WlA^SuW7J{-`e/J(u٨Zʴc|RN3<; TT™1N϶vZx gcl6l͈( +R_IR`'5x`u߫$b/ B"KcjTZPMz'V*&@{j\;l 39Pbm MWF(O8KnQ3/G;+bTTٗmنD6p -;q+l?!GxTz[FB5H:WF@ް7#[lh61\ pҥridӥ}_~ |Y5&r*<{J=l-577 д )|X3prU#)lKL+r͸_X=61:%P׍uV7a@vܿV_Tm˱v{f}7ðt}&s"eD&[ ٕzEE|}zf)xZ'FQ%t_S,r;%=Aa84dSP-^K* قf[V dX>)+ut r+b;_>5[ o]{ALpgh$cg> 44M2  CU\)V#<(G% HUFTưU엠.Fͮ8s fkԯ%=vn@rzpؾbФ%o謮RL=Мϼ0챀&?213O(o捹|$+B9nFN m҉;^*93Wf,l Crьfc7/1 'K ?; .mݻ|AJff@KGWc~ji֕M+Zڮ)I2Rמ#<|u)HW@!h@mAޝ@} e>Lr&ڛ?hM8 an_Xn=Ts}NYcfU5Me$&D~6:qޠ6Z#O5Bb*zAlh53,ƂsB"lzKsJ$xGnjlAxJP| NwDӹ+kICXkr£e93Nߵa'3R~޲ N0ID!S1 Hh&2x>+d|8<6 `,S4(Yj2DS=t3=`EɩӋu=c~ qs7sf!*^(n8ϼaޗ~oJĵEt$#,+ޖq7ȑ).Bup~4:IAI>\&%-ܻJaLsO Rv uKLƥ)KmʒCaUahpѸ/`ԑ(m0' {JTˇS=}veDH iz5l -5x4Hu0^ޣ& p%xX}jlѫDBC6eZ)>" ] ]}3](- 8Nu4a6 A1V'Xg5daFDw+xl,;П¿8Fm.)԰ʹ $O4='gⱂ}^npjcg1/z^,JނٷmϞb:Z=`?JNW-4mڬL~8C! 5I%;Eq>y<KےQTNFB͐Na=uqT]*o Ԋ%'a%- fYss2R295Al;\V;4 =_s>lpWyˡ"FGLwJ60X{d`͑K09"Zu17qI05cԊ AFI4b_#^%nQfV8N]Jԫ bDIx3ңT,u/8[QT: V˯eA ,Mdfq&m鴀OX?@Av\whlnxd~ML9Gpv*5ړS2Z:I$H@s&@S]lm_ޠ!HeXȵȞ'':s\tmgԾxUX)a7S6ez2o4…{x YT[碽]8Vd#KEmLGvQeFXtzVhǫC04 Q#ׁ3VojA 3feW'+8*ьDwq+ȋTf}NjaW]Sl7Ƹ4!6fK~)5m6fA$6gY x!Z1<'\ܳD2BJ ;O9ZAUpJhkNWY)_P-RPجGZKL橑}ֹ]GF͠4`P!~h%Նco$9D\MF [YYbڑcvu 퇯oj;V*I|'2R)A:^]؍naȤKlIJz,<%$b֡,C4\Owpo%0$o{.\Y5n*7okؼ_E'0SYm.827<0)ịV'= D+KCѯQJ Hqav`S֢2M.tM1D.L |V]'+͚<9Ϳ]s'Ef/Cʩpe)NtqWlQSzɣS6_o Rtʼ/Z${E@^lvN;wWM~պj}+)~X2'XRt) 0as9WBdC;A3B}d_LP3N)tTo7J޸XR rF"~/<Ȟ 3?륷B]M #<<֗űqkVjf *|`{Fwh5,31/6`#~0L G4wd<-YJ$Y"da-<pœ-6[?~&J4QGA#/ E֫t91y\%V7?yր0 -|Abq>KdpsZ<KjM4(ؖ4rIztyg&,dR.^K+Y솺e4ְ"Uu7b^~_eeYkΎ0Nɉba!\Su5o].۞OȜ/ 8uVl0+H^Z:f?"yׅ`"d꒽7y5 #\tV3 ,.Y$߷>lu|̡(*\4e^udj\yިg3d ꎱN,DFMsvc{zǕe0K ,6G xzX9wLaq_&Xr-rL/p٧0-k$ۚL=lt*ـ30J1t硎!XYЖ'˪!TxHe%Po>Yb#%wb*yJW|ܼ\ՙ͸lHDVZ2$Q) =yɕX{Wd0ʞNA&X2JnPV7m],'RL0SQ6PĚjZ;/3<ߖ˹8 Zfr!z`j* v_]FU}4ʶAGYm0mcuP{^ w\$S;uGR߀v\ك`dLa2HR'TPtlyDr.ɳv!Cdh|1: l lXm<~"!Xtq?oZBx˗е #IW3b2Bkī'd蔒Ks3ҌS."ZZ-EȄhr5\ryh M*\x>]MrT!)wɭ\w3p)yP⽻0sx58 /ox0*pPH rk&M˃w򕤘E?`jdOw03V`BE/m@$Z]5[UԫS|[⎣;FE_7E4pۮh,NW%ɞa}h'v ⡺-2 .ohc7sazx3GGUVSm OѠ[0|v¾. d'(oݯX<d}׷}2Q\:)*ME G6J5;M`v5Z#p>yau9_}#-5æ7|.fU`RW)i‹׮}Ej/!N(oLYwU[:l.#⍉_:8M)QLiD9ٌZ.Rʵe^jy_( RT_55$ߨ*Һ^77nϤmhY.ejZi@S_+ \QS[{aqQY4bVMr xƨy`z79ȹjBx2|ˆ1KF"}uqX%cͪ`jX\؃YI%!eCs VRM &7Cy}+6#Ug9Ļ٧rln{[J/6d GdUM-ݞ2`}Ngq; @/} 4*R^'{cLZs 4ۥ,uX"yk' 'NRuUC@b o_qӁM0KbZF۠_܉gS.gE)&ӷ`9f^/_˝(4h_.1m}]]|ELkw)itڻs\{xbڼ$y0\{b7uyEΨ7BhăNzx#+WSP77 c@6D njoO1ZQ%IPiE_g|Rh'yJL Uر@֠bsNG Q}yچk~s2h`ǫBБ!y{ Q{ z-@ӄy[sС W.i|glf%gIB fPϷ:seщÐgϾ^ 4M$#?'{9C.ؑ6~GOT6üb>6*|,U|[8PxNǨV.7^z­,BX C{&w;^\@Kd'\Pz=P;hk̪yA^FQT)jJu˽U/xjg&0wR\4%IDcM~5L#14Dd3,w4aAa=&i YDS!gP6 5rxUh&} MP/^ xDYm@5AM%P-ui.|__蚸 #Z gŮyޣP>yv$B˛z&fPӥ/d#/۟Z̯r/U-(}r֢b; ]0_.itBLCNCsNF_5{fvy:d)5! P9]d:K8 2B Jx 1ߤoJyCXn[4OG}bͅX`A{Z6uq7I=u{'-bU V+n nh̳,"G$qB\w=9{JC~R4>;f6#@&dߎa x N?rqIzurnx-tdOqԀkP:})G/whLd_rQ^ncAsxv_ Beam$".?nR֡!c.ʒb T|SFy= H<{vg(ɚ5~~Y #{eWp_f-rF=6O3+Jsk|H#0؂7.[JQ ~FD=+(pvN= ckOjI LhŮ Bt(4!z*ۡ$T WFqry lB:lJxn%?R}<ːX*7Lj妎kICo4H qXMDZĚ?PAfcPÌ[쮫 [ru9-Bw/yY} T֟OEqG^#Ɨ`P7Qh1(궘~>w6O%Ysb<o1lIAUHisR& ?#K2t[KHm>"r:&}(9#=^brwDgͲf@4*2ِt 'g;7uT #$ݚeiёO0iyԯh#LpYrgxO:SwjU ,Y@Uzeeـ-:~ J#.f,W]a΀xl 2wQq$8c`}֗Ȼ৾nɠ 'vu=zS-f™_۞Wd0EYeUTHwHҧ ɋnuk>RǏ공sB!; 8)xdٵT #f3F§ S4+I*=XΔڝ.遜y|M/_4oOMeVQ‰Fpͣ zSak'e iAfo•Ab~AP9vJ@Iؓ}g!?g 3\bIb-=DffS<r*΁er`!SiJK1˥3Vjaxٺϐ'M;@"TK;p (@_վ?`-'p[L=VK//^2cũ*F Ϭ] UEgZ^CFm!=f2EQa!">v ,ΛHϊFKom%dYlT!@@[Oc!aqHu0GZn;H1a5je̿fģ܂Q?;.F6i%~cXyOFB'>z[V 7}Yfrbc,#t4aUIL U\g@ԪeuY 0ɐC\=P$2KcJ`:i1,]%P Ӣe+0[@=N !y./ʫ{~d 800^0/C l@n[& gR?Vmױ߆L\'NON6cU(~Xv# suq|l^}O+dTE[C w-b9Z)Ha>^.uҿ]5c5juL҄/cG- ZiD*J|\ $;Q>;f6zWRH+U߅,J@;}y?["V#ĭ7 s]tfo/m_¶qFQ ]ClKn/zxljY@RyaqGbxĠ,oowg:Rs"{Ph"}$ZD}hyPդI'_I!Et$p `>Hea pw{"'S4ATN1AsT6xiL^dZ7^U@#E0D 1 L.r{3pAn2%Vj\bc cۡb_6f=|T4虦(t܅ -A]e0gt}+|v5{5ԒI@o,S<3= t'5}y EȼC'e}oD  Z>a9+%UɖCyi'&|0~dXTXFF ,nDD Ik,JTD!! ùD sT鼜l}1W-z֙tAݞ=. *iW)FPYzaˮDBib/u"Q4)d#+R$ `>ju:8D>Bݹe8)Z[kGO4K`j^|lOG ir%h4Q^= 塔)6ܖlcv^SˏxnmYȹ&LfwMT_ʧ6 J(CրE垚vxFt&bOȚFAXƗؐH\=xY17;TE&$ %1;Fu}ֲ1bP޽ ޳n9a$z}oKR Q^R[mxXFk O6mSsss:$ Ke,]DLgw;3HУ P@/ Fm`4jk"-;l3i'%xZњ}{mJ=V0msM)?Թ1f f!NzHM|xP$9ɔ,(D1<>Gh6rB]AwZc᷊jfM1<,]zis8-M|JA.b)sًܵV8-y nS)yJ"Os1_YvGlCf#V;œDIgA dwGZ=0'ZGH}v$_O8)*MC O mfa׎1>ڌ9dՇfGW?OJA&4)}wDw16GR >)AM뎹O[dz;@,S uh,5molO{FMHnz~́^~sBy. WyvMx _8bwu0\ToU>Hn3ZX;ٝRHeNVT g,dҝ.ťnͰX@OL 1T<@VYyпPXSY<><#v4$s }h^'eHOcrFjKi;[m/˕]Ws~oB`J+P+|-+׋X|`fBYq/>'ห_oK# < rT `ʊMUp):q/?ӿM&D;g,=:4xZ382,ZD7˃#qt\mz]P٬4LC'@FGluJ闻n*t"hdm!L2x^ zO8~Y4,XZGi~mJ ʏ*4?(U9K J+5oOB5C̺{^d^TU^.EjSڰWtN:CF?Y{6m"9*E[Bɕ>"6?T+߱<v.D.S 99 {deaHlW[yBk8>j[\kl>) 5} 1=HZ4_?ˎ+^_6K50\XA2b[ I7d|D= 3؋{԰>RG&u6S~)UVDGXwX auc/dޡ^fSfs=\wSeRfG ?n\Y]tCеn="rFa*=Fɾ5yW/L+? p<{f!M)VN,֌'l/'m('|{P](|\BqtBn5D |f$-al6?s/5ʠ95DIsl_l/VM|*c@/P7GE+'}_д[z7ۍ.ӄ[xy!"7M#oxcb -|δՔ= 1ș^Tޔv b{Uwؔq ;+#l݄vju BttOƑqݭl51u[Ut~TheK8( ']$u)"5+C=yjlȁpod0ͩ>YF=E4j4L p#ۼ#³*q7Jnz8pc݉.]^&=y6״jaޏHXw6:g%Nae0x0z!1Ze(G'SS% &i܀Z:YrA2:= |'ljF/@>UZ-HG?tk s= EwwiZ+ʰT>9Ji82ht̳7%+z>zn4764:w_(xZ^8c't׸!֏|zm7w T0eY" RG6:)@1VY_gTᆦ1\@zpԪV?!B+M-L2u֒c#B_xģQv]{& &`bBmgcDEч$}Nܜgك霜U+iL*4=_\ ?s |[Ϙ4sSo Ŗq'cf$_P)M̢QI(u! {lTD4vvnPTPTAgoz &;IPޟyxn) $LƤvH"!bREe}zŬTCNgZF8{i6ߜKaM&s^+:>m\}Yж U<]印&|6$?m]MFa~!&MoA]>[)δ'1pD-n*亩#N}݈5=Y-KJw2{q#һMn zZ6  OZH K FdiA_h 'myJ'%ACZ=-}%a?j ym60=^@*f۾^֨O TwA UE6"xrۗŤp|Y y"#k4ּ4kwVewkLG=۬<54`5{~]x$Dr5@?p#~3*aK^xXm,] >N6E7uiFP.,-@zU Ă㊳X;WD󌥾Ȇ ( A󙜼ۘ?mx%la,OG^6lJ_LvB%U$d=sGb?&'Es"lΩϡR ,7RK݅h.t"k }qGG]扒 ,/f:'9zs<9o֦:~;4f9жM5lEgL= ~NBn⬻:DvݒZcBfZnƟ[)_ĉ \`=PT`6E;q96.4iW~ ?V{,g,brXyE!^t* "y=/wzL}kIcnEO_k#I}GU i7HP"PhzI6<ЦQڈ>d"U QlwNbCoXJf>M^yuZxGCX0䮜uA]lJ3y;H>02y)śN%^*%hΖiϬ;?87^r-g3< ^!9y-ې+t>I[}tĥzz"G h.KD2kiF<ޔCc-{S+]YD R^.#,TzI;Ը?Wj9vO2XKÑ'/ ^ܮR4d<$~?f@X^wED %l!máˑnz`rFޓX9|/M ruh*y0]UF-CC @rjnN5n\*=CR{ziٴ&kvO/"Mle.yfqLcڥ<"F룤~|ƎDsG%trBXx`km M+"C+lkeZmXbK0d7~)Z@}I3z2TDR2M+fDs.}O ssF@ Xp_YR|Gu,8 ta*j -hh5=jwH}sI'8qXy%\v*;3f)b0[a Z%wX:- ǒ_^/]![k4(^ocŞ DLL?Y-˷{@aRX)UfrF땟_AwB8ec Ï`u_)OSV;O\Uw܆t:,I>)@p˔JyК(-;aFU-3 +qCe[ec( Bt23Rra!Wf*@kE%vwG"\1 \cWLKdS!C椵쨣 1qlng.4aXFl?hjt9LVT#x0ʧ.سk@5/ >)ٿa0* H2zK.CU_ Ln _Fpzך`za5.)NlGj?Z'py֧VS3vH/fA]ipKB;I=LF٣WV &'+q(n؊0EZ۴ LΌ)-wp#Rp<օ4=)[0:k& 9㎴4j:+'lh ]g^%?UJ2nAmͳMիF[w$k(NUqgt |9ao)=J/ۿ1FJC.V &'nˏ6/AuSL%\Q4Q$XwռyãA٧,-s  4HP9F꡽)GsC閈.NZp|8&7V?BLxjojs之>X9Y|וg@BҚAy Q\@D Nue6ԟL)"<0s33B }p%ӒAϔ“{bnՀ*ɵf0i K{ݯ T%gljH&;qˬc*sZ 9 NJUiS_`wWBQr "FwL&=!}Yrvبt]V~xqӇ}Z&WH<"P$̈́jx.[6&f6xS`58VDux*%b/;T@ S9]6\iҚr,Ti^}B @$R4'rƓ ۧGQzl](iO$<DQlc0׈Bg 8F :VNnaCo07K<Ijt|+ ʞ}©#6Gbnx\](u~(y[Yloڊ8672O 5b 2M#lV7~U!5\'Kg, t$z jPjwbQz' #B2l:ϙnDdwj_:&$@׃KJR{m]EPi!!ǖZtR .i~pCseY޲Lvz糚\h g Tr 8=2#e9 Zp5r^M6HE+T{ip2U"\Yt|h᧪Aj l(84g|!j&) =hx }4+g.5s{W|б HLP_GpځdEjlkW( n;~|xliX{z;xhiIF$֟X{I <{*g] "#S\!A US,M穇lx?p{uuz#YXdc,"k+Fp\U7k$=I xj*RpK /LSH&yBvSn-#kT&4vZƁ{@J2=g˪y$ȸ%+?:" -Q5= L_A3WBp36DӠ,WލDLmYb;oD'0 ڽsIJ<7VI# EAɽ5ھкV̷q?}ZxKz l@a PiR!]A3oڭ}mIvᄸ25^&ln%JD B ~>?hDE;EfV5 ~[az'b԰OBgR:R @!c)YUE [7\^|H U CD+iAL:+(OTgTUJ,=x2g<_( Ԇyљ5ob=U{ojw/Q3aVDNNHmįFar*JIXUE$xfEc|CG 4: >-f#`Hz\26Si3lzY<[*3 56^P=IR8hwsmk-QV+'w8q[->u}͍ۊ? q7c#p[aS̡Ω DrnݏNԉ>6u/Qy"],"ē6DvPp-ba.a̼U ީ91XXYdT9ǰ"w/x,Re3zTH9s,] iH-}ۇ!kTyu>Zz%sP =Df4LrLQ:*Um _%vlۚ#b6FL?\>(")۾b54>Esdo88Z: $X z!>zmT&~q2Mߠ}mB昒yc"VQi=n;L'nmD8؛RëoL:_P NXa/oQ*#.QfO$EU+Oo2>eGayRcw=(ƩˆYg~6mT$ _u}^rN#n9%myčQ 8l フ'-\;@bҪsl"a"q].%|;G>~/kɧom]$|ZޘځXI~tJҸ܋c, sShrd*N=ޡQmRe K:$c+HX{_#{YѢݧ q .xqHnjYP+(T%Zҹjn9^MtɀX'3WKY-ƨ0mW8Qs6)G 5>eB1~Ҳ. j0TEwR":^AxYk3y^!H?1B5xF7:j2)VjD\தNJ`]E[JGt:y#eR]֏VS]Y DvGLjhIݘǜ`hq/Pm ,.ܼA_G(W?2iyLF}4ª,m%u9/ Ųˆ-V0h4_I~kݻ{%HS>X )tхKZ7(fHz 8W\!nIr}E2q[ӥ:@:H:=c&vqp5c!v3O~@ܘek!}^j7"1.⭾'WWT$㎖TοhqÅz3"?;Vp ]/;φN|ed|q&"f:>rPp}+rQ W1'0إ-Vj( <.PMXlV!_R^T O&**Ep6:<#~`ma" _00?(N^b,h^vF[Mx;da[_`ϱ89A6`Xh0@Z^A?$>P.3 s8{_[_(OOǁYCzbey  ?LP:~~6o7zc5IEdv92E]Ԯv d`tyd8zיd蠸"*{aCRvo!d:u?\q󻙿z̈4BO-N@ ӔDs\ GސPCā݆|D[m:~{ \|I{Rgݥz6 61nr4oOC^=&Å7`Q0ylR4S₡55mAg}n|r qXk< |W3ntdU+kʢԹZIYBߏa$TbE2ĕN9JKuĕܙ]R2Uys'R &!Asb:9*tJ|J+>͉BirodKIJ>d:/˿T`gg `1fGo`|S_tpLBٍlqJWcz&CS1J]%!_CL_<^v~,pZO_*'R[t{~TE4L[Q^mkeʬr( c콩wTqR… u)S;֓?]՚ s#w2d_M'yޢsy /p+&,JCJV2lEe"x5̬hOfAC=stk\ʘ2d+H>/z)JOYJ p\n **\Hje담GccԤ i&frWa}#AHjp{l4Z[Ѕ:삚v37豴S^nP|ڦZ iz8ʿwvM  CqѲT?)s@tc4KckUwdG7{/`v<iڅUtuU8I!}!0D oJo T'QH>gS/Vm!NE/0}$ #R Rj*K҂\ 7[1[/鄾SjnVgFs[Gro銷@-Ȅ*'+bcyԀa(L`jIlW;VatOFc-Ef{x lYOy8ɨbJ5VYRFk}ޘjmL7mdOOb8CIlH%`mK?JƂ= x+FĻ(;N>{GZ =cٌD9yuUy`J_ 1$o% U"9`ΙqD͖p} B5vp( V$3(́Kg&8k3)N?BfaƄZÿU;孧V^~PZ|SEʒ"umkQdNۄm3ܠ]X5*VJPMT`j"Z-ğ&*_ x uUr iAIWWx`n0n (jYUQ@H)2U*{N HNTo$, *-!'!xj|,*%hf9-LNRxD:4UN>J{߷ qQuk4ej9u(8y^j+8VX=ӿb:m5'.TrZ9Enb?@=zڀ&=I۳<-/H7\ڹGs(otĕXFZoY'T !i']9C%X?oS`BDTQƙ(\A CSoB *`:a9 )!`Dp:_&$oqK {"Vw^f`M4fX?-15[ R^Ȁ: 710d(7dtк~HyLA}cVU/RG[׃n++|xqv M5ɹ+٫<?MϴXD)V`%ǐZ0Bë*&n< E"On{hpjpr ,,dSK`Ԕ L$Ty=ZxSt J0풧"۶aڥ$H~K9Au2Sl,`֘^8ϮN;m2U79ڵ6V$%1.zX@q|7*o6h76j<؄TbR 谰Ɣv b31b'}8<&s4Zo3?Ǽ$(I'ez(JhZ&5RC)¿=}S)Bq#HLDQ(dqXmk.`N&OUNBvYIwqhZWCE n~DC#̈3 "F|&N IFW.m*"'v= Z0W)ѣI>~"!KtZU{3S ~^1zYj$k+tvu M3HbvLTb/MQӌ _>_RpM'?r Bg v_W;A٪:=gr=LMrk*oh*wyƾMn6b|SATa{Z"rSX9bEKH>|nT,G Pl"C=bl^%nD9 tn:QOX?H) ̅ȓ!Ru.K2ŠX"t4w(7C.,: lvZ_値͈/p`ޚJ^< "`!.{ 2(={!Wd!d;{k&+q'gM.n/21!"KLH%ꥩ{} ʌ /}^|?;(kMtG8͉eoG#s bO(/ЇIQcx>?Rn2# J.C XŒrV1pm9n!.}$ 9p7s.LAI70ncD!B 0]iC*ۢ}ч&Ls,RotŶ oLUɍ(FHtQ}CPyYl $$;i%@ fO-:~,NtQ%BH:jwfӡTƆwE܆2dxI'9zopѠJw^*Ni+gKub+jdvf\aDCbB]+SX · (Kr]j*5_^+&,˰cch4l5((,ՊXS&uDLe ~z&2#lk$Vކ8|&Ϡ⼹4; PT&}psUX{.q| gjCvtnG):fW坲k%D< E{| ։H_фhP+.u-$V_P$\"L,=XMA&EC^[%{^]8sK]π/hwZ78h#Uj7b8k6f뭦1u[9}, FQ\憗t{c`i?[~'>gAQMw?7suA6\K[;~:)(3s7;tK(BnzFKҔK{[VDuǠ;l,j7{]Miy*e;HMIO!9C_vat4Q#[C7*:o޹WGl+XԐ :' "[Eս!,ىqs?Cz-Zt{Fxr 0G*ܦ#kgۍТyO$(u s0r`rL/!M:p #lẘoB% ]ڍR|j̥ V_;xǍs`ҷsws2,S8d׌:\;w5Og .b"ޝ -8C{#J7xMw@N0>WQ.'@rH Ki~Qg1PahMզΰ(l]WY8$hFA2LI8j`ni Otp5%9>W"aQ:qhY;[GrF/S})T.*=s?~/ssu`*: \fx#  U`WHˉ&"`OWz(>3EW>0gAښvKF5v%`UdLYE/cyo_"o] y.AJD,8GmwZI4PN_$WJ&B&KjB ?*XR^"_1?RҒZjeQf5ϛ$!w"dF=Էrۋӱş K+nƶQo/fM݂/"V Y|CubF6փ}pE>bB -RMxKڏEļh­e2ɟ䄗&jofce^쵙\ }Т }#Be&.l.3QvĆ @C3&.\_֟U LSXў~q`m(E`i8(R^a Z0f%S|e.(x&E +`uh\bxaqnO 52;Ĕ ʒ8mm@5 QRhc-aSe)Wgh%h8]6WwsMTX 7Rխ6GԢgHiI:keYkޝqn pۊ຾_kү=d!-7x bߍSbtXN)QJdžgO7Yy} !|c&f1J嘷wW(?Ginsq?f4܁%X'%7uzf D&\`8^xg+8JBaYǭb4H^^2 .9w!Y0*G~x{h t U)Iߍ *Xt,R3JFR?GSwR24<{+cX$1O-Cล ֤D݇jŚ<ɾ3|]4b`1FU(%|U炾SGG l^{ ~4-cHl-u6[D41; {"pn4M7=jUR2^tJqdHr ? Zz#Zq-lYOOk=r,0 %=R 1rOB$6f X[T`)FvXt'NJh" I.*zp4IEG(cU*qv)Y`n6|![$ t|WU0ۊp_ Mo`b@qѭ$B B4K-hAeh=b'6hʀPNԋsi'^e=Ff ޾sDm F|@^bţvI a*d-0 bW/b s{=)9$id)RdkQFoP{$[_QD6ԋ#8mUB~ŲyE[.SyPQCꕎ庚zzZD ?2<vZ(U$ ”c/R8I&/ŏ(>[]CڋxwE4g{y ?.!G/}\@7P'Dxooh>e@J2|Ssgq~xv Q:U>?_ݭ/;/Mo Kc +X#,W~;eC.J?Q9ݧ8<6cjt6nM萙yޮ6mp>6> vLgE׷-V.*r9X $t6H7%KW.a>5I,|T%_`޻yf$UqΨ `Ab ԕS; 㝳 ĩp'tD'E S yC(YI`ƲQ wx"֗\ F?eݾh0y#.e4ЬnR!6޽YƍWh=cU]|Y 9j.é/|4sp$Bd3n]&FD >2-M7TP%deOەvicG%owXP(8wRܘh}/$eMzQP Zx_'@B±+';ԶD'--9OălFp\Cy0ML'3yaW􉶡K= [*@Z%V}ճsa3259It ُ EaUI媵%o&# Q8'l)@0, R%lTRt򟪏mb&,k! ٓIC.-Yۥ!x(̥m-OfD@"iʨZ`cF:hm_k`̡Bp6AZa3L[ܺb*8 %?Wu+)@F$Je2"`P$plIq,ܤJ e5nj]>eDXgn'(l󬗠Y( {#¨3D y:G jMܤdc2q^} 4X⌿ZE=Bg#HpgYrKa֥ioRiL kNlµ:\w}jF΢,=H 0/c E=8?axQuk˟iʚ8qp<9ab(<,Yh] E@+(x.8/[8/[kNp -I !;fqɅ(򰢑 QQ<ɀ|D.sk e$Lw Wr} ^"&zDF8PXLCo %:G(&NI@O!s7U].=-KتTCsqX22wgLY4;ȞEZ~xBzOՈ@ӎl>\˚^f @sQ> sۮ `SN4hzN>hw8 ];y7i"|s<޵e ҿLP4WU_ӄ6\ p5mF~RXuUj{N0<ҍ;|jB".BeaCX϶9_8 ; 3ЪުT9t,"- '㡋?? ማ,o$!-;`狋]1 FAzMg]Uěq԰x^iffz]x+j(‹4&gGI Td)QDaAK *R*L>-<ИGk uIgÑ7$So=3M55n*7e(6}/`D@1%cƯKmR &m^om͙ ^_A4=8*\fhr9:T.?9!*VƷ5X/`i8e`e1yyq90W;B9Qƻ|֢{Ƙ=Z4ZBvͪW<%y=JUY.;!n43Cpb"Y&-ccA?` dW-ˋ99Ϯ1E6YL]5Lo!ag1ּ=COpاʓ'bF۟Qfs^3q-;G~-/ŪN~ Ÿ'cJkwћQMy;ԛިo 8|RLRH JZ?; A,DӬĝ VM 9|>hHiw0rd,\s L3gYgbVp)Ay*!r3pkO:^½,9f!y[6yZLic.tĩUء6 A>&:;vO;A>{93B$Aӳ6gGٌ CήM: zN^-|lD65&)!xU'Ct6I[oJQ`c,qCG; |qOߤ٢;|!BVzmkgy6CN14"[ <-˧ن3@ {gm9 %H2_ 2t#yf` ~Tdи*mq}@Kke/N<"嬾txRA>U* 4Xe'5_ K;=nVApEq!`S[,87zC7jAٱ4B[0)g,jci%IM >FO  +mYg-bo }EޅUt݄%B,a)[8D u.\sЕrXZL UL@O%lC^=AR9F[<>_L=NYLF_^wJ16ewfS0dD<\!p~5.V{}@lܡ w4L[›l!rP~YID <ŁvފFg1#) &jq $)YZcssT݌ ]S_MZ_ڴ zyf| 1y1U5&l(U# /k"vF-7Z3QSz,ljXYd7Aclg?M<ΔF6W|ɂ}/Mm!s4 xҙD+w SƝ3?38Z~14g\3<j,"z$ Plz:F C]E bbB͌A-ST'KJwoǯC#j]Z@Edt[NZpW$EJZ]{K3;*]?-/84H XtY'2DȊ&ӥA2,mA~=Z&:4}ni9j4]Y4 ~pV.j`i66{!_Tl>W#WޕrCrTi `ASTx>m6KleΌ» Iٸ2ˈ!7w5u`,ͩV cVHg`̓79VcKXstD]g߿)Vz7D 6<#Ih6~j uu*w$QV,X{=RATVCe,ve!誑-xmKN&ߩ?us4pk(*͝.Q=VT [\Ũ0b1"؞1޵ yW[fYjp[gybIQW/CV(~S\=ZG"q<$oۺ4vW1,_Ć"y2*{pJ aװs_WgI"gRIz;'AMO 7:P8Ag-V䵶nGB Jvn-?2V閨X5~Uh%~5ep,nOmW^^ 'W rp1LԄy⛻HXg^$Yl*2 i @LTSuriDC~^[4>&K oGn'65 ;Qs3<wsܦn(W=g9P%^!P ìD"-!P!w?8R~DK8+ hWFwzXrgCuc&klv^cp:+]:<۠@ek[6-\`}Lѻ9QHT |~v0 \+b Ǝ x+5u9hMxE'56>i!*qbUAS|wK`옕b("]}` l&d9r#4Œ%VZ^0w:E9;5NJXU ~'#:\1)6".{RSc(BhEZ22@|nH#0I^q}lœyG oq(J% X6Tɡ*x.x%΄d CH/Ƃ8~~F"l"*u,[IuHi#X U&*Hz!SDq2| JiK(5v'pP?&wfK&NR:I9`-Z3)YWV-_W/[t{^E 3j qE Eˇc%g{HZؕ?27[aCL~'yב)a;#mr>rBom37QG֖ vҜ, gUV?c> Z W$C7ȹOM$ *-O3=S^u/xk^< īNǹUZ ;s{DfvV}{βuѨ[W&d6]5P-XֲJr7.E WoC =GEfaԬ]Q0Tc*쁾ia>IA"j(N /7s+&_nsWzP.}G9+Ψ;4nPHwD3!+Ae'RE 5w@[}Q̋+3 A X;\vUH`Ƿ\nVXҠ:Y_l{>a Gv~.懲pQeMC|QIz҇`M ZEe ;v(3Bw|sO}aaR }%7i[ϸ#`gK?측DIg/7\p/k6mمy1aQl,Ѹ9 /giv֯4LtLh!QlɟaB+! gb,8&B45·euj4#;hu1>>kInVNCb{UO!~sT/IG76»Nyp\o8wxyF9cKْߖ40t%Bw87;zۣ "@c p7h!";EvpYU\7:+r kY^DP!# ;Ek9S+fR7s@xu}=S!g̮s/W:Tfb+P{HoE-RHF7-+{~s .AMksY, ^ -#R\_;> 6հsK_ h} ?=3Efu08s!ˍ0,?wJP%u=G  Lڽ~DI6rwgfҹѴ4yGU}3wSI;AVipf_y~mUyZDO#+tt٧O{dT zy{&i'=@wQo7v4{5m;D',P<  a%zbߒ HHD֜k9߉S$Lkj Vc+s 7:BFKO:,(} /b{ ShqtUTNorZyK'* +2.;iXlo@B N>{TӺ:+jYF[>.ݭtc1jJ&CN!m4o֡ PBL>N<$JdO6 wKhW^ b9%ԺFY1^e]au+69|ME5R(b'f#Txnd}rsDa o2I=MGa=|&ANcd;&&[=:Bk᭡P|]F1%`VeY?VS`:~FZiz|:BoQb ${h((W4*~1Sv B>ORND̻1\ޠGE* N ڰ(vz{%ֆY~3΂D4 HZC El (v>޿3C ZzAfO; 7K;XE ۓݥӅ#~p_AzգM +\"QBQ7/4S#2فV|l|ES=S#Jɟ|A}JDLOt1{&vU9eߴ 4 >'B34iU&l13#s{Ƌ2"q޺?ńiOc6 ?}8_mݒ(mً& 1A>7àz Iّ˴Y((}ZJ)ȍJ$Z=0BWgE+(^*]Qh{ JqHAЯş x}'9/չؚ R6[kM͒=Q,jsʐLéEjb#! Uka}`бNR]`֘~y# E+Ra!pPWWu|wРpy~ FI>bZᮩѹ-m ۄThS,DZ44]o+Qx,/ƭpGvļ#ݎsz"őImp8 6j*dƥ4ڝ.A"=@*§xX)ȁ=t\[4&[[I|Ǡ] 꼑: :ޗ1ofc@( СFXd*x܌\Mi,z{TjAnyRKK!j G:Y̥7Gy8m>KG܉8rꌦi5gO }ѝPpda %l~J"#X~AC!v5.:Lc,ljwW6>)c$*\` .@s}eQ::%l|K4)Bs˦_?խI8ÏEz%l'Nmu -b Nz fǤ%FUutU6Ǵ ;C=U!u*8,h1/E6_Y+cFܤ :p|Z 晓PfttCo/ I)V a˃ٍ z%,Tɞ:ّ,3/Qꓳ 4,H?>/w[g"u #֛ɪ α4|{4Mɮ]ba 8s2p6I]Ymہ2:Lp0JVf60PKL]xtd5hWR5HCRʘG9Xe56Nnoo2&̶\np ZyRjb[*QUT<-|\+5i1Cd!_;K^ A쵊_m;g7-I+fCIS$vMg &\Ti!PӸՕ:\'MG2rɉce9cWD{4.xK+|B2Ӄj2

~$p3MwiEEH)0fƋ"n^f _ U#ٓ,)4Mq,wXs } IVw2pYhLi ϻp(D8p! z`a5GI !f \wqoX߸06ВϠA5gzAW6=7?'Aهn'fʠ& hЍ 6 0UWWZ_{*v#fGJ_t4yu>9NUG!JcZ^GVv ?ʀv,E.I?V>o}k ] H~ lusc$FŖ«!vp4a/%HK݂sEK1 +WB`Ake=l Y:{C$]G/gC&IN;sbɚw7}06箹⬑B<+e}joYA }ssKOWbK]~R@3- ҦP8w<2̟j1h.{Fm;2Jq(Zg5w4iFT̊4+PTy7<X7GXr4`Wm$t}Y@A?3d ;s"":QE~-xR$lkQG0٫5@΍p6rT< 7ջ60O q,=uW@ߕ `4PZ$;RuDOwe D\W.uGew㬚OdZ|LkjwQ+A '׽piz[Vh]įIЎŧ^ 588o"hD[%JFTinR6t0b_.D:~N(> R@ YjK[TeINf1K3KlbZԴ)Ҝ9_g9"_wB:2#fj© [])ilo4lSzQv=yIcA0&Dٳv{؋C_ۍ`E/,vTNn>_XS)kc`°]^#7&kA.beəϵWTCJ>A wٶ)9[ȬWsk_gy.W}T˽ Lv-PH`8mYИ^L0 ECBNɋvZ쓾ʖMޖrťTV;] K _馷(tX֙qF9 {7 =ۭ[MWq$כ:qPi ]篎߂B4g 0)@N7@vZb]ͭLϾdD,L[r!Daĩ-(#(hƓGn*1OfΧv8\O lmD+ 4*1^L,~rVf*>}0c.#w>e# igq0]CCD^)EڳG2/:XHk+#?j2lbhe뺇̳?y,}Ӳ+Ң4Jϴ_#FXeLgy2&$QB*l3kaЯ:-xʞg _J/&z-j-0=/ojSZӟ&^a|;BvEf+}b[W1>?+x?pc=Q8} HۗlwMޛPG)spy/ؔ2>NinK4fh=e7|8e.^)i:/m0A %VvtpR AG=;I" ? ϳO(7;W n{6"x [i;VldwbZ KК"Q.ce6;衜8=TSCAܘ@Ig1bkSdv)?B% cQ2=^}&`> / D@14 ,0ԃ?F>9;c.s#t lR'ɿPHoU$JsS؁KC%R{ Q81"'֜IbQ)RΛ&Z5FN}WM^(êkGo3Q&e?$&6JqytC^#Ѫ CWR>ǯ%O@Ԣ.Feꥐh@UpH 9O,Yu#^>yN; !i{|VDjckA~g@+&A<32Z6a7Bܺ˚Cb\SFW^ԠD#6``_=z:At IlPqvx Xmd˲߀N.Bݔs,s=gdGJ֑#AQIE]'˼zdžۤzJMQ[XILG S7#8WexߚX|Ό<` ,p5V 5L{6àaMsX7gk*PWHvZ6zUeAQurx)d'vCAv2W/БE]NpԚ30BZv[Wx=sֈ~p2"Io ,(0f)[qI߸8?z*p?`@ԣ}Epzet* ǛKyo}MF"`G룡$M}SA&F 881WSs.=ٿ?PZ/_YfW?HyzLTt:" w"5p+VF(UMV:~$&}e o9{؏C>J88?vڱQ(B!CdEak{%ͨ RQ!eo UW:/j0虸c5 UD?oNTc˳xJ_}g+5 ւn2#N.gJi'~| ➷&-^;?mRAuђPa DaN=4 pNl/Uqn 4~kנ~$m@` gB. ȔRIx)`H=RZm& xMcTy37 3;_9JB~nţ=lLTJh7Voft| ZY m96V:4ŨB92~K_`:&8Y@V5=xw Jx,<޲ #b#E?B5Ru\C_u"7^ vN3ŦRCwFofL{w^+"ZpI׮$?'>I6ͫ=D?"|k%Ex,Q!{8(D'|hJHH18k,kB[ZI#T1`gǤ%apuMIipȆY9a7}'Y"QnÌd0.D[ $ǜ`,`) Dc؂q, у L;dë #^gfzM rC_ortB Pܖgwr7{E\#R`bxE5He{?,hٻ5p ?2@:qƛ'\䢲L*`},VQ|o,@!S8"=٢;g٧h~ Joxb9Gf3AϠ)0:d1)nݽS/mA3x\C "l!yY~haӦPֹ?iizyQ.AG]M j/2v>#Ko:?#e3Zݮi1n`d 4]ťP0[Fhu)Exv광`zQW l`'-揇Yz+zaD $l,0X|CM5xWa!y\OpvuQ߇ALϖWz|9"# )v~(flF9Ҡ'퍯& XE' BUI=gf?{d8O -pd=P!Gd{CFpu}ܴgߴ77'$ ^;A/1n@XGmx8C7*Tl‹e&?>F5w ѡ:sFZ-GTfpϛAn9x.]QڕWuߜ9h&'+JemFVm婽C՜;@$$74_i- 1WWĬRq^P \ _r'ehlHY]9v*},Ļw}5mKh5̬qKG& $fg6O qyl+=n>fnOch.Z@BL@ƮvЇsZſՀA.{;F@g>:D0&{P,rhVSddx,_5Ӎ&<@:$^ŹqB 1^|dU=" j iKu"F"[{;<}z.xB^%M--?E:;C)ĹCMշ}e]RJ=1 Zfy rRh]|r!k(PӉA2. :Ƃ"Ց 8#@$N"=AB墣fQ?eaY $nUZDWb] XCqA*x$4cUpN@ o[@ O LqoM4}\hl '/gv4b !@>Y8>qy"JOL i0cmm~_# 0{ OcZ]uRѰHpVFu}'b X(#I ح_bQ_FPX4ũ{?;kuӉ!%hev=KpM03^zLrw+mT"/iM!! N׊DEB#a2.93F[.EmxjZF2 _ʵ\xZ;A9NzgJݤrL4jK"ԫXZYY4' *YB,;,rEe:6vp#]C.ʻ! R{#uE~,y|V(<}Y:abL?d~6mc9 i.} /^*߉ d- WC'F=0`S"UVCCF&"_1<~@tn+Vl-ta8PCg=WP}*گ F5ܴ!}ZX5$ATcQK/#WtL>Zi͍1מFj@`6⩦Ww;XL.γ!(ӄ\FZ1(OإT!ga1_d$9&Rcby% o'wq:^M9WPl˾Y3e>2|"dJN@x^dM*3"]B_^VxaCdai9s5*z:tvpFZ]]'sҋ/1Z!Vje> jSq+! 0QFJ򸃼jU cv̑owy ~7*JL`=eA1(7Tm 'kfڋKYm$Щ8"F)TG2i} AHeE^eUBj9)?/ d\ɭND:lc}50ur aTDKoBN;?AW,3׹)UvIoWkS2 ͒+q$a^j?V e$ZWHMށqǏD 0:ɫm;J b&RTj(f}^$}[/pA*2i?~2q"{Qo^D\a`if SdMAP o]de!"gaC:0eWY{{a,gcE 3/X|wԔUN%${8-e#f`bZ`FmoZpmo 2lY F([Ķ"J܋<o%:_J7^qUAZ^?pvş62o s[p]mfC ̝%)a ěQ,r`yRDg9$,MR Jܓoc ŇI&'l`Wb-=9w;N9Hs 2\ *^<1jX!p[r`YoDzul[.Lרɞ!r uc_ګ޽\$I` y4ѓb>Q o1AZQf/T!ˡ=)820 L&%g [2'Ytq'H!I%N}-e + ^^4O\Urԍ#z $;<@/b6f֒xGiMv3ƌ*&g~7j^$>}ܞ 1Dnr* Q#R&97Ab fL]bo9͜^bwl$r$"_?mr 'StA,V>~=<4 U#RXX mR8B7q8]hlqkPPx㧐,] 7(>({tJ5"&~*+)8sGVO .@ēLP23XʛfX$njY&n`RntqeƖt}33 4K!k~/ڦٺ\Tr_Ha|"^)s& xasn1Ϝ| lR6+QB d]}29h^9aӧKnga&,3[T##w3N}ːH.D"6m*Ny4*r='NEX [#Q$BFjR,\?ظ{~4=KW vN33d쟫rK4Fʺ"|=_nI8k sL6fWqGZu)QoYYBR Y]c?K3Ux\D݉_-IYDDޖ.vkQ.Lӿ[_\Y]LP@[떔킯zWxNgGZrG=JӯVvX%r_0Yhl`nXW  o[EĩntgFV3 _S0g}2ܽ98` ȿ/LJm 2S샕QŸVGSae\!Y jXdas &ۑqA^jZrP:V*_OQ ֶZ9k9f42j[hsCXPu/S˫?6 e+ΰk5)A.GzG{Hzi[5ƕX,)nJS(nevN@@AY=X hTv4 [r7@"3w|0A+44+ /!u{WŶWV`8([nmCH&mETs7]Z$)`eq?COJBzۛ\ۡ^{U/f'F]<ji4tH\۸Fc6"ɬ4JwO$du𖘞{8%bsSX AwLP]Ғ&lGK!m<2DHLl`S5%"D@MnÉ= >e${FhXJ_7x/DS|8j䂧>Wa]E\P-.즠[$IZ{ t*XUYJs3 T/18rxR$eꢼ g˝mG8'qE(zkX8il:ftS {}xgҲF,V#{e7Y?FqX$__u'QL]3;g"& qY6(Py .h>J1l/tF+g][Uy+nT2s(h&,b>aSJmG*'^Ch|m&|¢=]R0z߁`CDKc;_OB(mmG,iH!fԹyh,%ҋS">Q6su }D W1(wȾE 0կA;os}II/ei.лHH# /v]J;O;THW Op9`,ٯ`rIm?$Me!?\qAzB/?|3D`?pv¥o Tv(OdhcwT}c6-Z3o9X!d  .~pfP[(f0Y'2g4Jf*k;%@>c-:8aY&9YԂD㣄?B\T8 MVУIE2h[i'ơH!g|xʊp2@)sk&J%7Q57u*喘[`10&}i1Xc¯VCXŇ2&뀙F0ӮX UYX8&Be4#&O}mྯ`0l Θ0s;7qo|*z_C.jh'!lK}wPBa3p")WerWjb'M쭍8N>:(PD;en, n36-wŨ10 %cZ5@Sm @mcBd&(~:^'Vnzhq}ƣ+縋(")/[]#IB˛ۆoh< U4T6lw,7j2e&nJ"\tٕvuPV\ s$P-7GY1W^`"Y%7 ( d&i7, Bh@L_bbI"`c:eƞ,F`_VJ^Q,Bzu%JOjSrऔtʝ< Q"?0 + megrjÙtߕmj5`Qci*>|F4Z}m>ZhЗvV嵧GͲe9:q#5t>:LS\AY`^ͷ)VzKPbO &<㹦ٝT"ʒ[a?<ѢclCaC-U+KƢ<~X%1jV$IZs+XD'NP\|fy++Lh&)wn\jʺ_3#ꨵqtNT5zr-ipKv"!ME+e5U0ZNONԯwD#jaʲ{yR`;6YoCJ9ZF%+~i_uCs4cA7p1mVTyS] !P^Dg"uGW-^ %p7Ah[1d}Lʚ,ڃ &Q>^UY; ~׏U3HX-hW0Ɉu"YWCd Sfب*%vƿl=O PjR #:vX"?S;KLYMcͶ,A G !l4pj_vs).^j  gm ctٮ봰*3E|zpf_?+sr Ǭw`ʡh7dCj|eG;x̘F"qd$_>wDP yIdX0|ڔ[br6/#oV7&ćࣶQr>]+P,U&{a<}l/jv{ )/^]V=v#XHPߖrHXel//I昧;p4p3<G?hrE"Rl+=k>k4k$΁ ;/5]>Y-poE\aFiTޮr94ka4=/@:#ucRkLe/q'm @`oMXC$邛ѪĖw9?6 Z 79}5>Ugk!g#1Z J 2^h$j .WԟQ&[NzIf'+NNb[Ho4CE9 H+n畳sȉmBvR9!3󨃂k}%ifZ6We1wQ\㧛{L%( o/74_jF&؆,r–Q]CKEWP+ u10z kщ:oEF< A†\ mƨU=Rtu};Q[iv#fRc k08AD/<65\|>Xσ$/Hr:朵_u/bF`gݮ h;/s]n "9(CȾbRk*@Wق&U **o=ƝPYLߏ6;'fRKW HKAfW@8sM0klcUg3 VڏZ^+-znڭezp3]q4-n8Ie[%wk@wޛ~!:pH:v5!cpTO\[Y䊬ȭjz:4q>ûD"Ifa26b<)֑6uu@$AHԃ<,MbGPUq\C"2x [I? ۸?ƮHjE=&%Es[6O(Mﯶ"̸_fipvKdu?+4(>)]lq_^}Y2iݿ+ MM#wxoTK\#`A6*H:BA5cgq/ͼn?eB,aψFkmPWx~!ơX˕2,﷪qM@ =jYD{r߾-QpG-x% l(B>jx-˙j6jZWp:|bU 3pex<NE#BGU*Ͼ7S-mb ^mvqyk$RaPS^HsBE7ujIެ8XGpC+@D`s9•$\kK1FOcJR=mOe)Թ.(w`+| jW@& +g]@on3ih{Pk[]2u<>o")xlQGxsɆ;뫙exE:|Rc&E jNf3AouؽdG5mfYIhRJ.)Se?!Q n2!H<Ҟ&Ǔ"kK ,<>:x?6nLַiMlL;=cR ԻlJpa$EiTsĿLN.n&cDV-Hb_1(  `PsTjm8 )eeB-VjymfhSV0Z"Y sgH;2}٧Un{nGJf<ɗo"R &leMo4LKMZ/ۗ CXZ2quckh^)e(h3՘]\\TVJx⒡!)ja?eIĶ]B.1倭ef>*F\ŅgS0[e>AJ$Y1[zǵ'@QN`ՙgPgry^P#b҈##UZ BG>fB(phYP/Y9.`qFݍL~&?J4͉J}Wi!m$Lb#( *?a:w'~zIY0H8auo7:&5;F`8 m:pVHW|;qXtK~,K;MO)O\L>=L&Ѓ#0ֆ:Aw˄J|r1_ؠ\4Ƒ"QOяG`P\ bD9-"7X{tq V~ͺ(&Fa-7KK+ʹLp-[]+!Ѩ&ˆh~Eb;V|cH\+];hR|Q;N~,%7Ό*a#dE]4./vHF<`I2+tڔN:`jxZ>Ό"ܷTpwi _ߥz+7$#:B~Ud&kjgs}~M6Y97YKmS#ϹinCH*q: yJ(.ig1|teqSy&j$~|~Xe |9֣\GZ)L=-:<[V%06΢uMS3#x(!.5+wY e,ϲ$]ˉ2Udkワsܥv9g(bL?y˶㔤 "=U;';0o&鐤bKE9 ʘݢE!k948toj??F(띰4/iuPl-eWkbB$b1b6zA:VVGq{2ȭ ]c@TLg;׽@~oS_؂UuPܖgװ=PUU@|‰#ݲ֞a26H&3 Yai9#j-ʋ۷m\BbgE=g]f}<_XSL}??ʽ$oV̯DVڀ0&åMEf->%~+ *&V. Q5Ad!Jc5܊Z3IQ3/Hn,]K֮Gh&P;.縴1b/ta s}ĥۢ!֙f`]hzJPs4}ľՌe\g̉;&hlqf6(`Mتorl7:0<p4J,PD{3O2Gܐ?Q'8^܎ }u;F:URkA3qF܎,k\T&q2[ZR5TU/ފ͆Mik%ô%`#zh?@lPWty Xb<'z=*G?K3r:rEl҃7̒;:dƫkZ:x3_?3'OA_W%΄vEi@S}&;tiaIN$7dߩ7}FoVXʟ+/Hp(gn&\~b)K=goGqfo O /XX`@]<4 H :[5nJ,xBd<ˎ!Ct.Ώ h:s?4[BES|\ yfFVTBmy3Vk ^Y?9@[`#Z2ő`K}}rRz:s/z`? #ɝvALڈpw vdެ&Ƽ?Z\Lۮ*̄ cM |)/O|n!&'armz"__(w yƣ.o?#Ux" UyiF' ~>W(~MF:5zA)5Ȝ ޕAڽ a#?ϛT[4ure%^ b!fxx1Y䚪_m7 ރSf5qƽ6/Z7d r7+n!vkX;HWҔ~ӽ_#$|gh#j)P+Tݢ[%f<@hNH8[F^*NwWx*OdQe_hƆ8B OptEsU,3 6* Suy Ѓ1|2ݤC%l}7K@כ\{0'B:כ$vn|g7K s}څ } MXTeV;3pSa6ga1iX6UnZZΫa/|I`mfbru\h|nL%-ZGm4#~a&m"_VK K|y?\^LSˈK [4k3זDл bbt"K ^.#lIB9I9\=N`)V0꟔ɰ#pP˯@r0.]jwcå`/- W$!:&r?2{-bek|ЕNίF*`=5r+Wf44H=p/| YU|#*كR]% ReV}CaRc}N+V׻RU[uҬb7H PWdxdS7\hUKW_Q RvM0ק?͡fv|m0Ṛ=lx/0co#j./lgo̺%15dmW"v+yR+ kZhFA3.Q]3>jf 7`Ս]9ʤ5yOk}J[ٻQ\s)}  §hA#rwFEKu G8Ӌ6Gpn;[)4c!sygȲ1(͑bry0gZX)`NI;;l䒄8.Z 0KWy .&`eŘǖ_{X?ZSm6W0É k,+42\-'l"Zt#n7UA9͝"!g~[:y!yxg 'k j!9Ј5q)`R OϬ`B17%pl1$f$1Q_տSm쌮 $H_uJ'0o\E);Z ΦO ':avIMXLg5yjU,p_[Wsw+ Ǡ(:vPe6h E(43EU:r8uEH@X~K5k %/o=7*OAeo 9r" suJ,hVSd4+pl*Ir9\l(etyjɡ1j.rT!2Y6-gܞnx E79,-/!+鞋N1)!AXestE(`q)e߭&R?N%߱A?"i@,;܎oP.h5 n;2BtO$ wda9h H~H:^RА]g{]Wj츸Jb_ ) =q|]H -[yؼwR١D]"r@daJeVK=6kx47pxx椀(c2 ĜJmug"tY޴?*džW/sT]{hDY^!19kG/02`W.$mgqDDX ;([\ O߀@ ,,׷wW}8 &+xqWyKЏzOH 1!!Hz!ǻAu,yN="͕Ud)\$r3&%u5FVŶYJ7[qdyQ7Ai4hKߏ"}h{J7\ ]7@`DȚ''ܚ3OuE,J@^AfK[MDx~&omKbEv%Rc-r|"h ouDo›8,0VG^uQ"e 1yCd+hu)NJnV{ҫC`)lE)hd@2]d4_3"ƈ ]vV߭ؠϕ3G* .zhvQX|9I;om:w/ZyL5uLR";DӶHV_fd)QTͥsVoaT,l."o#5o!w;M% iz ihdF2sObe} J?pta\}QV(K9eZGO:Q:<L\F&HQ`|=BA!FҮ8/DdSzɽԀ"s(%55rizI$x:GćяC8ѫF""]m`b[tT).\ɟҞA6'!؅e΍H݊< 2̠e\aSBvTGvQ=[m&)73|Y kMM _ei(dalȘVr VW |#ӝ|V-o,ºXakNrBFZiSqPK+ fy.ʻj?T5''(!1pQ?zY벌x)c"OMcVב @)I{y픝>`IQ7aԳDvQHqH!F땟 雷JOWVDɯ=/+'WYDw Ua՝9MLB Ψвf׾RhkV{uȮ0<id 8 "22P|=,Hk) K.3Ru ^mQg39[g8:FzɛFz-I[pOd=֘_sbC}{|茁s IBݕ;E4֪Q:bXFŋc\JUݽlFo(%'jfg ݶUU{wMXw3vF RUeO`_T7  XMP\((FE(3*XKw*lӆ& 閔4i;F7}kEfL`/.E1:N@}68J,FS7e15LQxRN>fz Hة9MpAycM"j]s1eGsPAkRV==MGO)i#=$fF)nYq퉓sOlVfABWpNm, /!T-IpFKvSѻGAFvG 8fKWPBAD䔱2to:vȓ Ppe9l PMԌY=&>Bj|߳2jx^}J lȮjާz*7I7U6W~7d=(A&X5a&&Ta4ƪt"Eg$MԌCڳmP+OA 0CNb/]wm>rchL8TH js?JrRLx{D>]^>6qU'U`aS y:bp&y{6|Tj\Gl'~/q ֶw3k{4f*9[MLlYlԧ^n-V[֗i..#c~8ܮ4S:'Տ3lZ Qױ.!_Er|Y=|WH[a?zeS'5v4yns%=og`ҹXAf`2W=2SBwC~失'ɕDzqT#%np#1Dԉ.-: RK^=s>/nofP4thm_B[_4xch8y~jDRc$JLTo#:{4^1X+|[j +D!*+~sMVt8Inb,vuuOsu+BtXn|m.^(ޒ&wPj_YH@A}c6״ݏY6NJv]-ylёfݽSc h,+ԯAP na<V$bhpi3 KPwA1F,q=(sV-g 1oB;ĵV X;JK5^TG /Dudg N[F#/*xUQ4˃/î:syJk@W,hNlLU Z;x"bAHe&̷FO_v-+L1=,?R:GC+b -5bZ9&!Pu1#we SDvgQ]'C!$("U݊-&eoz.bQɅN˪v) LZQYE($~m;m!!C!k( r}`(󡦶6-pG7 f^v0ciw~*v|$so9?edpq EiTy`ޞ'H͒{wI(|e.=&E|B=Ȍp9l`[{u%IF@/ypnd$#X WKpapRTIXP٥AtS-Hyt= 438%77%Im^V(mc+/gL*`-ڡxa0m՜ƽ.z*F;vh!?B ČKUFeOWA;idX/Hh3o^d"ea2ϗ]HvW7f" ~j\DRPc'Ҹ9 8Z V(z!x'dp]z3Ì |ܔȱӕ\ 3}1N4ԞdMܦ+ޖacu~_Y9×R=C/nMiz zE[y e`J/!;74kp*cYFz,P@JvqƁd9 )`j}S9! Zjꔣi+x˛4w1`J,GV Odm@F2VEPpR@M. 6Kx=ϥU1Ft12i ~ ~8)5; bVhU" S<.x8曽s(Rd_Fr#rsnbyɪUcszüGr e%O?o.D$q@,ڤ$|#?[y 0zv~]|!EUsML gfg\\Hu~|WL9$ˎzv' R.c39ިRwp7*Y ~*6?GV?_,yЮUp.$6܇$u/eUS (s&+JRiwD;:mv;LraS2qb+]UkTJH*b3JY:e?5%e8ׄ悿? GudQ\SX]6&4,O+?Gn?Yȶ=Rslji&-mAJ:c~aؚM N 5H+ZQDc>,CٖɖQ;0E]F*_кclakx͐ yu|U-hprU֞bnD[^Bl)\Oڏ++a4G_ZU_ɋy/.ʣNZ19ڄkb-|'a-6v_8M3-r9 dq72&^>E3$s|IP&p{U$uwB}z,GbO,6b 0I(~0'-ςu`TPjU\/3  8tͯEf6_-Husޗ PvIs0P4(U% n( *$ $N/Qq_&hy2L}ŰwiCt^잵=LYS Lݷo\v|:kq6R/_}xR[Ĕ68-J0ZrCwe`\ 8yp.UpR\괁;40.T^bUώ_& տKS#Ҭ 06U< w!5T2荴aiaYH.LN.#tUM -"8OV-{O?agkk&%o*~c`KF:gQftS .sCq.k$|Jt*b)AZDҍvE.8Q)Ns \Z4w%)JxǶ3lPki#a2Cf똨)^ƱaDیa"d/O>O%8ZIϬ9>}m(~$mOIrI&="g7p`CY2@'cwUIW~¢j&yD^3b秉|>Hnp`fsyLdʥeW)"1ia> b^aky!&A `T{Ӓ NE?R9D%k&^)Gilw%䘏:{{ $ݓw誅Ǫ&`,|h\+łY2F)f]WL f#Z)35<|c('ZۥyVG04* nO Viہ]v0+xyxڡ-9&@.`n|'7c_H%j%A<-eƔ֕ͭw3DqPR ׉vdecՄ/p2] "s;plor_D8iR| _2l'%]\;?AU4u*0u^!;=ax^cY9.\:E*j }~o7ȾQWIz=d7VyբjLkkl)CU,X.w,=C'.R#7^U7ȘF=.Cm/msdWfK:?]9"}WR` Aw$ؚ&s4sLm)<Ε4sw+!)j,)֏ mW܄X> c5& -57V[ZJ@kJeӘso߸b+/!әqx-So6E()a+eK^LY %èUt[S(_6)^wR[Ȕoˈp2ZaO.O C&h%F逰:(#IrFcF6PKĞ,mE-BԈu} fƦeӡ@ESPY$4JhqBeI `z cW }V?9w߻mdpQF+}jB*4?|MF~ =rr 9 N}WsBRL~gZrPxm¢CT#[1*f[|d.=*`āhul5YQ3fO0If,BTWj icL[[֔VeAmh.5}^6v( -DPlȁ05LXuf\iHȭ,c۰o4' 6"BYs")TbzPBnn{q#8אi?^|\Y N#ݱ9m≡Dx\..# FA12uAty!~CH2ASZh#L<~$vS%8/RLq D Ib7oчAaK;dPydg~ZJV9fSvZ+d G'NфFG-dhu!Ŷ6vHq (ᑖ$ \i7 -d%\;./n*Pgoo;iIڅZ9EԌ̯۴ s}^ K<2{CeO;/|9NB:G̲8(QX)Bؐ:PO-a.oW=D"CĢoH;=]mGX37& *71M8k/.x ^PVr* NDfaK[  /'U8M ،;Gl)\g](4θ܀͎\wQg`~h*xo7 ~:\ݿ0,w-"xi^mi!Mڻ%@q%^f3ښ[uyy{d/l0.k]qԒbldQMm)|oT"e$aj.PW]vc J/h~kPcc*v 7qqj= nNid 8!N[A:v mwР꘻|>Znj!aY=ofl;h֛RW~7x,L'I73,CfuV-0 4,Pestꁸp!}\ǹUa" <ʘbfA{TA⛾>]N8Q6`3n.jz Fvݭb!1~ڗ Ԏ3R-W ]NSqS|֊ϴcD:|AFcd˛qZ&C1w.8SkQYebbGU,+ ѻ4`C8r q}TpcZnt1XAOcmzʹЅ4Mڼm[38 _2ks25M_C !T"3.pM&nޙ-D;$쐜v *͌; 'EQͅh[j!6qHÕ~h*,r%_!_3FJt?Ve j$ niҐdO)ZTzʒ #,WUR- Q"_⥯4=P/( oOV3P-(IJP.R ڜ>emu?FLQ ӽyllwv(ѣ^_| Zt2ʃ{qJ5aTlNzp=|HڎԀn)0q&bDzo.jI̒'NEMEdGN|0!Ɋɂtb8~L6Ȏ8*~s;HXѱjQu4FWbW wYX+P-XW:6.˜n+ɂQK.'O/dRW8@J5r,B 72-i7ʔd$ yVf)zY7)&΅gOUeH:{:Q@ [] HgUp} nRHu-dYp,բhdH!Leq^"$ _ GzwkE*kVP,xq5В҃3MNʊ/[6+SPgS@)ӗJ\.KXw/40&,5G"gmr!)ݻVf2ulÂYV&e;Zsf]SbnQF7MX}BY]!>pܠ5q[.I|jOdlOV *SzNeGBC4 j֧~.Vj}Upw.t9_*B>c,5AփD[JV٘-f3]>;:OxJG'6 GBx:,zm9hHKzr2b"yPj݋ʲLYl8ŭzeݘ U4w:D`Ɂ /H1NVRKgN4)fEF99Xp]D)pwxvVtWn6*]7B'1>$>avD'4]nZ9Z15!8{Б\-.G0qSP3RG_P*wdkF1]9#~ O-@i/ 2^v}rr=OW>VuCDJ׆fAm#U'K"t+#0P53dL(,SrQMOYI$.۶ >g9^6Cd!?odh -(IM];ם;@NEe.P&iwoP;ճ9ʅݳKHuqXd r _-*0Xs64 L?s F.Kʥ-җ(`=/|mτ.1@bt{Ȱϯ ο UPC~ a>ic{}̛xvQjgs7 $P-57[/,4E+&^%4s7.(5gwNA4z+ڶT~iS"<tl*g\n; `晕Er`[ =dB1TOFE=VAš=% 1dZ } {cq%IQ,qoaRQ,SA:>I|J:h,K1ݹʿ$CqAUSV}i9]qw`:?w}X _:9(|"ϨEIr5(>;jNͲ < >`[#6ْX&LvQ'F?wHY k~ AP7iNb1 ⿭ R$ֈHf Q|e8sKI7BR%Ҹ Cr/Mϭ}5BoAp=1/0sK+L +Ǽլq>ܯѨm`]f%rZULć2=m~Kq"K|JC `fwCXZ삸JY>Gs[rد62uaV=j2 ))LyƸJ?xӼDH,c i0fDz %rk,3B/yf!7 -\Tyd#z{:9.bbGb*LEs+̟-ơQw;=L_/%3ʹշ*uG0\e޽ ׼TDѺ@ȚxsbCU eJ0{ەڊIcI*+[=C&;+8 R0zj&^fw % UiNؙ!b}&[zמ褌(Y Nkk$«3ho88]pyob?©D|=ό|Y3A/|C޸P;LO):jnqJhM!$i$_+&~#!QgVk%Gض{)a躓\Nj63{Fܞ[r, K6py]^ X+#W܉/]T*>mZA&_E =!aIYC- Ԕ3$Kybwb4>A1IוDdfm߰t9}̠}M@5^b5SFͼŏFb $`SǓWmG 1-hy( A% K=\S4"d(ZR2-JVhaH_nMc`է)Ԃ>6)}"&3*N D8X/Iˋ@=9kOXvXXL{ZVt笴ىD.fB.r=~1aNo\'7AÃ'oSֆ$ZqQU|cq ލq8鋠XB>8FD(d}Sk*ϥ9rp"b/4Z/VMA!m*^LƘǎeۥoUYpU`U Cp86:O;Z k 8HUZ}v(nCU+_֣˘MAN(/ 1l)Y%%ȩ06񵴌Bz17^@#^'Jb!ց^ hŠ_%->^ꌴ5IyT33Ka[)DYīϊʊWaR)[8٠%ͱ7ỼƂɀ=PKfox381 }kXce7cP]yC<>:u2l?cZ/;dHipjR;}Ik@Ɔ k#(#,-[CGQMPFVAQگH 'Iq-bG^>E*'aFKuCǃqȫ:0Wd8; WeYaMpAe]smv~t]P;q'+ze0:_H<7ÄZ1=#\olNӂ=fb!Q;L@b5ykijOP.?)qG)f,2vF`2gK8- e.OF}н7{G&[2ﭢ__ G۪m0u1c4f2. WoӺ[j1k% C_]W=~s*bs gأBtQ@̃ Ձ&Y}'I0 \C;%Ӫj:P ^єz`cj"E޲pB6AL\V ѥBkaD3%UM"fE. 1`ӀD} qd08 AMlZ2QS4 !um\Cu/]hL( ogC+_+-[{T@U@ed9'FhCf%֦ZY]|hcKvRbsAAcW t ˈ=m_onLk4_(T\zHޤ1I8*Ϥ32=*{0*gB0rV1F<px3@Ko21Ow86S0;9DA _ʹJLífzp{E׼3 Y !B@3!JSΙ B$7?melg\e3Y^Og>C.[$6_O8Zi>{iL"3/3lM(l(8-6'|3-U;*RTsAa㥍wN~N9jlAKJ)_{[9AYÁ=QQ z4pꩌ&? ܓ-e矡We+ƗR[ںŬp3(|j|8,3GEXi8u6zC@1=2xNU%1a>rKUg[{n viZ9)YL^j{wi1Dd1ԾKJPǐh Ni殭x$eNq:K({*ChE >uJb.-ӣ7"O '>i, RC?L9%jՖ24Gkpw~-(9ER;@VD$ ;Ɏn?u7*ӄyiS, 5!0gEzr=~=~&!P?vsS*[Тtc8[Ja_ZoHR9ZdUs*;]v{V!ZY\u~gGj1yχJ1Ŭ+^~YY_KuT pgunvYS7FdMV ##娻x}QJBES:mS# |k!Mu% 1d?푈A <IXJLQ<1,zQBz9v0Tq(t!*e&_U9TNK@RdQzx=+|[mzae*gOs ͑<Ұ}?L:UINED[wcA޻peX Eقf&&̗6ؙ$C,2xյ=&|œHs~v}͑. mDA}BcQLֺ mD3yOM]-rvQ"%R4Y0ihJUom<9δʹ͉ޢ$P$PP"6/96|XXB!iPkl!3\/?(9RD\jj 3;Y &ΰ]MM gvXXCw1His}KCRYD*ɋ=ScKd LoܷT弃3x( ZorȨ[1ÖԿhVG#'m6wGXfkWmܜOLE6Re"BrDј3P64 D^z<be4?цgg]%i]U:Q#edr@1̚=5i`  {R3ծև75]˄/":MhBY̍O`®^{q4xz+s6ѵU((&Z[$/f m$'_mS"RrC!ra'^xNv[8v#ѼdίxfKgX:l W%\VU8*SKeQC ^=ߋHm^kSTғ+ g4IȠP7VEE_ ~BmƳkҫ6 qyPBu\'*$߉wV("lV\I˅=2Ü5q,`lD굺H `Ky #0R-}?~A/RbW v9 &K,j '[#D`bFqګ1{NZ ڭ K#Ѯ;ֳXbB.zOcx3B\"{!iC2n,dP)~H~U qϪv҅bf{Ќ%9 ZɶU=<1B3 LnC'sܫJ1`wuTyB2ǔx5B#ӈ`AS&*ݖG=E5<{CLz1ΤDRiCb>{89kR3;/tY)M6aΜO mp9cWkЩY5'"lmۗ~X9RɌB֐ ~,YL&N7>8"Gɢ2v||.?D[TK\5`7'Cbw6H_dZ.*؇=5k3JK{v!KB7rӛxhCI 4 @ ]I"A0XC[K!eb,b䅧\iB^iYDNdm%r7xA%VG!U/ oIy'Zq,[/#c_piNK۲2+WImNg_ Q \ƍ +|/U6}V:Pւ! is`&\y\E""XL@|OyH${D;^L"uT $Lisua.<zοgFYY d0p($,BkAR6!a+ϧ_,/$#(f .M,;)L 3Ъ8XfTO1ψB'l cWE•U[$m2k!@i?j,Y9Qofiou&c@mT|<:V'x_6GICbK-)N(gD &!^1nMq4"3Wǰ@~ZC&-V#WM|'TAn* qռyzHlmE~S+r; dRr+@f$b2Gp|R2ϐ^DZlץRD^s6Є gOJD,ub)]į)fƬY鱀5mnPsBKtI?ÕiSol<&hD#8(%ti4;ǠoX`>-?/ UôSV*?^,O垾kqPj?mRf^9B@)(l~M^ܣ]["]1S"T:ad4""Fno3Vw0z ew<*¤pof:mQ;< Iyv!PIö|Q%05 b2gZ? 9. k-ФϨ!֡_ F.3ǻToHwJpbZ񭋩Y)샧jtN~*g^ͣ``>i8`bpT1s]/)r+*ӄ!PTäu}eII @30N|<43Ӈ@/5.͠Y ;vBw6@>NTpfܪC SZϞ)= _w1M%*r:݀Em5cו@>E34,GB^*]mH]΅+:BPxN' LI_ sbr0&BzQ6o&vT q7H֕_ eUuϼo&t?3?n\%ΕjW6{E`dA' Z"&J0;E0(, # $hF@ƧUݢ<Ҏ”P쯺34ՠhPM!Z,S!v L<H?cv9t)VjB{r%*-8?'~j*|DmVf7QPGש`W]:~{~.`&d0@~#KXD\cI8/0 vѺ)x=l&* h[MKWGE?8D 4вN@cTehQmS1Rm;.9,ɤ Dze-vQ01c!Z߰o0-6~랏!TEFNt<'f:oK<E6P5\$k<?<8BDh8toR;MyByI@zky&oWV) ]bj_<I_ lRMKlpm PWNJMUo闽A!]R1PƐBj19]AdZDgybٲ)7#ۍYDE?3Pb[Zծ·m5OSj87u C,ҩF?&@`6K G'$%Lc`:0~/fx\E-W@&"Ek1IJʷuЬ8o+ 'v:12C8-_S6wZW>P_G _PMt:WR1tί1i'dwj&Qv)y#S?g|yX-[N;hkˆ+kHO80Ge䍒D 'ƵNLY/N`݅rD'˓cyT]iy/we+}΄mAVs]:Z#T'Nk Cm~~|[ V:-q+]`_a_ژazPHV(:m⡭"1e hPkoM&8:V'Wlޗ&?x@Eq?,ma;yKvP1Y)1%K4U~} r1Y+U<]Y[п}*hXn/D.㶇I}~94k7=9Xȱ"Oߟ9EU-b JetmU@ҝ"qiFRF[9H8Ϙ;(۞`3d;t#&ɼA &!nbw c|oVS:ˈ{}78^I e$8Y1`Y ~?bmLQCT߫Pj݊\z %X8Eu5hp}#A8oV2_eyc"$Ti'aQ8o;O_`7S\ Ee1dKNΡ2;Zww®ʲE2l@ysS&(T*<I6e3/Sz:Jrĵ)ހAJbB6!}+Ai' I qk[HBXh]Jߛ@g<ö%mPlzPY2DɂImm.-ȅ-Pì|l f̘I3ۮb WUM,2+ }n)@#İ@CL_fELmыȱQ߇P<|6=Ufu2aQ? '[0 A 'r^,niEӹ.o37H` |.^^EjHS6|S *|:wydB33yO*]$mVǡ 6,„tI{ 7KФZMcͼǕK &Y ElA_,z41] Ub~wk"^ܥf0[Z̕]r]<y|h_.jqo{)[{A(/M<9֯} &##|_8`DyZy4P,L?-^&)by |e4G%E4)'#!VGdk=t.M`7ߥSQ &jw@p.pT9˙)r ޯ ,xOT99jm<l)^;*׿Peمe⿦BmѲz m_rbv2\poNg%+1,AF*^c  E9z]&Z( +5;g¢3V -&TEg9Ԩ}gPfG-QS`-~ϞCM/gj. vΗ;2/QO+ʲ5zW@{]GmN͂a[_^і`x!޼4;4&|ډq,`PсEpeD;d*]s _4Ihw3Ǧ iς&H$>3tZb<Ec0i33 qǤRօ-\ Ոu)yqem*#ޅk*Go^ 2s9 $. c4*78YrcB]xh..e$ŀ,žgTwڌb(':Iݮi;~(Hq+%$v.[k?Ֆ VӔ~wmZIBh|ty\ "ːX]H ]a#v^&_UvZhw*+yԍWx5B!`c+;h%ңaQT+qO)1q$IIvіLkI]U &i$a_cD ?'uzhK'CS_3V))P=T̃6jud9O1HM&CĽJ0F94E<-Q!U(,0(2X@}l8/ޅ)=95pgA1N 7n5;/:k{[A癪diUq͡aӱ-;(7Zs8RG_ScScu_Sp5LX6gyMi30 t%4܏c[) o{9ίc}P wR`?[ĕwg 멻`R#zܟ؝M̶KٷDdviFu;3X̒ Ňz1KBS5`"ʭrY08M"?%a5&^޶ ACܿ?&.>W = rͨ5P]  ~yj[3WK3T^ :}|:a jK[N&C76Kka4.%p}:V} k2/045+֣QA;.{ܾ?!<`ƴ ~ƚUn־^mBV:f Lc",^FbMJtcG9m[4*4>Jo? 2/SoR`K0Seջ9LiPѹ-9Uo!m:_|- m`G\#wCe=Ϗ7ԩr5>TP40t_p>ϯd4έ"M>G[gx;$H$0Hȁ |MD0`[Iq~p>ȬR jG`y {՘}Ku>ڳao]<(#kɘ8e Z!+_9=%']|8;ѯ(ÝU!֌*bFl%[t3qFUw7mKWDfdLpKC 'N~VVnizPulWL+@Ip"&V^PR(&ad[!&#MWr }-xyLh Co>$6Q@ @̨MwM B 4g H#ss5zw>%F:R,o<(АJV7i;sXPgEa; b߸/} +hxWA@uG}$C=D pɹ⧁tm>.lx_N|jX2ƘOR8Zh?I&x87y1Z'lP !Yk2O."x! YvP iЙSL(rR`&u|Ok *bK/ӶjW]۱fZlj p3ƖwEK#|2ec$Z~~lX&*$$.j"t^hOK:4i fPf zK`ɠ[x{Pgq4uKz0 %՞6zM] YGYiɿ*m3 m:#̦ : R#еj3{g]՛~Dg,\im4x(%+] q7Ɵ7lσK"Iy9jvH%t yK8YѝQv\7;=*ms6.~~>^!#fdHtc_GxڠUlXz. +-DF]2MHǛ21M0MMm? S7ыNT,m;(~lvȽ<3:45iA酊KpcyTRx%q p<(LhȬ3nνVQ+-{/YVUz&]v:YPR5wCfb9lh{7]Pag] &4fĺaIDՁ#RJjK'rer:W9HiFp3i'pWDP,">'9g63(\QaOL͍x F6'ZSO!+ ǭ{T39!n}ceݑ݄h7̅߰W{!Q,7kF袡H0>,YmlO'~ {;h6R=x诩Drnn5Ud/jEsև!#~C~s ј*{>Ĥ!E;oc2LzKcKF Z7\͑u.Dx5Ş+kmX$$C dGjq/|̪ۇh[诪@|k#l?;k.P¨#C2{]୩L#ɝ0oK$RLqܯKDCr+K3 c!1o\=aT-vxЌz4.Zh@ >8Chvr&癶8 q%XEn;axseDm.wtOB-7X\95^oq凥H'T:̸0pe,dTwrR&&MH<@ iJޣYK9-ukT]yiq`0[Y`Ou (SfM CӢ}}l+m6U5F,Ä}Q T! !kkF Q\Sa#dwao kMʛ_KZi&}L=طCpR69Vr^P)TƍJbF[K|u"ŰY\(ϧB%>k[g &-ѽ*(}6Xf)KН$YRׁӤ.M)ǔ,;',!GA7풠X6Kd?{Õ1&6.O?޻ǕxW&o8qn4Hs0A^l Э&b)l+A[qWѺ~ N8Ę`]~3׬\#b/ B/WJA.)f.s |ގ&{w_pD_ hPd_cB%:Q%ѪYjmluM>Q;5Q`ah( Ss,AJ&\AsikKyza]Twv.S `&MZm mn*t ;uz LT5ﭪi4l[dhs] qӏ$dTLnL$l՝0:?dVLsD8K#vnxP_1nfyMUMxDv$)G0aߣX '(*]D/պhJLjUB-eB wy]>G*!AQ4tTl[srWXE aH`W[[-aA B|x,"`,4wRos3uFlUN%|6ig ͽ(* \5!s5UZ[0l*IǢ$'̮W֘r as9qK+૿li'~U.8mL$v[lGn]snvh(]'ŋ0:s3A+P<׏W»rTCU1yVȄ"+pg8+o,Lr188+5XԄ @trTo&*0A9s]Ye6Цߤ@{dmrkcT㘒~/]MWR$X&dv̩9?~x< "2XO %?MaE_݆dqɼEʾ3n2N\zRvEwkL(e8|@?C .ըҨ=uZ+yc2=zГAmkUa%a /@\)FuNv$<BōעJgiDzq-sm]E]b\C@"5r&S@5ٶy?-SIAtY>Vͥ^IST:A&O2 {*)P|h ב]5EPJ!LۨJ/Jb_أk)qGRL3 &xI}4:fK?" ĝ愮ϋ%114_K.=t']*O) ~j](Ndj(`9|5 P6>#mU ḏP6-#ox5~6@?OЛSoJhwOPT2d~ŝ}&%SV 2KvS6tx@uJrʣKH TF}ɮU__MzCMt(ٲ()mxtJCM}tH@W\7ʰ˚'@t~ʢoN-'BH=wա]F/ k`ktW" j:xHKSbtstR%̵*f2"Md,=z1'-tY ,sV2 j5<q;VN`Vx͖? ;bG 8 V(Zx4/  B.MIXz{ߙ@}gr+n4 gn(v-?+"NwU4f)k5.3PTdQ7EVf5ů#L3v.IOY-̰~X9b?Ь!.jFa\l.&9y5Weq|6sE(5t \_HʹV"\qRԪ{b-kWh*asB@^)?鍍K]Y9tJ bڶ^\yaE~(AT(|n(!-Jdpћg,?+@M>KF,O 2NOG9$ͬ8VI[-T?*~0cxVP0lq^D Qw07%Ri$fSۗwvQ5~\} C3:!񌺿]=hc1 l+޹aRTvi4vVm{)!VL9M_YLsɨBBf~됬2c۠uPgnNoxsč+0 .Ɨz(xG@qX>!y<'>t.aR74'¹7\4X=gAʁ94P% ;\Бd I)=02=Tn0׵ۮTZ;SfVB``UɟΏct_ql8AWWw|1[jk3/о`3'1ćAũ%!uM-(9W!ѬO-<j>{,q2 B])яBx.*% 9uۡ8Bb*sWxW~i ㇧[E+8Y0EC(XVt0|xW*B{r#9r=8V/;(U0;8|hߢaBj{>9IpRiՎ1yf2Q9Ѽ>ehT'tA+">P ak¨.9]ZYEЇdILz+]VM{V 0*rl}fH졾0@$/OteT ,dOy$EEO&j^#~f݊V1ػxrP0dA@fd_-Ĕ7PW ʊhL°{zRdh&4Y|^1f@Vᒵ4RyX%mgȳXnAb9sKNd@@p*d>٥ZDB"EcٙG|ISt׽aҫ<Y'cK϶a/߭_2#ֲހ[;کSq~쑚]^Ժ8=rPO}X׷"Oh}]ٚFv^@`.oCI<Nê9Sʜf7|cR[biB"̃AX|P-Dh6)Lvr$ 6?V",.n-g+ǒ@ ;[:ˤ^ٶ˗5(ƞ8,޺uGbr{5Z6jt3+v( m7'W8hLJQ]EZȜ>19EM[\w]1\sje콾̜m"`9B`4l~A^ 1wY/?U*>6g5+TutNY ~wQ҉yq^kn !w&3̗ܖ%!ZMFX_JP-xY#e]Be0aĻ(ꋟS043)3ڜʕ;WMR[]nٹ)6 g/)䬘ƶR7Ԇ@ٞjή~kxpl5|kN;[f~juV1ݐ$p b7m iivu/Lcok 20>LYO/w4b}3ŋL=#PԋsdhYAgWӢ|v4tpEv6-ZzŒJ[x7Y{6wro4#jUkl62X[upJD^vb۱N8 tVʏ1, 4t8 ?Z_ׁ y 2.afmr1)PK=Wn8xݹQB nW ܡ؁2譮fnJ_O9\37sc* vtTWDceȣmtL(kd!p?zޅ]=5-ḟ ׆6ڧ;E 3 A } ݮ 64 QO)dLLUʦĺ y1-9%UB\arw1k;HJ4" +SkXX 4+o;YӳҔwrǦۨ8C# C*v3UY`8"d!.2t EF~>.X".@e*oT C7M,qPFՐ1))E7/vDx6yhK%Gڏc1LBgri}mC%=hdSo2GQ%/*pnpr«k38ᢠ+E6vKl,[O^V!L ,?9C'u i=8IWQ_" Z|0{V=ik$KZWypYm1?ȷ<7x'[kyoRѕBD9ĘrPnӪc^a9ߺ*y4zzļ$S=nMgJƁ:+NS>>N qJr<3;Ȼ}oefKl(7>a(6xB0<5>xRb:?E䏟U=ܹMǏ0m1a{dUw zkka-&֪raxN2?%dN_TXWOF ) JV@If?y_:`ӱj [TN&SqJ5%1͵S;OAOv@߈ l8P67Gߓ9+IjG$/|zoȧKqT2 !#pFwf~s1JM "`D31 X~bMP3ǭ`Rp`P]=1UZ:i=:CxXIq*)V2 ½C!̰=6 &(Bo)gɨ1`:kWpO1$.A!Og- h::F~7WyswpeHc+{ 31ۗVo@b7dib[K kε\•0ދ|]rU~Ɏm]BWcI /RBmSbVlj_~Np \΢e0mO)뵯?ͯVlUrr-seF NV7) u<\ɖ"L#Ѯͩ}5[kC9xoْ΅emޯ"gVZ8#O+[yV7V $.  Q%4MF"?[i$1Tcs&6a1Mݖ(Ao6'+?0]!Q?}icѩ'†ZAJ$ 6[Z%wKUkdq % MM>rѿ;͉4}Ik!qAg!9fHrs%6!_AjUON^p\<űiTȺ.PVª-8?!0w(; LFsBo©u"҄f#$c,9ci(62NupkrL-xIb تfmCΰ;;NaoGH1sX^,MV/[!Cs>񩫼 F~l? %N陵8́?NK˟DXqyܸYmϺ֛©tA_vܞ4ӂKA^G Vk8fu!SPo?#:=*Kz0!Hqƒv K}Q 3yy3 ZM#01ɾZy!|{!WrbL*ƶ0X~;XO8ZR`هˁe{_eO qv\7C|c[y5XDGĪ* EB6B`~j9,>{\ lۍmwK$Fyp !B2GxE!ڄ X'!.~&P?&wf%aGJ+[܇)t`WJGiY-CTVrz嗶kpJrtY= wG$QB|iAN46" )BVϦ+]X`iMeu/Gdc[|/Us6YG oZaEhxH+I# ¸k{1( sSw)?#[ 7 Mcmˎf4~${__ ̤H.!U?,:,e{,]#.1rIKg-Y%P=aA448 A ~,ơHݩi2Ru[Rg R48Naٰ',LQ{_ۣK"Ar"ؕ_ ~oPV^iΔYރ[ޝRu?9lH=*7Nw уox4xU*}>1- C}*8 ȍ2SVuL]J{w$Oҭzߎe*λrH`ۦs+enXaځi,f?s \FUi~"?5/ᬖD֓ J+=HjM}n%'|F\uG 0:i&}kP.mPaDߕ}Cct8ajޛ&d6y"@؞1WSByc7vqWth|M,c6f7;$4?~)pDl_MLz]g{a⩑n|tpL7~7JGwl!Չ}zJ -z'0FOb0hD0\oL۝ |͇ܶ662Aȧz㧂`W8yroeX=%G\wr;O,O=7sxƾ]o°7-J4n 4tJe# 8!hūÊ ᬝ]Q qDYK5.bEj k)\ 5+Y"Ҋυwd, B6fy0?Ix~%eu7 /m}ýF̝3liDf-3\RTL\$5ʑ\r4㑮oIHЄvUЃHAi2Zk`ٔJ#kYHgÙ; ',*6U sX0oS4 6p:1_:wD ԃRj.:R0;eU3 V4tĠ 'x2VUy>ʜPU4a"|$6.DE#P~&b_sOx[ ڱ@D,a .v1KtNK.SFZDD%(Z@_kzyuBLuEL8+PCk  I V6;[~JkJ6^2.xǢh 0If [Rƌ z }%kc)Ԋ8S]qvJX0N FaY`s [bZd{~ل3vH @%Q$3av<投&'ʛ[솵B vc1k*akȳ'E[ 3m*1u1rVy͕a-qyroS٣Sq^ '`|1qXC?58<[1۪ZEԡ1X++cN[j &ZΰK)2z 80lmJJfB+I4` pc:G7mp $Rd5ag顅 _X71ƻ#9Ѧ'e!j1 :'cS9t[Fe 0a+:Ccz7na)>fTeasDp}@z1 9f̈I V]ݩ G;53H)! hDN$]lSE{P[rA4ܜ%`4Gh6NT(N84r}VA#od*:tƣ/Atf4*Þ޾+|yAp!h~OQ _"Vr/ueˀwGU5UZ)4es͚ pb'q~ش NؒR"KMDJR%A$86. Ry4y︖T2âdZք@ՏO7gD' x/z />&-;M;D@r/[xĈұl8A>}g_;fp-+1짦t掦Ve`?x+$!/) DAWQ /D< ՚1oy4[K|=*`A FZ>zdzMM .;/jJޚ5dNzeA1mžASS8 RXR}}f8Ue;Mm`w}dX|L?53?ˢkX89 !ɳ{ynFrc=!gJ`cfp9,Φ2?6"Ә&!?=u/ b?%4QXV*mZ6S9b ^+,w#rSP{0!l@"F:sL slh@vͤUS~x'-!-|~Nгfc0{c) 8t>&&I,u-+Cw:ӺTe ΍M֛-GQJ1.7 FJ@wNSפYHRo[V-ƐÃ/i >޳R ,M[};}ͩaE+}A2"ʴ]*cBl:2D jPq@ {] e&9b^sE9; r~Hp @8a >O^~W?o|}aDb&>.Y1ϓ*"Wn#ԅ.9Zt_0|l2H8Q oC[zn(-Wnb>-'ǡ"D+a]]M U1_!%7T:RNdQg =7 =3a_ |?܂Ԁ mM4~P/qUJ(E톣>6>s&K\v!icZ-+zIk:^l6x BM)gC] ̬ݴxPn;+>d9xA_ف.bZA^v+ysgLXLtm5]/᪚b yIuEDx/{L8d9L,f%Oցu2% ME8-4{`WԍeCn$Zk<▇]x6HH):l(‘fU8s9}o7b \k["q0B;\I˒'d)i ~H,B2,l@#dQNږ[M}S=J>lH8oqNP~eiW'`/)y.  4LIJZFB`C@'l.c^fҁ.F*wM[֯ǁJzG}E {Irj8,QݓZxJMx79'E*hYh-ΩH/J!f$Wz4ƵkK/գ lRQW/2c8dVC<3r ,:-sƶIq`k/5if*b {f.++Qu#"t %H̱ЈJ2#eC %AKV>:nc/)Sb2#޶|&Pn4m?;H7Q,+$nI z'͈؛aR%C!WukOw㨬XyٝHFjm\/h\R|#lߔM řa3PzEd^-g5@CKreݭ'z-"G -"\%s~e J_Ztmd2Hby?Sd)Zs2bȺ 6{XX7Uθ A< 5XdIbBz䒾0/wb/+#kdMxB^&C8Կ4@aO_<4{A߹Q}*=42WD+ʙ>ܝZ1 X.O᜚U!lsݘ|Oۋ[ WQCMr ogLn_n҉7-Pp#Hk>c# NrW EsWƞXQ$[| ({rFټu[)?^yK~`@`܊@i?=d,k,QQ0->` 6=9DPr]0O0Пl‘& gF;`Bͪ"4lsگM:aA|,7kز~a@Oӏ҉臮ERS2+AAf+áEܝjj|i vro}7$FbO\/]5+0oƇі,Os{ν m1p]YPޙoy{K ,v򆘻}uͶfg<}+:Iu9=w"ft䚅#3WpS5E'e+WƝ0< Fi, 'هY̩!Dž3:'eиS34j+x3B*mʬŠ;+Pt%Yv%01wW(l,PѤWn*euK<¬m,b+_?Ӎ}Q\I >cX2vNЛSZCKz_T7lKGϪq61*LVV"hX vsg=>?߷I(+L?2F4ǜŶ5'@5V(>KӝwP@ xM1E +G d%HҮwT[OU@(;1&ɕc` 6Jbr܍:)/Zt+b )kS:h믙 BSU&0uyĿީ*{T#\"Á>7nD PK=rEB_"17Ma3ɷV%'bYn7W[앯v´g˲X`7Yz325bS?fPc` ߀l<2&-х*Dp=kixl n^bXy,o^U icLS]h Eה:wļQ1SqVb, Cބ `4)N: Q?xZ s6MOC]ggn^?|B5zԶV !故T,|*{Z]v+{Wމ`SFLkO%Ә{WiJˋKby*Xcؐ>\䫙*5K. .[ b$F=k7:l'j?-1^_y]dNS{q#x?Ċ,G܉XF5Vϓw΅:}}@SƱvR괝I*U&˫XV?D2/oZsI0޳/"RI,}˲VDDEq)E\Cg,K!ZrB\׮#><;HA@ UF% q5Ɉ2O'"Qw*JH.;E }|0PP·e!;m7y{{.1ʍmuA(IgQY(SrԆxOǒ1 -p h8y&<-Gsgmc_\wksoDZ?$8;,b< b`qR0"C67-!)ŢXy7ƧFINt!ʽz|Y+۪4"^ug &̰#nכasYź G4c] U_ pa_cD=Wsn|-JGt3dvu ƥ ܉n{`b*iз9ޣ݊k:@mfncN/?RjKf~$!2v@xd(V^sH~`Nu.)Ӓ-*]gd..c5z*q+^~3gz~V# sNpPБ!VOۉ܀XNJ_!0|ϗ] uub6%!wB{踜9gŏRj) дOi8.rrPl7bOV$Hmhr6{!~KY U2LTo_\<=qV];$uLUw6N0R;rqA5ME@HʧHw輠9.>$`Jk?E\ QbFFBq:]1X+ņ/0.u(+wX ]Mʌܭ41u8G&6cD{g|JJ6PVd4Ίn\ىr&/9;ϗ(G[L#=)ZmS"{<c6!xg'Ӈ"~L CBΠ_Sj]{.H7oYW CM?ۥhj Ȫ/vC=;b]Dr]ΜPV@pQMqc*%U翛K̄S`z2 pӥ$(-5 - 5O沊h;pEwV3>~ ${0^q9#BV.*)ʻYyQ+tS([ .c)g‑GKP/9&= װOEZWbbፋx_uyriC Ŀ5uْ֜jc6΋4bC.CRHit{g _W0&,pQ[(6*)tXpsyfxfP _Paai}ΒR8R>Dž_h,g^yY%۠ڝbjlĵqkLI+"\3U}TVT(1-OuI]9`/Nӎv4!0&\ HI?itzۄ mL6b jf7ӕa?7l*/n.o#](|O8f@.gL(U8W^1/ j7\#8 hNyk' A |#5HBo i"qʾ]֎HP9%c9RD7"(b. CMӲ-2F(rQHuIY]zߡ@|.]Vc,#Z]H1Y/g>4kUੌ+z_$ܳ֬%w®SyXg^W 61l"=ڜ2fan2M]GIiM5S"; k OUehg(z,=t539qzd\.+Ùt{NuCUp94@8yM$w\ cT^ b?S^hN+J\Ы(w^;Um4zZ$ |mPׂw];A-9re)Oʃ,a'&gњ-: #jUMB.Q8 HnnvNQQ"M-jEwS| ݥMS`QN\78lܓ6=QApQQ6 c$Sim~'@})k0 w*/Q&!&JR~fw ΑID30U8%l]R)Қ@\!?q-@4cfxc"h>׍wdI!PnQT cRrRpÝ/b\i~NޅX72'lcY8Ok=ǚU*c@q˜o!3/ŬAEy`čY oaȬMҲ\XQp7ІBmxNԜŪp C @'}rʾ쇶-qOv?JN5jLCpO/ kJnV N8ж=N~.>ydcl/r^RSkGm\a*Z֓=<)ASŐ>56K+_!n;Bh)32MҬz?k~$5p.4c:OI*2sCڃ8e%Hxl 7=r)i>ΛPz'ߴP4*2wYQRN]2]]&qm4?,vIӯ9cNwjcoG|gK&z,0髥5qѯS>pwyuN#1cHA|[=DPl@xhʬ@Q?w! |;0;r&>~LKYj^Ǚekz |)_qX{11"(0'am%::!Ƙ~,5z6o % S~^ -2 0Ǒ[ѐ#2$b?E#CVQ U}+M,kPV^{b5BՐ$_-#FRmYu%wHŮcMtu͈-\~Pyط]u8 7{dY1b-[y_^&d%! >@p(Buق b&ݾ0?栾Zңp*,[o&+Û"GhV2byp0y*e?5 l[#%ٵ3[ 'mR8͞ B4}l%/ByTHW`1?צm*-[Ć:1EN F rrL}1Stq<ɨ7Sg-BcI/Y-ly8tKG %x, {I^Xx^jF:Q4WaL!"nU)4қ -5H4Iq}ڜy _t7k=H163|ccg&1oV1v0أ#Cr=Azf-Nר,^2gӍ7 *K`E7 'b0\g?P1{8ĬHc᧶FQ%:I}\fӭ|vfhkƘjd dQoqyfJU~ aBd϶OØm% ֯,Xs%oHz6FBآ3h٧EɃnƣvoC<‘T?𘹂h.V&yTHq#k|i $ߝ{e%VХ"eVNȰFs jȸaZ{upy Ђo& %Ӧ(pCGVA0hR^eՊxBm"H!xϡqDĊ l,EK R.5eqmXk#È(/1IfƩBviQ߿ ZJչAe$ZH$ J& )%^ާp^}M,tmOc݊!csx9/nTzVދ GHy- j)X6q2ѳDNdV\ձjY q }`PA&:G*cw#.jsC6~PU W;7^!E@,bɽt.GSx. ID%ջJ.ۯQXpNywiH(@ gi_ fOғ{UNRR^D|5o~G+ah!kay-J*-`-'+\r, ݏ&{c &>&hN:.;F$a+Л$P:# 3\lf;'sw?, VF!Qr."~.*ZB1ӄly&Z CNR4M8Y儘>qkjK1: 혥*ˇ6w ݡx!QCS+2NWpZ?5TVb\A4Qn3 H @d.g:DYkSɓCǎs=Aw9ᘱod Q_&ĐEM`//gE='u&+Lz(LY>u2T=&(O*E܂j0-sY8yY!뎭SY]7,A>{ d]|]֤]صz6Bg5v|4+QX¿nbA~s?8Kxa!9oO'4/ _+v!2H$E;MuLI׏ /'|x=Iij}E 7h0KHݣK4w_;Ns{LģBBk!Kb_Oų DfM7/ E]!ʇ#-8T5.-Sp26DL"W{Rd}L=ljP' R2H#~JFz5~&]HIOғ!\Y.Vb$mR90 nEk'jT#6 I)5܅9:vרWr_5i",1ͽs+XT4b*& )s/łmSV#.[!tPO- NEFGΟ% U+5mt+5K^eȞpsqtY-/"G °(?ee &<ر/s%Pa)컆@!d(_tCIUєxO5liM*t&)Xn/M6wZH-R&CF  K֩v2֘5~5Qj Wε NA D(0u222K[..}m:o ֛H!ekpRǛsCzd |RqE Z" V310)#R}W2l T4c#KQ{>q$ٺʨM$E c\* ZQ=MVfmA4dUh];×R}2n"?z8wȂĮbQac~\Fqg*uA' Bt.G ޠI,r$2)ĩ"l$\ctXhx-1cnXq "~H1_8)ӕT71q->ZVHD#_#@۬1̗)ԡ{%.<6_Ӥk!ў-sjS%:?di*")s>9mro or310W7L3htqLhs܂KEsy೾@w o "i*nT/ڝred@ƐH S6khI <#1i,'cX%$2-U0#\L]ЃhU>ײN9R$H'2Kj5[B7aG2Mhٗ\36y079kS{q5}}i\`u@Py0Kw0 ㉔ϢF;)8{,]LdW|%tծ^l|yT?E=õڅ6ֲb48|I6BQYeqbgzr+sZ8V?R;&[/;o@F "G }*TJdl%y:LޮI}I.$Z7|qt2#E }D#>O*3p,.i?6. ?)#2j\ es+M:MZb;̪N/iVc\B[l![&}c!#%T8s=j;8-wH"my1P-fjyCP jJuwlJrkeu TMh0T/}j~xsOY/}JZ-Ͻ3'~yτr,+.Ug9|'~}~FI~%\9?$s7u|io0;]~\d,eqp܅ڑ2}o$g&Z>L1:;'Ѥ|W ݤqAkbj*+1.֛IcxS0`$ tgOvd|En3dMTʰ]rfpz _Aov'%AޚKd3MYnH;ŵ 2x3]~zDYz$' 4%n(+jրK۷5 EG]XMh` ,p5*2;b9':hq^`kuc;q:pɌjj^4!ϋ*4oӱu {Ce`"lvF?aX*%ށdY8rƁ78t"iܠ!<6O sXkTL 3 -Q(3ɐmn8{w %,RjVmG2Uz[VSU7n|+ D˙6"[1L kUpϻk;?^zKZ Т)Ob@@g;`O@c_(/>*8&sJlyLߨR< JZv[vffPl5%-Jυ̎HǁxG C5ʛ+nc|.ykc웲O3}bpfIqnkDTCjR]@] NgGn gBߵG4cG6 `7[q Y6 5LJ -S"ék1%݊s(`RM K b!rPS3T3\[x{L#%{/@ahp\̢ N[2Jy M9MEW,uqHo7r/W[<2g q@(FKZrHtA\˗\6s43u3sؕͺpMN@h>Qx~vf0І>֍`}q6؍=RHX61 *H-m+}[?4Ua(:eX68\YJm\["4@bLP@Ł/cϮKx~/<7YK+7G?%uۆ:f n3n5_b珍+WL㬴M` ׎}~e?&XsY!GUA9BNMJTMDU~V1C9q[74Qo`p/4V ݃Ž@TY]4wRUWBe/Kq@kk^]|~OTa%fQ@@Y]IU#"}-0Ί0p%@6.2:_"*A0 ]MwF3J 5Nͤ2]>BUG&6G]rF~JN{ܮ$T)#=yd- j9~BQ潒~hGjBEhβnw9dB j*x/0.+ڲl7!(?twc [[NTǷ3x^ܕh Kp]؈lоA;0[skH9eAV|%H1=γ 0K[J}q^ sQ'L 4Gěb` t3z {;(Q9XwtN^eRhI%ea.5Ӊ4Sh΍7ь"PsC-`i / ThvCHoHYuk\a5lq{FMQ9O1J9d#_Aw7JJ2bk%nЊAnSQ 9:3j!7e,z ȭrf魆RAAhmVr׸Ka @hG6BمWMOttް4:w|1S@L/** im3)"D''x%;, ֺU虞yB@ˌ$8 I1(W5qR.^ Rn]rDƈ 8;y+?VԵH~PKTA{epuTn0NL7dutw io;09Z8Ep(ƿ+È=_)cm3SPt.'p'zEqd<AlXQyGgR>O:]q{$d0ƴvHL&Puim%KfJAb@9[fzylR\cf p)ow /2!$_ܹ0I.Pnpux> =\mZm-#ԛ߰@oLAJVde|-QWЊ)KMҪ.Oud?$qP3S B ɭ @s/A:P:@'``t=>fC>VI\Z4sB͑W-X*Vx ; 9I4 Ԁ$fߕu Aڶo0ƥ+5 Ov=gM<tlmrZ[w>Sm>jmoqPE1Vs.-( ܒtE y,H_lKp ;%A {!֢ D'?sP$_u wJ$XQ~p#ͥ:s&qVK )Lp=LU%FSgYw\K >bg|"+\ןkx\iKJؖg׳#a\nh3_ Y1fmu*Y1T_Я{ }x𼓗^ieoJ>Z &$c;]Ed:_Qf}7ezܔxct&H#{\m*nrvW7'V fKpr5BR1XPc`,e,&,]+]7N>~3?P ǓRa~'SPג|=N TNݓ8K6$LLOE:c' ɻgrŖ^F(BhcT-,8o)diEJ}(I< u1U^ 1.`-27+V UY)ʵuyKV,׶ Uk6rnj?,F=IZz89+lhi+eA=_K'sbS lv4%xAm d&-wmLAwcswgtԢܶ&51")>E{%P~n\^z⢩[舠-Dj^GFԚ8sJ(n *pH 6S[PJ揮0Guf^ 8ZFE.g vpmw YjRJؿ4J8OC:J`FxACl[RzGdc\0eJ5?:WYjL͎kK`)﨩C>X"ZM˚%QZppax,8_m%⬔gRp7"0s\>\uS;s%)}`0{Ζ b <˻LG_z14Uxd4#D e ܃ / $X[{FSEFW C# iHS26q*JZ}oѬEvl}5d,*M袆-v5~x>82R/rKehkk }e .,;465qm@u7߱xIDc\ 3?^G][z/rUoukh T3e\U*Ozj'-JE tA(9:52H@n]RD@Ն-%Q;Z'=8clӇS]iha2{2KĔ4@~,l_S27 7ͻ.}E?uvǰSڪ9I$=%A|DRl 2"w'(YZǤ"4$&Y0F<K"pQ jk^lLփ7D:(fGF *蹑HeE=,{u񽇝o:ЎIյ݃ 6` 9GZGI(kϣ=(Ȝ1O;2; 2sџ ̇lq]k5PVfv|*OP?`P\6^|M$g 4O'q5 oqi.pnGZe`K^NnX:SRISMN70yN9̐ζeQLШ0-`4-O@4@rf pĻ:Gpqޚ1ye\RZ3 Z!ߐюaN(Z'z9h8NlL76+Dcrt b*i_t*gi fRVNVC8Z콇\s }O& |Ik4FF`@3OiDϋsT{k3fA͙?g8W0M޵t+>xZ_ZI7B6{G#Y9xm qkٴ5)J1FBB: }{Q5}G4%,c4dFnL| ^ÖrB 5D(,#($jtBW<O,c_ H񪣜!Y{Y?6pTP#:tc8_c,; !\_]! 3!FblAvWUTxbťA \='X(b?Ip#xZ.~#Y1efpr<5y,Z4I}A‰~$xo(1eOCÕLߊl{}.o|wgT\pZe8h`@{Qr[%P|xof[~:kj`8%:z,QW{rߜO6x@o86$D@:",eo1-qpm ̘V^Ԩ괵%GlK59#z4~N+4ĴmX`,}U3u)MP0ɓ6l.QVi}a?|yGKw`J>ewۡjMLEÍ&4Uf5?G"-9SH@ P0b4l7[FasRɥh\hB̘4Nk?W=ksxiAhuq'gԪJt H~Cta{_ቑf F^ ~͎W)-Xڷ,59wSzfHBmфw'P4 47yYRKXҢ,6̤U 5)G@;&O+{[u^Lo,3\ % $ I:B]K[<FJWqAW}{ 2Gm*F_^˒RgeoP4F$aE6/04!EdH"A"r4^H`l7sq2 _2Ίu8M!9=gd G7)5Pj4,j,.a>YUi˞1aVgcq00*tU639Á[Drp4_B2;ErQ[꓄on*wlkf˸b03( ~&Ok9`v=nQf /ENpqVQuSnFWyt,j!X˄0~HшsYlHٻ'J/OaxgKI~+qX,2t{ j:r<7lglLH- g,= K(C(bQРU,q I'nӝ*eX8- Q2ԶF38FM%A*?JMR4[c-:~g!W}۲ENf(/rFAK`V+2" p\ʲ/Aeg#9 ikf¨ /{t5~QPvմ=}z\7(>̋ۙXhv|k8Y=>? . Zc Lh*0!P#2 X8nQіo* PBrA8}âΩfsi _P7 Y{ZZ[^%OAU,싫w`FvUP)Q1E/6}8 S ̌V fi_"No |;ra׹1ju*;"~(qj2VANa&2$PjLkWXM*H;b&4FrkT $;*nͭbٹ0 { 7_,F!S~x=r14rĖ/{dRcq : *UY@SyV Ł-A )#Ñ35oLpXc`nHrkv"="H"w?䨴q>t\0Q$Cb!_>ߝ1f;͔BfkZ-Cw7 `Af"=J_ [:-juKa]"<476GmaZgk)l@SeDz_Qf[K[$: ~;G q:%w,;_u-`K&mz0 uz@Ϡ=538Y>`J&[RhcbбnJlOhF xZQz@c:a8vcd&ѵS!+1$AѵJipݶ \_^iݗ=yb_߶AʩMb!uʙ#fqӈg0{s9NI/BBu5b[`.A% ^Ꝗ$L)y3Qյ :Q|eTNj|}#;H˲8fVlxQ-T-d:ˀ2\-U=1a.GU=/LC4,hE}햂֏3ftj%%:* v60U䉮{#CreHLn~[ύ-JXˍ~Pg׬!jk3^BD<8ZY5p÷S׎ʠFZEDw2oƜ/O/#"! &:!sDuL c3$Ȝni|E }"awT`D0Px5';'ǂ ۹BaRoZs yDƇM$;¾@PZH44\l*9+P=9Pom6R?1ct"7ej9uY_RRQ "#ñF\͉A;d2kl:LnԗH3]TTؚcYyoG(["J$alk꿪>s0&(Ȼ c u2 륲ECj oy94"oB%_ʊ:#(/yЃ4 1?u 6h-{`>r \6)v1`{M4' _VLWmAx(ɻGڴ[>yEdw\Ih.nhd"S} 3MU\4{Knn9Ql%W{ K|i|I3[ ,=y춥> 5n`OqVhqiLBHg8͸%?B<,!,!u9shF1i:R0{=3@rM[*t/uhgyokpaȜ)Y]r( mL#%){?VnJj Hl2?>pw)$!ǵ}щ&g4L}g}4'- M|)J8;$zrG@Ws $6׊@dNb$y#Q.RٝKPfcҞ=)Xj0jҷ zm\+5I).=&G Z B+t>Y{>!|^@7hĮc&P`NqN+Dk26;.N :uԽ!\rp[oH!V>C{̂#W8]t_+WJ!&vuCzs ;Zml_Z#uUi_1?KZ찫No]H!HgB,"*x7O@b{uPciJY(Cj76Lf[h9ɳ*MMj*mO< -5Bxq+Q&n4B@Z!_ί]G 78"gi-RȥYP\%4$]Js } `Mx$:aͪ=bϞ7Sx穏(Wqn,7NPΗk\__>Č݅UBB,pg3^= _eucoZ1\jQ! yK菓H%"C;GQ%R\Ks,NH5%f`JLS\\Eh2S4^|6Φ2(DrX*k'N7+d^0gQC^w]=P:~yrLJƲ?nOJ5*~1]-d6ff10J  Bsz'7"Sx剖VFVƧ1tS(5%4BtVbU/Y~n9ss#; zXF:u`:!5ѐ5bfT*5Do%G;y/f2dך"t;YfѼ-+Qc"jb(dw%f~_}}@{-7jBĥ?ӿ0O[{P[ (.8M9*z dM$?N~ڱĥ^/p@X۔!(+rU$?i~22?-wD[lCbUǏ`p]5J58rfɕY~q 4! bpn JwU8,sV W-%)}G ϠcOhm̑}Y&fVB;$ZADvoAP.AGi%[`,j>\uqwN/zh[0 Cb8wo&à>Kk~tWkk(EQs az!M,<"œ艅uٻrBd;OpPvRҷ]mw':U`B:)Z?ȣ@X|wŎS'ꦵ]}ڕݜ} ccc29xrƔu.&%_ZbPi}e 2kyuo_^?buWP18 s$}D&કaAgaqYC}bcn}` F<jgД>-6~ 3~GRn)̂2blUS m0+jx嵟/Yvā($.<~u*߅Y2}yEdu3K< _ɰ%9ƅ9ђȨP^Aϛw$1]ZŬ^L_RkJq6'x'f3蠢=GU`<^2Dq'Ŝ⿎~5FYU֢=rR|~^誇A WH*3&Iecg⍦,cXj\|!{mw*sa$í'^ БBk?gয় ~%փ|I2?w5#*G\S8#$,Xmcj!í;vu1JBA9:Y= Zyʉ&NgˣG_ʜձ), HՙI7K\Y_1^cC2iт|:ZC}b*b45<7s?wܫL,pk.UsRپ9ݙqR|ZD&Ĭ'{'۠-TVjs+) 5QN2:-d(>"Ȕ 'PZLҏb0-O:ɋ;ΐK9XqrɪKHm(-kB9G(Ex{?: NR=$G1sE#l(چ^iZK A@ IZs+ X)1K$@cilWsZȦ/ .uqهaNS3 ~*OD]6ThPHXu'a`%t;iJSƸha%)pO$\ i/$(}آ)SΚy\l)-7c*-EWp2Bc9GE'tU,U!W&rʻS@Zit0mA]ç9.|҇I5ɘS ^7S m 3#`Oj)[CP>d;`< #_hͥ+['lQg!@є<3qA+iBįsKSߺ8mI ߴKsVKhgXU 7>CeRmLIn5%W$,Q::6@P/֋[w'aoY G!ЌnFh]c й)ʺ'ME/؄y[nߗ#1T}]jAs}Ύ0ho})"揫s}i͐S?HF9QLo~7a[VZ6_t<+=^.^a ̢ءLq!~KV`y,Zrom%r]\e{^Ե؃TfBJ W @%iI>VGkL驛6q3-O=}I=ɞ UF AdX-gKR#!72kW}&{S'ҙԏhGxpy:' CYN jt=9KҊOZ5ه\0F ּ{J<1d~A;f]x#qeY3{|Vs]'94~ %S@ Zլq[WF.0bD,ѵ0`qQ޾Ԟ8i Ұi߈ﻀ t F/D³[FܙH `]vU2p4}J#!< ; gTQ"P7W@,2Alm0Џ# c^gPQ`QjRS'k/FEJxu{*<ՇH`Q07?uA{}% 4RcM3)x}Jt:u%!3 R,_RlX?f/j~f)#?Ʒy,(0r՝;4JGOb\` XYK+683' j_4_~)# ׳o8j|s 2z¸1?7Uؒ-xJxs*1/᠙{aM8Y]YX`̕b*ԹЫ#=ϯ<^|.sp;΢._ .,`_ujj=)ofvͯw _gSK8~c_H#I"QXRFH¾xcDFUeBB]M([QV2>! >΃I=KLcӚZAX^w{9 PHHk^,Hr#Hӫj!^EqϚPfQp Ghn95"9Ty$ هw?jv,Qzb$="_w/4~xN0\Up36—9B5AӨ~q.p&To#h1PZү0 f5(+xv >P xl2#_^kk_[Lvz83Nj le4,W .KۮuJ  mcYޭSTȥbPFOCzJ\3֋殉 d|!n_h9fY1g#S~*CcՔ ,hdCMox)Q ˧ Hn:%sܼy8^v[⾜4 T w9ΉW ICsEw; FmcӐzeӝk[ &iL}=]~)ߚ!4lh3L!2}>(&%,}dkHI[[XXwoy27Ñ}N$~JMH/y(UV^{EU?_&L+\-mWYKYO0ߤw T>d9GFGd>V?_ل{kwZזP=Fy׵YѰ@JCUK%BAXZ5hNϻ g #bApᶘ%gG5bWzҮ| \ȃl,^1z4?}޽:A +2lwΪ{v.~FJbRw&vGHU.]8'ɠ*J5kYڄ(GMD7{0)9}]kOl`ta&QF9BK dTZu1_bvQz\ ;.ڶ}"bN)Q6O`ʕu1~D A-"JQM3 /E^^Z4'χ@B ߳cW-6ơۼDH}i X7y.p;:ȠVͱז{yq牣O #|e'Q;+Bt^{1+8Q VyhlRܔKpQ+vK;`?o{rOu@@i]E 4@տ'Q6č2@Rǯ'i۬,ӟ 0=U H|/sY"^WPAD=pdL[%*Q4ɱ0 0|'ij]= C剟q\^mtK(t [0 .XNiA|VGõk~Q"*)^6t(x DiHw!Ft aC&*{sR"c5r41\qu6.?,+6ylpqH- |rHO'@žk!%Of\ MŇV - ;>4bT{O,@xK dύ\İ*)!@|/pz1tOPQUPK%/u9949ryW aw}xJ(xڳeCtdʺ?wߴ~d{bJ@N5H^\* w~AmUV;x Aºj6i?j՘j"%XnbהX_ƣ)1B@R߂ZqB Gs\sܙ0փM L"Gd)a`,EI,fSVvPb?.Ůyk\ȗC) H|q=9/phȼt>zj~8¾b¿2m:$3w{OT혐K@N~wtѩ1BmCY^(&T *‿v+w2۩gP \BR1K}fBᡬƿ vDg&|v-sQM'#iBs[@m?+!oF;fq iMA6u't{'oR\ D;I! "5r.-SAq[RtxR% aN;"Ul49ݹ"HnFLzZOM)<( 5[Al!<,Z3i:=,nVisKd.Gt'G\D/?^<'ZRoYSD6{UA1BPܧ!0vaLn(?>C?4 !-F`6* Z'#1s87'dX#ifHDB00/֪<7rkY}#ffHn` 1To}2ہ` 9Qɬdu0HH `s;x~@K*z :[ V0H)#(z|L؂*JHip? ,*O|U<]{;fyv,!zSRX oU'w}Q?p zUh !Kz9Q-WP5j0mʪ"u)'c)Q8ĄߨJpZAmާFeg]Ix.`sgα& e17+ +yť ;OcSbJT3׵u}/d{Hs'K-M_eQI\ g ,.;yf6el6^$wEC)!'UX`Uv_TÔpq{{Q?Ztԕ~/W)\js8#+d^QGX' \Ɲ.yUƵrpgXdMEW(|DwCUtfNI0bf KC? 1l7gVgnfci7%Hޯ7u5l*![*z%l/zs"1M۲|Un^NDe 9Oc|=:1(ȁbg5ru!5θVD_P0|P z2,x1ij%u ,fݵ֊)=d Rg3՞B ,!8Câ) QPҔ7^N8֠c71`lj'W*e:4O vŋM=^h4T@pDJf\^Fcii-=cBsEORj+h-<}mY=8ytMO;z+n./"h]|hڸ:nFg{#Q|̤wMnFde R+vۦ勵58lӂQC6փNeU铨vԝN>Y{k?W;\XZ7޸~EVE 娩crtZlcʞC'lXĒ~ᯟ̩jNʧBȩRQ1TweOEMbX8,䷧չGr+VI96nz|"ݎ.l ʅn !4gW ˣ);Ό1)s_ e~ؒlY'*\vc hjV}@mWI~6[Cb0coQm6ؘ&о{'t U_ɭA7XVnR*.𦖣/GWQ`kJ̟P1*)XB`QUlhAɔ ]"+xSTO,dP@KF%ۗ;3I";7iNc=/htJΌ[~4*}bGoiIN[.bOpN|^M3mqa;gRh>"6{Z[=ΗiMzrqٶ@ ѩ`$kHoyxoZnds(3E>N>䂇l2ﻤK 6mMIk~I_ ZZZμ-t5jdBD&:j p)-ɩ,״kk8|wv$~jE΁1@GA3=}b վ vس'Jtot]Jeqѯ> nxY D= P/YgLrkZ-@Pmx2qrl'3*>Xm`Ԑ!}Ւ̾I`&At _]KKȽ ^bq6+঱p_y*چ3&Vx l+ʁ\KkWCϰDڊhGY.Q; {?5q.' (x9"ξ1Ikj<3u z`ZbnH4 )>>h/iSe:^}rE,^Xlx$* B,ڃvDZOVx__"˳IvB5M]t luA`ڲ+W %-1s[ n6(2E4 '!f\08?怏5$TBP'z CRkM\y;MP+_&\Ӆ̢Hd{',r7BY2hEu|gFRc cKJmwl8Nu/~63pik.Wzat͚#h|=h]G'Trf>wrfyvct FIACrͻ~%_zRMŦV yOM{Mgjn]muC Ctba>T.~39Li,PYKF,7EaɆU8:vn$}<+h0՟t{?cgOp 1;G#@׶|jh} oT/t\Մ~[\8wYeSb7zOUW}nnPwZa03twFJ;˕Wƒ1W43̶ :+CհbRh2u[JxXBӬ󟹇 "bǾ|!_dz# s,PD9^'xf :&=rQ t-UMF؞hv`1b^/.n ٠9pA'׉'A-%!"Gē8!qޚ~BE刾`]'%AT[ٻ=WshJ b>3:AArʺz)Z*kjC6T\.'ܕCǖ[] . MŬX|4Sn}Y73%тnJ"ᒵ`wlwyz H 4)7>컍-=|hb ^œ/sm}wS_!e>0#Auc ɫM6_{<+A8b) ۀ& ݄|R0Bbh߉3O -VC˿UN ER. lS5V $[PP8ls!Ы4֊ɳ&}|ؐ(oy}QO(̠B} !G1|e+ҭGO~P#*O 1h/U^Ks$=9ZY[1zC䙓o%;߬PGh&N-64:q6@Z }U3)1vR RSGRoHihp;} w$2{3YH#Xa6iqu2R pjs+*/Q锟k /?,2\}K~/\}-i񃰭I<m?)q@trq3ZU1lclSs8Dž#?ϻI Ջ֒i5b6 N$uD.1x?Nر3YDq'Zlro.?ME ~tME BQĠ} 5A/pJfiW GS+fCPO '^B]*duXp5ɻ-V2K3Z< =B5~YC.il]pd$K0;nM-j]؍&)p?ih8 e]aVOHl @{=li~`LwtdY4ގj2#S) դBu"s$A=)/bQ3|j/J*1yi8;ISU+YF豢 A13&7^ϩo? D^I0@QA.ߦ0WhЊcF&?@sxJ=Qv0J^qT+4]t/.u(eEFЃUz_!/=[L8g!XQ|`FUX~o0l3BK~]iMeG~l~* z}UB9 oaL.+u53.͇ޚ Ý[NFp ;E./ &1GEZ=2m *}M1 T6NoˌF6cJ.~_2mO Fvi1guzsY~ "F4ܽGV'QDr  .#cU%TJ7 v*߇F|JpQuNqL557k*J7haH,(u].pƩo.0~PA`H tݓ28qºcR-w+@֑ϊ#ju}A%|XR`A-ClA^~4G5ފi֥Hhc{؏fac a)7vr?蹎s̝b &@crfWţ*>?HJt6E, \(!?ъ@îTُGt֙ӿDU~#۬#|1UI],u |>jt-`]$˂>#HU? T.FuN8\ki`j`dX|]ht]|sזt1ӅF<ߗNw aN(KϧI:c&OІO8$쑒"xDxNThB՛-mi#&w.,r6 _/IߘWBUEpVT -K[6׆oL Jg!j7mKOd(](ƽو%E+ۃ?Bj/LiBc23 ?yui`3"̏D+@.A=TeMM: lM^;r0QrEb쥂ҺOp0^mKpN4;M~q#:,w(.˳2@&+%~kw2Zr3pgG XqU,׺Q6Z3)#8*+C9:FXE!Tww!)ji3*OϒX؄Zvc< P. 32CtRa;&LRb#(3IsA8/c"8Za҇_Y*ZS0{]W3K49X -VK2`g>QH'oWa+33+J;O[f6 kʁi@9zxZ92kwgdW*lӷ"|] STWG# &÷ SaJ%έF 706euǘhY- 97 Zp|LbCV@$RJ b 5g)m]굮e_h @VmG.KH_hed,#UZ%|!gq4C_kt-{{bU_ur,+p5{3/_|\!%}~*@VpAKm<)6/I~9"[~!.2]٬gkJE(bu'WbŴ\) ػƌ)i(Ot/y Doz.<C+$K]Tv)+izt;ǃb/ת"f穥.dzU҇>Kfs +Nl m|GWwJ]5Px Z;j0JԢ=l6>' TD$oha^_A0+c"bG?:CGC8 xVBn0wq%y+ZyК\k:BXՔTe#nzlk{ jiU~ǡ [s[U;* 7p=Sy^oE[[wm>__尹?:Em ;m{\PE}c7V7n#GBgL$ >I#$D9589+[byrh2.UӬ l"= 4p88t#,b w(M px2@U̿n0GI#)BQЩVƉ;+g?wzϙ;-FS{VR^:['wm W;78{oPBQ |O*b/Jr"ᒍ!,{eR 7@@*qZ܌Wt$37H|u`V1K^7eR(GTZӷQq5Cn詜1^7-%)hH$0م`L>{ߩ]囻W*T X br$!Uhds2~>j} h( (96Lo&L}:1jfZyv%tZjʣv 5N`X68JVd#0@Z4!.yP|e=bG ܺ2Z}[y]R\_P:_* e~;1(/8I;_0I\?wb8Wm]%]`TX#O wPy,Mjr>+3 sFQWB8L.a#`-Y?Ml3Dm:K\{޻>PҥsG? %y!x c7 #f2ʒVXmڎڽRT,QM)}3%y9Nܳz4xr7fF>C<ϱ ,!>OԹg2G0 x6,ֲ֧O5̡2mfK;cfw;u?DW/|'RN,lgʤj ; z]nOVjSRb&߬gh}_Rbz g%O=K24z[gߋޤ|u h%#-4u>[G znhbDʇ&ROGћ*N,"BV U5&G5pRQ5.kD.LQ9$|;@Ͽk !V&j06t"~YHao͢;^:c|ym?pcyM0FYW" I. pi[Tg0<zZ~Wް'i _"+a__O? B7-<Ҍ_?B$rq MV*u&QGvݾn"+gNq7?I$Us!S<ɬ[.ROcsaڃmaqwHG,Dnvu3׋uc='9;{'t4/yiIAu~s{x[? UaW'2fS9Ss$ᏍFCNkEcY5@t0 ]Z5NdpmpFV @6NB/kl`P"}bdHQǂ~;+OsqDȰ/Z~)V'C[v DWa͝%Er'^+C/qdIɲѷjѨGffIrNt"1v8{CK&PO䈗d_Mt Uð`OȹEs, FTC?K56}y{t%_m {]J9I8Pq$[DzD͔jl*țі*?*t/(Uߪǚݛ,j q[i\?Y`* ga.>)W˸Xm~ j p'gw]#hW !͟G )FYb&}-"Fh׺ J^c2y0zdӉJUfב$~Dux2'X&:F4)6a.u |WLf`nݸ"e"cm>$i]mgxJ8nɸz&|hA yҹz3q%yNiKt^5Jf(l2-syfc_G$S$B; *2kEnX5tYmC-ZR[5bDžV_GMbEF4\ HWHڡrgJssϏHa#/=\l\C^v0EPѫR_.R75 41 <10PnPOk3+eW'<'? &`Ticޯ5j iB֏Q鮨$D6S񿆴 R`tnv9hIb!D3N2ɚsq"0utrsc99(Ï Cc8M<Ϳ@;0jD`- +rӗI?"+i:0W†.D,EU}#(qEs1;tqgXx&> 8s7dcᙈbUɾUD[_z/#0 c<nQC}}LkL*y2 A@(qAN݃lSDрi%A6k54gcv $o8zŋ8@H.koMNE!ԫy4i~wMVe$;4}4# ̋ToCz Tc' 92P@^Re+zYD;KItM_¾g},X{wÉNRDhU7#柷{s Z̓fS?4!+kIuQ:9x{ZhRkC! ۅ2_R73;Gd<(@*T \q)SBm@"?tr׃,؀f!-ԩ?!E7 td2%`AKIi?oasKB&H\AB^Ԅ'L||"/ZS.w|g\'[${5}9ZBgajӸB@|wH5\a:~As1{Wa֡dU]Sh%:IZf$̊zXEit~hNuR*8.ӉՒM)W*N7{l9%uihG[[ ^18,-8'!PT,C^X<+[nZEt/hZSP9לz/z(# 胨VyDbGda1uo;LIMq'hF+ C\KzR!rrDg[de.4+ /Z,p{uԗqH:I yb~)JR|AF8 %ݜI=&HҘKMk@AuJc;_$>ե%#:cD +iKOAMT7V&jW)S.]"^OτN$pEM]-{Ӡ7Ak yiJcJKT 1%pڃ{ጫDHäf:x-*hkׅ 9z/$7ޑuI#hm6ڴyǰq=\d[Im٭s [aE@ ¡\LzHps3JN]jCDV~h5IwSMz*+W%_igctQȩ\#ŀ*MHWCR=X'xuz˵u H  DdUGi7v9x2f֕<@+oj yӮ;FMٽ$U&ҝxw6slې-I'6|nj uG8Cfrt}Uo۶@pj"{+= ?)n0 )'eᒒ\Ўک1F6Z z7fBܷĂQ}ѱ*[IrX7)+ѶB"ư!J%_z#֓Z9bB"SӕQ]ew5ˈbqk;#ܛe{Z'nI_PQR MS?O5|՘ $:)*0tc~]ۇL|CޝOT>i΀M7i01$y)rHp Q)Kőb]nG?-fŤVCNhԩ$T  *9:Hl̟~3=UHǚHgE_y8~W$z|l|v.H'%"Le]{ԥn'?[>z.`{? d6Q"IsIV^uwXM|ͭ(_R$4Lw9qfvaf&Km.U63biEu#n3Jg@>ȵvڨaCbq70=ĔP 2GBxy}(i0 G8D2d"!#d= 9I5sz>ޭ̻T6~8$ȵ-#JZƧ 5͸(sڞQjsVp/ - '?*X~_Vdj AC*aМ{@:i Jw}C=D`8ULԣ#&f-uh<5)2 (Uc2?iI%'}9JdTij\0='*~bϛYި- b|q}u(-P..Pǒ4jӃ\ܽсKQ@#3TKݍ2x\s*@ZͶB _eȆ{4osYCHu2lŭ_ FSkhYj#ׇf7x > Hi# L<#ᮯS$sv":SEf>Vܚ[E>K&9L'uEF][ץ6eBa(bOة3A\uq87v4,.2i%F䆹2fMWʧm E^IF~6"_$H!Ϝpb=E>/wQ6ᷴ$L.挺  %4Vw|[Ɓ-T _؄%=7% Ɍ0'fKWMRa,;x6dKm,9H,K[:BZ-Zj^´<+؈y ™yHx:xI^j ;!y q;eeAPעjSJI $LcscxxmHp2<[vO0#gwӚx ŕC'l#x;YQz:Ӈy&A;O;c~{i'jg:_CT4Z[F;׽m魹+Ax+\?O޺[4yjtf +_-8P1јJǬ8>kA@:OYz6MyC3#yĭ!\r4`6~(́xx^f>FOȣ"5pWWjРB}047YCAY;ޤ^6H|hzμt8+[W. C>;"du'gbrƎ/'rIX$+0E\QRZ%o?>#nmfI2 нq u78f ~q%۴A(Ǎ#xi]4)ы ct&m~? ߔOË?(0}%] kǑne;91v#Dj%a[^ &m|7fNvOfvd\0C=? :ay ҽBukG3U~qy?YcuEc(tPS(uӐ],yڮO& b(AW{zߙ' <7=h:TvDl'k727^يgI?#eD\ZOȉCa~{40|i\DEdj/=m哂xSL0>b>ڙf8t,*YPXϢy@,՟pzSRṙO*0A4K:Gk-{6~ɀ1+\EOن=vE&IZ q?@zc)+-l]NR _1)C)#G؈dJ@< BZ($SNMkzXN%"HsRoAeҖ+ؕCzk P W5,[NL/gbH mUˑ(MG^%M!۷C}; n987TDH>qt{EՇahO66I.ƹcK0gl WqPq^X&CӥԘ{iT dL&MS.aW WL0=շQ7@z]}J~CZW>_&+zo$;iLh_eITe6t٦lT,p *SN>X)& ?>W woҘ@o ZxF@c9Di&16LŇ<г(ÿ)3oqUL45'GH}5ؤlFg2s$u[X3W6iVI9cF)(px 2epV|. 94M<@aR9Jӓ<YUѧnek dGTRzyU~B^.Kz^ְL?{wAU,:Q7uNENI|[ :]e/wmS mT3p_tqo3x_Aq֯#sTp-xElneǥ(witokF~`h\K *|_AJY`[[Z@!khag0!pW9%fI D.nDok/JuuoLC'EWDԋWgח3@$wB 91GlᛯZ#$aUαџe:TΧ>(ѓQ8YLE{$K0ea*N9ٷpDeS+mp|Ȑ^?}T󆋲L)r Ɗcb)Ѵe"pHsG8$(,7g]ed#|\JksKS*#h&!PDFpjQ2cEFu%s+B"pvDaDu8*?Zk^u5 ?*@K<Œܟ)A@3E1la.Tj aPdBl4&i @$')v% U`n,0 F=BrɱPE{>ya zX(O=kDq5''g|_ޗU^O/%Df?|@.Q@5r7b$IN/H< N+@ ʪ2]_wP1PTM~{3l՛5 iNxڃYi_LJkvhb9̔Edr]ʯH)C*O;,ZC%.BR]ee(\jmA\GXHHǔ*g!55?{?2NSL3-@)y{VY{LQkL>|3I*qZVypz5]$Lv)Y5fQ&  dQٕ{uE 9Q RďL{{^y/Z G<Ʒ~.f%xgW4'sSWKKz\Z{knPv2WxFGĮx){悰;Wh_ RC+(+c8,-xpy ;VT\Uދ"XUN%+pE$XS B4 YuXK8 'vHJ;dgSӲE (jz kPK k.5+5ZT0 Cf0?'qbLut%v~v*>hPMv$݇DO`(-QD˷ZJN!H\]׿X_VU2/J%!ɓl>QQٕ;ƲǖjxLd 6Xs˻!I#y 5 =%8KAi#rM=eQÈ%n"BO u?\I?Pwar}k'Cŏ;rgWl #ॖ$;[wE3c'7ShJ޽Iِ Ʃ;݈S ۶Ȧ!Qk+qkɄ)Wύl,!@@P}@Q=rCK9'~BN!֝﬐0q ƪscScyQ6h?#DA};eXQҹ>z4_&3|`ɝ%8^^əvnPfkWP)<2)$z3A^4ٹO\ңi8X.hnAs(RE彣wR?')ԠB4@Z0hd$C<$rE,ȠK{&/of V,BWdtCI~c;ZXCRN#_8:hC+5!̍,8ԯy}p% 98fhF!'#-ҳG5LWe)FH,ǣGABy)W7X0ad rMˣ@#Qo8Y?=jm֢묳D3Zٷ箟 Xn=yoXh1*V/TAVFX<\Da?"-}WCă;Tim(~H9 jX,]M+xq&5sOڙlʨLt^)-ZZVn\i&WuQlx6Q/. d+X}tC[vA7(8٬\(<)G u)RkTdmLz!!<!p=B䵿BMl_AjoW#9IyZ$Bq5kup) XkRy"?1%!dۜga`Edd`qwZb{t9 cRD}%O7]0`l@ >S; 3ඹ4*cBӻc{f͸C^L=CqojoPŃ6{hE._"oR扲0Ras_ET+BQP̔6(۱%KW_mO\Gf ޥzCqVיvcrqZ `_8s(s2Ы~dcy^P<L_ TK.T81Xr]q6 g()'z!aQ͒߮2>o7Ah$S\;u_ml\ѣJ857Ld.KUr6̑O ,re6~Pe}b$1łTC]ÂUP?y8/DLO,bV$7͕ \h2WP."_.q\Ym^EC'Yۉk *;7qfϭ5KI~}]K jtqur}ͷ᭸A?LCy@Nqcڱg9SJyV/3(*!E4JUV,{s1NIjTCn,Î+ۓꕩ9ļ޿5vV7}<Kar21o@F9+TshP p y>(CBI:]]H~tZIlމ 0Wn V=7[~T-jӅ*Xjts,Nz#z&{\DH~ =C|A66Yġ"I~2C'#8^.\qE^Lr~Q p7Һʀͤ>(@Ч-B>ᅲCEa *>j#K& +*PU(qQ p8nK* Y( șpMGVQxO쓱qy3XBH9lA>h!Hk`- av8"P2hЬ^WR5x3vdPKJJg,99%hBֻ&O5G!IW̚ڀȓQhƭbv>jxֻK~NBc7|^IJgg4Uj7awQ0Bfl裘^eK={^lݺnQH9nGS(@;X)-LHi?4e_?}H >1Ʃj4,˂aS0 eCSXw'ڎ=O19N "kD|e'yi)aX[vo5+$g(=DFVpu*ƳDx75%_tNwʜ[ziTj< uCT,$ξ| Kv/G:Ӡfs&noY}B i)"iKPdn%b?X*I,2?RL!-ൿ'pZMISJ;> ozjutsJ%:^&_gN dmϪq-[jmC{AHx(GEȧDiMxZ=|3[X3K% W5sTZܤrrbnEz MW>}c[X`"?|J{Wn-Rd̤unc`]ѽci#_N-7+Io^8n r 0'昚c=V"[aF]FWpl-Z7njOez եvyqyM kvubSG@glRW2'V\ہ q˃u4H%+,zk ԃ!=*"^ܼ¤5o3K` 0J`=ŁL~0Qx$ƒ[3iDPLNyENtep>.p<ُ͉{|cm?4Rxje@mڛ_kfL9RCd(Lt0鰏?2k$lS8ʴZyx|>^Z`yIqH׉˿t?D02CO^{rS)FSz!+ 1X?ū&Ǭm~:eB](^ `"c&2m'E)[(Ǟ#.޴7VK)]b5iWTY}#+( sYq)y@؞14R;{vWOМx3eɄA˛g u;g 9@WЖ5!daFSR%^ޔD#%؁AE?mQGLJ.2R#cl#}U X })'tZ 0|tz ffDD |+$q}r )\։'A~,^d;C|.X;!䩟^wT+l $n#ю.D Z+h;HYlD3"b pYWKʚOatiZ}TLfT{k@WU9TWW7г.h@K"z^x[܃!iиAYᅴ.ɩ~/m̎[^Z=4L4yU2o:'_B_M cuXֺc 7pKg{v"<)4k8LSJw 6!fks qiTt<Hyy3[b* ja&JAw36&оCÜ5OQTCyD1[ަIsdaq3sQbZp {jN֍Vb `:tAb# ;o i)Tl<3Iz; uEPH8A44 T(;0: p`tg3 _tVa+O:j uudY6Rд #L/1+5ȇ{3<,>|@8S9HtCԦt6NC/)80:(A(*rd-u5Xߌ qkq#z"p||xM(@v]);A0#ϻFIK"Wp__.5Q0i(}Աd#Ʒ.7V$O;T*ܖkAۤ,6P L|T4+xkVY#:}pknZ7tz $t_W{Xn`o6mW{ (BȐSVQ( MogȇsmqET5wT\EL V<폸S}w{@gɜrAdaP\'P(;y_P*/^щD1|bu6gxtK3٭%l5oQ-֐E{&AnL4]bh)X'@Ѵ/o1~T15MX]49ݲ~ iO0Q@Swmn(JƃB{t<#I |rkE%>S!`֦=jOoFZ,{r r=Ó Y)D\rh>Ow{ 2N91-䂹(eEL{//v[`(nu͇,NQaK&MlRhc*2KW Oȶ(<JT qBvh;1[ &`0N`__V Mx.uUb'6 z4ay<8 u:@0BowV-ⵚ`;k>V%$u \vE?$LKK+gQnG!{A/&YvlH2yP:>&t琕PϢ{I 28˚ȏF)|Aθ QKkp7A' +'G}D)w3?-1|g  Pl I(_zJӻ%$T#dwA]ylvS%K(pMRD4wh^`<JռO$\sbΙ)-3)[1,7!m`4jpǬ TB~B-ɖr^Z\&ZouSj0MiU%5ŦŗS' 9@α'kJWݍΘf?޻6Nvxd3a]fc*[gtm`\o#ݟAH'ZiX%1EpD_M1Z5ӿ}&f7CKFD#":Zo]0LNG'A'[1bf}vaF8{KGzsӡ ;r(:'YKZ=J~ѐV)c!zJ&|&?MH;WӒ[PlV겵RT=|qh]<{sBާe,ʊ_l?s>!#y 1:S,eK!T%tJafKKo2;+.KZ³t uGNxn>2€,[}~.V'yf^%``sx9D"0Zf`-f_ydkEC߫j.pQPݻ"bqs@T_ eA.eSEb-FQCIC"c.oYlo'̺?" 0i gci8sC< cpLnazwNWo.`z y47gc)?ᴒ` 0,nF5ySf7" 8mZRM@f(Knf+5t8R7)4}\.9nGՋ1vY@g\^Mr)RU"8c땟SB'*1fop@DyPKƭ ĀA0JLpVs 6nMK ^ŀT5seTR<3IzL\" F5ф¨ÌK} M"F"O 29$.@BqE13oj.)A-;M>uaZ.e\yx EjxE|\I_D AI☴AcJidB}}V(s.sx{*ܒ.|M"uR}(y b V ~Lߌih#!WBh]_YOH3 DEDf[rO3fTLe iQfCrL9p:\#,9Ac+{g v?V}tc~LwC=v%u7f~:䉰DND\4[USOFN$$}`Wxe;2 ?L|*n1؜]{^u xğCrP vRvT!~r0zdߤU.&D1V=nsz<ף_i3@Ðf{ ء%(8+U(v ?F#o2r ZL{bTqcըחO%MРɳ[3eN+M,P!VZkW ]IXqԁ ?}rqu`A{v$uULUt:C7(afZ"m۱_xʱ5Nʽ&Z'?QȏroHC1Q"\Ov:%B7 Hqcʥ 'Nw7e+lV "4Ɠ+bN h$*>0%gcW2ߤhbe[F'x"9U#XS'hFMqͭW<=BmtG\7y=3TіYN,mr 0s?$V=w$8sO|Âm{) 7J!!En"'r}6oc(fk,bG2k-~j|D3Ws/JPn%-ViȾU2/TEAWwU' XfU =f؉5ߵk׾}hhzNvlVήnBgdi9ԨPo`ߺ1m[} @w۔$)[|o_OjkgАti(۸&MFfFY]ؑbшmyt-9BˮmwC77&\vkb "BiBFd.p\CV>+ʌ%y|!=Nt6b^Rb/MxD5fEQCXWn;i<4`7T&r JCLy/3&n/N';ET0[OGVXrd$\[m6@[x+?{VJf?K)%fOh{~hU&[d~&JlrwFemOٺV2)ZV!Z^o*4b\b`?T!ɹ@P5wc1OQxGC87# >VI*PTڴ(33XIN>ϓ#Dq[(ez`|Xps"r/eEQi`uZWP`!lZ)obx w̟|z$=R(ۮ{hT{sr ՞Dz4zHϱp0,fv$d;9HIl9ŵFpqpXQSP``O6Fp_}$+=?0rptM*qj%_Rn\4eJ ,&$! PHͧ.h-!]:3NYV0%cvp^ėZ@ 0R+l8YaB(bEDbI,³R1?0Bǒ(a?v@=P02*:ݖJU;;Q+Os|X?D!IE-HKRFr S"Ak> [qM"Ȇ(+8ubMFП*22-,cu=u=q7nH.b7JNd*]v~]$/\j${|/jNJ~p%/T1~@J"6U:?5OyyMA@arFJr d ˌ"wiEpAsi_cϢ@,PTTd8I5䑆dr%̝.5:Ϳ1詨- U3;+4 Fw .6]vcXVpbc>³,sN1/?y pL)$kg./bBZE=5;SSudVݝ6O-+AB0mF\bJs6@zc'>Lc% 2ڦ^ 8sXLijP%]p3GJůf% "vOk2JG?/\Yvx5ڿZ=P: (Xb+6PgHMdQRqwșg%9&ѝ $f}B碉2Bf1 ĉ|:[y'G ߓt%FX lW}ٴObCQ&ξh_E㞫*)/p\2?eR;(d;&U!u㦛g} ڟ |[ds>Q=\]OSj_/-H, B\`m*}cX (2OXmmu6M*wu?xeDZiA*.?|FUuèj+۝ejQJzih)]5PF{q ˍK`U;JHƵBs@b\i_g`D"tBN ɰBl'bF ¿CrÉi.GTN0&yM&h]A}yd4P6/—~Cq 9#ZE@)qkU;1=`T Vꀀ\oA @p(f ]DHg738b"I>hXuBr.ߪ02ˉ>U($ PhQ{S64~j}q;iMRkOdP)\̸zys2L:p'à ɮ_6OL{VSbosVZكp%Kgos o |'YP'wuh4ʷr`a FV3\x^ضX|5ʈ'3бN//]hv'|hXx4}L}aJJ $t7O C:XE 4Ԩ$וuI{wp tM{ 20OGЎ)}1O_E:%[)} h^;U? ȊNx#@o&U؎ov#VT[a]/}eW.#ͪF8٧zh/0x2OJ _s EzwXZJ=v׎]'nN b3($!|zX=Qe8"BeَԄ&&C Gf Ip6aŧƷ{ y496W|UZ9ìLw~ܚ9X{Dʅ M VbݎeDRː$4M%zh# K*R؍\m"@Ŧ"Sypkjtl'6 R[b*%t:8.)$-nMHvg\w{-Dj먀Qy{>S8W^ꚙ9P'C̛'0t' xJd[  <=W733"ʞ #Tn+eCe]1Է$ù2hPS=^~iCVNC^2p[MVҘȽv`b6riK - $){˞'02B-@yp_:ޢIe)%u|JR9ywNX'30eq]^SY4ԯ/1"\k>\xLNwP }:(>{&>>I:.ZV|u{qoZ;ded AMML4 Ca $ s[h! NQ>E6pju g:AlCEqyET[4ެJ-cqTi(u 0bO+u&kr0f5[[O aLyTT :#37r oNgɲ/<^Zx\}l~o/hѻ#;eij'G9`9̾ie$!=2#9caBscdcZwy{TZvMeO,0 ϋ9>ŭ$ _a@|'~hS^^bd]I#?s Y a>EV 9ǼrE>c%ҔӴ?t#vGA{ag?pWC9ı/C ʨ+uC7X~YLfX*2N;O's* \kp<TN/ఏaݧBa1e9 C.e~Qzkȇq`S#mvA4k? 1X)В;@ ?!%pqPo'^> _Y|qY48q{Gwg5k o{I ]lHu&R1fOgXų3g6߯Öu\UB E8밧ꂾ`19 WNC3.<[ ̳YIH1SQxzP-Xz ʑ\.%q>Xu3gM,%~u΅Md_#\O \AMQHEoL8ʜ -_ݻ5QOΡUZ g7gΗJqg;*<1~׸Z2I)Q*OFKWjW%T'fgtOP^O9Ž R ;jȂbb |%+va}3D6A}o!DqN̚Dwձ?2uJT_ r#T ݮm;`*K{㿓;5/WT1T ^\߅# z?Qv2$a'ΣϜO-J"c^zV0ֲgTh!9ӘH5AG#cB&>ܧ,2.qᛶWԨ3KC)b 6.\1zا;TVpy u|sn 6iFEoha&h e:n/HI,Xz7FJ13f`]q:p0~NZ}TxN'-xT.EıxͷxGGa}_&h {G lb87L|/UP ҙ'LDhLkO2^TgUc٫z?: gd|Na^7T<ՑS_R6G(=# $vjtG@_5k~+0҄h-˛R\^|a/y.鉏4dwW ]r߶׊ o#?y䗔¿'4b A}H޻WЙ 1؝Q{qڼ@ JգӮ7BMkrDfClxZYwR=euݣ_ubylld߉6nVuDlX%Es0P] ܌V|0[4zXN=h[4>3?4 Q-Qhܽv2-!N53 p LG7;ѹ\ԸR`x\%ެ3TN{#< @ 4$-S{/Ѥݟ>u JD2,~-e|bMusV PS(a߻Y˛9d/ۖDt[CbsNNeU@@ūC1.bE:(cFu>mlJ뵦EmMY?nCyet+Hbݟ/E۹xuRn(<0|Gx>^CU\lc P)`%˷4%O05 "yGfpHIG)N7%\ԏtn/I>x1]۪3KTڭ~^q^HkfZu)qR3 z @чfAnW)t8'MIPNfM]XGU{BǛ <8-픞\:.x`Bo 0#l\P NxsىgKyEuk.BE |ڙ6mepٛRmjHK01_r`m]M_p§V%bR?" ͘Aɨ? ua_O,2#Vŷmw:,GmI&#T1˄w> L ^,.{,nfX;3߶Dc/|yuhבcy168D \^cz8RG&r~Oס- ϊ볭:o\e>Tm»(@ aOo~yHqf)rͨ|ʩƄ7 LI wڊ&X ED%"5+!lЎ\y6`i-on=jmf{"BI):Zxb0>q=&P.nHufdJXpӘ3̖L ny׸fxIIY5xWl@,bq7Hi[c azS@nW$;eA˟P;me w=.zTq8<8Y8JM71V>%>?onm{uE2xbo0Wғ^m=uOz*%ܺNM5 E;iZXSd5oN¿ipTv#"א`.RZɄ![UZ;,?YM׶rž5^B$"&Rږ:j`4髎4}omq?k(Ҁ՘Ҋ2T|xhmcS+;rPqSL5ummה&5b-/H72}no][g3Br/9mNVRD24OڥG7y2nte!#%f@ c0"kڱl;K(I dxEs Car#6-&x@t@)No Kx cU1aYdTU0ޚqpt]dP#^ =dQbɽMBG(W%fiNbVm;+G܉Ӈn,"yA卟vj.pȭkN>"n]"KwW \A<{3r9 y8  "wBV[/Oo2Vc^I^?$Qy{w:WΰY#:%LB:2tf0?RC5' M{VЪ)Kbyޒk` H?OΫBn[}{0S#!#:MhbS{,.@(nff䰫P ˤn?"DEQ͠b`:\ntD{X-#DDl j4bs-UX 9{g{EGqM|"&| [8|Еo״O{1xЮI|BOC|9Vv`ܣB y}  ,` Rvmb+Tl. d >GlTD{bfFc4, ֡.D :ٛ$кPr8yN g|&E/fb &f*3H=>ìcR! Brlr;5| $;pGve|SfvQn$>W[dt4ދ#R{kG~4Y}zcvOZx00ԦDHԅ7ǰӑ-f8! H ![.j\3FU^u@nv98 j $t/k`_Թ2toMJ WjļLDGS^LߔWr5[:YA>=PE|>|䓴f3w h&ڷBTX19[c)qHiHo}7Ke~~׍(]Gnү Sv2 PivgF95zF-pxZH.ĄfֿgKO^(/i`q>ArX GidpT*_$Kn@%q #Cɯ`ڎoۀTO^-&$@P oI %?ŸÝᝠP*KCPe<eH"\D's_>Zh%[d.$@u/EB43EdwRgprFC 6ehFo5ꋄABa4#u<qMd')9t$rnċ,/&Yzj] .s^SLK&D-JM)5_ù\9Wq܅a`1D 3RC4 x xtc)0:ҡ6gclLIWB+{"k3ݏ:⡓]:[u|/vKq%q o`LuN{dEԉI 8kOTg(xtVmHzfPMp3{:h [y\t.^Y>("aRtsK |YCsbZ(g ҭ}d nKw A6r.eW2GBc_1R#!Yī2' +q*hr@ihwCAs4΋1SBպ͐ \xgHe3CM*Pƫ r ɯB"?-"(g!du~o :C`Mun-"ը!=<o~ۏN#X%MYPO7Qk~Pcڳw(?t)s m,eG23caBJtg?턗|-W9ܦ#I  ;.: 51-4gvm<ﴬM(|BrBU#-Ay'=` Jh] | o{OG=qIdaV`d+q1ȏ u9@J( 24"b{P.&ŚRȑ,q05.SPQK8Ww'cm#(x2tG9&=? VNg77}bj:N(xl7lN9J׉GZ/~,`3>cD7n(+jE[tqߢ74>;k`4~֚ ^D`$hs@Rnz%}xI2@mj~@\՗}A\IRc Z!䈀Z/JVdxEʞȈjS`Nƞ$/P+,$o > ubx`@-RH~Q~4>kU<u:ͰL>UCLXNqփdy{2#g#-cŹ_QuTv{5=C z gfi}$4 1F̎Vm->}g[n}OgKŲynmݻCi7Z@:2 οPv=/٫|G@qI#`t/:6,[X+$S؈B6Heo+yWiM" $h Sg$>܇d!dHy4{ܜIb١MA/ȿuR eWh , HhH o[tG)h5 yu -m}fM$yl;G!}4_=RLq/a`x匭>ڢ]H]ENh&,ga3G>wC*2okA [58qkML@hqaa.?VK\윲57 [B{Ӛ;E dLy*L]S'cBD |t*j;"P5g]qߞ?7(W:5"CG4E..;)FS՘cN4…Iuf# I܉-Es#Udh#XA0dR~I\?#b%6`l570@HdC龦2pQha# Tty+5QGԂqGuL 3Kܶҿ'@$tQI OgnHh#(POx*@-MAd:ni}oWyŊձN ']-p&ĭCz F5\tx~,v=ogDYxE-?@c4\D3#T1BŚ« Z+Wl瓹ds[ֽW2s.y]ʯs#[<+9Bwk8sjm+CTEvJ7"呣Yk2.B7HzNP ):MQuƾTl j {7#7x#AФ-M"f0@1㲢d!{"B7Q/)l[@G\<< lj8rn]SzgU]tSk wq<#sZYŲ` Fk_W,PP/h Q)I#{׍ GQUg.-Co!}2|t nApufX'o_Sr":EB y,.h$jU{'`052h]Ͽ)<thȚޑTBŚ2xfb~/O`52IҊZ|qWq5EkZu3 Yh=1[ՍPA9PB }lA _aqi+~׬ 5ӊ`¶=iUv_JUks!$)8Qw6tw=gF1$@QT'r)KڄvZԻe"r 2 GnZп7N>y//uEE+ w8C Y* qV8q-29_O 髎 # KX䡍 ^@AQ(+_d9fϞSq|]f>s xJXǸ*~(X7+!L\9ʚXUyԿŗ)Ӿ82?V4܎K S.M%]̔? {nDI|Mq?g2Wd=wyi/߇$E>F׈U}'ߎf:4>?yz ۽< u߾zܔ2Yї` h tȄϚ]%iLPt4iH]z&sR1ІvzӍcG*xsŒ3M|5mG!7{ XwSR^fFW|H1뚒9c'ÍuW &woZLӍ)of=~'X&m(TX$H o ]r4P|z<٪.)+WeWv0bWIf{' I+ԡ&(%[Z\Ҍ3)"nZS]ۄ*BFSl&ZCF^l5ΆmaձF\ta,d&PUsɟ lFݐJ$VUk̩G{Ǽ`иq6b0Z9*VJ 'aamxb/)GU;fn#yXkUC*q#LHSgжhJ1kA`g t/;蕧7U Up+kfSM8PG QZ= 8puһ57k? ES XÐe|+0F?T4L238k=3b`9GhI8Ѷ<76R}VA^pQdȰjJKi~DY*ȪsCwX9Ʉ+C.ſRS] X;ĥe X\⨶ Q%||ځ۲+PQ}ΦlT{g%MðbVxۚ@yM`2ڪ^BzM[١ >J\w/tMꮥ0$c^l7YN`S4{4oq56Ӝ0? +?|ɅB<<[@o0^w8pޚ%0^AnLg\Űh jZLg봸p`veFg5 D$~.Bzj›k?Ye(33h-OUk,#@X[v4P,ɣg?:Q"=,@s .C P%2˫[fĄA_nT3?)a p3@*m:~^'\dΚNoFIp*=4oxGJU( Y]䕨O1{ȵT-gx k*Xq'̬ODG)|&xyd5(#VdړCHOPdt|K7ݸuzAֶ׿3鍤~WT*ȘlKfeec)*t;b+Mg&-HnAT0EZ]9yt?ޑnYZXMh@>9䉼ǍVuwZ,Pl^Јc>Ϭe ?zyW,Y`U\("N֪r$UC/E$e6PN?9޹BAHc! sM8dsFEyS. pDaFUd^ipď[@:c<֥!!! :Jr5i5ԟW MPrn wA|>nC?~Gq*ySQD5Y*eQbkFP 7}bvsJBYS|/:R蛬Tb;x؟$" =U"A͜;5Tr+&;ZKI#fv<.1D^'Z Q++?X)=_m KMMƪ+/Id#tPD+rSZZȧ GDCU&\ B7,3"`zʼ/ǻ&~:腿;a+V>Ȯh`;rH ,!mOnQX5ph\P=/;Vp^hD;SRCOfSXP++X#^=*_XC-,CcЩ'+vXW{3a_v׫夈,=f,JN24dz8x&(l:Q ?,cl1? PT7%kN7O1ӇOS8m_P}Ifgq>:zb3f GMNڐ0J~ Dq}etztjPq$"c 8&ilo$zٹON\@A6)V儕a2~=Xʪ>vu_eBTKI&i"0o ;XGWbe`4SA}3kѓRPx ԭQiIh n3IU. ]8A`DdsT8bH--$ WRc>zu}ǂ|3tpn| \F6% RL3w30q2e uTJՃGbeaN 3O*4ܟ6V 3CwLLh-WV%D{?u{Oe6{[<{>oY :v>iaNU ]v?F gϹY&p );z)Ь@C!~m^~#S kFJ2!wE'8#c+:'kZSG s`.37u}`[;QDj~8 rh|ͤ*[1ጂ>3)mM_cgXíP߆HskH '_EE9 vLwS^-õ'GIo CSHɑaƜ4wU^ R,z,>.NxLy7Wk1}Vo`T?}[k 2FcۈJ%̐_(%;^1%߲X-D_afj*5[[|p+>w2)Mf "RФSJ@kOzΌaѭGJjGT:;IA]+MUMGѓ-~|=bMa0r)e4o^-xRXR;Od sΙ{s7F8cdS8\i YCq4OUeG v+i,;ue;N\i]3FQp~R61E)8:i|Da.k%w򚋼޿p iQ#ޅ_f?'hN)K _IQ)nH w+T qvo;Ī_o-~KϙdNnuHU=f]EKо|t3Dd{@#L@+%'Go9'aϽ~|>P+s&NqM5:ou.)s)q&TÎ-Z0*& #GVR2 }k1lV7ĹOH )dRcFH7HQ\B.S[|QVqJ +GF[̨OYK\\!o&n!<GFX5odNz? ͫ 7q_3HK~~[6_Dd爴(Ѳ-j3)³|&"f52m)s-?@g=q!ּM#bPTgsp >YTln: Yot4~6D3J!˿}*É-8$bNž&j{?Tnψ|'sm^Bwzszw}BP%f"#^bjI/AT:CRk=6AIH!En'\U$3gEW itr"7UЫTX͓EutVO@i҅so#m($YZĄ$+U @@?coLDqw?Ӛ!0<\FXA:l~r0>Mg1X) r]6*?ަk&[(Acbev Rg~ycSN?s=]Yþ8D=PE `,A3J32%wP7̜H&ہ$-3=cM6c{v`h391^NJmn<>] ]0Oq.Wp1iR,Rn;L2` Lb6Ha{r7Ԁor,bҝYJd]cEhƁe7i.U'h0([<1_~ ta[I.1m|H8VG+^0~'GlUX(˂I'{ft=fL({t |dVЍð'7;臙I%[]/5@+zCs0d!d}BE;@8UbaxtL9RarzCQfg#XWU(aQ)]$;7b1UZgK ŵoc $QAcW8o̎R^njJ _R/3l6=w$oK0_Qtr7 igޟf4m5g{j{ұ"}=K.0 QWiM+lF,Ry:(~ί澮ZJMf6N7tAr_/49ƾ4 7+Zuwkf;8i1fZ^'vNT|";@4j3IWPI <|b6gt(%#4x`pT?&9CFAۼ4hƧH4]"hN( ]c*SPt)yr8`SfZ) tJ~1z8˖*A5PuԊ36ǘm7tZŃ^pr$M+ .0ecGyYO L[`|3{ A|1 %SܜAҴX#j8^e"X脦 loelL%m!|]ݴ'GŢu$ї8U)"dAmVhR*Z~c?,kprcԯK-\ƚ! nީqwBhKT+) 5g&lF śP0~>Cv+wvc. f[d#e;q2̀UT6o yEzQQaE7RNG^mbCНJPT$HȐ_egR0))G:4ֲL U}novڡ݃ȬZ[XьGg%e fͯȯ-`GG V `,r ah?`=w<`;Dכ> hA/Zƽ+[9OxmwÆU)UQË%L~kSU9__ c*,]{FT~鸋_= B$AΓLP4V( $ac:iMǛbk݅ k?UUK_bY}ʖHkIن ZJM*\|fZ`LRs:;BFۗ԰WwVg@`)(% k\VxcVAߞt0*;%_ZnL{,Vm ؽfÞm^EԞ| 9ڤb Ӓ [6QjgH T_+3]=rEp_YޗC@J}JE>$xf]*4S)1ck@bnMh=3:|"z ƴ.(q^d5$Bnx0zTZ`Z#6Тok 9&t};Ib*E3mX̺?em4D lJ1>.9SV[ٞZpx}b8UjznoQx1Igjק2YkfwJhTB PvVџ1>nM\\;=A?LdԂ1RR@W׊xB~ d\^@ 0#j'ufUXG[5LڠtSnvTUv#QYB$Pe{ߪWA,C!-fǻe|ʡ(iň³P|2G=RgİcTݎ$&wFC' #y"l}[U[J+6 ۍЏ}>]aLrΩ"%LԻd4]/͍E1\bLDw0QeF|2h]R@BK]p2WIJo+ۍE(!EĊp>yW!#~"IV}1|RQ#*N~LfبrF6 vD;3xk1*iM\bk& Jvajv>+*5Y%.1r ,ȋ8|kg=Ɍ'O5*z5YItR5/_7GSߦQTexPuUQsƟ;%?nO:EEMPҵcI,ԯרJX9]}eih^/.^-lr51hEW@t%s JY V?;cj{:^'O^gWX_G7g֩Z&h7re_N43 Pط;Fc4KrjY-U;tB^ycQ4d:E<|+ q]ͩ <0 A4ڇn8(x$%$.aOYVBnH)JZ.w65` eEc˜֓ . (~i啼e}F{-0fV bQHfnS$؏Bk[Q#pKfI͐N(7{`* H`=kΞ(AI'R:j_rv׍c#S.@ܯ,=͔ T\D4(t/D-<;kNZq;ӷt?4?yGz1ʎZIi*P*%|~齪2zk^_`{AIuf zZ|4쁍?*',ߛyògjUc]K b쮤s6٘w BԹikd^']BUp?< 3Ifpg^AR5Q3$0=VXCr^;׹̈]a# ߯ X4ѻ( =5؞ L0g8ՐjF"ҟ^Y"0XKs rz%(Pv|MI`hjOlExh|H_GI^JlsId- o PnJ{_³!RO,$xj+EYi058K]u #sSd*$XK}PL@p8|}ܛ7,Cm /qLTiM*wZw;-U-|^(uNmrQh4*Ե$&D!#:RzQ $W[v hb j'L]r=֧pRiܽ30RPeE,΅ԁ@ހ'(]RMjnqL] AV$3v#Y`ta:pZ\VM]g=ouRqsNp ) KxQ_zJ=&Q&΄ׅygQqN8.f`mw<;Z6DGA^pt:r>w񪍖힄U-2]G~c_Iє:Q|?|Z"OM)TDB_ cn3Ԍ/]*,w#[-Q)<#9goѩ<,#'S2t%4?t)컎=cvo7Yz?se̤~>2Hꥌ/ {D`) 9K d IMXQjti0vw|a+ V-K*mv.N#k3XP%SʑElik8QQ7spqX2s1_rȆ@5+t\j CB ,ov8*<*'Oa%z,A| Ջ ED&YxM ͨF:0,,c 7HͭޡW׮g @YVI9L> ފPX:R[7cOs t([@4Ld-kJvTp >\,9GޗkHG\m &ѥT%%(?cJW1AHc/Gu{%2I +jZTb2oqǃy4+,ѪActuO)>pBI˃UPzYy/YR]xCTX.afK5돨ALW7 )kq@\ 3l%,/hYq'StoH·F0dտz 'vT\GBJuI?#2a.Տ/>ܧΟ|+%P`-'+4 3$|%BND( ?A&c}iJ)FO9a &P`t6%:iCC}LUH c^D(= H\>>VuO|=t ql?XEɟGG,ci"pm^$ W:uTh*[bmsHC ]eP)ÍK%~jR g\e{B2\=E9Dz4wzeT3,VBm{ڶ(g]v{@\eQێ0"\'Ww52|  V&"$DJB^۩?fqM)M]"! K]Z}u|K?Jnuq3#d^ ю+v~j&^Dnw1\w>Ne˗DD]C*t]~"4{rB6ʂl.7"DKhe=NS%J,q+?ub]8үmp)A)wŽQ}:07zKPG:8 TN$ CWWZ!j|I(l%A"Քt$Tf2Xlv(pH>I.m Bm6fb^4ӍE~"*AOhߋ CYͿgB/9Me Z7x|FYMa/||A BZ +DcΏU^0cZBX|D1'oBU([r^P& /sdno`JsQ58G'w~4i7WS]J͍}S _VPΟrf[e#@D-_.8b\{dpRDL*(`x`(q< o$\n@ײ^XMwk!RR>3_nmF. {TALb"?*\&^p´5g7xA Gxu}\%X4_ v0ޙME0%a.1 5.w*B,EQFvWAnyTHSad.ۇڑ۩CɢgՠGIPఐ^P=~?a{KDl748(Յs:X,@sq똘"oz;R(\BBg](JO\j|/cpwˀ̫ݴru1/gכEe:{}۳Nw`MMV)-c,ǥzH[HEĪʃ}޳ 7 dfWIn$NX0k4ǽl$uSQ6'-FΘ,^ɮ"eh(h&UÙָ_|FȇTC|w~?jLzL+Š_6J Jʄ`:8/WճAOK >[s,F&n.~ƌ> }04.}{0DvGyD(!~*WI|N^_}ln!zXɦ3-28B L7Gi,~~@"rɁqEjUɚ@_]ko:jvM!TP!{x8|w=ӀC7 5;z^7XGw-{H$ŮW ǵo|$ gmK+#"[ڦfxlk(j)cv Yѳ ;Aڳzo2u(iSZpɽ^ZJX0 ˲uL!z"JzF(U GvW=_s-)8`Qn>yAX| :[>)|Vz[Dvp2̣J=C!L$ơCwPyj<O-@E߲e5]U1@c@޸qj/[ d4"j +EHh=#A)Zz,̲Z*.#R^P{7 >s%!H q5_ ɰ-19kضOJٚp>'jJ}usH5vzP8uǶ t]2vrjJe>-8/ft}FݡIhKE?h'Ѓ]] >n&^KTnU}5G!X=bsۢ#"֋eE?.<͔|ڀN:J#XfGI/R48! ʦ7PN؄ gx#2 ~5fQH^D MCJ4ꡇ: r6)dYZ0ʆ r (w"CWNK{c|쉋,Z9Q %ƀ+-Dݴ,GbŌ 9 }+ \؋ u~m0kqceKWnlݗMH03ӌyzqe*p>Xs4Naw*E_f 2x|m t謜Гq270A1TB;r.zr¾Ր;DkFS" pX3?/%Y4L+۲'/gtDÿ-fg\ӧB M_.Q*X3&ʪEUM|]wh=SlG/͹wrl05V"j3W([OodT?w򥄂vni;nxI LИ'!C%q@SYV-N- e-[U-#ߴ9.X% ^%̴1%\L" *HW$B&|mM0  M0;}>_tlCH?Z_mHZ"BE@ = wvoLLY\'QsaiV(YqO"h"?|'eE+ʝnI9#H ޜ٨?+n"BBʖYjs@py/V !HZyݥ "fCy>u'C(zPğ5fw_$50]xX#O3tֺS@5[}BK%VVBLW0|l22 kRNl_}ܴ{BVT .$9bYw 3'dsĨdF?T^@̵r iABb zdEBȕ":M[`ǒ3D h[[Yu$yzs\S)֮K`rl~ڶ>'lohεpz\( [Ph$_3>t9ٛkꋶP|i7Tǟ/a`$]KßŝPk&½[ţj}[Skr͘/3pm yѡGlLSl,ೞ} 8/V'l'}t_\xac^ TlV}n1'njO!ɑ{8bg[{EV{f6x:$YHdΡHպ"uY9<$P1TVhZQ r1+6N#*[#i/ p(# v eݶV=WB{'8LϹ<U=rKMhsu ' -0(ES)JV=ss +ȗ vg9EHc7p*7J3c3UZ u2HGh/lmḿhn梯rL:psq C_˖=~amOZ~R f{;3ߡ-"ڴ 4*;B7xsL 0췄;@de W)6. 6# F^pIY峪i#wG&9^ {ybX-pP٥بV׃)@G2'wlP0 i)Ge-; \ڦ!y yݻ_$lZeb!Z4eB aJt*Kf㥪P} *_K\pI90.6 Z#4U+< hF BS[瀇sv @X,V-f:I(沂; :"U5 @'\t7KR&'4Ve|(BnJ#%0Ljƍ]m7)<{ \.g]9?홣T=셉L;s+u:1}= &1wPz-{hn G#=ʜ}g]{.׎†HCс\V{5,hM)U?08sE!g*AZeM/q/a w}oӱ\^%׶3K! `jrufoϘ&mfyɐ+ʣ'olCJ_/ez岩f6<42U`oJ;:0؎.qEyî BKy@: ;ref9DS])iG̅\ lT^(*bLY)(kcr8_{H̵l'T̩fNf;Xɣع+UX-lh֎G/ Hroo4&% Er*w/HE9BD М&bXץK/?VwjB='h?1 ȫ:[u:H0y)Cq@AےDVuH;մ&;CAD pŹ1.dO_U;M 2!DLi[#^ɟ%[1ڍÇZ.C'y324 Zn m$W(C?bG: ƿ@ 钻."@L`袇tD/Qr5'F' /5|hc<MqM87A/e*FQs2m5*=дWmv-V'tfS)PŹh*kh^ȹ-6dS:(dcm;5PpEPȦNȊ!Gvq}ά{,N 恙>i ^cэUyT# .r.b/<1PVA9NTRf rX ݞ%+u#cyغ%]_{\Qw^wͥ/4LȂ*KN`Db+^%M [ĊPiݝ7OikeOyj/'}VQ^5͹JU=MJ;Ŭf *jR MH6HwNuQ=x8^n ?w~#A̺oZoc?8QbϘ$ʢsChqvS#wuk@3D=V}O{Vk A2 ),{qT3AI :+Lc|;{%T6S]jT|;,aBhLgk2IB?> BO*K9厣Xdo 9fT౶4af#wG2 *E<й_EOurQ;[@_MZbTHưï($kF"7Ayw4d+r8eB';.R&0Z )GK)g/:i^gDr 'YlqO^s~&څq1p{ Y:ǹ mGZY/kY%介!r#ҏ^ҫ9/B2vw,󜞌k-)7`MÍӆ##rw+)cQ^anDGa)HDgirJdV6(Oұ~јN%)z䊤AQڇ 'vreXv¾5'?%@]#T,+ %~MQlE?NY+EH'I  zւB3gv) o SHM`w ¢&B (\Z}qw tl~8Ij ghtDD5/ݢtc3AÐ2F̚S0o1MA-MpiLu[+*5_~k{mI~P~I '(3ya[_9:9E͹7gW驇H( ^D[đ/SAt;A(վL Reur>{o<_=^ A1Raqo',JKK"FWA;`Ʊ:* 2@"cb5&\,mPaFFfk4w~g^~9^g*{(ZtB&A>,8+VuaC.%4st2igM@vK 0%]ai6Vmh^MJlVh앆f*dapDD?zqz`QBeNPHܦ 9&imbzBsƑ l| }fXyJZ`Rm\*ER vF':g(G'tk2RN[~!r:KT~嫠u.'H'xW6>R|ᴚ@pVkedb'3NըKH*YwBy*'4p_dyէp<;nw&զ5yH2zHZQR-f/TC"yi_ѩ>p3>J5 XNEYۧ>׼RN:%7PW[HlV.%RTЌw4f=@#[! {ƴ1:ND1 Ck֊f:ޝ{嘥m~yr}p?/mxB6JrL^SxVH 4lqW3 4B% ÉfWu䰍]B?+WǬQ@ 0097c@0<>TsRg15AuC5a@ϱ%k[+ҝQh~3k}|ΑtvQa c[̪wk?IuH"/"7 S,18y4xW3NzVya}9=3rNzIT,zUHv n {s_([*;)o|t$yx UL-4HK\GqX25gq-6ֵ 8l(vF?^w'f{QSؼz+PqP<|%&:*1FH ?eDH*?(AZQsL<[Ad?tKq~,3|v^w\ᘂX7b@n~k.T3BB9'T+2tY I%ܲ#efJP`*ZBq3*T(0 R賓;֟t5%HYʽcb,jTTw 5H<Nc5jf|j aGE=4Gֈ j⼥޳X@c8fg5PgK͝)AʈVQ͛E}egf`j79v;9 K\W՗}_zr>UYo*߃k]f,Z^JĨb0dĈר.b><׵b,EEzeBy/,R)@u]jJ-MBQ{` a>"y1 ꊷGnӘx᫱RZ [J +'yP])<۷@V,C@cerHGxJ4oH5 Emz38+}1r`i kی%ڍѿ&p.h&+ViW:c ĸ{P]TA¡+gP! fv yc{#gɨJ,Qn\+jϋ#b˙#ɔ@xNC{Y5h2_i^ԚɎ!̨k )V͂MuhӚJ;xI(qQ#GƂ".7~1z}1PkE.c)`Cg]Lz- 3}Β/]S_dUiמBRB)s,]YN*IW_M@x(W')).%+`tD ؈k=/J)evmfbo4b;^jIOz QmN33Sʼn,e= j.vbh5bV-qh %r$ADjw .(Jqu]îVR;غ&p4gF5옐xVpEX"+$yitme51Pz}\OkJVE̘ Rid?.a6wMYi=^J~0JyYV ?YtL>:-A[<\uJjZ'F-//iZT"ti}0= cOJIwk(<U1ȱʸj:hܡZ^_S%v~X[\:;ě= PQVOx\JG]WsW( 9nyq( p4ƴ&#N!@pL膵M^goٲ hQ AsQ1 i, #S\`&VWEUҧԣ_`Cp2i#w 3Xs]M:E"xEZ-e:wg,Pt-4Z4 M㺼7Ɔ;OGGvZUFRnM[j5t@;ޮPvƄ8}޴Ek՗4'*`/X,%|DG5#7C oC9k.[1xwno;,酳k&ݘ)NmεpDJ՗$h L.\=h^˕XiI.K('H{P +8™1p¾Դ5 jZ[j@nL:+\[`)˻)W[²эqy{6\xBqpDxr,/!J] N)&_*!#g&'[)]J<"DhvK@o%/[n@ɟ˗/qɕjʼn'&Ё!.7+E"/0zaD 7Cg][y5a3ruO(S3poj{v9-ƌ6- Bҗʴ_8~!@GEؚ٫D9C6c Qk.ں?#rE>ӽm(@b]7-cod8n=ȑ~@lk|Ѵne@,&SiyW-]ezIh,Z~ Y8_1*`2y!b#GlĐKqIM}4"2[bSֲi"#wvhBFAǏC1  n5+)ɧeD;$YՖTA=[kN.CIKBN:عMV/vfmkiLӗ<5a86uo·5v#gب\)du*mW"Mp踸6Tυ|4Aƺö- ȏ[Ԣƭ| X.U$ɧy>Occ<ç2ĥMr4x9s|hW%yzQf7qKjx# kH{ ǝ{Q[I˼R>>u9yc?#8K+6Y~,Is"%l6wy:UFʘ1VPYZ! !`nwwĉOaFG!&]'ҸQݠ;60 -@6PaW+oJyN I:{!:P@{Iڗ5Z$9b#dmMb} ZY&cTS뺐2_WFlWa 0xk--VPlI2nVI_>kQl J82aMQ4{2Od8y]O<Ornػ0k5(00 ͮL#27}vDɰ7IKBU@$s|@Rj]tPCeځn-ygC{BN [lKK,M=qnbk& +O;-&V~Ox \T ǻY?q`[SaU>= *0fYȖQ^s8FJWB.TU/->t3'N2-c$|کX׮)mH%ԥ`aᒾGy[,[9Al%_wYI)^ǁā;b weqB$|%eDz'P&Pj y o|ҤUK[]?RZSO_B/ zBa)$fsr3N1h/`]n\ *I{H=[4r ˮy+ZRR%0=Z/3uw)7B"N.^Z ^fLb;V6ܿ7[^]PS352F$j'R{)ذfo@Ԏ6+h%Ti^nݱ\J ]#' 4ߌv^U/ =3]w},T vYP"*>wIW 6XÄ?~*WYk%t>"]:Bd| r ;, )l\y)6ݓ_Ջm4I*\5p@00dH23l# CA\ov$o{^AaKdmo8 V|OH y,,HAAksunij|Q܆E\韬NE9 e8J cxba?sίK=DŽC"ڎz>A{#0z$+[jړ]WL~?qFގQhOB((&oxJa5Mvdf% ZODE*'fUͪ׺x"pgI:!g\;u65xq-Tb/h DM.gA^{p kvWߢsjT=Pg"RqVY`v%/?Çozݹ=헷(Բ%i=gKlx<~*S쥺"m"1b~S;&J9ȟdJSl Tzޔ@[%UWSKCO@|sKdjz[Cwz*=J69ZzVۆ.f[sߧc"uO*}wvxF! B٬AMK=8 ]1cK p5 Q(‚K=Y)g'jT,0T7kR>QvFC4\41ϳ 1zneoLz"flmɶ AIi#ũљaq7I{K/lzNM>`m$3G>Qo=,,ǙU?7Ŷ,܈yXCLʽjhvO R=wYh- R4}{]ASgm`G=C|;pxf?u(ӾPAHD~Nu?q: p;**pHC/S"R iaKNEU(np3uaZk !gΠCYpe z}{ QpIӬ>ޣ$ڳ`hA1vbX;ý(ġo[&ak>|:/'m:f  PP$_dj8Li7XKJ^<ؾbC]r nGS%y_@󓭯>b{ˁM–/>xN^3ZI{ brO{ vgT5vGb4armt[HzZ<'T_/5f2>KcCj݀8`6&fJ}:loJ7GN!Hœ V̒'Hu su!t]jo/ja$J):z\40mkV´pE.!| :X7 WE@4"qkw;Ulb8Ũrb3D\Ň,| ax'CyJv~4~+7$=QxTXrTJ7Տl' DSKFиǧ4voFԾ!;jF#Mr^HsS.CQbMf cdGoKDŽg{lǹA{V^u*Zc5s(?`0D *ZGΞs0NnD2@gU $/ӊ|KzvȽ%#h+>LAO|u[ŏT?6ds*pu+^z yaIM?HikXkjUnGF _Do^rSu 2,H#2CY1~ "?eI\wi{lD`ޖGP AC| {QØbju!|`U*cOӽ+TW骔S[92ˊU-;%Q1#x=gF9ۥcS'ÿ{[]<u4F20m ] 3A=\.Tl',Wκ5"MHۓ%a9@q.I KSf(dtX+=`) `"*LKcOFӘP{&7,&'8?9 \%ZX4"UBl#b9l eg8C[7GV"]uݰ5\cU/J$Gd.?MbjrϞ}3.3 r^m+6kh`b.6ƭĿ5wERݮ$@6`k{Mo5b 5`"s/<#fo@njt7c[a#I{rpd˔F"bojkϳZ<Xeoou*jp;7;OAwym\AT2љru8Y4*ց—on2ͨ6YV 4b_8RMQ)z~>.cܹGjvG2$ϳnqlsؘ ,T ^nBPj20zڑH7QZzlq<Cm$@b@)<Є vfYo(~R2kA@m2Bbps"|R?h+RN2c4l慼 " "ȶCIH^t2RC`+L3'%ں (A+;fUUKwȳx3խ̴O_\Z L'TyN}0@w>`+u+qu9@>u+kP~g;T?Nq5yIF¿g-'r%k\nȤ',. diOGLdhT}=ʢd׭if>LP zFɯf3ckPsxcAQR}* Q)0km Dx:5}ȺJc"Hl86VEh,jJPIء =H:(݈.I.{Q-'`oyʴ51rWo56 &acGSUEj֗N*y4@nš1myN=zdg 0W2O7'P4Wis!V+5wnEYհ~ɥm!6HZ8\EJV{kN_7 0HahvWGI{q*\N J4i kkc%t gsq>Y`  l`ZwsuF\nyflYJ&Es]7Xhx@,"/Yаeq$CIU{ !PTB Q-FfW,e7j܄\JX kRXԯ{JxY 2@pRv,b͎GAYoBTID?&3PY$tn{.k2ky~0eP+5T7 q#d?ia`̉ eJc(9&nXoicR-w{> Ӈ+J>ﺴ0C>+V(* mwZeNi`OBdqANX5r,7Z;>#}3x+cg):ŵqg۟ީeZP,T09\s}bI-7|_P*Fv- /Lk@BSB// 7uw}P"Y&I8_] }֛Ehe0 ^)§'yɹ'6tS3ASͣl2>2MP`7TXbTRSu>8C M>&3;"QN,Rc7:^rxY^jz&7J`n~awBQfɒ^;i'Tοvn&us\:5))"ƶ˷hq`)m:E!L ʞ pl@mܒxG.p{7H-^aק r.CR{>Ťފ2z=n>"xj 3^Vuv#? >Oe;OM8x?)}I3U@d=b׵?2"j;6Ǥ 0jjSҙtYD>&^x"S-iUz :[@ǤwJT)s]BZ6pEdx댅Dw4c&wcNIsCzP04b/ |l%P IErKSVIӡ/"Hj|ܻUeX65v|\@ӷr28f\)3*$CI X㷀=Jtnt<4m`٦w┗zE3q5"ڙ+HL0`6}¨7bg2m(yá#~tGKnTvK6\9j01yڸLhte~ X:bc{bNtnӁV "zһ,!wRDRb̢?L?h::Q˶v쑳WdI!jxf3>8>Q6c1`7"̆a)g /W0bKdz!d*|B_*Bd1t6n|ڝ6X?Gl7b LPzt'u[iB͹$i( Xn^ψ)NJ{Ya a62 ֬k;b?rW@ KF^CJj9s4Ãm9`a>1/$:{M9@"1x0˙ lg&fe]TF3]tK!jc?:Pnn |WQݏGw_H^zA'Hƒ)Pz3iuvHr?FƲ>,|zQ H($:u^FϩTwiLˇM/ʷ;F^M?Oz*"җ0fW"ty(\vWR0(9vTSձ⋊ Hy gSkzǚT*F{vwalfØ6O;˔93J.w:e4` \tP<=Gp $=EsA t Y $X X?T7$0"E.Gv 6|P|O\;ЀSA ZENsIt&DNXQ7ZEɛK*S2Q҈x](욛'cr?5 EwϹlDbnʫFdd YW ՘X/7ҷga _2ɬiZ[9** -(>[7{/7!KTVnu`cJ$+jcH_+lRʿ$izt -WVb(y@l1ۂނ!͋"1bkOTyv?kA'l@dFh&}vz #AɋkQzy<:n&BT 5,&7I 3/wuh*ֱZx^Nײj% 1?KM2RrY]rh.%8kct5e訰&ŔUeTK=p=~Iho]GO#GKlG5@JW;lDae`aњb1RY'.K=`@JcX㸗 ֦Ô GQIOVܶJBy7TMnғyuRYA F~8%<ޅeȂot@B)(BLzM#6+}qg67%A/:vB6sqtcMhNhtʓgf]- zfq]l#59,ب&8f]whu+ \hSٻU$ݯDֺ՗ k6NqU G_ungG;t?ԫ 8C* 'g̨AVkr.uIUѰgc6o^|U=Cžgfc h!Q^^)_0_[cl ßLQĈ,f@8,^4p(!iJ!@*3#܋MR1xl8\] Ũ3{VdF싰a^744l"8lCE:nin{p &HP3[/mj(EĻחJč# VS& |6'[uw0%+1Jꔏ FSqT=@X jBnd}W9#`FրǑKѱ?"dAB4Ч{8+ȠA\,UQoouW~7-cG5t%jMӭV=L4^Wy^d:˩5l.v2ɤo)`z"ɖe|cAQ/ J0(:;dulK4%L*.і%R=s[] hO$_ '\t5׿%qJ^, \:|EQPU >@ Ǵk?T% QOaP 3 pnA7+eM-xi ثbM*)L\ _/URU8HLW8֖_x(֧7w,%.3 f"cxCIi6ހ$ΩU?8m- S8S hhro7P03+[D{MgC)<mr7@7wUVp~oĀtJ[ gz.ф8,KڸVӤw>)r#v'M^1jdd3rj6b !ɭ+vr*a4,\-倓tZ"R~Ր5昵<^7Y_<7/,"OLwo6Um'rpRn|vl.w:%kv;U™&HQN5L >Ԑ{"٬7-HvTUiIA[&n&/CAԇ`;im 2>&իBI+R(UysU{z$c m䠰2:RBe1%*؃Ή-q!9O92^L#w/}FVq̽lGH`qm [v1 l#L 0ٞN"?.\q$4sO{1MZ3<,V *.e$\T]b`hV!H8Pog2`0]HFpqҭ H;M]*&IU'`&ȷ/@1[Un꼰:h6X^19; q/)p/G3Qqu@k୿m1<;8%r?n8|]`F4wh=ub6GA P&F8Uqq{9z1^AJʷ^ac| kv 5syJ6`*gRL?& 6&zk" $MӇigI7=FʶM =[Fpiqt|V+YZyiVl #4UcPd<"r't{] 3 ә}SQr7d&)hĎ"HoXWԟ?ut`cR[#}.:?\hT1'ᒉ0H"R!Vy"PMZlV7N~Rr;"pRcO0W9z薫(TAx<9k$恼l.Qbfs{B=-FȈj8_$~FC&Fz{vsO;|4oa|Q#h_rV|7zV8oglyRa|܉x :utvߢxjո 1m}Q=M2\BQf5Cvv $F0#TA!1<Rk\ D6qaTxpB>"T˵=ɰ9n ߮^Fl%@A PBp, [['H*Ș C%DCm4*Ugxma&HoG.= %"xwZ{#y+@M~ 3M/RRߟ)N"F\ƏYzf6c\Aq!CPystWـkxGE OcmqP~tK'1IQF(C}6GT&Hӫ#ˌ)O痗/8'&㣂^EASc(Y؍B<4 ^ rpbq鶵Hh͜\k"GPΰ@cTp]\}CN\*?k"Xn eHjk >BQ0kXN\mdލk}T~7lk1iy/[#_r|ױW:O\ ihٖ(ud K/- ꓬk買㕭1M[n>h[qdLP5OUDŽ:cZŅ'K9W'8r\]^otSK? P^F|[Cnpʂ)j">ŅQƋ:Kp=]RFѴs$} J-غg Fde&E! /"7M ?$Ln7Ԗ& +@\ 6!-Dj"2$Fw`>r}?4wrsN fu\IbD[Z=@Jv\ (,jG 6'M~ 3b9O9j$kvA@%nQFY~ Ib]pŹ#ZRQ CUΒ(NMѾ:nvctk$e{-:U8p CO,(&q3/ŬSqT>͔̎d6B2]WdCwJ7(;7!oUL4ٺz!"ϓ0P P"V~>̢[0vG jU9kƀw+^ 6ab8L׫ 34%L&'T#cc"xqCz$;igzOh,U$knvXH؉gp">"x9΍mN V&a?QD~`,ƾ VҺrtӪUM etm^GaN Mv[OyTWHԄ_LaaFEITAw'䨆%?`ikX/KEi$G [F\3_AZ?J^+{YscD B5 Oћcghs |i{ {t YᔼA]\"q!/|9mf2 y$OqH|τ~(V_9Hb}Ё90Iσg5ypBng΀? ޯJF@EO]qe/S'2k}goWIFTx =*K:IPU4] ,PKLm0Q!(9XeRV|wv :! ÿJBi;}iK^Y&!1ٽCzs_cuKoqOXTwtɇ~$f2Uh[LY}hLfK[ZZ>BhX@tZǽMbNH;_GsHcx)R$`Ȱph}h^Yqme XXYuu?!M7nu#9bRLEaX5퉿hT[c$UP1 bx]R~$XoR6.6%瞼-y,X(8W_EgDB0V/Kܮ2fHT zPޒZ Z6,~kiy3CͶ/RDx҇p FIrg0X1CGf `MWfd/UgW[͝L@N55箌e閪RTxjNj,2\;iit <3Fnq=nzk'u 6{ D)~Kȡ˧ͳw7I=,}](893]I^q@[^3-mom `9C׋)sd֤hωVKXs1S3bYE * 1K4~\l}T4҈ąԪ&U.1ԟOڰpi7X=`2Ͼ; H6(|1V`L{)vƳ5S_yhdslk~ĩž;IJuGk0sQJzCSSV_qvΈmpbZpa<0ޝuE NA+s5>h>6 !~~ cpnUqlT I9wc*^*UO=+cx5?adPC>'h,&N-@xmy'k5}Gyg9I,Zσ+0K}蘿#R߼0wG_̆,?| oH߲szCT "{>x`ÿHУ`U P5?SfYMqHsi-{&6qǦru'X?쉦nvb/4 6Q]||cRDwa6qxd U4CZ>Gtk9|ԑ'F]IzN &!bqyZ8DƳ&~ɓOu$sJ]FFi1JEBЗMe-OQC>C)32}ߐ$G;tU gj\臒@,W.x{fI*a7>JmbIE@ۺ--vn09cт~Hmh9\|˟#ts9P<5͈U#0=\4"vrs$7y;TTR &~d*9בPnl+y>1J"MF)nՂ7 Y=a\y^,5qa2?f=AG+4/uq/"rJ]22 ݬS@Sw̅H0.'rl+͆%UDC;q F!eet@(fb|%BZl(Y+.fOLjc~_!f,'ZRL2#:qi띳}m3gLN_f?q?o͠ږl忔IH”猁|˩uPvrX mkt?@'`)B-(S{cDX[}/&2@vqbXP|q0[)x_gBUW.SCv`#6Dpkjnb7v6;Ҭ޺K$Qʪ|_YIF'/H8[q}bBzc!N.6hdf3y\ݥ^2BoS̠@6ʢ:1%59b_bDpi:p_#zߘNs#b!isCwɋj8M~Q["HaXIc$ Vj.]G 8PHCi&R֠@+_5o!I<|&{4 iSHtT^Ck5'ױ /n UK9~>p iG;b!:{=Ziqy:C6u~s4ayD2@fzd1MAp4#qmJȦ%ʺ?I̥wV> 3nG}75~A(#Bf9˫8͛[X6*HoI9 X.".8j0r~QMU*|0/oN?ƻ՟7|C@/ܲAgGۖ):Hav"Pz}}|`ٸo;Jx,-^5m fzl1p y]:[^CUAύJw[ep>} hAAN}t6c>$ P4lj !q_Sb ܸE]ľTy,~GqW%)BY׶aL}6-jyR 2dZ1XDNgR7|1d %Z0 ֣P`>ɽ,<:,te6 p0nrNj8 22Edfz`AWnށv)+fnaS,ې߰LO2rfʙ:ek=%\6ٜ*biGegwɵ.Wq&a_k5G\낽̒ўr#$qQ]8( >&?ĝ+|U^1 VǃeYva~} &xgIϞ>-yaҞl:l5 %HKPIT#hX> 4КfήD,PMtUtcfH2\j-M@DټJWD-MQk)P"6>‘(_bR6#/MŽ=& BpN͠hsiڝ܃unn%.VmYS "r˯i.Y&vnG\{JVh|9M~~Q Dk<:ǑX;> -rP`MI!YչPT8=)4\$qX7 yXeONWNJ<_l€u8̂Ύ Ki1H&d %;hNK;_%#=Lݒ9&(CwRM:mkIUYۧ F-v\7!K-jm*|[/f bI9$~NZ~i|On3y Z8/ĤKpmr앤ܮab": 'rnxk O{Xr/>}e80\=VN@ɻز³}O-Xthq Hxz"pRs>(}Nza>yٻ-c<.φnczW1!R;6#n@ RHMZ{ 0?  w!q2JJw4 T\ uNhL}PRIQo{s~lD!zI\ԕŧܑTB!qQʝpV<G%f_o ƿtvi/ $tA/ޕjVĪgisQ :Ӑ"R-,nP͂\ a8)G>Ez,,a# 3 җrblpJe,;8'"Uu(ų܁Cr ڣ%W{ J_9u$ݷH'R OO|ٕ(߬sMWv\-2Zs&|GĹ}J}en#JX1{{]ZC"+MMy:cDM2?>ꅇlu))|p~GC2tt]x+6QoIwC[:Xxg3/Dxwyj)}"2Q%{-@Y 5igJBOl C\d?qH e&sK2}_f:\xj1 xIFssOABDB~}QDJ hZϧٱx=3oH#Gh?HLE\#ɗ=qlj%7{%ZJB.pVj;Gϒ$o {p?';d|kejr<#E\Tru4I2jiLlv̎lEh7zﰔ]:uC p_X\^i ?eZ|+-;!ZyzXgpqX,ЙZ.wzі1p]zfP{%Dva$ 9qÚE0lxCp9Pi:15o>R.S4LM<#e+awA8v AK\rzr@RpA,E(X( u{F(+`qsjX2`,Gmı#v,e!0/ɋVB,K+ !V%E~f+7[o&"(:2+˛}8~F{'O뉲OhD J%DRoL %&[켘lzeQ Հ.WtKnBz5jKR7A3wB4͙-Z` dkH(\$AuN(:Պ  bm gh `#χT G/JM._7(8T&B:ʮg#< g:La?ڎ|pʎKi_Q%޷QȁYp*mW¦GU)7l`:,9?PT2\/g,}*Oq_e#tN%"EK\"k9d|4*?x0g!<e9v9$|cF$A)06ImkqbG4X\P*Uҙ?Tr/blAϽ@WgE>)vɓW 8c(σu?H% Dq_~}%F?O u 7vNMNr-,٥/i-$2B;Ss?8^p4.btф'֫}Z;7W?TG@,a])svzy|#g{nE/ʒ&-xk ID_eԨ+ [AxyaMwݬaD+oy m *0vCQa޽YiD\NcX~.1 Lh$p+gp7ʥ!M40Q&3L !l\ՋI0Dz`A+q@{`zCn"o(gCך)$OxUK[6i# Q \`t(~O/^@.;@|[SΕB//\-ŕ]6٥.P|\яn4K%1n9.H~MQI{{ B?ZgXcL\';eNkU‍䏟*]ĹUXty_@arHJ'-ՍyAŔDWlb-;B)~N+d)%KU_;n̘ɗ0SU=j1nx6̿*Vx0)GE|j>Rl>W}/\G^a~>=ϩ eߴҊڌĎ_mpCF0I40.ii 㗡X|Eԯ8fi9j!6 y3Aɵg 0_ydpHD^]SNPnޖOvݡ=UlVZ`bB0Lʉ8dk 9TSp+炀à=/Ik?+,f :Q eir.})`\Mu |$( cܐm/d"qhmUҁb𵠡\^mq?z|Q`k?wg/a-eߠ.^w־FAuu*z8 |Bx^aMҏF@>Rp կH9us\TQ4j'Uw(l4UV JT8TRA jxH9z%Z"9 Z{A=-& wgmMBjihb̀{Cp WEIaS2˴Pw/tTMA0**h< ͇&9/SS\ Y? ]HWn=&JeIRKyfl(a3Qw.r1j:n#2@IY]j ʄw?U\@sW]'WUd<m2ź t͍P cvtr?Xm,4HF{LӅKXMƑL!NYd aۧcc<>B;.x^Ԉbu2 n0 @\s DL-_,!XNk^jw1R5*roY}2m HAFZq1 93wtqPX q:QgՈe`P2C|I CԢVNJ!1 &`ZH6Ex9s6DC>aWÛn|%NлO ?(_ e;)a2Y'Ifh9x=tLNّ4cN>Xmp ̰T=9C- H KZdaߦ$)oU*W=S#tU] %j3PP+5ȶl0 ٝ9 Gag8Ɍ743ʕP޽Tq7Mo^ ^kP4jר Mگe@ [$Q;qҖ= ^WzVt+H&He^纕 wҠ8:re&x@ tW^:s;KXK ~Pˏ3:%J "7[xU,_(D/e#/I?⏝=@Y3F$FZ69I80ujqVs#l s| ! oAtf]ʄou5f[J4hg#Xa+8UU;PFQDĈu]B&Ym6b/̜CX{ϩҠ0P4J#'6߬Z2uޙɸAQp)=`))}}iNĸ$yD}#BDvbN43Ն(fԭ"@B<(۫XED]ҋ€ )= q k^7(j `2>:QI X6Ż}<˸[Z=mi]11W$/Lr溘}'Fq[.*CIIL6 (uFk(HF'JYe )H]}\1[$F^E:YYJq,2]AiItEefF;n3P75mPp2h/IHr󯾰U2;iba%eLq){HYxsТ!苬evBX.:/ u_ iJPM|7|ky }^ʶ>@繌«ۊЮF^ĺȂ(o+?t<49eyȢ崎b}Qm"Il;1~,wPXZ0k7$83ջH֑[9\1 p0,$x%viw 6na~°wB^ەS_֌:s]SpQے`(rWREW&#P 5yHO WgP>ЄF.&u&'C`A<6>MZ Q5F;y}`+>"9=LZ_G!-϶O" `1Uk~1MUNu}^RV~W٭}4F΋J,e՜2XU7>:(ޫ8ȇzm!zc4C_~}v{)d. Ůƈmhtao\QEGho$o [-4A7`TU*_Ɓ"{/". DfZ(iTEDjv(ajS*"Qp!I(HdS6}\C EDb(gaߕٷ['rh>8kR0ahIl "V܎q %;]f& tUa^ڦϖfs #M8 h=_DBR_ hCf~uΒ;D`" Io]M8 =XVȮEBӗ fawqNM܅9* (d4Ha<1'yr`9T ժYzx殄8U9=?H*ze>-CL^u4~ggJi=(-uM LZqܑ7K:I *MݤËR,?N'E]fMxXZCI*mҹ@NhxY]FZ}O;p@l\ .FR|1l4CR<0|CLnFw|ݞ| .< -;}WeQ뼣M*Z#psvh~.={!F;gX#Yƅ 8 ?@P:G/O쥄#k_\!lEoThf1w6p\^G؉@#ǻQi[暑Wt 7vǫ }PL]+21E!4ۘYwwhn+2p^GBTuvge'2: )XQr#-sp&][!hblqC^Bv IC}!DƎ{Co(T 8̕$SI&@K&gwjWl{VڞPVh0Y|/zמ6Njo:Zq $I|~ "IRļFd՟]l$F6߾ " #vo`y`%BfaH{|w&bJJ[zxxY+~XRƪ_{n"#_ /T$m`cV.IӆKc54&(~yŮtRzA!fZ:[qvةT] nG4mZjߪta wqش$ >i1,4uD˿HT1R$I$ l"n?r{0Ijv0)k(5U4[Q-Y9g)iiƠ'tsw!,ہNYhƺ$ ֌M@'ĩ!X/wSRcD(y.E)@B[mçyRip! aGWh3h&טfM'dD%H EW$C/1ǯl,q[T`&9M^/˼!8 -2"ewqrp5a я }dBq<-9Zw GlY㟹Ѐɸ61/Ͷt:XIF7zOG%eG Q%W16hXpJlrh_j؞yePvR:\-N펡 3#ҾH>UA%F\i$25H[,  P,2njD!κ3pU't(]@bA͙LņJAwGX,E+I1!C%M@O-i?kxNOfAZzʈ.έ!04kL'ijv롴4=}I'%s'eU8yOB o0wFF+w\IR(ӵ@{wFshŘ\DY ՗GÛ8i[/4C=*gx9Usf[*;>h_-Qgسݾ;q3c'Ԑ+*djk-SN-JpxvZ#p!މgtăÞjA[~›jTz+eYH^({(_ r@G}PW# pW@Jѫaqc9Ήs2Wt(a _1Vc*ϽɊ-~/PyȿjOa$ ,z={K0sFԵ&Pv+Ja͖ji ȵ^^-=DE,r"G5P+HYDjw{F^-͊r#EC$ZcK.?q#9{,߬I8/r?-+*+b+CU-o{+4Z"_ߺIf|Y)ԡ{7kXv4MysTn* < )b2KY.dyHBQ6ܤ֓_7׳5@mI[^rƍTXHqY9ry+[.ɺ2(%b[)Ҕ; peel?# z0u纉EK\ICjkXxy&k=w+ 0iܭEuH`gϭgp}P`( b ٭K8/ģi_.ȧ`b`Qa@mgܟOpl;U+J=(DIeT|r0}-d4~X8 qٸ}V>{]gC?6M=H"1^t嶰ʍO(y"QTl,1Z&~h%\2K,[)J9 v+7WW#{0OF]A{ DJPlw+w $Qيߘl>\8u)OhwEQl}ޡ`KnTl(MqT$弔nbHڕkڿ{3~=~U&Y/sM9+) z Ȃl;^K~6d¨6$KkLDM|CiGGV * D2DUwa<6u"'6 ,2*?^\DTqINlJ@fI$~R1\b̊w^x\x!7熬:hWN =&좌[OAap 5bikfc =B9~"8s~8R((,Mc~t͇ Yvw[A;#z* zH3˨0qdGh VR4C!WCڗۆPLI2ffw}L0~ (K84Dsh=GC{=C EC1j6Z4Hȳ}lexzPh˭ Y-vp/t]~0A$Wa&k<soza"y H.}"]J,MC)Oz @pxIP\ h6?: :ko,V`*AXZ_9}i&Hmɣ)3}{5Dyy `d^*ItqQZj !5EO)_eTIJT$N7Ę8+{vgW3lD6gHDooIcd`U@F? YF/R3Y฾+8M`tƲWauW} &ݹQWZ \I2^VÉcF0p'6wpzaDk#0ø}O֍"PE:bIYM/x^s~U l {$a9Se޸vXJ}My.kpH(XC.FEnG/a"ȍ\[&.Cx4)!2&"F|< oMZgCP /hhF0+d&9-gsDaMŸ67ݓ[ 3ҳ=vn!9[>.4Q7$Tr#2_90/(Q;-n.Kq37Fƌt׼5^]~z%􄦝@.jBI}dQh鱳r} ([2d#vt~b>aIjܙ9PMB?JM6_n2$Dc' ![WYp8T-bkўH1ITaLa5#bUWb&뷷MO ᡦs^[%xwB++Ssd_o NJ\wl<iILʤYߝl~)uqF5 ,BsR d5EaOڒQb{4_1;IF%U]7\~2hʞl = ϻ&׶Y˽ YT.`(WFk)| QQۗ*U[H$P \s=%:>*ujK}6XI${%×;UKiPiAr8X<4HT(<4zKBt$b?zY­8s5PKO0e]LZf_=HGRcm988 O[`O^0į 4' Z1afV#DQˁ2"Xi\"!L|5IAƸ#nx)pɪF}nOB3xżPy?[us%K9A+wL:a-Nk=W$v/Ś>!6636!xL™xSd<_cCG0|VaݲU ߫/.j 0O;Lg6! L Ku&qcGрiwuW:۴d@g"RNu'nva#|<: p[tqב_ц;=CIۤ.Gan&o%YWu*KVݐ򍱀=D4緭ElKMSoN;g]knً72p"IYU|2pԝ(} pY? u+9;?3q7z^Lm ukۂ?;$7Pdz-V+"}spw؟KOYKb6V>TCz& eٹ('}r!6q)W1>S!aZHt' 'I9^{^e(& X(d|$uY⥅B5\4:,+Ф\#ヸ~wd fkB=_Os ¥S"6rX3hb^Ҕ OQۦ$ :O*}.)&l`aUJ$,0ͼķ dهU Ǽo3nIF| p6*)]*+fM%rL62.v-\z;J/04y+FYݳ`cN7[dJ[FyG[)B=e`71*,%̀;`8KcIzeu'lFDe4;'+T%,'OLKʍbzcyhxՕ{-ݐv^ۣnKS9u( Iqi<F,#<2h`g8sWI`=2f}˻;u  ۍ ,"6yqwtoZYP;xi)˰hɶ;q:zoPCs_quVs.«UPR3<$@FFwhP"TUM92#t3B_ro*;nA+%zˢ ST{~y#_Q&ȾĜNfz3^By7 WDCd!q@>ljVo"ZblI3 aU{By~]E^O/= K:8u_Wd& (n8k82`<&SLgvޝ׆+.%T"=ֵMRA3K4hVV+J(ԺE$cg ڨKGR\(5hi,jVA|7T揦Bl)Yϓixw{\Y[0?~+DPMJ}7TWR$}n,op)`K oqrR4t7ش qUR}!YSf M7_uǩix|b+/oEN&jurs`yAM"u um,~WcRdPF gL%|bxwٟ1 DZDހ}$ _55on׿ ĚynOdk,lz>V/QH;"P'b0hG})ib\E(NXf} _FRNesc)妁n˒ u b3OgɲoVLUZdSu3w]&|~a`8ቀGp |ˢFlERj7 K}9Awl9DͶ0*u,@q"!G$0 4Bh]vYJ( m֣h;Zϖ1YW;ZGxfQO.`[ia]{-.D5EٹLM3N_#e),״P 3L#'!`yВn-%#tԉ^5IiuryV0kKl1DyDwLYH6 9ifLEqg7{sPXPm3G5 /N}uZ`|BKԙb={RHJ VSOZ=pkvY$$Ǚ`Ljcv cw&,Y]4*U+Txn-Z>?L%PB֥6O^ %V _}`sB5HTJBnmR~vS%mˣjӠ H %l4)}ze.@b/D[R)!{&AZTᾍ~96({6=^ hd{u`g|5'9No'!$>!]Z3=X{4d݋a T?^څZ¡E`rq5YZt{{>,‰vVn8aX$<(4Up}6w`_:@W,2GwvwQ=U,|=Ǣ-y̆}q(mc|;1]ܳD6RJtدbsg-ֵ:5ߥ̧PLe1zz+.C}gKW!?Q}@e`eR잦~k=z!Fn+a2楟AF+#igr&H{?oz_vQ~8o` ^6E^򬄃f AB].)sv^lq1(L}Xj`$.K]C8 Fց?$dhΔ}({N7+=p8YNo4c%2u P/~ 67~M={L@m&zHkqO_K]g^=%/YY}o#kI^kj~2aխ\{/gU)*? "g.5,|rF$$#QZ80X{y:]j 04Ϭr '$V?:&~ðq$j2dSGag cTEu⠢D\XJذף$qgFLHߓBy>9^ߗAգVV Rm  T׃jnbdXD6@ך}_\2F՝a/KG҉[k̭`A'5F۝Ŵ˕=Z*gI. s= Z{X #eQG Txsz cucxy&b=^> օqLJl˩M>( , 8߾-BVUkE-RQxIOu8a}K=o!אHhdC>,;P# ޝ0{`Q-)Zλ NI86KLt9Bڽ 1Bp~agR eK[IQ&Gcq!)ϲ <4J7X}6DC?C_Ny\}D 9Y10v+ !DŽ$mX,&|[̎S;֤>l &.h"k~v;Բ; l30 qi[cyތ,ɲD9lكH#~zR+ӧN+Э4z E}/B!W8M@ӿbCeϮ W!v& 6 0l%vπt2;LWQ/,yr˱;9k^%=PJ[lR?ѹDV @$'Kl1g %ObwJɍN9ItkIؐPR'.u $&U=طt!!->!nF3>xv[a%s^PAʿQ.c5[Cg ̣X,,YmrQ7լnJ_"Fp; ջ0U[dmv3p;:_U>$U6 =~e^T1M 9X䆃/ Tڼ>gR+?]+n|CRQ5uey \|vjjkZ()|)]Q;b&I3C8PϬ;6/1a;orI|3NpŽXBOQ5 X|ٿ;b&)޿}ՉR%2X}`/aGiT8[pC\ENғXsd.z*)Llj**RghtU@>QE- stsELövx1Y.%یg^x!Y3y% I<$w4'3Ƿ=@f!=M{vȐRkIuVN^% Y$MN{@qI3Vd7xJKV=ܵrrV0+kn$U{a%T*A~#-W8Qiso:nζ&C0U%= qr3V{`xWIi!-0^Vmy'HNR}H\FE"0v9OOj0@lopiqHoG?+ YĐ9s4zyL` NͺN :3J6rVKECsfrQ6&& P'˃1O {sIZoԍ:⚵B4R%J-flX2%G'Φ+qAqxXѥCfSlQ"_d4)zB]FCOsH.vjʈ?+d aNO&%>+U$BOc,p0TH}m]L%(cf 9d- #0j Y $EXK@=%L膧yecV&v[I Fv0[VO)~zDDАFc?%x'<\$IpLBD )3&v(12dI Q&rR ڗTeAISD!eVwvSQ`ɟ.$^-u(ή=Dl# 4j+PW yѠs8UJiw)Zfsl S:>{15%!2g.p r/b958P<`6+4WZXuC }t.e UqU!"m)8=óbC6ךJ:%\E2V g bڰ"*{MbO.f+ࢸ^|P653GC[_c7Vn$ t]lETuۯqGF}Q矯TS]c׽{!z10LX=cG^Q!ϒD't T:Q3Ydg|[y W2!@v3eu=w*V!komD#%:6;3h w dL0+n c!7PSѹXȪu)/B;QK/O7ش/KԞ` `;'t*%56f1*zDٖn">80 O?kN&3aW0xys(N'+\w/z)VƊ+FDɰGb<si &g| Up&f[cY S<|Nڃ$pjVL#ƶ0Iol*mOrUO$-Cc˱6dxX܏ _+<;򧎙ͧ"&L/zD~3w1UK0 Θ#- kH.B.QT:U4f?SZ'MB%{lO pd*0W !=|B'Tۙԝu_` 7pBd*>D-`[Y('dtCJN9R%2S(nΖ OzE휃%f)+pmkg[yq"4@u>ĕx`J&>9t'={l LEUujM HF1d"ˆ#|+|K;QWp(lxUVkb(9Sd@ﰖ|bOn 8廩;/R&Q j!$G# .KҴ-hCu!&lhЋ\tz]{TMbUe%zV$ԱSڻ 4~/t% CyusnߗKkP t7^na^:X{% UJo\3{`2Yx 9@QQ 1YSe߁ 1g:.$O1!43!ǼWJ8k4ͤIljO֘.`wnDS\]$IL}+0J_J(G \^ku8.bPܹՃ43g뫯VsKyCDfptKgpX4Qv=U8Z+96>g(v.`4k40Ac8pLXoܿ6euK$Q9IL"3~ް;nܛ+bz GVk'>%v-5JUW SҊӬ5`?uB7ƍ&;*S7X' Ns~6zlJX7aC+FXa)27,d-qh}MI*^Kq!d6RZ?j"1ruoJ"kWJ!Ze,NSb0kXl]c\>Xye:e(hSE/2'Gc+x|=,eXf2_q·쒫uΓbP=ʤ,Ɯ[-᝶e84)NLc噗CB+f@Ɇ]c!len-ƩFkdDAK{5ƑH\0i6`bcdv@ܸFcPBˮA#/'jڣT𗅝uPd0*Km`p*3ReEЯФ QϪiNjcE͠hmмԎHJ=p}31J́~jN)2[%~9dS "}jY8/p C'#.ޝuX#l *O;z 0p+1IAfs!5YT6Qg_DPѮ0ݧ? 5>Ks2Y8~ tH+c~jJtx͐US8mqD 4#9J`J,1dnxeC ;uFcY{?EhwԺvz^2x\ihb>$P)CI(S%v\DgAw+^Ӗ{x8r ^ZMe zX!~sRLYgf{HS@?wt3L)+9uX}=9lLQʟڪssX?8P*4r=62]uWvȠT3+nޏLz9 E@r4nAJsh?O/o @zpsHE nF٩R7Lt2h{|Hi[qR\b z*67[TEzo2m#nϴh@{d;_d/ؾXg\cw!/wyQ_&J+Yo:x]s9qikrdC,]c@PHGj < VZ2| ˺1w #!)] vQru(K ""uĄ`kn\ђWuú~z]ry]qCZ Y[ [7!&;AS>$1md~j]˟, Nl~lsx(@F%9RyoS|1ALR%΀ Ƨ0ƾbsȝ3d 1gwt̘*X7nV%l%SeAtUCVIrS3C;@oX$?ǁ|KnC1Qe0Y :RjRʐmBo[1e]F֢l{#I s."'V~r!ܽ*wq}dOq෯N+ɳOW`ߙ3l]]GiQ'IK3]ttb=SCWkhvUcF6K55|&A:]'w7|47SATY3ndP+LzyakhpRMk1NDBuL%"ծ~gb_T/\D ,k+0j[N`C [*S@X!85ϖ<}m"hO{Qi+;7JRNo闘5Sr:=7A}KCRgSϰVJ~ķ͕$_KȔ7tUSjoupYlR$]^U-ؼl1Vv|$8=5Byzl-;Wd (dO q@- ??"mF?H Q{6\Buئo"$Pʭo;.iNKH|v,i$Ji|8 Ыou%,SmyAӬ4"Gf&m !${rԴjƈ3m2 j^\NƋU9W,}\==_@Z7*X~߸HQK]>u\jv;y'x}>-qqJq2op50+EyҸ qLiɽH}?.\$\.YPp _ɱV]م+Q/ 3qLD>4a/~El{ Ĝm%(Ƞvx2'.._bmc!,+;FV05$8043V%Mj]lՈ-f#!ڈP?PFZEkcE#L=ZDh#;{R lSt!_0P0?;43MJ<йA@3&5Mٻ3/[Z!Ѹt9t§1i8E-yUl eCWdzCUiΟ=4avZ}LI R:-MU`봬Dq,33ύ֝SZ)ig2֙Lx]Oۋ;-O.S"cؓwF9sRT2?Eؑ񇂴U5&AU}? /KSs̀_̅D$-t>2f'%RSaYիA!UxjsJd9z]G#?/bB[V7yX"qmOlWU-},N[Թ,hDSQʐaY`tvHwBa{gY^ǣ5ԫtc63ǗGZ/~v+d׊ŦVMڀ?uIb6-{G.K0^<&Zt2T( |3L6OpR_fگ uh s\A}sz$`030֛I,ŝ^h'̝#Ԅw@zϤFCmnAv99=v0 Gecx2a+2K |K]3n3> :&K c)*f V ni&6iUc UW?c$&`=Y]+hOkEΛjApغ_뵴(Z1>p YBBfD%n؁]z \(?kv@)R3#M˷˗]Ʈ¼/|0vqX<򅎉}#0&^pV_6Pޓ'b:ATݐ1 NlYg$-FڑJY=ut6F?XO2GOȁ{cJ؋_]Xg[NLM|.e v<puIx 9DI[q P`QBU1y&qE#3 vI{NnjL/@rG/a:S[^9MV)UE n.-ͱ&hyȺ}^ez3Ss# \ wgSk (FlW0JtD@FǑv\*X 'T$m@7c<'RB¡?ؕY Oޜ-?λQMP(5O+l?u~{$DC} [czR۟*YRU$b cJε) I g]knw؋u?S٨4X׀ kW*tʏK*sq$1@1>QU0qiI\~<jńx_tjкWv1EQ%*XH<+A/I!ʺ -.+ |{ mB@ ڝ7<3\#{ byGf/SAzX-)mﲬ ]]~9Z[xnUM0H8sc6Rij?[ʖTZ͎icf{OЛF{ hnqHxjfwZV h%% W ^+ ?G[R]3y񟂻l΂wi)hjk Eh$>Z!j ݼ/i/ˀ<y _zƿTRq3G[|ܜ] 5Ws R={},a8N+7ENw|?~ R%6y21E>vϮcFE2^ӂLniWkz1>J?^[D5o@Rɖe_*l՟OI-pݑWlE:~+m~tqfk߄C?4Wu;.RYQ}oςs 7Rºc*r$(E| UƹK XnHeU)nQ0pg3@{ρw2_uXFjzGK-0$NYYC`y]ۄ>+%kP) eUs;rI3NPf n֙+dMfD~ T}Q.6 пaxA\D2yz^nfXQNF!& 3]-Pأ,])ʬH}PiǧߕJ^ZMB 3ʓ֙؟2CE 6yfs8(du;6[e*{ވ+D퇛h-2XUJu$9m߰lҕ1=MgՋ~ K)`ÂDRdwPs9Ri?d5ƮV}AUuk:BKpT9=?TMctf?S1d3{# 7Tj;͜Kv\'[]j(˼deտs]=U%!!hlK=vfU-$GB1Jfb^@e5Uwj[kw!`(0LLj͵p8:f]aߟbK݆ H{v`@tfV:*܌s)40o[ 弭>7dF r-}:{4wwлx&qEus sN[蛝cE2kUXXpW,]<ѽCQMnEtC0UsϞPDZ pFBi'Te }&_ ] -A M%&RVVP9QqYlяY[^|?Xk۾6 7[ÃRDuQIi$:Ŀi1m-ׄqJjf\}WfwN^AFZeCYitgvO~-l ïU3 og7U 13akT|ceKL ĶĖbcwfz,QN;KȖ]@#P NE 8GXV3k@'߁M5O?pkGછ`"<$zJy 6b@:t'Sz]ڕh2ҹ+z/$cLqL@q{ Eͷ g1!sVKGž@$,қ_7KC6 |I.e~~?@U6";!6~ꧡr *=?T| |^](W&1\s^+E]3;H=*Λ%X|:x޲3$hV+tΘY߁=bWCw0Gi/=y;{ Ʉ kiO>]TTź )_.~<44+j H c{M"?-!/D5}@řn1dD'$b8@?8K=UL? '(6i`$$[N",Ba$XCer,!NmcT]_{bRP 6vzKleuXK̩/E|bВa'꺭DJ#\=uV#"L:ǹ.ܱrz2!^tX,j?{_6]GNEK3MBSE\?>XY$bk5SaѰGTtsͯ5?4S^F<33Pq\uQNp&KoKBJ_aEx^SZ?Q <}:nz@B4ֹFRܢ&VӃ5n0W/1Р}5QcEVx_?Iׅ݁Prc^k["j@X'],ͷ҂aE^T PI ȧu#3CwX՚gRJQ#)IR6$SZUs^XJalW=DluQ6_՟!~/ Oi4٘l?6Mfec HWA|Ao©4a]hx=e}3RW0vQzʱJ~0s)R/8^v]8;nqXydnQ;;!!g)eܭAԬCsn<$ Azm64]SLGED!NBv f70G|G<ɝ ]W+JP9e4C2cm mJiθ}#Lk971$Qgw4/Pk=s0=& i~GŎ JI LlFŭl貼or \l|ZruIx+Z9 a:LYy"NC=EX{; `T(d^;3l];K^xK{O#{MX!=̵}Z 7gRKOiDkax ZeOf_aC+OvOrk{3S@F8QPKI-{I)u[Y93;yKFq{^ ǝMQ䑖=TdrE8YPfLgbìd9Ɯh 1۠}h 14^Ѵr86@蠌ܩ9wfz\|C an%ygPzRy||E^>+N9'p5L]׎UC=\lPɇC65Tuwn1b|ܔlܖ#C_Bδ*k.=iŭ'|/vt[__BWKZFjR懿M.g(~.XJ#բBT&}8yB3VU0>/,qdQZdrӱMe\:ߨ?QIAȘ/cELAeCXơovîhgC%q9-z- x_!ض-ՇL^ߩXXjІ[?)귎Wȑ՝t n`Q!{SnA_SQ>w8OԾ˃-RV/`X&.#Ώ|J/gK1VTT/A{B?­n{6f 0OH@jM{ihVla٨3r sae0DCFE?6D܍.M"L>yPspo'hg&0|(sZdov)jY#6]Y?>k )U!s e_O`o4q8Y4!XA>۳ܞU U*WuFoN;JRYS iD:L2&y m{^z篬{"~>IixdNPۻF.E-`R$Sd~h熥쳥dﶸlS e7Ă٤`FtNkWEOX| #ьQwې?2*AT: ,6KL}ŞHFrgUV)M>*7S R"[ԩke}Mؒǿ5-+],E˱c&rdaV0 KH/x57W4Gɠ+v6%`A09Ԡg :-w 1Z6i9xO  Q΅5ys? WK6K+*OJYQ5b!()ֆ=;Eq4jguBb(VsSln5v X}rkm&fs+wcCFȣwVl)a~J~tr6fRXK`߹wVI3Tcó[my=-S uC2itCta T$ 'J[$Fw\HgP AEl]YC?N?/}WFOBS $ta4W$57f,|UT]Oi|uS [sn(/,9 <_x^}ibG^8KK'dtפ ]ջg<]bhÄ2SiLcFk!m%1gPsûL"-xrUhL{%`ϱ1Ɍ.-{wPD|w$dQ y60w}60FJݿxy%oO|0-Y֤^ i)+QjzE.JURU XmhEohd= 05F`6PO}R˕2@ *w Cz7ͫC9v:w@&!NKecbw,M_{ȹnۚr(Kb>c굪ވ>LNC:fat^BtȍOBt;E! =j$nRwrEȣx,VR0vmLJUQַed5y\YΑֶ3 @pBl4 ra"(*bE u_Jof(R|~?v%"G.adÀtksv#geK ,?J^LO[͠XEG3 ;ܥqRYBuhïNGYL~ˈR2b2Ulp OĥFϔsg;c{BIGb4.u'2yj(RHw x;n9] _H^IGą3 Xp "-JԎ ~p᭧&)K@(CSLG _6N-^[l"+6!AX'mP][G}Wi~/s8ߑwSPo{i2˝߁Ͱ w p}=rt?.g3~:0 `"ÐE<}׍m9!܂̩<4H jBsDy[&.Į_6^f (nG/#YҕDCvtЦ\NjmeJvG1gnYp(>J0hMe&!)=h܌(AG~m)!-[lDi @\jCnX&?+ W -wOI$J <  pZ0:x" yU8txMt},!D"녷ƧH"h6^TRJ NN¦92JDTXڭ_ H~0ةneƈI $H#2~єΟM@ s44|@D|Pޖ|$fݳz uyYn3 vzĔ{Ye*R;u5F!~w'j]z q),8/]2N^.\@j&*]@^I΍A7wۍcK@ɜ!(e6cqxv)Ǣ5W̵$*<4b߀&x\Y.@k{XmϗO`*'^hl 6v/򃠻N3O/#)^0찕 SwhS->:&,4t~,~7vZk#;oTn-~4p[ Dkq[*%wy3yy.6sPPO .aa(Fw,2S2$z_9ώhvKαN،B%XX`-B_*"CSg-Cm{02Q>Ȳ &Nt]1?-ml 9\Y~!χ~|yYg$-;QV6\`0+t#'fCّTi {R=ݐ{g4s i$ّAv w2+cA/.jwrZ{gy{>޳\vнlB#&X+E*h#G?@ѣ@fM_-m`KReA" /;SE^ $l0K3f iocnj^>EfրGbnN4LQ0!ehW5S畖&H_˕@8qI6Ot xəĸ z;Cdp6i0t쑾"A8 .Q-WE)n+t>~)mȨt ;5NOeVs{/~Y(l{ NpW%z_0RY'+K?k= ' ;#&o 9< .Pa WTǝ= jV_p:Z{%!3P#ǤdP'? gMGuhZNQE"Pgc'SB.bG`B,XNLF_a>5%0xpW,~9b0*-Kk #%sNS\]S\{w^cDrܟ8q*mCɄ6 v2d:˧7خfjżj?Mo|HyL|4*Nrsbm'k~5D >c);{H.W#L:\/A $Ԃzi Fs^GX!u,zdrFYH@`W/F[f!(T/=XW3IKߑyKSF`ЗR5Jd#fJmD:J! ? 3nF"؋B`zgWD-)p{ywɦ.+{#t]^nJmaf:gw.ebdڋ.p2ʥ7hːlr\\L;0F~ƊoOO}0 i|X2- Jl!ʫ!ty J60Y :k\h{ O_.?f'盙` Gk+gfĦy35{hB*iKq'37ڳ  iMӢEA.vgO/=MֿEvOԛҿX0Y\R?%peY8\')ˮ]HZGb~ѿO 1ʮB]\~#[q$b_J>(T2$ca l?#0 h82H1K=ZIR/' ]7aFGş"xzJ>BL_NG3ΰ30g@%%Q=y_VWQ.DatM7"Tmid8j;TW{q{zž D{5Bhr _cv pCզv΄}mwlwT' * ,^@u=l:{xՖ9~CG2r ўJ7XtK=(g-Gg8ǬA3܁H@Z(]fn 'yJ8pntzg⊫KI|Vybtn6Ffdg\Φn%!_ő7qL^ Oh1cebiG$iB]wNӕ0vwѿFزۯx<%M"V:ZPt7z CWlآN 6vic8p4*Nf*'582s s`TI$v)]$&d3WK$fXi3[6q(.N3w{ Gg(_微NA=$כ跩.!|`T7vjm nDoUBp-N3*y%3rXǝ >m|8 H~ Nn{aj㍚ty2W?2xb#4pB&PV{ Aq9rhlP w\`RK3ۅ8Ȃ_8r?ws n 1ZP0sjEe|?LNH,K 31;B#k J7c%y4P+Xsj֧Zkr7Ͼdyh,O=bb8D5@ v?%sŷf5Npc}8h)_pu֋02 ۉM(Of"tC@@a-.{uEhm◭4=AW6zKM/e? r#XCXYFW-w#׾FOKףXk)̒Q86sZFe + w‘`erb0yidC&Л+Tfy1fַFٻYcWWNgI;:N8)bb,% `,x|RR,Ar4)lŭsN$_S5g.KrʼIKIMvQdEiCl= *[6<_K ]a Cc^o8Я'5b4H3WN8j@ym)Ef][ۄmGɂwAdb2-SD_Ny Lߒ`\>}٩"QRQ)kXzk >jw^wsX߯[s3_Ѥ/hq{#ԕP{ Ay>{SDa3;V(:l$XO]i딈)r2[.GmNB㮻\h&+P*A+ AbϼsKz;4OԌ/.%0)wxy*R|vY,E k*70UV5ewu/~@ 1(=\yJ'n7qB!%mwOZ԰rocGl"R_/.oMWY`Qv+@J 2i4I%1Wm 20}+B׼_л1khqP",- ֐7XAIԮAd")7 fbWt<)'/jz{q&e*  r0pϕ?z͊˲$oWa(%Wr1ab!Ea~ņ'Wt pҺ" K1d@ /5ߘ虜rCNLFR}@~]jYb!V,tCrZC9cU{;R2M7(0PFw5,T3Əl2oen}ňNk͘F?MhZ..PoCk1'K`kZ!"_z][73,ʥvt5T"M{V}^dKh&¾dE w3!?C):9D0ɗ&` Fsf9h;Nn KZ EֺyHA*vtO.0@w7y%` #mAiΠom n$: 'e 8]tYj.GNAp3AN|z4AǾ yu},ԙOREf¾qizS T(V},XP >r\t0vcoژfˡ6*D O XfɃq=  xq8W xw v1 hH!BC*mO][TbE 4)19Gq<1bq g *9;{~@;qzɲpjםp?\XY}׋!;_lh HjGPdO\YlT^+ڻUH<9ܒ Ј6B˸rdI#J^֬ 3bd_. èIьkVRND<`ta'o^)MtσE3X~/b\jdB1e"!\Q.X8 w^lXJwcS$En *TB#*HI|Br& i=Ag.aM&$nR"<£ISKwVC =Be ΓGy<>*cd2ʗbvE{E]ST\}tx+bؽ+"ݠ q 8g2a1̲qɣdg ltS KQgZTS@6T╖>w$$l3wH^hX-ȥXYyH,ed վ-)u@iO_" @T;r-#%*CF0iN< 'QVSjf[zu15]]S7{.w!I ^c PRsTUF:62RYڃb_y&!2ryAp}a] F)}O =*9n;]DYǣ=ii= QB%w;hE bXGv Vw=f+z%@Ef] 3"nlcĒw>)BE K^$hgQ~QPp3S#U[!i<͠ y*ΫX\{3:y4.[kgo:<-O'UhI#.l:O3. In` iH>j÷ndU.ΈDg^R$X~"Y a(q''v뽖h0rB(t7 i5ܵG2=MfiW<3J^5T%~O˻gI-z%U8 )\q j.,tjmiecw=v @UԲfQPLqP :2%t1_7aC9 Xk|(zt2/ "2CXRd@g~i- J9m$vo, i\G]U2OSa90Rc{ җDn+&%pSJ[ZaUY{6jtH-n"r&=@{ǤL8B5n~>B10vO }:i3@a6M!aWvid@@SUԘ3!R~hz@f*j<朂L2Bvlee'^i`ɝLY-c&xD?PdขϝSvɡFA %x5Z8_|g `UD3 qmġ cvlδ>Ҷɦ(*"zH#EdyįQ?v{L14g5! \.ܡbtUsGENG3Awtf><ͦA}Y ױb ,:+4Eh'Fm}:X7?xmAeDYc@;f%$ ^I#Vl}Aۃ}a[kP\}領B.[^BG @ǃNg ]l}!k?-m yFթ,4P:Ƹ.6ח EWp[kF/UgҺ.#&ɟ* $?ۉ+CEquZL^;c0vl hEQ8Wsq˲\͐&կJût3aWG_l29&}sLzrZaR8E /n`Z_v _u 9+.$dLቦ/P(<r6o.2}lV:G2t`DT7N~@N=Z0P vITgj=o$gpeYMלHpJQ&lIyLk^~C,OKUOE+7 VXlBXdl )JP:pՁACfԸAQIҤ hw^;,_ow+Je 9&jQL5; ? GQY w*^~Erj9MS뉏"֩e,}ЫTvJNĖrma.DPN NZ4G^*w40Be$yu쭿ë ;0 lVuv&uby=!wLoth fIZ?wN cPO#@n"d)(@RsNjjӽ 0| =?5nB4A*_]GgC !b`岯vK꼮7x3o ub蠺h?=lydՉLN>Rc,p٢zr_ʗX/z K6a#.5?@6){y&R>!8u;lIN6#tgvN8h,6ǚz >_zy4sc2b?!oʘTRboot@GSGB(6i2\Rllm;g۲WN9_hEoj42{:*åu8NJ..ar*@=)#6^+07( Ռ}_9}.4mC{d\m(jS"}V25m]Gfza6z_6 m!n>X_#/HOo^H>13”IfoaQDzܠQcԖMR>'<[9\V7}bөֿPAxNH2RW);6?Gga[og≠Rr-{fddɻF!T*L/eo=?S*HdJQL՝U3c`s!흴UUXCE-DBK<ͧT[.M-*/(#ȳIN؃[.~ZP%tăzR;BK<%>Y t._SkZ(w@j?}3y3)KkɛR/՗ 34 ,$SYdhױC3EWײh$r]IZk;eCh-`BySţYWD"ihM݌8_:Tw{W)i)xOEuaD(`v3%2$(Lo;dhxPPQo@@,2guX{ qHdb_3"។zr;w.Yc `aZFCTctKSPe/Y]׋Zz dRB1DUkƨpEV" @s.0/I7B8]A~I!(n R ڜu–p"co/G?vJSnUw"U5x+ Kq`z[xAc'YB[) C޽ZUϲg~oC0€*G?B8'0|_b&SxAIQ +A_Wgo(dC#mJnP-B9}Ws5b ?>N`y65yOM7$᰻<qڎTaGS9Aeb6 WGU=ӢġUx,3餛_8ۺ0O\:ݰ/ԯV  ?vv/B)b+GpUxycK9#}ecقdFTw͎tIq}ZFQԌr@suI7~BJHPQ 4VT@ȅl+i_Љ@hP@b<+ާ@ l|4'xz&1촁  SfWͪ,%&rPv,!=qE 6bϝ6U}k>_"~W齓E%7QnRb;2'9 oP԰cȧkX3s5Kr_,?v⦠0J!3׿Rvl_0v^26i><ǓNg@`WcvuR2^URv!IP}#iDž/t ZwiX^):BZol1dM4Tet1?G\PfW6h$]@J^wj3iG[I1O.Ne-_cKW8I$_SlH4'JO<[N6Z-8GӂQWbG$o-ضcd]4(6tA<{17z{KnWRL@N97cO͸Á>Q?T]^ l.UP>TiV#G'<޼2db_/d}(:FAIIqg#=F!m]l1~iJ9&C5+ ˞B lj%c ފq_c+cmh8r*L-#b3t~v>p㕖 1~r0NY8SdB: 2ǚ@kʑ5jҕ/mkKNh&rϏgHYS|êH{a :Z'ݙ 5D)Sh}V"<ہQ7C 5x;Z}"{[oY%"B:S}p`q\Ot0[]ޡꟚ,6 %KUA4޸P]sw#n'(!B3T0!O6oU_(y Է*Bӌ7*\'QE9 [.l\6z(J&5dG7xo20e{by}˒c/ނAn7: nhQ9r62)'rg9U>>ǚ40kVϪĻiSk>B ܰ/6KcjB贪3{SvNR= 򁜅WFUT2)v 3ۚMq9rxj>LE1rEEby64;ut6܃e : sK@/hRqo.NR AOwAgNo :_Xa$kSrW&WkHb`W{=%p8GhZ=(<( JYF} #s|D77`zkWQ8;ڿTWIB릭{ƠŸ{C/M, \:Q—P Xo rIlܽ( bB:1` Uwļ~o2ti.N:_6R(A# sEs*2yNA'7$hie(fƵ[{"g *,WQYY[kcK:X;{UQ͕?/` 8({k#SRKCoȓ=\P#k\ɂld{E% kėt km!'#*8"!OcYӊ pphAwt6Cm⃺iSK^& \`G'TT䂄֙ RF̐շ\Y+$"O-)vշ/aA( Jo"u* YN td%~d@F|.%u~ib'U3gs_a8- +ַn\!]Ϭ f?j,h>}ޭETq]Npņ~%I|6򥤱I~ >Ek{[,{*HppLH>&G1T̓Xv |a8|ϚEiDh |oԿiI6p?6xxQ-jz,Fs!UK #(b:.MYY'M.ж(h!taF5 tIOMsOM]Aͽ{:>)DEqjopYnS1 ɬ7y`^5-ڧ* ۲&C`䩘fnl{7n$1; 6AZM¨Sqې:̺u uۈKm.-$U#$PI'ẑY0ԡ=g_0J" 9[2:f?.(C]MbOaw2]qi!'9z].t|Te2QJ5,qk*ToGyUb.Bص>3q)m[4e,[/Lw~RKYSJR:J,޻'tFu8h;A'镽-ZƒudF7`n5PcX,Fjc|y*J s-'Ǟ8.ʫCbc˚\(ʗ`U5jp[}ŘzO!m04^ a8MY~ ]ټ]".uTSڢ8t|a-aɔT+>5Ok_!z9i#v3LxQ.fde J0-wnsJ?G$銂Al %WcD(ádAWsFbl hNN|>JXS}g̼{D!ƠY`^.I'PF&Y(҅r,uٴ*$+@6L] LK *{?Um࿑כ 3%= #4%E>:CԲ2N&]8~e{xF@ zEO Ǟn >jLHjPp`i[4yS9 Ǧk0z V+^&`gd<=:'[ː X*#RLlans EQC`\]`5>͸pOe2<.sȲ 4\y?Bchԯ* y@pdF;dxD@Kep{Tx7G]nocpȐhmVi~crld'H0&o4A2eYC Fc]JՏ ߀u VrK@Wj @ ,(45ƐC2HCd)ebCAJ:5p# gtX1PRu+*m^}`r73k}sI:~0 )ܚ~ U!rh4g(q?~c/}mHalpJVwwvcܢ׍[p k.jt^&^M8@D5dk\7Z)p)2uC[/p:&H!'gYZөS|gQ[P9d?LnW@֞̓0kg8 i6vg].3h}JDq/ orl)k蚳<9vߛ_q^^ {bA \5ޣ- B3+.LLN AE#X/9S{l?1=< ;7݀oEqPnړD*~7#Sut8\-J[2|X/?#6 ]Eu(\hPX\Z'k7^pG8'Khδ fK?H@_ņ^:_ֈ@=4_-/Cj%1S{sٯp}6!ZOuφ-GnW]*{iu3yx28@;L@?߹)0b5„a:[\aôERv/"sbdcR> dZ*=*'d:B( kf'J- Z눗ޙf-Jz,/~+a7O0zo 1a0Z; GClTePrl\q ?[^u\0q`#"Wv w8?z~f:O4Ŝvm(vz]>'e`bJ$}x>!!Lj>|8aCM!ƸA*L_PnzcZ[[gQ1=z==42%'S67v!i*q"ܩsrE)iFum=sb_ꋝ5-O3ꇡD:r?RYҘRC~LbY)ej\q ](i3rQϜw./n&iJ BԮ.qH7`ZB~7ؕx~Jv #LY*fE^xI is9∽̠lc 1).)))@NJS"ȮYBœdf5EpEi'ҚDX . Th 65#* Laun5 =0l2K2ަ^uj :͉߆*殕y]Ť>b.LM!D:.NUG6?\j9HW7?}}w,k.\ACw]eٲ3 [Ea3J!"^,ܪ] p]d;; \xJ. BV6 !o"&N+ῥŠ7dvs_ah]f?R?}RbyeɺCMC!.XX$RmF&/Vy@8 ۉXDNq(fxo<'yOk|;-8+m]vW"2y<]׿OVͳcX|0"}e}ek4+=hSѶssd\b&]`\UNAF=Y;> 21]6A*G:MVW֭T|e ܉g]Q1bP̵7\z^V.L LamrI6uz#y.BAl[%*-to3`&2(bc%6XS29^&3RE .M6dUՕFGyǚ'⣴'ܖrX&98 5h6ꔌꎏˆ۾4O[+oh zsT& a)~-A/7@l48g"G輬{'2:Sv(R#X`7Hkl }+Bj\w U NX84/%[.5SH,„nudJo RLˇ(* GeQdxztCȴgu1ItÆ.cK'ȻD ƶl3TdH Jg+wK+B8Rqժh A9Ƨ|6 6{-.ƒʅ]9z.+;C>Q\XE+< n;yY Ab80UL@Lն&m>s4E=0'MB%9H,Rr,;/%m6E{oZ@%j:ǀx}C_g2 uGkGA}(5Ia^ͤ&,o¥QXPО(17eNd'xÑp#q%{>gqܿ("޷ *fnƨDlvq/q ?>mi`Qq]WZmwF| o,خW6DF'w m{zi gty3-&j㎌&[2~Gpfq\!v+%cIK(xg'PffH*@ t暵Z02<,5W}`ϳ@cFeȶ_azrƗC*b-n#5:ruN^⢲Z.̠<(tlUtohI7b71|J `m1'Ivm6_)(Lm#m}r # ()M)9ws=$^ef lhk*ܞ{>@Ji4\Ec*<4%Ңdy%;ZYDrU^f4PV[]%_\:DN (/D" DkRgE/rIOrIKm3,@eRme w{9=*?V)8oH+t!FoWb:*a駏@ngŊr6w5 $/ҁU]<%~_f <;@A;ÎY#]ZDѥw/N\p5DKS~BUk]Ryk3bm,Afnma!rƊf BD}u`td7"e Mͳx"] Fc///V(#mjk30׭jX9uDN` EV>ZO_0<\;l?5$]ɯbfT Vt-{+Vowň׾M#5Zߛ*<:XoƻMو󡛕hǷqc:Ӯ7N_T{,t%h~ř /v}Bqk.^=BZ;7X5iQp :=\fܾ|4qZ\Uό̀Jcjs^xWd)/UU5AWCImA.0w+neURKy>F.T\k*~4[ 5!Am|D>tFͫ.S\4H dipy*L)"^:ܜw.jk?2cy{GphP k9uI,qɎ$0_]gb1lA% wP{N~BZr*IRoEU|=tLYCOE1W~0O$^BZw`-P"PFٕb2uqoEO*G]+(]G~}Vt' Ԓ8kձS`atr_wcьpqMfXyzcfa)UR+@# o%~oGvqk#)F©۝LӽazYTfJΝJK_kpAURIwߣDV%ؾ' s4nY DiX#` ,ғbxУo'M\՘y+E$r#|DHdzp!vr7Aqmn^ӹKmMv7dyV"oްStL]Bz ̈́H* 2}|(yv,䤪P@ppC4'HG,Ii@) o䨲IobR7UftQ-nTmkʷ.Ma42>K 97lL>hҥY࿠N 4Mes-[ ]ё_u BWrO2C BXVY6b,W?ʐ`zнUncGr>ΩKbD`|qZ kBڗ&Y[, V7Jz!a[_ еEW!vNV Ղڇ/ [y WW6BRo@ )Ǔ Aڽy;0.KkǠOxŽhͤ3UJN S#&I\z8JY`K2`̗SP9͐Čbp)DN;3b 1L%})j U\5 ǖδ}'- ;4RDi\AxĜظ;+5HQݣV!:b58y*'aYC4/"y/0 u󼻼6R[).3ܚOh% 7i,܎=9a8/ nTGZzI-\>t,u)hBZQ<7@ IS2&Ӿ6EܐwU2;1?(/v}Hz㉤ 3d*iRX ǏA V;uJ05Bkf?ĴO6T jFN4©66ěKV4c b5+?#,9}p5/Ot)F#:L-㗒cϺC<&V("Yń}[ɈUyc3m`7'۱as.3Ӽ6lƿyֆ⻯*uG|D0qI,M6̀C#9B ;)@WrSlG]M3ZKmٶ&6afBt!JyGghAU&E95C 2R_'|浲Dn'Lg#_ٹfyx2h^xP/zX,ef )8#db5n E,1?xj:zPڞ3 }98RdQBSC?F¢#; ^ؕ? D6GRdy 7;'t71^%' N4Yg3Y i  ØZ.9D;hubsYj24 ?Ӳg}=Qּ74C{KD['hv:E߾lr5xrv[t*$*౷P);4.*ɕ ~%eFcMLcqCHәqe-#gC4Ӡ"x5 {sEKp u@*d9L}YWDo5ldc5"o7Pr4]F=1ӊ0_hCfʪ<:RF,Y(C dg":p!?30 ĚiR_fq%f1|"lʽQx/nt2+_tUBC[/f#Gτo,iBSvռ؎Daz,NhH; NM]_MR8LW<!,2X̟&׶P-'T/$CT:kw+O8L%bZzR-6$$/6ZHJy =E{* :nV]Id`>Qvۢ9SOH~ÈywK L݃W<9I˩ r5lc x*EIl>?Jž*:ot"ݡ92eO٭8{Hzc":@OJxy~ŻastךY:$)[LyJaB 4i"KkrfQ8Ed ЁISK]0x)(3_ՠH߯8u=vp?>"dSI}EMQpjfO62▶` ;;el]Sc-SBo0ifM^eXi%H ] UUY4HXIrχ\2& 4)c=`f =6;4].hhp|?<~+c|qZ9~q!PRjCX9C&_p倏Sby gշ%Ht:2EQ [h? ANlI #V-psiY^`8 +5C]Kk)bg nZ+vta§?1hХ"8pU9aO/z b,NaO|9WFDy)0n5I 5YJE,M58Ygvs%@6rnDGǀ)\ ^R>Y bI3cKh4 sm~+jRѡ},JIWGΏОT6DWn ?a'LϰHc]0|M1"ëQeR c$M+ah"A{B>ghC'#7P ;wtBR` 64iE]l\t۩ÛOz"<5(D“nѲoޜ E@t(vcI< ݺ;z 8/Mn=+Z>Pe22tCr $E[}PT\SHTڍ<٣׵CqD|wC*Y'n4:^$cͅ&}4{~d6oζQqKSmZ:̔}`MBE AnjAҦLCB#vrokP>J0L&"1aF.8eS- 3ۖݬDJpZ/)=8grKL77"N7fEC]z+2N%$dTfHN ?w'\Ҋnj~]bL=!a ]J2/"Q|Rg~{$${[RfQﺇҦn,(a:CbV=)'VUK0h2άk4|(-oΞ71z~@3&a/X@jgN祱 ,WCKXp6ȁrtn3158#8O0~4v x$ '1E=ct%#@8fPHI2,8ǴbRÉ}S6]YrKрzA|l/W}B>(1`d=~= |cf1YK_WcrMw WzFB7" YA;H s@pѷ5ӗO^%_f*+S dTlWFZJ#3=Wf0rZ$G߃Hg#|BkgWKr?Kr-#{O-Bɨl.ĢRҧ}%ymU@T'zGbǝ7)(,!UINμjg"X9U`H_"/^or Ӌ!ςt=hͤe{St3)t-:1Cj 'p;52Vdby³%& F><zlpxb~\&W){ Wp yMP6UX6A]x.Cs01xc9}>0Ru^4E#| /ϞKOQ7q WK!G%X4}=ܭnj1t\0&99bn~Zʠ+L\]E'x-qj;8=QCt;YFC[,)TqQL= ~C+ReNl˘Ir <fX( 9` +VCАld-!%=ii =`U'$}l{Iyu E#÷tlA(ƮUa5S\A?^֡iRČPg{QdH:s2+: R$4SkDp<kyzsTL^:A-Wjl$mmQ9J SN363h'{j#-x\ͫtݤ&K]WP#+X:$g ĘXa8RԎ[04;&Y AJ4o;#ۢ`CGb[ݼvO(:pChYٿ>}sOL4s@QhBȝ/=ESUzR%zWɓḠXP3rZOZY$o9@8boD0mDD#MJOچ0D?`3XZMo ߾,׍ES3q \Gz<X'_TpYikm=,D9 `j[]8gh'iP0 m'Q_l w ̤͌?2(Mf1l n9 ٗcܔmSFGNv^zI6ڼ,c-*PT. S akvn?B.XALscR&sP%Z4ХK'yJ#*A;_iUh7p #=q,G)Е E`3w U&IE\L:VΫgn_מN-Q`|u%^)&9PA,= (*.X6~kX$I}%ʫ&ٓO*KL2e{;*[?֝K+Y#/H"TC,*-Յ׻-\6G]$/߉4N![34؉ݬbh:k(oU42E]~4IpHE: Ê9 8WM[ 7&j+l@Ƕt oTAs 'A 'o Y/ECp"ѹ%[{s(Eh ¬P7p^MOIq*?0eaлC% ()23A-^'Oo9$W ^7JJƐyٮ@䌅.풛8LA\we+YR ^KL8yc ~ @{Mlv]mAV9~[LSf5ZZYU. ҝ6/;> ǭ0\AhAӰR P4>~NGP#DᅦE7sZ]D5I_o.]B_>tKA߰|v"7I6a0=1kdYnVyl=o[&B}k7/ W0^΋mS4\~.qw|Mby=IhafvWi}-'π'wE_itr|+#:1CV,-Hr;hf'kSUC >-I"R\@bG]>@aZ=,|f`\;+-o "rSړ-9ssLʸϗ.ڤOTrҫ$Fמz쨠hʑV~_Ԁ*( Do2J@`ݏ5ZY`@ݙJWV IMaH둈!= .#5.ɔTGތ8/1|gBeL^6]sZlM$ EDzHJ \:1o~jŪQOa"L3]smHY?1bZMm0 ,SQ0_&$ eO5!FceuAXdي| `@B գÈ?6r`p,Dq)t~';F1XI /4Ԯ2p!ҵ]1y_jjob0 ̳cW)X%“&:/iɗ+"!rKmwfuCs@t^'pe ωƀA:Pez ֥(ࣈ|m1gXsED4\iu)_fHPDtVwnGKHNP İد܉y':2U0Kߝם6 YpӲwk(dLjxw,qWcTcg]1Xީ#VMeW$muramhsHLӽY7DFjrt(d-p,6׊mA81a/ixbN&:* 9e-olR xY&6bLS-#P̃v9Mք“Gw\ %]Q;Gajn-4Ǽ=5=MDwkQv ;XO,qFoZe<,% mI<.nʚ[ Q4stJ< [F=o؎</pgN9?3 jĘBz(:Dl^M2,Ƌ *o32S]'JCУ!/iaU 8ћ<7|7P"i$Dսa g=۱o=5TjL1 BtB 4zu7w}(W219?O^tž kiHWFJL+/_l% k_rTpkk wn5]Ьс&iz+[DA)YdгtĻzwNhHÉѧ0F_Y2")B`#IhEa\HWBT8PFuN-@`_nr:?^B SF|J%- L-Sbw=Q&bNB{;Q:,&lY9"R#wn?;͞!UU1JdFƭvboK],IY03͙Lr:T±xxvnP8ۂ"P@P41a8bj zOyPa GmB2o/X̿!EsHk hw/W$>gqFnҘ lGZgiif U׀F3PM6(8`W ۞w:~ R\8lf-Q,hN^ ghaDi9:ZpM4x/Pú;~ہ$^&lYB_O7nurdŀN=FYIՁ2hs6Í|qr3(s*,Fm4".~-óebySӆ&-mŒJH5˟Ej"YiسX{YkVqtk3,`aRn#fD.Plz}%xbٯʪ. ޶fAQ>3cwNSsLޥ)刞Mǯ΅3qmGR"yL/G@b(Lд˯`K=ҠlX03ĀSu==Yϫԧ(3f$ 7fpZË4yUEf|eYg@emt^|P ]ޓ4uٸ YJ-wRC|7F!]PSfRl-6<&Dy:K|);#0 I^ց^/< s졄V@zDn#U$+hVωMwX| 2苞(Cv&bhQ.z_A 5IPYZm>klH&Ĺnm#  'B~*~DS'KVV뺯zƹRo; q^F.|Jλ֨iPDh1k`2!) -ƙ Hx8 ]<[4ިF,Op$:GMuNE`,._ÞY(->$ ͰyeC$#Ҟ\$Xu3`sS€&ppЇU>V7eN+{<}Gb8HNL}%Ep$}֋/.>ؔZTŽkzZ07T hMWo/Mr3 1:an=@+-zb 'ݕFOz#ÁK/q{Nh#TUpC@&dcXl\Y`{n`eiQLMxg3KiA:tl4pm}z6΄f9 Wđ VH8.kBrL~,m 7}- E/li"n'|̃!Lc[z>w[E$ .A$mWT0l)C-"lz7ln=Tg]Oځ*ȋXۡnQegsrI~i^yCr{"a.Gi;%6WF@Th}^l"Cn+:3 a\(#$̄w>c3P[5.|FoS'woZ1,26YMFѽjA[WQonuxNyQzX8ÐDk}uX!*):`]/$B)"@>%AvS$K 䒺bΠ ⨪@_ '8N.Oʺ*XQ՜ջ6!j $ =96_M"Ger/xfgϠIQ4*STWKz'GrxtduIgܿ= PZPxBlY,;"zڇ}ZӮ!H@_mn<MND5ڴ luIDia 8dͳeY5pd7y7ԒpLD'({Z8q qD2jmɨST&Bv R \(n ?ߖx^wutvt5K'$/ם,ueJgK0.F5/?w}o:w A0.M NHQ)'-͝S< S_?vf}1 e'vPh8~Q\pN n%; p.=YnE!͂/ 1yh.C_2XS_I&VWmb=rRj T*CC4&!]~OKu÷3`zTKo5} }2pyIZ>oM׾SNNOj\\)yĠr4d"~=5^Ƿ4.iΝRTL$+Y! > 4ORIS6>/ė}aC ѩYr1Lw`j5'.+2nr8Xp[/ @Hd^R;!ꇅ(pD_cA(=+zEh?X") @)H cd7{59GWEUx)jz(ޥ viHS(؝ҝRF3z#_H1 G_<ڂK[OA&n,_@/+ C<<lM{S1>9}+bjƟxqRawz"䲙G}ڣO^gR_5ziTc4VP@nZ&8uk8æ~究uR隨tDeތ̠e͜r@ ox-JR BK*8$3G~h<32~BϞcbV@)>4Z[zNy+NZ9VVlbx s5suqt5 Zux%,`ѭߦWৃxc_$q`Տ2r8vg;KktCހ^uXP@R~X ,a{Y&zU_a,Ȇԁ?neq f@v%E$A@]Y}jRm#j2\2 հǴKi{#sA`6>=e(R T8˥OgδƄ)EG2yW_B71_`t%XVFӈsBvbcRro۷1)<ՄmЅvoӱ'v%'P;XdzZ1(!TRSk\ӃpTq[d. q U}Oi#a1qZ"gkfA3){F^E3 Zv*Re lr%eB {bQ wgN#lC5D#LYBa|oޣbPƾ0}* +Hw0y>F!L;>1 l8!ݔռ#$2bJ/ϳ ӐrB-_,Dژ1uYSEWwnyF"$MDtAĝm(Kv`IۘKq@綩i; :l{(pL^Ɍ-} +WqMaBPxXUי'~$>.Fc'NXY$a3߲C!7\{Plݖ{n3yOT0FHu۫c)*#X,)P?ToaoTɚ()@z!Yy*=:B^]8IHny7*"8!C?ˡ\ӞVzWIKF>yV'{VҥJ?jlxOXi8yc/3=PƛKU "̜M;LY"ÞRB$kLdG)~vIyFt@93MG;ۚ3v4U/X-Z)2T1n4D$6Zts} W4G^YofX񵀁 # PPTQ]@*B(<ư?;{3+nꁷGgg\>(ЉZ2B&]w4ArwYT:%k ԪQ٨uLX5@-)LddF66*^IcITWZ jf|U& =:tOQyz2 K=wLj0 BaW'~Tg䄪?\w䙝9U/> kIݬoggF P:5RYt3c P\Yjy:ceў2؋u=+;=v(9F){fo <^1h3((} Aҁ/Up!YuAW h 0KM֛_ b g3<ݥ׃X5cbdQt,M0K#cG%SoaE#۳aMU1Z4ANAc=pDFoux"y{@9p'7ăK'8EuԳH{^IZ樸bh}s0MSۼXp ^jt@e5< Spl}s'ob3 [Kb5a,1xv'n\it^C'5D!E&yyJMR6n!k'.-69T!/J<ͳK"ߖʔ((ǛDZd=1(|@ %RAf0JM',k9pM9%&F2pvgiIG[B7gx-MF9q?p3xEԛb`>ɢ`}I0[| ![ef"A֤;$b[R 2ʖ7 c}dHl"?gxs*UT"Mnmych@LTPls =Vʬc6 CQP&^T\"ga%0 +&y'"NAWKC*{8 L#IOHAb0 */*ݠd`Xk s1V G*W*v[C}"%.iw顮Oؿoq4ȭ)\B4%ʵφ\>}Ps:|߇@dV0m[kZ}H+sE$≙͂ ئyqHcQ6q^B&, RU9)wXv|RcRF;NSKR/HM_V:g;&zj@t7K]Sa(n05~Ջd@L 52= u8'v(7xɤB Oum<;J=mI;hCpY94(8s1w\5x[u0G9Ab$øøhÇmwQH{=w{;R r&Ds6NUr($(qK/ؑ}4F}*JvmL.!P4 C fA5-7~\R- |S|~ 㬶7Kwvj'|L >(s Fڇ7N(u>.@Zu.='[v"H1YҁA$S)[u%WuoٮpQ%jl6NL'6;}Y $bK?r/7f_ -r%Kgr!4~dܖ۹ i ǘĦYL%{( E�" 8_3өޯd{ W R=z眗\\^E8ke\]^x+n Z֑9T ? *ʞٚ~a-\K\'+QISo-E`YSn.|i] ݇yXuGI"nSkìóVc/MO6yʠ-4 ǵt,k;S*U5c[zJ a4,{GxlWE4?!N<;e-)&FG XTi67A! @=$񪊠+(XQJa NeNO'H;u@/"S78DuP7 R&՞G H(i5-D!-ΊP"T76O8k )H1.{#(B&w!/zHENXb2$NøeE`wH4W|R4̆hPDI6UsEGz"ϝqmp!_/4ݪ>E^ NiPƸ".D틳ƙ.BЖfL0Si'M/B<pi K.#mrȵr oE7qn'O QlSm΁|sX;ݩ `k% !jE]4nv1!j:#iwj%q֐…Tnӵra 7> ,$'{oē{0nIs42IJ |/gi .0C2JWFSlwT\PlRoFŔw?8 ՃZb}̙oWN}Bn#&-%{1nD[6Z>S)a샏hD^Q~IŦDN Iukm;АLceQ))m6."lm;plǃ%UץyTK,!?W5 lͥ"MM#N_=J4\D՗h,}W,Uy'w%ǫQV<D/ѥ$t/#) ? BYy_g:~lHv3Oʱl_2vGِUs*~ =i <(,&OJN!۹.~+*֎Hn^M$7gQO^m-k?4d@fm&(¸g<#9RC > ))V{ EEՕS[&TD>Lߗ2iHB:Hh-U ~f4{a&ccqDRVgU$yS_BpM|g![5$7UmP,/iPs t7O:-XåCu:w%@wbqomMڰDW I/5<7ڷ{2nPXL(Uť6 '՚3k'q1bؖ o787]լRC!3YBQ'ozG4s |QCtP,a٥3r-Si,'+"F5A¦a WCIC.9!|M`Xqq s_6F7-nnAA1Vw PV;a%KN KwI6UJrEYL^yP=?kK,V G1(G{;WMo9C=ٸ>&xx((ȓ \X0 Z.HlkMHP 3`#*$}{‘ _ UFf TAt(B>W XM< |v"bRU3[[º˥Q1izP|k_eͨ퀀$ OT뾻U ӤKDY{aEd/crf#]G\;E DŽOs~OZj!9>0/~u=NݕehtáZm`1>,ȁ9vƶ| L{ |B_" 9#IrsSt8  aUBDbV+cQ sv:NJ{YPb"l7՚{d]9 q 9Um`> 8M+b];hPǢUת>\W~6sZTg.!'& cWf|E#_pZivH9f'g3;y(q=(an9_h{\:v F%Ky&(*pzmuw&~c HEuthڕ\nĮn-mr W,Ƽ|1\J#}ͫWF?!F3[2~u˳\8(TvK}']IGnҊ; otl=AEgCdou(>#W}^3v9z'Ja+vޱW @s'垬ɞA$7zJAGx ?$qP= _.sF3;(\2yU/1\yTϑ`3K .IArY+~N\5-z}M Z*"LGdoбutkI ) TZrMӐn{#,qw~Ʈ]h.?!# 6FUV!3{q'@z Jn=u'rj\z& ߜu@1=CAlSTͭwFy p8UAѯB ُEnotNp$lfKPd?NN ,!! A>;<&XitAՊ֪XάaBfFx{x59J8jbeb瘔kCιAN)uV#egN-vX֖̄ ɭ֠6 Ht{ -f5"T6G< ok(vfXexC^#UPSPkt,lo£ b~Y|ݳol9 "ZЂWuX1FthjxVfk[{oJc c3i_T䉦U~pDUo?S*7d./,g cv`3R,{g29o$ղ6k0'9[x+4Fo.@|ٺA \aGd0I_fEݻʖD ۀS60!AN)=If{xAd Py~hKQ}IQnPڛf3wiZַR~BukS0c'mk#uϡzڪ xUjָp̄dkb,fDjq Ez2ߟ,=q qKYZ 47NS]y9Ƴ~\D" ePĭ͓DS\lҡ1nb>8,xR hPޙGЏ*rݴ'@G>%aNW"|5WUUv߿ ]KJ![Um x2m-^rt)BP8٪F.D-c%W; u8vRCK-b4/V -sW %l0RV>&Zh{F>W* Ee)<ģr/rBb>[[a6'Qo7vFB7,bn#ӈ#̗-h`dLR I@HѽM涸zJ@=T2ckoeZp ?jeߦ. ~mCf^J._Wѿ"Ta8{IҬ\^@ab8$\&C~EaC5s &X9?릾48ژ)R;1^O<y%νkhgOA* 'ZSQD);Mngg:$H꛳A =hkh9DF$bqiQ]ʧݶaW- }#\#5(> ͯ,>e5M}B00B(S3OI1DO5Ɖ;tF0350&>hePͅW;l$FWvs1\X|mHD)inkۍqy#>ru` NEܼ<yŃ+{%O'iq W aG״I#|J(go321 P1OS;|8KI<"@ 1é)DWp~;/=■xrہOjZ gU["洮kq{k:Gt+0򤾋H0s= U0V~04mX=39*Ӄ~0>F0NT>39 :;4 5{ZRƅ4T.2Ԕ"ZЌSm;-sdx5J3ł&  ЀuD6z?j&LsqvrDq(R[jE o6žX^b{xDyO+|6}A]4"qɶc`r:nbKm!@5>͓9[N/8)M)5V҆JmtY = D~݀6l-((InjL)"puf=({%13gnK)sM.,rsNJHj'T}f[Y|z hGɪ EmCQH$8NH]ܵ".ܒa 8Vy%w+4x3H/ 1w̭\.s.KjL⪖"Aٓ/7$ß[X$AW4<^YȮ{7Y.NFKV󊬣7Y 1X\qY9oOjTɤZ78jACS}4^veO5h݃tm-keUl4%pV\uC]@Ma3dV`3^4Hx=II{'xw%j=GXQ*i+\jbA} RƝG^`ZmlE1UצNc9'~KPvE㱗A_Sd?,C_AJ<ȗ!K=#c =@˾Gm/n,mݹo. ?t$ T{xʏ PY}Muw޺HNK,T=V=#GCŒ;*@PW=P wQKnPZCHH҉vc )o8ؿ ܎^kzJzb顨VF +Y|VYS~-_gr.6r}O-"<﵁ݲ-C=\Ы 9  pץ |^C*Q׶EOPwf7S-GG7*}8 tJg{n|sm(by=+HN=L8ϜS5 !K o1?giO*DE:emu<~oOY((hV_YE.Tzϯ0qX&ԅ5yLN1}eD!X)OR'P .+BU3kfp@phUN4p M<4݊Ot*_TaC.gJy]Yz\G?I=gc}h#-H7~CFVRgk &%bTj`ru:)ESvanzbxcU`B9N3\x[;k1> {U%T7+*FRp'_%l>[J~-$S"pb|p2S}קősD\5 +\!Y~9@EE"׉ِٺN3g/da^XTOg 6w,#97 rO4B)KZHtu͝WVxiWN!G ¢Kt?+C q~XԺu |C'D0NVє,<S(zhƂr~]Ca>K0T})9J rq:Y =t&嗓P~y4RUp\Ώ&8VgrW;sKc~'rΘl`H?kfZ ^qR̙^oA##D;}G $~Tt Z9Y"#vʇP҈tr4CKrTh[Nb+'ǚeP(qգf6 #bӛBJJ<\L`vy6 rfJIoŖf9kk~ yf&EՏy"vTs:дRJ2ޣB>vv3L Ri{}cVĚcW}ց"d{ dEA`Hsiv&UHPZQlCedwJczD*Sb/O>\&#_dط*SP ~Szdnڷ5  r)Cqq$%9! &K?sR(b Tޏ;" ׿%'M:,=˷m+s´3-rY7"n0<ٍ*88 䵳ĒN$[cъ(Დ?QQo\t @4?uq)n:R[rM429,̾dZ>ǩx^-G`;5,~?[ԺT]r Š>"%jш: Ug wޔf*̊&M~m\vXyW_K:dB00B?ӁDZ5t|N%ו+(XhkQ[6ovP Y|+IL¶@RȻiھ@p.,4=iPJb6 +˂%:6 ~7fųq:/[cuF8[{ݯ N0X\D3 O&>./ ;2{zVނrf23fvkQ}gLVf{I~ZƫmvZ5¶*n,2kďvyE'jۨ3:/ЌL7x 8fܮ {9z Gxl[弉iU-V 3*?&=D2l|@Ty+n|hе0㿽4cTۚ6dWϻK}(Sq`NcTo˵\w+ uk;!eaXd4P\22}b)dMFX.uwU9]^ ]aA3Sbֻ=?u2j)vTŖb\s l1HI0c !1N {(93e 7+ Z҉ː䉰_=Q+ Z`s,s6KsCȴh6χwdaux4Vtd*i qZa+#C jE_u.W.ʥ};f+QN ÔԄMX?<ʭa U<6[K7<#";M㯁ӻܳ0H>H5] UjtÞ(yDBˈRN^ӼFI+tBRC;VҐ s}: 9A-ި$#">/I%.]Cp_*z^w w]~*3=}qWZ2e9YOg^˫nI 1WQ{ G)X<ɶpeϱ`(>z&򝯸7{ϾLU'[b򎍀Ga:оfI;XGwz\Ã-WhisqJVAjkSw5_k߀mg#ܴ#G#_A1(O_oE*rSjt oQn0@nRE7]94''5/4 L0-xble.d 9{}B4"i6]R*Hoz: !IG$R9zKN"oL3m&{QFu6&RZ7B]Z"W$Vڷ pąD5qh̎`^F^Q/L@ 0:d_-ՓY^}B!'x 2%~AHIs#4,/*-:y[R`cIbቈ*cy!Y 8'{1Gb8><;n ?5᮳ t@=q\;*W4vrnpXΰe%0B_81ȸ5!H- scN嚽fۅKI4v X#tb =}aΦ'_,N|B²?bڗoG>ݚG ntqZ.%7iD'rI5̌sG:?o zHhYOW7Fr;дd=nڽ?m3$k00oE=MQke MX\_TKt?Y:]  S7Iw[i# r➬6L];V(­c(߽%Wv .l?ԏw 2*29x1Z>6@iZx62t-,f 8laAER > @f~vM2q{ͅn\f>6$6=D$SȊ$m.zZ[0AV-HlXKl B5Hɺ/})t2c"%m->"/뛰f555u̘"yPdq0ߨgZ* c3I-}U%ͮDa*C1js1pW3V`ib%/j y[Q#:cG_ȑ3V6 X;j z=6aLȫ5z5I1tܶl7"u}xo<^.j_рíG(wº\ \w_jQ~6g<%os4+ R:cϬqs*~_䇤lCH/ tW g)4Dk3aʵ _0@ñI՝< mNX_G8dC-1gC&301+̲$taD6'f%p 5=W{SЕy">Ib3]<- GC[[RH-YyDWFELz^NC˿cld~lf =!ͨkHJ>'ٖ'V <M0KA0 jc&W}`KU;S ŪK$Dv1h."BgVLz(q7Ē9? \=g`)z\s eUȨTةZ)uk]vᄡ5~=O)^PHTJ漩N6iz-L6 ٲ.g g!`=uI#i+۱ [D>/dd )P{zSH+xܷ뛿hy,r@i`l#^4 ´p{?'ܥZf]Z~;s{i!QSJv/)kЯV,#pvT%&]N8 aiQ坦*1IZxɌȵ!&k< J+kBu:]lYp4/j!MI?r`!oJ'/j̝7)tu (oAc$_k`Og7Y-&Cf:8Z6tRo =m4*FջX3I)fūz׌HZtYпf.M["[6M.LH<`!9.i;u6+AX"a> )cf kJ849 ;}6ld G::GD>дmCk ޒt?S–j(! ̭ ӍGFi|1*><[w+oEQv #v.^A]}5ŁIuƒti,Lx/֩~[7imFhpm٢y,ܯ8ۘ3tWɔq4 ܒ 1wv 5`]?1 <WG~k#oXBVb%9xݠH1_mюJ>KUαOk^ń/1EU~[/pa_hQ) .~lrfzmQ#>}8nW Mi5@|aĠbgA`VvoJfBw wV~eUAKH5Z1#_v3ԫQY>߉&ÚdʷȌtR*|Ǟ*: _>3❿Wy!fyZ,p_G{rI .[1}xe͙EU*g0/$+[1KvY6'8*%JD~pKFw &#я8Haf&F|qUs]`>OF?T9ۖ50t@^h#wz>Hju +wՊ菄wvЀ"A}t=[Ի*;|wQhp =E;G0W;4:gnr.c+uJHo5?LA1QPk!Q8lfˎRqTk Y ]ig PQE)a+=ZRw1=N|w׈3ۂhBkqFeϖ^R 4H^39dX1R +Sw-G.Tp4Ao Qk'I2cGgFgG2;onXC?MlD5d9CU?kAVM\{xHx8=WT"n , 'L<]nЩF~T =ti W q=@,>d]75"ߊr,tTeG?"YE7ʡ]CCLM?TQOv)Oe;1EsLj ^m31ՂJt1/WxSpuOmw]ڀ҂S\Ig]^7i?E7eE=\ϤH)IF VTo^;FwBg$31 2U liOJwDkHd%R_ZikLkdԋ^}=O^s컰ڴᎶj֥RNeH0(0 ԶA O 1A1$G Xpb<+O遐'ob$-mQi }g >pSXʥN|$@`4EVUt4zJra驳O̶ =2Fq483/Py4OXxl`<_w <Ќ(F Px{҂6CCFԂa˟)*S-55yl[Ňmv_@s.i \Ȏ+ FBk-%f jY9;/u:[㮓!",tqFP]T^9rwA0Y&; y#4a]"b I)ج2p2 p]r&\ vzII0LC1ؽ/C3laYb՞jf (ѣBL*+- |( Q9g*Q@ԇږ~?ٔ0A&#{2BAuCe<~k"z(Baq(+ʍRo|/93+@t %_ n8[T.3/n :IE}1S/;mH/q gŅkDQJNPx31G&٤5ٝ^2ڱkj %HMN0l7Q!ҫEM0-(vPa`&GS5<4ܜH[^ތiN9ҰQ>P&'Jml@xU+4H95gN,6\}7`ø8hOYsm8ɣޮONgQ^6$QW6œTMD5vbNՀ[x5p"8^g&G[vz{37͎~_=ʡÇ { u8p1-M0j}T.hMWKMOg#iMXZ/oDLXA4`KVzGfF=/bchnֿi距ӞTzxp'E3D鞩 J`mǯ"jgXvSY$nE &5%9L*G3=0PSW,*$ۑrKcY7,&Frvcwϥtt2E),=ZYvS+è &Rswh ]PI27߉6 rZvY "˾wVvP2 =ux di2VzZu%ctD_f (-jBK_|y%L Y+茉 EG )י?`ן'Unŭ6v^kFs)nUJn4/mbZ?bhr48'vS"0 #M ߺke҅)蘧Ãd:Bԇ}hx-=Lj -1Im1TX;tVѽD!}r`@7nUg0?_Q|^WGF` "r|ԅڅ`sTp' 1JT}M[Rq-.$d&PNߵlQ?=rRў\/džC7kS;LpVv*@3@̈́-kG3;uq N|֨H{P$h TUCRCGeA2DBBR6 6@.\9gVABʤUAi/;IƁmwa3ZgPWz $71ZvJ@bL" ?>mP,^vNoQ_wNY:E~”gcB0O' ޽D*%y)Aԩ͆n`y6r.z_yWe9i+%?s"5r<:gq߹)+eo]٣OZ2{JDi @V!bmbevMJ%}ǝ:V)und³J*88MjّxڇbO (q77Qe썵e:MTuypmycCB8RO>#owGS@I['J=/=g~nq D[ұw J@ib#!&-td|/a^>D(ĕDNEAӛu<վ jFD?&fm =mOfq[cHa@TOy=EU |.nE1 <7A߭k9[S 'Z. ;dp>I&sۜr{SGSSD &@&*>k9g@os ^L {˸N DŽ[߀ppFΑuFdשКH0^ [2=P]ʜE51~eˤ!/Tr =v}֖hz`{ 7KqvM#ߗg}h|Gvt3@Xeyel pX: _L0Hew8'+{ͫ=TwhpanVnen4\b~tsWE~Aٔ":_En4 7i2enjCj%Y!7wʑŽ:8T mg`-'Yl>^Ͽ-#jK8Լ""&v}lƹm,ӽCbYS+5".旃UG$&龴ݕbܠU:?d̜sFXM QfXV?o_ňOv3"mP4chtPzL,WGl CMLic6UÆU)V?=~kJsA6t${쇗ȫk7?-:lAqUޓ3eRiҠs>7.ΛAxyZoǛu W2J~TN1c`E@hX#t8PkQ7[|Mg;$8,jvNiJӧ?agE.+wvnee7A?!d{}Igп!& 'fm\YZ;Yq;q_^M\7pi 0VHvz@ل&W>-$!d:Ĕ:r9‰DXe^njJ~FYZ0E"/ׯEGNsmwYmhsܧES#fI1'O2EOB IkwZ;@f|ɷZSjYc{qnf ' s@0G+;o6^9𲫿кQqwƀb!*3X:Ґ2MS3yBXuY({% M 9nM;|¨'&jOz鏚r"C[m+ŵ($4t\_{0yײݴफ|./10 cK r x?9wLZ#!\xY.l0G߰iLy82꓌W:NC;8j!5q샆t:zI^hفi?vAX_r6#ߦVJ*21gGXAe䆙~}_'AN5f[pB5de%p[u{~+xopRcr r348\n_;QD,9ZUy1CCGt@ɍo+sauB$7]ƹcJ4 06iCF-r/Gڜ^}Y\ ~ &ɐn~~K;]=1std>KdФc.J+:\c5whIJ[ 7d#Jk3V(T]~eX䧖rBehFl0V bE쁦x47]bOrzޏ ,!ñNM? n@1C;ѱ|t\;l^yOl nx/B@o,]zik:2kkAa#Q1x6XV\q, (+AGx :klF7D)h_9Ï 8a]_U1үX{Q34c=Ϋu"?{ ÈKsfPAO L: ~ǽ`z8I~p^^YG\Q0:Ѥbx6PV'hh8~<8bt㼄>񗘞<RAfՔ۴w"B}$t)H[hB[r{}j׀V+r܊nN*.˿):LMOkwUF7v腙[5e7AS CϷ+Ą|u̿HMd-d!ƚʘ8;( bi4JZԟ]?)}K޲f5z yП5\[tJan9=(ӒMDh`k˧&iS}ΜnWHsc3\tRdDoH3%%` 57 nu[X 6+h_op0&T'f',),]M;hs[oO%mXn qmW jB0ɘY]u֕]w/Ptk̓ܺMİRr.%JúVE!pgR=^Pm7-F,șFdo+1%w|rClnXھ)B(UwN[t}g<aNb D6ZBsOx[8WO"j Mm ˋ/W SBlXx7)-'.ӘLe , ~  _S-r+4CpvZzJ4hV G`d/bB8QHťk۾xJV K).thWEG'ǝz:WE ٍQi!UVʵS-^zIf᪯Η'~o?gxGbj^P;ʖ~JK>j𽉠ܴrAf'zhFaH ~<[!kxrds#z=>ɇIJ/1xF0%+,Yo ۠n}he8NmNb?_ ![X`eBZ9~$ǨSi$J`,^1шk[ MJg$_.S-W;aoq )f=lZRYm6vqAHOKMBgE&y@o [=;V?2 yF}+0e@^[耝,(()TR`QB.ed|baZ ֩L7WW7>!hlQ=}%lpWNxrJfg -FTM)`{biR_Ka%d#weM G99\b(2N}8}2`?t] !քքE*P ,%_$ѡ6ߴFW\Pp:EU[r8̀om @I,V"5#up΄DƧ_b{1cgda 2Z/ T؞66s8UHꤌ?BJ;PezR] "F.\@ Uv:VN'Zt^9A?l=0q EuoKFTeеՌYURmZ3"A Z>9D/U $ƢZMy-4ĕR (&؋벖r 22"9N'9_#|4Q%%#n޴sV p_&$;KT01=lK2$~qvE@` MhF@GI,Dd ,.? Rʼ!Egd8HwBS 5ŀ:[>d4=ƭ |UAg'ԅ\Dn:uɨM|r+e`_2 @LtYhs$HFQ~=4$yavQPzm_Z,GU 6/B9NMbT t32WeqeQQY "a^<0R R,o&m(FV-aڎD5hFb_V& p@͢8F n/9!sQ}̔ ad?F,(h+'CyiXCudh5FaxgT4ep\8PȰh[o<؜-E,Sjs^6 ?K&Ƽx:6 ɽf|>@̉k yFTSxU}~g]tjʺaݳ-g\\Y-AF 6"y^>ÇֽWqK~޷Y=Lca&5R(gtSȼO|$^%t'-ϠG[Yk!ew6Xm/rD-ezWL<3'HKDl`x:4|9 %aޡ&]i3 OpBPJb+'I^1b}Nnm`e!kh$8qzq(Mcq GN:=*=݌I67 BrS1tF[ÑuR'4 {~}a!ﯥs r"$ G0#' C%_ZYX{a)|g˂f+|/=CO.x? Y{1|s3R-~3A$+ͅ~\<[z/~OD c<ր/Cpq:\. Z&V>E7S$k )SBH]$?Q# z}A¡:NCv"J U; &==13P0Q)]O;rc~=D\m=է|b> mW`nuZ*%Tv$FZG.ܻ7i3 ԫFbxI-_j'1OMHTxnlS) qvOc](α*16ǪeS6X‹ڬ֌? 9{"'IsApqXXKdbD7DiʧPdC8d._%)ص7?ĉ-vlOIqcW$)J0Ivv,ь`k/+ l_Z=zlpY \oywlHx.,)k.@d?]0* BfFnhI]D#mOOtEI :bJ i7۴(PBϬ]"}{*؞|ieOKa0]g]ݛհ2YSQnIW 2ފ:(ұgI])Yr:-|qXek& &LVe}nHMdZhz"H{aLRn{`B?R{C5"^T.V>6 zYiMV$8OfܾGۢ8n_IR2buQug]KvKTNb 5]mb'sYq z:'VJs$Kn]N:¯|k IΪ%.x*!ػ&H\"KZXZfKD'Y._up X8e`[ZZ<; $£bRV8Te+{Z]_jjD؞=k0"\V#o-q9GFVp 3c/BCZЕA4ؠ=:EqhhM˥:ռ˔s̯-]ߎ>etu" DiNgeh7+Td_q+?㴦6v[=dh! m:sل jELڍ7qBA@ Q$4mN^*HDh&z5Δ!' 7v׭Ϸ:29nuJ7<|⼶[РO@ԧ2n#2Yَi?АbOri1)ca{|ym %b srj!`!> քx3{;xgNj>wz.9\()X]\(2ٯߡؔ 1)S)z<ػʇ/+1(Egӡ{ f|3{<"X_b*;p=63/7Nzh(z^I1ɔ.Kz1\oqOכ3mx v$742Sg,|;偋)3syG(RWt%ax`(yϹeq[^J|խ P1-7H)dYK,.-J<;8?\q+~@ 8YH]jsfܬjIH#f"gťZ]S".u|)*%*&uة \7 xP ZҘq2 lJ@ŝUֆ[6Olo56ab VacM*NJM塠b#۴|39ƹl [{e4ohZ}?Ň3^_ō.$D(yo8qP&;eʢvI)޺}]uPfI838-X $JzS]T[(k}#\LFηh nW[XHikT1AEAN׳u2. {CC.Z×Sph+1'a/3_Hitb pa/zG]R 4"Z RgsGȥw]6'O^U@C| hGE9}o4@&.A5%Ga%ٸE!k0! i?UcZDυ}},9yE}$EՃ#< -wLOlm!;#€JbBE<vRң<"[$+QsE=![4Lpf|n)soyS ww|֥\QDds~-iUF,k+؉dFG Sk~$Ë*:X\TWƋG(Ѱg ,a1A#NDhR41ZyQ.-Mܻ}Ʀ={h@fTU~&0:[0L:oͅ,-Ʀ KEurW3f6 <& TP5xIX>gi,/QEk&J.d>$ FPpDS)T;y,7WՁ h!uFk$Tbԥ <$Ac'98/$/~]As{#7pi=8 We i\Ìl,:U]Rw#3hrz T(b!(LAy^>; b 饻D TzJG("yz炼P}.Zn vFpp.ZUsj> TvßK/)ǿufr|iTZEAQX`>?bg#f&{!QU4a] 1|y~mҜb(%\"C]躋CFu \ yɨ@xfQL *da>ؿGhJcNN_) 7*64OO& ]Iz9 0<@D69$|Uq6F6FsGUlw/e\awHrQhee_5BW)15"@Li)Y` G/2xӞjg [ 4iE'.. oE+&EIӵQ|ֈ!fGlVqiTbۼK5MNvpe5Zar^Ţ9/sWFʌ oD. `e898I_fcAs>ib~ ?#8׋vϪ=$wgJmg!5K|(πcv¡%(>NDŽ/369]"2̤MB?}L%hj^,KGᵩj~6vWvwvkHdp7]N}Dl#W.р^U| %l*\e~JY3d` pD[kX ]NR/e`W!QPDJlg WO8; 0nᔯncXukCfyfk@56 N׭&OtH1pz~ ~fC#ٛ.{FP -3? "W{7}@[w {2,h#p@g-E МV£:k>} ks Rw\' V~d nC!j X*9G@$)d2,G4=.~47U+451Ȫz<'OR6F^c[¡֊Cr'4U2R#*:|l!6F 0o*f9k&,W$I[q~I$ڹt뵏>R\~RUW#5ւONq %֖!q.ɭrmh'8ְN2^$MM*\pgz-gIpJ cg*돦µqV aTmyOeˋM7˩2x(>X g)L'EzCӌdh{uܨ*?Skjvʀ[(vV ;R4LHgէ :P)6IN˫ʰ>jI k7%:}ZbOu)>%PqF.!9'Mu2k7 *%89;dguT ?D(J1y25p=ŀDž1^5&f!ajI-!ץ"sQgW)c˶߀ ӭ泵eC (|܀0oipAרqoeY>ˣ钼-s0D 2F3_uB,'#(6m(M7 hO| IwmBr'/]9T d+57M¨4OF]{Q'yK7IQj#E#5'B*nU8(@G GktfמȆT[lBw܅E@,]OʗS1gj)jJ54AV塔A]ڃ/D׍{F!Jݸ+OQ\Z.a0`3. +W'e婬Tb˼|8IArvw\&]9JIQec(@10pҙNK(@܆jGy*^tb:P ZAX@i1w/ZEΜ ғ;V #DMbE5ܡo%? %)L"`ڬ]n>SYP蒙 )֯9nC~g= VDQ}C`oڟ` Ĺ1!6* @hpr'QSݲiW[ (.+Է3PrDC4kD.q:% ۊcHm'ɮKn(#/!UQB6l^XM;H^ګ#=+k> 1-g xՁ`^1hƐ5jrV}e~,߄mubb"Ofxw:HumG+Ku DzK.t,Hjiieܪ=fr팃]bD$KF3_M%Ixghbznj\$; oqţе6Zd(RY_tշ6am#xF*Oq)GTFr&³]Me&UvZ&-lFO_QIUqX]loat~>P<0Aբ#¯~n"W⸇x!P `ЕSt S3&,ɡ'xYN2rUYOg EЬ1>H@GQ6bpYy hX.UӁ;Bؘ-e //LNnp2!nnćv7RO~~6 cp=(%u09"GVY^LiK !YS7*s7.747D(BEG+Y!I"pf{i-}kQZaT4҄20P somQL&ڀUbif6~m,@ҁw+_QZ GCjF쩈^nANBs}nfP:Nv ^&DnH#}Ғҧ4@/YG%66T"oTȶo :e]FDz:Te 󭇔~7|jʗGe zmF9b*_ K@BY~T*-̱#pV HrF0fpr0ՔQs||$4(>>5 &[3 `LI]#A-;D-J6H*>i\2H ǚ"&iU{Zv 1Vy`D  :!6OKfO8{Q´|;]?* C ^ Oww#1_Au~yI -k@m?byIM4%-`ސymPk9>j,Z8kޡ]T#\RM Ȣ_V2DS1 PvEɪ^gBea`t7ONb`ON2$cWPXӆ͐ެ]ru4P1-Uh|jDZ gJ+YjtU29f]'V%e7Б}4;@׳äZK=Ww㧦3s:7JGDeu_ƨ*f {Ǡ(Dn~.DCxzwmyF)pbRU˂R( %Z)<@mp=^Frm(1GBn#= %(*lA7_|#05>1,2]rB /Df % &$yΑwF!-jf!݊cD7kDS')sֳϦq~pu=cW~΋)1)0jXwD(Eʹt, ;PxRVlmېQW@Y?n)&w~JI۪_ "MЁs9O0|fiXʆ0jiەd0jv߃/9G A9ȭm o]SrEjQ|ܒ<r+TK^俻c2jo3 lVѭ?v<q Ě^jt<,/Pb.?Ա%ٺ*Hey(p]ADWxs7O=Mgt1-&n/F0ݎՑr#(ҋOф{-̕93BTՐ1"c:FD9xB x>G 6\CnxMe`l&\ 2#|+7`C99! %Ǎ!VF Xdzj{.^뻿+cj.˴nl;З((:B0ta6F\R9#Ǜ&ʬ@"Λ2H0XЅ.Υc -!S eo)DlͯÉPC3 {'$1/~̀l[ x @/uzi k^ sLی9Ï> W]})尭o2gt]Z< ߣLC^*}] O#D<4}ſ]e|,Ƒl٣!QoyP=ƿH 5{(l<68i MwiÌSǙun:RLZV|л;Vv3L7CTh6K_ývQX(~5Re5z" ;E= ;(^T܁AƆȥ6?o'X!r|p`'쌯̷{g\G+ h-s7{pCvVE"u؜4].$]u cSRIEǙBme[1A9& h?})Wo9ThiP;7zzz>M#7%=蚣LT϶,ȍ8~B&͆.3r wK"+2/:"ocY@\ /W|;'RkjKvFpò>iZгR Z#-#V ~uaCi{̠otG\.h% :$p c\@(Cмo]fW:uR)4m5ɉ(A@@p!3N()50>g=3 mM#ntxJ^O,k6ː [;"D6tCTDr;-,P:P\(E"ykP42qr^;&BJ^>B q[3xraԓtꇤoB`G]( L 1r,(UUvVD- ,p!)MJ^tR%8PnQۤ6ͽA;fMwf{ϰPxm@BtM٤Mb@0b.)Hh+׷B#RPX=i5h NB$o ??\䓫6L`M*/b$}j>*d#$!IHq9D-&ozX7Jwo>jnP#DWr!ͮHg,͍i"22j;Tf? T/y F}܀$ҨR9 8}(.sGPetc@ 0eˑT8'.'.yUq`4M}2* i. a>z/>FGk'lD/!k(g;5- )qL.ҨYR}[W:{{x IDF"[ph~io5>#[b$\&)!^N% ftDF 9tGB)kDD,wIRb5t =/LZX>+15"פ不5$ŨmGȎ3 TG$^N5ԡ:uHcvjXs]<Zs9%j\:K-KTwv>\.IKSiݐšbrpGBT}Sܽe5%f tդR&;Ÿ|>: ;yfa\=P漫uϞ,>` >zx?̑o:PspЖ zP ~͐7$)6Z)Y: )m5L+ʷg..}$N<#$z>R~C*nkRsH+#iPA`ֱ`8шä"3+lLڒq\*jqv3;~Ma ^U<%T^\wdaC̮G-e)׃m`$6tK#R$?US/ ]xrо`9u^sِygĿ NlvNE}P$v< h&<)x+T RbVTse|q:߫e b.{a-NA%M |oU?5exjVd^ TC4p'ŵa6X/M*|$|׸܏ NaTmD O_}ΣG.+ ?9y.|s0 0)2~&郮}xDltlgV}Pîk TV*yֹ&e}-90h_~2>rڧM#!ƻ&~eW;6#A&B- V7X9%vN'6U~ĺ,VK+ k~EQ`S~̱{hr;&}:6̰ys- `y_ik7aT f4 +n! qNڃjpKx}Mg0ƒEkt^{8VWW8,ʣv &fǯVv;'9{ra]C{[%ޑ:B 3U;d.{J!1jS t>>f9cynO[0hgGD8i8;A z:=(;/A!k-w$g̓/Kt]Z?ߥSPȋ9#vV͑P}bd,\kLO(J׻_VLk<*BG594:7u1"%3Ȉ DUD98H`SN*6oUkݬ]#a9q1D7<@ (J<&R-v*|u~jkVwZ!Qq Lxu(UvPh0)Ba*LxwN}6vyF^! SWƈCjA ?xl*UpDSq6 CRϟpxpLψ.hRIaɔ1yTC&| M5+[b\KQFdEJ F2 ^ psIL|wɷMֿ[齖 V#(JGKS JN)h:Vn4^TiH kM1uCdٕ,ã(|bzkKw"f<,}xo]㾓W<\:\}m7R;.WE|GznNO5s,IҴplAL2aTuRB+#pE$"p׍wY=)HSLuĴ'bdW%uZp4i$OPXG1v˷U }7o$:c##V铍C(.f yݵ3x ƥ?9J`(U)%HzQi=߁\ yo-0np(%g|mG+ÀJQJ<*eŅ4cVWXv/<3kU@Lkդ qh0;"^ɷ57/jѶrm4%5) 齃HM])'il-U |fJflmd'w4#U= ɦv^~xLx^mq۶@)[wAi):\#i' ?4(B,!:\drHq_[gj m6k Hmx~S {izF Cj,MxƙVon8j]$ƣRu-LeSe|%bdqQ{udܷ|ڥbz~#3b}6r?pu`՞l"xsvsHT z`cW<qˎ<ҚXB3)9O%فngp#v_?n4H yrf}2u[{){<ٺ<:܇+ǃŴ3#򸻗Lf{8C8 FopD-㚛m54 lQo +\ak:*J̼/i驎OhBpb}_G"װh>MC|x;$>jv9+] ?|!3cnuJ H^TX2cpq_ aEQ{8F^F"MEJIjɈ`TiR jMgac&.vu UC-P\02e{>6 6D7HS/cO>[c)GA:ƍ1H)/=E2C:}㌊N BM7 Ń6tde;4~vHie=s:uX7 XJiB17nXǹ< Eu;kU|'q8DS6s6RĂk%:5zc4%Ũ]eL$x.'rKwҷSHfk pnIl'~G$DeeP}xF9$ȶƀ=`i.7h~I{:Q_ʗP=|9?0цiwCnr Ap5h OkB"%EZ!1V :i] 5lSh{0goi)Nɥ/CMҥƺrEIk VI<W)ՖgVaaIy]'~ۏW}#uXEewA'*& EOy^Qv| T jRKNPn4[AsDi?|nz^gqUn#h߉I`m)ԀʹR K9[@-Ep\96Ǝɸ,1o2h wGʿBk(.V *̞i:Dhz-L=,%_T0΍ԮOϣ %H9ܔ;@̙O^ Fyl+Pg9<0nmZ維Ɂ0PЃ[숯};>!\^2ע5e7NvҼnuX-@)h Gh ka)"/W .ySyI03{~hnD >X改Iފ~zN2<a弙-sRQkV-"wg#fy>}!+KuNK#ɼkM'd oc~\mu'y(R8LI+% Y4vT|HO3!9]W5A`d[اO:+ qۺ7AA`9noH9)BBnB]w$>&L!dr Ql)o|7{(@!`Qxo.sh' kD rbd,DJWfH"|)V:r* fX|vB Yl(RkWi`7~u` =70@z7טݩ p0Ej=9阄k+-m U+בy7)_hk"Y6=Ά#ԉ;[fZ@t6ƀCXΗbG`$ª~q#^R5Z RŏN/1ZraQ.w 2K8φ26ASKlAO8hY}4h$ſjOnϳ~F18Kr,wS%BszUHS|z>Ģ7(w6HnjTl iVo Z0AVa8y!lgvd]ZBi')2Gk0#RY` ;&lf`uŰѱVlN"+'[iWC2,r& Q+-L?9߼ɚ( H\*-ҮO 9ge987xy%[%6#;vh#4*keǪFصJpuJHM |iCP߄;X&K%(D~IzlNaў-:bߍLy" #QXtO֥'.1W;)&iIhO]xG_+βUkoD* kHCfQ?A{qfe|CZG}GC!\]<4~cN#0(0@bU;J^0"LW"8+=4y9&_HL@,3jejqU@1Tyr$iXK[j hwt -fz#԰Y-}KZT^wXG :~"NSaF9j6"(#:ߌEQpTq[",t4O>"LFjQX҄2~^MLGDyVfk릊;"!vMS2l\X,t=FQ`esZ˴PWBYUĨbس(>{卫EڱJ+~dw'|Uje+G{_ tN;ӢΈJ?`ЛpiL9y.Y@D3àCS;3wJNJBȧ ^TwZsW$1Ad2a63Vv_&\g>[BzGIBFY*d;8ˏ<9*+*}EcȠizi]jozۻO)'.|7KH峍h3L3hr avn~OWQL/ISXw-[LvyGM3;|(kL/kx˥~rxxCH09$&>p~ rW/&s<-9 mo4Q|QFodEwDk J/\Ckf*lz.)6>z6\Ĉ]s ~7tVY*.rbGM|aquA ~ҩ+Ăd wGN}.ofťu馇KgqQ5d7UX1GO‹! uE#4@`r ٲN5w:OZ(9 @-~)]iW S "%I1ߵ{庳ݙH`oÑnFy_6Cz%,ep4XrP9/N쿙Aյx7pUp(ݶlGttJ$X ȰmG (=&Z^QG{#&gJ< &F3#O&﷑o*pw5 TF·YSp6,+t: .?0HVj9 /1xaKt,IC< b#=Y@ۍB+D-IX>Bz 0B^dp7N`1%5jI:LUP-'M5Rip̄!YKIg X nPs/zZmH}m݉o=JaZdsE@h 5䵹03G.6H١S]#a.vKpD1.m>`S-[:m5H~Iûxj5UjU7xNx\yF&ԨVHx.ͫ ,(^vz2oFi\@eO~ DŅ0Z4~E3|n[.O}H]5֤L0.hך eTtԋ9"{;fY^;;Bvڵ"ҏ׼{l0ݶJ{I|Sم=}+bL!QPCaZxYKmZra1=dzs3(#v}\il@)S`o{~W\Hmo~5&Be|aijc^Nl3e4mMضB}pSU=\'nQ1-TH^#BuYb1Qg%x 'RłuѶP(PI), >VƇ3P;6. jxap7hE )GeQĒ(ITδNlGKzq$^y<˗!]Hц ̯:ka;)v0$˖i\M4)e!߼/=fHrLܸXu2鈝еҕNԴ,{F.߅@ݗ5 I\r[K R`Roәjz\mhmС?`]pMcDi;ʑX0RB8/pojklւJ{75v\ÒKk6ugP(`ȝM9> >ң֤d;j(M9Ioi<rdDK,ކ]9oP)QsWBH/֟w`t޸<:I( " x !sWBAMd?Lj2$ @`Ѝan#KIphi;OAxtn{CRg͔oa3aAOo<(mUq8շνO y+C|IZ']pS"ur.X3]js[egJEAd*CEgTU" {:Ke# qHm\ưrv Fs^ ĊQՠ!]h"{vܣ{H5t*G.pGS]w-NgZ3/B '/'NU,UT)MwKX ~Y0Omً꼢g'=5-.} !GA]̓ \2bm ;87qUhK+RJ7jiFdް-ALZwIs̯CbҋSe}2dyQz}G5iHjJלžLZ~L赝{eɉCŊc0Ǡ7A>jVCDz|\Mȴɹa^_A2wbHn^*IߺQ!iI(b׍~Z!;#EIu%`q[Ѹ=ec6Lw hĂIv+Y)=ZrtJ%P@w~HvMNSOo.(dETj{KatQgkqua.t̯Ir[#e\Nc9@/,\ߑBl5BRF)Gxu {,zƻ,B`G͊3=!>>@Jscvӑh&?b63pH9clq~OJk^?K=;OdGTL4Rm׫fVItnq峽t oJ,Ov/вb~{O]EQ̪(f%{MY0aoCy-.ۧ$U5qPM4zg>S&^:|s$NKLQMEEM 4t~3=qw@AgPhXNcw;6j%~8ފs#K"Cܞ'D=}<,{ ϨCo2T)45lYE%_$6$fDOH iEV]IfT^\(;c'uݵֳ/xvփ|qpmi E5A#Qž>Mt4` PUGd_ZEqϝR}˹-2Vstc_9ܱ:еS˷daٮ#o@/J-4wًl nu>.TX&|Fh%[ߏdnt(uF2)BZ ƍ5//B( S.6TӾjsX}{l)Q#9:F]g7oB]~0F k(ae.jh"_Ä|VȻX |e4*`#k_JxG kTQ.Ŋzu6`S) }yT" }h۶@+l;~<"#V7ֆP^,]b ޒ12qǁm/N4A0E1++'$yV?GxZ uObdBh՜M[AChD)V> OnVrr5U[½rc_p0`VDDʍ]h 4IԸw1 `[17 cN-9jBIA 0xEY[mORܝo˂/l q]ryd Wq ߳K {`}4ہpK;cqr!P4iƶ6\ Fq6ʯci2Y"j5 a()X U_Qd#&K*BqsqC6u׮`6>! PT8FRu=H;a(sbkbMV#7.q"v[u]_~@cݳL \6q.K%r|_D6ޚs #hF]+;X ZƋgPv/HWhwQSNFp4A4>rbO `=&:#=˿Jh1yw7r \v-AAOv)on! }MzNL)F$7 4%z"O]X/j٧ZNd(|,btzV$e*ON5JtAGO=Z){AV/q"*4iǐ NyqfQ"3D4Bdd7lȏ/Lf|2*&YD20mٿW%IuS@%[ \3GNH^C[rNLexvlkV>-7߅OQ\ܬ2y=#EwWr1̀XJm`ef*DZ|*Lط b= Ґx3gfsόhSj 7F0v߳P+*^a:pL-W"$o:$7Ҥ*UC6 wYkЖf*t[# эkqj\_!\I7S3wX#&m YWkgN7\GgCm<EN.g</Ί%M.kA Zh8~ODb61cpm8darmK(Dl׉pxxp}k"KfV|{=1-zX--@l,4Sٓ-js\z:Ȩ f>Υ  "AhT( Nw8C?H^H l Y}濃_ :[1Q[_vU4#ʙ.K $h;\^HM-hkFXi!b#=JGTBLVħ@< ^Agɠ.pR6݂W:o$_s1񑀆a*JCi\ *$UI?8dΏsob=Ly$ânCL3kϑ8 ɚ뀩 bU`)Krs:x_p~U4438׫ړdj5,Ee2f`TXjF {*g-Y)^ET7ϩ0?@ vft=3}g *GՉ7Әj%?ɦ|axdiLvdfWĽ$SlbJ}\y9]!'X~AIϝcQg9%zZ%݌OQ,]:(N53ħ:l4BB>nLpz񀏭فeS a}lޝ,NI~0ӳ'82xpm[NZ02.Iͩ=_$R<`OD+5dKޓf8ZŨv" aWwTeoKn "|!ЛG xLĜs=h.1W$xʷ[>ӭ̊.\̓ fB6)M<>qcv}$lp]:bn|$(D%F%b*HYx9XW*:6|x!@ ;I~$c'F;9a?VNZZ1pomxtndP}>pjF0A|bPV7]_|^}uCsT~k$G||sB;Nf'"qj赺}FI'͸IB'K, Oʟ|K.=3&uzghyzZMQlYTHz9BX9NmC2Eո~VӦORo{_w?v?QmBS{Irxl@Yd LPf|O sn+IPq[h'Nh\u r[>$\ lN,7Xcə@Cm#/M:#Y؜0rbt$mCkW"yeyv5B_m|zլg&O5D̑^PN%2'߸aٱ/B`78v%wVҊ0G_[p("3-PXچte]n4B¾Zs)^弥V(sI?} Wڅ:  Ck̜Rk{F";/_xMTa8 +gnxeȉ(Y]1qLڎih$ԙ Q=3ƭ#IF'eQvf A7eKO Ʉ_-DCLZ0{ϥNڎthnyY7 D=Oya%Ze [kM'_vGl C$!tpvn_# *{2Pշ)Kj=XJ4BC*sH^!!ϴ hw;j a7jKLT-kXۡӜ3sXALOy`.'2tmKUv: ˄qJh!ݚȖgr hbA=DZ uE,/Tz<~93 dWRD@1P,P6mpLJ UxĽro OsibYk<{\-c ^ s&5d X>Y#ԧ)hEȸm!}CaEΆ.zT M~,U_p`/v;h%Y5:#m$AyLj!P{0Z϶ld Rʡ8Wq%ڮ2%|ˢhfʠR#ƒ ,٥H<z]UK<|ݥ6 *d&! 1a\glLڞ)Yn2kMݗW S:\'.$KAC<74:I#Jb%nyXlic mMP@0l Wxd*<xUz%_ -Lŕl7rAyL|JSR۪AP 2RޚKy1u+4>نܢ'8tO6\UrNhè.e5D׻;F5W9.=Fz3"+XJ7N[bzG/80A45'g6-LD TI yȏDs=iI6%pxo)-iTo6IT[\[Rp$bqB on_<`)ȷ txFe=bch:2VH|IxnxA6?CLA:bGHZ&rP 5G';v/w AN>7ɭ|cc-eXVu0ExDwt2H%Nq> JXU Hjl&w>v݇i 6wbfa\X?ā j튭 jHч:sjDp}ɰJtE,آK'QF~CĴK:0xCm吂. u7%3Ԃ3U,䖴ooN^fSa)U(ҨRbKcM#]+أ--b$"۶ A ͋pAЌ]#ZAK1|>yʎYň`ⱳa}BwE\xH5ZG|7n'e^2t HTvƍpV74Np"DsiK-hgqGMokI23P~5W;JA"6ƽ|Й@5FO"5lHpŁ0u>Z{7gwk֓b58/Hcţxٽ&[ֈ4~l:8B-5ssN!D)=<ڦ^IE%hv qhi\E{n@nH~~fXgnۄ =9qX-DXC}Je}3A!,EYdO$= u]6,kPk+$k2k"H|RkYK{/?W++{eDz~~j3k܄F}sދտ;[9̻'rӐgreh߁b4`~m׀i[q4^2`o&T__՘4l%l gxbc&mgӚx~Ю)W G0hP%#9;=Ĭշ̚PV˩5啤/`K7HTĘG$Y@q <QdmtRrR$OPm91ـzxC^nHlq1 C/yj x2*~Mej-؞ Hbͳuoΐd"qs|@'`\|iuU+VQ y,U08s]=.ϛLB%H'8`K>tgҮEYTe-ƠSx#ݰl?vx?o߰yģE9B޻dSdp*YKOCl99-eXC;ugB%R,˧ڃ⧳loNzU6-㝙vyadR it`Ν&K.{'j|Po؀ \/zB8q42ŔFxfVU=Vsaf`;F:jפQfIv4Wh +-ؿyGVQ3T.m$Rag_ VɈl҆Uњ<'1hYN?7?>uяR!qՇ!}ۜX# gtGlbbL$U*=x!ɭm5V%țPzy\=?5S)Mh%[Gp`p1Fuږ_\M6[}*!EC_sv`DSQ+>.4h?\k;{(#vC5XRE<;|\B#5`!yoD;:;bk/]8iW5!ܟ u}OY?6IZ#;JB |9ȧ<|`i:}jMoF5P/=0\GxA\{Ov߇(",w g/IaPNv#)md5vo2a/ak8:Rb )I jl~~Ir5< 8(NSJ:(?.l+RH- $:>=zvr=VEĻe-ʗ)Wx)#cTRܵL~MUEW_'_ &mĕ{->=G~G7J`I4 Jfqj˟/ J?lk?C$q^D)pR$@F6f>.{}, KJB﷘貲ur.J> H {W{ v;|u-K9AL!}_Uoc*E#1uroA?5H1'ЙGƭ[zuìkbT0*/a٭魵v .@^x*m7(&滾l+}.~:ʂql1k97{OqBoC8]?ttDC\dE͵uF_!!]-]ϝn\"]/L؄)2z_B^v|r9O ("s[7#GX$ҷ. , /ʧ+>E HĆ_p:#2Aψx +İ ELgl~pRk/MFp ,Ϟܪ5-{q;P2c^Zߨv]<4H/T0ocY;X[WKN"/TR!i7%Y@{ws&QzEG>*1-wkLI3dy9L8?]yzݦs/ J`6CKiP>E=5n},83Q* jzA}SDm!9C(1w4+=4Kh`j"7=-"ÛaH6Ǻ'8eH5 w,2$ITYN>"sMCT/E! .F] o!LUIGqsфs/IH,ɞI&'/l0!UA Sm%T, sJ|R94}"J C-CIa2&Dx/q H{p *?1reZȒ#l4QRl^}TJ49-*x,`F1͍P˚ݍ NFTɠVsqOmiˎMj8 Ʉv |_uiOHhЋqwJx~'G;iW6#=JvI(msp~hjKp5v/5ޣ1R; L:h?#!ãʚ2/={;y%[L_N'7]hh gXA,OOBVLJޱ.#B [iHD=j۴7OZţ,YJd0QW_`8)B=kS 9 kƀAىBjIQYMZx\QwH_0&R&c;AcMc=h05L;g0$$P/)3Qx"O5 ڄ =*^'0~i3F|%7hfTdpðB&NQ7Zq-XþW@ pX< , "ǞbB͔ y<6BFSO{k!AfB&DiAOAQ7ͧ]Mj6$K$5!M lݍɍBJICahkw^:;=dQI:{i2EpV!3O*й32qŢ67ѝgls<^0|px2R)LAoyDFP5K6;+iO 0JG <w-c9ևE澍R-a Tly3'!,OC$5O4ΥQUřkzŴ  a\oE(ړ3=;¤V{u^C7(t7X1O:G[^O[)` ̽xOC*FzUh=JgX՘Dy( +9/$8 TiqGyf k2?8̉p(zT53]xӗej6YCG6t7)͙WOWYw@췙n7lr-lhN F"^Zi. i߾%e6`5~AouFLe n+\Y@ДXjg3SAҎU9O!-'i#sB괥 zw_recŐ'jh$ &5!FC 6#$h'fB6}Ȥ #<:ҿl{w-ϳQL'I­ʰ>M׏t$Mҁ'VW֡ c`Q ::m7o6/ZorT#`1bU A]i{f9~U VVocq ,.e6Wَnjg0fU0'zVشCc6u&1ZhJNȝXPO;m\IR\A\h2Tt,>kfCD귐 @Q-L'hWwZnC2+k=/a{BMb$VZ^4S\ESWAt٦ k?MLˤg4Nc#Xo#5zTwHyw>%GLSл\B -w">u?1]uGW XjRY!#tQ0<O$8qt0҂"(N\e;{>͐v}F3dA$D#"~JrY3mJ{Vb*i+ ]D͓[8骈DoMXml&p-6T Qg ,nBOz (tHMuۤHV]fh^+OY`0ǙNMcj7-J=]poPS]'UZ{7q(PCFq0$h9򙑆tIܛ{#u $T@6ȸãY)C7%Ai?2 I1OBg%(!)`e$6uH\i?5֖Bq)^?_TT(@g'@þPjg&y;BZؼf^Am|)QZOgLa۳!G ZDnoya;}g'-ůH\Y\u"q@$,R} )CIî+Q.xdv$yvY9G3wN%+Z`˽3J\]3?Iw"\UzRbfu5o t+C40 y _tflJ@s!>w^G?؍]!-1Plq*=kжĹ=.$NѸn6?bKܾt{4lIB%=tAHU3R~߽֕ >^ 食5-3U1)q!zh31;;p7.\8)!d;ܺ+g.z(Fs*P"T4F/I3#7CBE$' Z$DWѩwisX?f/OWoזؼoQ8%6qdw+l;?LY2;ul͵#ZKV7G0D=:c>O P00yфk r^&L塮#^bgfouO,0Z;P= }?&U~"=o5΀G7_Ff"?@H˪fW}eݣG݄TѴ%Vr֜yw5;2ԑ~؍0;nWw6 WP-@JBqOnCa 0l]Fh=tVY"Fh]j׮G gRa9C.*hۯ+p=it)Hn$C(^G:F`X~>u- TӢNtL<)-dK"BIƒDާ\ʆ\;"uVli nKa}<8 ˼zh_PD~ Ƅr,z ag/IlrR gfs.6J(_?L2uȢ0wH.&⺀47r+kw.7ж߻5 ,(%$VD殤)H='-nՈ੻-帍/ $:H5vqƙqKu1]Ūmz%t~9;jT0u~' q  ydJηaD{㍮=xgf8/ .}7M=IV "|UڈڔsȜ*8@ QX"@XYmf,wpL |F'J(Yd'{2v8[#.nnD~&wUB]Z]wc\I:fw]aE Ȃ2j;} r;f7qK^ZQ5kDib.6a /KMDh6ԋݐNɉxW]P ]FUdmQcavu:sLj+6jgxΰa],&iSu OTaӪ>4Hz}P1[rƕyz7oםHbsI&+L?j 5,[FB tzETmQ?R{Cӆר7)p/p*o8Y"6'v7.eDv }{ހm~8R;-KXXTpR:pR­j7 J0p z}c!TTmuG&ͺr Y=ZGKjdXں)1Sҍ %|ЉK|}),vƮ˱Sݟ^Fu4YK-vSN5;uNP|&@b"*~o}naB-#Kޢ7ST|"<i 9r^ۻ{ Ы&*i@Bb KwjlT ɐk\mD{??˸T1ь4I?ס q@ .eK>lyC7z39!gt}tydƆoo,<5RLD5LNJC`C Cr&/c4Kp.B!Ge͙d 0bԽ|Q|YhdC, `!WxQ:v;yu 7/HEIR"|Yku]2efYݓ1QdnɲcmNI _ڸ AQȁx5]쁗6$uvٷ_h i8hzݫ;Hx_z^ci 8 !tjP, (Gmcq0C.sr :J[l^`#Z:P_{7QJSiҬǥb#ꇌ߭#3UUyA)v w5nzh8,aGQvuY:շen րSY\/QYR'\yʋ cAn(8swyzzڞ\`O*zdNBRI-.okʃ 1uԨWyC6iĦ&8$kYo[m  )P%hXV O0'"_4u(DB2 Br8w;ޤi鏞; ;Ϭ\Hre\qM[/ZzJaE9&&<,\K˥hJcF%Ue]^fXYK6Wᰪ(M]rP{='g?B1[s>*yH=1Xjr, ĚoZ \ƇȜItc= SA:P 0jl/߬# Fߖ-CϺ\"'yn?еe 9f\[6GͦlBb>LNn yW^md6nI/3\܀)oRٶ]ܺGWT3 fDԐ.?o\~T.[#Hծ7Uk!.61 Běs}4 ? I螷43O7\)[ei8iqEQ;s1RdD.F+H15#*42e1\~9y\WY;įȬwl:V}Zq|@AvSh9 \< ґc7T`)2= 'gkaD5e4l_"K뎜5iςP:T#WmHA8㌼6[@&%yD]3"ݳG!W|'NSēb98} 9V@ЅOg&w2t:ipɅO00kq.4& P[͚kvaHq؉^MtxnZzu) 9 USUђCK'P^qti 4=!ݒtP(EVtP7T؝Z*A Ti IC]ݥD|ݺV44,q7D!{dRlB?2)FmO=Xs㹒|{5|4Z%18aK0*lKBMq,Ǜ`/g7T4^Os2 !#sh&-z@ƀ6ٟkGYTQf%x{s8S쾾 ~7[Q|PuLa p_3_EŦS4FuM{9_cA]?%~;H< ͩB eΚ.IPL~m! "* `9:mhNO pk 0 @OpD&oG' B_mQ (P.QxrߛYo[a7}=Jz5ٞz%׆LE+MKRl(XG5)¹JD1֯`cAP"aȃƔ7V~A}RC&,yJOKR'kMXg-ސ &]RX9T㍊Y`$|ERbd٫.?v!ơDZ 8T)2OZ!f1YFC1Xm͡Mսy|R^V6WKA@YʐoPA&vW YQq8"E`9;5om^*+6n 2 YDs5P7)Ew;ݾ7=Cx\LnKr_.Jr4k!pdn<7?$%M 9Lr~ iNxprb3 'ہ g)B2B:2nU`"{T_8)+yױɾ2¶ot;C~F&d<NA.7(3Hn;w0oj_/:4X[8tUK((h3mM.G9d,( $葛V2QؐϤ3R{֘~ [kDd&YAX ` 2 lzDk;ȇve [1>} :%չq@u)ٌ؏y7 5f@d0Sn,{g6FIS`Z^T4x+<ؘCWĕalܤl:ٝ኎bRi8%ZиUrbƃL Zq/Z/#fYh;weknl~d%gAF;j ~r`jӪnJ/]y 38ԩJ$J$gx 5J+ԎMbӇR].%[s13#](j, Bi,0{Ď0ə{ʼnݽ,| aף40U[I\"8`i:p}'UmIp.9n0("F崆,S:8 &ʨGCwձY] @__ S}rvUZ k>RpT M B0z*][~F*ڧ4MaqcoG!=(֣v6w˵nO9sggPO0 9Qɍ;ri!{{l2+vݟɵ.x2MOR)'qyܒg\X83L'L` z/ kĻqpveFv5|6|a`{صXi 9̇KC;֏vM B /$^5/Γ ^ل|VDžEPs8qgdUk1.œ*>?X R4^H Sդ[fr tRKӞwdO8O5 [た-zfG-?oyQ ](9|J!Pp-:#0픸qū!#;D 2*!v&iޕǜ`1/Y:P@`ЅO"Bv]11&na>>HܤL'#z.dT A԰n:h|,'vs d \:ˁ0Ba^C2 .Xvɸ83ck1U1OR I|f7g U%L%ًմQs.:Pez﬉B#\m F2*4R1l+@ <.FV 6sR"M{ᰫYQS+nΩ`(̀F0Eתr)vJ=yqo@__ oͳ=6S[p 0V14"8ֹ6uSRV܀3! JLpXiZ bCΐevᕡz exU7+r1͠0{Xl.tiIx*bAn)-0qShغ}4i1\po^^5m˶eƋlh@vUmjY:W,LE9:?̾@_=gO ƻdr$d0JSt_Jtd%͹;'^ĥL0?T d ɸ2p79KC^`|YVf<TxQSn1{m*ޮKho}@0(k~P 8>՛aBT/)[vɈ~1`'8'!Wp6]9i%'5ni6S0̯:|3x]4S:)}v#Vl/{xٍ dάp5 Kw$mgjro,x4oY(m;Y=&H.fe:8!C4E*EvDێ|,Q<ʊz*j{E`ȰhnMyUʗ[A*yKzl˔NKPU)n;v6|aɆc?unW'/*Jl*i(kKn CHPl(;y.* =N@@H G硱[@Ä1m>H32h4 oKI s]2^: Pyٵ8-#R [%"E`O)dU_JGvf]ܠ+z sɅy Po#*G6{cX-ܒc]*C"6WT̶}c 0:$8P*盘=F|%nx*{ N=(- jHE<54Zb0è@"J))vՖ#LNiĀL8u*=&1t,P`6 )#] b #s6wѫnhTIx3,˓E/oj\OY8<7S :n2q"*",ɞ ;m-D9$‘[>4XB׊_Dmmͨ[Gx~C.($,YJ2-!sLeٷKtcyɤ|t$} '.:}2:%"1ۖ>Bȶ7fL^X\N N>ވsCK8mK^wj/PC$y&M0NZ]Cͳtբ&w .0"gpgѾSͧFFJ67 ȼ%-YmnׄSڍ ~?27 ̯m}pPCu+ \7g_sp@j6z1wqlW[% \L,bD0 CƲLi~(Eb2liCWft'OkŻ[O?o%3z y& ~LN71.vPg`_t0׎\w]gAe9"s =c;l;k6S|3BS*J9} f@DmUT(>ҼyW (ptTvC\1: !{.6B:5/]64kt sEQa@jXmQ89K@mJOؤn j 7a bhH6П]V 4kX8}:&¦/hg%h"U4‡-=Vä݈Zu. wm^cOԀvl*XQ!e5F&^E >a^(Fk[ET?e_{[ ҿk,4jTSH_ˍiG 36eTEC /E/KRSy Lj}Jn"BtU. S˔$R(6_j (2pQ˄w $kfo͡E&I$~=m^x"zwPWO!`apal'\ԇ@6݃Y e0u8$Jڨh|bok wUZhw)n7%qW* uN{9kE>a>_ƻx X|0S{ AɆ c#HU-8Bu>o@)6fmNk7"pr{;aИu:']OwULNR nuR~v[ 3.1dݘ<`n O5)4&UC&gK3QMQU=ơ2 .:s.oWMޖ >"-b[Q6*.F7Nk؄ה*4KJL{AdťzJtVwf*aȐվ:9bqZyUFXmo*cm IeE2 v_0=Dk5@)ZFpQS.H  Gy4m0>h= xQ-Kbi|tӉ-G^0c9+/v#f jKPjJ|(4 5gkgpC$POrO/FlT'D2-:&X+v2S@V|TYM/3/kbT ,Sf;.Ga;8oB8&Ju|w$5|^iAkcm0 Em?w*L-K -Ð&VP%:Ra|ΰi7iGz~p؉ |ʹB Z1@erx+xj85O%Ih/Irfm LvK|xazS=ضCCVS!:NYwoG)ڷI,jNj+RL3X#ޢ j3ZobC +"8bGcNML]c~}eM*+.h>ݭY1ΐӫ IӊpИ5!(4BXހ%G?}JplMT ɟc9ƺ^&C$|[ewnm$;H hy\E9EOF%W:Qӟwd=@5̝ ` vrdD%.zG":뱦fc>V=!{.[\t-bndɤ?D=@ Td!,<1: 6+!qW1e(Pd WF34/wI' ]q޿7gțvȨg 'XMkjbS#|1);nlׇ{ʚn*±E*5'`dZ_zLz"C%5w)@}cVl"6W…qv+R!4d5燁ʉja6i%}I]q%brjZFTK s*25`,\Eԥv~j]a7pZa0>O}~*M>B;$~`-KeCVwq~kIBR$K^NGݱv?XI/ЌO:b6쇖"E9KNdm^Mg矄=)V[x'%"A9k 6N5׬?AU\b[Wgb$;Y$FBk}ȕZ -}1'0^7&]8Lq&gi"nPN-I,]!eMHU`cjUyR--#UVp*4EbXD^U칈ݹ?i̫${8w7%)x{ @3>YgO];-B;"B%h./+}Vp"ԱX+Pw13Cԡ$He =Z%Kn@Z*3rmO1@6.\" Kr5[e -zQW)6T*W4A ㎚k B;ST;08<=fkԻ|KXo[GO7at!QqdmvL^ *P&H N{72o: Dǂvj S,," '/[ڇf} l srar]1+6ֽԑvm$Ϻ3+jLMƦW/OLZ=BlcB6GRZ.,QEυ}Xn3 %_^p`8n믰nM}1{D_@WDZ]"DksQHVn[~Mas:<^_VI-)qv| :Z.D~Eۂ=>rMjS=!0m)$Oϟ]XB- bEp_BtSĭ jt]GXWz/b%4]v'l!'LZ5tK,kH=__ZSaɷ $jQ̹Ų+jCq#ɑ\PWKzW!w ڈ;:l3pyXVSV6'ւ \T=7S^tt/;v~g`KBSfsLQ-zo5c)E:j א@P-/Fjg!&p> Wh^7M0?X,[ҡ#M+v&y f-c\e84a[ٮ E[YKHuݞ޷Tf4["(+ՏBZ0(J|=[Z&'`4$d Uem,Q[KC%-u՜A @AԀC7zety;A>θҮ-䌶ֺ6?%Eʌݩ8!;f!6KAW; 3 )MD*BiZP`1l 8Ӽp XwC:=J;SXV㣮Pw pl2?*+Dթc=ÜNY7_gI!}&?e4Hϱϒ(8p҈dB,-$lUMO nCkAlXhȦO?\Mj#çuy۬#vL AʿPw@Vǥ,3AK \_J?ٿ.ՊXb5-#(C] @.U>:V]ph5ViTXvi^Aܵ0椞#gze8tzb5 rdeo6+Diw %y?AtأҿH߉skm"+흘Em0Ơcx\O G}Ԓzm[vkXXzxLw0fx}8xm"M0F't;Q<Iɬzd*F>?|uDn߽2DFn k|jLp NA}H<z}[_ ^olRjRu& ѥ9)9.¬Z R@ڮ [ZY[ߧc&\F29 d?7S$|pavrcpI^h]B,Do~׽f)x.iU];H Dm:^+pOi4r_Mup ] dz1g%P\krÀk_p: j_*8^s=gnxDnv&ȯP=pCOYظ #r<l(&s`gt}a?z2N" o%[Ph[_pJ2^LJ= xSu1SH%pJ%36ECbRd!"'Բ v:K"ՉP9V7T/)ɳ(H?ү+Z=:#|VlO0_M@'9̯Sw$ *Y9B* >IALE9:BAHTߗo Lߜ]Wv ZJU 45؄ ]\1@c1E3Y+s oժ9; z z,<'elg~>ͥk}2Q~jP[6>O71^B{.c4>ܛ+z;|aBxPPb[sY[OgTϸ?IYfB lW=]Wuś~,]LFήr$ta `6:%|?|H>4E[P9" [5wA[Eřm U2.QGH%t(fJ VIM!•@ocT7ĈgH7J6\ ց'يsěi,!zLk骤d~c0SNQͣ'ӻ{"۽.t8ARJ@9 %ߒ$ Ťak:fԡRe,?%,w_S8Kxb"HڦL u"kjDֶm}5ϔ#"ohK)SCAvs]KC:^lsnI\DBIQ" V4df,S\R'Z0 l(u?@Jf}d?ƶIψQ( 9$ xP j7bD@vy*WEW鿼2o9tMpr'R +❞cUL iU& !hHvc>v2#98 %S2F˧JKY@nŠ$+ˇ3/A1dwě);Xd+.wDa"pru_<.H^ 3_߮ Vg/ܜJzV?tK @݀*@S-!nd~xû;@Zut] iq4 5<Β-T܀6o)g{nMl'T !%)\FҎA x5A#őpJigR{B2R;1uxSmjPQ8J}g 'Ύ?Sr\4'kN p@H""!?Wn!\s9Dp e&W'PJ6lۍ?`~RwSfHx:niEڻC "x8A _l\o|&Z(4\05dRq{땻 C6Z!(W<f . YjnA{ןe `6i0}wW?" ;ZGV.GˋN*?Sl %o++ZVc+Pm\ȓm2r4Y{+DT\3-惁yZpT ڍ:qPŞ U#1/Pbb\e7)p} FU[]1:{cj` {nk_iL} k p\ V 8L%LYZx& ¯ZGIiwo%w}kPN a[hu2* ͞^2GV |# D6O-BǣӋOd ͳw\#bYcd߂" yu<%9= ڞ֩1wDzdZDF6/4%6 `?%ac\e*#.Xi/Udh/X-J#B{@E&-kA< <㦅I8ߘ̾7&ѐzf3r"ԱјoMo'Ni +H6|,0ź)[2D @\.>KV16ZsmRv%yԬ\g3PvW|d֔W0 6rlvvv2ʧbQ-)N) 4 L}Ëx1 Ei4Ϥ$b{Ϻ#@XˆzBa0] ɛŭ Ua!YT x#4Tf /#Bmṫj !7w..'"][J`mŌ=@Gh(Rڮ, =􌠞4N2=~՗fvwC<<_3+اXmVR(,*X;ћT ̕iLo PbdKX; -W jazii3ZjÚRfקem t"r/Ih?$P0X׆DD\$Vccd5Jv{ WĚ(J(%ٮΙ~tEh`ɭǵNa>[/a' ZEh] O/+&Q:/xk/sATeFųP"cg 0T|E2)GߊF =ZfVG^9RJЫ0Ӟ%G$xRi/ !^&yzS6=.\yhHtƻEotM\ |W?@}b^bjL 9?8Beŷ*%ʕWI@3F0 u&0CO6ɿMDa^YK1v+DR)M@ b>.*b_) =*wi}}a D &Pe՗/IU0cGj`4[4ZhY:)ԐNJ_,ADJ 0 ju <KXtc%:?u!oHAڭ\ArHZ(,u-k<0^u8Bѻ};kkyrv,,(>5me3uR)0԰MfbMO_y& )bIPcm\sҼwꄠt3c0>̉:(ϭns1*<[/b0֚`Rn#%>5Ěvq6Vܬ!RéL#5cGsgt`<i2IWel+IV?B,][f*KŎAg/Wր\t̏a>L{Kr L!XPfH-2Rf7/}S[vNiJ>~?OƼ3wPB}Nҧ̺M`B" `yhD"ઋ0 lGZp~cL$Hَ{*E $PRI^AcIDLH,uyĀ`%ei6AZ|_CY4?F,'Sʆc+u 42j[,$90o!^Jyr%f_.6?kPWٟH"b7{ZSP\Lشqvj~΍AC{wj?l,TMN˰a vxiْǼYBX >s)#|ߓ_mc-La]SЍ {Eܐ3MRu@QF sQv ~ FK ꂏ7%nc4GNc>aP te'7= (OɎ#R؅>0.xUaK;L=~1ALBO0ĎY99kqR X#lSTɵ a=Cl\ݖ:p)V<Ѝ&Q,MIZ?(Z= 6bv+Rd\c%Pe!qW=&֧U|qܡ_X/{+|ȳ-n9aJ??в5_򡧸y쟽Ù~h4LG@?\pKh$)NP9h߳}ȥFSm<$i-,TUwKO½O)O+**. si$]j _klrRu@A6eUũK4y6ɻ / C v9t6imViL'qxvbJC؝ї'_?*,ƞ ;Z䫘n0aY fM3->aj> Pͅv͕2 SU2in46OAV4EuܶF"Wܲ0KGvc"0>2>?|to$]ftj8S_Ke7#PH?j0DlȭN|6ՒI 9:m\J&HM}шgVsdcN*[n08 =Ѕ;e`,K#݀6=;7= {"%v/Ja*c~ELBx "5[Љ8EOĿywZ:"-?bu~;XAZI]H*thÓmh^uϯLDÞՋ]^?CWȮgYXw9zÌ(vb@!QfzB\}%C%>&1$/ĸ+LGŘ<g(:6!3sP #NM8f)H4c Opp\5yw:zh@,< 1i.Kگb%Rm4&O'hIħW?asb%B 7`2]g*q_O<Î`BTM((Hrd__4Xogjbǿbtژ=6;U|KP V dM|HEXԆFSA6WrkVNY6O˶ BiY|SxpP|4N>pV|2JU+,l mj}8*xbu(}k:b"nv Mv nh,BK=eE+V11"Y;=quPLKȢas\Sq%EMﶀl7G Ewчپ,0ҔXJ>Xu8vܰk=,%bةJ Q[:$b.ՌJMV3MwKbb GPW}0d)x6}n?b.$ÿgU@8}JJY-16dF "=Bn & ҏ^( (x?@{*ujwG* .P6/͎g1'C%k^YU5;mʿ+NG^{޲,;#6J#f*qk; 7snv-r6s{sl'aR4&sp)9X ٣{D ty#o@+*^2-|맸x[;fTz}Ҫc \r*~s%++.n$?W'HjL36 9ELE!^H|Z!#%]"9 }<|9>%f0?D[*O<蔛sYZHICPV*L_/QZ{QT]gН Yt~ pJ[ͣ#̖s={%1 H4]._~UJRzڋ#f4.h8&ġm2] oy~kJԢRgLV6qTwX,AeR⨒?&{$!:j9ԟa}2pyVDE,û̦t6-,FyZvR{Ie#J;g2pV2VX&Zsr}{O|訒- g`DUsdPx_NKPP+JZH0L\eR|#RLMĕZAV@C(MʂERA |s}DuJsouˑ "-+cR4ӕ`ۉM+F4g^-C! N ~6w1"a;;ĞDcCޥ[ Ќ#[h<8aގCˠp!>#|L_aw.m SdEX\RXD_Ȟ2 6Ucg? M#qLt[D֮5a:0 :u;sƌ u۽t30_c7ɆIf8&*XH/weZ+*x5a PaVO^祰i]s꞊㲔e*1YFӍ丳0_hr)xV~AZ\6r2bۯ#v=UIZP&[;?Bu1}Yʈd0~eݕ]Ft*Bq(Ci@?rz3 N>?Dحksа2uhPmJ[VZ1 g}yWu)ҼxV7ผ;nCXcOʷfFI`yˉxaКSoOi6Er!,][Cr[2l [*nuBGU u'^kE2SJ㧘E/6 QƩLA K@*/H6ͅ0ImND)m2ME.ѠL'$Y+wU ۚmONUFpQ;{/K?6FXt3*:S3TbAbh1p'A(Kz9's@l,嚞$r`7~ldsHO5ns;rPD*ډ29Mїg-<y`<8020$ot'eD +!(3h\Uwt^9S.P.weQKvl,x*jTC0Zy玑q)ІlB7\'ꁸkTvٞZ~OE8HN`W*yNWOo5R+ۉâWt(%adkEG v[A۔ណ}ϲmFV+Q1 Mu}9e>HA^OfVN =º]V EJDx^ÆD .cҢ&疃Ef~Dw~c6f7t| Sveex6\ڥx?$ XQu}$(RH&&$kP#$x!NWŔ{0 6fXƯr@+;)>SA8[ؖJt:`y1rԵ]6nP]nvDOiWUt5 媕%-w-ӿP/8гv}k&V>.uBjNyM>M"-} 4$;-:*8}td+`aߓ eB :`ȒC\@Fr U?W`txp\9e4'0 xbxGu^Y{6>G_rBQfH{46ݒcͣpAC<^'NV聯_'?W =?hi#8Bs>xǡ!r.6{(i@bșfMCUn(#Z<{V'>VdQɀ%W G ޏB3(hÉW3ߓEi*ךSt*;0h0-ཏ}-$n TK3:UZzܾ8dkk̝Myjy@pʘn/jۇ/&=IK Pd$kV|%&}R IA0r6cq)Kt>FPX}"0>uo]H3{Ն".L͌ s&(R#Uf3Rbgca%?nd'8onv $[kW9Ht195:rīhлhra5/zFFS0nLnCklV&UR`wyOߛ$$z7!k:S?¨ r6%ߖ u!ǔѩ>{TPx*#}Z2r0kb旸kﳲX/Pw}bRs\sXF5ۥjm{h P}mpy0118ފ^|k*g1+ֲSiKqoQ*@yҩ<6߂.k AOKc\ "όBX`M]* #jqZ-=mJ:wO_mk͊8_tvPHb:geGX&05"'aBA([JsxӡdY(Z2@J2\n5{Whg.٤Slku]VF'"QmJk!re X,]@tV!M}ڽ?״Nɇj3Z+E3Xo~r*Np`9;ϑ?(d ͆\mLs|\^P^ y|T0=(GuZ>SMP5zMջp bT-e;,=c/NamHϖ|(qt@3}p&V[ pEqG6$95z=Yر9qkbI!ឨ$*9{X_([ZyЊѥy13'^*Ik3OjL&W_vϛ, \_+cIIL(&.B3`tBrd"@2&hN>=\<$m{%>X=` UvCQ#NJK eG0#|~J'vI[ޱpGmd=f44.X)h= V@BIfqt5@͝H?BQCƋ1e&+tE u_/kZ;H_Ռ.Q$V2G@}58=y"o93j" =ׅ ʳ$9Y||6)#ER6w _FVw~5|u5> g賉v)&f"S9-p-P3 #H%},Xb!0,]\Ljɩc7"ʁ,.%˩g 2xC9"O+f瞴E '@?#`SК.lStY0g?P??{b[qs J&c V ߝȧj"3p Mo"&9RYݡz[C}nTw\9T`'FA*飥^8/^> |Q57 ee̐_G(RgҢ"Cu1mq` aY6&ت;ł CF|`QJ GVK)HśJ|ˆ_Ws,섉dG8iEs@5p W\kq" y8)ʫJo!=Yv`(1Jk"ee'[SFϗB[%RQbU -vKMI a}Nj؁wZ& [/VkxLקɅ8 쮚5xN!`M GgWe[~%F<$'U$'X6nd 'ѵ\xhԔ )_R?/bY/"d3 H01r4wNSPMuce`yN/Z)lS o{ q+ I73VՅ#יT&פzH3dѴ7)L͜hQ1oɎ Nn43t7^\@n0G8Ýg{0av ?(睃ecJi`pBb" S2B[m Tl34KlWFmUBTkR:~I &T+_&l{}wPrvVYծ T"y:~T|AsoKh @Ȍ5[-![]DΗ{W 8~dqp& ~O/qZﺌH*) -Cr (@#RhsC<gT9ȣƖkli=z=Ae4(r)N܀K?҉GK@L4PK. +B?0d©l' -"8O"4\Xզ,;)=:.Ǭ{5QfM '5c#w&6ʚxb)XadD6^hF´ə-2TbnZ{,14|5_/:ij,27)Et[b6So䊗2"iuR1mQy FqN#e Pᄎ-[.qS%Ǹukθ9Xec? mi*Ts| g=)Ez*9ͤJC)*NVXLhDC~]HHY>6#4&B,$.uƃ5 ]>K¸W;?>{a$9ۃXu?;,X Z?D}߰tkmcr]3nnFN[QĒ79|vb"_W5]uTJ+״tʩMJ3rkب1a=oҐ@âբfuWzZw`n2ڊtjL~=9O2ӫI`\ד]50@P 9Ko6gLyu[/rk])+nzoWPǀew 9ŽX$)6@ H /O )@w0W>o3)%9vH*ep@NuDY't|2ZŒnGoE[HN!jnPJ.IЇF멾3Zِ"!JNN~ymL1o'E~v7.́v ZAz|MOиYzu.jeH;c sc;g9 5&DBRTjr&uѠQ>M? 5?/ 0/ռUԭ2q 2QqgDkH*IDtVofӞ0:~ 5f&ϛRg9Yg bv]J9@ 0HlX|PcDcnⵉes"'}_?O{jfI]s3&Nt:<^?9 0,6~x&<) ]׊L:Ͽ9}M9^W6?D^yqPQ>_}h/RRu7G0y|r $`i^7T;:3ƇFn~AlA2Yb82eW<~Ì'p ?j/v0!&)Xԙ?#75:ԅ^*-M2@py0BL'=5r0#Z8ƀO7|2'S%k V YI0xCPۂ_w8{OK.RJį.Jjp>ހC")9أen՗] DoIC='LדB)BF?mWlj60='AN%@-lR^קKRu6Tz=Z"~ 66Nd4]3$"/>.ǻ &9*h/~3v*Fc+R!ZV51j4:"h2p5ehM^}j`|OZ[&~JnE~!2WX&R0/f4zk?Ppb+)L_Yc߯Dc'iJq 2[|/nqޠh`ǃ;G(mv 7|Mqxlbu._kt>e7%$5`^ baywpkK:Y]NAaɕTf;KպHt Mg oYZ.0pw+[գyfu k8{%cfɠ{&lo= TZNaƥM~A{uFi?eUUny)!ޞ 4&J0,i4|dCFJ;e[Dn"JJ÷ᴽY?D^r>ws;ֵzvgؠ1a*62-ׄ7@ͼ#F7pKX@g3KWo7<4Ѳ7OQPBmD6wi`I'I.bEch'Doon@%pxUg]\ A.;6șΖ'g|IiabLj4 AeqCڣ1uo q/2XF|{QVTܠF EqH͉7<]N圤!jO;cDߥ +Qy?ܨ꿟)9ZC<7k;Tܱ/ŭӿKh:ѳ$_~e]`mn|#6%~ϲ}shEvƁ[+'Ȅ/;3Ul TIKpo""AB5?"OZ~0_R"Q XAET+GqǧfSX;{ e1r/Y#;߀.>bTЉJ8xXk8D-6bo,3ʗ]^~6=/FdĎ]~^o碜UyUša| "@PGPet+'>bా±${?ޮIZk 0~W+2VdПQZEq!V}۪rԤZ7o &8oDa+!–p@p@e na@j'"]&-;kK̙bô v ӣ<.]G]~+$ΓpL94Y\_=&L 5Bг*Tg! bJ<`ggaV0;ʮ,Pnw>8CN濡aټ !KBH8y۳N1lJ%+H1^$s 6Rm_ FW0tSWП;QS/5CNx3ϭSg{K‚n*kq[]f)O'n ِe+c ZnWJ[\mCY:uw{/zXj7m$7GN5C?: ʘۭbx8k%'L.X v@67Ar {Gd/ :z s*|g`Iڢ;. M֊#2"6'b gEtuUhl~i IG![`!W6臧T x}q}xANTZ_ B3_܄רD\{"wp&ug w#c Z*Nb/!ʻ8z;xdy6AeG(%b9Yw*}5^+y d+͂s<ݴG&'\C I*Pz@-Q_]* tl/Kqr齵y-N {ٞe1T\ n$H&ZiYݕˍTo-ι@UL [:&͗MoIIup~.JL锚 1+KWJ~ [Bn+UI_oRY伋P r=hkIN%HMkT%{M- S;񮘱mlCMSM[+ax\/5^3/^Na')!YV=q+qp/?Ͻt,nx3\QqiɹSxNٗ34]o!KAJJF8[!ǻwB7+NVb͈ #U&DjewYC^ka%nym&q^;NZmj xt^$w<~F'ip3(d34d#kV{,lATe^)=ݝy@L7lQv#;%gDᱤv/*[<UB=( iH[^ʡG꜒"{hUokzDM~zN! GgC'_$MeƉ.sGA"c,bsÅ1'tajDP+605Gu>GDg}#Bv`L;Y++W]vfY,'cӤ)#C_b96^wȥWΚ[ s+ 3us<;lptQw]r,b6{)[O~7]uZSf]k7<:> sZCٓ s6f7 |& r.旹`XA9{AaI 汭 -Q~)hVR~fZR@wtA{ ߚJ)c:yV`MVNK' ܁Şu!า`TSG,!87/bjAkt22I(5#@tc5& `(ڡ3U\qNJ%+O @OWb4tEo6 *̧_~RA=iK ]V(_\bg5Lbf:2:m# ,.v i(``͋݅HSp@ع1J{{9Om}%;a҃-Mx-@yk f0]Y OrtA6ل4:34ARޠj張e`#&fxLjBNvh }?]Ȟ6uxӪLR`7 09(GF0 Frʰᔼ+:c5wBCR/XB4yaF^vnbYK7oDx_2D!ݭ"@L׍/sNSì3͒1|je=prVeIngR,`CL [|C5_ez'mCig6.3 a 9zpBm;/?BC YiI 9ٖ94_7c1jVftUT_,\7U zˊTIJ?S˨:av'σpROsY%!H+cA)64߅',o,x oT%rLƤX*|)ɲ,FHP򘎏 )g1gnA|^zto)Ʌ$17r#)j鑷&ct"KѓHZGАY5r.cVz>1qs.B8k_-@V˅g*TMP2(RdypZZS_WD( ' xlC[b6Kz܉t.SOv>FTSM= 5P`J㒿0R aS_`M okt*ً @9했=2[X@vWk /.JeLE쁯}H;jL b |0nob7>URx YqKc1c#ȸ:P]0Qn6@-ZƦFkoM^žt7W =$i?ko.`ޕ iOS5_}UPMZs^":8XLAI:=W/q܏<8"klEѪ) jušXQt xk'YjoO+Fٍukevn;s+zH=Sy-'_xAz!4ԓO%*j s4t;я)c)UF;%:(3 cz(/Uppg#3ƫŤǵ]*̈'BS6\T$D+WOυϚ4^ţ/,Bf6:f0؞'jb߹Bh(m֥^lئZ8@\/MwjpZL -?~!蒨D5c xDcNc嵎VH?l_F|o)wZLhk^΀~a 1P{AAiq,48`SuC}p.i&@р'cv53WP& &TWK{@v5.]^ W.= GR.YdNxWx/ AV]EyC9i&G+\C*X%WĂ[ņ6X"#;Gw>w?ʗN]ϳ{7S4 )Y աpv}a̸Z!^xx%1gq#s]߮TPYHa*:1a_~?vxyyΘu E9N_z\=m)F <$.HY6f'S>ɍis~_:m7\?P1MVaXq[T^| Oa#~7Nj ;&Ja^׺b/z/b6R$Z"=/džㄚs_ҏ%<瞙q壵cfF4ju1<0:]d"Ov=6]k.PZrFáZٳc_^>Vl"\85dVȥ˂ YmZPEJs@x`ɂȖG$){}yzS}'gF52w4x*y)-eq@֧6k2Eu(qZn]f23f^Юg=,0 B?+l{| )7+E$&HKOZ#!Vr&DMĶ]صd'4Kp ,wSh4zJ@w)zߠ#>Mi>A :z\RHr@PhOjdhVр׀IJg'I= .cw.BWsnCi'7Y _`פ]!!.j@)+w/ދRn1_M^,M:Q1xz}t֭wB*-3q8V >VX/ZЦo38TΒkopq-YMhgC 14ԟq\,J"oY=ёQM -%@m?aS;ꤤ, HOIe,~=B kq߂f;`.GG9x88fx+{50Я|BР!}G76I.E'c[;pa_Q_X-FWBlZPWD49[vDt:)L 0$\)rw17 cArJj#SpDpZ6`83)^eZ&oX4~n?h@տ_ -qLa*Hak|LJc0"JU#Z;0 uzS^8h\Y9ڰ37i.ҷݮpZeS+2C?FnYv>ҏ{c+(1PX-0B$Xq;%p /jmqn|~_ kx% fUMd Lo0F䁲d]x1TMZ2BTm~Tow#9< s sduY՘ d9 'i|bX^S9u9ANQv6l;*XLZXjan4 /7s󮐗@@?LxփBU`N=V 4>FjJeW<惏wE bUY Z.zO 4Oxf F95D5 Cc. q]`,`B-ٕ]Kp#Y !C>HrI/M]8{drK.d'Jw<R_yᰴNsXB2}QkŞ('bB ld QԮbP C4-jdUj6$aYT6hX3ָw*/ktpj$RAmrX&Gѥ|l+{x[7폿w;0ؚp#nOWuRêa99knݤ-ͩS s kқ*WCY4gƈ4q]u[r.yʈ'zTnٲt8iU{JìA,v3~L-z>#W~j{ש*OxkmJr $ J$^܂=GɢƊ; LL&MPHEwlOJ"\ dXQ~ p. ~Pf Mځfk߃3vhc1bk{Y:o#im \%csJ,]ͽ)m \n'o/ٷhf>5x#t S,JP:`2۶"JɈT('?b`m7vzV4]6Sk(&6Ɔr쪵{~VVR.1V 1`)N}Zjs_Fc|&SM?K}`)*Heu@d9aF'h[^Ƥ*)yud~5y'j>$nKv a^CІK`~:-u{`}m7֥W r,F|&7 zWϲ̭% lLcʺm۶ X#1| 9:6Gj |L{M=Ǯ%$jEIuUM̔QO348amb49$ 󒏵`RTxQECF0giZ:TWG;Œ!)_׉8Oz|NCQܥ~FT5ǥWϽFJS&MGVؘ1YS~U~KsY&1Ҿ5dxa6*|k;]v*`Oem:`}Ar{ ֩YZv Usf[I˓wuC[(nÊ}c&릙}n~ʔveTI>D򕔚\G |o}KaC,#o'3:0/9DLd7d)W\g7E/X,0*R8Ŏ.Jmn(w=;(ʉs 3Rt%4Yn~ka{e^ܺ]_wihVry3-3Co@˲ce$PTΌm"\Dbve%㴶 2 pwZb[i5 ֠Xm>$AEB6[{$hb_TIZB iX{;c )yb]o$GZ#|W<̜4DC$K){O=G^gAϷN kiRw2 ɮ4:e0.m9.: x{eekf`?m()xyA{XVQoXgǰDzCĖ8!2FxmW{{N#692._Wrr9dv}aVbg܈:0z/ߨPlB~&!Y3oO"ܺgfَz# !olp_z̰Cba>~1p=E*bk{:H=z1<U7呤6?L ̞AK~bHX@ (ׄ&i@?;HSm[/)|oЧP#H^DbQ-5^7qrc-ڃ*kV ˕ApK؀ri>v|8}L{ԞeϠ+)"n}b6IxgDD>T ʈlp[D#W?x!"^DNg%rޢq/ L&ѧNm}H]\_V>R]yrZxَ@Եl]%7} @U<\\+C$܉ϾNAⱶU'ibC~_A |0IiQ^XNlXM'tvhS|j,vͶI: zXHrM|SpJ(Y;}9>O"v#r_ţ ` ;qa(vslRQ2x ., kCԴ *)6B_P\D"(*V_AH֍,ڡ̯rԼRF-:E&^' B!iGzܻ![\p@ }}$GخތytxZ\r,?Y@a)L D2bY[H{sKHfy[>گn_Cih"%nU(Y^U*g\Uw6CM^Xa{,qFa=C1m/Ex5[:5aKeCf^ʴMk/{'J'5HңLkONбJZΜ1,XPdm`%oXba,mICKSCί -7vd7G٩e/ |fjX3@f=B0r^6umE%98l#Vs$SއD_#mJk# )pyIWx,WR\_]jxkhu{#g:kznsVUE9ZUJmj F8AVlE R-5D.c\W~K| spZc{! F n֠-:W5F%p;Ma҇i \ۧ"@[~QY(?5Gr `dj֑'Cl1=,Ì06h̸'1g\6-*QrYЫQ q q{|&i7G/C&Y]1ڮ't3ʄg+)*ee .=OZu 푅sDYg!+Kv lntKC*KȲ`$Q żqC<"s X`/FQ:Bt'SPTKYw9}PI׭#E8[H@*0T'ESDTC8JeP bFaF{~Fo}۸UӣT8U ђ`q|SCm(&: w9E)S~$ rgaOaD>ix.|ڲ] X{)/iz3OW͑}1ݬAkߤH&/ҁښ0xDaXul(*D2})iW zB~&ðW{@F`S|4Rh@z(cdgPa gJ2Oz ;{xvihn2q\jfU][: :\f`ǠEoG+ƷNa"E#sbl&CoQg~R!WzY(UAzU-'`]f$,%9Z SWryF %|tdk7 e@> ZZ8ŏjNHCf ZݓИW̠,x,,k,0enȖ6\'2Œ*7Bs} au,'A0S ǡA1nn-Ǚa#)~oU Oij8g ;j,!g&s5[6(Q2 ^mIOS* 3U4Yh5dg K= HL KԿ6_!@}D50GH$D$ C'ii~Jo9u]͢Y%}B^υ&`LiT] 6#O=y{xji9_fZ+0Ϛ I}wD >]*j7{޽ܣbWk]^`!2t5XE- θ/kns|k޷lv?NVWFRz$VHže!y|!#a[hKrE"/3 E8$G鱈vT[/bcXts(gljBa.@E_h] $7.e P11;5'Wהw,Hxa+wYrDF Tዃh/e[2?/6>.VbN>ġyg<$SSb}MԄy=-&x+|%fګSX)L^Nm{-ZP\,pk+[=o020FSc nu5pYj2\OU}jHS߳~snb9` X3=^ڀ;5qxCJ|Ww6:V% 0um;2ݐs&^:slkJFE)c|LPhmD]oc kMF6PVLn׫;P;HxK達/\[sI{gi?sY:?:OݷY% j^yXZHs¸*RkDV?׆&e;[J T]Mwbzi٬Z FX,JW [AcdH ULvҀ-=UFkB bQ$%iЌ|aqG嚉F672wdLq"9rCCK\xAv]Sɱ^+Wn (Usew8WZMzh{*sВ$E܃\;-5 VZVpNV4L']O m*r(Y:NJUpX-}o)Sv24؇' ^-[C?M(F_CjrWwhīium} IS`FsF?4ߜ GXƂ"0?q=-mXODJ(C `e Ե1FB)6'q Cqgn WQ2ntGs6h({Ps !zDjᓔa }Y0Ty&){Y6]JlLvaR-$2>MB;>S@G[-&^~n2P$83dW2S@]1pѕu=jИ<13:}o[*)0[mBPdEՈg ^&|JLyyfwyqFs#ZּMGBJʪ$kN/+Yh9>sOA~@!uyqVQ2gsGpUڊ I ܞ<u3^hjQ0gqy_aErҲ˩ؿEQq;SO]|{N0,Q+"x8n?.#B($#tWN=&(Z%cqc*w+V~WWb' JM ֈ-}|[4x>/;Q 1iW5"LΪ3ɶw 5ߒ_̾|;z}t:"| zZ(,j(9e1S@}}^U)…q oۻ(@L[- CgiP9gH0fk׳ 'j)LS^>{,ȝG!SV$3]$I4&3(V;wZ |H1T'7nk GgEvex…eN^81S¯ &uZ`VbR{*ťш@d4eA{06zPN ME)қMӹ~{kWe"ӿ`"DkgvP&2@Y onckN,xs|_MֈI4ۥ&FMlqO \HIapmxE 75@8㎪KG2$ x[;_FED5]D`S ͎!v K52̓_$D?uySwh'ýS oNLk/UF Z^C=b{" @#2¾0vahr'w`(-=hVcOW aOPr}e/h#-q^?ɖaģts >w(zؿh(do<Ӻm# 1af6'<*QnIoA09=N[UͷkԐm_B6(*%ldž =3WKc_P+',FpLb yɌQX:g@o4iIC{DW,3$88؇i:@f*F$f19uB_hKMv2 Җ~8C- ΔX5e֩w— /H@Z,fMzRh GzvjZnt=KFpK|4,:/LT8@IEC7nˆSKY? _*Y@ϐѫ 3*l>rw\㧬aL[w CWāC?ˈ)̃X1 t`{>\ȇ|$2 `>@Bi ABUkarh; G@>z/S) J դ Km:nmfșbܞu-e GJfS$"=`xHcTYyxN R~~ |E4}KT2X¬0Sˮ#mc QҖ>!%qۨe[*Nt%X~Pt7i` 82Kc,A8Ǿ+6ZVo]?E;R*E-٨/,oΙ\MӥqE!nϷ8OE`K#fvKjnIJаQ;#(3f֌"s` `Ulϔ)+B徫'_dfqp̺4њO?G[ Bo>/(nzŸ$TXw^Lû VsGS[7h m~6Pkǃ'c*Z4ho?xf\(: n%Dע-דW9o.co 12^X!w(M4VҩZ[oQ}0yJј)I=NY,p ZC,O`;ǽ!O!g\ֈQ7(+@D &'a+EH>Husg|{ U&nS3Iݻr~: Rt,*5zh#q<(}1:/y[?l_g`3qzoL;jRn`B;!ӄ66;RsO4] 獢pwEASNﴠx]-&psvBput1tz_?yշNzr6^^hs|"nK"V9^yyH7/n~+NU8~+fU,j٭'f' Y"<1`BM,w@w`:u iU[gI-)|" =0ݺS33|?ؔcqk)}3ѿ+)'n6s ЁQa7MSV# O˸{xw" wIn[smdmd ]c8t*()=?ʓ ,@x157}y炧sZ`s)G>@:9\nS#X@vWB!Mɇ_eomp2& }7A ' .[G^rc_m)O QO0#2BT{* Q۰syH;g qZtAmx~ n5oA5ceh^.h~2>Y c`O'P)L_ o86%H|bz9OSV`IHJ L3ecHµ?1 kxqh2>.V`2#ɔ_-a @OYmuIdV|1%/2)}MRr@hl}N W}E mQ>#s_! nDܮp c8mC=q(Zwp e3t|wg6 ݴ64zE=S#J>u0nLH1׸^b4Z\B:utfR?u(LD⵩oxނMsDYu}R&z.+>#ڲ _jD>dCu^>P $`\v*'X8Y3uڟnf0*؄MU^MeТ:)KqT{%&-)7O ڿbۗoD2Kݎˮ904#Áĝx({A4rȷ1Z,/'X(XVfMpTrY/7dWp#kYT#Ai$7 m G6CTH]dm[m0F,b6_c1>% ~K⪯*Tt&PU]xGBD{:kW0ahkpeXl!P.`p-gyB\e:ƫI#0лW<^vlz=M G߂Х bbXܟT{THG9bs>ro^nu^Tఐα1`x#Ɉ.{JL31ƂGu,iⓛyX͵: (hi.NKO^1?n8֎TGd6vZL)+ƪI9j*]X.2svop"җj[ z+}E Ѕ}iccjIhv?vlg}G~GQ(]: ZiSzÁ{r~h۳-4zD3hj?yf`0׬A*}-.;=*vNZ.pT41 Sg#ܼlH8zqh*v\2W.y6 l07:ペ$Û;)^!~}X`i|AdJW<Ý, ?0DUE_ngB9Аs~[^ I^/ߢNO P;&10aյ}LŖG3,/ߩHg{*c&k\75~8dR$ӗ۶$ΪrՄß^ I b{*^n'qX}iҢ:FqNۦ@ H:6_ѰcU^z's{ 0UiVݨyu˩9}0y]Hx~٦3PEʟ|Bpj&XHifwV<HOG3:>* N+B0 c1`Uk[}Ϙ7 Bd ?<&nN Im脰qz/o[# ۗ.2 u{xćI ?''<.BÖ*gpb~KgɏSgثғQk2-Os{<%% C}w6A2ɷuhV$0y7t pN\QQ۶GLA\k Yʥ&kBHNs/Ǚ|.2t-U܍^xk |6¸j(8-XÝ9NUiv(:]764y%Jklu {5҈5Bwm5ATdv!@֗޶49T{Q4@@ 0ai=t8UsU4"pnNXPaKq0a^XYsz{58q}7ktļڛ& @X4"V{No[[.~,8]̢^ ؓ($#3UI…BjT2?fξ=eVYϲ^g%kPu gی-Q80[gCFxK*r,)0k__e5`mXh؃_G1ͅ`_LE`j- O%*kȠNFqKa({SY.uK5Z:~3Z~D=֢Ā~9\Y9;o&"^g6ꕧ+UtYwK2yVCᣊ23|yMCU]j &\~ {h e I+Wm]~U@_Ϗ>ʠd=:1p[kFV@pp>Db 3IjRމ7n$2C9WUn+{P$2,>'/l[;3=) P|{h:VdU/f_8kaysװsBy Lڨ%O)hѩ5 LH O - $Dh8b6:p#f3ugqkT舩-/D= JlQ:4}ŋCtszzhfwdVrMj}XI1|ǩh;[l}3;AhmAܣ,"O1-SMR7SKzv=9&saK5No}WجYp45RlvK)#v lbQ귺֕rW;5r 0;8VKFB~ %C@ԝrX=SrjAhMC˟bny> XG(GVjpK:Bc3Tu5vQk~Ihޒ崴|7Sˈ`)ƃXɩu$$?r_!~q k*xJy HW )Q5O>OξOLl5Eqm! pM 5(T)ɡ7J@7dVQ {Żnt^ܦaAnhx|L.P'^Y(]ab B}4-Ogˇ|?7GJJѳcpePد{>ԔxL 3IOPfw̳t7X׆R(U dU @= Lsw*qO^q3p 'O#8 ewh5-| .;FvQkvz:7U??W9{+g¶5mGΞX8u.k1(Jg5"0d(nox-: ߩg C fE,PϋdƬ2GN0H(b)-$ד!. hUGMWbEpnL|=k ǭn ajP`A-9x\|.&{|esYh+$D]|q},}Ur\fC]'˝U4f?V+qlrV䣤lIV&TZ u"&O1(KvfX m8bq+K &y%.mr2(U8mdfpGlIYp5?" _\r\QߦI<:y^}yZ`ZgaϓF@A#G+r8lL ) sUYBV[kDK3e5A2НIXsseV7J?ӄbL@榦Fk}Շ’kh,.}(Ԑjp\&Kkn)<%*e'/ش{pMCD#T0mxthPzbl=r8G.3:~fA@qīp/K$pV/&iOV"_YBNCg-(]&-8nvhz79 '֎MKYȽ!}!xG93wr4)=3^^x_Cx&D5)tg|BNp8vs헛*:m%vrRUa ZG"^%^e }{ Xe?g2}SlF)tF,.޻1H?nmAo*Me\WܿmO(>o<ĵEpX:jXּ֠؇[vУk9큻Π& ^{~TPZUMW8_VmLչ.υFl1~Ɨϳ >Lhl/*-õ o% .ISMAXK-zmҰ$h gRTX1ՓۣhKpa(^ `x "n0  "OsRVQ`S!,io*Iq?"iFޯ`s ]%8yqcYîAFʕOq%iGTVJN$dR-7dZf 4sp#ZGy4%_Sq̠>TgZSPԒap&~RS͌.2mzIc>K#I$Zn̊'!ԯ뛊gmvnB dOy79?=vb+1i;1ZU0ģj|xELx9kOֆʏt` MͬĮ)Z6VS頶¹J2yLzkƂ:'4츷( >7ybILu/N$V|"N昚a܂rkG[F? <zuPSwoKcH;mº2 hZM~|.~Qs^#);D7wyT1#V,+i9W$ Ǻ?Po۾V&m%"Ie!5>N^(xxD)߷$P]9!Sϱj6`c? aYs&]D5Q?$fܶ9/I6SoRl?W % ĂT X3s^a"|$Oc64<[uHk̨2Bm5 0oɎ\ՌM~ЕT _Br$ք L͟ dBM-&;EmIl@ab{9PJSfR^*Av~Tn.&(+]yyfn܅Q]|kː9_#blsUM@Q|4uBojq%RsNJHv lzMj2Ћǀz P% :q4.+ݧ([9>-+>4Fwl}9T?(02"TC»[eDn -ZfnZO-yya8T`,>N )vΒFwŗzesZ) &᮲M}48=4@BN`2 32] C!v_K fo-=Lv/kƅ`k'(7Ti{0`E:+ApqĎnR,@j"'}lpn` fͰ fpj˩Wu`J_mqRr-,UgmC齮9mGnOosV+f#+'-,IROQ,Ͳ>@`fq~k>(󫻶8*S} ز/vjE5ҿg,B<.ch0dA.M!!_ ݻ4f,w35"DdTf5>,׌ŝa9%=3pxj(X/h8ebӉk0xܰH U Ɵ,Rvwݷ&N\ds s2 AdZ  &FhU:%β WDҸ?̺k]_n}v&Fz \y&!k ; 1,=]U9dXY;]qU=e #TKQ>wC`Vk\+&(4ND;&aAwMB>zt9&5)_mK15rFƒ쯧 ABb~"T$-8\nCociN&&ۭd;=4/í ?W0r9ID%X72 aAeZWMHZ8& i. 94+1[F/ Z3Iv$Ϧkpm# Jb ;+96X7OQ3jwvH^u6`:[m8#7O^ ^6=0VSv p~vD^͕1^b]g% qX/ !] e4G(i4_i1zvٻd) R%>}dš|Դ0Qm# `-J֫hS;zi2<AI o?B׶]-ȜZ,L*EFjg6\~^IVa6Npgu!8}dT*5LuC-m`{yJބ<&l 3#3E B0t r}tMu҃"z 7D4{>DDOi! Hj3WESG^jkWv ;ݴ.],6"?mX0-:mQY7vC4=2x+5u0usuTL ƕâbU3u9~c \mcХ"B@价d-jq iJ)O ɶ:¬Ww` UsDqP|>VHdp[ZfMfFPʵ}ix7ǔzv٠kQJ%:Fb3E$ɫZ'AR`\U[Qw흙 T3޵^+}qb^t0I]i3hN2J\p\SrۜT-̀nj<d ESɃY`eyp;PD΁nLYe֓*t=(z10`_8K+̶.g۽j e.߀T[n̩VLkE'߾.R/"q/16,84 fFL-2քdˢHZg`n}iXw'tsX#ftF,b ] *ҘgWOIvFI\9bE06:AZ05*\,@M* be+&sp 6=?Y4G,[Mrk(~ A$W"Zd%|+$ 6__Ѵ'v#lh1"hS ,8{AN h#$]})@͕q05ܜMhaS#I`5'oo;W-{=YK-\Ot"ɖt2!lN,JƜ?yqwq1~,5{ G6ݩ-ii7X[=€7U+9/9z{/ ]D`ld Do]4ٯ6OѩZ(|26!jG-3*ED6z4^9x́;dy\ƁFF: 0%SJJ5#˄ujp<5hYARRr( + zy.#nZ Β;Ĥu(cڢ˦xwuh,fs^sq:0㗝.LjNuil;^Zܴ;z? =k:[e]ihkD+>p&}օ@cYӰf;? ZcG`kW6=W1O#Kj<4zBBFp5gJz*@r.\K& " '܈@#;XF`nƼ!皿?'P( mfpPMHsɊcF;O2{Uz!ͤ5iH /{4M)o/xvl([vJ,ti'ڇZq2Xʑj}tqR+`~Ws3l}"#xAw'Wc ;1xCOqKnsp PЄcO7Қyzm8Xu EQm=҂ǁ=2HO?le"Vzm77=Q<.nFϣFkQԫ6&Bd ,+ԋSr(j}'׳ ޫn9Pp]~VVtߞ\5] X*bvItN.2>_5Y`hپ֌;1肋ph̰hDMb6]du;\ "d Phy:QO 0f6Jl7~.<:ۓNn@Ҽ qU>*ēj_f9Ϯ?ܨr h=?dx#uOc<4n0o)}htyTъfMq'"i ȾC lش5O;I+_lV$H~*6FvgC]vFX&j#řs PRF[kƧywlR4:궉 J=~NNK9_\cG/q*Uhc_,F5}b`?"ВB]ĕ# Y1 HpV4bhYf o׻<^f}{){48 uC*ζ8*]ؑ[$}WxV'"T316^{IN.|)zpǟzyHdC"P@zUFcFLwlj {x9[YK3 Ӕdq(ƾO*AkP݆ݹ'z\ȄmAXZAΰjV́J/_QM\ڋ"Ļ6yin[@A)nؔݩ^hXy>Ǐ6$-T Cc]|_}żpP16Xb}G2Fߌf42NS8ZIa~kzn G+#|~cw0v- sW]TlD^g3(3t zfOue{.JΣDN$! \X>n -JJMa<ۊ* 7YG3H'NFֈ =B -ړPsWbZ@ÆFMPx,6?>eOTNlD&번o!Q)**y"\r4(X:udNi7wwo]7cpdV-PO~FEWaFhuۺ)h^!muvIi<՟PpHa)9b..)tl #H$dW?+۵Wߍ<Bn)1.no!˺3"A.a ZgAц} Y8mm4Tz7km֖~r*BDU"]"x o_0`k:\f-+sh [~FBb~W A#8,dGV0{a ua{KKuxVitgeȆOU@?C"[;7n*96UG*85([DJ-кs53]l⦿,OVva_juCdTqӚj >v%oBd+@)gMsA_611+# PH6wnѕ_ ";|4&WI7/KIzh2w)`M6I(eCӑ4ڃfVVMK[r׏{Ĩ}%ĠQ="1cGo`•0ԏaԋk(2Kǖ+t}h9\HZIB4-mp.7u7k1}0, S,gرiJ!)9MH0I]d.A$>Tl/lDap+2h/냼ɰwB c;ظ]7:fp|xЫ>_}%2 !%DϻRޓ!0!:'ggK"Dcj86Os}:]V֞&u۹-;.QNI: X_S j iP &`ߓO_Dhz(,FDX`\Bd~ 6^(N-Pt6El)G᣼鈪PP3#X$8tO1춸e(pH@+k@#pYmsŹE} NhtNq+{aDԧQ ;tPsI7lHtZ܄;yYߝ1% ߟfaö+4!LrF? ).boW9ï oK՝𛌉c[Pg&@1̼_ڝ7k(^I]tjox{7,I*jt൰qd$W BDm܃u#>*ܯs*&mKDT5(?^t82]b/&1{~<+}*:c. +/o)6Io8WO.վd6Hrw@$Pv#Ɍ[G$L7 >=j{=uI0Kww 4J_ mP4l\[L"F+.BN9XaqvH5UNKO$oe`')ek"Y'j*f&J\WenP;#L}Wv3厤p^N,doR_*C_[j1&":]e9D{*A#Ve!p;$s ق 'oLJ 0H+#tV ;N[0dXb 6TQMWiQ$O\A#ug3H3+ w!Y ׶4j? E98u+\f)]Kzm#Rg]q0.i x|)}p#QQ=aݎ2$, x#^iY yw a^%˒h؝d| ;s|e]QNe"qNVLե8,z猃%xjI5B<VDo]W7mj ^AŅRlk-]gBt$yquNCID}원*tJAb_ UjC,b  X096=/40lڇt)7# wGR| !'3`0;`3#5*|&,[䬨vٙ ShѳӕabH&}mf| ΀. 3fƒem>Tbֆaq_ SBX~seͩ_!d$g@bO&5+7rf0F`K:#[#Je̞'4a?2 ivOUHsi8/} zEbNB;@~dqnڐ)MqI6W+ / O%C0 پiso[twO=Myi)nwjy'Q*ʆRϙSuB&qW>eVv]9s- $OFx@F+&pq`7oLBWVn ~~&?B{]%޻ϙ;O™YVU|sSG_o@}/#k6(Z0;e2l6⩠uCj^14SȞU`}Tه,9`(íZuSmeT9Khe,f/`q n8ȑi]ȨGlL iVxf.%e}--v`V Ce ̋ův}[Tf ن75FS{ES7Z_̾%.ZWsJJjg?UdMN]x(јN]lS_S-nm]D{rd%><a'N 6#}UGg sKe6>&,xGELڽߺǚzXv@~ϯ`=쐫1!Nyt=]!ycf1t*n| G]Ldv7qҖ}PJ V= (NQ&T#@bM3$1]A^}B%1cb&6指4by jTZZLU~Dː(3 +ƥňDU hӹxsdSnU.Gj*..ڪH '3'ŴA&蠞"[@#ۄy:(/e΂HS$?$꒸y*\8kёs<5yl9!.$16(\G)Taȉxl:œY[ CesԳSMw0^؜o E{So [p C7/l:HR} ⼶_`]-8:cLw3;/)MFj:d<{kCab"r:5O팺;o䱃 >vBF#o#[ERaԵARG7m#3v`(; 1`&Rw|Z@r%qMK5Ԁ.Om.4keo `[Гx $n $]0wg[%ɹ ){sUn=9*4^5tݥvTSak,mPԧRJ15`0R)S)$s#%MY?qd@lj>oOn26A2m?Q:R^*>n N Ub-]JsTME–<2LŲ&hEiR&Q*̑DVƿ'pQ,U-'icv#}9"}mZBR2ﱁؼ5fؒp5N|F6dyD v@vHT`!ΤwHf.7TZgz|o(ltIQnQg<0"T} rAU@WݿY`X59o%ACVq7]J_Gƣ6Cp"og̻/y$zO.`^BgΨp (5Rf~C͑saai監`\M!# ~wwMVI=q:^q.xkq=%k7;nu u! /`(mR.Ѝsz+~]eG|8Ú B8x 2vMar%qJ6Z&zE@/ų2D{[߭ǧ5$tCr1h*հt2ҺeJAINBҧ5c6[e)8S c!EtbNFI0,9}]\yzz!ݨfKK0Q 0)Ap)ZI $Ѕ5#لAQw0}P^$TL1KK5J7ZGljhO]J\+38.}ڋv#%.)G4;@k((*bZR}`_(njHI[9oSߌ,|*l]/l-T&1p!Ppk&gE7qGR kOGLdm,\} x#UEZ5R=iـ-n6}X?o<*:GX= o\lyL1SΈi^d_LzqvUe>25!SX9nob&쿼}fN{ӀN4ԼM% cX)Y=G" ͸ 9y^%<B\H{(Hg.i3SkΪŘ,ZG+iW3;&P/__z+B`)DBU XT&E wՌg}?a4[gu+vd'ebZϼQ [CH- R~_ڕGlSs۞ԑ*.R:Ǿ]@^(XC@_Z,G"V7۲ ,jeDܺ? ΔP3#y["!Z$ D-Ut(%֞N|wG]eCB~0|9F4NW0[ m/ЃƯ:ۇL 0%a C5]T{I'O3_9VN>%] &9zkb%XcayٳY5?|qs%W 9=֓kq4]hb3Z(B콘KDXźH9F?Ɓ)In4(dLj5Ex/M$J\pjWo .`n#:d=))G(g6G/9(FYѴ{Syq݆d(b.c*_-t$_V5U55K)aRbYp8xT0``uBݨsuviĪ +`i0Ԁ_wױ/,@ae;S4^.eW kwf-ޓCBh;'OtU:[S,uLoTj?#f g L*׶lװ |M,p˯Bt jVWo-OAuY?-*6(irSl*#~VEx;EXИM7W i\[>vzКQ'ltLvHސO%/@6PH('n{S]7Zsn$a0}}h v@4=9f31F6ESHDmr 0'ܖ9xrTJ<&cGOט֑aqqR(vENN![76(e~D>\+lȜH磤yztN$FH }YJG9B E@C R+w\ZH^,tIy;qP`.e ktG zpV&!)1+MT"&!(a&xqa95( ّ,7ex#kبQql ,(j!|y[0[1y:_Kd{ wft~׼L$nuRf(~i`HSh!ny]S.i'XywcV"R- @>ߞ;VF,9f iI%/&NH6>lX),]H}4)Aѱ>ݧԹу{]6WiN0&/iVg PL^} mKu0PQQ =PE*9 ɦ3 jPrlHԝDmFƻO!),:$l} ጸ t!F,Os1kl?]Aѹ!F +Q# x!tMUM<jK"&f\DqÎ?U?S )/+Ryȩܮ[%5ԻeSzE/{Y)- ғR1}06bR2mby}T(ErwSi)ثW+÷|ʱ=f>%Y,)qAdb:Wcuk/$4sBH>b*U^/;7v(T.n? gp* Y:9Rd橚>h$X{n:YIRWLF~'RW_V$/ȋcj-"8mƪp=O[ Q\aAV2ejHS9"v9+)$^| |tJaM鶂[Ykl~LcTd 4/K5XmM?@VӦӯ]@ Q#j˔>K 2Z~vEK/R:3Q/4giL`C4[useB>/ıI`8pJ5jYc&JZgs|VzKj?_H6A#0*%V&+vP;Ax $謥"YN:ϚwlĮ+4LQ>b-bcM7?ʢ9kQT]wVc(RYSۊ_Ig ,SŮ̍rT6f[ M 1d Oؐд} Y9f :-k H`-"QfVO„VsDX=5T)3,rJ N#m * ng`FTU]$qϢy3Pҳt7J=ُvt1%>&n\;%ō}-`Qb.H=':)~lRι3FuɄ;ɾۑux )#1'gSjS2$ÇDO4i-:'؂뮄B,D OE?z9 p%!)^]{eV(* `~rJa,v`~!0qibs1Q- hV'At2~eq  O-&t_x(ϛ#9 ZMSzOUۤ TE0L*>19 ӵWzz>4rzy|y~<)L١ٳ <4Z1j5gm?1qg~3A@ʨ?*KXXLkN]wlS ~)|f~ ]{u5;ZП 1Hgf)&:IܬQiTy7ϕ5"xЩ ~ۻE|lG S/VKvutcCIX"5l9ŷB'Ƃ=$(U ? >=7E-$(tqϚZ1nHOcQ1Z&S- /02N:T{c荽X9L:rOi?kWoy`Uї{_.8̮FsV{,g^C}z̈/{ P_P] ]HZ&4R {#<c>)5y?W*8('"8VNTe7^^p9xe^01MKY=u, m^ʺ@1(EqW/kEߥ4Ι Mba3G q?+Z:GDMs<ԍQ5u?2|L^u.{[|3T8: 8P}/pZ%"ZA}9a(a.nF"yx@a8>m W @}2sVO(v] 6NzZIiң Khڄ@$~7-YG D$R:el_D}ThC$X g;Z5J>_Vy ;1J] Pj`ܪ#xWVF7oϪj q),,@I+܏)}%}H$Ģ. kRC#Z;Z^ W[WÛT$/CҕGe]}70nBl9`U5o$tQAisʟe@n tT]VQYwI* xi+]XVs!xgNgq! jʜn6`Uba-/ "]|h%ZD=Gfe澥Fp\)cKZNlzD|T?6 Ej fM6^]#/"~ʥlrךaaqw?<_}dzY M)\Z:.>'mE6*'`F'GUа_RT\\B:0\iϙ3d'@1Čq$wOq_ŒsÌ*dp mZgppGo+@;|Gm-uft Bs. B+f. }PQJf#rL'r4gR96OZ=([{f:kVN6bB"&9R@2 [&1wOہefq&`4M(FpG]B(@Ip#E<\7+* etpa 퍯_-0,, gaPY,}քvKj>Eվ%gC(" q02}%,j\[ՊxbT- {s}1tEEN%F0zʛI( מr"y+O= N:6t揮1Ӄ.՘O'|Hz@$Z8g^Ʃs횩Vb^Ü\d),hq,w*ӹ.\Rώ o ')jJG3ަtL\~Z9VEv(50o|06o9>zDAk ߴXWy,N0~S_XI}6P]z)pEh@hZjE6f/Aq-/$]+l'GKGyKWTކ'ޕhj+YxJ2nPx, b.*[|mB aݺkJ`i*R?yﺫM$GoSJ<[)T aB\IU  Ay:qH `6@AfTn#n}e0hmƁ)[_?Q~H=+wPLiqv]e_ѡ%qYŕKu:$o{#1bHQ+q zΞΪSO6Q-˱lXn&ct]h JVCFn.`͂MYǐD.ج>O(Y1NT?0,$})9)(LSp*2Eb͖a]pk1׬!_(s`_U&s CMIWe$U0`){Ao%]?O>Έ^C,ÒUco&{W $|\_&$20Y/ ,@&/kaEG:Ɖ*{n:F;x$He5riF: m-Ũ¸#CǸ쓑>8@'ѹ{.c{@.诜/SWalLby=&W0h=G`r/#%YcA I `4{H$zh# Qffh2 oƳK\RJTu}(ZԯŃɼ 0vhm!Z`h9mns;9ZH$㿏*c8&@ɡOPSu'WI ߷cg?8XVrs_ރp ^zM_ ]&盵@񄛬T1b~H]S  ( f.]m ,-U֌H 1AAF鮣_F 7* w~=6m@ i'iYKCX6CDy%=CQ80o\GŃnղ[ӨCߛg|4? %s0;yMA>};=[|S7 b%-iŦ!و\OջH@ K4-Ѥ*- IU4.2gLDa^C6x݉0tn J}vDqG =!9'SH?$GF pIpdt K8Q3tHԺ<L3od_O)0: @m 6[d[ZQ2Th|GVȎNDZ[} (¾ph Md(e8VPQAgkuygLz;&i:s5x`ff cNKӀ;)j~uvHcQVpz԰H6?8 3^܏,Z O x$퇤FYu) T VD6,ZӰh׳c/B3BG-2^Ӳ/% }@T.⨬X|&nzQZC;o.DC {C1‚Br\7GZiQBt=_;9PNoⓕygxI;1B{Na?V9LNБ n7gEhG Z\E.a铢/F;2~ 52Trhl: }tһx誊T&;:8s]NVd,C,Mkx`d:M.X#bR? ,"JN 6ӏۥN@;F§)=n3b@f0!A/PוK3e:R?8# ׽; 'ܮN1e\ ؀$L jCNCM Yܺ:8ߣ4s#q]~S`:ɷVȭai-$NHwnoxtJdQxGA")N[cm Ss:׻Rg&΍*qft9b&NT{[dX> nZFXҹQ45os҆%yCn>އ4&X%*ttOV@ڭ$ X7:lG(f1ơ,KGy/~]}Һ~j٩T"a~mAEh$M E>`yzps'֗5si(D2."grL '.:]?ڋt1 Fe|z5iC+}\_dt*^m)^Ԝ^Hk)P?&LExX9 `\V[h%.nUGUf1B'\c6c`eGӿ_<[7%0Z/{jOGtu #8!EfO1^ϞOᅯ@sBU>>nF{^} ch )vV\̰^C2/3{9 -L/zy(YZ}>ͯZ)qkfyX=Hp'}x4b|z8;ͷ)Soc1cȋv)GOvv0[iMwA^ Tf,jSr{ ͞ )/y1geB(G<@1/jfd?ґFg۲0h%U\5D9WnY~`EY8B.|wMsV/pӺ fsXـ|_{83m38!u N%%O,0Ů}QTygVIXxjM|ϼkBveXu/65疾"vc GU_U/zy{ bD A|GRIp}Y ّ=` 9.ִvk (^zÆ+g0GA_"#_bf>QHA#6볈sEkq3J2m͋!Ę:;{ <:Wk9hVH4s%V@5(TXLnôM8ڑByzP KN+P6lʆyǾ&X7=˜^X!Lؿ"tPE~)cEJGԮ5}[je ៕kLd^tZrJp V7&@*k?BKV{@-[NE' X! U#_wf 6![De\B>=jiE۾_b8 >a^Sznl_֛C7[5psZe)k@TWRԍrB%%?h|B8#7ΕɤI235DXޫHtz6/GTGRۋIBG9Qrrzˑ-"6ڜ$o3)tgG`Ͷ(\sxUy:9Z!ϑH@ ne,ZXX_'ٕHդ>hd͟]6B@j8+۳JБtܝR㲆W2.k]K:MR {obbj~]Fhs ()Aha/-f:27is씹7=UW49ݟ""LdI*亼Tօ?SkLI&]B-> "wl2six2w4VK&&k t}V=Um3'=sP4?CFB8X}0,vh}M.Z \Ehd$\a;5#{PM* MsxfW  rp2W1nntzEOzL^ܨDz?jڑH ? fp2jgY[ b .}ld)<< F `q^N'!cRiH 4Ĥ,+ks-+fo^$ņ>I4C2` kWMƙ}1NkB ؑ<? } : d|p]j}& [$,Apܘ8uG;&; ʑ%EIGGgDv"1"|z s ZpO`d+; "e[od9!+Xd:'5.Q%JLR㓃wo1$W[%w[%\Z7Rw ֹ~z">LbvƳZ x _EV ҒSWp.``5-U(9Flk '->Bb%Rf^֨Oε}9|CJS1 DS{ ;%ޯBtdxђE?/::4p>P0ao {w؂"#J44+שB7ŤRheʓ~`'kCo3@'Dz@b;'r˭$)Lyb\*EE.?ۑ@[6#)^o]Ʃr0a >Zt?a`܀.>+> 1i }{Z;m<$p 9O<ԯNa0[E]݈ e}5ߺls ܋qlp'ϓ"W՗I}δH_50}ֺd- /Eu1XѝtJvF8}W>Gt&#S ~/AIZS3gʋsD=E0Yg#oa}Ŵ~3/Y-Iٚo7Ta+ ͥz?lMHXvCd0>t]G8.c=# ˳]~E\ zV!Z5g F'j')t *YY&tF%RIru7!ʃ[TU;^B7f%drf(Yjo#6ZhU*O%w˘H9-IQ(u _OT .HX :*+=! 6ݱ+Hr3=MIUCm[ɭZ4tL]* qˈ)bK@ 9fW^)$ |c.lk}ݓ#QH(z_0 UnFPPYVvZAgDS`l,KMbwm;sF,XРG@a.{酤470Iw5GaEvwMXm-bQ`ٸ)G=!qlJ+'7GIMdWJz}SIW.8Mxs"fz"ߠ\wvPE]lݡ Q)a @J@S3F[4`SJ:Ԗ7,dV748c $-<(j BGC6;Zތ> X , &Hx.R.74M7Cbe_脙wݯ!(%Eԯw+$u`Is;h'/ٿR* 4 6|k{B|# gze_S-󣱈&+wIcN~}_ը8\Y LgpqVu 9,gج!RbD0N.<mꝋ{׈`[Z]/o|$Hŏ?ڀh~H5?X ki\U$vO\B_̌H{/=yw MkJ:B؜p,HTz9>*դv[ Ib$ PWvگ]ma4>azў}SGFsKTRtӧ:>sS)E])^}Xԫ=@,*qh2]C.[疑P}kvdPfh烱 M^>6^msi[q!͇ܳ6WRkڻdz.–* ec˳ qik1aiԞN27fxvL{,kwI~\iq/LƟzuԂu՝_MHrZ2RX0,nD`WVzqriw߳cnp\$Fm1T'LXք>@5b[`dK6Uv7Z{GR=AC1_Ѹ? eJ%mԭFGzV(:|Ixh> 6<ڨZIe^Pċ<'P3w :2>n]&2-5 ICΰ;<[Ϣulh2y*w-}3PُnR@?LG ֨,OD-;0үuQ{bOy꓆lԎV_oU78T}_I֓ؠO % mKLOqػZ4G McN6b)Hgm1Y&{2إ_e % Ʒ@?k" OZN{V4@ZW.On%O Q`5,@"}+69W[#Q-e2/V!k`ЬS@wS>3w%?1nW_ C**.} YRZjh^ ƃ tg;w5(le6Xl 2Ud%]/FZvm2dE&КBOx j\[[#̃9#jSAh7fZV^1qȍfc)hD7Dc>'V "E(⹄AhkV.vZ#]Jg:8XHza_@X=K@kj 9FYԨ3gӍ>kYۜ~)YieeZƳC׫$ٲd7ێn] s,/w("r`9yCf3V gGuK2lh۫=&04AIP :)E^A*)/oi} h|+/Z|=f ]B"z>5sѪwlI"kkEBΎزHY)pDYUtSOo9p10 c/b~QFhJ>{k:axcdasWO9mTH˺8yrFܺ)yfuQk(m7Ӑj&iͩ-w#WߛRBV659BfdhOT͡#:jsX,o\Wo$DEˬ`e*K,xw"ߥ6O$;/1)K)ۄh%tZ!|f-Bd'@.9C輋ޣ[Ӝ ZIQ!omo\>̻^5 ҧ#ò3IS+r'‘%_EIUajm?KN _4.gYẵmp_mIsp ?<7beks?!)&PH%޻Wem4Wm TJxŸf F+j*xi>{qox$2[hHI?ZU dw Nf&5m ZySU>tqK?1);by}trO7R`_¯if WIL*zLC)]][-Նs ]5V-oPvւA,mzח湍X07i*f9kZA AޕI'; ï>ϣ/1Em@ۅi0>t X/A14}*/Fyl) if9Nb I *8]< I L* A[%U2( 0?@uA ,!Ȫ."p~o ~_[NswX[f C+f7*T87) L!|{" 0iGT#~b9=g:pi,tL2i y/2pt#%xGwr `ŞQԃg9s;YIT-N[sCr;D&j:eX[R00-xlwIDnJ Ǚ;m EJ BM|7yoz²,|E~N@#Ja BέCFtK=/Ptnk۽r~÷[+ nm%27ALdU Ұ-Mb ]+ZQDD#HxTnZ1SHIНV.< 4dGJSbC[B J ۔%3wRcIqY^r:VED#hBS"qoJ_\ Xf% ??W]-$SB!(u4_ ).Z2YW?ri_'&k,T~S`x5 |@ 6[d~*›'U*g!k55[0OnBk˞.6sǜ gonkҊet(&#L7-CzReTv#C>4وG}"߬ܺ']"XpI\Ƭt)b,LMjYLg\.|zD>-J;l&OwaqreK&Xf2;ZRW(zf t53f@ؔ-ue*J>/]om_d׍6;S )"bh e^ N6pw^%w zׄ`%GKÚmՔ0b@ekI./؁%6N&B7DBxd4m=tSK?J!p#KC'y0K%JD? u6=&={vOD5ÇP) ?焵uX,ձQ'=YlߘyC`:/;6WG i&Pr0R ط $7ϬO|nv;Vet-TM^7ƮCn#PXcO/%֠mԳYM4g3u6h*||)DrouV?zPNJ8rG]^Yŏ! EI#k_fyCtvb?6şOߥc)缚In n!u(Ol{E;ܦӀxIt[nC8v3S25?Jx-ufۗN52iZ<&;7}@T0N/ڊGYy4"Yr.QzRUά."[R;\YIsXxM2}sRP%:[ Dj?DMYi;ާTwΠw4OW?Nh ;)Y[gاX,*^7~k _ZJfs 0RՎ#}#Z_:hEݦНwVg8KO{,x;Xz~IxSQX"f5K&Iub(+/~Ie&JЦwiM= [4A u}a ́AVV4F3i>3GXA^t1eD[(ґmP=g1p֦P۝vUa0ܻ2tSei;- 05ΦaZGu&`lx' H+&*cj<#F\&3 [L<9g9@\ґUfg0s-:SLXpm"R^T#~ٿM*F^_|v,註b&JEP<~ݺ;;_"]1tl:]ad%Hq`6>xW@Ň" ^,U'urʟ)VE{Lc Yp\T6*5O3^^QB,òZʻPRBMG!f`@N9|WIL3ױI3Kl2_gAA?92O}:9+, U^e"9aW֗&' N@ܸtu'8ރ3 AА3Ēֽͳ pq|W0zܣ˕*$N8*YHc)25b$'9\Cn'n!-PX()XaaWR yȜi/@S'PQ uY1K և^Yi씫E[[AAB^~ylbϮP״>pb))*).cxsliX<2臑*&IVWx [BX IijBBp{QXsN Z1+gjͷ1`kPj$LK&%<L5sXr7#o W[^Wr:t><)0 ̋[`Rp\Y"|5Vvl3)ݱJvj.1}ΪpĠqw"+y~.sډUd;N1L8y-lrYHzeS:PoP&W-Z@`ՙ ܢ<9"DywGJ9VA,)P{76#vun1P"M| I7'Q}=OHcECĸot(|mWqEڍcu`hHL0w9z~wV*K8Fy~0jE/R ݏkiE=Uہ13e)\@1Mu Kv&\8m9a)U*%ESКq;UBR 2sR%Mt5g)FZzxVdYRH\FT?SYv^0HyS5k#񘞀|i2u}t.N- NO8aS a}RFpA?jچGm: ꝓϣaA"W= Yb73;U[. ݈.]KIMbڹe~WPz[ ~ |uB^kP|'qH:,rUR /2#\"W0}&G ,1mGQs64x뤢Lu0T]dE}0(BpRXж^P|+<dJ;ixB# LpŪIaY* \ 7E%@!+uQw8Qfτg; dX~%Y压Al{)vlE g4Z]9X봙V~KU pqfK:'[7qmr5 lB hNH6[ZE1,_(;#4Ҵh9.)B 4lM,=Q{Z_q]&@m?9\SIB݉}5y4EY酨h$֠f,r#%1ί8RBD%R i/-:=4Kt'ӡp du&:n&c|(3u#uk ČbWމ(QH]G~o"wsR =zۭWLl7!$nV{Γ&Fj1ux*4Dy?  ]g`<1aH uiKx8t KފIH{la_LgjI_nW{;"!F@M68{a!GO0gmk#K.}PX]`R>x¹o6bǿ5׊ϜCEf q Z7yzbl)oLQ\wDa:?>8&Xwt f'(U3*;:pyo"Di]4f"o!8,ِZK[Q(=\ ֌fqu$hDɊR#!9#A1d|FȥM&=W ,`vfk6ȠUzd27Oxܽ*In< c`a-8ľ[bpJ46KR(wBp/$SӐj{"OxuLPc7Gj) }VM]?)YQe=&L,\:a T/z:p祉=`y!+4i~@JH2d?x2W h#GG,<5 =,.d'XwȣZᐕ\(ɟUq!kʐsT7WJ> C*;?] :# rXlo+5<\((~?-z=UӌT+m<{tU//RM `NTw3o" Pscۣ. I̅+ F"&)u$R4FcIgw&ԕ !XJS9{kiqd1T423NF)H>׊5r;C|!ROe3ޠWȺwAYg:]@ Z_֟gꎎW^$qNGB_ml^U.{cGih|LilBKAhD'o*>of_̣6rInχrd T SѦHDZx^/aL@R m^RiFhGl&)3}nDM~HsS;ۿ%ը<`St1y@ S]lju4g . X\.W.բz)y@XezuRHJ@N4p>WS>*^L9`֛)c<^nh.5/qQMj?.GH ޜ/1CQrto|ˢ S.Ύu*.GעOFu'? IX_8X]Aaݻ5r{.K7ް2KB "9Gc~'n'%KQ{HJs0A ˉjw]an)pP܈1$.ALV'&]*-3(ms)=-"5|ЎbU'b|mc#hg O`򎽮FQ2v<{ݴ~Hc:J: Su&.TG%t93x6ī 0NؖU;g '9?2i=X,i$f-xAqS 5F?wWsǮ.j hv+|וDKdUNx0~x`BK&F Ք!FJl܄]):jO8O.SvJZ_fC=-XME8pR˿+VvsdxNLة; f3kLS$F11ws ҳQ- HA(BavM"5}Z*JJȆ*u(xFzךщVThhsZQvufiMtN`?5Ě!u[ﰌ lV\v@.:_rRnc6r.0jlOc~Zho ;v(cMa ~|!jQw>L%e\!ׂULZ>MdqLE1ۭ&iֈyTџOr(R<]`gܧdRnv w8qٜfI0@ +{~cq3ək(ep!2ꜥvy3NύYY'}'T2 rP#_#.#p N8>]-w`8#g@Hw-2)13nm|}F_T;zwVBbƏҼk'Pe8fV-l'gCE9;F>"`zvFbÑ~ _"&B:TՂSιb%H*ya_lH*Iˣ,Cd*zVy^7_H:d%{SʥMhz܀}k?!W_X zcV &y+d"rv`Y(_l 4 gC.&X7XˡXOE$ z<ϲn .ZA\4W;C/N$s@q<߻T(Ⱥi\)#ݳLpPS{tC=gISK~-m:||D㰎] D7X԰F{@n% kf {NNݴctF=+H3 dxk`g7+p:e8y-h'd3F\3nMϾFPH:'RkVX/Xh:=+pnfxQMkZaU+35-L7[{fpYW.kl2jÔn_!q= ۉB9r.AC1|~gi#Uv)uPCiF9p%X(GF=>7S>. nɽ$d iLHFA0U92puNF$f{xT]/GAҎ;C ľ|%MZܿq1`LkO7,iI=r!G!5>j"EP5_gf7}9uYT &BbwIw:6P{ Kmk8*{:wZppRV(=R0l3vײ΂ݭ6sY?X䬣b W}6egƈ Sݎ>ѨX!q";cB›>PN+t`=|c;mjDDx\jg %kzMN),_1^- |gNz{_GVza.U*oz}Q>hHmQGYn!( f؅GrCI$JoL2,+_vfX(x{庑~V.!̘1'@}X/Qm;G9T%} .}||fyw;N g.I3tھh2r~EbėU1z'0KA(O^7I⿯4f;c7|!<[R?lʪIYk;ai$LNk8F(v7Y(w7F!۱F|~@u}!d/&\t;N Dc9)U%Ĩ^k# .ӈ:#ip~l~;A#B*þ!-6k7z2Q!)z|֍3'~jtm>-޿p3BsK3 w"#nߠS1Vm!o!<*7U& ?&8B.{J]cs=|T^G?NѰ&;SY-N/Zc&dj93IjCbǛ. i D\H TMu䭘[ܾ9=Y bWz\4,ZɅ78$ $^S,BHFBrOrZ{oEQ?_r$s*r7Uм* k+a?fR$SdDqϒvv0kaмzLb%[Pw*Kv| ^ &h D'7ary"EnraFXdlLTpave\R՟Hd y$Y8+{ɵ݅9l_a1l 6X@Jvp%75Lw#ت~W϶&[5p8>!+`9g`:0Ia}ڹQ bq4;wۨZ+ sQ"َؽ'칃E;ʱALz< 19 8o{CaK#$Q L:dž#jqp1Tlg dHq1{$G~Z=j)-o_uE, 61-UU; 9`QMOlC8z*Cwɏ|kX35^Up )\CIZ7 D:<-.>2 A嚌RtFM5b8f~x R[ϧs ·5T2-i'X 2GD}X"Ɗ M:pm1B @oB!i^ .$h䦝;'WCI{AiG)=]qxI̴[0[5i/g v@ F2G(J$|wB?.U TyQ=[:XOO/q0H,I'(kԀpW5-lOQBS-mЮ `ӝfգXDBw tF=**+TEȴxod ̿ɬ{&IsЇZ As}תɝcƪʷ-ROΥqpQD?=((4jhWȒ\XN'sh70ŒY# 3dUz-*%hÌ)iTC$g)Qb-穣vDLbސt* |ZB$(g, D`mf1_u 4@z:C9)GH$lGW_v{hN2Z BŅyu5h @/t/>wW1@c8P`.>G$i3. 8\Ngʶ:ڨNZY0jb R/1ڿFBiDS MQkJ{6edLGQ;Ϩ|~ByX6ΫY}b3pelVl -[F=Z$mb]c!m G_qºsBC/`gIb ˯+Etɂ#i׬ F! 53*Ocr|.?ƌ4p% ţFl7"LC."V*p.k/F!ԧe}济8+]ruq[p=`15BRTVR=/8Awr_kee[y]T٘<َu~#>װܵ6ğ\hXJG.eG 4#w{C3jx:zO3G͗\dt ucJU* ΘY_3b"I{}F"eW|ud6,XOb8A"jrq A7 6:brת5nw|)3GP\M0H3 J>84n;<ȺV[/:n hdIzGY6jݱwE,rU$ S" Lp R;g:(ʽCn&-~c&X: ޮ!(=V5%4LRBLzմsxj[u :Nj4yY t3fWEuok&eX_U 1Yt.o-!j#{b@VcZBۧ2e5LŷF HL3oKhdמ4Dw 9W;^ad@ k&|Z\ 8  y$|WM$[s8\\kjK,eW+LvBqO`͟9\BDW,lMhEY}T]-1bE3?`#<5$?ԋwՐ?(pE]fR7;̱OH!Ӥ|79 't6g.E1-?GX%GO4<; 6o+/rC\haxѮQ~9͠Rd+1PaEjD[=~*Zbj <ӽL KM+Z1E3TuP9JdiKPBEHvRVNXy[텹i{59~;T5wv@Kڃ"=p  y`[raM:\;Pj dNW2/Z"Gc|&bۖɭbsZ|/SPc0Plq&t++'./<Ս4?xGy*Q%PhDJ<]|X䳤oe BшZCd|Dӻ "|<њiXmS+hÔ'ǕʅAT3nT2S/;"IZwzqsv}Xl;l3SƜ>.9Ϻ;YRAE$"{ [%f obh( H-L4;Ut {0tyȴ {Bݎ/Id=ͱ#='a\T7qEkui񦞍YqCA,9c \PFE*ck*c_W,U+OÉ%Ҁu;isQg oH$#Zvxo20I'78$kð6ζ)mu٦_tK yOEɧYZ'g)e~c ӧSHO j>8FKNy2m}T@XH)0p Ͱ4KvkuX:LIH(c.PKAY;2~/hdaZ 9"P_oMTMnr#u3q 7{= `zD`WbK=_n49=fƩi^x"?|lWc%&P?_\ځ_r>d"cH Z'pSX`ԡ0v_\囩A<[^; ,nO5NfK-_l_lgа`~Brڗ~rz2 A%ɲO7zZ1v1z)啘+ Ա8˄_}߈nG05saT>y6v_ڟ0~_\4޳|LM k9:„gtd)+34F$ZdZI2C-ru.iD5 "0yWsXmS] Gm>% N]InX:6eۉqq@jMŧIooR<6hF p?.ubC>&ϕEwz7o:x|jۮ~v@'Ga1f!r]}k5?`oeE Y#§*B0roKsԛָ:T;' <࿦ES ̼<"rfz8&o| M(gW'%58 h/8c¨S /sWj~Nbg)@ł"5Og.)JkG&%"+m3RbOu: '#ߤz&"%E؜b]1>I)\& <'\^ng2BTMQ/HA>D,)!KW<'(f +t7-QѺ7<'g9lB LOn8y?0Ǘ~ WP~uz,- 8@J 4^i"6Hѣ>qջo`Mpˋ>'ouč(EBcA{n4S6(_cY9@H}3M.XNIj&uHm摕SEڕK|r˾$@ki#Ц OCzvZA8Q㉱V`?UyUW68TB-Sq5%Q zvFg.5f^-&NmsӦ>;UV\vWy&WaR\ xjfvީ@V kN9:9I*H^$@LNPަOp\C}66NJij.Q o ޯ/`]hBxEo ؐ4 开WGaҍ1,? IͲ.x[Çeu ">6;mC +͠쫜:qW(_In O U`: ~tmSUig'0:; tG6!M3LTXȗ2KXItۍZT gI1M*jm[9C,hl]3uz3 %ܜX%Юxؑ؏ sHP Zb̡[$7D{Rä-x z=31x]\X)z۶Da'0n1s0V{j8ư1$A)*$aهd@>҂seWt:]VjcXg"-PI2hC<05 ʨ QTd|"!f=C'e;2޾B CX7_(pԵYgwm1:Ŭ~Q=MGO&"" tVk͏6݅;CBGW͊Wxow;eMC 70Z+^#)ҟb7f_ H`']\}wIodؑ# Ê&uߊ;tفVE+0ЍoppeLX7va@k5:aJWﻂm;2#s3#J{E8[b=xqn"ϖxgQpZb {Elb,F+ P^=S1oQ^QZHɝIC6'&Vm&~r(캿e}W:e8 < mr:w '% \Ւ+ipt{IT?pcYKaWfg|#^q/P<(FvߥangqAooČ z:MS@N#lѓjGJ``6Oc B!!X+oҪ]GʦĺVEFo7^|PٳTdUeowi_k w,`mtGxx"OFJ{e6Cn/Ӟ1瞰EI!@acVUJL;F2%َ)$ :׭JHW S׎kg*#i^f s6Aq=BY{Ċ+f9([[_,jZ)pw~CYC0`2@"t!-5:) !p(yGƱ≵4L۶kA겪7FbB4n*5ieezT+C#nisP= yʜP9B#g˧{Y^?TdpXzm|84F~wEbI|ὩIGQ}z"8kg {6\LzBh~U+SN/i6]\P͸տ<oW]\j{C*6}4D c,7 _8Ẕ _޴D$t2aSSe{g1kz)&ra?SCK[ a`oR -;Wa!&2sxtȴ.wZl~^YNW󹛴1 {ˌ~IH.z&7,;Zx >O_\C?[T»@0*+"H% ce S*pv>bb*%x A[guHdGcN?3~$@Uj,R L;Lzܜn꽡<(j߿ $Atq2%hErJi7uZAUj(#gݬ$%$Y2#$A_Fg.3DR'p 2 =hVa_RA~Q^G19&0FZ\;0!vkZY"Ѻl~~d=Nܒ;:cN1]Nq*3nOem "8⑑3]PͅԆhR}xzq!!և2bHk``ـ˪"zOzd%آZAYehya՛"qXVz3 #Djl̶~ &pmeR>D k] yЏDr$/fiv -"}B#9 d?p9F8;'`jWMyobC%@d8z H$"f,3Y^ e?ҩB*GT 8\h66K܅t, D\$obA1 ~{~ɽ:f?|.&@ͳiТB4E| pb!jD&.*6epw:ō궾sIbXc($7ת[Pqr02LfMFZ3?u.^4=e2i<ƿ反SqGLpODONS" @mox> W5TTP3P/zmi˄r @C|0._`nᬕ{!*'jPscX_X{4xc7aɮJ# {QOoF&OOrv6rD@7-fpRF-WϿ3&E81@m~ȹ}2|VK t,, d('^HS~s-]g* 3 $c?1-xXL"5@%5+JJf&0G9?7YkY1peV5REќ-&O5mVCa^z.2c5SNG KT@O&|yјU,eIo20}SyB'USҔZaw9Ez;zTf\[zHݺOM!+Y̗.$]jz"6.Gc^5>FQm4 D UBҴ{z~)B[tk{g@lJQ|*KߋmxFt/8gMzc.b#QJZܘA;1aϮ1bkS6O#E1O`&ض1bEiX mŮ.2)7 wOg)Vs*R @ܣg)n K5~0X:}m:׃]Na +ŒF'^}6rS a6)~8g7_+ LG~I|%?hhbsxaenF%𾍙2jB=!DyEteٝ["6L"ATݤ=9䨓g9Tqpȓ׾mv8{|,!}փq1]2m|哔vllcf G ?):#Fc\~Ac%7`\tnf7LgYvZ+j7'WJ1*,y1VQ93T;L L 'J}|A`A:XCWČx`lUP/j7 Cm gE-8w )-UȒ% ; -Ɩs)hxW6|Vv$لqw.\Iq\O!D7Tƿ?P9`ܴV#e]ڰH].MŒnhp#r/e;jX}5`r߬g+ hPIlmSznxcV7";ΧY*+P'k~=aqfdf]9A9~j#}u VNH.-?E-̑\ ń}PYHS;~%UO?~R -vh{ؕ;B< Zpp}+-Vs 2C8\b &k\W2t0V oe3 cEt嚈SvATrcSvOA{HMwRVMJyW: 5ٷ|2+cH֗&.[lv#o܀h_()3q5ƁX_XbmG[Xϟ?y +"Hk9Ei&;X :/4 = dvP ](K%ح/V-}LR‚oWy6'km 4B4dT I$4cW!1N/W:& ۢ.I) { JGK W Y+aX@k h΅bҕh5؈ ^4]P%B¢Qk1G&%>ޝQRmez&yϯ }K:֬?:u/be`(,RKi /#72(Xב_Nnܐ3dIi1cbno!sCַi5OPɏYv>/N+ tੴP,bʁXaƄN˔.P1JP F7V.@)eE@}+ԕdP{bZRN4lo07)w}z26{q"R:޲(SCIicj!jՅt([ugO~2O;d*Lff2qd[b D_+o]槠xX%K}+k""yekI~'\k/9fY w{{?Li|(_jx=N>v1 |q޲Ae*"[kH#;ES{S|C_hE9~,\ƮT.QVȏ];hatLvru#IY{)B+. H(UBt.)%KdHɮhݹ'Dѕ3C&Sd]xGǼav*ql?q9Tݱ%8g{tskM)_@DUf0̍Ne=H7rIq|=q^3CVmC[ (Ωƿha"tMJFVq!BXv |QK*7m\&Vwhۺiaƛ|?l_Ŧ_UyN]Z01;:xbGZ4Y  whB09k8@iŬV9zV|](T S)w;U_{7]`ES cԙW-U0`5\MZg [GO/"RG_)$y5f hjux61!KsdDZ0%7st?}ɸ. 2I^= 6`1Anrlպ =+`^%ȫU!o2$u2@ڷ*Ȕf>ɣ=B\)wP(~#=e+cx)S; ?2l忙~!ԛHp0UI%s0^̃ȔCEc#Z_{hrkc}j6b(by.ɪZ+&BSto$wZ'MMw{rm0Al/d;1>8<\_fb)Q[抍$.W~v ;g8&/5HSvOSZ !Ƶ4Tļhyzbelr_5T6ѾWf{FhĬ^/yG7?*VQ^X:fɏlGĨ:mLF3v!y4/D(9z`su:h ߵxNjK9_,CmckL)QyR1n ༫E_ɪyHCݗɘmb 󲺍Z tB }|1E I+ s#b[ރ:hr)E»(n޻bCT9UIv&WS55?iS!mfgCx@Xjd맳[wsdu4Ӧ;v" 2 B={d%ỠSv5cP$]H8z\{GKmL,*G$D [5;XOdI!D*@%>鍃__b'%hKsSCݛRR"N)V=B'a=(> p,Jtm.[۩L6e \^ Qp"&[P\ Ջ#,R^2Y ,9w8[e%j腅C%e&XD+ .;\Nx%K9u:JF#J#II@F3$ 'Of25,#_^l5B#u<@=,V8^P,y?;F`бQx9'}T%g7u ZԫRJS1Wzafz90{j`n|,wVxׂ:=(@8D| nx: t@DȊIcjݖqR"]gIpSv2]&O0*NiIgͮsg/s %#z4*mhvhm  pFPX~ T68E~`'ڲK/}3wdG{7Cak򂀪$TY=nF HIkȴD ?Л4q6ްOL߯#L2i2יčR鏮~{x+ϗO3NLXRTg~F;[)7I$RDG{Oʗ_JEDdzSTgD-~NUqb8z`nM&OiR`j?9ښq9ށ>eDF̊ёE/< *_`]ΆY w^}يaˊF]fȹ-}2]~,G6&-ٲ]ʋJ'"T2>kv߸l@7QOx~d&^چC Zwtzm6 (_=%6)9tN`v.0K k8B絞`)}.Ka + Wn\X[ U'*A8ݩsϵBU\`_$TX Eb ?|dXnPuҿˎ|'@  Ym{}|>lb7>UKSLs ['q)^GΌQF^ zpVkEZ2̆Ze]?=6օ"ODžDFO'CɛOPx^7RTm΀Ŷ.R [.3Z R}|FY:k{F+H55gA 3ev) `}/\Fhb+UK MA'x)= AJNJ@C`R[<sJ'}täS߯vc-z Sjb c]5vhDMn X$oL?f@ՃS蓱L֑)S#HPHgQr JؓVL߭d7_χr ],]~ˬuA'VVTFDX I{OcQ;|. *х %n&4ۦKLs_/RKFAx.iQ;3d PIJN23M]yLnyi*^]ReOa>9I6ï_`?^sk F޳ɺe:T-)16,^.,!eF _5b#l [fW+{`VPN>+GBc%Ժl?&G,SEC ׄP%gzŝbǧ@4=@. @qǸĕ ltG,^ü.K  QƤa}kw+8` | t۹%)'ŝ?E `*IZmsZluV`#5OdJ Frb1^Stm5"v{iӒy iK"kEVxN|r:RDϊ,1"CBҨn`}[:)o HXѴ샅c#sQ@?F#/$<7rqMie}%B^WMjN^#18"*$;fyVpky&хgJY7RS;փ^(V2^fG|hȥ;0axԨn̨zVk녀F5 61$+5 y5= SbvO͠w$P`4E,ثn1Y* ?EaA-tg~שYn&oPk뵺P_T_ (zlcquyY$љKa3+OyM ͤ}Htbv3^1o}9(<ʚYH@Y2;L—Dwj $ٙ`fp*[s,pcp7۹Z4rn1om m?Bzx$ uɵ9jGK6 X3~rst[y@`Sa'o=bn?Ng ,e4ܕ>AV">^Xߎ4 G ԾR75A:9d8<>DdQH+Y_f`K޲( \DO-Թ&6)]eEv{?~ ۆٞ/K؜Æ RR 'lx A'a8~%!23L7$x5J'"aQxWXC<2_T= 2R"] Ekc~% !p;+@$=_>[5 c p}\8~NLϠ)t K8[(U`aFo}LBz<̐F{F, /a=.OmH (v.Cej&3! Tve}Wn5>Rp`qM=¡J4n}MԇxV(5<"R`)g#]nCȖfmgPT5#B[>6Nyua뤜y'<]0$< ¾#ָpOT9kf-dvszl]Oy$=﫺m[4YeV?By-;I,$|W- pDr}t*3{Yi&b*j4獾Yvn1!/@'Q^7,nU)ԟ-XDE[M0dbN1uio3zc$z<s"8u|I@s+,&R:.E2 ߭7A"Po"/$܂qDMzNfO~%@"|L ]E|Wtd_.UyZiRn;_J83!o-.RF0xr:&@u?\i JġHK}4U3ξdScJ7Ӆ}-DGLG!"rU O"0w"yc-' ɺeH-BJqajcZ}J<لtlVܑ*EkX-$%D0km7;oL6bp)(m<rGܬҲPvUGƺLz)#W1tSϙr3@at #yy-F'E](_5"|)aU|KW\:cW$%ɳB͌;ȼ[A\ZgQo,);3&}z5707!qYO]prf{idae~F]Mm/!btq$Ux{-JġĉY ҹ-;Klz6Þ7&p@^@ yܞ,M?{0}xOX{-8x6GZ)q0˥O:7}E.G͈#I~8LSY@cM7P34%BD+N4/0c ȁS 1Z[)-gf[z0{mm9-gqEIE:~uvy.c1JiЦi#/kv6i)Eܝn`Rb&p?}Bt]f^,-G%50 "R)٤LF&:l^K'rdկ<}Z&8zyߜ7AlVfuds35FL2~;pCA{EuJdlo >(00L蘑R|UVjqX_ǖ02:[jEH=3,ԊW3\7W'ɎJB4HӒEha|r.vP/]MAy.Sa+D1ϰ"7mRreZq5¯e`z: %xVCc] =|ca|fGxRӅ;Wޠ[NaGBZJS=Y^71OZHX9iK3b)%'t-t%y'șcTAÛoΓ.D新0( P8 Lɽ5QU:бOl21V#f4 !~V;4W LYX2'7(9v/dARm[>E>+$oKtzoofݵk\vJ{ɥ{P7rd@jW㣈Eڡ1-W!9-j 4 D : ( u\؛bT@#+ʎCbӅkr|FGZЕ?A9NNZRM?\ ͟h cGp-~\k=ɵ~-<ppqǺ:XV\$ֿj*(xZExJÏ0ύT5G,FgIJ=R-k`=M:,&cD-_z֎ʦ0KȊJ ]elFExeML$]&?yRR(ӟ];s~YX5C*OC $-Jd H)meǧ YQ#LwO~kduvur%i7;pc,] iOmtQִh70Z5/dʯP8OH@Yƌḍ]&)`$'F :PכAzAYfYw,  hU Gۣæ V`Э<~?pU׭pqCF֪!"Hb@yd ^J6i mKUcvrt'/l M"h{uTB0&  <`eVhCՆMlA fɃ>_Mp{e4yU{c .r [/xOcTZͲщR(QI ]K=$mnBȡ7-?aYUl.8o6X;&'}y  UIM) E8vΠj~-4Qi1yH]NE"`HT:K"3ԋ^ohZ^04Y $rc':]Q/q=k:k2D:\Yg+ . 3uڕZQ t Ah{B_AQϱ|ж~J(Ud|BZMp:tmT.agvnrl~֞4]n[˫ CYA2>Hf %CzyO)~bU/C"MPׯ8&a WEzT췂F|'GMMLh0l~t :g.Q'/t(E۶HWw=BIM]_ LEj?i6OC&ͼ"#\tJ:5 :O\׷ KkCd:kLzJj˕6N+H.XܵW;>4/r}@R(v {,r NL`iw6@~cRl[2=SlyʚmYI'@)'OI)wKtFe1qXV[rԯ*>݈m7Xl맷3^ϻMF顛UrVriVZk ˒T8eaj'.g3^81WE&׻j] kU`j7`nly*2̟RAOo} z,PjBPw^1຃n ue}>C/E?:f));V]2q.ZO >9p%4sᯫ,"8'ZKQZqC|F@)ev4P 5v3pǵ|넚vE)U|6?IJlrSk vNʚm ]tW@®2$.M I?`gz, YwsF*<>782bwt%Pg΋,%6kJwZBs{mgS o] ՟0pdisiWuyYnxiC]ibB8wVLJ龟 yL*[^0U88tKTf%IOL]b\Q´頭ystg?啦gȗrbwz WbC&ɬ pS~d@|t^KӐW/ *-!!Ģ"^b{R\>~oZhX8HZlLg)BG2FP"lk wc?{+\ʂ&wm}GTZe/Hłc3^õE%c>ʎ A?<-p# |`^fr +uK]-MQ{M[()J m˕LC%gBz4f%_8My 䂓'"LdGݏ#j?z~W@j`cPilLr^|P+F7ԬA?A>^0ؕ  oKc| C^×PW^q+#Pk}F=YBDslV{ 𻷐ŕ:]-({W Ma3&LTJ&dyXwiBD(>qeZ7m_qe0:Wܪ,C{{2ߥo(@@pI-@05OVQ)fq{4 >GPG`a(Yqd+zC iG' " 1c&X Nt_ټ9q>跗 m3wCBBK*rP?=`v#|S[^m~(\Q6z]Wͱ'wɬB sa˒) t,3VvQ!܁/T#MbdPě}F.U1+#w*dG ao;Gy0 /-ǿ?3=]ŤvTn|PW n^->Č {F ivL:^f$Ri'pPK y~0lO=j۟\[﯈,ۃp))iX#B)4qoH0?~xmPEFrsT'Ȣpzֆ.vQ+IGSOΟvǍ{{5bdOcj{V+SU~V^)i/qKnv9+93LN.Hki*D۰ym\iZ F2>XXъ,1Mhg5}V```iSOHѾE$/ţ5b6*{yFfgHrZq8eݪ@_zCT(}Ѥ'V<Y $9"p>.Od@"e K]әTJ׈f`gDD#&_E+qײpcWi 5K`VN"Xs̨)[SB|QHUٰwkl\ur6& Uq>'sf7A$B~R zlƭ +艚$;F7#`2aF1Wg"~!ka2W{NC<4j$P Kު5Gll\2o~CANT&nϤ'y88}r)q;գ6W]`0s(@e_^@BNӰe=ړԲt5mÖIH)A v-ɺJ;  ~'Ms4[d^hfvh;i<;#e"vMm4ʵ.B2]H;~t+5Laj\<$-&au/uDk4R٧ x[ "`IuAG+"9c߰g$:W1ǿz+># Ub)L$VSwChOơJƟ=Yz+zS v+^tS6 fH܅JPg?(TwjQ;i>-2p3R b]j:W$`gyy9sj;J) VE]OdI2B{zrj⾉!}:v5.Ap4ӃG뽶Gi]2>me_yko8ֽGzUDsTUIKvS/,i`ߢ{k+{p4@X ,esq:Jt[>Cu΅@C3N~1@|Bcz,5EJ94WST\OwQ. oLX{:J. Ģ5?)/(3XUR d'm$dRq9YSAUI8[Pea&El}Ͳ,LEh4W]Ղwe9mt/ FQy4 lqoh՟Sfop)w*mr-[P0Ec`evokmCۮJYF6=eRdq`$`᧗+o- ?OX>_!3L,ڟb=exl*%EviS 띹deStuL\0k;x-thx/,,N'w7vs|jZv( Jalc 7B,? u=KC볗N!N(oEO()GL5PXh&2CaXB=#(0(JoD/chm;0 S0HHU9ڟЏP+Tb Qj]D>G2p͡k ZcIq/Ç:˅ZR Vz0@=;0!3Mw?N mr5k!t=&P{ `nU` ,A ~PMPķtZ7cy }dDH~W,;笟,9<ы3zl>n !5 .I+zH0hԋ\J̫NAߟ[ԗ9M̾@S~9D|?mr_\-$EM%{ {7~3PWzB x Yr+z*"Ur.-^HpLp;mS%UB&_25$J6E3w⵬EHo|^oTҌ !/r = ọhFem$F ߎe|4Gg3j%;_DB o ]g*X)+vsGn|hNl*oPI*j*eK'!Ӡ] [2G>oU`k7^#4q: cLh{PWСGO;Q1)^#Xᴂ`H:Jj7<*k(In^*-zwBH9վgrȾG 2AjU`nmn4m651sV< f5 ;lYrz{ʨZ-VezJcvzH3uFxSWWWv/x2e}т5oPЕ1N}zf,Q qLޱߞH[q*݉agach nPTw("}|@(?ay C+:==ؓ{2u]NwZ/0WY? ..?B`CL>jrȑihc)hE;xUL&dzZ ..k草tgZDډdE򽳙w+˶$8}<"6dZDͭqzw`#~$8n%S3:gW9ʫ/b "᫅2e544Ņ$iOxp==ƫW57FŚ]O+g6ۤdqSsYgvz[)J$IUiu]͡+HK- FB5Ss"֍ס@FNvgw\&;fʪBzBzŧn1K+˂suuxG9F 0[HyBt1,!ArtlHׇ3\v զcwu`-}_?SV([DWP(C%$HRQMe |EMw/{*VT$2NtlS8:q/1Af2%5\vKӰԬyb+ZNLsxd8KeFBPۘS\Eh~ҜuHb30R% ྯ_,gT_xFf waH~dFat9#ɹ~ŴqIW;o>t Q501R W O9j}<np)BCA^!&|3F︱-4%ފ lwc8_/K(󔈼ۘC;;Id/hyEgMւ]j~$Q~;݊+ZPD^ot>,E4t{1d|LpY3Zh@6.}tzwMNxS>FUƟbz dz/wF=|beX;cHx'b (좌@ M2kR* }"vO@yc!#Џ Ka5lJ^YA}쵬 />U*4_w)dD(DK!STs9*w7pGnNI}S$0] }`B]YnWѰly%R93 -a$=1tqmh6va\It8![{M+BSn4w]nJz _o( 0"wn!ɗFWN0-Iu,*0End%~i Od^By(B:>ͪܳ cN[;n;I)I!Ga4ypS-̢? @0$Gݼ?6␑SX(Hpx$]Tk3& n0 <%N8 ўҎ p֓JT! . WDp7L"u{@ zGkɐ2oOPtEv/h{Hsb@N{O"Jqr?,Q;_^rVcq!KQXd !bS`]hg"#%Nc"-%([yt--SZXc/  =fZqZ OϱeǃvQeeqx^G6xm,cJKqH YTه3u,7b|Crt( Oy`zcy#g#X~ᨸUO]|Xg$o&ߖ`'ƴ;|U`h|h) 5k5s\6\ݳ+Dž@Ɉ鉦Qh 1#N({i@^TpXezcGiGv_?asvgOe#+kDSuԗ9x:˜^byt]"(܅aG}eq 汫⫒4\#RXH R5=O_ |r3偼E/<2=yH@*_>}&4?ڃaow:,zQXַPnz ڝ7O`8 ZgHzu܌G߱j;F@\ h;ec`DǟXW0Dĩ7,D3$4{m]R6bzD;/I;6VmGFqAj>rMhi(=LMɯX?q`.xG1#|J#gN"4X;c#5 ʧ%vh[K*o Hwzj3n{du#njNPdԓ: qSr0ֳUoқ&Ψy8!Gi.a/vOd)A)kA`(T5W+?ɨ9(6ƀz{74&K71et̸u]Zk®T:WdS\,(MϛW-wKpS}]RM J^mT>Ď4+HK7 XUdkN(X :ɰh31{*-иə#w l:$@Id٭R(>C]@"D5 Q? ;ѵkJǵ"66Eޫ-nxoGVl"{s ޾rVFq3 E/30ː" 4`ǭ ;F3(K$pgVDָz!#,~C8ųF gX=n5PE@GQSZx|?!A -Oڭ>U]Hl5ɛ\zjsRo&ԑB>ǬJP~ *4Xqw#Fz ]EɛXmيlN[~>~Re}M2B`cV,l7&#3H9 VhIhFF֤d,?Q.):6u Zeq`l$0(OyMfnY_ DAUݘ=b'UՒrUS vu< e_a-i$$OgvcC1ϨG+o) J,rV6b5J+ǡ:&26 `4: 6t)Li*(*r-VP6Y+pC]|E vl8VW g <*;Q=+|1¡@wƣ?MNyVd;+05YkzFE(Mô:%yZrYDQjBuۑ 7ԘF(Z~.HWH~CzҏKc# 32]Hi 9%u=qn#_q߸(RdQn~BB?Cɓ#jS'^%O]EȈC.NIژ_&nN V˲M@ e-B_ǃZ\$5`ߐ]m97-H+DTu$!G]2/p5Fj" ݷ )U5aoR0N?w="Nf'34H׬^O%HBm*S8bRpKm2TYnE^[PV"j 3_/;[P52-tc;F)#:=Ď 5df^a'%(2?D O} Bb౤ê˟8Kت<B)i!q^^d~fFD~rk,oaIEɣ#%`IȀ3"{Wb(Uǭ.-Oh2oz܅ F/;Cum >Alddz2ѸdZ+/Nx)`l]OR{L_p*) tkK(+a2f'37tMifcBA`MVOupt(^JߪcS:c!]s񟩉O ;ŠyYBHҳdCJX?oV&x5Sxo$.zz1wQb$5#îID6̯&7IˀyDlUP!:]U.\ MЃ0طf'K$F]{UpڏX):h~97,b6?4)cȆ❻fZ< nYќ='F|3r5W.[HDwc[-ΥV,*: wAAJA6ֆ"[26Ol4*8Pg #^KCʯ{ R l 3ϙЬT=v]5'.D}sB LCT27|{?Oa_X"=d)<>/[ w=OrXA=Nle e < Gw |ڙpnKb}\>bZ2Kjelj1Pkm0~]^nÐzѴ5/ ]d -k])b~g?7aUy:¬DUfC{ c=kK#_BZzt@g c+7xkmЄp,պƓ=i/ˬZ^ذ뿗j9 W̔N;Ançh3R yji)[-(-M+ePEͬҧL)^w6{3s9JY$Іm HfOsb &qy "=m*Wz dqG 4Lဇ>K#9m} Рp]7 ľ4s>5 QMT)0dL#׺ɑᬁh 7ǼR#ѨWBZUqԦa/I~dg2yD|Sl|y˦}UtG~RSQ1'`2[z}Nm&H5t3$@5>E *ߤm_2%g]4mJKLy!o䫢u! LnEzK2tɴBǕ/W^gpʉkJDus1~vtk%tI28%Gh3=㙮)k~ڤIX6O o};zsϬtYm*G'BL8Mb=bY55tϙLE{1̩P?2IΊY/R{-YN#U 3ڢl]UDd|vOܾoЁY!O6\k@D.MzY_e&o- .Q˴ ``UCV6 o$v^곇}21S'N3yj.9" l.sfa# RzyyI{r(+0z jXX_s ܼCrVYJ{#2gܦ?+2%R9]Iy ~657#um~> ;C)Aʻ o䔇kEF%o҉ l!r(132rϢiJ˺B6={޴,+ڊWuS)~O};+M% ٮQgM8.!:MTdTxGLiL ;3$SaZbǞH/?z_/ W,kk50du>XstGSoлI P =3fylY@z1m:/ȬHH]Ce77.,,Ə!p[Y䀬@zH ğN&"Z؉H*pqh[mB+j|m7y}o̙QnjC,wI#[MZK<)/0P{Hb[NKJHH%c8ᑰc5wY`^_WS+S)kȯb4l㼜UxFҔw42qݚG{ QHoUvd3> H=0 EBts%)Q%Qc=MQPim^"8tOXzFfOǽKQ$&Ɋ Z|*y[F+a:y<]^b6OC{bW|>W:ߝhO]I9r9)U0iF]k56_qwZ . FM?CJs $I1S]KMkIN(e1u kg?N]XkJ *ϙ19ux.A{Ue=,V#!t'"љ`N0t09DKfɼU\@~"=应E49ZaotΖ+\k+f*v??D8.ֈcZ_6N8#{ PGt )1nz[4ge-T9TGۈ`m4P@%u'Y3$=OwT4>AaŎG=lsja=a*?MY_:R#h*YʹUfCOn ma"[sSK+F[%3ոnP6 ]+d׵ zG)gAW"q%wY.:Syeo^fY&VKұLYy[nDd|ڼztNAsx}ZjsmŠR? ;U[c*YŤkOmv]VjxnSxXorLsa{=յZ/P] A҅]e ?)k^mDlOa8ډ[Rʐ jכ9Q3@Mf\Uq^>"ϳi-q9+ 5;]`FUfsYz, ;iL mDbmyӨңIxȘ?G1g3 TZ֙'qۏ* DOՉ&+ݟHBY$1$Xb-+TyFڒUsTꬡq58'y8DceSNè Bt/Q+S\8Vnȍ:H/<@:ܼMq]0TI@Au-DD-s54Ӆ5l^v1gp ldibzA^"@?O2eǷ[呐@VF/fZ}Ղ:ֱ󮃆Cg`6`U?ʏ#39yq9Rq_{TN8ul.;rh<.!Oe`j[/cFqoXyx +=-ZQ|`HCucPC+3-Gia#,L~+T\<+=cCո?ӧ9EE=_ġ3UIw:7Nb)s]/gٗ[nӆHQ27_cn:٨aIq-{"jFi2-%hx "{vˋԡ01^\t;j]Lallk(Eӌq/3 垯Jfҁsp<,G:+'sv2r-^%/\fT*OmpDhx\_bչ^ro Kxd~P?Ua1MPEo0+`AWpXo" STV-vcdJ3s8]6(+v]HB8jUn tEB ݤLљw=Nݯa7`e :-ߘ]נ0? DjI50mh' +6LT0)~#׌`Vf#Vp{qÔ kSR+WK%\*nlVJ;}TdiSwM3@пw]@Dnu~sf*yĀBV3=Jz'0ۤrY:Ysw6TB0ThWD,x׍ .Kѷx_|z}0R9WisVѓA$"sc-5N-ڿZB Ldֺl< &\_>#a1_.5M9"` m O)@+: sd5m9"={Wsd1Q4I;yyۋOUҹ_4*W j4%5&5(bs:Wd ["f~X2iTjΛ1` k~f$Lx e柞٘8*w 'YPBOv;뙘NGY?ubʶr_\*T +]/X҄Ig e|T??+:&{*ޟ , |~%ivw >4C^%^rO_PCBݡ8DBHk,}g AWn4\FG#L{5Ջ/ ~CzpVTDڋYk&{@}I݌)IˬRTY$S eI<.rc{469>::ޥݚRFx#n %^?XVǍ` YYB𬇯R¼n;+!T oXfa&;RH`W[aiOrv;IK HFrI0#`\@?n*8Q$U˘瑪9/z <)!EHk4[1ȇ ./rƪa z ~\Occ:hЄ V*$ gN=iOѓQ~vOr8hw3oPjg>klCd๺`R; y[4 MUou2T[4$}FG2D~QrT>R+3L˕O5o%pTLi_SߥNDVQT 0 C#㈜qB%p4En߉BTY-/05TB?nF:Ԣw4<2| e˙ɍtQ q%cFl}RΎD8 7<?RTZFIWs9O|CvʧM%½W3iY#XNoh!@O&^lܑ"J wz=t7 ϒڟ>~4zP@4 yx6աG Tg_isPtgD13["Az$(O 6XRoXj|&E-l]l\L1L?O.\:0`ѭ5֖VNxL@{p1z"lćVR3&Cʒ2or!c+4t.e/{4H!OSG Ah{'4$>[1|tƍ2/lM eaQ3g\]WCX)sN B,R:e)'Ƣ%vѯzuK¯II98&v6R rRSСNq~⠤C.b W#*-E4kKB0:u2eD4@GC]TX͋c3; V !#MsV61BklZ:ZW UQc>I\u2ժJj7M1hbn[NнrBi',za6fV!9]ns@UZyZ ak8D)|"8vIJ_:SljCT\p\yxS GVl ÿrBlvi0na@Ilxx*LY5B](pgg 'u! qqݜ0K oZp\֋zn"V? DwsÈRhItjBǜ1[7]Uvé?lg.\Si;qUniJ^ !شM NjC&DJ{nG|F(,(%5UUz13Um+"㏢Y@H\U%MЌxSaT,mC'}:Ĥl?| A+\xʠ''@Zds4вxsceQ?KEq|)MHiZ gphˊh3.:bMJ}Qs\W`=HE,I_&"szT9 LCBx6?&dXV7&uJn(썈`t?^Ҏ:7iHs\BP!ZmTߦ\l[!bLnA5O;&@3!S?ՎJP yS$)4i5v Ɋj"\kIF}N A(TZ!íH(<[U I{_Dt)iNBB`2 b^ʵ.b%k\_n_8UԆBnqm`}'{QYD}=URQr po_/è7- ^ڤu7s/g9 }F0ܿ)oqC}ع4)L:t0?N+4$qmUporL)߱WńtCt[BĀU9z~_ф/LՐU뛹sDEQJ9Tgb40 C@@&t&sZ^)gBisS ittX91XУS{/x/;1zƌWmTsLT/F> }b+k5% 8h:a%*xhL{iQ<{($?ix~}SGr8'/^Ι` ~8 wڹBte$Ɣ*00w[ ٷU3PuDk {;5>I=W=Yd8ДztQf; _owdts,wxfgmdM̠U}f*Քzvw&w˗V@␍9oLB4ouÈ#+z z`Ā}*XlyՠE` eXp*Ecw6FX:RwCEbjvf8SLb;ۻ6@NxSAWCV]͟Њ#< ʹ^}a&g:ghϢW_Ƌq'x5Ġ`!_G [Nmo7/y2qsBbhqw0({zMqf;UMӦ#8y"#4R}г5) " m=bI AHv]%>)b=@PܼZcPQ9CC"rTBSn&FLE_W#w[&*rYym*чxKĕxrV`tCe}Kc{I#\ f( ^Qfx?)vZdQ>I٨﯇8N$t6p̼<>.Ho(TWr&Qٽp+:vwߙG_¨㛭<.X5#DΘLl+pQ*7:]uKAEʠ%U%!xDA1}P(VΛaۖ$"'7֫`@4 %)骕{~oU[=)6saK֑Jt*墑`< #¾\M4_m[X Բapgp!xgDtC7Ԣ^O~:c :N|&L'(>&0XAUtч䅧}>b ĺ28҈>s h%us ,!-Yx],h:(mOR ^m(w;vq/Kbԙa>-a%fojYOaU@J4]AfBvgCPuW2+ csMá']m5yG8 "|HA QZa-6.N[U`O#>+AʀZiJ ҇Dª5x;tvr_}H{Hy0[|qOt2>m(z|fBZ(פlH?R%]Uu(9RQ--je~;/q[z[rfPkh;PI`jWeYnkfvVz{p6$wIzzeaj?2ֽw%_rB䝛g= _ 7h8d`W`gPS50W/ ܵޛ$KlU@8<-Sx ^%/"T=qO/ΞZ5`F9?!+;ζAp}i9QiHbut4>8d5.tz9/pߐ^g.H^hxj~dƷ6z` r?N247Ӥ[5 ^uI X ueƳfҫʧ/ܼiGB'>] =c;3u0R3oyy %?'5ŗ,uLaѪTP=}w!j błDR0m?1"Ýl6E@28K=:3&CIXs/ s6@XiмvRHuUI낋 n6ӗM%X%x8"e=Giy:֦Q ٮ(4[α+3N3PZps:D[&vL񛋜ġ$? D\\Z!~p # `Fm7Z{qaMEfC Q($~Ju"ΏŒ3]5S+cX[:aȲb:!bq&6gtjjRtø%=I\wU!>l[9xl(Ɣk T%HMv/gz AfO+W:+$☾6Rq| R(Ĭ 69/(˜gG6$^c=P;[Oƍw^e,0JY8@OrV{B.$N!oqԠ5__3]d+*ir|D _hn+L&̥ET{Xj,&P7 cMf {~yi@=t)(֒yIy\q uI<"_,)KGPK#}"~ ?UN(}a 64"=QQ~u0;R{MG߻ˢ*I%'TP.%Ftxazoہ]seQ_\2C¨l2'ZE#?$/YY=f=F@HӽT2 6b^ǪMbyj9MR}:cX~,ێ@~hyB{>zmz "/-_ZhmqPx6m…+nŘ<+`~$.Ga=گ,`sY*B!`R#,KU|ese:9-A1 <՝;n{a4'CQX[ψ{*Nhj`gi] 1{ 䧰agrV}I8Rګ>BRH>Mw{DQ#D?fLKejDj]c5>2 (U"W&b!^L'Nb_z[Og-ܮ%wFuJ|e/J2 s5}=גS}-+i0+_x4y=sÑ>&rY-XRmC/E`KLPawoc>%?:آk0{"0 5_qI앒$@p f+VY|8R&gN}A&9t«(UmSTL;>"$hRGJߟenO,p,'SA%?ww@HFh'mHWnsumNE-I:8x;6zvy@e~dZIl2T*UHϏp`ehj17-Xi6&G3;zIadɪi YU[wjO?›4wlቕzsd}yct bJ#l akhUޚ`F.KSXş~ ߰Uw+>lI rBQR[(o'/7+r<Ⱥ+(ʞ^Z]JXN$YDj@"7pĪ uoTVJgD^s 9 ਁ{S5: ݒE[t OXɩ PpYs5tC3ږse%X`+5kR0b: iy6 d/T ە!e0n~%HF)v(%yCd9|P~!zUGEy`dl1ׁEBx5aCn#xP|ݬpWcԦU/Xql! D C`KAS/gBLOFsU$E1/m/rq3Io:H%\jY2" S'%sQ@J4eh7G릦o{~P7bUY0Lh%Y@a [uN?,E%*DSLLg[wa4ق3wX?rM:01ha>NO1G zg!!q!@"wظSi:>ս%IjDMwR MC&6 sҴ&̞DS5owr'R^߰PK"dEI%?^\r`(~4zK IպuS!m%&5r\AXp0]=gu+nߓ\wN ~v^JUTb)ݓz[FlaW6dR䉺H SZxgm7+sQ@{AEWmdPVsڶEOl82)alN/ƕO=PiEXch'R3~)ff?r7L,)`&,#ai%&Za5fY_X] /(mz!r1n&J_qG%7p {!k͑y%I Ω9Zf4@.LۤD(t9Vz9Pl"F`1pR .Z'k+])GRi[j'ZqqLGOc?բ<"7Ӏ'ARq/ms޽{`8g B5z=b aSaeӭWzW4~1ҡɈǽ@}ȧӅهTKUI~PСJȍK!bEsãK$6+d`?X$$=iS)鈪v`?m,R-U2Qё2OLuhǕ2p 1\+-VpZƞUWcJ~ $åvenZq/Xco{Eڏ^r6a#c_:<+ bEFަ:Ҫ Аj=y3%+=|GƬ9=ffXWk0 @F!_CI.6az[ lg<8nX,^VK֑)T;T3r髤=̴R+<|1Is8@p#G;I"[SA/@.N#LV𻫗Q[4BdZ0dMv (+sҾAÐɊK#\$)N0P.ǪD?<ֶV{Sh歗+Twt<:* ݔ̂ZަI &e= IV:(;,e,(YVz_ ~9J)z Lѫ/IX-OxHV'=ML˔4s)JjdU,:O9R?Do]u{} #I/znLY{(q6Ρx**==-R%F͌ϼXJܠeBiԗ: +/ᛡHW࠺~dޜ5CmNb[\C4וAbV-~qa\BY͚vIc)H hDtKi<#2m3e )~+37bkYk=UEO/Kϥ9A1bS ģN6 d7 H8S{U^Aؽx;3;Í<2>.:Up @8µs8RdQ⇌d#H'xaysWZP !H_Kȷ^2ġmۛj,˺!ЅuF?t{~l ?VF!HX}}f|6c4<ܹpл18Eѩcm8"=kM~Eo el[U4]}w=H&Pr]xZ!eK-e dGjwke#B ~il#|F _BSA?G?ArY{a!g@,Щӹc u'<^$3x\bR^3o $,9 ˰<ϴ?9Q (|祫0i6~t8BihѬ= {Sf>X!lF NtMgz]`; gu.IK0ND`-OSXY(1 4#N@dpKHz G݃ѹ~J pm^¨sy:oT!u DҾ=KΎ&D7m"G/Vΐ`]@d;uE<$~Qd! ꩀy6~`v !AZ4H$ZZm ʂ(v(Kr幈m]6*]F)l=DNL$? 5$(ai)  =QR#iXDUF*cM+w*n?ZU'V Nfw;5sD&>P/2-6v2/sVau"m;j\YW4βi `i%UuVƈryfquAwhohhy9HCD롤2sj{}6w3,9q~]֏dRM1@gȔن MS>|1&sgR(,8ku#]]sU-6rGiOዩx&Jicn 4WsJfÓDreg$[$>x!(on܇smosL10)|-{.Yu[gk''Cē9)E e\vTY~[RnK [́/LƬE>/mp.Mbd|a9[%vT'[P.~3,)`Iɴ \f?僠+! W|-+)x6?` HU0 pG3 T1wgTyZL׈3腴پ\XuLi[2;EM_]D#|GtA-fER}<!Y߱XXA~y?E9q5`c":\jY% ]v~R{j4s_}شhбW?eo)ɛrR :hTF^w8z?[e8VP &pW$KM1I[q޾Hpg:Pid 鼏\A}"(PS +V<#cM!%pel( WYyI0d UGvN߀~/]S9wc %OyI qd)lܜq,*2EEX=Z94]{*y!U̻Y6EXGiϿ GwU'm?kk<|:Q٤ |UbzBiaXo+ULAgծI@|5#vAsB+]-ď*ʴsjw,sK HдQtഌ-jia6Uï0"^8wK7^۞CgX,fW 'Ep\\?>2g~!{J?N]Tȃ~hOn0b4!OH?2H-q8]^(Hay""\V%fG15/lZZS<0PL~лk qN-8E*ј۩q縑K珇{!4wo-4;`+8!u! \XOv3UaLw5^}D0 wx¯v`|)_OLYV'l4I @ތTr$?LO޷麺_lKfp__^DO<0*d"O(\iUf-[{С!PdQTro%9ݗM:>in&aBz8*¶[!Ecsa;yE v>kw9$݌z@]\},g ᴫÃ&aL=" Lfc \KGIua=).>/`F8Gd$ \12fV>6T4~rlm5m;4R $ۂ5Mh@ #be9gp|>tV,8ӡeBmt S',#+b5ȒDB"%+mPDCX#3\vRJ32j탋SBc % pŒ"[ng6Kv7%$^,C|N=3LK|#/K2.yP<͇-Vc0:Ī[Tb!P㪮>XS`]k@KE`$4<'ECY\ 2eҔ_* ,ƽp,@D+rFFv ;?D|(i^|oR׉㻬D-M M^ OEc?W.[֔ DFlU P>L,㣒 '.^ JmZ*ǘ?] sZZRZIq#1Ś(o:ؕ$xUҤc⃚J,/hzח/K:=jssVLEPyN_'+ªtD֖8BFОOlIۤb[KKy=:`0.ݕYw9.y'0Ցu>nuC1 ӣُEPJ +%_nFdf9@*iJVwACxMTx2r#e9TodllNz?8m{.S|މ|c,LE \%hY2>K-@W=5z𰪚 Xt2`xԩB%CD:FGw,Yt29-r53܊؆Mfq\8G#C W]OZ̉Th+umKA~Гk(p& $Uk:OQ1?N F/ljA[ 't T& {:\YK˚H][U4H):NcF_ 6;hqbd4TIԬvuAgLF9.k0HY;N1E+DVn\nRU뼎Xu>Fm$w(d egw@bi:)^xqha+mI'~t'U.}}* tꙬsi 9pivu#]7]8ˌj,RM- oA# W378p1-!E#.3%ï{-INתF0?͗on8MrCJ?qF3eЪz~ jER;5SgjgS!EgaYyK.PcSjJ'#Cޣۗ@к(p^_~NA{B+EQ Iu7,sqz1 2Cm!Ú,U}wv4>d M>pEe^!.h)B29BdNM- O'cR~"G 1Yv&zB`2OCy!U {Mi]&u(I*g,EKd%ؠ9;%!DkdN|&ilF .Ի6-_03RLb)=Ʒ܄¯>9ATr2_gԥۏvK)kZ$[M[ x4Xn*ysEH0iקDT4K_3b9wwX;OT ^ba4dsmYC;NqL]U Izj~nF{^aC'Tk[q2ZսPT,9]og,$,>Bn K/m5M萠#aaehk֎/L%l ~%7v6vWMt?2,u$bKзAFȜ>Z尻-roU}$=./V[+j˂0φxímMlM zV) !ihͦ+C*WKe'Û6Pv9t3*3my<<9oi=?С{4}=S~"6O@˜"uT;g S|bHĘgU(JQ  Jw8jSDjnae} {e;z[WO&#܄ '#&w@ 39iWvpG^C9>>DUP@Anqoġ&hpRDKH{;>K>ʖx4|oqlVZnh.wC_qπCx嘳F,0b 8k_r@rg"6?Eap| 8yV8wtna;jlVKJ֑WUI[\]X<9S3W\Ħr Um+DZ# 6XD $pk rLp6WtTnʌD fѕՅ&Ɔ$y x҄y)K-9nm;]^:=!K˫,Wx_J1 -a,Uj"C R=j 9FP60=0ps5jy_ѸHvQ'ႀ)70䕐D8B4m* rtg8j㢥:rNA2De1zwb~kcV:{ź]ܔſ573PkZO_g}V(5,'4  bY*zX d6䕧$6W8أ: KkдaȠ.x7sHlt"$hى`esK`3s#JX&=XHu9 aMUA 06$١t| mm݀7DYĒdgC%F©%'!kJKkPˋH-!Pz:5q @΃~ *n$AZo*EySB/237&cp2(ꖗq^;pRN~xyl2gC5KCg7B)]'ڂf9c{Wడ |BCD5E;2 59%$w>q#a]#H9i Ip#G >Nlϝw`ʳ] 8P,j(1@L )a}Ւ[P}bK2d"ݶ=.W Ca 8܉-} d&aO*QqQd~edZAEYhyޒU2 T3@>1pAHj u/N@,Cj#qGt~\m4B8u Zr ]a?^KI EN\omqH/6\pp Q>WCa1u1Ϥ `ݼ\ pl"42.TiUݠ^6*v9𙘗gWjG=6AڱE m\©Vtp/ z -7#yjkxUmy o*_jL LP|b )f<ѫ9bu׷ߤ qL3z5ƞ&@ W0e+94í8 Lz[_Rd{OB(i~3tZ @AfxK Lb ~dRVse!|/"Jpgꊾ/O+Ur.7]D&hEj\ 6 ZQKJʥXkZʋZ;J>٘W$=ϒAKA JrWow}Ƨh}lCOӥ]bu {LNj4N*_.yvDJ=B0X4k̀r'Iv鋯#Pa\OT䇹N"0STadM+B9&VkR ~y|W]yO`irAް$B>̧!ti yԳoV7$uy8cQb'%&pJ8o K6 Kb遹%/%* }]'[Z[$7֭e\Ih}TQ=Hv<@ T\= @Nf;o_Qv[Xc Q"7_~` тL*gpg_BI 3(~x p>ÐCS1/RGq7 CxXQ֙϶{%D=zp g WOH#n⠏=B0՟݃3M|![HmpW =k>iPlJv<9-SM=8Bu$9ڑl<mpF߸7tQ=߱RJb}]'9Oq4 r 2JARy9y؂l  2jy@nΪnЇV E0#u; vf'T5].95b<(,,wӕnQv=B~ ‘b ǁlQ99%jdH&jʁ5=x^oVFn1!O5 Q_n,cXg^ PYHl%Ӳj ?e}xaocI;0-Q rMWgRkp˥Lu(ɩG()`>*uૠtfmica״@T/b=%1NRn*DZO J}m"8[p63`ЌV *l= ֜Nx,Ԡ3)8 2ႩV{wg## Ou  9<1$[EVpv1Y$M-5冕p_7+^W\Fp0~"&,Q_AHuE..LjX/.]}ffP6rc)K]eñkgg%̥E)421>G"嵯5( 3tS*{%On! L xBhk00ǖav2>F&<t}aRYPv1#0fNQVPe]HwbSZ1:HYHJb=EO`%*~6 @^[t$#ޒ$F/cf1P\|8*6Q["ί]!@f(fdh楚X ߉$dh nbWoO,6fSLDq=uOLOȾBQ\P^/æo'>bR@'ήffy,y֍ |X8QiTc.Ãƛrnl i^8I.I>#HvFϷC`f wӐzY Vf_ l,J?#tI ѤW_;+zMؤHguIe yday?PL Q6SYDWIrW6/9bj s hb#GY6 6Γ4TB2e M|pVOjF QA}YS.eX"}K3|3vJbNYd@%u4.xc񿡇6īW $*K1w'{!Q\aԊIbӾHV*=#yl†CGޟҹSG|TnU33=Vɉ!Tzܟ82]3Q~,Hq}gHIi[bd@Ț#s0\i!r#M"1@ni*@9 vA2Wb;'#}5B8v]nL\g?DLe/d ~0tYamge WZVLLT^f/ MS7n%sRs{iMoφ&UMͥ\LR.D8ng#B< Ul#&A6ُҎqqiݸc1Vl`?ZەSGxDe"c>Џ ae޷M;깒rĴ]6wSBoQ; vӾt ZQdu&''IF7~ sNr9zx^MG2(}YhٓfN%QpV:Ϋ}B8/BD~&iH5PW.Dm1y;Ori Naw hyY_麕7U.GX-x8~F@!dDR cVgel kl8{[ٺtJ3 z.dWD^ݯEˉJxt&3KS* tm!8wl,N."y*w$Y%IWjhA; s m™g9 %JI,T96Z^ T@mwqp Ż$׵[خ ܋!*ȷL\"60:u8д)vdB=ͽqds#>Į]w1AO ZQĘ";1a$D֠VWM\`r:W`QSI)vvk35,\s5L50Zj}(Tq~+,t۫Ax0ծ7QȕɺM2%ȔMCE)]@}9,fgQUjY7ĝ tso3@ڔ+F!M0jtB`+/rD~r%j`BT(*G4 UX@[ƛQ=Z+hX\%YHŃ#/xvw7o^-3^ &ɏLJ2! ҂#l}uHPېүrfS)\L&!*.?6&O3\%ćʌΈ=0ek !kn;;FfgGb 5&rj6ÚІ]X8'\#5+$[Q\ݓEXsb*qa=Jt]S^/GBK|K۠tƃEr9)6~s3`S),)dY䂕]ScOMw%1_ULTDM3K wvC n`)U3QV32O0(~(ލH*lG$A\ %k/T.7Dڂދf9vՃ=}1~`@C͋zqm1;s`W۠{?MğOb3Teq >k%f ѕuq>G3ޡn<{X\+5=Po ܋Qk;gǣ2[%' k$ɞN`{*X}'d% 8(Sb#+KpΟ9I->}O+}WݺU6B:5|PoPl4nwkf;볇ȱ6ؠ~t9C)RtY|,zrbpx#RLB>|#ЇNvSgv%ղG [ilCq~uoYpݺ1]wN/rdžfW G^=EVm11úNY\=Xw"t=E<n74$ 79[/)z:ʱ*S6>3L ෿Z3S7OnnWFޯO zsyjLڨ]@mnx1B>#Mة׃~cKy0]{ i27+b:a~-u.m= An^pnzbw5EӢ&)L#r{PNO..FCB7o<%a NS/&10xk虪i?3`% Yx H1 Mj'omՖǥ!M>1꿓? o>s]NJ>խsQ)wQI1$VƾD#.HD $ hƝynW*P[ yL66b썫u1=NAct$o^A4^cu ]mJ' i9K}LIïQaƜp9#d=k}(blToA",.C56N7]!i!ͧ'QB%ͲKAQwk oydt̫!oCp"R\p[ l]6&H /CݘiIQ* ɷٱǯ}(0޹0~)nay?8`CΚq+X~B$=o FްKY70:ůid ?pd42ǿT$WJntC˷*ג>f$g/Ec2Sʭ7!s4}fT˲ TNwV?Y&\U俪nndP7] ڈ!~{_ݎ^R{HeTPDSqbލ(-$hl?h[Id (ADO#g%ONxi2usTqT \ꐣnXNDʲbu}ýNd!eW`Do֓x`~f"=Ԝ*e]AKtOK?I(m^RG.E ]%ϹZ®jg_>>Z > r|k%P 3w<\mӠoekAN)|T þk.Vc;DH)"pJ)BGAlMՔ[W)hB~bo۳o '}s /+WU;r0H•Hã [%L_"`4l%A𨀋}xeX M^ <RQ:ة¹.~ IC"]"d[@p-*v"A鑒mi<bYsa^_3vИHSؙQ2n|f~ld@'f_L oeOTZ+J..rɱLMdg %+ƾoȗA|,5Y=h0.j'6(.#U0P/?+=c_n}6kFs#ow.'g*.SC֊i;CX.Y"]tKhN.ͤӷuLPƷrEi)`㡳̗2Oj=O% zT!Xh*eLoPA"NM=xU(tAp`9c"B3ĉj)܂t\V2{$`ʮ 7 "n : 5N *r?6MapviyNid>ԁY,)5]_I8*Q.7ܵ j c6Jglی\.=ז\^D+P[ Wz?i)-9(l[a֤%DЩ%7|f ѵ_#iKk)MLdr KLؑǡ~s+}]:ެ(V.5F}%t=_M318,sF@y*|HuNa j;=%3-:ҳU(mR5 iژ3yn%`7uTV7&^H$^=/O|;#Y(Pl'|Т #%EDBВ!r8xg~>3FAO$y27 dhuQ hBz:tuWn\W,7̡!!)2zŘQy)[D@ L*/ f.VoҘ:W329LW !W(RY4<ܗCMƞۺጙ$Um|9tzK]4TDPI:xmh>o+!t aMYc%'+ԇe§-A:W2v3Bޭ7mqcjbMsH_5m~:`"qs/+\]>7uKl\.|&J~]pUw%h"Ƙ |J_4:v"Xrg{ T=X8SGAtPJ8|/k}ǿ6}Kd71-9q.lM_?+w|THf;TlX w1Fy74;P!ܜ3G%۶x_=x*XQ?-#л-=`o܍-ܓ\Β!?9.g) p1'Z] X Eg=4?|Gp{ubmTTJs"$J1pl*.c/r"dq+B2(H PvixvUV /;k νɑģI[%,5wve}gv-LvJՉzZ ySIA=P)>ke7 5+ }Ug<)|1 4ƃ7.pjPP! =$l 5P[s%Z݇+3)]`x"\$'/&')'\& k9% !rӾ@mr/kE_Ca3֙Wuc C,j2Mk}z2ksކmbXȭ:+=7w'lxԕ]=x 8 + }{ngykN3|GN%0=}0,oYade.b!u q&{ק惿;JA[7D/ PKEܽeyvLyTi,F%6n>: F@# k;A(Cu3fL[?_Iͭ~'6 .\Z%52۰C.EG-ӲKk705@]1:Pzc4I*1'/bft7|#0jFk(4V]1pCR1|ƎQBd։EJf ZUxN1(z6 b8M\usi~]QP((: JN@45|U)TJ,b@+0x]c.0S|NQYPv)ACb;3%5߅JJ+hiH3~:V+Xz,&Bqn+ 0Wm'mMiCh/FߍYuz"zuH.ȒDR=rN(^MEF9w{z A'5R3eRTƙF(|+/c"H]];V/ߛvWS-Q7E J)RE'V:5:Do@9#dM\RIBh\YAc[?tl̒?3'm ˆ[??tdXEor$j-vcԦ(m( ;gMĒ08`7dO.ѣ^NTkES4!Omb8w.67tADGvfղx6BF4${6 Q|J[% wpkKb,}=d6þ,Ck9!Zђ(X W+}ו%ݻޥ-ʖIܑ ۔`X\rh;4aĵ]иc+s(2[N;<8{?+ɢyTC 5pbB4V$tf`vc)ЍEb71M+c<%CFOuK!]>S ݾ' mhSm[3LBƠ (_ |?nb$$4#Ē9 œuXTa&rA5$ 7 f0Kgf"1eL]$ǝ_Y`N {-[K3Zf%! 3TFsCr 0饪s. VRZ)]L߱ 檵ŎW5O/dX^~ykJː^cb\tb3vAM^xh:fOp #㚒/Adop@,~ H#QĚ^ur~WaşX*QIR7<2 } Vg/AݕEo 8 VlaOzx~ nuCZ5J.↑~ $o^hwwZ:|D%>7 {  tk3XQ\H!QP4(/\ Dќqj^ ݐIym%;Xt"=̝ݹ!3^!s;PkuI29,IO< &~aR ,{$=װEe:sD$~t1091B[YN/x [:ֳ BEKu5?&\xL 4d|P7RkC>=~߂j"pt v^2gSV{$˒]Ty,~pH5o-=6{D :ibBOm\ΰ`ߴA5idqM`"8ɠ/%hy]ϖstO~'nGyw} 16` U<J_x^X9dQyrzP(i. -,QSeؖ{#E*œiٺĬ_x oI^Ozh(jYG}r8M$X,І:6Y`]^$m`/KBs]rUIARGVGL=pT|g%Ҍ8X#zu׺7jwt ZfIDVMI O#"r,D0 qjS¤sUm饉5s`z4 kE.w^B` ૵cAؓ4jԏ _=D4@F]"WBuҧ4"j)ԃ/7^cI)L9 1Unm5H?zYj@ޭW\oɹ1M=30$ ZJ#{̔t'ڊC~b?usqGH),uP9WG2FϿDr׆d/t͖ fׅmhjyf%DvNz4Bc ! m_3{a&= -Ĺse7004d15-.-R$ǮG. ^3kӡ`Yѿi-46`K X(0jm~LVȗRY<  _D0tC xaѮo31H_qYI >4SdXE6! ]hiX 2WH|U CcHܰ¶ ^X=D΃;M\5_j] X@.uv*ip48[YjDLT}20|kY[X- zR^8w]S\҄by&~$zOPIb?Ĉ-=uJ"@S /UbƈҌNso:T@+|(>B^T=)c˾s"13.媭_iVh8c{Z]A:P ^XFX0W%$s{2(ѡWψ8z.EpSTcjО"Dh Rs, -{گGǨ?Ź}N9^ 4FrIO䕬mr-PKw*~$h e[=3bţEo {䏂ibg7ߡ} ?W{oGܼ.ìYU)2!REʄ'Z h)ߙV)}VfwTeٰĈ',hiq6o$I;ߜAQ^5wUQ%P4dx 0 -n](% Hohbd^YEK[G'^_UtFZ|r|ykݬ oegGSvWP3ߛĂI ї,ǬVm\l$;k:QlJn)?&fZ<\6]PDޗfVPPc}LVûj%s*f1=fn6ߚ5wrѱ -=V :]瞱PAUe!:+KЁ*Z[8L౩sUܔfoI'5|aO,nv &E_+ՈہZ>kV(SⱤ QpW5L IRcOa4&U/E?s%d dFhQVWp'?wgT}Ldp(2n߆ڝJ&sׅ6N ]h|ڤeϷᑅwVѺ;؞Ÿ(m u'_KQD>7_~qRJֿD'Q=&0HwWaPwӃT`[p@p26P]"assrT.{XoFeve=zhv=ڌBѶ{֣$ <~PS\4rrUM@bxs@~k~~鵩6[8@\2-z'}6nNIX =ET/oTN@,aWi-#S<:b23C)S#Wh 'WaȤ$#'nfwИY<68E B-lj{yLyƖR/o<8Be*(feW"L$1I@D}mBE2萂2zǸZ`t02"Os,ԗ,Ualg0Xm6#Bm=~&7H; `^AŜLt8b#L*zBV|A4CޭlMx~HN By@6L|pQjv=U# 4_BEAX=ȆW$ӽՕgB@8Ύ_K ŕa"{FM{}Sz#&K.CX?髇J~ #C?ətHE/i#Ӈp?n2Zq P ЪZͽ9Tx"$M08lO,o ^)6pvƍ?\liSkrcdot`á^rHL2K0n/X_'g |)2سF}  .HH۪1bI7E̶%LW 22r >:.#]˩hbHΜ>65HVKe ,2Oz.^NR 4Kz'QlΥzQ)"c{a6J7A6 P:7NKM}+\pEX%qdRqA .xfOufݕіӀؙi@UE2 /^->JGU`1'(L~d%Hh8lz`1VzLp޲57L~8_ֲX+t7t}pVRƘ$c>]zQ<3inBn#i>OpZut_ H>1G5ߞO(2H-,@8,scx<7JA_4G}s}_r{᧯xq9>6\g,70KP0 h(6\iK";(tիM$YuDs./c  dP*$9Qj@ _%ёξ `.ClU8+3D>=乳5s*nܸaaә'5VWh)3y[>^;Z-LjPᴛDًǏq[d|\Z݆("^S|@a{mNh [&ي.~:lsa8-۲${D7 }{2Ii{jNC7̀ч e} ! r}|~'& TC&VO+zwX ,"yyvZ!')W@ .hy)6.2G-LF;jZ`>rGoT~ʻiG;Q^RrVՑX7fkzo21dkMAa&;}UҾN8$ 1:W&܊@r qM$tP*X ЅJYf[Cy棤86$x/؎䥼˸2q8XB?0>C5RWzX凌GCʅ+sQ}kKTw`yB ÈIyًHV $W{j r M 0FLIͳuDr΄t",G{Y3`k\1#?0|.nys!!gbdvXxݥy4w|.:K$rfQ wR>28xkE -W`h.i9Br[Gv@Oj,k@S&= ?ebq]Cq[02~D ƹ@ijfb#Rwۜ\4Gxf.'jsj!)xWWMyqpqc`g)~ђS 4tnV1 xFs)Ɏzh|Mos/h4)Jfk5"-$^O@<2NjZ;⌁G w1cE7^xiv%Gehm͚Ѻ;}l{?!`J1` 0:.Z^LYlڃv7u%ː銷?+3L&nڷ Y{-6i3`xC2w'3Y@LבF)s‰9m4W[ѧ*cXch@#a,tN 6;DgN<^2 }(چdtІCȶs궥-\(ZW?s xi`8r ^hIg^-p4lH鶭>gNŕ2Hg_~,mFjOZ&yOR71ͩ5C{xtp4;AlɆD//4qߜRuVanMu\0U3ҬL?py%VTD/n,^ZO\?r#lJ_'?b&"X-M^QL1;-k@P0 U҄ĥ|UyZֹKHl*N0N0 6(Xe;!ʖYUpJdNEؤXK4s::XClƃ][K5GaSC+Ooe@u/s(F=16QֆW|2,KZ72ߔ;2mGm Q:a)cu4%Z2^hPC>dyˮD2 &^T! >f }%ܩ< Б U A |jrm6Yy 6P+v>ԩØK=Po{Ϻjx8ǒ`Ę+}؀fc M 0h}vxY\<3OZkBüDv@Z[^e XKpԢ{om).Wߌv44sD{WX1lQSz> ^ú߷ԉKBWy2ntK(>Wiz0g";BcsEz>@w)yQ9,>XdTݠS. M4s_5JJn%|UO%Ślk1jDDOsߒ^aOFm>v$N 4)Rc]\Wk3-!='O'òף?֣tH%|lty(ZbxvNEѺs67 v.@SDI纕⃒d&0G5[o '?Kr ɦ@bL03]3ݵ6,\;%nhKdzecU@6 /Re? Tc񃴞/ 9 uo/6@;tlRhnIzzLwZ`v@;pK(2lFʦSq> sÂ25vՐ?8cNN[0FsrŸY=r_!K?t<% r?S,՗A FCD ^ ,DV\64w`I Tq12v_CBD'w_W1QaEcy=ؿP#&{Duʄi2;;! -N_j]&^2|vd.ǽ}WςY@N/,hcrX*NDShB |\Vy8H 3mUuk"@nQ{g_ XCxK$]9%KfòO%mg#H K_*VRK&*=SPH)@ 66Սo}FoC;P*C9wY 2ڌR!ZR CzWnhp<9"E iHa&c`V4X-I,6;Xۧl9 W* =/5y!lYdXb pΜrdqwj验1]KH}L$GA`cyR'fl0Լ=T#& )?R*DofkO9pgsCݫ'AjnRoex]lBnK,A '߭e>iUiDn>(S3[#yY&J *mcbOKl][ +YVpCm]P)D`zOϽFG-î!* ͈AM>fs,hKݒiv:{U42հ[CL00_/%Rd5$+Yِ?,13@NrT3M$ jǝ,k0ĐQUI * K#fOW 枪MX^`X [d`Й=IV$f_~ظ m[-$ ;0~%R7vkzS<*`J҅U nR3Gvb>ms% 2 :c]}_Lcu|=9bf.-VAM\a҈ *e[TʹS[eak;Z9nw&FLF7{&g&)<u8*zxHCΔ0);W0=`1,6uVkV )-:<]RiX!.@o:tCo?(UW X AwM]P SQ-}h2ZWYc67W5zwt )eq)עԜo4e'!s(ZAyic%FC,+`Nu: D} JJWq3:5Ip__!m@Yv4,<3ĕe,Hκ bM ƁkV v28s_Ď]~)VC ="weVVyigg+VGaD:Wng=K]x|yCDJ33OfpWKj,p#dW Ԏ PRRN9+hEtF2_SN9p[h9\"0@F, f!N7=A/a[tM3tגp,Bp/H3 `\' ΅/wM}" qǹ]ީ*@Iy\M2-C:$ĈܽXX' 1d`0jr!̞sO Pv&|{Uo\{rFø|;+`}cf|MG1̖fuP $ނ$l =A/rWC tn6م"3nptG*f8.s&.aZ ގ>'}4WxKh*gr -Ta~ x"LE͝v3aXJZj:Ƭf@ҥdmwl5]'1D}QhxJD=k=e@Y ?1 2hqqLv>p `ɵ Ռ 迤I.<)BG_772X8ѢΝUf{<r:KxηNSz6j0L< ^5c嫽4j3x+MG_8ԔɣWTvm('v օ4U'jolu⢛vYJib;vDt*L 3Lّ(?`"E,(+rP_&OVf"Xy{q 2I?t hд@i*:ȉTz2`J80F@4'o,\-"F\+^r%DrSݽmxnh+Ȯ@q`HKc^YIlin +&?,Z)᭛a_%mڱ1T< u9嬑Hc *2nU=ei(:qPT >BѬ@zFZd{a^gaÅGsȧeIyK&Kt:=g׉yå2>X t2<ݴ5 RKrӄiÛT"Cgm'ؠ\;-O0ݠkq[H0kfpN*DT.kyf]Yg.m ( kkw? ւ߈xi )%/193̟욛 @\ Zwmy+ /OQ"l\(JI!`'axVzxGuN1)]4!QЭ\!r0eb`]l<.AێПK@sP21zyS;f&ܛ/'O21'7zE#Q=u& y^*vΎH_|tsH@Y%aqmTU6[#o.c>&) {=TS*'a{Rvj?nWu[Ϯc.>+M #F[:U]ᅠ\-τmf-pp1 ٯwf@r"xV*yQs^VGH OʀK5&32lV yc2t2_}< rkV,N0y'?B,wϭLjΣG`WYK >2/uX7wT ;@ADv[8Rk4{)j&D.jv+:¬ 8jgNt܆&K(bC,Cmv""(T܃@(B+QQtXkj]Oi}kSf(:? T;|f>|[ɤ|ndȇk=-QUHDrװpNWWT(;?{KKEIԋ:,g%Х]wle]>^{1EdǛ1-vz:>=$ʩX 9H@?K>^U_FBHȯVMp;RP[" k* k8כBK?MSzL}0oQA]ޘmF CG$KݦteM% /='ue8,4jn{a$OlqT 0gxTsHM#!O=ʦFO䱡u#D1Xd6q"}q-O"J4^3:K͜w,1pԞ=jMQ \xtP/t~`SD6F.<]E*jpK ^rObRc?ӌD+dфˑy{R:j]WA!w3MRl̫$ =Z*mb.cMzhӳ\3D w~YgֱM(fT_ {l%7828 {v5?h/+ዤ y,.G%;f`WC|_|? W-o h`$rsE,GYa30x勞8ևW{Z(eL#sIdԘ-cgV{i.EWQ8<;l͖7;t!we$9̓-x/yuOhOZ3^- Q8?F8  BB#nꁧT6,t~ơ2s~HѴd8&Pƿ%Yo0ey\+wd!X^ms:[ZI fkcˆe9W܂ pԜK\KGtXYuy]0{+"ALɒ#!v)RlR?#LBz? ,/ѡF= \\׆TbگԌ;Nhg{~O*P&m!Ju~rPfHP|xma·xB 55v/8Y0㗷tF}^^~9ህ\Blkt }Αqӱ~* F F' B|yyg[S|\d^՜V=P _$PT LY/`W#r[&0uf)hy2`P6B[,S식0 בzQ}9_ -Ă=9Η;C(nIfBݻM @|Ϣ$q'\XBE]ـHp;=:jSәQ~ B̭O6xux"k` 6qD$I-H91zSo@.ƾz^xm7[[>1!I:U(^ÅR)g^hPμRυMF3miXZ-žڅ@ Sa@/Z~ b]#ٯk"獬4H V>~l\єj2  %#dwMQpOQ|CO5(nX}$2PEͦ쇦f j"1Cg5Rw/;EK[[UXǚ=Gmipiiq`QӝToם.H'T7#VN!i#≮!o bp^B K% FS:\ʙ$/u.t }O/&WVς,:ya92JH{"2RX{X!y/`ގ^EPr類7[: i~f'2q2g`x3$M,qbMxvRE^g" \UX9꾝A,>ۤ,: j.wee%r$C! *U);Sfr*@=![Q:gs *C<ݝFV:̆Ca-PTv1bB+Xw=.C 8 z9-P&-*S2/:b-OjA5U{Y4q'ښQ{jjA7T|p/]6h/WnնbkōsjwФ^%!bBx:,I F@رܞz&!WӻZiE_+PҘ 6d =۲cU+tp^a//_Aw*h#YB՚.Ϊ;`VoɦϨǀDVTPn?I*4i;wri>ɘr(|F)NX@d8~~KP _opy۽AW}s?zj7oL8LKlJR ڀ2ve^$VԏI(Z؂0 Lx(*Tʋx咾w%n-(ו M_X(?j"#p# 9OMHO R峟f;%pel? f`͛%"r1k3P@$2q>PFtU]$݇ܠ+ΈC#̋m,"IUN~K|ֻI@]"-bTPGy&6}J LS_r!c/6%Jޔmvi*$q-pRzqLR$:K믂~%UĆtaw위;u=ӼóeV$x#g>v<0޹/5u·/Vf}p\[*|qj+A Mi}ىO]}(ɱi-]{YYCax`~(^zME3zIXV5G9'%4Iosպ 75eqy<r%C< "HX <ԗ1&~TILH^E?fkw!5r̴#=hP 8.bBTiE*"E,V,?֠#sύmd΄k:+dc٠2N -rI~6:\GkT^foظ30|8WX5siΩR\^ZjqܮQQ$%U V y6O#|WC:tAh( 3d+FmD tOd|\%AUukp, Y ޼r?4٥7T>VGW>S%w]^HfGm ANˁH<)IZ=%#¨s q*_LcB;ݺ7R2NǨ-&qUwvw_+6t&?nB6%y}XeM# 0ŝO8yæ㑞<0` ~[merBą.xk\'IZ4 Kύb$cC%Jڱ=%;Gڢ+U6BC|H Fk1'Kj[Ҹ5եSSfGURXwHts 1N O EGv&|kpZд0+yonZs}Jڡ(qaxj"'讦Z$>R91ъ_u#'4E2. 'wStlT$"9N?,鑖QlW8io Y!2/2 } N!:[$-@ fvpOla-5|+W&5#_ل4<6N<Ƶ,:)CʣLJ]~fP퉯ZeBV'~B:/1f,c9 Y<V1NYñm@NEI|iT23`: ~tAήED_=.R aӚxL]R d7Gֹ.*N) }tgl\+L-QJv^Iƞ)F1Z,XEp4G~o_rbJsqvu]: )-7O>n1FP Gsl۴>VW@Ƭs'eIuU~8qo\Bpx3УWVutJ_9 r`ײKU"闙jA]g  9KHTPF{߼[rⓅ79E{[q9x;Z} ` \gW8nGx6KJ:q۞ET%I!0!Gꔏ^]]zxbǤ4|,7pĞ'Fe]A$wzooBBx\#xDZ]ԆP ڈ2Ws,TRk#g2Dbz慙S͈drCN)i;jaUm)nA,w(dFO0cԗiP ŕXD,T$Y8-ʞW8MjM#-0SB *ꚋo5XS֠_/)r}604N9?ylM alU( > "3bVطn SxN`Dsh8~xDg$kY!{͆a . IjLz|ضҬHPK@n!3\ߧ G)IP`yxr;b?t4u_2x"S;乮MV㨬{mhgjf D)3W"\HX1*xz6Cc;=M:FQc:mm7AI<0(7$1A=z#'ƫӗpC/ҭj-SIHp_Tb66zt/J\~h|+6' avRE4zʶONW9ksnmz9 #I?Ć[֩qq7n`΅n\r0OIBϚiKT#Z(Lްº|y߹v$q"Qp{ =59 v١_`La 5(R^؈o^>?rZb .tTWSXJc钦Dɲ_s*Zq&[%C+";G59s>c!k.\rA7,v ^Jv9gM 7P7sd}m?2,W4+jtGmvNwG=A#,WqsP0D>dﹽ2&cK'JJ0(*\-9<rb(<+8ۂ"#:`趗kBf"_m%A=\Gryڮd Q%Wm !ke&jRXv7γfg2!HY8|a(I/yۂNx+<0ƦAW6% PlEK 9ڞ͙*}0U/EHB _2<~??|N]4lsRGP@5vGMH[Pʌ7o`Q:}tw>Bs|d;&]_G k:YkD>ê7̚NSG@RKj?nm%Q)!qY?C!.pS[k`[u|%P*fPv hdueW)L2T04]\99+ʝ~fπ l[g^gu}'74'~`\lO>ө+eF}$>˵`#E86\<=š6ޒ#D+Ic0Xj"?,4-]fc4xȭ4߲1U$~&B ȑ8Nd˼dǔEB,->'7'4_n˥n 5 BeEi1G>qKԚP&{*cwQ=ʈX˂(%65|/uPo,ܒ`o])jۢҺŦKݳQabg!DJpؐLlf"gӛ4<]rP6&U=yślQM23 {x2ۡn"(bָ%/Z?Yυ$Iל^(1]oؤ"9çCEյt9y iQM00 ez(,>i k@r? Ow(;oEֵ:j_ O6O# 3ỉrg,H) dxeӷ卹؄Cl*YlD z7:6+۔+F\εq՟]))ъVs8=C]X˩{dvumB N!B'Nh[_K= ŮM\ ()|e!vdAA'GwߑXI8o~yO/JgD8c"O~Hgn*+!7r &PUElPF* mpȮD(h&O`?e6iB6|TsIoC .64zd{0`V.]#$V˟_(7ҧ0qWdTL Os?Nz6C" a7x1iT~W'SF5+yp9wy4k-3)ؒ7e6pdɿ H鉰^Zoܕ`h4_n3$/6ΠL_ڢ:eTQܭ`Q*0G~QZSGŨ?\5h]K xrZ)u~QDѳ?l;TyX47X@B]Uq֤x'$eoߥqFۇ; @UYe F mc*`uo낊K*">ޥhqB8esמ+L #]zD>~zsytK~[e%͐ihS/{q.yn^WJ oQkF(7H҇aK Sv{xtD[-AD61!8f; xq4ǫ;DžqE4ݻ8;d(dZʘ,nW#諎 [Xx* -d 9m9wpAnSq5_cVe:1E(d `ITw'ւ͉'l#I>7uܓMx 7 ȻKHeqЂP`P} F<͵I5,1 NAg_2]I" >dÕ^ΎaAz.=g&CfP26K \ŭpb_ Z]I(ENY#3=6RL޵7dBT̉0N;#!F𹤐9#4\1 О8ஓ/-_rn|{&0H8Lo әe`6 >aJ4` rʅ7oHBq^nSPᮼ 2ŕ/B*7Ν(kj4W9[: -jGE3 ` B8TdjbJjN5 vV$la)4v6t}{jn*\G\)(FKȲy!s0rfFi9 RFϼWvZH;xh8j:*\lX|1J}Y}ZdD1 +'ɿ sЙ;;Ej(k ܼ{/su;@e \u:U$"`~ÿ,z[Zz,PZw{w&Nw.!~ĭ0͑#qe2VN}cŒ8OVH;mo\7ĖmTtl818H6K*Nx$]BÃ-ߞ|)}C>$] I[w'cuzE^̐0>/r«Lb#E͏=&0>c7ԖBLOl I1%\X'9n7aYvWۮҚE8Lˋ#" CqYc )5l˼jfZ e8%A_ՊYF6 ^hG2-U^;l-ysٵ 'vlȶȍ'oFrJ6F܃N l {>IYFϑJG" 3.3sw{EezwYb׬e/Ѓ/Gr(\ V'ʧM SQrgv1yl8R?C]UH+ h>ULi^Rvio hAy>/6*j%k 4ZT襄48-1|^c/%Rzlܺ=МmWoƞɦ5^~XP o }v1nrYlQ*ߝsoT [I2ՇM1Z~`'tbI}@ jzθp.纯9O"Jx9| l8>-BF}D Y `}X9٤" Qn!KAY :17* y Bc!-%1@#LUTDER N{FoW=x{jn )<%9NKbeG$1O1EbT.o5ȑk?+8՝^EgX@(NtS_NlO'`? :$ѥκ#9l]F|F+${-ywݖE汐K4=MCjFAHHAb ))UB#Sݨu~TCuI(2R ;T-n=%Wcȉ ۏRz}"n#M@"}''ye3oPf{#/em:E=gO~-Y«(~6~ ]j}Ne|TBylP֫T!>%X"ihBjkm?Ά'we[A>+S4Kٯ๭D>SbRe,/ǭݨ+ I7Gbb6hX\iWwU a̩fi Y~q>L)w`4KJEH>lEW"J?z\ a6܂Wf[K0'N?`mN (Lռ5-@I:{S2bhS,N PbwmJ`>t"螮r>?[ei#5# e8i|A9a8B'> m'tDW,R _7HOBEA+]Ox֑&4\kaXu1/*~ j :A-B@[ǼW12o,4y]ls  ϵqm.K;gy NI^HBNDpwJTf~S٩ P eI 9x9)3_0ڃ "*!7CVzې~E4O@h"'w&HW4\LN(q~t\埇IR1p[d.e ޝ.ZuSE[>]U I BF\kHr 9#١2Bj6$ř7Zv0 P|7DZa#@<(64?Y'YkT +uY475c$<z(pJh჈(.cG fURV4,1t蔞+_Cơk<|pjmkT(DH)^_֤Ȍ2"evEsmiX[R`M:W2s˜1T[}v h E ck1l"쒓vV\K}a~VPΎq%NՅ titвm sۑPpпmAq뉶mo[߬~kp ͪRQZw~|968`*ͧt2s2mX !ݟ.]}-;!0CmCxX&ղUTP8[ Ѝ]8<pyfgd~Qet}w2m4JyO !aҸj#WY|WfrH&_? >E0ɝ>'!懒͸o%MQeKO5  |B|l{Xs\7"$Aq ~PSACQHbmV:t{nO]J˔_SmW D<:+#@A-&DN HNN1ܓ$y-"eUTUx?הُ%5"iڒĪ/{[']tk,VQk/[Gf _ɟ_y Z)OSGEո= 8#уS#R3]k*EHj֋ < Jwzz(V􊿏B-;7\%0b .FgG: IFj\ry.Gt1ZzH"Jlu ^P_ kR\W4Dm'[ޗ |\Ã_- 'pЍFwLuL]2U"FuʤQ:@sӬHTV](>۔e:/ViN{T;pֿ x^7( (x↱T$wV(8%B שb֗99nA{HAiBM/bSDHZ4*t+-~t*CNB@LA7ii9=-pД<b5QSqI|g]k2 atS6Y*4lK'y;]yDe^śSdu-~ [#l}ﺟB"!Q=@5DZx}"Φ&n`Eor]@J?!HŌ,7e s*6÷/+C-"fVOVU/8ӝGN{޾Fj@rK#2"Pl LY岬 9\f|ǻUxfr/dS%-D[Ki^#yJ>189zvdZݷZqj){~yՖѽ|Sɼ彫,&ڋp D|Yzhn~aJ^ύJ>(X 92vvG(==ʀw9Q#ܺm;gY 7{N Ч"h2:~A@."b[ēnc9 86!=&?p/h.3P(Gu-2&(62HWrn{2ԔFs .㖩!pe9.2!+QIWhDq.aȭ3Dorz8CЭR̛[\z"_wTdSYӯ&`ެhpa6nuf{. ٨&} DÀ}W6+ҩt=/:}07 V)d0ܵ7?]8 6ݲoPL-x̚~湀]߼IB((Ẋ"n|DfpKB?}d? 79oOs.;DiWWH\K_=qi Eh/X2 YK)__npBRP_1%o l5t߫R{1Ol&m=[^ugQOb] " WU.0a[r2`] :uRLf/cD ʇ]/nVRq$dj$e'-&F4H8ztYV:|:/zE8-+HVT@KT^v a=ƉS#?*aI2ms9K4^I8 ^wУ)ۡ0Ad0fK p2@VӍbe-`09睬G"uU6:w5ouc!fKa;s^45I"D$}GWKMwTUňsO'%D$t7hVfy$LǍijPnLz850Dt>$-\ < ;/9ċ]e1E=S+ &*_KPuHe)}9S6E\S/%*]aa`մwG[/JB4xF<HMc/Uzn@])N V>TA>'>:,3,l fXY@_ dQ-ߴ%_ØtD%N9K>HoF|·#`v>FhUqnmD^fN-jݬ_{rY`#\ m)E@AAC@M@a;u~TV&xP9ZcC;\&H0ecɖ'ς mhtjifae!)>QLHQ۴$ssW#VFmFK4 GMXAϱ5+?-=\_M*;iEʑ{ f#S2GSu$\ d?E,S'L8gN&Θ9lp:p<:GN'KP_x4)8#:(Y&bex)z ԇ[;wʽ-peP2qg9^яTA@t^z 䩲h+y}mމĻ:  b0Rw0?ӭX!#6ŽOZ\m|ST W,]y&swҳPnyVhpE-y{v7g>auw^WHc8w?&|OW|05îJ%)hMer7ɑeca?Ma0Qrˋy`A2i&LC?a)D\g#ǡx2X t7 by*uOSl5GFޙN{:郻Xގz$EX4N+i}6 ғC3J^ߔ~|/hGIwdbM0H`oKݶS$ Mpn̼jP$ NEoQc9}QCc4S+sE(eIVԴ&A5tT/,oSkdi0/ S/Qo N!6E5b =#ƕ6 Z\ı+9'\3:׎-lbJnt 5O)+rý(GEBRCgدc%_SFe'BzN?AH$Of̀-(\ 2~m{0|(ytcα:akÀ1p<-Jj袃72r("YoS_%O{fvWB}WGz>|iՎ;'l$z"j^hi phZs4q~E|X lwP#h!,9O4=Inզmqs~#YpܗwM *MgJxG_:kdBG֓ ~ qFq%Hc0N˚%dQ9ѻdz;^!3?& -O^ XJƢqL=׹܍jdh>4$PQlR1UdXu*Av5ꈍylJt>RӠ`Bu,klݥޑ4m3Ž91 曳 Yy!ύWm[+Fn7c \) <*F_QQaBhlv%@S!1fF>%UAN3 ݿ%'~2p2{7V\2uZh? ATQ~՛HO4EA[xKѠt&}eǏ]3 Ts4&GM;`N6ku”?k LedJ밴OȨ),) d3%Iq 21`IfʼiVc.j:yR7) & z;ؿa7gmc x+ݕ~XROH&)P)IQq}r,nUC:"HUk7Q ^O4)*鬄SOBM qW+ċibVQEu^^4:Ztk$e+לg 3su@ MI$FʓW6eb.\ZKwЛC_-.q?=kZwD'`EzykdnU\e5RƢkxēW(n c$^NEkpsd> $ KN*t~Ӣkvƙbua3W۰Twk=VC<&V[Lt"eOamE] B:*ա8 8' c3i*Kx9S9O۶m">Gò\IP3r1]ܲq7`KYGX!HVpɕMh3l]A٤sz4cFK[Pij:zqmZc/Uh 3 ecn z650bܗ B4o W\D|ۧFc0DwO;w#o($SǛbL4<{X59B3l}m-fn+B]|mؕ8 %*&b$(Sh/54VSr@la&gWd@lDщzHɁǧbq?% zJ ƶҬ6’MgV 򗞜2Wz3?lN?o16ߒE_JRc j ~nWZo2v9A1?rm~;5R ;>1z9b_Ѷ:M(D, Z\vQʆF "c\+9r$,fz@ VEO#⟿;m46SZޣ2yTR|RRzE[#z9 l4>1?df G2%&uVp죵a `d2w@DžϵIܑl3&.Pikj#[<5 .TA#x&O< :DħFMSs]_^F5t[4٫87N̞CݼnKA+c$M=M`GyρE"8>޻]y|7&vKbh4|8HI<Ayt'=:Tř ׺6K{tbsbTverwr܂/V|h99 G8t}M[  #*%}0dOXz;re +nb"O۹=BaXybu> <3A.N]$ZBkEHб3CۖS%ǀ;Wme}yP۶UD҆:#lZS ) yռBzo/iU̕tM)mn3U~S&81pq>i _)sucJWLB7wFf2\R| B0yezNqT1jW5ZT4v!B+a"`¯)AUdV֠y->DiJMh<ōd=TҭrEe`5.)I354AA1㴓O+dҿ-3CQYr1tcLXg8X qQe(]VĬφx K.;PI:0<*rH '6]¸1ь9ƚE E!_覹ƫv%تYJd"+S0\p ܭ*bUyAd膵hlsi x+iXG v2&#v_(i:~]aǔָ҃[3aH>2۶_Eelި-`o |3oXUW9Ȫ13̨(Za ֻ˜#nPiwQyUPP&2-0aڽĉ5wgHzp(~ra7^3$w[Q~@5[mR3y~So(݋eWsAB9MC$@ w}~8Ȇz]r,GH捵YU W(?(ٚ7A}@6IȖ-LH# /h+Ch5%SeaIc8R@%& 44͒hAn8WnsjŶ@_5CP_[VUI.Naxm0p7$)"1C,0ƪ<`3Erv%WRrJT v>oF>U) ޘ(CnEzfҍﰋݓfs /-d<¤xq89#:(&xKtuysdzLqm; ) whL`q;0a;: < w-D "Sh]= }9K٬ . =Dlr'7ihFxIRc #[VO*tn[t9SӃ,>Ʀ^>wib T6ōRZ:FFy$vp,Hmu$r@+H[ؒkNl,s_5 ͘ NPRZԜ={]=ɆɖpNsg ^]Rol M0+|b4p>!h6={G"(If7O-C#qP\?}Kʢzߙ%~avyaje IzjdRdVXt{jXOP3/rzTBc^:2y·R=9@A7V'̷voSN,~%}-l)Q{:-G%5I.ţ:7L|44M E;S?z"fha/ndz@wC ϮIOm=Ǜ$M7LC;i%J0+Pr4ƋeSs%V`Dޛ wJ ls=4Ǵ; (R~ -q=rA n|jyKU IQK?PL0l!ٌ8Ouљ8\oF Ddtd_?<T\6JD\;D)1X;y\2Uchtr%`\%^\~\xgo+8kRla+ d$8$3(~&T!klHU7)*=08R$t*^ Ώp[kDh) 6 fD+PL;g0ow<޴.K60'{| _Qx6dИ+}ac`0SrҞ"ci8:Bة*SⵙwM4qy, #)u6Ʀ&!+ģI**h.F'O+ $jPI - 4}؋R 6gѱ͈ n):_v ) QJͥ8 =5Թ(pT:@lWUlV?m*} x4OWuӘ3YvTf\ l'mݯ9M>ص- !=9ƴv E9 ie8wu EgdYDE%:JSpjtz+~w:q:U;-2n(gD Yx|Ryf(pWlIl9RFK6NMړ)ye$U)a·7irZGVKe 2/ׂ#q8WQ nCDŽ?\)0y<Ӆ (/ӯD8PO9hVt+u{f,Taᘗ_ QSlO@ԯ ( pr k 8l\GT^ 8MQ<%epjlZ;ٍ:NJ8biF9}y38Hy۹gkgگ0x}xlԤgZ9";^DAo❎:$䖧t: egkyup̝B4k*h5wH|K15?[ܜ8-]`e{@"G3~#,U謀A}#Cvm^t>OP =K X1APAY]xäkX#kK޲4t钽Pr+ghR 'Mq2džLmBn2, '5v!Θ>ϩ(ƙTYW%4cLayr(b)uD H -Z17YJCvVNO\.;g/CGTrCݎOβ7ڙ@%L/M_rNCjXmGlμgOYLw-iڏmW}8,cB0eWan.\l hoޫC^ln'jư?B[[n+D_x籇Sc $j1{MHEf=O7CY˥U>w`尛2r⎗B@Kz,bd?T7E9ťbs$ /˷n"܆2Wv/2T&]f@S6B!o9xƢp6{Ä2u7 bkmpܡ5y^:zǹ#/…WPU>QUn2іa W{o?)ΐ( e-퉞)pv10ʄ슖d[s1yr%3::2;6=蓢@5ɩ/ ~A1]d!lc0>%Qr.zH&M%=_\m(6CM <޶WQ'n<[>@?pQk6Q:e08s4scgCXP"ؐ͡nF6>&PE9S(.P,"{:FsWƩ[#'@|;OLKbJUx긄[PN/E.js r0y~ܟ&=>ҍ6%8R-dr|qARPŋt&"]XO-ZO0/s&}Xޫڬ?XfxjcR螵t)nJ"뺲XOSg9 >6Bhjtdv5>;)a&{ R%A-JnI~I.Bm,ep2&L|Bf RHAoNz/42݉ORmeg? %;сǿ+ Ĺi*yZyxu#l_H{x<]:iBNA60$TdHdz [I\5O$EG/eKCunwVpY@,es4JD ~6aw09_XNSu1 8t=xl24`McPX@x{jEt%)%u5<]BsP)Ԝ?.#7Dc~1:Kte2!M/_cEe7ҫ(UTyЙrG5E"}QQi42D:`cs$̩)"p`=\ܧ+N;.YY;ڑKFDk1m^:U& ]qI0VѭKRY4 7\{-r 95i2fp| 9 )؜82z)ԡg)Y]^2Mܮ5AIІ6&nm]Їjo' rϋshn|W,N̰+pBcqȌصw-PsISF&HM 7zOʳkQP}Fb ޺qcIE ]XL)6`T j\O"tH:YS$Q Wme>@ `CILt ʩM{̽V#JgX[O !+bbLRb.x5RԜ_y'osvSڔṲƪ_l{1Z_B7C u㈥`< : w=)oCWU,`ah4א3,"wK=0'I L>7Miml8'왷X ֜ ']RT( ӝL6#[yw ܂1Jba /mB,k%]NI̥;[WaLĽB2` ѩTFkĈBsp!(Yeƫ<-L$fPD{ I#YL Ol .+xWm#σque3%;|q#?&*0w^xEQ f83\+%0MN$n}:1IA~Y+ 9߳VezW+&Sp=-?:XBdDq97O٣䵦S(ylG=RX/]5P採UcMd1~dj͗M{uDЬ!:K! -^t4sG+#A^Ӈtҷo@00h3Ҽ 069?ȉ`j,x" ތ<] ݵ/9' ?.+y zJU ULKAO!_BpzY] H'{vUڅ'IVgM%g\y|T Or6 X"VVvk30vb]iS(dl7#9X$[)cexm[nUמڹjGh#W1bi MYmW V&C/.XFV}UY,嬿JrW( #{@%~濛Ҳ}'n 0+@4XsX(_RUq2Ρ}rO-3[/V3 6+ $6304Q棖8yBDd͗G5ZI,~O`r^R錍|SݨzcJk<iyMy aa ALsJ>?%>g&yC,)T~]ߠ{Mqt9rmCbbŜfH<0<@J~xD:-TvDrI T˫Q!yLyD5hQbiuFӒu2)NDD|1 &\: OC(fۡȷ]HFPƢ>]%Ay]wC#|?C Bd> *hX@#Ww S Zs-ͻ h|`ɑ>r9j.Bd2lsRvbpi//(v HܿJICT#-͐MOߥ`xMD*UYR*5SIK3Eg(%h?ecZubzM2l3:2@%hTUF1n+0؊y{Rn3q|˶6=?0 +%-qf4cN72]c8GD?u"^B4;mCFtF$Яu=%ۙʩLsw[h"^d0- ^aoe .e-hyϿ2kўD~:袽k7 6S2vw9'@ нO;U%Sp7װtSxGMn}nmoRw{|{ݡi:/]*Rcqn% %|4L Ay5~z}SqO,pWf,:iqP_`_Ű&#ojon=)KNUw>Vn1,u7ּ|Sñ?jbբJHF[+YF3` mm3刣Bq3l$'(^F=դ@)n~n =%$]ӂ@qNl F? Ժ=w#`$\ETj!2j:Bts xge\.kKGY͜keDǬiP&4GJp} aOở7~̴pQZLIGּ||AR VHqtjӞ1OP#[:SPgt^[{<$ݾ58[9B͋jhJ'2j1/sjmc^S{d Rsn4"\gۤX)D/~I3QQs3m@_ /_v^8SUp%;16|E6MG48)YEA5h7*^\]}يN{ f_Qo+)jҒv){Z؇˯yL b;m&4?gglJ-+H4؎FSNYg͉xٱLdJ-ZRȒ8gfE󟷅ڏb O5M\S)]2`yva yׁo.6Gda06~?ɕnuV: sq7* qXb?{(Do)k0>`~u3s3,oY,qp `%H߃<MOzw0l԰N89zW4Kջ2auf6p]_u Ykuǟ%9;:Aigixuml'gA+e2HXr;קKb0Laiq\%yYnEUs"}uWmi dBznHFO YLʰ`wFA6A^kH$m4b|joTwb/B|,(M!iqlLF&EO.\2n֜i[[zWY Ֆ*wO Q4ח]3j@sf,J-9.:\@Q˿K\ /+" mx*?m$ʓm'ޣ&alW:E"_]S#ΖV?Vbdf:D0 |h0ED.r5̈!QvxlF YH_Dk6FkXO|ܼ #0VG=Cpdp7 @7sHy]8 bE?PE#i|0ݖI㦖B jsI p TVd 9McmHAV>2eoTBz7hU1E7j3ܴl V{LQ[l<~[m9@kX$@1wF')u%qeli,ADq&b4ԅwJ\~6 $֏y/l[0#pge3ѷA3'Q`3~n̡~"ݲ0Zܬj.#;aqQe hJ_?z;D4 nd tX`Q )am/"R s:{τi߳|NuS\8xūd1P~$9K\i[םX^w:e-BK㲱i%?fmfꏬ5r=7 E߇ԶzT5һ)}Ky :`\EHc5R0Y[]5T;nh'W,"IagAYA1V=Ն&#=oH2]H`e>pHoS3tK!hA$[UPh"I#@$TnUuΡz+"f OUᷔY-N)kxɰ(͂GV(W,689ڦփx$Ej=f<c8H̔f̻̀:2'٣4li j(j l3vHJn6lhdkQd!GnSJ ei'h {K Z<(Vue#lU-붓9[ c lt2,92P_c7cU62+aQۜs#I GT%%zRu |)!9 y ,Yu%Wѭ΁q&@Mwsx75fI- BFd"!ă?!H$-UAÁ"enbT_fBxZ# Ь9bG ^# 46r `բӮc_GT# [QSk*}]Uϟu >B|&isV k)q56Si%xtiPXz?^T'2x qNNRֹ~MBXMF='5 \gDn![E@TE~s =ٜ=9^X¸JtGbe+Sqi` }r# _Tf1РȾͯG,pG͐ lî?bMwWzVcG/(W/i>(U8/,z jm/y1yr}Z!s]LK wuvة**8:G<^&j= -Jg.J^jeH Ff(Ļ?Pvt%{Hm.'u>L1$QU2!UGFt`GM.°KSdZJ9&c/V7uR.+՘CF>3Xtc0vE=n.A{_,mC.1UXI)s=xlj)ɐf<@o8 )iq 5Ÿ$d=wB'iֶ|!qc訷t\Gdr}&o,Y#U^`6 Xfoz_Je%-J N@66ԓ(gH$1s,֬\<pz;S`fi{oJ 4lJ;$s2eH^}Wʮ4/UŏNI9zSr)?L_ [!kxy>RӤ -J ?S :`Rpq)wߒC;`D/+_5ݿ^&> ]Gxo2C[hfaUynߣ=ʆ\>r:*x'*Z([tR$yx6O ~R.<^vād.W<@+XDM.kpV;.cU IxDJ'}0MIay7싃S }O ,#r"?xONw!ۖvdaHzs껼a 46;2YwL;P츹ӆQGlt<9׵ R^js/fdE՘*4 @\GH.rqI y }G_WC(怒m]9>%q\dbʡ=yTHLVma^:OjLbSQhP7LNr.4Ux n4JiYOM hwYg@*S6RȥH*酳hr%sec:oḪ(%]TFK`)LG oۯV)6S_ϩ%偕*k_n~`iX/H|g18olP&+lnFwm7Ʃ}|` 3B;)5#u;˝j c_ckkȯL*lk:TJzkD#d ]:߯UUTŸ@րqAg=}i'r T9%N[dr"0|@ Rq}njy#GHG?Sh9b ;3R8c##mޢġ>*uyUfP8IV\6=>Ayܟ1Ox!d~-ߞS&dc ! @6\e Ÿ'jb1@X}ìZd*OfU. &aBйdBH_ |/x_PO7ͥcB̤ѝp^h3ct7Loø5Ze)ҦufdBJp+hg;x1hf kpD2E9NN!7iqM_Qڙܴ9Z4mp|\$V]s!C%\biyj3Ss3˸w&c D`ssLNk&(v+"`>ڟ2TCq@lRgs{)WG"pW+uOw+(Z ~ nup ꮝ+C4-2= v1OZPT,ɟk;* }<3n6"St*gMJ?g~Sos৬*_~9˯k"n<@|2|NUV *%gHEr{Y,&0h{z@kAn!1$8~J31':ݗ#΃H'N8xJu/nٵ ƹ]S5*wϮ4V_W64CǺqw-.5+KmAxaAXD!}XJx3 }( fÀ3A8j-\9Ș5Լĉ|̨$\s-l 6zQhq\ɘ:=$, V4XNdYd൒!ه& =y{{*gJ5åiûXOhX<r$aE˦q{N]Gk6aY2[z%fp|{i-L&`h߱r^&!>fNF@Pn8P}OK2__m%tA]!*~r-4>O JS \;zI4xM-[G,-m>&2z2O9zw}W"]UW["uUx \,/ͭgx'nNVQf : n5R0e1=CRB *R^[FI]:;UBLe9~yI'Ҡ7@;yY=ncʶH Fk 4aQU$\h*z{0)o2u_\1y>v/ܶ vS\crq{tA5Q诂NTkUbO@|+è:G +L!=1}ei;8I%>sⵑeߏЕ7jNClpmp;f܉Vh9jy$Kzgd?grFA>#^ 08ua8q|QP5t|"r?,&ň} V)8 _tԁ%U'qAwAHҳ{u9skG|ŪIlחwhirK ʉMQD$CXo)%5MtWI{SRj_儀의Y=Y/HRMl>'(nf*@[s.D 9Hmz`_ㇺVSbv2uE4tI|= zE&@ǐ[3gѱnBQ0*k<[?eWj9Ol0kH\xݘغ;,w ' haNj$ۧRASZ>*F{7:鴃}# B݃Y):,{FlT%,Y[E煣9lnaL+8TaTF[{P&ƺ(4rxx^Dz5<e}3B E. uѿ P!+^#Yѫ1?ɔXS5+~NYhIY;3ѐKF,w$/5^8_VKgVAeI(Q#[ѝKuD yo%e'230X'QCBG&zk;hX{1v_k%pb]H7wQRͻI"؏nzmV3ѱ [|,{^p{xT ~DvXþi"Oj@<,EcS+w#l{j90^rO}L?̝9-lҀL*WmU& aKU@bn<6Tw8a<.3+ Ȑ`jħL\PC:0% CHw֓zC{/~Y1, ?(94n{\ЊUuǕ8qdwJQҨ}('\uPdȵGՑԬ+7㒿ҫ5מZC6} ^RoL[(g z!>=NuGS炯 Em<~L!V9Unm޻g-q cKmҹuT*3[AJ+y'3-=`k#C[6"`$l f=#G(&p &8YrZ%vԥ%W^EsKUaKDgA4-A|ڸAJr4U;ۀ7BEs .li=hj!K6,:_Ku)`)8>-ܫm`%g&ە?3%vOS&& Tpn-UO jQBhb>ܡx^z`E2hIZTjQG֣1L>"93#XS𰓬R[ۋc]N(N D?λ>nOI@CV祃m\26i<:rIh<-<?^B Yٲk= ZAe4Kuq}_ A%sxPMdLM{K;e!6?TNwGoסE;^&Z<3|;$(,Mȡ8II]۠JSmѴk 12b"UMYOX<1=L kt;z[/cװV:=br\]֧xA 3Î KfKTp]Eie6$ƴ;DO)e!˝6/fWܽŪy@>sqƱzz L?y46E;&7!l,t# FQb8e7sqNR)byH$KBٴQOuav :Hi  ځ| sha-2/ ?x'Op"Z`t0+WK mnm%a~+tgR\$Ox݃DSc*B&CL_pyXQbYwG+H㢃rJD ɘZEУPo$.ա88Ҕi8"eNxv#V8wvDZY{٩~3,aΧj  ݰ7lQ"k{T{6/7:˛"Ul*Py;paww*$S´]!*,?98[Pr[ɫc/wokRgXY^ I uOqr\^|J^ZDsY0THMIaVBYl~2=KFƿ2:wQdK{?6[eGH42X̎Ͻ8mk7ܽNi1, jYSxpfI~g ~ y$ʾ9 DXy>[enIFQF}$ezRrg\F )a.SDSOIm5r݈KBC;AYAr wVAІS$Z #֏eUj57zP usd<=[Ϫ('N}0 z MdگT$N?!OTv?l&k#A[Ѿ%,8V:ol,-ke؎_Y=Y -Hf>}W̅~k>'Ob*/]x:~BPA .]nq{fs925o+/$ MqV6DH\N!:i 'b:ƀ;;־CX^>l>rY^,rzګY@9ˤBveGJB]/:l+w}=& imh Aku'C U݀۫Q*aSZa N^|<vEp}-U[chpNγ@hud7Q#?Uw1 /k}XDéն2AY[? *81z$DjE?GYy=UЁI T{vE{D Zۙ0 N*fSnИbBbܚɲYO.Ѫfyj87NDV܌\WG8Z8)s4e*|%'? Q5@$H>So4 A3}#Yf.BLRԴ,g,0Y|0a]uLAs? $rҽl8|#' m)8p[.51qpsgv }-@+N^SatHMj7 VTM矈n7fn1>^EsƋ#8̊@w.WAH5+P\0i؉NlL&/Ʌ4MX~ܖV.V"`wJ"!C Mx>7>H:)0F0^m%b:| g4~~AsO>%CԻoCZ/h(5 ZC= IJ)l^pGo2ϕQ| ~MLȝus%2 YG@գٚ?{ꂡ]_/yq:oX23z)?I&YjUP7LQ6>6 (zUM!?L^Ii@[ykM%<s k{G$J2k֟96,zwSWDz$=s=%>Q oYR8H^2$*5v`9;޼ x̅ѤG9o )lujL M1)g+:磖;TzVnW}*!z9Կ+"LM1LJauVP[-tkLԓ 1z(I6" %GǣTUDt4$R`Ρ[&jhDWRgW_+'~`~с]dR?%f8iwN8Q`PYOƷH({9#i׮ko]Z|ᬎyEQ=w5w7%D$?~KfqpňW/ &5&PT+Otn] Cˌ+}oqr]ת,:ھ2Bw1OBJvq SG-8\`Qc1^.-m}K X\fq#O:o,A#PQ[yv~~`,@8X(=?^Kl+u#e ȐCn3Klw䝡43>(3bqlŢ6mҙ\8N38}'=j2q4&Q]uTHD'}hzV̴1A3֡^K:6*2oo"H;KNgtwɇdݙzzlN1L :J^[S{N{k3DcP Lq+L}ɪK+c9^n<"kv%bϱbtWY|n5I 6Cm#}&WߤmHn2 ,1T@vt7 % VHpɍl/ TD;Bm_dCo>n1VIfaĠ޼/A,I- <=xix CZ NHqDǡرv+s?S>Fz d(v)cnR"ޫu77N4 [8Ά1I[2"i(?Y!C/̤45 `dco&>?TƨQFD]+>BUgtg[TADtRW8:8"m#"*ڛlH xSN7wN3r[!n [}X:UbNի$JqZ :;$6sd6)inzvO"6S6@5yxCω>Vm) TsкD_pU܎!g?¢{sER FJ鞗TW!0)3Rg $!X& g GXn .'t1KIgzS4V{#8YOPC"q|7".bN ّ_Ǖ5񏪐 dD-ww5Ni,戾LbL6V+idMN'[aLnwùd%=vZ9DQlb*[c 'ҌQapEn, JT6a^Ms*CliVig`\ĪqI.+nMhd۲q8h \2Me*W{&͟$a`c,.%|Xߔ٫`L:u7jU=F`D s>Rage-i7Fg#Vd:aOhN=/ITEQdwl1[N%M- <nLRbЍٌAu#ZmXc_͈}%dguq3uI%vPzQu~+e߈#h 4j_s -Hq+-,!7$$A̚%ܟbuؘ4Q$@E~2fgWNgFP}IJ-t|7гlskr61a4@ۅELMM,CȘvBj!#<;~- fRKi].vR׸=́O,.ډȿ`ך‰`gNeiuF-qFwW_-NQpt" ?©SB\Yt^0/"9u2c >11~,$4 R{I"ຒڠAU`"(cα1lTeʸ #;b'6"1yym;YMZI4ǤbVSdgյ۳&O6ki:@ B6~HCL$/%zoULi1vmWCm- /w {0$thP҇2ñEH!ncu6 f0ΟD>SsDrr6P t'mDD\ߍr5k%cJm8;ZPv'LlhQ(OU jн x4p G{Ӝ^u1\KQؙ1<8-2;>7FLHǘVq>`5! PihuauĒYq1r 60Uu].K::G kA[YR|䖞r-<|MqQFpƹ/gPk (N.c&k}$~pK'qdd?/kcR6D-^tr%z_(nPv6?'ҫ|voCؗz.P͛Avե;`IrR?*/寇&,zfP%aB#aĸZmOOR NL)n۞̄cA>>2;t}E*6Vuh"v1I}}S'ͱA"$a"csvN3(" N.VXnSŦ/A 5p>zsmUL:&yfuX.k*xܲH4HBRjE^;#92'BF"0TY3q*c./AR4iY=jCVÍ [ f_ ٷTig^FxdWl 1[ zߏ0u ȷ/W39_f̒h?p{hIKaQ٭I*LJ5]j!{{׀$Pcs]ςhTy>ԭ4s4D_R|J$a,Q+phh|"q:)W>:B$k9}E/GvD7=Or\ C[;xU)>H(, \n$-^PY1u9!5=M,N:Uݡr>פ}? ¢|n̹%0)zɳefB~'_I>oV3%m-gk 8iLR:aKaO%=.'*<!qIࡈZRq h.3b(T#whk=Ƌ7@7=Rj ==-)7Z6\"+dY-ry~*ᤀ6yBldqkgt[]nfOP3~+RC3b j>ĮUj?~5K>2[) ߜmQRfw9O(_ a;aܟV+$T `%LNՄƬƶ3UK^[n+q0@X 4@Ox-J!Tt7oO&ᬥ>O&ޝۍbFpyTaC}^Yu]qEìLi qz0eu&l[/+Nm3fw`Ίͷ%^`DQ$Az` Y/;xַgsNz?>RV5JH%;@37 OҾhO5{R0>#k<7D鯼8*{^WdG ? 1GU\t}K(+#]?.X}}CF\sl,a9TV W G&]Q Q(ϗ6RgC`s:j kUCT*p;yߗ{ )\žᔠ2"]/$ zۉ#\zW~򧜟zp pⵙF嘋ocxz M0{kwa+ҭ1gYxײVȝYj6r=9ߖweGمTXx_ĆGyno=;Ρ-='/)rVnTD3Ԇh#R,.U_W,BIږtؾeNjN!Nڀ3u٠, NNT䰃!m抽-f>F7\9g_s^uOr-j GJʥj+9kn7J;֐a=lK:tMb ŹPh|UY2"DoǞpNB$ExJ =CpcҊyB%C6Q}ߋ{pu0>ub{|~~ug,2bD=U?R͸s SI9>[/7azF|P(>Oq+)Uj :}q uGqM Ka_^ڛs3[% gx9Y&k`n_ vȃΧqr)^A_èJ3XI-MHw1 {+syꨐiC߼铆0e+ /%ギ(D9ho/Q~ы9NL$LK3yh,+@Ȳ<ךvnp:\8,y#M4Aqtstܙ?עF>Yf3^2#s[%~ W_#kUXita]ruɞWI!tm{7Rn` ̝(OZ}7:fѧcEnMŮ+H9*Ѽ)SB=6V #Ы#jY,nJsbC"~e,P.~NUSsYls:8'-WĪp},_G%,*OJ |9V1x=NԬNVݽ*TlGV5Gu".16`$X4 漜s~ q1sh/Z2538ڳ/a c3ֿ0N51 r#btz|3O(n[kGUO&C1yZs{# EB2)Itnwj lQdT` k\ ayוEُ8*>pΗ$v?b#B^r&uaF +dpT8mfgo\7Ht5*ݦhP(޳k_4=IJ{?=!m/ψO{X? ;uQ}elhBd+Seo%SJDk+~-@$ѹޜSlugJrrUˤjYæR'h:  !\? r=/%8nL3P&jx%+{1iVi#' w/,ĝ@ۈ< stZ(BP,E;2l؉|T?.H+K_`]?+u!{-F2.!9ؗdTݙ Q3?'}Ħ=jg 7~'Cj—vxK07C!L~@٢)#D٤Y $|-)1T))&w )i "9)% . yZYYksv ?a"Y`aї$֜@~2X'9>kUL^KRHP'fC~DxJȄU}R.޾]sa͕l_/!3+]Ñ>|L:S=Q{X7=6EF?r+QJ&q-2IƩ]Zٳ>r-+DJid+J&!Tp 'Q{ޑ#of[WlP׬%@wY0H<-uNWza]߫s@gn|!iI3|u/9CYMKv)Xq2s;ǣ7)=Tɗ#Yw}&n$#QAcRTQ*~LpXiw"`+4&l߈8MA}_һW/`^UMw .4²AnI䮝|1b=lo,lGώR'+kR!dt"V9uHA9WAi 7|BgܭtUs+gjr*!so]b}+ JvUT,(}sip'FxAҨphȄ8tm X(gBP~>/.)yB4S7]OqO\nX߅ȶ8ʯH$\]n8tZqROGXBCɹ|]SVr_S.%L)pt D. L!O^ \PzYvZxb[&}VM}U^)C}\(SIam_%Vzݼ|b(U ?`Oh 9`rKYHB儕7-U$|S)EKF ҷ;r,ޖĘ @5#35wacR@⃉FEdK*}GKO ښ@ 8d J+ԇig7UuD:vy7aA?y`F+;FKHJEyr /I$G4HȊvLC_ @97r-RXL}6qA]>O4-.@wpgo>yG ~^R7?/}OG0+lI-3 _RF')!KlgbEvaci5Ҹ~qSOhO 6ˣΊݭMW@MYe~׊vF~p,fQl6mwr!Ini-[BV)!~wzhmŠ #PΘL!c \V@4!&zỉw# k%2'>za[i5D-V=[!c˪-*vC ; w˅t K:ۣ龚EX{#k=L6ZE)öeq 9VpU[S (C89 -P:MFH6xVPJM_tӚJ*X[ ;ÊlCX4c׭'ƊĜkx8˵LrҽTf]1nю "Nސg~0z]y#ԂII㻲Iq&H=_`q*3 ȓ,?%Aoqk/ pADd Au>B=M5>UdJ;.4Eh=gpZQ~ߒ5m>H͚!hRH.ܹ8V@6~ ,=9Ѿ؍#FrgK`O PG@nh $7Q0}lǶ ‚nՃ->7'klND)]rd@J128 iuu#T9UX֙oiA.+5(CUM,â&xuPuHbگK.thS,wܺm`V? $(m飀RU&[HWʹgq~ԕ}Q~/t-aQJZ:|x`g25 C][#PnW@Q4( bS))/#kuFp9ֈ(ó3_$SJ:2saB_u,9~}F]*Ҷ_͋&?5 HXb<~P9N F+OX cT*A@R.Zsd ayE=!o t㢹9٘!X7-ՃK3Epg{L""f5b/S-ԜxjrYKm9}12c/qwCl3Չlٚh 9̺<\>W,.EխlbgM;Ā] c"|VY]uw|PZ%9{P =/ 5HJ DUD~2EJR'k\LE!lQJ![p}^DžIv"Jx&}ʫ44 Weٕ !FO~Ȣ 'ФT*%?Ɵ=URjFMUO҈֣(;"zǃʰ:u-cqoOL< 8 +cKzJ=mZwihK7-jrn,V`BZ2 #-|Yb~_8@ gD+8|Iڃ5`ŸYC9𚨾亊D Ѐ&^v`NZb̔8Nɾ ^g mOI`W8昡3zNo$ՙs`azJ7ԫ _p'3t 2V-=r>=)c'_etUkHJ .2JÅ=C0qi# ~h/&']f,ӂ5椛Ƿˉ׮d̢L" ގylȃbE3k |-R8UPˍ%e/Űic(+"<-Aeq^ #LZӵ)DlgK"Q]fp8UeKf#%p{d0ya%/`#{u-yܵd#~#FV{c=k:nlŨ^vZ m~nBJ%+KǬ 9l5-ZMfb heB?jaGx4kwDgrykg JF;8\$F,w[jk$""\3)6F[=M֛끍fcoBRZ0dA2a3S!my]u/@$KYzkYM,bem R^;Lħ8>4eA n*)yݘcu5q2q{8* BD+qz~vZqľݲuE tѵG73qfRSџ ilJ$?x}o;$pK͕KމMujN](wAroVzF2Z)& 4zkBPiZPcܬh}\ (CO9d^׫⁲6^ wӔnՉqJHXL j>e3)WpHRf K#&.s[a9I7e9N$_gɼ,1Us5h8,z GpREiаPC!=qe;^eNHδ0b@b~ ޏFkT.DL58@C]:~Pej+z? P498DMgD`},5o#,L^\kƵroI =Xb)j1O 5;n1'8 u%SyZpCͥK?@qُC̟HZf\m7ZF$#{2+Va=Ɨhx/󪹉܆M`iߢ,-D-}7 @/=yJN@˪9؃. qSѲ 8r!Gf+p|OW'5z w#}uaIh-#͒-~K?%\%5(WǴUգAD?sWJs 'x音ه44Hi-~Zڀeu|->T~/D&nCi49fd`nn+D4g%DJoiEhKiC߾-{_zaW]yҬU{>j.f.i2 W[E~FhД(SQc)W#Xn ϖ\on|uv"@~/e`s3]v q+-qI -`~%0p}ڇ\t{2r\9B~` c]1BrGHR=8nˣ2ռmXG>Tu_Nk\u ZP.!xֵIĤZ WLpXg+h&zWR\'[ y ȶWs`w F؇+-Mj(|z(d( rGjY[rBЮ٤~`bPn d٬ǦtMO6R&z=Lbʮ͝|<[icآ*tiPY׏'iNel=vDZ.Wa.TH~HlꎣwO@Qբ !f-\_B{N #2۷^һ>+>cQ2bEn)T7*^C]WbJPb%"dLփgulzYʳ8]Š̟KI3~rbp?S 6/^cKtLxDM.rrYݎ<_!3MSG8;|y-z #dݑE[bDe<Ȕ pBkQ~s@Jǡǖk{K*r"-a&6w/M{kT OD ҭ'HJ9ckG~'hXm3yLwDdj4Z٢R4O[rD!+*H3$%,u{Qg8EpЯ3iV3 (gkׄ xN1͇ %s bX}z6d^*QZXt P<(`sm&y:khK[^SM:( d` #Tk=HRC'~8uRMM}x,k;`6,30ݔ8G$%z&c\]fl3q`E$S jyn x9j.uGS$bsx (,mrveZs# .Ѥv`L4["tIUɪ q X]Hv2ַq?nxzSzer^ E' %©.Y1aXh(9WD-ݠ^We_^~s@18魣buz=أ0<*]*q2% o>M)U")ט N<,gd{T+-m.l].o5X*u5*hJ2lג9uFWDd|8DyXC;&[{C Z 9 AO.P/ "}p X|u3[N!Y@ԚRa{`ە[a75 =qi'bҥ{"g !ǭ奪Am[fSf dZ a:so+ {%G/K<4ͤTs>H6DXx~tHLNMە-d_Ve 坾CHŃ^dp"#LG9w#$n8x9D 8ZFf. ÑZEő,'&,9%r#u7|IEEΉ S&yt~Bu2f/!7o" dwGV/>BTۻgO^-TwVؚڅGSw >[:=?nL1cʜ?1UDsjH GcM>'ӝ4nf3+BVw%)*%YTLܵQ`tkӜyL\} q  A~aFY:Ymd-E 8f}⾔J| R:6׶1aH`p9]wBdN8sbg t7KƔLh8h3$ *jaѤŦ1fkvifXC^]r#,LdSG+[զ:8ʬͿY,)+!Ne amI ow1yOP|TFSIqω2 dv b>HLk[SͶZ/+lG.R<۬DS +U#c"Z RJD`}t+lZKFS|e+!9\Q%Y}q$w>>F<&Yv>PLT|8ZsSM Qk-TB4 rƜ^`.y5I׶;B+*og=3 QG-יcv9oG#;?molw jKS0Pm)}"Y/O$v׀foŪL܃3#1LDK7k!3BEjՖ!Z?W`y{puhDH}3sQ1TjSUzCmfȉjщ쏤.%,Jn1sRP p?XY =A&0q dߒx3Q7pw G"PN\'9gD_eIZDŽTs6e5>b_߄nD,~_?.DqOc*Nk3h gCj|F/CAӂ 6]qp.^Ւ&P={D^]sF8/+ȸ4Ø]Hr֩|0ТXե}_\,3gx $:XP]n䟫;R{X#%Y@B/0nZk܄sU/]Z:u\e#V'8i/GQRMv&{<sqe6E\ȋ^>K=B(e=_l;rY01kߩdytu(5$.L$m Z,?FX,$J mY7!_)dʹj:R[+{Pթ3=#3|U}džہVK]C^C7A6\!'ܧh)à~7L+U"PȦG{qs|SFA[@ab5o,Zjl9RhTuND; h`:::9TIcL+/xD .W\멄R?ygVgLH> +X q< '=4}{)Bp, E$7|o2PKHin tfloŁÃh| ^bn6"N6,ÔXDtHs3)r|l20BL|6Y#Σ~c~HxB{ *ei`[d3mfH+ !Ql%0z X6+,Slғ+ (6UVnsnY b^_ s:0[X"I "P| kG6>`nMDJgJu7xɃ".&-dO 5Zgw\=.,Z7 ڭ'B;$!}1)Y&~Qnl9ŝyC$.][+ M* ZnLGɗYQͭayn _Uw4]}~L Ob!rہc׃%\{}e"ldy,Js7WP~4]4mwŭFKjJ,Rd(GxǦ(D2[Cj)Qq+HysB`tP6о"׃CmǐZ_\PR;~+\xPj4ȣC|Ue"Y##nDDH}g"A8ȏ,zd+ 轐-Ul_(xt2>B?MRQޘ>rnAPk0-O's2"=0 kZ%WCa~G0W(eՀ {pk:z[pϕP=q`^;-b8>fW1W3F3nKq£aiO՛EEeKjEAWMx9>P0 4-HDL{0'Br W)e'&݌]{4@\ȥoSab-QF8wgrigsn"0ʇ;wۭSwvAI/#T( ICe/C@'K!n,d)Mx Rݱ/{RPo f1"s/0ɪ'5iA(<$ lcsUKagx)\;A(IJN wC6D~~5P f"uUz5o`MGN{W<~}fXMR` Kdqj&6Tr,@ZMg 2h-"4;)iT'v8|'Ek7oTb'!M"y?ˊ<&&laW휌R).$r E]6={*XA9uP}\({o]1QĂZ/? z{p?z#߱ znFၯw ԡV\߶zΎRxߡHC?'d/ě˅( ^0 -  X5}Mv9K,=:}l'w]<\4l(Կ1I>@%Lyet)=iN j1>n1Mfoq}mKaܤzjn!gҰZTp/xHџ{niז$ J_rkr|VIMʞ-BAG$i_0@^\,/XZ>_C3F_5,ZUHϱ+`Y\ )h&dblVcl)A4;t57bK߆Mc%mUUpg-tw?$+Yޗ1ŢY /`N[(`(DưLCf8K޷:JwOM;Mgo9cq4R{HȿX.9!ɠw\U otBejP[z+tF/iR ν|=߭R[roUwF,úNU45{}^|W'"2X;* {gg>X!\2Ib)։yIW^@dR_VˆT?ß[+f$Ǫ7eMEX?<טJo⿝^MŭG)("GR~G| aB2RѾ=I!i;NvhƭݶlFib*=ܾ^}i$'TH ܗAfv^ڣ P 760S#@:!1AkơƠI7ڪ.辙xoW.[C$lfO7i"k!I(0b:Wxpݒ ;Yl=j?#ӯdкt01rǖnR5af4g-do;NCF2gb to(RL9ZݒMLs2ZۈWZH~{ل*2:p/TP2Eo3J+4"N20xZbf O,^ 1rߤ7] ٣l؜"qd=1P0@Ģ_hv'DpFΠ$T]$WUt@\=<|#ó|6{pgZP45(P3[I=<۠lxςŁ]Հb!/'7RX7 lECII/B$tl !xjbZ%3$g~/Տ# <؏gCtG'֒o2kiI< H% i5O $nia#& +n |nxΣx\Yk=k?̲Pn,WVqt~BL";KGqm N ?Mnid~r{ZjiI2_(ǓҾBV&yE՚}+)ufy+ *qn#Al,(^+`oa 68ͽY*}:fPayb"g&=tYg6%ᶔ,@w8ȃ xud`640–m ?쀩PuzZ ?ɦIx-gLAt dk>YTk)=d|, ]vCi?*WO|PA~@"w()ob4StC[9N2,q3eN3(Nn V^5><u!?SMv\wl[WG7l^emZG=6 T cY]0e"ps7[)Đ5_)Y$9z#yH84U72[Zd-mZƼ_p%ICUPf^&3HPV,VqEu:5¨/~-vų$SZ0wp6?.s}؟S*vF 'hi`lOՒ؂^f Μ#öBJwCH,8] |aHhwp hX@̸9RA :Y4ǎw a#7`ߺ}Ri ECWA,!; $* D)HbD[!YXQjuk/>x#ǔb5/mVN:duQ.Ğs0ʅ$Y}b<+-DK霍?f1A,,rO՛^nMj-&~|"'?&[I{򵧧w۰mzԚ OjJi`Ck 8/"[h~OLs̭ H0V,3a4aU֔ɚ .<jvԗ $DQfRu<~n횒5K&{qc,s+W'cA'L)$_=ݡ\S~u{׆#JƮJ~XMhe *KיJ Yk$o*i5 Or6t>N|wvы8Ӡ0zBSk=W bTEoÞ@ҷuq p J:숈E6ޱ6= 13#|8Wii yHC^Uk]`Y/q&C m Fo1%"Wݔy*8 b{f9ZσX k@ 92{:$ m( ˓zMHY2fW볘A\j]H00 mp =,&h"ƁB&w [K?%O0c Eh5vz\p%QQLT,<&7t]̽ z+-XL&jxM( W9L,1(,OO?*xO@T1Uʏ 'QVn7LZcLfMS`]/&Զ6V 2(fI_y2]59&ހM T|wTc:O]fk!q0} Xr R;ǧKܻbй?9g)֨vLPc HFC\#NKV#5{:x&: Zs- Zr틦ΗۻW\>iLcؐ)Gy'󈍱4*-jʵ{&s*4moжX VsH> ׎(Ajcf ύf/FHgOs8e.nl3Q=YJ!ʠF Ƣ<&^C(]R?@; 31w8 r47+L| (޷5ʎis:Znd'_䭷t"&8W>n=V)PFWW>Ynu5@f1s@Sۘ>wJ__keKZEPTː t6⊬4?J(u~n4946CD*hhz 1uD2wlWm8b uIq9{Y*۽&zr󾚖m@vP/gMqXÜHQY*}FA$Ko8AsTJ14k$KB; Q;KXY~`i ,CP!ZR[D!~JSƞw`%Pq K&Y|FʵKnR&#PhfZNgMڸc!X ,h <Q/;r};9Ri6/eI%7yU:c3#Zu^ޓ&SXV_f ^k(Ao`4A4!f=7pdwax(}#eL:G7WRʁң꿗:SB*=c`b98,/!]^8Exs@ Kڪ UtK|ٯ$}+V,NGmf>oO%RE">9SworM[׬#ULJ۹6R"5!j ܔ@'&>0l%).u2 Ekƶѓ=\YHX##RQL9_k,łn_gOb(qC9Kĩm Αׄ6M*E@pbh\kS9V@(i]8fJ懦v73XO ˩W~]"h-a> M.#aᶴ[2{W.`Ep/ni~4Hif'`4(l%Hs_X S7.*f.߀$*2Z![Θ 7TME(A.!Dy͛1~P xT :-yGDCwp'P$<"!\ %?K>:[Gzk(\9bex,c)0RFWFFtٜ:h/%6rI(yeas_#FTV'=mg:$xbWԔ:9F!})KX:,Ԇ~\#>L#oe9+l}ut]#7ɖ$adwl#XnF!9pJ8h^-Bӓ8`wYutrAYݡ>]ədvMmyyt^>a2|ݴƠA!ߦ,kTFeG9 G%IAMk"%<]$g*(XΘaY|/0GXH]_Oͷۀ,Q}c͋b$Cbtְ-5{"aQ⪗VA{uCߏLWK*)+O!󲓣9ĶeIȭ~aҘ)b}x rF6d?f}T )z쾕1b RĢOUPH/m+f|;'Ar ?T$`i9ʃ$E![<)h2ym*r"jXf^爠$h k=81znhtJY_&Z@Zf!kk3ܠ gwJ KEO6EYo_O o7V*kt{#qDAF3ꑥ!+p!ܴA;+Z _ 4f5p_2/cvK*S$imo5&O\qYQ6_I>F660Q̜f/ U_VyGE+( F.-91.&BPȊ+ꅿRH۶)MynŴϭ6_VIW! X 1M0)}prCԸXE(rWV"kRbftufw} dpq4=mF=@zq3)aJgB?/ȈPdܸ,QlҾ^JSsNaOP$ݠk9*\/gkj 5C}셖lKy5jelA< EMX3P@{=F+<nОvy{hFdiLF,j[+AL Gmttgl/п 7,D7$i~sRr¨y@h}Z](j$C7;Hvt>'ZG'VE=.oB=hln֔f,K5zM{9xYq)u<5χX"ǰ8%ھ̪ueM s+yKeD@/!y 9єscyG5ԉwFW ,ͻxcrjp/'_/{Y<3|>z ,erJqOU-?I+5{\_npD+鎭!)$jlNEp6LD-aia?PN`/$S8*bO]I!.ҳj:$<_'FW:BFdbduy)A j؆yA'Î5'Hx'tŁHZG 2.6Ʃ-pOVrAІnw)R=)stJK)kϯNJO6 6zISEIR$'.m[yfWnsjq %u 2@NWWC=7ߵ|K]л<'aIͭP%tN$g{~Yb? y@tCcqBlf3~Zw}U f\#OT*%2{_.ѯеg.6Tkok*+#= ,iGgZv;UNp{e% > [ivߗ5Ĥd6$@'\?Oй4kP hFfȿE_9y[眈sjw~'cAVWL@`050kA%1Lq`8><fN|65DA7MK~9ڕd)M^Y6ky_<BNdN[mˋW+,(NTw﷓XXcJ KU 0W:M!؅όĻt%v[H_XhU<]#+2k!%f|a/l|,ߐ亃}0AF2+k阶 b)D5ZchHMdAO#Į4G tX0.A%4*FQs]rKU@ 9DP^@"6A5@!exz[wK1z%j\ ("fH( @bjAa+2V~ N8YD Zl%_04^~Iv'tP41:µ.|bwizx YɯN贓\wC=j7Z-XMe:ΕMttBfI{8ڥ^mocPOGQ{vϭ[gR-Ugk@L{p_5yi΄`sJsx93'hogaH)^o'rWu_o+3wo{/4 p3^LTLs}#Pףk*̝qȚVN$ʓwHȄ< _8 >) 2x*׋J pi~,?^Q^Dcu-yvA{)9Wч&CUԁF Kr}C>.oa|-ݯWpѸ(=whsO Rub;P>ps#wFT2*KU\ =X)DE2oV'#:nG2,ȑYMϖ]GUeVWfO͋@ '?? ewj:MyyjBObn\R2!h>6zPQD$?xp !Gm]ΩҐ@#7f-BVjBLViCahҕV ǡG{ˁg>F>>ɅOh{Pa9wW}~‰- 3q:b2ݪ><{Wêv ܵWn}tZrT1|".FY| V+OE47 $P f_o6o/B}֘6C5ʶ$2c2ߖw&3HO֫ҲXǠ)A!.e5ӑ7:۔uuVh#y̼,3,WZtP3 )G,@𬞄 ڶ "\$;⅝uݫ]S8â8kU)4ct %y_@ءQWל[(1K^m@sdq@@t~mкR$Fj1+յk6ޛ"خUJeϝ)g5R{]) ;m(Mø :YFxX5Cbj^ΆMAuZ-a#œZ2FL&gFǧrbxGr,<ς:Ӏ>דJCq"j(.kj&ɊudeB_)\(/ch4Q9W~ӟ7o]Ϙ)~{`j>:T.aua0u@Z:3^ heh8 ͲPRPQ}WrJw{H_o0ݰD3ȹo exxux,wDvVDwg &eJ =-J.^9:]b !cz g Hj*q+\LiNjg[nb #pȯ jѠf:Ҍ?Vf'TQA&/ -~R\P 3ͯo_v$|`Ek)@MV2!R_)aʺHL9hЩfZ])e85H˶:bڇ$inv"(fx%!<m< ͋]{Tljji't\G/ir 1(ӝ!?'˩(H6m8f {L ī$Z[&^cI7t̖C7ArBи[3z;;L}Μ<ᷔZD̛U$8$xj%(j_`-Hr-@%}Dtѭ"i| mw ڝ+CxgqoKJBxKhʾ2 ũP,R=aC͞u!;΢^ڄ˚[wrlbrLY56?yE^WhzHg7wT.G0}((XjUHwF*mtcJpGBf*0Xw!5&=k6}un\܉Ҡj+&I0-JF@jE8qU < Io0Tn4n(L 9 (q4IAx/&qo3R>HN.rقKT#ߪW9@߽J:>CE DŃr[K3]1U( : fe͍5zy.b|gAil;>a:,G b1#irR'2W:y1D> Q?x*"GHWMfx mԣ+%M37w3dk Fa~3K]}bLἯzw=|17,jMW|Rm^[<7\oW 4>C;7d0Pv$ ӬY++G:,b7VCƵ@ J@y2*ٮgO sZgH1~qNa$EP#I1]1 ٫p|ʍ4{- 0f)&d{.Sh=6dN{j@(U{@{ kc-05J_HhCGL{ ښ& Z)\y8ȂcPOM9Z݉$4ű3/:>0ٓ(ܥ:5)B(k}ldpbh[gnOC&vB9:M]xdyLmR)M9Sb^/p&L+qa9Cyft#F*ST&Tx058a*7XCa$IhBX'ebeX{>P@~rTG2 n~#%` 'Ɋxf[Ѽdb#ţBzv)XH̭W7̙XF°]̹g*D!3v]Z8*"8ȗ ͘8`iuT_bre#rnqbť$2G;)5p3G, dX"%HOͲΑt)Uv3CJ1@ngz";RԒzk7K+-xI;n a=mYItef2| c\I|b`T'Z@.=cS aEZ=˗JٮWi zp /M0&rkI= R!a"{ }Ԥ َ53bh^FoD¨ 7djXȬRߖIkp>~_Цhc a {*lR)cjᑢ̉G8dˌ_kijӿ(iMPebceF,6F! 4gD'? -xIf Vt̋ ߵQt|( |K@K)11 $OaܫX N1_E* jrs#֠ɯi}KWuBv(p:AyLZBM@YG`Hv_{Z#)tg gj^Pl1wH LDV\0~;[74}*)fl-CvLPȹp~Eрߟ My֥9^#o"s)#s H /EIYȯꉮX'/N55s k+OѝϡP1a &1dM xG(*:,AHQ"ցL?#w] WvoEY+p'Ȑ)ËU@^[6P./9 EWuM'3uLK&.ȯ&1h h5@{_J%ݧNlq`֖p}RX!0!e 8դIP@Ka%ԡ;}zW۲ wia c[i4"YV:LR\##?L)T_0K޺,Vv&:v/D=5+J*}J63oUx5K%uK&8$#mHM:q ,X.qv# M?XW=!YGcxtGձ!hA'0瓹Q)$=V`,kG7tzI.iϨ{XL9 F !vCe_N;xu8X.N~==GX%+ JN5CYq#ѥ+(:3Q~d)C]]p.=Q֮ O52ٳ ]M'UQ#ZEBW71`G/9t ]gP%uUݼcm ̕CGFcD}Ѐ^QI_I.;%qWc1Hr)Ǎ.ikZ&M1Oit%Zv`ŷb7 bٱk2vmO\=(E>EMV?OJ oPL5ӴG-TRŋTt`mHS:5޷sQ(c71ؒ9#6YN5  h Z6H%!2BT`j7ܺsDH4({L Zc^UD]6GUJªPkc$҉ S qZpI1 #IN_<)r}QW ̲ tO DVZ<c6ęd(}{$6GDSͺ螰?SΤ["E&*uU(x`aw޲4oqNJǴYI$yj j;k*!"WnVdoN^RKe6ΕZm&'=M%d3x r*̐ [ɀ "m'/_z g-+?aE:ap 6J&XEZ9  uϦt2YI5b؈cZڿgn1 7@Y!qfsӏEOa 1#EQb U%ɑ(ډucAI£H9LZ~|8ٖ(iJ$A<$>@ !j% $BX D{( C\"1Ns<0%+7̔03$S|f8_p .>cn7W1nh~M8?-[ۋ<>+|`ji0z DWn\# \ ,eIL)PB_|ޜ+h7̆LނyEdMKVE@UgL~@q,2x=LVb TkGG*e}߲7%,Y^ȺE=W9BI'rʦ]K>H2gw D@sKM\ME݈)c=:mk73!Ts @p%ӨЖ#dO|Jo,\3kiW!sY%͌o'ahoA$I[|,?M4]<佾0WM0;HJ{3nҁ"@rQE \.Z  U> ߇yvcxz]Le+ƺΖ{+׸м4( 9h[[,IkW6T=0"*'9lYZok紴۽q`_/ DgI!qٙ;Ӵȕ"jYddU!itK(|x "h?J Yehg[~iz&o}TFgS =N>D&l1ϳk "hz,3BA94{lV}|PN #kZ,>T"M9p'Nʬ =$]XڭҢ>M9Iiחh`'v,~:,|s.zyFr*^Ǡ/T;Y9Y{Бk툭/I&Njq V^zldk W ?Ҝ,Ɓ Rʲma{fes>+3!gi>.vyyE67Rz12AL"-i%Z:{∂S)8w }}(tRwգ{1 Ye<=0yՔfk,-7]rt7H!NBNˏgL"Kϔ]Ad">=7+u%џ~@||; 㸝СJaPRR&qY8+=[g ؼyk0dn! S&Hdh_˽%Ql]?Ci!T?W3'  NGr۰܎k$ECg6j"R2(x}&u~,n)OL[9]iY){#:$kɛ`1k)izhQs;p5afx*umLk]X3rO]Pv/%ssvT!sE/]='4IzR-ۇb[_½=T \P?L|:{H/K\ù)GDV]翷T,?SCqS@8:#k-˜nNc),*np:Bnxf~>4 Wc@7uKHtwd&Tukzyϟpni љ+AO Z#TW& Y(Btq7^ IUsw&HB<<=)? /MxU/4uw6B]-uyMmoZ)H;gS3`\^?(D $<ï3Ęj/Ev %^؄7ݐ!S?fq vteLJ4f,J4 2֏eLqmjLAU 4!u𳼬42hz*U &Kc*KYKCY_B9)Kq*:obL),m A*{4٪w=<E'~A+T b̤ުԍڴ8F6ܔSPiڝf=iܡ|Hܰ3E0 ձ]A'`:&zmy C$4Qs. V,5 ;+I`8N8I=}sX}jW0qN|Éb%ZҲ3jHFZWC_P1M*v d4OX6J$#J۰ vBfkGd9Zs1߶T%4}]NMͥհjb/1fxS3b&Ս6w+5cR1ed샼jWg´l{̊@Kj"t)|t@Y0zVRn-'z2 >;|-iR#)+Yn*'UrՆ;ӵe~='9FR*#>`"%;w٨G7+->QۨaB[nMVVR>қg*={l469oe&\.ȫZPpŁ7{tn6x7.B#J! 6z{^23oki5m /IF]JͿxzm?jA~)rY9kQ: :)<&D$v!j,kXbdu,;"^хm b+`ل1ryTSJ+ǻ2z n7Dj(&jvG9ېZHv,Et&VU K? Z(UO.4+if|\G@k_oig=+Cj )OZ':wpH+^bʃ~hmRqǢ"T"(uv+ ^kpYDr=n="kWwCDG³&\% G5hzc>7^‚ox6X%vnΪ<{^;+;eP0} L`qfoU07YPvkg pj!mYPhnAvټ.&+_3K~]9/0 Ρ'8Ĭ=S< [55ʈY;xA p䔰 TN<_Ɵe9yzd*clٻbHGj7RJ07揭إ#=#T"&&@ Ydf1k- \1I=0&>#ǷP.!v+GJmEgm?K3 2}ff/w{vhp,jAY A ndh~ujJ&фP ꢼX*^֥R+ymv+l7 OΠ5DBAX| q{[Iɞ,BMFNS#LU#ޘ.jU߻S}UMO (j~` uc8Ӊ-Je. _,d 7;5")[a NEoـ"]5/Py若P x٭Ml5]D=aAtCD|ţ.K( L[$TPT* -Tz=qY 6|q3Jui΂GTv0(t`JТ$ANpBz9ODfiogU; $A{.!.R7wlЏ-3&B ^2E|0hl9XKLƿѡ4rz>7`dh4Ƌo'kQArTY5ס@ G"xw;ag ܨ $u+}^0w玛Ӟ;[ucJb v;c^1r])u I:f2$Ri)巺'D;C^`Sz2cQF,6M;\bgH=rMZ09ԉ3 nWZIt-ipF@U 8.:P,"Qn &hC>=e$ !I>_5d C%y|Mk%k7O_WyDhn,$/_>b O @^LvH/ rU!QHB@فu.ǹ7rչ>D'~ie֡5n(wGh] anRW g9t^Cܷg]. ~w;V+;zH _+v0Jjuo(yf,\E]sƅN .R/b4NȹB1)`wh|ndwn4filOaHC~d͍u+16E+4Qܬ)vAaiؘwʚ6RûBqt%}Jm)H*>*:35 1A8JıA.5ׄ;*f: τGu<*ӹ![;3DC U_t QwADޗ 4#'aFf2b'I(Ң̮pӭW?3p%؃fyzwi *7g\"qŧ^{˄92\89i `YƻI) (x yV:Qw+n)T;wUaÓ4j 1^+ F_JUX"HU  +Ĝ$Ɠc)~9hq[M"1_1hAsMӘsä]$r| IKOՋbmݠ$9Ė6"(-nnx؃a4|{򁕄06C eR[BFC)|^\fjTPnv֋rZq}R0NʡHp( +wQ(RO3q^}_OսW,YPwobiRN,EjTOۘ$4D h/+S.R/I2uWD=FcJC2xc/3X"W;CU߭֘E e 2=x"k$v9@fɐ+1! .EO"œV*:C-;YϬ/fVרT68e?/&ez4\K58^s5O"k%qX\P),TӰ\Kt&<C)L#pmEB@9Zoc*ػL}ݘ7AQŀlxx0F(\S2%Rh) #G~[rPj'UϗݱϪW'&*z&x O#@d^|3K=r|%E,톮,@j j|SCtѢa-Flγ L0Gӡhu;rjHB0+D|+x_gVee4 Gh=GiT@6btq:M@/ =Lޔ E)Pg7ܒXpjbK1໦>蛙/Џ8FxTy8_ V*1O|\").'b+=O 07 @_HCv8$/1wԼT{C11r Q88&P8Q4&*N&=9P )d7n]HCK/E5E/U"aFx<Ɖ[iV؀#"zus]Bt,b')윕>AhY$y%6o@B%sMa1}0oP~"J0e&ԗ#cZÖ)E%  O=~TVWn>(POB|TVe(@Ej֋1,wo{4YCI:q}*G}ax.{y>:S!t@o \h_<\L gO׍=`k*m$j!5 OXϡ}KvcOef; ho WE%}1Q du.QndBa|QЍ+3$0r5)]HX kDQcڇ"nuMFxp% ˾-!\kT;*Uf^X]+Jt q符>Pܕ@!MFB慙~LEI/jT"_Jrx0aJF:i$Memt(!mP(mƲhU tA/*|%(}2M߬?ERct_%SĵiZL }yƍ:u5FL FDltI;s%?X:+zldӱ*-[uz:k۫]ȅV:KRgCو]4~2e60X3q5PZwmƙ Khd ?@WtMde2ӿa)מhvZMx|ry!7MkS\c$j\Τ:QҙiⓍ A, eXf:=I ]i\ pla7QttvQW&,Ӥ)C.6'RGV_b| U'4͋hҷQ|~ z x}vV4ƆPtujKq[nox>7?;t[`+;ʁڞ::yͪ߷ՅhG>[? ;WJwDŽ253get?]au(ăl mNB. v]aMyy ۹VO{Kߌͼ Fh(GӫȊ0liFI؋e,W |`HgZ=oM/z#nhSӬP. s5a'l'W4L1r)Ҙy3:RR.rצ˰+u'"&TίdR&i2k7$\LR?ۦ2ejdś̆+ϰYvY9vt뀺8OKZ 5Ua t'r`1+Xw[t۰~OZa@r8I883Yֆ?q&z%m"uVɋJpY ?#qԚXԨ{O,c*1ۊ#RI]Jb#DAَͧBE޶IvUib;gw9yUzU3 Dh+`F'[*LʻiݬuWCw]5я/cU놴5 "BFbv J[Q #(ee9a'l,+eڿS"7,%R![dZoD@D3xT#6JLC;.mnY/ԫQjZ[v$r% ͒/\֡o3;9l u# Ҵ ;%zsQ.F7vk~dZQ8o((D]pvN$8JVD}Їn>-]J &0gեvBFXTѨm;{//XL$EVﳠL~NDJ]<#ےJutˌsƤ:IQ[ʝqn.k9ZťZ5  ]+)RDzOq( {WB =}S}EO0'w%8e6O52ܪx{e0Sj2!0&7@Kr!8kl#ETiu2O8^wId5wDž.6l& !<``4.lX' lT.B$7-6&rҵz-r=v쨘`HƱѯeP ";D*Ke"Yʶo =wF}Vߋee6vM3ga˟D-g ,I9Y*s#Bȑe3^=GCRgv']x1O=fj:rm5 <ѥ4J J5= lA?& ۨ[sKP`*2"ߢPDe;AFf'L8 TMn>"I.$hO;{v;g7%~ #:&0*]IɧѺ~:GdK;r/3%P ]&tJxģCxZhRJ! Ƥ @ATjiOtSߋzN5exwsv8ʚrX}zT`v89\uq]tU`Hyy%rC<5FY\&{"WkkS3Q5uH"`ի}x=Ͻ3 7喥DhтWz?ӹIGrpà"z:\+UF8zF3 Qa%JIJ|Gƻ;Vq²yi~B߼*MkȺU=Wٙ쨥z|`x dv~l;ٮ?[J5PwޡN3eQcχti~{j|@QyA0Q7&LA(| VQc!T=wy$ Cxs&^]#7ڐ)~1?:f~<[+!`fWniz~=E vt2I5Fʩk1W {Wh լ U'c'WVn5'Re':5Gs~G{\ʡ="g;5`CҋdOeՎ7\~ItZ*ȱ,6;#3iŮtx yzxĐ}i~2ҦHˤXNHM l-*ف'S0*ӟdPт9؞Mwb<ˁ>_x"ڔ{<(zt&|XmbOP t ].8c+4]SC/8a!3ۇm}RP5@h6EyGc[A6a 7+ vF'\6?P CXSg~ca}uɸژ;>r-$ '(s愌"R3Lk|K:o#@Ci-,IC(3!D hz1i>ұr @v2 :7E>n\^/G><*Em|ֻ1Y<_QBh5p&{=/ܠ Au7Ne3| cA3G;L&W8ɑ'FLȍ -rwRson{vϧm*'{rFbߗzTR=+Aal"0[B>v+5ȺwEAij~$AWHe{`J}yCg؞rW !3U`.MWݔۭ)Euۏ[PKɝEn Aܥ̀9SjypAnI{xYrFs7GG(\O7kDڦU Ya2JX|froz"HXsb2xm04v.nɔ{0!4JRƛmMrXe&k9G8٪^Nb Ԓx ]5F"JA`]r D>0Y{zTқcA&rPmP+|-՜Vx6[&ܯS1]6; j3|و,8xx (<ڌ>H[ܞ)1.3GWjVbc4_"z0VwtGZso -\s+vLOh-w44]ЍC癉} ZrRMvNZUas MuvtCR=D#S<1~?TV&pzI]кF~i.ԏ& Q؜~vu/kHwݮ)0Կ-|gjF@u݅ܡٝ;)+$²Р/U\i,֯t?O󬶂v b{7fъ>[pax~tru^ԻV+O&oF. 9?Q|r07US@x9y@Dy$&ٰ=4^*)w$=M+[!35y^|#.)k9qe"`qErzpUe#7mc ]^TݛؕT0p~6@3$@E~碐ۍVSB'3 ;` /$Z8wσpeޅ0K"d/*ټR(uy B`P;ڮ}:&*r>)[!j. t2{ 8\lLHpg=Pgp$rl ^4N{몼&hvnߎ6VڔO1U7xz̏%>_>F\[ cGEq፵yĔ9PXPP"&ħ~.ZE0 pJ4~声[-iJN1 KZ:U&<UL{R"ӌ$IŸ%~g!.HC tB^ ;|T|;18Y3>cM^g ^yN x8&vjs1/-C_{WNpJ0*&Ra/#!p>V7̜6DӒsc (KM^C[b<6TI*JŀBB06K#2ưo!Vz;UcVWDs1Ga)!T'W_K*i{9Jv52~4l41lk鮔W}&ۆeDiMAEY9Us/O$U+Py7.[%Z-,h'Ev"}ҟ`D1d@sFl^@IHybڣf0bcdzd ދ._pp^y<uC#^ts.}|r{zkKb:UvR5 6I:w&`YØ<y? 'S|֡LI$eW{)L:v6$S?zl(:d m@ccqQ2H Ϗw?wѦ~XhLbpv?Ĕ +28)OQV#hDaw(~7ѫ@Dd然z)^E #<{k+/ZXQik/%m!u=,j!W/)3FqɪQSc*ϥe4vM fw"a~)KM왃k؝I!Լ^cw&ՕGߡYI+x^4f@gQd ,;W.ɱ EtW*IO)+YCs^ĈwF8M_H 0̨Lzp2-;rqVteh~C 5z:̰)0>?u$Ki㺊I瑒w @zu3L T*;7:6e\dcw="67 wׂ g+p&FGf#]\o<HVu*_0 hK6I? cj}(Vm>d^ŭ7d4qGLهp«T-qrQU "f痚SG h&0$g&f'*Bk1Re6"+9H!ooUطSU %5lp`wE/ ~ýaw3wq]% &/p{(᭭[ a{0X2F&M՜2cl[^XCH`*:Gɦu$sI{Fyiu@N׉C!oz3|l։`dKAu{Bw6:g ayNac:q131+kV}.0a^ʁIB+{Ié&k_Os Gdzbt*qݓ\xW4tOyVG_?+/MgjtrEx4lD0ST0!(WWK'M 8}ntyQJ8]HWvN j|--/dO?jZOhx\2^ǘiy'`#6u~}l睁: Klmc>ПZ1!QOMqx(-j] ^s9 XI 2(yVyk{hBW712h|VM-oO)cp'5[xxaD||2d#̀3L`UjrX$]}̪lG bdR?[BN AGEd1K|ɵkPϹ~86I5ƑP092-BwgX/\Aojb4߶8;9*`H-hv|gv8uB%,6 *7q5\Dcd6z+F-FM{>Hl0[vvUjg'ʍ)9$]W!90M t%4-u=}7 ȩA-gh_A #Pg&8ӃGf}J@< gC~=dvc5^mFSf>gRi&&\Y%k"PgBx OǕKDV:L> puUMWcIըfs-eu ?T,|G_YkjQ_,Adg }jUh =XXkP[@&੽,#Bbgq( |Ȓ9=15M s;ZkHz 6 ݱ̢Ic:.f윞kI~X1X^|0hr*,N gDۋ(k#u2-*i:2PvVM4~vln+C_i:B . ӿ!1I‡VY8[G~B 0El4A_D8gE`]MH(' acNe,rFк (:u(ʡ,c}R#`R9M{.$~)M .!Pݬ@̵%{n$`p8E"[80}{Bc"۔X;4"A=}A&{dFq[ez6ᖲ;ٗKܳ d0jkT=%<ǻ,*~A3Y3f1FQog_l&LتцigDIx+QJM0*zA)``p|_Nhj"zW[Fz]>?9A9̩'1A ^&fncq2u? Zop[.^3rQsr{ 0r&)Y m36_1oqBhx<1IQдA_+~IlY$f0 /Ԏ(Id|gc ~I G)j4R$'mYp"8]ls^iXm sOv'~3V1 8C"juFAsXFC&1)Imop!.гn*.,qB)p&*1i *f!R< @To`uVEeٸyVRiz%V9^goy%pK'c  > 'B=9:3,qNa,քro܊à?Jvb"}vTJ(j%e/dnuj.A1 _]_ȥ5b0E^2WtvԷ@6H6y٤/Ltc˧nE,4 Ծ%wzmZ4Y' U3AE@z Ra4gBdžzT'̴koӦ5]x:5@T! ]R*JϮ)^a80=gBYbe.L=У9k+l9$r5Fy\\k z,1 SEdկ6/<4+xT# Y$R>LC7Xfr,'7z@y2S)[94-`Ө\+~ʵkIzo A11+ ElZ*1SOT=> ΚG,;jObXŢbŝӭL&;IRhh7$-nO %zN40YͼC4a=%~ǚ|AC %eآuCQ yE'=*Lgl&Y'[m0"5@g@=%'(&IAZAٌ׈Sf ~^<4LH9]^Ph(Av\M;.j0S Ŵ{>lڮl̫Q*|`s҈o-PYeӌsE O..ad Ol˫՗X!AϡEBp1q!|'0,D!AX?4%%Yb2L@׆4$Q0i4Ǥ(¨}Ӱ5[D,߁O<;vBxp6ʬWH0{_lwA.,I5G\38jd[MrK#1lqWѧ4lKq]GjSc,$Z)gBZ4/QR|Qǚu36l+͖>p8ƔٝDCo`0D;1Da*m@'jOqܻMu1U I6/鎧#CWk?%ý@m\Rxp;2EN]vvZ!gqy@xQˇ7W6pFYG9oeH\NIcݠn2m_#X;b38AR^tEm`&׋v⒃SpN0ҩRy䊄ͯp&Qw0IBsq@'5LsI!/D F/"۵E=g\dmSri2{mZ%*QI>&q#5_$ h͹ZR@&08+I^ˮ"HԅBm~3(ŹBl&0g튃U,%x0Q+r'QA0֪^v:` uw ߽K|]$+{  !pzi%o ߛ;& BLr\ 08XK—Fyhьe7Y.dUU{cJNi aRY&:\הb;02m_7+oF>';5I읝wPVA:A <5-MݹXKpIfUjOR.wV߰<좿PT6<Ӱr3PE;sꚷT,%IrЖAK~NKر*fr B[PKG2;P7]~,Ji~b!2ta ,f :8Glw#(|*^lX-8VkOr]@|ǺP[L[8;BGy̳\J8d5v]{[wnFϿ:U›{0 3[n]"&¨(-漀\8=4fWΧ/{us6Ybn io)1„P2x9Ufa.4֘\Շ! t|#)Qfm0qq:*%UC>~~#&A.(Pԟ7G:M/+xǾ1=̅1@LY>ZhQ١ \o9cf xT d3W`R(r Uԓ6Ut"#y K|=Xz7_QB7|c%癫_uV:}7ygn2,1%G/D$QaI9}gGF5as+cgOBdj;@Dts!c h@HO*s$~%Y_]@\3aQ*[Fف'u`V" Uo8$DtrwRkU˫y 5`{]a|K,C ȴ'+6/GH6rBG]/wNUdc+x+f{ Lp'DǪ*!kW<ïTE.p{;Q ~ >[\U7<`Qa^;FWR!Z`||ɶȾ@5ď{zN\3Bv®c9j yןZ`m#T fԦځ^kיjx{<^ FtZL/$6=RA6쏟L2e8Wab'bSﵥY5FV+wI\{sI5.dsfļOQ;LE>=^o#wkeԄ:ź8h*oW`V#ob;S ɕL>#h0UwjM݅I– MP0ӷ\JU7$[p$e?zgG4DZFTSشg+G'󾞗؁M |yZd,763ml>۷f$~S x1*yunIP$" -׻M*?, ~mh292p \Q.>]dg/<)S5VyYMz2i;^"xlz]Pt""!xMN_{&:{o15n&84$})1Cr6X2oSKqk<ȍ+r ,^5jtH$!Gh $жŨ #w4 rk||/F./@CԔ>w1-sϪy'ݶ Cts:(Gck9#{o41j5rۙ 7HpzY3qz8  )'ED5>7W/?Do'b=Fgږ) YOJ+.Ե>-? [ЎےZKhl;vF0r)d 1 *J% MpCt|;~|W=t1UY ;{p^'@IZ,&$D;R ʥ]B4fDcO75rnRkNqW=y˟1$9~Sjd]Nf2ZtMi,([]rGN\#w*=fLQGy)4,Hz3]3if%)ij/|;LhD49||HzI&!V'ebxUVח%%Uj'^Lۋ]SF;r@/2QT wU?]biXò" zDd,Ƿ=|倻K&VuqUu`/~=tOZ#3HO{Aݜ1 )ZЫd [j)d$4bC=]Iv@F)T6#UwAbEKщܦ6'N)my!a(r8;\k<)>Tcݹ"`H0cY)rEW*7tMQ\-|{27'ֱu{`japJ}(U#gq03%DM_ r)(uf,QV)'010T^iKT"?}y^_Ln" ҙjPϢǫ FPcFD6C4¼wݬjwcfanٞ9"SXqQrQϵT=x3 !eDתtx)Rs\̼ }3$"ѝ;e)}Q`$SÕt>Tk" :jiJm)k88-Udta}1 +;NsItrɢ'w_TkRd{av9HN՟~o*0irLo&HX߆Y|La2-j#ކy>[-uguwեܜ\ccM2ZrI4@u!o6zzGy`3=?ɇGB܁&wIӜ([U\84{ c vW}ž>n F&() {4ro gUS#tų%=V`iPN[/!ǚ^|qk ,~t~h~͐)odOM->ډsXhX=4: >?r3[f Jb&=YFQzv:r6*B7t:ۣ\eiRxlF).8Q$xT)q 򓽺5ae%17E|G2V'q)D\ͷaʚ ]fo>i[$gC_^`Ra *wlj!c {aU ZPF!6̂?g{U+!;ͬO}?.R#wbTM^#JI~Ea[竽R1?=_`Y8 -y&^;E< >:^ήo͵ʭE4=>;]8* r%n6hBMaT60GvOcN$ ú[201 9vk3MQZ[d fssʰr惲8Aa?0iӯ>*̝o,Kj܍g|Ժ;UJ]ul ]ZOixp:u{2=Zr;l " fb_<]R;ԡ޲x(0S &W )|5qjQ-I4PǨsBuf73+9AI?̲Ot+qOƵT]o˥ ԗF.~@|y0WԗސC_&2ۇueM8ŪQ[dGTmerkx.?b[A5SCSb+P UV!ӮG}IV&%ґ$=yy * 7'_B~ǹOb'pd]X2.^I0Ofii^pE?(%j)je_[EmFZ+nݾ3ɰ^Љ_d`FO jk7m;}a#Od! $,-&^JJz;8 مx45eORp8bP9j DcDL+QH$Nb 2EcURμG\ӫ EaUsi$ `*Kojlhk)]7UGүnby;Bu!NXVySA!!.!rђo(_ w!#`OxH(u1Fqj VKT $m-YHkh]SU{zElY27d壆tVZ_f Ji)[~NX浚M`I_<˰,ڂk/ls#. 9hI 2K?IAgN*㽃Zz- )?$ς rޒG@Ztħ_l9p:GMdN^ ޾i泴Y`y*w'2o&D4 ləIU|5BؐFwl`PzPT_uŏt,b`gGyl'(XA2;[n=PѓKݞw;,fj l7t=~';ϛLӔy#"n_PcLs7b8VaJ4ĉ3 `#ɹ{Uf '*p-BuJp`A0Ŝ .c3ƫ7ݔ!uR2ʞ7-?Ff0b0]cUHybf7d=}̱}g1I%'“κsQ_|Bc:kx<=U"ro,j8NwD=ɲџ7%R; d|g1aZ'\?yIn6|kwZ$|-!zs"9{K- Yc,;ߓRW7Z?FɁ4HJwx;ҳ!'oaP҇m$42c⧷_yI|2 ydDdt3M c1Iv,`.һ,`:hRuL3I p/npY }S"^L#Ht([3[R/IKENߠ,`1>"iOi|i|sX$bhLޕ]{ci&rmsYWML?0KQ$XtPƾ3WGhqզգV:Y+wN1p REF1OmlH+4Qw֧Ω C&VlN~lmYO0 fRaG.Pge.CБyk.U5CO@s9NG8%!MgkA yv0;N59}CF(My D$#Pf S5/up^ Pؙ| PFz'bq70..<\_.?.ldZ!X@5W'¥0wG鋺K-[>MT? I=!VxUƕpK\šиVqy(µ =rjѼ"*MӾp^,c-tc09Јk<xe`LIxO-9r])V 2T_¦`!t"N-1ՒkUح%Iġ9XU7@KPtP=XUu;ξ˩WqLqqpb{wF'Osy+ O]̘P\ )TeN3gni.Tו?uF~9RhZD&"ϝW>\8GoV"jIVe[QVf;b7mww-$\:GlRD_7C>Knsϟ$WE4{xʋ, ~+p<L\xG-') W4ҺXʷ;bՅЌKn,!qD)c<LefS.Zz5FdZ naF4ɖ:&{Ԏ00ϫ~.i=4Ï6AOO=Ƭ2˜Kp1g*1ʇh\0ÿr!̞İꞿ'k3"k Wmr?@no]t[ptڋCtDb ' &韓d$@Şܔ-=x.eVN1{AuARF`I~Qb!FcΪ]]R0"ʾs?t YS#ޫnM#{g &3{CZ\*HjBEWH}\FrʄT ][ɓL\z; W<=z~ 3Hۡ_c}NdY)F+vudR?$cU_Ox˕CQYJ.L)&iź{'i#v5u4ixD7݉? jVjdqܑeblɓ(lamj?[Lߛ$,]3tG#B?IX X}?׵Qi^fHd ̆X%E([ Q'=MK|[Cr({n2ʵ :w<Y>D: v{=XZGEti젙izƃ*b\'U$xF) J(|)??ud8i< @1F.W4%xܑ݉99EDYG˵JpzUnX_/HC75ԧI2J3;3%.Fd?G4(gg c]4D쥆j7F1Xqpix*>B/݀Řcꇛ'DR G/ h38ݎC m4Z9I3РNcA14]@X-L}KҺzKHGLް./| jh;sĉ}4 /8G{@}up(oFAxS$~ 1l+ :xeOJ*WμT%R.#TaHdMbsamh"r>E42F#;+K"t&n!tT{e~eAoU+܏WñƂ/]D!|x& CQ5V$_?J5Zԋ.xbt>:1`$+RT  4@n!9{)a@QO_WpX"2}ǼFELfjy2:O@Β8L9r=q\fJjWnOu D-I<8 X/4"3C&%ƆSY&i($[ZRMmQ'p9M=G;^0`DIf:fWR$LQĹe:J;z%U-q,pM芧 G0Oź}ݑ@bM0Mtfh.p\HVEa'ƙ6E'buGl j4p G율dQhޝ|ѽNe ,ȹ<_Qutxrv] [?x#FƸS[7HO?NfE&/M(a"U.%2WM][)I V5ػN`A>`.j rz?.Ύôxjv>"&ʐ*eh ۅMXyn\ReoV)kp>>҄ױq_eeNH\ՙkm@xEw$n=]G9#0>tkXt.GWk6GnH> uT/| w"k.xdjpR .xJz4LR.*PWcks6TAT:V)EKPIE+^ij8 ,04i{1#JLP5q'#9=T4Pt80ܺ(Ւ?0;wobǘvk#tUDjʋ |W HnF I˺yqZfv?'}qɿcN3}$Zq8Z=-<`*([Dj158و h7$b_i0 mH^dmmEC9{9]qqEZkc\P xQ? ̯HZIb./+F _^(A!;]@M-Q K')DML?(KSg <0|0~.~X哤g 1z*:8V",ݤy Œ v7OF8v[3ZIɱCy%"r?P̖NI}{i{7MX?8NbR!Wߜ?T_>Ef*:03\^.zxcx{WN2L~5mrǐR!p9HԅN`6 J0'`VGpkYDT";^F9z;Y/ͫ3`U6lczO-"`pE9OetSi . kC K0l}$>EOd*Pix.fmlœjį#ou]^`Y<Q2 BY0}ӭF1ݜG1na:F DI݆֭7> EQ]mi_<rV I=?D6͆TIfʻ]Y^^u@?ƆwG2diJ/;cφhjwA5*2Wu  i7x5q茦6یf9-6o+(-,랗!-*ő `@`|v΅XK6:-ch%Tȸo@M U1ȮT./S "sgW`|Au3  ;".X (c3 ]˜wd5]W+h2 BlrE4Ą':$k OS ^n-ZVlSJHݽ 4TǍ_k2|I ΚC'!|Q;w%FΔSFn^NyUﻳ*::嶢ܸ[{wP":z؊/Z꟧Ưv*6tN *kZ{QxMԮVfϚR{Ez,Qtv,,"`R$ S&3:%8|Ea$RӨd&YurDwlP_đAH}CO‚`*!咡;yxLyYC ۣ0c 'rK*pqgЫozY u]cͧu֊D28 5XX!3bO. ԷT;UjL me% 52ḯlbkYtbR m`s)9TYF= 1o%01hs]2] ɀ9) [,"eeP_dfA~;{V^'S+[=$i]_2zzhe%R*T`Ē։yvB:7r ږzBMCocM/fW%o+YLOVI L'uhAzK]vխO āpCxt(&0\Yʼn&z)75wJ<#Ҟ] KH>> 9=݁#`ar3gQ K;Qu:׽imB*./)k*\x8Y+ӭi"bAl~]$N'KAkE"V@Dțf(6f|]{4YqsZOR ̪n4fѦθw:lxo"_[L-"Ӑ2q;gv‰-@lZdD'EE)EWo\ʜnmD{dd./\I"mksh#4͗\Ph#_9)/ D;^,н]Dewao.%GĤJׯM8R@bZhUGgH m D@ NmzqG_twn}9cBg3^}%mKձwjŽkWueF!P`eNSh i;= CڙغGTcAfz/͚sدٚY?K=ӖJE(>9|2&U9 +ջj`Jإw'&EvċB84.@@Vfԟ :k{st#C("Bj{xscrnRi7Rf#)taGdd[|{֎쟠O }Ս1zz K^l:0t=i+Rg#b#Ag4TNzz1`\p1t^-v`ż~ ϋ®/(b-gʪ—zl6k1$(i)O:Jnz!٪O:d9f:^7)O{ڷ$֏Y-cPG\7Ce!5rnyz@~RIb֓ԥ~kF1}V<`Zn+ށX<ᵏ[{NfCsxnꩍkO9o ؜W> }OsaxYiXW%d{ƶO1ωnh:d-PM/kP #?\JZֺi|FlN>jq5(:Mōd @ C&@.f| ;)i^,*e޽ ,~H#%< [G@@( rEl/(rګP`BiF )0c1YDzK~F'cvJnߗށ&>yʔ'7rVX7Pqƛ9&VR.5 YfOtތ's (2%W8[#aHU۞]`U\oNE 1`b F'3"Gϛ◯oc?ASimV~ $Ug_,^Nd,gFQO;JߴgW1bg9d!QRlCu 3ʅvm%"'f:!8A$0`#0Zq 1p+)'p`<5XIJ>~]r?ד=/-K.6ɛ+T]KYv1( 0ϱwef]-fjefh[вg,Ec! ȎQqG٤E?NsoהyAUJ a+_YCT9{ {ã`O?2y)?k@m(P)ow Xue򜽡 r#=G3XuW6{0z)GsHBFJ=}`6_k5hy^M۪u3;m9?j迆Şwkjpc-$R-틦X-CGD`r\xnYLOw<>XMgș qf=LnLbHG#Q7 RzO9,xkZn|=FMٶ=~Ƶ&& ZOزs=?6_",oCh#PS5A.o8PQTbjwna{Y:XMá8Ȅ"e:CHp˾ b{:TEwl! nigcw} n]2X]-zc6Г>7Z7A830g}V`ԡiS^vk@ ]ґ!z7](Y8.SN5y3 oE$ Cmk(KS]jqiٲYuvyydQ:  'dx$RRH{n`B|#mhVo S!x ,YA@@}YxECm2T .1 +F̹Ǎ:Ӂй\QU ٙmcc89c4/Xf^:8pDnJ>,[7gS cy\ʚlBܐ'lG,Ìr )NX2Vr3T CuJ ZxX4Fs{jgXgp/Dq1l~~sU`x܆xAٔa)ԅ_bPBNٷJoz)Vd{.&oOn/!; cA32Z8ZEʺPӏ6f1* %O?Aq }XW矦ʝ֢{\ŞYA*0oke赂Y.{U?LH=nIfJ}%ط !x0 vL2zpz&#"zǸqK64L@8-6&K UO7 _;1O-<ѫkU48vaEhX70&7) gj΁s9Կ;wdz?_T܏9eֈ INp=D5@g#;/%-T6_ Z=>ۨCDn4|RH+*_~Rg*xDtic;h:Í8˘k)# |ϵ$|a5­crϰ]S|G#^$&D9z;*9H)ִ83Zq[9qr".꠹)>s/rGXuC%&vaG@e!~8X՜5A7`nbO&`G'$[B5[oVg\OP1[ 7:4%-q% m.3Nf׳)] ~%&8qt"q5B>^ b[AKiK.yo+ZBHJ.!6bQ^4[?^@fx DD/U9b^HB7EcF@YO$OI}w~yfcmA*ݧ`BY`znDc(!S? u'}{?X-K$iv c SG\\  z vl!'T쾯 _E9tx{flaf7wԭ *gqE/.QEԲH/>4{d`b遱}bϟcwBbSm}|?I2`ퟶe|OeCil1NҬpNA0zΞ7R݄>sF/p,FRzHR3_>\eY"ejCc sm.A3TWNa/+>sZWwN-k`RIE)/ mBm,%YBG~{٢Dl't FдBb`+sK6WJݙ IӦ @D1N\~/_ =.6{^}9o2֭ͱryYbP\?ce ,y [c^_SV&8iΨ>!GX"?IoXϺ;ԙx&h~VxMh?):caBh}zīzJMAE`8`Iu'W3uocցNrF0m%XؙeGZJ^I~z\mV 0}<'g^%g}_Xs5VKJN?^ڛ,}"SŞg~0&+ #ol#l<^7BĒAqv4 kk֕|V ?ECͤ; PMi)&Cû`a[A{ĕόE4ӳG]pkNDZTZ{@-:D8:!Y:`r;.ZVH#Α^/QKu<cj3!2mg@jZ˧U=ٛAp"0o0^ɧWbn" 3VzjftT_ mrRی}m)) <礭q@ DAVj a%H;TӎX$r5mn{?n{3RPT2Wȶ:.B{gMQM^עE:90ՠ{r ;0u] )Sdk,524U6:bX^v 9GRv9;11ܮgL6aS.ʧE83:#?O 6v>IԬgp]b3'_Hf=hDxցɻ[%61=bk]P[cL><^)3s]gM"g”7 }D6|>V`'^MVF2l)sĹC n2M6JI(4jbɞ]]Ux`"?B'P 'xXUGt9+ˠlP 1=aTn[ XUGd (FP)fbWHml^=SMWq '.#sȩn`.dC/{=pwU`/'f9-GPyTuUs i0_ϟ͌,DQe!؁T̘JCg) nj5{` csqU k9.'qB[g1i/up]W@5 /TQ\iW.~D"'$kgetXjN(W+2!,mhtДx#L] U﷈wĻ'ZZԏJJ?m0sQ G7\%OMtN.e )4CEԁ".!BeΠ(=O^pKp'ai^xxejϧ1G>ʶ4-"|hFT/ӷ7Ta^%R[b߾340vpWR2hQG[؛n6UNAG`Wr$iZ#EOMČ;U[nӯv KB C >#o~Se `2; "ߥ@9|G"i/s"t0>; TL2tk#O Xs?(J؅9Yeϋ/dC7XIv`Nɯ M@8`#e]>6ey^@gz<޸FCj>guK`({_d>OgH&0`Ou& "p%r:¾&! \ӽ+IO\0)&DK~] ~;܃DbkRYDW#_. ZP> "E>!̮:"q{QF]kv(~lsn#,'=$?5>cЛ`Uf37iye!(Vg_@R_O91 PU.?%{W%.S#vgnsAxYdbI:Z˽J!7"I5jV34@e1jh:3]_~oh.=^+e~8Au1!x +\j2Ĥf}1Usy7YVÒA}f5n:+U?LXXk)|Bm)kYAY$oA18)v*}WjзU5j-apl jNO騏5|[Dhnrl#ֿmex $UJU)dۑ3T}d ҫ<%H)JtOZmcbn}Zͬ3Aqs3ر0Y/Ɣ*[<cjl7E SF:@ew,$S8;J8z;#@^πZGe{)Bl1"84c'6QoߛLy+O@GvrM)@,0$)k7MM{lF0Q&9Uqޟa`#bdbwӅTXbIRAHPliy hUL~|gkZL0sINH:> `_݇ACRѱꇌt?fjrB,8꫻YۯD.i4f:F3_P7$Ṃ%'7%{Zl}!uP.$nʴe!e&nۮG6ŵvcڿmñ9;.bz*MXoRY³ʼn [q%K%Ö4VskřM4"vb6VKLĄrZ 8٧(8רG^ݧ[ۯzU=T>@6ڜFٰUկVϬqOGnU*WȚwe:;M m9*dj߈dzU1;27@AXFkѴc&XRҩbK BaX"K]Բqi27ν$ 1YARnGu}(+C9;[pYa(e%! T x#&" pj ?WOkRuXsUS5=P< ŧ_7W/)Whzh5D=;o !*ЀIt?ɦc@)ThdB\U S&XÉUB0u.Pϱ"k^mZN/wB} =B\&*UDzr $X*6 4}bj \-ZN:ENse)/(Z߄bU?>g /d? I=و-DS(7Lz`BⱣ@g9As' ^pwb 'C'8rC }M!܍#;"i' k(͖'zymΎ}a7Zᐟ-8vM?1v^YX,$k -UG|/@zIxNe r5Bn#/TWN F \ZŬag˼ij\Xǭym CC)f}U=f]^2&ր"lbI,,)@Ut9=(lai;o~~VkF/G/9?lu s OvBP4ݩ33 ^E V"j VO+#8\ԌWA 5[Sr+k#^P\+u ¿c}4PTТ,΄mJA0Mky~? :.%P:DJstVGNbXEoGs꧔EDWf8)`,9䵑VϮ־@P`+Sʄ^Ikvh oD$hY'R \X3m %K |C籬cB\ID/}l 7#C|>M&,!sS %9uLC?  5w[G4sMnT'] ]5 jˆe2H;oaj^QIx]tW 3O>w(4:{'u5&  N]i0Rr԰Zl?1N+o fpsa-,`SR4riwA:Tjsq;$&=ȵOKՍ NAb~oRk  $8gl:g'cD^v"T~АB*_S!^5@S\R!g S3[٠dӴq;lvܽ)4M \oV-$ 9d -< Mm``դ Agn{b]ވ_AFebpXx \% ]1cKB6F)H .p4O0@NI5z4iax`swɫDƢq ;0 L3Mt7,؞5qПF.s1_tLżYwcѪTmByT-"~SVy7n0Z&emzڣvUhz]UEmEFO:Sfcl +C797+b=H-1mt5Td]'x)YEB|n3(#ǴφsFּNZ1C﬛EcÌ-lP5PɊ8xDʑMk>\K㧝Ԉu0,GRVKЪ8gW)jݧ,Ju2$TʯKT},BF}4T(wi\CRJ8RJRo(cpὪ8=Xa\2l:t=#-;+•ݣL2XgO{B/ɣeuU# !0Q,GUTxXB9]&u>BJhֿq[%^5Nb5R  }h݀Ԙ`ڐ |0PHQ/ōOx3]c&"Y0cҐ)\|쥾`+3m1/ǵЄL[gm qL歉 r֒CB @O" źs2+:wFK-q(^bc QWR>{aUQ$=N(]KM0ĸN!?lAE)s8n~@ͼ* >xw@n5v"^% GLR,ͽ*hU,0柛StQEJ?b2GE{03NS ~HTg&$rF ,ODzkp ,[z\ T;J, H'v -Z<*jCXR ReG !/pAI'įxUDxNIS"P-:XXϝ8[?µn 'Hp??gVtF9[_Q ]Tz=PrkV coy]Ic3X+S$(Q^_D Ycf<Eϩ_ հ EB4@f46,EbS/w MFy7[%~V$ځ}D6'1W!o]2`JtE:r"3AkJNӗ< iqrĹPRQ&@u);r=gR#] |܅!kfZ()I mV,IuYTN?!r=UrB~;ꂃZ?B`KxKe|dbFyT Rq(Bm?i792Wn ">ӏ 8l&>Bgv Ge2t#+}F*w%,UwhCN:\ZdY9Zͪы7EpNh|'{8><G@;jE8m2sYKCk'g:Ct J^~BJpK5"]dq4ۦ9WڇE%bn*0Y",-6<M!y'vM+Uմa45,X3 S;U*G*Պ떗h1!x9<]˞}P$ CUF,C6PJND= 30nO%)3dL'1?vM- _r6Z;Vl">v􄜾Mm5dW8hdK M:t7?)]?ӵZ-i`WM_;Bjin5kUM2POF^mI\i?)tj B}iܾ9jypξ{ H;G<8mqSbV8*)uME`jCcRiG#5LPlpȫ"iZtM1 aCր%0D؁e; @ M]N*a x~ngl7[q18"!=WIee{߶oڬbgf6uhҳ.;޾Ջ,$hjVLRĿ͉9 UcmcO>S2: ؞ ,7~3Ë`,ݭz)EއR>.LUCz?M%`=}_4M zcvwX(gϋKZĊg|3ʫY=}T$d2"83r3@b dpCظqhzqx`|veJ2Sw|0sp+qDO_P$^Y]!a${X&Fg>uv([8UeضN[Ӿj7<*İz¬ɒ(zJu'3xkvƙ#-vQr䢀vDĔg@i5;F,--|T(zۭ}@V^BfSBCJGybiaSδ[' StAwʡ`tJ7.kՎgJa(-؆/%ٔ VȌdMCR)nrOW3}:/>)񤚰8HCgdTCjkg6$G\|[.̘:Y{rhGR8O8]] h sg .= 'W4ׇ#Rl}v¥Gj7\KE*TQuIpyEtl .eJ_-Z,tFe3Y06LJ-jžŻ/ˇn0h#o+Q ;XN~kK[2XSIgKUV 9dZKNPJFj> ~~vp(N9$& dx<*ޅK7)ԣ¯dKxKK1 ,:>̰Sx{e,[C譱_# #j'A$R{2zZGSX ;kN.`ok~ ة@Psr O];gƗz~Wbr6p~T!'1!@CgFϗޘz,̴O^~]7M+jO|zWg)8%gT/֩IlCRy6+ >@,ST Q4dGgmD[b=(~#9><ʙ_JWParUj[I>dz'/ T!*`HE0! ]TR<Ԩ-ּ)U%kqz*eج9<3qۛu4# |6*1tl=i}Z`Ёn5Ma.2n Xl=yWyKu;]`<rq*zˆiOls&H%|{{%y"+̣TNLt Wr~7$j7I2}ꩢTR;:Ekg!z/5֍髹)oaGG=U0ԁYOSMӹ`Scd>y#=ۜNvaC5Zsm{<@rzDyHvC,K_H5ṼA3Hug0Ǡi(UyC>X߻E1 IT -&zh>48a0paŁeb+u&(>OeOZ47\q+#{>a~&Mxxq&3~ o'Fhw`W)7dp?,? h%3aڼP4%$٧Cl0ԓb*$AqGa3CGōUyKiٚA(/ 3c|V7^SgFڝ!)qFrC@[`A)5c oiBȩ]'/hO`r N[0=}-'gr PIQ´' W!dLqq~ڈ_vDܩ}1.6N?QY縺 bxGcBOofc_ TJƎ3K,M4: Ψ 8W<^ag5t4o49z{) 4xZ)pN \FȸvC|fNH^[[n/u%(~Ɖ&]A<&Fo2f<8.?vm؉O>4b ɂcLI5/2u2Slj?a4b80-,7u˼"\i iul%U#lAk=J|jͭxzmJڙ+[+]З2V;d1 >^H5dCw y7\=SPL(&XxirR@$bJJ-H ҆FmpFWi3m{]w?OFEj\6n$F$CՉϞI{c'>%8}1eV TʲSX_c=KetJȒǾcUIDEr<5$fޞY"CVۈ/_e5IcMJYSrB(2v&|>!ZafbEwA˿7:U_ݠs:PVlp[e@8*h$Ygr(?rGҬßNw[b5f9)Fy&= =϶(YV d>4FRT5E@=ܛ sfY F_dZ3;7> ! 4+wd]21S֋.[/Qo {+ٟ N @" %d6Fkp^߭-5bEa7loF8qGY~?9U=6T`12p Bk-$K(5f$0/Fk3Y ɭܛT[K) ;3pR偦-2>}Gx%גwor#6=ʱ_}c hL6t=.v;u}3Ͳ;^9hl_ ë3~LYrU}lhp"W%QjήOK? V:@GՍtR:^e'28͕y UbUe>@<@_< s:[0]0R b!9lN޾N1)٘/8X0Z s&\$׉5C1wt dWHf Bm0a"=̉=3Ye lwa@ω $MOIOg>hhhgwP)P Wot~m;8>B ʑ̘VeN0<!j㷮ȍgǻ=,|-v lHzvܦY$eȺ9-K8:d}%>ۂp cMP1XgxY zBLa(;#޷JaV`']W:HVy\/[̞p;ğ.5ǨgXPZӾRw'h=&%mĊObϤz3Wmo4)ͦb%8r+~&esaiIɛev9-wm3`( cYv}iHs Ag-8~Qou@*Yi=}-(3$^W(# Bbɔ6Kq28~h /3C/|e>ؘ} 9i|z}Q˼qՏ="~L0Fn=%TdEDnBe }k`FSzcxY|}#{Ye_PW [#2f>f#Kpxqi07$^CQq >7";60?ZU`^K{ =+%b|-1FjAwYRo]U!ƻ@9J%>؀.{ PT'Mכ?ߤ1QtD=W H ~ f- xq1mvҘob=PRd\ei-P]4$<]%PR(*5{8j\#ljXdxntCs Ѡۘ'Nela`c2v~1L_\X5פy 6F{<@yĂ8(!uUqIzB0NT| ZzhB5T>O|:ZµH^HID[)5nU*li"lFy3INɅ4F{4Lr[=5 'H{EGܑZg$'J-#n$ lߪv\Loȭ:)CrG}*ZYŎ[3-"WNߩFŗ)uҊs_Uh϶-8eLcEM1ލRb63c8ֹ>V0cqdbzA. s5b{GL ,R[+kX UDVRW˱[ucDɩ]%dup!Vb ?Vݩ8o?gx-cwbVP] os)WIwj~[tMlw)(ݟHLZX۳MAZ5ܕz֒WLd+oOn#jղ ؠ}`o.Q?罹 }ؤ}:3tܶgK;?g残TPSi5j&]' 4YMXU)۳3dc}")t;*zjsTIbN]{e W ]'}ח:\&'Tn=aX hUTֹB' Φ~⓯ƽqwس·z(4Cbn  ϧOˉ|(>]($„ XTX)UDm폰U"[˚ Qڼg) ~ Q*I[zp[Dnai[v䛑=LWn'2TӒ`U-.']&2VniL^\syd΄ UJ@.'b8#5ײK- o#K![|-LxF-m4>M'Z0{ډRy CFv(9nÔk2Nv+ /(JFQ ,N N\hp] GAJ*QQN>;ON1w XH.GBLˬJ%̷_V:"$ ݖح#0O]W,AaH1" vGMLNhiW;; !`~^zX=ׯu"NG2m#j}l ~_vYHLnq!Nz0X:-"ai/3'Sա=eG`I)ѾK+G11H=u6/c/!GIs\#.hhqz"bf]i=uÅt+a=sg&9?AU"'8$j4 Nyl0d>h} 5wff4N{a-ŋ7[,$kJjXY{vaY:1;QJC[AlɌw+LI Nw./=$$P5WYKA~V.9亿kҵEq֯b(ƃKS SOlV{+S9Y5o{gRe\%@N俌 Դ'8QWd3v >꙳hIp(m6*p<[毷vG^L[k*-X&sx66+ݓTF~>T:tr:ǢÒ^Ж[\x۵bO![r(-R 0캄JB ZJB_=°ӛHcZ!L!m-L5,B[Nս\fv;]0K14m99%`t{c и՜H}qK%S#>1v\a ֢ɵR"+G2`TXE8[:0pb^ddRHKO5;(ʒR`$ yͭrqWp:l1jJ9'c +\0/z7qϪ u32(5f,361> +zzhg-|2t_Rj(Z٘,߾{4|&rA嘵ʺ)/`9 hKLBQ[3KS Q}(p_|d#if7IŽ|\P-m2JA"5ˡujy (ٍ €F*ɏZ)-\xgRs\~IJCص1-~(:WSanuWm=yo" f0sхR&B4t $*=e3RkZR1cdWeE P)ږidJ*\AԷSa4Д7axK@e*o DTaRԝɱ_$SKLjnΥN َo뤅)hxXNY֔a{LyPKKC{fszC!aOfJX0ldEvy:t\I.Qq\+A14 L$˚ꢡ} %k2f4fwN)hưN&@"sj9^UO_"0E+Miiy2O/lȾ`V? a~͟-ՊkZw~:=S,E8Vn(xkPm)ox0ApnIa~3"@Fq\|QUTd 56|j7(˅OXqi~X ;qqNVB X1B~F[튕%cCcsZ,`5(H{i XrA9c?yilQ儷d8̪퓑(RPb4uneJ</B9qCWeMdKk+ }?'\<:NjjG '*n镢Cv8^A#Ŷj"5dg@Dǩ_ÒR><O䔤Q9Dv(ګF1gIСԋer wjɻb.6z.Iă"~PPԏ3Wۍ44M7͐lGn;3geCz_?/O^e#Ah2P?ЈGKm6&DE&k-Gwř2;Wg=Z>HQ6 UZw {Z/SC{5JPwZ ^ mA^2+=[9]SL2qA C: hڵHPJ$u-rzJmP'r`0;b3pڔx|T :ˑ!y/>`&OweOL%eV:&M`=p Jfrb` ߉T\-oDK72em' nCP) "rlľ{0~1B@F ~k22"i-q5Sw`J(5+|7]b6-|I&*z9gH,=Z~Fq[i!Qֹ:%vX%/inWU-YXuUUBQoY0ՌvD@, (yKDJ xbArŒ{7B<|mCҩrfL0K:,#47#0 b)j+/aĸ@n0@/@uJXdTuqsaW"[Lȁ'BFNM'^&BաѪUNV͉vqwgLJ:ѥ&Bs/v%?,CӒ(>( ~M@)drĄmWw * (A f\{bOBln+ɋTz fd&gXYV PХE.] YR4ߴ:r>eAOc>g(h]k7=dl0(\$yFĖFtPH;]r<\RK1['U͖ }ʞP=Hɽ#DS"9Y%2 yO8,s1HшY.Kv}+o+ro)Ϻ}?HO4𡛇@t/2ӳWWU]sMxLg/05⍚&Or3S %Zc]yLi&xD!{E_7q~Jn~Kxtb~p6΍9oa@~ p䞝Jś 4 jH߰HG!^|nE.z) )C7ٱOBq,5obZZ·*#ˮZWF\-$Hp Ne v:1$G(u Drx:{ԄݧJԿs43E,O8b2DƗ ~AA5i5[s5vwh8AP@iN3.?ԑq:M7&3Db6sETEXg&^ᐤ~Fz٠ix%!bocwt?y!BIDEiy3v,{S^h熁\B:oҠ}wEZLKpm6E@GwX UH}{}8i1AI[foaM ZESYcf *z.9U#ǎaXB󔠷K)'@J CeI.|g 7GKcm}E[5< R{| ON^ )׺H|wJ_F؀wDo7QsMAn;4#H YƇ#O𱝌eS3xJHA i dnDpN.cJt#Xl6膕b8ddBY_,"&1F܉ɎdBQCCQw^e/ m`5K0@^"?#c*An%+ \a7h`i;EыK&꣎t SJYkp6T5`QCӔ5VABvfẟBā4ChJ D 6|o+ $D }|nDZ"s`][#m54%i,C4r?pBqB}ۮc>x9rYϽ wH|QUn|7`b@Rz ÈIvDTŹb41z߃lؿ ( V4r8묬cQΡ<$)-Yֲ9]l]1~Ó~?.ϙ|}.^a7ꉎ' {4 _okrXzjT&@ _fys#1*IS7" 'FaќPϤ,u>|Xv/] ;xi_v(AfI 2ϦY?un9BoG=` qz 4<Qu/(ZN*\˂u]eSOݮDpA2XS;J[lgwL9*}Eg;^ ]1᧞WNz|d™BLhu| u 4C>77B bT->ǺG z]s Ɍ&D͐7aN[ [3|y ܭe,#Iw`}*î9mO`lgw~ӟL?~6tf;,OO']7gQt2d^=Ž؅- F)'/+=?sW\3DY!jq)HI7_nJN}qCRr~mOH)wO,9I>7|֯_ *6PR AeŸGmE-:ё54)$$Z3lwmL ҕ@$CΧT=d=aEf 7^i3ΡO|NMl\@G\qҳ#Z-  C<1N -Bt ~N"94m bgʚ:6,+4CwD"\n"-ozٺ;WlAbmߚ@ܺRͮ@Ow6Ä a8qδ@|o$"~Ŭ;' ȉ:[%ǨJgAUlcJxy S3])h|6J[YoZ@AGf0fc8Ma5~Kૐ]&xk&،lW,(}lGTI.8]FׅeV}H7\!؅in:,_^gş57?z[VtjCg>|ie[ZjЫʹf7C/hyMFeo TG~eehS.yJu !DrOΣN+@:;|6]}3\!'K5E*K$\tC몷Q8K^r90" W$f:Mj-{'LTJRy?T'{:3q^doe$Ėr-}ާ*|/|2SZ-u}hY=[o@L2,Mw1bV_:G5Y"$5O$.MCzBF2uM~0 `V~}c! ՅZdfFF`D* 3s=?rÜlMж]YpCKфŒ@]>ҍFF>Sxv_̟fUl ςB?G ^b߾zLcyj(ׂ.+8-6(LBTI,ޭ<*gEYnR;N^zE%ȿ`VOb)xѫ\ O~WO,?qu|K]?HՉTtaHE99qs!Jp\Q(EMj?} ~)UO]Fp } B]F3d(6佷 */(.퓞\Jˎ%cnp/n6D[^c*<% ƶmVr62U +55M-wBԓPׄ պOB'd&xFR9NrJ_E^B.ңXp=ZSX7'JÇ7Yh=-N3RO(^gH .^ 6hGYQ̷pSU,U[jg+>U~&$>xܛޔZ.)ċc 3pͭx s|QY=S-i̔/]>4 K Eh<6ʹwkYe%GpeT)$Cyx\4-? `zN-#0RQZft [XݔK]0^T- eqR=U}!Qe)1U[O)WNN=րʢoвIH- Okr͍ y)[;3_іFPGh{@5Qj4WU? ݳZ0d8ћ x[Aߵo[u esO㇢cK <:xIbT ӬyK+\FGg͸3?BӛavtYm֛hFq ?w7LpOz.A)s^ }u%o_ےL ޕYY"*K/%d{65 BZQE;k>Bl 'ph x )3AׁFgUR.]0d0=j$ݼvCFU/?[B{|!{zLWw8 ..sżpBek)hYp,Rbn -iZ;HNe235V)30G)]qyߌtë!B`N=efҹtgAŧQid/MܩNYc,(3_!_|Veqh4BEA]97!t,IWc,9j&DJZ|]lCX \.+"ZCa̳GI> aW{'==="WyK1:ycu4}*V<,'d7/ gfitb9(#X>vث$u0T̖S&3\9t$~ W fcEKU7N{Ӹ7v.X%RhE -pDQNsBV@P$PVUor;pځB MUJيLe][< *`I\'U:mvmeD$P2=X ΗWlDQ .ad,%ޠ\Pd O~(8Y- S=Q3-&spD1–Zi v\yuv \qv!PlV\Tq7NhGl/hu覲ƼE[peT0ͺʴ#bUK8mX־o'SfE3@GS$H.2فTFh6'RPbJ&fX}[0\%Vv =wBjqT"H 킏l?4(۞nvQ+PP2b)`(q7wstE.ZCCmk\UQ-A 2HCڼхMLgid: WjKjCB`LelT,LGF$aw\؇-\(w߅H:^F]lK~}a,PL&N1 i\ρѱr7kEڧ9G]Wh60e׃xɚɥڙ.rGdkdtV&SM,M^;>%sڬە.-?-W(c-TR"ϲQ*v߳ xc/:Щ8&eQIBt]=Z|$,O=G+=Qf@ Dǎ߷  y@V5S/ubpvD-WVe~k=LբŅS @L\heEN C3> )ڐ0ҷv63SXd0eʈY"g5MX/eI=8d"zi5ׂSW;bIϵ]NaQS%5܅ @zWWeYkMLshTOχxկK!5Mو_"p.)jbxخJ{b#;,uHw.hF~\HfMSYT|=w֏.7>N"0WKq <f3 =fھ/Z`Q>iJ|DgxWwǞÃf9 <.ѤKw3ì^i;%Q+B2J![bc'H:4/ju"GGJ٘n| Ue7T@+J(5"ķ_y:Gld?# R1)ʔK &q#]()Q%F(o]9&xWL7S|FYi9t=٥ȭzu>|΄:oT(8_Fuk=Ԩ3|wnnBLPJ4eQg- ͣ k.Ou$/${E)mx%@ ݇s֭X±ʦE7@D]&=̭WΓ"BNDvX6o "n,XEn}VUz:r^'cIMgFVV$MGt"~~KP£XZ&Hbmlq>Om(0*L bܓ|tŰQ1ÓW&菉9reqb(Ld$P;4Mk0_Z_t:LƯ}K IO?%eeN%!õ[/JF#ÊrOx'­؉Op`*~]|r/И*LPqDhTH]ŢDMLGӅ'+S-C~Q*V$L(miA8Oߌ۔`׍@ %eQzfŏ}C~vu۬ /:/rsj&W 4B&L3m"KMCZgYzp_tn<<6CK۷\蒵}ؽ!6`n&dE* Od:6)Us0- M0Ua3#H$ dJg$[,vq5՗5'lokbjvգn{s[Sv"![{^O3E~;FcWaZBqyj58b)WyqdZnKKAi6b$bL@ѓ.5LGYd*+=ZO% XhT(ٝ9A_h4T1E@EgoA!NQW W!LA,j_t+eOLkK+.՞E14>b_+a!v`F^4HE-oF븇s3d5Lt=D(7%T6/b\$U^2d)TNW?KEӞc1|7 Ar-s=~$w`o 8.thx zmcj %K|$n\z3)ɠh[Tnsvy e>GNogPCGA AպrtǁqB5(LMTߤE@vi33[>Ր M&F-F0R!$sGC<(nǣXR8ѸֶkZe$ YmR:Yb}iímub7IPӉ%׺\,1ܷ"bCEbVTW-?!{x&V%P[&XC2UUˇn6o% G91PiDCq[i>ꅖX;v*%4[*W@٧Q$;x' /rg3Q}!'֖"./.~aS,SeCe2eZhkxE -#p HC./\Z_cO/'))ߋG#%U>Ȯj^,B}i1f0Z9]owĽvx$ݗA}u2WOM6_Q`R7j=6 BD}gLVn@ӄ:LN-xs(0`E |~wg2$Wj7BLAN{E} սJ jBeBإ~xÅj/8pf˗ȧo`>]~h(:/ 0!4AOƶY Ɛl}҃\fK!͚(nhw-6犩λscb] גbv|z/17IzqږZq1YuAK 7)|$.d-3UjlqS %Mˤ=?cu׭ɱ2;^ S 0b[M QY Vׯ15Bcb_S.WawZՙ:{s_݅Vݭdºlٙ ޣ*Q^>s  K CWTNTRf8{EX4qa kCWGD]ڣ"* dıŘxsqd^M:(]-CLFÎ/k r[D hw7; xD56:iCL*)9 7@~|1콂RiLC:ϖjO SFrĮ"[ex _<덪ZW 5ziOg{s2 ;t Y"xͺL/To`^(DgA5ՕK  K. ?#-J1OL*1͉:5Z)V0H( ¸N'yE`+c@on 45'\O{o;-T)ו r_cp&:Y'8μn OOt߅(K)d*!¦ןpoczp`I}{ kkO\7q#Π$fB#40 b5<;1" 8Mњcf þG974w$D0ytD:xB`%%vHU0}6 **%k1"@+`~[-TQ{KL S3O xrAwPfEO Or\ZKA6ի[\-(wdO_jDN=@pB`O@\KiύONLjSMg+u!t!F&6H96G! $+{ך:"!' (GilBh@J6 3(y0nvCM?؂l6rխ -xrGc$Q[L!Ib= 13썼{ȋ5 \C/*,mQi2)){0/`.` 2TJ :'6J!-}XMXQUD%s]ua2z[%d]H˧GYR ?<˄@gWH?Zm}Gi.|.}4N^7QހΔ)A> (]q8Ë7Rf-"ݳJw8xQȢKv̘(ۼKf{.]4!|=M\^E[`1S_S ZjGy]RCnJuSfq/㸱'aS#ۣE\i'~G: )=I<4N. nڏ|~6zuNn74LrKii.1A6.K} Fn~)L$X$}V(SБqX!y߹"4Lv<Ɯ/ ZbFւTzO*\ݝJ\\~ {m84LmrFS(. oz}~3ąl hN.9>26Ĝz4g Z mܝآħP]KmQ[[!4μ MW$>jؓz74 kKKbtGjsΐLI'7^:udtTvP]ٞۤ3GJ { S^MN H'_ ]?ѝ]2b4"` r| -eIW3[k#7ccKF"XG}e "F+\vMVb>7fmi[g+Iji;xMG:Eq8ȫ%A>X3UL%w/%ǸPLQנ-;ZF-ybF{*i}u\8?JT($N-~g]8$,r^Wg Q51z,7$-o"&kޭR:Ы#ḙ̈sDuAai[+湋m_@7W SY*( R8׸")q@s⸥t vF0W<Ʋ,0l OU]b;!%LS*#?Ƙp\:'-?N0Tm3B#ah~j',#3ݛ Q-dyɩ7UZN]$DJM% q[83@Z\8S !&^btJzs8e/s>> Y{U^NCz=`dm<,.`kJ|\'8z5 ~}n*m=D& MXF#*=Բg^7^`~ m }囓 A9%~Ahke E=ޗqy\ ^L .>Jw6y;oe#Pӫyd (37~8J(A:6y0*lc3F›&BV fǧ\ܳ۷w6'*Ek5C2IPʗ?`MĴ`6Njߎ`$BuV{ _U7;=[1 jv\7v P{lzx#CGɻ ( ]<Ff&1.|KlWf]B\]Jm4IbW"0=@ RsArK.#磭Ŗۤo*EPpB[G.>"B 3wkr6i!E1 >˞ 9eZ;$>sKR@wzEoSt5hn:v@%nG+un! :b_.DwGX1-r c"S]ENwgeV;j1UE€"RJ>U*T!\@G-߱P&|&fqT1Fx_ 30muehμZ-f!<3i&5.+@TT<.ɷtYW~YHRVb-90| |@R))j;G(IQ)s` >bүslLȡ4mH$0/КTLP)bt㉞ĺoŸǕ>mXcs3Ξsp-!+^^em{* 1 u1ڔnv"|_ҴVXT^,IPw9b&Fr "3$isz偻'Gxz?r*Lcv‡Utx] u:QeF*:.g"[)+] Ưb(;B&C#;KӄlHB5IHyT}IR:g; @N[]g7m~zUl L<~(f.f+`ң%L*wj?D7ep0H?Yd7kxjW*QI ˈYpV8xlu4ΊPQVXr *w-@5: ;1"v'jq@Gt J~_{`k|g0L Cy[xK2;^"`NkXJ<muXn͠>!j+כxQgw j#]k*IM8#Vw|]إ7&f_%Fj+ě)W?WC["n cuM ndǖ>l2$Y3Cp/H5R nkdKV\#xx !ySci.Lw'QTY u:7:4}y%-wAV~Uu5ϩJ#ЇXEUW|ѐI_/uW~ <,-pnZtLѬ2Ș?fnyBۣ"5!*&j 7p%Am`٧6;#]DZCa/3z6Ve}Y]JȤ# p5h3ǰxE[i!X(,J^g xWlF}Av$RvUB`f[]WFq}xc~r€-L}$҆x:&F$ K{VȂ=TOA !dMwNvbE&X kiً=` WeB%;`Otdbn!ovy!YWsv6%_ MգYIŴbAg/}KnFb']ȽEoQ~t=/ʲ:GSް=7ahrT--'/$DXDvq֘MT+V+?^P7.}wϱ'nc⌖~('. Wqm# u+}xHiR,1)MŔ/Y,I8ar\G_ʃo6T@PŨe8elzs@M`uϟ!F0S҉?!c9RS"xq1Gv astԍWbZa,!3h@,@T}G>ߡ6vvj@TWm/T,yiߥwPyG#0[[9s Xɟk\(,9nTP4eS68/As dXd*)bԨG^a8 M{(ln GB^Ԣvү P@vս9Nxl+ RL%b:>la1 Qu?86_m.A_o(,ZyOHS;;&Pb@dkaO!u}YPa66e3x0hOyЙ׭]IޫlԻgZT,d6(?nJ}dO 3qn$vDش9C͊j G'1iӂsy وn§Oqd(= KD?>2۴6; X'՚ӻM`̠{Q)AwD;RS.!  $/,:Ҳ*w!lr N<$nKo`A/봹\d% -ZB %btje=ZM~%gwg@9ʸ5*#؄1sqĕS9.dy !2aydA  >,o=>t@d$Y9 Tw`hKLM[O*Z]ѷ2p0(,{g}P'ww+=qQ)]kY$[^SY&!0 F gwFz( gNSUPӫ'N ^:f'>-4%p?VWXVny]g-y~$V-1(mUYtC_rB-gmJt&%4v0]jB&lFp9y~(Tˈ,(A!^(0:~vDf}z|!s V7 Mel.IOvMeȲ벋tDYy ŷ>&.N^&JOW+4;8"e o^1[c?e\xf9lyfd&5<_/c%a9aT! d&aa/0oNS&4FvXV2 L h&a00tb$S\v38mqvf  |[/RJHCƴ'~ȋ104G8fʻ%>eZ[7L biZt_/:Xw7W[ɾY,~ˏA JLt=SML FģMRmĈ׺2 *]#gЙrA"PoD!CRx&{Qbb*Mf"B pyiޠvU>,KU-Wle.C33cC$'ͽU24]]sS?'c{(\{IT Ka_-ė?hjvA6=JK< kh\'2l qt~2McdzaNj)V_xCtë>fv%@9Q9VWӯfNF;v)]y!V&-ϝ9*z,I(-ZrK?*ޡLhl"+J}$q L8,t=+BQl}p`"My;_N5M0?# fq̪2l4V ؏(9]:b[2 xUu-o, IKbnwnS蜫ӷ\ 4@V52'|c2vA7)p.:-܅8!?E}Tpse?! 4.hC&7ԍC_t,Up=9ô)el'̂fX :k}oy^Rv>IlG4sH^?:H6 TWg3O5{:!3hkZc(F%|O4VPtqS=SRa!d'/U:60O'{Xym[P,Xcw(!DH5;9` )n6l~A Sہ@5/2x܏t ]EP- U؅oW>un!x}>owMAWԺ{#/Dv÷ʙ^A÷+J AXP" x93EL櫉[DGoI ]&<aMQnex- |c0me.V?ї>s=pTd'Jn;(f,pyA`:($\?aNȕpnkcH.nr58?IFg`fu2]W(7Ʃ2N\P ?h!:$hptu_g%Y< ASi yʭt9mmi T3CC@`qQRUKý^hO[pI*$bNr(f2%Qz,ڏG E.zzڽw+ oQ@vdz$\x=Axm+sj2GkHTM pvjC2utRjBJhO.&w]MLߝ,> ՛Xܤ&< UظC]0zNJ D;mOnoj#v}m9m;)?ŐtT?hd纏eDX|ih#FH3d "ʮNaUd܀&m.=O05^K)d*|Ccf][_wȗ}"N5ӷ MGe5@֞Ȫ:' n!"L_$˰v(A _6bZxظIp5 i[/]Am|WDL9o#&FZ]!y]LǑ5#AI¥.Hע#rћx>$x3M51ԅXPEس VZ^CiTvE"A ^I֯ E"v#iK2*(~Ik=&C/\U'@? (HF as$ >QO<5<}u'G*.U,7F:~VI=VwA{\]( !L%zvbU a4 ZbDwF@vm'LeaX} !zq|r~:v%Q^tc28$UtVٔ>+:Gއbav:ÓG?!b^5gsdԩ>d4z %CdM+H.?QyiF< bD7 :&ᢪBRC9J3DA7w,ٟTQP(tmZ82cvs;/v5ѧ r}iAO?0SmX.\1 ^HߕѶJ.kyq #M{{]T|%{rAwS{bQmPaIwYR8GueK \fs.+3y rxG#җ#x,G7L[片XO+d^G2 N8mdzC@ s3KviuM1ﲿ0R[h_&Qo^? gWHo9Ɖum΀QS¿^C_BjM@O/݀s-kR}r:$?Ǟ8 _i|k*_a  :k?H x^gJߪ;}գ,ծjK":  v DEq\!eZQ ©I4u`ZXsJNt=mWU%(s6CuԶ:8ic[=Y_ZIAMsjF"22L/LxdҎLgc08i` m /9"7΁:aBHU6Ҧ)UK.~̘@1pb6 Q#&ALZCNnYX%c=o02 &UiBڤY HQZ`42z`YTZҠ'Vr#Tt{L\ty]݈Q?\.3G|&E9/,IBlYբBYiz鰞VQnڳTo[y>IaSVҿuDFtDrC$O{wSF9YcW9f.]f {rܓh:B}uɢqlX *sAjЌ+ x_W9KHF-[$wGM-G8^[֜G[^AJf+>.~`0x\uaFpf ;0;T c])(ĜS3wX o j;#Tpn7{m^_%s04l{mTTؒ-uqDr8[Y]WhXDDDUx$`앻CSU `'f$ןovC N/f1oښJW2G˩GE 75ABZmȓȻFyD)ٜxhsG6ijB oIt %WWrq &5 a-5AohH KԛƎ]׺W7Gj#C#fUlLʶ* R>+L^oN*t5NϤi,`D|4 `09Cf<\'x)L.+R=A6i3ͻ<a(]_vrtO(2Q!)@ Ž2]IzгnO3k&OXD Zy },G4]V eCdžOjxq3}{穀lY;LMn~`h}U I-n2AM^6I^ ~coB&  뿏6U@ y}t Hz\`hpuɌr|}'Wn5х5lO ZeWĨw#j#`Y$yy*.kmI]=cp0ѬWG]0)~4PkF3c+Q"5v($dP}jG>+]ĚR1Z$1C# `咜֤٦g$YEt9>\o <+;+Ln.5hOO 2=+jdR#T2őz^I&}SeU޽r=,ԖwA~aɋla|i^ 撖i)Dcjc8|iVoёOj{7tHǝ0F+T!`uqBz717Bjapsb5PN? 6rGnsɟ+_W~MD9Au$OtxtXY3CRaehFMd C%1"48V'Mll;R UcrCixpZ9Koc/AOtAxOemSl{RnPg̶='3u;s*Mfj&Gku&\KqxEUMoqXz y]ɭt~oDMt68HG7OW F1:sLI_nO Onrpy3=%"ْѩd'o`b/q4buB^4oێEKj'yXOh*Y>Lu&7/~ʎJ8wfw8?@cqĎQXЋ/=ae4Z>>F齔ږ̘a7Q*P` /~d/j8ĪR<oj.^x[8E* # s1ףV'A05iK{$nk}Y^~ld9Zmi6ՂQ}CEcY?tLܠJ&U#G%ogwhNnfumӱV~ @=tS -I'{ã7FΔc>Wb ._Á8sOhZefD{4gkj4}E7q J 7ZKt7]8,|c `;Nݕ 2)3]ɾa*x= LST.sh)BF,g)ﻑDM΃AO}1ɏ3&Swxn,&oKWB|\bQ obѱl:f;隂-|$ 1`B&r<_@p{,M #2k %oD@Cm's\ J!L&s L? Fѣgۤ!JФi޿X3 +(ITgHV+(]#-PtpzdN=*-/n)'KaDBxP4UX0V J(+jK[iɶ9wRl#d+= l#\?(KqB'?B\' mX[Om! nv  "(Y?OJ:~0!`@IHT}gJXtym8aE̥G2b3q 4.xQ5+VK(Wܥ͔n1%^S[@pfP JdOBǥ׭=Ͽi8Y%v\*XUXHv[>s9PZ' 3]ݰphM&̏U~S!r]$zT_caҞC=bsUT\ƀ"tXluQeV 8n%;.*oRCp^q(i6"=gܑ?v 4#4SAscI=LK E`}yHpmMv~FkM^F1$q /חvэFQ6-1<=T8V@!E:Kw!ҺncK Ѷ~a4Ǔ}4kvP])jӼ'j8y[mD#5gtJfئ4!ln޿8^hiH)g->B5q:.5V 5&xT&@Vi?!VZQXSߣvU~+P}~9e(6U0})WGQacg_ɊAo:aM䃽۔˝=cWO'{Eϱf5<筅6W۰bt.x/=( hg? åУiz, $@^Ó D^KUXTAb,d$Wu x>(q7&2 ؠk$ aG *SN)^v,dKzv łCM0pa-i 񌯼 D&i؈! }ryTBQYMl;@dŜe7H^oL6kKuh_VM./" HʯJ%)_+6|17n1"`nA5 jF2h+ƥBHJ8GyrhvIS6\zwPBN RM@wn5HQ;={OyrDw k=#r}] 1-x?d Xu_DTW[;^ 1ns#]P..s+۟:1GS="¢Q")6Hv xD_eo27uAuq$2٘^ /~,gMj9@j$>:/DSIGV5d)9NYI^(F+xwMR@kM tf(v5^Mᡈtp4Flf%|7ROw sď R_7N,`AJh$PvAlԁ)wz6-,Zz,A  quG~nCq<8޸$ӴNh'/R'gkn5>@FJCg2F8緡w7 kMϭWXg{/%O7`WthJwbc2dIɧ.}m %e)C/ԲX%(l4+~{AςxH- ?[|Hұ/3Qd+6Z elTwz%i}sKt1YR"i[ǿzCQU/Sӓ5)9ݠdVYz?V ( %߸7Տiv`'~.y9/qn!&>1fykE$Y_LrL9JC([W  6/Ռ*7 @w&LڋevXgB'd1gT$VQHֶgn"[|N}揅%bߒOuDRC0ߔP/Hj"/#AP<\z0kWmvx5û(yձR !vo%'6ZwdB چUY3[NJ( `kSoӴO$`ܸ  蠖t/;WY4B QD2a!VM"j; 6zsPC9LZڗ>ߚ|;sO'L KM_ѷƭ:Th!q?5[nd2\ⷧ3~5 ۸~wq*MK:51ըgRHf+eB6gg$[gрCve=1Fx@$ ܟQda$ \IC fꛚM.Gc0--V6`iCll f@QT"U‡BWSqECjQJT#][d+!FâUml$f$n X/ר"ajF_Βս5 G9!]S$UU7o&ٙ.Ԝ ϐ+m],A&$_R^ʣHsr~gWK; wsм@Fu+%ܑz:f~n @B2܌XqYN4tзaz<.Λ׿FئTU `lV+C'>Q{cĻY٥l<s'H2W]߀QX1\-31?wP RxGOz9PdW|U ?]JTH>tA\*dzq7x_%l4M0'5eH◈rRGޭ\!MV|ЎQm3>S+Mbg7 "4}f(CF-"&<Awqd"q!PKJqPJA R ʚ3mʰǩHƒLG=Qn+Lv3|nZ"Sخuϡy/Mft/$o6߈x#ҕg|SZ1yY5F CĦpc[pˎ}=';$䗂(DSgSu˔]af Ӓɐu%3I@g/?5o˻64y'uZ!~ld̘QbrI m{O3dQ(S[(Nc0*վQ+{k$:zg&%7kS֋jo!/NMjh' kFU h;#%ʜ7V :!.lPά2WEpzjKnNϥC'{UEHy"rt0*{q ېkD?Bj\^Lv@YK ]e4Cm|D߁3gZ6'LPy_0s=4mK.YHiv_ J BeGܨE Oy ~ɓy%bT`<ElFbѳMzZ~]kvcX z[GbPZp`JsK_uu\NiQG- ahtP>ûws@Y7[ǣ&B#w!)%4N sb @K%&^ Iԏ;.eF^ 5wm:XL]zY39,1bovI&+_e#WAt' xC^ dl^TU{I>ml#DilzoVER9M~{N\ML$2H0&z.xTT"pmx\؅\ADɱVl yX-Sjp8b `{ﴝ,':D\!m9{H+Rug:  ͧ)e D` B[X+}7 V >CK4򧐃٫i nчćsi?,'@@-%Ksqj"!8Hi4o)rֶ)\?gG'!qɪ.d.t9xmj$uƙz kYi?~ף OhBmXy- %nĥi[fDgR_,,`^,T%L#Ț{dz"Uv[UU9QGTUox8Ew[T]oB\ʷ @ժ_ݧ}d.@D dT 歬~||M͑sTSz{vS.} vkXC7_mmRza䐵q Mc V*`_h/iaҊq"y m|ΏDTv뛚  6UƬ96AvgZOIVP'cžU_2;G"Q tWw8 bweruZCגnze{ɝkHjV6 %ðش*Rh5hm0v2awτ_gVRb0ޚ78RYghZuDmyx/X nSسTD ȿ\|e&XʕMZ"D" b0`O2=ak*Lۤ40H[9_56 BD";jW6rNtRQAv_J~_6F1 sF 4_RTb0<\ ,4Yx%-xPHi5dQ\f~ȯފ۸oKh}d&FŸ OmoZ/}'_;l${e`K}ۧ<D|hb*̊2= &\)Btc5E [b.Q5ao7ڕ)ĩHnuMg};Ecy\ޝ 8Y徃dSi;f {&ez"FC Yhy;Hj{yPlu8YK"H*f*lbrZ/]UA{#i٧]L,yʞ!~2vi;YtMc XJIջ!cDMj3,6Chv>!NH ٫76:jK 7'FMZAM݆!Gw *u#9oK?G[j7XG{ׅΉքIf^^Lݿ0GT_q1o 4ޏuїg /kd0 :ypTc"OwNQ\րS!ob5n'軈;D6f2$4Ժy%0 \@!լ`eı#XӈٗZ%MeY Yꄘ0R։ެ:Qs&253V욡\5zVR`ױ{;0j*5KKYD d7_>#Nw%Jm/EcE׭ζ?0O%&9\>.ܞ[7kPoVoNY]-Cq8/'=٪ ji$Vk)/o pYߋL 3g&X;΃]=z:.9sT$M2 D j$_z~IqF4L6:Ζ.ǺL?^NCX(?7 &X/ F$F`o0!+> ӃD8u2TGV~]jPU ĴonvU,kaQי:q@roYuMPjӦ!*YR3CF2`)n,%er(]ɹWy\B+;HHcUt')@53Rq^Z \+&uie)!*bxi XyiSXhS4I P7lwPu⥇;Mtަt H&8d߿] M za}>ɖg_fAۅBpaf7ڃ#{)v:i$`5NV 3KBs OaмL`Y<F?x%I[_zydԠyq$dtAklt-Rʣ&3$,{O&=.(Xbmsn9I>+xIirrbn*˜~cެhT]=dNã+g>vrxLA/upd&w?-!]Aaw -vdl[N[f(NlS6NZ Dw!%!L&5Rz8R-sx@Mj 0u!.mq(qn{`}O8Kmpı':(Vo.sQFw%,GHƗ-/#{Ai"1b PsLa@}Ԍykܾ &1j4.i{d_)0KqU]%51hj;Tc£~5 ]ٍU#ăؚo ar+u0z!*b oTbXpq(.zuH6xco?PKWMi2_g'BjuƧmdhk8;d(1RvxvGf%l* R򽥝i`G:{Vv~wg\\e goDy}l گ@M6zBT#Jx2` YГ{ob@gp;Q+aPuSRwsV}\mU.^':N~8iRlHRbP/=18; /,8j!8R8_E^%ϖo/ayYq >< 1 G"<JQl (2X qCFnϜ ]%3ާK@-o'9>i1!Ӟɜls/9]"藕VkuGe1 O-*~,8dW`w͏(IҸOA3*4[՞q WP+|P>pU)(i.jP `G[QAG\4<c.Ŧ}vZs'/υ`H_pݿY rJN4,P#'YieEvy`7 t$rdt)~mVKKF.T;&XS"ذE@Si%By0b!h5"nyeo3?1=lGƹS+;Rxa9.t i8<lncԤB7yw3@tffܻ 9o쨊S_<9dΟ ^>>wݑp%ޝ^ѩPHz.euGk@ ;}^5]p qѰ8M,w>7ky Xkk/z]E3ag~UB(IrA2zX[]BУ^ Iܚ^%];sRgPrlYЗZN^&OPa3LA7㝭N8c =z(b =&!4J͟]PQ =ʸwIH-On^3w[s S=e%@ȎI )h%l @bpF+B&J_ L$wQq Aל^F;[ 1(΁|SÿN\7>Q2ܘK!'O2DMN pLm7f2'eB"pcq6wSydoLqHL ZCֈ_05w9ҁp>'8`tԂA HCS@q,xYBо5zR/qԾ̴5l"rAs6iO)R&G?Wz9UB17Nي[mҡɂ= Ky5//'-- vk tᨘ3V֣Xl <14vr ;=!yuBZU=SSjwzԁPo;.QB{ݧ圁}SXzV ,CGS+L-ɾp^L쿃 arf#@;B)>`a|kŸotg8;&BېKUl)n 3Ulp]C_~~DJΰOL(b iL8^а3Y9&yi5rCAN7{W2(1cvDPʣͮy}i9Ʉ ieZ’y\CAV9b?S~9[bMbn..寑4K'(ĒsN_;Nz*>0$Wv-PИ-_I tI%df}3Om O0(<pwAP/k]{3;q%o1+_8 `I YW8j 8mi5ՠ՟q.%Kl]sٿz4<, j ' K ģ79z˱t : q䚈9JP uQRv<;t#8ɿʍn2FAFt&"4`8yDrx4(-]S 0Wc_YW6IŲ' 郫yM?b;ڐ{ܤmSOhqG0iP\?e̪,$Xި!,MB!%Gt?E,z ?R CCW{d:Lqz`X:Lt$#>Q|%-gP[0(: 3P<A+ΕL$Y}5Y`}IE-;eV@F?[hoc'n7^f&ZRc8#6<ŌV} Mnz@l+*$X693a(les_۴ =mkȼ41X\ԁQ`uNar7ifh۶-P=I;A/F TCR᚝He6`IE~0iFde]o T dhXI7¦vl_vRN @OnTx1W&(9AK/LHۂ*=ĘC^f,5[{fq^[<ϊ,v nhuDܣM5Uu WY궒 1/An0=]nT 2xILUJcexcU傸Z\J-I W^xWOӹyh2dnI9/mG绝[9OIp:+b=ڰ]_L@=ݜ2v=PqF FR]$8, I1r2w(?զ*I+ <ը]R7ND X AuD[b䚔g]O\ANtnӑ IBK5WͷWoT~$mBMt0+v_EߍN0ԕ#T{d/.T5Ck#`*dN:EN@61Ž|j?dcwƕAwNQ*j FOWuNd(#G}T+~fHUtm, 'o}\[R|L7_t7Z?:B6QT4hFi qπ>_Cg?X 1ԢBU}䫕J(* o2hQy9_GM?xbD%HȎlٙZpYa-s6'ZZwF|'v+snTL \ohm|U%|Rz"*Ԇ? ER 71tVwMb ]At"Oi(iGꪰ{ tD!YIH8:9Q ւXcV_b ~4eY3,x07】nLb&-u#fS'+6Pn+Z5J+#E=J~]ҰVf8{R"i4a YNApg[W@AM4u7z j:g".`^Q҉ڝA ҝR J%楉V(r]薘d!Du'S`Km{wcHY)TW=85JaA8𯙅5P~ǎ/Xf$ЗPH|z :ޑ(wx;e.TxQ~ y#7(>a޸@ҷs$F7;M'!+kBJߡX#,-.S4A:ut:bXV»ht'[z 6Rofd uTq)>g/6&z"{`øm1\ϮSΛ46* F;4dV|ay+0F MVӶUt8H,Q}sjҪO5?f\%R9P zd"mrrv[sN`:a_lИ!ң.B"JNp6 j.uTO6` (?TwUi/կ >(ƧCCZEK;:ޢ:{yqI9T}n~z6»$ T"M+7l,KX 4RJ6UiI9M@4O#/Y\΃#1b"nR> F]Բ,D_pj*=,n"ؓ[2rƎX7U@ ;*z8y0&OT'mSIr;G#la^_n;lػ~ _$@=S<{ބiSYi09 !:_ خL}YimRX\jQ&Юqc|'V C煚1MpGH;2Ш8TafX^ӥ0I j"NkEe5a0YBV_9<9M B`0ע=7L9XDBH+2c:kI]߬*[=d #oNn{ 9L.\: ɲh(Cn%~ER5W_J!}K&r;Ǔ")M.!@Bl*+^MDQ}.ZDj(Zt2a@9NT[ Y p+4\[zD; C>XџY,mt#0{]Ԗ5,:]{Ny~.&!U@8RAwN^ЌNA);hV=:k id 0\iɹ.ijS{ @J6DP9@Y![߽U֊|ωU6Vַ?#~n+ nvPIc *SM 3JrCgfIL -fjbh$k9Y0Xj=14'rmw6l`iw Yx<`ZFDZ;/!E^z-61ymQlBXu|k\t:^^0wjrm t w,\_v^zW:<شuFpxK7YXM/Bn˅o5@Q7::3+OΪsT/ )6h "m:YvE ǶΡ8U?p2,fYzA"bz]Mcdb,zXH Z#IF{|D[K@,n.;/K }ޏ }2{N[" =9ꤧгTgЗ_3\f+=t-P: 5}5-(%Z?ʞ{p~7ce췸hʤM tW?d~'ъoql0 ʂq]W\/ >%krd[Exu'!#yγYu˫w-Qn_tc%+h/%:s2N(D ;)}?b^k=, n;B|F,/2)(Pwq D>HKOe'!;XͩNjcb5g6NQx}Kd=z[P885Y3O9vxPE]-{ >"jg#dz].[@_Kz j;_ [VAD:̕v7kSmbHk:d1_*TBG4l973?PŒ籦rD _f$ToïW^'y)|(6Y]6zRݱcX?1ua 9r-C1.Iqwo 1TYqR'Xu.?(pg-ѹTJZukA%iZ}2|X>?^L: 3i2K^5!OETBtac#_oS/݌ 6'\~=Tf3m-C҈L.R0&CXLLK1j8dq1*-CRca=\tN_EΝkӧ@ՠOp rQ3 I~1 'z&xcA4T j.-K4iV6tG"ZʄfUɑZAG!0D DaޖE*M0LJ<󡤒5`S᭹7-'QkˇI/V;NIcA5T 3*)r:m(8<:̟*>$1T2zkL~pc;6po4r;e[)/Ś-g-2g 2yFqyCURD"9S*)W2APxݥmS6t4q6O+%M(V! ,v Vrz\)C9yd9kLz!-=Їj]ߵFID"Y`k/b@V *zHr0bxktZ+CӢ`OjX6vsȜ?V&&ܬDA~")W^%u}Hd(AckL=?(FM7UCQXtgc-Z^i;*8?1Ilh_@"`QkXPH'DIšG d,2NМGo=/@ #[kr$aȹY@%uw8t1дt]F0PfffbnM0zsT;HxWv1eغvP^Qѹ+lWCxP$lpZ[)T-'$F.gr"+k) 6Did_]W2,c?'(p%c)n'L?ԟa8ǂqof,03LJJ 6X I *+G58@QcVB v(Q$7󆄔E|QUIqI{F2TRb`\`UzB6j["\vkbY]ƧwBC ͸Ǵ-4""L[+^s9 9k8,t _.TC@o2(̥l#rT˞JX_/A۵߹6kxhE(ڡf[hFbC[Mtil=Fh<:p wa:N7Aӑڳs/rFӯsLv8'd}[^TQH 0TBgoXמ?lɳ^a"QQq~衔8=h^\bBzn˖hb9`TY(@،}876;!bar4_/dpBz勒0E׵xG-cf:l@AI2bG& /+`mi ـݪ \6.33 83R[]3ɫ_M'lǠ%/:mmJV' l.U㸔6Z2YNS>R*nS9O#I'RëAтsDRWecEk0ST`##КW*G:YbRB!fMG9Ql DoK;[JG*Ymn]09!L"NHcyzwMgyԣ!!e t:U FywWqB5BOz8pC7>XHj#6#\1ByQ'ڎ9x".Ko_!:՜ok}w؝4-{lZ5<;N4y/YTn/{~cP9Q[= g,TV=UeLd."$b 82/l͉Uwu@U^.؎~u*sՊCy~ @ʆ]51~"RtC־ W]bT>1S&JX-2U;: }nkG@Nc>Cb2.|]5LÌ\R zȅl{5JԄX̋G4M Iyi=7x s3PBǤDiRf'*:e򔏵?)*/eF'T (Ol/M#]&l .zlR*`r3;N'L*0ʎ丂G PzZ*`_a8ʵN2|84WВyGT9S9" U1.PQIZ:Or aŪHGPR%t;!teΉ^#:GN,jue^ -7w5,՟mvw>Yr}].< tE+):iK\C&cNlu;=9JL^@5܊@aɯ}fs?Dex~Yi@̧¹ʬHS S1JUD֮c,+K*]3{<s0Ϩ8Q )I.FbD0y2o#%A_ \϶a2KNYveL.e2B QB=_й"Hixӎ/F>1y+; P9* Sg=Bh-k9H]LxțKh#O7e㋮/ye{_q478t8<|\UlX j_1e*&c,=O9kU]m4T,yfnsU{p?^X5O..CY8fM=AF1T]VH3HH>.N]חl &&b8L^jAIE \{* vLbF?WАbPR;yZ``LPkJl*e.pp"T p QCG&'E˄mS5Oy@D^{RԪ^9h\kVf^Dk?KQf @@E$.]]ƁDkiGDO?^3hivHw Q> 240uPsI:f K+qY(Į Hhm|BƬεڎ^ \]"tl} 9S{ j'(_ڨKQ'yA8e_P zq7δJ3n:k "xGIq@:ODdg+PwQ? o>k陿AGqq!ޝ+y jzh+['Fq{:t(D0.5 eH7Q(c/UɆovΈ/ 6(+_ߤfנy[KJAU+C؏SU3N3toOc8GM6byWa.~f4C]{aDiP+p92\ט`d>h %Cl9LWȠsuJ-*fuZq4e2O:!FBa 23 ZT75KcF8 rD.lpy}eɔ"[Ko(;-zN_l*MJA{SqXE~1ZIDlc/+iMݏ|mz(Vcw!BVX.r .S}RyJ.[QVp. pHs -qc #$u єZl= (PbrV)ԈeuàJ::HLS-ߛ6c%w8~!rGvyS%W{"\\6:'g׮f6aк0'0td_bw$yv5m(4T^'7 ark;.ip1D Rl6({~~7OOM8~;C TrgTnM엘Ho`:JhTҚi%˚o;`ܩLT WdY"[ECеxr ֟;x]GN+L3U 1WPOaMC_(|^fEɋdA;WghղQmHЍ^q @(p姱UL,E5#6ے"K"qFa/$xq>Gb EFA; 3) dIE/^*$&?26)MݸhD !ЄIHBr'.\ֶ7+-CE/@ǃ6^ȨMm".%e[0nZ%D=<"ڥ fS+ČcLc'皬z۩'ZJ}4j9ȑDJqCpU/ /Q\cU떷&82̺779GuҖl/Hey]@,zOE|auh<)/Tu.v%cxP{iWCDNlNic[3"Gb/ Qc4Y>4Bx(>P+*.sRnߋ~`J 57d D*M/iRӆlL7fX4焕㍯W˺y ,d][޼SYNGRr6?Y :a!ՄJv e$z znt##V|,m?lka@EE,XE큐hW^5&?}y#]7:IYb))2b*kDn<+3i#WX3p2*DzJq#Fm+8\g[)]䟄FBI*uVclh\Uo[XȬ*J>bZdA3"XW:ZXF*kׯZb/pJg/Hu@7OUxP8[9+'+M@zX@c|Y$}90`4wyo- D ;e)9^LRBC5F71]LØ(lqfW<%%0u2v^E ͿA #jo2xo ޘnZ˭A o3=W30vTWʂ \'V_D̶aY24Qx }Ϯ`FDޠ0M~y2u+\x&t\>m|!~mK4a1$ έJS*ɆEeD#SmirҘִlѐ\uxJc)<pH@j'eP,kt}&@E.R͢[O|lpT9%lFxs8e8AHkU<oBxD<GXFE;on-8DWSA*ȼH,67۰h{rwTy zhdE~$Yn^ߡ6 |GO};ΊG4=({a%WiQm%! EMrx6BԝO755.,T邔! YT{FM72 ~zM RdQrbsMsZzȩû]J-00LNx:ڑCH菟>$ d5q௯u99<&\3ݳw-qѭ8pS0SHW11,%qrN{YASRbw_3nI(#$GOsMi)杢X^4_#I6^i QsV|A@ڔf I+!7K< #UaD2[ǒi2Z6(y:.u0gNe>!DUGolZl٦.2B~D @AA6`F0n'B)@N.D?[-T7k뇽^_^CCGŊ {(_Ú@U8tLF^\LXvN7`yT '}ۉ-np* bp!^*wU1W>ixt'!G-.L]MT`"ng-dg`SH~+ z$gRTۮ [*M2$2J0ЃU Ǯh"X."&׽HCYuM#MMJhK+kt涫J@L0dEԋE]-z"dA AzFy5ZI,1JĩY8gR BBSX%"s$O\FqqQdx''UqevɶTEoPbr5W0>Koy4Z8y6CPEfgLF~TZVTdS#)zWsguػ- UԂsL%5+~(>7RRtlt;6٪Z ,yw8 vl_SȞNW0D`u&1:n/LaO*eլ uMӘE^&3P:K/'uMwd]ԑڊr)n :W9f8Z)\h6u9 qn͜if.jc߅Vm(‡_\nT5%y2׳иbުp$G4#6Æ)b|GC4Aw;dhєXpz OƄ-$O5 :uX{9{)쒉ܦkOL(s&&+{Z {iEaP1Ce]~ٳ/~VIsu=>B NkĹP#=h01E{9ŢZiqQ%zd8$:xuT.y`-lWg #0Uإ{Yo*qvņ_ _opCb:2?ÖAkP?*eͣCqؾ3oe(t1lĊucumX6f>"-տrXrXP*RN:Ca3Zd.UHDu򄙜)Z*uFwo'5&gK>OoB5.19%;:ډw~hd(%V'7a`e`t?YyiHx.KUevu<[y'Ȋfu9hNJe /5L;ɤaU$j,x2N~/7M YUeUH![TeFTeQB_{<xsh-gE)[Ryi2teW'Vk6~Kug;}\ID?x Ys7sϞÚZ񮋖\DI \^iŖ$/MapRFv 6 ,Д)+Fh0T) n'7٫{GPgF;i`ir$p\XԸuϸ(G % źy(jp̼Lw " ],4=L঳DޮjVPѱzr}OQ*'f[v*e0uoz|Z*J]yKؕ_DK d0 muvh K)CF>Yq͘hx(@1NkIO4 XM%DFuM;9;AQStK}.mGknJQh^3}&ve~}=P tC#sB5 *l=X+K2K qI\$Obe IWQgNDʰ+EZAy0/bqAC-׈dyJ|spoC.p]y ̨<9쭲g/T*Qޗ0}*Ѕ}قc+*fjnm+ )KͱaJǀd'[-lu~n:1|M @ym`lLM/ݒȏà)Jԍ/Fz  nh0FEZJV+8-0\[\JB*ݺOd ܑ7xvZd<=F;"_'=ײ41́/mr[x'{bfCsn^3;ꢶ('Uk!OtuO3n}ߍh`\rFҗ*K5<-nW tE#9l;rs[ee:T$=q72x;ld-)uR/E mR/R/hϚ\+yQtIg%"lW {$8LwRY_G+"g`59D\yƧAvBkyv#0 }P |nf,[FP?ǘ0!;98+ffG|c%yRx2432:/C6;PKxb YכQʐͥAfAGgU@;4R88BFϓөqr0DʱK>DP ԋ;/$FU$R!. O<~ cJOQUqLUvxhg:ކe(ë]st `w{wS5ZxF]ݑt )! `QR `JV5…Mǚh$e' H;FZC 6\R|=hb]@cO78. K/!s퉊}>_U x^rVUAQ3m_, _^p:XX̲Yb@9!U?5|^Lwx\@'7|揮WWyW ]%֭S$/bab xp-iVo!g>כ/U|xXSHJo+*v pr6/!xjs'QN.5>ԫeqv/c2^.聕/<nK?Nxd a_`sWLhKWP SasKf6%]Cx98@P;vv3_ٰ̄Kw/JR7%h|1P#e$J%xi 7R YM^=P0N GinW% g)#Qo_@>ExC (Z_?tY Z!v%vsq8A aP+Lj%!)+r:|1PE߯#T{VUE,ך1wn(#ԙFԗʆmv\<`(*]$9O26m".c2 =VZI 9>ܥ_"# I[qu^­d$e3wo8U؛BڭWFcCA˯aY\?xfo. :oj^14D*"P:>%Og轳.@_0oJ{mHǏf.;2󚴍NҔc&g~@EEJ`N[q?ݹ () N-7͑usdPr8 Nݯhy%nH?OH?dĴ\rSr}UVunߍ"{OL*/iHhoFJtFCvYW=qOC_ϾO0JΓ)JeYKղ΃k A.>ܔnJktBzy :[vpgϲ$6+gdt,x}S efm+^.% c d9lS7 5i/<>!ǞjRs~c 8 F3dɊ(oaTD: -S2J"(<&^_AH(6L crph#[FD9 Nsov,Qaq t mv(\ D2Ң(KB7+Ts)1dΝ2.˪6ҡ8raO<qd=M8-y(Y ݨZ&.8 `L𦈶)+yt~ʮ4unq[C_6.Na>ci^^m>tZ q@Vju%1jtome}ٟ$pTqNI1Xc)0 -OZ!|6WBIQU ]r_5{pFF LIIgv}t~=YY6kL4#w".u/-$tC3YloA%h59OlcdK=U'd"hyr<8z=/E*mJHJ)10=F7IjF1qFC7 l!(pE7[xKp3U~WU66Іm^nQZcX2'A*ݘmzOw[ 9KxG#QԭuM%PÀG5J = HJ[Lvo)2_@N4bnDUTL}? w ԤŜ]UVc6 HIq'ܯͧ{7h.qZ(*>/!!d)@KfWe[h΂ů 3~.v?^91 Бdpa7eS|Oh)R֝+rXر8RK5_G@/JLMW'r=dߘP`܉XLV ЙhGAyc0O)#YZ0V^ ;8+]J\߁J%);L7B׵/y7{,{Ap۱ SM!\&I0cIUQQh<6zrjt\vv60/_~F$klWU7dPYxc7|z3-_6P:\|RR,LYYm>Cd. Mt-Q.( D*tgxb}cQǫJfGQ2 fм3Xsn;Ig8Rsg-_FPip8R)QD%]158d|ϏS!_s"3jf@F?MI|%EJ "LFܘ4H|םIC41.7QcwD>.-> dh3_`c:-d`rRbtb(Yz1H txmj/1dnҥ;$0`<ZUƥ ,wgHcex~:*XqzW7#af\Dْ!l|1f AR,q.!3Ϥ%jt&CyK$tRkyVvM,Hw+* i/x?6pO#̯GlxHs"l)/LmV ߟȢ5~#u;aqvZk:IBATq7Nc)>;"aD-hᛤqAgj0q s}"#eмfDƔK1[!vQ P!m$xjJBb{} Oi5]d풔uⱎ;/bDƪ>걷& ) O'`;j1-mQ ;3+Ϳ+ whާ_1B5t@vCʹ2 A4\{k\yוRc{eŎH.JzgtA of<=12[4fu^NTA_>]VY,ͅ?sP;Z;M-b1uCK;,9p_t o"Ø71]oXZK^~|e*%; &yv(8ly_/TO4TJ:Ϊߦ{^ij g+B@|SLdxeuֲ&ך|c[V1I^afER?ںC($D9ȷ]!\ 8[I' kR>s" oOd4;:~Dq8}.7۹cgY ݏNFBXۥ%Zyx 9KGaޭ :mz*yJ @V{e =ƪ:Ņ r}ޛ}vY8c`6aJ'7'r#%}@?OgLl¨8凴in{AdiPaSЇXXܘ?str/ 9}6i<Iv&5Ȋt#!#䷤{b3#UvY8 +t L\r8,@F\sy!#i\TVPE6`9UOZEԝ|=²~.\'bҿDcl1fZ%Tnbw&$05Y§ +`Y;(|h*I7^6QM&!+688By5)}V zM4{v^ a!`.kKi@a3Q:\e= L%=јX[ c#FzK&:y~c[Aa6N% AWoa,L'bG"L;ө5o(_?tD69 ' ?rԧ޳ho"F]iO^ rJcS./6|[p"/peAE-H-Zr/jZ:'QS_IՕ` V07('J}q,iZDWУ/g6[VYP28!: (qNc8R埍oϰ0V``dnbj R7}]G*`$ zgSXV,K։ fG}سSβz(Ze$͜#*DIuC!,ɾ{:vҗaڭ\a.}T9ŵЕ7'[٭]eVEVNoLiqXhO!"pC냵 5Xc"W7}EN-DQ|zel _`ic_P޴4g vp{6E"3&QXe/`@"&C[$Dd%?T@fز]@ST6)PVl%!%MT5_YՁ o vgwXsK%ooeΞFY=݉!2]$St7MYmDP6c"@ GA@GbZg>p#h9Zȩ7u.+vѲ4 ײ#x:iup, #C6=:ٯK= c/ǁZ8\B}[S.<6wmx;w`ewydh Io“!⠌ #~ґnqNa`'FqH9l2q<Ξ?CpPh i|nⷓ& p,NgͿɼ=a*%]R:4GDx~q ],,|ա1ͺP@؛ ]H2>KtT2V׍ jL9?{I4F6B} -'Uße &fK}]jRl Vp qO&n4yOmȍϚ[d>h(!3K\E(t<\F2vRG/fEQ%3INraU+-vc|?uqErԉ* N[+kAIyէI7G̾1wXkDނV$d_5 /xPGa֪.UFX&ڤ;bwf^y-M3 !J;N#rU(5fSvZL-/0 G #+JBڂ $̿?V!jJO"F_zN٠p句Ǒe!d n2**^Z;,3O4ХcZі5XTu.^,!b,R9cww 5: ] И9J "dg}g 3ŷ姺[AíR%@ % MhsuuAbN𫏟icruLWajEO:k$&v"*u8=tn9jc (HJ4o `}ظ;BJSw$XK._gfghGG2e 'OW)G͹CoG#ePۅ}S%5Qu*'>19YzYh`>o=WF\64Ba9iXAxC/X#IXe4X/~ .(N/mwXFїP ;,Ƒ~nL6P7Canfb䲱smxwH5 DrJ ^&b]N:|?3OjzH w&wDY˹çv`5,[9%yo=f謾DjyE0c-g_MA< .hcw^Cl,f2b̪@BGJgK0/9?r]#5 LT!&T\VJ9B~ۈ'ʀhp#aM* _#ҫ.| @]L֨0rcF`hhkV 6ͭȆ>aHŹipVc8íjP>45bb e+P׉I+k`KGO8m|a'${d&"NZA u~yWҝ3q* Lg m\V/|d?uY?bXìx34Wvy X(* *fij /N_cN߳x%;&S}8Yx8D軻v"=~˛ef4,N%URO=CFd5 A';L;|?d!0SGaIVS3ܗ,˚nchc2f+ɫA//D鸁sm; j#*L_KDĨX]iRQS;ܮQ1ma7s v4aBl'' VW13YzHiT"Ñ~2O}[ѡlP_.m ^4(O_>C_9!VQv8~oۂD]Q1 JW]+d2ʋS v eb j˹WhDw;U24p=DU dЩW@gJ >ݏObTyMIY癄,CӍ2<-L0mI=|j0( ~E&zMF24%G(m&_hw%`-ӸjJF?@Gy>o{4i.SԙWcSrpҜGO]ڿQn@dL;455 ˩#$+ڬ0%/'anr/5VcNNqPBcw8N4:3}OD8QL8lNuʏflli(G^_>IqI0kMF> u&}Pco}Wea)  u%-1ZdKLCh x_ Lڂ8? K7Q+PblgД C[Y|Tz)ƃgjYt"K=# u~iY8sc?gwn^Šx3Ԏbb`dS]Nngb*;Samki֐M9ΑY Ʋ&濗n XHb{ffv_6]biK*?.:J Q?]ZgE/9x tށ̡H >9*,a=}F Qʬk뽑q &P΀ܯ|$At Th1/Yݧ yLt?X L!Dx"D v@"\#J;CFsl#fN;-C[sz"˷Bv v%7+0S }EO] tL7umN6~jS?Aju?+\r6. I85PӠydM񅮔 Ӊ2Lɮ(T,h$u4$l<%LCq2mEdv? JU_+ zKP)xM0sp̈́`nW:S4bAv*b}zk 2lNAGx>l ;F: >m&]L2>S*1(`Q00t`67vccoW;۹mOzV=k#J|a7s)z8л;7tҚiۯu\-Z`ܞCJ&Gv"0l,̳_"yFl6E-zUw*13;iXuۨr.6}$ں…ge@=ehd38 +csXC\|;4p67(N[FClM#qp1ڡ}}(*.X/&B")qk]8K$l fiV ;6=V-#Il4AV$+ǻܒ\!Znȝҙ~($%n #ɺH'AbFƔ9dIP0:U\zVM}29@=σ&/Xf3nll`?{%7 XI5KհD19#^0knfo M_QӚ:s}Qʺ95vf\{&Xb^> ({dRA`/# ?.oIVv}"fYӮYG;bR_鿵$%76ep(sp.ovi噪}uWbiHp[ufh iڱf=u>k@^v݌_ EKwCE,+PRo_ңq|׍cDAI&x9„KMu9bS3D <h'YirnzҰ*)Gz Xn/}0xiVKxԡZJ{%k~ċIzߑxxKfK{替eˉRiI 0 E*#JYMQo5IUd꼡 LAGʷ8s:(I|(YfOf@I@]NGe/VK,<\>cKkb_ޒXճUkX* eeQz0q|v1ͅWoM#cw" BOu%-!M3(@[{nP䢈2/ w8oAT#;nOWU4a@؛]^PZ=R2gJJ56u=֜}@*E6pvy)i崛3K^7w[4PUn AX*7r4n,ôIP9"Hb-gc\3_k/9)b#9뷗6' jI+gn_4ľ "1L9 I ~ShZUw ( bk%F\)dYnF<*a ݊JܴDzsYe)]d&OÁQV{65ٍEgA>`ڔL#)S-\/><E0F:`iDY9CфEl!(Aqi 'RaSQ+p#Sfos${o(bI)ݽ{Lݳorv1A֥ފѭV)/d]ʳ!@1T&w hL"SK ` t03GKlJd+fڨ9 8Ma:3#"kyV%,sj6 ?WޭɊOּK0x.C6{ ACC1ڶ\L/CwǢFml7Cf~KOWF޻M)ѭ߿y3Ui tJ(Bcu6QTg W .f/IBi95\̧# wN{QCQΫ`¾t$d́o Fy?q.tmQo+ ~@DX`EhOmp+bz"Pd洰mHuo0 l$/bh"*&M};R=ع{o?>-{cKE|&+y;Qc 6 G@WE ^bw-;3Xm;Z~7ȸBC8+%cIB"e*ZQyAECEKU^y;͎6T~ID08 ^T:K ,~Xp]8=ڵecұd(ۜ-vMoy:~`Ay|qH߆s5*մ{GQ Ye>Buݺֻy(D"3Wi@FTӣ-IُE]/eRu ஏ`^BN"N0|J&'ޥ#`Y Bx`5K^cC%ReR+ 靷7tsG\nmDObI-_!] oZby_lScQYrAbfAۥH1B4f Aț1+=u̼ռzm֧+ L?؆,p?O}Dt$ŭ\Β̽+(/#=EyUtyťcMf~lG&ŧB5b@׊Z*ѬHFRYcWGkΜVer6|(d6L)kEwLu-Su/ςjjYU [:G5*yP0#1>rѾm2׋y,T n&~$O9dž7YP&deY6u-hO2~$=ud+OM tWÇH_'i륥Yef~u؂gn+0_-e/Gm 3nF(G7( ^ -Wc^5p"®M< jNL#*%< Ma%Ʉ(ɯqu^iu_SezT;p1az$ U6՝SiƗ0Z?2XsUdG(*s=tX缚R%P>$Eށ$S7YkI"@&! sCW'%0[y7m]G=U(XG9g~XTl_ehNMuhĒK?V;T׹Vշic]N\fG _fџi=#VQ G%YaW(q+- HOdUy`#(V3$_V|ln l)xS02t;$ՙ }2CɅoEsVo!pS"C' Y(+९ Ⱥ( Ephhh6ZSW؀ 1beZ9ak ۿλvolmSob .N6ƞğS z*6-nFV'Z-|m3weޘ9yt++yƳurK  ^ "%8ixz_3fCzJ~ޟ8*]%v=wM>9f_9;vX[@ OW#,Ut;~|Y|%4X J)7 oJtd[v R&_8n8 /2}IsS&|4P0S@<0| =J"j'`_x x;^P4DŽI9o Ȥ#A,)H.h瓫 {91DjjЧŨ b0%Ti@b;Wԟ,XC@l#K˿L^N>ڔ\ê=,pn@CAQkqӄ}[G @xlGx}gDwn4`q[s9flC{]&*]`h&" ;~K' $sf19VUgju:w6;)= HMq2Ny uh4fg!W|`뇕D=ʲ!?n;G Ni|l?hss7c۔ HX y$oG0/( ^+|P6GV^13n &4۠E': ],gW&d^;1o?o稊v4w=L(ޭQ=3]w:7*=%o6N]$Hl=ȞNM`acnWܤε=e,G%POIBExj^#UqP9yhtum*.~]=Gh7DLi0 [&ek+Q|FEANT-~/a.X Gϖ:58SR`ZFхNDR3MQk"])yaw6c%4$ʟ`ջuᎋ^ 7-Ӌx`cɌ) ̳fӦvWpW/Jf@yC@$wYjؘoi"ZY¼.@"DKZ0u(">Cu*6ߙO:Ш\Go)6B|̸Z ![66&!H|7{2~& \Ow Ύ/.!Yb 3$JE" @0yg)唒%6j7ù>2;~v_ᆿ80@SSMԟ<SNn;AlE׌ZޥB/-䩺Mq gԄgG7er?h.MY4@2a9ds64|(Y0##z^"jo*34qR 6䰉*y&2Q޲nMON@$d3M&flFZArO.hwP3I*/j}뜂F$5#>H}ukq3W I-Vib?yM*byʖb(S5lJ|g_pt+·lC><qGؒLŸ+fLlykRn'>mG4qnurɣ5O d# 7g4P_XMSb>arHxV,uX2#[S[滼-N22^CHN*KߚXmPaJ`efHH1Ǟ{񥙥 (r-cFRQ"ܹWIFʼ}w/L=QaF)&hO yFI@ƃw5BC.ZnVRطNZv.MqJH 뢉)%]/kh)Iݻ64R6ѣL5~U790rI=Zy;$aHe)6b| 0ҍFcr%ԡͰtrwLqē&`X_V؆OFl%c'=ᄭomH!>R`w0 z=FmyoW]+ Uc7%K!WF/\kO><8eāpC*9 wrnq6'꥔tp0=ٔ7 ܻNV Ƌ-O>$1~lhSNT NtwwhrVxAەT "=aO ls'G̚@VD%QX} 2㢠COIY\,2y>+7D4`ov'灪|=Fp}f >Q} gR'.x1I¹tOwRM6*"!ˀ$pwVuLU2! ׾vhM /2fQDIɆ?: ۄ=1gy7 Bnkk U1X;ܕ_+6zU,mp IO3o 8/6eZ5<̰"IN W&c9RLB)tWSK} a<᱐Aoص،|y3? 9wk]Z)xnq3)I_F iC@a–:}GKBo~l"g0Y'wYPBBO8WWgs[|c:^j?jRs_a8 bjgZB;ѢXGþM"@I07 ~ppa֢n&$w˺p8z; RnkoBK)W.o(GG%DX ԧa#oǥ@\"\Mki /mL\D.EyN\BΆ?R JUQǍO _N9nLOKt(-4CfPN fr|ٴeR0vyo(Fקb>kϾL΢_Nݲi9΢sQ{ztFf^վeJz fXg n'6UmG0J1,,wwȋX4Z Ѥ2 Z. . ח|W؀/Sflڹc>;@OtL0&9]}[MS2y6qTB[N:x^jc~'VwзE#!˗AP5Ӏ*ԱRo #}"׺4PF{Ku*|#B$^@ a%ꬥ x>$4ǙW}VC(Pe,֠W943/%w%z4_5Of&aw%jx hX%RW|U)@5'-{cBzs i MaX T1r&BhXk#I/:WO>NTُV5ي~!޲L# Ӥ ApHds>Z>.N&CtMnG X`;y\봎ssh+g5E+.io?+>X';hMa(,Z R]R0~ɹ幋 +qեRRbՒF<]J˼J}Co<0?-rfh<5y#f2/_$0ֵ %=ѵe2D_ 'UzY הZEψŝE!9RfKԥ\̱|S9o3::qgiɈn^< Ş]<6tl 3 u{i0`l/Ys6ȵ`;*)$JY*R&iW;55Y6 <5O1AӥtMעt-^ vd AVSPD0rکɇGuFB#Xi\e(hFoهj_#v;2Ei&Iq8 UN6{քC>t*[Tf0{CrIR`]Ԙ buE*Q`5K| uC!Z!s8&NSXB h]a\ܳ'++tu4^~%o'-@M{?%4}1^-< #~#q|%5jV 271)eehMz\HT]+mH;2}LL$*6q%O+ %1+#*bǥM/\9 'Q(꿊ЅE?ﭒ0\|#.ܓ(6.{SC]\B[a:4 C7kjTBEWMV5MW?D33HH*@yPF9SK'vg==q\~C .} l4`VEOsz5 Z"pÿcT&0$ u4jlύT-LQN-2wgwko0\D(037-J'*./^%`J2>4.16N~i葢p<4I.G9g 3t"Dҩvx&=[Ջ穥"ɴ3}z*ij`0:pI[e4T8d{P>ìX‡~Rw7_IQV9hxXt/!gq cDy܋.k8A@\ k-bWL+eoO:(`㢗k?`kFu`k$h@CѿxO76]S6qj0*aXGB:v{ω'ٝöBͨ'T fslAA6BұgWbiLp 7chM'^:a\h:Nm+}:(@o[6OC$2Z'}H[o1Rg\}3g;3bd[zX[eOr1 ۥ;܅!"њp^PPץB? R1'!O_ˆMHy=|ST!BtTuhþƂXg+Wss { [0΂BAFKSw{W,K0"~T{"b;3Dw$Fu\]+Q*uh)lpI&P`84sҨ8/[/ 3~# i`w5(RBbi=ۆ.Tm L}7 *l>XpJvuXl1wEiTql"@@nh]E:xGs8i[s3i`Xa ПJWtgv[Y)5o>x vC}q3pi3\XbKVE])Q׷1r~!'+OrgAXm<,RŁciY_Ho/id`?+ T|p7 W@LuZ<4 -| k Vp#PB~4] E Xz! aތiU A\MIӐka&%͑e >o.rzS txOEnA#87ޘw uWF鋃s>b/`X0P}s3!؁y>6sst&|&|lCb0CgRMvPsTU=k? _c& 90Xp׊HSiJm \58N2ԀZ6GICj\rʛtV5(4{Tޯi73ggS=>X{] ۖ{0? >0G]9Гѽ*#)؏IOTQJ/MYժggO .BCt.=VΡ|#Sf, u^^Ü}KLegPAys)Mlj.l0Z4,9}]ymjr3۩٭LBv/-G'FWofF%i/0}Stӹ>uI(#ck;<I)`T8_󹭚]l_;G]|/XfA#!員P>CP]cnLGW"]>181O߄U6M/ZM׊NflYG% '3 \ +p '1ϔ{6@]AIq\i$OR$rSTy߾M@ >BNFDNV}P BO{9vLX_n0M#eEBA 8YORQK(AF 8,N'J{Gxn`JMZi[oXH/s3}oKvd3C&H;* Ŧ|q{*u>cn[sxKАPЛםȱ Y["rITŃښ)C\RgvQ=dw%ϓ؊9V^~JbQv+ֈfn10C>JՐRgP8iz|rFޱG/p 臼U=4i_)-k39a0m>j#xK 44˸mЀ@fR k̵[cjӇGS>W"uu1JsK jGaf4qyd!Jgj+,f{V|HHQZe{kxZS\M俺2 з0W#{޼ X"+"#0}Ba_N2M攮xw}w? үپp9t+&t,,X⚅9Y }Ӑ0;4Hޗ,',.fP#!W]',oA|l&A̘7#d xpP;˳INS:0E2}ϸ){lmlTq kY38Z V]ZiAeU#QGzB2O\&v?{ev&Z\;cJƗ>&"QYpa-(]{| .lPݚ.XC}|>B2b<}!dwŚfj)0Ł-k<%3+Y׵[2zc̈ײ{\*9!CσJܢ9OH&U}}|:%1(vcFd :0֒suD6r窡 b: P 2lZ̦Kˢ'!1t`khr(;15|EW%m7E춉.%ǯlSFMg4$WӦ$X[VC A HZ34N4:qd4f=Yr [w0 x{m%.c^qZg@!2'U] E%~ ].Uo;e\ōl!u:cy -@"*;0/5\ .3PF hӑ=[!˥BIxca;ØZ-p5wh odQvہĠ34tzArdIO' 'j}C_~̤@59OX_h0oS}7%MfoBZI@۰ J8v3C=n,R7Fid'Q[He^Gpy-̻ sΪf:0S۲9!S'!^߅UEy*kj5{M@4Ĥ ,^3O!3 _*Wc` =Aa7b{ n 3IT}oG+ !9oI݈] RxOnL!^Wh (mp_}rd-h7b cT)w߸3hlTLc5lx T`3NfLGmߎ٬b8}ay_c೷! Q|Rkpމir!hszB(CQfG`)DyGޗn[Z)=`鱱n=I w4nO?8q4s$.Qۀ=fBSŅ7"gxql D:~NMKX3ey]r'}j?yG^YwGq*0Sj"#q_ YKghjz/QE b.2]ubyX^:#)T9cz%Q,2Ee2.>PA Kp:$fЁÜqL~ge1bvd08ҍ~M58ܞ@~(V!o_+rpGv+#O:S *Zhy&7F׾u?^|zuQmIJiGrGUIi32X~h_V4+|vgL7`&g%@f֟@9QC(0[gojL퉹1Xitqt> ]ImD `P& q*q)E<'ӟ9V~Ne{zƭsG~{Z?'gVҎߢ:O$ ^(ɶJG@ɋѐvRp '0Σ bŝԝKLɪ&V0śu/JyK;sG6{ɵšJ?2**޹$b3{ ^꺸uZ̹8ޅ&F!5UWn#ˢ)J8IPZrN$G|d\ÂEd^7i<]?9wIMxFhU Q.w%{-KI\e~%Y/:s<`\FqK9 3 ,U6>DIQJtvo KA$u]3^8vo+/yFd2;1Ӻ$Z[{ QOyF`9Ni#`ި/1hsk@b$L L1|yP{ n .B2Ĕ-dt;Vl)х+,}žT@^ U֯LK_I"Xl(M1VM3&x& ~kFC${%AStI]|11!6ע@K㓾Iv ]@zRzPc/5sN"|y, h6 Bf_Eny4="َ9svШg@KڏT 1 $z/*i` "AEx,my-F ldv 7ԖRbOJ3|"os:! 7PRxIQ"^_~I0d݃:@_>Ԏts}HC!?P=g:Ӑ,Ew߁OUr%z\!bvN@Cƚ:66 :TbCE1,.=tͅ.)-ss5ԶƕD:c>_6O\Y*F9,N),j ׸zx$ Y BDU{|8Ҹ PK`/$ +. Z}'R@x՝' nH%_#!k巑cZ$8Bj-i:|O+)R%..[8pJ7ګ2ql'#mJCaX/']L،xf8-d/裑d@w{P ϥ5Ƚ2՛PigeRl]ܽ"ʬɯF)_*_[B+ǑG߀b Dpb=pL߄&T@~6y@)k;DH}8&U)jK7QL93ꭁ7PzyiOrK`7}ͼ+Sz7u b׏M>4객 fW_nDn>0-Nr)~{v7#W'>nLw?wxإHG,VQ=1w§UO<(#)yL~gu &&j~7_ >Dy"7p,lݵ;gve2'`|*3@1V^nm?80L뭄@M+V䙳 gՆ`,B&OʂQS2mblFXHYK4߉;ZX!~ %R*%jIjUȔn樥߇!I)'l6 N٫g roZ .lc$8ɼ>C.[Lan2>s]i\hn0 nIegQ^9rzOi}Z<.crFMfWk] bWӖFٵ䘮;Y8=0y6;3ƫ;@=_"\g0YDZ {s^e ZFq̾DT0!zWoU}uܰ?T2}tμT3>K_%IG.d\%bH-,C>NDh3#_u,nf$<)I^.(gJ!I诎֘Ij,l7{gps k54Stϸ:bSg.ubF&0Dy63cP^ aq@PLmF:3_s5 ҦDjbkDʞ>qӹg xq1a 3>[{ xlZ!..zcmP3ՕugWdi,^UBӵ#h(.P6X[;+mXS0do4`ǀǟC6_Y8 N [%}-&pR[W!#S7Y>9b,c]%dPI/b9ȋ䦲ΣdG^5FA4X,B`hiZ\ XWg*a"/ߺ JpP`wY Qh]N$a+S$.)*p%=EL~?*{M2lUZ>xWyõi׃2d7uw uSbwMo4%ncN6ؐi?B=W(#Ѽjmjj%0njj"eUGpݓt'(tx Z#'7Y@u_ :;#kN{|.P|Zƴ4bɮM‡W!?uK]isiթvaЧ<SؿX7{R׹6kѯw?IJ7Dj(cM4"kt7Fs &Kw5eW3u4+tF&;D9Us0 ec FhfGb62!:;}S^h_ʸڈOq[=y0g ,s|!":br8@.X/O{%Z兺nc~|2Pkxml7Gܩ 9سqd+;9@qM9^yxR{{Ps@ KH$lS+2x W)y=N+rp~a~ C3L=F]5DD$lP8 n@z{T\&+Q+)l%geD;$yk%뙿(W9&۰|5*91\O8s30R8[Oz>/eedV|SD w~TtQ1Qy1.,B+;amV`6N>h!MNDA*Lh5eբ{c"F_]c_Z0]tz| Ri֦ه>@A\G}˧6h-@O~Cceq=cbi@ R_gDޞ0܌<O'>qFEfa& ku]6(d?B1~A33&ko\^}6U١RҎugoHw .Z};qi`)5z╾ `e8_fv?!OSO,)z>0TC۵o!bX-(26jzkDPK)Gqo"d2:tBu!_}o1pcWnjfoY:Um ̸Hq"-.Jh+8_gcertPf'K?oQ _#Hc幘Ee2D6hLPd.\FaZ[XUY9<l]{ypNyos h͆EK/NO,Rouʣ8 @^lP~f{ˑ8N-17'[ؔ[5{]4V i S?(Y_ ' &*'hI7FAoS|!bGҒ=?=*K ٢G6PLC*XP -C"'*)pSN^qTZ{_O)CXh6,uV?Y.iJɱ| 4U?>s;ҘB=BJ|a}4u0!LVK^յ./"l00a*$QVNRs&)Z+4`4 ^싅G-艬NfG܌.>K@/܈k+4)U 6xT3.o!n)].gyC;u";I&/]=߅[| #ܪ!8 @w?>jR,tCNw=N4B1  "$Www4x#]=?١ǮP*-ڲ$E} !UP;Q 3-Cv<*G$=!.U (E3vںwUA.7z\ e tT% #Jaw&lf^y*T+tzo;ƒz+-oq(YVEZk[;H '#x!2Xo(B,LUpƿVv7;۸T}[ N &ɤ fh>RRl ?ruX}C2aES&މUf\Vvs'w+c'y(f`gJG%@sf) :/꧱ԝ?%HW|yF X]EH_Vceb# rqy]\zSOV6bvZ3MLI--Jao")_305ZXc_Z"\Ph.ӋR yiuwZRAVPTh3~;VsR" u\1 Lfuʬ6I.q bQԙ<7v)u;`DGD JYjߔ zCx[(M0gR` TC㕉o8Orgbi 5kef?+L1=7UMP(W=G%xP*Y Ȼ:@Q_? Wf q}n/xo3u?<['PesܛM6V:"&Nm29(GxSMK_EX^_4y%+qz=B"~(8Q0CV1WH>< >:.+Z>JO3Fss"^). ⺋48=6϶_6XCYH+R^-P/WJeů=ZWIH!30jɃ"GK v2WJ?3C _9/bF?¼pi bEHQ+I %8f)zh8dNp)$REa:-+_Ȑ1ۢOG̎b->1b`,nQ5#E㩬<~TӐCTHml,z·eZlD F~g+Ŗn c&C *{z-xd/ȅZ|llK;+TPl?b8c^S{%Z Mh&)kgmҀ+]<Lmv&`H! EW0bB-ɘT"^pE&x{F*YD DCr.q9 \۝u?FSKf Dt\{!}߾u#ɠ?N$v&2tV؆GǏcxjtRhF 6s:Pf)UKx75ϯx 3Vrj?~ҧh.Q,>WܠJ"m[z,BDǪwT`fS}} Ó60~׋ת.n蜫kim2Ю,Op o d$z苊Fu.p?KdP=W^?Me)P?E@%ܞswqj*Q56!]_a%U~|߬h#OPf #2Pܜ'w RdzWRbW2kުSeN3pb3qOP3ciNTFL4i=lDM;z*4}‡lzH'(L^2G柡_O:zub9kI4BoR9,6%|. MPv0LL6TF" 9_׺8iS#w+tKګO ?@G-nsWgbRWlZ#گ0/.[ڐ[Y^YYWeqi]2SjYx@-6/-D^k2Dc$p@}J˿e Y7&Rbw>GC:K0s>qCLt?[(9 ؅V~ u%qrBeS?M/"ᖨ3A7ld$ZC5Wm0$M6N/C@=`; IӰ˾Hx O@7 I{~#T ԉYb.Įrȱ@}b?V)OB{­@bRքN%}TuGK`,}u]Sj1o=XR( vaBNǥ-PqC_n"%꿽fS}JCd>RiR8]j@zg#QWI^BlTHG/%qLRҍ:ai\)$a=Ik 忙g&!5|i:-HW8^,8qHsKI .T9IŽ#͂>B>c[-h5`_}R:I <@T6/T\|=awi4~# v>h]'!% "k[^*8 k;ˆ;͵yW"MSm9 S櫀?!*[ Oa"͆> n xVHVŲOt;3Hդ9ԕM*Z9>~ȿ #?-MO%q] 8F6pRd/\`^&0s) .ߌI)V o"ʏx"rm X*Δ\}Rcq`Np'pQY|U#ǴId`dV-s[䘚䗭\ Oj~* 25D@tiߙ"&j@pzC\(>Z|.2) 0vdc6)H=Bh9Nw>Wt3dp3tqB 6A;H+H ͕"JDSczH%MmB9ESryOFNkXԧ?WnᙐX&j[ճDS>hUmuY $/Wpl{>'I-}]1;e{ja~% X ~]!nc?xfIB. : 3ght|'X*"쳥[s'Sᘯv!7rM fi{i73w?< bԒUAbs{[2kkBYjZ.QGG#\irVBl?3:vqNe6zEUɘ–}2&r\3>]JfzlpPGo.?17#W颙+UCcΜ7=xz{f7Ԓo(G> Mlan\gϼxS g-q#Ѹ| CIjH<65Uԣ62w_ѤĿv w cY ,k8LD(3]C`ZbܯFBg> || m(yEz'O)ߞ֪ѣ61 nJ<-5zM❗VEBr O?F@ VފV3͋짡>M%>t.}  7[qg=2oP4r %>x>zv! g%93|֮D\إWUg@, z` YS flχ`.Ę%%1k.҅>QÌ6Ic?lp$W ~5?"}zZHY6I2rA/yJ#]YSX';HiBq=qd$N:7t)5|ڐ+Npg_/iYnSR悖Ku\KzZ9s*;i.(UGs%-써߅HZP 'ٍ:+M[WhBm󧀍) H8^v!$?WgNC{i0e'wGLp4 o`PC+Fv?<.MD‡k$f18EK2Bu<9°t(yaVBF|%B }@lfv7/xZ҇'諹~)Ik~6۵2 R,2<-ufhTuNnv{WQVEE$b EL_]r./D仱lmVZDP דYCo>r@FU uaggdv.7Wg %Od/pL/sZM, OՒC &IQz--5~eirB1%=)zr=b^BJQvR Ej:@uT\l>@EˣDP]eJI-><+ )%Eȯ9Ǖ>Q霠XJ!ºT TTz/ЖG3$nG, mo-yF桬&b"LƺUWO2 oF*':N'6۸#h24F_ϸ-iUݽ X.ӹzNUC/S-#0RSDZ0woSnŚ4 ]PlNQQ]EDR 5UEWjbf+dŠ6/$l41k{P#Awd؉)*w6SD$9KeWb&ΪZ*^bO/N>SUQn*,O1~tʗ~zӦ^Vj^[SC5O5ɺ<[]3Ь އ@+j1c _ FK,>V x;]zlh'V#81{jXԝ :$K1'WnH@Mtcӓ[Ҿv(Npڷq&!l]hg*|xzf[@d+hVDLF7.\o\e,煦trSPwN$Zj4 cQX/Hc5ze 'o¾ :4[XZvGVEPW.*jۜ4,NAD8}gF0՘?i7IC0[¾ >ԕjYglO0[GdẺЀ7B6#x~g6dm*?e\OfMv):ah6 'lv6l0IgIfc jH*hAOgC-ڝ//Ԛq.ɲ 񸩃@ 9=xꃐqHƍm\]mFfuP%?{^;f/¸\[K,El:}.eV*ac.Bv[اZT0HJ_#yJ%" wFeV2ӃLo(5\TRFt6l1ץc9>Eڛ#fb0r"9YILxQDupw#Ze$ {A:B> h* hMQ7p}4euӱqi9*':Bٻ=K9tל7,Q߭}xz+9dڂ,i~eW]J:yEǽKunPd FP EY2"/sL ǩ9ʶe^]u4lڂ!X*"Dfx*~$/KM>c) aLƋ%c{F 35L-^ On AÊLp G_/>߳#~5XqƘ gCԲZ(qu徭#K6 Bn,^uZP6!Hf(KwS{d&^WXoGHf\:Rb=kZA}u4Cj ?~/h1W(B ~R.HF35ƨ >&XeD8 ^ڎ#|VHֈn_3w>bƙyuP^'^C6l~l܇d4WglO3^r xЛ?tvհso_>BT4K2FiN sO"wʷɕ4ݏnw&,5~*$_ii!\=^[ 8Y~T n"YYpWddB(D3M>|J JuWpVNC]0^U&`H E>gXN az*:(LllԭCCvP[.v*>':?ɂ"c46 Fb5ZeosFD3wcϒ!B0kf fmUIӖkP_,ğq:r/lt}֋ !7"MzR z@X}7_Ita .7RI;'W)H'Oy85pj+hdsa5vPTvc<! ? X孧`nit3u#*%9nPOHTePUtɿ%Zyla)e2 qSCِB 5 {r͕Vjgڳ6P<ڳ|x_]pLDJ/U.)$P26p#E历$"g}-q5ٴGhPWTRFLҝ=1r7ӋLηpxNrgl2l;^V~+57yJ/mq\4f5cӔQi/کx9goT-e3(ߑ)gS%@"ZqXf{rltvk_0:ǜF{ eVmgiwl_ouTE3 |ᚆ,K}c;Yuۻ+/aMw@vyy cӜtvtf$e/N޺^2s//kθKb施ڮ+ZnzjB}(})J/cŜyB$Kߎlj:-s96{ EBv:⧨|NL[/mcO`U WVzo!AIv읿m+z3P,e=\E &}"=Ȗ[mV+;?j{$4rmA!{j%zbUa~n(2Kk~FyQ+W=af~)bZ{%L"{Q*䅪P n{QO}If6Yy s!3IaQg(u.*^)_QgPUSMVTh3eaC$FfI' (P&M!8)sݠ Q+ Ci;Uۗ ;Dn 9N5O*o EVr:s*@hU;tv\\uۥSoCW+!-?`)uI?p.(~Pl5aNבl!odl\.>7Rs)h cCUDɡbobݏ۬Bv:XƄT +q>+ ML6nhπ.btAF,!ADKp &yPTy\P{|_Gg5;*HDNϤ} - ?-d>-ԙԜAXIY @A"!-WsͨAS ebTku>?UvTDңZO=!̕yl}\i69ptf:#YH^!tڌQҰf>3\H0@+$Nt"HufV?DQOsfJԠ%1-G[#+rыS9lM a(>m_+1)i,1S,!Q] ;G͘~iO (姖)޺嗺(z] T/݂Pa?v=7B[ɗG`o[ߑ5ƒpk"(u|=ؾR駯ܢ8n4p!@EĵKVљޭ}Oȿ8(X@J!S^,=LlA? -t'C~Bǣ5Q"- Aò`|im<R=4FbؘuyϯeӋ(oiw8n[:fڏԧiwh:4CxɎ$8\k EJ" "P`P$#֫q , tc iXkDPm'4~\gM6O#ﹽi5o0a= lylŢQWZ!tiy[qg֖vQ{~/$i{F)-eB(Y(sx>M O $u”.Ӵ!CJ1 * j{g󏟙4x1s53w!U Tv"ozXUĻ /l/,x~=Lߩјs0_gzQP#|: f5 rc+[Mqz ˓hQ3=y>s%[6l‰6%ǚ9;e`hLL.Y }:Ψ[ > ־e;X蛡nkuɥ 9|j X*pcCMni0ɼĹz-9U%7;# 5wQ^| %ιާ=eufm񣚦6YK09 RLy넚Z] (Ą[[ wS(1#|X:ņcR"xbL|I$ѓMǝwO uŽbjx Cs`U~ʢVBMEIߩ1:&1Nr)t"NBM]+fqpgq/fUFZTMwIl`=!\x9@%*Ke|n:KЕ]ݵ&$ 9ͽEUzv7#5Ŭd Qį?a' Ulv3g&\ETY^ifRsaS'@+aN:5<[hKzRKJcu9JAfu{s*8ȗ\K 9.X_h;[Ot^9OjS*52AxCߒUW-αϋ(C[!A!"2Eu {{ENb z4i] *!Jișj;2/s0OѡjYp>9./eBY=Uߍjnזe!67y ,ۯRbA?>"rU)H>櫳Yf&-s,3m7oK(}4vbfBZɫ& HCNӴP+ a\WIDºwMgἤpt.H6ﳡ cwy#4j_b_ FPjy%{Fj g5Ɓ^dR %!Lڐ`ǎ%JW|y!|Y%bT^r#7+R(~ cՃc~: fB%idAtk74q KU,`(CVm:>h , oLn3cYPCPxt߃7R"5_YLzA=ԃ&LpsFN''䵒Tx:΀tW_es rcmyDJW(yf8#T`dyrZ80>oǑb(NUfSƹy4 2kgsn'QyS+xғ-sE  <ѐpT)BEڑ>#ҕ33' yJ7H*Ƚ]3FY^(k.y]UB&gJhm/pcI,,O#"YwA`\-enak;#~\ g|'j7 -5ƻ\@Βsi",%igUԾ̥|ZWց=5W)/YN\@ǯuU:yw!u[9Mr̥|K÷Ux4A_1-:nFvc݃0ctq=K;5G!t >e<~z DB#@ g ГjWe_Oqhh&Nyce!UywelZy %@ǹkmُup+h/\En`#_?G8vR:wyJ> iBZ|%{7M&6m{Q*JZmU4cU`E? qjL7hh4meL "Xm2Ns[ mWlaniWL^R%@MytfgriےmO@GS0@Bȭً^{}a& 9jo!7 k9 !QMQXFphgI[ډ!2n^=&l_x69_G'$KKP x%ӫ%wZT|jb(`0}u%wh˄akO#eCj+i'ӻArhמj2Bޫ ńgT^|.efcMq;y m8/qX l 慃DZE O X" /rSi u5 <)BhHC9(I`" 70Kq/x!?̫J!=n01-NP; Z!S‡Z"/p8t+, LSv^:0=z̵o93]ҁ͐ax?Z8P&P)BIΎ54KH2|"Ħ;hG iQJO1é!.iZjPMfYcأHt 3KSkZ]ŁN k,q t&63N& {d~=*̥niRp6KX+c<)d'.c@8;,N8l>`ŽafϤu&F,jy`Y/Ln |7@ʬ8փYp&(WL̇9S@Lt5˲1x<yxty0fW`v-v? .up1< nrAub<5Eo@^&d88#𻏦O<"sX !2n;InU2,{gq]RL5R 6'oj)x9sDG5.as l1FurePi~dH&dX:1nFў' Jy; u+34"PSz')Ȯö8Q"qe-d0*B9XXNթ}6^L*f%tt2 A~^goө q&H<۔(G҉ibb7Dr2hYGVV ߍ_(*BeDocTd1^f~ö=.N:d'n[.>ۤ*:>8 Se'T7O"Lh[ AFP7 |z\IڣZLp3{I^ְ눂BN .\PBi%\oQ Gc(Q xJbTeM8?jg緃:G[\8 Q6At^ ~v-݃N0`P2KŨ*Ap8#)-m!v2FG TsA*z)CAƋrӇcmЖ;U&_ ٸ}PGTڍ]:2E tJxQ vg3òdn:KD%h7)%HP?4֝\W1|&ULjVeڂ !9o,/E.oU=+ϸ]`mYz‰z@cIaL 4{L3&o--IZiV=L"+ FdJf-i&%1cq]nIIK\<1dFt7y=jV?wٛ QB\T=*~ ]/v>iɠ Ckֵ@b~)q%73țZo R•wᗿ?>l'S S&?Sugn_Keꚷ5OGc$Y]mhgh(<>EɐVSr53pOM7Z-h&>l<²;u`_IsnY*TgB8pz@(>*_v$tU= VG9 fq50BKTE1_`əlIA%ѤzR1ϐ\fțjCDbR3B@ژmу1Y.F`W9rD4-|޾s)/Ű +n .@U#Bǖ}7)Mh4$!pW3S2 u.P-ƥτڡ;;u)h.2"hlts%-ͅ8AZT\%=faݷH‰&A->SE}{.Crs,Ocn}g0S(.@bgjPâbT q^F3LU @Mm?TKqRm_! {Lכ"u9aɑ_ g-o3ěaULj8UWu80@m8H9Z[3IW}葟[ Y,( HoCNvb&l M\wR)i dJA> Me6үhr 7bx{y-v>$Ũ2["rʬ6}[SmU2oRi/sIU֋:Q/h8>\y,*EfcP޾|^ Uɐ8c5蛶!“3<6׈/N&Wkx:%7޿JoE.F8C5Gn6һO1 xb-LT{!b,)0ʜVb1?k!l~5ɠT_wN8OZ7(nVhd8yo]+t-)g[^U % HG}jE6=?}o"U4?\NPN%apeLj#9гŇ$ % wyߐD*S8Y'֓E69aĆac㏄+˰{ܛWڲ"3OQmF0T;τTiF\GL{QR)y8 YH*ղ/Ӻ/v4<$ n?}T#+6"zLT"o6Iq۬iN-Wt(Z"C]ҕjW H t8 TL+JoDrh]+^H%ଆO̢|+QWݱƕMtVv-s UcXY@O?[3`Q#.6;Jw\ 6 7: ˙R\&k\~#y,[?Y֮) Ҷ5̻5n0K$^hSt? z g7^t&ΝχU8W䨬B^'3Yuy4A˞4ړ}G%oU6MNAlGƒNQlCeWʶ_DtlͥWe *I,5`3u!-ZqZ~wh?#ã8{D>z\or@)1ȝIűܲvw[oD15nD)(u Q wtZ#,{ىMs6s veA?(NIW&r$T=_ *jcK(Yآ_GZ+eK$`+v&_Q v( dl,|_McۉR XREĨuyU]-[%ˣ&`pc!rdiIH't=E "\*,R_ew6gdYz8e,KwN=i%Ex+)Q }^Qf $ }J xD+[r/` %mh+ jSA(dH)ib+.5Ⱦ|t{uǘ3 r,XM|WMGLZC=֜s#aIs)=Qo̴I1a׎ V`ws{Cvk!B=߸v ҂(`;Nuh2^$R\f}6#A ױ-'Ě>Uk\\~y٠NwDUR^܀]mLoOEgt1grwdh6;r;j|07F Vne?Sܵ2;v4y8gLɮ}z$R(!5YԯPqcHbD .{xoڍտE U$-Pm=/V2$a35^}VwRsBr({bLG֏5!Q$w !/*ޡ0m#fdG]#K]$p9μ 1:L3rJ&0b" Lr&rm=Q|F8Sq钥5' ˔BpbQ1`aSz-i %<G(U1{"d N8Rr/p6ǃ3&O/Ti [q57]<OK69˴g3qꔊbzn C"00ݛ;|GԶ#( 6+ܧdzI.iVV>~Xq<ݷ*b91!c6wjTU^ocg9\7EK~6nNY=U9ITt \Q+ +6`q" XHilIRqK&0gdyB A3JˏB:&8PTaI7$av,DF6/}?MթtfwĐ /^Y挎c1gg]#iHTUmrj,> wO(P9vyWFwDnkя-mR2Tx ŚQ?h IQ-AF32c֠!̂,rQ]p716Y!?x'_DgTS`6OAzqW8R&Ei;\Jn! 2ѿF/:y@Bl\Ð7 oҶ[0htrR$hBc2kf,alwT9rE2YuazGKSYDe2l1ǵ9 Fqˮ%ſŧ쐨y0;Xq1_VwlsV7vpB;nl-\!ȣKoP;sVqhZZ"l ql(Kl*ȳħЖi,Rqܬ,1 ,.l"C{TdӈLdr*+L,44D-v5E ͐",:W-V\d\aNg4Et@uU_6SCtc2Q13 Bg'M"$R)+E&zYh'j64ާ-ky0~׫TewE@jSP؆ɶlT1B쥁+`S|MbgnojwqRfLX7,_Q?f>ŨAJ]u~QFxڤ\ ;sŒ%:tp=fcp4;vEq+1Qk0/P^AGϛlc&0uZIв3zQiMWz[2n)mSjv IE}l^Α.ȞM/uȊ^儒>Wh= L=&x>X7UF NG<7ǏL.A=FE 'SYGBkcذW5"'բ 3O\7uJvv:@ԒzHmF%WEt<:Uzٳ,ωm7 =gB!&Ur5-]Vp]#:ZwZޒeomTgcƁ.W =v;Ed>I!O[$%,0:p$6eDus%eRZ"0ﱱ=P_5qm?LeK?5 _jMF5%:zohLD _xKq >[ 0keZb8{1;$l'a;ISMb .n!E叢%Mmߤ{.o8Yvxhp"=2yKPͪ-*ϧuQqV+!Hyd7jbl۲{tXO%LQJ^m_QI.ŏ| I Uvk0ڷ:v醴.,`§FX93]{m-~mhT4aFwAiQR,97 [$?X?ozZɤQ\)N ТMJ%v|L1:ƳuzsjQ:EZnzr,F_, E\sU{|F#.L3 ) ;qȫZg>7 )y𻫶`kH5 y`tkRPxE!qf k=Xwv~d.`i<Ǻ~X4嬷+]7LPW/ޑE7$, ok(uH-͓eۮCcrOn`_ VE- 7z=RQpw3_yߦ\XbPž˦S!D+kJkUg`4b GDS&> n0$T:<ܫlE  ` 3TS*vظ'oc =@y7? +BXs4C]9Q;$ʇR=h/2\Wp9#;ͨXNUi{@8ٻ7j\%RWrG݉;Ek2>n폱^s#o +f_߱ }:`7& -B/ E3sQlӿ!xe8xrª~i?Η¦ MGl]b"', $ʜ̗2tQY` De]Js ئ #@t4:a'R*lL]jgM~XAQyRS;`Uz-qVeG#N%i?SA,\Q? R^$5Lc#VmBo)*+˩VLlaA7R"~%Mߥ%'ok#]Lt+HѪd\Ě4F;J$XmVzX  ZXeo<-;Q6l@П BXq/ ,掠8rh']ɪ##!M`DCfQD:b?FOnߺɯވ[=z)NSJ7+WÝF>:zm߻C̓85*G ^D[WBDÑ.Y?&z|uV &=<p6ׂdz#N=?5/t~k<_zMy{̀ge/EIgu-ȣsJ-o!\XwNIhP('*^dޓBxJ+J U:o^^|݆N~RX@ ij%}yI^M1Z;zNXw@W/@먆9#,5j<|N/Fb(\%- G~g7{},38RGz[{)_Ly)|eկ/`p0]}0TD`XT_Ap'e^.^8r*o@ (Zhfrz~>"-iljWl qX_8&P_ kEZ?8d&`^Gn}ڶwAwU &ޮX}&_m0o`q %`z÷{]=[z ۤCj=W,II DR #u_,^/`~޷Cịz x@]!'f<7=^р,V+!PAKK jUӝk=h[445Gd5~-KlVB5()eŏAyyT֋GK2@igEv@Vݧh9s9"3L~S>d-vL'G!̀<6FݍE_8feI^Aa$*"lMF*f`z4`‘g,:;pqEW1bϥB>|^[dzlZfmPJ#sA{ijRIdyGnuFkgERZn^G$ƞ}iאIc(|' 6x~^ՆRO)ے&BS-%'mGmE귥ԱomIZjĦ-k-CR #Bb0}ieew&5y9$M #s7I6 6:jC.-_6_f>o~^Dܿ+m4o^5fy &tsq4&>'=JH>qzܬ5O Ih,a%JKcixHo>,3jzZ2V)=@`OСx{ @AtPu\xA9Sg~J1ˆۯce: ~^ߌ %:qB4E5/ )ƿ|<ގmx$6ռ'o`X[67uT-_ZAч]Լ[L=z+/>H¬{j^9"[Ł%3I"bk-۲VׄvOUiR"]vk$Yo&{aud-՚ Fo%]NYx !b*dp9 ?62?+ 3.?FO)'tIDR!XDn5V]ݤ66-'4I0݃Gh*H$GU/㟵&U-ZX r&h!vIZI*+£a d( Bں=;O dayytoA%2j> 0m4(m1]M3YYk|GYp][q _0[A%ԝ}.qewes љni\HVK)j#^ Iǡk-,+iO,.Hc%7S\ 4 ߑjRE f}äy}D*N="ꆥ՛~t݈6% 5/% Kko!PelXۋd%h.ok7Y<iIqq|>yO2􀉄>G4LUm~ovk1~8u޺4*2_rV1?s.qBo@ze S%fU/A'XsNqC,ebbkR|I^M]g}4W]zA|15}L]CB4r RE #:G㓿@zUA{ &r2V&eg_/!Ä >mOaxpcig!CzN[uctmwUL_ɉ4c J $ydΝS5(R|ن(ѽY3^,Fo!ivI/sQ]C CbHj,$_Leᯓ9/qz8O&Pga.fv ebMt9"v{UKљ8OR|Q|E 5REAu Ϝr1\uɨ<,G6jg~!2 FKdA2<<B?șGWp;%q"J"]3bGIk9]sV0$:d֬~6+ MO<+j[H4(D&W3RސcJ;K*5Ù=K,ߠv=KoS@o2&撈>~$w^y?Im]?[ ]%s3I/ $]|z2Թ5)+t Ke-Qj{n8py@gj$ ~;z.&nŵ;blT3Ov~W)YFhCo|e AxezYVTt=0Xک()&oY Y'ԂkZJ)F<!sy\D㈕ɖ_DDXJSeٓu" kp7B>rE>wTށ=d6TTe@EX5Z48N{ I)O_D>Ŷ-]aMe6G\+y91P~Rabdx^\F>wl:i‹.aj+8JiANS(|+E}b4uhcrYk?β7jcP `h/(HE;aa*V ͸ӡ=K8T 0Ufm@>"ngLCYÐXemxovo/sIŒ3=T;vlbwFFR̿-h*7X"~a`֯ x{/[;+5o=ξO3ݢ}`)\A L{U^݀+]vw)^*6 ˁS}q###WRDٺ i\oԨ4Szހt)^3ޓ:ֻ3ACM``gM UW78jO 9S wjmb[H R wo:j/>U sFi\'k08qsgl=sxM,d$(X}7hHK;Y_ⲕPlVQ 5[3V&qEq<Z٢$v;WRn$_ܙRmԖaY!mV+R-pwe-C`]u]uy~Y>0.%pzQ'ASmi^x"9r3d[.ͰmrgFRʃN/X!ܔ J9=)9/ wF# |`n)IײI6102' 4S9p =2$@Y+}2US]h݄}bh}a$JS9FњͰ+z2wW(=-+S\v 'bol@Biʇ$O^F*P=B%X]UOe/ KfQe8y%~J*J.[Ot>E({6U|~XM%ߨQ0OP\J|s5.&$v[8u3iccEVLEukDTY`yT5oZjU҇Y1 ˤǓF"`%`Ssxw}zPw@l#x?ѰQ}x?ĝb"!ߢ:*/3l?)e؅S fwaL{7e, @<żm-?]14Q¨VH1{J[̾5,.HO_rtH8 7#Ww^j̮G, ER^v c%\nW]b!w!#x/'nK7f6< b֚M#4<Bgd"_:ֲCЭ[(b!-hnR{e03TW(;y9_P~ܞ4csP _M'i60TT؊'䀝VSG_Kp11T ɗ(g/,`dHy6cfz#{GKbiGDFLRAT8$0U;TW\PV ݣc %U.IbjTKF.'!,D3s85TvHjpjqn+|D& 3 l@D  焇 ᾒ}#l]:R9]\]j>,?G y{M .Oal!OVHK\`nҶ =%1)vio cR3n#@ú.x^3>I jӹgFzs;|"ز\XȿS[C7z +q(ⵎkyEQEY#JJzUsdkUwyx{GVV9kbwƿ 5y_w"A,TWo=5 67Τ7c lb%V_l5|@9TĖ0z|8\SK(ĞUE;;;,{Os]iNt=^U[ΚdkmF}"\;SqCL/%snfD?5Uws=zz gq`1jH?(8JQJ,Ocz eљϧ@d&2@ހ4#+c,v*FE"RNqi}+oCF:Wc- z PN*V,;؄w27~>kFWq?E-[0לs N;GE<?kl$#6\J;]$KbW4@3'y `yPRER9%[Ejܺd|M.,jqo+`Fj,J!;ւZw"a)|Z˿*#WvhpH j,t3x 2|fu <1}<"MTScb֝2%:j(Xeݟل üPgHX饡;llJ̈KKRop.{6!O|S?C8#kk @9ttڈ_:.--4[$I mDCQ }!d8]"<4TbrLo~6uv\MJ* 'XG kn:* CC!цi($'9()7idF2hYpt!=hFВꍉ5+l0?gƌv3D*`7r7~Y3OfbӇgupM4ցT0f0u.o?K I5 E.0N+2ۘw3뵆қWo?m!%IK]`ɪP<~͊J7_JkT>ca ~@l2۲}R6;07f?LAbE8>/U9 z\-Ag &0jpd9vdMerAs`G»G*_>*̓ T xe!,(xU5Ap].C(@`XBSF47?% /7fw\2c MDi S'R+vPÄRk vP$#vZcܢ7qJ1 #%A xXSA#^٠td +.[2s]&=atg~PlT?YCH`XVQ\6!,jU4% {S3Q/˘p]-PEϽi+(o tyrq)6S5Js ! уOΧfwZͷ$-"8w{X8{:ۃ #WUm@~A:2_mAXOѣ37u[Xkv=O0SDQyICpKV = C<7qi^+ernç`bhB1~aoqWm;CID3<^/pnrSpowG.AYh% zSs1`tf0 {s `~U~c5PSj?˦L.lH!BbxBC2Ȫ4q:p@>@ A[nUKK9mhN>펻ZK  b^)5\ZBpV)\(~ů<5o>t\ߩKx~ kM\4ϵH԰7ttd`_6y6֓fo ANj";voJLw~-3ψqv^{U=P:;qHOш798m{fda0T,JFYz Wo h2.蹏I.V<˙9%)V^M"%ZzFh1m$wy[Cf3_J]ti`;HA4+vrÈ;1NZ+ěە|{L]a#bNPr%m=b`J pOcgVlA74E\ɒC\][IY!raڑZ%]"M149F }evH2)vI\6i 4y!,RS+5ݵ9z<%H)9sL| $Ƚҋ(S H}ڕodZ{ &3,k#cdTo 47S{$HL )HO5LȌ4Kg/蜺'@4)>KYB&N֢O53ErYjk?|ҟE摌V_` #Z:<2j8+A":Cۈ7+,z05.<%ŹYZnr FI)-"W+NBw>Ilg+8f$ƆIf\17I\՛}/CZcu^N~@E'ᘰ84LfBG罴HMd i*X񸟧9L msYeztF88dv -LʨY|,Dk%_IڴdImM?'$$W'9\6Z@V $8 Lk1~B\z," *eV^ü i~ s)pށ)Zב<5*ׅj<|ёT$;Mv};x0AҲk9T.?0T2{ɤ̄oe:ENAau=['b KtW;ٜr?+F8>iT%wp8^ u^dI ߧ9/*G֟Egen$FRg䍤wO8']ph)idL`L?ܧ4]V`&M{Ul-JBB%[Heh\CK?ꭃM9-!9aUVE7@%5gINkSpS9 (aʀ7!O‘GF(NrщuW(g]CA>i{v|}'Y$@3۞iAg%fe7=%h?O7X 7s *-j<-ݧ m?*enP1x.֤"PfU`J'Fh}gl(r%waewoD+5R[OFhc!"8qތ#,fsgCDO0{Bs33oRXC [_Ҷ`2x4]xEב3žˁE?m'ᨅz$kEMF˞QX~ySY"SCUG E&EG0bE{~ VxH`ö2>O΀ۀJg%%V P<@+LpZ'lQ {lbHr-}Y{~~:y^Y?qn u }WֆF ? {%P*M#فn;}Y(@n;v4Qz!V~%R_Y55Q*'upҜ8/;)RxϢd9%ds|;2 Mb!ג#=-,P(UUpi hr%:w9*{a=ߍϪkެ_kt"fG Sny[P[U@D HVyTe#IY^b'3կX_8X D/BDk+ծRߎ75i >vDM]gD%YaPDhrMɄc+qPն&pzOy$W2"d\J'5o ILaq}$Q.-ܗhQeV;bKlK#n5:E|o^;Ƞe\a Ӻ }ڼp d d)[qMwwdln7a>Liy#1mVnSրR*NMfkvxU@{OAoW,OifD퀡,;όj[N9x{1 65KMD' fʗ]o?л?)Uj .nO0*л]IT$uI@|I*cGw$BKͲ{442pi7*I(ֈK%7۬<PV`d9$TqQތ3HE[zFr˄G7<^NmKagbFndрU$ت'̷`ul^Зļ͢ I]X;wGz/WXCy/ Džn0^s y^df6hrE՛;4d<j' ;\1{t%XU@aKzUR8;JT\zմ 9$77P2,Sꔚ6F`\!P(jX|W~\݋ab0m>%~C4j&r Qآ\BFxMЂ׈ă8pf,WOhk`LjTQvhMիq\~m׾#56H<檿,W^V_îKE9C\c KOjHs<Ў@Y&;귅s4yf&:Ot$.V:-; RSgC=<+rqۻpf78HUʿ ^7xy. u_Ht*#W1>i!HOn/DQhڝ s^"$ :wۂm/m[';i:PN~{<֧Й)~zyGUaj0b腩s!120J> DCzh'ȺUB7I+Nu[v߳ l-떦x' 7xkDj%zDԲq,w ;'gHÀ&,c] \AN~|;c=iX> 7]X~Zq@fP3Sa݄ϩq{hw#RsYPR1`{峫,wnr[g>~ʿ@s&xex(7 ~~6U 1ҵT$&,'e*498-D΋M3 pX+Ω膨ocrF]ʁn5s6\gӔ'[W\UA $Gorߡ],B&y !lߙ0F 3*OC*r'~3!ek,^6DnCg0~#d`M:U^J5BjLpjL*(5UFB5=PBƒh&Xkʱʓ%;@PoT[׎r30.Ğ0N.:;"ò2rѫX~UyKJ= B*VyZ|\A6G]JZK{k*Fb+J2[u1m+KmS7)LĖs+Ά ~5iWjI;Pz?pN _+T,)lš'vR΢'f怈+C6zZ"(ZnC^**r^%OR3@ٶSKl!.q": U;L,0RNoe*CYrZ(>nREٙʤe$,؋ W]lu﷬E$zoX.C|$Irrs1/!B9(' SZɔ1! H Jjn(&яΧO9~wEƑ D‹Z|Ko&y0>R zw ܫ*^Z_y<*E$cɮBVx #eg5r b%ʠP'!/\Uob <:|i[Eh]!Ăo8.saΚKʉ@4yeR)HY4o<7{ @J)w})DeO V E}d 'j:bBNLrNWC7Gv9T 2ʩB\@͑MtЉUU8mپ~qD#6G'jU9-V[U셃"5o߯%ԂgTpyD\ Ml`>njA4J3|۫U&5ptyz:yHt;3?bzuyTv5\Lz9ppf^[>IJ0*_ Z>ߧEոpuI v%aW5d -q?XY lvnX$2{U)KM+u<9D㸏 Q|)~ID /GVTϧUE7f(\Q+,P5+ݸ7uN+l<Է#G( iءRґRmϟf(V7fB3R$O RRU-JOܦiDJIKHxTr&\`,{$9I2ֶ](87Mu4t|޾<Ȋ-VvE$A@F5WL;xU 2f{rFpxo[ wSڶqE3fʽt_ Yd`(9\?ʬv%Mo1+|dK}.t߂^ IsbysPl$mw& mѻU"P=[A߼d^A7&aAPP zDcCiLv Aêò Kx/lz"@~f:{pԦ}śE2GGz=in#t!b0# PͭOSRjU:%ۤ Cr1VClacdEYH1=cGZ%E?{C|+knDK%9qgEu5|rhػM,5 3*wy=z\]㠰]Wk;y"XlRS+)Q%B?o7Q #n|I+a'vGvϛbҺ2A-k?ax\RzƸ4 *:cHd 0N E.HvQ7?|fk"`&K鰬XA_ϋ<$vPmb]+}_$ FkGiq} R-NF>,0[m>shU 9rMh154l!Η~!߆Rh[lגDiLH-|)BI8T9j OkvƨT'GupPOe~'WA,% 3k3R>Ot ůC'kd&;9l;L7Ϧdx<2ӵvMVcxE'A*PI 9 {ސ@0{i(&NBҝ98|&tB>~yJRdӍǪH'Xw p݄([%)_g6m펛mѓ.zֶؾDn&q ``$['YS |DNU53Dc63۩7f׸S16edI˘|K9yFO27`Ղpݚuciª1M% |H`|~ml0 aHqE D>-P9R^5<hLXGv&6(e,zF6g3KDT] ":|$ոQ{^HblAXaڕIU 44j;|6l]Cd"εi@f&r3ȈL0 b}j*-y8m o@ŏ+D_B Bt\*zH'dHq-rШYW;[0X1xM?/^—+[ط2k#iH8̝c7k&6ypV Ռ l)uP`wdA 2~SA݀yn2J驥VoiǕkg۬gw!> ڄ{*_تY9Dl0r$d_ RִRJTK™RЪNP ~l, |ݞ ^Grc%xe~3`*E ~DJ8gb+~䘁z`qDD_\5_T۳d T nMnh Y#ako+l$$Td$ɚkDL)OڢL[D9ʳ 0 f8i GG “[MҌ~ɀ%bS1 P8 <f\'C &Y6'rt͚$(Hl#_}%H>Kލ4;vcs:v+slz`"Y N]sV(:o4J2B[_[dW.'6rwQWeF x\W)όyǣPMP8Bq^Za SuZ78kHΐS8!1)n^ޗ>cC!yqhH ']'fB9oJ&4DqLyxLn}\T|ɷ.Hmb ɈcCJ#u[6H)`W"3x?$TqWLbΫy95#J{r1ShDN l[m]s|"lGH*V]2"-Е޳*d9(QWNKCNb%_aj\yZ~d~)mDnҍy6P -\ aI]v34 diX7r@zfA|Vom;V" TX1l{()Zڌ\~EVl(ة.'ϋ '}823įUnC/;ó\q ,Jv!#i ɏ ,Hy t8p%鑌9zFwy히Y{:Y7.k:?hbhKޜaC OXb5R׸:0$jV8:s`=F1Tky"[FS^#~hqggU0[8{_M!(,>b?6<> 3+6gݺ H8SBWѩӎ5u9/ea5ꊮJҲ #twFQ$ %~QTjCv̪iud*y Dȑ=3/K]y,ңt,%ܬU#`st¹dRp~ubsK{wܱHk؅-! p(A<CAdCrllY%ECe7aeZlBtCܙQ53fb%M3/? {oO.PV,Tol }D尺9Xd}tk6~b[8CjL˝3\s~ L%syyT'Q|;j FՆG!훸HFWIZl/w>L$p,g3I4f-cOBη0O%x{oU`H l(!)9 `'.:C(U,L@,PN;Ϭƪ ؉ bXx)POנޛ¬ZSغxnZC/7wA:8 6TL¦s>/P Q-aQ4ϩh_;HL@LC}5d:p &UJ/SO9ZN\o O~Xc)Q3<_)vHdY$}з*ἛMY3VDy~mQ9sl.$nj%$RX& {^Ձ{E7qo=MvDDHAv6guBXK$SlEJ%p'> FFNqH|2,lZ*VK"h 4(b/&H +G/Q2c2VPׂr$[.ݻD,mm^kb벒ǓP=v=_*.lr5}clJm-E \B?2/b͢|Q~QPQ]GedxC-(1h(LKčAm 7fieO(v-p ^y/Hg&Q->30x|4ň^y둰'm|XgM9̣z=PXяӞ`hceϺ\I4Iyto[@Ob ynIndLC{K_w\{deaQw1)X%~&UŎo*mj e[4E%bsOUB|+nA6UHCtpUJ\1*+z10UZwN:OMo--:ջX/r 6Cm[$,ONg w>ӀP7qT6xӇ QMLloP_'9 \9[{.- QKZ^ yI)bp EBL˝cHVJ"\uEнCj'P$&1`tNEcS=\Iq^mo;Yu';A\"AJ2AcQ&4 =4?$*JBOעt&bY Mfz&ߒhe 9J>^{![j,;r-Ir}!SYq@&ݮ;+j)b=axRaJƸN4zV I0܇w=/ɚxRμbRL,;'^K/CDk'p-݌Z]AO8$ݗ`7a:ȧ>/l@s!OS{yI&;J_~nL&q0-ST4,ۯ ADt3Ȯ]qhug;Df}KJOŠw3C]r EJ&啇tBi6o"S#:ըr:*\P 6?ۆ J+Tͦ~65TZ41ȼx-!|Ű?9-+{e(App >gӝlE((7yBrn/0&>E>+sJrm#=䆺JGI7oF%Og#7tf&mDgdR>Ӄd .PЕw|M(P).B׿ BR#FR8Ȅ`{KXdD{~Δ{9nIK^e%]4{B"K8H*?B/7!j]]V\`QL_Fd "g*;];w\Vr0 cDf'$,6!\=}jTv>zn3i!a}{o !6 kK*= DEVK ̼ _]X<.a`\[k*晬Eřed Dix10d4J1Nu^[ #Ҫx9VbGEm!Y";nm˓N7@Ho\;c\\Eȶ|Ŕh)N\[υfɲ'@9dSEw1־k8p'FqyC/Vsq8t \uZdGN),|5ߘ }i/\t m '%Ͱ,Vѥ , BZ7!%Je4JC% %cTIX=ػzN}>MP yȢïub˷9칿F6<^>!?fLh=Rrcq)(ՙnŃ@Y+@aXJmDeu=ȑ\m~BZ3n!e GK#dzeD"03?jwͨUoӯRqGwD4"!q"f0&ST`9*;yhjwf)*HbFkHW θdc~/g}LҮ2S)9@YTCdV}t&]er4*ט4Q)81z{HDR)s >}_)R2zUkyQV=( ȟ,Y E d<[jÂ(%z5~$ kR] ϯ|T_k;8WSߛG6;*s2FcQVTr֧3+,cGLT™9@̀\`\kK#`j#Wcf߇^Prk@x/G]w6FF9TP]!I$|V%NBP,jsejL4t)lCu_' RДqpAsJND3 )8TX;_ -a;hEKcɼh@=y])Kv\c~ YZYj3Pwla#"|ONO ĊtT/!ҽP% YڌVt.oiO<;/-=}AgO#@T`3?/#bv_'xJ(зbi8rqOˠKH7.+V1uW! ƕ2kLNtSz#⏲;)r(22efh'UԧVNtա# zP6L"Rh97O]'J#Vo: lUvFU7%45^Lٛ1ktvIKax*f꿣h ׎'eIpsQɴvq͊/1SNos Kχusl5`[/2MplUlNm޽9k4 N M|}DܐN/8-򞕡32}y*5 }&$ry4r٤U϶e{ xWյ*6"8-s!ؗ53i  ,ܥ=̹oL3éGqh^no00HB! MaAH"'(EIonbA!>yFjffAlKW@:Xt~WF8s!3O9]Z8iQ-5\Z=WּX<~YX޺ae?'@ʾZӸ@TL(sqnh'ƄVP)߳GŊG Ͻ)R jX+5\:%הh+dp0Beꭳ`nEWOFE&Ars3LxX3)%…ф@ǫXg\s%6>aFRz@:u,z"3N4XKҹA.'y̻%(>ŔJ[[:McH:=9?֐XQhH󜾾ha(= #Rˮ^Yyc `e=r$ϲ0z@>/(]lv/8Nr"<8퍨:_]qNo*r뱸}kT@2A_'Cgci`6E0I$3G- dyxyVn51*&/W]-M\P$btlы89A%,@i~Ӵ,fkVeTA4,̊cܥqEٲ E1n;&+nf)dS~  L^zB);sMWE3;,PDC)Sa.ݽc`MB$ mr(X'ѡ|Je³-bD\G]kuyUj0Ouk0E0^g{-D J4Q[22SejǑ R7n˿,2qylGyUƤ36&]47Oc9G!T m-|~\><-bȟ1vR gV㸓My&*#,R"uc`UlsZv<+:閑/Yj ?8spTwۑSEhEcϔ'9ݽ: v԰T9!͸9[R'MmTa4xihifw9)79G Xv^om%9$@JE8!oh7;"/1N<i ӟܻ&NsifE 9GS3+c!>\9aKD 0܎,XlԺ G "˝59&%M Ph~Գ3~5ŒSq՛ ϡ9UzޱNCCRúP>apuַh@ `<ȍƾ.f{cl" CPU9Rak-^(4m$҆akճnrޑ\e.ЭSz[09Y ӗs%KF rTN~~~8y]6R",&k5 jhvbab)G*MU}Mtp KCS4ꢶ %1_+]&-|9@ݰN$mya1nKFDBްFtJ ݹt+6[$bnsn<ˇJ39PT8eԘy_#]rs'Ok] `7ͭY47Ww?1ɛ]ʢv<2tW~j(ށa"Kы& ߡ;jNpq#mg ҧ4r>Edp)'2F]Ts }>U"߃HA?8Pf_*E@j d xWkVSElH?x0f5Hʼ j=쭞YTVMюl+VEkۃm[d]~S/Ue`11>,[96!VRSZ'2#d l$a .deioRۖ )PZ[J}1d"aC|[' z@N51{$vozW%Yr_SyN ˙wK W@d`iҵX>38R?Z@tJ nu+ thZdwh$8ss\_8L5 `gbWb"qu>Pjѷ\AF*%DCN֯1nxfU;mE踤W'@:&ٞVG*LY+/Qp5C3G:rm] %]|ro&S8\cG?LY/b0s!|'>.'tV<'&\WJ pk:COZߤ%]z 0toOEo 3'e U'qfὥki D]- 4X .Y9j~.C-;J|Sje:ZZc{j̓~/|!}A2% *ƌҟ`-wLݨ>3GPFK vy8݊mE:!A8[P)ǩCb\YDBs2>l@ Z\^=E[-@lkbim 1m3riqsq>XK NE{h4Vo!FCeR"$"67?B4RL0"4U":ub9AI|IUPaǜQmIC h;T bPV!xeũ+`?tiiFGcQv8 hSP1Mn7tN՜H&ShP)'q=#LU@'Gnz2PNgˌM6hР?Ud<_{f>KOae)83ioK?o܅cF->\Vɥ &5VXVոҝ{^Աc}1S c;P\!E@7ՠRѱkA<ΰ!=sJcڶy!l>,T%2:D?au&xj#{mxWoJ:ɑL0#)eD]X=fGv'2+U4hroghx_sP.Tk|>)iDQ’Zn7JXwq[&kL&:p2ab\+ CiGB ٿ)FtGC/ P|Fv :9l! 5oxӧ"NH0K;zW|n㺲9wEaa i _c%ٽy!n?oҹ?шǭ& -=\Akc]7|1"YPL}BR7 vg.B;cI,g$W19>h^/84,nK3w։ܑN.Bd̵گu]и_ѱeF%zd C'"刐ٰnBC\߼9DYcGq2'?c>0\4\4O94զ$4D)LJB  $ buY((ɨpwA/s.ykf.cSdaδ hԒh ^݁OxB忬DSDRZ80`@ "d/UèدO,fH?НU}pu.S'UI܇V#Rax0rխ𑛈~͓+[>#l˫Um=6jd}+}ZB cG?eH`ҠXÏE@f #|4/W/`F#qe23޹59~DaQ Ħ$- r NGEAcM. ;ЕAmWdyUb5;4W ('dP} ,>ބ?y]qz? U< LD6]|1<_$ `Z e>J#8c)ҕE%ѠJ~K+aH< f'ĊU|(L{ ;ѝ@xIi@]8/x"7{WZˊ>n_a)G^-XNMԸ>~BNPsJW|&G (w̛h(k5*r ^3Hdww^"/"2ڵ=w_Ɵr+Pܴc؂\0VS>5]/lh%1N}#JR- pUoꬕ,{|v)<]L%9}Xuȩlo Yl2M5N 3j3xRХkRoR,dH㭅#RG7Ca6 )r}X4i ^P&QTvVmPh-9Rt75SO8fњ?&jrƀ'+SV՗+L{?d쮒bdLhVêHv  #F:Î$<2э{&{;f-ofV3] V8OPGMG&KRvF[&-zt-D J 'rj.̻&聩'9TAgt]Ļ+lc $݅b)Bkm(ˢa5`]=]̓tO|HnYR2FXPR۲uڎDHc;ΤٓH0˭x;;Ϟlkt=aú"~(Nz^Bqwt~!,1V- E/WGy< ZKiʿSz炅܇u5 n &<-[x Gјb=˚t:=;hɕt%/[zXXE?sQhr ,.y2j"+? *ȱN\gȜR2907O0sFnYGK4+-bW1=7̈́y=NcBRyaE{c^B'L{|ĬQ37_T+vCH;ͫ |ӵUݺ\W룖J 5?Ak氉P͚ 6u V5mD Tq:FK$ 7_m(DiSς,2طlr!Mc@HOGZ}CR;h7bN93?Z)9^P[UJ5cy!jhVQ)\zģ$",/̍1 s a/XvУ[9< S_Fձ4m l9\ʭI𝭀S e_z[>2 ˧idX>3*>0~[ G#o1.lM#g<,̫>{^Ĩǯol#M5[}!Qo?$Ҍw'f/ѡ)3Ca i;< :s8&?6%$f˹%f='0k1Uqōyႀ7UZE w<ek#Nv]:Bw!Drgun$> zJm-dIl"6FU ɻٕ5 XkiIS֓=ގlEj1D_hChbX.ΦAJ. 3Ct'0p#M r?<ql\rZY'G譮'͚M"pg4jxs1d2<ɇk *2:>]F#ϯ2L\|U]곘~G`"P}^ʒe(mg ]n<_i xKb2lm&HJ0p8x,-2GJO0g`zPyG]X׫vdM$?a19{T0TX)t柦 \Sk~#NS$5mܚSjlU:\/Ygxq?NR|BؘL%aBUnH*^uk4;Ĥ/jX/QMН+G~XGM&,̮R e)m<Rv-$.P~~a<6ȼ l(9z;ݱ@:a޽?ODv?~Y [n_CDn;|z,`f C|dHhj963=/ȌE_7JֺN1y'X3\09y_OLXOf>n:lrkS= *`@А#}U6!ELg;էCα kOk<賞C}~" 0h;,\2ߔ+8:1mF\1>I^V?)@X(Nѿ ;qܝ/(۳<m^sFlʞ<Y'd7Cd{4mwhjXR<gp]ח4HsQwmZ"QhK]nO^'T%rࢍreGE#9֥I}E֊5,Mu%-@-u:ɏ."zh+傧NӁ1Ӥ@5$BT#tFsg.mUN[Lr/4u[լu,g=-`Zv2"N.|t×|B@Ad"Jd2>S77w0_ ∽ÉET#y5$7D%]dKjψE,oQ[Ǽr_1 ke${e F}|oXϳSU%' @zaJ" iK}q;&Y#.2dmb$w*xMVWݔ";w+ZJ'.~N#vؖޮivm" :n%)Z תtb?7 %K܏JQNCg&hhfD["sA_9/ 2x7)S" {'/ 4SgS\8u&BTFأko`jFBydv`j%cei}ط۪w5}`a<ty=H[ZTZ*Uu\@ ċΌ:1ŇRu6r YVuj48kʒy@JUk)IR06{cLN9E Ce mWwZoڶ`xRQDW8d,fQD70.MkMZ=ds;KGƭDPWCŰuP!~ 8E\-يO`L:m^)kr8P^_[Ø?։K*n&Ԫ(j'2vl;<8U 6W2".S=V 'Tp^(6H)R7T Br$>)D%Kg_uaeXM;h"7CKyӧ;G>mQtzDk0A|fWܴ#6ťS;yKyV[ΐ{-(޸"Rgb-w!rIJ'خϗ/GԽF]ïLӁ@F ƪ)Jq?k7s+>KSÝ9FOZk+@5{f/G=HN@,+9l; .9b%ohT@ cOle&D|G~OԈn/=}u*ҢC7W4YkxO40ӋsstbF6)~=^-440՛16hS~=0{Y ~}tT NO\;?%w^ Uu[fyG| 3廕L*釓1 d7~M2N&gʵzi<@y)2"k~%򱉹gMtoso{R3A\΁`z9-{˗6@B D\`3u&pE"S3$y mN RlߣAkQByԖf:>l(vE*8u(,pɁ ojxo`Kr w&}P@qj`*؞Ƕ@Y c١sIyuQeLr-Rg' !>E_(_.&5qF}`||H :*!pԎRv/I ( ȾwzQV(@b*dqeJ#o{ v&Y =8唍6c4L9bOY[ؕ#fb߉&_h -g"tZm [Ox!::Ep] }մDåK5(q C`~ .J 0 n*tYղՒ4usoRZV:|r', Njr9I&XͲYֶʷntXFRGY&#I>1fT\nr'uZ *4n}8&8\B ޒl1M;Xh 1*:ZmWl^_x_[7翮}(?Yi/G754/ (Nb(Ig9qpcծ=zM]`et8;:V%C/" Oy2;2)fmIPq+(ɂ\yLDQ(؁-?00R-^ >ޜKEP +ޝ$r+sduFMmIͶ(*`rh 3;,Pmma{\S c y]ETJ"YiKӛv(4HN lУ , ~'O b#G0>-:Ϋ$0 5 xH~(%֞P@ۨHTES%5ԃrHuOeY'VB.VkKjTr?]I.?-kRWkɨO@-J&]k<ͦ2k}#av{24U9Pe8[nɈK'nc=fiJ Ip?0k[}/"XntSs7'C.5a*6"muֵ'1XX2B&?HN:ߖq7wjLp,_A}ު??X(,ڗbтSOj0"܏ğĢ#/؜ BƸe<H,DgװlUӯ#E5݂&t U_/>̲];P[fBgOΆVg'D֯0yȆԅ!vՍ.JlPZryeat}EVwD dyV 5rï9J4Bb*dy nu<|I Yn$1r'nt<8^E耇TPxqAv(-ܼJl#Gn+y'mAcnqsunڮE:PdR~wj Ijt WUjuYL_v~KY!9^|tfaԿyC,Wps%\U&ËѾqa>NXR;YEqs/Hdh6F9!Ow0,Ʈ SwQԦ< ._8PY7^`7Ja՟i}`*UNq'm;A&no^g]$0NohN-obEtS swk佖˃_Jw48m@}1O-;?d Oײj#8*m`f%C(EOYY&%1:<8u:=UihGݟ)}n<]':'%(Bq;v1< {)$.w̰͢\L(jx$$Ôd>.~)V-IQKo*6۳^{[;;HV#=pt-2m vpRr @ rJ[yxrՐ;"uqEQ |!!J εM*QQ 9G{*V{P_xٜXDkB ~c|X*DŽ;8" !Wl'7 8t?-=ffQ?V"+P(Ŷn0T}y|NDLnhRl[>ǤΔ]^PH] CurCA=%Z:ٹ[/vNb~oϐz98He4L#?%gy9ZXUu0s8Jz!ٛ(N.gSrE[wXz `Ypgʊ]ssfk'(*cokWV;G&َT.Ɋ՛'BD>(i_uFѣ$oFRCk l:ԃ,3*;kO΀懷S7u!F=&d7M};cϰ4#)_!GVl=wW;B-BJE[i?WR)ryy|413)ӈd]ޖ\W Vb=1C7A Ȫ m轜T9n"n;$/@͏*Ҏy؟ we+7h +Iwj~W'Sq`oaԓ}:~]t[^Z@JJۇe,v60f 騄!wn$BR2_=mX\D]L ?E#)F"˓u "ƞoaIb\ F2Τg0ϔnVY8;0>E'kb8E4x=^v)#hoj>|0~nvmAq@1M!0\4̀Z]EN!W4xdkF(#CGHzy躤+kPuzyJ3-$ACTs㩂ÚMOLO#g+w" Tw P@x:xݑ-`})f՟Eǯ{KطFL: <,40&a+ ("E{i5Sgk;mc^jx-RVCN̳ZL6 9% BrIL?9>1̃ \(@ѪJ<|#V2*F*/4. JH^&9TRX͂55F=k2ͽd/ȇFRԑp;j<-,p{F?]Eў察)[CK`D6Dg0B +wʄ@ jҲJ]م-Ϣ (8/^A&ֽ֙O0Rpż6܁8%f4ٜKJz.(jXjv) HmEQpxvX8z Hǥ\^ #: 3x8ܩ"+|/ ^7{Ϲj^vh"}/pVmpM%gUNڔ ʘjYW Wu B4oRv IJĴo$~:g(~ i%h-)$=%ȠtJ? \h?zZ?ɀ,e: ‘ h"3,eOp^urnl-hM"- d=x#eh lc,=`i`-)#Zyқ&F@!43e[--;p箔E#jHxN,dy[~;vUx_M:.CU#P<::n##wpd&֠پgj+}Ro |#oױS@%ilHQ{>f{(ώK``7wzaD+PG9m!XeF0-MEbJĈه1_P>SE|啕{bE joX[AhFj;u'^@_D0BOz-俕E=Mrzn)ga.QOƅm:1JypV|ck|Z0dhYg)*Za8v7%'Q*R| +5)Oj$3< \]U}򲢼@r}u/)sPTq\J O\ϊ1=6SLs81I^}D!Yېp6u%NݢU| R!Y]uB% Kg_7P?ʆmp6E?_RO R=tmZ&usĠ=¿NgdHLaxW,A0Nv{vPύH  -,%V[Ex+`MB{>b(?|+DlGb, ݕ1ڧ,h8R6t˺Yˊx|u)6ONQ>+a^bh\Gߙ"+bФl &vȰ"%|~'?L2_{i"y*V&HE3қ40 <@Q vׂ7'-6n24O]_Fb"??Y4x{erTŐoņ@y8$˜本B[Z-Vbt$lL Nں0!Zd 6kHyes"~&H>w>B.yEGaCFP,^:wNYd 4=0V!![tfE)$13^ φːbi=7?vnݒ@a<ӲQ/6L!rgK'@`^)912;ߐ"\h^HyqPߡhv/߼U̔*@0$pODچȓ]yҭVu,%C({AC}9ЎJy?>skoNXڪnϠ)ԘR ?זyWO .6 NZ0ԨV~ϱ}=CWiFH"vBB!bg->f~ ﭘf"*_^##LvLzW S'%DO|y#ғz(:=ȐkE0 KOO,H0<7bÀo .xwsa ԟE@o?[~Tl F9d܏ @](CaLDf~!PH Ҩ 1vM_psd:T _3k!4A Ҋ( Z+[ g E HBXF N.ŝQwʓjBaqC) i1Fn60$uP_hH Sg C$G)͢r\*LXO-qWdUrX5'f8s@^9wt@ky*3T!}WjێߴzV 3#N'u*&m!<mgDm:a+P\Nz oieVgKo욫v a *NlpQ-hbqy WBcI73vUlQ!"t߱K(,k#'sYZ?MB>gSh*pgޤ' "ٓ=Cl}"Rdwbezl] (Fۤ!1aLRR6~ۧ sKmڦVX9/E$ eV/Wh0M)~Cb?I^L-@OJ+1ɇ?T>V=n$ydwd }&Vvչ~`21| +$ -jxIyM0Td77p8!:IP.$8EjF& X==F}>B?<4ǍWůdjs~e^2>7 W:j͸0ם(Ǥ_?.N&v[nJ%44,˱Yk7!#9@=C70WJHFpu_%T/A=_{! #Jr4mj҈QB&XmHѢ%g6 M{K^s;ʜ`O$[Qx$b ?:Wl{Bɇ8٨D56[Yw21o㶒tÁJ˕W<%鼐H{"A*̞sXdWÅP;'W+B#m;N>K"%HҮH-|NiPR ܁~t n<&3fc}"3ĩS="_K2  M-FX&t.V|BZ|EfT3av7fE"6ƽ-G9ZheWf\~yx3-+Y#zL,v&O U EW?wTcG;z/RP9:Ml7tddCK 6YvyϒO< &azB|'#q>;7lVbGE9L x/rU/,r3~sthcl_Urgwr&jxb['R/U1 v(MxNi_`qM(-f̑ds >d/tz"R&MOF64r8uYr!3 ѩ*J볧D0c~ Z Gk ҡzRN;ē+`Dѿ;~S! 5ѿM6IۍucwfDg:H]n;jY]@V>s-XyJZ 6?:,SX""%.ioESr6͌Vԃ !IV]9!!+_Š/)f/JpD87"Z'_R3hQ?F\K=_LUϝ~ȁf6j=zlqZ)'lN]Rퟢ4fE^(`拥" O=}x(M66$kqilr%+;`f9.Hi"7 "n`v>jWb&lѧ%JxŗjBXյ'NcP0D=+qL_vb'f3E ~<^ MpGuu"&ryV 2TO?gceP <,28g#N{])jzjNŐ4h~MWIvhw/2#z-=O6PCx었uMmPXG6<_-<'vYJ7.lP^G6`{ ,G] rv<(0MsiH+&K+n|y(iDMvt] :#5:?c|@Ć PI.6;^@L9/E` <|iqiwJP`wXhQwQkv#u*ˈlp;W98m:p]wX0j>'Z@4ď;66`Z09~vq=,uEyͽNIF9<<Ґ )V'![8W >. ~j?_uaˌPS|r}w;ޖ-usx"/Jl H/74{(8FE՟D,2&)\RwTZYFr27qbD Ѡ@X(2жf^ތJL\p+vՂ\ uA`% ~(q:oYo Be+P̍] pKDaty`9}mToud~8zdq$J>v .͖aF+*`:/U3!axsnzeMӾiV#tH֣ @ڻ:&wKkޚ&RG$(\o:-t ٌ8>:f z1r49X \h9;[7k"&NV0ۘ4o6EctyiC%p ڨs.gݻOS{nEd텊6T&*+%S8BM+"K³;"÷WL-ӚAW_DF2 v߂(˯"_-٢qO#||`\pwv<)g4k#.-vP^ >;/'?vW-CADރd?Q-OPr) YChяk ,+ +TMUʕ8[)ǮSp5P}f~V8ڧIKÌd=â!ˌKO3!at'*!$'D 1VOSSX'm'+F_&o"I8xyXdp0ڥbnH- y}TڛwP,a2W#(uu$&T gܢp55Hvecmx?lИ4LKK}i~ :@4A?NhA}5hK`|E3t&iΖ?.OU40:frӟkia:C&9p9]ǖ1Kn] %'DϧF4 P,56,0! /rnH(1_7|7X\2}it9#aBdy ⊙'H怑A86eL_M;S`x*1CզFL/ BT@Ɍ9bYBHq=C,vv8 /٬8"xn h#%Qc^]K+K-c/"7ѻ/X 5=[Jmg8A;@ }q>/ ;)Y5J%&AUT+kv Bq|CZV;t+P=WNvUIhQ3# M.9zڠjD+KNœ@Dc9*f z9ZZ8F **%~3qS aw1XG1Ԓ@ŠXdži,5Lg4U+` Iρ ÙȮFә&}X-eL҆bT$₶olIO?g>b@i}G2( ,Qx̪c3 ^se-8v_)YFd uȘͲO*E@7o%)yd.Z-FLHWK&l/iܗ?ұT=<H:#J ~m!hxX|%HO9Xj ;2bn|R׿Zge4ٖ}"VVU,R-ַ ~@JCq'i6ҟN~CӴ!&XfsJ@A.S!_onT:Nt1D;t`֊#K-K)*@Zs䅻 F0vCd?5p]G(е?}je4M_,rb >t"Q,#6tYfUߧ)x# j 牒b,S2\oQQyķgE!}ei񐃽}aֵm;ɍmnd#^ؼAeSZ#r۠lǠ=juV9?N8d R # ըV֪wYb >P:Q>4+Z?L-^ZfG,BYyo&&{i톬m. @ུ]hH?Xطu3=OwLKq%Z\PS{$;f5wDZNsɑ1_snX<LP]7.ta͠ w]F?4O}VaVUR. uXYtA @\PʴfH%֮col$ѧp|6MpY%ٛJ nC~uN #pɇrssR̯V6sAaS@= ’;I*%dkY8]CIfq7cQ=)|"pu~?;XT^3܂.Ԟh\:9p}upxN: g8w )gw}8䵩_v@qbmOELz _2>GuDLO܆J6~Ƨ!iey4̖`@)q/SP[cam۶Tַ0_)=Mt$u`z_MgBk8jp=a'.njh_xFSLCyr0;8U BkiT峙=ڇ)P-M)w)ǀr_䣮WْYr, SuZc?A+.;X3BPqZvB[&QWnN.@ոs+/n+ڸW!s0erk ?Jkh?{ng{;t1Hzo2a0em=m j&uhs7yF"emtKkH /יB\cd׿kv2Xy0)u"XLcxh.-]ŽO'{vs71{L! Z,^XH/HiP1Wn&ж7m}MGJnKAzIQ'"40Z ⃶<%!5xj<:7!h(v込~^Xo6=N ܛd[@:HoO9#;Cʎ&fci l6(} ɢ^GqmT#t_yV4u]HcC.D`x0Қ8q~E_pB/s ː8jDŽVa E\#hFhJszbwl~HЛL8s4_^mDBi3Ee?r9e4.)qɄ;C?-0B%XbagǛpbבs/yn $'}RէwX b[BJϋeg7yE~z]R4(E0h Zۃ x]P0t"oFQ=At,$@s4|aװl w  Ijt^2UdJc Rēߨ0 $9[ ƭ}֠K4{dć.׏&Te%飪2,L85Y?21xZU1y8{dF@Rb^ÐwT 8NI_[hH{r"sxqMgolb\x>6A;{[ aìM_*I=]b[4 YN~hd-nwVt)͕ uj*:B eSmfE\":IMf 9s5@rxs.1GWSϟKRۭYMcoc' ;i6jѽ24A}_ bKө} ƻvA[ 6P6FE9#9QbYҼhШ`QPEwv8koT3bz1^?wD\<%0:elaA =!f$PO.0@ʍMmibr'Ό)O&o?_/mI0[}p*5Ͽ&ё8Mdb)b87;{"'9O?v6teL4Wٸjp)2&ʥ;dk`/j'f%Zk 1_V P cg+;b5m^ ,D>K6cn[dɖfii<60[N4[?(:ewd-YS7 ؞2 򵲹1~piUWCN fGw^w}Kcr-޲ɹVh24Wtf$ iPP(5Z=M¾JYradU5{[C{~sw5 qRѺ l}hCؕ^Yqu~po@AuEzTҽs.'2gy;QH;d@*3'&3撾iX3ゼ?y,ߧiiܲ%mYN { "d:8d{ `g>/m9םyfa+1+VbN_oۧ:r&x/_vԮ`7#9v:2 0kEPRSGݘkñ)AC$5$ Tb7jOoJt@u$ "{jVEK ag9Nc9dp(%^(n^CN[b8hD:8T?=1V4Q|z qz橨>;4~gӢ0)]F'$M=_4Qv 2?k7F;ה.%6Ȱ-P{ jǦ :ރ-uaor UWz*ħj?d vdLChc~q OT d׭2tola?9lAȫ#ͤ^ G$C: HTZ:߬SFt46cj"VeZbP3[)(4bNV\4_ByOOBYg]%Y5IV/ngU;31rHSKegøx+f8B)W`[QS?lޓZSa {L i?B':?JAEěk$#Lۨfljء)Y|K?԰#s@T} ˺ `lqL#gQ^# GTf0! #1ۢXiGap}~!F=<6* PUfmUKQ*lȤ뙪SF!`)=fR\9:w0v;h+Ƨv0ld@Mz6d"d~F2UrݷFUC @\ZeBZf>yϾ͡J3M[L/o{<`,a(@W*g 3$J\Av U)l;`}{ǒ[j8{}}w#ը!s7+`v#"!((m[] ]6>\Ż nɯK )&w%t7DFΘlځYÄ dAN2ou|=d(howaPm2--LNX+|}Ϸi|m=t= 29ЗU>y`[a"oɋ8ܻ(g/2H2v:5R n'yeYpmpx`ŕXgQw7|_fJ]w5vƊx5 y(2}~N*,.Ծ\i{n *apqב$?;\(ksdUu6 oSA& q<2R&P*n$ 3Bx<9i]}aj,у ZxaH?A]ingk#]}&8fc!F:v&DXPp\M=Y^Rݮ;"$Ryf3 c/Z2J̈|@fso0>)19 g"D~y^tB3qQWuUo,pJ=]jz̏@/_/n[UcB,>[|.ib)a\>+N m\g(AtqE }tu:>D/ 梑J$I~qY+⒂ σMi[ ;!^piǨ+znLOqгg 9/r.`hP,M)+ʺElz?QAEFT9'-.;_$- !,\.-E#1U;Ĉ. *u=-:ƨ2ꫢKŶ6OIƱOq@3xr/l&DJ&Ri[ߐI˹WC~~#5v8 ${iجCB{YSKU2^4>O2SfE)$R1d `R}ߒIKއJվF{4[DoS 4tUow Φ9z $hCH+pS 4nVBNi ,+ LA,Fܷ{qO87w٤, хd>LNE C*`} U}F2 }Ŗs-rW}6FԚǽ&=xS9f,lĿ^?Y Jfq#u dvLE(q%/bx +b8%N=c 4ߥ#;9w*w5{3WRy7P:G ;6P%o֔??a#&?KMc.H(5j$GICdQ'Z|*4b25Ò׶h籁p5~|<1o:DҾ'`vg%CHcR=u`dU2!Y>嘞O+&^HHmPoQ6%)!RG9|FK vqb%uy6<$a>U7ʨȁM);rt Qֽ< W6th!9M?YW Ns&=X`,,?;8s\ݓydɖVA?Lu8H~sbpEIv'^u{A63]y7W3.}NZ"ۢ^!DO4|1 @{oD*95H= 78\a9=0 yӾBCcRDێ喽\'A[?KOb+Zbzs4q_X 7Hɫ)o."DiqT)tt4lFq_@XO%%{LԚ:"Qh@/S܁\==yiK&MJ =%@;k#֎p]3QJC9-N#ˡIp(%..5vavNxg}.)[R:͗R IK8 ڧ旅ÙGQsIkjB]A ],@D/Y}EJ7`-keXLIbHa3˒Y.qa+dBYAa.ԼnT;xwב;xo{Ky f׽l`/AaGX@êj@ÇU4GT!aRwFϣŇ3㤣ŀ&OL{"7p蠨UU\T%+!LM^>[R,0ƒ 9,Ǯ|:_$xV [ ֑Ɯ+𶟠N>L,-bOy]tһB ORMB9巖.ۨyF*wԖ~ ͬ5Ş'T؄ ;ܪw7 M`y)O]-ëf7i5uYB Wkn6 X.aʝG=PTMh OY )yR4rv@j#8I+@Zn<i]*D-$0(.(:CrxF;BխP_2+yVI}od }inR@6gCxxQAl/'pʟF,(d-!_w/]SP_(Q{ e<$qŊCd%Zh3UKuWi 5]ySډ\q|8n`n>H2ϫqJ]7A"N@G?@ ?×^o!EB9BtwSʼn9ŝ0=Ta;X<7%ᩧQ},H6aQY-Ӄ5:POUtts$#dã~٥zLСllscj=hr2?MwKK_ HnzRzȪ mq`r&kC"y}tqf8\A-rGC8/McMk]0AJ_`~?;2cM B%w걄٣w!2R΄c Á?"O5x`Gs,zhQ#xbB1)x\GUp6\+M/,޿2DbpnH^+ċGŢjncd?6r0}߷6DcRFoz.ˏ76GH.ŇfGH 8HXB+2Ff2!0pz7 0>"BPy#s8fMny43YXKbW" xR> Ќ&j !UP$J>j툤U:HvXZ/u29h rM"\PVm%eIMFH!qG/wmW}K6rڍ'{*,9 k!Rͼ4rInlKaҹTzP4q,7o'Tf!V |Uq2ԫ=`uF/*^ms02hf}CXfUxY]?:5ԑQefI ӱB&5n; n+b3}c*]U6tn7`|~YpрzGnu V2Eóծ(og ۓ:-hD=Wb C|}_; BWJAʎ+q @cxI|m*Б"V,|t2&kNdt |! ~6 CF D pItXZı<$Me>  'pQ)>[5HߊTwx)x 75o4s .K]}#m7`PV?|e~3.qc#C%g5n9=%e(]4(?xƍ8mWbz!/u7V},3QVttSӊQwz&N;^33$gb:1- h@Zuo3|ER8 ~ U@I[8;"ji ) FT6ih}JgӑM["IjsȔ,*@x4Tcc0(4k(q ͦOəg!--Iɧ8)6J?h>%5cB`0.ݱVpvQG8X3P -yEk. ] HHdߘ:^1‰ W\{E|flh.F8:Xp]dF΋利q@'QLpdٿIֶnFKF$Th䇮f PK-|Q,,NiZ2G"vUڢZ0&"_תVΛzvv`#)뙓O)ڲqUk/M*fZl_\A 68%vF+dT,.Db7 x01 ݥ)7ˤ3] yZ,8YG6 [#L_ޢv;'H>uQ祀hD1JY?SmO} y\^?aP-ӱckKye~J( N#l8ǘtWBgp>1"O «5junE3.V=4af&+L$Jg' mDE}agU."1y:2g~9Z*s2-K^zƑ"Wn&:yIȻWww V 'fsz_~&w Zӵ:N:?J3뎯x:j$,>km2DŬ$PU~fb(G)i5+M`)N#̓)z& okJcIdXKKc4D|KCI,돬GRTj ψ`:Pٰ`{R^QOp $PC\!Ka6R\EQJ$a? ? gx{v!W*A~jCsyvK|2頣3r%dȬ TM[Yz kN1L׸ٝd5v*+GzsMg$SY/;qN[aS\B9} ~;lNP viM#DK%&꣖# iS_`@eTǾ*TMyOF}:C~K_|'BԺ@7uWbA {:ݍf笘DNh^FxvWna*f,Gyi;oKu'yke3We@L8k)D 9R:JG7˛]K, +3h1mfnpP$2 *!HJ'9z=w!;xB4zfE*2¬;&a1嗵W56:4+q^ A%?1#/-\');,5wQ<axGc:D5&Sl5Vl v|J0N-S}Bf?jRh6Q^iE߳_4* 2 FW4gq8vmT~ {xM^o?>C}hYgU${aU? n#v]%ƎL>kGI3*W_"oPƘK|\t!GΆ7-ϊxE#[߼nBs ŝ'yKKZo0Ӣ m(P2F{V Rsʮp\r]{ 1UW XdԌ3S7'L!Ე]|c obEƟb0&q|zxf\@l L98 >'F~rGN8gGMӌͦovAЃ72@ȳDmea3Ar@6Ոpýhnx\כ([<_!)uu.Xkn;tI+sϰ_(>ƥ/.P`|uPT=?51by nkpf, R&r">zg{'UnysNvamxTUom%&J  HtŒHGO\UJC%Qz_['k{䐈ڤ2?Y,.UD`}ydRx {ULQh6͓&AzuVz:2鎘u]Ͳuz O 2v`DltwXEE.lM@MU̍Z0ߡ~d /J';~>IN/sY +p.Uwx*tvU_j,TKB:5+T?V6 Y3銜 uu̫e/;c%@+`7j59Jci\ Mp&cűeAxrwk; r`/Ue;ĎEwXczF:r6yq: 7V^m r_2&-+Z8·ɿ={NЬ1uSM&1*IQ$Ps;|GlDҭDD]RYl,Cx Y<e, p bc09Dҁ72P,Z$[ ni3>ѩ7 cI Ò5TRcM?Q?h],WG0}>,mh|DHa"^$QT۠'zk(P.&۫;r^BD{6\F¼d \L$@ZWΆVG$bA˷hvy){#g~W ڸ\)[^5pL, (<'(G Aȯ9E6I獙JP0#akt:UqGt?\f0K]䣷"oN[,6\&7s#)1TS0En%=M3 !M`vjX|\y(VHR+a hJtÚEZb w/:GHo2QI1y C >e._IĩX@%mN[{Y2r{ackp({9vŸv1~cK'n>cDK;OIY"/) b_PX%Yhfg97= %LuaN(G`]iȴ{W=2Sޛ0Lnp_X c_'yq+4ݕH>6m5viZrRi%{Cwb\fgHDrDU]EwwV4 aZKJ𶗡c='+Yf-xLgV'Hҿ(z3,1nKf eo߬?bWrH A, "Ei0_537y8z:k-{l6>Vf$6-e.@>߇,#<^ *2l`$s tP2C]x]Nqk@Z,rͻG'b^zO\QV|&AicR`V B $3<2ЎzdR6`]NvY[ickׁ,H jOBDS(t71_KDwԣ޸\y\4 L+';nM/$dx(?]efVyR4FAU(uCu*av^N֡~#2C2=;K l?7Iܩ YXDRP4pPPUN1--(,Nݦd#)[JrTݺO ]QBnO%P 0ꅂD˷u-u)=}|{" _Χt2d$HX<6!0}B}棗k8R!>)O&Xo2 P>sh>~%gݼL!`MNj1F2i& :o&RC0/&ľwxoitm>V#a(ڒy#$y &ɦec(KvR)ԲMk JXQ9ճ(tgiWզ_1QS v"`+.Q(N' Nl[& kpu`'$VvL1!l\P܉j9"gŊ6ŕ- l&`N@2;GOzOvnh#NhNp"?6`HZ ݨh2{I1#! [*SuFZieP^>ězCچjY 02! +/ᝮ~ e~h[םTQP aL|fJJҥ3R=xcNRF4Z03޳@;3%[س9{} hnX9ZGÃ}T U7~фU1CK!?Zw%F.*l*Λ^>ᎀD{h Li@j]XC{`067 YUg" N/)rZA&?_#oD+ c uk[5`it?Ctm:z.RUCI UˇyןB8U0L3#/K`:GF =Cy} yG^ݠ^T҅q0_S7Ed5$T6 ,&4NT3tR!Xd!p6#0%;G'-dotzA'۵!;T*nr{0[oZ#8ʌ#GX] `.&.,#d4!xH[I\4QS(U|7N{;W@㫺"򢎴װk \qR p)9ľCZG &13V;^t ;6s 6hiC̚++ @ s)zz}#6_tAxF b[0W =P:#@32oRR}݊ن]*`@v_=]4ㄏQi @Ew܎ o-3K8N;meCޤ|HDLKlQqQIp6|uc?6EX۷ZIM; 5ш{]Qr*=d/$EA& />1!{_yFjWjFrA?h ئZ _zmK`<%bg08:c{o2Tx-f^8>Bq۳ 5@\ N;ތ?K` Z P05e딜 oo"ȧwXez#+x^s8Vܰ}?ŤmC#{k V̇> h'wF3?r@u:)d{1Y\gIطF"v(@"uV ">,梞mU>I)'ӀՁS'M̊ v0W-;xp2[КdbOWv"m;xFoeC{dk,EǫQoI-l)$]pG@]:o*aDtç(j U rt٨ŀ=8Z;~2 (=SS3L;?Aֻ*-_(2|(JmQ/"bW0)OOzp;ٻp~#VD$'RAtc!h:1z$sȓ'ʘ=s\c*!nht$ 葼FQoً4ۭ@zIF[ 4*S5¯84uXnm(|&%,܎dKCk5A#yб?sgzZ)`d+l]qK).ʱ^X~Gc+=aKod=Wey(׮@`t79{VFlZSHeg97xs8P&Tp;W7+{vK'oÜws4Tˇ~BCr)%LR$52x}\N&:vt=3A{<5IfǓ=2,A/ɭ*O\KQBomƱS`YIIK 7.C*ySdnV t񠍊+:Ԑ~UyU# qӲJ9AOlKA.՝''<3Lfl5.7W4/#4E0vyIҎ낦yK $7ѿllB'S|P% ĕcmnJ#!BrPʣ,C@Uz2鿫C@EMZlVWSAڊ{=W5$}4plm?h:N43em]G)sl# \#8ظc5R$VRoۀ:&CD""k2OjYEрuإOIw3Tb>Kigtk;U%ZVΚsSpŎiXIhOLg 5D yRӏOѤLL7[ ތcDo;YM 1LrZ,R{7QT ڬԃ_NTiV^$@Җ W%'BPTȪxv Jh~jʝ}%Ux\/>xv G;i؆RS9=J,l9 ׾wTćV@.J@e=n`aV ɴI.Z!;УPY|0zy`1i]&;9v.kõPG>ꐪP\f:mƻD}*pg',[Y q4@ua.i=~2->4jbb@:4٦^P+_c;a>,`*VyS~uFF,b5t‰ ʬ*![,(6~pIhij@JL@ޝD , b9GrPw~y3>Dl:avu}t5-?zz'ҡo>SAXӟ߁>{r@mJ9m ,l GS ZJz0j k^ȂtIϞzpD>};gQJiq9tܛí-*^tOAaU!5UqJq%d,[ҐYƜ 5Kb$B/MR*cPkϫzm+ d;SQJXpd,A|$nCԔ Ѡ0K kMK=[guw FJP.˺)mKZP5@QCQmN!.֮~r6|K_XbT# $->=۸7 'np)iUB,|ݡN!,&JfvАe .gAeOq* Ew,ɉI$iD{3VG vqo4#ѵ|r݂YRbv,XaN=aBڣMa":t-K &R*}%z}*ϼ[M67tتYT- Kn߱L@1i "1 &>I|bvU}TToNC`M49xw67gcGCJ Pֱ%LǷ#"5(OG!i |aRȳU "g@x=$yQǸNI/wg7$G=\}AvOW%h& C"{^_dJmޟ)eXr"q~I d@<"85)д: Y$ɡߪͶ3IBx}-ʧm\rnuRňuDw/Τf&xcLun?+ME{,%$i<.WRRHbƻ뿟kP7b[HQz+J[x0&y CDB$SEUUZcsv\]Pއb{\ya:psSk3yv4hQWXG:*xv.Tبሶm?Nfl%ZJ9~Ou4tGI!te~23g| o3󃺷5EnX@agWi:tBWe|B d6򖖅w9#ֺph U3HS2xR#Ǐd80/sp\A4pQ)/[<ج׻W\Cuhߣ#7/`'00X%E B$)cX #jж?6i"'um'@S)295'Y h7uDVR9w+jۨk16 N6VESoqd'NQrڢߦ)?62@:9jCs]@rMi?KâxÙ#Fzfg"F^qB[w3M_LD O*:>b/BcZ'\܎Y씤G 49q:S|L,}̨7< &/THvs/xlHXDQyOojB*oZ688$L5h,!۞.V,]o3aݍMxWDЗ#2@Q–]|1㽫1& 1UI /c3s#.I@=#^TDk~'}mdM`]G 8߳]&dAgL-VV;^V$$Hv$u~`Ё& g ?0v=~mO6ok rGsREc`%ovON@P )%K,0wm{948Q }CW>-gY]-2!y cɃeN U)xl `*) #_%N7 N -Ib~ʀN;"~ HPFgohH$B;8.Suy->̯)xPJs#.i7b!@[gC%yU g~<5Qz(\ ij׆Dр\HeO;vk런&]8ER$pC65PisO=c+im NJ*M#lwg]НvYOk#*/ '- ǐ نqr%{V^pbS旔KsltyD|_Tgq;|&ʵnh:-N .G_#Mr#nD;}6$j+F5UG2vЕm㢅>_rw.Hj#mю:z(~Z0( i/!Tx/7"-kdNt t1-Va\s&X QOGd _\l{^uȖ =ޝ$KJԧPfۻLkLm{hfHFp1F꿚[wGL w~IhR 7[$#a/?)zڞM\YϚ4}πu=a N\F-ӲZ>8%#$ck>WVhc#R,Vj~œSad(i1U1s~/ϒR]Y=zN_7Q֢ᥓ3H{>2?hD PtH6c*ؽ2p!\Y*O7#(\bx 0b8XBN;gGز V2l(Xf=J&MŢʒx&@Ԕ0ikSz?C!AbGX-@.+KF"IbrC +ZߓyCg?jZ 8FJ:[1͂av-M䛄wam Y+5fll_;DBl4}1: h\8γgipI Luo]T0 cm; v%vwc>o|#Wl9 R}%hd83*Xΰ+Yy W_AMHi^ZLɟ.[(Do)ΣVK9JA3:õly p1fNrib^C=Lk$Ś'FRί;%vP+/C09<Ų)杠^M MIyy9C zJ߾qa4{Ų<()$~!ȷ]L/'OFCM:=6+ v;cwB >G "/eY}d` "h+ 8Ț !LXF0uݬ J s"! s{)TGFϱ"J,`cd}RE!niX;OnzPKZNJgɾ;ւ_1h~)s*d2,_e6h -gO 4 /ipl_HI[BXVKt΢3xʀXFV͒(ڱt!ޠI/HlT٧vb2]~tt)aw鞙7vDOEL\x[ 蚍?=9В!B|T(,  ] \w7( )}'B_V(%zRxץuoMV4"#?񶚶쇏mBOϟ]mdD]?&fϒR,s P\ ﶊorӝ|vƈdS5_~ư_U:9 x-'2:0(?;[Fs ,{k': Rt`C ꉹޓXvM!HSvNŎ*Oٙ:;t'__xr,va}G\'ʲb\sCZg[U:XJJOV#tHR .V4- }NBZ#eBt*^eC3XJEĕIF]A:m)NRmkC 4y0-4Fa{܍*!h63Ϙ sIX[=v\C3HlSd?27,ʉopBI\٨D`%oGzyDKߞ4ʉ_bͮ{H -?W4߽G*˝M*~_i p (X\P837c/6BuF LFoN: I귎uGLA@n2*B̠md?d9̆ڷ΍Rpib||Zm`xz$hn/w0;OXWo &?ݿ%W4ψ)uyBI;9zL 4dP:5r呈 ]ė`E[W|m> F!T+-u^˝)3]cvRuIȾ_tC"P{Bufx͸O\Ugjݜ,a YC/a%໲.+I(74:ܑS8/d˗EH~l1m,ͣ|yGFA#F# N"Q{RzzgG;x}*pJtz-L$]E# dr gE#6%C eX"j=_X3\S`oob!HvKγpV$csEpZ$r\}h2$_7an0{ĥ+vcZP$MzYYBI[mMb'յ Rc(,OT6v@z脪SI}efu?<ajG:z6å5fa(BND/DjKūҁ>mw V^{O [Ejz6矡NjM/S*j{SM.PEm;Z Vf|sE#8n&FCh<_tڻ|7xYGs@2VjةeUAաf{c07n~?\9|& E]f$ 3gg5m0Ւ,ry-'pqx"X1 Z1 m2:)n$W ?$ľSPB #oзgFyt:·m!"WGv™T,jt]uLz@y|ҁޏZtdw|>HY@øt{(6<+*0IWf6M"2}xL aa66Fޑ?X0dC2jDZ*"kJ$OS'%}-N1ᣪrmdkl'ݚ%5>BGUhxpZ{{ѵ孯9ĀTB%ۑ'͜nq=֦+n'8b>0.?zxJ~!IJdX";mN p~YU6@Y xъHKH4y.bx|K[F5Zc?s-8C8(._Z˖oZ<;/O !mo]g\XU+egl%m}/r22lj{=gn?QEl+/{=(\H]N2+(֑pP}}uƻ2p]Zkd )(B8Lvb%PjJYoM|PQ^Mc(|).ޮO+ވb=H|# HrLe|x҃Mg+S߫@xK ]Fp%=d}GYGa."je LE9A%wHW#s.eK0E IyȂDNq`YAS>VUF SW,wMa|JxRԳ2>퓈@zH um"3#^_/9KN3eԢu2K|~]rѣ͏i #Lz 5{Urt/lϗ,D7nv]$55|2,10uߌZ %ܫᜊ֟bX!#bÈ<ݺˁTKHpM;g .jq~f~]eǵ =8܂?3MDs +">h'M&/rUm *[Bp ʽ-Fnjt8^gL?UJ_p诠,/q5uD\80<*w}g2bKjݭ+Ͽ+j}kiߤQ|]*G5,TS%ԁ4DLTEmx_طsh`L)C5 jwUSңJڳrR !ݫtfuZ/qd  hPO+mQU8Mr1y[Ⱥŋ3V5}F =7Շw'[XQ*+ƱV6,e$sSφ'Wɍo"l{ z4&xxcKQMX6y琥k`982e0\oQxS'm ~soLjyMg@Z<>$@6nT\m& ᇕC6C6Mq~3MsB >=|LQ6Ȼϭ;?O 6⢔m`oժ *a軩IQmYw`wF<=nj})}}^cBa2Zᕗ b{vc_+?c߄&%!c(wvC2 CO,Ռ)_44pa1zJOBJP1"fRps͉g$ u9n+/dz|X?z`QkXZZj jcQYZ?Gr|½et`Ъpc(_N,!+^А-n"3>ShLlh=8w)!})yuF;,&=%<ŽJ(=ƇX6Y?6G m2ӥor -܎6R1= GfZO rNnvHUS`ؙTR& A V7 <s2=_n0xۃ~_w6DNĆ0pDynmL0<r=/"JX%ޓkQ2: PkTm(ԇNPΕPA9XNQ5s9} L0; ğ%{Bx`[Qn-l!2?$0jYn?fL,*[#'\ɓȳ8 ~'"bpi>阭{H0qgdpZuǐ(x{,kkgҴXmɐ<|[*bVy2NWNa%%2-9AY/ ,˻QI$tZW2ȬN6{7/ˏqXUO5>nh`i<JP>8ɦpp 9hz{.@td/`u A?ʋn^;(n7m}vH)$'5Iq66ϒS.ĀTFyk+Dtسyo( T~ &Z[zMz/l&ފ6{ Җj7 +hL[J:¼Rо/ZcqP.kI Ѷa-}Jg9 h~8! *8&F%Z3t $pjD;^d|}FB RA2"+W8U\M#t#zr÷ۅA/ߢ;_EIWOl)3}6#^@:l౉+QDȁ!|&IXXS3T x^BD<[qBqv4 > ]1 Jg>b3Ѻڝ$܃XGu4iHES)'WXGտ==@[_@W}\_ӈ)@AINX=;ByQpܱ9`,v7'ܮhATMi$5a#[/1E-ǣ[g洃KGy葃S5[jBahD{c–eΛ:]J!uR  [,1w쇏#׺Y$CoTͶ9s%nbCBD-[G!|)ǘH/(^=b_23ݏF' s7bhwE#ocLX1W+|V%v>Z&]r-@1la]niBh80ӽk# J܍{ςD|묨| rJ ن8p3=rB%ذDw#0;0wѐ0?r=m “uRoS9 C!q x TeHA/ևdTE6#2I⥆p&x sbhXHO*4ɒ :cQe"b"ĮkpK"WY$n."03@XO@`mJҼ J w]&ϸ(qx)hP.*,(ѾxKZe =sfɽϝyF@MˇS)koi3kBϊ(W|l*ӠE.W8v=x_;0y;Y{Mdu 2$7sZ%mG L𕣟sU^"9Ԓ_=IwbqʶA0tdE#A#iFN2o8آ7-#OS$wWMDb*xPAOSF 9tZc{G5g@ǜrr?:vT0{L,ϕm.p(gRn 亠: хãpEjū|^'pC>< jڞJBK?BJ:6C|:*03鮞P<8n*Zn C~m1{߂%GezqG^eHhk _<ώ ftY@8?Tx2햋XWɗ7/)ޠ=KeMo*D| #lgKL cmxO4Tw)GM<})%YdUFB =~Mf:@|xY҉Xm~)GXo.W xcC`Ch]3d,~;׊F# "R@j[(b/S~n`s!ʆE-{:oMfx0Cbss`V 8KXldFW8f\x$nyP8\DK{ٿ PXSR'jg䘇LMLJl13ђDhӯ~BOJVRS 4j"<[`qB/c$+S7HSC~ҽb<}iۙc .gg'X_t'|NJtOԠ40Ƴ&j7^ۏb@q)Fϛa'R )Fr1%)3L7Ur:b8ዸKW@@++xx},H(ڲqUu[ M|i,'ٍrYr !X_#c}FG*vZS]Ge'{08ЯT/tTth}o*6r'H`{ |oԯzhЕcvCHW,W_(jxrӌig[Des1LJư672 }MĔV.RN;7)E[UIXGi5]@K;ͣs ~u+ q`J(Xo.%~6T[O+p(s*ҢѼ4k{XNY¥Fl~sط$6֭/5`Xg)7ƻg V \bۼF_\mͧ翅9lyNTJdD6mȹ"i!gM>[>[M$V:P3=*v"G,艧` o5Irk(UJ{N)HKƗ&at3%4<08z"%!W# [h$Wݜr%}_4@AglDUNàBxap܆^g@̼-k׎yGVA)sXD遞L[J87 nw=z|r/}?/G4܇vsҁ2;۹ 5 ƶ}cH-*rT0!. (RP% `ʼK j#m̌X1 LdU#"nRG:rLId5廊?"tfB.R7{@=~H&dFJ٨ 'iUMCV,pulP._|r! eO`aW%;n֖e6mxb _`JwapKQ` exTtkń3ia$˳hEs<6ݫT~!Sqy8* ҳHJ+~ެAdd !A,z Kwh&DG`5n(0M;6Մb\h/+5 }%Tԕ Uq7$Z[5Zv Oj#[;ps1' |;4!5F~H $yJZ{dz|#>4 ܚ{(r֚ _gsqtX43rz8:CpFvz<+gЮ\FWP Tb+[WWJ>bwf?)o9|k=aJ Pđ @Am("'venW_MP(j_* FacR(bFnpLN'@=JHҗ &r> f0 OLkX/uM|RJ)k= W+πJ;>%|0qC+60ڇc-:oũ .i9^0CҗjN-Vy})+ဈD Kp  Z,td6 b{!n0%/ypMXWj8ߜeV1fo\7I5>ѴI01lD9 '!@OX_H6$* 6n<\ Rr45&58ĤˡZ4v^ oX{]:Ni#va+v{3#37V!2tHfلN Q3(٣~+YW GV [&&6gBZZF$G "ׂ*WwB˺P1]2pGfSdŏ ` aoDF&2 ě'q.Q'YuF|3n~gT߷ ..>1"Ȧyt MbO4/n3T*mNFi -W_1;T+9[v5Q$3iB4`nM6euGh޼X5B޺q͙iIJK>Ȝ$H ` (> 'ʤʚ\w>pcukɉYWU3E.RZ,T,0m i*}hSZ]Rݒs$24$:V/KװG-@jd/U2@U^ʪKJ6N_TN <ОZqg,gQ ~[d"Ma'%2Lqu͈ᣄ'<_WK\~[vӠ|Nq6SKnU29Ǚ8l@7^ss`sؚ˸IA tz4N)RF3.!/Bigi Ű=lk_JFpC)3lr$B' DgZr57~A$^dv7ӆz#^ۚGހ(9oscK}AgBBuwūa !# xC>?<+:KD)p{b DuRֱ&IC}^ZB5T+e,'}uqja}Ar]c ^"SO^p(qi*Q&+ X ځ9`,k<|&p(L/_Jy3]s:=zc~H\@W-vQQ +UJ (o4k2 ݥa5T¼v` , JFhڞ{`pޛnb@(dRߠ5p/fK d-|rŕc,2Nժ\{x*: 0?<*,8]=?I*F-0$9(R5X%G-[ވp؃LqΒFwf51}khLH۶wq9w "Y7`#pM.ٌEJ8*RV 14۳v/"Q\a0Qo-ܦ!sM:R[3_46aTi_ ̍I8j~ʁH U`ὸS;9sk:Q;Ez+EjtQ v0ț4v߼7[:ޏݧ)rA}> g8ˠ7e-bh>9 0f_.xι0A.ӷ=/<W6C3d=_& }do'<:-|X%V|:ŲɄ̀ oA[:h`NO>KX !3>b'܌WErPCY.|ԇR%}.TwX&1yIG3 {ݬ9U혟7mU*K`Tus;>Nf`\4Z22bN*Y@{jFNK-slWJUmScȜU.p)߱SeҎDE% d26_#%B54d]+HMS{a#OW^CXa{ ohwwtbHQX`{sQ~e2* /K;[(_y\_U.-,J=/OcVR ~Ѣ#`Wh~g@qɽ旊\|/}^B+칈t0py6W^؏fo+,ME_;Qb%5oB~ M=Xj=´!c;K, _+#ʑʶ\/e'9;! DPnX9\Cv_BwLWQ!, Կa"ʬr 'M-m\u@dNn$]7zԩ %ݠ_$+T]>vzyieMInva$.`fB6H9n ь'_n}#ACQ:IG+9HW2׈ݟuܹ5&Ci L;pj%CX||±|>4xsuO)W3xZOxܔ<zNtT &&E異e&7YO8wO%i $ˮOυpAҍ[}it 헲bjBUNN6 Q#jm:*r\ > 7yGu:ChJ|K 6B1;se+,iltX&cX7oݴgml+KZ'#Vl(R;ގ{ Jg>g_{KV2.(3rT s k= Tha6>Rre^ѢxZzL'2uuQsz,XP邆IC) Dͅ`a.eb g L#o^OzE`Y/܄ܑU{̔9 \g:%6hh>J<ڻf1 Ry|$-c7rN) 7 S1l6֌ g'L.fN(PZZ^/_R]Bah6^'SCKaCP5ƤQ?5>X;!ckfWu쳚:%l}i qMas{d C9IAzVsj~&8GI ˈ';@93P`K雏:yҭ|!8-ޏfmʀ̈;,O i8*_ T/w[eUI@WL:7?K6â*ll%(7Cjs[ڑ \%`nNA\݇26-;? BK~U :gYC;*;į>[YE0c>*NxCu KߤΎ4ܺҌ~ad2Ո-,WRC9ctMAU+TX$MР~&n\KFh^+ -W^8]Ќ=雇$, n]FB)qփ jٙ+Cf؄M6 5~c!Y#ҙ}}>}X0Je0Lo,6o}D ;bɵW ^"Su| 6 ^/VDeg)1CзbHj"ThE"- n)ylTJ+;Hco5 \8с.i,@'H Ճ|I|g?d1AכHm4ϫٔFT-Ct3xAInWEZXLvUus%X>j6ēXAirt|G/:E:^%4BEsTu+Ɯc09F;2`ȶ2Vqojx !f=YE`,(ek]XڃDD>aٳk(R.@0cx_\7'qhpOjV)=\l؁㭉({/#ܴY*D5@+sRuSؖ:T`C PܝE?YVGؐv6l=a!}}˼I'/ ɸ`fe\ܢq/X ͿNh+A w%kf9A>>v^V4弝|*./Wހ i-P2~?%S /=yʣI RFeԔQcg#b^ PDRn,m3ľ 휆 G|By#sSm'w|gtl2G rʖV޾vAwF_kthx[~: h69<g"I$k-Vt/2'xDy`MȌEkBeM^,VXqvfe el37"ugvbo >%.5%ruxPrdZυI|Z#cټ7_m*5A?-I=cӼ~aawȢpzbǧEǴ"h]o_ʸ$۶AVy"X0mU=7[dlт2,͢mbp"g֓Op6Ey=6/'>S;"ި.v?:ٕ*I:6p+0fT:;rօ&ڿV&h MKQQ21 >GZKLx ڌ{i^RmA} MCֶS3am w\P9XT!Vy~k& ;csOޔ Kdlm74da,42o` Xk$N2kX#RX0S5d+EI3Ϝ + [A-U"LwRMoD1NT )M_Θ&GD@6~"'­@u!q{*WaaM^"Vj0#7 U9H^Wtpj3ٚ'hfiB۷օҍJGȕ`YG1] btbK\;5vw[)α8O!:3$2I*mk*e/s#~Dswи̫JG k4뽞G#͗= SC&vB { q lw8@4G}XP *HX_7MI!#h'gth{!F;X\2@4*3mHΙ 0K"*I( Y5<qAP +SA1|O޶B5CۢkZMb)^/c_'Ȓ+P?qw޿D]j} n9n ? iJlQ‚Al݃B^,0U o][r NzlxHV0&j|`rVyYpSaE#X޸*~A L)c3+EvV[Jm v>+K$UQ*\9qUB70K/^ ܔQc R{`ggvۗ?iY%9r6SNhƛ֊2jgYu"cnv%]qRY<ށN%!M*/J]|1~hu;W9swo"PZOHhsSWXKxtcIs쐵#zK C=4,[`PBL&?^eGé}Hܘmr{@ݍN S֕}Bk4K%y:g(ɢlV64@i@d6{LInD"EM"@Q I w^ RE}RdyeÙh7WI֖nKbBG'jw;jP8z"S_9W2qbM "Y}f0ޝpŌ­rR/5{ر9- Ɇ!~,LmqS*@]>幧^Hw+Xopz=E>\#+DBVO뷪mħs@/rlWٱ6H*426}!aq â\n.;:e<+ܔ)P8:6^Iߧ(u_5=Eu)T6cUMY;xf!}FIQť9$ L ^WcN0)..΂˼n!#!ghf3Nn_,JtRk>Pvb yRBVl^Ռ4 /)0W%+$E[ʩcDMCt |yFeM}Vb Y"+rh4g=9c܌Hjc@vUxOi~EdPͣvgr$e8i*(byL~ <71\oJ;E!]XZ\MGv̕!'F9 14ς.4#c(B "A.lk_FT"!\x. n L0*6L"ljFTHXZ XnjRmT=l\\ #Uz1P d`s$fE+T*Kѣfu:wp8m •dϋ~2H]M}@?t6G0i0Mz_$g1 ߛ|VXOVFBDbO%UD{;$]OacfO6^òن <)g'D0hFu ?ذnb\Y=sbØR2cIuي6\TBD&4 W%'81oNQCֻf?dr]fioΏx *bEcN4k@0")+h= c`uV&b'#Usƒ-03*:̼<3:R".ƌ̊} C C[f^l{ MI|4qd2{z*4?P- ~4LYxҝ1 A?oµ`c媱rJ #ږb9x7b؝@\ i۝K2*ݣm@>KRӺ^ /áKL3Ӟv/5#ĻN9!vE=n,?Aghu C3RòhH)Y)8gy:HҖ^ڕmj$wYdm D q3p{ V_AWRgca&$7"OtB4Q&ے6M xkb Ωʢ=OYk*^?l4xNO)iMUuQ֬%?;ǐnB'4@U7N,oH |x!Ivabs8u%`M`4Iٸvg2jiuy7P WZ&!mvy-͔=5~0%:0Fl? >j29&:L'w"^~EBhN߆gAaJ[#Ps|u.LLyGMR DU=N׺#7xB.!u\3U;X$U3$CӪ'Ը&CpmI=ʮDP!=9hzqXpȜA>b>W@w@LWʹ|CF"IfE 0dA ;So M-i _stc9Lư+;t{e4OȉךT0{>7Bۓ(ѥ+L?_(&{tPQTiwqB?|Ȗ-Fܲ@i j/.7VU,6yi6DT4GDg#B񱡤n$PtM&?;#AY5SEsU,g:Wl~C5EQj{h(sPKgğAw>Z Ę]YQL#$9J\""٭BrB%ot?k \=K GGbV}ܘ/d!PO"](C~}f~7 N| L&'&5*2~ZoOumuT.Z=/uFbj@{/]s #eyЈ ˖D"}u:T`n{KWs:0I".)%Mt*eC'Z= k #×ȶ)/m eG K9G)V˱%Xkɲl`pI1Udžk'LnJR? }nj+)| N>qOfwrf>HYYAn W Y-i-My0BՐ5h@ِS@Jfns >J7t+b0lzj܎8$FJJ+WT .,ߍ2v{H5gε]s;̿K9bY/Q$~UQ7D.>8PliWz@zz*HĔ:|W: ӭ!ԄMo˰Loڧ֜'Q* 3= r=@Ac&; |=jG#FcUb}O:a6A8 1mXre}XadPX5u{k $삏";RuTQ :1>צ}Z{B}BiCx)”$Rƚxϔ.^ACmf3Mݛ]YkI>"$eO> x;0!  +cX!Ձ(i8ܻ)@J?2;9^ṊƊ,%o} jjZ +)ԧHTvE3kɈռsaˮyA(PݭxKTS$taժ~-y洒!郢aUɂ۰i=>f1`dxdBWuL*lE1$[ۗ_%7Xqz$GjϝM9b!_5g`%- TPS^ڸMƍ?I3hg]Q](|tӫ3,LzHTp;8 ~b%$T@qb=ҢӌNV[~'Te{ @*09IbuwۘBd7Riđv& D)*h쐘fe ,u)yfO'H[>Sڕ W%lHIx*HH|buk `Q󸽸y j! ޱD>{ͣyY^yG݌{CkU-/m3Th_$ؤ\Np8pÍGa9UAV@ó>{(7y4Ku:tL:HL%<_oDsuR  j򠜺GzhlvDkz >cbM%<+r;+h/[e;L7UOgҍIhK/5cjƻblWM*U~k#2h/5oI,dJCDtQf\J=疇0Dצ-_)t`עpH_j@lC'V yo+9e\$Ns\)ceT\̠R3Rf:&W /z9L\,`iCG*yYY_(A+4."V=$I_kʘM*9+"wΤĠ{0ɁqAWzq@Oc0_-q8Jhjciec})-L'M%"W:.餾je9Dtuu@zU(x:*jd9m^ /t5uB14^.PE ,B&a_#IR>9@!aE1,/ϚyO7=P񇤨r+h h.7.*_fRm{5Ey<ͱ9uQƦĆ\s7zo_bM)7dRYHUT21 &(7<֌On2 ?Zl|9~w"c%69;} ggL3Vt%8nֱTܑ?"hBWQ+Q ڤ%Ī%.)Dh g]J%&vhA~F`&?$J3VS\s^% W2mP5S0 'f$w[ݩ"P%$2/$~t$sJS凖uutX-ۿ+6 bgƟ\WdؕX3;*[h[(;ʋ-ol  ;RK)y8Nzt^#mC+=Ӳ Zd#H (\qv\2^f`kkOGyܨ5yHʉ L>@pvH%V\WvZjᬑgCY2^,4ʈ=$|82~ސ;eA(t\׋\V~r Ub,/ H~A[Č߭?~S~5|n.OqOkn/FFq*BWgp Rxx5Y?qB~R)"0mgb; ײ/@$+B{AzԒ&RP*q3e%KC?UQwؐ jx=[07Q yrzWfC1[ ؑ4AG<^QnMBYM^bp48j a DǘȬ[+!@A!4D#[2Z 9|8սJHgs\~gO`"cEo {Գi'QYƒse'fM$3ʪ 8:Zqn zvjGUٷ|Q'Fhb/yQ[ 41 66ӄa Udr6`¯՜_nD{IrUug "8\u_Ľþh:_CC/׷G; b$ >;d-!Ojo&qVU E7q s˃ "eݿF}[ny2S M89:Q)ՒW:b#wfB(lA[aw:Q .8c%_{G269 ^4%oƖ/ u q3崟Z7۴9h0]2 Fm:(ēж7}kUz?$Bu~3WaP9Ez'"[- ?*>[qLm}wY4xűVYЅm'&XUC!)灳 wvåk'U)ػ.Rn-kgmh5 Cr<٧b됺7du.6S>$޺ wx[?U"u[٥JPTX(lC_LΌ{$^+TRf[.R`TRM%# #,Mg8!K]VGoH47y{::&]ՕI7Bc=/-yoC&RC>35+m:cxḻXw|F T-_kw2 z_ӏjS҈OD9<[C+>?H|[BD ˽<4O` arDp,6>UX9 RJe ?itVa'Ř?+T5MT\N|0ˉFyC|o XU|ߙ`IuIE4Ag їփIf׍d&]ml{2J'չGDxVܟ|4R9_IÁ:gYHh(rz_-!:ͭ z#%r߷v.~pFEZ^ *+g)5:ǿ6<yP(SxN19?b'؅gXY :uB-Q%s1Xݻ|`Wi-~jmR88^ͣ@hy' K%_,u]s/{;޺SdR9`Za**Qe?61=[;ΩnUǹ]8ewk)JQO@lk\O8c`O/3@Wŀ*awł.(ڞBAJ\uIcHY)־`Ta}Bet1Skƪk)!Xv(F7ܧn8; j-ITUc!DqhdR~{u ,>{aҢͼ\.ZM;/Cf%H‘yfY|Zd6OY!˞_{?=t|l|C>\xruA D,JCY%1`&*հNLw˜6ʼqSƐ mȘtL/ A~8^]!*<)˴boԦƗ˒~.w/R 4klwAkGnVV<3s؁-D;n2׼a"hdZΛ /@ ֻNfh`ntf[UΥ~YN }=3 IJ[U6D< G^*\&y+ Ф>fw`_+4!h g?POQ$jv@Ɨ$׾(Pnε[JQH [@uܲp8*Q~X C]T-27zQ9Bҵa18,G 7WZVv7*7g䵟(eHg|!4^N ׊]**brJFډ t4Yh*<,K;}?ue*m [eY?6Xgl2@93#e@0\hktEpGioo{o}24}!ptLn;[xACg)^aBdHQ2=N-C0e!-n!u#PHc2'p_ a h.Ї)x<1+|.]lܓ$xkvb,0+!:u2id t:Yt]唼|u~qCx,w2Ƃ# !ܚ4elrPk^ zᾌN[%_i,gY. |bb .=t7q\Gu J#sdBvO;mـ^>Y34<$rLz=ywi|K AtaM*= ] ~wb-by"zzNq:eݷ'2Fyvp@x}CS~WfQOtt6-Iy#RV|{Š?{iVtmˬ6U:xrH"u$ 3ŶaB0xr=2tEYDݦIK3RG SNޣ=xZ`!#;2ie@ʚsQz} hڹic4[?\#?P'XPBvuQ/馤lk#%3t%gH d{y1'9T~cV9RXSf2ڂaQd X';4fgL]Ƀb,1lΑynGR( Y7!{c7% I ʠ h@K+kBB(& ">19Y5=U%@:¤ZoIhp"6HseUx`# gJD XۤǵXo%To}8n'7Rv7E~S%:d)6T2sDq<Ӏ$6rerl" #^.wFMsK/cc}hWj QdP ;mN0m+J?*uB7qщqEیQϧv? սRՏ-aXf&Uظ Zkva2)qiI<ׁm i4w}@&LL10C9y]v*esiUR248頻U3e@HT` @qF~>dGK^fW|W948aKrOdAV;W8[iV[J:yiD*X Y eIwW9!d"Drdu@$6,j@l5HFct;w@e}*?~u7.HeQXըi_s{:d /'v>$I#۪-(4d:O wLj:5Jp,?F].sL_++LEհc+Fimp 2k+37^$sfOF7-W\{nn\(RVZ5WnW9"2!ìf `%&0 L2\cmʒϝ:]X#ҽfLS׆f1Y"]aѯsޚ~r\hJ%n?q es%ɑީ`B<)'#tLf;J|%W)֐Pof)DYE E{ UUbٞGKŅR-`l[lM״' 9X qcu#<:+!i;ԡNri7cx۞H:ywA8;ys20bl&$>zVFywz"!~ŵHYx,3~QO|ӑr iDzJXa3WFW~01Gz4U KXWvg)y'K@(FFBD;*nbI~<\8>PNè:ɓb7ʊ#=ԙ wDC:N ae{h\!I2sƧ}p/C%y{²sby~ϚL kRbP@BUo=PR?b!JtV<9ᚋ6mӵЧoevi7p 7Hq(>z%QvXtMT_}2+)@+:C=Uua~TY eSQ g|{\e̽uO .CxFqO?{Sn?27O:h7>H'ކ R$c\k³ؽd WZ ^H%973@(wO[|HFwh&"=i=%KZ>~_[J0!=ci\F7)oON\ԫ Q>Pi+`D&M@UBm߇8xʄ6-d=VխmS@󗳒j]uv|J5+\3\me}1=QTĞEʦ 4ϟY#2ƠhPo؝?b~7Can.s6:aAztHuqo g>SlI-U/Z'x>k?v;8Qžrkf1ϸɳoe|UI$&57e+W]/48fWtd܌?'@BT~uAƖNȝ<!32[߂8v/C;i6d@'JħjD=y\RX ־#:#L/g}?hϽ(E0Z2[ YeIHQۈ8g vA+ ͕ǜ/:36aw)Sio-Naui74M j$}Ou2iȘGoLCV$OKvfl@ PbŚI@M|AH֞cY\o7[xPd:{S0|w 6Sp.dpMHt-Me[}ێ>YuFʱVflm݋LJx㲒8ybwYFuM"&#\Mʳͺ|Y;Q&? S~{Y؂7w#u X|ldt%Sܠz&~#kE KQUseD K"xG:`c/<!0 qa7^z@plM/M'B/.μw~@qv)sgr3T 93ꂍog2ξ0*J^ G 3h7&KzIN%FY;ڌ`#H4iؗw B$ʎ[L8kIywJ+`uh24D!Ϯ3+<P;-O[pLy]9FÖt#K6 [OW[Q YK0*v}LBխ{=+|[Q6ˬ#SvcOل9$sc 3tw $A~Q(RDn*oFgO9QZv-i_ԂW_*2sO>0=y?ӥ><=M[Õ #4+ohh_91sA3p<;so2Ci[a gZxkLCbЏni|=ͷhנݔ8hEk鵅v3:  f+|H3ujI1t8Ɋ={2RjЯ@Ik;kW-ΠQXћImkd:+[.N EVK7X ! N޿S|V3,+@jc=_uԃa(I6ۙӾUgyVkp|u|\(NABX$v֡w@X:9؉su4jiS;N>g˲:cՍ0: ؀4<+>w:/b3$jgkBvGb}u_8ǁ uB5A_!\vp| зOlUϘ/룪} |6+;U96)?GGElWT1&2du dH)un#ڳ<;E8֓G9y7rs|DЉw;XH /(׀"[b20'$XJ=LIM< *YN"w F;LPЄ2č.^Ɨ#`@^:2$-,K0D 'Ͼj7-rSf9EDP~GlzOx=xt̶ W,mCR]gYjwLޘʝ9#ϝc}O G\聤y0/A+Ɉ=\yIאkܸ$da ;O#uݎywe>gvyi>bX7+;Ɗ*twD_VT4M!s#$byB #}j3kI+UIһڴ ivCWW 5+We%?r_5@afY]W[jm 4x$N%#؅8_EXDӺ!9Fu=V#" gTiv5'QBr>M#%Gi ǵٳߠ4=>& lϘgA9 ˲[Y^0cb0~1hjK%A'$1[w4ǐoTqc潾NZ{QFp ݣZG`V@=`'H޾zˀKk t \&k5Xerm0!N|@|_{č#D:| ! čbv:웡AW8i6t->X{^m>'6ˉ9&Y6^~҇yTWlc~/QWs'҃{Sr) DҟϬgO|*+e?Lb֘Jycȯ l7@gK9ªu@3#oeemz5hLLYj!*%I;ˍJVMҩ1,y 595/gOgeI{2Es~hRL0v8PJwlGGZk$NOC=+_p7n֊S=.IP%hb]= ˇ<l}cу̻o cT訨"8hb sdg]63pzHu`P^\,a902RR =k\ -$X(itja`)K)x :GnV`x&#|.cFVEcq(:3VbG:25bOa %|  S>]YΠԌ h HJIMCt[>1ʍ†g t9 YkfLJit.s< ;7`t3X5/LSSU_|{%P9hS[.ѥ3"YJ 0<^~#nbcu1K1sqX"0~yTE 8157`!1g"bG 󲔸S]_=GA4QùmVoCRJLR-4hՅ*ǹ:`C@ ޑ$CYw*@*dpp@50?5t=n`#kC\J~:B&2`Y/RqaM5E8fP݅LXl (cX6eiaW5wrG!*6BpxGS{ӅELw)LAeӹHָoR@oJ1'{Y;krfN(A)sEKMH]!q }@ͷ@r6!_%Yu9P'twy?O䭛2e(bzi>0{S%<,uE49*[Q*x^qYerm':inZ;LiEH**"f> ecd?c#=4#_|qg MN2{`-Bb (%u'2u> 4Q?2*XņE=Sr3;ndS!WªP_{cmPiVPFԸO/`m&MJ%fL`F#ti}ՐsO]tFڧ }{I aBYW+&e0E%CCP,2m!a{v J%ˊz㴠V~qe$ '#-I pf}T؅iR`Hp߯NT^*@^XPł| Tj<&v;pW5Z%K<1>u[SToW[7.XŢ-x!@k=7 92ULn ђV5+Hdb GP4"j@mcP+ sG&BVM&8+aMWqN(ONxxŤ"-/9ZY[*rCi <)r) &L`]<3piG7s؊ ͱ=z~T nwGg);2? `|wKrU;7WNׂj7$ɚbIFIf,"0ą£dTd8{L^yk ƭ?/mqgk$s뺡MScEрaDHy_'Y?b-n~ݜjǎ(kX,s=%+k} ;1tY-Wї썶2nd"kj@C3A_eX& \^ʏoT۝GP摙uFOyڟ\'9P,KQ7F˥jlje$Q=Z:P*Umwknݪ>Jh ~ycu'lQ||݌֗B@]>|2/8c{5 ܆aD=.GP"vvڇ,^w9>^4'FG dxVn'J)l/~i. 1I<@}[Y&C1X3͢'x\p\ȩ6W`D4OE7u(JXLاc) 7L2mwIƬB4R}@ʒO ̾~,T0~dqcE5rG 7Ԑ, ӯ^3F4[)6mm/j/tqv]z3iסP.NEO[-Q5_ji0(?OQZe{޾Vuub}+*e_O!|;C}` ih뇂Thڬ^k'@@AZIDZgiDǖJ0DTgf]xfEYYp6;QQak |ц⼰:MM1Y o@jaXB15r\Yh0{vZ. 2y_hRIQ)푸E@3D{Jr ZM0b?S/Y !A{$pؠB 8c@X#T^i{!=1_؎i[ Vc嵣7--`󜻈yЏLJtmKo ?SD %bv4tudn, ^Oļ>Hq{*%XPZCO Qcϸ\{;D)mf%NF(O9)b+עrϒ R kU5;'rqޥHyMQ|kp ud!Ӏtd=Y.{6X Cq:9 1wVwm:˘ TCFJ rb˜b1L&-Cpҙ s`ST< uRFWe~Nfh`,=w(4Π 븪4XUDdR' ZzoxfBIh:I#D=YB8km>s _//&4 ĦpbDOin#)ltm21ӟrQ9Cm9uֈl?¹QKNjmC@iz8| ټ&r](PI=,HQY&,otį#cZN*bw}6o4ؤB5HQ1|lԷw , EC5hJ6LRE-ÿZp3D++XS![ ~N ajk-W@.>e2+Dv97FE?z5od[p9q h,ii`}`s9!ICN0XѨ'&i&Okw iBArFXB*U\?.T}r1`}9Qf, J`SMD_a@ ;v$,4Q)(@[ZhC;PiOVX*Ro Q %ϸJQo2֌I 6qnԊwPs*Q)^;We|e]1'SXmWnD wsְV R| 6K՗mhs n=;vcxAcBߌk|6ubWqmn7ԮgP$/ bEEb[F y+v19&mVp-ѫ=< g6 "#ŐSE\ eL%)R@U2 Mkuj=*Ƚ62ɴԫM7fXdsѯE:b"56Nӧx|˓̋+9N F_^>51~h B.μ+YTl?->Kmd7#6q>qg&/6oiT*G}K˭}.L+pT*t{9`@qp!1>kMaÅ|7ߪ(:*U&TU{D˧+KF_e,uhz~̞qqδR7C9 ^w>PKk[+?RVgs=0~, 2U(q]{bUחF=7Fq:tJ'6ݘ/wj5+?>q&x>bHN|9(W?/Ibս+*:UU6lJCZl#yή ewőY: .}8/Nl%yäeJcC‹?n}8Z< Z>?.$^bux%ȼV5&b2PG퉖=?uڟp+PR ԧd s>e6qi*]JAM5lV38q{KJР'O̮jkFpKh q׊Ⱦ1ә^nߩ 2>J7P #jԶl>(>Nwt%X\760᪐fy = }Iu6¯k3Mye4@(X;YBEF!+DТm8 n _`Q]ͣ؛Q$G0ns`(w8,* z_b6_/-}`yyT3~ yYz|#Y}wh~X7.~tUBM$8a99ZgR}bGkG [$׳()_@uFJG-EUghow6z+5w u_-E6igdKdI) `4x 9LQ8xON2֡prQΞ(R^{q&Cg|C.og˶%AE}t;HfDݴAM:X,}%G&ڙqYpky`%iw\ _o+ v 4 IAεܤEq k C-d*J֞Hil?8VYN U0ou2.۵ 7^sTx Eu5) nnvYUV!_rl!:Mx T#S i!^M ~rnhvto6Y)CHO9^ @DF ;X=&Fe`G geu b=,+A-Ijrنn克/ӎ?BSv9tO2tyJ^:*h{qVf͞g ?Vn!:uHxup_h;ݎ>@hpqQ81S PP_ĭ%Y< _x3J%eN E5!ԨLu "`z1ݖ@r] i/$+ze@'28,%ap䌰T( XID !xRS'{ߕ1yN<)%c_l1 ~P ·olkRRzgL}ƫ$FĢExZxNf*u?%Z^k@g0m-y-n .d^Oha :zBܻ=g(t>@̔GRmO"23NfZd\ ޱYRRtPTZʆWY@wP\nUچ>-fum0ݿnR qah!,sx[WѲ U|a.YF&b=Uh㚙!ı&T{]0ifaJD] dYb'RzX7ӠIIٛ {d_{19j\@W|O9iH(!!I 2ZVUVG8ؔFJ~4Ɛ0ΕBYʜZ,'zJ!z 8nrHR?/،i/V:x(|+É/$ FIQ2D,+S" GokTa&VH^>~A"y 7fN|? ǎiOW@竆iZFkHFλ=?sbg1Ws}I6[ c Zj5lT,zڡ"ĉ7kGu~?IcwJt 5'ldW\J@uy_xf؃$'yLK'Wgj@̾%m7̷ns2e~}#8+2t)J1xgKy6*ʕ*%c^맮i"v 9_GF&h?.Fjgt "(ҐY:Łg%-ɦ8g֒Ğ+ H <ĺp[[tw.9ALP2uNRLȦߤްaNa!Zًt()ymahjlm\W&?zṬ:_! 5H]߈uF+䍖dAN~yV8FIt4+ާMu1b8$2W**WBKxTSoӅ`yu`_u N2e_s2J Z tFrV" Ae]N1@Y<,J0[BZSuS-߸QSރ8vsQ`jg5If׍q.TZZ*h껆hẅ5d5YxJhU 0lE8gzWeGP.H -a-k(k|יW]<,K|/a^."/RYZ7JJ-#4Q.׌k6 v,a:h$:' .uFNMYCT+-Y|muTJ:e&3u!,_WpH n^E_ZPԺЖcݣA՘2l3oo$¨Լfpd?8mOzhGj8ϖLXz]B‭p")WC]βo*v!p0M[w}GWNug|ы3Cl11 4טQI^X_e<Ss}B]]Eu#I4Q' ϪSRCcCVM͊zxW0 ‰C|HH2_( wKM%䶴 Υ$R:U~/gE|!9˟Ay?Hg4GEXJqn.J/Ry|i,ot>E"֗EN\*!R$c:aձމ7H^\-]_PrC Ðo!c @?:3SgeWJ?o<9' KKKq7/cQ_mV#rW ݤPn5f0`1nBNvUM$yrN{-C. \c\g_! $BZ-Vv(U{/;m^,`G ">2NjQv61aY;VăƅM)BC=v70nitv}ksKq[f%%TB޾.V"\Fz'l =)]mC@w'!07&6hE\cYqʾKٝ$=!xAe}6ucPO犞li?]: ~cQaA>rf[W ONN}xU_i̮S|pyXB?<' Wzcʛ14>GY4>DVcY=#+iflЛіo.)X;\g (9{7v׶UF688KM]ׇЄ ׍K9D_w^\[td̾kq ~^׫.xΗzo{A{VĭrO Fc tŪ ={N-b) qZryůn ~Z:+kV' $O^儧$0'/R{ PjeaP&;P6']8#\\Yp,JIMѵ/"&p:]|Ϟ )Ǣ_j O L XrS1tM+rlQ[mV 9.5t:km=BV׀w dG|Jcp -u|J [f\f?(=ܸ" +x19_o͛(=.qa}]»~ MץIsޠ->r˂SZ6&3poflQD~yh[HKw{q0QA(הWy40 rҼ6Dlgp kt#njtP_k}QY]n(CtF<W&v?I1_f~ĊxrOvYΙT-[h 6IAB u&d+sS&w)IYV&n:WhBGZa<0p܋tPLIڽ%,LE !LvqcF":;(IA3 ]-*ߑh7h<r'/e+d׵f:*ˆb(u6r@@G#x(V3ȔpOn`Me=;8hokeP: +-]>݃:8 ZGwѣD뮊!3X %$FlG.0]틁Jbs@~%/IQыQ~g{-\+?LTey퓃]2f˘]si9䞖s<خ f0H,mg&bbסdx~Eo@xTw4\|PiA s|ZL+]T3&쓸ĶTIi&@O UusV*,qQw,f_)^Qd!}SZF$~$}&19!x혓֝M qM6@=}=g+SCsb~Z$]@z0y$דvZ_aqheⲱN.k}r7}IqZp\F[ V]rr7cèfJfiohZ7oay'"ɎDojrڕ |9<{J萠ovk`ő:>l.>D>n+UG 7\1A{pڊkm_-3G ݱ0ӅoT׿VS7qܑy~,5o mcȪ RCw%ܪ`* l{܍WQ* *yv<9N詟,eaFVԘz d%e$ iG7g lQI馪r]d41#hEij@VeJϨ&h 8dR ´YHj.sXFbh9,L/Z+{Q"qoӎg9)?v ԅhrݚo+cnCk9tjؙ~ʄ@;dD׿smr! WgT)f\84u_݁T ^&?$gj)Aw/n{.`Ft:g;;TgrnCZNį>454@i*fupxW t_nr&J#h:0=k.ӥt)UvxE6x㎿9v~qF}.V/ 85/PfN/ylT!\-W\ۀc R6*Lj>E] ӝfl9aGWO͋;q=hD Et#ڝ V #@JvSeuCiUq)@'B{r;X콺iς M\oaD f1JEGk}N!" 7F<ĭԗ :S+HxCj& =mE*šYԜι.ec]{g+ Vb$/~gbxbc3-'GJݰ :Z/:ث+?B|0o\M{ƭ7ܰxܚ?e: r&K]i$#EeA<;16"xaPV I6~YYgFYA,(PN: ]^22GV͞R!BGN_QuIET̀J^m k"d}'-n!hiҍ}ZL`!N(SȧVs@;/Τa'cD/LT.\ uz;HU ꩥˣ"Ƶtp !Y[3MIfi;Pǘcێp?j&ܮ%=bov~~^IbfHGLX(~E0E=Wz6Ma؟MNF4^1>\LJ! <Ö"n&콣 t/K h^lƿ3:rDj0+fa'iVꡥ.B|L%=skآl! lRRӣ56n}#W~@gq=}X{:Ju6NQh`=zf {"TkG>UpO/nz"av\)w-HdaKT'Cdl1TΔyR|2Zl^!ix\fr{^`38rq:mG> ~X Ud7 O<"ngGڥX4 kuD8&ֈۗ ( @Kiޑ&Ғ!֐34`H5y3odNѩBQ ]Glofj5aO="f3rWwnbY R5ވ]mM&opgj0CeƟvǷHRigEU *`zN,[$vcF蝣~v7uph[519 KL"3&ø+_!MzĎ1Yًt~!(pz!Эàp{FDCLOG5MxvDܶs |NNVoIPBE 6 a+icC[AkS nốrZXN8qkyճ &bQ9/]aݶ()×)sCvYTx[^5ezP @{+Kuqm<+iakRk'Aإ'`q "I,#xe#y(ʌ̱4B@&Y>ď"=nDլܴXVu@G~FR˲{N.պX'(rucޝ<t]CjBa -݁ˣ)5|O^am>441UzuаaC7Iyt UFVv;6xN u@%OU 8]2$zB+h,xuT/ A8 l^ j'9NFZMi"l԰JDf$gH|C=&ŲHJpNYct*s|g _ ky;2X%FX E"\Lh`ygR6ehzmpku"2g8l5Q#9Їw r I{b&n߈d)awA PBr< HkMm}_%# Ft`Ғ ]K*D"`WHrov7U#BiP5@{rFVIYC>,y>jC:jth1|9/@_ ysdP L,ߖ@vD*QXӭ7odѸ׍& ,IuB:,3}7ʭ4Rz# mg-p1N= ˳qMjTB(@1MO $`Ir]ȄF߽~g3ƹ:2/90x^k4*6O2+LYzjPֵPL5VĬE'G7:s4&E% t' >79zv@"W»tmB>/Q1Hd*U<=Z z9`7ct> -r_iP;gx =86zC : rK ݡRgznIK N\Y ~̑2 5UCX% i(}zMPP(j"7Pdϥq}-pDak?A Lk["gjYcuV{਩LL_6Mɩ%$C Oq6eRcNm̐ɔaK C F)եμk=#X 7^ZH4]Fj]Vi&TjwSݑh ZC ? 쨠l~P3{uqB_=,@19F-e6_˼hcN7ˌ0j%M)K:{g@a'WE?[{4 S.9$'As "zۡ>iwYTMR#fpӬsG*}B]u^`6d9Ȇp mjxt Zg*^"3oƢǸ^.t?d쓰{4%ܦֵ 9bco'H}).dFVtw>L%Np]/1y\WҎ6"a)PU4*0L 31\Ͷ ~(h4UFu3 ';qY/D Bk3&LP{zL#rqYtBgnIx0:}D14oCۜ}*+wG hP(:Tc,G 5: I+j PN5~"FW4 !*-UCnE7[U!ܡ[kX*>MZ6{};g$59t73j(CуQ% Qe :^bƶ4 fe0D;%#4`6XUW~^bK) 8ei&斉 9ePx@D Hg NNSc89,Z y8 jrz>EL(Gv)]YTnf!T Vxޔ4۹[ô VMs` NKͰUy=J+;h b:$ @O]FrX*}ӔjVgnINwP@"aʩA b0qvnfNVz@Qt^+E|^h2fW ( d)弱}`;)'-ݤg|Ay͊۶deelT*l잧01օ #BcBjVZDʛmߡ$͐Z<vr0Z½La;"\juU6`ē-_ʅ&VǰMИ"֎"JMtԪmV7~\aLeկoZurr3R S"j_ ex `c+\|>>,ujQ7\>̑Ѕ|ٸď5ɉF ?'0&u%oPG^m/$gg6@u I^0y3Lmj.͌!F@G-fJ\Uj[LuВÃ!(utGHJwSXi㴜5`do9~o4]4 g]eT q1&,{>珅[7,y&pB@]M0Jf )|yrcsҹ#Z )1)lv3}vʓuJȌD5 _OVWZVTErYhH yuߣ1sv҃rؚNUx%o`78vlhmD7m â_yԶ5#묽߱]OP$F/gLx%Riy7ASܙWiO'D6tyz(;NqM Dl xQMcS[F-ݢ9vXi梾x"!Kl} &yDiS"#VGi,&;%EhD&lƒCxnnǛl9lgasP( B޼%y6pոq0s} A|<Fb!<;={MSr:{.PJZ';V[:,fB Cnuc/ VeB7G6,?un76}1)7h{~/ʫ_XKLEcrB)Io0+6am"q6,0 Xe{^PJ2L 5I-}Mvmwi|kzDz&Ƿ*VR|A.@[O ׽Zxη'X'?\GlJb uAu =xm2N43cn#AnohTX/:`޻wJFm\%8. xj1Ou 9u<J/k1Zע}w#Kz{զ^^' tw:3g/$"O߉q 86nJ|4-@[ۯ@`%(!D܇=#]4 @I)}D djy/HFBw !*F毄^I=Lm(\^Ni2)MkݽԪVf[q4天 i\sCyf vwѲ炗|ә b 5[!ykn19qrxSqjZSJJ=U``_S.וe݊7*JQb@6*~Rb+Q~t/Ď+oXޯX\ d8i\"/$q l5*ShL Q~wamT>{: ;H:B32r5.E4M:ώa/mȚ"U%M]rW$|6QjDӔ_j(-h/xZza,-*z3P:*27Gfr¥(uB $d#0xт##jɠ G^PbÊaMH ]C|2S#܎~/$^9nae}5O'!l; h6)MFӅhYDD\ONGIwQ[ڈ 1ġ Q@!Vz=#f@ygHL;SD){}c';Zg\C٭I32S:mNJP6az44_!;K+Wpie4DgLUeDR93ִJ3PqI:8`?83A<6Z8KKS5ՠҍf#Ǎf2cNHV/n% bj*X-xK$j9Jkل-/H#hDe"Z1lB  V}Gi;* <v7.LӝASS_@}پβRRK}Tb O^w2JUMvFz-+w([ ivx$7+|0@,Nȳbܝ6S1їE*'(#p$xY8V,ee^jQ˵Aғ8 IFy0ݲks[K$kLp TX9a싲"w~rn;='o]g//D2RtB0ti|d܂ʊt/eA.tvӱR¯v9[$ xX@2,1\OV:a}Un*K7n_G2UѶ/ۏU}$"]em91 @bmN>@]aB[|$>>36NJQd7~ 鈦 v=!͚1D$G '15̓}o@ːRfvu zZh˼yuȎֆf`̚k'(V$o<Ȃ{j%p)#BpxRsCEq9Y i{/1숔Ǘ,&HjǔuiK=ɣ\'7kDW&:6y@@:v ]9+[jZ6C͞ F12Pȍ>R6/_H" Ue= c<>:s?l ~KA@ { Y}Xؔ@jhjuVb\wډ8{I$3疚v1NƯ,,X9iYݩ"&Уn5:HqWش}=CV3g~ jEs\v@0̐q-LpN|)XV 6 e}+QOx0HwƁuˡ}O. ƺ>i{fVF*KNEB!ŞQNnq5>.]LҧFT @\vxO}W9~gBˁYFaÚ҉r6e8X2KwS<L=8o滵-& 'uS"GAA[!Vs;@Jj>;eZ0R5I{$6cɱC]QQ#ѫOexaDD { [ޕj3Ӧk ;Z%m6$5a"P%6M pHlS%{={jK.4E$TJ"C7М@ fsLQ>`wy ¦+' 01]#1+n9J\v̮NQ҂z4?荢`1,&0':4g`ti=x9$AGZ1(8Jwd❫"i9KLE=.bHo<[Vtu`6G^R8'$BFcBU0:c!ah֘*հQ N pr.pMk9/q{>7+j]V=xtp].vH4#ޒ. OF|д9#X9D)ۘ^@˦XJV_~%<9+NJ˯ܒR92j1h̽=9 ]^P>#웊 llōUaf- YpzsCئi% Iwe$#F;5$o{~fZM)1? nRoN'a޷Dд<' zB~td~!%ڗ:yӻIٓ{E!- VyN$F6٢'Ol" xiQY> XɨP'W}?E{!pzXI~A]vz'T"@%> c|.U_zYY͆^HZ]Y'":>K4ݙuiN f HSW}4}R ,a?*3Fjⶪmڌ6d48 &NvZwstҜap5^آ Fl~XI2N Eoz;Um03Xրŕv+ Mmhu:r2:&qU0S!0}S}Z˹!1ܮf]^J}y,Џa\W \QSͦӮ2_(9*| {Kf@E yWa=|V{ %_~Wa0FoiH`5Ц(i)"K X>6)-|إ;w!hN%pU>?ƹr~ׁ:{;9oGNVtb_Pb(df>Riioq!>z!jv /f'pygxaĕs7e{u 5moJuҵ $^ ݃r6OO| N:}!1?xpVP*Bo=F~{T\Dka,9!>֯fnG}CMAy =.N)֫%s:I\"9fdHBB,8EQ?q9cxMOb?v]/dЋ Rmt1ȧ93Dm?v,(6w /[w|m<8$L˔K-R,y3C-8ϕ,tS.)aq ,-ĶQ'щpH70I)2[M:C Se=cm\N8O|8]%Eq`E(T([n,׼_}_ M"Q82@Nw"@ZjZŁAc>8jx?=lK3'=?2[;C,dr]e7z}Gye[s݁x\=a5($^,B{Pyd': IDuw=gq}_}f@ocvPLQXlϽ%Rz#ɳ:*_9*!%|f&%荤ΩIJtMoX qcTR7  yp*֦@zLMSp 9\OaS9d[7>bw,l MIj{HR_XZ^[ `~0]ϋr;Or.e{A,mXL>]q),;߻qͮ/9h<#4A]="=xDmIE^ӝ۸Soے6&RB9a|QoFvwa抝UɾBpYÓw}*`O^Bu,RU\pC4c]1~{#v(.[Z O}bU0ࢽH0[ J`1gs'Uta}n@(HI~X\!A.,TX~7kD[fNiq~&|eRm)xgzsJq6|pOREY6`}[9hǘ?8yyucbA P'3[!cX>ʶ/o@mW72 ]Uc2x8oWds ƩކU{K`2xqZ[jF)DfHoAtv8 HŦP:g6:kT[lv.8{*&%+4tݶR p>$gJ]]9_$T4Swo(tǀw K&gI6g1<{%`["{yeS/' $v !Pupӵymް0nfH0OQN'99mJƅ7g 5V("@TaAQƝ19)AYvARvoĉj{Brll+ҙt-<~q eO\F))fI9;R/]˜5Ac4%U۱C QtGFɏrEP@z[ԝ8ؖ[^q J$!u^LG G + s2;;R3dQL.Q¼8j3bt^Bͦ Y.6dשgxvޣ(\$:=dۜ|azm\DeA0z Rh 64Vce%?B%ma 2ɰt!vбZ/veҀDzհOdp%^G:ќkӢo1^kzc# ̽A72bvڀԨ2 rdZxtuQ&jKkhS9i \ o6{'K;lW3}iqs9uXGeı>'{'Ѧm?#LcQegB;PqIAj'ejΡl_[.R\](!81{zȦˣ_ U)Ardvo";pWl1VȒ%t띌mK{THĩ9 rl ΊA/Ȧ^4&aT>t%sny2%)9v]btucnZ$/4jC?ёG6%$WGgl-0>弉8k;W$u,_X91+RoxPȏa c"a׆Un)ͺxŒRPH*2tQNNs\mfA} Qيk\TmU`;) V[UsV$/A"wt"6DN9>(S/ػ {d=(Kf^hH)ꖘ+^ܟ&⸐X*&K_7Oef$^9}t9J1@4+(u m:b6_KMWvΉñ+ =/*C*D\]Y!!zd N?^f[~ m 7f#H:E+`B# (5'*(L'RC]O2.uZteߒ]9~=XCo>bw'gKrE4NX5 ?2zL2uXܠ0`c! (ـ,eqR{BE߇,~2h~Bɐ D-^nvm*_ : ϼ'=r|nY n)PƷӊ9<-1I(|֧ , @'~c'}Tˀ h| Ώta)4Os6ۏXF$4~3dT4ViR7mg~Q-o{ y }<")Wܥ/OxZƳ\'T9\DQu9jlo 1fFNo2ޚ_4&ԼewOS(w0*0hң+M; ~yM':@(ట<8 `vL@_cԍoA8 LRxW*BK &A4Bpz-6.c?bWAq6޸R_{8C \p;zX"SY٩kU%5$ UU|#q7b8qH28T6.M+wy'fO"i'FMlvA' =a*!=-11@!xA֥ef5"iL.2f''Ksn<~UqB}ei >t׺n<4@Ai'D1 }Ή yN{;t"/jyrn1EdޘkAF{y(@^Gd,.-aHB?ONezOCX©Wrs-+Rw6)Z9$iH#]ΆX43KulIJ4 Hb:o4D`4gS?'JEh>sNl4T`P,Y# G=B^7ֺاmU?a6N/q n"L;L"v.޵OӚ<"lӰU Ja+l=QA:\W|dݵ&G8gt:_EԶ8kE)?>T{C-((͹ڡrW;E}V<c=PD0V8ؖd%ˈI1RU)^K?r'tˎ,xW^\ū;˹K٦Ӳt* 8@'ߦ+]G՗*Ipx C#m pIpx( A_ ̋>\B+@eS.OF>z[\ wxKX;7x?TE/htd\^oŨOˍK"S"9NYha3iZ`'[[Va!GY >U$v oKUw q [lI!'CP,7.Ugg|aqVJ'xN?H(ݿm*꺑?%›<|.!/6teld)† [\UˣL7X>&VU6xm3ta"O"uʲBO[N婪*<ټmrٯXʮS:ĊKSnzvU`y#iUyr77Ӹm`]%wu._bW8^(tTgl53D(.LPudzAsX6?!m>qG(gTd/'Ӎ~ 1w0/d1YDy &&\XлlGobeuwEOˣy7fP4XmJ$yB?8xH_ŷXUE_u{* U))giCSSCu#'ᒔ]vT}{hx\ f. daCγJջ=M^1grZEj@,xr{&vC-w^)ݕ#"lEj!uAq` VQn W"B20g!a!nf@ hUvWC^:đkr9rmvJ}__ _uf]pHWnMlKTs:JH}?4g6./ Whƒ S*&a D7fN̷Ӏ¦KCӵ5MǜuaY=[k`GMr05EHZն._Vau|)pzc/Tjھ`6)PĖY3CX(eF?x\wnqM<; ]/` |؁#]\ˑ_aee䏗?+kUKLCu8 &'jy }^vՈ'~NA;֬$f59ў`?t<<=|/&?UZ+L{2;`򣔺4f'O/e8)~fٮyߜTeK:?-f-2rN쎥{԰iQ=; Ot D(m5H.+U)@=(@@.arO"E$X,Y?DHZ@2y?[G,m$ٯYͥ"gs"Y$;=tuJ9A8kIXpQv vII)c,N|$맸 P̪XFqs)N;IDe2j/wЮ8PFa&^q8o@E,uB[uWyg;{ Lr^ QH)YK)0W(: 8 %zęсEàm /2v.D~DA]##>cGA`ޭ pBɱJS%}_. qCB $/-z6>썇xǨ^#<Śk:`2J> `Wj 7p}<^1kcd!@[?nש}wdK VCRN%NO]Wњl -6l]'J̛O-h"3c}M2EzM-rvS5m *v&EXRE6A<@F xJh Cτi3,N`Q֎&!Vs= pHЎ& iђǻQ'JQݶ>eAJX֋Uj%W |~P6i"`w~wA0eHUek0Dtc*,W/@ ˚2]QH3: D3yؔXǻtƟDu2JY{#:lvw_PJ@%LYxL}йq i=1?IYW! D4>$GIJDU|q_#ߏ>e'|ȥ`EE}K)a"N=OغϊIr݃\if"J_bPМIȀ]b;>e\(0B\ Hi$VשMx88xH3Z H?n*z@J?$XsV0= k1-D%YwjCPb uaĄeEu+6f2Y1 VI3T-eW4g"#?aTd~ /-̻vAFczHvoն8BM'Nxܓ]&Tpwyg*ׇOkDz7Fc9Aos6Kd H-vkBj0Q6c#硻2Kylem 7lۧ÷ ,؁2ݘj-IQFbw*4CVNx-^-W${a\_>4wl(^H-hiL/ c҂11G:$3np1x'''{&ZeLκ K:00V枂sD2`9TUUA_+\枪}ESő& "ھ2_vB%z8`TQL!~& ZqOU'9Ɋ#VGs&nf8[#]W᳖CH`6 7hs#O2o@L?_2 ׯ>H/Ӆrw<[^Y)zi W̭iʞQm S4P~7`M c/S#ﱠՏi1&Oe'It0hN 7 @Mj3>CC7H '3XJzUpRŤ2\_LSoQL+VqgCΛG zڨ0G@_P\<6';$T8(W6Yŀ+n&HّaP8OG:P y# Fi%PwRrӦ=&޷ f"81++#8F(CAgOFgj\ 9*Z)I/TmQnV&|~Z{G)b:8^ASg"1c,(4]a-VIw܍yH_)2C/ (@ҍ@H97<Rv&9&Y3{p벦S4<-cW fM;Ww~AYqQ D-w@'B7Dv^рZ`O^Q3w!}/9LnY~fNӿ6M/,=:x#М| ɓ1̀]5<S7J$i'E*xe$tuTq & qKQuf1gB2pM$nj69mk (_2>U`I՗.[b9~`v.^} 7_(d- WUaƀ%oXq/#\aFʿD{F,`()_JoiXEH y,yOVi_ aP^w횻R4!9,vFlӱ 9F $5-S5(B$xTn( zvc&;c_1q;@jKVK xmc?"$9`,k|4'ME-]? s2^%eH yEwFr=ȗ8vվS&awW*tM\2z*k/2m.B bkŮ` ꃽxl]Jo+E"=c#QNN-dh[IgTt۩Vdv\z~sVQҕPv_6HX2y FsG},qبwWѰ;BPBAdV^AYީLegy8 bWqTL ږY:_0~\7E RфG&CNeQ$u(.Ojãs\`)m` A>[[כ8bRj(KC{b[(= 3ob GS.O%}v~E !J k2ۑQNę<w?~ {g ݓ͕ Dj.tQ'hij"OgGR#^:Cc%d4Xy]Ftײ#x/,T% )ؖ_)bgԙ䓶)eJ{RL#~# uckІ* FC LR˝]d )8 N(Y^[ YMlM6s}6g$ʗb굗93԰4׾?K*l/ŋ) fͥU#h@+JلɌ|8."]hfŖ^up==X^jk A \ ς/MNh:frH>/IS-j<)@TKZ .0d yT-~)q#N4G50 ]@Qc#$$󙤇鈙A׫vmaʽAOk}ȴufؙxuySm'XO7v[~DKdNՐ|tr//uƟ٢ŽWZETIdOZ>+Mhƿ1UPcW@ƾa+[hI!ۙC[JʢO"IT ˘v@:f<=yTTm/B dt{p{*T/f9/ k&  $ W|7dhH<.垷8!.q&'UMTgڗg qR/4{`lD`pjM!KsNe >s$bigekE3TRʷa:>%@ gH !T\a-N={PNYC4=[9f 3%Tɰm|t1v4GcCjeyv{֖lI2HΛzuh{ }vd53Z`ز'}co%Ze|ڔ}dJ(C8g/.bf_jk#5@3yV %ŀ&歷}v pysNN*--HrGCg9]~sS 4U{߷D™>:D(;K6'Vw =mX֯EX+ggpp'a FDvlH%j;mޜ*/|hXbCDD:jMy'uW-U|d n_1⶧T+nsZDë(Q㼘lYOhR l`)_Ʌs:SJ_lzDL;rqbI_U"mޖJ"6]G1渳)C,AUq#]#F ՗nSI~]LsH>7Va`nBz6 &{BENŠ8;B$XX? X%3h IXB Wȑuȹd 3dYĝf0Ѯll]k'PH3gJ*gK!,uMȫXЍ ְ+1W, dz92i#t\!,"J\},Nȟ1;X5f.2ǚ.|I$L\b# [UAO(Ojo.p=1MhUGN%;l^ְ).زu'hOB%zjӶ3tHuYh' O:.p14 V4,I"D,ؽC&Bz͎-`#?a{_+ RrC9AK<.Ĕ%ݗ$*p#pdQa#GRY25h Ns:}8( ϸfҮ>)ᐠ"M#%]*Q5YO{"%Wd(Js{4RÕaU kjDC٘&ʷ߿yN$n[ ʸdNTrs9n9C;M^6:HEOth|x="t~X$Xk*NpY Sr/mBi^+z5r1l9BnHp{p%OߘL6vJc3M!Pw4ITۦ$Qqe:1-$.XW-mc) i2(|ag5[O514/:*G˾?o}p2> k%r >b̜MH%lK엢#{/o~Dra=UoDz4"Xr)ׄ{CU +;Gt i%x  ~]{ ]o mNZLDpi9 ,I0e;V{A.u pCyhYc<<5Ė443r{(=lHxM.7i۶'j@@(Ǘ[ˡ'[6==&Y|`z@?1 $s)׺LsQ|)X32IαXTnX7+Z C!'vPȏㄧaj{2'?yNGϜvsXPѣ#DIhm^p$`ia㗴vCY4L(úh"\}Uҏxf;snPׯPWg+&.{kCHeD0ǽ}+O|4&yYD縠*J[^bLkIb0 R\BeRz&~(۞kl$e1Y^XM &mQ ?\V9*ڈ%APڕ(IP0U_am:Na85%:M\G, z+l>O\?=^evMEHz-E[jQd5ˣzRl3 GRԦ|ws_Dž vG^&d2i͸"ycb -l-hk9DH+㶩){ѦJ4>|KkKWHy(أ7Cu(.9=?_vk !2r>}}'[!C4-3 xvM SX*N9IUXJrv T\Av/.KTuL>\W+7VzJtv½}dHS*? lN#$B %`@XPmGr66yP|FUuz_*Gb6$_kћCGMr xRIZǸ&+2uwU׭*H7(%dTL\>Z{2J3੿N[hYqS)gG{9`& uCXINB#GPÚjzUt.u;dHRF%gE6yfEs#sGDenKHW%p 0_]éAB-R7t+e s3 a쿗x=SSw}&Pw Hi̅@)Q$L]AhΓl3)Ќ{Ẃj?D@?*b7_V?8 ĔJD(@G6e%* dl zG)BqEa\6j(\ #y`:Psμ؅,{v;V=2 G{gsE8]\Ard#.}ubQU3D{0-l?'%jei31[~p#45Rc]"8 X e=k]_Cʴ V"WJ3i*3Ksr|"RG9vۛr sF(]f~{o$]pFW=N'X9ŵwVI۱S^N UPE*vnںOE5))ɍѢx4x8HWd*kѱLzϟ0|mZS:TXYl#4 UdE;g+rJE'?Ec/ 7̒Hkgص2Ɍm]?@\+|ltNb&g9MUSc" u!z2Vu9_=ۦ^JXܤj YXJl4Y=L_RUX|\mE^P1cĄkUXp6_Z1P,䙈lQ ~{؈6JQ`}Z-KPo6yDK6E/_\ן;t*Ǹ@n%M]p8&B^H§l:\rV݇N{ (6\'-[&gzS Y GyGCȳ!Y\TV->AF[bq wuݭM47"B$ԕt0Lưpo4x!xgWŎkPD9"|c78˦!>L(t &M.I] Zg!/d$@QA 3VB=Id{|2+fy@#yN@N\(b8k?lJnG#*}1& &%IM7mhЂo_2'?)@e')*8PM "P!-R' G A8M{\rS}5RP AQ̋bqߕj0JTcA1;%Qci@r:S:~(AHRߗk sAQ-DaDs*85k 9.NC/㭆H5!kRjpj5'I5|Z!K+z9EUE_lHԍ& Z4."kFf1Jѥ<2.;:;%ɎZ! R91~NP2ǀ]B e>TR%R)dCͶ4Im]u1YE:+=W&ߧC*.9${f kfƥm5ٌYp`>@*!x<B)7ye&r;M:ntl./dJ,']q|ݤk( +V"DoR֯&mff+V:azG"'[^n<na} (lT)S;K,㬧^!peG,ͪ0nf.Cn$U лVWba3xpʿS^L pnuJBM/|ZJ5ݱ=&|~iND< G$fV5gaYwӞ (֠/I$Mt5YP;LI#qUmdiA]({g?HVq /)R\a~GEGǶ,LHYn|٢`mKnuP}рGa2S A:(G)%Q軫_`f}ѶCOA'cq0ܮdӞ8vya+O}NaGp?̗03Ms.'M0+a $9 첑FN I$./&fQ<Aoc1S/4O9ξH.:q`&v'`_|D7@FgcFv^Fs5Ω3QƲZw~|&wOn"3Di]xA%3sr>y\˂^3MEgS^MYujm;P_v|I — (ƙ$S,C&.o^Ïzshu ]qHL+8W,]gaqy#mY0C9VfdVa!g=ZU'e3%70a/Z?riWS%Z{d\:ww݋NSYK :|Y;LtQK-501+=jlKmpke\XyO\,*V4ല~x6mǟ9ک0Pks*)8~MEYzWN!**zi<#:]IF`Sǻ)wO ?S`taʱa$ Nr7%)G#Y6x/רsIۨ;;-z;kGkCPLpÝ 5ٓ $)$o_C[϶Q uò:qQQ%G6Xr9vᾡ{It,} 5 ?⸬z 8qtx׻Vx!b'9\":LPU5_g]milAPVΗeՀQUkZ8}<# SA.4[*3`靠6:p'peՃMg@ P10ߠt3W5۠S$=VpvZrt ~GirɎ}$,ͣ6;~{Iy.w}{")H) Oj|B_MɮcuTڌ `YIAX~ RuO)`+ö/q_w/X@>IOB̞8HK I DsMܑlu,Y" o~.Z׭;}pTς*4P'pQr*z8U"軪 *LtJ"KSuBe_.b=wE6vj$WxIJwWg2 aj&T$ϢZ<-w%dorR+;&BGSoV z]l*I@0S -8A 4jk -߹vXm]]UK|'w@\ `? Ȋ;odkY_j';f)aies+rL& kL5lSc`v[u݁B(.PyJi_06b#'=2aH D"( ni?Qb|k_.ܞ:Jr)>R bɁ{.YA\̓ zŪkocI~U61ds{kC]؅㈺A}7+& H=]~D}{ӹ͵lؤk 1lD: 8[m0O lܡ 8$t9Ic% 40mA5*n=)kȸ.x809w+ϫ\*,A.-~7jk|;䢭o)z&8$YY6 oW⤚Rw||F/,োMEwpѦ]5HL=lDS`keG_]7 ڻȝ߯TiAzN㦜Nu *!>J[t JpkbAr8G:px-G0h'1X۵z~#^w28v-k{iS 4irO}Ǫ1)=o$TgoyxSXe[xBJn^Ez\ANg^Casv=DKm$c(;P2wY/((/B_thk2ٲGn6>y!ߟBA_( 6+F ڒHZ5C9gpΫ-,%*@/<_T'JFA(DU]r F1[{❆ǣ!NIw3!qZNie^xTp~2%!ҕUewܖi=ߪT 0MAcǪ1\P@͋5} PmZi7MWA\lsa:c wx!9?][9kDzHGP#M3Q3Ɣ?OfI3}^|[^w: [P —@b؁U찗$j("D}o'% GQܵǬ 6ϩv?X6Y(,ĥh\ g!o(ogX?v@sK#"OyKR|ZTl,Ltcnz41Ӂ"Ǥ9z%-{;w/QGO%U$lbmԥކ, _uŘX"薻.PD{I>.vII AMI 8OF)J͏Nmѝp9-Y*7b0(3xyiN8`C"rp&7i#![z!^Z* TO %0{3G39vʼܷo&lW7.8 g/y}۪k0w&.rtƾVȿ7o'(Y5 x[CΝWB;fBpv[.Lsvu:ǝ+<ꖁsԐԘ#k=<y))#H 8H8'%d~ 8s/3 L Ppʭd}ʿ345uy_r$8o.ޤa3{ڡTExb,I`1""7kA$<8_:C6 !#[*?jLF3&eMYb1^IHWYX_؂_heKOJ+}+KoѪQIR!3dVPt,|fjp kBO}t]Srm+<߷Iwxd&xzXK#SDۃ[\@zBuERFbK뮔I10GVTVo TOVh((Y/DŽoXpH^inuzqȕU:5tBI??+gN +A&rn|V~O1mfBEODNFY8[d\qv/.a$터H˯WKbFJ]54ȷ5TPA#2:ʭR+Ǹ:>0(ZN|iz  FxCZ0MimArw6kT踢Dޏpx;7tu=cWۿƹ a/5 żB;E\8:̭c綉vE3"s8VRYNd;xrQlR I3\QqANXwbܭ8FSj9BfMal9u@3<+DvM$߯,9CiA;PN,ԲxpÐה,7M9WͿenY$JMS`lPu6+,Tr^:jGz+wDD"DOrrTBv*MfT%zg-?yFV#y:8:#Brlɣ"u={ie;"vd-zԬW̪x hO-u^w63M JƲSZߊ<,؉5r?5;>3<@j2+1ѣH~*eiۊD[ߡ.LD!j|ML \ϙb#ob5A񚳣XOA8rE-5ɍ]j!u=3U( TŬ6Hq4.G% ׻ƒKʴkoS8ٌDB"YEvC"e)g4CԟOXw|3iWgŒ==̐ϼ/oy]LLc`-{EW íh:4ȧ^pPv@Ƨyju`R3A|*Ї=i2RO>FN$Y Zr䖬w-g)Kc3(~Um|uFTF\RqzY2MVຈr,+f&֫aJ5A3PhRYQ[ NO][/8hOӡH R(VqBQ14AK^ 4`<2fx `=qm]qG5 2*)MnKQCKCj ȏf~E6n^~4vݙ0AWпOU/Ii[':-2H }{]t*z1huu$1dz|k8߹ZgSoV y r? ?t FdziZh4l" uw߼*̅*2Pͼ :Y2F9MSf`u^m.F"†/:ۮ"!'sP.uwGE) -O^wC,mrs%Cl= Lln溠ӣ0eoZR@:. PW[ R'BœES1CY5yZlE -IFeJ?e5HS]śSoH@֐'e+pBZN 0~h80|(43HCNRh~uEkeԖ.Yl\ o4 ~ ɊeKi2?pcE ~rd׌pج_zt_/&jͷ[Qܮ_}v-$9y2H.:do^-q؊dd9 uil 訐 (ֻ3YFxѥ P@ADaD)Xa1I-v\_h%0dXFɋHhJ)gs5MӆoaA98Զ7#hӋ"{7 0xiYVE~u^R+` y/Tuo2c# ᅈοLq[” Y۵kO:uRbPI1=ϷXcsYՖsxG7ntRW{M ,}WmCEdشe%SgH:?~[rS4',_]afvB{;ںa[+>İ"ջl2<5ڍh{KeA_Gx|+2Y~lңcUrdC>ޔuT""Qjp6svG'G^²JIԄ@}.jl(tD=O$A!W`5v$n&zdhml~7yJW@Β]yYZ-d62,_0cv Þ2hP(BӷxpU767AY#\FsSsyBOma]u8Nq  Uo DYu[˗Im ʀg1{_i[KHSj)NjᅲW@Xsy L. z]鋀xMnLI۪}Ppv0aK5DmoY&C\>x̾o"Yw,ٍO+#ߥyw{:vץ=$3 :B0A:2# Vw$ n&1SH 8KכVhy< Rro{6XI%OB?R <ԩ |}ޖe1__)Wkzٺ(f_N{se)l/Pl`nJ [\H`=^FKN`H+3O]/E9,i x_R=<&Edn!4̔GV }UCɠ(3ay I tim |[H r<7ܓPW.`OlndAvUЃZo*HD-BAY5 %k$PE = rR (:T<}5Czř"5>e$B&5}U/rpj{U"6=21k1[rko|-P, R X0vWa6 HM* G&xk[Mv39a#Z{RA}6k]?4 G@\OމD~O odoH~5vsŝ$? &I" G@)0b%SMFcwϦLpPy;Ԑ8^Av_4v81Ju R,1fcDTvqY%BJ tf%bO01{'mVf kh(vqƊ8)K1Ub0Ke\=}hh7%GGʥ3UQԜ)]zVvtҩ3ND-4zV- n3b4utVf{bE4l!B5k0p[7 I~j EIq#S?rzG`EGpf-ص )?{\c|PM20aTb_}u=<}ɽzOh 2DCJXqM~BV,*'i1fT¸Od}=ʠ}]Kӈ/7pޯ& q)gڲ-e@̻م0[񸩻1ta_S6/ &l/ݭO1rVdqqfk+k[fWDپ6-D'=>l.TkSCȞJ?,ɨ6kb!@@p 8{fb_Ueu3o" o )Jgt/Qݖyd(4AAtH<:[H]EƅDF-怒Lo?-l/ƽڠ[OZXRegȹL1+:)u5=X7IE;5W&'C9뉉֯^ݵw^FN g f}"Upŋ5=7*JBe( X(m4݌]* 5Vo߀Jw=RE脿̛@'b"q"]$T;:*L.PY .%MYf1a aX= ANo#OѨPV ӷ .)1Z:GB `8{~yjp;XVV[zŜ-'e<*E2 -iĕJ:AI6zj{ҨvI(:砫:divZ0+ z,><h8'ϵP'%[BQ,$Q2<9Y {'YASH4lcI$"ho :x?L t<|QPimo1HT=a_8{|>؍IEQq+5kHbQD0 e ! 0]gxTs$Z j&r۝0_Eb/V֚jXf.6t14(0i4K|c;nZ 5rhЭ 8]$z7&js+f?1LlWZI]"06yJqDrkDI,بyQ*7 @iw(A( '89QLHgE^xz,x[""/?R}AS9YgY'v81ZH y~^,5|WK0UJz x| f]\ PmX`P̭PiYX!>M'VnU!+첍oEbNV UXjmH6d5{DC{}دA*=[#Y_KGa9 bOgH<9ByϞFE,#9 {i`V՘yg؟t01]iGN bB=`w#YO`gNWjp|0O4H;Ov'Ҫ)`Y>\k}kj:NZ?Opc( <,k?hC=ן`2?7cK#gL~T"H(; 4cEߊ^2? ;4&,B=9Pv;2kf|򟧄UUAB̿ΓBF_5DLvmWZE+L|_'E<_Cc qv`Jb32Hq1r9 5tT_;֟{`2 eM_ekG9W?Zsvټ[ӰA@sƦԁ; ftKgD@[@:mCK+$.‹ 89֧yJ|\p4EN@ Ygw[7tk@b(Hy*ZwpJ-ufztb-Qz H8<~7wqWUHmx;>ξߔٳH}D,ҎDu<݄[ǔ6 }ܕg- =)5 v4~9N-h8P-|78K|~EX3rA=o_//qb^x9'ȗ JNtjr57SF!Wxowu5 xotT(;-pr 1k>7V zdr]׷ԩ+>Z˿~z)㲕PiD'z$R1/4 ]E\q*}R:1}ɗsRbjW9U]I-\UDx.P(Zi^$d'7Gh[ژDz#tHLDE/4!ſ'|xc#끀*U$a%՛%'y8sl]y[ғ(YU}<j 2M$\mF$ˏ{.A`̱ec:Vo= U{ZS.cTPFp;6!MBEMC:AIq;4ƹ7S)[`WѢҦpbk֓:TQAe,t?U2XpN`m_4QV*FmLy lіdF/K(3+%CļbeK`.#g,^m]bӮLDƐ&d#1XYSGy ~4>ofO,%~YB4<񒁶Љ۶Cq+O L͇$%CҸgH*v>&P&_1G3@{[2VEr>PV!9OػDW+%;'2K3S 3i`QbD CpF.5V@WKqo ׀C!UɹiC~+aɪ#ǟ*?n2 vvgwOw}&iA&NjbosS^pL/],&NhnƗkO©=.)= Y0/\e7)]ВTֳx=X pm*Rkg&Xk&o\oK >'t ^R 8j3PSҐl߬5AZZ&B6] m3!o>ke b@u`< O[4qv`80nZ\Se|2oB]XӻgaJXLy؉)z$DCm-l/Aɛ (ʹ}RGܗw_`i885O~%eOe̾# 743+[Z%s t'.PUA,% %|nL6qiBi;eL7'w 8@ص$Ty:iV.8 9{=FXHpf WB8;jrGep{m`jmQx ^x$Mz37LBڭo6~gLPtm*xo >Pdqw/r^rR޸-RE2C fH:OHE0S1<2f>`Qvy]. a-^H)=m / -.ȱ][ko'-stЮ QSLUrVY_s:B}#N^lf&p[pླྀ2k;s$-H2+fP"$\T;m =}~xfzn ;Au+BN[[yF'Bʙ#|-R7Nd$(3b {)B Jf!#s ,D]  uNfm!\7q]=?.=B},[Kuz[ocEJ )j=&:e0S\#r 53‹^v&uLWzwpT"dWs}S3cד7maD&0g/rk\W=}$MmQ8Kb#& 竜c6=)Hr uo{ _ts-ƽP -̷%E3U:]n?wv G,7KL|,I-A$nMapAw =8d]Bsp"z @i̋aNzEO#ɿ4=. !'W@i@!2T3A!g9Q<6#ot|<1E,Ń0GC,d:o}ټ{y%w`S>v/4k(LU oE+Vr6Z;Յ2ηlSwPdbKB: 8Uv22¯ݼ1Ŧl#7lxy.YYCqypϒʟ55P {1}3@៮6?e?O3*$_̓ ՒD޵q2E,KCLSiIMV,g B!ږ;.܋ծҨzxtbUEt09@=1 e#ru}73>[&n_ ilgs p㋔`^OvQl!;綽iך ҊiOCek! vzy>*uˈeKs;wY `:JRSDhbA-.m,lv.M%ǹXϜtG m;,¦z&Yw۾v!is)%%%s?^XAč仵H"Cf!a{Q☏)'N ̕wkmV:^6ҀS[wa'O(GћA`ϭ13cV!>慕t/C[qIWus6$AY5!Oh>P]% {B:xΚw)ZzqyԱ6e[JGTl]ra@;CsHyeF-24_{D&"jp+-aùa~ XC 1/5ڱ_?aP縕 }w9DI&YZMGw!@vz1>yF4;( f' ׌viJ =}>PZ1fӷ@W rd_>^i~\T}?ut˼`J1Vŧ3@ 'uk /+`m*P%(`!?^KlM3])jC\ߎƣ8΄G0WhE@)|U+̺QZ/ @* `]b1wtwl{H"P:>.䈅@ gq{Zh!xoU\ t|z5FZP@b:+퇹j1б,]"ڴF$w1|0A6D02jA|3|e^[z vtB26.=I-`"HUnէV \ h:ENhKhcvP@T5 %@ﶏ=J]Td ~c_(J.>@.vh~ |QGO 4uv#:Nb[Qy1]xj +U+͆] F&RiSM$:胑C hdKEOa5GxqHV2đY}){nCmkWw:|[|k2$Q[w&q 9 l K=:苅q:E$,Mj^ٮ 7[`3T{})#4?:&~躉ca}}3?}ȡF;̮d!e]ݢ:m٭Z3'^ Y\^5x-($a?i-DgRL F΍3;: } j KK>y E mf `ۜvE1_C֪q; sy =GjdEp= IP:cB^Z8wvqx,`4u#6rޱKi~0Ԥ^ 2(Ji/]P(kبr.eӭdI&j?ws= (]nidJma;kF-pᏢ PH WkL/$%%@fs]F4;TBms@)DcJg"=fZ3?2})­!.]ۦd f>T 9jtT%S6~E5A 5Qyh" QS>I'5Mf%3W7 '+ԝqH͐/A7oEd_[Cb۩-;b%E@Y+95mijgpόzZTY$lMxA},$ {_3 m'yv3a"eIM˵6hOYӕ4eڬ9 {?leD@z̠G p+RpMT/NzG6 uEPFuSsU茘v\MxE.$;,H1gWyeaw0v($r&S%O8'aa H2a~qH|Nv}?̈c ȗXZy塊`*a4欃%SdG(j*aer1S\}(6qf֕3xmX E>^׾ɸV,"6[gCH$X7/-?(eHiBkA?O}P-vA&+n# 6`|;u{*CKI´/ ){)Z {9.P&A,;:YSaSĀl2>U,K\hsx)t,fVt!/ [Phݾ8^ G=ժ ̶V{!K@DVpShERp vwY'OLzJo.KFMh27bwKG3m4=*8d:QVe>or D++yT9\'r8#4ʭ6:(hc=!))ho84=IqT'+sV"ŴcǷ7~" iүIA2u} R437uͮd>D)ԺZhN$]dfYF&ҿ&pm k|pada;fK:n-V^$nluK}ဲ '18p؅eU۝e.}`;˧tOI#پUaVܪ]a3P>^Ρȫ8/Z]'] u{G#f*xh鈅7A _Dyn1י܁14Xͅ9L$s+Շ+SM'4VdqB돷Upxe{|ku2۠~JT O 8[VO ~""Nl6%by~2C-BmcCu/\;e- a@[KLcJc"y~z]p V;s£PN2(Y.blQP5]}Mܸi):q,ž&60`tǀt20+[Q ʦ_槸|Q4+a|Q0/\569d"9ZԹ '!ԗ }xMB2ޡ:v>U`Q> wKS7q,g%w. :)0UqEbxPDw{kof&fV4deML: e !,`O5*ӂ)̚bY@.qD73ҙѻ$ -FWsT/j ɸn 5[r1T$ʶX! o+6.>LOxD\Ei>ZdYA*'[P]o 8N =se,?+H'_c ´fvS2-D0& )l (p5k=Fc]n\&$Hsoq!b͊8'j$?C{ؑe4m}r`aP8TJO> zu3 X]p#?Ztf71f[r0"aѷ=A#(U\V0$pG{7p>s>~ +|}D\㕙Zk=b'C"3*W:qi_j#>RQ-*.ܯطhpj Oְ֊xE0ʹµϽ,81=]!본#P9oGߔ>.fnDǬt5p׻.rDT- @+D8w!t xPW"?e?|q C2N#2.ds—\FBtD\ z{3%ڦ$u>D=Ȋ$nEV*U${^`,(Қ,zKYjP m[n.A ðbl%ʤSN['o-Av0w>+hx#cĕM[;n&8 .j9)Yl a S"FgJ8f &/zU@נ\SWH޶cN?H81J42^6jhl`P$W:}ֆw:X}҇~-,e_ 5=.z'7^4 (a+(,KFv"$up/՘ލ_._m_<ݮ3p,e"dVul?"ez vԷ_ dc}uZ/NQq%f(12ԃneG8$i0zBDžDP!Ū/iP'xψ?vJ ־G?io{I4Ф1|V1iI MF_?d=[d>uy>3EaN; m/%q>Z199Uտ@c%Eec7٣6?W0i[t 3(CtIl k8)`3>rRjhއաS4/ >cs=^ҏ*R"/;ɚ=f0$ma.Fe;-3~^+'iR2-Jib?r&?q}!Sv課:+Z T鄕TWbJ;p>dgsinQEx1v]NO*ǿWcOԄE'#HWʘ7f}]{(&_uʳlŗ/gs2.` VʁJݮ̃_{d/d+9&I㯯b@],<}kSXqjSQ(m!Cߩ,JW(%-9s駑eۿ_x&/pػ gQ(V['R(8D?,^Ѹb@۽ȶǼ0$6(2"îhh:<2+PHFR7HRqmF57oSIwNc~MlO޽^q,Aj[> g$yYV׷W2;uhR \Innp{yKCg\TMdB\CK֔o.DA{Cǵ~x^@MheyL&+A87d[d'ƛz5L0/aXq/3a-/TFuB.SAǡVSg&6lBSX+1^hEw2מM_cн'}b,J;bT&j?K,(hHkӁ..ל%f/+|aH 9RM[}w%tqRR_P#NN(=ِqw?5j%[h1E1Q}gG4G2Ṹ>!#- :sg |%-x4:rk[Rmժ3zGcS@czBs 7mXYNvѠMxJLb^a,[X,`y`OȄnic3_E_R?wr1!Ժ.[wCMڦJ)8 uF6V,C;+l>B$=LEI/4TFv~:4T"ށ1}f49k갂$f% ZC(>ibPbZfi9FjZc1Qtz{Qlwx+}љb(bl($C۳g=Or*XA{n ivUWG:8:}Xc$Aouf(P{vc]Z1|]8*D\XSzbEiw'ĸ'M†hჅ:-Xȳ pcK߇HU3F&!RͶ~;ji{7OT#jsA=ȠZv0 hPp~zdZn|2p| zĔZ1hɦ*e-ƽѰ2Y=Kx4KUN.vi$/'CciY @m/T">p0T r94lfcf$#ZA=wA+TYAo`QOxI{qHahFPFhC }ꍾ,14^e3Yu2ؙ8&tK ctoqhCHo̽YᶹuI7@48If~DI/`i4%(-13#?@E|axY@0h?{_{oP{9LCsmiS#"|QynV$.SZLSSl ȉL3[ WNc Cr]u[?%J| d1qKT[uaC\[<&-m@*mh\-={njtT*c wtir Rnh-t 6?D’fN\VJaAA^AK [HJy/2:ãr2!pNaڦy-Yʮ1us$[գ]MC˹;}57g@wm? 8X<9 Jշ~Ԗю _zw3H,)lBeM4|UU "!F -dHZVmѧ<[|K$1_I~< շ0nXrndj,EҚj; viX)5lq+$X٥up;?2Ok2&ɠuW~0}PJΈZȖNmаSr [GtENkcxҦ1C[wjg65 hk^}%ةDR>`Hiijwd;!ܡe7shlxBD`LKAX:ejȝ`-lmPQ𐌵B?[UD2_sߩ_\_mOyD=#C#Ƽ(vǝj[k 8S:xFxPa$j)؄:N̄!1:KX:l#h* 2@I:):{hfMX&'w>~7-52B! `U8:wӴEgI˷4 WCN|N9 ]O=I&v K"V&t}i[͕k/+ l̓"1@F 5?tvP [ΰBf/WJ! |1sG uaxsCp}.߿DB98PŬ=/K P(&w2į#1As!|ژz%gASg Fp`1󐢔2JVt=ֈQ3b%-ҧ\s,/),Es7Aÿ,nl =6#][&^-~ EZWM~Y]F+3*Fҥ^F 2ܳpc*I{w5 k]!̔zS?*'6(0=bSnFhfE%()8@'/YOa?glC&!7Fn WR]P^ \b] p.A,$AGUTI<# 2"&7ʔ#uBHfp [/W=V 7b,q ~*DY1%_*sϼzçR!X ;,h S2lƹ [dLn2>U虶7FMuLX]/%m겈[r ɠ  .Ga̿̚wR u v&!9wJß۸5^Δ xqEM8UZHpfך=|w?%N$[&$D!{O_9.oneOjE`_F (yu -EUDr3zp/ "<'ôeodkd-}a(̚1-›F`O 6;zd=^xQ$ɣ @Tw/(3o ?w:DǡV+` JeMAPDHsFFfq:٭Tu湲8]D@5JYopMr*y7Hol@G ~%DX@Mr왁=}q+9sJѫ3ˋ'Ꝉ-~T<'9W Ҁ0`1\5+ھArh 4d,uaXԩIlLIrlWߨ q ˁ%O`{O]ރ0f׿QՇ8/86DEDFpl(rӲ 5'8$Y280|ol.J0hX$Z-qq>l^LF 1dF8V(ݖ#9gEubΦ2>FwU?^7aDtJ^mB!S8 1pmao2e}mgn 3qlwԼ$a7MJcDkK^IG>#gO#ݘV4XWnV\r']?;e"L$"e;}Ly54…#S̲?9Y~"L*\7/,Y; ZrrڵPyNEKZ~[,H~6<[|zDEyQ2ShIOtBUΕ]w&.p;^.C@=ߚqi*E€Um7u5uIP~O['̞w.q혫G6uŔ4e0W ?`>U=^M+RnW"0m*#M(s%Pzo[*>NΎD2نJ41-\RCW SuYOfq]v0BvZg8ǥoEN<T.I>㶆fzr(W}~? a,\vmSihU.'deI)Ǒ"YUvGJ k9S4@zR U?P.>aҠ.h"^4$A?0?l`q8>/dx#VY"4/bu0ߋ-b u%;*P6yqc(`?I MP]syiZz";r#2k1 9roEyS) rO< 7 Xs8 jM"GIEM޹-˔nw`JUN3H2co/S[)=Vu)Ǩ9ɾnJ?!fW<}"j]ʃ&6mg1OTso"6{QUpx+@1oi`N:ȞQuqj{G`+F<1=3?D^hGOop9.YygZΜ,8J>M)dS 'z-Pphvl>q˲(%Tѫ^b']`Nt2€^ȕ 3i|sa4o`Bf nC75`qHbOM7HKcr" 餝> 4! *9TAC})@ϒ"L4@/VVaX^y*Լ_`JM .KuҚ@E\h!O/{Ut:dȹ)"훷i%b Yk>~¢Rk-矸}'u%I!lOEZ,ph4!2)@stJ#N^҉r(+ YHNN %_sؤC$ 0zCOeĶ L]qؒ{O a$Y$ck; , X n7=䧨)J rx8}FmIЉ~t{-B 9DCO3(ꡆ8~N0k͠Ćʬc::=VҔZ(p W ,,3Psr醇gϺ\]zC͈Y̅Yuo3{BxqD$@8=Kqw;ș 2dv.c^ D->Oe=>JĪ!kd:fB8(FTmLTُȬY^%C!OʖEm6ʤO2,w:6 )X]~O|o<%1d} ]fR῜z{T5U.8O?5{2bge%ʎ73hp(ISDZ@GsSNāZY[YI9:a DV.BZ-~`BXm 'fȪ)IkSoi_[N]i%8iCL8"Z=69aVvKnnAN2 fKPS€Cy*'/ѝHD>@lW }y{]isݢwuԮWGAJ[$ʐੰPߑ,-W\;$|[q{96F ÅUJ&Ǘr Zwǘ=g1@8̼ 4 #T͈I|$k4מz(^Ɓ'%͢~Dw^"p/ `ΓGj 8@"bޔMF >5+@Ts|u iF^_T^*=ՈV MP +v'!}z$wlviTJbrI+um9 ئ3S9u2 }T:~/MC\^saѦ+̀^{kK(Np:AOy{J+_lѱt.\Vi={$W20Φ]Vў^l~G!e3#Y*j'7o fg|>hs6F ^z:Ѱ{9oܜ~MyX:G=Zt-ri%M{v !ߗ# w@`ᇇ 9F3g<'Gq^JWˇ=Lc T^F%u@E  A X7{E1E9HgH>!K\D(v#V!GM‰1W' K&FwP U3=/ l#k3Zk /Ma-W;)>D*n2]i;P/C ޻,",'@N?RqnG!e(cLcV x6i=kͶF !UZ>p},. %Oz͡>atȠH2v9Kc>(NJ; ^N4 j::c[^)I`l߼Gm7܏Rn6 [DP!$վVяuj!rv4g(g&@~zD@ dZSڃ?D4^pΡ1^zyYSuq)|߿84&A#HFx1V(,(ۇT] א]nJd`{7Q=ݽ[2]I>cb6Np]F U BO/lgwCp1h}L׻5 DԺMj9tmK$_۞ 8R[~B@5F !QGߘ%eL򎲩MBvڨY+=hI1}2Wxn2'`r h*{*S!ã3F7xc|Ɂ  AӽMP|iIj"Amc=BUPv &H(zT}ap9Դ1"tjt}YrB3Ge vxsxpg}½UJ⅀' `BqӠ8,I-#L5m2_՗!U"R/K<`5qx1rB Wo?R8lh w?u A걤{q?1j 0/2)a] O:獧e6vAzq.C.Xͪ3G~0zRq8Y+0٩?>£V^&zȾXbgVzV Mnҭ iӵZIF#:1梞&IS(jc7]kn:h?38=sfi{f<)ՐDmT o@*[wU+CFնE)lX^+x }g48 }r+HS6!u &!hqj%kF{{JD,PB'^iBvN,7k~Iwu`(EnAՇ.R cx"17҅=lo0x<Fѿ<)=q=ig#z˚ukXޭAcURQxE)ӪrjlA0 %Z XC(4"/;aQ>_lgґM`i,/^'L 1G5-6Z¾EN˚> 0Y,x,qw24|'D?tK;En-F"Nm/kk1^_%/f@ L #p0 ˙5Hd>tMlUG&slV*D f.[xL 8<>gpLOB}^|^&A?߽ۍJhvvp3[>R$E[.(5fAEHU> GK\A͟ANYBKa+H,=53@5٤cMtĘ=[+'ThrM y{q1M3;MF4jpk?Y ]v- _wWXQR_:g1@% ^R}J RҌEZ]9`&vcU0c^3nů5A]4Sg X4+^ZE0N^#3mkmI6piK_'V<eZuo6͋@!i#T]V9͐k( Xr(7$_Mxn?,:m|ep%Ԛ.BYp,AJqmj X!d:iv}nz> 6 `%7 XLoվc&/Y쉀W1VN^ZlFlP!9clIC&?Z]Y HVlIzٕNg5u<x&x52ܓ527U.'W~: 6lg谭hqɰ\!ZB^M/3ipzl?/ ,YKywnC*՟û}nw& DF*y)]> ؘKROx?ޞ< YEqEۗi16BEҫ&77{;R(XRU|k:Kk|G$0Y8r5_zA: $Dk\,BD~aKCLWCwFD_UQյLd 9;#X$z(g1Ph/Μ%@F)3Jhad7B} a_ n^ԫ*s}Rh!(zysL <;Jچ]?x]+LzmU."gT򘝳c#˨\MR214ZyvaJslZu9bc ~yCO,QKY}ٖW*ﶍ,l.)ĤXP)ؿ'@4ϲ}Y-gAGNl0H&vtD7Ee+`nhݢ  A;<9!l;Letuܸ 4ؠD nU"{Ifwp9#,{>!F,l$Ge:.3,Kh 7c;?p.QnGW[+<-ž|@6L3fj6y^Um/E\JvQ9~Rjqy\Jnd-B) oҡPYB̬NTN erҋ&st/fLljǰnVAYg|ra(:'}E`c__uG݌LbGNk0Յ0MUb5i} sO~Zb ӠCQ 4upxKzEGV0CxJT)px8zBd6},.'C@*E[tZ_aU4:, jBY&9D}OP%n!g/m*Hj\S'|<$qvzEWD\|cq2V1b30eR6) 0Ck5F'nz@<\o1CH5q)I"yo` _߻XeΓ>>c}76ӛ?c̈́Nu8tܪXaLDP{=~Ot|Zj`eΕ4isδCx਽=7~p{!\ /jq^qRf]$}4# bdiFyQ4VPdnV5eDyX1 J!ʌhN\$eAnVU&L|`U_W(2i >-!RG{ ws)/RҌQ [~FACV$n_olkwjm~F 3#l\2K!W#rW 1Wm`88gDdԟ,B]Fuqs2u3ݧ#n)3^8 j/0UZ~@;|9*VL.=gQ;pɽ!ND#ff yJц搥Z3oD Z*(ϕUE&$oh)G'Fw3qc Ts30IQ䮩! ~K6ͫ Gr7Gy#(D>f &Ξޣ"]s!cAx3qbCG`xkŋU Xm/'R(`f,mr5|r^ܧX6c 'sKQj1D62 5.Gc g IaC/MգXE"2^B1iqa׿Jjkg|8럆jn,eY{VxmBqdWх2֫eK51Dhu!eVSh Dw>F`ѺA'Vu5_G 7Օ!(8 ̘կ~PC`fP*)UTY!z놗W Rð@il183,Z)fp{Lm|NE,/ 7䌕1`Wx&?4<*8JTmۑθ Muz/Ƅl[@S[NCܜ4Rs#}.}NNƢ5Ly\Ru^ǒΩBh9\<7 BcxU!VPMVJvWܦr o~g_Pҝ<[IO-&*}hk*Pz]!Ӑ]#=[r͹kcm|9չ(ԁc.NqXuGC񪀏0\tu7/GDfux&}>[UF?|m 45lVIhӛWi6Էʸ)NN2Goغ ϸ*_t.`̆7X+TXӖKݠ=?^wt_j(1~x0Y#Qq 8:,s¡~oԪ>c2{J/[*홯{jk &B&VJ\i yژF!#x.K@ gWM߱H?<|2s:kgE|Q'BOo$_#sA# Q1_Ad?Fk?CÕJwxOS RþEEipH*dӌ4h ~Y*;*PatIOw]לBǐȼ0 ןK(U6R1jx'AiQa c˗ᚪ'ES ;W7$d ME(@jDEAqIή{}މhM}1³¨OGdDT*5Jd6Ywșڼ0-5j{ӿu~kNsg [PaOF(`R{,R:Aӹ6TkX?T2S&TpPf;1m(|FNLܡ_%w8}f:bw "&n *{Y:+cNF"7`5WU@;>YbVb+`n:%A˘Ŝ3hj&\ZIB>'PۛQ{?1y}.KDp55XW5d/SjN{?'Trw~p֍cbC]o+ ݏӭ/3~ -<,(j啯J#\%fJ{5$1R[9{q pZ-[/ VfMRGԳOJrs|Wu%0KG)W 'Cv bN\gu 茝~kXE]k_R=^{ɠ{?enl[<^YRS3t󶞕hà0.XcШ;Do@^ Q C 5*T Lf<FR$^zTk/SӮ_ĺW[5`wE4!޷+_t|=f©HoߦstkpO)m,Ļ.7{>5ĝpc6YF"]j<*[6_|03` 4tG|=TEcеGeC\j-HFcp9 _k1g#SG+15~ 7LVѭaa1 "\:L=rлYpTqNMޯE!Er^aTXT-uy' n'M@ (h"jDy3e^RjmO|?o7Dc)E^(gщi+g w^X4؋8g&L/۴"_B\ke-~xjxû?vpY#*:gŞ(zN*Gp-M -y)d;QĬ\VW9-Ú@A/:꯱BݶôF&?~L)$ `)}grb%GVSKw'ߙ[0XkM{NmL *~Կ(nϳO\Pr.4DYf%WKY,(ܝ]FH-[1߱MGcIڏxe0}-yL5 hNu{tKeVL )3B9m06_ƻ;۪r rO|&rKOvixvy𰄍]<]'e3uѧ" &Bu2Pl]_[Kb\sVf|@ZLnբ¯bzjKkᝏ"K2N&bzwT%5$Qޠ_X~u/38`_^L}?x5)Ni[Y }g [!b'd1,:Ijb?J_\5-3` )2+zZ;LZwVYiu,ڧ^KԬMy^Q{Mܻ!/=b r!!n~4u ]E nCW}oo^;C6zgFI:(n,[Nuy|:x>[lj{edv02dq矹|_|OPjJ^{ͩMxaq{ucTZorj\U? J?YYVUI%ؤ*GLξBuC ײgI@W? #,)O"+}eHqk7α\qb: nO@j1ȃn޺T?@D g7:ڃZ [qzXpRgҞ. 4zdqEq V--j@bL3m}ڝe"DmfYw2-ԷRPK&q X`n޾{uw4}%_{Ҝw1A2H$;ARt 籦Jҏ%]sE>6EBY8"JAAuwݭ#pQiPRҭs n(hdc'~c,#VZ~Z]D~ԝwJB.^G9|_aYCU$"`$yl[4|a #:I!$jI Gp@]=)͸WʭMZj[~O,(cm\=xu޲\+2xhiI'KwN~{aE"02e pg2H-^YZ;ѕ)~Q/_?ĸ.9w|mNfJrw&E(@:nJJe"2"XۅZvZKz9չ7X+c8$rRXykZ QnZ#iIS;-zdÎйc gFD9K'ozlP&Jj;l=kdVӱhVgK1LN *aWQ'v|^i["\]I(ʤQlbJQX` h%'e#8~` mD㿠@ȁv4ú2:P'˲mRBLb J&$ҙ~f!v >aX8 -~pǑ3yyPAHZlh3Ѐ-&_uMEa,r&/<,@ʃ6z;+dzxSaG0+觧(' P2 HEDE Y1!q(nE}2n.T(w3BFV>4n禇B֒9%(T aHz& XH1OO^4[d7HyζWԛf{-0ōb{yLQ_p3_r4O)15L湄2 Z3l~C n{v$#s3_οj0j n~5A@˘U |ȓ)-d.}E-s[2aP-P3 Fͩ~e1;@Y(n6xЁA6D\[V"#%P:,>yq0):4Yu&y~="LFj\>/Iy~o?dVIQewKLty'DFրxJMIG*u%mNhzt?MgΉ/-D3u9߭/e0AeUCTAhH:\Zx2[?.ocfy- d,Aݗ >zi-c˲G0zځsJmU_ vN-MʨyH?XH#{U@FJ RCt72%Z]aYيk9J@AnxZ:?\+͔L܃CQ .'&U̜) QU Wiy]=ŌF938<֕^'i#~ZiD(`GO[tn#tBY\ʚ>֕X ʀϙ ExU~L}Cf*i3n~p4f Ű9+Eg FtUsWZe|flSm+ĺ g$c_Rc!#Ϝ;+ޕ<P7$.9eSy-=dDܷ8B\؇>ȸ C'dw YxD%LV6M42z &ϫֈ-x<P5bwYm"oQ`+$vRO2ģcZ/>SAaQyK"-ܟթlQӡRlu@a&LseM;`̐B@T3[oOt¾EFd O{-+$ª0o%3}_=ڕFP)4Vy,DR ~l涆UL61%Tbw sޫBh'oT$L+)PT(;@>X0fY21mW8w^59 y3 ~̈́^ ~SA SA޼l8+ǫƘef~o}iҳ, UMzrm-se Qa6YMb\~{Qmc>cjŊ=WĐvg)2-k Y`5pShxm,&|e$Ѕ}@7I;x5{\@ xaí<"*zEșz84@X*3\LR̢/"cj7Nc(ٳ=}ѬU:x|]Ji,v6_>K. ׏G 3JV;LSn%٤ lK!60Byܩ [,n%~w3j@KŖvc;7kDYm V5 ,۷D?dk F8xV(E [Fx3s Avy708 -[.>+xvt6''<0!^kS^E=(%igu#ʁ#5s4GK}('LR'Pr$txv 28UHG gbyF2M7PIJÁrsNq6n-/nIa?BȄB훝|˜! M5}YzUJV(I9MEr$| M3 bo~ݻiQڳeo*=QL2BJ!2 zZr6{e #QV#NEE$U|Ø-'ʝ) $ C- 9zaT4$M5_gf)B? JT.\bw~!KvJ>?5%ăH'}΢a{9hk!ZSuܗcŃۺ* +|Ȅ[\CH(Ev͓>ՖNy8&b)#R).RܧWQen E׃T'l[Ot7:6 IvlѤ-$rUHc߼KK&4Ra`&c(tY{|4_fB w'3X0ȋT%s4iN m) l4UbC 5TvkyO ,3\lXˏǿk "و)[R R916%0nx;Dm2Iס +.Oke qA85 tr>O2cڰ/%90Bh*K^'1dޞ =cg߂|)4m+MBVѹ-qMˋdSb$:\z%EIA覹,^6gˈ"پMtF w' L ,xMMLyTBQ0fM#m0ϱ'vHH1^G")^XNV٨g[JdR_%EOUS~ECr/V}딶SQ;˲ qeJ{Xt6W p^Yϥ' g N:+ 1Q#Q|jgkO*(8Yxs$vNKY|bDZDw;ޭ'5|2b~j^:'jcpmzܔ`?/rpc{{X2TٓY{yH16JH2fJ "ކS[_ XjpIydp#Yb7UP/j)i0dz%b%Vk̯dgRх$`nE=lGWp ڦYHG#{7ޠ? >T+V;گ.{zFE ch:o ^٨Pհ˰Gg5X6IK{hV j3{*~I&siP+ MsD xǢUn9Fx%{ș򜙦z^ EoyʳjY­c^*+!36)! H"[ SΪC zVS4S_W/s-g<:햧I&z|B ĥ6$D}x7w/uI󟖭LEt +VX&$*S:K*ml`=KfChJq'sjK8"^5UՂC+̦bBW7I6vr(,%f= H 6ŏY20_ -* {|_fZ(FB-AQS(@gTuCM <1)I 8ڲ>aiw ? CYwni17{յ;ۿеM*C,N Z:XN.qX}ů__+Ao$}1yA"h2Պ=0GOe=L9^ /"G6دۆ>¨ˎqEy@> `3Z̛<6ЦHhOw$FTB?F;>E )ox<]Tچ0 S}@ Q6Q䗝7h{}&p&[%1;.d0>Ωz0ZhS=Ω/ >v_!}sa:~ұfzJ S*D櫖+(".%Zci*sdl!2bc 0ܞu0ՀCޮؒȂ+U_L> g[YYIE Im6d^ېSI.-Ex ,?cql9W\謰yh@A~=8hJ vH% 9^v'E%f]u{ ~:6֧NS&+*x!!rs>iMVD8kF-A i@m 2 :(uURױ[k} v`DuPI>L;.o4-H3 @{<?v AH&H<קynə. WoO)z-(έy+ lB$l|NusTFtս:[ŪrpQ~¾~2hv)5u%8S6G|X jo̲K^?FwTg''³34gi ang% (Igf@ Vm"޿\S/ނulYMOJm8DW?etO\t/!#'{Z%!}q\ovQ DTZ݂ajH7yYQ8B ~wQ9 mkBd.8at ʫa buHR]ZbU[ x ڏXa3Ov876n2c81tgA1)Jn9?\K_lJ8wM*ȜV=KBx6%rn uݰ$b5WCy0NÁ򌘎%sKR4EmƍmVÆ!&903 !1¾F5wSm$KcɉG]'5GJP'<=bnm'_f`UBRcjj"#p:ΦC0TM$;~9gؗMT#cNy&Z|g?Ͳ5}&& }%3eN蟃ZwɞF*dŵs^S[GNCaLmxyQcIq!ۺ7a }.$Fҗ_9|1F_< }s~yIg* HA{wKQd_ѰL+pwʇhOZ_)HO3 dZE'ͣjd L޺qRK׾Us"-b&UXKrf󯖝/"K_Q/z{*퐝U(iQ5l͆[=!cI8%?8;@' =':=dT7sBS8aCvN;⎨9{VE7/[=8t܊"3wd>3&7 s7ȶ׮i $uB.QQoawیT@K7a1r}s U0"dO"ˆI\DY{Q DI#y$lsP<8 BsCqd`ujH>>EC:o(P|E4N#J*4@cz*JFȒ̥? D&N2#?sezdp).%xc& Iuá!Bb%('r̺+OƯT+,geB-WPOGCI"`E@Х$:@ ԓ)K٥yv.BJG柮%&rvݝXk=3F1zf=3؞:_K I BAVjZO}z:؀[mA0*: 퓹 WڽU4۶?ͷ9]niP.}ag=C7TM(*vMF๦>&w[1Om ?W$ C2ET&uvmsN+CHly.Ǹ%fǃ- D$}r~2c0{/jinRoh,>ob&i4Qd,vЄ"[E2-0G731^ïi?"ŀ4 ʊ({T03\p8Wk ) .miCs]C\\io/b6|u\$4ecZG=YTpx{a / "|I(/i.GK&TX@{>o:q$I%8棸8DhjYUGeL _5 tҊxlOu8rQKͰ/ ތqW2ʞ%rmkVZ"Ca^Hң_e=.e "䖄H7S$a<55MeSP:(OOX]ƘfFO7%ӊ^rcKQj շN']_˂uRO,(h9 6%oKμfʿ(y3LKk ս#Kܰ\t?QD!^9i5ų&HJH7za=$ǥA>i ,/z/pigTzy+iubVF=&ю'*R8&\w$wWؤ,XyFI-@Ћʯ455;D? xXȎ7xݮ9k)ӆ8(!)k{EUxuD[pWIN!4>2@~,N ֏yÊq{VcKRYep Όۡ|[KY#;(y#7*7@Y3'3!๧ʷV /8FF&1ԊkdgA6d*4^iXff7]BN9D\2̎O10m9Dm8LWg[3\ey\E0ZN/>ڤ[kXdskdO;|m Q܏0}󱺘cy_diQ:%8_i/iA2(U͠$]GC{ {B-(,YVcЮ OzM;?pѐZRVY':Fr_дmQ* 5 MCɒʶet9G7SHBꈘbq<rvRm2I29TSR~? J$TB~C3]6VJ LLΟcE,']'I~?)҃ n疍v9yw9fͷ WK#$'D޺M<'{zDJ n?G6L2d򭪯("0I[R~:2w"Z oTLP<}A/ 8r_OHaKU9Gӗʳrр2U?Ww~ *:a{u5]4w}gJof;R}Z;W@l<·O+_b|REg#ݿ54CԘ_dk+@onmb- -$Mɐ5tv+rcI:h` Gʕ+%mPF. g:o>~9Ӫ+HP+Kvz$F~sP+^yycÓDd'rDmlC'qaBwV\tp.}XMщlSN}<(`۩U sXJ^JCh  t) :λS|j!=ff9jnwFԦv#+KYmLxt=2"`+;]]' c}zFSnup&*UjVG ly iD?j#51TQ׃uSTQfҸcE?4yFJlBYqVՄ+n5\> Jƀ`[^Z=jP+ma"3ooE-t] XT%'HD){*vxճ*L.8 <20CA 8 |MF?_-'3+a`wO~!! '* /Zne"`=4)Euz+«8)'ݿn-)([T$4w,eK@r=o 7yɇr^k1Ou؈G,;dp% .+jJ y5Ȼ75g 1wڿ'=  UWQ]oHwN,n:n]`zh_~>T5uS rQ:xE0{Sxvug:#+ZB*ibH x9å 9+Eh5X M_2 '{4RH^8d4bitz'|T6@^7-ֆRj<1uQ-sV &)b)O3?RNܔuC t4y^rXȩ9s#u-E9SNi6Oe,f45K"niiǪ NDrvB*R(E?̨N3Ttq8`j_yjtLV3KaEhS%aV-֔F ĝTH]EY&eb nD73=/ ) sKAq8A(佀${?"#ʬHY:S'':K᭄hkA@zۜ8X=M9XV\j/ɗ݊R+Z }3c~w8eh,%b#HϐB=]vjo?XP|SZ15Vvg~Fifq31Æw. nv[aMFLnݺϑTsGIOYM(ЂW|_HS,ϲ8n 4[g"KL,=Q$#){B Ey 0)$oBק``?,dVҹH#` n,UE?B)r`F,l1!=$@Qo,(( s1m@=#J=s!Ыԓ'd?qd %xA@C0PQD␈7 @de3xQ= E,UiBeYP>#q ZJ)9Eu mi蘛GJNrgJ>]Ga9웥@wә[]Y" A$`,o /X⡪M-q{厹Jsea&餺p>n煾^^eրXTv-KWQ> ?4+\-lŞYO=|!ګR!ʹbdэ86j @ ldP`!KۮU؅$=?IYshCtfy,@ Rޔ [ ~тYDbVK6$CT};(PJ\g8^9Hƒ,$2ak˛46@sg-%(vr}+p1ВD%i$<.cZy CdC$}Naz zVwJҤƓ̮י{ ~/~y&Y!(WNo#}NNZqpCs$o/ĥwUu pr+YVGT h['sa_+yPvs<"z48.n;CrR9PULxaK9 ZCF,NtՁzDL` tPgJL L@~]GȂrӔ?vkn4F(5M}ц8iuµn'>&*J>:f[/jU$=@-sJ7GKC$(D/n`RJj3UFrN(ƜW0"ߠz0O~QQte (w(6{ +犉θ?CC~E02+P=yy`7tTOrd;>e"͖Gkُ}[$\hw_>彰 ``Sx^|Gh&?{_u)I{Ek˿ uPt/N~5], "J!yeen\@[S~\ kTz1mY*hljQʜgg"s4eD= +qM;K Mw"fAe9V `; į,hx"R _P}ŮC mwC?%>jF%uwa" I>L`m8Ht3RVmw$>Is0$'%J| &D9*& hChTΠE~,iGדCj.$8qЂ)rF&zMF`mr^_o%['%-,lw<2H;4lI֕ .SQqF3lab3&kHU1Ѽw=,&iщE lڗwf 2k(%7D iYDCbc4+KN tJ: 9oR;J9%%ҋw*d`4-?Ṑ:l@M+Wc>r s\/-iTN'nw :-)A]*n7=[b![>Mde z63D- [#l"3֌ &8t*(4Q2rb7R;1%_Xm#8|`BE L:.oWh$C TWkcm?ωnH[%H﬒&KR$4tdbz#}s =V,(QVY}V5^suXQB%5_CL]*)*PzqߕC4e`>MS O!I5WҵkS^{s?l !a[ck=KjO2 .MwgE\Y(ҟ/hهhC.Wˈ+񯊜=rf|R1U|SNqQUv7dCGV~}E5!xb~ 039v3UVAN/C9 Jk2~kzu⼑U: $5)Trzuȋܫd sV$Wi389h¦.&c=ʝB(jYՖlCps D<#mVWćʭ(eb>hJɻK ZVm?~"hBG&Ԉf&TSt13n> $ )N9m8 S=iA>`Lb씰:8fcϳCn~BHqaGC]|,yPeKYm#2<W(hD8Zjv_bJ;OTIܣ 20OTT>!>Yc68|k\*%;? /1h6!P{ Z0ͭle V.̶&tqf;*+IPr|]DR%+7Zj庅!**=VR[]0G_[a"vs2&)7C˝B DrFγ(0Q?ށ,'&`鈓g@51o^+]tbc4Z Q Jާ/G"vy3@IO tb˸HU1`fEJ֎mhu6Ju!\amΡ)h.AnQ嬢P X.0 `!36l1|j˜˔3^1AÉ5ϟcX>0e2ϫ(uMӼWhI.b&5oj - ŘЊt?LRsm.8D;l/R"STG2eT, dhT*!6b!TWH8E,"34b=y0bŨ(`k@!;ɡ-WN\B$P|~ptn0,#7$_XR%S)v5~b R^0QO-Lw6A Yp|32wgaruי&l>s4)ivg_V@mL~]hS\^`H֚Oy[v{yxhծ%7kRͥ.hE|r*=k#y~Ug䉺vyú ϕADǪb4uHW%@/)*+[7.k) ˗j-Ocw l(cpqWC|I*-_켝HFIVÂmҘ6?2HECuDBNw3(YWOG2H3 EA~q=u\[<0KMቂPsZ/P&7 O 'o>kom}7  3i[մQ͍f @]|E.J[l +^!~ǚ3wJT(HiJ)t}Fs3F/y5Ka4N'_oFVyG,315^剖 ʴ#XJ-vFh~"Z/kF6'vߑљƛ-{ĤSkD!#vlKL ;PWesT؛q=D*XS&K)a+fnXOR'#마fU.S5i~݉؊ z!Ⲹ "^q-S ^'D-?e>tи. )昤gw(1|828Jr>Kf\Hu?>Gv|[> ڼP_yM]~?>\AIXbEd<}>{x{8{ շ>K-F{i"Qh/ (W9,Q4_g.yaVbs:G|Wu1ZU'=0e0|,PB%&#ެޕQpتvA0,z[oW`bszZf^ #;{X0=5YK˳YӘZ 2P@Hq`NE$JT\jy4i~.k<;׳*zD4 5"Rdꜘ{ L(:XnN>4z􁓩A!JgIߙӻMj?!嵇 [,˴p,gdKX`!6VTf?!!IfYJf/DU# xNN^#0r L&l]7BCx᪜'oUAu;Z =?MW0B O܏$Xwy mlЮWSVA-_/QXb\sָ.D$˳7BuBes-*18=r!4['ͳ.@WD; 2欕gD^]#f ]eAE67($fh?JW"u'39y<_צ0.UC1x|6hjEUjq14I;Ѱ{|Ğim /㶁[l€SH@>owMxګϸ|ec2o3=OLPl'@RیheU;g![.{}Q޹JOya\widPMs-aA`ߊ$|ǃu".щk:P _Nu+rM iN$J)j]4G h jzvSd cUӬ8cҁstjHcROZ|=+p,pN?mrr|~n-Ӭ)c/Y?(ܜܢQezD;dLj7_{hH]PwE>GzLDe!/*"xV `U5[Q814*-t|73ܤShR5H"[c (^Y 勛DBV,ׂ+^Mw3,h3d}֐ԢWEhbg6li &Z- KS{:nK6اQ(^5(5 shc}S)љ6Ǎ@ da(U^/gX1g t%< _*,y#&Y3=r{<'m~K;o8 <%0IfKoBredHlbLB"5K5brב;+5IE1;e&]-B%HѲT3ݛVX`G@+$.ɶHSIF3-uX vk g#I`jKX$  C!%`4qfHIjOQE&Mu*];;.;$œ2#PЕ2WZ< 9T MXdƒFw!I,)I,3cړi}cUkҐ0,tGo3B3vM *9&HS5hE2aPL޼shxwJm$nT qTҔ麤P׃7+_m;C}giM# ^ee]c}C;B%KHh <QhYg%cC}|˶r,n3g"ݙ"FmB|h'pEƂUY]C a%@9Ak. ֩go2KZHiK4geOu?#@k6IM4^E鈣٢*|G& l@ )#:ڗ=CC==XݏڬD{J% Ҳ^;䂧dcIĵmX˔$u c7 4bJc("A:-TFm!l}igЈ{a .|Py!u{W+AckJi"bqx(M6p^jdd >X܈pN^ش15@-^%X}rTʬ/h^ eW\(€UT2 cCI99W?oDNt/`ktB6v `N5/[nselS(N+YQzNڞCJB9q@<zl_:y豸Ǔ88La#μ/|j=fD{ _әv@VԶP`wՆw1+G[M2WDe}Tk"N`"ү,N(3" VN!CMvY(#8p0~joSS/ƕ$ۿ\+.6X2zY ܨWtB[O*Q .L%oT<~?>U^VuCmd} yaCS]r<{+͡-afIY]|+9:87D d1 o kPHo1k*kY%(¿4XC,\l?ؚbŁ%ps.՗@Ԑ5n5hԹ#g4-5ofQ=f:wAOyEZa['SZS ;>r c/B73_ Lmep~OyBAq##‚?k\a;r:u9"a R669Yя khpKhL(^ʅOM|' w07l8^nZ< + SLy w:)C 8h8UqFQX<{`#r I~h#,yΖ>=%LZѮHՁn3ss%h<2ƯsfMyƍ;QTݚOa%7Qr?fɧw;mE=l҈v$@Yٝ&5a=j6N%#`a&0r yݎ2I11RN50/ig, K@9{\]QMakU/g)n_nl:7!JQƈM dr%&7ҨIPci BLT#LZ"W-"- },:B9{]QS+-ȩ̸e̖jLkeCF]\Iz[x| w|.Pz(v;$KS <$ 5 +?.L)Im'=L\in#LF~7[GmӑBOiw S`b0c뫾Yp+ c,XPC'#Ov~ՙƚBvr]3mc>h*0PW[!AENJ`PR/Vh ' ;/ 64s}F(t(I[Z":FO@q%| H|>Q柋x&$RPgDzЈ@jKSrhqΦ>1=[?wں eHE:g:Ms4lѓ&ʼn0{&b0 ڐ$[7?+Wo .⁽oc-aeH[P%(p4IH씗2XY55%a`ߥc1Ӄs*I]9eioJCVQAA]_BӤ7˓7dg iMQUs _2› icK+LCdH7B<LshsV0dq/7]:}pY9ǔp Q݈[KI͎׉"sYGpX뽓]Ǩ.P [JExң5Ik$ =Vq,Ex'Gװ7y;fF 5va>Uԙe^蓄̯c+wjW z3),c|ͫ,}=rMϩ?8S8ۙK"&eIgܛܾVyNT(x^Ok $YXi~-P.s*9*(a(q?7]tdRȊ;'b +z:eЋ4Rcd.B)n%u!OPE8VWk61מ%[_)L5gʂ 2Q8q͛_%I}US0ɵ֫'p>DLW%1ҍRݦV4#%G9X %zAb|g2 [ެ)w.8!a@Bit-w>aUSӇGXImO.sK,:bNz˼ +kHC]OڧaWqr Di<7n@+ў*V"ֽ}hF΍];z}7X(Qw7FE>igtJmV eaCf\ui8jn$u +E!)E,UQ_LnYB`C-{GA{p2LX7V]G Lm :1+Y-<"˓146,PɷLK3`B.o1Gùԓ3޵-LEtŨ%k_ `Y*#&ı0fVnDDY-qZ *rt8MMx=V }ݫ9 a;RrN8-YH#._Xb懰5 43&Y: ސԺ"QC}h( -I`[т@%gEFz, `fAYp8 8|GG͜iEdQN*" AXJ=u͟^\R\ޏ-q~߇S{]d_HZ;>LV"Vd5?Ȗ~Ig)3§ lU*QZA fQjq@gWuD6Jݕ $u! 2eii覌#!&)_G$NyS1y8;cY q#E+kd=5cYp1b3r]Ssd`=gS>R`  UeFxvoU P4L w{+a t⳼MG"U.ld;i9zn?yV'OI?C|_;ө^6Az ;b궸.c: oQU+Q2l%º> 4S0}̉m&< x2>y^4.O'.$`s'.%}ǚJyh>x{)hf!465:i) 22b9[5dE],-RDD AXo6ed VQQRXAb:e*Q9Cf|=Q$ү_Pe2eUYP=:(14͕ ȷE R 9's;0QVyq\&U$tt3cΓNڎ'@,ʰ !G>&T//KQ ۙMyD41)zPW8qFqǹKdyfnpW$:"*$<8'NDf./0^s{Wk"iQux""8xL[%;e:bm@ni I4xѾaqǷ./>U X<&nuirt]jt^wLpV.mK)]`1ID1tgu4ƠUu8ZpÌ=ޝM:2H\_A3{(MrH[CPJR0Dkѡ-\Aqb#=Z58Bܴ$Q)".P>2R b(V %w4=CIfN#PnZ޴n_‘![ޑ$o3}}ΰ(3剱S·\բA%T/E$yHhڄ8 /FSA\"z@Ŕe0F&r!>2V5P)ԕY Kh&G ub;bB!cR3Vߗ\Es]N{X2气emxYZjﺸ2 Ǝ՞C~&oJVʕ۴Cqnk(KOcltuؼvޡk#EX\V-aAG|s~.mSW`m]cd˾apx7 L=ѧVv7X_13;hP淫ku@ 8@,ƒ}e;maֿ;8 ^|]ˬDt>Ţ3-lӭT.}{շJ$~kpwsĐ䪥k}ف6,Kiuh)ێYG X\ByW6<ӓ%i,9?/Hr,vKds역>21d$Yޯ #-zUPPyzyg' ˜U<2pR"z}Yc۔1,,x,?%8' ;dUao#I,gmaGWŀCh$!A+ړ**!JDpŝ!2w74\W1]MQ0؜_([/vpEk_B0y$kD3`-/f-?nHhN$4揈ҧ?ŧHшu=ZV7p^琳 /~~sԊ}CW@aB*t^ o;Y8#<8z%28Jݐ(V[bĪ0 zƔy}>^ffN#EڠaO> 5 g, 49H~`4c`G/Kft 6ڍY鹺+FjKovy2R"?EKmmh|/a'P+BGF.n av;@.V7N tzGʺ.o9]ɫ_2)؝ u$3wAZD h+nQ:Ũb:\q}0"WT@Љ vXT'ّ)&G[IPmT .Gs~Msv#bNxE_4}C37#^r@wF>R@҆N%%~a/eWӪZc:ZA(x P;1W7nٛG웳fAS`gh2/& ^OϢ'S㬃ATcN #K6%돗Z`j5"Vg(pꇱN;z)Vj՟,'(&$DJ(e%+s_ 66=YB>dpU%s q9[le qLd]ܒvp6G5՚"T |A1t8L=H"NӭQ;VKة?ì sژkc]X[xϹ[s1 Pѯ]$y\XRo̭g-+1̆~_aע^,sOεw2@Nb2Qcv)R(@XfDt JKo06#c euQ-k}"/*N4}շV =*J 2W"~UTiaMϩs \ka],a Vׄݕw쌾6<$Q{MwUz֛1J/xVΨ_WwM$ЋEALTp;D%kNBΌw!5Op7%ZI)ͅjO]Cb5BC2*fv6=9b86{I@J'_ Hb"d8 4nUx=|FېC{։nҌjrF, )"uo؀W|BŦSrXWjeq2(gJr_gr;gΟ8fB9['E ABv(5ڿX=6,_mb'Ո 8B[ïQHv֭'*:b q@ȵ p f<u+lY)N96SZ6:rG~AT9Xw w{K,={&1BRBـkY~Qz._re%#C\nLWk- u-K_)"w!Gm rZ;,nAE޶ͳ̭< `)\S9T륀CcT;AC%wzK_AvO< x˂W_-\.AtIOu%o.l*;Ke tһPӍEg`b)ܠ=~N==dw< p'0Qz>ёX=LKW]n%/my>M`4AY;2(`˪$ lBuAxIf!r/U%2d`VyOdyQMڽgҺ N>aJzb2S.Ұyb8pMVX0a>^E/y1L|3]YB>9}Osf5[ aj5^F**S)p>-9 q*UH U %bU7iEfS3?A9תt9aS3ERKd߃ҵٛ-E샀݀hԝ]" L_jMjWeWքҟڳO,WP%ź^i+bj^ZvUV@N3ih;fM'aT1_NjmY5hjPMj%/r-iʱGޤ/d/!J)2K4K'<}8Q̉1) 2ɀjm$7CQ/89Fb&y<}Y2*H 6N|c_ڸ+GqxMߴNlՋ(`~cgDلiF!{CnM.D =͈A#w$p\A֩Čtd;|EԈtN)2,cJ '^=_sK]Atj"8 %$A]HS69?9D.^ ($L̶͜B7mC*^c)^!Ә:(I~@^)~'JE'{B` "e-$pcH{N菁  <>_3yLn}:|@spڌa>=jܢ$} 0Y Bz¯ ;Hs=Tt{>pH!uw]كi%$/EdJj'If[DXix޸X]ZŽ/S MUPw?V`Bqp+MI< :`DDe2`}R# ]wߗ\@=ձqHH(⏗蹼 kh$9.lQSߓ3UᝍLF ^!u\PELZGָ5RyB%nIyNu!DW_m[Ӿ.{6tI9Dan9Ϛ!f|~'ՔH!Pq4}tn>@zgB3@9.5'kDb6 9lvV"[cm(*HA; <=OP?f`W _8^4Rk& Xžn\+*&0$/:03]"2SBOUHc努c'M}) QO2sV}],$p],v>n>wHl=ӂAoW̐C%DS|alj ?>Bj9i9ae؂0Cv?=\ זֱɯn#6ubB e< }3@Q{Z6؎b)3ƟP ~c zÚ9iifؕl k`C\NBV茹õi)񖶿]fHn;t+*#޿d%Fw.M 4k G d9Y܉6n̆KF|.U]BaHѵ3F6}$/% y8CxaN Hvy>ZP$ϵ="}\[;:^1'M?7J}޺xmɵĸ{>t$XJHm¹=,|=mf?( " *4 }§ WyO"1mfD#/i$}mF1[`X2c=u,h',X/a4ңh ׇ lVm[QB[4"2o#a-FYۇ1h[j+1xwN[@Oz dK|pbIs[JSGPr[,L .rP8젔m ~LM=بR?2L֊pS}JsP鄍t$":,GoZCT.C:Fwg|c؁fQf4l^ M9byeUxg/,hBK[O%.RS̐UUt5y\3ŘU Ѝ=ǣ`R7rSѾ8C@%:Kmk&&1Al_9?eVsMh/~S΅*:BL(0!|u$iw1j\%h:C :[B nVYmo<":EC0݆kHx#%~+ԧW8qQo67(ןXgĹ4q9 ;.9 {Y .~ӕY g;$4vP2D޵h\<9=2#[MN ~U2 [ vs{ܡ)Pow(ɷJJ}Zn斕1[zfHe͝IL~:p̝\#W|wuGLu3R *-)<棴gXcb(Ԯ@U>5V| JE3Cr_SRCQ J!7M/Kg@a\ (W't++NȢ,{nz$q}43Qr,rlz[ !;noz`bFVC~=C,Yˎd<i@ר]_?j d?ɲ|x7yTe?cFh^jC~n*O 2:oe2n5.E{wB?c[F9Ƥ}(p}Ӹ)f~/`p쫦1ĸE'땩RI_R .(S!Ϟ8x⺀;ѪPnkڠ_Q B&Y;_4{8xjK.l-TQm+&i旋wnwdWWNH A崥zPh( SXwvr5i Lj5 X=1LY_js<ŀ >wϭ$(hWdH7[kX?PE8wp2cGOxp=;4#x_%Y{p@IxjWx̅aw2 4[k+鄀,&D'x\ &MHg9 OA D%dQ'cÏd_樄S:Dp9rBVp!Z#>4к? ]|q0giMuQo7ZM -^Exmb|7vxN.Yj]h+qz9B)MN] ]7)i$@#L@gMc<1 shtG E4CL.ED ӛ5*' ̒ϑִcc"ny Z ~T`_y-i[\| ;U )+}_rdݚ^o(aZl$e2TcKא\o\$ ]٫n7i7a:a9Nyv%n1"=V&O'{ODqg mp7N܏n1Y.@ë/sfCz~DeR^Fc3H9D?8Fr(uDP )ȚRz/,plIygN5l7lqXO*trQJ&D_t .2\f6C )WQaW(JCTrt`8.dv$k XdcUǴJ_#@Iu3EۿQIh~Bơai i4#}֚|!a8*tpiJ2+=M/c7زϐh^ߢ8ćFCGiQS7C|vb6u0AMB@"ڎɷ/V*U[;QB]˭<3%S"gGr\RA𵃈QVћT` jP&+)A5*Ë n ܤ^>Qjbӷ-Vɷ/za*?Qxy3Zo \I92 X^XFpFB2ÇI%D %!5n/9f S5!HmQ1b>;K%2I3=%BtҰmV=W.fZ;lhfHȨi`)^C3&2 b񙦅T vyWl8 IK_($ge>_&#xZv;ePYo '7VNm3?qq63"~4(GjTd)vez<Ę, [R d @QsTpyAG+^!T|:̕lq[}k pUv ˷X̻Ҳyam@wbDIg%= yW`Bc~C@byQPO(ǁ,#7H!< XcJi&zʸ/g&wvo= :s6 ϗy%*(lN)d>4K, !"x}f'tK|$vB\}zr[\Mƀ2CYϵmEj>K`ɇDhz}' Iv3c[kPNyJ8D8P^YqdHЋNR==_9~GΒXgRm(nn1嗅:Zyž"W푤(&zW@GAG?d(%֨y / ĘGwd4>ڭ)#.DᘺggEYHIN7yUwZkk"78 ['\2I,OWЅ%٬#Ń8>;ѓt Dқ [hkݞ|I?a46uJr{938683n.I~^F9ӓfGTqpzvBXrٔz7yJxղyS*MũrNzFziM+؋s&7lҫ ǬϗܤB_%B&/\A](K1W>!\B/*ť*FFʀ^6w{}IMh</\Z L58Zp]zgú}0{_a@'Wˊ=Ut;X=2K\qEVlr!JRZ{[<^ftF@+ș"; -.š1vdB?}G' \̧vނ ?'ႛ/'LfOɱB[kƳX@ʑ.u3S*700!i.3)aIG-{eo P'M2V۪DW a"SMشub5J03kH~<pއ 8?aCav={F\P1Nd[C%)_;&_]=؂Μ9AkrQ ;m׃D l^vvtH0v!>VjnEḂ'<ZI|tu8*\3+ j?JHVS oBFa?k˫-n>|Os a D}jI f|4Y;[a,fѻl؊ ݢ__TE .@5H*rtto%S %̏vמrTP Զ@ ! ȷfCjX|4f3IvK'aEg` GB$2 r9DY㔜*'&["d"2]HR0>v+4l<Ʈx6%aOU`O#=~!IQ;a|NZX:/zb-w. FCt;PO_WCA7x.M!\lq" IWl5#c|RoezyOP#_<oٙNEƴ|c-"47G;ʔ͚bkV 34cgBU'U+f^e-g%Wؑ`eEv+r!_։8IS_&rӍ4ze~ZbH#v}ٳg+R^_~ۊI-~p0?*Wa) TT^BQ8?I,fkJ/B{V?rn^2e`c@?s-͔q$@e~(^eVZ A`_&qznli+ ?X\K.)Ӂyi!,@Uy:.1 0c .&煫(UNF0| އdx\őa6EFǥUzA U?eD3\x#ܠ5B+2BTΡЃXT`HH|ەRb(]n_zzRȡSO]Iq@p |IyppHĿڣ:-rJEN 囐,caxl(2]v=]P~H(c4=?C5]|'H=*8Ш\C.W甹176wj%uMp _ V>UE0Teǰ=]#0 Aj_t !- YuQT+j2p}!)%Z f]# [#t)mVQ@ǒӤ. J[tvbӚ)^KzhHh׌Z]y C1B1i:,o-"p;x&p>(r)X eVA"'pxz\|~+U$ͮ ,ҫaHK~߱WEoa93XP^ySdXPڥEais{&D'XK#ba3~8TtFNA4vԻ?jxc{Έ_$lshÝHntlKFѫ]NTa_RiS46ê;!q0+g˦8+  V:0k[OJOQGI!|ЉL d&3]?kc%p!M >.('fď':E~R –ng 8jbH{|* i{ xs"Xb3-#_(Sm/aAq܄_04ݍ|yXK9,)EX[8ƶ"%LNS  =Ã#%k?<?`M[cX=`Le2=_Ks 6Ն^`y^:)bqV7_+Aq51I^>J)hœx&E:jcki;Rw=@'!QUp:r߳@i^a $qpx̃LHf E6 Cs$VT Wd5y~N5nC{by,e}Rjz8-ٍ"ޞ5Vcм#lύ{(w3u!pXѶ7ysQ7Xբ]єܗP#*[ϑ*(8ӈ3>W0Ex[1ki\(K ȃZ0ˆQF_xa|iZw~c Lo#JJjb;+q-A_zbcJ Ё_wjƞ]BA2E)#5ŧ]%^w+0T*_6h!lЙ*/"_ @͙mQ䯻f̧mJ v>nHc調=~p/E^^cQOEvӛ|TӍ\r/% ь4gmн U9(b2s%8d_V,kN&^D)(;jV")0$Z:<>yodx6ĂM;~{ssҝPBcلc7#+83&V];FS#%/=qܮ\1S5{tsh{`gmS#|v l>ZJ׎a/ IX_~ewAq|]\cnS>DCp N_h?Ċ;j93S^H)!Dv~.2y,5 X,sf38LF_g(4EJZ!a̰r"1XfqKEҧ(c: 8(.L+}lҺԻ! ]jK8)0q0DI7mi.a@/eR_U0L娜Um!]L%Gn/FKwT{Uno#_![*.J| Ʉ,[m2CUą/)-'eDu`s?X;m @/ϠTys:Ȁ]b(=~O5 Q+'$>(42gSVn(!v퀪YR(`i2`^S0."Y c5(f]y @K-Y| )YY*'+ wfq I@fk[ʿsukR:>6fˁI2pJu3ZjsvJD&qA$ʅGkL;fjqt_;zyEmŞ8Lyu  U)\|)˓xC[Ge YLk&Y3M h롒gy!=g9%?P&Ja-/IPxC@2@uuXdHcTH8cIcJl^F[}^Dr?\;nSG$T"2Vgtl!V^;"liZUMeP^9/Pp H%5F/߰C$}7pyb58?_ .ih hoPܸhf3]!v]!WZ ]6FAFo| c#G^.+o1K0)g7:dChFPFHM&Phf([SAr,a<GAN 0YA6dvWj@Ȥ)=-z`% 3jnv]u/oz [\~:NgS-Kx^%B\c'K_# 1R֎e4|Ȟk3[!_;k?4>pI&gZJRjBp7ʮlz@l7iq~GEND_[4|U[pXD\  J5KޜP1$UrW} +YHU20Ԁlh/wP/T~nU n98JLIjR;-gv3!C !aF:2K EmD&PmbWw~ț+H<˚Rz3}s2j錌e fS4eYda MNa*)Z*$-m[o(eOzWKvGeut[)дH^xa-?"[Zo5|rU{&EiMSY(#0W7WJA(mzͷڶp̱D[,FaP2Ƚ F gui^F6 aĊ7ڡLmz04hB=F/̴Op3f*m1U,wI9\{1 9>:}z{:GhVmb<)oZ>R(Tv~\ ;A],*F`[ 铥$r?43T9~isE|̮ڵ2?O>bR1u'lʵ普{Q+=AtwFԔ-,]_3OZךA=ޮf+C,|:H5J'חj;%ϰшj3)*1**XTaQa0SuH?${a\]"rB/~6Ϲ+&@:R ˎ|W\mU}ky%:ԁ_qQ[ fpF&,ˢ"Kjq]܍e(%J%/Y[GTrϢމUJ[ 7.=`oZ3fq1Rk?TAevU3<+o(ip+bdN[h("m#]rIX<;xl2AdM&YML E6ӄ9\ 8 sxA!Dc/i U*.԰Nt~6\#^|D0DzyX2B;],BZR_Q^I\z(Eh#MG,s8R"X8qGaĝsti\#9z }gVNC6/h$kKuYUq_|HcQI#_Zܺfa\X?BN[Fڃ:\n6gD:+,osbSگ$iX B rY į: ׃r wOȨGIInMFuȈVL[E n5ކ>d6OlgJGǼuN7U,W!ʶiSZNvCIp3g]`3o(}[FC' ^;Auřx벃Aj6XӃZpAZPbV->@3>' ,P cj ̐NbS%AFb—ɋ^(fߦ6kz\a='adI^YTvXIZha"r~~ i<R^YZrUYvK 7b[ z)yvH(Uڼ^ոUrg7;ru,a 6 2gME)A#C@ݤSuNUګ2mdvBIJ$4ɹv1Ҡ]!p`(q"xKpZiBVN.v%V'鳋}BgX}&- Y={ZEdU[Ÿ }HKHsX#,ġ;pw7V⍊6Z`> 7M-M%`&bK`EcY "˃T.DP%suR]S3#ub؞:eMΨc&`lqbwn9y;2E< a$G\!pd֮u?Yv;8]C)G A9Ӽi*CbWYk,BGbb>a x|hsp:uDsƾ}xۚ5K';;WFq P%଎iX ]\t_+0 T&6n2YI,~WJ *^U,_̗[友0x V]9 p:J7lpz'_x'^kI5E`wɹ/'N$9]ǔvf(N Y/+|΄fvG k 2SB!FK*V/0Un"Jכ"wz5pQ}g38#Eƪ\F#;ȥIjT;"5sVUN}Mj9J24duwP9Yҷ I1Mo K!̰>[]-ox!Ekij [7vh[wIbMkhMe`A'FMwfGEJB@ Ä W1 m^dc'J}0)S3y\;,O=09CQ:ܻ%Aq$x!m:ӇtXԀzA"ݗoăEnDrA@~Yon'KftFg Ýa67xMg9 XgpYjtkyfa2г-uF+h.HDǙ'+=# iFp_? ʒtTUm{O~#}:uwGZJT,uw^&(Y%M ]v>9Z}|p6sMNXyH1Q%FqW !q2'*??]9RJaC7XVF& nú̩0G塯g<|Onw${ݘhdd erΰӅf,fR&䀚b!`Xn)QmQ"l]LKG7@CՉ%cz4@%Fъ?h'UMsZy!PY<[0I򲙏ڬ209] to5k퉙qSPI=2!S֭rJ1sbmHG-g0\4>HnsH2*9=TbXҦOb^virވB'߾1?!fF&F}՛i(_Ciby&6vYJ'NTەd7&# 'bF`xt|,|è0dx=5)_K*R@:/B'BBuݽ3\ᱰجES4?5bljy2ltǑJ2,SފU3$=ɛipl{ עwm{ ?:cA 9i(MaWF+ϰe@+&}5Gk>>BL_fvڜKij.3 9`iMVS|2 3LUü!g?sЉ:} .6kL _V ۦ=kL@ ?%ncSu4q|͹v\%\ƌ#ڥF{ _]/(Tf(IvLHF鯋Ho܎/@2)g4B0xfZHlaIz@2.maGBڵv)Û涤J}鵐8,|'}5ŜW,Y)ɏϋ %&(ΚSLhy ǯ=ݯPݦ3>j5sK{c3g& ʡ/T_ z<ˌ}#W0zPr|Э"1#EԠ :_/3~fop(H7ɰ&G @ͅN:N&asebnH.F2 ^38U7X' ,Me]\sgO5cv%F|ރ':On΋T00_gC0=)+>O0A X֤({MlX+<|A&Ylg͑?b._|EBǍeU "?|i =xLY5:.>ܰWO֖>.ĭgg][ ORs0cN@IES2 6KoYʒTLgK(؀sh@~K(Q F㋇Fq]hGVR7~SKM9݅Nw]?W̑<= 'zdNl=rE H]lGQNJ{F1bc -NFfe@cir5,Э1K;&m 0l &ykƺF ߘZr:Uh 2RX2{LafxW\J5nUm>Z'+#FJQˈUy-J.}:!)ALƊ/I!12(J1jG bkO!WMs{FÃ5BJ٩U50 Fr{Az vspSCg_Zϝ=gt>؃UvPVgrb"IAH"ӽo.G#sFT| U1e4;a5YLs J2T6:KL|$-uUTF뵣,"hg~%^8z` ?CB#$˪N 34;Zq);Z!jW{z P?ɢ9O7F+u\e~#odOh5!g(QmRHGNIJ} ٳЛlH.OtK,ZȲ~Xa8:i $Vć&/xѣ> 5D_cETSiem9M-̛|~m(ҊD2 8 %Љzb:R0!`huBvڡyeB i'_Tw9Ʒ |櫔 a>sGԺ>Pi z˗azӘ=a"C5t"'g1,''G-g E:GӺgٖPYw:h 8C+BP?Pn )|mCyȕ\)쌲d@Ԭ3\dFl䋯.9lBD= ٓh]XNa&8OS73?SScpU<($ʮ=4)JhK̢F0~R.\[~|MEBx}f/^-?1nS3(}Pps w-#jpK99͵Hl@]?TCE$. n`Ѥ"@#]AߝSIOIk r{u@|ƥVR:PnBCiTS;; MN9c]X /5uɵeI@,_?sv2m32Xck9c(* #6<ˀGW$x^Y5lpv6SQetäq!_ 9YKme:i\d͙h~Ii>?+\Ϸcqc; ?<3H,uGu{_fs55S\ eᱞxm }PR\igu7R)!`gD[Jv̙q)E+␛ykm?&rs+AS<#jXC"w=}߬,z]͑ {VKůJYp@Ǹw`Ӝ-|j4va)K^v?o%Eb! !{.M 'QV`h[y$֊3 )+S"I;|3(6Ic<[ B迂+ZcnuRH/ "1W/ߕĞJ F&ǃ(Ǣ ^`mm{-xB /B^^HϦ2s$}j.HX"l"!vSmծl 18@PE|&˟znp'rU6P{t5yS2`T,3Kf`hwB$ =?~Iݬ;}I<>&G26e0u NmN_EI4z/j5DލryM J)Py ^ߤfI}TRscTwyXt&c,27z O76H"k=,;U$H2/˥綍\&E\PڥxN qMgTS2xՎź8uZAήY#)(tO@V [y $t='0~`?j7ƴrhkptL^.:\R'%o 2X1jt;&6ًO\(?y++6X5Z=.בICRdӭ|3\"k-nJ[rZj[sVwb܁nƗA|o?MDLFA&CM\ ~ Z^Z;GxpE(\q+ܸt+WM=d.%M#nŝ{_tqor>itMEb`a*^!Zt729>__Dml>u ]\>7ѱ72 G naB2Dlz"qV[7Œ>ػ )!7DXr‚ȁLUě9gC2B /V->?U+Eӓ/1y*>?,RviFR"2qDyHV2:NKztG]Ã-Vs3Nt״-皰F>VD=e5t( PC 6e=wDc4'KmXU%\Co Ǻs/hh;/Y֣ZꄲAwWqRF! ]vd1 poyZ_X"Bt!Y2t cE- *Ky+Gx!f+Coz/1;Uz9Klp2&˭{ث+?yllL~\8eZa p gՑ{dMrD55Z+fOhgD&\{ǝ0U/l[+3B"VKu$ ,a(Z㲨Mt$>`#"0-9T4G-j ޿oGheU= j?DP9|OjSc;-͐>uff8v_c]r n]l_,`P<6=Ѩi,TGyi뼘7Mf7kp׳[c=CnB2ԋ9,?:p@O=b߰sIrF$!?0ŴQGg/0%&'@ ~IŴӕ` 7|>{AǔUc ʾ8L̅LSWPHv.pa_pM1[rx-qlWu4 xܾIeX(zpVR<^Q3pJgu 0\1|d@}8ک;eKXi3O:-UJwM7)J^+Kc@ݚkD-|Q C!3(74ut:->>)D,zЀg>JO f_d=G{82so[ ڜ?Q-|ٝLhj4.8 D!:q7Hh;BYJe*")D;% oBIk^"" yvz\ăz(\i18vUkF/vg"J% RȆ<`Fʯ532JCN< TM{)z} ֪EldO&Ս龍YwSHMI"mބNT}U*97w|E.ct TN05̡b)tgȺ$ H-b,ČET(P6_I3d&Pb^;WOn#¢w;n)Q^~6ƾrcX<)lKϱ m#6CH4dV@8qQƱL )Fn_ƽi ,lB-_" Ab'/C1~:*tv&(r+h MLÏ]HE99h@ m8Q@TjX/tԽdn+W~zFH~@_iAB&yϯE:κF{tA^w!o삯2x5?7Cu#p r,|t]=9R TqPLS%vгEU(n]&"BeU6>å}|jsGż7c$,F2Σ"mm}}L|6ivoz p-@,V! \ݬ[R㜴}3隟,q o!f ]j$ArwӰk } •'R ]b'[KQ#wڦ( :T6"gM&?J/s `ܜ.de!@~44?@$*0o>b74X00 38$SH%;;8{qS0f|j~ЯETjL+Z$ [tP-(Au?= XQ(!D nueݱU2M`r;guvBdBGrם lCӈva5{먬d!,+{f3K֕llp1f REyCP<7*#2Ӡ-a4t1KWq;tuhb+Mߔڧ72Y+Ô%SY Je^o$*L-x2<GCZF8]~Wd]KOX"""]T'3!W`GRFV')_^jSKBxd~.)S~z]$\~w#Gai}HJ,*`WG:p)׆KL JeaIUǰHv*q(w:/ /Pp{rxPt]a/C_#pK30hAc¹WuTK)%nbJ[rnlb,,Q=w0 o08m&-?P3c;fJo Uz6#)ds5^N]Zrf *Leo.᝘P*"g9c}]OMP > 19JVW䅬n;`|#E}^lOfUFhiVn<^|lw]))84>F&5xNw*.h(?Ttr5ƐErt> %7];qp9E;m6cVdu'.F6r E2wan?[ٹ^.:`ҥpzQ>Yy,{ "3`,d\uq}_t !c|TFOT{tG0Q#oҍZI<׶1b`0pm'I뀎5%Y[e,Yywxz5=}x8P`nTE܎y:US(2tp=P9B;>=<ю$ d[4 ۗh &ŰmYSzB$u U = ?sn/+v,69jQ ^du>6lv/Q{%pRS6‡u&,9vE)e0[gf0ƥmBb+mDtrjQ~8 v{bgEFU TW&6?qwq& dpbQn~y6 ey\'=h>LSJX,\r`Q7ݖͰUY.+u{҇ih6+U--,r%[M.Z7yİ~|g_SыQoBi`;,.@]} 0dc! !$̭Gqr/ ڵWbbmQA8*Mлsnxdw៸3t?WNC54RͮO-VIOk6jRڏ]p/Cyp*Hg! ]zNYљq 1L7cZH ' ]cƒҟxCd.OF5&hk&B~JWQ= }`@~ٮO B{w:f(`2өZo|9:%em <su phfi&Q.5#>>N,RfX4Ł=#'C7U4'א}̨5zCHQ=b]BX4.Q7!(%-;G(ӈ go9 #LBQuB%OB&n$-$ʠ-4"iyHjU 'N:ipJE-RG3 Y2^N:L:}aPγB(On$T'sck{~ܫx]@|?DTS6"?b+^tܠ0^!>W>*SJb& `C 1 ]L!oM{Ϟhd>1/teuvAd0#( =+8m+̕l=*Rȯ{gMq33!粋 p]x{ů HLueȧHYLnchd%xF4?̶el LR#"źv5Q pZDȘNjaX.njRrLgs.vo& L^Q8}mWrNF b_#yǦ0V ) pai2{VLGpzTPɽ7fNH/uuyrij>7hϟ6(2HI Y>Ί=ӿzpmrBtO 7$H~u2tLwS[|mhsr%n䖟-{Gn UIսR ha D ~[u5Yrg1ƺ"=۳,[Nj;=jϢmy# J%jRi%odFONC:cZ lVyM8@#U9N4Y=Kהq=(FNp!S'Ok &ޠec[eo)zZr']sy%+w3; mN}7Ft쳄f5zfIV;{ uлƒ:Kaev==`wvllskn3"RI=谠g9&.ueh,W7OYk`zٍ;Uحi3hs~{hzLjbߝ@?1^WtiZXjQU:]L_ۓsFHRo!ϥ*<:~Voxq! DUIBSt /F|8`g$op~2p hֱj|-YJIIp!gytbt@Z#.k<>AD=yXYگv, uI\渂2Su d@(E/)kHVj!#%p 5էR=Za8'fs*3rx Ί=8 ғ "q~KRC=SMτ%Pl0 k Ȍg*]RD8_ 5a謲‚熖yfQn{~\yg45 mL ;}㑒~F4)/k9+R jεkR1}x#S3/rqfm']Qb~q./ED7g6v%t6IJvdv_T7 >\ɺj] MC+J V "!lh}a9gX'<"æ 8l ԳWXAX5Kxƙf1V_({t5HkOt1!+O9[:!\+TID|Ҋ_rmUH3CA#'BLݗX9xcR f{,^cC..c%@ʑL;5SeB NӁ0yPJSR)8jbxnwX*&V|;XaCqls>~5mqQdGl7%Ur .:qxVCDጛm [4ܒy/sRN壒l09ޑN^ulKŧt-8? gֻbăT--f(i0G< ']E%&QǁN7,k54NlK|WA7}CD<֤47νfö&YZk", uR\^5@_EKhpSaϞFCe%5LRP$3PUЭ`6zd|YVԅiŞ s8C1%>?3CUQ\h"dBv°K/âJ3Zr;(lx^r: hSg8 Ɠ,s|\P12Ԓme.Ә/7/, }3>}8Vp=Ԏs`HJxF.6;}Z НԉRr3u]ґg({w˷LR2ksIOL%C3I#*"H&ߟR1ʅ' 0lxbC#~DŜݘ] }Ģς7/6ffYtd}&89=*|Z$sl-ڊ)h8w5_yCόD[@6aܪ)J }󥑤{Jc [3D`.qۺPpOA'󎲡F&rU?q˽el39ݎacШ],ѵXntg1UĮ1U&>yKNl\y Ks\  g_~>VeKtz5hB#|=*{(}#hvx&1w~5痎ű~za.>&s4rgD%ŒA\r=+iwg&钕7{;ЌN)C&LwвF~yU-%n#i}sPKaEj2h~Pz#*RZ>Qb7E_D`4ZvkrSi<[rJ%!,:g WkaRq5;?xW0TY>Ø*CY!T.bNP,U gs{Iش-;(6lP_^hSB ׬{LĽ)jJH`&qǠߞZ$M ĊF ɶw>vXApxٹoԂzDxIsDQ*Xe<\#]EР;LpqGj3l0"3IOnNN{k_7=2FS&@ڐŸ<"8? xE5TeAX&80s6H_Mt.X+J~EʐV0%/ƱJ5|=4͞ə_X..o:K|l;ҦaO? ?agߚ g!˶(>zNd+.ltn\F_GNh-REIqs¯mfhH䕻,3?{MF v|fi_33~Ҧ7 ˤ6m[mZNn¤cY~>T ooق{t-5-2*9 ⼙<:nV+Gʊ]Gmx"j0gq(;p{4UgU9Csk{0;j_R|_w×VYu;Pڒ3_op"fCM:P#~v SN)w:N1mЃ*J=.9@ܜ=_Z4fnnJאF+./ ݀|KI| TN{lM'PFNFWCUa+O 2JfY%gfOrO<Fy4/~V=k]jI_5Dy).V !> ϝFciF/G=MPq;AbX%qal` Sz1BW@N#HO`]oB\֨?)Ə(r3NghkI$N58\ms2X"Tg74ڄ,ZrSVeEд.e M,RTIZ3,d*|wSiRivOzPxjbЭO_z*?Ю: xy' lh 7tEHGjn!O> pkt[ TOC2{x@~)BL餙{ti RQxʟ,#ئS|+c{)˂"Lž#X<۸EL>N}'_uو ~`'70]8:V],M-ţzvQQ{'fAiZ'R*t,$~l uhT+',\|uĶ8х%8VMcڂʠ vuƭA\jZNlmECLXEsr+ą$Fs%x螊B[e|W#Si}n84&Iz@AfEW}s5[&}@Y~ * ٲAGu|2nQ.m N5ҭ5/9p<4s7pYnºMGU^8M B9XB2L> ǻTb=׳=;!Ql RUc@ŢPt/dwQAa} #H1O@Q-kmo&|WK-@VyB4A>1Q ؐih>pwo…DHFPJ XfsVqOreR-a @`B6(~E#_ȣ4%"nX:nEQ0eӎmїqkW#ی!"I(q Uqܿ&4]oĤk N{* @mJͮ} +[ݪ cY+ߖ\N&E sbn@h/Yvȡ9S4_ a)xE0) =p$"]\YԎI$G3]jjEO+3T I29D^$ڍ5'&kpBŒ ?#$oh蟇qB7l CfϤS PP$-zߥ[;'h5tok+ btWu.RjH*Yq0\U<8Ƥi#ЬhRe){̸6Nr8.hDŽh`roJ)m+^1,M<ɪt׸i9: k鏌N_*N,Ӫ:%>'kKJks#v)k?`cO}6fƸnpFbWa:TF\"W_dl56J[fvbK`xn>67O*xrP ]2U:n=]Br&NA18߁lj5*3s쇓uz Yl5ڄϥ uWˡ#B>{iDAdpHw-n|R]*do=&xḬO'[MarF@3{N)HEi@1X&xNk"-ZRϿ.:,Owט,ʦo GoS5 麰!?cIsB,ٟ[lqØ6(Ic{o Ё O!RzsH4A梛č*@cóYх0ƾ2{]C +!ڹTJNlzuFzLt2\C>=%iP<[?n.6V9=\^};tY +X!ec.O``JhobN7o]D&.=kv}y(v}Nyak78ґmO8Z/"ݗ#&6 vj˖ *ʌ%Ngv^Bz{!K5JޕIȲ)A 'F$[4E(> @A~`?(5<퍅1O]h+$uI!n Y N Ōa9*(P&Ҿcq* o#A.8Čk]֟&d1*.+'?,"J,ꔶ5̘rBᡠ Ryw[I4w8 b-3|?$"#PC̷w< +27*+\ YL*t4g^yWW8)e=2ʡwN+Lyr(ٺykU64Hplya5;9#BR.Ǔd7'}݃ާ| fkq:n-Ys&1a 3ˎXfC;ev U2]h _j>yYyH`-cIH QWX{]/-06/+=z`U:gj3Gt"}1Ps7p:B3_Gܤ0:_c|t]4.BD Q|6 oc&$W?i$K w љHf' əZJPgż{=oFnxt8lr^fQlOa Y@JwNߐE.1畿j+.zM o.d?d _..hje^ATSwH=Jh(N~c `m(Eֱ(P[+F3>͜Q' bUDcܫ).58ʋVH漧fI=[=&%O'vooj''CQRgHuoS\gkh.]"9ޥ2ӹ(?4cYLP fJ ^P607#M.rL^YF]7"ĀVHŒ4`GۭY'UJX}ȴzl.bT~!聍Lvߞ JPwrALC>dp+76\Dg,QBf6dGb}I[%IwҔev}89!΁Osb>,Oz2]_H!ДwK…_6pN^P;IF;P%RA17G`Yd J `^>QHhđXߤ3;=`(ggٿV^g H CNuTB "-1jDp&䚫B Z(N׺*`ɕ=>!1Z}yy}֪f{lnbJMZ,yxh{/nɹa փtW*Ơ[3`j̜Bo: ձ@1 K:/ in+@U(O*=-ԶU/]}nB5Ǟ"{ X zjV)[w bu&Nn=MU娢$GAvwxB M7PC%e \&A#e1W*DZWrֶSVCp E6ܻ _Y j+Z'[<Q俛C_IaWmwzgS&4|pɏnm'CeU-YPi/v$\̉E B)Lp3P>-}T4V!s(.$U* rM-M3вp/R2ۤH+(@Q ؝Ez!I&5װ8}R?3aR4;dCjmtIVJ: T*m?[w+Lp!!fۂJ jāWf_&<4"$rKAV#/* ?۫˘aԧ˷ 6 }+Rclqrhl ܷ4}VQbҀ 鑪+.R~([2W~gM_{#-!A_ "@(W2+$Ƃ9aW̬c r׍9V&nS)Rx;f]f)w,IJD+G^W#Z?F,"]^?>0ض18=D=&Τ(A7;.qXvؕL&7jzHU*4͛!KҎ^v`@0i0t$O#H(">q؈{+}`MwU)_y~Vj ̙,(G,iI#,[n_q` ~QXfd:Q݆E P͏۴S}xih3K ./+BÕy[L3Ɲ>|*?~IՊ57Ó{=>e}EشMQO2Z۞R e猥co=8z,٨7s~[X8ZLf|RA.zk' B20. ,f{ ]?<:t0 PHeM-ٲnIgRiɇ4yC+W?l7~}Q6,N^8bcF8F apZ|sȚ):_a/_@C\NPn$H0GCb0}V-Ǎ-)CQ%Qi9_MJM✲<2}.;XDU& :IZB`: \sg2e JX-.ܒΌz]vB,z-#gd7Y+0P1 [^!79>I4e.h9+=/'GY u_{Zc@|D5c#=:1\<8Si1.M}ǭz#J=q bG{S# yۭ5BL\MN&N; ܖ}hiۼ#þ M 9*4-Jt*nۆٲ{X1Ǽtjwe!/*KY3w7XZCI5 iFsD0ϑLp-5 J9PvK [0c*Y }cm4xU cSj>w ! m'X)Ոlt: m"&O_Ţo`S`(|%@UլLJb Pཤ=vžt4W ;d?RUz}m"FJ@7GF:1PЛhfx']^ "J~9nz@ch2޲vJB^AԈFUU}+w*PA{4+LU OQKߕ :*P7.#?OڻEaW1g!R?K$X"υ5 9@0o :%#']%$Ov9:Q=rcE79kI\b5}!Q&sFv'8T ;$gAAh[X*d"t'֋B$MY`iA +2G~^f1 ٪=+k*Ptd_E q@ŪCR <7:+jiSRRL ߫+?vRҠ0jѨB\Mh52_R96n7svFm }UP n%FpN#s]WHPcR4}&ӳVk5ghH2S)z[^wTEc{h2dQ`㧰d28`e@J]wwe7` WC,9KS8#?,2UY94W%4/@~lYTqcrrsk-e =3"8ۨI_{:Txt뤖gԁܖŵBd |UF v|%%du$ տL SJDϊ['u2KF~,1>,Z}Fl:}T!WIK= !}!< &{ZPg2:mtPnsc/ 4r!QvC ddVNB&L'L6B_75IEөC&H[qbM/2Sx u1-pZln&VESr@_wbf$laՕP,)p_N @O ĪŁ' #WBs%9pQWS5'yԻ߻ r<=i~0 8z8Z~H4o,ECno$>gz㟾P>Y.@V#l|[{Р{Z͑*f J!zԾڿly=X;h*Cu!n}[s',Uz.ˇ( P+s꺫e5EU445N.z)@lioc28ʧLsein nfh 1W@<&+Yz<+΀n4V=w?PEkG^BjmC\k 87( ߹fwXi/ Ra;;le'B T8~$D)g D0aܢ}aٸ覊Ck,UED$ҙoS9'|ہ9u"1`oD{{.VQ@E(#t|V)];!/ \/t)YBP%%P j_#W(*~`?3-|'dLd[S&ʬv0,6@h(6 @eΩg鵄 f4?A F nLLec+7a6E +S`ӯE`w!?FgF׶:ȣx r(Y3BV+3kLY2^EL%Jlm ٶ g7ws8ݸ>; M9o7Hn|'[DLK^xσ'믫K9̈́pY5Nbt3|Įl㦬o(:rmm>~9Wb+( }GUl0{80K8[>#]_&C"YOgZ4l^A Mt@$STϖb4P+6=.! _*d37]r>Nl5%6:J!Ohh\;g3 Fu-ĉQaR# bʒr$}F!g.F"ZyvIJ/"i7`X3uw!tyEGKLGg?*̾1tdJ{aqXǂQ$$KFdgYm&W\=r9גEqsVᯚ>%J)`pq5QNj#QzjSlp vÃCqm%_=$n} 1K7Bp^)}315+h@=0m22MYT>#NBtP኿&&7l:xue-L5S&9 QsG@].iI?:/L/IB'Ih9"br8 ; @""r8 LyLS;1!z :Qw'F@SON ynY7D^ o<]dhi>rvF˽oBQV'@O 7t)79?˹6a $BJR]5T459 v2w $Y }O˖Qikq*uTF7Zb+Gt% 8*ռn;^ ?XuP>\w`݊aFcR^FL-:kj#nj2m#d)`m3["OP_h`8R_'DAvTfzOYEZقJm?aa+ .Ԡo Crw@ \u*(0>OҿO㫜=5. ʦN*>[3&5wig[Ϸ#ÝsVљ:eE'cU+|Ulv%G%C_`ֿNb+ *yx=/(llar&kqC0ZP۬gM[OS,Zb ANBW0$P* 6Z3!SVL-oK)ϱ ۂ&2t*]zPvu}{G6H"G~ߍ~d Ѹw+ 2piX&J#N zx+y=݇ۇwl $F-GYBf:v<)񆳗z[ +eN2(܁.d;Ⱦྊc|FoSхgM^UNmXΨ]%?Ā+ܲ,ݣxJub:Ϗē;4^afxhS,h;&?P*^]$2rY$o3Hի*Ї!Q*@ɬwD*~$d/HV3aMkyꇋN%hb\O!f=zH%։XcFZ{ތunK)t GXL-m}h$n;%;ym˾"C16J+ZUsnX/R뎘Ơ7:U/HL[" Ҿl]f.~K}/[q z-7n֠)}}'|@תZ #~q[t?` \_L=;>v;SN"m?UX^R&2A<}K= aRB$L^FRݐƠ(yH5[)\~MpEKm7h薫=R\=@9ۉφLLX!"E1LSzL1Ǟj]H&ѕ%"R#3L>P[YL _@49f|AX$EJ0:ՎEdSp]rJ}1[M6; E5: ceZ P^ÒcV>6PO2LV aNtmݟ5껉x'R[,JؼfA!(zgUCth+`Be IhB}?*X$ח+v;~V:ބ(TrĘ;sIIi?_Rʹ.4HgʱG?< !0߬h:3/*?Uiڴ;~66b'Eis8̣F+\F/@^赎(YEvAg0HExY"hd| ⵱+ݿHHiq`Y|S>,#@%MՋ:y/]3sn [e71?&||4SO4 z|ec,E95M "X#m<yǣ ƀ--BV3|̃kSb0\Ȉc?nNyx;<>s@Rw`(] 4MH]q"] j!joͳ^#/2pPTQ"+`%LOQX6×ajĐ_MК Y$+䉛u{Hp}Lq#'=/eL 6[K!g*Z} {W+?COMLcwNR"-~b-o1P6=HpI߱V67 \Ȳm[;, /ܟB͌QNI`hRƓ(OZ2wlx'S%-\Hl,/' xU,s͖{&1oYK˭3cg Eƌs)3jmVt.OB $YL{w'<` G.p2;zԔ ,uI:Sƹ\oc_)Vzs<u`-ccZBJzK jSƥMms[z/N ״tز'*ѻJܥ):BԼ`tx68P=){o(&-12< П{USI1>=/mkW˟P44Cm]Fwz\ 8N{j{CH@]7Y;)/Y|&OsiM!}޼Qګd f6n2 %ȝG< I؟5鋗D3' m۹HzTl7a3t(FCm/y}s2Zɦq>Ȑ2)E~#$ѻ "` (Gtd]2<<$,:bՑ94rPrDvh@hJ$FP~*1C_@N7.IZ[ u#묥s\XvGnA?t ef\1tR_PP={lj]$Tcۜi -f0Z&c/8Kv|`cw?%2r{h ۷o74l|{hWm%{eޟY} ߡü{BR7AR<g$z)!iE$֡EVWnۈ +Y[|E {}d?dehݘz̡PtG^S7yɚ\V)(E GdkeqCҡH$hSҷ+2^dGݑH!v|a zD+N¿vݶ5pZ Q~z6WTiẕl.J闞urEEl1ub:ted j2HH13 ~o{c$P3Ҥ xf&5(/ݯ@grFT6_,\ zN ,C(5ѶR<\h2v -fjUN[I)wJ&64?^PѕP+\B:#`^*TS$xJᐣ]j[^foHx=lxb~l^~$k!:Ῐ ZRʬv pf ;!KUIQF+5-V3[bJΟ@T:,ɒKq s_m g<-ۭTiE')j%zw };֪HC=UL[%~s1ٌ?@FIٿ(龾4E2eR8%ji>rpbNsєUue)UQP.߂^5Y0.;p9ͬe?Q߹vx?Ov 'K8ǣs((,&KP?[h#}FR4']`㵀zfF;FF.`O2,C?I|e[ hyOm"GڃsW7-KbKKJcbsڵ,ZCSUa;V30;J_Wfz;3%' z## 4cb)mWoKj IA{v0ZrS)gt ~Gm 6w&ߦHIي62nꉯR`փ?4rk$h7= ˴^HB~?j$W {% p=SNPҼ&\ 59k=%?F{TwqCMq' 39F`ibzz *Ti0 h%P'պ(G(zlrA[FDc2׎E0PifUx0Vd哸+\ƶl?O`#ޯ {Á 9GS$Sb-*)Fc{_A%=p94 C딏Br}çd^;nr.>>wj&I`?ilX*[-]lxӰfט&v%it%UL(;gCB̈nzIBǭ~Q"hȑW kb5F"10"b+@MoR̄jwPe>i<2r&W6Nw2A]A[i/tBfLrktNbnXq*Io~_(MkkyLp&?cfJ6୴Ep`S"dUB %PLǸ ʋT8߽NHY8ARX"kgDN gk͊~C!iOX'p_ue'{d /| V#1캰Aٰԣ܏ Gtu^aUϫ=hԻc;vbA9Fx Dj%WƷ{8l g2OD8xGCg[M$LOL}[M2bDxq5 nl,fo_My3`(p _bXvP "{Pع9#Y4g/ĺ~{:%Eעۺ?P`$R=YQLJЛ;r{ly[O\ԎeÐ/"\kȡHlN9(oH(>дx.@+\W𣺪 Y5Hbbakx OEjAG` 5P =]('+:uzR/8։3xggwQ|Z%pվcmjܰ//?pBdo> P&QEyCr%ЛQڦPDbn\;P3%+?FXR;o$wCk ь]Htau҇fmDH51_`y$V^F0Nx6#Id%j_/l9cpbKhQQ ٧&=zYpH&xaLa1%V`e/ ~6ʚ@Y+F2 jwE((8hwʔ274:k(RG a8ԦV}w ¹$<>|J g[NvQWfL`>Waډ _3W q H_nc`eX~ϒLC8V* gy5?{ \Sb=`xW3It(vF%1h`YB\Ld]$)CR+su :{"G3\#Mx//f!ߙ*wCŊ$UHܶ_5ֻk0KdY 1byM)qGoJ^utLWVbꇻ^:nKYQĻgF*=B{oc7F8OrOYu=ƶ[dR:@'!_Qk*qsxHIDQ" 'r!~)pX qrBLW9VU+kĖ1ѺXhW9:W#_LցƦWwӿZ{WdG\;V NƁ1<8b._#`fl歛gP:gsVT0]B*OӚv9AK!7^1$HCd;n)BmDT{hWAZ5l tOy #ح'OҰkMDZntw OF(\-A5P۹eS dhN?~~yʣH@$#uXs6 @P;&3_?Sg̉#Z@T|Cw̾ _r_n8–u9/s9n 4#Lƴ5LUK@'+I lU$=QPc:r)8͘@P--?ɡv~OS>mPa: XR+]h60|3M򞺷x\)7a?ym]c Lo1)Z_7liPr4J\0U(?VjSW5m%fXpP`6 X_ 'G" v8b&s6J{^(*wKy{$iZlߡ΢gAE @3w[(8,anV-9),* g$ a|S>JౘO<<:"t/6u[ < lZmQ MdQ1*9B[*ɑadBcS2uP]mnZGWDE)WA\Ցr/yc*:.NE ɅĴ᝟}S.<{Rz tI|aG*bQyt!\8 ڌ.J5zi]LD:{nT 6k]9TG D2URÁ!kgWyBEyk`O 2d*(%Hؿq  ލ!8Gcp[ksg..m*QL1+ʐ=_ H=%kuK[R%cMPSV8| CDͨ6wy/Y&gagଇGv袕Pʝ͌vHB~?:R^+N p"u6gX8芊KOTCy^ ^-~ا|MLOcԘ^*3E<Ñ)06c5{Ի[=ϊbt–|鳃8Żʎ&xUwq5o'LR^U"sBBvwe^wt3q'lV-#g  YC`e[JZȓQɐ^Kci׆ߊ[{H@jr➍RԺP݆R7jݪ`efQDEl{?AB},zʙ?B:\FRS;rJ%De_+ĞYmrDX>!J {SmǶz&˃dŶ2?AX!l[)sl7[gcɛ9\U!ZkzJzYBf[UV+h'iUFKd>8y <} $_A"p=Uqe*R7tN5GgqFkD[՟_!}s勇\w mrv>~ٱnYM"&!rQ6ω!$* (eCbm#I"%hrLP($WTQ4DI4ԗ 柭"WiSbh^zeodOx=;LK1-H)$x %{Ҿ>;~y: ~4_~A'1Gq(|)¡gv`9 qzFnZb5Pz$EּV=tV& %蟥7=ChceX%ia1@8t6ngvIちͫ6v[De:coLy{~@:dαC V1~eнc@}.l 6an &.H˸RI_iS &U%TP?~aA0dʸG8rv޹եq~^Zn&gl0R99P*9J0 fXX_:ȑ>N:^%cSyH6mZ*4 ˩KwMX:*ŵsNSҌvԂ kDoP='ubj3ʢw$0cx`~)? iF{f!ːIK 8_j/{i+IAD,U(Vm@լ_O&( Jϒm@DŽ:ݍZj&M#(-@)q9]%v E:O&Uq`gYDZ]򿫺2>+I7z*VQ{>[n?R/;w2{!4omD VĢhg7 Y b}Qݏr$SOTl-jV-/oy+r?`¶_wf; "I]1;I6׫y _J~UeIT[ZT g e]|!)rJX8tͭ!@e\*`ej?GbV4l'aC5s+t/n^zc- g DPY?B-6"Q1E78Umk+nK}zTD+bAXrn0h5Zm9/YU򅕖.o !m1ōҽSW&k\80\88X3؏a,(Yp?)$煘ۊHwixݞϻSt\USI>4e5$9OE"=}}XuΛܯxH|@}^v,/9SӣmܡFnĎ5J>/b!ՉvJlfZؙm|m Iu"8U܅',J+kpöBa@|bnYM,[Vs⽦FY"Ig40*6VخAQpO$3J%#=bj\]ן#Tႂsi[ŲgMy}Yh-E{Tɬ{{-mit1CN]a]C 0Q/JJ*^t}zkt7-ojaHZ+5f\027U@ϰO~~F:nՄ9=l9؀R{,j<6+!^KIFks|r,NtEt 2aﴈW=" pQvhb GRQ89SIF=FgY=&seڃ:vȷT*|\(2 &@o.ړ)/_|rDQ8F]2sm]w=w |HLV:mp[{$HIE\w 9j쵸 ?bЉHp7Y `p ]זe*\Vg?v@8\}/0,ۻ uW w4U}dPtl>S rsNtKkS 0`-pr0]6>q.j }FGki Zٲ/&2<[bwm&M@8GoL{猖>F4#kI݃\Z"8j?ich9{sm D7zc<:oL1hO: #p<5R& ZF!qqud TWVɡs)3d9]yXL|NiŌ J3-5X53ֽ ٴ&:\z93Md&zFEau+5zb%AC` 0I܉ZiݏK BT_:=. *ѪtSi]f2FǦ[ۄ\?(4xL¬mүo~,pLR*{24Q,wBNcv63X w > ֺDD}AGkm;/SLқ@yhjHvH|Xuqz˷F` /BB6{$ZXV-踳pm:^s{ -ڇύoSLЦc\nTm`eI󌂔e- "K@I)Oh-L~Hd/m*|$R-86Ǝ´Ziғi3y([Jk 6}}E~CmL4Q1#츭hq@-:yA/1`*-Qet8k{`EԾ \ tVmvb%u anv\=Z5pvp`8bKF^ @Ei\= 0hY[Hɼݓ*n~%".MIVxSdN+kCDTGFڭɨBL=jQa,] \(ed` EZ0 ºƄolG,5R#FD^rnDwnb"-jP7^>W>&v}"jy14u'h ay&5IYF-G/p"]=npTp+mU_Ȑ-;߳3UB}Z0^Dr*A< _ 𱗵 ҲPyչECIN *",6Yf_ |ޚj;cX*9/KA15Gw y\LDY]H߲W(W)U'rTZdZGoc> .f(wC4:_ B(:Όqp٭UJ!,x*,;r4#Y8!ekm(0h <I:jdUi9{ф. ~k}HqCoOJڋ Iv]"B C`.hxT1B,߱_yةB1>Q/mj#1v_jBW9X9`Ada (u_o _dwsFE;K7b=b -;G_y{ bTEo}˸-/s DOC8]=0u65,:B 0 r6`5P-ֵ%xƃHyK^bm'+ rޣVI)_>{Z+ܽ凶(㈚,'R*Γ^iU4L;bc)K(WL>Vc]$pqNL (6z|.KZ 4>tBzW%ar2<*ݪ9~r1F26f8XoaGXް-56qB= mј $E%BŃC.I蛜hai)ʫn4!5콶 {+Bk_Q!^P~xo}ˮSK wSsYA:Z ²-G6$E:\F?)d"oS-pē[?^[Ou*tUYIV.ٽ׎ڪy^ >[(qq6Z꿪y=IT30A+IG΋X'6 .]%])G^=Q; d~2LﲦuK;pVlmC360FueJ.v-XN^u>gqI)FiW%"E~YluڱquJ1d?^șREԥ~*359,QhUu#8*e*+i QSvRҀMɊ0o}(̡*f6(S a`9+>Khe[W?Fq֐I`U1P;T* J`Ag~KK p, "j:z;H JOF(CZA;/+FtSsr,W}6>Ǒnȱƛŵen8/ǪSpȓwiŖmd_Fi\Im(%8db$쉂r9i189R`Cy'۾wA}Ӓ8 j~4)цD͡µ'R1iYe'T7P?<䨸GmZ3N%NSnzГ%fw#j.Cc JVUE/#j O8)\f|7Я$$=ht| zڮ2T#ϊ0( ]Y)zK 0Nr_-H2:GU+)VI[RnG*?䙌%P kDpeI1 Bk{_~N&w89%gKAl=y5/e!0'%'*OYBթp"Y6*̇maS"m[6LاȋFŠ1߼ύFW6tZVQJq LH1lc/Dq^j$Y`⁇J9V6(rL\CYjw:?w8vss0b+5-y6"|pS|mc116jHw4lqoc =”XI]JGep5iˤ(ߪ_2U_/|M}gr $*@f6aNu}=O%-bA|17@p_G IZp"0VGUԖ"j*X5V~1u'sdmTbxlvZd˸z-v•\k4{kD$GgV0 <|BP6ԱYt4k$Dc\l+.QYpŻ\w";*Z1ݾ6Y^&)G#<_{zN,pŘ6+dd}p;oo)WJ+Ce SY%Rng- *[]FK@cXR'DKtS 07׺_M,љ‹%ap=}rمfaN&&՞:O07!jz.qc}KCʅCxIrмWqDtΜ;}ք[z〹nଇw䩛gw&BkT(ՋpX>܃*&Ւ5Ya%]˃2ݬ*xbպ\Zu$gh,o+|1"dG!JGFX2XB)w1{hg,DASHNAiDGuI=1rU | ;LRG[e\G">Mv&"l쟓φvq"Bz!t[Ζf-4bM?hLz;UG{} 3udf3KW-e@díyzb0S-X gt|S hG/t[AāzjV7 %^PP[~\l{Y:I1ŝu-?zZ=aV>J }W~{$)6Oę!*i{hboWyBwFZ>%X Ls@_kcyvlTOrQ @=5=yMBYL,: /HnWg{q]yѩT<Ȥ(^bfÚ@̂lB&mzl`ve^قڒ~^E?/ڰƒ)-uS88n?Gη{᧤B֨%(+؀m>i9;ܠ#Züj*d6^?Bخ;#N.ff4y|47Whhsi"D+|ިֲ_X99A˛I=շ lݻ_CW;tR7jO+8X"~ɫc~>*݈|g#scs}qN!s}Z|-3 pSA/KU~<}v<0ߟ DPQA&d<7fUS' [(Wv[/V|s8ZC8s ]#t?䉛WL lIMjMh:yjӗ/lFN`sN-~O%"'kJJPU4n?Xw`hYQ^[J$: \Q2W&ú&`u$^e^B: ~/h+GQ"d 섶ND~k)=r7_:Bwx&$hLهrS#2Tp(x5(i% ʍҧid6"}_thjtp*ϙPt)#CBBv Vk%3}޺蓑`*ּ5n){P:84`!ZDYQ`yHa416 YOo>w*ע%Vg7"?^E7DdxCX0YwlU|=>:䄱t49!KoN5]|V=r~mg]ذz:dEkGm?x:[ߢm.P٩a?`&-Ygl,y#qZoW)k9uUD{b/͠")#(7AU2 R[I%p& 1gYokcH_Ix\F"f9G;d`ZZLYiəa tA/y&[UzA*}֜hMF; j]K 4C" }'FIAQQ5@RR9=- @:~3U)P) !H4UQ2 ,>CmiSIa^YDji[İN u8e;BݸOw;IQzz"&[&~m ! ':1 ah[AAD4QaeumŹ%]w|m9, ٭! -w6~Î1y9rJJ '9߇ZqL(g 徠 n)o-f_t>N3Uif3׻kO ; tϰRÉV9D؃![e`GneadȂ.S>GPaYǃhK6KKם, h"Ȉg#aL(wuΕLTrMjދQ7j ҕeLMl;b*b^^0ZmR䑔' ̘$m{eRnȥ-6 z8eb?hЃ 0-qT_[S92Vq"'Qox[$${Z╌wP~slbW()LV[Oxw(J msz`!@`!K${u# edHQљW{5/ߒxc3.kȱ"@rSN,WD`.vn2_ORȳR*T%lIJl&tæǗae~f2XYU {@U,\xx6hGw8Y%\ɶ88IaпC]{`@ȓ`Ucz\o] Aq"m);aL)n'ZZ=yzz%.q6ao d"0am^RjΗV("vvYi`Fܐ!x2}J29UmUsF6J)Q49ӕ8~͜܅m]0Y(ȌS[,J/cj6N uHog{ԍ}c!z۬Ҝ|TIß>UF"=侇*\ &[ a8ɉUrQb'_3Ek<3kV>7Nk]VDA7d@lL ggQ̀b]*,r/hVƓe4iXYWyj",RwqLug{3(wr5սsUq4/kcFو|#*QUuvnA),\ TGxܡ";AY˒֛ ?pSBzAa>f{_ x:Cԇu(x_<,4pK:s= 2:yГg,cn Bf%J*K 9\:b0 k-GӑzoWkЎݬS+CB]_|&Smy 8|h?>iII V.i q'Y>GخK?%B ;RɸlXgXj.k[;Yp^'{K:][f^gh "jRa* 'U*%qD#EuMGW֢A3 hK`۟š`| pC7#2J8Jm nR۪KJRsf"Dv m޵gG[NzXl39pyKh;WU̻_HXnxcّo(%09x@ytFxQz ԰2;+?Ǯ^wcr{=Bكu[c/!/܉pC8ؕԕ$o<9\oa4BEѭU˕ls(,o6T1źɐ"4UwQpPkOGf6lL*4t}]+x"2[4V6KLwE|;p)5VNo5Vq⇟NImKu`spUA|CC4!ʉ 4H$"gav/̵YgkPC}yx|pȞBLNI[xGI$ Y< f`JT&6Zgϥз'f]9J]Xv>:}6uhR4ryHMg\A'd G#]\O wG}HiF[^~ f3SװT@.YP;M4wڪ4$P# *" haP`7ћ|0jWHeU7铈8 z=f;DSWECksE<k~vڪAxGI*EDJz7Fa/Cwӷ'w@ZU^6ߘ}./pKXU9;Sbt[Z;=ĝW `2Lf&@ .mM>)VR饭$@w"癟(qT ?[T#| ӧ\`Oi;%RQk EXb=#KH.{duEH[|EDqqd-=u2c{/COQ;Dd2\o-X!HMquk;DS.ܤ4$vRVoM[q wzt(Tu @c4S?Jr1 ͖1P;M/+Ǖ S9 3m֖Ǥn2-!'iRLaD\la6`Ȯ6Xs{ue~( :jUr5Y0ȧS=v2tңiVÇޔ1gN$a"|y}5]/>Qk %abw\ %A (4{*[ p)iӚT:EEmbl" ^}1l:- !ӁNMY5,Å#Wjj# LBMNJ !LT Li9u=!M+77c aOEü)$YIONhd5Qwbxc:. y`nA õyVA?y *}ce/foYjo)Q\,ڇja˨6bCy*2`C)a~ 97t,F$߫G*)FOyWV&!M/ CD[S0ZVJhDiԏr!e +el/2=F:Y?ᱦA#K W< e9a7eȭZ?/}o|>32D  vt Y$ {nXC ]ᕊv?^"7 >Y_87| 4=XMsF}:48}v$4aj"M@h54xKkfm%ʕM2'/ ]Ff: n87ۋk}"JSVc?9W (Y57Fb >_~D1d~]f-I j4;p\p# C#3f/[傻 _k)gX @|eŽߕf%ﶣ}˻xbQȀIJ˒ARX:vgfuNek_9 q̙cC>:O/&ImX&V߰ewi*s1!4UtBnsZ81ɢRĘa"M/:! >Ѭ`/+2E;Qpϊ 7/2D,!-WOJ0:yj7LJ( ?ǣEce9AT]}<@ ː$USsuж7aT2\Qʹ/0٨HE3`=CϠݗޑPNĿoS_@ dHdPA1r ZjJ /{-W܄A9ݾA1m{9Jg)1EFV>l?nE~n{RZsy k!=Wo$ꮕe9B3~ۈرEd '] Af˙b#Jі1/Ok6+Hi mZʺF=%Ok> 2AE17HĖO <.ȧ~C^U'88+\!@8M_ &W8qSaFƃԂR'gǀ!D1dxgJ /2QS(A{b`-桎-;W*H6)]LJ)*^nsKٔgY"Ms)<0Ďw[ Ox 9Mgs'5\TC x]"Ògb,,T*dJn(:疇}Q*a!u f~PfD%90%f;  _+jb/} )*GxU.8Sxv0TE7nEW]ICf|51\fZ&y.N;vs)b2).<uL ^4Cdz@^a}u*J۽f3J%Q*=նFrZщ&G0?\"35uY:~bh{5οzP6˒zXs%$.KPOi/^˫ڈ@.ޮVcBf YX*qg@yx-I"1=u3\SXDldbjhv'@ieq8q 5x9Q k3ƒ3c`?t2r x:9j! Mi~?5g@ O5YAIc8YuTIceP*_233c ~Ex՜ZV:Ek@-|7'$D*Ig AHNۋ!Id |NPcߑCa%Zzx 5h6HlOS,*^Bt>øGh H!7jZ83\?Qf" /&J 3Iv~#qM\I=?O3ckT{'Z'"W[X\LI>f*ևꒈ˰]Ut! 1Bʡ\') }iZx6R#;7il)=j2P^܊a PbBʧKg3QAmvq򲱰B؍H ޻cG"^vnC~ݸޣ#a7  1k em${ƚf,tǖ E]>J~JE![}'c!9Υv+rNoҸK3"Fb`l @LRqs l%WPJ߈4 ۇBi̭"YbEVPWrNΚ\icHI"(E5 \$,!HI+0$m}'Z ! ^sW6bsFsgD.~h:m *ZFݰ>_LRӨ6GGVWO H`s4v:Y69 + z] >+x=x>o/Rq֛@B%lYUgcRP[g$ס҉*rR\M%d9F); #ieXZvtnsΓC9^Hh[C~@0ѡ;cV@},6"z%EV-FqSue&cyLv֨ébwuI"*U^(e gJ(&:NU/=oW1VN."dʛ.3Wf+in"Y߰r1ci4&ٯ.Fg ?j 3(V? Mz?3EO )`(PJ(sF3?׽ma^-G*v9VVΏ2Ȝhc|u 0NyiDs,PtNop%iOP4k=ܢ^/4dp۵R˯wˡ=#RxdH];ͺÒ?wqp9`y##G?u WBHrGP{o #q\U];3&Msgi./Ւy)h`J|EgU =m e`n>m  >XcEi.D5Vm8Z' .HֈDh&e3iDm^|O.Bn4]Yd0~F5Ygtq$Ғ el?">o]sMD d/HxMC!,:wa hȐF]6oqsjlOvK vj{9dA;9**E("РUB/UP+eN[xd- 0_<['W+!9WaC&`+S6qV_Fr>ur/|;6,:$-u Bˉ`;.sO ]G|v+I;!~bFKҕm["C"#{#GwI/8cn??7S+0Ȭ* ڄ21 ԽO}Zb(p ^ҥ6b] mLhkL[n8R֕j#J}/b}|{ە4>nb\18ÈkKƅPʷݷ3˰AYHyi(i$YOkkjʑ I$  > LAx~ eBĢxHwRfb5KH?845wDi|&X׍a1W86IUaM1 `:#+ @_=„\튦 (Jkt'& <l$k%G[yBP#]b~?q;'j۰>gvQt"~ *C?aa:I6,@z )"EF#2K "'uw7GJFZk Z[wplYk0C?u$^v%;M8dQ,v<2O\>Lƶ+;_~R@ 3;ݎr/|vMcH0;̠T+Oevqs3&0a9!?SxhD=T.J<>6}kFfE^Aݚ(.HzwW~|GdI^p1]Z7RLu$16)-b㰈OigRJgsDWf}'&eHOfI29:þi{hկ9.wGͱ\ߋ,p'jRX5^< j5#`y!&ybd|s=ַ-bODi^{2dhjd`vXrD|U0U$[šccv%PB~v00 P&l*Dŏ Lv-F.SCD1)wW"Yo:(PhƠxQvbiQ &c<ǃI_a%&/q2 Z.`ܞݧpq:QmCƩisz3 ER2մf^)-X 9j=G؊^M-X6 Ve;)2=fgO89e?\T1K \{u0kaT!&9#Qn5/2BLP N%(4+~pyP->Y=)9UB*Mˡ\(8Kҭ6i2[€fG_$y⍖M̿f^܋1!ѥ`;PpF%|-;33μʖ[ ypGY^[793@G˺uP`̑7 p 8HhWթ r %xG[Z0g1-(Lo!ᤱ ݊E;GpŬ W &0"6~Z5VK[8FK^x-j`.TWP$x \3r78vn؂ ?*H:gu4Z-tdo"l0umwybv`n9<.A=[ňBO~a*hhzGu]Ru%D#FÆm`"G,c 3T?O^K3 ?xwCr&FKJ;YK g˥3q0b}\Vym+bNܼ<1_=|Y]X!תᛋo{VF|7>!R-TBHk53k(fa0y'9&"~\mW7#ЩfCΊoaDȪdOoby2pmܾ Xp?`Hu w%7E4F6蟞8=DӍb^Jgxˊ i]N6HiOup5OlIx5J4ӅD}_lvX -4' /ϖ׋u8et4Vhs1ZK=6( dJ$= '7x !k>YVxEruy>k?cg78lwL?쮕6Rzo,#z!7Rһ*1 4349TЪY#}ݼ ƃl4Lh}bz zGҡ=ஊj`X:jM)-o[ c\aX\tVT@tP3(t",kAs&/ա^/?eI֠Fҥ?C5ߑX>v}) Wߑ5͚lV;A>{+&l88 PhN] u, !lqQHS}&DƌOzO$PL`g@{"r/ x4G .\46nm}ͻPW"9$* ;=mmTg+ۡakLHj6%m5G'hc\'s'Rp[?CQp4qAx{ግVJDПY5aM錄4,T /_7qϷJ9~Ԥ~iPj)#a|QsU8P?U{9W8Di+ L4u5k n&Uu M}|-lFٞLȹN_E:xK&8 L\hmY%0%CDANKoORͱ[b'"KF/w?sW K( cOV6uX\M@uט/of U@K§>).r Q&G^'^by>QbI'S빚޴"lEo`[rE@ iՈJÿBbxI>[+w{at+fS'mEo;ëqWDs}[gI7NTbt*7!Rv_lkM<G(/kA@|Hxy<$/Zem0Q(aD=87/ČB% 8 UˢuxtTƤUnT;퓑G\xUүAKQ^&gq79lTPn3Z]w/yg_B' i/΍˷ ^Fy+j %yDw2eGY T[bs~( cto{%dO=35: {+/ƍttڟ)-~e"<" u]x+'3u8OfEǧv2)ʐ.[\l<H_BCe*&rhv_^5N<쉿\knrԭbNXgY'{Q$Gg976wJsh_L,7ڑn/8u J> 7j!D]|hWy! v v= ST`,o%_2WTPu8>).αG\K >fkn%hh \~jIVPhA]oxU 3Ga(wx0ϲ_OluPP q*'V-Ri7VQP1ᕤd&%\%IRā(L49db3?@`|~Ģ)gj1YX+xϒM"Wd{K8ܘ~V5# _]\ o 鶼#**ۅzd$Bՠ)Tp^=KNLT- |^@m.12Y ׈=M׀tr2"lTtgD@f)i-?MWH:dn n17ҦSh1$߈Loxà =~:oz`mm? +޷Ǔ >Z .ru 6V9hvd/,hEP@`:=i6!qFꣂLGMz[AʹCeQ!A$1I\(!xw2O)o"G;;Iy!F#ŀ88UZP]^]zkm&a+[s5~nٹKIbt rɗY!7@ zK<+9k4WGQ6% rQc"Y{،ep4N~ ~ǷOi/g_Õ':inGo)oOs7gFeItOu*&#WΝHhA7ؠ1^+I6Y4[Kd)Qjd`.kѥ3{#<48 بˋey@~S%1|͚Z*/'_XFPMC: _=KƟa,d2$v+\/Y,JB&N }kR'.(!Db3Yp*^.Sze@B% lt/NuEUe۫$% ȥ-5}9֒۲<]{ F&!" s3K-)xE$sSaXd2n;n4!ȢkY7z EZ]7طTՎ)j=bfΐ%J۪d 8xˋߐ*I_=<LJBsgԌZJL;5%,՚\?HCT"V@tj_ڶ ^r| "g;u~[mݪ y㷯O-[*t;'w(-Ug 6^c7Ye-MB8eʮDi^#](8;vNHq,Z 5Yi2wE@$/` ]掷M8obt=B LAr~]s)6LJ(c{-mZc*sڹ__KӚr:e&&d!O ¹ 6ϝCVQb'сQ7D J95VܖEテ8ncJ'H7*Z7Ř gpTOnv㼝[q\e[LlSh2Tύ/oAxk'#Q4E{o!;{k w#:8:m5Nq ntͻ]^O(nE1Qў)JjKS7rg`_ 8pRP~蘼/Blh]y@($߻[11BUУ^ jV cf, L;,7"^\u8_|QX lT͒|>N? Y%7Ѷr^9г~'ئzQ)l^қ\2ԏȘ͉NTx)?:(Wot&~%fMCnOYR?_=R}b)U|?lDAw^=xƽ9rZn-gZfIƑEf9͋tDkXG{'TDdx+y?oVLRȵf0=+C%;*иMm!+0yM(Y!FXNxPJX9ťr~%Wad!K4Tnpw_aJpY [lDBk. +Cl c&vdKvQ 8e[F 8g&x>dg-otض7q+hb_|^*=&o+o#u} b˭m}/*|2E 2L{wr泀;~XIVLVM1t)W>YxUpS,}eR=`Nu??xs- !WIz Q)2ҹ{%s8bԆӯKT1M" N_=u~}m(+i8MeT| ^s'TMR˜0 Y:\-G#ѫg zFݭRsJEH{HF:؎X|V!HP\eUBY)?lܷXSBh2XCYdR˹ , tb% \٨#,{`+a^VE!tmi-z,)tJiboĠeh:=r`btJ@ I`LUz@,Q YɈqk3ȜIw&(6Gr]#ӎrrn0xi+[OFeƭhWXkk:ΚحϷ/78Q'lID {T28TC9 2Je<'(jc3PrTcCp,WW.>G.4aTkMYցx21%}Ic)M=Kܢw+GǟMFǧ'mb}yfZFE `Jy 1t^pBHRz8}S4owI6m^R{X7wҲѻnל2넎':⻬]S5RtM/'UCȡ*\D T8:b%#{\o}LAdrA]Z ijZt8'Euw+NamWjzw ;eg#6 V"[=aщ1>B?qV612{+3|M-v%  Ku:ucL T'w'MFnu#JC Kf Gb-;㝰g7޴ցC휸U&'8AT6%0A Ќ5`hH4$* '!7YlL0da8Ɋ S)=HvsU!(1GIgr#Ib@a3r DF U2YU"asjfQu'Ie+!Mɢ<Fk$ap妛SLНaJ#4H\.d׊[qJPHS4yDv=s("Rmxky W^(g9iyi[k4y:e["W}OڧGsuPU24P_Kx t`FSq^vvփrB8:E!3P?o"tC XY<$Yi.,BDHXQ=--Rr{Ԇ2 kbͦOupu9LPor;cẽ0R[&3C1o#Ma\=2#Cei\g!935s@<0{4/+4+cO9X%n@&~ۄ7Z+>TS r653B^O0aF3HߜlR8 _t%,1>x@ӖA FQ14^Y0vAP"s<5 ᔘzux3HD !9l9ϟeXO 7mJƝNNڷ3YN>bٸݣZHL v"mV *.ufغ ZڒXLnW^#ϖ<L-:WHO*Q5"p{2ܰ|{'y`jboZ0zs!Ms-_z]i^FY'Ľ̞M/Mϰ嶫Rׄ`y@\`On{Ty/^ӂB/d &b;U_|,YOOD`*H;.;@ܮbpڛ&J 9w:3x@=Ӫ÷3* `c~(~^[6dtP 9L Eʻbl5}c퍑UθBpehemJጥP! wglisݳʽLV$y \|EZRhnk ;X9w7UR4lB;jTC&?$݆YzzL r/0>Ǿy"$s1x:nn'XPֽŌSew #v"!ekv##ӕPB~ZhYCDn/aQLGZ|3%f){oi0Q${cb7!}}{fxST !PvrIeNw+fz6euLDTC~T@׾={pO¥?uBB~8IԚ5鰽f1I`xBm/`|cW/S5!XWBHj -P~Chu8 =;Od7/Rx [m^0+CXSf4m Gi0߆$d_ }\j@g5 c0S4Z0zTx`۔Hƿ㰝FBt+m[^AhR.:5F'dz%& $?<0}qhJ+'SD8X75bNaV*a(: `Q*$"3׬i%Jgbu\ ;j32]4\B`Wۯعfw?ejc2X5Dr\jȩLPE`\ugqkFERIdAZs |[ ~NOVl|2ԙ]'(}Dʂ99H=9$kT50c\/5.0 |kMRF@0ܧ "S]7qSuo08_B2X+/DlG|dʞQ"&Q5rVqZ#X{*oܨmҠ^ՍE*%) E;Fc^}Z!b oVGnM)CxJ!`ɴ='wJ+Lp_)*oc)g$IlTw uʩ専ru]Ks(I;(}КEV= CIzkQ48k'?a˘4ޢ}9QXʉP:_R8B*Otq5%Jc b[ݕ81r'+nwa)FCd|X!o&=ub9Y|bP4; %Vt.2YH]-(П:!{!GT@osvƯd]pp_1)^ǑqJUR J?K#^@MmŰ q) ]̎#uY m>Sm`2ZN\hl='VL[tV$rL{EkB:3tp6'egҪT^(%{Y@'Ngz7;fٲs !%L{h~| Ŗ!{hK!Ιc9|1:z/#Oy@l]uiNl`E^bjzq,[꼜 Kz/0!j+$M.szͥ|"d3T!V*nwp݈[HLZ凼Š }g G5mU84]!v"m= xY棋Ky"bh8xzNh T+Y f=nYe-PBZ6v4Ks R*:_(+WhH3K.1@YVTc,n YEѷx`js4/xml `p/Ty( pw: p)qSU񳲩Β*#5+$ЈT41p`*o 25 z_#%xBbUHD0ʊœuMdۙB ^lc˘4'>Ogk-q+y"X}b1H4؎6}z* @؍x$+=Jh _T4U:#}:~ÚKGUM&BETfE3Co)Eue`ʸ X1q3\oɥnBs=c4yq`t /B;A<齸/"ͣRzl]us̤P1/!9a@_NrnƧ>|[~b0@kfyj&!/]>{L~^, 5.޻ @8O2(C_75RO{=~n@qnEex<qʃ6mS&[;A?aJؠD*_('+s}=C^].d"O;NS' KN0MS#p$oq^=k\#}椦vDQY=~6J p>l=AE7m{ 4 w"O4yiv@+~N _Gݜ(k!U|򆽛)Mm(=ia|?X_)fG nz7Θn1v?^|Or٨tpҶU0`"$Hתno'I` ZF5Ą[;F#A hben!'t|\=nznPJ4>M< b vFIV~LȹAk=(w QR&R\36M8dSN"/H͘(t.$\PJ Js6tox|2g%oTmnL1A>uS!ٻj˝ps*#ZD ܔ \w3n7wŝ>3)懧ؚ"9]X m4eoQ1y<V_Ln[arQ!(SMD*V^PՕ;['+v31& "J-oPn<`87g:us4eڡ?h^-Kݷ)PƂvh2@TD XEEdBWZ$#HoeTY yŦH=4zH [ݶf5GT"K4fBƍu$ܟ(cO-W3|[㌓UHoP?Ig){+;a 'V=ަFSA@#DTHIS5=őg53Xz mr8Lu/v\cŁd1BOeqXGaN>8>_V:v[)x_}q0#/VS5ODG P؀/(Hw`|:V/؈O:ALٰ ӳXƁqtԖO1# oD?* 4m<>JW;bNLѲ*0P߻kn?U AP&M:NDZδ@͢NɎ p+;=B8FfOwCd7!/;y)лI[U"5RFvB -eϋA^p+iii¢UE;.!;IL3}`)E^RI+9 z% )[8q<gz Wd'K)q|3=ר.B(]6 oXIcBUK۳,IܼYCl)MĄfI&A3KLU8RBqP^MlYiLHFC+gD |{bF |i09Ϻv6o6 aR~['G]DB1p'ٙYU8\`%o6,&`jt.d3AJϘ˶=`؜sgj[Z;~͍H2!w`Ng?JԼC30?Ed}HMtBf2{_-cLpwu6 @NbD~xtHt`yl,"OL;yχy22\hfM RJQmF[eaiskPR}܆ ]0C Za7>:Eh: {G{1l.|-uD"I|RwH8(:S%C'?ΤL:Uy:gXwQF%WIoôoW|?uAsyNAPFCreZWW,ʤ# t*4!K~g`Sx&F13agNJ3Gf1@3=}_M6BW"щ,eTTҠ)69 '5HǣN(!+[:xDH"=T7 d,ހIl&# L)@p|C{މ{22q+}~Ugx*\\X 4oպ$uY)sRL34NT:-B$!|0GEƤXf.T%4.0WD'5v'hjD$4b'wviA(^P@v25ܳS@7gy T`Ob]6?x|uQX;!oOKK%Fq `hLՋ' #%DJ|vȌXHz:nz#5* <= 6YnHE0+ ml^Ly{ݾaH8&J~MʹR?ˊ R e8G+!Ɖ PV|Y'_/-`KP'+Ol]y?8]&_#A4U,'x4?ȇo!ۚKiB6Ǩ,rD#W#F;О əxQi0 [ڕ\Ƿ\fC(J; Rр< L &Yx+#SBh8  ]t #5:z~ apJ;S..A|8zN3W>s}&4h2Nv~7QN̑>eb [-K|6Dˣ@La<͸ ehHFPBΆ/}$?a3\w pmnk4Vp$+H ss8҅Z_+mz`ER83I]Y=/"+WGk~*tZA[L yL;B9>GSMtesC:57"pzZ4mz1h%utǚ4(RZYE8KZF6 psdG{ihQf9,|0DIV7hC(SAͩ9%pEΓC]7UҩtjC lΤuy$QǨ_2Vh h맅C5'ӓdaM9hKϝM[ݯN>U@ O7% c-vq"_7yܫ%QoݼJR'B Uu`@< Gk;tBo (afSYEV谭v?  W9#A*7GÉM)rf {ح/EOVU ÃcVCmqlbQL^&3t\З8_تDbL~I+[Tshj$X45WWbs EKi9{.իVNpG_" YO5 $?!!BO͔yͩ(v.P'$9WBI/<&mAFgsB؆R `"w>ԦhZEwBTR d|yrܘZteC<'>6Ve76W>dl;a5P3C(θlcatvw g|Z·6̤Jy)O{\ojhga):jrWi0e{E_~8_A&V k 庘 1jԣZjN~$̂^qR(nAALKPĕ@F_Kh5W`u74a H-wg;r4.ޝLɨwiubFNY1&2Oj(mɼ4:g5nA&9V ac6(_6IKrsG{~-@/=P%:Xڼ%JDb\Y9fHvokd   jwOr]Mu'iK`R_p7:9 qӍ1'5 ?!7N:ظed=y 7Ic ҦGIeZ-VNlۻ(F+%Y61^P:.FEkܢM8jGwv&R ҡ{G NKYE{HVHNLdmнȴg1 Dbf+0*p# '+80Na0Kbd6CxxZ,cv! YkHq/Lc*9pMjciN.GvP7!\(-җNh#xtpߕE:(G99iq8`sIDp`z>{Zꅱp峨b63cd0N/Bl#; %lPQ}Ev~[ ُDÚ:NO;8m$o)R uё @PxQUD*4ߣtkJ_V7ϰ;WL@phO~M+5rzI{t;j#RӚD{FP:J-h"1ntJOy> ?@[HWչ]:>--Ew&W:3Sh\OCȔdz83F84XXfTd]cW#X6M3c{ecZnӶyxqB|| gu2[99|mǼ;UJ~*fL/ wc16!l387;f3xycic:W{ `4=Dd54TR󵠚izw]uc?7ޔJr?`%C`4s~E@?F39\w'LDP-F~fݦ`f7$ 7iJЗԤ#m_;+ip 1wWwެ<>Uzq*o9 \b$<(ZPAv:#K44Zn Bb~xM'.P[CNw̎3nc,˨]"0C2a"Su/IH#Xb@&٫nCWwK^O-l:@;Ndc tt )qd7G,TlY'D,TSSnGVon dCqd]&'`s-'QG0yh&k| X?T8YZ~EbJcy"D"kc8~®"fkifGlaYN1ѬyPe1qxM/ݽ "JNY U'P,M^G &:K/e>Ȓhp(qݪ/!ݺOOo U -<'Đ~q7jfʒ`J"5!֘>5[E!YN#?2`0wA r_.gvByw[eׯG}-Y0o)Sgu j>g"Ӡѓ?bGA2.8~[[{-_p&z508 /n'xxW=vIRvsF7z)Xk*sIn9:ͮ("9\EZ g7U:)`:v{\sRm9QS3Q)]&Ga+k\ҳ Pg@ 3/ rb%qox$(^G1HHDmşGnU;'4FX~mpa}zKK&*F#tO*a=9j`W'%NOSASGKL}0f7*)JpB}p.)?Dx'l1 Jm&g Hx~VJC.ЏRV}|=;t3qKn2+ aC֧o/gj|MDrQ hbfްVA+&ُ3M4 }huG1}7۸RU^>k?&/᲼ͯѾXdFj]7yB̎/xqgjXڶbTG}Cos<6$ M)3@QT#I@eq%=HO]Q4f 1iʊyIKؿ`@rc > {Uc%_zy@;+&͒ijԐf{z-\L+qh:x (5d}#|;ifi(r5:br"]113&Td8H湡~IːN!ƍJ][ U@52D^zے|@yJLcִPʂNNvtq< ?Xo(ĦfqK5]\ըoaQVnub'<}';dBXhdUXFy];]`Z6P!Z#Dh (%T$J51`"*Q)`;J4 f:G>* ? W蕌y&Ʌ]c1}5| ~'Cl+8^i<cgzMV ~p-o=ZCa0I D-yo]/3ؖ$+ D;OE#6ґ$(7fb+ї mǚc>}1^z^G7>'JSVj}.I d'h ʒ8J1H'1,nOnX}bt ]8brM: .`IzU$~IYb$b3mC($aJw ǟ-=N9 \M69VQ xȴ%W;C t?0X hտh3j]n*av>fV'pulէ[ FA-%F [ʱ fL}a\Mt>[ɣ~skEgi!0ȡgh,Fo8h{FT:Lj,#tEsZhm)¨Mxt'qG.E^) OוAכ(X@d30Sc;sŝ"|BW5i~u6{:4 wކ ޞ-uޜS d01m:k/fl- e7髄yn({B֎mv\j=@r7\[m6PN/̗S?UH +%[tSF7C{)FP1G{7Ii6Ri^ kITlw E4s'UYPdd  nAYCVLR  ~9'槀$*Ʋ08t`%X+JI~(DBWpxPl>Z~ia1 I1C6V+/M @۷M^,3G 57}Dv: s./ Rv-jlVtţuF 0ŭAG?;,8kbJg$cۥA.7 NVtr=y4Ϗ"sd*)l4UHi#ư:s`'(y-IQ8OxoݠLxjE9`tKMҬm\s(o > lgAnlUOJ E93G|)2 Oe<%Hqdμ:gt=ჾE {=qљXŴL[?m(Y> bwȩ o@B ` Xfҡ÷Jސug8d4`'J]DO20fY^ˊayMu7]z|naL["5\񢐲ﱺoG_Vr*ӽ>Q3 'τ1y1p j 6Xĕhks4i &`ɑ;b"MuV\pyu !2 _b;Jn?X 4c>䋨5}_Ru *# xfInl"$L wJ-#`!f*i.+)X=ra" *  v>^,@vڰUI,So^'@0ԅ Ms2@#!O,6w3n1՞۱eGqH$R<\]u_2L+CБJ҉X~sE5HTACxxJMm97vs|!bG("K$ b#l_ JUJnݥe21hgpJ'⻍ iF˧qPKŬ^OW3ھWcU`ߣZac|j_yPq2$"[j I[]>g38gm,%k5{ZMh3Ϫ\A O(nk/!+:]~ H %mXwd"4o+7Y}h  ptl*wRJ3EY!}v>H?WjE T/(xc!Y3겖 Mx+i=fg)ƫµu>㩳⨕ BF̮^kz-\@$b2}urA241}JU&`tcjFPSk&$ F280-4y?"Ni d"9QWPK+gb`f^eNtpd/ޑuukNmhco*9dʂQQ[[bwH`wٙ|וrR6 $,KQ(T!.Ŀ;a*֭,&_L7L3utР=Sf2`Ru?f/t~4J i>&9AgɐNJ1s3Q0V=!Jd8D0'J]x R.)qdvuU{-F+(r2#idO5KNznV8`7< (ԗ:RWdꪔTkW{ ߙ )0=&-X< \`4hISF򳥄>I/`V0H(6鳄.r`iO3ي!n_xq"28A#e-q:yx@K/&6ˮ9.I#db3=Qq?g۳NLisla*.ԚJef}XQ)5`QQ['ֳW҇ HɊ?VYr߳b9+Jun޹]4.2'A缲6OߓR^334gQ"G(xP8ՔSUYW=nvfMwjA)H:c9ZAshGbfFGy]OFN@sbz0W7? "ɸ a.[^&.µ;MY E*2TwmyRRr ʻ\I__Lp`JsyRYGe[f Df#:A,I:ܮ?n\ө"ѨMhYQ5/1aT*aPv,w.Rp2.؍p2L^V:Y$٦&535ŲIf؛JLhE- sz` {彠l)^͕H4 $WW5gZOC_=zksCγgW\%,:L33잕i nZ} H0("kk=r`i7@Aj-JQʾ g\Nmmve*͊},RC]ltyY)u4F ZkeɈi'uIͩp>%yMy <:bOBJ N;x³wQ߄3BCmII?z /W=Pȝ?.¼(SKKp뉱sjg[*hb*V~WX/,3Sg'R:)Q˩)|;#{\9:W_D`tG_H"Ūȗ$8뽉)JIe!Ԙt"v;V5lXO‡-L˪F]i"J3˕Kӆa٨6h?;OZC 6 u ,$H QpT/`%8':1<*~TCN1 x惩ߞ¯*yAAW %)LDq\ix^PX9C"o;PJp=#7tjISQk=FNOK^M9\G8 #MBuɼQT$fFg\5"—GFxiI\]K"DXI)fVQOqVAAqVs ϟ"L:~9&Klנ4J {˵9@j!&dh~UU OMU%:\Kjw{:UwnzmP yekU˔D)}EU8&?&b词sv eqhœh(&Z8p YqV%^,Mdl~VAtȚ4W܍XG֦e֟RR@?< ј.%C. ݼKlլV2kt/Dn~ hvJ;l:LGyn(9% ʂߑR>Jm"bjs.iņsxW¶n?fNiS]IB(KEq`xu(ʂ~ !BQg$Z=)󢾩J ?5\ہs*R[;ܢDmo*&]s`TeWK3GZ![J-vבA#d 9RCyl;#nVa=225t\XOI[jJ#J~gS h(F,QbN;~h$k(R-9L$H\B0װ$}M+Z!vP5T-0X7? ƍKRN8T/o[@TX(t06?v;*wf1jC@Z~%A3/e+6~"#; y$&ߙ'8 퉛4ģۑ}z]jQ99JmbC(L0\ądVZY1@z[yQlE/ARgVr,T&EΪ|`pkc]TSe@w f"<_9F^5mRwZW,G2tsVQs!2r/spw&4.$P|4C2JEJ74Kr\%ܪX6%z}CS- )dݼ҉ԜZ&v۷?}`ba]T1kG+ڝ=Ù`EtO+-[]3>'vDe<(@* ҇igJcV NrG"Vf MA>GꡫăWJg- -!KWloHaA\K1l݈i I LaHYkQ!l\KX m!i@:q,-E_Viuwt9# }AG? 5\%`).c '|:jXSd<ٍyzz'\1Vt AuaGW3ND;L W75ny[3o2 #(uZ40no8uERG.WHWĸfs`2UoX+ R/Ͼ-H <8:uncZ!]m_cLErysM.ܒNHHPXy3*b> E{؞tLf 9oK0aѫtlݧػ5n!Zv8z;T`x ґYMHQVxGz_-W{!GV=֎ Ĝ7 WHc8qMݹ܆n֠eu\ Ǻ!]mt0*6ZM/ɫ UPVq-x}yj׫WtEyg1ck='%Gp !xLmWrU9 Ԍ2J/rjHgHx2H SL>@ #S`J/6j"u0oe98r;}׹FĻtZSE? '%`f- T _kňW;T:la_}HEoݩ;`/" F8Llny6o7[ ma ^>ڠA{';C毇ϥ!<3#-/,PSV"I18Nս =@un7ƥ9/T^:2#D'Vֺ!P?jW+YQrEPH9Gv 1xFk쩼eSpD:E>iX5i(" تOTZ=߃S2snb "kb%JƄdD./vȳ=ׁ m7'Z!M`j ֐э ˼TW7 .7CÚB:ՅJD6e:Z2S`w_)de,@涣S笜)ׁs#@Jn>V,|XؙshLwd>znZZMLVmx`Q 3H17WES J~5QD&wnْhџƲ2k}1#m/Ԇۮc^ۥXɸ;a&*Yy¦ЍF$u0&T'\Vy^ ;P{ͩHgGhrC>&'MPeZ#78|!Ҍ LUBoI1A,r%mmzKsgG ɼKrgZ9sԶF]^ b6sP$ӃHA/S ]Fy94{RمM 귆'eGL=BԘIo0G&hu]qyvnmU ;e{u95#"r5eR` ߏG@fxC8'9A^wL\]>!0*Oq)k.7sEPte Y:BT a})T<١Rp0@MGz ~kv@-+ ZU0AZ(Ep欴US Z?M9V,N'=C ,mlLKmaNwGn{]XF+bZ0{v)4q+9GhV ;";P5kPIWS&H\(yY}Ypu)]Wtlxkl*B$\6 /v#'( ӫhѧcݏW-cPgNڋao1gR+ǂkPd!cÚ `-&;]Ƞ(emQ,KhlcV&NAfkxʬ/Xu՘p F\dHAX~җmI-ЭLGÉs.ND gUR"das SX%J7Yên 5!úxkeK1Ϩe; st >\3,Г'LgvJ  |CaYQ"h3j$;PjW&3Po Ӵi_sRUޝc{<n3:EN Ô×z`^MóswQ_vyQ#7C8 k}l!|~-9*e3Gmi zCYM SYIf 9֗c)j 6^ GԈ{+v 8sk]`|N@}%9z""vnozƽvH3MQQ@}.۫:J/tv7^99Y_QE35a3q]TQȗrzYoˌZz]Kk8(OO&pJqNv] ]1x5{`B{i}uCB7'P2Z&%l>=o0,s.Z/p5 d*`#T|lUvXў$";R45 x褐߲#Vwucy˕'m|IjnᰲR`!m XEbq?@+ u|"l 8ٖ2\AggӚP56 7M_-Ӓ5:TSmP{ LsgN\sC{Lq^|)́`\-CӧDB6~ZJD7.u7KU\@M6(U0n&kPp9o?SI\Sp~VgxYc|* <[V"}t x- VNM^U<^]#)Q "cߖb$xMN LҢ+֯x @N293h<urCzFߒcCb';xP[0zk.w*LA!I)L;heݏch1gQo T)kc ".:2>kѪwu߸ ` ΑCl𲡋M/Qd0A׭a=^BFVU}EpO$ķ6\x^FLg+>JQ@'zW)RA,vJ7Z6CA)`:ʢU3[6!3` Q Nur{FJF]w 3v,\4K[ڋS*t͟hR l!H.msRJ"ónj[L: yiTD'F`ϻW8BtZ24 fJW3`ɡL9JvGڰqY15F|;P`tH}H4Ae#o,0o~pN$$@ճo@~D͹+T~8jÕ pZ0T/>/e1%Y&ٹ6֊ չuJ0tK Rdga{Df85c?a,:6J-Rq{z,Jǚf7 ,v؏EB a4y5o׮zQPb BХ:bEeգ鵱MsųqZļVS* -Xmg3P/y[oV;.Radb{v,g,O;iTdGͷQ6P{ɴ>Q#,wYQb5:L+| ~ڢo댱1'[KTl[ፓ%F'NL-OU0ƇQ?8\H߆0,@#T O(Nжi6W+W xo܁% 9񹾱lsU&XEq,?)ǵ^C[6 Y2" bUVD&;>Vb&d/3hw.qGXV~Id\DbG1G (^3Yk&*84a'pi>r _ y.z{7"SM, Gy-?7tqH /ķwTxvMt]3҂+ P\\k䂝ki$Vz?|g%b&{3V{ fS"5ëhi#)Do_هf=Gp'XR,wrUCsZPY^6T61e=& +jneQKngh*q&ΙP!.4 w,20l/3'-G>R$S*G_T;ܰɅ;~wC})i4G:*ȾGm /k,Mi<_jޱWJq=r]k})KWyE.2M[nXkv3ZJq}7+WH(*As87SÄ*Á ~V"Rgn:`q.{NZQxU gE̻qo+b.P%ԖM3:mdԲψ& ŒO?nw )Qq3zЪyPp#,[NTlL^μsT9!iU͸FкI몏&x 4xQ4%0ZlQ7R^zw@`Ae/zH:u9uksSF&"5"Ŀܿ;&LO3vCNŞYT3 ?$Ɔ'=I2$=+A(t(Ԯ F-( "b"8O`_Ca*8m//6MjgSI \֊{9m5]D .AC">wm̝7R{WFT,5FRy̐tl5Ϯ8iUXR_E)Vu=;Vo ?^~׌뚌Yo<vcjGD(%DS^W+W=MwaxdHqqa>*dyfFiG0g(neK6z [VL#? U|fbhwgD>${sK.OI{@Ӈ2C 7O5xi茘Sk߆bϟMA:klX) L0 .xf#7*j?x` -.k\@2-?L "\JԫZ7a ZP+Rt4RJFV$p!1}w!ITsX[8,³d$]ĕ34h3/6 J*xӜ)y4&{iT\HI-2#d0ȱДF+cXn|83\r☯Wͷ 2}U܂EE\~"-d@4(> 7na>[zˑA\ܐԣC  IsWġ%},ó~"%T_lp{ANNjiR˪*püW{y7(ټY|9VtŪę! GiwRVKČOw>!uk={|6UDS'-5[TIX٥MVJ ~Ndv@d ]w*'aqO/_n5w%\xL,=#I% [+^bx9>F - 'w@%Dv_]4`:}P00Zpxo"֔s=xN&Nף~0|CƐe(%N:f;3㸵z%lhctr'x6([p(ljN~QN\oR : A 7@ԡ<цNKWf,ő'.j f2!'i6N t[8xhU35~CKoU X)GgpЊMiA6ߙz', H[ӢC t`Fb @N15kwIߵk~b@8 w1D_"#*!S}n1!SY @Ch' "\+JgfhQ$xj<'-yan@8IfxƢ߸rhq]UmCE/`R>Ǒ$Lj #M_Z Br o"NܬŝǵxmHFhdȉL1s5DcfzBk %?sƭ/0Vk@ScZZ.EbZAQz;Z3VH*Bo$b_Vbŀeo v辯X%zq `A*̆rS7s ;mfῂ<&RYY7ϋ, vHNӦ/&6JAٳ *޴qgfӆ(Igm UjmÏa}3 Ye kFMYƆl.(oVmJZ:+9Nbz-N\%'Y82wl1!iJ J :vZ> )FWș/z׈GϞP!:>&^ ^xryh%S?@E~q\>LKӑ6kdczr.J ˜PƺQrH. QMB m[. k=W2ӗ?@\ 2JLn," C,pVMmvh̉)U4`#bc-8ԲYȰlV4n@h'tH-E{܈KOqn?;@\\Ήߤ͉NHrk;zӖVuyT-ĺS1>~P2hTpZZ$u5:E_+t DtX{1VpOXR)_f̩}a:y& r^\qSޯ헻_G_lD%p8FPJ e p@\A';|Y%9*c폑Kk7z۽y8$v !b/8]Uk)=x>]R6ʠM'F'fGy4Ffd\P{1XU+ \ _`XdHr-e7 tQP~ -zU(Lz@4ik,rHôv_yp"\9͐ %GAveO7VΞs }T']6rF-*^ 8[nFfloǾr5DccvŢg_Au<ϩk$x|7Y燲1;?z\֣ė^!.h.cq|vWi4Nn{?<%nj}qԀ"Er د9 KǢrò0a ֧f)ΞJ*mgú h5TN%`r^YQo &.k@!S(喀Ҷr-45#4; oՠ8=RBo/n`B愞 kZ/R53 S}MmHuݽ2s"kzTg`]Ù\X; тN b+.: E",*“y1? On)G]y6kzSi^=i D4r%Bh]U0rƢ<\㌩i@C݁t\mVȇl@W^/2ҎNYyڜFErVU1I-`i <ptL``f1]`.jQĈtG\Vc4ף(Q),1:r~S KSe>/u+Yڪ+iC}=XZ*:ZbK&i2Ȫ0ܬ]/gT[3Cݮ]>BHQ ߚ%4xjeuDY:Takk*]L`g *h+Y@tP uYp{ZV@=N>~)U\%Os e^Z*]j ;}Ƀx塜 +xȐ,~-Ob>C-lHj%sxf>`t% # Oj3jD;H) IZ:dR5h ;YNMODUnqmP)'#^@(6 VI5Ur󛶫o9(e#YcJZ(7"hɔʌxCeR,ZD&>>EC˃IRnn1_7@Ñ,uU&@ ['$(}؃N^S5\W8Puf [8ONV?c1mH !_doPq~ ŴV"*r8{s<LEx\Բ텥vFiDK,=7hqBMҍ 43Eh1rՑr0yVz91ݚxGU 쳓&*Yc3o%QRM|J`p8O̬j̹zcYo$'!˯K7Gf %yCthiۑ@U_mG7 0B\a8 uEt|C*&# j4.52<-z?jUk|DQ,!C_|ùT sP!Vq$CӘߙnX/:GB jS^k vwԖR J i'2>\\"h! q}5 D`+ɴ2 %mN w|mpo᥅< =w0{O+葂t Q9 9 GZ!?. gvW*e/z] `6U}ь+f0-%ɳպ`6h] Z\0@ %Zu$I3#ѥ& 2pUG,B\v@MK1eOMD0]WfE% Qr %͎//%Zp?su$PBV}ū*1TdsnIJ',,昴u5N፿.D=q{VC|cƙTTyXzDzBLw[*7%^1 G_ 12}VZAAւD !s(zJ%UпowJE[R%jhvoʺ3FVO{*[ abЍ!%ta)r?ɧ.`{mr~e崃XG^J4@El~XB6 I)W>=htCYsLna d& <؅y$gu ,sb(+w krS_mU%s$&pń }AS"O1AB:ck ņO5vnlD1XAG%Ve5cϘqKdSw [@ ])s3(cOI's)Z^ɫPsrjͫ^|BqndH ζRNKrw ^ebE!Y<"@/TϷ'󾾨 4ȽX]-DL]K0=EY WGEľAZniQ@5j e/j.)6$;̗lc( Xx5 vu2D읗[Li4{zHOKi%zQj+u:j`1!15 lM1k/{f?&qI7kgeQi`Rr+׶ZܯQiPW0=)s%3*!zytDHjmNz:mQuzyZ'jnqwO {rPƑy$J)?o׽kbxCB6HPPx/@y/!ko}l k: )ɓ7[:ZַIfOdVǥm!"UKWT)[R 9D!p5?>D+ vD`x t|Gl 9y4#t@ڒ{ "]qϜp5%ygҕ{\w\IyڜGկj0# #& dn[[B_9]e5N B!EگJHM(ڞi&( 0i)fE< q CAəe_9v*x'`uV|q)b sbD嵃{jK$>`y$u := Rp؆ ?Ȕ]._Iz-eeCy#kr#\#0` ehaC 2 Vƙ0H(v;aF{Kf@I^*`S+H(Z~2|'쿁t~QXί,!1}[ϸQ?l@f*>oV6?<ܲS(x.N_M, qCoZ˪瑇%`0^௞gl]X-38xs`L]*OaÀKK҃b9Rx${I*7LSd"oAJJJP.W q$cY#[YJS!r5Ea Rʁyo}1>ȳ4ꊥ1/(J )sZKNH6q3h7CX]:T=)!u.Z'<4V48[|C;FJe, R$y-/v>-ojܞ#cLҺUhpD=JM!5+?ʿtD 202 G @ =hp(l̻`SxB#ۖ7$ : (V`mY,#ˉ\%/2@Ekym=Qi jze%36#>**|B2Z; @|(8 ։Zq:l*" rKv&01y1B_d: C@L/Pgi:4dʇgI(|CTvD]G}M]-="3N`D 봿ga߿,aIDF2EYw83 gCbQV&J#X 8iMDH'HE8f2\bIHҨ^ORcxNF~`.4? VjԒ컢W/Й-i z2ja4vt%{ZģtDGKrDEߥb[?8ٺА(Oqb9˚A5[h \1 p@)5W Of진?{= kg6 GPWЄeg `dW+h/#^@/[B~\2AY$+L6Dk`صb3NiU0"Lob~5p:=󥊻a@ڌQ.X,L%n,U Uk~%/Y+lrP-ͦ\~D z+C֧G1ӡA%$ Afѽ<13 [-8y 0m-Dl,dBv94잀Uf$tMQ hKQ⦷N<{Żi_y 0_ ::Iְeu<.ᘥ5,#d0xۆ|YpԼ̮0ⲟj H735[&׫KqT}]K:Q.@l4p?82ԆJ! {N9ޙvo^b׻2P=Z$_0p\mZ :pdn@N5@:2R͛Rym j_> UQpuz`!VtD2EF o|pC'<Wvڈ${8BĻBM 8&ŪYkģN\asNʋ Vڡ;NybϤFXxy*ԃMU9RɢPBkvja6xN_I㵷V 6[jF&Qtlyaqi*aaUtY2^OjZF+4<*g%vT*}&%|vqéA}<(Z}Fة(IYSw٪~`VܣaQMs]&3!{W=7vcG`~Р/_Q{~0WC HSg6w'`ވ}h6GaY"(pD4Y,d`2N)ZTffmGK0='ݠqJ1 2; *+<ٍ Vc}XfL/[Ry%$a{j˘!%U0tA|UJ<jPd+}=vQ%$]'1ꩀ6IdQK7L *ESa3mkeD1N̶]%V[rj~9FʓZrPќ4./9*$_`qLb0ܺJl;R='Hh7=#yqh"Lj3!ZM΄U|7̅oLŻqXke90tpAN~Xؚwmn`A4#F1CKXl5Eqh%|Ca.j0׹:ycvg m$UeC0 BJfCG樌ebعӲI'p [0Ӏ͙RL\g;6G ) (V݅}=1#^ Hm-q ޯ 9- )Q*(hG*F DL'֧ E˛{>jDk{Ԭ#Z2i3ng8[L9@U %>( y̕p';R]3f5 aqi#UmP>Z62ﻪvt%"]txʿ/4OrN܀DλUqP0B Z|u{ B{[?[|OST?Ѩ(@Nn7y^k`=:*G3ymr}De|;CboPvt+{ASH(GaRѐ[Ͼ֚8q O\/$>EM*v9Ϻm:$:12&[x`1rK0j.y-&iS:qB ٯ~,XW!p5euR"[$[ßƝ7>ñ:Cё/3;Jj=Y}Y/]vvӐI3d:+u _>Vm/_14"8a-.# 8Hȋ P`Mk>fR}np\Hh@-@x((ql Lf!g/uɈl)_Ɋ$/6U"-vIj#Z\5QFnv5:~N)!zа,Vܡ'"jrŎ 7{IJ޹>o(ͬ4Y]@uHr  M_xK<uw䕱䂢A8QDj>UG1;Co~28B)1Z'zwFF |D{3'ԹGJ\V5`ú6LO 7F ?+q-W~¡ 8=Qn(,FLb][ٍVO:w0Yu9O3{gBZ5z+%]E ch /|'s/ٌBXi~Wtώ^EY16>/'8x﻽`zg+6wc'T[b3c 93HlH6^α`="S/V鏜(oH\^J#Z<(33bAhcq nDž b+6Yik{uֲ=R_"YNJ\_ɏT)qt {EDՒD!Avl9bm2)S(yt,G ȯ<1@rT0*XIRT%47l( JLur?@&uj疰joJO.6 \ll_k cmv"e;~|lZʅ Hm**gUD9Yg.}ܸ9T ;)9yW#LHt ujI Q*\cڲGRCw|EH1= 6P>0deCL7,p\[RV&wxD֤jwvdfr(|a{  _ʂXĚ0'v*Sh [_3pMc")3U6(MRBH;I_! J'>"P 8?쒱Aip7[TM&'f䡥[KWEY1SVIg|7D%d+PWkJ{CK˚#N+=}Qf 4|Mv"Y#&((t21S'YWӷEI9 RcPGIۙԯ/`1Ą MLGMDWn9IzYӢ%IidJ%P~Uң(=K!wSI`c8by3P5%m>I9,:{ m>,$ BqWā@3׹7xmh d ]w=@)=wE Lڹ9gg X*?{7*=Rds+l iqrSgY)e/:9Ɯ;CUѥ>\"aƃdrCui:DoX˙RjP&D(t&DVg9 -[uLA=yY3G:gU=B[To*Bnbgz~f>Ṋc,eRq{Q AGGGtUgir!̖ E0ϓ+ [\NEEBG:5zPgZTHr,4neA} g#A^5";Ll' ~ :{5ҏߝqKO|Ldŕq!4ʢ̍Ib[ Yr#tIZ]&\!^.mk M5 W C 5g_se9cb NDej?ѧ^,QCK,e>"X}#lmjtga)"{܅l4l!#ٌ"J/p;I-ݙ.@ DF(kGBuS[_hw*wKa#vI+,ՃuyO y mR]*# H`YI=xm#)ZH7oݟkRIă]E}jRqN:ˈxNֹ59KlyL6員ߤe_mgrz8fzK\H{tݬס: b.*z -8Y܋шtr< ~*#Ⱥ%6k`Sk"tvE7#0cE`m/5ʳ6 -Ʈľ X|N^%43kAtv'إeM<kjze2ρ{,)Î◅w*R_6s;^Ex:׹Z^;(dg4ꪽ2U(ߔ\MSx"7dcT32h,QI9pU3B}Zxl,YR%mUXmpZllR51:[XkUPσ~@ D8v(>5&.bh< f\(\Lש"|?QE8bś~![\~%DaZNGWF)dyUoLyjG4V 8r-*0KVt6\ 'iXA:ܶ-]A4E]bM #V?@^|O.+s("Ʋ?tU['>S|AY9J0c@ډf! !KॽV9 wTh6M}.b-be%GLX;M,+}ucu's4Kg7h)M'Zf"J=%>4ZXE O#:4Y2}U\G*Ċ!TwTd L+ :(~:՚(/b;ن<.4__B{~82SV#1  D*U/zՓ = NRȝ̞55XH8*# "!:z~lE倦r˭=m JñGw3O( "]z/9ή88tDLΘeg/])0"(d+nxrY?t_w$&oa; wg-Fgo$KU|ugد5ߑ0?3hm˧I%[f5I6T#Of4YH: @Uby_ .vI] ۉJYٖKȟ?[p c |^(fVn0vLV'K4a ]Ũ}ߪ$`lgi"3_e/hFdYNzO lcHQ-ٴaSh߂V1uLKθ>!\-q*-\[MbJ7},vhRO?!c42XO@]ҤhB=/T|&S1}:R5*o_aFW 0I E qms'E'N6jP:=g$RWD+sL{"@~egF!s@]^=()aLڗn"U'aeǴozOGnM1_g>}*r/8˿J&c#}9k^0IJ}H]p[4tz%e+bl 7UA9{+/65q]^+jI2F0j0E_Ơ?OR7i|`R/դ>Ьl܁@08c;U'!ow,"J5Xd@,W-oVH 6 q)Ow֑؆ƎI? #d[5N|}1j-_l|#Ot2tPE}| Ktdc6݆zl IdL_z2{SWCNFYhJQza/BY@pWn7aGxcQJ[( p6c@UY XMoΜCy ѯE[.̏8٥D 5Kej88xp܅_3'jEq;ūYs561ydvۤLVLQ iD}`K^9+WCbnz2gH͡2=^m""nĠq%)KE '@o[ ]5H}>QuCWU,L82m*3)yrL c S MtZػm`KZ8\ׂUA:Y"kSyt?7ț/i}?3׽"nczdTxU\z(;޿뛈'K gn%̆}H1 L 8[ a rc^wqlE7_lE c c+Ź l*/kUg>>:b/6fAuϖ4zq޻C$!cѭ C}"%.u_Ka︸g_91>v L$e(0+hC:ZvgS%&q5,֥*8$/c=IΞSNj #=4jhizu0 niE6ى47 ٬YAza>R3~e_N &D#[- Mo'4P>4Soqe-;`X*b+iƛ{Wפgy~{!\!fh@1 Rp ̇"A@HWY: "޸lnEԏqeX!̆VC@–+ Ŀw?z:ꓤ  KgQi^7焙dNc+m (K@WU,"ڹn8%mV¨cJ3ґ*S5 մZTyR@w/量(ِ\$ᄣ_,-\~[a| 1>EoNH!+YVv Cch9BbFj*OuF]I3[ڕN,Y^'"=%~MFf{"7uJR2Dz}GCE{q/*L<)#V)wawa-TzmA6,aC(M &YXbf ֶ4Gܒo;Zu|RK?V;хԺ:5tWC{:!*uT9 Rjk.1D 6dQζ^YK wy!1GHƢ(nn"CCy\iۮpZO],39mȖ2J-,򚦔3e+2/|Pzs l>uoTyy]KLQ<F| @pa'!헩-A:+eWfo RSIhJ5A/47>Is <ʁ%F #ED`W\YL,3pe6Q.kx8b"1`6`7p!q }`MM~fưÉHq[15 0F^3#>5/׸ 4cH+)e^?yp"At_6x̷ >A, 5- ߻m&f?%'hhSY] HW{(!EK#<kyU*cl5K}w5+J)EaHuo5;aۄ>Ͽa ߊ%Z34ljgrU&1WrRG>8CNf@; 5ʇ2& Y}, * trѱl"o_m*:021.hNYQVLqM~fY"䩂qAj鏮s@!zm{`E ָ<~f8t%r(mdشۿBOe=@vGۃ1# @H>پQQ ?G&z0jQ%)p"N2Nj`׻+x'pp#Rhm8YYu#V0J\F ]Ql>xnT@ۙj9.EgCc*dv;*, oY JƳWqdPǞՌd$FOtsG86W =GY&i#{/ }(GxѤVEI|Ei{OIi]6sjdK|珞N"K9=eL0o>:/Dr`ŠyN^L:cP,X*⃿'4w%6̙aV4_M9yAfsq҅i<:"j0/A;m\`ODyWwLs{7imAߟ]noDw^,ov01{X*YjlI*]UCDQs 0SIHC֖LDeYo krLxL@c(u.J,tUby[(UnW?)RV &6l_ {Iyb/9տ3>H x7"V3)H*)dJ)}9ig^ΡJK5sOl9oЀ~AfXz히I|S 餃AvL|}\=HDB²YKh綉ОQ}p.wuy~19eRPQۆ,Pr57YwGW_N>u*>[4ib slBxЫ-!/LX]鑶7ع9D<[#!E<=DkSM4fl19=)cU}jd;ȅfE. Zk] @ Qh`6 +E=10gax{4h@"h#\-t:8d\ldɖky#j3)%D\q)6iubis7c~2/JR3jJe9n:Q`'V]e,ȓ$@=+~8 rI>#4g#"NjčU,.){Ty7p^t5{mm@V|F|Z_Lu% T..;wb9V!/pĦ Xk$f7:8|E`攬Ƭmo.0|:O4F{w[~;v r{ѐ#ϙܙ@rwn\Z8ט>qpTB 6t%@ zc$8+ +Zu(=Gd"אݚy/<}3-Gq/)4"k ߒ([K)Aj7 r9 ȲS s95{ q/Ll?@CNeDKQt K"9X \3%Fp^>l cgTx> l2 v{W6PQ)9UTtmՃZG6{oH[T Xes Ld7ϡjCGAU=+ᒝ) KAH:803Od@z>dx QpUni'l:j>Is@|2<Ee@i6{vyfPdPfwc^97γ&$͒~;$LuhFO!]&]O*VK`qڞs(3C_ŚE'z^|_|LPgX}zZM&HRӀ3h@*",I5[əF6=)Ÿ1E%Im5-SgD\g.VGK4oqIKc|&"zz- l^+62ʦ"EDmR 7Q: WNJlߖ!5ӽ=<~p`c;g܂6ȁ-Hsb|{f5xE]q!^:=%Lm;)YY5F.>lO )yJ-N' 'Oh``,'rKr[&";Z|Sh|Cf90FF/w`._VMsU #ȟ۹WnN+`#Y~W1{< 0U˳d2yEt {h' m.;dVmÄt{-O">|m_jK!.03GѳboSUnJvG˟2ؒT] &h&3U6Dңg7JZK* kC3!a1/f/+u -XeQwbY?9Hs" E:zvBu}0%yWY-"_P Ruʞt4LwaOP;g0iն0s Yl;eDž^\O>HOq80B$WdT s3C:D -V FPd)ʗ u})zGqAg4x%϶[S>5pUGIPɄN^9 fM~g H-bV7A{iļ1"dhf[LsDa ?PTph73oӳf"$pX8itJIGi@yFݓۺ4$Tc^GO?)Uspp^񧭎`L!2[ƫͬ?|D_ K]'67ž]HQ)*W/DLu<~O _ Ŏ bG {`EnH ?U9fU m*͑.Al4X5_8VV=$e7)«wq-䆐r!jflQ;AƮχ<"qBMVJ5};[r+DjzY 1aį_;6S [k(};1DRl3I^K[:1o蘷,GAC&'DbFo=ʟ?y;(ǏF%'Tk>b!ilLg{>C.7t1'@R&-"_,NHbnK Nޛax/l, C+0H5: $fF.ȼW (ι3\؁Ez Q`d]rqF}q D?>ՁGA6jK:TeB%ocZu 3LMb |ƶX`2a\+OW0Wci:_͉]$}(ii̘5m4h{fVU -D:i@`DTelv5j1e) 3ٟ98y6R?O(Jm$jxq0PAdLP:L *OlK怖3PfI57ՕR}`z墠8 N/MSNWyZͳrMe(o>.ccڢOn_Z;-#Ya_{rݐ={P(=P9@{tDwɁrmfe =Bj;..qwj/AVEs.ޜ(+3 ,<}9B 3{<35X< ɦB98 &^,?WIr<Un,-3P9z{ e%]@n7ͩwJIeRQeN՚0x՜ i]sXh6{ZUWLzjªa/O`VFg}s)j0D(_f[(M̆ $/6TlJFd"Xr7 xPC}vV SHY8/| @ץU1 M׋XP:߀ntΪND0cg4DR:vٷM3?zge&Rm1'&Oj%g)<0+ݬ鈤za;R燼l Pˈ~(@xD|(OUMZ^,_ra-%$z(rGȫd|o\9 @y .eۢꃯhV~4snXY 8̴Afi?4R YTp/G>us vM#8󷜍;ȅR $֠? A!A[ b:7m6q=7z(k&Jm۠Oyhcx+RDq W**mkAE9jO9I5dMC_CSKT8ʥvy{vcN" hBC|?xB[ŔjƵjf$XUvSy?|blBv&iY%IeF HGW6L ͔cf\`P%.4ߘ+6*![z;3x@:"Xk/{!b.sC^v&Fsa݌?Y}}ꂔZ}).Hnz="µBo zewN4 |][:b9.;xV uM5>( p6UX9p"9M &aljYB,G2_vpOr7&Iz\"}չG gI95ݱ1B{Q=Tb.[Xa$Oo%e=DΩ:3,UtA|*iPM47”qIb햪⏬AOryԫ%2EG=yCvjPYH'Me7tS`Mށ{dD]KtEn龡DE|=`b%^nBd\&OWߋcgz)E5ybJغӾ4*i*h9RǛ!\V?.R^N|+CU*6qܒ]60nGq iT/%9gp!0Lqx:/"h+s#>ZB }췇e=zf4~uۆk/ ~k,Q Q: J4TP7={dҵl6 m_`kx5 16iRc sK_Hwe9ů:+пXy]wrһUb6 9rbP9NtNo?ny@u9!q)Cf-ׄ: Hȳ,*c݂vw̾/is9o潔aZY5feJ_3RTIWՌ`3 (` .6*`($8e޴"V~*sR/z0;4l4e 5y6+qB4$$UO1UsA>Irj|++|{h?ߧj~•dɱi7/{_st)8ߴ]4@ȱĒVldYoRŬҽ:l=bcHUw|l |&=rم0`'%Mݑ ex(uQ`tG"X[meijC>k+LJxvB/iZ'pMRׅD(/-b`yuvXM)*7:;e'? _ʐb]iu+Z5LRwFj ÚSITD`{ԽF4\Q{ q :>権;l1Q % B<1o( , MCZZ&20BCR"nB.K}qɐ܌ۥHK-eY-1Zoǐ3L6gHmi%izlG@3SM[ui<0 u*)ð`T=$B$a/גm2f_/}̙܅Ipw&I.FFwr{yaN{rbHU8t11EdZ H V\Stс5e)>bIC81Oq8@(CߣJ.+I(6&3iRz_EXn1GLYt$ /xs!4 lH"`3_RĒNwG<↝V1T|]B*ZG5Ug^ŹUcVW<eX)o@!膍SIS8?_f2i1Qd&S-rːR kS!yTQKL;s<8]LX;rS{|?Z 8k_ʦ &Fjf|#G 6G -?5ϐ\unOcJ"QYUM]C$PJRbƽ3f˥DJ(^$&7r{uOʴ/jl$)ɂ/~rvőD ̧bOԾ|n~C, ȖlCv!0͒WZEeyփV,S VdQzNBa}朁8$wk2*406^ށL=~1kbY1@=Z*Ex)%բ o׏m /f8/6 s LȌH._ @P֏Ar=mjNz:ed&ܠ)WXk W~PpLBbkRN.KLO%T='Vp e>íg |7-0FOQӫSqdSHl^L \WeA1s/~MxO4)f&ATm|!iϝp }( (SI႘L*/t@(\ МMnVmX>>ڒY$,{!#.iJŇ]-5V#Ea\/S@lUsq/ U&EÁjJߙbcy}"HHXG'CxF*׃eXm'-qjN׎$I^A'ZwZs>#@w0"RAvN"1]BkPilt.>ja:+e>z*G1e(nCzjr"QShsq;#bٯɂS^o5Gx$W6'&t_$ ~t (]r5cYp`V9cZ {zEoq/Q# FI @HuKЪTG,UO%LM7 exBw l6Ư8u&ӯ2}o2aapDyu2%9D<I}7PddFZ'~j*qdDeW/ $%w]2<~m\,ug;9)_3:]y qM1ʟɾD΀ Ȫi%*G; <"DQ^4=G@UN{XlkpPTa'yʔgQ<ұSY)ûAppcnҭӊgڈݵ$yk(ĹĔe1'`%_,B`#2m:?):‡ W}YŁ$qR1aYW ;RQlO"꧎)  mZR(&58΢~ ,>mi (K\G` nEf;o ̾%{3Fh7Hנf GZiC}9#*p~Lߝ_j<^R0={ߗXv.^Q/&D?:;!{`MjlH? =_+$/MCxrssZX,Aoǔi Z議US'> I.YfnF(%䁮44QȑPͫȔ$]xuuSH_hFҒ=hWMvN  5vC!7X|/0C %)@0&~reʙmà49e$Om7Y| {< Y+(QW@;/C^唶a8tkM Iu l+bANi%p8$w\s[!XH6WCYI~hDS^X;p Hr[㊯Ǿ~53ؔ$Pyuv1{!|𶽯d삔fh?p-B  td60ą~ nSpfAKq G@7WE,l#u Z _4:.WPhUy?I/`SMX˽ vKWpꪁMbg@НjG#>tf-nT{6&VncM#Rx<,G=c*pPT3ۦX]T?'TRx^@9i,DIЭkd9xi>{p@ sK1ܲ'rv6c&bۃ?uJ;E4ܐ'2`3+琊c@&1)؁Ez םJε5k3IT'o7axS!"l--fG344erK6SP3/[2є؇}~tjgzRYOnlb_Ӣ1 m;Q-EԿt, ԞՒPW"tqѬ4F9,~}EBAJnV />* q-~vDHxX1Soz `̓dH;b/q#%V@T3lޚAgO +O~_ gJpSQbkUlRl6%ɭɄ|߿v-ʫVy yBAwT<< 9opV-!u~ H|.Bu60G6mKV& lY?oR61cc6Z| Y8Z4P䛲}!4a@qi"^\ڈ^jǽR)׼}?y{@(ޫO$]ie*ƧN o4XK#1Pv3*\c^]nAХ8c96P_*XKsNv?3rXW|kқ2<ig$sԜJ~`Rw^go"*n9<uڲܐ};wq-קC;v=mcz {p_w ,k7b6e)mv/ZHp#Y<]ֺʒ~/4 x n5̠!rC\:^i+m(cpOЗ3Q3S c$*^Ŀ)_i"~ONx1` xx)%9LP)˓zݡL`xD/ v':q[{[(1)I,4_gwV:Jv鵩^QvݸhU$N}VT"i(6n=d o>zZnUѮmhSv/JEF*2݂ԼSh0L,/ߤo,^,dmJ[Ey\ܟ923ff-#MG:W,||:뮒V Q9)dEtH$Co\mO*f6vhz]?#2#L1?c8XTX$ZYVQOFb358AeyTZ5-a[0/aM\bؤ:ǶGKŭ6ehe 5$#iGF!F&Du;Cb5>t.g8AY& ˝=kFnl#\Dg)`ȏj+.M8MlMT)L);ĕw}΋!>M-ObP%T[C_4N}3NQӚ7HD`eH%d6rZbxNT;,7k# )1jjk]j=zq\D 8V+ERkC-r,iI~[8lsB䥋#}8/8w hImT!oTbhՠu2}@Tz1THF8cB'{DZn:<sK4Ȏ+lͣhNO5~Yc]댹{q:bVjL((R :^=RHkz}% =#"A|=pE~J.haNH:=YtcX x#VI4C*1Fi*cOBd]QPǻa[ pf<{[mͻQ}hB}W568B}Pf1`4W?RM/ɀ>H;\`}HMs0CE?.M, g$-xAXrYsHB7^. U:lGok>Z]>68;W(Bj-3F:i=NdL%{)rpw o6{'ܓYKzAa`"Ŷ:kТ 1mR:odW˹h*P CVZg8}˹(hY"Ii׭ܴյ=  $D z|'~@/R)R^gY?IqNsYiѭ0ZXTOPLر;RX4}քW)d2Y6!a2lEX7:ƕ?ȵ?pQy(׼D>!`ƭ8•0H>~r=bS7ҿݯ:!γ1vq!Q^|ݻb "]&LR :=Y LJq 2,`P倫aW#(t蚩 Z_jKiE{6dTТ""/I4dbQibJ_=>u4Íe Vcȁ%_vJo: &o{y6IB?ę?'LLgxEe+VvxPlB>"$0۹}L<_+m[>!+xv]QthԆ'Worj}~%'Klp >ُJְGL2"]m&HSO %Q%Fx~$s$ zםYO/2Be!Ka`^{`g'ffݰ GhvXˇN ^ gh si>u_&ƹ^*& #ČEx-f7WkҾ9X>cƊwl?웴2G5l$qR?ʗOFK}@PW A&JAHe7/\?l "@ Bɲ: ڑKgbU^3SySolfMkțIxe9GyG߁b6ќ3ek\ 9!:iӊ>s8csmp~m'ڭ(d+avM5F)Ur45YNt{!k9 0m tdXLFV{sI&z2XHZ pC32J )Hp{.(u*zy@qj|"*B5$(O6+ ,` dY_K*ڈCnȠf\AsD0־M&`-@u谋\r5#bh67}ܲ?O4Ug\PW8̗ABotH#-rBSƚQZ≙r|J?`7xOGA?ʂ8$>pH+/ϡ@L`uWH}!G._ &iFGk#sPI#:UInbBMйb(+}*+ɡR1n\$ C{ S&y#j[V]R$s:tcnCxdErf9?K< ;<xrWf3܁E., b&ˮ K8|3Ż=0a\-75bObʲ,&XMK1GX\32j6b@㉩` Vv!# X98m;^ 9Yhᇵ!ǵi]Rѻ!7fdE4O+硡 L )ǁ8te|#Zu2o X/^ݕR+$՛4[ڢ׀[A>=`s/cbMj6li/q1xhm^a 9/2{zP.7J#MsOkDQp8I!i L8Iæ3d3>&i-$/]D BW, ^!fmd4#@*X4̸=u>wÍ}a.ܨb'Q&jO#Z rbdkh*lشUb'b[8Rf gEi$P3e[ $4;Wk  ̗t)]D?ahp?{))FzJ?Ӳ<5E2Rw=v$:0}aDԑDU<㉯ 8gط>)u~sx:)=f&) UQK "]F$g9˚}!`XT4 zhLuE:pB\qjl@ZypҦ&>+:k]#P= $7+)6b1V9d*4.!ιP\Zk?va Ͷ0|-S^e|,Q0Qdɬl-tˁ`jE]-f?iP =Ai^_p9dm:[hB5`#:t 4^SV:O+R OA.xO DdU)4DPӢN5УGt{Sr2>QfqcA;tzp˓"pg#qD5 ^CЉGޤ:,Vx0bbd70|e;*-oyN)+arj 6V{/iDby"L\]S-gG)A@յ>o-2!Ry%BQT7_kܟs$[m٬ǮqO%g[:8b+J%OQڡ+aK :Jj j˳ )()G +wYD\\U2QoItى]Ι^a^W5U(GCpS昅leD@/c(NICSG%p氇yqM`/A9IpίC}6~9mɿx?5_xD{ OZUc< {F;JQ!1EkXߐSOk5sӧpLT 8>U @,NC?g~.4$s¸3_/+MV%cH1sb$|#Lsl٧-Q(t{$s158sɖQ2H`B_6WTSM<@.,(Ap}@b@sĪ4ODА: 5befzc-Cvx3W T95ZD.1)/L8`W*i`lHWmx]-r>ޭ2Sz5E6wgډLj[eo?w;,s}^uf(:^ART;hD JL %_%@bR  !3%TV/R+({"p*l3+=(@ar#LYX i%f01yx^"z$AȹoLkʋ%jxG~[ox14Π;be|RUiFG% l0bv"rNI%Ahy`P@P2 <g=lq{<Q.uHl\ͯPR6fniC=<|yDA{|8)-vC^Ap?ZYe&\Iƴ'4ҧ3&:vKSp kw6!mOw]292GvFж"Zaɱb_6%aU1}BjǦd>|.V2s}pŝI#t h|]es3|lMBw +PA@iG3MY%/_Hc94#k!En)."n8}gMbi2 # !W =@Z#]90;86ݘW_w^INZ+x$ӢyZ2Sث ,ۮ"U.|B"!FmGغB^άi.ƽ nW~ FGE[vn [8z߻îJ*4oxRΌ”7ΘEK 2Ҏ-y;gL1|K/OCKo!$:htݿ@O%;%>M%Ӕ!ui5>Qf|}bkwE;.(T=eJ׌!e3@iU=h_0o32:(r#$pKokijĹ7e#xpTh1ֿ(Ӌp"r_9 d[CEpPm[M;1xaA$r>bR\qUakQoL Uo9%cb6Z(BϟB$]e5?sa=#7:/LRNm̰gs-+Bh,FG@Yd~/˕X;hΨK(,;"H{7 A )jɑtPyIӥ C\2?[C Pvkn'6u[-ېr(;FQK\d$iъ,`tpƖ (tɓ2G@)S!c"7r۵ax΍@bB]w`5wz0 mzT'x =&=WTuf`8D̔g.L | 5`cFbmg+{ r.y3_82L%`G ]Jhߘp#2" 쌦B?X$OY| 9֧۫BuvyVZJ背\0cGM!ԹU{O$}i@^A@\EQsTI|@:/g%FuwȨ:.熸I^iL6D)Y927a^ rSK܁؞ᨙI塊YoeZD{]Df_ɋ =՟mETc>QFGSs/^no 0[ݥTUsޟam*%h''#Kv[Nƕ߉Se*=䗸ksy9xgs盅|afqfRS;ʽ$A"ce>+p3ЦcB$'= %.c0s.u_|p/4UQiAx% +b ГT%_ ڬL*\qq qje kKwƑHeMx f"?aϛe,s@JTjҵڜbY! e'C%n64,hh1 GeG CBHvsC3lic|AU }fIx%:RVrK{baN80gd@Xin,Ta6:=V#2aP[kr,:xAjT Bn3qL+Ze xy8e[jrK7eVٟk4EQ+RL\ul<*?[Ɓ=l\cSW_յVNZĿi<ҁ F4%,W9F|۟UA(MO fMFwډ"l]S-D_LscMޞqr¢/=j- e[|MJ/ânxe=\d-ʾGS:RT܂mh(ٖڣpU@!SH~K9K-; qo_+g!Dណ:[y"Eڅc-+.H Y TIR]!ѴƲ2 ( }׌MQU2CP9 ؐN/ήexx.Um3h';pVJouv(h}4ꐍ=y_;v܏NaZIxzaA[F!čLg^mPYbڱb]>*M6j3kʶ+߆:u)t[.ON<ɭxnkSmIcTgzZ{'3մ4\;?={`Ӫ]1k7fS6sie%ESلENqa."ľ&RaɆmJRj7fǴ?6[6S#NonFY;W5Ka-3'+sWfa?nJ(q ӋIn8)ךG0R哃SEH d2JG,(8yE'7K#aBkj"8g ݄t1>oppN{>"?ZJtS15 +(D3|KϞP*ϛskBP>a (pwV"_RCt;X/Mbu1hc]`~"yA عX)~ёA |ģsO|'Nn}6|VBR=pJbx$ snG{d.3Vm@`l71`^dntem=! n'*NE0CaASW6DJDRsV YZcZA8iP.NQbD}HžZuа>j@yG\Kn3eT*E;E-Kͦ~㔈.lTz~e7Cm| ,.,4HeL4ꊥZaЀ`ivcyc7̊ynH$T i|F%L صtԕèӼ􃓧t>Xo{bC!MxXٻpm:%{N\sJJF3[K۴̪z)bR c .gi#/1\Q7|CyT Iz:Xi؄ܗ >"-P0\7'nFlWk @ y57bd#Ņ7n*zBd™3>X2s׉>$,Tb:{E$t^m^"M%␱CV0ݤ!_j T@r;NȮzû]42l.;8W}0zgP$#,#+Ic h4@/ F:Js]85Rxsz"y!5OeIlb$lFhLdk#sDe q.n?ȱj-BJ2OHQȾZ` Ɵ'}Y@HڋO6+Jk3ID(_>4-SZkA1@||S饻Pp~2[)v5de"ZY^º%DIX5TUkg}E$VU(0$Md%ov;LGt\&I (YZ^ z1|-b;w \ܹV>e:?Fմڭ ]OQ^& t55JqUY-C57@NOv6Ng;@4W: w&mUHk ̔7jvcM6k#h $>sK065۳XT8-IvV̺[[ ;gIkt|hY%d4aI0>_6S}?rsOA-TāLݩS33-,<V{c6w! ٬YIrsn;W^ ԸRb4]hh\djGe\#l@~ ai5pDDz.|u˼4pT+v[!X`2_泤|` >AELD{㈡u$P1$P:(Eؗz_<&1dY3IBيPQ'qړbޓe{> >aFOdp"Z~d /ɰECH`Pb^\l F<HO"lT)m4$eH뿱 >0{ޤ]S`=VN\"U3Affw2E8$dV@*'5_j/P?@/ƹr:/=Rϋ۵, z}떽nEq/R5:m6Kz)/R7xc\"Ǒg'2aIbcJ+Z(*w~8,a _F<ѹTuRbA'ׁb^?woM@8/ŴNϼ豢\lL-QJ| 9Iyu-8۳N Fs<`ORu,6m'}d?թ8ON2S_f/;$Įu昻_үlMO✟n>kNI:xD"8 lϲ)NŖ1f@JC}McG2 4IH增drT8w$w3?afyzG\ҦNmX(\m0t[%PՒ2qM &%X/SKڅ|v߻@ 1Q%}`I9?ۈo3X}ꠌ{,l }l,cHv ;Z:[}<3B(t3"*#Ҩg[EǽAUkS"?4+`J/O 'G(2 ! c\?-5K'_Pe_,Kd;j tztU:,P.` Iy:)i@LdAlmFQn2@[#%rVbjQ9E+Y&KՅܤUmFZkEITQ).w5hSh,Iet@PЕp8*{V"lWXJV ,Ⴙux,u.4FAmM-Mв(k=0Qd `A18s>xF᳁˓D?c[]=0ؐјtt~#?X47Y(wb#rAKS_9 h_\ `pCMʆe!T5s%iUDА%jLҭ$뎪оWrb8>\IJ}5sSN υK\!xEKg?#=@ ;[盭vιѧ!:ߢ45q֌1 $| #55`#-Ki>.l}#W˅%4XO5)#s}gN}ֲ:]SDNCC$+KxG(@)J:*@Jޑί F[16o2\pFPQ'z (AR&%D*^#SHR8 S_yʿ^ـP0jCW2CP2vo[es]]|AF.t'^`՜=-[3&uЇʋ,>bլEeaF/[g#wOtc<+h'ɿڤDpb7n64"쬢nSL})*HD g=gs׹7ڑ9j#n % E6Ʞb?1@iw6jQF\`lCfm.SCWۣL{.WVa?ʫ4L ;fAe֮RG8$y$7D5*T?Wjq{|5%TFZ{ %Wx겘O-y$!ltB[ _%?h#+[L%Ijz jM.6Qԩ|R{E)Q Y4Vr!vlZNko H,@<<4 v3L[9>z㚗9/EʈB|K|QxֵeATj3S뱬SDk !Z'#j09Ԥ07M›#M#4.5IXP45^hSiI:n9f/䱮z}>)}(?uiՔA?L& h? Zq"-YnCe04d;:[gŐ7W"Z͸dePjjۛsA}YTN*_}{B^<~L +DYwzCK5Vcw+x XB51J  ;+&@y?B}ЂBJ= '2/mϫ2^li-ЩzćlMk]d_ǖ~D{s#"-Ӆ;1%|Jp>?1"foq¤,jR /x+X<#mCmi,I'#% mAMԗRm4W;ͩBf 1o qׯ ' oBV * Pl1dٳDG_EC+:dVV ?SV䠟t3[o`sPYa\dliYIӾV5قxulsh}߱? o̴ao^*\Nxqوkj%)z\RRmu$ϊa8o og6'1\m;?ʮG/^?15I@1KZ.a'Qx(kM7aF \zD(6O7B_ g4+lXzF1(y#R դ? ,BUgO28LؠwSh "nC|y9,z|{% nUG'NMj>v :֊:ML an ]&kr#!>wo@,R- {]e;BBS W@UՓ&$FFKx 'RINjCSx+Lفht{>yC +*Ӈc1(ȏ:fL%ۥ!qLj=9`AfKg4:ɦ9;cia:x+AdzV~7,L,+[f*i**Hx=ݍȔN$',N$EK %}=of70is˗g9V`O$u`b Bq;{I Rlo6I7LY0K*vĎiުvߠp~eU"ߵjNˏmQ GЄY} JILlcӨHTNKKl*~Y/mEŸoAGpE&~EG2ˇ~RR@tVږe'wSZ>"nbQrqn֎.8zʎţ .vZAOOq}u5dȧ;[c̟<{u٠v]ez KbϤvӊMjL)qYx<'E)?K4 TRy$ŊIc8Tz}Dml-V7nCGy9=ϒ\/#/<@1#CQ[ ^TA (5D$kW~i{Ai ~̷^8,y.!{ mJEYOJ~c$F=#>jq StyvLp7#X%O¼Ѓ19K\|%3i>uU?5g69e\(Uk3DPM V*ZaN1w/ݖͫB GJ5V6|twɨ8H=0"{oo ?xǴTm]bE֞?ڊ8Au D gCFi;̳޸Qn:\ & `^"zT=/r,ΎU[rƱ׻O +9dt#9/?tCũdKx+/WtJÁs MV+Dg@[.~8vɢ0NGkX?]'s2{]?fo^$.n|Jn!Mbq#.ۍP_J-ejS&]*a\PjNuƝTXIy|8'~g^a9:b(d]4mtgӽU( WMfnH%8f2S忽 >i~G1UWs*u*ÌuZ iĊ;TrnbmR,MkBKX5Sq~ZDrmn ї'z7MhP?`@҆,{q$D*nӟu鬼 晙8'vWF@4S댯 ^!wWߴOdr2W%g H; RwQUk9ϡuR߮?@$g lzEReVk}A'3m `KU:ʹzsbrW]jfИ1S%fEL/`q}׬tu-I(8hj4b,e覦9X&["9WP7 jl5W1lR}P`z3r~l2SKE@z.#ƹvcja}h+q0.5Aj&!,[b21]7ܑI>fkоHhLiva^ $[*~W@BK"(,&qo,p-ޖDka ^x oaV03,y$'i?^nv9$'>cf' . za,omZoM@MO%h}_4h$ LIW6 ůkR)1;2k=cki[w(ZdaBEeVy6Ƞ@NpC(ސutybq!}}? kKSsbg'{$녟!23==9$Dva21? Y˲2Yq_梔-DM,h7jmRm7ggz(UzAS;PmJ@!fs(̭u="?Ow夯vdR䅺cpEkrw0Kedǁ}N(_M$s[)ݷ:hƌ|)plir.pyQK p)B9ZJ\XbI6`UV2w$MϞC~0_?E9םjmᄇMR@iDC 3 BKƃꙝecCIA:o֯ƃ-_bQՙ56XvG]3azÄoT|vVj>u\@6e57Cxtsp, <lzk%ag[K4~3u/!Dɞf1e(l{Z G$>t5mf)t_2 +jWF}Pz#t' c*ٲ/~`*ɚDpKM]uͳa@yr 5|7ԝccV {YdUrE{w%!^PI+߱C"=`Dhwc%Y 1[P"qvj67HVش,!E%T,1p{"k19-\`>{ 7 x )JbMp\7K \ X`s_zX oV86.E܇c` H e0 ѻtUb`])ɢMZ@>D>p8Uy Ԅ$s3G~йh>X&m} 'zy0ܰ=҅ulxY}Wn2t'8b$'qMDNOo0ֲ3R Td^#=ɖػ1nCJo]ŶdG.[Dzt ﲟ2#Fl'rNEu +>^B]&6~u< JbBՔu!!![ƫT8+hG%ퟰP'M^]t#H4d#V@/Q3 PF\]. ʖ08 j }hup~!+"fg܅$}݆ܤ{܊{uPz&Xdўyēk-?#-WXWP +,Âj>3%QII?9Q6+t}(\Q"?Vqٙ~ιyCLCM&"{< EءZ)(HF }9:Dƾۋ/a gfy]JL[XA]*x&35}$8Pi|icp`q< wEz(9\3lKРj7 *`k)Dt1p3tlj;5)**Kp]5B }3+5V"9nNjU'OX~CQp !$@εkѺS>@q* Kwe`H3mFI*  ]^i^n.?u:1dʡ_ZP6FUJF"ݘ~[w (d.]cpV°* F1p1!;2Bldekʲù b^L3Sy%!a^U~͑.CZ:)yMRSOG9Un@I F`@7P Pǭ(L~&;_0TP5~m',A!'CW#(S dO.U;(X7[@d?dq'.TAZ9,`R;l"k`B.FH RLNqMI0FU!`F[?x"#j XwN2hJ[xΪ)C?{QbD\5Ar5 ў ouH|T8a4úfkϻ(5"c Ο(.p)1SX)8~2#-|[?хPs't#.sZ>DnO$DB`ptiqƊX&ޖ+WGO 9+Y&I_/`tl~' ۣ\:"e&~moDUOU!1@o~?bJLNu:α?X*Q SBaxw!ZHK_N7@mXymXGT玔g]!Zyhl]FhONR7 qG(=&E|W 9 Y8CzZ:6CLKj)]&4%@kJ<$S &GY#r詼Xsy|#x+GX/6\z*c^ܽͳwLsN£WhmhapJI?;TWpնХ$Bov6&SUMN"A|ɃZ(%kȠ kilfy|ؘ6D?B<0 m*kTRpz**2$%9H1 il5޳,CDSEْOFlje&R|iuë{ɫh?/]!ȅp8A-S(߾i{YXMsZS]ULd>:\W9&}ȉ dn*3qqg1Zx.yv`] f4ْ;أCAc K#3c`]'lABIbRvJ,Nd J &xJ}M16vW1Oڲk&K"3_~VøTB~A, mofOe/Fh2H8ύxli2L7˓)a͘a>Q?|B]NQoI[nj#bda'5[V3ٷl7ːlCń N'CAdx2^0 0P ]ug}{Oc?ȩfFt=|(B݄Sho=p^)p8b͉jeTcd'{k8>"<h @H~$mjuM.B|c: fv|ߟG'/{#ͤL I M_XCS&@ 8E`(x(2,oDwJiߒ \Zh) TgzaY.D`tq ߵW -vS1<WSi8HYONVT(~<[2SQRTzі &`hԶyji >І\I =$` P!N }j@|J>VfM, V ;I]kk\ټ"%Ww/JO24`aQڜ6 X/<ɡbsd͝9R!~P@ ⛐ G2 C3V'[ڀ r-(l{3S_M )I\<& JoV^(\JzbG՝bŹEUtFT\n |N "{uMh)ZQ5tL; b4n8-9UMR}@-G,h]P\%'өMިrN]"KjH'΍$2e/ɥu7,âq0q\6Vg]ut=Yڤ{F ' ]v_1qPJxK[^\Kń3tr F\NJG|Kn%GC14O'e_7Xe4_7G-EmN~2G:Р ٓM "d*Sǟ_O8z u#jdj7Aʫs@>~0%A{0KѼz4"ij=79EwFa 7Cɓ ;!>} c yly6쳬K ~A 9yHEP>Kg2w)@ ઢ.CT˓7/1ԍ<^Ƶ,-"GP!V[Dy/dCT2a6ZKx_p&m_W"LzC4arUAZuۻ2^4Eg`1xwi~tl"^fs ܠzT,I(:n!SSՏ,zU6LeozԵ7_WmxXzt^P2R ;_ne53!zb"-c:<:n*ӣneF-v/Óɸ%O)g).-CDQj53%_ڽdeRP&Vh49cRIc)s|Xl^ETa-_9zK[Kpl#+)5cVMrh"qw+B2N/f;dhL28 $mJa[5)w&F"(b 0]ǒ3QkTv&w5>I u'߾ʨ.B_"(eΪC(jTO黉hʄJ=g;D|ܨ$46\R8}O xVrI# f7P0WmdAģ5.20HR 3dhĖ𷄚{54>˥<}ȥ.mwr/,aŸ-e+.Ccu ՍU&Luǩ1Jq`YЎi>dQ5;|L2}KbrNezLE͇(^)'t*6 D?{,Z"X[(7PqEEnu ;LIilq˵^7; l4LPkEw{O7 ?O y1UR2(I}+t<"H\e)0켩>u5rz{s9;Zxz?dH^1fGּo/y1i]+5#R<~okQG[/;z|T*lpA&7AHJgV4Cob'/h<^JK=/kʙ^f%iI2,'\oc8wMarA# aJ2S{>ߛkmɒ֍5*M 36pK [gi!)2Ln '&([+EzHIYg`=%JB LLcRЉ8{:{-U:?Ɔ>5A`v1q/v^RXw "^ zsWa<$-)I*Ԏpai$&~)@߷͈#hb%U}$Z4칩Je`Ot9]l%fNT-bui̻v]P'֧w#k* :(f&G`sȼɚ5a(G,]- 5qըLy^Bi@J@tN5޶mA8F[_\X*B:4  z[% g%Z`f>9O6vTGkuIڏ4DT7U#j.͕ w"](j ]7H^/['cHnElBP>͏iԵ!6A !>j+Ayc'UBE:^ve`*4WàF\:K;?Lۛ츏VqCQGV,);YALQ𪩻L$tkޓ OIO"F޹@-)dPy5# fg ~|7),^;IiL@K"'*\'V|!Wb47CURNN ChOԘ GSF$64_*)5-z%VEzP-ylVLRJe^(Xklk2fb}ܥ{nu$RCZk^Uc%o^ڳK' :!IJIpe)w=߼pe6Wޢbdd ViEf"T4'璥coێjp)Χ~\]qQJnbkI@ͨp=RXL%Ȭ'^krsLrѺkڎS6n^@]PKf-$T'C }m =^kD:ˉY I/ZvB]GVp2865fl: 7EH n\ ?^ ?~< 2!RIN 0N@aE_י\xX K2 ;܁e&>=Q,?r^?>WyJ\c*3I} -8o F=@Q;Н/Ҋ&E&;shhD%[!Vw>t\fAJg+ jPz 4]?"vL!@LjtGg9/ STicNZV_D_ءK?fQEݲ hnqbfl|&:>y5;/Y?6Sq}a@e;[74:$PQ&OZsR? Ǔ[}JF9LlfY ZpVEzZ6^n`/k OFzhZ.nG 7Yy)< F!L=Y AbP?y5͊ʀ4cg( =ϊ(Ut\x2O&til+b =T?hos+,A8ivwh܂UStDR}=@Nl(@ Q{jc/%=7RgE|$5P\:.pxeT.]SbJmYrRTk Nr~:zR-@+* ;*y3*G?{.-6c/YJvk]n#q,. =+Ŵ!QA'H6ҟhHaH vemq2O ۼMS Z?_4#1#'ςIHejg:/DYW<,K@<#}28:xW푣h\e9zpy,_qs٥Z뺪2Ea9! Ĝb!'ЉhsY"ߺ vBPV}Fb8 ,<ƹ0o肕V7Ͽ t-S. >`IiROB 9+4)4)P霌l3v>67zux!u8t`i=Ut6Kc`-C"NQ6 eY,Ng ̈Lngه"i=P{ fl=Wt2ԇjTj[3aMp%bjai],pqsQ"/{6%(\[@c%voo2yJ}B7QC]}^B["8-|Vf-'⟫%:v[1~Q 1R07.fp_qT#_[ŧ蠎QƫMPx{jV2>5ATג@2MyK$˂.1XQhV2َ}9/ؓN8W\+Kԭ(=!#1(z5`ei49U{,Bɺ"{_a.bQms{ xm:\+AOh1ĵmy\NTl{G{$^-$O#:} /`|JqHq*y}}j@ɞi +崩>j޽@!y+;!>?:@#Ʀ )ad!45M{w$~N۫u7zw//VLPrv٩5ǮˀcM;XWuxHd1)I uK;S |l b'lXޏXTԡJ e ΒEȡaI06BbeS@\Lb;^jʿW!(.,.{\yrH:oپWJBĠݰgGM^a/XkF,O辗*hsykE>36ͤB|Ս+2ܦNhu-f%U- ̠ r)7g1%kTq 'K2t#ǼKؽh0daq ' `_G GC[j96$pIތ+Y׋wmV쨁u\%uH;sL\&S]kO`qR8o3lΟ„VkCpEd+>-&ി0:MAvOHcm)@BwŬ75l)c-(7۽3ʈj՘jca{x1_A {deQJNjF>lBr-ཥ +<>>S/ѓŏֹ9wd_S;&t5}{UꝲBTƋ 勚9}|wLHLI°XMXL1^]yĉȚyTvia,8%Oryanʺ+ĸ{% /vf(r7gQӆ3XG6(d+:6^6YnpNfb/ )4pm*ɖjRԳ "OoqgPcTw@ė3\ٴh 6ЁƋl> nWvPM(rB9ǣƿɟ:_;# >>G`h C6[ ^)9!"ti O[ b _NP*dc3(pfX4c.ʋ-+X r\x竎nH0!k? Y[Uhj *+4ђ!sQf i2@#_>]oڃΙE$έr~8ʏ v/Kb!|{Ha' Nλ ?WQU+oujqp/~pD8_Q&2hL.N `R0rv Uwh-@K03݅XvC,s+R<ԁؐm64zU __XtMSVlHLuvP@u˽7dY*H>FU}b!;QyZ,\iD& H?~BpL _mfV=ބӛȏ̤ug1ʶ3+fJ"^KLV(tG *z. *1'F g1g^@z} PG_Unj^,vDZ-vzrhݤ\g$MkT2S'}}bFD p(XL$@Lo!#\!|Ma聶Bx|swk ˴(Q(GXqAς_U>>eإ@{ȺlIƃ*š^;ߕ8w_hE;zY'$NUh"՘ ;f lFX,R)`\wי^3󪰘SyƒmgjӞ)<`]Tz6O>PPZBN"Cy6W\&l6^7;WiRvJғ|H r>5G{91o.N&2ݾX@Wn+azU†nkk(87f["6Av7N:GLPG7 6~F VZT\CHcG9+h#׸πdyqFӨNoj@Ňw PR8/9.}?Y?7f^xyܕSUl*M(ۋ{)g+VKeD6V% PHx h8IB^avٖE*5BPQ {5WЛ{)hgjrEWc6L'HLϐ1=gWjHjKsЧ5x盩 {}0t:1\% ,3+pD4LO+ /V#7 =&bOvѸpMd;ܕw }:jcA|Th q~LXJ, ``Ck#D)!{L.F='ꏣ#=5 J L|T?19bDFJuS Ƚ/5ZM "jv7K6KD?׫icE1Fr/ /U~?'!HEo!g bZ2V ga/fִ5SzQD 5 vgR!2žB T՛~n'c-!`x}LίP{UŦu:gX Գ9? K|}'_sWsو֚wIh%\'lDPjuslԻ$zң`df?pA+0Sјȵ NE(1wJ؞z7(aTF0?3]H8\*8E&xei-C)~^c;']EV|Z5R:Ν@N#`8+h~Q~wy[~3~c>䳿DScg< 8 ǠkWơ| ;EĽKצ",+ Ø5I>>E%ysW.s4ivt;J%KAL׹+W^3X؆yDV.CHj f0 sktW*zD9Ik&`*FHK0ܿWx赲!8{QoQJ^y d%uNeTM[yzHe'&[*hu&0/WHCF;Z,Wx2BNQhaA`{'# _"ha8wm ~V"pߥ!Iض=<-n(9"e & z @tQsKQkXOU(r^%RJ-4A-͢S:M]Ds ;RA#S|25p|Uȵ4̆am aF] 6%FX3l:uN'7MO\zTg2rSDjXg붇[鎪)xacXfR@WMWә:>j |o7vzx<@̅A83%Pىؖ޼%}#U :Ձ2iNv?S?vioh`1:_Wqf/k4"ß'@{߲Y|꟡߬-Hey\my WAH=S0[c >Õz HUzkcqLx@)fvsp)XXw*wC^ B^kF lʜ$`lOx&L{#q20RG>BpsB:F]{0>)~ *P(u1*|#a۸H*S7w1F ̲Ԇ:# ߁vA:)0+"/.!Ofؕ=:|QUVY\_<+Kܲ( |p1mhFbeEFx #w^&D/B&_;,Rǹ(';F&T5LB+vިaм_Ph"Qyp%ʣF=ΣXATU5$$:-!'qţ7gYhkpЊ=+XBn2iCRGU0f7x΢UXovP_S.a {TUSGeyL }U#kͣ'.EhV6&rqN65ؗAWZHtE CRYvw%mwM^J*emE | '5٪(#S=;rw\ŢNhO7ۆItZPpp\a>n 7dC 3DA7T^VfbZ }6ŸOι4 '6RS\ Б!6)辋MYs_#L+7'Ii`h4؇^ӚC貰,W%UL@m$ߜ=tgPcٛqg긲K<ܸVkbo ѺyۨmlV=w{\9R G~gp,BvNUutRk@ܽQ"a`#*|+pyrij9l%J@"S[Gm.*:/cynMwSsW4վuS}㧺(c \MrjMs n<'q$`GO͛ݭ 4zN50Vr!a"ʿKyjJ]F|NZG܍yzD*/G!Hl* o9mh;}:wA6N]@㈄d2Ϊ^kGg -#Y^a˚?8hRK?Ok@\?cwSf[ѴJ%6쳡Pހ@dLKuiqat/̪4y;)ޯ$5|#CVc_Z#̆La ̳jRTr;}Ťp *<^m_YI/ᓊze}nᴐȺ~rbk5 t!>ޠOsUP(G0\ nV>(a x>{ P{K'#qBuʕ _ݯE9/2+Ͼ5*di<EƚO`? DV#?3 >E[,#kLI9 dkj5O 4 o's%8+IϹBG@}\KGn@P4{ST & 92-4}BP9 mbY)a> aRMl/|A5cՈ&BUrC/\2$5GODܝ@G6ÃB1y.߬Jo=֡s ?]=1WC̈i{##r14dO/R KbQݩepzL2>Y$ݕ'؊OPnTrͦ߁+Pmo{}1ҚwzS3-`T-7v%>wӚ殖BGk6T=elL.#*8~ocXYlڂXPImԱ¿ 7d42'a2` 5w̺ !2~(j͑42$CBʭ ?px}{O7s&E6>hELSMl5\D ,Vʔ}xіZxH'ۇpSa+3:y?樀49$zp*_Y[e[Xd b_jɑbx,nhDeTAنPr,Ex'÷p[F !E) ˦+$'^POg2`.\ Ԑ2+yEdK9]xx@V:\*gSq^@[HhKi@VB6V~tFiEKX*Lv5ŰR,@B^vy)S\tecQ*S#o~{ڲu@ %e\ 9.NC34nF J>DpZBbegr!BYJ%J fTDĂ7]20k'Y;TAS64ؿuuJIJ(uzחV/l4AN{26]1XLˑ&1A{JAU 2VXUt.T8~>$5.Tȏ8خ%-6m\h0"mW&]~iA`((%0щB(wygȥ֝N5ٓ.anj=pkv4jnLFfW_g:`LM!J=~[` _ X2J,EyLe_jL/+ciѺ&gX/"1YY|>#|)s1*zT$7}=a%}My#=ZN6Կ~ͺ_}4qޛ";+ʅ[u汷N!Nœ!,ҷ'.%~o1 6+|6v^,_Wm ] XP둷!&$4?qkƫR8hEb: ܞA^ZZQ@Ev~ߎFڣ"f mјd69H߳=Tg}pϞg Y elV`mFm#Y?W~T&?)qGhmV-\E}G*<ꨉZkLRN,b y1]V!:1I]4+"ۚXt9c>KUvP,krMg'V9T76m0YeNxuKjG 555Mn e}ʺtUx q(!$jx*ZH8]ȃIcѦ Aqȡ\a9CŝNU*'KXGW *UmfXJgFM= "@*"9l}N3oЭnR 'w%u[51NGƝ:4ގ/[WVrqM dOsn)Nmp;6([]$Oq#v:hM܊VQj؉@Udf-WWЇefG83J0Nƅ}PZyVc:ߥpn?]dIF"|/ms}vW5bb3)lRleؠ2ɗTNQi5qk`XneɞW}Y.}bB0p_3v`J՝yL/'W1tӑRq%M/eMKCH,}D?js_z ec# %2ݪta=R=/H΢ᑶw*CzJM7fL/o_XnFTL nx þ)t ǔ5 #b iج(L? \fcBpWIF Y1%q/@l3h&ى$|z,M 6^!V!}Rӏ-R' Z&Ƙ&,N(6RBoΧ܎`ta۳ dV+{i t_:_{.|ob*Uߛ6_<`59o7H?Տ96+|k`tw|i[,%6w\) hæu=glJ^gbē;릢홪%q,(x!rT;~EՆbI(bX'jPzH+⊮HzWx* c5bټJ%QgB+UL)ҕ+}A v3Bk8V#MxwJ&~nɸN4C`KkU_klQvz˓YFJh0X6W`r1m)X7Bݹ%8%-/'Nb̌Y(7'㌭וt(9%l*cDg(!Ì>ϔ&reA{ =y S0'=Fk ιL m5پg߶ԛV9v{\_,i~NDɾ7R}ddo0')597ؤTb2óXF?K}Ax/:Qbt 4Z YX.MIVAΔ dJ9?YD<$ai ĭsD*r%'3AE,&wß6B~j\`{.]fZwN6' à3^' Q>6 Bʼn%MV-DTWާTsaouiw@C<*l-K+kuUhcJwKi~+=5(aeZ97"ȯv;kiGcݚ,6-P|ڈ393ípzgtQ_Yd]F.ַBHH&~vz C"Տ$k|aqQ='>s?&= *v? !y?[祈eĪgGG%30-a8evT{5=Gnϔ? %1yϜ7Ǣ_.?DfI&!7Ќ'FB?w#>|Kb+Z ?FǝɳBq'!ܐpb>%rFؤҺTchȤW*!(IXmH|#_JE#GBD*&-\Ps0>i̚¢W2S 8biYUX<<&3+_' C.B<@Cw3cҨըC`pLdOrBa+IʹTaqSSyVezb-H_q)@/7&9^C,]^} D8\ K g<]1a1n( 4GiZٷE38}[oQBVi}J.HzWAl2y9gudAǛM28wo@(|dBOSiV" :æB(iYJkoS.DO A*i_wPv||F:L ^Zui,vil_Ep[GLmMf?Uw"LEg3'.3ؖC BgvH?cu7 :$ _u[El]?ݮ?z w|$iJ`C)OmU;1|$a< ó*sR.,$8u2n }iU:CbF]l2F.0ڒ 4)rL4yWpLxOUCXA|wu SV3\Qu.ZDAT< wDXS>I0XQ {PGyR(P:ٍvڪdbPL#!Duipyb]bHaYl/{Ez~r%P[TV zߩʭ0 ל[$lZӕ5G;o &B;::*|& E 5rZtfy1ը/ںո볦HS3<UʥGuv?i7֘^fDUTf<۷!V2$qʢ%㜚˿>K= -WEՠ&#) (;q:P]ϒ7M\}?D #dLT@}n©\r@F_"x+S nq3M3K5wo7]a8 َN2 ,Q+2͟1[+-BѲ&4OSJ0 1a]x6&s)OBQ~]B\2Dmy5CJ;q]qƦޱK«?_ˬ >CE3FRO|71XDgM5B&xu&ſ&3]L' g"6tMrQA/h'R!MT;"Uҫ! n䡞mϲ4dszV Jd C&2QOJg}8x!Ԑ44{nؒ/!W'ܞQd2ne:"+ x9'qiWj<ww!L:31z.PȄ10& '%jnIAմU}T. :CR7M ^㜏lSFuy$ j]hYqQ*DU/ړm-R}}!QbIEH[Rt!c`ꈢd-4<\q<)JA C}2]%no Pq@P3q,mBqpʏ!G^tB{>1) ,n\:AnRr6;]J΢Qeu 5)I氎Q^ӗWSק$솗+۝Q=z"l σǤ ľD樯3Nk P$*v- E¾eVZdEabea1#ؓ'MR&Dr!AKx }ddaU %w>+&EY`&wб6Y1BCݻ/* s.etVERSy@ t$|MbaӻNs$6뾳`NA:ɘWxN@w+ ]OH7F)ܥd:^x<*n = #&n6k=[n;G]uUoD8B>О%KOy`Vpg*aHaAVc>SvԞBÝ},odoE!!Vз?;^PJ+:^UNٹd\UWӱU!n Kn+'i&`#S9 )h(㍙onUROQ%@5@%\+oKR$;_Շ;ilγxpv>@F^r"j_b68D8 *+nus"GELG*H; P_gؒAA_b߉'wJ0ը*RҗsU)Pv)w˹B { Y IǮVFkDŽ݂ɋ,,rwItǗТY}iF"b硧)k-Ulb1PI>2걪7,%OڮV-r? e:?Elzv:5Xmq6t0 m ҟ*$ʜn 0/ +Qځ^9-Ҟʧ1,nc-Y-E!ԸvkN۹_6N@ųRc=y/2YRufcyK 9e ߱'(^8,55|y_.24̈́C0A|ۣ1V=GUClb3­ɪˇ-JȘTq@p`$Pչ]&oUD_~U/~Տ.@cW#HIj r(Hqqm-I,Ç ˅l>CDo' E\ˤ`|'+op^ݏ)xVObz33͐61>Ú#`ﶦ@,6=A}y2Bl>[t锧@:-4 $vLlY^?4^w Τ!R גol,׼DY= 9Nzw];^ā(jpFLtSm+g؉{:?/?1G9XBedTNMS& _o)H ?Wx =hQ H'ޙ|)EZv l/3c.BJ-3>]ϭH"/-ǵ(>:0>Fʱ MkOqA@'4_X^%^=JTGg +*.9¸#B@Xsl{@fL<"܉R9*k&qxU}? oqi؜+C`qZ9zc3䞲r!IԾqÿ}#Fm3r}YTh 95؍!9Mòʵ @R݉YiS[# ʛw.p3V| @DY&!a-U ƁQ'Km@4РzZe2]8)(qeM [9N xP~>LV ;+7h3/"Ĺc4Dj`+9DJ=;A+'ޫ}#VPAR]?J %¹X*', U<HݗþFيŸ*V=kh4892ТOLx-\ n'X߿"lI^1H\; =LD$Y`V48PthI/&m1Ak5vNj YgM!\ Zoĩ@Ih"Ix%Ց|ܬqc}ux}Ѥ~ɍ mdNT$-_?BB\BsU+}Ǔa,r\ A ݩ94FީvrYi(Mc7{i@jδ!xJ{Ff~CJNJa*Jӯe!ԋ1"/x׊.hhRzz^|x]a/P[ v!%&q_^묗bd8?|(Tx}ӻDc$T^dr>Bp"uC&H[!-bշ5bc]yV'd|bՔ4= &ͬ|Ms%7߽\3w8rAh/IW^/ڕM/wX0+gzlC~T֔sW*e(u \aLTb{ ZK )(`~Ͷ 3ʅ4aF!)>7fXeJq81Y!FA`u%<9lZ5O)~.aNC>Bvyi7bs#ucx[_$+% S3?rRlKZi]OjDBb"_Τ4n]y(z"ΰ:VW ,+ytzX} FmoEȑ:]Ji_{+D8Pa@k BLXȚ$*XBn<6 |ާd,2:rFp2[kQpxY') 9TTkԊTm(Ab+3E|sN԰V9ZY99אu $.(p®JZue;X˽_~*"-SsphȐ?O|jIWR-q.`hd.'O"s`_)G_$yF1I[#'׿o1TN%1XT{|(-z2qvO 5BAQV֣^. Z!Ĉkt: k5dxAfn:}dUQoPLj}P^ttpQųP5L4v{{=RpѝNh7GHNVlK7Pמn5lsoA43S43ȶBSٲ9`>mr)-qȅhz!vxcWSԕu!;THțX^ w4/Qoz]itIi\Ɗ>5_-s5B8D50©[ 訿}; NȺlT7a,n|KFjUH6 eЭWͤ`3զ *ɦ& 8ӻB#\^0%鯳}UBLak~XCLsT"4>T=$WTmV?RH񙪢oE,k/嘞rYr#:r5eLp91\9 _#2jޑZoDZB0|L}q$UL]N5OblIL6U1cŀ,0՝S?ì99I["QSV'ԋ/8\g~fzdզ΋1@lFPNKM18G \5dsC:xYn2vW@uUOm=*9$A 4>rO{/%a f`Qe1'aؾ ߣw"{9Os%L_:ӼLu'\hߊyJ5f)ƭhTZ ď1m}00dIҖetUqn +mҐ:CI,/S3'Ø;6_rFͮF=,u TI+R0S?F \破z4X)IIXQ)@;:4IoB/< [oܪIxEY(`—q7xXG;::t?OaI[eMtb?V)=ޡ8,ht%q8~~kYP!dbP!W6urh95k-;'`L CVk\D~([q`&7?D̶^qxx/'y}*9 ftb.FjT&O<3]r8Re OY;j])[.wƣ14lА?YÜ`?Xn/NW|U.PSX606dICǐѪwL`G3]B&KNC#D cG޴9TLep3Izi;& 0|ru_5gzf+>ttvcggEѰA.ILJ5ɟpǓ HuVc",`pX!ENc8_Ei9n2eN}sfυ^BCj~æ=ٗٙ*w[lQl+D @iy#RDOfnE?ziݥК{3S'xHܫt(oeo` I[bX,+jI7ͪ(eww$X^у= pS4E_:3N(9Ópn=Y0xc3[$D4n(>JpX%:*VyYSzCg= 6(^|-.Z~~D(SCh$~U$V2bf\MzF䘇-P U\ZQ>{q;v%t36ovC Y`Ra\v+F zgĴv`-9ثM(+P"oڇ ܀ny5 ATA{"YAZR r :RB]L!8su@;ZʴAg~a,'?K}NOި{_ozKq{IVk*RpB!j灻h"Fy!7 W%Z-,u:qa^b[(h$P@\*OG EeCW~ϮC[IxM"yo]ɉ gݷ,x14 7Ήۢbq ӆ1.8^u>'&z&>HNݤI2!\/K|s@Q(%>n'͝=)_(\p l`J`~Oq@bֲ|{DΙAEI1қYg8P:68}`]jRӤ4s6bh̷Zn.|},CEpG+hDQzCٗp 9k;ީ'7<J܋o_Id, d`_#OtgC'OBR4!| #]T ݂S=AHMW>6ee}N\P=_3"^- (azJ/TQl.`jgZMd$iy|c%G$hA]^TFw.ష =dQNXлJ~b_s͈/&|)S ,M$x^'_ooxӢMS2Y>ZZ#*OZ$QE4g5Nj&"葥Pl:o@O& nGq1^vNm25xe=3uSވ4ksPfԆSS˓9썢ǵkkY2B7*!<5)7T{^Jw"O : ̝"T< 9\?N$nEAuB`KSZK:ON(`IB 3:-<~J^x*{Jj؇ѢkXҟˌ nP*YV}|em^H\Y3ۯ[f<|L13HF/Ʊ݇SGqQ 7K{tH!GX[#)!{8p IFG( JXRv7gf-/OS,:p ܴlZӡDԘw0"Rϸ/юJmXC\y`i0gu~$p'+be>w,a lB@|rL3eٍ@oތ|dEBYÔ[KR:ލvFԁR~OXG$f6:Tg"kklҡ8@kd-G}mDjVk_o0bW0J)Sjd9"Y}@4ud.q0['Qz2b$DI ֎lW[zd,<Fvo8 1@0!'!z[?# ؐH3G>tp]i~YÊnz؉NZԹ!lףI"TLBQ$4 傐hE,w>[Iz&&V8B )rU[l͌xPǖH^ vz1}63੿^KΫ@&1?+r_$`w  3f2DXX3),?<<9CK")t`+DIa\|E1a+Ώ~#=Ymj@=0{8,G]>?ÖD&bpo*"egvbxe=uє:㭽͋Q Y Q=R_@I(Ҝ䞮v˲e ,g@quz~/"Sf^&]ᨗ:5–p`f -х).ˋ@(`$ {O,W3 ck&T3>StoѭCɣ^A\3G#$#ah`2&Z**+ߺh- _U^99>zh&g`ʀaC{ҝɑ/ JɃG&eZUګ)x#ݝ7˛=Cj(}ci_(nP7b-Q"h_Sd-Jˋq̯ڧF = $ _lUsYMgdS/Q(DqЇ`wXu d̹F>G]6Pm[ 5∦)qm,ł\/aDxُh!#FG-Y&Ne76dt&p!vSb TZײdUQBE,S>0y\CLkڀ+u.x["~.' ^/  )Y85ǭחVRiM{׿6O[I,#7LUo3LS m݂T'd># #Ώ5be,wx.ХT`Kwޏ,?T85'] C9ك0NҦ44>#ȟ h ҳ}pTk$QH׫'JF(s}(IAfQqkV\X$#)L-+T؁nl^|҉ z4Im|'8*k(3A՛ |~BdR4\Rj8x|XF Fu%zW1P Щ^6oԢ;+q淝ۛkW氟Њ52O1nŒ728+y+đZF8 $Sۨ2 $ܪ9ɘJHG)/1P. v( ~-̍N6Kr 9eS zpΚ׺*yoX lbHUxv <^{;IT+ iS DnLԤ!6wpq A@L;X5׼`],a0o*ªR0sEMd551Z=d"<\۪2Ђ^Iݿ8#ìocI;#+r|]͡2cL>#E| Ҏ1-`po$nw!4{Zb?&I!;QU iO>+vtF4JECW9n7"3龇(yŐC{s#~d'9InTLJazO]՜O2oQA']n(B˺]98_-O7Lv `,)\?#yɥK_,VS]Zzva-QӡwO aYuX<2 <|sB P{x)VYpu :f|ȑ{s839Pz3‰ÞsR"!d7٭Aɝџ$/2UT 1̥mХjh'/vG]CT޹} `IEұn䶊%u ST#@Y1M\2:.+&>+i؄%폮͗&@dbhE"ulOΛ0i?v691qGka`k59HSM+x45w;ؗMYU;84-F}’Jz.Ni AG/}!T O+tELu7 Tk깑E%N>ꂪ=oF934Z9`׼D{Ą]`|Kw7%h\Ad&byIh_)E O ~-j=Yy(|Â1B Zt>{Aрkⶃ\@D2'[)_6XnVEbGm?60th{(4u먫MZ_$O* &FPngs IxXG";k$bjIn2F&qf~ bG4HNA&6hA}X&= ,h Qp79,yA͈ ࿓x&"n#Q P> R49VhL4|.;vG$v<ᶍ4 yoT)`$`+d7 vs3$zB/oRUzK*~n!HF ZaqpHw7#@&I/,/bS~Ç>U?ѾKփ};405G 9xVĖn!{NB'zq^RW&'bnB Ų%S}ZKf|lA6yJ4|ce7W]\&WF%ʎmZg,c$9AˏQS@0UAS1徫fo^.h7/JOő E | JG-߄ BuBA, :rx/k@eZ[hi 6Kᘬ9a㕸uSN'xR|'MHyI 4Ew8Y'4r€7K٠9"0ħqÆ@X2[$.ÈT,5ލ9V}D2:/#>,@ζ6Ќ 5 / s֝j-i^YdHǹ˵6E._=]26~pH8vԟmt,-ğGRgWOoEw"DGOBx[{<3v״!$eʼǃv y+͏rN,·%)^ MYԁ>&Y3} X%<\q+|lK-o^5(*:;"n"ދBӀJQ֥vM߆ 7&\mw)LŸ0UNKTn2.MGŘ6-$msu-n"kg/bu3s,\H>y_rZ+I+aۈWbƉ]E7 !bTJ?ϡzPn~j{**aOfUQ&P.)D_/ F@&l82kt5'{E6;p2ʏ4G+t?]+o$E4͠BZ$ Q*ElapXc`M$Dd@ȀȀ)e.|ГسϜ'пl~TN5 y<7gO^٦VI&1j@ ; mJ5c[AnC{\ht$t%-Q-kGInGSuL 2K:AQ.vc98e'L~K^› ?|f, ^UْN0o]":Sc`04ٻ`'lkSɦ%[64ߙQ#"!Yoᆴ^h~N;K*B[uzV Yo!a7 unϗ 0?š֬צ6qu F5뿘,ɡ]__.x7)t[EaD-†] 峹0bQ<кWr71Uy<<ɳRJ=cthMRi\QDv?q˾LbtɊx|dpxBK"y`,3pFN!OF0~⦆ANGʙ's!p q@ ƛBqH^.W9NrӸ &5D cqLnQNǬЪCl{ C5iAmF挼>|LhOus3ƼC p$iRe]SƩtM(W1'!q3C>NGK.L6yqKǮ1 'wD%b3W-@wJ޿$ߵiQ^hp2%#jn /էR;8Һ6{Cԑ澥`*` Dg^-||xHOxc(Y]a4ify_nlJqe))+Ite5~ԷGؘ;!Ի X\|.-ҤI5(jׅJ5 WX=fCyt,P*Y?KT`W5^ G2GyJ|BW +7!I^4FO.UHmFDw2TI(HȻH(9k䜌I:ú9{W^%*(@VP(U$cm'm~CgN{c^ZB"M’ceS6ioz|vhE]jH{m uH]±,t75Xgw1Dix0B!JNE/3a`*Nw'R,"e>c|5;Dklmc]$)Q.,⯐6*_)M=,%*A~PVC3́B%$*R׉D%].TML~8jUrc0q -wY@=_{tBOV"T85F(gQqc.))#ܳaUf%,$€1Yo%`="UUW?5E!+ &'fҨYzH38/5 Rc𰦐XM=!.Bk^.cK ג e'^k?ChֺJO~zs02 ݢ4o; _8PBWWY>,>-_Yh./54߇*v$u+ƭJrdMUaz~ Jmԟf쓡ykv9wplSSDp$RoBtp%QiO1(u3{IHn^F-*Swq|Z7[*觷U6A0 מ hV}tNIʁȯB)) KGd$ l=IJS[a么`#pٸ32c$n ]:\,u%(ܗeɎPZD\WugO8/X ++WPK4 E&+W?/l-#v=MWO0/.Oj*lJf&-IFjn]%b_-m& Cջ̥6foz2yX\&Crm V0_F_vX/_?bcQMi\م0&ӭQ}זۿѺ^F3Ǚ7Zsj>$4(r +Iv"j+Kk:I{?b2w2So^YyWVnZE6]rIƙ6 #7v6h ,' ":Py[ }F0s:Ҳ?v<Tp&jn9/ ;E 9nnpT/l$ 1r8*A{o]Ѧq˺̑;[ҷ"2x|fG9I[0{s"C߅BWE#kO)Aۏ/P.!Qt8xN ?wٷըC  b3gz``H]+Ih֚BЖ x[yp=ܩ[ZtOKZKS:MS+O /3%p*}bKSoI_55hh0?}x H{ J(|o{W:Ȍ=F+fY>t dT{#b#$⿾DNXXJnM"MK?ؿ{ڶ9nc#qp.Rt$I &ލ7۽<|ĵvnz_UƦJp` X;ƍCm{'tcW楻:U*b@;Y,*sx/?[b"/q>Hjb{XbUYPnbW 8 zqevgrA$u:Fo:Gy8|qRRԬal2@Ej5E\ .6BQZI.V1:RƱ,1<Ψ|O@BݺǪOCXPح`8|IT(3*-`bMQT]TJqf4W[v?;%ǭ|g/WS{!S*A*eӓw%FN^ ;U )H-K_oU cz0E OJT" S7oމpgf3qd׷W@t Wtz]n%'%U}uKJb1&&5™) u)iqq~X`r 3bm>Lx) QRMVY>a 7)i~Jw1g=xpƝ`,ҋ1*)QP"aX 0l1IK}U\FƷcׁoXOp?#3]=B%|]gazg|%:zAcJ֞)6y{;߭j ->)"7l$d& (H jzJ<س kvC׫#{dO¾^E!77`]Q͟=GtJOc.y{2ytݽV3Z..ua2.B IqRZxДua,@QyωҶE5zb 脬qPeg)n)\Vv3&>Z"I~H8X:snO'qoh|GO"LE͸t- ga&ƻkB@;kX\PpFL窫Qҷ6bDiUuYV9$W%Mx_K *صAitB\|c욄 BXΆB [Y)%L#s_?Ss\*CV]$7@il7}4l{3ԬaD5c&P&V[ȢaW|lGJE㺥):R$35اD##0b@sOwŠTOKIvZP׾_|dKE28 (09bu 8^h9s>UNY>9!I@e"I|:\21脐0v€֊'jir }0ʒa9PtU3LRY<@b8:|5'&%v$ mwZL$9EfiIU2M"{ X& $ci/4Ȭ[a'%1>/fHS;UYJL&\!L߱`fǣTɇgf=2(Ur`qLZ9a ֩ uQ r2ni|;,Tz^>g~DTQ=?`?f׊frg |mƮ֕8E%&̪M=GK2}*ɂM*.! S.;K&mFnK׀ؖ Pvd9 .1ۑ3&dceZZ޼7 tM*X#^9wjB2F*ql}g{,I#ۂ6WZ<@뗞m-bw9{hQK#~%f {[M* n C˺flL0 ekKG>'XݍuWpW'R 9LCrެ`5衫Q،hԖVg,D;T`czkgUj]D3X yDQ%gPvr7\ϯnF\AȱKn(f<^j8@auT(#p]M@~6W3dɥVLhzqeٮOBp!˃P?O=e1 ߯2spc/MjLpãw8Ov=Pcy z-T*d~wX.̘CnBHT?|Eυ,i,:[d søꨴ6uVW>*uZeJe+;u%4^< ,ڗW:6F?P^'K+yGvɑy;p":^rbg]Ti#KI=9Etk 1!T%tb(N?h"(mF +engDQ=ʗ)W3lKfDϓ da8gan)א5f;F#|tAQ~.MLҨxYD6gH|6QV?@!$_(& '|-j][K@fôոcTħBV5hKM(0\X7 IA]/#ri0Gfɲ_l\ Dzm-eWh叉 TirʊXXe]E WkP.5>^ HeO30m]v7 aevX#W19f.*; 50 B(G\iA!jNq4B6 @1\O3n: ~ߧMP| )Ẽ'dM}D4A =lERE+jePhd9h/vbpD:' ׬X߭.JzdY=OB-i( $(5zJ&3 ` W^uf"͈y]Tu{@^j>qitԦ̼*q_:4M{qI7-q1:&bTBe?SXQhoZ<褨C.WZHU e;׽ɮu{21Zru/ U֛yʯ,eUSpZ}8a{*18 + o/F?²3KBR}";Asj\`6B2 Kkׯi$RѦB6JåBPq$ :f(Fy~a> +cC|J9ɭ`ޚVŽDiie$ KQ%u^VÍI?q{m܉,7$$Td-,l))UQYu |懕aDRo Y3m$$'jܛe !ϒon-2x{*O+ex!\ҳXV_[sy"M VLܸ͍;0~5,A~)'_պ orItN[޸V#<AFj>.8{+Px饘_x8n#<:=Hѻ3ϴI)@qϣ<9m0}*§|q|]A8z(=&!Y'`@gGVZm)×FxOw߸ rrYAiOKڴ'~+`Υ` X8Kwkc1nՓw{I6C|7ઋqk: DM;(z70pLv8hڛ.33muok+!bӠ880E`n'0&Oxeb`J2_&=MJsU^5r3oОg+2#!t,q O:Y Mr`92٠UL#ä̱{'yڲoV'qR@Y}$M2` oא BL!v^/'p`0H14Z86 rE8킆Wp. X-ɪȚN19ۓ+ͤ[giR-ePP)ρ`;\ҨGk?U*wO%Qy?5&0^ (QQ_!Ԁ: fXRc@P ZI!`v;$2syZ%-TJ-T:]QOq; ohrc)>40T* gp9byׂTsR'׭oFl\יsa-ka<1 =_nO/αvN%Lߑ`~NK4eɆ٭;]-%=]O@^14BFG]LZAWWwg:tPDjlx V7dGA%Rd;Yud&N8([Gn4b^tlMG $]R! .´ l~#g5 T*%Ywwb$mD ݒ'Z˰O&)+zk-AГtխtOYSY"۬mrK`NIM e h>3s~ Z!ފ<V+Ar3qeUJF9`!knK5xI\. FSaP`|+?s_j2_qd>Ŀs]F_db=A+p<>MXZƿ-HRzz.X5eêOG"/d9t畵Z5ūJ!GxN?)FŷJj#X뛋 K~ƨGvBL}lS3-0.`3#cĵpH쇬+:M 9oſj2q^x'ϗ2::[qֽ/^nC hGя0_j(OԷ"*1 ;Esgkno6ɥ7)}tCR5.L"ВR"(xjO%Xb m <~啻]jO|Py7p,'!lz"i05}S ת+R9:^Jռ'>tر]?;'Y.O K:>|3p}iUNAgg b]RFg($ֳ M.pXMfi%LTr$W'JxbA; wkIƎKί;}]ܐ:EB8;H1eԌ,[E9HuAeAGi"R%מWIJg/]mhpO72zx`MdBgSq*)b 7б 0C% YqFܤ}vʍ+ԠÝRFd`R웇8HXaF$9^jG3K ѧ e=f dQWǶ5PdSrNb0758L222R*LN:!}S jW df}WTxPャ.})_YaYv@ڳvs(eWG{߱sըuG "nu ֮Ukl_'ѧt; oRL-S(0^hND&7Ӑ|p&2CG,:FESl xs(+.Qp*ݭzPRg+wzM:r6#a^ ͧDWB* i_M2wR|<٭%`ݟ*p!5KzY (W N|&wb$;wux}y(!0&,VC =YBV$G~`\{1 Uɪ߯|lN%8Fg5WcŀD rJykAOe_ȳw~h=.c?z.ɾY1z9۬2?IN$fxϒ:VqsaSÉY-A7.Zn~$ӑ8ndW 0b`ɰpM{qRs˿E1EM \se@|'*!5{q/XfuMpItd}TW4 VG4Im`O#YvxYVi߂Rp|MC(+T8A?S|jj ۋTSw baԏ͵۵;+MO$c[{@) l \U"^l67nN&V|}(1 dsrm*Rӊ-ǘpNQs>e|uU=f54yj/D㰤~Oha 4gޥ 9X #ΜU@|лNG$~˻vd j͛6 GvT8#ױ|q'ߋwqřNfi,M)٩e½! 6% Rޙ2a5YϽ[XFj>1cW8Qk'F1 Vu66TA>&Kcjt\J9 h<n^֠ l_-,ы՝*ScOM*0GvyLy} 3z =`̧ ; vyPOk,aq(K*l_]6¾Ɯ;! BC$Im1qG.nt-"qa]Ou XFrs&\nixC.-COs0Z߉Nl:iÍ&BJGF3ޏ+7ĥӝ]9 fM b0m-Wi5†ʦ@bOÕ!%rSr[e0s%p}dYڎ(?IV[ )w9\A㳘j 8mѨıb%fA[m\O2|pS7fjؖ/$Zj5S {f9՚|'v=RU+u4lɦONGI8|u%|WE>9}hiYNw4VQ^wc\:RJ1DwI(w)Y&W_]H#jCمP/ʺnAJ“€e_N'gFb笫͔u@C$GF3p$S֋OU@?`# D 2H&aJl/Ì*+~iؓt]@Һ!Sm%\$BQϐl9P }y e*p AqpLܥmQ?"M|Cj5uW0S!Z*<ɰC-'b1I2ëؼ^wi 2#p3~=Tv#\m}‹d=zw=z,}&M^tU ր Ц^l'OکPP(p4V_|XZ/7u' / p-.ոb£ΈI Əi22Gx|c}#$=y9ؗC1ԣLfw"El}'İ / %"+6pe <։|ZMEK,& ej!pJƣ AXAtk6 po:o"f 9Ѽb[0X\Ӥ-O[W]>Խ'pe,`ؿ‘N<] +L< ϴZ "v%3;Ÿuta5,V|liZL)) V|Q`'I6l+>t 2kl.[7%ZrB T ^j k?^Et |1 G`MCYk8q/w+-P<}-$!WwwH<>1(!'rv$F54+ES Gj[HzM-cM"23N'D/SYԺ\4|; iV|Ppƌgսt:MKRo }h{+Fv0φ#Xb'Sɠ Sr8B;L\*pa؍7q֭|}[q2Wߊ ? 0{̿C?u+P͌Js4.ZOn&4iJ;!0R}\M> gMOdTKv(B|4ڂòzP!?g?G S@U} (ym?¨hZ4 rM8= O @Cvwc6"UWluwJA5AжxhR~g\uzԤKVY|ee˒}q/`~* :esmtfJWt<t R.bcm+bo0EXOUrMwgl`Ppbuɖ:Ϋ{tn1$|TPs: ZU'`D4 ֩KY!ͧ5Ϗ HUOOds2 U ATe1k"`ZϾJc.IeTӍ78Q7^^/wL{G-!%|!l~s4Ubh᬴#qdo"IinRv_ݕI\_ ɒ#' +fl9V ~Hu IpđscEb#z>XK4uGMJBMD7" 6ߟ{0o =ົr+p$;*ubnu]nfx^+i}Oiq)mT̘`dca)ƹrހSF߆FD#B5;^e%wOnO4T2:ū*vzk!W[ mnZw,m¦jb?]ռ3.&0aP=ڝCOIVh(mFS+ny&jNH 8T'v7RK85$/7-Mt>x>Zm$J)? P\ۯ`I7Ko$h-&Pj@hC41cqavxӳ ?G%9t9HzɃ랛O,PEJ{J=fҖNc5d3+8ż05'}!go;%S"ES"SVLkgI#FDt<DS4 5T _(&Qrv@]z -U5⼅]}BĈ}^O72nW݄^9"%?;vW-C{D %EY3ܪh4aDǍG>K? vMsU={^2V OLO2碰a2޴F1A2N  T<۩rwbz=(OXhf*73>,w$ q4cANػ4oNWze8kHhx{)mV:\WBg"/Ec'$k,Ra-{HkM?N4pJEN*uQjܭ^[k9FҪ=oMњ 'Ԋ23DY/N)`o#yM\gi6oMY54_i|֏cySc8O8vhW3:|r>FZ|[CXڿaq (u>%؜!̾oQxwCD^0/eᄰE.dyk_sooi4_@pI# Q*hGلTl1ioLk@Ŕcl%"c)>BF6 *ޤ'RH(.Ž̌p8HޔR\&AhYҊ4}m2̴uHȋV`7N[famaڅD~'࿯B{:5럭\6 -d$j/eFws8QTKIQ-<@]z#E⣖ ;kaǟbhb[ ⊚܋) #_({_ur]puj-%%$|~Sy#PNZpM8І(-.|hpD296- ) FԂ~N[CU绾kש)QZ<;zmѩ4nvOkQ}Mg,\i]Rݣ~D3{x3Eг] Sfg3r%Π$A:*g sZPiv`̠v eX[нƸb@< )@is5 1kx/RJ;|Zt@ ūR.ڃ^Z쐻'>{iL [::j" Lm eB" 58pdhEu_8y"|֖KɳbFwTYfXH1?8-8avm;I!c/RseFڏtQ koU fZo=n ceE[yx@cpt_4%L4υU bkOApƉ-BC27HSlX0, v+Wb^vb+\{t@,zcJ0tf|6T,ρpҴ p`E=a+2,3TUuvU!AN<8czE+_abu;<| jEqFF,!%t0j$ΈABT|6ko'/Ԃ|ۈ|$gbKiwљ?xŤJ( H"#!RNũ+w,r7BX]ނ\W)RVg*.Fԏ o 4F2+Œܿel=ٕM^;[T{>2an@]TFcn恡%"&$ ]Ѱy_:4ùXcP#~3 @ ڱHQ"(SC%_?\"dNꄔfҖX,"?0)g,B\]{_P9ѽ䯉Y&o:E."b \˧wgko&2.+Ih-FӉ 7lnLN&>نkJi谿@΢/jIbѣ؞׾d*mGfD"]s}Xޕ 3衁DZQf^, k}xm٥ v) F՗^geѢZøN_Ƈan٩}h]<BʠNAs޳"qI5DD'v5 _> j1 O׶RM[ɦӝM ~Y`/ͣU4 wSU|;3ÃhyN(a,]=F'&EulQ{̲}Jixm"ik5g}r5J\m>w׶&3o }$90}rZ`͖ "LJhv/xN 퐏LaE4c@$Q% }S^#hszmEC6/*vr\j]6YS/K|7mY"wC*jaE+̖IrIިb.JI C|dF AD\?֢ 4&cEv1'zWJiг ۪axޭd׋A2$2Ӌ4U]N]3׉S\џPOɥmtbԻ8s<T&>;$2VeD MTFw:ך+StjJ ^e2JHV0`tw 犨Ɖ-g=SA< v>\yufGAZ#qB) A*ڸyRvTn|Ty8D~!tzTIt$FuQy"Tn/Cn> C?:bg{VpMw$`91py6E݅ѕ|^D=ڐ*#7l\ܗG\BNy@ |upZ/ŗ> EDQpҒ* 1F#WRMIܗ,Fut gE7l~7 !Mk!&,qVž[X:2s ;6;m+<\V emwAhoϩtM?R8%CP[L"hK:ȩ- `m1dٺگnk'Yul0Sv/ҟ<™cY#`p+6Yq 67nN#j $7@ y`Ά^~l/y?x2i#7l{B=,GV#B^>P.Е&zq qyl4Zg @.A!R){;@\|-am5O3%]%0)wPw*7{][m'$nQj rS,`~R'g[g+ jpψS t?`$Azo7:OzhiCZ'WPR>Zَ40`|Ƈ R+ %?ΰ>0⛳"A5x"Ce;D+<|:czCk9$ ᯻% _^ܤX4*Wak]RR? G ʱgd ufKf$y0YeF^^ѷ_~sCbqF89Uմ} JEc$qD~Feku q?ˡ2Dd ~k4іm!TYe~ĂOP\ 6 ydULWlx"ƙ;Ymܡ7Q 6l1h~;ؤEwF%alH_PM,ҚV|6QČ,Ƞ*ߑ'e17L0?&)( R{QbXGUWuKnlf:{eJ!{6u@Ax_0+!_NbuXp9^f5g8x p#oU[r%-@?/@,΁)%_$ԌȹGq@u z )K:>)T^>7pתU&͗K zZRp 1k|LP4UL` ي_'+FUGS8dN]{}HSX<\f_GŚI9L!KMQd.g=/ZIK!jg( U:W-Dߖѱ Wݻ͙q<2QewT0|oZ6m 4VԻ+3jhs Cq^d'+ VsXl`gu30ߣ 0apvFvv<ɛ# 1th<l Zk_!Ğ{xk1~uCd1 DMY%lXɹPDfb&}oJ&!:U⣾bJY:Nut{9Z kG> d<ٺ:Yh`Q.=ag?ЁUMT!m=zF=M y+f,8 ˣ.zhiHsusj"B1czGry1I/R|Ec-괓(y/Q-v9vpD)~Gy7 d}X;@76s#j) qϱIz$2E[ F鞽qJj?5ֽWѴ]!ZeS./mdQ…D 8\5rԚ/}}1؝)- jpv3cЦJ-]ee¨~ԻBAn;hBǰ@wCCH9/GwxX:l~cmhQ;'(@ԣ m`r'(BV]̟=0?v Z+uz ',^>7it#W^-4H[h)5h=(#kX <5 :WqHm<@]": E#O6(rؤ7. ɪ{T4ScY^4Ř# Mvl ;RޤA+E4;+++Ks\1st q 4WS»R0PMPKix{O|B՟*v2rѱb0)/Wd0d1/* FgΉz2e 5;+ldja~B,$lM<-x퓃'.g:Gyl|ƒr. jo939<UPGL_Xͫe)H/ q#fR4ׂ&/H%0m ܨ-&Xp~s#!^+dz%d!I]jҁQ|"' |__C kq Օ N,5 Ft<[軧_De_Il8J{玩VQ\{פiKIsr: /qKmk8F>_7K|$Կ y% κJHʛRw UfqqROyVv-eoRJ9A |S!\4P}!+T2z=\2^f% F U.Xe(O9l\{IS6dѧ^= C̗E:\s `^./5ߵx60wWH4W) @Z=S낛7A&YmssT$'[&ԍ:6)9O-đ:|^ o"m^Њa!wP$(BW}|eZ "?!V+mc_A"{̌K]QPs'цjow64Btv=[ M4Ns?6AMwS-b ~M*I),;Wo}'(z<:y buR"~cWwhOCzz |j(,{);i+$c@%0za: K!ʂ&QQp }aZ`S5WLH'F"+LKuךnpVxm-$%OK7NbϠ#7Q; "+4=hh SEt#i^Yx*(LM^BJLR5uU~;*~KՍ 7F|pMKrb땚aRfa ~dB ׈j4h]hǹeBzqOT<E)v_He.<+ixS^*.`ݩ%\}sjtL\d, >InOC)'g?t?+ߎ5* !_pL}:OKz/bu֘Y;e;@E76nSZnɜb2P؉o2cM;HD<-Nfxf>!Mrkk6iY5$9He [VaTu?[(؆NQ heu]܈IVIˠ@Pm캇xQ¯؊QGhpudHP^sӅ! Cb!y.P~_=]h# f0ٴXAVsajpI,`J}IdU8E\ F,< +=M'*LVVn0[[GKM:92S#s.04K_k@ #n}g8U\u̬" : % .2WOjO,̈t<e!UpiQWsn-԰.`W-hTMlK p?A,~$ kW\qC.P''~)h8&kH!fK9wÏV6T1 Vk./ ^@| U"mj-K &9 Ԑk2cTdI݄wTBI_uɯ9r~yhl8/P'W8Z晵GW8~T{pWgGwN/ dckw96x@mogF /60lr-wOQFL'ФUc*g 2ƭi;*љq#Dc|M sfz*5 e2ucv%dVųL$id񘌛r%^` BHf7N|g|Jh ˃}qL u¨uEhD([L*c[)\1sXt-'rGRϷخ9f$pb!kx  h hw/Q?KDm=3T ]OFc7clWivX-' UUQ1 sNU"FJ ]|~*/;~32q 94:V*lR[ޮh=NEvOcN\d6KWFo U^hmp)c!̭YQtw?H&ͻ1#xx I{"Ͽ&n|NF}l*]wHH רC-Ln:CA)QȥsO':$, fo_q-%T a骖 UZi[&Rut}YIT qmO ΠpX3%xUzʵ`K dTعLCmʦ쩝}`*떫SܸmgGXSr5wqk@{$VtNzl $VkI$*[u1m'sγ\|pBW6;s q1nJ)qM~K:ҭoEmH g5O)Fq. ޢ4Tb1Bw ٦H0oz̳1_|5"N &a{@t En?U{wtBJ`jȸ$+b2Das&ޢˇcLH+~rx*CCyߵJUfa]cVR-\8-~9@91:ɆɍeVz&C2a9.fc` my|E5,D)B3a0!y5uZρ|ܽ!%d6tqB0@cJ*԰בHڼ~I67[`gvk_+(YsclIV18m׊ *;X#*B$EܙYC덄x#ʲj=(I%X0 2YvG ro+nL?_&R=a 4ۍ/'{sOZn ^V5]AZn,ANN rC]V3bKyZdW5 H65܊Y@"4ŇGK?N:_]RY\2 mC8,+__eix6u0ϫ,}='Vy.l7Fۙz|:9YnZqF ^Fht1f4b%{@S')톐0:Ė;gn]H;xjupEa:6GzMSv|j87PS|EH5)zzOFHGrwz=ND4ބl#(Ŷ=tRo-M\i`TٝB@^ \}WL fjF]UcD$7O`)A9D@Cj5UVuS5VhL"3]2!RnTb*4d]"X&r y4NR>faG A'Ѱg-=s.~b)&Jۣ :q6oaQAK8ѾB~ًuZM Sgph82% 䀹0"D{1Wc- ..x|Cr(qzqz{sb p!0F"  P5vzőg.Oܧ d6% G ({P?^FSY+"ְzHv.V\S^ʊ`k ט=k>R0 ":{ەa8y|2hㅪzwN+;3!S4=c'1,&wzIhov]kYxA_:f/|}=`&GE7fîT4&BHײ Fw '"=]5@a"YMrK_zt"mXW/%$Džmh|ObKxNd"Tg4*|Y)T2zk>5x52-9B֩u.^D' (C2SR5 h=}vwJ_I;C@깊0 (&fp 1h{1਴MvYLBF\h"q, uPMZ^{*POz,2yaqET $.+Q>Wq! B_de?00&b֊vOnHv2+`U\v Z^zӋ)Ѻ?k߸W}Q@},lK"Of^twF3F|j%eڬqdU PdTֳx,U:P޻]$g Ul]ݧ2,%QhCЋk&_]8)4 qd\̻/B8y|%MQp؎LbM׹L[UZeun4hG#y`bӆq@{V Sy~I^L(1f̧i$.tM#E+PUygK 2;eǛS-)asѽ/'ߋOm+>1_oi&//Cy\̣ݪQ]3X=k|0| _tXctʦWL熚>xz6^rX_4hh8nRWۋ7en‘FA(IkםqOLn6/04X52w0,20 аǭ#<-V~uh-tf5<-QUk*µ)܃ ..dZedfټ)hS/ kFPmwe]!IyY \H"HP篌^6WB6BRiXꠠG}Ѭi).qs.מ-S!MHᥓL("K.>eɊi1 W]jwchiQb܀J>4v+\M>d*2BJuL)U~d_lAvnO*|(_Cd}T/cd=0%au Y !^Slu-7\J جvBG}@ (b ZftU?fz;YSjir&q6cdHݶ R>sekev`?yIVcDiP)% AQEi=L&{3q h~}6r[6Om9b/zN%fpPGK5L;D=0%.8nr[(!BYgLw+RfIB<6?lJz{~e_%Thp"W7ڜV$@Ί.ASj3eۡ1K7*2p0yC7i"5.f+L}=~?6Hqjg~"X5^4Y ?#skvGr<=0έy}3;b3n0gO(vr$چ6W?/;i]k-fELc i[sD 捅ʻ!aFvY"N+;l1+ּV`Z-1C@.N-rQMl5c8VgfRhh\llppI>99qqh20eK8΄ u=Z׺eڽ0+/FZpDI  ;"V7c^nɫ:?;E-dցQw<<+ZViHk ("TM:d٩y 5Xt^&g@Hh3̴hKo 7͈ }bhMJE]ؐhC`Q%L +o~n ԭ4ژz-xbR]O}tN>&Ϩ'MCz0׈-+k rg4 P@ "-"\\-̱p^\4YC~>'z㠴lN 9Q}L |5ĤkZJMwX&R-Z``}Uu?[;{&bcq @n@WLGG.RQbř72kr5?Jj%8`ɌG^uE05u]b12=z$S_DA%-`" n:MZIbt_M_40lm{LV~e=Kz5ρ;u/$4sFj<ٓ_3Çk=#2{$x1@,O>xv3t:n '/迁3%Sf92z91w OUN{[Z2@cs hȀ [zjHLĈmWJg栊4CGKɏۊ4 >𿣪]zp㣶r/ɸ?1}B ׳'XZ ?|ー} y~3M%m];cCZS _G`tբ8Gq%p㭋K_+!n.My q]-lиʧ{8{hFG+]U@_ V)-uDjl8;9F)ß]&8SMkGz5_/}-jKm~i(jYغNqI;ܾIJv$A#.ZM/c߱iS_=r1ͮ ƛ}xp'[4B Eka$D֎OʼnBO<|fdcuMߺmO7a4eYGY ϴ!C62^vbG&q4Ru6QD^:6&'5$ZesMxntR%Jr !0D铧rNH"$R\b5%]b/OI!ش{ת.[!+Ɔ7+b}X~MG+'l$8Ι]HJ6ؼ q1k?]~{b|OXf^aD_]Pܮqo"'gex>7QES&@r԰7 ,ng0|A~:5#ΤȁՅ.}BHus7%;ہɭKDH,"Ya;-mDvW3jg7_@ $Ԯ'v-*ͽ bd{G֩YF'v61^%^IA7pԮT:8e` %^ɛ'_>BP0SꔱӘ~6ty+>Na&tlۆe1śc95&NGh?fzqp'|J~ؽN V7(L{@ _pH%,i X/1OBE|LT}.1>cngTpT2w%qM7Oo3;hʴWDtUx+Y$3@.O4u2<ƉtY*͡yN eob2$EŽA4Ϩb)^*cX~gtp @d{ f61h|86:}Wޯb6KJ]S¼nDz .~$L& s˙8xٱ7""]lQw㕗,OFwo9%c)NS@|kmH>rzސ!jd\[zVd{~p!T6%ra:nծqGP) ykNߦ*(O_ ՞JDx!^a a,17asJo'FN8T66Z]*Ta@ywy?h'6X'du2}E xL*WycQ, xʉpk弬''z76b]I3T2#Ж2 Uao)a2hX2z n5Ho%'t/u;g%h]ܨxNSԈxS8]?=Oh/HW?Ex  N?!0:G2Eeb @gQLo>tV\!˶;n]R(i kJ?Xc&ۏ/\({.+x³A-c{ 6ۼ1AMbƸut,/S~/Cc"ܮ bLunvKZ?}s)QEkʮhߢz!G̐K+\ǔ.UILYrA"<M ~~F EI$ZмҢ }Iz%CNlqF,n}ݢr_;/(ȉ}+2%bgܤC)W;q5g!uo\hFt>_cl_BP +דZs@@N@h +l;v@fSRLL{hՃ6G0<9uBvy!b o>DyG_xx0=G2 M2\O}'تV4 )JoZ2oCjT{~M#[^ynlˤgTGXe)3T9ƖU3qg0/͔AxEڭ8xFTc͸d6ű/eўLMog4Ch"f(rVk2Q`V"nAUl2ڲN\NR .r-SrVB|\ >\YL[yy.|tJ04N2 Վ,c5ջֆp Sd&$FibXQQ )|wiרh=K0u@ EZ) Ym.?v[YD]@c”t+T(/oqt]B1{@g/b@sL1y AdQ5p2Dw_1E UFa̐"n;j9a؅ J)"8~:+ Xe>w49;>F9nb.!.T̄ˆ7e/>Hi9K>AjP=YaϝCB=cwUyiÇb|,m'CؔU5Ai( '-r)L-;9+p뒽n/&h"!ϛ}$QfA^-'4^?qKP" dh|? rx KI{P {n 8' G 2d)(Kհ<( ?C@CeQٍt_9m LA!{ <)g0.u,& ,%Uߑ q1G n.gOkqf#sl$T1^PQ7dTښZ Iyy),(tIT po5 <6a&O]0RO(Xs6>t `(0F! (`IruJHpẾgtLea ҂qرxWCzf'}Fn| (H 8;7n;[SƅW 9 _d'd!2+)h] F>O=Oα5nIvh},q3Pߔt}<*YTSX\|VOQF2 e5RD8 6@c<3]!N,&&0%K".!|Ds-eS6 dR)0ŋT~ⴽpU!rMa4.Lj,'/PBhzfpG* WSQT&iO}M(j#o%GP)ZU(x:3Ke}2SRMsHe?)鑒mSbmf?#gp>h;F23nG"(#ƞ>,_&T\RF:a1l;f3#HH>qlM<=x(v W1j<zHso4Р@I2#Wqu]nJUV>FBLyOL!}b UCE*BUshNX?Ї+^1D2E'!NxĎ \0N0n_ՇmA/78/PII P}h9nĵWŴxVXUO.c bs*$G1l h8+ C,5s,s $ߕ_(Lͤb]j zxNh `ja<:꯽_FcfGt艚cjhPG$EӋVRR՛x[EvEH16h)2U )vÓB>9ϤM^w}QPzqwTi˵jP-[e.3i6au3G :JdLِSxk):7WNzFJIQM݂ ]PDX,|nɆCƐʥCsZ|3-DbmKc.)C^PnY}I-I;_$E#{>X/×I5e7kuA l} (2D"QIbڎKYU{bi,O? "`0&i@+&ler¤; %}=sP~ys?gmo4}]3$nscgC>S Vy:tIqB-8DZc |TȨwB\+H6o@aoM!9kBx׏AlhHze„0:gls6F'xBG'v{@TQz\ jNP gb2Jq{QO"5⬠xYm*As"*V8W <AATe&7߷|~;x<‚~\ .Ҥ}Q=>2!b, \Y1nbi Rp4ȇ->jzRHWӄjb+y?t󀜝@1gVgy -?.G'ʇ dv2dFu%2MƇv 343s@.pF"-疞BYθdo7f&uR4fl+32 ɘ,Tr|Pm_>?uɬ%NpТPm VЭDUO; 3Ҏ~=-%5hއv??8/e v z5d!`_ ̧SMg[5x!Ht'7P% Kƒ W>\V("9565,WOӉem=+)ӱbƟݢv$scDQY"M>NBh$- Vjw#q -BKP9tZm@s4h}Elٕ>Wlt Rr1h]:I \~)Q/&h!ݳ Ӳd`4, 4>TYg%{Rd=OgU{Ah?}U`SрGdvUY>UYB :06 ]RZ7 ΀֖MmV?P8\ҥikIuIp=${,@IS[ÞW;9U8t%D|OMS"!]p.o|D++8s9چ<>n 7m]:YI~>p|RL B[勩uwFYT%o<a, xt^e)3吕A]hWލq'jJ4 hq;C溔Z>5-|])XuO97{Mœ^nV_q5ƢEmi9F~ ̍X 55(b$mEѼ: 8ު̈́$wSى0]%6ycُ1K 1ױ,3iFx7X?ב`t&) GQ-PlHљ^~_*G %%g+48}8dr9jh`OMFhMw z-Cvmַ"%>}5hS=v͐$/߇v_.kZjSڟ_a![t𷺷pe.) ^( CV꼘k0Bn0hsY¾(ת B݀.ݗF4@+Q@=LNY XQ~+Qi[1}9 \{[aηfdpywK5 4?H܏hlm̿i HlvB:ݔDB-`}ř9+vMSK*xʕcS| @s{}Fr~ϩoms7Si=_B Ɓ9LTu>YL$*.>q7|/TP<62qr 쮉ZUdOGMx^$?#e KXwO|FkU6փ|n 3zH=_v-5qNZk^|UrF|omMJmf2̢Ql.EO*M a9on3Tq:u\0 S̰pEk5|BgAMٕWF3FWg(XX|*u1rb gWe}LBP5%7di\M+ai+3or}!x$}|t|J%Z9bvWe,xKu~f~#o/x3 D$ ~ɻ# J8%bPn܄ ,c&@[+l}Zlvw:GCYbyQ {el( ~ll$u!@qf ?Sr#RiYߕ34a*tRP*U##Ekku{"u b2a [ ѝ#=^D/ %'9%Wt? #^j4r7Fq&霗2u1LꀡGԆΏCl!@~ô%dfF" PXwQ :8uDR4:X=6Tq{͞x~-wircr!1_@k|,mKnv[#4 > #;ze?A-?AHCuk$ y怙VҀ)!X q,n0 KmLnSs `y/?X[GnÂ- (G_C'aܥݖžpooWK0Z:eHH 8(~bMsU39G*d1׍r\NŲ|_]}iPW"T|s |RT55תB̗Lw`(ʷ{7f{7 {ع _.ɑ]C}eBŽïeG|GŇ= I~ CI|d_GePBI"E`^j9v:Rij#?2ҥ"u,D6Cyf;Q * x<{7g~p 6"PP5AE($PO[[ҘGe q0.fI'_|Q [߉2 qBt߷dkҦ$?W@;4|{7з9pm;.3Ẑh(ʳ^9̷TgR`` ;'3h-ſv@#& +p*J RQh p^ 2?G`qa# w1;a-×H@kA~^@ u!K%c(NըYE!X-gb/ ʧdi)"TuIAJyi*+*N7ĕ4ä-!ٮǩlF rX@BsoZʆ۲Baw;H1/Oȕa  4aP(YW0Ϸ_sd5radt*1}3?%~'|7ڂp]rǘɳJ7)OKX/j)͕4 B/SD}Vt{ö[:dx,+*% NgյkelM 4{7a5Ed053oTа~uZtmEXf' JMv;tl!-%,%ID #>$vE،M##;=nF| 0moD 58 /&]˞m97XCT2ym 7"g3՝|,bAXs;18evR&'|7Y&CsDE33t$?6 [q4Ш4cpq/(5uA υ,!NnhQ"(WWukýTnz u:gΦH`>\@v?'s]'v=xX2o>(0Aw*r9zCwiY=N-*snc*| ۧ_=co;>Yٰ^nѫ 6HdzʧNv*է05_Vx4͵Pt 3>⨉~s9(-K~/Iml:/.߽ X;j}OU᳿7tB^0?a3;R(Wp@ ZQ~c꒾4i&VDSh4c #4FRt F!ʅAh3)!-̿^^Q:;7CQ8Wo ! ])LηXߗ;O:^kso5j-`~1 =NcP%sC@2 :wPμ69@H?+{̝3cb]"|bSiCuiq11TewjU&K~bML]fCf &7CNN2Z9 3K &FR5[ ~Dr TwTEedbs)':,ss9Մg%loZDg!4)E`c'06ף]w+fQzS̫GZL j8ՙXR2hϝa#~e:D H+04nYt b2}I5gGУ5;PC!͜asCNjG:FO@2'KSgv6A)(JrD+b5&:/g2K@4:t 8렟=w7b#lADՔ'|{^{I(y]h.r.J/g{N]6cpu2Vk6b\P'}G"N_hʰ=%w{ܓ>:ڃ"u Tl3pXJa.)Ov)G@Cv:΋Dy =0Nm& ى#2C JDx!NTi\$/túl4N UEEC:١nIE24qšjf(I9>3PV dW?e"h=S4Iyiǿ+ Gk*rԴx+oL>_l[uVCYqR^:t:Pz[lCD0c 2mS|mbb7*dP4hC w 2zZklmH})|p#\d3ENS⌊VbaD6T kZYN*a @h`v 1|i\s+!Y"}1\a8Vp†W0lbbFޮlˈVQ7+ 4E;6PQ{e{t+*"d)^%{N\N$i^K?u#PKJbQ},)5' wsڬ"=jn8vGiHޕ]QXN:&6f<yL@*1 Dԭp n $Jd[˪./Ej=WalTMRdBY#^^۝.b1WzX}Ŷh,#"]xfҥ4q%wqq֞H$ (>'l =9}թ3Hg> HtQ2֭3Sz(֑&{@ H\tiS~x/7Z:dbzɩ# ؎6l᛽~\T&"e/nko9{T*u:|H/啻:̉pgk[E BӑZ Li qEedQiWCl aŷCκ6/b4!3Ly0'_7H#:YVRFG$p{%\C5xv7.5)?\cP?k%GK-DL)Ni=l Zzk:Kd  WԭTwqOʣ$5 ёF#xcѥ#~ZcPowPӘXe$gMQj:#ڋo.N){³$z9㷜ts7~թs樤7iOW@ z ݛWWW6`sBvYAT8D6):Sx ѯ%Sd<*B?"SGjIb@nxsLkPWI085\HE $>EQ\XqfP\< .fq$UM8l L5̚S8WURA:{칭,yFВ*P*CI_}MiۿEF+NބP&/zOԂb*`0N|xok}1](XF*Z%mF]LCC=8i;6416R8~@mV߳rgGsNJv֚ Ы1>5Y9|FpWVaav!á~*IMXd^XDr"djkJ8lugB9TdOτU(=ƌA_S8-q\wMz>zVHHgTFAު=0=9m@h\/IcE5)wL `ui[*|ow[KE: %$lKPG촇&( ds5ukZzXDi+m6-pYC[}2I! 9E08-CGT¯G vL@b{r1ĆZ`,;#P%pKziD1.nBάkiE"E[uӎdjV݆E-GRɰI kNcėؐoi';T)lV"0 LCz7y\T/D;#1 b|6OT'X]zN[Wt5PiBq5φ^S/Fك]Ouz&tWR@ GF`e50Px3býVE$/2Ml8 IlߴχN&B"D%ȍtl#X/'oMB(FV౽0zF4`:HZ_me*WCOeAD)ou\o֑57BmM4>OݾIW3 b3HS9lYulݿX6`wHxpCҙPW#)1m_d%G>[rI 7yt I$}J蛑zЭH8 z-c嬯rG[Ϫ$Y@c_ˆ F[Dht_7)goڣW)x1/8Qs艟\6l.Irz?̺jXAm䌅ә0$h8@Yޱ|s&Ȓ֯'c~c|JO:8m.!]Z۪3H E$j54^*NjvvGB[`֟0`4M>A=NGrIz^n:r٪ !<֙/i&_1z'~*)fR!nWJP)~YS83l ,; j׋<{ɬE!p\ ӎCIndyp:W=.T%unAkfk>q 418 1 ŋeR9"]C0[-Cy,[zj\xb;mؚh.]9/ifǘ)k`Q7[,zvOv$@ z RXS+qܧG3 TF;> n69cEp{7]TpnDg1?e Th8SN!P7Ip?u¢n ]Kdْz gd/"qT AU),֍;HlxVOwRV (eBBijjr6cv!B=dR6Nah.סBBHD$rc >Yi_n{[{(aQ#gۉ.v )fx܈uÇ;D/Vt'ι҄ K'|^K|\<䤘f6/t='a߇ذsdҕK8ϧ靚ukHg*=[௸;FP 3UY#,QsnS$p4yRw7qk^`x+av~*L"|4)SכśzGNKal`AeBr[304е˗ϴT.`$^hg3­&H)jir =|8r^.`  P21Uo~qcΓ/x!k.,qI=**^DJw1LB+dc&A6*TlC06*]w+-Tskܡ-!شophyUЎ2/pe&d6j?@fy.&5yW<`_a;,L%n_q$6?`}hs b0ʇFAp<0;:T䥙@][NL۷>pO=6RENLmkN׊k8yxnd$ #C8Jܽ!@ZY)^f(a =K#td32gG\[ibNJDln:챶RInQ (IR.%a>hƍMؾ3m3W̶|aK{jPw9.>s yG k!lɢΩk+D!?.dxw,N7dA'M"_4ǔ>!! $#?M_:v__!`#wlP5+ܑ@LE[߯{LCUdq-@N0T0MYD <:(Ҝ&L=+:аXw*^՞B- ށIӮjw#"vW5QK?؊]ws*=,h7N.-Ҷ}ڷG9iJp6] W5vґWGD@F>=D!'|qG9=v1b.4E;L㒊+W݊ڗk XqaRq(@72,W1XDȂdb%*::iNa0b SyyNpQ$=I# ʖAGa!Z00RyJۥn=YY,RپBVOW!mJ&= hsJj̺<;!B~S0:*ŵɹ|c>22!E0nOk18 :0LvfHJL2u,Hm*N:M#<3JLCƬeKBՈD0,F>M+1vL$A,kASAqExߵnɬ]In 'nwL.%B*Y50H[mhᜉ:7Z*@U3Usd' l=[B]SqD=sgK}RI,s GHN&,]4 ]wzHt4kB2fw &m g4dHYWZ: 5>kǮ"3J*]W(nP:eCʠ_ |C[ VӃB_p~-Ζ+~O}ɲs.m"lS,%&E~=ֲ(9Y!U#KֵđJ5y6AL9. {v֫ to{^8icΊGPQ( ܨQV&aJR.@L*Wˀo%VC@[q-( )Rڙpώh|d)D$2iZYK,+!NE 1A!ϥnMlcI0ɞ-x$ܶ $g:o&˿oy$ 50(':FV_8ؖ .BozZ"'+K`05WCUV"tO Bxh5aDnw(cƋc!vۓ9{ b߰bGSyգ'@|vK0[HBQs)V[WY!RBg2Ch t?(y*v> ŗs](_.!.2<FUw߶&|\y JwG Ԍ:+ iW9/P`7gZ-w. '&¢Պ{DgF¿beej ֏49˞pH20t]摿Jz)G- ^Uj{s߮ޓFmXk2dDn~IH&s:$.eM@4-eέx((#-=jg4XI4z¢ݍK [A+Gz'!oUF>oah"Gb4 &-ܱ@!u0c->}opZ @Nf$.BJmH ] p);?Y瑺KzyczF4VbEptܫ?@;:q>4޻-Y>Ac~ѝ Y D.PtƂ41 q{Zid> ͐' k,%Mb*̧=нʢ[ظZymy*%ɓ(SeGp%){<3)u"4WvhC_Dk;p̗̆_AlGJϊRVm} s-a1^2a̳IGX;s;+{ʾr]NDAMou޲A\ $|mIKD> j Jnt~3YӼɋе$J?LM/o}=K "e\yq`r{m5+ps1' %|W;AI >1ΓΛC̀t>6"7j؎^?+T^C*7/5*=~7J{uH' jXV:931f6X__- ꚰ/&MK g ^uSc}+6@:w ;\){r4d8:a>@{MZ햛&4VAX5l m04`0o^kxHFxϗ@{.h[} pV;OKC,jA(fPc` H/ xF؟EIUΣE`>^F}%)Yo~Y*--+W*cxQa|b~NJguI=I5-G>F0Jiwiyʌ-NpEfm}%c1L$x^͢;*\U\ ]% _LKmM}U@ !i]1Wi9~V(vܿ/gfN2PU048͓AQ@nP9dI,Y9aӃlj]V)ɀo O_ @hBTb+%S=^$BG8z{L޼?cO8FaC2u Rp7I]sX2ѠL=B.>J,ip),㙛u0&t!輈ґdQ)JZVd.k++?7KBoG5ɨl{T!{= hO7gOo-Qd\Hk 'Gt߮// P}w6)NZ:OV?::/Y#` ?gl5hʃa&vmDvLcD Rml\׀f|  z *P Z=z*r?pS>Z[A#[@ޜY4O>h`4 )7S:MIEBT,YuxOR\(fY&WGvN7=+hnh Fs2x(VMKcU|ۂ! 9Mo‚q(?Wp,5h{VeR̖BJUDžx~wNM[In, Krfel|~T[@_] ӕi" x?詪n /nS˯#Y_}%l7sqCyMrXe\؏xv"`Ă?Qݞ4K98ٌKv潡elk1ڴgBZzw񍋍eMo{qtAֿ'ޘDZJv;DOJ dUeM=d%UE'iJ?kwz1 lnk mEt|R)^]2Vm ~ <&oYIp2nES ЩȞy EQIoܢio/ƀ*m@7-~".ɜvqۏH洆&l@&NxV߰~,T#6jTۘX*g0%eqVY4'.iΔav3M8>#DI` (ȊRGx0=X*gBog3XظJPs1koB |DN5} qdf2?3FV f PᢣHViѲM59ڧs7VѓV47z*x_̄Z7J[ |$?djV 3EPdP9&`*1iIbGISk$4Ծ8TEHY/uB6D󄝬jr+ʈ/0ޜ 0U),S)L`Bvw6eXp4q O+")!hYr?t \Bt?X돒(6k?+BNdn.Щר!kG\e؞JVA?8ocɵ]T6p&aJUJe:H0%K~ʕ aR ʣI])}dA^q#SrQ4QXIY%BmA yy51ِIczQ u:kMhJ VA2V-5}< d6k%-d?d}Kg9ouziq(yNe׽P|iVad\1pȚiXfWC? Ϙ W9F"dU?\qBV¬,i(RÛ*xe]dSGp#g|fŹJR߼%Ϫ+:~㚑JrNj]7\2{ǵ+eZ*Gl(||uSu,5Ǿqx*Ʊ@l.X*{2/HW:SHKw k|E/8r쨹iVUgш%4Jk)FE*7`mđpHGgΪE0?yo p:ti<^96pD?!Lݤ`2?(;" NAq hմބ#WؐKŁpp9sx֏S3M|9v(CXk`\gC]퍅€-:{_iS'I3$4LF2Pˇlp~Gѡ,ԀBmsä̃Ǘ9{ċ@Sl[`һdYX.B%b5f(BxB³ tWn( ?%V5 ar~:rұWZ-DbURJ&qLjbNGY'K+zx{\l3m&3"t[Y;QBRYkzLn!ɍGEﯡՕ(`S J͟0唡:ʑ2g^Hs wjg05l__ߝޘxv$=YOL_ҽdt~CQ{^ʔvsݝ^m}n +jop1jiiA[ ^Ĉ@O~e٣|'Näׅ.;nI-hM3U \D`#P~ ;’2 8zw\ZO"IP*4ث,-tyAlRJp^D+g r܄ }tY(R-/yLF+_VƳ"ݶvW5A}h 0bI+:~xEAZTΥ|WXzne pD3W]6o+&٦^cjEX̲O:\}v l(-fuŸ*d V2R ](U+L\ Mo@Xsl3i-ؑ& wc[A +45uC Fhe!x,mrgf\^v hv(Є懔K,T;xOxU60< j:٠{lKtnڗwڋg@Fx ˹K^Yu&_qy@ **˅Br;woqҮVv*Ғ`0`?ٽel#A pǔQ LZIN T$W'V &ncD)QL9YR:1zAb{zeaK rq<]3^3չG60 r!'ThъjI'@!=Hf@c7'o%޼]lWƿDtRǽc pDNC)&c@}FLvO/Vb|KE)M}C _qN~|)qUl9lj!5-b{#IP' { h`[ǻ'/~scghCnsA\]9/9&#(Tqi Z,8G bK9#gPF jG>\'d:6)tǽ%Q^BS6/Fҝ-qJP=tSX@.=5Y +s*b QF7NX21l.J\_`v (th;4[6ߓ[~m>/o6S02?e4n ܔ-fS0;0?:oZ+e+әfL03u-w!\އRVQLBgD$CTyeY D5a_A?Z(q6|sAs~Й4)ͼZ&N;暆Sa<~xzFVV wmسT֣^eйRo *!qR!;c|P?UcgJmM8RJ_z[eiw+,YԶ&ʖVRE%wQE`*P&V$Ʌ$5h2r: Os_ʭ,:*Uk #hl"ߋOH!V`SBn쨌  \wSjTvzk3$k}k~G'^IJ̆#9,<Ʋ9Ǧ^|b߹x9[SPiڷPaȡfDêcIa+qbfs''ϣ49$nTrc67xc?9q0D*|ǭc$ZlϘP e3XLs򦾱Bɨ*<حI=ys껉i :7cJl췌c/Ԃ}r.؝DdHA n9۟9tŲSnqQ>1gu4ղk62E򹑊Cz _WjQ8k^ ETކɛ3n 1 Q1Y`r݄z9yJh~$_@H>'F<{#RnkIWJT w]Z XR_'!n,lz䚑H;Y1^@˹!; " y2Ɏi~ Ifi\M@bڋ3>țj+:epߓ.8,чҢHUmОGVq!~ؔ>!AʘIz#.)@53`r+(pxLC^Rv$#=?$fYNx*6s=ZfVDA}wi˭+͜@[XGX޺N33; Uc̈[GBD5tm_~X~ f dfAk׀0)n&WO))$(:zhkjy(`ԫ;[9^9xɄ>'|ѱ*}_jԨԭidKHCkr|&ܣ͠K5 v-L]ׅ> T* ,DYu3j,6u>?vQ1XWJhz5 NpCQSĬ|؋R3{xr-|O_2̟ >/U6F9|ov[!'D,jP`S[;ݍb {:[e;yrwoC J!D9ޯq\%" ϯne"bΧϳO =`&^ikX"x; 7SeoKSKkOp2wئ:\IFujDx e|KmDs|+();L#&% hmӃjʁꠑJFu/R!$(g`Qgz? .HxvzHO~AX1h';z[y,7,ct~6JaHwEO$o4|V]ʑ¶pGэja0aϼE9vXӛAۚLz(~Ab8D@aPä=䳌u*j #BQ iYU{UQXaH8fvt{:%O(9.M17WvP=E\MvO˝#YGR J3N=|;ʡ/`ttJyjйlv'A~<8Oemnف5\հyBCeͣ6ۘ /԰WAs9 *Lhא{1Ys1r YHph㝉vF_#1ERNcku#NL3]ˤZ~kPf<L'2'~uij;o:{-ԩ&N(ۏz>-cAyM ?hpz}gxȿ2RXqԷ |iVQ5Wy;*J~ꖆhN]bok$s+l1MeiW?Dh\.V@SaZ#/wyg_.jq[tZ}ݞI59rfo{HQƫa[%aPKzF1!*,\w'̺ːeR3fh{OkD d;s16! I Ze*BltW@QMA P&:(E$Jߩ5qYRl렳܅OM[l6VS`s ѓ}3mk/F@FM=n1ΫnMt\ nY~j,/:5uqЖdoUgvZ*qLQrUGCEXQ?2`!4[NnGo#߄7 >"pB߅#g1y#_Cx"*T/4y.?^/4/VS294' ;ˍr5{` IC<4jpPܩf>VBIƙn4.7SmMFMbKny/Ixϥ9 uTIJ4 ܫa,F%}Cec1z)Cǃ$hW@3(5\:e,`luRc|^c>16(LWe᭺DAˁ>KRGۗ.;^w;.bM}A"#˪.@3J2kt;IQ#cԿg`y4ߺezJ4l9ydhP&yl\Jhr]Ux$k.ch.S'fs%~,Q' yks N_x%! bЗ˛"1*b,Y[Nk\CC{}azmwa7JTbbn)"d{, vMH5L+egK䁅QFJY(c\=9ܽ KQ'T^Ao|L%m8]^w i[ ɢͷa0w̅\f)YYD&J߹Ά?UDvMqTx*@&%&#D.>:Hz^+Li_05 Q: )dp5#ŕKKAS*n jCnh5O/3*8qrԍ:bv^A_+=!bsAR⋪ p*`V7`` &ܟ-U.ɒtϬsx"Yk*@K1N*BN5J~cIpG IABZl59+7`(:weFժksT7j; xAL]mguu6Mhgc(uNQF*"Ýځ^!6W(@"aV<ų|OhO1Qp`%jq Gc)+_LM$Hh67~-Y؍дJ1h :#JyUU*ف6#qŗU}RTqp!+7DQE33u & [ pE) ScBtBXfMAIV ц(C׷͑ڰ׎BtQX;ֈdF g%hQ  0 Q}J m gWEH&~nM hod2 >&A0H$y{Z\*vWh{H:&HR w7^s%)c %̻,Ɩ Wt!~}9nMt(l6 ~N2EZ+9TǠ8Ƚ# 8`)FhYH}X'v4bA_(cnT0 dc,n=9Y*RsfFf >r=/ZP҂&B]UKg/"3BqeU[p9e*0b(cy y8i&&J$g^iA5vOlP*Ewp bɑ_E|:oXwŎ+F[{cChTM"/y'$ 8h]J> 1Mh2B"KMs5~<]+ #mE  `jak'?R~xY T5ToE5By'v;~CjBN$&g/xݫk:U6p)L9H% Qo<^Ȋ<ŏXM#o:3>ZG ^wHXI`o hY>ަc1p(1 Sj# ȤYKDŽ/6MQj,95 ޴Q?E]vb>z < w Fӝ0Ώbd| ͎>;Hj1ppw]rQ~nIjLVMQԟVK3rͅk}?mS|.S 3g:dN+׌]SJuE}#O|Д$,˩,r#/JS{aJ'rG\O 50ȟ,if6Oi=ޠ@ތ3>MN.kd jPjG1?X R(8{}8SKBDFH z5RnYpVoxvѥ3B.<؝Tj3A[iJ'X bȉQ#Ysy&c&%958vԨL8E tDeO zްC iW4~iBBbJ"\-,D>s  ^g)7vĢ5Z ԽZhw]6p)e/EEa$ D} =` -i+bV`nwHw>`T ɩ,:fcc[.~ԂOjhPIJރ-S}̰P57۾eΑxJX|*g^(_54=bYCc 7鿓 񜥩ލ.&2T&r$'l9@=64U pLJB3T@bO2L;wyP)Meǫԏ>;pAϠqs=S: `Z1+D5B{pd@.i\S?Z30ECb?1]<-i~zs֖) 6@g$9Ƚ!%3O*l-B5l\s(3< h7r4yC"9w59m1RyS-zo(XY}qW(!C -DhR1IfIxQ w;'14Dmw꼎 {Ae>筶N oGSdrd vuet@ۗ8y풠1\ԋMgNJjuǦ Cw 遴]n77LT_oly/fɓl-ybJpA%bχ !uג:ҕ^ң  WTˢWGWjlѧO3/!F4 `qK`DYWt%ݮ}|7v#C>z//4`=OӹHiZr޴Q려~wf`"f%M^⅒ȁ`ciY2v0B⁰F/Y)%A Tc^qf]Gwj ;Կ蟺 ؿӲNjRW NZ-JԆ$ٿUt 2;ZO* Oǹ$ MZar_q/CHOz_' xT>>\MGØ)r:I&L Lb*\ՍIM?G̀GXJϊY6W8rDRTL!{VM~qE_W+mƏd!LڀOl @aXqN!}H EEmvxU3pLɣfveLu{h;M?t1jЯ.6yt1V% ~RҖZ^[2/ezg15|z!_gdC5sXSO/,)KAc܅'%Oghy[ $lFF\z![Ž3rظXHvW5g]aZym gz(Ƒ:iVE/84E";s)>HA8-ʔB]׵b YcuFd'?(y!5HX{+2,c{Ӗ] }Ys}{HN﵅@> %XV]ѸÜ%!4Zet2cMe攭O _LN]/J![}AƃTRsaUl] %.G{ծlM|19 zL%VS DI PܬC7{:e(ە zt۴cq7$H^" V|],'C,JXoXgkho ib:<9ȹN]< ٸslfMVT"5H0NKKzf}B%D.PJ }2T쿂8{zkQ_8s(dй"' حC(`M6Ǜ"k)<1~"Vzb^ݍGϛ)fM$$FK)*Y敹u:.k&70ްl$Mr$نOzTړ̀\6*Pq+r70 YY3: .[G!&aRh&R0 U'ywq~)252ÈOOh|H20i̞SBĎIIՆK@(3iOeʼU!00Z5?ia:qmmzy.wζ\R+?Ϻ.N:~,-.V|kCgICëӷzvYaiϺ]M)/q bJ`0$QU7S|6*:ت>{\ΚyQ~;sSf[Wu}h _QP%?Mg>wlSdeRAa1CEVPG,݀g(wMA"6,U5dOqpWe6{%Ld>:ZB a\ $cRIP#Z_Sq{bɝ.9%{_^E؁,-ؑ xރI NM}c&QкU$jHAD}+aRTK:#GiNHcO63a3teǹ8T@yKm k"vM 95[/>3Hȍp'Ft Y~mE/As]<Lu;__'j!dL,#p ֑&½0tysBRw2W+R3)5`"}/+7ŎUoL(ڬ`T9NT\+w){8Q&Aί^Ro&S׼x>-:~| g\Tr3T~$&3P#npY+*J^jLyZB OMEӢṥ>,-4V}NK0l'd"5,[{gIR:Es|\Åx [:qQC2}ԷwN[WKs |'q#A/t}&iBǩ1c$˲z`s2!&kFwtL͡<uBCoqU7 {4d3Z`Gb] q`&Tfu輗 0rgbmo0o5<%6k ewd Y,w[J;fe ADQG L騶XN5Kzd8YфJVYW64G>}]ܧT2v9 !omfQ@lw'>pk ?}`P> ?lͥhUY=J7Bg qY pPta쩎ث"ݿ<3o®j6?-\)a6US[¨ Tc䡽 ,!Nw#._R&j6$f}`U|-2&(o599⸜|B}\A ʫ̿ .˧{ Rv4(4X?϶y` Pe'!bk`BaXj)FUN7)iTȍMMxm$k7Eby) `>oP" ጑f=R[|JPN+F5"-lf8C! -h>cq\E=PjkڴbXbL&TxCFyEI.(.gY@Ƨ;f)*MmQoKRf0 I ESe[Vr@v <3%5dѱOҚfiP d 䕱ClUNgECl^YIsY 5TPly451p-) ܐ9,{>K}So@&T7 9j Hϫ by|$G n#zLa Vӟc~nZ2,7Et3C3v~92<䭵@ m]sw9n#d'/S/A+NFR:Ĉ߄%B[g*cmiX}DҀCyu*n3gOf3jxWzRJ= vM#5lLR+_NŘW@xo|!JنUTz<ͭ8c O Qպُq>CU*$ƣ7 q,گ fP "|$ ׇg\ˏNac3|2m6+'8 joFm1a# wکQ,ozbY} mU u,r0.YorO ՟*?=-&ϟy|թHb% ӳv}8#{*ȿa{[;m?qžMYgǨtܒ%jd&t1}[@ÎhrT=U ;H8|s ªp* )TҠblV=Zٴn[χ}iF4n8SD=ЏOw*wJ-6<%b-HB;c4LOq}'ҚrMϧmGAr}r񷝱.*ƶvx￟Rm+zc׽Z WŽkʇ74YaH(CM^B"pYҢ 8!0Atn'MR"Gv+8Nʸc&cžh^Ԇ0w6Oi6z8;0-/7j s|"O#ʋ I%jiD00aUMgCF Ζ9aοUq 1_Blp;q-\[T]j/;`t} zRe"Qneز4܇=0Zg}k%5U;4Yn%]v09!L-ydBp#edI2c (M9h|jB'QXt">1NScŶ08I ,6: |dQJ?V) oXch]48B9 e[_E;L!=1ғPzv!di0뒕{Cwo -I,oE0Jt'=\_-N|4#F0ɿ14J8ˎF戶pK3pUuafCB` \ -Aڈ~2[{ 71&͓SȊme ˯.{ F (ɠ/Dj?E~< =x,KPq;:%YɏH&`n$F#ӿ1ǝbmBU}U >1j pFsVy@+_ZxJWFwoV%̐Xן4Zǔ-toPfVYre-}z/#'%L=Pfl j,N!ۊG%jvlxws{F` ߓN.9yM#_ Ktac+YR '#໷&izRbn+pB`p}s_o7!c}hOMJJi"W (t3VLx,SB40iX s8{ߑާ$[btsnRf ! ͂GZ76kA++)̀#f+J߂ET3.esIXE?^MBVT/=XԱ?~vDč8oAd!mj_0` 5X\SBb>k wH\.D(ڤ"- q!DlcErVxk6@@>-f=xԃWP~?y &vzͨl/3I 'ǁ䖧'wAuwl*fc- =<%l/6?R[7@qP 4uŸQPitH#d(P*<*RP Qs]!uf2DٽYe_č1TqG'7cXB@6Ѧ;Y[7P&n ;!xd|T$*鼀Ȅ=0eI@{VCKDٔ9c<85}\2'C80Sz-~'(gɬ|'< :R/Y |o82]+·% XfA8F"s`:v,**J #ncp{30-!W}Vo56 @ rmӾub'o(7m[yЁvENi#E6aHǯ̬xvR9@$#ttG^U芹 Ϯ+dWn,4B[\hR'oN@=. jm;irXQ'c-eh9tYYז!R/DH]?gn]bNwlcV${qЗGBk嵸" j&N~jrި.ioW}RKs /j> {JjIy Xsm[V"s><rIxOZZd?YKG@2Im6q#xC@jABGnUXme!˞butv~H@ɝZ2*1s|HYH%mIcׯThNwFX~{Bbbޘyac&ܷ3VҲcV.y (-,g{(TǦ <沞9n"%5(ւ?t˴tpwǯeZ+Ӫ O5MB%+IJ _&ngsqK>-ƻt!miYJzI<׋> "RkXOQgvQ J{zc22h9LCbE;khY|;߉y*TqG.jgc+@?(aq0+AuZv1 tonwY`l5Kb/q|?gD)*v[?†jLb3A uFbwƈ9N<SoZrEa&5޺NꚄ$[#n/*?^O 8o?uxyI1aC9"S0m:X9E&ہI[S֓P5>w”ay ԥC|](^V|p"Ij"Eƙ{hsb|-ܴy)aà|tߩfΨNJs:&2yj?|B327n&%en bͲ{)~{X +G2[>-d|ٻSCBͿ)O' I_E̡3e !4hebcaL{̎lqgwHMNK [go)|߼8c($%{|OQ˱G S'F+WzqO#b ;{xb+Re72h<6*v)/QӺ5k?牴z_0V\#:VwM;8eOZ30(yW\RуB'f;v}>WA?"loQ;dNfV(ċ5E+= #t*_œQ%@q^?at> zUw*Fʠˈt7,!"c7-( N]PiΩ{e{uc5STx8'?E`yM?'qf\>Vl#9>–x6SPQbpk6)#;ڗmwT[jIلoNQ[j#l6JjfȽy=K! )Q% S3ql;zOڜ˘+}S> H\DŽ}ja=>;jRVT%Yht"WXi|@ǟ#]@b30t~:P/$#0:GWSmS*)d7)縭&a!Fh2()vPT&_g+@sw'{S##HM\]')Ci dp$9F'aMߤJ)eRLJa=L眕 CWHh m5N:*%Qz 0梇UuQE,gB!jQz~8\!֋:`9ۖx˰j9Khuѓ͜J[Ti"瞃CH .7PoHJu•SjL;`HM{ϽFFrCeL-L_UO?򣽒M'@:ڴ6nH~ʵvf[V\f;%X kiMhp>9aGl]bi ;ӵ#ZsCuzMA:vYcMs#2#_9| qg*Cвt5Yצ?(w(:(vn:saBRijY2N_EFm1ؙƋB(QGOذ d̮OӘF!M; TVu1r!'ʹ8 Q7K_I=mE'84 ttJ_v*)j>R֘,3^݉)8d*G^GTf|) !v\~ 4Ҝ 'jx/:ScW|҃.Zzi*+WvDž)YURd&%X*{Ep ̉XK #i-]K1[)O=Zz c`HAV@7cl\AA:Gя 1Abe%@!>Rx1Uҋ L5I٧uo*^tf;93e#TL!D,]'RaBYI |he85)H %jsP_i29y+?%^'rQŰ [bkNT|_wB]YUp}!=ZO] 0 }DTqyԤljHB9\gT;tmrpHM:7G1ٝ"iȓbX#C-ɡFWdu9Z-3XYV|,ƴxYف*b)̹B,5eSޓ\_c{+ je2 }r&_Y}dFsaO8ieI#9-T4 3w2;@?MTYuEA?A}哫uBЅw(.o*/N-(wڵ1mCcת+mA.CiD_F:U[+shE9to4NYWs4ܕ60crT.e~}xd}p@&;Dt}seS0l0/T$wY8rÐ5J_٘M6"D'`#YCIh9iATeH;.9^EjIbWoo̤% "'2'=d   R7 ]CTdKU/*[>8ND F`*7(5G-6: S5gӉ2O; nOl`~A]1i.-3rXN~uM2Z@Q2[.,E Hu`#BM5NLq$. ra N6|viWjhD;N_!x%e*N4WS`;mJ6d,T1 F(v Or-kEkY~u57=?5n*ؖ-Skȳ&ǜŦ;*rE ς~$?>$SHK[0d+co>k|FE,Rv&b3i&z(qV?q+hb~`zn'Ek44QcB6$up!~.|B#@srި=^ĭ[ǣ!{i'{!6JWBcb5ܞͰjmV7W ϼE c~#~NbR /ݻgpDt JUìYSR IX4])26,(sdpQ KDJP JG`ɘih\0]$mȮϡ`e:NK2f'f|xu{ /6k},+LN`gXr厫 9*QNMWß9[?4U/gH'-;{u^Xb?DHtKNe -gqn'~5[}ZԶda 4)/F u NNp *CᏆHlq|#سI<ׅmH6vA,9o7k`ZFR x:04 рL{D몘藾qۇF[pKQbgo<|N|Xv`%6W`uŭ^]QJ# Y d>kV9`DW+8ynI-ujM>W6Np[AαG,P/å f|0 D]n5sGcac[$ m`%p/Ѣ?yN3'·Б`KW 6u((zL^6iIU"Ned۟ԯ6oSJ0{xk=|7nQs(MA-۾N KﰒP/g׸)5ɡUk='`'CQB^RϳC},pLMsW@WWKgqV8@ջ?@r̋ut@qjft6 +ý8- i^OSxWAx;z:m b4m@ȰWJK13 N)X=3q:? /]V˚>߱|oP)yd Q#׌)҉!ط,HjJl\(7OW-=յɹ D|*2ˢ6$[@O:`ԿBq8 YGNYD/lGRK:4;oG] i ̿JE7qa Hj%{hnfŠtHj~OvVzl9r"XTVK erx"':wDXp@X%mouf=1]lmwi=cZHG>Sʰ^TL6 'Y @rM ԄB`+ni?s|?Ť-#䤷l5gS" }>lDQ!c#8=tHR4@idM ĕ1-y#Դe~sc"79'Y8LY}X`Z $ ,2@Fma<1Wƛrjl:#f_9sAQ2S85=vW(-5C`Oӭ ua\H\ᙞ+$Ty\8ݛl6^bbr %=2 KᴫC楙}e @'C[j57%6XA+U5)s6EIivAL{* Mp![X|w~B4n{m/ ZG7|pQ!ֻz^>C}1+: 4uCASч.7P(:;|'|~qx g66ЗMB}z6|UAr+&'p+L@Zc;/BC_dJttFٹߴm)e7Lz P}Of9J#J~Kp>CQUڠez<)C}#)x:𝔃nC:}s8꿈t<+hoMe!SpY?4`csE 2us zgSߛqd@A#Au6 OT;k򚞴a2Pс֛A`kBK:zCǼsn9i@ ?$ ?@ٗqݯ x]J5,)_g $=uf*衧 5k 8#y+G6X%{55M ˰ exbW:>>rΫ80UqN[M4:Ԑ45\ Pdc0+Iɐ:8/Ϛ lTqr (4kH]&@Kbn|x|>K_ Eqk(8PɰeGZV2r^s_,u$[MqQ7Zs ,Օ W ?1!uNhV<,vg8kq١'=~~Zg!m1$WXF,ɗW*(VR |~NչOcIݶuQ߶6W@|ھ.* m*\+_kxK 'ճ+x}<ixՏ- `OOQPh!\H%X9$Jr&plJhѪ3hҜ@PɑH50^+Ss_|W姫&&3L߲GOkmʄyk.ght UZ>9UuIh DA=L=!@T v.lD g5kZbi?3y}b *^#Mٙl(Eigϻ1bη `bK::~$9Bg$ rU M)J`eKpt S_ڶU/OL:xZy2Q";u0[O2̿K gdŜ"RFedD뵆0H)I}M}d6 Gr θYWSIlPM-/ؠ`*ՅLSb 1qn,H2~JL3[-QƉ*mFCu[8WNL5?Oeő60>R#ps~֠4>oMMlENɺs}7X1̻_'J7,!t@&kQh]Pyk7YP8xNIO-k`M=i9g /0ŠD: Ơ# WɱOco -9wgPNɼIwGpx {}y5Fp>XRo "/ucב( NDS^/x-2e Gh3l$ (eA\=TG\!ץa&V< rn҄\8|/Z Ƙ:cՃJ@V,3NC<)i\k8ɒ]7AVtq͌ǸWn7a#I-B1+W/G'8VW 7:yAWpHuqSy%#bXF\l,1xz]7{7Cl_WN]rV9 xt',ן3χߦGӄ;bL-ܯ),etj_? 7rIWu -4kp]?C0gmSNs_^ C$"ɨWrV~lPA3/mbjfwl*Ή\YWȂg_ ,;Z>A]qwM?b-YDs`lcߨD)g btΔh˅f0;9cT80 o,ef6C Fi~ڛV92'%X ZU}±3n|jT&Q44 ӰkQϣ]ᇊNi9k^:"Y'87Գw Ԟf?iué$O {QNH\a`GdՌ-.U: \@PG9djۄfy_E׊W!m"|WP0+KOynHմ0b nњ_Qp^DɚAC7&ޛ5 Np9}#}FZS2N`֥-O|5>vZfCCQGиܠKvwJe~c~zDe䇬&1ZY-{d݉gY̱L=43jIcXAtLօ]g} crGloz`QiK/]γϒ E)f=zup+hA^{7zTc#?3&I*4yoףϿAtɎ^ JekK(Xگ}3IFh>ΐ~=Я2PIp-"y +ޤa3Tqny0ZuԒYDue[tKͬSٶDmꥱ>c(@C/!`ݻ[ŗO }HҘ9%=.0:Qcj7 .-/KXPfPB{(ԨTꈙd ֶVoD4^h=-Cp#iZ*oRRzWM7hdUϊ ^k6! 5V_MyOjXAmUh&AƤ%) % մF8{Nc:͎4_M$nl}Ps1S\JwQ(UiP7pwZ§~`ۜ a%jP-)jjsTzSvp_:ǞupHp/B&ӃKO{wTSb<%ESP=.zKs&|llɽ{y/̒BZ(Tu\<ڿ&,%,ZuI sހvhP84To=BŢ(ypi.B-&WTw$ɝҍ0$pICwiX/>3m=8;Oz ѥb˟&g\@؍ ~w h,庚4^+nzj(?hhbD^tfQjJat6^T:2y-{4{-P^BP!fjX)5HfmxU8&WP<'3mР-*6@j6gڞ~~w#sx&|evIE'}ieƸȁpSjE}ݪAA ׯ9"Iz 0;̲GZ\ĭQzJ)H||_LͶ|B [q?(`AaԲ7ow.!&Rz-4{X ~aJ󛉆Hi5A}Gg UU哹W/f$ ],HDulm1B:{=qor;KCu|o;_UG7xfw1HJho޹@| .XM(&jfls qziaM]mr"(48!TjfޓieoF1sM`t8Bu$"w]1ryD,!ysXx=gs^|wcgk` ᖲN+UZUA IRSzUuQDK)!U|F<58]VK<3֞eAX|S}ހf\yקAZ2!4-nSJw$EA9ݎ{w7 ,l|< /ML~R~wo' =ȸy=]l(RUr"m#Lt_0Ҽ\0)a!t,Ţ}ŷ `;چ˗bY5MUS*d焲|j+8C2l~"j@]CjlQ'qv)P*=-_M+\8WeGHMtס9k{VbF|(qY1\TEelnRŌ<5Ȱ3Du0>Dev_W.$כo''KU&5h'"$<(z #|j fmrߵzt6Be}[c!Ά ;1)G.tjO1{ whst<.\o kâ+0qB5ɵ Ls:[;hQ :K2?7Y}Mikk[JI)mq:EǂG(4vڑ.qNH<sC~vGk͖ 'k͐ƒ PT%0mDUAn7Ȗ;iPJ⍥t)M_kIL2^ I$ҶYK6LP{ӱ8@ zz+wil쟬g_AhI oAGv@@w,˧U 60m[_R;' h63Sө InH>ܦ82>8u@\k) +n8%r lYFږk}"rRm{UzN# < ь^.Z!$Bx8r6eF%5+1踭_ǥ^4 "[}-oڭOi.l!BlTٲ*lJĿEUm}$Wܽw?-;Zy*o%eK޻EY^Қm~kc p-TkOp f1 q 9Y5Lcfr:/nxm*!х E1cVv#1wH 8O8q(vXC䴋ka)֕C>۹j1ΐóۛ[r*g$bTISY>*'PѵC7hgky;oы70Tm6*9Ibs fme1,3 I֭V_=jI@I=jG0Qu-k\^vIȩXP<8'= 2Ǟ@99"JdLQȥlr\VVj$#vN{DCȖzV@ ZҤ6yMuD>eϑz1iRU\Fk}!BVV¤QDH C=e-tEPT@5@AqWuu;_m*RqkQ|*^{V ^ՠ8 I;VkMIـxX4}e$$Ow<^}srPA+VY~X!r#>9]!{UD1nWT7Bhxa>tP PܿA3`]C~'08_z؀ͮD`|>͒/VDյض"sX,6s1RVZk7]]j̞>iǁd0+!IU~~B}u-[q~fm5>Wh'(6I*肢4D ϡ_e?.AaYsؠJc- 'tAo=GѸɵe8;ĝ7TWld{SUmCex)sA d3&F#: $5 Ju\T>|$ #A/oWYc(3d|]S-2|@zUPK`CQC%-esDoC=}cҁ )L+ /b(̡cUNOOs݇ cz˒ o|.j/=8}4/'V8Āde1dMduHvYG-C9:.=)g{1?k g1#;}08vAs: QysjmrwT? 3G6 Smd%be[ϒZK ;^-G7z$,І_nmFΔS&c^RzK~ !ˆLz ܘ@ܘ dАIHC4߲n=!6)|&<:9#0< UX8XFSU.N_Ikꃇ!\ wQDI_K hϗ4H[{(2X5g%԰oc+[A8.oKמcS!/wzm­H1gI@ι ܪT<Tw'86zM܃}~ѓZ/onLb|k`lًy0"$v O2j[ һV-N~e!o|KUu2}Mf]lUQ璻3f/N4]vQKe_+"%|s9A=)KlD]}_UP(Qk"`lc:gwwKTMd@ (Ox,0 n0MUr+K] vKa@7*2BTLExN;;$RZ[k{`ǐyz4G ϻz@q~=;bΏ}ۿ /<[Ʊ#B\߉?!˸eZ9yA4R l9  -5 ʛ4'r&#ι z Uw;h}Dz0hfq2p8 P;T)Tدͻu68\ReؿX1Qe%܌L63)_zA!tH.GJg]pՈj?x@Oƀ8epܘNP s33+}aJzk2Hvnc_XGwO :o^= qj[ʋzv$<:Cg9\=@L E@Ԯ6*8w5 AŅTRjΆUnLtse_'HG'lbJ O6>X[Ǝ{"ˣK!{8a荝mQ%n$w w5x(fιv v^YPujzB^䘽CQD8- v/8qjxwX,=\@GIY3aC$7AF=R_E0(ɀ4}BTNg#Df쏕]aRpOuɺmMkW͝.[' w]6lm XYK[Xc7Ha*{ 7 0  r0Gfʸ9X*i1PriUYj8,GY^G~7_Ұlj"Dͬ]N ¨Y|MrT? ]q/OR3;YseWQdzCĩHi*-ZAռW'鄶)T{'d(:T+gg|cX6oB{0vo9NEݘeW Z8Ix0򻤮r3-oT mS">)%jt`wN!zEo/N"Ҵy%n'MP~"*-%8]EEYd_i!(78YC$\-'׭ӒwWM8 \}TqߏKVz 9F֛Vqݯ6+Z8>OnUo}4[+w6(;)DDxT:Iw%DOqeeEmH)]&% Mr׋x&X7K޼V/E0yke5."$O+Av dcn5=p^X􀫴M! Rsh<2*:αJ/rWr4Yc["ōĒf{eK(HftiݲW%i!^p2,ި\` #TLaWv TIDcdma LqXP<"^k 3^M> nQׯcH#ZsWy:,uυɡ_R !;ks6q2Jg!;34\S6|)cL׭F+4[ґ%4$$bK&K*#P0nA}K4NX"bQ$@H9@;ۤPM`<PA|S5Xr~vcy/VШ/0'AV"3lrduV(?OOʈ?pV*\U'$ GPQ-nZi?3EW}/muǼpG5 rW2!BuS9zJHS)y[ Y"FЅsLZj*o?qpKش\fN'so YoTú `jU5UC.l2:"$[F^fc +yį 7k/r>[\z֐ 1g^*7{j]ךu#UCAk6a 0HC!lzbkdeu8_IZ͙]9O?;(Օ縆a1rUCBΨ# 2lJv `MJ֏!LZ"}W6k|wbqɸep~d'&c+l'ϼWB%vgUL$,Bv¢OΆRڱBRUm け-f0Ph3$9/tH440V=a3?X \}%I-xmhNb{:wޜܦX?BfR~vW.xjk[eסEto$rWB)&<0~vuL -P1Y6aqیa${ӫ|8u~sZ\]LlJBTpZJ]E5ڈMQ,8!픗Č*?݅W2ݻoz: 귥?w8.'oiCiB<*̧+ LHʜ6t("P-^EK9/) ttP)lsP^u׏Y?Ҩv,T 9䋻@vٱ3WC24no]L  T$g*F jetpF%9ƅG+FqT^8 _>+6t5P[N/CZ.5itߜ EUDWƍqvqBK(@ e ^ś;d+i.!p^]5R-_ O9|*=s0z0WΙLƋ95 tU v.HRn 8]*9'O;|"99d](_c qy䌰,F.yA o˼@4A FfSKx\{y6U] f. gMzeZA3덀Z޸'G> wagΔ jYBNQ9~b`%yT7%ycObNrhZW!t}5&}fF|_!pb>:{xS-`jp*XS$ZS z *>ð &9 H辣TQJ+a`5_8 J֛ [|;_^E IU Ф!E1[C⚪hS \٩l#;aؽ0&<Q&: n~q*eYp',Ĩ%K=eA.Ԃ< 2;rH^\g%]o]k0bN^£4ȰLߏbxs﯑TOn]4aN LNw'Jެu7{f%@i ^[c4&xe2 FFZ#u2BpAsh" i8w/oVg8A `y V% \btl0;o qoúԀEk6us@#XՉzfB? C@&]d᧫$H+tם&䄊408`?G#lK<<R+ho\C#\$;.X+(mo eX[hŢT/Wb=# ĎHi 09 pf.n. =s$LL7dP#?v/ Lx(7up: ?^T\h>F 33X9 ?0_*`%~uiF(jO)b)\03ɗq }jх]˃k㧛OT#xNTxNw0sdx8þP;̏L˰@ oNss垃Ѷk=ؓUKs, 0_]C`-dg& gx{EVF\2(%ROլ>G*7^vd8[3XkD]鐍 LxS#DKd?_/K٤SۇX/E#qL)N>4YJ{@wDbU R-77#IW»F=&u\΀mIV(aVƅ:J'IHhDnQȱ4+q$=Uh" 0 Z,DKQi]VRMagA.>ֆ9oM j%:1#T{V<-Tx(r~0}Pҹ-ө/8[^gU7g6vlAs"S\(b%dV%b};K0V̑dz; lwH~ Z99xQ_ם9)^:[2g…Kդ <.GhFWpM7v_'Kg00 !*pZfZQm$W& \goEt' !S4ʯ4SFn@@ϻlD $ )C(7(uthVڦ3H`m\kOsBjNˌ0OP}Al B+-_v>RG`2cP۳!j %ϷR4Vvl?/, @RD=:~Bp[;p+̓0V~WfO }vփJģ96[j1M*5 s@Tg,[[BK]fycߏ;iJX432QVht; ^0ܲi pu|cTVys :8!i)0jj~L ?CSr%oDoed8ojg&bhX{ѨhpeΫj<(PDSm:P~ʥ`_^`f"8ᦀ ߊ$-L5 iBӆ p B ?uJdPlW^Dop>itIP|$]YsC@!3E}f)Z1}yi-dar®p|ÚeCI8"-]h_kzGinJ0PTcڋvvv@ ᐅ؟z.] z#W7u?Q~@vȦaLb4IUyr Jt(1, biJGcQt,#?t99(#TJ獍DϜ0_S;4M-hQC b-la/W,\e( Gj$iS }ցdc¨81|gME =04W$tZ-)0,G8bsDds{=gt\~|eC )\vB:=}IZ~|!TO6ދ뚍N5 s@U~'ywr9fޯ_aD~ co%ؗG#0v[ +ƙ34.S_ ^T YyaX]Kپ薙iZ Vu"rz\ |zY 尀OOc3sFIX#~!%WDvBXt )ӃwZ Mf[X7- I t6^fS )gXh"4omF"S!a,C?z"FD8H|a|3/;bIVթ}!H(UhfX]hN=Z猓EtȸNTІ*#9KӲ5uy:)*;cHw&էsHʑ&ɜ&^{*I?(e43%frj \*]Ĺ;54Γ6ox֨^ol|%Em안%q^&g OEbmv rmi2!I2¾8{8f)%2楞8^rREׅ+oe7@L,sx5ĖN eDUADhMF-'|P*gO/} !M bH9UgyvxOGoR480K 2'T#x Atg P';8T]0i)&DNS4 X8G&zZ7 CK;x`&&_955Ej/yLCEӟJ~hH[, ХP:ԛ@ NF]̣z%1QFpaeA2֚}f^@wF!8+Cp/Ǵ\)4=`CZ92.-ȁS YFru*EMڋ-xbz3`vͻ) αƔ"QClmJW>L#N( $Qk5W @ܴ;0b >-x]plk"4@B \.tͨ{w^8qK^{ |&EU+L;WR. 4}ߕ&V6kI dsD7*G˚sIFRz@k ypxh:eFᶱ#8e |tQ/8^HhǷl/Q$%bW5\m˥»94;VL˫MFj?)Ql`ħ3Q+Op!]e^BuGQq0ߤ{T*0Tw6w,GC֣6 fuK,!.mB^S_׶QO?. ;m` ߆& Rk Z (s}FUeTr5=|%8!@tvkc] J#IB@aAᔹz9aNKeꌳJG)/ :y^#PG/icf`ZE.~Fߣǚ1tp"ɢ(a*U6bOkᵻ{z_LkE=?EJT/Պ3Yyҥ-.va`*“I]I6VMt̳%Jă:C{jtI,6BLr9;iNl&TfOٽ,26M@·@2u!^V>) ":$XcZQoΘP-Ajb yfʺ B%9(RQg%[$ѥX hs5 $qT dx|jV,&KTY\/E!-wr>^Fu.h$';p#A|U9 zE"@2V3622?>" w3qe΢.(Jͬy!S -iVCPK6r QpȌ )_YvboЁ%h  D<@+^#k bU!<5MH@ g3/"}v=w,Ʀ:B^WڥZR'_vQJ?Ϫ?홀J=M{^]7Q/ϐoe샣mW+}FF :(p&;51`oRZF <yΎ>֑q*S]n*L ,j.r.eAw]S ;VP=:9$lmۣd)X)r3W߮XE713(je?3E4q*dby$l!_8BPC ?*չiK,J";MG̞TIm[#99L5La@1*oQY+wࠌ-mGMW\MjEO+=.DGWR8/W;wY$ usO6M3Q A/ o =7uKM݈^g WNO,Okk2U Vm6Cj?hkZMr vY. kia߼vinˡh|!piJCrbey3@ʶyYᘹ⭫ITj=2}]Mۋ&sOrZ k{|E)e=9%Zxem &KL!’oRV7 MiMiFM;ruLqax[H2荙$8օ|_mJc y6YKB(Q(X _S"vǨa]FQrl!*ɼoMbpMBvT"5 Z["6_!Z X3qBh~[4NM: =?[:b 1'W9yw}\UN"˜/κ `xracv;Fp1FlcBa6a'4AIfHmEt 3%*'ZH)sg+C}k/܁~%&7T%N}YM0ң\46].=;r gd#a>- Rgž$:R?!Wo#k% iVobFi{○o1kJQ10U1V/*̽-R>$| IFr\T"}Կ#s/o؃ m'گwpAIő06Eu}..\Lf؃k!Y-/_9+Cdj_Y|֐LTf`UiXͯ;o$:WO'TX;F C2&P|WOyV|Eoۃ*fKtyBj=Jg` nN~k>@V!&qPvD_o?5ɳ2 Ճ'`ƙXSeu7G 3dyfiF6zɪțDl PW+3C~O,@MhK S$.|ILh"W~lOfXpA0oGElt4|hoYqO1EB24p\M3}3u2POk"r]_nDL7s*S' k": ?7j <[$ o$bYT},zb gw=>D3fnOp;` npuٕ0ٹ~[Dp\MoЂ ogD)59sQ@[!znr֬1-MQnQXQKgf&gNgJ(jl*/7Qگzf;͋~"7*3]XvPR5熩WDF f-r0Ԓ9K i>t_Q`<)Z[e4#lIDe]dd-CӘbHMEnC=^P4&uo"9,8 Y c%}rra7VKHx1炐F$$\c_mB GLW\MiА_UW0;8 y&L[{aV;f!D?#$P€EzW%B!<(Bo49w~<agNUs{qL}E\V{_旻뤹W <(.9λܴ#%ݩqYB.se`3*E >05Fv~ܘVr?~%iqCZ%0·L-*GgΦ&_ B{~.\qO9{ x(g}9DT>ا줟ѡb GSY4qSP<s/EfK+f 1c_.{:wjpecI}'8RHԮB $*4XtUXNkۄCu_ukcnc|672XDpvQ2oYR k獜Uv-=LD,'ѳFSҮP&%k'oQ-J9S(n_&1$BMO]_=;086?D x quZZVP̛u-?ae m_f7ZXhFR{}tn[T˲5fO)ɹYzsAz,pXO^ i"V#tqHvSg:l@GxNwˀܷkr@8{hmXa!f˜5^bo =](B/ ǰQtb X78nm[ )@sc{H 'l-7̅hcR Tcݐh rOQ w7ao~R۽LV_GlU}=J,vwӜf18,]םpOX6zqj­a+ݱfΚy7ɕxG cvlF^,A)}i DmA>ŊƭzhQq{Gַ8d)&Ң+%*u;S\(u릈&kzažVk*;2we l]&<\5a}s$1bzul3Vc[ީA-n7r=1h,z2;ћ~SlIy(q-"vhbc\͟N?I87T#o:@cjhE(ܫmY^Z6@RE*hܦ:0pǀe0{V">gȓz}= 6=\˺~dUIΫ`!y|hEš}NjHQiA#BS}ȭK 6>pPi RF\ydJCx0ڬkf$M%tF!g&?Өzݻ!m/I'rysջhEI*iA)+HLv7}Ď'٣]<d68yd8օ*vvPHŤs{H}U*:~yݡ |^b AiٿE\eQo XV.y"Ӣ9ED9zu+bu*0vwElEnQ:2Dx_~7J:Z,#`07ĈjA4gP~@'97F kC ᠿI+ wø(ΩIB)R$ Kvɰp⁖[>ZNPʑA}ρ!;|BfLfy 'L WkZ5"\V7dٯ0$ ᇱn/>lO}%abuQefSĩ5rnXd]I$% $}!r㜎L`b["8J9yN\12behpnABY_;)fH ˉö :,\hZL}xW[vẠkgi`IH$I>pGzyUPNc y <fU{%r{%A@/˫kUY}pE#}ʗJYD"%y33-<29hv|R& p,bދ@z8txo#"V΂xwdR~6xBT+L_~T_вc?9- 2ga~j8Qχ&MlL"HnIV]ɐRN\Ԛؙ'QN}`b PJ f25sp g1syr3-m{!?Ћޔ=-uCz 8rq\ ^ˁlM3PBLn1}﹆d/'着}nbT P4m`;ƪɂ vE@TXFږ?݄hs N>FCL4,m|cO?ł @kgSeȪZ t1\-@oMNE%{C~F36 9 a,0] `om3O)Z(C X5C(jKszhL ϞBd0*.ҌINyynvL-chW FXTwSJgl%X8kV~nE|6-2L~3P? ªNQN=) !vŗ9!ReeݛTtCi*|ڶ 5N # ;9BS9Em7vc7H2-*j߳~5s~Jֆ>-:9xhfk:N m%_sPW`D١G HAEWz'/P_:<@79Þ ^εJ);[ |=Wza zTcöӂ Mީi2B&\3|tzE@PM 8]b ޅXszL9q2qtb.nYL 1Gmn\D'nD A-]:6d%_Y p҉O'_5d*8 3*&zzPZUq z#-t1b+ 硡zrӢ<:I$_'|UdnGٹr17 cuNMMnFxu)")}8:nZ+KRpZfz;i?e9l+>3]ٹ%6qTYAW;h F_,"Ă{HD"8W0DǹF0D8=pps|7Dad\ʫ(^SC~c8hs<#޲W i޲8[EۓR%ؗN;VmȫiD4I"3q`/mØ82Xg>' Oa y@%W3;2"/WoQݥ"m =Āfalhӡ'!"6=ʧv{ڃl҈:4 Q,a|Hza4q_cB!e~ wsmC?j4$Sw||&Uv]")&j,h oc[Z6`ܟ5Uo>vy\4851&V.NYK6EJ5ۈSrN.*Ⱦ¢ػ.4$6W%6bK<99k27(# 6?2OՖŁ~2SF/" ?vr\p{+3AULisQp96ͬE/DPMÁKHmJh] ?}8lDY%}tdsN?_Tw|%X~fB?HxzhG 8y,4n' ʌADT38t%Ņ4MvD*bvC%F#S({C]-~oh,3HuYE f*5Ӫ.<=$F[cw j+[/U+^{WAt5qH)L ٧1'Ux'{d麷T7hDE"FԹH|@o 2òv( G*NczzwZQ<7B照NBN4-v(c ǶlVAKĉ&,Bχh[ ܻ^bn8s~<9FS20kS_T$q;V, ӗ-vKSϨ5\- A!F:h6AG'b/ 2EB?YsR{RO{)o{]fm30%*=Z 7'tbw{B:'?nf:pV\] oO0hȑSRq7:y8 q1_EdWƐdC`0]롛5~0n2&A#(p"[~xkJ8J]{Vِɫ};!:[(ȷzyȬ[>~4%p>;gEFwU~Iwe\{BXn?*hz\a]aah7ג+.5O,nT-KAXf`n R!lQA sRXMgV >Mf"e~.@i^]vV)wh{[*D;ƏgъT[ @$Bw!pR@6*S}:/($j *O=R@Zz Ef~}~jb6rަ%5v(zp4nv~iw>Il}U1:b.m#萍wYҐ0|V>,E^lYZ Bi]7fG9$'dwD)lwqQeuӑK1D&6I4W 宦|`D]L.Xk"F'u9C_T 1+<3nIrJr͇1ͮސDc 94d$JIck#{]3\x,v8tpۿu&;%eAŽ)֊W M(ƩBэ 6;^$@ ) @t<ʵ{)XFF8h `jl1B&ӄOquu.bUVT2bBG @Rĸ_ Yt|{%|F X^NSJxT![}M_j^{g'\#5CggS+zAI:{p2'V 9(l3k831R9pWy?H\ݡ6OQ ۲~z32;" +iId;zom ܪ⠇Xd2tV|ӮzOhTf^z"ٱh_B+g<0QQT JUpA3q3{u6Bdi\e|:c s1fR=v7Sѐe ? ?ζgrpZm'E|^Ѷ̄ h%ew LO=~! UJ (*&Yk>("pN[ؽiGi /kFUPüclN )GjiΠQ3]wޔ;%Oz˅; HDtq! T1%3BɁMR5Cإo\n[L|Og̓!;0q̘T=lE2aΌv{S&YTW1>QcuZ5W7%AtoTzyAyd9*8 ]`lZK Wlt"lv_5%-贕HW^0#KMKltQW?n~:7 ߣw" U+sprz1Ԛ +_L-CI4R ǡR@A+lx]]Y*$ط?gW3s-*|,yD` ʡⓅ%;)DޞUhvؑ/GP`a ,h^Ma>*/dŝ\O^B8ތc4Wc H_s_H:^2# eͰfܟY(Kx@X%A,Mh BIDk #\>8<9=2_ &O򶊃V5qWYEXM.Ԣ%Z%p,9B ϸCW<]ZM'!:`jr6$*Ti2zJ5 ,MkA2u0_5UW $nic7lY8<wC&InW*}p .:Į)[誫R-\)f͆`[(|M']e;w"XsI\7}rҽ-EzT;M8vI`#/615v6ޮީoᰰx:Oƃ8ώkw"}"\W̼)#[c.ahzV Nzibɿ ) Xts"A|Ux)=B^H/2PwhJ.~)[Sf=oBVC(sR iv́|Q s. EMT+TjOmp-, ,3JZ-Ĺ9sôPo/~5E^ަNG7^8o2N>zç8-˅@c"D_T7~b[b!A9kNsH2311Jֵx 4 R}QE޼zjL8'HSY`fc=g*sI_ ;FRuߖ^\i8/냹å(1K:,.6dDO ReEǔk)9vBT/K.~d$@KdݲjT9_(?wp;TÚ틂OF8EpqIąO|̖agʵg4o"B*d|7#£HvdU $Y%Rk>&QzW>GtRD39p #> G?+#!DOki[AY,g}ɜdX /X8G s8X=SdJDx%%Rq;Nꤪw/<\JlKpwVbCMw䤰آWu $@mpfk&F M!n>[Dߐ]JyI=WǪ7d ltC5?V<~m灁O. ̷M0h#MP UlVA&[-B0F׻{MU }&h8(Y#.MyF"x(ja^Y{/Z%Ґ.E˚xkߐIȓa`șR3R3rC,Hޮ> )ks6/"2w+$#%vc{U}]l"j _h5фr "mϢ\"_X_Sʋ-VWh%9}<̪KO<Ïe7Я`P=OpC_б\M/TUѨlwBο!:h-^&>\O)mNox@&؃)KRu}cvbioiʣn=z+ lE`"_Q8wu򀤰m,wVIꔴ3eXa,[G*6+cjS)bKRBLdw~dD6s^q?[J36$@e#*dx1.)]س sYrːŠMyҠ^@ZFο -N 9 g9z CH"a^i6'wh y9oݍ?ECBqv6?b_^ƭB!`Fɡj׺șc{c9K|!2–p*3s{Pܨpv\+тes'.k#xavexNkaܛeċFN*֗@=Q] 'KuwMqwވ="P9E} <@ #R΀5t_|h~-fn(MhVG}4 { *XMNKpL\$!ѯ/4ɯH+M=E/"AyГWL"W_0-,eS[5Ik&;Mǎ:fgh:+ƀ<nqpM₷YRȝkYm ċ&~\Br o'$P?צ3C)]&2?x?i`A' ?I*UXb߫SnEB{RsԨ9VCڿaUѵP(B(m\ogvʯDaN+>e)(xnap"Bȣbr,1EFu\bMcNU]q8 l0&~34M>`7裄ݩ}[M5T۴Ս>_PZho+(YWφ}^\B8k3:m {AYܭ[#M͚bˑ<=j& c=vtұKB]\Tn»Ju,C@a w+օc@i A5;X˃Y jI*i%eI-.K֯64DJ GF;CtqgR0`sy@r/lEpȠ7eip2]4jhEqֵמ%M\| ̮ξ{ =.m :vF yzlV1KDžX'Nd铲7{)Nzi$rh͹֬A cv%F.;"DЁ"YiJVtZi# C/ ?=}菴{dO$ҎͪC!v,tg%"ܢƜSRi wkrTE:}7 d}RaLët=8~gq{ nَ?RyeI[ð|A4q,Gc"IrA2a%H3++`,f_s92ⶱR-τSoKJW :Unw?#x6h:Nv f^yY|&YQ @g¢1~"{:ЪnHx;M]{jctn <3J&SF+;\ dm"u6EwU{b`orm=xgFC1+?~$vȅw}?Z5 Y/c]f@ =`nJ!O^cRe筪CHs!dUt*'nJ:#er_rZk>l+dUY{Qɓ~p"FPvʮX zɟ#P'ÛnnFZT"$AD7Sw;/|m(*uehtL E‚zaX8G&56ZA QeF=ɢ}%5ʚBm,X_/n萠 ,cFI0Yk_|ɌKhM *ydK-0<}p:e3ua^lc.Wp#?s*BJ2\SyBӜ]WLV4ׄIhd^ȹTԕ$(kI̡LgS4iH R+d :ڔU?| Kh%OiyڍǚKJ5^6#4>*-7m,%tu8ېJ'9wIpnha NwBUf)ssڪ}OnhH}%*G9V@`Ays^I7_`R<$U0 Ҁw3-R~c{0ϓ4`VIW:YY}O)  iΐK%^mZQӲdB(Qpo+P8eAveWn퀿J:qj1-@)L{(dʈmm;f^2,>8HO Qʞ<)%&?bS9ϮnkTl_9 | .rl-]X4J3{`|[>6F5CG}crvatag89y &VYY-N UdIw"+Q'2a쓐:yЃTL؅^Tn&Jw:$!1a~"ZmMf!# D{p u,;!u̸/k=p5[*2t|tf8:enRتY*k' =q'Wx6e*O_)iה̝Pۭǟa.z" Ģ儷5RNWV&  le`MUYV ^cD3b,_>)At^RU{Yyfwvzl4Ȉh1s4so_β陔GU5txeS{@0N7-6B8hѦꞇys|!t;b\KO ءozLx[HN\fcN;?BVnzcL=:<= mPGɯ>e܇Imh2k \4鉶ɇ4DSW 8x<1^>mm]YO@.`2^ABU75M3dGdq& OVKh#J@Q @*&{Py6dPqB8 ۳9+~UHH `Ir3!|EHOoMjyJN얊iB &8N>@u$ rQ"T}m^b`d|aK )=l*tSk +,Nx; oƨ>%Q~ ڶ*d>"T:AHZ0٢$wݜKLIR w/ECNm%Ժ7jt֜Z7&OEm9 'VuMBB&sƮ ԝ gBKWEW r;ynz;Q'ޣگM$p:3 L - g8VkqKK5_L &A0=nhov$ӃlE 5l6&S!iL17R2~C8^֤݂Я9}Ka~s v) 7W.:lEqmho"gԧ (n> 8.> cUq.05 ^"Z] ©UwD-Z>g-~cJf$^8տeټT4*0%%z5 5*fWo) Z(vB˲ΒDk2~*8 Z>x.K'PRfGzH7̸ r{#.)C($łX;AwS6БQ~}c{Lfc?!?.2JffCcdr}}WXǪd;O߇\^,țW),CފJ}d )];k~c@F(pˌet?1N,_.$ xl T1Ge 5;Պh!%W׳Q 8AGaIݚqFB֐ńCKF46 wKBJN c$eƟceV$q:*Z$KvFZ{g.f ?ſd=24wOV i9j3.jaH&Wlܙ 絔pzt #v1fc2>WlOAmdl]%3|ˉC z#l!3>F% HD>ְ<^d!"'v>0ymLqOXV'@hӚEi<jnk!CH+\1bܩcbH!xmFr .& OrɊ í_'$'̇.orktO'V\n[!|qۑ{wM똜5'\#%n8)\ʽɜE$?vb5`k{+lJ [u|(ATƮ%1ɷ ߘ󴕈HWIU$:L0Q]ascRNВJk=̙ci%y2&Y-1+⯘:,wFegh9I,Ve&s̾ }G1͟F캒1mI-e_bYk^ʀa/UJ4[4-xRxe5V5P-a܁1ͫiCD)I=2O07>vyp:U _W(9TZ4 ;v,>,ʺ9@Q:bFNqV,@`%̺+r 2U`5dh.,xw 7LGlNn7 {\5,3ޯr0↛+{eT3w_#9u,j[1r_ov}gḆmV$TpCJ週 ڞɦ/fm,m͝䣔jTX&܏0ua%3  +SyPx#svǸM{z]dEKg9[cfAm.:Uw(xKÏ1.iiȎ$7.Z-9k.$kk\K9|3H"}H Xle:1Nb7V(bvoP ䷍u)7ʻ(=|X@+&jSah~^Yܺn'0ڙ3. :Y.Y~A}Z8ʹϒ:\r| ~HTXDdI Kp%jvː%'|!r\T}5ƥji)]{`Y~v(Dhsf)LN{<Ҟ癀BmJ̶!}<V4Q*]Y=+f8V8:@)C[ ;׈ 5?"5(o~3KTS=ӅcZbCKBJDp&IQ] E%AV:S.dX ;w@H-,O,hKr^l JI]r3$]Ϭրy_`φywཝ+C uP_0M\@Z>Sήc 2J2>: 8xd}:MCXμm67ַ8'8lVÙN[W[礚)VsdD~؁L{aE9|A8a#4|**-)]z?ٍgzv+bkaR$-͑s.@v'5Ws#fP4{ʔQ8ԋ _hiE@C ](BUwgH;#Xɚ̀Y#-a6c$NCZ0=|*diGڃُ Ww%KIݽaf%0XuH}@3%FF[Ky+x-yȥU `uoe`GVE,5BUIw KnrU7UE\̚| g%!j߫luyXç쭲dOy!6R PY߿}$;%"/r]3q;PgN+:V *F`=nWt,-1S*쟣8Y}yDvU-?;;U=Hego0~-x3"*0>3AP2-1%5?j2ڔ.35rhuJ~w 9:1 )[{֜SO!r+@˃G8HIQ[ .k*"7R("r$[5G27[ :*?ρ̚"#8nc`lKzd+ԉ7Lo@gœ 6 zX'= E6ElWU wGt5|Ӄ#ڨb`!GնT1bBCKud3 _>(z}kڔ yDDA 'S]#M2:4$d8v \bG<چ;4֘cim,>@9@f:ypW1ڴ7ܓsEӵ)iR]+2+zs,.jZL(pB_zYd/2=]{ /d$ CEЗ~X"BGr_;/YLj6pOC c1YSQ{_JM,`Oha\ۚГ4%UzUR!wdǞP Ka07kIx#-36[IC;ҧtejp!>(OF*tK7!rB 31&hY_|a{4lMI} 6fy,#&db$*~ہm_o\R BHWGeyɋ*r~7=u l\2xo c/>{ޙpj8IB[0lJ2˱H(5G ø-@[K|_{(C(aWD D7bm78Q3eROXo=ev.$0&1kS*^|x0ޢ{ *uY؅I֜xF=,IKxmo[m.{-ďHQL~}N2>- <(aTo:oe VaRhnk# ܇19k9y%JсFKC-`Dk< t!QG A;Izq"Q.zR]GQL\ա[]vjlo\|> pM,W"Ms _ t&?N-kyEdk%>Pv*bf͊NFy3F!C I@ NB$ِRP.UquZ R$UnWkt/C}39?1-.dM3wAL $8us)@G ii\D! CW渵yQxb%BVp@Pc?2Zy{y A(*vncO$n;@>P!価iR$  IPxl* 7ritVHl]O'٩^U:~`mFst9m6Cک;9a2 $3Ng0a G\N[M4x8y/ [$(3 >U᝼1U!/m~vg1'-"_ e$G1|+<EEfw+ZD$:V dzI, G a 0@'s2߉7_vޞJ@{UuDrs{<$;s&1!+&Qa^/ҕEb}H/XF4$5$v9/Z{g3] =:}tXf9zmlT^ն;fd"S_ 8djq_I)rc9i3$q7EM䐯ac]iuCęho6+w /f's83~@sxٳA\Iu +*M%d\Jm=a &o 3c'lH$cJ8bE"p;lછ{~T" }̺Z^S hw+l:RlO4+9|Lx$[ZqoDE 6@0iS do{Ep&6PMR,{09L:IB ׈T]KjзNe*%zE_tYMԚNp_㿤hH0h:n J؂ew6ͤLZ| ex{1>*Ȝ@ﰒaSu- B4Wx絬4p [!4iC0==IXƾ0S G"vsNS]-e.yw@$m]4] Ыj±~%@xVC۝ 3i+El6R0p[%fg@֕?-N-6^@R&Y#7ɣ_p6tfrɕ<^#&9wa{AּJ;E%O|-_h)wc~z:}큇"-9V`v'prg^G\ʙ%9 P0Yqf@ N+P8Ф 5Ħ/MHAxx$k˞'!-#o{IqS 53hwErۯ  +<[B/S, hɻvM@hF!Z:>Vu?6储0ɟ 2Ƥry%7GgƧPngt L~N=uTdF1kx!a˔MF'n;IXo᥄KO:;iaZp:G"G(p\ùBFͦaCX]h^L%F`YZZT9*԰*@fཌS%{ziݑA,RY{IZbF (UtրF`Csbsek_F _.sɑæ~:l6<[' oX}Y.irh=g~,Q}{UTAtbNBU0!u8U_ݶ] |g-=6$7槵o }&+l fu0҅ Ō zSdÌyނ?BBAմmL}(dJ m̖{h$ \و5Ow=YdA `B-+#g9[CRt9 T>.'.{ 4(]ZܟYwݬr.:]ڪ]v=o u\}X8A&;Opj F3i8[/eaʩ}LG˃rSH.=U>hfs^.6֍!x"4׎BOwO[-gXH8?4Hք cVOU- Od$EY,QђfR/ 0p{f 3kQPkkn/emܛ1hMII󏆓EBq@S2{YeSD{[5">.p5T2jc5caWs=|O OA\RX8h U.BttZe[%3$\~rMa&jz:}˙F'Q.KBd<}˾sc0xg$q#t9jz-ÑDm'tÜ{|Zfy}qs M>L=V$|< 6{Wi6BX́Q05>wX37+v*y>SM:b/b:{ؤrL-uQUПa_7S9Ȥ+&C|]>=lkTy7+ݰۯFSGg# ŮgX% 9j8 %tn|e9š;Wm_}qGe[qHyW_3ԫl V.p:~k_3,ɻCBR{='բaI+=SKޡڣ)tQ+&\^ËB1ԕ-T >2F ֵBwhEBḎ4.T|"cQ`+m"7%h4tHqU&wOk$!>dv%RW48ez Cz'#s2K\Y^GL!\?{NAh> @3/uۢDA Nb0ER'%S 7&GʓiQם~SBkPyn%!.fT6QuN'eBy@=[?Lb@ҿ y4Gz=ɷ-Ib$u3Ϩd98*4eXXi3it= c]YƆBY;5˱QķOͻguA[Ȫy5ڋoʹT&HISg`3= Bi?4ɶFԃcV>|X,ctHFeʼ[YZ%9%<=£Vyl, I߳lI 8PȐs( dN=Gށ.G}c".6gZXbVHvR3Ov*5 ̨ICLρ;"3Av'uIc0wE-֊"F65n'7c6\.`Al |Iqה(e沖> cv(cِ$J\FK1 DU6K\U!,(7dA2T4-4"n+~뼂D푨Ɨʲ0ݞ7

u wx)qCօi'(C]yCC>r ͱ췗ܡcyk"ShouěE^o Q|Zzƍ_ ZIV+&ڕ.۪"] ee1?spHKُm1;?M٪CЃ~X ex`uV;xzmgUIzD9-~UklI` ѮzLe'ybb#?)~LwdGiX'vyN,wFUd&ՓW)l<B2\D 1n{b|A@ gf1aM茟 sx1[ksul1feŇ4uDF1k},Lxܴfl4tB=16{N$EXD &ՃtCU#ar82gk@>\%p6̊rcFa hNdQ:BZU ++PC10x4 6y VIIt8 oM`WOD{D`lZz7:ҿEoXak#'K耨̛)G OL+k{;[2HFLFTcX'udJyMW%aljYzK"+տ,|%ZEi=eWe/) nl?Z+`eD?Pl2,=#.¥4Sk}/0n({ôʀ}Ҽ)ef%=ovVMjn4{7I\>@r2[6}3ōs$pJ9S:h_ԴnaS T>_ΫITjp4*;~#w:1>W Ir.Crjo"_W}BW:nJHq>{F,[f.ߑ1GkCOPaIۈ+.OL=;/iI6x~^a\ZvBR-H9>ܨ5ܰH}7*uq4?6Lz\dE8kxE{mgxÆA=tܶTmX%@bl'q$ͧ`}oT2:)Iہ* 3~b^߈ȵBo?Q z׵Eg^͟鵢@gvO029rE>rql(o9z4Kȫə_ҨlojAuZw<}֗Yy} k5GBP/Zo6 9T Y>5p SAݍ3%|vNγcK߫-Q k3 E# J*62dm)8Xdmrލ 1#jƲ{/.*aroXNG`RwuDhmCz;>f Z).F!͘+jB: k]IUdȧAD}DW6fSHËKff21})5T.r|e 76Fu}|QE J#c66[ {oM31 #Fx|Τv$d3G~ .̒f.f؅0D0;ܻBSxU1)z폂#)-N93] q`Xh`ag7n%%XԑjOsI"tI%H<3J#D6wh[ 3M_pܞ^i(HV||/vT:8~la!ߚn (RK/lEzW4p.n5h.`ǣp7t]W W&'h_ ؍QjRKWAЋ?/@g4 D + _,޾huf1n~e2}|;=f)2fcE ރ*BrUF*vgS9z'aꈤ^ǰjB' okwM nj^4-N[+a!: ܹ ~!lvj| g÷p_NCBLˏ+VE"gݫf '<#hAiQ]*g f˛w|@mަDa;9 {Cn85VjrJq ccD= y@vwX<^KX6UmVb׌nE8lPשD"T-m`o`$a.x,S*濗tW`:yēy9P&!p\(JGoP%AwN_t9>S~U[OQe|4}^s}a<3LKڼ녏{ʱްlu5^eVmZnDtt<9@Z"瓥tdc` =%U)qvbP;n5!]:6TM]uSjB9ڴ CZ_$XAXܪXQVw\$\;KZ szpg7yN$У6!6VNb@)F|>lkf J!^,P9S+xȖ|}f4]:)`-#YcB~ugND֜Кwi]&8Ug`S@{e 8I(ށb3:`sP'GiiY)fҧ6uz4DϜ?] /e=$SղCwM-t044T! #%YO.C{=g+>Wﭒ2†y0d#~u΂D޹M4 ^ mT"KZgT9zV649\>mrYZ<8BT + `6-!ߖwU?,\ֹ.2Lb;RĂjuJ;Ԙ=4ETOwE<(U *t鎘ąp78/&;|4.0k!S\ >MHΪO8O~P%Q | WQDEd[t:9=F2!J k)& 5SnCWh6-q6c!$qڭgqbfĥg1Clze@!r7Pz,5a4nJVr3n|wJ{\TBҼɬDRL:4_Ҁ[l͐^w)du=~jĎi#ob<զ|5#Ta3-P9ӨB^[c6,j3?#6Hi&33 쟺.uR(#靺B)1Cu#j_gL2GىXv&74Er+HstJ<͙- MZ(5ORm_hUaz$V 1" 4b*- 16;~䢋) WRy0IF&ݪjT ɢM gciYxXkq Glfh;¹Ξ]7VqzDYO!_5$6S0XW| qʖQ2obCJXZ,|Jޖ{< thXVMG)NւٌF*_֣Sa@^_y6=9kR'nm3 FT܎(阺u8!x0NGTQ7lEy]3m" #%ҙ]qRG 1& (91)V''7&IrO`'f"+\,C;uke)wz⋪X-I$Tk{6U4^q3yqcTBؕ"`2Y7J LKqg}7=T* B@a^ t`r3ewBrF2 NhE5^uo֣(#@>UᄑthG]sp7#F҉ j (|ITd;*@X;J٨$4 ֣:e@NGUZ}}kϡɂl*BUkMjU0%=9k`U9m]wEFX@g;}t.N?/OI2dq+WE#5*^}z&Б@ "TQR ^X6/D4ڧe?N2dRlDrO\҉R5 105 38NYU"b!VxMf]`g!ԋ 6_ݟF0>1b{hᩐ:9iAь2 _ qI`L!{(Kish?起 k5nKe/oVs,$rDퟎ>f$`$;+><߀,0p@BCa|a3kTqVsH(~@~-{GG/K3ݖn rSy e*$?.c8Q+|zAm=~/>X=xǙkZ('-Dg\m$/+GP%"$zҜrHZ|-%Du%hJΥwirKRrCoc'K\(AA=6ǝ%QC~4ShUD%P uDm=C܍OB/ݫ$y Myz(le9b-+Qܹ0[n0L{;TrǛ+Fxڀ*5Dc.|zϪ٥-퀓Aw & b&'G3fM q MGCu.zI (*#dyP_6XOj_贈Irj&p>#ޛ˔ 6<Ш$G?cݳiHSi07dufΐ (^>ު"St )e@Il_KQ]ב@:2/R "d˜OVa׌@iQn'(ݽ)+hU5Rn:.gHY3YZB4NB1(} /S\z˳s}9*k*#MXMkMy:[7;ݚn]ğљiZ+ګ`jyYVsF>S4$c۪HcBՊ>0A ȹEG6s#Rxa .$<"sMJ ^ONh)@U5 }'x|U~X+R08p=|<ӂ]4ֻYPKS(^^Le)ٱR8և%.FU%`PWp8 V|tZnD݁aȰ6ww,P|6P[K1;=<".9$8)CM%HGvwG:) q5cl3_L4SdΉ (؃H5$Bb,-^+ k ['9+Zer,'fP^BmaZvu\iggOYtժ 4wբ]vB"s~F5̆8HM` wfc88_S?*FkD"ܳ 3SC9VOަ7o1sFL-%u|m30 3$Ц |rݩyG:v=ADy1ZBnKvi~ԁ?iA~?ų<ʧ8A~"NV^s0ZnYƕ%sƟʠ<,3ga.&,rth}=!BRɸ6G>^}w2An#̋WZX}.l)ج\'ݣImY/m`ʬqtFٷqj,+_ho L(oE_n="EhD\(LD&(4jEJH@.zトcb;EL`q1va*n׉cgd:U;iYP9ɝ"g [0nyP{YGkF*tl{f<Ӻ(`3xDv@ `?<}#"4|G -=g!?a:q*gNmD9 FaZ9^/x.כ&s,,(pЕ 73,OITd L?-bE^^혨sLv3eJO6Z*;Il5g*vg g|񷮁܇m: @!|b.pQM3>Cd/iwk-uXB- Cd:CuSȀRܚH +21``)Nj\`|A^hQ.d(LRI12C0eP yGb7ݮ )J\QȜ8=qyFn vKNtK_$eV[ ܀Tɽ.g+_87<SsZb=:o (lR/0^~]ĮP4hWn(ݶ84B%%'B8FTW|o}2[,wrMH4#vT^+7, 91TY"KqJn*"e.H!2%R=0E/%m۴ZQ;ftИV-38UꤡC pVӡ3ؖ0|̧(+ VKh7:}ZbiG7=YD\Ce  OQ[]%:[1L)Os zUZ%AkI<)`7ᡑԩP.?hJ5G;?:|S-Kl@]oDy8ZM'Ǯڥ怾4D&JLOʇAk8| t]9`kI_io|8g_hq>MQbO}MmYbVOc??70zRm4͙BߺFX?­Y8G=>I9T8`0~ɔCEF@A:U H<=Wg m"t7^kk@9@E8?Yh._ӵ4,?I,Jlc-JG(2 9&d~٥[+zg^G z]'ӛ~ XzxL_ƈD(G!a}}ZFIA_Gl I.W>0m0a΋W %VN43Z=.Sjua"r X<`nyOO(1 'L0H)C8 qÕ wUƢ. ǯ BG&M14hF GV@\6bAE *V>7r)& ~{n; &YAcȄlHMKDZ)vmO~ŲԨj~[GmzoyL4-^U–GuىrOd!|o~Yx]vLzݰ֪1)dC[gXqbiP~:%$]4$X̋'Bd1s/82Iۼ:Kˢ)C{$FY6Mg;Yo勭'P( NW U7okRߞ=ot h?\Omp D؛oh5NR>o-zy,6SB>wB`7 Jk,֍j*I|)⋣ Ov,tq$gcͰ&/? I}#. <^H}f3_?Jڴ`IS7\旔ڻ@?PoWA+`"$⑩uD iޤodB*RItZ1|L؃7 )~ɖV&2tgE|0Q{b#m kn4TW36*⣤V 1 ?;kq Q5[Iix~]KJgQ~`ls6&W?jc6*x7#Ҋc|W,cٹc*S:HOѧ:E EQkѝk &PíBח@ rd&B[W'K%#Wf`\y"j3hdshX 6SōζL]V>JW^r{Q:9?OP_hl")բla` 7O)>6gGЊge*^KIG}w"o6%lJUw9MRJg^?dKwFFBhd]QTi<{:7bKEٲZ͵+ϱ߲+Ɗ+ G@Q1i-&ZFntC۱Fe}55x<Jϳi`YLa|M<8Dl4͎ dBL\ +O & <аL/B @;:.$lq4s߱3;$yp 1*"ݞERTtkͽ JoY`qzZLzXqZ1~O06$Kh-.-U6J *֖+KlsX6,>2߅Xi_\zߓK7oY6uer1gAr2aAH`)I;&228([!6O3$a>> ([Ifzo[PTX3E0nq|0O)ך7sbp=z|U?U,4=X"!k}V7 6 g.XmHQۀ wme2M+< 1{3ԮN3WGG $+)&_{ntpZE7p,af=PQp'-͎Ab՜\l:F-–N]vO=#$6w6Pz4qVey85I e =_\Ows  Li4yN%ĜV[,81OpP13?i+~d⯪'9܉SfkD74i_HY&hBׇ2;#Ce*JOk sx&7Y}FwBL5s%ȬJYԞ /nHwD(K ҀʼnI4ӆЦW$(Շ4YXd):F8)OΆjV&%`XlzO2Rf;7aPkXƯzN]AQY6Ȑb_ϲ P} ]<5vL,D`b7@ܚk{1R 3rSא,IXY ^]qhra{>.n_4÷\Y׹!D5AɀF8$I}RQWDE [e :dި<Ѫ*)r6>tY! yuI)Kuv_ )I}߯}w|w=5)^(gllUSP%"?17}@ItCe.n,Eꑾ>#~4rlܤ#  yiZdY8QIeMաMn̼rnk{JAB>͍dA2ֱ L#כ~+ 篇ݯ74!//8"]U߲p5;Qd=o<78#8H 3_bf;⦑e,fiM}7CN!I GBTw|~RVScp"zB!lSFZׁZg;ɿXNŦFQFW7jL Y@}jADL(JmuYDl`-Z0n.G, Xl 5C$9Û7Y #eޏӐ1easT.!1|D#^Qb ݦ `hIX_JvRȱf _eӹ޹χHT$ 5a?.ep 1]f.PksɋfO!%imT.Tٚ !TmWF!nwά7'c˛<$4 R!h/Y7c{"p)uaUİL LĞ,4,N `V,RF\2n|ңy>|:15vG9B9~F李wi9|sacI+E?_]Z8b [p {ɔe_WF,:ԂBwBpL1\ٻ1:3TAy8_1y0S@U xsG9}R;$1ov)ʙ,=7H).`gEsl>FtٱO\sT΅41vL%+ +n[Eѩ(~BO:98F Jgt70!xaXI| tzۀV2Jtql^}yE-*LdCRA[DkPq!NAi V<.aTzFz,<׊> Ô+MsRSp 5Ζ$\1 93741Sӈ)ȿ8q\Y2Ǘ"_`'T'! % ~FEJ+Uԡ\$g- 8*K &q@BBsGqK(Y_.| |xeh%m[K 9ו iT LhF 4D| 𵄅\fZɓ;fqPh}JL7Z>Zˣ`O0%xNyG4ӖfcYUiymFLOw3j6}M=p&&s9Iq'u]. K,{~(9n¿3et*r1 $foެ IhoHuZ(ZթqvoHxR{ŭ|(gՉKklopf?y[fU'foqޣ\Ee u?^JUv# ۞MY./PE]]6mrZ 57֗p3^CՊ'>~8:oooO@ 2p`8B%b{S޴:Ub/E} !ss-)PRk2g.ގ kc!+U4?[d)x{?LpʢC탼Hex OZܘܔHcX;hwy/;?  Mۮx^C~>Y!]~»$\`-=ш(jca-wҒYf`'D3^ŴowF7rW`]NsPeA9B\QMV N8^p!'? ߱Ϡ&rσ*1iV~z*?l-k~ kx*m}p:' k`GDž?94c-<_|KH>)y,~yJ\vև遣R`cqc3givqS34EV_fvٲ+N9  `-pe.'AB QI/Rt ix/G9~҂gpZ{b_ JG L#f:5PV =|p %V0,$V\y3Ƽhj1lL!Be!*=G$Ӹ)SwNӠ:)2uÄ3׵c4gf+~X 9u*ioQ"XP~Xc^dbtN~r&[BĮchꗇy7Z"1R|]np5xߞo$mU/mhD+< 9gȢ;n)~J9DhRu<>h βk2 J$UyW'ړPlh)Tijʋ0 *Wʘ²!SB V<WnOBX5V>Pl`hFgA;6yP9AO漿ɫ(3R a#sIE'F~,}ђQQ0GFƫ=o-C',&_T9/׋G(\LJ*<>F99l& AFy!Bq6 I+kdJ5A\_H^B9) != ;;c⋻#>ŚME`BZm[:UL EөPNr֏EtB!ڪ~̶0g:/R)u8mgd:z ޫmd l &DʽV>-/| #m3-PY髑o8 0^,˟eXY9\<Xa<_jnsvUkODž߅H(| ]2"’D10W=@sO?] UQ H57?t6Bh'b&0/QXT ^WdX3n]H fCV>2Rmf%%14PVY8uT:6 >Ab(7ﹾV[ЪPoc$r n3OaEkd*|e^hp&Z|]Qebjg >i(x/%}~s5`{u<FѲа I,x9ϗ+9] +'֓i'>qPr5,LeH#t*.`B3:)RmW4׌p&^)m]^3l35J~{k޳G!Ԇ0u?I}<>+MID+KQD7Ss϶4.ZJf0D_5Q$= h M.5#W1J|E  ӻpg=8M'HgK\tY6ty9ZympQR 1-sjVЈepH]1|Kױv 5CWqf4)aBZŚ|ZsоHձPƫS>p3 yeVH$&c. ŕK ݽV6ǾElXg$_h+\ڦo yC/uviЙHvܫBsxزZ(24C]{"Q)u'A{$7 QJNiLʗpGarnvKxlwD JRL7|Κtʳ(J&2L+II.۵o//' +]JA2ޕ&p WZ1B]/7R!3:OQѵY`ljŢq6)cXlJB/-iN~F=}FF5J5 xV/BlB)P 0ۤv,Y5u)~Q!BWY d(zцh ~7T8z^CE_DdUXɫ!:$>2H#H񌅃LG"ѤƐlPy[W gqόyN# uG^LbThYGi^9`hi/DԞh!(ŵ _yzO;=ΑQ*k $s|T⩰o ˤe=YVt=hiwӮ`ʒ:߲v<բY=L՟9Q;=1~);]f| "]$vj6?YP,K~AR7qAX)fvFx@ywB7zVű.;g<=|tãan0.76vkϚ{<-ǔ^j ˟M $a me+et/u*/;|| BbkRcqE;O]xJfti ֠?gf`I`ħwsO6Z'_"ܛ~h>C1Jm.GWwsA8_^ֺ&A.YGoUqϖ1&h}]@c*ݿL:ب]"VqUfxTBD VťP@25;hUic s1(QľܱlŅ3 [8 =e>6ki}ME4~+Ier5%!Tf?_6f=olP-1phJ KM3NDWFI8SYmg1^еVZ1r.U 䩍 o\Ĕi 5jU"B!jn= ?SƽNjjZ3 65Cú0hfM1!ʊW4=GcMт1^^`{B5CzyjE+d; <)v{?*dv|kTǙcxu7lڱC;[7m[)UmR#dx"gqc`o; 6B^e mi#4+[.|v"@bKeVÄNqTk,6r!$ixO q,M\/w/+4K|:iw i{w}e1?sV?o8zimr1DYƔ_Iyc(DIŅN'p抚V>S<頼ʭ=9=Jwhb7j?6_siy{kQ>UU)g-\yu yd^ˍR͇,3#N Ě+2r(ļK!y_>T'}?׳U02caWon38,8X=n %v#SFnEہD֌ ,Mz =sR1~U?3U%NQf&Z hb: &X#/kQCӲڧO֦ wcMŻ`,55pexZ'F o&r}  I(KOLaV*zyJFB;mPTM30A/!l H~  B`?"‡%5)T*Hiקz--ib‘˵h'7Tkh MPX4Aȟ=M 8,1.aSp*$NzGNa^ѝec>Ew)<۹:a} B|yCS~{S*5-CHO?,R:ba82<Nt|H_aW~UPgB <]G+oGk 7i W=` ʌD G>E{8MW~7_(PC ѢҒCw *#ZW4͠4?gRB۹T)O.D3e'%gj_b E *4bC8IQ=T-p uUM+ Hm"/ɻe3Ϟ'eqh-w~v% XBV *#x(csDGQ}8jw.0>s]N %Tcvw;15 MF ERwEԥJ~I(1S lsqZtIz ]ߙ*Y5pgC Y2ٿW;uWt 2Mjk"@mkHp_ȪK׏+ͫ|mi 6 ioA~9tSc\;A[ՠYxYrk&9@{7Pcۇ%6GgΉ_bL.^[f:1{Nai|X,P%rx1`{pǴ́-u7fP|h3>@z;sc5xX(~2X馗]9NwuFoGu++AaR:Qga8F{+O SeǘnAkb8.uil172;F]:dxE dv|5 ?11a8j=ʨ_ƹUh3gkR %_"pc)9r4t/hD vw%,H(xM_C4ѱIR:eCKo+ZRJ %^g3Ptfl5zT/JՔ_z1bQҚV%sU#% Ck)X&A1j,~e֤"wFۈrڅb>&Q `ҥSQGtј{IPXjlYGHv6XRaЛ'#*xndj 9|W4i'"B)q75u3>jE%9hz y0kw]ucf78;ܼ47idWYas@R%a,VDdg ]QoS#E۫THYG_ɴ ?&M-  #4.or&emΧD"O^ad:܁҂,%T@Ic>.ȽuF^  B$=K~bok3%9S0p+jg!dî}`T srp~x*7$Ls*^hZG dXT*nMrχ^T4$: ύHWLݸ fg ։}`GM)!O84N:D?V06çm>e-7=1߉la҂s!,F*=,^Z06 }oNXT@1ez)d@:*c6%Y.=/MR,E@$PisŠ$ CMb2}ttI!s8RUțS?8% lE3p&;IQM/ֈ-s}|8w'3nFgLNcC]r1饧+BBW)4;ϩWe=FRΜH*Ak,M$)='lV&8PNm/n*C}맲>\0d{KE:4Y<ߚ+=H!*FBzM^5 [^uE$&Gq?ςkf+ ucV/GrDW(sr.Dq&fA7$Z'D碀/{JY2h6AX0qqjbAZf}xίhWU7pBT<37`rY$D i*U(_GW(ޝxl"`sqvMY`ʯyS?!D3‰"Bø=uH.L`d~Q=bP2x֙N$qy_T:wկk2=TLn!y1k*,iIu\ٿN{F)-jKN)>%kHREl}Dfoe]Ʒ́d*~;? M38}`Ĺͽ)%aE5CroJp)jΟ! KML%eNfaߜW]&`)TP6veztkR#†}0RhrT׺;l'L{ِ""צOm m/Gf/۠Y›̏H> `e-2Dm:|$5P<L"\{1tp x$`[GG@-) E+Y?;Haa/2iuhZp}w-^дϣTfM_[8o"/n' 'BW,4;rDuFB➮ n'?dp(6m O*>%\󃼒\Ԭo= S-@C'^Źn[toVz Χmol Or ܩ֙;O\3oSdzR]{?;IA_@Q{L`>Lj[fB,!n>I[:Hn[٢7gEK% 6ꍖGXa4w+3.-jv=IN_<4%8LLIT۱xc.^Z`#@N> *j"k/,XwMQSaXs0ݩ:-`ox?N$ќ}x0(R/#EɕA_kdrIoݺZ{/QY*J!v0Wd7$>-~ʙؖ^KvI3-Ȼ/=g0RA2@R T)ܵ]qfQ1L G=#Y '2 /y8#kdz‚f|ZH?A9$vW!Vi.8佱,gS NZG7`GA2yatS)C6߶O-֏&7 a 5p֒Ql;bhEi"#~A~iQ/GjqC"~8IXkKv mQ:M݅o?ZQe/C"B} p /P%F̦tަ01f8hI S~02D[TJ' [nMuZ feB}hwJA,4:љt]yMW8ie/o6B1'7 #5J= Ӏ!iV {tVnaۚˎs|)`%h<|۵ anԠj EuW&̨*/-MW;[Q^vPx7yS<V[ glg`> BdI u)Fi<*[5.h$G H}G+LY!kQ1ŶQfvx"5QLmꥠ6ϟo0>{O(ǺEAc >͍s#v凣F6C]DNSB"Ӯ1̉]jTr."q_7x{i|~ ҋtOej"N tfXPg&dod+Un~i/Y_:Oرd.zȚ"C#CؒLNŏ%ߥ!Gɖe6-kF@!_,UPSw~)RnOkwR*x}~!ͲLX84H".Deb ҴTTy-$()GL&vҲStڠ(>!dڼq(˅+cKUDµu+p_+M`.n<(bv̻%IrILTWH"2k k ' 7E>vDB&?HF*|Vޱ"082o`z0vش̩Rt:1lK:JC>?z@G@LCoɖ/9}0qGT tݾ9fkK9AsccKeo0lJAr2hvQH+~ҿ=S-pB\VpVpV)Gj; Ty ̱U55N&YsF-$J3Q,g~|X'yS-w+N>]9 Κ\PvVv:&,I{0 3S'm r'SKp"Kz1gZ㌩  ,RH *OSG&j7ec ߰Vk_iK?~t$h# KaHZa'UO.5MiW3tj2AswAJ4ߦOq0P/R:n$/<(Kߵ`bWGҮzM$%[ZI>FVodR?LQĝg,o@FTݻkՒ`?خCL% k-1!g %Ȗ{* ZBc*枴 +n.;^݆BQϻ&^Fw{8U Qm`(vd;% QSʧ4f1c`r5.@/&Nay)|l^ۿ Eă%@ouP>“ăETH)ؙLұ"O)`3Rp~2GaOmb[TL˵xoHm_*94̴%, 4_*W9awZI )kGG 9b7sm҈S@ř> ;➱,hFQV͝?2}%$R4y =4+rSw, 4ǝ[ZZر_O27GwFibGMK#0+fLZBLݤچS|'ɆУ_-)͉oU?:_ɸwK;trik%.8H÷9e!rNit HOVǨB 1>`фI`r/:<:VmJfSiN*lKW-L4W"01Q Ν]jJ!TcPW sѯlU6&Tt&xӐ;3P9C^ζ|/^!"U\J WJhZ\]jOQym|(qf 3hMҊ *e! -3)ApU.ҋe8]l7ͼ V GB:3ƽٲXBR?LF!>7oܿJ)e(MȪg}d?M8kLNT4tX e@9 mn7l\XS.D1WVۍѝwPr^EBOlh}F&~knq9? XoKAgNSZYu>E~T.s[!'j'W1x}}7kF^΢Υ53vf <\fUw[^HڜS,zDM CW=ly$ڌ8ͯ@SaQ K.{l[,rr&xa@ƣnQNSse64t% Ywa\\gef-73|Y)?¤/A/<{~1 Yk_2uJt:? `MYj# >>6e҈J_?3$6 hF -{0ӶK}F}_8!/76,i`nL8;*#mBTYhePĈU~t85+j1x8G)5: q~RNRCf=I,p1w'$ wk|Oa7ѧJ&tOK0?f )({=L;.V^9K܌'3 R{WGH.+/>6/NwkQ?s9JĐ `nu}s䬫Bdq7if/_t"iɥWK W[Bef=9a^%Րж0!bHBK" 4DhrVrLO)+_@>] d/E.G[do*e(:5 ykxU$[EOK=<,!T/ZxCWNǣx6ժ(9n1FuS+VkV΂ Z,d &y5X&]juӰz+rT#=6sd%*;DA[` ٘uP:6Zy`6Ң`}B93S4 }Vem cLY" B6kC´u=]kko6R,ՕIVaT1Ǝ y-,@R1Ėn?WPO` #q|1:;Ӷ#ACwfPX#HΪpRAU7}y4{LjPMR;S)S(BىMDzKl]UwB~V n'dRrR!+fcJPFp,(x]. ǜP 63,*hPAo+~k0{^XEV H9؉_u,3鐛 >mk'3*/[z0A.s'N:̔|zrm%@ÛjR+.א$Ud2cqcBPoI t )o{~~hOf=E&Vf/A@{9\hmOv`e嵀jLX9]Yy`DjXAVVh.إHOJlQM#b=`qAֹ_R@+`W򈑔!#Hh@y 4ԤeD!ui~ J"\2ڡ+2OBN趽(ڔQ X;q$up akjһB{COl+\5LZy;A|)A=-vgL/aJ*("+J/TU0Pqs['aSh[H]+7>1u ʜ V0G>GW ߘt߉ƿY/++s Pm~toJY"]vD<8;B-{حqEҕtU_rڮP7\/  Ni?9[dpXHZV_dFq4_憝n=P+?0. f(|{W.*,y"Cקh` S46=)bc. cr4rW Q{mb%_+:Y.xKM%vr\ 4Lp%g? קe+^\~cT}uXz{ DX Y#\fLtWw,ss8a xhq( /qD]I3 4U+N.9%bEh40 ĭl_y q3wWi2lȈ!%zuW(|kdOlEo1 W'lO$]&tϨrfi@;umXcqe`AlοsKmi3ʗ kd`]qTpB=:'V/ߌ4+Ts&?CFbn)N*aE:[=_D'BHЦHtF@,{P0ׄ3l 4rcü5REN-Wah()F~эC8di =}a tf!yY~vfs(a-S(F1}98ݡ#o}VtB >ݹ. s5_TO?fI&H3د*8q .Fhf")um\@C)QBq$0n,G\^eb .v{8IMPD<,gVUobS*D!ʸ"ϳ;[B;q@P cIjtD-JҴ;\w*I s{ [Fn:7m(aԷU[ܿ&UPY)t 7m2 < m?3:JAՌpóoM-rv \i .kf 5f@hTE]g}\9M m#<)'C{Y.CO% ߋ]9oX -l$7I!.IK6j'[<7VJwA6}Nt*ȬX&7 3Wi91HCsYu5rԢnlN,0#J=曚1o?<ehHk{N+ o4k)Y?Twx|_E`)s{xmu-Dz"G\9=V/"s:N9&+ Rpn {w(ď_N{^aCSJ. ^\c}U_nC~XRތk eQA3i?w";|jWFkg;Bl]۹Y<7Ín8,bu7s!̎8u-֨!jYB'&8ׯ4qmd(7Fm\B| !Vy4Iwҟ]*-BY-PI??Zc+LS5r3GC/3Otz="F:qūfՌBVEPyƾy4R-t!C_Q6D>%XBtaJj)4 aSg&!B>dRA`dRrYa}ј[@[DxB\IYUVžm"*:f"<ɪ t΅-t 3+Ϟ5Jǯɦo=c1OZ.yy0r3܋踶kg:6&E2(q>i2aCFR lBs2sd8plWoIqPXHS5(էm '0zehqwFfvK3ؽkd0ن*hcmv~}E<\P٣CH7}BR E&N)C h-?g D7 ݛtе٩w`X1Η&9 G+0Y,O-;4'H*dn h~(h~ ep ԍm,Sw|٧Gk5ȋ q@vgO}HFh:t])z yj#+gP JV$?2p!sW\P66Ӧvg]sM ubD b5hāZ iw?{ (:sw N$)='E HG66?xv c!4N8b:1iA"{%1ޤ"W" g1 aE>5qNET0@(y[޴oP:̘R!l&[7l!*#NzUA  _!%CsՃ憟 jbV& |-:/ lDEPW$(:+ޫ@V_d4"qM?,B T6{e秩Ɓ!hv lʤALʱl螳_f9Ycv 0θ^tmzܐ!aH;.0i֙WD|bI۽V{4&žN3R?'CdPӵlsj!it39P*/2԰@CrYON2izmj\a΂Z%#4I.QLIdN3[:qH(fi"Ss63w=Z qDtuNCN#?rאoރON{z3aevi$l!axkڛn]uCM> e{mb'Γ:y<Ӣ(]UʏU J\uO:58bgO CÂO ߇gvݏټݶ4=+nO;~rgm\<\qu~'pz{Ʉ~W[JlQ-&Nw0cr2Na`I=qj"c gz^xyɓ5bnWN:A榪]d_3ѲBsͱ6_N}s]c"*E# 6iK3K/s':Ք'TS+vaoB~ aXAd9E%R6~l$Ⱦi+g%_WJ ^hvN+`&,nlgeZpuL)soqF,M;Q 4 ^g'Utp_88a*~(OVS!m,_QhTW{ ]wu(puTYZW 9"SFC小Қp者! lK=(5r% ؁+UѨ }϶8X2Jr kLD$^-!~߇M˅"eP7g%Ō1"D}<&`Y\qfz3emd}&{B[<̩ℿ$.V6%6)݈DLRh=L@y2ߤާ -`~oChV )!x$Bwǡ, |öŒ6![&[װ$)fIa3pژpIvo'r kZz?[lђxJE֗)j&l3~0KQK$uF:&Mj`bD/z"  1{rpƙFa*|n6D{:Ra%"s0D-p@T fVˊMTcoqz0dwYYt\vؘ1WA;D_AY-IʥM'rr=R3xM*zzQLBBJ=sߒk /[nFrtĻWIUʇW]I;vܩ>IO]tʍQB@FgW cEM9+f{X40FOh % pQXy G~6MFQݾKڷR9Fsiw]˵z\mPvk&N+^1{Ca݅V ӂilZhX%ꘪr 8b¤^O  r~ "ԗw0iJhC10fbz~/p#IԨQ,ֽq@lCkM7; spUA"z70~v#<0U(%G6q7c6=tU!F@ TjU(b@FnLIǮ4KPtE_yd \v]+9D(V:e`-RA%9Q}:UNdOZC!hbTSL/9vsǤڥ "&tYi vIͨ=FڥIGP7T;{Z8 ,vzo`[ pd+" l-nn`NgPv a߮ojx!QF6$aON){Uv{Q>qy}1 g'ᛶ(.JKrv<}xH9pxcÁ%[3όٵ@l<=C]A.ȉUZZ;OxzߣwXZ†W!L@IT&;?>QXYaE7c3qZģ޿Ԓq#HVTozK2!iDҋF๬ꭒ(t\k+ ;ێ sa۪kzLν?~\)U;"A{ʬgNR4i8R7imf)5IFYBPInMp5:`ͮ\DW CSOhO5b6CY)1i"E(/]0P aXSO_/2DqemjxP8a1o'QuŠLG~6R4jWWf|'fyWYfgR  (">U` aHD]U@=aFUN}~^3%iOojYI@^zYe[1'%4t4 ~Z]{մi3,葔P:$+[g{&Tk@.ߘuk,Y.KV#SH j/!灉.XIo"9VxC $Qpe++(*`, ~| '~3]o?/9&c<0N'Y@c=_wd*n2`q3nrf-; ! ꮪXSL ߭pRYFDnJQ8?/~8oQj`ԁ\fC~yFj5b? wWcYVef{9Ea"+ٯ6Wf~K!m+I_n^w `@zړ޹0P  ?nIF ׮%:܌q}wKUT]eE'qHJR'q73>v8VǾ0 Qsd 4AKNO4 QK(|w{B{Q?[b?8P&6@;x: 'OW$؞n}w8DuQ:9@iARݪȪnM4jAq$/ ƵUA-o뒞n)H.JT_L/.|n{>پ[Uxkt׍ENt!eG<;<>)d]T*H,K}"_&'גřqɀt!D @#}%e;J&ƊMC (8ݢ 6*ҧ8懦JB|v㼁_`enFwoWgً.wǭrix,lP%lf+,3~"d EI$/ gw1!dSI`:#9>Z7m]`|JGgEOz(71 iZI.cqC~>VZ;{]%ȝç'ۖZ1=;F%$a]!έyJe_`$BemsBꍻVwW-%_- ѽB p+y+YHsFΘ>ӈKMK|ȇ7^7PConZ%P@3P' 8ťUoAAjR9 o (~( Ӄ6/[Ct(!~FX^SV :ՂM2`ls7,ziUuܕ7LPmM\^7u`|RG>`9d& W:wjn,yC"U_ @KFW4?ƍ!c {M3jhEeY V}6,H皥Czdxtt  * 8OA{XF]-a@z<17b~  FL{r$!L!m0]uMiG _'606/w~09*vB$J>P;.9>3E7RŽ u(9Y\{K~ҊO.āiJԽS }2 P~z_Sc] [K1\EufFL/dO@ K;WY! % ʈRBiq)S;+C|[||DeZYWZzOs}4áP%DfETvOh-TVKwDh6ɑ;5.9w<߱=ԢmE &n,rg^7JV:>a cDG)njk/E%gxAIGGrmiN0A8[}*#ֆ\Xlvqs'PGǡֺ3(lz0HHaISMIIQӾ6B'z\8+8* T.q/4&-9ZܸcX'~3xs˗`}Ʌa@L35;hu9i dN~%tvPA ;%'/kc .\B #g{v1-e)Bgl$}>܇6I :++[1 Mr';yGF,wC._Aq>5]~QDt/(Si aEfB}NLY4*fFc]tzsIkfJ;f&#.7F4֙Eu`‡OSO4 GWH+ +;RHUz=m?uck J|q_Gz8'[^J#$_ P㔕EdE=1Quy#i4rrMQl'bl ŝMPc=< /]2jE!Nw0U6'Yi{PgƆ,ؑ-^,ZCe,ep"Vj V梅nʭ;N#I?0Ha[ 5n>s#w -l iU/S< $xe԰>Up8 +J~bdN\)R %o5`>Ok! Z} 7!Hʜs#BjbÛjI*wO@{.`D\ ;EcȆWF !sjUj=` Y[a 134yn۸M M!{թz̲hT;sm҄;fl E<# f9b q6*7V?fT΁dɸ<4nT,%%fڰ=~]$uG϶ X/C."Ӥr#P^NO?'v ?4ڐ ,Sls(͐jDY 8!6O7_^4(g.r݂l4L+E[ƮŚX7rL8+<0x7=7 ц _m;'~wϫN_ϮW ܼUo?>3J;@b)"3Rf9c?o+ \bkgփ~*~ܒl,{\U#$f`$ owoZ_l2:'ެ#?Kc29|r:W#,odEW7ya*\v,7.*k1ᡪWk?ݸ,P ~wCCgK; %QxچU@HNgӵA2nNLXea=w]kl"$W$f@V省^|DkzafeVMH.Cg4S~qXx,_|ǮXqp<^oj:[2И=@HX-Iu_=(sY42 2#cerWQD-7Btg\ G2υIqqBO= 1֍krXxH Pfx}{<* q6PD(gpQ09$tϜ9܀Yܧ_ `\m'*(+`e)%:dIʯ_>d&#rФQ⊂ZyʻB̤DTxi+^Sw[<<N[׵UOI}9*mІO0̣Zč\fHt.(,oJrLlw=+(9r95JDyy`SE6_!P.rF6vWI+ͨ i?pL%` fܐH~|sې1F%k{ikND,v&̪E׋ &,oko+\T(Q:M"UU3y.7e4 d1Oqա@ݗ.&Y!҅F" T߿_/`||6}&}yӢQMOw=p \@N:SŢt jqB/U<ђu9!LNf(!8 W96 Qv7]YPk5?^ Rħt!5y٣Q#z[^ 07YLXmmFRϨK%?z2$P:5FpyBFԀ+껥;eAryS1wBõO )uIBVRmW d a|;/ldz9r5!Igȏ^#jpR4BtXgg}<ӨG8=]}VY)w#9o@̢)3]bx<1O*fsT'3xpb'Yʞp"f|#F>zG dSc:4Sӷ +vh?N"5> !6~#h=bz0LrNmuHehGPB"{Q'O-ʔ;#=h7P?E͐nHJb逪& bn"8+I蕼_,m*Aa*M_d068+>.1\u6 |^3r| G2ȣIbyR. ;iVjX%D=ϗIs)؜hH,~8 $e 3@bwEsC/mF z>'…َdQ _Aاq< R0v Rv:I;Tb?V[Ivu=R>‡E{dҗpxt܇58sT^`D V6)R?p8kfj+/`ܟ &nD7!C/b:oQyďq@Z)\}"Ͳ,&h}|#l6De@'+-cܿ1B.Sȭ(f!и2?7+Kt1"&~t>͑g`h%@ . 7ᰏ]{| Ðc̀t3tʾ7!)l1ftG) 85PtSLE'ܦB\@!N@ *N@ԁלrUƕbz U5fOh:W;+i^1[kq?jE]d`*;PXgLT{T0r03J&,+c+jN0#aUsƻ4~}OPK]{1ˑk fBO :f'EVnx-wK {jI8N׹kGTlnIvS. =,iQ`l ctxl *jRZfYx:7CX_vuIM5ZE&JtMeI|0P ոʛS8Չ>sWv~%."H-(!56CVNwn{v¡v=A 8]rX#\1s(ꍕ9LF[q@{ չs >(5DkKdu߲a`Z5zYܮi]"TnEF(0Q iaDRϝ.˱!!6;9k#x{v:͂d:a.@,wb-f#Hf<>>é"au W @.2Mѳn畑92ไg~K>j]并KEM.{ڇu`އUuq=s}6 >LD]C(T+8 j'' bᅕV@,Q#G_Qa$ ne6k(p & ke*P}9A\v}-FJ=I CVL#v'*䰛ڃr@OMDBTFga5xո͵hRo=O5^DQS+ːm1ma} ZLRgPoLq6 9>DÌm/@JIEsDȼBg[_64d-]D+\ B;1P4qy3)z:gQ'_\!>רa@tu0hnsWwcEe@FSҍ  AVԤX>qEDWI~Cz1lS%0e55 8쪐#JHLQmaPH/,RlSgXfA]o`Z X^Qpi5v塭H P>:ܬ9,[KTtΣaIX=8-<^G(+02ؚpjP} DVXbkPNEt6ȿ5Lx{H}Ľy" {8MWwʕW(NlivR=})#SWbjbttv\Oe}!Vt<}yWxPr5}U}z(1ƈCQ VU,X6pSK[=@.xJBwlQ@k?ŸL|5$ԑ/USwe<#e2UYL {?Pj#?; F8E.Kp+$V]y/k2DSkgWf!6F lC K~y``.4H0+ynCZ#{K(ie$'4DzX[w g_A#HcW5ѱsoW(;LεR\9XosH+ n45IrC}Iy+(#8ǁNPKMKG.=LHlFs%eu݈jCn>Rq$A%ѨA$!nGwsHmBnH - _ުGUI3]8D8RM#˼z ǎFz[3UKdމ .\FSAQp0Pl7F,Mh5GdKqcS1@)bGη?Q0v]KyBR,#ālk{]~$> -+sF`50. 1g!HJL$e=2Vt.#[3 V5U&Hw1s1އh¤Lܚr{xv@֘ɸ*ybhg^@x_r#`6 u%P<Ɍ+FK;WZ>֖B&}uFj8CGpe 9 d^"1gig{Aaî(E 4a\tWjeA*7`@oo_Ym;2gAP4DOj)P0tA{C!Q\ IG6#W:fE%:ٽKTMگoK5}>3 n,PL5rU(BG/qՁ| }4f1B.1q! 4dN.f4u>x)J I+$Av 7j&jY?Q#/*6&sxt]6Y,5Y"6%dg4=XOz+lҗZJeo$29% -}oDn($mͅ2a{Ql?$a$ZP3:8)A"S{\RNqL*&[G)QX HG%tRoSr6{NjJ!igZ3brtCg)@ ]0nI_a;4PsAMCA91ĶɰHe}[_vI`[ FRڳ# K? #v2!AG5*G;Ik4`UL5vMqF>=.O{i඘K'}n`4Ayi8Tyנ~M}b~ aRHskܺ ?H/5w`YH'ң%ڕ7ɯAA]-%Imls{}KX$sj񭠔whTeGPHfa40+"7*0TK+ޏ^.-MgkQ1Oa)M[ }A-ehU] 딒nQbM~Ѵd9Q5 r_(+=gHZ Z7JFI/e/} /f@=`l3;");^FeYB_9;"kc \}'z@a&橑Z_*.ƬMn6!͂ 1ߝW8͆"0Kn汳Db Ql&b{W+:p bG[vՌUJVZFIfy+e t1h˹EpPkt0'$]!vi0 Yd=YB\eX;?z'r G>oNKHk#K/N1rk|84 9z"A/''^M6yjiƨ N|}pL.Fcf4qXW0uv3SXW)RK (|Ub{G(a(h+&O- ZM/\]\jVl6`WEҀd AJS->BfvRMpN@ 3w8<.g 7evҗp=/G!=^$UCfrD2%U;vo-nn%bdC`8~%JX(Do@%1]خUZdñMw/L f˱]di*8>9:o6]8^qA֕'2ѩ dfW>yU8AOW-wX;fj&$+o?|].IwZ>jW&x.ԙբ?Rwԑ^fDcl}KHs\ śc.3R,՞oiO :NԉCaM{/F}`0uOGBЩI?8? C37SF6/lگ'ͳ|Y4G&>9Ӵ-~bJ=~3's(i1t1K*{>!2"1c#88i@P9  ;r/zqd|j-X!9;'m@|]ȗߓ!*r}n U8FG %>>y~ dZvaPUcƸ?Mp=AwCsrMj׭w`0̗5W N*5AΩ }-^iCjXD%;zz_Vx+12+V:f„HgbN Df\Ժ#b[lZPy5)IN?:Ñh5?~~%I?L==#tCf8Þ6\=N)'KSW^$(DŽe@:.A#1i+`ip?C!ծݒ3~\UxϜ 0h4dLeX'Cc"VzPӖuGT4y-i2g3.rgQMb͹vio%#ZpR1l˅jL(X M4L|N/RRaCa@lm4U2b_m?pN!8}3^ 8n[3dy G_)L;. ebfFn~A8Ka[` T]zU^-vfرxWe e\& gR8GtcjĴpGoF7:NGn2ֻiBZ5puA Dj5=tRm^z`g A!ՙ{Nor1Uf؜$-'0߿>.֖.Wehɏmto4|99a +7UaOύ-=*HJ3H)}vioװ"3Z@H/$M <^#9kuuW AVl|< 9B;4vQO\0:E)C8'w+}UئTev>((ݜT%}2T}q utjdKx8PfF3`>ΣRo[EX7'>_:mrգ+ˆRߴrb`ʒ[Uv;8c ;8(Ri)Gs:&A~m[04HQK#L.V6he;چhzkdںdE$+g?jrFDLE2 rO{oM iG$hցx5"ivTJo ;boYD5KY@%ղL!t"i%STTkn)>S=1M5md$ -7&1Q~Wl6t`A/HAZ^RͰy{[Bֿ_t)4UoȲOp+Kl WWvŞVԽzϤ=ĶWsZ$q66@OηJ6}]*TLL@mu F@gẸzc4*KO)SWv> 3n)u͖0x؝)<ա=1:e2`۬ƃƋ*ɨ"ǮA{SٓEr)Z[wӢ^Miº4M?ZILС hHWOYk*I; {/,ݍ %Ab.g 7ɺ<"xbZJqnIhUPMGR"ϟ6ԑ$M|Lw$C b`ZpQVY 3y'7P FI߽ILS(hssO }ãYy?8A:,޹~9\?фNy}8;iw3^ [R1T6P,NZT4f5IV$#WܣK<<(BMN8ں$<\5~x̓<%åMbߛnUގ27?⋟p1z_9XP};duX&1K0C/) ع#Ԛ6߿}]>HDzWtemx'hudaΧ8|fXTúE>m]fUY$C1n ʟof.&.\'9,)M3CĐXn }:',z5Nzc'%f;i*銤zhID'2& TF6>DD@7[ K(e؄Bw5WhL,zn1\ ޘf]lGsE7nJ{x/ǤH^&pON"9uS+ UQ&l.ʉ5,WE ﵮ,mƃBp؞a>]g^%ī!{ qA,c o'ʑL؛m#PffKLo~h`h./ǁ[b5h8]X4Z)2+,T∿b.8 ŗu,<}H@h;ޖt{YwKվdVq] +@vVS's{ i?ЁY2[ GC=o qę&ll'66T{u.b@u߭: q ضɧM؄(k|sfq#`l>ؖEB5NV@Iyx".YҢ_8xP7\N:rcvQ Du+\־-JݪlԴhIh(^x>/6ltUU-L c<ܡXS8mZ,^ (@p/6ƹ5,x~rB:-tgN'"f(SB>M1U nFVJ_p!-,??FKW' zZB({_[$@f̜ aզЉ_*̴q]s}~('sX_S2HQ\(SKWo/ ܖ#գS͈uYwdQX؊`ә)n9@{ZSMs/rѝn_ LYoj|vki@=k'DiHj&)nJE.$^Y?٠1ȿxzxK MhC8퍙j-qiK M?Gl0ύ RWܗO wsIo+2I._7B7ڼT2)I% WzUSI=E͇3oPLkaM3djLw -w3ekȁ8%m'I))^);~='E?!tj's[A$&dH8fc/8IߜV?BzǑ#-I%mW Vțy500lry ģ|/-RO]fZ_jKBq vAx h4F!YJCdISP ?jDf!(Ri+H(;kkcgQ&-m}?{Lgـ!rFH@jp K+ *hl?!zf1z@Xcn6ሹ۲|ܚecX$(HEѮ2d"38iUk׊$-#M$["J> o'%/GY"DO0XS8wXdSڃg{]42;>7Gmjt4(ZpGdUIx3T>X @A90=gq}F91놘1>)Kn5=9M< א8L M–RHVqDz'/!4k"aK*`n'%hS.D"Uр}Ӵni؜he(Ui, VG%}3T_l/5M2BuSs|DEa.:L u=TceFɬm<}ECt-+ `~XD&o:]RG#a~bv cc9VyzcLhHԷi(4;O R 󧬹yɊb@4:J>1]LZ :ؚ?pd rȸgz+NC Ɍ>tޑ-VaPSvٚ=c9)U{ WЇJuwQrI{?o2vTn70tdfcٮf:JU'tKkjU]8꠆W4c;]9V-9;?K=ca]J`;c nAq2`~H MpBsQ\r7xfaMcLoMtaC6Jp{lbz E,'TL-_z܋mp \Ms)J3״^6o~Sh5G"s[$@G'34%+ ֗!(k9e'ۚo ,*磈G%6 QN$hG?V~_AbɫpCכ]F:FsKCܐC8L)Jզ؁ {4Ά|3lR$?G>C/*/}exWѿ+,?ǥ44I362YNd+4R ͯx$5qjG9e ֫8+2YXcXD\k#ː$pD.K gEaZʢ,l %C,j& 娍|t1Cbt=9rqU[٦' #=vJ'>w.-%,@&QGcl.1Vs(dYJH߲ycg݇)S􊭢әZ3NWBAu Qyw(tn"pDE]j ӛEA_PR" O#c\!Sw%U2,%_M,ޗmLߙ W`I8h^Y(0k,m k7 i4yu߼IZ 0%.ETz㡽e÷`w+E&rrt)H5:,hQV ǜKնXuƃQcl䋕67L|vq1Xm"SǤ-CK?B^Kp_Flcw㻫?|V5 ?,:KkiUH.;ڽ+F6ܤVHKy+fQ%0}x?OB7}l1#d4Y_ ܱ2j(idP}vu2< qSIa'R*ݟ8z#KO@W+e] ?tlIv q1 *qG[؎GN}qHm(mDA')L}A4pi.\#@"Y%ԊXyާguS;ɑ-Pb֫JTZ} *x: )D=̣6lW?єS9h3,zwJiu#4*ӫ_r-Oµ/1{Iλg{?7ld`Cm^݅)O>/JB~#ܒYB L;p܅'siǗh-railJ%y>|A2@p))_njSM|Ew qoF7]u4,e] -  ՂYl(٩[9 `.4^^#*J*#NXX\1h]|lԦ~?Q;47ӎ'&`<(B7AN-2ĐHgB"B ܥ{˶e,`UWN)ƛ4ҵvD\.C]{I 4UO `1ˆW>{L =`OrXNgf{LS(:(~D7E^h|[%`]f%(\ lvUG(_Vw~.55i7Ԓrᄅc$kp0sI 4N9MϮDreUE5*?L*~xY>Sdq?.^pŧO沈ZdOcW3*ߊo&(l$~)%x@fkg*¡3L[2H"ϕV1Ñ%a*kȳNv!{rTbזoASuxS(ܗ^ `& ӄΖ0D HB*#`ñ##(b/8V 8OJu.Jؖ,R>ԴmuvwS]Uw[7 ]8F( S& T&Jj&8yUI}h~v.]gug'Y!o5-pҔ;!8⦸U)"pR;+*gF Ӎ.+5@D7ipC&daS*TjQ B0NV32k7t>@r?&ʀf¤8FO0zod| 4 p#s#z*%z4 p^cx2z#%4z7c[8Ej.@zϦ63e1*O+-[gk7>r )? jsIHyL\)=v53_HjՐpxO i5>e1A3=v&B+=y_ٰrUuBcqui#8g$ c00 *B#MJ&''!BC!%Y|kDuz|C $ўkEyCNL~’8LTljCX‰S>2/2$cdfGyvb_f:u !n[d"n/;Ho5QUs}x @l.LH➨I4wK+imiTn682 =/l.etv 93xKّV\t:,-kEڐm >0(b.0bm7mDr*ܮ ;:a+B*tx4[* c jߵhMdixw1,ط'e[]b E'N1{~†XW@&]U֗wX!dL{~l,bkV`﫫Ϩ['RvkgYv+?jA/D+tȦR9$.1P@0RmAirfmu$1R:y'ξA>Ot5H+Pz{i]ˇXHFthQzؾjI&8=6gk[: q35v|Ƃ܏:z,OQ}ْds"4j'}1X)m^ We CX$4g;Z^qu5#)y9}YV^DǍXabTi*{?+X cI[qZbv)m!Fexe @t}]X+[FK?mIcU2/R{ Hݝ0MqAϸn4;qE$vd>Zc>Sc?RRTk1856ۉ2t"X"rW!h Y?yBS;)1. $*֔L4ua$Im^OFF\+v@#hI+VCɂ *;}^jzn&*?㋚NDTS׵ nXk@L< i1v#)XfҞi"W~#hb3;k r_x]kh*Ldg&5۟]hsK =%ڳfki0x+c<$^xgS' $sٸ:)he<֎_Z0@vGt3CAY5NT[ !feXI"̓n#gn|[uaY/&)XIr(%#i,t;/߆q@CY67m=㹋\ip4p+|g+}ˢ#bbl;ah(veDJ>"{܇/,ǰ%㈠;_7 I0 mծu+ cZ@ q紣;lo3y./`_ʤA{<̗q.DY(ErT3CG(h_{eSCjMd{ehnh K@Li/rcphS$R<x[ĩ}UY5*Hf}AK tzaec M*泌-8U)Q٦J$=cd4̶pI6myʷ6`;&T1;:ozdZ}TVvDo< =6)WFN68dL 2qbHNh arћ˳WXAps&Y jwƒkNk&5R.yQLRڍ<{2CwqvK|6ʲ_ls7XٛngZ_~̿E݋(^Li>(yN_k$ SlA!k7ReJ!= QBCͧ җd%ihɜ!1V^ü75$)s;\,9O8y^֖y|3JVo-Ht [K9(e7]dZhȥ4ȗHYw@\KA}2*Y=IVĠaU>w#g ITDY!5/B *U5|lz`fěw2P%\OX4KE^/d(R~rBg]H2eFm8$ ^p?FDD89ډ٭=GꟚVV7iFh٣)I(ʻiU҂Hr.]Aaq'v,K0N6/\^rÁոs#ݏ2"ۣ!δ-S=}FyRjI*7s=nAf UDyZr5ڡ.b\d_3LZQgvB V=c'ƣgLdbX* FA }JYa](.3VPŜ][.'"e$?YqmpDXݫ"H?.w>TԲsYy ~'E'e]E gzcVr˳O,Ƽd "ST`'rt0C4C ?7e/,OTD2`kf+}}g7/bSJ*X Xp+0&ts⠪TwosEUx=iF(9&ůt1y7LRnA\(/!6ַ+K/1|Od̈́+M(^n`0D&gJorV{]P8 "?%<˨`XpDn[V&ޑ?O/7no9Ĝ0ԑ%R\&Yd'&/jH[]cl(' g@y~(ڽ3xAJ@Ɋ7 Nq\)ZRqgRu9Z _ÁO?RPs#aKh|JԎMtQ98-M^RaѓU2&3 8鎹&֖&40A>V/ qsH~,,BQQ єn,OjL'Ymp~kuEDTdtaY$u24%1}Ǥu,رĉɸlE6)%vJ9~H&ĈꆉYk%tlxqGs5.mr'HU k=zm2HHߥr)8ң w,|F0m}=?P9t*BԬ,.[Јي4c꧓V~DXHiLd rX&f*r,]Wx/D~U-}'0;|eWp‹YKI~ (ut֩=2%f-HW$?:ÅL{xg;k91kqZ D+.0)lAk_CY`.KJMwהζ&:{vۻF_HrH`ATIy?fCx7 .L9cޞ) jLc$͸Zh YjG.t2_'k>ܔ_ =Uo {"; *\VS6({B3AR=}ֿR~nlVml7bk`Yz!2NAz9~z W*'+L8*C U8O֭J sUOl:0B+ɾDGAwaZ*a}((LC]*0 , 7+\b[uR K s}87TYwS4St-af;QH6=$ӛϴ98FuEķpgek;6NȋD;;:sPb斾܃cTFջI*&y٨v˕S^jr[|i&ogl_-^.YK7 mCwi BM:5}bO7_ƌ")I|!/Àς#5rex1L<#gӤ C-'OIݵ5#7Rʦ;:QKy܌8Tz$3 &^K TLIa$>uo痲\E5*,RrJW9KmF@ًdBf ADjy19Gtt~Ī jQfZ*M$ |ذoo4`Mi}ԳJ+pt齨x3" E,d=ɱ) "8Pz'dmRCy)ob(jw aF7Su@OBz\9`;w`@ZF멶:C,lax} wF}aw@#D)Q"^c7>Fx2kPCV`[-{8(e7dp^^<>6 ?ukfѺwi ? HQG4[ :488q9t.ǜ!Jsxbm, b41gJfcZҜT*ZC匽%9$B= ex>]ڑ)9zzREbwcM e?.x-}agWcml`2ӥ>VSJ׶d5+$ۮ/Jm }Oߌ4BQT6Pd x6qC>.Y!𠛐2&^` dVc58u,MGʅC,E@c[Q!s$QE!M#~tYz ~3$gܡƗ|&r=7vD P] sÈ;6\^֬H!@St .scn8¯WbCpdXP }1 AR3Uj,,xznfcna2Y[f#b ո-RsU@vUn$g*`L;5Wav pGcKM~:#?SKr9`niul@M$ϝUӚ$*@owzvg3(3^ 뿙J|EA6):+wC9P@oxȖ"fw=r9%yCP"R$v>2[T+ y3epXW8_G0ϗ-{$AlR61L}P|Q"'0CEJlăZqнd]m*yacF )vfxk'xѐ}yͩ#*hS(b죆L}DxXa=^fhv2lDwg'F*!e&iezluپF|wB,D SX݉dl)]3owhz3A$xYy*[ngn)ca_|4Z"(+qB,'G n35N8WȊ.<|'~)Ji5W%(SmS-hWd pPx40nb]jݏ&\ #}XHD-BӤș(Xa=_eL|CI7)-@ۜ׫e%kuہLCϢ\@֫sjXLP=X?%2곜A2S]K)y d)T{[߫86ܰ3s[; [gQ1GKVudsp4*L \dxʆ[`H kN*Vn1@ - >K*̀q_6䢧7\9}9R5ZZFlfiq Mx*&J0áq(}!/A`bGlA஫v:I5'%\ܚ3:w{\΃ 3rR<6$cvY?:yұ5jVVB}V~/feG邭Nl2yP&gkY|xeGT0Ӌ'{cWx|x68[q:Җ`텘랸 v͆HmhKYj "컭gqZ^M:[^^{Wz lDA9Xxڇsuѳ=IQ ٝAtLr;Nf ̺XsO 4 >'*8f- eTl3ݒTn&WlJB5}-$>#"G%ؽ7+} þlB|4đ'J` 3^W-7. yœ`R~M{Ud/9Xl'vM:F"ͅ=rN\i14֜'wYP"Aa_lySO59R&ጒDTza'bSV^& A]mw͌yǠ9tyQάD !X!{7HAôP];5 1W)xΧ{whry_7z [JId仞 Iˑ "fg87>FMfgFC$ AMX|m#ІW/¶O Kf7|;b#ڌhylgk*Ffd/$Ρ7pJ"\(6Vv*SI@a;&_eLb/%B8D#$m/R3GZr?-*XvN C3/#&PU( w?pl0MۿyήUYrłO^ǴȱHKpњh3X:G]֌`֢s^lQhLtǰDa`M;D+}U/)VCoDV/_<Swt퍁5NGT2#m4 K%֦ ! O+Si=޷+/Ţ eww\)v~7nH|nZ{(s}{lK fZ 鬡KA-xG5#6B6b!aM/x^_{{u'ZG>ԂbZ^Kzes\{1uɬTz=Ë]*|OFh'OG5q\G䯾Л#-<߿oz;ܺj+(_sb `̣ A1j[{L= e`q% nd-sa2Cc7@Ԗ+;kL~ʶYͩ P=~k3 y0E~X2kr6Ͻ jR&Û蛯5TA"rnE5j |xƭcڶO-єϔk5bT9cNQOu+5g$L{Hvb#GzROz(v^#pZHz:: (B6%eTkW2 _Z.O$f'u=&t܇* ~*S Uׅu?g6?b KK80IcK.+l7!@QÑc\G7je_m*zl~u4L߃[Bx\?,M w5Hu~WA$an?uuz<zȌx>,p{؆qJ\z|P2pr yP4qAc(GAuyAkLCM4Je1D%dn\m@FJ6\Z1E ᾒdW`o9 %L?s 1g04C4VO]x9.܌؃(kat|‚C8zG&DRn';xUqZ ɻ ڎÎ22$q~adUW!$jkqrתxl @d̀&:1/D8?@+ ]Ht+qD7'sBQb]2k!n+%1Xi!m3:"aU 4 2/MKZsJnRtR\g'~_oG̙k%ea.W?ԫi6B{wvMO#fvtw%N`j')&I6ޣht8U $"E|'tO <]~o\:'V NQ> (1Q@. M(>D o'}ArS \nhi-HDc1gzƱM/ @Q&יBYTTpcVR]¡F0.=J nR5Gp+޲|k:D2uG/n蕟<0cS- M!$G>ñc* $52OZXE%$k6L̹4EoζTk$I)u01Z%-lkH|Yn)WM^Gcյ(mOE ChdlZ,Lb۴a= ]wCn4LxŪ187]O%pe!T~7S`6Q"RBZ'ӺJے~ zGQ/y$MWmӑ8$?>0?ފWB ;/ճqg]Y=7OJ9͇XuF nຶT4UTH){ .80{CqcmLҌ1w֨Yoy Z6wv3 d"`ϕo+hlSZͯ !;{h=Ñ=Uz>8:1}5 "JzvkJ?[?H_ŹĠ_h|R< CϞ*V,e6z㨽pE ߖ_橓Ĕ,-Ըn]FPk-l'x0Mg-ĊQD8njRn XU~ Hs|@M+IIZE|8cǺku,q^ :VLlI㹏Q'wZ )Uo6W[ˊEςҷ=jǸ pF\vW*Wz=)DQ Z$"KsS$\3ڑ{^m~w`ɭc|Ϟ\udȕdLBLêNYt܉K(Ǽ&P{ܠMCd'1 s^oWL/GBT0#i0ղG^>7bTؤrO= iH>2n.H͉1Vl0 iE(}1#L6t=YgW N30upב> 9&=!hnˎ1~\[5=ul`DAa~ E1>c<8kSY!v.Y-,OY/Dּt|nЍ[٫rͶC-(MZ+8g/mk$2!g=G a?> ?J7 [.<2!Jh(O)?sMopw`Oܳb?"L)(`W/"q$ZM YR^w`af+L-X7hn:'80TMmy3K bOGcQEmY;js$~3UIJD3rtt,/gyv8D'c `a_5Yٯ^.1o`(T-gE$A ZU#4':IHv"#H9379c<:5X4_5B6p- ĿO;~;2[2K!1*_g>Etqny᭖kM牭Iqk޿EǩRGߦxPuI(K{As -/.$z#p}H ?qJj-Uԗ(nxoKqۋґ6wRyXwtݺ70x}?iu)job< Eѥ?p`[~vdw"Jkk(4[_dJ<>ab@9lj;j$CqsJ21neNl7s1yRhPZӂ %')-NM2 e -w3T#rfю ӧv"%PYj|bNL_vNU،G+Ր<4/2!Ý3 N h6O-B I%\KЄQ@~h1Y%{4c^ hV6^hF9oKq. UsyTQFo 2@MȯSa4ror~at`lVkSM("X 0 WaBZEԘ*{_Wn?,>d5A@@H'`ssyScTd] -pgN}zV_ Qx8W8Je0bt?yZHCgH֩ }䵞GyBS^ ŝIF ٪矙^u;jQLtvX"',uR\00.UJL HTN1 9Ld!IrewWyir?: `N<Pߴ2D_qz{K]JKm/*שYז8ݒ%eJ"}\`wc %>;:1Fm>.U&8-8nqeYĉ)ݩ5?hnn{w٣/a9I| ϱ> B`-+qzxVLuܨ JkԤ%]e3`Z1wEdR -!\3&( 17|3sYŒɿ ZP>coV|&';o.Zp p "/8jb+wTAz:+1o\Ѓjnֳ zd%{Or=9 ٴ2 ءn3 杜(Y-_VCXx0dr&[i21n eΒ2RH'{;y#2GhuY9+M'W ֟>>4ۃN2qPZ|'nX< Ů]x =}P!dPX>Fh&3ݴDԬ9:3aO/=Z.ֵÒA9TB)X$Ǥ5Om4vg*vc $%Vs,QwJ"/9@ 8cX1d-X<|]d.yMDkLuaAofmOz {[@A4 [@{@blmcy3IE3$ް=wg*⾤'Lx/`W[MN#<ߪv?wC؁- '~{Fs;ǣr%Z)J!*h5zTNŀQ}vKȹ߂L!u6{1dD D{dquy 6վP]By k.PuJK㴕@D B^n\p}ַk6Z/bfAӉw J:G{C1G2Fhiʱc-K~H e-̯N6R2w5CNɒc0-5+B-E7UE-H(KobR$eY#75rg$[3D>( xlJ [yJ~GdYE\L % d[ LDUFPcS!.W hdh g*67Nsp.>dh<1HyAط ~]oO{s '瘀jCba]ndE\GJh(I)|0zӾcV;J`8w!ϓ3P`B==?T*ܟKd;J v~)TN0>i; żL FiV#_Tr@d5 =_m䢐cb||( !ɗt I-WYjq`7F-& z'n|WIx>(4Lh]%tń81'.(}e9%ثgQSzN 3(̠֮ [Ô6j;ҰLM}s ϙ Z)aܛ.;h*D2Es b(H YwK3"9i]z}66s58N?nNbVpҶx=숾3\/󄘆1zdF[Go+]8^JHxJ֖gR}A"*#C i0e-ܗVV(ͥ"_K5Gh88uHċIHvvKCbO h^رlN$zs#WcHRP,tiFYwg–NRcQu@eҭ Khg7xz=#ò+- nWrh^/6G| ek*~PÎ3|2,C KZj৑%_0z|6[/)+%t>Dqm[o/`z')0}hhZ‹`隯?Z Ѡ'}ev5g0fn=ȪGFy^I} wsfn3*}Bp1Kd|Rㇿ֮Λ"(eRS&"//P&dH&^5S6_KG1koU<$0{AiBPN7ȨD҂A[ͮ\$q嫯`z[}N&Ȅi+`B ~ BH#,߷(˅$+Qwށz'NZ1 D >drWf%i&;I~gfp'_5}JSNQ.ғUӹJǧK|s[f1@l YBHϹ??^JYRUFt*96ww>r0о Cﻡ ~jV?Ez}q8K}ֶ.䤍ԌCpmGFl :v*e!9IXo:,a]1j(̐>g)ڇjwƒ,m0P1`W->8\i,9 ~؆/<*@-F 4%#·W`C_Z05Aw@cJJRi/㤈>̠ph XTΏ !URw;>GVוz NzpZFPD׬E,p\kW 1qY)ovPPMILXQK$#툄H]n,,|@}a'.3IA04J.5ߙjHBWRڝo#oϒ߆33kg )AH\z*oZi҃>S<n{ҿq| ))TR&(RO҅VjxCg#4ΫqayA?}}Omk&ֱgZnAurcLGeS$0O ~z ҵAӟ,B|0 %}:.'hX ?S%ZD CcVgY,ŝȇ&9.Z}z12Uszwxj\6$:E[ҝ$4` `c&O+%ՒpJeqc-Ue]_ʃ)Os~*C-FIEs #HHYllzC}|O< nƓ0F {w{=ɬEYwD)yl!&u+=/e!C?Wo00F&A,bZ˚ƽitr+)1CP+Qq1r̀/<T37%YP򏳗/%0 ޣ[%2%. vF/ ES7|&Jb` hK=RP(Av4 XIٻڀ̬RM)k5}]zi'=Dy6nAnw, !+d=&Ee9˜\b1VCT8jAeZkO0Nʰw WݔޤHJɜJIjYh9(p,*kw-oG=^%m h7.B6g=lq$ީ3/w>gN幙2fh(7|rA;kdK;*uɋ]٭8'o8j26hgxmCbƥQiwF5ܧ2vʧw(|4a8<ߗꂡw=yw""D&&8+4ᗋXY*HZ+7Ҩ9i3HLj("=oj[C/ڈz _0t9ޢˣ;iƬ7!+<>ۂAFV9x"G@+F팬ΤxdtbmG&i,ITX[ UoU}t<se690nr/h2d_>rWVTjBc,p8>WM#kل#Tc] ot6xh7iwb_ ڟO#I2X%Jөik;T[0:p"6zp\ZI:7E%RTY݄%iB' Rx=8`u]f嬲sTLHa v'JJiab)yμAW̟ŞQw-ׂ^F.K' ZehG\?O~Isqr|-n*e J$4`zfIJ D|e&tjHʽwjd-oБtΗⲯsAg]?G%4qῙ"\'-9+{XZapeu[7vrP#}i>.,\ ˆ=·!&Uۭ;p6桔vQu'a#c=հ` /F j~pW)CJmo#IN+!O*ϾBLVo,XX ˼W\f@&3/B6mHQ ڬXyք8cP2G7Hjb!JvD1[R+Xz, F= _ #bt[1@.`D~٣ ɕXɴs󍯑 dIVcerV*lY>"`q/;]Њ H`ļqYd 16exC䱬'^}!\3ꎙK LTw 1`sN)Q3`ahrؘ4p[P4t PAVOxSp]7l0t"-C,ƂC+"iq(p?!svs(]h A:#N 3=ys|̹-/nFd8+f:sƞzHs}`>vA6~&8\<u=>ȿ0PIA1LC@9Wbz:Ft`mkй A +^R]8g I=%dJ}˸Ayd|'L(%Jmrep^DTwSJ= YUfQN0꾎vf2?-K+cCgYըɥ2'XkU}mdaW-) M /VYpb,X遤82~\ O RLɧboش rXȏz:Λ'Ƕ,mYB}uB L\dξn n5aʞHM,)YDTɍb^8.խ+l. 0{^Dy EЪ\zళ3|RUdZA-Eix-&[n gV70*!]kn4%TugO1spD\CI=D7j~\=yIμyq Y.OR ^>s@8S>N5(Ԯᚤ,}؈\jA.16̄6Qڜ`V"5$Ԉ$QĿw KtyE:21q{a$D.sŶHw507L #O<(DN3+џ$IxB=ѿ-ovU"wXׁW-1KkuGdĪRKck:>dsaD99qhƄȋ 4$l3I1|i9/T^ 9(f,z4͸E~\± @{QNq X5rWlg|]Cڑ tb>U`%h>ӯԌa옋#8ZVV<<4F@[Xoe7 ׺͠9.{|ʶB̥_1lZn_[*;%"}S` Ljǖu?mRZwK/ЄWY5+#;GG2s򿪨Sh\UM ^ 46Li[^rJVqӧmӶ60 BJWVll6,Aı7*wSN#sh/ϚNZb "|+}f~^rD3yqe\W:CҜ&◪)N5/JpK )XvGx󰕐DA<l [fPnoYB}߫4ߵ xh%q'/` `[nE\W:n{ND^0'3bLT'SzB2% J9KFE)WUx"zh،+4i$%WuR{<!0.3dVDl-('DkBIR?VQs&`p5l.OBE v3g zu›V4^s&#!:.\'ecn(|:0%;y,r,imqQr<%Uځ1166--d")lPS&,8> #spTL(>6D79j_ĸFƷ+7~'PA#zF]<[ (OųWt,[ ]kdXH}/}ɋa(72RռB}`ӰzzK+ ;MjwxF󳯷 (c`}'2 at`"jJGIKvѭ^qLڮwH`7I,f?K&jq%2U9Ne|BR} @mHL; @'M ! :+b}C6σ½ pW:ŭl]惮u,RF8f!5eM$+`A(!P )$fM:\dM=uͣӑtQP7W6gF-B#Y v,Ӆvl/pʚ䎍Sh앵^ζ\lq/Kl4nЦҟ{ҝqb(QFߗ_A}?Iyumד9˼ʱzd7} m&3(A.`6%lOtHP1nX oQN&:-α dV0\ z'rcX&jH=^X[tYhNeQ,LPSZ(p&Dzո!@r@E) B4#*b |aT~}nXN."ޫN;0[xVan5±íRG<-)x8CzxrZhNO/Ӹp7< FoX6C_os^…-YP%}9;S2¬3β;(~>~ #~/;F ǏiOCpF?MwࡇV'Q@nUb~d <_7;_aZעOilC"E:h#"Y24S<`Wء6!YLYCN2< #,G8BŶ`q])=ѵG!vUk"9(4XݤxJ[/y#R0K%_5D)Z%k[Cn32 ,D5,wuř~6}j7s%L2@OKd cE8Ptͮ"( g1~%;иCp繿thQE5? U'1rړ"3{Vǣ]32޶PM6D)9 G^bL꠰enѻFlY[j'MzSl#;"Xɯxfj)Wy!\ؿlf#HL;GGF%MՈǁ\P4&.UH,l9EcFS\.OzEDZy?Ƒ}Uф- 1#sRL5ΆLOFŕlax%9zd 1xȺfvrc+DľMt>dmnƿdz ݋$j/PzD]t"ZeO!Qũ (?4~alT(,ε#o{;@vH&E|[>:EKbGc&kCPO򲥭)`,S+;]JXrs`*+%& _{{~k\pBEP[}]2K_{⸇[tˆ4ceu~w@0h-pf;Q eKMt'VXqNZ5Qo1TӅaq).u%1. ▇xpx-,P̹õ`_C[{vPOh%Б蓿n(NY^[zY~|%yOo+ /׸A )f¢I~;$!j;qkQk$-dʺŊggaV\}ȟ"GꑬeD`gMoEАUW(:)Wj8ѷI+ RҋjP*c[݃~"bZ(N$"4/?ѷg= W IxZ%;ߴ6Z4y5]?N1`a:>UsElvq4|.L c?u)5N0MTS-C"~LݟLT-b/E6Nf~j/_q=peQR+Y!ĩ*AVцia=:04ԔӸIҨ5M ۃԮ&(! $i/EBяEAf=t&k6.i9`Hh_ 0Arcx.pY)5Fi+‡x;Tⴌ y9?[ҫJ49w,7@Lkt~p@/3C?ĵEK E5Vu5s8{J1E\C͑ 5FwsőR#^ NYүNp L|ãZy?fU^7ۭoĢc t?TS-?4۪\-㪻3W<|@/3xJjM"ӶzMoX<4,}ZsEI~?(6ɛ*"Bqf0&iJ2bav葘Пb; R&Ipv`󕍳)D$mƮ=:/ @d\Ex'1ѳ>RFQ\!>)" PxJoV}#Uىb. Pt޸ҽG}")bCSE\;n_ .o9i`u>j5^FA~,Jڰ9;b.ý2!-PV)ȴ.Ȳ8=uֿ6&CU,gt_WQm)k%lX BO[M܁N9fW-^*ӬwTGm( mm ΧjV3Z^2~ˣi4إd!Z̉L?{: MgAUc[ ٛ{?57wx…KǰϦ &SQ|$S/Vp _BŁnr^@ \jAr5^|`t&uVb=Fvz&EnoX0 yx!GȷMw ?K?9].= t^ KetLQbc x''x18r|ˁVJES{&Fi]*HZ56Ip|AMrs#d+%$bM ISs;iR;` fUX%'gS 5>`?F~Uh+}XJ4kɅ٠I}ƲE00u"82{1uYS%@EF58M;U W>I%u^e mCsؑ.Zms( `ZmUs8W 䭰kHbffF]J,c$!U˺sd>S}ŒLCh6rGimgf,U/i&ɏ~F.+$<2* btj)qtɓZ^zcPuw1(eOAbb?!xV7v(- EW \縪u=Jcq /T aRG4w=sIc""Txx,uc\)rN`;GK8>ww,:usVc/nI]E{rsv6'b$veT33jT@n[[[_`^E:}Bͳ8:(}(b11DiG٤ϔ4gpz~2 ]=4liwX#%łmuZH+Q|w1{BfK@ETc _; :Tbgs^27V%V!FT絧^u/RެIM ~/伦 L U{'4@My&QMIs#ퟁZ<{ُn\: L>w06?g4IҰ绸}BoFC~-`v/ڐ>Sכ9;R*7BJ좺"P{ZݬC>=RVZ2Gaߍ?ӳe#mIAM$(KO\FȖ(DHQДx%[Tƒ!ǖc0;%+q,r*".(hsp!\Bcfoݮ$1%A VB9<ض@&SvI̓fbӑ;Q93 *ҪJ7spϳ:B"kf1~!VsDsf'f4#) ƴ}kC^ʕWhobMm{Fb=Y4lxM|S -f4fr 1l;587f9FL ]@?x{/nkc]>U1]Ϳ ;gSY/W|50:dX^,Mf*J (HVLB=ǐuvMcCNyߞN;aX#T (P|\^'m9ʎ쿳'2 tV%0h.9aͥf-X;W@+qijV0vn9܄̡*È'8?@tУFKN;T p~Np0@Q6>: 0?BQ 8(\ziJ036ʦDw |m_` =k05 G+%*J>zƵtǤTxذ+ : :\4̀-z ]yBߛikE5Q^R AqS9}fR"9 xɁl<3`a1j P[cYd*wA1C Q/PeTՃZ3w?S j˪XYxR)rfxf0|\2$)V齄ܞnE޺&A~e0Ug ?}6BtJ‹H)1 x#E 8N^K~E! ^ (.Ϟ]қ<CP ANu&D7UWD_ c*وy˸QU/YÑ=H\16VzYI0$ф Qj7`s(T'Ty~-iί'?Aȅ#_ֵ= '$ޖO_~d_&3ΛWDFz͓ւq0T MᗽWφcgW#u`9'=9gQ]cIvlfNqIQNgR4#θP!6nX[]-tב{䔾.}~H~_FEҡYt׉ҰT7h{m!lA!&+QFWL^`Whأ)UBn'(rދȇJÕ F(G7"tRNJ̄mVW%L%xta/ Vj(n&CWWV詀i[jO T9yf\)Grt]G|? ͆nYQ/LhA^(Z!羘6eM$,h|_5w(A +%ot#Ƣ|F,”M\^IKDZR(F,?EtAOFY`rX영eyk3ltqD F p nޤQtbE<4ejԭ vsrvD1@("Op#"bszQT) frkϛ5s)apuw VʡJwZϗj\U!'뷈x:b_g%ÚtNNoѩֽ d}2k5[lؙ"984]M"pZw M ̡aGΠvS7I<5'Ě]v|) 7E%oa7!g{OTYUXr[\]"!É%G9K"~:2:boP :N+-UM&]C+yҨT]Rb2.I=27[#I##d>brТ` ܟ T/1nXm[Fuz8 m6Ks /ʗs U/yd2T$vw2v ϶deHwɫb9D sCqjzI&"=0L1UM ̶ ʫŸ耍x|]AC  ڈ/ohF&GUG?qِtm'&q4OSͮ8\H$T+M5?"e)( ^ޔ!9!dg~HLEg>_`&.= CV$'۴Ch&,E2CvvU [ꐧhC<"5gxC/wB0T>RХ/=ԻZ2ur>GԱ$ug:%Ց!}W_`ᗚ mrvO:$Ի'G,{+*5'`VwZQ7l@VBaࣲ4~v%lY"S6q?4h||.d} ȡa1{!ڠGvbJ颵j{}nө _};b_ė2bz|UчSfyvEG?#yeGݏ/y⮒b6N O&]svaUx1D`OS6p-hBTeTVXYj@΁`]rO V]Yuӏa.qrPzx-KVq2#ϩ8a4ܮJˆ##N\9Qd4 trB:{A ML0e8U("9H|&84y 9EKfeàĬeVڹ,~ov }'t5Kg&O,pU&*,v OMCX#kI|-B=ޭdJ~C+ۤqXä׼C(:?tޓܝܰ?Q3cc|6#a}rb.U&NOhI:&LgDcU8Gor.^ӌȲ:i ^ 딖ĿTVNлؔv1e84_O@zJl"W-804錈2 %sII Xag GbSnjl6* aTIQe:e#Ce!3`1#4z}VDAOAzEIp:+,4IQ:t|簷L&N GƩE˻v7qׂe^ FU|cs/\׶Wx"mOm#Xn0Mej*j^;ͬ82O#@ B>`l,֍L8Ϫ;j(\qyYeQ,7,_J9j0w-۹3+c=VSrVI&mAmmB`(8n-Q/`EEmղMh^~GmU(<#v^Ң@jVh0x#y3Q"~_µ\1}'X柽Ȁg_Uh^OE5իdT#Q\wzџ؍p-3S|saV{5YIJ_zPSbK y2qcvQ{zW5lc'1΅z#m-z<lE G4## u-G^' Q4ti_~ >l-`K͉LOd>Q(ϐP)*|Q޺!QXRoyJJb$$LX>|+'" =_pyo"H ϵb;IGIzw !-F~j4NNjKYh(G/(fe.+@-;gh]gWQB#2 QQ˃|>ϊUo3TQF4epn,MD=HL`3B: qti8n|v0@+~Q.EvMd[ZT`z11IG x~xV" 7iiߧR_?Rnr<41v0Ci^mrd5u؁cP𭄸hS>+i돮}Z|q΄ ;~Vz]{y@m260Y%~d˷@_A !羅U743HyM*6}+@5D{c/`SwFa2|6oU'_GDj +QڇSb;7$rzn/x7xpLp74Ħ?&L͐TV7i2&KwMhjw%>7ٚ~cxP_d "& j 0[BEBxv ‚:mG(-@+C~HJ]@sDd|W7_tyfb,L,ݠp-q:@թz?4[Kj<'qsV͟l# >e:͉3UqE_<r:>v;}lwc Δ'KY{^ӓhQ&C{@HBrC Nef1{}¶Tqǟ7ǁ9AeOF+/ڄrՈTtFj P)zV [w?Aj[_ta*T=f><ճwIŕ!p xʘ)`+sH$bxh~oI 1c >``7I:b; 'Fi.hݱJR̠@$<[pڝ}=rp0"{dcZ56a| t%C Mxxs_%)QŒƾ,YzS׷2ŝհ&z,##tT/Փ;Oh5"::RUC*h֏ƃ+k?G9 pP֜[hZcjE(D5}R.sus%K2㉙Xkz: e\*!z8(ZjhQk#] Yݷ۩O#AQ1.hua^|\Jmj+)*̕@i9Oa/'}P)j&ϟ! olĮ#aXײ ś6:?wC%[Ϭ[Eʕ:]P/ x}x'Gg{nFKg:P-dY7c~.wk(azů\K dźBD#\bY|h IlF2T^SF%.8=;}>/!QPꮄihfu-]Yg`& 󆔶r<ő0>M$Ţs%j{RkT>^x̎F9>^?CT+QOH/&{砌˵%/"),Z(8 Fsˠim\LXV vNtKgoS܃BDн;EGP6 !ҌsRis.n5/&20ִY;3Z)w/ 3ȣ˅m V{r!rB!6+/ \?ZvQJdewcd iym6wAH}uPaQɠmm}|3DL4&f[cZ&"i f}]jRm߹͜bi{͹W}"C/Cv:5cgzYvQсr<س?\:i*,0.{fzJoNN^#wīidvz8e: )5-XO.ny۩ Fnsj>rB=T 0މ ׋  2ՁIMX)4WZj?vSӃM"NO@ʮjɤ^:6 R0;;{܊ '2o( /o(@06º"uh[9tq\ "2`\S6QB2`O>g #:;?Of>G"'4G!إߪi c*{ch?ka_OT|L˰lsD?:Z$+4jk9lM@㑆Fz<7SSFǏgFB# j **F/Apؾ\8>eA66OA.<{s3mIunLLh`]B}5}0#ҽW}SV@\҆7qktCbCuLC*V»J^9+~S۶<^9ojH&Y>>)qNw^zwc {픩#j f]K\-!c~Mܹ5P;=Q^4E\ [3UOZZOk8Z/Ro`S'"TYOmH8H ~XM`36s)BbٙԤ"2!uQC$W>XoiMWIPw+.AR򂐈9 ^i4~.K,G"*S/"˃ OplkB6++{G-kّ8ZRx @FazifzPQ:ד\Ak:Tj'B9ZZe1O'}FmlVkٱDڢW*\ (pm֌Q΁|I?Qjp m6kc!$l8eI *WIAh |;4o ]ߐ: ):)0`״Az@(pKMMm>> r`{(Y D[0z3$˟)W"J0Lݩ%Dn_W{P^ j_L#)Q dǷVӃx;g^576rYξ@[|6Tu]~yicCA^nZ`͹0-6N;PQt y [Rk2شm}Q#|̞ŚaF-s*+s@}DO.I @N1 X9r>j.. 8 0'0"1ȿ'IhMEr _r$O9۸F֩ / D2` n&b2me0_ԧ 3v;oQۺ[I "9Wt,ąoEkwDp"E0:>Qy}섔S<09@cXz?zS~2(;4cF2!Z{脧\PiQUƶRD}FP!۸BU~I>n-\ˉCLnY %>Ĺ9Ě@;VMZFG":&ƒ-_gદVQS AHvcsǩE۟\ic5ovxH[ͼ䓤x/B \"e+;!9*[ qj5P:چw\ qB4\B?B7~/Q 6s/}fC $)Rg EPi'Ɲ[kulNc u24+L};r"ceV.+w7ntѺڤ `x2$SeNJDvh%PYԡPb b;k^S/R$$ :ͥ`E"" ^j'HuΣRsG#>oLZᨷ|V1Uǰ PI/8!"ⶂM^Yb}dwg2ޟHYAk ZLwS[Խxw6f54.h3mWE㰬nuq+:,Tw2(~y1k4s*CpkJ $r/-9Œ;pk\[LwcmZu:iur(4v,,f _*ђ |u6#Zm**#LB8U&կ^ uRJf4z=@Ke4iǐ˄:j[nIj]p>}]ʀSr``k~Vh_L#jk&ۛx53%Xd wQԬZ'F;WR[\4~cc|.$zU`BUНZ3L^VlpXI˙vx7}H &EI : 0ˊk(Nxh7OKj{ЌDW9 UnGkw$/P:x\G EVAmьq È@(R.nJoC+B_¡\U5[&ؼutLyEaGSs;|2 ;HuHVʷ/ٖ]@G˜IeUy>%/$ #vњ N1Mht'jLZ S욅1 .`[$rPi5؋`v0C 3w xn&]Ud,g_0)fGgMj߰j\͑S8= Ӈ*3YsS Ods< T.(ж3DV3ldHS+}.0*Tn 䯎&V|5#ul2i2 ?L}dSDEac]%IrkyˑA,p#l,MY]2 jz؄!TVuLL1\iVFu2͚VUG-fO۳cgo0KLL{i~gtٹ.ߓq/5DrED_mUSfH1xj"]?~W·ܽ^ʘޗEZńpeQY&K/ӞZHYTJVY, _}?LUt^U;:_ g 0>,E#L y( `^іq DMGc@ / D%XIlCJaDz5dJW-!mŸD ^wfݮvbX~Մ~*G9 /+Rt)*) +2>ɗݓ˲p42F~ZSI FpwO૆FGhâA qNX]' M`Oxd L1@81GfNt! L;ڳa¶Q:U32n9 DIMCXK^=e90u#ȏ`К5(p3:(=KuLC_=_BݎG윀mrpƣ )+aܔߦV&8 ~'EN0)$@^k FֻOyi5eg/kƁfXbڣNI"\؆lSDŽG喑 PC`%x|h[+SM 6Tq}kzNN5`JR7YmTGbE %o7dۊwޏ+IƮ̬x 8D>bm>Jƣ}y+e杞s1`^Fٗ Z6I-0moһM|]ܰI'7lmQeg6Q.}ߋrw8(|T9JlF6h𯲝)*/.9zo>nj٩)Wra,Ne"y,ߦec} QkM4 MEjjd{+*Ȇ+9jڡ% @aJF;N'iA`Ϗc_])=<)=.mmoՎliO<K3vw.w puL_D[wg͕d^^_ZG翹Z[Kᣅ=!/sm ?jQ3k(D_*xNN`UyxQ*%" RUKa5BL7fs8zY" "oT fq[uYK¶"sdս7]*=Xo3w?L^+3czrgWH~45dnU.mAr4EjY{r|DFj @1"kkA:U9 I91=Nrc5_[j_EX:n)0r䍐vÊq2sWV@IlxzhYL:bv/_1q^=:'T.p1KqaQHÙ D֣RMPaKPFyW΍`ѯ h;LQmC7аJ;Qq{Z_H]5puJBbI2 њbzJoR Ԉ1pt5'g;(S(ϬՖέ܃``B-Ȼ6UO\>&m),q>^T]&,gaJW7Xi=~W;#٢5" tNq^pW>'B&ܜzb5aC2Zww<>絒]|Qo0`,[-KB0 mY: ށUh `p(7ǂo42#WA`, 3 HũІ&4xɪn؜tz ܱ/0` Ot[_DŽ'NPB#Cg+Rg!ùb[䗈n*HlMAհ_:pګ ƵTֆuOMvpAWf ׊p2]̯.5qzl(ee&]?G5 4 ɍpK#~2sVi 1[fݧE$V8M7| #LHV$V&ЅB:2GmaYR0!>&BrSNEv\b: ># S6PMT5Xih9 @V 2%tog,q\KTڦ Jg:*)NYNjq?[Ł:efHi -~?rO,!85߲%ن"o s|򗒾P>g[=Xm ,tuQه8Xm:tsD%3BfX㡯%35ZW 84WFA>r& Yh6(w$L릲M+MYFiT@ARCV¢i3NdQνH1@ ꬒoz*7\es{wɇ(:x;Dq]F:,qY~T .OuXI¹ 'PA<_jv;AhQ4jE•~; PĬ/b7C eov;éyWq1Ujim%h'VحpJB[=d udIC1V姯;UmߕX9GOĨ0JSҊC1 Xt0tt)V&8oWN7)WY0$ݙV`6Do=.ȵdq3 b؟:8/N%̀'p)ڽEGxAXE:/4eɗA-HDBv5Ha g3Ȣ#UhXm!49 j`-@ i"yg|)Rl;Tfy*__U{TS|*kOɩ`}EB:3=D^sʹOCouzubs~-LY0z [֛(ԖGaoB,ƣ4t7Mu~SM)Ȕ<ÑXlŬ(8׌+?ww?w@#F "^&oo0)Qy#|_zA0b+\B[0D0—ј4mGd$,V3 T3v@ 7tŻR~ZMuOٴ,t_U5񮙐da-Oh̹"*)Ls3o>f X<؇JW t_enV(L=%1毼O<_`]5Cڜo3MrV5јn;f|y%(e8P_Cf{ h$Θ{(vwej94 H!O5zRLB9 e4o7h;$NAspF<i x9 z.W~Hͯ'& #дMj#'l_Vnvs5ZFqh%L}q9 Wߌ'(| i}-2&~CӉ2.pUOe!aܮCI/s8S^񐉝1&4ż Q`c խkZH0kDգ&c9RW˙i KTENxvA3ϔX^D?TGI.&L47U\2m`Qh4Gķるƾ 4]CܗCōNKZ?g/r?SE!|(tXDȭ2w,UV@V0/ W (fx&ZXcfM| g&:5,nH!s۳K-Û5| N1(^I[֠sue[ց#U˯sPCgiLBfpdž%Bwn8]#ɜuЇTz-<&ՎfS}k'bee+XRL4[93Z f#b/˧ʥ@Y@@n/ !",Xf oʤv/`TO4hrWuY{10Zl+BM~ѾAs~RVY5byKsC#A;U썙mI0N]iG/| K3AV7aFf`*Dߪ_eH3p!=rCqcU ̢K gd;9F,AKOn?:OP벯c7VBru$\ ?jCzoq)-! U}yȡf׶MDaX^j!ⱐZJaJ-|ԖT%)ɧ|i|(NڡY>m ~88WRME6A|4YiNSa `G2 z'CPTS0s<\Q!󡫣 iVt"7sW5ғ__0=4y?M˕Kڢ]j yֹK32 ¶uη-sێBYgu "ZQP?1ms$pgoA3,ep)HSM-N)wìXң?D~6rqW3Fg$ 4Z} }W@L)}cɀ25 d7܄LݰAIreE<&l<mmEOaVBuŝ"mӴc ewW5`eQ1$7t%K/?]MnoZ^mQQjU(.(xd{l(:&Q,4xiWxG [$ wG{QwYeӷU0pѪ66ʼ8Y0:C[IS]%0<.̀ xQjK5IdeVd)v E!_R"X8M@Ķ)FJQ& W0?G;Ū_rmL.X1U}FB5`lvELNV=c Mb4\ys^XL [7U614F2Z5ހ^ih錈>z59U|!P&=wiQe1 vq Y'KFpp>Iy7ic* ;͍W+~.R3G4CPW!d>c0E^T iMv#py2|d$Cwh[n`}EP"qAwڒ^ҁH&ExSv14 KDq8+P(@%,A՚09U2,? "Y澺VHjxv!oUAv" e3m泡̞*}jhE2dbMQLQkXS&*hTE1$TLZBm83l46695`xR[,i!<%Ȕqn jxKrWDѳc͓‘髢^mPCAdGӗOϻ< Z=ݩQɅK@xʍz X#Fc!'&x k#zP7Z 4,7hgJ;oo CxVcU+"t&C1%ݷ}1Z!ٟ9*bfXpvr#jXjGA"}p@+JTVO : |̲{Д/pticGG'n%w@#M uWQ\W4u^z#Rr0T5ΖRys< vWқ0 Rho7S$.w[O*iC~JS_8Q`5~S`~19d7ڙ_w7m*Q!*8 yd=|gCŊ#)k:6 ?==9ےuɀ*Yq;l=$;z<+ GɩSe,}oyJa_בTl ZrJ3JQ*_!8KþH\~Bdc7inydM$뱨,ԖؓK#U"ܳ1Ⳅ;p e/=ѓ`[$B޿뀁88WQWRY0˙>Sl F1b8{E.K溇.Y ')JɊ6aqR, :r($d%M9$LQt]NR ڪNlIL, f d[GT,ģm%8D/x07Wdi^W9C lCHM2y Gv f*#e:Ғbb~%QqKDt* lk0W 8qiy{#Swۿ)@>Ypäum~WQ&\□#g\] TT{yBVh (D!熌=GoV?GjB]ɘR/YȚU%l0@SG=H7ˁ'.h0S2{ 9UQp*d%ti$C1PÞ Jw`OÄ/e4H`wb?>DZL\ῷcƋ#-x6:MkuC 'kq\b9< `,!j\/Լ@mqf%!Vp<"j:лpGwvN&[:第ibigPz(cal@3ފy9}?tIqEܖNwo_&xs%PzK8J!~&dqS}"f*?9T|:Q;2$Neul` '(__. epe?gtGk5!M/Ohuׯb~fO E"]Ƈsm04qA}A|"";ػ.b-ȷ?`,@Z_(lRFOZ$z 'Vtz@dpy޿}H4khMAkLYF8y2[@Eb8Wv./u#Y6nmrx Fw E B'ׄ[,GSMIsdru WcC} S'oA\G ޥPW#B ڈ:U.d5o#.dYZր1?wv3 Y씫eY qRlsLBH (m;V%58zݥΊ0=G=6$IS}#" +N.;i&%Mećo_}ac~62,i}${fA__`n[bl͈E^F S4; t#E XsAȼΦij:?&0Ƿ嶃7v4"b"T~iη16µ\;קTu5e~vTMS%WYX Х+yTan10!AWJ}IO#w,-?!k*@%^"y[9;2c#j @5n!~J\Y3%Nlb6Qut x8YJ#S{Ӧj&z nG^pyZLpߥm:2‚(I#=".ɨq!<"Vؒf카t3+>K@$ 8ANB}}huƞUFm*YCDd1Y1yV3KάB̮['WNep'n7gu!ޣ_Wgs'a*g5귢Aܙ7|9iIp͵xw䊅oiQna?$} mPsrLhw hV:f/- g۳,-QXlfM~$ Cek1u KTAs63Wg2)\y$b6˿vܞT:1m$1vA:SqqxRZnPi+Hh /Y隙D~텀pm+}p_Ѷj7` >2Yi(R2.PxyFdlkԙ{"XrxT"eZOqo4NfCR$X7ͪ,3v ,.jFi n;G]K]`-%<~ZJ4vi"Tƍ(ӝ6,I[ b%Ϥ̗xAG/"JsOp)(EO$%bNGFPҶNuv\r5q _03~p$Y˳R2i5>T҇Į-W=66*vU 3 gƐc uq y(,fWpGk=o.g/M>ƛ'cM]j-fwҀ̹sQ bhUxϚuhWlH(a˦9?f;(Qv3V`aiIv(7~M:ŕ /֍'@^wWݹ QB`ָUyD&YY¾8P3=^O¥H \N:n(]N͆Ug2[a*Cj# 0:f QY~YV%I$Lf#j B6ni($1x)rˣl< Fӂ Mr[2s4̣Rrx|iAm!A5'2hNP^E]W+0#{ M2dTZjZRD,S]'2V,Xn%޳bYsp0֢:)L+;:WP+auݱ'(R L{^QNef#7^;rXQ S֎gˉVhҽqꊡQM|nãz0%ҧ{WE.iY/VLr͇܋mJY-|7xt5" fc* R@bV1@Kz7_~ 1ےfilTG*~{yaPx_:D݂'qh)ʙr\|9 {BY미m/u.4v8VQp~RgUY e cBA |U 6ߝiʏ]1ȍh"iCcQ", accG1_py2+ӷf{*%O`V0K+-|l:Z\<l>&%ӄ6 WF6R@nVǬbOD~׫N8O,뙼*sV"*bܝt2ohSYΙՑtU̟4%wtO Z>+nu@O?3DRu+jwUkY!㔛5Go)$#JƧۗIJJ]t_ߦ]s}Ln'v5C$HNo'2 P)@ 45Mdҷ|SK) ̤W- X&{efgayXo36$Vby'_$pHXV+^l{4¯s&ygØ 9=^?}h)/Plb?Z%l.H ar+;Y)=f`]laC Ŀv$BU䏇mJ*|rmV;NI\bO3"%Ub etwi4%laiE5=ڰLJ'S]Gdp&nY'V.H[e:O}K֙W{9If!: OHK=+U03ty-Y?ǤI)\[~:HLoL}G#CDcp'lc09Hݱ6n+V~8ÀßbyɾjKbGc}iq]k([gzd’4lG-I`͇w_!<$e8Â2"3h ɴ^pX|1)↲l~# ]oWFdS QeP08GY}'oVYӋq5*,Lǜ1/GDWIIB\H~EnLd3>=%/o/a $:pot-- Ss%c4%_/<5 *h53l1-@YxK_ܷ'Δ4Rg a( k|*ߗ.ǠO ٢ɶzl>H{=ZjWK,NBk2nl%Y_?- 2>"'Wlz1}c50 ac]xpRpߥ8H Q3- pqxF$͕(akZRԓv^xo*1C ,(7Y]28<n@xZxqݳ͋HHMB35ɦD>Up@S^*ȓߖTp#6ոD-°*Q,}sQk w ^ D7Pt`;k/ q>4bw7AӦF 0 3"mIS-XIp3s;lœb,&>gN mk{~1TӣS]1OE~O^G @PY)u$ 34eL[/Rک0_tf`M7WBk pe1N:7kfY!lGT=NW҂ G nnçϓ((+3+~|:tLOA)~ ɤSE|xB.iosAPB i kQ%+wc g\G~0 >/ ^0t3X5TdйeWt6N:.ZѴ(ϻ;)3-Džk n[[HEtɇ)T7ǸLv<)Q]j`+Pęo *i['rny0>J =P ރp3JAh& Z? ~saj@rs=Ju , vaKIZ0 1 ++eAy,̎Їz5y0{t\&%M1Ow9"DHYWeyY٬j6:FO~8v ?ZIʑbp,(E('8q;6w5tK㹠Tky ]Y_rܮN8l i4D^:-] i栄T1{E.\Op?:lW/{M?2<*t67vNs"} ]r% O]wS!pO!&1lJA [orp*Ѐ7o٬dP &.H&1\ & yIo?G{J:tB!w<3~hlRH~? o:Aψم(z?8KHayUƔ8|;^PGuqݪRGWJuo*eDXP1]1s5"Xڀ4'i<❂lF_π9/ IoFg.` "7xo[YFUAɷnAz3M NCun$=*g-bxXH\Տ %yk Hj: ,R@Iۑʻ2\2e} bВWf{?7ոI_qD0;c=S s|C=_vj2"t_մZpF/͞Z+AkL8Ù=k[վGž}/]~ d_cpT_}+JKq(` R`,.cvRz615j4m.Zm|;+K{8k6k(\պc&&£,Cp_v1meGc,M*=Qn ﷜^yU&=ŚavcHhzcvh`:I]$R\0 -ߚB(D: 3凓Qހ@f_(4J2rHF|y 4 ӎacnUӾ_r@*'nnP}3:HbW\pBe 1!*2r`jOte&0nvYg~:|k-kw)J"? .jo@YX9(|^(L9nMFB6EB"in& 굙%L9w8L}ޥE%IRZחA_~+ܡ6ԜSlNk=tyhTu0G;̱ /fH~˛V< 5< eϥz(l7F%gu|֧.PSvkI˿jɺ\z3i3' Bmb[.\E0艤#k[-0c0;T3] 9$(K* 9[~xbXH{k’9wFO jhG;/)b ihǃ5|K sBCA<@vK>Ac$KX0\٭>J]3=aqL s@K"LD'lҍf'aH҉0e!j8(c UO!A=__`AO{5J5ađ:nI} = &t#3>JÁ%41XtxLݱ349S12SX8V)v͝$sPK3j]g-(cu#PR-#w Jt-g |\/TIj'|'o"G]v D$ ;G]Gyu: [Tqis%52M@&Wn婲$qV-'ibAǭ6{|PA=MС=3U'*ǽnpv'OگrͿV:տV"YVkXY`͉9_i0Ecݪlc{YgGw-'֪j8C^Ry]"'4vO| `kD+Jstط.~mN^ahEluÓ a90cezI9GݔsEm"͜!2/\V[3xjێc͵JB8#3vmb2wޛHoQH~vys%Tajsʴz}qdNP5(5Sd)ȶF|t`^DIeD[?H0L_@h?‐nNUԒ\JNI"ΐ`Rg\{{n3w{$S 9Y mSA~ji:M3VOϺU83,a7̫2Nh=3 c'ίEE_2Ksx:@0(aM ƅ2#`ppCbCU|C~es{3hYZ&Kga.6IYL%!$bv]k_; l śDG 8 Ȩ_PޚjݷxSQP*_Ptu.DOγZ šahYgbaLO俳L #Y*}}kV'cqg`'-VM;:az* oF_V'((@ni؜4 ~:bqDb.Kekk?'( EgR[dsCP,̪nmU2?ѠU?7%Fn2VBd wi0ʹLFǡex$9j"1Pz8qX~IݸZVݒPsE?sLSE>S 8@& d/.QHP$ɕηPrY.lf=̆p:Ec s<"ݝXق%`P T X9h3t4jkFGwqwzPHKeusp\h rIS6jg]򻞠qKQ6/'?2zϓIrs N+z+T[ls0XH1kc4R>S6&AFV!8Hy6>֘9Q- o#ٴLCjX4 HxDJ' H 1,OzʏvuKV>EFJK,w4tm*cЏP>Z S9݋|4盙WHq{-\$Z #_QdLC| aqqwK)ucQwp  ہUaΧnVXyf# {.BuP38::+wsLg~2_TdnT5Kdne]#wB,bT#n,1 N 0jѝ= nce@öCLR,΃Hz3X #G̑C|'Y'a4ޞ]|0͆gZeK$肺Ie ې9D"ЯytWC,& 2RWX${:2f͍v?\j>zzg&T:N|wߘ:i3:-J;𛀔RݼΚ̩ :˖5{_ ^u}N@7cI%ʥhR{WRt)rkAMͪT oy{Y? U@4UyUfÙT1ZÃda>~ <>iab ؚjL)]x41TQbPqU}t#no:1٨}E ,.es 7߄GuFS kq*']I@b B~ÿS|X8f^_ aQ*w̞ug+ijJBI?O@qa{V(S!@')Z!9(~ 9z](%4 PvŦ6tCcաDI*|6`C~+PĨR2GU!: Ps!Ap̟JP#X,KGAUQ9__0f 9T$[Yn*zBan; A1/_wQ8( _kkBԾ3: O?G ܡ}}P8/=UL vI} [OoϪܓTըw9S <\!JfÅШSּ~9N^Ei"7RJ3F'mmeGrNЎmȏ)V:M\,ƃS ?h6 1vT-Koqغ.d*> ׼ rg]%t"n*xQ wwd\Mx.yR5^F)pXoyɖk,+ꫡּBa34.=(|nG!!\ SEZ;^oX"ѤC˳f{R}y߶CI4N ~V슢6"]pa*WQKo RT p *Lϩk zZH<#{N6_|'=k̩pSؒ;"(*0g_dglK8#|>P{Tx-ܸ[UPiKBbzCmv"+YȅL*/p0|[xKw5J [|~&C)9<#엌@JNL*׋ו#%lsg{qP7h) OPpr0ba0% 6Xzac9wSIdͫ]yE[m^ZP& 7[R*.I {.# Xxy۳/+=WMSXp=M)c^0guMWU{k~;żq2Ic +/uܛ2@+f<*,&/ ,Q8}oNa 7cЯfLFnPL߰y~'XhD2|1/Du2`BI43$T8긛 U "y7? `1Kf.8#4+{"N X)5O*H%{}LA [xvgkq) -^*7#(^̘{X%UZ1L\ 0vyVXKG XCe_|1[MCK6;S lP7\ Jh~jH\ʋ:ܷ :"z Y;/ni X.AC0G%z? i4f?;:Tk"0j95h<ġ*O8 x;S f XxQھ#/U=EJhKEp݅eCFI#R'c>:gqk^ TY[KƕNݧʕ[;WVbtrSOc-6$7EBfjqpB+dv;x͚txM2_C-&5kHR;"{"X|j4F(KW.wjCmrJ*aV~/xGz/U\cȚŮ<*]O#7P[{!/Bl6;kW>@;d?5R"vLLhf@3_NQKi1ʉ$HתҐ"F7z4 y҇?r9_H[veE݅iLѧ2zhnK;|Q&P3 %xǗk)_frx F!*PK nѥ֍z/3SNc+LCz9&^=\[yʻȋ_ ~z;4 Eܼ;n(˳ eU:) 6!E~&60]%=BCGh5];3\=-!ml7ģ_uo:X#:+ hk}9/j< i4TL1F}+|K=AI6 ۞F4 J#y3aS4@v}*pXzţUڕVF jXCSX+P?4|pujk *tvG5:4=aGTeQ/wy!A[3 w+Vromiלw#n"/I"͋3V™Yg66> Я31)ܠs?3u1D&ޓ!.RT+å Ϟi×FN-S.{#O6k( 6^"ȹ FB.3Guy VъvP ɠ06U69gGe7(d@&0A `| (S&`.C䝝K56RÿaŽ7CXL[HZ O1Hzho# L,8Pv|Tc_T]U?޻cx!> gGGx 9֥$$ ov;{7~3]ʏg-nnJ3`h- ^$ @>J&s:Cr!/8VTieE?v\qy _])کuixJȷbWO6u{KƦ7Ve $nׂS5k]xo%jIǜ/r@-Te0G G 5/ac;[~5A =d__Y`*J;]VhVO6@_԰+ .uGm|J"NOI]6)UfUg;cn}A2Nj3(lЛv"P9f$}ՈQs;a/3yHk^+Y:,ڌ zo`^{ڄ.Li-πSvLR0l6y׹uS|eUl6 ?bs z"ym̝nx?3WU3^OUSϙ5"n׫ˆs'[ ļg|q%> ^yiGxwn>tiK'c"54NL*ˡW\;u7P6 mp&zy-emydbOTJ;d-Fɿ ~ YyK9гQnHq+ځyGy)-+!Tm_7IU(.Eb9muc Ʊ2EFgE![,!r ] .+(؀KVU*/E袭C|ZUZl[=+<Z{.|NKzŒ.z^IN?+ΖM}&9qYtw`֦0'NJ@3G2z(_⟀JRV,].E9OŪ bRzn0NlXTLqlE>f0ۏ2mߢ]_>O5mC2[ ԡ3݁9QwKw8OYhmp&jN;{ ޳H-9 yu\>"QW?g"BF{;8 θP&ظ륛KC Ac9Oimo3X)4Lo'+@.&T84FnT@?P- g 6 /?0pKX$ᨴ;'Dވb_vcO%=(%xB@ڧX_B3Zif'NM:d{KF"Y. F`Η9乎Yb<^b[|g1j,lYcJRksoI nv ]NyE-y}̓4n9 !nMh'/wJJ;z)4Ri~DL=xnjE(ڶnQ?CUH=;:ݲ0s%[&§!uXnJ<$"VB9A7ֶ'>uA ,?zёtIҳJI!DUl$9~]ýf^,R*ϧϠYb } KKo~߄USCNa2sKU6H!p4ތ+R~h)6R*~|0ÖTrl8"u= <㉩OkPM h8;bn 3u:M׈>JRŌlIt6'th <`Mm'nKkv[}̿SPSHGm.RQ#ȚΈbsci'$@ErӫsҾ_[ R6R1s =rPZ 3wzѫRUxيqMB-IQx>5+*qC9> u(N (bl~D*~Qol-r3U!H!KppbBQ1ks.uy1MIbb`oqmq<ɡ88^{YE#.sQN&BF|uB$y~{V"L:FiDv*:=b>Y+SgڭC/^~494F1̵O0m!˻׿Tdaag~,yXat Ut{EZYܻ4|FtٚER~ ASLyGHdtʆa[bp*Ӯn`rO9YEB4h[d.ԝaĚri. WJ/$?w²u}c7.,- cr[i: f̨QեiXwb פ;ЅςeE(Cm>U WWYyPC[lJoE$6υMiNL &_/:44XEB$W,sȑPZד3.W4r:\7.kw>ۍ|u򜿙* U*7BB oiiI)[~VEa~5CCb!W;A>c1H'7^ V_[+Rʟ!g~14 $aɸsf2zp}7__uCTa\<+R bR^"%vTf@tCk?R ob'7MWHbRCb=!1jmlL#I_S`v>GJ" ^Dۜ=5Cw6m)Yo0|aa!m]n|Ү{{9&翇ҡA PS͟ #4QMd$ՌtZ}B(j퍃dpFDy2ٱ.kCY?iȏZDv}g.AIwKst|Q9%0qۉ d=NZ2(g+ aD6m'>Gm S`+]'B^쳩2]K]Cl {*uNmka 4,Faty//aE *zuZ,#z' T]6||?6͵=TpuOTmAiWm{=( mW遰_ >5W qּy3X3Dn1n%ao!)~Bs1)`J,lE `p0aC5K*@oG7)fe43ISl'>SӌdeBA}peY3^olOE)ѱu]@)!x|(ac6] WՎH4m/4n,' Ŭ(`cX >ӎ཮Xպ]vuec<{+Ġ@+`UxVm5]ѦꚷS:R3I:Hk]XؘuO >YQD-Yeh*5B7޴Cz,/dW.q\hcET =J(Aⶒ f'7/D|`oPG =͍v =K9/Ə3ۛTM)%sy@[eZэdE1r)!t7; v5$){/ޥ%9.Êk@9z@Ca"!~7Xۜ.g#x3ޚd{荡=~pW xPn> ݗ$U yjqڽƅ ˦2E:g f- WRo*) Z LzmyBֹ6<"THG w*q(\&cQl9pqoɾ Lգ1MTW#⾓k1$H&Ml7 +ӒN}ANhQzZw`-$\Ci=jxJ]0WhLKLVAngUkA{/{o[dxHu$USǃZVkѓDQK%;X;ae7(R_[$7Ct;{ vvmy4mZun7H^TZmSƒh ֎5BFS0D1G0w?!%ݝfb;2'{ѐ'ņ]1ꀍ#o7USɥ|nܬUY*0Rt |M%?5,iɞmpp&Lq~ l‹"I)#wpdU -Ɯ8&m ?QHVPݥV 6brlp/$^ NFQ9V"0?ciл̞؏֪iǙR:~"wb_Ahިok[}T`$4'pٕ-zor|ov}FofЫHÁ_KN)O٘{*'S 7<ph˼>Dpg:\1 fωlN's7RMEz[M爫]-MX k< `;LIQYLxwwtFuxQl=<[9h =9gk;_dG`KSLzG /`Iv=rN<*eT"cslT&F hdHet % 2ZgK聕<}}C x >厄q9W+WA ˯ᣙOT/R|*"j a Ͳ(\31lʦ̂:v֋Fю-/o+ؙ0KTu>5o؂ӗĖ_p~ꄖLQՀ[YW{󶄨:28\d+cZz}.XJ>厍s\׻%g?ue9joQF.b&,kԟP,HT9Κ?Dt!ųH -] DA) - zԫr@Opǻ DΖ$;# ȧH#Sfl< ?J/c`hYNÍ-XtI n2 9M]A}*+<8# [bN]6Ĥ7=?@ٴ1G@ ևT >B*q(`@rO4MBn9e4K{Hc$2?>QzXWK7F Dh2fbQ?Wopsi=F;P!\&XЇoX9w->佖{rUasGQ,2AplsYzdQ})[ \?8}A^Ď]᯲(e:G,e)>m+]Q"sHCoKEcN]0٤TD=]`mYZonMۓ.h%?%Zsm4 }zAkZB%]}W"Q@;{lK٤N%8G\7Λ1xJga4\>!Q"ey8$NVyx)tQ<*8U~=|=8k$ _3RR_D1i$Ӝ0kjJnbeȽt,j6Qޗ5u;r)Oy묩\Zb%M8uĩԙ[gGXR^o>WҰ ҂`V)-yoq'ck*FVPcl)䑦! [j[sթs}ݼ 7RiJGbjAqClPβ(P#HÂEA[@ y ¤^nonǞK`Ɂ#,nl(~k/+PFV(̋g|G^{F?fxPEVc Q[פk_w/Uh-8fDwA۸uXd;6]W5\k =ps (sեp""e9  =:j/1`|jfj:"g>:QCp,U *؛8M bsCG򻦚>T<tg62<V#pxkw& ^ sc֛Nv6.ECx0O0H~SRofR!hcE12./ճe>kԓZ us`oaP!0qk+ɍB7^ٰ,<'dˆ9 &=5*)J\#]a*ӁQi ~3:b='T::'x" 22g~~nU3 ďoo Ah%`)}Huh:dfcF YquY}&mxY8.AL-AU*Ԡ!0 ȡ*mcJx,bnd@QpZ.2Ghi;B*WU Q{Ng>yA|,pf&>s)ò*#^34h$'r$QS*>341M#3xtTv$T"s0)h0h-M)Hm-0.Ίz_@"#'c^~huAWl%fQ<jXiۓ(_7N*q`Kp""et-k"FU #Ba>${59^߉ޝ-=c@ >J?VŋH0W#x $2\e|>eUuб? nMZ ;: UNq P(0^m}yHp t^~- J.jWƢ WܹS0h(9ƬΞUApƳrĝN sQbzisj'ˊ$犛~b3ضCu R9{|PD@:z|'^]%Os $ пczC'BpDBƺ4X{EƜxչB4j\b0)R#(k0VXe'z7?F>zoU fRHO 3 ZMS/1\yRXٸ *yQdMWP \ (Tb\RJ 6j"j&R(/>b `| 9[RϨ6J Ӂz( b_u؄9` k[ѿR喞LA"V1Ѝ1(lGEiiSfxCz+k7]ټK}#pKtp|d C9lĨ`JQW(rr<ԜVpv.F(#)Un:U4JT')iay}Nds %>Zw?>^CtX^in>Z ̃wo6Pv2NZ{[YziT4[#;Bm&!Les+Db-_w6*YSבMJ^)Zg@/oj(|yb% k1*+~@vsrX|H!$2qL> WV`se1s%-}z탲ASP'0;k7.[i>f*e4b @yvXGKb1nh'N,wAi7JsVa[ vUZ1o7,Ϡ]f~ 7cE׎8U>G'ܪ 7fp؉awJD{씏|=nYGk:Ͳ iGo!\d^x#6b?8}[R"N "xIʸ?KXJ "rv1yy$IWR?]XLlJ;2Ab<#yEؙl]&`Wo0n]g a[ͷa#jE pcwQ%=.aVG` 9`6/1 }_KKe-.iJ?jx rD=ldɢ4_-bW 1ЏgW*{C a3iCfl azV,J;ףfvYa,EZ"*iDLᡷǓeVY3E!苸p6Y%*OZZan-6n!g4sԠ *r=_Ch*xИ(Wl8Y#D ܉+ ˺RˆMڵz\KXHOWhXg$6xd'R+ԅg/8[pM*>wo f>@(Z"zڷМY=qcоn=!}> - qR±yQ_vx~pvwT( tgw-B_٣,ZY/s"RF>xz.t3۱1Egeux'eu?l{ŘzыJ9OD\P1cow(EWOm)vUr`#cF-]FYCN}.J)XnղKe.~۠ ҌIvDPk3q҄3եB L\)mOs4fiAuѠ,fGh<9F%ˮK> qB(Fؖd͞FKe(/0Ck ^4#-\CWFB7q\ M6)lBTK&R$X#[ SvE0N&JpER{XjHȖGxQ9rU7(g>YξF'zEwpA!`Fy\{ަ})js6q+=e;Y& ѓChB^'߹jf7GV1U~uk8|7B.sn1M>}vgpE< nkM`FjL8>FKjG>65 0 ZltzQѬkAJX'gc h1ArO@v1x7R9,WIK- îNJ/~kA%VP8?@c*/sϦ2+|>S)$5 Q|f0' [NZ0<|kۨˈnKp'!lwѻfklWmey)Y*O3ٛnj% R9{Ͱ)hkZG)*mk;.x(iJ |4&n. ;0=9t ;/H eкjDf ٔx#/v :9ԭzd1.@hbd(Jz pW9TOI Um[j8]gY׾*8Pw,z0~Y 5hR+ב0Tg0Jd t6#3|&~مNϭ;<3O ~,P4b˲y9a{_ܚ°Ln6W&!۔JĴZ WE N!Yd*Q#2*&Q # R ͞׹F)fʘs51rBaF:#ηiH ԟV˅X &Qxbт'鶶~ҴD[4֗`M6̡{LZ{W@YoxU%AF@,km/WK-Ћ<^,5\!wGRK"7yG\L,LbUgSHW4~xe[0D_ׅ@5.\YTF`A2<ɕ9J[yLԶuEm L}V5pi1.iL0IvdC/wQK"^Eipf $c̑:3R^ŨƜ$D0nj7& FK:Vjla,*)PM+JiS]YoF雄JC>ik"oK>k:k\:vy/yg#3zE)o9,?`V,FP 'N9H颗Z r=iTQx!aIOHLݖ[j{/JbMhPq=WCzZ ?~M~ob2yn~&TNM_uͳf"ED%6A :Mh;Qm&e7 w }*v3 <5x;UQou6%^ Դb9Ȳ aQ:nJU4-{z9{$#0vG(NYƼؗ]@pkqӮ900g%KsL.{88I9C)d0Լ TGy!Mf= DNouD%yzo 4{HP,_%; :7?ƈJM`FH}w㻃syDjN7{u n|eC>vvT=CpVr/n:pLa{jI}D 84)<~H[oW' ˯ |LYپNU 2:b+u)s y89Mhf5I'>ixq2z5'a`/n.5E;"X2-yn)6{vcnЃ#UVF2DBɟ7*SS PrկK4Zvw?\Jtb 7 p,&??cZKv+ ŋU=g LVO sTƾdn_0|B^ſ1:3<9o)!=U ^$467>oQ;Q.(C[8RHQaJ0[>6n:M6>d96qm!FY$sx.~n@جuP[ ^tQ{PR%L:r;tC@ۮ'L*ұ1pĎ=CMrc ϹYRr%Sxj ܖ:<} r>1^.[3C]Tzl"oC'":!Jg89@5' Q8v(: |xF kAW8u+e:]Ed,Er$u&(3ܵ~}g݄0^z=,&  !1UAD` j1X])tb-$W'$ ZI@ 7W,b_SfBHUL/Jت/ FER4\>y^itvIV=4IDѹv,9@Ӓbd@2߅F-¤N)+5PF8Mވ[`s*nָNo ra0|g} p+ )_+3bӜn]TSN9瓔kΎqcFI3<0Z79oJMo~ض; j") pj;yLJbd/蝬{a  >Q?Xoɔ9Ю H?bq=n95Ȍ=םP]cuNJxmBqP=;׻'2=c=}˨i )A^V# 9eϭXXؕZCiG~ CJ1E ^qS9@u,x'y8NzBHWT4jyb UI/N@Bh:(j!TUЏ@f0{4BS54a`ЇvgBJGw"iUPE׳U-bZu_iCYIfJ#yY=/?}fYŒaZG~/.M̟prr\DXcV~ ;UPc`p^p^es1Ld,\uv4/ i~ X z$Ӿ[q+C ZzxX 4%]39}_sYR@EAbJ+Zq dlS}|+p,h.7ڛ%se0Bz]ktLbW/OPBv춄L׎`*lW;`rr82YMr9X( ƅ+CdBk.e(QKm (R~cuyQgWo||gǾa\t7eDMWrn+gVHĝt!s_oU۶՝Xm?M,,Yhb!=рq\v`D%tyh9qγ K|, 'PUk)Z0}^(A;mSJK=2MQ? + E|lr!?U8udGGYg<٣ &kl+>ۦcOk*f#2Ǭ8"v vm7 6ax8wDLe ԓ> X;6{ϊbSq)o)S;*V[f}/1܏mR5zv0E z߁ŚʫErmb-XI*FM2ԃXo;$ f}3dWFej"-3*rq_*J| !M " ">nḴ\y MC`A͈"_m/j.$Vd m7n3@!j/R}}\k f@5 D#oFS.Sc n-PcKKfEz6d1#_|)w!ŀz\"wm*?MrE~eG77s3csy5p,2km角 d,*.O{t}rW>irei$ uot41zo;M Éqr:&p>&<`,O4_21+ UOQ0ef@qI܃;+=\0j #1vusKϽ >O*t-?3`^bH)O׶Z;FXBZP+()J> D<f(Ga!jP@}vsWXBQ)~%uY,M3b-%ΈvnknWcTf&*捵ٻV&~7JaA+O~%¨Pf\:N="}v8ݞmثf1L `!J$y򚪆+2 ǑǷWXZ![uLGcOqKI:)\?F1{ZoM(?Lnla!@Eeu}fBQ˳LU"XCT0.{r& `+$ IۺGLJcd^yMNZ:@݌)lbm s;u× )"VB@{o O~v \p\>!._ZK5[)ާ$?=?"2RtMpH܋-[[j+Y-}r) ~-F3DGM}lOb…nîzUdn҅M3 Q^dq~/K5/&Kk .? uCLo1=g/;̈́8$v'"NХYˣNX=OII@^{=Nx1\Hwq1ajonsRrmD̍s^lF)k2^ts]%NVmTǽ.A[;Tc,lWsF&I-ωŸ)]j`o)qɶp+D@7%'x3Wmo [ Zs-E9U殍/ r=*Ĕ&ẁɻhmR_;If ˻E|&dz*0fLR][~y~w]32"~gFs?uAyIh1AaR [nǠصbezrN,"8ֵ+Z~NNyÙu/"H kZYzCFiyw2zw p_FVf!=b3Ƹ㞅$pSPˎc8weueYݟ+1yh;؝ջِ\H}J|yRK*" z(] {6uqU`6reS!@S%rU(f\_KV2J.> (K=,؋w 傩)cZ{SHjD~_aXm"Ϩ\ I4"2y_zVDa5Sۺ 1}֛°lMW]Y-}aHJP(k:)8O%`x*XA]ݘ 7 m+MI[e۴>y9a8.2>8xԦtQx3)<<.B dq-_]QmsN](L*% Qr"7NZ6l0@M&*̄g {c5 AôvfWXrnWᣡցU[P -_4yq%VLDZr+Ð>oy.c|BL~`XkK1UQptc$#DGDn?\j(E:k4v5ߘi3!|դwxiglP{=WƥF>eh+U䡛|^`'Bv,>o7Fu9N {PD]eo@)lk&A{8E^† O]oy%. q*^x5Nѐ`]!+igvSK\Tn&܁wD,5ͳ@/H@XddfYe z$Sv|=FW4Um(U^\n7UGvOͷ XCaR>]~|"6#?/˥>`g\D:|:7S}#I @~c1g/vY䋕h7S S[t"L*~K8 j%n%J{ P^l $mh!cbZqmHZCmtB@=L3PnáP.z泇6"h콨!zvXP& "PD3S =Mp*YcWm{`6*~2z]۟)65S:),? C!X`_R9fGމu+F@1ߘqmD}?mJQ9&̓v`QA:X+'o1_A- u Dž/; 8&r3M%enҋZ 8Nk<):-7߰@|Z |vWΜ] NLY;>ڨ_e&c`rPYF0ƼJ:C,a-@S+n*_x)G+eWwL| =֌*h[Kc;ybI9ŵMӥU]soo je^@F NI<.>FiSP}0F? ը#k2̞;tJG3q!+uĸ({6 %G!M_,eH`yrHXrh7u6$H:0ݢZJWio$|@aN@s#ҹ)3Mz]yD*FExǀ1c?B8|-!a{s69H_Mfzi±/{ဢNQ7NicJ9pc,|MQǹoo>4i⳧Hy,tov!2r)uvXp|\(#VO@(!N46#PigCO}LakQ?4žݱ{̜ X+z=PXNPɑrC-.Z,J,S ^0pI] n"\S4h*h:oѳR4#.;5"Sq?@Jl_}$cV{a~=B9DX`Mi{YX9~L[[L)溪 AJxyyئ{QamlR>L2LжcxgQ.0q?2,Z(pYFUG›BӔįUԧ"Z +\{.:e.lݛ5~SDzEA(кd_EmmĒv̱z^{7bsr9w*9p4.}GgM|+! ESWHMa?I&?k%n+5n{49[׸v43t ("G7t',w+Z^ıyJ\(E>T.Kx|v2s{wx olR(pGud?`x"uPA/$a\.f!>EĮ\C&91v46މeʲGLV+ ]t7 ;lNMͿ*crPb!e:G5ID戽0qvf8`7Z\اh@BAɫLja|'d'1aupV?kAg<[pC}[Oau$P^5埃0{cFf X.VV} Quv@ ;"`Yxs!V#+}^ml(蹿Bi#UD`i:{nŵZ@ʎ|8'E:V|{cr8Jti=M|"uCsVQb(dT~6e1l U%yf,^dbVh;B WdΟ _Zz?iR7x0MNhR/VS0LD?ubKesJ툛+ Fn$k3etʚ>$6(,av.G\y 1rYɧv٩ؗؼz.|TewmYs&H6p Œ Vb.3e[Il=xa8-PO<2O6,ˑ&2:EMIGn4+IxW M y߼*Qit33hI5i>^{* zAH?Qqz鹘v̻d -*׷c6v|-#Q?/5cQ>.4-N\G#>&+}2s*1 ֊-5cSOF}H~8NIL@鳳 z-4V-د} m㉱2A? YĈud>G%H26"}>o/3qj^xے*>pPM_5TwKuA>zL0&[ *F (ݳ(MN !6k-Ck%$R$b0{>Xq7iLƌYZ/`G w'RPCF"o{@on,k ތg<=; w,|n֑=X\]鮻X{/]JjՉh]/kKꐙՊ٤r 3<,W,Bg0rʳb\evU4V'fOnR禃9tRu6'dSlKqtFF@݊kSMJ.qv( P%߫ Q+8NuFe[htrb78fU"wznc̹,(#n!7Uˁ9gx\Z]T xv'x KL7A(GJ6̽U];S`C{uz$d_hFYI+4VG :;s~'D /UvYfI/ | yy9hx$J}ׇ@eEW#n2554J xSAPozdδH'ҜӼݾ#!Y3H7ץeޮnl'bZ)F`Ny5Dc |zv@/FQ[r8`Ż^Z q0OHCd U7tݶmKYsg ŷm5oV'ǙsqzX[Losg+NyJ_Y͇>@ualIqr2FWߥA31x"ǐ Y贸 ?K%pN>0̗:4G _:0Xc{&ҧ]xeQS{:Ym t2iG#oP˚8¤ NalNsc\Un)UTG[B-~{EklQ)7a!mHwAѦb5εנugD- P`tf:ؒцjYÌ)A*IY*A*I!kmOQG Aau-koya-$ffp̣sBS (iVm1LM*+>*J1RU_8c`s4Ue>zuZ#(TӠrzqy8iPVZCm֗*8ӕlx',ĥfnJwE*!ϴVJ#C= ,$%-pq Kr=.Lu[2 # C[׵}dT5Ӓ*ST6Ӻk}*cwXa}[7u[^(QQnV%ʣӷs3c5׃LWIb~&0kNtxq& )lyHu?"inh旂߷U9=1}3$xڬڭ[/qJ;e'-U,ԅt5HgSԪ=fG鳢YN(۰6Unٞuti~A;{]*T+2Yô[uoBc*eAO6H{9DM 8Xr7֓m*)wQ=!f ZrKPױQvy +Jx9!$Rfz R fަ"0p#LqxP,n55SdsYrotX׽s)emB-D+@9Rq}S2Pq¶GPZ+uv.U.e>4nT{5mmFg`z oԨJOz][ 'مy2P<&aGU9bʆvu0x06pjЗ&Fa0] hn<%iA` ިqB*2A*W(r[0G^~/5zN4)?%Űc"Uy=7X.\gD;Ѣ_w:T=aB*JpCxz ]`c[)m=E]"V[MyyhC5rn$ɍ"TUaiR+<5l{O\ ʤ'uA(8 y~`:mpty;\1WSQ a^JAM/@ N%/ZFuABIK(gY1Ou \>*Sx<z/{,ߊp`L4_Dduw^N@0R~U RԻοzDcҰ][MTwEPLЋKpިFJn54xA'"`^ d$Y̛bV*)M@jc5åQw&\VBf}|ɑ;DN<0>hd?5^iPjNU-TaEmFeǍ~X Z׮As;J_, Py@v޴~^jj|GqN9{GCeE H2blwQՒߌwYwZuF3ܘ]3 {3I5,=]?6 LCJZoSZȷr&Rf+;Lֆ6_ HGG{dukpRE_neBCC}(<Fg*hљ\ $tǓ\cr[8Acʜ|'FO ,:Mv*!Jq ʰ;yVbz lKC.2Qe}fATBACFsEPNDxXmycWr~]-T$BYMtOF͛rZ$s0]X H}:Sr e.2EWz\}ws6ֳx4[)CS?`;=dFr`_h=APځrX^m`ET zV>9fJOKx^!cޫ$<%J \g ,A+{vnëLΉ_<,iJ)Y ZEy 6[& "nh{1Ef&Ɯ hWa˱,.\KulB̹"aDs}}y#$4]Ru2>hKͯf1{]Ѵ@L |} EI[2YEe>-13t4'Twr69ʭ?B{]8 ?+Y%ӲcH>.B1>)~IBpl$_U]}!.f*~;XH<gL|*>Lbs() Ñ~5TAY4}TOYR$ݪ QsZ&5ߏ1C^nT9޲va6 >CkIDwlj#2{!~{rͰ`#ZH[C^1.-z\ c}V]F˱Q"#ݘM\ѠMQIQV/Mpk)6Q.ElpcrGdBA+2BT5QhL9K+ I7hvh(w`gdFv͵PvĜ"|ƞWbu{w5Xy\^3% UtZ07ȵb{U\tC[v+A{}Rcu]|>璤>X_'8hFgw%u*6^2>3ļpUF&2c Q _hx#O7FiQ3\Iu2Pw)R_E-)lL|g G-C  Fu7|K a ĭqS(97\4=̪|r6mə7T"W!6~J SAY*f 4Qf~UYeF[m}j"L}~n^߱0)ݻd7%X()yGIMTbY2Q!_+`PU[ReXj6n>j/'7!Ol$@R7'!U2DJS]}{;+R|LNO9 I 4ѩ/ZILXUw Ɵ;%џ$@w:b(M (L*ؓ~?&SUx9Y B0BuR $2A&cbdmԊ1ϨVI U4P| W׹ֆB.5T5pnqΫ!t;WY>rrxwŧ?IG_^\ 5,  hsUPAq֑eTPZF4r:^1$ V@ At_N*agb=?]<oUuBi#)lOY7HZCZ[my k! MQ&5[,XHxU+RyJmew&  ʡCkܒWp DkaW~Gۖ> r9q&˞j~ ޤ86cJJR܇hR繯O3*M]?FTx(lka2 . KtUԺcZr!UrR.Mh $dzD^edt͇[qBXt(ha#W(%ЫlJN 1%"֊`$hp\o: I148y1t~a`{,|c&8#"b28ƑT~6-m[9IfecۘXhXn}P$冼8/߈Z- 3(7>NmOPYCͻ9Tbڛp2e:#T4(!Q[lhPwS\?ʹ\\YZa-2SEA{.b 6{h-Rʩˣ^-~*mh _F*lצ<&I(;&U(k ׄC#>kfJ1(Z꬯u՚KpkNBy>}! ^j7" B?>4"чyt`BjcVCAڹh3thN3%y">@sqGtAWZיYsR6 Lʠh%drr8qrž9ʦ8PB[s7㕛D9QZEK/ )i1`9͆J^~G&|BZvNGd2(,y9&$\Z MH]尮ŝ{Oq~^uEKU1( g`׈"#7j[wX=Apys`@$* [v=!N1;v;㯛ile!M\㲴aʹ+`/3E?/j:灻s1_Ú<1k'9$:$g 7V,FqecTpUPI +~`@)旫)>@[ _5tr'JRA&?GSNS#BG.{}_A.H8@;%E!AZ.1W-07L8N`k &|J-((-eB~tL@V)6MKj%e҆l) dm7&gzFtr cFu vg'N~C.:%/ Py$ 75,ƅ&LS(z&(IS,fh% m1̢4F ݑ򃑯TWbx`TzSH4T.jvUbD(rfvZ2[qFjdOQ8>J$eK "?q7%]O3]ѓ$_E 1zFJOpU\*wCJ1*9gpj4G\~Noܔ*SD`^nGpVVܜ/9^!?%#+*Uk#@.mOo [^3ΥO*zx:x#sZ36¹2z'ת1`-AYJq7w5fJ.Ok$ȸ܆W$at ۵$ߢXx"=; d3ڌuAº>+DKE[>7L/dԛeV)f+MGGZ"9;<*)q^YTR<18\RlY>;Z+gqHfڀq.qP+W}*0ŭU32j]2d=[0򷌼pG?`ذIl%ْip0]c4%eH Y.5,\^rʔRL)潫Fo观ʐ.f@ ~>8P[Z6Qq{dFKge3%IB+OYTvkڹwYU@=~ozfT*HqQFg9dOdPZZ~2aM:[sKqo ӇAN!,Kq 1"z7W7r+ k41l/ǂ Ӣ/‡ PUWʣH tW6` +krC鄊`@;:hHâLw.Hy&I{&>˿(e.pgq80Cfm+0tWKEo#N7zf˙vz[7qzNn8 M:ҵ Tцr1mh 飼9}-wLklU?#wzײpoy%cP5h-禢^}DM0\f7-.ڹJmz8'[wLj %!6=Gf`~|ȚȨp0dy.)צ>ݗv)oȋix+?ֿ8RL@eg<]2FX_c[$o<~PsevP-$@_ !Y%L@Cµ L~q 3ߙ%>7zUC&An|O7T5@[=ݢiA#\U45`r$SG4WZJMSlr"/Nkാspz G LehLs5XG5eB]oGRYdk) 7X9Oۨ`.pĊ1ll@w,EpmYE$pTdUr,+cp55,N|eЦw(GK#z7qޒ αs`Ѣsx6)Ǐf?ћyxGKnܬG:ꇾbNZIm(*Bfi(tjG]8R5D c1'G G}I< 2$' ڝ6 5^x4ͻnaYȘA);_ѥ8GYȒ{vo*.0uV!8 /F7u<:̨-: wcD]a=o#Ks^߿Җ׶B<>e >>&lf-_$O-w~ BKH R0P=+B,*6+vrZ-x'`)]YϨϒ{u3G[5FF&~z]@C 7J=e/wh#f ]@0.H ذ-m98GDUQmҤ1sꙵ~*$ӤO҅ ˭DvgE rjVH4Eôҗ( Y̧c''i̓ ,?`L=.aoOȚ<؝J]ǒ:;'m.|{8l0ZVr,ej;R2@f;ޘ+ _WQC4R-?Vu[sT|aJ ;ۨ*谦i>Y5W|zlx\_ HKe&pp!y8.[ *&dzL#'R 実y9Ky3u_F^ _ї (,, OqcCD>*NrSH X2ZdcXyCWn@ nzFC NqY `q?S~ o@Tge< \?KՒ^PtPgK/ZfOyYy +7VRo&Q\eb<#{y-P(P몠<-v$I!)p9u@.ZL25)]'o^'{5mo,:9V08\dAPe~+doz%Z-;&ysWмY]Lu2t;Pp!ٞ>WWLj.W={yij9a?Z"v37ɫ]eqĴSuw HL"PD#MWT&QHȣZ*]lyF`mU-؂?3! _MM;5ǿ&0q/RۋC< F-u#<=,o2f8u٤hEn)8hD.+< ;H]WDmi|!B91[$]2+ĝ1zK7]t@l$եԘp,k HdZ4MJP ޫey0>LL 6 $sQs E!NOKA1*gHcs3Șv(@F DM۔PTͬKࡦA,9h\JT@tF0ώ|ҡb˹xe"؀Ven%MN4%\KiHj9ZÍVc]y (4 ֧XhylOmW'.X&mЪPsq()rXII7L]᫜#ßor0yfmhzeIO}%H2PcӭAxMLUqm" Sq mE!~Qy`5 (T?#gNgݨK6FgD,wmX$% 3ͥ~EH7,ayև͒ cۥY]co\fK[%A?()(3 zṳfKhqȫ"8VoëC=<Ӂ n$Y64~ (8XMgΥ6QGݐ+[/닚?XN^dSP%$-se# W̌a}ʬ B%*bBo% ,j ǖԵ"kqx b~KB:W}gTzg C}<)758,؊atKlPN=)|}%Apm5dUN]{6 FShettnu(LX 0e.e.N]>͇q \ r98L}{)ifOJfޘV"tES-\"<ģ9I% _RpT=@xT6,a*ur b[5+A2TJێ6̥ՅUkb8ҵ}L.ٓ6Hd7]B a]~ۡ)p)hq> !IMo)7Ue ~rUD |n8 e\k :wo0 J<;TVUB=HS C!*(Pa !jdmCPnP@;ٿZh]qOxnC3U*2T>V;6~V~ v#Կ)EovgHVF<0ho%u iKsfB˯%xF?-i+%*’M~ecx8WQXV,Zܭ|4M`]m3C'BJԉ|60)8Oh@fWnNj;]vkJ R*5ĺ1[`TkO⧜!٫PzE-~*.O0DdEB8+9?Lxk$S-'p$>a@>>e(KLS j (Im_UB lDK ΀q?IGOI؊L/t@FT؏C /"Աi?9BX L[3@L3E$\=T/-^>tW^Lf*+H<[~Vd$9R MX6FC0bWi#L}YT5I2O AýTM4Zɘ7ER2TQyH(T`Ly0ݶt>%wm-h:5UNE\Z532ršlj~hEϣAb7R=RrY,>ëPxA4桥C&Mթ?g, e2I|Vؕܙ:.( ?̈́g0ܧ%g`G >NⴵO8"fS7H*q?S/?xq-E Qs+H8sü9 P]mgڕ\Flr*Hգ ՘ 8ė5 -eb_U }3R:6Tz&<9YiKU20ώ)fҍ)^dmP Ɲ6+Uߴ6$]!" +x:Nbjm5s k-{bciuZ,̙4`&OhH뗌=.*H?MyyagZj)((B%8\ *ĚǿD4:&~wv#hT:J8}ܭ; Mzx!|$bgUtـ'_%KB9ϟoѹ-/kjx9rhᷮ/Zy"e=0ӿ(OD6x7/.ED#Fr0 S …`)> q΄{02E- hءbE_[%74@4$冏zpkCA/4JӈpX'jیY)0N*jq" 3ʡ1V|n!͐Җ+Z.Ѵo*ǡ<:A׳>1 IJ]e@Vȫ\Toh(lH+Z^z}_$..#@tnRNYCT##P'/Onwو.HeoerGrA<V!D^]6ޭA]&P.HFƢtEPBdWT<>{:Kl ۚgH>q Sl(L%#K{Pfx O])荓5:fF" PKcePsvFg,')%yT&d&g,v?Ehv\R#`0w؜!.W* L26X' IƮK.K2Qjxh?olޠǵ~G)3-\߆<;5M}J_q40.Nbm^+JEsWLѽ`R㣛2Ͳ@IP ^Q:SGx[H-:ίmyjWkAM*b9@p ki l)hw5 F!^~L-LJ ~_{5PU4LW8suZJ/bO7bI Dɉl$Psy6K?#dl.:5-b~Y4ohh"OEh񐪂ʯqޮ%CXcZzyjj2b*Q[B~}( l:=b VkEr';(\lZa,rh{)Sb:ENf7"xqobsX&U G9Vd ,ZgxGpY-:\þK;Yfs_NpTގQ-tl)f O#ju\^1r-Ւ¸jڜuf[ϊ旭A8"'қ IJZ:ƟS1΍K^[_a:Dc/NXp6RLSls xM[[62#7'h9%rݸofQ"HNd^EY!i+ޙx۝ j֓8>sT.  J$E>#;_2{B& S'nߪ%m`S'i o,&9_}zHOm$T)l+ʌ}m64EAƽamՌ@dȬ]s.3lREʄiÊ~ō[V'A!^+c#H /NJ)ɟеʫ.49;6v ,vf]D sǴҚ]DnVZ}z?YĖ6mPNTU s§n&';݌<ٴrNn~7,z|;6[kdyR&4lɐZWK-g.(WMql]^A((_ W[DcooeγkKKd: 3 ? 2 JJRy8sי0tAwibPj84Fe_C=!^ '7m J˫ N_I\۾.fI#JhON@;-)}og1F>~|M\Yڜ7|!GCaj۬0\lvHz@ڿj4|zrW/}{F P68+nsXrBC:?rD˵&G%ju4o#ӒY{A# Xa%Acf 7pd=48Yv ԫ0W^H R ѧ$C1.S .E4"_ <ᡑKd @nBL&5+dT܃Q$~>Mv]㢎]z}5B3@ϼX~4!-0Gj_Q0!?oqGRXڻY2tpֽ H԰~haͦJwDnN翍V,1=+ҋ%`@pvj*HM| .؞ݩbE,taOU$C]XW+]KR^VZXs"jW-جR-YۨBLR1B |ExDXH7Zm 1svlMjO*;A8`& }|({zi <(Q)yL@B&*rLFOIJ!Tz00 >Trt(R[?T3~Pa@Ʌ?QOms0(uds Q׷<>}^zs_M, a9OĜmCN_װУ)\`aHV\,}]8fvxID(~uaλl/[HQLϳpWRF<tR6\e/Hh7F!E FatkϹEM[Nc^teё{) hٿ{G4UfR"x L8Q^\*!wK* j,$xh=s@gs6Pfc10uά93;U/JK_Zj\䎴:IvŪtTSr1| cpD@ |!jf|QMk$t⫥Iq1sfmORҖ8'`U#Usm58Z a,* l>g_>f2z*O8ggڟνyLD9٤;b3A' Т5;p(L W$:"\[G㏓~b s9>v#SUr:.<`'0/DJB(Dp"B<X&= ȝ Lbi2ȂnL]&+(:8{nx+ŵ/+}Tq=j$JN5`RzviYֈ@pib4@lD%u.s zj#ϻ@k^Z:GUƈ%)KJNv<_a> d }sgt'A 2A1W,RD:4r\#g|Ѯ'BRZ z}XBsCbns;X4(}w2[ Y5i$z{7fT+sU.P/IqfUuVCOv${ݨEp1AvhLex%# Hx fsƱ$/2=A_{rίpJs҃|}f?{lM=)ϏpPEn*Y\v& mQ:g)VOX:^S%Ti.iN pP^pRYx}9adVvd2T@iRr|ʚ;$, _<-*T(1ѼӟW1[&m|xиQB+)@@μ>>lܘ0[CN5|`rׯk[4 Q,T37$$ntsz9Bm hy9zGBAT "q>jYPR0H w.\hV`#c$ʆg#Ir#w'm.@Dws2 M(tRJ[UOuJlvCom_#؏1B3}s!8Nu`-;=S-t{^;}PXg5p=D8*ÙinHOh`eTH-81]ݫi}+ƥ 4[q2w9m HfxQGIkxn iid(T`5_ dKKdORYJw="4?|j5?ZVioKݟ|m)|H4/҅s7 IWU.-< JWTkĐTY2JR}h{ik^A"'TAy-K'h ogrrQlEԜj&_D$RǖzቂQ J~x*q`6#I`@ɩIgtZ9{\^jAjIIGP -$ hxل>T0ipܴ x'7zyy-Ft~b'R Կv?E%$ۣqkꛏOqe\k!KB( rFΞƾrB5/RM8*&wV4&pe>ren6}ZU~."`bWrGZeѹ|jABů\j=jg>YpmCq_j(AkiXٝ<[߁I!<ĉn:eumu!rX;{ϛ6mC-el֭[U`@jZKəS8A|9]Z1vgHO!G b,swYuQ;5*ōȑôWX+c/\gg{ƙ _{g?HQP罻%j2$3ø!0{jܐrGxf}4}?yVhJqgݔ0M^U713M UJ@s;4A<ʸLo'?MPXn ?+~7eDpaܦpuL"ۍ9>qLy!x:>eB‘uGI=ns@6(>œzyD|FO}֓fñ+@v31nEvUKCq}ꇖdljx#{'"ʜ^3x[uzD 1yTXh?n+?.[9~XUT ZLD3ܗ:NEK[^[ <(YOW1j.Umxe҅RSQ <gU\qza*;3m\Hh 2 1Ȫy}]pR{ IE&o;vGqqo\RSxƙ=#]hÃmU:X& YZN/w[wE4M凷a_$=nC# <ؿ NW,#?GxG#"}OQ{CcKbVfƉ=EMď0(O#1H5oYTfDÒ'zkCU(G6Ww;N}^$?7[%.6؅&x'8Q/&k$ksrE{ T9{2ЬO9~T.t2:f)t0Ư㭱|WxkB]J%^}̝Ί&[-0YH+/_[8t\?Zʵ0|\\lZzQ<( i?/ ^߿ž&y4`syyn32N: 0~n! nr4~CnEʩF ypr]`A'!ۘw >2)eZjmȳ dN΀LثjշyFof%} PJ}MUuPNtgF, |i?jJ9> yrHiyks@6ĖiR%enJуjP!dQ4`uo^$/f35Fs>npOJTud@ėXI"ǧXUcb)r5l#tDש,GPfm '>{PFN<t-Q 5Ap7l. ˵Tqφ Psڟx/"LVx[| Qt_,Yg # }}褆|Av>U]8isRzMiʈ-TG"z8.IݔoԃEwocboo|hܷ{L8/So<ْx!uY3'9¬ Q)Ÿ!bt:{ůײ5%uMCkQ/Th7n/rD@.DO3F\g7fПZk*U^(t8*[Ӵ~F{G~ adhVHף-vX: T܋$`WMnC7Ki/riAҵYe%T)"#LLMk3΂u] s5)\+OaO׷7>M<|k*#R˗6t43S (vzQlC&XӰm4' Rb[)w֠)Lrȑ_?jRܖ}&n+.F#M"Fzm]f`_m3бIa-~\R nf2ot6o#2aQJdI׸ᒻ5 x !ƭ*!!Yaxw`*vFᾌZȿ'_ A5>kq+0NR!Yכ{' {`Ki5s_MY:놡nǭBޠax. G,{3wtl.>#{2.DBabK$"s\ԂPzSCc jSJJdlÊcl.q鵨uA|SwVV~YE;(J{@Q%kzT#aD#AIe($`y%xs;ig_;`P?Gǻp?@ ϿwX'AhǏXϨO2ُDcp\{FuyYWty1Fۉؖ4h q\ɟ +UO\hzvqVu|GQ={!P S&yqjw x.P@.7SiN:6?tc:<8I`(%Qe;sѡ9`txDg(-xr,Z!QG\u_MhDc_e=bzLmآKYx$>O;c@NOӝN-)d,@+^iv 4gu'?NBʹӏłh[ E;h}pI=Ď]c/f^)k [ȹuT˾_M<[hpPL=nJ*b2\S*`{zȃrT1 #!{}hF1y#tГaU?vg2]-UhA84tddHjɈ&y֢65N1h6r+H˿drTNokƤm9ZtVy-3m&6iwDOԾN% #hMa0HiO t} <ߔXDY8?&]ϮU ~B/FW!džc3ے rC⡾Qd`'SF g?lکaf#6WB?Bka`0w_x(Kn`]ěް5Q0Dx4n@̮ha{W롘5Gh{Op!yX 6}jw@5pI\XaJX*[Vl#HCDM[6{.AsHr].O}+O)whtRG  +Ӡz!ěWXnBشCZQ fjd.+ÈrDi.U\N^k?CV\j-B6lzjI)_;HDtzrSx]-ܓ7JS"e~6P),l1l:litW;,dlp+ľigWFVXǖܶ0^&:HDR2Ԛ}_NUc4\/ ?mW98,Gp6?yptR]ŹX++E}ZB0&lſq$9WoB`J`rx }FˤA]H{Umszj)Lu:t YI3# t26N V+}.; ~F:_ 9WԚB5. o#Y)*>#SA(J(AXH' :+q0&occ{mQ*̀q 34g?k 5^y%dpTxc'(Yd $_CSٕ|)wmk"ry܇h.JW]Q,+fL繙ͻDVOF )m:&|WT2MmzQ럘I"}f 5Z}MYbmDNE7=Շx@8yW}1UB"0_ `r%f3 E!L\WS**Yucy-8t.)' jI,Ìʄz7rڮCNp{~ 񦅳b ^aLx̎gX^=X7s" kّF[,[){tJY 4{]S}%{?sM WrXEN]bu4L=Cּ K5=xgK7ao(q[/2hd3hΦnF:jg#1.O~Nk`/xTL3$s7Rզ%^LaXe$|=OBORHzʈLǒMAhr phS? tU,p]ޞPJp!ׯ YtE=0:= 8W@֐']z\,L<R`&2Nr,#Hs!:oqieߋ3H *A (c.Q՞:()k#&5$\cL|h3)VE%QVm]ȈS.L)ݧ&~Ah{ҘNLB~uܜn6 B&60{.!6R {p]'cT [=txt3N\zO;J^ TnȘR6Xˤa̲ݐ.EAsrZXv:}#/yao${| ] +-;R-BMa=L03zͽ?<[CI}ʈxS4RfU}5\yųc,wtbLuN=uL] [c{\^(iuY/Fˠ2  RP1Ou|w5yXiYmcB#i\KT׬oz b0yr±CPvxXLħ~'wL %:=z\P z/ ;~W]Spm=i6IeT1l(g$Ʀ)ѼMi;SPX BqV@NQ1y(-fxdܳF tݶfZ *yrwk 9D{QCE(,9D5-2;aœ]@xgEUH@. mQ^E SQea_6 |?e-A2qO`yb<,6/ZPRkg'ba[hzR¡q?Dzu'JV:K.b/[?N-w1*mX6aeeSqHrF6OJdQI6=`Αfd (|v{P޶zpTGRZn ~4yNʑ@/hqi 2T;qdxl MÇ,hHL[c6+h8 p8+ 6fSŔ&jQ*jRo0${pNx|Hq+8V-L' 85?U3Y)a%J.>0rVgWT|Kslv),P?(2$1o]aR8y%c)'dEW* a{xa.;&/:5q4ײҏ ߼RX ?P?K܋iO;| k5tߐdD2T@hIA<#\<ЩihXh.(o3)XhP"#Z`IIrIU w-@E|_,/=~f5 +=- z~`MMm¾Bp:6ZZ2+F,tFW)3F~xGđ{QC"mkQJtv=cFjs'#Sw 튫bĂC2k+H9yV}y \wGu^'wDA rʦQYF!n !2S,6$'/&CBVq]T}f䛓ҺBM^[2:? M40I2X?5'A( R>ҁSr}x{.7eǪ-/Z &8v mT5l[ nJ5+-SLp-EGGJ FԊslY%FWEJ{iE$t@}<:VBJcA~ETetFltkZb'{9>(nýgwѤc-=Ye'V $yDB㎑pQNFe|SBހ:h_< ,O/V}z{ G1~ux`gx[Ӛfyk*oƒws nB#kWol|`]{}M.0T }>xt .=T t:vRϟe;v3qlg[|p8lJ.?@}4.3E[I1ߦ#l<&t0 ]7l@v3TQ*݇c%ϢA)L(<>Α0uub6S!2޳p }e}|[8YHĹx -G+$?'%Ġ{wsx[z Q|Q+Q$v˚iR!G71j]>@] EedӃEgAJk`YL5X<)m;ΤBXhg;Q ^|D{]d.΋fEZ )}g@7'E`2M~!z_5\ͬpx^{mcv)(̐3pS}ᶴZ7.*|~[U8%Mm,XA~*qш|cW<[14G 3qXhx3tn5zK&[-TpzXnc Ԁb.І~p88 LE;3tk'Z=:,M.֚\m& vsK)zM%lasn஛5:J>ECq?a%D{v C{uNaDEIcU:cE~uRF`p=T"GY&5 zjFt iMCqu|H[{>,@[ r-: eKHpn4vՠ'`:Yi4.@4A|oՙ6mau7eX'܋GgXx<1q3r֗m= "M̝8DA >hi&iTMfph;mCZL4kVNvw,]΁z99u Ub흫~H~2 Kf_nA=vJ-9Dh{\q8(̢!\FI<^,a^l历͊<ֵ0ETQ設w;.hYc.erƖć/qRUֲQ4[5ؽV ^:V}e1u,sJkY QńϟC,G[L̪Bh?{kJ VMnkŎ2 }Aekj"6)weG' tG =X$SW<`G2^7qkq^w: vGuCV3{&'!VHeX sa"cX^_ f땘W7p4"21'Ql!_rIb732yK%q!0gS ̣X5E7'o^%o5"NWfѠG0 zC,2};w6HBɔs ڠk "}OMYi-9T⌜Eܷ 2ƛCkaAyzuaU Trr B Q:rtKfH`bp4}RQh48SѫIg2m eb@,T!$UgB%0H䉺$ $@G A0-b6yQE_t oK qM7_X6 SX=AwZwh!zb \j=j#Oj2uRZ P9nW'#綀f'KgHъ][vę4Ø$+MnCƭHjUX(U-9jk>لim?Uk3U(e$`ƣmqk!bWQ:)]Ϛ5߱]5+"g_s]N+Dkhňlsj h3<5d0- ?ͩ0aď;tqW'ܵ/<]B*]r3j Rퟶ2w~p|pyX*$`𜢳 9?F&͘ dXa^Ξe_t$&mPiAOLipRDgB%5Y->4QcYKHH9[]Ë nn)6B4d>ѫ RoJ~{ė56XJCfb\WleW,S4'o㳦\cmooƴ*lZ֍Ualw$a\:top 9)qm!48D(c+U ^1*B^) ȉĆNkE O\39օQ*[VU=ځӦ̹Jcrְ?Tyf1595?-ZlR fڄQREuLL5`emH\F5BVԣ>i<6 tTe$&B_;@Ӊw2\j:`  "Lv/vR"_K\45cu5ģɦ) T1)W "=S bOw&Uȩn>Wߞ|]j:~ %Q 8$Sf. _ )ƍ^`?scYm,5+|dl>4 lғ+:rR97<_m sIVCe]EkG̯.`5K f'HzT4sWUtLE\ -H_;"RU`* [,4TAݟMe.Gf%:)`#lbk X*3# 0 1ˢș}rlYl&Amʬ?q*}?$94_Dgj&=y$h7-q4%H?c?{vķͥACuP`ikpUrT)FQLl=,,3+ANń*28=sYo96#ҥoKQ]!&$e_R]-D JXֆ./]t*Pq^C\CCL/cNi Xg]bzM[&TNf,БLMS4q@&YqB@a΁'%f+c \{MX3jSgS\Qx¥l1`?TCi; V3qKfre b"NOwta_L:nrx0bur9džPkmֵr|gzeHj=;؍Ph?$0{rh.vT}7T{̙}P2xkk SmR{pW9WHnBI@=#"eQ\Q_y@?[nemHn}a߆d6P*Y#Fv$$'=n3DT-{JR%6f$`#΀Y#\>rvCkdN! {ǁy.Xe_ZjZp@پ5=w^op[8v{]U#&+;+*h/28߉k^$yc[Э*̓y diOtv#t? h1gEMžQ'EC/bJ n} /,fkOu [p(-@wJB^53vhǓX(kـ`b"~_ TLnYDq>`DhZ9R q?fٔcSKC:,#5Nc RSn9}ʡJe:*Rȼ`&@J~ΦZn &@R_8cv$,1L5Ccy8N8w8.mE`NϕLI?نa]0zgݙNdd`_iQT Lůifjz' D w1t;:]#R\cs ӦީF#fK*ڬוs]4|txʘ=ܟ" ;Rp!?$D\nRtxg~gqκ/[!&?_'0IZI9ZA՟cO HެՑ4ֳsu4HΜA Sۮg:u`0w~#ܓ ]gGqR; Cu^$˭jD5qdoH&,ET%5]˗`@okS,>^kz ө.GuX+W砰/Z As_Q 5-[Qm@>J.gqzl:1]@Mt mM>6T4o,m8Yj\'~~7șځ~7]xX;N#8'eOZ}֎ٛ1]yMC@*EtM%/.\@-u$>nX9eϧ$]`_E }#4T6ٝlϲ\m^"_" " l+&<|l_ ANno,dK2}3'SH~l`* q}+d|!׵+#B`)OU178|kgFvh/B7={6qsyrRS@̚1nrwmqhuuBRҽQn_ 7('EʦM@3H +lzX]!fIȾ)a2\C`j&Zw@%lKKԐR/|ͽa!f{k0J~.\zǚXP }3U5 fi折KbUޢ  %]Ol|ִ9rL-5B7b"q͠x-zF1(Ax;D?pЙ:[|+A:0XmoR(1W× p?΂DU*\MB;5`VbQ/+i.H _C2Όx^x󺟌YM>Wիx!|5s0 G=EsRس| pc!ʗFL*wݽ0= E2CK>0Z"v[BEVF୏ 6BMjRݶYߩL*/ ?gN#eH([4u'ӆǾtQDmOG~Ⱦj$U9J#8߶Sk/ v: )- ٥Ad_PM%`MO6IS 6szu6ڡDU:@gxRd ,^yx5 L,UA،!>ͪOe8<˳@pY{ϩ{edrּ눠,)V:thXq{M`HVވ씍&U5oQ3\ڄ!3*Gw4+ j)4V41B/Բd7d+ms)Jjє)>֥Uvqİ֐{!pv;N:^U,.DHQKפ7o!|fϵ |73X҇gqLPҖ0[+rCs=1fJƲR-#~W:G \F8c 8D~2VOQ3@ʚ.Ղ\ r@8DP|ror=驊N2eٿ F5W4b6i(Q}60hkq|};dx\rg)+CcT5@3%ɾ m17KCF0MH:6ksw[k^s U yy ̤>r K Rpf$bKHPsM W%;C3t'g9ߋ <YuP &%~cmH+t5|jK*1tZKAo!Fۖm\+J,Y@@So/PnFaC Ys6v_C-^~bӚ |NBQiTT 4"RHw]AźvԑIXaʑWF\bmAѝ-|{`9.vP3w_/0ZRF IQ]( Xr]S*zP.zM &2985:!@{e|9A'XIîOY᧨bAS}u >y'/e̿DiZöSғ,[@dF^GQIݮCgGJh K+^8m%A}7PKYWc&7(WVF͎4jǓL9# xw2 lqOZ^~v^of;%@zV|FG^,؅2Y˞@xM}$5w9źl4V߶J"W /MYrbBgn9DZp D؁\Bfږj?,tw:?3[ŋT0J;#jhіꍼz.")}4@b5;:ah@oQRZ>dJq| Stؿ]4J^ݵ_ m+=r= 3JG?zLLWUOI}mFw͈JoL1y^p[ ;oSP(5֓Rbjlդ NXD~PokR*~BJ3Hn1wk7$*Hi-Ez`>;!v%DNWx&7<0J]]{j!$BAo҂rJ2YX@b 頫Q$: q=jP`w5@qD%|[/( mqU3nygW\%Ɂ)WrѪZ@na^fMUDko"Pj& Af=Jh>±4i;;*,TxdzHF8'μ ,S=TBhE+DtH@4UujIt|#WU>";DIg _L3niueWևqi g1T K:w\iu>x~Y?i먐E}zA晟 l},zO\Ho7#;/[iu0!VÃAFa"AV MD-5 eh;Q: N&M9HU7j<.#E"\s JV- 9Ҽ8E]zVga *d+RX-ei[ Ɔzr!c"1qùɎT&>>ʽES i/v⍕b rF>OS=IQ hL穘]9,4&rZα$lI@؅%ǍWS!Zx])I;'4X.gԧ< [c]X¢(l3 >cݐ};0"w|e^'1qdne3 5, ;kW݈ÏJAzvئ\fbh{(ȀWI+-*QiԾ)pj8Jl:7_Z sϸ|&U/ФW2Bht k.h!ڼiJ7*DźS%o(=^SW=6N\!K_:Z5]!@8Ֆϧ]5rDZY0NG-]VpcV%Oo4u:"JY5ݙ+هKh]zv^3afBq*yEX b5 28b 2;)uHo?f 0 8 ftmݨr<<#K,(YE g\\;W+@q|mr5]]@~YL2.Q$MYAEiHwV/I:.vM-U[x4.AA%e*Q:n@͓yn"n's)1 bgErJ9:ʹtԺf'o6YRD)!%#4l5ts_L]'|+nmt]퇅 >8@Te@|-ՍAʘDO!biJHApUwn Z/C:+@q3(2խ=]$:eS̟Z8/4Џ?Jj$W2nuf*j(ߪI(+S+-l*a 8ÜؾHBޔ(IAy]) aW2rycx取1=|XIpzb`SL|⽮ ehJ-m|H~%(;l fA?cI>Ŭr$0.BX,J:Lg\Z.oY|Ғ\s#|;V/Q?_RJre*#=;J8 ^)SvG1ŶSL9z#WgM)VD. ^xAw$Ƌ՗%1SNi-wRG_6_HVs!s?śe_fO&+=UEKs愒Nە.F>ZiMiWl2ÔR[ o}fR mLE襘}bx ;R)ZЅؗN;ED~ۛy*иpq'C:=W!_ŐZ])-]W'dH}B?~T%tV-}H@Qe/%8ɲ*ssѻ__g0bݚ&ۂ!h6Oxj]-o8v'c_:~;Nq :C> 7PO)mEv~'1.VqKԕ%wOdq SWSM mvD* F3仠mVC+Cib{5.)g< p3SIKQu (!>VA'I,Wՠ/wndaa4<d\&eJiPt"Qʂɲ$]hc"]C%_ $Y 4%MzvR0J]7ۅ 1'DZ88,/}앢j/@0n>X *9 $zf,/_qQ'IhA/lޝ@F2pU]ɜ1_BmS, #EMN>)tBYSgs~xnbU@̅Ded%QQfAUZQa,|EO~#gzjqMmJ鋗 ҘgǾ;j6K$a%evDWil3GP[OVd˯Їr] @9=kOn4ۺ f@#KHAC7AS: <㡈@P̡A2f$< v&ohSf*\-5l 8Hk9]%!"ram`NJbf`g㚔ҕY~[:s!E "Bx\7;cC/Q&AS 9p'2/&R~=ۀ},ˆ4u5+!4xKVeYvXsGК+viKMp78ݮQgmщf|k7?жhf`7]wݲЧ=302-3Ei[w~@ӊ}*Si~Nv1n%6Χ8^]vSCDO֔-Hخ,}Ohg&vDp}6;$roHȢº?})NHйX-̮|3]fʙCzkp- M)y `R-/@ IdM=6gO_P:$דK&@+-@hfQ)UM|#i݄ɢ!RaDVW6pۖCO0'} IITs0K֫44hs2#$*ntu^}fr98BQrM8JxC u!m-9C,B_c5C…2_w&˖nԼj>bRYSe<8Qɉ*Ik*T@3FT~7[oeasUjaHDrR02@]8Vbb0V;s\Eϛ(58$hU$Or>Tc@\]{/w"xi2{/ #79fcqNa31yKAO,@o= fWc#J^J \L1Ϛq*u5imțɠ43ɽױi4ejaW!2Еؽ W;Y~yƌ7-a*KjV%/C1`/Y ɂaahC;$ y J@NJ /%/?e1)ow6l8=;LO aNN8w Ʈb-q_/_Hi5Vj!I  Ԯ8D@ *AsxA@/<ǚa=zjݕpICq}H(to|rVtk_wR"}0 zuIr;4P\^g~2u<0)D YW%&pcf:]\e%x(5 nUMFH誽(3-zzG'geɞC 1!a(h|}! طE)18{J`B VڡrBԤ39LqxFR\N>dZuiO 0?'zO!#F+dM|X)[JlLy?Eˉۄ6VsmIɊ ?fSѠסZF0e #?񯟟{3>& ii1>`DӕǪ˒,,S|`.ܷ[6Ohw|X0pԽ s#% "ف8ΰސ |HOŜM`@/Z-! e= $6Y$8܅n6xa賾I9c`fwgaK!]lZ#еd$)+ =+L4kp  fEǁDnjbӂ.4+zӰb잽+@Y6$;p6gx-1XK5mU7>/Rq}8a4TN/F]D4LwouPWu[h}HQ"↬"T|U). 1j6IYC.N!otщ/}տP `"5cPDvUzK]rݡ_xoZ816wivngJS94l_n$Ak Gʼ6XH~pu]f|0ߏt_"!u)CΕ,J(r>ߘf*Fr ാ / *ޠ/rIց%:e~ O5_Ȃ jTbXY6?g㔞{0\1߰l*:έzo7]tV۹>MO XrdF0 ԹT fJpO(8Q^>nm>cQE9{!bV7} +A+LѳFwEG1VFԑuFi ` ǥfү+,1i۞CL%ub )!5uK>LAACQ;*N9,F鄤#bx׾ĄFYCLBXNMGs]GrK,H/,F2:w [!]_T==_ɓ e=>/ 2wu :^X3E8e[N2Y4 h\^95&SmsϺxkR#U*9r$}jɵOq|C!>[0Eo/`'T,0pjPm򻑼b*DGx.k"(8S 1I1UWtJ9,/͉j$o]M;[V#֊Yk8M9c耆g4rW+Z{5a]{h+L \ʀ |Ip2*0"+&-][!R_$pNn9,]B$h*">!tTDf&BA:WUiNl'}{FH;# Z]1*qGf=зj$<rՄNa G: vEW= &sm |gT 8s"9?6 t$=ϛkJbLŌºamF8qd#ʭ3B%p$h=291R]5;Qh:'}fJJgt%~0xSDTb&õ>Y$ٗtK3Et-+.plEZ, ~ڼߛaD). n!c .~s diY&SwΪ?X3͚ϦM'[ i슣,%|woP*>d"~ꓴQs)%(Rv@C#ݠ s1jT-Gp] (@8y8~}a&*לuJ +/ n$QA%z<2w~'m,4Vg:_D6 $OԓKzm'^VYW`m^ToԃdYV(z}f"8}Uԡܢ0ZĻ/ڿ$5HXkp$ BM{׵gcxAF7;U>wpuދ&Bb^PoPzOSTJ;zhݝF+Q;䚠P>{W' $_VunD}"C .r-09dtߥ[o0RYW8͞|bXC!iĵPZʙ~4g^ B~<d"66Zg;f}m'j \u8^% +&d>T I-#_ib3#zfۛÑz~ˈKbDIJɺ3\f}Uk%w;$*2{*Cؚ17ȈDϨx"(=iH (yR|uؐ23O,@ubWZД2%ȨKƮȳrp*'AJ,E tETOS<nrFֽZ=8q 1S|HLw(6jf6 <^Kik( 9ALL3ksƤ>XgW1]­ 7R|3_͉7\K50*O g%7BDyA@9mN~W(k!Z(?ħ~1V#L/==z%p\u QqS *ݽV6]'B3D\/)*kL\?߬ ?J6o(N"=Gj2 *qfD^fJ7r==1˽XkÊØ܉s߶:-Uh2}d+UZ/Gb<žӅ|Lhߡ6)@32 L@ :bꉝNΣc&7BVb_}dUfv%[1٨i6]^}h,u!Lar TM@WB̐.``Uz|q{AJ^LD?"cF*f!K5$bfxl[1Ϳ櫛'}Iu:/涝x‰4| 6ZVhϘ=EL Ul$=RCɘu)M*uf,ȓUP.|+BK '}D޲{΋.Ľ{ KL`^.o kIZsɥqQHBd/"O7Cb@(r?.rb)AQ &]2{J,^{Naᆂo_dDGs\#¢}@|d-BTMu d'茼ڟXO׸Fuj;3Lh24⚒<^9ÂA|2re!efwZD^]kb~S,*f|Qvo 1W"4:A? â~8~XV˞ůLGp  OP쾭@`#Y҆)g|wFW}pKe%h ."E|f$W8RWNYXdGRhݻ1åaNuAa=OfUɩꓚ+-EgOS :}rȔ6O5I,+Rdړr+uDW]tnSRi F`64K+Zgp@{;'d4 Nc9HV)Zjg,GNe neԖu,[l.d9ɰP{@!fz"'O8j6_V+%5S@h_NbiKifyޠp3wxc ;`.gNkn0%O/ZVt}O Gs1kZ$Z_&>Z5N}pUw(`u38!} T6Tl6nh}"Jkcu^%$nnT@B vF mb>[NXԢعoώ&cN&p K!,6g8wY8OZ*o-]ޮ`> vj~/+ 9|p? >r l:M' ^7o "1OA{TR E wIe܋;V{$^!OdZP, &ܱSYЁ$wL]f@%z#C5%{JOLG.d %+4țj¦Xj0... 6K'cM'fH[h$&}zn_^x 6{,,˜!5")+&b:'}AțK[8mgH{ć =h\,"O3 Ys'փ!̻r7I%4Հ4J @YD U{[OF]JaR)XtM?-A8Ndyun4wEWI&+axx ^Pv =uaޫ.;@{w̄iChŹZJk䩭Lg8XL6|'ń7 -8Đu^-;2gy CVGYb$@7e!29< ͉nGb+spN4[Į;ec:Pל̄ͅĄ;篅4I{TKx`ЍoP䐐6Xה_&zP=a#| fQQ0-;W׽LS|z7{A6SmE.1 ;96@jLbtIˣf9߲޿1^<C>ؙG-^mY*,Dȼ=XEH%N)^Uxǹ0V~f५̴>vνce_\ݲ- >zUUepf8N<8r@+a9zk"?f"ʹB-"0M jXj T-@8ʁ~(EM(1Z\d?,4]l溞YE_tvI.ƎKGgT B##- SK)؀wCuB:o6˒" -*׬]oFmZzYt\68Y23T8m^I l9܏8NZ(v'`1Λ+P/FB/'^{HJoJ~7"kU%nޚEu M!R/u}h{tx,2OG{+)09 N4b sO6GկJG}KKYZ$2ѐ7S:tTfuw,5ezpd;Y?Qӧ*Ω.ϛ5CsG}H?ƨ#2Z\<s\[T wf&+ڸI_`r}#X#䘬oIwW~{!jWffgf#gPvvSM@]WWP/B0#z"'yv>)˖PNZ=*:.SXI(:Z 2өu2>)F\D+ wc\P04Sds7[jDW1D-065O 0NՐGD0gIwНeمl^4|`K9Jap$H=;2I d$GP>jXUu0 - `뇏n).o>j n7VzP֞on. v\;!?FAT@Ue /eYO[m߾|buK]&:f#D,Iq , ;Cj=XYibp,x3 {fHG6/S塩_& `R8{{tov>^k5v DޖR~aueJ0$AܕUxd4^h654F7<"9H{H(%)IgYYdƴc]n{9aD+VP;s 7KtrsHϡLy\^gH81!eM &$вָѹ2^2"㸜(5QH7Y,w2om;Ťe#bݯDaG@|cR]]qR8ÊBm&'5Cr^&yZE˒ѶJwఫDD WԶϛ^k(7U MthHS9 .`H1˂&D-Y~XGl4IG3f(Maikf@{RK;Iqg[|[ԏDV:\3~old碊#}C|ԋQC! "p*oe=g:N?G( ٕ?p##Çöާe6H裞>eKR"£C&f{lL'*2/\6+ x\9L^VoRX[DCL5 D|]gFU0 P\;6J?:ծl D$тpt&OcRC{f˅L[~6ɄGBҭ3A~uE73eX9_AAR vGVi#GovV sn{:cRDYA+EBTMIG!c4â&b7VIJ6s5Uk1PLCQG@5jAqw]4Oii_q%9ƀ1z 'WmSO? {tP0J\A>d8YY>1ʄS3@DT%B8aǒ^>TB#7sM ^E[x[ʺfuPTNxWEyirCQ؉o[3ΠrN Սa4[.:F:rخ9"dA}}JvNePg\b/ !&< vMļ)%bR^pQK !VH>;`9#D?&U9>q_ZX/]wrutT)6[1."NVk"jFZjKk8Z@RwgJNqONULaZ1A:[ 3@mELSNŹ؁p/Uo=]i=?K__Q$@P5xەDbNfEݲAN {(J,]I(9ɢ0M۹E-Cܨ4fAFy#6OB8=@ܢ^eky8mc0XKGN3έj 1$a6}>v% hF>7/'N@k|uA*u!*/| 蟕qp21 $_AG('=bݔ(_RM|rؠ$B퍬5ËRLDH{q3s4WLCH oב|+Z:ŽI"u0,㎨L9 AyG],wɒ}e%zTBKNC5sù6V\T}{1Yh*{&u|!}6'h7דQiv'֠h ! Ms (^g\P4sH_dJ_hhKǥm>/]#*eز6x+8!V$Bڃ?mqoEmHh+lsXĀ!koXmb([d{b)ɲ';!~D$vV]X QɵK(KIkD7(ByFFcYO>eѢm6FvyMp"Cfg,y)JfHX{arg{!*jZ*t}y_ s CC0k˲6aB"EF=zknjJݹJ׹fZ>7%ݨbq~Rz@tKrCj1{%PEiʒZ(!-4Qxcx䜾ice^Jp᧴7$ $f'g>w8 B_ ?/Vl@B|sh tj nퟋV$Fl HXC]P.W[W` 9Y{H`ہ!H$CXں/ pMA_-rfA4 ]DŽ!FwM躺ъ*l1}` *I՞1ׄ}!K?<0]/ͩuWħjm\vTs!E3#vs"ޯo:, q֠V ;P~)1*|͹Uݷy뉘7 3,2:Mf>톯2 V |{Z8 ǟ`npzXBŪlܤ`9ҷhx! y΂R(;;pˢn1oId2>4CD/$']Z, `d^,b8N * _MN >yd vR H4+5M(*-Q/w7Ք.}`o⹌cIj I4\7 2[U8+E4},~"oG^c86*&A"kڦ 78fQ#8ʫ`/W Hw+^;ʎWpwXl{q.4d::FXdKERB/IogA={Sdy5"0cR V†$,C}dRuGA) /K^>#ބUftL)s"ߨ&3]vB4ԝPG5ks3@<9dFUzh+'= `p;c97IS>n: jK"8`-ӳ%Lh5i+tv_<uC5d;Ez r fuw~jM-NERSY0}]oӠO82m0''Vf!⊘av̶CB쀃A{+h_DSyՉ4|nj7lHeV( զpv!~Uk:7YτV*l0q΍מa 1v)lݥw(=#3(F-@VFi?Yq:LCVdO {C7<(dh|؇bD 1o 1.~7"Ȍne3ЙOLݞHnmIaAwo|[u/vчCiٖ(Y"Q=# Ϟ , )/阗92%do{'oMGÛ&e5$(t>T$KYi:e\lEk\>{8eChe id|ޣ [ _uQHMAt5ɛHP(똩w/MDݐқsʃεZbj8: %-Uo#+s{0qGx/Cp|8@=ͦK @w n!%ǾEwݸͫ3PRt9o;'"=FQ Kr-u#ןpI=u|HmTA\DGHim$ÓT &/YBH\[y [4$[9n_Xn5GyUS)^&Ux~16YfPWB_ׅ,r r~&߾$IrDwq^Gy lq6;o Zs۳qSHR)le! 1H"TG~9 ( G;̰$ Y;O y4^/BU)$9^~V_ čhb")c漮fbKfRs}CrPtln <'k}`?H̪ TwB?\]doLYI5  *{ psqNUHDd46 i 2rONq_YNGz\?g#Aok{iI~B[QCC#da&mfj֑ 5 >GӋr^ \WZ'&xf62''ځ4;݌;^+8T3;>;c'UE1!c ͖Ki8nCd$$f/O?}$j3uQh9z{Z_Uł8s>;nRyC&};Il{B~- F b4?'?ƜZGU6QH#An/\9^RS(@%LP텝8^j褘JC*IC pz\\<[ѭp/!F$)Ww(GinׁCYC;aր5w2}JOdmR ÐvQVW v9e{*3D?I,/2 xϥv7\RMg X_PpzU35˞VQ]RzWH,Nb[Ww^XcظhԮaXG뷠*I昤?;vp?zΠ{y?zb[Ru(FRN{mqUH!`EV0\jTqwSp%eF_YLR ߛjM2ԴEFdn;/7ǓV'=wR"IX >%y-M݁-K`,2&ٓ ?tyE_wgc[q"}8k**^y|r+oDLrDL@l{t3ƞ|MG[v&C G7X( H!kD[ĆCV|I_RjiAy ?I{FI|Ft0wvn3Ny6$L3i~/cj[ɉdՓR|&ނfAhCMhgao(Csa[3NXQhrs4tBDuߘ⊤x\:"45D;Ir^O'jH Gz_#њuzz`aS$BM;X_}σd BMC 1jf*ru,bםpYՆyR9 ) G:7TaWY& (n\qP峴V!69KEúϾ Uq `~Nt.Y @aJxO>)J"̗j+U)4֮W}I9!@qp |86l.A$W(;|,1eGl'ܺd7-/Nd0hr0|6h.{qU1qjByvPmHy-Îc+kmK+Qɐ>+4K[BF<(Ķ,ƆV39 5i1餜S0[?V7h)tW♫H%HDcU<܀Л&EZ\wN8sQYnJ. i$Drٔ㳠Bxr^6 MuДU.__\uLr.fa' JL!ų,qT萓E%2P:z .idQW.O 勒& IɎ uE/?E/iW5w)d|!s-jd%?qGQ4'Q# cg @;JťҷG .?=csJ)L}UȎ3 ᧢[ 1Tگ7k"u*w=ڣ觫\!}{@Lu69 4F;]w\5AvF$A?4Gq|/5oEh,&64yƴ"[5ϼJH 6rX<^pHm'ܝpQ.nuLJ艒Sou,tC Cފ.Wo=KA\BPwԵFPO;τi3i/Ӝb=EdЌԷ \H12޽ P˜g"Ec瀯Q&فڝVgT֗u*oJA<z$l1~d͒'b+5U$қ-eEV7*|Iv>VZ3 vdU{_2L/L*j S%PǞ lZ /G"vK>j5_luKÉ2XLHr;E{|3g9aQ٬ેݽYg)#E)1™0eG '|_cmcxu <.㵏 ? /q-VeQ9Hqvҧ}I{\;AKcſk(3]z%:J6&nZ@Y}t+-ېʬ)e;ez^-z_2N>[RP*] !- +SZ3W?bөc3_O-a(KOc3+_y(xctgK[:-ո_ԀcA zn 恋_kR[~3E&Sybna^yb:5_F!j:ހCULd,͢aSJLr7E$]1 j0ѤEd5!1ۢ4)x Qͻ6Ӻw8O0?k7zp&\#>/ji2c V{8BCiM7 @,cܣL[Lc}S\K>C߄QI:~E⫦ V_Lpj ^*#yͻɣ=!Kw ނ]qq HJ3C/EjMg6 _f0I,+QC3^!֫}2~>~7ք`;8tWw-y:C۬7^1 q؜P0I&ԁB\b7ff ,m (+nsRzE|"5GCm,u.F@sAqdi<Q漈<51 t..n"(\ ne4$'[!kAGt+](Fz./u.&p gmxT LlmW$Zϩ$j45Y$A|~]MףaQC7|@O=GgGrt!f A>b+1U$f|伉CI5XNzHp SX~X*d5!$j>YȺ!DF\ WT+ua4& ݩ[aa]t5Wp&4nMn!h;K;L\P~#Ks.{3 gǴ9X j'|lψ%?+\4e42-]i;ѫ"h<\7Btto ,LjF=ׁcO sFuf !& W[$P܎/K *XH|$1n/!Uyj$x?ZܞV}B sv+7F]t)4@6c'}N_R~fSۄh7҂fNvoA=aVcUmz"{ZJGdQtjW` oDuT|d)e\]^~q ״\ XkPNӌړ/ 3cjT UlRl~'xFuGՈtx$u΄m#0ϻU11 LN9Iu]U=gu#vH-ëLUz~lwڔ +:֠撝ʀWnO>CỤ:#U~_JflQ*W7 cSE3N2/|4F< &%رgq肕ﱙn|/"~8"Rokq Gbgك~kX-jd7'T`}v65Cx44A~ GDlYn(\VJYIRXj%~%_W>bbgNU]<26ߎG3ii*3/Z]EC uEz2!3v 2%#r|D)q6,Csx2m,܍rcxh6I\,pDc3 X\xB1i; Rds=kJy-tA,􊋴&ҧƖ(sSPZNMx3"tނX[2jF<acÔY@)#[>œ]~L U{/FDXISj!=E,2;o)6^}!h8Uzi6q5rpIFǔ7,u8Q4"u\2ːBpPwfyчR^́<RG^'VD-R{|U1>$nTMz"xHEOmJ"|ʲ<(@a<|ujyp^0)muEǁ%_>L mtvZU}{C2ڄ*W{ƈbDٔY={DeJ-<9'.K>&l([Q@.)=8G}(u>Hp&aMȫyǓ&O!9ֿRy1i )9+#?_-LTJR7 Nqfq7wqQh"xnEwKv}Qy? jyϸ)Wt6}N$.Ob*Sjlj 'K01dHF!FQz/C~5'1oViu**)U *~ڐ/BKx==rG&;V?I"De}{׃޺M!vj.o5Aݽ"kߧg /2;|9R${b#y<lM6G!C*n +P$ߜruiG;d88[6){*sKzzvWi>@_{]mpQ)l-jWCMz`#^MZ7fHqzMBEvFlO ID"6NJ_j@كoK2 WNW_{61 +Bl8Ҥl%84>%H;he۽ˬY7c(PD c`7=*(DO( ["ZU\4^#ַ<]$<~7oAp-p/]Vݪ)]pGZp}D?0>*.f8{fSL`prVw&ҦNO):>KI}ni^(!ԝ!*x,1I]grt u&ˆ;![(I& TDkH!-R/㴴)}X TAE̬fl(Y?WO$ 'a)̀ii,lDӤh!V l Oʉ*"\7wRjE tl/yI `Ej=ŀžuvzE@mۢvq£W Aێ_P1V])7"뇖@kқT8B5O$B_]8 QTJ YQ%rToT1]i쁓3ӃBsn!5qw[yJ~~]V驔t6w qXS>V6H VZt:;A,Hpb50˰(L`').5ԉe⹖MfQ~%_'=8ӟ9s?Ɠ3 A HuZR^52ǒޝM[[@ 2, kI}iB|^N=fေuqϟNr ]Ƃ"o4,ŝl vGa5.v*^<\B걺B2Mi A)sСb34ET]&㧧󷈝pICXۯo),I\n^%i#m.x80᪪ޕݒ0`mVӥb(0_jQJ0_k6U3&Epqlyj}kvjG ,Yc/ - gw>2XƁ1 ?l&ԏHYAqW|A+<_$ ȀZE+W8~z혇b~, |AXnQ3u.q kpV%۵:Z||ՌB. - btKWmij&]aڍsbj^d_M,,b+wٚ{oTEp8Ggi<" 6TٴKciI?ޞ8[+XFnH)Lck3,<1s*DAj݀t@i7i.D1Wq\]]MOl|B*[tc5kEocDNƫ環\}f1f[Bp)}!s`p3; ?>p)j<\9xpGDȒ:ދkxPD|@XG ЪrjMc`k]>]cv?m{(9>9 )<)<~y$HsPRkNe؅욓UZ\2 >gmV#mox-ڇZZTg_gfc Hi69LpL-kP[Ih{ Р|=0kJ?lpaT=aiHagZG$4߲CTD~4͍U Slx_yO!z{+.d`rVg2|j& ,g *J?8>! Φ(3~2sM>ϙJsSyWFsD. yͅ[jɸ՟ R( ]._ F3+MBX>^"j%{ܕrnU#jfs{M~1?[QS5bט;8+WiTI8={+4Edǟt̀54YF^+QJEct[DV0s}r z`s+*!ַ ͒ 'Av~ %_N$-Nvr F2uDqYkg<<_mR#9/bdWA[&g3"4w[P8l@G`$VdE0s.]*wXbs[$FZTHD^cQ3z ~ 击<)TM]Nf( 㢯8{Na`ZtD#Ne+L!r*"]Lt/pbȳj2fâ%KƷioU9vNXpSD 4C7 ?_.Ӷbp|/94Uir&wIfPЬ?|= ZD=c3 IW"I6"F}(9ɪh4d_ p@Tm;s8 TwH%2+>IVD-) :,ru''\<۹FT 4`Z x518\2ðqU3C#yV( >]V:Nz\8oepBd0s~ک7gw0tʐA$9*/ [ņOu AVK fFE*,' tB. `߿-]3N}7j.j7A{ݳ]t0FڪӸ 5s'/|Ǫc;_Uj'd)~WCOQ-բ˄(ՂĔViu,> hnIwЫbz){HS˟xhČ_ :  U/íԲlE6v&|}R)}uPRIP8)IEov3HKd[ۣsjƢI9 n?3m@V"FfoϞ.V`O1DP[~wn.u a)D`gV1#mM"&.9~Z7@pq2T.EELE_Xd9A?\V9x:X.duBq|DyE Zu'~7. 1_@S ]Alѽ蜱UkbёҖ #܎s+sփ;yefPqpahgD㋝*)Ph,ThtdОsJ6{XvE+1Ac#m$[ٺ,+Q(կ]ǖh߭OGFrUՆ$eO̓b{(aj[qɳpnm3?c>^_ʦ%q׻KŹyT+` -0 .zYsm7Yqt870V]' @"s^Cb[m~a(wiىB;a*rcè)a+E&1q8˄- ?_zY[-QՓװ2"\w6Bр^#[P%dn 3Mܱ=Dd䔹f mtzվҴJTCK,p8=\b#\wAǴlHy*{ֺZ`K apwG=s;t mpʞ-W](աZuF ζ eZ *A^]A"h9aPqmgHkt/[.7V D$U7beL 5SؚIc$t,djY@'ΪS&p.< mjO[oB\}. y>})}Ur'nb)+%e}sQ^Jk7<[Ǜ`7dкE-}Z;- Bp7E 2uDa{sd4)Şz ms ~16[\\,_&tpZ7њZUI3<^t2 )wg|Ϡȭim=]=Y"Z9 */ۂ)WTʳq9 >@֖3k׀m%bTj=:kkrL[c6k?u2*ȌOwyI1Ֆ `{k$]Mi'Q)zxsGbu6,ړJ.JoYYX}EDIeDQH<"ިdU ö~B6{q. ni NNn;wF&uya@/gRr/gm/'Ee\Qi W:$CRѠ>f^ZfOew(+\i'!)!{AVƉjpo}열pZW ӭ-p뇕j  DGmFV%Q2t*y̚Plw_r@նGp>g+2zd0=GjtQ) үΤop$bDBS!1x WuQaCv~r*Љ <"[bkIPq^Af傴^#M |WػUKw׊je$4_烈,U=1K/eҷV} 8(Gr!\ǻ,&]*Ѓ`J"ZybAWDb:N :}̝,p .d龾"fLlRFJƷQ)8 P1e=N1ipOܿ;=>2| 'V*" rsY3A0[K@.bo'K"S_7OCvm"Jھv+Rv+ rHnL &u{hI0LBq^OR󒧅pZ+.GH p+>R8"` 1_uuT9dLbǭ"0 Aϛ Y$$?tn mY heST%j\ >־IjP! mVZTe) ,`zU7mNB93P cnbJXK,oG؋UWANmQZzHL z{~X%'d{G( g:ztBS ͞6 vE|=JWA;AA1)N}O ѺX)B1lR9\~pœ#`7VK?eМ{UJJR ¹8RxR17Y#!xLW@V\H*)]kyZܽ< x܅6j!?YE:w5QfQO;<&pvUa^uJi-UzWby1DZJlsϤY@1ld&5ۓ:CLJQN$)] ziS~OA5N!}2\:so'JSY #c5QI>pnM-9eVRI-¡1Ц$k>z%ݫ/GEfЕb`M Ix@%#m1YBarB}Pf ɑc sN\r-+Zک.ID.ZiO̰ZD+J!qާzF*W!SIXN1<8 |0~-]]ީk/ma6z<0hv|)9eOЅ n\Y&#UC;j‰[q!f9,}t4^jS OwJY=@0'~кt9 ^YEQ.N@KEtZѳz2Cxdymr*#dּn~\0*寅f]wQm ՌxbU (xuv54nϗTj)] r?*VYa1ܶ.N(sU@sd[q|-F.!Xl~[L=JM4V61pČm4EKX}H?mW>qї&PB 8H˗>}vwu)o~^L7wg܆=߼?}+g{(F~ISA@Dl"Լz\Rƽ䅁P<:rf*Ǝ<ハsyBq &vLr8,=AVdCwSvUX2% yL6.RW_Mqw-j@KL!o1AcGfαb|=FW_‹!U@qDrBwb+J?E$Z֓7(׵i`:o!frIk@1ͫ] ӱa +D6g{ꁬ#Z$ؿش &$JRk%y7[߯?\64FC^4҈6>#! Dx@tz]!FJ2,apo+Geqxrn2yQW{<@*@)B)Tj21S!# 뽹`_)pEfX^]T&{F 1׌|z*IL9`ԝ-lD30ZmCզF7{EXA %5ڨvBKYϳ-]ET BTC^וXXP:cl9B qB QՐ1D+lA(a8ŝ}cf~i:gD[=IJH3qw-hyR>FIzE& ̉NQ٨=5 =̟n[Ys|qѸcQoȡKZ`iĺZ*˾K_иRǓ00pL,{_`:j1#X͆[g4:nv~-. Ts7N 7 E$DĻKڤY.b!6LMLP[&:tQ/#ʼn2"Cu1͖௸}e*W%4 %u,COфPek,|;v"&4֍"X%F66o=*/3ЦK=:UA3pl5u.ׇ/9|msFy+vMr[rF ŠF'zCW\y%ZÍ+̉ xF!Ap5۞i^N poj ɓ1jf%kͭ uԬY+`Ȗ< $m 8`.?;QQm#Y.|`m"+oSFw^*Jf\E$5VK_~nX 56L[] .W[C7~d P bR([W($<1g|Ԯ Nn9w"?Ԅҫvp :X7^IFQ'ŭ(占X$W~vax8e9x?w6 kv?=xܭ͇&—r,rjh7` $jGwl~[2$1X}L71>58Sd '݉9D@ӫ_K6ݮ X3F_PJŭ>RK__ nau5):S-LCdXnu'Vz&^j}|Y>)tWc4 r52#~|TL@?aдZ'e&HFN49O0oOU5rT~5I_-CwJRC. ҨmFwH2sO)%i'$8uσARl1tF'.;UW+5zʻR?=rV Ihz%R{FRz,"^ 5YFlTrm3Z[At@8xI 9nڛZ^rҟ1XaGjy@ɫF'{!(Z+n#agVqphE:&i:TCNȇeL>z24nxަՁ<}Wxڏj&XƷBq22f@=q{ =xkeWD}@Aw-I19GLf\^1j:{ MT=T7mQ74(_C-CEtZ'<:vqShR !܌ɿ|nĜԱSH+s@_fe,6$4CEM-Dd0he϶1{xqh;-o?(BaX|R!+ 6/X q鮔ˮGV$_gN,G,ď)bFI/X|]tNg GҾNcmޔ/7tpKD[6+>!1|b"hbbG&.[X'YG8նgAx՟K46?Zsi Y c9)Io(ݙd]!@g:9,5Yed:]  {-W*rp[Yҹg@i1 5<>8WژNM c!KFQl2{u`QE GkAFPwtzŪ>0s_V\vk#a3g 4rVT _~s*!1M=gM$Ն9|zpΟ\,"2mo])ڨe҇je8FuP>eZÚ x{bdziJu/?)W}C_l&P[@guCӿ{ӑ~=1`Fuq[^i+@cȎl);&ĄB@4FjQ*0 K$2;}5yv+!ځ;Ln.O=AÚún+gokc WɡoZ A~qJo\38Ọ̃V  y,w5:-hqu9lH"+{K|J)z48a+z DT* /GuyK5x /;DFp+Đ#H[:`) G HQ\~+yǹf6] Ø>9ZxڧB|+F !ZMtAWyJZ<רwiPoƘw.A>~+2D?p'RKxzFI}c2b ęnLc9"M`y69 TpI=z7v,$1II\.5c6>oGإAU H۪\r#jԂ_e ! Zebڍ8d/H/#5V@hz[k/\82,C2O+^X5'd`; =NK>ն|mcIзl`-PŊ!u}1u}JrC\B@05"|`HON>dXa?_I4Wë $FWP) h]CM%U{N9L{[: %(nW<8b0EşL=.d :j"Ig*s?},}58dkEG˫a@}DXPގa1y pT%sB>凒chYkq*LB#2{z'!YTcwʙe1]YYL$J=#>tTB&~7ZZ4]#y +)UϧvcYM.oAdce;g^}w!2] e3|#{߬#FWbf7$^s= =sf+54$TsV(dP!HOcd= o3ܩf!Z{AEx9[(u섓LSx$pMW/ ؋6l" 䱘9I5CbWAHSuORk<}GTQ0y+\竔c?e!EUU[`QӑA_G:[)6YgNwd0gv&Mm*쮇{%6U* Jy{z ϫ`c7ku4ZhjTЦzie(I3I4;[coZ![Ju Z1G|AhU~"b)PPٹ;{e '_~5چkhɰmu{ bPyzKRcJ*xdfl2U^*nd?wxWG3(_{\ẄR:S3N$Tܑ:2eĤp/'wK~ڃ98Vud~LmיiB)6Qqn=)0 ƌ#t.ϦXh*&yv򷩾] fHC sȂ;WN1恿_Fv9` b[%kb1 MObdy)mG2o,yxgiU`rNŀy'eJU0VR4;2ݸ͡3duֱ'b( sV}V~ ,@:SXk"g0n0S`HܚӤ0ekҪw:I;D|%͓eD_ًwpu(ATRHvyh͍M`h>4Hu#[4=ĺue sҤ▗y~fa);w H%8e/B|.+S[ r{U(.EYPGe@"kؼTfBS߱,UJI/rɞVX0YN>t96ea_DxAA.,}\W0~Y]Ahg8x ޫ1v(r<_SS-7'@:"&/ǒ6٘/u.uyiSp9,g̳8m&CF.\S/ih_CqO1Z'ȒuXlxnZW,X tG*j"zx] "#~h[1"r64촓K pp'θ#1E =Nވ!ÉZp2 [H`cmb7A_#,;atFGMyoby8Jevl,/^_7eƾVI|o'6yطSeo)HLr43Ic ɐrS+|ip(E _x\XTAuM]vmw_ݴ<Wgаmm8Jc~rsW;U4Zj!AWVVJr/i!$gZf+`/?ݏM l;XDt~`1] :g< ck}\|ʘZ]Z/EָaJ-(e#&Z"J]0h~p5܌pp*LUDJzJ?X' ɍUj2-9V7tZ($nz|S @ߛY/fux.sY47mqэ338/nuO_tC\yV} ܗ4SRgHm=Ӌ=9r!eysO|;( :GK7HFgv7cv0 _`w 1{Ng]dkza+-~i׈۴UH/f [ݰP 0%w;frbX33HVّAmm7bR%N /t8{/~{Y+9.;~ 6K쵽M7C#j)\lG;mthxB 2~^'c~ D?g/ پZ(n*cp'ΛEt*j+a8 ЖD_Ipl-3#*lS/1- ^V][b f19 bila gJrshpGжx\̳bTFYhKa5QK!se~3> 5Lj S| [W DH2#{fKl󧡾,+? ,P^zM=N0L4p TP:p Tt|QwOY(])M-c$C7$SVУM|m}pJi$qkItq,WY`3j7r{Ps$u"*RvAEF>ǴAgVhvNVry #j!Qñ~D3=oʹ J-}G?oK8͗aQFHVShW6{X zgu)sUMbʔ\']ѱTmǶ+̯cP#9D>Emג*R\K c 1$W'ҢA;B[g\p > 䴐M۱;mqk_j7.P-)1G9<4F"%=m`|rsI@MA;sU6LJ{|RWߝ%\ ws/%ni k=wcŸpZ5=SBj(:YhŌS-lw[V} &9,@XY?8j8+mbZ(tBRV]]Mj% laq= ^GvNls*-[JWj11IN f~@[ cKǺj֝MȭSZ E C 0T.}VG*FarTNGY._V]02E{|߇N'p.8.2mvlsJ x,trKd: ,zhr/qD->q[Zɒ49Uns^EhQUww> τ IH_XlYYi]ÇO hډc/d|2aRLzBW5H.ax7=XOdzjrMtY /zgg|'헶&^C; . %&bJT!SgWSHQȼ%b5nv)3vڹ#LG~pXLY?1 2`ߕ߸JFIDiڗ8fL\P+DrdB+8gwgcC,M(]g~JVF;RIK1Aw!u<^HͅL kh]f3i"/*b BkGZXm8V &7F~䱳oZ8zg0G'>lňe'FB1UsϛQ6υO3hC6)V-1;aᕨTbb}Kzik%>{O,JEtmq4rv+:l5T:<fl2FU;\~mg؁C]] GNǖ"h͕(T!`M] I{3_970ڈ@J8WP$[*%VHiF*q3d{lփ<E2FHZ{DjEz)hrTUqIXm A>A6b36B"Ce/_`k٧"y9ZHS׳,c3'PFL1,EPN&^ jqWYe7Q'yljIŗϨz(.oOM/N> BI -m!J)!Um!`sQ^hpɑL 7H?qTC#Q)@npC 8TeW5.xF!ʈ&/q.0Eg|%9ŔѬHq*Y^1jbA@-L!@΢0)=H#V)x|efe\wc,"āp7B0_MY Hє${% , 906[-\0tM,BYm!@.59%)pOr=|9Alok! )yS.<`SE\MI}:ɷ}}7N˕YGYC &K|@Խ8TXƚ}}Пa-5I ?:j]G.SK*vbJ ٬+bYCiG=D* VT vK6$|Y]C3K|u~-_p[?nЀ$d)-#ieQ5Rn1^5- s_>cY.K$`tF0ؒkSENL[-XKHeMbutG:1!bqeTk.)jXŎ-X0c"/Ԉȗ;_;Ns[r dWx`J.U[A ^Xd,釅j=nd';dزk:fR6F'NUQok6.$Ԫ{Dug%2BѨQOL}4*E[</?bH9S})I?/(>Rе:RNKߟv|K8^LH@]Aİ.+YdY2Vx3k d~qE]`[]h9[;C;HE,{Qu>㢹|=< LVQن^C'5`B$WiZ"] }T[}sNƒgX @ dҍܾVT Yg9mi"KXԭ0!h EP-2_[ +[q>2iBI֭u3#oIxh %$KT7`yr#Q#IwMWN'JpY$,5ƭtZkqvK5h(MȪ`dܲ Ć媭jY^>[%̱-k` }x_s('EDI~$LSw>=b1gZ6V >%1Ifh|V/%Ihj[љI\a\ ֮*⟯l$S'a?Mk9vl33& }8ҽۇ˰9$h?X*Tz*[@>V|_tze\l]ݴ&73{ PaJNHXAmֳCkyfii~rgԪcBf="I @ݦa(ɓ<B{K؏b>hK/ 8X\"Z$f/?37 Ք93^ N@}'@41ڥj+4W]K()ܒ5Q7~-^zhmݳlbɞɖx\*},{M9.00gi֦OItTꂶ(W/sCKN{8[&G E ~兰GK:(ɥ ZˢrW@D"ZP[r|m`0G,^8~0F0 h?Rג Ea%.ȾdF#*dqb:.AI2R ֟Pc̻^*riAEt`5D} U5r]I8L<.r7o,L?:i\'}~~9Y=MGflxX|1Ib Ld d_0K~ܝ'.Te*B!Ty]1ْbxZZԊ`7]@*FbA}7[fh8Ӳ xv OcPJ$+k/(o9 K1v~# x޼}p}`~0=͕RJ'vsyrѐ Ur>/?CrЬ[pkSIHϊJHpuғ.mA幛(9"͐=F=݂δM5[9#a]ˆ 5PIlRlF#@eMj(-m;` 9n ߧ*S=SݻDJobk̷/M]RE!6)m6uM/ػUB#m e8V1rj*{vlJ*[OLof:sV #21F*(e3wl./ekS۶4y@~[H"(;FNXq]Vx۶NK=nml룓}fGb'\ӭ*hnr&xMJ}@Q9_2)n_L?l uLwI]sWtIW.*0 GP1'֛$=/,6%4jCTHl}Wj0콪2А(K:! .zk%=v6D鑺b2VE##옖G0leK}(n” "=#Xh%wķ6̀$,JZY'e=!w7[bjmzf~yr2rݬ9n |2k|pG Xe` w!CQ'~MsT9"r ]﵎eexr|>330l N);>Fy4`J"HoM@[C&}q T(}ZPu .qn93xS>fѴaU.Kp_VO\Gwʎ<0ȤfIjˣTGS$c]4H4lMV~]jޑL1t. G0%&`pƚD'7R zF}60 Ai6&ubU]!3gMZ 5iiM `9@9{fJ1Arfo9 >Pο qX!`'&۩q$4Q/2d5z~lGWf^.h-CT4oT-'ɬj|j~2g%)eO,;<F j)U| fbGjD~>w[#IQ@7"DǬSeOBGP9E)~ZIg wr'9emA[ĩs'zp 5[#qdHrLWx]4JM>] n*I FV(3.U_< #%s#dmL;M~ %S35UsUR he*x@Υk-v5_J)eE0ôJY`o .ݖ6iA)(rJ  =oʗH,}R@hUN5X+W0bs^!I9+FVԥ~&D%k!UmnWOkD]4ľYlebN 9*:G;hdlR#oNy! 5ly ` Y Ka1c<(,޾*KKk4BD~΀~݋,^ł( 033|h((c|u(I>,-8}zyDTf"CN/zur=F_f65"oP1w GH*l}RD)f)!e̥۫h9 NTp)XV1]#ʩO$#l"pZC4mV\4efi3.Kz^AFfiUin͆1Ac}t< ۡ~A59 jƮ LFq:}}JճZbXxuXWM>1K*6a;n.8x׿ SNsZH()Za^ i^p&$_K7f=s|"ƆJ.Ѣ3p͙|_̢:KQRZ(6ӥ׏]4GŅ΋BuPPezRp kRJ$N">eK*[C,PM2 o3 2aH+k@+X4.UiYԆ0ZՒd17JtO2UJEʖ"\ޙ۽8*f =O{ѣUȉIe\6jE[)Rj IƘ@%\:PiM'4SlifwŪX* f K6q Dhm[8L.0V{mt_*\`'C2bv5CxY2b˜BRO #).;L-fb P)׌;64YȿJsqPVʬD4zcPNZl[/TT:HO^!mpPʦ͗(̩ 襂I;ltM6KB\PGR=àt}ŚݜwMnnB`˓t[G,dj|wFX `I.eeVk K7O^^˒xa eRyghAvvrI{9!O-@f}bl e A >IY8GqXI?h`Tb ETIbhS.!Go/8q G95GEr^lֽdHq=\^Gσkr&E!3\׺6v`%r  LЩ^>0o1ʌߐ$= 8teV𑿹[:,j?V~JJ5 |N' ϰɞ&A{\bx?9s_RE7y!fc.oes֙}2V3}ɏg[EF؊JjB(VM7@S6sFz0_A _ϱ&,NFqlNYB+U^eSg3@I2a5)Wg3:f1TM<iζ$/`No,5:uHˆ^9Dl-yGe-WbC9Ņyسt)0Ώm{a:P`ܶk kycL,)<7[4G V:,q|"+ =,ͅ}S0vZ864O>Ugm/,XrTDs7N/b= ) ĭcy+(5J.KQӉMnb wRd$L3eGki>*OA#^VmX;(|ތ+V(@v1˙pZx_nn09[&+I%:Т fBns~Y9Za6>T]ָQ/C=z # f|qq&}F8lOj >Њ`'sO:,ES dWE@;Txbn*J"KΈP6YxQ@܋\Pb_T9#t,?Y6yΞoǕGt贞*v}Qf|뱜 "28Ͱh GՑD$1=:gϺ0L ^kNܛ%4&3cxw"Fg ?MDŽC1>OEK1;S0a|ƒ*>EeްKh/r& PL R=9]{:XH#ua(t`=mgZ-u!.~+nO;e%|A`'qnͽ siV=Tj~6a(ՏnFyht۵LN2o ^S^i3OK9Ϣ^ܼ:HIiq ,S>6fWsX;dՙBm=ğt!~8GS65Lu߶p8`7?vGET([1L#qUxA#A.#6m{.]\m#-\_LVZض7CEF*Hj t=+pˣÐ!'vsCC4N֌kX)p%ҕjަ%nNBHF$Ӕ }\v.'lxPrH.n8nw@e]>3pc烱pD=H9|s\W1ϣld7R'ϪMe!+*D`6U$DV27?=Z +n3Z hm#Յd-ߵ w[txVqlܭ}`[*K`uC@OQ~a,V.h9m@ǮYiX.$&„5z,Md/Я-ฝZ/%0l*-kj:K>̯^Jmp[מzJa#+gxi1ϱ 4`+m蛩m*A2_1wLFDg;ѐ5̥Gg`,$둻+=SUA p~`{(FF KwLKxKH#G'c[tʭws9spJ vu%/9}G >1~zՁC)E5y%yq$50-P2{وB3W:H0Ov^ɾKvKxEg\*AB~Ox~5ȾpBdqtc<w^ꩃrA 3vjI$C }/ڡ SM)`CVƾkb.͊ţxS^w!/f.R-kP:&kÌ lDžFJG< ԪPMWc\%J;R{,"qOQ]$.1T!#G}?v5@Ouji$MmU1cό oQ#ÃtOE CH%9ɨ`/ĞSJcL׵ 2n¨{Pp]vy(1X!ݟOݸ.LqOYIԖԺ&\.]Ӝh\q:3!}guLVb::q0QA2haPO4=K~X6W%LS x5;TBmxKG}X;}AUR .=h*kheyavcT<-'O,K?*URUh`LtHR-4ywbK%s؏iK;iJv_a8 dOv QY̛R ]Rat:{p\7$hy1QhX/M{C1֓Oj#dFfHK'C'.*akO]^;t+Z..z'=ehC}IM,_'dyC7 Dz"Ħr4 F,FXSun%/i?KP.k_VM#0ÚhJF%@,JQ gi>.@գ. 2Jc*e,,enܞM{[ L[wLYꝔJ`76Jz/S=i^U>szUq{2CJ8˟sf6~mKMwY _R]CZyu編^(Q?k?7 P{2j]95,zV3|iqdyg?-;׺+j`'Ti[$; >'W .fPt&Ii>x3_$`K>ιgc ٘-ҝ xH_wH n>Ҟqϝh_3x P^JKg:IC!z.XseLw0SGY^^ ⽡rZ!Jg;ɩTݳm;_X9R$|d׺t]1?Cd>sa[TD=)VJ! vfy&,Q`e߬"/ťJ4d@`[2}ÇMts{9<N ႥկlF':.lLmĐSvM7 Px Uqt~ Yw7F>O MX!% d}µ8yS/,Y:Јxk'6BUCd\eW;,v@|IKL?Yanh¨ޏa%dk27 ..{zlSKk[Ͻ_¶:&}8K/7WĠG,K{(W?8# ~V2#Ƹ+էsxW.v)}VTDn`7]>OJѼ L /4Ž@A 1Vߦb^c+@B-ZQ5]gP$+[x9ίP#y<J׈!35CϠy:e03ŏ6sȉMF;}HolzD7,1`2C*'od^MUx W0,kݛcE6=a%it@3ҫoG< CMoVjeҋDf%"{ZHǼeg9,c]T(hϓ'{7*P[m4M4і$"* znn:ݚ,aHSi̡% Ti?U7\WslZ58?XdNc}{yޙ";?Na`q0`')Ll]EK z D6j䓄c/܀h@>to?oʱ3qOdYtSQMtn,c-&< 84EmUs{o6 F5.SӴyzwX1B|OU][l0yآ^1UBt\$? \Qv<줿'&2EO'7E۟5,Ox[+w%O&ɘSC UQb~/o#mZemvɭC˶)Pq~H*)r&p@xWގKߟm~9оb~"wXs+#n~,}kɵk ܖ{}xi|)a {/btMק3$T,t,dXtiyO,Ccj Լ)*)6//sFBϢv/]+KBLؘ/3}~4۠4ZO?B{BIҤ'lю,x}ԉA9+n%Mf4Lt4u%E΃KawIk`ޜ-aj/:[ +0ݔ'?ʪ@YV|лӳye4! lN4^txGBKe]#マ? ~SYY11Lf (A2tX2f'Rcoiؽ~+rEbRN1G_kT*<{V+Vu9ѧhwR}"Y J8/v@Y}MLvNVTK#rL`XrYDbjf *Uԃt$*ulk{PƬlH;vk@gߒs!cI=J ]!y0 !5Đ?'6{qVA$bZ̟חkQ)j3f8iԠpp&PSЪ Lį Ns|L_E~tE~>J//'@ ֚δ^E>]Y}`}>%z0Q+ s@5C.uW8vwW/(ӴVIv-?Ԇm%yJv.$,@ڧnѿ5&%Mg\)7#QGطj#_n{TW?/_<32Qxs{ /@Ms2:a(ZW]o; >.gTBj)3Э".N}j6`A܏Q Gpl0Ĉ ɰMssJvy(xLDGM,0i3k{Zu6FV)w׏L{ᨊK|̛6uw$HM92UwgVqC l S&ǥ]Ǟ:CӢSQs6 7egD?iL2FSu#ѳrmŢJ{RBM\ y1C4[e-G,mR1L~J`lGŎ y|q}"pJo%N/aپKfy,a6w'ܫfv5Y9Ÿlj5mo"6e5LđܒìFj(`YW{4;VUKa*g¹ꌴs;b?z\uY3ĒҝWut:MLUXX*#\_rHU z>a8`*"EAPzES7T`JU1J-$VFBk$wQV)K޵Aă?B=twЁAF+s8"d 7q\Bnf3mӏ$n?TqL$Y3XJUΕ(>A0ry]'f7aÑaLFEw~dB@A'&e> F|P3.eaᔩ/nb[ s~bX4|4;7,܁ 2 x`KVP%)4"S6XĔ WE:Ԕ6/ˁjj%T+}v2#i Oܺo?&iRUWznN:o+CAaNΜmԴDVe3 'gكe<.y5zs dDOIG3g[ mQmy'#3_qlEl,֠\abO4 :V.i\u1pxBm'i; fD+ AX)_?< e3{/QUUgƠ.t MUZѪލ N\}، IG23ԃAh}g_5Lec*rٞx;CnL_wTf99zf? |F)C@hZb |wڜLo%ݗ ;Θz.7`\,hW$T2?n|'>j,4[F,c?cWM/5,^USiMWۦ@ {>`&| &Q%[M=rU2kG KLu zF+3.D!#RFհ#CYf 0@yi+ ؐv(+L- 7Z2vDQ۶p-)!'פX.j8f*: Ї1|ZA;AKq`eߐĸrͬESGڮ¼`Mlx}HHVH@)V?^+npKI5q[OYY@7Cb};K|"Q$%q)b}.Z΢_3I~hP4߻%v; m6Xw~Yn~} ʼn"ѭRסR6|Q0Z%S1%I[X1nP,̵.CQ^qF{^@JI@9#ͱ[zϫz™9!T) >v4RƙD*W !pr`~ /8Z۔uR<@+9?h_8b:Hlv ڥ.gHNjPo^-!DӡlH `QfFoLMHQ oܹ<`alhi}ӳc*%a9q8N%#x'4[LtZ "^OV .~ΓZ\K 9qDFʷ~jXKB/=Y^,|[G oT2r[\ &9Ho%8F'̺لZv @{vQeݯ7h==hsc 2>'9:,E5. oBU$wހ_aXUH^+ 7ݟvH$cRGn (NKU: ^͂^-NWa4&S T/s&i(pcjm@%!Tl%ߟ gRh-9?+HMȠ]OxMv̺13ӏ'"#>,,0~*^h[P'h*P`cm}|Hy ,hG`$˴GC( hקkjKQGS Q7X˒V l,\yj .AVS:KүG^ wO(^'s"¶'o|5J'Gځ w.I>chKթ4 q;b-g%_GpJ5=Y&ٶyM}<ʚ΀Cn'SW{ب5Q=rB<^XYK&(O%RC! 7,O=vr|4yu$8 b:Yփ ^q:Ζ2>M]|KO& HA5vofSo:ܑtzY/hCnBGk NzEl>Z#-B& @4 G:EĮNU5b}'I%d;ӍKI]>9VD[&c_QIyaEzI erG a3ǝ!7a2 贪En-HJ/kèkeS= Z&L\ZNU?7{Ν~vuN[/_&ha+5CyR=#8f82o l BQ ;9fȭ[uḋ9qj0/T1zj7)G| ]?icwG _b5{I' shzj!5VkE,RYqtfI:A_r|S ,)c)yز\9}R6Rqz>riC:g|[+ZZ2C@&5nMn=Vp]:q6C[SY<;1lǎ-2paf!z^EIQq`Ouڠtރ˲0:ncW,יIL lv]tճ>'?L%o',SBtvѦb2~963gV"p]:ذi`|8`\GU~q *"=)iT"tɤ[R3v]<"b+vJ|5Q<:x7"jЍThR8z'gB/3rD 0ZI!Q0?x<Uɉ!-ͲNQ^]fjY}ܫ$զ`j Xf1h&v4porw 4(7$V:'ר<ѡbfqW2n#"I<*Ze  d%ɂ9j՞z5sN⏩ w,Cn&atwK|o+ h \IO^Μ(KP\%7Ν 0ߏt~P%9X4cɔ|?m]H齃~ }pcL޲Q jh!a~1`aSC3| eA|A**/HŌ YSj^H7 33zxr1KXiZ#a] G5U 燼_ N!.]y JP0&hE@3MMiU ud13c8$'}1s%d:! f6'jRbp;vuaoMH* _k]FK=rblpP㩟ub#$vR<# #n87)O9r{n7C$[CC_qĮhGm)`bN1物bWTMc1#7 e BZ{r̋ҕ|<Μ0-l$GT_+廆fymeD6ȵL8sFx|q՚>g*ɡ߀uVvрU%)S|heLJ?l6~Y䪳"M.3Ɔsb<%ݏJhZÐ2i8Jzr!>rZŅ'<#@ǯ)^,]\(#\x/Yz>^QґzH/md 635d]13o5gԏME٤l~'_j ݐ,ׂA6fJ9DOcYjMxqqi2 F~c<]L!ErlN(`_ xa$Ah酗*WB{; ƅ[?2B3k1+Mj Z+\Hΰdy~nw{kaNvЙsKlvj0Oto}ty43ӳo:ϋ5SH`D,L9BXjWca8^rSC:rMÌS$0DL6uie2q HM..JZ0#_ S'=Q;^|ܕe,f:Ww#uާe!ab0܂W=~&>xc>6]\ݯn|sݴU t3o↎sH~: ]49cm \](; {PR6<'3:_JڨFtS>fq1F7g_瘿`RH qqKH#ďLqϬ)oFS6^G ǥoP A3d]Ҥ s;f*g׳-Dӫd/3oK H%_QƷ>&/; c_(sT\[S4xc^ܼ8/]nV$4AC,J d'u"% )v}3\N iN1Q#"QCQ+-4#w#3Z߃-9*NDSM[Qo5p$ɾ 7<8tlԠqcuדLvsf oovfp BS)6f[]I$$پV9CF{2S}8LN:"5JXXAsqadx݃D}}_'P t޹uLm܇/ad޳kBnet\]U`=95B~4L1鐊_!w mgO`z,s%uc ⾫l3}2ߢzm2:+PކI9ʧHhK4w,v.@-#"`<%^lLNea B" gSblrؘVCVj"4őڻ$ ?ٍyEymD{]ZLVoM4'kX޼wvigncߢR;{$I%ۘmsZ8zpkeOF^⑷]Ȭi|8.7TV!(Б[\W<%]uR-eǴV!qA̻*f~ȘӠ:K w&98wգ\}%MV^N?˨|f.ѵ|擨(@TO, 0Т-ڻ8¯?wH)~~;,ҏ\$|hrjcÃq飈U`4V)~lﴵQ^v\56oi"DdqA 46Grrͧ?@Qn^|Јo]3f6 a$S<3AЎ~g|}ZҜFNJ4IMr1 tB+X(Ղ :?|cL P5H- ѻ kCo\~38|كh*X7b lI3Pܓz7/0>*n$ +3<)?aklvN.PcR1⼟ףbwy ;:EI!곝)*{'@9a+FO5UPCdE`ă1l\HyUG#;Հ̪l·&˿L)ihF7La6$ԋ@R>h~jfy%5Ixr} y(%c /# Ծc=pq vٮ/%!;Ǜw*r뙱M\ Bܘ&RB׆F ǝڧxi3BP̂p؄ݻqqr%-, c}X- `g pQԅu]?ڪ)Av.Umcg|1sIJȜw@H1VF#Ow9O:`^odi0쇮XVYPt6Cn=1t837<]TF VI{%᝵hpl/Ԫ6ov ۊ)ӑ]{=̼_1ɕQvgU^=VayWM՟j9YrS̆az4S@'e/(fpW) T^XdYл,zس\ m{~޵\0Ek?ˑ{ߘF `P{^ 2M^)(渧n>E!gh)yA:_(Jʵ6=Hu/4e/e:[Cj߀t()E@"T ӫ- Yt;~)5uHN"o M;^o3 ϲu+d9Mvud74Kb\P,2բ\5=U ϥ}3\&+q߻D|k%:.zU5:*]XrʦJ-C MvV^P/-jxz[ RNRm\s%z-E:4[yArY܌p6P OQ'R] O&Œh6 !S+эDܑI*;t|dM_'5sļDsRP4|}$=4'Q8 PQ/,[YQTAUÅNl|y л~۟ 5Pd ( Lm t A;zx +w+`W䮣0鱈Pey!;txٮ/lMfp;,>*c#( appK[6I:hN"-H!ztv ’B$r`/cGؗ8j?d ƿ_\z:ڟ SaA3P 4]}\]U\҉vRHoġʅ\ŻB#@v3ۘspsE϶RՆh3axqe$n b*zY;=w# / `09" &ާ<#?tWr[?|rk0b!2ȿ!b]˗>\i_ Z' -/uc 3jHiv0YK숌ݱp @ w pH|v"@\5;晟 BݗK]!QXS̭OfЧ|aU_|Y`gwfMɔ<H%WUbnZZqWOK<vd VC1 0؀U:={[=o~ռ vɹbשBXTV7ݻ#7Џü%q"nĚ;jp :e"o{Ur<|M)‰X#DՐ%CSxy1$X+=j)6FZQXd&g=XkX-`ۈkbZKSIͯ%U?}:[gһ$/҅IZ/gcfxI]0aQG ->n1%NfUz GwzNsH=`Jt)5=qOꌀͳVu5P-Ԭ6aeҦIhP,[#C@JxUPb7;}5gSIR7u?N4 i =&XQ8;aygP\S-"=H VN-7Q nf>R[o\z+0g?fY ={G!QLNة, {=VFnrWR9r.tTbր.!߳졀I5_mhHvC^ȿ-*&QtX+WM-<Zu ßI{?0ƊhjBy._n/24D)|5&mq`ͯjߑc&}Gt | 5Lw:"P_O5eF*fEmHBF*pXEL: NPxL"UT1 }<zU֎|x0Ws×IW-Lԁ~B,mD lu$2YnmvA-VO…<^-=$c+--Xf9Loq~fMh2̚P$/lbЂl<4Q. Ĭ۵7ۊAB*\¿$n' rqq U~#yŋAq@})B4)S'WѝhQTC,u l|uA2|f9HY1eڂu2s [5+LU7ED 2A~&`.rOuj1_u^TepҩU!6e$TdþF@t6@ŷ'T5* ڞU[ {l\=ƃLZC%ؘ5tA+Y'jeQ m=U?WB} NxX__o9JM-3Vɫ{2Hs25hg!Dt􉨘Z{cU8͐. R{p_ -Ho3*./PCWNuhP7ԃ7USME-;ʛqZ&jYf?Q'a&U @jmm9_v`:vD΋ٛZv+( S XբM\t}s lK ц;+A86.K_~ڒic|T<d)"c:L"&{BHI^.P:52%aO&%IɃK1!K9?tsyMܘF|+)O8̑?Qx.t7xNBMz<&(mE.>kjd^ ިf[%LVRڄ]0ėtN'9Xp}qKq] % qduoضHʩy$F> QԏVo8qgp3#(B-/A< M^|Be |rV/\n$|Ŝv۴pJTK,8bm1րZ&^\n020 L*56c*FFƟ3U |ٜH|0B)%geG11m=@o2. Ѣ'&,,aijWw֐Fw9e+xZdԽ&$}|7&FJdG6պj|_,V8BBi]%Uj5HJ.uxAS.RkJeJa)w}h>`,CjP`D=u%gcɤóܳz =ҵsYc5[#Ul|s=U;Ȋy%"ɺو ]bu~S 6&dkU)ċ%ĠύG'2Q47nJ g+Zg;1x]^Ӎ$2 7Xl `$bjt EІM!XN;!HH µGBG~4onRi3IdXcPiq~9v1(LicFr~2}F:"_NG[\&HanxJ再@(LUOEI~XL{ d4wP$o/$=뉑RVu54څxPs6;X sg!ƒj䠪9oӋ /-6bB-'߭j:ȸvA&,sbzҢ=7pN!2YP=N-d%$i#|I2)pɛjgd.گgT6PWJr{C{fPj(QC~ee0=zBҩ~".RB[wF{ɢѾ @~utmq"G'upf+*Tb1.PZ͢(xH#  *`2dkB$TNLrO@mwCY!kS#[]IWE4LV''?aW'ʗ@t]Գq|k3] pk"8q.ns}Aͥ*2#Z^9mfn}r|a1gE6^1a=MP }V2a8RT// [ogc '(@BlRHvahksF_b=6an뙷IgCTVZrQЏeRjl&n̓~"(: ba|5\i|gZH]J T3xXK26BxR&#sӹQW4j0ks Ir)Lf1`[EdXLDUrX\x$YW2=d K$Ɔ`mE. >"u˨nJɐ9@c,n%50$}|a|&mͿdm?=CS8*|6Z p. M7P'kʕ@v^rnev]lAVfQm*#D5E;YԮr%>VVOn{+11Gً7[ݚaٔ x+ 7x[dM*>(xAA_|ڋ%C%ƯD xN]" p@ L~WI?qNv9b0b39MhbAsK5^eby(m]u#wt)a٣N b*`_xDE 6`SR_}cšBl-!ߕ>=U"Yp9c6C)BU/z<Z$<=LCIMO5T}7=Zėc0B&Њrjޝ֬4[RZe6ZGNn9ei UL19&q'-$r8@e H˳/z`e{# Z2OZX{3YvZ?o{C!lZI\.kA߶ʋ\j K&]'&0 ©e8D>C"?N ;<uBCl:nmißlvݣߏ<ʽWrxv;1#pވL̪eQUa殫1$Nc IH/te./qI.sf&~ ͞+|a4c7x}=Pf(PYzףK` !8Renq~5 Uk~|C`Y!.pMxf@Jg%8PnF-6_Qvn5֔j\64f81#p[u|fFs$e]GRBMdLڏEJ{g#.CAnqYTRX=YQcm"^ޢW:ghnkWD"*w1> N[|E^V/… 2e57ǗlC HIR!+Qwa{S)jY#R-I>_l[v2`Q1d9xrkU9#|c|/ј$dI[rvlb+˄G.ծ?kJp>htaFUbȽ-ͨM Ry A5Bs~n |A/dqh\&#|e|R;<܌;M rt+*  !(.OI_^p:5Kc+FNórzV(Qh9XSH D5r7I E"!쭸aD ?X 7؞cX|pB6RS O h0΋xyp.jhx,⓰>)8*MΩb>Սx@NS^u,veK6 {΢ٮ@r1n ~>aQB}/D; ۃxj޾Y/ M]z8nK7ʗncJ{[M؜鿳#[8dB2'!>Ɖ&&:@Ul_]Iܵ;ķ'iTWp~4S#NfkC1a$8kg_.>ܑȯDRZj4)?sQ$*G~Us7^LȃHxDVH{G㥔=/u4iZeyDQVh:5B^FovеN&[}L hC@Ў^N_囎\jmd@,J~ĉh\ AyY@>nL@~B\I}^tZlRUCKII5&.5n2g~j EĕlX Z5a ijDzR{\+Hw[Ȍ0W/TrSi_L@pBƂB*"K3#|Nl/9lI_:fRxRLIŔ'F%NG7Zxރ+,9ɰr8U55J#!0~+^Vײ܂/LsOpϓ5' hq桩*qpp \EwHZ}V.($F$?" vG {깐#]Ajq3(ZBxP)eQU]O@CE >xי,H$q0 AdmU-$ pEiI}8\ !Vjoud.JKuC)64PnqHPA񆮟dHA#y후0 };Do/?O߁ x'eTJ* m5B2!V,Y*Gv?]om&t3ݪf$C1>\@x'Q. 񙱰#F3cQrTsX'E<d5 s.w,&߬1$j-Z);~2/`:b$ KXm' ?]ïV:'Ym@$bx%`,}+__y26Hu凱P=rZ5CoqOb59cl4JӅ |~Fu'IШ[?C%]OuVg^i1u*)76E Sw0Z*7pȣ_S8víK23mثǙ(W%]R >= -3ꍽ`ȆXKFd`LH|ߗ芪2=3,&O3HBX%myQϹyz MY[pA^/JS{F )xS\[:AEЬun #bѿ\61\; iμBU&i&/eD1Jc#`:Zqqg(fQF `@ܻc㱓QM?0Yyx N-M]$ͳUD+y]k$Bo P\G@XE8z t:x/J @Ψ }9ӹǥfrzIY(o J lH=AOڮLqNSxź qJ$}@ϫWo'wc|.tgV2ϑ>Pë`ǕKx @Kp0vJ$XrTO0;yURӨ\ˊfXRrLVl?x"=!J|RrS½qsx>3pQڐAQM)T_D }SHkHt"f r,v+y[uWmޕ_Fi8'[eA1) 2&&q(:q)KJNlr)i by`DLܝ/U`,b/p4#‡|FG}o\oIOLoQ JEE01d-4 c2Z:2k]wiܹ'm]n'+2ɩ묮TT#H @.IL#V|e9A~R:8lfFbnM)~;FPMrOwߋ4(4 |Ào6@ -/74 @3o:k aS\Mt~І"x%]Y\:RKu+,iUcP]P:x r/Ϡ;ghŧqh4Bpvcb{V0_iGQك3,N4NXp3r ^kMp^ˇ; &|/w9e%圞gv*yk\XHnyVd6 :H>7zӲ0(ǪލdIra?^wGa{f\!waUtX'8e_0 8llpi՛MgVdߍlO@\DŕПn$Θa)D%"fMcv ~TQOD>B7wSP~ }R/{NWd ^&\_X0Z$/"zұd F،mRmS0'U`Γ:(x$Ej<` hvS"sY!7+߭< Ld(Wa0H[Qt!a i(O<1v}#ҏ-\yv2R'1@ڀkXK=3ZS}dbtKz@H<iHx&`ق*@)0~ȩՔ#hUfqvm7-nd b\j@ }fvjC>.ucϚ' jNn#+d<6nVB=V&mL.!,9)A@~ -9_8zHU 6Nng_k躉8Ƶ^}RF۵[M$A{3vMKs+փ30hFD485s~@1>3y۶h 5jP4g(KFRŢ]HM*/~QmAsM<{- 1`BF鐶_{/kN5{TwNToxŅ(9h譤K*w:|"&*'2& וܩU,v;I7BiWmϧ![ql3¦4"_7 |SUt4 lרK\򁭉9|KV _? 詻SpRރ*<4bW=&HޡF"&Q C~c:[Y\_ C5WVA6~Qӑr=2KձXYdg)-҇]VI)PlZ/r? ┙)N{[ٜ H$@~;$}uʱM;}Mҽ2S:xz'oGXOI]Q @?݃p>8!]}@5y8,T7S R*Lb;G xO*6ė,Ygxs:Lo8p$+%[_&ya#:)M?`nlV1SK,z$bh^pH#j>P{EXD`_^WjȋOy3ߤ-geII@ D,|PM}2umr~HҐL@;Ͳ u)_0툥6QS~ۆm>xԏrxc %ְֵd `>'o. |腨[Vq?y0֩M'7$l'K=2lUA,Q:$aȳR4|:H(Άp0=8$f^%mv.~nँ$OAdZ0Ri|ZJl2}!0 ;7=jAcA<<jg*ָS-u{.Gn4DFt9H`./YahyYԺ-i /5q_e ͆ lY~R i¤56I)]:`?eJUXƞlOQBY4 F@K>D u$jD( Q(^m+R|3'MBT6, vsA.+񢄥@V($F{L ףIǥJ#FQs$!U+3$eE&O<D*9XzN ՓMT`|={4,Lk@oJ_jd#I}Pv/wET&]۟\2 IM7̍f\tgɝ5{=Mi6!A g'|( tyU;0%N>|yq+,4 kȄռϥ ƠOByJna&j݇U!X5h2\@,7 (<}HwB1ir[oJ=썌 6b@lϠԚW CcOQj 1.uFf-.Z(>=h;d&XuO݉Cx˅1 ew9 r>m?zM+7W nOĩpu!Ep Jx*2M+D`' f "\C#]ȘpK}T{Un,>I`29lOl>(*f"ZGԧl[ξM:ZK >Kڇ+j-rI#`.[s1RZ-!I`K]Pi;orR%_ŽUIK+U/_ OA¹3ҩPE).ǃ-bų(GX^.ۗ.OoAQLFPv6p5U:%,A̡){փ`aˏovyԜĕ$$BX-jekȟ-%[Sdw~=fo|Y97zas`z HRx"#z.<.Tl(0kYש~fjR׉_,%w!㐴\UWN?L6B,VwƶjѠ6#CPEJicvku;Fu~zorcV2'@I@2::t8ig4n&Ş6Һ$74jk m 6dz(yUIHh߫ȶ|^&;~4zL =yuKQjLpaշ] <{lІožF@T`SjJI1R>Ŵqf'IJ y7,L* 1:^Μ^{OQ] ʐd_F9!V͠Et%DhTΐl`Ay‚t$\ߊVݬ:Rڧ#1` wua&܊guFOH;8dz^SPvD Y}S\!YЗy&OS.TeqLu{ U '@A4-`ᾀ~@#, \U]vn"a,L.MÉa -B}Ns~C9C+Wi˚ Sՠ䭀[5!!gqרC[oNLFR )$ W.mC \( R0AO?+һ+nMZ*.@nauy邟LF">ԚTgmК_U=(,8RaʋΠD٤Fi.ܷ4-\q lb3[a(KAzEbtcTa_SSEQ'6)w @Cv 3P! m4Ly,Bjbቲ%#tn70Q$y'[z+ Kh`gDtI)ΪLhP;ӳ/*ۍڕ9iao": C0ZV PiJc%sT*P497+4j4VXnh=[a\ iK.0w]ti:vjx, =f,'ی-D:+PHi2c@<$˻ K߅M GBm?q¡d揶ft SMc?7@X'L !;t(rwX\b Sx>Mxnybo9|wW.!mλ4׹1LR,@)9qɆ!s0>!~O:wKhmFLyhӪʳaNY룃تQAo3, WPSt6L΁R@V,%Yo%0^ 9%ȹ)B|R)8fp4T[c9cM4b}v;m@H;bys] y9sWA"UBة}lڼ4'-˅$;gB/a^1s-^C5y%khc>Tj|yT W cR׳pr'E*7?W&8XvW\)\}͘9"x4%ㇷq^=, LY%'21RBnVk'V0`ոͅ}qCRk|mAP|x/01wVBW Q۩:vWH[u$FS1#0W~H)WC猺BI;okۑP7l+v3:63h^X ܫ~]/PT5а"LF;3ޠ}v6;#g D: |d Q/ 0f} ܱ1A4%[iqg~2GqZ 7`mHzjbUvcfe6?._lmw ^ Jƭ+f6 @)SKN6Uj"@$ o`davx$TdOį2M7mjL ;oO}CUL#KK>tl.*2F9Px 4WV0nm9.ԽzkP+x8v)gM 8c5T)t]X+;ĝ%$GC1ij/œ14{-JC/w6߃Ax&o=L'uO+i 5p|ٴ0J?X$k~˔yY`dlWO,UTC*íJN|pNүBe^#Hmtֽ![+iFYC@)!HWns,fɲHk0\FVHd"̉TNPp2#=wLQt0fP(Jlrqd&-@_@7^^Ic6418=\uGtqAcU~"ٳS@s5}}@Kl ܡm^ T4-Ǚ჻_4{C6`Β ̞ ھ}'g1pw[.,pAUcl>/y_o |r.|mVfx}C gI΋)' QM*B*q𚮺Q#QK[̭+tr< C<Ѧ0~rߣc7;9wQvI}FӅUOUPϿ< :L0a pD8qMY y}Dˡ$tOE ?M q!`}*%F%K> Ab;|5($큦K4aK8H6( qK<#nf\2̎{[끐~b3UxsEFg̟D$6?4JHer9CF =ah`I!-SMWoIE1:uZb Z_.A\D"> RŶm+j1 o׏ | )/rԚMB#)18Lr5p_>D"B?w[>0j?w~{e}YN D5$EkMk|B}!mbg<0UZ$]^ӑy5 >Rهk/!vt@x<{#:@OQ⫙X&ne X C<=FyxdQ-AE?.l+9fD7.x$ QE}SGQQl^vyw 5&j*#Q?MD)5h@9q 4! ȉ`[-MDx Y~4&ZH38m Ij>1yBEY4]CVb|gO#X[zt@m>צźro$465&_DTOVv K|K 0ϊIri`(mQfZs߹ĨT׶Lz Ut$},1+!Sxk^=L}C*,%mu;d@y4ub* `ȁ B9孇^Gftx)/X3{p-jVd*`[IkW𔗜3oOdO ㆄ?ʷj[/^CBPmCOS&̈́8{g`Eywݹ*٫ˇ$tzk!gp9ID~`])VTy8)iO-Ti&,d(JgD/} h 钍=a|[_T XuZ{^Hʂ )eǷy &? ɫ{!3*i۸z#: M p/+޻[?#|cj@]/-%ܟO.--sVA5FwosY<`eMfO<|N^RzeMԟ XqL6Cq"p'8)ɢ[H>Ć_1e:w4"NHm8*-@gj t;yM$GCk*W<}Ћ0RPX1]P}.*m>ݪ"i+c24+]rĩNFLDf`rΪߚס,wK<~.Nzb{/1lc_{b5lz_?&2Z0y.ױO>fA,G]!8;;s3U } )~:f و:K/up} $Ig\-B4n_0#;F E+GYo\7dR$ 3QZA`QKhvϽ34=,YJc @b8Wuli#rIDлE^tsTg P J*M1h/L" 4ҵi|pPG5=[=̡SA&e,JcCr/p GwM b<( De`TCx[Os1I&۵`kZ׌ז%FmJ`ٔveqQ154Gz87["ʙ%w raձ P>}[ά7\+C?_ ,/Js7wZx8xzK(f\`GnC\Zth3nT$x?t4ҍD|n=B~ ~I>>jfj*{/7gtEp`%FY3'7:Lw\s4mif [ cKq2j3T@Z"O!آ4ł:7\A'A?ӒG_4™bPoMTZB)3U u.p`y~%֐9_:E!OXuJr -ja9hxHe$[yi!xLRڛ xx8Em)=.'?r=sDXӬb6&&Yf!6SP,)l FˏTNe9U-|tmaX ۫-}op:@֧b,8q тB )SK:l5^R\Ǫv F[4ڷ='kOG $ ?[<9!rÍb]$lɧsoV9p( ZףBo>:%v ec6Z6G,`5 -ECid^;WpzUBG9(T);Μ½׌8Q )؉x4y i[}^5mӧjΖoIA%WIhA Lk5$71<]ۘoFe >F f / 7]C5hz稾 xh>%>u[9o3qhhGqso$W5>"4Vz~sLK \sLoc #x)^>.q/ ؑ8 \Ch:^+|ylfU;Y#퉸E@%ra0#εnټ &Hhay&ԕMtx_B>hH N72+zx1&[S{ڏ[LnI(p: M-+)/#+oWW~!04+Ԅbi߁kIKvw Mk|\ 5e׿ܬ=-hHꨬRweIw5yAUi뢌Lg ٢f!4 SjBV,``#Ύ0T=0ԃwul9Yau=৘N5,AY20|:Q*X.D'dC*G 0B` cmRMnӺ0D:5qDžPotMoNӮ5vأLk0ɡoS_ć'J0\˷}-3e-6GA P@w^`,n@ ~K`Lۮ!T /݌NvwxghsDlsiڀL__ZA9zћBkOGaElǒʒFֆ <"xt):&|*5̟KU=W uoƣ}$܆éELG!R xqƁ)#:,'9k5(δ&9pEݪag Ct<1"XE\IIbDϵ1L{w%&1z%#P^ÉGˑ>`rngtDثOP'=GqBi2;Yㆾ+N _1-#؞E쾳#@ָzAGv)qKaёD]yvXNi?W UK(u(vmrU2ş%(_(ͮa>IB\V_3I;zoC%:)lڟOeWmЧ+S-忐$cE ɳ$muרL#䏯$\Oe͛-U{Iɞ>^U|JMw9YCK?oԹ걼*~89ds]j^יaآOxJD*Q[ 4wIi,Lׯm_+"zQ< MZ-'HO)0#B_vf@Poʩ[d&]\bʌЄmTxWؽChtafJQcn=7v6>ϱ|}0V{y?iفd+c.*x7V59ԉO2MsLI8p8?ɟ)Oa}u^fhFZ0mcv5yȪfH&,w&2OJ%#NZ1> H&bJ+022?UmmoYgӪr/# $v7ptkc@xpק?`8呈X.sOzΆ4Kۭ^'EIΆ0W^~~Sȯ]N%_"yIY^]h.!%bKS_ط?jZrwA3Ihk r~]D tFc'1l!7EXR ̙f)OWJT8&Sr8ݟ[ תhOG9|bٌKoHNAΩ~?5)I-0E+Ya} ]Vi3>n佊/5B|:&f-I^$#ț^u}v#5F FLkWJyj ,#`3НV2+I.H~ !*bk {G]ѣaNq^k?-\n] C9{hvtӠ SiSvLRG"Qu$N Ru S3_GK4] hN!c#aNelӞMDz~ׯuXTEV?C[[B%\`LOQTPܹe3rCQ=〛ދZRd/L1O6MrT}K$cb 1ju-'xr}fMߘ5B=v:5P陓}mj ^zF ,Bݻ.UJBQOB׌]i"1Et' 13@q`9ޏSZب8 ͜6[\P,g<ګSm[< S(Z*<:BLZp٦,~0[9NwR 놱,#dx5L. JP~0yҝӖt~kUa P >wfCͷSkԿ ky:*̈෽E,Kc DEV\ۨv&Zce$ykZY=:-_UX5䮅tPי-qW9K: ݈Bm.APfKO[PQ ,$Spx~d(J{.\m i!Jrgq|7-SFY9YQd) VFCKK|_sOFu3) &;RvziC+ ,]xw5iM9j?f6BS c,n581 ?5?PBv|b= A5 ԷulG+}i-oVp@%'X*_l)oȨObQZδn>+ǘ $`ABdT^fD.pӱ= P9ɫmr WTϸjMjBBTLHA`>^D"ݯiB!JbP{( >>?tTo٦X]xћgtu:7/^ʮ5mc07#9Щi|~=&S?olY(u5ֽ% j[I~]0# aܹڟ[3m M{=.Th{WΡ2wl8oo\3BYH4-[/_=vI4p켴 d .=qsM"ļ`89nF,,)e9@E~?Aص]ST8c0cP5 s_X2.RojJ<]` ˔,{iR ZwpGpy%d,nF%a+/A*̎x̨zxUʽ#oGLg/P,L~_}S;ɖU6 h[Wn1S7N}A 3>Va=O\!?WՉH|~0(tr- ,"㌅l6(\ Us$u:]W-u>vkm۾rxN|KwHĆ'XH)DP7om7_ʙ7ClҢ\;FfsD Y]P:)2 2MHn)`Z7393>Å;'SeJR 6tiŇF@IM(h!I YR0PS_ޠ6@x LY;\Eu5F3W8_ݑ k~ >~|?R +>aٞ9<Cz2eՄ=C%yJ#RW Q$0%Th3&).8 `Xk~勃=A(;mVLta' *ph ;,z;{&VR`'+̮7}Ѣi-L/-7+ÜFBĞLS?j&ۛ)SpbMy# ūo|XQ* 'J/+tsw9VsD_SA jf !̧Tuy,K1`3l6!l/!WNZ\|r'rxΝv]f4-f~xґ/+D2AڈXmݞ'Y })E-SCjB!m} L'nmny/Ę>ݢCpe ~?26H:lMN#^Fo3|#<ϵb=ʨtv;@ޔ 5p2寸IN{-iO- gEh6*i##osV*РEa/x%76S|˗]_l媠>e'N߿#]~/gjx ]b/,jAm[*\ri1GF0E-=*^++gsaCx1oX bEHqP)gr?"rg9T?eQ ީ$4S6;` Iv͋zJK3Ih o> G㥮b6n˜D6j6G*Dn]f&鈒v/Ҵ|SƐ`_EjMִ u˛c@ JԿᓹ4+J$82F+VPi}8 HwΊt^IZ #r-NB˄]Qq`0ڦ:j'ϊ68;b1Bf$ Yp GjYTF#$l=UEbku\N.r~7j%Vg\?Ek!Om/*:9拤H 8BbŬWлw֚ 4ixj+ @p !{ʹѬꄉz5NS Z}]ɢaOi3A7nNTaRq;apH{]x!fS徽L<*@2*{~!sM]v~դIPilwHk].ܐ_!]Ns_-yX0߫w+ij[s=JCIónmߍ tqi~ ,\lN63į?j |֞V^ íWlуj_Zkgtck]@H5cO0n&W$! sY EڅuߖDsϥ9`㑝F'ΖbQ)*Aw rxVa)8ő>M?sܣX^kz1A/f*LUi0f)i*40@sF݆g)XK6zhƜHxVKպH; i{ 4 K1s,6 NMb/h݇$ǟFz:lC;PD2YG+KhdVmv 7HgNu,/H3sQ3^l7nBYD*S ;6,9NۿCLɮaݮ[3Ci{n$çj4&큗w h :qAĄ.'Hr25y1F"l'\BISѸh1}lN$0 N{?Y5v|N!6yȵJy>ƻoů5JX#HW+숲(qՊż'E?_׬n7K`t8o2TS} DXk F ެ&h;H5'N T}u,M%:`4JhD7p=k BӪ[I {pl鷐P(!h0\8Km° q1yg!=3|@SȾus>K1"TDf-'-L3OY0| {Eit^#o7<|ps!\,"݌%=fĎ7sEas#S| ewPA6q/͹PfE 4|}Ia;r9HA"z;Z]r!g1(>٭qVJ#UsyC1x>}|b"{__؄':&ɂoҺ>n <XQ*k1%/'_\[*Ӯs`qfWCiCM,IttqgF_IS U=MQf*LC?Ñײ 2#ٳ9yp *p\qf"#0߳)%R80p[;}de{!"e]-uwpQ#/槇*ԤI(qv6iq+:q<(%o`jDsy` Dm42ZϋuLf8DI&@S-UH0ox^ IZeH`Csl8YEl6{ї,~uM(fhOFa,G8XL⨅B<1w~u]$e "Vg ^.p`N+φYt-҅!uCYAv{ÎS $>7M3?8BWwuѢݪ)Qn t5Vv~'5x7|o~R:+#p6 -Dm_DC}]@Mծe}_:k H?ҹ 3 P_L@\s3!EÛ"/dnNrhL_l=xZ z[US0ja>nP'd+_ )c?-?c^O}SP?]D?qmJ)d^alc(Rf>=y퇠vUz ᖜ뼂f'A^[6)P&[VFx}[ ]V]yN@jPr&[$uv m?Z^U֕"c.*=4aI21a~R?Nn9\\^!^4Z&9fY.n;n_V6םUyoC@ED_PL^"ƛ@{8C_4 ZO&pE ?:i+G/✖`}ƹ}XSR9ajCb1hԃ ,R-v?ԩһװ+PL < I>F$v#N7lD,&VY\{KbT94]ȊbhU1 c T.Mj0W1!P=X(DϾqHPqtb%0t7 fPXA$n{ mݕB9+2~ِ3~X!e*,r:1^0+zF"-&(#^o$&r V/^ID 8=cKЛ{ %6`1S}`v4%D[C@򜧋1zyu򡕟>Ɩ4Z{)G $^KL _g<gU"9ucC^$;-+J^F]8 4LQ:emvQ h$.'ɣB0hnI.hK ȃ+xzӊksA'Q D» ?EߐexTB8iFGhh*%&޳4¢wfB('[,'݂PE;LUniv(qDDFb.ZR!'xq7c |؉TdQ">n+WV$i$ @=Tĕ&D/|\noUIVZss1DQ* vHDTD囿La?^A4Օz;! F d#gŗqCؾf׻^2"zڍFfmc:c7m =dZsl? hvN]qdGƅF<` Zz!թ I7)©~9ᡗI3Uz DW.zR;}݅OPv J38߉ ?~WBhErFFNSt9sje,a/@%g|!%!п qα'5oH[H4l=duTk 6Lc lkDaVIP3<Ŧ:&{в񾜚C8]ŵê/UBe0θVa;?\8n P0. #I*;j߮ÇȐ3)aMhCODNDia/gC[b'(0ź} YѴlA'&3.c̠X^&4V țLH@OQI54of Lbe^@7s (' ԭAR1@"&f;ՕSqdo)i j4twhBl:عnk׬[;6^S)F+$mjX햛T(TJ#zazH\%3j.ÀCRfΑ}KhOǖ׌{/50<بڧ{9t{mPq.dW#v3=uy1mҩLr;7_{^N p.41"ri:(2xo>_7gˇ3,d^?Gynw 1]5D7L aa~<{jeґBF$Iչ[І턿 H(j̣թ)4M:yyr>7~M͸6 cӕF-SpgPOoWbbd[HƓ]OKr.wӉ~r4_*P.Fe?4;-Ro؁|% Sũ8S# eP6JK0=_A]RsiIXZ!$!< y[<: 3zF cq"NMQϗ0L f}D$oy^Uh" Bۈ1;cM\t fU%>D,Hd33>k[Ji^mS St5O"&J}wsEj|oJEP{۔A 1iQB,jm{2S${h,|c_<<N TWzS<uOvfXi'mPyN|$~-`5B껧$`,zb "I+l_ެѪ5KԴg"zo)7V.m^P IJ,o*JdEjx7Uױ~n;Z 2>-cZon^Eaߨ|+ fS|-<1t?Z|{x+$p^OD 4׀͚^_y&~n, 1q(w5Gp/̯wɦb<, Dr$+ '#m C0XO4l1"F﫽#n~qxO12Ҷ#: 5NFJPsϴ(/ۢ^::1Syniٜ*C19)Kh=PK'>-'88"9u!co5Tg{.MЁjh&gB؜dšU) .š"Xh^Ң|7 vzcG1,p/@1sU_[&//<Zw(ϓ.]  ^X5MbN|wt1U(99NE Pϐ+/]pj0M|`~Ʋ>&9E`-cMk}RGS*.6~WԦRtD,ROH4mފ.5k c16[A / c{J8kp2o>C0@5Uju_oq^9vG$XOݢ8.h5&إdWDcŘAxdDURH0] ctb sfBL90>}k8B2Z!̍ne@p!#o#8|@:eJ ;> [7.2* 7jMej@tmՙ ";@Ny؎VŽL7dcB] 'HNv<^TGQUVO0e ]wQHN螟-lM/рgBZj*'+HT3U|;L 2WɱK^^)mxsI r}0nQCOFuӯܫع".P6֯?3XI E^<)_4y(]B dk]RJF,Qc+DKP7큁jж8ZF_I-%0-Zt۽&7 jSf_S=*_Ab=?~|GQS ͕cb5Wr-=m`G6.yOW1^@{M2rk"$ S%c'@=e'eX.ՇhQϴɉ\9\.܂IR2#9C+"oi_\1 }D#fU 9I2Pkj4R3ekORqacXXGs˔7ك cK4 B]exe2E:o4/u;%Rגֱ#g J(KX7aK׉i_aBkZ'$nBsBs6a Q$?.B@wQ#'o E,BA+3FHþ]+d6"8}"b.e9|`*AyaU 05oP&M#$Ơ'γ}XȘ -d)_$'Ch;@k.X}(R Eux2Q .fغ8R:_I;k2o6w+#H N GK5M !DO`ԕk;hqwf&3qi|bwB<[Ʀg})A0ow׈sMu" C*2Ϡ.Pc~/%^SeU5`ܙ&UYV\bJ9&ڛ{4lU55\~ýKR-4J>f}FNT̑ߠ Ȉlu`wt7}snƏR4CfCߪ5{9mϮ/۟fh5?j?{o!#Vi<_Wl'dzdŗښY3M?T8;H[DN?$c<慞^=0O % ۦc1m{&\zy K͢fcE{kKtXa Рe(v+)n3ETh*.m kUdDoI:)-yC3WoӾ"nP*1݅5+"~]MP=Kw^|Wh[Zo $)xf~E֙ K |KN5_੄E:F%dFY|l?}=r/v*i "Oj(I[%ۿXd0BSzT&9PH+p%Iʓ@))\踯QٿI%5m~\ӥ+F}e蟶ۗD`!) vXmöl HGD3V*bA4=7 =e*5ssb3^/ew+?L=$Ihх-IC6IlfBgQ<qXAqJzo>cL[5p겿+K0 uRO6aO %Q?\?'No 'vb8B@3*_ UC{ 'qaB/\ S^x:\A0ČeT/{V}1LT^VU=jPʹY9D釩UB 4c lg<_Sjdʤ}rBG ɠPj{FkK֕})[訪_f _(tqJLdnegJlj7UTĴ`E^2P; YFNtsN-Z?2FZ#iWA`" qX#[]B{ ʴRG/fnj3-~zVrbdYX)I]8|h1*0Sh:P>|lpd{hݣL(,MzI)\Im=2K(HdI@XkwEA>*# MoJMExMm`UHAg5 wKO% !HʼlTzˤ\12OSfYLB}g4=JBP5Qwݞh/LQ\ێha5~IZ^ȲD@asn}6 @5K w J5 .^q3{ _C\RQmל }bhj@Ft.KH)p|E38[1ewߥ$LzeBFZ ҒyPcd5L |M bCp&:E~=Gy'hLDž1N_ Z^[7EKіRAcq_{g_4!NW|.. ]zx p^BvdzIMqH>H<6&7 #vyMZKY#/jNx䕚E܁R}X!>,^,?.fi:LATJ\ 1t4ͱ")wQbrr|^?cP>#y+M~WrDQ|VebWvk"Q}) eKV%Go7[sC{"]DAfXwވ.u|}ܐ<އc53ݷԏF㨭 '=r*n֌wƾ! YM@%"tCt>K?1{AN}7#NSZT qniհcm\nH/C{R y 9A|<XnrOVsTAo3xM\vdn򼪷l<F@t"6 Xk8pU"-&9L ؟l;ttiO0FX|7PA90Ԩς'ZAq3=MsFv!9RDȤ X*#gI*h!`,Xl' ԣ_)ͣQ?)CIC+\l4I}vŃzkCM|U;şM$%2LXCMV 02xMQ*,ؽ~:zQN3n1&EH.v vt%g݈Rݽ;z0X5=_}~r=iDjLDo81AB`p[MrR7b3ue|×hSSHɢКS VU@=VHh춂aеr@*I(L *oCw( ݰsg I˹-0Mk`sbBneK~ &5,?^c^vmU8$)gy(S dmŏ[w9r( 2Jb: K |k78WĉqQA`nyB!֨VZȀ}G_-ò9X6}@)2mcTجg>į`UVVNa=׎7?VAћ֜GTL"IK Gb0{b'i>8ĀL??C~bi O(1Gt5F%E~塞qn jT]YQlF#"LKOqf+fe%x^~U7+#CsIq vTKʿ͂ZyY=3v~-RTN9/wj 7Pp$62ɑRpxnћzD7(I񂨭4^j&n15+6:щ6#bȺuZ/rw囐Cv^IV^P^͊aY+@x</MϕIʬﶿ;ahKIlxB̃q7u&A2ƹm,kT&.WT r QAngONj;Vmx--͑ػY=z\})FKɏR@ JL5GS HCH6k_ $S! ˜z`mG٣UeN@A쑭DAeDa{)qYY m䦀E`k e["kDmQ31}kl ۝I2}\#ZF=02<9ȮP,|V:oe^x3Bgh1#+. 笨ageL. | 8|9!xȥ`r8n6qbB L8d!N /{DkwrJnlSivxjhJe 5+n?#&;'лmRZ߻uIn?SZx[s^o K3 3hk%JK(GF;rG+ i6|&Zv$$%#U1ITJ}? d Zb0vJa$3i>9{:_e>TH,5D Oٝo_}#P͋I("G0/@1 oS&X8-1i7[QIrEux=ǧskyH4J!NwԊ"N^Z8>MrKX͆*()}a(?A,l?:%_ee\۝)*ĜAR*ӣ!("V#_i^=D2+[\O\ldkmu&HeL hu˫:3sw SPUny $2 z>< 4t[b(eZ]$]6ٕM(ߌ~As6LbxX&xx Cpq>Rޚ2FyI6Ԃ]_U6]P͢iJ( kyר*M~Vc=t]F1%:Q"Aj(hR[*HDYj4Iݘ1迒MGVw*R /"i7ኙjl  "(TC:5_%c-r4T&jt]'A~k̎iM<j{٢O_)HیTzqVZs31ߵR9wЈR@HOcm&=껔ҼĸJCDdyotaBqd)Z|>z(G9t؆VЇi,!ih#>wN?gB/bqF(#nT -25Ʌ=]߾ ;iŀOg A?\8SԬȐX8KHwh b$KZ en:YۘcfYKgQ4 L"BiQ]x,Qfgڮ7ɶg2HHv)\'% Ȋ/JQp~&c{PL=؄{@Rr㶭H3piE\-/į Mx8@|w2A?5{'0-V >vtscXUWҸ,u70,*׾ZCx.|Sf*[L77hPj)Oj_8!`2sW\=cfXaAdm`K'/݃{Ț7@)Xdj<%n!I$o(KT" 2Paج B*{0θҾ <[9Akh/CX3z }J:Y^ʄcN̉ӥ1uEjj @>b@$bS<ǁlY0u (LJ$'+Eswۈ~{S5 "J@4ŋ v DZ9Ǘ3lWsR4R@1tRV[ŚZ\V]P~t@.Y Y ǩ}w"O $L /IT5ΐevN8.(~`O^f+nJ ߮:4V*oN}zDXHPC0/d_#0m&J 0W);օkU|(D\YRE bz,0`DRzϷgLQgk h&|r֬Qzp.i׉jaЬL Zy{W7 qʩ+Jgks/X;nP[qT^8"ʕӿD#[ۼ@M7s^G6:˽[ *=%: ,X(ۛ׉&i؝:!L}\da5.W`o0H44Z\WhrPR+uAD=v6Q(an|f і2T}dw̠t7T=x =( 97)5 zNMQ)6H$B֋Ty3PWs;G ׇj2kex_bv4ofի+kLc$צ4* 5`z^heYwɇrmHך)q?-O#3¬ƖԖa?nBm &6u T%ZRCR 0yֶ֟ ]!u5:eX52CR,,X0l7΍@Y2Y[s>*}? 7 p" 1H< >+% ߭muˮ18`XJp/5Rs7Vvzs㭆ZWʟPVyW .{wT<臿i㙖idfEYmWK砖LD"4Í󓤑ː e] Kf2`jA<J9K!8&rSҿsvOfV0T:Vw%Ȓ^ :P(ޅ׫k G#oh 8VU/-SR(c/̟ڹe^Hv=+vq/+RۧvI]I{EE$8lE4FHPCV9VEu\(͠ gd 1IO@ak3:Anh:F>'"dk\W2Em"jhpOs3|-zǹ~e{֫G]ݔ[_o|ޟ74 vwllh2Eemϖ>:Mo^ 8BhbpB}Coe sg0~SD0bhRFk](-`S'+8Kq:4?5DUh@B΄|E#\?*u^ :p0?Yꌰ`Eo>0GT-#˻Xlo8DYMaZVf|Y 4xqKm+ m'38=7G?O,2w .ap5ل.\)j-"]XT؞//0O@~+Y ؆ _,kL}1v]zlFtvs`Ƚj(c"Ǖ4;hߜǰ&>7 nNӖ*|U$S2R$L^igR&/@ `Rν|+hEy?D#kHWe| !H8>TN_p} ҫd2?Iev#11FH`cLhxoT!>4WAc dުY)&*1`\^F$uFq8DH?{H=ZHdc{GNJGQՕ\;SZ`L8` a6|/q#UL*dy~ бrƳc5O]={.]矵+(W/a>M3_ײ!%6UˑA`܊pj/RǀM#4ߓvFc~!pęf.D;ј S3 twmR`răPOM.JNfE&U+<ζ$Ol|`-5 -Zd؝kObt(sPR~~J2@"oQsԉ (r`AN\R^]9%-1>ӈ^z9yrPǂ$f }/('£vD!Kºp )P\ey^X%{l+BmL@rX T 9<<ЏA^OO8zr \Q_V%3? jCA]~這ijJe{˄vg• u$C_H\1S֊vH0ſr^Wm[? \7?8Κ2]MWa[[ l7$F1Y2"O42JLB\a rq,k`9:ݦJPYMiLXH/+ѹ+; H]f?hB~E"ǘ?U}8fm_V "O5F"Qy(|qpEm1I~9qa%TFxͨì R]P%/e 474&qóĢ߃a>{'pQNʭi֡" q:Aa4;]9Յ/4G]ֳFK.ld7ށQ _ԛL W ~-Tjeb p%ze<ڌ6t@/GaZ|.:VAyT'NKz-x>dV˕n<đ+NUم ]ڎ^qO<`塭cM\YD4zX; =.^x,W@O+lh8oKZwpAn,;|%ց8fQ^% f6?rp, .aęV5TL8N1  Z:L T5)B\~[AF3r)3@482)׬H,XB点8jМgݚӦX* ?"(*R|cw+Ӳ)zkr+t0b7^y%+3`4OSp}!r 5&t=Nz>1dDKnRYn$"ž- ݿn(^R,x9N`.l_|Xp}!Y^]N 7n[ȋ{^@://=,;(A +oZmuRTSP)bS^eBB{D!В<c(UsN8CtQY : 40 [ _N֕! k.y G@LI.q)KQw"&tfTM4 T*Ym[o(f}K#jNf; ɉ+%Řz 'S^yN\!8 D9\ CUQ]!q6?2Џ6լ8551Y\>Q(@m;OYf\Ȯ'Tõ!HÂmCy3q耔G3TU%^r\L%x:P}|&p6( $r)a$ƳL7uB*aÕ`b:ǦtfqQ;˅c=eVGF> a&$YN*|eψ*cpVջ"p cH;t X&u _Gm߀I%|9 ӟڥ1?Լ80:b/H%]Bo3-m_yo n&95|R@6(x϶"} ]f⛖ d9*mNN53{16#+|68KY-6|evVAB8;Z-ߙyu;j'$D:fxqwL $5&vSTVe⒎=b#VJR6&;КO.6)2\vi /ay]EepBHLI8fTt\848bЖspθǷC*GҝJa6;rWA*Ž+(*:ϯ-G5i3!T32M$+{%dQI5Z){xY3BpVုBƉ  ]3ٜKޣY\$>ƕ9^;2ϯ40(TmBWSm;vǓb?]f^pپ5HˁUW5lV9/cޙU@+vRyy~;֠8pV uF *ZCHI ;:z[BhUT !ĪVG`):BPTpd0 9+p4(#vR::ZڅS+9;.8j҆J*;0zbr6yc}jmOQVr u(ʿ9?!ߡP#Q~Ѯ_X 3XUn[v2b) ":Xh6ْ.n'W* V U!:2d<aӻp&JJ#{&'l:m>jxT^drtEe]H61PƻYzŨxW/3 kes K6"*2À PCKiz}.Ĵ'ַ }nUJ(F+'T02b6hc,[1H6tt<MToS!@̹;cRZf_o,~C.!x1g˚c;YXYmmNZOٝMU4EDo=ejA7sCOtQcT\5b&)0m w2Հ?aEbZT;~T7&3福OmT0yԛ\m8&'X+Y*A2ڐ `9 rF#5X"/J{QCja3b1ЕEUtX"$GR=+L*-$ÿƤU Ϸ~fh[pJgLi:xdK^]X6>0:5U?|H? g 3KxVvTӽASKL-gi^2)7P]=ZAU–ctld5e.A.'b0#~ zk2_M8$>xf@)N-kyL$ʕ =[T*'v/NRU>1 =dW 2d(Hz*qq3'Cv=FtAɠs7UP н 1ŧJ-Y9Q;̗?}WLHcG?pfLlFKTf4r&@嚝m{.N*Wd)viOE >ǙRdr^Xs!X$%rjҲlX4](Gŋ7:Rt6XZQiEX? nÕ|Vm`F1s&L~S:ay;%NJX e K3$cC>Ҡfp/{'V=`žP@tϜWPZ唁i2X:u\,US}O+$]P%-sX@rN'z0g2D~<`ߐYeA:Fׯcp㜭C-(ρV ` ~V_P?? +ay_' Hہ*ˍ'%w (l*ct6 2ZVSޡTpI&٨Iٽl٨U2=8ǭ,Kf,1~;W%]O5lwo:-إ]PiHhOa&7 Q_oEAQoT:쐝1 }Wu7Vq ݺ;I@W4ܞ/{/^.eR Q];u+AW*F<[]x^$4z B$LTHjSX\(U D^nN:ԑ8>melϋ1}&֏KzW>^51OgXرj$GnYI.yFvUݥobE^w#HbASrK`C$:t;`樎ce$CQ}: <\B9y/cVlqvc}O .Eu`P/*s~pP˳]}vAWP>yĮPV*3ҙ& q嵜Qd@Bm㿆5c) ›q F~W4%vctbո&G%%؆pO5P(N [(^* \'ru{#j_H8}[q&3O4̜;Xd@= {Pxڿ@PX.0U bJߓ_hTLYDH<@TiieVF=b?w|R#[Nau,i޴N)AqgőM^6ڻ u(!~$Gd#6#N]K{.eK.F'!7l9fץ%d !f'2~dJDZ ޾xLAJ64^f7e ZȐ0$ /c>X6Uc4a#pɵZ`iW  =Ѳ] J۸0KEW8 hODV' ='v>5s;6:a\E7)zզFbE9Dڡ+ 酳 ȧ8l#MzT1Lw^ٚƙeM*ǦT@0G؏cXsA+bbp2YZ)uиnC Ter__$M߆aS4Bfmc[EEHҍ5jȱ"|$ATzHHQ6ѧXYfVQ; +k5@!kdڇI%/\ čqBDI0 !aJ2~,ӿ.=sͧ} )?rwOKgjN" ĸ#;W~j+qdV Yz Ηr+AZwĽH0LB܂lZQaYu4nOY ͐@y)ȠSq/WT)؊#"JAnϵJƌx4q2|f7[j8\ m~k2; *' ch5«.[trT˩O^ ;p -m}cvcd,/2S@Tom={p g^vƉfh{WT<=o*])=r7w1(Qj\.ne^PLor#}C4UӼGkXO5K#{C ل#vC=35EH㑍s'!Ԏ! `U)rC,پ6XkyĬ9 }3\}k(eTU ;Ea ĶOӘ>ɭAΪ-,Ew8T"ngA-MRCaN\>Dz_] }U f SaJZ@8b3nhj5t!O"$zRSM*P̓+8Sdi@BܣplSzRF0t&j3tM{lm۹j[.ya;32mzcJ(mC͚eSq ԼSq>*[0.f!%n*';hQƂ7?[Dʅ0}Z3SBn^l%A'jsN9JhֱaD{khϸ "C~?_T{?ɳ5!,&D{qb=zƃUϠStbl{ĒqA 꽧:PSkT^\9BzؖjDhN#2.Obh?x٧z@л ^ƨQXYFz1$"t2M[:d/WTVSFٮ),^ߗb |<938rky\DPx|ժnb}Kq7'(ï w#Ýe\.cabV<ȹgrU*B=K }T &f\HDr/unyjiaE]+gЁV(Ug?- X#{b *Iܬ\}B!ak*Jh&ݼ/BaCE0(27O^?aUD.7!UFGS׹̉WY+I#l%G0LʷB,@uT c9e^&gJ eUXx}D:eu>ȳb|:|1RDbc8)x=,6"&P\PE>)%xp`N&_K׺un+uѬJ{#bƹ]uH[nnWQZ^sl⩽]uMbyQ^Ie(ֶ #{'Iko&B6'tՌgm9 MERZ蓕1H32cBe`JM_`YaYQ8";) #m߆{9mjD?WiSfmH =HG륔i*@ݴk;X源&m)#lEb~thir!D?/b/3ɃLxL\uD-[V5n;\ZÔMPWNo .L9M`F֔Akq߃^T/`/dw5bԌeb;^}* ;ǝ-v _Wm:[s=~聤S` *U S`믖 gS[&RU=ICϘYlߤ+H"jZ cttN"\Hg\P̗DBj8b|]g § HcE9Ѫ-ю:tP7ÛED`w6-q`EѺ4ͻ}\ o+x+}y1rW`%%Ӈ%&~L-k&lx,Nۼm7tWF1!ۋ%ȣTSA  ~) FSoBxRK NM->1`C6+np 2(:\5wܴkPVݕ$HY(7AG OLo`fu\%t&E`dKxĹrTHzڄYt Lǃ񖖹ŁqA8V$>n)Lɏ$ ]ݲ=D"%"V%|9)#rP&hid '"hLj/|EӀ=ޝDe -0ko ,>\2(ߟ# bEwﲮvx62h;PO^pbO)6%_D #Tڨ)bv$2|̉?e*'u5%2/FĕpK,VPE=5?b=~*6]$$M5y,0?yqLdULE0T5|}YD".#:*?d+nmBi+d*QkbPq.,b6!rZ wJ3~!HS更tX35(ͫ~G6"ѣ\=H)^ȕĺ(蜄0Wڴ0lɿI:`yPzY|qf{LFZw 95JaF뽣Tykhkug!NcOvʈ"yJv൵뺸PTMڟϴPQk}x'֪p;F(?a rqÀ1${OZڙ0>Τ7exe/@m:qel5on<ע9mDmIJ9b f/CM v2kP r˧}&e:߫:@Vqi6@#pghbAjebıM"kh8C@J mYW *(OgQv!i$qsy @+#ȞFk[sc-.~h'e8 &x @T`@%u؀B *;bc0[*nĺWqz  H)&czl)򕰻M~Jd3P#GSjQ Yo ͳJSdFn Z=`{_STGB$$ށ1(S>iŹ C/Zz(ХhOΙk!̀g=Ĕ8f)Qv/]q' 򢳞ۃP+KBteG!Cch\:v2R'FVLuQqD(mo)0]vX `HUe=ZYov4LĚ° ^25U; 쳵OvR͙E]!Fk>"7L.Lʼn ԲAmۙ/3Y:Z.F%9!c]#".5&>?Ձnƌh{] 4F'_9Q2Ũ|`_UB+383SZ;G78"EfFUםOuݻj,mII5%sٿܨ0*Gj?&e}C"`eR p5Mۊ독Q{*-"E:I$=Vؘ70Inw.KLDpI 9t?%GN5 TaV+T6J;ZQ )z,(jWHp˒GUPbeNS~ pg^>uE쇐&&křp~yǫGBt2&F9D~-I4qqfۥWhʋ'm šZX% m_[al&Md9tOV` 0G6Da. i:E݊qQ]5cYWCk s_ c+IxG}&"iK ;溤|*cr¯m@ɜ\Y :-`c{ Fd4 Ht^B왙NAfO]Uࠋ]z dZ_gEZ WJH `i|Y,~r\%zw rs;@^"UCWIk4?Bҫ-`KTp2 qVZwt qy,p |p3#½" p}4Jy?YEgr`aL6;vv1)z}%X#N;X7EY[]k30X6VF :Ήa2ln(q-PBE3|4Ka?0ZsGh{>z5Հ=Qzy'Q{1ͱk2Lg?e#q()uRZE\ } .YI CrA0K"~l eK)QE!Mn7?m%R$T*+Z)ʼn/EfX0Aىy 0]t }UGC0m $SN- B57ϳBuDXB_g:Ѭ>GHȾ5{J.Q%qixBIfamziH4r6(/q[zv7 }G?AGjNRbL>2~m} W7.?mXraz 8_g$$JH%[F- $vz8?S\jr (Ncwdi%Q\o_vwQG! JU<#h'0~~%ߠ꒕2 _E5sn'VD>r(*P]^_N8,TI:2sx?eBc@r#<߃aV 6FwГK u1%d/+5 zwP=穧 ;՘-+3e6djt^cB>O >mtp_0d߲D6)gJ܏r /Ak6;(W7 p![n>B 7IFq7(n%'x,>HTaYs5;#PWU*+o NK }kLGC7(Mou?$ƾ@jJ}- U Ƈ`,_H)GiSkRW4Mu T =i"ՖHrx ݖT"+_D^%qj+S LFf7/E[7P?F:(Z>:"LKn!gH@ǎk'ȦcS" P"5{&b‡`ԵK1JOE= 5aFu 1R%i%L&=#=l8ڑt&fJ @%'DB88ZvYnpCTx2pӒѝ;֤L&ʥ\AY4S0*p ts>5P& ۄ kpiQ^'Etq%"nGM#Kov'cBz{YfP$*>|5hLtaI p c&AÎb ]hj2 R)vIt>; T8HS[vկ쇉 aqsQ³@>>[cb qU-DN(y&Ren%lP2U;*Ȟ f& 8̊QZl5z$ J"cvd-,SUm@{zhPR}=$Y/ ‹dȺB<"h*zQI%u^\|WC19CגRy}VM$#:h{6Ai}BQaYO$Ss^>$?}٨̫O9Ϩ蝴 Az\]2A%>8<-f58iI0=߳%ڱ.*y` }:aG9?͜ v&băm^= G9\5 l&8,"6ܵC%nXO[>{%Ϊ4eQc Ȝ(Uon֡QWg+tgQ`>Fr@JSvzFޕѧ"? 1;Um0 `cr~_U7K%[TZeIJg2L.]LmKâ!"Zr7Pm֭ܰFJ u4jufv n$[Cl 3~P $m"Vtx͝2cQXL>шY_ IRc*db t'Qs*I:tG\Ɩ鹝ȷ#m Nqu}}Cq;3g6QD1mXDƃrq٭uu-XXzݭd Gm`KR۳fw|V 2%%Sz I rd3Lt1en׸n2W qZh-|x"l,d7Əj/Ø#ņU(i }?bBև[d>K~Բ Owzj&:76Ϳ]uV<", nMEَ +-sjuSJD̜ˏXDҽ%w`xVj|=ug+R;2MKe"!ebuڍvK޺n媾 l*nTrfUJtf'9ue"o*̡Wh pyT#Vk"~>@H-&6c,iF(jö?\Y?#ܝF((%~ջڔ7Fp$CY51.5מ5 9ԘIyN]L05@ ]rb8k 0S%=)T,,'Z8Y,\WIkLD(gq_?o'2&4t]^hX9?./}_u<;']q1NvJ LJ,LqêaPFһ:;t;Jk'EoǸ!~6E^!Zܘz*!|GQ^kb*9M{\F󗂳[O3yѽ>gp$ƃq0D\sb ph*suyD'S6t ӒքCf]F0zRZR1FRHP}T*խbvssr =|l/!qm3ہx@R c|Y#g2}M입 Dqס3Nˣ9-nj ,Zl? hR򇭺{r7h$`?'0`{_GeæOBJ=rP~K 'yUŎtpɖ{$]bjv,c!ejd @_V<`K&no9m>k~p`Ca~**\L^E1e2">eOQBe) ٺϑ OaD7`=yv ,@.z5zbR$:hA?ӓ ]dl 2 `40QowRϏEItH3 N:_SA`T!( KZe㝁v TtʺS >w?xtDY lc*!Q/ a=J/"8R8,܏-Vs$'v-1AC0 dlOk["DdSav{xfdZu@ɔKQf>m2MTiQa*֗=Z(DwQ#k{,BQ^rjk0!TGvyE6ZƧT͒O'&QOeW(NȌ_@0~Yqgc׵|m³Qݑyy𞹼6'}CB~$x,\+˝DFAع ÚhQU6&f{lf\,uYRNo;LTWÛ6}5PtGNsC,*ãC5y㔹%1h6hFH&]FIwMZ >?=yv9}Q =Sl";^K~LϘNf*G,oh/,Kb1,ϸAz$W`jV*H v0[ygf8KyDy?un'[cgG^8vAB8~p9!Hݰ-L-Qi-a:ʛG7N6N"45aj=dlFw/k<rCM:_RQ#jŋD;rF&dHK>)VNG7leq\1b[jn93)=m19Y'ۄGB&3G?-{n$gyBAO) +ă91M]a FvIE?.?{:C |Ua.0[McW÷gf<a]nM.7;c@pOՎ)1MדOx;;j~:g}w^D3t{ NCdج b)v,g]Ŷv7nb0/jN_9Q%Csqrj ?Ϯ㹲TV;F94Dh}g;C rbfJtwL}my[DU/s>2?͑l "NvSH~ I$C65vҍ3S& Nzs\+[ZYs75}ѥ8a Xe/}XM$Ŵm)1,>mAIf7v'-a^DO$k#l:<_y&77,q&`CR"OdpZDZ}[a(6I`_fE4Qoz`K~y̋ )\rFׄ6OFDKـtX@~wq_ԓw~y~7 HumR2Ԝր=ad&慣 /:Rh؂h {j0mއm^vpa{M ػ8IdO^*"$[MTn $'8VhӫsXi3L43P(ӺOZIM1L>W `Od~+3ny:~$P/9R qLm9N7#IIq*n/(tKk=k#Q"POBfؿ+kj(zo/i%.tv``$(RKcՙfrjdBTq"h N9@A Jb$9S~UTwcQ6QJE /:vC>{NNd=5~Jza\Ic )+*@ϽPRvf}:–+Z/O;4XۯEAБf2gqK]6 E'U#Cs:z>(-aM>_3)E VOV~Ҳs/N8*v/pVbR(C)48ґt^{5('-JU b#Ἐ#-UbbF &_C4K*^%Iʺ<̙V. 3zwb6Y&ePxTh1#w1}BYyh+;l\y ]RMo5%GP9 q*YR删3ۥ}nq1 eG JR2n̥|*%KZ74Kc;;Š&A 2|3T)3f-B2~ii£Evv+)Y%ڕ"2({` ABIS64:aJ(I)V3:TfGC{cyQ&dvGF`<V r?WVȔ{tZ! Va<]`¨5o!lؚu?Vo1Fr\lFW52]$#E-<[ˤ/3E1m8>%_m"vjrF',徱 :z|]w=V2 M@gpmLRv<L(\fԄ]7]Zfe+)oA/Rِ%; =镼LK8v ="FĎ0T \օZ_=fRu7%5Wĩ8ZsDjQ!iBxv9q$yQrt_FW9Xd%3H(7& }Į7zfRX~Uj^o2x|:e) _7d`lE"^=B|Ek;s tq`4 6eh[@sYS)tk_jYp+#1{2lk* PM0cAIJcXn}OD^]`* /ֲ2ӗWHBR1}NQOa0mTXy4.@ vCW^;Tt0NdW4n>8#5"pۏBiF'ALK&}ˌxZr#r5lHܽC.v̐9-V⩟#9*v>U-\` 0b嵔mC]%GpU2 aMA ulhq&zmi$^"a:UMZ3 .t0Ƌn&2КʈD&̤n?D"1tTF EX>.5[/_M$ jF.(M.Y)ie%+`MgXdǓs.th:>3]U*Ks׋.v$3ԠOvRѪEcp||[=9ȶp6 pX:Z!cRޥtnlc$pѤ4p.QhCB37vGI{ 8KGMJ2_ұ {N$ў&?dުEOF #RBB w1)Wb'ɹMd綡G]L!l4$hx*Oܦ91w |,ID`VE寰\Q8<`Iւ &C/O' 4@x#zԣWv~[C[7{C@kYsFtkdG[A3D~7'fzHp~"Nm#-D ^h3@ﳩ伅5ʬlWZ2붡9,Gt=,U@/X8\|tΩ]EU=*i2wqz0_m Vıф\j<|hF_"(jEOz&KY*SA?5_^qY=)Ѫ"% qH7ajtKM a l)_ywtRmЁ"C6''JμhA21_" .qt>EN^V""DZ ,Y5sAdP,Bp,}Ì I)WIC]#hY]S#n2h;Vlwo̠lU.gKTGrn=-%I&<ܷ/ 7ϰ9&ѕ:AP!E9UL8 J0AZCE%Um:ƧA`EqIidSW+`:ҕɪ˜#ŭr؋k몎Vb0^By7SX{Y` Z*CբѰQȊ=X}NS?un(ɘ֥7f`3Sw~Khty1Ei8EcCWش,FY< qea5ƖĢ"*u5yBzE (Z5%L4!W4t_dAc@˿MG*D$䫭Pwt3Y,Yt"_?ph]Dh7Dt@n%3/%Tm%J @\6Ith$o!vR=&1Ww kbb{@NVREv ?汨Jƭw7гօ=uo?Dtl-Ęʫd+v\dq#ɶ@u[i:TBе7Z*/\ky#,Zt808ʇzB0ArZjJG=t=egeYy-$6ǝ3|T|`݅={( &€] -ѫ}77RD6\WP/*T k$ıۂL`mH1L< 1o4Lȹ a2Q[n4|y:,5VSi{仰)!mG;)8Ϟ@\ XE@UZη`C1~2kyk]I.s{Ht٨k㔕CǗ# 84e-Wfeqb~;8V{21oﳏХ\}YH@FZY @$羕i$OzEX39)MNȥrEXrA9iyCw!"ɠ7ުh .<m S2 |g su #\ 9/|.:/ L-jXrRI^W2t |ePs'ѕx\|j'u4=i\V6j[xHq_8l1Fs=jwF?Gk?ިt\nhHm$%@O,uN&J.;ɺkn XQѽ[bR`0d NiO-`1Ws'c1MKoRy--*"rZE0m֕%ygLyvXU&ؙnU8Wiq!Ȱ0b&WP(B-3 0c/"w2Ur@7"ew ͮ\#J^}b&՚ogʏ*mݥ ]U#% ,cevڇjVE7vo߷?:6éd4z!u-{,k QJ c/O71z(%NRߌnKx3?& AKˡ0Ī`s-~kV&I j/3Q99*oط1ݤm7  H%7dM6D.\%AHz󋾆 -XT %NsLbgsZÈ|k{FUB0I[S?R$Py{ŽCkV;#>ΊG5T y=b.VYJٔ?Kqf1mj c̴F GݞRn0 8g3tAxi!)xrI9ym]sO!g`h~BώaÈ)+.fbEcBQ'#` 1x1Rw!waV0-m=YU Gr].0X#{z[3oavRk1kŊ/1Kp,;3Am]eHD=~fI[rN!3E}'7[y>倜 QE4C]Rq~p%F6јzPϨ4ƺbCk{3iǧDZm7)ʛR}_cqCSXQ,zY>W@=R;} wUnVR!d\0ǘ$*ƑYF &0а Ar9OX4ľR*T]j7]Lئӆe~ϭQ@MW;c{4j9x;Ѧ8w&}3~ŸE/ !pʕfIlh%,N 9W_WJ'::˰I/ %Ἤu[L!> pCIij&~F2TSc4Hn 4wQ=LqKŤ6+,-4:KB"dL 6uU5M,ޕ<ɋ:(dRq&>" 4a:y Pij#@뗃96-ɉ95獇e^L;?)T{u=M:K4X0PRW[9 ʀOxJu]^F,-Q''γr=axTrDqkndkgq[겢wgY&t,"4lF$l6$G}q&{ zYMBdnKsx/HۭPUl%4|dl7tnf5ua^Wꩳ"ybmۇ== ,cH[JʣK}#67ʅNa"%z"> Q -.G>WiAV?)ֶh6lX >$h|b*/Hf];sYy$#yr̻&I#~IE@F|R857\H>y{qJdr +<3&v-+Ue8M[j;Y/c?t^Gғwg,^蝗rF4ޝd^v@Y k jZ*zM('{O6x-{w%3 ~J +%/t=A3$ Cy(箔3Ն%rΔ&4G"z;-qτ[TG0ا*"TXZCw7~nn+4p"\G=OڈHtBOFz^!`$Io<@5Y6"!~d1gܘjT ܪd/:09٠<\\\C!L()fu M]*90CTOWYR9s+r3ifM:iߏ\Z{?(uEj;68]8~w WSt/I0OpGlfLu#9{l@AkvwPW&ezi; 4s5&1O-SIAeٞ~9a3>E8-iȞWf[]kE:Jy"!%սE~w/44.א/z7zٽ+S8+ C MtRL :[hA &+lւ| xx`hت ZpX&@&F򿢋_A@JbQrZHbi=CiO)~x3ݮ=Ƃ2DѴWg[Ip-#w4a>YÜixe,|R\]?!(4m6X -򝕲K? \:k GCڢ{`N@eek%䅧-(R*h!Yإ m`ռ#xƉv:bR@`ywhPnF=G_=n _R툅.dr3>Mo+.{1ٓ0voƐɹ'|"'J+<.O#LN2Crx-ujNATm% dpies֥ٸ{mEngSViO8Fc#EG-r2;x 5Njk~.&)(`}r{OB5,Y CsqC!DY1^ kyS<=$;;R^?U6+C*8a щNiEx5'aVJ.{}LfDkMNw >گ1U<]mD>w| 賜'˒-R]R\a;ĝU!nD$}!-HE?1:*}(nj̮}Z郈\L:8:ϰC5=C;iâ{:q:zV;IBi\:bh՟ YKKIV)Y'W/chha?$W[_tx8Y,fJzka<үMaPP5V\S8VB;)`׏)69hi}/9] K]F`v>kP&3GRi) I<-1 H}ơ} l(rar)2 AӦ+Ҷ,Q̙{x62#U[\sܛD_8  Gݰܸ0cn!a|"jUſfl-&)@zD; 7*mF 31~G12p|&rf{nz"yF<sV3z3j6Wb7l9M=oPZ5tZ_N(gJ{@?3(#*2[FqX*bLHdΑ.O1'޷ }LcDz ʝpTL(+]ߠD~|Y%LXwrW-U VSs3/ kTŹGvtys4hq.79SSE` *N9@)rٵ(QFVI]_ 1\c5Ï}:rI~ѱNo8185h,-7M RxֹiD ޙsk9ëSդNu{VvyS߃"vhV/C.9nz/3@KݠHXSx"°0 JDiX!W# СYl RЃy}seŋ` ZV]HѼ•*$Khͨ5Fzk$u%r}^`(+d=1X2t>Jf{05.`Cc!pvzNksv@!Iyo.8 Z.K7+ R@'Χoç Y.]3A%ju^Sof`ld ^2SRFV Z=JUaDt낊h49~'-W>n?*1Fg er"W:íG>ysD='NMtp'֗g; LiRw *ZsQ|V3mlNIE !3VL-7Y+I)\~dSSI D'|{1 ᓹ͡7KlիƘ0^]>-{d1P+0nmbhN)0$MFv%տ/?i{qra3K$M,;l}1&|<hv3Qa:a쭨tvB'H "u%N#1sO2 F b$NNcK^.mq ǕM=EgGՑ|0ߗ: :';.x5vLV[V=@*ʧq.y^Ԧ @l >٥hAÝݾ}GLUP5c&jzn =5i,@mbG4p1*nF(9-YySx!0s- ;h Ek ق6~L5oS"bImKG{,6#IT0G=;$yp: JxEemKSAgzOwo RGʟcڕY̹8<%bN7C~y#JQLn/~d'Neaxկ,|<ƒŗ.8Oe%)tDeX*A5Dt=mH֣ȿ;d<6bKrz(]_~..J'"x#܋}[#~ ȥL~]kmui='N,@Dra{QS邤U?kAhU7=z\ȶ,׽ݟɖid'}pNz[:>8F\qʭ3B( [-sJBA[g* bosx-ĉ4_] ypˮFs ݸ5~`d5 ~][ ƂB)eqe?@U_3X2.\)fɤkIb]Aom RX7S~H*=!]*~]Ӌ78PlM!m\J (l"e=QѐpyH& BC\33?]YvSB{MzvpJ BKGʯ|>d:}_s\2C7Pp̄Uuo僻А\hDe(MiU^B_[~rBxX<+xkmEoj1tEcuDא ~Պ:]e6 >>w+/CwhoyZϯ/}Y"<4m(!OAlbh9tN÷g~lĀ L?Y؞զ%ä0ҵ;t XԞƥZP(́"e,g95%5,~k%m3%XW3fgy@_V*=3|Gw лc,͘OjL%.ICJe}_bo<,_^G6 }G3N;c_i%iX虌76܌Z7,5zNt3b"Li|ubʱy1"qfX `bg>WIvb':bjf$ /hwuIw9Ad'odgt; .` W-: gTS^FDgOD= ` 'ma+ !oӺ&fCv {b0$pTRp5l7Nv()0܃lnIX _Tj:l$nn Ѭ8ش.'YQ;ߐP5Ж8\9XK>ɡÐG.{DN 76:7j{{ MU&o04N)hDN#igMw>;S;aox~ޔ=:g`(5~h<Ksn7E^p%,".擈P4VmFAEghZ|ƾTדDΗ)c_ ̺{'L= aNX9rGb:U3H-fOEu=(<#=1A D<<0F7Kw;[O C˾!TZ8kn@Lkʉ-p-nd̺Rg^ɋ־?wYdz% *r 1 2H?H'#8 wd8ޡvkD*pʰC/OYn=*e*7 d*-9[O:))ϡ X<2N9~x+y?TZsW|keJ$u7>% ,~JDQkowBN \nOQ]q`d;; ř9{L}S::0SOh(JQHKɶ,j%I}uvSM˰N+;IV6qqRt^pʪB2i4WKޭBjC '!wG(,mwݠ} IS׹EtiHȇeYzB/VclSVw׿(msvC[y%S#ܜ1H3r 2rɬ :Yv9[aC^ pt^˭tSFk[xLAOGSLu]<ƁռˮhJtOw!!Hܞ!zK$d5MuLB-twuNπ|a'.ZTƼS;!#"uM'aϚ֩Pz{dMosu~Q*(-xa3 l)a|EH6’q ިcWuffu9`A]$)пpoh UGYwͪqB *NG<)xKdP"3}5yY8=OSQ_ /]PqnZ,W)1[eK,mm3'a:իbX0ܲo#>Bϟ@}ɓ e"0yyRGsxY9U;"8yvl4mGl30dU]/V*>z*n|u mcMkcI퐲B+2ۘC%uGD;U$ЄFWT[XE\ZգM14 mݣd#$;EۤrIRN_r ~,1x )!d ~|כ_3CUَӑe ȷXQ#GH3uG[Sp~pjkLr)yv[9-j`o&M!AhDAJ~S%ʋ\s&\n854߄$;MZmJR wi"2N:ӮgU'9d{Lebf}d ˑP "H"HzRaP׈p#߱Y$wk1\\l@([wPms^5#*.*0HzzX@͌ZjX̻L^mΦYP?Z Gi=-7{5:S HE+MD\`g(SaNڐ~ʡ' iz]cS4&~rLzo3E"~PP)n7ឩ:DtK BѴ"i-p>Ѿlf󭶯{ Mgߧ32}6ag2ۦ,@4w]-:jMi}+jWe 3J`+Un [ LixOm[+ O dbG$'ŨqsjZu %ēegj\iQJ|@ͲWMy͉<8ÛtWi.rJ V njEg9 t~p樦X@,&6\Kİ4'^jcӂv3$e䱸"ulw,#l/]6-r"aCQM!k:ODU謃vۧ`wY~ 9S[H?zñPDLիcSE ZU[ "7,@76PK͖Zѯb+o/afЋ֢TG5Tan;èZ-o 6y(<&.kƊFd_^X;t$_|I`3F ֋, x4 K4xN"CEdt/=GNJVTP*sȸނCjzeu69ӽ-؝eqS+ KAwVQcP-5bjoçxKd{։(Z(.@gYM<;wHdrޗ^gƏyîepHq!r;so+doX>]52mE3ak=K'N ?<̀; tyQ{,mH8ꡞt噳}ti0f֘UFV-3Rg?Oc3Y_s`0mlg|㼽+m|nPC &R{M pc~V-U !ОƌwB}-5ڜ1,EJsZjz_TF7!P_-]藐3|)GD AZ^_]}CrGz7bUMDMY 2{04#*T1=`h?\#dIF^X4%unTb :}pսoX{#>-K+XK1`M#lЎRB0r}l~M'd{ ȵ. 34U9O@cְEK>gRT,gpS_@6 DjL -70Λ[c_25!01R9$OV}ͱ|ES,Ƣgm`;mc Y7GOMT*hZ^THucö1;0%v*b]'>tEg/>VB/F)6ٯm5F3h j`-v9dl( n _NΘlʶ֟*vzNZ$2lȵ.h qRRfbtYOtj[U ۥ혏L h.?`*'83uN4r., .ثr]JǢ"J?8i_`|}8E_Q 1QwG Z _< "-6@}h(6Չw#s,`CWIlZ[3sxs2I;4Э^/p6hha7Q|u0-q[3"5m \WG5{up'dA)'^n4L1oxXz"w® d>lIfi r`w۩Qua~djc铋E|0 1E%;CTTԎcdzԨq}<~c]Z'k+2ioÌ1fJVyvksZ$t,5}'rg_'?t+k>v0m5D]m.l8>3Z6J#3a8N)$|vsb\~j2^wZV꒫ l'N?$ޠ\(,YM{0ӦA :-3^Ș!jYs_uI']״|G:I@a-igixHF1#$7㗪V.@Y[ޙ+6<5l)h1x6gkfA#T?:{(ldA3 f{/b)[7 HgzkH֭ܚ31+t|=*5V/6SƝu?gASxSۄvDyοoIR+tdf:: τw _\aWcc .4H?˚1uY2Ϫ%*(_I|FGrJmCuh#:k;_Q]zdǷb͒\#KQa=ja9L8aZ5]'L&QW:޽};ci\Il_Lbbnb@p ȫj^2gNX_bJXWW6fNЅ:*Nw\j;&^@C9w2.Y>G7T*jMeo zcT`9UWM\{ 6f۔oWk ȍ௜rMP1b970yDBK'As;l!10DVc>skb7|y^<-7A()@p"t@"c,dסm|d`,?޿`4[3q֨6Q lN@˗䢎'_{.t =NY^uK N{FW+x)Iab{B%@BgepcGެ d3iK!)#4vMB뭍Z;*J1_HΖq%] ~>ßbGt2V,n0|t>k.g [!Y:N3J=C |#jP=cYGEػQCKZhŅ߬VeFVv-K.IS!%㍿h ]R(tT()\VUѼs`!P= .^eO>Oߑ.O1 ngEu gnI/Z j(6E%ͿnD%w\ӎsTb{)ƧĻ<^~zNkK|7ϛGj ashB'p?rcR_lsIUwg>g-h/f`_g cs %4v>9m$-ghcTRfP4qxB}  @P"Ԛ%J1k4t׿ğTݧeVqhvytTQZOºIW[A lDbe7K=Dco%9`{+{R#5gŬx7`),ٛNFm1ʎ# Hq[<̩C?ᐃ >r$<|&Pca-wkic=w'*^݃ۗϴJjJh=A\6_ax&E(tZ/ (:`Tj@~0$QY~Hko`)E'ԟ=[^2yzn5fA(AqqZL<⥱Z朣`%VbuDղ%.vl g3 c~BXN֮j_E}=oud@,M L@To!};f *6;l.x%c%_=DP7\B&=|)Y\QLJXp#aH sOT3Bڵ7#aIFb˵c Ǝ1m38Yg>]f/[[i.>ݞX|fιuP$v`OI `Sf͂8ɢ+y2/A2ID 4NKQ.=hàC962skV`dh-!E8WT8W?pih&Z'4Ṫqmf\kHi|< z-jku"/7"9%"^:bhJ֣k^ gdU1Q K3qu3p!tbk61d)*f78aab54vmgoY$^#ɍ" d_~7*d\9hɉy1y3t9:_z{8V-i̫5dW<Ւ;{|B7Yjmm4}T.v#GO^l!x{=L½Ȯ^J#qf%I`g*%AsQ.K|(z5Bн=7u0Ez' cl `9?b {A(B=#RPÙ]bs5@D{Vcȣݫ\ [Pb,΄xO;&XtDmym ͧ|hPL s-}쎉>\ H|qf|.-+{0~i6ʪQȪAay9鉎ʨ)L|E)8 _1;YQ4mnN ,"X6}IMe:y\\؞P􍆲=-bbO` ^ʂ9=)Ycpȍbl˭L :n͇2VY^Lu%0^>)V*`>eO,|b gD(GpO2CL ).MH^wmb4uvL\Smz1 Ήw ~]3v没 +| eZ3D)ff#(Sd|Q' [٧ؿD=o|e7р&?QY:j-ߤcxy3sHDuey=`3@"GڛCw Yz@%Ua-sj;Һ)cPƜE&[}5 d C?`L݆_@T~vS98v L/QZqTQH d~ E3aχާyؙy7c,ev;VmqeAucS62,A,M~&R0"y-.wJ^< ͧ䡋(|6y|{ilK_avgO/68N~(n1HHZ܎X$L cIS6>xC9iU*/Gq5vJy).zCr2bbVOH8q)1' ߒֲ:ή+L}C2'3A7xjNp _LS9Ѯw~q, 0?Cf7¹K61ͶfMV =ew[U0 k?REt%]il@tc93R@";˷YQaԀ&P>-П;;l 7i:8o6d_0jΪŌ E 3"A^ņݕ@VlHv`ED]2__i p oCO3U`;bܲKv<(kc)|'"gJ+>LKBy8ƼLwYEH9+p!;i+ (eGN#݋%5 Ɨת'pI)-Nb_ph.YfQV Ӊ/`Yɖg[I=hxkalEuZ"Hoi2&#"p#Y X ϟteLvNMt1dh{L'}@7MTTL`Q0`roQdU9 ;B sЙʝ/w%7{J,垱),2 S8Fp[YnbSфVIIij( "ehkJ[g +K⹉%ďS|"mf*< 4 ף, W} DoLx^hN`<La]IO5Ȩ/'w)V7ĝd6^{;sh:;b;A7ʪ9ɬJl"cJFmw*ap]JQ ﵾԽŸEt N6KR;-dEx ǒ Yibd)*ǁe!lS2PRmc*#j ⩒Sfz\1]kƘ֧|}1WMp=oGY m6|jþ[w6ʨqhQ&ܒ&Pؠ2v@< K{^Q RX~2Κ(*N.ƛ{ ʅ1c|z%v/ ! =$BP *ʒk(ŸOybJDp?*FE rmp* zv3Dǵe> m 5PG .0џc-W/S׿NyJ>'MH^db%ZJx"l`M-oe-5?wueIU+f/D^N~{&x)%1( UT@ 9s ~l Z/؁ۼr9 /ťewv@Jɼo~Ƭ@Tי|O4: QϕJ>CtgVE qQ$DfC*:ְA[=x?bSYZ@G3n+nب)w7хMˁ5E1%Q~211:I]W +(֧9"qcg0lk s^pcbȆar^n"+08f}!co ĵgus(_\BFG9O6Q{ZAyÜG(9lNO.D@7|]Ħᶐ}/H7NY90x)xS j@jd8Z{O ?lW }LF# "oRpxLE\io5B长2`s]aS^89&Gz g[XW;)T^/AR$LjH'$@1_ɺҺGij.GH"Ƞ":W>VO10BoRF[Lm` -)UEۉ#FJ>/ fGf-O_.qKߵm07\"iR rC% HH'FzԚ]nNU 二"XR162 {.-z_-q+dɼO&}SSU]8nXMsOj3`Y4yI c-"/z|h.Cu[?>BMP翮##xtKv FVE} A= vYހ7-/hnܡ,ӱ,^\`NךWp{r'c sc]=w 1\G(S=t8'(ujVsɐ f},]q:KkNPMfL.ǰ0#=o#JF{ &5Ä7/^;}ڎZ~<&{tVLEau^9BUL["– (ib3t_|v o2H)(85rb&M}f!۴k3 bHՂ# Hj믮eC:BӮNUYnيil*ˮL}9]ARgWҥI=zVPw ѯOn `W-햯'sN` & ͻ4M{t"Lї8a6Fx52itP07}y¾vĚ8,]56 A+V%^nZ~)|qd29 YoZfoo/,OM*7ܡ^~¦Mw|nL"ިov9JϹ杤˂[{*.򓬺}uȗ=u7M?gXhZ| TNH:Hj`Q43dK`1_=;Xfߙ/om/6V!;KGkaa41lKhrq\ElV3]%c-Ґ\{P i 8sorCޜ>tWtFus1]"g֐tѨ(g|֣:7P!۰ FLph0.{vɰ H\5e&'U'{ǫ# şvWdG[dd(g[30U?Îi+iIÚM@VQ+j* 19 @ G[]$+q-8$mNoZikoch/_i4n%)=xd`0z&cr):(}<VؼM3upE b?] P=ĂE}2Ne@qE>KW.M@y6]DzOKʌw6umS 2sQoGRꩀ2[FRv895N( a(C$45`D2,EidtAY@3vm:^9A~70D~Y!rm~ZTtjFvq0O$x,'}KD=5d  GѧmAT$g%$>bɳ*8=9O*]}B@Ⱦ WT>HOꎼ8Y66N?-#L!q2i:D"w ǖdSFY:)̈8Q32}^-eTgtg:ib/7l/ɪv+YE po:jeՕ SW7 }Sa'˳.! 'ln懆co+ݔRK|DzQց5wN6$H8lxP@LLl4 L]M-MsOuJZFczUd67l(k LRYy sݑ;Fצ;<;bkWLg3pւBvjm!DJ]C0"Tp2_ {r1-1Ռ g{k!&J+ېf*/!!R>k6I㶤IKS9'BJo/%o jj9X&[ae| >k2n8H^1֥AV/C5Iy&ZyOYk*{ʺm3_nEb.VrQ?'_:$#n Sլ' 1Z@Pljd.TVzz e;`<@<`hӘNTO5w0X3 \A}֨^ԇoP9gW\bxXjƯ>&^3զ&d}D +gr.w/1")+mcW!Pǥ.wf;W10n>Ws+'׌(}]LmZ"$_FILU@@e¼Q*TpI`n►_n2Te虇@ZpAӘ Ծ)7q!YW8&VM3!56Tx7=) () }Y}x Qcahڷ#"ژ2crH%&zfS |$kpEDPukZ5X%h+_"+ӝAx CҲ*wgG\V}9ge㛛gJQ\UHH$4Z5C7^12>sUH<ȰO_LH7 Q6feB--K \`ХI4#6$g Ow9-?4PхFbR)C]glb{*4bK14/tSxc@W-n5J9z]!QO+ĖnybtsG〜xp>*gt^Antu#;?^Y e%[GDP_.m?^ f ޱ3U f )9Ī⳴v@$ՅӸO &*A]b%ZE2¬ڛ#̍aq~QPiJ݅q:; m$d_Lrhg52%dS9h0 "a2$bh*Ҵr]_-@ȝS7 fz0gqWbiR]?E Ж۴ڽV.TBnv7^7Wެi[`אyj/:wxN3$⧅fx;E5a]ug}CÆ\^؝R)EJ6@Cv9h'.wҐr˝< \NBݺьE/WHo<#]FI ꇶ.Ǥ7 F|aUQhFrRIi=jRǰhP]?T@ѷ)0&z,tUwF>gO@Q!kE066ĸg-4_!}V. l`<<::yzzh zhЦ@:m\02H7]œMh7o1SM (n 5`j0˘c=kH+g {T_R7X}1J `l s,:o!CEn&sA_e A| .pG"QoTE3XT1rFJ5oЪ7 "_<`8¸&!FQr8JԀ~+!\qr4GhA*ߧR1Z 9IuC@M$g 4[a,g.:.Z;AE8jZ^\<h@l,8[1Դ2oHlH+)=qLo糞J;BX9I䩊|N~{}@]ݓL}ݢC4h?4WjeIh@]H.o#sZC3x2vdָϿly]O"kwv>9¢eEwYP?'p%2jd)褿? jc`m{AGeW]iJ ?xͺX$6vgi+ѕCdg a͸Nǒ쨯=e=3`ßT`+FoʀT$rzZH7e23l* $`ͧ56jQ&l-5܂D1$2Swڥh[q0y4\S%9 '-~>ެfŭd Q2ϨPCMHMW;ۂaa7OdօnG_9n}p-̐8ѫ,Q,U~ gHMawS (I6DCPv`%D ^^A:꼭݅յ/CG:U]`x[~,k3}ʚ'g7K)t4JӻАeQP@ǧ~.8I%AڄFd2bL')e~ӏ)./ >QCz2:ӬQh)qWzeX mNq`] m&x\\9|$sXoM>0W2/_(6֭[=&t.'E"5A̖ӄ5(a.{m*.e䨴3r68\ 9:{[J~ >}ZX/@vRiZ)w)C%̴˯{7fW$MQ|Ek_z,eBi7kSl;ٗą!q <~mtfX[yJ5\4¡p(XQe MrD3oeQyONB9-ZDDh|c(lm)b=]rm%[\Ѥˑ͝Sx' oyue 3P+yD\;7R#;eaO40W rפqbCky|D 3(8\f25K[7OWWz 2+瘓wzn;<tK=Ɵ,߈.KJ-Ej'S8+&Hvs*nMݗRtF^+l0@X..Jbn/}SPi Oʀix?29gui׈]r+tIn]la\[I'cqw/{'i}Dj yD\0Zq;m3ԛMnJ/N3ݶE,Oaۥ~_%S$).mƉ $g?ԶQW홐ĪcGtXp%pW D ›sHl&xԋʯyi̞] OwKNi#:;!0`pC=Nx g 75L5Ž= 1$ %^Z(ΐWW\.ȥ2S4ua@Un~ RFCQUP7n5(eԽ /ԯ15"ƄPX`"4}x_&). p y팣μ,)fW&cBmV+G,9 byw-˦Cɖpj<m3[SVN|`XҲ=􅛇|(9mS-H)!@&cIB7!7Ki P5<㐁^~*2:`[,BȗV/*Q --i̸=)Ē}Op],RcT \~,ʐ;#5/o SCJR: Kt\8{V_}v\}l^DnjqR*K|fs/_y|@iBZ(v? +cH=n_O#Hbh+V)qHq%64Jцkʬ41Z 3X6{q]7,PO?ݡq&ĔJqצf16H 22m_ {CiļjE*{:F+NSmf,uQm%g=!y/3fdǕ,ǝXM܊x/+ONIK7NJvngd~GK^d0[}d5vx NL7""N-EOS/:q1 0.Uw6 pױ L6&N3b&keR0G$:?3Z ]E@D^YDZ6?uP[1fEL#2z|v[~=yB tggeL\2On5"* D*EՀp@q)2&vwgDD*hI7GG}H5vqNIh (42fqyBOt>"UZ so)W;CH]=8"ܣga٩@+Vp`/t[ w]zMg/5`$ qޤ!Z™SZm0 XVт0d::EXK{>\ZV 8?7-vR6R]X]5\܊o݃\plТP04aGAXxxJ&_0x㶥;[d<=Kǂ"t3jte&KK՘"5~!n#1%ތΪ|Ec4тaXu=lz0Cgc6#R<t`<*O'} 2htŶk'L~5LC&}ʨ>l& uHFk"`jyk)P8!Β!{F_UY rxbƸ:K&(N^-omݳPڙ ßƩvU'Ϣmm-_5"{ź,}?AYs . OοW_̉ƃ7^M]-_7?BjPճjmUPZsǸ; E X]dVwy~,{6Nnb£X~XzZ;7˷qṰ~x=2{ܑ4a+0C}-NFW) 7HZ%$cr!3Ԧßx5-Lxwȴg#A~F)ϬRY"ܻ͘;[v1 xnmEs^ YY&yJ@_auIBBohW[t)?)Zj_-ߴ 'J:'m1FFܞEGH]06$%vNv+nFx)vr.8-ݱ 9QZ?_@m_gO[8ZcT-WʄihPnhR bzH?Joja/0FM2RBe[)Z~n_!>OVޗ")m=s!}y!gdbA}ީ\tyuaAnCuB. ._YdX/ h'uP [ir0M70o42@_& 7Ӹi3xϔ3'r pu (mV`qb#l V}Roݚ<&p^ *()"ǮPd"zElT`k\~Wo M@ %鲎FwOfP$$+a#z$ +h#)BS|4]4~N> ]ۮ7C O}#T/.H~VU{ lw1K4!_Z`Wbe"0A q/S }Ro/Z4(J3RΆRY/ #>N@Ci 25|.0b^n@Pgɒ7ym7Jp(;Zڍ\XrI󝶭y9W}qPCJ&AQ'tCI K(SEk +ce)Av.wNǑbg86 3N|Ͳ4ov/"**;@P.jbބAqǕOWJ*h :fjxZ0h~%snL!Z2Ƚ'Wmhz ކt#l#wXSԶEGJ k(`(7m$ed U{N/EDGfuVt莊 6=m阕dTsNh G 0 .rQn6h]$|IDKR:2LHх6?֎EN|;$xD2Ph=;jmJpIY4 7 jpf:(hvZmoQV{(e}~Q- z'HVum8 @LW6.-'09W|=׌1,{(PVr60P[4w-[;ͼ.QAY}uȣoquj&~o܌,'Z~M|?elD JnVkk@qF.'0I+w+&T:<&} kmmnwϦs2b*RO,&%S.d ;zOSN휍MiK%E`%^Pe)NsY*}wOS (> Uլ‡8捂q}ʣWj񅖵Ry̎\@?'PؕdP ȑf(;@vuT8X4ę&wTfgu/'rHs2P٩{NRj|@PoTXXc돏Lx՜/..YUѢt?&.x8nQxkjwSyʱ_Ov?$Hpl{R@<7 /v]'klaŔupLLJNG$;}$Cgo;=kox^q- - :\Lچ\%:+%-Θ4zƶ Xk٭6 ɓzJ-Y ZUoAk b.t'6^ >e^:}c^aN$T[tCVyT;{{pU %yʕջ~%M"bjkf"m,~uP/0cڳa*u&eS`_XQ`2MfQא7E7Zr{| yedblK C݌ś E^qpV`I->%Ig~$Xb\ x N pQI[: u #4h Fg:~c;Synކ0y#UUwo .7ңviUcnʣ V}#).X OB^tXcXɠ{ʣW[BgɰDwdn9.f!$Kkq^yⳍABdžTf46^IKcԙ&C!QaҺى%y8V]x0MggLZZDZ^ч˚}Ĕ׭6|`h#"|Wz."Ar~;(9@Z8vԧ,pX!^T!Ϫ*o95ԭ ّkn8'a,PJc9鹺/?u.%,y-! zRF rCxkw! Pv\ '*;#΂ޏc[ǯHSL.4w#STve+KLyS G8c+ʼn;ik#&{׷ov&9O3Be|XMW7{5?V$ΰ~$Hn6 Sq=9LWC~|g֐BJ&G9bZF]8  fo.m=2M=$j'B ^cEbz, V [-S} 5 eGl|P"G멱9x {pPB)Jo8es8;C Gpz0Oyyqx]82E[xUysɻB\MX\'^IGڬϷv6J77vo~z!^ޖlХ36 X~s)9=fJvEoW]s@v|,8Ò}M@:4ꟕ-ݪb^;7cV^I< 9|lfzP%3p}솮w mbLe6 N1oY5;Q.D( wn^^n֘B=ulpʮu4p_]>?3yMB`ꆐXgRկU qz{d&)5Y5;0xvF/qUi!`@ AZT󛔌-gtέ'3jN|heh4{sLiԈ V*.,ҠdHJhoJg:-KD҉<ݏ =Il)? гS'8Tw!qpٮB R7Fbkm?kvo%?kY^vQP7lym NRn>H>l>Hѫ7Qڕ*pэmL%1 RFEnhx^Gs{U@ymeLiR:Y-2S */7g솮xv-v;et*7Hv>e*b߱h;v A. U~6?O#ózVdܧ߉ hV9m;wh:W-t%znzK Ti|XDX#IJeW~A=tD(38}™$P $djA81ؕur~%U侁u0[өބpGb.Jظ,aÇ7Edef˒6RV-k(PE'[ڻ6a@@I;ڰ0fu݂Ew2qzL{̓pedA'n uj#$^{a?؋+5Xސv4u6)ZPB,=`6 ?J'WmB/ kkۃ`l7HY: *< oD.92nz--Maf3ݰ_@Px+Ri!NHv[f)le}֦XbCqw3"ީՃ{5^ZH 3<6'Ϡˌ(|F*Jܮ5K`LpԌT-Pbs >ܠ vUgjXNWюcRrA0yJ܈h_=jk_`4+O7+B qG ^-8n?s#LyQD%D&zǮ$g\;Gj"LouYMfql &'opDRvvSQc"1C ԍxS-[Yǻ6Lo,u=.mQd\)I}|X#4>(:9 Ju |W<d뵉Udo;A/΋¸s~gTSfB0OnLfjp܋3دR+ ;RS>'k՛P`8]rpYq84GڄƅkM'~ЉezGO{% LTŚ,Wa_бK0\ Nr~cYqN _ӢN9V|ɝԪBOdj/R mrφ V},р{|Y{u1K$FZr?%O.0擆0`') ybh v GsI`Q+1^<8~ }'|tٜmr39>+ vlbMjg>TLĴH XD U|{6} &  =9+B4ᢧ瘎"#R:?b(pR6W!lr< {!Ouº-G]ɭWk.` ϲUm_K'i%TQGԄo; &kmOly[Tft͓nM&z\$v(ɕ4JA~TA4 K%[R=zz@M*%'ԛn:@LP&f2cs8:&&(nW|%RD$gkĖn1s"^a&L@ ڭF(?/aT.؊ +)ja[!/8Bݪ/]ʛ;(2UƎӖWr!| [|} dϾk1Dl|V {j!`5es ?ȟ2U`nܞy)V<fY ]2B"l$,(?ip+7aCU(1v(=[MY92&k`d۟CZn7e$5^E,^hCn淊 YL4:c;9Q6%`" \Y@{'5.j?t\OZ i`Yļ͟ax\peH<W`BjVʞ[QlT7Bׯ$.AzCO>g F%$V ]0ÌGb[|bE5^L<-f`]Pь"-grfI iO>1%*㖰/;C L ӎO6?$ #X|9Sڮ醑v-Wm;i c; ៎frF"{ըbը6T-CzK)¹^M>LBT3}ŠzqGeaka}$@ rfu5 uP:?ocBA1 mx,!ޖr_3 W|]( AZ̽e%N#Puk'>T1+`0Ch !8b1HDbly:R⾭[M/|Bomz2!.RøwvoUg'G/!.&N<< l?A |vS$ieb,=H kVrԬ2sy')ݰgRgwtgFrpWy?H97@znG)V[Ok:q| A:`/S^['#NASP% @0 k6bkdq\~QEUYm}::';]Q 0}aUM;)$c pAP3a n- u9y5 n5 t@ C>=C6Wvhן%" )\"7Rw:ox)KsGcRGP @MRcc%5uk8kQ5e'2o/"l`D=2X蛻{-pT9UO}K)±M= OGƥj^s%i;uXkp%Bu]L{HOo8L)vQE_ N9SG9K ^1koҜUhdFM>ڳ,Xrѵ>/N_Ęy{|?LPq5Q 1ᾦ QM%83A%5 bQR 1]Ǣ-1&iZ4yÍ!&7j q%0֊{kE 6TB=t: F_;w(2Fhf^f)E3Ba|.D陔,įٱh6nDIr\v|LcOwfBݸWYE4izỤSzvʿJ D kj.n,Ś(¤tCOp3Y?yDQEm)E=EK'%zjp;ܿmZSk?P#|X8@3j5yc^? fu]^&:N퓰@l4ڗ]gE.ub7Ig >@K:-TnI):Nfo{$ :l_C JpЦ'-ǙŽs2.v`4e_i>fuש q%;.l>ho,F&ޱ'yqŠq>y,_F9`XؒP|:kʌAfVš&vk5y[JJWڄV7Jb()TI@O?X琑_yhC }˧",ԃ_TjR ?}>Lbb!h$cxeæ!ly׷e]rp^QA0۱s+٨&ވCH/1 G+@Ih1x~k;d~4GҨ"=6a(D^6 OksLYY-)\ ̿*q6Q&f#麰@=.\/>"k$~#Mbd$c'Z8n# )A0]:"2pG&:my'mV;\U]0z`l$PDa䂵CqipJ{[zHڶ8lfț}yVa>Wp$1U*Ub@ K)95 $|`CF@ Lz*p V=$h#|,&%;IY.ZjGp_V*!QRqWm#/θLqqV EàN,CZ˾EK@kgs}S\dDm1i{#-I v 6u=-UgB.#NU-/9~P ˌ,دo&Ki p$Mі`<ۧ3HQM]J?V<47]:/U e"v d$0"* ot2HK^tT?.`Sgb\8;$dPov<'xmxb [vg$E)[q{}av`ǽ‹ZK[~Umz"<:kZGk2QM/voTy)s궀W 'H=ٯjqkgx5Ǎ(ܱ/=>t䍊lD`~)eMvT>srnc=&>ȦZNbeT\HK u2ximMm=G J ̘wPZwѳqJ҂[(O S(85=r`w}*ӫ/b ?!)XZAp`( LZ8CV/W|ohd%MDz ?5)P H6: b_W5ܹ?R1ކ⫄ (]R#Zk3& 6w<2@NBY< Z,Gu?Mc;Bss92)zIi$]5># -#GjC_A^" 8;\{j򲡟 :x,Q€47>Uԫ *"'Ɵ6SV<P*ӅxE#} H>i$¬֧LGz]@~p8e&_@QEj<\OMl+`< \XeKoeqkLcqv RՔ4jJU3 Pavk}W 2ЭDѧTFfΩa8!G! >;% Vo`Urr4f!ҎZP0m,'&J&TJ@c _`p ;Woq E>d[|}=eIL3G>8~-RGN]y`"BMH h]3XO  Tj}A}J &\<}|VI{AH>ɭPg\  1}IѫtpKYve1FcO҂rskRWij+FO~`ޜ-#+ĻxI" A;bZ:le(|9¾F[3@3BYҗP㘒߮٣;c<_%݀®P=ʒS\|A7N#G¾^99~"& 4+1CvmE54)`CPbyxy3q$#pϳ=QY%$jS5{9C5 Ba /l~ӷ=r>Dw6`=DS4.vKE% hazW9 ްbR@PRgl͏愳_Q (+RFmp$" B|m# i4'FB>%/w&jd9|byfd$!ee"uƕڽ[N\ߞ?| r)vpḺ9>Mtib9ΏeOM ZnTFOgNTXuLd$62nĘQ02}/u{~,\/kUpnR"~!HMǷy ;i T+bS62&4fķ)$)8#x>+@13];!w_n yKHJMQ.;rK% Ѻ^; Uqj9_'ϟxXe>YG:cv#*(>xuओgm8WʫgXk{\4zxLd 6EmRg[(ޚBudvejjdqR7_ }T 9c̱]<ɐ+nlNP$!,aΖ8 x݇4[qb%fӀi.yYa#V̡=VQ;j-91EegPb.GzWs<.\SE"xԺL,EpGĝ dlQ [!)IעJ9."+=i{k ƭ@ "9ݘkh[T`_璀YTܬb,?[* ۯJAXħ;ѩ > `,iNdn|lˮP)w:_(xXGL9>gleU쒝 :aҭ+ +e.*T5r#SzRڭ~/68Wȁ0lW;zs^s;>oB1{9ڝ5Ǡ@dNw*hHG:ezi{7U]%'uc5 6DOX gGF4뚵\{?mS{?C+?e[v>n Ga_T?0Վ׭F?Lqԝ$~ѓo\4^@ ̽yA Z[YS, ]Ɉ%-;GEEJă̅[&4~ەzw8ے19v}} ΁sO {ow\So=(%_9w/5:ϤRo4tȢ&3圙 bAc0s{GD7J!;rw rw\ [T5 i.2s YH-[0T_u 'SVi3ffj3dwZr R}+'vi1'R##1vUD L-Wz>*(W& AEĺaAg+`B)&>ԿQS48I'WQkVmK%G,>}[_-0W&HDލ0yIE xEǏ6;lpLP,Ɠ4}%yHfatZ~;*HuF|*R`U p*MunJ-(}f<4*h}hA9hB\qy#C80~bFF""qs mhF]:E4u4@:Oӿ+K ѼHϲ=n>b?Mdg%K):)fi۹U%߅B8^OZry>8sيj#M"k?Q=g/3{8Lmrx{corF~ӡ)w7d$c;Y[ 7j9cu9ܝ%igO"D}6bn:G&1PЈi0q*H* bҟhk_>fP+buCi c3ĿFƮr&),/(L^(/"@+.Hc*y[f<>^X\&b[ W_N?M%AaE$\`~5al?B&R,@D0:McSr.l[ q6P#9Wkhlv#$,jucS+l\W DMή2^9ZzD6h#g50pKS/ 4EPmHC;l13m WIr2C䍐ɹջVIS M?Tm 9h!͍ ,~&Y>r^t[Pw#+=?GC"]ޟ#,;2aKBL'j,Ǒs<82 [Tƪ;:x+9C4`Ƕ7u3]ePn),@% 6$gД͊WP98֌X98r:T}̈/: 3t`MKN%fiu=Ip+h }Ehc0-k# 5/e& _8K+`74mNY"y1c"KrL)bhq uTVM݀:=ix ]c+nNL&FNZZ ]S֬9ۏLA S4ՕYSY<1M]Ds nDϹ U.((TatWd~5#F V-XhVj B@ztJ5od@7 WM3s۸r3 (ӸLwQ$+F]%~W-ظ cczo=9x]RqҠh}Y{#Ĕ BBDkzՎuɘ^9i̴jсCkيs>λ _Ya63э*|b9=P1O4Bv`9yM|zUVVH "~bU "|*BLz0_,-w}mSEoJlJ߀f<2D@ߦ"Fp)eTe|JU0e* l@iCvżPx+l,Cas`#h g.Q,TrvmVpI!Yx[&%g9 "G.0b1JN'NMG{! r5l*4eZC*F8T?[ś śdMܥwyxmƀb >{Ǐq ( |’eq7,]bޅKGyڎY{6aTcӡ\m 9wBC߯|ɦR⑅© $v唵ͣOdT0YUiay_o鿯[}p5)n'1"X7H+ _gA"Fq5o4MhS[iansPJٛ 3?cfjjmwՈ?nPQZ)_1ڢ]0\E >]pԽڍq<&t/2{Ӳ4;ƹp!uͻgg8< l,8ԐEj^W-d8:5~.GZ !7D}XOV n4pIl>FZ)bz:U/6Wk*rHBjɫ {% 12-˗8.EL4%usxJ)а"͛%G|/Uor>^ λI:nxs?8e2V²nIyUkrI}[nӲqA҄FpzV;S.1\lr&Pg!LG`PܘrosP/ZbMk@m"ƜНmQJ~ :FW<'}J`ssBp ;`(>;XOh㢎~7ebfvkYP;O^eA2GdTt2=+I-#J67{;2qCS4|lL\ɛc&Ј`"aA s ki*;A]S6˱a1LpT$y&m'S^$b%)(,OShF>.]k%ZpYEdG 6 kXԹQ~0B4Ah5P?Y%h>H;'qD%'-n~UP0XPv~4A& x6_Rɫ|;*Mj3,w&vd'5%9*vP>bG vJ{Gam:Ƽk|q(HN_7p<%*4M:}z k_I,,W"M Ֆ([0b*0`BeGY]DNQG3l$yN;3fc=\|5S8F +oy@ LUCp:3K\n;\wYp`җ\=j1h fV踔%2, h&9H08$_tr c/v0+XYR 9ZZ_uGm+ KEЅY(wϱGv^2hq[4Hpp/37/m=o-%d4xԔLŞ?.6i3;<.P[ſ+O =U9`CEZ`0F5gˈa{IO?+҃QPߞI(m1_I|j"S-SG1qb&7qaI6Īv$h`eZTST©ߟ?UO+$?Ppw%Pȼ 521g:9V%Uj_`9d0`wM I4hYV,y97m0zG^w@Ffk ڊr#oT'PCy'W ?CU6oM 析ǿF*=N"u17s 2:s7|_'FGEy{28,^m~]Tm T0)}lsY=צ>ꪎ!ؓ #Ҭ;AG+bdٟI[]Ƴ,CF26_oEl{t:ohsNo6B.K_d2y#þ"Srv.ܞ0 6.`;Z .;*oP/I囹>JܪNJEdS!ŷA̧J77O`=Vb[f,'ǍIhTvF3Ұx$$+!@9kˡ- P xnˡ9h'S%oFH|̀E002, yhz}'x!p;TMP4w(ڬR@IJ=y7H: Գ}&LF#2!_E$q Y$ {DCMILeίD:ll9A;>8dZ] -\^׻d"Yˋ0|PGJ6ODyb%q۔A ra_q*$/?mHR),}?ޔ ,f$SU7] lDPl2}H1E[@TTc&xH:l|/MS;F"vL%F^ȣh6l ,V2`y[j]a@v"wISou5k`sH5CNA=1x 0U0r"/%iR+f?P4ZTW/ 'MBӒPBvq*ÐsJ :j-*J{M;;Y~OEHTx K!\[Xyk0ߪ[kDƹ1$z4pЂ袥Rס +$c(`p!66BuIa0.ML3!'!Lv64܏-JrX&;c}KRqr+2k$R/V-;boL͵QM#PfUXk‹"_ H.A{(㑽[YpSS.2cI+ڤ{*0kEDlhQ@xz; eۺ ^48s|fQ>&18tcnvSTolxpHl GI{k`g)Is'M!I765s=/M8KM-?^ݶ&46ai ]A:u{O;6N)h1O ftynI#q8cƓ<)tv$kv* F##; oW {siCC 3cInܝҫV]H0݊3&oeRzaŷ."V; PS\z+1; ;&<ty`}wm3 suz#ՙ̰&mx`ɏ\4 U0{ΔELrOIdRK`k/Eqp刪o0;vXK螾2#> $v>$l&G:&ߋEC!6Zay`zL2 꽉kd QϘ[nB\|9^rakܖ"AI qGkfqM%%D"<X\HЧ 5y} L'6Rl&)Mnڹw [Va=83B(o+IN;.߬O"$0Dvk5?)z[sEeɭC ugwOyzBЋfL4uAEfd`x3e|\Փ` eG{mt9EJr䜮\E>2^ 1Ŕ#̷1闍JpE٨38q, Q $W5\DiDX+sWJpm|_1a*E&|*jw[>yY1F׫j(s81~sjmD `aw> M,MN.#DT[l$6K(_3r01^"(ݵq. Rжd48!zlˎ ^H.~VzO$Uƫ}~VPJϒIfaR͇CuZx])mls}r$zX&dwׄ&UX| Eo:N뚘8nliJtsrkG[ )eg2mQekV,@yrműEAEP&ơ6`r3ai#%Y e- .2x*ށ.qaâ99; PX>\n BJN%+)5nF.,=dИ78x$rlgVךYYR=NkZܓe((TY pS[+j}&@:ogFϬCw%c3~"K)r"Duy`_7ja KlzԹEoVd= z{zvRJFž38jW{;0 KCue"%e7GӪYn'O{r`Vۍ 5tr''zBF#չg2,έfr .l o[ ,ChRŰu"%u ,Xkj'{" ͢ݤms[?#‘ -P|7,D"Jki&9k 0:+_qA:&L 6gs%5+ՆoY.?D5Y>[r?t7Zdzh##0m,/Ff֌{'kꏬ5exnWO1Ѩ VƮ).!өZMfz2 F|1gP'$`+]Rne<'ζV.fըH2'&WhzLpL]QnM?v[p*gh5j*K`:M=" \&AI`GE_sE Rh0/iɵDk}:QRH0(.ƽ@TWڊFk2/o1 /G 9d/VڠD)V0{#륏",}=yBqbTЀ`QM,>3/S sRSu 󨂤O&dlOs{RaGdV" >Z2W qk ]Ljw9\S2X|rCsMdHw҆nC7uP.2kģ? hiufO9jh،de1 /Q2bJǢ RA?zx)w |)-aʹS1S#pA jr_>/!Mfm*F7]s8OZn`2/د9Yk6ow#Ej:1"(rt)zz!LvlPJc*N//@TMXc۷3dt)< >&@)Xَ,w+{?? pmU-%rgv:-M!q# SJF#_6KQf@lcŜJGfr 3ߙY4~LCޠn1qi"F5 -RJ,FLQRܪ}~a T'k+avS$3g oISfp'y474_WuxyYYod+Ne;Z: `,g88UeQ \z1OR[:]>*/ 0r,,J3;HjV5(2eY_%fݣPyק"Cφ0R,d$)l %3/!\<$Lkbv[oNn֯2?=hӓKGnOPiS"[:Y#z]r)8Ȯӌ8>@9P^ԸJs%Xʭ=?aKu Q+,CM yC^ΪOtc;­[9k0%^eNKk{?:tjz$G)@\$J-# q 'jKD8xRj  S•r♛ S|JӖ7h/HˠwC X,оksy]x(5zoq@Z 2H%x&jFտ \Gjk'[3_pO @.zc7Bw62A]}3$clT"mQZ*݉,6!+J킚(3;tM*逺w{^O<*CfEgo>'g;@ȎdY!I>u9 sQHAks=,LD|m3*恐 Pu/h"3 m ;^/Lbvi@>憎7ލyI/O&8Q|1,/^&³"uV-u@`YZbrNG/p8~?PFyl~u^1ϫ{A\oقZ;vs4kgծȯ[׻)@ǥ cvD59{'Xҫ+{<#5=K=3V&O?ܔ=鯄햢s7R[?H+ct9Ϩ@V PBn$_sEzăSۢZfE큭U&,hQ(Dq v!?;kZtB+9KAЁ/D䤸UeYaS>BWJ66}AF3FV9_k+i<^&<8ťd{`WLjaDe @ބb/t%ۑHP>V]892# 5GH #y]P?!F4WLp(8 x>3ɢ+JA&ԒY-6Z] %s5=Ey$ڥe_;1֍xHp qPX]Lj\-Qgxv7CVPBAK:,Kb8Ԛ_*̙d> SEix yc+Da XZ9lU)[{ Z~!d|?'cC )N_x>*2AXaDA\dm^O{y0|]WGB+u ͻ93SRl>:c³͎Uo];]]w{Yഄi'1o:]/Fo+hՓD\+=vr@֏~8 |;ڗWc{:zc%H 6 F\."j#%ס|(nL/}6%^Ⴃ3u78b5+!r1Φ?Ǥz[(:~ݬnBC[F]'\凜F+t=s!)pef l:Ӷ u5SE[=ýlʩNi0C7HY?T#>nfm`;Yt50~Ђ pkovՎ5TJY?4= >XCie ڠ/^KSW8/,yZ/NJOtfgy"$l]&q `&B=JV ( 7)G0pā~o@9$zo!ֵ xf\n)SGDT<6Tzͅ+o*gwrfn@ze@eL[["u ^g^/j|MˆsG7)g=8fVVo͊P`RImT {S_$5( 2f2ّ-m+b (p R\gk-*{ՉNN"ZwVo`iͻ)U3 6nݮu/W}|!ȃ;E2eqj33_r4'Rlf\5א Lst߉H}Y,4x,4R_@DN0y9ƒp%~vp61nҍx%YqLyO4po/y:Y&Rp=&M#R>n vB/Puȷ34 Ytk 6>QOv P}J}s 5nkh>2ORֳ3lw-X v= !{\&~8SCP=G.6kxY 4~N> s4K g`@A$X:ڌ+aGxXO4ցqYoI|XLQܝk3R[wRYh 0˙ȾȯNaP"9?R}9ς&Gm͉6;#Q&9_ϰzTpr!̶%U.!E(T~^TOu-;VtvC~׭bwU#ܗ_xـOm o\B!/,|W"i׬5 [JlA 6dkŞ5Fnv" 5_$TUUwB؇X1)l89l8k愰P]yٵMt$ɘ7dqrj~bi =` >zηdƾ- D#$wsrQo[$n'[@_,e&gY6g$N!Bj\#Nu†@j_7}~ZH ̾/_\ഌ׼--))IqSO[tyqHs :'0~ {V,ֿ'ZpPĀ֟Z炍aͻ.0iRil,F֊Qp|_jfb)G `%~am1Jc!Xnsȇ\E\(D K,6'NQ  k}.זc|QG5΃8`6tsD1;=(9MUDt#Y˼R@|)ſU B uNyg/vQJGAs[-~Ҽb{=ܔKK\2lr`a-x2. i2C ^4L_G&qn3̮)U:]lbm=L_Q,G2a) 1q#t:G ~1pi>Rg ƞ;=EE&Hx|ˌ*5&׾soĨ*(J8q}xJ`h-2RcE`g|NwoYn) hؾ5?U4,@ne1 s~_8@<'=N)j"]\4Q^϶4E#r,ו!l\vLRv?$]odބMvA a;֒t Bu-ׇk;A(77P%)z]xܤ$Iv} nn4q`!Iދ,cD"SIX94IL!rR rMgޢCGT,\ޑʼܭuiۮ=R21XX='j6w#-"?$.|;V.a Av+d$ '4<:{jEc sZ_QJS518i Y䉺A='ʫB:0s4J= Psq݋4]ONI8nDSeO'M+;)}qNJ:at0|:0յ35Tbd1ns&[؀G8=jI8^[$ٗ*yƀ H/u̿Q 7k8oWbu ~SuOy5ҰCyB'PO'H\6Y&4`J쭾=ζ@3$K5ÇR no7(pp(|s"yO pEVuK[uQWHr&-4NjY) *!pt~ə5k0bҝ. i~CO'pX6#A }=Co2zqH up XBl1*}/:'xǩեPJ ?ljݱzi>鯓ˋcIz:@aVB j7 5sً3|85T/nߚ3ԖEF޿ Me;ϠwzpVgvt*&7$\TruEt@R+ > wRҝqcnʲ:ђ'CI6'oj1!SJ^y<=7l|umN̮pªj66b[ړ7MWٜlpLVzЕ KNHpiPkUEzFy-Th{L'ع~^Mc߮`3T}H|: q"/,?[S\JyzW5C``7,oZw?j<IԀ'!W/0~tJzB:0|aPAte9 a 䣋 rkp|Tw=S ni6jڢ !(uB88p;p ~SKO=RC¥w@kI {Y$gRQ/B !KiKB|9>4JV$CۇD3\l8/2H=>CtdN ~L]4Ujr h9JeLEZ .N9g#@H;w?тA5n|֥,ݲxk 0cM(3`µN1*%&n(r, ~Ҡ^sc3am,rH/*/{2Uzh\F amk2v6L.iskr 9q>[?%_7F'7ř qȗ!7<̙d1#\N_s}.EFJ:eB 4C%@s+\ ~;S|,Cm"IU>\6#Eh7eC7cL@G9Z!tUQ> %~Aƥa!X2BHUG)1)h tP2+6. "LZ֠Q %q?{ɠ [;vz Hk\O G89d"6eѮ NeXU+|L=%}D鞋XXhrP|ubSa#liʠmƲ̳Y}$RHR v^x>gd]8~s#p8By|~UtVVAF3,TW=]p,@#c ӒTm3ou0N@ TEEq%}1t0.s SF DMɶd0)gX,5v>FwjtsG3h5D*uo-潲#n~Fӫ>5X={ Np8n3JybC`>@'E3+J WZQ?|.rܟA,)./!cc丣r_u8 -{j_ -2cÉezhEF\-S͵z^eruq 0zTz խo3'tv2K1J/;C:~LԞGBdwʄ;Y^[ji 4ۙ xg,#f-o]"CY?7${3Tܠ7F\d67: i"uI-;%Nީt?-F)B~g OGZ! mm #O/rXH7zvidk χ#oM/i|g]+qbɸ- \ԬXς.\Q{UaoX hI-Tj B\)I56='#↶%U;,khwJPʒ53WLb{~}GRUa;2,;ѻvY͗dJ`WO(s.zGߐ#4?jhC]7~af߯b>1°}m Cٶ\qdb -6W1@\OU:g#j q)̶b) [T9WeJ/jsU xG٦#_4?סۯmUhr7EIfZjP彄> ng'Ń.2ѢbxfFUL!n4>Հ1ilh]榔H|Y=Q;E~AlQt9ސ`< o[/Jl)D$FGbqcoҎ/ڕse IzO$UJ?D+nUJ>w.EGKZVK%.;Iu<v9з-D^zX +m z_"W}M# 0\Z@h83heM~9#'IJ6Zw}Qt BRʼn~:,F 0@%f)wԌsȆO:s6w6׉סvWA}NJ=aUy&Ɠ>gJ%`3lLcLH"k3Q+u`P;uqǸW]F8K a7}Nt[c5q< Br۞˹5„MI7.u`ez삭6f];JPA#URԨUlOfFf;/w8o 21:hˍh2.`ǟVgum Ox]=K ǣ#myT WnnPKBڃW}Zi6NW8f'Y—f[䥖 $E !P +q!U͖72 .4P"|fM_(pd\CfpvᲰ "ߧM`sic6UL2fZoU3D cno3,Mj t䧀}h5NKʿ+[lv1pCqt]8/%vk55[G={MpS;Y ?ЯC$vթr%JG~1~Sk"0śU;& iynj9#pDp}|؆*yk0|*Pw%sؖ`e\IH-z/dS@yL w%qʔ|h)N65{^ϊ;HZfP=XFDE+ gmC6Fb4Կ?w`6\8ys2f̴1hjDD^s^M~bmI=p$*a s&C?ITSF7ٷE7UfP̅Js s~ Ope,h5cMdJbiۀyz nNdd궍eJ C&)sǡ )tkUzH(*D;LٻʱxGVoScKY1G"A!qpw*g'id+Dq<ᅢSٯ=LJ2M&t)n.2ӋRK@Sԁ` !vV\r266dF ۥ ) q 0*=q}+u.L/`/:J6yU6L/Tk.W )4Eb,Ԡ|hgS$'`ar9Y(ڪ8FVD[&J0Tr2qEM}V},Tsi-pXJP#񉈨4'(g0e &PGX̧_w`\ώwNRa-@#O‹o*s~nnf.2xUkhdLY\H/fRenoK9>K X|ah'-)w>%%TM[|nĩ<7Ŀ wo4ZB lߤB Ay P|h>aR,*13N2EA[^Tx@ΡDl+ ~)3،O<5ˢxҭuT/ ^oz+6Q_;1ttOOt@<(Eja?io&fs);?aR% ؃QCeMX`(fA"IXDknUl7}th"\wLP'eN,uO]T3P"3O =@$Z:I$p.$FOj鉷Kdyu|uqW!"wfn!wo3¿GH18Z]2LAxix­(ƀK5SnB;ʫfYiߴ!t%^̢CT~FyAƷa %rM2`c"4L2,B&#(Bog_H:*Gwic1jӽdG&M¹pVxqE~]`2*G~/iypsx_E}鏍1Cx6-O\dF>+>RQ4\ \DOPU @]du'KYYKJEӗ_ *d&.8KIek&!mc#ȋE/ YgP`$Bgٕ?sK-4a8.Wۊcp /s).fuRC r~:JTzwe%oӑ; 1쑫2 qDH$4>jFԱ@m ]ԡjaIN4'+;ǖ+x]Mt!yAmp2j e3v ܠ2ZUk{KP\bb#~*_Y0\ ̘9ۇx{Lij#6zlY'iYׇhHjݹ**WTg lItD튥ʯZ$9:n~OP& a7 ' &F-U7FԂRQj҉"OkJ؎S׆fw&R EQ?x Lc]P@o V4K'k3{OqC{.;vmrͱ~16.k9= ܫ|Bx_u#(4$X36nj])[Y[Y:͵=b  tc. aڞ`?&vGaHʡ+$RR+ϟIͥ8JT_nv%/Ijw '8t|wH% S>X֠ӸMHYsMcqW+A e<+>v&xհw~F;-b$:;WM X6hT< `1 ~GzBO/1O= @_C0?5ܟ3'!4釲:j;nĸ%4.akTi9{8X%2;skG]ew3a4(2Vy麙iGj@;o 6ё,x醮7m׸59vBV3p5dO(:&-,i ;V"f@ve Y$ ͟F-Ϥuch膸/Vդ7xj&?7^iIڛI+_ӳWy!67q3 U™2\Zek<5 v]XbʲDZ Ȳ  Zz_nٌr_Ve[fd՜rNןt]Q5u^#r:V2a[ܥlv)A/8gD yC?6zהL\ ,lֹ! tU$|a*p$,zZd":W`ƕ9H6kYOWm+Պ@ɜ|6h]> %f DM?p f-AbzƎ~?hM'-tk/ʔBp&M7e`UPp-ZW5R-TCPza8Nj{spK;._ Ц<*Y(KMzLjZ"gnlJQ)6KLÅV'뒫sMPw{bdUf5k!Wm Y25KXsF>́될%Ľ'DlxE:[q`t[Q!  y/U]E+CUĖ#6 :.%wCC8~#TeZwVR7b$'-аKx/yƄ(6jbuIs`8|p:7 Rm1:XiXv*!i=YfnwliLwY b椇Qfv|9#s\*#J'PxK"#U/"{Hpk *sI =8H)S3GU+nP-7j4`Ex]lE3cnv2 `HKt6A^GjQHr;0eNx=9-Nh-ZlƑn y`*MU£c){VfDW jPxp"។$ɉlzid͗ tf%l(oܚ(x9UgG_eFrVmԨDsHwi/61t/?=l^W W4@8#- S 4{ WQ83)W9/!dYjW}w8DK)r6+Fբ#ߥM"6W LU'[7#F|}wh BG9Yzeʴ|G\ j򿂛-aN68~Ƨp(ݟ_ ,o!,w0]d-?0|7=c$Η?}dOxff'e*p?5myrj?Y Ż|K ㈱Oea?䣃 t4u?S M)Q.1uF<p!ؔx(SMH]̺\թo TTEegD@8Mʸv{)5c\ڇs=фP%dRKV/-8Ml{> &Zn+sj4N]L̷f /6B{?K*/B̯Z (nR;^%Yk (~#P#> @J^G< +wul>\4k*ݙi7ES/WGI F8PiXPYZc'ȬZ|. @leA )²<8*+YD>{f_a98-5љVݺ2ltMWRX*{̌82䃙̣EQƇGNAT<PlRVr=ƕ@╪oy@`;wnG$k8~h@`䆺ZLRbq̾[Ǡ=/:>@la2VD;EbUfV{hj)M׍N$ҿ>2rQLaB}aj]h.3A){7ȇ8'ܒr7+κ%2dS_GB%JS%kP`;v ZWw]wTz!S%%ݭ[y ?+m1τFҊJ#IqDF>̀ EԵ_%cOQH(f?naɧ}i҄y\+z9ň[f"a"x|Fd5$@;ᲂ/+CL!-")Ceiq/LduH?x>U }?u`|ӾSkSv.jH5{3S,=7dIWi^eX{eJ|sBR8Ҁh!fd{,DhLW /IgYzC| 4cN8!9 k<}8j'')tpZ[N|-ǣ*m 9Ԭe[ <+`+>'NvʑE]P'ĶW6"Lpt[c6W͵]@R4nQ*֗ ĴrvߵU;Y7z-+6M3~!JaN$X=&>灀[FAl* `MlaB0\[B{[++b\p݁>]/ђ!\ǰ/oJ&{)ƙ r7_ @4/B|+behJeVX7QƅJh[bTMՉxjv^Px%m~&{M2ghZ!k[_ȨCl=/wZ`5d/j$S EUm)*GAD nIQD%lFӰ 4#A 6PVLܖj<` FvkKjL$\r88A4~;av0#;U}9CS͏AٶMt>gĘBF vB|)OBZ6ݎ?6~2S/tA쇧cֶ8L1l6P!t:]`lzm%%ȰPuͳ.S'IW^2lZraE9sgJDOmėy@O6gxmZρDwmcTKXLI(rKT>$w%cMd(t+?WroAp+ƮKwH12a0meB-pgkXtN $852 ©6rP/#qc/N Y0OB5O/в߾J]sAh+8=Wl9ܷ@/lᾖpU^b1/zwnMަ0׎^Je) aKn^?K諳Ri“WK_}]\$g(^Oc& pA*IT\8J];ף[$oXJ;Wީ6ɕsI:ڱk% r_H %-1"k п)$jm{3x 7p2rGJu4KQ^uj}|ٱUY 1}lK3$x{ S*y[} WBZ}s;=KcDPgiӓ7A<;rA:{0[,J` S]WAT myd~L\'BgK>EVIJTt@aG%:},Abts[x?|BAas=vb |?(anB TF]"ȃw+,08DXf< 2s]'m4*ǦN [AAA*uTV!Q'nZ ;] 9U>XcCqY=PZ3C%1oR\U1NU-o-guqt#3VrFgc hۧ箇aY9J7ۻZ8+ wU::W;qκGtob )_!hJHl[3jYC$ϫAx2 lr7ܸNCO"-FFO =tݶHLP^ܶ$鵻hr8-*䗐H84GSw*r_d+>,\8[%8frb e2Rb)\íLyӳ/4>퉂e32pgҋh 1~~ TN-:ÙqYV*g+N"7dZkwX5>dXA"x!V)iq$q,=sS:'+5oqYHŨ DL#7g(N#dyC%{t:*P%c nWހ`Шϙ%TΐqP MdGVВ;rɦA9Z6#JC`Pp T OZlW~+Rlc&JC$2޳'kkg/fLtP=O䙩*YY7//RYǽ*5Hn4{)w'v r~xNu,892]5]jg  r:[5JB4{Ult˟ca<ώ6ʩ壨Q#DG-] NJ TꧣG3٨{iw4J 6EG&X.3\tYIQ|Ґ̵\ jS#nfߗ<mb[;jƉWamPT"Kkv||N]Jrls6ӵoašXb1 &:O>Β \R=DfƁW&T %{'%M ϵ݃QИu<ٷTC \l)ڽ<0դH6|k/OmgcV%%ggx3H5lNsYɚX>7jW\п?~n7׵WlC]_۪%_Nh*G1'$ġ ~X=ss~vZ5:F4 6B2SScHN֌@7HtmzY񍕉e亜,6FJFƟD3_<ŐU2|ToU( w "k%K' ٞtL = G넁*\V3 Ux,Rzl}wP2όu;d8iBȋiEt^"PpPO BYM1z;y>P⬃k.:*x󺷙k3vwbhq1l0q]VТ!+i&zEoIQ"1nF1{kKsTl;sOϙZgaDH(b{)U0P|WQHLtM`)s2I$])+~ )8 @h;8T/QGf8L;;/y9z oz(4G=9+GRi͎)Y+Wv4qbq袋]DT Ni{/A RC#G}Lw ;t}|BLhYޢz[XX^l=(u2'3jƃɴZozkO#clM?=I-,9k2z|խt98 2sSVEſ?1,a o7rRˍ^[O1knw3:KvL z=xJ)?eS--gYEC8Qg' uY׻mj^h$ODCxUpM!bT-$D`iE?E5nS\I#QIrKHRgl =ؒQE"I| W#MGZ4ۯXbZ;{3*Sqf5#/ oėwPh1n@ uy愙-&x9`.E9!Zds]A F ;l n]" ݰ-i?*٣3ݲ+ð7 ~T@%[:>~bٮ3RzՖŰ~7J0>/ Vt)1Gf̸dK.CR+&F< qX) ,@eIeX76_(ARSϑaŮ'6NRk6)Nm@9b7+򞄵ku@SA1>i'*II}]mcf*2CVe[ТiE6/, dȑZgd87y˛+STn7q778)I]ҽYgR(W(M T?&jGx_EIt~b[X|w&DF/*?H{ㄖ?:?bnkH٨n-e0ќSںxWZq,oL.rkO`G=1[FLD%, }OpvHƬVTlupS"L< l%GP^ cMZG3o7M!ya4>I}:p\ ȱ.1 Ψ^aCY6-ns*׶gø2iYEYOKB8&O B]t,W^oL!# l*zK#gJyEYםb*JS6NKt*;zon+dAL!yiUr1t]AHkCML%"Do{q^#HH"Or7$YyN*WcvP'?7u@>f2(̥v% _&C_xw;8!Za#5ԟ\zɍ<-"?WqM@3C8Is&UFEYxqzt2 bpSV zQW{=D.6k*hqJy - 3JHrm|EV:o Ɉz&6 EwV[|YS.WsCwx>6:!goA(!U'|VRՃ1LH<}O³¾?6ο-zٝpMNjmcҵcnD ik{S#y1(ASl/;P%7GlPz1ˠAѳdT!rpT!H=끁FC ' rЈ\G, ҝk>(eu tZPrtaw8HRmDH'rF&<" 3: '~åAϡÓK^$ O1՛fFp0a)GWWDs/u ynyʌ.W99-bB mb}&fUؚ9"ZŎj^++"}aUѝ* ',HD1p^#ُ?]\("[K멒[8wrg㑑!0wy$$R7ڻ( R]\*AAGFF. 4%[:/TD)mzSvE0Zl 1Yq֒d/ԑវI.[m'hs-R:22N+YW'uC,=#a(:mYqp7n6E0iy%uHijzhaFZx\w=jg6V.~?u f_O&B)MTjwU܀6 =|z=mSQFʳ͹[49wwJs]:$L~kf?$/ t_* 6zB'W~|1i1t}!qA.pz[sexFQۆTYUŤO~dL^P  f 5o_X8x=^ 3.__hpyvJ^$TQ(t&oqV>[tʜӄb]Yt6rW`/Gjml߿fަ&_!110 \ L3劀d^30 cEn1W ׈ 0@i+̢=L5x]/x3FB\D&RY]#=K(t>_ZHǩLtـ&[݂}H"NLj½ 㮠PM#g8& Fpŗ!^p- ^C;h s>V]  `Zy⊠.✍G|=K CަL^Qx`֚qnC_#A[(VKUv!v{6rqCxEďQz 8uE{xdAl?]'`=~\g,ci-76 AxL)ZuOބ5$t[: P (ZjJGn@Vjٯ^b:f;5vX BZZ}GmOcXt2]wrƗSW7L6= , O>("FQ/-@8JX\5|g.Gft陒 ([tZ/hPwd$-XHgF#O/Մ'xY0YHSiN։f>3Se6S+cigL_N=΀^/=XU&y:&R rWGjl)a{[-|I7''5H,#UB7 1dQK׺>Ƶu '@0 1L1d]*}aNOc3Ծ^Irѧ1CErjD>= JY-6MlGQ g$/?v ,pǦWC @/RsIrts*r_@Σ'|5Ka#FHSCڂ}+UB"zo&=)ã9B;c~$]Pw iZ?=6 @"ĬlxdO ҂\ph5M`P"Zn# ~]%47Y7"O;mmql#]YY%.J+$3k{<Յ7/{`$0}FMtє"%ݕLwN=4W2@ ?0wO'cS0ȓX)֠ǻ)pӉ'Qqa"c)PNjH ڙd jAbF>ÏwN5[5ZeBl ';ܛx`1cQp[Uǐl}WStjFKOTeqƆäuԚnO}1OmF֡SQ@Y' ;+w'B,et井hL{^`g!@W7uMc` 4I%c1@?^A$yOވDTgY,RFXEom6qs7SjXhR Y(U;ީ7 ?,ԉŠ'OwN|:}],';8Q(R55AN-Fo^;W#KvZguA=ޝbN'jS_r(,K .0@U޾Mu *WߑD$y*òD%4hr0ۼK=t(UCYXv_4@e!Kj1S4r'O~ZF|9wÙd]os9xryXh>EqBUq܊n8DCL*WES:'Z ~*%^d<먧n1L+.zXo&ofM5ߝpZ q!n wN)cH!Ҍ3Zu} ؝:⯁Ĝ60Ow3D&33ChS <ϯP槐쵎""7M?WiHԮ}276hx%Z?c3kR' d| J#.~'%uZX?{ՃkWi"_刬Šl*{s4[NՑjxe] [)*GGduء|..LVaFuU H HxGhWYn2`чm F$S(x O1ꇪ}X߭zFpk$sIJsFZꎅ]Ʒ]ҁ8HnU5MgTOZ]P rp<̯i!$I!sl 2,Y  78XE:5 4fS)!;6(7]իBr~>ܹdbc&i{js'&Ĭstzs<\NHՆ){vtgX Qs28M]F".M)¾1fd йi%qăO.@skrgN#^ؽٍ;mUhTD'7s|dO$ Es-|%}w}]nn'SÈ{sb) z%990nƒX,K,H%ba$"ի!7Zvq(/odJ%ъ{ hV {^CMӇ ]QV9_z|6HD@ۚDH tm9\pfV:3q*`-fP XRi0$c_Ds 7_}m" ٖ1%5NJTV@ oHְ5#[JI$U 3j&Lq2v"+.w] `d/LOdO1:î+(M=/7l( YxvZ/spL$hTôr(?0HvHwжԄ"y_q42( WԨ`v=2%~AONM} Ҕ3E&V>퇄M*%dn\mo.8;ᡇcV s$qQq3qg>rv{#\[%͎6x^mB Ls n a vU/s\r 2IHUB4x^3 dp&F1e;o "5|p1?;?PUtJU}0R^2}Sıjå3wárk1 ǀrh}yQE}!JG0vBL'tLDўӯ?sָPU1tٽ$%E:(ԍ!)DMu'4H4(#sďF\h"1's̔88Ivˮu&onG|ŋd#}dW)Kʖϟ/WF{?|q$wy Ul[lh K1/f~|C4$Fa-{_pQ!d?gȓ_v@{Υm+D:']r{uF-}XXxɾ5,*Z~ OvQHFǯ) "4ZM\Oȣ#6L(-S Gb^V6qKxaqe͐T$`x.[ŸCw `+`|H2RAnY!ڔacfGZŜ̅ h$W%g.'gWK¾0A(bqӞ#퇇̔@,'tHNTi:u/'fI59SNc87Yfs͹{KZQ6P:QhvzyK7yS.e#f C8?3TІfu _ߧ4dKnFdƚsh wٹ=r ]71\^kB $vP;vPjFי17Z5bzIzr]f^ĭy$3%B=Pk+WUG':zV##o.:ZE I|2,|pqZ<.@>8']9{H pUH!7zM*6zb4&q[<g7~-m@rс9Tf3ЌrolzfgHqlJ1|[/yMϱD\cfhUm,y#785bg<}ĎL/{vЬٲL󍦨usxs!/{q5Q ppr+,A.b=KǑ [/M>H,jЅĝ^i``TPv}< 6Bo$;L‛ XMnG SdR)BYU%| %=w?|3wYfY$wfbP`lMJ1L1Iŀ}j5LT0B;H$vX;(VF$Mt;b,EI6GQnIO%BHñ$ىEx9 le.ejO93 hk0tQ+;l,rhǩ  tw. /5Rj-~ d5aM =Q^,OMS z6rR6V%4 138|Xƾ{6Z4 JԬ8C) Uf2T7z1;/sNVarQiS'+F$S iaB\329zߝH6u#ʜ宄mBN fdt٭Gs c -U\NXy 7Q*9r '?IbF>jʼ ۉ/=W#Ny`Y(|We(:T&5ZXǔlPB"JUzc#^=>o[  Ѣ*&v&wϮf4`3Ͷ1@YԲTD(E2^-)viCZ er"#̩٬ShΑu QƷD}+meAJF#zW0;sPBWW+wAZm;/GBI %|<( ,H?-=9CJQ#4"LyQcUyicZ3@UW xX(OL<XdՍWTJWSIv5jt"k5$9Z.Z,+:5e`Q l]LK{ 53 7tK\ 9׿ GFt}Ŵ,IЀ-:7O ߗ0< ')9pE>&lHFA9 fzozʞd#Zt;-VOEfA鿠ڋ6wIUЂLn[>Rq1o @ב:MhbL۫^^UFUDV <5.TǛx@E^H `@z:Xw6LP.%!~p_#N[T_(ѧD8 xL=S63V)!U\4G˱ :KGcR4&TU, %Q}$Gt-dYI^Nӊ,坰Rh'%EC J 'S:Zk402*x(jZcEM\an-3 _Ed[bo*a#! tT-rox7s>XeW X!F;K;9KA{KBnLd*n3ػAX;Ȩf6>NH ?\(v 83KR{L?Į(鴸.2ǓA4O؎u~<'8޸N~ U_n;}v=)vSNSSR tvpg~A}#XyP鵻Itwk#H Df , }ꢶaDCvp 4ch&P ?x8TnFQ%c\OG2rTSHeKwWw". 9N>RED@A 6\~`t f 2Հ>Xh\ JYӱJt+VP !lu2E=q˸ͼ'쓚F*2j F VLI`0RZ'h->K j L[`"=AC7 qGJ!muZ RSPxjC5/-̧hv~nelPHwaÛ]v XUȮ4Z.*ΚCX+P/d7AmekcX:= sl_JW[t4n[s+?_~ޕ9Xp=R#`S6q#ѣE jO6vv- b9C>if?%2#'~T(B.vI, JRxr!fɋLL+U<_2bh8+O%>_35^QAM4e+pa 3!1Ɠ =T۲`Q-Xî1$@B4rS|0Tto㞅;Ŧq$*QrtΞ~ w=Q, V xpDPIq{0:Kc2h>v-Iaȼ\I؉Q1*:.N±Fajr!;ƙR̛.(yƐbn{"\L T $tz gN2´o6M'3zyl7T1X?CEomꊱ 9pu^JOiINhxR8ylkb|7 ^6fW)E)be#ݏc8vbMPEԦ2a:$_𚕤*:XόWb;d/NX^!N} ewύj3 QRF3ӕA(=ܕ(aÛ`?.?wb>u-8/yTNfbZOC' ,^Ee 1La5ڪy㑊'=aF\C$"7_*\8&gQj@@:wc/I)ܝ*(:꛺Mt5}^SL)a8RQ7pbWcXue$kc>ΏŔ03[tӲ/éѕԶw̒<%Dy5LL%H9B}#`T,QIN*ݺ=c躻3aKG9m$z3{lQeٗ߀s՝Ɏ0AȮjeI9"&{" !Z%i~DV-.U$+ꛂV)p"=(CŢėJϼ7E*A3rzk.(q4?DV0IjSV֔,nD+ ,?(^f ä73!}dIS!f<- $؉oo;sJCZ+jh̜'&!@<'8dws>E#]u?"70wHo4.ǴYبlzkOfNZͲJT䓠|F.2QJrhUgɸiI]B2j4ss3 ս'37.!*QX+n58 rX@+_y's_19U#SgRX^7*w3}4ĤjCZcJ̱2_k~0.-慛_7mbbz0ڇI?Yңy W,JJF)`٫!W=gTrШ}Pr(;>B6w|lg[i |}TCdk4cDp[+0 Cץm?jZٮeHR0Ms¯C/ZAxk+oPAt8uy:GYtY;k|"^STI(  <H@JHxx^'.jtKzOZT43Ёc0Qla8E^*-? fբ-5ܿ!Ѝ,LT+{&%{rټZAH9 $8ӊ0JQz*uNʧ'),LL/U?Շ}F99p-ǟx`Bl]#U62zc9$I孡+!d[P8}PTsؖ(= 6ӫ-Na)bF0WbEwRZ}^)xU)CҮ(kz`6~9C{TCe>x_WQ%+jtkTl#[Y0p,E+vTM46ag8Ll=ŗg%#A_ cop tch{2qME4!K׀Dnsu5) ⼘;ã OFYD"f:)gY~ZG\``za)ݍ{pB.S_ؠ䬌&&4!cDy.Q/i\qV9\:pG yn1&m d6^~jן][ G|(ņ;;2CA7;sH f JnU<!CEpZ:컅E4 A{0SqYBVQaۯ0(֏-s[= }vy. Vd;TBjsY?֏׆I# M>UaAIYs̚9qkYc9l6~Y: #]Vݯx5s~AcCuP-Nf4Dg5rнGq_mBFh]^ Z0Kע P!S`*\57AϹIT&C\0J2㒛^7ω621Mk3"/rh DsW(7 H_>1e#s!&f~IW%/E5?AX_:K9Ewk$H2@"?" oQVfxtH,V$:ўGJ$|O$=R8/mauMa6tX}tϚ!azQJF5AZaD&pukgΟ[<r^B@Avl|`}G,DɁ 8eh_^C!L E6AqBG5QQ 9_XV>$\$٠)כ|%9 N]ْ1X>֬AK@ ; [Z#gn>`ܤTȃicڳۋV[ޜ(Z7ǕƔ TRA&F"Q0";CulUC |#70?[ `~]-%gː[`D08/,#t$bs} HX̾Ew`,*1XF=uybLV#ru.&K`j}aj_;Bmq\OЬ/oc BEil>^nx%ܲ(}#"6kanCd.sHӏxx pՠtɎ4.?ɇKqdBSLD̩t2N]WXBצ@+ΝlZQ!,$Z_+B{>lx%,.H2Y䣆7`i*s$ŁB~^VЦy%]JywA~_\ܩ^ ؔog zdx]4pzŚ̕Z*9ӺGZԎm-9xѣ8`!뙾8B Bܫ\gt~z8]v5w]TiYtdp:-bfB8Y峋cMUd a 3J)'(7\PrKJ3)A)uza+MrVYc!zLAG]HB&KNu y2LqBP J]Du>3i@?W\o.%1F_K KU_X%hs -0h*O%c+-g!qFpy<RA}e81.ٹPQb!Iv:<\hg/P?<2 7oY"ssqŨ *"zU2%+UqKz:uQiH,xA 3,!$ůD yw/`ޓP` THf ُP{=3H?(/&ghKY:d#>)1Eㄒdf]>>i C>" }[!-kX )z:Ds1N;_X3+9M9Nsur2I%me  >9F{m,dH ,8KJ~BJ_iAԺ@V-9:ْ$MYR=,'1AB͈50Y_,D*^6߸|I9{ 4_vX>p|I`ʣm}rH(H.AC=kU% ҤRJYnN($ 'OaEL΃#͵/]#O!0}SNPj^=Vm2az"%'Ԛ괮G8|1SgMA㈔n *u4}%X@܋HI&d6 x>(J8ۣjf5*}PcЌ3~pRg2k95Q_\l̘b4 ]Xl^7Y_-?tzqPGaRXNwR x~ˣmli ;}Um)lkۚH34Ÿ:=j{x߱suz?cby,fxmT='kq(<{dWUS>|ge_'59oK)tXe_*Xp0xף?'![DOA5ʤd[Eub2^,'#h(o'׳7x=NxKlxg pk2^JxFMO&uoM֙ofI736:XbA =M'%DK+ki!y2Mרb} 5ibR]"|D.]YV`ȷ:WHz)'4L/(2Xy#+-TQr@8$`v|5U=bN&ZNGIq{KQGjR e"'xϞ&K ḮK/l(b;ԉz#1f?(5c*LZv~xB<\dW0un5Ȗ}<Mocb%Oy#ɛEO$ibބX;Ap2K AV=?@2Xݵ/HPt,4 ,}U~xu>s[ߺ tm0 {c=#.m8@t 豈B ,:ǵ#Z ]k,jl{ Wmԍp da%+HXHKE"WhG8Eʧ/̇eR)O%it 'T ;%)?fUl ST ١m gy햴Z/U(72cnPRWC|虦zmG%]H`s2M"laL}i(DR^v4ZȂS[|󀑠W ,c^db82۰֚PgF3'5,򣅎/3A͍w#y xWdԦ׼_d}jÃa=;<ɠ/w x+Ht٥+E"b"Z"\1ԉOk^װ\(~Wժ@tg C59m:((d҇柖شrfg" vM5,(|)ɳ zm{5, Yiv*>m$ĵ'Q̤pt(y?Qz,xs]O¬0%>MUZEUztqUK$|˔)߶"nؙ~[=} Gp`YAi|`>*%{t<~zu|,gO ;qIYBAGұZ85}t 6HDU֎JGWj C8i֛L-mQ$2=1W̩@W{ XVWY ?3Vxۧv˕0ﺠV@^(+cuhvc+61U7tx0H G.V}_h(O{8Ó͘C1E05 r 3<$2*Aw/,`[Hf)K(S C=F2/;WbsǙd񚊕AQkcDzž :KY$c1\X-}쟟B)ZFV8a$* w9uw~RS0U,ac.z޼9 {NwtmHd "wCF%GGP9|'{ˆ⑴=g/ԣtaih!*P+!ݝK1Ъgsi3TRj N2Q/չK1Cs dwcQϪ/ f훝u.ɪE+\'/׶IDeԎTU@п_pv"[`P$ob͞Ύ2*ewoӼ\|a\:7D2 E3lY&Gmn `Q`ěGW߿iEBES$CKjZ:'ЍH?6<1Etϵ|e4aX5)׫Z]]}Oi&*4e>P?pR/n:,DB]ʬo&< N{$:c5vgHc!>*e^ !&s5F^ИL\+#r/}r.ۭ] r0Q+wyɶ8;UwM8ub X>W7#U ߇⤟}knc~6=YjHGqqߔ% -jߺ*WuL!2"' /={Fc@0tx&?WVr\$6 Rd8fϰO8>nʉ\0Gpn EȤiY'.N3aSr`1@:Q;+ tyne!Mcd|=a?=]LhȃӬ{zC{R@`{rиpf!i—wX%?G(Yb27g FpF աhyNe{r;2xn"IGum}Lb2O'-ȴc`t-N˜)q"#u*idMl䥉fN8g?J*]펫p/D>81B *o+!G0QKŇ^5 4SY ˴ԞHXBzln;Щx4~x-eݵԞDbsu ^;pWm]?#HghuL{k(1gws*rވG{옅'jFWڷaAvREe_q秡=8ljW[v>1-Sm[˕q,f mwS﹏EJ4ؤ)*l6Γ$3`@ KfZ28B:Dv\l~|z%:o@ت3ʷ.],s\0yhϭ?) ȏǩ#l,U({to-R3v t9ým—K8V͒1 ejkw$`H~okd],7!?lS۩!8Z~I=r!_+:ƷdGWI!fjY| uZt$1衎偯M\y{sr w&Yt]"*eRd;ַ'1}p,SRf\T<ɇ]&fivv֐䶙;jH4d&=+OS-mm$3B!麩@kNIfqsVj-2T7ċrvӏK``HQr:A*Qn.S>&9DD:k8#G=O"myHĜokҞ~J qG FY d,y2fuc?6 'd95"y4Z"K+nPAP u~4 ¸E'_.3VtbƧ|j*5tXVOyfEF/$ʙ:Av%z›#daLBK*W4Ь472JhힰF&G-[GT}3#!fD-H݁6 /S ^3iLw`C,-vHtYN2cr/d©)ARxpɎctu*mGO$9t i)(S;GD^e\>on=20yQly-~(_{fuOg+'MDa`1:9{qA *v11!j%;am/~%ƫL<%KOc 6rGQ;jt~ h;eVΰ4e # 1~T;qط7zq-xNjQ*֫ѷ a chc<|.7S omm&IQ9!}%ϟ/k"6kUŞ8ʇ[AP%['zoi:d PDR˪txĶB !H1/rRW6*x?ښL'{;77WR)Fvwv}3PzGܼK*n}OCYaA$@(| pqjB9+Sk$`ci?`R#A jF75Hlȧ JHe,H>c2Gqc0CLZB^pRvl6muU3E̝!6d|U$'h8Q0 [$\*/D(˄d~ ع0!-/;׈0ie;0&y 'Dc{Qь9lTIb]to$@dXm\O0o}>5ZMQu-.ڣm28Ei͸r$DG9ׯ:ڰ=}psF f(NIHoWR/mityN)J9 ͻo?` 7N6㧭Ǫ z֛_ev!c:c&{_.{C&CDk6بbzߪ?vsA(m$Gjb`ᆲbA<_UJ`[R\KA$`je+8}S)ȷ<ʸ'RG,`\uPXyFM2 ,݈i$@3-%L?4\[[lG#  qoe@u~UVFB~:Hei9v1 Fp s~ΫX h۵lɣvj-sYT+;XyҼ% Q{; 8f],T51Ok[G*y8m1F#6s/f8g 1g2Bç2tlC\@~s;eS}b1!( emw+Y#@J}Jx(Ej੟&~\Ô$M̀33L;ID]$W66.аBIO K|I;ahG4SZkh-~ӀvJ!sYwS[hmdbT+Ŷ@C %J͠KhKK(q]$ŒR "]O![~$|{+Q3L>m ?hx-=TKS}40)#@`nZfcQRv,P|P*X$aC Z)8މ D0\½z._,7b'2Y}liz ,s&z+7 ɝ.;]b 07qGZ5re#^>ze @Nr#!Qs`TķZ z gfW]0DEAI/gmdT)(,d|}y }[SkabۋHY'*㽥Q`G1wg`ܞ8̛L!k::w/A"6%) |r VxGAΏ_KdpD)(^_;#\;Lg-|w8bӁ0Aɝht~&% ;F%?9$Rچ`"Da ,1KN~(ibXcp =di i<#B@%I\Zachg/̐lo,%sri1(Bό񓴥 P.9#$CzB²VIJ!ザn&R粪'ʋTP7KĺY iu @B0? :"b 5JK^#- ƽyR4VwkO'7~t'?kBU"/?-IiE>3k,j@x"|N욫! [l-,9(j$9ɯ# Xou]PSt Ԋt5k:r&pX|7jQ)}B} /o>nz5tnb"D!2^t5/VIE dT:L5lu ; h3̀k{ c/|M},If}M(Gh|UV\{KzphD#Ge6 ͝;@G`]ou=M! *l0sf:f_|=汩4<*إCG}:>\0cmy_"fdpZ3rcr!IF݄H"t 8o*҆l=]]A"1}Τuϋl(%̮k!+ptn5h!8P@H:]AՂ\Vht MwPi`H!ey|j YW|/Y/A!PWj ؂Ca͠邛a\&OO=|%Ϋ)}VpMh w91i*Kr"a n$E] ITCN0`E.~C dODbL7-3RA cc/~@*l}(&ĕkHhdMRˡ"yӠYvBt& 79m#:AUFLz>Ջ%'h&o}ݳf̉%/n+e* I8& jOO}r"c\YfK>k\s% @4c|aX_\Y NY$y45rI"5{~k%t S02b||bWdLg+b!7y<5MyL } O2<>-$-#洭ą88 տ_";+7׋?޴lpണ/Vd=/[#DSU=BH _%j>uK-s/Ø* (3~lPuN>_iuڹeקtSxo|vDָ)Xѧ:97jV二`Ur--~0M9é;')3hÚRyV057n:%(gC8h>KY׎:t!BnY&S5s0jK Chg 6N61Zl@aW; n'6hJ)p|bAVM㯡 nDiQp:x5!UjoHl/3\p"j>3zm#M"z$%ɭ' h)Q#!G7o `˺#8{v;EAtC?fqTc{K }7i._Hhǿ'L%@NKEs|Ml^3C-Q5MRkz UB$ N'vgS:kV5ۺN!l?HRs;Q5EJNz}?!j.U AS;]j- KDqUU&T !n1d߳pF\!Xl*8!=N?Mai^xaS'@#b OLyj.E΋mlYKe$ZI]xk`c`Mh:w4۸@ r1_@bB1ۘa$ÒѰOlUQx<0ˣ WA2hAD/*wJrM{EbQdیQ_Eϳpdo(C a"Ј:Gd5?D@KґT&|ۆtH-ߧ};)Ԑ'N6XMvUI[xH#O5 ("BU-2U8/|\L!dl%w b6m;q(v^±gx0 Q6P$鑫JTy~0a ?9FKG Ro5vj؊bq"]MR ) jLp[bi}ࠒQd͔d4_k6Y! K o,~3,3 - Fci%Hf(e㋨-%F @[Pr\e&|̄s| I"_́@]M'uAMmr V\1G[;L~#zt߆݋ĪWp)"q1-]ٍ| fl1p Caճ>DC,1jr1$a^J. m/n)vH!)1j Gx=tbxo՜KJ8UrnFuLgi&TH/¡B(" _Qy ~+ɞ7K҄s,<|ENi(h: ko+|n-_@- u$tE="O1> =4y/?fMYU|A=UȎ7KVeCcj7\/nRiQ\Zip⣒&U")LQZ`Ő "F==TBGfV29^Syli]ڭ3Hǜ eX4])Mvg;p= ̼+#}\,#KwK8yP&^2] g8}<B}*}=C?0ކ˜K-;*\i3Dz),ٹU'զE:ʊ ̿$OMwc]0c@ww* hwޛM=P[2ejBp^I> JQ(qe s*rA!pRu~Mp|WUnkL~&a=b\)e} kvmCgd0˘0ؤUUZ #h'=h7rU6KgLȊRj'ϔ !ؕڀ=p S#̽:fQ!-w2˥rרE ƨ䈪5S[ۏ:P!'RL5*kU+#l6m.UcݵGۋE:1Lh(]  p D2bpShT #u%H_EqtVmYEߺJGko۽EGk=8ۃ"&1X}3:8\pk,J~ c_o\P[P8];.+G.\7[)Lʒ'&j?1}SwfZA@֊89_> `šT?6^D="Q%t^D/GxSt"Ɓ9J!i*{KODsz[I*"{E H;G>f0#G0p?r/u$H}J$ҨaRB<[nն؆e D"%S>!&S/#ac}H{} ;uG҃|%i;^ ϛ/PK8w|ܺbR%ۈ[W?͕pxUf*cנQ V -%a;b]D @Ǣ'9*_9 ^tDF <ʞR uRpHIB5,/G]|xY3nZ~i-# ;02K굲df-gGZSgD(^!C7$_*!ssOQQ3B=j`uɣio6z_Q\MVŅ[ο"p01*bV2v(V!jIw4#+&PEsH\'|.Wg |MӋ`DjeѹS%wb^՝a `H^`fe."UبRՎ6%fZl~{[9%I /|t t /YڜS 6ۗ5 ul*;݂6^QZ5xQԣ>$,<_hxRjXtMt.zG?.wvT`$N׳`.&Q*@2sW $YR{q|ƀER)E,F WHcUʀ(mVnM}o OB3[; D )6~t"` ;’vmu Oߴ?)J>XYxMo 2s GxR {>)4u[IP4; Ѝ;DR2k l`8}5>lKkOEri)Pcߩ?nˌN,~_tN7̅7:O `WH[mFr(P&y*9Iלշ N-GZ /8B”Lwg^-Uk1vȼ_EE| {R!FTfrT}C\j5-y6D3s*s"X"|;cn^_`*>o"u`&y. FsGww.޷JNx gEٺ]`G0<0-Z nt|sßTڨ@̲Ҁnd76 &udk%ݾ5w@)g]oɯ@ l Xr 8wZ1kTVMy`7Gk` RMx^@]>?xе TPCi=>"]45Hji TIyb ߻-rp{ 8 ]xWM+o-P6 6B󼳉#t-4ӤK3do6jͣzfD=/o3oS7kALlk8{rؐk9pnZEG!]'zwQ\Shdm/u-puP\MѯfJ]*Y杼e67K:sya t['{b0ǎOz8sWCǚx:=mE ]>=9}:r & ,ޛ8 4@@yze%n=Cf  Y~ "/62mĵ'G8FeY;3sk0A ʏz(%tm}ʈr\llT#P VX$ _M\6I {N>/Ά\%)B]r$ qe>qe3TS_ +WB'?iX|Ԭ&15d&5hZ}ɄE ) ؖ`O^OZ4e2FƟ۴ @\$Das8m(*_ 2M7C E24ؕ,9/Ifw?[϶ԞsMݗ5^%E-55,\G$ E m * d;\΁e-<( _uf$a]#' c bB ĸ74"tR~YC1,;D9~v`3?2D^3ˡoC =&q7g:,RɊ{uˠr>?A1v~Tަs5EMu0{JY{-lO^BwZ v/5Nv$H2BFosS_,Vef)c7K60 .̈́@R'9EfKt) Έmު+̑+Gf@wq} [ɝAɻx aVəQe  /7y-ID搒PC` cs')|(aTɢSVŇXL)̀DuwrVm)粘ٽT{lV7AC#۩{`^{_<$=1IwΤwon\3Z7腣ga)^H7{tq[dJam[ƜI[T)xU!n1z[B3%j/9B^:KhrYB8Mh)N9-5!eUPAhu=MwX 3b1;4zp+5pba0$P,I309?֒rdw5_^#_kzMp4vI`[%( vev0O76܀3n 򫫵r*܀ܟƃ,?n.N7X2 F՞ۦϓ,us{s.rPF>o9e.GG]k=/?WغL^u>m}>S<yV!TsH]ӌhD g悉}+jZdktD~~t0Ǜ/#UP;4^sƎlsc=o##>,?65(~Cɩl4ұx%PG_`)Uն{]m"LJV`lMS_(O_ZP=!<\,{0S~׫%KT~Iy1Gr),aRAE$/S׫v2{; tTem<\4gh\{Ml(NQ |18:=.G9E߶186ba#%w[g&µT( G݇#* PkTB *gĘZj%:uwSRVTW% *{d~deϑ#} Ճq~$Z×i|;@~Od%2ġR ܛ q;^5I3:V%cǚ"f i3gVbY+Y`{LK=H[y\zy孖1W۳ܲi+lsVfHE`"eH)!*_HΖͪ'2IT#ObBYԶCX6f{ #ߏpk0?`zIαf>DK\\F}jRKäЍ W#y$z 60#jGM._l )n8_p)rd>P=)OsPHG#Y]F(ܠk5~-oߗim-;8 4[}ȬG9Fat|3Bz\OKs]c,2Dq5)Ao8~ n'.4/\C z[paoͼ& pGQx؁[:`P YH {J6/rY_>q52S]>lT;sS 46i:3dGmKu+NL#K1 = Fma Qoe[ueņUez ߕD@/,ȿlTTV- DԳ3nvmiLmUڜ:*qxF & 8YZ ARihN'oF1F8.N1x)A隚o.+7,ZtvQ> ݩ,ūe!]B@Q謭*9d{u/h+udV o?~ү~`=v^L Cܹb~ Uu&mMm&//FN*ڭź|ωWi+w1fń5pLp2:^AC ܍j~(^|H9CO6YpϘb,97Sƭ)Ͳ%q9H˖BaV7)i"q'?ӮH3^y QBێx3XӶS5-3cT-2p$'w.Ra!K@j'tgϯ|hE)"}ƓbҘoQ" 0O0Nt-wɩӜL`]!~c$gܫ7i:i0Dcw|tQ 7,*%HS |/Qkȵxz1`?1 V-<\։Ti-$à3z Y MP"jjRH1=Vs: Sy9ܶ($Р>,)%p8gOݣN,&ʒR ^'?aZm2?75)>bx%b_4chFj8uD31e &.{4w,2$ m;v}\e0XCplG$JZ^Tpˣ-^FiI:=47Ls -Œ$K ]2[#[[KL54"0/a3Uq(nc_ЙT-:eHR v䎖Br@:g88d>L䦊fN7U>o#>kbzDq6,zA>Ri,s$_u(UBF#֙*pi kTN 4Ht.mm -k@TuշQ )1r]!V7hlYp ulg g l  TRlt'MVG:3ʲr=}(S4mCFL9Yv*S5)( |[(SVp!H?K?yYy>RR &knEw# K}1]ӌ4.50ݏ񔼂|#퐐| mD#H&|Z1#xFG0(S* ,%4LB/ Cū@fY,[of7`k=#> 4-Q6*zK,~,lCwTԓh{R!UlfJai>\%EYЯRv.&CˇvF4/:*"IP1_sNՓ j O̬zv_#!tP5 \(r4 pYh60wnVbfWr'k"$ي:p*a.O{5=h`wnYch23EvW+=PTg˽M0S_ M~sF?~M:/c9 Y*^ոzbޓgB: hf/A|J%5CIXbrrO}9JҶ':n(VsU@A_@0cdU5 + |W]3cP@ۤ\,]BMvZnhM5!rq+7XX@ dحJNYcITfRlU"<x$囊oh ^zK0ZFD!ӌ0Hcz6{-U{Xi:`3d3kF.Z&c{BvC?TXFb͛VSiaCnZ%d-L-8 ܚ޶c&xz.G_'B]I U\(a3 FYw ߋ`4#Ch}F"R%@N4#Rܠb|g4C7"j619gkcOt0?ȘQpY\¹HB|jIɘF x 뀚s?tCHN;"0df4cH[>駉i5Xtw |sT".?Fhw]9ЛS!vg瓱k&`n"릱/oxxNeI6tB5j }]MЁ4/vLu7֡&ɖKx`3r S׸S4%=;Bާ.yt`EJUfYfis$AB˪N'2gҰGMά~`zY`2y2鑡m$x9fU 6M7[ԙkv`_ ;ΙqYO:ϥYDi-k."uq-ţ'IoӞTrzobE:8RRl^:`7Qcנ/3'6Qți}VyWaB.%^B!θe(Ǜyl⹪1 ^r)[PEK{i\Y''lWxIe1,uc;44-mfA TI-v'%oB#ʉg +S(Eb nO ,GVgAE13TM*VOZ@ X4zx!z-ƇyA@2\ WF'Tm700 )$F hg~(T'g=.pDdjm^95ڞvAGHtHt`me =(^i' ԗGHfˤ3:3q2g0ycN謁\9-'9pc顾;qjͬ{(ȓd$Չ̋'q稓 >&pOi=DG6Dl9WMy%R-Mg.ZA8j?9Pt dZ'nI2hN?oL/Д50CE &Stm"7x۱Wu \$Q$t,6"eOI/9o(ʖ8v^.m WPJoZyd~]̒{LRdgA:x_6(w./O!pgPPҧGS}2'lbCټjr32y]q:__Nox+DfY&gZmqxQޮFzd=K5uՊui[KWĀ MU(q>?Y (.g?8^P3OQrc{H5=L ua#]SiL %dBC.?ɟSW gFPBo@OrrIľ \U}N\^o(O7Z^{L [-<w[\>hue2(#%^7"~i"F- ;5`cΓ5m:OYUj&^ZG|mEEdJcZMum^ihQ! V'G'ͥ,{ ;4CYDKAO$"8vGZNEQY]sIVNFW/.im02smJRoY"RGǶѝ^xm xBY!h<܆5INY}h2?bG 陦7TNI%#E€UZݽ1F B4ˍ %!l1WɁ5zĜ`‡4HaN4+S;\3?&8j 6|vKl=8Z Eӫ$}쩄J|qk)E=5ghp'(8ƖPN{WKFHV;n uZTzqb7;(A.r:?-3F`Oy_D{OFFGt[#1M.iPʫفy6 #fdK1Im R279[8ͮDa>Mn#bӐx82E-PD4ۈi"ds9Nix'm$\0@zy"f2QY+})tOBcYIY?r2^d30@βab<:L>B hϱpfoK!4WŹlB5 R]V=o:G6ur5+4)'`hSdh/yCXuJhx0?-(0 CHt\WO(50`Э# ͝.{^r?s0ݛǐlB2bW]4,m,w¤u|gz*M #QH]`Upힷ$58 39A%#+E38 Όr]Je1$cF`޵o!iU+bDӁiS˹b_>T!/ J\3J l;7L)h„h~>USDLq>K2ߦB`zݓho;b)kzA{OCC$p6@18E@iy.C"!"2τBdlb%`t;㒰:*if*2jW1'. IU˗8i=׷m/Z2s`7)m-, `1"Y.w yOGeeZ{};_3gEݾgEs5xhԲ0a]da̶NAaV&ibL˛'{lP^XX}uӦWJnϴnK3ԠSӆ~8ȻǤK2U~~(DB/7l 9w ˩\y^!`&ycn}Z@&cX*~qg YJz (0OߩHs#_B;t>W#-wl1oe ?XZY6`/ b/mE5ѾҜ3PlhPvge"ڊ2id'(5-1\rpZ #jYy ςHK"aQlx| ݤDQ!Y}+$뼥FFD` =|;砿˿.XUP&#w/9BbʱP{˹[ i&S8Io{mJ $+ C^jږ ه#G0L빃$h ֮T̔|XgţDžCĈ;#II9k GAo*Fl|6y?fg #Tt G%U-tڳCɗnHX[7A )޿*91ZvsQ̢Y ,~/ڰH 'Ӓ pgƳ˻kl3-~E=StRЄ)6ٞKcmDsiG~_摂/W;m`/>;{FXMT虢@YC~VP6'5%ݱ\fg,PV2TKwTFfwj1`K^JKLn"MSVv>jܛ/Hr2a@?L #y=ϯRλ򪧱M.ܤCӿыڦ[ ZoZ;ϖN>a3nҥ*ߦ WSm ˔`O%Jc^C5E:IJQMdː@P $, DT=>np)ϢF\}̞ÖM8*_]3Gdku yUc 2rtl_l MUOfd=s`*@iy(,Z?9\HyDxRdP( C #VȄ ݸc~ H"ߜ) 3BUԲzy@9q3&W?"WkI0 {L~^4;N] DŽь-r:ЪҜtm{Uuם75/Ȭ !~umfǪ"=%U)|S!7-^R( MT:Yqtrl sFѲL;v X65˘x"ZT%ƃcO gnGahipdE4~v@ik:LZ:yMTU ,TyPZ\$=HݫG\ˋ ;kIƟ]{ެTZ 2}"v2k ghdg`ŚiEa|OI1M3421l<`$8<١ -Z {Z@rzBjsrTFe ϑ̸L__ l۳}x f~~CzHG$87Ns>쩐[tͦ׹4jwa EO=V\2B]~èL"/T$R&,C׳"x ?C*W{Qc҄Z `/Ϋ ; .Bt"v.6%18Db,f !/]Yw{UBBx4gWz4Қm`~~DS9O &Oi60`|yǴDdzL" /# _!P+S_t<b* ΀inHT=et;FHSu<;n=|ӘOѕds8G]iq̉Q"vb %, {tW;<HNOGFm?p`|ZМT'pG%P !(GH TO~_b#õҲ.o;|AD/,jISҢpm0O.$OBZąeOw|4DU?7ssÔ~XOsa0(%TM%Mɰ1w?F!JEo̹.xxҝ\ʎ҃yÈ"F`V^uw*Cpv l T2Dq{$.@XA0Bj.rEm6tHh(THj%.KK9촿¿pD;FtИ_vvTMQBpM:GPǠKOi,[ŽtO-SSF ,B:n<'caq&~T(ѭg$7~$&X~2i;uQQ,s /?ڣA?.c!eI# apt3ֱյueq؇%QD[|IMLJL-_qm9] A&;lzbKCz %v]t"Zrr/9Fkě{E*!'4$1B7:~z@߄_F,FKREͶX]R=$_l廙2 y!dN3_[1ae50nFbM#"x;#܁_Ua˞b= jUlBC/8.iT7{d|D]-,fؒ.AaY%ҐY倀 !V5/] iCcU# Ic+JOsmƭ[rC:-VM7#K ( F,u(5c* 5SZ/6E󭐐/S~e;[]A Ay̌O"!F _x=w%8T_wй7Z)) Feg8^ ݚDg{ʹ>_zL(B$B@#TV(R,fT.úq+TrXmW.|*1eT-6r~@VsOӠGpиLv11Mp VCD$XfPO~FND>@qwaJTV GV>˫zP߭ ‰:'K(!gAݭgӈ=~]~>|('"< K\&2׬r,~mlvd30]w"Q#eD Й$a W咐\A#>΁ :ob_49+tJRB)?nrM0Aq>`o:;Q9!^o=*)wWeAT @zkH[ kB z@N}SmHN&%AQ.ҏY-ֵ_p5#ǘPJ8i"]Vv TBWXRHmUkg; /dJQ,2ݐײK+T+mn"ɭm`7R}S\Q!~jASf_s/^Pm `<u8_*s(hs%!wU4AI(V b4{KmjUFS9/ oE)] ŜXT RM{)ָ*i7UIDGO/+(Ee,'>yA!╚*%<omC eC %AV8Eg{jNxt;C4nDN4$9O~VbĻǪ{l295%DfSOQFp\ q\;̢KOoH\r̈l@Z`W?G-Cx54*&Oko vV*0!ܩa@f`3i魔:I\ WxU=_4|Y1-2E IZ.cT[p_) [deƹ'>!\~ ٙ`$L#![0ik1v)LB 78$yiݪ"$=8M2=ZOQvMZb), ^'wOU.wXTјiڍ_qM ZT_Sf[=d[RᳰBHzIvSU@-uQ~deS5Ű~M s+#DybL3ˏNL5"v˜y}6Y:/ IDxw"HjX5z yNr@=C m79we<"JzH&OH"b:"U~ϋ-A;N%)b]K.`/INzW 4<Ћ_mQ f# \x: "]6&J K:fŞ};k9.R]\#4!(`GM8&Ǚ',K&tp=" Ţ*IK7":@fOg|y9HLr:H3\Tiii TImfmG9]Kj7}-Q7êlȩh7x%1G×v[F|v2P gӎĽ {> Xo Q Gi&P3~6/k::SN@_1]Sj*@=.䇫EA*XZ뾄4VFnM& NpKQ4 ^"ND0qR /! ߦs[Kq%.:.9"=C-=ݶ&.AJ/Amws0]8ͷcR#hS욝C)?zKuRxtS|DEt|wGmNVRbN@nhyCVZ[PvyR:֟A!c'nz^I=׉* U f&5u~uIMl4v=붫sXou,jL,}l(}^G}."x2B4 HKaé9ʫ]ϝnESc⿰d ?&<7~re`X' tmu·>{T/vDąLLLei!=5^Ⱦy5D߀Sa̻+YT>RL>~SS咴cKfpthjEyc*>XPXj_Vb08뙉F%*NW&^{LdJwhSt&*՗8T;DFOH 3o0{ XUw𗮀$"T.>u-p_WӌeZ ^.Dz$;s6;e\7+i>"t@/"'^iV1\1r߅Db|^!BgaI aJrt<~qT vߏim߷g*_KW1sS^rX!HBh/j,LD>4b\-oq@qMNB\gtJzVV$~ ."'ц:pem08}-|WA&|}/Q/v4yM;w68c7bd҂b6=K<L"Px50'j5J>ozrn֙C 7NuS202bf#K@lg[zY,MJȚO7H&ߴ0eGhgjfx["Mfֲ' /Mc7=5D~tAMG'XUuaMwҡ ]q, L! S@aN5 kl(6fo DXZTK aqDk2?1Ye皓 +%qG%A3`8XB(,C^CҚ:W6Kf̱0BN@7lB>6́qkǬm5longw~Pjґs+oIS746i^v5F'J9S1֚vo)=}#>6!և”pG)sXyE2Tk6M c~/vS@*+t'c$&(&"F?[ rt%/~$H)VkøCQx|/P&8V٬|@$ N)z^)) .8=sD_DM C::tT"+!y h/QNŃW&1&3,$muϲ")qWxnKf\cn_|(}_ \"јD14LPW-.(k)/] 7 dnD]v Isb<]M f?b/}oG~NJGv5sP[,bĺ`a h;N>ue.w%X.~4i'0f{fvCA>tU\^χj&@`;Njf%]D$U?6j&IJߵPBe#t]&r̟KIo9M-6*JSÁ<ɡ" v':,3s"e 9`,2 Mђ1҆H'4|'k:*|U)#m(-gb\xGJO44]鿋ebrBYVnrfxNpڤFNrG^"愨6MY@7P AP˥s[V3I01X_t+y}@w`] ߥ"fOHN֜zh[eXah˖ |0i{R-(PC#ǬұccFV]v}${=6M&)p7n;eH~fZΨZ눻v-wo0蜞\JLyyíd|9m5c I:x>!XJݣs=Xeg`߇T|bQY( O˷u\mp8p\Z20z#\[e~#Q wiӑ-̻ P("MS@w= wjV7YԳ+2ұ󁯆~} "余l9{uu=ܟx$nЩJ&qQHetT0~%磡l4tJ~KHunMg= ˫;^/fU5ptgk,4tlMޚd2ȡ!}S]3sV[RKGRb_Jh.N=' phM{R_8]~qЇ27=m&MJ8R &恫RUTX&p`s|Dv9#vY-B!1А7R1D)Ѹ)z!A"y5hݮEgqAn7@kGw)5 x0Z;cJ_w.u&ϊg~`Ka^NwVyWC oË8M8)AYMN RE$,g)"U,{}mZ `c.߉r2XPᵲ?h;싷&*iE_%M]: Drw_;NK&e#b#j J,>K e\ _{ViJH,E!O(w*_j8Z$ܿZ:Erm>W;p$x?XGP߁<JE@f<;= u{ C$&BmO$ӇEJwZ!%߿bG| Gaoh ~R 31z[<8`ʭըWAN`jm>k=&rOvVOFL0>:U:BSsZ&/n9]檹tģTŘ]@D$SqJnۜpt&etzXcp|$ۦVB UwZ7x-:T/KN @AM"oaz=nZv;+%}Nsw^_aKf||rxSI1xD*J<R/ ӞV 7ct"P'% -ׄjAjЊ!8,^bŀ|׽JyZ_gm1X+7Α̏+L>ݠ~+Gr 6{\c_gVMęlmp*ѣ-cX|1yt8%UQ(nۧl5o1Sᚰfb/'JE#zdV[:a 5Kk̿Z/iĜ:&4l?w#b X){zc㌕ jsݫXC(\A^Z"%xp4pt~CU}ƬFd}cz8+EwP+?'.Xe+y(b39VWe6G~o]e|hAYKa~^[^b",_ZߍlÓUr6zeBjSI|0$re f1n$Dz #`P. %Cbb[\uY)er BG$= }LcAnV>g+%(J\Vw^Y|'/+'/Z_uvK*tE~t#}FĥG-[9Y*Ea !3 LːZ2)2,  `b _ab5g2:ۺ+'v2HVwahBゟ= Z󣱤M$ qfʗ>bRp3v<ψL-j$RFz}˩Ъ }Pu-/sߍC`&iwR |3BTKjqo!x9)]*3Aޅ5w]C+F\]o к`-y(u (IF)-\ mmrNSŌ0( 5ecCd3E*&7W fg$-5Nc5p1`zX* n)߮+"4o_2(䞀?'+呛*ŋ@7Þ27bj :"  ZKGw\%VQ0ݨsċE(&Y7߹ujy+`JEMc↤HSg[ʎk`ýq :'$8>@"׬#_ю(]:X8|׭Ă1&tؕ4ۤΰ.^oF1PY%>3qiSK]!ol#Ҫ Ӛv΁ exj}ԍ>O1_b~`u}+D~ܒQ`Tr~coY}KC3«fd?HZ-D1!1)UWve5]@1%Z_?P~g,bz"@|"l{|-v+el1R$rF@΀]ӤK"\'𡫇Ɛ(ḅ z'1W8kif,FQmq0,Mgm[vVYoI/$/ś崓;AyHNj lL7qIl"?ɱi€7p;?kZ,CM7iߕ*+%q:s_g967[ ^z{4q=^n͆ q;t n]pK뇭:a͸wB+t^HĥCk6 Rf(ܞSkFc6اUzj{] '4EQyHn.X_G Py9кH{ j *^%y'6$v4d' ՟%! ;}a=VHC rfH)&YggwD( ȃ,xKk@M;K^VGV/ytvys w"2b;| 1|Ay-'4Y ʺ2HU(&!H> m,Η)<=\Ȳvv j 5#Fj^҃"ڸ,fxmw_W(U g4`M6(vġ,R(3 ][SFk<|~'6eX:FԲm2 ݂5}&-ut"Ӳ3mŨ/xタ m! A:W!wV3 `D\2,q?~PQhmDHnC6U}{j%}ps"47M$< 'n{@>`S${y>/$5χ?7[hrh]@Ƌ>V4c}|eq1P6GqfԢt2 q':'J Kvf#j3-MvDZwXϛLN ?nv;t2chzQ0|KOHZ"U ={9UX)(%Fx:'nr">0ڏزUQwksqn5*O*RW@fO¨,{.ڞ%k(W!^AIP]+IAp zV4 O_,?JUO9%R}FXՎ3 K㐣 *Ա~JB:# uM@&qRwhg]Rdv{tH't\'Tt̃.mJR?E)[%%1N~qi/PXNe q*3-G) ȹ}kiU 3z!P92ZT˜4L[$2`GjK_a]7`e&/ ;"7 IJUM r'f-w˭ HV v'C}}_; Ui'# *[7d I4 I ^ 58UJvlg_&*uFi~#&8U=އ*#6sRT 1H[I.TΛś샐{:o.pӃ$Ln?jé>[o Fn&~ E+& Uq=M9u`7S4.WJa-ṭ~iq~%ubx#hP+|\ XkVkHO`k!MU8\3wETn!:AV;R-; 熀TB1,EEʫ%cw F:lk^&GC /]Ǯ(~2. G[#*, 9q:Rmz>GBwo㉛??3ՠ$*#vWe`J>P½FI7u#_3wq>"?"xc]$3}FRRP^\4t'㸯mqo$'s+,6Φ$)X-U&S}K, { >P@@d6*O,1ջ Xӿi^ƅxQjj(ٓ.CIyI+7`d0ç^Tζ̀z>1 FR3KQ ՠx53v,49!+Y#ͽY/;$CWfzBOh"/st`30~|}Hh" ;U\:P`O] K^tܴs%4!.g3>+aAyJ?)9# 7]q-@V*Gpa7G ȟhGM, rj64cZ7sN+(~tC?׶^KvlUf~>pSq\=w٨Qi#*ԮVN!??y8Drn㤇 ?cF͟LW`k놴6WƤ8qbN)*Uo֙oHڀ({ B1s$GW/XsOn-Y_>`x9ȇbooڅ+xgw0>>"a)NxQ^S`v * (>53Z"k^[5N)հߪ-u DdԒ \GIlCOu+WG *}b-}d2b\Qf}+݃eloR獩nd-!QMe|mPIN~RPjK4MgRC~[N7@faL k cVa( W < !kS1Zn1\2u~e &>rwTu6oQ|]ZߍXSSS ^JP]ߠ!>SLFo\[aG.sPmpٔ!bL. oE0ez&f@z}M簔rΦ T4\AYRO5c؀𳇠)bm6LpTh~XC(kɽc73n[L M-}8LtF|}7cE_ZtdKN{SI<i~0JB>i8(rB'TYx[cro=[?fabMTOF~EONO]Gk&z~cwW戭u!}l!$IaQɭq| c#]QشBl@sâSޒSֿ@7FPAtnlL&V~lC߆Uٓ[;72SŸZ-C Dg\ Ug=pݺ %A0uҽŠTӎмX= {oN}{4u9cQ{ $ PuDQ'%0$sSNѨrb]VtS#Us ;|Q0hb.>49q@]̠=ܷ׀ۤu\Zï^:ﴍal bQSU?q!@]i sK~|O(1X=#7ٹ/l9aeS MV$;n؄LS66KH d)e#}$J n|i[0}IYbm.łABĺ@hi{=*ۦ_A mVA%+\Tsba+R8EU+c$T_H/pb횜2dh\P͉ѽ6 StHOMHrY>{Th?'=iE*xV8 W,!uKc)ӱc0cgPyN}eck:LLn$y/]:vM1sݞҸsC 'Gi\t`[&1?/%ȭ .^kvg c9´gB܆2ё!$ik^:SҘ 5D۷xVACeD=my r^oY8э1>@#GtaJKn-L%+y^w\6 fS0Ϛ 1*D̠yZfJ="4 T~=fS]Y>{[w3`v'oK2frZoQ"]ֻ"^7 dD&B#|S:"pzAGQާ|8>ō<[#rItU5@yB*wt:t?x,YzT{?UğNz1},kX(c85nobOaGk]RrZ xEC+.ѵz}W3s׷9%YزA/Y\Htƴaz3CZ/ //O)NjT?ZoV|"K)^jwCPL] kM2Ȏde9<4 ?}%H_ոeϳZ\"[^vL1|LmaWV+t1SUtش(W},KJrű_n\ tiRҮKYzY#Ls9$Oq9oI~ ]j' !*4|+dqc0C_>) wZbud@-3#~:Y\4嵩*fiBN&KE[>Z4;Q?``@0 #Yِ?uEd\YT:tAAHP R%xC/ H6ܣaaƠ$/iJBDpUuPq.Xl7X46yXiX>v'6 Mps96bN\FFIV}Lr峯2Sp r8+"j;3f7,! JOj{%qfovwǯ2iZaOsuScOw Ƴpx@E"& D> EV;d1[ :|@sރGOS-C|bV|X1r_ZCsC7HrIIs*?/# 2(#<=矻{L|8GfВ]ni;5tەK̽ҕu{4ީJ]tDÂTv_-*u&*.A䍜)ƛѤ1q]+}Q}wIxڂ5I%0*KKKuA$ܯn ݟp ܴGRVЩ.' KJUa^Rr8 JU߷kq r?.Q^I\˧C4RS6u;vEƚmf 4r` P _9&0JP$43 5Ldgmތ WÖكN<od-Hդ]\iGwrlw}EZ/b?|  H[Aqů^vz?}OLmШ<[`1+sɻմ,`1f;⁲OcE_||8@*=Yl']g^)sL.q*ޚI,%W~]}l]:3YHEiIp*^Į< Ny{ u;zϖz#w!ӟqBuXP_L1\$L™[阶mC($&hy&Oɂ1x›ckldh䁅okʆw:"gTye ymlvIz|U#Y\ΗT.z:c ?5#T-{.\dչ_59;\u4+|O;tqle[_bT}Ϥ a/%^]P` 8$'@,rts/-h !8sz+ -Kןf/X2k@K%W7,b vXa3 prϊ.䀚ת p}LϞ> BTj?$;rm <&xyD q֓hѢbB8e0#Gޣ{|ILA=ԆTIcAܐ8/jz_~T2֮tiooUK *x3 d$z^2Z51Q9 ~IS|G6 H'MZzz6-aKS"JtܟČt׏zHd#3J&5'u{ŚmEV5xm+ېʡ$eɘp.&OYv˘KK(̙? (XV6#O29JT%|^3j*J4)IֆaC?67 XUcC*Xo_2\X (ddNq @{uk3u ^F˕H궦,{"0O+)]X $ُѵS %ti#*-8 73oP' )H Mb󥰚T`F۝PnȜ1czа3k)sʙyo.vhɎ@GԤ`lT*"S-GaZܹt7:o"Dޚc;ؾOV.gzgCPpFΆÛiIh0La0\SYx%`Π[X:qTV<6L]NlL(*tΠ j1QOBRp7cMWP 6iU8DĔMGO ^FiYg7n#CX ͬgk}e0JvMٽkZ!^Tn9hredk6 +9WQ|X59dG 9ᆰ00|wT`C'߷j7fΰHbEFT! !aik ~{R4714˽ކfϏ=eW̶6ܪ5υQ+Hݰ_b z^ NH!$ vI̾!5 =>u'p34ŗdIZM† HWmըoΗ\Oaɋ~TmNm)f_m\ݯOO+ƽUUyroq?4^g{*|eLӹYɱUĘU=ìa߽ᓒ3fR  Fӈ@Z~N5:R氒ti,wp/,1?дlH7%OR1d$T@&I|~~_V75j%X2JlL? 0} Q#ό<h+Y ]pw3N#] ktVP&&ٯȾ>5 C盋qrn W6" \# AA!dbI sS]OA<{?ҦLш 7Zij ,g`~Su`iN#NƓC t׉h UO76\aB,yCgpA[Ѻ-yr|&bߴS=aBտ05pϥ|%jV9Ƅ4{*i!/wbvqyI?طb?*X( #v# 1 $s7.# י`-sR1=}la6,uSѝhVeُ|JchKͷ'+}XFbwxbfuVqd])B w"ԤL+ Lۘ_\0P/>A7⭀ _ [ueR{GƈV㢙D-{FJwc]Um1̮} &ұgJc7#+es+ V :st9`.jb|Z<Ҧz fO;gb* X$={D t8gx/V*4gs(3Qduy1W%yb%!YyrƌEJ0GCwA A-]Pl*pv~%X7dB.熑_J!&M5B3YzK̍#; 1vYܯk (Ǜxz8i7uvU|gE}=m$Ps\Cy蠚+*{Ɵ?ѝG͵½V-3:yB; lZ"Cŗ4x8X|$8-Oǃ֕?8Hլ(x7%6;NwHiZ)'xZ,?Zba$zVJ:KBkSd+b+x]; C1JvW~7V <$ȩ{x΍sH=cZ' xdTю1Ouyel(қX=Ri=Ŭ>z6#%HLs%\ލk!#$Cvt躤uPkSDn7$P0MHre~W,qxB%uٟ5ߎRT!x؄=MAsg VMN,TG, 1yI8\ǶR숀.G u&;su$d'7;$ J({ټNX@-Kb ^&rBd[F U앟!˰j+qZ~M2 nnWw*\eQu vAɦd87187XcuP-::#'كwJ\14 /xxeoNVez޳ֳ!@:"r"< M@P8c.E"Ȧ8!E$tR4=K~ 6]c:zRCTipZvK^>ۿ0˯ĖH+NYo 2S͟>=$W"Xi A-B{  Ź7%pHAư~DG;UJT>5Av+lc=: 0!iq_gs5~"g͡BDk%MiCޭNMgGW}ke$!\n pl|@TC_*3zf8@ڼaF e41q}aLF?C WIy1_{+Ubs5PX4N O?.r8aȝH&Q$^{n}`̖/sr)5mEME0+WSѩˬ*xĽQW+A6@&Pc:abGDȤ,e\w&<3w'` ѱ0Mmdzc/3]tm5C5#ȉpҐ_xy<-HG|Ph-[9A˯W="Z0*|EK` 衶Yyj-3LD#%FS/h ݽpr(utӔ=@dg^inWɏl{Uax^=3Ӭ9cMe'|.B){zQ;wAAah,u<±'=$13j4wij]\lu|Gm|;yP*Ou:Z;S|ZjzN]RҊVcFiZBھCQةhO 6B@Cb397L\cKR\9T[i'-0u~2ZF*ysZi0hE1!a!7%I}LW&afj$$v<ӟQ\K,Y2,ZXy&`HvaW zKP]fTUzkOvKfl8Pʐ˒he+Ic{:'0'b_KB4 iu<xP9%K'c% .&J]PN0yJ‹"__ioc&>/<<As%Ŏ/P][&Lzm\͸<|{|(@WA6x# fan|edP2ͣ9-;֘VmmlR*75M4ݦx'.ܟ|WBH7- Ƌ&+R?p0ɕ᪲r_K0hCfrJ되1;H n?.^ JdV0 [eaϒp1Ljo2Ƶ#AUv^NZ%UC5{9Mgl]DTGjad$cxٻިuu^R M05&>Y"H~:J1t}92!i".Io޼/ɦ[LV>MJyjgQa,`nnPW5QV-d;[nډX qVjُU5شrmSqy͇=%NrfAm?v 0Q0UrU^I 6ɺKĜLaVc޽`ފD ꤙGv2͉;s .m2a;[Vpޜ7,|3IX|!!68Apm+(~N޼0n)t*Ky8or"U,@aF[xtQҁz&TaX-MBПY#e!Ɨeoﱎ?Kxdh,D`OH 5s u'6W )̤7*>*4 b 2dLkq8R@aq#뙡 nO :[0,jDRvs@Z ذ%8xmx_dQX1dRsq-9g/DjT g:<7:W5*rwTp;EAPC_:Lcu1"zH7m'[z /Wc:ӡM=V::IإHǪ|2h\{Ԁa1~RהXj0i&5|0a8֛Cb s|iK$Դ`jמޥ\%o({&| cb}y*lECl/ FMP4 ;ngnSl#'=[ QPF@+ " :XO4jXmo;!ok/~I,T@̓y%KHTKr:ACXL73qY@˫7$Hc'{% Uyc  ٢9HT3~ZnN~Ĵp,Ek&<}>ځ ;H$MfF䈆P VE9 Ʃhf|TP3 c!ر~|%/aOoAo.(E LG \n m7Phɮ-ґk1gJ)RhHR&jl5(8B[n+dWIp9-m qgՆ{+z **c=!#}Z)P)Tn)I!n;Ѱm2wPݗ [2*?Hw50NŹwۺ6fb㳥αzl4)PFł)c#T!MWݎّx.:3oYVKpcA kr:%7T8*M"]{7^ #~H@&~+ވGG{c9e{&iq?ǛGEN "(U|q_hF}#!\1Pa1@O]3"BN*Ҩ>((дg݄y9i{P5 S IW"u[58NhQ%(1-'LRi!/>ϐz u V[V)'EySuXgd<0U\ch ]&+uQ-V$Fឦw'h63@ߥi0C׫E9[+JD^KN]7wǛlijpف#1(Y@=60j:5(6^%uIR9}ci߽DRB5 dY¥]PQ='Q"K? H3㮨@ש˅C+LaW"M7 3dEL <_DS(ڔy zz`YgfP?T#&Dmof0h`9~cj6}C# `Hd(ݐ9*Z0}…Q/n 5y1ˋg0,u9 鑉,2wDusT;o)4 fF:,+O*8}|eqSR,V @%+]*ZߚNPOD z!IEF'n .`l^)#\"V[,-[Ql mtW&܏dTTWufЦtn[SKOAmpYԏK9n/ٔ4HDŽSxZ*0(٥͢(ɋB ӭ} gJnB|S| 간dHK@6[)ט-J* S6NL:?>۱A2L^H8,\ha;f(籂u}i-iC&/pq)p<z `g \F2u \dL,{) XsbtA;xޤNrj i<˴. if Fr!Pks0*Q?ɖhXϝ.*]Hp- [90S,&ן8ŠjqT.K(.BzlLĒؙ{]}``_Og\)OZ/ЈO%c䴃'qrD; f |$`;CF.a|Ϭf1bpC%u8TC iqӣ/G[52K`}xSe9ڻO+W2_Ol, Al$~u|FϏ 2[y:kl:H+;̢d6M5-꧝e؅w8qvh(_QX_MFMRUY-^>^jBѩ|Q- aN?J˲T#m *lu b˯ouG%>1UR &<+ٖ?P8-CC~9phʳzh]5ae_x0\򉟀p~knKI bKڹ DsZ<J'g`-X}:dN,.En(tC>$[ʼ/F  ծӳԒ/kt#(uùp!cɘ"H]A:U0xtKTVy&md,\пTM0iQH].v;37:2f0[ h@v2d0Y]ryu+D~E1N *id'JʮLX3gx6U.'Pߌ1WULjU{WaN=S Rp,#`|P# Saُp{}aׯɀŖ7qY0_^J8{#ʍH( V6ڑCd?,E/wYvmX86et9:p"jk/^~Q8U l! hhw#w.E&PW \K[y%yY\hV"yd)X.6p}u7Mpj&/;LISͨfyV1`x4MZaR4/%-UÔ}Y ksg[^ZGX#Bݖl.48,vcz\HSt1Ҟx#l1aC,9ia3&<DD-Ǔ"eD k6O9څ8lccp_bgpE;"F[\LMFvCWf,fhH]ԫv-Lc*tXω7gGlc-+2d΃NbЮt5#MK84\؋U@T%Z%Lh$HY!^R#NyngWJ\P4ug2vה~$)VkcTKCġwl.<`[ǩeڵO".A'zˬWBQў.IP>23)]M tZ D1'6hyHPwLTכ$wLݎQ簠}e\4eH؃{;5^/!gJy݋2ԅ(>jv:)Kc7\h P_GI^Sv/Z/͚=GW1:C;́tᾚVcߞr5gI5jud1绬3)xJiSVRZoh%ڈ+azI+ZDU7 ˡQ?nDHsss3;Zu|"}{ٚtnͰxXR+&Tm'iYŃ젾x$=^æMRF*D)}TaP2GـٟP9S]}4C^@pn |f˾?ƒ-XmaE3ͦ Ľu vQvx3Z<"TD *Zu ~cqQcw Jʨщb1,E@hha*Ma5즙2U'(Opufuw`5,($w"֊>uA{/G?Yq0#YG ֭IO8X-2 =ϫn{PA|fa ,h/~(їS0'H:tngί\2 Ⴕ3^uO\<Ĩ'L 2)G[KdK:/) .!B!1xԄ11=8<&!<0L3"\%o".~wL1xZXZ1^x*6p*x+w֜p\u1ن}#/GIGZ7X㸦j<&4Q%P/N}RLl^|" *^:e!ͱ\aA>ހm gK(tDPEq=0c*Wmȑ{գp*W73ᑧ2Y{͙iqd@A7KLi0ty'i Wm;G4!ȶcA1dLF ʌ7)eΠ,R,"2} s;( Oו]xx@*0S=?K598:!RSJ$Pq=PKS-4ި P%è?%`Ym Dh[0b`cb!)j }U!NFӂaMwI' uDPx6>:b6Rܧ'J8a \Bfm0wR2"HrG 6Sx&|&)0IsHiHN,0mqi­D="@FMҳz\CP#:Tp yErrX#>;`4J25J96Md;v%~,b1w˘X}Q=Q-/lTgOV01TyXm&bTj9'0>ַ0;(#U >Z!zFКئeuf-ш!)R%;!: f or8Kb֊I flQ$Kρh$6'OLL 3F]79gye?WX!U"#L [ XbQ]>`yM/h P$ljXG {,Ɖ p`\8-1^'il7hC|eS%t$<8#xdY ~bɮH<_7:eU=#LΟ7gCɍƑ"w]@͎phwrowp2>n$ce9fٷ 8ݖS F0(GLGhfn4c`#m1T dE{:\nXx1đ \57>l45lϖoi<Ƅs ًO?MG3Ic~a-aTr=Ffqs 6poFw{NO?wx? ,蠲F![P M:^TMLCYIYi}FΖ>앝b'=;X^Agq{|][,mst/s_AkKp:~XԖ~~6<=*+mchiBG'liCon*٦Q;ޱvT((+Ks Mz'=F>#ܳCk;dbYuW|5U~4S\}{16-X[lcv|V+G1 eԲcFY\%}I!ܔjԢ! a5bF@&4:eJx<7Ud1V(?9ʹO* 2)hZL0s d!8&mu WT{hkjdWnU<n7N:@Hl 1gߓ%4N"MhFxo\lӈx,&30N5ǫ9`=䦖#pqnJ?{z /7oWBJOj [DO1slJi ;na4%PBiKj L-3mvXa|w/y'VBDߧX$ګ(&_ci?TqyAA8r8ʺEN.`'{5Iiƈl1Ίxlmh%[ d ,&ߋu`>;a'wx(˙i贌yk84NjnS̤d2OR2p ǯ"MOJMmLnY w47b[#ZΥ 8x]0wĦT-L?OCAD6ҟGygi9"O i@SS:N 2][kM((JiďAn>%Vc#C?jRoӨL@ބx;v"5q ӧj Mno_67h !+\@|x[cqƍw uN-,su@BN$Yan$[>u<%Y1QK1#mBq%wz6h2Åeބ #,>Ne#1^J2U! NR7 5P[XjѩlƸQ7Fndޡ;>ܬY%Y7RvEt[NzM\6k)A_v_@΅&` e^fRP%"^ JI&;3-b[12I F-Yy%&ahgK?| 3߸Q:!X9lmt*]QUZwU<ᓫԣ8= @J?f{,=ֻ6,*XWSg-Ez;CN b&v#3P."8CvC3" P(švݲ\fȠڨXAUYҷxCŊUXQ*x%v-aRd9c:#W虔l;xK"&+.OrR;p+U^گʽ9k˴7XXCAϐ bjEY>> ]`^= 25yF0mTk?)m #~*{Nb1^aӈ,!0w:̎Gؼ!^Zbzw3u`[9ev6(6|"c8+{-6,x0и467jYSɮNz7X-Bw 'ι0 /x$$̏bMFZES6б g!b1]8QYq⏅IIW\G7c~4 -jiyp5st&M>'œF9j}2X 7v0fQ|AZuIKݻ"z ̶ͣp/呍JLzHj翜p1cF-eNf/!( Z 6hko蝸|w P"FŅn߄p+}q E{W4FZd"֛PX5+%i[˷) = pל(Qw\:Q \b-(}Wa4hsz.t[gs*I 2Fb5]1vr'v>ha?t,cђf7'FeKLvk!P/&{Q =ޅY_ЙPRUF*i4%̕u9 eUw:oq;5&%u2t_ÔG]yu\[>a~-eE"w,Ao:K= "Zá;$peTmnKv,uPz,A$:k]¬z B` P7jz;vda0 *+1EZ4JAa~8brՍ3FHVqN RL+7[%_fx!?"Gϝe"Td-.-fEٷ:nLAod9E*.@y5M S.ъ |I 4 >)v:}Oz8aȣ/UvKNrF%K- lw@R/^œ a*z[h喽,XMkHs I#0ˍG\N$> ;h"/ښħX#!̑.U"@RD1њUkBF hŖ٪ZqE'"#@DdY%H%긇A*^O*Q~+GR{e*v8^zX_a˽E-_7_vT9uHNJԷqEI˨(#$D6/VV.F|>vqt=/JCvι_eE^ j)${/$@\{{*(jE\5֍7FhQj صc& ҡ]f!XQ La+Dp*ɴ?j'/,HH{l2' ɗGTڤђ7hX];%*xI?T/r%wP& 16FTo&%9#rRE\Np{fx`<&cAÌnDu7Y9Kn|Nqaуԏ^;x@H5DT%Z;H\8U=>ruz%5C6pjZؤ6LVq1'7 H_N­l`of̎Q-|x_m&Q`Q ͅ`>)B+lX 듰kX`6Vj~QfzVmUJ%-͜{Vx2IN([}SB,T?| 5ߖ9"Y40MeYR*Lܩ)Uήv'= `ŋ+؆|$)DJܑ@KA9uk5h$! tQlLJ[~{e}U5Pe,1 u.,zu<5靿W H,߉mEa~ L9ԡ$&K`NW~Z@"+J24uw̌ [Q|{"ff7_S{Wa8:Ө7xzOpc!,tTkz}_˼>m^jx.Dm?Ӓ"BՂl]z1? OK/35=T*ͫ'cuIdVmU%usq)> {AVZTh)x]NEΎvq΢U m r:箴߉),cLifƊSдp~|QkC i3IE9;lPGO`W%o~/5](W1):*ԵnxI w э˩)*m' wCr .d|ySC-&ij=jI2XEAB)m,{xl\ X1C7=bzj-NzW w;ϙZ/T YNwboR(vɟ$XWrij|ΓhP3 \8R6dnpbp QV4J\V\X- 7v`;oUў2f ILHFOM*.|΅e00ОЏϾjH%Q+]_'{lVdhcoP;Mt 85 "&tZek#v@IV=П~PIlJ#AY۳ %_@OgѯRх&cze"iߜAP>ž׏Ƙ~ئL)Y 3 @^T:$ZvNHFxR_<,m*N2A^ jP %vy'ҿ >[.OǭL Ou@+aAh^j1o[$#Ti2yx8;x[=](sV-#]`,1DuJ!~2o,A]7.R; ?rѝ8_bm'љ_<ޯuNϾO\#ߦ'E'a8 RZ)O:TV0a-SĤyXVj 1A8Y(FiL}) ԹqIa޿r+L .ݴP%}ʽ@vХOhr3F2wݺeX"k*=)hc0ãѮNIq] J7'۟q!W[HmW+#gVeiNĀIK6T1 n~\) e2O2S&"R N2D{Vnֆ:1#ntK7H5pl>ܺzE .:#,uXB-cY>G1 ;㎈΍g"(%CIV̝_cί2eյ9sL%U'ι;<۟YAwj~> պv0Nx&9i ԯ톋@D \ oèD`΁KRm&FjExEB !#k܎?'t_]]V1|rChw'n*-%Nê(QcO$DfpHV]+ʕR^ơX sWH[C)$4#z|.~hGAz{88ݰd9S.EBu#yɑK?894(Y3Dռ0^],.5W`<:RDfp;#>8E׃V! H1aDI }ѷ!GR;#RX -G:y466D 80c 1ZfR`qRzݗk\ V8zVT VS|ǂqq~qFk]%䆘#l>Hl8wg-Qvj(J&eVU nVt YM)C]bD]_{T_,]lOdRaayh rx8mW<-vBy-J 'ٽ1rnR(ߞ9^˱$/2؛5,HPٗVqtjYFI5C#.OX v.m`k2o1qs%dL^)XےL?*/n6 xsާ8`1(J!Qc2]ԝ7Tvu egdCFawڃzޣ^nUXzhޫp2:(K}p~ ȖV-dm9 sx4m%XZa;>}fEGظ%[@(ME髀nEl6F2I2i1HsPMLԪr ףhf2 ~A &Y8LDeeFnנvki|^*K3#`ZdkGD;1?D\C =`n4+=xI[мϟ[!"lז*xOqdZ0YwYLնa-F"E+?$**Wτßשl߀YwDLyyn¿1G 2?XLcIj4HrYJqx#48}*Ix※E2;d٢v`A7Xj"ICJkV0bEʍƾe"=:W|K:L4zƑoor{8,ZH~b޺7u&#W\3 #cJF\o\ ԨHI$>p-k'%цڟVE9#8b1n2%AsF T- HY[Re%ېje2X;>ΞxQIoǷ'84VcɺdK%x&! Ipz"B VP=HɠvM.;CpN+#[vb tPr4%8n]j p Mba4KP~mTa@sY 蠘Lq0DNŽY,2PGcxw&x@2 R[͚*A;K1>Ֆt6 PHT>틹0p:Q )i^:@5牠FMZ6/D8Ռ/gTMNG{"#c2h-K/ 6:p&sEKjM8ɀ,Q,e];tw#>asrS;4~Xu8!8,tY9ADՎ25Z.jCsp-nؒ}"UۛЭE/|ap*њ?*ʊ_( ԃi'VbՊ҃kۤʳ~a`T.޺nd'@/ҞF{▧GNo)p6񏯇~"ӟblH%7>K8z 6z9R\zk $")zp>($Tz*uu[KG@, S igHۚƔ&vhE1&]L8Z9CDLmo': ;]P j)+Eo)`\BCxoD}R1z3P؋ѝs/b8lg>^i"`UmNVI#5&=$:L"פw6뢁N*#?kPj~i+e x~(OP7Ah:~^LҀm}PnE[f3 St/5e&&,HˆUs:}]T_W^E#tP8u'9O^Tg Fi$Oņ,o37Ő(uTHym]H < eGvF"4NG|rOϸn]\Kߕ>YeEVj=y\Y\XA!3ʴiP BxF^?*2w4`WxzaV+6mUP'J RKέ+\Mƃy;G c#&'@l+!|fp 67-{ݭUBY[ANΤF^'vzv^\y2Wt؎& 㾂^`Gb{ݥh:RbXN.OJlqX5ǒ?~ c:BW6:a5++G#"CdNT-ab?%S] c[]`?a~0/E N@7"zND^2#k;u-OaI1(QkW9B#9Y hT5]UCu,G4i.kjSz+O$/5Ԥ^(X;(ih]0[pЈKN̅R=ՎaG׫@U?y#DfK?^#3k4 @![.?+3C_@lK0'[UY?AKޥ:,zߚo dgxM5k&ve+V҅22 BHG)l+eZ8Ym{I$ag> gڏ4=VZy%N8 0w`ҧ^]q̓M`PbtPb 9{thm-I]]h @Ͳcp/㱌O{,fcQG.VEg;I^B.󁞉Q,a8hsHA9,%m9ɤ#cč*K+-߇EՀ@9 ]KG^T껮ۜ}q1&Xifwk@e @~ Z؏ȉ<ۛ{6Iw: ҥ y-`+(Y.Zm.an0w\ x3tO6 sp*y\m`'  ԮU5_gdX"xK q7~>m+ZVR96_%G5p7k ϼϰ ! sByFd{软<>yS~w+:(+)5X0jh)Ot)pqsqFb8͝dF(d%~\Jؑ1Ԇ8)yCF/T2ś\Y8UryWoh,XБGMZɎ]=}2gݯ7sErAe&r3J/A{q7&moהXk+Я:niOU$%~>BD[bJx1jk\*x|wq2Y>]"rL#.ɾgh$ TW2ոcN/ubrпP R.}0p,IhiebdygxNz}"5 RŹw֬*TN&!߲U!ق)FŚdo3> 20a bmg 54Ơ}7GCݐ+J}fJǹYδ c}Prjf9SX0VMZv8bSrwp8KjACoA{?O]kGnbiP)W+xfXWK&Dx'IhF; P.Yѿ;Vp(ZYdaTR³ WnV:%6/+Fu3)'`4es.,ȼx5E.?}&I "IYnĆW; hK#b6,,Cz*S?ZIIK Dgi$~$/NcWzMHhUo%A&Ad E>~6QVvf{_$ 71Fި6*ҹ(d- ѹu@di.,’OEmdDok J0Qh&]ji4|ߑpK~sOnG0>YBZhj4.>}i4~*TH=t,t0vQ9LN*gV讜^1 " 5[ld"*AQzyX2DBR?ӛnn1{3.YԾ^'> cW Js:[S5{||[%~|nU%ixR7 i 093?+z.Gݗ>;؍ .I~^K/}vw73`} P ` qz4jkaHQ^ob'b(}Z]b]2 .TTYW%^Qk`~ё-!KHH}$ڊTpȉ(51?:xqQ-uYz'oi64s8##>*By_L ϟ$5йsD3|[yG32aX  .R.3TYnԠw4K?!) ~s@Pء[քG9,ȧ&+yetZ?$ZkNͨVPG (ɧUC/_?uZ?PXiF˝} qX5[@Ru5d U˙ EC)wv=ꓮsKa>0 SZmІBQe`lP`\n@B7Ub&:CLH|OA4,-\6"ϦoK 2PWJnl$/ZQi KDm`+C8U _YF)w'I2]K̞ fޒ$#WN `|_h,V>I8'Mx2 !R)36?Fݮ9If^|u+ {uP1 S]wzⲶ_dZG:QNQ_h@i#1Yz `(Q8y_be,54mqZ!㖺N(͖_&(rcJ'_&y53aki:k^(-̉4aԕ >:[Y0tED0-gODzm5BANZSE.bň|TZ D; &@po~bd򬘿ۭAN?ٚ=Q:ײU3N[Ҳ'KgtfQg}9҇Eosِ߆YwpS@óv۹!2wyJdSj֢uL奶&S@HYbb~D3f$RH?4efNfuH;|bjjj/vrO\JǓ mrhɒWu̸GUD֍2F&Ѐ̘ԿJW-9D|9V=O@2VUN[25#aMiv9Ʒ ^K)Ou008b;pLJWJ0bv6@e"8VrƶLcr%͗ ;} n}=fY i$K&O+`dF_=Fu,ÛMr< r}Y&XlzQKʡ́BwDOZH2$8RJnVqp$t(a^rSTӏ \;K7%J]ZctBC?V_"btw]r` Zw&z I.qQaDYS㮾A $^l: 3alKv-.]j:EUu΍|etEuDcbeUf";zۊ0_$v#gT0G :`̅r=[>߶zg|$] ZPJ7mML=C)MÑN+:\Ӷki>d%bzMR/G}q,lZco^jHo׉;伥udDԇ3>۫Ȟۢ1YLo}0| InpԉNpoMtA{΂sh,(gT,n 'AfU}$YWj } |B[6;okZRL]$+`^,DXڜNǴN)~%9 ծcEҶǏQ5_B{6p  >sL{NdDʻ/Bs̆s_M#}䜙e:nY͵ ~*3qN?XRb]E'B͈dwk+jP.6h}d6~|Cv2'); aOU,ԡ4HEB^>yn}@GQSߠoţbK X?N@O$~i)ݷ` B?D Aeؓq>yȌ; ׯ 2DGLu#t{)}Z{bOf,jt at3픆d>RA:63C r20Kº<Bqʱ!dLc(2@aӚ]c}3̵]B撎6Аj{[H#ǯ7HY\p,t[Z# lv~Z͓W9ʘZgzxNY=UҜ 렀~nZ2w7-o(?Hl)Bi@SY3`!MLT1H}O&1 JYo9e7 '(-ቀk{Wɶ]Z:fE/5lzخQϻw&rsI|$Es3B6PJ  5ɷEn[R_XZe;}O1ʥ j1;>v&z?*9\c9h5T,Z3~=D'lUƴk--VìM.3Ny;q]l8 _m,O%\]=||8|R[ސȜzjS9C>)" }>5ljUQەĈ#4FA-Qi",]QHf>|ڃwr膊f,i9B7;sh.o\KhZC^F 8. Xp +DGp<x؇ YUVOj3iW"UTQg2ښrdnGЕ9d[N49W'C#EFX)wpOYOͭLߙ/ rE; J2`wJ~_InU"}CCHefqLY{4sңSSo/#LPݘU@)%/|I`4tZ\ pCjqvR(;cir qY4uy{ܭrqJDk}ߟ-[,ffT.rQECdA0!l§C/o1N$-(U 'cV3QõX7ѾcRۆ{d sQ՞a(% W|o.G]!*3d ,ڽ҈Dn<b>2k k48Ֆu[a/% er3?ڱ7oJbPY- tŒ|Fbq{ q81EkM0%D'嫲7ўjmnO_efת(=q?H)S zLV+z~3Plw4m]$KWa KIz 0ҧbu8-ۥM yEbl# ism=*rEix-tIʙ lB  |N'{RnVp#3IDÜs NB힣P(v$ $MK+_?1>&^zv-#=yo`M~ = c܊d9dqi ZT;_S<>ċh3wki;ޘUg)û퍵TaTՂmO74& Ԕ (cerEFGQƆtEfjhRͯ3_ʒӑָ#^Mkj-Ǚ/xH^u~k ^ٕUp\<Rp׍XeKR)k IIR5m85uA/)1l4X3F@q괱jH2㔲5{'kYm>99k1zcR `mGV^e e6?k$%\+H~d 3-iaQ?c^j< :؀QB1,hHӷ+IGD *0CRڐ(;P"B#;VXkIc1AsZu u6%NiGY)ECx6}3|wV ?JE2Iu},h.{%[^H)?\0h~Y9I\V,Zӑuz;P7x[{  ZA ėӯo1 h[ZI[Hg]dTZ=6kzFu5 PƳ?*۴Vg{ umIU(;YFy gcrfD\VMe97ӜΞA1=[~3Th~m\ܫizZO5?9Cw۝M*f1q3q2ݴɿ,3[#$1h~nC7cdF6L"r0YP+;~ze%oDž2eF&J7.dUG6${xs qr#=!P:d:q#yWVD,!>K Y/f*{l:`0OkSMdm܏-ovKP;" ڃ{O ?PO9ԋˤɥZ(9՟1*rNg' 2GURe k=3 Pt> !Upr;$BB׏Дg^>{X-cn\}D_Py^ +q>{k! XҚ2`X ISWtuxNƞLs)zv-O?0)|n+V|:5U}?ɶE벭5 riѺ8,?ga6VPr+}]tѭ'RKO@)2`CRKwB:\ d#ݟ*0GԿ^LЅ焪Ms1qQ"YjVQ!9^_*31YPgQ7'L&SX?;&JԗE*&T ·jy.TZCg[9Qh|?^+) [? 1}`ds \56-z'Ɣ0(/<IcçY @f1LF+909<Ϋ'lOoq_ 'ѭ2[ awl)s)M.uk.*+,w0G~9v]%%]ٗV8:v8un9/WflxNJ0 L%B1n)/HX>@GfnY逜̱WS$W1er;M}[H$u孍G$XFd68 1-t7[=I([PAI $ v6p T:ECuAx!L&Y}dړ iI0UK!3M鮧^gغy14CƄ6L Ω7\@7e$KG^L:5w,p '֕K ޥ*y6EniQ2(}A Ƹ0zI\0!YD降#A%_.tL#{JC$5Y5-BcqȊ%Z\פjItgƣ>>lע8/$\ʒ7L)||rqHP;Dy^&ׄN 4f1?qu8]t;9]}.[Y];~ϓ/ߧq.D]h#Ԯ@L5ߡs}U(Cs@G%IYyy)QXL\W B4s]rV(2y:AIm4ć9!3(4'PV8L-~%Tat nMh)zF7舣Ξ42gaRں NIڰ <(Hp1xdK};`t\DPeRpg- 'P  L 87Ili=Dy&G[üꇓYFґ:ƻhtaԍt.L:ESP+kn!Z]N@N Մo;WUBHiwd[\[Cg}D? b=%p+T4["G.rm>{ HGxƒ60~kF8amH*{`2B\ex+]߷!x<얒>:D̝x矻\{7DqLZ8cƳu86ﬞeBIZZz[):yd%`m-KOa2uJhY4SX1(lT` "|afx)?6Bn~ Z19N C!A321l4V@8Nn+HaW0g(#`Uʣ8;}[(5M1R)³;~0_tC|(=n VN}/_H F5@AeƄmf3䭍,ǗC7\;Jឝ8LK#_kJg-fyWG56GbWzZL>.`)8gf}. qӄ[vO 7`*vpLє|mw,o|%C?DWW- Ku1wY*-i&rw6";\4r ;ܹfU7Hz$ T#r"'g݌߅84N᭍]V>Y 85(qF)ߺҳލS(׏s7sG #9\UB Qh_n@. #q~5rFN 2P) )mA lϏ$xԅ>^&Xb.tue ڃT9ixR+%=SIgω3i6z @L:Y09cx$ n { GhU;;E5$>@{*w d#:bp:\ yD.#d*/bk,ǨR pIKvME1/ ɶ3 f:m]z*䟣6yTgR?HفAh$F6k~386tdzé}hPψWzф:&@>z,8I`ݥ#$#_gӪCޑZ];giO(]B}z7₄^=WLu z&9 tDA ( W(lV)'2jRI_/ Td7tVl-F-_Vz_;ާo@(Z>(0{"@'Er a.Pem=,LUزr_Qe󈲯vtFcblR*;XuA{Ѫ>L *9HrU 6{&g鞅G ~&Z~jGHsm(o_bK bLWJE-/Mȿ-K.@{߃n*A9BT( t vDKND]'BC&3 ;Ǝ;FХm0#O u:H:C=m%g λ:MwX_4 jJ_Pg!0p]N஬_N|!f-or[o,gfc9ηp7F-dĩ˯v4z#UP S^t4cGisanJuBe,l"#\Ӽ>p?e S#=XB˄TKi3Ƽi~UJς v햸Z v:6on4rj0NqC lƣBm?P) p*ݽJF.XukO=t7:͞.yVߗXXp&  I$lAb?s.zB$R&7%$3Jf`xU&FKL̳ y? (w|L3GTឡ?+z FޠcBXKGyx[ uR㗂SHs5?R^'Ƶߞɕе>p]ɧ:v R~ 2<>=In*oVsl`OAlЎ*Yx>i"q]ALCo\g(Oϐ ؕJͬe=jx}%o0aa&ʿNds+M>1!tZ]8EQU;> t wXYL87+rVHz TÞt ۘ2Eݓ//ޕY<>bNv7oHhSr%[P-b |!0~q^#1lG'$Snꡛ Iu&k PC߼ D~E4S8b~ky֒Z&{Tb7Jx>ķD,4)+ـ3] xc]кhpV`ad)/3Cw;Pl^ nA5bpx-ްd֝4X #HWٕ+Lfo%)W2rCr,E27Ǿj75tԲ=!r[K Gгa t/˹2v; Y|€;fwi3paxЏ'Ѽ<GRrI0) ϵQGN QXSTKG*&f$8v/Ym~yآW w̩sx 0<͔{pRN(X"yZ8M5j],6I^|tMOB ?rhFp7jDAp9Xdn$syV! ȶw7i•EVgM[\s'N9)4q3q=*ʗ\e㿱v2_'J#U& BWIZ%G#]H%pe'-br+ɑq-*ՠXJVbf_]|~(Zs.jk_pgLͼy!PD 75Qa?{G.<%n.k5S_2)llɵ9fvc1LP{;sw&޳1`mnl:FZ>y. x!n2N\!Œ}g0403o|+DŨFSy}gjۨ.[WҖ)h;' ꊠW,^B/Z8Zzv:J숭[G\\|ٕHOmUJM69IS<*I a& ;3N(7Â(JC5KEl.uu% ^ c,q"ćHg@wTlijEݲ39.g8Pz֛v贒ur^z[aL~g y%i& Hr,?ԍE!ԁ.^"y(KE船r᧧x:x3>crcK9 hC< ۩M ݛe |h2v։=2De?ʘ?{'Pb=pJ>jv̯<cb_b& p} K S)wԹ9ľ[Dc%؜a'n!íBOOW%Zav=2=JQ"؎e=@HkglvFEU%JJ腦+_T.8]`H(sK1-<߻o$_1 ; 9|(Hq# oYH!5ކTtFgRRf,ۮq{q(z{Q歺a8!G߳/5]cbF!1BEYfڕ8I02wkgFqSh<7_x|:MlnE_jW).0.OP;Qe' b0.r(;5& .^FXiֶMmnv$1q?}-6 X@!U|,/[`/)0"V ]"&'L:Eo|)-^Ƒo5K'WP|'ˇe-U'Mv[01E!sU +66*fNwB RwŘI 7tH"'_G6 teZyUN!K 7` %O͊M3G?rgs'{[ Fzp. +q^G]R79EI;)*'򶗉6#P O7H.7#9 g>D2n.Z0̳&1֣k,5ݭmBK9%@ `twh1Wfsʋ~4dK- AӗƝTQl\@Tu.seZS _b'li'eIgڋR~B 'I<EĿ?߯.Zm5^%:[WAVכOT~'gy͙G\ IBCsBI ` K2zP3sdԟcA-@. A:XUgMeM68ro;q`hp܅ oq!i%`!YS#}`/AS%1)#9]/on)J,5ކit#t{fZ:e#"-x(;w2ׂā3cʠ\XyO3iǘu/s7 ae<͵>pp,3yNNN*4>}K.Ő@5ҏ(c yxI8ZA_UhE/!_-# }ʝ\q|WtooUᲵ=Dn\ 3R䋑JYc-Qx|KM^ z!Z}Ɠߖ-~Pvql=Q^߬+ @@" Q<, G;;q%@!țsr&Gm8 Fdw 'Μ|CJl|(9 ~Yoe%s5Ix{TTMjKg[jHT %H- |@~Zr%m05^(.s.Cnzv8&GG[N5g=ȎNބó2Nq)tDH<7Q -Oz9e<[+7(* Sgo%Їbs7YsG a*W8Ur7P"P*'X͘2lYd'?b9镤.X+J܈[2]=hj/}8w!pc-%P@p%Q~i{ *D IJ[z.y6P  5uOg }-Q ,v5lyj79Wu:ͯ]q5A dKt,PÍKam|ğ7Eх~Nk=U *r;|FÒg~pmlfY8Fn@IP[\gSƅ [NPdYBwm]ӑݒzvnhs-5uS )| S&93c;Y>rmZ!WVTRi8ݗXc%TnNǘmG4eP:&m-Nd% fr^yBII]g&(`B lpP5;F%i%_)z*!WsݩE-Mo*/s!&+>׼:3._v҂j6PxygMNؒ|@/ ;&@oӔsȰݥũ 8PKe+~-Inks85t[X`e37=W/W!!y6aa%[w\/'p_laZK.r3hc}>4_bƮ|{g굁BXGן)uww??\\zQg R}SSR?,,{gޏ"` ו7*}ǂO2PV0Cvjr^Bj de#\՗=B l9Y y[bZܣ_r&3Hx/Xap!Ζ1 1iJ & I*^]]mfloOAhVpDn\{ӫrDq;y4qF/{a sg]zT41*jշBG% S|-FC!H H RG?cڗP4zYB$1n)%ؖ{,Q}I,^)}ª7>s&ʝ۸;d & CܕR-3>Y bW/+.!56\1$j*) Axot(oV`jL";v"ؓc|hRQ~_y/n>p} SNG-y(3H~4GQS&O6CZs(lEp>aro xd292Hqr]\"TDS-32!3Jju1|n{+PrV6/1D9O Z'i 1! Y@6) 6jafkT_CC 5鄺U,͝c* FV"?z}[ʆ/ C.[.^ͱsfdGW쨺}/xU y3$'VThyrÅT?c&ʝcQM/3G՗KHM[J"Oiڽ(ЏV*nq^SP+|tq$!+^,dO%HѺk렍BtUX-9F J>h /El^* ja (t6dDb2Uݪpz9}q;_[4׷$%b$ tk6 Ij >XϨ< i_G9H(6<6Xv_ȀY:$Nb;!Ezw RDΥ(w%vS̶9Rv50Lnɋ!`m[12 fn[OzLb0j<[^lj*4{3kzǑA5M$3( ;ṭ876(װ[ƲO(9XbsA)LQQcU'Ig5-YY~0xg`I5oU+2ۣ_QVYUqODdpZrRlrn"=&<7!N:8l-2D#26T70f5l&T^WdV0]!)=DG"ʠ4fpoˌ7f{Yԩ!FܤYreۻSd:^n8Z#u>lAɁI$ );QM7c)CZ((" H'~lfMڴ>$1$<R9!#ȲVU2KZ8?sW-?y( .v+$5(ρƞm1Cx[{21 Kӭ\޺HPg[l'7t77`rSL5ɟ6U;*.xHVa,#KXl vi\p.iɢ]xٕ],J`R9%`M({}9EA"+I"!eE inN ,s2*IBTii{s](.*t\ЊD+w&n$YA^C  ȱ>.I^\Ё*ר0nK.į]v&1v*4{_)pwgbM }VHO k%bynr ?A5ZBoӈLkŞ1R%L.!`1r5ީei;F I@1$3R>ZKs5pMԄߍ`^D#o)2Ea%@􋰣H,u6aqM3E&]yfO_=]ṟg#*]Q\-ѲƕSL-ʹreA:MZx*8$J>0k%VS>S?Y}ڽ N{~ B ѣ\. wݰZBSbWJx$( OUD9|C/j9&2 ƺDygCaӳK8['gy%|=QA'j=nT QaIЏ8Te`zGNAvO/+f&gT|o e-3d̜lw2wh$ ]֧F |?fy s [P"v5x|;X2.g,ψ휳؂HۥbsbགLƗX-ӣ7 8w6.zPAϋ3T׿Njf@UU_Q5h'O[%̧ąVvȴ1Ƙz'^_| 13I]-O<.|u%Ǒj dDS64؍ՈxOacuEU3L/]e,2=!GzϼxITםRM~ouJ{A׬ɋ8JH٠v,eY`g)M~ (*>'}6b k_w1q)m{NCjLٸǽ%?s g=ye'X|wxWdd'!$@I"$-4pXC5z7Mu4~o.luE{xNl,HY#&C͔pÆ'hb/,瓖'/rMZ|'!`V!/""*bq"~((Vbdjs8~TeZE a/V21fKrb;uUC&Gh s#CԎ>Mt71:-;=ZRr&?]~Rώ8p{V:zuhY=\#CI1 EGw YA c0 B/YN~]TD`oaXn{WbG42;|="6YjT)?Vȵo='WF8PCg/]\ƙwIQ GZZ[ZH4z,OY5∥s1V J,˞Yvן#'&- * 8iPVF"Y&èֿ*ʱ{n6$9 kz\j@aԌ0?Aj66tvgj;lC2BZ'B -^1\Ic~ϬiIV5m$Wڻy=&k:fTtyͬ< _xh|Dgo)_#  Zbm*WST7*t˱ovץ.FEcL_yz:K#P&$-NYj>Z]TC۠veTd@m2>vq ]ͯkIDۙO[u,2nW(x*z:C hܦui==]e/HGpml'8\aZ f| nF,I+?l3ȂWcG.6{N` ^Gu…w!ISLr5 ; B,T6BtʱAz8٩_~dM4.űK#: '~\1y5H#3\7e N'@YGmXJԅ?eh_n>Qn>6 ~sZ%m18%r&}PD)+{}fH"p !"8wbf_ \Uܳ 7ffNnLzG0Wh`o $|$6R)2hkܭ}Ͷ$2n\#AUL=|[& p;&=έzJ~Eu)9,A  Æ('>@`Y'Tʖ.?0*}1܎)am4;PWh2У {{7I+o! 6z{"E/F(]:ggX(#B#cf3>k̎wXAF/ϩZRWpH~Ro[@/dۍ`jox_!dj koPټRh`! $#C@ %c'a`]YQfQg~T;ҡJoM7zv#s;fs,ZU*?=/Z29 *a"PƖ&$Y#WGZR8Ԙ{Ӵ|KHk37ڤA[2ڕrgjo7b\5aQBU&9V#od܀[eG yD1CU"hF$| a. I{uP!볆g<T/ E}:+fC8c7wwB+:y Ԯ%'K]slFmusd$ -_?h'B73"iXzRLybɧr*IHo_-RؿMڰ͵M Mkܤ  wvQ=߾258#QLmK;O{B͉m8!+߳gM6P ؅[>=Sv\@T.-pYlB󜭁 sa1 ;R3%F8Ew`F%h˯x 4%G`7;تT 0<_,z{}lkgg2`HĪ邘z + q+f '`Qٯ2.y)C%Gu ܜRGި;Gw{t|};WPZdo䵧-FfE =tnLї@88rĨ~7^?W+Ǯ'ԟ'dZ F(j]S =b$Y"..Y;quڦwFr!#7ɐ},%5pc$fT mMp@mٖW4f+d ^a\+hDg/9m`'/g=5 zaKzݓ8߂h 3@/Mx%@52`(\,Y.iD"QMϛ%O_[{əo}uVl t{VQ:iԫCQqrmp)/̛*Ц3|jGy+0e>=zCp1ˮĂBB6El# %l$3Э #&K?WH}+  *FϿJ1QP°Ie L'dHrId:BLtuOS\w8TlY$TBVhlk|CO󵣀Mc2PMIJ)2S)Y̿%='B|,B8wyCʣ30\:xlh@Ch3 !jgO[@`Og:; yXDŁBx9$f |X |h2QҡO ^X"9e ` @B\vrR?H(n­M92ȏYQ ܕ.BvH rW܅W _zq X %StuiK]Jv6DZr!| S⋽+:in'cNÃYG-qg553[5_;˞ eSml ܞ8.)eΐ};˥pNEVvڍC嚢۟д@XAaTW\C{䪕VFWP߳ɇTb>ގ"Y4㵿'3ƒ_0-9N8r)$^@0zv -o `Zh^:# (dKR,GfE 0sGZ޴P،dOпZґ m4—P@pwDlc q`I2TQLu .LwUw'>_MfLizbUj !v/ЛL0/. d풻.LWv )1{@~Gq*S s5IGDH'Fa_(lCyU0̲ ~ÛhzS\k[G^ZuA)2ȂWu6- /J,Qdmˊ%,ZكJËg'NL:}M$/g'@X3f1+fXB2e^THfMtI){}KE-_AКşY\* lO4ը(C]#pm$I|=6͊>UV m2QC(Yβhu—of©mf uChۡpqV+gIޒݤ-:Sv*{PaztZAlХ1%~-a;~KulV}Σ|Xx2( \$ ǷpZ>:h/wp=>;>)Y3snq M9oRIdza+*9?XP}ؾ++:p׼.Q]: x-P|Uo›wJ ㆟r :e^9\SokN_s! U.wJۼH ڀSpiH)H|\[R}maR"W$|yg>؋@uZ7D"DnTeHnl,KtrL9AJ>#̗7Se~7V0@l ]VoO`\ZKKI aP,`>,RD_6GdbK]U4BT!A|1;RCɪ[ݟ2Mf]p:@Cw=NCy( m4RTA2p!40p[pz|u1 &ÛqĸA12.~d5fu2%)Q6dc3|NB(>41f'fi;|! )pwߍf.6j#g-:uHBexi(٢ÿ/`ГIHzU[3!2py SjR̛WQ|ט Srµ-C_ݦ hU lHBM,w&*~dX'IS%6n Yy)d8go<.HS" q'l7ޘ4 x޸ݼT{ZwdTDKm;-lE2{1~z +ا6[<\DQr/lzK,#Ef uX|pp%&y#NC(ڊ˄^'29JMZBbVJ4]pDMFi|1 vQp4*Mv81jmqs[v26¦QP)p`k1qVNj}A4݈v' K6n`}-EL[n1*e3+oh82bEJ$Kma?dl1>:xׄqֹډ#ܪY-\ ezYvԧ XRMܝ10%u{Ti \Ӗg! XTf+c$})冠Bp9s~LF2ᚦz |q ^ב5_8(%F=$9B ΣzƟ/$4{{1kjʨWY3Sy0CFix1AaKhYK?*3GoB=E?͖L' * HřlNuԟm T!ym*r">zk~^C"A\dupS\jseMzW;Z _K6H^!Aui@)dHD:t=!Q7J-k{-K$YugFlUG @D*mCv=Ed1e˟k倄id.0O&#V1L~O,aqy]ctB gUJX*< .v{[/eCc:uJihPL<5U $G) N9hoֳt4MnSӖ nsrAO1MG `Ȋ;Z%WH@ lʯ 74PIRr@ﯢTOd@^oi#d&%I bm^$-xc2p(|{PKI%G0&KQxH5SЎG:KCeo8~Wg~ ˜'Z$D(oTuBk g Y[pA>c#FWu;ܺmvUQHy,bul vCȱzX nB=NڞodRlfQmhcdrL_"<;vӁkDop:n`7ѣ;4؂=q4>.t(IjtD0ˍ(u &s MP1)lzi=0ͧ.6h NDL/gw_(;7ÂVP͝-EE5==Op+C \vh^L#vRS쀁齫_;GNpc9LݡJR~EG n5MJE 86˶+NDy8'_q 7~ Kiit@_ &Z IOs/,;5Que]n+K/P e=[mg^3}',9XT0pdS)'~xWۦOmw"xHqKpi,U]lrcWIx+Ġ>%MKP,k5X HD,}w+fziMr}JSS ?ENK7Tw) 91~q=]n^u5wsi@jqEavF7U7HxϬ >o7p|ETAS96v#j _6⤯j"GDjXfw?b(?D!sD`dB7<+Tx$0aqAf]#Tm6t2\b d5wV{R(Uy M_d=\ /ڡ4e rx .5Wpt$ߓm7(R%dT8K[M`@uM;(A{ITO؂1ܤjE4`\"VnL( ZhdӦ;Q3g4?-@GiW2Gr+8d[jub3jWi ⤻a@?Tf @}zq/l?M^G%&] 1cjxqY2|~'"?Tsrq\״\Q1-u^ |݀QV/uN-w閵)=G̏1P`aYf pM06L( tdvPt׼Q8MbR1W\)y\dX4>߅w]3c}Y샇|c,Ϊ1_#軆.%'cD/,g(׭UUs[5?I~X )?=qpF 2H~Qw,= zbh.p3R5:CbR|3v T#*zoca+c9Va#$@.aΰ nm0y%/TjW_#6њzT}gCtG{ļeO X>1MHKyc#(ԗjY*AjMYD _v}~[o6i5{|-Ζq9BӅ!E*6!XCMW`C`)EC~] jA뢌:Zf\~P Kܚ{S=0\)"a!kvkVE Yu1*mlݼkK4Ͷhy jh:Ov[~` Y0?;왤CȟeփYV) }fc=b7ϬʏqMP/btn.Ċ.#Sxyº*B%樁ɕp6J+wݘkLjqkBjy~ljğ)w ܍ztC=AS?IN<' t2t'WhI^GmYǸDZVxV3_&BK=ZRs<⿗kju7A`5AШT0vYy \ݞ2ߙw No]`?^95aY Q\Y[W9?Oy+ U6$e5Ǯp3$2OSN'Ac{ە SX`7)" ǚLBeCf0n{{S[9)"5NOd`S./q Jbh@qL2—0QC "eRe|'^q=L*x\J:'o*¹K C:bW'fYBI};ti'i4tE8!].D0Ȧ:xe~W-]Ne?zg[t\sLG t |v̋t:hҊ/NVT&G0Avl-Ȕ~Px: 6 fu|sDBR:;UKvڀi-|,6J$fCV4Y :-i]ާ@:zϹݱF#ai]+k=6.I ˫p,S1mST^}NX@$eDlDu/Fh>Ed895]$nQVzz:tIsX0?]?ulGܙ"rA\6~{+c.?8 *q6z5;p\ ˁ?(2!"TuCnn0H3)Ğ<zGY^,=qL%Ф#ujʐ 7N~s%j_²K:ܶ˧wo5>`9mɒWQSZ } ؁WEE-ܴG`Ry^n;lk\\1p_—?<ȇE gĄV׭BU$ն + ٳyՑ%Μ˛d5"%7K _އN6Q] )G,l7O-`8C~u_JFWbh2Ec]|bY7{,*0\qKJ%&9q[Kw98dɸ|qAoAs ]b`û DSL8?Ur&V8F0ځI/ι` "ê#0:?YVVjpi'[$ UNCaZO/!k ht(^}DKzԘ쾵8 @b!5%00 fdIqg4Es2&MԷf*"@1> w N. ]Pi{^PP-ovhm^:l+OstnSmp7[QTLCm/ hxG 7R#E*;c[i>E5J|I;3&ࠋu㈂i?y;P~%beAu6o r/ؓBcnF6=Ͷ5ܽmm5&Œ<}oV㈜TѰUSٲ;Qsql2M7.ގ4*[I7 T?ygI4UP/#tDrIo.s1r 6< t{}iQ}{m_fmGRo8b:P})G|ӈB'ӜҜ9m* lPR\m[%]xs|2BMUE:RF7ue]=b.~=]k4&"݄c$avsmf|x"V5 %j(bz$䑒ZZ84 ^̲nsѴ@¦9cAsn(j 4.'.f?'MTyix+qQa4ȑ "aн,Àpq;ϭp]ΆSהZK+jWLtirlג7:J"y0b/0y9t`0lF<(M3h3xZZvHʹ0g&4D_IEۦ \KuInEbB7yQb {<|6=|w ,ڃ M Fr fjiJnw>ܫΟB9Bk&kcMk>+ݐ.>'6cea׉(^HbI7R &#Dz!rOW823 A͎9 ݳL[!)nOhȠK } HL 4Q7nt:ωs39gu_C2>3NHYe^@${/Є+=jT.2&U9z$',TDQ쿭7 2\H,81t]  c_ +rzz83]JS89 j57zQ>CpVy6VėAT/Q:{@v gU2v_#;Fw0e[/`z` :Ҟ PKɭv>ꩽ$EN4v1Y{ M_g]=cZjoRZwIRX뒂XBa1+Lh[`ps0_#HuGȣΩW\#ą.7v"+^W':qfB8v !rƭnCS*o?f/0xj^Y9^bUsw!l@j_3_3g^ӿ3 'įG9;aa734}y{|>O]=75SڹsxZ/1tE[H˥V{ePޞ:?C>A̖- ^j 8od7;Zo3͸sEz 5$.4` JDnĉbbsxGPk X|M U$zZB IϨLcdu^@LO"C_e^ X۪kYU<4n- ǛСPs8mL(!ͨ^Ra%Gn!>>v{JF}$ڨt'$TүZĵwk+.'lk"$ȏҟ@l:`y`LB)mZpmNʒ#NW YJWNv m'81H}2ucZxe/43˾|xzGIoPj$ x*u)UdahQ@A=}]7XI8E>X)9`! |u"8VzD_w@b}@pmwȀЏ:yEY''xpF yqΞe]Ry+b|utPAhV$^$tHIoCj$U]:<vދYR],$ luВVɭ y3Phtr{;!F3_kp~ =7YSDnD .&AЭ \+JxX-ŘQO!;wM2I6Z\};  㝃 @I bU9,xC6b mœbKABKUF/b:CS_a۴hDFe[)m5'zq]EoGN#q(M¯d d90/Н?=īM\b>B)Fdu;8T|CaS>w~ [ź aVHNl-q b`Sn|x\~9֢ҕ/vGX}yS6aCp&q w.N6ͰXsl6#dx5Ѫ%VbU"eG1%IsC฾wdjچiH*]/3{ÔIgjN=1:~Gth.ve@ eVa]"Gߜky$$' Ke/yW"v'E|XA3V xZbe?HI@wSFTH꺃& ibAOI7@b}XH&Y:f  Ѩ7&ZwJ%;NwRfNzkޤ>4W];}hBsթDqnHc{ l_?6A1 E8CnH* jwq+1 7$Asse̅b>F fJ*FIv܀7x#xe2L ^TЧ jUrap/׀֏RN䊻;Is*;_n>yYRfط` Sͻ+m&Fߘ2Ǣd&Bc_s%Z3P?ar 0I$7q%"I*`LdKBdG,> =zCu̶hgu /d I0@B~RI *u2^V.D !;(2ObPH-;s ]׬~Jw^F]{DFpmb$NY|HC=2^l01^Ԓkݽ[a:4Wj̵=xvUd^@G D±#h(\>^(H#odh#3% iܦQJDQoatX5+~0X"@ 0:mm o"+(C5Afߢ{{iu,{ϰ8q NАDxTi1޾hyL2xr ]bT|l30<v/v4eKIoJsh@2qà 䲑s0Αװʼ~'cIN?œn_Q4OfbDo^oƾ+Z+f쩽NaЎV7 5F#HjT9dRQ* VEߴ2L&h崴r ـ֌gEy$NYpKʟF%# "5X.U2-j\Uq}Kt0$sد~-֧7O :r~HU0d7|=Kr,wrJt NO}u CvUǀS2^͛׏H3[!& nb=xp_TPSd\'>Pݜ'C(>2|?U fX9i<$!(Is>FZHԕD}R.) )9~jb]x;ԍ8)O*XiPdڙ7T\y9WZUCViסgRӏ ݞ_CaM?Zϑ廐\W<ւ?9/1(2\3G̽;Pf6 8? ENr%im|m1 pK"P`Q'2&ЅڴDR&KSuL}Z߳`osMP:ꆿn{H؜AJm^ ߶;W{uM[ m ޖgW6l0c/yNJ.YT{{W?Ѳ6I%{n.a2 bNnXh/ש9⑱(vѫGzPH>D6?oc[%yMAБ ;<{c)HϽH<gsVAvk!RkvwS~xkgo8"g/tV ` C -Yg/,p0!j ^/Ls"Fl™İhRi #^jv=ecj-9|ELʵ&F-ڧ3*89;rVAIQ%{lV5_^|zĶPSW1#-2)CL9gbt3PYoBv]wa{S&^[&Hy1t "kyF絾ߦX|CU[SІ&,,-ɏ>/m APqꑽN[BTd^oOp]{ ([.Ud/ @!A{\Aњs~NEPjIas D$C~mPCpY#d36‚lnopweow{ajQlJZ<"T Si qأrc'U|߈tH//vb ]Q34GC>d 0-[7qd,ɍYzZ-Qȓh dM}" l׳(r2S^s'zٛ=M_V2ć8rߧ4qhiM!]8 !S5qv h3.Nb<1-sD ,HӲLgA9Z~kkJ"HuꮄWko#:s O$[1UYz쏯Kg>@ /7y|?ݴÈCԦM+ 4D- 4w Zϳ*/X*;O8XֻVD4uLٶ GB ͉WmisFI/ Bg2BCð10qx렣Q}u8zpT4D6Fr̊\'ly'~m_$q-]Bu@b׹5+ddrl jU/yr Oݗ24p \a< @h+uaѣdYȸRTgr#vdO !D?- ,".pϴ^pw4qɥESߝhZXT1 p+:<E̅=GNjHH/H'.dȃ;$4σ@# &WN a񻑥.Zr^)}_*OCH1/n* 3BH7y}:Ycrq.Z 4RS;0J\`čL%QLSw0EMmq|kn $H௘ 1nR7(SNFMoܗ%CwxXflȘ:ƪIeu e΢ %{բų21f:4&@I,S=}-ȔPL~^|^i?zhp,}J~ヨ{iM/\Ñ{D"Eχx~ƒ&"|?$]Tg…>,.WcmiÜ{qa!^/(ֳjo17J΢E(RV#"J\H6FoOWz~ZH_VU%:aJB?}E+_|.YeJKN\!T@Ty0dCEtTXPrEm60mYnT<:l[δdI{ÏԦռ>)Z5N&: 78JHfER8-XaVwbG|̜S"rvNg=PM< Dk+Sa/JgyiOG&7|eg,WƕhI i#3#{ڽ଼e-,e+s0,p`N"ܱTo-}v45sft׮U= L7I5hЎxfM9M/'ig-˯p_ʅ;0Hī 9;?t)STUҎ ‚SǶQE[8?O *񖇂c;vd+Ī?Vnt~MrRAi<-BW+D0% |x٭׈ 7ǭ>p# lYmӚ$ @Rލ™I뗽9Ni$ அLe. ^iE0\f} ~w5h'\\G."[0 p.S,lbʮB'_Ŕt` W;!/h{UHG )=mI} e R/ 51۟lؚ" A0%hKA R:ɴ){rgZk-v~q/FzXNMh 0M\x;܋[p2 /yk" s(플]cԯ?3X7%N{m4x à 9ܦsZ쁝X0.->cHN]hܦT_>"-΄+Hi]^DNSBwfG( 3}495+,[PKJ:r N=~"}*C?5?@ΡD奫G*,W4и% ~ 2d;W烙Z:6,9Uo9GO\񗣔,A&HYi̝1~W gC=?HCDirq飐+v|z?@4HamߌG89kJ.ش(D3#*)Er#ùY"M1Tɾ6(a:'6Z7shCQү0 M /HgVw._o2Avw zXiM\->zb#Gyx<̧X$=1׳3.34y& { ϽNqǖAG[z~mLC&5Hr5tVE=/F|U)V1Wݳo$BF;(0%v$F11zj@n]@eI߈oEϵdcf4@4ޘx1gu^'sQղ?}gI⸨Hjp0=-"~;^ vutxukkŵ,lj2='\qMb9}H,I*;D{djd#'`mڒޑ? 2Qhj'1$IRԶzZƆɟzn/+Frb[?M _" VS>D=Mr2uV wCek/\ ˜D?;wfn^XcXbow.T[ùYY֊ )i*Ƒ\ഘ@WCR =x[uSAݛ~8S8 cfuc8CO!Z0" DW:Effwt8c]ds.2H;/[;R}kF=RyO׺M{1NI֚M e`7)ѱ1,ZK.|CAiV6K ,oE#$ȃnt>NAʛqNPr0HǷlkbz|F3,P e ҳ~j uJ"UW1P6g}k&h'~R3C>V=703g~@W͇lL?YɦpxƫN  VoY}}4G }_DlUdԶt𺆞ͽF3ǺsnmB֕܀][)w vh;yRdJPByu"P@@ ~Y$a@G'ң"ACE!rBLs{˂xH?pUEz\hh!=80%HK:S`K0n'3a 渽Gæ`I#?b#iUvy}gm[NmJe(baCYfn-;mr}ita#%ye5ډT_R/C*l\B6܃ > .FñcQnPrvZyTR b鞊PIK(ٌCUgث^:j8s*"7`/D1PV~aEwJҷ0/W`C8wI#Œ I8XBLJx*O=@{8UI-S(7+PqhҕD]J=Nb- #+M+Θ Ud-EfVg &t0mtaE/[MH~N92NYK. x œjƿ .@#u ߆K\ﵗֳ*۝yfIٹ q*,<(W Bx{F"Do `aTMV:'Bb%l>Ğ{hMz^88""Cu\t2wale*jFOw팒i<=. `7Nyφz}:DVl=|E[ĎI_1ͳ.SB#AT~кʆ똎] ^6-sda}5f;x9a70 Sd330D^ Ɍ/ gp! ot#s3a4`MHz1|k dVwO ڀ iyʡ-՘+{^ŷ3f &{G MuJ\ :5 25zwA$*6EaqRO vd]z9+)Oh6'MeDN>Y[G L7c#&?>L]VQ*DTi1jc];ScTOg|j{'8Q:0 g@%%+0$W]CvdOB=7@Fڝsa p9D m@_oVBv#FSoڰ 7DF0(iR6mz)A`mL^CpRJj =cs&B_Wz1 JZ.8ϜbNP8_pL_!ʐmƃkSlqd'٩`nG/׭hF,B߀1Y 0MZЖ5h AM2q5A#cB/e T:$|~){e5<hLN"}{||/j=Z=O\(R0qA\nE`H#JQGdqhC>`Fjcj֌}"sdV"fG mt,>N}0vN9jARqXTT|62jD]7DAFM y?@@8ZG~/=K`B6b<GC*" b9sw7FO@t ta:Bq7$foj~GۈS>վ^7V@O!Psax_IrP],[<(iX$ zlCGp:YV.w8@v;[I 4ma< R5@Fttbs# 'UG%Dt17Y=UT逈lʀgVdc . ]"ƪ9=ˣn9pR.֜SF 5랈oo~ƣͯ%7X״r{-i 7Wws٣Dwx6KOWgJˊ)-oQRЄ  tȹ>ß(*Gc+̶,'iJTޙ|0a t'V4yENWX急BY4>%+4_MBGVv $ѓOO|[};!\S"$5 dT{k%~/9ΚuH0<̌k E ߂ż6>!vtT9+6IgY,!J_(Q>a;,{%9 } 9ؤ_چKڤB |r;g0\< p[aoN͑=ph0P;,tbC[p"J, 9tlzGH\]JsI(,rI)O6{^AOX2%gL$_&m"S"@=0A>ߵjfagd b7}Y0Dޡ\S5ųyr$/kPnĽ r0eՋ vb6Ǚ[Ɠ4qϪT`L|%dM\{]q_M3Kn3ۛ?D|W!TK8u<*!aZjjqwD衏RP-243zN$"6;=erRȺ^G+Q+f=fv3t^:M_JFtH:,,3K l5InV?yr q-(3V~{Wsy#xJytNz/JdPZs2nAm46|TD-B0D A$:I<҉t|H>S vK d0)i_\,\gfhd!@mz s__@wп֔y˰lb> ϒ{mMj~i[7!UarF?!1JL eleiGQUeM`p{$}[1CvJ"bޜ'R 9ē.z>UOr-e|Nm[a`2#+|=S+*[zB&髀[GjqE%u"異,Uf>3)"+,7M7~حhT|ɹsRiS{+}N׾9o:Ͷw.˿G Q90 +l^7akeåN ww VT9aߴ*BO½w ;3!nr|P~UM K'w% c6㛤M*狓t! OGB% ysDw-w9;jJm\g>gT7Ks<}&Z.2#9Em<"a||$Z]Y/u} 6^^a2<xGe?|ԯD }!h^iJMMa4tAyE#9?є= :eqزYĬ3kx#'ԙ}7*CɋWS1%@5X3I*mt駁Pݎij //CLxݧ]Ϗ+yh5[ܮ ݠ D~fncqC|/9P\c7|RlL$9eW!a%@W`F(y>~&ziq@R%ץL3|UH&g^xw/7`v<H2]~^DZl2tF77k;6\Ka iWn= ItZsȔVvK*'Xc(Nhc*``)!'!gӌV4_cHuNWAKwi{bOih QI; =11JXO`X?08@{t$zن"R9Q-u(J̯˿b`-s*hz?GbYw|a?ms-\G. &1ߢPʡD)y@|>XzB쾀 '#Z{(vÿATx@oaMa#1&V^glHS9EasA4ҎDI,Mba* uֹW)d 5Zò=0h$L)voRi1ֲ˽G'7LNSdw+z<$Ec*/#.:S|:PgHnȏY@qC14` n{{ BO^V+hZ>N.g+K4$\ԭUILyWQ_%Υ>6%m(FW`irY.I؈zY5z_Ec\_}Ҭ9i%uVx,?fat)pź| ~YDm cԘxY:01p7C:qolnƤ +5 E-&~2uF]e^TH. 1xT Nιh HsIW.3 0ĕcn4d,MyTιj>˝= ;`ɢ0T#[zp9e[L PCؑR+]@gH9hk_G/^"f:x[Į%Giӗe:᭐k[ /qG{|( ܠ1MEˍ M|Xr8dx?r'@D$JLѐٹ=- |ZMK-b(qsrv]o&4|4ED̛RV~BJB~A0A@ch<.Y7+{hkE],5k\k:NRv78]ORdM/YY>)9|&;v)&UG؄٠MmC-ֹ|Gq#qkYt VCf}_x'o!<(C|ZBe_;ٿ>b(*;p(1<>nxc&f;5 njKqR{! SذƸA>oP3gۭ d]DR 6g`Q'ܰnrȈZǣLUnlˆu#!S8P9|ۉx_G4 >7Ł.-2(E$쀙iIrfE]xg#VKZP9do2ɕ>*GK[<{ko i *qwB; R9q `hݱ _խif\D>M3[kM=?r"^: 2?;xw*(hĎLHGz0x(m }&P Jg߶W%K.&Y6$sQIvaztJق(Foա/ޚ%|tgKdzv~#0JS+X~7C5sX>U@M3OnSJ@̲1GN63j;c;5 4{pkc__݊fJi-FQIFIeS0_!Zf |rnؔ>x PIQ= #a[reWi#ƾO˩=W\_ LAS~8ϋ&z\Rlrfl$j4y/4RW-?I5 D)} _k`\5o>TM#5#z&p<ŬHSlʞ,gxE"ntbZARIeC !ᜎc*EJX1=ZMЇ_D )_d˺hPR'mTj;E',2 !n۵uBDxrYujG$h(<1I7>b.T=', ?>cc` RϒAÌm<@#|f1FLĢ=S^ߏaqm֠i;d=#g M M;w0yl*k+V(A <4w)KZؔ>g"OE87Ϯ@pLaJ<4F)9ӄfJe]g Ysf`4& cWR汴&%E!?m:Ds3|ݩ~zzW,ŕ2ێws9䷏ 3<"ll^4JH 9w8a@hf$*IeL: !|i`5Y f|UՁ1gp)Q%iD$9;Jk HeEt ׀Ӛ>jvPUr}+D 'ӥ|c;5w*3=Rf2d^'̀](SxANjY oY:iN&Ym[s^`Wh)t uSp*.ߒ.݋AA:TJ}_D,s U؇KmVIwH`>*I;J}*JRU%.V}+^-I7+GMQ۾oMcL:mnLΔFfj2j 8yӸ+&mzf/bru^90WQb_g`"0YZ5m уS:xP0K%&_wY޼Ur 1[p0JFXUKG^t6t_Fٝ9)E|)|N $:] 1}QES=h2ʧ%O(ʾal-Y| Qj]msQƈE DSnb#PJSW$SG{OQ|r 3$'xŠ-8#ns]]Dž\/{zSyƇlԭ7&1n,Ls/ԢXD0 K3:h:7̋Qa Z8 n&ជ! .^mbѼbQͧƄ {'8^ר]+.6m(dp43Z+qqM| j6_jOψ.(&K*C>a{ۤX[|`Ǥ-.H ^n'l1تig}0`pH=k#@O-K\ "Zrv#(vp.vA` 5$טQq:9%w0~[ BTc+(SU~@Da q _һ1(4 Zy(\Jsm\"emSl<x=)WAc趠!.C3f,k%oZ5V0%&YMz?csQC#\*0;zzPb=OC`cDFyK\|f0 i?i1(☧Zm =ot+#,NqCʠ7QPz4۬T-WX9U |ɚ:} v~Ar^lBfG4Г[NWaT#1ٮD.,3GBj'CNcr^Yi{})Y}0Z&PX3SVytk >gƂ}"1s okx$zRB Z+s+MP G5rbU.޲<!3NG A+NZ{gE&u/JKS=R3"#~ɗ8:Z]EsiLlm9d]GomaQ"ӊT.4nOŨ ep35=cX+UpakJAx0zd]MO/_S V}aVCfNr.op'gYĕYȹَ"pp/E>A{nmUJ@~&\]5JȊ@xtƉ)}ev:¯H= ((}MyF~mݞm{5 %Q-x:u?'+d`aBZ /}YZ@䖇Qd bسaxTlmQ@N&2/oqX"\7`ttyƲ BV#!WWs>@2#Zz*tGV,BZ. }e(gfcnh;t& q1юb-:^?P%2<'aѓ3qdSdRHҜ"b_a pfԯ)-u7VaB4){]nH3#)N;^puk6EAxK'TdcnP/T||ߥh<ܨo !36zkAUQ;M^)Y4\ 4j *L6E6c?:%\▓kZJUg9d!xb (X4r8]aN~YtfKĔ ln" ;ٞZShX%ɦL ;MFۈ4\,}wQoa^.a!F 1ow\ u ,˰V:H_gy9BPc19<]Z#ý▫/Uh%DvWeřSSiMcThQEkD8%fO א`rD;'ޠfQA,cb6gW81"L<(RBȟl ^җG<gdi~+ {9DY A $)f #gD\,JӪ (#be[pQ]c 7.Di:B1CG>=Hz,֗n˕kMhM7<\2ڡO (^ƒH-OV90=yLI%n"$ IɞG_bk7 VkꖇmW7Obd8JŧpXyB0tXĸj{? `h۔Eܮ[GFa cLXR ޲@5}"P_?#x'!(/}Jg-tO@tD%3:"|^*u)+]B VS_6oOko`/l䲴ׁRb8OUwtSc/|ƘVl:^}!HI㦀5B4c:f<8= MrAR8DC*<\[ f 4hئЅF@vT,N:eWa۸n_4rbUx}arsvgSڰ|u5ﻌwQo>` D?Wgb]{zn7>M-/9*Qʁ0Rh2h]?0w5- W-8u #s(-"myWVq60BQLh”:?aځZ6 3w4p`3ݨy"ǁiL`,n(V6{(^`DJ L.UwWI!/óH^}g=ɇާl/|+}bsp-}䧚Myx{K=(RY;ΥR+f'4܍ȜkɯOzzd8PU9^OXbΠ$?l=`&1E<͈VE>p?X9Q-f73!}w. ߞ)07 g\ARo~.v~ܡBcI>{Q_x9fyPcI@PXN(JjR=KV?e[y-]1TNlIfCYyo'E^yVp^g?ke勧sU dN,cv#7L0!\{H bts1EyV}wf܂XM;fѡwF4:?[%D# ѪI %[;΅, rWT#M:ϕ"`q* 31G{ljlt2e8)LH_HDGQӓcIY`~~7^һ5p_:eB93:a57if9֣qiϔTh{q?+̌xdl#=$#k07GUsrM'E; qtbKvkAA ƊIUwN`l-B7C.P@[:L'fJUm;B>g͆{փ|~ _7ٟ^]9: [^-]kA}O{>[Nm \"a4;MͧAY.ӝA`=A4J%ј7 V<28C ki9ȺY+n<< o#q3yd#HO rP 56A MꕮMlzQIH¶&Dڌ-HAX3 VS|H]m6mX ܄u`O5BKq|d2$KZ2J`#5JMu|z.i=Y8d+xN̳:A5rI 8_ҟK`gK oԾ4@UJlH[~wt9k#-8QG9H_GY C/.\؊Z=gqgBcLdgg5B*EH2 \1en^ Ŀ.鸈徯;ژ@d#zVo3=VKELd|G'p-]u>!96vC(G_GsKD챇ڙέdґ*D^()BMKf7S`aKD~)/gi;||ԉ *yHw߅)+ߵFm̧i,f8ۨ|ElZ,gOF'&NjbOoP7-j=ȖƩ5+ O_%3?]Pa\DۖfxwQ~"0GYI80G{Z@簠ss`؏ヂlg"b}/ vH1/-l2 nz2΋ p70@*/p2<؛~xO7NV_ԭ9‹'j8S+ j_Lו&y G^OQVZ{Kl|p' S^g٘ ^r|IT dwu*diS4$.8*%忡nM'^ {YO%ʌιe1GHD$}B߭.v#%,,] sO,AR>)~e^UetM!56R>ʴ@6)ҊG+2%(6 %Wp: [l-_kX z5WűB^}A$ -=sʁv—ǯ0К}9JI 6kŤft򥰃FV_KT͡U^ U^Ϡhj~V&ikd9 OqLlⷭN)rog2+$}ҷ)tt\c @D\PBO>snuwT15A!\SIӸz 5;莳pZmѝDm-/ o7Q +2eF 'k- &pZ4wWBK%`ͷR\:ibKgki3F۔P~t4ELCmu#ky:O$'WNGT΍#{ X"^OsǑeKaH&/!vr1 HTm2uH뛾tVpF݁ wgYitbxU4ؑdRMb~;Y֏u3cgk>77khm8[O'E- '.R#cwcYG\<mD˨J6ёԿ̚(^<˨ )ųo3CvҊ85l:W8Pu]MB좩Ȱy͇XNuߧ&4֓+#]FgqOfۙmNa##[ӆE|4SkO:?$ps[ B2hXX}QW>XU95-lfp ?Q0![3JH`&\Ck=dk꓄cOE.vLIkX}!8|4ƥb 4T"; Wg _`B~8#a  r'<ގrN4/Myqwf>s ş#z~5),%))04'EVgމ3NE徕;hz{zK\vSeYRr'\OZgPLPSS*Ƕb{I\sv$.v&f*bldG\ *]\ʏu5=kw޵ Dk#3.цYo.~ tʮ埨Z %[K6I͐Mؿ KEhdt]hy CRWxL@CZLNk+.ogBPN3H,yRKp)ۻRTb Ĝi8J 'EyNFR-qt)ұqX.$CQK $H%e\[t?gl__p ][ J#K8.PT|m*+.[#ʂ=XwRg.b*X J{ooEE8"PDJ"Ǘ)G E#sdLK uE¯љeJ[AcDJ{mTԈ[I~{boEl%jW=BAϏƃ|B+Np%5Ђͫxљ_Wg.i"t@wek5w6N|k?$B$N {VO-;, S.e?"-3r1sZruuD6@mlT.JFNثmIAT]WWuLo,vush#;w&~s$zdSd*Nb]o9fSj5p6+F\peLc*<M qAs-Da&i%Wy4?C׈\osLsh nLڗ?/0ERD:*)@l>d8Z,uW3+bG~Z:0\d;)GyjBQ% FbZ|?/fMLm aUsb5}? `YM0Vw*V\|U3 Sj$'vuE54E#]^3f#RP;^IOC ղ'Z)?e-v1B<9XmF|۰gk2'OQxge!U<\L幬vދb8D}"NǁG!ur˻xsw/6fGCTyb]֎Ow=iЕʿ?/ˢwY_J$LQkDSXNoqxiw͕Y#0žui|Sq5gDş^r8+:ejhf<ּ:%Y2JƪxKO E~@<^<ÎRAr#jGAXwW!wJQ;1=Å7 qsAU_7d.Ǣra@I>'u5|BMXPkVg b[)׌D} cXP觽olNg r[H^=a7Fɵ'KƗpp7=G%x$x8NNɁ3(,+kHҀ%c fyw^E 7>Z]1֬~t_;^+9Qyn($5GU2KQm69z)s0o*LLڦBN3|ReDy nC84QI"iu_fBhϜYxE@D>3V `O'jvj[4>sޢByBdXg&Q%A&HOڂU0auٸMTް<W#o;XOԤ]'&-=Q?:;. ~DBũ6щ_gp#upbKiջL1EBt*_c&F2o8l k_0?~oo. +3|fجZD]1 mX5ՆTJʝ H&ݍ70"I(и\d",R-ˌ9(iIÇY/VR::\D%UPA`_jZ6WltĀN5s ѭ *\Sp[kgmoLq4RF~;OzH:PΓiiMD: k5]SQ+\XaM1*~m+j_bQVǔ(㈃z4G>1 <0YgMhoJ7Ng//Law@^p=/<=esN\K(~Z\j$:څT-){=P9e Ӗ6žJ\'A$t~bW{tM"tuޖB|6o$tB,8/j熂84D/gkt\0ߗ7sa "q}vd5rvPQS8=rĐ9Bb \nл]QtjK^:@(kk\*+VN{Z_׼` r*H8z8g0e6S{=Vx^t'w,1+Ylv-i4E)X KoɠV6|2twIŇ#d|y<\o,֮Rn1KT<[{bq`,0^%Y(-Rڸ_21] 3Oyܚp#V$%/ֲ7So$3Gn*Q6BQ-Y o0bnrDpuڕ e.mX0ɒg&N=͞XhnLYݶpͻ&?s5k0e-A"-/xOk$ 9CچD'5dfC>t ))]>Sb*:t 8F'VSp+% PZMʥ"LӸ^FNLu  *y(L G!R&xNӼmE`D,ĩYQ0M/bVZh@#rT v,YD/y]1pXܶmJO@KAqbBI{6FVINǩomD múo{5"ۣ8,qwrGT!i[us7}Sq`VoE%bVd4iJޏ.d+)?궁$3q?nɎ Z#;ElWt3b ʤ Uű"5Zaɦ0[~v1T[V?Fb̷<3T҂Fw}q0՛O }E~+Uwr9fu}h9DZʊh@EGVpt?`PC]_WW? /XFfJlmOճyo:9"H%mVXT4=ʔVcr{JM8Kq?B+x*v?X{{ W`M2}݈Zx9gیۻLcu8?v UZC캨ezG kϼυEsBl & MF]mTvȞ@7 HΕ`5n~®VGTp͡;o^2CK2Yo[=0k6 4>)-Khj•M8cgcNsٛb__׀l|G6֦m>G-I\R)E FF,rLzu ɤI_pQ=jpl|B =8nz0|^AI ]]}U cn"MCz~M hrpMn֕j !8s>myXqP'-Zi99d=\PUM4CwGSDnmݩpm "L03h yE^Gޕ͖$mjJ[˘"UB+vJ oX=B&qi+0YeQM _"EH"^|˜j'~jb^_ben`qTv\ue6n^DfR*  ͡VI N.E gqbE;GTX&RS(!o z{aY(c>;?NK$*>5@(ۆvlux`T{0T (ʁ)X~\s*FBӝk fЮ3K|ѡ$X| NCG.Q~O8pxExpR{ehN]*|MS`"$`I k钑b@B="cwiL1|n A?t(Q KIxST* 5bv^5cF KoW5~XF/+yqjy~> o:v+ޒi +N<_Zѭ`N2 'Rb9fm":8]&6GHCD_yBn1:ZqL&֮mg$jop"0A%%7oeOfx/bg{hTcl܈Mwj7*\<;nL?J:}HYL0#L2H3,vRAM_SȎol3t*h"3n{֦ھ[–X'@J> +=g=^~mg\JgE)YAs-ڜMp6%U,28ziP6VxM9}YЈE]å5^yvq{+xQ6Eu>7mf$77ZD[*S}4Ҩ? wRkzIy\|ߦI-O K"|QsLû[N  oWjA _Ss. pǹt50@+2ҵ::.++cu2' %X3'4+7.a0;~>-ճKJcnc$Uv^кGs{L܈8RX d,6g6ҔjyEI#X2m$6I ?`CGnL?qLDM ߣwKL `wD -u*lШx&F|}>S\%(@x#2_2eᠻ8sCP@pS-λ!&ET,QFMiS7V3]QNAYW 䬇R[#)mzF({йp:VŒ'f|7i}]J^ONoEP,z&p%X*cB.} I1n3_ܱ}4{:Ҝg:KP3SM=س 9P.刊ڇKCfl!_S|ԓ'ga9T:j<,WifÌ>v@CCG4#;fxq9G/GPDLMMaQԁAFɏAM%VK\ |Eʊ {R(^7L{Cf$܍%uA}(++V \|/!:y0@A$SZ[Qvex{!&]e|PCbd6`'CF#- la.8 ɃA/yN亟#7l0dj">!>vW ż~$2qà>PIl PlY&NP_?l%J<6y)\q{ |v*g5|hC\>(0Huޙ~{C>*ĺi!Yp:# {,5^n;j܉{u whT|ljrs,nӠ雓rl]r9U 50G}MP ~nb6ou+O=L\υ1SKxVQPֺM[ {'B\1WYS2f )kՑ|wZ6+eaPg_AF1u^igK5dVKaK MiN;!@Jd_ŒI$LuLB \h /VƱ.yr:{}aLr}`ͿT3kmwY^6~M#AK ṅn^Mhď `/Z27:|aIulQ3у y_6fSaZW$F"8B&044fMn"`Yrm@eZ8?[{k>e]1oliU5Ҷ2j,]cC=T+zۍʿ' _p-m:@(o(&Ho)ͮǑDFF9^;_`A& [Xm}ןT4J5s6܊Oρ\3d#+l"c0.QBU\Mty7X+61^&,G+:.HnZ9 rJ`g8io$yu87:&AxN@T]X kh z\eqB2d(Ϲ zU1U&>Ư5A#uC.H۔=\aj)UUd{FEy:0aPi.܃솪-O5h<>f҇._,ԏ^ۅ xϥu{)ދ_\&^7ݘmRXKkuFiSo{Ҧ*H\"el˃llT;5MƮ=KVeoF+3PWJBۣěpt8vʇmտ S] BLJ3Bڛ|$٢ZJ /Go*u:|9d#܉ul/=VQ O(x&gՌ[O*-/ ;rd'C/]Sh7 %wpkٴV’^۪h*B^\,KPuq])}z'Mx2># &9͵M2} oGG  '[g6Ҹid ΃c]UN0g߉*D]ʗ ;p{'n5p2{5~X._ Ľ T 5gw!kԻ}Of} PDsͫȎ⒌_.;X$ *r$`y1{Ԉ|h)#,N̗!#.̳ ]ߦi0Q:i}BK` ?pr =zH\j"H|{jlni1=rIݮnkhg6C.j)pf8}Fo@Vx8wJ6d.q_<"E%y@ M\'SڳU0I{W7z ǧbJ/?{VVY|jwu6?F!ZeW25YY\|C=M 4"OYt)Z(\kTC ]VKwX4& xSG$qG E`4'%G+zZh XEDV |Uz#r#s"th](SJ;2~h >۳G܈ߌ`#@d|Z/lI!X٩ȍl'न״ڼ0>-F! NE'wfޘgDb~4"mySIYSLBt)gwe4)bjg`zhAɓJӓ/Z >-VMyF1#yƀtxyXL3g FzTnv&}oxp*$C䂈:5F!@>m֛2lN}ݠp͝Pu^\%i rt|+ikmTqNt2=j7rQ!2feCc1J˚(H 0u(o r̝uRbN =7, PM!4b,DzӐ_gu6}|R*Kn\yRILY`gKV[?Xgla<:?t?&]gl\9\>r.p1/(g3m(E_E>>QTV `%}\tWsI{yڼ`L&_} B ;zqqYHj88#zv=?&^2MSPz"ed'a%߸2,3i{8+_`JR_fe>1V `j !Qb= q]}Uf`ec}lAєh"Y΂~dn_+^X~\./nWٽFe<~nnhc#L5[N55J-~<oxp[^7.*0Ds<1_(l\GY.1n cxnz)QsFүCEA: 7wn˳d_ydžh7o z+WS.6ގ'P!xR%TK*4}P)&)YZCs`O VJ5e5`z3gDx(B[hqѩewJ?zإ7bE  amLKnZ>:;.2y  \6HWMM,*)1ku8Aßֽ;SH2l빁hm^UBm9v}01ZϲњctdаbgL&q H ܖg%yB@pr p^"ksT9&TR:L$zK4਋x;')rnU,P]&NFeMWҔ|rXyޣߊ6Xac(9#; PEɌ7Vh =|/< H,B~G,&1g%gbpS'Wu4H؅hkTzD#nW$`8_B5@@ks2|AKCV00xSw<8GYRo|V]I< |LT3)& ^ȧUxin h xU\$-lcw?4;N/W"fș k1b!^8VI?҂o"_w)Dd!F"_ j߆۩8ɠ@GBo2EH9c‰KPcj˞Jt`x q05kIBW qюP$.z~V{J`\bǯ2!ڔZwQ*R4tynABGWnL~cd]h?$KeUka&XrdžHJۖ|1f:?Z3s}LSpy]S=REyM>*CU2\j"E K^X}4(!#irx0+8IvYx,圳v$=² qZُٛ Zo7J'87ck[AG$ީJ#V_yy:Lq@2ZvD%J@I3.Tk$M,LdiDvG6``Iav;yJ~G74}5\k˩h³Ϥ_ 2hً ̢RC$9FZ;L_x8f~AD@髙w+fi$4llʐ0VqW‿aJJ˄TrS0Jdv_Rs"rex}` l,V݀v U5[<vk ǣz5nۮ}cr|u"?42u+([h/֡bXvER2 eJ-\/G,H1o{A-uPj KNlx(~O?R4iʜH*ĭR)^%w!("hK(ҩT~]tZX.tYq1KPêGS%>õD7<;7 &YNHg Ha8YBDe붞Q\!8UV))25pfn>V(4>}+/'h6wOMHJC]vk&<tʿ) zTwQ[[f<: A[^-' \`ah_fd ?;7 9!uM~oqWQpELZ[NZ|_4L8Xuou\ʐ y|dQkJ֧| dP?0+*%~eӷ-k)! pkpdRbEFQN [Q.*eBBL-UI+6llVO&w9_~P*Gxy:9otE&`SbB(,cS_KD(~z [u.||{ q2,-,KoIa%޶@A=!3 U#Ȼ>Й.MHMT3/U&2bfz dyҪE[ҋ~n/il`o- cWRrjd6$36xgq\g rsɗfd#=.C`S6^[z0qHSPbsG,ԉq0@ [~ZqyZzM7/!F״2?)Uת(U\#3wx}`CU"*_tS]k'#NOWI<ЊRR!|Fhۗ:R+F?!fd&3;A)*$8"N߄&@5T#a 7Bu,uUvs>u BώXy;f8 it u2x.qnrsG?%S`)҃H䱷b` 4KXq7[8΄T-єf:?SsjRHk8yI$w2׻MX<ކ')מ&bpH~6>wg9<3+8Ib-=XGb\N` buw'`ܔ%L0VPHUb^j6ruNº*> \dL%~JqᮋSM%C( Xo);~Ɛq㿆g:m"gYz}wKsEvO v\>wO|.7U͚mK74L)P³VXq;C"Z@GH)R+>!8h0$XWF(W0M#j|OxƮyb#[]\e"K 8tʴ sfHr^Wa1V"*ݠ*#>l(;xkKers{PB \g;}Þ)!s#\ɤp3t'vs<75tb~h>sKRpy7vyq҂X3 6~́1&"ٲ_s`(GD`7^UF2B .$jc ljg9 =FA9c)T kp{7h+G5\6 k(+ty}ȳ1 줬k'yxg,Hȿʹ܃Bŝ0FVz_u.c떏)>̺(yOHnQ·l{km}nDMg*+2I V%-HASU7drE-"t~ހTzf& ,[\(F.pV#ܐ|VF\L OL*yݺTRbBo{ Ed1I*PS{jܧ@{ AsּfB`&i"MĬCjOUt^ht-c=! 0óZƃgJ҈ǶG'+*ITvc⠂Lj9š&laZadKW-;>%='0Ea[ūOɥE@sƛǛUUm \~LkY*}p; w:9/pOJq֗L8\7J v78.Cٰ`Cbս/2nJf[yY L ,s!R~dPc4zT4ͫK %m(,=5.^&`ٓ`< G-xDxu4>=ZHq\ij@< .԰8y!^Yay&; 3xMx\[yZMՀ_o %xZ Uг:R~O>Ggr"?bKi]`rF\,*(SZ8vPO)@4&4Q($O`0 !c4b5(p.J$%nWkϊ؂1 o˨6̶ncJd2-\b,v&VywX'P|!V`]OEǡ“n04hL}^.%'qwQS*6դcj&2syB)EmilFywKYY@`dg#T 5ciNB;,eOE 2#%kA*Ƀ-[lߦ#׭ Xrvig>y^Ћ4j?:lNep,}xBid\B7\q&~͟ s BK?"A;MXd^Bc> N\FK?P::`.d]Hd8}{FjSB*(; xm "{w0ؠQel4a!iIޮm]}Ȍ6:^>Ŏ,e~] O+LadژKgXQľ]%ȑAFqMxpo.>&-hh|t\E36]=/p@+&cQwJ?:qw](XrH |i tW­^6)mT'mg Bt/u>Vd1Y~>ęδ E>S}k Qi(Rq;dC_wz+1P&ݢ|26cߥF>a;0wxau2u(s7 2 0|nY7wڕoإ66@Sl M6) {G>a["SEK d&C &w֍7T E\AcO]i֍Z>IU°Hl~q[\.lփʴ<9MTT^̾ٛQgM$i4]Qn 0\_^i֝N$ tK(qwmXx@ Xa BR袾2wk6OlNe`e֨IJ`fzd˖Js}w;K3ZM{2|n *l],=t_KB@jsu fzY^3E6bn{.yvbCh#G`![R٨=L/9HM\}EZ(65UH"p'frh`t͌*Ч'0"wvJJ/ ea~5V ʚ@?'#]4O$CXMFdŐȤa+K7jdrN]#]%BjQDlFդw] Yxb 8#q<8u 5 ͶU-&0tQcTGȷF>^d"_U┄PPXl P$(&&)eFmVq _J%0GiR|(^v˜9K$x~JLs)"%({)c #čeC>{b9p\ \SD{ LS5gU )gܡU ;:p۽hj= f[b Ntߡ6)ѯ{vd͵$zkGwNeM-g[nQtC?\O ?E^4cU9 Ь坰ՙ>>ǽ?Qd&`ʑ2Z\_I{r5gm V%a}c ԽzXӜ B'gG!#d2 G3v*ܝ;R(Beg5 lSZ)K3EeQJӭdm2S$&ݒ HߟHmˍNr Mn31o9j#Ymb&t\U:rXae> %O%d/R(߫' SgVoxnp`%[Y9 c1p;.' x*ի0P"}(bvLMDzsv+ I fvp6'*1ίMrJ`E~* 7|Y2/Tw_Sg %_ @p>(z#!]%{G?Rrmc ڡQTBOF;[6ʈ={Y@;X\߆מZAv"/ `}-Gf_|WUՍYwH30r0 (N6o1 WxXڲ[NZY(.jLjZϹaXx\ $mK[w[ߝ Y8-!_k>xNS S51oy4Es"G=O75o5*bok12l9Қu3NIJ&@R?@+8@,q-WU> Gxb2M^∻y)עX@5|uy$;g 5] =hɭy4 uen%)KeRtqf(1w;N4~ WU{66sj__>tђFj{T;XwP,s*-:)&W"^.'[47Hӧ ۊ5qd6-9b $*^3/1nZnBnk#;|{3ROt-l2)aAH4??ҞuN4X(I6nα B* 'y)|[s.Z"ﺐp@qΘv\2 gއ${K{Wt iG&'}zJ oBnV]$ؿ LzꞕgESm<(DBkO16ꘋ>LUĄ4-Ќ#Gi`9!π+; \flZ$BIF#AESZ5["4ldTRb)/*ЌL˷Rݎψe$m~l V:bѺR;&JHV,n=o֠lCiv|;+ƯwQn ?זuŚc׉H2Γ& rKY,BCQ_ m.'V2qɬCАԿ.h*P#qu2n̨*|V0g:Vf{5Yetv3)6h3;+u2'q0OOAOJi@a?L brle:)ew莊2/Z(`9{V漴܀3ͻQsb.Xd">5M]>nCy;oF2/4_ss (Gtg`%5Ep0gc=jY$M+A(ᲗgF#YUQQ vJ4h*~,$$F엊s̡YGo߅ /}\] '5gD‘GFaíq-L $7-n*Y[ 3d|yҟ.FdZ~bŜ2YԀd3lH]͏nwf"X6( &S0f+cHn1Lr]F).r5Ր0S6}ӣڐ@ evͲ_rk p![㏻F$G b4Έ~b0R0~|U'M9q! E~3Ш%H1hݘ1_<^om0y-ɴ$o\FsuISH A @|n|x Deu',@K1'd0WpꬑuPdtfKH^gXDH?ɹC{I)AG7e 1t ?|MM2⠵.JrK4:)'ogYFn#JѼd`4eDWbW_1}6$SCV;3A&w⡻#42G:{fBKw8q91L"yrvZ@gy-PT)R-tXhVSBW@ “<߲ JKǽJhqa]g&[A`$5tZ n&.l":h \qKUPE7&.rp>("RVoTn~!-<-G8 iBtpHbu:J`3--Т42|hJv-,\ 㜜G69l'<`{4Re𛴘>0_JLj5dE>ED499LX{=oKi63-"Mu5X$TA_N ˥*b 8dEfͤlV\NI$V]d^oj7E7OR˰EaHHTbpvB!ࢾ{ W(<0zcㅏ m#CqeYA/1g@1lΥ -_.HR4!ijI|__)hyKqq]!*2}qW+K}8ЩfܼfqO47@" p^Њ8@acf=O$<>)=~810 @sLJě#:eumD:sT9YԈa' +EgPm )W4~_T%M'Xfsw]Qk_pǎ ^Qvѥ;uPޖa{|{L8@+COta97 F *=eD4X9J@#*xM,FAB ܺ{Rn=g?E6~أk0&-}&ЬyRɫ3 *vJM {t5>|H0ntt#[1 0`K ek9~x TS,<7&L)I#b]x;\v_.7A#Qj#H^)jpm١04? _ئ%J ٍЪP&q9EtMB ͒8;~nQ*`s2va*9AoU{\bR-Gq`2 +J $<6i3v͎W+ȉlV){.y_;^`gD2;E[&Xu ͮՐdگ8V+L2r@ݠa'@W>uйL>jVž x~lYx"dd?vc<&[d-Gxl]#T- v!r.73 2?&+$Dw.Mi7iGU,bf^h^zow..2Nقri@->`O'XmÇ T1Si+;(Kg <%n(x%1뗐n+:XlzdS]%Bc4/ _XSD rJ ygF rjl}ܿ$'I"ZUaA3}cm՜ӐLQ ɼ*9^ҲA)"UXqI^@\c53)jo}hQ["MAARyFRsH?G@}Oˆ朠 Ѯ2?,޴rZ5 vŎ`\DV|C#g5d)۔/mnK>#1G3S؍!Q($xX<Uʤo n@Cr.Yb J ZKV: D&LՂZ:ԑuObbZ|lh|Npn Gaj;>:"E̹cٹҙ׈켫p%Q,~(|dOkNI#Vԏު(Re=;jiP8|yI/0_l3XPt]8.y_ACi3@bBe%)%.LZC"()+j0- !iW=tk$$I%`,SI_,i*U=% VM2tp*]QK;\0Wv|=fau>dE$g S: Yں'VŠޔYfbd R놝En㋯ٗvy|Pg݁W,Z/;[M`Gu AUXv69j})O\=9̢}MTk9KGa8 L@Y>8yIKO_CDrI  6=v]43ݸ JA0#,ݎS^:}TMx'-%Ҳ0jNYl"lZwg72>g-^h<:w6w#&lPs l|k8 d0?8?#UY"wnq "t2ĺ#}iw t @J8j~B$-DH!`b|pS*~!lo@' N*x ̩pW@I !v=VH1Du։À|RYҨ,XT_ {/ ~Μ qD~AFc1,2My'/"^SH7!l~u'W_2P0tpֹO*d`1Kw-Qe7-`f*ck7х6'r-`G.hB%_L|X?mɐȍ=vgRKCMp Tjx%N+/|hy N0LTD'4ԧ]?o޶,… nͪ߾j0/ #>=0([n/[DtҸlv/ꩲQID*Pҽʄ[` sXN=͢o/^ 5G1<~5u1]H]>k9ŁJfmvnKGv q++oxzR0U "MtGF]uc]u V.>gWfNR@ъ$u{'ܩ:Lm$Z5S /B?p.]]HfA3]h#= q7pAoq8PeMrѝ]D`u^Nрw}r ҿw@Xc L,p_st;Yݭ 9ݽ́dR@;rlbe@p?Z]/J &QtyҥsWצS+ְ58awի;f;)C~E߭wQh%z۸f{Zo)xld*_3AI3g NRw;XűYzzA[hKp1A[SC9b_ qZ7ɔF:hDDJ44*~vWV4L5sl@)W/m~Z:g "-<8ڼ2 D!j)=/UjXlJ;_:$ы]!='78y}6JDe/ޓ-y3D;=? c0%Qv=9 J9*Fcn)ƮdhWUR=a//x)4!)Dp(`Ug$`42vo Abߊry5U":ŠR6eV0z{Y@Ţy025{6uQ"a2!ISz/UHĸv̸6:B\"GS:ݦjrYi"㍻#|x&* M鍸`ؿJ<VIsBص)EYG}J-KJ *(Cv\ 7S䛧0MZ^V`g#{yla.ktZ1W2?A79+)'Ńu*ҦlMt=}lQ+oM/4dj ܕfJ\mWU*TgUGAIe)% b.%SF22T-/[0cl*yQ2K $r"<^ņU]lX+?slt^3ݨ ='xufI\EZ>0ީ$&'@XhDQπZt&5РҢWL+>9V|"q> @ؙ/N2yƪwMYU6"/'>[Lk2/ékSOH 捾(]NK˗9x26k4t Fz@Ǩ!.υvE%+jC.[2H7 0l|JZ K?AI.A̐vbp[`wպq狮k!}ա)@ PXﯜSȘ"`b( j-P ۖo[[0@jC{>ТL#Wu!i*ep3o!RSIOaR49xLS"f`5 w!xg:J4^DCūXaY̪&OFS9n5EWOUZ;EC1z&WUu{qx{m7IƉ(_aԢa{I, 7`AnݪVo~&>|jW m\YwV"]ptd7tIvej9YcbľE2C6$qsL T[ee@IƻXwu{=]0מ{7ij'3p`n^`:lmɫ6xs߯"+9CnzV(tHLcU3 6LV^\3fnLx T|&$}nШ̞"uqL جry?C1m67``:mr؃翭dra#;W7>frI 0 # l>HH{x.(6~%$\.އ10i'edz<+s1b6%~p(WXOTl Z^L U*6L'=cYo*v.3Zp#57˩s xt\]T^4[W2`W%h![-һ/ˌK^s^>J8Ac:&}38WWG(*PXhA7'`g\_K=cNof_d+ [ZFT1[}BNMagijpYHG p,%w eaŒ6CA~qW;%E NJҳM@RVXCch>=-~ޕMSLܲ>`fzTӞ^\װqIvu~AA@3% ށI'P2f_y]u*W]NI#MhW{a OOAC p'duy񢞤knm"d|+r|XaO?/}zz,m鏦^d("H [^RRc@W$_F{W>'tXfs^%X'p<Lp2&XlI~۸$ء5PB FC™NGD\sA/5?.ce>AUdn+/4P /J-}_&ɀok JA֫ȁ Ǵv[NC^NݾQ="I\TzIt6" PI2:ijGoM(XZv G<07W:U;[L0,c{јKzlel YW Ѯ:H̿ oԠ.wYI&Zz)s~(0p5UrOsj<_呾S3f]*ơ7>7]L$U[Ɉau?bT(mFϩŇ^TTZ+"41=G"_7IcŦfc ނLmT&r6+8H8{`^~ ML$kU8\ݣ!m5ėIq9{ |?,jdKND(K|Hsǚ\THI%87{5j_:8%FmD=jϕ\v)DЏ+"MWRw=phzS*eԉFc%R"xfծiene߂a*z"Ϭ1C VawHaEvG ]x#hk(AbByoݼ*ۉ%vToQy2"8&'pEM1 F([}ATA@Eځ<0/~f-[]+Ҧ&_h<[!*i 7TS2F71{ eeX?3X Kh cS=ȹ5|+xΉ%OxNrc>4X;d՞F_~"CO υIR/lyuؠm)k|p KE}ŷ۲]?aQcPH!#_:o#j_b_بhu8\KêM m-NY~YvڅXIĝM@٬ H+|`$Dα~aߵH[Y({rWx7]!jJs "iSIdsfT2ZkAR.bxxJbk@lɮj?ReI1Cyvy{ˀCLSW7L])SRKm|h '`]i <,Qi^ض˱`v#rIpqjH K}[ @bZh> .wEⳳ`΂ӋOHvz{z(GB1A0@b\S&ɃoSaӺU7tN qYwE=83s5ps—#!A<-d%R[4g#jNFb~{S -5˦hYF CDsY:VW 4xWBWg3uSE hSE 5s\Oeup1Ey78-CLTCj M2E(Z <9Nz˼Gu@ㆁ~:DbO.݈ !H-&g4ܠKNA Bg~Cӓ.׶ӥc.az@׬ L46q[<0T`Zk֎Ev`?qKo[Vɲ?;ԢFa)TT)>yIx (tXa F"704W˟3L$"g2ԓrL^Z=uoijErx6>7 qdג~{ D\vaR89I\eJFΝ@Q_R#y6{m,^vvJAbEy |4:Űdg%"Mo@,$v1(p2[mF̣0LjαLzkB6PH|ck$#_6 y<f=SUmx |VMr5M&qu$p50q= 4*N:R SXQ XedͱJyz<@L:,l3*ĮT$@_h#u2 AŕLq{1)f`Ń߱ ={B:ՠ o;6ݕIp)Su WZÓŚ(}fDu@MsR'cy\GM";ɿ901^AJ7̛24/8->;Z"MaLn׻x҃V,:}-F{fDM )9>(HOQ ŠΨ]wj ^ et%!fzo03>BHeVŲӀ螘D3s ˠ-$tQѐ'IJA%+)_// )`{~r[OT~PYg[J<f#օS~$$60-('D]8Kvkv5eHtGK̯=W*lm P%*5ʿ|]LsIIUn~[/792RfS"]%` ¬'Lmy ac !Gb|$+zf#q5<܋O@ˇ  $@~a|y`']Ʋ:dEmu[g7o;2r/ڞxuz/Bnvp@2_ohOԧͱ31PeK5"JƧouq5ePW 5eȜe4%7lkwmO)6Lotٶ82?J2κ!~QnY\;}śy+,*#8 eN JJ_f tM57q.@עԅR >++p Yܐ)J* [TF ;HwUXbJcxyc3ii0tA C[ ;-07{*P)481[U3/(fm¯׊AF9="! (Il{%_IFdFeTmRG/ۖrN cM aHPԧ ʩ4R f,Co*qQٔ(Nя;$u} zLrUacj$1D8&\kQ0 = Qƒ9GTB3"C1tV=eGCX*pLَ]v@[8?^CLRcڏ B??́Jy!qA LMnG#@:]-y鹺qIBU1IvD@(xsXji>>6S\Ya?F[󩤈O-kj ?~QI1s6M\8 W'{%ekCDj Ml>Wܜ_&Œ1!'@zKV!lL’Vf߿ ڻRlw$ tCWm5Dz,8tJ.~ B^t[CzjsHDkgM׸b?nIf{ٞ`y)7,ڛ3w7ޥ%,Y.@asG&2݇V6aWtV`*H<%y@i>"N*F@X5}q{SZvnKMlr5]SH=T ac? FSOhYV$ZeS{%PTS/9 J5hOrS`,EG//F=`T-B$u[$GWRD8edA#U"qjkƓ)ߢ`^q53qPFUB1*KL"L 7 |޵7@ff1Ks4g*7.jX HImh}7{GS-,RЏ^vZq0Lr_> t!l(Y &E$j(KLјfyƌ%z,*z(ȝrJH=So$M\VzٖS}+yz%N^_P\ \MH' LߔN*+b=AJ(rYᏊe񛦑⧊$ ,v Y[6$ÇEMxH#.wbNgd{.=X5pR8]'0X4ԋ{Mw$v*WHb]mؕvfz[zY~zCvaX~|cC?=%)O n}&ؑvjql&_^ĉ˷>,cG4t7sQ IOzr.kDt&x&T9 (Pj(@ xS`7utW*">Ϫ@SoV|Iڶ\lh3!mSK-np(w"Vr_W?PT%ʡ~ES!rJih Ocd H@Bʣ :AL'T#y鋼쾠P>ު|}7ELWB,p煦5ns86k0 ڶҏLA+ˤsG@F'C<+'ccsdVX?2%j;9Fo>yE ޏp:1JH5QҊ?;$qo O\쬄 ҈.SL]s-|~. ꕋȔV/Z[iH!.XR.nVlT(b $M`SbKmtQԂ zB s'E?ϼs JU$oo\deo^賤 X|m2[-mN!=Oc57!]ȴ3d&rtwvtsyz!ƒlyV9y6R2{ꋃCҶϘCث/rJq;icOvՋQ0Jމ*]mdJBt> %7ӳd&YO'|FwgeUa#S *uh_d^T`B:1pzYkErlNrJ[M.^ė3ۦ {R_LʒL|78} k ؍P4c} (72<'ZqR|Xwd ktib-M!t-!>R X,ˍ2qt^Kv }i)@+"!0'U+y,2Ȱu %-x 1۟R5n 'VgeGg6鿣B$/҇ >LʭY  3$:̪P?yZuҰ”U7H4ߩf̂v+56ߢl}n2(AhH-Rg2& u3';;a@hn$ѯf~hUk8T1"Z4yCإ3%#ֱMv<&\IKԉIt`̂wTfn ľ]$+Nfc-l+][ncR"(q\ " E%&*$hRu\;dZ5ӽpz؅‡ƅfBaAQGgw\۷GDFbv "{?|^ö|) .!Of rnZg?鳡{)2rJ#9fL/R[!R,TEgn fZMm"rrg8BRv.8$~2*faؠ҈Vnij/IUxSz-V7]Cmo%Ce+`3 Bk K<9iŝxT.ʚyv>ֻmOpP+7&+szfs֚eqIdXDgtۘ`1oR C-NbO 7LMG| ST|jbEE-3F6v.. SMTؽn(ݔ7;q_i1gzO 5|?< "EӸC +S2{`h'M`.<0 "?HF}ԕ7z26E({X_'"E筘F*qݷ+|Y˟ʸr6 kl~"5x)[Y'g*}l޹Y%yuA六A_>xdr YϢ,KAВ q%X̠5K5DrUA+wSk ɱaBx 3zy[&_^8}e ۛUH*Fr̒d<+K=ZB6^YAQP,^$5C/2!eU!h%Hon db:VB{5VkY[ړf>,  TgEFZ'{} . -16AXsB*[A,5CqZ@ГzsJOF hsg8u,ѫ4k@Yg.|,v^zX鯣W*p /g!.|B6p#ЧP.n{ {i_35+ܴ+uXU^IS32gU BI 4D˳(fLkz '2x 40Dp7d@8r=XsKDXAX|PLd&,s_56<D ٍ+蛸qЍHw?WVtd<rm}AGNԆ 2J٫lL1b3X Lf(F&]$Ĩb}SjjbզnO\Y 6s$2&CNz+u=|`inmSLmXψ>l#m9RÌ&%vQ*2Gߛ(0C 'GL , <[]**}2^Xp!@훹Aɫ/l Ol9@HdIN~sG6ʼniV;zDIZIB'שԮX^[#I̧  e6Cf=~rw֐9JԐݲo) ߛ>h#R3A:X\FXUo8]+PE^xlZStKzE&~Q7c~ >bLjS'LK)Pr>˒&י-~\j/rgP%J函V[Ȋmm\jnQbavҥ,,R4.^b-қ6j|v{Y5 wU HH}r<–S͎\f6^s``Ʊ'lPC*`p,3T2@:p ~p);L_R9WqstV#{DOZsz0ffJLʕQCpm]\Ə۬%\UvN)V #_܈"`Uai^CڊYhHjB#*HB"耕ѫ@mM镒\Yq=J$Vg<5̫t|)4t] #Re~0)xnKt Ƀf='3 Cb$4+0R/mgtG i'!XX[ԓ$pώLIN0RbgUiF{Vin..Cx1(Q kE3;pœ\ ν/EYE厭"`C 0 kjV1b:IhN_Rq ًRGUdu'bCv5ZpL#: Cf'}DŽ)9_"'Dly/0M eKbn=5Rۦ( WuWV")"$wV0?03PQ懛cQ%|@f;H[ܜE]FF6$l;ӎ%נX l0,8lE)7 2Ӓ=Xi Aخ49*;mwNJh;h;x u݃KB3Wڡ)6O6\:"N.l'&`Lt>ĩ H.PӒ]bu}pt`uz1kbF\ u7(Jpx/0(W]"ٿ}D3C IZF>@IV@TZklV ōhg">l)z{cI c_U% {Uj{0AV`3MG:҅}f.uƈ=o p!7kr'K8 .V/#hŽ !&P\"z# n_ DfZ׺ۅ%Ai5n ^Q`c(eZJpzDlp,0uO  hbV0xgbt7˝8aK]i=>;0K:~)P76ۙ"SjE 36RLxK*W|{N41ɐ$Y-.A\в~&3G&e*cܳbK=aSU$OohM,Z'ymu)Yu2>D 3%ĤD$cz!j;"c&YJE2pRz"V"m]0iUd=TJ [1^甖dD]_0(Ţi2\7b !0MH8w+$ci}0y{nW` E0Aͬ9^-Bx KeP(7FeͺBYIKt_nC #9q~KU!2qbT6`>WzjdYx i_5 \ zk!;Y3iXsR~el<NADV3'3^XEJѷ͎'>e! Lm'F'x0a s ,oef/M9AED]Xk9S篧j,)'; 0͐ue'x p_`#w;+dz\DmYg]3z%Ȉ@pC% 6KG`ѽM^)WC '/냾u~BUMKZ-'J`)Cbkգ1[ ҵ3|T''|j]K't:mt;fokK$sƑ2=yԾ# # ́ށL!>=uCĽo#lR#yC's7q||s(48m?UE|( ␆+$A#*#wNwh#ȹ<>ئ%+_L6[n| nl[Z`-%(/GR[{ᤞ*N*J`bNx3@D="R:Cԍ۵蕊Vѧl 7yWץA"aY/I`q=ya Ԣ( ^ǰt y eIs!"<7Pyg[cҔ[ !j)\]^ʥdX%1Ɲңǂ3wRp\.2D0b{O,̓ |O[@t2꺔UN٨lG3PC;FA!y/aO9=N{/;v;1*4]e)By  :( < .n ]K5N?[B,5!ןY|oNxVDV$!Bb'cBuc7L~Q(!"= (`~zXjhe vK@ ]ߵP|UD_wVs[ל'sYwAq>f${ͿR\p B3~Ṱ)n-oxdgx3I#G#Bħq+zh$+TI ^|-\ 40pȤW$HMNcԨ-D)$ =v‡i՘vB # 5]=wЙBvآh"SқHIkfjőz8\PZQ&sv4-`\&PpTzaj.(NkF0얽[DTUdӼ# 4 8 !XZ sw?@K TeT-Tdz+1)% ~ uX'Ͳ#\8HWP3"ī?)wMb[9];EƸx6;TX]I=9g55BdL5?۵ں|]X6sA{88}ʐb^+4|ts3{ w5X/ }Twn,݃*|>q%wZ.V6 V XC?c"EZWhIZ܋ҴZ'f ܌S0 hef8ƭZ,Xshyby j~Ӷs~,w?QT5q5<÷0#rSVfKM7)]o].GS\y 3$#V~#=lUU<'@CC7Đq$XlbSW 'IfP@7+Pђ˸atmY9[ =ip d*aqEQ0&A]3+rQg)I:1z:-bg?uKtȠ]uB\ɦ sR[M9\z;WɅg(P IƻKgt`ֲ5NĴ| "\'6`4fpZv u&]y @[!)+=Or2%9ŢD'G:&r"6ڔ z,(+6H6}}EF7!Y<xy؉,Q.g72)7WNmavJ]\k|F&fu+|zcisbHn6@;krW~gdV\, '(*̼e( !UJ5[uJH`E&{ޤ0_]KM@8.NPJp4:>cG6+[Dq17kCz`"Um<1SEm7/!O;W{RIcO`g6OFisK!$tӶyAXu`Hd}6N˩vd*9_9K,k5(m)v\f. 78PBDLEqF_O , u yVQr[i?9^w1K;7|`!oLw{#|`!-I4G}ed,\Q8ꋵT`J3OϑuN=ƊFʾ@l^qfw͗HD5P:Dg[ƻE  oi i۴ܴeۺf} )#Oa|Џ$d \E HBX}ńvÔȫ54P/-*bA"8AF]elÄl^ aq/Kq>??wZX=TV{b4 R<(_1uz9 71nM!'pXB'r FqlLգ(J]5PXQ6 U'!oݺzBR @Ez#.BN >\6·4p6y CtP9w 3lbJ36{"tPX^vT8+Yo ~(Ždɼp. Kfwdit%/u'0JxNO`6_nJ-aKnS_ B$v؍ǷqřmC @=KT Kg#P$v]Ubr2eghHKkA!e7dI05Z<>~ڮ Ñ OM=ִE4/#Kiƚ烙=)s~'[Ţo(oͲ|h>wyN _{ކ]rKs" toje<%L9dϿ) 鎓^+Xq =y0O+ PBh(b\ NLX܀ȦOҭES) _K=Kub5e5m` Ms_]5F z7\z:ݖƇG%P- fX* kcEʶ, @,?Wj'VIPP]_SnWmPs|FȘ%@YKF U 7i{/&c{X?E[_/!J+hICƋCr1[N=->#|1$a{GCgk'a1-tKh ۑנVU +TJJ~/K$Aa0.&hr=ɇ蓳8v:jFd,ej0fmv^ &0.UR>'ƃhu~"Re^?L#gXAaªTA ,4tƍ蒇 V1v9+I&`NTS>̖4:4w@vi7joB~kʌlf!|Á,9Yr9 eG0Jm5gT&sTh+sd:5fK:#Y;<֧J?a}𝕜%j&+u3i~-~;9MsZ^wUVA V8 Z|[a5à{†Rzu[ ) frʇbaϿ֤ջk)E֒$8AhiR"cs"D35Tk\nI0(p2*!vA 6򂇩60dr޺g:l&-jN$P1pVs:)`f jۧJ܎IwI>XLIIxncexĭn ZbDN0AVqU`q{h 9d ^s <%+ XOW.KsB5:O@J1d]E)%׫ЉJ)2]Ț[f iVߛbiH9"\NЇr'ĝmfrOk< ː󲙵S$H`CfBj:1MYxB%{}i"볳CkᢛhpVi9m?='Eݍi4N#/T F0;^t9fJMrjrИڟަbhp@v4ȸPVd.O~ܺH`AۄZp58)oO̦=Xu[,(j@94ݮ;:n*nV$yc!aJ 3Tg C>8teUr뭦즢1aK-U46]'NjU`Z% I(TܵPzt{SCD_h zZN.[,mXv'a d~d\L,KA1Hc V"J*-4)$h|s񊃖+BP!f4y5n:[e D0`.ׄ8y ;otf${,1ZZ\ήQ RBB}Dʈt,z\0kDםwDѰ6;3)9_+8 *xw  Å0MPjQ\&>qSh/{iC$eˊ3\8!IoO1!/-Pۮ E@BM-vcr7RfqwF.#1l0%Ԙ9Q!󝺘N7_I:k1^6qv16B'^L/ЩlTa ] Bu[@QhלrF d&'$ )΍Q.;#ݽɨ %j&E.)Y$kx2V;_vPq]" wpD3AECt# ؜&^.1ܺZ6c~N`ǔwXV`W\Б]x@O.+;leuېI375~:_c1wAn쎞>)0vm&aolWV Fh4 v>Aa[oub(Ow^fPq$m}>q 0wW uTM h EkxJ|Ls%sqg_%//!~{?6}#ˉ<o%7隵Ō$mDw d)%M?^s~eYg/VbV'i|!nmCu 4'=5~1G7;5H*vԲǛQ[|Al)FPUG ՚c-]tə Z(ͬ}gz4L9dJE8Ȗ$ZT$lX iŃ{ewR?kvq )tee'*5$CFr8Ӆ"Zob+C exYs;ee܋)FlFۥFR{TH|SI d*OE/:@F%n=ף+?s,aH룯w.fr}MQ žayٛB:T9w5e,gjo< B A!w#K3dRr0.:lgeݙ_d| (q'aoJoɲcDM, {Xp]t +2,d,d|Q)(G+UĹм1X2wȁRٮ6e'n;6 " 1)"i3k#Q0gzv9ݢ+b XqԪ%دVɖXg~? ]J]*sDݒaW:[s}%cTQ`Qrǀ#<CW[d<r_[A "tl{_Bg=V{y~LtwY>MmGO.O#pUk3xBQk7γ| Y&o]DEsٙr8 Sޓ랞qǍt{_GPQ9@hlw2\Dg ̵_kHSF[TI1X }ƟAmGSR!gPHmp. 0Hn,t-h#s& :/g}?G~p>A(ـ)9uQ|RwPqc H|\зR?)fLo-\π_M>TA8\EBV߆ԇ(ULu70cLpRt|:%/Z v274Sr5!}}a .KRPgZ?G:+7][} չmS kl28+~Į RQ=$*֛6^Aגυ#tȩ l!L-Cf&SۋUnQZ;5#N LJf(gG@ݤzv[%>2KN9qcap֐ J^`Y]0 1)#U9iBe)( v:0ΗAڮ(Oc|̧5:UcGˀL"]LaGUC} &^p$9 u| ga\qʼnn¯(o> :VokQ}jyۺu`8TUG9Κv+P~ ({uiLW7#MT8/%5t?X,C0,HbBLXݓ2J\$^ɥ.a\Ϊ-R,BԖC;$*<{=>FK`ib@cl3g׫mI^iOjF3UQdf8CI_71;qmҔ"QR@,p%UV[[xF>`D <Ř9Y@(]T,"If@PG0nyF$ݵn8߮ ?!a}4;ZiҠQV 䰆\wqԫ6[ɓh>H1+CzOq֨(f:!rrL dWi]g;ͭYC;.:u]6҉By?m?nD(4i-ˡt~-hLV> (<^O|E TE\`ퟃf^4$]l!w6ZTXP0#!\ f9H&nG_G'T6%YN9 *LL*MiL,T4\ʲ9nZ韾IZ՛_͋uBH.z!rWR^}(/I\..a$6N80:,z׎Rc]zxLM:*iOj;B嫽sדp$ P?F|2/rf6~ul|%D86\$֭߭1O_LQ\y&_ʻSf5"ϛӮL.e0[v&dH5}KCXv#ph M-/6/7O;gGXS, mS ʝ3iĚ \zw )|kI #ZήZ %/ ̘?֘1BѪ7 0҂ި`,hWRDJ 1 0svl`} 4xLG ";-d.  zWibfpx vlJ^سF{jz0쁆"xBH=U2W#O0*8Eh9ymgi<|9Ƙ+Xe% 4XnZp0~8fM}q*RM730e;2)^!6xT$ז"~Ȼ푘$_^sZ V\B1B7߰c)ڏxWB-ؑF'fBn3\UdAD~5(QٍϽ3 S-E-hTu$ߗh,)'n_QJO^9/ Wƨl7c"i.`eN0-qB@~} Y' (BK<l._qD5vX \+N:JRgJ{x!D-3꙱m༭#Ab}!& 4UiڭvM]m=KtBSI8/!'ijS(| 9s~.鞿gN LTK2;,IpմݵukW+y|DSh1>R]ɯ"y{ =BqAz[y` V6%&-AA&9EP#IH[e 'mukKn}Oli.izɍ8)ςt|kpR Ny# 瞹s j}s[V Yih{_4N`OhsUhG2U?˱dOdGiT {EHe 9+ j[,euAsCW/ ܃DWٶH0+4F=TFGbLn@c"gK/|)A${sjFE|}$m3'59ಏ6]:%7V1ƪS<[4r_i'm6*I_;r_t PYqJ,qOhv6ͬj華 q 5{^a:I@B$h(d.DpPZWОn]zĦV@kz޵4%F? N1E Fyϟ%gֿBSZ}J[#9؂賆w~YmW|WSj,17xF>NJbֻvp]/IQ{E`Ե{ĶuN99sŜ6\q1S3XJ8d^mA üy6~7eFpCR6 =ROyGŎF ,v50/:ƮJ)OĔsA9$֛$Nf I(8*DU?Td _@#bBǓѳ"JJ̚b]NxiaC ~,3T$^z}[11^HF\d\rNO|~EMe,~}:8)O~*:q7cm ތmd,f%B6җW* r-dݑ`]^gNlA᭎%͒R>6K2),3]#=#n:F,,V# YÚF_(X^KuDL!aZY9»šf]ce)1f!/S! >h(h/yPnuIz~R?$c&eWPWq Z"1-j @& %c,h <"쟀-=>S-P~/Qj& -/^픦67FeF@ 9X|V_C"șԜiӿ PCXu}DYjļddqoOj,fFP)DWWYŝ@:ue|=p"~`kN'oեZӊNAEe`Y.&$VpX݄U6e2{^~'fv0?!ޥrtFQse}O0u8^CpH˘}m 1wG$>¯݉KThg'р܋(a; o7&8颔JYЏC~ZU>,wf E u wfRZiE0 \ڑ5Ddⷊ;oRjg pt] sѲ̠@~Iߗ8YVZ===k'VUn<$N`[Ur$$LBJ5.4ۮCج _/9+^đN:wG(H9e!ۣS\qO_e;5VKKn !kZu ^ƣEBeÿ]:=^SsGݯ_1~WEl^4eX<=_ AG?/g㭲9Бah8E(@n3O T| Q^1 x7 37cy4Ժ7#Dq2IZ?+藉b:j?->v$7tH|8X+ٖZjH7jjSdr7%Emh[(E PE2 JtѢ0%!Ҟsq Lg `4=^:I1./& nFO%v:4ڡ'4 LN[?4V7_ WڐUwL(lռ,͵_ɗUL]TZ nO:Mwɬqo{oG7`|IVY]j˾"Ҍ-λbM,:UDL"$ c턾yJ =Qc>]I*4ڑ0R:H=_VI*g!]W^wᴅw,V)Rk/5zqᅉ댝1+g /< 8%uR>E?:9Ɵ,; G׬6^/-q5tތ?b%W,RI vȓK"KU^2qP올OBx#AbYUp!H,ĺЋ" ,Aj)LybA4!ns*lT75 革V"GbA~EͰ5מ y s_ T|k NpOTʼn6'`#dM6N$`p<=hu;NKc9NʭRT'mns]*xmN 7a(HPcdѕW]B >UH2UT䯸;‹a]N~M!3 79co5: *AӲ2~2B|=G B(i2Oc<5kBʾ{ .F8YGհ)D!S dc~7lU߾+ҙnv5bG=k>p $ [ Je;BEÍ̢g:9gmX V_z6}&ŹoE}P6 OE/Z$sÊ6}~|ia"1%bD$6к$o)/Q XSZppX8Qt(r֕ pF*A@hE+E KE,c.wwNOp: Lr5' a`ቐU8--Xk V ":1)7GUs΄,.@-z{'ܹ8XF+"ohV; fsTUÛ"|~7K+d~]N<8Y"3:RWPW?u)ٻ|)rcT1+Nv Ba2Wm+^p/BWH~3Xcѭ$f(H.$+L+8̿q/@3l6`yӄT+ >ʱ0Ϋ9zHW%_6<#*VycIS)">'T#vYҽPP{]eJݴ$!?kq.blrģ#AQgZqfM%7*YPgRO6BB{Ui9a` q3~Sb"w0rݕi/;r& Y2a|0̐F~@SG8Ns5wKrZN T XFgKJrf 'msljXshuN2ē$ZKޙ1>vYޅrOnZ_~eq/,@H3.x" rn80 SIvV>![ E XwnwRĽ—lp KF?md*KSl wX%e[73W Zvv*ֲ{YS]dejX۰;Q)Huj6wMA9%E5 4O`(YC36~Ozf7`B5hBKn8 'Y0\Wy#594Ic3m bkG 2b42ș)q$w٩"9*ZvJqqE8Femd(o=&b ֖}t{+oT߆'Y8xGwE+T텚wuKVO݂5f&>qqaۧ;9延6g_Otͤm>{5t1 X e}Vvw<*9?GwCJ& ^^"IߗʚeQS֢jjӾ  9^f>1 (s'ALV~| #W]K[wɰLnKiC 2}Q6A0GJ|bg>[s,V.C)Nl4lC#x1'ׂWhO˘ ݏ&N3"C[v5CU"tޏ3q䕦ͪlJ0ep qP >$ڤN>d mr0RfYE0 k{1"c@6/2*: >p횳x5-Fy]Z4*w_ْΗД5v( :&m`"%:سuհDV3a\7W֩Aر: aR kun>S>)#ubЁu e 0U3V!r8ӉHՉ)ChxemY8mԽM*["<8g&vklo[Q,h8‰:ҟfK*_/n4j"K| -!Upeni9U`.'dw#fchİI29.z51U4?44_̓%{qsX.8$|JhliEUpLA08%$`+O/wAG0/n.1k9X)Hs;ƊĽCBbIχ!UE| ĉ?*q;ίW`ߧ|N/vs~@h4!yTIԃ㇀Fr}"~c/ZMx"y9KqbFv5jl 3ձa2&/w+5)T$ ۩Ejb5 cUD15kN2o2~l"LKKث,`iVniViB㮎˂rbyND壳jٺ:JRjN e]LCqc( G.smZ6=]bi]NypXaYdP0@1bJ7/T ssķ/*9.wV܎TOn4iqTִ/ВpxVY_]1w,*N[Hrv0.a/ Z P=3=  ߨ/īIb]SPԖ3l=>]/:Ǐ.אϐoscD a{ H8]<73Fp8 t EMnxb={\>HסX0-LkLm'T[^If:J^;xA"ޛrtEWObF/8[LFoEd\v!{fѾm!;6 VVltf~r1CBIZ{5zdlk@K /q1I/mRK!qkKb^PEbKڈ)0[٨tkd'kS~hiވfC2w D|O Yì'N}%׺E&$ 1 U鐮XRi'=>rT䒦 g#_OH)-,PM}C 2^L6*Rd4Ky#d=Iq:@|!<%Z &٦.K:Sw|fԞ$\SHzzH{#4^ATTQ׀>Ր?*K1$J#p4yQRGF(]qJ,ǥoJ0fvWrüP8 ydbmwUd3v?jwz<4pHN dF>txsCm &Aܟ&Cv)(>&EƹRAAM=zc+_D:?Alj?(4D"[Gz_,EoUZ!Vu>!5NVD#"Wr8)!d!?vT eI.f6&y)8&;@睊7c-Ou啨e9J#5> @;55Vɍ yb C;,cw=dPn1{|fkY+V7 r$Ӣ%A ȁ!6At 9Gb;C;O@Wl?e9i>zx&9Smi@c=)2e@B_RX#Pp$ řԆ, b~HXDH */؛LAF~FHөdW[hF8l6  `EaZ%$xRcA1_% *!Y-bj+y|: ;ߟ%YƋ5Ns{ LΩOt@z MG8E Gߨzgc8FQ@+/^rlkĶ (B 0*y86BJqV6 ?OlNY! m8/SuA~:ܾRV_rC{)6*suͼlUlRI]N]ť ӵ{:o)͋wF'3(t*y5CO>R28+?K {͝嚙Lf'o$3ɖh!9_pHg>$w^Z%y8o謦 4hko`cnoR-;"KgYBALx6ԃ BYlɭ &l!j2xH>pnBѠ&Kno{ 3$Ҧr7>})Ns$[7TddOa/ZO~:~除kjC!kf,oo{֔A8Sh ad~=Too 6K}7V/x@TZ!K=-'r4Ī0"X"^)i0;/-xKP& v=jQ^=`4#i+`i6kp\ӧb(%m='}M@p\soM%_\NY#w8a0LX1kl&Ћh<8XֳmhuN̏atB:?  ׫hf]m㽄Ty%]K|4L۾̑Cyd V(ܘVl3ar@e9æ$OY6gUt8[vB6Ri%,U3Uog< 3l}1V+*M?6Y-OU SRUEJӲ<YH޷~z |w `}AI,|ieRK['ޱ,K@0]rzt,GDb;,+GKlްQ%$GżӊqaLov' rG4eQmJDꃧl_=$\EBj-䙲^ @f:g=,XÔ W =WL7ndS N^,0MNhB -fLV!Ax݉_@oEHݒd/g3ŚëZM cxKް 8Vq[c{7Gz26*%ywXwVs/֥$[h/Й,-(rtC4'AH'ۈ0o@0;i BQ!pt]9q5ǝrbt AnJy( HDaΥ}PFY"xLF_՜atfVkG-LirI4v-Mm ާ)Ҩu4G+dό5z~ <{o\:3шE''ZI;?fBl}z^r"[ᝆ}[zPL:h {JCܶ4S@t5iV)냪*>e<-?""RhJ _슚c|lGc*ble>uq\ޛFV]u pzrH_2iCڲ[30aB5b!&_1+K9ύԘ<}}Iin{MoA)@HnDPˆtzOѼmk?6^Zɧ7M 7f)GI֠, ,)#_4 _Aש>H!&ԤUʤ LnGNŃ<]kWplK|;<߰ui/%RN0|H.$;S+_PB <*& th".Z&,]/&Tv94SdNP[WtN6n7č9$\S*]46зA+& ;Ш??4 n겠dgd(%ً2E[zt­bƁh`*/_^QoDgLc1ppcEg~Z5V,rX@Kc~PYR"({~>/X)ķ4S"/Hye 3\R  q|0f1J5Z? 3] :͌drbƿ5B&EZJ m9Y1a4CyCr4Xuї bAcFYCRƷk @8] +n֪Q=^F)#ԯ767mjVF7R*wy?Ԋ%9tåX(K?gTJa*;VG1;܄"[X%eu3o`@ 'R wß1lI ˦ K 09Pv6I_S˫ۿ,ռ'ZkQg3/O.F{P˧![|P \`Z10(2\5n?Oާned[ۊX%kn@IgONyVWX6t<6k4l[@~;)6z%JUx̓~󍈁Ej56\c]F ,*ϔӂBjXRM7#Z?ҍ`1F*@ZE粝F9>wQ'o-2&VرnU5&}?ebM5z5=AܕW&x K (}m'8SЃfDrGb> Pu d2[#(IV ʎd BFPQkz8z1AFڐ7VM,&%gȇO>eNEH.7cMF>J iMrqͬ$MŷQ|)l=e4Ƒ ) 01aK>akx=ɒ) G^5B  U#1S6$>YWK0"9nU۲GO1b|zVe2q޼33_s-n07l8"GX> oT0vX<$ۗ8ƜzĜrV#;pQ;&>G=ZbDsYpmxjH"gB@D93ٺ8d2KFNklN{Ep +,$YfyS+t>"RѼVPTPD!6I~z`Cu[]w[!PW$ph5-]@mKv%F\}odzߦCnegh(I=7P`~֭5s [EBB2,&|(\{3}nps>7n=39eo$Z(\͚RA<*jZ@.tcaYn i 8E63xB;78-w3s[ttNJnyJ9ՠL#W+Y.­8AAĀ$J݋~ƎmUaHmƽyOq0㼊$ix1P-t~oRwS~/Hh})C1tMkF C6pzonxܼ]!_/N2Ꮟ]xDv`vik0[*ƈͿC1{}7S3&r/W M*-h@ hfDe{V+?Io!=?V&+VnYO v DsԊ۬AY& / ,p4bc5z]^ 7hgk_((SJ 'Є%9Z=1{qjKٗ8ot(Րeޠ[b0i_vbHWn-x'IiG"cȵޕ+dkWGUw"!6W|qqV VSҮ/Kn27!Ȓ&!9<8Q8:1vd|Lk$L&E;ݙd2n_d%۶G pg^XQ8_31pemXL"$\[99QfA+NX=CP7"d%}4kҎ >Q)e1@Ԅė@bBi8?T3⨢t;ʚ *juX0!W.@5=lNecml^$nlMYV2C¢uA h@ ܆$LeWиPT~ᓋxNti ؖs6N ;cv)Jb=?c'{&dq2aբ$q%&%lKv_SXD8^r0RFK1pU0FbC P)-Im-|$S¦ eϪo1[({Lht&nG}47&nQ + [4穊~PX/"BPBĢ (Ye 3h10F^KMVEIG䁆KgSxl` Ҽ.Go~Y/*)TH0soƊt,ۖ'ӫMvO{.8F&ҥ%"-cSVĮv*gV=+~~ ^ZjHKEji h9@߳J7lQaboҒoQhl3K"+so.)[E"jӝMgn=3i$˼K۟_ f3eC|rsd.-&WcJyxΥPߎ;¬f{N^845(!c9VW9P~vB,ѸoF}އld;i"2cY!mM@H=mf%Q=~LZX7 &飆6vgm@?\xYp_ aI+._uj'7CPy1l6y8N䡓9@/NRo.h"-N DGègxt =@.wh>k^ fG8ʞee `{9=XcnHEȸ,|}OoЬ0{ MzpݲOL%}P/B~ϕ%J.cz\TeiB^5S.'dE:n١.F-}ZZ)At?cC?hʃVMR:ZQ2`nj(qt@SOCWa[FrD5`ygۄ>D sMfր_Â564uy?#JTАbi5WFԛqnExHUR{ti>ZjԮ[HC8o88҈X*Z(cDJFgax̡hDQxI6,BtXWR*;je Yĩ3gX^`lߕx^ kRi*<ك;B@VzQcӡ1<1b\m]Z;ːs1s2բCYU3= w rEY6EMZtÍr`kQ+]kڲkY5to4$M=i@#LJ>ˆ:̴ӷ|uaAT,I8aüq2%a-F4F; ?@Y(j$m^c,~R} ?? bDr,QzcFS~(hˀqُVѫF3>^l ;nKUaFH.C  W4ngR1aR68뫒_nF!ܮɛɄ.~MS0J? b<#>iWD_$ i@Mr;WM1_?,@ڑ|k|eٖ[jX<nN KbTu?5JT%1#|K0%>Y >kVtV"=oT^nbH咩IW܌ryFCdA$)ckUStx_$⮖"JU,:-bu,6B<2*f=ޯ%|3[CCѰ >/e"8ӗhRA~MŴJ'B{Nag }Ə!RrLX7ۛl )5|!0&@@!r%*~ t'B|JYNSVSd +M>~է|N5;y%%U젉c+Be}g^qwyz%Y,ˍ)SYhod~Ϊ<:-PJ 1;.V3R+"_4. "zU~/ɓ"`sJ-#f[(p6+riw!nHQlPϲᙩׁ{`)M\۲`'}JNaoua-!(eHs@9.)q!%Y˸"Wg@IJ'Yț5⡦ p4j`ym33k7GNPrR_p hjH|?3%5]^ 3yn1&9sH2Xe|e8-숆+vpP:=ؑ˟ Bg=]窭sr!$+Uve?ttCsE[4bGS\R C.oLR+~/ b HBݡ/@Ru}ԶX#2SA%)#di %35My3j"i9Tnv86Hg'ku k)ʗɡ 9H}2&K_|)\sL4S5sd(Վ=0vP<ŀ= FA;ķ@!Q7X[R(gZNj-* 7G#m;Ͱzvt7m@GʚkFtna0hr)| ک_ ǣy5sͩ(Jw"K\ 8n[:*Xpgaed$^7F/*B%sFQòR2,jf<[jQHώC6P?#i K6x|'I)EcH PVd)T! ?H8*YyCˢKxm/y Q/ k"JǓZ,C; (kiLkd?5< $<Ɔ ZaPZH %.*j_3O+C&MFb cG#k@R̶Gsa~{6T.ÿ?Ɯxk((/" }~"78oUNSɣ$>hM74v<=K8UfOg;M]n_nѵ?I ʣ !֐nHt 4u\o|:@xF&J\0,og(엞Bq:{k/OMET.`bG@^t9ӓ_Z-%kL8p[ѡzAqhK'nW2(1;+Œ A0[oĽFN*i+yM(NQ|5~|v\g;q%8ILaK% RUJq^ZY~ʺV-4=aQZ5M"ըKDBͶ4a{_̆ C 1*$[|U])Ǒ&xq3,jQ}QwK?s\Bɛ]e]^ UƌO+4^]gFE>P̹ {@яIb&PJ?٩]T eF:n>|)ם-(7/h Y102 2~fp.UVDyafus&m Qʩ$$TȤx%odM@"b^BD򱇶~Br{+` 1U*eS6h$xg}]&ʍBe}ހRʭw .7u12$<*;8כHE*fZ2ܐ\,@;ay-?d`||#j=X$qFYl%2d>Mj>v\)M08 e J$ӹ,UVyOt[;w`Mmֽ]<(.H?-!HGfޖX$'ɬn\nC%: ZClQ)6k1YkI/X6+ _h X=^v 7}P; Ju)~+Ӳ?Bp\K-VFĐfU@KyL֎y=/Dl{II0MP嘢lg<ZM}_qZ=ɢ}r;j-d%^01wDx!.^SwXl|GMu'7/2\Bl2p"GY-"<+COKԹ :/UJ4,)\ ~iW~Ᵹlլә4ʣY{t@1i눊ZBxr,r6pCᖈnelwDꖅVTe;{GVܳZt*c'gCLXƹ5Y%]fjpIa78WM+{n|ŽMO'kں< wDxtFQo !`wr$XΙ[`"xs7 w>k!H=p,^i#b&r3uW[=ƭ$WmjbJ/8[)[jb:hx9){u|C~w .Cn; 0SQ=LۍQv܂pYn>~̣8>wcпmÁ'ץmԖX%mS76|aF~\`\jʹmj  đ2wO ;B"|5FWd㯨yqP" w1RXrlmBBZB_X4(nLQz]ڍȬ) WEFD2;tpתMN5jڧ*8RUÔRDzZŴ@UJ_A΍cb._ _9Ǜ훥hvH4=>V-tuw]n2x=n# 6|}ȟ=a$'B/MӃ^)Яu8Uf" Tz)Σ`RYZ>mA%Om{53cFi+`R)-[WzQ0Uv[,o{ i#I\du.!6 ~E)'с dhQ BddڏsNPN^ A04ݵckD/ژK Ou+6~9=iӶdJ (Oi *'-97:*}0䀰W׭S:,4 ŰL~}&A >k]JFz^iX%h=MB7^ YJ|Y~{Aec}\:FVTDZ#MIZXl"Y"L6Lc M'폠>0#5}#;쫠i \k{;*owbb3O~N3`ZóݹcWYw#@< T}<6Lq?CrHMÑ4V `1uO/dwN_^nȃC_F4vĹ,s~ROC\zAY .}:c%1bAJ6)L-&%Ay 4'yp vxV[tSA|_8XB "D qŋR Y gj@%([.A`W۶s˱[ѵ!3T'4S|r켾τ9fMGy#ji@(Ik}D=:QD!kE=HHl p bܾմ!&eg:gm}G9OM[QN&M^{3@~UTC]x"ntvÚXQٔ2.LR G5jc|xTIjI\G҅F>I|`+aZgcCH]K(&̈SjlU*] m̼# Ã]kyH JR@Y{१-;b=|Ncq0:3dZ@)tةn˜ ڪզ:ڙ0ϥͯUeQ [-Qꊨ8a@QI|cWol6͂ QqR)R٭}C "J3d[C)%N$/¸k!`N"{Wޘ:k4l Hb-1u?8B|Eԑ2G)<-(h {hp٩f> &i^fQ܍_K4bEЅfA7B2cX^Xf-.8 pEE˷?8ڿVi"wlh6$hhx7 r՚{rguLP5ltGM@ɂ8YǺc3/K/¹quX6rzvcˌcLϼ)Jqi%?ʼnFd^vX -օ;X4 b9dtF}e81 Q.vl%yֶXwCɭ\[A/T[-< 2h>;)vò}M,s Qw q+L0J#kh`9ߎ'}!-= Q;8 :>R?Kdz!q96ĵ0>+f)fD`u7DaT=?==mYm}:,YƂ%MV(:wՎs4 Ϡ&SϛIW{痷C`%l4S B#-2>c [6ӳEݹ nm,LmrnB鐓h N6HC ZgS?[I}k+=RZ/NR+3S]b\]Ў?Z>pm*l_.灴/ n_SA/DRpm(1J9x9jk!vcK: +ɾ"7'vQpH=.[L3#F)  #5bLNG3IڐH&9LIj@WZ*e_>F9ݠe& ={g168?cV!^֋= xHXn1.s03"wHZ {W'8ƜN^_?:TMFf5O }})RZP)8-S\WyQl80zB>67x`xJ؅nP/)$VÒQrf^_: VBJ*dcYǣH6 'm($׸]bCPN>J`dq}{3Ӿr<( b_DDVs\4 .w>G>a5_}LP60 IՋk]n )V@9F("A@o!e⁘_Iqo O5umoBՓDPT!kE ~ :٥9#-/.#]'fM:-V=U9tڼ+29͠ξ(AHOҽNhZʨZe3#Q=.Qw!^w"MmHBֻINeWب}RR70bnKmiQsud@$<[{+Dv@<(d g p.pدpХY7κq)c!R.@i8${y3š修*2B;wM7,٢ӌQq[DtCP5) n-Vd , yiMJ /o4~zbu66Bq;Э3}\@⟿ЌQ$G,Ƅߞ>?8?ڞAa"&X {.&(dlK,Ptd=y`c9w]K .Hgxo#"X@_,ZmAJL8=ƈk >{V-|Vv۠g8xI=Vߦ#Ae_ch؞⪽\s4.iq2SP{ڞcL>闱 -1AUFpo#\աhfo %,y[ *VNؑZD*cQ8~XRvX5'_j a˦A~XP|U68*3p{a8=6Bd1iUIpϒHnܒ5 DZ5ـ]>~kQ7h;5¤phU;3fDCuة}jP~a1i%o|>n -qׅBHͣ!1 L`j0M b _.0E{՟PIJct\7EEw53*BX6EfӁd@>,6eTq'S~~XdvRGlc[HApҍ>QNX\`h q{*\i0t+$AeCv"9ūmIÆJ0ᭅẺV[)rfjg6|vEV_Y>>I3J8 ٩w5c2}'6H?qZO`m;+}Ԙ856?ͼh a06.BN`98n1 k%MVjQMdz4~ńT%my٨ _LZlcCSflK0~[ 2ˬf=r]L!mC1>?Dq-滪̀4-'(Nфgܦq7X~g|gx@^Fkģ+H_JяHr )ĸe_iI~lk>j1.Oԭz$N50xH\P?)7wz#m%D ywX}\K{yq!\chZi?^D쨖nS ܊>bTr+n D5b=0qGB+!XZP<ԼzW;r?\g.(@l haJ2 "Qc}8;cd3I`7UTzo?5aZ}FaTim}%ǐZj'R|R<[ X:\fuE?+Lڝ0 PI=U)Ռ@[y6`!~(М)3!uv Dz!.eݴ&9o/Ffp^,88^ )[wU,JEco NÿAWF4xN!bN[cyav|ESqÐ%]Ze%-(\g)3&ws^#ߜ=_Ŀ19+ "D[]I9< #!qH|n/:>BwCz"m'۷XVV:MÏ%X o `Ȏכ7QOɣUw^ "cy8do5;,l&Pz,gKY(B.x߁C4 O>7E6o *R]A+=<7G_]vmk 1`%y.qK$Yȿ *I`aZb)PloY NI:/=]WR|cн@gG3Z UUhұIhd'Z,Pd^gd.;r_5&j4HJZ?ݠ졧{e ][c d*ĺߙ5R'RA-4?lx"uW>f31$N%xSfxG 5[X@'g2=Oo5Wkq#'^I< 8gTyL~o+4mEst,7u0dG}j.E8ӼTH|$}wցv;|s YUH8^lkPI v6봘Y8YXuԔ>Y0^R  ex!iBXK$d'C^oPT@2zi< ",^T0iĶ6'1CkS~ t6fcب$AԶP W˜):<_,8Qz<, X5H9 Z?}0:;k̙z 1v:DRSO൚=wItўă`{̢WfWɴ1eْgI~}|8A*V55W ߇j&L}?!%9ȹOs/0ҥ2'ΚA{˧f*-2nh 7Q0MYY>L3Τ0x6qkۥftzUCOFZfyFܔ.Z_vOqYDQx!,E+ϑh[γQS'p1ՀE b ^ Y|[]K41 o-eLtȊP@yg[M=B7^ln b wnpG7VJ*yr&?bBE6/_ \7wzⴂp~#H^{ LB ʉ . ЕMVEPt-bEōɠKZ14,xɨiV*5pOh>_Z>D9 5!ENT* [`" v٤)Iqd7pzd8/zsçQuay9+*@#Đa0~ejn~U8nk}e$b{6N|fA1RLznm^#w )~'>!Rovi251UAVnxyh=@lY)2  "{ƋNOhsvxo#֐N@6-B\>$= iW~!"{0TJ%%M AAǕŧ 6P'b˨e.@f  3,NwBa/SsCl1Špی1d_|u)DE#;UƵg,y:> FPNL !d=-CA>`@)[*o!b )YHI=Q&oUF8xAJpmRIRp1`Kz94F &AMd{ J^$ߚt/OtlqH:Roo˓""ݕaRd!|`</,*K`Xh\pet 3n(Sp'BE@H.&a]NAT, SƁ3t-5udQt=f0֐I@v;yU@! {J(zWO+&eGm `VO(. B ZI6cnmNg 1ܵYgAAkb!s$GKN_M \ AM5R~eN` ZQ5=jR4N_wjǫ9 IױI-8cAZ FsUէh >CN3p 1ztD% }Ʉ"ڐ79I52M d0|ՍG+? +ho71yp_Mpn2 n/۱n|C. E_wuヮy-׸<ƢM%R'QH:ʉv9=HDc^P*wt۞iF77OfSj<6{r_OG#}Ca*r V4)q`QfNzysAošp-$^S2y.z_ Eڢ٦צD37u~}uވ֍ՍgH*typ K& Cԑ(W,&]]RT I;-m@N@bqOh ~'@r|mх+p?ޯ_)_3iB3cJDE}{EW88>NYhP#^MIhj:yp!*-~JT&D7۳ G6^n;acŰ2ɅcANn"o`߄܋%i ^}שaQ}OYoӽ׬!J[V>?@qcmE%gVW׃x)VX2{!p&uZed0֋s1BB#v;J}Ԋ7 &ֵ 2沵&xߜ%di{@f&rėD| 15\}l.˷/(oʸ`˛ P̕_\7^iZb.2ajsύuMPW'e qnW| FDcQjkbMΞiWjE-S7Q%-4F1RmA<ܑ0'DYY <42aqҟ="].)1yC/_i8<++W'Xo5^ԥF2W*a*.1(Yl/ H+ ެ+l':YO2XkMR.#-~TQTzu=0ޒwyTbhݥ,:/_XzW3(T]vR,hComs-q96Cn?lG.!BHwܧOfߜ؎{X,6)),gJJDNMp^HhUom̑V2s{wKt{v$&vm 5`̘WDz$s5>t(|miūΰ5:g\WFSkM쨗YpTGi';S4ʺm𖗀x ћjj2,˛ FNk;[ߺRsV;Έ쟵}%H%' Մϥz WV_-](9;;N~׵e З\ȑ!cv!8Lʦ9sI$l:JehE04 8T;PqiabOf͋(HS% zt F~JzwUY/^\L}˨[ K~d !,hoPM*CreG %q}X"##;FPZB[(̻NHN07*ґ nqznDI[ >)mQ齍`<0fI1s]f,qdsDZXgueV| {@G=P8jGxtQj*z3 &AK˾f|ϲlh5P9*'gr-͜ZY^]'X4$9}`qSF֔1]ʕ,xU<]4%ٝC W1R3kGSȤVs@OjkaNRRyX@pЛn]=c?!vW>b#>X d>_ș X*9yHGtք0X,fPϾ.rW C\0Y "bLGcCZ ٕK !rw₈!}‡fw4&(gOʰakŹAuSrϭfN"TMCL+5~u4,U%~rJqN^e\>ݔUVA&39p\&D>S.x̠{P`<8` 'm%9b`e[h a'HGt*lm<~շc4B-L_9H]흜<ް$NJ?lh% =Y^>G>'¯4:?I⃸0y'y/zNt߉S>85TU#`PEQ3|`.% }V?QV^CX4D.D~ܑPXVJ-ˮؔ*@`wa%'a'Bi@i iWׁX ߇ū["Et~S4,D4)G| dG6;"B@SmM;+\geU꯳$NE`C"v)?AMi*l8(5sp ؃8CwM5t*f$8q kҤjHb@Mzg*cTB1p57) yQBf]BOT$kikI@yp~,g`\Av%-{2y.%hb=9| bM;+Rg4۫^i:^yb݅9!h^θ^t|Icyndd,$HȾF 3u1ZQ"MVL@ N _9K~B);W{7ۡ#`ޡC6_f6#-VjLf :Y8.Y8YnV=C__Ny)tJ;yf;&'"79ͮ`+T?>KAD| hdGR AwfŠ!dQQ .Gh ˜Ƥz!Cy5HZ\3R~ꦾ,}M mS/Ul-գ(t-'H騜oFV~Rr_!7\^ajQy; /**hɵ<V9T=?CBRҒ'F.0'%9z|{UK"Zw&#q덂P&FgGpUǚY|=*YOTs&ޣe\kmv;U 5-BǼ/AܦA6{57:]'Z: ߮h.qtP0dp49o-4kTIz}e:k.v2M%?&MIr oXBϜK={0p^RU7bf;xF#qVG_U q(LMYRCCV @a0+_L7~D #s7R1 ;%@]4y#VN$K-.3[x<,6+g^ʉKO)ܲnEWB1k%( a٠QQ~/EDŷ>SyWfD1Ƣ2ͦR?xkm͔UZd{ԙO#|v5ƍ6N[d\,!Y||HgNlKM^vnZ[(:F'GgY0"F-yV`~dApe5AW~_ljn8kYLպN78tpƍ/4.4iVuF{za*NKp4~` ]_55WVD8pd0u5w@/;N#A 0:aXX FuG3DOi))p'gȝCgH$>uwC5.f*sFտnsRk|~,q,fnY$_'Q8,pG0; J^a_D? zݰͧZN`țy솫vzX< et .xf`w_!-p>XI0:<3+ {3c/0;d!_*I7/$WU|h_'itEطUhj7S*BaiL.h^ٙ>h.<ҦVJ^>nZdc3">T$leM¥}%UD3_ \gokYݶPt}$jWGrFNS=KҞŲC`|e9a~ wU.F0 ^Bӫ 7ٱzF#y C;7"|a¥XP,rv7 QЀ햜wi9?k@[A"ˈA/aaww}ib0<+$&.A­`y*w)AcN p<=  $$\T]HQf]&@8ѭtKq39(Lpz9 N ҉pִd&t|_uC%0v1EIޛgA2cf̸y9fE.^r&y_΍e6OPI-ԛEDGë'@qwa "؏\ՙ[0v@$eR ~inC()es,bC+9і+x9p*-cj,G|10 |΅A=K8@ >3 A#Q;?"긠v{,vN)(ii qjG9zoKM'Ue,y{`|%1'<ߺ'4!L5 _dO \*ġM\q<*de[$ +)ky/TWp>D'N YąSsf>I"BL5 a$B4XŸHĭ'/J^jeODkfZw6ayBdvC޳+He"ae^%/Xf!M &$ &t ie M2&!?62|΋QcXW># kS)6.%CZ.C'B9s]8|v*wiCsC= 7 mցGO|ӭ][ut-&pmoMXLbWh⊩LC$S; ڦv: zX hTK`Μ0QjX!8s1;H!N^nMI,"c G29Hr Dz@T_H2sպZZcn7}J HY޻oxfGV)cZK;6*lm5)ٞ.;c>$< ܠ5Oam6 aϮ-ms: Ċ5L(y7M$jxٽ" _cE~ʷ<M-9˳Po;3ӉTu+shs6Von&+_FYz[ͰgLd @d&:puB m([ޠWnɣ-awQ0i5TnWS~ZR`w} xj凪>u>BHG. !s ʉ:;t_`d ƪWI{]cTplM' IF?KKBGfu02XOY!S қ 9o&Զxg7XsĄُw2f 4wUtյg?+Q6R/[=}[CfG@lalsᇡxx[UJnnQ2Ɩł<_W$pY,TDYB%)T"'"G$7_Ÿ=:nF;=VFcqWŸ̫цItM*J+@\ٓw@i^?"ͣd?sb^]o e"Wnрg!:LF AoQm((h:o!`"krz wg7s]2pK53 Wծv3nF+ƍnVb!9g=J>J/]ɹhO@ыγݵh¬X l˕TFWtSw~qT r(#%|=*ejBh5T3RN6Aک |bE$ZxSIrt嘦-K'i5w֞Uv˼"SFۯQ̽ӖUAjuϥH]W, k % B*YXe:fɩx`2@ vrz_ܐ;K63ʅѝ}T3;%g,ok=VY[$Pz Ks>G X13Y<+,0٧rد5#d雬'J })vX]pˡ- 0_[5wVQqy-};NPA~ y\!_2_`HzRu1SOz`VFݪq-;bCyL[d~L]/jA+w$=RMMپ QzFϚ CQu~JO>l# ) s,D'b}yGwt \ϟ6߇L*K+A4`R r0w `ҥ+>ID.F,=?׫h^L ׹Rթ8w 'Dkgqd:d;=?nD}wjF]c1x;q.=Pԕ]բ-z~oi庪t+5_Y҂-뽵H]ߏ $0bDM62&/q'x8ui'^Z"ͱ 1Xن9IẂ9GÖ *dhj,rmʺpނ1z"+᱿M_-&F&kaRT[-.GN.uf!YdV ge)r-bж/re8w:Q|dᶕ+}W SAZAL`0 -̗=zZ|pm+0G:]iS#`uf̶nv !t^oT P>ip0ʠJ +g|wx`b7P?9Rwk"<)_ć hA#KYB=z~O䔞cU!c~uK3klbnFòu [Z E<Œ-_F@ GA5~9ZUv c(RqهHUA~ ЗJKZ .4 . hD~. 2T1CX#Gʉ_on.t` F%^\9iBJR[ٌwCX$~SE:j$ƓX9t4"N;tJ)%64^-\R5:/:YÖj C7~Ӿ7_@W Jcv( Ps!U:N3BVsz5%#5&aA{twQp1SZ%B{}YW-D}gr.mf \&<`NIIYjዜu~m-QwFxY%/e{tCO'~0W43 J;1uY%7##2WJo*|8ohI.&"}% 5HB[:&G;y~yY gg ;Ȅ-[`{j7/l\ڟ۴Z*@{ۻOx4>hiR̨b?Q,b !4Ha3Njrk0hmofWXjrM!E90`+Y\n,R<3/N8D7;6J69Ӊ5dN@ӢQ4J3V4b&K1:wN9gqD٫c2ȟ9{38k~xxh3'%&toY EMZc`?V*25jAGp(mעЦ}KH5BBPsqZ?`pQ7 ƨw:KYcGȓ|`#%GyAYI%#4t`]#Q #b'xM[Z^ Pܻb aBS; =G:=NLXբ'X{in?+:к '+Zmad .ͭ3ߨНa1IsGe@<ŧh38`̤{I. C43FJpzeTek]Ch -y*o`/.)Z;w@$fmӓl'L'Fuf%=IE(\WՌݳ&G%Wv|o4?oIPrE?Ye|)fkfl<\H"MtnpAt::3쯇b[lvY~A+|IaiAw#S|X0V4m xO@!>nI{YE@o FvL23;iK2&1~M1T2~?S&^]SNrb@NvaԨn$CqPYZ sN mK.-l[0mϳS˛~jjF7}uZTyxt"L NdKPzLv%{9ϙ$e,ey=7y4 W#4" &Yc l&6R. +Xi'20V=FMK^2! h Sy!RhX/'ΰ.yS@w+q A8Fv=~R[\ sesMk[ƓLs9;KV.I͎؜2kb3*ˑ -ئ - (]Kǡo竔Oʧ TyXU |3%iO]w!B?Wl6m*KkQ ֟.G'C2 wz^ae_24ҍH\WhMD&ۉ(.<ŁrȊC3xs~֕5?IةLm%&`I\Z{Ԡƕ@x6WS\(n_A#ͬHnتAûp9V"M\קØqV7= P'OI#w;)B` 's 8ov;ym g9m|ITJB =;IjfLn^/k`Zwb '/"zf0wCʪ%04"M:$mp7|y#g ;+=^cj%#q:$ !Rs;&CSRY; (u5TP?7bDxEKqS']3g\ TSUT?J& 3$t?ۺF%A=({E_1t'hԗ C:ߋBHo-x=?Q5_g.HQ,H{#4r|V KLݞ=PM)z, n黨&" X#`z#ϫpoգUw?zT>f}^`j|V޽:f]QW-|)ymF3j~e&IY Yց$G: 8!SXsiY{̹)mQJgZP"K[ KҖ6Sk<;"y&Do<'y5={H^4򇘋{Epq\aKǭX(>osƯr7Ry.[PzGjp]OjQX^ ˆC@-Y&Vz936D.t)4 2>\=,(0z`q ܔeIRz^rt,IX\p_e s=1ů0#0`[LJYwl3uy8Dssޠل#{^Aw DJ>•{B*w=HPr!mYp+sathhW.he-m G[č@@3P@vq6wZM7~D+o{{?kz(PPA%wR&?IX2\ ?%AVgѺ]{5>DFj:ĕ6l;,)6lrȖx՝?*y"TsRA V ֥lƴ{c tG>q>Ǻ3{UZ v5/OIٛ\-ur,& +I)DegQ82Be ,XBݡ݇j󟢫5u52A<&OU =*"A, {t,e'Z𥳐_sSW -ͩ:Vw]U(rUmI/ۏ=?v0QTR/`kn]#4QM2Dq-Jc`qal,( Dd-vUiJPy-0ț+77rs4_ٟ~'C n`RA\ݪNq:[ U99Θͪ$$B#΋+K yboi@1D UGS~Gm:E2-Xrx9WhkK^) F_q(8 dn,>H^jYn,ı ?o-36 :fl\'7'ڇӷ{+w2}ų@~SLb %ڠb驙}bD1AX 6b|}XOvכLVyNM=(e9@j7!285!BxoDWګtؕ:(>Y^q ^JqDR"<wMYl5/`AYpB~$bu Fw#lxzsڷr'IqBoAx|UU6xK諘eܖС^\=@ʋ!fin[֙l6plIN$Q•cEuaD ?hO 2>~T!mKb@ "HZq]9&;EH-$?:B}kO$}8M l sh~H:|2E_NrCnb˶y"GlvOCz4|bWmuE%T~o%"m:cM_W:&_{cS㊎x5 ;e%Ї㷳)%ߖKɭjW.OAFCt̉U9{L0O&KHB5 %,-!CA A,+3Vc~l.гզ5Vc-!BG8β@>Ju], ȓJ^}q_Eɯ/H, %L0o"0Rʪ$ "# m|fiDwGՖP~DA}?Av>J|7^匡eh抆b;.jQi |i<eth :ˉsn3^ BD͜1#m+)ZwXv{b6!T3c\Ƣ<ǹ lN|&k!>yy(kW?B DG"DUvd]Ң!r:%|:'jRbr" Olt/ިXY?aw=Z xx6u6k*w`̵m@uZ+NU3晨P0Wu'mzwIu^r6wS]g?{r ak^'YE<fqy(rFßF"R9\4-;mէʹ<#^򁯿h )A]yCJ>÷Kl5JG_1vby U& ^x =Ͱb]nr?uCN(qƻWY*+A;cymFtLOp-.N󩯧[{^q,`_ K$ Ps=n2:Pȶ tmˤa%-X1!Rܧ.UAd>-(2oӄ͎(NU/Uգ)``n%~;x)klNmq;H܏j ,KO1AŦ>"FaTԟih>h7J·1 /2o_SJ9 ]Z系}[CtծO(@ 4]j Q,gɄ^ˤSwU]0v:{V&+KSam< D'8 /E4Z⶞=ڷʤ]x_8Fiy $qGm;Mi3Zߓx]*/!fYdlS cvѯϋ3Ggx0r|bX OfZ!;lb+=EQE%{ZdC7"?Pq}_5d: xxA=³#GY'}[h#Sm ؅ C2 -яNJ) kJr:/oO,JŘe`kKKDϚo7 H kfE7)3̘@b]\) 59WQBjޜTEn牆:,DIsTeN @.I2A̐hcoObB$cif!&iάp"[C°JWo7ۥL>fxczR> ZbTFãZ0B -bBqC41m3# }>Uݗy̟viZ9ʅ"faE>@ KJEᴐ Ŝ>?ƽ ~$DH.wOtA{j* ~)z{33Pop]8߳DV `BjxK8T~d)}b?7cJ&XBޘޮ05 B%L;!(R*-]{ڠS#H4\̐\GB)S͝ A'X:\Mv(妷E*uU #]RڣL~F$޷'Kvw>Mt;\;KbNJO3Q #'*ju"[#YZI<Գc԰FiRTG{QdNxLpBΘn]YC]uICa0# WZ=Uh2 p\t xjOdWm>!Ǟ ڽV|u~u?lLRs$ Qn*0wQ>%:bz\ֈ,x7ەLtʁS|4W9C{-`mϑzitxx;aLE4{=j3=P1825CRJA$=nmn z; ߻uC3{")=cj&a΁)Y.5/ZfpyD__T"N Շ>!fjr3,0nH= J\LT aPF &Ԋ#/|ǿM\ G 0uǑm1,tRGq5#st8C(`ϋL2נrbET+lRr_D}ue]V ܐ){ŏ{e A7R Ѩ*uI1wEq ee )R2mc!@z}>n'(ισTZHb$R#ҙd@`JjrA[t(|n?<,D8"شOa6>6'4٢z)1”{ (V!uqH!DZGfVsoAY~Q_"Og7dܖU-c+X1Qnߒ %x>r$pYwYi*hLH]>t_ƣL]ggy%!UKc1TG^Ih a2MVP-ԗo̦m "J`}֭ǝP]$BK<¨Ą ͣ'L`h{hÅuU晾2Zc<*oV:F w4tDLYbFSgs,3\:Og`/py7 1JKxф^4Ca~1ʳBK8{>%eqHIPw*57I/fF29Şl|(@\{BlAD=G$[qz5qU# +E\7߻_iZ~vab m |@mk-u A)n|&c:zqX 6Eǽ. KGɻC",، #wsj>pV;Ag8} nקDV^xYX(tsI vsv阧 knb7 /z]P`~]b@A#H_Z$o C,5WUDO@Mn*3#fGJP JݾC=qU>Fw+YCJvi唄jO-mC("q ʟ= ,ƱQ-iY7K %CwL̷'WBwv^UmҾ5Cw3UGeQ~ˏoM#2&+C/t)wW2yΙ:SgS+^ #w)ve:y43۷a3xČ aڪ_ 0yUE. n̷bx(EϦkS:ނMy&_ 7(ȩoBW Q/ݮZP,g~ &&mp/0LGE@/Z&9[]6y=lby" 1wYNL"JedYEsM㍺ fDУRoH$Y2I;{qq<$UyJk$M)!}e5qB"ƊEj\dkvfY GP&>,U)q~7E*`߾\}UxZ埍I箼05pƗ"2j[Viܨr@qfVT~,yteI& ۝ =!qFo9TLRH/*K85yKg?!*|-?VplQ \8:U"v;@g=Dy%PkY!|2FB/MB"cy7`A1D Mi2)@!0˟q7&ud{[?=r1>ig}G+t)^!"p@)NBq@ְ9ph>Z8ec^ m@ޚD+樜O`}Up[ڻ/#]'|h23||ML~kgK’Y5),Wk4?r4pǏ@qK K"Sd_V=m} q0) \vvFSmKjKixkD/~wbn*f"OӾpY f%上/$;t\M 9uu(E-Fn{VqZʡ+{Snj2m<V'9л龈m}wT&2`Y>nx74Scl$4Pd8Ml.\;-$!\5\hANug2b9i^ue^ij#¹GB`t&|=״)`r>WU4#7&beiiՍXEPrFy (B A, W%ͩH?uE5y-yz15Ǎ2z9yp1U!#l}sG\*f/ }G>: `͐k^{% =x \ɒ_ڲt}s}9f,CmG%Ly_FsU_,y9:~tn|;QkCo:>AZP$ld4 ax,ɓ 70^mMV?W0 i {3wmtb7,$۪E@1JwCWEx#?*O( mq5 jhӼ5oɔ~`WJ D;<+r30إi;\8DP>ޕ"ݭ BS6C(eŝ'덌+Y˫AaY&/V?Ptq% AOJ᭣4IyprA4hpT~۽Q['cCa&D,$̉ aϧU(ܐ (I,~ O@}EwJ*GXH<GO##_=t0hFN?[g=8M%dO05x}藸-Pݻir[Rԭ>,QgC`mԜ1,m̋!R+Y8Z7"Y};K}pp;3+0OΗ7GO>!G7}Wu+Ejv83(ܵn)c+tnړh8!R!*#2EK8'w$WX~E#}UCynp}24>~sVjtYE`э<c }h>K~'m$I~ IoBۀӰ[9#x}ke*MV)ϚLf=БS+棑bNVQlҨ9x!aDYY&LT9ѪaĒ1 TϮbep-eќqp,M`'1%:b=I J\ ߘFK=0ymq&\k<4R=JǶMw7EqE(N9LeL^:fcN늦fP/o}Zs!)u/)^序ɪ)IBK=mCNB2Q̯)s2؄3 J|WeZ"R~KVSm.W ;\rfiضu΍ܵ_]T-;1OU3?u i6umwnp7Y_\:&oFfMRFU FȁaF+лbQ]1heP%x.=Tbr@er\sMMEvUAs ^kJ2gZ{K[־,+ 8] ޽iϛeWtb+C7Km3xR ^Mk1 1եNё.qB4Da338|Ѱ$m/2􅡂ɯ4< ΁8ɬ+5OqSa( !i;QN~Qo488WiE_J/Y wE)!˝w:AHSdj5at<GȠNǜ 0'-M`2+)==/jru: q@l[}2_|"cd ^-e)CTNeݹS壺&B@Q/I55 tO:,+.XM؅lP"@ʬQbEX%QOcCem Ē̟s x?z M0}rynҹOHS5I]lي_ԕlMm2MؑdIN߻aOoop+CN.[bwxRD67w/*lwmauT@)*q1^ŅB8B<2ʫ"PiiCʸS8Xd  X"FN+ $T(vP4[a8.kŧM!lJ8_#/[ ^>G`K*3$fr-4b$C*=~ezmRfLbLygJUk/ =C8n?yFc[KlsIU{ |Ӓ\|2Zv4+[6tu*3DGhX8yN(2?T W֨4Ȑ';ɰ 6{bm쨉2@Z_Opc%3QrA48ACÂ/Y6{'4 ^:> WD P(½ |r366H3 X CXJQ%A~ìc` ಯT ߥCze7%MBCgbrߤJB3)JGR7,"V5}Dz5;_P88d\Cl&'A5U;W93'B MK 5Cd\-Z'㞛 'l#ߤ c;Blrk՜Ua@8j 񵮗.ad|nVW%%@&Jh,s (#`ע:y}[l FQt.3qIJRxi^ά3mfziAg 4 3-Dwӹɢ10 6L7KK`At|bR,71[ {=^p 59< LSŇtHn]=0ٚyQ옳Ov}^?Н$8IC1[Z_/ki<t6^] PR"~P'+rXK̝ZW֒dSP1Vt_ 9?Rn6B?-ٱdڕ}?PiJj *HctGB.B9ܑ+X*eñ5B&m:7쓰1֣!+x]^Am"I奥g׿BilW47D1@]\/)'eΊ^yI 2[/pG*VF$>)o7+p~?*vy7{u}|~$V(:n?I b}jV%Jjk0&fA5C1&͞z6Wp\G&:,"0~ld^~POmd߆ָhNJv5#[ݑӸm:Dxg3ݑ~w"gܧ lM6:?GIÔϠ6L'@![YGt֐yR:AGySOCBOj1ujD-V'[+I(_x N_% һ̹rCW s EV)VP,x0> V#rpsl/FM2ƔȽ' N(9Up 6=)&衮z%4WNND Ε&km2y}z?A>qfW"`\y TBFoe(s$o@FӇX|s 6θ1aAҰVX*$Ж|w{O菐9i.8:qmߣ @Pb U,bg7Iwݫv*\N/m’eh-t5뉝^>KK~~0#粕h9|^\ZǾ˒W>/% Fт0rfSg3D,JAX hط7~*mUޯ[~NӱN,+*d߷]tT= P6ޘ\[r;Hn]Bk`Fj8~WM x"4m - eaj՚v@'r4a$n,7sv~a[0LGù8-$D0p!4CknJ!IFȪ cm'PMEg ޒ:~ٔrm\H S6Vs?E߬obw]eY$X_~n62ܯZK8DXny"Y&bM:ZN6a`>W5Qc@hHOE_-?R`D ;)Ux> &P{V3m&uX] Htt1z 4 l͑erZ,aSEGmφ85 y8@J,WOZH~wS[}QSΓ GL_ .C8,'hɐ=u6Xm߸Ƀ͈4@qEY>-w)K-{/$oZ)y@_K=t;ROȲhuL`pS1lP- 8fL֫[__TMgc ߧQͣnE@b1'5r51~<1sdf%ZAWL:Snw+3NKN.8 ys5ې0?۠@p$ަjB)Sq%_q=\{h01E6^߱v=O Ao.nc5VO)xS ? "a}Įy'8'Qo^T͒`ljJ7Ų)=GǺ⣲9V1jոdO;3Ʃ Jf>{F{(j._6"l ~3qFYDc |}Cs+g VAc_\WB\: A WڑʴxM/\νR2Pm|qjy_K/ZAG]vKzZ`& V>+]/$"DNZ clm %9aR7ZjɉHF ͔ H(aXWn/|Iry:!̲ioeguկoL S_~6t (aehLSwGHFHlK PHtXt-S د!ۚQg%n+SzaKo:pf9x,Uwဃe.UQ^c8yHs]e_;SL7z_7aC}SVԏ 5,'F/P]Qc͔G7qnpiqX(J^boӗAb/^ךtи! cMiQVM(fb;Rܮ2l,Uфqdzebw11@CLlMUs^Tc`'9Wbast{4_!$$>(ru8Jڰ&CðHV,ʆM&ײTr>CuruW<4fRBlҭjJ6_# ĪWB-(K &䯌X9ڤ=+h: SA8y I5Y"aEs`c3u4PR54U Pgzw69ϠUsd«4,SDXǢ`~}KncޤkDg{'(!eH*.Wg=;~egec,l@X~͆Hs!#vC{ mYW+=@Nzmcg4"5rF: I|m OɒL Nl^q\5`Rzʄ?WZxB{p Ovyxϊxvd!χҧKqГcAg:鋇We "L5?݌îRHE{7emxR|Ku> 11VU_sf n!Z[|ȥa砢C00a̦V^-r}8NE%5ӥ~W1'Y}q͍HiI8DfN!Vp?Sf'ocၡ=$g # x+̇)omUWdg1oϯcZ}}2@i\"l_g7$ո e|!*1^wU+e2]hٕ[`m74a>TTi)CR#th 7ΥvV$cȵ:(vIY^wn'-؟F=RےHLi< eVR~V^b_x +,!b((+wĎ)- b֬~È3@ "CTę,薂7նM&UUfnpxDtΧ-"Ehɼz?Of7Jp+u t9:%[,78LU`u>; $d%=C%7pQ{\Ԋ\sj0yuevw$ء*,^Q:K< 6hǯ͐ËIcM ٝW:ƒEll%lQ3,G Ҡ-᭘7>QnК9-ۈD L!L#|ݖzٸ;y'??V@yDV;׉Wrť>SxB"ĂEoa!77JM-k,[>bv)tR/&.1PIq>˰@0I1T3]"[zZo뻭b} Y": 5C:}cCt+4b0/8`qeA6˷:]=zOf4OPO\Z!bF|ɚ8Cm<kSjubdSxSg+OޢM`d,ԶܲFMԴ,#Z c'u$MKJ}AU4WV“peR3Yërv\'TGp*e 'eKYϫk'գw~{ЀRg7W4U#4;5\Ϣr=km/(MC;5u}(T!i luKK0W1fFNU8аE\4.A^NwZ1i_k(ugPs.c"!]ʮePd $=߉?c>yc`>:H8@9N;xg$ ATCw~d'~Gz\g%HAXZ|uuS0dy ~Ld$NzblA`ӯX^C23G@4(* [aI̚n:}HU{M F)AylN7Y;'o/ i U5B0{)d`r`NWBPWۨ'gIs[` ÑIX6?x#/Ͻ`P*WY)PͼZ4Xr\֭qg|)uNn*H_2̲ʲ2w2O-XVSbD֓NEHyTl|_Àa*{gWž)l.JJ1yiL6m.H`RlWuF3.[YE}g ڙ']°Nș N5 F# =vc{6/4*U ha祋4"0{O$CU^:'8GQ% T yE(sdۗ|W]T6 scDF[-6? -p[TUK&dcH 5np+J%}vy4cMbU,%[%g_(@,Yd@sڙJh@ו_ .E#>&mm83lJGpe >7 -$QĚf4~6T[l? VzF6xU\LO4H&Nt6v?G*l ɾnV8v01C4 8 @# b.\L/ɓ@ȮKlXys_t*{!y<}c(nfCt镃Og`㑞 _p(4r; T'KN.2:1MR4, qÝPc>)sW ?QfsW0ECqUč}ӬS0 vu~Gت*B|]կص?pL0;8xw읒d%'#Jxoí=ت;hX/L Ƕ 6ػBtљ4MqFTdNWd UjWQv+5!iK3]jG& wݤT4uȫkP@^>OK؆ʢ| ~2-ś>*va @|'#us^ ")}dbܲ3kEJObz(oP_x= nh X?o]Ȕ0| \3SQ7^)K7,Zz~viaslXӰ~737(2xY~,^5a?w eAF{nAgÝq\{+aҙ# X"c!DEQHoZx?=KM]v_C{ߢg$=Q=!gY_3<֍y'-["V"|ЇID4!ôK![+ S4Pc3ع^cӡ%6I:I4_L_T o A8yhmkt/ >_[GbNŲ劝Ǔ3IMRw?.dUK0YcmJn7yd6;!cvwfP VUnjJ(܀, aLq7\rR;XhK<'8(FYO ǽ:] \IgEo{YDpQ] oaSՕYF1m*+v k-F"B.zZ7iwL) A-NؔK֟sF絲20;BI/ {PczL3؏ S%ZȯЅE1N;d$'H*Vg0+j?FwN[,0a!k>L=,yp}4 j#kBD4ک o(| q1YVeM#DI[Ԥr,SofMPϳ}*=DEr#ĊVVLxӦtp' w}fJTapo}(1K'}&yWFD'Ŏu> _F7E!潤I{+0 PqZqKdȿiG ۬!uySwsJN')pd8fl-}6ٜ@m8(S*ur3R3ˆ h1ݰ9:lFS ?&̎m *rWmOoo(8U4p b?)D`xsPu4t DmGÜ E~[=E+Sh):t!,ĔaVuHLϷ6{x2ncQ2wO4&9&Mcۈh` Cbp)թr3t3>x`Ft:WQ&fIK)M]FݸtJ^ɯ\Nfwq0&;2QͳA`)_m`fzC1dGB]L㓉_ #D )|p[\-7pL/&)?&<eVnUْsLWM:I ‚k30 pߑNA`h@_nqolFPZ stQe}9|piPֿ5yl]!!"b5Z5jHac x\ԙLtJ>P 1g2:a^i(gDn+/]ڹs]e"fW>r˒ 87e\24"̵\!+p/yUAB53:[{|[ |ma= ,ZϢʩ0kh?^G 2<ȅ_kC&_ΈCDG;~XwOZG`N$%Peq(*ȃŰh~Tvuڇ"݋CQYk:A/sܹd=~x=e#7USN˄5ȫTr=x C_?~HY*f{M6Pg3;G@r:i>Jj7RE12PD;QzІ갈̀D\P}>7)6}m^aj/_=(C7uA`yʀYB "md-yj!ZQW."ť+GA[#rۼ3:\C|V.d ]9#b!axDqZ2﫧굧-R/H`I2jayyzÉ\/29gElq< pU bw$žajE t VFt;t8r_}F/X"'~#K4^p }.s$Kˊ8?{.L!Ʃ(լ[Smv:!тiS@3ҌLv^7~ʱ+e}T[VⷃƐ¸C:Qk#DJf9$T,^!xzSLRh`?M3~/-yO cNAe%#]v(c5PxYg28"R2xk)H:څwSaqlU 0Tk*WI xDdoA tJ,%xA6V&-[{"i f8cK8ls\oS*8y0[VU5C?_H՗ ʴy!ojb:Yh@P(D1y;!ٗ"Aۙ\N 5YTMS2U|%8?rzKKԳA0X~q (>._ /)DLJ oB43o]`&ź,~ PwTMcO5AZ򁀥OF{r3#xv@KuoP=E|A^(ax[=GnhHkKTU#iȎSZz![3cpnjVG\s@B=+0! E`=7h)[+qID#gYk%x( *iG AoS׉PJGI4+)(EgLq&r K#~|q7tI8!4M5  RfA& u3ew[~(C!7M+6З,zݗCfC'= 'd)ONɖTjG.rϜ7l/; ͉EDz3pIDߗ $.|q=)<#y}:uw,@SuiK=d}"#yNOC>+é\Ga&c3;Nѯ5vStn|!weYC U)-GbNRL%)%&9FXQʔȢ9KO_WE@?cPQhe`&< X$@^]ISwU<)jtՉJBL"m, xXq.=^hcQ`ˣ>cMP4g,5<^NOsj3Ox ZH/7YK/,HxYo)4><\ HY~[ljwNS+7>nON=FiYaUrE# _|eixu/'k}V*^fFUq&bȞ7>7S\}TynnW=zV19RY#M+ X-8b<莑jrj{nݛ3e6Qnl3`7Syq5#uG1p.B#-TW3Jz_%7qvÎ9CڇP=j&0eiWSB` $^\DPH.6قsA/Z[WʒDS}׿Cq=㆖ ImRƎ&-mkRʰUb.xZF]K耙&OM$! *Ȇ_ʰ&YXwq>0 / VĦPwIV8ijάϱiЈ - 1! fWGl^„(_Զ A!`+›Lpn$s)u!",YK25 Y!ȳăf$|vľ*ة<6l~tYbqpI :_;_佞 G `-} &>IH%E6@]-Fo4XT{C'-z/"rN%f+}vcM4 JRW9 W\&D˕1}.Wc4{t+'KL[7<*K\N,>fckP&3CɐLst'CUA>YWywLTеkbi%qs%@_zQr19Hȥp8(A%N1DZ5 "8k\<^Tª~06pUHƟ5K]Mri.k Rqv{tavn3OFwJP}N0/i-:s9>[\]4,,̣Tg[c$VxFW "% {ޘ3f[怾6OV5 ObX$+?/e-!4 fbþ{0$/ZgahJ,ȕ;'L9>2/.+*ELPL{o(- Y~c\,p{@C? \+`}̗qv!:\v Q$mЅ DaNac*+=M,s|ʊ”W u2DHߵҹ1|J39 ajQDHt ,@q< '6+8#*ăZ1&LNB {~+XiǍHkhiJÁh\.9RUR9ʪ8zр` U*:5lB4f[Lw;TW N ^|Ow݆EF+%9P&8504kJb2uy0^qй>_( \L,We!QChdDgXo'X $J(1&j2 uJex} > ,QKq?n,,C2*i:f_0XWH$)hn%x@w[ϓ*cT|qh5dbPx,JgsfSue Ue=WDj4Dn, c$J@4bHӴݧ9?´6.I[BWNζy:,6Ed6tsXïzm "6',t1'1dWuZFj߿烞bx-:HpWH)>, h"ǚ%fGVj"GvQ?N#g|WJU4a#tDYnQڬGWG "0^|WJ݇ b#uJ5(q!+pY40Iim4q6rD'5eGG>2?nG3a28` 'Ypf져+1%:_ Iԫf\fgm.bЮ:ޫȲgr] "cI +dY!ȿcwhK˟N9LXCr2T탽H&<=SlypZi{#񿎛_n8Rc/ש:\?W`QE;=>I ^?*p$Mʗi vVjTA|G z-W ;dg$'QC|=|/f0O'5'9͹/Jf= r^.:@V;Eh7UD4 _h*X.aԳq EH[c(&ЦluKfk#.)Vh(L-[o7ov5"ґN{vͨ'6ѧfeV*޳bx t3٤% vt[l1pme`}@e:!)Lbwf㍀bfGkmioZKzܓ|LVpVƦl:0 X!& C'f%P[?xO *k+QB挒;Jox"B M?(x9>e\\>${f:_wn1_7 f*BwIi1]^-7!xg D!aԷnY}=j@i3|h(X\ğveOjP`W3Lmߙ!:Dhd`4ud8ՠ]]j!`?J +: Nb!! =z!QDHD5]Cԉ03W.Kɨs^9}g)5z|y{BD,j9HY^#4Q3X ;UM])N=Zթ0S%+,;xn~9?쑉>W>E?ʺO**~`AI3|WLIUt՛ڡ#A4^}% [$*&XE;'D] f'FѰMMc4v XW(,KJNW+N@OU{&cn[(isO!J 7ku=载fcۂU''tnlƲqPv iD8Wu6n /Qf\`8"ZACȁDUe0KuN%&@Rb&sKA_Iyͧ-TN|(dKabv1_ 󢂄 䓪OhuQL@!m/~xEj-"l<5`Or9e49}%r%= A(Q|6:U-;Rj&$uXD1־C՗J_m~1$Ԛ/\qJAGW$x!5|z$U{܁^ C; p{8{{AUm 1j43įf u u]wt:=Ey_-H( ,XzFl;|L;E*Y45 cn5 r_| dWGPZn26|(jX~Ā- j`ةphڋF-sNdBw9+> {s5}  -ijI{[I?locod;bj1J3hs>&ό%6&7wZ׎5Spg8x6T!z< xGǦ FZ]{s>:YD8 &6>D]1B<_VD0Lhw'P 3tâgʉ[BHY:"6"9Eh pH`@3M,7k/'^ ""$ FEeQK)hm+[,j(nү7ZB)=\yf#5C{ECۊ|p1{sd}P >.ǫiZv.!0F~e:-?]4\jT/rBe,ʥI=nHW܀ڠͲM,1;.10IMo;aZ>;ҲwX b,-3rWw~kL'V:Ǔt.iL!e{dE$R7v:Z/ ~3BSs5śHOf^3\坢aMO,KcZpiu,YQAl$(TfК9*I¶J|tՍ"eܕÁLCr N{ݖrl]̎Jӏ;ڠg& M*oKT[ʹw0mޛ y* kW<=-}>P5IY8MrE/8Xq#Bj<(BL8a5G>lV "ÈΎw5}.0äODJ2\,@yrSp7 a=HB h_Z"Tj3z0#~j}TZ S _c( 2.e;k7Y9R#\'oA[f}h2Gov'YBؼ);8dudoS,,2kw}_jS鯣&,_~XYNڜW\J:k"XK{eJ擆9J_!ދ1'şK'JN_v{lB~muWJдF|Ϫ]T򔯥`' .ćJ ^P[)8\p5V=gmU+w%ލ5i{zc^>Jh=IuA1sw栺|E1F>[t1mZЙ6 5mxW$](`t] ѩu_> Ķ`5 hybITvuE\WLJ"IfpMOm$+$]wA/޴1E-4 t^31%x &Z/R5+ga ޼+2A&|h.Z5)4SKA52wGTVӞo9z2 tMr^BW2CS^,=K2|k:NNO1UjN j{ǒIca摢ZfaKьlC,\l$,'/"^ Y Qm;>s(ˬ)3ޱDwkpUXeE&& !'? ?Ѐ^ғ E. gWџ!TK9g׀j=l"|EYA & (ee1Q(̭DMHܨ7MWA7kvbo`7TMA% skYpK%SZlHS#^OwV"J<=Fy lg'f Te#'+u kYZ[̓9iU͏5_ꁡ<XL0 X`ۉ-cQ^,LyTD; Ss/{2^Ap6%[Rz)ıUXݬ}T&E)̽+Ӥ<>q$ W4D]h* C7q⮯_HD$߾$u(dh!uE09(Ǧ,R%4" ҎHX_VNbv r]$`JPP_ !AkS HJ5tl7J}!4NSCRR2ksShx F޿*2Ddw|0xtmzIT9Ÿ Q|R!]rN,oF ]&?֝]B@fE[ܲJRF0y"|7rL**Da[N*&1WYs5@9'8O 6b3C])J Ur [S^˃?׃oI#Y*[(kwxƵ[4aV7‘)a#{ztMITYѮ9 iUfB@\ddA~0j9zv@ |~`3V*?6aF$sFS]h#&ۧ s$ǗҠU8>E#L Ycu1GՂ9sTG1)H@kI5B9v#/q3;tVh^B銭r㦁2Y OK`gN,]ʲT_@c){+̗ Kʺw\t(^ +,rF-3m/ZHnr\7fк%G qܻL)SSǎi1R{u>G^M̳8 Gv֪Ol޵{2=iM SNnB ߸z,V_nƂG/=yȱ/ggش#z?Vg,l4N(Ɩ*2DM v\(3-t.=pM GJF+~O8E#p1q AA9Z$_0|@X{7x6ϛsکܑCCIeX -©G}6Y sx[75w$?2t K&+2WP;.!, u$!tDV~)ٰ $Aܞ~6\@C|۫*wj_r>+ir5-Du +zpg~|!~%Y' M^)^]w}g(dTy3p*fөϴD&Y:{&)F{omaT{um[X/IpU0 pmYOP_A/[LjZ6JTD'CwDL>1a Ek ~?X"L#K=;&H3Ix`sР&,{\(RK<teP:eL4/Y%4b=D' D^K+CM&Иxc9oM&jySG^Ťf^6z%@aItJF/ ]~U#o0O.E`>0QN.a~[w .\ q95R%XX@;%8_8A~k;ȋ2Y(?.ߜA ܘFYinh`OnfQ. Q3n.G+s= O*`IY +6V{+w e[jgSMk5vV.Kw~Uq.Ql`ͮ,$}J Ξ0Y.YBI6^0p IK8+AǸ%~¢L:Lj Kǹ?,=KZ#}{Ei'%aFLWb_c=^iBLOUT_7+\1x`'e$3z6PrۑLQ'2g=0H+~ 3rΰ; NXi1Xp4/TSm::=dI@$[GԆαd"w7z(~taX`w/ Nov=X.^ʣ7?]7q$?Mj!yZAȔ̬"ꪳ=t2(&“FaD !L.f }ȟ?lK#`y-Wtxd/f6 \{'Up-sXR`+ivS^]|{S~|f"uRs9cqۚCSXÅD NW$MAS'{Dlw ^ü)'O(3 OCl!]oTq밮%V50Ƚ𓻮v_;} S|yI;V-[l=8N-9-dXᮛك_ޏ։Yd|;jlki61x%;~n`0ѝUQz\z2'-0+AoK8/+e2dClxyAߕu9 h=abSMG! 䁤:hƙ gTz(~HvyS]nvK?|&  WIBWJ9Pc( OAL;(\UZ[1&@sb$s:j$MV*09AKy uTR#AfbR!7 arW _Hn ]"/%[yQAM*7 o gdBz`ԑ 4b*Xh":@i\.pSSaWoX?:mfڂBdR,ZJ3XV?ԡ VxnKuZ2)VvV#LvLM1Aް28uR^}ETw`2|lZ4M=؅$[BI;N$f9<7\XA)ݧp2?gwDrQC OI[D,:rFo+[L̻\Nީ6b,XG-,̎ }l%`|) Ubj? iQZ77OpUH nz$6a9ܜm*3\pY @|rLb(+p"7WeUo/FE-,HKRM{zϚI-sgWtD_ohZ$;8?5.blOETLoi &(( p䉍 i\ig#!BSC'_{bRH/G 85;M18)ykXa-iKTuMdNURh;MMrqj\Q78U<B\_ct}*ɐHlVqgڱ!$grEs3JEye(Hr78mj! ylIzi|"j}_h *.F4^p( @Ly ?)5 T/'yn7#o#/*-Gj};"w'rkm޷0q7r|Ҏ;+Gk5aToW_0U0軘%MAoS\}y誐F֗43fŒGiz%ddTa~[ Og߽.`䫈1y d$?3m cHnzLq>=/꿿0|`DHMt 2@?qEmb+ GE.9^+!"y,paOY2$O0uRE+57ƿ y_Z`'[H`a)V}ꨘ |LG,|s\L Z,MQ{I˦Eyu FGrf6Qgl,@eX,ai'б/;5R*ؚeF}Q'EDٮxS6OԬl~hpP'}zȑҮWYAP+"[ %?xTRq T(^N4c# J1z st֮83nyK9PiH@%/1MH{ D$yS[:bBl";Xn:ӻU%wwWT 斸F>Q@vW6s7 *47Jͪ%t$ߌz](`[R!f/bh1H[9ațKk6:/ujlbNoCz y0,4?1}ܝ3PwvYUy"[tXb\BɡHg'+ZL*}8L)<\E1txϛ^w$l0(u:\")6*XE\ 9^~CAw!pYI9GMc5-+U99Ğes=:h@ \rU _M9_2ryCz,:w.4nKDgvU-=rL.5'1|F +͊ oW9)k7^Ķg=~ ^VHjQg^ N&Z$CNK.aY%_[%6 CNL7he0UA{p'c^'cNb5Qh($__4( N]K?ND8,ƣh5< Ce?ƶ U#wf]a * {T/"YƟ0>U])+?$J{6agsK KҤ @4 {ra|Z8%CL>}&oOCڂsCQk*`-s_n|"=lӿS Jbb׆0)c?#Ю^+<` =mmϋ"Y⤁fx>dp`TĠ:Q ‚[×KXL[nh/2$M[8kZtwdsȆ2w訜5gW^moFT#xJ\&+6 XVf0. euVxExSv,ZemyQ 5f<*PoJ8^1 imz.UIy*5c`:P."pUȸpצ89`WufҨ"jĴ.C*K\28!*9^#w?#%7i\3VA-=Xά>7Âuř1I!z|3)z)4w5(;c~HsU GɟFե -&%qJ>H^Vr`;}Õq#2jsOR6Z'qk݋hUrSJ0L:L,c(70V@+f"{D2pB`PAQ,]2VN ?*5ӛr= ?]{hQǜ[XBnTi^J7`|iN%_'dId~K0M~Y+fi78Af$ =eDjy1:tl Wsxv[" 1~QQ0p BP!>Ǭ0!V+ǵ-=[OqPXLsQB ESoV3<\ g 1sڂq5҅PU9 ]e0~ V,`/sY./Y}gHQizb{m:3!*.GIQw"YU9 BΫ$I6$]-ì-ؾː6οә>zvh e\+Q\LHOzu?mZg )UT7[Dh/[eu<0=Q'Dq5 ȕ{Iтw% @Ep(B\Eghd}seqJ6q/׏W%gC wQ>.%~ Yq }ibyx;nw84ae/3U:VG3`9'yj^F,SfJaxF5bf}Kv F\nY^eP݁ߠVϳ!dƃ>@ڪq 2S DO)췢,"owbbaAU@ڟ7mT9xsߟqYD-n2klgIƦ[u~։X |c,niYTįpJDۙ x͆V\Ducr˞>ߵj+z.K@W-IAkZ8d@*>!{c*N}Jp6omFiV/ su iĸ1G[8JxrUǭd{I(VY#ag y&?O|jS3v1 Dv+m{Mt՗[9k Wsiƴ3%2..(2ڗt5Lb$ҝF/= +fEIҪP=Mm+8>TZR59SN8֓f`^Q+ ,\5۴iaLf^DF!rvq!mv_kF#Tɛ\Fϱ# UջF q}"-˝fkqHTk˖^o!ZNc@b%,^>; 8m%ͯL~*J/׀x@?gtzr E9KS7@ LDr Z"\Љ++wI:MEa JWh6+]ݵ]i"g hOXٳ}s1 #-ݺW3C(#N|m7.kkyym)1Y_G K3|K퍹[zحa; d!zAp`&Fc:e4T#'I~d_e"m} .S۷Zw t4dʵ;gh$ >.jI;OMS̄Vy F^ؚ|ui}ŞZjg6f>0m.StYXdK֠'&t!hK؟A\Xa}2A(aL씦qշyQOl B>.z0 ̕^^ a\~&0R4&ṮpLj4|?in+1ƫQ&т&P>ou4!:^,|{␱m3RܡlSm: >M78ݟ=o0ݭQD {7υ`u؆k[NNĄM]o_oWQߓPMͩWK*N*zDŽzA5^OJv5BٵrFN$U t[Z&4}@+82 VMcÂ9/jKӽ˚lof }[.WlXB EZoV]<< ;:p\P.TlG$@=0`O8t [pu`.T2O/8Mk[z2 [Q9`rF\eGݠ̮o‰#tHgyng36`IN6^`#$1W@i -cleHǷGwt|&'R.!:lǐ/`.z'}{ ;&VD,_bh|0gj;zk2f=:}й%ضKb©{{Fxp!s]bt&[̈́)_#RLϲΣKϊO䲧^PofwLx?)0A愢ĐJ^h2jf]eMs?m;y -2#>LQ]MVx] ,N!!6<3‰ը:>;afcq@B%1b6NȦ [l\b{?2dΒ*QS0LPʆÐItB wCj62ʚgQGLe# `Gx(m`DuO Jj(QԨ5[О4DJwR 4)S$:$GEl7j.v},'ݍbyE5D/sj"BnY ~w 3ĽYqُL3ɨ:@;3d؀ՙ&;2w3@HC4{Uk4 E99Pzk1isq?բ KTmFȪ{3gi#*RU¬hz30g/E+S\6ƦP-3/m~b#> 4K'9Xq:~S4|2wӬXƓM%Y7C~L}tߘgIaN>'f[a(4j]`tg+UM`mHr|b fFIVjk[I_U70ih=cGnN;o#PA el_Ŭaf#| nGXc7V][}C8aw%/>y@;DɠJ~zi{gZ *i7K`<@DuTn#g5]lj1x,+7f XFby,/VU Mr(jۼdv4(CꙔX%eЈF뷓Ex^X9ˆR|r~@)6Sy;>JlC$B2I- 1H 6N*HQ)'GŃaRT["zf⡞۴`1їƪ]UH+j!GQ;}!E%Ʈ,޽  ET 12P$6{ݰ̬FM}u:J/C8v#)vg)4Qb$eS\Mo闈0пr@_@Gae }-Zs=$e-E>q)i<)qDѥԮU;"-ۀN 1uvjN㔃27$pM&Lu+f~06*90;s`ȟc׸NDm"#YxrGp@Hf%ERZv 素P\+Ĺ1F{yM%Rfj[hSz `泅z># ^]"pDePiqv/hkQyI,\XW\T T8B68N|8 > y6eGjGpYmQ(C;9-M1Tռ&dl.|?}|5v:X/ nA2J c&.rycV6N'W Z൭xUke'` +ϢsPZ5S+-^@< 9M.kǭ%~G!r"[*#/ֵ{R ru{K?ː(hu;Uކ3NTu^02]+g חgkf SXa14av8ZMT 1ik~5ܻ&aU}Ba$ކ)7pixu&@YCqVvw)e!欻 SCLI-ÒqA|'tf;m 06GfbI<pBvï4u- u[:8fuJVulkBk<Л 9g%~~T/ 5㦐zXtX{cĆů4\uMԎ LD:W R=N9&ۆ[BOƻ3Pu#-W uboW5(gޕv?t,0 Y7 B xi'0\yJǑΕk!R3@B(ppx OomV_jE1@s[M5l@;|!{݅-xA ;z\5aP({`c\(*B|py1 s7Gvx-0@P=ȿ `RXjjzF AQ"ADT}<rK#j.T4qNv!aӉ"p3'913lV~bnt. ;Sr"͞Fq|r-TUI=ZAtͭw~eEiz"@1n |jX2Rl:2ni"!:u(%dva`Lܓ+Mn'hX̡9SK__'`SzȲg-qFȬ/A8X;O{e$#H{!Rk6|G I1,xG^mtPi tq%'#1YHU}J'&491Φ \ ϐqꁺ-Ap'੧GE*S#]8p>?:h{_(aux2>V9hwHk#֓w\3 5\{yMXf?=$]+ ;hNN6l}T!&l2fpL\/2UI꧆ƿt?Q`A{,"PA&KmUc06j6uoA-Ю):oV@:HE0-ě+[GV(j0F vRWׇ<(j*~.PU|{z'8܅rtb \ĨAi vk9úG ݊;o+zfb"+VgpƓ{1^hߜFvT IJn|+2J8z &eIIOXn(c S( qc2q[ۮm(9Vє`% ;hm2ƉpIFz9`cJ@FKFj(}zi@װAUp p&\$H7ߓ:/M^Sj-?dDR͛jul 4/m4 t Z=;罾y9oָ\&roD6=llU;~X9Cc>PM`ēʜ0:٠e!ɘ$Rv?ɛoqgY6]Xgv{jt(^0p(U_?SQdׇ05=y8 !g"K/9_ۋ6c w/}qys@p(]3öV8q^Jy&lELƳƯ9x.LС*}|N^;>=*sӲ-]u ~wEz OPl>2/+s8s-.ҔuqvXP:կ5@!,`R^Ɣ~ʔ.(͹09eFۚ_:_G4tZ qvҢO\-`E"[lNXǍ~$y)_C.Pe7QAsXH:Oڵmh4I1IT9: PNpC#DW\יA@"&k" l T^!I(,҂ f㆑ս]4դYK/N(==9콋&7g)42eT7c VmT(' s`t֝eDg))w`g{HIlW9:HAg3o$i.ͺ)͠]Ldxygĕ윂iL t Lz_'銾TM7TΙm3FeU(+Bi  YVD'$r,N;TW7rHe喵\/ÆN$Dp31էX'eOV }k,o"UL&Ngֽ\~{s[9872wkZ妔-gVɦ2)|+<3smưP7qdQIpp%Rlm8#li?P[֑p莕)*wD dk>fh*@2G)Qj; .Z)Ab !M{36iyz9i P׫h\  X棺T7$ǺU{rxoΫ(W XgWD`6wabfqəDݘ{MXk)dYM yA6g !i Co`$*uY=SvL$Pv>Nӹ.YN dDrJ:䔙3_U풚ٽ~ mNnKYX-.\?"9)D]/ od۳ɫ `}NfԼWݘA4&AF󣿵V6i~:QԠ|u*i&<8%{ >LvY$L ĠSBkԫeʎ+]7z))͍nqs:/Z}X"FN0]0ܻCOQ*HBWl:*yZG <^-Ӗ3W|k#7lQ &TnM[?a+fYM߽+>L6u@ğ\%sA(gxdM+:Pފh}]MYoLaGFB=&NhK~{cjJU:z۹A"|s. 4s4e DH?nbOnmH%׫wa&ATv&NOoRza|%gr/UVo.ū>dBЄu $m4C`؟S9 (h7iPK8;4oSԣ#MWuԻt2ds+B/60`&lyak ušBD+loj}(!CxY܂ҿT SȮ͕,}w:=/E'feyХ-Q{&C|^r zgE.{ _QLj}O&Iy)\ָ}o+&,QsZ> L.QRܵm%3+D;Xq%-CMƟ6j1j9._%x?o&g㶟Xf;ypBHnzIi N|~I6cj2L+l3Ӕm lS?"7X śO?" gߒ4re]Ri]$-orƠ^ef5x2y;N"*n 51ֹ:Jl˚j=6-ddC1 t.T/U<+G7]8~,eAwG7&5b?hF~9/+`A75V_ "mI3HlYWWqm䣮-5Ɏ*}e{?sW"RI?{ryB`eh֑s/|\J[o48Z$d9ļ5D@sxMrW 22ՒLs$]ж'!a;>Vd>R$ $Tgyk,l ԷFJ萛h=<xC㏗q z5 b}o}Aa b.޽! Ź&t~ƖH,&CqډpL:BZ& kaǩ&BFBن>c9߄m|Jbθ8my0;Slώ#i]=ͳKj38ib!D 0㒒iQlǙCD_ycp!WمSQjH6)P);IUx2TY|_]1yvDe#Z 7ĝ;t#F1/0`?֙J^be¸٠kzI(jޣL^)ʼDBeqU5jĄk͚[h4pcg"+Z ͭˇXxlսB}CɸZ|]]0Siu0 kF br2PJlDȖ5Ϙ >oIߐ*jφ/LJZ%"8{BPe\bv-ou5Aʘ{sr`Ywc;}5/p΂jP\/2a]G4oнS0 #ڊ7UCK5tӰ.WshkfOӌEJ2U/2Lt:ڣFzз΃ n]0hWkU]JQl?g$(y.bnq1s0@}uޞ;b(o:|N-&i/RaPD cۭx!S]1 %y >q2&%$3j=lLY%LcݎUCt@7/R{'t1g$7g6 6rMuHuFLm V5o֩@g,'^ݖ-LL}Rg/3[ۘo?jfuVn/:|:x:Vp:;'SR[*i2O(y\"bQ> N5mG kZ̑']@Iz:Q|i2;Pb dl XbKVH9M{ Ne % .Ҋ f~*E8oQmmÆzjvGfZF_HRp>rz>"Kw:r7zH §5 X:ZXuc8YC84+$"mzC : 5 s-Ý.rFa760 ݔ;DcXxDl9݅{-X%Q=v\Gc !EnJu Br L<ޢV 3E>Յ0 7_Pe/V=Uh4:6?d֋uf7Ҁ/]eőQ@#ٌ8BBO_+_,WBgU=5\ 2C4Iȫc-DyAIz?pʷ4)" ZBW)%<\o 7 ȹVUe\7[<7TG }ODQMZE);% q}$v#GO ,d @J#}ctI8JKg{ Y kyel'Ë(GIH䥅V۪zKCNBGkCW޶\#byR~L|o atJ]cN"*M&*,i}T|6o5q^L-7vٱX5J#j,>%^UKOv֙n:JYhys^=ʍEճ4u1EsUCd хs@zǜ*HtdJkelNeK+"DGtF6Xu8' s0 8D:#GB$;=ޗZ`b}z+pz:%Ȥi>SKGG>]~^Sq(|)-ImBcYkcIFNzkrRh{\4σpU~~p ^!';b)~BĬ6<"BBMbL*H'[" Ī^ۗ2l 2iE@Dw+"{,eFiRlYBA9WY1O%l [g'43vmgÅ,9UnF=8H Ҙ`*dYm-r>|-mPAYBZG2S  ;-މj0y[ ^N {%08K%Zz?MM]&clA=Rwd "UVjCT0D쌄Nsi^o b.y@-6g#Dh",f(j%6 [*b !Os}P5$kCl,&XϞ79kOY"'j^(oz^&U^Sci[wAzIx J[Y6y-6dF{o·ݺn22MSW#p폔1WO4f(( ABGQ?X0T(+bE G^ D.~cH(DZ|"_5%k[aw.(YhjSvKPqNBԃX^#ضe$}U5 C>LΝ-%@ķȣ+_<"B POd b0m=2v-3G;eQOH M*>ˀȞ@/MzJuJOF _QNBbuhQzwtF ØGղ 'QRЛ,xru.֪ͺ՜8Eq~\..oaQ;@u' 0ANƓLR_TJi02 c4#:i!1ťK 򄊼@+KvWS3d-ϳbJ|ĺČٛRږ bb1+(0 j:bOmWcKj6HR'd@B5#\oG(:"SǔL{ѯ9UsdCXn. G?y#;C[VE?y.(k.0O,J䠪5'^YcPY.T^^ b5-Bc`hVr3|3/L# Z}0/{? թ[ 2a%q7R#Cb(!fYGyݚi\%دWg c4J|uQ6.޻(}Zߝݶ_s45)P^l1}NOF#Tde}9T^'拘ͷMK]dpGzzx7)$R},wi.E06!ֹ+Caz^Ecx$)nh3Je%^sdܤ>O%Eُy6S;uk rɚۡ+OR^Փܶ%~@UU]℣]MLu;T cSh7=VRxޢZ[>je/Mw|YնT6ã{=A1[/=ApAp@JecXϰ#Tc .7~g){-4xRiLS9,!%,)r<^Q)ū]rYM'jЗ}?HNxqiRvXC_1'P-Εuǁ9< o늋&Nfq-9$"w+a~>arE"_hJyIծ++v*;}k.̮a kL\f$G<(򷪜"їܭY"X}C2mHtxL+X})02☭A8/3t1o!pzvjCW2>˲Cʌ sOYOy@XY!Kft).3\LRp}z0ۏt!I)6ޅ,dq,|prad]b3z#*y;7 \'ЋgІkA я&y,9{4yA?kϺE)_rYG~餘ԁ^"&Sc} :痠aͧ~ffv0r`6)̀vJ"N7va(o7{PZ3dBwߜOOÒ _ dqj iYPҰT>STN6C:Q:ۊ ^\_C|c ʺhʀnGLN@Yu:u$ڄjnP,cAf-tuoP9#jftZd(eię5\0HLk Qt0}W/82C~8^xݏ(d҈وh.qZo*e 6h¼ʞEg c3{kyg[MsJuBˉ*pg5 F\D0GelS4?J^+^!2%MT:NZ,0MMFIAYs~y05a_B4nOnN(& xGTlވEE_5b &'*뛤:7en?/|Z)iY_GL~ JG/[IlbL]BfPIybz 9jf?᎐GޣzC(Vޭzt}q 6_/ 8.yE2]s7麷#\nsǎP)bm<VH,-UR/>U*\ϻ$ym=mX8U#GGx&!PobQHӃk/쓶 6R3 R+q᥵6ErsrKЎ KxD|1ac'J{;pG*yye40Yʑ p䵕c(%]?>zWʟ&9dkʉQdmZ2UW'T֞2aɻNE'(zM}@cv@VF < (;l2 P_c2sj&״o Qlۯw11mR0,!<#Bi9zF$REYdbXL@:TQg7PªG y( .lPx:0 hAX1+`Ӂ{D.c7UߓuRˬJMT\~K |#LI&}יe,d(",7f>_y@!tzɉ`.,P7T0N6UBQVz-M&m= MUQTȺyr:WbYnt`0[[G~)~. W"bwkX@E >k"Cא6|  .Jòw`:C1[c侠;FJء|JQIALimQva2[?g]z?F/Y%:brVtUϩLF96nXIz9 ?l>3$vwSIK$8O"`y;lrEd&ΎJۍ9oW_w|ukP:SǺw27zYbZۧ[hD%("Ljl8} bRH[4tC8@XHN=YKw?KnK:@r0Ewd×a-$6(rqXdf2 _as ZS1 rrfx4Hճvem?fYhA֌t,$a"lDɖYڨ`~HQ.EnͩwJE3*S{֨xLJ 8SG֘C);Z:RpjK v ' JEK'^V `d R]Z13u QHpym ^(ťCJ^.aKgѳ/κ:̞S o Ca3(wg8.-dQtxW pv-0i= ؘ_Vka3u1p$DC]펲/菥վ:~®i\Kg0TBLyt_Jㄋ CØzS|{+Deyi+'%ɓd;9M~_ǻjg-)9R9,1]9,+٫H]:Y g6ޔDdq~:u!%ّ=fDa+M#gSP:Z@s"@%? bK]?ѱ,=+hLJd?tJZCKB ha!R]rSKo3-^N5[  &t6E^j!q&xtL h8gbg'bLز7Lx6r""b㹬&6yKy+0C;%DOoyZ p4,€<T:FS5tM6HQL7?Ԇ?80FOd$A|Y@+Nk;s]G nubxX'hx XO ILj8JR1s6! sJz@2Cq Nx2K@07-Iph2%e {xO˶:M++nx`/C"nd#[DMY5Nl\/].g$?jP1/łZj U1%D2B9:Ъ>.w5mCo ˌ3dKCCςwJ T18uW u s˄fn-G.^?XSBa\V`XFS  IG4*XAĪҤ<=`'і±S'q^pe1-5Z%{~JY_C̎xޮs "ڳg&TfJ LW)βn9_تVcJFz3L_[z=FR(d۵`80rEcaݓ#HH YQ`ec'mRxʻ~5@2I;<ߟ~Q%Ӭu5z!2 Rm%`u&r]1ez瓸Γ=PBq^9~n,1~Bt+ ՊUyBߴTCᓴoZV0ɡN֟Ǿ#lsQf!'Ѯ0Qv-$c(տ:B@n4s^FKΪ=\aNy,CPCFR_h:KK,$L4-Jaiۛ+3,Hy!HLkOѻ2*X>"P8DRW rm.Btk//-6enX-Go.?:Ijan82a\~  fO3bl+c8q&aPN:yQ]{%Rwumu%m([[ݞZzXi]KZ!y\UsX># /ϓwHq c*cQ_T82 4-m;uuLxyo}m_XNEiw1)※0v?t_mr!M\fOz)8̳P/?B[m'ceˑi 径3AoXKfUྍ C8S kqF2u7s2Wbl-c9,5P"1FU*`%9! IdR}&f?&?CĬ{9l6)Wp!(M\84+1Jp!د5Oȓf8FI//VӘ@aK6+}≋Z4mi)".RaPX.p8t*R f`F쑠|_"@`Rp^^dF (\m64VLKx|AYz|@O N$ |cwاQK˸ !(JBT m*o>Aig3`Kq@t O7O5N\&Avpk9 b$M7[8CE7,-aQwŊeP `ĩl>V{ 8ɍ6ۑkنRʧ99ǀzYh'F|RD=9˪C 6Si^rvYIPGv2<1fq/Rr_FؼJֿdD/urNE䷻AtCUVQU m?);hAa& *[6sˉ,b)AY{@R C `.tD RN\mxK^ Y#NYjxǿu^z17`a7`}(vgEw252$/|H3AKv}L Hi Yjkq5P>Bn J|z y@;5̶FM=&؊WgZ(DLv ̝sNҷPXzǂئ8V [ nhY(^u7m~BKA$M aC2,o=9B wcv.]V4F@mކ[B _L^{ QDxp&Ju%.)`2iR:k͠p)*4g؂atx5neYA0?F]ď&҄GȺw5qa\p١PY!u!'VU&Sd ?LLހ Q>HDMN yX j+x"RYn X,YTXg"-1!8Tl{藜TTBRtY:Rs^"S0yFW,]!*:c6r9Hݯl0Ddg=_2"[Tƥ KHˑHT5eHX<.k30q5"-] }G}cLQ+x \"ȮOe:3Άw!;i/ZZt'W2tIC1/gQ|ג2щkrbBƥ&3;VK?gcJ>),ut*uҚm c\೨i4k|:&/퀔.}MPGn/P[ggǚY"3nP  HA˒y,q-c@Ͼ_˪6.>$%5,FŤz@Ho>ve rձiR6es˨.V(~U5|HW1u߮"Jq]3P^s/f.8ݙ` >IT__2S4ԋԋzȪߎ 5 n'v@}ߒ42ltm`Pk|Z%3zBK 'R$N* ">&vHv\}Ûݞ˸oF;"'̥΍2/@˜T^Qt_97)-X ؄aqIVN mcC/I^sMZ@%ilzަ>R٤.Hi" /#NRn;3> FɊ?fڕ Mksٚ,` HBd y`EQh',OU>ӞXs;8g:`=h(;; $y>&4׸.kRALw} -!4N1{ Ph@yn5и3FjҢn,[E<ԁ٠jˈLqה ^}oCCզgTBp )!br N!JرZ.|B?H<6`c(d hvnU^ n? /u0Ӟg(m`A1e4GbޮMeSn:5і$Ɖm1q>.M\'x -/#9oZ􆉡h@Ɨ 'KOlN ɺP [_N-"ԺHPt  4lq)ښC8X8p.mr"O-F@_:@_O@LtV/s`HDIul,i¦<rc[]<%[O*2BX6Vy E:F4>(Ѱmt!d/GFd|vD *\Ijׂu-PJ{K@WeiqN[ j¶mP87 g];XXAHCp @zԑ?p\ \^P;\F3gX?l gFO<׆4_ckLiìsY{&C$*î.-@QsXړ9ZR\c M6pp!X|~hs9T/>*06yh|-񼈓B (W_I-[}~r.j -{#4)"^jcvBT]p*w;jY^WMO'|)ʩa+̜A3 yM;g`o_vMvncᇦ*J &{-#q J0AQ~3) VAi@P/D>6s7%]Qh}PWEj:.+-kQFRjȒK] Z&prUlLA=t$$]㔼@<ۚ4!{*Ceot3Ln,GI/-U'qm裦f-4a,~L'ψsoR_t>~(>Tg?S;- ~̕~.SB膝bA٣Q.SYx<zaߝKC`rjaHlb޿b^d 6$˔_MA=ی3ni! EYmAqp^LaG螦oVGS t&^6vqEYB鷑*CiUu6gTǔ v OWh۹Pё)ӎ<&e D+2x̧%+ɳQބjhoFya?7{DaR%x8_>SB?x}AjY?6oR]>3=@U^(VDx` BzT8vuD\ghпuƊUuM@foco`mg`g4R(" $ %.W2`/-UNNJSywRY M!#- lB_A~n<6,K\eZ$=5HЉ3ZGW-oh/(~0foZ17 %K|\m15zۣ< # NƊC mWv5PTq( )8PHzF3'c)][RRݴq?do M%Fe}Rڧg'ͧ*^P(Ԁ*jGx$DcȾY` u_m,;o%^g-c@zjEOc78Dp{V%Y%B΍Ί l_M a-G9ơ5/, ƏvD'YTV]j`aHIK=܀%RQa:Ǘ3>82S,IrK_QOrk1;YM"ݥfˣ&̒j]r}2~rW, lYĐON ݏLZw#<6״PۛUu!z.Ԩ2)СUg4_$r_>ߊHcv@]d`}M5Ȫe/!ǹܙeM'VdC;pU<=ULb=Vi}'[*+2ď;/O4620dp۠n0h3<_S}4FP URgg}Kj̚."\+HsİTCNZ=2%4%-A Iʡ_0\IX̅*, %X-鍀:جFZM,JE[ct#zU8V0)Z>yld)][(:!b%~r=pP(BF-׸aͽXwkVV<<ԏg ?s#N/トQ 2>;-eK{VÃñC=BLLqg'd^&a2A'i_Uh6|C9p* hCEH|xh+%<ܖ)W+w8;당Bxg "i[cɰܒKFlC+B$q"*Gu7VKnűޡ6inG9(O ]f&vvA+N$~lوbI1E>zKpАQQ'H oWDM\rq.E$):.-lakϷ( bLHpLUgFbDQ3Ny sϕ6y ҈j͡ g=:]"?lNy:D+Lw=оIHeRA"7ou2Ŏ>ꗒg Jz^ϔ'͘tn{7ey'T_xý`B 1s A$"h:1@_ |^ٶZ@sxܛ"°Lt*,xIc%ǒe$d0.8r1e.uelݐ :)(V-2fOs0ޛ'|<PNSQ(GEpxl0. @x1 s&z0Tz3A0ǃiN%SIDD2tYW;w )l/$y*=u5v!cWIA Ws|NoO۔4%֘N>mȒJ[MfE%B"QJ=A}sɳKSCq6בQ~7= } :XZ`T2+<%N:j%{g3Km2Ҥ=,Ue:ֻ#fܟ(` "%<0{u/N LcT;#|3jLwՙ?XNzPQDbf΀bMWX]+@@jApp`kv/!L{nmC EqJr*aG #d.]#8,H2PS$΂<[7VK%dcL>2, Vɛɩ7-~/Up PcCRkT>d@4-:^9Z\pKJh'Hd h"n9LKbxn@:̶N$* "꯮^1,RJMsW 9ӽ /mc6(:ܽVE Փ_$CC`֮bԺJvh疄1RՄou$2lJ5)ՈNIq7)^)r~0\Pztg9`0^&n'~Ӟظ溈ڱk=;/ڣרQc %C}]a/)lfބ󃝘:o_LK,S1bAQwQlBf%u+{#`~CHk_G,$둉+H?޳]pBXyLN#i~L;o%[&ݣupl|`+ L6-(b1qbɗȶ yҍF>\f8ݢ BYӐ tnZi0һd|H]fdKpJ񸆋]C*S=3c;$;"Z4rzS#} ]'aU>S3naT'ћ?6qyt<(l#{8[v}00jQ`{^&ye؆*^.V{\rHOJ(@Rs I֒sI _%9OnpL"}D@n#.fYԁPX_8%9ŔPz p짾Y?&~["CV yj}| yRѩRwYxҔ~gؾ><+9Au> i3x{36x#&f|8J}`7\'[Ag?EKojH5i0P>1R#OnxrKW<Qɮ j2d#$ogD,9Uk=ƿ=ďWcĵcɻޖrdve޿0i/FZQr$`_'~d9\D}R1~@?IaF=8C!0e.AW>p=Dss*I.Ҭ#r- r(>]%fMr{*Cxb۬%+ƒ2Q av7b$ODv(>K6BW??<ү[}U_JIw,Zi u(erڹB`݁b%?Nj0CL>\*O۟tw,a(? k!:_8 7ғK 4 ]z`G•9X5Bx ԺN=?4ihy_cV+#Y57 /^&ُ|(cUcaV[:6AIN"1Z2Fp_(ڠJJ@`"[L3(=m&fː옒 Q%Sdٕ"̸o>0؁+chTc nqL4~`Pz&AcA"!4ݼ-Y8ۡ< d'iKSCZn ^S.1KˉCn$x&yIA&{p>IYy,Z-T4*WNup*.׌ŰASAOϿI[ڎn>J.e>jt*?Y .QO\>)j+Ƨv3ιLa=Wjv)u/EQr={ú1(IE[I{I1s/1M\fs]>(32"9źM)lbrGhn\}C6J>!gx&]-Ӱ&xJH'y`FGKې#"Ͻ*&8Yû L{FR D7˛8i&sӏ_ȏ,`"tlY9MAyh3ҋꇍIѻ/#mơM-! D Xi Vcr V."P\K`5(˴K,G+AꗂIAT{:])T:ÙwI:3HAq^#`%@{4yj/P(K`U.@?EjeESqs$Rk=pF)e?wG0.ȋbg+( w0ٛ^ܘ1anw:.nZV U,3w+x!w{fkwTFÞmR񒩨bүg$hq@$H{?ʗx J?$Xi3}˛9&zgʆ qz^*(êfXakvPmKuI]B_|JLxP..pT4Gt(ĠW>Fm*c??N/̼n"u9 gzu?!)y5]RLM + `ߡ`ױC鬲&بK "kz&jbLVU1=dES|@AQRKߧmDɪ:eA6H@*fo@tX5 Cl#YT羚>7j!6XdqX>lgng ߫Aogk%%\Or&nbHI%u `'), McJ#8HQ;Ʀ*λnMٱJ]²~>r,i\-ތ]?n6 ע2R=u\\02WM~BJP9|"J[}5If1~܃/PJe:ՊZrb))F1䗴Lol0e~d m=+)l`!Oqgi3J$ߜ9I.!&hiid8sRWd/C qJE vr%G3 v2UME9:}VKԟ N洏?x/,XQ:<d I;"_HaiO 5]f S%\o(ʆ /@ &c_W ΉFF#YNȑظ9$g (߁-fޖo Q;-L=8/ڃh S21Ȝ1E^QFIbUG>:RAGz GLy5fR,N m6E>BLԹ~9 бτ?#$M$lF9Em֖=x-S8 "Ud_5~2-h^V eK}%OVSxH5v9.s6%SPfpiW+:QtND}RMKo)H^ ŤEǾQ8f` RYat(EeKYi`-Yo@[s0e{+gsXEᏯ< =6m+erUV7ChU| +L|tzXUzj$և"UQ4D7X$4L[âqNvk^8{\Δ*YXVJoIyhŬYfJ#":K|]YtW< tqE妟d|iTޯC#sG^kJ:Q1Zt;?́y*VԹ]#P aodC^4\{H SkVuΣ—2 Gp/LJR~ZV8!An5t[vFJ COpQ^[j{oz/og 4woԪ_I'DO_TJ16lڰx;V MOz|NG0R~"Io]o{`1=Q'i}oU=E=iE94h0$X՘LU؁&*rw-{=[5殇NJkFd-x GkLb)(dz>C%!fGP)$~r$ft-v_$1!U4}U_qFNN P@1~Ljm>Uq>R-ΰ[I0+ʨx1o6Rm;ԥik Fy, vS2uR*a%ާBCK"b'4NTSD 3 L󅤐j j)eѱʦiq] X%HVHtis=~=LDua҇Uz~"c_[[0( ˒7]IeFl`!IR/{A56x ldWQ?2~[|wdO! ˗*o~YdJ3qWXh":@z;@ Bûondv-e_ԇ 6l+eۤ}qj<[$?aYv$sg>0m,y/izcUp{*\yAiaE.D< l;!6(iqBp>7FXk9Vj;Uɒ`9bxSBk&K/^sW 9nF 5hF WUmiJ[.?A`-ӵT;CdP1gEE#r ¡@_ S}W^}ŗaB/A zZwP\zԬˆ 6飥QO{䧺_0*N:Щ}𹮜+ׄ/a ]&!!5Oej|ƠxxmvYe\^Y&?rG󅭳WGC q 92 eÄz@<қVqE2s"e)GSuW@zPK~d1g yVWd8lD?"Y5GY0~ۚ)0q^qZ{ \ +M,e%J-f^|ptI"?*Q JuayYͽ>uؖh6veG6jOSC>zrҰ.ϋ ffcVTe\cMڥղOؕ5񣚻5!|o u$TAs&8+J>}(֗P9lϋ_^*a⯻jЉn?H`̂GD(ժwY e4y@u<m"p XG:QR 10Y'0RXq4YO~oA5d`$= tTQ@=M V?Z\f=0018P(i9o1Ȏ,qW%jהå2J݇L67OJ$hu{l%It/U@Zonn\YXX+B:jHD tٶcM,29!~ `F{[&\{F&G̾>" }s\>m0SFp,<8j3o?aB:k9BٌĻN(zI0uRS/ؓɮ<4[Kڦ`uDA0aH$PV;a;Z s2cM\ a/>jr9WAӳIo595".\X֘0-k_, fQ}XyJF9Um(=]>(9|lu\iJHddLrXY'&L"kd$9_ io"b͊aZgOAPɞaÝ5vkc?$I U]c~{9%50kX^8VdرiONt>餱h'Еe&J谽9wh^kjy~&Wnۍ !Goc2,R^(tiT#6LeU(uE_{tq6/~ɾ qb9T@Aw_q1b{/삭2/y ",1-e&MR "= 06 slq3zGWgAyy?)cӬ)SX.~5Zt@[-hp6'lf9lT^SPa/ .* .l|$*s+>zft҄Uy\bo.\x]I5<)Nb,mgմ:QQ_38Hzz>o`_;:fomZaqJI4Gc M w^PB5ON$8$ɲLS^A]7d'EYkSgX877!_7a+;+ 9NA@fu'QgRz5X;6BLDI\ri 5:"䟧j)]%PDF6mi,jƋtd] ݵ5?&f xج8׼ լ- wnWH9wQ]ϱe,-Շ?/ jE+uM/">TmGD_ bz'hBU`GZi R:L v|һK ySsޱ(*^U:^rW΂ͶyѪݍe i2"3:{)7,JK[݃H1~?s#hG MqNm?G/xXcK]rl$d}yCn^aS뇧?X]ŽQ?E24J{_7,'S:%x O¬N$&aeaN}5zVdzȅ~Zr g%uTg$GQ<_:$'E*8[X9ݣk.r<]j\_f|Y&V)Sá=bb!>" y TSR\%`gt : )#(à VոτÝ$5DĘ6`yyP FKwluT QEpr* wYI54H9/|96|ꂁ. Du݉% Kf #Hx3tf ;^Q7uY9a5&vlrd]g. D-P DD;^qamȱґi.wNDf;?v k萋{?dP:;aYvi^ED3Y7!蒾CЕ<+J(dqh`Խ% *gDQkʠǟ'8^ w)"3/jdeFa{iX=L ӳk::}9kWiw&KTebP^tB:sXu$3]뙚!E*ƞ@\6Q4WL쑜/N>)~>igS_N2f @y\+ϛos ʃ}̶u/ddLTW }튳/Zh"1%͵lk`GI^S|0u|Q:{%qE$_[NW3;6L>"]slCY%v;ȝ++`Ѕ0]},]23Ng>xk%FgA>+*Sdڰd$=1vSj>|`oҊ펱[k+*'ց;[,ƛ0@ԾoJ\2R{+J1+2XfUz7Dj:zG@otx,ǠI첔牝Ljj آWT2:7e\ڨ3DݓO]먷 RkkpI4$>*k3+yH,/߃=PP'_HB<#p.nFxR%]V8%_:12H<_32fI=I9GW*oYl$fž\L":|% [0)$K4:w+X2XʕɵÆ$F>fOgg"kAVnֺH[dR6˿5q1/aX>~L~ {VYߒuw쾪yG[ 35dfM"ƕqlC6o9\/mpKgQ19߰}a]U죢L'9[(-TԀF_F~+*dq^-iZWE MsWniL#OmÞ i@+WN蛆|re& .Δ>a[DBox;^2^"XZZrJ^׹A7+aYq?OC!p8 D~ǐZ8,p,4Fx؃rƄ3"o7뭋́zᣴC& ¥Ռ\fK$jW=DJ[2{X)oےݥtݘLƱF9 DҞ2^-9tw vm7ѥ(&9۞bGُ YN(Ao)oH e K⋷=.jok^ %1Q=9vt#um.I80tä;OʟwToN0l 2 y(㻽׫MM(()P_]i-MgiNi7Cp((%G-Y,3bz%Ҍ)Һ)ܽfB${-MZs\bEkCgY;/[Lo3.O# VܚIAWqݱiĉnpetWqyg6۱, JWe**Ѥ|es2c\"X.~%(/3y\YmY\對>=[K5U վ SeL JSt5י"NKӃ}S|mt?ٜPUn_I81$Ah( I@67^.:g;.R.uVuO|C򱖤ʖd<YĦ̵-;Fiuxs)knmA}~&2\_1-X ʾd'ɂσi'*HT%6۲inH$\Oز(wor:J6T_U7切[) 4W 1:Mh}df?vi!sP!1B  @SQޡYu bo ?N꘱ b H)Dw`8tnC2a2?nrJ0*lz4 Ɔַ( s.&(Iǝ6v"Ss.|5X4@6w6ƶOb vbStgߍCV2QxO%N9,ёT}t[ e׼qEnDNjp܇A\ԀPv_w0? =}/ Φ-2?w#Ls hn Bbtv(M(TY,0v7!5l+fʹ7Da<-Z5ckˀD3;pRBx%w pA<87GqC9OI1W3vϑu̶e+0_gjtADS RቌhZ9\Ď[U$dZ!/\۔ثYTJ7%_JʜZh?#\Gx˔-k} TܤcfҠ/H!;GhSܷ7Y1p+`MiIJ?5F$ߙ1{&0xf+䨢\n/YcAm1c&'Ov{b%a^r#H]oshgl̝Lp^+RG8"{:CBDq=u5Ae``9+}7iP6rf'po~Լ-5TJFDe. OQ-U?'oz!0dY5/3_ǀYG -6|ltrC{>TȈL 9ٹ9Ub64v;tIW/GFeƛHSjeeoRSe?1dIPJ$~CվC'~Q4 9?]\ײun'×d?kU*|m\u,7L;-$',Li֑'ScJ\Q.mPD!< e9rϨ,Nah?A94IW7VgacE5hlCqC$(B qvuԯ+ 1c:vW4y#}Bk̯RME/q\@EI!/rA8*5< 3Ys#[)hR43*IvIX<3Lũ̩޲ՉM$zg"5'!6"XR&HЯ>,β4|A:&|m؉+hEƌ^.$miXE >59/[ DL^[<evx&QRuQ$1NnBxzii+'Z~}3_AuJhf"SYWps lJ ZdpLKq_2ҽS_T2.dWr'?.x@G Cv; 2hc#(y~e,ҩqؔXR M{ne2)C!L]<4$@HഝS2{.0WEcȵe:*֢x>p_<*ިA>7`_ cHd>m)^@I="r?fd9? CgD. )|1Wm\iYg* 5qh٘{B4偟- ̱(W?+`z/Ƅ)ICЙfM=KGAllYPiw4F$4S gi"h_Ew|:#>8:iG*.eӟs0{%?e1(a   T<[Z(HHE_hA6|C<&QQA$gl:9 hl\\֧<lpW(Ɋ RtP`[ %;8ObwhSnD&Q$e1hj@RPž=OgL(UI8 ]Aݝ0M+3X,6iܼ[IȍP;c=y\PclxW f8ELIOks5KgNe ~r(V4E{M uag B%vs)FaW2;Qy.3`uBDz%?Z`(y4c-R<נpgƱL?e7t&Tk,܌W USR'OGg+&G =9gZ+W54+qldk/O/mӐԲŲ"ҟҐA<o|O/։ܰR zt(V;^%D|Uà MqF@造yV- ~y=-^:!]$b3WGqP W}Y5-%0CJfeԢ\'&x |)6a&GӎعN ' rj} !3N9`YCҿȦVe0sz|s[ O,Suaoc.)Ԗ\HWFcq|Hcٓ䞆RҀ?O4"b By`0Z ri[we' EF}+;4~j?T(Ю6ijmG ){g2fhQp`$?o_$R@Dc@i8ȥbx|>ˮ_ǜt+ i{3Iuމof0F@A,D]s'$U}O!Uc&bmqv43 |Gy^` *aB\zʊ٬r [;RD%b[kHDn۲ABsn&dOSکTO|Q#\DbI,0E&+٣f&OzeV,bkT3H-glV<6@tI'!$JlWsAPyd8*tIArRȟ*^zHk;=bWm&]3`Y1&n:> b) bw(,6HE7RNoΈhJwg(EkBXg EUS&gq"tYBvERIT7e&\8ڒ#U3%H~ߑ4 "hh6&UULŅur!)BS>l:$3Sf>݅9j*= {7cћ.VE?zt8h,*|Z\׾`B{x}gM=3YJ+!ů">$OL~ WNCĖҞM5ڊU|OJ_.U PWNe% .KCVJN2V%]-= nߐm C6yw9',!' 8FRCfIYfuR(*m\12$٨!k^gώ)9X0"F`C {9ʮ9UR`իQw nQs̺c{v )nLI+ #@bD`VdjRʅ8Qf"j:}6D' oD(9 ~xR/Z/ QZ|ӿʧGX㋖V 4s3;hJ\ylg+Q <;?HsD}+gh] EŕO@e`^k`ÍdX`R.-혎mjra*q-O`,>0:Y)6Cy` ז@_Ms%!1M%#]ٙ㤐޽w@zaήۗ5A%Mzm"&5G;73SYwt}XTKC +GuK+F4N[rƹ#̇zDg`rrU_ Q8*ݛQX|;eAZ:f2X>?7DĝKؕؔ%JԙÔ*U"+p: j?Ϫ(1f0p- #ó? ExF[gM]N5ȲrZ*$)%z`3d՜ng8x^JWqM(BDBn5)wH󊍌^pN; SdVc"&X_(+z|\u|: Hmե X<֓ `Ҕ2XOjxc`ЃV'2W4/ci}^|,/jH8ۀilZU<+Mۜv ˽@|Â| V Q/.c26Ǣ,!M袾ĄN滎klR ض4 l_A )EԷ ,ӜR`7+_o':fCђCD"j[Jhcl73Fs`ϦÁzИmئx[;"?¹_lmYGpRMTEZfJgF60ƹ-xe,,Zf0_ .d/{(ň*Li[ȿ,3 ,>g bU/-7NA?kP?k>^.0.Qި%|ϠMSA1z?\Ml|7lʍ>sjlӎgqSGj]3J0'FY im ,W\ 4:zT^!'rI, @J@0@9:@[?P}~7\V-, h͟N_@9S pi'J?8Q79CxPRSfJ",(d*DmoUQH) hL~6c"֬.K)gd#Ǎ_B~ 7 !di-`KX@SvKn2^2QՄb'o a /4a;KϦrhs6thgFs`wC}ХWb`** M3ޗ˃ߎjDZ\-vQ{ҠO%\By$ ZJ6yٺ;Ez!o"kwx&܋?+D3I9^^]ؽ %gKbGߡ7?W2(!!\a #5ި`nŇNnpJSǬoYTSGرrfTk*V18mBs;d,lJ5YX[m2`׿e :}k`h ٕ{>{> ,Rۚ2ɞ-5V^XTeslc|:AB]%p; > V[(d4Wm:D6bjǗKPk'Y:Kϳܢ[`yXdxXS(MOЧSᗜfuņ짢^krmo[rz"p?N’z (yvM}wy:ey(:]|yݚ4fmrKe.sWj+@^7&s~?/Ү` c2eux8%=l\fę@ Yi|v&p=H$ptQ +3բv.y{`A4i-$*8'9ycs¹mn+iQ' i8GQE-VF](` 9⡕VP|\MĨz6ct> \G>ʫ23]G]zGCIЮvA*ߺpSr- vYː'Q [PWPBf-@q,K ^[YIbn*8 .ʭ?^rHua|)2=ߧWYB|>-@_{?e} - < uNUi싩r pCͯ=!0{ .]_ rgĪ}YT G_<=[%Rjc9&O$6>:L^ɋȜ}`OD93]tDm^ gVZ݋ i1 a#9}tɧ:f%`;4- r4N3p3 `G9FAN`3iFx}su8";ЧW)= hש\MLAG3T ݹD+wim&jsOK0'agn47,(ŕm{^Pd82FV9㣴CQm[g |<0 dx6Ad%{ +.tW# Fnw@eŒo<ŮhoKR} llL&\O]zZ}crP~.C@<6c_=Z#'EMiK"]/N(_}|^)+_-:u-'C@j@>]n6>'5ӭ`3OA_Y)H:tW[qRwȺeOڷ'{0A^\Xk/#SJ=/T3lWƣ_}OrdxޚOZi -y& ( 3g!t啲4{u 4IEa6gSK]akvDv(2O@$W&! kLd|N7YT|it:wAiM+yhnRbސgԀvg(<"|W\Z,ޏH3g.2SKzbХA\CjOi)JД3TpPպQ5yOb=:h(!xR@;]O #e_ԕu=ZH[U$H$lA2vBBmqx/wɖSugVg”4zTK+1xDw1Tx>o;C1Xۣ\uu"Լ˂%#lʪgN:&IW 2=2f,j(jϕ,ZxhA=r 8 FZb]de 5%~)M7Gg)VQ%k)qQtםe<͂eBrQM7 DuX2Ϊx(9~`kktllWg($= #=?G79GXaZ$@2)?M;Q `٤Qz2"_*@$m#)klLzr\2&X_7?E3PwAICMHh8Mf( }/Tޠ7t;h1&H -{ M$W+_bȑuZTU04nMK::8"ph7aʋmqQ ԫf%gcf6}/ŵ?y6~.}:r)č4~X{kg{3Kg\@ . !gRúĂe*ZI?F-M_c\:uv/笆Z¡< Py |Kqq94pd?snw/"qѥr%:bWV\\~7wynDVޛ/[֏9/={C\tv!6UqP_sլYu 掉y%KbIƹoN7mЍ5#&,!-Gf-H] *Av7 ieJ@υv,*~h~OUk渞{|Nce~ӄiTlN4TĸEFX~QIBUl j% 4 ΢qi?XO=k˜*%ٹ~3-J P~xr#P;8|{Z^:¬**LXbkt+k5)+ݧ2gZkX›ס#{cWg3쾎TM qחH ]C+{J'+4P<9-%' ;/w/Pwq[ 5C+d\?;^￀\w5ɔ~xtgY`)}3p?8!,sdu7 etv0UA9Rd:G,`L/_t= 07OB>F7#;a$(CQTH @/[1M< vR>2ڒډq ӗ̕PfJ}.8*v3|rߐ[W㝞YJ:QHug.~[ƐIs4U2!ڧv d3#R܌EiE#3-JK6ds0) ū)v690Fr.9+\:_4S&.^A|p&&f&(c(@Ƌxg"sԎ }k M2P!D!QEM? v5AWh_vuGH?._|Cxt:^-(X\ڡk aO*&%UZ(]bʑ`. 1H ]\p35m};"9Ƞ>z+/B9 q!Zn Y||eUѮJu9'X,@gV(H%r[NU yx.Shޓ #DH'70gc#WP=Ya,%_C%փ'|JZJR]ߥ=$ꊕObpȿәrqjTR3h{̋.L_l2,igq 8҆Pp 3P"$vK7/;.N UHwT02m-V|^!#\xna/M+%`e84ڎ$"^oׂ?KN5١eAHpx6eA'Ż?&F丙VMdf(p jA|~ڢX)΅.T1%Qq{'lV> 9PϱZ%J1!| nG[F@Lo]7~YEjnrr-Բ2n").'! 㚛:s!- ^'s\@Ze: Frs?%ĪOgzPkmÍn?| L9{ޤĺ%4/&a=_ MS1{4CZl* N$j]>ud#EU*Vz"#`5Z%o7;,j{ ^$.١=fy'8hQYLLS@E5WXVܗO% Vaźg9 L14ks$IؿsSTZ7^‡jϒ遈#w5mА/'4 ㏠o-'پvW{*TQ9RNaê6ةHCi[4vɏE%n|O4JCSfޛSbՕ[#),'٬}s47czC *wZah;r]YU]Rt ɏ1Cϣ Q[EMOz1 [֫oc6C%GۭJ^Uˍr⫏ nYY3kVRm)j.7YL8Hd݊E,zoBĄ@h\ x7(_~2) fjע0U4ԥ e|U_ AC!V&Zw sޯ"г+0|`Hx*R p34fnN ґзo'mTL-{;fm$P d^L؄z+! q sk]e\R+^MY=ڼGY@M TaXnԦ+IH IM^x`&:|:tt\tǟ^a=79lΞ-UWѠ8Kl]:^&SCsvG^'1z:GD+_3m%p\Ikvr/H910Wã-I_xh@潕`!ϳ(Zd"Z2w߾Gwi]ZAd“&~\k#\sV:Rs2+bh9,y^l28vwH0Qc2C!ljJ; T >|/?8 ᐓ\8Kzg dK;Vc)tvr/^WS@l~M o@pGE6|}S(8Tu\!4,v+}ǀP 7%F3#,#CV:0*XߓU Լ2btmI%\׫rkӧ$q_g{Df <ηfɧl&KNɦHnkH\!D9׸ZAQ,ŁA> ?' N:ȋ 76CѦ4Xw#7&kt)X;4p}…z&&eL:ÃWAe 'ƉrHW=f#pYǞbX/ȟ>YDF@6?XՎ^-;GUe*{ 3iW_K5.cl?n٘b ~Sp`ghWͼˁU6U[>͛=ڣ낧H/uH}ث |B4HVDxqAI)x8pzy(FnGGp{+YQ@V#P#淤 ɪZ#RGYwĀNv?  ]r[b@nW`nF5 ly mu>iQZ uFMHo/#+.'G~nZ5,(΅sA4; A߆w':zZ-lY:JLFja%@fkSskI6J ɦJSTY?}DijiFiUu8_2sr8y v'z {[ֺOC9/u |]ζQ@:Ml>p2*8-%In{37_b]c<8WY'u1i$t:FyGYX@!2o.P胔I3n!)Ua*: 2ЕS [:BIr]?5fw[Y4s(llrFBFb.d%wzƞC_#=E)=Aͯ\W^ޮ=뜟*wCgjB=?fX3SˬFfuǺ ߚ0K1{:lד,Q}ːLdLBFe4`p9鱖0@^.96X\w[Vam84"U"Lm* ̀"p#.n_p?>%'|룜'MBTz;PȾHj}Wt 0C,dy?9GNZ4O(U#V\ $u lJ[rU# @BkSH*r0Jޖa33d^Xfm|F>gRܭkvʊlHTuznb$ @3\}J cf9g,oRil ۙKivIƂ3U1:"zijFFVRV$+#y6&Lٙ_kI҃5#W/ $O}TlU]2T $IstD3l}gV< U3& :9NUB7l@m^dif\5j5z$Qj5EQ^0@xu}J4:^Na6ȋ)~Ba9k#dN#k!+Ey*·F9+cR9(Ȯ"(VS+cq>_avf^%HВRB1wy8F4{g7޼·"u>Ts܎ʙ]yi>^ؙȭ R7!R0Z8ߣ_s?CZqZDЦ7 0}ԹW~RL`uESWyH~In59YMN'@o f-H] HG[U6q%Ȥ =9P*Q9aiwPgkMjiTi#X6A }O#>A/_Bk\Ul=U6R&XP3ZW[4f/ S-_uT=xrC3*EOom P+o]?c`RuQi9`Z/4Tg蹤%g"q1x-%F_ta] J}L !+kzu7i=ڤlr۷ 7gLLǾl0zHe<BF Qs! kߴ}*jcpT YX.k< j3 -T6`]QB~7ph^%w ɋ^ ضzp'lwlL$+А/o*YVP7e8/mJX7()d jMGj鮡]!^R:~IEwe3c-{s/t4@_ QH%'C)q)Դ;ӳ~N0ո|Vv^ɉ8~?~jn 9lM]Ž>Ю:V <'d/HzfT&m5} rjn[vz9NRtSfmȦU.ZP۾^MiQZ?h@ʐ t(՛SS n\t[b2AC Rw`ۻqոB͚VL Ѕ6>9Ga(=yǛ'Ž1GNإcX?O z)I,'I=Lϔ G̓H\.~ۯ9lAfZm@yck?$! ?nӫ nw-Eљ'Lt!^8Hl1AN"$ыZ=-[﭅vlߺc0_1b\!X;|W0n {-ΖX2MиIdpD<9NJn`T8ģ~mU$Ѽ#m /E8pE1$U#y*AW"ʶ)6jmi LDo+ 4 $A4sYD灣5"س.[ǔL7ny-tX Pn˚%\u>tFC?n jqTtfK\hvA'ű"-/4M>> >SYnmQDF#+Ş~,/3cؽ_iZӲ٩gkr_5* gE!{${6}wv(1:Okc> vc&ʴ<8BCJji璈K3,{BkNgbU-J3l˽KŷR:`ep 2 E0u7Ui2[=@&.v Nle 8@y>{Yjϫm ~Iwdm>-W s_k P5趁泈8A^G0u'QQ+,Ȭ(3뻲p٨Ērz\}]eN3]RØU#%ܬ$ A˾t*WaTx;eaDƏ¼uSSk;8G&p;m-xOCX; 5@prT! b2C57'ۣ zBFC]6u=wPLjDy-ZŧJ1`Vlp _&ʱk%34|`,$/1WW#2.`sշt9]{ǵO޾-f5uyʵCMrνZ5l`*]KӪFQ](cۿ;YvNfLxU 6⌙P)7/[XJ")8%6'+JΒgēAOj<{guVtٜc {z K k.A#_@|_39Qd'ԅ][GLCR!y ˸ wTsªwr!oPݶ˵[) 0r.+>_4_Fιϡ50&8_ K%=;l݈v _9Dm1ϢGUC~ehS]Œ@ !Mu%%s}&x4'!Y6ݜP݁(!RϰrX i[C_2]ߨ-:˥X,^MoE}A thh !G{Ƭ薟&q3t|HIpnrڼt<3Y \/AɫeMLC9A6#;* '{d~$7."0Z%WloN1pG#uG#rc9$EaQ2Wg^-t&3,YYcb:皷6sb$k 8a'&=?؋tV-i>㓿@%9%H5`@ 4ߨ/[GQt*Ⱥڂq4/Ug %akLTEJYk.^)s|uoO'_TNJ8A_ >[_ʯ MGt0_> ;Pw햌,i;KRn{HQr4EYEuhX^ZJ17H=Ik-Lk[_K9R,Rze$)+vez˦?V5/t9gEzWlWxԇ)!%H :KX|ip B )JAj%?n(-A ?ֲPMprԗGauXߋ~dG RqD0$KN(KOdgUSݝvN1]f[$G~>>,lԳ`ʕ+mNOՅ*`#W%g68 @VP\xd#iRo8ş֭ykUz|micE 2șHEz8%_'.R0*B ϻ/"ʳ{8<cNGAB:i:*Bıc"(£"skHF]}iQōMTrщ*.7F'`j1K[,&.DOy%R/B&F#0_3+M_'ڤxӐڽF6Ǟ$-\r )M1?$^|@w0E7%wd :w" Ty"16>-053FT:gMb.a2wm,,:=vKw`NəG3p#Kjv9HaER?ޙyq_;uXrw,p`t_OիpTL6D@忑h4Il0-N><@ZvZ!N- >+[Kي(iLp~ #qi@Rj{:X nYtJ / qb9#=vɹaָPkIR!%StWxcvL"öi7=bɆ!4@I~qu1GLm&']ay8o]A_ ,u()>P!w@Inzҳls{7.2gwVԪ&Ҋd4{I`LAдFקʩ{ `tWu.fSq%hIH}DI9\ ҊlWҰT iO S&X=E^6 OBO%4D ˄+yy٩JMOds4]ݭ O?PF{P8R:]A{AU\h3q7~X5 U|8j:ѾKёpQ$#oqfn fK [iS`DLtԡXSڹl"j؄47Zt3>AS쯰.'0W#v|$ IN H'E#X|j. !˻(ܐidqb?S uV0!YXմ+9 .:NtxV:n~3ܫGsbgh4 U,7(ݤ7Jf5üسRHC&+xD3zz ,%n zDZx.{T#$&7)@mRyi=s@Aoy%Lp+GVQs?b{8DkC D0M uw ,Qy,em5k#lHHy <ZҺJ; g8w+X%Ico)7Tft+:3ߪYт0G-^$,#5_n~SaXa}[V6rT-no%SWE /@OE}?t2/C;I`si&VKwb *:~ wCs+9Eˑʵ+P@ _R ?8\߹TwuN273,6gPLj6o}a 8i:O?nlUkAZ7>8~`rARNՃ:9Ѥ79|+ʞm9Nv.j#FfSjQq̚բ&g2e`vKs*i 7qO' ädę  :ȴ;`j8f4`2uecw:gesQJ*775AlKi+6m6 ,KJns;{B@iCtIq~|5٧\QZzN~ { õThNdkCy9ۣlo"^u=w1Tz fN~ DSch-)Xf/=NPf5'?˚5OJ$<{S=Cd un+9:_.h;$,[Q/;5·CU>(a&=I2՚ivA cdָ5?gbPI~rؤ言\@["8Yxb`}0blFBZoLr~#{2%jpB޵QQ%:vj} K((,졼G`IdJD&֡MpQ'ur>x&[m%ˤhЦ`NYx.qn'ydcfC*;SDӜjw[XP:A~2@F#d'D65#3aѽx|h4_bR=1 ,{|ilFg u2) ҩ9騉HP9hڈB󞞬NgQx}/`SBj y^wXFEL=uVş<0o`]pbpU A}#E8#"pn0&Q1&ZpXɊB^0Pjz>.Obg@z?kYl!r:yAסwk&3̎X-DP],1K/xDzڽBςF a^?~ayEhbMJ% qR3z(qiR(9`e3({:2QF+מTrU h<Is"ϧAG%UY(3. @vxnh@nHJcdMBׁ,.40hZ!{M#!dӆԋyus`4v0P{1 S`[cVaN捻pvM(QW_|l;̇dt@>[Ȓ2 WrTqATOo2P_[r.gRZa.oD#S|jX:cZJ&*?[lK~9,3]>+%4(NJ,L0(KI_8NΧ79khB݀Ol6cMi-IO1`R/| _7ԣ7] #>D'!UK7H8kҬMP"|u7"`Q*4~Yq?(<7k@z|i|M] UЌFxQ?yKs ֊4(zU Nx#b`+m]ZnMVXyT]US2N,"/Dw(R0Y1 p١P?l'%Y0V_loLj_vf+ f9 &\"E/BQFv!(*ń_$Y㒅jk'lKʀ:`bdS^r xzd;o$`Ey؀sͬ=1iRХYmǚ3{Ku2hTzɽu&GpND~%h'.q\`jҖEr̮(Svf1)"< VJWl|S†y*cfcG XȎp@.PA;iX_p8, }F2ƢZE4ݓ7ZDcL~-6h=Ėǰ}rݩ;aOSSI["b"պ kJ n*##Jv&g@ 軸?J5IRt&@SvsdDBg<p29oGL^#bawy9ǐf~< 'jx]Xd:0JB~qG. 5C??N5AX>\l˅/˱L@ hXTYwrqcPN)\NT r4J"8Hk=He%pX ذR8/6qc9(ӫY$0qBA@YoCeo[ V?GT2!<=U)SxIڈ JWYRF˦}+z!qۂRrk74^ 7KKmrܱdIv`^k", EkXO,S+8Γ)xKj@&{~zF9npb4k)_PZgY1D$0,\Q@xKƉ19GHP4-6E!v̆|/3r[Uy ZGI&ϑVS-&vvf l<BDGeϏS>ѫӡރp/5v G0uj8:dxhLGkJ5AqL&~@Aʗ 2uQS i~mvT(c]\ 8S# ^Bavtl{tvw9q2*bQ":N7V֔GS;lGmޗoMa/9ŎnMhYǛ#:_=[$pT2V9,QNYZ/DY0Ct5@-vYPs-Q*Ϸ (1a6ȸd blS==UH:،FUG/ѶyOvDߕkyC6VHugeu ]41(5qՎu?܋td7q|#۟w6IP AM dzfmm@nӰDu\4+7=[#C$ $2lY̡Y+kxE+Ѐ9%p\7* ꠿coz>!qLsMW/7"# ^ϝkfbɪ}nC Ub,_^1;_X-X阅}D'n֢bt{FUQS)GԤ=mY)X #RZ" , a h՝#P܏1UU*] B(h@| ]b^Gsvq$fik ͗Q]>1S ܲ~򡜎BSa?<9&aU@]bMsl` >f8r"3z!E &5UX]tPⲚ&?D\\gq6R(htO/LWWTrv^H% ֽHٰ|%7-XVDDZT"BIm.Q6`w & >TEQtHZf^̣R$Rd"Fm y| ,kx)냭"k__ߞ,ȀNo))thԥNg!r@xV>Rq/?pף}(pa#hxv'av('Q=z?r  肅ZSa 2\79=E47&E0|^U>I`㑅Ѷjo+{YOm{I&n9҈Úxw\ӉDD~|$7P==){,yO )^{Gaw =TnJ֯aVj` %  ]mamDU.$åb=:Q?E9:"y*Ϝ-G_: ,әNa·FBVB09ڄmKu4蔳sU#Fm\]:ƅvTW17soWʵ,~qusf^ $=ڠ/4x3!rq^H%&J@եl  &*߫|qB#QC"d :|``qt"KҍBrulcag$}z-a~<ԄޢEŒoԧ9wW amCΨIĒNw(ܨ\U䌝XKD \Bt桑 63<c_c=Xs趲=4-6iYĿ64~趨=Ҕ_xhKyV]W})Ъq?{UBUKjLiNI,[<68bZ&X]xI>rSª?vj%8M`&Ak-٥q^tO]xV4y-1!z%Qޛq ,H`gP]Uḱ\3PwIMys8!ڸȤBOHo?CG"4^E3SWoG.:EL-T>ݣQ'cԨ q3WqxЕU&fjDC CNR$`ʰ^qsVx$!vCM46N.ĉ|lA%gح]-GcQՅ+m i#i`䈚[jxIwݱ"٩0^ȿ1$jvZV!w A.KuT~I?hr^x2ǀV,_35{^qP9ljp̕)*'/om1|wy"Gy;< 45/'ׁͯzd#=OOBN\%{"5zw?A˳Qg?%4[L$J)2yg~l.@0x ,C-fly04%xW1+'ccL5%TzJcVc0P_[\V_IsfG 6?[3k0\-PzaXA!>Y_P5x_%Q`hq lȼv% 9R.2֡?n/]z\V+j{e)JR-GhV֙lDbOp$X1f9Y\fjPO컅lxhMSI[ZDZ9 5-Xw 8$ʠ$а>1@@A2SIbh={:D#W< *zACM -`3L&e_עey;R>V?C+p:q(CRWey*YL@y%P6lTdoU7j7 a/`|zI"t#bt%T/\̓ڗxG #jpPM>]$4F-揓ʤ]6Ik .ЌOUfUdk? V']QhQ/ʻ0' ,R2}| PBI ؄$@pKP!WMrRQ_W6 ?o=YIlňX8%XUiwz$f~QKi$1 .)4::&W2N_2CNjPD>wZƫ+h% ˢ>}Ѩs3O@z(7 Ǚ~26i^R(cRzj+ҫAsf9l!~NPXr<}i7ͱSʮjQ )g|T=zb,jI!f_PC{L?iA<{nutw #ܚҼ(TLنWW[Mְ7ҟ DH߼])[C(TBM}JfS][C CGH;xzb4_W욆6RhuF|qL]G ;Z<:{G-,kILxXZYvb l(5ҫzbbB/k/5tҿG8EHHGW k> 23Y4ރzqsʉ1T}$.-mq|CG1.$l O.mSޥkLIqǝKӨ߲L%~pL5: eᄮUjWod4b#1k2J)q ?yD,Dbr„hC>qZO w`CaW6?Ǫ9>'pA(t{U(#3vp O%?;fUjF2CNldZމkk.qE.H\ָ*&քJsT4S/Hٴ08U?9|s:EtAwJa^@C=Y+tUI`;;UOt+T"h0RGf= RUuMٺ{x?'m 5tw&J_f KJ>j|r$tdz +`.ENƴmTg>zB$>KIe_fGN» B"C -"mZ(#Mq8}ؤD(*VRX_f2  o^"V _Tzܫ:]P1%>" )h5N̜4 ܴG$>d)gtcDD)$,oWd;ED*!W ke;V8 -Ymܳ8^xGK!5,fV!Uj([$ͷb.Yp#bZ ØYYlvֺ>Re60 LFqqʅNex =E'1#~)+?^\DjJrɑNr/> g}X Eg7yiض*M14f΅+c&^)]USfH1FV"--/\.W#TŵAL ;ߊ,6Ν'rK*18i(DW XKƌ;^cpJŐ ٥ P'pQFܻh|"0cSm*\d&:F\aVeGS J/[xK}+׷🕑;iYh&%_JT5,cRH `.]}w),Dq&h Àh0ʾI-`+IZ:}|Bz|p%?:U6rRF3qr xzL=e-uH[ǕJ9_Bg m[\\@ {nkN2wܤssbPR/`U]ja+$Op=[[ dsd{5;?a(/q# qߡ 6-qQ h\2Ea԰ Z8+õ7s硥UwM(r[cxՔOkRѭi . {Rz(طrEW}*U{d98fQۉօc˯7>l-M#u{/9,qnjwnr ܜ w7;U'd~pZdYX Ar2j*=i~W |,@OSi(#Wj|)uNd|^ os]qW!6dd.R2@QssL窥wzZWCи}Qk'FǞÊ)=l=%Pr GyVz3p/I|yЩ9P!N 7"T2dc?f^phA`0my{eF羯ܫ}I)̩A+ִ 2(dӑp8^#]:@~6MJQ"]\Evawrh`Noc:.y/?;cmmS֥œL&3)©AnW[O+?]?k<:woT:9yUBK @J3P/S6эY$CxB^*YvX 'C?;iQ$㈚h"*6&&w=:/JB_i2Lɠ 2]YŰRzz?&9‘L~7{.B6"&*>9y<$y D+HXm/+$c}!<D&4|6/!}:6tHu7\jRcg' w9?ßӶѢcʚЦϮ;~! ;Y(JsK׿$f~p "4{(/aMn] Rg'~['w 4'ꪸx:Վk؂~h"0Q!鬋mHiC=#8óX"yuzަ_k@N+e@Q6lW-=ڜ!럈ҩ qJRfm,ڋHO+]%wk w`zڝi-S2Ef~`aV_()&_d߉ Sw$mu8~QLߺP 䪃jƹyڝnk>@̈́͘8e}jkO8]# bvLLQ7Smsi S&Pl3βL_BG>TD&)mjA )zV[qrn_v0٭:S2?DLh~Q #gϰT͖L]'-vP2hf/k*Bl>&a1 C"`KO He1!|By]X8\nHv=`m %?-:3W[b0= J~>pJa'LYNcBl0oOpJX=a$G:s0M*`= ͮ["͎>cm:J< B=mUJ='#G4|(fVy/-RF{<:SfdZ|`ޯҳ*WHy}ɄտPԜM~^{d98sb|ғ~Uô-yvSx# bJ*|r=$YƪEo"f,ǠbC[^jvN|Q^jϦ;PO0BYhoQۧć ƄBI +Rgר-!3xׄ m?q-qPPtTKju{Q؁v_XlAb}>xҮ堯Y4,B 37UZ(@oX  Q%:ulp TDF^FR#(lȆ}x =c.k93"vQ[ی/p~ˁEEKk ="v\!3G,@8vV%?l)e۞@whs7'x.;ZaVSJDPhI޿ARY9Y3UeA4Y `HDķ%1 %ȹǔ\8f7>p 'nЍ?sp|ud8d+ ChsGt,KT͚TK?+klM-2x_ ?g4_F6w&YqS?jpA>f} roH˵{.7T3l:;.5)iix|:,UL{YrC"i%Tڭ_O/M: @:ts7xX:"+a{S;ǐbt O,rpKűz.)LWVۼ <`ˀ ^+a|84P3Px!{Hp`)fpeuԻ#<9Q.}ٱ栴y$ehB| hN96Ffa)ˀMyNX/;Ҩlؘx7[.@tr_r??^5F}k r6$\_c:akn꾈&7T=Hg̥b7Ch1u<_ }3C]טք '%v}į˹iS^*:Qb8,!jH7ݽ̢6s .U0'JPy! Hsu}sl`b[{7$zb܎Z#1}82yģB,+O},cXQd5BmU;[-nDm.Ǐ8RE 9O: ew[>hu v8/HDn}@u7LpEH`t(WLAmA}RV W?U/s/& #n@3<#X8j9K!A))BXozkTMEL&Qu6a[[g^5}VU$'6g `:GfnVhbxN))A *z]TlӹeU|>KtDYe U%wQ&FܿU< -al9֕' mQ9z{8?!0u 9)3~&4CLAT6Ŕ"?fKၢ0j̽b$ Okߧ^Ϟ. 7_yX>J?jtH6nw!Q愲<_Jxl5;Km,iߜUwQ6/,0Ñy"X!@Ob4#3$4C)s"xwFVWbڌ'tA񶘱\VI[n l+XGDRW1Nrc|ד2% *.8|" 69$zT:C[~7y7|%ALn֎O[^S%ioBB6&McJsOaRDU[$8` QoօR6k r*BTP)dxG8()7-%#s.X}SD?Ykf D* o*}rRtlfhtȧ]}97& 8 `B&޹AUVR6Ot_-Fa>v>(AwM=Bz J"7) U ):V59@+vgdV6Г(}9,Żq6j2+k141ձ$ L~U@ }A'|5&[HUHЦЉy 5*=G<Iu`ОP8vN^KWP ydEX X!E 4"zZGn91+ dyHCG׏F.!79vW#}zr~68Jx۷CD j g\t N[ ƤSijMSgԺM ޢ.4:=q!_: Jݧ>v;!]-`tO)ďG xaڲ";votFθ2?-OVk*ء#)%gt0}n sqEʂьN m8E"{4 F%|E$@၏PEBv V4J sQyO,ɡdm8ljCf; >28k}Eo0;`[ά rܥ|hn֬ԶP&|o(5F^dzeOIhf@GWO0tI̤j~-##2K1 fFL^80ъwY-oF-ԢR827{ňQB7:nA;ƨY#g"rM[_C<rsB`y`.ֻWM4,ie "B.&[*Kuv8aڏ>2F(!jAqホT .ŔH=E#i"yr(v`(nrݥKKt`p}@ae *r5r6saL&Eji5搴 0{m*S{n+C:v!hӷ`PнNR]qj%\dړlNa—Q F]xg]L0ckc͑ͽA/o1Jt柃fÚz&kiAI&@q*p;T,3<|ܔJoKFdo.rԤ)dRc;K5%{(p:Y`܈B=P70F/UgJ^HS#ټJFY~ j_vw[p:ٚ[&#!5y7+Xdl79olH+RAKSNWGakUSՏ6w Rfs4rؒR"@f`~DҠal¢9uRv&Zջq$¬.O=(_Z{] xHiAAScNw &~. #Ҝ0'spST$kXl]+;*^i^mIHR~E bC!F]&Vcׯ2B[ƭ">d鵃4ٞ F&IM;=iv$S cme]5wC[E`!{4Gx㲫n~d d ʤ޾ur`QxAUIꇹ'yX^S$m~D4+llK;y.@Uxt4֢ݖ3gu\qLޗM+S5cV[sVi(nV>Q+vÙ!LIb-@X1u8'2x vע)xy6P7Z7񽢤"#(+BiYя4_Ձe\]{E+8XA _dcAIl˿p7,`j᥂DYn{(a!Z}`cҟ`/8kx}  !dsͭؒ+akkG53O [^2O.ތyG*TfFNb~} 5gsYߌtyWmgWW" ;Nb0%CRARSɾ"C[Uٖc%0(5 >@y!e~<f u5t55#j`$' 64>Q]QLC܌pr!Sb.R9E@vSDa?U6DaGUR3`|"0W2b Lh8񸜶(Gn*tF@7z[T3 aΫTduF&5zs~:Vo>MZriQ¶FD Λ-i:ۄMp د2t'H|oq8P$5òc!]C3/eH \&1P~詉QC{&f[\hS&lei fٍX j>)1Y2 rT6 =/EQ b>YEns-pAB=c=,*DlY>ѬN}&}+(ϐLeqj)5!c+Lu˿صږ{ҹS@x~MޔÐhy՟%fm_нi_mĿ]Y)KJ2gfxT" &fޕQɔgRF1J$`daAd뼴Rb0(T~q:QAqMC&B%3~usEmx(-1B#\U(L8; 0gD&)|_"OhGҀ{wucYE!1ILFw::ަǙV:᫢. ui*,KMlID)Z˪Mc%חq4)׺0AvF۝㋽4?L棧[S5;\zʻՆ+H+;bBGp]>eJxt=(cu/O *ij>,ڋ6H\o sX[\\jE^9Rz,%ZwoZyq^cH WE~jZcXȵ98A6 s%VM(uWW0wq-a[%SŢ4!FmJ?li#D]%֔tW:ObR5-Ѝ UwzS0/ .Y=vwR/^s3VH.Do1;^"8/G&5 ZZ Zf:tP(ue!.A{_8>{[,r聡M&{% i1(Z"`&g,. S5&:%碎'Pr&wZ9׾+6)a*JOzX"㐫i/͙YQQj s=߇܊A!YBz6SʷԷQ~vvkǗpo\YW=l7[a98zYsh-Rp|~ukڹޫqx_^Y 1n﶐36+:RFJt#Ul5S(M8$4$ΈdBPu.H{GGŅoD (x03)uhP-v^lؑԌ;(=\"ĖhNKЬmcS }p&oyDa|F5f\?Z]m@8,]}*2Rح9|jbn}dID-z>Π J\b/c.<4~ &Ât%S(YΖbM]'T\҈URR\iy0/+AAVi>LW>'%hzQU4,,aJH%层B}>H2:K)MF;%NJ5 kǍD$X;:\(4Рp#Ps[3lBQ4M(A2}-|~YOUQTn%] +.R7"} dP%vA2(ڃ*M ϨZ#WB* Km@ Ms8k4S}Ӹ#1%,MGޜz.t|*\Ԇw|tla\/l8Env%70d1rϕ Ϫbd'8-bpmmK# 9N/Ѝjo4<#+fI23 7 q25g$+n/fq8h} k=RCz1?jwAAW.)lETFY[4"~7>*Qjam6iz<yڌfM6xs9E1|KOf;ц$IǫK0D_65G(W.E}<=nz1l2dHi1U8F c_(i_IRT; 6Kކ0ʝecf[-8)vu}V{ %C55B\@KޤdFxetﱻ12flKԐ4}0ɀ%3ę_P!Q;%f=QKwXO%o Ocu:mϫuU2Sq | y(Z̕:\~,^8Rv{NR s(_Fs S2 Ӟ֞HjḆS%A8!$ ?pv׼C2`J;Ļp@U7,Ã~1l@ֽuۖmܸ~X<&?nA:9 ʞB跡k/XEnd1Q[`FXo_˜'ksՎ\za~j9DQ4io&}w7^[G\*v;bms]^2G`sc{ԀwlAjȲ߀g,"I+昒>s= \MIT钖ܨZcިi^pYJ_3A|qzOU(*I(,ljHP9d> g{P4՞f̹BX-M 5e2ؠ\\nxwLܙDFRnCtM ":.rhUQ- i&Oł.3"j(O`k՝fx SJ#,#`}<н"Y6Er~F- qSKdHV25Ťe˱gmE#|GނmUSQz%wrZJuQKȬ"^@ɓhy2vSV`WQ`;IJ\(-$@%QݘkxH HUxS@6,خqtL3:eԱP=6n4En^-F/?a}EV_ic8/)$/Sf콁`f|(B{Ko)90UV+? ȴA gwGwp=VLOn6]I<n-,)iwombLO$z~v"=x;dX1og }V `!<^tiu-3 s V -Ů8 2J= ,OcpzZd9mG4oO3ɫp~*^)ozX.@BhS\&f3q_ =`b2=A,pM3%EDJ U mC$-vӐ(2ȒEhY>M_f+gKp͇p쓴Sx T}OĻ#=@皪CDrBmI`Dž+44?^dH[+ٟu`4JЫjz2ys29fmZ3 9yG^),]Av{t-iqQQ~T@yU#K#oØ;IqQ8b9K2sQPeA/H8^rVW rF˄*y2p4Wq׾mB}_94|1/> z߸`{ʟRo]ݙ Qz|QGnoDM\|%"|=TwgN9e`<€hdͺ? O?> *s3N0P!KQ/n?$Vz/9NW[Sy'̟ؿ3=Bo0sU-rmt&Oh̗ 9֦sq&>qcvl-6K Rޟ6`u܁&hIuU}|=.x1bcm4F3xxh[׾nGaaFfJEV2|,woE.@E1B9a#g2"JEr tT͞g DR:S\O}*QmbI<#tѮﮔk '#JWh  1=[L2;:bz5)L%O(jJT<:'#[5 'jW'҇A&4gM'Seٿ8Ⱥ4힅ISѭMcL@J&ڸ9"MRLF'r_\ 􅗨Ux Ĺ:y7NC`quMg:MB3NO 6X4n &X(^LD!ep,Q}kUŲ"u}w1^/Z"34#KmyįimoP\՟Bb9y)pQ54%cg|c輚 I!D>3xFR,dnQ @M쁯F/^m _#*!_F^DYh.ApI[]L\@\ǿT`DNP:ѡ4m9㇮}{gy 7:{3Ė&m.'rd[nvսt}٥lå]ƒ X=yX43L`Zn+l%ӗr{T"K8 :;Ef{--E2X Z OGħXSaءf*2D8>h Z _XbU Mw $" !G㼭2'V{NMwkAD90LE5%HG `3h DvʤC Q [`fW-C1 KeBᶣfE5`ց|MY)$^o2+fr)/MM [=%ΝUu1UI8r宨ە/7`=f/qx~.Pxghn Cz2-:/hdH)biHRT7pi+wskۻ[*;P.xXʋ@,{%]aBU ? hj,SĤzFAST2uN Xu15I',JnWD߬F6\ oݩݟşzov R35!iD v-mČs{i^4`x(P:T =lT#htMU&s!/Wdk UehM@o ]&Km֙>/ 33 bo"mO%pWfߟd]32miVQ639񔸝SԄ,+mвTgS#gUuꛋs'M$ɿXiI)chXނ ?$I%u*|vaT7*3%2B90(%*==&Rmڭ+_Jy; Hq|l]xL@ځViUeIe]zpڍGx ]/ 6y5eI+ OOOw6`xkSLHI g"k4dڃ>C=7̧eE0,GU>иɭFnZ_t1[N@Ծ[&D$/<ߢm~otʼ^nNSlw g>\--ߐ6YIH q)|rH KaŶ Y?.Th'[ڎx?Ǚ/|=|BÓEhKékfURDKiWXqI~dyWow( %k #CwRh}CV0cMf|myđcHvmlG۫cmkot508lrb-S{ < ^wQf!`B7(8^!qtPKJT,V : lEA3_Jc ;B(ٽKb* gBǂ#Āe8 d/,܅@u=u~ӰM ,JqCuG3β85{G.VzA =N7PWjuݡdEzXɺьPS wt 1b!}_EȺ-MW-DNr/[IKY"rWv*s=)dPӢfyEk U9,l}Cw`ιQOGWfvE:d:D/3"υ 1g͹}#9-nbϓ8vs׀{,q!ss&lJ^k ;#сFKaϊR+J!EJUG=sfY-;aBueDSTw4x;&{~?_laP(+6l8' T^`4C~Ŝ;>g}zl7`iqFx`fk:>?G錵:|_M:;  ^(Ҙ7+⾐2ŷsd!o+4GN, VG)rH5C;&> ! .9^t,Y_J>WǬ -M ,iFN8jmk.} !w4f-\}ak̻1şC}jTȖmFN-~4>N-a",(mllguUnX`OZ EB?s{_^0|:HWh<| ?gòn1=^.أ5 LE5˒D)ѭc v] Fm\+L{SP \C["L3Lѩ dFHLD a[&Όq*T댅wwhҶ"uN ƥ_GH5Ӳis LuNlV૸ P+~asl5R+[EI2#+JeDCNV H c eIt2EDBڏ9n[Mz '/5a>5xX+F~ns{Nɦ3of16a.R,]ӱwUc'sG4#CkB@CqlX%=I6ĆuHL3W=Q*c)(B%G 9K_ 䧨+X |*ŝz^כ}kƹQpۧ;F[ߐ;j!ӏ ͰײȺ2K =U5,ky.>a\Y8zNϠ~f^x4;^2'* XH5G#⨄.x .mww ]7vGT&DskN_`#qՊ)7;At疫wf:Y@=5SA3fCԅK(9x>!zWf@ #'v:mHu14ohCUN#~$el sgVMDz#큃 jQNU&=JxH _@ &媜ڊ~}MNE;6D&KβEU@)큞 8}F.ȼa[a:с9 L4(tFW(Y14NLG2#1H|hʦO>c?WpTddzʻ'9"pԃ8E=z~(7` `YZP~T&:Vy?AYk!ۆOGD>E}@hl]) WO?߰'*v:pĢH\>20emQx /IoޡzEqKlOʬio)Q<-6dw3d9|%Kw^ްFa%Y̐s􆼊.ׯYU06QɧfmuXw%!V(b;8ۄh:7[xsw^H;Y/BRuKrT,-xDWfCR٤1 ʦr;+|Jh}$%t/0)]r:)rKN5yZU f4[ ȟ$ XX=u&2μ( <~/|#B}hþL uv-!0nLz[.uTYJЭrIp/ ]Txy|~הRSzK1Ogb[/!@]V F@IN%9 .hjQ ܝ{,1(šW}-Nu ;ʂuJBCIj*^&GP{ BȍZql%ȋ1Cu||rw\5Qk|QA)9{3ʤaGKB0`D$V`(Cnn-'%_7:zEP8ېʿI,YM*8ӎ^U9\ <Ϭ88 m5=\ oAj4ȵ<yZ*!蝀SزaGXFNj+lkRԶ1J2ukw$nΫYPjL.z`3_쿗`nf4K}ń Bo9*zwď k3*'~NhVYׅkMښ1 I_V=zK³mˬ*b_y_$X#vTF߾wCĭ>"WבZor XpzGOV~H/Cod ߣ+fY3z诺jl&g}2osl`T sKO` K[ܥWыzD!ٜK+?IpH!$\}CHrQS@nH)v j7U rj1 jM{=C~B.d f6J$\7Id@oGc595ɫ0 [Bf\nS~$ m'@ifu:#nd?%"֎u = D/>'Uq'rhO!<V7O&˪T}#RHR[+*;ncxB{ <7x^ł_.es+>@^H iEDb(*-r?}E]l'y@ H5INA\͕-:RݵWvG moa]KX 7ɋGHHޑz%l~;GpӬѵH^0JB=s )̔蝧j;pzeu[64~)SJFf$)S!H)xkM?ضATW-D=B.0TJ73dYoR TXƏx!O?q%IX,xOݢ Y5.}٫86W0Hk67MV+M;ă{m[xx!V)WRnC[ՄP-D(PLBE&S3cmxp2"'~q%n6&*GCa'7eH](Į[)&6KSx THCY_vcƧq}1L,i_D?gѸc:`6fM҉ Khi G3ǀn˟6@Һ󼆁Wel305ڌ99'.dq=\h>ϱ~1+  -kV1j1p`PCb"wŤ*Y!_"Q,Rk("$L =S j0is(;2*iyCO#Z21K=TtX|_xwķ\\M9Gmr=.q+uH@Y~7Zb>thJ5L*vp,` Km(ۄK(献JY#BWt#n;Bzֈj5${m88 'M!^(Y81M_P 3gX={ů,.JzJj7E, kt۵Obw~K|}Riӛ9%_ÊUxiKf穱Du/8_ٔE7ifɺV74TO}O&ދ٧#TKi(]H|=qC\?ڧ#ļU_LP;mEywk_-FpZP0چSo8M|NmYxdx=q==,kIA2kV ?OˏPw:dkhk]H|yyz$589n39³Vez&_:[9+?3ySxxftrAdofdb ",ՙ&dPNTЀɇjlmZC;gAs\'jb)(Ud*B"{.ǵp$l^;6W'of 2fG+BBtx4[ o;[ H?7֪ 55e5 !ZW2ѣ.GtUYDusMZ[A:]P-m;i^h+c\,a 2,&xtrRp \}к&XND2)HJl&^μh$K ½W_d4bV`qo8'L):%ŷ? ]cz'305ԮA}8FP bTR8>wo^ӈ12W֠qc=GTj\%Q"fn9 O6* xr^Ezh$"=<=3|I33&yׂPi麆˼zZ2YAEֹf2zn7A\ۅw ^oֲKە#@h~ .pՆ{XpqK*ĈOnveS7'u),(&PzتFR ~k!jG5[;߀믰3a`X BU!mM΂BvSݸ'=^@BeK5~ L`y|C_ߗP9 5G5,?mN yvm|k(iƮ@۶i ^AaGىnWJ,]u4ּ\1f_D̶7!٠Oxy|Y!Gԭ]>AOJb0TIehv͠:esiI0Wh @oŇ0k n.$#D# p,)M^N=IJn׳D42;bw.#΢ѫG&cH9turh Niq K KoYو]CX\ZNY@lk1] NNp\NR/-Vq;d~ mM I)qjQdKרr\(QQ E0fվ%Vd@|.rȗMѫՌչN)"{̻kR8[ u)Q(6#Œ?ޚ\{i&Lo,'VvO[ ȖL,Mg8>w,NW}KVS3m'i`nX\ašÛJ v\g`"jq󗽆3GN)&MnePQ/k˹*>ETe\K*V']D~)L05X%v| p;H^gZ i;'Om侺$Mqe)&X"(F 7*qJxҭ-1|W')H_P"}c\Y*!3Ox'}Hֳ?IM%Mk q D9PK^|R$l&]sAY\ bHc3z(xq9-;evp4sX߷൦VZܙd1•X ղhÚ\}OvZfr/?'95skcЯQ$?.uK̉ iD(fބk.{}k/PvRui(KڔGe6Ahz VΝd(jW牛:&%Pro^[S'H/Eֺ "[;UX' .e\j娑r`-Ltn^] 8]qy6l\+.,Y5ՆDA~O\':چƼY] r6pړFWH[JzFt~*S  >bHB٥}6Y.Պj|cV;iK a¨=f0QP_d'h"}$z;w:3iJxeI>9s}?ILG? !)ght&-yw($RRw_DٴHksE\v|Z߇BT!=Rc"#5a^|lPS$TK9ü`pP;ؿbuxFYAu>Tk6>P0x#(bQ2p 󋯧Upӗ3.2gט0!jP-{RB`ߑٔJsK_XẌ́Y7^ڄ'>ɼdٸ-q}83dgU@.T'ADjJ.jx[ X J)U*%&r@.mYZJaAr;ҁ\f@A[1+m-N 3:P4z}GJYT}šVU~tMS @(fi $N;U'ߴ4ĺ%l Bkw_P3ŸK~!&{[iõM m2gwH=Cs!Z埔 RP'ϩQF *&PƲ*#owPJvrլhR̮̦dB[pKQ6 x{2DQWGx9sr%j\u a|  AIؠ 猀cX5J C֒LQQX\B~⣐"18Z+ǩ~p@Tvx̂A /a;p x 5>ȷ5N(qrskj~1>l keXvAS9 D^#xN*7$x) qsj6 lJH,ɭ˘`VvbF]]_)avstWStս|4Z k$.,0Qko̿1ȿ拼̃yX<#dZ M!_2c->}4 rMZ\M|6$kL!$[Hw ܯ}>Lbe$+)GۯzŒV|>NXH>Ywh"ePaP>6R(`Թ9[/Q$Hv~Xp:~I̺P¶N,ʻ^eؾ!u0r2YA{to.BX3vkYjc]p b$]+|3 } .T #VcrHDIŵX+=32 i T&,ƒ1'^L/Y0jI['-}R f=t>mrnLp3g#& yoOE]Ve,& ,N4MtgíYgIAgsJ%@P'u#&;̠B'f2&Bhؾt~7PՑNaq[;+`t./ph2h Ξrΰ߮ RQ(kAI,>ƼMY~Yq|zc~kʻhz?/=͞&!BU1a4RՂR/rv:݁GgdFC=鲟sRSҏ˂OofrDTZ(uB@\ uA{zS4uc֗%@71[xXRXM4o5MsЭץsi=bflz/Ѯ g0U2ik6hoA9pAt6l_VHV3 Xt? BPEY-.|CR7)m4͙Ӳl7嫘:S*?j)KhG!)fgn7`VkJqNp`}:_?]5$x֞4Kh$ 8y*:t] D_ZQ3g;Gi ml-|C?zE՛z;RICݵ)Ӳ;A1uoƭ벋5=~ŮVԷ?Fџ[$HJLN5cPQ$t~גk SFbl"xYK}}j"tZz#Q D{JJ=UdIʻ]Au9^6x(n&Bڎn RWW!οy%x:#i̢@*4Ձ*} q :E!%΁|Zb "_u`r8p陫:/G'cXSUNVMYP.Ԣ{%YOtH|͛? ?-Ci3x! 6 8? L O(=7L).rpǀ#'K҉Tlʀ/I Ո>{]K?>ıiK#"Ɨ<;>dȣ^>R(nsr EfT!tOfwjW+<-%׌dHdI=(hꂴW9mT=}Kcu!@w8z_ wBk?#p-%kF8gk/xc | `Bb ȿ'5 5{v7T[}σ%ٙ g[jsn>υyY\p(Bu3Kn+/Qk5V;Fŀ8AGP,8+q$YJDɹ\%ZM:@j0mJZݕ肼V:MVNgϺ$'J>haяɖD vHCVSteL'51tz )إn& d8W{/m?EM[.l7igJ1UҥE| qc:鯼uf_Q;.I !z:bUоȋYhBnfS7 !p6}>d聒n я E&be0́Ҹvu2QԸYcbc?n_sB$Gڼu YL3T}@ymBO ^Ϳ͏J^j2DQNP>SWV+7*b.G:ׁ]mL1!,GX!q"\y$+kaIZA5AL maL`JJM54 FTr!׿6#p! a/fzٿ`/m9etzP7+mؼ]ԇ]rpJEd B8#_qjl~y} L.mI;zȶNLC7n{epX׾'W*"0 jEk 36I0&׀W4lS*iL6o!R͛Ib;xzNFᕊUgš(hwlюq Q)W2KͭZNo,:yNnvTtUp,K0VOst A) xru0VG<YLYғL]Ɇ &EYXzrJ#AT݀K anB:P*\Sj- [3S~sY?y[h.{6e.@dKk*4y eßlDV4"BYRV8Ĵ]3剛2BW@;iqŲjGwְ;ϗ h}|n-}[WO˗\`0W%Ů}Ć0O9jQ}b}λUQ[?/qoPJ{D,FL~ NE;S/,dU%LcFg kUT}k1 S8ߝyAf㎸'U" Q~a⺛;+T%[t|'UQBe)nGZ=yU8$R m\Kc|'b~l`ݭYN'|»`r~(O\>=_ݵb35sZeF+\3*ӡ_,'`s|-S7ï|g?O_l 5]ZEu" -,>5,g8 eo%RPyOҁXVu!V'>$o} [âKSe8dF+I+)a EW~>^7O I Es8I%(L&.C5@{ѼtxoG*idƂf,‚uEVӿbUAja*(\\[Y m_٠􂏛r4hZ +Y]1=-JkՁzGqyzÂBx'x,H]$fԏz*MKYNڜs#ᖔg)l„쉑s!o:> |ږBÂ&в 088AVlj^)ˤ YUM:Eg#Gd v/0@JtnXsl?~"KdEZ 1ْ~[@[cBc|}.@,4}@ٻ~wl jh =wDIlZg0^_H!Rb3<,9B4 J$MP$v2G;@(X9EڞOD͢UWn>I.Se8F/rC$o=&E5Wp4oY*_*B\Q'ϜQMpD0mF(,29PC|]jd6vo&ۃT[GvwA$(H1F0bZT{$}@8 6h/r<XcZ 4={ - g~ j^nwv&5P׆{~ S {) QzY6w蚗Cy4( ~:o Ƶ) Eq:֭w-ws[w\}۹"^7=9MrɘjH OV_6]j`oCPqJ )-29hIpm`)F)pKs]NG9\;mE,V3(/Q0Ѱ$c)?j)>t< S= 83Ǫ+*5^~O|YF9ݺ?UO}IKJJxi FF4~>J/W$}lCFm6*w.S4`@`sIk}aP3dĞy`؁P`%3YķNSneYN/, wx^&n$7\Yu&Iֵī%W1S> Gm=g 1 #gN(&@*/ՍnA { Y$MJ@b2-:$Qv& בwz0 +qWyXQ5D7C6q`R,/$8TQ!‘}d)[BKwdoiͭ/@hxJ>6-wd>A赟X!'&:q`0}C:r'Bi8 )~͙CC:>6 X: AͱG[pcQ y$qO4x=B &9:x{>ƚgGYojTEz܊Ն?9U:B8R4K2>G8]sXҵړgѱfxyAۅmu2y=8o &Gs%Oz+U|׌!p@/Dm&6h1sNԬH"DP Ecfm`Fwg!/CHcmjøAo%"`~ b04/L|&gT`]ɇCsalp٭i$GiU)>-zˬ@0`CՂ cua;BJ\w2;oEyH]ʦT)ٹQ_am絢tTOŅNGI CR 1t-k@Tt>{ HH#%0BZ\ꃥFb|AʬE ԉjr j?&CGvIv&,HskQY!Nsmh qLylO7R}OT:ur_VY0J}rsc :yp5%u4_)eAgc@N'Cge bAܑB^h =VrP"<@aQ/ꛨ.\^Ʀ{d\m{!U#GsYarihTʜBq[7e@,c4 WAD+VyeBm Z֥1We!jR~JF7ߥ@Um5 -#Kz`S3,S 6H\/Q@(&/E g0^&sHU0Fq ɨ_ы5b+sO|)i@^e =BG:)?Ǚ*uGgE2Uw4'%VW'!w:\/Ȝ ZSQߴ qm~&[uװ<=~Tf"J$_yq5R٥ Xsd t^͢rr?O!g11cz lvXWNA'kaď#8Wp4KzİM"C۸0Ka3h t{3аTRs)0<")a:DP1ޯ" x00 ``%#Z#PH}aQH]R͟(zۓ؞ƦJm*hiՋҹ.L59Lz/8c^҇P#9# `{-SgͧZ'Ee%Sz c&$>1;(1#ݼ;ԉ;ǴTk^%;'"sfuz')v֬ɐɂHZGp=2WUsv "XCD>LŻ@>:{4 J5wgR^E+~χ3_ZcЦ;`-kT()s3K2SH emJyޣN{D`Ptq6ry\ͦCێ\Q+wL:"3㐥@opU'A]VKѢx\LTW݊}6e Ycq}=5YK7ʱk~ܑcƱ.>aBBQԥzJU^ _ &BKq"uJ>P^޹\׿2T 3hVI9a-Do"NM|IAODB(bsXw]? NxI=H8j0{0wW`4}Io&2g]d\&j N(n-KHbuk&{L-]Ѯ8;pP[Yr2d9ϫH{Jq4{Yd3[\q SbT8s/o3w'n O >)O͔Y]oCo{i?,*LHR]?'0 Yx|VC$$I.EFg'T/GUswEm :MUIBu# ,V!AN~Ʊr~Q}0̋^AaSqq6'rqBI3,Nɾ$:H#&AŽogVD]ZS\賳n7WKeԺkSFDq64B^8PmPc OrX dgLsxZr r@mN!u@gW1CgsQko ^>Z g X3 b*/3E'ZŽ_){ #++ug&S8B'fMT8$am^zcsܮ#p~x aʹYqcVم(  -`P9' J|Z5|}*Hi𾗹q͂fr/aTYI4<3SIRI7K7JOZv-!SR 0[juF+iߔ'S?3~=xR8k Ld`iYlFY ajjMhT)αwdǐ^ <ꗠYʀÚ)irz+݁I$4 z[wpk{.Gb(Jۭ_cW&'OH&LW}ܖ]0ذ۟ c(J}UAZ&ӹpl¹\|-vyQxB yX1` iD{ynF‚7.0Ev15h؁~˿# RU}+-!fL4Zp9H.=J|3N7n̵d @djjJʤ;d9}J\H&ۍYȪ)UF y4oq87^Ύͩ z>r%!s ݀ ¨PH9S|nVdl`'Մ'~+a}6R+aVI\mzU) z9_:%UlT0,T v9'dOVRx  e~)[ףlz--RՄ \ t~*X]xT܋HKF G+l:چ<D?U>rF?ߤ}Lm8g{D\l%B O :oC!!Y2~ddЃj`W]l~'?êB-(F ؤjdEmF d==iG Ew=]wG&ecP,vG4eե ؟QWشboqcԵvcZIu;'.G 8&'KK|%T"v3J^]tڪ0t5_9I[Vv%T_rHfUiRD-*B7,m{w_C-hPMPPyWS?3Eȡ/65K2pzJgV ȸ䞵Pc2:Q<$vK|ؽ ǹg)vӋ4dįbMKWՁ~b=uǀb8 :y愌f%O`ONôǿlسzGpHBԬq{0n?p7RKa:5f^1W~JNm"ǫ1\:vWjve]i_+N3Uo!a#IOv%@<~)!7Z@TH8{kȼj*B'<Lhw}a>hVC Z?8c}FAD1l%_*}(焝0{؃ǃ,%C% ڏSwY;cu<%;!D#c^b UB12g \%l{3R@XrK{@oC6b%mT<+u] ˱O-[9rDtrXD;BXkq?谤^ {j x#5ipN B$H}߈E5HN^CAiމys\As" 7G?)׷y?A /UG>c քdcpS(^7-ŷiMҭڟ!\Ph?O׿ήbyZI'E0/ps^oقOUHAo?+Uo#pEOI|CjefگVb(=XY{.[wL gOG~:>Z/lT6;DQ\MJi)"wyX<z!Ar0+ iL gnmH#aGF=_>E&cX%b{f+5[^8ANJzW%Yc Q,EfDTvt0G2&'(B :[M@ gY:"u 9W>b'aoPuh]mwG[.Ru}0Ym)^=E-"LLNcȭD;mHONv87v˳6}Zmᒔ1k g֭Vd ~UJE|46&9 5vB^OI8p+qgNN0lIj ͜"\mXʮ2ֈzit˘Z7?Z#*][={详amf""$&e08ĶP"xeN{.OlwY H.f (.!I(|(i Trxiaiw;! ;)*zvc$):DD6GhĹ腞u NӇ 6;@Hڊ>n8nbr a amX hcH w![KSxAJP}x+b~$fbũ>yidjH8c>^seP\b` CYrѴS<Ky[P!T5EGvdk^gȊOei.+K3/oȎ&D$V):QY+Nיv5y%ɲLĝKJfN=ovry $E1ff&VYQd| aw bs铠m4N}A{l@\Gw@lcMBNbF-aS$ evYrpc?ɩ8;dT.Ч D\W=d>]jO̕|qaDf5.+R8|O\ϑ ߜLCq"6`9+hG*ZrC%?h..g'?:#p-bDPz[@RU?)<kĜ$-'tD8ؾʃ}f 6[ !]0O2zR529&EW:xp 3ⴷ^Ų3Kk JOr8#k[lI6@=[Bs:%p>眩m-l12²CL\D)A eփwC6YH9#[6Ap283(~XQ?ES8Ws뵍 =CdGUU5rKNG(gmWy  e8@qb,41L*qqA@ct$ʠ}*ARHs9xslvlh>ޮ;Mrr)dLloqpX"1M;`J /kK.y,hx?!b](v F5 S6µbQdd4OWI/LO1/%OjiYEFEg+Һ~b.VLdЉ`(CXm`/1.Y p=!QsؘkSZMI=ܴ $;.GO,9Z7jq%mXQl=Oڑ]ޠi}ul_@pEE&kp7}Bp{:]s rOܘVekgTGJԍDz*YS}eUv)[J{.-ҏ €5iDG)aZV$r 2Sl)̚# ,k+jTj}hLҌP5פe&-g+쿀/ֵ["D>B]()zcnIpnTӕ d0*ۙgpcdpAhku(2axs6Tr{0i[}V{g_} t~8գLAz&HU,3;VḧXD>xmy5m; @ 4 I~yoƷcmTpgSZ۽>kh+yć!`e#N` O`caTF\4=k43LOc-NFS& 9QDIJ g1Zb;£_%vy IzuIi hJ~FӵI}Hǘž8 s07ŢMu%sGW uoGp@^SDR_*Os]JKj(}\Џ2L^FjVD’/kG?kzep$~(^V\!{?8 PRgߥm;@ zDFvݔ=`~җ9Ut3lTv|ȂՊ9M孈Z >9VKC+Aן%^H{K)ys<2#1B)Clp*ml#L=ml16ػldo5*Y71nN0vW Ͷ?*3dr]UIkryon׫X=R.9Y09= Lۄo(cS/"zOT3, vȳE4J0Ȕk2GOJ= I}ʊlUhLXyLFCmHj@AiWVAf?dk{N^hwF܉ǩ"kLJRzt!ŋ!ˌ$KTc9B 2\(CF)k>‹0oKdN)Z! %_8(p{h4!z!Fn+Cj/aiZ c ,u|* n+ȇ@m/е] {lNK#ۣ8љ']#Ae.K.Uz c![!̃ b f#v?*wF3=T9Jy2I<Զ Pljst\]pXjB? 4c\f[MrSh#542\}ER!kprWuqui\HAC4DoF|y5 rxq8^ְ_tgajwc-=p,Uz }f lV¨-Tk (|NT [ߪŏ)Y5?X1ܓW%'ZFg)L.b$wT"ѸWܭ88C꿘q=p}?!fSQqf#UmOn wo _O.2|\&ӧhA3AD ˓5({q1\#R~V4@A  Ya2D'7 읷"5 NнRqpU[tV%pTϜۖ``moBY- &}UV=}u-k4Q#Gq"nc{l&գCDzU$=@w3i~ B榽]9** Lw}XJ c&0dmV?L+O3W:./@:Y^MdB<@Ӌ&1; > 7I JG C`SJF[l+%XWY?&z\g$z. ԽO{Kڛkx@kFX=çnH(YCi!V~WEgz(G~~swI#fZN9^I@7qIQ]k~M\~N|+t)7=,4@7lNz[pncpE=`#KfdmvǦ4;ooӾa'BX.xxuFyE;gjǃ6|"E.vxtTK&L,f'gq}yybv=ϛzvr')>d!eܥ-Pq@x0#gϺ=qӐSkc u6(<Fqz ;kE}G8Oc`m,W#HW^/leT֓*1b?`XxyQXZg}cرGdVP.>lX < ٕW!b`Iࢱ%epnu,Kk{r]-{S/$2˚^?"#+5 i*ۯ:w"ڬo &82F^U٢OؕxSV5E^e :[uH-l*ΊWwtw&DEā6[\ś%wtfj m[[Ľؔ ^ M,H#lI0/) rlکW6>/[lc!; K&t'ZKlLa4ڹ6f56@ Sla%Dr~ e*Q$3Te3mgfekp\~<(A| I臿g2 wOOs1>/Ev%Q_a]m@9<Z.b9b)A頉;wդIYtto=@ G#!4EYE46A36S8wCODC:iQT; fX6L6trIMCZem&jW0RT-η:QcRLĶX;ttQw7nPhƖc/{ʹ:$v/HZ !K tso]")ebyҝo !E¼j,1kXIEe g鸈RZB^X1O0g6[W\GԾsmŅe ڶ,T:et}Ϯ-s. "|v|niJ+!%k?NCfp}?K۴ @6^ @淚g>|%٘ZBGv, ܸ]h4v@xlݎi{sZPfv1|jJ$Td)%w_^r}=y_)Y>UeQ2-95QV_gnGЀϐ)Doc'AD#7ykf:3oy`+|#o[x@#T*|+TsΓ?Fs?@ {?qݖ.uy$@#DF_7ǫE׵Tb ![$\8eI)VGC<'ɼKg,Hv,WS'f{ CZ/8{%пu! NΩ؏@~x17^t (VٍsǥIf6hvʏ:]W?z9`߻敂!XbmۘIEvcsݟ6ok8Pt3NFM5,cSjuuv- F]zRsJQ/~Xu$ 8UAx8N,Glۚ*}g^:ў<&?^`dl0vaLoȭz3lVsVd G61$<<ǝ\3uM55zN0/VO鶨+_fʇ XwPC\˽htě[{c!Ӯ n1 s->Ks ݻ+G)g@ ZF!-%~`YxiIUK73{iAv67 kY"vj(3%|m8 ⰤG4} xHD=) )ui)sD@?pxdWR"йI\i-B7xD}S*@ϼs8q?j ^~sNJV#K8^;R=I: ^'A*+=9Vk>qV*IB@$pRxqXxrC~[Vs&:0q5 y=%?̇M\1@0xʒy}Bi1 QYjhd=P Wm޴8Qni} ̲;prBi`\[`f6yR!wF(gdܩv]JLkB&#b8̂Fʆ[_`9'?=(s.dKWtɆ,9SE婩Yvn –QJ<8&sP3Ǐ1{.1r8WC^%f+:aHhKrܶiOqexMNQB$ Rw*-ɥ1yַ *KRٖ4XEݰua}`~ Vo&)(%>mG Il2ҴJON_6y#3g E-KU)(y4J䊹mÃx!}5z/G=i AmnaP&#D€L;J 4э dw39]N> T,=5_נ@*4B7-zߦ-X@\PIgi!:W1 $cngzKr0jvsB9KCka;^dD3xLJ+s2푽Zy69h=o ؑ) -Qnx駃?S)\kdyKJJ@àϹ}>rN9%/DDo̵ &],-tw7U9,U&[X]豺< W@ڄ&BlnAB#' 60~0K7_/>s72`p:(*ЂлEDOGm&6+4t 鍅_3hf@Y9Caw\F t[HXt{frP DG0}PHA^AT%[*&n%@(O-@U0#q]}enNKR}M0Nl-Q|#<P#[>#/#2o0x[>&P/chϦ3a"Li-<ƦUt|R̈́J5G]<#zz U6 k+S58c_8&jqJIضLS{?FC\ D%ÿ%f,)sb[b0[i 2VMƖ`Ѷ"6ǵ߻+2F_($6*}[XުYz86tAPV dD3Iߎ=75J#m5 n l\NU+bnE(nf\Uo]:LzCR{: c7$f.>l*E8Z3fzq!CE~6I}Y(Z-DJ^5oE!QDvQw4CۯO32c,Ԝ2TVf0Fu?u/<R/YP {iʍ.zޫp8 jI\5 eA}̺ -j΍A_;J{MnF!+7VKm1ǻV"0 7:P*li\`o xڅbKC[z]Lqx3rgY2͊؞^|QfZZ*gT[x]"kymWw)M ‡/!H,喵P^Z3KEFt4Dy3H^ul$E84xDqRўO##jk?b6Q'<[o({;JX_a%M]g}k(Sig.v<؞D#k͙݁_DQc b/,t/(򚆙仜;IE\b@PU`!$f.1D~bur&GH S_svć]/HI~HPt6ڻ{RdP~ []/EQcZ._c\/Պ|S"6Rٮ93²$}~v/ |{V8Bwb \v -qu:~3Əi=,A!lDsT!޾TŔ'|Ui*fL{9.}P9+Z:,6su^-s> 1R7xx3d8چ zZzrJ>;qvnwTl/3>GAr̈́:=RzF┼QM\酇dsaOn 8W.15rТH5=[PGO:KR)VһYh/1r`W%\ɟcWe]9"x͏Փ3p.܁#t^[2}L=SVazE8X1`Lו'Ĉ Z@hy-GـZXr^ -WyUKvjf/^T_avjDbW͕`8_lg WWQIy>Y#H~]!oQG[:2G *֑UU2 ٠|aA ыrr-cZ*b BNꐾ6k-`!5mwu & 7 jRgx!clV ̙`AjoTx[)Z;Bb|ArX$,ECd`{Y&]>mʮ*&* RHNM[qZeys7u@IkBl}\ǕiG- >NLu*f5թc *GQ';$H+;N]w+ՃW+HYⱈ0Q?B X3=GzC:X;/Idj99"~j[*=RFE VcrY92+C7FWd2%'Xi{f>D:NۛТB}Ԛߺ3s .txݳ=(>ܣYb.ʳҍttQU\hqN&夽D H|ٝDH2>$ 35s}ޙ7_<ͽ4`1}E tT>sŪԫK^\C^`gjJǦTI_|+l{I)v4Y|_&͇-͘hxFvbAᘙן¶SX*TRjCdjNw6`%?\1\N8J3KGi@$CE_K|& zJ.4'(*+6=,ijiHb+۱gBg)#C`rQٶ{Y3z-]郃FK-Cz<}4} %<4}(z4*kHz,1nuRM-E#q*&*IϭЬ4~.!~ջV1&= [+k]m$>h(~َ 7-]Ou+OXn! !lqruW81ՓDҸ>!mQz5k a(Cf->ɿ-hI\@&3`l7{B  [P DBEpٵ}q7gN0CI dB8 ? ]"\Xxypв<@h)V1Q!9.p*8^AX&eC5,Wї'#׮j>֓p HLnZ~\_,ImJ^YmKB 2$>zVYt_Y3XNbMenOl/vq BU?6Af@PP:KsנB-$LmJ~JF!;0I(iAlgU>I64{Z^L3 I6be-`°:ra \61è; M8˙hY Ջt!Y,F~OV |x5ñ :*!fG΅cWbhWd7a _V+g]E"^XXp=@zh IJuzgSmXgj7qH\T=΅(bZ;0qxR*6y F䡙ù 'Z k|Z|lRXZ\++ճgC nJ%eZBzH•]hQBzMxodJ`6>AUMao{YPw&oe-2:KE0?0 >a5cФ5TVr쓓#ŦIw*SwóAjeɚAqʔOlLt,}U39jai*UG9IJUB`xI֭HdţA}ljxY@~i"o`"F& "< cU-ׁC |&bċvkYn?caFp  D;2ЮI֗mj"V4MsS*Na`)eRp]& ۩Zy]·YͅbܐM[7ȋR'8a ^5 s(.$/ ^!޺7+Xdَ vw-=9MgQY ѥ6r:G>E m)za>0 <eqbд+!!uT([omp 5Z: g}ѹ}$pwQ뚔| OEnASK2܂#" WDE;`Y7KCy9%y4KJ&Gd\mw=2Ų0J5ry<·є5y@}|یV+je][|H[!piW*fɹر`cC`uԡ@I_/ys/&`(ՠƇ?'uzi}c3]3s=3ס 2olJ4d>@e pZޥyr$q=i9(l0N5܁h#ļ¶Cj`wç*UI`xgO UoEI*| ;i/n4\)Ee#utt8}>vT/)aYDU9gwL'xNԝC˼=R!^}CO!kЕcz-ćo쀁 02Wo7X~rkʤ[h^!e? Er' յ )&?7,Fq*~bص#,Z EJ،L N!mj=6vD'§ۄCH6Jbv}l\GV(J =^cYEaI:z{r3$685 `!uY,#؋cS$= U(%yQ]8M$mzrq[$++.xF~i#KNjYQʙWd^.^,-ruN8W~ >fNUDQg0&x#셼ILgՉy'C$C~0&ζ4y0Q<r5H YEP҆Sn;ww2_>&ܟ~8Wt\%]01N P^@B?F@8W|ŤyU݇h:PR<(3Ta O~g吋KVt|hX@ȥ*ujk puX:9b}n#˻gYK0 Xwe RW+չ._c«#9Q!&aA0j jެ"f]4$2҅]ƹ|G^K*`DKui q ߈_|"#Qh¬.87K_C!ZU_"~+ >&cyAe0eC?<^:xc8佮^>QuVah݆`&yũ1Z]eztv/%krًJ2BT{zߤ #&U扊LCX_HK3b t2N&,d44ذnCm`vj㔃Mi2qI퇥"N^ggxM($ݹGjE,J%L+<>Es 99#uk9zٳy3l Q]`lt@ *cgZW'8"Ґ^۬@fiV1^Kq@{@Lk!D'n&;PEvj󳕹H(%cŕ*W~[bQ.3yfAawE.g%q$Hts- %(}bۥ }f㊜4= ȟk9cu~75܀ﻗ$ ӂʒ>y\, SaH'7joMSk <'H^8Z$cH,sPh 0c(HQ`aҮA'bfRKn>g Rs?ze|>coSpk |>RoTYW&eVoV59'bvuwǙ5ynͯe"eX.a5Y6A7Wvl񽏿;OXɈF o8g4s Jz19)II#ՅU*qZ;~[bhe͌=ub "aHBB3$r"nj9q x:$ȣ)Rl7P4v2)wzu'%?a,Z^ufIzmr 7 k &f:T(+))Q v`3]65㺅i<;ŕz؋^ אţt .1/h {fI6M`R҅ՁF,Ȁ/ wC9ae_/'n"` 5isѬ凩-7G8[{.+DN'DC%T]@$5)g/Y؈Ñ#gEeٶ0 NS(/=/l88eWՖJr?ܑR¯H;RcXsc#mv?P5G.LZ{4|&y\Ԇk<Kl;ZIX^9W~iLr%<)ayNfofj 6B$B?A\AS n0H0 ehk|Ŧ]Byv_rU3jQGw Z;F{_J:rE*@"!cPxۃuB`S~lZ6+?wYV G WGMqVjqQ60F*׹cD7!ܻFXʍW_v:1t>Ե \ܗf@+)FZ6H,@ ]/@y"o!Q~kNl/x_>{h<{ydiXb+b΅eT 85Ay*.lmLy]XV9dﻷ#~.r#V.G @bSC|{br+>ˎe~p9 SRX<(3K>EQՖ<S_/u0*t7F伆ui1!f͌,|Wc뇓A%*WB| _ S4A9hDCչa'c>rQ,_b{p"I=~i*FK!F)=,W+ C8ZwHOU{+UķČc5=t(5Vmap Ÿs>  )J6HjdK'Ve)]z !=yAQ<Z~daPyéU~7D$tCE€2!KKPG ҩ37fY(ݧ#>u /G'ӏVJ8ƫ+ U|Ą!H0pQ1 1#`)c-n!; Л 42,xym)R E,~d&.WKxhM9?Խw͎DIL\`a1?m38 mU6lmd/1@]HXH%`ZD1pϥ~q]>?ʭCIA&u|ᙸ)y 5=Gڮ`ttaJ?lcshBL,0bM7 F}/k'E}/z`*,EY>ߑydn9;Kj5w`UBtwJt_f.\ڤk]&|GeҤvQI.sQAѱ{j2~<"u uSlG$tAF ޗOAi;Ti~kQcFJċ[}jT(߹ B?M:8Jݘuܝ T}|(j<| Y*]|>>KjMI[KW٘ j_ n˛K^J4ᅠP}#S +08_O犼9GwYʈ:ź] 2ڨ:lK7vӵb !Ňsd̓grfvRxRDB.@)i@}FG_V[h6 }UKXA ˘:M._Z$l!`֤$μ)!ehh_H_Ky՜' ]CkABJθf-\Ã߹6'9|su`d2BǢriSB{cpskY(b؅.+KTbv} ]85Frk%:AQb OIV6%~Ny~śZ[ %BH%$AX=YCah,@=H-1p%Ŝ,`W@fLeC`Z;y0Ĩ 5 L(wj. ӠԬ>l*@L2j(?SgnDb3OzO6>ww6'8+@k֜n[53y<I58ąaWBRG/l>Vsz([o'm\ ($h0QWY{{eEV%,X15Gjc G*rC2E37o3ikRiCr5.f d!,Zo;A }>z#vutr~0m kG#\I v=}""x/'OT" xA/xF TM\u2+,_S*G?C*"28kX-^zcd1[8?p&), J-',iSauQmM1"ʻպRj3:%f9It,Qњ:=9oC d^:`I4@zOm U͡ ?Pp /g-+* ,8$ Xް2T9#`^Hg{>O}9gT߷+ٛcoiqIQWUzʚ٢5~.q! >\nV':-Zz]|oEDb@g$ץ). Iٙ,RP`dL/"uԬ#Hcwʔ9MцovL4-C8nTWWJO=Ђ e^nJovRR/ G a5~4zɕK Ö2hH*z5 M4elg y9郼N@UjdIO,Ss]i@BAMRQw wOjgS7<{O>>$QڿܖMwztyFt\B*)͞KOQhNFqlRu\\:\%xgn4,'߶AӋ ̲ H^i"njXc12fDE?I+O2Vf<|,nxBQRFICX^ІXH;J'eiF*1co/Ġk:n8ace FRkk3cؼE X$nbL8G.C̗i~D p XOK#=.s`jc"D`埻x8z{>@xF!ݠ S9N:" OhҩMλl2G Lq|ŧ\P[>#&`>g/*8?_1|%X(>xBE!cXjN>/MV@ 0& ^ o(`P}8`(|hX?ϚiؓIzw^Z@:w=ueh]4]2͆畁!qDs8%hm謫XYqUjKlPuR 9Qؾ CC aMf <Sy60铴Y_"" KfY mⅻJcj2l1Ԓ?fR1jXIq$++/}P>k Õxs;j;k٫>_QSj/2)o !}NgH[ ]g?70)hV0 Pg-[l˱bZ~?%YM=1gr4!%0 unbFd(A?S(dԂspx aF] w 7(B6MIz>!*/l*ᤇ`tɐGxxD8۽KX !BPe` {#mI$k :,~"SX銾qV 4$}^[ڬ蛎ru0T{7MȢn:,AۆJ;\䕜S&t8b%T??- t'Lbd" ^z9 Eɏ?2 >\ ʭ j5V"xb_w'*Ӳʒd=.Lvǀd*{Sv kReQ?ir㏂oL` {GTwLxggp&Q+3ܬTxSP4nC#>4=Y608#wQ ה47!3..QzÌ2f^IvU[MN99p u> m0= -tGϽӽ\~]]śoƐ\uھLV~ohST]J9?2Ԙ_(vBob `,o[/q}%FɼɷBJYYWR݄Ft{9q]~dK?,՚aͿUfW~+h}h?"Q4zq@ŇIHJPdytN^Culxs4^pd4kQ$Ɋ|C&aPž)Ereitnڕ,(<47\{@1%-bLd!fn*dHܘєB0kote,1TYАE8xCUi潄z&{9_ )/_ź+$.c!(o+O?eDQԧ|Gȃv&]\Ǿ:{8Au)kVZt;0URQcSjs>`rYV{Ah Y1R?0 7'nZhu:hXx?}$A 5ŀ7-eQ̨pbmLM5C^kElg?i xx RA5|"\ V7L>27}W<TXpMM%v!MDu-vRjvk > "Ja o>&7Ԣ| ^ 'Pn= ]mtF& (D-GNӟh X8a6kD>8xhY5+F!xP&v0?W-u]3X$)w(;x-?GHa~Ue$SvC8 T9*;Dy7ݒa`V71ehDy(,N@{#]@4G_l2INJ~4dp4aQ$j B)5gO61'w^$au :NveMPLxt}Į\ozOLz'Ŗk`f)7GRREU7*<2;]2yR?Bե GG¿~75oWg\iC>DCwQ%bqcUIe/ Px ]Pu/FzIb@jcxsD~5|@+\sɶ`. | ߦ.#َu.u!jzP=M_ZQWߦYwNT:aH`&\*2Ey-8Wlbȥ#bv9^?0tQߖ_}Ap9D OVǷoq{cؗUR[DK/3EAǂ:uVEk]Jf=8eHSAe:Ho2LA4N@ᮬN0eSA="t VALfSsb!ldW_'O /#?2`W]浄gO(O_C,D;fʹ wq' *|ad=5nn" vBo 6J#zL09&9Y 1ji,GԫLWOWOp8v0c=+3I>=G<"W.tac6:hH!Ƥr+CwFh06.6ٽa =S,%NHíӽ8E4׷/ZVLD5уR{ :2ci\f;4'FV2J JlwoyԮjm3y]?RJZ E:wlE\HTj,m(F`-YôQlmwK,| 7Qz! OLr,o)SH 1b X2)d֌N9%}Sh/UN|cl8_aoOܵe:%fO1:H+/]e"+FU8$^Dzq_y*6kx4՘G~u) ](baՏRvLQxWK%!JU"9qMוqg$`sa扮bPlv-ߘF wboVL;3b|M*:FTuxWL&VLyMg1WB@d~f};k ں̷~C/ʅs !~$Vk#Dȿ)?(D5᥶oVʢ#/?s@-b);Lsrj83E*!5 ?ee"u;q_&|O+[%!iX7۳? $3yNW49N,ւ¸RQ_b49rN׀CTB1Fv͌d]~D :̸X"~P(WHJퟒh o9&ň@yŷt)>zt@ ԊA +"~#Ӵ "Gzum9 :Xl)T8@_b2 ׫=B)n c̤a+5F5k` !aߞNIf/Ύ '9W{/oՇgnfo'+*mu>_x1l[[pRݡ'Ax.[(¯E͞b"ȍfO8g3oyP;K@DCx{GY•9^ό.mq;c 2+aAln<{y8e)<5:`:]Ku9 zd<>sދA;7 5gw`YiZ'ު% as P(>?w DLc{rh~Gti{ӯjWI>!h,H[6ti1۾9\}ʜ{VkikU VCo6M0wC op{s֕/;#c$XJu++&D Ls#QdeP,VY'8?wӮdRꯊҥHe? ic7`C)>4JtDo'7m-z+ŀNXM`Ӗ,A0bΖԝ?flnY)*4v6É^>6b|1>n@S^`l]Ri7؜b^}e~(w m>^iΏ kb% %A&=np5DGo^`KYa{Q|E )ibNdTOy^r3wCƕz6s]Nn&_O}تcqִ>Ի<;5RpP"Jv[#tLZhASCE?.g԰ tS6 QHV`K] owYI+WI&KTJ7ī'4qFSNzUJf{$4ȒrUs fX~'['\<.':S9 -v:|P{l>RMSVy,ϳ"BY|vy@2/ DLT)'IY{xʐ^n!wUL<& (D-jl׹n+ygD`Pڀ7Î+Gו/0/z"P7ȳ[~1@%!Fh)Zzº. @6.gKb_/[&Km+|dd=VȧlS)3C.eOJJOnu al}ġ8ǁeQ$wvlr J8ǭR9ډNnE>G$lGUp1{{>1,֝kz߈n݊t m{zc+,y~#q/|l|=P~> B*p0#3| >l_+ؘ|Qsڌ;E7;UQqpFwoJKhR uB^kJ,˪~ ,c5΋00UmI  4==F8JCWvڡ6K 1 J:xH L`5A IOMeEҮ96*(Ef:ӅgIJKq7S;@T&ҵ M>'{6p Hv/:5s&ă'K\!ܿ6­Q:Eb~{ols[۔ɲ,3]@#7ez[tq77 tSJ/tT6^@_~yk=0nvNt DT>Mq_3tPQKHxy1Ȱ_G^0Yʇ_7-@eB'VW),HMF~Cr*m:,IsN6׼~p*fi#ru!zpNܦj]mm}Rel?v[; 3/$ްm>:S_W34[9 cd@_|a~*(|8;0C37[f4no VBFW_N5iK2e)ykbǑ _aJ}̝T-,⣢/ypCAeәLH̓ 5|1*q2% aka/GsX <5+%E5w?cai \H(4x })>gjU3.k2sF@Z\[wӣ5=E @}cK]=^|0ϟ hLZܿj"Hetc"(ʌʞ$8J4.? .˷JjPgC&KN<2W}-W2"vrq\ )a 7^F()]gѪrԝ] ({TG"YE../̬BF!s=yHj3ѱ53 оϨ+f4hjmĉ lrrPث/cΙHn4yl]F=1_C\ե/b]4}FC\?{1 pGSqš`X]V{ ARpɗ$Zhe>VXmXE~M?]YҶHlLZD/x .6./Ƶ3y^$!<5R ˎǪm |̴fq霎ܰAt)M L$4ġ6F_nˠ"a '=O:uxD|* xEiD;t[VWKUYަhw]@XPUyu$$,W7Hl=AXf[D|!y/xwu zǓ H"+T87U.E; tkOǯZud.V,zDڧ.]:]f9ym/+}pl'ic(F:8h}CV$у;ILaMDA!K|xEtO7p=<Tk2 3$  E+ݏtl~1 t ?b 1ݒOjnݻ29H&yVk=RUPˣ2p>vd!gb#)VS[Bt4&ff,(&`k8Vn 5u3\H"='ONtigqeS`o ?Z-E]^峋#AIs\ 3,1zS3^b3SӚFՒuw(an!dR9W$}<޻!CqD&ePJ+bڴ.!x*Bݞ X9(X8S1_rPεKQnMh=.lrhbtl ĩxw]e#&BV@S Lw ֲ"f_yj{}CCyVfuNE\WDe S_c%{`{zg g0=HQQoyx婫o>sq/+^wcP> 4鷘(jK*7q6hPgJŚ~}LT^C j|go7 EN\YӉ[nG۶h 9.HcK %9AEC%_/?b! Ugȡ P7wrU[D& ң!'{P WFa7xZ]¼W]CZ%;/#'ٱHr𩋙ײ2iECfFaNa5WSk?߽0V]ty^8Uj͌wkHx2FK̶evJFTw<؅&QqdKAnz=-.iqYew+VJi"Q2u KRpl,tCʑH!ϫ `mnАDiYBHxӎo[3;O<9v?@B ʇZcaBy&yy@.mɵ,OՋ?V)`jB"%dL;|B,̼r}pa`izQ"*7.$KBsH%K1R>Xg_s m3ncњ޾+L|5bv3>[ut+IZ$ l Cyb 9o-޲/˰=~;vӷCpdnD-8S(\ϓ_}[F\;f|sGhaWR%㗇uu+nn¶986M;Ѩ1m0TPVhvBR )=-)PC W#5:#T2 guѥ/䟃C }UHMa+" @kG]> *\Q߱;Pp0Œ+|7mDa{"_jQSC3KI)iS;YU.@FoGGXfÚ3*Lg` 1@O|{iy}9KģgR%Ȝ~G3~˼F>l,Sp[=~"JxssB14縬)D}TTO.oHL\5V“bC0 sb'cM&fr0W>ۊo{L&<5 ADXvSGg&C2zv!Ej$T+j@b ̩M\c[>Q/L j|:F}V~ r$b 8r@nofFcB!z⭓.D-% wNL/y5S-0F?6wdY8;KsL}|9ݤـzDM|@ZW\\UoJcxFy3&Zv\3'x&igɯ;^.Av4ߍÄe3ˋy]:~zoLJRy^°mzv'hY A{]Mnpc=4^w 8fg2pi𚚣/c7%7&ek+VFiA/a-a;<2bC0EXjAD tT I'!t.vӋhæ<~߫~^8T? IL?j{,Ki9pƻ!a 7NPBvDD@pIl A,eH@wl~k"Y_mv}9C[6|a>st\͆lP,)Q>zbz^vJy:%P"sSTZgQ)@3/.Gg ZiHTN1 68EU s!%z|ggc`k8{ru 0" |aYI`j-tX,6r EyS'~ (e7w? V؎2| Od}r2ȝs{ԕwm-i+!8 Y*mcYm6^4+mM˼8A>2-ӵJ>^k!P&!N- UꛃW##Z@kvp 9ABH9FHT̮4k:JwL"O_X.N$^&/&Lx*k(RkW0&6GmL$+`sK:y\[ RB*6:'0Q4DuSzϪl@^bQe2EKbPB$5,Ze?vr[/JLf_<Êۧu&c~Z6\[7y[(-+*[Zq>0΀}wL s7*Ma*Գ/o+_ |W2b2x ]]o}C`iۋ!X'Z@>{%-Mع-,$H>L؎eQ.V/` R7I_W8ǽ{Z첃Dg1-p d`.AĄ$|ֵn#rS,"M8bC+/|s h-C{*Wfy k %rB-n,zp QM݋O%#,cAA(yFUӸ aLQ>Q$jfoE?4Dz0ps1!ߕZ_>IZJd#nke}|kW 7\ Rmf`BxmMG8qcQ(7͋PtB/-H~Cn+GTn\:y vğ_}8p0zyu `O]jGrPP1hߕdž?YkȾβFcci$o ĦcUݠ ߌl6n3n]ㄺk-Ã1py,}XǝQ|7Kv [2`SAz)V5;)`'b(867CySj(UV4XkC(㞫I1zURn>[_, /m-[|<ږJd+`ӓ;ILbh˗ ֲP^sV ЂsΛ'yu5nr58%c5*5z)Bq4j\KaPtU2Ɯ.85/1c?>S UA v39<3%%-dD70 OSQg /nyM?D>;"jgv(:*IH!<[C3Q˫ġыw>^{~u=ZJb*_'{gocѾ~ jQB*7BuC}HX79ܞf 5Ci)L!So}7 ?b??m=RV LrܜDt? BoQJOHj{>+QT{&Tt|6Sr?H\5W70vgYE7AQS\ՕOv:'[{2a&G"(6$F繢"OEQ>0H7ɪ'udj5wwT3拵&-zJSJtRc3+W9*9"!H%Y$n.M+^u\</?ӓ[eM"i-{Ʉ)<\AS;B ~kas#Øf$EVlc+$yq%T $ x„^),)#Pd!'92nF߷cZskY] _dRu0XIWuva/gh)YDPKwnοܥC(q[뎩㫲9SSqǪ&9ԻɍsXْ-]% >ЩU( Gbo9F/0"XHTQLzJWm[kfn5.}h 7S̰bեݛ.Ft"0ŭ*CX谁0nn!&juTկDb Η~pI|+c6eX8Θο*W\#ppP;_=<ƉuιE]:7Ғ>dPSJoB[昃IɫhDvUIfG0`E]-nHyGk:5gG$mr0ËhD7Hy _K,V;Bqٗ}x/6-Z /&&c}nb 0yֲk t3 5'6l};',T/qMSvwhۑ!/nTmh 3-L=xdb evm:(QCqmtrΐgCAn3l>/BS8O2n/!o,-c!e2N$;T2a4կnPkyl{36b1ZF.Qm)u))E'5(cGrX"t8E1`@„ܐ]4$ qj[ N8)ԡndLBOaƷ { HA(ǧ+n/ ..mG_T*Yͳk;@P1:|gsڊhiY v~D!BZ4N.txO xR}`Y6\ InvBN<,\=0 9֞+ϻhA咨hzyҗq&vPkA2"iy K &Ґh6}Ci|3{H99)۶ӳ}Ptf˶Ze> )']_0BA* ?"$NR] 6{!urVm΢:h{Ʉ 搏)teiV*EYU fd|sfYa4ۯz:TQ>*+12 KǪ1$WMw ]k3* 'z0ViqZ";a/(I6n5k8 ՄD؞0wᶷ"3 6RUka_LoTTs"AK<st+>i }H9n) QUwuŒk!Q2CDRd %f[j=h~[ߴBHKm@uB9#o K.A:HBFoA`Ĝ* б9br6iC)1k䙮s1_Tah{2N꒹&Lf֗+d<*WK كPK%V ]+=%JcWAYn?N|P&\z?jS. 2WL,:as{̹;"9o}BqI׸SF6D(8 !p4R'-H-2䀔3@&*eێI 7! `#aB3I#ȋY%ac 㵽"Q^TgtYoaQc:En;j(/=| <\%{+btZ=ڧ]펀ڃ`LgJY-.79Q g+5~Q{P 赏`IRSCKaz&% Hd` _X[cBSSpJג,K>OUVawTb" kF\N 4 ǭ>= EğGӡŵL,^} /H[M8ЙC {NRF~U%-zo]tRY`5ǬqN33\FKwQy{nF\n!&RTW}_iu|AidZu^.VB$n@FfϷ׼ !810AE\",.>/z@"]µxCQUNLlo޷(L<;+V|Tn`:D'l xJǬ]/&C6>4^P+hY\w ss{/n[o@18ƄlҌH[uŪshi:鍓r!ި_7ۻV 49ş썶gAIrPSȂ˵oU ݿ/H1&H (į<C DBlJbRp"c`|KOo\5l,ik@QW*NTֆn9GTGrK};u#6g&, h\\t9cZqz]C:˗&`OAqF L*ŁN]bDY2%T2 i\ruH_É#O*oA0!rPyڪ^I(`OAA^*ȻAWҜE*bCRQ;B6/lrpO(d2i4>dlH3M Qĝx3P(6XssXCtԢ04Y_Ej̈D Ƒ[g@Dk/f( 9ғtrB@ noɎ>3݊ǮVYb 8lPEh|ޞM_FR {o+"3Y?fGީL:zȅ^g-t|t3-NiI`yF(!t &=>UH]u{X2=Gaz9Pf 7؃1Z8yogFؐ,2l=@dWS?Il=j ~Rsy@7H;n 1oT)~Lt]KzB}*%Tt\tJn4H$dTÓ c Fi4`Æc*Bz94=Z~ 6:շ>Zhm@Gw@˹O=]ہ Dշ/ 10 E`3Z n+,%\[OLGS̓{+M:63rQpdrY /*@^MyHlP`@#5cϜ9c#cάW[[k2A!ʶ[rDҲ_~,Wd=vb%4zx:'-?Yxd.6}ᛦ t謜0]yGa c?zȯ KVW~t$D3ADg3δ[i!9 0=_$OC֢K4Ɏ~rƔgObBz \hPߥh8XOɍ tQ!s@$ §|FdF {+u~ qH\,K?0'%qѥg3|.EO)) V\l O<4^f$z46yo.䗄dHLp^,$T_KfTѨk _Cv{QXדiu {f3ܤ"jQS=J'X҂/&vɡs6ڡ2| p1v.o-? E9::K&T?25ƇDU~*8'lzATLZGϵlUxlTMv}Qur\e.dUo"X~UQX6XXsg +00~UUb:U- FF5b@ )`I%H->oKY[4h]lm_7>y˰e(AǃI+ ?m" o P9JM&(M:\6Yᛂ{\'nT!՗ǧcH&uݩ$f ozꛃR͠=b-@!p|]ێ{ᾜn=v( j3Oۢ>':8vCcJɵC.Vc$G)ϸg8)V*w9t~Dž !i\⇤>=f 7kbz0}1_lCc=G'Kz µU#y8@C=5r)*q)$2L ?=-^w,B߮ۏPU] z[㳏<[1b`8*YY:dԫGj}l&9x녘}"p9U^#uveq$F 5dް]Q=,eREh |$oo:O>Jr@1(:1.BK|}&{P`HOs)/ s$01-Z2Kpہn^E\5d?2fJxGFr`_r6)$Ȗi$Dv{lI ؀|k La%\@"\CTGiCB#L5_J>X18+53=tIE¼ aSTMAnpSu^ D/XxTs`˻2T͠~=W9;3~<(gC#Ktb8OJ1#;]b=%te]7_+2Z|<Ji%љ=G?kܩu$ 4 wRi y7*8';ѣ00 8H D] ##y4 /EInj-՜Ģ{,\S5K)5gl-*KZgN% nZ>B" ܑܒuc5Yn U]$g]ly(Ic<|LF̳m^DjFАf k?72D[HHCCS:uc&PeRCb¸\Zp vP5:bxՀeVT:d60o\bg41eXpz)N{Gj AM0ٰɦp@8\t%d$E-<ЎMp i(eioEbVTp/GjH6B!PeQVIܧyˤgTVğT{ڙ4#UرdaUW?4\ȳ< ]dאuώC<5+E&wAa􅲀AhtX9,KT22I-gjZ+҈W/ F؀2#aYx) kdRkQ?b5(wx4xЇ$9+yB Ԓ /*$dۻLfR-K51ڿǀ,#_\ītO;Ǭڞ^'/ #[_fB=v 6|$&/{@$Ke]ܱ诿G*nBHD_YW5?Bpwo!8/ ƉxejW̝(R3ݔ ~,]S]4&Z]62$!"DT=SbL5kţr$ZUZ*2oKY׿r~f#J/MHetWaC єx0]* }\m"-h$-Zpc0n/=6ݽb2GQ33Cym!x_pN?xn]+8z&oW,= qMkn.$AF}Co #LA'}']Fꞎ"꣬^#ewM'XlbkyQyA Է-s-! \r⨟nױ}?דg{nUe `1篤t ~?٪MD7Lz@k/M֜^ȵЃV,4k1@mh&~?$EJqFD:ȏ >4{/m 6.@ƅVU@vlFLj!Pb}n4Q>ϴ,/9RiX2.清]R]uBeƟy\P]yٲ"nc=Ҏp W;2/`x;d8UEiS{$c5cQp8k3 ,CA+vju>Vb REUC̄CFp(rL:K/3C*\7&fnxpq#(r,.ôA ,lt,_ϠRuy}(9ir6AG=[.BπF {!RަY[2:3cy b릱|8_?ך5n6W~hM h_τ,QK2“\r(*g3BIx)Xx1tarN;FB)]aY۽>l&?O"Φ^xj;y?=y_q-jゲ7N'j/H>/*bD1a r ˉR\!йPٔ* hxRn_\+>.4̑JPubfHv8AEv& U`\v'sS T8%GؽML2΋0.˂sDASi68_İ8^u[- @rA^Jx{vD]_b>}FxPL v. `42j p"C9/G8_BNoL^PbrF*i#aH8J/kkJuk˧D3%C; u~p'x̘#w? 5hNJMhQg(FG-gJ% =_;7mALoE <ЬHDiP?6J7jں&T$\ԑ=!)4#-2y7LHrx\|F.=5k:q_h]&6WdRr !-;shC"Uٛ<eU5FnŧUal1)C%r&Q܂NRvKs@NjgeEp ioh/AH??v6i` Z!fdd_ht%qz]|ԍ,W,aSF;ؖ"㡊k)bЄ~~a Lȣ(*[ߩ+gkyLҜ(<_jf\3a[K],APC- =f!`G>ׄvDM1 qaC*7:u;ϩ3 ~T>X}4LzΞI]{}|K"o 0ؙB% Rp¸(W0CNjwgDPl.^Ρ(&aTprRb~9&戟)c}_ֆe06–Z(oZs#zA]`Fg/?lQgD2=7qtzfZ{Ḿ7n_s@ n 6N]~) ?2~USH9V#,zTVN$ޒ "ױCoPai"Iw`bbA^/(#ƬBd &]U0u_ S]nF9ǵUYѢIj._]+&ن_mg>9w*at8.mIܴbjK4ӵϻ^,I~oIwsRV#/ w[|;K,ly /-פ X;1>[ukX9Ɗ]$* K=R@IwDt4qyӒ",}}tNy[>pre%gd֐%Uǯ x+T}KX5u[p$mP/ ),aR8'- eG 2s=A ^9v -x`_υ+lкE s=T׸Jmo0Hm*xm+팽`Q7wF!\ h˄YaȪ|O>縇J#x[4DTYiO\OZ6V#C.ݬ12a}@YhjIwdAIQyf%LzU/TT1p>##ӣR`nD_d+TPٔm:5?3Iۜ\r2̦He{PQA[.ɥE@F|DRNWy!sfn\؅[mL[HB| APZ1-9ѫBy+"HD]BNOc/IY4Ѧ?OEYHĹa:( [5VٙcBx5s49]r占>$s"Ѩ H &Wdoii5dƕcD 1`Y B[YM';Kka-Z0 >7ei[*u'KUjiwU~l= +jp_ VN[s qC@`XO=W9_?ezNU(Z$.?$J4#Y9؀Re=#ïâ[4 0U /򺛫BRfCV@1<XrQ!1ҤCa- +n- DfzoG免ǔ'3:j#@% 9WWb0|v$T;Н| e:Y]?Q0is'0VM9gnCF4af}}Ğl梣|*|i9xpRt-|ޖ[x:ۿzgug_gX^^?!"m"}B"rtWk F(QbX`4KKBHVIgn!dU-O8Mi4F< mX#OvIL")h A&Ik1Ξtyzh]_7{r&ØgEM7Q:0Te؞`W܅oeN=/g37fNa O㩈hvojy2G g %<0uG^7)a0sscgŸﴦUTaY45Wj[P19tO 8=Is.A\~ϬxH;rj+cO.eeCB2R_OsyxQ);/-^&Xo|ëܝ2PgqLg %^WbE_Uޫ "YLżO݇r?mEGն\+ޘ}6SSfDHEcn=Vz_rvѢ-T\a_jIlka@iG 8b⑴:$LI>Bdqѝ(>aM؃'Κ@v$ L`9rաKG2pWmfԗmOmU9~&Z.:`JSf[ױHM799pt@W~pȽ rYᮩ;#=K_ˮp1_;cjfQLVh|s9OҰX hGꎼp-R8a3 ]m Ʈv .T iNQ^;cOL*.Uu@/5lF*93#A@pӚ2,'t OW/SȤ->Y;lӳ~nk4(ʗmLx+:uVIY!?yY^[BE h{^@prn"?Ls!WodkɃBy~\޽\|wUZU AdѐSu('M6fQ 6J病0ͦ9W+.y-Q,] b"85|%d>/>s#$匛=u5!xͲc-zO%; qPnZ9F(l4ֽ{7Mx[ε`+`)O($@6z}|qd=_\v\rTknnä@ӧP7`>ټ@oPa$*?|d"bb5 5R J!4~^[PGi A2 1{Cρhf_kk+%fq{kΦZZS!c+@92U<KmvD| }.w¤ NڴnfR$Ue`&E5sVo9H&X&#f+_wuoci*`=;)ž4޹!w <6YdS\1/z7*1p.0 ^"+3ȳB~bYP\Mp!A4uY?]Kn( B^h*@ _z rЀ2-8jv1:(:Cr ډYd5Ӿ3:v XyQ,3h-ri(0t,yd ZqEBt"')aprErl<]r  &3h]Z4E1c¸\kIŹ~bꚝiQI'q ܻ% v3UQBJv]1%rKH<ë]߈6n֪#Pg*j_YzkgY0DL^K5"4u쎴 */VHX2y塟/M]%H 0MȎ̌?c I R3N)^cg?dŮu Fj!*jN}bJ{O›Ⱥ:4D;ip^uǓX~εDJ7JM_^W |m6h:&0Eq)^Zi鳛d+mr6+W)vg>I1@珘oAfR Om"JIOtTO6Lw6"&y#1ze2n.n{5ScdӵnsХVljݎ+ppnd"V "|pX[#0reV&V]N:Iɵx SfEC~ә+@9>=:$U:kᕕ p/h&;703f_j!GU`?uEa~2痸1vCmq4 IԐ$'Qߗld6٦6QLՁ=Z:6+ 벸 UBg:SB8q?Z2^|"K-A?GRnVD8 YjҌ%p8bPK(Zd(2!%.3-_-0)C@O㣶NDHg'ن-}) +n^؍&*ϟs^iZ+*0CV!pp8},&X xuԪRfC~}x?R6Rs (\/7@p 8QPm8D֫Frɮ ht-cXN6y,U4싿XQzj<-a=e xWn`/at8icex,qL4h՛eqla+hIFzZW?Kq\X@{294Z۰<;*q(c҈w(*B+WAY={6ĸORiIs(n[b ݙr%q &f]eO߄Sࣲ&+?=yAہ#"4G/7X \[z5T5EJp,]%UNv?j!he7i@~ز[詺 7`\dȂn1m_׫i*Ğ!C^MBq HfMwB0gngVvyN~8UGg  B؜+^ŮYljO$PJ^+MMT-pҍ$sJdͰ-lR3PqIgF|ðIۍ3?*֨\g9?-YSQʞ=-] uyy0Ob88Pu&|aajDB#+ uXȍ:)'ZTB"2]oAz{nxfRsdM/㥳=L)>OҞ*XD"vH,Ung9\.OgנZ Zsy?á>jyHW*mVY5&Z b$1D?>FpCſn. Ig9KbEn|BdH{hdz&=5 r4b5c(@C%ʵ{IJBhq}%=Xs6޶Vb|&ɢJ v~Ȃ!|S]0@(v;jݗfuD ;$=7Udw+ٕ}[7 \5(]œs-Fg&=;lm2 `M^Uu%"`3h28[ܮ1d(9W97Ĕ7)~!ozMzuή}~q3YQ^VGIdj-dg,lvJffJxsBkWZh4HkfZrpTu%0 _6^qvWEw8[q d6h aqY6W'+~MY~HP!޹֗P]RJ)>=,q$ ~hFƈz=D59UpCqD@|J筞G1u< 1"t&RMθP5-!$Öz( ňZ@c xa 4n ln^GlųtY㦴Ț2_L_B+xvy> g} )9cJG%N24/4 |&Ό)jZQVpi&:;lh0sj?6cUqLkbA,|G=hHB+הr.;zj`Vv8<:oyzŧ:9g3GxlPw[mzY;FNCMI[".ZT Lh_ϩ<3j(ۣW2P8sV*`607eŞuQe8&3 k3t!D$4`Ŗ 116"+;W{y."o՛ؖO>$/fpVn儩jF\>jiy:Ï{o\!6e3 v/4[YFb1a8{ 8`ds^T{3.W54#3UצpP IuejA1:?D=&<4+4z2VZ*dj 9&>{ :ݥ6p;;2[uC4#bk# ^ fv5\ݜc M·?U湔fZafS}tdJwb}tLʖڻV#ÆBN$z>9~VD=gBQ4 s0ȓl-֚/L`%FhodJx aY؉^NƳon~= Txvi8IǡS73JVNUOBA(F&Q “p]ddW׵? MV嶺3|PMt[q>OZ; ĕE2B@8} 0f6хl0mJF =A+eVֵ- q[ڽj 2?FDkHJcIq䰂cGv|Ҏ.ftwc\Bɤ$`![֐ɧ> q^I5 9aZ~]pl Kw 91-{Bu2Ofvl{{!^`7>6NQ6alL0ŮIUh?SX8*m>.6Pc7Y&װ{7Em#R¹;~jb 1ɪؗ4 d683ˮ䃖S&(窚頞wڥGV2t3$`wQSJ~fi|* 4ݔ 0nz/r _a y=5T%7&6L CꍉdtmC'BlvnYVA@/:̶ Y28/eE$/Q-8cZ ȉ*LX`d6rYOW(&} Z(PЬ@1ML[h]k U}|v*ij afE p Y hwY- ~.}2-3F᳅y6!7W$88KL9>ȱʲ`^IВ3z)CRhW?UJNͮ4=M}4Vw!(@;{<칌6b뼷ب})'8Gw޳@͓ (q(tZ|]/gbГ%&Y[P0qlSgL',\spwG/bhלe &cB-ן=fX --C@QZy~`8|_8c)6"i^c$gխJ>:3P#+g#qمKy{ﹱ2/12ҔuKh2yXgeVpc<'1f>_4'->fͿ7UI3>rD0~ 7B}?Yx01M]B2]FL_f<{E(rڏbWV ::splځ1| yRz#10̓UE-pZ6PvLH<c옾Ss?'qDv 0;d# Ɲ_ &gJctfg>ga~r]1V\{Wv2W\qu~*]˵ruĮst`:F4q@)gQ)IBO)c}{c`qAc[lǦ.}QPL{|s ].\DT؎]B.w+ߙ"9cO 8?[o0m‘ΥO 0t fYyCF6GC/;)w XQ,`%IZWY wfYs-o,FxרInlNz,]tWZ!EaõNrteDq|U,my#NcV 6J-+>Sҙ8RrwX$@ wܻr[n3f)Y8rQ8^L(A1.*e3>h@G>oC"1%OM{1Ϥq+`_'@@rq‘G. bK/k0dDा@FOBp\=D@4E$9z%=Xj.ُJYGl:.hi@;G׀JZU,pEuRl z Io9*\m-~O*EB6VmY>%Xjn|zvIgcڨљ͙Q@w1KZPKVgvgA!~9d^H2>FHP9ucـx mG#t>ie) Q 'pMIڱvDjZ8SmI[9^IY+%>mw@~Iw>KᑮcFQ ጅ.-zwaZ&K]PU|i\!b`mM![V6`wpǓ,Ix3Hqo ze/?3U@T7wklN$F#=iqε[ZӃbAjrۂQE.JQKQlAp}*d߫ߣZg&Q2@hr Ω%oxG`Ά\`⊕_H)!t2@㋃6°Ԁxww%UΖmi_0qI^ e&Dw:rkim@#&g\ʼw[:ѳ;LRc(?FneKBZFxP8|Qˋud1,lkF`t{UYWFxۓ_ jSdI>BHd CLzt<,NФd5nu6?P\o.j> Iuf"5*v6wEgɝ5/=Kˣ'$O~bAyн<"v)qӼ]/wkyDfcup}u댔/2;qwC'IDHEEO ߉4V,᎔gצ.%Hf]n7-3[bۀ.Hzd@ ,lljqc(G[)"DnbI-/IνֲH'f'ީ7D6;{[x%b0v~˵Áǹ;!@⻇x[bL˲0*n+֟˃i a)K@ ѫU2s'iT\( ;wp"rT/[ȕݻG~c_l mwsn{2HίMLI^<-D !k;6ʸ1ivm_흳 g #(d¡nIe;"UH=wWe;E m䈆,mjM2\2PS)H4]Tj9r#;HSZ_Ϊd2 u?D,Y+Jh3k/W^ GE.M,č_OʴQc%:]ZԈlgRFת˹NmLFDfr9 jR`H5> vb &ׂZS=8ڹLr=oD=,f2pn_bN0KS,?}Hz1W{XOۀeE$Mq& %i6ː_m 9iuWUC €|zCڻϦ@)(<}r_)؜ l Ct @a⇀ ŋpz}-4W ɒ4ZWRό2$XW0Y7%/FyԶ6Sj#wY ƄLǮ((JJ!IGGBlI?btVN}g&> qu OS#/OI%]N8/\eC"|9ci;2Rjx~}PM.#ֶ 9^w@ԚB7n m!(ބ*zUﷅ=mK杼v))oe7̰$ '::LwUAvZPv(a0[bS52hu|豆_X;$Hˉd-Ld'Q&@1&yrr;[,qqBbd+.hv%"`?g./v]:b"b?^m.F1Ce[<*Q&%%SigKӏw2*ꊋO3jcUKg< \0ƬBWmD{ó訕FnRX Sr%NpzX*؎A엘GVS )~X%- +'uowpRj(!Lp# |"՗`x Et^p2 ] <{ʊ Ʒ"*kSl!Tmii#4æ.-eQ:NZ/ å9Ģn]8*.HzJ[f ua *%َ↷CwaFgsԒ.]6#Eu 6h+[+FO@e-zUiQN:$5=>zYl/4qY\y䒩YᘖI<P4f!ڇ=?rr)镰Bej/Kڭ~M8+57gQqS31tUouŸzvxrFډ@2Rto~_(TK b ,3W.'s5 uwvKJY62r2ز̛l,cR.VT #ۨ*}8ғ3MӅ6o/3UPe+ ď)rH)5WB DE 6NW❙gRㄴE76>r`M?ȲnjYM=re?dmߎo8v$慎~-A|[ajU 9w5j54k%"Z ڸ[υx ߎ{a9ywya.xk+}],!]+v•l6c [ί{( U]tc);?zWge3 QnvtdTķX@yZ2WQ։7ΰ5A< `ԻE?f/T\{Ǡ7VĚ#{\USF]#s#wk b_:d.7v ~(Nl4|8!,wg۱¦ 0_;ؒTƅ5`Gc})/l_s fo'_~ڥ ]3u1W)&,:QXk-5(yN$"u)Y:h*gl\`]/i90D'͉ ox37Jh{Bg~9@rUl:Y`A$"Q4qƸ\b['}Ck2=Wʗٗ kNje<E7 %HY. t]˹GS`dٹbDȠcwb9 ]e/#ўUQ7fvzCMQ:sבR J&юpDLHm /\v%|IΤ8%FBxy谻JO=lP{ E!?ڧGԼmwQl~2R"iW6x2wW A AupX1GW3N \ySk1fѪ!0[2)ZYj44g^y ᖕ]7H$H 8}Xz`D!B_ {TCA˚^u#LNnYn`Ѡ7Q?ߌv4Chq ; Y Ck^ tXږ4PuQWԶ t./.fsqwthC>\ kA,mhxx2t70J/w>C1p|s_ 1tc 1(֧rz!#ZZ߲ /7}J:!Υ.dN|+B1r8A/$ JߐdYpZQpa~MtP,+Gs^jC*;gpL`/Q%:\3'|aC̎Љ$*&PGrQ gKǘEb6ͳ6GK0oo» v a%+h5+'b>bAUq@iq M <|t!P+_8v#i dI(iI#eViӎ9GfI&׸%Bjaׁ3!5$"4Y#$Ql=Yg#&bsoֻbqq&Wp+r hV ^q>B2V5[֎ґ"Dx*Ӧ!4.LD9l\>ZhSTV iiB'dsi@#{[I}*Jd.w=k@F+x28^x3PU ]sX8+Qnc\%2KbGoݠI@2|3:7Z0$&ER 8e%[LиbJLG~_R4Ue0AW@2&' ޸&V 3v)bD3VXY+Nf/ Dgͣcb\Ӡݚc~ocW*TAT%SLEտ0Kgr<J裃dC"tA@R_bx?a c2آ`\X̉Cs8%oe$ǁ.eWn ǩ[ɍL#̆0h^K,|qXq ۯmA>H2t!w֖{#4Sx9HDq͡D*MG99d.5<8r\mn=NiDRWBT|͕*UU@ǖS/rq3o` ky 2Ek=‘1^]3W,yfL,mx R*7TCDr ;:V>h^zWM-B\W}w:= L b*'jM]%Xw{ w.gk͸.A{J'V򙘠'ez.,)g36v!F.X$Br5Iԯo[`6bN>2hh ĞKmh! wVS5:<%f8b"5^[8 E:yJ8*o$1%%}Sw(5#E2PORڐ gJb6#VP1IPoHF :]NZcfG{L@5{{T;"~˦ @D0)|(V^ o/OZoi85v_̧)9ĭ17k+W#>hn!$'|%? eg@3Fa7NѠp7~7rXK)dcD='yDo+󪒓lޚ-rl[˦F^0ﳲߔĩ2Uٞ.v_ooPpSC9MˡiH@۩DŽj*,6Vхת8>4Yr7evFi^^>y8|5ouҴP ()S"- ܝ4 4"4NFW"B_4J㓶>Xx_?hx28{<>/[USKK}:H'hmvZ2ښG*RIAz:]@lR)D|w6W<tϓ2pV o-m sG͊=Wؕ7j4SSgdjv4/lб 9Auߤr{]= (\2 d=vb\ ?NAx@q5fqd'q&5,ᏹAލ&FȄNHv!D`SY ~K(-qJeܡS-'U7i-|#y%Hy䊁/ʐ!YV;el;.k,r[Z!0ePU+e_Xe!6z"KԻ/X)G8;=sɍy5ܫ8"YI Wjja85`7Wdp+|DÉa5++6IhPTWjRl{vo Na9DZ+!'x{BP8lQDKRGEHu12v]mq2}L%Պ]ԁ䂳JYȱSm{%7ګS-.էܺVM=v c^6R)o (=Dt {"7Ǿ:1+ [1Doj^ Nqr4/N[gVFsK ۉi5bIWUIlG>6Uez"xn:?2<Ţcle8Sr]2O@ɰ]oM]&Q{x'NEG\쨙6 :U=+HZ3}VQE'̾ŗf1(˳E&䦆43OQ8o\Zlh.嚄ܙ `_i[{!G#Fnޱu8C@`$);ۋwz!lP{"ëm> MsM|Vl߼@)sNSz7PpFpnBpJ L~'輤¬%փl(%>iWwZVMlՔB'u 4Cnr>~YNpܟ  gӻ>4jŗxds Z5|ic#6bvN;v [ ,ɶJ qE:q j>M"JH9s҈VwI57G!l,$* $Tf w. [tRY45]Щ]t~'.I=^R9GizhrL<}LbnPvdHq NbzpwGnH_FxVcI+'bw&U_Swk\ uy̜PE83%4Qt&EL1DչUBZ T>yJ*c2׈v5|w\d _sSR|v"#Bl ~7cuD|e YPkb2GAdIu{d˜8#gxA0~s3|#^Ϸ,C]ӾPE tOC&B9cʤ T+sg>#\ *tDGt>g#oE>}ݢ>=jPx\'r}i|5q#tdlt~IC=bKRBsZ0pe7#f򙑿.z~]7x Լ.]XD!xz#+mEZVOvX%fQ3)ݷ0Av(b{S@Q$Rh=MD- X`%zfi;Ojܡx1uU@h~,*-G;FgZ@{IG Dς[hh6NH3^Q2\W<חW cr2 nLw>u9喺cqqeYNmN!L`qz^3#SvOv.awÜmnLB&rEnѮ)Y!׍ &'&jO_y9[_e;]D[&6c@6#O tV.W4Dg |SI'(W[ߛ34jhV2k -2 \d'5ҖUa`F bv)дbTkq{"}+מ\a&_s2:맢|K?t;eK 4RQ@:R2J)e hA,<ݝҡz 3ݎgµSBjs#9LkhV``lcmb#*iou 3jmatg 0ZD`GYa Ux1EKdAKؖuIn\$kmgʟtT..7@Ii1d-5>KnN+)g_SNa*CPuȚ]hT Jv(@R5_tG{RdH It. !"Ajz:셆Zc &+W%T%9mdGV$o~-ՆvQV?R$=ڋ, [L9{؜\ҘOIE꡼ZS )L޳8 vNJa3VɝޔEtAqҭb4'QKhlG\B@d"Lk\evyV|< -:FQ8tܿCn"6r幣:;Qmo,-V;"FɣVvlW.>$Q*c0y@Wn}B>jFP' DZfC~fǔ+.߭n֥mxe/$KXso9geb[޲p _LxNn5}_ 9E S ʐpgܓ>HvR=hO fRt!@"L6NcFTJ!?ΎՈlӰ騗#) v'wl{0=$("PAKVC ii=Ys50>RQ͜V,vd^B,\ %a-T){cy/.gMfp] GEkdazGInr'5 ;3hi}SK,d;?dq .ִʳA"`T r"eLnHO韫‘fSi!E$BXevPd*,4*VX8׺=a^荒P.uL5]qRXZԤ}}0Z7>,u8Yet4}aiֻL׫OAfdm'./w?/^Y|'M"U,`!ry1;*NEA۹WxѭX`Jֵ/ !xr?ܜ}e&_ADciKB/KHo?8FXV.Ry#}G""A )©#l cݭ+i/_ -g>hɷ]pvpupLRY5X-c+`V"_WQ$ e%sx éڵJ)3@'.:Dd *^`URdAԷyzU%*J3+% L(C!"zv-$#+ 5@9QG0S[L\ Y$[Nȷ,ܰeӹtB-1؛Q7NO#.E;O7)EHL0 ?Y!ٮx cK˯R۱Fj na\Y =.>ٓw`@S4"8p>,8mRPsx bWqq;a)/ؤl5?@ʴѴ 9`5fڍO#t]tZFj!R^ߕg! TB#ldJtQ d0iZj/q+f߬u Dž/\fQw^-ewEKfp)]UDѦV UbgR{pY&p:pd"ƸZ# qTjΑ<V!w ) B-Y5_)| JH KSPC#Җc>8T*.`~ Ŭ Uǣ [mxehcGB W$=L`%Ϥ "--LYx~EQdJ,%hݿ|}V+7g.F+Ǒ5~E[5c1s5]0"hS>D {|RDZ= {9T sɿ{ 2X?~R@6WɭvaHT> \3]N3 DL-kBKO9[oʰҭCfk-9;`a%-I&{*&7lZ 8٪~zEVGۚ`+Ya3/vv|ʐ9VݧM&}CsIDpo լqrGDVW$^V5MbL=o\nP_< j85͍&Ԕ:>QG\ZI3 BGJa1`Ǝ(Ϊ|J5(n*B]-WH)'XMGu2^It1mЊ&Kh!Fv&IYw |Ud'_03 7Ԕ ԶJv gw1S(81UG]ހ'3"Z T2al6Ru'My9mNA6Xׂ"D JMTXĪ(mYc 6++ђqEwF~a5QF9PBHqAv_st} )[%QHx4a:{v)CKu8-V'>h242WԷCs{ǓJf5?@RnGдc,̯KaioUn NTR\pU~KX_ЪP0ZxyVztU2ZJ#'Ӭ]~S㰌kԹdT~xB9+M`i r癎3,Eqfvt4M ,)DpY˹WmuNJ֪\;~LRN 9C@3b7fltrunU( Ki(㊤(2:Hf'TR.g"j&NAM&s5 t崖%/i dM"#^$#,P! 1x6,.?:5%v$n _hZz~e7AW$cQd;* !9Yf[ԩU{tw\nqPǹIecV@brNaؔAeLq7 `Wؽwc"'kJ,n_Wx^t|:vm){ala7mKZ_ۢpMrWq $@|,,P+(7shA ƗIF1~DSe6Mr9믶*)$ET&`O:(SscFv*uuXW{ѥTu> )#@|$:7.l+ع$cj,^UY 6--Q愤U>JeOSUc\A c4#C$;a Nm'BIH,xѥ (6O0xXw\/ O}\±R>1)E,HՑ1Q*jDDSSg2)A?3mVW k6^ۚE *xt.t' E $-&<&P;2o"t@o:!rqEM0R 4NM#nwH}.Pѻ7l' k+^ U6a-;Q;eAPLnl*L*FzJ{)/[/2VWmlrm5  \1fyJЋ*F mq3(O1,+A%;P~FN Wqĕb$߯ fV6"sುLM‚ gLo>]9Pec>~C!8O/9F);%4ɾ([eI;:?x`^fBήdF1,#bbSiTηC@!&8  I58Dlj'KbhVM,]@dZU[׀"z0\@0 s*9;I#? @GC_@`w(&{tAL_~Huaƫ#IZjtAs&,'{0Nܡ?ՄԺ #ѧs:a}rWp%[lU gh.QfYYvӢe*Q̔lFAZpwʼ*}Ayl5~ˢ[`މò:*6Yӕpz0TZ!LIs10 ë1=L$U,9"׎lc mEOMP<$S~>(݄g6̄z ЌQ])doyu%ii3\ 䘣!àf+3̬t&W}ݎJhc% /4 Ww/j2(ss[h&UϐC]{#ɚW/aa JiiSP^H PݞV6$vo)͈4k0>\1`R[/ >2` @Vd5PơPPPӿ/h,cNj*ԨMuq,qh z_qTR ơ")[d_,Dq\vߔTWHTg^O.Dvo2 exDt>4d[CPIL ,Oiơ,Lz](.3Uܢ_hG&GH˴^ـRU##<f`IAQ/TC9(7Ǘ~e&qW޿əT {yl8)RyYD#>Y ߲0|ZϺё<[cKano9'%;Qv41%1{Q&mbq•[e&yd~/|SI!(g8{ 0T *DEJZ7R'֔يĵ~kS7nWy+y#pHαAL[^s0i;{W'?;BX(2Z$s* 0z'0`xQ64VޯjEPm#%lŊ*mZzoeӖ[rRv3tY>xjX>o_yxA@M:f!+[+s9PUGsSd螆ζN* ve{ykJx̲ygjqdRoWk+x@voܼsChE%m"l l(=&aPJy}2p ?bboic{;n!OkЭڎD*?5>xw ))aƐ*Q*ºG# -x>{!#ؾ^UD6a`j,/3A MdՑ)j ]j_-bGF#Rr[bȋ{w)(B+yazĝ6(Aa)gL|O12sֵw@LM8};4lpŇHid0G}53͎+ vPZ۝XNyRy/n@1̑zEcLj) Kطgmh $ ݐ z-ɌMq73Hj[Yioo>+.^p'30Ѯ:2jfzӛűWHKp=^j OyK_%uի@-Cq 0cFAS\QQcx!26mR#]M)gN5zvyVN"6XXvΞ -an0n09$ ojSόuϹW[wʎQKXrmvV7` Cx-\Inw¤g[ˎ\3f9瀺SL(G_{5mgH/_fMIY+yU+tYO!ܐ- 7F*)kȨm0ѩ fKkkŦ6 6UߺR!J崬%L0[*~|Erk6L")\=q:A|: iT/LpbveBۦ]0I *WF,Zc%#χľyq "|]列mEʆ5$m> Wu3٭K%ˆhuXw.s1aFgQD>@pB‰pE 9"瓙s8 sfjUr,*Xő Nx /Z26qe1& kh/\FYrQ 2oŖWkg|n((>,Svd()v_,>m:y4Xz$uĶ5Ry\S)]$`4 6 ^eW $L;.lF4. gQxtz4?ho<"$]v'N3J?6hO.T<N/"*@f2xͺj2F9%Y6%&)I%<-`NJ C,S*cO`i|S~.(@Ӈn8*(됍𦘀&HXё_\{{9kXM +1fY xk;~K{^%0aqm e, w e8pؓqEŬ}* !VS%JgJę5nAVZ"$ eãgN Q g5'll$8恝Q\h\tɹO; GW:ݎBN$N2AU∅5vd*;B Ve-ͽ M)nZe-/ Yp;o`dtY:/%b P(ITMD||q}ʛ16TJ2=il}c̩'V`Ԙ8{X'£Ќ..XQZa!pG]#0v)+h0a.x^@Z1m+e ~!> l}Az4ng"Ha*i D" g̯h9A½S._i"1T}O.hy/OJQqOv(:2`YPU-9롧fsދ[ن#&8W~@gG8"\ikU੹s 9{f'm#+\dp .}Nl#;6~f4* C<25 #/QjW3 w- 2xCqoyY?H5s0BJvU)6U:ՒJ@?j`4\:_^;Cr7 D3Ll"bBUEPs *5,Y+:?+L) b: dCj* Y[4HCJZ8X}4\:c/ stKޱqA[]=3+g؈:>Z{c3sBLIh{sqà\*? `6cn+Wd/ϭ9,8uL;;vӌ ǜ B/B}k=Ԃ2mu`>//Oe6:Te}C#On` -fI3D5]6 ,iꌒImc1*QMo 4KEbAN,5ˆߡ9̟OǧnfbWL3Gog.ZGu,t.daEDڪwt)c]}dAC6"!/W ^D\s/7kEQRUf+SL7U -I.lv}aq쉶7Z}S'd<y2gqRQN? ~2ߧ!&fCʿNw<8L!j5NbDH6u$t L#:b@ӵ ^~px^!ma5OK7OBAaq<_QK_چVmLuK nTCGzfɄ]FF!.&J3ML.kʲ<}{HNQ4UN|?g]GDZΤ$;aݪX~M KjJMVcȋQq 'Fh7 9<匪88kЩs~R mxCōuwE}^m&\z}?Ș5}w*4(zEl 0Ƅkb xr}Kl/T"ӚڪnwD5+/Öƪ>QL I?m{k9 UU# M5(fx.(6~bȮy6/鲧* H5F>m@ب g^s4Qo־i*$ؠR)2W @?7O%89WfȚ oцY%醙=[Q}+CI`VT*fM͙wОiiؘtňp5T~9)2CFᩝvg`2G.O/^$.M=ɔڎ3)_LL*?Nqņ_h!b'@o~#g,P#辰"|S8LVG,̈nBa%w1`%CX%M!s甀I ظӢ>G@4j9S.s$qe_|ˡ&.Uar!E`0@0[^MAwz 䴍149s]љR{K+-;+T1 \,d? Dkd">yW͠a^¬B#M;F+ K/VTɖRmg0{Gm .Ͱe!m|$3$^sg0K.~Ang.Tw:*SX9R"E1yH6p 8 8Hy[7itX:f%UUHȂވu`T,6gTtJg5  e%.]-+3,H7|sX4nn!g^TtXqXߑd4O,gj8eAnȉYvH}dƒ؏W턔c'RaA[jD&pA{mS?fh?L/;T+>u\u⦹"oDCR)=1_˗۔,m/c 01\cfdZ\XKpn@=J9O keuP6 (ղyVx`uݺ >Bb. ̜X]#X`ĨrX6H^'4:Q?Yl΃au 7W1*6GXF놓k=ֽ6< hlEEH#6g"*aQxʳ*}J2Hv@،`lp8.L=_fi ps@:z'S M{{O/ kC,-xܘs-Trc`˽72 W,\5ap[N!P̯V t&(ʏWqfTE!@]^/;ua>Lj_̇%)8kxBD/cBLÔgK9xM'=S4 @>/w. dU߄DR޹>^4=mbYgc)aG1;'X(8Qz*`fEwJe?ɚGT?y6U[@Duo};uA>9O\< Ŭ}$Js_"AF!Ng:Eb=ߐ){l6D-ִj=׳>[wG-bJy1њ &ۭ( nLV$0(E ܪ wMtՕ*K_|ey?D$RZ<#r2n=Ў O$XMǹ0W8w_94>o?]+>XJ[~#jbb_F:vaI%wRé XtT@9 #L>\[ZZ87&K)uۮP;.y -H-|>{]lp[̎zd;gY u%ː&Tɒ5Ho C`508 iJ*f @NŌY41 (o`b]jgߗ oaa[NJF\hH@wؼUq#A_gӳ>ZYUWzҀpXبIcLbl.>׈@Q/{S.@R$_|"rƒ=.Ad_{=+nby7 %E9g(YceemߩJ>ӂs&Pk;,+h%vWoZ;CiR"k (sǢ{6Omy 3,ja#&qZAxzΒtӟ4 ^r r х2zRIZe a. wWؼ9ź<|}MkǸ4xc{B"-}w֚C{+cil͂oЬXQ=g%" x7fe;q1bβO62,42hhꫪ8ɇ} jKa:B t7Ep|3 2a.f,#q/9C)Lu&uvI촖?NJrgu;_xλr9EA7 n%B!iN>>s%OJ7@~@ ,jC1j/w-Bѿ2DQoCR"QͤyxOo&꜠{J梹waЇLE.ZynTf M15J۵/5tLdyKagjvjthIS^7:+NxЮ6|p=3"}gx.$`q-4q[P}迥 66nU\ *Z\+/Vh͞}c ֨sC)xãvS}hև}($p轼J#760~4,/ aEuqcKGRk[/%b|$nKӝ[Vc@a}:e&F(׀{^tO&>DcIKW-Lw @ZQ6ͨR>'?N55?4\QqXnXSz_Qe͹5ƙݤ7 NϬCC2= *E\S3%h1!4ߧ#ZYO6L5Cє}w>rHmScaM9Bkŏ]^lſjQ Gv&`wwA HKOB$S>g /oJe4k^05Ei&( [c^H`=gQXch:Y\ڃ_f9O2-{^`Fzԣ(\ǝ0]uřZs{]JG9)*@X BXd)X/솷91bӾ[zNöI|hp,m4nhۡjU]L&)"cY : EH䍵}Y-)(a}f+(Ul+iyzkRFFgx|t3y 9񩅄DV֔uH>/#M̬".!e5Gh,'w !CV IWf[u JImMtcj3[_AJ1o};12w%+{BnNUb[#뒆͖̈}LGymr1z6B}%\R˅,lҲ^us_r}ڣBt|@{Ȏ*oZ[iOwvs4w!yT3gL mnF!f}|DQ<镽P{@ FC \VX$}$Zj %GGѓ> ȡ|CVm:n[d%H UD%ˏ^N]BV:o5^݋P{xa bPbU=JsOI5 ^~kˎЫE`I"ҫx iKbx@w6͟Y3*<:s^_<߷o0zNӡJ?eC- {@4OHc[T22ғ0Z ͕i #eq`P)Zv.K;'}cJ:D誕+yk=ts )-0sA%ٮ] ϛ+ukR͛=avD%ZIqbEpw㹏.+_=5M$Ҳֲqwd͝L/ٔa[w@vyD-B/=#coo^I%n̞&O,hʥa#c;S7d>`Q?oWlP|s:/hQCnj&M ރDM$KtU@ۗUxpsh'ejyN%s%|7(mn_:Ѩs5;sGN_e-fOP\Wm Ä>+F$3֛%":;B_ 0ڼZ였nԋm@|PwxTxHiʺM),|򫏎1<$]|oWjd;7 uqFz;A^UaƨX@/᤽߉WflL|2А<NC@'-x ުe\( HxѰKV7ҼUy7d$=JC$j,CQz+q9f\;Q.gwۉ;:8(K6\@=!nP:&j7safܨ{҃ -z[D G0&Fm`/&)8זrH- ˶&AEz"3BG'ITiQ"X[ >F:j6?_tg C %`e!-}dBԎک\eCc|L+K&"2~K,z?1RퟱۜHʟHL݄Гm [poCS!'-: !D]ƟN7ҝ h[Qsbo]j.xW|Ϗְ uȩmĜg҈NJ0u;f%`]\TLDp]JN1ƣr[l},okQXBBz(\=әtDTtko,)ڇ^yj2DlPy MR: `l]hϣP EL~GἧY#,u g-ϒ^-q$JZ%К+'u _}zx' O }\|D:ZMvHk,jRsUuC}QiIL&QOj7dyS;Y8٦  ٰ玬!\/Wh 70򿊦#C¶ӿYn]O+(ϼL547ܺ(5,V,8\ZY@qeϜ&T ua)L^ ҿ"%SB:/Z0.G@t = 䇭mQ6 Wj>NAw7|SF LHw[U5(P6 F}kco]a-+W(G̠<"yuH=Qʞ{T.͒-ĖomplMB 8'tJC*F͗g (v+4N,X{d\M>V͖`pU #p=˲L˪׆:e8t>von3̱-r?S/.?s^l)Jh[;Cyh| YB0q?f!EIUgm "ȐM؝yfv78 Ei$0&,K υQcu#4N DzZ:= gG^Cc YCmR(\#==_?f`肼JwuXZ+p} K5O%Ͽ`0iҌ9ɗ=pM՝&Ŝ֘]~88݋Ii3&S`If*M;w.mLlL^8 FLPS[ ,Aų۬{7SNkB9&Gb"^U[hS(Dy^uEm: 18yO̍FDXQ"vzd&7JSmUFiW?GfV-:(#W܅z9G0 &Y+b̼l9nƓ7i}Dn9'~@,mA>b#IG;DrH^^Q~[f b@keڀ]jj"o8P\ [ _}k?7 CS)\[W0x`x gJ#eJq4ΐyU y$ UC-k(_QN= LsR#:>(T`-zlEH7n ڤTaz=k!E=R1Uúl9棣F_XgݾR 5Ч90@z#:?KN.>^'WFze߰󹒉@1d>[̉:d5еA^`蹱Sѯ#1H7 B\֑FzORM"}><K>ν0W?$~k:ӝiC~1|z2[%4l8F|å-:v%J7F?ηX^G6>q5SiEz21V;-yamۓ#dTIw(_;9m)/T ;;Fd C=MJPzT V`IZMV=WJs oS JuY }1,g6WA2ݐj>qnOTۓKJKsරajDnPO[Z ̾渙oj-*BN[r9$Ңń9j{/niMIbA&OdUFN^odOZX/j i|ڻIn$p$&JSZg04QԺZa퉋ܫwl*lxN^ "%wJ#a/n7{PTK+rV&]5 tl/!Qs_hdJ2[~H|r[DZosdRAcTY}GZ~hkNSj\ɣ/Ф.+1B$K b&+>0 LcDȈ:7&\E,_?yŸ\lsGhTi0VxvaJ౅`5tHuo+OpYKبq<&8 uη>̗O'dˋy:7*Pvnob6 <9Ҙ_@Iޒl#vcU> ~ JU).n3[7= '9pу%R::FXt92Gw2sII Zx&%+F]Pe-WN#MgA!]9 w M$FK(mn|Ұ=fz/ `Y:BsE,E쁟i1F %]C'6}lYHiBwm~,iv.<v&.f- ɹi5lSLz3}@fۭ.Jw"Uu-SU.;dKB\m[RW::VMQ"@+!"uϯA4`$oId73 ,4 ۪Q]E#gFq`>x7wHV Msz |`Ɠ"QRb(+NbSs;7nU<"b! ^‚f16gJĚ5ڼ5!XS(]ְT#PT]47=kqX Jb>a<{_k.t(oXe&ymBU`Ht =Ǧ-abi`ocgWDQKdJciOXU{%^Qt(z!9jjuרO2iwH҉2)2]nd},˞>ȾVJ9.ήͬwF[E0i P5ϣnE[BحT.ng*Ha.D.qk92v9!cpZ${BZ5gHܡ\ etDP2-nR1vr]@ 5MqM0 4ѭ?^U?] @pq٢ |m0ẂMcD=^Xı4-J 8]HvyC~2-IXx[1W8paG,D#.&r<&_HN}F W rZ{`H.K`gp ! e!@Ec/H,W3]qĢGR|cNêI_٬"%1Y܂Sh b;IlҤioyGd Iµ J k%+pB6o[ڴ>W$ ]4uŃ:ņwv'`މIpL_X6/]YJ_ؒc0g҈8tM|B|k}4)_T0_% <%?#=_0JCҖȟvO/JdJRmH +q!\v1fyӆXp]ŚRc0g}<狟c t 3Ki~~W0\=@Lt{\ )j8{F<"eQFfR寀#ɕ,rY)(EmIX+i"ΛXQGJbv Ԓh/ٳdӋ ɕ^jU!l4)fW"~o'ggC:*c|`TMx ׉zd 3$* |crZZqR=q~>LfL*wO8Way [p|$S(.vHzޖxlOHD1z,\k5T>bonSxOx N0 )beK֑ۑyC\G|ja؁ķ{u>hI $CBg.*ˬ Y2w|(Y^pp̩\|!hp5e+XŜKK G>QоL0"\N"8[Y8OeoM{ B#j ِ-M‹u4zi_qpVŎmQQ֣wf>4;'=V0; V֯bqt\QhtߚY(xCƞ}> d%Y5и[t4S *[+ ^j>,:ͳ>KqQd}y*hdN(@Wj OoґNq*pňmw(6KqGw᠇` Ki(L>||%X uaǜ T!_y0DHp _Kԝs H0q\UCLp1l6%}2[лA+oDqf͈bNWx*d3v2)z.t%:$+ݐZDXU%]s^b墎VGUI6Bk2єsGq 8? _miC5 (S$*1Xby7s`qm%vVft1\Jȕⴌa-XU-iUTPiby 94mi|`h,I&/u]T:8/]S`e'OSe}N).+ƣf2?D&/HlsI `ouK<?z1U2ZV@-|zRCe3fMR:<"DC8on&6c` @R\LHf;.}wkŠY*J\3R*&lttJq0N5e Wܥ~՟ LL ʬ7PXRv\R+K_Ӻ{oatH Kȟ;FkK5Pb,Ò'.xr]aqh],ho:}L(LUO`qW9 ! iN @ NDt`)~?H[wdtr!) Ϩ<!br7Ɛx;Brsl&K03Mع/02) YG'_-e/9{,``n斩;O ܋ϋ&G(f`ta9m% GOi cLӭE/68d'$Q=_jW4PgU>bVuX67g3%~s_,u'*Fd@t b{E^vE Vha(qIt㎄++N_VmD${Th 7t-BG 6\DѲ+U.SMsRvn,F{`է\εrczE8V,L@tgu%o|s-<@Č_$8),IӸXؑ?q~h P{E٬ID+5 P}6VVwfWSp>ش+AEJ)P8k'I1~Γ0NZXYRҎqׇͤyX 3Nz&]:^4p"AE:|h˨cwc q wZ 6/iixQΕ΂ F'¶/I?F ҫ,a -Pld4"x>14-mQ(+F@qh2@!KjLpP-'S-i#kP*|^H8+"́(T zWiR 6ooq"I6$*yëˋU8WbH Q[4|V F"?k@*58/k.,hB4rQԆI#:%0b t IØ(TH)==(p?ά2HvP?dCUd:HW$Z"\]ѓz5\E]e%I\s jKMs A2`ցL9[cyC.ǀ!w,q>$XGhtqj%~`+VA_+|rZ*k,ob2{Tn<Oc{/0җĘNRbP{ tE?^[.tQMa@"Y\%ZtH/ԬIʳJd.ۈB_|(v9lNAּ4|`ZAվD1ʉ!#,{/DyS uPdpٽ&MڥKa8K.-:3pn%۸Hg,u i$6|ރo ò- B7̲ g+i'S{`x6oylP/9>/|f ]3j\Učlw:2o/?uM 4f"/f|{-P'xsh]8h(ӍM敯2 tNLy*?g\ Vzf[>r48^ LYͪ QU c4w MDz$]Ks59>jg dMo^#)$BKY-k X6R`.jZmͶizŅzsN0i|FVړ9ָq =ЭFDY/?2T&ew iCH PVZI"aawdYHpd#7Sd CX>7m7`NTGUE`J$q Soj^Zb#pC<Ӌ80@c` uvlq[o?~Co~@u.ɽ;Q@PyY `}q4J"EMlly\fI+7IK*cl^z"7`S7]&aYp {\/bg %"JK*^M?D4T,{˺Gc iaԺ/ YT%l?SZ(g[*qk?c\sOllٌ_g'I €E~&Roܜc iXWybA%rYHv3t'+ߍu{Ga#cS0 ×?U\~ ;=?8F `=UZBC^OۣB9+_|_c/*)`gd^NYYԤS׹rFTٛཫ2 akFes<~ QGpze*\;uA'4f#:s0YNFzL(䩸|Dݞ03khBY6 "P]mrq\)\ 1*TBmU]\wVuhtM~I=x / OHf™/i[iJܿNPRߤ sJdզ9[ ܧNfCf֗wsJCE?-=·CKg&ងn>*볢?\Bk"%Q,sIDQ &_fm[Gbk hb׶ȓyZSfef,5h F?BN9I&έ[AePPzwbIF'Rk᪕ݞ(Y}jCS]I?;wkӔM#?Ĵ-wo݅5\'Yf+tegh7ÍW-X]jvX_Gi'4FbS;jL(A\%&6M$*2 G88rMh @/$&5߇}I/@'f15(cp]'Ql yf{Ycf¤^:!,U ~{Zu#VԞO~xf4 .xC ѧ:0lRپ /b /wg /[iK݈ birGRq0~=@-:{M0QPj!>2 -pX}雔=G,1L,!EM|}fIc`ѸWv%7Tz U3jlG`2-E/b^X1+>RqG..cai _ z@XJ!aHG/0fT =*mZTx?7YYשs::[fɗWE'}fI_%Et6) b79#M&}TAoEM<`|JtdL)uN!.̀EIa媷=`w}e!l8X~D"|~i3w3DDe`ɵ$W[{j!(JxRU('=,aE*TnܟttzJ5BޜSSL,L09BO\һjs ] :F)*;~;bbRn#/}SȎTObd1$H݇W?k gDC夫RK4,Sa]Jsa] Z+{Ugk͚RROj-ģ!r cHǷ8-`RՈWspz  Y=^S=ֱbI<ȱ! xWR zNJ5 r]v#v^Y8P 0t<5n>Ǔ9#M8]\mVB) :]ݐ!MGi81~g@Hl:zゕM1)wjxl`T%5z@-O@OCVLq4L\ iV9@U!"6(&x7xHzU ƗۊkQMl%\ĸLheO-Fg\}WumR*egO#N5ɢ-BdX;ۆ7WdXbƑt0kK\S.|ks0b@56R18r;$l92Hfb/ 4;k,4}K.֯A~k"z_S+vJJ+ YngRN@{Jv}׻/!u9B\=kDN$W؟HRx3N lKy~*A]$[q*UIb$dv) ֊Dcİmv-ӝ>f3E(D_{YcTR7Wߴv6pGel2?R I}Ҕ0Z3㍜6 ,bslHéUj8R2ւ cha_NS@xb [hCET#y-lI"e.X &sXҷj\)aEOϧZKg4?/I>Jh  "+-a(!L#쓳# (v'Ysm$(iL!ÙS CkJ5%MܡH_#[h wr[7r<șU쓗+sg\&BS G͑5Ԉ0H~E}jID WQS=Σؠk'qt #Yh*@ֺu sks[k'vOY,e@EnYyQ.޷3f@ I>.GxdJo (:K;p䦐\iW#}MbyW^$k&Syg4X``B]!ͧC0*f[p4Iس<ەGԅkDݽ /{YG N)Fbw !i:}jW 4]uY<\G5︳DVxKN[5C66q{6]y=!Ŕ/F}8$@ٵ3Ky!EtRDMD̢ҁHc5$4QT{zC/F`Zp@>b)5SI UǑ{Bw<>eT!^4ǤFߌůUJҳYwo M3*qK][l[(]4U!ĨX|Hjr*l1P| 1G/ꖠYz>,4:iBv<_?AEjmڡkNfN>1K6aFY3 3siIY;<`ُګح(? VOd b'Jnc;haHAmdfGˠ+O\*tt''q-ŵ7GtH+]!L@Yy55ުYSyڪ g;~|.BGB ?\6֌o(՘nԴK) `fZ4 B43JҖbdToEOyIP.>G7v5Oq=>yShnT-`F[[76b8.zn (.4aRYGe+r/K :.ϨId4S&›wߐN}a9olKE3u9}5x|}1j'A˰fhAD_Ͻ̳^v9 \EW+*(}<FH\:]O!Fe[pC>Ft;UOw_^[yHPc ;eaZD ƳԦBa*<~|Kmdš[(-$;R8:b{X܋+܃ ȰxoɁ3vM;B3 3dhJ2T[,ZAT{2Z5ҞD)g0,aItY ;Gj,v?CWH3DH,ϑ$|~熿r1mi#oGrbN}$ hYܣƇߛS-ћ:9cmO+I֓3(?0Z}*qKG3 5)-j5ŕ˻"W 39hXvx2JhtIǕ]v*".C6&)۵Jm-zS=J|tJl^W_1]?[O\ݚƲg[׀wۣ7&8jh℘!{Y)@3t.YQ4q <-df UuK~4).K_ڼ 1fZξ*?&I1TE)7>Hw\]T葩Rެd0ɴ-Ql vz cU_[ w]6/n;=*]$8_E+5MoT4z3pz&dL52MWOPCYK.\ 1\]98|kDUDuZIϧ>pjUj)/Bf!qp3outB »411𹎀*X/IOylnvk +4r&}*6ܺO>M倈yn*[g9-ޅn`Ř|O;<*ޑw]opMx]Iӆ"b(4l78%uA~UXQw5}̠ʥǫs<,3DcP\r@[*9Cʐ7Gdho]ǎ5dR1SA49CQ{-a;M_pꫳ%tL'mfm?1ިz+*9эۦZq3D=Z{HH6m\{8L5 ]95OG'FV[a2R8럳bǎݱ~WӛpiJօ($X"nqkOjA@g1f\D ˜]Rr.=9bAoQRӌuXmL2*^] h_s3L*],ântvv l& ZM$1-H_! BsGIz[*װ3Ju^cx>ܑ+*ǫLR06Fx4&i9;ϻHϤw >(a[\K:ӝ{ZmjuqNP83ʞR{<WLMUg==IR_KB{i\< T2 ypZ/Xop^m4vM?hp2`sk%UI=鴖H7y݆OB_B8'\,%Xon- Lz$ !Y2\RB㲘7BфW^ꦰ*&3E  3ZDPǍ,oN:]? mRN {6w67t"PF,9ShW$i7z|0Fˆ(.5ࠌ3P&j޲ ^eG_L%ApUw@&!N/g6%"u/7_]WHp{.;0*}"7EҞR軪lɰuJw&o߰_?r&(ee1"ItEIP}ez"^AZ2uecشς_J Helvt==kJ6 n#V#;>mW%5ݶX[Œ\hy.>kJF@)ٲQs`ӱr2_V5FaM 6ywJ dJQ_9ڻ}q,uS%.R(ɴ& C7~ojl85VC |z]7:G_yKi!-oKfN䬚]ob_3ŋ5ɹzԇ%N٘Pp1 \R IkmeQ),! 5>_E39rr1g-w/,mwC}<>#2o*FxDTrFx@,0XC6ن7\ z54ٮ&88`I_m TmgWd_:*4Z"2_ ]MSKLNCk0K#i"ZŖ[bу٨\*lZo =TL^L`j< uk,;xtG_T"8~co[T92ݜKOФ<@g6sdJ#(UJC؝4pnE݁GACGߖl|𠴾|ISC=5j<;XJcGQJ}vo[\pҀWհ̝&T;yHQsO}ۉF*c Q,TkAMʃ%pu&2sPIO$gVd+i}a*{ !suj#*rv(%IOFG(yps"Han2؃gٳC*lTg)U l )s[(&hI8{3dw#DI5xeZ^9X=̾rfo^K֑xT`g$+q:'ym܊*L-i-m&#Zvdt5yll$[ʒ5bdKz8;Dp޼]b;yn4kB'X/YaxVƨ/Z`\>TUZ%%}"-F]LiƩv3"|س^D6޶!6d_ ;- Ϯ2[&(VDcplt!*f4xwQF?܇MxO+Nk~a*,-VnıS#YUg L=Iܪ8nꞯV"L>9{{ σ'7F)7QG RP(㦩be_{OZG;.xlzQl,!)4 P`z"<.UsUe}&_8ŲXEWĕ6lEhW˼:U93#X'"s`?Sg4)N\k;=*vbUsu,+O~7g`u>-zƺǞGHWEyWIGL2jGr(T"y;r9W^Oh|="5ZpZ#6 ZW>x]䙔@D_~5s%-3cs/ B {<ι'~PqWږ/b[}9$('Z7mE^JBL+tV\IJKX ث?5ejq& _֯R:&2f1 ;)'sdDsʪyvo B:3]pD^RXq1+ʳ27MU;kr ݴu+ŵ`S6L?::֙Ax'ch։dN ";` g|\T%r4t ؤlqU" x7g<% ܷ@8}}lpǦ v`0XcIQ(_`¡׫]"? mfJ/ɍ%t3d-_x}!m ~B%4i 3'27tDV6JE1ΕJ[:K+CXl933}@ldanYrndg#cW\ՑtyK`Hs{$I1/Ӟ497_L'1tSBJT%⬅sN\4mcMR:NX~̷T-/T\ju' ڼ{M=xG2tW>G}Wh>I94|djcu'b~mHPhK)+b&fUO>f\.Ќ@|m2NIJ>>(?^<ܘĿT-ed35Kf#J\g2T^bP'_Άr>YҺ_:f?l6*eEڤ|&Z^&^u |J.| g\}կ퐥6$Psޱ8cF9:VưhxTS{(oS Cb'ah2M@`2%V> \i3B#?fD%ҬT~UGH"< !WU0z?@mRnʹIQ1na>$ B9r6=\IXlۥa(j Z2eCz^֯-)0T<(a(zyhMV](EATrcw\9CMTyѨ}rT+=$ /m ]I)aT{ΠeGyy{N㜙b/ucЩ(*gڔ-qvn†N9.u0zssS]r%ȟOgiC.Ƹ;o~;:|N֚PI[,Ţ!Um9:?fĊl޹zeyk.؃My]M9wM d4{R\[tv_ʸC! 'i<ɪsh5,ܝmtlU#.2AN4J|SRDcaM僭$$T^.r晨C/:(O&{8}_KY<`f<}@q@T8T4cu8c0tK3'Nmj2ɻoy;SQ ١9k`#_Rf􅉣P(U D 鴝G̪05G&<χՏYqP^y^Yenh.j%L\b*0\=10u1T\k½]j0=2ǷϋN^ 逞jOYYLEJ= j9#FlĻ6kFnmZB9A9#B.ʄ|8O58`KDŽh1'Y1'`s,UW$7KJC|x vW$s ݃CGFCAP-+t0Ilծ_G1 PЋ  -)& mc< {ۊ-$M0LHtMѱ'+45'N03|-[칂-e`%2UrptqB7 '@CkI"ix8I)g7;)YT=Bi`-!p:ʈ'GnU0]9$[N{ 6桧ٚ!EH+uU0L2^#ƌ qQO*]̷̫ YOХ BQr@ѶQ zHAEZ s*Hyj &!-9 ǫ$!J;fbYq4a5J>&:Wj|.%1WZ=K'h,~JPIA2Uh=#vTVy '4[9 j \mu5s*V lڃ20+E8?J9>K|Ug*dr(}bPи@lVwz&_t:qk>u. nz|XU7az9mCͺNon'feSQZeA`Q8toG-LbsYZU\H ԩ-iH{`³Pv[Bfv/ gt|5t;@!cNYS,:-]ПJs_ILw"NLڂbGpWtEnh 'mq# r0v=YO!Q&1AnPvZ>:FAtIZ̫8xf@Y >Oc@Kͱ^p]>~ڤy٣c ڄA{sv ' dž]y1a=$ fdK_4P7BmLaFEm *j6ҵ *`` Q$p>f{hP^K58J_ pQ4sUO :uzN$_f'"ю!<99%I65?u@R/S"\t12+?{APQ?$q~`-ҸFgf.Z̖Ժ5RudF4:=kȢ0)Ȃd82`:]xw|f%Q#dZ`6xQ3Lq? 7#X rDŽBSy ޯeHu౲xď'"a$YsWzPLnr w 7"I'۠Ұݽ:a9/nC[|1[; Sɮu꒏'͠,LMzbhD7TO\M("%ee8!R%hKź UC zSMgLNr690*HnzPa (ÞifG몷s+%-nrE8O-3Q 6(d$B[^m5XXT?҃OyPnK$q,^<#N^bq>(@NJ Wj+kVN2Xq/MX۴w܊3l ?iWeA@\ǭu U}[g .9 [EnBQr;N|{蚎 q>TȽ-8C5P5>BWcF}ا3*>PxZP,⦊B]!mR"|] QPdwo_ȑ萻v8*R++|#wIw>w68%Ud^R˫ bQ.IŪiiad/f>k7qh Ϥeܷ#aV0W΋= *"20;LK0y@8]7}h|>$[uMZt nA#w0عCa8Y#!nL<'_`SHUۓΌ-EI+뀑؉NP"I\,A$TyiBQ =AM'RP/IBxv=~]1W@bT\ێOxND~d4 -s&y1'RfHb#o_פ'@ex'f;#nX|`Eib@ F'[O"|Z\0UȄckutR?V@}1 Aɹw<+mFBY+,rzȃl(?js`S\I2iP|}@H;A,7W'y !U4щsU!Džd vuqhKPrN0˫ f79FE=l!*ʟ,[HH,;+PCͰkZ2c-( _TXTF2SKP٤DniVt7y9w7 8`ٴvDI*sOrg ۔z@wxqɎ g[manoB4r׍t,hW Fd׵J熽LU:B]%b Y.ܲ&ݬN %l%/q"ЏmWH:Bt`Bo7XOi&$$,Y';ChQTH/c0a۹1;N%σ0V$*& nO{Gg!g0m9.ǕK6)Y0iVq[jaEv*T@z r<z ]t'^x4WwJNB>nj.wJ dU#; zk7臾}[SD 0"1e?toZjJ #ƮER2k6v(M0RY]c.?7bA ѱ3}&Lǂc=in%kĮiEgMQ'fcjd,3_[ڏi7L<€m6>$kB\SEפ(FX43z#O'>2^*˗u("67;wT>Njc;w(wؘd&~c_llt;xz33y0hԃa5kHIvGv*oBk=P{)Tbj"C;On +HMs; sxԝ1G5,8rLC}RԹc32sjԡ 2 dGg{"zP6b%UoY \wE[ThɎI\l;FrT5̦瘗Scp!>aR DZ@;S}H!\ Ȁ!kj_nJLAk[Ӽד8dMȴr!J̓Ќ]yƳ* ?9 =éU)&rxZJOr>TO)~ i2j[;)+\M(iI{x Zy4voz[)3-0S.w ^ g0FRۤ-jYBDl6vzQ՞xtI\ը7B>Д ]\}%x4eE:FHz}u!!9 , zᙼ(D81ɡܳ@-{M׼:7?1@ZDW#N=e-mU_FtuQֻץ;UBԶV+Ѯ)9.Hiuv YP5}:j͑"o7:3$V\oiIeḲZi6f=I){|_0 ߫`</͡ÀϦt]6@GQ`MRܐ'XS[#dcfq+7u`(ɸ3kHYԨw0HmU}Y=ӻdlP"ج#wq5yq[ʎQpA~BË+X+׸ lípZd 0; a:nQvJ.0!@TTh㦈Eׅ'FU+rW*kϗ-RקyqVh)%Tag.S:q/:%D_L'ک; + 1#iWd×gҗP$0a@&pSGX΄I?MoY\o{$g'з7nd q!lR}- e!ۼ>(iuqx/EoӶU4n5Ց:g{YU-!:DVa{p<Оx mUՀ%]q;"Dbcvbm('m3O^ے\ ˟OJ`F&KێlT.s>R;P{;jV¢Tk.)?{BQV'm&& r.9Y#ӥ$ddC4 o/CN\z.=m{;mtv5턣e@r I,W) U1-6iȍ!eQ/`/ܨwNYl`j]pz`>ΓUFm|} @of=F_SuD~2@ =N֯?u2_)e9QvG$]W`L(:J^vGa,\7N>9 Z)~LʢAµ te#H꺗=G{^Lys8q{.5m5xAC%*{y>buќsDXsFTYF7 FUXK`@݉\;x т&8ϹnhU@gX4ψ8})Ƣ= &o\0btˇSK*c#Gw6'SJuKpw\.և0de ,O;P'M*ej3x]>D1slӳ?(3#ҕ-:!ɃG })H'ϥ&5*| +eu5M]rs[=1&É[¢0k.|y /%Q(ĤYׂnt|yx֫+XϾ1jzc*^׾+a{bg:2ܕ~ (zPVٹM^N@p/6XN΁F c:(O|_糧zpK]_-iWGlg%se0)q*5ͤ6ӭƪZ)0m~=5Y`DYb˲O;6We啃hU~HRqt'OjRCI5jqw-%vVQx!` 8Ocaz;j|NKFm.zh?qgW?0 v0_Lֹqm>Ix{ . B$Jtu{+a5՗ ,1<2n~ߔ1_5mlͭ*QʋղňB `eša/:YXp7$0b̴"-nHZ,Y&c+7x_ۖk]5TՃۣZ2j-1$d:_njsT+R`əٜ]ݪV$>:4gmȥpj0&C50ԇ VL[wR樊4 Pny*Oq3D#*I_6TOʄcPGH"ɾ%kq#eJly1z'&#q 0 !.V_+6މ$ CoǴu>TwJIXr7mmUMsP\HT4'h qk,˽>)hι Vݔ_΅(*׮0*VLad'݁=j.#t}D'IB6JS9oe|P`ZW8f]:ݪtcxw'(/m%!ߥ3Q'(F>ϥ; C8e4u|Z,md7~26J+e\+8&[d'".:|:D,"}0"mը̋ARd^ _Ȇ}\);-Ȟwq7hG؄*L#Ic0fI={N,ҹ&U^J3bs[  j,cGa\-4ӧVu4wA$< K$\QPޖTax#= oӼ &kV׊\7aoC?ݭ˗Q '1Jt/9\.#-j]|W{#T$lޱ c@I ,|ߞh8uyIB ǜ2ygHUWZyADFzبiCWv!UY'"V{[yRٜڔvm;^)I$P=MKc]T,7q63ZOwS^N૶{@Y@]apu7 1iDCB̋aC# "^K5 I>Ҭb3Oo7u;Zq=Dbsq@P}9Qՠc͞0N[_GKUJN|A⺔ 7?Sc+hà#D2f&HM(COY1]?̤ܯkvZn1 $`%,[up}s夹E-$AdsHa: 0!( EŞ8x\|KK^+7.^ )Õ }-ޔ6Uzhʪ$F>]Vز"3X"qW 2gZޕ$˗ܛXo8fL}oxi$KF+4@wt'_kdcL/;şor=Hz zSږybO).ޱF`W"(McukxA^b&pj#hWXM0?Hm":B%J4_\*w:!0q>Fb?7kvcL\1ߕ둡4&{~9<cZI?Cl;׫aW@V+4 LuT<C%lu<=WY-DyLy}XNOF',R1,!RNU\Hlt ǡgTqe\W25dQ%Ppq nj1] #iϚ-r%d!LF͈zfLU?ڂۈʪ[@W1j]ٟXw-۱! ka}lYIyz1p ]~blK`=l,:;c`BIxD>aLSA zodx& spQnN5?[3h@܀oFb1,SOAi9T}VDP {Wh@,Pc h%AEҏo|u<,}>DW<~[꡶Ӊh6ڀ>ʃh!T?;SdXet}vG sfm y\/XʢΥ0=GS,41'9Rm\ !c`A0o=J7Vbjwe&JD Jٔ獩'b_޶GMcfฅ.:@-Ԥ_ԻL-V4{\? k2d8~SM01tr L~w %#iå!lg( yQfeH &Ke&eT'e"[. }@;s%9.yG[#;֑dGٮ& X|iG}Z;ȝ;6uqz\h@϶.;k%,\kĢ$υYeuSrj4g$Gҍ>#Zw{ɈHZ7vd8]C>z/Xڜ*;5 4OHh]²~]b$*ٛgggOɟ ^L[󧛥dqʫ oZ8rN1NP:gs'x'D͍+e!ǁ<-v( BRjnb f`hKc!礰]=I=!$h "Du\kil{1A7ԏ5e,ϝ+:,ÉG40Q5>^P'ǫ:ǘsO(B`E`S=KNȅ }r"7˾(K(VS3>..ʈ~-(QQ΃`Jc@Ow  =ĬdZQ(c|4zILOpL4 d/W$,~+SI-ݚP/} j}WSfh4 "mwXF]s' A/ L̪/@ W=Dk'5*zkXmdS'] OyBP%]ɮ QMA$e%M>zd(G3$.AE)\{cϨr 1}ɰ~w?Wh>gh[Z巰 _uQxK2fJ#E'#CrQx'U5'a`Bc)p2K{^r;w #^>O䣤UX:>a[aQ=JQ0`!c(Ft@U.n=GAJ(hz}h̕Ӧȣt\ Ŧjs-w0pXNlơ&&Kk_d`1zt/|tsy/\\8lP){6}g?)Yfڜ.D[9 i癃" jQOGҨm3 _IZJdXoɖ4"#/jfRi-ԃC5,o'd CHEQ'xvg׸×>րM.D}TI_.V[ x7Xӻ1 aC_&8m_ǟş}d&?R䢙Q?*!$8F[vgm$/C jyiUackfЬdRS+,p*k릦{,OA#d>| DW)xP`Ss~=0A7q` %Έh fSg"Z#Ba|SW%U 5 jSNK@[ ^r>KquwcJ | ܴCUZ}8x_Pa>Dd_֭ SIo׼6~ Mzrbj5wB)B[èX2|'kh3%ϑMNh- /8՘Ϙ(3Tl3!uFKSYh2i͡иeߗcM9Ri\5L |g叼 ՎKL]>팘r9N'Th5i2Mn;n45bbKKNhŊS|^+>VL|M)(lj\=EA'ܑTU D9Ԉ. V 9b؉,64uI743G@0xu uqˢ{14&E92mCH qT)xvJ zH~[u[m#yAfVTV<5=nbQ9&yHlVnX~[턩69}Ywv,OZä%S|wGݫga󪺊u|zTSյqAj9يQu:GCCA!)k;~l咥8G$VyFds)\<и /%F$?!+MClm }}nL?Efճ=|἞ @irc ^rFB$cUGD?RjXN5s{UwNZ?jm :oG_fUhU3'D;C! 8':\"E }k@Kޑ!W>RV:D!G`V>3iݰ˸(4u/4YWBz&jwfJpGzeT70n[$,G0Cjb`m7 IB 0fs5u;](q؂\[^g~^4 Һ3gb*i> *O2_; 2:;oZ֙絛ĕ{T/}z_*;9k; Cmp؋!NZ @s3lDmr}uQ.dVn-KBL,P۪G&]|PcV,^Aln. i׫ys)(تāYw3u8>8k٦3Iwo<۵nhp.z@{9z, # VBv,n()45p0E=^)/ ~txB\0^"M}q8GU3擶~<Q=h7ӌJ$ZI3 :v9s1/*(VaG:_IS;\SK,)7(FLm+٩(' ;y?g\3p>HGKH,r )vy_ SKHW 5<;h0>&]_.G#'P5KQmh%8,rq&8tZ[hEXͰum\n*5%-7i\~Pr{˲\y t,n߈gi  х:-M=bK/ K}rx"!FU}!XĒO,,p* 5>tH]!B9uN}ALUR9u.1,}~Gbx0wJUO5ee/pW8u,OxR}m}Ftyވ<61Í p$ LZ ^߮iT*5t#@YQ >#m!@,ɶ޿۾Qzgh~BpI#Z4MA @*dRmlUkD%pTf7Xj&(-}σYQQYvscj^x ݉4{uqHn*m֨LX{y @Z!06ⷜ]]eh:6L_r&`V]]D,U lEH0K:opqe(%hDX|)eBv@4`=QLff}mwRI$Jcd>,AJ%@1wN XQ;`QAI.n͵uBu˞3+8=шC%kU Έu3c,W쒬jMmA˦ъ%(eFMF^4%!0BICsIsHdbeZ\[Zەo6 (m%qcs :߇&y̨KcmА l{-{d]\*%Xb {,6 _؂Y$%qB(H 4m?KhGM!2:ot .-רV: gx9L*H^~o\ GF&]'bG_6QZKa꩛+BsX>0_?e3' f`( {% ȉgỵ 1mixa[tO3kWÑޠ x/O;4!]fu[೎(& cg 'K";KTyGT:݀U*}Y(57ݑTFR3*A#DRUAz[MT>$nJ͢Q}F⇋rz(/Gm93|laG^ٗMQ)n^(98p!nRxUZgְs V{.@t{uyc5̉%|XD3m-c$ I8V֛Rp=7'f"GIŜ,)#(yl 4'%y~uM7{:H&N [,?_n]5*hI}J19۱X9t9c}-I;|Ćמ3^wS녔O!y6Z e%a!,2@0Z1@pA<.z᠈*ƟЭO/@ ,4B~7'c~)an;f,p床i#D?\aU* ^A?. 3Y_O>1JG?cLPJ_[j}R`;λP0wt7grJ:XGjJr:s`x=t?g?qHqw㰶=^L~4jW:j3*X:+˩4悦LnHֻ=*օ2w_;[}ga\&-djÂGܤig7 _*I+vj=<02{A/U!Ң53H䭛)/õwQm-H-onϲ"X9q=$]5UE ^ɇh;~84KBeN'ivU][A Z74YW㹟](exC#!$s(G91m HgI4~M#w|a"п"XIT}fiw9rF @jĿTRe hٱLG!U෌l/o#Y?(p!4%cY^_}|g ~Jw3:]87o/z~N?Xbں 'JI׶$B-⠒\BSoS[R تuVۢTmRUiJHUq6ě3Nc!|RoKP|5QBZZV5%| ie[pQǜ,]GzO38)D=ǓRϏ[됯!ųCϾAck d #y!?ѳZ$j#;z JTǾ1r}1{w@D2]MUS&K.|ZoÉ{Ĝ:;U/DԿ{ dJGV҅&䔥o|7sARI1]щn3ZP.(:<˖PHͶ)KCviX8cIdCwYt QTd |éNu QzԬ9qmc("z+e=lDV;#zWI=60E(~;#"^Lrm35s'Do fhIoa?D #*kί߄c-+|uߝ w&OYǩ@@Nwh"& ٙ7FMKڬxOi0JB‰.RȯyfK93Bc]J&/*KcTT?~lx$5eqǀvXJ["=IVcK#, EXfHHrMgّ{$!=S?a&q L%ӌ |Y17wNE u,Tp !,}"@8wԱYBRv<S=e7,׳ %Ѷ/+IXV/CR>oɮ_4["4%z&( .WWbn]~HA:}l O3iuGfX~F=i_$$@ힷa$PNu2@4!FyP\AD ) &"-چ4_axC۳S5UG'VsѳF>˰*:7=^RGF2Ĵ]Ɍ][ 1*QQ]BN05.XAT >bQv{j-m* 66ԴD-Od?DXJ 3%+r2h BjO髀IDл2ъ$; UZk)I]-n\'`7B!`G )R*jh2}臡Cu=K`S`.CNeh8}62u|鵷\n+ЏսT8sWҘZP72?1Z%MJm-f MelNv dϏs((x kC?04 V +} vkcET*S-l蓈5WZ=H\D JyXVk9VUr͖W{#3py-,mCjziCq\J|)d~~U-l!r",m=ۙO#R@E`R.g9$x\2 e# 8_6q3Ӛ8r(&#S!ϗ˿L); kϏȌVR+Oqy# @'X0!c*YT(w(Hg W醼qjjY-+3nbwnzHwl)S4s!uɥab/ 2PEQHd,,Fw(Df NG݉1,vBl on(1KUW"x(eœq=t]ZD5C, O[;nA3-R,DMD^2.[ʨR06FG=H_YYIUѹ6x>=<aiSPdם z1.Nd06&ځk]O:R,,Cm 񑝵q]h%:݌b g=Og!(`%ח`a!fcנ8s qb~7+NZRFv^RA"QCl,T!k^=3 fIx2lzUm)APlOkQ)5slTJ gD8"4tIZi 4-£5}@bj^AAL3"n` gT|ʪhAvBY|ɑ*8x–_NKߡ#},v 411ۗ԰Wo .Jr׫czfp0J ]0e%Sz D'ARdQ=Áq0w;ჰfDIvd -qsuO׊Űf2.g0  ~Y$Z#\F9/۴$462H n5"APN^~Ž#LB&Wq$R"[mD @0M}XY_?}L#}VŢߒ<Nܙ׎&eROPxB HH"aϷ#t o j?SQ ZU4.u F^Jკhͻ &.be{ Îi&HNIQ|{XQ8ۧgԎ xW;emOA/'.0CKQ{ viJّ?M$buݽf҂r|ԍ?^~b()C${o&%ۂXm0WטKy~8e t-PȴOQ"~T0ve`)PO@([e555!7OUzFkmadR bZ< xR"Zym}0I9*@PQ%n 5yd Lo\DXsz#wZ09Md`Yo5]}4SS@JVT]Yk$ܐ~ :&DYET Ȕ8c,8RJlUA-6/d_ MMeW!zsC75p8m#^m3=AcXPǃXn#?AFg]#x HF0U Q?gV/E]o0ݬp$-;BSe@떞1g^n6tQj tU@|Ё;zw!W,\;+rߚʧx mM{6Շy C{SJ,p9;Dјܽ- vAo=AG8@kڴdD-Ō1c  5ABڎFCmr*I U:(|e꡸6](h}OST+l6.B <3RjCpvU]j cQm*8T v?4N&~_w`@a45>BȔ'.b*!Pˬ^.ᓜ,P(4 ȦsU'p~po8v [uYA#Gn <+uЏ`$"sU# _^s&JaGj{'ѤX.aYm ܊dհ0(܃.,0ћC?$P]>sFV8H>&ɍs=,R׬Oc(y$x숐lz_0ɒ #Q^ͽ#8`+1ke:BhMAғx]޲f@u^9~/knU!>9[59ML9]N3s!Q+!B0jp 9FoX$mG~W+W)bKt?M֜3XaӝmFiYafTUr ,ouG5Z*H>†a·B~,e<+iM&H y~7ő.QE_úCjXK6 Zj~f-,'q-KE\QwVkD5 IϗPV+dSB |iv<8` SBn'L ;YoY]o|n9mLsuGcf I_8ъPQ%(0^>fi|V՘栻)鸺jXfw +0)4 {E{i9#'|%B*#ƞbttϙD`=v\N4ä*҃ ,syW_QhNZgR=3ZO)׫jSPKtq0rDW o*th c$,H[Jϩ7kU<}>'Փύּˆj$ſنg> a4u.}5/|[HJHvNw\BYoC XoNJГrg@dI۹]7-} GM0B.{9#oZBOA#BC>`E$釠>ݸ稙[ɠ B iUb\ω پ>׋ ?QrEDXh68VrIh o} KۉeIM|'`@D`t3MSNl%Vgd)w |:f?^З"֧]ĪٵWwY38Y6G~^J)Ƴl-ǝ <l֣f&\I֖O7X2cNOÓr[$;)E]{3IHbu?2meiO; z@c _iy S(CթƝ4 6ZjrtӵQ詋97)DՏ ^a}j CEJPq#fFmE-p #_A?CɭPG;VS*RljfN2+3M{PR3XzҎObu4aK]&`^MvF ޒ9 9w_h46s{ YcgҜ1s?^YwMu ,s)$ã䥟&ZIzθu֩xb4Ƌ%3C Q9p tl28F `D|@A{';h\H `rF 7jN`,Y NO'!VdJrq2 &},}-DK?*w1*G֌LD$>spVGfٙ.YF%[eo*m,<%"=.\ xpd PDX㴴U Wx5lƙSIa\fүP!PUR]ުY1\[,S[֫7*a Đh`dd)Q]NV F OlkM>ߘ!!,CHנ:'L5Aah2(,4D=P)Yz&CI)CԽx 弯/ t~_|Mk0sC(W,Ps=zN*u>ԯ59+[)6*ÍdhfzY3 sFۀ4t@gaMu%w ij`1@aQRo57#^uz<cwϢYWWe[6O>جa@Di<] 藺GE3cKI)2?~{|%x+?M\}[<)^%<N<0}pQ_^0ؼvx6#cf[x=6lZKi 1q2· Mȶ-#k1.o+^yhd2 _;:zX~fjA~ri̒{V`Q,>cy, Z-zHi+|K2u!ARRﻡֳMw}P<ޤ1o'V6 j@,q{bQrK@btR!WɊ1-er[poxxs1lPݕm!HKb\<֍!lEʗiwW9G_=|fykPNxh7ne!KsY$֓u>w/lO~9S?ƪO Qm*.|%$Irog!Fn75߿MP繋A-:\Js%3xeK SQ`NKwPϛ!ܑI^mvSj[nI +ѤDvn#tݬa@] `|/%h'y>:jݼ.O[["1&Q6n 9Dr0LK7 2 s\Ծ^؇p%|O4Fr8;T,4Q&x^4DYAُnhluχ/  z$R }r2|B-_ߔʔJ1m6}SFoP~Ca W5y䟳 5]j387d#ieO~D-CR&ffg!_b,CtLkc#r <> f=mnO_kVŖF>ᚉۋY:To&=!YnʀߐMĺ_:{guI! 7|()' wD#k((}`-os&v<E@P zױϥcBB~ $_Y<{Hl m4\X\RM{r,5O9i]y?ǧ;MJ#/,*i~TߡQyxM'.5!(#Mf} ~%7B[Nzr*Cד`qȲaK;FR͡Si G*"1Zp& M1iaFvBZwkq`ͮ1-NAdggZ NyC-:mD,w]g΅TZB~&Gu*;0R6*WFJM-GQwNy5q4 zY$S \U-*gt^ sB]S_{]kB<ZE?i6KM $eeʥ H'Zv ϯ[Oj W뒉V {'l7;_ֵݦl4 U>ۍ_a,Q!a T$$XUαp0SQn5Ó5]5UU.S |#+#k`T593SVџHg&#J13d kc`^_/@OK[0MEuVB+ 3 O!EڧGHh5 7"۬ ̄t֑?ZL-E,@~O9}+5aKy|OP/&I)! U%f#QXy;h!*FiQ0-Hٟ4]zfT*uT'`fһ4D^^d;n%p>ۡNRฟ0Ww*LH8$\>m}Pn\}=s!#ILF8wl{7YU]G@{^ciC\=U} >$lar/k+1u/[ē<\D3MJ`M q8b7Dͺ1@-eg^5el /ve)i =JF- I`[&Dq[lzf/El=TOl0z@XW,Ecw0>3jW)ƴӉ |QNyuzL-RRxh=[&uе{Gߦ`IBX\ C Ô]_utG}A7Bl$qk'dqgS:BYo|Y.H&9t:WxC>;e_ 'Q5ɽZ&8ijAפ6r#_JGͿz#^6.=)"`} y)~LV5}o} :!Y!:[;w PY×ǝy92uutu I'힩x2tӫBn2 l }z) 0LgbbBoꪱ?E`nWcUc0!+Z r\ # Yiťn5vRhAjx ʺM;Pg^?I]va Y;Iu؞UA[S Ѩ |##1 [`s5YΌjm]>n o`P<``L,B~f*ٯTO_ UAI<*y}ڵt$~wV3$:fcZYt|zH QZfqkP)UxRRb ܎Nwޣb ~W*z`} L XdLLmjlzǠ4+dNf(‹!@ok(̇7emYaPLEQmyQX&g[D6((;VRv=༗ٿ}˵0(Tgdićjҧ?%T0>c\S=+3/%T/sS]SB]j8Yɕ(A '7G*&p]R09b6`TLnC .pklf<0bvzx_יaQuє|`<\qX+,kHoxf@hcrG'(+ketvGLV}·xZ3V>TȷӸx-SdDN>3Z /{K&ȶTk.Q{NP_r.Ֆ:. ZC>o}EsSJ|zͤ{@by gW2`GbԂE*(aM 47nۛΦLk*>_?$`rC]FXlqDmﴂ$CL qSZmsBV ,g3&T;4—蝷.cpN;B#C]uTIoLQߤYnxG0G/e`|{0<=ly:AX]Pݡ ދsmd>nEl٤dхUĂ5*)MxZ!giB¸N[v_s2t U'ԓ:ZA4pF\ 2Szdj@}*vέѻ[2(4I@4o,rH54tx6I7i"LJoxJZ'W{*Y1bSf;@ŷ-: \锁uIct=>ͦ7 p656^~Rҏ ߝ[r'O\ң%9f=j~:B## M@3]+Zz}Tk'μRWw ݜaVI[x[Z cՁJ(ϡ)ںˠn+}1TXVBS}q. ө?s\{@{63wOL'dL@(ˀ6̀0yF c+340GfI8^/ֶUSKgS OH9s P8@}0/"Z~kPIN4tG}&ϒt m t9oPr` KgPquD9O Cj8~viҠ9-/כ]<8N ꎄ^B~-;x,t{Dw*ۓam3m:Bgi^ k.@Ua qV3@'b0)RZr86g/k&Ne{isKdsVPquX[_+D ܲ&߸(_qTl@b`XL[hiIW0 lݿ}~AT/lϵ9xgCSߌz2 vr/EμR Xcj1&PXR$~I /Rk\AlH m\+],O/R"t+XXA' ]OKs9\)U =^!9爥=WM1N^*WL!+ߘ{moUp:uY[w;rGaF!~ԥ #Fh a%T4-Z87mxY7} ΏL/1Ee:D(9!xuyB-p1uK} =d&֨k _ۦy#h߭ePu:dfI<* 5n>S5揑fr].磿kA u(lRJD z{8/QR"o46.'BybmϪ+w@kVe2at`x;آe |[hts.pTBb`~i|ǿB䴒Aj2r+ӛ$U5ɢ?|L3^S u"n! a't,TG[(eh@cbL-3kN+U9mo'.Sv%έfؽ E#w:%jIQxM s" ѳ:0o GxQ>DtLp;c65Bz-0 㫥B×{m8)[mh F!;(`{AlxbK^飕tl2 fڮ qe@?8\J~M7m7WܐcHȕ.e mS^}`4۴PhA4֝%=0P;bz`t Dƙ"wF!:vR1+b:| +U8= -,2Xjure;<h$׾zIH4(vC24Hw5FCU*|&jxDcȺ\X91!f[hlzDoZႝ~Ϻ ƙ3鐷*ݸh8U@/FWX:eחqk3Z؆iþM!d~j{ʭ.f;Fx[OR2?/-2z.'7L7IYʩ7 !gUبaH(hKjwzwb3i{Wύ"W4ylAO>F/*HADS,A,CBEi\'sk Ÿ&b >56zULؼ)@p uS*%?0֯XvB5Bt CeTXR|gEezF-v(HD OYȈ$?,NEw`GziCBB)Z2z{[ztĢh{sAՑ'й1iRӍD,TWVf]/}xI+sri|"`4|&C X6F T)?kҲE{r})VE35I%:切 ˀljv:KП6oD"s nA Q?J] Nu0XޘQ'.\i"}nUUh'g꬘1,I ?#KY%KjON멇spNv$1g5 N:OrmdԦA_?=iPq6gwAiK{_-k59-X6e`o5dZT c0+MLP0jAk锬{u8v7S'20=ul nnTՕ~хШl\<_CQмřF3Qqe}oXh"{ߡuze4x5 ڍm\)OF)YP'L?%@;imU^`~敓'뗞SeY0:dϿ3i gaŲ@`n'1ڍDyPJ٥n|7:u<{>Tgt?~%I}j&%GE\;Pw9f3؈sD Xy SТGCx`M͚X.Z%c0}|&Xhb|!-YQZ J|-:+ 3@+,j^ks_4t۬^L1Ku-ɱ2.A /9-6uvq%:AT([GJ+ya0O#M}kte)%3Qϛ (~º><1x ?CƑ 0+,nU䰧 LZJ\a(cU|.p fO}.DoAJfL )J~-oA@t ŗEʅ!m ǑD7|,kBpSo4JLuh˴ 6Rbf/("kFi>Ƭ+AHIL]G`+XDX:bTɜd(oRNEC/a>m eKsq sl |UbL} sj)x[cߝ\6[|sI^r及&>p}2|2+j{6׭7N0tOʥ?/FLњTzHkZd2yfhc.'3ۧ!\ )qoemwB\\{\]X0 f}{rqُ1@Cۂ |hU_O%y=,$1 :SX[_SʹY %~r# b5dA6HXH! Z@ӏDbkP7 ?;wc&2hA[r':Pqy{h^uA9w/8AJx,愸lZb?M1{8\+ʂV患oP m@I7\ܪg@p #$e¿ӧrG1~Tinѻ=@d_8[$_է[M8LmdE h,=< Iƪ$ԺHRZgMTxuؘ [&݉!GT0Vp!}_TZb rQQ*lXkùN'~0Oݎ;ɨv4cS5Pvfx@p ƕ-$H1͂UߊVǪɬ|!ػ8;Ac='ſm>{vc67wFb5܅5D Q]*kߢL2 L=<$=[`3c Zlgu w=E{Z ¨c a'H)- =z@@D6?# V5 6DYM m QwrYEe|kCG>4U2vKշ'BD:;iIφ$0CY`@w˺CgZnLJ r#"Y#$بe&;uX=,^F?-fo:O!$kN:Z?NܴVξrOqW )/M` ktG{sMHy{77 W9ٰz^AVIʛjnё` )?3]XSm|w4OA$Mefśt6Uz m#=ı׺-%\܋i+vO<*c(?<{di0p):q `ۭ$E! x;"碹ن}( %ID=hNs~jkk,!IP~,d,Ѭ YӤcݣp2wPSFωdvMld6xVF^eip˼\{7ζ_Azf=@(-x n3_f `{rmݧߛW;2,0i JAds{U.λX'L]rwYYǗ`J`Vڛv\wY3S T.$汀-6쒘\ S>\ S:&3gLjU()@JQ@}TcVMY>dT=4k"Ȩ3mQpR=Eqq;~!4eK)KlKi ARj!`Dz޿Q'+dR2JsoC}w4GULI&be*  g03pr"}i; 2>SBـ;X6L0k~v!b<^TwidC S"JLE Y:q:okYP̢Of(jqa~qQCDݓglfφTҰp~\>&>ԙdh486~9)+Y=UaPВd栐EWv9 vp~ßǍ5+Ro3`0m9*D#H/e章+]"/HAob, t5@Qg2 Zvg^I4/ǍI!/alCUͰ0J ޚex70SN7yg ?.QAqIDv}|"e&ߊ03c(7HF)HW"3m6`AE:;$jOmG&|W̱ensFOa4q,s]TnN|:XLe<7%T S?-*s5V[Oɴ K*MK.h9E>53xq-IH N?Û3" A,Hr\D җH -qJG 59I4ּQV\λdSFd '5&(פ.hbYy }^+TW,:]RatxH_:e~j.}^^Z!PeNQ\y~B)c!&G(/s) 2jU)౩dżzr-- aaɍ w#\x`GJ+Aϳ!C-30?m$E=q0$/tyrg Ue) 63xm2f$<0ނʖ )v{O/ݞ~ZIou<#VBS] ʝRS0=/?"`+Vzɦ4WD졟cѥGsCF! L(BFHk7}KXbC}홑~f?)'̱EZ!"눎q˅4B|dp[~$e,Demqׄ"ӽqEҼTfHz+Bvi}vV/)>Lt"GmDD+ 26|4o~ZV(g(.+iu+TˌUe4Nr[G2DR~K xIN-$ zzF'ݼlԱe#y/.pwǚ}j< 9v?!/|>o>>e}Q\\g>ܱRuB _A,\-pEKn.w[5&3.'WE 8rTg(ܐI0>g.ǡmcOUtK*g4Hz1Pz.x!ޤ(U%QX5$ 9pE9{K,@Y=f-c1^F'b[B$H;l7Yv{#y|qkufj<%OF}c37lB|3%X @Q[Æ*C 9:1Yj/bf(;# yN7mf#y {=L=ōI0ØMMi`>/%ϣ w|B'7F?+6ZZ3 ё(ѬpV+1r#}\<ؾ=)KY=vzA -d^w ;٩ L(#mJY0r د pDѠzN޻G"dRnqH\^9HoR~* =DqPg%M@$j6L_sJ{DUFo j?ύ9Pd?^Gx|'d׃x)Ȏ!aQ uq@[.= 5&E(DeBhT=%y4h4E^)A귭I $Zu2g ;q4` TQҴ2vӈ.OaAJLGX:MOV)Ц)Ժp< !kVt} %J营:m|>{? R LؠЬ'6b(u՜ݢ?,4q#9]]FC9ۑ[ubUz MXU іE;Ev+n6[č.bR gi>, ՚~ ,F/F{k"moKa$PV'3š nFUע7:[•8D]͙vT4)mH#FRȩrkxv&@ }) <ǩ8@;u5qFM˳LAĘ0ɯ.dq1 @խ}*3VX N\OEtYͪg"V`g×2"ʙF#@=x;ܲi'&(&X1z&rg ]6/' %8hc} $VN>! \&xTc ?W7X@JW xI-"ʽcdu6x 3g> sTBX26fyV,Yr?_Yr}7?n!r]d6 d8 Y;#u]ǡ<^y#g ^ovͬ[ ^UO,~ᤰuR> 0h IBBBz A_7ݾ\3ÊX:.*Ռ+Kyyn7tSfK:֟dkc#~##iD2̝; ]vpQPG.U)UK!;[lxڍ-ψ ĹA Ǣʞc *JZFnpE2ڗүIgIK GRy"0Σmѩ@*frO֖N9TҐ:!隕̈M Pݼ(1:q:݅7F(KUn@}![GY6Ga\>@8pvAg 4wm?S] \sڵclLr]KìNHdZq+m+âևhcvp<J˅J3۝BAf-Smf Vg#5 |T/I1=9Zl}3GtIF+T']f\,;1daqu7VĈ;,%' ' xmQלBotf:l-׻&\ы#4|'Įj{\ݷ c5vaZӾ+0D6h:ں {l]aR@Rd 2$ʡ)l~9u}?ԏ*`M aw's0G{ShLly?M5q()˩`5C c]1<XWO'T:/3y)O=(ȥ;o`^;9:>ήQ0@x|~DlڀGgZ{k䈸ʏ@h*JjC]=۵*r;FZe\bTg}Y\ZX~| /V?fHd]3'{=ɽCSi7.N,\]rJ%/^,>x.k9ROӮT_qؗR̥PfdHuN#"A>@ ,骿IAъ GD"F͞h|.R.*-H[A 5I#Sa@d>N\1Ɗ@ApJ4>d1_)4x眆Ʃ.Ji2rhnқK(nj]$Kg}b.**X{ZuJax2N_:J02J.CLVSu'hz+>5*-4C%IVXoaPoDB7ԑӄRF\_+SY`o*AlN|otlW P#{5xlp=8-0kK  =_;fE< 95)E!Vij=H^$>HyEdrwj29{lr'J-['X/es |k'c9$[ sg9Wgz]$/T'd9&Ժ$.X+N*N{VD;ĂyX:D$.˻+G.   dܲV}<:IrzzU>hzW':Hq*g (S_D<1@Y1g:VG6gEw]3K Bis`%5Y8v,=Oh`|tRQQ \+LzcRr ˡSd5J'wm*}^7us}vY ZiAS/D #dN[ΦI.@u#8к=z~v^Hڲ~7xUK&9 jâ}KB|T aV+ɮGe,R:RQh]2uϚFOѢE+ Rd~cS-Z0<آxU4͗P16ӹT}-R_Cw#͔\_!1R]  5NG¾-|L$P*S@cKN%rzeC; ހ>6u (ҰOs\z"Sk˥gq"43 68h_06duwGUXU@ 2`/luC m@2HoژKL!RY񷜝aH&=Ք krR0$Dϴ>p,a)xXuW|Ñ=P,^5cCbcT+NLc4#/GỊvY(TysE2h0* o%p@j&q +k{zm9y]Bj IL%7§DIo%Gַ3%wqF-qfL~$pDf4bKd8ks\r+PҘ `lݷ.A!>QO\2%San]hRR}Ԛ|Kܒs/p 07/9hIL!ۄvW_1B3_"Pr4o+;wiTtGIx=r5X)DݧcQq$(YfG 9n va[r Y'#&SŝY1ke͡ 8K(@1- PZЧҒl(њ G;Ӫ[NGeּR < tʜ6%:(0Z%,&CCEgT=H&g5!(BB]"ћ DD P}q0YrX cФ3;DbX Xe#wM/hs"tu!D^>#!S>A8T_VH#oj݃l4,ϑXaf#QNَ$[Q |-#7S0մI,2KIĠQALI=Ō"0#/PQ$f 35J= ˖S.4)o/U3l6 6- >͖'6/J.!1#!N>0q;zMecPژqOVZfAږKժNBW~❭ qfye!V."KSrCJ ]*gxۦ,t8w/S-'@(Pyx9EĪ0XRcD ؊O!xUa큤h$_|gqB;ELZ6beCl}ʦ3 b/ Ti. lȭ4YiS΁PS3~_ vc:Y3\({s$Ы IrMp27?pҢfƵ)>1L6Ƒ)Mo2vk^Bھ(T\03-U&h0H1G~((`5몿:3Q7v=iu+IGܯy&^7Ad/i .\ohxݴ@9 'QI~ )z6L^گQxm3 H C{#aGJD^$k;_r2ۺ0g%W[ L,Jڏފ֞𸍧e 7]ilkb blz0f73#&*+x+<ΔIP4!? _Uu,n9yT:eWC8a1 cRfvp]QE?8af5Qkֳ'[Y~锿uZR9T;Jy>mWVu sbXB5"j*Nb)>Կ,2dv;IlmL*CQ=󸛰o6]ˊmSxNa8Rk KM #?oLO# xzbVbEqD-AK!e!3HN? vÖS{R"(( UUVPӫT=M"=N=bP%7;hڄ[u`%cnәö$Ah5#tz8x+z { ꙳t7ļ^k)L_'1zhQ5:# Ge9wvPއ}]Yʫ^Ÿ&nR~7zSxZE=H2rP6,GIޏi|6Vrs͚%(ш Ocp7Pe^Yk^eHz 74y`hbWС~`dz]4< q~ujIqJ)-#М}3PT6 -Ή%\KSG&( Ĭ C0qV|c %YgO[q`!^X~oRWʱ+ #ٞn3@K UdBQUʛ'WtbGO H`ycUFn6K>bRoe5>.30+5m2iR,C@u*'w潼*os;!QsPZÊy>uBr˨i=&hx/E?=0VP}VtoSt7]gM\YVcPu2ex3nQz0n7qYzi +:)a=q?o9tM 3~ рwsӌ\ϡP4<.\Uv8/~D_8Pޣ^e?W>7TsGC =:zf:9H6}: wWkŰ.g$7k]jbB@P)%ʴyle0CwܑG~(լE0?]TLzy٤rؘ['&dJ8ꤿĨ,<Wyiش{KvǦj$iJp:%2.C_6(eC!R*a[!s{DيZNeqh|=X)I~)cD >F |LC"T[RF"} FZcNpL .ـ7*ux}M.s)ָi}[Ok5|>;;brIan\{&udK1ZUQ%9isz!Qk=WFns8Mؖ{V[Ia`z,쏮q!/pZf\`L>{4{Ƈwakn,:nyx5$0px\LjDtwk9mPAsDڔ8^T lwqxRw\oHVW^ʜ\n56XWqu O3gB8.NתtKH @J1m;65 'e\a3:wCgEWGz+azx=MGH0zrtV˶~J LHdA;c \3קy6eT$ه X$bHr ;-jR"o]F*o02[CB&\vuœ?w4\G(6EF"\1_h}VoeIL}^^#~ѵӷbT )QJ"(c'J;lȪX@z Vth=v(vu "yAgI,3oI31=u'SZat ։3nՐw Yb1^Uk^nAj u{:C=H7E5 qXA?b.w%*eT%?=,kZg| %Q^XbH,Xm1|O5&1i`<.5Pg =fQ32qHZx  8&\ Z9Yed|qh<2;[Ϙ_G,Ŏ_b<5pg1GBiJjn %5J2=-nq?)tv1:&1»&\'k@gfRT[݌uXbpHGSɅ_j<#(clc %M .,ޭ?ŚKrQ(doO"8F_D9}俰_n&Z bbY3}GRw ^q!c4?QEIKBQbB kuGl2Bx"o{i401 ת"GB4haC/>ᕆ.1(Mf4(]3#/#p~r*M!4\Q*@?pQmJ"?XU) @f$# / 'ZALi@5xKK?Bd[``qFoZƐ=C(u,kd$.@}ɌT&=Dר]^C|Zcv,iv&܆y]:RLזprrG߶0nsfXL9Z5^my?j&OqzRLZhmWPELZA_Ya]ӬTɨ|%K^`o6&x6 > *!RU3cL$mpxD#c{-qÒd"X bḅ 0$/*:oTvdM?,R^md}1̃K|Hp?KeWXT?;stT0*_M:2| 3yչB$2 q 0k1U0ztᱧhܚ31b.³P|@cƠA[7U~3+7!; Aa?]b(`:ܪv_YR̹B=H Ɇ b>zKI4ٕy=S[EB':GJ|>;R m@ 5z!9v7$6lDajE c p9j 󹙟*tD+Ɲy}]x 9B}NcӓfgKpZ `2#b)FXE݆Adٙdž18v,W[œobVE9)ZlvW#.Qe"w?Zk/Wi~ӚCӾK=͎c!RETY)j t_x?u܃ůi7$ {bॕ,;f%!fN'āB=O9pc3E5yEjD;BwPt!n}KZ!9!~C%o5qmzLk~X1&xUs7dQOʱc A@qU1i|h&JS `Y-u8ƉUVqdw>*;km@`djP=xTUG<DF'X(G !z 7-9Y澃]$tĩR lO󞳳|+92Zn~vsgU搬BwzP#g' Y߄\^ҕymiðsaS:dəG2f:f{+<`Tl0(Ry ;NgdY @$»<D,dP"U]3^SNzx){5pY'*k ՚T;,/f/v$%bVek8Op,Bװ!}_E^lz>3v>xLc-m RɅPc9! tʡ!_MGqV0(|nϪ lh0[<@ä6,us"f*56y%.*jN)beC$WQZ rSGeOTzW'9NjJXnC8f& Sq-F~Lvkq3a]|1 N\C#@pZ4WYssQ25@g)[q3%KHc:K?mT9{\bD*_H4.|}&:Z٣5'ngl磎i}tN0DBf䯆?JmgVS[ph}'y}DYqcf 4$P(&f Hմp?\EXu)d3x==~85kAK$!Wt8}[ͯRR"]1l\bmJW`ĿmP=TEk&$K2I[Q V/ 8+Pyd,9agƀ&Y{xVO0m 27nl%g0ʲbZ5cE:,jr=nuɃ-;l2QeiC2aX*S6/mC߀ÃEnU+56I9nJv%~xl Ś R$gFEsUf–%:W@lk4+X_BYĚg;ąUN&7 (0Eyy+XKwJ(@U8iz%[u 8ѫ@5Wb+pb{ȡ,ÆWwP1'|@Lвk^ k Khl,AD%Boqxe}0t:IJ1^0tCfMUit%8_'m2Gж3銡O >5];8 SGxt#ɰQdE~xIX\J#ih))afrT6u(-+8G:[JaŞ`ÙEf=`=BS0KRi֡vq|x߃E)c8_Hd>e zHH!m6B=џfN^i"9mNKCBt]ZhfÔ~9l3?lVed<U|+Kו޲eh^ E ;ߒFu$0̏.i)% :qPzn`2Զg+ }SSw8^g&Ё7{ #: Wpڵ@pΒM$¼r)yHNNH֛ܳtL홍X#q(t $(}L= Łs/@uwS߭I] evA~uH_eGfMD_'/8Co_>wh߁u  ɐlߦۡ|y3+'{'1yuZ> O5C<-󳔠uiE!$ϒ19]alڢO+{1,R*dV%0PVD^/Ҫ-n̤Z]Wm(ᖺ?6NQ[K {L{g&e]lihʺ)GM ~W^5N|roޟHp%5-9 ,I ̀d,a2 gAo6w>;'V[y̦2Gw4Cv1& (s }'FZJM$ 3UWj58"Nq(MOuwYw4]Rm/Yվ; @Pvt4Z^~ǝ[0nO2 Ua:"LI%sGx SVtK;9n|`nRuIE_b!`~֗j=6*6^0|:K!(g<=v /l :$)XXL6H9'V^TZ lqQҊN/H3RiYOo*h`&O>֡ı> 3~[A+,[](TYQa y̡9AR,[zWilYfT(WL$k1k5;z rRH X2=ZXh+eOw%R4@g?/Kp­@Z*-V^n9a[Y1vwB{WP(ޣLO?@hȩVTmS3X& <:\`/$qO{>:;B譽6w5*:=@kV6<:"]ڶ_>m}ҧ} R IqtXsu)*2!&ayWeF7B~g:9xIC.E]TNnt{cﰫvcCx%)c3iќGEfbӥa\RRva6\R\뚒[^>4E:N=[:wS_"GLIQtN*&ڧJ'm|9ط=$b(^T6$~h*Ytt'=>ۃpyKy,1cmN$v{n]t "Bt%7Diu5TTH`4DJ)cc-!gHY ~U?qr [J7O)5%襦VfOkmޘqsUTC@4^$⻸=˺hnqG_'cmKuV@H8 AyA:iE.QFm\ەSYlPN>Uma*Iwگe8~s.zwz^wx40F~'ǐjFWYBﶿZDbG-wuR DM?jemN >a"o[Cm2Ô9(V›G]{xc`jh79t %A`B汞Ҧ]!|ܯ"PQlYP<6>,b^;hq#o=Jl]%?,.v,F[ӼŌP^_hK@{wn\qM]MT_/yNȬ0V7}u Ry{H~HXOJDrhn}gG9z`V @(!Sr!:c٫ħ Ƿ(Z s"H }tJ"ˈGS\~|P*ycF Ɲ=Kߩm~* :S*St;'I.g >ZTYKw)-d,1HU721 L1as?D[Pʵه IV*ajXML@Q!z-ШG"ݻ x[cRA5C_QvXjuI~)ϓO4Mu{Pΰ_NCEt0Nx͈lXTTh(2SjT <{"Sm,1< Ts6Y綩+?Ah ,dhے{eI&ucIY1wj$ni!zc>oQHJcR"fF)9h=dSVup~c_S9|YopIR$EQ }$]{H赣 }ﳡDua\42ٯw{FLiӽ3N:d79FJn||2h'tq|h|}0u.w뺥,wwuQlgT'/\0ʦU|Cn >K7r'S+,ء0 NOě`!xp WD Ř&Q;>𵅫0N^ޖlâ[þjp yXh^GQdRt7Y YGz}L$qmΝ5ѴٝSu_ǂlWdUH/W+G#\WC]2Bqb$csdt^aX7ևqQp(rZbOyd)Wq&ac w5}/-~,s2R^kWCF ir'J6ς|LIU`Y8x@g`N{ܨ:>2a|d_Oeªp\L1:%⎰Y~5JI[!y,wY哆׏|LIϳ9B Z5T%<Rh55cNM6"'Lƶ]*Mڻ¼ /z}u%6N !w·ƶ%I ދ AXh7x*q)iJW=ڿs^~?m[dJk1!Gs^|.X]2mqjq4kѣr\+jj>Nӝ{ތdHdET= 3XSsk#)Yl$Ŭ{9>!/5 >kMgOe5^?i5|r>-(0z@õ/#5>z{ 82M~ 9 YHՂyB+6u-5Ż볐LW]ft4nU|/3v5At"" C!I'DAapV. [M-{N,Z\;bGQBcܗd9eŬ̟ i+X[ꏴDX/`>d6J,wu- *r`Ck2 6âO=1%63K5[TAnZi3$Ԍ5: N2bPn/1б6X644h핤FY~P˳r$TD^*7p / EHmBBN?j3{4 o~l&\Q=Tq28F~d&W=I!8 $y{1DwiHߒȀ&Jt^)rڡ88-uMyd=rY"htta9o(7ٚs&&䠋-ZKw+}\PXDf&x?E7 aC- SL!CynӸhm zacqPo舌Rj %V2eO TY"pCSVMx;N9ƷGS(Ǚ } k8x-lIG+7,D,MT?mHFBfK~ElK uZ-jNl&YCp'L"A;QtXN)-J*W↎ _80R!B=TVI˥`Vt}՘%27)n>k )˾;c//>d]\(}2'+"YQX\XB_{'o5]6Ҥ%C: k!%Nآ?* lKPIf|J'5bID(5Po%dk=Z?Oe҉s;2m0f-LpLW}ЖJo}]2aY=ݺG7*HUFؼh2^<ˉ|BkRYpX,Q'c"6Z\^ӂv Z{8VdGuLd(gΪ޼sʽwy#v;I EQ?,?_;upV=[۰ R(6 oחl? ymהׄ>eQPPI9ϮVa?ى]O[4$%͒A xP ОBQf}V/c._dȃĞ 9[5ϛqXH(,bX`VpީS =A5P?Hq$8QPԻ#gI_4Y x֍SZ"tи?_NmE \,MLvH_ُF2jEJ-}]s$V'>ݽsI-NϼR|/2'R9:9E k.tkwN XDD4kB݁C,ĺŔ}<+ l;}wFzpEGU@$rfw_Q/lB=qشO@Rt}}q7m:ͻrR͇/il"mr`u%'u-!]B,Śs+آိ1R5 F&>UjjPŁ!Xt$}"M N>(KK XV`6TمE]NfHiƮq$]%dfTwN]GGa]~_6gzr> _t C8X:q՗g բ~d+2ynӁsBQ^)xz:eD;R-+ܠzXdl~k.E#fٵvvET5N1CGz9O l@ecEƘw5Jn >RCf@ceRg$o %G*4?qoyI!.uo]"Zn`_6aӜ3NW/0Тr#NIFӡi'.їmg3*hLJ1 (uARJ]4fP 7^G<I z֪\!7#Kv3*#:0p_Msǥo,WZXi҄o|cKq|k !pyn>nv/a8I1m"P0wg˜| fNLe&YSZ<b=ݸkC~jlvVmK]D_ I"aS`i!KsFSfӟ.l]CJ {u$ C[HPWfP=3+ҩjf,)J $ロ%W+=":DrĥǷ>涶p荳Ċ^?uT檭𖲘wT#WfD+dтF֞S)q(W7P[y&F4s2}@^k@d8*ƩZ%[ީDZ-9+'퐎zfZ\ѿ"Kcͦ?)3OkYL9vVD )BR\ "ǃѯfi,(&5'%>;K MOԼ'rxVPe5GX:pWTТNFf#bU%j% dcU?Uq^U("b,#_RVlnʏ`+e?d캊$ b mJd 9֛bVD3F77\9]ϧnM ټ Ay6zcxK T( Nԑ'@lO9a3\ wh*J3؎FJfHn+U<@HǖܺT sonEG0Ih~Š*IOy?ݛt{ܥt-^Z`jvgR>%Wh!y%_ը[POs+5š;e?eWʼƈQY38VMtދک!Ѳ N4&~ej?)@_5] ̜4tZ6hX:>N& h:cOQCH?۶TEuaO{LZ8os@~r2Ux{}srJsV{Փ4(0bm4@|Z3,N\5olbbgO2%h.ZkV#zeHf] qJIxEq$15CUw宁+ 3d|NMB(ĝ?m+!2Za{u\Ǘgb!/;TVB 7.JD=R˂6dQGZ>*9iraH n[D9._}ru XMm/aK{S9_mKx`QtX"ۜX;i'3kAVMZb'`EvS^}fxI))DqxvmN?;}P0 l*-2dzܝ?)O x{=y̶Hm6CJbpnDZt~(V=;kq6@,?XjX"-T>]WodWӖ:њv!J%nY==~ )0:)Ӱej_5b01_‰<3}Y31?W4vr^z84IjʼF& &@1km|S2?; +m$.CrBÎB'\S>pDUJܙ`=75) h [÷̩a<y{2f6WNҴ g F6w,&g(eON42ܳjÈp8ٍG+`A5uŚK fEIaU\`Fa$?WG*VZb %|(ϻYuaޕc 8\6_Zp?2x6r|[mY0uP`N,c(3_:_Z{wF08[?#/m0I}~kJTߡqmtU5^rQ^/;3lG!EB#ᬐ-Ú>o039t"  L(N 0Qѳȅ@ G$[RV@Xn3owBBnqz虸A?E9@W4 dV_oPEܡ\F$EBRnäcC@ jIA&02 /lN.C{KHn;cNtϕy||O7Ҁg]`ɅG< !tҼ09眿@A#~w#oSi%K1݀I rt(QY^LQYwnK.%bšw/qH,|8mJMrl,:_w~v.8Xs,+-ޖJц8C1$i j%p1E].Fo/&&-ֶֺ<9l  tPFxNX>; ^Y!Xa ABb H.+ $Gi tO6 <'_:tkqin3,kk2׸srdqt-Px1RQk>q!25Bdv#>nX.pw.Wea(˻U"xh; jH`l©KQTv9O-%H"ҽq#oZ@8ra2kw0iYX%Vv\7S\d8N]7]&{cMFt! /+.J4 ]$(B}Ώ+m~&+o˨țIQJ35| aqٱӾq O2Fkgwǰ9uNn찂E4OQʵ`B[~q]^!76ڿ*kiE=F؁^Yڂ&) ;w8 ЛʏfMԽqATEPO~ PT`-' fq؍wP| rgRc/gZj8+nx* 42/fLؔ D-c6I5 =?O2M/r.F_s񟩮*m$xBQ#"5@aٍ-4":TxY$cY0zIZ7Oq'p hwz}zҁhɰ) A?\J85pD'Zv=z,pmBrhy*g":s8ٕZ1/Tp^gW_N[SPaIY_X1"jMϞ4KB+8MJ=/jbɧ|޼q̏q|: Bj--!1kʃGrY^;e;ā^gS8dK Zg?N5!$#1]=*۠'8nPNelk? hY翠&N<BZm.CU;s~zU2J$Ϻ֜044c2B/4’|*/(?6{+bT*or~*/5w"utg1fΟq1'=G[ِ\!nKacX,cCW1mS[d G/b)ݕ͋}˞q.cv{ VJ66%;+|&WU,+6WPqkCF=Ë\)TtQإt xXד)NfeE硍FL7l-,+,)yϫjΐ; `Q?Sqf{&矼w^vwܖ\1m<*_ #jdSBByDl^c? |@!7;Ss3_qfL!$O :TIP"#Ԓzb)gbkŪ!P+dolEO:3<=kpީ~4I9X$Xyrd.u{5"_S@ w)k YCG,KoD{PD{39M ,zIAK02aqkLB1g% #ߊwpϴy7#dEy^~fCnҚY uT}s)x62_}i5=Μ oX3+VFVE`w׿95q-&>j71h%NsΎf$%qA&ͫ8}At}kTE+XF度I)DAr\nsGc Qx*XZT-#yD+fu˹,^ (3_y ;XD`=&v-6Aj A/Ķ܈[HcNJVsdSj}]B^$+_pg@|IymYj2N5ڍͩ kVkow}I,EDVU^O,Yڱ:Dϯψs9ЋUD7JV| 8|,ӹBHQNkG-,VX&7];HV-Q5=a;%g=W_cݛSoXO( W?ho;V\OաƄD_Q}Vn$㤨i[b$)8nCimZmVu6ʰݼ9W6{4r.OJNg(1f721=(Ppg}LkI  w!:2lV 8ird(5ښ)7s5[A\Yd~HE2m+zdCNG`p8}r^^Ѝ|}*h7E~rFOc%Ƒ"X^’2o}V/S|l|Y{U $;h #ԟr@NT LPZI? O{xU6؂<vU[vy%]þ#$>0Byf3du~JMQ!ɹ71p'4ɢj&.Ʈ|pέH4*fuyϛqR F=3#TM#R%ݼiR:WiYPU*&%Q z-F7 "kwCθkIACD/ٸ5`ceV# }"~lilr8z56HE (8Gy'$ZbɈz4r9(B6u*Ry9ԼjR'Zt1?\J"BZR)^x6G3~ "c1~kzQ9]bҏ5'bb1:r:mikyVɵID)v/nOM `>(QHm")>_]Zl)T'+` BЍoX%~sCC\OFOcbHNgw-@| YW(Yp1e"2 QI)rɶ QҲ#oO+s0_2Fn=~Y5+Z"!\tb"תu`I!Z0,ޒġšQXp,k=Yg=7k^oA%ᵋ6!Luq cfF5JfR a'u-~AܐKP ,ds /k]ml`ǐAbyCt|?\f;Ф0:+Dm-y)#}g'Uv8A}sɻ=~#LB lEb,Q:d6W֕]kz-'y}׹e@ne޳B~Os"KM@%?̈́(F>h`14औhh2ǕFj\b ni+ )Mqvիʳs(3V%giLё m ϼ*|}K5 X-el1܏VК3}횻ZvlY-= ZdvF.gqZ X1 ho5 vtS[܎ +C#o!s_rTyؙ[`YXۑǖE2w&@c~qQ~j~{KێS/y\E -{\(W!T;CBgX/ K#E%&Sۣ2( :E~pe/i洜{78gݽOp #;%xqq ~US0aBL,)?.<;l¾'bfMXtZG;~:U?VG(>_HrΈ>pm'aѨ'#_hPOf{mt)SRIp2 N-6 _gMuiTaFh(j/L|`}nZƀ^sN"=i\QLM܊|llڣ84o\m7ƲDf ҡQfYCPn$g3Y1dpjR99@Coi&:ֵX!*}$NBYKC8)ow[ʅhXrmB3#˛MVp,X[9-+7 ~/Ō00FcšT+LkvcҳH0=7rTqNzL(.l&n5cjң^ ,Rz)sMg/{~ŸZ4kM JYOp)[~XUOPG9~e$q{y0dz8 s58<27wmqhOL̃8fjP2~T‡bjb|' =VL &@]N\ԢX $C a aHo!N:T2&A%O>L[O eN3nȯ}dOkU/E*5onu܆mAr%엔(`G8mv -}N$ )֊2E'% >@P.\l2#xFlɳ|v2mqkO`!@wK0wֲ]-?h:lf 0q"4|_#`$8l|f -ޝ=K.eeZNK>ݪ++ZASe17KIo/0&=J~uG*qƹcaW5jFڦ8[/Կ̙S-?! g)5ٸ>?h5dGTS!r*eK"Cd/o|j֟{@r7\Ux+ߨv~؟pUmooƉMRr:i 0EwG4\nq##V N;$Z4F!}-iȻl;ƬH3h6/KaS۴9*,#8VvURÑ/2׸?-oexr; e`0ߟuX}&~(ޡ'(ͺTV_yjԽAVPIOYم/8_cYQ_$BܰUTnA̪Pۓ5h%Mlro#4a3/ERѽwa6پ8"j.I9T`|* 1dk0z0,$ [~ t1v7 KIݟ5 z|Z;[_W5wgkAJUubE)d<~mK pv{R.5\7v"ƫK#|LGar4tC0E#Ujq jU=?aP]D |zaqcNs#YÞSÿs#0$HwXШ ӱ\;L8H rC:F}:֪R>ݶr#sI%`<!!HXy e EZ=-LЕAcݜ# bɧ~@,@!%t $<!=u~vH_.'o4tPR͠: liXaA,@dʇT&]L;-|4~1Ak#Iە)hCg anPeKj~iJ=q/xJ(8ŦYL7c-{^zk_uPkGUDxTlQS XqSB R^Yo0Cl^LiHuČ}}a5G%If{CHnhf5O&K(bLmP|l]_}wh7wq ek\8S&A,|럵m_,vaTo 2Nrf].8ig[H'+ =nXQ5V-#Ju:T; iK+Nj ˍgkȆK|%XBf[5OY1xt;CFoPb6;4keFZqPyGپb)bM:ny"V+xseM÷t F?(߯9 9_]L1(JS[y ƀj(#GiEgPDomڋnv2ƘXкOG"ե( ݅ͭK)K i{zxJ@;G$Gmxj(/Q\)o@8wscUkDF93|E(D_֣*0eV FZH,u/GuEuKUAӲ ȴ~%350h6  .*&;6nktDF,BD5- y CkJiswڙɄ]B{-W8d u\]̚;AuWW/w=HaVovS] :) O{Dz"v3&@61< kZ@P0}o ܱ|})bAXkЛ|haF[`ΓWźJd]4'Bȳ.IsҗRqN4 hQ<,|Ϥh]GU+7Gp6 [i2-JXT02fMzaO}u*|"!"2nwsqi1?VݓL BA OւRsPnas/Q;WLlK51dus-$mE׈[dk-0:,ckextgD>Nhx#%&VץMC9X+ mj>&$ǾGyhܔ' +&g[Hc1(^BaTFbb/|(SV|S#DMp+n/n 'fx((F衒Yl FMکall  Y&rZS!ƞ\4D{5EM0yp9eM Y'>;؉ nW=Z@w O']t0 !IjDҦG<\a+nϛ9n8vjҧ5#V v:8k&p-n{"/+=C F@凮pma_"A1G#voHe6H_ HF5-y,= m*o taW?h2bR"va؟бʲ/Ŋ UdmeAک襀i1goJd%RɋyO+G֡)9z߶#2t@I:5pMC oOO{]2'Czesv'jt|^d8 ʟdd9i!6~pB='e%OYZP 7pOunÎ+'Ƀ4=˫k"wT ͷvp8xJK,! v4Ƙ &+X0񭼎p`-Q{ {)uO.76'SuK@đo; ZNjWKD5\`[n8 6_)`%,;lr%;iϾa2ZTe^xx~/y^c>4E];&!0LlSERw|}sPd *3i78ۥXyoƥ1i?Atn"¨ARDlv$_s?kZ3.+YtA6r]ZgsiGY" *T&{'q0Dis:.<ђәtDY^6Xk!_#v =O=C'(#d5]]zvÄH@-nt4a@I)A AH1 q2CnxgD;ãZeAy0 Uj|iO#S2SsƙkǼ`N:6g+YOn^Umn >eĴ~ѨQyfn7g* &zrP~0=tns!TLV5gK쯫BWɪ}ţ?-ELϓe)b~|(\l~qlWPPVL)ctn,*`JEH O5M?WH+QVk{*Ӡ\v%zɢvCQ?{/w9'xas6ėcbkI[e|Ñ%1o1]4.dw1j%}UK}?/ZBNo}Էk:\?Ie1`Μ z7 mY1ao;~ΝOq;u0ki]zdמ_Elhlj<*T}U6IvW\ %WͻUȱLtXCB*{W!>D 'xoĭeI66v 7!ɝu&%Ny(5s>ʳ?WIG/*k}Ι_Df[%~#ŴS3z5IFYʉ_AL͖ӈKWsBV%AyU@@ H[|!Aš xe2e2~ʠ]EXmۀyy'< CRv4vWR_NZgWl. %z& A']uXX,VZ*/䉧shBf⏌@m3s ૒%zI|}8B ^x×+84’oX0AS5҃(A)5x~N@(ɪ , 8fP/[32e }|N!ݥB([bҏ>VCN 2yX!6¥Nm(lT!齾0~n+$2o &u 2cdzt&nf>)ýpU Upm+=@3|ɛ:*0'EMqQŚ߭?r6%Hv|D[#=2J(o#;0[e=Q{>3T{*b~|ޱMVve`nd}cFNZ5R!3u{YX˚g2l Ͱ\rٟ­![?I +%uZ+$WBڌyXY m+-_ "j P#2pQa߶WGZdum4 T/>g"ܙ (Y rى S'hbk /w[ ܳbq~'U oaD5=<A?). (d{&hw{|a,jػ.˜Τ]mgs41vk `MƵMĿ*8i8}yIGeˌz_xb?QMaw9pvC"sm+[:p >lfg[[RfGM\ڪOqJƓ HqrT,OxݚgE,LEv Qty'$2+: qjK(K*Lz崽E3&tt smΰ(Qw狏eqi~}Jr˛is6nNXOO^dFT9!0᠜o 7/{tUkh|_n.(L*Jֵ~c7e =tR܄Y|eY9[~kM7F֋g;3i BDg{?sB==\sa;aҦKp=D*^M-kbJPiu@tT'-dbH,Ae&$@T6ӳ#1Uθ/VUhGib3G xڐ~ݪߨ<4_G;rGnEdߖV](G*O]cE$Nbʍ@ĭim,M79XL %xuƠm&f ryR1-47b@e= /ĜVzB.e#N`.3Y+YVkxe{ڞy&Wm}\@zqpz`JTk~_Lh1W k7aB؅QI&E 5F F#+hOx h+ɪ gm),.~=A3@>s[OvՆDЀfmmJ5us3?M%7hV:VyKڱc~U?Yt\ ^d #Ǖnub5b(,3 W,{:4򎈎'~φ7R:iMvtٌJ6ZFQ^0ѽl`nĈ6 {ٺ' )xR+ex/f\y7ueh'~37نzTXEG+Z)+]HsPmc}ŹLì7)jEm"LHVAx$Pa2iQr<pnsgX ͶeM]8uZAza{v >PU-Lf{u|rD.~~F޹KD־Qvb^# R hX4(vӹ#?=8;ɡ_z`4+fSs/. H՝1wC/~x'U}!}j6%l[uq!틪b<Ƌ.i*y>]}m‡_bk ^B]nK>|RYO#18%[Չ6=YYžHq1VePyF"3^w\0.f~3@T%o$fg#'-ymIh'Y=B5F ݁قo?SAiDơHmgk'G3~iPL![ ٖl6 C®]o^]TA3؎Y7}!~զ0QM;%VJt3NS? p!WvCTQ8[5 עrH4s >e2+6Lm8͸_i[IWu¦0&%aF+#ETS]喝ex -v5J MR5lLC@yIXB0OO9UD-Lo~@JƘgN ߮:c3多I_C2/_U}~9Wbb]ԠT2OC;it-؍>=(tWo{MIȥgG`]WzPO0,Ba61xvbFG3I3?%vy.+ />̦|Mq?~Gd {y  Gޓ y\h!.zQA&A\S=}& %P}!nY hMcO %~C ~Z+栟 *уq;u&W!LgU)61τz/nARRd=ʸ@4zY 4wLN& GwM2d[j07_r&ps.4]=y&1֌u%m =2$[6ꖛ/ƷM{] ]ycYkY~-?, l{P oG2NyBiv0Jz%pdSĿuEY. xj {&qUC ˖n\P?lA=(?E*y3V [ffq*dгh/;+m*!foR3lO{[vtdkY&rq2eTT:͎KJj>co 7(RDvl\]bS.݈쳝R`;py>eӊt`"GÎ.2W;PHa̝<!+>E*Nt,pd6 :sܢz[ %cߡQVtRdNe ZSA}meH.VX Ċ#D{@13iMr43lpkE՜h1$'dN>n\\hc[Ņ7 {VM';]jo٪_Uz6 C*zyD @ٸV%*0Qoeb+f hRs{3xOY>NYDvx-ܳC*9k\+mŤTuѡwQCDA L܅ %|El!LPL g+%Ycwy4 5nCjuz8KenԨbp#(-X5 'SNBX=qLrEv se|8PRgW-4ecuwEk]\ ៟@GrB'ײp| *)e oC?jT:ɈrjpK z_S9Km;3s,ikw{ČVp$ykAG^K ؈Dŏ"Xh mi݇H }pJrz27M&U jUYeؘo'cOa$NYSXd@kw^+||8c8\UwqyuFxnhMTn}Y;KO"8 ǜ5 %\fPYѫ@kAR 3j#UϏtLh*2Id}†MŻYhlF#|325a\R _: So~DHSMƮPfLA5]fq< X"N٩-ֶ8i\   2ZPft8WfBt键]aUobcB.WL <>uc-y*3vGcM߁c5w*ӵx;@iVУf.$}52m(Y[{As9ލx]g#:Dܱ$S|7tvREe:z텎 rWޝB&>zOމNC㳓 +\֥Br>ξuGȞJD͒P_Hs)JeþMr朂<"C]*:5ũmMG':LzX=o SR =$$|nܒhԟI5 h8xRZXJQK,i-UMe$I光]3@ϱhRj=sjbe8nc`# i83ACo<-ܣk EZNJ)R϶Twt<4GƑ ]TXދXUo?UKYgcmŏv)ᇿ#Zۗeh?OB=lW/E"ױq͝k 6ʰJDF:),l.5A;\l#!^5jT?p՘j{LhA~QTǥл[s|~!$A#lgV8ѱ0WkA榣a:GGZmY8IWIEzᑠT->0QbH0kjVK1 ?O"ѱ;FRB#st&CA1wqmoLߨy^&zl˿)^=9j9S^!B %Ksl m̻*v⡞6N[kRԵf\7;RW"bH\@QMTA]Z =Z!j@nT@&.E<čдcNj-$XzhjE?rear<,C=p7xU̝` ɾnoMWu 6hevP~GeJNP՗%dikBqoCItfQڒ9_:7ғTƒ M}!tƤ{}tրfWAG)fLNFP #ǻaHz0*g$`XSht,4W0U=wT ߒ/YYHK%==%'|책m糷JiV u-bI)41?f>YqB䯄z5sY MQQ"%޴[]*y0I!PsT(JU;!p=!LfQ67&וJjeZd$;`B/0Zn∣+250;>Y큞宪ۭJ&8Phs0 *=5AYT鴰;R{ S.^H?Yr|Q|) EN@"R=U rJ[qPn\.q",v=ax Ɗ4):&{#_ #; 5 ٟԪ :`$H4֬-0`i %N{*M =cv Y&j[ @ά!Tp` x@Hv'vZ *U. 7Ed`e9-ԗ,OV64ܒAҌ/^,g>@wAEhu`O>9(>giFjFi>KxuAք1fYsx-mn"sg4i3)w1:(z@j~i e>vQ-@ GE)|V/LLa_*D prfړq8'l@'[7s&'3y)`0>$k.7m~zI8"0D%7;j[cJ@ FUZZ"lɾƁ]=6(=1S:_!nJ \@ ںZ_d0v9:5:q S&Q=7Nw!Uh9P *g.ٯ> 7ДF>Sj4_hGG!Pudd@"ZHaSeY'7 ^A4B ڮZ3QB5{: QDC 'w F&CI0NO0;ɠf"Y.鐋ug&L8\bsB4c?n? T40y+;THL`*^V~LN9-Ix)+ )받$M֢eg1rvցYoxCHԼlӈ>v8m"=Xs$q鰐!tBmm:pjlf_;0J611,xB qa;ƬCǦƬr0rk%%EYJgpY_3Sα{ Phy-ݳQ VtL }Q<2!+f@^t3kی2q(gC6B^ ϖsH=.y9OM\9-QOGdgr t15e&*|[@kfW\ ]V.zM 5'||M+TDho);T lSz֍d>hpZ=ᷓCS:w ~w},=V ǺPlLBo+s&GDm.>2~P}<2F[QV/'ҋxuos>K`5d`<_6ݽP, uY*hsTgOW0jaٷi]Ko`Z ]ݑq4T)@UN=]s)!0`棳\ϟt_J3p):VxqngP.LZ4> >-ZJ1%$\d 'L4on;՚Ϫz)eżm:b` c~jA™+4t2F΄Quzpb@9x*,Ԑmr';E|qAIrkN #Zw?ՏQ0{. {I9iLД.eXC!Fk[5XG.fIKHzCaёz O xI=+먐շ)~{c=*1t~W(':r,pbU)bU#}pD$MsM[jbT*(䤡B;)*>8g4|g᰾ch R3~G-JzU,,.;s*MmqB YߛOIjfɃ^C'Na7KֻfXa1#U+*)>t$}bxzb8tڞKA7.K4`F=<9W ( Jm@R>w3{•ig>=- jO"y]o'q;: p=+M1.XmXZʣA۪+,W{|"uR? !fm{Ubэy!s;L2 y2.9p'=~+~+%~$a]`($gk%!+Iw$& ;5DTsK0jtQ5a#'͞;*HmHGN+={Ṷ̆:/AAF\'7OQF @~A^ܝB ڸ ӊ+>DZ G2&XhpU\͡x\m!NL(aTWȤHz#z/' J w^<VcLs˃TV ymoD oh~TX| ]5+$ΣQKg>scж?BYqѭ<}ӞveD`d \,qgQѽBd7tDV>Vۤ&+}'-H̷Woa/(.A`羱0 [&hK|$ kT,[וEuN" g&xAh%<ɈEac5[D}HVnݘIYoܔuaL5Y:9!JޚT'·i$5۫)[ZI*d1{O |p8B|L̽H"fOGAk\`yw__JG9{Ғ4PĆs{sg ̦5KCDr*Y'[3c)TLlC?jJ-R˳y Ѡ5g7[U=?<{ᪧ qqa< Yc7AK񼔒|;@q\=3$@Z-|]cKP+QSұWmt|gJ컻=W9Ɂlm?%jqa-cAG"l$~͓ g0,NEȔךiEvAeXƱOCCФV]fC`IeB&n Vp1!}CYghnJù9Lj[OhL78{PH; ޥ?^HP.m{_Ի Пz$C*ɮ?Ʋ7A$R x_LW@\gȄكv{]vl"˦3)|{Sy,$wT^w7$w Wo.PG߱IӶJM5oܵ<SzDGOb]8"w^[Bi!K#Kk TPo6Nz\AA "p1qNdKݯ3 ];ñIk_;g]hV 됩8idCc:J&԰PM`҂fM4h'791^vZ.08I*-&LH(G :6435sK@ Dϕ;FfsAPlѕ-=j^^])n-ʄk(DKv7s9:>9DF~-oI1튢ժ%iF3&Чk_| /P[? ?(힚_6b<KMص#NrgגtuUegd{%iۢNþ}4v/CJ9r3'.{ lxh-44{̦ȴл/Ԓְ]| ^Vguq(YI ӄXuLOZmaEzJtf:Kl)|51B'9%5,eOO9vhG/mnP( q3L¨rUqd,^g`<૰:l.5  .MzX">Fٳ |Z_̝^6%.uh Ύw$g0@mISobدڎL\6:T|(!bN~u=Y:咐Ը ϫ'~@ J%3{ C~pa= '-O6 mǖusbkx.}xG#2 D;Hhƞn d6%&+H>gFOmu,{#|D G}ݩ/@QDmbbM4䯝) լ5C^C W"*KʦnTtZq%GvUC:OҬ4i_Du)6)`iDPiPXgƂFǥvRf](f*:&Ǹ #D%MFWLw\3{7T J5quH$C-/gO]%vԟז[3_B# #Z@Ec/,ϑ=܊ܐfXΑ*F>||>1lBITZq,@/-&(&;Pѻ@k=csU֚BCqJ/D9B@(JTNo+^-B[G].rݨXb 2%Phacqh:+z04&q rWf{?P$uήqhMd7$.UqgI)sP IqWg Yu&7&i5v9 }q*P/[ i4W7sDH8s>>7smzr1TB=g $"Am8g§zE{IǙNk@8fZ{L(iA |sG'`[h]`<!GEhKML:HFFUs;a$56y*uljU& B`{{Q9ܧ[&ZK;%vB 2Kr,7Q_bX5v .t&WoU83#L#fNEȯU[bR2~=d3~8G& 7dOAww/V::_L!yR4 {n^irT@8Nz|gQ!-4b;k3^G5!@?hmQ͓*:I7ʑܞ=P9{LECg[gWCF7[.+޷}yH ɾssyehljţW X/z6`Ef2B ,.ZGwH|܏ϫ:CE ٰj_3ddT4.a` p?#NyRK>M~`/Â?nO>J/kMg+7s9;NH[ nyyyuW?ǀd9;Hb@A^}Tli% w iطd$ m8uyF@[>ldžI> %r't-zx3:^N\p'H󢥞XawQW$%TpBi?ƥ_@" "axiSbZ6?WJumsẬ,TzJ妥R &OCf8qby]@}u|]V9`95>N+s|7TH4oy]6_e+ t$nG=fn- \T,B\D/+_0_Ƀ"'XAr8T+;>j@5% a67* ]gtL8ـD2N#§K/UDH5eq|R[RQdouq2<9 K$5KgHuLxDB.۠uQs߼g'7Br#Vmk,י:57 pܷyĕq>6>Jj&FhT#]e/֖cCC5V(9j7F֖Q7q{6qM4x`);uDS_2l7\k~k toɍ)CJė+#^.YS2Wsл?/\jn`[z0v3ocT#͐ͬZ<M>2K'/:?y0Lp")]03W֌"+&Att ,8.Hfy'BT;}^] huC1Mڈ]o.cj$Nt̯) #"cL&~~:F\0rҖgnm,taMĭȀ6ׅ;\=PTz@dRKNjӭe}*2@v*̰*tuNMPҧ/֏b )^ŇcПeTƕo%k{(AL_%[V2n2w٭O-UErsږ|Y9m5!p#BvMCWv>jAE7EI*#-;N|ـ ~=@E8lHqma{^#frQS)RO&hL`(tת2s#u?FcCFE%K){߮sc{W{L:Kao'Գ bG/8SRRIRmL5G[jT"3C4ƚnt76kWyQjq_ Cߚg[0* ,-n9ɳ2\"?}[%θRO'-P浩 ȤBV/92oʪbb*5 Þ@ٻ9bgdrBGisx=QC5=?ZEQdS_u3lXPƶFED4/4-v5l~Y-Dk)rB~+gII.rR@)]A۪ssf H917aA5^`yJ5]-WjDR҄HfߢŸ5珫mĒ;h/Hs50+tSӼ@Z{Ŵ/?qlrLQ@v1TkhkzRli~|5@_C'y{3Ӡ?L%po9XBh+_8m/Ml8/9QM|Ybie'=e~CjwEm ! Hz4JÍ~ Li(Œ)O&jGi|)NGg 21ɕ 3Q/[dc_N;3p@7+h;HhS~S*qd-͔&GE,eDR8[IҤDzOV@h6l|/(+ƅ1<~l'CQ?pH 3ŗ}B(^GL!"|3 67IU1!`3++Pbf-Bl}R8kQ{X]u'kp3L#]Jl$"IsMOR15;|jlja,z /{HZǕ}\0y}F@ ؚZ)^/<@\.J }糀à_mMRxoulDU4"VRAsjA;ތ#Kǐ 5ICϘni1j~,5 va~a>(۴E%:b>U\@ u'PʲHn~Nv.NtSY~%c /EjlBSglez9ီ1=":DXBimiO'3J+BC1zOOG?N tEML].^mk/8ZRkݹ@"䠮kR]3ҋ#n(yex=Z"~N]xX"鿽>~_U[yOʬŐ2ayGM r?5IڪFϪ.E}1MӮGr>I;SOyv<ʉ*H}2I$l|LbŸywNWx=`;EYA10O`(t E1Vo寃=zcWS\59`M?q9@ala~nF+XxZO@W6vƀF[;b;u1g6KB*$wT8mCoo;׭4o(z9n!b}%ϊP/ -?QN<ݻq[C΅Fcu6VIAi2D0Ce{֩h \Be1? )qL'DawIUAgTvBwvzO| >٭Z  ~k{Y xHQMZʾSN%^^N_#@PbIO w7I&pdB+'F)"A!dծF!6,ԲA?p'%n $ @#Ss+S!vA8>!(eO 5桼 O 'ڬLȿ?yZi63zӴ0hbm9碣d,jgHXՎW(nZFb!n$n8 oX(l™э댻x{Begz kg7X(ޤ/#g93 ,uxOE!-2fT4c1m,*)8jZi{ T2҆}><{5DkT=m<Ll$=% +f8XW~ 4sDURE90onQ[Sa€t [,cݔdpuJ@[#XJua)߄l,\0^ɛ761A:R"}c׻[;9A=VF%ˉӣBE< 5Zzp&jweP1螛&$2# 3a^yiUC*0dh~hkeGQ2cHU-cFR(L.kUE$?Fi 5 0EpҧEz;crW;@o\7MW O60)34!LByn%>/Z9 4E` )Im rs!2^SQaMë[fvk_B?OQH 5P~]f3F\A4\,@#ҳm|gRo[uTǯ(W"˓p<ېؕO&~ǐrz5D]d$:YzqHMWT= Qm /%,<ŕh$8mk7F9/7֨ߧϗ%ht#Z{EO 9~͐F)%إq\(yRN]p\u4tOYfTs D#.׭ wЛ$u4= $f* 0ʱ!pY2:~(96 B1'$tgSwz Q=:qzSd D1dI+~. )}S]y`}b-2(D[:9˔hz₌Y+PjT²6;\I=֠f ;w*Ǯxr:3nUIm8eZVw7]({JosgK$jf6@NwGӞZϻ-fnI:ħ6DME[G5MvaY{k./PSz"!3w7Tqer(7f6d0O'/i1È+; 2P!Pc$w./ε\RCUPU5ɄJ8jaɈA?tnlxn8HBU-T48ާ)0= O#~n@,c -]EXj/QLzeW;(C?c*nKd3T%ru[aGo JGiKt oװTrR8Nhsz-eCN^{ˬ+'h&墧c(GXß&:}j5](rfTϝ]APsEYFzHFZ#.F̽nA/.zW~j9WFG 6hVYĴ V^( ]N> [ؘ%+GC1X:' =8P%|4&?CIFy $jлIN^3 /ݽ( %بp{OcQ\>c6<]35j0 / hxDԋf;T9ujWBt߫I 6l䨴+HQcu"umOG#1,u 3>\/}Gl\SVt i_Cϡ̄XUB9='3D%`HI_=L/sq/ٽo'D '@Y>-A+GH#+*'fsFR$Zs?C$G]^x!@PE lՔ{(~d*NL|4PkpR˿}jؼv}ƾ.%).@= %g"kob/27U.rVE?sez@G@Oǰs`m){u$'J؁%G XOv+?ekj%!B^/'drxl}L:{ t^8]䱼j4HWZ#g>1 Gu2?'?жsaBB??g󒖅f[z6auǿU8pZ JF1rk.GSi\7%8LEBqÒIߖ/BK+9D wʜwMȡ4uên!lb_Ϭn2bG$08bȹo_@g,6K|ign*sxip-ZQ(=}st;l^xNQ.[mS߆ 5qؙbuN<4RVKq2 ohfWun>uϥy`?W{Յ?-r= %?ΏKeKT]*؇,7/+>O#8K(IO2'*ѣc|mz"opN n~p@]h[i`jyxV`7[/ltKn;]ffaJVtXsD;7 |sG{b =x Sr'R?hv%S;U vp3X92!d/hNJ=ދ^D'@!fb=K 5JıxWy+zG~!j!8t?4 t>*d֒QXèdkS@([TD97D7&J-(~shW7Ac n2=>Qk&%GClH7W=Q#VIA@6zC} `+\ȎRUKItA9P<}f%Qj{}OɀWLjMwE(UH-+% Tl,YMxr!O ?9L v xqaI'"h@A|`wQog"N7|I1<),Wb]Jj:+&ZoXl{8g2>24앢eH`g6iKvLy}O '^ȄN2j,gJ?}`"JgOA%1ܮh[8}+5%mH*t @ƿ:2%G++CnLJL7 h=JmIlyUudQA*ٓd)&u*\c$awI⧳R]x,m@NI}O?u5S]xr>51XfW:{akfףڠS\iMدv*S)Fr &ǖnir^+BQz%XDa3!F^i2HoRf- l"L`AtQwr"llW,]W 2 )&ˤAA϶P Gnو>PqRT:_9MmH&`Ztj9-λxje34:{/qP-'Yh^7V\QV3JV[cP'x͘mM$YoOK,l;|5ϻ }>ik\W1b(c>zNDy k(ϋw#&L>,wl썼4C[AihYJm|4Q| GUPa2ԃVp'0_0cڶKqdٳA?{Ңeמ_Ls) rZ6G)@Prbt( (99v)ҙ1ü'Oe(m2+'k}Oŕ{B֣*usRG:2  G0 ?a5;yҸ@DxcyuӲo$$;`'2rp ņ֥e2k40.b`j`ܜ|bx8_F.Fl'QT'3YCC=A>ԍޣQιOcEŪuhcC)X(xP'.䗗x3>gd c_X DWfmfBTVcG#)KGR єfdO4| 񙊣z6EC)ܬфr[ZĶ-vj"H ZdkX^wwӇxXHJ򝂠:|_7MTƎRANVpB K1x`$/9HUk\(r#v{%,ruV=4rqfB@x=r=acE%*_ic g¼ 置,(}l-HFO@(T㥫o&" rRdco' jRAVTPrϧAŲWRl91O)IV0':[t\G [XaҴ˭>amH |lT5,m _HZ8nۀ&P(DXٞwR $ #:6r0&ϊZ{ǚPf,,uJr!9^Qu/.8t7@G#A{߇4Qfdcm>roFftq=UhۛTU8áPI7 BIb>н:{~4يF7t9ɟrȘ0\` ta{(۫4D-d4('OD\rT0:^"u?YЈ6ݏʚϲoGb ɚQbTt(?~]8| #"{d?=D^ݻƆFk?L{UcB#w2ʐqo o4 $mɼtC#Ř%]F|/N] i?*ZyCx@j`*GigI^h8c?{ m ezfWF$I>\GUލAƣn* Rʫ=ӗ:1Pq[ Qv l<}m #2=~&|w#Si9QC`mkzrT>/֣Z1v]8ئ(QDu6 SZ2 B7&2d3҄3Đ{@qz{d=(׮3PѺ3Cznr8ˤ|ש[joUƫN~Byq^@x^-mxz@?';~Y^TF'#L]TvZRKkSmvO'Xu'|P1%:涐{kS5!餽 L- 8bTYW޵Uf` @>}5L gٸ34|Lh\ |2Nˣ$tA)h\4ӖhSΙ10q ɩj*-yD*tp!vN7XCpiþT. U%sL6muJmڰyITc.# %uO|> "2(~Hb] YEF\^m3da2jddwfQMQx ԍճ(Ɯ~2q,k8 6bIl̙\WEt ~H kg?0yȔ֞)>~4X|]Wuu^Nƈ'Gs-d:_O"mv|.:?㠬BE?寗n*6 5_UxȋB44 [%d2\J3n\lwz(2z[ࣈws6jM/1Je`xWp,h 0tCfjjF]`Ɲ|є2QPx^&cV|X7ؔsq% s3Ln݀qPkU3a%N%,y$SU ^6P7פt!@ vV!D!_DiA-'$\Q [Ix>6|\¥`3S(4X7tYn5`gkVr!v %;-}Ē0PFyi)=%g"I0cxvjߕ.|Q𑰭=DՏ^˭>T/- mA%+H~ 8Ix3tB gՕ=t>9wJ 5ᔑOuU2vyߣ0XDdC: Yq |!`C.|T==cEJSZ/)v8cޔ" ֌-δ *+9ʅj-ScYʠF+CH@2I~"MZ0Ai+!R\hjKε+ SumŬ-} 5$f?;H[ 8<`CVja*㾾'',^R aV|,1^n$"~&"-j);PfB6k BCO'K^Cy*??Tuo*AųVӜf`MSciqm Hi,2CR/65iߪ+ ;PH~'-Vco? Ʈ3٤>E&ASDfRXX܀iܞ*TDx0u~0K8 n3*Id5 ta0i-~q[oc=ij{;_ yyxؼ%o\ֳ]HG%GLi4Rl"}"+/hQP$(v*]dq68^-ݏq 3@hɎf(h\`9β _9QURS hK1Y T^4F໢G%ȵ0A0Yaʠ%$ft5'OJC/S) dT& hԚT#Iυ~`,%hКNUjvdpO,֪\J lJl6^@32;4MKDmn~JQ[Zs9jK֮5khB<};ftv# ð_O-h' ۘ4:4I8nєZޕ·Nh1oT= &¢Z'>NFT^Ybl;9{3)~*] OD[tJpL%J \X!]@7Z=)T\dB`Q1K#E5)p1~@+4zN땁it &BΈ;hI;CeߥTuW\Z:GeH~G %K=="UU!tY=93YpBjaih;njYh,,u zj;8P +Ii/Y npU;ǘQc ԢSL8O }]֣k4'.t(E\F?<2 pبSP]C?cl{ !F>y=ywm>lƇY5 Tt97.0^_&>1oC ! U0K7UT_S2ί-r&*.+h4n"o=9ur&3JWDb,y:niVk߼Z]Lu\ݨ~=I1F q.6ʳLALuJ]|CfĨ3,}P> ލ3`.~Sj]^ ӕ)UbT4;?K{2l{^[ןZUBEkш]Z4Fevnܜ#']b?/r%^ÿG`<$ۙ ϮgT9X:\4m/ƶ?%Q s NCy^;q, VV8OǛqo5K;,`0 RߗL(7ZfT;jW>;^%2vĐGtzqޅ"h`Ei}{JpgZ?{~wpkn RXևՠD:u)Pʬꭝ k01=-`?4F\`qwu8rTtHǧ42QW@}\/#BAo{gaG'K<6w>@ڸ֛邍IחbK~6'U4 ?]8 O*[<{琻-O\3^vrvx{d AJɡ:)qw[*qحQ\X(;ZG1;*~uZ<Jjꈱ[XS 'aU&'r?SW[]E~B;Ja@lMutmg϶:Khm6?=9t  ^6cbi޷ *|zByp s#Nز9P kcD! K. n9dfߔo-@S&XYxO(5uӜvZ'nV燚liM~<ԛ!eO\6Z]Q4)Q 1.TR8#A P*4y_iqlZG9=OAh.j h؁IPgD]3gCnjR$0!?^݅ES4Loylᢹv DGv?Zpm[v{>X̟7X&";)Z`Y0,5Z*`n ~ՔS3/B&c/ΨO9Z_cUH*ڰ"DTv{gij0#%ngr={R^F$=o%dvѽ\=YT $C}pF wpƋp6'xNe>]Cd ?3A?ao8CZ}h'.fNad Ӣ~aEBbIOi1PvB.ƻm4_iTFeu;)lt .Á+%=: PL[L*_f6QcA ڴi?T쩗̎(wD`xsy.AU)%V$pɚObF 0,LS0Q+U 8dKpM}UGO! "Snv߹Մb׏ruZ-'w_=$aݠu) Pm06VJ$(>kJ/wnx9cqA1s_zs\U"UһJ2ofӎ.1ej="cMӊx^5ҐQlMxcE;T6PˍT\ یr[skJ6`]##YIh`{Ŧt"|1*{ ƹhIIxen݈I~xWC V)̃SaoRJRHO+PaN[kpIs P%t'r=Th)!Qy<l mgtr o] IC.vz |Vg6Ng|HJ⌡U`H*/:|A(tȢFg=j0Kt@aȞ$1Q_DӣSR˾{5OqNnƏsuc-;Tw@2;Lvw 9W!e궱4[sy2jLi#k}#;}͑WR m5Uwѕf{wt3th~mUݕI3Pz ǘ7RloEbmJ&ANܰ[O"Qc`lI.hط1= !Xzgza[Fmwu$)f5OpW`͏(- E8_T8R'icל|Rtmf @pD<{ʜzx"at&8׉3ev͆Rm-qt@* ,.+yK< {Nժ Nͷq6@pu@kWߺVTx~rԡtW^)<<ڑ+HE=/'"sAcD_ sNIK*ՏSmo!g4.6׿fTᎬOerK7Za!Cz 5qܣ3ڼLy] MP* @e<ĭXrvN\^,aD4(`ްJnzGxVs#߻v?@]C;hc-0vJ-rUBP&cIZ\6SdvbTD$r4otul*/͠HpfQy6yUcr4>D>`L3*1§h}0ĊM`i-+ 9 pm&?cDm`,р " -x,P`Fp R ! ;1ӥ9}+Swm*3 .b;u' 9Q8k"iqTg QlQXpXpٖH&zAMїD 7 r%#`{F>Pu?"A}1t:15:/xb\חJM %. v!mURڨH\@DZFл.7ϔ~R{7R\`v߬`rý'cQO~qM|H+!AXx`Ɍ]" rML786U%dͻ=44ʍI4*X?u0os_%? fFHa~ jk{cSOػbdᰫ)'$)E դ\N7i4& Ou$#8-د!ld@t,Sxl>CvG P_CwGѴR.HytZ)>'Yšcx==Jhbы<2Q.#>ӗVXEў G<*[` 5_oss' (e6fUɧt6^ S(r.T_yvʖ/9WAwϨ7GIm qNf3gzK,O,.y K"zfo&*qݟd"}ػ'+yp[lj[H;f7;]&t?ZhW@#]긨\a\̤j#SgLp'>]c'G; X|Oׅc[گcmuBx{ߏGjlJCfc̸\OI'bP9[PA8HbWx<#FNW?'S8#.u!䝄`Qʴ4>7bg47/[ A&v¤zF 2{r!3{CKаЏ`0T(CoJ,3U@X:Q%`qWƅY+5 6Mu[_+a6~#XCZ5U%"6hv? WXTd ~>LۖfaѻXNQ G7Z._]Y*@Krg&Mɕ4i[Zܘ+FI3 D>Rdϻy>YnRJN7eM4fD`́dBc>s5V0I-P˒ %z* 0Lm4H;ǿ>4i5yq4MA{䱀dVB@}iv`g>u%QQG r8`|#3юi"t{cDUI <"DrezL"U5h&z-!}Pcg g6vXe^KcB8Sa`uWÝեh ƎM4KcV#Oy`<|P96l#cDlnjTIvHLa,xǭ:3 {mOI?-3rvtY:٘*,t=[Sħٰ|Z~Tbx38*| Jgۏ)zI a vMQ$ φZӿ$QA0dOPso4򰤭` _ q,q,ΐ oQʖq# IQU-򈻈޹t>O6>i.a1~)pd^E#w1B$OA㰑*oA $ ]-׶Rn-=0ED'6@x>BmHU+(%V;/ݟ´M`bWfY-xr>bXۍ*ЧQMBAC4Tc-(Y%S.ojzP._ ZĢG %+ ޸y G f?ԕD WaRLXmup>*IE? !qq9|3`Y@o Qw\ JbH.:YWmfjl>:/a].v;w˽_ lzi\ZJV'Z#f>x7}R\;hQL6a-^9ɱ$>q9:n2;UTj|/^2E.ذp_]>jDeB$f?{#IW&E"Y,AtU6 C+oڳR]ŞsQ6&=q!tȽfN{Ê~n lñ!*FЩlz%nY<|u掟= }_~N9ݚVGOd{ҵW{[%Q5*zУoK{pC MfK` BZIaOM8zV097SI>THWX{دs;@it3pЋC x:gӜ!f΀b?]¡[žIwzy%-/[q$>A-Я\DzE'/ seM Cʨl/AR%B^|.?/s.P0Ҟ AMMW$j%/4@%1xT8µ!H}cl̦9@at_(yjz]Д1]gFi֚2w{8'-np(m)^B/sau^+VМW,0q-1lB,`ԡX]uHK 8N>~!iCDƛx\E`l5=|=F(̍m%KPB6?AȕϋuCY߯NoUfTدgJQƘU+yk_YOmJ5HD4 K2رJ5V8&js%6K_ dh`[x7"82E=j$/߾lb3KFhݍ8[>p$ 1]yT/.sI`|.)|"3D{62KCRel[Q{At>|̑ GMPOy^FXyOb@߯scVl_)pG I=&-_:aԐ)YJx4h"d!:Zf֎˧!O1j|ܡ>a=Uy ih4/E+|.#>̏-[jSq45 " ̜kK˶Oj{[.^6ePx4LPQ?]~e*N/+cKxWkB9#"L IޣW녆w468n4%ȊFؕ[LX2rdPҦ[>c۷ryu>wVPfNl -y+-GTlUhydI $cp#hi받Oi t\j7L"AnhUy?#Mo&$erI ynHFkD8GXE˒e@Nz:Kc+>*S[I\, ax0f:cp_cpq=@,Ҷ?M(%N^>Ulօl-c=Ġ;Qal%缲knZx3 WiZ"0⧙QQNh4{NP?`Ūw)dhSn&_Ȱ7sZ~] Dj]y'#||PYq0b6St?gLE]$=M9@*Kơ @9e ?ԯR*W)%̝3T.BcuLnlMwo/[^6'kjSU΍I}OAiL[! jaUMlcbXꈲYiou} OP /^ Ƙv-}60$YȮZd5zS9¿&5sZ_)2ŒOb .́wsHی[{htZ^:?޾oϻD8EinW^t:-=ʃѧ_xEЋ7ɜ c~M$'yq)3A퀚[nƆqШ qWdO/ j-87:DQ hwulm@tACMiy}(y}22>xQGmMM\\(%u#0:}\[lNڏCc@)r5^VhKR-z!ɵ_+W(;$$dGLQ`'ŦKH^pFħV? ~coyO/f; c|1i`ui`uzN~ysiXqZKlbk`2@S5w'cmxQsƞÔ=sTGwNZflFBŭ.,$ۻ YXMSJxFndƬf0Cr^_2>SIh:Y~)& fk- &ۚ0o/,RQ| ZrBH(B6璷UѓTqoAg,eLӮ~N#ߞ*ʼ_N_̨lw4l|$ Dz]".ԟW91|q%i8aˤ֠AVxşO4fefZxXS=CGLl5f*B#'d(W~s7y9M9 -;oPٸ.zL0\\Pi=z1lnNsmiG:XyBDo@1}FRK֖H,:\Qr ~b)0lh A܃ItR/}IB"WN2]F*|-s$r kk ] #vH o]4( zQb %/3`'3- j\9A?1u:Q@JOWA+ufLŕfhPJ߱'y=+õ%;_rW~~>W i\okHmgwnO#u18m}75y@).]ܛSTrs}Yh7)W`ZZ?@Y"^Ӛ*Kv{MQc@ov;.,}%VB W|qojDe<)#R Q&FiPDOmEۋN~Hn' 5% R@c=!YKñ MiZM$cn*> ( "e><2İ3`+m ,h=phibzH>':cQ~}sdJGN Q ڔS ԭ'x~7MBjgڕH' }!V.d\95yWw}Kw+/7^U93}8x*..[yepq%}B .x 8Q#dXAS2jU2,բ>͓tݲ舅g8D ܅L6[ʹRV F: Q?,t<[1C.*7R߿k%GBy œCșqmRbM'G%YD\4H QG t, B~Z 4]l[fARW#jQRIA6-d06la>޶۔02ivzm|ew9,8 %*zƎ|31*_.W`LNL⏋ Ԫ޶qʄ?tt*Gs]}f5&V @CN S?P?xj؎.@xSq|PoKwz< 2{J jU'bz# M73%[k^Џ-i$<<Xw9'-G){ZdY,'(9* vgh(vkq?G/N*b<>v͹a9O|j5uOIPJ1)-E{0{X=LJx'8y'í`Xԣbõ?zY/ ?8H(KF0L& ^ܫG}蕇B~*$&VnAo!!;F sӵuB5DF:U-E+UO'ls#d" gQy-4L_wR%D& wI#24$Z 6n}'ШY SؐmWVp{Y 28BuZ@(ȴ)gos2oW\Xt>?}AM@.p\3k>h,!BsݿTn1 -#aڒW# T76ǠjYk8(Xu5pwqeǀb*iv}E&)J\(ƒ(N@ܙe^f(FlQV-oe(X0y<$a/F[i;> l;7kaZҴ0%nE(77Fe(JPht}-yNeuc#~q2M?M-#a,.1}<[y61hd۫Z~IpU}^QM3[]OzT 9:LNNQh4 Ü`Čݞ^@}[#p ~ E乀XK/*B;* Kϻw1 K;e:~6?b\"~gWWC4@/OB_>s[2w_STG_m|y̚t L(l q2jAR Z|b?hBIƁ1B`OJ͠VJpmiV'{6F`IXÖ̻y2z$ڏȨꡡ~K} m j|URAEBkjOlU1"k'A/]6 6:ϼDmAټ0rX V|E.EuQ15+>-N}`N_,6_vuy *~R$ѸzdX2a:iyQwrl z s;9dy(0~.D{m1*euwvt7bx&vsi!RᏳL.F7R-80hrQmjl5'Rʟ2pS}u:&IK{7R7fl! Y|(j$PDz`j$+K`>(\+A݃/o/\B^Zpσ".kDS:rbHPw&"L rնJllE+`Vg >.`Qibj]U#>?R8%qSwFRaƱw'ԟ2ݻȕK_"sٸM-nqd HFiY]MZ(ꎃ| ̠j"؇a[*&8TTILk.wq5']xDfWdv:P͚4gJ5[eQkNd|Rd Y9Y8WnL45 q&d& ڃMy Ҷ;#8Yq |-l7?USuyX}#PMnl+QPWNubm([$9ǣ A.;p|xb#cxSqAAI0bvG/ﴺjU AWso_mt@-k\qirHX>vf5'X/L:6ʾrNgO,t!/i ݮA*{f'u>ž:L]֢–0@C&Q|fўcԒ)Kdn;7i] ĥ[uD/Y2^}+<:rhdDNv瓟C/BjčA,_rt=_i [5b2ÔkS:IߍXnռj3DSgNb7_Ps4A:G 3]7#p0AḿvDɡxkT {oSSrd|Ķ~F3-rD,n+%sWzT\u1TZVqzBBGK6Q8!QÄD`qfX, qDԄӞf%XZ5fE}M2s."]_⌀F?36LV^p)&ݮ6 IqJP@8ke!"ȭ}ŊЀX<5Ġ>djv(!GJZvhe@*c {T. :hI+wK`#; K(XSA3^Dh^WzHv4P=Ϻq%XḥGƫ`lOqb _mPJ/жUYN9ֿO1Wm305ȑMM jXy?5 [%?{RV< xiLF֨I+<~k@sܣ̸k8ܼx~LI1lW9 ,.)DZѲ8?d\w-o^Ulƌ읹vpZ7uuVk(˼1oc$J!ȪlV%T}h ZLܸ5Uȃ~':j?3}S@nȋ}O Ĭ;y>Cmlp)'p"0%Esk(f\˗;h im5"YU)FGCsĭi#otс)w;P̠}c}B X |uA9AnqZ['=U__NGh@=z} -v;%'V dV9l"bģ)v~,tlXt9}H"!$a{,-ㅮPb6RD4O>DB\s\ !9$I7Hawo %TtGu0jVOfyRV>t|J`$αY]jT`#oWgvyx2g K+ ɜD3y/$$c[ټ i xZڦ ;uj ´{AxntGr:"g9@c7.dY9ZZO]Pю3 R h-$'5޻)3t3b L7 ϠknOvfOQ!1+(-dyp` d=&YeOAƒe(!f.ʚzffS}>[@I[2ٷ<@QQ (f'aʺַc"3!^júH<a.- "DKqb@8H'ʶ=Tf}Vv rܟ@Lpd\ň0sW2yFP5{APXlS x{I['gܜ0-q6r2™oR/:3 / 2<ʟ߬+,րF.V3 N\ߩr:VllS#=})k>K0T&7PWgieE lũi3GDpjcoL@bϭ먜/VDzYkn1{;TXK)LUg_ZHgn* +K!2,դH6jž/c\>$&%V  9~O1fߑZLZV'cTN.(q뻬v_ Wt1B 34\ KZ_h&PҴE-M˩|譺#\Yև}4Nvh4nhW^u! !,'?NƟ3S. vҼJ?!U=h7[GuyZ C+aH~9"bl|ufЈyH'!^ dPHeo0뺷an%wJhǣ mD^Ș/!kNJ3߈ Ta@MnTU,ݜ}u)Xg}(C9{I%Eb5+T_%_lOf C,DF;._C4 Ƨ=7S#I|BJmE MYgdiAz0$yU4w:}3**hcE9]]$i] :Agb1 &՝T<̫OF.\Sq6޶HCZ|퍉 +Q*hVhݓr*@6W2&F)ΕeSIX< 0 !)366\$zʿ 4ط^S+FXnP.C޻ҹ*{qFY+ 랽7`w[d/;ZB0' r?Eb!V;?;+T·D"1GHRy:NPXpM df(pBV^r"ʳ3*BKO鍔1B8;aOrV@sp^yta&[ő+1 < ]isI\T=oOA,M'LD29E~˗,."y"4=&DێKW%ڤ0Jz!*ҶOxv(JTq8ʅY9=QAuw`^Z5\"YB=I˹5T'{&Fkhmf+HY<@nM#wduel5s+zB^sQDv6N@N rD#x{;ly p y祰ѳ9LiFuI~@ ldDP&+(%({Xe0s|g/u.&lVU)H2)ӼPn*ȓ*tth4m]X  b5˓ V{vO9(\r?lS]SjE\9! Vw"ٮ5Qt/2EջTZfh..Gtb L)BƧɲI/}8ڢq}4.͢v^+8o'){Pn\'1`#=*\wWz2) : ׆9Mj|y)4fHA1 y.Q2q9 -'&s53r宙`0[VֿyJ ?ȋQfOW=3sUZFN. \MkdKI[rsҹ~FAOBT)ن%q? ̆g6g1&bzMZ*h_-Gv;ƅw>"{s֥;Tk>| lHvcPzAQoQԯz! >%2~q.# Fut.ܞZy1[|q P*6/!C" 'XMTȸ[|O O}R}9xq0 +lt"]E喯y8yA=s3sXXTxzPNfk*/GȞ-O?P]=[k+!uVyc</^C&Dk Lڄ 9LD߯75;{a5q{AAv Է7p_g!}R%RA[\*օ_5)Z&5^?;-Dyvop&L2,ϙb݃JDxRw9eK& P^#@ՌQD-L5 )f@$=gE|;(VG=>2B-r&_&G;4işޒ`z'#]lz Ԟ`ŏoR|뇐䣷13uM= [ ]`㱈A~Q+Sũ-yM)q:}wvy1U.^RBtIL;qV| ά5ʰ7?.O!> aWq.bR=OBc}^~Kw`fra gˣݹf9 mbdyk8@! 7H` !-:٩iLzϕh|7NM*@׉x C8XO9]R8d˪h]ҮX͗c̄đyImour)@ͳYV"M W 4,_ȚvR)eg4;@!ʻEw Q':Veu]pUK}4n!q-`ooŔ#ͼ9rV;~Z JXhvcJ| :UdLɗ@ =<̉<v^""[;`3b2vň ܟAz_#';N-k(R-"E;Wnfc (c؄4 ef/7V[p^;l hŁJ?I2a:gɐp[Zƪ fxG j^q)ؤtRk.#2F^R-y<."*/<["i&yr $}3?a+/[?N#>L|7nϖK3=}C4۟ =sJa*ЩqDLYRH7@Ɏ斅%@Ì ks{hHΘZ:X&CF]#" r]~lj&`;Oi#My?3}aRg}&sJZ3".I00Cï]SL7U W~[%5*=Vye92*4A9 ё FP=KISQl[D ݿ\.An1BG4zɠs71=VNru!1T6pv-Wq~"Z՘=l m|⚢gAlS,^*,8_DlԼpb s=xUAzL&2yTrX@d2%a{BK՞{Ȉp1tJOj7*DiY7Ur_(ewFT.x~BBunӵT6\۾‘n l0/ݭc?Xl_3=\R .%&%䫪1jnw=6|:n&D*2e-RMXkʑQۈ+@}R1]^08\NV)/@taU!06;>nc!'"m]A}B'A![¦[ݑ dpeοE}~^c=gI _O,Ry$ e5ŏ5߅\ag3@Wz^ǤUj7 E>.^OEes[A=t΅d(އ( \܃=p7-ol#ȖU+bkx2sz)([vz 7]g>yYE ^L,KTBm krHKLzbC~u+bC"gUHwx@AV, 4)%w˜ZnKPD#"tt Px<%vAw:8 b=f^!3Z$7!\w)0"yE|ѵFxzIP!;$)_Ds¢;i{hlj4j"qށ*8#ncümXDzo::[+mJ eS F*Ξ=/Hց/Mqζ]oy> e ZVTJkeuCޡ# C7urؐSpܳ!ܥ"c$(/QP{em^ `K8:f?QVF4U"ijr5KMQJ[B'TA@C 1URSI4o/Yu @>>h*llo "neFq].iIj&h;71h y0jƉu؛(OJ!xW}!2Q _hzR[വe(rQ+CKXJTah9#=huϗ("i~ *)`5}K-,PsBs"3r&VG$Bd硶`(>^J" :Dǻu3@> ]y816A,ue(O EIfAZ'dM~zީIaY0/ܑ$ |բ7ȿ,HM3VJ'iG[80CO~АKNnu07YyQL2'"73[oVk*O ~7 whַ\f}]y;> J(z\>t!jpoOr}3VdTc1?›(rZzLd] DmNoTta> 87VN23@2{"8{QXL`B:ePo! v&a5~ lsg={M87hv|3>;s ܸi}2ʃAc~1kL5^(.ӊOmSbB=t17[ s%_SohoFLL݈\p~yLCܼ8҆|),9fOcğwAN33adh!czLHlsDDӺa-g5݊6pXr "SO 0DZԿUp^+pu\ˣ+ ~Z:C]eBĖ~}pn=:1!BU!(KѽEv\z]jv\mJ[%eǩ<-ZF! 5T>쁋íЕKH>{2~J',&܏|* -6mʼ *JR@!^" x?̿YQͨV'o%ԭߔρsRRZ"$˩Kr ι8}>#ƿEVm[:JzWÚ֯RN ;lCC)-opW*1lKu8w^4 X`ҿ!e(cYn{o4@X>:k6a4*@JxTsmk6mw E!uܯ]y+z?sj IpwO0D 1SVNz8ʡ|SVv:PEY,BH9k.UG -a(gs9t"`J?UNCaw䛈Fgiהl䋙Ÿ&AR²$cbg $I_#@1\mp"HA/eüUI(<0ͮ't@>"}~MdH{]e\ pY'k&}+.e/c^۫YP<_Z;iJ[D@\m'nf{[ epЀÎה4"fz%ؑ9$cvK徭 h3l I @:Zf=Y-fJcmyثLA'^\sL5ώ0cܥ8LİlһR 8O `ho<5f =߰OhAJY֘&0Mu+sy­4 ^R707u~/i"v׽R3ιdEA6~bx "-22MÁ*uKxܐ\Grs5!bD> = c-=bw=)&t*e"C*6~|e1Z [Ilf.b5n ;mOܿpz۵QR|z֮F=ȔH*뚶UvV GsOu$z֦vlPwGNc#S9XUm[䘭i^JH>i!gS/4Zm)S@|79ogu竤R6r@۬rN,;'k Na :)'P'n +T|ۤDRGz)l=ю y}{ veE &;%n7u%H-k[ĮǗ+}ƃ~|M?uW+WN?^7>f+~Y1w޸$lBls8ڢܩ:pӆ's;ע֓9.]vdE>9OZO ΀^ʽ3S`eE{Ro`iXYd0<̢uVGl=(:z&Q]*9F}_:iou-0#2MRADb^qϜ8"~MdUoߌpCᬙ[ Ŏ᳕)ϏAHȆa*!Gu5L+x $\Pjrs aw.7^/AÑS#x鿻}㚃ȬUߗtލ!9wxI105LDNo8^+2q}~?m4ΨؚꚔnKdS*:8: ca.f~hF3Tc 4ioi +;P6i3CSA8G.祊=sݦ>z,іP^^kg_¬{;W!z0mT FS[m&俥FOMq" S}e Ll&6>V%AD]R\&݈qnp |w!q&R8QIAlɈp<Òi*(ykxU+HC x$t[~>`]5߿hq{"$sp!FK~'IX_@z:P8оrgs,h9unP^Tʾq!W^rӞ{@ tr|(b"ZX J!&;pQZT]~ .2G^ˈ,b5s k%旜eʑR4hoZS"T旕 yY<ݘN#äL`ťn~fP9sw;L5+F2c񓎘OK2K g,0^g9vy:g&!˓^}QVc#Z[${ ,-K(*Y[ Shˆ̀P_.+"J$>8Y"'|>]5&;vҘ3lO|cZ3JYP!{uR D4}$-te{;|(o8aiq3}x\#D#dEl¡}&b~qDcJ2;gJ! 1gOQRTE_DZpauUؿx R:YaH\b GA5J3!'sI iF [4 '.q,<=Ee BM+֡GbGJɯ]LTFBGTbNu0;{ˀs._o ǨaұJq -r,uuCC)fȈ7T%D.\l}0=$m Ql7{YS /B};-DԱhr[g 'F1phɭ"@,ay/& !EZrNss}Su^2j>H_(kbwvς$#<G;lEv(_u!7 9|_Q#40N6rX.j!a%5R4WphF뀔IR~#8@|E9;#b?+4i_4->6< ^{U4֒Ys"m lŐ>%7=*Ȱl,__nUl?i@Zۉ_3)g85FW'! 6u*TiA1,W#k*vNm " $O,3 X~!uĊ&S*,(U&8cm$ ?+AާhG&Q=ӄm uy IuL]B࠭ K Ю/HݳS,z* bJJ|gUIrR*q7MqEkn \k[auˋ*j/x|'^ҿގXv"Ȗ:lWdTT6V^WPP|ؒ(΁*P PrZ6beJQkq;ȃ0!x[/ xtC]mQyw! ޖvs2GӺOk[RKmPloϑqacAΞU$=/WIHjxofk8"aRhR$K{t=S* લnD6뼓.3CAL3-wUFuZp"t{9{pwBS<ٵKM9v#>ZdB:#ӉV>?<ʛJӖ"4{,px <Յfi׳t(@>sȳ9)>x#:s&'u+4?Iߢ CDy ,6{6wGG UwŔ '-)Pa۞w/7o>V SͣT;eӲݛrF3Fw$^'7P0.u'삁}eVoAܵGOL"dW /"{?JrFoԐզ@^R4lތ51';p]0G9pf}" iDw;ޡ0?)&a$Ƽ$ړ#%uOײTb<~!WxMeT&;Մ%U/+}+%fyzM˭ѩƇe)iďD*jj>kr*\' ?i0T(~XCC?5 Ib3`2~%j~Z(\LEt.EƋ*ݞt6᫗Rڔf|j2^mE%hO=}:0,e蜔XBQ[WnJ1 RٽYēB؁zGzT-_wm"2*NӁ!Ct{+%5y̝=φIr'cyj *ן3[gNLsڇ9$էTː܃mFI ח= POݟFx9޾}O3a,#&W5r*S=XYq\%E6u+56_$"zN.0\ pR{B=d%834&)K}vte;IB&$.@{ zF?LҶ `ah@ $$4=p/ %ϡ,] G#(plѱ'LU4tg*e!$xmx2_,BD*d>21/יA d`z41,\(吵hIV󬕥:fBD5Xdc/60޴ʮ}s"y͙Uݨr_JN[! = ZQ70_R[J, q+mnV=Iv@9?@jڿh<9mCNtXY/ ;/H#W aYbƴy]qѰ.* vm]1dVO\ݱx,l..šnrؿM١-g$ acFp7pއZ7̜$Y`.ҍ$Cx).B"3s,!J"y{gB~fLhO,__iD$S?C~^I L˻-1R:d"_/I 4OfyGm|nsh1PfVWk+E62k'Rr <`]I/X2z&Fw.\ңyIJ0uwM"V8G3R +xDpaXɸaHXlt/<2Hww5#_Rpr|m4ڨUJX{} H;3oFyjؔz;`rsq+ۺTR Z{2*A!hL)ִzd4&G:Z p XL.t/}9 -A @%uOoC&*D'kuoKk]dO죛_Uw:-w%t,H j; cwIș~.Yz҃^YRk$fAlh*(u~i[d9q(މt&p*6L n>䚐P_*O3E\pTbZ-Wy&Eg,\WB7clA:ؠɬ)m\AG>[2ƒ )N .2RD~(UL4Bُzk4%Bji0v8b5G&鴥Mo Cuh DЗ{gAߵx.VFVXvHK6?{״j{/.rɪրyqw5J)H-c%%+ ot^+>a!ǟWFOb?ίm*2J(h+{T3#jjV<XJ+;9tVvYco^ g&<53H+KqnğX^۱m-H| _[ζ`[0ϥ琢ij/PXf5rlx, #K%!Iz5(ۀcǁBPϻIcVEZ$;Dx۳ȬpèdB}`irC׀l&i.6abuFiަ\98łU1gJS^aKV$}9"'/!Ppr%vo4l1;>St>_%W_ )Ui;LṫЇm0<wӣW,: ('ܛvͿϨ`P""l6ն&yد7-ex6h@1֠#U&؉E}'y1I+/$O`ݡ$n1!}F㻭sieP[|2;_'YL^3XS){ޅ"Ï=GnQڥ !..V`h1`[-g 8{f]Dʊq@ORIVvk8zw^ k>OxJp1KXqZM?w،cBLZ)om(}Yȭi. %ÓE:,V^'f_.򆂂%Qwz{X_!% aO=E QQ6e[-9qRę7ϓ3Ri)FXdǗi{'a~{xX39{'.: }d y+ʋ;|@Υ\ŭ5ˌqŴR_i1%ߎdgYY7d/ʪ0AT \ wao͙8OSe 4Vl$7i t0imv7{ i4[%G =Y7خ,ׇmU!N?8ނ{y) ,ؤ.iN.b*?=%Oyӵ@NpiI#O"&or7Dǁc* ʼnZ#wvnt"z8:Rd-XWS .f?f( *H6󣩸4,&p+qX4\J>%o\g J\.:D¤`uv?\FbE]WGUz[ X .PޢF!5-WvӬ5os`MU;8mTV|{A dc˜^6=~ T烲ձTcphLm37vẸ"e:9߇NTmΆDpX&XnD7nQ xLH p |d6v:E3kljTcx4~ԇy=scpEkl `Ku`Iyz]͌\bf[Ʉ:C5+-A |}|gSv}N՛e=cHd 3_z3<8dA1"gvHL 13ˆԨNNvA0\w߬+>3 cFt<MGb! /)Qvuq"g]`9DpyhD6@9Ggo犰T֫;578U+Xod4@}ݿsY,[lw=SFF%ɸ94Z]\ /^"/u}B|LzqNr6|w24\-*(G(ŜdRLo9fn.o/].d6.PtwS^s&$x$l$!"j퉅QBJq+,fOp+ݼv޷3^UTC=$BV)e|ڣנCOzi_Cߟ -4:#p:1S룈 ؅)=eϱV=>,)/|F>v3M~KNT} v싲~`3BDȄnUwjqeXt`vӷ2)YrA {BݝT\WT]u@:nF9X>gNA48V?vyB9{ [ems0FcD̙R`&x-3Rgq;BI2$zbp !y#!"Y)nAdHyzD F 0sWOJx~se0P6kX8T~vބu=|[RIqUK)m7;n9|Di7l'r)Ldָ6t= nIo6u' Aw~zAhhǍJSu\_ B ~d!vg}!Hin0c'/Y?y(ô>RSo>=^N s$" eg_ 1w]Hp)ȟ-vH@ IQ,<ꉐx_ $>NǬ> , :\.k꫗ѿ\xL_Xt!a8 儞fk6eN82mCySC*#|ZJQR0{޻;J0P(ءפLՙ4z[E>=C(h:TrT[ ػ=\0W}Wt6҇UU'T-;bʏOdg9 Vj Mr(6̆7'|E^6v#7x^k&RrbplE_GN ۵:Α+X_  [38Il{ߣKY]U|ymRzJK d?aRQLl$ x@~˚_uK>R&oiX̠83,m\ħoJk H*+{#ykTFImifg;>YY@^Ժo05`ɦ3a1eUN,\:RC!wsQ -d^FS~/IΜ0[ Bn)ln%Driz&@IItz4Jo<^Q1OSo4]Ctm}h}jq-bVѢ5E_oPM8"duxЮY1?kx?Z+F Pqs"FAF7بW$,qb.wɳjrpK# vBO[Ue<س oRU%`g^` E\ITwvoIPP|4`7e1T aMmiAw NŦ.]X@ (L'N=H@*_сAh]Aeb[jm1^q jmE,% %عx2ZRo0|@d^F#gBo‹΢SiP]WJ,痎ԛ*~gDBN7 ~慑pJCuۤlΜmzPr $ u"[4)|[^{ bggwq?iCŞ`Fy\r3#-0xhT-WV}ʝ 1;>b~ra@@ h`%RM7+=? T-m@u>EW[CvCG*"BXSעP袌!IWZKW2|u^G B Fa dɕ2W 2dG mQfZi sgtsgNpZqMj (gڦ X=ܡͷKVob NO/}>YHh6ZiHnn3[ZJ/hP75 n6Rf[AXfe,%oV[g:$6$CްsN`M}%'|,%yB,{) .Jwa6jM/XH[(Ak )Gܝ;ͻk8ј@.:b䛪 j9p ߞ&tH-Q-h%ەmXFGMU]wX>V=Ֆ_QDp&Gdz+I4'?O# %Z)n-HF UM@ $P沬ف+T5s)[`t!\,vl$ ٶ$S K H%Je WС /du31b,^3;g)w`0_\)~:SV~+|(-C4'" T8^8aVDXX] z!X^Ƙ!mE@^ [u#n[n=ah8mgJWJB\0[)tbRRlƻC ѣpN=ABX OR~3ϔcXIh @B=bF 0Q/T$ӱ_'^Gq&eR.q2@Acv} 4)qvI1㑩۵6pyWٳ2) X9 ZgyFhR^͠ab\g#s>bCj :nO}r&8ڙZ?"nRx'4pct, J>qr{^tG5g=Z>*@VIUIq1\q'2}]LO{4C55Ns]C-yLx Q^$x4Gk…/[&(ǠKgeԜ%%ϳFxrS/=^QWD?YiUS cqɧ^cSP&Ԟqu6G)azA y\v,nܪ^ eMĎ^>Qp!! ̗8& q$>~yWb 䋯SrcpD&xGerE Qqc{38K_j|ݠ aD> OvOR;:`l{Ȃ_0hv{m\1#ׯ(m4vʗ8@\4B"< lxn/,# c~\nEYFƗ)FQT"+==6ls.Jy ,5ۧkeMyLmJc7W%X!AgՃ s,{sqtMN;?řj)ȑ^7ܗ4  a2i*@[!s}S@GKpbDQ!0]N-8() G WK@{53hM;w!>+3/4PK6d~"bKz= U#ޭݹg>Nʻ-֫^rmmӱƟ2U f/_qCO+2Ytx"B[cz9l+:EBS(>~MYᐴu Iq!DIm| [Ӻ,6iTZ bl= 1~L",C7oлl6MRj\GuX`6n#ļK[)@4 dC"&bi4OPL8 ph.wS6Ds7 9RU\)T'flstp oc\,MRmb?V%22rg?Ö '>JH.ҋ*3X?Bqנ`_C|j^ 7!n>lv 6?M+plG>*Z_<7Vy݈)fJIxBҪ%nye~TGvsV i5Fً혾Tx*Gբ&gv"klK˜o8jO2! !;!)޺5 >gGTm 5B=s UAw]?i&w*)G E"M7?Nqp\ʿ&^Yj g|+$RZDƳfNZz $#1k]uD^CRdNlsތހ!6#< #a}LxuY- a/.tKl|>Ҵ0o幸1~aƵWO# y:ۜwe#'Y+v?{2o{H=Dk.]O?f%H}v׶nmKP]Ucj,JYrґ嫿eZw!8#ecd!}SI wa;NKO@IqD^dЃā_>2h $v%>G.^a[͕ǧ /Q%t&{ ob#4%^Poީ, O!4O]q{g&PՑg#ɮ/?C=Q貵a`\MГ#AUVz h7RTNx\fNDz,&U5P/9 ¿2_M^ϐ8R`|uftPUX죯o :j'$ D o2Maqctkb?cT sv*o"||/@RCN Z8z[ˬkbp@kuJ%ga>>UIy*ѹJ#) /W(YG7]"k[{M pi &q'Sؾ(Ij_c2XC4>`nuA+:0$hc!_gfBt6Mea:jd\M%V96͊w9'Hb%m@|F#|Kc>rdvHῚhp{:vL&jmOSai["QJ H #1.Q5w%oAr{( W [4]54Fe3V G+U.%d[R@IO<\6a$|,p?/1T??W`nalc\JE %w^᩵d4heP=ڳqk -"9ֿ!+ n=j&4.ϓqڵ+TN7}XF b! 8o);"rQDX|Xv#̡; ҘOv56UQ*^3!q_5&J*,|zFT8˭L-O v\qGp {pXq$&Aִ|Af:`'2WGdn/e bf$F?!` kIJO![$><9(}2jtD͂q(/z'Ki vC*^Q{ذAćÚlHL]$EeD6`th+N|:V|p3Ygml&f]ZE śZ$~d9M`f=LRLT\*Zz-o{j56{>IxL*Kx fռ11[e-Zt lo/@Ch[ )f"# Kb'Ss>cq'";B,}Y8mEw;{ƛQmvӿ1v#t"WюKUɥ'0~ dZT>=ѳ<`f Yh(R#:V䎌⩎Se?,SPpRޒc6e}1:8jV/y|T'MT趝Uɛ\ K4t} r* 1/rĚJ8^6Je4ΊDy֋ %ʪ4PʟrBа|VU+mP*A+HN~u;`QՊpGf},}]Alº 𢞥n/bcb wV'%2\V`NažZ(4}Zn`dOFmݸLjW fuݺ:3l30 ۆ4gL`5Μ17ںMd\y*zm!sMA"m^Oht*zrKxb@@z;~au"{(jXv+Z.ơ`aRLKn?AJNi2WRS* w;;Űp+=?M8E@E9vހrȎa7dngZ%V>l;)w>=l5Χ>:RM52;HP*u~aW^zW JaJfg2p>jiTd¥Giisg 5C< 7gK#l(: u5|h7=] f iͶn٪?.MȈw ־:@M:oVЁg~gjw&ExEz54vOOcuq1d;0,gm}'vs#lp}#ݜ9g ˁD(,L%-l~2'GCZ$03j(HُZ "֦N!K(5ܝQ`> պdmqs?vW/ȫ ]**Z w|*k6vWRH ov &] VL \.TkR+y `$Yn8/,Zwn>`>y\e7;OrAR;#QL&Íby>zhv>κՕCJjՄ?.~6eygӀ.#n@%nNphNвٝ ,\F\ .PP7I۶yp.|]DKnmOC}pia%˶MUZxbi6k)*j.5ClQ.[5*?Vrn Ta%+Wy 1N(#C0#!{B :p,*a?;w嗏)oTCpfe\Ch72Ŕi($gP_\rOꁓM&Y H IZd9̈ b Z*oe;U>.9H']HDAvfjݚbNV](˅Sw$=ZgySy|Q) fu8o jiNlYl/FJ'Ì<99̹ դmjd@-"JjPl(t}uh ώR&Z w9" .O/}R&'ڵ,58V9I Wu84 "?ma.= UGf?%* }]sܢ6v+1s:Uqyfd&ؙ UrM9p̧M7}b8Kٚ>"Պ\w"ETPR݃{v z A.^HQrm9P]{ 0Fdſ9[6!6ZT;60nir1FvDXBI0 &gGr:Sf[\湁q)Qiq3>`wch88R31,y\_j9:Crg+E}]&Ą:6wIkJ.'Q73kdy  (&7r͙ڏ.A%f? gm,.=țFE\HfiA/}L@-sJabXK G ti0J: /Bl ;FQG;El/qA[9{xOMsR% “Ν:.FYJ./ۮ* #G/Z%E j-0r|IA9։Ơ:`m.5uo]0?oz`<0~5ằ7(e-ToOö]mFUmBD(ۅE>PĞ!<4J\ɓnȉssrr(=x~XKF?8g@w' ǩIk"ų7YD_O WY-'YW.S|);Y:|3eξ]ҵ:N/T:JL6+R" Xm4 oH'Hȡ<;v2+èSW{d܄Q]W_{Rk;Vl*F= ESw# ;J59zbX *;5GKn+c~%2zAʡLjOώk1&CiQWbHeh 6-uin)%8*rk|S?ʈ-W:)Ä|Df oS$Rȑ4:GOt(231Nc.- m\y-QVOQĨ-M̓eUG>B .JƜ,2D&0=u8Ϩɰkr{N%~/xqJgds6i<`vZyq=Y+;H6RbH""b1j{RG|v(; rVYQl*ݱ~2`o&ѽkLpY-3߉T~'=kfHPd?q;@]=1A23w '8O iKxDM!Žώ>flor7L~GP"8d;Vi;vyӷL#\^1م\*X#a!JmldX709&7VS)Xȑ?)4n>:|Ofqȶ~8!t`jB4 TCm{|ȫ" pANCv#ڔ7ŧqc~ŨMʇKY4A:hnc$6ᤉ? Bն 7gi]*t!q4 Y&n6Skuܷ;Z6x/ZWwю/ woŴu6zY*~P'uj࿙h9nCJu$2 x"r!0 RmăGTǑ-_7ur`%$i}+U1 Q{ab9&e2MF_yT캖w|wtu[X45#CAڹT~K tn$(,T]8۠:4c 3[YQ eiJP+ ydiė=:o3G^AO$mO-91*G7Sn '@L˶<}*.>qs;0al1۬ QDUW묑1|vxPƫR~11{"*Y qm`f/<'{f1pIx'YdHtSVք@ϣl(AVWYx͊ETz\@)ýbpFzc~4Z8 oPn{Z/,?04 "F~#W:Sy2mmnȣԁlj}w!K%aˆEfN2ڞYLP  B ۯL!=]f>!B4m)S7('F^ e2(s(/awm ¶09V u0wIJ׀miivn^-< "XuU1bݨv32ݢlvF|L%Ly\nw-[u8rj r$_쩠ER';Z %U1\KkFx}q&ˑ0|<:gZVE y&fs bmXr&ϔxff+z 14aك1a{/(Wܔ',hgX2?!c\4TS2\FV%/ V|ǐͶNrKCy([iͅ:3T0 l6rG%ɿk9$& DPZY/.~ MȾk?n㰿*7kD٩6ϑ6N,gK@ta{'ePm~-e@bbL ;G~QEnfvԈƊ*oF{Vzt;S1%lɰ(HˆB^ALFDGOx75Ha"ߓ :ukm% |]a[SU^Z]d='buΞ!b?˙M$>Pue2 ݘ5*n oHm]( \,.:6܅e⹢*[O'efB 8)5dִrC\ZaPv.Lֺ^BʘQW[zIg?썩"[~ΒG *oğd;cYZȊZVuC#s,OH0<&}PpB9?euFjF~c<39mFaҼo!^d\Ʀ r,2T m,ʮ~;y:tҡLVOI4JCm5uMSIEG1 K07M) vJ?43fE[o+"_2@ q̒*N- ]8G`"RB_"›et.,|)PN0+((;*n<l'V;T͋^mpl}"Ͻd)bIE _Uрw0PSƢͥ %^[mK6wq:_Fެv+vrB=Ӽď[v=Q-6n&[wu10*x);ȺAz䨩ٙ8{%:P80ɣRVIC&3ด ~h$ f _iǨ^r-(>NWκ0VvkwV?8Eܒ<xX wQawmuAT,.KYgb%K뻋 9v୐֥p ۲؉oE9`e߈AL@GSnLWqJaa=fq}_h$4:n05I fäN$ 4' ;tM)MHّH l3Hk>Fe؅|sYzζW# ̟~mEx^ȢXBDde\JfUER~͔ǝ[*+RC ^ukg37lG|׆^gmR Ty7V V$.)f1`b{Bg${&8yO[cR`"~蟹Wr#\QrzfqT=2Hg:,][q布4><9ଋ}66d($?8m/υn]Jl:|$st] C``g py$™IqvJR4 _ gUٲVGl39-{HKx 5{j!1Mqw^[Lq 9GQ=iS/|]3AxWy~=2a +2S~=bjU~z#;DuUb\ u z˛ik8+=& ?l-nH4XO4IP]NAJԦ0^zA,YQW{h?kV7M3*_a]]K%9NocK"?wV_,cui%x5ܽV9hl.$`,;[aIJ'H0m 6iֿу jj-o- ;Dw)zU48^T.t;@AF%g^e.=AU&# T#1̕Ґ >c9rhFx͕wzgDb93F͞E{{*@!Eb&'sو ]fYen>k/vJ:R|3M/w`Aj mƘ5q^?p_UVηfy5M(i pjE{tJSOㄨܑ90 f8ݝGZ1$6Nˀ-H@p& -q`a{@bk2i޼ 4O2ם|T oI)x8亚.h79[d5\]#Q~yl UE ּQܴUYL] jvR|& RKf@(G3k :pݏ'm/^cMAG[jc?%V&HFD7zMfD!ϠO +lPIkRU9BBA611 9Py%0 o"h?mjՒUWRćE  R|A̶je8YVp{甞x| )w/dj]deZYޫܿJ2^3d'Ч=KqL8Šeg 6GЊT.9C>h!zZ2 nF_?"FbrUUhpJ+iz9AN]Zݿ-.zueP*mS{t8uw"_GlXCJƧ"od"fT`x##A̦/2)[(0;_('Pq,ޥҷ~pGWf_9nB8Zˍb \QD0`$%\b*Jp |Êy"46 `@hԶh37=@,W'UB9 n"<CF5m7ኗCd ENOZ $XF$6esw* WHYiX3>{A@;'<V EgOevЍ=%F(A-ގ݀i`}*.] yc|YF$M2*Rù7DMzyM@oX Z1V8pV&L B2-![?Wp8;(JW#e56?2YЛ04kzހڙ`&mNNv.k"hc*CE}-!_"XvIQ4o"щ֢*ui7܍D;ɛbKc7jM t`ĒJ;(W-S)đph{atvrXH;api9ewg- TX|Yr tg7׾f`sXS@šN:85`)IA[ B^/+;Dk~u4JFfV s`Dd_z4w{=X3UMsv.h1Y8Bel&_Ƌ|0fͷڲqWޑ%\1E  m^`8,R~>XǖMBqSWݷeNa۲󴄿$D>ܫɖ a[X\A*뇏ؼ{KBwӡkiKҘ%rQu#ƥG_ve6g3ɓ ac \ Yuo~"۴@-YWGFrlU*NzͷDTj! !'^{?c.19){#pd?\9OE'˯&V1I~v +(-|[ ]س"^Ÿ%ݖOXOFνi3Լ Mtj=IR`nvs'U1w/Ei}r{؊%H)89م)YlP*O;3Sp܉tj RKTU4D5BT.nU#%@$gζsJqN3HaoLԪ@ mqt^{wДkҬB M/~%-$iGxlXQ*}ݧiڝ^`w^_yJ:p洳r1E 4JPlgBͰFTy3gT"Eex£gpkL` uSu[Ĭ|+!ƜtR3bo+GU=EtXHDX7UwA<3q6s5@%܇N|U/Fo'siZ[[iϝ)tL9ꌽ؁aRT!έr$|lI,@0^˶ȉo f*gO֟mBS4?V5jntb9kI~T i;Jax; K>D/Q@|} (]ޙaYŴЁ`JaGmc=j}ؒL0]II=?DAroPT'R 8*'c޳t EdT]^CƮH>>d ꐃ Vxׇz"8m:R9ZH'@}"LYB]bc!ٸ{f~yJ'X(-TSW 7bQMP^@)H#f>F[rTAQjU8LcEa."6C5Iؓ<6 Ahhlߐa@-SLiAhl@]6R>Nus!Yg;2Q=(UZ\p]?B5ߐ**R۵rAEcѓmpSDF4tO%%&/h.1KJAN_0̩ Z ?U Vce9:<'HagG1]f;Yc6zm=y̤1aDV(/dcF[bVCբ%_F>{R}*KdLhawӑN$o.{1?vDh8t .17@(]l3"HkOLpiBd3tlj#~1TKk<lA=I{盉=XS.(^X͔ ƈ_~E,#𭸵m#bL8CkSp;(?75洷-S)"qZ=hv@9Om%Q\2:4W*1ØZ6jqkN"$i0hQvL -SUU;C\.;qq%=PGc\ ç14L(C_k_ Ɍǃ<=LxQ_]W?u,#YKa,FˣVN!vwXKׂ 7pT/ߞc?sjH3F%4] 9/Dn>^B@Rέ0ɿ02?4d~#%:$n^\2!|f5enj+yu?z4IJ%5e͇XpԖ3ԽrWvy^Q 'qD>H;M*_ k<+QVIcߌ2To/ 3WM ?iu|d#`ctG&gCgxuj ;\2JNNrra+`KI3o+W['Y~ s $C }V'cy!۷F&o^4itj GlX|KzR9<ԋHbX{dz3;_FV/LLBA~10܅[_6{,S$&<Sc奤[XŞV>mF.UaZ2@ޝCBAAPN[Pmj'|W |lsE3B*ER/לy$G3 ]mF 6R9sĠ|l Ɠ9P&n)p|W'tZ763hL< K$RA}A={T5L͑}t *qjM&*((-0.mzl,g_2͌!\jCp_?W>'{f4BR3}oX3P4cSBN3G:@ <3> ;KƽB4Xѿc_h$M|,UG-?r>rO,o`K:4dqaZL Y4zA]m9ae1$~r 1eqbC|Xɋi)9j@ <t1[.SjW%ՍU;T Xr9\9`M1j_n389LE8Ӝم>.^tB"YCfߺIVqsѳjZ#lX~+z9hj.Զ]^GOQGP׌Mn}D~L[wo]nJ0 d!S&$37wyQju/X'bJ۷u?NTY6AötiQɊ<|OnaQj !/9;iZkgin\r,?Dۮ}Hz;l0{m=aR6 rx;aē'Y\\H/¶dZ)Q^/BU9jVGEut/LʕZ1YtNHk>0ޞ*¾&Ȳx+Uid Y̫-ZFy憐aI-3.tk/@th ˆ͏z 40R@ ,*I Q,QTE~3:bݝr՛aأ&%GfwR%$R{% LMMtCֆ%1LlBj+>])Ʈ(B7rm8\UŤR8[WQuI(JćQ~PAsϹߚ7^t6_́>޹3ʔI~B5QOZ:C,:2ĸ+f$&\5.~:H§2u)G~Iƌ8Zǂ@}n{)]eݎ%MB" il"TF9mB=[IwYė;j{_e=@TMWF[SvS ${9cǭ̙EMmf8L[/y WW c` 19D i(,/sYibfd  ڲt+DgLh{<8T:M_-*2EgܑhK/XKwpTҫ[{Y[xҊXAہ"(|=-]gYlW}-M(EXIȔlp$H*m s r1ԋX;b9b4qCg6]RYaTg/07 l,̳e_ fQW6Jf sIϤ|Yz#m[Yvd翰|T 6RaNx>FG7`_0e̽S9UuW/ oE-l 2+ߕ Y<:䢎Vp:FYfv֍6pNwAHkT*2zr oQm m̷h+!9֓Q߆)Dj (*փBB,\%2hG* wO~6JCG|X]HB>,uM+pG@nH89 XB$xԏdA)4$ ߝ W"Pƛ+w$Cz&l0I7FG2*/ 4`?:zO Yf&i706+T:I2ᰮ{KlW+Ju~3-wcxV}p)} Øo*iv)784,id }z!yqP,]gu][UCM}e< J2~+å`]W/`Am# Ko%)ݲAM?vݲh+ߡU%0 //4 P͗r}'Fj{=c]oYN:=Am{7cxw>J9-/zsহLs7h$ &,L^mFQ&C(_u;x2^$o8 ɋ6fk]!3fZ-yRICe_7=UM@mp7E\@ םywNPɹoa.[ `Cx$a؈1=SVLei Z5t] 4\Չce t}3NX$V8U0 ^Ӽ`֌R2_=pتF_Txm@[$_–QߐwctA>b溚0|HpNهY Ҩh:, _c%q;CNUm˯3=lf`"4|z^.QKGHSa% A>2&{̡ؔ2z$eCTYvJ%}`mMf&J{q. V/!qGɒt6uWǓ\~Z %~qus 1SFJS䴵^Q1h*E~&hfӂၬ %NM %wE齬1{C|K^dXGXM=&VL,ԛY,9L9 qa zANېB1-d蘬!R'+sq}")I뙛M+"ޛl8|Ǝl@~pZb’ LY!#b> 63e ;c4cvTs}{Fu[>Ԑ۱|mh۩SuU>H+G>,EIunZDInC+F} ʿx%wf+i ?8_gixQ Z#xt cEs;&Wk;y4 ;7_o1 _}7WRNUrҗ^OD EHs z~ăCrnMAe6{xIbSNUN-:n1Š<} OrHV4V ոc ^ j2(reQ4#dm%kNNS JE/ hOÓ &\z^']<'P݀Cn==#HOA</@3XJcwF I6uAS\L'Yg5bdu3i+EycZU.TD1XDi*ڄBLϠbtoqVx}oגIɄuzU: p EPGG4Ԥa5WR?@32 !$[w (8JdP4`?fyKa—nS6^-&HǤP K#_;Y!&EgBPsF޻`~oR(,V%AҾ;ؖ.G3ҝ: 2Q,oQxZ8VfޅHI c7wvk~(8+KB\{J23Ȗ;KIvE>#xWOɗTY)ƍ _)#~yβcZAY42o`.BN=7lTv ~,Ͻ@ެC>MsLuV WjYJ &tiD5X(ٮ#ziʈ(Na΄POG@[+:&O~8U07^]|%QDMG328H!@9\H!c>+KQ(S\B{Iz/OŴ܉]Kj%$8']"yK7i LoS'#>3.brEr"Nk< U|~mIpSLkoU U~.M4y^LmRF-Qr~CCUUJ;[~xh>aoa9 ԚwdCY֋ev'm!5<-~07oXJd~E\¡Il1~]R0ص٭G|ݬAp<(/_goD`;]ӫ~t&]dUfU s b~u>./^IS-k>|L66LS&2ԫ[ {)8oGRqg*C^V\EQ[{Gܽ= ^ FšZJɺ0Spe)2N '.nQC<.puUkMm舗B;t˪qHkI7?t "b9CH*0!ͩ?޸@\Sba4+AÚ2$*2dMbM\5Ne"BsMߋh8dZ^&]` J[ZGI1l׌< dJ.i7.yR ǛǩD`YC$Z1VizF7,.­P{ܑN`1{}re[F@ebJsIgR}YJg3: HVYGͣK~n {  {g!& t%IER{GITXtyƾ$jA3!QGXf'@2TYl+FaNcɛe((W_l:8l{DAUz"@#۵Y#S7T]PQXf`2@@u0$~`31oa4`}gX!ԅakQeQ$թtc`ݮ079k;VBd̘CJ=@;ks 7s,t6IisA j<8oeQ9sgف-<'<8D,(^Yg 8c fdUsbGP\\%wh|An8|z3j"nbXٵ<b f,RWcs5Tf*#.Jc>?}|^߂V\OqiCM+(>ehT M%~G|))y %.uNx+2XӉ5iHsT_n<%24R$Yqؤwh)j ^=VH}DqnኦQ ?=Wh,ރeרTc{*E7W ܤeD$:HܗxNh];­W{ECB:Et:ӻV׷&oɫ5#NҪ@dBhicktσFv3gPEׂ@ծ +:1$0P쇨UiX6רڲɐ,:J*8L.p':IC?2JZ142RtGڮ)a^?n`2ܕj6Jao uXkP0Dh4y 7c+cUֺEe߄:c{s݆&]ߍZ=rMۄhc·^Yz{Jm" /G|5m ff[u1BHF堓hɽ~z2a&P6 Nn1iyhrzOaN[AF_o9ot'i N^l5Ʉ0SO_du ۹l\ C+Ro,oxGei H.7R!G*ARdr|w*'jI̅_xi*AaGD/?+o<U1S'x"*n-[  X8^RETV04Vc&@of nGaV#qkް,?dkN" ]¦c֬viyhS nCHM@bu@7ϝ+z;)s8< +IO˥Vi"%˸/ԺF!6rQuiKDvUl˟g`qUiqd|e!Ea<]$F8ׁJ2\=WM/ܞ3j ֌ vwQ#NTш\#I]]' 6XQT]2瓨3gĔHY6V@6 { 0up*`.3H6JY@f.4oԩѝNtb<_bCKf7օ_.b*4@c`X|%ſ? Y%IǐIw6K2?qqGօǫt"$<|@Z V(GԆw"vK]h-4jop]RcWcE]8Sx-g␍qr.F̖Nx8@X9EcAݩ6aGӤ̾:qfƶW/]%=22ҵ y%qy뱜M2z(+I=A c)clOBRK,Wj ,! bow7fD /% he2,7LgMǡs/+r.^}jg:T=_;ݻ:t-t ,{I /х^I]1Fey$fzR| IiSϳnNxDȨwS^[|24rMfp 0=׸n Z'2vTaW 9`›UH%(PjjNmYg~Q4u. / #E aLm}+Oa5X=f$Me.M^rsr@cՕa=bq+1}-P%#Q}z-qJQ|u8]ߢ;F66 !_j̿=Es)a LU~"ҚᓧXL)"хҌd"I)Rf (>Ke'RY>|Q-iDr LUxJ{D畲N%vq^BEbD3oޭtJ|Y`:(pg,sug:óbeGuj hMX Hjv?viTmr7>Dgyz#/pe8ܘHtqYz:LwpYՔgQ>1J OĎUBcrNΖ>=F2^Z3T49;:6䒸U1D9uO*y,W.-d8֭e;r{`b@/6eAY*hޥL/-JL5fۧ%s JaXއLv&Yz0Ud_\qZғUŤ}Kezm-WA9s{ym Cv^k%kȕ_e}7Lj;GG%xӛg' I= \q bbC!KCys,QrF]<TO #pSubLAspMLx2e{iVªT[ (W OҺM dfpG"䭋w&$8n@zMnM<[U ԼZE=]Ō(w488L*≨~."|5PĎll%,9 +ZuV9nLqԩ9Lޥ5EX/Q)tHW]&&1٫? >i%Y<ܽw@%ؕZ@75zO1ǑE}; (ea`ryi*vr_Y}Wɿ٣'휄2?f?ʧq LJ`J17r:àjg;%m:`?x63"n. l@*]ZޮQ"47X1j_:lDLZdU):{`f!0ҁ,:h6{`rZ mPv<4酃 ?]¤G]Nn97dI + ewJ A(:;*gH171Qh ;[ߕd U DG(h8quw}?ti}*s#w{dA_pGA<ݎp%J FOe!]Q>z=h /^4iYӆ_S7|賄FrLw{^e?߉<:$xXּZuG!(Y֓9DG) XKJ9`ao|j)ک##kdV4epN|FbKD*a 2Y}\ڳgYmdLC5b&)y޹.Tf v YzU投(ĺ ꈔI8 ג=GPjT|BsAd${BvY Vԓ..}~ 1Bzţ P?D Byx9#әّyÔ>ܽآS%ҫ\j:T_Eo0CES&]븘zbf1i}KwO9׬&H'|)IByl"x,)qCWoZl_>s/,2M |x5A_>Tv*y ִzY~B2ӰHo*îrl = Osڎz `!J"wٴۜ"O#Z5`h;ز$It9 :vX\w GMg\mZjrڂbKrΧ([!Xsq8ET'ϭ5kׂW*d|iK#"a3l⮣Tpy,D6yJjJo E}֦5}8J`cbr*8Fa5Ǣ\T1 [ȧ&Jn:u0k8RbVP6M BvX!PLdn~30դdig-~o<5'-ҹ~XiƑv_J>7mH\Up!p5˕ʱ\^`Fh$-Xb^mJݿ>v< {K"@5X8'񖋿g&Ov~3^0)6(#NRjԫlM< ӠҿvWpFIȸvq\(_0U pp7l0n{'NB}:هTHݿmU>3ƕjMaD*k% ӢපϡU 3{PUsd)דGۢ3I 9 M9ĉE?l*\m0lM\9#kp 7y^ H{$]9ȟ6Lj/m0h+O N>^g}ʙO_|`ifM n'7r^r.lPH 0&XC6Ge]֌ϼ&8Xé&ܩGb- l@k(Q+IChPxz!fhkU|ee矚fdxJKTm!Il\CK'SGHc!)y9, ?PT2JyH!ޱơAYTu:k̈5>ے0b7OXDFj YXZ}fXd)B~lc `@ר~؃shV2:= ՆY)8u, oh/1/eYgК0KgGٴu耻{*>mN~Y~GKB{^m~: 2d@ 3Pa̞UtiAJ[12]27+f:w}D{Hq{*b)j1&!9O?,KDeF3Hrbs_஑WvYɫXE >rd=t8B\FokV/GL5d#bx0݊hY\Ζl-lfC-;D}H; RS't8-NF)>ϋ[g '%,ㅔ4^%vѲL1?aد]"d1V(̴YEJD JAO.܊({ѱwBit@bH/ 7Jh38ұ1ר]cz uKgOT&>g5}56)N=9W83yIdkWOsQo5|[_X\|sZ[Gi3TY[i]]҇1*ǣ=Zhp!qjn$f@PEWPƌ|&*=-yUsy-_BTN%t@6%gmB܏"Hl_t]|jhL.0h\ƣklnɪƣDQr[yߑF 3 L#uI~¡|r4$\(Qơm &SR# {?|5 (ؒ`ڠ05-?33 }FK(tϘކfF>)Sl>߃n*$Ua@ajglX|@Of ztzP:L6W4J]] Sل_s@U)JD;#fci {|6w?D#1ի?V{cUb#‚;G^2 0l.ผ.=D^3%#=D-I6gnK_.F(=da`y$xX+>(`]M%RAS` tL=7*P!KW_>HA)>>ㄯ>,Μ9Љ_9"ǭiyOd9%Nv'T(lą/^^hʉ]pvHԶ)@h%Q/;*-!>A{p$E=Yv-/T{bMswcڂ, Lp:hl_%wJ ao֑+Xȑ>,2rU=@ӘlSVF䕙%> 0Hܴ]mzd@Y8.x)K;$ql4$9q S%udZۜM "O8 c!88D%9 I$+ciF/!),{ڷG~Cg`U?iI*֤H$@p,,X~urHU,WϪdYNbnfs'$puIFbֿ*0tR(@7ѱ{U>2NS!Q9xH3.Y`ᥓ$͜`lZVJa H\g N{NAh{&Ǔot FfX(ȏoXp#8VC_?@zݜaMk<P~,hSQ}i'BKhXbJD"Tھ'ھ V'2wK>WLElA VR ܲʁ1J:eI1LVE糪ZQDLXKtSw{]PƝ&lelrrsY *J9պԜ9vG)-A~QgGuSWa@,.h!C5߾#}X)[ bOЎ.Dt1ˡ`]7;}2ZD*J]Ȁ2Nv+oZcc}P:IHSreҋ(DȺM[(EJ6YUa)m#fY,h}ZJM"P!aUPcZ!]422Ŀ*Z{ʦ461,)^J0`΁>p5oCz'3e]vX Q6ch@/HD-PCLdy-yh#W!P$/ tբDz*cچGݼ& MJWY*|q~i䯯\#q B;( S3v,vc$%V*s@6x,Q ;[3fpRJNh<` Y2 =4`e1jO`Qe [)- k̷S/ݢ{|oQ.>m1%ۯF6re=eE+ .InlXq!JO ͨ;6앨X@+(谂Æ\Vү7O rS)͘5Z>!eU({gDWXٷkୱG$Dzq^"fdbRg/sktx/B>k>RIJ &,j+ݰJ ȟvNL8:B˄? w$O92#GSMf 1$(嚑xG"ݩ|;o*S29ZO ~2Wa;,$Eƺtb l'~?oI1*xd2ݼAL: M9"QHME1L#R[K,Xg )ʪz0.A~k3'HMw Zt AD1$Sy.Ka &zvq2o6ØPa7O\6Mïn'syHEw! @|FϧiQ>0ШN$R3[Ƒ^Bu)u* @5pN" mݜ[m4 5wwb$^ 40h2QUv=ɻJ~7\pQDe\HUGa<]o}asg%8 ~bEuakppA2]wHY:z_aVr=Ӄgh cH?w m^7ĥj3]JKm޹0HO'C'T^˴Zj 1xZP&alIY]WE XT| h QwG1=3˸]{AvAob4=.H y萂K}cM0/M4ݬ҃SQO DNoS9$3Eey8o ZsgRT_7&p#1" .<"†9 ߷a`#Z= s|+K(us^bVK[M4 $OhxSTCrm8'C1iz@șIUf'P3H(K51#V_>kSܑ/5 g)rzCw$ X <5lv$P$7l]Tqõa!z =~Hj>.PH; ,88 jn 6Bx~esr[#ʢAJ%xb"X &p5A5brkTP؅TdRS<֐fP/uj6ix,j5:ZR HFrqǢVq%ԂIڰ9jDKSMo*QvM#B:4Co"+o0磓B "*CChcRx ZCgӄn5L7 <OQ]tĈ'}6 gC)j ;$}_vȼj|W!' u]vdRmS.:椒rEҏV3th`s/,n 3;WտC9 *&IPs{رFeq"zsM2ݧ}bdy}چG=P6FS\Z 60(HIKSGQrAgEW^X*CjHdX: PI|hqXFrMEuqGcÝܭuSE,)|謚&<.疫i̥X)E:׵৩io9n@9DȃrKiQf3N Dms2DhP"t.i?:N Xzpؼ) P`Pk$σCl x]7lI6&S#H3>D1([d<prM#[}CO~>%{V8ljJdiGF"&ab82u<~̌9I7ݒwCCcn_3@1ȕ l sh =@EΌ$kUd)b+LVX!JQ=q2?ͦ|C=~FH#߾5ۧ^v}uQ>G!lmi)yoтqjmR尪g>y谆]7a IB-&b-\N{(>%jr,{}leم]*"W0RH,/r4rQ"߰N1G^ s!XW<8P쭤;Y=cU ('+1FMća<7cf?hE\L6rF9zh\!dN$dj%u+<ܯi n;?;ܴj/)WQU{Dv~Ŷ4 h|>-8\՚cm_=aiT" z}::. -O/A80nRJ~)DrK*a^ !2H i2J.3 ¦R(564i9D(b!lAw]=*xS/1iZ*s0h*2{ VnǏ_5jcd)ݚ2Ԋ D Huۡ3[#î9هU&yµҢU5x*[{Ibc?,Vmsp/]V}SGu\<[go補R~0S (T؍ Wt;@\[rbQΪ K(_iEzja'yބ۞?8L1m=%@fe@C}PiPZ} ,(fBY l!0m8ؓќ=c=Rl!NDy4\;ms7MʿֻǞ[+9/h$Üٛ89=i;Z)߼fG|1}FͲDsWʒ mYۼ6!;;1ŁHNF2YۓIcȳmцlt"x:+3.r+͛,n҆nFH>&=]_^cg2rfT+>/\;NJ|4ЇL{1WmB>|n|:x{xi@*>1x(3ՋTn#K!EcLjWe0 tLv~tvWclb9an0+đcHoj1r'h#&EyWLT[s&A`c ox H۲e=>Nm֌ VŖct,hqD-Կ(xW7$pn/=t/X P0(P̜a!\ 6'WU|:Ny$hV鿅6K^vM(%EpV xwUHRvꀔޗe5 xt)$0X}мzG5 PDޱ:р3` l%'>FcaA?ڇ֝Ɣ(*̜]I5Q?fkj" Hl.`Hz`($*>lXլ%'p,a6W&~.d, ^sC*aϔ9Ͷ\)ag"* !AnH ~ٲRqo쑗6sy@3ųcB`7> G >7M~N.BӺH%}s޿uZSo%R@_F_(/Z/+,iiDf ?ee= huQKMz}-a{|%jưp@B`x.&0mR8'Fx$՛./4ZYQKd}$tn4#vKs3_LR?sf\(4O+QD%|m0q+Iн lS!e,T|"a V<sT DI o toNp*On@7HGN=mk [۳}bqK;]Uդ]. %4ol2A|AtG|#M_hQ\2V)^MaoūxVH7'*\5zga o/pv{fHF(9kQ‚?϶A%v.41@$J7si_\+ b<m_N?˒ԸSB,> ZRdʫAn3Nw ,>jc“^ (~C#%a)"=fo33V1w > c JE a $gqG;L(bM8Ry0AڪTgG4AZˤvseRC+]GwHy 1'm`$j-)$v\Y;JOP) 83f3j"J$kcslBHHlPڨ۲'صÝ͚{ mj˫F&'+ŵYq$,yQ']ICϰlS;[Mc0sp;0!3d*f|m+CB?qsTW5S8nҮIPkP+nRov @dK巢| aa׋_浝8k!NؔY~͂:-upuk=)"cVԦYH8Yzks;(ah޺BE{$Lӱ]t75:^X+LzF%`FLgUCgeE<3Q{0F32eH|J&[, KŇ&{[CZZ6;zfO1e /)e^UEi4OF~ji)ue)lİ|vO,HTɋ<̧TJLk6S_Z-J)Ʋ*xq3NѤ*ڍϘ[S_[JH{T9Lf7#%xðئ8$86E|>g-D 6!>ě͝=z@Adpv].<(΍1`>̝m[̧XehiQI/މ 4k}> 5+iēCIjsȂd;qpE:κ<ty9WJ -*O*LYfa<;Mc@irOrEm-O ~mtašy阷䗿j"wT8,= O)M9[_ՙXSM۪?S$ R5pl RK#~qIF%LLjD70aE>^T- EBa;M6 J1M;\"0Xpq7E.~@odvp9u>T|RT-oMRyN~+*9XNɁCc,6I.ȼG8DEV&Z'V̕mX{gjaPwu9@ss$6Ӆɾ6i/&l"[x*Dsxft+q1]]oa FGfX2WqE Ҁ%æ  v7ʻyV;#, ~imV ҙx7̻XsfxY7TZ`pvlbOL%@pR+΃ݬ_IkPjwȝ-a|5] `,|W`g|;n*IC1ŨOvPX6G\:1VYL "qIEo8]ut%ۊ=x6yL94xL{F9 kyFc8}x,%0]~P[8Jj${{&]̵S!?QV&oqgYϔ/EWҬXyk"GjZ]P[#.@?5,7}Dv_Mr^ r/cFմ)":ό$g1^hstެPdd&dpKȲ.6ZqE4rYnV+迤~/-6ⓒ W'(\n(Q2] r;V&zFYsuʫp: b\V7kPjv-Ј](Z_|+3u K^%ePzTIk>ߥY40[8l[*s3nt:rXg@pגv$(6kH#d݅K3qilk$qgyy?7 t#҄p)FO]>n2lkqn"y#Io>G|_1* li4-ӏ\* D8Z٠#(a2wf%+b/&n&}ݣ}@qzIK™-S acNb,* JQ܋e}ZN.O`Tɯw<snjk i_բ]~=AE?$׸K_=õlQra4@~A&z='L32/{4z,4 &Gf׆&s:2rZtM [D:x3Ċ_$eo1( m⫦78<~zP{R5T5,9}WQRlj1f߇~F .r$筡$^CpMtFEVVؐZgbm>~O{g=PuAK$t&1ݩ1)cq _p˟oqX& WnzIUԲ5fxΐ6;^4XWmX%[iB5& ZsA* 7SxЯmAsnчb儐/[{zHeGm62y/U! f`*(ՓzXLj3 &pׇjgnZrd)~zPcQ<7 8HO_K9TsU#@J|%j[%. +Y˝]#9gՉM#n䤻_ ,/s8ֆ; *T6̭S9˂>l4YZ=]DԈ? tFK5&Z=-sg)* j]V{"i8ӎ)vNiC>nѯkrv`QGGi<: IQd#_)HUe|=ŭSҖ[֣,錫[riIjԉbWf-`K4Þtxypep64PִPz yvtQ \$L2w( lFaUqi=o`8~f xpkUWCrv+*lH01:],]iW6Pb'X7V}%sSfF>rYR5+OB/(HR~t PZU=aPFj:#ރ"{e%VĨ~aC+kM {ga62Rras4?Shxc2)g.i(;=+~t3U ClڴwrЀ^X<<"]4U0Gv a3~2~.Pz+ #q;%A7#Vs2r8A~G]B ALx:ccr"7i+GTd ^ 0ҍ^\³uӳ(|Z_Exދ3@@0L zTKt hDepw>VՁlby1YJ삗4<h Q+3NG8W ,gSKF5n7ϩ3Qjlo\yD:MߍdaH"~CFUMFw k9N{JB6/4 (Sˡel.Vc!y/í**e3~fN3O;ӫ0%l]c<& ɫ֦M<+TL(a8""0.b8T ;{7Ɠ,L+Gܚ0SjRο%wo!gNkb^ȑ&1>yEV3 UZX/Faz=S!S*D2뺋<Ū}MIkL O.=1:vg/ϠAh3ٟTT UTS txLh^ef ~G1';{@BG{}9iHF>wE)FO4Vw~71Ye ( 0@Wm}RF).l6-xN]-j3~KEk  iʄQ#C2k[p0~--:9a<'$Q(OI~3>k5Ay* $TK;<<=W@̎U?0Lv-D}b`F\w{!4+mDJ{~͢wB&cCژ2'IgĶKr 8#Q J gRHU/zNM-Ek#f㊽ .GXtq1S0Im{ٴPmHrOFbT73AKb)01`S/vY##2\#C . c6Ma2Ű& ܣB37GT{PYp&e!% U5$c>f El Kkp,B,58pUW+3ԋ*:OiŸtw3gl/oZS&}[WvOQb^\~jn6'ڶ^l1̐xyjaS25"Ap/rސ@jg2p.b8]& yԁz^yH C,Vi#DZև$] '{U" JN3OG5wE\_EtLq`Kf @jG}bs5_"ϲ7Br@MUPN1&DńFZ QpfYp+5;hhe?R0: #ךy-U,D9Bp$#YS٢*r/s+0r45j؅Zz1ӮŴ8e̠wkkzJ" (U12\7 ESMσ.LY^iL14eOʢ,-#:% axUfoR#p1#gB~ s S&UDƬ=9ܲZ|k0?Ĺ(z͋{G'T'QQ_e,t^MD PI+tx N5*ڨծEQ@"MH2bAWMAnB]KReC-GJAKK4eW2<]1DGUe`29_# 7J.)1J=%ޕja~iS43p芙d+b@2ùohh MuA2ߟϧ3ߤ"gfyT=Ulvj{H PQxTގDBγE.EIB9$̪@8C(KI,B#&vV(Zx8'k;\M#qG'NYX@-au*hǾ0t\Q/qy`[1yߊo英oʹ=i}0V&h=;S:mהB?d(I $8F?Ĺ&QˮꕣxɝPH% u+bf_ҚHS ;, qЀgRL:Ev R972$k#%ձV  +ʠ$~p?ۣ#5;Թvؚ^Q)Y_Z4*vp—F>4 Òp̧G) V?>hthJ˘zWBOXd7Rk >u4@ɪ?&("rݵ51᝛=NAʑ-݌lr㐫hLvR'%Ȍ}&*kVf[0*Ih]*4XbL&"]U]3D%#vK*[/k1tY8U熼 aȲO'nyFGEcE[iI^VpD.` `e4t<>A)x(-{k ^Xrg~13ʉ)Ca'Ӯ?kS9y;G 7-.bAqcPľiV)tu"f7D]~Ij'm2/ڐt]y%?sq-vn2;:@SKfw=^k BŁG߮X$v^VPk\3Evks&v^úYd9YSTڼa,eRQ) :"c%ak%^z^zX\>=Z4|gAîsFa;AY?7D3 -k26[C3jW*}0*6Cu Ssf\Uԝnowgr66}P9j&) [2)&,Me<+T{Qs3Z{/@CB49al##): _f?9:W*LGEj2w:|r=|-:rp.pmFb`eVP?ʿ-8c;xU, {W:S ߒIH8tZhg̽f4`oX*(ZAeݮSnUζo0eZj1\+?Mp=1n- ,ؕ/ ]'zQ::Ȕ`_ᯔ@7(Gw -ِH#va[0{&1=<}œ-|x^{hq~0"g)IUM4UcTm#P7d3KQh;ttbD鴚Y'ϪBz o`r0<}f*|"N?WDZO^/Wp1dEMTN%_$sx3̧FYʊBB`QK fH'|'=]+ 3&ߘ iAW@ץ)`͌ T_sX1`$C+f9,LK_M::HrW$p3@ޖ<=莚k7M1dkgO䖬g!e2%w =ɸVihzJrJqW2.?jɯp(kkmfo78w(hn1XF?԰mY|L#yJK' `mB(;RؐEVk-`%>*}/ھ\H6}.7Q\طɱsut_co)'ȓfU(Nn8|4f8ڌ\ғ_j!&9Ϸ)/Uay'zBMԗC)`:+Y73m±yf,& dwQ5giYp,%cX CkYޘ%J%cP؅1C8]e*1PIT72 T70;G(&i|+J0JZm#It -,:&Ba RDEx b~ܿ԰y>y`k=;]jaJKLA0mԺrcĕClU(A $P>:xrkdڗkHb3x^g)a]uS*PV/ m8áilsP%@*I?Oo_P2Ш Jr1Yq|יnaI<єD$9Z6 rOʨ GқYegeL9WqaDH°yj]ddIx\ǃܴEN7Qk6 eE -T:Qu{+{6#8>MJ9ϸit%LF J`ZNe^Jر5cT0 yRԊ&_UX:|ZtY9c!8"Hk& F%w_((YޅS]P A7kF_bto)J(r ?U^S@ׅ"; l9`Hؕ4ۖf;e5ԪS@^kCe_!>Sݙ ;5f gfb D̖R!ӶF+|mBظ~\?'Nb ͷwߘډS]T ;9Ũ|/%0x?΢6x.BbZ?ǿV,|86\~ +yYo4z +yP2/ͩN) 7%y54vZcU/={y/ĄX/3[eXRS9 8)=6=|;sy;3ɇƶ܇0^CI!J tԹr@z &0!vͻ OZp2?U I%RVKrT'[Pi0M,_2KRw=L _>_yrF60ۗv}8pXtCÅE밇l0JF nx\d]T&GyrAZ3lF߇jZ~%/㊗*A>iDMuEtN&J3%Z07f+7@r`)4HmV;Kp |{+y\~Kɏ6h/dٕ %Xb4 v}f 1jWGP; }YJ,;LT>WN/'lJ*W騾 yцȅ_>?mT=O̻ Ý(2E2' fHƅDqKlιj&r3kܷ>uAǓop'g*2: W@ᓹK&;Aۏx\]tJvJe';:C@k5YC߬"Iqp:ӶEJ{EP'm]XhvXcߥ[dd#(XrLyRJD'G^gu.z4I+}EQ *]ﺠAS]Y&Bt{ݏ.z[bX3*H軮lyH,SZ@=4ê*?NnY`J&0ع8;蜯 ;q"OrOZ2KQ*2N럓SNnS&fDQ_R=@d(؁32&$BMMnzȅ+t✒r?>xtX_m{hZh|ql̊6.oYf"1~śKHs4ۇUIyA.;5hZt gͿ[~o©ѩ$aCæ0H' ["0q crYVSJSqe1P_ hBd-\Yu! `a@/ +ukhڋ"h| ;cI譚!}eNCs4(^g\/d941 n>Y/SSEMOV{Q4>"ʎU "8rҞK) C5۴E@eCIi=S3u~ha89d N"Q8S Ę];bZd 6s~27%/;QqO읓}vB,+ -0%&Ml9?./.TXΆg+%ر~4!@vݙL)SaM'S9z`d?j(2: fK4r.!p8OQy|ӎ]{h\N.)~r!غsѭ b9/IJ^ t_̠ܺ?cY &>"ZACѥ#ȮIs[n9pzm_%倘,Y ч> G ~WV-H@™(Eiw#,K e;fQO$ zv×񄾉dq~Bos?]0GkJ7f,6q:a2}C~_m8pHؚ;r^F~ vAžerF=Qm?{55XUr0yyvFvz[UU HZ vv!R# ~@ VkRfI~ǣxhX0zQlJ譣⑷8{P7dˬ(2E+;Dv I,bbs U*!3 h$ edf}>SxNBQPBqhsZFؒ7A\ Z];Á[WGjҝjkbr)BkΫ5hV1rԧ긣.%s/m&MJ4 ;`8Y؞_bRa ?s /̷N ~[w4AXP2 O~q}-_Ʀ5D!`jn (Db&b26e_dh溅uL9a5Y^m Eh,׬Rwqye7nK@Ez&b&q B]n FFD'w iC{}?\YG-ȂBqqtCR}x$_pLhgچ"i\}ors7 WaoG?`Y.pl Rg0#ʺ#h,vC]4b/~Cs2}9|33RasƺpX8:?0g'UH@} lLPh0dYZ gZI 9 "wg7$a' 6_|&X08>uNiG_ƿ!`pkQ^`j vO54dEԊS^-<~7,>eQy|λ#IT6CFJ 6rsTGhv&iPkUYfJe"/j%`Rhmlt ժ^-BjuxLHĶh#2yVʼuӾ|OX {iWCl睗@:OnUl¶lcW/BBirp00$w5M+MC<rD=AM̨˄L75Χ -os:T&p>(:[3 Vsg;MEr}H4#y sD"r}yw?<~wQ3f!i}Vv͘*|cṯ ܕ/ Em>Rv>լظ}h! k+`QM~"Oߕ.D0ng$`4)Y0x&l 5-v^Q̠yjAqKLK(bLJ֣3A NZIcVsAYY#eO!{7JŹ`9\1/9R&M} m*iQx[O]"P, t|d:wv;?TdES"$)^:o/SFoeތJ'-5lC(O}{8 v0wFmQSuo7e Ybh{C^?ЫSiәxm x;M,$xQ# nk\`f Y-Z,4"*tƧ'T>b5;3kʃ]H4#0 ‹itgwKP __ Noyh9n&Bu>#a(՚tGJ}tֱVxzˆi;FoKSGr^>?mb#gw*kX]gK?,f;Y-Te;G).KY:CvojE*i}$Ef F'%H  nhs,(ajv.(g!rI2I]EG hT '|%S7r x:ɷ+ϝ}Kut蕅6j纸㈬xrǗ% zj|כf0N§$hJE7] ƅNMS9R+Ms~ӷ(DS!ӫ(7>JC$+7JQ1"WIZta4Ea^*}qcjhmjE }s% $v"|rSA@A43POشߘvcK Iq;!N ~=gR#)|8ϪuvL<*!alGh+dYyؐbl2RB} R:1?- T::x{9įC]icrm^L⵨"|TK GetK`R؞EQ/!`Gt$|W "Wo G.T5:!{﭂^yQ Dr50|޴v.1y̻>9ŵk՜:涆ď[XAyj=F9D*1ubG`nGN~^Pg̮tTf,I]'X1\%w9j] 3sFffЬ!R? >NbR~K/ZDSzDՈ".|3Tۓ4B8*JZ_UB i>Qi?,G ]+]䴔m6{ Oa%8xiV>if ?ln}lAVC0_r yJ잙\wRLx+XMmx}D#tJ)yu!\7]9~ MBsVFD(^ujuO4F.fĠGA!SG5Gcfo)ʻKB4U:l î@e R!R*IU'oML@eM&UD\KVBy!- 7L?|X? Ry28k VGD2NML6Z}7 4/Q*ҲS$4wy w0u&L2Li%<[7UY%aRq=Cʹ^+ŗC\[9GPG|7t:yQ0yܗ0id ! 1Y!c)j !R,JqYۋNUcCkl^:sp܌gnQ#NV_/KG?FqӯήZ%U,7,<q̀d!ŷ/<;GQ.k0(T6(6m Om9O 9b*֖d:QbG$fHScfH {5n\:NV*)^;2'd368s _Gpk),hRY'VCǩ_~)X2Y+ct.t[8Xe[m ^.D.ƧYwPWoZf7!yt5%F!U>R-\ٖ"$O6>,׷\;!n/40v-%|i0O6N#1"!~toͳ :PanH\3)SiGs7J[s/Z9.z+8FѿyԜNQ͌I@6Z,aPחavޖyy,/QM9)VںSe m8!d)a(Z5rMSL'\X\kscv YUܨQ>B(ntW'Oʇ>?g"\. uD*о|V4GE4m@1x{*fi:qC1-0O.xm~XF y=Y™C8mB̖f]` 6d%iGʖR!Vf*Gct2Y9"茱/وxGV"HP?}ݙ|U4[@'γd10Ouu0[@o5ve7A+jZ&"Q$Q!0&"׮9HQJ\jzF[ ceմ+1 U#4,·Vgzm (49U̲Ubh 2nvJE=hEp#O'>į 7uԽFMF,{*n=O"**8QԠ~L=(JO2ho/ab빦oeG{v{~]("cvFB7>Z^c8zGg'sulq\?Bx8:'=PESBx?Ei0-5n@2`3] ޶J'e6L[pfGP0c;,-w:e -Ý!YWPNVH+e93X}[l~=*CMF |ۃWB6g=Os~});&\ޣsby$6Xi+jL'QMPv[m{BKϯM ia4õU{cF~ǚ p [ /4{qyR#cz !./:ӨW-G*5_ }&syz}8gtmu̗< pqw2o YafeU-@CR%R뺖8D`85H(MQ_cdպjs0(hD}Ҥ(fGS i ,|TWgѤ$"!0A}sQo5}L6Q/8||MtV.\ؠw1gTXֻvY4wbhLb$,1|' x(_:ی`/qB+m?x%DPaKR5 U&6ik%ӆvɼk+aUBaC_[:DpnykfE5o!.>`';:irQa!|+`1D9F0Cϣ <1Ybl%y hܦBvF,_;դ hδ Umʀxv3ꃶbgVO{anQ\9JlLc(c9 V²༑%1t:ö0:8}4!5l!rExH_[%u:pKT/I floxn!ۖ5q3~a @bv%~-(SEjJMÇ&r&ȆXFS8Vq,s!USlgC&hHP%?]A68Ve"zAθc# WW1-e&Ea@F86hᝰU0.Gn Yǃ08°ae߼]Er*JXZ ™rOXG=PE8~$\j)2AJ*X2& N| <SBChA7n4%-ZQlx*&J-Hïx ftx͆{vM [!s.405HS\̥@Jiz͑=N]+l2һH QJc@!A"gGz~|IRz<*4NH]7I'Ί"cYd3Qbr[|>[IUf O >%< |NV^Σm2JʐЍ|gV5?d/Ty[Re_v1rԨ 4۶q,f/5Y1T]=V5k$?`8 9ieub`ӔqIv8b _K`%Ojh.#-P=m]רόzLj@`oȗ9Z-+{P'L;1䗅d%F$=ި"Øa2 cҜYL ܍^7CGnw4>:3+ʦ;?+,lWS'# 1s~N_Ϲ(jzrH&~m Y@7ș.EeC{kV-me %zfibMHS}$κmPF YGK׶^{Dūs54s+B^.< 0aKBR$i\aAer=| 2JL[9\0)8 {>4[娖J_Qh}]r q3]x>{R&|zr.aV7Q80OԹI`& ҳsk3σ@瑍ej[x mv&ߚ@ {qV"iRVPC77B}}ByS]3`6|= ' !SЕ#FdYD@(cY*cwVe p~'>t ~3/Jt6 ^)P |hf2UXk&M$<<ՑٮE#,3ܬQHvMģ*99e)B-±k?ZAؗ2"Wfgy%;_~~VFLv|0ޖFr? B]1sk-˜+ 1;_0djQ:" Լl O?9{$ ^C]- ArO|U@X J ՂbiNПS2,vF:b3ц7Li@Wpth+o  |d{iSyY!EL5>j`!`v4"Iq`ޕIFv<.Hȱ%J1z_" ڈ8Kn!)9fUIȣh'o%BhjrEGbW[)OeR캘M3ЧyaAϘlhlgJCz#@SjeX,4݃}wZg| gȮP]B|kNJL,q/t/.>e)Z'wvt/nx-͍0N8GsŸ-~M^%ճ|G-D9n|%^K|IkN[B;۪̑Ń4\,G:PUx(9ByG- ~.>øD/o\(6xJ!OaZ09u<^s+14E|,SZu"lY=tszr Ruln71+i Oip7 /tEh:ջy X5Ν//n_Z"N"~>YXFEXkQoFtK:n D7油W TTjL$9: 8n¼>9yŠׄ~_|;j 3%eHއtEyn7ѫ;<:_[Y'Y[}`DF*UTY܌aTӉgɼbt; /5:zdor`mun=CZD'rƝIiur J©kNo3XNOpqҸP0z?*aai/<ŨIG&N7*DHxAQKɇC _'tf{m)YR_/^yovʚWr5۟ ;|& 3n,&;@%u@E'D8IpMgWe-GzH?( ԯ>Զ};2w|]:✳U*cz&2whޢmf” C*Xٴ"j6/u@Dǝ[rWל ǙS1q4}P’r(VO;¼=G!#z |k;wؕ.嗆$ƙZ+FP3^{S7@ TQЍMCJɸ`EPms?#4ZX>yrdvA Op[E*Q2@Dd¥lk41ԍRj)R<HCf^Jd0Xܠw80%eӼg*.XɏH)7:tq,U1ƕ7t`R>j`T-.T a"!V[;t]a8|rA$JlBZbBb!J]/'ЇQ|&W&Bg5/`[ Pl_%+թ+%]fD>X6 }GsS>hևUe.[đVlM^9gb¬gP6-uy⦅8?J/rNN0 r[QGHK<;51עI X@1I?x^I9E[G6<I 62TM8X/khC0ST<t B79$W0Un%mb^ RrrH\hW+=w8ܵ 4~QTdhW~^wJdd1 0xP }χLW/M(+\fFPW`(B0ەY}pj"簏< mW1@Wtsw寗M`q!UjfXh4;_wZpD? aQ[4A}xɊ#*vi1Q3:^=wO) 5a!A8|]A($6^6@GЭ*kچMԶzY0<^3-Q6Y⥐1$+k6vQT( UG 4JʿnI`Pš^lFZdcL-bqY^|-xD}?zI2/3Mfޖz=Bz"H:N|jQ7nص}]~GZ5}zcdrSdYhH;]o#6 "/%P Xga4ܙ -AQc5,K_EmP"\@@N5vXHJI6j;E Q&2Y/p]7OAE{z~.r;RN6?,{.&ɑM&rZE#? / D[LSJ.n>?Cޔ&(&|>J$ ]]3>g⵩Ss6%[ L{oK5v!Sʼ#R^!Hל ip.o} ~0LlU(b~H{ ȴLL%,[G*E' Dg^4(vTCԱ+0dlԳsVP19kPDYr̸ꆉ[\NEET;Krԣϛ ѝ_C,ױf 08rCÁX?yOEW}1y"oMp=slDTmZ F8$J71Ļ\IfhsMjBT[WzA1`rJ|<;LdmGF8dZ(~GY÷:tnbIoTM\ciLī cMr3OyA?b %E W552qb4GP.dCxPҖnh9Y7%|DWĊO܁;E"S!He$}g$8n+|1[q3el =A6 \!jV+J>LojK9֝Q&U; (),?b@FIRQWȆhXu裂 9߮%9N\3XuMYs:DʑVC(iњ&C>̕T誢ZAn[7 4]Zha-!Q2YutD% 6RPK$R9ٕ- Pd5rR*^_HTsآ)M"u%u+d"滅x{hBw(+\)*+:Q76ֈyRJ҆}hAc GZ`a㈛e"|u{S%vKu n)V N5u_Z#Y%Z.q4)7X۷] 8>*m+~.:>#Ҳs*3^v+ &cZC&Q4w3= F8l:4J"bC'C{^Sհq<ZjNkmn~?I!):򙱭O[).rZ?װ['lFhV L@i9#ѧ_UC+z͛?) ;+ G$uJUv*:Tfflz0h;] QxQ2W7.Bw=p2Txv|j4y'F@"ȳ<4/!(aIT]LxeTVB_e \4UcWe]18GUG]GE{ZVraDaXT ƚˉZXz_X]{JhP%'ys)"8G3~\ la@:LXVeRCy>[eᦵP>4 =hMVm `8&/HJ#>wf$vDE{YYK-MS(! Q1^TLW{=%ܳkfH]E`REH O$:#7:|Em 1]7; ə9xB< ;s1Z1QyByNa38 f^werFE'}݃m~Q *Z,44+x xSn?}ɹB *`\GEb;o0m=# =X!>/l+F1 \zH&G\jw4#ϻa(k2VAT%-x|K>2(FY/gwZ3'PA`M#ؑBRԕWZe"&]a{f e[؂u!_xOm8tuc6rkM%=B} ǗjO:ށ.G R({[rP6{o`Q&bnSU>,oC, S:TQޏ6# m|͢v!R7U%E1p{; B9\X`% ~9/ e3ۥ3S\dh:S G8K䉺e0H3|WiI"̐OP~tD@LQp@p+Wluq'. o_!UKMG9nr$n'/ZL=R, IDa(: |VPCT3&׻^9jWܥ L!1sIr -lQۼ y`'(Щxj4 a` 0q޶_7x:uZeG_#F.Hژ!3N\2c=B>_y[!97h-ZA6Ԡugsdi{"Oq ؂II c],I}uMsl)~9 Iؼce .9R}u0ZTj=/8Cnn& 4Q( 3fi/|B;]{ }6\l]OOb]othԲl`T6]V(lK;1ǵG%}7s{d@Òר4:"Lcl4.ִ};3u&e@}Z-&#$!En,0r!uק5@bhg&onz|E!/)>wP'&'5WV2TIh&󥖔m aBӖq(j݇߷C˺S"e9 UÑ ±۰~R9K;409$Gguu) רCQ*zbFj,PAYS̰gf ޞfbl5,rBFj&#vͫz`=1^IYJjжԁĹ9yzt7x]RUJ|5hh-'Wڈ RکkMֹ"FD] ҷ#\j4?~͸}45̓;?4Uc D1+T83#~i!%U"qc[+vhkH.V@MՊK^Ңe2&O,u6HZɨPXf{]Out/^^^P5|{Q[}:lba7ForbHU#`޵sj*iz,?ecBz)3_'(-`n B3Ԭ< Lp:9T Nh7 4(\۱Q){ U8Q.t;g8́JU2J I5ΛιŮ.d4[UBY /٦{`CPҴ}k rF\qݱylA{l7q-Lĝ| 61QEo#&X8 `X?=.4k4J/q ;Z csLnU$t<3NC! 4''ycomѼ|!bItu~dk>$ B@6.kvgQFϙŀVu;?ՠ19\U [`_Èz/u!WsClY3O ɖue*5;)-h?9> CI59Nvu[S~&(!ẃn,w2:l!WF%2.zS\8lK~B%"əV+=e[1R—qwZ R)cF#3ΎҢf=C:G  x9{C>Qy]/@IY=,MAkCgjHB5~"[5$FԽOl;ȥ۰yn^s8nr/f蠔X95CRuTl%l1cCܚ ۳s%-#*Nz֗c!!ru!+ө^!;aD$Jp`^N7QC6S"Ϊm_5K;,=ɸ'G7za3wE%Rހ2FXa*NT*BB&Xxz\FY~OJBQjA]4ng" X_ɢĞKU'W)Ų4%U!c9Eڞ)^+pGvNbLTj1]vHx$v6h ݸg'P7S6CNRr-hU5iܤ+ܫ*Q]5Y"XEl_9`^׎d(/@ۇLGEJvHy?On2эPAMЁ<~/(m#%B<0hQ@MF#lRv* D. T6ϣt&q9P׆z R+aw2/8:3>ɮ1iXl[&@~7dڇU;:KBMNۙ&/1[e H1| WWص{Z& PDrϺ\`=X9]ggzj7nאK4H^|xwN_߆ 02/ *况 Ld+Sk@Yӕw՟FS;9R" O~ވ:ٳETE^=;FT|ظi ][>]$=Ϗ 7 x:)w(B[ !GtA1>#tw>RZu4%wӊI9ƷBwcu=8{}[(>RQWWuMjwJj&n"rbt[ %z!3ΈM=t XeZΑr \l = < {fZr =scVIH}$O;` D0G$nT F@G Tuwnܶ4YVhhy{1*[%yڹ%Y/¶mm%;Ej57?h+$zc glDjaec^pU`EV4;B)t7'{F%^1Jlo El578 '5RtIR3 u\ Dh sX8 Y5}k0C4Ud>\Zicn[2qE`Iqrlx[ݜB||rt 5 tN/YSЊqQI=O&c^jY :ȡ"utҒr78}ݩ08 ۽_PLsrL8-D 1u'Hf>jUЧ_9eN,@PP` |ٗ@O 6oHa.Q+Cқpc6Tz07pLH("ZsN?bX8m X|/4eDf8dI8plK~ (w%HUaIYW&p$SY_C- bDR#"O»[&a;Ljb8F5_co; |yl24jTԒ߉ԅd}y'TFXVsVC |^(Zd|ISsX^O Ì2jm [1=7cAOܵ(ȴš.8rѷ%Tr hW7AALQ! k6-^8f6F˛P i>sr-ݺR`;v2#W͗ "lrD#G WEPR[2b6Ňkul~AZP-5jX/ #Yg:-6e1~~dn׉!얯 bU(9؍I6(~#jjt}}jY?ؤ.dl WtGsY}v _'gC̜DgަdL+侶PsQ?`P31qHzyQ/dkjyhOD\.-n[<`u-N^ qjDr3bX%4ँ"zU;`xY'0Qm];Ucu{]}l%lD nLg^W )l7E9}8UGíСWJ&7^Mgf >_x8kL4i} 9?=wk.u8]>̪jjҒj`n 78ΰޡP7=o}%{eL_YH/'$CՆuх<Χ%!Nޡ}g!Ǽ PښGuAf9fׁxd11 ۈI96Ia1ߦKX< s ;ILq'чlmxUGJHN~MAj#Wd6:!Tv*rM.h^þD 玶JV KIl8m+I\;fn{l:pwo\wIDIB_Z*|xpoZGZmM/oTO9#u6qD DS1ypG|,*| |\c/<$_{0z N:CͅS!.9 IsLNn35y 7 's$ וcl2el~HGXfLV`A<(Â鉙JUM\/YV@k gp$'qzE'+?dIe,i`c+#_~^yTkHbO'SY#jU.;OaZ,x:jC.5Y/ 2U² ,PƸ:Y(Kʑl6h:'Lb]'+axvz]uq#d1]. bKo$B:2~VEaj4ݎO<XAMnQAC/kYfp^3.^boI6y3bN¸{1I)-Yp:*?Q}t,H*xQ#{ʞεĿ˺NUe'R${ucw²0* &&\):}#:P,u2>J~#c&/#1V-X|bQaHe⽅\3'1F+qrɋyC QX\)!T\ʶk7>&af-lg0 'Djlj=9Z\$/ŕg&%A#~61U͞ eOy:M?octcp d[Yط>0Ge8x~ۼge#Rb/DFQ ;4\g@dH*N4{]I3lD?Xa+ W/ωF[7MDph. =|dIJzH`~h,A]b$X23|;M>PW O'zk!Dypz#p4QhąݙIu:qm2Cu휠G?˨|wqCKou \%Ba۶PO tJ"N΁{'ocs/Oj{7YjJd9ubR{]/n8ṵ JnRϯi]X}y< ҫ'6| >jr@*LyMfza 53o?lm!L37՜c6-&D!`aHNvXVh7fS;?XE=w 4 k@k8P>h|Z4VB^J Wj LYȲam@y1RDooX&us@.*󴏠l ll|7G 7L5=Jeg̻% \J %z_ l"%>t\߉8.3Ӣ2hӜivg;Pԥeʮ+a~2bCfJ}YuKIԼ5AN1V3w/+yHY&лõX^t|HN7ɜᘥ>Ͽ!Ja{)M{&/^txV_NyDߞ/Ym \YMѼ^f pY`nvv~_V&aHX1w\)ϝ_;9@7J|bc-U1w.z^ZR4ҿ7^P!I"9D;\_L'~XbM^a eD}3dLޫJo+}dR6^LjWYU5.C|4֭du?v_,ukML?=6_G߻g h 7eѫzY -MgE\y6&4VX%@_ r _CG0*?^(0Lk y+ }2jB'&y4m}bA EPhE;=RhM]ؔܠ \&娻x MK~Z<綅mz,N8kZ j Gg`hSdP۞}7Ub Pј߰F(5)2;<,Vķ{X}RfƑ@~YDR'=Fy =j2?ܩ]y-~H1~j`pӏcɳ%(GLWl94  ŪZE)+E_(G|sf;Vn(*!٨I&R5 4VhVmWB.,'nI&R=zPHq˄og ÏB5[%٩n8 1;]d2&I+հOGB>P ,y`wx^ab$@7*\эqΙKrxN$uEOqpɭίTk xbP\!] h (c`>h0xm[tCTY N˥JH(]^?p f-7bHvS,}սU905EJW!Ȟ  `jpKhgTfp?KϭqM#~i7z۰jY42n|h& l}4.Ҳ_[:*Ÿj"lkX+O܋pY 2XLjx3~mfɂ90vKSxk}P/,'0k6S0eŒvOqڋ= aM9W@ Q U]_c)O¦4px66LDI4uR ˷G3Ho;+tLt1Kṫ3a=;@aQory=$ZbJ l`iI܄FJJ{{3oJN4_ev*hT%$]&QоI_NUX&E|Aiz01-C$ae]KdHPɻȃUϬ& oU50DSHI9z~*ƒKcPA| k\) teRf%oeE=DTzC2 C+H YBUS^Й*{w?Kq~)%^4FI dnc?#%\= GQU IDbWŠ"r|^^ 7V0sDž7 FV_V8]V&R35]>yw4X}#q}T6m\CgIqww j2m){<ܘ˔K#aY>SMU,bXFș0||MP&Q,QYZxNK >9vʐ.b2cgY=a҉u+3 }M_:ȼ6`ΡȲt í KޅI&ꂂϝ&jij+crGE5qD.#S S!h ˵xYR=k>w'L0Y{ vjDzs^47JoCwΗDK䬙0a\~n 횸J/Pzj)ş`z5QZ\ :GGG67 _ ʖ4nr>ִ ҹHP|? WBH"(MW=uvHZh']8eD醴Ԕ!gZ2վ'yהƝ$PMJ^:i0A$_'JyE򔔳:U'9O-qAeD̫aWȤ- b$K6yЛRPxōOvGj%Kw'ix$0FtJwdܼ BᒪYu^4;= Ч7I|cÑ&TսQk +=LrfVYZP [N^fһ[B^-1ːI/) =o5/tm|P94[J 88_X^ch ) O,ڌPz ՛yq)%c#*8e@[ X}ZJrG߱$}U6(6ēwu<*(ݜ8G@N ToYp{RffʮRdq :>A3Qf.FkWbkz"kگWawǾv݌"I=f$X_ΜD>nr8ylֳszTeh&x1$ Pڦb ʼY -ZIq "5$)z E)A+ld,-vkz<ɻ?jڌ\OgXB\}4M!߃@;iaL eh >bpvT I }N"ߤ6S$9F2^!6Tv>/ߜܦ/FGLؓaM.q-m+/,8֋33ΔP$2U0zc03x| \F5'S7xMa;7\C>8(D.bq<o&;JĆ!?I!W!fØ6}FE=lf$U";bWTZ9te#dJ{z%vTUԯ>86;n*|HF%=R]{7a1\G (:[#2ϑqVz QI4?NNw$]>aF᳀GXSubIMjI&ãC 13CU#[Fdab]~*M;#v৖_OȫČ5WE\$57&g7Sꮺ DWf/h4V yw[īU2±IWD @3뎲`E!@2=_:iLT۵̉%qθ+q/ 6/[t+29@\j|aU O)"RK&*謔:q+c ~ I PV52꾴(LIUc@&46S{ϞHRzGl^Xmʂ;b,Zs =l(Yv48/򤀬LrYfT2m([wV(Fn3ΆS9=W|n|i蠵 |9DTњW||$ l8^[ gB<0P.zٖf; 5g5BR>vIU43L5Ҽ nx{l/ 8;miv(ŠhkIcHX>’6;R+bmd LG4t(cbdL֌*"pڱIuvS?Of|'D_ Օϒp+lЀ;Qlу6(Ÿ9x!)\aL"x3 y6`L<3'x9ǵ,vx -d %fi,⫚og]wGve؉VQAܥ%ˏߚ4FA⫵.x8v&P;џ3^ g݇08UqH{_ЩݸMlиV?+!x9xK V¸ה/ט-ZMQA~PP^Yj,d Zot+ H]ыvǸݰFy|.Nk r:]xU=R;%MiL9)ĚuX3E$* '9zPd!D pv36Ȓ@`<pwMЊ{W=rlO̘MvBU"kZ:㦂iXKgn|K'3JLdl>"0Ӻ腾,:EyIq n3]CWNӎ..q 9l,@)}Rj45q*]r1uXĊ@웂DZIzҦͩtzLLbs7D kq3YYl3lbd 4GV$8zG)~Mrx]ndDzB\e4U1#(Yd'?^wu>z).N%:Eg+݄t Ukʕʼo2Hڙ9& o #A 2E(7A68Mc+(XS6˼Dv?IDo #Y_CA~ot*NસQh-`H##B@jChj7Sϭ;,KCTpϵ0}Y'R䀝g=I-j*g~c\@@n uE^i Kq޵3AC3g&[YNRM⼲Hfx!iȸ#s2֢ŊΑu& _=d*>59ZC-+Œ@h6t!#SHm&Z C1T'O(Y,Vb7)N]q2@1R~۞GfW|!oʰw&pt hqӻ-t&BR.}h! ΉѬ;%1?]ąX*fUKY R5T0,UtkUez.Uc%k b5>ƴ)6TߟW CSrTAdZ?Y`^1PPx%<~܊BO-i )EEJU)栯6ZҿzBeE=>; 2ob ScYdjO|IɎHH ^ͨ 0F ǭ[x"ICFIhuf{(NdQok柟?v61 |JkP4J 92>Ǝ5D T5#G̍p8Y*CBU+a]HoF W6S<2L.Ɗ`Q4"xFI9WHnNAuSQ(}D>bvD7fGr4bBb/H੶Jq Uy)=vm~Eqve^빞wbJ<)yٻnjeMQ.S eAndvVjR${ WB7e=ﭏhhV*諮!צ|WDس7sIGgzTIRIfHr6I>Y;AWWq-:ƒ*3GZ|db6$cYuei= d~@$4Ν}3 wEHmMH厑m)4wn* NS> qQNT=(bp-Ηv=<|đ~;/VKP;3@7q3qK':IAUdąRo GI;΄Q(ӝ bE\!$Aej,*2=f4^4DJh2g"ǪgDH5&y R_PWi쇯;%jfyb,^Ok0R+3e+yDh׫W0>S13R&ք'ævYǜ`qBw~5iz̠`3J1p&k moQھ\t"f;dy *2Pm۾qFՉl|>?7IY9( bERW*x`Ǚ0#U1OBVXSgNJkhrm UpA;曒W+óa wH x#uve!t1AUkױjBZe5䜡Ew&B% ڶL)s_b nC-\!%<"nT"wqň ߽$=Fw&ʸϛbS'ȶ|#x]Z!ANɞׇ& g%oq~7/}qr/3t1џ+`Qn֍e KhQX+{jÂ:lyZ')k6|K5 y!SPxьbrcc VBfc!H͊\E ҹXf\]֯ͮt΃sF"Yh׮o^tZCՙ-QiP{s>x %Cb? c9d$M!r BWcҶ`f"ASOÑd5M"|[.#cs* /eZ=aLLlm9/Ipb;!aϥnz5K_4HtCHacѳۯ z})Y>¿դiw]I%O4!ʰfQ@mOɤ@! 6B)8.V@(6ކrwɧpK2 YYNhG<,^cE"4c85rϲRU r;o>K cĞ?J/F؎72_"'Ѯ?qC,'MzJʚ rU>sas@ &y2G\1MC/ ǰO~yuab>(GW'h;:E.G#}{ ѯ542ݸ>eD0 FhN~T [?М iP,xEO7G&LT0&o"_/]*STEyqA[jU-.m8Ixl*FfAD{E8Y-lwU? w!Dk$cKTaeQ .pq%jƠ7-DЇ}_`4}{0қRŦ$CtFrH#XsE x@\fZW}SيEEzHw踳rcI/ԘFh^EmǏi R] /ȚdDv%&uC]e Ld͹'DI OG G+|4#8?s߫Z >jTdiQYge 5JlJ$=X)s2MdE- "nwI„S9ʿ\%m^<3Tj&3h(edcFYSD!DN g-2d6?-045|.Y Ŕxs`^hP`]'AxHs#,6S!10b,ɜ q%N&1&z=:"2H3B̒gS2;%>vY~u2 1~On)ם%J0i/yʹ6X9Fg+&0;]t)torڼwzqq#H$&_>ArwkUbXAV`r=y֟|wxXzvR"As;kR. .U1Z=}rK8 !,U F7<`{ɨUW::Z JU*9_~ IM%%K5%?u,؏ uuU|*$>rզȂjNwp8Q) Vߵ˝DZR;$sp$:ό>>cqwU}߼)ﴸ4+h2X[x]k?7Y}aid3 e'c,g*=dU" %la/ҹ}~r+!QIؼN$dPelM\?<ٸ,Oz p2ވ.2}p4 ʸd??M[͈&vlG}3tv6<L*/ Nb6T99e|xC9GGFt٠iX0bg %ՀDhJ'LNdi ٹs+eW> f,OOH@~]Mz w&.U>^ Cc.e,M…lXsjos>So݉tw6ʯo=f\_x1[PPyQzY]:?AݗLb`|^͵G75@ oE( 6Wl4ѻ)B[np\xyXoP>Xٖ2/I`D:KYOZQ;AL۵Of|z¸:ZE2fQ/א\,֭7r2~OQ9qU`GlRⰥ+A\Kri5w%!#*ȅMf+NHqaAH,YjB3WNjj)'?cܶ7*5Ks%N&{/FY|iO=ltφ<SQP,}Ucܿݳ?v沘FOy?+/2 <ϕVv)$- F?$8 wtIRÎ}c~bP̉N0Jϔ/E+y~?Z,c2FK- }' %>5XFw" aiY^+$UTsi'_/kII q6@kk%-3ٕ$!F5F6rc DH!{sNM1K'Rn`$u/ 2Vfد{*,Gz<up%k{369r-X9h7I%sۡBHGwk^M}$^ݧZcߐpi&:Fm4dz&O␞V2!-SHυ)=p&&B$ v1KMypC*Ӿ0/L)!й5Ev\xٔB=scUR],cBHĂHs! IblζF p =`g5*w(zpu*pwRW$|Y3!5Xd)}r ̹tD"[;?s)lm_r' 4LC!'.r8 o-RbEjSF4o0YC˼0i^&LMx dJ zjTyMwo_hBluC4|P퇂Otĵ9헐o姞mJUl ~$:,qz6h^?j./8 ^I{yչ|w5]FZAF%g.  U_q1Ly&U%2݊lj̶mJuyiܱ"W(HbMB@@G6|6\|>[+$U2)e=f8P`Ku[\tN7cVH?FW *9pA '@\ AVmOlɭT 8N~cۍݑP)|^/;SAm^Dꌌϻӎ"97C)Ty&_=z9c(0}mCɕ1{m-MQY  lQz2 w>%Oo|n_7.+҄wqxv =rHBS-=r79LÃ2Qfoi&mQ=2˧ 13$#!\"x5 iF 2\zpt]4J94#&=U'Ւ3 #I=#O҄/7es6QFE(~S\emrָ<:ZZe۰ ׅFkfyeSWK#vx)SP `TY;2$VZ3*DuɭOΖ޶2*56돷\`jJiIbR EzЋåV=F !МV(߸ȼ1.daph-0[-&Ϻhq7-ل9\o|W/t cpa*+ e29J0!M$xf혬*d\X%1g և! ̛T:5AbKD./~a1˛2#^y>Ɗ1 S[#Ln 0{(E/wӍbr> tK_^D /6Ku t!ґ\Y]mU+T)]ۙO3¹ l rؖ@,rNpƿ5\,p6>ao p.8fX3߷f𿉼.ݖ)]&YqHa;È e+RR t 7SC9 b懍-K1<@_( =mvMEI% !_qtu7-+|ѷڲ-9Z OfOpeB U-Ґ876ql+r+AO7`|\22qK m% g(¹W/uzj?bF|wqKe:JY.Tpxy?&I@? 3@:ح_0W?W(( e 28 .>8N}JL,A1ab)DU>w110۱]֖ȭN~~py.0M6Yl`-lƭˉ]b"OoZ _XS7An,,f*71f#pc( &u}S u-ErP:Viz0NTXf_T$AuOQ|<ս<݄;cތ> MP.Tygh$KEv߼&;# .$秌'Lۙ='^5 ZᄆՊHU,mMϴG:ZQ֛i,j?"ϯPae$y6B洷JXkU#\·!(d?5ɯ30Ѯ=W8_zC' B ͩ325e^J24SX?QNzXTw7QO3-PA4ݩIUҒ2ʫ|9dd^R,]!r23Wԍc(bݯ@B*̉ES/t nPuyelD*XuQD`^9 pZr~JגI3X(j\9} &k|Hp%m[ӄf%FA,ZI3x43M1PcI+opArL0 V_ ScJOj[쨱ҍ!л 5+WC=%F4QuQ;KR5P"̚L8khষ\MNBP; ~HxKLIֵN'֬).9} IXU0N? d7i_^^1lJn֫'ڮN@j7=;+Yx' ʇ) A~?qػOdo RhחMrRr~=m=q6L7PitE؎-C(~6 ;+ԁg)q䧾~M$LztC6//-ƮAMW@wgCxoQ^\h2W4}X>dq L!G9,/чCAt1)EU &Auf5BLEνLȕ)pxfʮ9w1S:ˡ~9 pà.- F'7J9;h LEZNA '^@&3DZ"V,-o*LU}=BػOˤ-덥+mFY;E~ Zhh?u 1i!?^d[<S -=#F#xI֤VFn~};zqh:Q|<Gu مB^\] 0jz6W[F!-g7Y]4D)ݴG5/Ey3n5wX JbPd -$^\qbBv{E3[PP&*%*#n>>)g.{vR4᪂p0DJC]''eGPl+` IcFP. v;# |qx3o]/0CmH BKբ!WqڼcHFLbj Yf> H&&C=W5.%Pb^aԨn1xꏕu~N0_f6Qʃ -EJ |鼯WjV]mDSPDq8< ` k8!TÇKkYG\g0cNiuG)3!HllTnep;s[V7e,ƦlׄUf5* Ug8_%%[rHŅe;tBHM|e$[x&VQS@u`Xdw3g713:fWt5t`0VTsx]Y;U"s]Y^vBr"䆲3fNgW.6/O{,RWTd‰r[V/ʃ(%fg؅ώsY?}=WE& o Wyɚt/5vԒ^BEw0AZB?\ tWWRWqZ礘1{UzyC>bްyyɀZJƮ=Ͻ Adi[&mKJ0)%eg4K=''qKr "Ľ?ME:cbۑ3T }q!mhs6E°gPIxQbgyCtZ|e]fAMeNdtkyw,cL=E.97VbtJbתF!Đ0ׯEM7{k͊F}UDSBGJ`dk=eDm $ I Ԑ^ۺ!{ހaE _%k,A^oӚ@T^N2ʪ'`Wֈr) @/ rږMF!@uNṪ\ O|*yٻk+JƄGU&,d-h'[nY懲S@!s7!j)1Df[#>Gđl`8M FO93SLrl0 52Sؾ1{q|7(W\`:h fƾ {mַ{z{+f0}I!'{;do?;T'(њlk@K7A*n 71/9m?Lio| G*Yi9]eo+AWgMaę;fp$əa5Y AlX/S Cy?ћʝ8 c]%f]qٜʠL%bKlug 3t 0 tE%Q2E r΀3V.5h), i*INj.ThW1earUB xzJ˨-iE D!(|dlzpn Q1<XGMv(* , KpёYJqdB/0 V!_S ˒PۥwWz _$dX'nBοx&n_(Gc'0)C Hb,57n6 m|R3Eexv-K50r^O W!##,O,7=bS h`cd_y|M|> :?o fARF?i~)&&hSX4KRs_(LK(jc*_aۑۆCApqZ`HTE, )E*FX;!è!_lYWJh/K| G:UxYod-h輚(VT$= -.By qʜaoGXƋT! +Я4~OH?0NL3"#Azn3͞쉱 ,r_\߰ufrvE@~Qm 3Ag$%I}f6w:MW(؍cy b{fH4htZw,) w"J6CEs8Mҕ#CIbve8j&ŭˆZD-Phش4\tB!e%Y?RWkvf(\b(OXoPjLVZ4י揥0&@-(1 }?X9[r,~>?J(U/|OGKgK=!G87W MV[HN\nu~Cm߻<24{t-wX*I:̨kPzjI\ؘ۬m*@ؾkk(PO&2*~)TN΀{cR\q'Q|uh h[Q? 趺CQKƒr ĸ/RPQoϒ&hR̜`ӲF޳ʥ;J~f7DgEn/RpA/= OKD1V8>I$[b-܆}5Jֻ鉙+@H|^LZS3kP]oļh 66n$#lƿ6r`l.݉|2CIbhGu#G VJda'8&" TT(l%z1`h>O".[Mw*˯5w'Վl/J]%uH`'fD+;;O$eo<{ywDZoP(.?M5Ү"q7r]t4McYu0&/ ґ S 6!%^D뵪l&_פkO`WcBR ef/c<3V'Ll9UqI=L}k/*o=A$xҮRt!UHN` T ATM^N ėYt=ΦAW`LMz30 ^}@>^7yz`KclߵUI+*l&gЊ7^Z$])>H <>\\8xN$̘oC:N;~V$ g(j7mm Ҭ@++W,1Œ߰ϠKzܪ;F$Lϵ5t\]"XoƔ5PHSE5ӓUmOfDT4_﨤7sIad (a=aP {jR{6t.U6 ;D2˻"Ls`BA%o1ާBSvŦzk o|,7P`3 Yʩ)_\\B[]^o;=qXPl27 kґu1ڝpaq`4'4k#+A/,M+r5T[i1,b3ׂ$FMPkId)`>ڑЩrˬ4@_< [Į N_w6&<GkoQ@zm6NYead6R^ft YzQYoUAճɒ+|!izʙzԌYf9ahWIN{w1мWٔt9ewZyYCSE(.UD}~t%j d]\ `p+~nA{~+s #bo<P1 rF`*_K!"ӄ?О[ZHv ;3 o:I'km*1kdq[q-Kӏh/ 5?G9%N3iT+,b.0-U~+X5ׄ!rG hQq,Ie΢1P IV-`^ #69~9w2ۮ}a&DY5SZDH ֺCTm̜LYf!_; =g_9i qcV@cӢ11"O۔k  آg*[T'kVs(I~.Aw _ 82⼯r>Z;PZqI MG ҇H/`ыˤb%Y?p܀I͍ÿpc\Ƃ)5wŵIӧ"^xJ!OZݫYIs 4NV{nזߕq'8BIm,¨lq]$Bd %.r}pm *۩?8ewF=Y(g ,)+bo^DitY~G0rw7^?؅%smק_jru|cF)!8븳4r)s@^pvg7dq`# |Lyऽ,'hpd*V!:߶i7.Qlc +sUJKX6 c'> (S5(Bk@$}%z;u/˂IX F+\Be\߆?V+uvlnϦsC6!^7ĝ#QN]ip0h) ݻ\^Fj}D .Xv#Bɑ~ ֜F_m v_:_P0h\}s6GE+iwKR1oeklٴ:J(Ӹ8AE;K"f 5yJ ?Ťpn~d.9HSr[%GԓN /*>tWRcw&N_,9ߋ1=CpM]|VD9Qn_O9}Z r*%]MYZBUN%x\.KoH#1fc:^;VxY ؃84jJ~X7L&F-;qM&2^t-mՙl" y|x K,!Ļ­E򕙯@ǥ=q<'GβMh;$fzM|%*|m yׁT9ûŝ0} P)tn㵪0X̜ht0}7OW KmO67[8d[]w429s(~~$i75BOџg`FݔW# ғj)/JBn>Sjf}- ^z?q:R*P2D.}n--'r}"\+svrjR:MLfBcQ{+fk$ro ȤDM7'T9}VL3{PCń`o2*ųK) E6Lxtσ.&rCׅh^F@mL;PKh]&%Fг%0%0cֲ|D(ݴTaN%7fPR636n=ll4#99ۚdo:\?"vow2Γ[ٜq:֜^^A|RC4iVtɯ E\DʽaB˾#t4$-=/[4DuxN*:=.|N~^ au @Aဥ녩h3<Ǩ8|4mȗfYl`_8]<O2BL{$qׇ26=2 Ŝ=&W¨L> ?T[nZ}օ _y84RkzTY҄JBMΧƊQM,HTM%GB8C[%%K&>UKxo#2.,4o#{2^F}'C+)(}GTF)}EoT4Gxu¼oxnۏa[!Ӄ}ґ_w%z'P- + R@NlNj9I?`.u|3+66HOz-Ym{K)eRȊ,"XY0Ft&T.qoW1~ceyT^m7F:(5U;ekBYF3GiѓdzVϞ)[' 5JgW Y:@nw-^ mGv&3$#h EBO/VHK^Kh$}y 0x+}BVF{"岜&M_2XIФ h4VV;EOļV&Fg r.B E/E>83قL&q~v@4J(/n&tֵ(g&,0q@if$Gcq>al2AQ싹cZ xu$Ie.qQ; t.V<6D2CV,w%Ad$[ {!P1+-Pm3r[çYAq0MV?_Ģ3|iԄ5ſr˙ qT-E~Jk\+Mn{9 RZ* x!òPsC1:Y~RBwajǬr-3d[lr˰؁i9Y ?iLwB\jOE`túi5?g-kǺ&){:ky\[W~/SUi"*0Yfr5N#)qg,lvpu6{(i{;<+"vq ,I2:R MtʓTpfؖ0ݥ.ú-fU=^;zE 飚|RVV[$ԮW*E±'nH0pkC(|s.hzd 6R.)[&{ϧs4!iIHS88KP?NVh=YHD}$_HI LBtas/9̟2MLQQGqP)l<(}+No4ᣕ[xDt\|,=12קVdOy7mvD[&Fi=ӝ5XQv U*/C>A#al5h9j3/2o U@bٜ\ez%IRYo ! e%X:}|InD jcy*z?+[wbK_mW5Wՙ5(L E.n>0] pdmn̻=qG|Ң}kP`މU|a%שYRTΛ7k:$OE w ȨS)~9ych99W֧/nd3O5ģHL)}= @oE}2@S׻sF,OAz ~"(aZΑKbPKDvoT[<&$fԛw՞ӛ2Y";IN?ch}prendWhqNVN!r~zB'j<P|!ĪJzCoDIIHNQAuꮧ<H9q 3PxK(7sJ37g-{EJ'n۾/0E Ƈ4 KǀtˣC}K5Hx oI >h$~}~!(BF5s쀻)3⻣֢NdA_`V[_4هoݾI*l]7#8IܿB; 2։&rYP!o5q>ҭ}MҚZ9D )Y{QU m~CƧ+ꪃh#D B\OfeT}o, 2"ŽW=RIۍï 7q*2ث~q͹t8ϗ'G82fc8ݳ-E ]&;? g+?|.7#oeOɨ $VCiYFWkMSk-J~eٱx&Ox\0s`E eٲPÖϙ@l>=$iݗi>* ۞$ZRp x/gۓ0a.8[L{"}Hf0!?[4d2L5cflm4Mc}Dn6bm]6OH9F cY4hs떀OЩĨWh$ڒXYJȡgkAkqލ\hf̊b,3 w%j my$~r$hWI穩MǛ1`z'񔬑'\uBsulDˌήxrW `ˇbk83Xo1%[eB0/iֻiWhwU4؅Jo9Ҁeh5],5e՘ <ퟱQWHNdɄ/&>>d^u` MSfwѪKj[cXL,ֵ&|{M`h~.;l$ Ww C5{ht_ h jwyb(:lvLOѓuXe%ݮ|}ҳ3WvDer@_#攮pg€TI}m^ VO+~E+F3hxG&eZ$;&2ܙa8J05d4 ݰn{4sp)ܾy\WP4m/Zu4BmגlPucR:B [hNPLV^8h|Y sAMs ˑz+ tAF!h|]n#ʱ-U#z~HB1 u, , ,=Ңo; dv%DnZYhcv欌X]uA"\w3^*)3)EZà9~>Lk }E8f[cV@"nI!QIMN*daO=UZiZ؝sՌ1O |0 "wRH#%lY3GiwU a?t[#ly<ё@%^SVa,*j}d|}̽gWV^"?*s 6]ŴB9'̵ژw}g;Q$mҽts:Bad: k>&=+նpWJKe2&]K k}3xtc«& i9tg ɬ7 hoZW)8JۿBI!`̢:>j 8bfK&PCAFuL}@.v$n8X7OBƃڍJ}Eɾ<0 |GQ1zA5+6 > @SHan*:nF'B?oG!mPS]#['b\)7}e0J6fhe@,J݃*@TagmxV@,wCD ƺTv`ٿ𡾘J&H'ngd^DvAnلpaj?Ft B'bR<#޽XAt;[ C^cT]"_m-)@e9W,3jי_ju5w.ugc8X&<rRՓȌ5ꪐc#}MŹ>y> "uQoLy)3&3A/ET%ۿ=~01^QFt r"CQ]OKn&D  BJp0}7XSo޲bu&12ӛo&絔-#EX k5 ~67md<՗&sYC&tiaPS/Y~/0H"X)JRYޢ~Y@4{@Ox DM >wÊbWŒ/tl3'O쌞wROhħW$V qV95Bр=]lzvc)2po.u75I OCSH-kݟu`/q+hөHL/љILvT(i/d(V"n/5 ZZy9\ R ړlIZn8gv^rup/P,"v9FLl$Ъ bR1F'C&|MF(p.)32Fd d%i|tj.ДqI4K\ @]+uLC \E|L'!y-ܥ@odӋYȚ)+:lANGW"Ġe=ݴ/.O?m3>bw납b+tkx-4MM9&^ h SY%ZHAb( :ǝV{A>,sR`$A&Ag7n>!_Qw彻"$zpQ2_-T?lbue=ZRF_޲->=o :}EȻH$8LWT#uX@+= daOPtH&L PfطLns8pNlOp(l)”4hs u"b"x' eKY'^y&x7I _堠Q;LtïKZe6}1u)߾xӦ!S>DR5$k\XtW,=*L6]>ÈoS4J&~&e[|Cb0n_:qؙQPW0m^{^)cVIy">0ҥD#Ϭ 6 ˾SKk)Wp=2idgO*mT\](S9J.Uazk0Ԝ(!*Ւh>|7!S[zȇ$hX3 fa]-Ј̻Q'ѻL˗mo0xlP NcI Tӟ$ۨIDVB\@WL%ݎEIn08#2M49 y!-qGE/ UFKֱ4YOܯrl,aP}\i2:B<4]<&yLpr3sr~WNJZy~V7䝷^3Ēx,yT#i94خ>&&+,CՉ@q n`Orx"QNzQt蹁C1``UQ9HT-{8Zň8Ap2)q=z[Zhnsoټ[|)"+1<_ci!j쿦GCmp |o3JF7D*D203@-9 q6|05fJ?ɓJwnb_D,<vx(tе f\q>"2ЬR(IbtҺO/[tz(0[ZIפ V€ƙkA/;֫h묙s{cY[0:Q &fw1^&Nb7k;4h<ݚbu5C :{D}7y+ɾ1rvyJ+m 5'v0aE&Pbo0D0]y1.Tٴnzp;L?}7){-3٦b6zA+?ϰQ|*-Ԫb.b+3# J9E vAߵ/uTfv* #Y+e[V9 Z@srd D ~"m|ʽf*т^`8 $'9|}Vc 4_ݔ'I)-,+яgKog+VK1 ڣm5o-;-BOߎ8+K +1!,}*Bh>"v*=>X D}${/\+( rPF\hD>PFYx&b2$][3&f<|SlƲv\i3. D88"G9fxenřhws )g|*Qpa $llgCu7Rv@k<] yFa)O'96 uJ4=!36R! Q+H-#7>G6 JlR@xGsΆ4^BGkH]Vm?|"F~QVW{YxWQ9$XGf,O*ḛSQX%|Z6>7{k^IXw,X ٍEвzձ98 v>U1&:x38-N#=TZ>Nw$+MDpUa 5 ȃOL=8pgyyRVNĜ8>e]Qڵ_ 2Z@b2}]̫yOzαeDizKd民_-p8#Aގ֑*VM* xf^J7ѥF*+d;&F~.a;+طڄ{&@ b4A$:!"j:u,pJJ]/l[h?Bʻf왱oa|l,#axbK}v"فk&Q'(B-O!{"6 ﵁ӗUv2 w9W 6]@hG1 4`ߘ.<*z\^3h`\GlS D }8;FHݲQDH< >:nt.NS _NjtH_1pi{"d _GjkY:wX.J4x*kCZrZBOC_.HJ;#﫸}/nqD#&B{!씉t-#,W7pz&Mv:?L'Hyyg{S(';-gMKj+A%z[K sV{S.Q9نrb}1rGC*DRB . ̖)UV4pA[Kr<3gD-aĶ"YiqAV^ׄtC)5=-Bŷ$Bko_CWԑBVakɥj񉐹C+U$p RkESdd.g$x1/j4H6y{tgcmΪp2jLz43R0gn~VT&K|O߯WJ+ %IH:X' bVv|(e35ŀ8xܐ otT/{g[;bPf81^=g&*347m.u#w\9/<8W q?8nTUͅ/p!p{Iߢrx&Ni/xRHWҚEJ~z=.v}Mk~)D(Y /l3ʿ O܆ۍ .tqTEp.tK!c^Qxx v sS# vY7w+8)ڑ 1Y(`{)bxL>A&+.&`Ʋ4=d4!1t>1j^RyCQ6urx`+Ƕ/tO= +p0[./Lߧ=6QzH5Fm,0mtg %BNDm\4伴 )^y.)#9*hO>ﳛtQߎA+'c!YAnB{~ NP,=ob}0[(jQ~$(LJfTD;<0ʥrj gAopACAS},,y="`K!iw}QB}>n z1傋45FkCܘbNd9tDݧN-M!'_1pȧi:JG9URn[UtZ6#xF9,(X[A}Lu̼Em֤b@C%$[5ZOo(]]Z\7u#0d=r:6qrMIb`_UޒN"BU9Ia7/MJA%Esp^0q]n ¢[z2OYȯ;6O)7/IY+y,"PʹdzY jP?љhTbQKX}$?+]Hǩ?Lh{X~VEf\&}e|N$XUdU٣\}۱|wnE{X[A+&5 g+VGNA;ȮIw4?-?O$ VOAү6&kAk;6)5N>f0*`?Ŗ ) 7MС(V <ݞGTAoF8҃`O}iBMFB'nf43j8sNV~z?rJ ͥF ,d B3wE"6~6w>$}`v"+]'k罯]njBACjlDn'y_ߨOO wgdܯ`_ǐ+vʋʭF"y ]|P^}|Oe$WMj*'W+},ytI7T̐3_pO!5-xb`Zg}k[TS1$I^\0y =R؛F[wkVXS2!8hWƙ2ޜ8 CT_iAmFLvv-:-H _""Ws:GRRg(nk+XG% yjJ4Ĉ@VxE*xNǖ_w}h>tOTG`,syQ9j(ߕ5yj$.>d]A*{ |"7DOQ+ji=cR;{<}sb!.?s!o,"F?8*h` Jq",qЯO?s@VeYodgcz3I>- TF;m`l>+pZjG1䕉\~4=W3/MNߢc\k+Lݼ4_T]G4 ~ bcN:Bv$7aM4D|8ʌr8KMT4R]˂A?!^"Ah1{V\qKE YՃ&[v;SyXlJs\qma"-ߖ a1woXX9 $<ʫᱝיO 8`Xs7[j^5LOLF.H~jϥ ,)T XR(kܟ렩-3ᲥhsJG+i|'tJ .SbtاCJwӂҁ~+[3U* ܴ![pUyڣ_ƤIwݏ^G]hAˎ*n6u mHz+ S$ jaϐ TN&O6W(mt9 9'! d;Nd 1?RsMFbl+EM&˧du)YR>2|J4Ѵ^85owua7axz;礼UgP3z2URgD{9X)Nfpiz7&?C[#z\|"Aӣ'y00J$epdzQvB1EK:cg4 ^Ul{%2 4`2hj><,ʘh#î2uvN!1u,W >O|QڍAV!uT;?`2g&@WJ+bi|QuUjϔQ*Fǘ{ߣ]*e6U0ٟ֭j5Vcr *_3{ʁ^3e'ɒʉqLl.MC{YƠ͈iN^W׸FVV$VIu3ˈ1 dwT;1Hjv hQD?Dd;"}1%Era5Bػl{r`'$/{ξYxn%T^Yg6w!!w-E _ʷw/Yk,L$׮JJ)WnG2i'mI6X2萭Ta j؊+oA\GGy)A5c!`aV7FjA<X v/[%V:O)'.K ~&ö ^ᧂ4Cb6Lkj Q4wYIï].brc!]vQΐ╿B(~ԮXT5[y.)_gh6 fMY3]:~1g$RGdD, o̿HZ^@>:4@ji׸ΰ!gtg`u E7-#]43(:9>vF4/UG QV!Ar1oQMKLQkZ@FЄ#CM:!X+.sSfQσژl2TO1=Y9f5E J֋p`sVfm^7q(Sp]Q(Zz$XE€3osu|l=NmjcG:5Q6IFu=jRL#i;h>4-fJ%47 LrBtSOR_a Pzxv*"J|X$+ BTR5܌XʕrӺ| .W c'~Nd}{0u}ahN0;aP-Ao TLfYsurk 2/Lup,6o^gc#դH0f6A)"‚T w=iqV_@n7]5E#ULʒ ~QU8'1^:5y%+Mq3դჅK`ڬķ/_ U0Nj2 ki>bRH .l`7Q6R;MHIo=Q&{3kM][~DXŌ[.{*)]㚣sj9f -lٹA3$Ed>擖tR)MQzy}3ΎdtD'X(Dzپs5!GarmTgqGPI,>C6M*Mu6 g2Ua8KzvmcYivq8/E6mqrʷ )GNFqx$tSn Zc{5Xne5es4֤ OrzOWl"Cۧ\dEtƍ,US:`)bGc u䘥"巾h *+Lh T/JQׁM7xnQ[nO*+ܵ#q: 0KLacA˭Kz4C *؆F0U ._Nrp=vYe? 򍠇{"mj<,.8ԷvrCk Z&<=`Q8%?BJ7BŴ[{/HNt/U#5/b7P8L'Ə.[+m;LHg!"?dJA,k[qw!OfJ6HA߈ǂC;\&*LZƿQu %_'-f(AR:5*˦;b y{RI0ң^9ޠЬX^" D UXIc`SR-oV]o1 )6{h[GM@AUZ = ҢO&W׮p]WRtex4iΡ=KJyk*ֻ\4}LHQU~76A ?g~_v:|Q-V#IC5 ЍE.<^ˬ-{)*ç݃M<78G+>sȃo#_S|eݾCu#jɍFӰdU)&GOƧ q!7 T芧7@Dպw*t@įׁ1;Np)5BcC![@Y׵˵Jjcyec)֯tY(R뉇KOG :c"9e8:ΆRHi+27jnFMщ9o\?]XQVP<t{Kro&礮+qσ[.܌ 3 q`.GGOpo gqX ko5^#acT`WRP! 2!$F"%j,WEZXwCŠGF(y>{vDrB3p5muJ7jA-_3<>8ZOt! &{ r),퓼^b]ژGALIt"==x8ET%@H& HLᧃFk:)\1P  O5/L{ap +뱫.m䈨7~۸N$%SՉl" HTPzF İQD;zUlll1}RqH[.p >.=?VLLD q=q]d ޔGYjZ[ib`./_"2QS`CSQ |ɂny54k4Kk"O8EOjbqnf;Sx$a?19֥{ɂ뚎&Jo^XȻ lU#]IꔊGwĕxM֭e@BX<|ƯU]j-hKDERVr5MGߥ1gAo4 3 IUW)Lx 嵢腵w88햪m{|y矺s34}>4Bx˭o +5H)4J_-inm9mND^(7uIɤpX44ZCn,qkQŪj:U7TߵP~w-tSDiQiV*;9Zވ==`Nj8~^Ã6ݫXh33*i2L%_[ugYwl GEX)+cZT)zlok^ qqQXٻ >xiz*WN5% H(y8w܆.CЍad]A/(3{|]IYgt8ad!y1#ZPƸC}'(_ax$H|X0CD:ܞ.r%{ZHWg)j% @nI# &)4"ҊVTC鏥 o]Ke$\}~ۄmM5iyd śq9󲉏j@@BCq]UV"56ZʼnWjaeRsr{ŸYQT$%mey(db{Q~=E 6V<>cxwco-j_uL+Sbin^'D ҏ,gWӶiA@6LrN`~MDjm|,SS|Z:qsd$)e p =x&m>Qޢ<)E i?:4zayҚ!l٘\.kJ{P='wQ7 B¶!?O &')Eܯ{r!"(l勱=,bL sc( [њg >Lt^3k 4Dwb%G7jˍkD4$yS(u܀O,%hw(dQ,&!kifjhwJEs+[1qK]oC|L1>u;dWSΐ鞈\OsVrD?4imʫ?jCG8U_y k skbDIڃR&Da> iYi"͊ Iur XZ2c>1PqZz/0%lC&o%3ipRt_bhꮦ~hZ7z P7a _{nF9[2Ŧ ȑD[ψ+@%I6Wh8v?O 8bk~WW#iPF`~SMF-@tKl@KBr2Q JNaЄu# ޭ} ?ȗs Ijס| 6A0Yٓ1qg(܃ф x&҉qsH|c>{2pwMK:S6er`'#PMS  {TXEv(Ub,|Z-;:{Ιtm/-gC??X60)?$J6Vƹ8bXiHfUBeTj]<})x xGۯzw{VU{vퟵؑn^&ؔM#5kdD/=}3=!- ~S5HOᐙ)¯JPyI 5$;k#n'&Mq/J] #/!<t*IYn(J+0^~*D ֻ/uQnCDD i֙k5h׺]Ӭƀ'N>'Unhu0Rv ɓ=V~8V5et46K&mLyh8X=KeQP[)ςlĆWf@6=_n#; ȏX&;N \[ u4]IoooZꦵ1V\H'#9EޠlD, rh#~ y%|E<(b h 6VYi323qydo˧mkYiy Ud:Ԏu쥲CX%vECخvoy |DDzh_3^ywJi w)%WqRp=[MjM)OalWSzx9֕BEƥ}%UC^n; P&p/^TCS Evyus^/̍Ӝ׉8ȳDNtW_'BuWVϳķU#O"NhEƓkw*~ ]GCH]lڍ#Bj |O0M"SJ̪_LHo*Φcl;3m5(:J(řCZ%L)s}jcPfe+2ݟ[##S^"kjQZt Fvɝd>xo9E ʈlwE_+a̽Զ  ›Kʑaz5džF׏EAoEtob٨YCt]ѷL?] [ju>aRt]5yAI|<Fp)TLd]3%)e͕8mWJfOG<+cA}q^$⇟8ѻU[UgQ\+ʲ VӧhZ?l|iH]^X _r`*jDxmƣ |ؽZ]w`'N]C;1Dqiwe=LwMe#z]s"':?-!4?ӡa$@f[%ҫ';_kYȄ'@)Y3uR Qq;qh^?uBKϰη]۴e0KYr=Y&cK|;}X-sXok*j ,Zk4c)p{$ً2LElKO)a+xrA'J[oG}M3ydDǚ_5JԭŸnO` zhFJĢUiw}j: {CDɄT[< ~K`d$).¨VwR>%!^*Îp > #ztʪ]X|+KgOeArLS|̶֌$EԥQ=wΰ[װVzog'Ղ֊? L3ep5} *L Խ0mXaz(TڴVPt>4>Λc ^~Swᄲ= Z2Ik;m,uB+&rDƈ1}U)1p)zg Ǩ}\Ĝwfjy.7m[Z(+>sMWWl=y4 އXY>r/%O:fʝvЉ { TS^h;t85PZ Kpv9ks7Y5;pK2|Ri~ oc̓&/UɄwTs *4A>HPz!QM[ 0fGZvyW qD[(ՠMKK,N獠[Bjم9=˨ ‍C8LO{:X",'\x2!憎F63U9!_K]q<@1TM"&^:Rl=AWZr*]0JA>1^p&ۨ3Y^Dԡ%AzIWjP kO@i6S[YlLwmq8Ȓ%Zid!0&"9ؿ#;?ɻ2sYqrFg7'C0wDd tDcj=๕R}u*jxA0i ]YA>6}cpwM;Ǝh֡/u,0ikaSJOĿGİ@ޙJ\ODZdshDig%.?$Z*l@r"@>C 8top*!hkxfekmDc:???f[H]ՙC]kO8,$gRJՉ+^UzNi=D[^$;p//eo5i@9<{ߡU6)Vg e^e}Z xdC m,/ȣPظdo\h d6*=?s #=5Lg\p /"U)OT; k.S:jS}K79R]Jκya"Hfά+IVD:[:SaHB3SzNyƦ߼v͡wF." Atr&P9wpBy}a:rQVCZ*g# G~b;KZp:j9-F$$V?o ?[u(rvhwɲa+EYV?b ~1r@8jT{~ &p[҅k(r)$I Ҵo4?{/aW\($}ql$*_TLoғ@R[|HG:YGO6o5T:7afo> 2=(N /Ypdp(xE(E ;#xqgs):n֟`Trba5hSlk+4B)`]61حy8sDQȤ}:29}x\ܜᇸ]'%5멖 V}ǫdB.'LM )F: t GcK[GDWv$.wp̴͛;A\: VfRUd|fЇK$Jxcf5Βm ]&Ξ,IEzHhg0Nƿp7*xsp$'h@,:nUYu2{ߕ@e .2  ]Q;zDK5`&pM9TM#Ɵ ʟ ƃ`+!U#gɞ"aU([$aP ({tUSa0_;.i'Ѩkcrl(e}l1dR*e;ˡU[/df{|2Vb3Z%, %|ZZJ믛 n@MSC_s#Z6W{5 :+p0tߝk, J; ,Ny""jL& hu+(G]naMXUc\̼ չ"wñveQ(=y?@0oh  M 6{F%sɞSzOC٘JI񅙐[RVWoѶ!zbt(V'#tQZdW 3^c<<\pEUXg@ڰ<LZ̿91cH_ELO$c7PI0TVsN@4\ MqlC\%]nTX h-}a hX$A j4)<=Ko`(/[Eq@+s~`슔} 2!hq(xm3lI~+@Zib*-k IkG^ aYBJ$OI|Ĺlin%aʠ/70_bC`1= 'I%,uԳ;pG΋kon8]QTy/MD‹^IuQ%P_N`ZQ}+}ͅS3ϰvtWu2`oHʊջ P$Ԉ~`GL:A'b럞Q45"=\R0V9Uᷨ<-I@FVk[yM[醕Lb"4erBN@"ZthCM9;չ+(30>h%-ez#ѯޑRRo '+N0uK T-~z;ukW`5QȮɌx9ʼ ò!W fxgbVS;4h/ԃ@sLV'%(`Q+F<r֬0*bȔh@mE4VLA:4F'͙Ĥs; ,@`2v/캯Nڨa9~-I^ ^z(FX7[W; >RW Cf6:L,W݁؜h,ٕGSiݨv}psHm1rLO[J̋ѼgtuXp 9ہ 10 *(l n߳[,m? WUvqoץ)ꎤ]!|?[As7Ʌ,m|Ye7lg̩ܟU&_Oȳǩt  =JxP~W_;7= i7!7^R0aGN Kx LHvLScӺJ~|ˎMh4fcM |-:55@4-LW֊sK7|AۼBZuZs}ϔz=Xe߾%#2NFؐ'FW/h7*t!Eo @טo8G.*Q$wN͵j;|}tt@T"Xv}4֌Pcx ;Yre옰Ci9yIs#X^{GKAמ@5"'>•Nz h`{h1h|:K` 0|@4Evl&"ljDqkp̻%]x$Ube~ e֖ Ka|BicݠK]- +L4 PoXB)8ivNch#dUPp@>1jWH_ ?gၣG-vW_e3׸tdKх Q51k{R|NkpphkVȄȉ hl)R;n7en.m:493Ɵ\zVeCbIj=gzB􋍣"jҙ;(WΦ>d`ںY*<*Hik1>wN9G&H9 S+KG"r< Rl4Q `FM) t#S?yCc ޕ`p&([$8nr ~TK ax2J['['1 4,ͶP3"+ǵ8:]y^5CT6!9eٱrYκC+ZX1vgmv^PG BKtCG{곻q~{Rg K=chCFWbD3w*bPu-x?a"GFBG.{+Drfƞ% u†Xb;ΠG~`@#%Fq-$?}bk\rKlN۪GULˢOQ`][;gEs Oטp.h8N3.@vw 煫)0""mv4C0}MXQ YPo=oqJE_tXG.z5N{`WoNR[W_6g0йQICM~ngYڨ (;K]YK/J v˦')Y>ǁKC4?zc\@K!X= K-kV҆:*GY]ß+x;mQ`l?#_8e >`e/:/%QE^]  *A( ~ sa762Tq&ƝY sgcM&c~7ɭ*rp,uWP1(|mŪ[ٻwE))uExcu7עrE穮O<ɅDLȕw7ϩLMrD2'x,`陃ÙԑoJ1L`0,gwux竅 I!PVde[itb4w9g-z䏐џ7#yk_l2xy ,Bݼvvޞ'8l}TeC9SIh3%tbڮQ>Q$tZ u'Y.[ +f \ۑlI.3na~ {Q^mk$iRxb$ЍC>yZ/~# bK'Z:JUar)@7Ă.YЌGabjNa-ug%?1F'oN H T[6mΏ6,%1:?Rx9ẃ0Dԩ-Wla;|qrmm-D\,;eFFYՈS##;;MvSM[;G(u7+8xh lܸ#șlnFbvlm!XcMI{{e"b=݌Whvcp(֩rnVt$J̢=J纵&W^8Uڹ=ӲК[Sc%Ց< E9_ ;;ԝjxCji"<^7yp8evB%}k{-p&?>Xd۰K1cgk׽@3KAQ{WbU9Gu ]+Zy2q s.НܧUG&&q/H^do]3/.g$ ?e7Q~\am{nQIr!1`kٷIt,wME:oTĝuBV 蔅t}TMO|NN!xINb'mCA . ͧc>WK@ht[f,J,='z !;Gv}"шXpLzopdRӻb?•,_su/dBя^ǯ5S%! S3>;"H~gy_]Ul yZ7HTڒf^hi~4gzUIփگݘ-Gz֧;\0\bTOB-%Pҟӧ@76V 2T&?e.QXJ=d) {t&|Lv HD|V?'D-ŕ):q޺%3U~Q侊cH6_gKx` hk`H)D贶WNhRzJB‹%q;m hPh@͑i}|Uk^am@]s93.gi_;6tvZ%ߔA0 0#O|Y֏ pL B h3cHTa$R]X,t/505 ]uvHH=[A#xiDKHV?<-j8Wa #C: ^fHM~?X){pj}haAe'%qz9u\/\R.,!jsRf~ЖIu=U աněGBVz? 5U<ꜨDtFs&>&̇)na5B Rسƅ#Fy*ձ7<",;8 *|NpU3WO/-0bƌYd]>UO_Xc@+OsQ'x7dh6pO4^QM͈\|)4EށrO~ 0*>ͱO\W&^⼦>RmнD Qd݂"]z]CSgTD5Oa=d k֔{{:kQ+DS^{ Y/gNu]e1ta.2 6?:+0sw^ߨ 0rMKX5/Q[#\4>۲@XEC[{d[ ]avw5 ƱۋҩZbd?D0{p{(Ø< ~2:d$mTL|0pս`pQ>s׮|HOK3QIІ{AGZXlbהϮF9 IيXʤW_F:z!RiKciFҥY2+ djSK{ps1:s>E_}g գL=Dtf * džM3ܲ~GS,CC68սbݚ^j:ٺoq* lM#អaF#P2p {B)JJ# ![8 sVK6*F|Ɲ1s6rߔ|iٷ <&֎q3yLqƂ^K=ncR-_Jڪ+iQd4B |n;3Y,n% OVx$yfW{5&{fg<-GH$N0bqk/2T6[J^#kEP oScENFOHI\0R #z'WCĺQIgϯUM71Xyue 45G?Z ƝCuAgCmCC3>8?$>g 7-OO2JBslJu|-`: yVotTmEz8ɵ49Q!i< R׉f7Ƭa>P`t$!TaSQYP+(ßdDC^n]ő8uB>V(࿏ ^y!GTQ0ȄPPҭM:u趐؀5駧6IPޭ<4, ^U9"hmvC0r -{^x$[1%Zfi\bM \wW9;%a>d֬>;۝uj!$>uPaKa Rdb&EgDkVO&N]RX. |05۷4C8: 7@.D=b9)lof;O) Lx3d3RWw ƚı)vcʩuKOߡ1\w@?tI:]8.1g\6ӴIYZdOy*|1 v~-Mr-VՊx .b^,d,,!D eʂ {XxRZ$k5,΅9%TeHর9֠ҧûOvB)n=Ifnbkg. q Xԡ9OerGeU|ƒCR-bs}8D6x\7DM=J5)bi]^l: Bc5>}/*(^f#_-ֵ]B}~\72~ça6x_m:>+FIjwL'ƃ3[d0 iE zS QE FH7vqӗPf'Yʒ(dxe+5ϫ1>2Qa ej ҋ+d7?)mr?|'6mQi X _9i L:i+Srjc$)Hcި"$\unu'ʑ͈f4fNk}ؓΝv%6YpM@ҭf4]j1ê{r]-fIZ<QK: 3@'M@!#01`ndqfP.U6"L< AfB^ G-xSӠҴ`U 0p%|z˫bV-mͦQeȇX%]ZI6}Iψm #IE.55otF8,O67p3WOjdڡO4Pxq6(bX'D[FM q`'-ᩅL`[zwU>:OH ~6Đs"A:-)0 셓aWe4-BƵ8lӴ3gG8{5?Fd_P΋\TK;,py7S)#k;Pų iN0مůqPxٓ ,a-ʹu|엵.|q-C6;9H99_ ijh >*1}e<+3i0F!0Y?|͂0Ki|1lJ2nB r ۠"u[ٔ@V[B":qs8q HaB:CeXy6}ޭW@#s fEfFE$$C:3; Ijb`.SӹQqRi(ekoR8-D4=EKq7:5諃ԢXn(:/ZG,ITLJN2D t>7[),| %b*d>m lbn4I"3!ޝ?vHw~Kf@񛅑>F<[ -YNŋH |w 5jZՁ 9*7Jlfr),!'sMVeXt+@}3|%FQ~T>ԃ`աa SUdKA2ޯBQud3ٛ!JdiAZԛzC){IQA1u+LOwsTSh3"QUfV&h2o]vy.jcrJz@z~zj).f0A5}R4HBXa$'.XHo+٩,qCLG(![lJUV=Ҟ9e21>utSە-}M+DC`0Mn,"ts6Psv6FVpk4P7jQ㐍&Zk'EʏL z2 ۓ3ksѼD,ʒ>c&dEl?ݥ;r%u*/\qB~K%Y#cyeOK:#k +DGc"J^_ND%0 ʝQE$NlPRsnn!G\p|(^&Z6W3=[D"†; hb\]ئ-YZ(?Eb?dg~tRZɣEQAӬ3C+|fe9W):)hs_`\UI( @3wVqGXa{'|B7W_,4# FE?˦&rU BWYJ3Q\6c%~ Njf }d& ^+hq1'2Lq:c7 䣚IJm7 sD)\jtSxѕ`4(|2@["_9!gZvn=Sg^' 4iG@Mة[uSH{_ D"Rϴg_/CX ȬZ3K KD`?Ikp ݜ suKLUba u NY{ S9' w:ZXb"(C94߰7E#KU*{`BձQ7 i$HEjYhϱHm>kLd_*ܿup0 a$1j }j>[h[rWROx`%Od Mkwv-S%:D,T Ehzy3! #B]b5fʼt7G_Г{FPRZllŵgܳ$R </*Mf_v*3'ΫxVeqWA>ffv>s2G5߫*.lF~U"JލPpX#AkQu8Ur(޻X2.͵!&v\ },)$E= $ Cкq/!RgcH7loL3jL`!^u[Q>+l•YMipQ mde?E_M N ~M1&̘ 3 SIe8J47)^i)>O;TW=&Ў?ϟ7s.BxYymIc'm7.?F f%X>V_j/ӛ] -YĉQ>_Y*ǯSXYEOd/]z% tE$dYR,Eԉ:KyD D0rYE*>xATg,Ӱ'Dr9ֶ;I8Zn7~/NdNq4e3^Xfzp&eW p(T 9\u$5+\5Ž^$ ϒ4nL'0L`7Zן*y9"vڙ' ц<5 ]jeH+N1و O]+}e3Eyc׹)x3]qhj' xPfw?y_yۂE7ҙGFi߁dсдg\!.%p|:L;-J3Bo5jjTg ּqKŸpaԹj)"k")+.a@ ɞ) ۸# e2C5SW&* :Yzq骷Λx#8VbrY:&=5)>MɊ< I:8 &K?ݵÊ/w8+r;-or ևdm?*uٿGg7ZU2nmh7\J .v7jKbqq4j=.Q?y?`A%X 9w[DXG%鏞p&d?[$wcjF£Bw?>ba?G ZF4:B{%h>-H԰j\n%Wﭘ[M`Hrd҅a7fh|ph7QMICwog%QuDLSk>V:(Wap5uDA ;:zzp]Uc n;VXQPAwTjV}TV.ל H !6-u9Ӣ%@43S v)2AjTPp7'F{ߏwʐqo- v=&R?祊ɧF{Qg"LDDm"w6Z1xc[}4wVJ<]M`ՈZJlu "| )Bp0'AP}⌔BPFQ)|vjhl:W=$`!(AxC- oco'yiHfժ둙T,љJcBNj_;=YnU.M\?V3fl. r@˖,/^<6l_#} aRgA 0Ŝ-L1i| y@ 7-IEC2d\Ddا`A9J m10z>5=3y1E [pIjgf<>}I[?6qiRt>Q i?P 6nm4}a3hӸvNLpSOa|]pYhh0Џ;;58o0R>?5 91T"Ƣ pfڰj&50/Hku:MEP @:ѳIlT4iqg/20Yv20a32 L v玽vp~OE vNdZxcfj$,)] ȧڠ~@i"2sLlF;:];\z˖ G((pW8 ^M@G%3gJr<I{vL!ߋ"^2]mg ɮEj\G6p^D &[My~h2ECf3Y„o:{{L H !-qPt wRvGBwBHC Rx)ىoƛÁ:tX/󸯘b1HSQ(" Wk٭Q_X* Meun{6l72Q$5#svN"&hG5p4"͹o$4Ӿr9m\h"/ߩxuVGs3 q4^cQS졧52E-ʲ0mFB@*Q$ރ"'΄v3-2:cnrxG؁y)xks^Af kzaw`8KV?dMX*yDA#Jh\tNoZ1i`xlλT#I !/7uENI1|4D1#8kQHIy Q`1tJ7fϬ{ν䪷P)m%rG&@KN$B8;y{,Vv.P=K0sx?#s H9[ouz =ax$ K,wͯ5>r~fz(}*''Y5E6,QvњJy%8r5|$G`TϿ?ڵ`.Z[%oc Өǣ3cCKF@Ut|OT3  .=|NTO:5ƙIˮD8 y_֔e1ڤf{眆/@ c XT#>ΈwXق5ɚ}'/_.j{ӀQ[!9 tH{A 2Br/S*|wQra 3Vcy7|5}ӯM( F?G2On{-zfw,5v`67Kce`cCelaH~֮;&tD. \HGrޠ";CFi!.~,)F8:qpt|,ة )L6b]An4MעO&=1pφp'Yi܂)03:ͭmgEf5fZ=O bw鴌s%m-"\t]~ 9mih5Gz!ت)tIou:GUPq|S$.sQz[&5'_p.5m~n#Cs~N#j;A巠m6jI螵tc C/?g6mQjfi_+ate0a(UqBĕ - zI=* J%ܗuH.`yn|xϱBTJuuHS8)X̥&/jQէNHb[L;*iHXUDI+8U$SK*AZuG2%8 cpGh4X=ʽ`8*K Lu/ ~"qz]ܤ%d.z|rLY҉ Toc(z"3l=E evFfQ`V}j,L})7m:~,4u6Ҽ*]JҁREZ&X=%%JC*a><` L'GOů1|CO,ڛFYk|pd hg%awdm`Y渖i@&;p4}[BqrIBmv6*$PVa)\Ӝ1i=3JSXV[M.~3/Da!c̘'sFrRЌ`ߍ>1 B=fHЩ xd8Cm+1!m(Jy9@6Dy 1eY+˼CÍE^MS-euHW΋؃KzWfdo\Z'n5;wyZhpuhpUlymم*:.Kf{摰- yazT:?BZ)1%ˇpEޘmqexɒ^ה'yth,c9'C6m"lT8S(WR\ 9äj|(d2)yoyUvٛhO}2֒4U1;x1u?xx Yiv/zi*q}S#Lo8ZLJ硾$:Cଦ~F_c}ς㏺qޥYi,6:+]'MSRlҷ}P T(h,sQE} #emˑ2Ô3?.IdQ?5Q/q( /jY#cXt=ya ,.6~O啜s\-Ya㻞/`7>:պiay(d+ӗJzܛ؉Td@MxtAm"8SeSl-SY5Zǜ^q>P'eȫ ѓ >?aޞwFBT5wW]<:ns&]<_ ǍQί?aJoܢd=`CҾy޳Ǫt~2[|ܼ/ŽbO]/nukN GLM\}W`xtͭj TXu@%S;Gh%`1IU,Fb/5EyVULU €WtG.Ja)2~VZ*z˴7ƳH#R^K1.>JU0 a `$D\%g xqq?⑱Lf+FtQu;J6Ƞ Ux9T"vȔ}mk si0>*I y_$!Z 0,[!!l }`Na'4YT<1'p $>8kHfuQ\ | 5> P {t֤a$j>Mvm4j.YMXt=u6]?3XC,`TҲp|Vi|k1;aސمڡn߬WȔq$q3g~½Bv"cE[?dĺyWaL]BHE*!/MHKh9 Wb?{UukYf@0^8A910M4|aACs_|/"UX6u.wo KS:Vo]Jc_RkiM1r] ˖LDF/w,}xE1) V=&tR,pq !(`O1` 0gu,q^y?'"&'JPLHPFë,TEʞO<c{?kŕ*۹µ/S2%/ՑDk$2a1 f"CTR!=VrccėD$'5TE.u}fƴIWNJ0[Տd\B6D.#Sj{8c ;_#bclw+8yn< ӿrmy"]U1OWg#-4fI}2lR;0lLUvGξxR9g)IrN8\NFJ2Du3O{D7A≴E `T@9]c̵^LD(t䜃ΕpDulz~ޏp t"r4Bl).]'_U};1^x``p'3zv>-G둤NvySs[ê0#KɛnՔ)*lGTX񡰼v{cowv"ՠgBBD q- !)Zm@,T2檕W?^z_,7ۢ&:Ï/`fۮDsre"$KI޻ZBۉ"k6#CU k/ KjMkd5"@xnڄC$5v CնY `$(_5>˳G\铖6Ž}T%`bPJyk5b߰N3m@m"#퓿>d-0[_F[I>+~ԇ^nLJ|e+|A#0Q1K筀/ ܒfs:m/&/1!E8t%dPpYFx\@瞄dFM]P'(rgNBiji6&u;PV+ h<P?_pߛ:͚S$rvbӱS/.pdJ+&B7׾rw]o)lYv %1ݽաUJ~qJ8֔r]I̧a^+W**&FҁQ Eg)4Vh6G02*9I<ڍ(p?Q+ku3ߥ}pM{q,pp(.~Yw m dNmyj hHV 6(A/N-O6: 物!͐=T2_:yk51S ~cV2Ns^:&e1}CRǹrl؄]X/~z{8[y=0[Ģ"hXHxZ>4CN~mX."䪣殴6w9,k3ZT3(~({tjt܁8ѹ@nzsݱ-y|2 w' {"eu %m%a][>hmd.cU}ʠ:+UA$y6_A<' v,DIسXQM0W4{GI=܏YC86SHqMoxykq/=N]ٺ8q0Avw { _2ZO{ɤ~@";^LD ģ!z"n?1;r5fufw96Drt_NQ}Wf1:-e݆ 'X9E'3%}*QMu:"AJǕecCҊR}hJ!TbwKgU$r3mr Daqk_Mv 6w"wyT㲾A yegUgŃi{88z(x 2q7ȍrXhWT'ev|W x'6H)(2 %{/ϹFӫb6{EZр2JWY;h# fBR}p!Q&%8]7wKgoTUKͩ'|.X;sX)NTm5"<)J9w15.@r e(n״\;׵NHif'Z& 55r$)H /8h L(T#(cE ;?ǵA'0}g!^LeFѿY@Rv E5sTo75 ˀeia4`ܸ$5N.|tW 6I^3p 5iXOڟ Q5wϲeJ1pX,@.p  %#&"OeK_s#*J(@u=৲ 漯󈫥OZ7>Cn"1 i!oRqIY=툼? y 7d7&_)ތ=T}0J;O sP%l x43E嚇 zqBUc[=.Vph.Y֧L'KVi¤oWJL:F8DN >: #HL@x-=/_LiM]!tCvN{K6b+MhWBngsPTC\;å):4(K0xOkvI}< z9]6cm.Y@I1*tIh` Kna'  iNF?(mE-| nb%ZHrotF^>UZ=+M^Rf%jRyg.a^\vY؄ W`]\0Ox];; v4'LRm˸_B)I3u 'ݧWaml5)$ uOqBhQxNYA1Nuso7QtsaM/&gd)1B;ySJ=n+Ńۦi,ewa}#rxKTgRXIŷskI,JbC71ECm ?!lpz6y"b4Y֪(ZaCf$Q}D' uOkGD 5hsB7,K'h*qmV-S[u ^tXc6{HN %.7.TyClLqb3<8 k!!-T{So@䈐hN{L-M_g/RCX%yё:'y6-p-GSor!BjdJUuN3KnP'cTtBF24c"} aXxz>݇$gh[^w]A/bPMFMZn\C|?WrW֨-oo̴"TBVԍ 4SȪA[cCzH4573G>5Lf_ޘjĀk˼~br,K 7\K@N-30\AGߣ-̑YiN4Z2_}PO?|`uctsAb'6ŶPsq`@8tAd $6fᵋ;F6ܕTSԶ ]փTw4ӑ-ax.`>/v)/uNgK݈& `M-vE\RW *(Wpp-@IPru4S(Vޜ{-waU8MɤЀa:uJ_@%뻠q頾9ID`#.P9I-ٲp,Tk^>xl..5r#Mgazπa˩։R]T!}ֻkm(o\Nb:$GD*ΈZخiY3Z'qrC|z9{e|YC*pAfɐaP!sS# t3vBLt Ғ4:̖s J%/HBF4F)l:C y7ʡ⥎B$a|ߌݨ ZB3:̀Xy'hvͦ"B+1QUW^>k=zE]OF4?˦#@V'舤/X6M`o  /ڣjPj1ю CDp99w-)l5 ?;w^2h3*)pٓ][""6y0k x3ar]$ F! XyI΄ k.Rי'L;VTst%ThIK"]ՄBQz.KA]LNN,w%:l`L"nieֈrԣE(ctö϶zD޲EGk< Ș%h!g@CKBq]]O?[[ԣiqZ\]IVޣTxU\1QlVUD'sAxPJڪ3ؕb*>q!H1@魺kbSb _5q.SV첲w<,.t]]aܱ15vzP.O}U*uBP EL%QC r[ RZ|*1[ڲ%Ғ[+hdz=a%GH?>]˵DfϨ#`q<_Ȩ_!>-I'ږ}lVѨ-DgC;~pR TwQGnx3rҼ1ƥvwNC$ϔj/ƣ]x0gz-8Q^_*n]!Cm"OM))%i#9ad>i<;(zZϋ1f*?"-J*+]P ڸprV[O_Qf>ue$p4K%P@n..eېTXRОCbM8Uf^㌦JyU(n9,*76%x2J}(FOHG7gt?UFf3N4oݠ]]#::fڣ}>- -*.m t2ʘ++wflo]˺g=+bu2zJ #~d]nBC:4Z!~ymt*ڋE!0:AHvE9Jv@fh5DNGW뤫-zХBB&>3eQ2xmeh|g-M5v 9%8e.u\z=oA3|M/Q"ڑ/V8cr議 9?'E` jA 8?. s!4FkὟjp鑍2BͶ-nhR۳{K} j%Mc/gl.S#bȓIU,h[RGlc8KE< Eך # x6?T8U*K.~^0ݾ }e): v=dHEt&Hh˩7n o 95,TVִsϣ0A'VصɂN8K~jFVyS.Te4jYaZOÁ*6 Z%00mqoz@ Zxx=KM"/(^"r{8AjW >P8$xV2TnOS'=xf#-|,ݨ8qI~ZHDh+CgUc.$>naa1Yo7GAZ/. zUn͉ dtQA  2Z4,GIξa1O,bS-|uRjG: LlL>?XR3ɑkI.: aFºCv[wj ➒Prg|{<莾IjMěAx$Rh7E|o<XV"6͟<2vDNDR z 塚xEdb!F" EN8 9)+'-ElS ([b>^93n(d0gt1& 4z(&5@gO{ݜ-H ,vYtZ^Pˑ `L\%1 v|yw6dʬ`8Fe ) !ݹ0K jԏ"[TxcQ@8tKe^bI:1xH5d =mazr!ʼ)ٺXLͪ ɳj'ON>h<洵ZNKCQ fVp(`F#,ăT"Nw&: XW -,4CRu ƵgS* ӻ&8f:̷~NO[༊ 1Jm/9$G͡|D8qFKo2W ӻ<]r]x2/TJDpBBWOb\L.: UQT+쇕5U]''Z,EuIȩ dZvrvat~gm<s ƈ S2ĸK&SVzK1gkPX:9Q(wh⸃ӊ@eЪ`،VtX$2tϾlqЈ99~/@&/dvE@x}wFF 8g}>u|GPJ%>vGqAfRfpc漁f>fWS?3X>D05̇wtAΪKBd=\Hfj/hɝ.1`bfD nVKYS>F2 +5(E&~7w?aWMQD5^,C=LKn"NzQ ʍ~ :2D ҽMaT܀ \3w; ? ~qH##vݭ賮[G2Wwd<&uO8@vY.څ#MV#\9Noe02'Z5Ͳ2蔮œ%/m:;'LZYv׭V N错ۜfl/ qqչ_SPO<[OT <\0ߞV4;&۩2WgqH> r *mŒ'N9}Zz LHTnk,;IdND\ֲx90G"ۏ,`SC#񙇲XqBz;A[ ~jD1ֱcj*:m.Z91US}uU!<ǖ䱈S\(Pj@Clcw?jr{:EZ ^JT:P]FB] _`UAP#pǕL\t (tؗA'˯;j͸k09N*k[ܤWJB!az_{Fn,@cq r7189'PJoŐTF_cL/$fC= .Pvׯhѣu6*PTK@3+woFXNB8M^W1#H vu2llD!go1?8U*FbMS\ƛKmTfP7ψ'\ccDL+rZͷ=Z~_]b%\#E1/\ /LƆ*[]bgrXv}6g|Ro x|KI= k%9s63R*//dNɿ=4eknx)פ$[ڇWn.fk;;W $e}uDLs<",Wef-%8{3\pb I^gq-T~^6aD9Lx=@Nyt d`SWm֏ |(fp- _zG'`'Ҡe}DgH#p;>-<>EtYHwE59HNi(,d Sd#QYiZN" TJs?˞ͪ*1gBuQ ZFJ物W>G$2pPq*h$}֛FUP7»(_;ǐ^"V0?ekKkZj\*Qii%cAyv[c=S} U.]a?ھ Q7*Pyp~v4k׀m<ڼa8S@4Vx *YOYѻGd[ 쐑iJmXΔ3n%mY eEm ڤ)d~6n]aĴ ɵ./d"e^\~H q}Gr/ekg#L>,[-R!eyn~б" JSbx6KQ<9b/~ x 6FV3x=|2-ۚn"?,Sxc#J$KyUjH2 y/?$ݠ9El %H* ?-P~f6gh!G6VzO~Vuuڶkgl3%Zazet+ssخg)9{2mÖ?OG׸9Kpi~u{^{j0=ϳSdzew2rYj''[WWO0ZHVʔAqvo\9Nح_mgF (#KPIɧl I#>KoA.Jr C# {)%dQhadm~0[>c&uWђEgW}.<7 VĬKً)!i/ \q0D?e:}urv2 t <vr>kW;gd q7-I B_<~-pޥi;:^ҍ7*o'M&ub+e 6~PXgTg~0 mP \Jsj0 s֠[,PB Y(2q~Z}9?MP5vUвQwBdk"$qQu*I0WX5yguIY+H=rOwbZ|⪏ 4h#z{i$TVmƷ0^R"~W[ӞC>aNjսZ>97 A ZQ|> 3gbgRȟqh|4J)QAYWBCj$=u,*m*N/9,)4,U3 =qF>) @4zW3ā<=:ԛǀ}{& gt(Ț}ځڧDmEMgU) ]o"QqpN:YXHc@+<\ulgR|◷U`]6<ȵ)Z ']nXd͑тAsuIgtr>LtB ,6~7!fLL퍙&Kt2=YKnW_OWY-K,C [:8d9yZ'g[ے9B=~)T7$gOPӠ`|1m-Ӆ_"xy(X"4I%ȲY aق̦~f*ւnتW] Ɵ.ƗR;oX~AjDe!EWeAn=?<V)'$@rX9[1""ڒ6QZ%Tc][|1cT)@Q\%G3:Y+yygW?$օR D\N|*ySĨ#V˓Yך 2/@nx\(_sr g}YAe1`f8 v`/c:[XX oHh V"WڍJOBi+S*ʣ$Eqtw Zo=xαB.qy:;YӢtMS!8(Hs1~ !=@a5>p QSAl|ZifHJ[ݨsodETn7%%TRt$}mҜVo6}JA(iCzHiz|3g\m"S@:j8U}YڑvsaN~x"am.mi<`bz7@.F{#̳ Cyƒld$PC0pq56jWE8d?U@/BM{AC2هO+ЂeTz.TRLm[bRmx-Z}(MB/1&ncn>: R+FϲxZ> jO/ hz'1~P9u4q_'&TZK@ 1w~` jFb,4Kxlv'u@)kR>\BPee!w^@)CA*TށShnU Oz$IGP^.-,k?KPaJ[vcj}NΩ3Tq"F! J@VgL?Hxq<З-݂A LGiIӇGbũ[k6 '4FXi g`xt?7#W{ev}=YwS4DK^bԀ )<8GXvi 4;|%ZK0WIzc鰡6( Sy@k(WcEŐ2KQW0B= ]=oZ/mFd5yZebL -AdCPm\=A],=!L$U=_Vi,/v.z")1.6P``|Y߿"u duqQӍqB|}40C#,FNqAmMs EeXXJ-N/k|d{ZCF%MYdBe3ܻӑ(%Quf((7qi^|Mv9&챭(FH2 _ӮhmnNIcfa8jZbZUP5(E^aYXT!6x?gX7:TZ$i<^5ID0;>6#JWh|$Npa3XjC[ږ\e87c5rxBi*#ܓ*J9_TFEKX5XUGY`>vǧIn>˙M|*QbdOw6=!hii11)7y_ z5?H1u:ZAYob]4ّHV ФHŒ(gu$&2svdqiU\aEvD#%NH?g˱ ?1ErOSݱyB`}Z;@@(O=H[#cr<` o?RB [e?͒ùJK(߂W^$ Pi~$k620^BoAP_ =+`Fn6%0]A9. FքyOn6 trRj 5~/$ÛS\ow7POdEw2zCG?IVx&͂{vͅQ䱬=(q!owHhRࡀ<݉-ijׇgGlw0|%bې';f(ecN{?^M%/96_+Kggk(G90F#y;.-K9ő9Gpمyf\ҙ4n9)p/#R)$g>pq^ 2Յ`M \ӑ(hJ#91Y3Ȳu )wS~kd*TtAL}LJ#{ftP}HM{)!a9SH Lu0FSjUF^ _ΚTTЗ*1"@9m9 =ڹ{jp'-$>&C5[F 4y$.=v/xXfgHAf/*Ӡ6j%f{=d}A^>}v"(M&KF`\_!? ~gyʀEb^ ^D21<7VNVx,EHL̐q2>艚psm5REÿGzR6Ї4ţ=gdآYgYB3*IqCm2sBfvjJ|'p|k7VYdW0#譭I^8肮q^Zq"1~7僌8l?zX%aNiEN#G(z@?"z|!>U ZQs>Ryuro;*C{ Y'!kDw(]z}+ru!I%x^ުd`ߠg+7Rf[_6HUhq"ER "Af HK~vH@JB<zn3U _tshֲ0szUvqt^|NlzM Q"-]Iz+ː! U7߃ lpݛ.F,Uʤ(]+ImUSOhJv(ؕe9(o5"B]e߶M&;Χ8d!>`|Ux6N*0x9dS um>G}un!kD3Jď4Ĝx_iiD1$a0}Y'gb./&ш}VfN s\4 %C> /fGEdɵqns#\ufH\q<\]CۉD>3 m ;Hܼ,}:4{O7Ƈ:? nɳXj@Y_?ǤZ^C;t=pdMg*6|0āA6#(f%nqF5LqYَҔ N1G v`KɈr ZWPtF>1 OrR3U Yw)+OIަ1 @x;ԹQ_ʤwr޷I!t:_K̶_s=8oxpؾ"K7-E^%;'"9RS[擑Cp.IT+mXIԠC3E $$y ڶϱM{cwPˋ9E*4i 狼'CItu+`Y;_W͚T29Dg0cK ^97HI~=Ra)t ~\R#Cs(xj G&Q 0^H_ f.TrF]L_u UQIZWxC:0} Іʐ>X-΅Q-Y!m:H'-vcb+F O7I_!?@rw='k;;ҠHnNbx!QaGDM& uǡb> `UpoǕeXG-wT^_*AchƘ4IԿSY:pߚ?s=i7`ڹ/+{=n(>f_?p3S쌮vbU: u4D.e2*ޭ{jx\sZ}!,~1"$v+J%&K^뀌8[#Mc`&ӛ;gό}ϥ!OhꏐԑD nűo!?8FK|-cDY Cq4ʾ8lZ&!Op}0!Z*(ZHiWIVόΕIYrILMMrPcw I[רpjAV[]PSt>Q/=;t,#wY*eKV<#8N!Q 2u~5`9BTG9/g~p,4|q2cp ɼb7%L_?4$׬ЛQZ'< \m85W7*HW~Stus֯U cۇ.;Tt)H1F7rs*1F{˳' %W뎋:4 rnW<4>$ ?0<\[MJ0Pe6Ȣl!dD={fWP)8PHfmM!Ʀ%4 x؃s .ʥ) N1il-ϴeQuV$ :; _+ڳMl|< CX2ēo8:(l)_WTrEl*f>bur:~rʯ_6o;Qby>ـ \.I`-àxGZ.$my2kjPDff20)J806ǃ[TĪi<맼l-> `-e[}R|O_3ZT+EH . ǾqFQcy/ j\NY&j_qꛆ_6/f/ן/uhuMoR= S'<+ep]lO%DzvQW/5H+]9?N}N-ki("PYR`/kkkwi:(r!EPĿc#hSYUs즬LEGB*/3-ӶQlL|]:RDPcFE^\-f6PƗKTU t 5ȞF^OF۠S۳og+-.Zg#.6w+-K`LgAorθ)Y> s8lH`Rc"3v~-ZL-?=&.EEqu`_%BsSK/L`}vov-mH90e@5JdUUc{3}ۗ)* _ZW#xl*7}kAUiѢhtgYWe(E.ġ E6epP-E8XLvgU23&_ئ̚Uu }$|Y#Nͧ]fu^ǎDg!hWr-9+3}Xc|'=i)uT٢+CA-"ֆ)Iľ$d(h+I Gt)ܘe3jQj꼸ng# †=1d3Jtl%_4b^3b,-?@<" 5i!+dwD5sc6$>}ɨp6 +ꋴvd6h'/qi fU{Vy u} C.bE=Dg/sEau>YS=%SQ$ܡ RٰXQY$qEj1Fѹ!W=@V}Kܝa\y1Fx2|ic~AUlGXޏצgk}i|=I!j4x̴X65SŽ0)xD1̚)Yv9Sau?G(~R4xF-J䗴hAt+"nan`WXN}En.SFMX25NdҶjy}]X־tnA\pnn#_gQz})^29Nζ1GqhDŽpܴ IF0}ŋʵBћu`#f-4죞"p?i4AHzi0iWAe5BŞijiP8o6>eoVV"|*qG٦⾢X`f{D mʝc娪JD jP8Mt,aXVgy!k7ZW빯trCVK4@sry8=w`C"O/X4G<<Ƒ rqlһt DQ!ȍAddr,*[|x3I{(  mU^iuQ$l]`wF3iN< bV;S np k?d#eT"SGT Q+v| |A lRT4S'gF>lsBD[нקx})}:ò eJ/NQQJ"(alI}AWIkf^{nEI|H FZ%s:@FyZW4̼! [J |S[` UPVhH2 lّrsV$z ȺkvORc;?;2޹7b8u-}t[/lպto0rO̤)Q/]:v6xf5םB@z0܈~jzitL.1B^!N"H=:Mr[Y#91GBvC)X"Kϓ-{Bw4I1^'?)aE: -2MN du@@ gU؋oЅ9YmZ)҂07_ Oky*mwrC/Gr9tFuױ`f?}ޥf{ySpX 9#Ψ2$&y`ۈQ$󼰌vLMlBFss^!CN.Y:\oI\FZd%4ENWx6t\>1Haf!"T"/ܾr ?1('h|+VU=uS\̂tx(Qk0p՘<,h.͡f\ bCuYDT ~jEQ(ىPXHpf*CF_{_jv_nbxPcwNl(踓`[Qn=] %'@1tLP6G?3>!ţ5ћls@z.2 &"K:S Rȧ$ϥ6OYXzHC.-r 9vҖhԽ#Hr>؎E;<zm}p!3> % McREEBmuJiJ/$IjSx?!I,1!p. VF08]:aCw\}cȖa=G0=8oؕ:?%e gV]U5rฤ:mal;Ԍ!`)Ȅ5*?zz7[qo觹)IQB5Nc jtYv٩f!G}5u;RUda&ɍ{^A胴0m'l,r7K m A'4(V*!:ܧTE.r W{Ƴ+0Ba,]+ǧ% vEܫw[@ޯràPhvj0./n!) Bqvzs:H.{)W{ eaZ*x2i X@yY{K K ݵv#T'Wo(I-:M1öx#{eQ|t # rs󣙊'tѢ>#)>9N?z>ÁncU(MssoJ8n<ϦWq.kғOweߕA Ë.җjbSȠp킡 y'.t{z/ݓ-=ȫN/ Eva s.1*V߅QcMP+=]W_8߷`vYL- `aV(Md'0xLG8u7^[*~f҈$5~S, ;>4XJB}^pg#߆lXl$zW^+ܧR}>iIS74BkTz-FopXMX2m~2tuK8S$]UƦ¬s= g?Jڛ6gPzh*F+M̜ cVV`)vuZl+~3 uoP#ۚb{noop]LRV{;)HKkUS<2hfΆwC Y~g"5&ϻ8 \hG/j VKteƺȬ#t )EBzozUGeJ p[x9I2`Iagnǡ #f,0 sT ֮E~D}l}ꕝgm4Mp %V$ێr'zCn*{8vcD}9D`zޯ>L+RH7l&[(%iJ3/y *<< 18L.,KJ43f-Uo+Oe(P?ox#@u)sCn%d/ߞ[:1?@3L Ao&$l*IO& >;/`s.]3oW2߁F`o> d3$m7U>ɾFe8R%ͦrbB2#8)&G WmCv"uڄdE 9bkb 糴ʌG1X7"AVt)dPg.V웯?"ǹz4tE'㨩NNK,Qk0OBXcљƨ=T~iJn{uR8Yy wFudc{?tݽW V@K[31w!uۉc{8t)_9BãmJџG]7Uy@ڈC }$ ! ]0&tX!y.1@.f*}w1#a6ѸPR)]8؝`rP9ӊe(ͧ?( ǧæx`)֧- |6ۈ=\4aTҶf!6~6voF ^ɣ^.@d<7۹b a>ݞ .@Ú9`'#}y4#;r8;&ɫzDup ުhD5 dI&YX)"(2[LyWoi $B8z !! !Z旈8:ρe@@W\"3A*>f%ly l6tSt /+hȤL^ /__t7`6|ًy6^&aԂf'm"X1Дϯh4uC|$©!M}fg@`ߨ,'y"2!O !.y*̣`|o-2l)d?ьL齙!;^-ZTaH$%EߩE n`KCv"le#/7[D0).B?Add?%DgT%ԩk7= ʖ)ߛ*uţb ˣM?ͽNFe!UHhc>d>ϔ2@Z:_&+]d͇=w -MQU@ږ(M;kRΥHh ~YsWUG݋b؞[!s냡у/2Oc<%h.zr{,،ynbhU16 9'vȶna6֝m1l8(]#4XC F#Դ(m"#U&g }-_@48x$Q7yM F~9=S* }-ys*gB`N87ffp'~ݯ Hf>z,7Y}{UrT,d]8'O{%kCbD*K6krED˧ 1i#p ei/ځ#(pukrs 8)jL8AqR2Gz7wO>Ki| =ޥ%=ږĺ҅7ceZ47t Rſm݌|![rapBǓ+0HlaUS_vP<5o.V|d+[|XP>!eMJ<]ãTҹg" E`I!~.lq0}[If֣(˄\U2 ,w2ٰ˧jR7nK~P7 8߇kIૄo=nBFg\줟uPKnXXҪe[^;SJZ.)C4{|IWjD+.Qbljl!sūpP^;[ Ca1ѡv?Ht*R57>[ uu0/} ^(>]ɘcơqW"2ATkqY6 |*k__όx"] rеqzgi^4D*m{uYy]VC=W^"..<7D|y9`jn" uF+ yhpuU?.JC(?4GB3vw ^Ok?'|DyqQrga;ӹ7`ь+٨9X?Y;ugMȪ?[=HG9nʹQv`F{>k(}XhRBg_/}g#A[|9U;?CY\XdCh958 \w}I-vA :<+؋3UkR˥Ty2~3%d^9d,,O?{R| ,2n jvGB.e@.Zxj{[ N%I3_f4Gow[KP&2\Sj(N/ .F(^?iE,D?&S3 j%>xO[P{8QeBrP~Bpχ{iW Ro/:! sB\Of\LFA/4ƭBS OHi">5]\&'vN]vOe9KLJa8Av1$lU]qxF'7Y }WC>v$'+o*L &ʭ)Œ?&^{I99Msy"*k;ڻN@w#8:nטWRD3Ύ<<6)S  XU*b0L8J1S'xvc[[ﶤzml$"%o8ɟLĢ·gNJ/` ؟ ϖeKfmae>gƀ;:kcڀtﺰʺZBgoy^41דц8?ܤ+iC}'dW *UL|96y!I?T][.> bRp$d:b+@R[usq, m^[dN癳TۆQ ;h $ao( ]<rYh㍴J˰QvHs>z?2rQoG V'nXy_4k_=Ц kUyRpO# PsջgJJS6*J`xh԰C=$P/RҸ+$cS +iŪ%k^' bsS5XZ+&\sKվ2 ~ yv L&N VLf)7vxîqlAT8v*;|čI_ ZBߩҍծ-Vg̶wEL!V닓e|dfLhrqXD5[J& L҄[!넍V~ڞ: BM̺>Xʡ2d.1 90MPޔkQ*C Nf0)\ ؙPD6 ^ԵqfJ o 49m3n, [6sL;)!p^TZa.6lטFJXK"JADJ 3O*\b9)p`D%EYE݂ܐىUY]x˙3Ԧ΄gu _eQM7}Եfgb; Fo]I_g+:!O@{Ǹ?H5\0tuҺy0aF B=P0Bhi䢶'CXƧ p&P eoV0}\Hxq4*+4hN9H7 q ?F]uEnlHWF= ;T+=҄H>](MܵDZ\Ts&@H>e7yN<BQ/@+ǃɥ ȴ2pU{!CyA/[ {3/"m$m_L-dCv@in`L-SQ53:Mٔ@?`UkRP9g|X2*UYCx6)Yv@s5! |}}G#8a'[bhߖ#r.ev /$'Fr)XdyPIz[ɡ"WlO?"˂F/>㢹HiCFN (|'Q?W+h{Bơ=S#%6\)YU;$i-.IZM[a:m&.0qr6}ϐ8yb* onJAUnq @ 9a/ G^.R(VU(jzNN.EӐ~.X&"*WVJ޲ VvpZҀ#Q2{ҋQ[(]ꗯU. qe79HBrTW5YUgQbjl61u] 뎔?sPj>!Qi~Q y4ce~7m}]ʞAX킼9) l|TfXLK|rLkx'H'!G(4H +"ff_Cv*`Z-O> 8@k)׍t тt.,T,VmM'ȒFb\yΒqħl?HHJU|4_K0cNPݖBl8Od򌜾]Yq`~,36:m *Dh՚Vf266$g.߸:Tt060qs5*)C(6g`Ұq53ģGcL[^ p?}0WjgR]#O-ʑI)4|/7TA?؃E2BhȫTV oOG B_XnNoҨX[?8?!8Qk8ڢ <3"Ce%eSCyHQkHe!%{MMCܲd `&J- "].qcT<92%-D$3 +ge5} JjOs|I5֞|[z=8@4a~V1Qj4RV(;P8ߕ7 2׮Qo aunCZٚi<%-IUKOAS5st }Jscs!ӫkWJ h%'L)tt025<Ԃ!43I6Vb`:hşO xVǒħ 4S;.Nak__{c4Z[o ptFQED$vWu]-<,☛ekfsU=װ]GEu(+ [W.͕IrB9:-"H8urc t@duvoF5M{ Ԣdn~`4`ԆRTS'yW%p)I ""/sIb&E-K,P0`sTfqU&P)ql{柴z満#1>ʺm;I-7)$6Ρt$yUf 6<] J'֔X)vπ$+@՚/AtQTHrx')oL<I1%PaP!$kz rkq#V$ :5 *Aw-q}DiyG}@4jc2}CxDa sƒ74i(HbP(qq[IZ]8ߕ[B!$dCcVkGE&b#+6Ҙ !"Q%sGݼt Pe_AC[Rch[]hrRJ㲳&&E6L@!^YHд8<5=dRO.{=-S:x T[/dKf0[q}vyMSڇG nX;Gݩ_qގaM^w`Wi: -wzmP43PuO!Uw!|s9 )Qec`E_GA7͒"( y(;p6asU*D fMCt ,5Ő+cel/jvYG;L\?#:ڙK㟝s}x/);Tl>]_+v"GX%{ٱ9@,5J[1;}Qgx'7]"gZ}ƇNPosBS"buF+S*EEt=L/ >VaFmM1Um+ :T%kx"ww2>~/N 74nen_U*>q=O!y sJϐ?Us;U z3ڑG}Y)l~-F'o}d,hJƍtQ\P((h_,b\/#C6UVI,}s - &<|s{xKȢF+>Pg-HE1(ٵoqX "*dC5اxd~F]`X{/Do)p4I6Ӎ +Zp)[(03g v6DZ}/ hTH,lgP>82p@w2]fEg:c \m_}jp{LoA?49׍%Fb* 2JU } вjtbm&Kê+4\3iY6ݍj)eX G{)-1O_0!'r,v]˂bpgE` Eo.~nIRTR<5Xs72um _."uنAXKJ70ȒݐXzZq8QL(M Nd&Q=++汬f+Y;f^e 5|r*SWay`rme?_RxaJ|to/Uu93z>ϯ{bEȃ:>7_s#|q=@x)΅pTi, L8I_?hs.`dyb^ <@rO泮(V2!vxl6`Yj i/?vU35"3n}G{ :F;\GiE794UQ̟_QYˤp(~}>(- W჈DOu)f {u~k-ZW=1h{^f&otyh:],Q՜L= >ߧYܦiTW_P6qH){&c>+&AviYГ. [U<4AI+]ƸQr&SeR g?<$h%N!1/Veu6GP]DxpsQ[nY3Cj.[}g]1jޝĊi}yUeL} 6֩lu 1xpQf?WB%V^wh(`k 67r0QVլRo.ٍn)'QvqHT㋑B @l*PεIU T=DG sQjQ]cpzsTS}m81T n* 4BBmxxB@!}:_'wnKdUUEPy4=E8s&qZBDS}陹UMV=/a/)AIZƈQ0gbF܁-к!={wދ !c'7y=s"]G{T-Y7U WU72h|極ʬh`_ieTIpvVqt\VAy Ƚ{ùޖ hcx)G8]G^LX:X ~'lu)2]VZqvud k#3I :֧ЊfZ'IOr@}8k @s4/pSͨ$ eTsi?b$qNw ~6+]/Y"UtܷwzAM H|qM*D90 cG )!ɘ]8$Iڬ5 W><̭*>Vסi fHEҲmTiA#)5"̌4;\"ufBr^tlɟ9&E*i/^K{֠ H^D;eN3t4A(f ðSter?.s<;=8~ƠbZcMdoMqahKM\H)2e`4^zTMT8Zo?Bdh%}DQ :]rTJ5X@TFO`LZs|Wܿk*?r`-IPy/ W0,Q' AVe+S X]@n[CFP(6@hTm_]{Ɨ<8̽#ʈ8r jr)iFbu7BgYz~ȿ4>L4z.G(خlD('5ԋ~f<6"bqZtkb↏dպoK(QA=lj e :#EJ: 340Uonk_UG~f}A7J"mOP *Q6f; iΊ󽴄L}!{DA%7.?-q^-FɀZ1k-̭҇(>+'gWPoD8a|vӛ%; aag 2RE}zo| z?K`E<, }Wj|Co@ǃ$| \ l~M[Rzɟ~{n-U&S&:~%٬\mDazbLEH[屘0H} IkfRIw Z3)ڊm4IpзozX&LGU!ø؇Gs~[A4?Զr2W2)4!?`C5,HQ|s0 ZnSU*oY &PGjDh ! D|{$'U4{4ѥBIwl:ٱ~ob`h*`[uLiD5Kz%$O9.)Sϸxa"BKd#M0+P3\jh8A1up,SҐruC}PCe=vaO%Дg-ay<La>e+F" SSAPEls=<6AJM'PuwlWL pK@1API"0G! [L##@0ga0'OCFZ˔XeMN%)O~G 3BAO<:OʥAk:5s{joN 10}_b,$V: h*_O75ڋ)U¢T55%DneDav3W?0-!F߿htz]wNbȐӌe6*WWa:S>PH]/&ɱaԈ {d$1Sw>}p Br.6{4YyZV8eHFyۨϖz#d*iknۖXi@nc:AD\M!SRQ1-є`'kj"k<9[>lJEP)}#Cz*6Qsr- @Wg:Q/iF2ߺ sI/Y\m>fbs1au*1XPȾmJ1 $9VTb O!ve!-7Jޭ,$Rh:A T~B HJ6gbGwZf{+ņTfX8]D+(ozds~B}2'O.F26 ǾOnhzze91BP`OT_~/WA:d~QJ"{ 4xTx<|dٽ2N`x us%EV|U)C ZQF&D8ِtPS$)ev7x+vC:h-*YOvNb,G˦lv2u'Y,SADʜB!ʇ& :(EAկY>8?p#v5ݙ GVgYqx_v:P'.W"LUÊ`}O<AdvCƺ.4S((_Bȡ~;Kѭuشv-jPJ,jf_N&xvǎvW;K\$f WIO/m75C}'V݈MZpSV~b9$jǽwj49uqToox} ٣`AiI]+ .q:)ɊPzg:'[ݚӎhLGxdygVWTAcVݿa|9*3ur$P$=ƻDJ?N9os!骬3e gK;&P=otJͨx:%{C [gVi l!mN<=JRiwhceX2|nZP ace^ F0v*MZZ1ȃXjDZDѾjV17EZ)gَyjc$/ɪHBFJC9_g~TKvf~@A .HRn+ HpӘp92]Gj' Laل*܊Αv Q,Rw7EBXv{(ͽ+EI!v{Dz=&.?^!9bkBa(+ ,&VAJБXS|ӘY{)BErB4yJ1_%;/8q&}c<qUL,M3GXAwLW"ULadZeWL|`Wh(.=]tFk&4,AE)F̌#rEQގYifÁuKQa0UI@ߛGDig3,"ܬ&dMPW޲% L$Ԫ#H(1U<0<@O+Orxc.qRԣ Z0,+GsY6HKNJ 붷 9(8.y}YOs-*uW>0뤪21Ϥ^RpөbcJE"ΒTΥMɔpȀlK BO͠fE?4|&lav8SޔYٴ|I)ȹBb^7iVvMIWVp "d Y$J߻Atͽb)皿/߄ (7؈DOtGC>-_ȁ,]°8<{գ@mS8{"2WeXS`t5!5HQ̓`m3D7Idx[^t`5t?|1?j }份v-s@_nW ݡIZyP=Sh!t,Pdj.qb0:,w55PY31 ]R:?tQHqD5nҹxO0iO}qyG`&om>JG: E`{)l^1g)Ymn9(lpJrIee=^9k%1H}ɣu)3|a%ͧ* 禲3 4 Cf{ FsC 2AUSRq>b aLDLW|#F#`+"ŷa=֊fVŲ| JrdH~؎õ{!"[ϞDX1[֙RZO;i8DeyJPE$%F֐)wYNDnMw#q 9TQp,l]&IٺyE ^?#D_=Yc򺉱yԁCԸ-XMs5٫)Qp]pجym2tA_'] DՐW41;3o\2w 2Aؽ' py5PĈ>+#!s, edw.P@2B5VW0 XIU ,͔[~TA#PKji?^rFBؙ# u츤F*;(oor3xIIEe(ȷ iQdAaoи* FW@XBWĹf?kBs/6-w)Y*Tn)[_* C]N_a(ߜ "Rk<3%+~Zq𴅧A˻=2p&{l-Znz[6 „9Ε%i TGz qp1`\o5D(Qu昧 k WLaq3ԾǷ".Đ0ejQ@hvdF 5}{ tHUR1riIftw}PyԞUoAٵOf:ɞE X4H*LJgusQ$0°Pe,G@r{1E:!d w&~3x&R0NFeEJ|G9tr@.;mw2~_'D;-L秤Msc߂j5|?Xir(^wd^[8Zj[/Z"9>JrǟxF -nk#n c5Qws}#)JKزD=7?E(}K@] G, 2gt)f΢\WBNlSI KI4ohAr]݊ll"8VXkfs 5ܷ5ԐTg1x|~t (R_=Vr{bpDHЇjGQ1'ZV|+ #"r[f3;: 0긇gvt.BoulN> ttO ̸Ϭz9Ѿ9~OY]IZ}1hFĤz?& モLtJ [L67(Q9E} RSKHr<&~)vԅE3}FJ@G| d}6k. +c x(wB2Vj~Q,~D6O*IݱEHXo ѺdnI݅L<+(\ogKsI,7r? ^i`@W]+HFB)fP@pJw_9UaNyK@4_.S&6$>ZZhrnj[hbνlmu#zv&KQV2 .Z/Q#UCh }E!Z {(̟]=}T;:_^c=PB&uFЈqÛ fv*SRkh 6D{ZHWȣ7 xQYbW1 kV2vNfWv|4ₛqki&E70QSȢjOE*l,%ڣ k d{ŸZZ;w@ EJzd$pg Q ,]bwz@LR`Tt=}xXb%2n Nw .脧IgIZitp6ٍ4Cvim$%9jJ$0B,'N'xչ \&[&c*s@RI%`]gLr>G9 øe-?# >_98d/u:Hi?h꼀$RonGdI 臓8:c>K N%H]olGe$husspYLc4Qwwg|Rrw &)&@ZCAD*P{!شW"hɝ9ۀ[&(>\hI JAe.x5hijl`d1V}*dN nND5`3?}F:7Z*<[iTcf⏤ j[kO݈k>۹|U|AmϺ!@,I[ma<,ƇE^GrtM+k?" ϻ5_N5oz m== la`H@b5$!'>8{0)ml/i 8`Y"Sa-+jL -@|M-܊S9%V;Q`GvUߧjAۑpJdQ] //dџɔҁjլsv YڇQG}{ _#ThˑA͜g'1[J՚681GW=`[YL]4b&dϻmKh֓'x= Fu v^H^'/7W$ce>R@qB6Pg%[TK502}U!f]k$O 3çLp67w= 153!w@R>%FYl%_oӏ{is X @zP;%׬P+` gZ#΀JX"- W[%KfʢsT#[hr+ld R* vluoY is4RA# +3n<8[ DK4-6^97C9Ahxfug$G H>t0=ļx[S?fp̍ݵ|>le&C#QՍG_`-uӎV sƇFɦs9y3Bc&[ \ڊv$+; k<7yqO_koT0Xe\mqxȃf%".&@ w0뙆 uq;`ml5KU[#wK)3 ldiqn<"<>iȪMt5֎S޵̿M奌/ 5(*`NenB`ji.`C:[/~T{O1nPbM !1|{rFp-tm57*Q^ 8RJ`WkNPZA~RW}10. ՟+/"?ګQq !te6bͲ8BgnT}Î%r_ToϝZ^kz}\ Yd^뎋LF9L3 DZmc+KF?!tp)d!/FHof tRݵdэ-06l }AZDc̝NѪa7HÐ , L75z9H&@Ki7ٸg}HN^^^47m! \q ~\ѓB"ׄ#i?ԊKP _c-iA0ϴ|% Mӡr(](>B\T4ED&0B\0; #3 #'U-x@c* 2]7z_V0rm؀ӆ|w7TO?'* 큊uָpH-F9:P=?)] M]^Ƥ5ttúWǰU}DИHݼ*~NoAA}q1u)Jϫh~vЌ&V>Ȣ TCgi1'o@z3>?.S^n&15/E2R/O"J) OPn"û; }{]TbC. Wco_vWRirNd6M=>+qerLwR:B瀎xB;:BIFEZp0Ǚ^{ʶh_#qv,HޙU{k9 N?[%)ᵉJs3 jOkON:,abˤ`(gE=A5ke@8]r_hKħ,ۓ{c <#v)N. PQ\DߍN[>f,Rl0f@DҜ;.F(HRb`Ixdy8SZZz>B%NbֵXƢQ=7<0?h gW!UL gז, sOzd䧜 VUʊ~ v- $dR]s@PDTh%<9NOuyL 6BёC( kJ @U @|ɐh#Wƶ@Qkv8 JԆ/5&5g5dC(&jS:Ӑ\ͳNfV[v ;$y˻x+e3ȥ2sfčRdO4J4zwxa E_KM["L"Q4oƒC8 J*zdZ"Ś4o~C7PcE Ab4BCKCfT9Jcsܥr_K՛U1(EU? VagBy_XTs+ OQ<ﳂmKr:Ar$}.DpTS!LuůV&ꪆ,Mʛl]7@l~)?޵ۘ6#ٲc.x=|ApWŠZ:S@̖ᬤiq>{mHi84r׋\N>Dp|u_#Kw@\ܣG彊\_.$8m->Jn]}ZO9[9{jȧa5X]<3EG8 3-j0m0pNKɘ]mKgrLUy369tWg EF\ e mO`< #4{eȑ5QF#MZ 3/OH#ꀏjpE_1ws`y~t)UY !mjEYҢ+Z+gWٰ`F*#-^b :10~B[kL@;x wzCH T#պ| |pn>ZBM#265J[4Ο%KW#j}[m"5 3c) ФB8J4.Ht%_J(X|d/K򆓋G_o^l%+ dxΣlG1ρ8P~Cr#ۿⷴU?Fzċy=`;ݛVW4 ;/.mA! =HJ'%HEM'}y@G1 b4wU_O+!_?mdhx\~oGm|V؉+rN)P hjb{K{eںŻ {fhsd{NCBe]RcscMeUKnd@ d9x# P}"N^ګZJ5>SSvdSFV`kYK3IPkG8ZVK~Gg=T9%Zj%(殩"&sTs׼//>!RJAmBx 0ݝ {8~PƦ8mItฤJ8_ȟaTsJVzGKv7|čOɆxd-F-5%](e9]J s]q3xӤs4E"~z}1ĔCC ƞtt&WvqFv~& EX`Ą:J_ O- |`3c+TB^JfԸi zghv@-=&w%EcYJ_hˬ,7; #aZ](18BБ3.^ 1P?"# 74^IQ`ÓJ8 R#R  8:;d=#D>wKP`x@j%Kfhlɏ^87H y;H~OT71%c8|:EkĹXTn` ;w)]@ CX;F1Y`jgd8ke0B#iJdO T$qs/GēA5 @ a(C_ipKX{2r;x9:AшZAnhvyWjZDشe9Fֲ/ Ȳ ^D~*]bm^IYnQ4+$CzCM$Q_, 唅~ط2S™H;!îh)&Gm$i[- 7y+# uiΠA. ^`Й%+̉-O<{;k uްHߙC&g1|.W7/Aq Uq:2;W s(m$ mn's#;$</u/u,u8/Lvn|ي{|1_,<,tx`WZDVbXDq(׵ȈΝj>-K9]qnUXLB2MKP3bb"vO@RC$VC޼rmTCE+RrޣC0. [Q;;dhQΪk5/NѺ+݇bǁ< 5w"%`$:^~Mg+~ Ճsغjծ A x5?eHO>ߌvWJwvߵ5Xˢ& tV#:i6N%I/}#]lB|,>t?ɼF(^FHz5x^0wDvXOw\bU7$͛p2JTp&И+}3YncGDk@Kַ;9=H#զ.KrCK!Vc=~qkmA (Lܬ5AM:?[y3*i4k GP#C}!ֽjki*Q(HPbR\xL!SyKY ;3#o(M2HKmnntYq ִ_7Xra[3'(ySpadV *+ki!kϒpvͮ\DΧhSşi 0肋HnƜD|N]RmLʥ^EU|7Jms[[˚]$>-s]iL]`ƶtmR$ݭJHϒ5[T0㫓SscLk<ݵ$b3Ֆ[B.GijIz#.rU߻/2ljYH@ @|QBpbea mHMnP[^Đw37RA,b(6II`i 'pWg)|gȇ_1Pd{5-3%/M%,+gh-X-_CJ•j,bz6^mTb'F(0AgO!R-YHBd?go )BHRx9{:iHZ +`4$F;GJwU !IA2:#$۪"Z2B|싈/#FWP4']<:yi`Ur})jd/> ^vNtvmLT6%?p1'oύMyMqĖhsl3B Jcrym|E˃p}fiɇeFxǧX-%M{'Tǂ&7 Tb'<mVf!͊L ۭ60CEuRE5cTl[bsa_TchM0ڔ]zCFqJ[=,'e7}AP ݦ|`$5LO,T, QZxz%,Gѡ_GMe%ë%M$T V/r@2dDb_A!^~?U ZAU/HkHGU[v1NZ+#1[ag!x=E2=5~");k%6!Pl{Fw8ѯyU4tCLAodJȩA4{OMMOE;RDr3޸v1-{313>\')%JY_pifSoň[nFl7~AuĦضɱ(հI9u>Ǭc2!@Ko H7 B!=(s8hF\g]f=IB6D%]Vhq'"\DD >e4ѱl0 ͼgZu(ɔIq _nLdiKK[;O2`_&(ɒwTjp_4.7v, 0M}YLr4)rD DqXPLSUQ4Pl?s'~UkTk֩`H}e :Kj|يvO9<@bi8s\=0A[-7A~H+7ќuyl1Owdɼ<gf_X9X 5 b˩+z[Iw3ό#W_̼U.f%?{FcBViZEN9.r@'ay?O Ba ӝ!X4b*E>d8Vu <+ R'ANˌ4J }Xm)C>,yzE`(}tO`zT{]E(-0ȵzJJ6ޥPow[z]5L3Ǥ7 ѹj, ?%aha-%!'-XG 2v7{BX SMLj◦S_=xnQ\TqîDubh U?^ZEX蚘b z]-ٕz yȵޕv vBdX9jen{usJe+'TZIletFPJ wP_Rj"\!0fe9Ϻ0rMW5;uC:̭`C||2ns;`͡{bQO)iSN%n Ԃ/!T*MՑG) N!.5M+gtOES;r_{-\#F )T3L¼A, 3m, *AֹBp З-Uo߯D\J+ة8 c*$PR- JUٴY$aiq ̥&*MUE_ei[cDzق#B鰈Lo_JWy*'F2z:? q, (+mC M 4횏d%+I$l5xvMSsY{fd48-LlX =n)p3i GOV[0[SzaU\_%Br"qJ W_: vނjLek+USܐp!KmqRDf,)6Ljm@7>x%\j `+MqTk@h>ǩBVw"nU;I[ _y?!CGJaFT0GN /#oTpU}5tߕeI4yH3QH |!#vfجGӺC_-Ż 6Tr9%bMWǚy!Ĝ+ii8=Q7/u ,f/xE~܂nhwj(ķ9 ^A@ 8UjV kL7upq{^Y 8Lߺ@sH`C#?hi]m: W8 AbL-; st ÇT_hHmHFQDbzzu}5O6Vk& ConX/UC4u!G4g֐\d6#ֳmpXCKuy->Y|bJsB zo{y[(-ij;I젬RTmנgusp+Ư jRgc[> VQR;EAd[tkxM }0XIX*, zK&Pd ,86C7sOB~ s>,d.KjY5~o:BeZYE7\c^m$9N+S'Ndl O'z%msɶIiDR{q[)ǴhGF13e#2CMhUc}A >q. C)"D,^N*nkrB|G[Gh@RdeNDL?}RCRQ/!X7Xz o/썑lqIƈwRf\Ne"3# pSq۬?"_˯B@rFpuIzۯD[H:.Ro sM( _(8X%γ}(:Rȥt^48`ŞOgY<̹q2A8JnvtW@ (b*ry]b3'yeZ3} %~VjuVm:|D$_rq?#W IAEg}@yN9-Bꅎ)+EX|+h)P_{5B^:$V.ŦגFͻS3RbI]!P"XMYF-,n'YCv>> |-љuS/p?{1G9-]Q)k;7'X2۠+pi," x(zgH}Yɩrt{^I )IWl^ >4'qwJ_X [BAx@.%q^׉,?MA8=ʶi9ܓu׶>[.WE4H^,Z0VdLek8k(RPi$w+09}c=_r2%2 ˒(7-JCңFtFf93YyMȣpq_b FDpk< 楓gς ~BMhx4Oc}OW>9S}wȮϝ޲iF.3Hh"&'eFEAYm- C41{]FiPcLf۪ݔ3\}2rG05 m=Xg[~44Vy@Xv&{aUP%M:>DxOP #wC >/V=d+ nv(@(sbS\4O4&%ђ]J}MqaAU@\Bd%x/<3PQ5%/@b#ye_4<)ݾ|yvPÃ6M-tCA7/~c1 u!ˈ_%a@"EMe *v`4cBK7m=k_"L[^DWxIû3gs#\@g~= yoOZEȶ2XIȹKW,\ LM { ñKc<CO>ͤwaFkLAkMVH2\S[Nw?J6.CuU;Mɇ ٽ7GLm\` kS^x,BT}%_pu{[2*IK#Zejē1ʼ|C30HO1sz=Nk8n/ jpJlJ0|(Db~5>1$U˥0hkuO< HIyL@"\q- ;^ ڪT$1٨򪿙;wED3"Xwqч)9JN/ } ~A *T>],FQĞZy}Њ>1F>̶Rnx^`6uu6t-lygy,Zvt ^]E}Xvhhge7$[`1GTHqo GV~ ">M*Y iHFI zٱmk {ڴ84r+4X@v$[_*:%L7R1 p&]nM{az qݰڻ^s XXR2豾!2FPg 6Vv7LBAeھjkN%aGt Z|S]qMW"i,(*sv'ҀZw?x<% %[{[WW>1Nٞ (dڤҦۑ2֝  !7^D^"~/oboap祳nݎol/Lެ u%p}@XоڛG̈0Xd]g1DGSЂĆ?EMZxU'7^UuNqPZ p-|@e6x0"nojq!1(|O(a) Xiy]Z6TLGȋhM(AIP(zs>SFVz; x?F=4U\eD}x72vOMa0X&J9] Ȋ\]^f_L]ʓH{n qxRC Ox/rX^VŜUIΚZT.2B"Wx5g0 TU17oTvK9asHϲ8A=qv$*KQU:턏jGZb]0-7k! ݷSke…BR^4  NV2b;>^)t?%̭7/ʤHPצRa;ҫDwDʡ}񉤄 1: G(NvIxp]$uK T-iDIl^Ekx߶J5;h 7O侒k>ygQkd'<x !s->}D؂N;5Vlp eҰOK=9" c+3lB_"+y|:Djɮ6Rz <_5ta+g:)t尝(*X01N D0ﲎr1 Nfݾ e?{uBQOurv~Z>x kڋ-i2J'Z@p@GWPQPuTXVHD!XD}}A.*TP2[W茊p 6YaSa,\u5'=MIVJ;Jgʯ30"!AV P9H1)x>$_PPx^'Jl(D%foֽ ӭ`Fɞ0_5G%C<,#BX';>Rx؜)BRhģVt?KjC<$i3 F>ws)V^SL,?.%uHR[ΆpQM ұޣLm! j&?+D[@h)9}B_#m{8[c*hg"Yj#뙇 @v&c5m)ȣ!\BZ`ڠ߈zU-ֿO9ӭ"ՋEYo+<6LM09 $߾v9Y;b珍כ;tҵ7fS6KQhFWLM5lR-M\*vY:GJP3,ZIP72*n~Pn'9 r,Y(& @h[d۷'uǖPZ{BGѣ p%K)1oVz0aP[8 -S}Jh|9 X߳a ;x 7"@2|Dg$kJ2v0Bs[L8;¬1!KBwyɄ&ؾ fWbCMI&_:Jasl,i,1[_-2(ꏿCPPFQjWƠ@`W JwEa&)sͺZlyݨ-3{#x)wo@ټ!s$#RQoycr'Iߤy*ck-gow";m $vzY@0n~g4ML9Q/KeFf(8̆SwguϖDQ&.{oV_ET]ƸFk .-QEI񹘂p[FDʺP=gifH%ۊm\ZQDU#R{1كˮzccA3.&2"3wnS0#;p74zl?WK 9r%M)/Tt lydleCh(ZK3Uwn#nS=5v[KURhh갭xA+$"2<5v1| k{R]y=x.#y!a*cO#6a*۫d3IpY޲!+FB2r+t'{g `%Swvw`"<@bځtL5+j6~N1e䨿R*ܻ -9?u@[(sv1 PnK3εTJ2G DvQy`j*0V JIG1b>2ID3(WCcŃXy8xK` #_YrP`$i0"@Be!{ ^`(lr=uF2-%9sxC8Nr4آq9/heG(宇~N$e3IǦub/FRHIV3A%VQŸ-6Rm2 9 ]QVt.߃Yvi(%44uX#Ei~0Wafﵘ} Y8{4x:|lH˰npF#SiCE^i50|}|w'-un,J,"cU?öW%Q?@3QΚ!Xk 99*ĵ^3g&F[KG݆WN!~hxWVWuџ3E*ht RPj5]]xiL(X R<_ڱo|$`ּ+V\gg_Q6gQxc§p^.^h@A< C*={@y&H?(&*a1)ʪ=/7J!L!>~bTvOVEk=7FΊBPn7Ȝf_LL7s82YTCEb-7r~."C,Iӗ\r6ЕToBh, zWIģNACYڲ*(JBNϲp{ SG*^B)f.Jŷ mI{\tdP\Nź,TO'8 vdg/.jw.KqϪڳF= q$]pYQPIhSY^4 wm9(mld+5q$HQB7r,zS1 H׀ cT#!|]Xk}IЊ\aQBB=Ȋl7 l/lk)X7Պv3s~>L2cfx>vXЛ5?fW4+fLv ƕv/Fxkeshj4!*jhV?dSHAДa ਎:d \3dh9"YlT"P4dԻL[!kzt+2#s6VT: A*MoF7*M 䱛  '#=:z8t߬i?a/d'$kbW,$qB&S1 zOm2D[%]P|vwG 12v;7d }mr~;l엃:xXiqiOM]%. Lcu8![-lЇ $.8}5H₩ZGrHk(v羗a9Iy1mˑC^Ќ M$wze5P?Gf\'nF"VT:6`뱪3)Yw P$sq3!4#wU,}G̫0i1n{[TV0Ŧ:%k,\rܨl ѷ';huTe/`*T#)⧭ _NrwwP'@pY=2% h8uk*gYS$&qoC%Ca{Ӊf.dw,,q t0%OHTq.Ykce`ƃ.2*(7K}gWG6o$cGLN.R}, U1=d1ڕ'ske[+ O +aNF|2hǹ*NXUI֌}|X_ʀ6ڏTh֫Z*Υ7[1un W/BgL/X׼E,gn90L)2%1Xd-9r?OӀYnTy[A`h)JeƩDok06,TdwDS_!-e.֞F1L̓N[UP~sD m#|Ʀp)j0ṯh*`^׌`@qDg^hnˡup&6Gإ`!aNJ|`RX tsQ֭'WpL$M7 T/xϩ5KV76jK="]`#LfbdE{TYmڍwɅ 3o@sęi~^+^hVX>2Vqrl"uG >!V0!$35^τ*xBL{3X>NR7)ޔFXbp N4χmgXiuﺺn"oEl-zEO@<I *5W2$d@CyB.`zP@E@30]֪D :G0X[<*vk.ȁrݬ0"݅H ǧ^+mg(hE/TCINkzA#nGts:I|A"&SiT f^u5YFq/) ~v]l٤<{;J+/ RNWrizw}B)0|r5~0S{Eb**g87Gnv Ba/WFT&ܷL0-ɜ:k#UBq#vw3-̄P9:F,_8o)pf@"Nژ.TpG8eȬNTN\B[o Cr.?]`P帔:3sN! =Um7TbkA7q'b7Й7b~zr|E^ҼfM\+x"ysptgJ! ~$HǂqR~hԿFxl96msWC_vyq"˅RLW_-d@֛E>۝5G&IBL*ܝ̟'ڍp?Y/b`|53m?P L j;3MƨDމ"}mhOmy(@Qˏ+zeҐquw<{-ec+C)+zxKeɠK6WrBHRER'w.zq36x" ?}DDLm&ͪL S=*S)> 3ȼɿC^ 3RXqK7KF[XȼbGY4"2 LuwE|&F<*>,= ,{$P΢K 2y6M_w_r _g~Q'`Z0!ːvD!)y;X l֌?"jr{_Rm3f/ROB-.ɞ) jo@߰W~mOG"y Dji`KԪS>BSwBU]"{bv5 rQWYǚԚ91,~4lX6p=V]Vh@8nrg{gwMPmnn{𛀞՞hKk{X-g9HcQ`y{дt _>%-D+`` xgW(@3"Y?x>62Af3cJͧJNo /ϑ*͂R::s߄༹[hM񄎝/v?c;f_H7bHK~EeE&-yHb+<)!zI>ֿ}AsURp4,MnJg&3 5=Z2\aPC/lul"3(E؜bŘ[~Q ˖Y /z˵|kr{_q;yΊckޯ$͎TsfPk$VD&\ v{J| P+g) E" JyDCABSgmV.Lmd Ů` :Z͉Za=裥0Y{QrF{jAmںB5ALǎ%GTMAxeLDuE] pÖJ?qf{*̊/rj)4 9 (@-0a|ˢ9-}[~SX)v&D +9Aʂ^X=pf Hm_4^VX.=D9)>B17 p{!^߽j< fDotōĥ% &"FM7ܣrƒٛ %G uⴖeFJfylMPX袷D:|q<7]%u?367Zlh(42$M[*HOOe|nۼXmǸql?)A}V(tEE~0k-D |S꘮ a&ϲE؂弛Dm^D}PaP37=]ݛEjط|ZWIņvL2h44c`b$Ź.Z=h*~2jwa63"}JcOC[. 9&3lF=:]WӧpRR>C|ΩNdp>XQ=XPf7xzUK?)seū%ݾy3 u,>>EO]HJ q| p5Rd89S|zb)'@geJd: 2 >s?Irz!Z?wF+,iL h*R͡]r6V2^yr]Y\vW{&l5=tW*WDHZ=`z[M-XxN4f$I[>r4A̲.J)4vRS@I&C<x%D,8cqu[*AjLO5(vMKWNMfoc)"ɦc3s/.ˡoKL7K^7fj'|MYu\gh*Qw ]ؿEZtQ65P[r]' N2&.zU@=G׹3 lӔ13# AG'L?T?&^rpqDf..ӾOCOq 1V;AVF9}"J:ℎ{xX.-oΘ! ѥTM$YZb&pNbu!lɸĽm*ZW%SȤ##WqޮX v֙2)A!\&QsWhfM9F\InuLS˨gL-O; .,2x8it+>a5TMdp4->=DF6~䘴@+۩ە 9;˱oa*s`u k½RCjxЉNp V$PK龗ӽrotB= FG8ܸR̶3G q+R|>O:t还zm~SvQLamPqCm*I=|8SZ#nY\j,(+u{p #кgc^ leo֠ɩ7GUjs>)Qq`5f1V}$l^ bKj ǔhH%P;SWg[X0Ms\MϺ66VaKx ig@EW)_ i>LA:u'ͨoeŷF^mu.k?)]d^nT\? n XkJw0=ɤyܦ9 TD%՞N`b9r+"a.wsO'S]Зev/yL rlR{; k zf)٤Xlײ6ы.83<*挷΃T<~I2_D;@.&R(j y1F-$a X 镸#2рB+8ha5Pt {2sLg˲1jV:P~SL>QM_0 VnKj{R]gLT b^;, ݅K/&wS9sZJÐC8' .J>xP znf2 "$_ؤWS4TzvsUVLd蓽si⎩k = ih*{ |nxD0lyR+q&ysvgtJZ5E9#[iFGF=X,)V_XGP )g cE&"u}`n[Aڸc %0~ʂ#WH\WCr@G"a ϻ`w:ГA0HDde0\ܗC!.n&"ȋ97S-h+U˔@$r+ Tv Dv2s}ȺYڀ_ialE`O%G徭 }ɛCx^W7u zˌ S(b&\S,4`zkS y"*=R }<IQF[R(N:$o ;%6MU[v[QE+D&7K@Ev*Ca $ 5\Q,:~*n2ny /``=oaqU`Ci/ KIpam4*Pٛ,vSe_.y/ GV 9O Hj#HC}> kW?kUbc~P|_g<9"?Q6C1䠋qR4Ź^-UYУ:˸?yF,OP u-+8WiFQTḲb&$',y:pQ9#: -4=ܕeb=Հ|(&KNnG@Y)qö`ZZM`7y|nIz)HZut`Ovgu%a|]ɪT9 {ec 2QKs#O"K2t(}rpj mNrrs#!>DO"|bر]_A$L=s eKwdc%9W0bB\96Ƕܱ+T,%G#ɳ}jZ>va(>D6p [4 >'ǬBI-.wKg3BQ^&yk%>*'r0ߚ@DJ;~SCmxv`suQj8NYuOڦg /Xks Z7l zߣp uHg("i|PS~YC!tgwI1$sM x[*;NR.Dbd42@{]6R;r qgnNi/l ם~MFI;OEk=t༶`89YsUf} a|Ɇ2RPCÑz'2V_6bw1jyɆ:Qɳp$6Bp ,X`.`݈ d B"(n<({chW>|Ikը;@W[ XOxoP]!f5nkbeХO:SkHK^$~֨2Pˌqp0&149r`7tI-:0%~XׯnvDž ݂˻ ÷Sq~~ygf1J9D%jPOAt^agRt4H.`gߴhm6Mctq)$N-2wz裭5yЀKK4dB05龓zfb=p&ӄ9nj#> 1ZߞI%Iז߸x7s': >;+Q'lTgrh/3ߊYܷ2 MXឞ7ܜgڔjk[K}b7[M.~*I" x,NѲ[K~c Rޕi^ l<;kloZ Ͱrڌ$c&)iDꃺXi?S},犯'&aC0b_!vR?PN?%Hߍ^!͸F5L2DMOcncS׏O<7uSh-Ny`e(j)95m6?HtC"2YHQ H:&Rt>yW.b RAV41Zy=4(CaA `Ȉ.~UD:]g( /PzݵVEO=&ZJ{PbX&u܋PWQ bًt*'2>y ZGW=hcˁbGXz:rV%sd&~14i9EˊfMV6f -L-@yPE8)R jvu%zE|dV ^u1BG,0ACy;aRu Wkt:4 a}D/i?t,ޮ^wFx6jJ'86|SVB&(r >sxN#7j\k~}9&#WD4h8ζ|^Jc&گ7,9H /t}"hLTE<Ѽè37563$ jy4xYFq{}˰ r-[~zo(а!-𗍕1+7 +\:9Mpl_uΓ_wȿOR"[+pKr}aYi1 -,T{,߷k_ou2ܐG:AX+@In_4ݘ&S2_t^E15q φfH9̍k?w4#a)\(o"вM<|*Nyzx5KYf!j<+`z7 1ty 1$ \oiZ*$PؽnB)SHELs"χ|@~85vmtVѰY4åcD4g"[nO `zgMy0PqP3oE^ڝ'Kb kZ A_/ 4_>z,vn}@x):E8Khؘ  QoCu[rf71?ZҰ{ "ӚAΨwL7iδjN?Y4 ~\ ISM-\옐1ClP˩dža,P ?eaQUf@A] &yr߇hګuL(E"yYJSG")Ջo&GMkkBdTCv,[(c%?[1}&_X4V pyGMzשW|8z`LY am8YГV$ o3InM")_ø~2`Ɗl~~4$"8sڎ"/~LͣK~V(iTF3|`VM'x&!wJE>OzZ> !E9 ` 5waVL~L)e7Kg^R׹&h9=A4sY~WRg׋HS:|eqϴoeFAL$ ҾRYԙpg2Vei,U$> @~/XueU jC?IY U,ʥbfkfO6kk420' ]F%#ъsfQ=gftoޯM#ed1lEQ1Y6J Dw/|Ո'hGJs w+pwuB2MtFTMm/V&gh4ݟJRdQCXc뚱TdUWJq$H-V9ֽ|l]qʺ2ؚM_IrP?2 | }hoy 4B ^g=_D׳v9mV5%-[Zi;;p($ %Z<Tī^ zF^OTO{@zq::5Xa'?QwD ӂo/[|D$#XOkHˇF^sܼ{E8d{t4$8 &C G,A$T+8y8]_|#րwoq^[ʕˣ!œXCAKň+7c[cJƃco}"'hٛtpӌ^h8֋ qF3B`߬G=oKBj$Jj5,0gg$Z&Pk @q Y"Dd,Ε0܍~n~C_]V(ZԑQ*DksJv'QqUŕaq>XК#Z;sXӘه $5d x $^2db\[OKvj)jˑ}dTh;^HT_B,]yyNW.k|H"xi{5ܴy& YϪ.d_= tGhC>Ř}6b_jC+EzHR|/,Jco؀̸f@.?>k䂥KHh̀=uAx@5}KL;M0#}$KbjIv.Vo[JZP'Y@ lIq ~ZCMe`:um9ַi! Pwwsa%YX$~z;Թϻ9 nϠp;g5>hS^su!a HH Nʓ:t):M3% fb4AGE\w&}ιU>oջ!k+X {˶3ђCХ^9.Kw)|8a߳1s"̷[ubZL!KИ'j^XDžK}0ZxLT5`S2:,n8aXXۑ ;8Pw)yS:6 [8'?޶,a'uNѝeZ^|9Xm%ڊ< [#ZЃJP95J!tL ٴ} EpWj9kRPgFѦ೶Db⚻O-Iqנ%n %Tuq{yhiyqoSYiTqNFkXpC(cLmc ;gA>_3g }u#dzl7E|vKS 5lRoryT8Qʴ 'NdŶ}͚{JA7EP+. >upt=k%ؒ E7%3'sZHB%ӵY؂QHթE 1w#>:k,6A):H!,l7`z=CNj|*-caқZKxT:^OV/sm>a=z 5]^%C'%7Sdo3);8՞iQbjx 'VPtD˨vz{;؂2現{h^;3IrYqj&uG?dꈷs *Ai_c;;{p$lZWRr\)IlA!Zfv^zh~*W-ΠFW{GH '*?DIIwؗ=_ ]"q>ج4/QF?pl$i6mQ|".+m}r D PeN%4ol]\b.jNXl 7P3 ug/|Q>`8,.^xQѯGl;$WMll6G[Pvt+^5> Du{}b}2pNOa=%0Vf|p2RzԶγ7rƷ!ǃ4_ҳ&,<<AP '6d"5z/~4KQyU4}""xKG{%!`gϮK@8rtxd6kUIb>Oo;USL'}>DN ~U9 )4ô_b.rdg%F'7uɞ$ P`qxIlҚ fvr dnM#WFЉXZXzFWjc2Oɘ,ʮjg)] UEQ|! E  (ӊ7’nQu=&-$cͦ=87rRf/P1G:0ugUiSCr;:~ Ic4e81 Zէ()baT"j !A!T y1ZnĒZ-à~)W@tȒl Ó$Ecdc齀qS;zn"hPyaU0 <qcd]r_.1]TTP9_{wDYKGX8m> fȝ X۲SZvXt vEwcuZs jqtek ͛p2Xyɐ ݋}]DKo_nz`*|}+aUiǤvF 4nkaށ\:A/3j{Mog;Bh 6 SkTݫ20Ējrѐ)?He*ӒEl8yOJ A :)0HYX"؏XFԊ~'wwY S ma~J-M24GpXXK F.m44\^Dqj үRZwur8asMʖF 5TPZ>2`~b+U07š7$c? QwY5.Y(Fm݆E>ʹ/'~FM᎖#Dib"G,`ces?!Yye_\_2m17Sn&7ń߁)1^Ln=J6V40F[J 47,/$j,L1nT ؔ k=~| 9qZߩs^v7_8`:UEQ$o-5?epe |r#' eLw+mY+Į\tu"|ُSaT!TuJu0X诩ה|ͼk[l&SY 961AOS}Rm߈!ncsn"n)z(C"e@RB(0UR|K^kJ%haɶݏp7Vi5 /?PS#>tm=؂ˏ5YI4BO4Ű JUB~idF^#g#i&bW'-S(jYKZ^ghLJ_4o}D63yxK{Ȫ 0X_vrdNAu.n?E,5(mS^$yhnK%ͻY)8Fޜ%o[xކMyZ*֞͜%)^¥~aƑ5cS/'kn:Еza(x1cNZXŢiEq:#; ǕxYOYگJ=r53Ts[$K ydJ oox^!DnxŴ W W^?23\]7ecӨ3[k K6™"sV==KI܃3g*]r9@LQ@!IH1f~ kb"9!u͠vpG$`R#gԨeb-cRue \n(jS ÊpW n\}n@jU.l]R[v۔Y+Rۏ*4_c.%4·{mg5f|ʱ,ȚkŹt]2Zt3b#3 'ls5QpW5=q;g>7؛&);anbM)ߗ:Q՘`Ȋ>!AS5kcYG~K[j`rBuwwmCx[ _˰@0CnXaYLkXD(FؤJķZIBIjA"qй;_"*b9vn%MɻNL𲘮˘6YF 5>=q.Z D>=,r~@PpBEd| JDW'9L5r'3aQZ1)1vl zxGm?Ot|*VBRO92){lΡ bK+7iGYB<4T+^֞\"3OވȊ/BSCL>lS6"bn"4ym8NcNge;TЯj}NPblT\_+ݢ\+R7+[GΖ(Hh'a5/ZI޵+^'#,SO; 6_ ^#=L]`{28x;g#!Hun+=X_*P9VژPm qB:7kx &6;`O cȺ ?}j^qt,%RU'륦5;2`5,RA}ݮKR_ _+!!XbH{( VP>7RSX>&cvTCdbQ6 Eb qKlfC BV]aS%Vޟ`nߴ-&VΨqnw‡A$j5mb~#q4:b (bD/bD473Bekh,F,z<] ֏~p@U}l@:@T{rB`Ϛ|YQ q%43#lu=QF*vC0] .w/gN|$p@1]]DyWj)|kl}.6 J6}:lbJl+Hn70i[R5dl@a~tk.Fxz6¸۱ZpxNO*\, X) ɋ`j|XP#eTG"[Z;pK8A'*;F&bCjfHSC}6EU-\EKUl&P͗3?^ R $x/ILGf:AWϮ g!ʖ--΀22{k`$t|u>HP_=[A ws ϔ]F%nhƥ g5n!6wC'Kge^u$GĂ\e/xQpx`wެ 0 -$#_\-PW ͓rHo Rl tQ_WF3[g=&RV|R9w:^7i `L"8f&)"}kKC"u5MȦ7b Ep 㓇E4DdO#0+%&sJg,14)&jqA_/@w3d!*"kM1uicAx'6̚D`s%=J5p,tX)ԜVfh/y޽_ldke S>Y~-\eRGR^HҩJ%"iu_73Sx(͝802+LkStA%vlJ׸cU'D~Y(Ή8Jx5Hc䋊^kOɟSe=5qS 1C[&tX? .?KsݵS*Fk Auk>l&:-&~it۰~RgBv`)qo5>'6jQZYV}ģ"Cc}^2(X57u |RB }{Z7Tئ?.McT&K- 3J`duFuG`8fa*:)F ޵#y\+ѣp8?1ax䙞j|6XsTPeK(7E)@h6!/hQw}-B^$zЊ0%P.>8fEItT2#j@?3Beˡ~5;D ßT4TdWnIr頔(0Q;9J}1'3qf1÷[ekZ &D3x``7LGj"Jq2Ev̺l"F~+ĂAvGP05}gN[OwQըp|(1)̕ݼMSDt7bd)Q*W l[!qⰅM]@h1JzO*h4oJx=&e. U(v M]hn\^\g[C Yj0`_._!r>JRPvGJχuht5*r饖, 6Ӯ1&k e:ILE^ W40WSoV'㏏Xc9nzl šaP.{ -\7=*0ax]LC )ӃX$:(HsMAF p%.MS~^<=t9əWeCX>]-zKAWa,If~S:ߗM]P0pG" 줶?}=sP9;1^԰6@d-,QVgܗSʶ (/p0Z`1*==ѤpK.ۻ&loi;c'g&|Ȯ8u#Y`-.*x:-I}0l8Ș|dzS{w|!9HYZjqkN6>fź֨N9~~Akڑ?h/|~@ 0&.ߣW8Z:pOALH~m.NymG+<~SAZ6YI}Sc:4x3o< 3-m'^ .V[O$$,V/ isI#hմ%p TV/heʝۚGmg q5hz6D`a^tUwhc()Kީ9t D\aD$nC4cۣPd^ ]vKh/;' NG#9ŠQ}YfW\r8h~B'E`Y `n%` Z$/8a|%8J^br\T[f)|:%p_®~7D călFz%)sJtHm ?3;xc[x ojԥWKqG$x4G^yC]nFҒ,>3sZ}%k >\v Paf,w50ԑ}OTJ²VAVV (7"Ô'X6RbnuVRB"yi-8W^JEROKBmH$ <ћ+!Xh">U{8ys,R*/ E.Rqij0pge[p9TE5IA4٢LS!H NiQ9FHKo> 5cOe!RSb?'}d?t jAiŤ56kև8-|6%7BnpߵGD5HW]CZgMYj~Np 4[*}/5q|/Ըa@F+3rI^smi\52%}xa7!6YpXig2z#sea/U-&QW)LP2vG5WܵYrWu!>Al2bx W\FX @XөgFDa@Ћ2zc[K%MH߽—UY^Ӓ=gv} Vĝ:< ./,K$c;eU8  49ә7Wz~ly~KM;;" d8縪:, !c-Ys}:HeYumܵGƷnؖ[M6eDm VBn%Bz\RF#( pz6?w+\ۻ- E6 V_oZ$BdAR.9h] %P 6˦ÙH,@D/omB Vc濟8srx%9`2=h:QQ? kj2uG=WwWSJ~H2fT X&Ny+ meWg^K qױ~Р}-|TlP<?mx{N5oz 7Uz6(@js9`ūXl< 71)1@hw&$낕  vI1lcc,{nFS| 5 AmzFޕD!f?_'p'F#̅ _g>LXDb/BM5Ƥmw%BJ^Q0Uq61&z?Hbh~-'\әZ^TT rWgg'WZ_M<#Ka=qRM8I$p}^BT3tMycu ~f V ˭Vs~:${ͮ'!(`I\+I O>AǨ5V[Q4:"0OϑгBƳ1n 4Vд2hno Ôz;uQ&p fZ^^HB,F{|:B@MLBDIe^a,e"Wܮ!@_!+Ѩ)꒫+:/5eNxU\i ; &o \YthKͫú J̨s`n =6#RGx.P}ˀSU-BpNjaS.]ÎOeRXd,K6fL=ZDN7B$],!ԣV9:}Ҥ,8|t38.PrhbuCe؋jP ~휿dߏ6gPJr` Ā#?V!QH5>ςOukKTuk| #j3ӱHb e!G,aY3FTs'?RJism4;N=-hh0v3X `kvA8vEA=.W \rB9s^4eȵ'WFUe pI6qA!5ZEߐݚq -gxm 7asBm= ^ZrPwaw! xK=Eh03tE8x_]NZ^|wI=1hSŻBL ddi\(S5-aF7Gr57[—jǖw|kV]2I`?V [;ւ,l{1 ᪘[+m\i^%P(򾪨.w} TEC*22'c?Njji1Il.\GfS@-9>JH,|<.UO8w>lC܇<5nq6|{ا#w+}$ă9Y}X;K9B:P8aNI%wÃMLo-MegB8 (5҃HT}Ra7f5b f\D:C' ˘=EM[l E]OؙbC4 Zkկ `k&1' *|j6Lٷ3^lI}tkp nSÕHWkޜxMoڭy",xrT!E|/?t޾oS} EFtnw[i1jkg} D#@>=`S)D"j<:4Tei7+/(4W/&ӿb?H–Ft 1Ījb2 Hxv*zDT)N^B^ Q4ʶ-=y29 Bc3kmN5*zni qrr&%a(m1QJai,S "|9qQ@Trb*@RӪYR?@O˴ږ6)7b5V%;d>$]8oL,9_x^Å3rcXn(~xmT&;ƣKհ jD[Mz99l dXr-]Ltw&72L@jWWr GdqM (:WK ?D `iƺ MFAf 0 ) :z uhVF6#?ONcVv9Kԕ!Aʛ`,QVbĂЍ;LOn|>~>#$N/ "GC-|X?dg ;WN~s#~2"\iٱ\C,KUKO) `Yh`kŨWfc:OI-a2'BB;Q]EԨ8 Zqd$ ah~6b鴂3^iH_C;Inz|!#ewFiIKy?XDgR,'_rbCk>q6w 3b$Œa.sV3֚Ǖm<,YLe@CI1 jI-T;ŸÌ~QybarOjzz 63A +k>[Q@k)Q]N#L09Xw㥙6dvר%jc /}ދW < :Y]E:I~C~OTYC@ Is AZI6i4yY;ٷi7?0}#ly;ÙV4'Ui5]S_[Fes0KeH8BFmD"~3)%f\UмM(71@-5^Lo"yӮN3w 7P]Gl4 0R!02x6zKI,Ė oTR!\IЄ,6eДOO;pYP@`)^" cG? Kն%rȡő^d)/>.nLK㳮{ ZԎ?a q[78ItB-P]މ1yRgNτ6HC`fQݸm8:EXB8= m}׾=g0!̷\:tAl5kOuMUd;äzdN\+օ+qESVDĺ ]khѩ /U(4/o3<)TgZ6k tCW( <~ %Gl$x g_EW!kr=c1tk!ZX\7g?!+%@IЖۼH@c[M*_TQz $6ӭP8hfoBi{aCa ̱6i7<Ma I5O4 3sSP5 at=Upo`ީѺa 8 8=L8& oBξR#~*0dTA/ aR>`t"3I5MkhJc!MB H?߄jmap@ՀcB2`h%5<GW#d)e$~Py.|zg`{wN0`䫤-N.>9/ E6-0n/q:]:vj;V(Q Ѻi0 i[}R)<%?F*p6Jn's̛rY>P5|O"0"[eWœ=/~7 T[Lϣ\ n #v<;u|P}߃l 0(&X]QN7i)˺  kJDKf?^-AW%ko%hS.:=T yLTGh/&A}h\"[63f( 0|v=kzhKɊy)br:|ȨZ?ʔ\P \\WMZB_~)].d톒V:>fk+8F)w7<z|$ZZNs :<7ztx~QmFtq|vkDvNҶ4N3X$r xMj2<c_IL˂/x wĵFdFQb_<DŽ82'S#y WRRti3>9굡M i#\܋Q|QEAqF/lj:uQHpxhg uvΠA唌mKu<;EvAD4>yYMl©ᄑ?aX]@}]$sBX{g&oR ^ ,v0Yɼ*?gY~$rDLe)%Z#n{.Γs~+FC7{P]x yVe9CiJ2 "6 aNIM`3olR?0F{7SHmgobFƑo8G4ޅꎺW:k 35s=Ñ6}3%.Ӄ+Hpхo"`) 3,iHAhqI.J/pf < _;sTabWu0LENޛNZPFfޕfc$gd0d]HH'=0ʍuWd致Pf to ^j~: #ڸ|_y.۝CQ#N:3e$1כB-|p7A:;@`8|z0D˚^%X"SfH째[Ao)Oȥ.O6]rvmQm ؄E[>M7t5g~Q>pǶ8-+s:" w8P0tDuY~Yz)7xWCR 7tB/{1 G !{W^>uלBə:KS#C%E$HbQ*o(SKm W5kͯS*'B~q2wRy6#W`7S>;O%`#E H ІTc;6 WYJ݆gԌpҒC-eܒ;+N(&@+mjcs13tR-l^){ӚP`Ќ*L +wV< }lü^Wre1|eSOHZ6-}ӠOKkYv %zpOCAsVJLj#ʄm>H#zuSͯ 늽o 8]|IY-kRb[IEWlČԇ `t? SZ}1Vh}|+AϨ%-X"Z 3,OR}?uEh"$Tj% :9VϔJ)u$?p-._Tb:4i)~AUc͂KU7XkŹ;K/f 4^0\gqu;Z4go]8B=P)Vި3 Օ޴ ޵c-8<o,! XIJkXFFQR?@>Jސخx6I~q#)]Z>R%A_R "`b?ECzHGw NS "KDgB%Q.Y+m bNsX!\冁S 3&2}]1a5[m|`Oq*+7#: g@2~$[]0N/ru'XxÖ,n6= )B9VUb^"2NB.K3z p wO‡r R&r#|$Ł9+.e̱?%{\ZhaP㮇bb3tyi`w*@iS*D"tC.tu3/ 0PK(ñn+HtA!UxWjC3`Sɢ2"\XGEAx&=gN QyOERw;yK`s.w1̸>_`ݴ U&XR88#<61{x Z-yptaL 6=Pfvz;imfz[)V l#v``' VCr?^hU}"y J )6mEIBD]CAr@o X5?H9hMc͓CMMDITolCƪv8hU aV9(g ĢwM~]:0 tE>!o MOv%=vJcB{@8$ÖA %5܂S?I6P7"7 yDGc&7ĿI^ B-V1y |p,tSM$\Q֣n])82a&2~o8q_;0K$O Nfv=yIAL$G:]'.bv ?dmybϿ!$!ܜw]>ܤ2ոX%]E0IJz;J >E]Am)EʧH;KIYmQ ;(sR3luYg#Px@yBVb3ґtr:蹎| BO q@(6@w,I3m\ewpbfcoGέƣ`3+z?I@k!䧶$; eJdܑ[-O0s2)ёIsD'p% $ɀ{'̂uQjM;}^^k{2l2=_9݀y+㐫 #*h06nSV쨖y&zxqZ|0&5!uƫ鄯%pQa/Hq !kQo?}?ftPᴳ2' EeYG łOؘ:I5Z;{Gt;/lJkk`#t䥹 jˈlʀ7݂fl:WB#Nrq5BgBjSOuKS)B qD܌s"gPgK*,:{irQ߰zu-pzRȾjs8a\8m!Ubի7pi%٠ؔ*7nH ])$ih2L.X.k`]o'h0@ak5b"U@RX{dg[ʳ%Vl3~2ڃL2\wuTɾ8zG `L2LDvlQd\;S@VMU\n*#dyx?꠷7Bb UW6^XIک{&)1IUH5aAdԄvPu)uu+"!7U^F}Tf+2|a.Jԅ|v~9AvVyv v.>YwFɅ׹Xu2n6I~ȱmPF&$ )[7LpDO̐2gهʧ RYZ|{1u6(D㠆OIndDǸTY/_S-d9D2H|FY_ %Q7_7ΌY] y։ĥ L[a^H &-Mw~c TܹYy$f؆3% B2Jv=t75a t\ uzӿX i!R!#u>{zJL.` 0^~b'ŵ0#Y{i _ ݙ(A[,7.MCT{0dnE@*l 4p˚.\9 n$lmcv!a;D4{~OzdԼϴr;LS비*I|eK+I*ܸQwIP+Iy"oI:حV}όoξ[gJZ ™Nd&3f X9e?Ҝ~'\BR8 !aᔣ6VLta/ F_c +4?"3XdWk6~m&r^Te=__Wiichfn"s=DA ~:i]a-"rKERd-NѬzݽſzru0Kcr%HH/$$gFlҙp;تB`c aYt\cK3ueA:_ej~{_N7@Nf4]zw7.sj/Z]TK78@'@rgF) GcZ^ R/8P1cRZɇΌv+F[6{5 nƊrѹHr,e}ξNkZ>P u/"&K JT󤢿 ݍާѶ627 mAȗZj ,{RrlV.$%BOh1~Dȃ*^CMԬ8|1>:+@ 5._t (fȮ qtnm#+zkx)׀Vrl/d iK{cbT'p&Ѥ?b]1r =)Gy-ydw:;AZqCOKEP{}DJlJ;? 5PG"Uum)߮Cn*!F)p} Oy'cYw3պnI<=7'WMaF0';^e-*v[dirF*O Uf_9hWE[pQF[J:ln ?FRjkӪtEi~}4`~Qh Sؒf^ I"5Ob(ШL!x9u|5۳ag즥dN=y_];"|Hx? ;wTђH#^~=kL{@sM͓ɹ]D|K@õYpcYng >(9CtLo0+79I}n(pFnp&]SNfFCJPC:a+&YL@4&Om@#]%d%ic&I}+#Z 6 ΍P l>\I+Ϻ ^JticzQ䱿-KVfM+eݸvO=ٝkXN~õ0~;96xTIA?`I Ҍga^SLeN7DX,Z.@1hF'vH7!o';~D/1߷쪇BB`g5 v%!紳ni @? \K`-e.`]\iC} "\FdO'2Dޯ+L߫q͟Q;xD:E g>p*"lSckY|qpY#5AL<'SI*qoL5t ixu5Ї 20l>}ݒWUf́E(bWI#A(9ʀIV($ 4U_8. hL]!5:3ܟ$5i7]y]un (`IS?H- VKůt ֒3'c~jLE7d$2>VvJ?wn2̛aKD  ri |3՞ Joc*>AodU읔OTZ5ϱF_\7P1o^]s"Vo\{3l-LpER-B ԡ[}Mh :={zxq-\WQУnF2N[鰞%0T cq8kUOR/Et?rfWcH0Ȩ8xQ s,%oMjmhoa_Xk(HjֲL>7&iX턪 w>fMmRf{oMZe v 72R3`h?2dJUB =4X@db&>LhEs$fkKnf;  u<=i\N ajI*[ߵ# ʧ%ӣM0~2a1Xb 'Ca:Lh\_U:l4x;z$59W3EEތof9G5 !0/4 ƈaSeH-$tF ?|<jQD"8}YwLorMšRC+G)>Z<ţE)`U'Յ^`Ы;5F8pqU#*9eJ7Lu<+riG* cj7yq !xazHHv/Pu4Iq.4BO}KbO'RzHXZC%!sG]!*h [,"Jk H LƱ=],])$`ؗJs3ȅQ~U.`4{IdUIEK:D[m`८%bI]"Jn 'TC=D䦡\vD^nSt琔=%I*ȃ0цo:U#w~^ooFP' puI '8Rޠ=~/;}A~`2elcv!@V^#x&)J% ݋͐i;]|i9bC)4V*  C5]K4ǧsZm+z=k~.lKUi=wN/SAKqPO,Tj .S&Km8td؂f'SbbQƀa7ٻ-3i)d3b9 xl 藎-U ~WGd ƋrQlMJ ǐsKeEɬoz(7 )ȵ{}ɤV:7YZ pg[]!1_¯Q<wjzP] Bv데o3,KmꃶxXNnq$V@ֳfqkrdJ,B#h^74k8gfh?s!V6Пz+Y">mX%.Ϯ&J=~ )Ci"J [/m=m w(#$WȢCeUMC) 3%*/1%jQudpPjc 9mZ}!k l=gOY=eMxqBObqX.|qYhj O =:K "PY3Wcn:9tcd{j(v2MSjsZ՜>̤{LYYGV&{;R+u =c`y&:D< ~2T悤/g{=aK5f`cYha hGTX߾M̹RTiS.kECEk&K,ӠPZl6:٥C05_r!Ʀr%ga0_þl=v|<vg8 MN j&#>/5scr5 }Jj rDѽ.KWG;$I(g N*"-53~/b?*i5Q" N:xÝ-6vUS̫Ne]&F.PP_T甦Wq&V@fTVhͦM'u-P"`?_8P!WPy;ue'L9SZTBl架RZr-Pcӛ_.o ~tk0Z(J}!ԶdLѷȍ57̔r>քꌗªOu  3:04HJS \y!hef`[Da oaYK]I]3XKN==H31zuw+R^H&zvq4SnkŽ\E}Zxi[kkmtƿY[z0 oh0Š0Θ4iưByRb,*k)%1D7"'rT=rC hCOrcD!l@SDDzz!zvI9&|yji}N$@7lKci=Y흪BkPVs`qÛxi;c/ye}?Pp.gtm>>r_GðLQ'(2e5%3V+Gx` #QX Ov%~a\wxd V!MNo-̅ND}VdVO8\_cp=#@BҌdx_*%)׶ҁ6`^- O B˩cRH$5,B@tez @B״i4MFҏ^VR`4!Fnk!0d޿Dt>Ou??GŤ=*ΙtڧSWo& &T Ŭcl>qS2x̭XǛ w"iŞBK "Mt {ǃCQׂhG/eAۢkϼSuъ5?;2}CY_Yl:N4eQd}CC\yP|k=y]£ʼnqQnci K: |qx:tp]^~ص[:~D4]%cŪNy]|W9 \#[Ҟ~X ,ѱ{x1o[Me:*Ϋ^sei5o#(@d`uh}}E;TR6۩~L]pLxQ\2} ӃŊ‹K4 Kh'6SǔqǡnuJtRxϗpFQ$ZIY[zՆRtg3C?pF4%2HCP-:@1K<0h  e6< wvC|({ǎ633_m3̑$fbIڄlmRE` ]%&'oS!c ^@pD%CSnfr2kcjfzTEbׇf @ P(476JA{\U]@O3h⹳BX*GU|S.OrsbG7e!aG;36Q{ ܻxq) 8Hn6V!Tq%( ΄˜`00a I1g1y7v7J jX2 A5&lk-iW{2Ǯ '3o4!+ ЋlC c[G_VvLd|>o^O5dc4D:ʯD„3Ơ- lx&&?'H~L 5(]1fu36/f8ue˳ 2{غVAzN+U >[{ \0u5cy0<,eBO&yV۷ w7:L+UnJQwVQG3$PdԂ|x80UV9PL9?FIzrۓp%tn[ZlLҿC'#D@-! s.-g)S|HuYiq4?"c:TB jKhtHbr1oE ݹAS*u09.Bmœ|$'). JG #w/! gb,EDެnzmعAzW!׳vBMnPMzY{ ;t@^ʰʒ{y2,o-Zפ~bG%V s[plC>ۖ뤲FO732~UC?O6 G'qi>g*Dc͊b!ښB?&(o:%)4Y0V2A)8IȄ; g͏I26{ .JOgѹ ׇGWQ1 nc5QqQQPE#к9ׂCՑM|IF12'iy浴@DM^E,Nd4)wѲu#E4gJ3sa`/{g`{Rz@T,f/, Z&: ?[29.i-o`59S.+\'c nj':`>GNfӗ6{u{$Lx/GN4+yTO0ɯZ[aQ]S=nECj`%|{Ҩ+E=@l+#e-kvVB[\6n 2WSՑB-/im]aƫ:mF.<P$۬Ti%]/&ok-Aie3@x\@ 8zAfUᜢ7ef+H/4}WQO`m+۪QFJ<_)c=b疘FhRyZ5O;Q-pG^Of /J| ~4v SMSή Q %m :nZׯ_`d/Y=ȅ9%?k|wԐ>tf:} #\?귋ʆ9 lI_fX`@|g݉]۰"+5}oYPn 4>;#$&(nT@Bގ=`1dʶT0bdt'y6q7|/zՒ@~n5OM>~Xٻ l[Z@J:^UG@fOԫ2Ml' |Q,$y" u*`I_([c0U2:KUkh~OFe ~sQ|& -`Nv!0XQ DxzV˔MS^_XыRVW H(ӋoC (E ^jG6IjcRFg1> Ә.R-a"@o{bc}Լ RE%;C< F !x~m>+=h\U_ƆsHr)]9 Ô'I:>zY!gVMڎjXyzi<ԄyPW]<B9ۯdeOs x㸰lflH4xF<"3Ϻݓ[;']Rq׹#kt#:__毂T4s%m`T>Q.ffVחw ˩-<[>oE!-JF]U6߸*V薘ҥ[kjiOEkܳnJHXUD)]vT6aS4wS6Hm0$x69'6~$NG-u9뷪r]*U$*C(ThI'v$ baP+l*[+̈(KDN o _VodT!g<; 4b&x~hV]tk<MՂ%+%YkC }Ґ Ƽ:/,;yTLh_Be=@NB'Wn˷A/-ע />T+I>ξ>N6Jծm|4k -R_e˫yj."A#'+*m{,5oj9QGP4Cǎx7AN6@2Y/QK,JA|'tyoV`L&ҕ гsUC-(E͆-iEjH .`}gM=䮡dRq|ߕ?8zC#Q##WH0!ܕ[c눈 ' `VonP9qϔ)e(:lF-HpL6C!vVvhL},Lo9ܝ CEl_3jǼ}9)q-[YA6iRKXh2I_%2=~ YDZE# ՐMhQa|1hv֗עKw.IXP ǔVkVTmG͆+ kRB׆ w_ﭘ1#*1]-%u}:I%Wߓn~y  `/ D&y&-SP* ?97M HLTUKV.pFhȰ 9/I>?WNtSbvwIyp=) ʏd_2T<_ĕ]JpQ))~gյuJ@V/}0i6)~Zd=?WֆYGQbՀo1hԘI&Ņ uE{ȪG/ǰtB bD({%!rA> ND'>Jg#?bSr(w=|:ufQBGhzKj&vZ@F$oTN-(FlwIz5JG8:]Ǽ/}ËOg*9fGyăԉO[7?kז%Srg_(of2+Qp׶A`ZQ>Ƹ߲gيq&Tڻab S5kb⪻琊HGTYmB kW4ZxUr(RR~"ePj!ldR2 7q3jBR I$}ǹfXM!^ӫ^i ~<Ս>b&:8`8CP/7@ y%D89:p+3 43q aa974[uf,ku"E +;1uʙ6 %,!|-V;FP~b(;&N6pVd}~qՎ;>Uj3'H0^~hQ ZN)v Dgqj\-RaT( kͥtcWImJ#tEc$ ;qWol1ϴ$yX/[? /*?j@K_=zBRYj{)mz"G4@t\R"jN|7JBw\#9"y+.@Z_^`fc+Qx" Dꂼ灴K ρp@%Z[}6bX*K 퇞0,ԃyU-vVW-VjP@W=ؑ.$fvҙ ō;x`2gZ}۝\ INU )'{!rP0ʋy2>~ϯIf 7-]gic־mW]EB+Jn3~pnDIO 6"^ʼJrY}XBԵ?wn5w?U8T,nKT}H*d)(ep(~GXRg4V-@jO!N)46@ ^0I$=AEd 3hm76z)HF?_2ɏ IA9jլ'?8z`L%n=weU|S$l.;{Vh?mϯ[Dq fh"^mfC_C#7xf%]Pw00 sqȿRD|Lly&mo/`mZlTml.rŽ[y CPEg;vIFw4J 6qV*Q W0}A/6;(v0=tu+:'2?䚲Jg-ri;FE#\$kN ?w bs"ɿ5 F=Kvw%ԁ(Hn* PՀ 5 ~rC_c+}3A M3j c~\yoRlU؊p[v;xSlj1Lo̱N4f/{ACi%I.KPv%`t QR{Eדhz訚,yn*/ f[0snI1$?( -JBsY\B6g_YQRRc ro\Rj|Z¥싥 e1 7;Vwh2c̷ 5(5CY3PڛWpŸ#_݀'A@1QV10 dHksU U߭6D^e]@"A.Ҩonh3{C&1J_P/3:ʳ2Pi:p|Qȶ6Mژ|-ybTi'V4 f~*b0_0"[l/>GF>6@82Z䳄9$P_1;l-cQeoXZ5nh<\ٗx e)mU8 mA!pמy&)CR22wp`OۤQI~{;7)&jCyN̯ժ+@9$ Şq., Nw7tA}2W!;X$%>)oY)@@Tb2 "QRMHZ9kPKe_ "pfwU) Ow$lO۪g!Jgo$H!,\#*ԏ@#In `_9JdInh4wjS3'# _(֌#SI={: tBbJuW=12ƶ.?Ql 5/e/Š -`ṣb3s˷YofLj4UQ" <#y8{LO6tXg]cy\*^6ű{|i2=C@ha*ם$`zߡo IaI}(}0/FyQv6׬Q䊷5\oZa`+-DB/GP%HL)zCY#'i ͼPR[ n3^Bh+˔5,Ϛ>؁Y jcF8/uZusst;K7f~ K>X M#pP$8׬p(( /!(b\p k$'١74O9!xTo掼ƎxYFh"+2Z-EzlZRKImR)Piu&fzL2PsV?Gt >072g CI7K'PGpOKIZ ggfjKP>J xEn 3xy٩ʁlJfU ud\sA1 ɧ5y5m<x`vMɚttQ&k/;~^bTyų Ͱ}.jQ5$؁x דpf*\cVRcgbb|1]^TlvkK]y>D%?GhN #3ۦJ沓hTԼա!Uߙ'EzԚ¹Ps0م<rn~$'6_)g$CW҈uI hMH?N{"տ@بB4y{W qyaSmT0{dtab˛%GT<:cZ!?btԺ3w 'q}Ԩ cdh9)ґ?߿*#^cq2(NHN6دX;UjhxA?'vuaqjH $h%R0;XO>]k97j9 hcflg"BE:IʴZlV|5>w7=z)f͋+al#8⮊)?r-{k$zwd"*1?%Q'5 HB]w7 e:^,x}!ȆScaAv }:Wu VZbzJoFgTq+lN=ۂCӡn3jVjT)ZMV+:;O y??KpRAȒ;o1j"j]fc;:;oo,\\;6HFY ]hd@®?OR>T<DD|j%J*'7d~ܖ,Km@ )ݲr?*#TPƎj/kkdi#O~i(qrSSڟ鴷aچI.{r!fj ,,]aqKmYB,wHxͻ2 BIb^ TH<1HrIU9j٤" M.Jsw,Ҏ sփe}+z%BS>opXgА~8!!фr=\33yG fgMdaL:m,S@oK QNYadF"D@RW}2wmd!| 2(H ;)xojٽ7rY4 ZPZW(;6JV;1;8[k̉.`>K@7غ@QQ_ma{Ob 6c; 8]$abg0wU$?Y]dOA0E-L ss}>"qes7FzIq!oRSs qэ0cSt_ܒCysrWfNi /RS)6{r14=N3.NfFeI65 i3٭~zrhµLjǩ}Xئ9qVP};\U ;6Oƕ V>@S˽7?dI訷;Z±=2ѡ)^*k2.eDZohE1f!l)@]se2 cKǐY/%3Sd(\TQ@oV;ݕ`Jr>G1?/v76s"볶&sϨ\4rp xY~JO&9r'O'%4p}:`c^ CJf^f<һ)Մ,ff( zKvjP)Z ВiȊ3 Q^R&Vwd!.FL XCoQw\ .9!=*-C8_[5LDcҳ{5`B_M|B |YGhl9v?;$``{hةd:'k2t)i]g @ }+n@1#(|ܳ(Xjyoը)ٵd-jׅ{.o!QHh.'Hw4-ا(&&@7'"h͛Õ91ap%QܲD{*!YD3)NKUHD\D '.UDmL2"ã'%>|~[ \5 T&n{ ~X$>}EN7&: 8] w9wŤw]Qnϊ.w.,"Jirmnp(p3Sfk@vPcE{JI8jɓ^V1ST?n<}GۙK #%JNg–9" VvJ'f g 37 _ ; U:7F]:;یGG{K^gsj*U]vI"܇x4+!`K. h0ZeAUR'Ħ%K?WiYSR.cYjpPBRc{1+?8IgOI|ad:|S7`|ohV˧wgeTr]QI@WVFCp)ٿn#E$zPruCm; ~H Q DȰS ÉkTV`No*OAmֽsO=3"ޟwZa$Wc!'p{8Ĉ/-9U41WU' WJ=aVV]KVI>E%3MP#v:-it[_bۧ#Ȑ9I|{aFn_Ov@Okߴ%J{)Pe]ę=(#|s UNN{Q1Bdc7~na-fWխ7Uگ8/2#RQ03N/@HRð@yԚPn3Ha[g2V ~g\(T%ʆbO=\ܷAdyfr0qUȸ݄z1A6:uln[@SsAHg,7~!RBS{F8VzI޾QWNG:7L=Rv.nO!5=AQ.VcADaM1_m#:mw^Kk1uRd:-r,+K,-ÿl`?a>6`!ZuJ㵔gz,j1,,&YqhQDv· 0 >c n@>jf 4W:Ad`0bÏ=e*ɴE('ζgx1M߫5Hb Y57)߿[ö$y?meRFO{c1fF[;d~vWo'p9mwLX;(X/o / I?A|q ^얲LEoqzX!jd=stZ3 i6E _cp!p#A6sX gZ+Y^OMgB0k0-FVM (TK&F PKfΦ݈3R4(z?5<-{9 g%+i+84ٍ zTM+]n|Ñ&}:J3e,,I`^Ԡ3PUX+ڡbEP[Dq{Z ]rŵT\21~ GU fS(Y,jE!Vpp3:ĸ`T}qL uV5ݗAU ab~J*ݙDspJt".rQ'¬ hvL=E^R 5ܯMGc3Oe|_o̫gk9>o+}˕П`c8U:C/Τ9G1tX}n%PQ\i *MF 2CuŘ.(832fa$_D @fqZ ѝ0e6 'D?}Lrrӵ|=~'7K5\'ݵeXPos&E:{"B^9.ehZ`Ç)ո",hР{ʇq{p#RݼN`g V~#PoCEB9Ϧn4ai”Cj)ͲpXʮrzpuS)indRddR2n @5|p$/hD3oMGg`6]'̡LP)0~O>%6Ç ߓ@ &w ޠCVޮ4tydcgjg);@"fF G@PDOΉN.ϥC S6`QB1FyFw|P/0&3ía8f\qCCkdCM|E`ȍM@'梖,;!LED)mI* 3=2CH8u{3㉅}t9+I%{?H^}ظ"51R' `UZ7 NcZ"~J dI 'ԨC;݇E]"Fer#됂\9F ? W\!?53@E݄OzNWɲ*1s|[adbrh.4.{wp='4% yQb m^v^YJQ-KB qUxmꉆAeoN_˨cزOK4.P{?龏XzӮwSzUd)ѯrOȓ 61l5sȸbRT;k,_jRTݷ0֗2>xcO S>N\KkK2ߐ51͹L c;Ѣo@8luћ_ #@x֒flGJagON8hE]6Džd1bBF?E\yyH 3Z= 4u4PMa {7L~E0y<ӓǡ18o)*NJb}lf >O^E,k'uq=B$1a !g H^[AnⷡBf/JW;#n!/< ǾN'>/UtL/Wa F|tG*M|n jwfSR#*DouIէeUtE0:i=RMX _ U~;!m%!VSu֟&~8rēui[1H́3Ip<= Dc?6ϙn Ѱ|-E]R MR%h7-~+T(76Xx;zLDw.ӻa_X, T,L#9"8_XhPͶ*ʤĕݻ;P,>v[ 5ؕQd􇷻޾M& ͻ`xh S< a;>pr({m|Gq!?KG_%|,'\~X+T$0DЍ&_*~\׏ƫfϱitU(;s5ýȔco(Ux{ni|ͧ}ϗg؉ ,KؐΘ Ґyj/ A+\tIQ)^pPEջK~ ]RN|Gg偯2y0 9_vչGOrZ&*Fm@N~S>vb)E:-9m@ &*kt*d@Y- ҸEާ/@Tԩ?֭E GOb߇m@EvG`NJFr~,b * ~ vrH]&Hx 1xɫ{nA%:L6@'3-ީlS~js&Z*3E8u1':Z=2)qCVR}%i@wC g;rus> Ge*w!&KA4ZrpX@ťK?#HO+FT֙<18|/H㌑I—s*fJlcA+hiN$aIﲙhRr[^,zն##%|!uc+F>cx[$5w¹᣺4Aҁ|jMСZzfʿK9 20" 3%j?ji6h }ZR5l؉&qm},no{vlᬖH)ۯT/u7W/rNGb J\G^V,q~o0]8@LR㣣|dȧl?>%iΪFi%Dpr;AX.>sjqC,m8^RqwqңO2~"HY.JIz7:kn%>,i0)U|?g^ @cPu 蚳4EI y"=3t <& *o9P@.Z8+hfžn\s[ 3)B'+.K?H. 5o? h1.aP_z ;OgBZpD)y5SQCj L==8 U@tD_0gQAME$8&KcЂe:,*BF5935hs+X#oZ[iVgElM@W%&ATHg|u 2߅ѧ>_"vw8]4O3#;;\bdU:>=C*@es>BH/ Y-P^-<@(zQgEv S! Dͳ&k@]脈!O0f)_.y 6 O>L\yu N,aalBڎ.oNVL\_F:aByt \8>FBTO9djVd44λP\.ɓpv9؈RuSO9\hNNCGh˝J"*p5|v^&RZ{ףOA&T Ci|}->9M{xWyѕ dѳ@׋{>6簒La/,4 t-"ħ-Ek$S~; S[F8< /zyOY,R<F/95R(hucV{f%/<i|}Bo3Cؼƅ(^W%gk],A3OKP #bSnTE9ު$ -V4IdCX.Q~ىmϫ0Lc;Sԧ J*#4ESԡĪ7!H|Y"=>Њ::b9E,tYFI$,˕fH63F`! z&D Q~ @]@D=RThղJr"6s,Mo;u]6RdgǸq G-Ɇ&i:Q*m CS$7uc\1,%+Z0<&ՒIr{yff!lKPBtn:_wk)A<1ma׏amGE֩$Tڬ֚y]508*d鍭iwbtzSH:w^E_> XS=ZJFHȱȥo dO]n8;yg1'ZY2n3R5)B|u!,l*`Gy/Ψ3of^$ةDZ;v-knN=5j!-Ȃ3ͤ兊AmŹ擉 #/IM|Q$` x׹֮C|wwp-8눼{xag] N^ @{r31&"U_yc02S=ݭÚ@gz(vnu2|Hj)ŕV.-W7/k1LoD8 TabP:4smnCQ QgPH2YU^ٗ.P lbFv{~{iRbG%|QP5~{$glE;g8[E[SRH44t"b.Ai<{ ׉2P/S (UۍZ+ JUVtƐ+rJ;e( S]g* է[`#Ð(?аm)wnD%|e/oԲxNe׺vcqBOw?QLݗD߰V@"l,TdmXF}߮ (}+l3,(5*@lzzxYV!0E]lz CQNN9=h.i{ʜ4!s&^^&ثAbç`ئvp~sN 3.0/q#pIg1m ihB\KRxep XEcև)mpos D+JTшE Us|YCcQ|߀g)b ^hN斿,J]͠e2 ˆ A [ڳ̨~愭~adZ>v݄faʐdեՑ[LWdq/$5!}Q< |G ڔ$rCڸ>HtdrYdIkv|o@aE%5 IxwjBbbɤPx~' j2 ?ZKXjhvLKnc]4%Puw9g2>Ye#Bj]vMR24G^3jcni'_F3FkO\qD͈H{qH[Me++^%LN*'^jP|p\2b}7њ`ohW|̈́FvQ"-sE,zs6l!-:%@4ϒ>JM92:*DqJ)>N.A| ݩy9[^1b0veYAyű-+ lKd{PBE~$Jt\i XIX֌mFs2Yj")stQC_F"=|X(B_+7VM_A&}AM|UYtQˉ&m溂.雄OYoZbcyD׽2Qkj`eXBo5Z* I7H h*1Z c ~?khLoљ®1/x*n^z[`<&{F=/NSI="8R-Q^yQ>хQCIuZ'l[V0~'mN1\8'A` sRb uz\  Kat_Oɼo27Jr_+p"ΪZ!TUn/MbfԙsDQ@w|]xC93: u%thQuzyaD ,E4=y;pz1jf_^>6qunkaM-Ӡf9;jbtoնC\O,S!"/7¾$ʱ"+6NVf2qpj*"?^Gp˨MܑF!f] $kdi?d/ͬ3Tَi 8uV\Wl& 3pe~Dw].C +Ad0WN+2 UL]}C6E!eWZ^K8fR@>QhST4 ҟ 48SM~[2_,r wG> ק7oeh"#)}NQ)/*[AxdY:7ZwPEdB㏝;\Sbk{e`\i’"%$=e+(QyEI4$= D7qS.b >`Ry~CB.!/&m9,<+H\{jT}Cٌ1حT 2I9q [ȸ7<jƚ&jOO>9-_Ce m'R@H>+O_Arڏvjf^m-ᐽp2޻w*15 0^"|6OO/5bspu e>tа3 4P)1/CX?eIMWcᶗɿ!RV/KYWW{ۂQdg5& 1Nʒ@܏`md"=s6?k{t2/uy#}@C:϶+N$>ۙ{OvKh0W~hռSky(ζʬ3YqDYu^6`X$QdIߟDKbXs)rm2"DmD.r¦p"oz ,uFJi92ė:;n q=v9V%" IJcN$KLU8 y=$v rM >w}%ruV:^Cp).O/$cwQR}@ mWUdm~v!ՀhJqbϖG |2mTBɰY3'T䢒9ŅvHz>d@Z81(רֈCAS~ w ƴ)N?{pcn67bI;=әx:<cWlp  r ـ`11!j& zyZ%=y.56vlWl;A?gEk^ij)8A3H 0.7+c'şHʆV4v|DCmr_ՖPfK';HyG%QqحZ`Few}bg;Z4xX+ˬӱn')ՅeM^bwnGn dnχaVmxa!*fʧ8Udl{+7~)t5$Ԍ,Y&\Jiw+RG,ƬuhI w9 Xb^IJ>B|ХC(eN6Y2EiDҮlh~Rc${LDD#v MBڢmg:M`;vc=OUN(S,3=3Kn%G0 /UH:%(ϩ\IbM 39 {$y%IdyiLe#P `$<\{`(!KKx:GaǴzV2Xb"*kSxGKiLVԿ lq&A0-ᙶ`鄍WVUF}񦾘h-AI